удалением некоторых битов из слов материнского сверточного кода. Обычно материнские сверточные коды для перфорирования являются хорошими кодами с низкими скоростями 1/2, 1/3 или 1/4. С помощью разных векторов перфорирования создаются перфорированные сверточные коды с высокими скоростями, например 2/3, 3/4... 7/8. Эффективности перфорированных сверточных кодов зависит не только от характеристик материнских кодов, но и от вектора перфорирования.
В первой главе диссертации рассмотрены также методы декодирования сверточного кода: декодирование Витерби и алгоритм последовательного декодирования. Проведенные исследования выполнены в предположении реализации алгоритма Витерби с мягким решением.
Во второй главе описаны критерии поиска оптимальных сверточных кодов. Для поиска хороших сверточных кодов используются следующие критерии: поиск по максимальному свободному расстоянию (МСР), поиск по профилю оптимального расстояния (ПОР), поиск по спектру оптимального расстояния (СОР) и поиск по вероятности битовой ошибки Pb . Рассмотрен
критерий СОР, обеспечивающий поиск кодов высокой эффективности.
Спектр сверточного кода определяется множествами {ad } , cd и
свободным расстоянием dCB |
в формулах (5), (6). |
|
|
||||
По критерию СОР сверточный код |
C(G1,G2 ,...Gn ) |
с параметрами dCB , cd |
|||||
лучше другого кода |
|
|
|
|
|
, если удовлетворяются |
|
C(G1 |
,G2 |
,...,Gn ) с параметрами dCB , |
cd |
||||
условия: |
|
|
|
|
|
|
|
1. dCB dCB |
или |
|
|
|
|
|
|
|
|
|
|
|
при изменении расстояния от d dCB |
||
2. dCB dCB |
и cd cd |
при d dCB или cd cd |
|||||
до d dCB 1, и cd |
cd при d dCB , где - целое 0 . |
||||||
|
|
|
|
|
|
|
|
Результаты поиска хороших сверточных кодов со скоростями 1/2, 1/3, 1/4 и с кодовыми ограничениями K 3,...,11 по критерию СОР показаны в таблице 1, где символы (*) и (**) указывают на совпадение найденных кодов с кодами, оптимальными по критериям МСР и ПОР.
Таблица 1 - Хорошие сверточные коды по критерию СОР
K |
Код со скоростью 1/2 |
Код со скоростью 1/3 |
Код со скоростью 1/4 |
3 |
C(5,7) (*), (**) |
C(5,7,7) (*), (**) |
C(5,5,7,7) (*) |
4 |
C(15,17) (*) |
C(13,15,17) (*), (**) |
C(13,15,15,17) (*) |
5 |
C(23,35) (*), (**) |
C(25,33,37) (*), (**) |
C(25,27,33,37) (*) |
6 |
C(53,75) (*) |
C(47,53,75) (*), (**) |
C(51,55,67,77) |
7 |
C(133,171) (*) |
C(133,165,171) |
C(117,127,155,171) |
8 |
C(247,371) (*) |
C(225,331,367) (*) |
C(231,273,327,375) |
9 |
C(561,753) (*) |
C(575,623,727) |
C(473,513,671,765) |
10 |
C(1151,1753) |
C(1233,1375,1671) |
C(1173,1325,1467,1751) |
11 |
C(3345,3613) |
C(2335,2531,3477) |
C(2565,2747,3311,3723) |
Критерий СОР анализирует часть спектра кода. Поэтому возможно существование кодов, помехоустойчивость которых выше, чем у кода,
6
оптимального по критерию СОР. Найдена пара кодов C(53,75) C(51,77) подтверждающая это положение. Спектры этих кодов с ограничением K 6 показаны в таблице 2.
Таблица 2 - Спектры кодов C(51,77), С(53,75)
|
K |
|
Код |
dCB |
|
(ad, d= dCB, dCB +1, …, dCB +10) |
|
|
|
|
|
|
|
|
|||||||||
|
|
|
[cd , d= dCB, dCB +1, …, dCB +10] |
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||
|
6 |
|
C(51,77) |
8 |
|
(2, 3, 8, 15, 41, 90, 224, 515, 1239, 2896, 6879) |
|
|
|
|
|
||||||||||||
|
|
|
[4, 11, 36, 83, 250, 630, 1776, 4531, 11982, 30474, 78492] |
|
|
|
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
||||||||||||||
|
6 |
|
C(53,75) |
8 |
|
(1, 8, 7, 12, 48, 95, 281, 605, 1272, 3334, 7615) |
|
|
|
|
|
||||||||||||
|
|
|
[2, 36, 32, 62, 332, 701, 2342, 5503, 12506, 36234, 88576] |
|
|
|
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
||||||||||||||
|
|
|
По критерию СОР код C(53,75) лучше, |
потому что при равенстве dCB 8 |
|||||||||||||||||||
двух |
|
кодов первое слагаемое cd |
спектра |
кода |
C(53,75) меньше |
первого |
|||||||||||||||||
слагаемого кода C(51,77). Однако при |
d dCB 1 |
второе |
слагаемое |
cd |
кода |
||||||||||||||||||
C(51,77) значительно меньше второго слагаемого кода C(53,75). Критерий |
|||||||||||||||||||||||
поиска СОР не учитывает эти отличия. |
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
Для сравнения помехоустойчивости этих кодов рассчитаны верхние |
||||||||||||||||||||
границы вероятности битовой ошибки. Откуда следует, что код C(53,75) |
|||||||||||||||||||||||
является |
лучшим в |
|
диапазоне |
E |
N |
0 |
7 дБ |
или |
при |
P 6.34 10 9 . |
При |
||||||||||||
|
|
|
|
|
|
|
|
|
|
b |
|
|
|
|
|
|
|
b |
|
|
|
|
|
вероятности P 6.34 10 9 код C(51,77) лучше кода C(53,75). |
|
|
|
|
|
||||||||||||||||||
|
|
|
|
b |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Другим примером несовершенства критерия СОР могут служить коды |
||||||||||||||||||||
C(2153,3705) и C(3345,3613) с ограничением K 11. Код C(3345,3613) является |
|||||||||||||||||||||||
лучшим по критерию СОР. Показано, |
что |
|
при |
|
отношении |
Eb N0 7,65 дБ |
|||||||||||||||||
значения верхней границы кода C(2153,3705) всегда меньше значений верхней |
|||||||||||||||||||||||
границы кода C(3345,3613). А при отношении Eb N0 |
7,65 дБ код C(3345,3613) |
||||||||||||||||||||||
характеризуется меньшими значениями вероятности битовой ошибки. |
|
|
|
||||||||||||||||||||
|
|
На практике сверточные коды и ПСК используются в определенном |
|||||||||||||||||||||
диапазоне |
отношений |
Eb N0 |
при |
заданной |
достоверности |
декодирования |
|||||||||||||||||
(вероятности Pb ). Например, критерий цифрового |
телевидения |
DVB - |
|||||||||||||||||||||
Вьетнамский стандарт цифрового телевидения DVB - S требует обеспечить |
|||||||||||||||||||||||
вероятность битовой ошибки |
P 2 10 4 , а стандарт DVB - S2 P 2 10 7 . В |
||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
b |
|
|
|
|
|
|
|
|
|
|
b |
|
|
|
европейском стандарте DVB требуется вероятность битовой ошибки |
P от 10-3 |
||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
b |
|
|
до 10-7. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
В третьей главе описаны созданные алгоритмы и программы поиска |
|||||||||||||||||||||
оптимальных сверточных кодов и ПСК. |
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
|
|
|
Блок-схема программы поиска оптимальных сверточных кодов и ПСК |
||||||||||||||||||||
показана на рисунке 1, где выделены |
блоки «Вычисление Pb по верхней |
||||||||||||||||||||||
границе» и «Вычисление Pb симуляцией SIMULINK». |
Стрелки со штриховой |
||||||||||||||||||||||
линией указывают на выбор только одного из двух методов. Результаты вычислений сохраняются в базе данных и показываются на мониторе.
7
Интерфейс пользователя
Вычисление Pb |
|
|
|
|
Вычисление Pb |
||
Входные данные |
|||||||
по верхней |
|
|
|
|
симуляцией |
||
|
|
|
|
||||
границе |
|
|
|
|
SIMULINK |
||
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Сравнение, выбор |
|
|
|
|
|
|
|
оптимальных кодов |
|
|
|
|
|
|
|
|
|
|
|
|
Платформа MATLAB
База данных |
Отображение результатов |
|
|
|
на мониторе |
|
|
Рисунок 1 - Блок-схема программы поиска оптимальных кодов
Алгоритмы поиска оптимальных сверточных кодов и ПСК показаны на рисунках 2 и 3.
Входными данными программы являются: кодовое ограничение K, скорость кодирования R, интервал значений вероятности битовой ошибки. По заданному кодовому ограничению K определяется множество возможных сверточных кодов M. Например, для скорости 1/2 множество возможных сверточных кодов содержит M 3(22K 3 2K 2 ) кодов. Чтобы ускорить поиск хороших кодов, из этого множества исключаются катастрофические и эквивалентные коды.
Программы поиска оптимальных сверточных кодов и ПСК описаны в среде MATLAB. Метод поиска основан на вычислении вероятности битовой ошибки Pb симуляцией или по верхней границе. Оптимальный код является
кодом, имеющим минимальную вероятность Pb .
Программа поиска оптимальных сверточных кодов по верхней границе вероятности битовой ошибки использует дополнительные функции, например функция вычисления весового спектра и верхней границы вероятности битовой ошибки.
8
Программа поиска ПСК по вероятности битовой ошибки реализуется симуляцией. Входными данными являются списки хороших сверточных кодов и векторов перфорирования. Число возможных векторов перфорирования зависит от скорости материнского кода и скорости ПСК. Допустим скорость материнского кода 1/n, скорость ПСК r/(r+1) тогда число возможных векторов
|
nr |
|
|
(nr)! |
|
|
соответствует сочетанию |
|
|
|
|
. |
|
|
|
|
||||
r 1 |
|
(r 1)!(nr r 1)! |
|
|||
Начало
Задание параметров:
-кодового ограничения K;
-интервала значений вероятности
ошибок на бит P |
P |
; |
b min |
b max |
|
- скорость кодирования R.
Выбор кода из множества кодов, обладающих заданным кодовым ограничением
Выбранный код эквивалентен коду, Да ранее внесенному
в список?
Нет
Оценка Pb
P P Нет
b bmax
Да
Внесение в список кода и значения Pb
Переупорядочивание списка по значениям Pb
Проанализированы |
Нет |
все возможные коды? |
|
|
Да
Формирование списка отобранных кодов и их параметров
Конец
Рисунок 2 - Алгоритм поиска оптимальных сверточных кодов
Начало
Ввод параметров:
-списка предварительно отобранных материнских кодов;
-скорость кодирования R;
-начальное значение вероятности минимальной ошибки на бит для перфорированных кодов
Pb п min ;
- списка векторов перфорирования.
Выбор материнского кода
Выбор вектора перфорирования
Перфорирование
Оценка Pb п
Pb п Pb п min ? |
Нет |
|
|
|
Да |
|
||
|
|
|
|
|
|
|
P |
P |
|
|
|
|
b п |
b п min |
|
|
|
|
|
|
|||
|
Зафиксировать |
|
|
||
вектор перфорирования |
|
|
|||
Проверены все векторы |
Нет |
||||
|
|||||
перфорирования? |
|
||||
|
|
Да |
|
||
|
Проверены все |
Нет |
|||
материнские коды? |
|
||||
Да
Зафиксировать код и вектор перфорирования, характеризующиеся Pb п min
|
Конец |
|
Рисунок 3 - Алгоритм поиска |
9 |
оптимальных ПСК |
В четвертой главе описаны результаты поиска оптимальных сверточных кодов и ПСК. Проведена оценка эффективности новых найденных кодов.
Результаты поиска оптимальных сверточных кодов с помощью симуляции показаны в таблицах 3, 4.
Таблица 3 - Оптимальные сверточные коды со скоростью 1/2, найденные симуляцией
K |
Код |
Диапазон Eb/N0, дБ |
Комментарий |
|
|
Не более |
Не менее |
|
|||
|
|
|
|
||
3 |
C(5,7) |
8 |
- |
Лучший по критериям МСР, |
ПОР, СОР |
4 |
C(15,17) |
6 |
3,5 |
Лучший по критериям МСР, |
СОР |
5 |
C(23,35) |
6 |
4 |
Лучший по критериям МСР, |
ПОР, СОР |
6 |
C(51,77) |
5,5 |
4 |
Новый |
|
7 |
C(133,171) |
5 |
3,5 |
Лучший по критериям МСР, |
СОР |
8 |
C(225,367) |
4,5 |
- |
Новый |
|
C(255,363) |
- |
4,5 |
|
||
|
|
|
|||
9 |
C(523,731) |
4,5 |
2 |
Новый |
|
Таблица 4 - Оптимальные сверточные коды со скоростью 1/3, найденные симуляцией
K |
Код |
Диапазон Eb/N0, дБ |
Комментарий |
||
Не более |
Не менее |
||||
|
|
|
|||
3 |
C(5,7,7) |
7,5 |
5 |
Лучший по критериям МСР, ПОР, СОР |
|
4 |
C(13,15,17) |
6 |
4,5 |
Лучший по критериям МСР, ПОР, СОР |
|
5 |
C(27,31,35) |
5,5 |
4 |
Новый |
|
6 |
C(43,55,75) |
5 |
3 |
Новый |
|
7 |
C(133,145,171) |
4,5 |
2,5 |
Новый |
|
8 |
C(225,331,367) |
4,5 |
2,5 |
Лучший по критериям МСР, СОР |
|
Видно, что некоторые найденные коды совпадают с известными, лучшими по критериям МСР, ПОР, СОР. Это служит доказательством работоспособности созданных программ поиска.
В определенном диапазоне Eb
N0 найдены сверточные коды, обладающие более высокой помехоустойчивостью, чем известные. Например, код C(51,77) с
ограничением K 6 при отношении Eb N0 |
от 4 дБ до 5,5 дБ или код C(523,731) |
с ограничением K 9 , при отношении |
Eb N0 от 2 дБ до 4,5 дБ имеет |
наименьшую вероятность битовой ошибки. Аналогичные выводы справедливы для других кодов, показанных в таблицах 3 и 4.
На рисунке 4 приведены зависимости вероятности Pb от отношения Eb
N0 , построенные с помощью симуляции нескольких найденных и известных кодов.
10