Лабораторные 101-104 (942787), страница 7
Текст из файла (страница 7)
Очевидно, что в процессе сравнения единица в синдроме может и не образовываться, если одновременно окажется искаженным не только информационный символ, но и проверочный, сформированный с участием данного информационного символа. Для того чтобы исключить такую возможность, информационные и соответствующие им проверочные символы разносятся в канале по времени передачи, что осуществляется посредством ячеек памяти преобразователя. Поскольку предполагается, что за пачкой ошибок следует определенное число неискаженных символов, то одновременное искажение информационных и зависящих от них проверочных символов считается невозможным. Если же длина пачки ошибок превысит значение, на которое рассчитывается код, или между пачками ошибок не будет необходимого числа неискаженных символов, то рекуррентный код не обеспечит исправления ошибок. Более того, при этом может произойти “исправление” правильно принятого информационного символа на неправильный. Анализатор синдрома, входящий в состав блока коррекции, представляет собой логическую схему, определяющую, к какому информационному каналу относится очередной искаженный символ, и формирующую соответствующий импульс коррекции.
Устройство исправления ошибок включает сумматоры по модулю два для каждого информационного канала и буферные регистры, расположенные как до, так и после сумматоров, для выравнивания временных задержек, возникающих при формировании и анализе синдрома.
Выходная последовательность исправленных информационных символов формируется синхронным коммутатором СК2.
Практическая ценность рассматриваемых кодов обусловлена широким распространением каналов передачи информации, в которых преобладают импульсные помехи, вызывающие искажение целого ряда следующих друг за другом символов.
В настоящее время известно много разновидностей рекуррентных кодов. Как правило, они являются следствием развития идей Д.В. Хагельбаргера, использованных им при построении простейших рекуррентных кодов.
4.2. Описание лабораторной работы.
В рассмотренном классе рекуррентных кодов за каждым информационным символом следует проверочный символ (n=2, k=1). Коды этого класса способны исправить пачку ошибок длины ≤ b при условии, что две соседние пачки разделены между собой защитным промежутком 3b+1, т.е. между последним символом данной пачки и первым символом следующей пачки должно быть не менее 3b+1 безошибочных символов. Наибольшая длина пачки b кратна двум. Конкретно исследуется код обладающий способностью исправлять пачки ошибок длиной ≤4. Схемы кодирующего и декодирующего устройств приведены на рис. 4.3.
Заданная преподавателем последовательность информационных символов формируется посредством переключателей наборного поля кодирующей информации (слева).
Рис. 4.3 Схема кодирующего и декодирующего устройств
Будем считать что на вход поступает последовательность информационных символов (контрольная точка К1):
100100111001.
Синхронный коммутатор СК1 выдает на выход поочередно информационные символы и проверочные символы вырабатываемые сдвигающим регистром. Число ячеек памяти в кодирующем регистре равно b(4).
Процесс формирования проверочных символов показан в таблице 4.1.
Следовательно последовательность проверочных символов (контрольная точка К2): 0010110111011.
Общая последовательность символов на выходе кодирующего устройства (контрольная точка К4):
100001100101101111010011
Изменение значений символов в передаваемой последовательности, отражающей влияние помехи, осуществляется с помощью сумматоров по модулю два. Последовательность символов, имитирующая заданную помеху, формируется посредством переключателей наборного поля помехи (справа).
Предположим, что в канале связи произошло искажение 7-го, 8-го и 9-го символов (см. контрольную точку К3). Последовательность на выходе канала связи (см. контрольную точку К5) имеет вид:
1 00001011101101111010011,
где искаженные символы помечены прямоугольником, последовательность информационных символов на входе декодирующего устройства (см. контрольную точку К6):
100010111001.
Последовательность проверочных символов соответственно имеет вид :
0011110111011.
Таблица 4.1
№ такта | Состояние ячеек регистра | Проверочные символы на выходе сумматора | |||
1 | 2 | 3 | 4 | ||
0 | 0 | 0 | 0 | ||
1 | 1 | 0 | 0 | 0 | 0 |
2 | 0 | 1 | 0 | 0 | 0 |
3 | 0 | 0 | 1 | 0 | 1 |
4 | 1 | 0 | 0 | 1 | 0 |
5 | 0 | 1 | 0 | 0 | 1 |
6 | 0 | 0 | 1 | 0 | 1 |
7 | 1 | 0 | 0 | 1 | 0 |
8 | 1 | 1 | 0 | 0 | 1 |
9 | 1 | 1 | 1 | 0 | 1 |
10 | 0 | 1 | 1 | 1 | 1 |
11 | 0 | 0 | 1 | 1 | 0 |
12 | 1 | 0 | 0 | 1 | 1 |
13 | 1 |
Декодирующее устройство состоит из двух частей. Первая часть вырабатывает опознаватель ошибки (синдром), а вторая анализирует синдром и производит само исправление (узел коррекции).
Процесс формирования последовательности символов в точке а показан в таблице 4.2.
Таблица 4.2
№ такта | Состояние ячеек регистра | Символы в точке a | |||
1` | 2` | 3` | 4` | ||
1 | 1 | 0 | 0 | 0 | 0 |
2 | 0 | 1 | 0 | 0 | 0 |
3 | 0 | 0 | 1 | 0 | 1 |
4 | 0 | 0 | 0 | 1 | 0 |
5 | 1 | 0 | 0 | 0 | 1 |
6 | 0 | 1 | 0 | 0 | 0 |
7 | 1 | 0 | 1 | 0 | 1 |
8 | 1 | 1 | 0 | 1 | 0 |
9 | 1 | 1 | 1 | 0 | 0 |
10 | 0 | 1 | 1 | 1 | 1 |
11 | 0 | 0 | 1 | 1 | 0 |
12 | 1 | 0 | 0 | 1 | 1 |
13 | 1 |
Сформированная в точке а последовательность сравнивается с последовательностью проверочных символов, поступающих из канала связи, в результате чего на выходе (см. контрольную точку К7) вырабатывается опознаватель ошибки – синдром.
Последовательность проверочных символов | 0011110111011 |
Последовательность в точке a | 0010101001011 |
Последовательность в контрольной точке К7 | 0001011110000 |
Если ошибок нет, то вырабатываемая в точке а последовательность точно совпадает с последовательностью проверочных символов и суммирование дает последовательность (в точке К7), состоящую из одних нулей. Каждой конкретной пачке ошибок соответствует свой синдром. Определим его структуру.
Рассмотрим подробнее последовательность в точке К7. Будем считать что произошел наихудший случай – исказилось b символов. Следовательно, будет поражено b/2 информационных и b/2 проверочных символов. До поступления первого ошибочного символа на входе регистр содержит безошибочные информационные символы. Поэтому в течение первых b/2 тактов в синдроме возникают единицы за счет ошибок в проверочных символах. На этом пачка ошибок заканчивается и в дальнейшем на выходной сумматор формирователя синдрома будут поступать лишь безошибочные проверочные символы. За следующие b тактов единицы формируются в синдроме с начала за счет поступлений ошибочных информационных символов из первого полурегистра, а за тем – из второго. Итак последовательность в точке К7 (синдром) содержит:
-
Единицы на местах ошибок в проверочных символах.
-
Со сдвигом на b/2 – единицы на местах ошибок в информационных символах.
-
Еще со сдвигом на b/2 повторяется комбинация, полученная в предыдущем случае.
В соответствии с этим последовательность в точке К7 в рассматриваемом нами примере может быть представлена тремя составляющими :
000100000000… |
0001100000… |
00011000… |
Теперь видно, что произошла ошибка в 4-м проверочном и 4-м и 5-ом информационных символах (соответственно в 7-м, 8-м и 9-м символах общей последовательности).
Вторая часть схемы (узел коррекции) позволяет провести исправление ошибок в информационных символах автоматически. Анализатор синдрома построен в точном соответствии с его структурой.