[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[ecc] The soft decision decoding and else ...
Hi everyone,
(glad to see some one start to make a discussion again on this
maillist :-))
Regarding the code that I wrote, it's been more than 10 months since
the last time I modify the code. That's because I don't know where to
go :-).
I simulate the code using ModelSim, and they work fine for me. The
code, as far as I know, is fully synthesizable -- except for the RAM
part [I never dare to try to synthesize them :-)]. I have a colleague
who try to implement the code on Xilinx-FPGA, but because now I live
far away from him I don't know his progress. I'll try to contact him
and report the progress on this maillist.
For the VDK9R12, the decoding process was done by hard decision
decoding. That's because I am not fully understand how to implement a
soft decision decoding on Viterbi Decoder. But I think difference was
on the branch metric calculation and the add, compare and select
process ? Isn't it ? If Mr Dali would like to implement the soft
decision decoding algorithm, great news then. Tell me what kind of
help that I could do.
About the speed issue. Hmm.. this is pretty hard, mostly because I
believe most of high speed viterbi decoder is not constructed by HDL
(?). As to achieve high speed, there were some kind of specific
hardware architecture to implement sophisticated algorithm.
But for VDK9R12 code, the speed was very slow mainly because there
were only 4 unit of ACS inside, that means it would take 256/4=64
cycles to complete the calculation of 1 inputs. Of course then, to
improve the speed, why don't you try to use more ACS ?
Another easier way to achieve speed improvement is by pipelining the
blocks. As because when I start writing the code I was still so naive
^_^, all the modules works on the same cycle. Suppose you put a
register between them I think you could achieve a significant speed
improvement.
And the last thing I want to say is, right now I am not the expert at
the field of error correcting codes. I just found that Viterbi
algorithm was interesting, so I just try to code them in HDL. I use
the simplest algorithm and architecture that I could understand, and
voila .. it works :-). If there were someone here who has more
competence on this thing and would like to share it with all of us,
I'm more than willing to learn from you.
Regards to everyone,
- Zalfany
IMIT-KTH, Kista, Sweden
_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com
--
To unsubscribe from ecc mailing list please visit http://www.opencores.org/mailinglists.shtml