BENCHMARK PROGRAMS
B - 20 BENCHMARK PROGRAMS
MOTOROLA
; 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