УДК 621.391.25
На основе кода Слепяна (9,5) синтезирован три-надцатиэлементный код с d=5 предложен алгоритм компенсации избыточности кода,исправляющего ошибки кратности не более двух.
СИНТЕЗ ИЗБЫТОЧНОГО КОДА С d=5 НА БАЗЕ АЛГОРИТМА СЛЕПЯНА (9,5) С КОМПЕНСАЦИЕЙ ИЗБЫТОЧНОСТИ ТАЙМЕРНЫМИ
СИГНАЛАМИ
Н.В. Захарченко* Е. А. Осадчук* М.М. Гаджиев*
*Одесская национальная академия связи им. А.С. Попова
Рассмотрим построение девятиэлементного раз-рядноцифрового (РЦК) кода Слепяна, который относится к числу групповых кодов с разделенными символами: все проверочные символы расположены последовательно вслед за информационными.
В девятиэлементном коде Слепяна (9,5) [1] проверочные элементы определяются согласно уравнениям:
(1)
Соответственно синдромы для этого кода будут:
51 = а1 + a3 + a4 + a5 + a6
52 = a1 + a2 + a4 + a5 + a7
53 = ai + a2 + a3 + a5 + a8
S^ — at + a2 + a3 + a 4 + a^
(2)
Ниже в таблице 1 приведены номера искаженных элементов кратности г < 2 кода Слепяна (9,5) и соответствующие им синдромы, составленные согласно уравнениям (2).
Из таблицы видно, что первым девяти синдромам соответствуют помимо одиночной ошибки еще одна пара ошибок (за исключением первого синдрома, которому соответствуют четыре пары различных ошибок). Последним шести синдромам соответствуют по четыре пары различных ошибок на каждый синдром.
Искаженные элементы, соответствующие синдромам, можно разделить на группы:
■ одиночная и двойная ошибки;
■ двойные ошибки (искаженные информационные элементы, искаженные проверочный и информационный элементы, искаженные только проверочные элементы).
Таким образом, первоочередной задачей является разделение одиночных и двойных ошибок.
Рассмотрим первый синдром, которому соответствуют одна однократная и че-
тыре двукратных ошибки. Рассматриваемый код позволяет исправить ошибку одного из девяти элементов. В случае двукратной ошибки по полученному синдрому декодер в принятой комбинации исправит только однократную ошибку, соответствующую синдрому. И такое исправление будет не верно. Определим удельный вес верного приема, учитывая соответствие однократной и двукратной ошибок первому синдрому.
Вероятность правильного приема комбинации равна сумме вероятностей того, что все девять элементов приняты правильно или что из девяти элементов неправильно принят только один элемент [2]:
Рпп = (1 - Ро )9 + СУо (1 - Ро )9-1 = (1 - Ро )9 + 9Ро (1 - Ро )8
Вероятность появления неверного исправления (двукратной ошибки) составит
Р2 = С9р0(1-Р0)9-2 = 36р2(1 - Р„)7
Так как первому синдрому соответствуют четыре пары двукратных ошибок, то эта вероятность будет в четыре раза больше.
Тогда удельный вес правильного исправления для первого синдрома будет составлять
Qi =
(1 - Ро)9 + 9p0(1 - Po)
(1 - Po)9 + 9po(1 - Po) + 144p2(1 - Po)7
а для синдромов 2 - 9 удельный вес правильного исправления равен
Таблица 1.
№ Синдром Номера иск.элементов № Синдром Номера иск.элементов
1 1111 1; 2+6; 3+7; 5+9; 4+8 9 0001 9; 1+5
2 0111 2 1+6 10 1100 2+3; 4+9; 5+8; 6+7
3 1011 3 1+7 11 1010 2+4; 3+9; 5+7; 6+8
4 1101 4 1+8 12 1001 2+5; 3+8; 4+7; 6+9
5 1110 5 1+9 13 0011 2+7; 3+6; 4+5; 8+9
6 1000 6 1+2 14 0101 2+8; 3+5; 4+6; 7+9
7 0100 7 1+3 15 0110 2+9; 3+4; 5+6; 7+8
8 0010 8 1+4 16 0000 -
a6 = а1 + a3 + a4 + a5
a7 = a. + a2 + a4 + a5
a8 - ai + a2 + a3 + a5
a9 — ax + a2 + a^ + a^
=
(1 - р0)9 + 9р0(1-р0)
(1 - Ро)9 + 9ро(1-Ро) + 36р2(1 - Ро)7
В таблице 2 приведены значения и для
Р0 е (5 10-3 -5 10-5) .
Таблица 2.
Р0 0,005 0,001 0,0005 0,0001 0,00005
а, 0,996533 0,999857 0,999964 0,99999856 0,99999964
0,999131 0,999964 0,999991 0,99999964 0,99999991
Из данной таблицы видно, что для лучших каналов удельный вес правильного исправления увеличивается. В связи с тем, что для большинства получателей исправление двойных ошибок как одиночных недопустимо, произведем разделение однократных ошибок от двойных. Такие функции будет выполнять десятый элемент.
Введя десятый элемент проверки на четность мы отделим все однократные ошибки от двойных, и увеличим минимальное кодовое расстояние. Это можно увидеть в таблице 3 (строка 2).
Таблица 3.
№ Количество элементов в коде Количество комбинаций с = 3...10
3 4 5 6 7 8 9 10
1 9 4 13 8 - 4 1 - -
2 10 - 17 - 8 - 5 - -
3 11 - 8 9 4 4 3 2 -
4 12 - 2 11 8 - 5 4 -
5 13 - - 7 10 4 3 4 2
Для верного и однозначного исправления двукратной ошибки необходимо чтобы dmin > 5 . Число избыточных элементов можно найти из неравенства Р.Вар-шамова [3], зная число элементов первичного кода т:
а-2
(3)
2К >1 ст.
Для передачи пяти информационных элементов (т=5) при dmin = 5 число избыточных элементов со-главсно формуле (3) должно составить К=9.
Посмотрим какие проверочные элементы надо ввести для исправления двукратной ошибки.
Предположим, что передается кодовое слово 0000111100. На приеме получено 0100101100. Полученной кодоваой последовательности будет соответствать первый синдром с возможными парами ошибок 2+6; 3+7; 4+8; 5+9. Добавив к полученному искаженному кодовому слову соответствующие вектора ошибок получим четыре разрешенных кодовых слова, для которых все суммы S1, S2, S3, S4, составленные согласно уравнениям (2), равны нулю.
Таблица 4.
2+6 3+7 4+8 5+9
2+6 0000111100 0100101100 0010110100 0001111000 0000011110
3+7 0110100100 0010110100 0100101100 0111100000 0110000110
4+8 0101101000 0001111000 0111100000 0100101100 0101001010
5+9 0100001110 0000011110 0110000110 0101001010 0100101100
Из этих четырех комбинаций только одна является передаваемой комбинацией, а три остальные будут отличаться от передаваемой на 4 элемента dmin = 4 (они были искажены дважды, изменяя по два разных соответствующих элемента).
Такой метод формирования возможных комбинаций позволяет уменьшить количество анализируемых эталонных кодовых слов.
Анализируя возможные двукратные ошибки следует отметить, что они состоят из одной ошибки в информационной части и одной в проверочной части. Введя проверку на четность 2 и 3 элементов, получим разделение векторов ошибок на две группы: или ошибки будут в элементах 2+6; 3+7 или 4+8; 5+9.
В таблице 3 (строка 3) представлено число кодовых слов с соответствующим расстоянием. Видно, что количество комбинаций с dmin = 4 уменьшилось больше чем в два раза.
Рассмотрим последние шесть синдромов, которым соответствуют четыре пары ошибок. Введем двенадцатый элемент,обеспечивающий проверку на четность четвертого и пятого элементов. Эта проверка позволяет полностью и однозначно определить и, соответ-стветнно правильно исправить, ошибки в девятиэле-ментном коде, которые будут только в проверочных элементах (элементы 6 - 9).
Добавление этого элемента приводит к уменьшению числа кодовых комбинаций для dmin = 4 таблица 3 (строка 4). Для возможности исправления оставшихся двойных ошибок, введем тринадцатый элемент (проверку на четность второго и четвертого элементов). В результате этого исчезнут кодовые комбинации с dmin = 4 (таблица 3, строка 5).
Рассмотрим пример.
Пусть передается кодовая комбинация 00001. В соответствии с равенствами (1), добавив проверочные элементы, получим 000011110 0010. Последние три бита, это проверки на четность, которые были введены. Если принята комбинацию 010010110 0010, то синдром будет равен 1111. К данному синдрому можно отнести ошибки: 1, 2+6, 3+7, 4+8, 5+9. Десятый бит говорит о наличии только двукратной ошибки. Одиннадцатый бит показывает наличие ошибки либо в 3 либо во 2 элементах. Двенадцатый элемент - отсутствие ошибок в 4 и 5 элементах. Тринадцатый элемент показывает наличие ошибки во втором или в четвертом элементе. Так как 12 элемент исключает наличие ошибки в четвертом элементе, следовательно, ошибка во втором эдементе. А значит в принятой кодовой комбинации произошли ошибки в элементах 2+6. Ошибки в других парах элементов (4+8), (5+9), (3+7) исключаются.
Таким образом на основе кода Слепяна (9,5), синтезирован код с d > 5 , что позволяет исправлять двукратные ошибки. К сожалению на один информационный элемент приходится 1,6 элемента проверочных, что существенно снижает кодовую скорость передачи.
За метод компенсации избыточности кода выбираем таймерные сигнальные конструкции (ТСК), в которых расстояние между моментами модуляции не меньше найквистового, но и не кратно ему [4]. Это расстояние кратно некоторой
величине меньшей длительности единичного
интервала ^
( л = —,
У S
S = 2,3,4... ). Выбор таких
0
сигналов обеспечивает на заданном интервале времени получение большего числа N, чем при использовании разрядно-цифровых кодов (РЦК) ( N >> 2т , где т - число единичных сигнальных конструкций длительностью Тс, Т=ту.
Количество реализаций с заданным числом ЗММ (значащих моментов модуляции) определяется [4]:
р ■ (ш-1))!
(4)
Рассмотрим конкретный канал, который описывается моделью Гильберта [5], для которого в "хорошем" состоянии Ь2 > 100 (такая модель соответствует коммутируемому каналу ГТС). Учитывая, что для модема
1
с ЧМ о =- [4], реальное значение среднеквадрати-
4 ■ Ь
ческого отклонения о<0,02 Выберем в качестве А величину равную Д = 0,2■ ^ (S=5). Можно показать, что для получения 213 реализаций можно взять все сигнальные конструкции на интервале Тс = 7^ при i 6 = 9494).
Можно показать [6], что при Д = 20% ^=5) и о = 0,02 вероятность ошибки за счет смещения значащего момента возвращения (ЗМВ) на величину большую ®>~ будет равной:
РоЗМВ=Р|©>2 1 = 2'
= 2-
0,5-Ф(-
20
0,5-Ф(-=-) 2-ст
= 5,8-10~7
2-0,02
Следовательно вероятность верного одного приема ЗММ в сигнальной конструкции в "хорошем" состоя-
нии Р = 1-Р„
,=0,99999942.
Так как используются сигнальные конструкции с различным числом ЗММ iе(1^6) пределим среднее значение числа переходов [4]:
' 1
(3—1)
Для нашего случая i = 4 . Зная среднее число ЗММ определим вероятность верного приема конструкции:
Рвск = [РвЛ =[0,99999942]'=0,9999976
Так как кодовое слово ТСК несет информацию о 13 элементной комбинации РЦК, то вероятность ошибочного приема элемента РЦК в «хорошем» состоянии канала будет
Рвэх=1#^ = 0,999999875
Вероятность ошибочного приема элемента в «хорошем» состоянии после декодирования составит
Р„эх=1-Рвэх =2,5-10-*
Учитывая то, что эта вероятность более чем на 4 порядка меньше вероятности ошибочного приема элемента [4] при разрядно-цифровом кодировании (Рэр и(1>8-:-2,3)-10~3), следует предположить, что суммарная вероятность после преобразования ТСК в РЦК будет меньше. Вызвано это тем, что конструкции ТСК формируются на интервале Тс = 6,7^ вместо три-
6 7
надцати элементов ( к = ^сГ = 0,515 ). Следовательно,
вероятность появления «плохого» состояния канала на интервале ТСК в 2 раза меньше (Рэр«10_3). При наличии кодового перемежителя ошибки на выходе будут независимыми.
Учитывая приведенное - общая вероятность правильного приема комбинации равна сумме вероятностей того, что все тринадцать элементов приняты правильно или что из тринадцати элементов неправильно приняты не более двух элементов:
Рпп = (0,999)13 +13 (0,999)12 ■ 0,001+ +78 ■ (0,999)" ■ 10-6 = 0,9999996
Для сравнения с вероятностью верного приема первичного кода рассчитаем значение эквивалентной вероятности верного приема [2], учитывая, что информационных исходных элементов т=5:
Рэп = 5/0,9999996 = 0,9999999
Р =1-Р =10"7 *эо 1 гэп 117
Таким образом, за счет использования таймерных сигнальных конструкций проведена компенсация избыточности тринадцатиэлементного кода с d = 5 построенного на базе кода Слепяна (9,5), понижена вероятность ошибочного приема на 4 порядка и повышена кодовая скорость почти в два раза ( с 5/13 до 5/6,7).
Литература
1. Захарченко Н.В., Крысько А.С., Захарченко В.Н. Основы кодирования. - Одесса:УГАС, 1999.
2. Кодирование информации. Двоичные коды: Справочник; Под ред: К.Н.Березюка. - Харюв: Вища шк., 1978.
3. Берлекэмп Э. Алгебраическая теория кодирования.
- М.:Мир, 1971.
4. Захарченко В.М. Синтез багатопозицшних часових юдав. - Кшв: „Техшка", 1999.
5. Блох Э.А., Попов О.В., Турин В.Я. Модели источника ошибок в каналах передачи цифровой информации.
- М.: Связь, 1971.
6. Вентцель Е.С. Теория вероятностей. - М.: Наука,
1969.