You are on page 1of 61

ADAPTIVE CHANNEL EQUALIZATION

CHAPTER I
INTRODUCTION

Digital signal processing (DSP) has been a major player in the current technical
advancements such as noise filtering, system identification, and voice prediction.
Standard DSP techniques, however, are not enough to solve these problems quickly and
obtain acceptable results. Adaptive filtering techniques must be implemented to promote
accurate solutions and a timely convergence to that solution.

Adaptive filtering is an important topic that has applications in several engineering


areas such as communications, control, and biomedical engineering. Examples of such
applications are adaptive noise canceling, adaptive equalization of data transmission
channels, adaptive antenna arrays, adaptive system identification, and adaptive canceling
of narrowband interference in direct sequence spread spectrum systems.

Adaptive filtering is made of a digital filter whose weights are controlled by an


adaptation algorithm so as to minimize the difference between the filter output and a
reference signal according to some criterion. The nature of the reference signal depends
on the considered application. There are two main measures for evaluating the
performance of an adaptive filter: the convergence rate and the steady state mean square
error. In practical applications, it is desired to maximize the convergence rate and
minimize the steady state mean square error. There is a conflict between these
requirements. Several adaptation algorithms have been developed so as to yield a good
compromise between these requirements. Improving this compromise is a continuous
open issue. This presentation gives a survey of main applications of adaptive filtering,
performance criteria, adaptation algorithms, some new results attained by the presenter,
and open issues.

Adaptive filters sense the properties of the environments in which they operate and
adjust the filter parameters accordingly. Consequently, they are useful in a wide variety
of applications in which the properties of the operating environments are not known, or in
1
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

which they change with time in a previously unknown manner. Adaptive filters, which
aim to transform information-bearing signals into “cleaned up” or “improved” versions,
adjust their characteristics according to the signals encountered. They form the simplest
examples of algorithms within the field of machine learning.

Adaptive filters are often preferred over their fixed-characteristic counterparts, which
are fundamentally unable to adjust to changing signal conditions. The convenient
autonomous adaptability of adaptive filters explains their widespread application in signal
restoration, interference cancellation, system identification, and medical diagnostics, to
name just a few areas. Ubiquitous among the different adaptive filtering algorithm is the
Least-mean-square (LMS) .

Digital signal processing (DSP) has been a major player in the current technical
advancements such as noise filtering, system identification, and voice prediction.
Standard DSP techniques, however, are not enough to solve these problems quickly and
obtain acceptable results. Adaptive filtering techniques must be implemented to promote
accurate solutions and a timely convergence to that solution.

This dissertation presents a new estimation-based procedure for the systematic


synthesis and analysis of adaptive filters (controllers) in “Filtered” LMS problems. This
new approach uses an estimation interpretation of the adaptive filtering (control) problem
to formulate an equivalent estimation problem. The new algorithm, referred to as
Estimation-Based Adaptive Filtering (EBAF),applies to both Finite Impulse Response
(FIR) and Infinite Impulse Response (IIR)adaptive filters.

1.1 MOTIVATION:

Introducing a systematic procedure for the synthesis of adaptive filters is one of the
main goals of this project.Least-Mean Squares (LMS) adaptive algorithm has been the
centerpiece of a wide variety of adaptive filtering techniques for almost four decades. The
straightforward derivation and the simplicity of its implementation (especially at the time
of limited computational power) encouraged experiments with the algorithm in a diverse
range of applications. In some applications however, the simple implementation of the
2
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

LMS algorithm was found to be inadequate. Subsequent attempts to overcome its


shortcomings have produced a large number of innovative solutions that have been
successful in practice.

Commonly used algorithms such as normalized LMS, correlation LMS, leaky LMS,
variable-step-size LMS, and Filtered-X LMS are the outcome of such efforts. These
algorithms use the instantaneous squared error to estimate the mean-square error, and
often assume slow adaptation to allow for the necessary linear operations in their
derivation.

“Many of the algorithms and approaches used are of an ad hoc nature; the tools are
gathered from a wide range of fields; and good systematic approaches are still lacking.”
the adaptation with LMS on stationary stochastic processes, and finds the optimal solution
to which the expected value of the weight vector converges. For sinusoidal inputs, when
time-varying component of the adaptive filter output is small compared to its time-
invariant component, the adaptive LMS filter can be approximated by a linear time-
invariant transfer function.

1.2 AN OVERVIEW OF ADAPTIVE FILTERING ALGORITHMS:

To put this thesis in perspective, this section provides a brief overview of the vast
literature on adaptive filtering (control). Reference recognizes 1957 as the year for the
formal introduction of the term “adaptive system” into the control literature. By then, the
interest in filtering and control theory had shifted towards increasingly more complex
systems with poorly characterized (possibly time varying) models for system dynamics
and disturbances, and the concept of “adaptation” (borrowed from living systems) seemed
to carry the potential for solving the increasingly more complex control problems.
The exact definition of “adaptation” and its distinction from “feedback”, however, is the
subject of long standing discussions .Qualitatively speaking, an adaptive system is a
system that can modify its behavior in response to changes in the dynamics of the system
or disturbances through some recursive algorithm. As a direct consequence of this

3
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

recursive algorithm (in which the parameters of the adaptive system are adjusted using
input/output data), an adaptive system is a “nonlinear” device. The development of
adaptive algorithms has been pursued from a variety of view Points.

For the purpose of this thesis is to provide a distinct approach for deriving recursive
adaptive algorithm can be identified as stochastic gradient approaches that include LMS
and LMS-Based adaptive algorithm. The central idea in the this approach, is to define an
appropriate cost function that captures the success of the adaptation process, and then
change the adaptive filter parameters to reduce the cost function according to the method
of steepest descent. This requires the use of a gradient vector (hence the name), which in
practice is approximated using instantaneous data.. The latter approach to the design of
adaptive filters is based on the method of least squares. This approach closely corresponds
to Kalman filtering, provides a unifying state-space approach to adaptive RLS filtering.
The main focus in this thesis however, is on the LMS-based adaptive algorithms.

Since adaptive algorithms can successfully operate in a poorly known environment,


they have been used in a diverse field of applications that include communication, process
control ,seismology, biomedical engineering. Despite the diversity of the applications, die
rent implementations of adaptive filtering (control) share one basic common feature: “an
input vector and a desired response are used to compute an estimation error, which is in
turn used to control the values of a set of adjustable filter coefficients.”

There are several main structures for the implementation of adaptive filters
(controllers). The structure of the adaptive filter is known to affect its performance,
computational complexity, and convergence. In this thesis, the two most commonly used
structures for adaptive filters (controllers) are considered. The finite impulse response
(FIR) transversal filter is the structure upon which the main presentation of the
estimation-based adaptive filtering algorithm is primarily presented. The transversal filter
consists of three basic elements: (a) unit-delay element,
(b) Multiplier and
(c) adder

