- •Первые 30 вопросов
- •2. Определение понятий: синхронизация поэлементная, групповая и цикловая синхронизация.
- •4. Классификация кодов. Основные характеристики кодов. Разрешенные и запрещенные комбинации. Корректирующая способность. Избыточность. Понятие минимального кодового расстояния. Границы Хэмминга.
- •6. Циклические коды. Принцип обнаружения ошибок. Выбор порождающего полинома.
- •7. Методы построения циклических кодов. Структурная схема кодирующего и декодирующего устройства.
- •8. Канальное кодирование. Сверточные коды. Алгоритм Витерби. Канальное кодирование.
- •9. Характеристики системы с обратной связью и их особенности. Структурная схема система с информационной обратной связью /иос/, характеристики и алгоритм работы.
- •10. Структурная схема система решающей обратной связью /рос/. Виды системы с рос: системы с ожиданием служебных сигналов, системы с непрерывной передачей и блокировкой, системы с адресным переспросом.
- •12. Алгоритм сжатия lzw.
- •16. Сжатие изображений. Алгоритм сжатия jpeg.
- •18. Спектральные характеристики модулированных колебаний. Прием сигнала в гауссовом шуме. Оптимальный приемник. Когерентный и некогерентный прием. Цифровой согласованный фильтр.
- •19. Функциональная схема и основные элементы системы цифровой связи. Назначение функциональных узлов, основные понятия.
- •22. Дк каналы без памяти, с памятью, дискретный симметричный канал. Марковские модели дк, модель Гильберта. Симметричный канал со стиранием.
- •23. Помехи в каналах связи. Классификация помех. Аддитивные и мультипликативные помехи и их воздействие на полезные сигналы. Краевые искажения и дробления.
- •24. Методы регистрации сигналов
- •25. Межсимвольная интерференция. Теорема Найквиста, импульс Найквиста.
- •26. Логическое Кодирование – заменяет длинные последовательности элементов, приводящих к постоянному потенциалу другими последовательностями устраняющими данный недостаток.
- •27. Простейшие коды линейного сигнала nrz, rz, ami, фазовое кодирование, манчестерское кодирование и их спектры.
- •28. Арифметическое кодирование. Алгоритм. Преимущества и недостатки.
- •29. Коды Хэмминга. Принцип построения кодов Хэмминга для коррекции одиночных и обнаружения двоичных ошибок. Реализация кодирующего и декодирующего устройства. Корректирующие свойства.
- •30. Соотношение между скоростью передачи и шириной полосы канала, формула Шеннона. Критерий качества, отношение сигнал-шум.
- •Вторые 30 вопросов
- •2. Спектр псевдошумовых последовательностей. Глазковая диаграмма
- •4. Импульсно-кодовая модуляция. Икм-кодирование постоянного и синусоидального напряжений.
- •6. Дискретизация при импульсно-кодовой модуляции. Наложение спектров и частота Найквиста
- •7. Линейное кодирование. Восстановление сигнала битовой синхронизации.
- •9. Амплитудная манипуляция. Демодуляция ask сигнала.
- •Частотная манипуляция сигналов
- •11. Двоичная фазовая манипуляция. Демодуляция bpsk сигнала.
- •17. Моделирование каналов связи в системе Matlab. Примеры. Моделирование каналов в системе matlab
- •Аддитивный Канал с Нормальным Белым Шумом (awgn Channel)
- •Двоично – симметричный канал (Binary Simmetric Channel, bsc)
- •22. Реализация приемопередатчика с различными видами манипуляцией в Matlab. Пример.
- •23. Протоколы модуляции серии V
- •24. Протоколы исправления ошибок V.42
- •25. Протоколы исправления ошибок mnp
- •27. Единичная импульсная функция – дельта-функция Дирака
- •29. Протоколы н.263, н.264 и н.265
Двоично – симметричный канал (Binary Simmetric Channel, bsc)
При исследовании кодеров и декодеров и при отсутствии необходимости исследования обработки сигнала в демодуляторе, под «каналом» удобно понимать объект, включающий в себя несколько физических объектов. Так, в модели Двоично – симметричный канал (ДСК, Binary Simmetric Channel, BSC) включает модулятор, физический канал связи и демодулятор.
В примере битовая последовательность содержит 100 отсчётов 0 и 1, канал искажает двоичный сигнал, изменяя каждый передаваемый бит с заданной вероятностью P0=0,5. Он полностью по свойствам и параметрам совпадает с биномиальной моделью. Ошибки при передаче через канал проявляются в смене 0 на 1 и наоборот. Вероятность появления ошибок P0=0.1, поэтому на 100 отсчётов должно быть около 10 ошибок. Модель такого канала может быть полезна для того, чтобы проверить качество кодирования с контролем ошибок. Для моделирования бинарного симметричного канала используется функция bsc, имеющая два входных аргумента – двоичный сигнал s и вероятность. Модель, показанная на рисунке 1, содержит самые основные элементы системы коммуникации: источник сигнала (Bernulli Binary Generator из секции Comm Sources), канал с шумом (BSC из секции Channels) и средствами обнаружения ошибок, вызванных шумом (Error Rate Calculation из секции Comm Sinks). Строится она из блоков в следующем порядке: сначала выбираются блоки для моделирования шума в канале, затем устанавливаются параметры модели шума, потом блоки соединяются, и вся модель канала тестируется средствами приложения Simulink.
Рисунок 1. Блок-схема моделирования бинарного симметричного канала (BSC)
На рис. 1 видны только общие количественные результаты моделирования: 7 ошибок на 100 битовых позиций.
Блок-схема состоит из следующих блоков:
Bernoulli Binary Generator - случайные дискретные сигналы. Источник случайного двоичного сигнала с законом распределения Бернулли (Bernoulli binary) позволяет моделировать псевдослучайные двоичные последовательности. Источник случайных целых чисел, распределенных по закону Пуассона (Poison Integer Generator) удобен при моделировании шумов в двоичных каналах передачи.
Binary Symmetric Channel (BSC) - двоично - симметричный канал включает модулятор, физический канал связи и демодулятор.
Error Rate Calculation - счетчик ошибок. Позволяет автоматически подсчитывать вероятность битовых и символьных ошибок, сравнивая сигнал, поступающий на вход передатчика с сигналом, снимаемым с выхода приемника.
Display – отображает значение сигнала в виде числа
Scope – осциллограф отображает результаты моделирования
Рисунок 2. Результаты моделирования бинарного симметричного канала в Simulink
На рис. 2 приведены три синхронных фрагмента битовых последовательностей на входе и выходе канала, наглядно показывающие появление ошибки – смену 0 на 1.
Модель кодека для двоично-симметричного канала приведена на рисунке 3.
Рисунок 3. Модель кодека Хэмминга для двоично-симметричного канала с вероятностью ошибки 0.1
Используется классический блоковый код Хэмминга (7,4), исправляющий одну любую ошибку в кодовом слове.
Как видно на блок-схеме, первый вход дисплея мы подключили до блока Binnary Symmetric Channel, а второй после него. Error Rate Calculation сравнивает два входа между собой и выдает одну ошибку на дисплее, так как в двоично - симметричном канале появилась одна ошибка.
На втором дисплее видно, что ошибка созданная в двоично - симметричном канале была исправлена, с помощью кода Хэмминга.
18. Как реализовать устройство логического кодирования. Пример.Логическое кодирование - это предварительное изменение передаваемой информации с целью сделать ее более удобной для передачи. Например, путем логического кодирования избавляются от длинных последовательностей нулей и единиц.Избыточное кодирование – вариант логического кодирования, при котором к передаваемой информации добавляется дополнительная. При этом передаваемая последовательность бит разбивается на порции, называемые символами. Затем каждый символ заменяется на новый, имеющий большее количество бит, чем исходный. Например, логический код 4В/5В заменяет исходные символы длиной 4 бита на символы длиной 5 бит. При этом возникает 16 запрещенных символов, прием которых свидетельствует об ошибке связи.При избыточном кодировании передатчик должен работать с повышенной частотой, но это оправдывается тем, что спектр потенциального кода с избыточностью не имеет постоянной составляющей, уже, чем у манчестерского кода, и имеет возможность исправления ошибок передачи. В основном для логического кодирования применяются три группы методов:вставка бит;избыточное кодирование; скремблирование.
20. Как реализовать помехоустойчивое кодирование в программных симуляторах. Кодирование с исправлением ошибок, по существу, представляет собой метод обработки сигналов, предназначенный для увеличения надежности передачи по цифровым каналам. Хотя различные схемы кодирования очень непохожи друг на друга и основаны на различных математических теориях, всем им присущи два общих свойства. Одно из них - использование избыточности. Закодированные цифровые сообщения всегда содержат дополнительные, или избыточные, символы. Эти символы используют для того, чтобы подчеркнуть индивидуальность каждого сообщения. Их всегда выбирают так, чтобы сделать маловероятной потерю сообщением его индивидуальности из-за искажения при воздействии помех достаточно большого числа символов. Второе свойство состоит в усреднении шума. Эффект усреднения достигается за счет того, что избыточные символы зависят от нескольких информационных символов. Для понимания процесса кодирования полезно рассмотреть каждое из этих свойств отдельно.
Рассмотрим вначале двоичный канал связи с помехами, приводящими к тому, что ошибки появляются независимо в каждом символе и средняя вероятность ошибки равна Р=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, заключенную между штриховыми линиями. Заметим, что после построения этой части осталось воcемь последовательностей. Каждая из этих последовательностей отличается от каждого кодового слова не менее чем в двух позициях. Однако в отличие от других последовательностей эти восемь последовательностей нельзя однозначно разместить в таблице. Например, последовательностью можно поместить либо в первый, либо в четвертый столбец. При использовании этой таблицы в процессе декодирования нужно найти столбец, в котором содержится принятая последовательность, и а качестве выходной последовательности декодера взять кодовое слово, находящееся в верхней строке этого столбца.
Таблица 2. Таблица декодирования для кода с четырьмя словами
00000 10000 01000 00100 00010 00001 |
11100 01100 10100 11000 11110 11101 |
00111 10111 01111 00011 00101 00110 |
11011 01011 10011 11111 11001 11010 |
10001 10010 |
01101 01110 |
10110 10101 |
01010 01001 |
