From 238029328976662d88d5444ff4b9c1521b360e1b Mon Sep 17 00:00:00 2001 From: Achilleas Anastasopoulos Date: Wed, 31 Aug 2011 20:10:06 -0400 Subject: Added more turbo encoder/decoder blocks and examples. --- gr-trellis/grc/Makefile.am | 4 +- gr-trellis/grc/trellis_pccc_encoder_xx.xml | 96 +++++++++++++++++ .../grc/trellis_sccc_decoder_combined_xx.xml | 2 +- gr-trellis/grc/trellis_sccc_decoder_x.xml | 117 +++++++++++++++++++++ 4 files changed, 217 insertions(+), 2 deletions(-) create mode 100644 gr-trellis/grc/trellis_pccc_encoder_xx.xml create mode 100644 gr-trellis/grc/trellis_sccc_decoder_x.xml (limited to 'gr-trellis/grc') diff --git a/gr-trellis/grc/Makefile.am b/gr-trellis/grc/Makefile.am index 25bc29a87..394d87869 100644 --- a/gr-trellis/grc/Makefile.am +++ b/gr-trellis/grc/Makefile.am @@ -32,4 +32,6 @@ dist_grcblocks_DATA = \ trellis_permutation.xml \ trellis_viterbi_combined_xx.xml \ trellis_sccc_encoder_xx.xml \ - trellis_sccc_decoder_combined_xx.xml + trellis_sccc_decoder_x.xml \ + trellis_sccc_decoder_combined_xx.xml \ + trellis_pccc_encoder_xx.xml diff --git a/gr-trellis/grc/trellis_pccc_encoder_xx.xml b/gr-trellis/grc/trellis_pccc_encoder_xx.xml new file mode 100644 index 000000000..c416dfdfa --- /dev/null +++ b/gr-trellis/grc/trellis_pccc_encoder_xx.xml @@ -0,0 +1,96 @@ + + + + + PCCC Encoder + trellis_pccc_encoder_xx + Error Correction/Trellis + from gnuradio import trellis + trellis.pccc_encoder_$(type)(trellis.fsm($o_fsm_args), $o_init_state, trellis.fsm($i_fsm_args), $i_init_state, trellis.interleaver($interleaver_args), $bl) + + Type + type + enum + + + + + + + + + Outer FSM + o_fsm_args + raw + + + Outer Initial State + o_init_state + int + + + Inner FSM + i_fsm_args + raw + + + Inner Initial State + i_init_state + int + + + Interleaver + interleaver_args + raw + + + Blocklength + bl + int + + + in + $type.input + + + out + $type.output + + +The fsm and interleaver arguments are passed directly to the trellis.fsm() and trellis.interleaver() constructors. + + diff --git a/gr-trellis/grc/trellis_sccc_decoder_combined_xx.xml b/gr-trellis/grc/trellis_sccc_decoder_combined_xx.xml index de7dfc842..5718f28f2 100644 --- a/gr-trellis/grc/trellis_sccc_decoder_combined_xx.xml +++ b/gr-trellis/grc/trellis_sccc_decoder_combined_xx.xml @@ -164,7 +164,7 @@ $out_type.io -Viterbi Decoder combined with metric calculation. \ +SCCC turbo Decoder combined with metric calculation. The fsm arguments are passed directly to the trellis.fsm() constructor. diff --git a/gr-trellis/grc/trellis_sccc_decoder_x.xml b/gr-trellis/grc/trellis_sccc_decoder_x.xml new file mode 100644 index 000000000..ed712bb1f --- /dev/null +++ b/gr-trellis/grc/trellis_sccc_decoder_x.xml @@ -0,0 +1,117 @@ + + + + + + SCCC Decoder + trellis_sccc_decoder_x + Error Correction/Trellis + from gnuradio import trellis + trellis.sccc_decoder_$(out_type)( + trellis.fsm($o_fsm_args), $o_init_state, $o_final_state, + trellis.fsm($i_fsm_args), $i_init_state, $i_final_state, + trellis.interleaver($interleaver), + $block_size, + $iterations, + $siso_type) + + + Output Type + out_type + enum + + + + + + Outer FSM + o_fsm_args + raw + + + Outer Initial State + o_init_state + -1 + int + + + Outer Final State + o_final_state + -1 + int + + + Inner FSM + i_fsm_args + raw + + + Inner Initial State + i_init_state + -1 + int + + + Inner Final State + i_final_state + -1 + int + + + Interleaver + interleaver + raw + + + Block Size + block_size + int + + + Iterations + iterations + 10 + int + + + SISO Type + siso_type + enum + + + + + in + float + + + out + $out_type.io + + +SCCC turbo Decoder. +The fsm and interleaver arguments are passed directly to the trellis.fsm() and trellis.interleaver() constructors. + + -- cgit