鈫?/div>
W1
A block diagram of the DSP engine is shown in
Figure 2-2.
DIV.sw (or DIV.s)
DIV.ud
DIV.uw (or DIV.u)
2.4
DSP Engine
The DSP engine consists of a high speed 17-bit x
17-bit multiplier, a barrel shifter, and a 40-bit adder/
Subtractor (with two target accumulators, round and
saturation logic).
The dsPIC30F devices have a single instruction flow
which can execute either DSP or MCU instructions.
Many of the hardware resources are shared between
the DSP and MCU instructions. For example, the
instruction set has both DSP and MCU Multiply
instructions which use the same hardware multiplier.
The DSP engine also has the capability to perform inher-
ent accumulator-to-accumulator operations, which
require no additional data. These instructions are
ADD,
SUB
and
NEG.
The DSP engine has various options selected through
various bits in the CPU Core Configuration Register
(CORCON), as listed below:
1.
2.
3.
4.
5.
6.
7.
Fractional or integer DSP multiply (IF).
Signed or unsigned DSP multiply (US).
Conventional or convergent rounding (RND).
Automatic saturation on/off for AccA (SATA).
Automatic saturation on/off for AccB (SATB).
Automatic saturation on/off for writes to data
memory (SATDW).
Accumulator Saturation mode selection
(ACCSAT).
Note:
For CORCON layout, see Table 4-2.
TABLE 2-2:
Instruction
CLR
ED
EDAC
MAC
MOVSAC
MPY
MPY.N
MSC
DSP INSTRUCTION
SUMMARY
Algebraic Operation
A=0
A = (x 鈥?y)
2
A = A + (x 鈥?y)
2
A = A + (x * y)
No change in A
A=x*y
A=鈥搙*y
A=A鈥搙*y
DS70119D-page 14
Preliminary
铮?/div>
2004 Microchip Technology Inc.
prev
next