Adaptive Digital Filters 9.6

Adaptive Digital Filters Top 9.6 • Adaptive digital filters are self learning filters, whereby an FIR (or IIR) is designed based on the characteris...
Author: Geoffrey Booth
0 downloads 2 Views 271KB Size
Adaptive Digital Filters

Top

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)

w1

w2

Adaptive Weights

x(k) Input w0

d(k)

y(k) Output

August 2007, Version 3.8/21/07 For Academic Use Only. All Rights Reserved

+ e(k) Error

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 input signal

x(k)

Adaptive FIR Digital Filter

y(k) Output 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

d(k) + Σ

e(k) error signal

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

DSP Processor

ADC x(k)

Adaptive Digital Filter

d(k)

fs +

y(k)

-

Σ e(k)

Adaptive Algorithm

DAC Analogue Signal Digital Signal

August 2007, Version 3.8/21/07 For Academic Use Only. All Rights Reserved

fs

fs

DAC

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) n’(k)

x(k)

Adaptive Filter

y(k)

-

Σ

+ e(k) s(k)

Unknown System

x(k)

Adaptive Filter

y(k)

-

Σ

+e(k)

Inverse System Identification

Noise Cancellation Unknown System

d(k)

d(k) x(k)

Adaptive Filter

y(k)

-

Σ

+

e(k)

System Identification

August 2007, Version 3.8/21/07 For Academic Use Only. All Rights Reserved

s(k)

Delay

x(k)

Adaptive Filter

Prediction

y(k)

-

Σ

+e(k)

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 ) : +

Unknown System 1

s(k) +

Delay

d(k) r(k)

Unknown System 2

x(k)

Adaptive Filter

y(k)

+ e(k)

-

Developed by:

Application Examples

Top

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) Broadband Signal (White noise)

Adaptive Filter

y(k) + Σ -

General Adaptive Signal Processor

August 2007, Version 3.8/21/07 For Academic Use Only. All Rights Reserved

e(k)

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 Input Signal

x(k) ADC Echo Path e.g. Hybrid Telephone Connection

Adaptive Filter Output Signal B “Hello”

y(k) -

DAC

e(k)

Σ

+

B + echo of A “Hello” August 2007, Version 3.8/21/07 For Academic Use Only. All Rights Reserved

“..morning”

A B

Simulated echo of A

d(k)

“..morning”

“Hello” ADC

London

Paris

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

Σ

d(k)

H1(f)

A

-

y(k) Adaptive Filter

“feedback”

e(k)

x(k)

B

Adaptive Filter

“feedback” H2(f)

-

Σ +

Room 1

B

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)

ADC x(k)

Adaptive Filter

+ y(k)

-

Σ

e(k)

time Noise Reference Signal

August 2007, Version 3.8/21/07 For Academic Use Only. All Rights Reserved

time

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)

Mother’s heartbeat

Adaptive Filter

ADC x(k)

+

y(k)

Σ -

e(k) “Baby’s heartbeat”

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:

Background Noise Suppression

Top

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) n’(k) NOISE

ADC Reference Microphone

August 2007, Version 3.8/21/07 For Academic Use Only. All Rights Reserved

x(k)

d(k)

Adaptive Filter

+ y(k)

Σ

e(k) ≈ s(k)

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 Sequence

s(k)

Δ

“Virtual wire” d(k) x(k)

Training Sequence

DAC

Telephone Channel

ADC

Adaptive Filter

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

+

y(k)

-

Σ

e(k)

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

s(k)

Δ

s(k – Δ)

Adaptive Filter

y(k) -

+

Σ e(k)

Δ − decorrelation parameter time

August 2007, Version 3.8/21/07 For Academic Use Only. All Rights Reserved

time

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, τ Correlation of a periodic (sine wave) signal

−Δ

Δ

Lag, τ

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: