commit-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Commit-gnuradio] r8141 - in grc/branches/grc_reloaded: . notes src/grc


From: jblum
Subject: [Commit-gnuradio] r8141 - in grc/branches/grc_reloaded: . notes src/grc src/grc_gnuradio src/grc_gnuradio/blocks src/grc_gnuradio/blocks/trellis src/grc_gnuradio/data
Date: Sun, 30 Mar 2008 22:53:12 -0600 (MDT)

Author: jblum
Date: 2008-03-30 22:53:12 -0600 (Sun, 30 Mar 2008)
New Revision: 8141

Added:
   grc/branches/grc_reloaded/src/grc_gnuradio/blocks/trellis/
   
grc/branches/grc_reloaded/src/grc_gnuradio/blocks/trellis/trellis_encoder_xx.xml
   
grc/branches/grc_reloaded/src/grc_gnuradio/blocks/trellis/trellis_metrics_x.xml
   
grc/branches/grc_reloaded/src/grc_gnuradio/blocks/trellis/trellis_permutation.xml
   
grc/branches/grc_reloaded/src/grc_gnuradio/blocks/trellis/trellis_siso_combined_f.xml
   grc/branches/grc_reloaded/src/grc_gnuradio/blocks/trellis/trellis_siso_f.xml
   
grc/branches/grc_reloaded/src/grc_gnuradio/blocks/trellis/trellis_viterbi_combined_xx.xml
   
grc/branches/grc_reloaded/src/grc_gnuradio/blocks/trellis/trellis_viterbi_x.xml
Modified:
   grc/branches/grc_reloaded/notes/todo.txt
   grc/branches/grc_reloaded/setup.py
   grc/branches/grc_reloaded/src/grc/Actions.py
   grc/branches/grc_reloaded/src/grc_gnuradio/Generator.py
   grc/branches/grc_reloaded/src/grc_gnuradio/blocks/options.xml
   grc/branches/grc_reloaded/src/grc_gnuradio/data/block_tree.xml
Log:
trellis blocks

Modified: grc/branches/grc_reloaded/notes/todo.txt
===================================================================
--- grc/branches/grc_reloaded/notes/todo.txt    2008-03-29 22:42:01 UTC (rev 
8140)
+++ grc/branches/grc_reloaded/notes/todo.txt    2008-03-31 04:53:12 UTC (rev 
8141)
@@ -1,14 +1,17 @@
 ############ GRC Reloaded: #############
-html documentation/tutorial
-default platform for preferences block
+-html documentation/tutorial
+-default platform for preferences block
+-usrp simple needs testing
 
 ############   Blocks to Add:  ####################
--usrp hier2 blocks need testing
+-see checklist
+-custom packet mod/demod
+-pad source/sink
+-hier block
+-optparse block
 
 ############   Known Problems: ####################
--packet threads block on close
--usrp transmit dies in lock/unlock
--audio dies lock/unlock
+-packet threads block on close (needs a msg with -1)
 
 ############   Features to Add:        ####################
 -startup tips
@@ -20,19 +23,6 @@
 -clean up const sink display
 -clean up scope sink display
 
