![]() |
РУБРИКИ |
Передача информации по каналу с решающей обратной связью |
РЕКЛАМА |
|
Передача информации по каналу с решающей обратной связьюПередача информации по каналу с решающей обратной связьюАннотацияТема: Передача информации по каналу с решающей обратной связью. Данная выпускная работа посвящена использованию помехоустойчивых кодов, в частности, циклического кода, у которого кодовое расстояние равно 4. В работе излагаются этапы и результаты разработки программы, реализующей кодирование циклическим кодом (14,9), приводятся анализ поставленной задачи, ход разработки, результаты решения. Также разработаны структурная, функциональная и принципиальная схемы, реализующие кодирование, декодирование, исправление и обнаружение ошибок циклическим кодом (14,9). Содержание
Деятельность людей связана с переработкой и использованием материалов, энергии и информации. Соответственно развивались научные технические дисциплины, отражающие вопросы технологии, энергетики и информатики. Информационная техника является сравнительно новой отраслью, получающей наибольшее развитие на этапе разработки и применения электронных вычислительных машин (ЭВМ) и автоматизированных систем управления (АСУ). Информационная наука теперь находит применение в самых разнообразных областях теории и практики. Центральной ветвью является теория связи, созданная Шенноном на основе теории вероятностей. С передачей и обработкой информации связаны действия любого автоматического устройства, поведение живого существа, творческая деятельность человека, развитие науки и техники, экономические и социальные преобразования в обществе и сама жизнь. Для более эффективного использования информации необходимо обмениваться информацией, что невозможно без её передачи по каналам связи. При передаче информации по каналам связи может происходить искажение передаваемой информации. Для предотвращения потерь полезной информации существуют различные методы защиты. Одним из них является кодирование информации при помощи помехозащищённых кодов. Двоичный код на все комбинации не является помехозащищённым, так как его комбинации отличаются друг от друга лишь в одном разряде, что не позволяет на приёмной стороне обнаружить и исправить возникшие ошибки. В этой связи возникает необходимость построения помехозащищённого кода. Помехозащищённые коды - это коды, которые позволяют обнаруживать и исправлять ошибки, то есть корректировать полученные сообщения. Для достижения помехозащищенности можно ввести избыточность добавлением дополнительных контрольных разрядов. Существует много различных алгоритмов построения помехозащищённых кодов. В данной работе рассматривается код (14,9). Он относится к группе циклических кодов. А именно, он относится к циклическим кодам, обнаруживающим 1 и исправляющим 1 ошибку. Циклические коды являются основным классом групповых помехоустойчивых кодов и используются для исправления и обнаружения ошибок, возникающих при передаче информации по каналу связи. Устройства, обнаруживающие и исправляющие ошибки, построенные на основе циклического кода, часто применяются в различных информационных системах. 1. Постановка задачи1.1 Анализ технического задания В соответствии с техническим заданием требуется построить математическую модель циклического кода с кодовым расстоянием 4, для количества букв алфавита сообщений 256. Требуется рассчитать длину кода и его корректирующую способность, найти образующую матрицу кода. Разработать программу, реализующую кодирование и декодирование разработанным кодом. Реализовать схему для его кодирования и декодирования на уровне функциональной и принципиальной схемы. Также необходимо определить функции решателей, включенных в канал обратной связи, разработать функциональную и принципиальную схему решателей. Расчетно-пояснительная записка содержит: Введение; Содержание;. Постановочную часть; 2. Разработку схемы кодирующего, декодирующего и решающих устройств; 3.Описание разработанной программы; 4.Результативную часть; 5.Выводы и заключение; 6.Список литературы; 7.Приложения; В записке содержатся следующие приложения: Структурную схему передачи данных с РОС; Функциональная схема кодера и решателя кодера; Функциональная схема декодера и решателя декодера; Принципиальная схема кодера и решателя кодера Перечень элементов; Принципиальная декодера и решателя декодера; Перечень элементов; Документированный текст программы решателя декодера; Временные диаграммы; Документированный текст программы; Экранные формы; Техническое задание 1.2 Теоретическое введение 1.2.1 Способы передачи информации по каналам связиПередача информации с повторением (накоплением). Такой метод передачи применяют для повышения достоверности при отсутствии обратного канала, хотя нет принципиальных ограничений для его использования и при наличии обратной связи. Иногда такой метод классифицируют как прием сообщений с накоплением. Сущность метода заключается в передаче одного и того же сообщения несколько раз, запоминании принятых сообщений, сравнении их поэлементно и составлении сообщения, включая элементы, выбранные «по большинству». Предположим, что трижды передана одна и та же кодовая комбинация 1010101. Во всех трех передачах она подверглась воздействию помех и была искажена:1000100111110110100011010101Приемник поразрядно сравнивает три принятых символа и проставляет те символы (под чертой), количество которых в данном разряде преобладает.Существует и другой метод передачи информации с накоплением, при котором производится не посимвольное сравнение, а сравнение всей комбинации в целом. Этот метод проще реализуется, но обеспечивает более плохие результаты.Таким образом, высокая помехоустойчивость метода передачи информации с повторением (накоплением) основана на том, что сигнал и помехи в канале не зависят друг от друга и изменяются по разным законам (сигнал периодичен, а помеха случайна), поэтому повторяющаяся комбинация в каждой передаче, как правило, будет искажаться по-разному. Вследствие этого на приеме накопление, то есть суммирование сигнала, возрастает пропорционально числу повторений, тогда как сумма помехи возрастает по другому закону. Если считать, что помехи и сигнал независимы, то суммируются средн-ие квадраты и средний квадрат суммы возрастает пропорционально первойстепени. Поэтому при n повторениях отношение сигнал/помеха увеличивается в n раз, причем это происходит без увеличения мощности сигнала. Однако это достигается за счет усложнения аппаратуры и возрастания времени передачи или полосы частот в случае, если сигнал передается на нескольких частотах одновременно во времени. Кроме того, при зависимых ошибках и пачках ошибок помехоустойчивость системы снижается.Передача информации с обратной связью. Помехоустойчивость передачи без обратной связи (ПБОС) обеспечивается следующими способами: помехоустойчивым кодированием, передачей с повторением, одновременной передачей по нескольким параллельным каналам. В ПБОС применяются обычно коды с исправлением ошибок, что связано с высокой избыточностью и усложнением аппаратуры. Передача с обратной связью (ПОС) во многом устраняет указанные недостатки, так как позволяет применять менее помехоустойчивые коды, обладающие, как правило, меньшей избыточностью. В частности, можно использовать коды с обнаружением ошибок. Преимуществом обратного канала является также возможность контроля работоспособности объекта, принимающего информацию. При ПОС вводят понятие прямого канала, т.е. канала от передатчика к приемнику, например передается сигнал команды с пункта управления (ПУ) на контролируемый пункт (КП). Обратным каналом при этом явится передача сообщения с КП на ПУ о принятии сигнала команды, причем по обратному каналу могут передаваться как сообщение только о том, что сигнал принят на входе КП (в этом случае контролируется лишь прохождение сигнала по каналу связи), так и сведения о полном выполнении команды. Возможна и обратная связь, дающая сведения о поэтапном прохождении сигнала команды по тракту приема. Рассмотрим отдельные виды передачи с обратной связью. Передача с информационной обратной связью (ИОС). Если сообщение передается в виде непомехозащищенного кода, то в кодирующем устройстве данный код может быть преобразован в помехозащищенный. Однако, поскольку в этом обычно нет необходимости, кодирующее устройство представляет собой регистр для превращения простого параллельного кода в последовательный. Одновременно c передачей по прямому каналу сообщение запоминается в накопителе на передатчике (рис.1.1а). На контролируемом пункте принятое сообщение декодируется и также запоминается в накопителе. Однако получателю сообщение передается не сразу: сначала оно поступает через обратный канал на пункт управления. В схеме сравнения ПУ происходит сравнение принятого сообщения с переданным. Если сообщения совпадают, то формируется сигнал «Подтверждение» и происходит передача последующих сообщений (иногда перед посылкой последующего сообщения на КП сначала посылается сигнал «Подтверждение» о том, что предыдущее сообщение было принято верно и с накопителя можно передать информацию получателю). При несовпадении сообщений, что свидетельствует об ошибке, формируется сигнал «Стирание». Этот сигнал запирает ключ для прекращения передачи очередного сообщения и посылается на КП для уничтожения записанного в накопителе сообщения. После этого с ПУ производится повторная передача сообщения, записанного в накопителе. Рис.1.1а. Способ передачи информации с ИОС. В системах с ИОС ведущая роль принадлежит передающей части, так как она определяет наличие ошибки, приемник только информирует передатчик о том, какое сообщение им получено. Имеются различные варианты передачи с ИОС. Так, существуют системы с ИОС, в которых передача сигналов происходит непрерывно и прекращается лишь при обнаружении ошибки: передатчик посылает сигнал «Стирание» и повторяет передачу. Системы с ИОС, в которых по обратному каналу передается вся информация, переданная на КП, называются системами с ретрансляционной обратной связью. В некоторых системах с ИОС передается не вся информация, а только некоторые характерные сведения о ней (квитанции). Например, по прямому каналу передаются информационные, а по обратному каналу -- контрольные символы, которые будут сравниваться на передатчике с предварительно записанными контрольными символами. Имеется вариант, в котором после проверки принятого по обратному каналу сообщения и обнаружения ошибки передатчик может либо повторить его (дублирование сообщения), либо послать дополнительную информацию, необходимую для исправления (корректирующая информация). Число повторений может быть ограниченным или неограниченным. Обратный канал используют для того, чтобы определить, необходима ли повторная передача информации. В системах с ИОС повышение достоверности передачи достигается путем повторения информации только при наличии ошибки, тогда как в системах без обратной связи (при передаче с накоплением) повторение осуществляется независимо от искажения сообщения. Поэтому в системах с ИОС избыточность информации значительно меньше, чем в системах с ПБОС: она минимальна при отсутствии искажений и увеличивается при ошибках. В системах с ИОС качество обратного канала должно быть не хуже качества прямого во избежание искажений, которые могут увеличить число повторений. Передача с решающей обратной связью (РОС). Переданное с передатчика по прямому каналу сообщение принимается на приемнике (рис.1.1б), где оно запоминается и проверяется в декодирующем устройстве (декодере). Если ошибок нет, то из накопителя сообщение поступает к получателю информации, а через обратный канал на передатчик подается сигнал о продолжении дальнейшей передачи (сигнал продолжения). Если ошибка обнаружена, то декодер выдает сигнал, стирающий информацию в накопителе. Получателю сообщение не поступает, а через обратный канал на передатчик подается сигнал о переспросе или повторении передачи (сигнал повторения или переспроса). На передатчике сигнал повторения (иногда называемый решающим сигналом) выделяется приемником решающих сигналов, а переключающее устройство отключает вход кодера от источника информации и подключает его к накопителю, что позволяет повторить переданное сообщение. Повторение сообщения может происходить несколько раз до его правильного приема. Рис.1.1б. Способ передачи информации с РОС. При передаче с РОС ошибка определяется приемником. Для этого передаваемое сообщение должно кодироваться обязательно помехозащищенным кодом, что позволяет приемнику выделить разрешенную комбинацию (сообщение) из неразрешенных. Это означает, что передача с РОС осуществляется с избыточностью. Достоверность передачи в системах РОС определяется выбором кода и защитой решающих сигналов повторения и продолжения. Последнее не представляет особых трудностей, так как эти сигналы несут одну двоичную единицу информации и могут передаваться достаточно помехоустойчивым кодом. Системы с РОС, или системы с переспросом, подразделяют на системы с ожиданием решающего сигнала и системы с непрерывной передачей информации. В системах с ожиданием передача новой кодовой комбинации или повторение переданной происходит только после поступления на передатчик сигнала запроса. В системах с непрерывной передачей происходит непрерывная передача информации без ожидания сигнала запроса. Скорость передачи при этом выше, чем в системах с ожиданием. Однако после обнаружения ошибки по обратному каналу посылается сигнал переспроса и за время прихода на передатчик с последнего уже будет передано какое-то новое сообщение. Поэтому системы с непрерывной передачей необходимо усложнять соответствующей блокировкой приемника, чтобы он не принимал информацию после обнаружения ошибки. Для сравнения эффективности системы без обратной связи, в которой применяется код Хэмминга с исправлением одной ошибки, и системы с РОС, использующей простой код, вводят понятие коэффициента эффективности. Этот коэффициент учитывает уменьшение вероятности ошибочного приема и затраты на его достижение, выигрыш в защите от ошибок (в случае применения указанных кодов), относительное снижение скорости передачи и схемную избыточность, связанные с использованием разных кодов. Итоговое сравнение показало, что в отличие от системы без обратной связи, использующей сложный код, система с РОС дает выигрыш в 5,1 раза. Высокая эффективность систем с РОС обеспечила их широкое распространение. Сравнительный анализ достоверности передачи систем с ИОС и РОС, показал, что: 1) системы с ИОС и РОС обеспечивают одинаковую достоверность передачи при одинаковых суммарных затратах энергии сигналов в прямом и обратном каналах при условии, что эти каналы симметричны и имеют одинаковый уровень помех; 2) системы с ИОС обеспечивают более высокую достоверность передачи, чем Системы с РОС при относительно слабых помехах в обратном канале в отличие от прямого. При отсутствии помех в обратном канале системы с ИОС обеспечивают безошибочную передачу сообщений по основному каналу; 3) при сильных помехах в обратном канале более высокую достоверность обеспечивают системы с РОС; 4) при пачках ошибок в прямом и обратном каналах более высокую достоверность обеспечивают системы с ИОС. 1.2.2 Основные понятия о помехозащищенном кодированииПомехозащищенными (или корректирующими) называются коды, позволяющие обнаружить и исправить ошибки в кодовых комбинациях. Отсюда и деление этих кодов на две большие группы: 1) коды с обнаружением ошибок; 2) коды с обнаружением и исправлением ошибок. Принципы обнаружения и исправления ошибок кодами хорошо иллюстрируются с помощью геометрических моделей. Любой n-элементный двоичный код можно представить n-мерным кубом (рис.1.2), в котором каждая вершина отображает кодовую комбинацию, а длина ребра куба соответствует одной единице. В таком кубе расстояние между вершинами (кодовыми комбинациями) измеряется минимальным количеством ребер, находящихся между ними, обозначается d и называется кодовым расстоянием Хэмминга. Таким образом, кодовое расстояние -- это минимальное число элементов, в которых любая кодовая комбинация отличается от другой (по всем парам кодовых слов). Например, код состоит из комбинаций 1011, 1101, 1000 и 1100. Сравнивая первые две комбинации, путем сложения их по модулю 2 находим, что d=2. Сравнение первой и третьей комбинаций показывает, что и в этом случае d=2. Наибольшее значение d=3 обнаруживается при сравнении первой и четвертой комбинаций, а наименьшее d=1 -- второй и четвертой, третьей и четвертой комбинаций. Таким образом, для данного кода минимум расстояния dmin=l. При n=1 n-мерный куб превращается в прямую длиной d=1, на одном конце которой располагается 1, а на другом -- 0. При n = 2 четыре возможные комбинации (N=22=4) располагаются на четырех вершинах квадрата. При этом комбинации 00 и 11, а также 10 и 01 отличаются друг от друга в двух разрядах, т.е. d=2. Кодовое расстояние между двумя комбинациями двоичного кода равно числу единиц, полученных при сложении этих комбинаций по модулю 2, например 1001=11 и 0011=11. Такое определение кодового расстояния удобно при большой разрядности кодов. Так, складывая комбинации 10110101101 10000000010 00110101111, определяем, что кодовое расстояние между ними d = 7. При n = 3 восемь кодовых комбинаций размещаются в вершинах трехмерного куба. Рис.1.2. Геометрическая модель двоичных кодов Трехмерный куб строится так (рис.1.2), что одна из его вершин лежит в начале координат. Каждой вершине куба приписывается кодовая комбинация по следующему правилу: на i-м месте кодовой комбинации ставится 0, если проекция этой вершины на i-ю ось координат равна нулю, и 1, если проекция равна единице. Например, требуется узнать, какую следует записать комбинацию в вершине A6 (рис.1.2). Проецируя эту вершину на ось Х1, получим единицу. На втором месте комбинации запишется также 1 (проекция на ось X2 равна единице). Так как проекция на ось Х3 равна нулю (проекция в начало координат), то на третьем месте комбинации запишется 0. Следовательно, вся комбинация в вершине A6 запишется как 110. Если использовать все восемь слов, записанных в вершинах куба, то образуется двоичный код на все сочетания. Как было показано, такой код является непомехоустойчивым. Если же уменьшить число используемых комбинаций с восьми до четырех, то появится возможность обнаружения одиночных ошибок. Для этого выберем только такие комбинации, которые отстоят друг от друга на расстояние d = 2, например 000, 110, 011 и 101. Остальные кодовые комбинации не используются. Если будет принята комбинация 100, то очевидно, что при ее приеме произошла одиночная ошибка. Представленные комбинации построены по определенному правилу, а именно содержат четное число единиц, а принятая комбинация 100 - нечетное. Можно утверждать, что комбинация 100 образовалась при искажении разряда одной из разрешенных комбинаций, но определить, какая именно комбинация искажена, невозможно. Поэтому такие или подобные им коды называют кодами с обнаружением ошибок. Кроме указанной группы комбинаций в том же трехмерном кубе может быть получена еще одна группа комбинаций с кодовым расстоянием d=2 (111, 001, 010 и 100). В этих кодовых комбинациях нечетное число единиц и каждая из комбинаций могут быть использованы для обнаружения ошибки, возникшей при передаче, так как при одиночном искажении в комбинации будет четное число единиц. Однако, если необходимо получить код с обнаружением одиночной ошибки, в передаче может участвовать только одна группа, т. е. четыре комбинации из возможных восьми. В противном случае получится непомехоустойчивый код, в котором будут встречаться комбинации с d=l. Таким образом, в помехозащищенных кодах есть комбинации разрешенные, составленные по определенному правилу, и запрещенные, не соответствующие этому правилу. Так, если из восьми комбинаций трехразрядного кода образованы четыре комбинации, позволяющие обнаружить одиночную ошибку (например, 111, 001, 010 и 100), то эти комбинации являются разрешенными, а остальные четыре (000, 011, 101 и 110) -- запрещенными, которые должны фиксироваться на приеме как искаженные. Иногда совокупность разрешенных кодовых комбинаций, которые при заданных возможных искажениях не могут перейти друг в друга, называют системой непереходящих сигналов. Итак, видно, что построение помехоустойчивого кода (а код с обнаружением ошибки является простейшим типом такого кода) связано с недоиспользованием кодовых комбинаций, приводящим к так называемой избыточности. Избыточность означает, что из исходных символов можно построить больше комбинаций, чем их применено в данном коде. Таким образом, установлено, что уменьшение числа используемых комбинаций приводит к повышению помехоустойчивости кода. Если идти дальше по этому пути и еще больше ограничить число разрешенных комбинаций, то можно создать код не только с обнаружением, но и с исправлением ошибки. Выберем в трехмерном кубе такие вершины, кодовые обозначения которых отличались бы друг от друга на d=3. Такие вершины расположены на концах пространственных диагоналей куба. Их может быть только четыре пары: 000 и 111, 001 и 110, 100 и 011, 010 и 101. Однако из этих четырех пар для передачи можно брать только одну любую пару, так как большее число пар приведет к тому, что в передаче будут использоваться комбинации, отличающиеся друг от друга на d<3. Код, образованный по такому правилу, может исправить одиночную ошибку или обнаружить две ошибки без их исправления. Пусть, например, передается код, состоящий из комбинаций 001 и 110. На приеме получена комбинация 100. Сравнение ее с исходными комбинациями показывает, что от комбинации 110 она отличается в одном (втором) разряде, а от комбинации 001 -- в двух разрядах. Если считать, что сделана одна ошибка, то полученную комбинацию 100 следует исправить на 110. От разрешённой комбинации 001 отличаются нa d=l комбинации 011, 000 и 101, а от комбинации 110 -- комбинации 111, 100 и 010. Они и являются своеобразными комбинациями-спутниками, которые после приема можно относить к той или иной исходной комбинации. Когда говорят об исправлении одиночной ошибки, считают, что вероятность двойной ошибки в канале связи пренебрежимо мала. Если такая вероятность достаточно велика, то код с d = 3 можно использовать для обнаружения двойных ошибок, но при этом исправить одиночную ошибку он уже не может. Действительно, если в нашем примере была принята комбинация 100, то нельзя утверждать, что была передана комбинация 110, так как при двойных ошибках это могла быть и искаженная комбинация 001. Таким образом, дальнейшее повышение помехоустойчивости кода связано с увеличением кодового расстояния d, что приводит к увеличению избыточности (вместо восьми комбинаций используются только две). Корректирующая способность кода зависит от кодового расстояния: а) при d=1 ошибка не обнаруживается; б) при d = 2 обнаруживаются одиночные ошибки; в) при d = 3 исправляются одиночные ошибки или обнаруживаются двойные ошибки. В общем случае d = r + s + 1, где d -- минимальное кодовое расстояние; r -- число обнаруживаемых ошибок; s -- число исправляемых ошибок. При этом обязательным условием является r?s. Так, в нашем примере d = 3, и если r = s = l, то код может обнаружить одну ошибку и исправить ее. Если r =2, s=0, то код может только обнаружить две ошибки. Как следует из уравнения, для исправления одной ошибки и обнаружения двух ошибок необходимо, чтобы d = 2 + 1 + 1 =4. При d=4 может быть также вариант, когда r=3, s=0. Если d=5, то могут быть три варианта: r = s = 2; r=3, s=l; r = 4, s=0. Если код только обнаруживает ошибки, то d=r + l, т.е. r = d - 1. Если код только исправляет ошибки, то d=2s+1, т.е. s=(d - 1)/2 Итак, геометрические модели позволяют просто строить малоразрядные корректирующие коды. Однако при длине кода n>3 геометрической моделью пользоваться трудно, так как она должна быть многомерной. Поэтому для построения многоразрядных помехоустойчивых кодов используют различные правила и методики, к рассмотрению которых и перейдем. 1.2.3 Помехозащищенные коды. Циклический кодЦиклические коды относятся к числу блоковых систематических кодов, в которых каждая комбинация кодируется самостоятельно (в виде блока) таким образом, что информационные k и контрольные m символы всегда находятся на определенных местах.Возможность обнаружения и исправления практически любых ошибок при относительно малой избыточности по сравнению с другими кодами, а также простота схемной реализации аппаратуры кодирования и декодирования сделали эти коды широко распространенными.Теория циклических кодов базируется на теории групп и алгебре многочленов над полем Галуа.Многочлен (полином), который можно представить в виде произведения многочленов низших степеней, называют приводимым (в данном поле), в противном случае -- неприводимым. Неприводимые многочлены играют роль, сходную с простыми числами в теории чисел. Неприводимые многочлены Р(Х) можно записать в виде десятичных или двоичных чисел либо в виде алгебраического многочлена (табл. 1.1).Таблица 1.1 Неприводимые многочлены и их эквиваленты
1.3 Математическая модель Исходя из технического задания d = 4, а согласно формуле d = r + s + 1, где |
|
© 2007 |
|