Читайте также: |
|
Код с проверкой на четность. Такой код образуется путем добавления к передаваемой комбинации, состоящей из к информационных символов неизбыточного кода, одного контрольного символа (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.
На приемной стороне производится так называемая проверка на четность. В принятых комбинациях подсчитывается количество единиц: если оно четное, считается, что искажений не было. Тогда последний контрольный символ отбрасывается и записывается первоначальная комбинация. Очевидно, что четное число искажений такой код обнаружить не может, т.к. число единиц при этом снова будет четным.
В то же время этот код может обнаружить не только одиночные, но и тройные и пятерные ошибки и т.д. ошибки, т.е. любое возможное нечетное число ошибок, т.к. сумма единиц в принятой кодовой комбинации становится нечетной. Однако если велика вероятность появления многократных ошибок, такой код использовать нецелесообразно, т.к. несмотря на то, что можно обнаружить все слова с нечетным количеством ошибок, число кодовых комбинаций с четным числом ошибок окажется велико, и передача будет сопровождаться большими искажениями.
По изложенному принципу строится код с проверкой на нечетность.
Код с постоянным числом единиц и нулей в комбинациях.
Общее число кодовых комбинаций в двоичном коде с постоянным весом равно: N = Сln= (3-9)
где l - число единиц в слове длиной n.
Код c52 | Код c73 |
Наиболее употребляемыми являются пятиразрядный код с двумя единицами (N = c52= 10) и саморазрядный код с тремя единицами (N = с73= 35).
Эти коды более помехоустойчивые, чем код с проверкой на четность, т.к. позволяют обнаруживать большее число искажений.
Правильность принятых кодовых комбинаций в кодах определяется путем подсчета количества единиц, и если, например, в коде с c52 принято на две единицы, а в коде c73 не три единицы, то в передаче произошла ошибка. Очевидно, что код c73 может обнаружить все одиночные ошибки, т.к. в этом случае в комбинации будет либо две единицы, либо четыре. Кроме того, этот код позволяет обнаружить часть многократных ошибок (двойные, тройные и т.п.), за исключением случаев, когда одна из единиц переходит в нуль, а один из нулей в единицу (такое двойное искажение называется смещением). При двойных смещениях (переход двух единиц в нуль и двух нулей в единицу) искажение также не обнаруживается.
Все сказанное правомочно и для кода c52.
Распределительный код. Это также разновидность кода на определенное число сочетаний. В данном случае на сочетание cln.. В любой кодовой комбинации длины n содержится только одна единица. Число кодовых комбинаций распределительного кода равно:
N = cln=n (3-10)
Кодовые комбинации при n =6 можно записать: 000001, 000010, 000100, 001000, 010000, 100000.
Сложение по модулю 2 двух комбинаций показывает, что они отличаются друг от друга на кодовое расстояние d= 2.
На рисунке показаны 3 кодовые комбинации: 100, 010, 001 для кода n =3. В системах телемеханики этот код нашел широкое применение из-за простой схемной реализации.
Код с числом единиц, кратным трем. Этот код образуется путем добавления к k информационным символам двух дополнительных контрольных символов (m = 2), имеющих такие значения, чтобы сумма единиц посылаемых в линию кодовых комбинаций была кратной трем. Примеры комбинаций такого кода представлены в таблице:
k | m | n = k+m |
Такой код позволяет обнаружить все одиночные ошибки и любое четное количество ошибок одного типа (например, только переход 0 в 1). Не обнаруживаются двойные ошибки различных типов (т.е. смещения) и ошибки одного типа, кратные 3.
На приеме полученная комбинация проверяется на кратность 3. При наличии такой кратности считается, что ошибок не было, два контрольных знака отбрасываются и записывается исходная комбинация.
Дата добавления: 2015-08-10; просмотров: 143 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Коды Хэмминга | | | Код с удвоением элементов (корреляционный код). |