СЕРИЯ «ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ.»
УДК 681.325.3
Д.М. Романенко, М. Ф. Виткова
ПРОГРАММНОЕ СРЕДСТВО ДЛЯ ИЗУЧЕНИЯ СВОЙСТВ МНОГОПОРОГОВЫХ ДЕКОДЕРОВ В СИСТЕМАХ ПЕРЕДАЧИ ИНФОРМАЦИИ
Белорусский государственный технологический университет, Минск
Введение. Наблюдаемое в последние годы резкое увеличение информационных потоков, и ужесточение требований к целостности передаваемой и обрабатываемой информации обострили проблему надежного хранения и передачи двоичных данных. Одним из способов решения которой является использование помехоустойчивого кодирования данных с помощью избыточных кодов [1].
Но при этом ключевую роль в процессе исправления ошибок играет именно декодер, и его выбор является важнейшей задачей, решаемой при разработке систем хранения и передачи информации.
Основная часть. В настоящее время для обеспечения высокой достоверности передачи данных успешно используются пороговые декодеры, алгоритм Витерби, коды Рида-Соломона, турбо коды, а также многопороговые декодеры. При этом последнее время активно развивается идея мпогопорогового мажоритарного декодирования [2].
Многопороговый декодер (МПД) - итеративный декодер мажоритарного типа, предназначенный для исправления ошибок, возникающих в процессе передачи информации по каналам связи с шумами или при длительном хранении данных на разнообразных носителях информации.
Принцип МПД основан на исправлении ошибочных символов в зависимости от значения порога на каждой стадии. При этом каждый информационный бит декодируется отдельно на каждой стадии. При выполнении основного шага декодирования все информационные символы сообщения могут перебираться многократно и в любом порядке. При этом часть решений декодера на каких-то символах может быть ошибочной. Некоторые из этих ошибок будут исправлены при следующих попытках декодирования тех же символов.
Целью данного исследования является изучение свойств и оценка эффективности МПД при исправлении ошибок высокой кратности как независимых, так и модульного типа. Исходя из цели исследования, на начальном этапе была поставлена задача создания приложения, моделирующего МПД с определёнными параметрами и с возможностью выбора типа и кратности имитируемых ошибок, корректирующего кода, а также с возможностью имитации реального канала передачи данных.
121
Для создания приложения использованы интегрированная среда разработки программного обеспечения Microsoft Visual Studio 2008 и язык программирования С++. Для разработки GUI-приложения для Microsoft Windows использовалась библиотека классов Microsoft Foundation Class (MFC).
Основными структурными блоками программы является кодер, декодер и блок анализа результатов. На кодер поступает информационное слово и проверочная матрица, что позволяет нам использовать любой код. Кодер рассчитывает проверочные символы и формирует кодовое слово, тут же формируется порождающая матрица. Входными данными на декодере являются кодовое слово с ошибкой, параметры декодера, проверочная и порождающая матрицы.
На основании порождающей матрицы с учетом установленных параметров декодер определяет ошибочные биты. После каждой итерации с использованием проверочной матрицы пересчитываются проверочные символы. После того как все ошибочные биты инвертированы получаем на выходе декодера исправленную информационную последовательность. Анализ полученных результатов подразумевает сравнение исправленной информационной последовательности и исходного информационного слова. В итоге получаем следующие статистические данные:
- полностью исправленные ошибки без новой ошибочной последовательности;
- полностью исправленные ошибки с новой ошибочной информационной последовательностью;
- частично исправленные ошибки без новой ошибочной
последовательности;
- частично исправленные ошибки с новой ошибочной
последовательностью и неисправленные ошибки
На рисунке 1 представлено окно программы для анализа свойств МПД в системах передачи информации. Вначале пользователю необходимо указать файл с проверочной матрицей. С помощью указанной проверочной матрицы осуществляется процесс кодирования.
Пользователь может установить следующие параметры декодера: пороговое значение и количество итераций на каждой стадии.
Пороговое значение рассчитывается на основании проверочной матрицы. Т.к. тестирование программного средства осуществлялось на примере трехмерного линейного итеративного кода с пятью линейно-независимыми паритетами, то верхнее пороговое значение Т = 5, равно количеству
3. В итоге получаем 3 стадии декодирования с пороговыми значениями Т = 5,
Т2 >4, Тз > 3.
Данное программное средство позволяет генерировать ошибки как автоматически, так и вручную. Автоматическая генерация подразумевает два
паритетов. Нижнее пороговое значение рассчитывается как
122
способа генерации: по кратности ошибки, по вероятности появления ошибок. Так же предусмотрена возможность генерации пакета ошибок.
Генерация ошибок по вероятности осуществляется для имитации реальных каналов. Генерация ошибок по кратности осуществляется для изучения свойств кода применительно к реальному каналу с его последующей оптимизацией.
Разработанное программное средство позволило проанализировать эффективность использования метода многопорогового декодирования для исправления как независимых, так и ошибок модульного типа мажоритарно -декодируемыми блочными кодами. Моделирование процесса исправления ошибок осуществлялось с использованием трехмерного итеративного кода с пятью и семью линейно-независимыми ошибками [1].
Рисунок 1 - Окно программы «Многопороговый декодер»
В силу того, что используемый в процессе моделирования код в соответствии минимальным кодовым расстоянием (d=6) позволяет исправлять все одиночные и двойные ошибки, интересным представлялся анализ исправления ошибок, кратностью большей, чем два, например три и четыре, а также ошибок модульного типа высокой кратности.
123
Заключение. На основании проведённого исследования сделаны определены следующие основные закономерности процесса декодирования блочных кодов:
1. Многопороговый декодер позволяет эффективно исправлять многократные ошибки модульного типа при условии корректного выбора помехоустойчивого кода, в том числе и типа проверочных символов. Так для трехмерного итеративного кода с пятью линейно-независимыми паритетами при длине информационной последовательности 512 бит и скорости кода, равной 0.62, возможно исправление всех пакетных ошибок кратностью не превышающей девять, при одновременном исправлении всех одиночных и тройных ошибок, а также 99% тройных и четырехкратных.
2. С увеличением длинны информационной последовательности и с ростом скорости трехмерного линейного итеративного кода наблюдается рост доли исправленных многократных ошибок, кратностью большей, чем (d-1)/2, если d нечетное и (d-2)/2, если d четное.
3. Количество исправленных многократных ошибок (различной кратности) превосходит аналогичные показатели стандартного мажоритарного декодирования не менее чем на 40 %.
4. Многопороговый декодер, например, при использовании с трехмерными итеративными кодами, подвержен эффекту «размножения ошибок» - некоторые корректно принятые биты при декодировании из-за существования ошибок в других битах кодовой последовательности принимаются за ошибочные, что может привести к увеличению числа ошибочных бит в информационной последовательности после декодирования.
Литературные источники
1. Романенко Д.М., Шиман Д.В., Виткова М.Ф. Многопороговое мажоритарное декодирование низкоплотностных кодов // Труды БГТУ. Сер. VI. Физ.-мат. наук и информ. -2011. Вып. XIX. - С. 128-132.
2. Золотарев В. В. Помехоустойчивое кодирование. Методы и алгоритмы: Справочник / В. В.Золотарев, Г. В. Овечкин; под ред. чл.-кор. РАН Ю. Б. Зубарева. - Москва: Горячая линия - Телеком, 2004. - 126 с.
D.M. Romanenko, M.F. Vitkova
SOFTWARE FOR STUDYING OF MULTITHRESHOLD DECODERS PROPERTIES IN
INFORMATION TRANSFER SYSTEMS
Belarusian state technological university, Minsk Summary
This article provides a detailed description of the developed software tools, you can select a method of generating errors, as well as the type and multiplicity of errors. The user can set options such decoder decoding as the number of levels and the threshold value at each stage, error-correcting code generating matrix. The basic laws of errors correction by multithreshold decoders have been defined on the basis of the conducted research. Based on these results conclusions are made on the application multithreshold decoding in data transmission systems.
124