Currently, approximately 60% (~18.7 MB) of nrsc5's memory utilization is taken up by Viterbi decoding (nrsc5_conv_decode). This is because Viterbi decoding is done in a single long pass on PDUs that can be hundreds of thousands of bits in length. The memory requirement could be vastly reduced by switching to a sliding-window Viterbi decoder which processes bits in small batches.
Currently, approximately 60% (~18.7 MB) of nrsc5's memory utilization is taken up by Viterbi decoding (
nrsc5_conv_decode). This is because Viterbi decoding is done in a single long pass on PDUs that can be hundreds of thousands of bits in length. The memory requirement could be vastly reduced by switching to a sliding-window Viterbi decoder which processes bits in small batches.