FIR Accelerator
6-36 ADSP-214xx SHARC Processor Hardware Reference
Single Rate Input Filtering
The total size of the input buffer should at least be equal to N – 1 + W. If
the input buffer that needs to be processed is:
x[n],x[n+1],x[n+2]
....
x[n+W-1]
it should be stored in the memory as
x[n-(N-1)], x[n-(N-2)]
....
x[n-1], x[n], x[n+1]
....
x[n+W-1]
and IIFIR should point to x[n – (N – 1)]
Decimation
Assuming M = decimation ratio, the total size of the input buffer should
at least be equal to N–1+WxM. If the input buffer that needs to be processed
is
x[n],x[n+1],x[n+2]....x[n+WxM-1],
it should be stored in the memory as
x[n-(N-1)], x[n-(N-2)]....x[n-1], x[n], x[n+1]....x[n+WxM-1]
and IIFIR should point to
x[n-(N-1)].
Interpolation
Assuming L= interpolation ratio, the total size of the input buffer should
at least be equal to Ceil
((N–1)/L)+W/L.
If the input buffer that needs to be processed is
x[n], x[n+1], x[n+2]....x[n+W/L-1], and K= Ceil((N-1)/L)
it should be stored in the memory as: