‹ BackHN Continuity

Thread

Show HN: SIMD Viterbi Decoder in Rust

63 points · 11 comments · brian-armstrong

  1. nickcw · · focus · HN ↗
    I was looking at the reed Solomon implementation. I've done a few of those in the past! I note that you are using logs for multiplication. I always used to use a 64kb table for direct lookup, though maybe that isn't faster on modern processors?

    Next LDPC codes?

    1. brian-armstrong · · focus · HN ↗
      Interesting. I'll have to give it a try. If I understand your suggestion, you're saying that rather than doing 2 lookups for logs, then an addition, and then another lookup to exp back, we could just precompute the whole thing for any 2 arguments and do one lookup in a table? It's worth noting that some of the operations already use the mul_log format which just does an add with wraparound, but I could certainly see the big table option helping when we truly need field.mul

      As far as LDPC, I'd love to, but I need to get a better understanding of them first. I'll probably go for Turbo next just because conceptually they feel closer to the convolutional codes I have already. But time willing, it'd be fun to do both.

Open on Hacker News to reply ↗

Unofficial Hacker News client; not affiliated with Y Combinator.