Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Microsoft Word Document (2).docx
Скачиваний:
7
Добавлен:
01.05.2025
Размер:
19.54 Mб
Скачать

45. Простейшие корректирующие коды. Двоичный код с контролем на четность. Код с постоянным весом. Оценка помехоустойчивости.

Простейшие избыточные коды имеют кодовое расстояние d=2. Они широко применяются когда: 1) в каналах связи наиболее вероятны однократные ошибки; 2) для достижения заданной достоверности передачи достаточно только обнаружения ошибок.

Двоичный код с контролем четности.Этот код является циклическим кодом, у которого образующий полином P(x) = x +1. Такой код можно строить по методике построения циклических кодов. Однако проще следующий алгоритм. К информационным комбинациям простого m-разрядного кода добавляется один контрольный разряд. В контрольном разряде записывают ”1”, если число “единиц” в информационных разрядах нечетное. Символ ”0” записывают, если число “единиц” − четное. В результате общее число ”единиц” в любой кодовой комбинации будет четным. Число комбинаций двоичного кода с контролем на четность

Код с постоянным весом.Здесь каждая разрешенная комбинация имеет постоянный вес W = b1 , т.е. содержит одинаковое число ”1”. Такой код дает следующее число комбинаций

Здесь к неправильному декодированию приводит одинаковое число ис-кажений нулей и единиц. Помехоустойчивость кода можно рассчитать по следующим формулам. Вероятность неправильного декодирования

46. Простейшие корректирующие коды. Инверсный код. Корреляционный код. Оценка помехоустойчивости.

Простейшие избыточные коды имеют кодовое расстояние d=2. Они широко применяются когда: 1) в каналах связи наиболее вероятны однократные ошибки; 2) для достижения заданной достоверности передачи достаточно только обнаружения ошибок. Инверсный код. В основе лежит метод повторения исходной комбинации. При повторении комбинация инвертируется. В результате каждая комбинация простого кода дополняется инвертированной последовательностью своих же символов. Например,

Инверсный код − разделимый, имеет постоянный вес комбинаций. Здесь обнаруживаются все однократные ошибки. Из двукратных не обнаруживаются такие, которые связаны с искажением одних и тех же позиций исходного кода и его дополнения. Поэтому вероятность неправильного декодирования

Корреляционный код. Здесь вводят зависимость между символами. Алгоритм построения. Каждая ”1” в комбинации простого кода заменяется двоичной последовательностью ”10”, а ”0” → ”01”. Число комбинаций этого кода N = 2 в степени n/2 ; избыточность R = 1/2 . Двоичный корреляционный код отличается постоянством числа единиц и нулей в комбинации. Число единиц и нулей равно разрядности m первичного кода. Еще одна особенность этого кода − нет подряд трех и более одинаковых символов. Эти свойства позволяют обнаружить все одиночные ошибки. Кроме того, обнаруживаются ошибки большей кратности, если они не связаны с искажением двоичных символов, соответствующих одному разряду первичного кода.

47. Гpупповой код. Описание и постpоение гpуппового кода (образующая и пpовеpочная матpицы). В основе построения n-разрядных двоичных комбинаций группового кода лежит линейная операция поразрядного суммирования по модулю 2. Комбинация β группового (n,m) кода представляется в виде