4
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

and contains feed forwards paths only. The numbers of unit-delays specify the length of
the adaptive FIR filter. Multipliers weight the delayed versions of some reference signal,
which are then added in the adder(s). The frequency response for this filter is of finite
length and contains only zeros (all poles are at the origin in the z-plane). Therefore, there
is no question of stability for the open-loop behavior of the FIR filter. The feature that
distinguishes the IIR filter from an FIR filter is the inclusion of the feedback path in the
structure of the adaptive filter.

As mentioned earlier, for an FIR filter all poles are at the origin, and a good
approximation of the behavior of a pole, in general, can only be achieved if the length of
the FIR filter is sufficiently long. An IIR filter, ideally at least, can provide a perfect match
for a pole with only a limited number of parameters. This means that for a desired
dynamic behavior the number of parameters in an adaptive IIR filter can be far fewer than
that in its FIR counterpart.

The computational complexity per sample for adaptive IIR filter design can therefore
be significantly lower than that in FIR filter design. The limited use of adaptive IIR filters
suggests that the above mentioned advantages come at a certain cost. In particular,
adaptive IIR filters are only conditionally stable, and therefore some provisions are
required to assure stability of the filter at each iteration.

Finally, for a wide variety of applications such as equalization in wireless


communication channels, and active control of sound and vibration in an environment
where the effect of a number of primary sources should be canceled by a number of
control (secondary) sources, the use of a multi-channel adaptive algorithm is well
justified. In general, however, variations of the LMS algorithm are not easy to extend to
multi-channel systems. Furthermore, the analysis of the performance and properties of
such multi-channel algorithms is complicated . In the context of active noise cancellation,
the successful implementation of multi-channel adaptive algorithms has so far been
limited to cases involving repetitive noise with a few harmonics .

5
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

CHAPTER II

LITERATURE CONCERN TO THE PROJECT


2.1 ADAPTIVE FILTERING:

GENERAL DESCRIPTION OF ADAPTIVE FILTERS:

Adaptive filters are digital filters capable of self adjustment. These filters can change
in accordance to their input signals. An adaptive filter is used in applications that require
differing filter characteristics in response to variable signal conditions.
The adaptive filter requires two inputs:
_ the input signal x(n)
_ the reference input d(n)
An adaptive filter has the ability to update its coefficients. New coefficients are sent to
the filter from a coefficient generator. The coefficient generator is an adaptive algorithm
that modifies the coefficients in response to an incoming signal. The digital filter is
typically a special type of finite impulse response (FIR) filter, but it can be also an
infinite impulse response (IIR) or other type of filter. Adaptive filters have uses in a
number of applications, including noise cancellation, linear prediction, adaptive signal
enhancement, and adaptive control.

Figure 1 shows a block diagram of an adaptive filter model. The unknown system is
modeled by an FIR filter with adjustable coefficients. Both the unknown system and FIR
filter model are excited by an input sequence x(n). The adaptive FIR filter output y(n) is
compared with the unknown system output d(n) to produce the error signal e(n). The
error signal represents the difference between the unknown system output and the model
output. The error e(n) is then used as the input to an adaptive control algorithm, which
corrects the individual tap weights of the filter. This process is repeated through several
iterations until the error signal e(n) becomes sufficiently small. The resultant FIR filter
response now represents that of the previously unknown system.

6
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

Figure 2.1.1 System Identification Model of Adaptive Channel Equalization

2.2 The FIR (Finite Impulse Response) Filter

Figure 2 shows the structure of a transversal FIR filter with N taps adjustable weights.

Figure 2.2.1 Transversal FIR Filter Structure.

The tap-weight vector, wi(n) is represented as


w(n) = [w0(n), w0(n), …, w0(n)]
the tap-input vector, x(n), as
x(n) = [x(n), x(n-1), …, x(n-N+1)]
The FIR filter output, y(n) can then be expressed as
N-1
Y(n)= ∑ wi(n). x(n-i).
n=0

7
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

where n is the time index and N is the order of the filter.

Filter Algorithms

A number of filter algorithms will be discussed in this section; the finite impulse
response (FIR) least mean squares (LMS) gradient approximation method will be
discussed in detail, characteristics of infinite impulse response (IIR) adaptive filters will
be briefly discussed, the transform domain adaptive filter (TDAF) and numerous other
algorithms will be mentioned for completeness.

Finite Impulse Response (FIR) Algorithms

Least Mean Squares Gradient Approximation Method

Given an adaptive filter with an input x(n), an impulse response w(n) and an output
y(n) you will get a mathematical relation for the transfer function of the system

y(n) = wT(n)x(n)

and

x(n) = [x(n), x(n-1), x(n-2), ... , x(n-(N-1))]

where wT(n) = [w0(n), w1(n), w2(n) ... wN-1(n)] are the time domain coefficients for an Nth
order FIR filter.

Note in the above equation and throughout a boldface letter represents a vector ant the
super script T represents the transpose of a real valued vector or matrix.

Using an estimate of the ideal cost function the following equation can be derived.

w(n+1) = w(n) - µ ∆ 2
(n).
E[e ]

8
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

In the above equation w(n+1) represents the new coefficient values for the next time
interval, µ is a scaling factor, and ∆ 2
(n) is the ideal cost function with respect to the
E[e ]

vector w(n). From the above formula one can derive the estimate for the ideal cost
function

w(n+1) = w(n) - µ e(n)x(n)

where

e(n) = d(n) - y(n)

and

y(n) = xT(n)w(n).

In the above equation µ is sometimes multiplied by 2, but here we will assume it is


absorbed by the µ factor.

In summary, in the Least Mean Squares Gradient Approximation Method, often


referred to as the Method of Steepest Descent, a guess based on the current filter
coefficients is made, and the gradient vector, the derivative of the MSE with respect to
the filter coefficients, is calculated from the guess. Then a second guess is made at the
tap-weight vector by making a change in the present guess in a direction opposite to the
gradient vector. This process is repeated until the derivative of the MSE is zero.

Convergence of the LMS Adaptive Filter

The convergence characteristics of the LMS adaptive filter is related to the


autocorrelation of the input process as defined by

Rx = E[x(n)xT(n)]

There are a two conditions that must be satisfied in order for the system to converge.
These conditions include:

9
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

o The autocorrelation matrix, Rx, must be positive definite.


o 0 < µ < 1/λ max., where λ max is the largest eigen value of Rx.

In addition, the rate of convergence is related to the eigen value spread. This is defined
using the condition number of Rx, defined as κ = λ max /λ min , where λ min is the
minimum eigen value of Rx. The fastest convergence of this system occurs when κ = 1,
corresponding to white noise. This states that the fastest way to train a LMS adaptive
system is to use white noise as the training input. As the noise becomes more and more
colored, the speed of the training will decrease.

2.3 The LMS (least-mean square) Algorithm

