SNR Estimator using 2nd and 4th-order moments. More...
#include <gnuradio/digital/mpsk_snr_est.h>
Public Member Functions | |
mpsk_snr_est_m2m4 (double alpha) | |
~mpsk_snr_est_m2m4 () override | |
int | update (int noutput_items, const gr_complex *input) override |
Update the current registers. More... | |
double | snr () override |
Use the register values to compute a new estimate. More... | |
Public Member Functions inherited from gr::digital::mpsk_snr_est | |
mpsk_snr_est (double alpha) | |
virtual | ~mpsk_snr_est () |
double | alpha () const |
Get the running-average coefficient. More... | |
void | set_alpha (double alpha) |
Set the running-average coefficient. More... | |
virtual int | update (int noutput_items, const gr_complex *input) |
Update the current registers. More... | |
virtual double | snr () |
Use the register values to compute a new estimate. More... | |
virtual double | signal () |
Returns the signal power estimate. More... | |
virtual double | noise () |
Returns the noise power estimate. More... | |
Additional Inherited Members | |
Protected Attributes inherited from gr::digital::mpsk_snr_est | |
double | d_alpha |
double | d_beta |
double | d_signal |
double | d_noise |
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. We use Beaulieu's approximations here to M-PSK signals and AWGN channels such that \(k_a=1\) and \(k_w=2\). These approximations significantly reduce the complexity of the calculations (and computations) required.
Reference: 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_m2m4::mpsk_snr_est_m2m4 | ( | double | alpha | ) |
Constructor
Parameters:
alpha | the update rate of internal running average calculations. |
|
inlineoverride |
|
overridevirtual |
Use the register values to compute a new estimate.
Reimplemented from gr::digital::mpsk_snr_est.
|
overridevirtual |
Update the current registers.
Reimplemented from gr::digital::mpsk_snr_est.