549_Sovremennye_problemy_telekommunikatsij_
.pdfностей и связанных с этим требований к отношению несущая-шум. Кроме того, стандарт не завязан на видео- и аудиокодеке MPEG-2. Он разработан для передачи информации разных форматов (как аудио/видео, так и данных). DVB-S2 способен согласоваться с любым форматом входного потока, включая непрерывные битовые потоки, одиночные или множественные транспортные потоки MPEG, а также пакеты IP и ATM. Такая совместимость позволит в будущем осуществлять передачу данных любых новых форматов без необходимости разработки новой спецификации.
В DVB-S2 доступны режимы обратной совместимости, позволяющие существующим сервисам на DVB-S и пользовательским ресиверам продолжать работу в течение любого переходного периода [1].
3. Стандартная модель DVB-S2 в среде Matlab
3.1.Обзор
Всреде Matlab присутствуют шаблоны моделей основных цифровых систем передачи, таких как DVB-T, DVB-C и DVB-S2. Представление этих моделей разработано ETSI. На рис. 1 изображена блок-схема модели DVB-S2 в среде Matlab. В последующих разделах рассмотрим в отдельности каждый из используемых в модели блоков.
Рис. 1. Блок-схема системы DVB-S2 в среде Matlab
3.2. Генератор последовательности Бернулли
Первый блок отвечает за генерацию сбалансированной в плане вероятности появления бит случайной бинарной последовательности. Последовательность Бернулли – распределение нулей и единиц с вероятностями p и 1-p соответственно. В этой модели p приравнивается 0.5, что дает одинаковую вероятность появления нуля и единицы. На выход этого блока поступают кадры с такой же длиной, как у пакетов MPEG-TS (188 байт, т.е. 1504 бита).
3.3. Буферизация / дебуферизация BBFRAME
Выходной сигнал с генератора подвергается буферизации для создания кадров BBFRAME (Base Band Frame). Размер этих кадров соответствует используемой скорости кодирования, равен размеру входного кадра для БЧХ-кодера. Число информационных бит (Data Field, DFL) может быть вычислено по формуле:
161
DFL KBCH 80 , |
(1) |
где KBCH – размер входного кадра для внешнего кодера (БЧХ), 80 – размер заголовка (BBHEADER) кадра BBFRAME. Структура кадра BBFRAME отображена на рис. 2.
Рис. 2. Структура кадра BBFRAME
Количество MPEG-пакетов, которое можно поместить в один BBFRAME, определяется как:
Nпакетов |
KBCH 80 |
. |
(2) |
|
1504 |
||||
|
|
|
Чтобы дополнить кадр BBFRAME для соответствия входу внешнего БЧХ-кодера применяется дополнение нулевыми битами. На приемной стороне блок дебуферизации отвечает за извлечение добавленных нулевых бит и заголовка BBHEADER для восстановления MPEG- пакетов из принятых кадров. Число добавляемых нулевых бит определяется как:
Nнул.бит KBCH (Nпакетов 1504 80). |
(3) |
3.4. БЧХ-кодер / декодер
Одним из преимуществ стандарта DVB-S2 является система прямой коррекции ошибок, предназначенная для снижения коэффициента битовых ошибок. Для этой цели применяется кодирование БЧХ. На выход блока буферизации, как было отмечено выше, поступают кадры с длиной в KBCH бит, которые поступают на кодер БЧХ с характеристикой (NBCH,KBCH )
и исправляющей способностью t. Для каждой из 11 скоростей кодирования, представленных в стандарте, величины KBCH и NBCH определяются в том числе по параметру исправляю-
щей способности t. В табл. 1 и 2 эти значения приведены для стандартных и коротких кадров.
На выход кодера БЧХ поступают кадры BCHFEC, создаваемые путем добавления битов проверки четности таким образом, что длина кадра становится равна NBCH . Эти кадры с
длиной NBCH поступают на вход внутреннего кодера LDPC. Структура всего кадра FECFRAME показана на рис. 3.
162
Рис. 3. Структура кадра FECFRAME
Таблица 1. Параметры кодирования для кадра FECFRAME стандартной длины
NLDPC 64800
Скорость |
Блок на входе БЧХ- |
Блок на выходе |
Исправляющая спо- |
Блок на выходе |
LDPC |
кодера KBCH |
БЧХ-кодера |
собность БЧХ t |
LDPC-кодера |
|
|
KLDPC |
|
NLDPC |
1/4 |
16008 |
16200 |
12 |
64800 |
1/3 |
21408 |
21600 |
12 |
64800 |
2/5 |
25728 |
25920 |
12 |
64800 |
1/2 |
32208 |
32400 |
12 |
64800 |
3/5 |
38688 |
38880 |
12 |
64800 |
2/3 |
43040 |
43200 |
10 |
64800 |
3/4 |
48408 |
48600 |
12 |
64800 |
4/5 |
51648 |
51840 |
12 |
64800 |
5/6 |
53840 |
54000 |
10 |
64800 |
8/9 |
57472 |
57600 |
8 |
64800 |
9/10 |
58192 |
58320 |
8 |
64800 |
Таблица 2. Параметры кодирования для короткого кадра FECFRAME NLDPC 16200
Скорость |
Блок на входе |
Блок на вы- |
Исправляю- |
Эффективная |
Блок на выходе |
LDPC |
БЧХ-кодера |
ходе БЧХ- |
щая способ- |
скорость LDPC |
LDPC-кодера |
|
KBCH |
кодера |
ность БЧХ t |
KLDPC /16200 |
NLDPC |
|
|
KLDPC |
|
|
|
1/4 |
3072 |
3240 |
12 |
1/5 |
16200 |
1/3 |
5232 |
5400 |
12 |
1/3 |
16200 |
2/5 |
6312 |
6480 |
12 |
2/5 |
16200 |
1/2 |
7032 |
7200 |
12 |
4/9 |
16200 |
3/5 |
9552 |
9720 |
12 |
3/5 |
16200 |
2/3 |
10632 |
10800 |
12 |
2/3 |
16200 |
3/4 |
11712 |
11880 |
12 |
11/15 |
16200 |
4/5 |
12432 |
12600 |
12 |
7/9 |
16200 |
5/6 |
13152 |
13320 |
12 |
37/45 |
16200 |
8/9 |
14232 |
14400 |
12 |
8/9 |
16200 |
9/10 |
- |
- |
- |
- |
- |
163
3.5. LDPC-кодер / декодер
Кадры с длиной NBCH на выходе БЧХ-кодера (входные кадры для внутреннего FEC-
кодера) поступают на LDPC-кодер, обеспечивающий защиту от ошибок с помощью битов четности. Число битов четности задается как:
Nбит.четн.LDPC NLDPC NBCH . |
(4) |
LDPC-кодер поддерживает 11 значений скорости кодирования. Эти скорости кодирования являются отношениями числа информационных бит ( NBCH ) к общему количеству бит в
LDPC блоке. Например, для скорости 1/4 и нормального кадра:
NBCH |
|
16200 |
|
1 . |
(5) |
|
NLDPC |
64800 |
|||||
|
|
4 |
|
Это означает, что для каждого бита информации, отправленного с внешнего кодера (БЧХ), в LDPC-кодере будет сформировано и добавлено 3 бита проверки четности. Чем ниже значение этого отношения, тем более данные защищены от ошибок. Это позволяет обеспечивать более надежную и устойчивую передачу данных, при этом снижая пропускную способность системы. На приемной стороне в LDPC-декодере проверяется принимаемая последовательность, пока проверка на четность не пройдет 50 итераций. При этом используются разреженные матрицы контроля четности с алгоритмом жесткого принятия решения.
3.6. Перемежитель / деперемежитель
Перемежение – это следующий процесс в DVB-S2 при применении модуляции 8PSK, 16APSK и 32APSK. При QPSK перемежение не применяется. Структура перемежителя приведена в табл. 3.
Таблица 3. Структура битового перемежителя
Модуляция |
Строки ( NLDPC 64800 ) |
Строки ( NLDPC 16200 ) |
Столбцы |
8PSK |
21600 |
5400 |
3 |
16APSK |
16200 |
4050 |
4 |
32APSK |
12960 |
3240 |
5 |
Данный блок в Matlab осуществляет перемежение при 8PSK путем записи в буфер данных с выхода LDPC-кодера в матричном виде последовательно в 3 столбца из NLDPC бит
каждый (21600 для 8PSK) сверху вниз, а затем считывания данных построчно слева направо (для всех вариантов скорости кодирования кроме 3/5; в этом случае считывание идет справа налево). MSB (старший значащий бит) заголовка BBHEADER будет считан первым при любой скорости кодирования, кроме 3/5; при скорости кодирования 3/5 он будет считан третьим по счету битом. Эти процессы показаны на рис. 4 и 5.
В процессе перемежения создаются матрицы с количеством строк, соответствующим кратности модуляции M , так что каждая строка содержит биты, готовые к преобразованию в один символ в следующем блоке – модуляторе. На приемной стороне блок деперемежения принимает сигнал с демодулятора и производит обратный процесс для восстановления последовательности бит и передачи их на вход LDPC-декодера.
164
Рис. 4. Принцип битового перемежения для 8PSK и стандартной длины кадра FECFRAME (все скорости кроме 3/5)
Рис. 5. Принцип битового перемежения для 8PSK и стандартной длины кадра FECFRAME (только для скорости 3/5)
3.7.Модулятор / демодулятор
Впервую очередь в модуляторе производится преобразование каждой строки из перемежителя в символ (в данном случае используется код Грея), затем полученные символы преобразуются в соответствующие им точки на сигнальном созвездии [3]. Созвездия сигнальных точек для QPSK и 8PSK приведены на рис. 6 и 7 соответственно. Фазовый сдвиг созвездия как при QPSK, так и при 8PSK имеет одинаковое значение, которое приведено в (7); средняя энергия на символ для нормированного созвездия соответствует:
2 1. |
(6) |
4 . |
(7) |
165 |
|
Рис. 6. Созвездие сигнальных точек модуляции QPSK
Рис. 7. Созвездие сигнальных точек модуляции 8PSK
3.8. Канал с аддитивным белым гауссовским шумом
Блок представляет из себя симуляцию канала с AWGN. В блоке к комплексному сигналу из модулятора добавляется шумовая составляющая, задающаяся с помощью определенного параметра пользователем. Этим параметром может быть Es / N0 , Eb / N0 или SNR ; в любом
случае, в блоке будет вычислена дисперсия шума, а затем шум с нулевым средним значением
будет добавлен к сигналу. Соотношения между |
Es / N0 , |
Eb / N0 и SNR выглядят следую- |
|||||||
щим образом: |
|
|
|
|
|
|
|
||
|
|
Es |
|
Tсим |
SNR, |
(8) |
|||
|
|
|
|
|
|||||
|
|
N |
0 |
|
T |
|
|
||
|
|
|
|
|
д |
|
|
||
|
Es |
|
|
Eb |
10 logk , |
(9) |
|||
|
N0 |
|
N0 |
||||||
|
|
|
|
|
|
|
|||
где Es – энергия сигнала в джоулях, |
|
|
Eb |
– энергия бита в джоулях, N0 – спектральная |
|||||
плотность мощности шума, Tсим – длительность символа, |
Tд – период дискретизации. |
166
4. Дополненная модель DVB-S2
4.1. Обзор
Для проведения наиболее близкой к реальности симуляции целесообразно дополнить приведенную в среде Matlab блок-схему DVB-S2 алгоритмом ACM с полным набором возможных схем модуляции и скоростей помехоустойчивого кодирования, а также систему измерения качества видео. Для этого следует добавить схемы модуляции 16APSK и 32APSK и вычисление PSNR (Peak Signal to Noise Ratio). Модель изображена на рис. 8. Описание блоков модели приведено ниже.
Рис. 8. Дополненная модель DVB-S2
4.2.Поток MPEG-TS
Всреде Matlab в модели DVB-S2, как было ранее отмечено, используется генератор случайной последовательности Бернулли для формирования входного сигнала системы. Для того, чтобы проанализировать влияние алгоритма ACM на качество передачи реального потока MPEG, используется транспортный поток MPEG-TS, хранящийся в матрице из 188 столбцов (один пакет MPEG) и 100000 строк (число пакетов). Эти данные используются как входной сигнал для системы и на приемной стороне будут снова собраны в матрицу для вычисления
PSNR.
167
4.3. Вычисление PSNR
Пиковое отношение сигнала к шуму широко применяется для оценки качества принимаемого видеопотока. Для вычисления PSNR (дБ) используется MSE (Mean Square Error, среднеквадратическая ошибка), которая также является часто применяемой мерой ошибок для оценки качества видео. Расчет MSE производится следующим образом:
MSE |
1 |
|
Ps Pr 2 |
, |
(10) |
||||
|
|||||||||
|
N |
|
i |
i |
|
|
|||
|
|
|
|
|
|
|
|
|
|
где N обозначает число пикселей изображения, тогда как Ps и Pr |
– исходное и приня- |
||||||||
тое изображения соответственно. Далее вычисляется PSNR: |
|
||||||||
PSNR 10log |
|
2n 1 2 |
|
, |
(11) |
||||
|
|
MSE |
|||||||
|
|
|
|
|
|
|
|
где n – число битов яркости, используемых в изображении [4].
4.4. Перемежитель / деперемежитель
Перемежение для 16APSK и 32APSK осуществляется через два блока, включенных в модель в соответствии с рекомендациями ETSI. Число строк и столбцов перемежителя представлено в таблице 3. На рис. 9 приведена структура перемежителя для 16APSK. Единственное отличие перемежителя для 32APSK от такового для 16APSK – число столбцов увеличивается с 4 до 5; соответственно, число строк также будет иным.
Рис. 9. Принцип битового перемежения для 16APSK и стандартной длины кадра FECFRAME
4.5. Модулятор / демодулятор
Высокопозиционные методы модуляции, представленные в DVB-S2, позволяют обеспечить высокую спектральную эффективность в сравнении с ранним стандартом DVB-S [2].
168
Для того чтобы проанализировать производительность в плане коэффициента битовых ошибок (BER), а также добавления алгоритма ACM в данную модель, необходимо включить в модель схемы модуляции 16APSK и 32APSK. Модулятор отвечает за перевод наборов бит в символы и формирование созвездия сигнальных точек для подготовки информационного сигнала к передаче.
Созвездие сигнальных точек схемы модуляции 16APSK, как описано ETSI, состоит из двух концентрических окружностей с радиусами R1 и R2 . На этих окружностях равномерно
распределены 4 и 12 точек соответственно [5]. Вид созвездия представлен на рис. 10. Отношение радиусов окружностей:
|
R2 |
. |
(12) |
R1
Рис. 10. Созвездие сигнальных точек модуляции 16APSK
Созвездие 32APSK состоит из трех окружностей с 4, 12 и 16 равномерно распределенными на них точками. Окружности имеют радиусы R1, R2 и R3 [5]. Отношения радиусов:
1 |
|
R2 |
, |
(13) |
||
R1 |
||||||
|
|
|
|
|
||
2 |
|
R3 |
. |
(14) |
||
|
||||||
|
|
R1 |
|
|
|
Созвездие сигнальных точек для модуляции 32APSK представлено на рис. 11.
169
Рис. 11. Созвездие сигнальных точек модуляции 32APSK
На приемной стороне демодулятор принимает сигнал из AWGN-канала. При этом сигнал зашумлен. Демодулятору требуется значение дисперсии шума в канале для вычисления логарифмического отношения правдоподобия сигнала (LLR, ЛОП). Для выполнения данного расчета можно использовать приближенный алгоритм ЛОП.
Таблица 4. Требуемые значения Es / N0 для обеспечения QEF при различных комбинациях модуляции и кодирования
Режим |
Спектральная эффективность |
Идеальное значение Es / N0 для кадра |
|
|
FECFRAME длиной 64800 |
QPSK 1/4 |
0.490243 |
-2.35 |
QPSK 1/3 |
0.656448 |
-1.24 |
QPSK 2/5 |
0.789412 |
-0.30 |
QPSK 1/2 |
0.988858 |
1.00 |
QPSK 3/5 |
1.188304 |
2.23 |
QPSK 2/3 |
1.322253 |
3.10 |
QPSK 3/4 |
1.487473 |
4.03 |
QPSK 4/5 |
1.587196 |
4.68 |
QPSK 5/6 |
1.644663 |
5.18 |
QPSK 8/9 |
1.766451 |
6.20 |
QPSK 9/10 |
1.788612 |
6.42 |
8PSK 3/5 |
1.779991 |
5.50 |
8PSK 2/3 |
1.980636 |
6.62 |
8PSK 3/4 |
2.228124 |
7.91 |
8PSK 5/6 |
2.478562 |
9.35 |
8PSK 8/9 |
2.646012 |
10.69 |
8PSK 9/10 |
2.679207 |
10.98 |
16APSK 2/3 |
2.637201 |
8.97 |
16APSK 3/4 |
2.966728 |
10.21 |
16APSK 4/5 |
3.165623 |
11.03 |
16APSK 5/6 |
3.300184 |
11.61 |
|
170 |
|