#include <atsc_sssr.h>
Public Member Functions | |
atsc_sssr () | |
~atsc_sssr () | |
void | reset () |
call on channel change | |
void | update (sssr::sample_t sample_in, bool *seg_locked, int *symbol_index, double *timing_adjust) |
process a single sample at the ATSC symbol rate (~10.76 MSPS) | |
Private Member Functions | |
bool | incr_counter () |
void | incr_symbol_index () |
Private Attributes | |
sssr::digital_correlator | d_correlator |
sssr::seg_sync_integrator | d_integrator |
sssr::quad_filter | d_quad_filter |
double | d_quad_output [ATSC_DATA_SEGMENT_LENGTH] |
double | d_timing_adjust |
int | d_counter |
int | d_symbol_index |
bool | d_seg_locked |
FILE * | d_debug_fp |
This class implements data segment sync tracking and symbol timing using the method described in "ATSC/VSB Tutorial - Receiver Technology" by Wayne E. Bretl of Zenith, pgs 41-45.
|
|
|
|
|
|
|
|
|
call on channel change
|
|
process a single sample at the ATSC symbol rate (~10.76 MSPS)
This block computes an indication of our timing error and keeps track of where the segment sync's occur. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|