(To be removed) Construct decision-feedback equalizer object
dfe will be removed in a future release. Use comm.DecisionFeedback instead.
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 Equalization.
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. 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 Equalization.
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 Equalization) 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 Equalization. |
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 Equalization. |
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, 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)) |