[Top][All Lists]

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

Re: [Discuss-gnuradio] extending gr-trellis to perform Viterbi, MLSD on

From: Achilleas Anastasopoulos
Subject: Re: [Discuss-gnuradio] extending gr-trellis to perform Viterbi, MLSD on GMSK
Date: Wed, 11 Feb 2009 08:23:57 -0500
User-agent: Thunderbird (Windows/20081209)

The definition of the OS table is different than the one you suggest:

For every state "s" and for every INPUT SYMBOL "i" it tells you what the output symbol index "o" should be.
The reason a "transition" "t" is defined
as the pair (s,i) and not as a succession of states (s,s') is that the latter case cannot deal with "parallel" transitions.

So you need to rewrite your *.fsm description.

In addition, I suppose you have implemented some sort of "demodulator", ie, the device that takes the IQ CPM samples and projects these signals onto an (at least approximate) orthonormal basis. The way to do that is detailed here:


From:   Grzegorz Suder
Subject: Re: [Discuss-gnuradio] extending gr-trellis to perform Viterbi, MLSD on GMSK
Date:   Wed, 11 Feb 2009 10:19:42 +0100

I am trying to decode CPM signal according to your email but I have problem with understanding some things. What I'd like to do is to decode some kind of I/Q samples according to following scenario:
- decimation of symbol rate N-times
- decoding I/Q symbols according to FSM file and provided constellation

For VA I am using:
 dimensionality = 1
va = trellis.viterbi_combined_cb(f,K,0,-1,dimensionality,constellation,trellis.TRELLIS_EUCLIDEAN)

However the results are not as expected to be. My guess is that something might be wrong with FSM file - I've looked through *.fsm files example and seems that table OS (output symbols) is generated somehow. What I know about my state machine is:
- there is S unique states
- each state can have transition to one of I states
- each input symbol is equal to IB bits
- transition from state S(i-1) to S(i) corresponds to O output symbols
- each output symbol is written on OB bits

So in general - I have defined NS table. I thought that OS table in *.fsm file is just table that tells: transition from state S(a) to state S(b) is equal to output symbol O(ab) but it seems that I'm wrong. Is there any easy way to generate OS table in *.fsm file? I have seen fsm constructor that generates these values according to (n,k) and G - is that only way to generate OS table?


reply via email to

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