Вы находитесь на странице: 1из 24

Top

Adaptive Digital Filters 9.6

• Adaptive digital filters are self learning filters, whereby an FIR (or IIR)
is designed based on the characteristics of input signals. No other
frequency response information or specification information is
available.

• There are a large number of applications suitable for the


implementation of adaptive digital filters.

• An adaptive digital filter is often represented by a signal flow graph with


adaptive nature of weights shown:
x(k-1) x(k-2)
x(k) Adaptive
Weights
Input
w0 w1 w2 d(k)

- +
y(k) e(k)
Output Error

August 2007, Version 3.8/21/07 For Academic Use Only. All Rights Reserved
Top
Notes:
An adaptive digital filter (FIR or IIR) will therefore “adapt” to its environment. The environment will be defined
by the input signals x(k) and d(k) to the adaptive digital filter.

Developed by:
Top
Intuitive Adaptive DSP 9.7

• General Closed Loop Adaptive Signal Processor:

“The aim is to adapt the digital filter such that the input signal x(k) is
filtered to produce y(k) which when subtracted from desired signal d(k),
will minimise the power of the error signal e(k).”

desired
signal d(k)
input +
signal y(k) e(k)
Adaptive FIR
Σ
x(k) Digital Filter Output - error
signal signal

Adaptive Algorithm

e(k) = d(k) - y(k)


y(k) = Filter(x(k))

August 2007, Version 3.8/21/07 For Academic Use Only. All Rights Reserved
Top
Notes:
Naming Conventions and Notation:

The naming of the signals as input, desired, output and error and denoted as x(k), d(k), y(k) and e(k)
respectively is standard in most textbooks and papers and will be used in this presentation.

The arrow through the adaptive filter is standard notation to indicate that the filter is adaptive and that all of the
digital filter weights can be updated as some function of the error signal. As with any feedback system, stability
is a concern; hence care must be taken to ensure that any adaptive algorithm is stable.

At this stage of abstraction no information is given on the actual input signals which could be anything: speech,
music, digital data streams, vibration signal, predefined noise and so on.

Filter Type

The adaptive filter could be FIR (non-recursive), IIR (recursive) or even a non-linear filter. Most adaptive filters
are FIR for reasons of algorithm stability and mathematical tractability. In the last few years however, adaptive
IIR filters have become increasingly used in stable forms and in a number of real world applications (notably
active noise control, and ADPCM techniques). Current research has highlighted a number of useful non-linear
adaptive filters such as Volterra filters, and some forms of simple artificial neural networks.

Adaptive Filter Performance

Obviously the key aim of the adaptive filter is to minimise the error signal e(k). The success of this minimisation
will clearly depend on the nature of the input signals, the length of the adaptive filter, and the adaptive algorithm
used.

Developed by:
Top
Analogue Interfacing 9.8

• The general adaptive signal processor can be implemented for real


time applications using standard DSP components.

DSP Board
ADC fs

fs DSP Processor d(k) fs


y(k) +
Adaptive
ADC Σ DAC
Digital Filter - e(k)
x(k)
Adaptive Algorithm

DAC fs
Analogue Signal
Digital Signal

August 2007, Version 3.8/21/07 For Academic Use Only. All Rights Reserved
Top
Notes:
ADC- Analogue to Digital Converter;
DAC - Digital to Analogue Converter;
fs - Sampling Frequency

To implement the general adaptive signal processor, up to two ADC and two DAC converters are required.
However an application will not always require these ADCs and DACs. For example in a system identification
scenario where a unknown system is being modelled there is no need for the DACs at y(k) and e(k). The actual
result of the filtering operation is the actual filter weights which model the response of the unknown system.

The algorithm designer must also ensure that the ADCs and DACs provide enough accuracy (e.g. 8 bits, 16
bits, 20 bits....) and most importantly that the DSP processor can operate fast enough to implement the required
filter. It is no use designing an adaptive filter that requires 1000 weights at a sampling rate of 48000 Hz unless
a DSP processor architecture capable of performing this is available.

Applications are discussed below.

Developed by:
Top
Architectures.... 9.9

Delay
s(k) + n)k)
d(k) d(k)
Unknown x(k) y(k) +e(k)
y(k) + e(k) Adaptive Σ
n’(k)
x(k) Adaptive Σ System -
-
s(k) Filter
Filter

Noise Cancellation Inverse System Identification

Unknown
System
d(k)
d(k)
+ x(k) y(k)
+e(k)
x(k) Adaptive y(k) e(k) Adaptive Σ
Σ Delay -
Filter - s(k) Filter

System Identification Prediction

August 2007, Version 3.8/21/07 For Academic Use Only. All Rights Reserved
Top
Notes:
In each of the above architectures the general adaptive signal processor can be clearly seen.

