EDN Access PLEASE NOTE:
FIGURES WILL LINK
TO A PDF FILE.

April 23, 1998


EDN's 1998 DSP 16-BIT Architecture Directory


Texas Instruments TMS320C2xx

09CS1615TI based the TMS320C2xx DSPs on the 320C2xLP core that the company offers as part of its custom DSP capability. The C2xx's instruction set is a superset of and is source-code-compatible with the C2x and is a subset of the C5x. The C2xx core keeps the same four-stage pipeline of the C5x, which allows it to run at speeds as high as 40 MHz. It also has a JTAG-emulation block like the C5x, instead of the older, in-circuit emulation of the C2x. The C2xx family comprises the C20x and the C24x product families; the two families differ in their memory and peripheral mixes. The C20x targets low-end telecommunications, and the C24x targets digital-motor control.

The accumulator-based C2xx processor has a central ALU (CALU), which feeds the 32-bit accumulator. The accumulator also acts as one of the inputs to the CALU. The other input to the accumulator comes from either the 16×16-bit multiplier through a scaling shifter or the input data-scaling shifter. Software can rotate the contents of the accumulator through the carry bit to perform bit manipulation and testing. For implementing fractional arithmetic or justifying a fractional product, the C2xx processes the product-register output through a product shifter to eliminate the extra bit in a multiplication. The product-scaling shifter allows as many as 128 product accumulates without overflowing the accumulator.

The basic multiply-accumulate (MAC) cycle involves multiplying a data-memory value by a program-memory value and adding the result to the accumulator. When the C2xx repeats the MAC, the program counter automatically increments, freeing the program bus to fetch the second operand. This feature allows the MAC to achieve single-cycle execution.

Similar to the C5x, the C2xx can access 64,000 16-bit parallel I/O ports. The peripherals on C2xx devices, such as serial ports and software wait-state generators, are I/O-mapped in the on-chip I/O space. Your program must use other I/O addresses to access off-chip peripherals. You can use slower external memories using the C2xx's software wait-state generator or the chip's Ready pin. Most of the C2xx devices can generate zero to seven wait states.

The C240 has an onboard event manager to support motor-control applications. The event manager features three up/down timers and nine comparators, which you can couple with waveform-generation logic to create as many as 12 PWM outputs. The event manager supports symmetrical (centered) and asymmetrical (noncentered) PWM-generation capabilities. It also supports a space-vector PWM state machine, which implements a scheme for switching power transistors to yield longer transistor life and lower power consumption. A deadband-generation unit also helps protect power transistors. In addition, the event manager integrates four capture inputs, two of which can serve as direct inputs for optical-encoder quadrature pulses.

Addressing modes

The C2xx supports immediate and paged-memory-direct addressing, in which 7 bits in an instruction concatenate with a 9-bit data-page pointer to access data RAM. It also supports register-indirect addressing using the 16 bits in one of eight auxiliary registers to access memory. It can automatically postincrement or decrement auxiliary registers. The C2xx offers no circular buffering.

Special instructions

A MAC-with-data-move instruction (MACD) adds a data move for on-chip RAM blocks to the MAC unit; as the CPU uses the input data values, the CPU shifts the values to the next memory location. MACD is an alternative to using a circular buffer and is useful for convolution and transversal filtering. The C2xx also offers single-instruction repeat, multiply and accumulate previous product, multiply and subtract previous product, accumulate previous product and move data, multiconditional branches and calls, store long immediate to data-memory locations, rotate accumulator left/right, and block move.

Support

TI offers an emulator that supports JTAG scan-based emulation for nonintrusive product test. The company also supplies a C compiler, a source-level C assembler/debugger, a linker, a simulator, a profiler, and an application library. Evaluation modules, prototype cards, emulators, and application algorithms are also available from third parties.


| Back |


Copyright © 1998 EDN Magazine, EDN Access. EDN is a registered trademark of Reed Properties Inc, used under license. EDN is published by Cahners Business Information, a unit of Reed Elsevier Inc.