Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

denbnovetsky

.pdf
Скачиваний:
15
Добавлен:
12.05.2015
Размер:
2.28 Mб
Скачать

содержащими в двоичной записи единицы в первом разряде: 1, 3, 5, 7, 9 и т. д. Результат второй проверки дает цифру второго разряда синдрома. Следовательно, второй проверкой должны быть охвачены символы с номерами, содержащими в двоичной записи единицы во втором разряде: 2, 3, 6, 7, 10 и т. д.

Аналогично при третьей проверке должны проверяться символы, номера которых в двоичной записи содержат единицы в третьем разряде: 4, 5, 6, 7, 12 и т. д.

Таким образом, проверочные группы должны иметь вид

Проверочная матрица кода должна иметь n столбцов и р строк. Каждый столбец должен составлять двоичную комбинацию, указывающую номер соответствующей позиции кода. Например, для кода длиной n = 9, обеспечивающего исправление однократных ошибок, количество избыточных символов р = 4. При этом в качестве проверочной может быть выбрана следующая матрица:

Представим в качестве примера простую двоичную комбинацию 10011 кодом Хэмминга. Так как информационными должны быть третий, пятый, шестой, седьмой и девятый символы, то для рассматриваемого кода а3= 1; а5= 0; а6 = 0; а7 = 1; а9 = 1. Из условия обеспечения четности сумм получим следующие значения проверочных символов:

а1 = 1; а2 = 0; a4 = 1; а8 = 1. Следовательно, простому пятиэлементному коду 11011 соответствует девятиэлементный код Хэмминга 101100111.

Пусть теперь при передаче произошло искажение пятого символа, т. е. код принял вид 101110111. Тогда в результате первой проверки получим 1, второй — 0, третьей — 1 и четвертой — 0. Таким образом, в результате проверок получен синдром 0101, указывающий на искажение пятого символа. Исправление ошибки сводится к инвертированию символа на пятой позиции.

Код Хэмминга с кодовым расстоянием dmin = 4 получается путем добавления к коду Хэмминга с dmin = 3 проверочного символа, представляющего собой результат суммирования по модулю два всех символов кодовой комбинации.

Операция декодирования состоит из двух этапов. На первом определяется синдром, соответствующий коду c dmin = 3, на втором — проверяется последнее проверочное соотношение.

Для рассмотренного ранее кода с dmin= 4 проверочная матрица может иметь вид

Дополнительное проверочное соотношение, вводимое для увеличения минимального расстояния кода Хэмминга до dmin = 4, имеет вид

S5 = a1 + a2 + a3 + a4 + a5 + a6 + a7 + a8 + a9 + a10

Избыточность кода Хэмминга Kизб = p/n зависит от количества информационных символов и при изменении k от 4 до 1013 изменяется от 0,429 до 0,098 при dmin = 3 и от

0,5 где 0,0107 при dmin = 4.

Код Хэмминга представляет собой блочный код, который позволяет выявить и исправить ошибочно переданный бит в пределах переданного блока.

с кодовым расстоянием d 3, исправляет одиночные ошибки;

с кодовым расстоянием d 4 , исправляет одиночные и обнаруживает двойные ошибки.

Проверочные символы кода Хэмминга, как и других систематических кодов, вычисляются путем сложения по модулю два информационных символов, расположенных в определенных разрядах кодового слова. При декодировании эти информационные символы вместе с соответствующим проверочным символом .должны удовлетворять проверке на четность (сумма этих символов по модулю два должна равняться нулю). Кроме этого общего требования, для кодов Хэмминга является обязательным, чтобы результат проверок на четность при декодировании искаженного кодового слова указывал также номер разряда, в котором расположен искаженный символ.

Пример:

Кількість переданої інформації k=6, кількість контрольних розрядів r=4, тоді довжина кодової комбінації n=r+k=10. Залежність між k інформаційними символами коду, r

контрольними символами та n – загальною довжиною коду: 2k 2n / (1 n k) , або

2r n 1 k r 1 .Для нашого випадку 24 11 що є вірно. Нехай передати треба число 25 (011001), тоді передаваємий код:

10

9

8

7

6

5

