Научная статья на тему 'Коррекция модульных ошибок на основе составных циклических кодов'

Коррекция модульных ошибок на основе составных циклических кодов Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
156
18
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ГРУППОВОЙ (ЦИКЛИЧЕСКИЙ) КОД / КОДЕР / ДЕКОДЕР / МОДУЛЬ ОШИБОК / ПАКЕТ ОШИБОК / ПЕРЕМЕЖЕНИЕ / GROUP (CYCLIC) CODE / ENCODER / DECODER / ERROR MODULE / PACKET ERRORS / INTERLEAVING

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Макейчик Е.Г., Конопелько В.К., Королёв А.И.

Выполнена оценка эффективности предложенного метода коррекции модульных и пакетных ошибок на основе составных циклических кодов и ступенчатого кодирования и декодирования информации. Определены основные параметры канальных кодеков и проведен сравнительный анализ рассчитанных характеристик с параметрами канальных кодеков на основе известных (базисных) кодов. Показано, что для практических целей достаточно использовать коэффициент внутреннего перемежения информационных символов и не более двух-трех ступеней кодирования и декодирования.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

MODULAR ERRORS CORRECTION BASED ON COMPOSITE cyclic codes

The effectiveness evaluation of the proposed method for correction modular and burst errors based on composite and cyclic codes and step encoding and decoding of information is made. The main parameters of the channel codecs are detected and a comparative analysis of the calculated characteristics with channel codec parameters based on the known (basic) codes is realized. It's shown that for practical purposes it's sufficient to use the ratio of internal information symbol interleaving and decoding stages of encoding no more than two or three stages.

Текст научной работы на тему «Коррекция модульных ошибок на основе составных циклических кодов»

Доклады БГУИР

2016 № 5 (99)

УДК 621.391.14

КОРРЕКЦИЯ МОДУЛЬНЫХ ОШИБОК НА ОСНОВЕ СОСТАВНЫХ ЦИКЛИЧЕСКИХ КОДОВ

Е.Г. МАКЕЙЧИК, В.К. КОНОПЕЛЬКО, А.И. КОРОЛЁВ

Белорусский государственный университет информатики и радиоэлектроники П. Бровки, 6, Минск, 220013, Беларусь

Поступила в редакцию 25 апреля 2016

Выполнена оценка эффективности предложенного метода коррекции модульных и пакетных ошибок на основе составных циклических кодов и N (N > 2) ступенчатого

кодирования и декодирования информации. Определены основные параметры канальных кодеков и проведен сравнительный анализ рассчитанных характеристик с параметрами канальных кодеков на основе известных (базисных) кодов. Показано, что для практических целей достаточно использовать коэффициент внутреннего перемежения информационных символов а = 2 и не более двух-трех ступеней кодирования и декодирования.

Ключевые слова: групповой (циклический) код, кодер, декодер, модуль ошибок, пакет ошибок, перемежение.

Общий принцип построения составных циклических кодов

В соответствии с [1-3] принцип построения составных циклических кодов состоит в организации «внутреннего» перемежения (разнесения) информационных символов, участвующих в формировании проверочных уравнений или проверок на четность исходного или базового двоичного группового (циклического) кода.

Величина перемежения информационных символов, участвующих в формировании проверочных символов (проверок), носит название коэффициента перемежения а, который

может быть равным или больше 2(а>2): при а = 1 внутреннее перемежение

информационных символов отсутствует [2, 3].

Составной циклический код формируется из исходного (базового) циклического кода путем перевода показателей степеней порождающего полинома базового кода в степени а раз больше. В общем виде это можно записать как х1 ^ха1, где 1 - максимальная степень порождающего полинома базового циклического кода (ЦК). Подстановка X ^ х"'1 приводит к тому, что между символами строк и столбцов порождающий О (х) и проверочной Н (х) матриц вставляется (а —1) нулевых символов. Если базовый циклический код определяется уравнением вида

хп — 1 = р( х)' И( х), (1)

где р (х) и И (х) - соответственно порождающий и проверочный полиномы базового циклического кода, то составной ЦК будет удовлетворять следующему равенству [1-3]:

ха'п —1 = р (ха1)' И( хак). (2)

