diff options
-rw-r--r-- | gnuradio-examples/grc/pam_timing.grc | 616 | ||||
-rw-r--r-- | grc/blocks/Makefile.am | 2 | ||||
-rw-r--r-- | grc/blocks/block_tree.xml | 2 | ||||
-rw-r--r-- | grc/blocks/gr_pfb_clock_sync.xml (renamed from grc/blocks/gr_pfb_clock_recovery.xml) | 9 |
4 files changed, 623 insertions, 6 deletions
diff --git a/gnuradio-examples/grc/pam_timing.grc b/gnuradio-examples/grc/pam_timing.grc new file mode 100644 index 000000000..989c795a9 --- /dev/null +++ b/gnuradio-examples/grc/pam_timing.grc @@ -0,0 +1,616 @@ +<?xml version='1.0' encoding='ASCII'?> +<flow_graph> + <timestamp>Tue Oct 6 14:19:10 2009</timestamp> + <block> + <key>options</key> + <param> + <key>id</key> + <value>top_block</value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>title</key> + <value></value> + </param> + <param> + <key>author</key> + <value></value> + </param> + <param> + <key>description</key> + <value></value> + </param> + <param> + <key>window_size</key> + <value>1280, 1024</value> + </param> + <param> + <key>generate_options</key> + <value>wx_gui</value> + </param> + <param> + <key>category</key> + <value>Custom</value> + </param> + <param> + <key>run_options</key> + <value>prompt</value> + </param> + <param> + <key>run</key> + <value>True</value> + </param> + <param> + <key>realtime_scheduling</key> + <value></value> + </param> + <param> + <key>_coordinate</key> + <value>(10, 10)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + </block> + <block> + <key>variable</key> + <param> + <key>id</key> + <value>samp_rate</value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>value</key> + <value>32000</value> + </param> + <param> + <key>_coordinate</key> + <value>(128, 9)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + </block> + <block> + <key>gr_uchar_to_float</key> + <param> + <key>id</key> + <value>gr_uchar_to_float_0</value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>_coordinate</key> + <value>(270, 115)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + </block> + <block> + <key>random_source_x</key> + <param> + <key>id</key> + <value>random_source_x_0</value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>type</key> + <value>byte</value> + </param> + <param> + <key>min</key> + <value>0</value> + </param> + <param> + <key>max</key> + <value>2</value> + </param> + <param> + <key>num_samps</key> + <value>1000</value> + </param> + <param> + <key>repeat</key> + <value>True</value> + </param> + <param> + <key>_coordinate</key> + <value>(13, 80)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + </block> + <block> + <key>const_source_x</key> + <param> + <key>id</key> + <value>const_source_x_0</value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>type</key> + <value>float</value> + </param> + <param> + <key>const</key> + <value>-0.5</value> + </param> + <param> + <key>_coordinate</key> + <value>(179, 160)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + </block> + <block> + <key>variable_chooser</key> + <param> + <key>id</key> + <value>spb</value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>label</key> + <value>Samples Per Bit</value> + </param> + <param> + <key>value</key> + <value>4</value> + </param> + <param> + <key>choices</key> + <value>[1, 2, 3, 4, 5, 6, 7, 8]</value> + </param> + <param> + <key>labels</key> + <value>[]</value> + </param> + <param> + <key>type</key> + <value>drop_down</value> + </param> + <param> + <key>style</key> + <value>wx.RA_HORIZONTAL</value> + </param> + <param> + <key>grid_pos</key> + <value></value> + </param> + <param> + <key>notebook</key> + <value></value> + </param> + <param> + <key>_coordinate</key> + <value>(0, 834)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + </block> + <block> + <key>wxgui_scopesink2</key> + <param> + <key>id</key> + <value>wxgui_scopesink2_0</value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>type</key> + <value>float</value> + </param> + <param> + <key>title</key> + <value>Scope Plot</value> + </param> + <param> + <key>samp_rate</key> + <value>samp_rate</value> + </param> + <param> + <key>v_scale</key> + <value>0</value> + </param> + <param> + <key>t_scale</key> + <value>0</value> + </param> + <param> + <key>ac_couple</key> + <value>False</value> + </param> + <param> + <key>xy_mode</key> + <value>False</value> + </param> + <param> + <key>num_inputs</key> + <value>1</value> + </param> + <param> + <key>grid_pos</key> + <value></value> + </param> + <param> + <key>notebook</key> + <value></value> + </param> + <param> + <key>_coordinate</key> + <value>(750, 128)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + </block> + <block> + <key>gr_add_xx</key> + <param> + <key>id</key> + <value>gr_add_xx_0</value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>type</key> + <value>float</value> + </param> + <param> + <key>num_inputs</key> + <value>2</value> + </param> + <param> + <key>vlen</key> + <value>1</value> + </param> + <param> + <key>_coordinate</key> + <value>(505, 128)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + </block> + <block> + <key>variable_slider</key> + <param> + <key>id</key> + <value>noise_amp</value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>label</key> + <value>noise_amp</value> + </param> + <param> + <key>value</key> + <value>0</value> + </param> + <param> + <key>min</key> + <value>0</value> + </param> + <param> + <key>max</key> + <value>1.0</value> + </param> + <param> + <key>num_steps</key> + <value>1000</value> + </param> + <param> + <key>style</key> + <value>wx.SL_HORIZONTAL</value> + </param> + <param> + <key>converver</key> + <value>float_converter</value> + </param> + <param> + <key>grid_pos</key> + <value></value> + </param> + <param> + <key>notebook</key> + <value></value> + </param> + <param> + <key>_coordinate</key> + <value>(600, -1)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + </block> + <block> + <key>gr_throttle</key> + <param> + <key>id</key> + <value>gr_throttle_0</value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>type</key> + <value>float</value> + </param> + <param> + <key>samples_per_second</key> + <value>samp_rate</value> + </param> + <param> + <key>vlen</key> + <value>1</value> + </param> + <param> + <key>_coordinate</key> + <value>(561, 284)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + </block> + <block> + <key>gr_noise_source_x</key> + <param> + <key>id</key> + <value>gr_noise_source_x_0</value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>type</key> + <value>float</value> + </param> + <param> + <key>noise_type</key> + <value>gr.GR_GAUSSIAN</value> + </param> + <param> + <key>amp</key> + <value>noise_amp</value> + </param> + <param> + <key>seed</key> + <value>42</value> + </param> + <param> + <key>_coordinate</key> + <value>(45, 497)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + </block> + <block> + <key>root_raised_cosine_filter</key> + <param> + <key>id</key> + <value>root_raised_cosine_filter_0</value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>type</key> + <value>interp_fir_filter_fff</value> + </param> + <param> + <key>decim</key> + <value>1</value> + </param> + <param> + <key>interp</key> + <value>spb</value> + </param> + <param> + <key>gain</key> + <value>2*spb</value> + </param> + <param> + <key>samp_rate</key> + <value>1.0</value> + </param> + <param> + <key>sym_rate</key> + <value>1./spb</value> + </param> + <param> + <key>alpha</key> + <value>0.35</value> + </param> + <param> + <key>ntaps</key> + <value>11*spb</value> + </param> + <param> + <key>_coordinate</key> + <value>(50, 295)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + </block> + <block> + <key>gr_add_xx</key> + <param> + <key>id</key> + <value>gr_add_xx_0_0</value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>type</key> + <value>float</value> + </param> + <param> + <key>num_inputs</key> + <value>2</value> + </param> + <param> + <key>vlen</key> + <value>1</value> + </param> + <param> + <key>_coordinate</key> + <value>(374, 389)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + </block> + <block> + <key>root_raised_cosine_filter</key> + <param> + <key>id</key> + <value>root_raised_cosine_filter_0_0</value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>type</key> + <value>interp_fir_filter_fff</value> + </param> + <param> + <key>decim</key> + <value>1</value> + </param> + <param> + <key>interp</key> + <value>1</value> + </param> + <param> + <key>gain</key> + <value>1</value> + </param> + <param> + <key>samp_rate</key> + <value>1.0</value> + </param> + <param> + <key>sym_rate</key> + <value>1./spb</value> + </param> + <param> + <key>alpha</key> + <value>0.35</value> + </param> + <param> + <key>ntaps</key> + <value>11*spb</value> + </param> + <param> + <key>_coordinate</key> + <value>(376, 598)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + </block> + <connection> + <source_block_id>random_source_x_0</source_block_id> + <sink_block_id>gr_uchar_to_float_0</sink_block_id> + <source_key>0</source_key> + <sink_key>0</sink_key> + </connection> + <connection> + <source_block_id>gr_uchar_to_float_0</source_block_id> + <sink_block_id>gr_add_xx_0</sink_block_id> + <source_key>0</source_key> + <sink_key>0</sink_key> + </connection> + <connection> + <source_block_id>const_source_x_0</source_block_id> + <sink_block_id>gr_add_xx_0</sink_block_id> + <source_key>0</source_key> + <sink_key>1</sink_key> + </connection> + <connection> + <source_block_id>gr_add_xx_0</source_block_id> + <sink_block_id>root_raised_cosine_filter_0</sink_block_id> + <source_key>0</source_key> + <sink_key>0</sink_key> + </connection> + <connection> + <source_block_id>gr_throttle_0</source_block_id> + <sink_block_id>wxgui_scopesink2_0</sink_block_id> + <source_key>0</source_key> + <sink_key>0</sink_key> + </connection> + <connection> + <source_block_id>root_raised_cosine_filter_0</source_block_id> + <sink_block_id>gr_add_xx_0_0</sink_block_id> + <source_key>0</source_key> + <sink_key>0</sink_key> + </connection> + <connection> + <source_block_id>gr_noise_source_x_0</source_block_id> + <sink_block_id>gr_add_xx_0_0</sink_block_id> + <source_key>0</source_key> + <sink_key>1</sink_key> + </connection> + <connection> + <source_block_id>gr_add_xx_0_0</source_block_id> + <sink_block_id>root_raised_cosine_filter_0_0</sink_block_id> + <source_key>0</source_key> + <sink_key>0</sink_key> + </connection> + <connection> + <source_block_id>root_raised_cosine_filter_0_0</source_block_id> + <sink_block_id>gr_throttle_0</sink_block_id> + <source_key>0</source_key> + <sink_key>0</sink_key> + </connection> +</flow_graph> diff --git a/grc/blocks/Makefile.am b/grc/blocks/Makefile.am index 0ee9be6ca..7c769c4b4 100644 --- a/grc/blocks/Makefile.am +++ b/grc/blocks/Makefile.am @@ -144,7 +144,7 @@ dist_ourdata_DATA = \ gr_packed_to_unpacked_xx.xml \ gr_peak_detector2_fb.xml \ gr_peak_detector_xb.xml \ - gr_pfb_clock_recovery.xml \ + gr_pfb_clock_sync.xml \ gr_phase_modulator_fc.xml \ gr_pll_carriertracking_cc.xml \ gr_pll_freqdet_cf.xml \ diff --git a/grc/blocks/block_tree.xml b/grc/blocks/block_tree.xml index 5b10d1f12..509956d3b 100644 --- a/grc/blocks/block_tree.xml +++ b/grc/blocks/block_tree.xml @@ -124,7 +124,7 @@ <cat> <name>Synchronizers</name> <block>gr_clock_recovery_mm_xx</block> - <block>gr_pfb_clock_recovery_ccf</block> + <block>gr_pfb_clock_sync_ccf</block> <block>gr_costas_loop_cc</block> <block>gr_dd_mpsk_sync_cc</block> diff --git a/grc/blocks/gr_pfb_clock_recovery.xml b/grc/blocks/gr_pfb_clock_sync.xml index 90ecfcf41..9e2f3fa9c 100644 --- a/grc/blocks/gr_pfb_clock_recovery.xml +++ b/grc/blocks/gr_pfb_clock_sync.xml @@ -1,14 +1,14 @@ <?xml version="1.0"?> <!-- ################################################### -## Polyphase Filter based Clock Recovery +## Polyphase Filter based Clock Sync ################################################### --> <block> - <name>Polyphase Clock Recovery</name> - <key>gr_pfb_clock_recovery_ccf</key> + <name>Polyphase Clock Sync</name> + <key>gr_pfb_clock_sync_ccf</key> <import>from gnuradio import gr</import> - <make>gr.pfb_clock_recovery_ccf($sps, $gain, $taps, $filter_size, $init_phase)</make> + <make>gr.pfb_clock_sync_ccf($sps, $gain, $taps, $filter_size, $init_phase)</make> <callback>set_taps($taps)</callback> <callback>set_gain($gain)</callback> @@ -48,5 +48,6 @@ <source> <name>err</name> <type>float</type> + <optional>1</optional> </source> </block> |