Professional Documents
Culture Documents
Objectives:
To understand the features of the DSP processors.
To understand the architectures, bus structures and memories of DSPs.
To understand special addressing modes and on-chip peripherals.
To study TMS320C5X Processors.
Hence the content of program memory and data memory can be accessed
in parallel. The instruction code can be fed from the program memory to the
control unit while the operand is fed to the processing unit from the data
memory. The processing unit consist of the registers and processing elements
such as MAC units, multiplier, ALU, Shifters etc.
2. Multipored Memory:
The dual port memory has two independent data and address buses as
shown in the following fig.
Fig.6 : Multiported Memory.
Two memory access is can be achieved in a clock period. Multi-
ported memory dispense with the need for storing the program and data in two
different memory chips in order to permit simultaneous access to both data and
program memory.
E.g. Motorola DSP561XX processor has a single ported program memory and
a dual ported data memory.
VLIW Architecture
The VLIW is accessed from the memory and is used to specify the
operands and operations to be performed by each of the functional units. The
architecture of VLIW is shown in Fig 7.
Pipelining
Pipelining is an approach to speed up the execution. Execution of
an instruction may be split into some micro instruction phase and each is
executed simultaneously. The four phases of the pipeline structure and their
functions are as follows:
1) Fetch (F):
This phase fetches the instruction words from memory and updates the
program counter (PC).
2) Decode (D):
This phase decodes the instruction word and performs address generation
and ARAU updates of auxiliary registers.
3) Read (R):
This phase reads operands from memory, if required. If the instruction
uses indirect addressing mode, it will read the memory location pointed at by
the ARP before the update of the previous decode phase.
4) Execute (E):
This phase performs any specify operation, and, if required, writes
results of a previous operation to memory.
In a processor with no pipeling, each functional unit is busy only 25% of the
time as shown in Fig.8. It takes 12 cycles to execute four instructions.
On-Chip Peripherals
Ch 1 Ch 2 Ch 3 Ch 4 Ch 5 Ch 6 Ch 7 Ch 8
TMS320C5X:
Program bus:
The PB carries the instruction code and immediate operands from
program memory space to the CPU.
b. Program address bus (PAB):
The PAB provides addresses to program memory space for both reads
and writes.
c. Data read bus (DB):
The DB interconnects various elements of the CPU to data memory space
d. Data read address bus (DAB):
The DAB allows the CPU to read from and write to DARAM in the same
machine cycle.
2. Central Processing Unit (CPU):
The C5x CPU consists of the elements:
Central arithmetic logic unit (CALU)
Program logic unit (PLU)
Auxiliary register arithmetic unit (ARAU)
Memory mapped registers
Program controller.
Memory-Mapped Registers:
The C5x has 96 registers mapped into page 0 of the data memory space.
They can be accessed in the same way as any other data memory location.
The memory-mapped registers are used for indirect data address pointers,
temporary storage, CPU status and control, or integer arithmetic processing
through the ARAU.
Program Controller:
The program controller contains logic circuitry that decodes the operational
instructions.
The program controller consists of the elements:
Program counter
Status and control register.
Hardware stack.
Address generation logic.
Instruction register.
3. On-Chip Memory
The C5x architecture contains a considerable amount of on-chip
memory to aid in system performance and integration:
4.On-Chip Peripherals
C5x DSPs have different on chip peripherals connected to their CPUs.
The ’C5x DSP on-chip peripherals available are:
Clock generator
Hardware timer
Software-programmable wait-state generators
Parallel I/O ports
Serial port
Buffered serial port (BSP)
Time-division multiplexed (TDM) serial port
User-maskable interrupts
Host port interface (HPI).
Clock Generator
The clock generator consists of an internal oscillator and a phase-locked
loop(PLL) circuit.
Hardware Timer
There are 64K I/O ports,16 ports- memory mapped in data memory
space. Each of the I/O ports can be addressed by the IN or the OUT instruction.
The memory-mapped I/O ports can be accessed with any instruction that reads
from or writes to data memory. The ’C5x can easily interface with external I/O
devices through the I/O ports while requiring minimal off-chip address
decoding circuits.
Host Port Interface (HPI)
The host port interface (HPI) is an 8-bit parallel port used to interface a
host device or host processor to the ’C5. The HPI is designed to interface to the
host device as a peripheral, with the host device as master of the interface,
therefore greatly facilitating ease of access by the host.
Serial Port
Three different kinds of serial ports :
1. General-purpose serial port.
2. Time division multiplexed (TDM).
3. Buffered serial port (BSP).
Important questions:
1. What is MAC? Explain its operation in detail with neat diagram.
2. Discuss in detail the basic architectural features of programmable DSP
devices.
3. Explain memory address schemes in DSPs.
4. Discuss in detail the pipeline operation of TMS320C54xx processor.
5. What are the various addressing modes used in TMS320C5x processor?
6. Draw and explain the major blocks diagram of TMS320Cx.
7. Explain the on-chip peripherals in TMS320Cx processor.
8. Explain the different types of interrupts in TMS320C54xx processor.
5. A DSP has four pipeline stages and uses four phase clock. The number of
clock cycles required for executing a program with 25 instruction is
____________
a.29 b.28 c.25 d.26 Ans: b