dsp56800 Freescale Semiconductor, Inc, dsp56800 Datasheet - Page 133

no-image

dsp56800

Manufacturer Part Number
dsp56800
Description
16-bit Digital Signal Controllers
Manufacturer
Freescale Semiconductor, Inc
Datasheet
Chapter 6
Instruction Set Introduction
As indicated by the programming model in Figure 6-3 on page 6-5, the DSC architecture can be viewed as
several functional units operating in parallel:
The goal of the instruction set is to keep each of these units busy each instruction cycle. This achieves
maximum speed, minimum power consumption, and minimum use of program memory.
The complete range of instruction capabilities combined with the flexible addressing modes provide a very
powerful assembly language for digital-signal-processing algorithms and general-purpose computing.
(The addressing modes are presented in detail in Section 4.2, “Addressing Modes,” on page 4-6.) The
instruction set has also been designed to allow for the efficient coding of DSC algorithms, control code,
and high-level language compilers. Execution time is enhanced by the hardware looping capabilities.
This section introduces the MOVE instructions available on the DSC core, the concept of parallel moves,
the DSC instruction formats, the DSC core programming model, instruction set groups, a summary of the
instruction set in tabular form, and an introduction to the instruction pipeline. The instruction summary is
particularly useful because it shows not only every instruction but also the operands and addressing modes
allowed for each instruction.
6.1
To simplify programming, a powerful set of MOVE instructions is found on the DSP56800 core. This not
only eases the task of programming the DSC, but also decreases the program code size and improves the
efficiency, which in turn decreases the power consumption and MIPs required to perform a given task.
Some examples of MOVE instructions are listed in Example 6-1.
Freescale Semiconductor
Data ALU
AGU
Program controller
Bit-manipulation unit
MOVE
MOVE
MOVE
MOVE
MOVE
MOVE
MOVE
MOVE
Introduction to Moves and Parallel Moves
<any_DSCcore_register>,<any_DSCcore_register>
<any_DSCcore_register>,<X_Data_Memory>
<any_DSCcore_register>,<On_chip_peripheral_register>
<X_Data_Memory>,<any_DSCcore_register>
<On_chip_peripheral_register>,<any_DSCcore_register>
<immediate_value>,<any_DSCcore_register>
<immediate_value>,<X_Data_Memory>
<immediate_value>,<On_chip_peripheral_register>
Example 6-1. MOVE Instruction Types
Instruction Set Introduction
6-1

Related parts for dsp56800