Documente Academic
Documente Profesional
Documente Cultură
Introducere 4
Introducere 5
Operaţii de multiplicare-acumulare
(MAC) într-un singur ciclu instrucţiune.
algoritmii DSP care realizează calculul unor
filtre digitale, a unor corelaţii sau a unor
transformate Fourier.
DSP integrează hardware operaţia de
multiplicare-acumulare în unitatea centrală
a procesorului
DSP performante au două sau mai multe
unităţi MAC
Facilităţi DSP 8
Facilităţi DSP 9
Producători DSP 20
Aplicaţii DSP 21
Solar& Wind
www.ti.com Inverter Hybrid Vehicles Industrial Sensors
Fuell Cells
FREESCALE Sensor
Networks
www.freescale.com
ANALOG DEVICES Signal Processing
Medical
www.analog.com DSP and Analog Equipment
Industrial
Control/Automation appliance
Digital Power
FREESCALE - CodeWarrior
30
Dezvoltarea algoritmilor 34
Filtrul FIR 37
DSP Freescale DSP56300 38
Algoritmul:
N 1
y[ n] ak x[ n k ]
k 0
Pseudocod:
s=0;
for (k=0; k<N; k++)
s+=a[k]*x[n-k];
y[n]=s;
Magistrala de date X
24 24
move $100,r0
X0 Level-1 Memory Expansion Area System
move $100,r4 Registre de X1 Expansion Area
Unified Data and Program Memory
date Y0 ROM, RAM
Y1
24 24 Star*Core 140 DSP Core External Memory
clr a x:(r0)+,x0 y:(r4)+,y0 Interface
Multiplicator DSP Engine
DMA
True 16-bit instruction set
do #N-1 56 Variable Length Execution Set (VLESTM ) Model
CACHE
56
mac x0,y0,a x:(r0)+,x0 y:(r4)+,y0
ALU Interrupt Ctrl.
4 Arithmetic 2 Address
Shifter 56 & Logic Units Arithmetic Units Level-2 Memory
macr x0,y0,a 24 Expansion
A(56)
Acumulatori
B(56) Peripheral and Accelerators Expansion Area
move a,x:output
24 Standard Input/Output Peripherals
56 56 Application Specific Accelerators
General Purpose Programmable Accelerator
Shifter/Limitator
24 24
move.w #$100,r0
Spaţiul unificat de memorie pentru MEMORIE move.w #$200,r1
date şi program $200
16 16 16 16
$100
XDBA
XABA
XABB
XDBB
move.4f (r0)+,d0:d1:d2:d3
PDB
PAB
64 64
128 32 32 32
128 move.4f (r1)+,d4:d5:d6:d7
XABB
XABA
64 64 loopstart0
[ mac d0,d4,d8 mac d1,d5,d9
XDB
XDB
Secvenţiator Setul de registre pentru Registre ALU OnCE Accelerator Registre
Registre
A
de Program Generarea Adreselor pentru date pentru setul de date mac d2,d6,d10 mac d3,d7,d11
adresa D15
D0
Controlul instrucţiuni R0=$100
R0 ALU1 move.4f (r0)+,d0:d1:d2:d3
Puterii D1
R1=$200 D2
… move.4f (r1)+,d4:d5:d6:d7 ]
StarCore 140 Generatorul D3 ALU2
de ceas R7 D4 loopend0
2 AAU BMU 4 ALU 24
PLL D5
128
D6 ALU3 [ add d8,d9,d0 add d10,d11,d1 ]
Instruction Bus D7
AAU …
add d0,d1,d0
D15 ALU4 move.f d0,($400)