Re: Sliding window Viterbi



john wrote:
I am using a homemade Viterbi decoder to remove ISI. Originally, my
decoder maintained path history (states vs time) for the entire
duration of the message (1e5 bits) and it traced all the way back from
end to finish. Then I modified it to use a sliding window. I created a
circular buffer equal to the desired traceback length (about 5 times
the ISI duration) and kept the path history in that buffer, tracing
back at each step of the input over the reduced length and producing
one new bit. It works fine, BER wise.

I am still maintaining a running cumulative sum of the suriviving path
error over the entire message. This grows without bound, so I need to
make this a sliding sum. But the bookkeeping to do that is complicated.
What I did instead is continuously compute the mean of all of the
cumulative error sums, and subtrac that off at each step. Then it
doesn't grow without bound. This gives good BER too.

What has that to do with ISI? It seems to me to be a different issue.

  ...

Jerry
--
Engineering is the art of making what you want from things you can get.
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
.