To simplify the figures, the ADCs and DACs are not explicitly shown.

In each architecture the aim of the general adaptive signal processor is the same - to minimise the error signal
e(k).

A particular application may have elements of more than one single architecture. For example the set up below
includes elements of system identification, inverse system identification, and noise cancellation. If the adaptive
filter is successful in modelling “Unknown System 1”, and inverse modelling “Unknown System 2”, then if s ( k )
is uncorrelated with r ( k ) then the error signal is likely to be e ( k ) ≈ s ( k ) :
s(k)
+ +
Unknown
System 1 Delay

d(k)
x(k) y(k) + e(k)
Unknown Adaptive
r(k)
System 2 Filter -

Developed by:
Top
Application Examples 9.10

• System Identification:

• Channel identification; Echo Cancellation

• Inverse System Identification:

• Digital communications equalisation.

• Noise Cancellation:

• Active Noise Cancellation; Interference cancellation for CDMA

• Prediction:

• Periodic noise suppression; Periodic signal extraction;


Speech coders; CMDA interference suppression.

August 2007, Version 3.8/21/07 For Academic Use Only. All Rights Reserved
Top
Notes:
The sampling rate will vary depending on the particular application and the range of signal frequencies.

• Hi fidelity audio ~ 48kHz.

• Voiceband telecommunications ~ 8 kHz.

• Teleconferencing type applications ~ 16 kHz.

• Biomedical DSP~ 500 to 2000Hz.

• Low frequency active noise control ~ 1000Hz.

• Ultrasonic applications ~ MHz.

• Sonar ~ 50 - 100 kHz

• Radar ~ MHz.

Adaptive filtering has a tremendous range of applications from everyday equalisers on modems to less obvious
applications such as adaptive tracking filters for predicting the movement of human eyes when following a
moving stimulus! (research undertaken by S.Goodbody, MRC, London).

Developed by:
Top
Channel Identification 9.11

• Applying a broadband input signal the adaptive filter will adapt to


minimise the error, and therefore produce a digital filter model of the
room.

DAC Comms Channel ADC

d(k)
x(k) Adaptive y(k) +
Σ
Broadband Filter - e(k)
Signal
(White noise)
General Adaptive Signal Processor

August 2007, Version 3.8/21/07 For Academic Use Only. All Rights Reserved
Top
Notes:
To intuitively appreciate the above example, consider that the channel is a simple acoustic channel (from a
loudspeaker to a microphone). When an impulse is generated in a room, it will travel to a specific point by the
direct path, and also by many (first) echo or reflection paths and then by echoes of echoes (reverberation).
Clearly the dimensions and the walls of the room will influence the impulse response.

One traditional method of finding the impulse response of a room, is to apply an impulse using “clappers” or a
starting pistol, and record the impulse with a microphone and tape recorder. Improved impulse responses can
be found by taking an ensemble average of around 20 impulses. To find the frequency response of the room,
the Fourier transform of the impulse response is taken. This technique can however be difficult and time
consuming in practice, and white noise correlation techniques are more likely.

h(t) H(f)
Impulse Response
DFT

time frequency
IDFT

Calculating the impulse response is important to audio engineers working in applications such as architectural
acoustics, car interior acoustics, loudspeaker design, echo control systems, public address system design and
so on.

Adaptive System Identification Room Acoustic Identification

If the architecture in the previous slide does indeed adapt, then the error will become very small. Because the
adaptive filter and the room were excited by the same signal, then over the frequency range of the input signal,
x(k), the adaptive filter will have the same same impulse (and frequency) response as the room.

Developed by:
Top
Echo Cancellation 9.12

• Local line echo cancellation is widely used in data modems (V-series)


and in telephone exchanges for echo reduction.
“..morning”
A
x(k)
Input Signal
ADC

Echo Path “..morning”


e.g. Hybrid A
Adaptive Telephone
Filter Connection

B
Output Signal y(k) Simulated
echo of A “Hello”
- d(k)
B DAC Σ ADC
e(k) +
“Hello”
B + echo of A London Paris
“Hello” “..morning”

August 2007, Version 3.8/21/07 For Academic Use Only. All Rights Reserved
Top
Notes:
When speaker A (or data source A) sends information down the telephone line, mismatches in the telephone
hybrids can cause echoes to occur. Therefore speaker A will hear an echo of their own voice which can be
particularly annoying if the echo path from the near and far end hybrids is particularly long. (Some echo to the
earpiece is often desirable for telephone conversation, and the local hybrid is deliberately mismatched, however
for data transmission echo is very undesirable and must be removed.)

If we can suitably model the echo generating path with the adaptive filter, then a negative simulated echo can
be added to cancel out the speaker A echo. At the other end of the line, telephone user B can also have an
echo canceller.