The LMS algorithm is initialised by setting all weights to zero at time n=0. Tap
weights are updated using the relationship

where
 wi(n) represent the tap weights of the FIR filter
 e(n) is the error signal
 x(n) represent the tap inputs
 the factor µ= is the adaptation parameter or step-size

The following figure shows a detailed description of the LMS-filter implementation

10
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

Figure 2.3.1: LMS-filter implementation

The filter output, y(n), is calculated in terms of the difference equation

Adaptive filtering techniques are used in a wide range of applications, including echo
Cancellation, adaptive equalization, adaptive noise cancellation, and adaptive beam
forming. The performance of an adaptive filtering algorithm is evaluated based on its
convergence rate, mis adjustment, computational requirements, and numerical robustness.

11
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

We attempt to improve the performance by developing new adaptation algorithms and by


using “unconventional” structures for adaptive filters.
Part I of this dissertation presents a new adaptation algorithm, which we have termed
the Normalized LMS algorithm with Orthogonal Correction Factors (NLMS-OCF). The
NLMSOCF algorithm updates the adaptive filter coefficients (weights) on the basis of
multiple input signal vectors, while NLMS updates the weights on the basis of a single
input vector. The well-known Affine Projection Algorithm (APA) is a special case of our
NLMS-OCF algorithm.

We derive convergence and tracking properties of NLMS-OCF using a simple model


for the input vector. Our analysis shows that the convergence rate of NLMS-OCF (and
also APA) is exponential and that it improves with an increase in the number of input
signal vectors used for adaptation. While we show that, in theory, the misadjustment of
the APA class is independent of the number of vectors used for adaptation, simulation
results show a weak dependence. For white input the mean squared error drops by 20 dB
in about 5N/(M+1) iterations, where N is the number of taps in the adaptive filter and
(M+1) is the number of vectors used for adaptation.

The dependence of the steady-state error and of the tracking properties on the three
user selectable parameters, namely step size µ , number of vectors used for adaptation
(1+ M), and input vector delay D used for adaptation, is discussed. While the lag error
depends on all of the above parameters, the fluctuation error depends only on µ .
Increasing D results in a linear increase in the lag error and hence the total steady state
mean-squared error. The optimum choices for µ and M are derived. Simulation results
are provided to corroborate our analytical results.

We also derive a fast version of our NLMS-OCF algorithm that has a complexity of
O(NM) .The fast version of the algorithm performs orthogonalization using a forward-
backward prediction lattice. We demonstrate the advantages of using NLMS-OCF in a
practical application, namely stereophonic acoustic echo cancellation. We find that
NLMS-OCF can provide faster convergence, as well as better echo rejection, than the
widely used APA.
12
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

While the first part of this project attempts to improve adaptive filter performance by
refining the adaptation algorithm, the second part of this work looks at improving the
convergence rate by using different structures. From an abstract viewpoint, the
parameterization we decide to use has no special significance, other than serving as a
vehicle to arrive at a good input-output description of the system. However, from a
practical viewpoint, the parameterization decides how easy it is to numerically minimize
the cost function that the adaptive filter is attempting to minimize.

A balanced realization is known to minimize the parameter sensitivity as well as the


condition number for Grammians. Furthermore, a balanced realization is useful in model
order reduction. These properties of the balanced realization make it an attractive
candidate as a structure for adaptive filtering. We propose an adaptive filtering algorithm
based on balanced realizations.

The third part of this project proposes a unit-norm-constrained equation-error based


adaptive IIR filtering algorithm. Minimizing the equation error subject to the unit-norm
constraint yields an unbiased estimate for the parameters of a system, if the measurement
noise is white. The proposed algorithm uses the hyper-spherical transformation to convert
this constrained optimization problem into an unconstrained optimization problem. It is
shown that the hyper-spherical transformation does not introduce any new minima in the
equation error surface. Hence, simple gradient-based algorithms converge to the global
minimum. Simulation results indicate that the proposed algorithm provides an unbiased
estimate of the system parameters.

13
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

2.4 WHY LMS ALGORITHM:

The Kalman filter is just one of many adaptive filtering (or estimation) algorithms.
Despite its elegant derivation and often excellent performance, the Kalman filter has two
drawbacks:

1. The derivation and hence performance of the Kalman filter depends on the
accuracy of the a priori assumptions. The performance can be less than impressive
if the assumptions are erroneous.
2. The Kalman filter is fairly computationally demanding, requiring O(P2)
operations per sample. This can limit the utility of Kalman filters in high rate real
time applications.

As a popular alternative to the Kalman filter, we will investigate the so-called least-
mean-square (LMS) adaptive filtering algorithm.
The principle advantages of LMS are

1. No prior assumptions are made regarding the signal to be estimated.


2. Computationally, LMS is very efficient, requiring O(P) per sample.

The price we pay with LMS instead of a Kalman filter is that the rate of convergence
and adaptation to sudden changes is slower for LMS than for the Kalman filter (with
correct prior assumptions).

Adaptive Filter Implementation:

First, simulate the system identification block diagram in Figure 1. For the simulation,
let d [n] = x [n] be a Gaussian random noise input, which can be generated in MATLAB
using the command randn. Because the adaptive filter coefficients change with time,
implement the filter on a sample by sample basis ( e.g., using a do loop). For the
"unknown" system, Use the fourth-order, low-pass elliptical IIR filter designed with the
following MATLAB commands:

14
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

Simulate the system with an adaptive filter of length 32 and a step-size of 0.02.
Initialize all adaptive filter coefficients to zero. Plot the squared-error versus sample
number as the filter adapts over time. Also, plot the frequency response of the adaptive
filter coefficients at the end of the simulation. How well does the filter match? How long
does it take to converge?

Second, write an assembly program to implement an adaptive FIR filter. Your code
can be modified from the FIR filtering laboratory exercise to meet the following
specifications:
1. The program should run at an 8kHz-sampling rate.
2. The filter coefficients should be initialized to zero at the start of program execution.
3. The left input channel is the input x [n] to the adaptive filter.
4. The right input channel is the reference input signal d [n].
5. The left channel output is the adaptive filter output y [n].

Figure2.4.1: An adaptive filter


6. The right channel output is the error signal e [n].
Based on these specifications, your program should implement the block diagram of
Figure 1.
The LMS filter coefficient update equation is
15
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

W [n + 1] = W [n] + µe [n]X [n] (1)


where W [n] is the vector of FIR filter coefficients at time n, e [n] = d [n] − y [n] is the
error between the reference and output, µ is the step size, and X [n] is the vector of
current and past input samples.

16
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

2.5 APPLICATIONS AND SYSTEM CONFIGURATIONS OF ADAPTIVE


FILTERS:

Adaptive filtering is an important topic that has applications in several engineering


