optic.dsp.equalization.dfe
- dfe(x, dx, param)
Decision feedback adaptive equalizer (DFE) for SISO receivers.
- Parameters:
x (np.array) – Input signal to be equalized.
dx (np.array) – Desired (reference) signal.
param (optic.utils.parameters object) –
DFE parameters:
param.nTapsFF: number of feedforward taps [default: 5]
param.nTapsFB: number of feedback taps [default: 5]
param.SpS: samples per symbol [default: 1]
param.mu: step size [default: 0.0001]
param.nTrain: number of training symbols [default: 1000]
param.prec: precision [default: np.float32]
param.M: modulation order [default: 4]
param.constType: constellation type (‘pam’, ‘qam’, etc.) [default: ‘pam’]
param.f: initial feedforward coeffs [default: None]
param.b: initial feedback coeffs [default: None]
param.trainingMode: operation mode (‘data-aided’, ‘fulltime’) [default: ‘data-aided’]
param.preconvIters: number of pre-convergence iterations [default: 1]
- Returns:
yEq (np.array) – Equalized output signal.
f (np.array) – Final feedforward filter coefficients.
b (np.array) – Final feedback filter coefficients.
Notes
Training mode ‘data-aided’ uses the known training symbols for adaptation, while ‘fulltime’ continues to adapt using decision-directed mode even after the training phase.
Pre-convergence iterations can help the algorithm to converge better by restarting the adaptation process after the initial training phase.
References
[1] Proakis, J. G., & Salehi, M. (2008). Digital Communications (5th Edition). McGraw-Hill Education.