4

3

2

1

0

1

*

1

0

0

*

1

*

*

,де * - позиції контрольних бітів, які відповідають степеням двійки.

Знайдемо контрольну суму за допомогою операції виключаючого АБО(сума по модулю два) над кодами позицій ненульових бітів:

9

1

0

0

1

7

0

1

1

1

3

0

0

1

1

 

1

1

0

1

0011

Приклад операції виключаючого АБО: 0101

0110

Підставивши отримані значення замість зірок, отримаємо код Хемінга для передачі коду

011001:

10 9 8 7 6 5 4 3 2 1

0 1 1 1 0 0 1 1 0 1

Перевіримо правильність коду. Для цього знову найдемо суму за допомогою операції виключаючого АБО над кодами позицій ненульових бітів:

9

1

0

0

1

8

1

0

0

0

7

0

1

1

1

4

0

1

0

0

3

0

0

1

1

1

0

0

0

1

 

0

0

0

0

При сумуванні отримали нулі, отже код складено вірно.

Тепер будемо вважати, що при передачі коду Хемінга 0111001101 перешкода спотворила один із символів, внаслідок чого був прийнятий код 0111011101, який має спотворення у

п’ятому розряді, відраховуючи справа.

 

 

 

 

 

 

 

10

9

8

7

6

5

4

3

2

1

0

1

1

1

0

1

1

1

0

1

Перевіримо прийнятий код: Для цього знову найдемо суму за допомогою операції виключаючого АБО над кодами позицій ненульових бітів:

9

1

0

0

1

8

1

0

0

0

7

0

1

1

1

5

0

1

0

1

4

0

1

0

0

3

0

0

1

1

1

0

0

0

1

 

0

1

0

1

Ми отримали код адреси помилки: 01012=22+20=510. Це свідчить про те, що спотворення відбулося в п’ятому символі відраховуючи справа. Тому помилковий символ 1 треба виправити на 0.

Д39. Циклические коды - характеризуются тем, что при циклической перестановке всех символов кодовой комбинации данного кода образуется другая кодовая комбинация этого же кода.

- комбинация циклического кода;

также комбинация циклического кода.

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

Например, комбинация 1001111 (п=7) будет представлена многочленом

При таком представлении действия над кодовыми комбинациями сводятся к действиям над многочленами. Эти действия производятся в соответствии с обычной алгебры, за исключением того, что приведение подобных членов осуществляется по модулю 2. Обнаружение ошибок при помощи циклического кода обеспечивается тем, что в качестве разрешенных комбинаций выбираются такие, которые делятся без остатка на некоторый заранее выбранный полином G(x). Если принятая комбинация содержит искаженные символы, то деление на полином G(x) осуществляется с остатком. При этом формируется сигнал, свидетельствующий об ошибке. Полином G(x) называется образующим. Построение комбинаций циклического кода возможно путем умножения исходной комбинации А(х) на образующий полином G(x)с приведением подобных членов по модулю 2.

Преимущества:

Возможность обнаруживать и справлять ошибки, возникающие при передаче по информационным каналам связи при относительно небольшой избыточности по сравнению с кодом Хемминга.

Простота схемной реализации.

Особенно эффективен при обнаружении пакетных ошибок. Чем больше избыточность, тем больше ошибок можно обнаружить.

Разновидности циклических кодов. Бывают Боуза - Чоудхури – Хоквингема, РидаСоломона, Решетчтый коды.

Реализация цикличных кодов:

Циклические коды реализуются с помощью сдвиговых регистров. Схема кодирования (образуется с помощью деления на образующий многочлен):

Рис. 5.7. Схема кодирования Ключи к1 и к2 первоначально замкнуты, а ключ к3 – разомкнут. Исходная комбинация

через ключ к1 поступает на выход и через входной сумматор на сдвиговый регистр, где и образуется контрольные символы. Затем ключ к2 замыкается, а к1 и к3 размыкаются. Контрольные символы подаются на выход в след, за информационными символами.

Д-39. Пороговий ефект при виявленні протилежних або ортогональних сигналів.

