| Communications Toolbox | ![]() |
Construct a decision feedback equalizer object
eqobj = dfe(nfwdweights,nfbkweights,alg)
eqobj = dfe(nfwdweights,nfbkweights,alg,sigconst)
eqobj = dfe(nfwdweights,nfbkweights,alg,sigconst,nsamp)
The dfe function creates an equalizer object that you can use with the equalize function to equalize a signal. To learn more about the process for equalizing a signal, see Using Adaptive Equalizer Functions and Objects.
eqobj = dfe(nfwdweights,nfbkweights,alg) constructs a decision feedback equalizer object. The equalizer's feedforward and feedback filters have nfwdweights and nfbkweights symbol-spaced complex weights, respectively, which are initially all zeros. alg describes the adaptive algorithm that the equalizer uses; you should create alg using any of these functions: lms, signlms, normlms, varlms, rls, or cma. The signal constellation of the desired output is [-1 1], which corresponds to binary phase shift keying (BPSK).
eqobj = dfe(nfwdweights,nfbkweights,alg,sigconst) specifies the signal constellation vector of the desired output.
eqobj = dfe(nfwdweights,nfbkweights,alg,sigconst,nsamp) constructs a DFE with a fractionally spaced forward filter. The forward filter has nfwdweights complex weights spaced at T/nsamp, where T is the symbol period and nsamp is a positive integer. Note that nsamp = 1 corresponds to a symbol-spaced forward filter.
The table below describes the properties of the decision feedback equalizer object. To learn how to view or change the values of a decision feedback equalizer object, see Accessing Properties of an Equalizer.
Note To initialize or reset the equalizer object eqobj, enter reset(eqobj). |
| Property | Description |
|---|---|
| EqType | Fixed value, 'Decision Feedback Equalizer' |
| AlgType | Name of the adaptive algorithm represented by alg |
| nWeights | Number of weights in the forward filter and the feedback filter, in the format [nfwdweights, nfbkweights]. The number of weights in the forward filter must be at least 1. |
| nSampPerSym | Number of input samples per symbol (equivalent to nsamp input argument). This value relates to both the equalizer structure (See the use of K in Decision-Feedback Equalizers.) and an assumption about the signal to be equalized. |
| RefTap (except for CMA equalizers) | Reference tap index, between 1 and nfwdweights. Setting this to a value greater than 1 effectively delays the reference signal with respect to the equalizer's input signal. |
| SigConst | Signal constellation, a vector whose length is typically a power of 2. |
| Weights | Vector that concatenates the complex coefficients from the forward filter and the feedback filter. This is the set of wi values in the schematic in Decision-Feedback Equalizers. |
| WeightInputs | Vector that concatenates the tap weight inputs for the forward filter and the feedback filter. This is the set of ui values in the schematic in Decision-Feedback Equalizers. |
| ResetBeforeFiltering | If 1, each call to equalize resets the state of eqobj before equalizing. If 0, the equalization process maintains continuity from one call to the next. |
| NumSamplesProcessed | Number of samples the equalizer processed since the last reset. When you create or reset eqobj, this property value is 0. |
| Properties specific to the adaptive algorithm represented by alg | See reference page for the adaptive algorithm function that created alg: lms, signlms, normlms, varlms, rls, or cma. |
If you change nWeights, then MATLAB maintains consistency in the equalizer object by adjusting the values of the properties listed below.
| Property | Adjusted Value |
|---|---|
| Weights | zeros(1,sum(nWeights)) |
| WeightInputs | zeros(1,sum(nWeights)) |
| StepSize (Variable-step-size LMS equalizers) | InitStep*ones(1,sum(nWeights)) |
| InvCorrMatrix (RLS equalizers) | InvCorrInit*eye(sum(nWeights)) |
An example illustrating relationships among properties is in Linked Properties of an Equalizer Object.
An example is in Defining an Equalizer Object.
lms, signlms, normlms, varlms, rls, cma, lineareq, equalize, Equalizers
| deintrlv | dftmtx | ![]() |
© 1994-2005 The MathWorks, Inc.