gr::digital::snr_est_m2m4
gr::digital::mpsk_snr_est
gnuradio/digital/mpsk_snr_est.h
double double gr::digital::snr_est_m2m4::d_y1 d_y1 gr::digital::snr_est_m2m4::d_y1
double double gr::digital::snr_est_m2m4::d_y2 d_y2 gr::digital::snr_est_m2m4::d_y2
double double gr::digital::snr_est_m2m4::d_ka d_ka gr::digital::snr_est_m2m4::d_ka
double double gr::digital::snr_est_m2m4::d_kw d_kw gr::digital::snr_est_m2m4::d_kw
gr::digital::snr_est_m2m4::snr_est_m2m4
(double alpha, double ka, double kw)
snr_est_m2m4
gr::digital::snr_est_m2m4::snr_est_m2m4
double alpha
double ka
double kw

Constructor

Parameters: alpha

the update rate of internal running average calculations.

ka

estimate of the signal kurtosis (1 for PSK)

kw

estimate of the channel noise kurtosis (2 for AWGN)

gr::digital::snr_est_m2m4::~snr_est_m2m4
() override
~snr_est_m2m4
gr::digital::snr_est_m2m4::~snr_est_m2m4
int int gr::digital::snr_est_m2m4::update (int noutput_items, const gr_complex *input) override update gr::digital::snr_est_m2m4::update update int noutput_items const gr_complex * input

Update the current registers.

double double gr::digital::snr_est_m2m4::snr () override snr gr::digital::snr_est_m2m4::snr snr

Use the register values to compute a new estimate.

SNR Estimator using 2nd and 4th-order moments.

An SNR estimator for M-PSK signals that uses 2nd (M2) and 4th (M4) order moments. This estimator uses knowledge of the kurtosis of the signal (k_a) and noise (k_w) to make its estimation. In this case, you can set your own estimations for k_a and k_w, the kurtosis of the signal and noise, to fit this estimation better to your signal and channel conditions.

A word of warning: this estimator has not been fully tested or proved with any amount of rigor. The estimation for M4 in particular might be ignoring effectf of when k_a and k_w are different. Use this estimator with caution and a copy of the reference on hand.

The digital_mpsk_snr_est_m2m4 assumes k_a and k_w to simplify the computations for M-PSK and AWGN channels. Use that estimator unless you have a way to guess or estimate these values here.

Original paper: R. Matzner, "An SNR estimation algorithm for complex baseband signal using higher order statistics," Facta Universitatis (Nis), no. 6, pp. 41-52, 1993.

Reference used in derivation: D. R. Pauluzzi and N. C. Beaulieu, "A comparison of SNR estimation techniques for the AWGN channel," IEEE Trans. Communications, Vol. 48, No. 10, pp. 1681-1691, 2000.

gr::digital::mpsk_snr_est
gr::digital::snr_est_m2m4
gr::digital::mpsk_snr_est
gr::digital::snr_est_m2m4
- gr::digital::snr_est_m2m4
  alpha
- gr::digital::snr_est_m2m4
  d_alpha
- gr::digital::snr_est_m2m4
  d_beta
- gr::digital::snr_est_m2m4
  d_ka
- gr::digital::snr_est_m2m4
  d_kw
- gr::digital::snr_est_m2m4
  d_noise
- gr::digital::snr_est_m2m4
  d_signal
- gr::digital::snr_est_m2m4
  d_y1
- gr::digital::snr_est_m2m4
  d_y2
- gr::digital::snr_est_m2m4
  mpsk_snr_est
- gr::digital::snr_est_m2m4
  noise
- gr::digital::snr_est_m2m4
  set_alpha
- gr::digital::snr_est_m2m4
  signal
- gr::digital::snr_est_m2m4
  snr
- gr::digital::snr_est_m2m4
  snr_est_m2m4
- gr::digital::snr_est_m2m4
  update
- gr::digital::snr_est_m2m4
  ~mpsk_snr_est
- gr::digital::snr_est_m2m4
  ~snr_est_m2m4