- •11. Циклические коды. Выбор образующего полинома.
- •14. Свёрточные коды: парметры, диаграмма состояний, решетчатая диаграмма.
- •15. Декодирование сверточных кодов по алгоритму Витерби.
- •16. Каскадные коды. Турбо-коды.
- •17. Кодирование в линиях связи. Двоичные линейные коды. Многоуровневые коды.
- •19. Модуляция. Множественный доступ с частотным (fdm) и временным (tdm) разделением каналов.
- •20. Цифровая модуляция: ам, чм, фм.
- •28. Способы коммутации в компьютерных сетях: коммутация каналов, сообщений, и пакетов. Сравнительный анализ.
15. Декодирование сверточных кодов по алгоритму Витерби.
Из всех вариантов декодирования, разработанных в теории, наибольшее применение нашел алгоритм Витерби. В его основе представлена процедура кодирования и декодирования с помощью решетки. Решетка это одно из представлений кодового дерева.
П
ример:
кодер пришел в состояние 00 … 1011.
Анализируя на каждом шаге входные биты декодирования, рассматриваются все возможные пути (переходы) по решетке и для каждого пути считается расстояние Хэмминга между входными битами и состояниями ребер данного блока.
Подсчитываются метрики (расстояние) ребер и путей. Пути с большим расстоянием отбрасываются в процессе анализа – такие блоки называются умершими. А пути с меньшими метриками продолжают анализироваться. Правильный считается путь с наименьшей метрикой.
В итоге остается только один путь.
Если ошибок не было, то минимальная
метрика равна нулю. При наличии ошибок
не будет путей с метрикой ноль,
.
16. Каскадные коды. Турбо-коды.
Турбо-код — параллельный каскадный блоковый систематический код, способный исправлять ошибки, возникающие при передаче цифровой информации по каналу связи с шумами. Синонимом турбо-кода является известный в теории кодирования термин — каскадный код. Важным преимуществом турбо-кодов является независимость сложности декодирования от длины информационного блока, что позволяет снизить вероятность ошибки декодирования путём увеличения его длины. Основной недостаток турбо-кодов — это относительно высокая сложность декодирования и большая задержка, которые делают их неудобными для некоторых применений.
Особенностью турбо-кодов является параллельная структура, состоящая из рекурсивных систематических сверточных (RSC) кодов, работающих параллельно и использующих создание случайной версии сообщения. Параллельная структура использует два или больше кодов RSC, каждый с различным перемежителем. Цель перемежителя состоит в том, чтобы предложить каждому кодеру некоррелированную или случайную версию информации, в результате чего паритетные биты каждого RSC становятся независимыми.
В турбо-кодах блоки имеют длину порядка нескольких Кбит. Цель такой длины состоит в том, чтобы эффективно рандомизировать последовательность, идущую на второе кодирующее устройство. Чем длиннее размер блока, тем лучше его корреляция с сообщением первого кодера, то есть корреляция мала.
17. Кодирование в линиях связи. Двоичные линейные коды. Многоуровневые коды.
Двоичный код — это способ представления данных в одном разряде в виде комбинации двух знаков, обычно обозначаемых цифрами 0 и 1. Разряд в этом случае называется двоичным разрядом.
Линейным двоичным кодом длины n называется множество двоичных последовательностей длины n, для которого выполняются 2 условия:
а) Это множество содержит нулевую последовательность
б) Для каждой пары последовательностей, принадлежащих этому множеству их поразрядная сумма по модулю 2 («исключающее ИЛИ») также является элементом данного множества.
Многоуровневые коды
Основное применение многоуровневые коды получили на абонентских участках для повышения скорости передачи двоичных символов. В этом случае можно говорить не о повышении скорости передачи по каналу, а об увеличении информационного содержания каждого символа. Объем передаваемой информации в единицу времени в двоичных символах достигает
,где
—
число уровней, из которых можно производить
выбор в каждом такте;
—
длительность тактового интервала.
Эта формула показывает скорость передаваемой информации в единицу времени в двоичных символах. Ее размерность определяется в бит/с.
При
она
действительно равна частоте тактовых
импульсов. При
она
показывает, сколько двоичных символов
переносит многоуровневый сигнал в
секунду. Это иллюстрирует рис.9.3.
Каждый один из восьми уровней имеет
двоичную нумерацию
бита.
Если импульсы идут с частотой
,
то скорость передачи
бит/с.
При использовании кодеками недвоичных систем исчисления, например десятичной системы, информационная скорость может возрасти еще больше. Скорость передачи в многоуровневых кодах часто измеряют в бодах, при двоичном сигнале она совпадает со скоростью, передаваемой в битах.
Таблица 9.4. Пример трехуровневого кодирования |
|||||||||||||||
1 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
+3 |
–1 |
–3 |
+1 |
–3 |
–1 |
+3 |
+1 |
||||||||
Рис. 9.3. Пример кодирования двоичной последовательности по таблице 9.4 четырехуровневым кодом
На рис. 9.3 показан пример передачи четырехуровневого сигнала, при котором за один такт передается два двоичных бита (содержание бода — два бита). Несмотря на более высокую скорость передачи информации, достигнутую благодаря повышенной информационной емкости символа, многоуровневая передача не применяется. Выше уже было отмечено, что помехи и шумы в канале, а также ограничения на уровень сигнала в усилителях воздействуют прежде всего на амплитуду. Поэтому рассматриваемый способ не нашел применения. Однако в сочетании с другими способами (в частности, частотной модуляцией) он дает высокий эффект и хорошую помехоустойчивость. Наибольшее распространение получило сочетание многоуровневой передачи постоянными импульсами совместно с частотной фазовой манипуляцией. Это позволило резко расширить полосу пропускания на абонентском участке.
18. Пакеты ошибок. Скремблирование и перемежение.
Статистика ошибок в канале связи:
1) Независимые (одиночные) – возникают по различным причинам независимо друг от друга. По статистике большинство ошибок одиночные и почти все коды рассчитаны на их исправление.
2) Группирующиеся ошибки (пакеты ошибок).
Скремблирование (англ. scramble — перемешивать) — разновидность кодирования информации, для передачи по каналам связи и хранения, улучшающая спектральные и статиcтические характеристики. Скремблирование есть приведение информации к виду, по различным характеристикам похожему на случайные данные. Скремблирование выравнивает спектр сигнала, частоты появления различных символов и их цепочек.
Наиболее распространённый способ скремблирования — смешивание сигнала с генератором псевдослучайных чисел.
Одним из эффективных методов уменьшения влияния пакетных ошибок является перемежение или перемешивание (англ. - interleaving). Данные, перед передачей по каналу связи, переставляются в заданном порядке, а в приемной части восстанавливается исходный порядок, т.е. выполняется деперемежение. При этом пакетная ошибка, возникшая в канале связи, превращается в набор рассредоточенных во времени одиночных ошибок, которые проще обнаруживаются и исправляются с помощью кодов, исправляющих ошибки.
