Add real ADSP-2191 assembly examples + open21xx assembler test
This commit is contained in:
101
examples/adsp-2191_fir/ADSP-2191 FIR.txt
Normal file
101
examples/adsp-2191_fir/ADSP-2191 FIR.txt
Normal file
@@ -0,0 +1,101 @@
|
||||
****************************************************************************
|
||||
|
||||
fir.asm N-tap finite impulse response filter (FIR)
|
||||
|
||||
Analog Devices, Inc.
|
||||
DSP Division
|
||||
Three Technology Way
|
||||
P.O. Box 9106
|
||||
Norwood, MA 02062
|
||||
|
||||
23-JUNE-2001 BJM
|
||||
|
||||
This directory contains an example ADSP-2191, single-core subroutine
|
||||
that implements a N-tap finite impulse response filter (FIR) using coefficients.
|
||||
|
||||
Files contained in this directory:
|
||||
|
||||
fir.dpj VisualDSP project file
|
||||
fir.asm ADSP-2191 source for FIR
|
||||
fir_test.asm Calling function for fic.asm
|
||||
ADSP-2191.ldf Linker description file
|
||||
input_dec.dat Sample data for FIR
|
||||
_________________________________________________________________
|
||||
|
||||
CONTENTS
|
||||
|
||||
I. FUNCTION/ALGORITHM DESCRIPTION
|
||||
II. IMPLEMENTATION DESCRIPTION
|
||||
III. DESCRIPTION OF INPUT DATA
|
||||
|
||||
I. FUNCTION/ALGORITHM DESCRIPTION
|
||||
|
||||
The project fir.dpj contains an implementation of a single-core subroutine
|
||||
that implements a N-tap finite impulse response filter (FIR). This
|
||||
routine has been optimized to take advantage of the repetitive multiply
|
||||
accumulates inherent to the algorithm.
|
||||
|
||||
y(n) = Summation from k=0 to M of h(k)*x(n-k)
|
||||
|
||||
|
||||
II. IMPLEMENTATION DESCRIPTION
|
||||
|
||||
The assembly language module FIR_TEST.ASM initializes the input and
|
||||
coefficient buffers and then calls FIR.ASM.
|
||||
|
||||
The first buffer declared, IN, is Num_Samp locations long.
|
||||
|
||||
The next buffer declared, OUT, is also Num_Samp long, and stores the
|
||||
output of the filter.
|
||||
|
||||
Delay_Line is the third buffer declared. This buffer holds the delay line.
|
||||
Since there are past intermediate values for each stage of the FIR, the length of
|
||||
this buffer is as long as the number of Taps.
|
||||
|
||||
The coefficient buffer, COEFF, contains the FIR filter coefficients. The
|
||||
coefficients are typically generated by a filter design software package.
|
||||
|
||||
The linker descriptive file is ADSP-2191.LDF, which describes the hardware in
|
||||
terms of memory spaces and peripherals.
|
||||
|
||||
Because there is no data dependency between DSP cores, it is possible
|
||||
to do perform an FIR in DSP core 1, while also performing an FIR in DSP core 2
|
||||
on separate input data, using different coefficients.
|
||||
|
||||
III. DESCRIPTION OF INPUT DATA
|
||||
|
||||
1. INPUT SAMPLES:
|
||||
-----------------
|
||||
This FIR routine expects input data which conforms to the following criteria:
|
||||
|
||||
Generate input data such that an array of input fixed point values are arranged
|
||||
in the following order:
|
||||
|
||||
INPUT DATA
|
||||
|
||||
indata(0)
|
||||
indata(1)
|
||||
indata(2)
|
||||
indata(3)
|
||||
...
|
||||
...
|
||||
...
|
||||
|
||||
|
||||
|
||||
2. COEFFICIENT DATA:
|
||||
-----------------------
|
||||
This FIR routine expects TAPS 1.15 fixed point values to be used as coefficients.
|
||||
|
||||
COEFFICIENT DATA
|
||||
|
||||
coef(0)
|
||||
coef(1)
|
||||
coef(2)
|
||||
coef(3)
|
||||
...
|
||||
...
|
||||
...
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user