From 381253a1d24f1273fad2f4e0d57d75d3ac6e518d Mon Sep 17 00:00:00 2001 From: ptrkrysik Date: Wed, 19 Nov 2014 11:30:53 +0100 Subject: Changes in clock offset corrector and gsm_input - the previous version wasn't working well when samp_rate_in was different from samp_rate_out. Now resampling is done outside of clock offset corrector. --- .../misc_utils/gsm_clock_offset_corrector.grc | 272 ++++++++++++--------- hier_blocks/receiver/gsm_input.grc | 205 +++++++++++----- 2 files changed, 294 insertions(+), 183 deletions(-) (limited to 'hier_blocks') diff --git a/hier_blocks/misc_utils/gsm_clock_offset_corrector.grc b/hier_blocks/misc_utils/gsm_clock_offset_corrector.grc index efc1275..99d8e15 100644 --- a/hier_blocks/misc_utils/gsm_clock_offset_corrector.grc +++ b/hier_blocks/misc_utils/gsm_clock_offset_corrector.grc @@ -1,4 +1,5 @@ + Thu Nov 6 10:22:20 2014 @@ -28,6 +29,33 @@ 0 + + variable + + id + samp_rate_out + + + _enabled + True + + + value + samp_rate_in + + + alias + + + + _coordinate + (736, 19) + + + _rotation + 0 + + parameter @@ -68,10 +96,10 @@ - parameter + pad_source id - samp_rate_in + pad_source_0 _enabled @@ -79,27 +107,27 @@ label - samp_rate_in + in - value - 1625000.0/6.0*4.0 + type + complex - type - eng_float + vlen + 1 - short_id - + num_streams + 1 - alias - + optional + False _coordinate - (368, 19) + (14, 299) _rotation @@ -110,7 +138,7 @@ parameter id - samp_rate_out + ppm _enabled @@ -118,11 +146,11 @@ label - samp_rate_out + ppm value - 1625000.0/6.0*4.0 + 0 type @@ -138,7 +166,7 @@ _coordinate - (592, 20) + (496, 19) _rotation @@ -146,10 +174,10 @@ - pad_sink + parameter id - pad_sink_1 + samp_rate_in _enabled @@ -157,27 +185,27 @@ label - out + samp_rate_in - type - complex + value + 1625000.0/6.0*4.0 - vlen - 1 + type + eng_float - num_streams - 1 + short_id + - optional - False + alias + _coordinate - (1184, 333) + (368, 19) _rotation @@ -185,46 +213,38 @@ - fractional_resampler_xx + parameter id - fractional_resampler_xx_0 + samp_rate_out _enabled - True + False - type - complex + label + samp_rate_out - phase_shift - 0 + value + 1625000.0/6.0*4.0 - resamp_ratio - samp_rate_in/samp_rate_out + type + eng_float - alias + short_id - affinity + alias - - minoutbuf - 0 - - - maxoutbuf - 0 - _coordinate - (721, 303) + (592, 20) _rotation @@ -235,7 +255,7 @@ pad_source id - pad_source_0 + ppm_in _enabled @@ -243,11 +263,11 @@ label - in + ppm_in type - complex + message vlen @@ -259,11 +279,11 @@ optional - False + True _coordinate - (14, 299) + (16, 219) _rotation @@ -271,22 +291,26 @@ - gsm_controlled_rotator_cc + fractional_resampler_xx id - gsm_controlled_rotator_cc_0 + fractional_resampler_xx_0_0 _enabled - True + False - phase_inc + type + float + + + phase_shift 0 - samp_rate - samp_rate_out + resamp_ratio + samp_rate_in/samp_rate_out alias @@ -306,7 +330,7 @@ _coordinate - (968, 320) + (712, 144) _rotation @@ -353,7 +377,7 @@ _coordinate - (435, 216) + (416, 219) _rotation @@ -364,7 +388,7 @@ fractional_resampler_xx id - fractional_resampler_xx_0_0 + fractional_resampler_xx_0 _enabled @@ -372,7 +396,7 @@ type - float + complex phase_shift @@ -400,7 +424,7 @@ _coordinate - (721, 220) + (704, 304) _rotation @@ -408,18 +432,26 @@ - gsm_controlled_const_source_f + blocks_multiply_const_vxx id - gsm_controlled_const_source_f_0 + blocks_multiply_const_vxx_0_0 _enabled True - constant - ppm + type + float + + + const + 1.0e-6*samp_rate_in/samp_rate_out + + + vlen + 1 alias @@ -439,7 +471,7 @@ _coordinate - (182, 216) + (392, 331) _rotation @@ -447,10 +479,10 @@ - pad_source + pad_sink id - ppm_in + pad_sink_1 _enabled @@ -458,11 +490,11 @@ label - ppm_in + out type - message + complex vlen @@ -474,11 +506,11 @@ optional - True + False _coordinate - (13, 216) + (1112, 331) _rotation @@ -486,38 +518,42 @@ - parameter + gsm_controlled_rotator_cc id - ppm + gsm_controlled_rotator_cc_0 _enabled True - label - ppm - - - value + phase_inc 0 - type - eng_float + samp_rate + samp_rate_out - short_id + alias - alias + affinity + + minoutbuf + 0 + + + maxoutbuf + 0 + _coordinate - (496, 19) + (928, 320) _rotation @@ -525,26 +561,18 @@ - blocks_multiply_const_vxx + gsm_controlled_const_source_f id - blocks_multiply_const_vxx_0_0 + gsm_controlled_const_source_f_0 _enabled True - type - float - - - const - 1.0e-6*samp_rate_in/samp_rate_out - - - vlen - 1 + constant + ppm alias @@ -564,7 +592,7 @@ _coordinate - (410, 333) + (168, 219) _rotation @@ -611,7 +639,7 @@ _coordinate - (571, 333) + (552, 331) _rotation @@ -687,12 +715,6 @@ 0 constant_msg - - gsm_controlled_const_source_f_0 - blocks_multiply_const_vxx_0 - 0 - 0 - pad_source_0 fractional_resampler_xx_0 @@ -711,12 +733,6 @@ 0 1 - - gsm_controlled_rotator_cc_0 - pad_sink_1 - 0 - 0 - fractional_resampler_xx_0 gsm_controlled_rotator_cc_0 @@ -729,12 +745,6 @@ 0 1 - - gsm_controlled_const_source_f_0 - blocks_multiply_const_vxx_0_0 - 0 - 0 - blocks_multiply_const_vxx_0_0 blocks_add_const_vxx_0 @@ -747,4 +757,28 @@ 0 1 + + blocks_multiply_const_vxx_0 + gsm_controlled_rotator_cc_0 + 0 + 1 + + + gsm_controlled_rotator_cc_0 + pad_sink_1 + 0 + 0 + + + gsm_controlled_const_source_f_0 + blocks_multiply_const_vxx_0_0 + 0 + 0 + + + gsm_controlled_const_source_f_0 + blocks_multiply_const_vxx_0 + 0 + 0 + diff --git a/hier_blocks/receiver/gsm_input.grc b/hier_blocks/receiver/gsm_input.grc index 8d99640..685f0b2 100644 --- a/hier_blocks/receiver/gsm_input.grc +++ b/hier_blocks/receiver/gsm_input.grc @@ -1,4 +1,5 @@ + Thu Nov 6 14:41:06 2014 @@ -65,38 +66,26 @@ - pad_sink + variable id - pad_sink_0 + samp_rate_out _enabled True - label - out - - - type - complex - - - vlen - 1 - - - num_streams - 1 + value + 1625000.0/6.0*osr - optional - False + alias + _coordinate - (706, 213) + (632, 19) _rotation @@ -181,6 +170,84 @@ 0 + + parameter + + id + fc + + + _enabled + True + + + label + fc + + + value + 940e6 + + + type + eng_float + + + short_id + + + + alias + + + + _coordinate + (231, 22) + + + _rotation + 0 + + + + parameter + + id + samp_rate_in + + + _enabled + True + + + label + samp_rate_in + + + value + 1e6 + + + type + eng_float + + + short_id + + + + alias + + + + _coordinate + (328, 22) + + + _rotation + 0 + + low_pass_filter @@ -209,7 +276,7 @@ samp_rate - 1625000.0/6.0*osr + samp_rate_out cutoff_freq @@ -245,7 +312,7 @@ _coordinate - (502, 165) + (704, 179) _rotation @@ -253,10 +320,10 @@ - pad_source + pad_sink id - ppm_in + pad_sink_0 _enabled @@ -264,11 +331,11 @@ label - ppm_in + out type - message + complex vlen @@ -280,11 +347,11 @@ optional - True + False _coordinate - (91, 242) + (904, 227) _rotation @@ -292,30 +359,26 @@ - gsm_clock_offset_corrector + fractional_resampler_xx id - gsm_clock_offset_corrector_0 + fractional_resampler_xx_0 _enabled True - fc - fc + type + complex - ppm + phase_shift 0 - samp_rate_in - samp_rate_in - - - samp_rate_out - 1625000.0/6.0*4.0 + resamp_ratio + samp_rate_in/samp_rate_out alias @@ -335,7 +398,7 @@ _coordinate - (279, 190) + (488, 216) _rotation @@ -374,7 +437,7 @@ _coordinate - (88, 197) + (56, 179) _rotation @@ -382,10 +445,10 @@ - parameter + pad_source id - fc + ppm_in _enabled @@ -393,27 +456,27 @@ label - fc + ppm_in - value - 940e6 + type + message - type - eng_float + vlen + 1 - short_id - + num_streams + 1 - alias - + optional + True _coordinate - (231, 22) + (56, 243) _rotation @@ -421,38 +484,46 @@ - parameter + gsm_clock_offset_corrector id - samp_rate_in + gsm_clock_offset_corrector_0 _enabled True - label - samp_rate_in + fc + fc - value - 1e6 + ppm + ppm - type - eng_float + samp_rate_in + samp_rate_in - short_id + alias - alias + affinity + + minoutbuf + 0 + + + maxoutbuf + 0 + _coordinate - (328, 22) + (280, 195) _rotation @@ -466,11 +537,17 @@ 0 - gsm_clock_offset_corrector_0 + fractional_resampler_xx_0 low_pass_filter_0_0 0 0 + + gsm_clock_offset_corrector_0 + fractional_resampler_xx_0 + 0 + 0 + pad_source_0 gsm_clock_offset_corrector_0 -- cgit v1.2.3