![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Пусть - матрица размера 22k× n, строками которой являются нулевая последовательность и все последовательности Голда; А - матрица, полученная из
преобразованием 0→1 1→-1;M1 и М2 - последовательности максимальной длины с проверочными полиномами h1(X) и h2(X), выбранные для образования кода Голда. Обозначим К1 и К2 соответствующие коды максимальной длины. Каждый код состоит из нулевой последовательности и всех циклических перестановок последовательности максимальной длины. Ансамбль последовательности Голда является прямым произведением множеств K1 и К2.
Упорядочим эти последовательности в матрице следующим образом. В строках с номерами 1, 2k ∙ j +1,j=1,2,…,2K-1, разместим слова кода К1 в порядке возрастания информационной части (первые k символов), т.е. в первой строке запишется слово из нулей A0 в строке с номером 2K+1 - слово A1, первые k символов которого образуют число 1, а в строке с номером 2*2+1 - слово А2, первые к символов которого образуют число 2, и т.д. Эти строки называют образующими. В остальных строках матрицы
запишем суммы по модулю два элементов кода К2 с соответствующей образующей строкой Аj. Построенная таким образом матрица
имеет следующий вид:
Матрица представляет собой разложение кода Голда на смежные классы по подкоду К2.
Для реализации декодирования кодов Голда по методу максимального правдоподобия необходимо вычислить векторно-матричное произведение.
Для реализации декодирования кодов Голда по методу максимального правдоподобия необходимо вычислить векторно-матричное произведение (ВМП) кодовой матрицы и входного вектор-сигнала. Для декодирования кодов Голда применяют два алгоритма вычисления ВМП, которые различаются по способу факторизации кодовой матрицы.
Переставим столбцы матрицы при помощи подстановки и получим матрицу Адамара. Известно, что для матриц Адамара справедливо рекуррентное соотношение
Из чего следует, что матрицу А можно представить в виде:
где В1 - матрица размера 22к-1х(2k-1-1), а В2 - матрица размером
22k-1х2k-1. Эта процедура деления может быть продолжена рекурсивно с матрицами B1 и В2.
Разобьем вектор входного сигнала на две части X = (Х1,Х2)T, где Х1 имеет длину 2k-1-1, a X2 - длину 2k-1. Тогда:
Y = А∙X = (В1Х1 + В2Х2,В1Х1 - В2Х2)T.
Если известны произведения В1Х1, В2Х2, то для вычисления АХ гре- буется выполнить 2k операций. Эти вычисления сводятся к умножению вектора Yk-1 = (В1Х1,В2Х2)T на матрицу:
Ск = Н2⨂I2⨂.... ⨂I2,
где I2 - единичная матрица порядка два, а знак ⨂обозначает прямое произведение матриц. Для вычисления произведения В1Х1 и B2X2 можно снова воспользоваться структурными свойствами матриц В1 и В2, а именно:
Блок I1 имеет размер 22k-2 х(2к-2-1), а блоки l 2, q1,q2 - размер
22k-2x2k-2. Аналогично предыдущему выполнение этих операций эквивалентно умножению на матрицу:
Ск-1 = I2 ⨂Н2 ⨂I2 ⨂....⨂I2.
Эта итеративная процедура закончится на i-м шаге, где i равно минимальному решению неравенства 2k-i≥2k-i
Неравенство определяет размер блочных подматриц, на которые делится матрица А.. Блоки первого столбца имеют размер 22к-iх(2k-i -1), а остальные блоки - размер 22k-iх2k-i. Все они образуются первыми 22k-i строками матрицы А. Число различных блоков равно 2i. Обозначим их γ0,γ1,…,γ2i-1. Характерной чертой матриц γj,j=1,..., 2i-1, является то, что
в своих строках они содержат либо полный код, либо часть слов полного кода с повторениями. Поэтому умножение на эти матрицы не сложнее, чем умножение на матрицу полного кода.
Исходная матрица теперь может быть записана в следующей факторизованной форме:
Умножение вектора на любую их матриц γj не сложнее, чем умножение на матрицу полного кода. Поэтому количество операций для вычислений не превышает 22ks(2k-i), где s(2k-i)≈0.5.
39. Код с проверкой на четность итеративные коды.
Код с проверкой на четность
1. Такой код образуется путем добавления к передаваемой комбинации, состоящей из к информационных символов неизбыточного кода, одного контрольного символа (0 или 1), так чтобы общее число единиц в передаваемой комбинации было четным. Таким образом, общее число символов n в передаваемой комбинации:
n=k+ 1 В первом столбце приведены примеры
k | m | n = k+m |
11011 0 11011 1 00010 1 11101 0 11111 1 |
передачи отдельных комбинаций пятиразрядного двоичного кода на все сочетания (k - символы).
Во втором столбце к этим комбинациям приписывается контрольный символ 1, если сумма единиц в кодовой комбинации нечетная, или 0, если сумма единиц четная. В нашем примере длина исходной кодовой комбинации k =5 позволяет при таком числе разрядов передать N =25=32 кодовые комбинации. И хотя приписывание контрольного символа и увеличивает разрядность кода до n =6, число передаваемых комбинаций остается прежним. Поэтому общее число комбинаций.
N=2n-1
Таким образом, этот код обладает избыточностью, т.к. в нашем примере вместо N =26=64 комбинаций может быть послано только N =26-1=32 комбинаций.
В кодировании избыточности определяется отношением контрольных символов m к информационным k в одном слове:
(3-8)
Для пятиразрядного кода с проверкой на четность И=1/5. Очевидно, что чем длиннее кодовая комбинация, тем меньше избыточность и больше экономичность кода. Добавление контрольного символа увеличивает кодовое расстояние в передаваемых комбинациях от d =1 до dmin= 2.
На приемной стороне производится так называемая проверка на четность. В принятых комбинациях подсчитывается количество единиц: если оно четное, считается, что искажений не было. Тогда последний контрольный символ отбрасывается и записывается первоначальная комбинация. Очевидно, что четное число искажений такой код обнаружить не может, т.к. число единиц при этом снова будет четным.
В то же время этот код может обнаружить не только одиночные, но и тройные и пятерные ошибки и т.д. ошибки, т.е. любое возможное нечетное число ошибок, т.к. сумма единиц в принятой кодовой комбинации становится нечетной. Однако если велика вероятность появления многократных ошибок, такой код использовать нецелесообразно, т.к. несмотря на то, что можно обнаружить все слова с нечетным количеством ошибок, число кодовых комбинаций с четным числом ошибок окажется велико, и передача будет сопровождаться большими искажениями.
По изложенному принципу строится код с проверкой на нечетность.
2 итеративные коды
Дата публикования: 2015-01-26; Прочитано: 668 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!