Автор работы: Пользователь скрыл имя, 26 Декабря 2012 в 19:21, курсовая работа
Аналитический обзор по помехоустойчивому кодированию. Классификация помехоустойчивых кодов и сравнение характеристик методов коррекции ошибок.
История кодирования, контролирующего ошибки 2
Приложения 5
Общие сведения о кодах и системах кодированной связи 7
Мешающие влияния в каналах связи 13
Основные принципы помехоустойчивого кодирования 18
Пример. 21
Краткая классификация 23
Практика кодирования 31
Код Хэмминга 40
Схема на рис. 1.1 может видоизменяться в зависимости от конкретной реализации системы связи. В каналах действуют искажения сигналов, шумы, помехи, которые в дискретном канале проявляются в виде перехода одного значения символа в другое - ложное (событие, состоящее в появлении ошибки) или неиспользуемое (событие, которое называют стиранием). В зависимости от характера ошибок различают дискретные каналы: симметричный (все ложные значения символов равновероятны), асимметричный (некоторые ложные значения символов обладают большей вероятностью), без памяти (искажение символа не зависит статистически от искажения другого выходного символа), с памятью (искажение символа выходной последовательности зависит статистически от искажения другого символа той же последовательности), со стираниями (наряду с ошибками имеют место стирания символов).
Любой канал связи с
ограниченными полосой частот, временем
передачи и динамическим диапазоном (значений
амплитуд) обладает конечной пропускной
способностью. Теоретически пропускная
способность - это максимальное число
переданных двоичных единиц (бит) в единицу
времени при сколь угодно малой вероятности
ошибок. Реально получаемое число передаваемых
бит в единицу времени называют скоростью
передачи. При неограниченно малой вероятности
ошибок скорость передачи всегда меньше
пропускной способности. В канале с ошибками
максимальное значение скорости получают
путем использования помехоустойчивого
кодирования. Последнее требует введения
избыточности в передаваемый сигнал: по
времени, частоте или амплитуде. Если код
согласован с каналом, т. е. код позволяет
исправлять наиболее вероятные ошибки,
введенная избыточность становится оправданной.
Если код не согласован с каналом, ошибки
могут быть не только не исправлены, но
и размножены кодом. В этом случае применение
помехоустойчивого кодирования принесет
не пользу, а вред. Для согласования кода
с каналом связи необходимо иметь максимальный
объем сведений о возможных мешающих влияниях
в каналах.
Мешающие влияния разделяют
на шумы, помехи, замирания, искажения,
ошибки (рис. 1.2). Обычно шумы имеют естественное
происхождение; наиболее существенное
влияние оказывает собственный
шум приемника. Помехи могут быть
также естественного
Импульсные помехи (ИП) действуют в течение ограниченного времени; в зависимости от формы импульса различают шумовые (ограниченный во времени шум), видео- и синусоидальные (узкополосные) ИП. Импульс помехи может быть одиночным, однако чаще воздействует пакет ИП, который поражает элементы сигнала, искажая его временные характеристики.
Узкополосная помеха накрывает часть спектра передаваемого сигнала, искажая спектр и ухудшая как спектральные, так и корреляционные свойства сигнала.
Внутрисистемные помехи характерны для асинхронно-адресных систем связи, работающих в одной полосе частот с различением станций по форме адресных сигналов (кодов). Возникают помехи главным образом за счет неидеальности взаимокорреляционных функций адресных кодов.
Ретранслированная помеха создается в результате усиления и переизлучения переданного сигнала одной-двумя соседними станциями. Переизлученный и задержанный сигнал, попадая в приемник истинной станции, создает специфическую помеху, воздействующую тем сильнее, чем хуже корреляционные свойства передаваемых сигналов. Имитационная помеха (ИМП) близка по форме переданному сигналу; степень близости определяется числом передаваемых сигналов и их корреляционными свойствами. Часто ИМП называют также структурной или прицельной помехой. Название "прицельная помеха" становится оправданным при совпадении в приемнике фазы или средней частоты ИМП с фазой переданного сигнала или со средней частотой одного или нескольких частотных подканалов. В последнем случае помеху иногда называют сосредоточенной. В наземных радиолиниях причинами замираний, составляющих основную часть мешающих влияний естественного происхождения, служат многолучевость, метеоусловия, время года. Многолучевость вызывает быстрые замирания, метеоусловия и время года - медленные. Частотную селективность замираний определяют по снижению коэффициента частотной корреляции до значения 0,5 ... 0,6. Интервал частот, лежащий в пределах 1...0,5, называют полосой (интервалом) когерентности канала связи.
Рис. 2 — Классификация
мешающих влияний в линиях связи.
Искажения сигнала
могут вызываться как характеристиками
тракта передачи, так и помехами.
Однако понятие искажения обычно
связывают только с влиянием на сигнал
линейных и нелинейных характеристик
тракта. Воздействие линейных характеристик,
и в частности неравномерности
амплитудно-частотной
Для априорной оценки эффективности кода проводят имитационное моделирование, требующее знания статистического распределения мешающих влияний. Обычно шум предполагают нормально распределенным (белым гауссовским шумом-БГШ). При большом разнообразии ИП нет, однако, единой универсальной модели, описывающей эти помехи. Как правило, уровни и длительности ИП принимают распределенными по экспоненциальному закону, а вероятность появления m импульсов на интервале времени Ти.п (в соответствии с распределением Пуассона) Pи.п(m) = (LТи.п)mехр(-LТи.п)/m!, где L-среднее число импульсов на интервале Ти.п.
Наиболее сложно моделировать преднамеренные помехи, "качество" которых тем выше, чем менее определена их статистика. Однако каждая помеха характеризуется несколькими параметрами, которые при моделировании могут быть заданы в априорно выбранном диапазоне значений в виде, например, случайных чисел.
Для описания быстрых замираний
чаще всего применяют рэлеевское
и райсовское распределения. Частотную
селективность быстрых замираний описывают
экспоненциальным распределением; функция
частотной корреляции R(f)=(ехр(-f/df0))2 или R(f)=exp(-f/df0),
где df0 -интервал частотной корреляции.
Общепринята аппроксимация медленных
замираний логарифмически нормальным
распределением.
Искажения сигнала принимают при
моделировании нормально
Кодирование с исправлением ошибок,
по существу, представляет собой метод
обработки сигналов, предназначенный
для увеличения надежности передачи
по цифровым каналам. Хотя различные
схемы кодирования очень
Рассмотрим вначале двоичный канал связи с помехами, приводящими к тому, что ошибки появляются независимо в каждом символе и средняя вероятность ошибки равна Р=0,01. Если требуется рассмотреть произвольный блок из 10 символов на выходе канала, то весьма трудно выявить символы, которые являются ошибочными. Вместе с тем если считать, что такой блок содержит не более трех ошибок, то мы будем неправы лишь два раза на миллион блоков. Кроме того, вероятность, что мы окажемся правы, возрастает с увеличением длины блока. При увеличении длины блока доля ошибочных символов в блоке стремится к средней частоте ошибок в канале, а также, что очень важно, доля блоков, число ошибок в которых существенно отличается от этого среднего значения, становится очень малой. Простые вычисления помогают понять, насколько верным является это утверждение. Рассмотрев, например, тот же канал, вычислим вероятность того, что доля ошибочных символов превышает значение p, и построим график этой функции для нескольких значений длины блока.
Рис. 3 Вероятность того, что доля ошибочных символов e/N в блоке длиной N превышает р при вероятности Р e=0,01.
Кривые на рис. 1.3 показывают, что
при обработке символов блоками,
а не одного за другим можно уменьшить
общую частоту ошибок. При этом
потребуется, чтобы существовала схема
кодирования, нечувствительная к ошибкам
в некоторой доле символов блока
и не приводящая при этом к потере
сообщением своей индивидуальности,
т. е. не приводящая к ошибочному блоку.
Из графиков на рис. 1.3 для различных
длин блоков видно, какую именно долю
ошибок нужно исправлять, чтобы получить
заданную вероятность ошибки блока.
Он показывает также, что при фиксированной
вероятности ошибки блока доля ошибок,
которые нужно исправлять, уменьшается
при возрастании длины блока.
Сказанное свидетельствует о
резервах улучшения характеристик
при усреднении шума и о том, что
эти резервы возрастают при увеличении
длины блока. Таким образом, длинные
блоковые коды эффективнее коротких.
После того как установлена целесообразность
исправления ошибок в символах, возникает
следующий логичный вопрос: как это сделать?
Ключ лежит в избыточности. После некоторых
размышлений читатель поймет, что при
исправлении ошибок в сообщении, представляемом
последовательностью из n двоичных символов,
очень важно учесть, чтобы не все 2n возможных
последовательностей представляли сообщения.
В самом деле, когда каждая из возможных
принятых последовательностей n символов
представляет некоторое сообщение, нет
никаких оснований считать, что одна последовательность
является более правильной, чем любая
другая. Продолжая рассуждать таким же
способом, можно ясно увидеть, что для
исправления всех наборов из t или менее
ошибок необходимо и достаточно, чтобы
каждая последовательность, представляющая
сообщение, отличалась от последовательности,
представляющей любое другое сообщение,
не менее чем в 2t+1 местах. Например, для
исправления всех одиночных или всех двойных
ошибок в символах нужно, чтобы каждые
две последовательности, представляющие
разные сообщения, отличались не менее
чем в пяти символах. Каждая принятая последовательность,
содержащая два ошибочных символа и, следовательно,
отличающаяся от посланной последовательности
ровно в двух местах, будет всегда отличаться
от всех других последовательностей, представляющих
сообщения, не менее чем в трех местах.
Число позиций, в которых две последовательности
отличаются друг от друга, будем называть
расстоянием Хемминга d между этими двумя
последовательностями. Наименьшее значение
d для всех пар кодовых последовательностей
называется кодовым расстоянием и обозначается
dmin. Поскольку dmin всегда должно быть на единицу больше
удвоенного числа исправляемых ошибок,
можно написать t=[(dmin-l)/2], (1.1) где
[ ] обозначает целую часть. Параметр t указывает,
что все комбинации из t или менее ошибок
в любой принятой последовательности
могут быть исправлены. Имеются модели
каналов, в которых значение t может быть
больше указанного в (1.1).
Рассмотрим код, состоящий из четырех
кодовых слов 00000, 00111,11100 и 11011. Каждое
кодовое слово используется для
представления одного из четырех возможных
сообщений. Поскольку код включает лишь
небольшую долю всех 32 возможных последовательностей
из пяти символов, мы можем выбрать кодовые
слова таким образом, чтобы каждые два
из них отличались друг от друга не менее
чем в трех позициях. Таким образом, кодовое
расстояние равно трем и код может исправлять
одиночную ошибку в любой позиции. Чтобы
провести процедуру декодирования при
этом коде, каждой из 28 недопустимых последовательностей
нужно поставить в соответствие ближайшую
к ней допустимую последовательность.
Этот процесс ведет к созданию таблицы
декодирования, которая строится следующим
образом. Вначале под каждым кодовым словом
выписываем все возможные последовательности,
отличающиеся от него в одной позиции.
В результате получаем часть табл. 1.2, заключенную
между штриховыми линиями. Заметим, что
после построения этой части осталось
восемь последовательностей. Каждая из
этих последовательностей отличается
от каждого кодового слова не менее чем
в двух позициях. Однако в отличие от других
последовательностей эти восемь последовательностей
нельзя однозначно разместить в таблице.
Например, последовательностью можно
поместить либо в первый, либо в четвертый
столбец. При использовании этой таблицы
в процессе декодирования нужно найти
столбец, в котором содержится принятая
последовательность, и а качестве выходной
последовательности декодера взять кодовое
слово, находящееся в верхней строке этого
столбца.
Таблица 2. Таблица декодирования для кода с четырьмя словами
00000 |
11100 |
00111 |
11011 |
10000 |
01100 |
10111 |
01011 |
01000 |
10100 |
01111 |
10011 |
00100 |
11000 |
00011 |
11111 |
00010 |
11110 |
00101 |
11001 |
00001 |
11101 |
00110 |
11010 |
10001 |
01101 |
10110 |
01010 |
10010 |
01110 |
10101 |
01001 |