ПОМЕХОУСТОЙЧИВОЕ КОДИРОВАНИЕ Презентация лекции по курсу «Общая теория связи» © Д.т.н., проф. Васюков В.Н., vasyukov@edu.nstu.ru Новосибирский государственный.

Презентация:



Advertisements
Похожие презентации
ПОМЕХОУСТОЙЧИВОЕ КОДИРОВАНИЕ Федеральное государственное образовательное учреждение Среднего профессионального образования по Владимирской области «Гусевский.
Advertisements

Практическая работа 1 4 Теория информации. Теоретическая подготовка Подготовьте ответы на вопросы: В чём заключается сущность помехоустойчивого кодирования?
1 Линейные пространства Базис линейного пространства Подпространства линейного пространства Линейные операторы Собственные векторы и собственные значения.
1 3. Системы линейных уравнений. Леопо́льд Кро́некер.
Применение теории кодирования в криптографии Лось Антон Васильевич.
1 2. Матрицы. 2.1 Матрицы и их виды. Действия над матрицами. Джеймс Джозеф Сильвестр.
Классификация сигналов Под сигналом обычно понимают величину, отражающую состояние физической системы. Поэтому естественно рассматривать сигналы как функции,
Некогерентный приём сигналов Презентация лекции по курсу «Общая теория связи» © Д.т.н., проф. Васюков В.Н., Новосибирский государственный.
ЭЛЕМЕНТЫ ВЕКТОРНОЙ АЛГЕБРЫ Лекция 3. План лекции: Понятие вектора. Действия над векторами. Линейно зависимые и линейно независимые векторы. Размерность.
План лекции: 1. Векторы. Линейные операции над векторами. 2. Линейная зависимость и независимость векторов. 3.Понятие базиса. Координаты вектора. 4. Разложение.
Помехоустойчивое кодирование Линейные коды. Некоторые предположения Блоковый код- код, в котором все слова имеют одинаковую длину. Кодовое слово – слово.
Помехоустойчивое кодирование Свойства линейных кодов.
Что нужно знать: динамическое программирование – это способ решения сложных задач путем сведения их к более простым задачам того же типа динамическое.
Помехоустойчивое кодирование Циклические коды – подкласс линейных кодов.
Системы m линейных уравнений с n неизвестными. Определение: Определение. Система m уравнений с n неизвестными в общем виде записывается следующим образом:
Основы теории СЛУЧАЙНЫХ ПРОЦЕССОВ Презентация лекции по курсу «Общая теория связи» © Д.т.н., проф. Васюков В.Н., Новосибирский государственный.
Практическая 1-6 Циклические коды Теория информации.
Элементы векторной алгебры Кафедра высшей математики ТПУ Лектор: доцент Тарбокова Татьяна В асильевна.
Глава II. Векторная алгебра. Элементы теории линейных пространств и линейных операторов Раздел математики, в котором изучаются свойства операций над векторами,
Линейная алгебра Матрицы. Основные понятия. Действия над матрицами Метод обратной матрицы решения систем линейных уравнений.
Транксрипт:

ПОМЕХОУСТОЙЧИВОЕ КОДИРОВАНИЕ Презентация лекции по курсу «Общая теория связи» © Д.т.н., проф. Васюков В.Н., Новосибирский государственный технический университет, Новосибирск, пр. К. Маркса, 20 Факультет Радиотехники и электроники Кафедра теоретических основ радиотехники

2 Кажтый может ошибиться, а если о чем-нибудь очень долго размышлять, уж наверняка ошибёшься. Ярослав Гашек Похождения бравого солдата Швейка

3 Необходимость помехоустойчивого кодирования: Если в канале есть помехи, то при приеме кодовых символов могут произойти ошибки, тогда кодовые комбинации (полученные при эффективном кодировании) будут декодированы неправильно! Задача: повышение верности передачи Один из путей ее решения – помехоустойчивое (канальное) кодирование.