areas such as communications, control, and biomedical engineering. Examples of such
applications are adaptive noise canceling, adaptive equalization of data transmission
channels, adaptive antenna arrays, adaptive system identification, and adaptive canceling
of narrowband interference in direct sequence spread spectrum systems. Adaptive
filtering is made of a digital filter whose weights are controlled by an adaptation
algorithm so as to minimize the difference between the filter output and a reference signal
according to some criterion. The nature of the reference signal depends on the considered
application. There are two main measures for evaluating the performance of an adaptive
filter: the convergence rate and the steady state mean square error. In practical
applications, it is desired to maximize the convergence rate and minimize the steady state
mean square error. There is a conflict between these requirements. Several adaptation
algorithms have been developed so as to yield a good compromise between these
requirements. Improving this compromise is a continuous open issue.

Adaptive Filtering Research

Adaptive filters are ubiquitous tools for numerous real-world scientific and industrial
applications. Many educators and practitioners employ the Matlab/spl reg/ technical
computing environment to implement and study adaptive filters. This paper describes the
design and implementation issues regarding a recently-developed set of comprehensive
Matlab adaptive FIR filtering tools. In addition to a complete suite of algorithms, the tool
set includes analysis functions that enable users to quickly characterize the average
performance of selected algorithms when limited data are available. We provide
execution speed comparisons for algorithm families to guide users in algorithm selection
when Matlab execution time is most critical.

17
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

Adaptive filters sense the properties of the environments in which they operate and
adjust the filter parameters accordingly. Consequently, they are useful in a wide variety
of applications in which the properties of the operating environments are not known, or in
which they change with time in a previously unknown manner.
We have considerable experience in developing and analyzing various types of
adaptive linear and nonlinear filters. Examples of works he has done in this area include:

(i) Development of computationally efficient adaptive filters that employ


few or no multipliers for adapting the parameters
(ii) Algorithms that exhibit fast convergence as well as low steady-state
error characteristics
(iii) Efficient techniques for adaptive filters employing nonlinear system
models.

The application areas we are interested in include, but are not limited to:

• Adaptive equalization problems. Examples include systems for multiple access


communication and teleconferencing, compensation of nonlinearities in magnetic
recording media, image binarization for character recognition systems, etc.
• Adaptive prediction in data compression systems including compression of
images, speech, multispectral data, etc.
• Time delay estimation, tracking and localization of moving objects.
• Adaptive enhancement of images.
• Separation of signals generated by several sources from a mixture.
• Adaptive interference cancellation and enhancement of noisy signals.

An adaptive filter is a filter that self-adjusts its transfer function according to an


optimizing algorithm. Because of the complexity of the optimizing algorithms, most
adaptive filters are digital filters that perform digital signal processing and adapt their
performance based on the input signal. By way of contrast, a non-adaptive filter has
static filter coefficients (which collectively form the transfer function).

18
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

For some applications, adaptive coefficients are required since some parameters of the
desired processing operation (for instance, the properties of some noise signal) are not
known in advance. In these situations it is common to employ an adaptive filter, which
uses feedback to refine the values of the filter coefficients and hence its frequency
response.

Generally speaking, the adapting process involves the use of a cost function, which is
a criterion for optimum performance of the filter (for example, minimizing the noise
component of the input), to feed an algorithm, which determines how to modify of the
filter coefficients to minimize the cost on the next iteration.

As the power of digital signal processors has increased, adaptive filters have become
much more common and are now routinely used in devices such as mobile phones and
other communication devices, camcorders and digital cameras, and medical monitoring
equipment.

Example:

Suppose a hospital is recording a heart beat (an ECG), which is being corrupted by a
50 Hz noise (the frequency coming from the power supply in many countries).

One way to remove the noise is to filter the signal with a notch filter at 50 Hz.
However, due to slight variations in the power supply to the hospital, the exact frequency
of the power supply might (hypothetically) wander between 47 Hz and 53 Hz. A static
filter would need to remove all the frequencies between 47 and 53 Hz, which could
excessively degrade the quality of the ECG since the heart beat would also likely have
frequency components in the rejected range.

19
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

To circumvent this potential loss of information, an adaptive filter could be used. The
adaptive filter would take input both from the patient and from the power supply
directly and would thus be able to track the actual frequency of the noise as it
fluctuates. Such an adaptive technique generally allows for a filter with a smaller
rejection range, which means, in our case, that the quality of the output signal is
more accurate for medical diagnoses.
There are four major types of adaptive filtering configurations; adaptive system
identification, adaptive noise cancellation, adaptive linear prediction, and adaptive
inverse system. All of the above systems are similar in the implementation of the
algorithm, but different in system configuration. All 4 systems have the same general
parts; an input x(n), a desired result d(n), an output y(n), an adaptive transfer function
w(n), and an error signal e(n) which is the difference between the desired output u(n) and
the actual output y(n). In addition to these parts, the system identification and the inverse
system configurations have an unknown linear system u(n) that can receive an input and
give a linear output to the given input.

1. Adaptive filter for system identification:

One application of adaptive filters is adaptive modeling or system identification.

Figure2.5.1 : Using an adaptive filter to module an unknown system.

20
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

Above figure depicts the system modeling problem. The output of an unknown
system to a known input is used as the reference input to an adaptive filter. The known
input signal is fed through the adaptive filter in an effort to duplicate the unknown system
output. Upon convergence, the adaptive filter parameters represent an estimate of the
unknown system.

The adaptive system identification is primarily responsible for determining a discrete


estimation of the transfer function for an unknown digital or analog system. The same
input x(n) is applied to both the adaptive filter and the unknown system from which the
outputs are compared (see figure 1). The output of the adaptive filter y(n) is subtracted
from the output of the unknown system resulting in a desired signal d(n). The resulting
difference is an error signal e(n) used to manipulate the filter coefficients of the adaptive
system trending towards an error signal of zero.

After a number of iterations of this process are performed, and if the system is
designed correctly, the adaptive filter’s transfer function will converge to, or near to, the
unknown system’s transfer function. For this configuration, the error signal does not have
to go to zero, although convergence to zero is the ideal situation, to closely approximate
the given system. There will, however, be a difference between adaptive filter transfer
function and the unknown system transfer function if the error is nonzero and the
magnitude of that difference will be directly related to the magnitude of the error signal.

Additionally the order of the adaptive system will affect the smallest error that the
system can obtain. If there are insufficient coefficients in the adaptive system to model
the unknown system, it is said to be under specified. This condition may cause the error
to converge to a nonzero constant instead of zero. In contrast, if the adaptive filter is over
specified, meaning that there are more coefficients than needed to model the unknown
system, the error will converge to zero, but it will increase the time it takes for the filter
to converge.

21
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

2. Adaptive Interference Cancellation

Adaptive filters are used in modern telephony to perform echo suppression. A small
amount of speech from talker A, transmitted to talker B, is unavoidably "echoed" back to
talker A with talker B's speech.

The second configuration is the adaptive noise cancellation configuration as shown in


