Hi, I'm writing TCM decoder on VHDL. My question is: how I can prevent overflow in metric path. I've found one way - subtraction minimum metric, but it's so difficult operation (find minimum and subtraction it), any body know another way? Thanks.

# TCM decoder (Viterbi). Prevent overflow in metric path

Started by ●July 14, 2006

Reply by ●July 14, 20062006-07-14

Would it be useful to right shift after say M stages? or you detect if any of the path increases a certain threshold divide it by 2. Just a quick suggestion, I hope someone will notice and correct. valery wrote:> Hi, I'm writing TCM decoder on VHDL. My question is: how I can prevent > overflow in metric path. I've found one way - subtraction minimum metric, > but it's so difficult operation (find minimum and subtraction it), any > body know another way? > Thanks.

Reply by ●July 14, 20062006-07-14

It's the best way, but in this case I need subtruct constant value from all path metrics on current step of algorithm, on next step this value may be differ, but it must be same for all metrics (i saw this criterion in some docs about Viterbi decoder). But I haven't checked this my self. --sorry for my english :)>Would it be useful to right shift after say M stages? or you detect if >any of the path increases a certain threshold divide it by 2. Just a >quick suggestion, I hope someone will notice and correct. > >valery wrote: >> Hi, I'm writing TCM decoder on VHDL. My question is: how I can prevent >> overflow in metric path. I've found one way - subtraction minimummetric,>> but it's so difficult operation (find minimum and subtraction it), any >> body know another way? >> Thanks. > >

Reply by ●July 16, 20062006-07-16

mobi wrote:> Would it be useful to right shift after say M stages? or you detect if > any of the path increases a certain threshold divide it by 2. Just a > quick suggestion, I hope someone will notice and correct. > > valery wrote: > > Hi, I'm writing TCM decoder on VHDL. My question is: how I can prevent > > overflow in metric path. I've found one way - subtraction minimum metric, > > but it's so difficult operation (find minimum and subtraction it), any > > body know another way? > > Thanks.If any one path exceeds threshold (say because the MSB is set) then you right shift all of the paths. John