In general local echo cancellation (where the adaptive echo canceller is inside the consumer’s telephone/data
communication equipment) is only used for data transmission and not speech. Minimum specifications for the
modem V series of recommendations can be found in the ITU (formerly CCITT) Blue Book. For V32 modems
(9600 bits/sec with Trellis code modulation) an echo reduction ratio of 52dB is required. This is power reduction
of around 160,000 in the echo. Hence the requirement for a powerful DSP processor implementing an adaptive
echo cancelling filter.

For long distance telephone calls where the round trip echo delay is more than 0.1 seconds and suppressed by
less than 40dB (this is typical via satellite or undersea cables) line echo on speech can be a particularly
annoying problem. Before adaptive echo cancellers this problem would be solved by setting up speech
detectors and allowing speech to be half duplex. This is inconvenient for speakers who must take it in turn to
speak. Adaptive echo cancellers at telephone exchanges have however helped to solve this problem.

To cancel both near-end and far-end an echo canceller is often presented in two sections, one for the near end
echo, and one for the far end echo. Further information on telecommunication echo cancellers can be found the
textbooks referenced earlier.

Developed by:
Top
Acoustic Echo Cancellation 9.13

• Speakerphone acoustic echo cancellation is a very suitable application


for adaptive DSP:..
A(t) + echo of B(t-1) + echo of A (t-2)....etc
+
A Σ e(k)
A
d(k)
-
H1(f) y(k) Adaptive
Adaptive Filter “feedback”
“feedback”
Filter
H2(f)
x(k) -
B Σ B
+

Room 1 Room 2
B(t) + echo of A(t-1) + echo of B(t--2)... etc.
• With the loudspeaker and microphone in the same room the direct
acoustic feedback path may cause problems. (Note ADCs/DACs not
shown above.)

August 2007, Version 3.8/21/07 For Academic Use Only. All Rights Reserved
Top
Notes:
In the above example, amplifiers, ADC, DACs, communication channels etc have been omitted to allow the
problem to be clearly defined.

When speaker A in room 1 speaks into microphone 1, the speech will appear at loudspeaker 2 in room 2.
However the speech from loudspeaker 2 will be picked up by microphone 2, and transmitted back into room 1
via loudspeaker 1, which in turn is picked up by loudspeaker 1, and so on. Hence unless the loudspeaker and
microphones in each room are acoustically isolated, there is a direct feedback path which may cause stability
problems and hence failure of the full duplex speakerphone.

Teleconferencing, or hands free telephony has a significant required for good adaptive filters. For some
commercially available teleconferencing systems, the adaptive filters are white noise trained when a connection
is set up and may thereafter adapt on-line to an changes in the environment. Because the reverberation time
of a an office type room can be up to a second or more, it is not unknown for the adaptive filters to have 1000’s
of weights.

It is often thought that speakerphones are a relatively new innovation. They are not. Speakerphones in
emergency telephone equipment for roadside public use have been available since the 1920s (albeit the phone
at the exchange was not a speakerphone - hence no acoustic echo problems!)

Developed by:
Top
Mains Hum Noise Suppression 9.14

• Using a 50 Hz noise reference, electrical mains hum can be removed


from the ECG (electrocardiograph, heartbeat signal).

ADC
time
Signal + Noise d(k)

+
Adaptive e(k)
ADC Σ
x(k)
Filter y(k) -

time
Noise Reference

time
Signal

August 2007, Version 3.8/21/07 For Academic Use Only. All Rights Reserved
Top
Notes:
The ECG main’s hum noise canceller is a classic example first presented by Widrow et al. and frequently quoted
in many texts and papers for example purposes.

Widrow also completed work on noise cancellation for foetal heart monitoring. In this case the input signal was
a reference of the mother’s heartbeat, and the desired input was the foetus heartbeat plus the mother’s
heartbeat sensed at the mother’s stomach. Hence the dominant mother’s heartbeat could be subtracted out to
allow the doctor’s to observe the baby’s heartbeat..

Baby’s + Mother’s heartbeat


ADC

d(k)

y(k) +
Mother’s heartbeat Adaptive e(k)
ADC Filter Σ
- “Baby’s heartbeat”
x(k)

Many companies now make very high resolution (> 22 bits) ADCs suitable for a wide variety of biomedical DSP
applications (ECGs, EEGs EMGs). Additional information on this area of work can be found in:

W.J. Tompkins. Biomedical Digital Signal Processing. Prentice Hall, Englewood Cliffs, NJ, 1993.

Developed by:
Top
Background Noise Suppression 9.15

• Inside, for example, a car or helicopter, background engine noise can


be reduced from a radio or telephone signal if an uncorrelated
reference signal is available:

Primary
Microphone Reference Microphone

ADC
s(k)+n(k)
d(k)

