Лабораторная работа №104 “Построение и реализация рекуррентных кодов” Артюков В

Дипломные работы на заказ

Лабораторная работа №104
“Построение и реализация рекуррентных кодов”
Артюков В.И., гр. А-07-12, вариант 2
Целью данной работы является усвоение принципов построения и технической реализации кодирующих и декодирующих устройств рекуррентных кодов.
В работе рассматривается рекуррентный код (2,1) => используется 1 информационный и 1 проверочный символы, который способен исправлять пачки ошибок длиной ≤4.

Характеристики кода.
Максимальная длина исправляемой пачки ошибок (b) Число ячеек Защитный промежуток (3b + 1)

В кодирующем устройстве (b) В декодирующем устройстве (2.5b)
4 4 10 13

Схемы кодирующего и декодирующего устройств приведены на рис. 1.

Рис. 1 Схема кодирующего и декодирующего устройств

Сформируем последовательности в контрольных точках для различных случаев.
Используем последовательность информационных символов: 000010 000010
А) Формирование последовательности символов в контрольных точках кодирующего и декодирующего устройств при отсутствии помехи.
Последовательность символов в точке К1 является, собственно, последовательностью информационных символов:
К1 0 1 0 0 0 1 0 1 0 0 0 1
Сформируем проверочные символы (точка К2). Три примера получения очередного проверочного символа проиллюстрированы при помощи ‘заливки’ ячеек таблицы: символы из 2 и 4 ячеек регистра суммируются по модулю 2, что, собственно, иллюстрирует работу Кодирующего устройства.
№ такта Состояние ячеек регистра Проверочные символы на выходе сумматора

1 2 3 4

0 0 0 0
1 0 0 0 0 0
2 0 0 0 0 0
3 0 0 0 0 0
4 0 1 0 0 0
5 1 0 0 0 0
6 0 0 0 0 0
7 0 0 1 0 1
8 0 0 0 1 0
9 0 0 0 0 1
10 0 0 0 0 0
11 1 0 0 0 0
12 0 1 0 0 0
13 0 0 1 0 1
14 0 0 0 1 0
15 0 0 0 0 1
16 0 0 0 0 0
17 0 0 0 0 0

Получили:
К2 0 0 0 0 1 0 0 0 1 0 0 0 0 0 1 0 0 …

Так как в данном случае отсутствует помеха, последовательность символов в точке К3примет вид:
К3 00 …

Последовательность символов на выходе кодирующего устройства в точке К4 формируется из последовательности информационных символов К1 и проверочных символов К2:
К1 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 …
К2 0 0 0 1 0 0 1 0 1 0 0 0 1 0 1 0 0 …
К4 00 00 00
00
10 00
01 00
01 00
10 00
01 00 01 00 00 …

Так как в данном случае отсутствует помеха, последовательность символов в точке К5 примет вид неискажённой помехой последовательности в точке К4:
К5 00 00 00 00
10 00
01 00
01 00
10 00
01 00 01 00 00 …

Синхронный коммутатор СК1в Формирователе синдрома поочерёдно выдаёт на выход информационные и проверочные символы, таким образом, в точке К6 формируется последовательность информационных символов последовательности, сформированной в точке К5 (процесс перехода инф. символов К5 из Формирователя синдрома в Узел коррекции через К6 начинается через 4 такта, потому что Формирователь синдрома содержит 4 ячейки памяти – выделено):
К5 00 10 00
00
00
00
01 00
01 00
10 00 01 00 01 00 00 …
К6 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 …

Проверочные символы, сформированные в точке а из неискажённых информационных символов, пришедших на вход Декодирующего устройства, будут идентичны проверочным символам, пришедшим на вход Декодирующего устройства, поэтому в точке К7 суммирование даст последовательность, состоящую из одних нулей:
К5 00 00 00 00
10 00
01 00
01 00
10 00
01 00 01 00 00 …
Проверочн. символы из К2 0 0 0 0 0 0 1 0 1 0 0 0 1 0 1 0 0 …
Символы в точке а 0 0 0 0 0 0 1 0 1 0 0 0 1 0 1 0 0 …
К7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 …

Сформируем последовательность символов в точке К8.
На выходе схемы “НЕ” получим инвертированную последовательность, сформированную в точке К7:
К7 0 …
Выход схемы “НЕ” 1 …

На втором входе схемы “И” получаем последовательность, сдвинутую на два такта относительно последовательности в точке К7 (сдвиг выделен):
К7 0 …
Второй вход “И” 0 0 0 …