4 Такая возможность обеспечивается целенаправленным введением избыточности в передаваемые сообщения. Помехоустойчивыми (корректирующими) кодами называются коты, обеспечивающие автоматическое обнаружение и/или исправление ошибок в кодовых комбинациях.

5 При кодировании источника избыточность уменьшается или полностью устраняется (достигается увеличение скорости передачи информации за счёт уменьшения средней длины кодовых слов) Наиболее простой способ: например, вместо слова стол можно передавать слово ссстттоооллл При помехоустойчивом кодировании в передаваемые сообщения вводится избыточность (количество символов увеличивается!) За счет этого появляется возможность обнаруживать ошибки и даже исправлять их

6 2-я Теорема Шеннона (Основная теорема кодирования для каналов с помехами (шумами) Если производительность источника меньше пропускной способности канала то существует по крайней мере одна процедура кодирования/декодирования, при которой вероятность ошибочного декодирования и ненадежность могут быть сколь угодно малы. Если то такой процедуры не существует. В вышеприведённом примере ясно, что при фиксированном уровне помех для стремления вероятности ошибки к нулю количество повторений должно стремиться к бесконечности. Скорость передачи информации при этом стремится к нулю.

7 Классификация корректирующих к ó дов Коты Блочные Непрерывные Разделимые Неразделимые Свёрточные Линейные Нелинейные Код Рида-Мюллера Код Хэмминга Цепные

8 Линейные блочные к ó ты Блочный равномерный код – множество кодовых слов (комбинаций) одинаковой длины n. Элементы кодовых слов выбираются из некоторого алфавита (канальных) символов объемом q. Если q =2, код называется двоичным. Далее для простоты считается, что q =2.

9 Поскольку все кодовые слова имеют одинаковую длину, удобно считать их векторами, принадлежащими линейному пространству размерности n. Для линейных к ó дов справедливо утверждение: линейная комбинация кодовых слов является кодовым словом …………………

Из них только комбинаций являются разрешёнными и составляют код, который называется -кодом (отношение называется относительной скоростью кода). Всего n-мерных векторов с двоичными компонентами (кодовых комбинаций или слов). 10 Остальные комбинации являются запрещёнными, образуются из разрешённых в канале под воздействием помех.

11 Разрешённые комбинации – векторы линейного пространства. Чем больше расстояние между разрешёнными комбинациями, тем меньше вероятность преобразования их друг в друга под действием помех, тем выше способность кода к обнаружению и исправлению ошибок. Исходные символы разрешенная Исходные символы разрешенная Исходные символы разрешенная Исходные символы разрешенная разрешённая Исходные символы разрешённая

12 Работа декодера сводится к разбиению всего пространства на области, каждая из которых содержит одну разрешённую комбинацию

13 Для кодирования и декодирования линейных блочных кодов применяются действия, описываемые операциями над векторами в линейном пространстве над конечным полем целых чисел Сложение и умножение в конечном поле понимаются как сложение и умножение по модулю q Простейшее из таких полей, называемых полями Галуá – поле по модулю 2, обозначаемое GF(2) ЭВАРИСТ ГАЛУА Évariste Galois ( ) выдающийся французский математик, основатель современной алгебры.

14 Заметим, что вычитание по модулю 2 совпадает со сложением по модулю 2

15 Метрика (расстояние) Хэмминга, определяемая для двух двоичных кодовых векторов выражением Расстояние по Хэммингу между двумя двоичными векторами равно количеству несовпадающих элементов Скалярное произведение можно определить выражением Итак, множество всех двоичных кодовых слов длины n можно рассматривать, как n-мерное линейное пространство над конечным полем скаляров GF(2).

16 Линейные коты являются разделимыми, то есть k символов – информационные, остальные (n-k) проверочные. Информационные символы зависят от передаваемого сообщения и могут быть какими угодно. Проверочные символы однозначно определяются информационными (т.к. формируются из информационных символов кодером, работающим по определённому алгоритму). Отсюда следует, что каждая кодовая комбинация, будучи вектором n-мерного пространства, принадлежит его k-мерному подпространству

17 Обозначим информационные символы Образуем вектор длины n следующим образом : прямая сумма пространств Любой вектор одного подпространства ортогонален любому вектору из другого подпространства Далее мы придем к другому разложению пространства

18 Обозначим информационный вектор а кодовый вектор Кодирование описывается линейным преобразованием (оператором), отображающим векторы, соответствующие подпространству, в векторы из : Матрица кодирования

19 Подробнее: Или

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

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

22 Пример. Систематический код (7,4) порождается матрицей Кодовые слова имеют структуру где

23 Структурная схема кодера Применение любого кода предполагает реализацию не только кодирования, но и декодирования. Декодирование систематического линейного блочного кода могло бы заключаться в простом отбрасывании проверочных символов, но это не обеспечивало бы обнаружения и исправления ошибок

24 Подпространство представляет собой множество всех разрешенных кодовых комбинаций – линейную оболочку совокупности вектор-строк порождающей матрицы. Это подпространство и есть код. Тогда подпространство, ортогональное к нему, также можно считать некоторым кодом (n, n-k), дуальным к данному. Порождающая матрица H дуального кода содержит n-k линейно- независимых строк длины n

25 Любое кодовое слово (n, k)-кода ортогонально любому кодовому слову (n, n-k)-кода, следовательно матрица размера, состоящая из нулей Для систематической матрицы проверочная матрица также систематическая (для двоичного кода минус можно опустить, так как сложение и вычитание по модулю 2 совпадают)

26 Матрица Н является порождающей матрицей дуального кода; в то же время она может использоваться для обнаружения ошибок в комбинациях исходного кода, прошедших через канал: если принятая кодовая комбинация Y является разрешённой, то она ортогональна к подпространству, т.е. ко всем строкам матрицы Н: Если полученный вектор ненулевой, то при передаче имела место ошибка!

27 Умножая слева вектор-строку, соответствующую принятой комбинации, на транспонированную матрицу, получаем вектор (называемый синдромом), который равен нулевому вектору в том и только в том случае, если комбинация является разрешённой. В противном случае комбинация является запрещённой, следовательно, при передаче произошла ошибка. По значению синдрома можно определить, какой именно разряд кодового слова содержит ошибку (а при двоичном коде – и исправить её!).

28 Коты Хэмминга Коты Хэмминга представляют собой (n, k)-коты, удовлетворяющие условию В частности, рассмотренный (7,4)-код принадлежит к кодам Хэмминга при m =3 Для кода Хэмминга проверочная матрица содержит в качестве столбцов все возможные -значные комбинации нулей и единиц, исключая нулевой вектор.

29 Для рассмотренного кода

30 Пример. Предположим, что передавалась разрешённая комбинация , а при передаче произошла ошибка, скажем, во втором символе, так что принят á комбинация Умножая вектор-строку (принятую комбинацию), слева на, получим синдром Полученный синдром указывает на второй символ принятой комбинации, как ошибочный. Для исправления достаточно прибавить к кодовой комбинации комбинацию

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

32 Итак, код Хэмминга (7,4) обнаруживает одно- и двукратные ошибки и исправляет однократные. Расстояние между любыми двумя разрешенными комбинациями этого кода не менее 3. Поэтому при приёме запрещенной комбинации она заменяется той разрешенной комбинацией, расстояние до которой равно 1. Двукратная ошибка отдаляет принимаемую комбинацию на расстояние, равное 2, что и приводит к ошибочному «исправлению» ошибки. При этом «исправляется» один символ, поэтому «исправленная» комбинация отстоит от принятой на расстояние 1. Исходные символы разрешенная

ДКМКДМ ЛС ПС переспрос 33 Коты, обнаруживающие ошибки, но не исправляющие их, могут использоваться в системах с решающей обратной связью (системах с переспросом). В таких системах при обнаружении ошибки во время декодирования по каналу обратной связи передается сигнал переспроса, и тогда передающее устройство повторяет передачу забракованной комбинации.

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

35 Поэтому применение конкретного кода (или помехоустойчивого кодирования вообще) может оказаться нецелесообразным.