GNU Radio 3.7.1 C++ API
gr::digital::ofdm_frame_acquisition Class Reference

take a vector of complex constellation points in from an FFT and performs a correlation and equalization. More...

#include <ofdm_frame_acquisition.h>

Inheritance diagram for gr::digital::ofdm_frame_acquisition:

List of all members.

Public Types

typedef boost::shared_ptr
< ofdm_frame_acquisition
sptr

Public Member Functions

virtual float snr ()=0
 Return an estimate of the SNR of the channel.

Static Public Member Functions

static sptr make (unsigned int occupied_carriers, unsigned int fft_length, unsigned int cplen, const std::vector< gr_complex > &known_symbol, unsigned int max_fft_shift_len=4)

Detailed Description

take a vector of complex constellation points in from an FFT and performs a correlation and equalization.

This block takes the output of an FFT of a received OFDM symbol and finds the start of a frame based on two known symbols. It also looks at the surrounding bins in the FFT output for the correlation in case there is a large frequency shift in the data. This block assumes that the fine frequency shift has already been corrected and that the samples fall in the middle of one FFT bin.

It then uses one of those known symbols to estimate the channel response over all subcarriers and does a simple 1-tap equalization on all subcarriers. This corrects for the phase and amplitude distortion caused by the channel.


Member Typedef Documentation


Member Function Documentation

static sptr gr::digital::ofdm_frame_acquisition::make ( unsigned int  occupied_carriers,
unsigned int  fft_length,
unsigned int  cplen,
const std::vector< gr_complex > &  known_symbol,
unsigned int  max_fft_shift_len = 4 
) [static]

Make an OFDM correlator and equalizer.

Parameters:
occupied_carriersThe number of subcarriers with data in the received symbol
fft_lengthThe size of the FFT vector (occupied_carriers + unused carriers)
cplenThe length of the cycle prefix
known_symbolA vector of complex numbers representing a known symbol at the start of a frame (usually a BPSK PN sequence)
max_fft_shift_lenSet's the maximum distance you can look between bins for correlation
virtual float gr::digital::ofdm_frame_acquisition::snr ( ) [pure virtual]

Return an estimate of the SNR of the channel.


The documentation for this class was generated from the following file: