Синтез кодека кода Рида-Маллера
Выбор и обоснование основных параметров кода. Коды Рида-Маллера первого порядка. Кодирование информации путем умножения исходного информационного сообщения на порождающую матрицу. Разработка структурной и функциональной схем кодера Рида-Маллера.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 24.03.2013 |
Размер файла | 555,2 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Введение
В последнее время передача данных является наиболее быстро развивающейся областью техники. Спутниковая связь, локальные и глобальные сети, волоконно-оптическая технология, цифровые сети, сотовая телефонная связь, цифровая сеть с интеграцией служб и модель взаимодействия открытых систем - все это далеко не полный список примеров быстрого развития отрасли связи.
Но во всех этих отраслях существует одна и та же проблема - возникновение ошибок при передаче информации. Решение этой проблемы комплексно, оно включает в себя огромное число всевозможных технических решений, но одним из самых главных, эффективных и дешевых является помехоустойчивое кодирование.
1. Выбор и обоснование параметров кода
В данном курсовом проекте в качестве помехоустойчивого кода примем код Рида-Маллера первого порядка с числом информационных позиций k=6 и мажоритарным декодером.
Коды Рида - Маллера представляют собой класс линейных кодов над GF(2) c простым описанием и декодированием, осуществляемым методом простого голосования. Как правило, эти коды кодируются таким образом, что в результате получается неразделимый код. РМ-коды нашли широкое применение в различных радиоэлектронных системах. При этом используется однородная и регулярная структура порождающей матрицы G, позволяющее упростить декодирование кодов. По этим причинам коды Рида - Маллера играют важную роль в кодировании (коды Рида - Маллера были использованы при передаче фотографий Марса космическим кораблем Маринер в 1972г.).
К основным параметрам РМ - кодов относятся:
а) - длина кодовой последовательности;
б) - количество информационных символов, входящих в кодовую последовательность;
в) r=n-k - количество проверочных символов;
г) - минимальное кодовое расстояние;
д) l - порядок кода.
Коды Рида-Маллера первого порядка задаются порождающей матрицей G, первая строка которой состоит из единиц. В качестве столбцов остальных m строк используются все двоичные числа длиной m:
Кодирование РМ-кодов осуществляется стандартным образом - путем умножения исходного вектора на порждающую матрицу:
AG=B.
Как правило, РМ-коды декодиркются мажоритарным способом (в последние годы для декодирования РМ-кодов используются процессоры быстрых преобразований).
2. Синтез кодирующего устройства (кодера)
Используя исходные данные и выражения , определим основные параметры кода:
k=m+1 m=5, L=1, , и r=n-k=26 двоичных символов.
Порождающая матрица данного РМ-кода имеет следующеее построение:
Кодирование информации осуществляется путем умножения исходного информационного сообщения Q(x)= на порождающую матрицу, т.е. по правилу
. В этом случая формируются последовательности неразделимого кода, которые содержат по n=32 двоичных символа. Процесс кодирования (формирования кодовых последовательностей) может быть реализован на сумматорах по модуля два. Составим уравнения формирования кодовых символов, которые имеют следующий вид:
2.1 Разработка структурной схемы кодера
Разработку структурной схемы кодера кода Рида-Маллера следует выполнять с определения основных функций кодера, к которым следует отнести:
1. Деление (разделение) символов входного информационного потока Q(х) на информационных подпотоков;
2. Формирование проверочных символов из входных информационных символов;
3. Объединение 32 проверочных символов в кодовый поток или в поток кодовых символов.
Для реализации данных функций необходимо определить функциональные узлы (блоки) кодера и далее объединить их в структурную электрическую схему. Для кода Рида-Маллера первого порядка основными функциональными узлами являются:
1. КРИ -1/6 - коммутатор разделения информации входного потока на информационных подпотоков;
2. ФПСк - формирователь проверочных символов кодера;
3. КОИ -32/1 - коммутатор объединения информации, объединяет 32 проверочных символа в кодовый поток или в поток кодовых символов.
Структурная схема кодера кода Рида-Маллера представлена на рис. 2.1
Рис. 2.1 Структурная схема кодера кода Рида-Маллера первого порядка с (n,k)=(32,6)
2.2 Разработка функциональной схемы кодера
код маллер матрица информационный
Для построения функциональных блоков кодека необходимо обеспечение минимума сложности аппаратной реализации.
В соответствии с уравнениями кодирования и алгоритмом декодирования РМ-кода полностью определяется принцип построения функциональной схемы кодера.
Наиболее простым способом построения КРИ-1/6 является использование двух регистров (RG1, RG2) и блока формирования тактовых частот RG1 и RG2. Оба регистра содержат по ячеек памяти.
Функциональная схема ФПСк реализуется на сумматорах по модулю два.
КОИ-32/1 кодера целесообразно выполнить в виде синхронных мультиплексоров на соответствующее число информационных и управляющих входов, а также формирователя сигналов управления мультиплексором. Формирователь сигналов управления выполнен в виде двоичного счетчика.
Функциональная схема РМ-кода первого порядка с (n,k)=(32,6) представлена на рис. 2.2.
Рис.2.2 Функциональная схема РМ-кода первого порядка с (n,k)=(32,6)
Кодер КРМ работает следующим образом. Символы входного информационного потока Q(x) разделяются в КРИ-1/6 на шесть подпотоков. Информационные символы данных подпотоков поступают одновременно на соответствующие входы ФПСк, выполненного на сумматорах по модулю два. В ФПСк из символов информационных подпотоков формируются проверочные символы. Сформированные проверочные символы поступают на соответствующие входы КОИ-32/1, который объединяет символы проверочного подпотока в единый поток кодовых символов F(x).
2.3 Разработка электрической принципиальной схемы кодера
Язык ассемблера -- это символическое представление машинного языка. Все процессы в машине на самом низком, аппаратном уровне приводятся в действие только командами (инструкциями) машинного языка. Отсюда понятно, что, несмотря на общее название, язык ассемблера для каждого типа компьютера свой. Это касается и внешнего вида программ, написанных на ассемблере, и идей, отражением которых этот язык является.
Для реализации кодера используем микроконтроллер серии PIC17C43, основные параметры которого приведены в таблице 2.3.1 .
Таблица 2.3.1
Особенности |
PIC17C43 |
|
Максимальная частота операции |
33МГц |
|
Диапазон рабочего напряжения |
2,5-6 В |
|
Память Программы x16 (программируемое ПЗУ) |
4K |
|
ОЗУ данных (байты) |
454 |
|
Аппаратный множитель (8 x 8) |
Да |
|
Timer0 (16-разрядный + постсчетчик на 8 битов) |
Да |
|
Timer1 (8 битов) |
Да |
|
Timer2 (8 битов) |
Да |
|
Timer3 (16-разрядный) |
Да |
|
(16-разрядные) вводы сбора данных |
2 |
|
PWM выводы (до 10 битов) |
2 |
|
USART/SCI |
Да |
|
Сброс Включения питания |
Да |
|
Контрольный Таймер |
Да |
|
Внешние Прерывания |
Да |
|
Источники Прерывания |
11 |
|
Кодовая защита памяти программы |
Да |
|
порты ввода - вывода |
33 |
|
Типы пакета |
40-pin DIP 44-pin PLCC 44-pin MQFP 44-pin TQFP |
Особенности микроконтроллера:
- 20 мА втек. и 35 мА вытек. ток, 2 линии ввода/вывода с втек./вытек. током 60 мА; 2 модуля захвата с возможностью внешнего расширения; перемножение 8-ми пар операндов за 1 такт.
Описание выводов микроконтроллера PIC17C43 представлено в таблице 2.3.2.
Таблица 2.3.2
Имя |
Описание |
|
OSC1/CLKIN |
Ввод генератора в кристалле/резонаторе или емкостно-резистивном режиме генератора. |
|
OSC2/CLKOUT |
Вывод генератора. Соединяется с кристаллом или резонатором в кристалле, режим генератора. В емкостно-резистивном генераторе или внешних режимах часов OSC2 порт выводит CLKOUT, который имеет одну четверть частоты OSC1 и обозначает норму{разряд;скорость} цикла команды. |
|
MCLR/VPP |
Ввод/программирование напряжения (VPP) Это - активный низкий ввод сброса к чипу. |
|
RA0/INT RA1/T0CKI RA2 RA3 RA4/RX/DT RA5/TX/CK |
Двунаправленный порт ввода - вывода, кроме RA0 и RA1, которые являются только вводом. RA0/INT может также быть выбран как внешнее прерывание ввода. Прерывание может быть конфигурировано, чтобы осуществлятся по положительному или отрицательный фронту. RA1/T0CKI может также быть выбран как внешний ввод прерывания, которые могут быть конфигурированы, чтобы находиться на положительном или отрицательный фронте. RA1/T0CKI может быть также выбран часами, вводитсят на таймер/счетчике Timer0. Высокое напряжение, высокий поток, открывает порт ввода - вывода линии утечки. Высокое напряжение, высокий поток, открывает порт ввода - вывода линии утечки. RA4/RX/DT может также быть выбран как USART, т.к получает асинхронные или синхронные данные. RA5/TX/CK может также быть выбран как USART, т. к. передает асинхронные или синхронная времена. |
|
RB0/CAP1 RB1/CAP2 RB2/PWM1 RB3/PWM2 RB4/TCLK12 RB5/TCLK3 RB6 RB7 |
ПОРТ B - двунаправленный порт ввода - вывода, порт с конфигурированным программным обеспечением и со слабым напряжением-ups. RB0/CAP1 может также быть линией ввода CAP1. RB1/CAP2 может также быть линией ввода CAP2. RB2/PWM1 может также быть линией вывода PWM1. RB3/PWM2 может также быть линией вывода PWM2. RB4/TCLK12 может также быть внешний ввод часов к Timer1 и Timer2. RB5/TCLK3 может также быть внешний ввод часов к Timer3. |
|
RC0/AD0 RC1/AD1 RC2/AD2 RC3/AD3 RC4/AD4 RC5/AD5 RC6/AD6 RC7/AD7 |
ПОРТ C - двунаправленный порт ввода- вывода. Это - также более низкая половина системной шины 16 битов шириной в режиме микропроцессора или расширенном{продленном} режиме микроконтроллера. В мультиплексной системе шинная конфигурация этих линий - вывод адреса, также как ввод данных или вывод. |
|
RD0/AD8 RD1/AD9 RD2/AD10 RD3/AD11 RD4/AD12 RD5/AD13 RD6/AD14 RD7/AD15 |
ПОРТ D - двунаправленный ввод - вывод Порт. Это - также старший байт 16-разрядной системной входной шины в режиме микропроцессора или расширенный{продленный} режим микроконтроллера. В мультиплексной системе шинная конфигурация этих линий - вывод адреса, также как ввод данных или вывод. |
|
RE0/ALE RE1/OE RE2/WR |
ПОРТ E - двунаправленный порт ввода - вывода. В режиме микропроцессора или расширенном {продленном} микроконтроллерном режиме, это - фиксатор адреса. Адрес нужно запереть на отрицательном фронте ожидаемого времени актуальности адреса вывода. В микропроцессоре или расширенном{продленном} режиме микроконтроллера, этот вывод позволяет управлять выходом(OE) (активный низкий) В микропроцессоре или расширенном{продленном} режиме микроконтроллера, управление выводом (WR) (активный низкий). |
|
TEST |
Испытательный выбор режима. Всегда связывается с VSS для нормальной работы. |
|
VSS |
Общий(земля). |
|
VDD |
Напряжение питания. |
3. Синтез декодирующего устройства (декодера)
Для синтеза декодера кода Рида-Маллера реализующего мажоритарный метод декодирования, необходимо сформировать систему раздельных проверочных уравнений (проверок). Система раздельных проверок формируется на основе порождающей матрицы G и имеет следующую структуру:
Для определения необходимо использовать ранее полученные значения ,а также результат уравнения истинности .
Данный код позволяет обнаружить 15 и исправитьр
3.1. Разработка структурной схемы декодера
К основным функциям декодера относятся:
1. Разделение символов входного потока F(х) на n=32 подпотока.
2. Формирование последовательности проверочных символов декодера.
3. Объединение к=6 проверочных символов декодера в один поток или поток кодовых слов.
Для данного кода Рида-Малера основными функциональными узлами декодера являются:
КРИ-1/32 - коммутатор разделения символов принятого потока F(х) на n=32 подпотоков.
ФПСд - формирователь проверочных символов декодера (аналогичен ФПСк).
КОИ-6/1 - коммутатор объединения информации, объединяет 6 информационных символов в кодовый поток или в поток кодовых символов.
Структурная схема декодера будет иметь следующее построение (рис. 3.2.).
Рис. 3.2 Структурная схема декодера кода Рида-Маллера первого порядка с (n,k)=(32,6)
3.2 Разработка функциональной схемы декодера
В соответствии с проверочными уравнениями РМ-кода полностью определяется принцип построения функциональной схемы декодера.
Наиболее простым способом построения КРИ-1/32 является использование двух регистров (RG1, RG2) и блока формирования тактовых частот RG1 и RG2. Оба регистра содержат по ячеек памяти.
Функциональная схема ФПСд реализуется на сумматорах по модулю два и мажоритарныж элементах.
КОИ-6/1 кодера целесообразно выполнить в виде синхронного мультиплексора на соответствующее число информационных и управляющих входов, а также формирователя сигналов управления мультиплексором. Формирователь сигналов управления выполнен в виде двоичного счетчика.
Функциональной схемы декодера кода Рида-Маллера первого порядка с (n,k)=(32,6) представлена на рис 3.2.
Декодер КРМ работает следующим образом. Кодовый поток F(x) поступает на вход КРИ-1/32, где он разделяется на 32 подпотоков. Далее потоки поступают на вход ФПСд. В ФПСд из символов информационных подпотоков формируются проверочные символы, поступающие на мажоритарные элементы, на выходе которых формируются декодированные символы. В КОИ-1/6 происходит их объединение в единый поток.
Рис. 3.2 Функциональной схемы декодера кода Рида-Маллера первого порядка с (n,k)=(32,6)
3.3 Разработка принципиальной схемы декодера
Для реализации декодера реализующего мажоритарный алгоритм декодирования используем микроконтроллер серии PIC17C43, т. к. реализовать мажоритарный элемент на логических элементах очень сложно. Основные параметры микроконтроллера приведены в таблице 2.3.1, а описание выводов микроконтроллера PIC17C43 представлено в таблице 2.3.2.
Заключение
В данной курсовой работе был разработан кодек кода Рида-Маллера с параметрами (32;6;16), который обнаруживает 15 и исправляет 7ошибок. Для данного кода были построены структурная, функциональная и принципиальная схемы кодирующего и декодирующего устройств. Принципиальные схемы кодера и декодера были реализованы на микроконтроллере PIC17C43.
Литература
1. Конопелько В. К., Липницкий В. А., Дворников В. Д. и др. Теория прикладного кодирования: Учеб. Пособие. В 2 т. Т. 2. - Мн.: БГУИР, 2004. - 398 с.: ил.
2. Блейхут Р. Теория и практика кодов, контролирующих ошибки. Москва: Мир, 1986 г.
3. Мак-Вильямс Ф. Дж., Слоэн Н. Дж. А. Теория кодов, исправляющих ошибки. М.: Связь, 1979 г.
4. Дмитриев В. И. Прикладная теория информации. М.: Высшая школа, 1989г.
5. Королёв А. И. Коды и устройства помехоустойчивого кодирования информации. Минск, 2010.
6. Сташин В. В., Урусов А. В., Мологонцева O. Ф. Проектирование цифровых устройств на однокристальных микроконтроллерах. М.: Энергоатомиздат, 1990г.
Размещено на Allbest.ru
Подобные документы
Разработка кодера и декодера кода Рида-Соломона. Общая характеристика структурных схем кодека циклического РС-кода. Синтез кодирующего и декодирующего устройства. Проектирование структурной, функциональной и принципиальной схемы кодера и декодера.
курсовая работа [937,5 K], добавлен 24.03.2013Разработка алгоритма и программы кодирования и декодирования данных кодом Рида-Малера. Понятие избыточных кодов, их применение. Корелляционный код. Особенности построения простых помехоустойчивых кодов Рида-Маллера. Рассмотрение частных случаев.
курсовая работа [31,9 K], добавлен 09.03.2009Применение коды Файра при необходимости последовательной обработки информации. Синтез кодера и декодирующего устройства. Разработка структурной и принципиальной схемы кодера. Устранение временной задержки при декодировании. Выбор и обоснование кода Файра.
курсовая работа [401,6 K], добавлен 21.03.2013Выбор и обоснование параметров входа, разработка кодека. Исследование кодов, исправляющих ошибки, которые могут возникать при передаче, хранении или обработке информации по разным причинам. Синтез принципиальной схемы парафазного буфера и декодера.
курсовая работа [582,8 K], добавлен 24.03.2013Кодирование и декодирование, преобразование дискретного сообщения в дискретный сигнал. Построение математической модели корректирующего кода. Образующая матрица информационного кода. Модульная структура программы. Спецификация на программные модули.
курсовая работа [98,9 K], добавлен 28.11.2014История классификации и кодирования. Стандартизация передачи записей в электронную историю болезни. Клинические коды Рида RCC. Системы медицинской классификации в Украине. Унифицированная система медицинского языка UMLS. Особенности и классификация кодов.
реферат [38,2 K], добавлен 13.12.2009Непрерывная и дискретная информация. Кодирование как процесс представления информации в виде кода. Особенности процедуры дискретизации непрерывного сообщения. Позиционные и непозиционные системы счисления. Представление информации в двоичном коде.
реферат [117,3 K], добавлен 11.06.2010Определение функций выходных сигналов и сигналов возбуждения. Построение функциональной схемы управляющего автомата. Способы выполнения операции умножения с фиксированной и с плавающей запятой. Получение функциональной ГСА. Кодирование состояния автомата.
курсовая работа [60,9 K], добавлен 15.02.2011Проектирование преобразователя кода (ПК), рассчет его энергопотребления и быстродействия. Составление таблицы истинности ПК. Написание булевых функций, минимизация и преобразование к выбранному базису. Составление структурной схемы преобразователя кода.
курсовая работа [775,3 K], добавлен 09.02.2009Системы сбора и передачи информации. Обоснование выбора кода, способа передачи и синхронизации. Выбор длины посылки, формата кодового перехода. Расчет помехоустойчивости и времени запаздывания. Разработка структурной схемы передающего устройства.
курсовая работа [412,8 K], добавлен 24.06.2013