Столкнулся с задачей реалезации декодера свёрточного циркулярного недвоичного (double-binary) турбокода DVB-RCS. Предстоит сделать как аппаратную, так и программную реализацию. Для начала попробовал сделать программную реализацию, для этого выбрал декодер SOVA - алгоритм Витерби с мягким выходом (по той причине, что алгоритм Витерби мне очень хорошо знаком и его реализовать для меня не составило труда). Всё получилось, модель алгоритма (написана на Си) работает. Но дело в том, что требуется обеспечить скорость обработки хотя бы 1 мегабит в секунду на компьютере Intel с частотой 2.8 .. 3 ГГц, а ввиду огромного количества вычислений (с учётом не двоичной, а четверичной решётки кода, большого количества сравнений и копирований блоков данных, а также итерационного декодирования) такие скорости никак не получаются Даже после всевозможных оптимизаций кода. В связи с этим решил попробовать разобраться с алгоритмами декодирования серии log-MAP и max-log-MAP, где вычисляются апостериорные вероятности и LLR (есть подозрение, что реализация такого алгоритма может оказаться оптимальнее мягкого Витерби), но везде в литературе данные алгоритмы описываются на уровне теории, с теоремами и формулами, а хотелось бы что-либо почитать такое, где бы описывалось именно практическое применение, и алгоритм был бы описан именно в виде алгоритма, понятного программисту. С той целью, чтобы разобраться по возможности быстрее, ибо время ограничено. Вопрос: есть ли источники с такими, наиболее понятными описаниями? И, что ещё лучше - может, кто-либо встречал хорошие и понятные на уровне программирования описания алгоритмов декодирования именно свёрточных турбокодов DVB-RCS?
Спасибо заранее.