frequency domain adaptive filtering project supervisor dr. edward jones myles Ó fríl
TRANSCRIPT
Frequency Domain Adaptive Filtering
Project SupervisorDr. Edward Jones
Myles Ó Fríl
Adaptive Filters
Digital Filter Adaptive Algorithm Convolution Time Domain Algorithms The LMS Algorithm
Updated Valueof tap-weight
vector
Old Value oftap-weight
vectorx
Learningrate
parameter+ Tap-input
vectorx ErrorSignal
System Identification
UnknownSystem
AdaptiveFilter
+
X(n) d(n)
e(n)
-
+
y(n)
Echo Cancellation
Transmitter
Receiver
HybridAdaptive
Filter
+
-+
Hybrid
Transmitter
AdaptiveFilter
Receiver+
-+
CommonLine
X(n) X(n)
e(n) e(n)
Speaker A
Speaker EchoReturn Paths
CleanSignal
CleanSignal
Speaker B
Y(n) Y(n)
Speaker Bsignal + echo of A
Speaker Asignal + echo of B
Frequency Domain Filtering
Discrete Fourier Transform Fast Fourier Transform N a power of two Time Convolution Theorem Efficiency Overlap Save
Overlap Save Filtering
Input Block Length 2N N Zeros + Impulse Response
2N point FFT 2N point FFT
Y(f) = X(f) x H(f)
2N point IFFT
Y(n) + circular artifacts
Frequency Domain AdaptiveFiltering Algorithm
Fast LMS Overlap Save Filtering Block Diagram of Fast LMS
FFT IFFTX Save Last Block
+ Delay
X
FFT
AppendZero Block
Delete LastBlock
IFFT
X FFT AppendZero Block +
Conjugate
d(n)
y(n)
GradientConstraint
u(n)
mu
U(k) Y(k)
U*(k) E(k) e(n)
Memory Comparison
LMS
N inputs + N filter coefficients
= 2N
Fast LMS
15 N in total
Computational Comparison
LMS2N x N
Fast LMS 15N log2 (2N) + 10N for 5 FFTs
+ 28N for rest of algorithm Cross Over Point
N a power of two
128
LMS V Fast LMS
0 100 200 300 400 500 6000
2
4
6
8
10
12x 10
6
Num
ber
of o
pera
tions
Length of impulse Response
Frequency V Time Domain Operations
Time Domain
Frequency Domain
Implementation
The NIDAQ Card
Threads
Main Program
Write and ReadValues from
the NIDAQ card
Start Fast LMSThread
Get morevalues
N
Y
End Program
Further Applications
Training Period Decision Maker Time Domain Frequency Domain
AdaptiveEqualizer
DecisionDevice
TrainingSequenceGenerator
+-
+
e(n)
y(n) d1(n) d(n)x(n)
Adaptive Equalizer
Summary
Adaptive Filters System Identification Frequency Domain Filtering Frequency Domain Adaptive Algorithm Memory/Computational Comparison Implementation
Any Questions?