You are on page 1of 2

TMS320C50 ARCHITECTURE The hardware architecture allows simultaneous data and program instruction fetches.

This enables the processor to do two jobs at the same time. The C5X processor posses a high degree of parallelism than while the data is being operated upon by one part of the CPU. Arithmetic operations may also be executed in the ARAU. Such parallelism results in a powerful set of arithmetic, logic and bit manipulation operations that may be performed. KEY FEATURES OF TMS 320C50: Source compatible with C1X,C2X,&C2XX devices speed:20ns. power:3.3.v&%v static CMOS technology with two power down modes. memory:224K-word X16 bit maximum addressable external memory space.

CENTRAL PROCESING UNIT: 32 bit arithmetic logic unit, 32 bit accumulator and 32 bit accumulator buffer. 16 bit x 16 bit parallel multiplier with a 32 bit accumulator buffer. 0 to 16 bit and right data shifter and a 64 bit incremental data shifter. 16 bit parallel logic unit. Dedicated auxillary register arithmetic unit for indirect addressing. Eight auxillary registers.

PROGRAM CONTROL: 8 level hardware stack. 4 deep pipeline operation for delayed branch, call, and return instructions. Eleven shadow registers for storing strategic CPU controlled register during an interrupt service routine. Two indirectly addressed circular buffers for circular addressing.

INSTRUCTION SET: single cycle multiply/accumulates instructions. single instruction repeat and block repeat operations. block memory mapped register load and store instructions memory mapped register load and store instructions. conditional branch and call instructions. delayed execution of branch and call instruction. fast return from interrupt instruction. PLL clock generator with internal oscillator or external clock source.

SOME OF THE IMPORTANT DIRECTIVES USED IN PROGRAMMING: .ps - identifies portions of the code to be placed in program memory; with this we can initialize a new program address. .TEXT - identifies portions of the code in the text section usually contains executable code. .mmregs - defines symbolic names for the memory mapped register .bytes - places one or more 16 bit values into consecutive words of the current section .word - places one or more 16 bit values into consecutive words in the current section .int - places one or more 16 bit values into consecutive words in the current section .string - places 8 bit character from one or more character string into current section

You might also like