На третьем входе схемы “И” получаем последовательность, сдвинутую относительно последовательности в точке К7 на четыре такта (сдвиг выделен), т.е.:
К7 0 …
Третий вход “И” 0 0 0 0 0 …

На выходе схемы “И” (на три входа) получаем последовательность в точкеК8, которая должна исправить нашу последовательность информационных сигналов:
Выход схемы “НЕ” 1 …
Второй вход “И” 0 …
Третий вход “И” 0 …
К8 0 …

Теперь стало ясно, что последовательность символов в точке К9 формируется только из символов, сформированных в точке К6, но сдвинутых на два такта (сдвиг выделен):
К6 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 …
К9 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 …

Таким образом, мы получили на выходе схемы декодирования код, который подали на вход схемы.
Отобразим вместе все коды, полученные в контрольных точках.
К1 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 …
К2 0 0 0 0 0 0 1 0 1 0 0 0 1 0 1 0 0 0 0
К3 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
К4 00 00 00
00
10 00
01 00
01 00
10 00
01 00 01 00 00 00 00
К5 00 00 00
00
10 00
01 00
01 00
10 00
01 00 01 00 00 00 00
К6 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0
К7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
К8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
К9 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0

Б) Формирование последовательности символов в контрольных точках кодирующего и декодирующего устройств для случая корректируемой пачки ошибок.
Формирование кодов в точках К1,К2,К4 будет проходить идентично пункту А расчёта, так как на коды в данных точках никак не может повлиять помеха. Итак, имеем:
К1 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 …
К2 0 0 0 0 0 0 1 0 1 0 0 0 1 0 1 0 0
К4 00 00 00
00
10 00
01 00
01 00
10 00
01 00 01 00 00

Предположим, что в канале связи произошло искажение 3-го, 4-го, 5-го и 6-го символов (см. точку К3):
К3 00 11 11 00 …

Последовательность на выходе канала связи (контрольная точкаК5) примет вид:
К3 00 11 11 00 00 00 00 00 00 00 00 00 00 00 00 00 00 …
К4 00 00 00
00
10 00
01 00
01 00
10 00
01 00 01 00 00
К5 00 11 11
00
10 00
01 00
01 00
10 00
01 00 01 00 00

Искажённые символы выделены.
Аналогично пункту А расчёта, сформируем последовательность символов в точке К6:
К5 00 11 11
00
10 00
01 00
01 00
10 00
01 00 01 00 00 …
К6 0 0 0 0 0 1 1 0 1 0 0 0 0 0 1 0 0

Перед тем как сформировать последовательность символов в точке К7, сформируем последовательность символов в точке а:
№ такта Состояние ячеек регистра Символы в точке а

1’ 2’ 3’ 4’

0 0 0 0
1 0 0 0 0 0
2 1 0 0 0 0
3 1 1 0 0 0
4 0 1 1 0 1
5 1 0 1 1 1
6 0 1 0 1 1
7 0 0 1 0 0
8 0 0 0 1 0
9 0 0 0 0 1
10 0 0 0 0 0
11 1 0 0 0 0
12 0 1 0 0 0
13 0 0 1 0 1
14 0 0 0 1 0
15 0 0 0 0 1
16 0 0 0 0 0
17 0 0 0 0 0

Сформированная в точке а последовательность сравнивается (складывается по модулю 2) с последовательностью проверочных символов, поступающих из канала связи, в результате чего на выходе (см. контрольную точку К7) вырабатывается опознаватель ошибки – синдром:
К5 00 11 11
00
10 00
01 00
01 00
10 00
01 00 01 00 00 …
Проверочн. символы из К5 0 1 1 0 0 0 1 0 1 0 0 0 1 0 1 0 0
Символы в точке а 0 0 0 1 1 1 0 0 1 0 0 0 1 0 1 0 0
К7 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0

Получили К7.
Рассмотрим подробнее последовательность в точке К7.(Будем считать что) произошел наихудший случай – исказилось b символов. Следовательно, будет поражено b/2информационных и b/2 проверочных символов. До поступления первого ошибочного символа на входе регистр содержит безошибочные информационные символы. Поэтому в течение первых b/2тактов в синдроме возникают единицы за счет ошибок в проверочных символах. На этом пачка ошибок заканчивается и в дальнейшем на выходной сумматор формирователя синдрома будут поступать лишь безошибочные проверочные символы. За следующие b тактов единицы формируются в синдроме с начала за счет поступлений ошибочных информационных символов из первого полурегистра, а затем – из второго. Итак последовательность в точке К7 (синдром) содержит:
Единицы на местах ошибок в проверочных символах.
Со сдвигом на b/2 – единицы на местах ошибок в информационных символах.
Еще со сдвигом на b/2 повторяется комбинация, полученная в предыдущем случае.
В соответствии с этим последовательность в точке К7 в рассматриваемом нами примере может быть представлена тремя составляющими:
К7 0 1 1 1 1 1 1 0 …