figure 2. In this configuration the input x(n), a noise source N1(n), is compared with a
desired signal d(n), which consists of a signal s(n) corrupted by another noise N0(n). The
adaptive filter coefficients adapt to cause the error signal to be a noiseless version of the
signal s(n).

Figure2.5.2: Adaptive interference cancellation

Both of the noise signals for this configuration need to be uncorrelated to the signal
s(n). In addition, the noise sources must be correlated to each other in some way,
preferably equal, to get the best results.

Do to the nature of the error signal, the error signal will never become zero. The error
signal should converge to the signal s(n), but not converge to the exact signal. In other
words, the difference between the signal s(n) and the error signal e(n) will always be
22
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

greater than zero. The only option is to minimize the difference between those two
signals.

With this application in mind, a stereo speech recording has been made. On one
channel talker A is speaking. On the other channel, speech from talker B is present, along
with a delayed "echo" of talker A's speech. Use your adaptive filter to suppress the
"echo" from the speech of talker B.

3. Adaptive Linear Prediction Configuration

Adaptive linear prediction is the third type of adaptive configuration (see figure 3).
This configuration essentially performs two operations. The first operation, if the output
is taken from the error signal e(n), is linear prediction. The adaptive filter coefficients are
being trained to predict, from the statistics of the input signal x(n), what the next input
signal will be. The second operation, if the output is taken from y(n), is a noise filter
similar to the adaptive noise cancellation outlined in the previous section.

As in the previous section, neither the linear prediction output nor the noise
cancellation output will converge to an error of zero. This is true for the linear prediction
output because if the error signal did converge to zero, this would mean that the input
signal x(n) is entirely deterministic, in which case we would not need to transmit any
information at all.

Figure2.5.3: Adaptive Linear Prediction Configuration

23
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

In the case of the noise filtering output, as outlined in the previous section, y(n) will
converge to the noiseless version of the input signal.

4. Adaptive Inverse System Configuration

The final filter configuration is the adaptive inverse system configuration as shown in
figure 4. The goal of the adaptive filter here is to model the inverse of the unknown
system u(n). This is particularly useful in adaptive equalization where the goal of the
filter is to eliminate any spectral changes that are caused by a prior system or
transmission line. The way this filter works is as follows. The input x(n) is sent through
the unknown filter u(n) and then through the adaptive filter resulting in an output y(n).
The input is also sent through a delay to attain d(n). As the error signal is converging to
zero, the adaptive filter coefficients w(n) are converging to the inverse of the unknown
system u(n).

Figure 2.5.4: Adaptive Inverse System Configuration

For this configuration, as for the system identification configuration, the error can
theoretically go to zero. This will only be true, however, if the unknown system consists
only of a finite number of poles or the adaptive filter is an IIR filter. If neither of these
conditions are true, the system will converge only to a constant due to the limited number
of zeroes available in an FIR system.

24
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

2.6 EQUALIZATION:

In equalization, the received spectral coefficient blocks (i.e. after cyclic prefix
removal and FFT) are adjusted to compensate for the frequency response of the channel
(nothing can be done here about the additive noise). Due to the cyclic prefix1, each block
has essentially undergone cyclic convolution with the channel's impulse response. In the
frequency domain, this is the same as if the spectral coefficients were point wise
multiplied by the frequency response of the channel. If the freq. response has no zeros
and is known by the receiver, it is possible to perfectly remove the effect of the channel's
filter. Since the channel point wise multiplied the blocks by its freq. response, all that
needs to be done is multiply the blocks point wise by the 1 over the freq. response.
Because we implemented the channel's impulse response as non-ideal low-pass, it's freq.
response has no zeros and equalization is rather trivial.

In audio processing, equalization (or equalization, EQ) is the process of changing the
frequency envelope of a sound. In passing through any channel, temporal
/frequency spreading of a signal occurs. Etymologically, it means to correct, or
make equal, the frequency response of a signal. The term "equalizer" is often
incorrectly applied as a general term for audio filters. DJ mixing equipment and
hi-fi audio components often include so called graphic equalizers or simply
equalizer. These are in fact general all-purpose filters, which can be arranged to
produce the effect of low pass, high pass, band pass and band stop filters. Only
when these filters are arranged so as to reverse the effects of Overview.

There are many kinds of EQ. Each has a different pattern of attenuation or boost. A
peeking equalizer raises or lowers a range of frequencies around a central point in a bell
shape. A peaking equalizer with controls to adjust the level (Gain), bandwidth (Q) and
center frequency (Hz) is called a parametric equalizer. If there is no control for the

25
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

bandwidth (it is fixed by the designer) then it is called a quasi-parametric or semi-


parametric equalizer.

A pass filter attenuates either high or low frequencies while allowing other
frequencies to pass unfiltered. A high-pass filter modifies a signal only by taking out low
frequencies; a low-pass filter only modifies the audio signal by taking out high
frequencies. A pass filter is described by its cut-off point and slope. The cut-off point is
the frequency where high or low-frequencies will be removed. The slope, given in
decibels per octave, describes a ratio of how the filter attenuates frequencies past the cut-
off point (eg. 12 dB per octave). A band-pass filter is simply a combination of one high-
pass filter and one low-pass filter which together allow only a band of frequencies to
pass, attenuating both high and low frequencies past certain cut-off points.

Shelving-type equalizers increase or attenuate the level of a wide range of frequencies


by a fixed amount. A low shelf will affect low frequencies up to a certain point and then
above that point will have little effect. A high shelf affects the level of high frequencies,
while below a certain point, the low frequencies are unaffected.

One common type of equalizer is the graphic equalizer, which consists of a bank of
sliders for boosting and cutting different bands (or frequencies ranges) of sound.
Normally, these bands are tight enough to give at least 3 dB or 6 dB maximum effect for
neighboring bands, and cover the range from around 20 Hz to 20 kHz (which is
approximately the range of human hearing). A simple equalizer might have bands at 20
Hz, 200 Hz, 2 kHz and 20 kHz, and might be referred to as a 4-band equalizer. A typical
equalizer for live sound reinforcement might have as many as 24 or 31 bands. A typical
31-band equalizer is also called a 1/3-octave equalizer because the center frequencies of
sliders are spaced one third of an octave apart.

One of the most direct uses of equalization is at a live event, where microphones and
speakers operate simultaneously. An equalizer is used to ensure that there are no
frequency bands where there is a round trip gain of greater than 1, as these are heard as
audible feedback. Those frequencies are cut at the equalizer to prevent this.

26
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

Early telephone systems used equalization to correct for the reduced level of high
frequencies in long cables. For example, a particular microphone might be more sensitive
to low frequency sounds than to high frequency sounds, so an equalizer would be used to
increase the volume of the higher frequencies (boost), and reduce the volume of the low
frequency sounds (cut). Modern systems have less trouble in the voice frequency range,
but DSL circuits operating in the MHz range on those same wires may suffer severe
attenuation distortion which is dealt with by automatic equalization or by abandoning the
worst frequencies. Picture phone circuits also had equalizers.

