Motorola DSP96002 User Manual page 531

32-bit digital signal processor
Table of Contents

Advertisement

;
;
Table size can be i * points/2, i=1,2,...
;
; Macro Call - metr2a
;
;
points
;
data
;
coef
;
coefsize
;
;
;
; ar
; ai
; br
; bi
;
;
;
;
;
; wrk = cosine(k * pi/points) table
; wik = sine(k * pi/points)
;
; ar' = ar + (wr * br + wi * bi)
; ai' = ai + (wr * bi - wi * br)
; br' = ar -
; bi' = ai -
;
move
move
move
move
move
move
move
clr
B-12
+Sine value (1/2 cycle) in Y memory
points,data,coef,coefsize
number of points (2 - 2,147,483,648, power of 2)
start of data buffer
start of 1/2 cycle sine/cosine table
number of table points in sine/cosine table
= i * points/2, i=1,2,...
Radix 2
Butterfly
A'=A+B * Wk
B'=A-B * Wk
wr
wi
wr * br - wi * bi = ar - (wr * br + wi * bi)
wr * bi + wi * br = ai - (wr * bi - wi * br)
#points,d1.l
#@cvi(@log(points)/@log(2)+0.5),n1
#data,r2
#coef,m2
#coefsize,d2.l
#0,m6
#-1,m0
d0
m0,m1
DSP96002 USER'S MANUAL
(1 - 2,147,483,648)
ar'
ai'
br'
bi'
table
MOTOROLA

Advertisement

Table of Contents
loading

Table of Contents