diff options
author | Josh Blum | 2011-09-05 21:15:49 -0700 |
---|---|---|
committer | Josh Blum | 2011-09-05 21:15:49 -0700 |
commit | ca86c6f82d81bbc57bfe898afb8489a419ddbe63 (patch) | |
tree | 272a4623e6fd247c82d17d01e65ed14f3abe72a4 /grc | |
parent | 0ea25051b5126d9761e49ceeb0e5d76aaecd2ca3 (diff) | |
parent | 492446d2ec6ed85d6437bb35caf4700b02930147 (diff) | |
download | gnuradio-ca86c6f82d81bbc57bfe898afb8489a419ddbe63.tar.gz gnuradio-ca86c6f82d81bbc57bfe898afb8489a419ddbe63.tar.bz2 gnuradio-ca86c6f82d81bbc57bfe898afb8489a419ddbe63.zip |
Merge branch 'next' of gnuradio.org:gnuradio into next
Conflicts:
gr-trellis/src/lib/trellis_permutation.h
Diffstat (limited to 'grc')
-rw-r--r-- | grc/blocks/Makefile.am | 8 | ||||
-rw-r--r-- | grc/blocks/block_tree.xml | 8 | ||||
-rw-r--r-- | grc/blocks/gr_ctcss_squelch_ff.xml | 79 | ||||
-rw-r--r-- | grc/blocks/trellis_encoder_xx.xml | 74 | ||||
-rw-r--r-- | grc/blocks/trellis_metrics_x.xml | 85 | ||||
-rw-r--r-- | grc/blocks/trellis_permutation.xml | 74 | ||||
-rw-r--r-- | grc/blocks/trellis_siso_combined_f.xml | 112 | ||||
-rw-r--r-- | grc/blocks/trellis_siso_f.xml | 85 | ||||
-rw-r--r-- | grc/blocks/trellis_viterbi_combined_xx.xml | 123 | ||||
-rw-r--r-- | grc/blocks/trellis_viterbi_x.xml | 66 |
10 files changed, 81 insertions, 633 deletions
diff --git a/grc/blocks/Makefile.am b/grc/blocks/Makefile.am index 14ffe8358..a9f9427e9 100644 --- a/grc/blocks/Makefile.am +++ b/grc/blocks/Makefile.am @@ -90,6 +90,7 @@ dist_ourdata_DATA = \ gr_correlate_access_code_bb.xml \ gr_costas_loop_cc.xml \ gr_cpfsk_bc.xml \ + gr_ctcss_squelch_ff.xml \ gr_dc_blocker.xml \ gr_decode_ccsds_27_fb.xml \ gr_deinterleave.xml \ @@ -205,13 +206,6 @@ dist_ourdata_DATA = \ parameter.xml \ random_source_x.xml \ root_raised_cosine_filter.xml \ - trellis_encoder_xx.xml \ - trellis_metrics_x.xml \ - trellis_permutation.xml \ - trellis_siso_combined_f.xml \ - trellis_siso_f.xml \ - trellis_viterbi_combined_xx.xml \ - trellis_viterbi_x.xml \ variable.xml \ variable_config.xml \ variable_function_probe.xml \ diff --git a/grc/blocks/block_tree.xml b/grc/blocks/block_tree.xml index 0b641d79c..f82d40f85 100644 --- a/grc/blocks/block_tree.xml +++ b/grc/blocks/block_tree.xml @@ -152,6 +152,7 @@ <block>gr_simple_squelch_cc</block> <block>blks2_standard_squelch</block> <block>gr_pwr_squelch_xx</block> + <block>gr_ctcss_squelch_ff</block> <block>gr_threshold_ff</block> </cat> <cat> @@ -235,13 +236,6 @@ <name>Error Correction</name> <cat> <name>Trellis</name> - <block>trellis_encoder_xx</block> - <block>trellis_metrics_x</block> - <block>trellis_permutation</block> - <block>trellis_siso_combined_f</block> - <block>trellis_siso_f</block> - <block>trellis_viterbi_combined_xx</block> - <block>trellis_viterbi_x</block> </cat> <block>gr_encode_ccsds_27_bb</block> diff --git a/grc/blocks/gr_ctcss_squelch_ff.xml b/grc/blocks/gr_ctcss_squelch_ff.xml new file mode 100644 index 000000000..a34c75374 --- /dev/null +++ b/grc/blocks/gr_ctcss_squelch_ff.xml @@ -0,0 +1,79 @@ +<?xml version="1.0"?> +<!-- +# +# Copyright 2011 Free Software Foundation, Inc. +# +# This file is part of GNU Radio +# +# GNU Radio is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3, or (at your option) +# any later version. +# +# GNU Radio is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GNU Radio; see the file COPYING. If not, write to +# the Free Software Foundation, Inc., 51 Franklin Street, +# Boston, MA 02110-1301, USA. +--> + +<!-- +################################################### +##CTCSS Squelch +################################################### + --> +<block> + <name>CTCSS Squelch</name> + <key>gr_ctcss_squelch_ff</key> + <import>from gnuradio import gr</import> + <make>gr.ctcss_squelch_ff($rate, $freq, $level, $len, $ramp, $gate)</make> + <callback>set_level($level)</callback> + <param> + <name>Sampling Rate (Hz)</name> + <key>rate</key> + <value>samp_rate</value> + <type>real</type> + </param> + <param> + <name>Tone Frequency</name> + <key>freq</key> + <value>100.0</value> + <type>real</type> + </param> + <param> + <name>Level</name> + <key>level</key> + <value>0.01</value> + <type>real</type> + </param> + <param> + <name>Length</name> + <key>len</key> + <value>0</value> + <type>int</type> + </param> + <param> + <name>Ramp</name> + <key>ramp</key> + <value>0</value> + <type>int</type> + </param> + <param> + <name>Gate</name> + <key>gate</key> + <value>False</value> + <type>bool</type> + </param> + <sink> + <name>in</name> + <type>float</type> + </sink> + <source> + <name>out</name> + <type>float</type> + </source> +</block> diff --git a/grc/blocks/trellis_encoder_xx.xml b/grc/blocks/trellis_encoder_xx.xml deleted file mode 100644 index 74a8cc346..000000000 --- a/grc/blocks/trellis_encoder_xx.xml +++ /dev/null @@ -1,74 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##Trellis Encoder -################################################### - --> -<block> - <name>Trellis Encoder</name> - <key>trellis_encoder_xx</key> - <import>from gnuradio import trellis</import> - <make>trellis.encoder_$(type)(trellis.fsm($fsm_args), $init_state)</make> - <param> - <name>Type</name> - <key>type</key> - <type>enum</type> - <option> - <name>Byte->Byte</name> - <key>bb</key> - <opt>input:byte</opt> - <opt>output:byte</opt> - </option> - <option> - <name>Byte->Short</name> - <key>bs</key> - <opt>input:byte</opt> - <opt>output:short</opt> - </option> - <option> - <name>Byte->Int</name> - <key>bi</key> - <opt>input:byte</opt> - <opt>output:int</opt> - </option> - <option> - <name>Short->Short</name> - <key>ss</key> - <opt>input:short</opt> - <opt>output:short</opt> - </option> - <option> - <name>Short->Int</name> - <key>si</key> - <opt>input:short</opt> - <opt>output:int</opt> - </option> - <option> - <name>Int->Int</name> - <key>ii</key> - <opt>input:int</opt> - <opt>output:int</opt> - </option> - </param> - <param> - <name>FSM Args</name> - <key>fsm_args</key> - <type>raw</type> - </param> - <param> - <name>Initial State</name> - <key>init_state</key> - <type>int</type> - </param> - <sink> - <name>in</name> - <type>$type.input</type> - </sink> - <source> - <name>out</name> - <type>$type.output</type> - </source> - <doc> -The fsm arguments are passed directly to the trellis.fsm() constructor. - </doc> -</block> diff --git a/grc/blocks/trellis_metrics_x.xml b/grc/blocks/trellis_metrics_x.xml deleted file mode 100644 index 2016a34c2..000000000 --- a/grc/blocks/trellis_metrics_x.xml +++ /dev/null @@ -1,85 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##Trellis Metrics -################################################### - --> -<block> - <name>Trellis Metrics</name> - <key>trellis_metrics_x</key> - <import>from gnuradio import trellis</import> - <make>trellis.metrics_$(type)($card, $dim, $table, $metric_type)</make> - <callback>set_TABLE($table)</callback> - <param> - <name>Type</name> - <key>type</key> - <type>enum</type> - <option> - <name>Complex</name> - <key>c</key> - <opt>io:complex</opt> - <opt>table:complex_vector</opt> - </option> - <option> - <name>Float</name> - <key>f</key> - <opt>io:float</opt> - <opt>table:real_vector</opt> - </option> - <option> - <name>Int</name> - <key>i</key> - <opt>io:int</opt> - <opt>table:int_vector</opt> - </option> - <option> - <name>Short</name> - <key>s</key> - <opt>io:short</opt> - <opt>table:int_vector</opt> - </option> - </param> - <param> - <name>Output Cardinality</name> - <key>card</key> - <type>int</type> - </param> - <param> - <name>Dimensionality</name> - <key>dim</key> - <type>int</type> - </param> - <param> - <name>Constellation</name> - <key>table</key> - <type>$type.table</type> - </param> - <param> - <name>Metric Type</name> - <key>metric_type</key> - <type>enum</type> - <option> - <name>Euclidean</name> - <key>trellis.TRELLIS_EUCLIDEAN</key> - </option> - <option> - <name>Hard Symbol</name> - <key>trellis.TRELLIS_HARD_SYMBOL</key> - </option> - <option> - <name>Hard Bit</name> - <key>trellis.TRELLIS_HARD_BIT</key> - </option> - </param> - <sink> - <name>in</name> - <type>$type.io</type> - </sink> - <source> - <name>out</name> - <type>float</type> - </source> - <doc> -Generate metrics required for Viterbi or SISO algorithms. - </doc> -</block> diff --git a/grc/blocks/trellis_permutation.xml b/grc/blocks/trellis_permutation.xml deleted file mode 100644 index 7721cc71d..000000000 --- a/grc/blocks/trellis_permutation.xml +++ /dev/null @@ -1,74 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##Trellis Permutation -################################################### - --> -<block> - <name>Trellis Permutation</name> - <key>trellis_permutation</key> - <import>from gnuradio import trellis</import> - <make>trellis.permutation($block_size, $table, $syms_per_block, $type.size*$vlen)</make> - <param> - <name>Type</name> - <key>type</key> - <type>enum</type> - <option> - <name>Complex</name> - <key>complex</key> - <opt>size:gr.sizeof_gr_complex</opt> - </option> - <option> - <name>Float</name> - <key>float</key> - <opt>size:gr.sizeof_float</opt> - </option> - <option> - <name>Int</name> - <key>int</key> - <opt>size:gr.sizeof_int</opt> - </option> - <option> - <name>Short</name> - <key>short</key> - <opt>size:gr.sizeof_short</opt> - </option> - <option> - <name>Byte</name> - <key>byte</key> - <opt>size:gr.sizeof_char</opt> - </option> - </param> - <param> - <name>Block Size</name> - <key>block_size</key> - <type>int</type> - </param> - <param> - <name>Table</name> - <key>table</key> - <type>int_vector</type> - </param> - <param> - <name>Symbols per Block</name> - <key>syms_per_block</key> - <type>int</type> - </param> - <param> - <name>Vec Length</name> - <key>vlen</key> - <value>1</value> - <type>int</type> - </param> - <check>$vlen > 0</check> - <sink> - <name>in</name> - <type>$type</type> - <vlen>$vlen</vlen> - </sink> - <source> - <name>out</name> - <type>$type</type> - <vlen>$vlen</vlen> - </source> -</block> diff --git a/grc/blocks/trellis_siso_combined_f.xml b/grc/blocks/trellis_siso_combined_f.xml deleted file mode 100644 index 98874d7f4..000000000 --- a/grc/blocks/trellis_siso_combined_f.xml +++ /dev/null @@ -1,112 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##Trellis SISO Combined -################################################### - --> -<block> - <name>Trellis SISO Combo</name> - <key>trellis_siso_combined_f</key> - <import>from gnuradio import trellis</import> - <make>trellis.siso_combined_f(trellis.fsm($fsm_args), $block_size, $init_state, $final_state, $a_post_in, $a_post_out, $siso_type, $dim, $table, $metric_type)</make> - <param> - <name>FSM Args</name> - <key>fsm_args</key> - <type>raw</type> - </param> - <param> - <name>Block Size</name> - <key>block_size</key> - <type>int</type> - </param> - <param> - <name>Initial State</name> - <key>init_state</key> - <value>-1</value> - <type>int</type> - </param> - <param> - <name>Final State</name> - <key>final_state</key> - <value>-1</value> - <type>int</type> - </param> - <param> - <name>A-posteriori In</name> - <key>a_post_in</key> - <type>enum</type> - <option> - <name>Yes</name> - <key>True</key> - </option> - <option> - <name>No</name> - <key>False</key> - </option> - </param> - <param> - <name>A-posteriori Out</name> - <key>a_post_out</key> - <type>enum</type> - <option> - <name>Yes</name> - <key>True</key> - </option> - <option> - <name>No</name> - <key>False</key> - </option> - </param> - <param> - <name>SISO Type</name> - <key>siso_type</key> - <type>enum</type> - <option> - <name>Min Sum</name> - <key>trellis.TRELLIS_MIN_SUM</key> - </option> - <option> - <name>Sum Product</name> - <key>trellis.TRELLIS_SUM_PRODUCT</key> - </option> - </param> - <param> - <name>Dimensionality</name> - <key>dim</key> - <type>int</type> - </param> - <param> - <name>Constellation</name> - <key>table</key> - <type>real_vector</type> - </param> - <param> - <name>Metric Type</name> - <key>metric_type</key> - <type>enum</type> - <option> - <name>Euclidean</name> - <key>trellis.TRELLIS_EUCLIDEAN</key> - </option> - <option> - <name>Hard Symbol</name> - <key>trellis.TRELLIS_HARD_SYMBOL</key> - </option> - <option> - <name>Hard Bit</name> - <key>trellis.TRELLIS_HARD_BIT</key> - </option> - </param> - <sink> - <name>in</name> - <type>float</type> - </sink> - <source> - <name>out</name> - <type>float</type> - </source> - <doc> -BCJR Algorithm combined with metric calculation. \ -The fsm arguments are passed directly to the trellis.fsm() constructor. - </doc> -</block> diff --git a/grc/blocks/trellis_siso_f.xml b/grc/blocks/trellis_siso_f.xml deleted file mode 100644 index 2b9cfe5f7..000000000 --- a/grc/blocks/trellis_siso_f.xml +++ /dev/null @@ -1,85 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##Trellis SISO -################################################### - --> -<block> - <name>Trellis SISO</name> - <key>trellis_siso_f</key> - <import>from gnuradio import trellis</import> - <make>trellis.siso_f(trellis.fsm($fsm_args), $block_size, $init_state, $final_state, $a_post_in, $a_post_out, $siso_type)</make> - <param> - <name>FSM Args</name> - <key>fsm_args</key> - <type>raw</type> - </param> - <param> - <name>Block Size</name> - <key>block_size</key> - <type>int</type> - </param> - <param> - <name>Initial State</name> - <key>init_state</key> - <value>-1</value> - <type>int</type> - </param> - <param> - <name>Final State</name> - <key>final_state</key> - <value>-1</value> - <type>int</type> - </param> - <param> - <name>A-posteriori In</name> - <key>a_post_in</key> - <type>enum</type> - <option> - <name>Yes</name> - <key>True</key> - </option> - <option> - <name>No</name> - <key>False</key> - </option> - </param> - <param> - <name>A-posteriori Out</name> - <key>a_post_out</key> - <type>enum</type> - <option> - <name>Yes</name> - <key>True</key> - </option> - <option> - <name>No</name> - <key>False</key> - </option> - </param> - <param> - <name>SISO Type</name> - <key>siso_type</key> - <type>enum</type> - <option> - <name>Min Sum</name> - <key>trellis.TRELLIS_MIN_SUM</key> - </option> - <option> - <name>Sum Product</name> - <key>trellis.TRELLIS_SUM_PRODUCT</key> - </option> - </param> - <sink> - <name>in</name> - <type>float</type> - </sink> - <source> - <name>out</name> - <type>float</type> - </source> - <doc> -BCJR Algorithm. \ -The fsm arguments are passed directly to the trellis.fsm() constructor. - </doc> -</block> diff --git a/grc/blocks/trellis_viterbi_combined_xx.xml b/grc/blocks/trellis_viterbi_combined_xx.xml deleted file mode 100644 index 33dcaaf73..000000000 --- a/grc/blocks/trellis_viterbi_combined_xx.xml +++ /dev/null @@ -1,123 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##Trellis Viterbi Combined -################################################### - --> -<block> - <name>Trellis Viterbi Combo</name> - <key>trellis_viterbi_combined_xx</key> - <import>from gnuradio import trellis</import> - <make>trellis.viterbi_combined_$(type)$(out_type)(trellis.fsm($fsm_args), $block_size, $init_state, $final_state, $dim, $table, $metric_type)</make> - <callback>set_TABLE($table)</callback> - <param> - <name>Input Type</name> - <key>type</key> - <type>enum</type> - <option> - <name>Complex</name> - <key>c</key> - <opt>io:complex</opt> - <opt>table:complex_vector</opt> - </option> - <option> - <name>Float</name> - <key>f</key> - <opt>io:float</opt> - <opt>table:real_vector</opt> - </option> - <option> - <name>Int</name> - <key>i</key> - <opt>io:int</opt> - <opt>table:int_vector</opt> - </option> - <option> - <name>Short</name> - <key>s</key> - <opt>io:short</opt> - <opt>table:int_vector</opt> - </option> - </param> - <param> - <name>Output Type</name> - <key>out_type</key> - <type>enum</type> - <option> - <name>Int</name> - <key>i</key> - <opt>io:int</opt> - </option> - <option> - <name>Short</name> - <key>s</key> - <opt>io:short</opt> - </option> - <option> - <name>Byte</name> - <key>b</key> - <opt>io:byte</opt> - </option> - </param> - <param> - <name>FSM Args</name> - <key>fsm_args</key> - <type>raw</type> - </param> - <param> - <name>Block Size</name> - <key>block_size</key> - <type>int</type> - </param> - <param> - <name>Initial State</name> - <key>init_state</key> - <value>-1</value> - <type>int</type> - </param> - <param> - <name>Final State</name> - <key>final_state</key> - <value>-1</value> - <type>int</type> - </param> - <param> - <name>Dimensionality</name> - <key>dim</key> - <type>int</type> - </param> - <param> - <name>Constellation</name> - <key>table</key> - <type>$type.table</type> - </param> - <param> - <name>Metric Type</name> - <key>metric_type</key> - <type>enum</type> - <option> - <name>Euclidean</name> - <key>trellis.TRELLIS_EUCLIDEAN</key> - </option> - <option> - <name>Hard Symbol</name> - <key>trellis.TRELLIS_HARD_SYMBOL</key> - </option> - <option> - <name>Hard Bit</name> - <key>trellis.TRELLIS_HARD_BIT</key> - </option> - </param> - <sink> - <name>in</name> - <type>$type.io</type> - </sink> - <source> - <name>out</name> - <type>$out_type.io</type> - </source> - <doc> -Viterbi Decoder combined with metric calculation. \ -The fsm arguments are passed directly to the trellis.fsm() constructor. - </doc> -</block> diff --git a/grc/blocks/trellis_viterbi_x.xml b/grc/blocks/trellis_viterbi_x.xml deleted file mode 100644 index 84b39677c..000000000 --- a/grc/blocks/trellis_viterbi_x.xml +++ /dev/null @@ -1,66 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##Trellis Viterbi -################################################### - --> -<block> - <name>Trellis Viterbi</name> - <key>trellis_viterbi_x</key> - <import>from gnuradio import trellis</import> - <make>trellis.viterbi_$(type)(trellis.fsm($fsm_args), $block_size, $init_state, $final_state)</make> - <param> - <name>Type</name> - <key>type</key> - <type>enum</type> - <option> - <name>Int</name> - <key>i</key> - <opt>io:int</opt> - </option> - <option> - <name>Short</name> - <key>s</key> - <opt>io:short</opt> - </option> - <option> - <name>Byte</name> - <key>b</key> - <opt>io:byte</opt> - </option> - </param> - <param> - <name>FSM Args</name> - <key>fsm_args</key> - <type>raw</type> - </param> - <param> - <name>Block Size</name> - <key>block_size</key> - <type>int</type> - </param> - <param> - <name>Initial State</name> - <key>init_state</key> - <value>-1</value> - <type>int</type> - </param> - <param> - <name>Final State</name> - <key>final_state</key> - <value>-1</value> - <type>int</type> - </param> - <sink> - <name>in</name> - <type>float</type> - </sink> - <source> - <name>out</name> - <type>$type.io</type> - </source> - <doc> -Viterbi Decoder. \ -The fsm arguments are passed directly to the trellis.fsm() constructor. - </doc> -</block> |