Добавлен: 19.10.2018
Просмотров: 884
Скачиваний: 15
Тема: Модель сети VNET в Matlab
Задание к курсовому проекту
1.Разработать модель сети VNET в Matlab
2. Описать модель (каждый блок)
Пример оформления:
2 Разработка имитационной модели
2.1
Архитектура системы
DVB-T2
сети VNET
В данной главе представлены архитектура системы и реализация в модели алгоритмов, описанных в стандарте.
Общая модель системы DVB-T2 представлена на рисунке 10. Вход(ы) системы может быть одним или несколькими транспортными потоками MPEG-2 и/или одним или несколькими общими потоками. Входной препроцессор, который не является частью системы DVB-T2, может включать в себя сплиттер сервисов или демультиплексор транспортных потоков (TS) для разделения сервисов на входы системы DVB-T2, которые являются одним или несколькими логическими потоками данных. После чего эти потоки переносятся в отдельных каналах физического уровня (PLP).
Выход системы — это, как правило, один сигнал для передачи по одному RF каналу. Опционально, система может создать второй набор выходных сигналов, которые должны быть переданы на второй набор антенн в так называемом режиме передачи MISO (Multiple Input, Single Output - несколько входов — один выход).
Рисунок 10 - Высокоуровневая блок-схема .системы DVB-T2
В целом, общая схема обработки сигналов в системе DVB-T2 существенно усложняется (рисунок 11).
В стандарте различаются три основных типа потоков - траспортный поток (Transport Stream - TS), обобщенный инкапсулированный поток (Generic Encapsulated Stream - GSE) и обобщенный непрерывный поток (Generic Continuous Stream - GCS). Каждый поток представляет собой последовательность пользовательских пакетов (UP - User Packet. Транспортный поток - это последовательность пакетов фиксированной длины (пакеты MPEG-2, 188 байт, первый бит - всегда синхробайт со значением Поток GSE характеризуется пакетами переменной или фиксированной длины, которая указывается в заголовках этих пакетов. Поток GCS представляет собой непрерывный поток битов. Реально - это или последовательность пакетов без указания их длины, или пакеты максимально возможной длины 64 Кбит.
Рисунок 11 - Схема обработки информации (передающая сторона) в системе DVB-T2
Пакеты каждого магистрального потока объединяются в потоковые (Baseband) кадры (BB-кадры) - отдельно для каждого потока (рисунок 12). ВВ-кадр содержит ВВ-заголовок (80 бит), поле данных и поле выравнивания. В последнем можно передавать данные внутриканальной сигнализации. В заголовке пакета содержится информация о типе транспортного потока, размере пользовательского пакета (при необходимости) и всего поля данных, наличии режимов удаления пустых пакетов и дополнительных синхропакетов, используется постоянная/переменная модуляция и т.п. Размер поля данных и выравнивающего поля определяется параметрами сверточного кодера ( в сумме не более 53770 бит). В телевизионных потоках зачастую используются пустые пакеты (для выравнивания скорости потока), разного рода задержки и т.п. для сохранения постоянной скорости потока. Поэтому в DVB-T2 предусмотрены средства удаления этой избыточной информации, но с возможностью ее восстановления на приемном конце. Кроме того, опционально предусмотрен и механизм сверточного кодирования CRC-8 на уровне пользовательских пакетов.
Рисунок 12 - Структура потоковых данных
Сформированный ВВ-кадр скремблируется (рандомизируется путем перемножения на псевдослучайную последовательность) и подвергается корректирующему кодированию. В качестве корректирующего кода используется каскадный код. В качестве внешнего кода в нем применен блоковый кодер БЧХ. В качестве внутреннего - LDPC. В зависимости от скорости кодирования LDPC, размер входного блока данных для БЧХ-кодера может различаться, однако выходной размер кодового слова после LDPC всегда составляет 64800 бит.
Перед модуляцией кодовые слова подвергаются побитному перемежению и распределяются по модуляционным символам (рисунок 11).
После формирования модуляционных символов происходит их перемежение в пределах кодового слова.
Все рассмотренные до сих пор процедуры выполняются параллельно для отдельных магистральных потоков. В результате для каждого PLP формируется последовательность модуляционных символов. Из них необходимо сформировать OFDM-символы.
Распределением потоков по кадрам занимается специальный диспетчер еще на стадии формирования ВВ-кадров. Уже тогда, задолго до формирования OFDM-символов, создается сигнальная информация.
Блок режима MISO (multiple input single output — много входов, один выход) введён для одночастотных сетей.
В блоке вставка пилот-сигналов добавляются три класса пилот-сигналов: постоянные (с фиксированным положением), рассеянные (циклически движущееся положение) или краевые (граничное положение). Есть 8 различных конфигураций для рассеянного пилот-сигнала (PP1 … PP8). Кроме того, ряд фиктивных поднесущих не модулировано и зарезервировано, чтобы уменьшить динамический диапазон выходного сигнала DVB-T2 (это уменьшает нелинейные искажения в усилителях мощности во время передачи).
Обратное дискретное преобразование Фурье (ОДПФ): классическое ОДПФ используется для перехода из частотной области во временную область, смещая положение поднесущих относительно средней несущей частоты. Доступно от 1k (1024) до 32k (32768) поднесущих. Существует также расширенный режим, который позволяет заполнить дополнительные данные в доступной полосе пропускания, используя больше активных поднесущих и сокращая количество нулевых поднесущих защитного диапазона.
Добавление защитного интервала: циклический префикс вставляется перед символом ОДПФ, чтобы выделить сигнал при наличии эхо-сигналов в канале передачи. Допускаются интервалы длиной от 1/128 до 1/4 от длины ОДПФ .
Добавление символа P1: символом P1 является отдельно созданным символом 1k OFDM, всегда вставляется в заголовке кадра. Она передает несколько бит информации (распространение, скремблирование и DBPSK модуляцией), служит для синхронизации (по времени и по частоте) и идентификации потока на приёмной стороне.
Цифро-аналоговое преобразование (ЦАП) : отсчёты DVB-T2 преобразуется в аналоговый комплексный BB-сигнал (I и Q). Частота дискретизации зависит от пропускной способности выделенной полосы частот. Например, при ширине канала 8 МГц, интервал дискретизации комплексных отсчётов 7/64 мкс.
2.2 Схема исследования характеристик и параметров ЦНТВ
Общая структурная модель для проведения исследований системы ЦНТВ представлена на рисунке 13.
Рисунок 13 - Модель ЦНТВ с измерителем вероятности ошибок
Для проведения исследований в среде моделирования Matlab была собрана имитационная модель с применением пакета SIMULINK для DVB-T2. Моделирование проводилось для всех режимов передачи (типов модуляции и кодовых скоростей). Исследование характеристик DVB-T2 в данной работе проводятся с гауссовым каналом передачи данных. Модель представлена на рисунке 8.
Система Matlab была выбрана, потому что библиотеки этой среды содержат полный набор инструментальных средств для поддержки проектирования и моделирования системы.
2.3 Описание блоков имитационной модели
2.3.1 Генерация данных (Packet Sourse на рисунке 14). Как следует из названия, этот блок будет отвечать за создание данных для системы DVB-T2, которые позже отправляются по каналу передачи.
В качестве генератора данных используется Бернулли генератор - это генератор двоичных чисел «0» и «1», имеющих распределение Бернулли. Система работает с двоичным типом данных.
Затем передаваемые данные пакетируются в BB-кадры, заголовок которых содержит информацию о характере данных.
В описании стандарта (EN 302 755) блок генерации данных выглядит следующим образом (рисунок 15).
Рисунок 15 – Блок генерации данных в стандарте
В модели генерация данных представлена блоками, изображенными на рисунке 16.
Рисунок 16 - Блок генерации данных в Matlab
2.3.1.1 Генератор Бернулли. Последовательность Бернулли - это распределение нулей и единиц вероятностью р и (р-1) соответственно. В этой модели, р = 0,5 в результате чего с равной вероятностью появляются 0 и 1. Выход этого блока кадров на основе того же размера как пакет MPEG-TS, который составляет 188* байт 8 бит и делает его размером в 1504 бит.
Параметры, которые задаются для этого блока, представлены на рисунке 17.
Рисунок 17 - Окно с параметрами блока «Packet Source»
- Probability of a zero. Данный параметр определяет вероятность появления нуля на выходе.
- Initial Seed. Начальное значение генератора случайных чисел.
- Sample Time. С этим значением связан период дискретизации сигнала.
- Samples per Time. Количество образцов, подлежащих передаче. Стандарт говорит, что мы должны использовать кадры по 188 байт. Мы генерируем 8 блоков по 188 байт, значит наше значение для этого поля будет 8 * 188 = 1504.
2.3.1.2 Формирование ВВ-кадра. Выходные данные генератора исходного пакета скапливаются в буфере, чтобы сформировать BB-кадр. Размер кадра зависит от скорости кодирования, равен размеру входа БЧХ-кодера. Формирование BB-кадра в модели производится с помощью двух блоков: буфера и блока добавления нулей (рисунок 18).
На выходе блока формируется нужно нам количество бит.
Рисунок 18 – Блок формирования ВВ-кадра
2.3.2 Кодирование и модуляция данных. На рисунке 19 представлена схема, реализующая кодирование, модуляцию и перемежение передаваемых данных.
Рисунок 19 - Схема, реализующая кодирование, модуляцию и перемежение передаваемых данных
2.3.2.1 Блоки кодирования. На данном этапе, сигнал, генерируемый ранее, подвергается помехоустойчивому кодированию для достижения более высокой надежности.
В стандарте DVB-T2 используется сочетание двух видов кодирования БЧХ и LDPC.
На рисунке 20 представлено окно с параметрами блока БЧХ – кодера. Рассмотрим каждый параметр подробнее:
- Codeword length. Длина кодового слова (количество бит на выходе кодера).
- Message length. Длина информационной последовательности (количе-ство бит на входе блока).
Так же необходимо задать генераторный и примитивный полиномы.
В таблице 11 представлены параметры кодера в зависимости от скорости кодирования.
Рисунок 20 – Окно с параметрами блока БЧХ – кодера.
Таблица 11 – Параметры кодера
Скорость кодирования |
Длина информационной последовательности, бит |
Длина кодового слова, бит |
1/2 |
32208 |
32400 |
3/5 |
38688 |
38880 |
2/3 |
43040 |
43200 |
3/4 |
48408 |
48600 |
4/5 |
51648 |
51840 |
5/6 |
53840 |
54000 |
На рисунке 21 представлено окно с параметрами блока LDPC – кодера.
Рисунок 21 - Окно с параметрами блока LDPC – кодера
В данном блоке задается специальная функция dvbs2ldpc, параметром которой является скорость кодирования.
2.3.2.2 Блок формирования модуляционных символов.
Блок Мatrix Interleaver1, представленный на рисунке 19, выполняет функцию Mapper-а. На данном этапе происходит формирование модуляционных символов. Данный параметр обозначает количество передаваемых бит на символ. В зависимости от выбранного вида модуляции этот параметр может принимать значения 2, 4, 6 и 8 (таблица 12).
Таблица 12 – Параметры формирования модуляционных символов
Длина входного блока |
Тип модуляции |
Количество передаваемых бит на символ |
Количество выходных символов |
|
|
64800
|
256-QAM |
8 |
8100 |
||
64-QAM |
6 |
10800 |
|||
16-QAM |
4 |
16200 |
|||
QPSK |
2 |
32400 |
2.3.2.3 Блок модуляции символов Для модуляции символов используется блок «Rectangular QAM». Блок модулирует с помощью M-ичной квадратурной амплитудной модуляции созвездие на прямоугольной решетке.
Окно с параметрами данного блока представлено на рисунке 22.
Рисунок 22 – Окно с параметрами блока «Rectangular QAM»
Рассмотрим основные параметры блока:
- М-ary number. Количество точек в сигнальном созвездии.
- Input type. Указывает тип входа, состоит ли целых чисел или групп битов.
- Constellation ordering. Определяет блок отображает каждый символ в группе выходных битов или число.
- Output data type. Тип выходных данных. Так как на выходе данные могут быть с плавающей точкой и большой размерности, то устанавливаем тип double.
2.3.2.4 Блок перемежения символов. Следующим шагом после формирования модуляционных символов идет перемежение модуляционных символов. В качестве временного перемежения используется блок «Matrix Interleaver». Данный блок записывает входной вектор по столбцам, а считывание происходит по строкам. Наглядное преставление процесса временного перемежения приведено в стандарте (рисунок 23).
Рисунок 23 - Временное перемежение
Окно с параметрами данного блока представлено на рисунке 24.
Рисунок 24 - Окно с параметрами блока «Matrix Interleaver»
- Number of rows. Количество строк. Значение выбирается в зависимости от стандарта. Например, для модуляции QPSK количество строк будет равно 6480.
- Number of сolumns. Количество столбцов. Данное значение вычисляется путем деления общего массива данных на количество строк. Получим: 32400/6480 = 5.
Параметры, которые используются в данном блоке представлены в таблице 13, их необходимо брать из стандарта DVB-T2.
Таблица 13 – Параметры для временного перемежения
Длина входной последовательности |
Тип модуляции |
Количество символов |
Количество строк |
64800 |
256-QAM |
8100 |
1620 |
64-QAM |
10800 |
2160 |
|
16-QAM |
16200 |
3240 |
|
QPSK |
32400 |
6480 |
2.3.3 Блок Buffer (рисунок 25). Цель буфера состоит в том, чтобы накапливать информацию, которая поступает после блоков помехоустойчивого кодирования (FEС), а именно 32400 тысячи символов, и выбирать информацию из 6698 тысячи символов. Это количество (6698 символов) - число активных несущих частот в модуляции OFDM. Следовательно, начиная с этого блока, мы начнаем работать с символами OFDM.
Рисунок 25 - Блок буфера
Параметры, которые использовались для блока (рисунок 26):
Рисунок 26 – Окно с параметрами блока «Buffer»
Рассмотрим параметры блока:
- Output buffer size. Как было сказано выше на выход буфера поступает 6698 символов.
- Buffer Overlap. Необходимо, чтобы информация, которая выходит не повторялась. Следовательно, значение этого поля будет ноль.
- Initial Conditions. Значение будет нулевым, так как необходимо, чтобы что- то передалось пока буфер наполняется.
2.3.4 Генерация OFDM-символов. На рисунке 27 изображена схема для генерации OFDM-символов.
Рисунок 27 - схема для генерации OFDM-символов
2.3.4.1 Блок «Pad». Перед началом процесса OFDM-модуляции имеем сигнал с 6817 несущими. Для того, что бы была возможность применить преобразование Фурье число несущих должно быть равно степени двойки. Таким образом, целью данного блока является добавление информации (в нашем случае, мы заинтересованы в том, чтобы добавить нули) к входному сигналу для достижения желаемого размера. Окно с параметрами блока «Pad» представлено на рисунке 28.
Рисунок 28 - Окно с параметрами блока «Pad»
Рассмотрим параметры данного блока:
- Pad over – так как мы работаем со столбцами, то выбираем значение поля columns.
- Pad value source – выбираем опцию Especify via dialog.