Documentation |
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 Adaptive Algorithms.
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 Accessing Properties of an Equalizer.
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 w_{i} 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 u_{i} 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, 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.