- •Основы теории цифровой связи Часть 1 кодирование информации
- •1. Введение
- •1.1. Модель радиотехнической системы связи
- •Контрольные вопросы
- •1.2. Статистическая трактовка процесса передачи информации
- •Контрольные вопросы
- •1.3. Основные понятия и элементы математического аппарата теории связи
- •1.3.1. Сигналы и помехи
- •1.3.2. Разложение сигнала по системе ортогональных функций. Спектр сигнала
- •1.3.3. Cвойства преобразования Фурье
- •1.3.4. Корреляционная функция сигнала
- •1.3.5. Связь между корреляционной функцией и спектром сигнала
- •1.3.6. Случайные сигналы и их характеристики
- •Контрольные вопросы
- •1.4. Источники информации
- •1.5. Теорема дискретизации
- •1.6. Дискретизация изображений
- •Контрольные вопросы
- •1.7. Квантование. Ошибки квантования
- •Контрольные вопросы
- •1.8. Количество информации, содержащейся в сообщении
- •1.8.1. Энтропия сложных сообщений, избыточность источника
- •Контрольные вопросы и задачи
- •2. Основы экономного кодирования информации
- •2.1. Способы представления кодов
- •Контрольные вопросы и задачи
- •2.2. Типы систем сжатия
- •X Квантователь Xq Кодер без потерь информации b (Xq) Декодер X*
- •Методы кодирования без потерь
- •2.3.1. Понятие префиксного множества
- •2.3.2. Алгоритм кодирования Хаффмена
- •2.3.3. Алгоритм Шеннона–Фано
- •2.3.4. Блочные коды
- •2.3.5. Арифметическое кодирование
- •2.3.6. Словарное кодирование. Метод Зива–Лемпеля
- •2.3.7. Кодирование длин повторений (rle)
- •2.3.8. Дифференциальное кодирование
- •Контрольные вопросы и задачи
- •2.4. Методы сжатия с потерей информации
- •2.4.1. Функции “скорость–искажение” и “искажение–скорость”
- •2.5. Сжатие речевых сигналов
- •2.5.1. Кодирование формы сигнала, икм
- •2.5.2. Дифференциальная икм
- •2.5.3. Адаптивная дифференциальная икм (адикм)
- •2.5.4. Дельта-модуляция
- •2.5.5. Другие методы кодирования формы сигнала
- •2.5.6. Кодирование источника
- •2.5.7. Гибридные методы кодирования речи
- •2.5.8. Полноскоростной кодер rpe-ltp (стандарт gsm 06.10)
- •2.5.9. Кодер vselp (стандарт d-amps)
- •Контрольные вопросы и задачи
- •2.6. Кодирование изображений. Стандарт сжатия jpeg
- •Процедуру дкп можно записать в матричной форме:
- •2.6.1. Рекурсивный (вэйвлет) алгоритм
- •2.7. Сжатие подвижных изображений (видео)
- •3. Основы помехоустойчивого кодирования
- •3.1. Основные принципы. Типы кодов
- •3.2. Линейные блочные коды
- •3.2.1. Код с проверкой на четность
- •3.2.2. Итеративный код
- •3.2.3. Порождающая матрица линейного блочного кода
- •3.2.4. Проверочная матрица
- •3.2.5. Дуальные коды
- •3.2.6. Синдром и обнаружение ошибок
- •3.2.7. Синдромное декодирование линейных блочных кодов
- •3.2.8. Мажоритарное декодирование линейных блочных кодов
- •3.2.9. Декодирование методом максимального правдоподобия
- •Поскольку
- •Если принятый сигнал дискретизован и Si – I-й отсчет принятого сигнала.
- •3.2.10. Вес и расстояние Хемминга. Способность кодов обнаруживать и исправлять ошибки
- •Контрольные вопросы и задачи
- •3.3. Полиномиальные коды
- •3.3.1. Циклические коды
- •3.3.2. Кодирование с использованием циклических кодов
- •3.3.3. Вычисление синдрома и исправление ошибок в циклических кодах
- •3.3.4. Неалгебраические методы декодирования циклических кодов
- •3.4. Сверточные коды
- •3.4.1. Кодирование с использованием сверточных кодов
- •3.4.2. Синдромное декодирование сверточных кодов
- •3.4.3. Кодовое дерево и решетчатая диаграмма
- •3.4.4. Декодирование сверточных кодов. Алгоритм Витерби
- •3.4.5. Алгоритмы поиска по решетке
- •Контрольные вопросы и задачи
- •3.5. Применение корректирующего кодирования в системах связи
- •3.5.1. Каскадные коды
- •3.5.2. Кодирование с перемежением
- •Библиографический список
- •Часть 1 1
3.4.2. Синдромное декодирование сверточных кодов
Предположим, что принята полубесконечная последовательность r, состоящая из слова сверточного кода и вектора ошибки:
r = U + e. (3.89)
Аналогично тому, как это делается для блочных кодов, можно вычислить синдром принятой последовательности:
S = r× H = e × Н. (3.90)
Однако из-за бесконечной длины принятой последовательности (а сверточный код представляет собой непрерывную бесконечную последовательность двоичных символов) синдром также будет иметь бесконечную длину и его прямое вычисление не имеет смысла.
Вместе с тем можно заметить, что для рассмотренных нами сверточных кодов влияние одного информационного кадра распространяется всего на несколько кодовых кадров. Поэтому декодер может просматривать не весь синдром, а вычислять его компоненты по мере поступления кадров кодовой последовательности, исправлять текущие ошибки и сбрасывать те компоненты синдрома, которые вычислены давно.
Для исправления ошибок при этом декодер должен содержать таблицу сегментов синдромов и сегментов конфигураций ошибок, образующих данные конфигурации синдрома. Если декодер находит в таблице полученный сегмент синдрома, он исправляет начальный сегмент кодового слова.
Схема декодера для сверточного (12,9)-кода Вайнера–Эша изображена на рис. 3.21. Исправление ошибок с помощью данного декодера производится на сегментах из трех кодовых кадров – n = 12.
Декодер работает следующим образом. Во входной регистр записывается первый кадр принимаемой последовательности r (четыре символа). По первым трем (информационным) символам кадра по тем же правилам, что и при кодировании, определяется значение контрольного бита, который далее сравнивается с четвертым (проверочным) символом принятого кадра.
При совпадении контрольного и проверочного битов (а это будет, если ошибки в первом кадре нет) в первую ячейку синдромного регистра записывается 0, если же в кадре ошибка есть, то 1. Далее первый кадр принятой последовательности переносится в регулирующий буфер, а во входной регистр заносится очередной кадр принятой последовательности, состоящий из четырех символов.
Рис. 3.21
После аналогичных проверок для второго и третьего кадров принятой последовательности на выходе регулирующего буфера оказывается первый кадр принятой последовательности, в регистре синдрома — трехбитовый синдром, соответствующий принятому сегменту из трех кадров, а на выходе адресной логики — дешифрированный по синдрому S вектор ошибки e.
Исправленный кадр записывается в выходной регистр, при этом исправление производится только при наличии единицы на входах схем “И”, что соответствует присутствию ошибки именно в первом кадре.
После исправления ошибки регистр синдрома сбрасывается. Потеря второго и третьего битов синдрома при этом не имеет значения, так как ни во втором, ни в третьем кадрах ошибки быть не должно (она была в первом кадре, а значит, во фрагменте из трех кадров ошибки больше быть не должно).
Все возможные конфигурации ошибок в первых трех кадрах (суммарной длиной в двенадцати символов) принятой последовательности и соответствующие им первые три бита синдрома, по которым проводится исправление ошибки, приведены в табл. 3.5. Видно, что для исправления ошибки может использоваться только первый кадр, для которого имеет место однозначное соответствие между ошибкой и синдромом.
Таблица 3.5
Конфигурация ошибок в принятом сегменте |
Синдром |
|||
1-й кадр |
2-й кадр |
3-й кадр |
… |
… |
1000 |
0000 |
0000 |
|
111 |
0100 |
0000 |
0000 |
|
011 |
0010 |
0000 |
0000 |
|
101 |
0001 |
0000 |
0000 |
|
001 |
0000 |
1000 |
0000 |
|
110 |
0000 |
0100 |
0000 |
|
110 |
0000 |
0010 |
0000 |
|
010 |
0000 |
0001 |
0000 |
|
010 |
0000 |
0000 |
1000 |
|
100 |
0000 |
0000 |
0100 |
|
100 |
0000 |
0000 |
0010 |
|
100 |
