Способ декодирования помехоустойчивого кода
Изобретение относится к декодированию помехоустойчивого кода. Способ декодирования помехоустойчивого кода, включающий поступление в декодер из канала связи двоичных или недвоичных информационных символов вместе с избыточными символами кода, преобразование последних в символы регистра синдрома, вычисление оценок значений декодируемых символов на основе определенных ячеек синдрома, определяемых выбранным кодом, сравнение результата вычисления с вычисляемым порогом и принятие решения о необходимости изменения декодируемого информационного символа по результатам сравнения, отличающийся тем, что символы синдрома поступают на пороговый элемент на такое число тактов его работы раньше относительно момента принятия решения о значении декодируемого символа, каково количество символов синдрома на входах порогового элемента, причем принятие решения о необходимости изменения информационного символа производят на основе конвейерных вычислений, при которых одновременно принимают на разных стадиях решения относительно целой группы декодируемых символов. Технический результат - повышение скорости работы декодеров до уровня, определяемого максимально возможной скоростью сдвига данных по регистрам сдвига.
Реферат
Изобретение относится к декодированию помехоустойчивого кода для обнаружения ошибок и их исправления.
Как известно, при использовании помехоустойчивых кодов, в том числе и мажоритарно декодируемых, информационные символы поступают в декодер из канала связи (в котором возможно внесение ошибок в цифровое сообщение) вместе с избыточными символами кода, которые путем простых стандартных операций преобразуются в символы синдрома, обладающие важным свойством зависимости их значений только от ошибок, произошедших в канале связи, и совершенно не зависят от информационных символов, которые нужно передать получателю (см., например, Овечкин Г.В. и Золотарев В.В. Эффективные алгоритмы помехоустойчивого кодирования для цифровых систем связи. Электросвязь, № 9, 2003 г., с.34-37).
Символы регистра синдрома могут быть как двоичными, так и недвоичными, многоразрядными, что может определяться как видом передаваемой информации, так и приемным устройством, модемом, из которого цифровой поток поступает в декодер, исправляющий ошибки. Если модем мягкий, то символы синдрома небольшие целые числа даже при передаче обычного двоичного потока. Если модем жесткий, то символы синдрома - двоичный поток, поскольку такой модем просто принимает решения о значении символов двоичных потоков, не оценивая их надежность.
Декодер с помощью порогового элемента сначала суммирует на каждом такте работы после очередного сдвига данных по своим регистрам некоторые символы в определенных ячейках (которые определяются выбранным кодом) и после суммирования сравнивает результат с определенным назначаемым или вычисляемым порогом, который и определяет, нужно ли менять декодируемый информационный символ или нет. Это общая схема для всех линейных кодов, блоковых и сверточных.
Недостатком известной схемы является то, что обычно быстродействие суммирующих элементов порогового элемента и регистра сдвига имеют близкие значения. Поэтому при суммировании 5-ти, 30-ти и более чисел на пороговом элементе (ПЭ) оказывается, что работа декодера замедляется из-за того, что процесс суммирования небольших целых чисел, которых, тем не менее, довольно много, затягивается и скорость работы декодера очень заметно снижается по сравнению со случаем, если бы данные перемещались бы по регистрам сдвига с максимальной возможной для выбранной элементной базы скоростью.
Задачей изобретения является повышение скорости работы декодеров мажоритарного типа до уровня, определяемого только максимально возможной скоростью сдвига данных по регистрам сдвига в выбранной элементной базе.
Указанная задача достигается способом декодирования помехоустойчивого кода, включающим поступление в декодер из канала связи двоичных или недвоичных информационных символов вместе с избыточными символами кода, преобразование последних в символы регистра синдрома, вычисление оценок значений декодируемых символов в пороговом элементе декодера на каждом такте работы после очередного сдвига данных по своим регистрам на основе некоторых символов в определенных ячейках регистра синдрома, определяемых выбранным кодом, сравнение результата вычисления с определенным назначаемым или вычисляемым порогом и принятие решения по результатам сравнения о необходимости изменения декодируемого информационного символа, при этом данные из ячеек регистра сдвига считывают пороговым элементом на несколько позиций раньше того момента, когда значения этих ячеек требуются для вынесения решения о значении декодируемого символа, а указанные вычисление и сравнение заканчивают на пороговом элементе через несколько тактов его работы к моменту принятия решения о необходимости изменения декодируемого символа.
Указанное считывание пороговым элементом данных из ячеек регистра начинают на такое число позиций регистров сдвига раньше момента, когда значения символов синдрома потребуются для решения о значении декодируемого символа, каково количество символов синдрома на входах порогового элемента декодера.
Способ осуществляется следующим образом.
Из канала связи поступают зашумленные в канале связи информационные и проверочные символы кода и после вычисления вектора синдрома, зависящего только от конфигурации ошибок канала связи, эти символы проходят мимо ПЭ декодера. Его функция состоит в том, чтобы определить, какие символы на позициях, определяемых кодом, встречаются чаще других и на сколько. Если код двоичный, то это только возможные значения 0 и 1, а в случае недвоичного кода возможные значения будут определяться алфавитом кода, например q=256, как это имеет место в кодах Рида-Соломона и в других кодовых конструкциях. Но для вынесения такого решения нужно несколько тактов работы решающего устройства, входящего в состав порогового элемента. Это сильно замедляет работу всего устройства в целом, что очень нежелательно.
Изобретение состоит в том, что на ПЭ декодера любого типа, использующего такой ПЭ, содержимое надлежащих ячеек, среди которых нужно определить наиболее часто встречающееся значение, поступает на некоторое число позиций регистров сдвига раньше того момента, когда они уже потребуются для принятия требуемого решения. Поэтому такое решающее, возможно, конвейерное устройство, по мере продвижения декодируемых данных, будет выполнять необходимые функции в разных своих слоях (на разных уровнях), и к моменту декодирования решения будут готовы. Такие устройства одновременно принимают решения относительно целой группы декодируемых символов, находясь в каждый момент времени на разных стадиях принятия решений относительно различных соседних символов, находящихся в регистрах декодера. Величина, на которую надо брать символы синдрома и, может быть, других ячеек декодера, раньше, определяется числом тактов работы того порогового элемента, который должен быть реализован. Например, для двоичного случая надо отдавать на ПЭ символы не менее, чем на LOG2N+2 позиций, (N - число символов на входе ПЭ) регистров раньше момента, когда надо принимать решения относительно декодируемого символа, а для недвоичных символов эта задержка может составлять до (3-5)N позиций, в зависимости от конкретной реализации ПЭ.
Способ декодирования помехоустойчивого кода, включающий поступление в декодер из канала связи двоичных или недвоичных информационных символов вместе с избыточными символами кода, преобразование последних в символы регистра синдрома, вычисление оценок значений декодируемых символов на основе определенных ячеек синдрома, определяемых выбранным кодом, сравнение результата вычисления с вычисляемым порогом и принятие решения о необходимости изменения декодируемого информационного символа по результатам сравнения, отличающийся тем, что символы синдрома поступают на пороговый элемент на такое число тактов его работы раньше относительно момента принятия решения о значении декодируемого символа, каково количество символов синдрома на входах порогового элемента, причем принятие решения о необходимости изменения информационного символа производят на основе конвейерных вычислений, при которых одновременно принимают на разных стадиях решения относительно целой группы декодируемых символов.