Блок информационных и проверочных символов составного ЦК а0,",...,аиЧ состоит из а независимых образующих последовательностей. В каждую 7-ю образующую

последовательность входят символы ai+a.г, где i = 0,1,...,n. Следовательно, каждая такая последовательность является блоком короткого базового циклического кода с порождающим полиномом p (х) с максимальной степенью l. Так как порядок мультипликативной циклической группы полиномов по модулю полинома p(х) равен n, то порядок такой же группы полиномов по модулю полинома p(xa) равен a-n и, следовательно, будет иметь следующие неравенства [1-3]:

(X -l)< 0modp(xa), если -i <a- n. (3)

В этом случае первые строки порождающей G'(x) и проверочной H'(х) матриц составного ЦК рассматриваются как вектор-строки, соответствующие полиномам p (х"'1) и h (xa'k) базового ЦК со вставленными нулевыми символами между смежными символами.

Остальные строки матриц p (х"'1) и h (xa'k ) образуются в результате последовательных (a-1)

циклических сдвигов каждой вектор-строки [1-3].

Из построения H'(х) составного ЦК следует, что первая строка H'(х) осуществляет проверку символов только группы a , следующая строка охватывает проверкой символы только группы a2+a.; и так до последней строки H'(х). В этом случае любая из проверок

включает в себя символы только какой-либо одной группы и, соответственно, каждая группа будет контролироваться l уравнениями проверок базового ЦК [3-5].

Корректирующая способность составного ЦК определяется как корректирующей способностью базового ЦК, так и величиной коэффициента перемежения a и соответствует следующему выражению:

d -1

t <a-1 я = a ——, (4)

кор.с. — кор.б. 2 ^ '

где С,б.< ^ - кРатн°сть ошибок коррекхируюмых базовым циклическим кодом, ^ -

минимальное кодовое расстояние базового циклического кода.

Алгоритм декодирования составного ЦК полностью определяется алгоритмом декодирования базового ЦК, что существенно упрощает практическую реализацию канальных кодеков цифровых систем передачи информации.

Корректирующую способность модульных ошибок составными помехоустойчивыми кодами проиллюстрируем на примерах использования циклического кода Хэмминга, корректирующего случайные ошибки модульного кода с параметрами (24;1б). Коэффициент перемежения а = 2.

Пример 1. Базовый циклический код Хэмминга с параметрами (п;к;^ ) = (7;4;3), р(х) = х3 + х2 +1, к(х) = х4 + х3 + х2 +1, 7 б < ^ -12 = 3 -12 = 1 бит при преобразовании в составной код с параметрами: (а-п; а-к; ) = (2• 7;2• 4;2• 3) = (14;8;6) корректирует как модульную, так и пакетную ошибку кратностью ? <а-¿корс = 2-1 = 2 бита.Алгоритм

декодирования - мажоритарный.

Для доказательства корректирующей способности составного циклического кода Хэмминга необходимо сформировать проверочную матрицу составного кода, используя матрицу базового кода, которая формирует систему связанных проверок. Из представленной проверочной матрицы составного кода (5) видно, что при модульной или пакетной ошибке кратностью два бита сумма по модулю два двух соседних столбцов, соответствующих номерам ошибочных кодовых символов, формирует ненулевой вектор.

Н =

1 0 0 0 1 0 1 0 1 0 0 0 0 0

0 1 0 0 0 1 0 1 0 1 0 0 0 0

1 0 1 0 1 0 0 0 0 0 1 0 0 0

0 1 0 1 0 1 0 0 0 0 0 1 0 0

1 0 0 0 0 0 1 0 0 0 1 0 1 0

0 1 0 0 0 0 0 1 0 0 0 1 0 1

1 0 1 0 0 0 0 0 1 0 0 0 1 0

0 1 0 1 0 0 0 0 0 1 0 0 0 1

(5)

Пример 2. Базовый код с параметрами (п; к) = (24;1б) корректирует модульную ошибку кратностью = 4 бита и имеет проверочную матрицу следующего вида [6]:

Н = 1 т ! -т 1 ! 1 т 0

Ат Ат \ Ат \ Ат \ А1т

"1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0

0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 0 0

0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 0

0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0

1 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0

0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 1 0 0

0 0 1 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0

0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 1

(6)

Данная матрица позволяет записать следующую систему уравнений.

п = а ф а ф а ф а13 ф аи

П2 = а2 ф а6 ф а10 ф а14 ф а18 п3 = а ф а ф ап ф а15 ф а19 п4 = а ф а ф а12 ф а16 ф а20 П5 = а ф а12 ф а15 ф а18 п6 = а ф а ф а16 ф а19

п7 = а ф а ф а ф а20 П = а ф а ф "О ф "З

где ф - знак суммирования по модулю два.

На рис. 1 представлена структурная схема канального декодера составного модульного кода с параметрами (а'п;а-к) = (2-24;2-16) = (64;32), корректирующего модуль ошибок кратностью ^ ^а-^ = 2-4 = 8 бит.

Рис. 1. Схема структурная канального декодера составного модульного кода: БМХ - демультиплексор; БФПиС - блок формирования проверок и синдрома; БВЧС - блок вычисления частных синдромов; БСрС - блок сравнения синдромов; КО - корректор ошибок

32

При наличии в кодовой последовательности плотного модуля ошибок кратности 8 бит, занимающего позиции а ••• а кодовой последовательности, структура синдрома, сформированного по уравнениям

п1с = а © а © © а5 © аз п9с = а © аз © аэ © аз5

П2с = а2 © аю © а18 © а26 © йз4 П10с = а2 © а24 © азо © азб П3с = а © ап © а19 © а27 © % П11с = а © а © % © аЪ1

П4С = а4 © а12 © а20 © а28 © азб П12с = а4 © а10 © а32 © а38

п5с = а © аз © а1 © аэ © а7 п13с = а © а1 © а 7 © а9

П6с = аб © а14 © а15 © а30 © а38 П14с = аб © а12 © а18 © а40

п7с = а © а5 © аб © % © аэ п15с = а © аз © аэ © а25

П8С = а8 © а1б © а17 © а32 © а40 П16с = а8 © а14 © а20 © а26

будет иметь следующий вид: £(х) = 1111 ; 1111 ; 1111 ; 1111. При наличии в кодовой

последовательности модуля ошибок другой структуры или двух и более модулей ошибок, синдром будет содержать нулевые и ненулевые символы, формирующие разные структуры. Канальный декодер составного модульного кода работает следующим образом [6]:

- вычисляется синдром £(х) = (£1, £2 )Г, содержащий 16 двоичных символов (битов);

- при £ (х) = £ (х) = 0 ошибки в принятой кодовой последовательности отсутствуют, или ошибки не обнаруживаются, и сигналы коррекции равны 0;

- если £ (х) = 0, а £2 (х) Ф 0, то ошибки произошли в шестом модуле: кратность модуля

ошибки равна £2 (х) = 8 бит;

- при ^ (х) Ф 0 и (л') Ф 0 вычисляются частные синдромы по правилу £г(х) = £г(х).Дг,/ = 1...5;

- далее частные синдромы сравниваются с символами синдрома Л'; (х) и определяется

номер /, для которого выполняется условие §¡=82. Значение / определяет номер модуля ошибок. Кратность ошибки модуля равно £;

- далее осуществляется коррекция ошибок данного модуля.

Рассмотренный пример показывает возможность эффективного применения внутреннего перемежения информационных символов, для построения составных РС-кодов и кодов Файра, а также возможность организации N(N > 2) ступенчатого параллельного кодирования и декодирования групповых кодов.

Метод и характеристики N (N = 2) ступенчатого кодирования и декодирования информации на основе составных циклических кодов

Рассмотрим принцип построения и определим характеристики двухступенчатого (N = 2) канального кодека на основе составного ЦК. В качестве базового ЦК выберем БЧХ-

код с параметрами (п; к; ) = (15; 7; 5) • Данный код используется в первой ступени канального кодека. Во второй ступени канального кодека используется ЦК Хэмминга с параметрами (п; к; ^02) = (7; 4;3). В составныеЦК БЧХ-код и ЦК Хэмминга реорганизуются с коэффициентом преобразования а = 2. Параметры составного БЧХ-кода будут равны (а-п; а-к; а-) = (2• 15;2• 7;2• 5) = (30;14;10), а ЦК Хэмминга - (14;8;6).

Сущность двухступенчатого кодирования и декодирования информации на основе составного группового (циклического) кода состоит в том, что сформированные кодовые символы второй ступени канального кодека суммируются по модулю два с проверочными символами первой ступени канального кодека. В декодерах первой и второй ступеней

декодирования используется синдромный алгоритм, обеспечивающий высокую скорость декодирования. На рис. 2, 3 приведены обобщенные структурные схемы соответственно кодера и декодера, реализующие двухступенчатое кодирование и декодирование информации на основе составного БЧХ-кода и ЦК Хэмминга.

От

ист..

инф.

ФПСк составного БЧХ-кода Блок формирования ПСП п14 :

: К 6,5

Кб

ФПСкЦК Хэмминга

К

К

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

мв

^ (х)

Рис. 2. Схема структурная канального кодера на основе составного БЧХ-кода и ЦК: МЕ - мультиплексор; ПСП - псевдослучайная последовательность; ФПСк - формирователь

проверочных символов кодера

Рис. 3. Схема структурная канального декодера на основе составного БЧХ-кода и ЦК Хэмминга: ДМХ - демультиплексор; БУ - буферное устройство; БФКП ЦК - блок формирования кодовых последовательностей ЦК Хэмминга; ФПСд1 - формирователь проверочных символов декодера составного БЧХ-кода; ФПСк ЦК - формирователь проверочных символов кодера ЦК Хэмминга

В соответствии с рис. 2 информационные символы ("...а'% ) и проверочные символы (К... К) второго канала кодирования, сформированные на основе составного ЦК Хэмминга, суммируются по модулю два с проверочными символами (К..К14) первого канала кодирования, сформированные на основе составного БЧХ-кода (проверочные символы К и К6 передаются без изменения). В результате чего формируется 14 подпотоков символов псевдослучайной последовательности:

ц = к ф а',...,П = К ф "8 ,...,ц = к ф К',...,п14 = К4 ф Кб.

В канальном декодере (рис. 3) осуществляется одновременно формирование проверочных символов ^К--Кб) первого канала декодирования на основе составного БЧХ-кода

и кодовых символов (а^.а^, К'...К) на основе составного ЦК Хэмминга. Далее осуществляется поэтапно декодирование кодовых последовательностей составного ЦК

а

а

14

а

а

Хэмминга, формирование проверочных символов второго канала декодирования,

восстановление проверочных символов (Ь'.-Ь^) первого канала декодирования и

декодирование кодовых последовательностей составного БЧХ-кода. Для согласования символов кодовых последовательностей каналов декодирования используются два буферных устройства: БУ1 - для согласования по задержке информационных символов (а, ...¿/|4) и БУ: -

для согласования по задержке проверочных символов (Ь15, Ь16) первого канала декодирования.

Оценка эффективности метода двухступенчатого кодирования и декодирования информации на основе составных циклических кодов

Оценка эффективности метода двухступенчатого кодирования и декодирования информации на основе составных циклических кодов выполняется на основе расчета следующих параметров канального кодека: Яс, и гкорр с.

Определение 1. Если и - минимальные кодовые расстояния соответственно составных кодов первой и второй ступеней кодирования и , то минимальное кодовое

расстояние канального кодека будет не менее максимального кодового расстояния одного из составных кодов, т.е.

^ост = тахЦ^ ^02}. (7)

Доказательство данного определения обеспечивается использованием в канальном кодеке двух каналов кодирования и декодирования и двух кодов с разной корректирующей

способностью >. Следовательно, ошибки минимальной кратности (¿корр2<(^02 -1)/2) корректируются обоими кодами, а ошибки максимальной кратности (¿корр 1 <(-1)/2)

корректируются только кодом первой ступени. Таким образом, минимальное кодовое расстояние а?ост канального кодека будет не менее минимального кодового расстояния кода второй ступени кодирования. При = ^02, ^ост = , / е1;2.

Определение 2. Максимальная кратность ошибок корректируемых канальным кодеком на длине пс = щ + п2 бит на основе двух составных кодов удовлетворяет следующему неравенству:

г < г , + г ,, бит (8)

корр.ст. — корр.1 корр.2' V /

где г и г - кратность ошибок корректируемых составными кодами соответственно

первого и второго каналов декодирования.

Доказательство данного определения вытекает из принципа работы канального декодера (рис. 3) Для рассматриваемых в качестве примера составных групповых кодов максимальная кратность

корректируемых ошибок составляет гкорр ст < (й01 - 2)/2 + (й02 - 2)/2 = (10 - 2)/2 + (6 - 2)/2 = 4 + 2 = 6

бит на длине п = щ + щ = 30 + 14 = 44 бита.

Таким образом, предложенный двухступенчатый метод кодирования и декодирования информации на основе составных циклических кодов позволяет корректировать одновременно модульные и случайные ошибки.

Определение 3. Скорость кода двухступенчатого канального кодека больше максимальной скорости передачи составного циклического кода, т.е. Яс = шах{^с, }.

Доказательство определения вытекает из способа формирования символов кодовой последовательности канального кодера и подтверждается численным расчетом для рассматриваемых составных кодов. Общее число информационных символов, входящих в кодовую последовательность составного БЧХ-кода пс = 30 бит, равно

kc=kl+ (П,... Пх j = 14 + 8 = 22 бита, где /с, - количество информационных символов составного БЧХ-кода, П...П = Оу... а%= ^ - количество информационных символов составного ЦК Хэмминга, наложенных на проверочные символы b ...b8 составного БЧХ-кода. Следовательно, R = kc/nc = 22/30 = 0,73 > Rc = k2/n = 8/14 = 0,57 - скорость передачи составного ЦК Хэмминга; R = кс/Пс = 14/30 = 0,46 - скорость передачи составного БЧХ-кода.

Заключение

Предложен метод построения составных групповых кодов, обеспечивающих коррекцию как модульных, так и пакетных, и случайных ошибок. Определены основные характеристики одноступенчатого и двухступенчатого канальных кодеков на основе составных циклических кодов БЧХ и Хэмминга. Установлено, что метод построения канальных кодеков на основе составных циклических кодов обеспечивает формирование кодов с характеристиками, отличными от известных: при равной скорости передачи кодов составные коды и N (N > 2) - ступенчатые канальные кодеки обеспечивают коррекцию ошибок большей

кратности. Для практического применения предложенного метода коррекции модульных (зависимых) ошибок достаточно использования коэффициента внутреннего перемежения информационных символов а = 2 и двух ступеней (каналов) кодирования и декодирования.

MODULAR ERRORS CORRECTION BASED ON COMPOSITE CYCLIC CODES

E.G. MAKEICHIK, V.K. KANAPELKA, A.I. KOROLEV

Abstract

The effectiveness evaluation of the proposed method for correction modular and burst errors based on composite and N (N > 2) cyclic codes and step encoding and decoding of information is

made. The main parameters of the channel codecs are detected and a comparative analysis of the calculated characteristics with channel codec parameters based on the known (basic) codes is realized. It's shown that for practical purposes it's sufficient to use the ratio of internal information symbol interleaving and decoding stages of encoding no more than two or three stages.

Keywords: group (cyclic) code, encoder, decoder, error module, packet errors, interleaving.

Список литературы

1. Питерсон У., Уэлдон Э. Коды, исправляющие ошибки. М., 1976.

2. КолесникВ.Д., МирончиковЕ.Т. Декодирование циклических кодов. М., 1968.

3. Дмитриев О.Ф. Класс составных циклических кодов с простой реализацией. М., 1968.

4. Meggitt J.E. // IRE Transactions on Information Theory. 1961. Vol. 17, № 4. Р. 232-244.

5. Радченко А.Н., Мирончиков Е.Т. // Радиотехника и электроника. 1961. №11. С. 17-21.

6. Конопелько В.К., Липницкий В.А., Дворников В.Д. и др. Теория прикладного кодирования. Минск, 2004.

i Надоели баннеры? Вы всегда можете отключить рекламу.