Telephone companies use equalization to reduce bleed-through or crosstalk between


adjacent telephone wires. This occurs due to inductance, capacitance or electrical
conductance coupling. The higher frequencies are more likely to transfer to adjacent
wires. The band pass that the phone company allows through is 400 through 3,400 Hz.
Any frequencies above or below this are filtered out. These frequencies are acceptable for
voice speech to be transmitted clearly.

After equalization, the effect of the channel's low-pass filter is removed, but the
additive noise is still there. It manifests itself as causing the received constellation points
to deviate from their location in the original constellation. To enable the bit stream to be
recovered, a nearest-neighbor approximation is performed on each point. As long as the
noise amplitude is small or the constellation points are far apart, it is unlikely that any
single point will deviate enough from it's original location such that it has a new nearest-
neighbor. With high noise power, however, the points are scattered all over the
constellation; the nearest neighbor in this case is unlikely to be the original point. In our
system, we implemented this approximation with a parser and look up table; we would
examine each complex value.

27
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

CHAPTER III

DOMAIN SPECIFICATION OF THE PROJECT

3.1 SOFTWARE/HARDWARE Requirement Specification

Software Environment:

Operating System : WIN 2000/DOS

Tool : MATLAB 6p5

Hardware Environment:

Processor : Pentium - II

RAM : 128MB

28
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

3.2 An introduction to MATLAB

Introduction

Matlab is a tool for doing numerical computations with matrices and vectors. It can

also display information graphically. The best way to learn what Matlab can do is to work

through some examples at the computer. MATLAB is a high performance language for

technical computing .It integrates computation visualization and programming in an easy

to use environment .Mat lab stands for matrix laboratory. It was written originally to

provide easy access to matrix software developed by LINPACK (linear system package)

and EISPACK (Eigen system package) projects. MATLAB is therefore built on a

foundation of sophisticated matrix software in which the basic element is matrix that does

not require pre dimensioning

3.3 Typical uses of MATLAB

1. Math and computation

2. Algorithm development

3. Data acquisition

4. Data analysis ,exploration ands visualization

5. Scientific and engineering graphics

29
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

The main features of MATLAB

1. Advance algorithm for high performance numerical computation ,especially in the

Field matrix algebra

2. A large collection of predefined mathematical functions and the ability to define

one’s own functions.

3. Two-and three dimensional graphics for plotting and displaying data

4. A complete online help system

5. Powerful , matrix or vector oriented high level programming language for

individual applications.

6. Toolboxes available for solving advanced problems in several application areas

30
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

MATLAB

MATLAB
Programming language

User written / Built in functions

Computation
Graphics
Linear algebra External interface
2-D graphics
Signal processing Interface with C and
3-D graphics
Quadrature FORTRAN
Color and lighting
Etc Programs
Animation

Tool boxes
Signal processing
Image processing
Control systems
Neural Networks
Communications
Robust control
Statistics

Figure3.3.1: Features and capabilities of MATLAB

31
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

3.4The MATLAB System

The MATLAB system consists of five main parts:

Development Environment.

This is the set of tools and facilities that help you use MATLAB functions and files.

Many of these tools are graphical user interfaces. It includes the MATLAB desktop and

Command Window, a command history, an editor and debugger, and browsers for

viewing help, the workspace, files, and the search path.

The MATLAB Mathematical Function Library.

This is a vast collection of computational algorithms ranging from elementary

functions, like sum, sine, cosine, and complex arithmetic, to more sophisticated functions

like matrix inverse, matrix Eigen values, Bessel functions, and fast Fourier transforms.

The MATLAB Language.

This is a high-level matrix/array language with control flow statements, functions,

data structures, input/output, and object-oriented programming features. It allows both

"programming in the small" to rapidly create quick and dirty throw-away programs, and

"programming in the large" to create large and complex application programs.

Graphics.

32
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

MATLAB has extensive facilities for displaying vectors and matrices as graphs, as

well as annotating and printing these graphs. It includes high-level functions for two-

dimensional and three-dimensional data visualization, image processing, animation, and

presentation graphics. It also includes low-level functions that allow you to fully

customize the appearance of graphics as well as to build complete graphical user

interfaces on your MATLAB applications.

The MATLAB Application Program Interface (API).

This is a library that allows you to write C and Fortran programs that interact with

MATLAB. It includes facilities for calling routines from MATLAB (dynamic linking),

calling MATLAB as a computational engine, and for reading and writing MAT-files.

3.5Starting MATLAB

On Windows platforms, start MATLAB by double-clicking the MATLAB shortcut

icon on your Windows desktop. On UNIX platforms, start MATLAB by typing mat lab

at the operating system prompt. You can customize MATLAB startup. For example, you

can change the directory in which MATLAB starts or automatically execute MATLAB

statements in a script file named startup.m

How to quit Matlab

The answer to the most popular question concerning any program is this: leave a

Matlab session by typing

quit

or by typing

exit to the Matlab prompt.

33
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

MATLAB Desktop

When you start MATLAB, the MATLAB desktop appears, containing tools (graphical

user interfaces) for managing files, variables, and applications associated with MATLAB.

The following illustration shows the default desktop. You can customize the arrangement

of tools and documents to suit your needs. For more information about the desktop tools .

34
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

Figure 3.5.1 Desktop of MATLAB

3.6 Implementations

1. Arithmetic operations

Entering Matrices

The best way for you to get started with MATLAB is to learn how to handle

matrices. Start MATLAB and follow along with each example.

You can enter matrices into MATLAB in several different ways:

• Enter an explicit list of elements.

• Load matrices from external data files.

• Generate matrices using built-in functions.


35
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

• Create matrices with your own functions in M-files.

Start by entering Dürer’s matrix as a list of its elements. You only have to

follow a few basic conventions:

• Separate the elements of a row with blanks or commas.

• Use a semicolon, to indicate the end of each row.

• Surround the entire list of elements with square brackets, [ ].

To enter matrix, simply type in the Command Window

A = [16 3 2 13; 5 10 11 8; 9 6 7 12; 4 15 14 1]

MATLAB displays the matrix you just entered:

A=

16 3 2 13

5 10 11 8

9 6 7 12

4 15 14 1

This matrix matches the numbers in the engraving. Once you have entered

the matrix, it is automatically remembered in the MATLAB workspace. You

can refer to it simply as A. Now that you have A in the workspace.

Functions:

There are many functions which we apply to scalars which Matlab can apply to both

scalars and matrices.

sin(d)
exp(d)
log(d)
abs(d)

36
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

Matlab has functions to round floating point numbers to integers. These are round, fix,
ceil, and floor. The next few examples work through this set of commands and a couple
more arithmetic operations.

