Using Adaptive Equalizer Functions and Objects

This section gives an overview of the process you typically use in MATLAB to take advantage of the adaptive equalizer capabilities. The MLSE equalizer has a different interface, described in Using MLSE Equalizers.

Basic Procedure for Equalizing a Signal

Equalizing a signal using the Communications Toolbox involves these steps:

  1. Create an equalizer object that describes the equalizer class and the adaptive algorithm that you want to use. An equalizer object is a type of MATLAB variable that contains information about the equalizer, such as the name of the equalizer class, the name of the adaptive algorithm, and the values of the weights.

  2. Adjust properties of the equalizer object, if necessary, to tailor it to your needs. For example, you can change the number of weights or the values of the weights.

  3. Apply the equalizer object to the signal that you want to equalize, using the equalize function.

Example Illustrating the Basic Procedure

This code briefly illustrates the steps in the basic procedure above.

% Build a set of test data.
x = pskmod(randint(1000,1),2); % BPSK symbols
rxsig = conv(x,[1 0.8 0.3]);  % Received signal
% Create an equalizer object.
eqlms = lineareq(8,lms(0.03));
% Change the reference tap index in the equalizer.
eqlms.RefTap = 4;
% Apply the equalizer object to a signal.
y = equalize(eqlms,rxsig,x(1:200));

In this example, eqlms is an equalizer object that describes a linear LMS equalizer having 8 weights and a step size of 0.03. At first, the reference tap index in the equalizer has a default value, but assigning a new value to the property eqlms.RefTap changes this index. Finally, the equalize command uses the eqlms object to equalize the signal rxsig using the training sequence x(1:200).

Learning More About Adaptive Equalizer Functions

Keeping the basic procedure in mind, you can read other portions of this chapter to learn more details about


© 1994-2005 The MathWorks, Inc.