Пороговый эффект проявляется для всех нелинейных методов модуляции в том, что, начиная с некоторого порогового отношения сигнал / шум на входе приемника, потенциальная помехоустойчивость модуляции резко падает и становится хуже помехоустойчивости линейных видов модуляции. Природа порогового эффекта обусловлена тем, что из-за нелинейности обратного преобразования смеси модулированного сигнала и шума в копию полезного сигнала при больших его уровнях на входе определяется мощностью сигналов, а при больших помехах-мощностью помех. При определенном значении / г ь которое называют пороговым, возникает точка перегиба на графике зависимости hi от h и hz уменьшается более резко по сравнению с линейными видами модуляции.

Д40. Згорткові коди, їх формування, переваги та недоліки.

Сверточные коды являются частным случаем рекуррентных кодов, построенных по

непрерывному аналитическому закону. Последовательность двоичных символов

сообщения при сверточном кодировании на блоки не разбиваются, а формируются

последовательно по мере поступления информационных символов сообщения по

некоторым рекуррентным, обязательно известным на приемной стороне, соотношениям выбранных для данного типа кода. Сверточные коды бывают систематические (место информационных символов определено) и несистематические (сказать о месте информационных символов невозможно).

Для сверточного кода используется система порождающих многочленов (минимум два).

Параметрами сверточного кода, которые влияют на достоверность приема сообщения,

являются:

1)конструктивные параметры кодирующего устройства (k - количество разрядов регистра сдвига; R - скорость формирования сверточного кода, которая характеризует избыточность; система образующих полиномов);

2)длина кодовой комбинации;

3)свободное кодовое расстояние, -определяет возможность корректировать ошибки.

При свѐрточном кодировании преобразование информационных последовательностей в выходные и кодовые происходит непрерывно, то есть последовательность информационных символов при кодировании не разбивается на блоки. Рекуррентными эти коды называются потому, что соотношения, связывающие проверочные символы с информационными справедливы для любого участка информационной последовательности. Кодер двоичного свѐрточного кода содержит сдвигающий регистр из m разрядов и сумматоры по модулю 2 для образования кодовых символов в выходной последовательности. Входы сумматоров соединены с определѐнными разрядами регистра.

Коммутатор на выходе устанавливает очередность посылки кодовых символов в канал связи.

Порождающий многочлен полностью определяет структуру двоичного кодера сверточного кода. В отличие от блоковых кодов, каждый из которых описывается

лишь одним порождающим многочленом, сверточный код описывается несколькими порождающими многочленами. Количество многочленов, которыми описывается сверточный код определяется количеством выходных символов n. Представим последовательность информационных символов, поступающих на вход кодера в виде многочлена: A X a0 a1 X a2 X 2 ..., где Xi — символ оператора задержки на i тактов работы сдвигающего регистра, ai = {0,1} — информационные двоичные символы.

Многочлены, описывающие n последовательностей кодовых символов, поступающих на вход коммутатора кодера а затем в

канал связи, имеют вид: B j X b0j b1j X b2j X ..., где двоичные кодовые символы на j-ом входе коммутатора кодера.

j-й порождающий многочлен сверточного кода имеет

вид: , где двоичные коэффициенты, равные 1, если i-я ячейка сдвигающего регистра через схему суммирования связана с j-ым коммутатором кодера, и равны 0 в противном случае.

Причем, в силу линейности сверточного кода и принятых обозначений получаем: .

Используя представление сверточного кода с помощью порождающих многочленов,

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

В общем случае последовательность коэффициентов j-ого производящего многочлена будет иметь вид и совпадает с порождающей последовательностью кода. Тогда, если — последовательность

кодируемых символов, а — последовательность кодовых символов на j-ом входе коммутатора кодера, то для любого из них, появляющегося в -й момент времени (), можно записать:

Таким образом, каждый кодовый символ выходной последовательности кодера сверточного кода определяется сверткой кодируемой информационной и порождающей последовательности, что и обуславливает название сверточных кодов.

Преимущества и недостатки:

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

Свѐрточные коды эффективно работают в канале с белым шумом, но плохо справляются с пакетами ошибок. Более того, если декодер ошибается, на его выходе всегда возникает пакет ошибок.

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