-############   wxPython Features:      ####################
--dump wx running graph to png?
--scroll box for graphs
--dropdowns in wx graphics, for variable settings
-                 self.scaling_chooser = wx.Choice(self, -1, choices=['Linear 
Hz', 'Logarithmic Hz', 'LogHz'])
-        self.scaling_chooser.SetSelection(0) #default is linear hz
-        self.Bind(wx.EVT_CHOICE, self.scale, self.scaling_chooser)
-        selection = event.GetSelection()
-
-############   Uninteresting Features: ####################
--add the concept of a current working directory
--auto param to usrp diagnose dialog
-
 ############   Get GTK Stock IDs:      ####################
 gtk.stock_list_ids()
 

Modified: grc/branches/grc_reloaded/setup.py
===================================================================
--- grc/branches/grc_reloaded/setup.py  2008-03-29 22:42:01 UTC (rev 8140)
+++ grc/branches/grc_reloaded/setup.py  2008-03-31 04:53:12 UTC (rev 8141)
@@ -44,18 +44,19 @@
 GRC_GNURADIO_DATA = [  
        'data/*.*',     
        'blocks/*.*',
-       'blocks/sources/*.xml',
-       'blocks/sinks/*.xml',
-       'blocks/graphical_sinks/*.xml',
-       'blocks/operators/*.xml',
        'blocks/conversions/*.xml',
        'blocks/filters/*.xml',
+       'blocks/graphical_sinks/*.xml',
        'blocks/level_controls/*.xml',
-       'blocks/synchronizers/*.xml',
+       'blocks/misc/*.xml',
        'blocks/modulators/*.xml',
+       'blocks/operators/*.xml',
+       'blocks/sinks/*.xml',   
+       'blocks/sources/*.xml', 
+       'blocks/synchronizers/*.xml',   
+       'blocks/trellis/*.xml',
+       'blocks/usrp/*.xml',
        'blocks/variables/*.xml',
-       'blocks/misc/*.xml',
-       'blocks/usrp/*.xml',
 ]
 
 setup(

Modified: grc/branches/grc_reloaded/src/grc/Actions.py
===================================================================
--- grc/branches/grc_reloaded/src/grc/Actions.py        2008-03-29 22:42:01 UTC 
(rev 8140)
+++ grc/branches/grc_reloaded/src/grc/Actions.py        2008-03-31 04:53:12 UTC 
(rev 8141)
@@ -17,7 +17,8 @@
 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
 """
 address@hidden Actions
-#Global actions for gui elements to communicate state changes to the action 
handler.           
+#Global actions for gui elements to communicate state changes to the action 
handler.   
+#Use gtk.stock_list_ids() to get a list of possible stock ids (for 
toolbar/menu icons) 
 address@hidden Josh Blum
 
 import pygtk
@@ -107,5 +108,4 @@
        """     
        if ACTIONS_DICT.has_key(action_name): return ACTIONS_DICT[action_name]
        raise KeyError('Action Name: "%s" does not exist'%action_name)
-       
-       
+

Modified: grc/branches/grc_reloaded/src/grc_gnuradio/Generator.py
===================================================================
--- grc/branches/grc_reloaded/src/grc_gnuradio/Generator.py     2008-03-29 
22:42:01 UTC (rev 8140)
+++ grc/branches/grc_reloaded/src/grc_gnuradio/Generator.py     2008-03-31 
04:53:12 UTC (rev 8141)
@@ -70,7 +70,6 @@
                all_blocks = self._flow_graph.get_blocks()
                #get imports
                imports = list()
-               imports.append('from gnuradio import gr')
                for block in all_blocks: imports.extend(block.get_imports())
                for block in filter(lambda b: b.get_key() == 'import', 
all_blocks):
                        imports.append(block.get_make())

Modified: grc/branches/grc_reloaded/src/grc_gnuradio/blocks/options.xml
===================================================================
--- grc/branches/grc_reloaded/src/grc_gnuradio/blocks/options.xml       
2008-03-29 22:42:01 UTC (rev 8140)
+++ grc/branches/grc_reloaded/src/grc_gnuradio/blocks/options.xml       
2008-03-31 04:53:12 UTC (rev 8141)
@@ -10,6 +10,7 @@
 <block>
        <name>Options</name>
        <key>options</key>
+       <import>from gnuradio import gr</import>
        <make></make>
        <param>
                <name>Name</name>

Added: 
grc/branches/grc_reloaded/src/grc_gnuradio/blocks/trellis/trellis_encoder_xx.xml
===================================================================
--- 
grc/branches/grc_reloaded/src/grc_gnuradio/blocks/trellis/trellis_encoder_xx.xml
                            (rev 0)
+++ 
grc/branches/grc_reloaded/src/grc_gnuradio/blocks/trellis/trellis_encoder_xx.xml
    2008-03-31 04:53:12 UTC (rev 8141)
@@ -0,0 +1,75 @@
+<?xml version="1.0"?>
+<!DOCTYPE block SYSTEM "../block.dtd">
+<!-- 
+###################################################
+##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>

Added: 
grc/branches/grc_reloaded/src/grc_gnuradio/blocks/trellis/trellis_metrics_x.xml
===================================================================
--- 
grc/branches/grc_reloaded/src/grc_gnuradio/blocks/trellis/trellis_metrics_x.xml 
                            (rev 0)
+++ 
grc/branches/grc_reloaded/src/grc_gnuradio/blocks/trellis/trellis_metrics_x.xml 
    2008-03-31 04:53:12 UTC (rev 8141)
@@ -0,0 +1,85 @@
+<?xml version="1.0"?>
+<!DOCTYPE block SYSTEM "../block.dtd">
+<!-- 
+###################################################
+##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>
+       <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>$type.io</type>
+       </source>
+       <doc>
+Generate metrics required for Viterbi or SISO algorithms.
+       </doc>
+</block>

Added: 
grc/branches/grc_reloaded/src/grc_gnuradio/blocks/trellis/trellis_permutation.xml
===================================================================
--- 
grc/branches/grc_reloaded/src/grc_gnuradio/blocks/trellis/trellis_permutation.xml
                           (rev 0)
+++ 
grc/branches/grc_reloaded/src/grc_gnuradio/blocks/trellis/trellis_permutation.xml
   2008-03-31 04:53:12 UTC (rev 8141)
@@ -0,0 +1,75 @@
+<?xml version="1.0"?>
+<!DOCTYPE block SYSTEM "../block.dtd">
+<!-- 
+###################################################
+##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 &gt; 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>

Added: 
grc/branches/grc_reloaded/src/grc_gnuradio/blocks/trellis/trellis_siso_combined_f.xml
===================================================================
--- 
grc/branches/grc_reloaded/src/grc_gnuradio/blocks/trellis/trellis_siso_combined_f.xml
                               (rev 0)
+++ 
grc/branches/grc_reloaded/src/grc_gnuradio/blocks/trellis/trellis_siso_combined_f.xml
       2008-03-31 04:53:12 UTC (rev 8141)
@@ -0,0 +1,113 @@
+<?xml version="1.0"?>
+<!DOCTYPE block SYSTEM "../block.dtd">
+<!-- 
+###################################################
+##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>

Added: 
grc/branches/grc_reloaded/src/grc_gnuradio/blocks/trellis/trellis_siso_f.xml
===================================================================
--- 
grc/branches/grc_reloaded/src/grc_gnuradio/blocks/trellis/trellis_siso_f.xml    
                            (rev 0)
+++ 
grc/branches/grc_reloaded/src/grc_gnuradio/blocks/trellis/trellis_siso_f.xml    
    2008-03-31 04:53:12 UTC (rev 8141)
@@ -0,0 +1,86 @@
+<?xml version="1.0"?>
+<!DOCTYPE block SYSTEM "../block.dtd">
+<!-- 
+###################################################
+##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>

Added: 
grc/branches/grc_reloaded/src/grc_gnuradio/blocks/trellis/trellis_viterbi_combined_xx.xml
===================================================================
--- 
grc/branches/grc_reloaded/src/grc_gnuradio/blocks/trellis/trellis_viterbi_combined_xx.xml
                           (rev 0)
+++ 
grc/branches/grc_reloaded/src/grc_gnuradio/blocks/trellis/trellis_viterbi_combined_xx.xml
   2008-03-31 04:53:12 UTC (rev 8141)
@@ -0,0 +1,123 @@
+<?xml version="1.0"?>
+<!DOCTYPE block SYSTEM "../block.dtd">
+<!-- 
+###################################################
+##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>
+       <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>

Added: 
grc/branches/grc_reloaded/src/grc_gnuradio/blocks/trellis/trellis_viterbi_x.xml
===================================================================
--- 
grc/branches/grc_reloaded/src/grc_gnuradio/blocks/trellis/trellis_viterbi_x.xml 
                            (rev 0)
+++ 
grc/branches/grc_reloaded/src/grc_gnuradio/blocks/trellis/trellis_viterbi_x.xml 
    2008-03-31 04:53:12 UTC (rev 8141)
@@ -0,0 +1,67 @@
+<?xml version="1.0"?>
+<!DOCTYPE block SYSTEM "../block.dtd">
+<!-- 
+###################################################
+##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>$type.io</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>

Modified: grc/branches/grc_reloaded/src/grc_gnuradio/data/block_tree.xml
===================================================================
--- grc/branches/grc_reloaded/src/grc_gnuradio/data/block_tree.xml      
2008-03-29 22:42:01 UTC (rev 8140)
+++ grc/branches/grc_reloaded/src/grc_gnuradio/data/block_tree.xml      
2008-03-31 04:53:12 UTC (rev 8141)
@@ -103,7 +103,7 @@
        </cat>
        <cat>
                <name>Synchronizers</name>
-               <block>gr_clock_recover_mm_xx</block>           
+               <block>gr_clock_recovery_mm_xx</block>          
                <block>gr_costas_loop_cc</block>
                <block>gr_dd_mpsk_sync_cc</block>
                <block>gr_pll_carriertracking_cc</block>
@@ -157,7 +157,7 @@
                <block>gr_phase_modulator_fc</block>
                <block>gr_quadrature_demod_cf</block>
                
-               <block>blks2_wft_tx</block>             
+               <block>blks2_wfm_tx</block>             
                <block>blks2_wfm_rcv</block>
                <block>blks2_wfm_rcv_pll</block>
                
@@ -181,25 +181,16 @@
                <block>packet_modulator</block>
                <block>packet_demodulator</block>
        </cat>
-       <!-- <cat>
-               <name>Coders</name>
-               <block>constellation_decoder</block>
-               <block>differential_encoder</block>
-               <block>differential_decoder</block>
-               <block>differential_phasor</block>
-               <block>correlate_access_code</block>
-       </cat>
        <cat>           
                <name>Trellis</name>
-               <block>trellis_encoder</block>
-               <block>metrics</block>
-               <block>viterbi_decoder</block>
-               <block>viterbi_decoder_metric</block>
-               <block>bcjr</block>
-               <block>bcjr_metric</block>
-               <block>interleaver</block>
-               <block>deinterleaver</block>             
-       </cat> -->
+               <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>
        <cat>
                <name>USRP</name>
                <block>usrp_simple_source_x</block>





reply via email to

[Prev in Thread] Current Thread [Next in Thread]