n’(k) +
Adaptive
ADC Σ
NOISE Filter
y(k)
- e(k) ≈ s(k)
Reference x(k)

Microphone

August 2007, Version 3.8/21/07 For Academic Use Only. All Rights Reserved
Top
Notes:
To reduce the engine noise picked up by the microphone, a reference noise signal is required. This signal
should contain as little of the speech as possible otherwise the adaptive noise canceller will also try to cancel
the speech signal. Therefore ideally the reference microphone is acoustically isolated from the primary
microphone. This may be accomplished by using particular types of microphone, or perhaps using a judiciously
placed accelerometer in place of the reference microphone.

In general the background noise will quasi-periodic (consider any type of reciprocating or rotating engine noise).
Reasonable levels of noise reduction can be achieved for noise cancellation architectures, and can improve
voiceband communications from incoherent to understandable.

Developed by:
Top
Channel Equalisation 9.16

• To improve the bandwidth of a channel we can attempt to equalise a


communication channel:
Training s(k)
Sequence Δ

“Virtual wire”
d(k)

x(k) +
y(k)
Training Telephone Adaptive
Sequence DAC
Channel
ADC
Filter
Σ
- e(k)
s(k)

NEW YORK, USA GLASGOW, UK

• Training sequence could be a PRBS standard.

August 2007, Version 3.8/21/07 For Academic Use Only. All Rights Reserved
Top
Notes:
If the above architecture successfully adapts (error is minimised) then the adaptive filter will produce an
approximately inverse transfer function of the telephone channel.

Data Channel Equalisation

The process of data channel equalisation is one of the most exploited areas of adaptive signal processing. Most
digital data communications (V32 modems for example) use some form of data channel equaliser. In the last
few years the availability of fast adaptive equalisers has led to modems capable of more than 28800 bits/s
communication with 115200 bits/s (also using data compression) modems on the horizon.

If the above telephone channel is a (stationary) communication channel with a continuous time impulse
response, then when symbols are transmitted the impulse response will cause a symbol to spread over many
time intervals, thus introducing intersymbol interference (ISI). The aim of a data equaliser is to remove this ISI.
Compared to simple channel equalisation, it should be noted that a data equaliser only requires to equalise the
channel at the symbol sampling instants rather than over all time. Hence the problem can be posed with data
symbols as inputs, rather than the raw stochastic data (as in the slide).

In general for channels where the impulse response changes slowly, a decision directed adaptive data
equaliser is used, whereby a slicer is used to produce a retraining signal. It is also worth noting that for many
data transmission systems, the data is complex, and hence a complex adaptive algorithm is required.

Further Information

R. Lucky’s paper on adaptive equalisation (Bell Syst Tech. J., Vol. 45, 1966) defined the LMS algorithm for
equalisation of digital communications and still is very relevant today. A more recent paper is: S. Qureshi.
Adaptive Equalisation. Proceedings of the IEEE, Vol. 73, pp. 1349-1387, 1985. A useful introduction can be
found in: H.M. Ahmed. Recent advances in DSP Systems. IEEE Comms. Mag., Vol. 29, No. 5, pp 32-45, May
1991. See also the general adaptive DSP textbooks for more information.
Developed by:
Top
Adaptive Line Enhancer (ALE) 9.17

• The delay, Δ, is long enough to decorrelate the broadband “noise-like”


signal, resulting in a filter which extracts the narrowband periodic signal
at filter output y(k) (or removes the periodic noise from a wideband
signal at e(k) ).

d(k)

+
time Adaptive y(k)
Δ Σ time
s(k) s(k – Δ) Filter -
e(k)

Δ − decorrelation parameter
time

August 2007, Version 3.8/21/07 For Academic Use Only. All Rights Reserved
Top
Notes:
An adaptive line enhancer (ALE) exploits the knowledge that the signal of interest is periodic, whereas the
additive noise is stochastic. If the decorrelation parameter, Δ, is long enough then the stochastic noise
presented to the d(k) input is uncorrelated with the noise presented to the x(k) input, however the periodic noise
remains correlated.

r(τ) r(τ)

Lag, τ −Δ Δ Lag, τ
Correlation of a periodic (sine wave) signal Correlation of a stochastic signal

Typically an ALE may be used in communication channels or in radar and sonar applications where a low level
sinusoid is masked by white or coloured noise.

In a telecommunications system, an ALE could be used to extract periodic DTMF signals from very high levels
of stochastic noise.

Alternatively note that the ALE can be used to extract the periodic noise from the stochastic signal by observing
the output e(k).

Perhaps one of the most imaginatively named of all signal processing algorithms was an adaptive line enhancer
developed in the 1980s by Kevin Buckley and Lloyd Griffiths and named BASS-ALE!

Developed by: