КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Декодирующие устройства циклических кодов
а) Обнаружение ошибок Рассмотрим способ построения декодирующих устройств для циклических кодов в режиме обнаружения ошибок. Декодирующее устройство, использующее свойство делимости любой комбинации циклического кода на его порождающий многочлен g(x), показано на рис. 6.14.
Кодовая комбинация после регистрирующего устройства последовательно вводится в схему деления на g(x), и одновременно информационные элементы этой принятой комбинации записываются в накопитель информационных разрядов. После ввода последнего элемента кодовой комбинации в схему деления разряды регистра сдвига этой схемы будут содержать остаток от деления принятой комбинации на g(x). В случае, когда остаток чисто нулевой, комбинация считается принятой верно, если же остаток не равен нулю, то фиксируется ошибка. С целью принятия решения о наличии или отсутствии ошибок в комбинации содержимое разрядов регистра после завершения деления вводится в схему ИЛИ. Если ошибки отсутствуют (или не обнаружены), то на выходе схемы получаем сигнал “0”, по которому информация из накопителя информационных разрядов выдается потребителю информации. В том случае, когда на выходе схемы ИЛИ появляется сигнал “1”, а это произойдет, когда хотя бы в одном из разрядов регистра после деления появится “1”, т.е. полученный остаток не равен нулю, информационные разряды из накопителя потребителю не выдаются и фиксируется ошибка. Пример 6.18. Построить декодирующее устройство для обнаружения ошибок циклическим (7,4) – кодом с Схема декодирующего устройства для данного кода изображена на рисунке 6.15.
Пусть приемное устройство зарегистрировало комбинацию (1100101). Состояние элементов схемы деления при поступлении на ее вход данной комбинации отражено в таблице 6.6. Таблица 6.6
Таким образом, в результате деления установлено, что принятая комбинация принадлежит циклическому (7,4) – коду и ее информационные элементы поступают к потребителю информации. Предположим теперь, что в процессе передачи исказился первый элемент комбинации и принятая комбинация имеет вид (1100100). Процесс деления приведен в таблице 6.7.
Таблица 6.7
В результате деления принятой комбинации на В ряде случаев может оказаться целесообразным построение декодирующего устройства на основе схемы для решения рекуррентных соотношений (рис. 6.7). В этом случае процедура обнаружения ошибок строится следующим образом. По принятым информационным разрядам кодовой комбинации восстанавливаются избыточные элементы принимаемой кодовой комбинации и сравниваются с избыточными элементами, поступающими из канала. Если нет отличия в принимаемых и восстановленных избыточных элементах, то кодовая комбинация считается принятой верно. Если же восстановленные избыточные элементы отличаются от принятых, то фиксируется факт обнаружения ошибки. Структурная схема устройства обнаружения ошибок, реализующая описанную процедуру, представлена на рис. 6.16.
Информационные разряды принятой кодовой комбинации циклического (n, k) – кода через схему И1, открытую на время приема k информационных элементов, вводятся в регистр из k разрядов. После приема k -го разряда в схеме происходит сдвиг информации вправо, и по (k +1)-му такту в ячейке На рис. 6.17 для сравнения приведены устройства обнаружения ошибок для циклического кода (7,3), построенные по h(x) (Рис 6.17а) и по g(x)(Рис 6.17б)
б) Исправление ошибок Исправление ошибок циклическим кодом – задача достаточно сложная как в теоретическом, так и в практическом, т.е. схемном отношении. Существует несколько методов исправления ошибок для циклических кодов. В настоящем параграфе рассмотрим один из них, базирующийся на схемах, который были описаны выше. Подробно будет рассмотрен способ исправления однократных ошибок. На рисунке 6.18 показана структурная схема декодирующего устройства, предназначенная для исправления ошибок произвольной кратности в комбинации циклического кода.
В общих чертах работа этой схемы может быть описана следующим образом: 1. Принятая кодовая комбинация вводится в буферное запоминающее устройство (БЗУ) и одновременно в схему вычисления синдрома (СВС), СВС аналогична схеме, изображенной на рис.6.4. 2. Между синдромом и предполагаемой комбинацией ошибок (образующий элемент смежного класса) имеется взаимно однозначное соответствие, определяемое комбинаторной логической схемой (КЛС). КЛС строится таким образом, чтобы на ее выходе появилась 1 всякий раз, когда при выводе информации из БЗУ предполагается появление ошибочного элемента, т.е. 1 на выходе КЛС должна всегда соответствовать старшей степени многочлена ошибок e(x) содержащегося в той части кодовой комбинации, которая еще содержится в БЗУ. 3. Одновременно с появлением из БЗУ каждого элемента производится сдвиг в СВС. Если символ, появляющийся на выходе БЗУ подлежит исправлению, то синдром также должен быть изменен, для чего с выхода КЛС 1 подается как на выход БЗУ, так и на вход СВС. Это делается для того, чтобы синдром соответствовал каждому изменению принятой комбинации. 4. Второй и третий шаги повторяются до тех пор, пока вся принятая комбинация не будет считана из БЗУ. Каждому разряду, считываемому из БЗУ, должен соответствовать сдвиг на один разряд вправо одновременно в БЗУ и в КЛС. 5. После того, как считана вся принятая комбинация, будут исправлены все ошибки, соответствующие образцам ошибок, предусмотренным КЛС, и в разрядах регистра СВС останутся одни нули. Если после окончания процедуры исправления в разрядах регистра содержатся не только нули, то это значит, что обнаружена ошибка, не исправляемая с помощью данной КЛС. Поясним подробнее работу данной схемы на примере исправления однократных ошибок. В этом случае КЛС должна выдавать 1 тогда, когда из БЗУ выходит элемент, в котором предполагается ошибка. С этой целью каждый синдром должен быть однозначно связан с номером элемента кодовой комбинации. Эта связь может быть установлена следующим образом. Принятая комбинация вводится в схему деления на порождающий многочлен и вычисляется остаток от деления данной комбинации на g(x), являющийся синдромом. Как было показано при рассмотрении исправления ошибок кодом Хэмминга, вычисленный синдром имеет такой же вид, как и столбец проверочной матрицы кода, соответствующий искаженному элементу принятой кодовой комбинации Пусть ошибка произошла в i – ом разряде кодовой комбинации. В соответствии с правилом построения матрицы проверок Автоматическое исправление ошибки можно осуществить следующим образом. К разрядам регистра сдвига подключается дешифратор на комбинацию вида 100…0. Выход дешифратора и выход БЗУ подключается ко входам сумматора по модулю 2. Одновременно со сдвигами в схеме деления после вычисления синдрома осуществляется вывод информации из БЗУ. На (n-i)-м сдвиге на входы сумматора поступят от БЗУ искаженный элемент, а от дешифратора - единица. На выходе сумматора искаженный элемент инвертируется, т.е. ошибка будет исправлена. Пример 6.19. Рассмотрим исправление ошибок циклическим (7,4) - кодом с
Поясним работу схемы при исправлении одиночных ошибок на примере. Пусть приемное устройство зарегистрировало комбинацию 1101101. Данная комбинация поступает в СВС и БЗУ. После 7-го такта СВС содержит синдром
Этот процесс представлен в таблице 6.8. Таблица 6.8
Сравните состояние ячеек СВС с состоянием ячеек генератора элементов поля GF(23), начиная с 3 такта (рис 6.9). Таким образом, исправленная комбинация имеет вид 1100101. С выхода схемы проверочные элементы могут не выдаваться к потребителю, т.е. вся процедура может быть окончена после выдачи последнего информационного элемента ТЕМА 7. КОДЫ РИДА СОЛОМОНА (РС) Коды Рида – Соломона, или РС-коды, относятся к недвоичным циклическим кодам, т.е. кодам, символы которых взяты из конечного поля, содержащего q >2 элементов и обозначаемого GF (q), где q – степень некоторого простого числа. Понятие о конечных полях кратко изложено в 6.1. Пусть необходимо передать по каналу связи последовательность из M двоичных элементов вида: 111 … 1 101 … 1 011 … 0 100 … 1. Разобьем эту последовательность на блоки по m элементов и обозначим их через некоторые символы β0, β1, β2, …, βN–1, где Таким образом, передаваемая последовательность представляется в виде некоторой q -ичной последовательности: β0, β 1, …, β S, …, β N–1. Некоторая совокупность q -ичных последовательностей образует q -ичный код. Такие коды, как и двоичные коды, могут быть простыми и помехоустойчивыми. Кодовые комбинации q -ичного кода могут быть представлены в виде многочленов с q -ичными коэффициентами – элементами поля GF (q). При этом q -ичные коэффициенты как элементы поля GF (q) являются в рассмотренном примере многочленами с двоичными коэффициентами. Например: B(x)=β 0 (z)x0+ β 1 (z)x1 + … + β N–1xN–1, где: β i(z)=b0z0+ b1z1 + … + bm–1zm–1. Здесь bi =0,1, а z – формальная переменная многочлена с двоичными коэффициентами.
Кодом Рида-Соломона (РС-кодом) называют циклический (N,K)-код, при N=q–1, множество кодовых комбинаций которого представляется многочленами степени N–1 и менее с коэффициентами из поля GF(q), где q>2 и является степенью простого числа, а корнями порождающего многочлена являются N–K последовательных степеней: α, α 2, α 3, …, α D–, некоторого элемента αÎGF(q), где D– минимальное кодовое расстояние (N,K)-кода. Из определения вытекает, что РС-код является подклассом БЧХ-кодов с m 0=1 [1]. Обычно считают элемент αпримитивным элементом поля GF (q), т.е. все степени α от 1-й до (q –1)-й являются всеми различными ненулевыми элементами поля GF (q). Порождающий многочлен РС-кода имеет степень N – K = D –1 и по теореме Безу может быть найден в виде произведения
В соответствии с теорией циклических кодов, порождающий многочлен g (x) является делителем xN –1 над GF(q). Таким образом, РС-код над полем GF(q) имеет длину кодовой комбинации N=q–1, число избыточных элементов в ней N – K = D –1 и минимальное кодовое расстояние D=N–K+1. Коды с подобным значением минимального кодового расстояния в теории кодирования получили название максимальных. При фиксированных N и K не существует кода, у которого минимальное кодовое расстояние больше, чем у РС-кода. Этот факт часто является веским основанием для использования РС-кодов. В то же время РС-коды всегда оказываются короче всех других циклических кодов над тем же алфавитом. РС-коды длины N < q –1 называют укороченными, а коды длины q (или q +1) – расширенными (удлиненными) на один (или два) символа. В РС-коде может быть выбрано и другое значение m 0, если это оправдано. Рассмотрим некоторые примеры на построение РС-кодов.
Дата добавления: 2014-01-14; Просмотров: 765; Нарушение авторских прав?; Мы поможем в написании вашей работы! |