0 1 1 0 0 0 0 0

0 1 1 0 0 0

0 1 1 0

Теперь видно, что произошла ошибка во2-ом и 3-ем проверочном и 2-ом и 3-ем информационных символах (соответственно в 3, 4, 5, 6 символах общей последовательности).
Проиллюстрируем:
Тип символа И П И П И П И П
Номер внутри типа 1 1 2 2 3 3 4 4
Номер в общей последовательности 1 2 3 4 5 6 7 8

Сформируем последовательность символов в точке К8.
На выходе схемы “НЕ” получим инвертированную последовательность, сформированную в точке К7:
К7 0 1 1 1 1 1 1 0 …
Выход схемы “НЕ” 1 0 0 0 0 0 0 1

На втором входе схемы “И” получаем последовательность, сдвинутую на два такта относительно последовательности в точке К7 (сдвиг выделен):
К7 0 1 1 1 1 1 1 0 …
Второй вход “И” 0 0 0 1 1 1 1 1 1 0 …

На третьем входе схемы “И” получаем последовательность, сдвинутую относительно последовательности в точке К7 на четыре такта(сдвиг выделен), т.е.:
К7 0 1 1 1 1 1 1 0 …
Третий вход “И” 0 0 0 0 0 1 1 1 1 1 1 0 …

На выходе схемы “И” (на три входа) получаем последовательность в точкеК8, которая должна исправить нашу последовательность информационных сигналов:
Выход схемы “НЕ” 1 0 0 0 0 0 0 1 1 1 1 1 …
Второй вход “И” 0 0 0 1 1 1 1 1 1 0 0 0
Третий вход “И” 0 0 0 0 0 1 1 1 1 1 1 0
К8 0 0 0 0 0 0 0 1 1 0 0 0 …

Поскольку корректирующий сигнал формируется через 3b/2=6 тактов, а информационные символы задерживаются только на b=4 такта, то возникает необходимость в дополнительной задержке информационных символов на b/2=2такта. Это осуществляется блоком задержки (сдвиг последовательности в К6выделен). Совместно с сумматором по модулю два он образует устройство исправления ошибок. Итак, сформируем последовательность символов в точке К9:
К6 0 0 0 0 0 0 0 1 1 0 1 0 0 0 0 0 1 0 0 …
К8 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0
К9 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0

Итак, мы получили исправленный код. Обратим внимание на то, что вывод исправленного кода задержан на 6 тактов. Это обусловлено тем, что в Декодирующем устройстве параллельно работает по 6 регистров памяти – формирующих корректирующий сигнал и формирующих информационные символы.
Отобразим вместе все коды, полученные в контрольных точках.
К1 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 …
К2 0 0 0 0 0 0 1 0 1 0 0 0 1 0 1 0 0 0 0
К3 00 11 11 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 11
К4 00 00 00
00
10 00
01 00
01 00
10 00
01 00 01 00 00 00 00
К5 00 11 11
00
10 00
01 00
01 00
10 00
01 00 01 00 00 00 11
К6 0 0 0 0 0 1 1 0 1 0 0 0 0 0 1 0 0 0 0
К7 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 1
К8 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0
К9 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0

В) Формирование последовательности символов в контрольных точках кодирующего и декодирующего устройств для случая пачки ошибок превышающей корректирующую способность кода.
Сформируем коды в точках К1, К2,К4 аналогично пункту Б расчёта. Имеем:
К1 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 …
К2 0 0 0 0 0 0 1 0 1 0 0 0 1 0 1 0 0
К4 00 00 00
00
10 00
01 00
01 00
10 00
01 00 01 00 00

Предположим, что в канале связи произошло искажение 3-го, 4-го, 5-го, 6-го, 7-го и 8-го символов (см. точку К3):
К3 00 11 11 11 00 …

