From 66bb3cdc3137e46436ed18a1c453d59176051158 Mon Sep 17 00:00:00 2001 From: Piotr K Date: Wed, 13 Aug 2014 19:04:57 +0200 Subject: Changed directory structure. Corrected clock_offset_corrector (for some streange and yet unknown reason fractional resampler eats strem tags for some values of sps). (this commit may contain some changes that are not described) --- hier_blocks/clock_offset_corrector.grc | 652 ------------------- hier_blocks/gsm_fcch_detector.grc | 567 ----------------- .../misc_utils/gsm_clock_offset_corrector.grc | 691 +++++++++++++++++++++ hier_blocks/receiver/gsm_fcch_detector.grc | 567 +++++++++++++++++ 4 files changed, 1258 insertions(+), 1219 deletions(-) delete mode 100644 hier_blocks/clock_offset_corrector.grc delete mode 100644 hier_blocks/gsm_fcch_detector.grc create mode 100644 hier_blocks/misc_utils/gsm_clock_offset_corrector.grc create mode 100644 hier_blocks/receiver/gsm_fcch_detector.grc (limited to 'hier_blocks') diff --git a/hier_blocks/clock_offset_corrector.grc b/hier_blocks/clock_offset_corrector.grc deleted file mode 100644 index 97dde85..0000000 --- a/hier_blocks/clock_offset_corrector.grc +++ /dev/null @@ -1,652 +0,0 @@ - - - Wed Aug 6 19:56:28 2014 - - options - - id - clock_offset_corrector - - - _enabled - True - - - title - Clock offset corrector - - - author - Piotr Krysik - - - description - - - - window_size - 1280, 1024 - - - generate_options - hb - - - category - GSM - - - run_options - prompt - - - run - True - - - max_nouts - 0 - - - realtime_scheduling - - - - alias - - - - _coordinate - (10, 10) - - - _rotation - 0 - - - - parameter - - id - ppm - - - _enabled - True - - - label - ppm - - - value - 0 - - - type - eng_float - - - short_id - - - - alias - - - - _coordinate - (487, 22) - - - _rotation - 0 - - - - parameter - - id - samp_rate - - - _enabled - True - - - label - samp_rate - - - value - 1625000.0/6.0*4.0 - - - type - eng_float - - - short_id - - - - alias - - - - _coordinate - (368, 19) - - - _rotation - 0 - - - - parameter - - id - fc - - - _enabled - True - - - label - fc - - - value - 936.6e6 - - - type - eng_float - - - short_id - - - - alias - - - - _coordinate - (274, 19) - - - _rotation - 0 - - - - import - - id - math_imp - - - _enabled - True - - - import - import math - - - alias - - - - _coordinate - (11, 125) - - - _rotation - 0 - - - - blocks_multiply_const_vxx - - id - blocks_multiply_const_vxx_0 - - - _enabled - True - - - type - float - - - const - fc/samp_rate*(2*math.pi) - - - vlen - 1 - - - alias - - - - affinity - - - - minoutbuf - 0 - - - maxoutbuf - 0 - - - _coordinate - (571, 335) - - - _rotation - 0 - - - - blocks_add_const_vxx - - id - blocks_add_const_vxx_0 - - - _enabled - True - - - type - float - - - const - 1 - - - vlen - 1 - - - alias - - - - affinity - - - - minoutbuf - 0 - - - maxoutbuf - 0 - - - _coordinate - (779, 217) - - - _rotation - 0 - - - - blocks_multiply_const_vxx - - id - blocks_multiply_const_vxx_0_0 - - - _enabled - True - - - type - float - - - const - 1.0/1.0e6 - - - vlen - 1 - - - alias - - - - affinity - - - - minoutbuf - 0 - - - maxoutbuf - 0 - - - _coordinate - (405, 217) - - - _rotation - 0 - - - - pad_source - - id - pad_source_0 - - - _enabled - True - - - label - in - - - type - complex - - - vlen - 1 - - - num_streams - 1 - - - optional - False - - - _coordinate - (13, 301) - - - _rotation - 0 - - - - pad_sink - - id - pad_sink_1 - - - _enabled - True - - - label - out - - - type - complex - - - vlen - 1 - - - num_streams - 1 - - - optional - False - - - _coordinate - (1174, 335) - - - _rotation - 0 - - - - fractional_resampler_xx - - id - fractional_resampler_xx_0 - - - _enabled - True - - - type - complex - - - phase_shift - 0 - - - resamp_ratio - 1 - - - alias - - - - affinity - - - - minoutbuf - 0 - - - maxoutbuf - 0 - - - _coordinate - (986, 322) - - - _rotation - 0 - - - - gsm_controlled_const_source_f - - id - gsm_controlled_const_source_f_0 - - - _enabled - True - - - constant - ppm - - - alias - - - - affinity - - - - minoutbuf - 0 - - - maxoutbuf - 0 - - - _coordinate - (183, 217) - - - _rotation - 0 - - - - gsm_controlled_rotator_cc - - id - gsm_controlled_rotator_cc_0 - - - _enabled - True - - - phase_inc - 0 - - - samp_rate - samp_rate - - - alias - - - - affinity - - - - minoutbuf - 0 - - - maxoutbuf - 0 - - - _coordinate - (759, 305) - - - _rotation - 0 - - - - pad_source - - id - ppm - - - _enabled - True - - - label - ppm - - - type - message - - - vlen - 1 - - - num_streams - 1 - - - optional - True - - - _coordinate - (15, 217) - - - _rotation - 0 - - - - gsm_controlled_const_source_f_0 - blocks_multiply_const_vxx_0_0 - 0 - 0 - - - pad_source_0 - gsm_controlled_rotator_cc_0 - 0 - 0 - - - blocks_multiply_const_vxx_0_0 - blocks_multiply_const_vxx_0 - 0 - 0 - - - blocks_add_const_vxx_0 - fractional_resampler_xx_0 - 0 - 1 - - - gsm_controlled_rotator_cc_0 - fractional_resampler_xx_0 - 0 - 0 - - - blocks_multiply_const_vxx_0 - gsm_controlled_rotator_cc_0 - 0 - 1 - - - blocks_multiply_const_vxx_0_0 - blocks_add_const_vxx_0 - 0 - 0 - - - fractional_resampler_xx_0 - pad_sink_1 - 0 - 0 - - - ppm - gsm_controlled_const_source_f_0 - 0 - constant_msg - - diff --git a/hier_blocks/gsm_fcch_detector.grc b/hier_blocks/gsm_fcch_detector.grc deleted file mode 100644 index 1d69b53..0000000 --- a/hier_blocks/gsm_fcch_detector.grc +++ /dev/null @@ -1,567 +0,0 @@ - - - Tue Jul 8 19:32:53 2014 - - variable - - id - samp_rate - - - _enabled - True - - - value - f_symb*OSR - - - _coordinate - (10, 170) - - - _rotation - 0 - - - - variable - - id - f_symb - - - _enabled - True - - - value - 1625000.0/6.0 - - - _coordinate - (11, 239) - - - _rotation - 0 - - - - parameter - - id - OSR - - - _enabled - True - - - label - OverSamplingRatio - - - value - 4 - - - type - intx - - - short_id - - - - _coordinate - (264, 4) - - - _rotation - 0 - - - - blocks_complex_to_arg - - id - blocks_complex_to_arg_0 - - - _enabled - True - - - vlen - 1 - - - affinity - - - - minoutbuf - 0 - - - maxoutbuf - 0 - - - _coordinate - (641, 158) - - - _rotation - 0 - - - - blocks_multiply_conjugate_cc - - id - blocks_multiply_conjugate_cc_0 - - - _enabled - True - - - vlen - 1 - - - affinity - - - - minoutbuf - 0 - - - maxoutbuf - 0 - - - _coordinate - (444, 141) - - - _rotation - 0 - - - - blocks_delay - - id - blocks_delay_0 - - - _enabled - True - - - type - complex - - - delay - int(OSR) - - - num_ports - 1 - - - vlen - 1 - - - affinity - - - - minoutbuf - 0 - - - maxoutbuf - 0 - - - _coordinate - (319, 171) - - - _rotation - 0 - - - - blocks_moving_average_xx - - id - blocks_moving_average_xx_0 - - - _enabled - True - - - type - float - - - length - int((142)*samp_rate/f_symb) - - - scale - 1 - - - max_iter - int(1e6) - - - affinity - - - - minoutbuf - 0 - - - maxoutbuf - 0 - - - _coordinate - (971, 138) - - - _rotation - 0 - - - - blocks_threshold_ff - - id - blocks_threshold_ff_0_0 - - - _enabled - True - - - low - 0 - - - high - 0 - - - init - 0 - - - affinity - - - - minoutbuf - 0 - - - maxoutbuf - 0 - - - _coordinate - (815, 138) - - - _rotation - 0 - - - - pad_source - - id - pad_source_0 - - - _enabled - True - - - label - in - - - type - complex - - - vlen - 1 - - - num_streams - 1 - - - optional - False - - - _coordinate - (155, 137) - - - _rotation - 0 - - - - blocks_threshold_ff - - id - blocks_threshold_ff_0 - - - _enabled - True - - - low - int((138)*samp_rate/f_symb) - - - high - int((138)*samp_rate/f_symb) - - - init - 0 - - - affinity - - - - minoutbuf - 0 - - - maxoutbuf - 0 - - - _coordinate - (1150, 138) - - - _rotation - 0 - - - - gsm_fcch_burst_tagger - - id - gsm_fcch_burst_tagger_0 - - - _enabled - True - - - OSR - OSR - - - affinity - - - - minoutbuf - 0 - - - maxoutbuf - 0 - - - _coordinate - (348, 303) - - - _rotation - 0 - - - - pad_sink - - id - pad_sink_0 - - - _enabled - True - - - label - out - - - type - complex - - - vlen - 1 - - - num_streams - 1 - - - optional - False - - - _coordinate - (584, 316) - - - _rotation - 0 - - - - options - - id - fcch_detector - - - _enabled - True - - - title - FCCH Bursts Detector - - - author - Piotr Krysik - - - description - Detects positions of FCCH bursts. At the end of each detected FCCH burst adds to the stream a tag with key "fcch" and value which is a frequency offset estimate. The input sampling frequency should be integer multiply of GSM GMKS symbol rate - 1625000/6 Hz. - - - window_size - 1280, 1024 - - - generate_options - hb - - - category - GSM - - - run_options - prompt - - - run - True - - - max_nouts - 0 - - - realtime_scheduling - - - - _coordinate - (8, 0) - - - _rotation - 0 - - - - pad_source_0 - blocks_multiply_conjugate_cc_0 - 0 - 0 - - - blocks_delay_0 - blocks_multiply_conjugate_cc_0 - 0 - 1 - - - blocks_complex_to_arg_0 - blocks_threshold_ff_0_0 - 0 - 0 - - - pad_source_0 - blocks_delay_0 - 0 - 0 - - - blocks_multiply_conjugate_cc_0 - blocks_complex_to_arg_0 - 0 - 0 - - - blocks_moving_average_xx_0 - blocks_threshold_ff_0 - 0 - 0 - - - blocks_threshold_ff_0_0 - blocks_moving_average_xx_0 - 0 - 0 - - - gsm_fcch_burst_tagger_0 - pad_sink_0 - 0 - 0 - - - pad_source_0 - gsm_fcch_burst_tagger_0 - 0 - 0 - - - blocks_threshold_ff_0 - gsm_fcch_burst_tagger_0 - 0 - 1 - - diff --git a/hier_blocks/misc_utils/gsm_clock_offset_corrector.grc b/hier_blocks/misc_utils/gsm_clock_offset_corrector.grc new file mode 100644 index 0000000..10ed7ef --- /dev/null +++ b/hier_blocks/misc_utils/gsm_clock_offset_corrector.grc @@ -0,0 +1,691 @@ + + + Wed Aug 13 16:44:37 2014 + + options + + id + clock_offset_corrector + + + _enabled + True + + + title + Clock offset corrector + + + author + Piotr Krysik + + + description + + + + window_size + 1280, 1024 + + + generate_options + hb + + + category + GSM + + + run_options + prompt + + + run + True + + + max_nouts + 0 + + + realtime_scheduling + + + + alias + + + + _coordinate + (10, 10) + + + _rotation + 0 + + + + import + + id + math_imp + + + _enabled + True + + + import + import math + + + alias + + + + _coordinate + (11, 125) + + + _rotation + 0 + + + + fractional_resampler_xx + + id + fractional_resampler_xx_0 + + + _enabled + True + + + type + complex + + + phase_shift + 0 + + + resamp_ratio + 1 + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (720, 303) + + + _rotation + 0 + + + + pad_source + + id + pad_source_0 + + + _enabled + True + + + label + in + + + type + complex + + + vlen + 1 + + + num_streams + 1 + + + optional + False + + + _coordinate + (14, 299) + + + _rotation + 0 + + + + pad_sink + + id + pad_sink_1 + + + _enabled + True + + + label + out + + + type + complex + + + vlen + 1 + + + num_streams + 1 + + + optional + False + + + _coordinate + (1170, 333) + + + _rotation + 0 + + + + parameter + + id + fc + + + _enabled + True + + + label + fc + + + value + 936.6e6 + + + type + eng_float + + + short_id + + + + alias + + + + _coordinate + (274, 19) + + + _rotation + 0 + + + + parameter + + id + ppm + + + _enabled + True + + + label + ppm + + + value + 0 + + + type + eng_float + + + short_id + + + + alias + + + + _coordinate + (496, 19) + + + _rotation + 0 + + + + parameter + + id + samp_rate_in + + + _enabled + True + + + label + samp_rate_in + + + value + 1625000.0/6.0*4.0 + + + type + eng_float + + + short_id + + + + alias + + + + _coordinate + (368, 19) + + + _rotation + 0 + + + + pad_source + + id + ppm_in + + + _enabled + True + + + label + ppm_in + + + type + message + + + vlen + 1 + + + num_streams + 1 + + + optional + True + + + _coordinate + (15, 217) + + + _rotation + 0 + + + + parameter + + id + samp_rate_out + + + _enabled + True + + + label + samp_rate_out + + + value + 1625000.0/6.0*4.0 + + + type + eng_float + + + short_id + + + + alias + + + + _coordinate + (592, 20) + + + _rotation + 0 + + + + blocks_multiply_const_vxx + + id + blocks_multiply_const_vxx_0 + + + _enabled + True + + + type + float + + + const + fc/samp_rate_out*(2*math.pi)/1e6 + + + vlen + 1 + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (724, 217) + + + _rotation + 0 + + + + gsm_controlled_const_source_f + + id + gsm_controlled_const_source_f_0 + + + _enabled + True + + + constant + ppm + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (183, 217) + + + _rotation + 0 + + + + blocks_add_const_vxx + + id + blocks_add_const_vxx_0 + + + _enabled + True + + + type + float + + + const + samp_rate_in/samp_rate_out + + + vlen + 1 + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (571, 333) + + + _rotation + 0 + + + + blocks_multiply_const_vxx + + id + blocks_multiply_const_vxx_0_0 + + + _enabled + True + + + type + float + + + const + 1.0e-6*samp_rate_in/samp_rate_out + + + vlen + 1 + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (411, 333) + + + _rotation + 0 + + + + gsm_controlled_rotator_cc + + id + gsm_controlled_rotator_cc_0 + + + _enabled + True + + + phase_inc + 0 + + + samp_rate + samp_rate_out + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (973, 320) + + + _rotation + 0 + + + + blocks_add_const_vxx_0 + fractional_resampler_xx_0 + 0 + 1 + + + blocks_multiply_const_vxx_0 + gsm_controlled_rotator_cc_0 + 0 + 1 + + + fractional_resampler_xx_0 + gsm_controlled_rotator_cc_0 + 0 + 0 + + + gsm_controlled_rotator_cc_0 + pad_sink_1 + 0 + 0 + + + pad_source_0 + fractional_resampler_xx_0 + 0 + 0 + + + blocks_multiply_const_vxx_0_0 + blocks_add_const_vxx_0 + 0 + 0 + + + gsm_controlled_const_source_f_0 + blocks_multiply_const_vxx_0_0 + 0 + 0 + + + ppm_in + gsm_controlled_const_source_f_0 + 0 + constant_msg + + + gsm_controlled_const_source_f_0 + blocks_multiply_const_vxx_0 + 0 + 0 + + diff --git a/hier_blocks/receiver/gsm_fcch_detector.grc b/hier_blocks/receiver/gsm_fcch_detector.grc new file mode 100644 index 0000000..1d69b53 --- /dev/null +++ b/hier_blocks/receiver/gsm_fcch_detector.grc @@ -0,0 +1,567 @@ + + + Tue Jul 8 19:32:53 2014 + + variable + + id + samp_rate + + + _enabled + True + + + value + f_symb*OSR + + + _coordinate + (10, 170) + + + _rotation + 0 + + + + variable + + id + f_symb + + + _enabled + True + + + value + 1625000.0/6.0 + + + _coordinate + (11, 239) + + + _rotation + 0 + + + + parameter + + id + OSR + + + _enabled + True + + + label + OverSamplingRatio + + + value + 4 + + + type + intx + + + short_id + + + + _coordinate + (264, 4) + + + _rotation + 0 + + + + blocks_complex_to_arg + + id + blocks_complex_to_arg_0 + + + _enabled + True + + + vlen + 1 + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (641, 158) + + + _rotation + 0 + + + + blocks_multiply_conjugate_cc + + id + blocks_multiply_conjugate_cc_0 + + + _enabled + True + + + vlen + 1 + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (444, 141) + + + _rotation + 0 + + + + blocks_delay + + id + blocks_delay_0 + + + _enabled + True + + + type + complex + + + delay + int(OSR) + + + num_ports + 1 + + + vlen + 1 + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (319, 171) + + + _rotation + 0 + + + + blocks_moving_average_xx + + id + blocks_moving_average_xx_0 + + + _enabled + True + + + type + float + + + length + int((142)*samp_rate/f_symb) + + + scale + 1 + + + max_iter + int(1e6) + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (971, 138) + + + _rotation + 0 + + + + blocks_threshold_ff + + id + blocks_threshold_ff_0_0 + + + _enabled + True + + + low + 0 + + + high + 0 + + + init + 0 + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (815, 138) + + + _rotation + 0 + + + + pad_source + + id + pad_source_0 + + + _enabled + True + + + label + in + + + type + complex + + + vlen + 1 + + + num_streams + 1 + + + optional + False + + + _coordinate + (155, 137) + + + _rotation + 0 + + + + blocks_threshold_ff + + id + blocks_threshold_ff_0 + + + _enabled + True + + + low + int((138)*samp_rate/f_symb) + + + high + int((138)*samp_rate/f_symb) + + + init + 0 + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (1150, 138) + + + _rotation + 0 + + + + gsm_fcch_burst_tagger + + id + gsm_fcch_burst_tagger_0 + + + _enabled + True + + + OSR + OSR + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (348, 303) + + + _rotation + 0 + + + + pad_sink + + id + pad_sink_0 + + + _enabled + True + + + label + out + + + type + complex + + + vlen + 1 + + + num_streams + 1 + + + optional + False + + + _coordinate + (584, 316) + + + _rotation + 0 + + + + options + + id + fcch_detector + + + _enabled + True + + + title + FCCH Bursts Detector + + + author + Piotr Krysik + + + description + Detects positions of FCCH bursts. At the end of each detected FCCH burst adds to the stream a tag with key "fcch" and value which is a frequency offset estimate. The input sampling frequency should be integer multiply of GSM GMKS symbol rate - 1625000/6 Hz. + + + window_size + 1280, 1024 + + + generate_options + hb + + + category + GSM + + + run_options + prompt + + + run + True + + + max_nouts + 0 + + + realtime_scheduling + + + + _coordinate + (8, 0) + + + _rotation + 0 + + + + pad_source_0 + blocks_multiply_conjugate_cc_0 + 0 + 0 + + + blocks_delay_0 + blocks_multiply_conjugate_cc_0 + 0 + 1 + + + blocks_complex_to_arg_0 + blocks_threshold_ff_0_0 + 0 + 0 + + + pad_source_0 + blocks_delay_0 + 0 + 0 + + + blocks_multiply_conjugate_cc_0 + blocks_complex_to_arg_0 + 0 + 0 + + + blocks_moving_average_xx_0 + blocks_threshold_ff_0 + 0 + 0 + + + blocks_threshold_ff_0_0 + blocks_moving_average_xx_0 + 0 + 0 + + + gsm_fcch_burst_tagger_0 + pad_sink_0 + 0 + 0 + + + pad_source_0 + gsm_fcch_burst_tagger_0 + 0 + 0 + + + blocks_threshold_ff_0 + gsm_fcch_burst_tagger_0 + 0 + 1 + + -- cgit v1.2.3