где Im − единичная квадратная матрица размерности m × m , у которой на главной диагонали расположены единицы, а все остальные элементы равны нулю; Rm,k − матрица контрольных символов размерности m× k . Матрица Im является образующей матрицей первичного m-разрядного кода. Ее строки представляют собой набор линейно независимых комбинаций первичного кода и соответствуют информационным разрядам b1÷bm группового кода. Матрица Rm,k составляется из контрольных символов. Приписывая справа к матрице Im матрицу R m,k , контрольные символы ставят в соответствие комбинациям первичного кода, входящих в единичную матрицу. Строки контрольной матрицы соответствуют контрольным разрядам c1 ÷ck группового кода. С помощью образующей матрицы могут быть получены все кодовые комбинации группового кода. Строки самой матрицы являются комбинациями группового кода. Остальные комбинации получают поразрядным суммированием по модулю 2 строк образующей матрицы в различных сочетаниях. По сути дела построение образующей матрицы сводится к построению матрицы контрольных символов. Строки матрицы Rm,k должны удовлетворять двум условиям: 1) содержать не менее (d-1) единичных символов; 2) отличаться друг от друга не менее чем в (d-2) разрядах. Если выполнить эти условия не удается, следует увеличить число контроль-ных символов k. Пример 1. Рассмотрим построение образующей матрицы. Пусть m=2,k=2 и d=2. Единичная матрица имеет вид К этой матрице нужно подобрать контрольную матрицу R2,2 , строки которой должны иметь не менее одной единицы (d −1 = 2 −1 = 1) и могут даже не отличаться друг от друга (d − 2 = 2 − 2 = 0) . Можно составить три набора, отвечающих этим условиям: 11, 10, 01. Любое сочетание двух из этих наборов может составить матрицу контрольных символов. Здесь допустимо даже повторение любого набора. Выберем в качестве строк матрицы контрольных символов первые два набора. Тогда Для наглядности над каждой матрицей показаны разряды группового кода,которым соответствуют ее столбцы. Поразрядное суммирование по модулю 2 строк матрицы G2,4 во всевозможных сочетаниях (здесь два сочетания) дает полное кодовое множество:β1 = 1001, β2 = 0110 , β3 = 1111, β4 = 0000 . Вторым способом задания группового кода является проверочная матрица

где Ik − единичная квадратная матрица ранга k, построенная на позициях контрольных символов;

транспонированная матрица контрольных символов, построенная на позициях информационных символов. Проверочная матрица дает связь между информационными и контрольными символами. На этой основе можно построить кодер. Кроме того, она используется для обнаружения и исправления ошибок. Ошибочная комбинация группового кода может быть представлена как где β – безошибочная комбинация; l − двоичная последовательность (комбинация ошибки) длины n, содержащая единицы только в тех разрядах, которые искажены. При отсутствии ошибок имеем

Двоичная последовательность D= d1d2… dk называется синдромом (опознавателем) ошибки. Если синдром состоит из одних нулей, комбинация считается безошибочной. Ненулевая величина синдрома говорит о наличии ошибки. Число ненулевых синдромов равно 2 в степени k −1. Ошибку l можно исправить, если ей соответствует индивидуальный синдром. Если разным ошибкам отвечает один и тот же синдром, то они не различаются и их можно только обнаружить. Вместо (2.1) и (2.2) набор синдромов удобно получать непосредственно из проверочной матрицы. В матрице Hk,n i-й столбец представляет собой синдром одиночной ошибки в i-м разряде кодовой комбинации. Остальные синдромы находят поразрядным суммированием по модулю 2 столбцов проверочной матрицы в различных сочетаниях. Если код исправляет ошибки, то полученные синдромы сводятся в таблицу декодирования. В ней приводятся комбинация ошибки l, вид синдрома D и действие декодирующего устройства: выдача принятой комбинации получателю при нулевом синдроме, стирание принятой комбинации при обнаружении факта наличия неисправляемых кодом ошибок, исправление i-го разряда в принятой комбинации при получении синдрома, соответствующего ошибке в i-ом разряде. Поскольку получателю выдаются только информационные разряды, исправление ошибок в контрольных разрядах обычно не производится.

Пример 2. Составим проверочную матрицу и набор синдромов для груп-пового кода (2,4) из примера 1. Матрица контрольных символов

В данном примере двум разным одиночным ошибкам соответствует оди-наковый синдром D=10. Поэтому код (2,4) не обеспечивает исправление одиночной ошибки. Так как двойной ошибке l = l1l2l3l4 → 0110 отвечает нулевой синдром D=00, то данный код не позволяет обнаруживать все двойные ошибки.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]