BENCHMARK PROGRAMS

;Main program to call the rfft-56b macro

;Argument list

;

; Latest modifying date - 4-March-92

reset

equ

0

 

start

equ

$40

 

points

equ

512

 

binlogsz

equ

9

 

idata

equ

$000

 

odata

equ

$400

 

bergtable

equ

$600

 

twiddle

equ

$800

 

bergsincos

points,odata ;generate normal order twiddle factors with size of points/4

 

opt

mex

 

 

org

p:reset

 

 

jmp

start

 

 

org

p:start

 

 

movep #0,x:$fffe

;0 wait states

bergorder

points/4,bergtable,odata

;generates bergland table for twiddle factor

norm2berg

points/4,bergtable,twiddle

;converting twiddle factor from normal order to bergland

order

 

 

 

bergorder

points/2,bergtable,odata

;table for final output

rifft

points,binlogsz,idata,odata,twiddle,bergtable

 

end

 

 

;

 

 

bergsincos

macro

points,coef

bergsincos

ident

1,2

;

 

 

;sincos - macro to generate sine and cosine coefficient

;

lookup tables for Decimation in Time FFT

;

twiddle factors.

;

 

;points - number of points (2 - 32768, power of 2)

;

coef -

base address of sine/cosine table

;

 

negative cosine value in X memory

;

 

negative sine value in Y memory

;

 

 

;

 

 

pi

equ

3.141592654

freq

equ

2.0*pi/@cvf(points)

 

org

y:coef

B - 20

BENCHMARK PROGRAMS

MOTOROLA

Page 582
Image 582
Motorola DSP56000, 24-Bit Digital Signal Processor manual Benchmark Programs