MPSK SNR Estimator

From GNU Radio
Revision as of 20:55, 12 March 2019 by 777arc (talk | contribs) (Created page with "A block for computing SNR of a M-PSK signal (e.g., BPSK, QPSK, 8-PSK). It copies the input stream to the output stream, but adds a tag that contains the estimated SNR every N...")
(diff) โ† Older revision | Latest revision (diff) | Newer revision โ†’ (diff)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

A block for computing SNR of a M-PSK signal (e.g., BPSK, QPSK, 8-PSK). It copies the input stream to the output stream, but adds a tag that contains the estimated SNR every N samples. It may work with other types of signals, but with a certain amount of error.

Under the hood, the block uses 2nd (M2) and 4th (M4) order moments. This estimator uses knowledge of the kurtosis of the signal (๐‘˜๐‘Ž) and noise (๐‘˜๐‘ค) to make its estimation. We use Beaulieu's approximations here to M-PSK signals and AWGN channels such that ๐‘˜๐‘Ž=1 and ๐‘˜๐‘ค=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.


Parameters

Type -

Samples between tags - after this many samples, a tag containing the SNR (key='snr') will be sent on the output port.

Filter Alpha - the update rate of internal running average calculations.