f=[-.5 .1 .5]
round(f)
fix(f)
ceil(f)
floor(f)
sum(f)
prod(f)
Relations and Logical Operations
In this section you should think of 1 as "true" and 0 as "false." The notations &, |,
~ stand for "and,""or," and "not," respectively. The notation == is a check for equality.

a=[1 0 1 0]
b=[1 1 0 0]
a==b
a<=b
~a
a&b
a & ~a
a|b
a | ~a

M-Files
You can create your own matrices using M-files, which are text files containing
MATLAB code. Use the MATLAB Editor or another text editor to create a file with the
same statements you would type at the MATLAB command Line. Save the file under a
name that ends in .m.

37
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

Graph Components

MATLAB displays graphs in a special window known as a figure. To create a graph,


you need to define a coordinate system. Therefore every graph is placed within axes,
which are contained by the figure. The actual visual representation of the data is achieved
with graphics objects like lines and surfaces. These objects are drawn within the
coordinate system defined by the axes, which MATLAB automatically creates

38
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

specifically to accommodate the range of the data. The actual data is stored as properties

Figure 3.6.1 Typical Graph in MATLAB

39
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

Plotting Tools

Plotting tools are attached to figures and create an environment for creating

Graphs. These tools enable you to do the following:

• Select from a wide variety of graph types

• Change the type of graph that represents a variable

• See and set the properties of graphics objects

• Annotate graphs with text, arrows, etc.

• Create and arrange subplots in the figure

• Drag and drop data into graphs

Display the plotting tools from the View menu or by clicking the plotting tools

icon in the figure toolbar, as shown in the following picture.

Figure 3.6.2: Typical Toolbars in MATLAB

Editor/Debugger

Use the Editor/Debugger to create and debug M-files, which are programs you write

to run MATLAB functions. The Editor/Debugger provides a graphical user interface for

text editing, as well as for M-file debugging. To create or edit an M-file use File > New

or File > Open, or use the edit function.


40
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

Figure 3.6.3: A typical m-File in MATLAB

In this project we used signal processing toolbox, image processing toolbox,

simulink and communication block set and mathematical block set in MATLAB

Elementary matrices and matrix manipulation.

Elementary matrices.
zeros - Zeros matrix.
ones - Ones matrix.
eye - Identity matrix.
rand - Uniformly distributed random numbers.
randn - Normally distributed random numbers.
linspace - Linearly spaced vector.

Trigonometric.

41
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

sin - Sine.
sinh - Hyperbolic sine.
asin - Inverse sine.
asinh - Inverse hyperbolic sine.
cos - Cosine.
cosh - Hyperbolic cosine.
acos - Inverse cosine.
acosh - Inverse hyperbolic cosine.
tan - Tangent.
tanh - Hyperbolic tangent.
atan - Inverse tangent.
atan2 - Four quadrant inverse tangent.
atanh - Inverse hyperbolic tangent.
sec - Secant.
sech - Hyperbolic secant.
asec - Inverse secant.
asech - Inverse hyperbolic secant.
csc - Cosecant.
csch - Hyperbolic cosecant.
acsc - Inverse cosecant.
acsch - Inverse hyperbolic cosecant.
cot - Cotangent.
coth - Hyperbolic cotangent.
acot - Inverse cotangent.
acoth - Inverse hyperbolic cotangent.

Exponential.
exp - Exponential.
log - Natural logarithm.
log10 - Common logarithm.
sqrt - Square root.
42
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

Complex.
abs - Absolute value.
angle - Phase angle.
conj - Complex conjugate.
imag - Complex imaginary part.
real - Complex real part.

Managing commands and functions.


help - On-line documentation.
lookfor - Keyword search through the HELP entries.
demo - Run demos.

Managing variables and the workspace.


who - List current variables.
whos - List current variables, long form.
load - Retrieve variables from disk.

Polynomial and interpolation functions.

Polynomials.
roots - Find polynomial roots.
poly - Construct polynomial with specified roots.
polyval - Evaluate polynomial.
polyvalm - Evaluate polynomial with matrix argument.
residue - Partial-fraction expansion (residues).
polyfit - Fit polynomial to data.
43
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

polyder - Differentiate polynomial.


conv - Multiply polynomials.
deconv - Divide polynomials.

Operators and special characters.

Char Name HELP topic

+ Plus arith
- Minus arith
* Matrix multiplication arith
.* Array multiplication arith
^ Matrix power arith
.^ Array power arith
\ Backslash or left division slash
/ Slash or right division slash
./ Array division slash
: Colon colon

() Parentheses paren
[] Brackets paren
. Decimal point punct
, Comma punct
; Semicolon punct
% Comment punct
' Transpose and quote punct
= Assignment punct
== Equality relop
<,> Relational operators relop
& Logical AND relop
44
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

| Logical OR relop
~ Logical NOT relop
xor Logical EXCLUSIVE OR xor

Elementary X-Y graphs.


plot - Linear plot.
loglog - Log-log scale plot.
semilogx - Semi-log scale plot.
semilogy - Semi-log scale plot.
fill - Draw filled 2-D polygons.

Graph annotation.
title - Graph title.
xlabel - X-axis label.
ylabel - Y-axis label.
zlabel - Z-axis label for 3-D plots.
grid - Grid lines.
axis - Axis scaling and appearance.

Loops

Finally, we will do a little piece of programming. Let a be the matrix

0.8 0.1
0.2 0.9
and let x be the column vector
1
0

We regard x as representing (for example) the population state of an island. The first

entry (1) gives the fraction of the population in the west half of the island, the second
45
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

entry (0) give the fraction in the east half. The state of the population T units of time later

is given by the rule y = ax. This expresses the fact that an individual in the west half stays

put with probability 0.8 and moves east with probability 0.2 (note 0.8 + 0.2 = 1), and the

fact that in individual in the east stays put with probability 0.9 and moves west with

probability 0.1. Thus, successive population states can be predicted/computed by

repeated matrix multiplication. This can be done by the following Matlab program:

>> a = [ 0.8 0.1; 0.2 0.9 ]


>> x = [ 1; 0 ]
>> for i = 1:20, x = a*x, end

This has been a sample of the basic MATLAB functions and the matrix
manipulation techniques. At the end of the tutorial there is a listing of functions. The
functions that you have available will vary slightly from version to version of MATLAB.
By typing help

you will get access to descriptions of all the Matlab functions.

3.7 WHY MATLAB:

• Advantages:
 Handles vector and matrices very nice
 Quick plotting and analysis
 EXTENSIVE documentation (type ‘help’)
 Lots of nice functions: FFT, fuzzy logic, neural nets, numerical integration,
OpenGL
• Drawbacks:
 Slow compared to C or Java

46
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

47
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

CHAPTER IV

EXPERIMENTAL RESULTS

4.1 IMPLEMENTATION AND TESTING:

Implementation:

Implementation is the stage where the theoretical is turned into a working system.

The most crucial stage in achieving a new successful system and in giving confidence on

