Early Reflection Filter - Motorola DSP56009 User Manual

24-bit digital signal processor
Table of Contents

Advertisement

Application Examples
x(n)
Current Sample
C.6

EARLY REFLECTION FILTER

The following routine is an example of an N-taps Early Reflection filter to perform
the following computation:
y (n) = SUM [{i = 1...N} g(i) x(n-T (i))]
movep
#RAM,x:ECSR
move
#GAIN_Base,r4
move
#Off_Base,r0
movep
y:FIR_Base,x:EBAR0
movep
x:(r0)+,x:EOR0
clr a
x:(r0)+,x0 y:(r4)+,y0
do
#(N-1),end_E
movep
x0,x:EOR0
nop
nop
movep
x:EDRR0,x1
mac
x1,y0,a x:(r0)+,x0 y:(r4)+,y0
nop
end_E
movep
x:SAMPLE,x:EDWR0
nop
movep
x:EDRR0,x1
macr
x1,y0,a
movep
x:EBAR0,y:FIR_Base
move
a,x:FIR_output
C-6
Delay T
Figure C-3 Single Delay Line
; ECSR with EINW = 1
; gain table base
; offset table base
; FIR base address
; drive 1st read cycle
; fetch 1st gain and 2nd delay
; initiate next read
; trigger
; nop or other
; nop or other
; read current data
; sum, fetch next gain and offset
; nop or other
; write current sample to delay line.
; EWOR = 0
; nop or other
; read last data
; compute the output
; store FIR base
; store result in internal memory
DSP56009 User's Manual
x(n - T)
Delayed Sample
AA0447
MOTOROLA

Advertisement

Table of Contents
loading

Table of Contents