-
Анализ заданного кода и метода декодирования
В данной курсовой работе производится разработка принципиальной схемы устройства декодирования методом свертки. Для этого используется сверточный код Вайнера-Эша.
Класс двоичных свёрточных кодов, исправляющих одну ошибку и называемых кодами Вайнера-Эша, аналогичен классу кодов Хэмминга. Для каждого натурального m существует ((m+1)2m,(m+1)(2m-1))-код Вайнера-Эша, определяемый проверочной матрицей H’(2m-1,2m-1-m)-кода Хэмминга. Это – проверочная [m*(2m-1)]-матрица, в которой все столбцы различны и ненулевые. Определим множество [1*(2m-1)]-матриц P1,…,Pm через строки H’. Обозначим через P0 [1*(2m-1)]-матрицу, все элементы которой равны единице. Тогда проверочная матрица кода Вайнера-Эша запишется в следующем виде:
P0 1 0 0 0 0 0 …
P1 0 P0 1 0 0 0
P2 0 P1 0 P0 1 0
…
Pm 0 …
0 0 Pm 0
Теорема.: Минимальное расстояние кода Вайнера-Эша равно 3. Таким образом, он является свёрточным кодом, исправляющим одну ошибку.
Код Вайнера-Эша в данной работе будет обладать следующими параметрами:
Размер кода информационных символов:
Размер кадра кодовых символов:
Длинна памяти кода:
Информационная длинна слова:
(1)
Кодовая длинна блока:
(2)
Таким образом кодирующее устройство к трем информационным символам кадра добавляет один проверочный символ, кодируемый по определенному правилу.
После того как информационная последовательность закодирована в полное кодовое слово, она передается по зашумленному каналу. Канал вносит ошибку в информационную последовательность, прибавляя к коду шумовое слово е:
e=[e1, e2,e3,e4,e5,e6,e7,e8,e9,e10,e11,e12 ]; (3)
Полученное слово описывается последовательностью:
r=[r1,r2,r3,r4,r5,r6,r7,r8,r9,r10,r11,r12]; (4)
После того как кодовое слово r приходит на вход декодера, по тем же правилам, что и при кодировании, определяется значение контрольного бита, который далее сравнивается с четвертым(проверочным) символом принятого кадра. Следует заметить, что декодирующее устройство как и кодирующее работают не со словом в целом, а разбивают его на кадры.
Сравнивая контрольный бит с проверочным, при их совпадении в первую ячейку синдромного регистра записывается 0, что указывает на отсутствие ошибки (1 – если ошибка есть):
s=[s1,s2,s3]; (5)
По синдрому s находиться вектор ошибок , с помощью которого исправляется принятая последовательность.
Так как символы синдрома так же определяются по определенному правилу, то они выявляют картину искажений в переданном кодовом слове.
В заключении можно отметить, что при возникновении ошибки в проверочном символе вследствие прохождения кодовой последовательности через зашумленный канал, код, попав в декодер, не будет исправлен. Данную проблему можно решить только при добавлении избыточности к коду, т.е. добавление еще нескольких бит, для проверки и устранения ошибки уже в проверочном символе кодовой последовательности.