optic.dsp.carrierRecovery.cpr

cpr(Ei, param=None, symbTx=None)

Carrier phase recovery function (CPR)

Parameters:
  • Ei (complex-valued np.array) – received constellation symbols.

  • param (optic.utils.parameter object, optional) –

    Configuration parameters [default: None].

    • param.alg : CPR algorithm to be used [‘bps’, ‘bpsGPU’, ‘ddpll’, or ‘viterbi’] [default: ‘bps’].

    • param.shapingFactor : shaping factor, for probabilistic shaped QAM with MB dististribution.[default: 0]

    • param.constType : constellation type [‘qam’ or ‘psk’]. [default: ‘qam’]

    • param.M : constellation order. [default: 4]

    • param.returnPhases : whether to return the estimated phase shifts along with the output signal. [default: False]

    • param.runFOE : whether to run the Mth-power frequency offset estimation and compensation before CPR. [default: True]

    BPS params:

    • param.N : length of BPS the moving average window. [default: 35]

    • param.B : number of BPS test phases. [default: 64]

    DDPLL params:

    • param.tau1 : DDPLL loop filter param. 1. [default: 1/2*pi*10e6]

    • param.tau2 : DDPLL loop filter param. 2. [default: 1/2*pi*10e6]

    • param.Kv : DDPLL loop filter gain. [default: 0.1]

    • param.Ts : symbol period. [default: 1/32e9]

    • param.pilotInd : indexes of pilot-symbol locations.

    Viterbi params:

    • param.N : length of the moving average window. [default: 35]

  • symbTx (complex-valued np.array, optional) – Transmitted symbol sequence. [default: None]

Returns:

  • Eo (complex-valued np.array) – Phase-compensated signal.

  • phaseEst (real-valued np.array) – Time-varying estimated phase-shifts.

References

[1] T. Pfau, S. Hoffmann, e R. Noé, “Hardware-efficient coherent digital receiver concept with feedforward carrier recovery for M-QAM constellations”, Journal of Lightwave Technology, vol. 27, nº 8, p. 989–999, 2009, doi: 10.1109/JLT.2008.2010511.

[2] S. J. Savory, “Digital coherent optical receivers: Algorithms and subsystems”, IEEE Journal on Selected Topics in Quantum Electronics, vol. 16, nº 5, p. 1164–1179, set. 2010, doi: 10.1109/JSTQE.2010.2044751.

[3] H. Meyer, Digital Communication Receivers: Synchronization, Channel estimation, and Signal Processing, Wiley 1998. Section 5.8 and 5.9.