
- •Постановка задачи
- •Практическая часть
- •Систематический код
- •Производящая матрица
- •Проверочная матрица
- •Первая разрешенная кодовая комбинация
- •00100 0110 – Ошибка в 3-м разряде
- •Вторая разрешенная кодовая комбинация
- •01000 0101– Ошибка во 2-м разряде
- •Третья разрешенная кодовая комбинация
- •Четвертая разрешенная кодовая комбинация
- •Пятая разрешенная кодовая комбинация
- •01000 0101 – Ошибка во 2-ом разряде
- •Список литературы
Постановка задачи
Построить помехоустойчивый систематический код для исправления ошибок кратности a.
Задана разрядность кодовой комбинации N. Определить количество информационных разрядов k и количество проверочных разрядов r. Построить производящую и проверочную матрицу. Получить не менее M разрешенных кодовых комбинаций. Построить уравнения проверки. Определить номера проверочных и информационных разрядов. Для каждой из M разрешенных кодовых комбинаций построить тесты: 1) количество ошибок a; 2) количество ошибок a-1; 3) количество ошибок a+1; 4) количество ошибок 0. Показать в тестах способ обнаружения и исправления ошибки.
Таблица 2.1 – Значения для выполнения работы
Вариант |
Тема |
N |
M |
a |
8 |
3 |
9 |
5 |
Max |
Практическая часть
Нахождение a=max
Предположим, что а=Мах=2. Проверим достоверность этого утверждения с помощью граничной оценки Хэмминга:
r= log2(ΣCnt) = log2(C90 + C91 + C92)= log246=5,52 ≈6
r≥6, n-r=k, k=9-6=3
k≥a =>систематический код возможно реализовать.
Теперь предположим, что а=Мах=3. Проверим достоверность и этого утверждения с помощью граничной оценки Хэмминга:
r= log2(ΣCnt) = log2(C90 + C91 + C92 +C93)= log2130≈7
r≥7, n-r=k, k=9-7=2
k<a => систематический код не возможно реализовать.
И, следовательно, максимальным допустимым значением а является 2, т.е.
кратность ошибки a=2:
dmin≥2a+1, dmin≥5
r= log2(ΣCnt) = log2(C100 + C101 + C102)= log246≈6
r≥6, n-r=k, k=9-6=3
(n,k)=(9,3)
k≥a =>систематический код возможно реализовать.
Избыточность кода: W=r/n=(n-k)/n=(9-3)/9=0.67
Скорость кодирования: V=k/n=3/9=0.33 (бит/с)
Теперь построим матрицу D: Dk (n-k) = D3*6
dmin-1=5-1=4 - единиц в строке
Значит, из 26 возможных вариантов, нам подходят следующие:
000000 |
010000 |
100000 |
110000 |
000001 |
010001 |
100001 |
110001 |
000010 |
010010 |
100010 |
110010 |
000011 |
010011 |
100011 |
110011 |
000100 |
010100 |
100100 |
110100 |
000101 |
010101 |
100101 |
110101 |
000110 |
010110 |
100110 |
110110 |
000111 |
010111 |
100111 |
110111 |
001001 |
011000 |
101000 |
111000 |
001001 |
011001 |
101001 |
111001 |
001010 |
011010 |
101010 |
111010 |
001011 |
011011 |
101011 |
111011 |
001100 |
011100 |
101100 |
111100 |
001101 |
011101 |
101101 |
111101 |
001110 |
011110 |
101110 |
111110 |
001111 |
011111 |
101111 |
111111 |
D3*6=1| 001111
2| 101101
3| 111001
Проверяем, сколько единиц содержит сумма данных комбинаций по модулю два:
D(D1,D2)=100010
D(D1,D3)=110110
D(D2,D3)=010100
Сумма, по модулю, двух любых строк полученной матрицы должна содержать 3 или более единицы. Но среди подходящих чисел, в которых не менее 4 единиц (выделены выше), невозможно подобрать три таких двоичных комбинации, чтобы они удовлетворяли данному условию при их попарном сложении.
Отсюда, приходим к выводу, что а=Мах=1. Далее рассчитаем значения необходимые для построения матрицы А.
Для исправления ошибки кратности а, необходимо найти минимальное кодовое расстояние dmin:
.
Применив граничную оценку Хэмминга, получим количество проверочных разрядов:
- биноминальный
коэффициент
Систематический код – это групповой n-значный код в котором k символов является информационными, а n-k являются проверочными, избыточными.
- проверочные.
Количество информационных разрядов:
- информационные.
Избыточность
кода:
.
Скорость
кодирования:
.