Количество введённых искажений – 6 – превышает корректирующую способность кода.
Последовательность на выходе канала связи (контрольная точкаК5) примет вид:
К3 00 11 11 11 00 00 00 00 00 00 00 00 00 00 00 00 00 …
К4 00 00 00
00
10 00
01 00
01 00
10 00
01 00 01 00 00
К5 00 11 11 11 10 00
01 00
01 00
10 00
01 00 01 00 00

Искажённые символы выделены.
Аналогично пункту Б расчёта, сформируем последовательность символов в точке К6:
К5 00 11 11 11 10 00
01 00
01 00
10 00
01 00 01 00 00 …
К6 0 0 0 0 0 1 1 1 1 0 0 0 0 0 1 0 0

Перед тем как сформировать последовательность символов в точке К7, сформируем последовательность символов в точке а:
№ такта Состояние ячеек регистра Символы в точке а

1’ 2’ 3’ 4’

0 0 0 0
1 0 0 0 0 0
2 1 0 0 0 0
3 1 1 0 0 0
4 1 1 1 0 1
5 1 1 1 1 1
6 0 1 1 1 0
7 0 0 1 1 0
8 0 0 0 1 1
9 0 0 0 0 1
10 0 0 0 0 0
11 1 0 0 0 0
12 0 1 0 0 0
13 0 0 1 0 1
14 0 0 0 1 0
15 0 0 0 0 1
16 0 0 0 0 0
17 0 0 0 0 0

Аналогично пункту Б расчёта, сформируем последовательность символов в точке К7:
К5 00 11 11 11 10 00
01 00
01 00
10 00
01 00 01 00 00 …
Проверочн. символы из К5 0 1 1 1 0 0 1 0 1 0 0 0 1 0 1 0 0
Символы в точке а 0 0 0 1 1 0 0 1 1 0 0 0 1 0 1 0 0
К7 0 1 1 0 1 0 1 1 0 0 0 0 0 0 0 0 0

Аналогично пункту Б расчёта, представим последовательность символов в точке К7 тремя составляющими:
К7 0 1 1 0 1 0 1 1 0 …

0 1 1 0 0 0 0 0 0

0 0 1 0 0 0 0

0 0 1 0 0

Делаем вывод, что произошла ошибка во2-ом и 3-ем проверочном и 3-ем информационном символах (соответственно в 4, 5, 6 символах общей последовательности).
Проиллюстрируем:
Тип символа И П И П И П И П
Номер внутри типа 1 1 2 2 3 3 4 4
Номер в общей последовательности 1 2 3 4 5 6 7 8

Аналогично пункту Б расчёта, получимпоследовательность в точкеК8, которая должна исправить нашу последовательность информационных сигналов:
Выход схемы “НЕ” 1 0 0 1 0 1 0 0 1 1 1 1 1 …
Второй вход “И” 0 0 0 1 1 0 1 0 1 1 0 0 0
Третий вход “И” 0 0 0 0 0 1 1 0 1 0 1 1 0
К8 0 0 0 0 0 0 0 0 1 0 0 0 0 …

Аналогично пункту Б расчёта, получимпоследовательность в точкеК9:
К6 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 1 0 0 …
К8 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0
К9 0 0 0 0 0 0 0 1 0 1 1 0 0 0 0 0 1 0 0

Учитывая задержку вывода в 6 тактов, мы получили код, отличный от кода, который был введён в схему:
К1 0 0 0 0 1 0 0 0 0 0 1 0 0 …
К9 0 0 0 0 0 0 0 1 0 1 1 0 0

Длина пачки ошибок превысила значение, на которое был рассчитан код, что привело к тому,что рекуррентный код не обеспечил исправления ошибок. Более того, при этом произошло “исправление” правильно принятых символов на неправильные.
Отобразим вместе все коды, полученные в контрольных точках.
К1 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 …
К2 0 0 0 0 0 0 1 0 1 0 0 0 1 0 1 0 0 0 0
К3 00 11 11 11 00 00 00 00 00 00 00 00 00 00 00 00 00 00 11
К4 00 00 00
00
10 00
01 00
01 00
10 00
01 00 01 00 00 00 00
К5 00 11 11 11 10 00
01 00
01 00
10 00
01 00 01 00 00 00 11
К6 0 0 0 0 0 1 1 1 1 0 0 0 0 0 1 0 0 0 0
К7 0 1 1 0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 1
К8 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0
К9 0 0 0 0 0 0 0 1 0 1 1 0 0 0 0 0 1 0 0


+7 (812) 389-23-13

Работаем: Пн-Пт, с 10 до 17

+7 (499) 649-65-17

Работаем: Пн-Пт, с 10 до 17