the new system for the users that it will efficiently and effectively.

The system can be implemented only after thorough testing is done and if it is found

to work according to the specification.

It involves careful planning, investigation of the current system and its constraints on

implementation, design of methods to achieve the change over and an evaluation of

change over methods a part from planning. Two major tasks of preparing the

implementations are education and training of the users and testing of the system.

The more complex the system being implemented the more involved will be the

systems analysis and design effort required just for implementation.

The implementation phase comprises of several activities. The required hardware and

software acquisition is a carried out. The system may require some software to develop.

For this, programs are written and tested. The user then changes over to his new fully

tested system and the old system is discontinued.

48
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

Testing:

The testing phase is an important part of software development. It is the process of

finding errors and missing operations and also a complete verification to determine

whether the objectives are met and the user requirements are satisfied.

Software testing is carried out in three steps:

The first includes unit testing, where in each module is tested to provide its

correctness, validity and also determine any missing operation and to verify whether the

objectives have been met. Errors are noted down and corrected immediately. Unit

testing is the important and major part of the project. So errors are rectified easily in

particular module and program clarity is increased. In this project entire system is

divided into several modules and is developed individually. So unit testing is conducted

to individual modules.

The second step includes integration testing. It need not be the case, the software

whose modules when run individually and showing perfect results, will also show perfect

results when run as a whole. The individual modules are clipped under this major

module and tested again and verified the results. This is due to poor interfacing, which

may result in data being lost across an interface. A module can have inadvertent, adverse

effect on any other or on the global data structures, causing serious problems.

The final step involves validation and testing which determines which the software

functions as the user expected. Here also some modifications were. In the completion of

the project it is satisfied fully by the end user.

49
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

4.2 SIMULATION RESULTS

4.2.1 INPUT SIGNAL:

Figure 4.2.1: Input Signal

50
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

4.2.2 CHANNEL DISTORTION:

Figure 4.2.2: Channel Distortion

51
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

4.2.3 NOISE :

Figure 4.2 3 :Noise Signal

52
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

4.2.4 RECEIVED SIGNAL:

Figure 4.2 4:Received Signal

53
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

4.2.5 DESIRED SIGNAL:

Figure4.2 5:Desired Signal

54
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

4.2.6 REDUCED ERROR SIGNAL:

Figure 4.2 6 : Reduced Error Signal

55
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

4.2.7 EQUALIZER OUTPUT:

Figure 4.2 7 :Equalizer Output

56
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

CHAPTER V

CONCLUSION

5.1 SUMMARY OF THE PROJECT

The goal of this project is to give a little insight into the adaptive filter theory and
show some basic aspects in noise cancellation in speech enhancement. Understanding the
filter structure and the properties of each adaptive algorithm plays a key role in the
process of implementation on DSP processors. The main impact is cast on cost reduction
of the adaptive systems - final products - as well as retaining the high quality of noise
suppression. As mentioned in the introduction, when designing an adaptive system, it is
necessary to accept a number of trade-offs between disparate requirements, which cannot
be satisfied at the same time. For example the LMS-family algorithms are very simple,
tractable and computationally efficient. But their essential disadvantage is the slow
convergence rate and bigger steady-state error.

On the other one side, RLS-family algorithms are computationally more complex and
also structurally complicated. Here, the proper set-up and tuning of system parameters
requires deeper experience in the domain of adaptive filtration. However, a great
contribution can be addressed to precise adaptive mechanism with a low steady-state
error and extremely high convergence rate. In the future we can expect that the increasing
performance of DSP processors as well as the quality of DSP services will cause
requirements such as computational modesty or memory consumption irrelevant. Still
there is a fact that higher standard does not come for nothing and the price as we know is
a key factor for majority of customers. Finally, adaptive noise cancellation in speech
signals is a huge domain of research, full of opportunities and unsolved problems. It is
definitely worth to spend the future time in its exploration.

57
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

5.2 FUTURE SCOPE

New estimation-based synthesis and analysis procedure is used for adaptive


“Filtered” LMS problems. This new approach formulates the adaptive filtering (control)
problem as an H estimation problem, and updates the adaptive weight vector according
to the state estimates provided by an H estimator. This estimator is proved to be always
feasible.

The new adaptive algorithm (referred to as estimation-based adaptive filtering (EBAF)


algorithm) has provable performance, follows a simple update rule, and unlike previous
methods readily extends to multi-channel systems.

The proposed method shows much faster convergence and improved steady-state
performance. Conventional methods can go unstable depending on adaptation parameter
or step-size (µ).

58
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

BIBLIOGRAPHY

 S.U.H. Qureshi, \Adaptive equalization", Proc. IEEE, Vol.74, No.9, pp.1349-1387,


Sept.1985.

 S. Haykin, Adaptive Filter Theory. 2nd Edition, Prentice Hall: Englewood Cli_s,
1991. Chapter13.

 J.G.Provakis,Digital Communications,Newyork:TataMcGraw-Hill,1985.

 E.H. Anderson and J.P. How. Active Vibration Isolation Using Adaptive Feed-
forward Control. ACC97 , pages 1783–1788, July 1997.

 K.J. Astrom and B. Wittenmark Adaptive Control . Addison-Wesley, 1989.

 M.R. Bai and Z. Lin. Active Noise Cancellation for a Three-Dimensional En-
closure by Using Multiple Channel Adaptive Control and H Control. ASME
Journal of Vibration and Acoustics , 120:958–964, o ctober 1998.

 D.S. Bernstein and W.M. Haddad. LQG Control with anH PerformanceBound: A
Riccati Equation Approach. IEEE Trans. on Auto. Control , 34:293–305, 1989.

 N.J. Bershad, P.L. Feintuch, F.A. Reed, and B. Fisher. Tracking Characteristicsof
the LMS Adaptive LineEnhancer-Response to a Linear Chirp Signal in
Noise.IEEE Trans. on Acoust., Speech, Signal Processing, 28:504–516, October
1980.

 N.J. Bershad and O.M. Macchi. Adaptive Recovery of a Chirped Sinusoid in


Noise, Part 2: Performance of the LMS AlgorithmIEEE Trans. on
SignalProcessing , 39:595–602, March 1991.

 E. Bjarnason. Analysis of the Filtered-X LMS Algorithm IEEE Trans. on


Speechand Audio Processing , 3:504–514, November 1995.

 Stephen Boyd, L. El Ghaoui, Eric Feron, and V. Balakrishan. Linear


MatrixInequalities in System and Control Theory . SIAM, 1994.

59
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

WEBSITES

 www.google.com

 www.eece.unm.edu

 www.mathworks.com

 www.IEEE.com

 www.ece.utah.edu

60
___________________________________________________________________
DEPT OF ECE,AITS,RJP
ADAPTIVE CHANNEL EQUALIZATION

61
___________________________________________________________________
DEPT OF ECE,AITS,RJP