user manual

BENCHMARK PROGRAMS
MOTOROLA
BENCHMARK PROGRAMS B - 19
Real input FFT based on Glenn Bergland algorithm
;
; Normal order input and normal order output.
;
; Since 56001 does not support bergland addressing, extra instruction cycles are needed
; for converting bergland order to normal order. It has been done in the last pass by
; looking at the bergtable.
; The micro ‘bergsincos’ generates SIN and COS table with size of points/4, COS in Y, SIN in X
; The micro ‘bergorder’ generates table for address conversion, the size of twiddle factors is half
; of FFT output’s.
; The micro ‘norm2berg’ converts normal order data to bergland order.
; The micro ‘rfft-56b’ does FFT.
;
; Real input data are split into two parts, the first part is put in X, the second in Y.
; Real output data are in X, imaginary output data are in Y.
; The bergland table for converting berglang order to normal order is stored in output buffer.
; In the last pass the FFT output overwrites this table.
; The first real output plus the first imaginary output is DC value of the spectrum.
; Note that only DC to Nyquist frequency range is calculated by this algorithm.
; After twiddle factors and bergtable are generated, you may overwrite ‘bergorder’,
; ‘norm2berg’ by ‘rfft-56b’ for saving P memory.
;
; Performance
;-----------------------------------------------------------------
; Real input data points Clock cycle
; 64 1686
; 128 3846
; 256 8656
; 512 19296
; 1024 49776
;------------------------------------------------------------------
;
; Memory (word)
;------------------------------------------------------------------
; P memory X memory Y memory
; 87 points/2 (real input) + points/2 (imaginary input)
; points/4 (SIN table) + points/4 (COS table)
; points/2 (real output) + points/2 (imaginary output)
; points/2 (bergtable)
;-------------------------------------------------------------------
;
;
rfft56bt ident 1,3
page 132,60
opt nomd,nomex,loc,nocex,mu
include ‘bergsincos’
include ‘bergorder’
include ‘norm2berg’
include ‘rfft-56b’
;
Figure B-5 Real Input FFT Based on Glenn Bergland Algorithm (Sheet 8 of 8)