Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
1. Отсутствие ошибок в канале связи.
а) 01100 [ КОДЕР ] 00101011001 [КАНАЛ СВЯЗИ] 00101011001 [ ДЕКОДЕР ] 00110
б) 10001 [ КОДЕР ] 10000100011 [КАНАЛ СВЯЗИ] 10000100011 [ ДЕКОДЕР ] 10001
2. Ошибка опознана и исправлена верно.
а) 01001 [ КОДЕР ] 00011101010 [КАНАЛ СВЯЗИ] 00011101110 [ ДЕКОДЕР ] 01001
Кодирование : находим в таблице кодирования кодовое слово соответствующее входному.
Искажение помехой: 0000000100
Декодирование:
0 0 0 =0
1 1 1=1
1 1 =0
1 0 1 1=1
1 1 0 0 =0
0 1 =1
Опознаватель 101010 => вектор ошибки 0000000100
Восстановление
00011101110
00000000100
00011101010
Выделение содержимого информационных разрядов 01001
б) 00101 [ КОДЕР ] 00110110011 [КАНАЛ СВЯЗИ] 00111110011 [ ДЕКОДЕР ] 00101
Кодирование: находим в таблице кодирования кодовое слово соответствующее входному.
Искажение помехой: 00001000000
Декодирование:
1 1 0 =0
0 0 1=1
1 1=0
0 1 1 1=1
1 1 1 0=1
0 0 =0
Опознаватель 011010=> вектор ошибки 00001000000
Восстановление
00111110011
00001000000
00110110011
Выделение содержимого информационных разрядов 00101
3. Ошибка опознана но исправлена неверно.
а)1001[Кодер] 100001110 [ канал связи ] 10000110010[декодер] 1010
Кодирование: находим в таблице кодирования кодовое слово соответствующее входному.
Искажение помехой: 00000010001
Декодирование:
0 1 1 =0
0 0 0 =0
1 1 =0
0 0 1 0 =1
0 1 0 1 =0
0 0 =0
Опознаватель 001000 => вектор ошибки 00010000000
Восстановление
10000110010
00010000000
10010110010
Выделение содержимого информационных разрядов 10101
б) 00110[кодер] 01000011101[канал связи] 01010010001[ декодер] 00100
Кодирование: находим в таблице кодирования кодовое слово соответствующее входному.
Искажение помехой: 00010001101
Декодирование:
1 1 0 =0
0 0 0=0
0 0=0
1 0 1 0 =0
0 0 0 0 =0
1 0 =1
Опознаватель 100000 => вектор ошибки 01000000000
Восстановление
01010010001
01000000000
00010010001
Выделение содержимого информационных разрядов 00100
4.Ошибка не обнаруживается.
а) 01110 [ Кодер ] 01111010101 [ канал связи ] 01011110111[дешифратор] 01111
Кодирование : находим в таблице кодирования кодовое слово соответствующее входному.
Искажение помехой: 00100100010
Декодирование:
1 1 0 =0
0 1 1=0
1 1 =0
1 1 1 1=0
0 1 1 0=0
Опознаватель 000000 => вектор ошибки 00000000000
Восстановление не требуется.
Выделение содержимого информационных разрядов 01111
б) 01010 [ Кодер ] 0110100010 [ канал связи ] 00111001000[дешифратор] 01000
Кодирование : находим в таблице кодирования кодовое слово соответствующее входному.
Искажение помехой: 01010001100
Декодирование:
0 0 0 = 0
1 0 1 = 0
0 0 =0
1 0 0 1=0
1 0 1 0 =0
0 0=0
Опознаватель 000000 => вектор ошибки 00000000000
Восстановление не требуется.
Выделение содержимого информационных разрядов 01000
5.Ошибка только обнаруживается
а) 00001 [ Кодер ]00100100010 [ канал связи ] 01000100010[дешифратор] ошибка
Кодирование : находим в таблице кодирования кодовое слово соответствующее входному.
Искажение помехой: 01100000000
Декодирование:
0 0 0 =0
0 0 0 =0
1 1 =0
0 0 0 0 =0
0 1 0 0 =1
1 0 =1
Опознаватель 110000 => вектор ошибки отсутствует
На выходе дешифратора сигнал ошибки.
б) 00011 [ Кодер ] 01110101110 [ канал связи ] 01110100111[дешифратор] ошибка
Кодирование : находим в таблице кодирования кодовое слово соответствующее входному.
Искажение помехой: 0000001001
Декодирование:
1 0 0=1
010=1
11=0
1100=0
1100=0
11=0
Опознаватель 000011 => вектор ошибки отсутствует
На выходе дешифратора ошибка
Построение группового кода для исправления двукратных ошибок.
Исходная информация для построения кода:
Тип исправляемых ошибок некоррелированные
Кратность исправляемых ошибок S =2 ;
Объем кода (число кодируемых сообщений) - Q =5;
1.Расчет числа информационных и избыточных разрядов.
Число информационных и избыточных разрядов определяется из соотношений
2k 1 ≥ Q:
2n-k 1 ≥ n2 + n /2:
где k число информационных разрядов ;
n - число разрядов помехоустойчивого слова;
(n k) число избыточных разрядов;
отсюда k = 3; n =10; n k = 7;
2.Построение таблицы опознавателей ошибок.
Из таблицы видно, что каждой ошибке соответствует свой опознаватель. В таблице не используются двоичные числа, которые соответствуют номерам поврежденных разрядов,
так как тогда у нас получится код Хэмминга
Вектор ошибки 0000000001 0000000010 0000000100 0000001000 0000010000 0000100000 0001000000 0010000000 0100000000 1000000000 0000000011 0000000101 0000001001 0000010001 0000100001 0001000001 0010000001 0100000001 1000000001 0000000110 0000001010 0000010010 0000100010 0001000010 0010000010 0100000010 1000000010 0000001100 0000010100 0000100100 0001000100 0010000100 0100000100 1000000100 |
Опознаватели 0000001 0000010 0000100 0001000 0001111 0010000 0100000 0110011 1000000 1010101 0000011 0000101 0001001 0001110 0010001 0100001 0110010 1000001 1010100 0000110 0001010 0001101 0010010 0100010 0110001 1000010 1010111 0001100 0001011 0010100 0100100 0110111 1000100 1010001 |
Вектор Ошибки 0000011000 0000101000 0001001000 0010001000 0100001000 1000001000 0000110000 0001010000 0010010000 0100010000 1000010000 0001100000 0010100000 0100100000 1000100000 0011000000 0101000000 1001000000 0110000000 1010000000 1100000000 |
Опознаватели 0000111 0011000 0101000 0111011 1001000 1011101 0011111 0101111 0111100 1001111 1011010 0110000 0100011 1010000 1000101 0010011 1100000 1110101 1110011 1100100 0010101 |
3. Построение проверочных равенств.
a1 a5 a8 a10
a2 a5 a8
a3 a5 a10
a4 a5
a6 a8 a10
a7 a8
a9 a10
a1 a5 a8 a10
a2 a5 a8
a3 a5 a10
a4 a5
a6 a8 a10
a7 a8
a9 a10
4.Построение алгоритма кодирования.
a1 = a5 a8 a10
a2 = a5 a8
a3 = a5 a10
a4 = a5
a6 = a8 a10
a7 =a8
a9 = a10
5.Построение таблицы кодирования.
001 010 011 100 101 |
0000011111 0011100011 0011111100 1100100101 1100111010 |
6.Построение декодирующей таблицы.
0000011111 0011100011 0011111100 1100100101 1100111010 |
0000000000 |
0000011110 0011100010 0011111101 1100100100 1100111011 |
0000000001 |
--------------- |
-------------- |
1000011111 111100011 1011111100 0100100101 0100111010 |
1000000000 |
---------------- |
--------------- |
1000011110 1011100010 1011111101 0100100100 0100111011 |
1000000001 |
---------------- |
-------------- |
0000101111 0011010011 0011001100 1100010101 1100001010 |
0000110000 |
---------------- |
-------------- |
1100011111 1111100011 1111111100 0000100101 0000111010 |
1100000000 |
Примеры оптимального помехоустойчивого кодирования для двукратных ошибок.
1 Передача слова без искажения помехой
a) 010 [кодер] 0011100011 [ канал связи ] 0011100011 [дешифратор] 010
б) 100 [кодер] 1100100101 [ канал связи ] 1100100101 [дефифратор] 100
2.Передача кодового слова с искажением помехой в пределах корректирующей способности кода (однократная ошибка обнаруживается и исправляется)
а) 010 [кодер] 011100011 [ канал связи ] 0011100111 [дефифратор] 010
Кодирование : находим в таблице кодирования кодовое слово соответствующее входному.
Искажение помехой: 0000000100
Декодирование:
1 0 1 0 = 0
1 0 1 = 0
1 0 0 = 1
0 0 =0
1 1 0 =0
1 1 =0
0 0 =0
Опознаватель 0000100 => вектор ошибки 0000000100
Восстановление
0011100111
0000000100
0011100011
Выделение содержимого информационных разрядов 010
б) 100 [кодер] 1100100101 [ канал связи ] 1100100111 [дефифратор] 100
Кодирование : находим в таблице кодирования кодовое слово соответствующее входному.
Искажение помехой: 0000000100
Декодирование:
1 0 0 1 = 0
1 0 0 = 1
1 0 1 = 0
0 0 =0
1 0 1 =0
0 0 =0
1 1 =0
Опознаватель 0000010 => вектор ошибки 0000000010
Восстановление
1100100111
0000000010
1100100101
Выделение содержимого информационных разрядов 100
(двукратная ошибка обнаруживается и исправляется)
а) 001 [кодер] 0000011111[ канал связи ] 0000010101 [дефифратор] 001
Кодирование : находим в таблице кодирования кодовое слово соответствующее входному.
Искажение помехой: 0000001010
Декодирование:
1 1 0 0 = 0
0 1 0 = 1
1 1 0 = 0
0 1 =1
0 0 0 =0
0 0 =0
0 0 =0
Опознаватель 0001010 => вектор ошибки 0000001010
Восстановление
0000010101
0000001010
0000011111
Выделение содержимого информационных разрядов 001
б) 011 [кодер] 0011111100 [ канал связи ] 0011111001 [дефифратор] 011
Кодирование : находим в таблице кодирования кодовое слово соответствующее входному.
Искажение помехой: 0000000101
Декодирование:
1 1 1 0 = 1
0 1 1 = 1
0 1 0 = 1
1 1 =0
1 1 0 =0
1 1 =0
0 0 =0
Опознаватель 0000101 => вектор ошибки 0000000101
Восстановление
0011111001
0000000101
0011111100
Выделение содержимого информационных разрядов 011
Внесение ошибки кратности большей чем корректирующая способность кода( ошибка обнаруживается и исправляется неправильно)
а) 001 [кодер] 0000011111[ канал связи ]0000100011 [дефифратор] 010
Кодирование : находим в таблице кодирования кодовое слово соответствующее входному.
Искажение помехой: 0000111100
Декодирование:
1 0 0 0 = 1
1 0 0 = 1
0 0 0 = 0
0 0 =0
1 0 0 =1
0 0 =0
0 0 =0
Опознаватель 0010011 => вектор ошибки 0010100000
Восстановление
0000100011
0011000000
0011100011
Выделение содержимого информационных разрядов 010
б) 010 [кодер] 0011100011[ канал связи ] 0100100001 [дефифратор] 100
Кодирование : находим в таблице кодирования кодовое слово соответствующее входному.
Искажение помехой: 0111000010
Декодирование:
1 0 0 0 = 1
0 0 0 = 0
0 0 0 = 0
0 0 =0
1 0 0 =1
0 0 =0
0 0 =0
Опознаватель 1010001 => вектор ошибки 1000000100
Восстановление
0100100001
1000000100
1100100101
Выделение содержимого информационных разрядов 100
5. Ошибка не обнаруживается.
а) 101 [кодер] 1100111010[ канал связи ]0000011111 [дефифратор] 100
Кодирование : находим в таблице кодирования кодовое слово соответствующее входному.
Искажение помехой: 1100100101
Декодирование:
1 1 0 0 = 0
1 0 1 = 0
1 1 0 = 0
1 1 =0
0 0 0 =0
0 0 =0
0 0 =0
Опознаватель 0000000 => вектор ошибки 0000000000
Восстановление не требуется.
Выделение содержимого информационных разрядов 100.
б) 100 [кодер] 1100100101[ канал связи ]1111000110 [дефифратор] 011
Кодирование : находим в таблице кодирования кодовое слово соответствующее входному.
Искажение помехой: 0000000101
Декодирование:
0 0 1 1 = 0
1 0 1 = 0
1 0 1 = 0
0 0 =0
0 1 1 =0
1 1 =0
1 1 =0
Опознаватель 0000000 => вектор ошибки 0000000000
Восстановление не требуется.
Выделение содержимого информационных разрядов 010
6 Ошибка только обнаруживается.
а) 010 [кодер] 0011100011[ канал связи ]0110001100 [дефифратор] ошибка
Кодирование : находим в таблице кодирования кодовое слово соответствующее входному.
Искажение помехой: 0101101111
Декодирование:
0 0 1 0 = 1
0 0 1 = 1
1 0 0 = 1
1 0 =1
0 1 0 =1
0 1 =1
1 0 =1
Опознаватель 1111111 => вектор ошибки отсутствует
Восстановление не требуется.
На выходе декодера сигнал ошибки.
б) 011 [кодер] 0011111100[ канал связи ]0110011100 [дефифратор] ошибка
Кодирование : находим в таблице кодирования кодовое слово соответствующее входному.
Искажение помехой: 0101100000
Декодирование:
0 1 1 0 = 0
0 1 1 = 0
1 1 0 = 0
1 1 =0
0 1 0 =1
0 1 =1
1 0 =1
Опознаватель 1110000 => вектор ошибки отсутствует
Восстановление не требуется.
На выходе декодера сигнал ошибки.