📄 2191_ezkit_echo_cancel.txt
字号:
****************************************************************************
ADSP2191 EZ-KIT Echo Cancel Demo
Analog Devices, Inc.
DSP Division
Three Technology Way
P.O. Box 9106
Norwood, MA 02062
Date Created: 5/14/00 B.Mitchell Rev 0.0
This directory contains an example ADSP2191 subroutine that demonstrates the
use of the 2191 create and cancel an echo on an audio stream.
Both of these effects are achieved by performing a FIR on the audio stream.
Files contained in this directory:
2191_EZKIT_ECHO_CANCEL.dpj VisualDSP project file
2191_EZKIT_ECHO.asm Main Module
ECHO_EZKIT_ISR.asm EZ-Kit ISR module
ECHOEFF.dat Coefficients for FIR1
PROCESSING_ISR.asm Echo ISR Module
AD1885_INIT.asm Initialization module
ADSP-2191.ldf Linker Description File
__________________________________________________________
CONTENTS
I. FUNCTIONAL DESCRIPTION
II. IMPLEMENTATION DESCRIPTION
III. OPERATION DESCRIPTION
I. FUNCTIONAL DESCRIPTION
The Echo Cancellation demo demonstrates the use of an algorithm to process an audio stream.
Using codec initialization similar to the Talkthrough Demo, the end result of this example
is achieved by using two FIR filters. The first is used to add an echo, and the second (when
activated by the user) is used to cancel it. The result of the two filters is played on the
left channel of the codec.
To cancel the echo, the second FIR is implemented using the stochastic gradient (SG)
filtering algorithm. Using an estimation method, the filter adapts its coefficients to
converge on to the necessary values to cancel the echo in the signal. This convergence is
controlled by the step size, beta. If this beta value is set to zero, the filter will not
converge upon the necessary values, and the echo will remain in the sample. This is how the
user controls the example. When the user depresses the PF4 button on the EZkit, an interrupt
is triggered and beta (zero by default) is set to a non-zero value.
The coefficients that are calculated by the SG algorithm are output to the right channel of
the codec for viewing on a oscilloscope.
II. IMPLEMENTATION DESCRIPTION
The Main module:
1. Calls initialization routine.
2. Sets up dags for Processing ISR.
The Initialization module initializes:
1. The transmit and receive Multi-channel configuration.
2. The transmit and receive DMA control registers and Auto-buffer registers.
3. The SPORT0 control registers.
4. The AD1885 Codec by writing to its control registers.
The Echo ISR module:
1. Performs FIR on incoming data to add echo.
2. Performs SG adaptive filtering to remove echo from data.
3. Plays calculated coefficients to right channel and audio data to left channel.
III. OPERATION DESCRIPTION
- Open the project "2191_EZKIT_ECHO_CANCEL.dpj" in the VisualDSP Integrated Development
Environment (IDDE).
- Under the "Project" tab, select "Build Project".
- Open a ADSP2191 EZ-KIT Lite session in the VisualDSP Debugger.
- Load "2191_EZKIT_ECHO_CANCEL.DXE" into the ADSP2191.
- Plug a microphone into the "LINE IN" and an output source (speaker to the left channel,
oscilloscope to the right) to the "LINE OUT" connectors of the EZ-KIT Lite. Ensure JP1 is
correctly jumpered for MIC input.
See the ADSP2191 EZ-KIT Lite User's Manual for more information on setting up the hardware.
- Select "RUN" from the "Debug" tab on the menu bar.
- Listen to the operation of the echo addition.
- Press PF4 button to enable echo cancellation.
- Listen to the operation of echo canceller and view coefficient output.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -