УСТРОЙСТВО ОБРАБОТКИ ДАННЫХ И СПОСОБ ОБРАБОТКИ ДАННЫХ
DATA PROCESSING APPARATUS AND DATA PROCESSING METHOD

Область техники
Настоящее изобретение относится к устройству обработки данных и способу обработки данных и, например, в частности, относится к устройству обработки данных и способу обработки данных, который может обеспечить LDPC-код, превосходный по характеристикам частоты появления ошибок.
Уровень техники
LDPC (код с низкой плотностью проверок на четность) код имеет значительные возможности коррекции ошибок, и в последнее время широко применяется в системе передачи, которая включает в себя спутниковое цифровое вещание, такое как DVB (Цифровое телевизионное вещание)-S.2 используемое в Европе (например, см. непатентный документ 1). Кроме того, был протестирован LDPC-код при использовании наземного цифрового вещания следующего поколения, такого как DVB-T.2.
Из недавнего исследования, известно, что производительность вблизи предела Шеннона получают из LDPC-кода, когда длина кода увеличивается, подобно турбо коду. В связи с тем, что LDPC-код имеет свойство, которое заключается в том, что кратчайшее расстояние пропорционально длине кода, то LDPC-код имеет отличные характеристики вероятности искажения блока, будучи старшим, и так называемый, наблюдаемый феномен минимального уровня ошибок при декодировании турбо кода, будучи редко генерируемым, как их характеристики.
Далее будет конкретно описан LDPC-код. LDPC-код является линейным кодом и отсутствует необходимость для LDPC-кода быть двоичным кодом. Тем не менее, в этом случае предполагается, что LDPC-код является двоичным кодом.
Максимальная характеристика LDPC-кода представляет собой разряженную матрицу контроля четности, определяющая LDPC-код. В этом случае, разреженная матрица является матрицей, в которой количество «1» элементов матрицы очень мало (матрица, в которой большинство элементов равны 0).
Фиг. 1 иллюстрирует пример матрицы H контроля четности LDPC-кода.
В матрице H контроля четности на фиг. 1, вес каждого столбца (вес столбца) (число "1") становится равным "3" и вес каждой строки (вес строки) становится равным "6".
При кодировании с использованием LDPC-кода (LDPC-кодирование), например, генераторная матрица G генерируется на основании матрицы H контроля четности и генераторная матрица G умножается на двоичные биты информации, так что генерируется кодовое слово (LDPC-код).
T
T
В частности, устройство кодирования, которое выполняет LDPC-кодирование, сначала вычисляет генераторную матрицу G, в которой реализуется выражение GH=0, между транспонированной матрицей H матрицы Η проверки четности и генераторной матрицей G. В этом случае, когда генераторная матрица G является К×N матрицей, устройство кодирования умножает генераторную матрицу G на битовую строку (вектор u) информационных битов, включающие в себя К биты, и генерирует кодовое слово с (=uG), включающее в себя N битов. Кодовое слово (LDPC-код), которое генерируется устройством кодирования, принимается на приемной стороне посредством заранее определенного коммуникационного тракта.
LDPC-код может быть декодирован с помощью алгоритма называемого вероятностным декодированием, предложенным Галлагером, то есть алгоритм передачи сообщений, используя распространение степени уверенности в так называемом графе Таннера, включающей в себя переменный узел (также называемый как узел сообщений) и узел проверки. Здесь и далее, переменный узел и узел проверки соответственно называются просто узлами.
Фиг. 2 иллюстрирует последовательность декодирования LDPC-кода.
0i
j
i
Далее реальное значение (LLR приема), которое получается путем представления вероятности "0" значения i битового кода LDPC-кода (одно кодовое слово), принятое на приемной стороне посредством логарифмического отношения правдоподобия, соответственно упоминается как приемное значение u. Кроме того, сообщение, вырабатываемое узлом проверки, упоминается как u, и сообщение, вырабатываемое переменным узлом, называют v.
j
i
0i
j
i
Во-первых, при декодировании LDPC-кода, как показано на фиг. 2, на этапе S11 принимается LDPC-код, сообщение u (сообщение узла проверки) инициализируется на "0", и переменная k, принимая целое число в качестве счетчика повторений обработки, инициализируется на "0", и процесс обработки переходит к этапу S12. На этапе S12 сообщение v (сообщение переменного узла) рассчитывается посредством выполнения операции (операция переменного узла), представленное выражением (1), на основании приемного значения u, полученного путем приема LDPC-кода, и сообщение u рассчитывается посредством выполнения операции (операция узла проверки), представленное выражением (2), на основании сообщения v.
[Математика. 1]
[Математика. 2]
v
c
v
c
Здесь d и d в выражении (1) и выражении (2) соответственно являются параметрами, которые могут быть выбраны произвольно, и иллюстрирует число "1" в продольном направлении (колонка) и в поперечном направлении (строка) матрицы Н контроля четности. Например, в случае LDPC-кода ((3, 6) LDPC-кода) по отношению к матрице Н контроля четности с весом 3 столбца и весом 6 строк, как показано на фиг. 1, устанавливаются d=3 и d=6.
v
c
1
2
1
2
В операции переменного узла выражения (1) и операции узла проверки выражения (2), так как сообщение поступает на вход от границы (линия соединения переменного узла и узла проверки) для вывода сообщения, не является целевой операцией, рабочий диапазон становится равным от 1 до d - 1 или от 1 до d - 1. Операция узла проверки выражения (2) выполняется фактически посредством ранее составленной таблицы функции R (v, v), представленной выражением (3), определяется одним выходом по отношению к двум входам v и v, и используя таблицу последовательно (рекурсивно), как представлено выражением (4).
[Математика. 3]
[Математика. 4]
На этапе S12 переменная k получает приращение на "1" и процесс обработки переходит на этап S13. На этапе S13 определяется, превышает ли переменная k на количество раз С заданное количество повторений декодирования. Когда определено на этапе S13, что переменная k не превышает С, то процесс обработки возвращается на этап S12, и тот же процесс обработки повторяется.
i
Когда определено на этапе S13, что переменная k превышает С, то процесс обработки переходит к этапу S14, сообщение v, которое соответствует результату декодирования, который представляет собой окончательное выходное значение, рассчитывается посредством выполнения операции, представленная выражением (5), и выводится, и на этом процесс декодирования LDPC-кода заканчивается.
[Математика. 5]
j
В этом случае операция по выражению (5) выполняется с помощью сообщений u из всех границ с переменным узлом, отличная от операции переменного узла выражения (1).
1
2
Фиг. 3 иллюстрирует пример матрицы Н контроля четности (3, 6) LDPC-кода (скорость / кодирования и кодовая длина 12).
В матрице Н контроля четности на фиг. 3, вес столба установлен на 3 и вес строки установлен на 6, аналогично показанной на фиг. 1.
Фиг. 4 иллюстрирует граф Таннера матрицы Н контроля четности на фиг. 3.
На фиг. 4, узел проверка представлен "+" (плюс) и переменный узел представлен «=» (равно). Узел проверки и переменный узел соответствуют строке и столбцу матрицы Н контроля четности. Линия, которая соединяет узел проверки и переменный узел, является границей и соответствует "1" элементов матрицы контроля четности.
То есть, когда элемент j-й строки и i-го столбца матрицы контроля четности равен 1, на фиг. 4, то i-й переменный узел (узел "=") с верхней стороны и j-й узел проверки (узел "+") с верхней стороны, соединены гранью. Грань показывает, что битовый код, соответствующий переменному узлу, имеет условие ограничения, соответствующее узлу проверки.
В алгоритме сумма-произведение, который является способом декодирования LDPC-кода, операция переменного узел и узла проверки периодически выполняются.
Фиг. 5 иллюстрирует операцию переменного узла, который выполняется с помощью переменного узла.
i
1
2
0i
В переменном узле сообщение v, которое соответствует грани для расчета, вычисляется посредством операции переменного узла в выражении (1), используя сообщения u и u из оставшихся граней, соединенных с переменным узлом, и приемное значение u. Сообщения, которые соответствуют другим граням, также рассчитываются тем же способом.
Фиг. 6 иллюстрирует операцию узла проверка, которая выполняется с помощью узла проверки.
В этом случае, операция узла проверки выражения (2) может быть переписана посредством выражения (6), используя соотношение выражения а×b=exp{ln(|а|)+ln(|b|)}×sign(а)×sign(b). Тем не менее, sign(х) является 1 в случае x≥0 и является -1 в случае x<0.
[Математика. 6]
-1
-1
-x
При x≥0, если функция φ(х) определяется как выражение φ(х)=ln(tanh(x/2)), то выполняется выражение φ(x)=2tanh (е). По этой причине, выражение (6) может быть изменено на выражение (7).
[Математика. 7]
В узле проверки, операция узла проверки выражения (2) выполняется в соответствии с выражением (7).
j
1
2
3
4
5
То есть, в узле проверки, как показано на фиг. 6, сообщение u, которое соответствует границе для расчета, вычисляется с помощью операции узла проверки выражения (7), используя сообщения v, v, v, v и v из остальных граней, соединенных с узлом проверки. Сообщения, которые соответствуют другим граням, также рассчитываются тем же способом.
x
x
-1
-1
-1
-1
Функция φ(x) выражения (7) может быть представлена в виде φ(x)=ln((e+1)/(e-1)) и φ(x)=φ(x) выполняется при x>0. Когда функции φ(x) и φ(x) установлены на аппаратном оборудовании, функции φ(x) и φ(x) могут быть установлены с помощью LUT (просмотровой таблицы). Тем не менее, обе функции φ(x) и φ(x) становятся теми же LUT.
Перечень ссылок
Непатентный документ
Непатентный документ 1: DVB-S.2: ETSI EN 302307 V1.2.1 (2009-08)
Раскрытие изобретения
Технические задачи, решаемые с помощью изобретения
DVB стандарт, такой как DVB-S.2, DVB-T.2 и DVB-C.2, которые используют LDPC-код, рассматривает LDPC-код в качестве символа (отображает в символической форме) ортогональной модуляции (цифровой модуляции), такой как QPSK (квадратурная фазовая манипуляция), и символ отображается на сигнальной точке и передается.
Кстати, в последние годы возникла потребность в эффективной передаче, например, данных с большой емкостью, таких как, так называемое 4k изображение, с разрешением по ширине и длине 3840×2160 пикселей изображения четырехкратной полной высокой четкости и 3D (размерность) изображения.
Тем не менее, если приоритет отдан эффективной передаче данных, то частота появления ошибок увеличивается.
С другой стороны, есть случай, когда необходимо осуществить передачу данных с. низким значением частоты появления ошибок, даже если эффективность передачи данных в некоторой степени снижается.
Предполагается, что передача данных с различными значениями эффективности будет востребована в будущем, но, в соответствии с LDPC-кодом, например, путем подготовки множества LDPC-кодов различных скоростей кодирования, можно выполнить передачу данных с различными значениями эффективности.
Таким образом, для передачи данных, желательно, адаптировать скорости кодирования LDPC-кодов, для которых легко могут быть установлены несколько увеличенных значений скоростей кодирования (например, число, равное или больше требуемой для передачи данных).
Дополнительно, даже в случае, когда используется LDPC-код любой скорости кодирования, желательно, чтобы величина сопротивления возникновению ошибки была высокой (сильной), то есть, величина частоты появления ошибок имела превосходное значение.
Настоящее изобретение сделано с учетом такой ситуации и может обеспечить LDPC-код с превосходным значением частоты появления ошибок.
Решения технической задачи
Первое устройство обработки или способ обработки данных в соответствии с настоящим изобретением включает в себя блок кодирования или этап кодирования для кодирования битов информации в LDPC-коде с кодовой длиной 64800 битов и скоростью кодирования 7/30, на основании матрицы контроля четности LDPC (кода с низкой плотностью проверок на четность). LDPC-код включает в себя бит информации и бит четности. Матрица контроля четности включает в себя часть информационной матрицы, соответствующую биту информации, и часть матрицы контроля четности, соответствующую биту четности. Часть информационной матрицы показана таблицей начальных значений матрицы контроля четности. Таблица начальных значений матрицы контроля четности представляет собой таблицу, показывающую расположения элементов 1 части информационной матрицы в каждых 360 столбцах и выражается следующим образом
Второе устройство обработки данных или способ обработки данных в соответствии с настоящим изобретением включает в себя блок декодирования или этап декодирования для декодирования LDPC-кода с кодовой длиной 64800 битов и скоростью кодирования 7/30, на основании матрицы контроля четности LDPC кода (кода с низкой плотностью проверок на четность). LDPC-код включает в себя бит информации и бит четности. Матрица контроля четности включает в себя часть информационной матрицы, соответствующую биту информации, и часть матрицы контроля четности, соответствующую биту четности. Часть информационной матрицы показана таблицей начальных значений матрицы контроля четности. Таблица начальных значений матрицы контроля четности представляет собой таблицу, показывающую расположения элементов 1 части информационной матрицы в каждых 360 столбцах и выражается следующим образом
Третье устройство обработки данных или способ обработки данных в соответствии с настоящим изобретением включает в себя блок кодирования или этап кодирования для кодирования бита информации LDPC-кода с кодовой длиной 64800 битов и скоростью кодирования 8/30, на основании матрицы контроля четности LDPC кода (кода с низкой плотностью проверок на четность). LDPC-код включает в себя бит информации и бит четности. Матрица контроля четности включает в себя часть информационной матрицы, соответствующую биту информации, и часть матрицы контроля четности, соответствующую биту четности. Часть информационной матрицы показана таблицей начальных значений матрицы контроля четности. Таблица начальных значений матрицы контроля четности представляет собой таблицу, показывающую расположения элементов 1 части информационной матрицы в каждых 360 столбцах и выражается следующим образом
Четвертое устройство обработки данных или способ обработки данных в соответствии с настоящим изобретением включает в себя блок декодирования или этап декодирования для декодирования LDPC-кода с кодовой длиной 64800 битов и скоростью кодирования 8/30, на основании матрицы контроля четности LDPC кода (кода с низкой плотностью проверок на четность). LDPC-код включает в себя бит информации и бит четности. Матрица контроля четности включает в себя часть информационной матрицы, соответствующую биту информации, и часть матрицы контроля четности, соответствующую биту четности. Часть информационной матрицы показана таблицей начальных значений матрицы контроля четности. Таблица начальных значений матрицы контроля четности представляет собой таблицу, показывающую расположения элементов 1 части информационной матрицы в каждых 360 столбцах и выражается следующим образом
Пятое устройство обработки данных или способ обработки данных в соответствии с настоящим изобретением включает в себя блок кодирования или этап кодирования для кодирования бита информации LDPC-кода с кодовой длиной 64800 битов и скоростью кодирования 9/30, на основании матрицы контроля четности LDPC кода (кода с низкой плотностью проверок на четность). LDPC-код включает в себя бит информации и бит четности. Матрица контроля четности включает в себя часть информационной матрицы, соответствующую биту информации, и часть матрицы контроля четности, соответствующую биту четности. Часть информационной матрицы показана таблицей начальных значений матрицы контроля четности. Таблица начальных значений матрицы контроля четности представляет собой таблицу, показывающую расположения элементов 1 части информационной матрицы в каждых 360 столбцах и выражается следующим образом
Шестое устройство обработки данных или способ обработки данных в соответствии с настоящим изобретением включает в себя блок декодирования или этап декодирования для декодирования LDPC-кода с кодовой длиной 64800 битов и скоростью кодирования 9/30, на основании матрицы контроля четности LDPC кода (кода с низкой плотностью проверок на четность). LDPC-код включает в себя бит информации и бит четности. Матрица контроля четности включает в себя часть информационной матрицы, соответствующую биту информации, и часть матрицы контроля четности, соответствующую биту четности. Часть информационной матрицы показана таблицей начальных значений матрицы контроля четности. Таблица начальных значений матрицы контроля четности представляет собой таблицу, показывающую расположения элементов 1 части информационной матрицы в каждых 360 столбцах и выражается следующим образом
Седьмое устройство обработки данных или способ обработки данных в соответствии с настоящим изобретением включает в себя этап кодирования для кодирования бита информации LDPC-кода с кодовой длиной 64800 битов и скоростью кодирования 10/30, на основании матрицы контроля четности LDPC кода (кода с низкой плотностью проверок на четность). LDPC-код включает в себя бит информации и бит четности. Матрица контроля четности включает в себя часть информационной матрицы, соответствующую биту информации, и часть матрицы контроля четности, соответствующую биту четности. Часть информационной матрицы показана таблицей начальных значений матрицы контроля четности. Таблица начальных значений матрицы контроля четности представляет собой таблицу, показывающую расположения элементов 1 части информационной матрицы в каждых 360 столбцах и выражается следующим образом
Восьмое устройство обработки данных или способ обработки данных в соответствии с настоящим изобретением включает в себя блок декодирования или этап декодирования для декодирования LDPC-кода с кодовой длиной 64800 битов и скоростью кодирования 10/30, на основании матрицы контроля четности LDPC кода (кода с низкой плотностью проверок на четность). LDPC-код включает в себя бит информации и бит четности. Матрица контроля четности включает в себя часть информационной матрицы, соответствующую информационному биту, и часть матрицы контроля четности, соответствующую биту четности. Часть информационной матрицы показана таблицей начальных значений матрицы контроля четности. Таблица начальных значений матрицы контроля четности представляет собой таблицу, показывающую расположения элементов 1 части информационной матрицы в каждых 360 столбцах и выражается следующим образом
Девятое устройство обработки данных или способ обработки данных в соответствии с настоящим изобретением включает в себя блок декодирования или этап декодирования для декодирования LDPC-кода с кодовой длиной 64800 битов и скоростью кодирования 11/30, на основании матрицы контроля четности LDPC кода (кода с низкой плотностью проверок на четность). LDPC-код включает в себя бит информации и бит четности. Матрица контроля четности включает в себя часть информационной матрицы, соответствующую биту информации, и часть матрицы контроля четности, соответствующую биту четности. Часть информационной матрицы показана таблицей начальных значений матрицы контроля четности. Таблица начальных значений матрицы контроля четности представляет собой таблицу, показывающую расположения элементов 1 части информационной матрицы в каждых 360 столбцах и выражается следующим образом
Десятое устройство обработки данных или способ обработки данных в соответствии с настоящим изобретением включает в себя блок декодирования или этап декодирования для декодирования LDPC-кода с кодовой длиной 64800 битов и скоростью кодирования 11/30, на основании матрицы контроля четности LDPC кода (кода с низкой плотностью проверок на четность). LDPC-код включает в себя бит информации и бит четности. Матрица контроля четности включает в себя часть информационной матрицы, соответствующую биту информации, и часть матрицы контроля четности, соответствующую биту четности. Часть информационной матрицы показана таблицей начальных значений матрицы контроля четности. Таблица начальных значений матрицы контроля четности представляет собой таблицу, показывающую расположения элементов 1 части информационной матрицы в каждых 360 столбцах и выражается следующим образом
В соответствии с настоящим изобретением, бит информации кодируется в LDPC-коде с кодовой длинной 64800 битов и скоростями кодирования 7/30, 8/30, 9/30, 10/30 или 11/30 на основании матрицы контроля четности LDPC кода (кода с низкой плотностью проверок на четность).
В соответствии с настоящим изобретением LDPC-код с кодовой длиной 64800 битов и скоростями кодирования 7/30, 8/30, 9/30, 10/30 или 11/30 декодируется на основании матрицы контроля четности LDPC-кода (кода с низкой плотностью проверок на четность).
LDPC-код включает в себя бит информации и бит четности. Матрица контроля четности включает в себя часть информационной матрицы, соответствующую информационному биту, и часть матрицы контроля четности, соответствующую биту четности. Часть информационной матрицы показана таблицей начальных значений матрицы контроля четности. Таблица начальных значений матрицы контроля четности представляет собой таблицу, показывающую расположения элементов 1 части информационной матрицы в каждых 360 столбцах.
Таблица начальных значений матрицы контроля четности со скоростью кодирования 7/30 выражается следующим образом
Таблица начальных значений матрицы контроля четности со скоростью кодирования 8/30 выражается следующим образом
Таблица начальных значений матрицы контроля четности со скоростью кодирования 9/30 выражается следующим образом
Таблица начальных значений матрицы контроля четности со скоростью кодирования 10/30 выражается следующим образом
Таблица начальных значений матрицы контроля четности со скоростью кодирования 11/30 выражается следующим образом
Устройство обработки данных может быть независимым устройством и может быть внутренним блоком, образуя одно устройство.
Полезные результаты изобретения
В соответствии с настоящим изобретением можно обеспечить LDPC-код с превосходным значением частоты появления ошибок.
Краткое описание чертежей
Фиг. 1 является иллюстрацией матрицы Н контроля четности LDPC-кода.
Фиг. 2 представляет собой блок-схему алгоритма, иллюстрирующую последовательность декодирования LDPC-кода.
Фиг. 3 является иллюстрацией примера матрицы контроля четности LDPC-кода.
Фиг. 4 является иллюстрацией графа Таннера матрицы контроля четности.
Фиг. 5 является иллюстрацией переменного узла.
Фиг. 6 является иллюстрацией узла проверки.
Фиг. 7 является иллюстрацией примера конфигурации варианта осуществления системы передачи, к которой применяется настоящее изобретение.
Фиг. 8 является блок-схемой, иллюстрирующей пример конфигурации передающего устройства 11.
Фиг. 9 показывает блок-схему, иллюстрирующую пример конфигурации битового перемежителя 116.
Фиг. 10 является иллюстрацией матрицы контроля четности.
Фиг. 11 является иллюстрацией матрицы контроля четности.
Фиг. 12 является иллюстрацией матрицы контроля четности LDPC-кода, определенного в стандарте DVB-S.2.
Фиг. 13 является иллюстрацией матрицы контроля четности LDPC-кода, определенного в стандарте DVB-S.2.
Фиг. 14 является иллюстрацией расположения 16QAM сигнальных точек.
Фиг. 15 является иллюстрацией расположения 64QAM сигнальных точек.
Фиг. 16 является иллюстрацией расположения 64QAM сигнальных точек.
Фиг. 17 является иллюстрацией расположения 64QAM сигнальных точек.
Фиг. 18 является иллюстрацией расположения сигнальных точек, как определено в стандарте DVB-S.2.
Фиг. 19 является иллюстрацией расположения сигнальных точек, как определено в стандарте DVB-S.2.
Фиг. 20 является иллюстрацией расположения сигнальных точек, как определено в стандарте DVB-S.2.
Фиг. 21 является иллюстрацией расположения сигнальных точек, как определено в стандарте DVB-S.2.
Фиг. 22 является иллюстрацией процесса обработки демультиплексора 25.
Фиг. 23 является иллюстрацией процесса обработки демультиплексора 25.
Фиг. 24 является иллюстрацией графа Таннера для декодирования LDPC-кода.
т
т
Фиг. 25 является иллюстрацией матрицы Н четности, которая приобретает ступенчатую структуру, и графа Таннера, соответствующего матрице Н четности.
т
Фиг. 26 является иллюстрацией матрицы Н четности матрицы H контроля четности, соответствующего LDPC-кода, после перемежения битов четности.
Фиг. 27 является иллюстрацией преобразованной матрицы контроля четности.
Фиг. 28 является иллюстрацией процесса обработки скручивания столбцов перемежителем 24.
Фиг. 29 является иллюстрацией нумерации колонки памяти 31, что необходимо для скручивания столбцов перемежителем и адреса позиции начала записи.
Фиг. 30 является иллюстрацией нумерации столбцов памяти 31, что необходимо для скручивания столбцов перемежителем и адреса позиции начала записи.
Фиг. 31 является блок-схемой алгоритма, иллюстрирующей процесс обработки, выполняемым битовым перемежителем 116 и QAM кодером 117.
Фиг. 32 является иллюстрацией модели канала связи, принятой посредством моделирования.
d
Фиг. 33 является иллюстрацией отношения частоты возникновения ошибок, полученной путем моделирования, и доплеровской частоты f флаттера.
d
Фиг. 34 является иллюстрацией отношения частоты возникновения ошибок, полученной путем моделирования, и доплеровской частоты f флаттера.
Фиг. 35 является блок-схемой, иллюстрирующей пример конфигурации LDPC-кодера 115.
Фиг. 36 является блок-схемой алгоритма, иллюстрирующей процесс обработки LDPC-кодера 115.
Фиг. 37 является иллюстрацией примера таблицы начальных значений матрицы проверки четности, в которой скорость кодирования равна 1/4 и кодовая длина составляет 16200.
Фиг. 38 является иллюстрацией способа вычисления матрицы H контроля четности таблицы начальных значений матрицы контроля четности.
Фиг. 39 является иллюстрацией характеристики BER/FER LDPC-кода, чья кодовая длина определяется в стандарте DVB-S.2 и равна 64800 бит.
Фиг. 40 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 2/30 и кодовая длина равна 64800.
Фиг. 41 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 3/30 и кодовая длина равна 64800.
Фиг. 42 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 4/30 и кодовая длина составляет 64800.
Фиг. 43 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 5/30 и кодовая длина составляет 64800.
Фиг. 44 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 6/30 и кодовая длина составляет 64800.
Фиг. 45 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 7/30 и кодовая длина составляет 64800.
Фиг. 46 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 8/30 и кодовая длина составляет 64800.
Фиг. 47 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 8/30 и кодовая длина составляет 64800.
Фиг. 48 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 9/30 и кодовая длина составляет 64800.
Фиг. 49 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 9/30 и кодовая длина составляет 64800.
Фит.50 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 10/30 и кодовая длина составляет 64800.
Фиг. 51 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 10/30 и кодовая длина составляет 64800.
Фиг. 52 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 11/30 и кодовая длина составляет 64800.
Фиг. 53 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 11/30 и кодовая длина составляет 64800.
Фиг. 54 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 12/30 и кодовая длина составляет 64800.
Фиг. 55 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 12/30 и кодовая длина составляет 64800.
Фиг. 56 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 13/30 и кодовая длина составляет 64800.
Фиг. 57 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 13/30 и кодовая длина составляет 64800.
Фиг. 58 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 14/30 и кодовая длина составляет 64800.
Фиг. 59 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 14/30 и кодовая длина составляет 64800.
Фиг. 60 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 15/30 и кодовая длина составляет 64800.
Фиг. 61 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 15/30 и кодовая длина составляет 64800.
Фиг. 62 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 16/30 и кодовая длина составляет 64800.
Фиг. 63 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 16/30 и кодовая длина составляет 64800.
Фиг. 64 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 16/30 и кодовая длина составляет 64800.
Фиг. 65 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 17/30 и кодовая длина составляет 64800.
Фиг. 66 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 17/30 и кодовая длина составляет 64800.
Фиг. 67 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 17/30 и кодовая длина составляет 64800.
Фиг. 68 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 18/30 и кодовая длина составляет 64800.
Фиг. 69 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 18/30 и кодовая длина составляет 64800.
Фиг. 70 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 18/30 и кодовая длина составляет 64800.
Фиг. 71 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 19/30 и кодовая длина составляет 64800.
Фиг. 72 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 19/30 и кодовая длина составляет 64800.
Фиг.73 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 19/30 и кодовая длина составляет 64800.
Фиг. 74 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 20/30 и кодовая длина составляет 64800.
Фиг. 75 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 20/30 и кодовая длина составляет 64800.
Фиг. 76 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 20/30 и кодовая длина составляет 64800.
Фиг. 77 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 21/30 и кодовая длина составляет 64800.
Фиг. 78 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 21/30 и кодовая длина составляет 64800.
Фиг. 79 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 21/30 и кодовая длина составляет 64800.
Фиг. 80 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 22/30 и кодовая длина составляет 64800.
Фиг. 81 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 22/30 и кодовая длина составляет 64800.
Фиг. 82 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 22/30 и кодовая длина составляет 64800.
Фиг. 83 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 23/30 и кодовая длина составляет 64800.
Фиг. 84 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 23/30 и кодовая длина составляет 64800.
Фиг. 85 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 23/30 и кодовая длина составляет 64800.
Фиг. 86 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 24/30 и кодовая длина составляет 64800.
Фиг. 87 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 24/30 и кодовая длина составляет 64800.
Фиг. 88 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 24/30 и кодовая длина составляет 64800.
Фиг. 89 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 25/30 и кодовая длина составляет 64800.
Фиг. 90 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 25/30 и кодовая длина составляет 64800.
Фиг. 91 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 25/30 и кодовая длина составляет 64800.
Фиг. 92 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 26/30 и кодовая длина составляет 64800.
Фиг. 93 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 26/30 и кодовая длина составляет 64800.
Фиг. 94 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 26/30 и кодовая длина составляет 64800.
Фиг. 95 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 27/30 и кодовая длина составляет 64800.
Фиг. 96 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 27/30 и кодовая длина составляет 64800.
Фиг. 97 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 27/30 и кодовая длина составляет 64800.
Фиг. 98 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 27/30 и кодовая длина составляет 64800.
Фиг. 99 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 28/30 и кодовая длина составляет 64800.
Фиг. 100 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 28/30 и кодовая длина составляет 64800.
Фиг. 101 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 28/30 и кодовая длина составляет 64800.
Фиг. 102 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 28/30 и кодовая длина составляет 64800.
Фиг. 103 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 29/30 и кодовая длина составляет 64800.
Фиг. 104 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 29/30 и кодовая длина составляет 64800.
Фиг. 105 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 29/30 и кодовая длина составляет 64800.
Фиг. 106 является иллюстрацией примера таблицы начальных значений матрицы контроля четности, в которой скорость кодирования равна 29/30 и кодовая длина составляет 64800.
Фиг. 107 является иллюстрацией графа Таннера ансамбля степени последовательности, в которой вес столбца равен 3 и вес строки составляет 6.
Фиг. 108 является иллюстрацией графа Таннера ансамбля мультиграничного типа.
Фиг. 109 является иллюстрацией минимальной длины цикла и порогового значения производительности матрицы контроля четности LDPC-кода с кодовой длиной 64800.
Фиг. 110 является иллюстрацией матрицы проверки четности LDPC-кода с кодовой длиной 64800.
Фиг. 111 является иллюстрацией матрицы контроля четности LDPC-кода с кодовой длиной 64800.
Фиг. 112 является иллюстрацией результата моделирования BER/FER LDPC-кода с кодовой длиной 64800.
Фиг. 113 является иллюстрацией результата моделирования BER/FER LDPC-кода с кодовой длиной 64800.
Фиг. 114 является иллюстрацией результата моделирования BER/FER LDPC-кода с кодовой длиной 64800.
Фиг. 115 является иллюстрацией ВСН кода, используемого для моделирования BER/FER LDPC-кода с кодовой длиной 64800.
Фиг. 116 представляет собой блок-схему, иллюстрирующую пример конфигурации приемного устройства 12.
Фиг. 117 представляет собой блок-схему, иллюстрирующую пример конфигурации битового деперемежителя 165.
Фиг. 118 является блок-схемой алгоритма, иллюстрирующей процесс обработки, выполняемый QAM декодером 164, битовым деперемежителем 165 и LDPC декодером 166.
Фиг. 119 является иллюстрацией примера матрицы контроля четности LDPC-кода.
Фиг. 120 является иллюстрацией матрицы (преобразованной матрицы контроля четности), полученной путем выполнения замены строк и столбцов по отношению к матрице контроля четности.
Фиг. 121 является иллюстрацией преобразованной матрицы контроля четности, разделенной на 5×5 блок.
Фиг. 122 представляет собой блок-схему, иллюстрирующую пример конфигурации устройства декодирования, которое в совокупности выполняет операции Ρ узла.
Фиг. 123 представляет собой блок-схему, иллюстрирующую пример конфигурации LDPC декодер 166.
Фиг. 124 является иллюстрацией процесса обработки мультиплексора 54, составляющий битовый перемежитель 165.
Фиг. 125 является иллюстрацией процесса обработки скручивания столбца деперемежителем 55.
Фиг. 126 представляет собой блок-схему, иллюстрирующую другой пример конфигурации битового деперемежителя 165.
Фиг. 127 представляет собой блок-схему, иллюстрирующую первый пример конфигурации приемной системы, которая может быть применена к приемному устройству 12.
Фиг. 128 представляет собой блок-схему, иллюстрирующую второй пример конфигурации приемной системы, которая может быть применена к приемному устройству 12.
Фиг. 129 представляет собой блок-схему, иллюстрирующую третий пример конфигурации приемной системы, которая может быть применена к приемному устройству 12.
Фиг. 130 представлена блок-схема, иллюстрирующая пример конфигурации варианта осуществления компьютера, в которому применяется настоящее изобретение.
Осуществление изобретения
Пример конфигурации передающей системы, к которой применяется настоящее изобретение
Фиг. 7 иллюстрирует пример конфигурации варианта осуществления передающей системы (системное средство логически объединяет множество устройств, и устройство каждой конфигурации может быть расположено или может быть не расположено в одном корпусе), к которой применяется настоящее изобретение.
Как показано на фиг. 7, передающая система включает в себя передающее устройство 11 и приемное устройство 12.
Например, передающее устройство 11 передает (транслирует) (доставляет) программы телевизионного вещания и так далее. То есть, например, передающее устройство 11 кодирует целевые данные, которые являются целевой передачей, например, данных изображения и аудиоданных в качестве программы в LDPC-кодах и, например, передает их через канал 13 связи, такой как спутниковой канал, посредством поверхностной волны и по кабелю (проводная схема).
Приемное устройство 12 принимает LDPC-код, переданный передающим устройством 11 по каналу 13 связи, декодирует LDPC-код, чтобы получить целевые данные, и выводит целевые данные.
В этом случае известно, что LDPC-код, используемый системой передачи, показанной на фиг. 7, демонстрирует очень высокую способность (аддитивный белый гауссов шум) канала связи.
Между тем, в канале 13 связи может быть сгенерировано внезапное возникновение ошибки или стирание. Особенно в случае, когда канал 13 связи представляет собой поверхностную волну, например, в OFDM (мультиплексирование с ортогональным частотным разделением каналов) системе, мощность конкретного символа может стать равной 0 (стирание) в соответствии с задержкой эха (каналы отличные от основного канала) при наличии многоканальной передачи, в которой D/U (соотношение желаемого и нежелательного) равно 0 дБ (мощность нежелательного сигнала = эхо равна мощности желаемой передачи = основного канала).
Во флаттере (канал связи, в котором задержка равна 0 и добавляется эхо, имеющее частоту Доплера), когда D/U равно 0 дБ, вся мощность символа OFDM в определенное время может становиться равной 0 (стирания) посредством частоты Доплера.
Кроме того, ошибки в канале передачи пакетных данных может быть сгенерирована из-за ситуации в проводной линии связи из приемного блока (не показано на чертежах) стороны приемного устройства 12, например, антенна, принимая сигнал от передающего устройства 11 и передавая его на приемное устройство 12, или при неустойчивости электропитания приемного устройства 12.
0i
Между тем, при декодировании LDPC-кода в переменном узле, соответствующего столбца в матрицы H контроля четности и битового кода LDPC-кода, как показано на фиг. 5 и описано выше, выполняется операция переменного узла согласно выражению (1) с добавлением (приемное значение u) битового кода LDPC-кода. По этой причине, если возникает ошибка в битовом коде, используемом для операции переменного узла, то точность вычисленного сообщения снижается.
При декодировании LDPC-кода в узле проверки, операция узла проверки выражения (7) выполняется с использованием сообщения, вычисленного переменным узлом, подключенного к узлу проверки. По этой причине, если увеличивается количество узлов проверки, в которых генерируется ошибка (в том числе стирания) одновременно во (соответствующий битовых кодах LDPC-кодов) множестве подключенных переменных узлах, то производительность декодирования снижается.
То есть если два или более переменных узлов переменных узлов, соединенных с узлом проверки, одновременно подвержены стиранию, то узел проверки возвращает сообщение, в котором вероятность значения равно 0 и вероятность значения, равного 1, равны друг другу для всех переменных узлов. В этом случае, узел проверки, который возвращает сообщение равных вероятностей, не способствуют процессу декодирования (один набор операции переменного узла и операции узла проверки). В результате, необходимо увеличить количество повторений выполнения процесса декодирования, что вызывает снижение производительности декодирования и потребляемая мощность приемного устройства 12, которое выполняет декодирование LDPC-кода, увеличивается.
Таким образом, в системе передачи, показанной на фиг. 7, устойчивость к возникновению ошибки в канале передачи пакетных данных или стирания может быть повышена, при этом поддерживается производительность AWGN канала связи.
Пример конфигурации передающего устройства 11
Фиг. 8 является блок-схемой, иллюстрирующей пример конфигурации передающего устройства 11, показанного на фиг. 7.
В передающем устройстве 11, один или более входных потоков, соответствующих целевым данным, поставляются в адаптер/мультиплексор 111 для передачи данных в пакетном режиме.
Адаптер/мультиплексор 111 для передачи данных в пакетном режиме выполняет выбор режима и обработку, например, мультиплексирование одного или более входных потоков подаваемые в него, по мере необходимости, и поставляет данные, полученные как результат, в заполнитель 112.
Заполнитель 112 выполняет необходимую операцию дополнения нулями (вставку нулей) по отношению к данным, поставляемые из адаптера/мультиплексора 111 для передачи данных в пакетном режиме, и поставляет данные, полученные в результате в ВВ скремблер 113.
ВВ скремблер 113 выполняет скремблирование основной полосы частот (ВВ скремблирование) по отношению к данным, поставляемые из подстроечного конденсатора, и поставляет данные, полученные в результате в ВСН кодер 114.
ВСН кодер 114 выполняет ВСН кодирование по отношению к данным, поставленным из ВВ скремблера 113, и поставляет данные, полученные в результате, как LDPC целевые данные процесса кодирования LDPC, в LDPC-кодер 115.
LDPC-кодер 115 выполняет LDPC-кодирование согласно матрице контроля четности, в которой матрица четности является частью, соответствующей битовой четности LDPC-кода, приобретает ступенчатую структуру по отношению к LDPC целевым данным, поставленным из ВСН кодера 114, и выводит LDPC-код, в котором целевые данные LDPC являются информационными битами.
То есть, LDPC-кодер 115 выполняет кодирование LDPC для кодирования LDPC целевых данных с LDPC, такие как LDPC-код (соответствующий матрице контроля четности), определенные в заданном стандарте DVB-S.2, DVB-T 0,2, DVB-C.2 или тому подобное, и выводит полученный в результате заданный LDPC-код (соответствующий матрице контроля четности) или т.п.
LDPC-код, определенный в стандарте DVB-S.2, DVB-T.2 и DVB-C.2 является (Нерегулярный повторяющийся код накопления) IRA кодом и матрица четности матрицы контроля четности LDPC-кода приобретает ступенчатую структуру. Матрица четности и ступенчатая структура будет описана ниже. IRA код описан в протоколах "Нерегулярные повторяющиеся коды накопления", Н. Jin, A. Khandekar и R.J. McEliece 2-го Международного симпозиума по турбо кодам и смежным вопросам, стр. 1-8, сентябрь 2000 года, например.
LDPC-код, который вырабатывается LDPC-кодером 115, поставляется в битовый перемежитель 116.
Битовый перемежитель 116 выполняет перемежение бит, процесс которого будет описан позже, по отношению к LDPC-коду, поставленному из LDPC-кодера 115, и поставляет LDPC-код после перемежения битов в QAM кодер 117.
QAM кодер 117 отображает LDPC-код, подаваемый из битового перемежителя 116, в сигнальную точку, представляющую один символ ортогональной модуляции в блоке (символ блока) кодовых битов одного или нескольких битов LDPC-кода, и выполняет ортогональную модуляцию (многоуровневую модуляцию).
То есть, QAM кодер 117 выполняет отображение LDPC-кода, поставленного из битового перемежителя 116, на сигнальную точку, определенную с помощью способа модуляции, выполняющего ортогональную модуляцию LDPC-кода на IQ плоскости (IQ созвездие), определенной I осью, представляющая I составляющую той же фазы, что и несущая, Q осью, представляющая Q составляющую, ортогонально к несущей, и выполняет ортогональную модуляцию.
В этом случае, в качестве способа модуляции ортогональной модуляции, выполняемой QAM кодером 117, есть способы модуляции, включающие в себя способ модуляции, определенный стандартом DVB-S.2, DVB-T.2, DVB-C.2 или тому подобное, и другой способ модуляции, то есть, BPSK (двоичная фазовая манипуляция), QPSK (квадратурная фазовая манипуляция), 16APSK (Амплитудная фазовая манипуляция), 32APSK, 16QAM (квадратурная амплитудная модуляция), 64QAM, 256QAM, 1024QAM, 4096QAM, 4PAM (Амплитудно-импульсная модуляция) или тому подобное. В QAM кодере 117 выполняется ортогональная модуляция на основании способа модуляции, предварительно установленного в соответствии с операцией оператора передающего устройства 11.
Данные (отображаемый символ на сигнальной точке), полученные в результате обработки в QAM кодере 117, поступают на временной перемежитель 118.
Временной перемежитель 118 выполняет временное перемежение (чередование во временном направлении) в блоке символа по отношению к данным (символ), поставленным из QAM кодера 117, и поставляет полученные в результате данные в MISO/MIMO кодер (MISO/MIMO кодер) 119.
MISO/ΜIΜΟ кодер 119 выполняет пространственно-временное кодирование относительно данных (символ), поступающих из временного перемежителя 118, и поставляет данные в частотный перемежитель 120.
Частотный перемежитель 120 выполняет частотное перемежение (чередование в частотной области) в блоке символа по отношению к данным (символ), поставленным из MISO/MIMO кодера 119, и поставляет эти данные в блок 131 выделения ресурсов/компоновщик кадра.
С другой стороны, например, данные управления (сигнализация) для управления передачей, такие как ВВ сигнализация (сигнализация основной полосы) (ВВ заголовка), подается на ВСН кодер 121.
ВСН кодер 121 выполняет кодирование ВСН по отношению к сигнализации, поставленной на него, и поставляет данные, полученные в результате в LDPC-кодер 122, аналогично ВСН кодеру 114.
LDPC-кодер 122 устанавливает данные, поставленные из ВСН кодера 121, как LDPC целевые данные, выполняет процесс LDPC-кодирования по отношению к данным, и поставляет LDPC-код, полученный в результате, в QAM кодер 123, аналогично LDPC-кодеру 115.
QAM кодер 123 отображает LDPC-код, поставленный из LDPC-кодера 122, на сигнальную точку, представляющую один символ ортогональной модуляции в блоке (блок символа) кодовых битов одного или нескольких битов LDPC-кода, выполняет ортогональную модуляцию и поставляет данные (символ), полученные в результате, в частотный перемежитель 124, аналогично QAM кодеру 117.
Частотный перемежитель 124 выполняет частотное перемежение в блоке символа по отношению к данным (символ), поставленным из QAM кодера 123, и поставляет эти данные в блок 131 выделения ресурсов/компоновщик кадра, аналогично частотному перемежителю 120.
Блок 131 выделения ресурсов/компоновщик кадра вставляет символы пилот-сигналов на необходимые позиции данных (символов), поставленных из частотных перемежителей 120 и 124, конфигурирует кадр (например, кадр физического уровня (PL), Т2 кадр, С2 кадр и так далее), включающий в себя символы заданного количества, из данных (символов), полученных в результате, и поставляет кадр в блок 132 OFDM генерирования.
Блок 132 OFDM генерирования генерирует OFDM сигнал, соответствующий кадру, из кадра, поставленного из блока 131 выделения ресурсов/компоновщик кадра, и передает OFDM сигнал по каналу 13 связи (фиг. 7).
Здесь, например, передающее устройство 11 может быть выполнено с возможностью не включать в себя часть блоков, показанных на фиг. 8, таких как, временной перемежитель 118, MISO/MIMO кодер 119, частотный перемежитель 120 и частотный перемежитель 124.
Фиг. 9 иллюстрирует пример конфигурации битового перемежителя 116, показанного на фиг. 8.
Битовый перемежитель 116 является устройством обработки данных, которое перемежает данные и включает в себя перемежитель 23 четности, перемежитель 24 скрещивания столбцов и демультиплексор (DEMUX) 25. Здесь битовый перемежитель 116 может быть выполнен с возможностью не включать в себя один или оба перемежитель 23 четности и перемежитель 24 скрещивания столбцов.
Перемежитель 23 четности осуществляет перемежение четности для перемежения битов четности LDPC-кода, поставленного из LDPC-кодера 115, на позициях других битов четности и поставляет LDPC-код после перемежения четности в перемежитель 24 скрещивания столбцов.
Перемежитель 24 скрещивания столбцов осуществляет перемежение скрещивания столбцов по отношению к LDPC-коду, поступающего из перемежителя 23 четности, и подает LDPC-код после перемежения скрещивания столбцов на демультиплексор 25.
То есть, в QAM кодере 117, показанном на фиг. 8, кодовые биты одного или нескольких битов LDPC-кода сопоставляются на сигнальную точку, представляющая один символ ортогональной модуляции, и передаются.
В перемежителе 24 скрещивания столбцов выполняется перемежение скрещивания столбцов, процесс которого будет описан позже, как процесс обработки переупорядочения для перестановки кодовых битов LDPC-кода, поставленного из перемежителя 23 четности, так, что множество кодовых битов LDPC-кода, соответствующие 1 в любой одной строке матрицы контроля четности, используемой LDPC-кодером 115, не включены в состав одного символа.
Демультиплексор 25 выполняет процесс перестановки для перестановки позиций двух или более кодовых битов LDPC-кода для формирования символа по отношению к LDPC-коду, поставленного из перемежителя 24 скрещивания столбцов, и получает LDPC-код, в котором увеличена устойчивость к возникновению AWGN. Кроме того, демультиплексор 25 поставляет два или более кодовых битов LDPC-кода, полученные путем обработки обмена как символ, в QAM кодер 117 (фиг. 8).
Далее, фиг. 10, иллюстрирует матрицу H контроля четности, которая используется для LDPC-кодирования LDPC-кодером 115, как показано на фиг. 8.
A
T
A
T
A
T
Матрица H контроля четности становится LDGM (генераторная матрица низкой плотности) структурой и может быть представлена выражением H=[H|H] (матрица, в которой элементы информационной матрицы H установлены слева от элементов и элементы матрицы H контроля четности установлены справа от элементов), с использованием информационной матрицы H части, соответствующей информационным битам среди кодовых битов LDPC-кода, и матрицы H контроля четности, соответствующей битам четности.
В этом случае, количество битов информационных битов среди кодовых битов одного LDPC-кода (одно кодовое слово) и количество битов четности называют длиной К информации и длиной M четности, соответственно, и количество битов кодовых битов одного LDPC-кода называют длиной N (=К+М) кода.
A
T
Длина К информации и длина M четности LDPC-кода, имеющего определенную длину N кода, определяются скоростью кодирования. Матрица H контроля четности становится матрицей, в которой строка × столбец составляет Μ×N. Информационная матрица H становится матрицей Μ×К и матрица H четности становится матрицей Μ×M.
T
Фиг. 11 иллюстрирует матрицу H четности в матрице H контроля четности LDPC-кода, определенного в стандарте DVB-S.2, DVB-T.2 и DVB-C.2.
T
T
Матрица H четности матрицы H контроля четности LDPC-кода, определенного в стандарте DVB-T.2 и т.п., преобразовывается в матрицу ступенчатой структуры, в которой элементы 1 расположены ступенчато, как показано на фиг. 11. Вес строки матрицы H четности становится равным 1 по отношению к первой строке и становится равным 2 по отношению к остальным строкам. Вес столбца становится равным 1 по отношению к последнему столбцу и становится равным 2 относительно остальных столбцов.
T
Как описано выше, LDPC-код матрицы H контроля четности, в которой матрица H четности становится ступенчатой структурой, может легко генерироваться с использованием матрицы H контроля четности.
T
То есть, LDPC-код (одно кодовое слово) представлен вектором с строки и вектором столбца, полученного путем перестановки вектора строки, представленным C. Кроме того, часть информационных битов вектора с строки, чтобы быть LDPC-кодом, представлена вектором А строки и часть битов четности представлена вектором Τ строки.
Вектор с строки может быть представлен выражением c=[А|Т] (вектор строки, в котором элементы вектора А строки, установлены слева от элементов и элементы вектора Τ строки установлены справа от элементов), используя вектор строки, соответствующий информационным битам, и вектор Τ строки, соответствующий битам четности.
c
c
c
c
T
А
T
T
T
T
T
В матрице Η контроля четности и вектор с=[А|Т] строки, соответствующий LDPC-коду, необходимо выполнить выражение H=0. Вектор Τ строки, который соответствует битам четности, составляющие вектор c=[А|Т] строки, удовлетворяющий выражению H=0, может быть последовательно вычислен путем установки элементов каждой строки на 0, последовательно (в порядке) из элементов первой строки вектора H столбца в выражении H=0, когда матрица H четности матрицы Н=[Н|H] контроля четности становится ступенчатой структурой, как показано на фиг. 11.
Фиг. 12 является иллюстрацией матрицы Η контроля четности LDPC-кода, определенного в стандарте DVB-T.2 или тому подобное.
Вес столбца становится равным X относительно КХ столбцов из первого столбца матрицы Η контроля четности LDPC-кода, определенного в стандарте DVB-T.2 или тому подобное, становится равным 3 по отношению к следующим K3 столбцам, становится равным 2 по отношению к следующим (М-1) столбцам и становится равным 1 по отношению к последнему столбцу.
В этом случае, KX+К3+М-1+1 равно кодовой длине N.
Фиг. 13 является иллюстрацией числа KX, К3 и M столбцов и веса X столбца по отношению к каждому значению скорости r кодирования LDPC-кода, определенного в стандарте DVB-T.2 или тому подобное.
В стандарте DVB-T.2 или т.п., определены LDPC-коды, которые имеют кодовые длины N из 64800 бит и 16200 бит.
Что касается LDPC-кода, имеющего кодовую длину N из 64800 битов, определены 11 скоростей кодирования (номинальные скорости) 1/4, 1/3, 2/5, 1/2, 3/5, 2/3, 3/4, 4/5, 5/6, 8/9 и 9/10. Что касается LDPC-кода, имеющего кодовую длину N из 16200 бит, определены 10 скоростей кодирования 1/4, 1/3, 2/5, 1/2, 3/5, 2/3, 3/4, 4/5, 5/6 и 8/9.
Далее, кодовая длина N из 64800 битов упоминается как 64 кбит и кодовая длина N из 16200 упоминается как 16 кбит.
Что касается LDPC-кода, то известно, что частота возникновения ошибок низка в бите кода, соответствующего столбцу, вес которого велик в матрице H контроля четности.
В матрице H контроля четности, которая проиллюстрирована на фиг. 12 и 13, и определена в стандарте DVB-T.2 и т.п., вес столбца стороны заголовка (левая сторона) имеет тенденцию к увеличению. Таким образом, по отношению к LDPC-коду, соответствующему матрице H контроля четности, бит кода стороны заголовка имеет устойчивую тенденцию противостоять возникновению ошибок (способность противостоять возникновению ошибок) и кодовый бит стороны завершения, как правило, обладает слабой устойчивостью к возникновению ошибок.
Далее, фиг. 14 иллюстрирует пример компоновки (соответствующие сигнальные точки) 16 символов на IQ плоскости, когда выполняется 16QAM посредством QAM кодера 117, показанного на фиг. 8.
То есть, часть А фиг. 14 иллюстрирует символы 16QAM в DVB-T.2.
4
В 16QAM присутствует один символ, представленный 4 битами и 16 символами (=2). 16 символов расположены таким образом, что I направление × Q направление становится 4×4 квадратной формой, на основании оригинальной точки IQ плоскости.
i
0
1
2
3
0
3
Если (i+1)-й бит из старшего бита в битовой строке, представленный одним символом, представлен в виде бита y, 4 бита, представленные одним символом 16QAM, могут быть представлены в виде битов y, y, y и y соответственно последовательно из самого старшего бита. Когда способ модуляции является 16QAM, 4 бита кодовых битов LDPC-кода становятся символом (значение символа) 4 бит с y по y (представлены в виде символов).
0
3
Часть В на фиг. 14 иллюстрирует битовую границу по отношению к каждому из 4 битов (в дальнейшем называется как символ битов) с y по y, представленные символом 16QAM.
i
i
i
В этом случае, битовая граница по отношению к символу бита y (на фиг. 14, i=0, 1, 2 и 3) означает границу символа, где символ бита y становится равным 0, и символа, где символ бита y становится равным 1.
0
0
3
1
Как показано на части В фиг. 14, только одно место Q оси IQ плоскости становится битовой границей по отношению к старшему символу бита y 4 символов битов с y по y, как представлено символом 16QAM, и только одно место I оси IQ плоскости становится битовой границей по отношению ко второму (второй от старшего бита) символу бита y.
2
Что касается третьего символа бита y, то два места из местоположения между первым и вторым столбцами с левой стороны, и место между третьим и четвертым столбцами среди 4×4 символов, становятся битовыми границами.
3
Что касается четвертого символа бита y, то два места в месте между первой и второй строчками на верхней стороне, и место между третьей и четвертой строками, среди 4×4 символов, становятся битовыми границами.
i
В символе бита y, который представлен символами, когда число символов, отдаленный от битовых границ, велико, то генерирование ошибки затрудненно (вероятность возникновения ошибки невелика), и когда число символов, приближенных к битовым границам, велико, то ошибка легко генерируется (вероятность возникновения ошибки высока).
0
3
0
1
2
Биты (имеющие высокую защищенность от возникновения ошибок), в которых возникновение ошибки затруднено, называются "сильными битами", и биты (имеющие слабую защищенность от возникновения ошибки), в которых ошибка легко генерируется, называются "слабыми битами" по отношению к 4 символам битов с y по y символа 16QAM, старший символ бита y и второй символ бита y становятся сильными битами и третий символ бита y и четвертый символ бита уз становятся слабыми битами.
Фиг. 15 до 17 иллюстрируют пример компоновки (соответствующие сигнальные точки) 64 символов на IQ плоскости, то есть, символы 16QAM в DVB-T.2, когда выполняется 64-QAM посредством QAM кодера 117, показанного на фиг. 8.
6
В 64QAM, один символ представляет 6 бит, и присутствуют 64 символов (=2). 64 символа расположены таким образом, что I направление × Q направление становится 8×8 квадратной формы, на основании исходной точки IQ плоскости.
0
1
2
3
4
5
0
5
Символ битов одного символа 64QAM может быть представлен как y, y, y, y, y, и y, последовательно от самого старшего бита. Когда способ модуляции является 64QAM, 6 битов кодовых битов LDPC-кода становятся символом символа битов с y по y 6 битов.
0
1
0
5
2
3
4
5
В этом случае, фиг. 15 иллюстрирует битовую границу по отношению к каждому из старшего символа бита y и второму символу бита y среди символа битов с y по y символа 64QAM. Фиг. 16 иллюстрирует битовую границу по отношению к каждому третьему символу бита y и четвертому символа бита y, и на фиг. 17 иллюстрирует битовую границу по отношению к каждому пятому символу бита y и шестому символу бита y.
0
1
2
3
4
5
Как показано на фиг. 15, битовая граница по отношению к каждому старшему символу бита y и второму символу бита y занимает одно место. Как показано на фиг. 16, битовые границы по отношению к каждому третьему символу бита y и четвертому символу бита y занимают два места. Как показано на фиг. 17, битовые границы по отношению к каждому пятому символу бита y и шестому символу бита y занимают четыре места.
5
0
1
2
3
4
5
Таким образом, по отношению к символу битов с y0 по y символа 64QAM, старший символ бита y и второй символ бита y становятся сильными битами и третий символ бита y и четвертый символ бита y становятся следующими сильными битами. Кроме того, пятый символ бита y и шестой символ бита y становятся слабыми битами.
Как показано на фигурах 14ис 15 до 17, очевидно, что по отношению к символу битов символа ортогональной модуляции, верхние биты имеют тенденцию становиться сильными битами и нижние биты имеют тенденцию становиться слабыми битами.
Фиг. 18 является иллюстрацией примера расположения на IQ плоскости (соответствующие сигнальные точки) 4 символов в случае, когда используется спутниковое вещание в качестве канала 13 связи (фиг. 7), и QPSK выполняется в QAM кодере 117, показанного на фиг. 8, то есть, например, является иллюстрацией символов QPSK в DVB-S.2.
В QPSK DVB-S.2, символ отображается на любой из 4 сигнальных точках на окружности, где радиус p центрируется на исходной IQ плоскости.
Фиг. 19 является иллюстрацией примера расположения на плоскости IQ 8 символов в случае, когда используется спутниковое вещание в качестве канала 13 связи (фиг. 7) и 8PSK выполняется в QAM кодере 117, показанного на фиг. 8, то есть, например, иллюстрацией символов 8PSK в DVB-S.2.
В 8PSK в DVB-S.2, символ отображается на любой из 8 сигнальных точках на окружности, где радиус p центрируется на исходной IQ плоскости.
Фиг. 20 показывает пример расположения на плоскости IQ 16 символов в случае, когда используется спутниковое вещание в качестве канала 13 связи (фиг. 7) и 16APSK выполняется в QAM кодере 117, показанного на фиг. 8, то есть, например, иллюстрацией символов 16APSK DVB-S.2.
Часть А фиг. 20 показывает пример расположения сигнальных точек 16APSK DVB-S.2.
1
2
1
В 16APSK из DVB-S.2, символ отображается на любой из 16 сигнальных точках 4 сигнальных точек на окружности, радиус которой центрирования на исходной IQ плоскости равен R, и на 12 сигнальных точках окружности, радиус которой является R (>R).
2
1
2
1
Часть В на фиг. 20 иллюстрирует γ=R/R, что являются отношением радиусов R и R в компоновке сигнальных точек 16APSK из DVB-S.2.
2
1
В схеме расположения сигнальных точек 16APSK DVB-S.2, коэффициент γ радиусов R и R изменяется в зависимости от скорости кодирования.
Фиг. 21 показывает пример расположения на плоскости IQ 32 символов в случае, когда используется спутниковое вещание в качестве канала 13 связи (фиг. 7) и 32APSK выполняется в QAM кодере 117, показанного на фиг. 8, то есть, например, иллюстрацией символов 32APSK в DVB-S.2.
Часть А фиг. 21 показывает расположение сигнальных точек 32APSK DVB-S.2.
1
2
1
3
В 32APSK DVB-S.2, символ отображается на любой из всех 32 сигнальных точек 4 сигнальных точек на окружности, радиус которой центрирован на исходной IQ плоскости и равен R, 12 сигнальных точек на окружности круга с радиусом R (>R) и 16 сигнальных точек на окружности, радиус которой равен R (>R2).
1
2
1
2
1
2
3
1
3
1
Часть В на фиг. 21 иллюстрирует γ=R/R, что является соотношением радиусов R и R в схеме расположения сигнальных точек 32APSK DVB-S.2 и γ=R/R, что является соотношением радиусов R и R.
1
2
1
2
3
1
В схеме расположения сигнальных точек 32APSK DVB-S.2, коэффициент γ радиусов R и R, и коэффициент γ радиусов R и R варьируются в зависимости от скорости кодирования.
Даже для символов битов из символов каждой квадратурной модуляции (QPSK, 8PSK, 16APSK и 32APSK) DVB-S.2, как показано расположение сигнальных точек на фигурах с 18 по 21, аналогичен случаям, показанным на фигурах с 14 по 17, есть сильные биты и слабые биты.
Как описано на фигурах 12 и 13, по отношению к LDPC-коду, вырабатываемого LDPC-кодером 115 (фиг. 8), присутствуют сильные кодовые биты и слабые кодовые биты.
Как показано на фигурах с 14 по 21, по отношению к символу битов символа ортогональной модуляции, выполненной QAM кодером 117, присутствуют сильные биты и слабые биты.
Поэтому, если кодовые биты LDPC-кода, являющиеся сильными по отношению ошибки, выделяются на слабый символ битов символа ортогональной модуляции, то толерантность по отношению к ошибке снижается в целом.
Таким образом, предлагается, чтобы перемежитель, который перемежает кодовые биты LDPC-кода так, чтобы кодовые биты LDPC-кода, являющиеся слабыми по отношению к ошибке, были выделены на сильные биты (символ битов) символа ортогональной модуляции.
Демультиплексор 25, показанный на фиг. 9, можно выполнить процесс обработки перемежителя.
Фиг. 22 является иллюстрацией процесса обработки демультиплексора 25, показанного на фиг. 9.
То есть, часть А фиг. 18 иллюстрирует пример функциональной конфигурации демультиплексора 25.
Демультиплексор 25 включает в себя память 31 и блок 32 перестановки.
LDPC-код поставляется из LDPC-кодера 115 в память 31.
Память 31 имеет емкость для хранения мб битов в строке (поперечное направление) и хранит N / (Мб) битов в столбце (продольное направление). Память 31 записывает поставленные кодовые биты LDPC-кода в направлении столбцов, считывает кодовые биты в направлении строк, и поставляет кодовые биты в блок 32 перестановки.
В этом случае, N (= длина К информации + длина M четности) представляет собой кодовую длину LDPC-кода, как описано выше.
Кроме того, m представляет собой число бита кодовых битов LDPC-кода, которое становится одним символом, и b представляет собой коэффициент, который является заранее определенным положительным целым числом, и используется для выполнения интегрального умножения m. Как описано выше, демультиплексор 25 отображает в символической форме кодовые биты LDPC-кода. Однако множитель b представляет собой количество символов, полученных с помощью одноразовой символизации демультиплексора 25.
Часть А фиг. 22 иллюстрирует пример конфигурации демультиплексора 25 в случае, когда способ модуляции является 64QAM или тому подобное, в котором отображение выполняется на любую из 64 сигнальных точек и, следовательно, номер m бита кодовых битов LDPC-кода становятся одним символом, равным 6 битам.
В части А фиг. 22, множитель b становится 1. Таким образом, память 31 имеет емкость, где направление столбца × направление строки равно N/(6×1)×(6×1) бит.
В этом случае область хранения памяти 31, где направление строки равно 1 бит и проходит в направлении столбцов, соответственно называют как столбец. В части А на фиг. 22, память 31 включает в себя 6 (=6×1) столбцов.
В демультиплексоре 25, написание кодовых битов LDPC-кода в направлении вниз (направление столбца) из верхней части столбцов, составляющих память 31, выполняется в направлении столбцов в правом направлении с левой стороны.
Если запись кодовых битов заканчивается в нижней части правого столбца, то кодовые биты считываются в блоке из 6 битов (МБ бит) в направлении строки из первой строки всех столбцов, составляющих память 31, и подается в блок 32 перестановки.
0
1
2
3
4
5
Блок 32 перестановки выполняет перестановку позиций кодовых битов из 6 бит из памяти 31, и выводит 6 битов, полученных в результате, как 6 символов бит y, y, y, y, y и y, представляя один символ 64QAM.
i
0
1
2
3
4
5
То есть, кодовые биты из mb битов (в данном случае, 6 бит) считываются из памяти 31 в направлении строк. Однако, если i-й (i=0, 1, … и mb - 1) бит от старшего бита кодовых битов mb битов, считанных из памяти 31, представлен как бит b, то кодовые биты 6 битов, которые считываются из памяти 31 в направлении строк, могут быть представлены как биты b, b, b, b, b и b последовательно от самого старшего бита.
0
5
С учетом весов столбцов, описанных на фиг. 12 и 13, кодовый бит в направлении бита b становится кодовым битом сильным для ошибок и кодовый бит в направлении бита b становится кодовым битом слабым для ошибки.
0
5
0
5
0
5
В блоке 32 перестановки, выполняется процесс перестановки позиций кодовых битов с b go b из 6 битов памяти 31, таким образом, что кодовые биты слабые для ошибки среди кодовых битов с b по b 6 битов памяти 31, выделяются на сильные биты среди символа битов с y по y одного символа 64QAM.
0
5
0
5
0
5
В этом случае, как способы перестановки кодовых битов с b по b из 6 битов из памяти 31, и выделения кодовых битов с b по b 6 битов на символ 6 битов с y по y, представляя символ 64QAM, отдельные компании предлагают различные способы.
Часть В на фиг. 22 иллюстрирует первый способ перестановки, часть С на фиг. 22 иллюстрирует второй способ перестановки и часть D на фиг. 22 иллюстрирует третий способ перестановки.
i
i
i
j
j
С части В на фиг. 22 по часть D на фиг. 22 (и на фиг. 23, которая будет описана позже), сегмент соединительной линии битов b и y означает, что кодовый бит b выделен на символ бита y символа (перестановленный с позиции символа бита y).
В качестве первого способа перестановки, показанного на части В на фиг. 22, предлагается применять любой один из трех способов перестановки. В качестве второго способа перестановки, показанного на части С на фиг. 22, предлагается применять любой из двух способов перестановки.
В качестве третьего способа перестановки, показанного на части D на фиг. 22, предлагается последовательно выбирать шесть видов способа перестановки и использовать способ перестановки.
Фиг. 23 иллюстрирует пример конфигурации демультиплексора 25 в случае, когда способ модуляции представляется собой 64QAM или тому подобное и четвертый способ перестановки, в котором отображение выполняется на любую из 64 сигнальных точек (таким образом, число m кодового бита кодовых битов LDPC-кода, отображенного на один символ равно 6 битам, как также показано на фиг. 22) и множитель b равен 2.
Когда множитель b равен 2, то память 31 имеет емкость, в которой направление столбец × направление строки равно N/(6×2)×(6×2) битов и включает в себя 12 (=6×2) столбцов.
Часть А фиг. 23 иллюстрирует последовательность написания LDPC-кода в память 31.
В демультиплексоре 25, как показано на фиг. 22, написание кодовых битов LDPC-кода в направлении вниз (направлении столбца) из верхней части столбцов, составляющие память 31, выполняется в направлении столбцов в правом направлении с левой стороны.
Если запись кодовых битов заканчивается в нижней части самого правого столбца, то кодовые биты считываются в блок из 12 битов (МБ бит) в направлении строки из первой строки всех столбцов, составляющих память 31, и подаются в блок 32 перестановки.
0
1
2
3
4
5
0
1
2
3
4
5
Блок 32 перестановки выполняет перестановку позиций кодовых битов 12 битов из памяти 31 с помощью четвертого способа перестановки, и выдает 12 битов, полученные в результате, как 12 битов, представляющие два символа (b символы) 64QAM, т.е., шесть символов бит y, y, y, y, y и y, представляя один символ 64QAM, и шесть символа битов y, y, y, y, y и y, представляющие следующий один символ.
В этом случае, часть В на фиг. 23 иллюстрирует четвертый способ перестановки, осуществляемый блоком 32 перестановки, как показано на части А фиг. 23.
i
Когда множитель b равен 2 (или 3 и более) при выполнении процесса перестановки, кодовые биты mb битов выделяются на символ битов мб битов b последовательных символов. В последующем описании, включающее в себя описание фиг. 23, (i+1)-й бит из старшего бита символа битов mb битов b последовательных символов, представлен как бит (символ бита) y, для удобства объяснения.
Кодовые биты, которые являются подходящими для перестановки, то есть, для улучшения частоты появления ошибок в AWGN коммуникационном тракте, отличается в зависимости от скорости кодирования или кодовой длины LDPC-кода и способа модуляции.
Перемежение битов четности
Далее будет приведено описание процесса перемежения битов четности посредством перемежителя 23 четности, показанного на фиг. 9, со ссылкой на фигуры с 24 по 26.
Фиг. 24 иллюстрирует (часть) графа Таннера матрицы контроля четности LDPC-кода.
Как показано на фиг. 24, если множество, например, два переменные узла среди (соответствующие кодовые биты) переменных узлов, соединенных с узлом проверки, одновременно имеют ошибку, такую как стирание, то узел проверки возвращает сообщение, в котором значение вероятности равно 0, и вероятность того, что значение составляет 1, равны друг другу, во все переменные узлы, соединенные с узлом проверки. По этой причине, если множество переменных узлов, подключенных к тому же узлу проверки, одновременно стираются, производительность процесса декодирования снижается.
T
Между тем, LDPC-код, который выводится LDPC-кодером 115, показанным на фиг. 8, и определен в стандарте DVB-S.2 или тому подобное, является IRA кодом и матрица H четности матрицы H контроля четности приобретает ступенчатую структуру, как показано на фиг. 11.
T
T
Фиг. 25 иллюстрирует матрицу H четности со ступенчатой структурой и граф Таннера, соответствующий матрицу H четности.
T
T
То есть, часть А на фиг. 25 иллюстрирует матрицу H четности со ступенчатой структурой и часть В на фиг. 25 иллюстрирует граф Таннера, соответствующий матрице H четности на части А фиг. 25.
T
T
T
В матрице H четности со ступенчатой структурой, элементы 1 расположены рядом в каждой строке (за исключением первой строки). Таким образом, в графе Таннера матрицы H четности два соседних переменных узла, соответствующие столбцу двух соседних элементов, в которых значение матрицы H четности равно 1, подключены к тому же узлу проверки.
Поэтому, когда биты четности, соответствующие двух вышеупомянутых смежным переменным узлам, имеют ошибки одновременно ошибку в канале передачи пакетных данных и стирания и так далее, узел проверки, подключенный к двум переменным узлам (переменные узлы обнаруживают сообщение посредством использования битов четности), соответствующие этим двум битами четности, которые имеют ошибки, возвращает сообщение о том, что вероятность со значением 0 и вероятность со значением 1 равны, на переменные узлы, связанные с узлом проверки, и, следовательно, производительность декодирования снижается. Кроме того, когда длина пакета (номер бита битов четности, которые постоянно имеют ошибки) становится большой, число узлов проверки, которые возвращают сообщение равных вероятностей, увеличивается и производительность декодирования снижается.
Таким образом, перемежитель 23 четности (фиг. 9) выполняет перемежение четности битов четности LDPC-кода из LDPC-кодера 115 на позиции других битов четности, чтобы предотвратить снижение эффективности процесса декодирования.
T
Фиг. 26 иллюстрирует матрицу H четности матрицы H контроля четности, соответствующей LDPC-коду после перемежения четности, выполняемой перемежителем 23 четности, показанного на фиг. 9.
В этом случае, информационная матрицы НА матрицы H контроля четности, соответствующая LDPC-коду, который вырабатывается LDPC-кодером 115, и определена в стандарте DVB-S.2 и т.п. становится циклической структурой.
Циклическая структура означает структуру, в которой определенный столбец сопоставляется со столбцом, полученный путем циклического сдвига другого столбца. Например, циклическая структура включает в себя структуру, в которой позиция 1 каждой строки Ρ столбцов становится позицией, полученной путем циклического сдвига первого столбца Ρ столбцов в направлении столбцов на величину, пропорциональную значению q, полученную делением длины M четности на каждые Ρ столбцы. Далее, Ρ столбцы в циклической структуре надлежащим образом упоминается как номер столбца блока циклической структуры.
В качестве LDPC-кода, определенного в стандарте, таком как DVB-S.2, как показано на фиг. 12 и фиг. 13, существуют два вида LDPC-кодов, чьи кодовые длины N составляют 64800 бит и 16200 бит и для этих двух видов LDPC-кодов, номер Ρ столбца, который является блоком циклической структуры, определяется как 360, который является одним из делителей, исключая 1 и M среди делителей длины M четности.
Длина M четности становится значением, отличным от простых чисел, представленных выражением M=q×P=q×360, с использованием иное значение q, согласно скорости кодирования. Таким образом, аналогично номеру Ρ столбца блока циклической структуры, значение q является иным значением, чем 1 и M среди делителей длины M четности и определяется путем деления длины M четности на номер Ρ столбца блока циклической структуры (произведение Ρ и q, являясь делителем длины M четности, становится длиной M четности).
Как описано выше, когда предполагается, что длина информации равна К, то целое число, равное или большее 0 и меньше Р, как предполагается, должно быть x и целое число, равное или большее чем 0, и меньше, чем q, как предполагается, должно быть y, перемежитель 23 четности перемежевывает K+qx+y+1-й битовый код среди кодовых битов LDPC-кода N битов на позицию K+Py+x+1-й кодовых битов, как перемежевание четности.
Так как K+qx+y+1-й кодовый бит и К+Py+x+1-й кодовый бит являются кодовыми битами после K+1-го бита, то они являются битами четности, и поэтому позиции бит четности LDPC-кода перемещаются в соответствии с перемежением четности.
В соответствии с перемежением четности, (соответствующие биты четности) переменные узлы, связанные с тем же узлом проверки, разделены числом Ρ столбца блока циклической структуры, то есть 360 битами в этом случае. По этой причине, когда длина пакета меньше чем 360 бит, множество переменных узлов, подключенных к тому же узлу проверки, может быть одновременно предотвращено иметь ошибку. В результате толерантность против ошибок в канале передачи пакетных данных может быть улучшена.
LDPC-код после перемежения (K+qx+y+1)-го кодового бита на позицию (К+Py+x+1)-го кодового бита сопоставляется с LDPC-кодом матрицы проверки четности (далее упоминается как преобразованная матрица контроля четности), полученного посредством изменения местоположения столбца (K+qX+y+1) исходной матрицы Η контроля четности на (K+Py+x+1)-й столбец.
В матрице четности преобразованной матрицы контроля четности, как показано на фиг. 26, возникает псевдо циклическая структура, которая использует Ρ столбцы (на фиг. 26, 360 столбцов) как блок.
В этом случае, псевдо циклическую структуру означает структуру, в которой циклическая структура формируется за исключением ее части. Преобразованная матрица контроля четности, которая получена путем осуществления замены столбца, в соответствии с перемежением четности по отношению к матрице контроля четности LDPC-кода, определенного в стандарте DVB-S.2 и т.п., становится псевдо циклической структурой, не (идеальной) циклической структурой, так как число элементов 1 меньше, чем 1 (0 элементы существуют) на позиции (сдвинутая матрица, которая будет описана позже) 360 строк × 360 столбцов правой угловой части.
Преобразуется матрица контроля четности, показанная на фиг. 26, становится матрицей, полученной в результате выполнения замены столбца, в соответствии с перемежением четности и замены (замена строк) строки, чтобы сконфигурировать преобразованную матрицу контроля четности в конститутивную матрицу, которая будет описана позже, по отношению к исходной матрице Η контроля четности.
Перемежение скручивания столбцов
Далее будет описан процесс перемежения скручивания столбцов, в соответствии с процессом обработки переупорядочения, выполняемого перемежителем 24 скручивания столбцов, показанного на фиг. 9, со ссылкой на фигуры с 27 по 30.
В передающем устройстве 11, показанном на фиг. 8, один или более бит кодовых битов LDPC-кода передаются как один символ. То есть, когда два бита кодовых битов установлены как один символ, QPSK используется в качестве способа модуляции, и когда четыре бита кодовых битов установлены как один символ, в APSK или 16QAM используется в качестве способа модуляции.
Таким образом, когда два или более битов кодовых битов передаются как один символ, если ошибка стирания генерируется в определенном символе, все кодовые биты символа становятся ошибкой (стирание).
Таким образом, необходимо предотвратить переменные узлы, соответствующих кодовых битов одного символа от соединения с тем же узлом проверки, чтобы уменьшить вероятность (соответствующие биты кода) множества переменных узлов, подключенных к тому же узлу проверки, одновременно становиться ошибкой стирания для повышения производительности процесса декодирования.
A
T
Между тем, как описано выше, в матрице H контроля четности LDPC-кода, которая вырабатывается LDPC-кодером 115, и определена в стандарте DVB-S.2 или тому подобное, информационная матрица H имеет циклическую структуру и матрица H четности имеет ступенчатую структуру. Как показано на фиг. 26, в преобразованной матрице контроля четности, чтобы быть матрицей контроля четности LDPC-кода после перемежения четности, циклическая структура (на самом деле, псевдо циклическая структура, как описано выше) появляется в матрице четности.
Фиг. 27 иллюстрирует преобразованную матрицу контроля четности.
То есть, часть А на фиг. 27 иллюстрирует преобразованную матрицу контроля четности матрицы H контроля четности LDPC-кода, в которой кодовая длина N равна 64800 бит и скорость (r) кодирования составляет 3/4.
Часть А фиг. 27 показывает, что в преобразованной матрице контроля четности, позиция элемента, значение которого становится равным 1, показана точкой (·).
Часть В на фиг. 27 иллюстрирует процесс обработки, выполняемый демультиплексором 25 (фиг. 9) по отношению к LDPC-коду преобразованной матрицы контроля четности, показанной на части А на фиг. 27, то есть LDPC-код после чередование четности.
В части В на фиг. 27, при допущении, что способ модуляции представляет собой способ, в котором символ отображается на любую из 16 сигнальных точек, например, 16APSK и 16QAM, кодовые биты LDPC-кода после перемежения четности записываются в четырех столбцах, формируя память 31 демультиплексора 25 в направлении столбцов.
Кодовые биты, которые написаны в направлении столбцов в четырех столбцах, составляющие память 31, считываются в блок из четырех битов в направлении строк и становятся одним символом.
0
1
2
3
0
1
2
3
В этом случае кодовые биты В, B, B, и B четырех битов, которые становятся одним символом, могут стать кодовыми битами, соответствующими 1 в одной строке преобразованной матрицы контроля четности, показанной на части А фиг. 27. В этом случае, переменные узлы, которые соответствуют кодовым битам В, B, В, и В, подключены к тому же узлу проверки.
0
1
2
3
0
1
2
3
Поэтому, когда кодовые биты B, B, В, и B четырех битов одного символа стали кодовыми битами соответствующими 1 в одной строке преобразованной матрицы контроля четности, если ошибка стирания генерируется в символе, то соответствующее сообщение не может быть вычислено в том же узле проверки, к которому переменные узлы, соответствующие кодовым битам B, B, B, и B, подключены. В результате, производительность декодирования снижается.
Что касается скоростей кодирования отличных от 3/4, то множество кодовых битов, соответствующих множеству переменных узлов, подключенных к тому же узлу проверки, может стать одним символом APSK или 16QAM, аналогично рассмотренному выше случаю.
Таким образом, перемежитель 24 скручивания столбцов осуществляет процесс перемежения скручивания столбцов для перемежения кодовых битов LDPC-кода после перемежения четности перемежителем 23 четности так, что множество кодовых битов, соответствующих 1 в одной строке преобразованной матрицы контроля четности не включены в состав одного символа.
Фиг. 28 является иллюстрацией процесса перемежения скручивания столбов.
То есть, фиг. 28 иллюстрирует память 31 (фиг. 22 и 23) демультиплексора 25.
Как показано на фиг. 22, память 31 имеет емкость для хранения mb битов в (продольное) направлении столбца и хранит N/(mb) битов в (поперечное) направлении строки и включает в себя mb столбцы. Перемежитель 24 скручивания столбцов записывает кодовые биты LDPC-кода в направлении столбцов по отношению к памяти 31, и управляет записью начальной позиции, когда кодовые биты считываются в направлении строк, и выполняет перемежение скручивания столбцов.
То есть, в перемежителе 24 скручивания столбцов начальная позиция записи для начала записи кодовых битов, надлежащим образом изменяться по отношению к каждому из множества столбцов, таким образом, что множество кодовых битов считывается в направлении строк и становится одним символом, не образуя кодовые биты, соответствующие 1 в одной строке преобразованной матрицы контроля четности (кодовые биты LDPC-кода перестраиваются таким образом, что множество кодовых битов, соответствующих 1 в какой-либо одной строке матрицы контроля четности не включены в состав того же символа).
В этом случае, фиг. 28 иллюстрирует пример конфигурации памяти 31, когда способ модуляции представляет собой 16 APSK или 16QAM, и множитель b, показанный на фиг. 22, равен 1. Таким образом, число m битов кодовых битов LDPC-кода становится одним символом и равно 4 битам, и память 31 включает в себя 4 (=mb) столбцов.
Перемежитель 24 скручивания столбцов осуществляет написание кодовых битов LDPC-кода (вместо демультиплексора 25 на фиг. 22) в направлении вниз (направление столбца) с верхней стороны четырех столбцов, составляющих память 31, к столбцам в направлении справа налево.
Если запись кодовых битов заканчивается в правом столбце, то перемежитель 24 скручивания столбцов считывает кодовые биты в блок из четырех битов (МБ бит) в направлении строки из первой строки всех столбцов, составляющих память 31, и выводит кодовые биты как LDPC-код после перемежения скрещивания столбцов в блок 32 перестановки (фиг. 22 и 23) демультиплексора 25.
Однако, в перемежителе 24 скручивания столбцов, если адрес позиции заголовка (верхняя часть) каждого столбца установлен на 0 и адрес каждой позиции в направлении столбцов представлен восходящим целым числом, позиция начала записи устанавливается на позицию, адрес которой равен 0 по отношению к крайне левому столбцу. Позиция начала записи устанавливается на позицию, адрес которой равен 2 по отношению ко второму столбцу (с левой стороны). Позиция начала записи устанавливается на позицию, адрес которой равен 4 по отношению к третьему столбцу. Позиция начала записи устанавливается на позицию, адрес которой равен 7 по отношению к четвертому столбцу.
Что касается столбцов, в которых начальные позиции записи, отличные от позиции, адрес которых равен 0, после того, как кодовые биты записываются в нижнем положении, позиция возвращается к заголовку (позиция, адрес которой является 0) и запись выполняется на позиции непосредственно перед позицией начала записи. Затем, выполняется запись по отношению к следующему столбцу (справа).
Посредством выполнения перемежения скрещивания столбцов, как описано выше, по отношению к LDPC-кодам, которые определены в стандарте DVB-T.2 или тому подобное, множество кодовых битов, соответствующих множеству переменных узлов, подключенных к тому же узлу проверки, может быть предотвращено от формирования одним символом APSK или 16QAM (будучи включенным в состав того же символа). В результате производительность процесса декодирования в канале связи, в которой присутствует ошибка стирания, может быть улучшена.
Фиг. 29 иллюстрирует количество столбцов памяти 31, необходимое для перемещения скручивания столбцов, и адрес позиции начала записи для каждого способа модуляции по отношению к LDPC-кодам 11 скоростей кодирования, определенных в стандарте DVB-T.2 и имеющие кодовую длину N 64800.
Когда множитель b равен 1, QPSK принимается в качестве способа модуляции и количество m бит одного символа равно 2 битам, в соответствии с фиг. 29, то память 31 содержит два столбца для хранения 2×1 (=mb) бит в направлении строк и хранит 64800 (2×1) бит в направлении столбцов.
Позиция начала записи первого столбца из двух столбцов памяти 31 становится позицией, адрес которой равен 0, и позиция начала записи второго столбца становится позицией, адрес которой равен 2.
Например, когда применяется какой-либо один из первого по третий способ перестановки, как показано фиг. 22, в качестве способа перестановки демультиплексора 25 (фиг. 9), то множитель b становится равным 1.
Когда множитель b равен 2, QPSK принимается в качестве способа модуляции и количество m бит одного символа равно 2 битам, в соответствии с фиг. 29, то память 31 имеет четыре столбца для хранения 2×2 бит в направлении строки и сохраняет 64800/(2×2) битов в направлении столбцов.
Позиция начала записи первого столбца из четырех столбцов памяти 31 становится позицией, адрес которой равен 0, позиция начала записи второго столбца становится позицией, адрес которой равен 2, позиция начала записи третьего столбца становится позицией, адрес которой равен 4 и позиция начала записи четвертого столбца становится позицией, адрес которой равен 7.
Например, когда применяется четвертый способ перестановки на фиг. 23 в качестве способа перестановки обработки перестановки демультиплексора 25 (фиг. 9), множитель b становится равным 2.
Когда множитель b равен 1, 16QAM принимается в качестве способа модуляции и количество m бит одного символа равно 4 битам, в соответствии с фиг. 29, то память 31 имеет четыре столбца для хранения 4×1 бит в направлении строк и хранит 64800/(4×1) бит в направлении столбцов.
Позиция начала записи первого столбца из четырех столбцов памяти 31 становится позицией, адрес которой равен 0, позиция начала записи второго столбца становится позицией, адрес которой равен 2, позиция начала записи третьего столбца становится позицией, адрес которой равен 4, позиция начала записи четвертого столбца становится позицией, адрес которой равен 7.
Когда множитель b равен 2, 16QAM принимается в качестве способа модуляции и количество m бит одного символа равно 4 битам, в соответствии с фиг. 29, то память 31 имеет восемь столбцов для хранения 4×2 бита в направлении строки и сохраняет 64800/(4×2) битов в направлении столбцов.
Позиция начала записи первого столбца из восьми столбцов памяти 31 становится позицией, адрес которой равен 0, позиция начала записи второго столбца становится позицией, адрес которой равен 0, позиция начала записи третьего столбца становится позицией, адрес которой равен 2, позиция начала записи четвертого столбца становится позицией, адрес которой равен 4, позиция начала записи пятого столбца становится позицией, адрес которой равен 4, позиция начала записи шестого столбца становится позицией, адрес которой равен 5, позиция начала записи седьмого столбца становится позицией, адрес которой равен 7, позиция начала записи восьмого становится позицией, адрес которой равен 7.
Когда множитель b равен 1, 64QAM принимается в качестве способа модуляции и количество m бит одного символа равно 6 битам, в соответствии с фиг. 29, то память 31 имеет шесть столбцов для хранения 6×1 бит в направлении строк и хранит 64800/(6×1) битов в направлении столбцов.
Позиция начала записи первого столбца из шести столбцов памяти 31 становится позицией, адрес которой равен 0, позиция начала записи второго столбца становится позицией, адрес которой равен 2, позиция начала записи третьего столбца становится позицией, адрес которой равен 5, позиция начала записи четвертого столбца становится позицией, адрес которой равен 9, позиция начала записи пятого столбца становится позицией, адрес которой равен 10, позиция начала записи шестого столбца становится позицией, адрес которой равен 13.
Когда множитель b равен 2, 64QAM принимается в качестве способа модуляции и количество m бит одного символа равно 6 битам, в соответствии с фиг. 29, то память 31 имеет шесть столбцов для хранения 6×2 бит в направлении строк и хранит 64800/(6×2) битов в направлении столбцов.
Позиция начала записи первого столбца из двенадцати столбцов памяти 31 становится позицией, адрес которой равен 0, позиция начала записи второго столбца становится позицией, адрес которой равен 0, позиция начала записи третьего столбца становится позицией, адрес которой равен 2, позиция начала записи четвертого столбца становится позицией, адрес которой равен 2, позиция начала записи пятого столбца становится позицией, адрес которой равен 3, позиция начала записи шестого столбца становится позицией, адрес которой равен 4, позиция начала записи седьмого столбца становится позицией, адрес которой равен 4, позиция начала записи восьмого становится позицией, адрес которой равен 5, позиция начала записи девятого столбца становится позицией, адрес которой равен 5, позиция начала записи десятого столбца становится позицией, адрес которой равен 7, позиция начала записи одиннадцатого столбца становится позицией, адрес которой равен 8, позиция начала записи двенадцатого столбца становится позицией, адрес которой равен 9.
Когда множитель b равен 1,256QAM принимается в качестве способа модуляции и количество m бит одного символа равно 8 битам, в соответствии с фиг. 29, то память 31 имеет восемь столбцов для хранения 8×1 бит в направлении строк и хранит 64800/(8×1) битов в направлении столбцов.
Позиция начала записи первого столбца из восьми столбцов памяти 31 становится позицией, адрес которой равен 0, позиция начала записи второго столбца становится позицией, адрес которой равен 0, позиция начала записи третьего столбца становится позицией, адрес которой равен 2, позиция начала записи четвертого столбца становится позицией, адрес которой равен 4, позиция начала записи пятого столбца становится позицией, адрес которой равен 4, позиция начала записи шестого столбца становится позицией, адрес которой равен 5, позиция начала записи седьмого столбца становится позицией, адрес которой равен 7, позиция начала записи восьмого становится позицией, адрес которой равен 7.
Когда множитель b равен 2,256QAM принимается в качестве способа модуляции и количество m бит одного символа равно 8 битам, в соответствии с фиг. 29, то память 31 имеет шестнадцать столбцов для хранения 8×2 бит в направлении строк и хранит 64800/(8×2) битов в направлении столбцов.
Позиция начала записи первого столбца из шестнадцати столбцов памяти 31 становится позицией, адрес которой равен 0, позиция начала записи второго столбца становится позицией, адрес которой равен 2, позиция начала записи третьего столбца становится позицией, адрес которой равен 2, позиция начала записи четвертого столбца становится позицией, адрес которой равен 2, позиция начала записи пятого столбца становится позицией, адрес которой равен 2, позиция начала записи шестого столбца становится позицией, адрес которой равен 3, позиция начала записи седьмого столбца становится позицией, адрес которой равен 7, позиция начала записи восьмого становится позицией, адрес которой равен 15, позиция начала записи девятого столбца становится позицией, адрес которой равен 16, позиция начала записи десятого столбца становится позицией, адрес которой равен 20, позиция начала записи одиннадцатого столбца становится позицией, адрес которой равен 22, позиция начала записи двенадцатого столбца становится позицией, адрес которой равен 22, позиция начала записи тринадцатого столбца становится позицией, адрес которой равен 27, позиция начала записи четырнадцатого столбца становится позицией, адрес которой равен 27, позиция начала записи пятнадцатого столбца становится позицией, адрес которой равен 28, позиция начала записи шестнадцатого столбца становится позицией, адрес которой равен 32.
Когда множитель b равен 1, 1024QAM принимается в качестве способа модуляции и количество m бит одного символа равно 10 битам, в соответствии с фиг. 29, то память 31 имеет десять столбцов для хранения 10×1 бит в направлении строк и хранит 64800/(10×1) битов в направлении столбцов.
Позиция начала записи первого столбца из десяти столбцов памяти 31 становится позицией, адрес которой равен 0, позиция начала записи второго столбца становится позицией, адрес которой равен 3, позиция начала записи третьего столбца становится позицией, адрес которой равен 6, позиция начала записи четвертого столбца становится позицией, адрес которой равен 8, позиция начала записи пятого столбца становится позицией, адрес которой равен 11, позиция начала записи шестого столбца становится позицией, адрес которой равен 13, позиция начала записи седьмого столбца становится позицией, адрес которой равен 15, позиция начала записи восьмого становится позицией, адрес которой равен 17, позиция начала записи девятого столбца становится позицией, адрес которой равен 18, позиция начала записи десятого столбца становится позицией, адрес которой равен 20.
Когда множитель b равен 2, 1024QAM принимается в качестве способа модуляции и количество m бит одного символа равно 10 битам, в соответствии с фиг. 29, то память 31 имеет двадцать столбцов для хранения 10×2 бит в направлении строк и хранит 64800/(10×2) битов в направлении столбцов.
Позиция начала записи первого столбца из двадцати столбцов памяти 31 становится позицией, адрес которой равен 0, позиция начала записи второго столбца становится позицией, адрес которой равен 1, позиция начала записи третьего столбца становится позицией, адрес которой равен 3, позиция начала записи четвертого столбца становится позицией, адрес которой равен 4, позиция начала записи пятого столбца становится позицией, адрес которой равен 5, позиция начала записи шестого столбца становится позицией, адрес которой равен 6, позиция начала записи седьмого столбца становится позицией, адрес которой равен 6, позиция начала записи восьмого становится позицией, адрес которой равен 9, позиция начала записи девятого столбца становится позицией, адрес которой равен 13, позиция начала записи десятого столбца становится позицией, адрес которой равен 14, позиция начала записи одиннадцатого столбца становится позицией, адрес которой равен 14, позиция начала записи двенадцатого столбца становится позицией, адрес которой равен 16, позиция начала записи тринадцатого столбца становится позицией, адрес которой равен 21, позиция начала записи четырнадцатого столбца становится позицией, адрес которой равен 21, позиция начала записи пятнадцатого столбца становится позицией, адрес которой равен 23, позиция начала записи шестнадцатого столбца становится позицией, адрес которой равен 25, позиция начала записи семнадцатого столбца становится позицией, адрес которой равен 25, позиция начала записи восемнадцатого столбца становится позицией, адрес которой равен 26, позиция начала записи девятнадцатого столбца становится позицией, адрес которой равен 28, позиция начала записи двадцатого столбца становится позицией, адрес которой равен 30.
Когда множитель b равен 1, 4096QAM принимается в качестве способа модуляции и количество m бит одного символа равно 12 битам, в соответствии с фиг. 29, то память 31 имеет двенадцать столбцов для хранения 12×1 бит в направлении строк и хранит 64800/(12×1) битов в направлении столбцов.
Позиция начала записи первого столбца из двенадцати столбцов памяти 31 становится позицией, адрес которой равен 0, позиция начала записи второго столбца становится позицией, адрес которой равен 0, позиция начала записи третьего столбца становится позицией, адрес которой равен 2, позиция начала записи четвертого столбца становится позицией, адрес которой равен 2, позиция начала записи пятого столбца становится позицией, адрес которой равен 3, позиция начала записи шестого столбца становится позицией, адрес которой равен 4, позиция начала записи седьмого столбца становится позицией, адрес которой равен 4, позиция начала записи восьмого становится позицией, адрес которой равен 5, позиция начала записи девятого столбца становится позицией, адрес которой равен 5, позиция начала записи десятого столбца становится позицией, адрес которой равен 7, позиция начала записи одиннадцатого столбца становится позицией, адрес которой равен 8, позиция начала записи двенадцатого столбца становится позицией, адрес которой равен 9.
Когда множитель b равен 2, 4096QAM принимается в качестве способа модуляции и количество m бит одного символа равно 12 битам, в соответствии с фиг. 29, то память 31 имеет двадцать четыре столбца для хранения 12×2 бит в направлении строк и хранит 64800/(12×2) битов в направлении столбцов.
Позиция начала записи первого столбца из двадцати четырех столбцов памяти 31 становится позицией, адрес которой равен 0, позиция начала записи второго столбца становится позицией, адрес которой равен 5, позиция начала записи третьего столбца становится позицией, адрес которой равен 8, позиция начала записи четвертого столбца становится позицией, адрес которой равен 8, позиция начала записи пятого столбца становится позицией, адрес которой равен 8, позиция начала записи шестого столбца становится позицией, адрес которой равен 8, позиция начала записи седьмого столбца становится позицией, адрес которой равен 10, позиция начала записи восьмого становится позицией, адрес которой равен 10, позиция начала записи девятого столбца становится позицией, адрес которой равен 10, позиция начала записи десятого столбца становится позицией, адрес которой равен 12, позиция начала записи одиннадцатого столбца становится позицией, адрес которой равен 13, позиция начала записи двенадцатого столбца становится позицией, адрес которой равен 16, позиция начала записи тринадцатого столбца становится позицией, адрес которой равен 17, позиция начала записи четырнадцатого столбца становится позицией, адрес которой равен 19, позиция начала записи пятнадцатого столбца становится позицией, адрес которой равен 21, позиция начала записи шестнадцатого столбца становится позицией, адрес которой равен 22, позиция начала записи семнадцатого столбца становится позицией, адрес которой равен 23, позиция начала записи восемнадцатого столбца становится позицией, адрес которой равен 26, позиция начала записи девятнадцатого столбца становится позицией, адрес которой равен 37, позиция начала записи двадцатого столбца становится позицией, адрес которой равен 39, позиция начала записи двадцать первого столбца становится позицией, адрес которой равен 40, позиция начала записи двадцать второго столбца становится позицией, адрес которой равен 41, позиция начала записи двадцать третьего столбца становится позицией, адрес которой равен 41, позиция начала записи двадцать четвертого столбца становится позицией, адрес которой равен 41.
Фиг. 30 иллюстрирует количество столбцов памяти 31, необходимое для перемежения скрещивания столбцов, и адрес позиции начала записи для каждого способа модуляции по отношению к LDPC-кодам 10 скоростей кодирования, определенных в стандарте DVB-T.2 и имеющие кодовую длин N 16200.
Когда множитель b равен 1, QPSK принимается в качестве способа модуляции и количество m бит одного символа равно 2 битам, в соответствии с фиг. 30, то память 31 имеет два столбца для хранения 2×1 бит в направлении строк и хранит 16200/(2×1) битов в направлении столбцов.
Позиция начала записи первого столбца из двух столбцов памяти 31 становится позицией, адрес которой равен 0, позиция начала записи второго столбца становится позицией, адрес которой равен 0.
Когда множитель b равен 2, QPSK принимается в качестве способа модуляции и количество m бит одного символа равно 2 битам, в соответствии с фиг. 30, то память 31 имеет четыре столбца для хранения 2×2 бит в направлении строки и сохраняет 16200/(2×2) битов в направлении столбцов.
Позиция начала записи первого столбца из четырех столбцов памяти 31 становится позицией, адрес которой равен 0, позиция начала записи второго столбца становится позицией, адрес которой равен 2, позиция начала записи третьего столбца становится позицией, адрес которой равен 3 и позиция начала записи четвертого столбца становится позицией, адрес которой равен 3.
Когда множитель b равен 1, 16QAM принимается в качестве способа модуляции и количество m бит одного символа равно 4 битам, в соответствии с фиг. 30, то память 31 имеет четыре столбца для хранения 4×1 бит в направлении строк и хранит 16200/(4×1) бит в направлении столбцов.
Позиция начала записи первого столбца из четырех столбцов памяти 31 становится позицией, адрес которой равен 0, позиция начала записи второго столбца становится позицией, адрес которой равен 2, позиция начала записи третьего столбца становится позицией, адрес которой равен 3, позиция начала записи четвертого столбца становится позицией, адрес которой равен 3.
Когда множитель b равен 2, 16QAM принимается в качестве способа модуляции и количество m бит одного символа равно 4 битам, в соответствии с фиг. 30, то память 31 имеет восемь столбцов для хранения 4×2 бита в направлении строки и сохраняет 16200/(4×2) битов в направлении столбцов.
Позиция начала записи первого столбца из восьми столбцов памяти 31 становится позицией, адрес которой равен 0, позиция начала записи второго столбца становится позицией, адрес которой равен 0, позиция начала записи третьего столбца становится позицией, адрес которой равен 0, позиция начала записи четвертого столбца становится позицией, адрес которой равен 1, позиция начала записи пятого столбца становится позицией, адрес которой равен 7, позиция начала записи шестого столбца становится позицией, адрес которой равен 20, позиция начала записи седьмого столбца становится позицией, адрес которой равен 20, позиция начала записи восьмого становится позицией, адрес которой равен 21.
Когда множитель b равен 1, 64QAM принимается в качестве способа модуляции и количество m бит одного символа равно 6 битам, в соответствии с фиг. 30, то память 31 имеет шесть столбцов для хранения 6×1 бит в направлении строк и хранит 16200/(6×1) битов в направлении столбцов.
Позиция начала записи первого столбца из шести столбцов памяти 31 становится позицией, адрес которой равен 0, позиция начала записи второго столбца становится позицией, адрес которой равен 0, позиция начала записи третьего столбца становится позицией, адрес которой равен 2, позиция начала записи четвертого столбца становится позицией, адрес которой равен 3, позиция начала записи пятого столбца становится позицией, адрес которой равен 7, позиция начала записи шестого столбца становится позицией, адрес которой равен 7.
Когда множитель b равен 2, 64QAM принимается в качестве способа модуляции и количество m бит одного символа равно 6 битам, в соответствии с фиг. 30, то память 31 имеет шесть столбцов для хранения 6×2 бит в направлении строк и хранит 16200/(6×2) битов в направлении столбцов.
Позиция начала записи первого столбца из двенадцати столбцов памяти 31 становится позицией, адрес которой равен 0, позиция начала записи второго столбца становится позицией, адрес которой равен 0, позиция начала записи третьего столбца становится позицией, адрес которой равен 0, позиция начала записи четвертого столбца становится позицией, адрес которой равен 2, позиция начала записи пятого столбца становится позицией, адрес которой равен 2, позиция начала записи шестого столбца становится позицией, адрес которой равен 2, позиция начала записи седьмого столбца становится позицией, адрес которой равен 3, позиция начала записи восьмого становится позицией, адрес которой равен 3, позиция начала записи девятого столбца становится позицией, адрес которой равен 3, позиция начала записи десятого столбца становится позицией, адрес которой равен 6, позиция начала записи одиннадцатого столбца становится позицией, адрес которой равен 7, позиция начала записи двенадцатого столбца становится позицией, адрес которой равен 7.
Когда множитель b равен 1, 256QAM принимается в качестве способа модуляции и количество m бит одного символа равно 8 битам, в соответствии с фиг. 30, то память 31 имеет восемь столбцов для хранения 8×1 бит в направлении строк и хранит 16200/(8×1) битов в направлении столбцов.
Позиция начала записи первого столбца из восьми столбцов памяти 31 становится позицией, адрес которой равен 0, позиция начала записи второго столбца становится позицией, адрес которой равен 0, позиция начала записи третьего столбца становится позицией, адрес которой равен 0, позиция начала записи четвертого столбца становится позицией, адрес которой равен 1, позиция начала записи пятого столбца становится позицией, адрес которой равен 7, позиция начала записи шестого столбца становится позицией, адрес которой равен 20, позиция начала записи седьмого столбца становится позицией, адрес которой равен 20, позиция начала записи восьмого становится позицией, адрес которой равен 21.
Когда множитель b равен 1, 1024QAM принимается в качестве способа модуляции и количество m бит одного символа равно 10 битам, в соответствии с фиг. 30, то память 31 имеет десять столбцов для хранения 10×1 бит в направлении строк и хранит 16200/(10×1) битов в направлении столбцов.
Позиция начала записи первого столбца из десяти столбцов памяти 31 становится позицией, адрес которой равен 0, позиция начала записи второго столбца становится позицией, адрес которой равен 1, позиция начала записи третьего столбца становится позицией, адрес которой равен 2, позиция начала записи четвертого столбца становится позицией, адрес которой равен 2, позиция начала записи пятого столбца становится позицией, адрес которой равен 3, позиция начала записи шестого столбца становится позицией, адрес которой равен 3, позиция начала записи седьмого столбца становится позицией, адрес которой равен 4, позиция начала записи восьмого становится позицией, адрес которой равен 4, позиция начала записи девятого столбца становится позицией, адрес которой равен 5, позиция начала записи десятого столбца становится позицией, адрес которой равен 7.
Когда множитель b равен 2, 1024QAM принимается в качестве способа модуляции и количество m бит одного символа равно 10 битам, в соответствии с фиг. 30, то память 31 имеет двадцать столбцов для хранения 10×2 бит в направлении строк и хранит 16200/(10×2) битов в направлении столбцов.
Позиция начала записи первого столбца из двадцати столбцов памяти 31 становится позицией, адрес которой равен 0, позиция начала записи второго столбца становится позицией, адрес которой равен 0, позиция начала записи третьего столбца становится позицией, адрес которой равен 0, позиция начала записи четвертого столбца становится позицией, адрес которой равен 2, позиция начала записи пятого столбца становится позицией, адрес которой равен 2, позиция начала записи шестого столбца становится позицией, адрес которой равен 2, позиция начала записи седьмого столбца становится позицией, адрес которой равен 2, позиция начала записи восьмого становится позицией, адрес которой равен 2, позиция начала записи девятого столбца становится позицией, адрес которой равен 5, позиция начала записи десятого столбца становится позицией, адрес которой равен 5, позиция начала записи одиннадцатого столбца становится позицией, адрес которой равен 5, позиция начала записи двенадцатого столбца становится позицией, адрес которой равен 5, позиция начала записи тринадцатого столбца становится позицией, адрес которой равен 5, позиция начала записи четырнадцатого столбца становится позицией, адрес которой равен 7, позиция начала записи пятнадцатого столбца становится позицией, адрес которой равен 7, позиция начала записи шестнадцатого столбца становится позицией, адрес которой равен 7, позиция начала записи семнадцатого столбца становится позицией, адрес которой равен 7, позиция начала записи восемнадцатого столбца становится позицией, адрес которой равен 8, позиция начала записи девятнадцатого столбца становится позицией, адрес которой равен 8, позиция начала записи двадцатого столбца становится позицией, адрес которой равен 10.
Когда множитель b равен 1, 4096QAM принимается в качестве способа модуляции и количество m бит одного символа равно 12 битам, в соответствии с фиг. 30, то память 31 имеет двенадцать столбцов для хранения 12×1 бит в направлении строк и хранит 16200/(12×1) битов в направлении столбцов.
Позиция начала записи первого столбца из двенадцати столбцов памяти 31 становится позицией, адрес которой равен 0, позиция начала записи второго столбца становится позицией, адрес которой равен 0, позиция начала записи третьего столбца становится позицией, адрес которой равен 0, позиция начала записи четвертого столбца становится позицией, адрес которой равен 2, позиция начала записи пятого столбца становится позицией, адрес которой равен 2, позиция начала записи шестого столбца становится позицией, адрес которой равен 2, позиция начала записи седьмого столбца становится позицией, адрес которой равен 3, позиция начала записи восьмого становится позицией, адрес которой равен 3, позиция начала записи девятого столбца становится позицией, адрес которой равен 3, позиция начала записи десятого столбца становится позицией, адрес которой равен 6, позиция начала записи одиннадцатого столбца становится позицией, адрес которой равен 7, позиция начала записи двенадцатого столбца становится позицией, адрес которой равен 7.
Когда множитель b равен 2, 4096QAM принимается в качестве способа модуляции и количество m бит одного символа равно 12 битам, в соответствии с фиг. 30, то память 31 имеет двадцать четыре столбца для хранения 12×2 бит в направлении строк и хранит 16200/(12×2) битов в направлении столбцов.
Позиция начала записи первого столбца из двадцати четырех столбцов памяти 31 становится позицией, адрес которой равен 0, позиция начала записи второго столбца становится позицией, адрес которой равен 0, позиция начала записи третьего столбца становится позицией, адрес которой равен 0, позиция начала записи четвертого столбца становится позицией, адрес которой равен 0, позиция начала записи пятого столбца становится позицией, адрес которой равен 0, позиция начала записи шестого столбца становится позицией, адрес которой равен 0, позиция начала записи седьмого столбца становится позицией, адрес которой равен 0, позиция начала записи восьмого становится позицией, адрес которой равен 1, позиция начала записи девятого столбца становится позицией, адрес которой равен 1, позиция начала записи десятого столбца становится позицией, адрес которой равен 1, позиция начала записи одиннадцатого столбца становится позицией, адрес которой равен 2, позиция начала записи двенадцатого столбца становится позицией, адрес которой равен 2, позиция начала записи тринадцатого столбца становится позицией, адрес которой равен 2, позиция начала записи четырнадцатого столбца становится позицией, адрес которой равен 3, позиция начала записи пятнадцатого столбца становится позицией, адрес которой равен 7, позиция начала записи шестнадцатого столбца становится позицией, адрес которой равен 9, позиция начала записи семнадцатого столбца становится позицией, адрес которой равен 9, позиция начала записи восемнадцатого столбца становится позицией, адрес которой равен 9, позиция начала записи девятнадцатого столбца становится позицией, адрес которой равен 10, позиция начала записи двадцатого столбца становится позицией, адрес которой равен 10, позиция начала записи двадцать первого столбца становится позицией, адрес которой равен 10, позиция начала записи двадцать второго столбца становится позицией, адрес которой равен 10, позиция начала записи двадцать третьего столбца становится позицией, адрес которой равен 10, позиция начала записи двадцать четвертого столбца становится позицией, адрес которой равен 11.
Фиг. 31 является блок-схемой алгоритма, иллюстрирующей процесс обработки, выполняемый LDPC-кодером 115, перемежителем 116 битов и QAM кодером 117, показанные на фиг. 8.
LDPC-кодер 115 ожидает поставки LDPC целевых данных из ВСН кодера 114. На этапе S101, LDPC-кодер 115 кодирует LDPC целевые данные LDPC-кодом и поставляет LDPC-код в битовый перемежитель 116. Процесс обработки переходит к этапу S102.
На этапе S102 битовый перемежитель 116 осуществляет битовое перемежение по отношению к LDPC-коду, поставленного из LDPC-кодера 115, и поставляет полученный символ посредством предоставления в символичном виде LDPC-кода после перемежения битов, в QAM кодер 117. Процесс обработки переходит к этапу S103.
То есть, на этапе S102, в битовом перемежителе 116 (фиг. 9), перемежитель 23 четности выполняет перемежение четности по отношению к LDPC-коду, поставленного из LDPC-кодера 115, и подает LDPC-код после перемежения четности в перемежитель 24 скручивания столбцов.
Перемежитель 24 скручивания столбцов осуществляет перемежение скручивание столбцов по отношению к LDPC-коду, поставленного из перемежителя 23 четности, и поставляет LDPC-код в демультиплексор 25.
Демультиплексор 25 выполняет обработку сигналов для перестановки кодовых битов LDPC-кода после перемежения скручивания столбцов посредством перемежителя 24 скручивания столбцов, и формирует кодовые биты после перестановки, образовывая биты символа (биты, представляющие символ).
Здесь, процесс обработки перестановки, выполняемый демультиплексором 25, может быть выполнен в соответствии с первым или четвертым способами перестановки, показанные на фиг. 22 и фиг. 23, и, более того, может быть выполнен в соответствии с заранее определенным правилом распределения, определенным заранее для выделения бита символа, показывающий символ, на кодовый бит LDPC-кода.
Символ, который получаются путем выполнения процесса перестановки демультиплексором 25, подается из демультиплексора 25 в QAM кодер 117.
На этапе S103 QAM кодер 117 отображает символ, поставленный из демультиплексора 25, на сигнальную точку, определенную способом модуляции ортогональной модуляции, выполненной QAM кодером 117, выполняет ортогональную модуляцию и поставляет данные, полученные как результат, во временной перемежитель 118.
Как описано выше, перемежевание четности или перемежевание скручивания столбцов выполняется, так что толерантность против возникновения ошибки стирания или ошибки в канале передачи пакетных данных, когда множество кодовых битов LDPC-кода передаются в одном символе, может быть улучшена.
На фиг. 9, перемежитель 23 четности, как блок для выполнения перемежения четности, и перемежитель 24 скручивания столбцов, как блок для выполнения перемежения скручивания столбцов, выполнены индивидуально для удобства объяснения. Тем не менее, перемежитель 23 четности и перемежитель 24 скручивания столбцов могут выполнены быть интегрально.
То есть, перемежевание четности или перемежевание скручивания столбцов, выполняемое с помощью записи и считывания кодовых битов по отношению к памяти и может быть представлено в виде матрицы для преобразования адреса (адреса записи) для выполнения записи кодовых битов в адрес (адреса считывания), чтобы выполнить считывание кодовых битов.
Таким образом, если матрица, полученная путем умножения матрицы, представляющая перемежение четности, и матрицы, представляющая перемежение скручивания столбцов рассчитывается, то кодовые биты преобразуются с помощью матрицы, то выполняется перемежевание четности, перемежевание скручивания столбцов как результат LDPC-кода после перемежевания четности.
Кроме того, перемежитель 23 четности и перемежитель 24 скручивания столбцов, демультиплексор 25 могут быть выполнены интегрально.
То есть, процесс обработки перестановки, выполняемый демультиплексором 25, может быть представлен в виде матрицы для преобразования адреса записи памяти 31 хранения LDPC-кода в адрес считывания.
Таким образом, если матрица, полученная путем умножения матрицы, представляющая перемежевание четности, на матрицу, представляющую перемежевание скручивания столбцов, вычисляется матрица, представляющая процесс перестановки, операция перемежевания четности, перемежевания скручивания столбцов и процесс обработки перестановки могут быть выполнены посредством матрицы.
Только одна операция из перемежевания четности и перемежевания скручивания столбцов может быть выполнена либо обе операции перемежевания четности и перемежевания скручивания столбцов не могут быть выполнены. Например, как DVB-S.2, в случае, когда канал 13 связи (фиг. 7) представляет собой спутниковую схему вещания либо аналогичное устройство, которое отличается от AWGN, и для которого ошибка в канале передачи пакетных данных и флаттер и так далее, не должны рассматриваться так внимательно, то можно опустить выполнение операции перемежевания четности и перемежевания скручивания столбцов.
Далее будет приведено описание процесса моделирования для измерения частоты появления ошибок (частота появления ошибочных битов), который выполняется по отношению к передающему устройству 11, показанному на фиг. 8, со ссылкой на фигуры с 32 до 34.
Моделирование выполняется путем использования коммуникационного канала, в котором наблюдается флаттер, имеющий D/U 0 дБ.
Фиг. 32 иллюстрирует модель коммуникационного канала, которая формируется посредством моделирования.
То есть, часть А на фиг. 32 иллюстрирует модель флаттера, которая формируется посредством моделирования.
Кроме того, часть В на фиг. 32 иллюстрирует модель коммуникационного канала, в котором присутствует флаттер, представленный моделью в части А на фиг. 32.
2
В части В на фиг. 32, H представляет модель флаттера в части А на фиг. 32. В части В на фиг. 32, N представляет ICI (межнесущая интерференция). При моделировании, среднее значение Ε [Ν] мощности аппроксимируется AWGN.
D
Фиг. 33 и фиг. 34 иллюстрируют отношение частоты появления ошибок, полученное при моделировании и доплеровской частоты f флаттера.
D
D
Фиг. 33 иллюстрирует отношение частоты появления ошибок и доплеровской частоты f, когда способ модуляции представляет собой 16QAM, скорость (r) кодирования равна (3/4) и способ перестановки является первым способом перестановки. Фиг. 34 иллюстрирует отношение частоты появления ошибок и доплеровской частоты f, когда способ модуляции представляет собой 64QAM, скорость (r) кодирования равна (5/6) и способ перестановки является первым способом перестановки.
D
D
На фиг. 33 и фиг. 34, жирная линия показывает отношение частоты появления ошибок и доплеровской частоты f, когда выполняются все операции перемежения четности, перемежения скрещивания столбцов и перестановки и тонкая линия показывает отношение частоты появления ошибок и доплеровской частоты f, когда выполняется только операция перестановки среди операций перемежения четности, перемежения скрещивания столбцов и перестановки.
Как показано на фигурах 33 и 34, частота появления ошибок дополнительно улучшается (уменьшается), когда выполняются все операции перемежения четности, перемежения скрещивания столбцов и перестановки, по сравнению с тем, когда выполняется операция только перестановки.
Пример Конфигурация LDPC-кодера 115
Фиг. 35 является блок-схемой, иллюстрирующей пример конфигурации LDPC-кодер 115, показанного на фиг. 8.
LDPC-кодер 122, показанный на фиг. 8 также сконфигурирован аналогичным образом.
Как показано на фигурах 12 и 13, в стандарте DVB-S.2 или тому подобное определены LDPC-коды, которые имеют две кодовые длины N битов 64800 и 16200 бит.
Что касается LDPC-кода, имеющего кодовую длину N 64800 бит, определены 11 скоростей кодирования 1/4, 1/3, 2/5, 1/2, 3/5, 2/3, 3/4, 4/5, 5/6, 8/9 и 9/10. Что касается LDPC-кода, имеющего кодовую длину N 16200 бит, определены 10 скоростей кодирования 1/4, 1/3, 2/5, 1/2, 3/5, 2/3, 3/4, 4/5, 5/6 и 8/9 (фиг. 12 и 13).
Например, LDPC-кодер 115 может осуществлять кодирование (кодирования с исправлением ошибок), используя LDPC-код каждой скорости кодирования, имеющей кодовую длину N 64800 битов или 16200 бит, в соответствии с матрицей H контроля четности, приготовленной для каждой кодовой длины N и каждой скорости кодирования.
LDPC-кодер 115 включает в себя блок 601 обработки кодирования и блок 602 хранения.
Блок 601 обработки кодирования включает в себя блок 611 установки скорости кодирования, блок 612 считывания таблицы начальных значений, блок 613 генерирования матрицы контроля четности, блок 614 считывания информационного бита, операционный блок 615 кодирования четности, блок 616 управления. Блок 601 обработки кодирования выполняет LDPC-кодирования LDPC целевых данных, поставленных в LDPC-кодер 115 и поставляет LDPC-код, полученный как результат, в перемежитель 116 битов (фиг. 8).
То есть, блок 611 установки скорости кодирования устанавливает кодовую длину N и скорость кодирования LDPC-кода, в соответствии с операцией оператора.
Блок 612 считывания таблицы начальных значений считывает таблицу начальных значений матрицы контроля четности, будет описан позже, который соответствует кодовой длины N и скорости кодирования, установленной блоком 611 установки скорости кодирования, из блока 602 хранения.
A
Блок 613 генерирования матрицы контроля четности генерирует матрицу H контроля четности посредством расстановки элементов 1 информационной матрицы Н, соответствующие информационной длине К (= информационная длина N - длина M четности) в зависимости от кодовой длины N и установленной блоком 611 установки скорости кодирования в направлении столбцов с периодом 360 столбцов (число Ρ столбца блока циклической структуры), на основании таблицы начальных значений матрицы контроля четности, считанной блоком 612 считывания таблицы начальных значений, и сохраняет матрицу Η контроля четности в блоке 602 хранения.
Блок 614 считывания информационного бита считывает (выделяет) информационные биты, соответствующие информационной длине К, из LDPC целевых данных, поставленные в LDPC-кодер 115.
Операционный блок 615 кодирования четности считывает матрицу Η контроля четности, сгенерированную блоком 613 генерирования матрицы контроля четности, с блока 602 хранения и генерирует кодовое слово (LDPC-код) путем вычисления битов четности для информационных битов, считываемых блоком 614 считывания информационного бита, на основании заранее определенного выражения с использованием матрицы Η контроля четности.
Блок 616 управления управляет каждым блоком, составляющий блок 601 обработки кодирования.
В блоке 602 хранения хранится множество таблиц начальных значений матрицы контроля четности, которое соответствует множеству скоростей кодирования, показанные на фиг. 12 и 13, по отношению к кодовой длине Ν, например, 64800 бит и 16200 бит. Кроме того, блок 602 хранения временно хранит данные, которые необходимы для обработки блоком 601 обработки кодирования.
Фиг. 36 является блок-схемой алгоритма, иллюстрирующей процесс обработки LDPC-кодера 115, показанного на фиг. 35.
На этапе S201, блок 611 установки скорости кодирования определяет (устанавливает) кодовую длину N и скорость r кодирования для выполнения LDPC-кодирования.
На этапе S202, блок 612 считывания таблицы начальных значений считывает ранее определенную таблицу начальных значений матрицы контроля четности, соответствующую кодовой длине Ν, и скорость r кодирования, определенную блоком 611 установки скорости кодирования, из блока 602 хранения.
На этапе S203, блок 613 генерирования матрицы контроля четности вычисляет (генерирует) матрицу H контроля четности LDPC-кода кодовой длины N и скорости r кодирования, определенной блоком 611 установки скорости кодирования, используя таблицу начальных значений матрицы контроля четности, считанную из блока 602 хранения блоком 612 считывания таблицы начальных значений, поставляет матрицу контроля четности в блок 602 хранения, и сохраняет матрицу контроля четности в блоке хранения.
На этапе S204, блок 614 считывания информационного бита считывает информационные биты информационной длины K(=Ν×r), соответствующие кодовой длине N и скорости r кодирования, определяемой блоком 611 установки скорости кодирования, из LDPC целевых данных, поставленный в LDPC-кодер 115, считывает матрицу H контроля четности, вычисленную блоком 613 генерирования матрицы контроля четности, из блока 602 хранения, и поставляет эти информационные биты и матрицу контроля четности в операционный блок 615 кодирования четности.
На этапе S205, операционный блок 615 кодирования четности последовательно обрабатывает биты четности кодового слова с, так чтобы обеспечить выполнение выражения (8), используя информационные биты и матрицу H контроля четности, которые были считаны из блока 614 считывания информационного бита.
T
В выражении (8) с представляет вектор строки как кодовое слово (LDPC-код) и c представляет транспонирование вектора с строки.
Как описано выше, когда часть информационных битов вектора с строки как LDPC-код (одно кодовое слово) представлена вектором А строки, и часть битов четности представлена вектором Τ строки, вектор с строки может быть представлен выражением c=[А/T], используя вектор А строки как информационные биты, и вектор Τ строку, как биты четности.
C
C
C
C
T
A
T
T
T
T
T
В матрице Η контроля четности и вектор c=[А|Т] строки, соответствующий LDPC-коду, необходимо, чтобы выполнялось выражение H=0. Вектор Τ строки, который соответствует битам четности, составляющий вектор c=[А|Т] строки, удовлетворяющий выражению H=0, может быть последовательно вычислен путем установки элементов каждой строки на 0, последовательно из элементов первой строки вектора H столбца выражении H=0, когда матрица H четности матрицы Н=[H|H] контроля четности становится ступенчатой структурой, как показано на фиг. 11.
Если операционный блок 615 кодирования четности вычисляет биты Τ четности по отношению к информационным битам А из блока 614 считывания информационного бита, операционный блок 615 кодирования четности вырабатывает кодовое слово c=[А/Т], представленное информационными битами А и битами Τ четности, как результат LDPC-кодирования информационных битов А.
Затем, на этапе S206, блок 616 управления определяет, заканчивается ли процесс LDPC-кодирования. Когда определено на этапе S206, что процесс LDPC-кодирования не закончен, то есть, когда есть LDPC целевые данные для выполнения LDPC-кодирования, процесс обработки возвращается к этапу S201 (или этап S204). Далее, процесс обработки на этапах с S201 (или этап S204) по S206 повторяется.
Когда определено на этапе S206, что процесс LDPC-кодирования завершен, то есть, нет LDPC целевых данных для выполнения LDPC-кодирования, LDPC-кодер 115 заканчивает процесс обработки.
Как описано выше, таблица начальных значений матрицы контроля четности, соответствующей каждой кодовой длины N и каждой скорости r кодирования, подготовлена и LDPC-кодер 115 выполняет LDPC-кодирование заданной кодовой длины N и с заданной скоростью r кодирования, используя матрицу Η контроля четности, сгенерированную из таблицы начальных значений матрицы контроля четности, соответствующей заданной кодовой длины N и заданной скоростью r кодирования.
Пример таблицы начальных значений матрицы контроля четности
A
Таблица начальных значений матрицы контроля четности представляет собой таблицу, которая представляет позиции элементов 1 информационной матрицы H (фиг. 10) матрицы Η контроля четности, соответствующей информационной длине К в зависимости от кодовой длины N и скорости r кодирования LDPC-кода (LDPC-код, определенный матрицей Η контроля четности) на каждые 360 столбцов (число Ρ столбцов блока циклической структуры) и предварительно для каждой матрицы Η контроля четности каждой кодовой длины N и каждой скорости r кодирования.
Фиг. 37 является иллюстрацией примера таблицы начальных значений матрицы контроля четности.
То есть, фиг. 37 иллюстрирует таблицу начальных значений матрицы контроля четности по отношению к матрице Η контроля четности, которая определена в стандарте DVB-T.2 и имеет кодовую длину N 16200 битов и скорость r кодирования (скорость кодирования, определенную в DVB-T.2) равную 1/4.
Блок 613 генерирования матрицы контроля четности (фиг. 35) вычисляет матрицу Η контроля четности, используя таблицу начальных значений матрицы контроля четности, следующим образом.
То есть, на фиг. 38 иллюстрирует способ вычисления матрицы Η контроля четности из таблицы начальных значений матрицы контроля четности.
Таблица начальных значений матрицы контроля четности на фиг. 38 иллюстрирует таблицу начальных значений матрицы контроля четности по отношению к матрице Н контроля четности, которая определена в стандарте DVB-T.2 и имеет кодовую длину N 16200 битов и скорость r кодирования равную 2/3.
A
Как описано ранее, таблица начальных значений матрицы контроля четности представляет собой таблицу, которая представляет позиции элементов 1 информационной матрицы H (фиг. 10), соответствующей информационной длине К в зависимости от кодовой длины N и скорости r кодирования LDPC-кода на каждые 360 столбцов (число Р столбцов блока циклической структуры). В ее i-й строке, номера строк (номера строк, когда число строк в первой строке матрицы Н контроля четности установлено в 0) элементов 1 (1+360×(i-1)-го столбца матрицы Н контроля четности расположены номером весов столбца (1+360×(i-1)-го столбца.
T
A
В этом случае, так как матрица H четности (фиг. 10) матрицы Н контроля четности, соответствующая длине М четности, определяется как показано на фиг. 25, в соответствии с таблице начальных значений матрицы контроля четности, вычисляется информационная матрица H (фиг. 10) матрицы Н контроля четности, соответствующая информационной длине К.
Число строки k+1 таблицы начальных значений матрицы контроля четности отличается в зависимости от информационной длины К.
Отношение выражения (9) осуществляется между информационной длиной К и числом строки k+1 таблицы начальных значений матрицы контроля четности.
В этом случае, 360 выражения (9) является числом Р столбца блока циклической структуры, описанной на фиг. 26.
В таблице начальных значений матрицы контроля четности на фиг. 38, 13 числовых значений расположены с первой строки по третью строку и 3 численных значения расположены от четвертой строки по (k+1)-ю строку (на фиг. 38, 30-я строка).
Таким образом, весовые значения столбцов матрицы Н контроля четности, которые вычисляются из таблицы начальных значений матрицы контроля четности на фиг. 38, равны 13 из первого столбца по (1+360×(3-1)-1)-го столбца и 3 с (1+360×(3-1))-го столбца по К-й столбец.
Первая строка таблицы начальных значений матрицы контроля четности на фиг. 38 становится 0, 2084, 1613, 1548, 1286, 1460, 3196, 4297, 2481, 3369, 3451, 4620 и 2622, которая показывает, что элементы строк, имеющие номера строк 0,2084, 1613, 1548, 1286, 1460, 3196, 4297, 2481, 3369, 3451, 4620 и 2622 равны 1 (и остальные элементы равны 0), в первом столбце матрицы Н контроля четности.
Вторая строка таблицы начальных значений матрицы контроля четности на фиг. 38 становится 1, 122, 1516, 3448, 2880, 1407, 1847, 3799, 3529, 373, 971, 4358 и 3108, которая показывает, что элементы строк, имеющие номера строк 1, 122, 1516, 3448, 2880, 1407 1847, 3799, 3529, 373, 971, 4358 и 3108 равны 1, в 361 (=1+360×(2-1))-ом столбце матрицы Н контроля четности.
A
Как описано выше, таблица начальных значений матрицы контроля четности представляет позиции элементов 1 информационной матрицы H матрицы Н контроля четности на каждые 360 столбцов.
Столбцы, отличные от (1+360×(i-1))-го столбца матрицы Н контроля четности, то есть, отдельные столбцы с (2+360×(i-1))-го столбца по (360×i)-й столбец расположены посредством циклического сдвига элементов 1 (1+360×(i-1))-го столбца, определяемого таблицей начальных значений матрицы контроля четности периодически в направлении вниз (направление вниз столбца) в соответствии с длиной М четности.
То есть, (2+360×(i-1))-й столбец, полученный путем циклического сдвига (1+360×(i-1))-го столбца в направлении вниз посредством М/360 (=q), и следующий (3+360×(i-1))-й столбец, полученный путем циклического сдвига (1+360×(i-1))-го столбца в направлении вниз посредством 2×М/360 (=2×q) (полученный путем циклического сдвига (2+360×(i-1))-го столбца в направлении вниз посредством М/360 (=q)).
i,j
w-j
w-j
Если численное значение j-го столбца (j-й столбец с левой стороны) i-й строки (i-я строка из верхней части) таблицы начальных значений матрицы контроля четности представлены как h, и номер строки j-го элемента 1 w-го столбца матрицы Н контроля четности представляется как H, номер H строки элемента 1 в w-го столбца является столбцом, отличным от (1+360×(i-1))-го столбца матрицы Н контроля четности, может быть рассчитан с помощью выражения (10).
В этом случае mod (x, y) означает остаток, который получают путем деления x на y.
Кроме того, Р представляет собой номер столбца блока циклической структуры, описанный выше. Например, в стандарте DVB-S.2, в DVB-T.2 и DVB-C.2, Р равно 360, как описано выше. Кроме того, q является значением М/360, которое получают путем деления длины М четности на номер Р столбца (=360) блока циклической структуры.
Блок 613 генерирования матрицы контроля четности (фиг. 35) указывает номера строк элементов 1 (1+360×(i-1))-го столбца матрицы Н контроля четности посредством таблицы начальных значений матрицы контроля четности.
w-j
Блок 613 генерирования матрицы контроля четности (фиг. 35) вычисляет номер H строки элемента 1 w-го столбца, который является столбцом, отличным от (1+360×(i-1))-го столбца матрицы Η контроля четности, в соответствии с выражением (10), и генерирует матрицу Η контроля четности, в которой элемент полученного номера строки устанавливается на 1.
Новый LDPC-код
Предполагается, что необходим стандарт, который улучшает DVB-S.2 (который далее называется DVB-Sx).
В CfT (Запрос технологии), представленный на конференции по стандартизации DVB-Sx, требуется заранее заданное число ModCod (комбинации способа модуляции (модуляции) и LDPC-кода (код)) для каждого диапазона (диапазон) C/N (отношение несущей к шуму) (SNR (отношение сигнал-шум)) в соответствии со способом использования.
То есть, в CfT, как первый запрос запрашивается, чтобы были подготовлены 20 элементов ModCod в диапазоне 7 дБ, в котором отношение C/N составляет от 5 дБ до 12 дБ, для использования DTH (Служба непосредственного телевизионного вещания).
Кроме того, в CfT, как второй запрос, запрашивается, чтобы были подготовлены 22 элементов ModCod в диапазоне 12 дБ, в котором отношение C/N составляет от 12 дБ до 24 дБ, в качестве третьего запроса, запрашивается, чтобы были подготовлены 12 элементов ModCod в диапазоне 8 дБ, в котором отношение C/N составляет от -3 дБ до 5 дБ и, в качестве четвертого запроса, запрашивается, чтобы были подготовлены 5 элементов ModCod в диапазоне 7 дБ, в котором C/N составляет от -10 дБ до -3 дБ.
-5
Более того, в CfT запрашивается, чтобы FER (Частота появления ошибочных кадров) ModCod в первом или четвертом запросе становится значением около 10 (или меньше).
Здесь, в CfT, приоритет первого запроса равен "1", который является самым высоким, и приоритет любого со второго по четвертый запрос равен "2", который ниже, чем в первом запросе.
Таким образом, в настоящем изобретении, по меньшей мере, в CfT (матрица контроля четности) LDPC-код, который может удовлетворять первому запросу с наивысшим приоритетом, предоставляется в качестве нового LDPC-кода.
Фиг. 39 иллюстрирует BER/FER кривую в случае, когда QPSK применяется в качестве способа модуляции, для LDPC-кодов 11 скоростей кодирования с кодовой длиной N 64k.
s
0
На фиг. 39, горизонтальная ось показывает E/N (отношение сигнал-шум по мощности на символ), соответствующий C/N, а вертикальная ось показывает FER/BER. Здесь, на фиг. 39, сплошная линия показывает FER и пунктирная линия показывает BER (интенсивность битовых ошибок).
s
0
На фиг. 39 показана FER (BER) кривая в случае, когда QPSK принимается в качестве способа кода, для LSPC кодов с 11 скоростями кодирования с кодовой длиной N 64k, определенной в DVB-S.2 в диапазоне, в котором E/N равно 10 дБ.
s
0
То есть, на фиг. 39 показаны 11 FER кривые ModCod, где способ модуляции установлен как QPSK в диапазоне около 10 дБ E/N от примерно -3 дБ до примерно 7 дБ.
Поэтому, что касается LSPC кодов с 11 скоростями кодирования с кодовой длиной N 64k, определенного в DVB-S.2, средний интервал FER кривых ModCod (который можно далее называть средним интервалом) составляет около 1 дБ (≈ 10 дБ / (10-1)).
s
0
Между тем, поскольку необходимо подготовить 20 элементов ModCod в диапазоне, в котором E/N (C/N) равно 7 дБ в первом запросе CfT, средний интервал FER кривых ModCod составляет около 0,3 дБ (≈ 7 дБ / (20-1)).
В случае, когда выбран способ модуляции, например, QPSK, как граничный по сравнению со случаем DVB-S.2, в котором ModCod со средним интервалом около 1 дБ может быть получен с помощью LDPC-кодов с 11 скоростями кодирования, количество LDPC-кодов примерно в три раза больше 11 скоростей кодирования (≈ 1 дБ / 0,3 дБ), то есть, LDPC-коды около 30 скоростей кодирования только должны быть предоставлены для получения ModCod со средним интервалом 0,3 дБ, чтобы удовлетворить первый запрос CfT.
Таким образом, настоящее изобретение подготавливает LDPC-код со скоростью кодирования i/30 (где i обозначает положительное целое число менее 30) и кодовой длиной 64k как LDPC-код со скоростью кодирования, для которого около 30 скоростей кодирования легко могут быть установлены, и обеспечивает его как новый LDPC-код, который удовлетворяет, по меньшей мере, первый запрос с наивысшим приоритетом в CfT.
T
Здесь, как и для нового LDPC-кода, с учетом того, что аффинность (совместимость) с DVB-S.2 поддерживается на сколько это возможно, аналогично LDPC-коду, определенному в DVB-S.2, предполагается, что матрица H четности матрицы Н контроля четности имеет ступенчатую структуру (фиг. 11).
A
Кроме того, как для нового LDPC-кода, аналогично LDPC-коду, определенному в DVB-S.2, предполагается, что информационная матрица H матрицы Н контроля четности имеет циклическую структуру и число Р столбца, который является блоком циклической структуры, как предполагается будет равно 360.
Фигуры с 40 по 106 представляют собой схемы, иллюстрирующие примеры таблицы начальных значений матрицы контроля четности нового LDPC-кода с кодовой длиной N 64k бит и скоростью i/30 кодирования, как описано выше.
При этом, поскольку новый LDPC-код является LDPC-кодом, в котором скорость кодирования выражается как i/30, есть LDPC-коды с 29 скоростями 1/30, 2/30, 3/30 … 28/30 и 29/30 кодирования как максимум.
Однако, для LDPC-кода с скоростью 1/30 кодирования существует возможность того, что применение ограничено в отношении эффективности. Кроме того, для LDPC-кода со скоростью 29/30 кодирования использование может быть ограничено в отношении частоты возникновения ошибок (BER/FER).
Таким образом, один или оба LDPC-кода со скоростью 1/30 кодирования и LDPC-код со скоростью 29/30 кодирования среди LDPC-кодов с 29 скоростями кодирования от скорости 1/30 кодирования до 29/30, как можно предположить, не должны рассматриваться в качестве нового LDPC-кода.
Здесь, к примеру, LDPC-коды с 28 скоростями кодирования скоростей от 2/30 до 29/30 кодирования среди скоростей от 1/30 до 29/30 кодирования, как предполагается, рассматриваются в качестве новых LDPC-кодов, и таблица начальных значений матрицы контроля четности по отношению к матрице H контроля четности новых LDPC-кодов, показано ниже.
Фиг. 40 иллюстрирует таблицу начальных значений матрицы контроля четности по отношению к матрице H контроля четности LDPC-кода с кодовой длиной N 64k битов и скоростью 2/30 кодирования.
Фиг. 41 иллюстрирует таблицу начальных значений матрицы контроля четности по отношению к матрице H контроля четности LDPC-кода с кодовой длиной N 64k битов и скоростью 3/30 кодирования.
Фиг. 42 иллюстрирует таблицу начальных значений матрицы контроля четности по отношению к матрице H контроля четности LDPC-кода с кодовой длиной N 64k битов и скоростью 4/30 кодирования.
Фиг. 43 иллюстрирует таблицу начальных значений матрицы контроля четности по отношению к матрице H контроля четности LDPC-кода с кодовой длиной N 64k битов и скоростью 5/30 кодирования.
Фиг. 44 иллюстрирует таблицу начальных значений матрицы контроля четности по отношению к матрице H контроля четности LDPC-кода с кодовой длиной N 64k битов и скоростью 6/30 кодирования.
Фиг.45 иллюстрирует таблицу начальных значений матрицы контроля четности по отношению к матрице H контроля четности LDPC-кода с кодовой длиной N 64k битов и скоростью 7/30 кодирования.
Фиг. 46 и 47 иллюстрируют таблицу начальных значений матрицы контроля четности по отношению к матрице H контроля четности LDPC-кода с кодовой длиной N 64k битов и скоростью 8/30 кодирования.
Фиг. 48 и 49 иллюстрируют таблицу начальных значений матрицы контроля четности по отношению к матрице H контроля четности LDPC-кода с кодовой длиной N 64k битов и скоростью 9/30 кодирования.
Фиг. 50 и 51 иллюстрируют таблицу начальных значений матрицы контроля четности по отношению к матрице H контроля четности LDPC-кода с кодовой длиной N 64k битов и скоростью 10/30 кодирования.
Фиг. 52 и 53 иллюстрируют таблицу начальных значений матрицы контроля четности по отношению к матрице H контроля четности LDPC-кода с кодовой длиной N 64k битов и скоростью 11/30 кодирования.
Фиг. 54 и 55 иллюстрируют таблицу начальных значений матрицы контроля четности по отношению к матрице H контроля четности LDPC-кода с кодовой длиной N 64k битов и скоростью 12/30 кодирования.
Фиг. 56 и 57 иллюстрируют таблицу начальных значений матрицы контроля четности по отношению к матрице H контроля четности LDPC-кода с кодовой длиной N 64k битов и скоростью 13/30 кодирования.
Фиг. 58 и 59 иллюстрируют таблицу начальных значений матрицы контроля четности по отношению к матрице H контроля четности LDPC-кода с кодовой длиной N 64k битов и скоростью 14/30 кодирования.
Фиг. 60 и 61 иллюстрируют таблицу начальных значений матрицы контроля четности по отношению к матрице H контроля четности LDPC-кода с кодовой длиной N 64k битов и скоростью 15/30 кодирования.
Фиг. 62, 63 и 64 иллюстрируют таблицу начальных значений матрицы контроля четности по отношению к матрице H контроля четности LDPC-кода с кодовой длиной N 64k битов и скоростью 16/30 кодирования.
Фиг. 65, 66 и 67 иллюстрируют таблицу начальных значений матрицы контроля четности по отношению к матрице H контроля четности LDPC-кода с кодовой длиной N 64k битов и скоростью 17/30 кодирования.
Фиг. 68, 69 и 70 иллюстрируют таблицу начальных значений матрицы контроля четности по отношению к матрице H контроля четности LDPC-кода с кодовой длиной N 64k битов и скоростью 18/30 кодирования.
Фиг. 71, 72 и 73 иллюстрируют таблицу начальных значений матрицы контроля четности по отношению к матрице H контроля четности LDPC-кода с кодовой длиной N 64k битов и скоростью 19/30 кодирования.
Фиг. 74, 75 и 76 иллюстрируют таблицу начальных значений матрицы контроля четности по отношению к матрице H контроля четности LDPC-кода с кодовой длиной N 64k битов и скоростью 20/30 кодирования.
Фиг. 77, 78, и 79 иллюстрируют таблицу начальных значений матрицы контроля четности по отношению к матрице H контроля четности LDPC-кода с кодовой длиной N 64k битов и скоростью 21/30 кодирования.
Фиг. 80, 81 и 82 иллюстрируют таблицу начальных значений матрицы контроля четности по отношению к матрице H контроля четности LDPC-кода с кодовой длиной N 64k битов и скоростью 22/30 кодирования.
Фиг. 83, 84, и 85 иллюстрируют таблицу начальных значений матрицы контроля четности по отношению к матрице H контроля четности LDPC-кода с кодовой длиной N 64k битов и скоростью 23/30 кодирования.
Фиг. 86, 87 и 88 иллюстрируют таблицу начальных значений матрицы контроля четности по отношению к матрице H контроля четности LDPC-кода с кодовой длиной N 64k битов и скоростью 24/30 кодирования.
Фиг. 89, 90 и 91 иллюстрируют таблицу начальных значений матрицы контроля четности по отношению к матрице H контроля четности LDPC-кода с кодовой длиной N 64k битов и скоростью 25/30 кодирования.
Фиг. 92, 93 и 94 иллюстрируют таблицу начальных значений матрицы контроля четности по отношению к матрице H контроля четности LDPC-кода с кодовой длиной N 64k битов и скоростью 26/30 кодирования.
Фиг. 95, 96, и 97 иллюстрируют таблицу начальных значений матрицы контроля четности по отношению к матрице H контроля четности LDPC-кода с кодовой длиной N 64k битов и скоростью 27/30 кодирования.
Фиг. 99, 100, 101, и 102 иллюстрируют таблицу начальных значений матрицы контроля четности по отношению к матрице H контроля четности LDPC-кода с кодовой длиной N 64k битов и скоростью 28/30 кодирования.
Фиг. 103, 104, 105, и 106 иллюстрируют таблицу начальных значений матрицы контроля четности по отношению к матрице H контроля четности LDPC-кода с кодовой длиной N 64k битов и скоростью 29/30 кодирования.
LDPC-кодер 115 (фиг. 8 и фиг. 35) может выполнять кодирование любого (нового) LDPC-кода с кодовой длиной N 64k среди 28 типов скоростей r от 2/30 до 29/30 кодирования, с использованием матрицы H контроля четности, определенной из таблицы начальных значений матрицы контроля четности, показанных на фигурах с 40 по 106.
В этом случае, таблицы начальных значений матрицы контроля четности, показанные на фигурах с 40 по 106, хранятся в блоке 602 хранения LDPC-кодера 115 (фиг. 8).
Здесь все LDPC-коды с 28 видами скоростей r от 2/30 по 29/30 кодирования (определенные из таблиц начальных значений матрицы контроля четности) на фигурах с 40 по 106, не должны быть обязательно приняты в качестве нового LDPC. То есть, для LDPC-кодов с 28 видами скоростей r от 2/30 по 29/30 кодирования на фигурах с 40 по 106, LDPC-коды одной или более произвольных скоростей кодирования могут быть приняты в качестве нового LDPC-кода.
LDPC-код, полученный с использованием матрицы H контроля четности, определенной из таблиц начальных значений матрицы контроля четности на фигурах с 40 по 106, является LDPC-кодом хорошей производительности.
Здесь LDPC-код хорошей производительности является LDPC-кодом, полученным из соответствующей матрицы H контроля четности.
0
Более того, соответствующая матрица H контроля четности является матрицей контроля четности, которая удовлетворяет заданному условию, чтобы иметь BER (и FER) меньше, когда LDPC-код, полученный из матрицы H контроля четности, передается при низком Es/N или Eb/No (сигнал-шум по мощности на бит).
Например, соответствующая матрица H контроля четности может быть определена путем выполнения моделирования для измерения BER, когда LDPC-коды, полученные из различных матриц контроля четности, которые удовлетворяют заданному условию, передаются при низком Es/No.
При наличии заранее определенного условия для удовлетворения соответствующей матрицей H контроля четности, например, анализ результатов, полученный с помощью способа анализа производительности кода, называемый способом эволюции матрицы плотности, является превосходным, и цикл элементов 1 не существует, который называется циклом 4 и так далее.
Здесь, в информационной матрице На известно, что производительность декодирования LDPC-кода ухудшается, когда элементы 1 уплотнены, как цикл 4 и, следовательно, оно запрашивается, чтобы цикл 4 не существовал, так как заданное условие должно быть удовлетворено соответствующей матрицей X контроля четности.
Здесь, заданное условие, которое должно отвечать соответствующей матрице H контроля четности, может быть произвольно определено с точки зрения улучшения производительности декодирования LDPC-кода и облегчения (упрощения) декодирования LDPC-кода и так далее.
Фиг. 107 и фиг. 108 показывают схемы, описывающие эволюцию плотности, которая может получить результат анализа как заданное условие, чтобы быть удовлетворенным соответствующей матрицей H контроля четности.
Способ эволюции матрицы плотности является способом анализа кода, который вычисляет среднее значение вероятности ошибки всего LDPC-кода (ансамбль) с кодовой длиной N ∞, характеризующийся степенью последовательности, описанной ниже.
Например, когда значение дисперсии шума постепенно увеличивается от 0 в AWGN канале, во-первых, среднее значение вероятности ошибки определенного ансамбля равно 0, но, когда значение дисперсии шума становится равным или больше определенного порогового значения, то значение не равно 0.
Согласно эволюции плотности, путем сравнения с пороговой величиной дисперсии шума (которая также может быть названа пороговой величиной производительности), в котором, среднее значение вероятности ошибки не равно 0, то можно принять решение о качестве производительности ансамбля (целесообразность матрицы контроля четности).
Здесь, для определенного LDPC-кода, когда ансамбль, к которому принадлежит LDPC-код, будет принят и будет выполняться эволюция плотности для ансамбля, можно ожидать низкую эффективность LDPC-кода.
Поэтому, если ансамбль хорошей производительности найден, то LDPC-код хорошей производительности может быть определен из LDPC-кодов, относящихся к ансамблю.
Здесь, вышеупомянутая степень последовательности показывает, на какой процент переменный узел или узел проверки, имеющий вес каждого значения, существует по отношению к кодовой длине N LDPC-кода.
Например, регулярный (3,6) LDPC-код со скоростью 1/2 кодирования принадлежит к ансамблю, характеризуемый степенью последовательности, в которой вес (вес столбца) всех переменных узлов равен 3 и вес (вес строки) всех узлов проверки равен 6.
Фиг. 107 иллюстрирует граф Таннера такого ансамбля.
В графе Таннера на фиг. 107, проиллюстрированы переменные узлы, показанные окружностями (знак О) в диаграмме только N равными частями кодовой длины N, и проиллюстрированы узлы проверки, показанные четырехугольниками (знак ) только N/2 частями, равные значению умножения скорости 1/2 кодирования на кодовую длину N.
Три ветви (грань), равные весу столбца, соединены с каждым переменным узлом и, следовательно, все 3N ветви соединены с N переменными узлами.
Более того, шесть ветвей (грани), равные весу строки, соединены с каждым узлом проверки и, следовательно, все 3N ветви соединены с N/2 узлами проверки.
Кроме того, есть один перемежитель в графе Таннера на фиг. 107.
Перемежитель случайным образом переставляет 3N ветви, соединенные с N переменными узлами и соединяет каждую переставленную ветвь с любой из 3N ветвями, соединенные с N/2 узлами проверки.
Используются (3N)! (=(3N)×(3Ν-1)×…×1) шаблоны перегруппировки для перестановки 3Ν ветвей, соединенных с N переменными узлами, в перемежителе. Таким образом, ансамбль, характеризующийся степенью последовательности, в которой вес всех переменных узлов равен 3 и вес всех узлов проверки равен 6, становится агрегированием (3Ν)! LDPC-кодов.
При моделировании найден LDPC-код хорошей производительности (соответствующая матрица контроля четности), ансамбль многогранного типа используется в эволюции плотности.
Во многогранном типе, перемежитель, через которые проходят ветви, соединенные с переменными узлами, и ветви, соединенные с узлами проверки, разделен на множество (множество граней) и это означает, что ансамбль характеризуется более строго.
Фиг. 108 иллюстрирует пример графа Таннера ансамбля многогранного типа.
В графе Таннера на фиг. 108, показаны два перемежителя первого перемежителя и второго перемежителя.
Более того, на схеме графа Таннера на фиг. 108 показаны v1 переменные узлы с одной ветвью, соединенной с первым перемежителем, и отсутствуют ветви, соединенные со вторым перемежителем, v2 переменные узлы с одной ветвью, соединенной с первым перемежителем, и двумя ветвями, соединенные со вторым перемежителем, и v3 переменные узлы без ветви, соединенной с первым перемежителем, и двумя ветвями, соединенные со вторым перемежителем, соответственно.
Более того, на схеме графа Таннера на фиг. 108 показаны c1 узлы проверки с двумя ветвями, соединенные с первым перемежителем, и нет ветвей, соединенных со вторым перемежителем, с2 узлы проверки с двумя ветвями, соединенные с первым перемежителем, и двумя ветвями, соединенных со вторым перемежителем, и c3 узлы проверки без ветвей, соединенных с первым перемежителем, и тремя ветвями, соединенных со вторым перемежителем, соответственно.
Здесь, к примеру, эволюция плотности и установка таковой, описаны в "Промышленные образцы кодов малой плотности с контролем по четности в пределах 0.0045 дБ предела Шеннона", S.Y. Chung, G.D. Forney, T.J. Richardson, R. Urbanke, IEEE Communication Leggers, VOL. 5, No. 2, февраль 2001 года.
0
При моделировании найден (таблица начальных значений матрицы контроля четности) новый LDPC-код посредством эволюции плотности многогранного типа, найден ансамбль, в котором пороговое значение производительности является Eb/N (отношение сигнала к шуму по мощности на бит) с ухудшением (уменьшением) BER, равным или меньшим, чем заданное значение, и LDPC-код, который уменьшает BER во множестве способов модуляции, используемые в DVB-S.2 или т.п., такой как QPSK, выбирают из LDPC-кодов, принадлежащие к ансамблю как LDPC-код хорошей производительности.
Вышеупомянутый таблица начальных значений матрицы контроля четности нового LDPC-кода является таблицей начальных значений матрицы контроля четности LDPC-кода с кодовой длиной N 64k битов, определенной из вышеупомянутого моделирования.
Фиг. 109 представляет собой схему, иллюстрирующую длину минимального цикла и пороговое значение производительности матрицы H контроля четности, обнаруженную из таблиц начальных значений матрицы контроля четности новых LDPC-кодов с 28 видами скоростей с 2/30 по 29/30 кодирования и кодовой длинной N 64k бит, показанной на фигурах с 40 по 106.
Здесь длина минимального цикла (обход) означает минимальное значение длины петли (длина цикла), образованная элементами 1 в матрице H контроля четности.
В матрице H контроля четности, обнаруженной из таблицы начальных значений матрицы контроля четности нового LDPC-кода, цикл 4 (петля элементов 1 с длиной петли 4) отсутствует.
Более того, поскольку избыточность LDPC-кода становится больше при уменьшении скорости r кодирования, пороговое значение производительности имеет тенденцию к улучшению (снижается) как только скорость r кодирования уменьшается.
Фиг. 110 представляет собой схему, иллюстрирующую матрицу H контроля четности (которая может быть названа новым LDPC-кодом матрицы H контроля четности), показанную на фигурах с 40 по 106 (которая обнаружена из таблицы начальных значений матрицы контроля четности).
Вес столбца равен X для столбца KX из первого столбца матрицы H контроля четности нового LDPC-кода, вес столбца равен Y1 для последующего столбца KY1, вес столбца равен Y2 для последующего столбца KY2, вес столбца равен 2 для последующего М-1 столбца и вес столбца равен 1 для последнего столбца.
Здесь, KX+KY1+KY2+М-1+1 равен кодовой длине N=64800 бит.
Фиг. 111 является схемой, иллюстрирующей номера КХ, KY1, KY2 и M столбцов и веса Χ, Υ1 и Y2 столбцов на фиг. 110 для каждой скорости r кодирования нового LDPC-кода.
Что касается нового LDPC-кода матрицы Η контроля четности с кодовой длиной N 64k, аналогично матрице контроля четности, описанной на фиг. 12 и фиг. 13, вес столбца имеет тенденцию к увеличению в столбце, находящийся ближе к стороне заголовка (левая сторона) и, следовательно, кодовый бит, находящийся ближе к заголовку нового LDPC-кода, имеет тенденцию быть более терпимым к возникновению ошибок (имеет устойчивость к ошибкам).
Здесь, величина q сдвига циклического сдвига, который выполняется, когда матрица контроля четности определяется из таблицы начальных значений матрицы контроля четности нового LDPC-кода с кодовой длиной N 64k, как описано на фиг. 38, выражается уравнением q=M/P=M/360.
Таким образом, величины сдвига новых LDPC-кодов со скоростями 2/30, 3/30, 4/30, 5/30, 6/30, 7/30, 8/30, 9/30, 10/30, 11/30, 12/30, 13/30, 14/30, 15/30, 16/30, 17/30, 18/30, 19/30, 20/30, 21/30, 22/30, 23/30, 24/30, 25/30, 26/30, 27/30, 28/30 и 29/30 кодирования являются 168, 162, 156, 150, 144, 138, 132, 126, 120, 114, 108,102, 96, 90, 84, 78, 72, 66, 60, 54, 48, 42, 36, 30, 24, 18, 12 и 6, соответственно.
Фиг. 112, фиг. 113 и фиг. 114 являются схемами, иллюстрирующими результат моделирования BER/FER новых LDPC-кодов, показанные на фигурах с 40 по 106.
При моделировании предполагается коммуникационный тракт (канал) AWGN, где BPSK принимается в качестве способа модуляции и применяется 50 раз в качестве итеративного декодирования числа С.
s
0
На фиг. 112, фиг. 113 и фиг. 114, горизонтальная ось показывает E/N, и вертикальная ось показывает BER/FER. Здесь сплошная линия показывает BER и пунктирная линия показывает FER.
-5
0
Что касается FER (BER) кривых, соответствующих новым LDPC-кодам с 28 видами скоростей от 2/30 до 29/30 кодирования, как показано на фигурах с 112 по 114, FER равный или менее, чем 10 в диапазоне (около) 15 дБ Es/N от (почти) -10 дБ до 5 дБ.
-5
-5
S
0
В соответствии с моделированием, так как возможно установить 28 элементов ModCod, где FER равен или менее чем 10 в диапазоне 15 дБ, в котором E/N составляет от -10 дБ до 5 дБ, с учетом различных способов модуляции, таких как QPSK, 8PSK, 16APSK, 32APSK, 16QAM, 32QAM и 64QAM, кроме BPSK используемых при моделировании, достаточно ожидать, что можно установить 20 или более элементов ModCod, в которых FER равен или менее чем 10 в диапазоне от 7 дБ от 5 дБ до 12 дБ.
Таким образом, можно обеспечить LDPC-код хорошим значением частоты появления ошибок, который удовлетворяет первому запросу CfT.
Более того, в соответствии с фигурами с 112 по 114, почти все FER (BER) кривые расположены на относительно равных интервалах для каждой из групп со скоростями кодирования низкой, средней и высокой с интервалом менее чем на 1 дБ. Таким образом, для вещательных станций, которые транслируют программы посредством передающего устройства 11, существует преимущество, которое заключается в том, что новый LDPC-код легко выбирает скорость кодирования, используемую для вещания в зависимости от состояния канала (коммуникационного тракта 13) связи и так далее.
Здесь, при моделировании, чтобы найти кривые BER/FER, показанные на фигурах с 112 по 114, информация подвергается ВСН кодированию и ВСН код, полученный в результате, подвергается LDPC-кодированию.
Фиг. 115 является схемой, иллюстрирующей ВСН кодирование, используемое для моделирования.
То есть, часть А на фиг. 115 представляет собой схему, иллюстрирующую параметры ВСН кодирования, выполненные до LDPC-кодирования для LDPC-кода 64k, определенного в DVB-S.2.
В DVB-S.2 путем присоединения битов 192 бит, 160 бит или 128 бит избыточности в зависимости от скорости кодирования LDPC-кода, выполняется ВСН кодирование, которое обеспечивает исправление 12 бит, 10 бит или 8 бит ошибок.
Часть В на фиг. 115 представляет собой схему, иллюстрирующую параметры ВСН кодирования, используемые для моделирования.
При моделировании, как и в случае с DVB-S.2, путем присоединения битов 192 бит, 160 бит или 128 бит избыточности в зависимости от скорости кодирования LDPC-кода, выполняется ВСН кодирование, что позволяет выполнять коррекцию 12 бит, 10 бит или 8 бит ошибок.
Пример конфигурации приемного устройства 12
Фиг. 116 представляет собой блок-схему, иллюстрирующую пример конфигурации приемного устройства 12, показанного на фиг. 7.
OFDM операционный блок 151 принимает сигнал OFDM от передающего устройства 11 (фиг. 7) и выполняет обработку OFDM сигнала. Данные (символ), которые получены путем выполнения процесса обработки сигнала OFDM операционным блоком 151, поставляются блок 152 управления кадром.
Блок 152 управления кадром выполняет обработку (интерпретацию кадра) кадра сконфигурированного символом, поставленного из OFDM операционного блока 151, и передает символ целевых данных, полученных как результат, и символ сигнализации в частотные деперемеживатели 161 и 153.
Частотный перемежитель 153 выполняет обратное перемежение частоты в блок символа по отношению к символу, поставленного из блока 152 управления кадром, и поставляет символ в QAM декодер 154.
QAM декодер 154 выполняет обратное отображение (декодирование расположения сигнальной точки) символа (символ, расположенный на сигнальной точке), поставленного из частотного перемежителя 153, выполняет ортогональную демодуляцию и поставляет данные (LDPC-код), полученные как результат, в LDPC декодер 155.
LDPC декодер 155 выполняет LDPC декодирование LDPC-кода, поставленного из QAM декодера 154, и поставляет LDPC целевые данные (в данном случае, ВСН код), полученный как результат, в ВСН декодер 156.
ВСН декодер 156 выполняет ВСН декодирование LDPC целевых данных, поступающих из LDPC декодера 155, и поставляет данные управления (сигнализацию), полученные как результат.
Между тем, частотный деперемежитель 161 выполняет обратное перемежение частот в блок символа по отношению к символу, поставленного из блока 152 управления кадром, и поставляет символ в MISO/MIMO декодер 162.
MISO/MIMO декодер 162 выполняет пространственно-временное декодирование данных (символ), поставленных из частотного деперемежителя 161, и поставляет данные во временной деперемежитель 163.
Временной перемежитель 163 выполняет обратное временное перемежение в блок символа по отношению к данным (символу), поступающих из MISO/MIMO декодера 162, и поставляет эти данные в QAM декодер 164.
QAM декодер 164 выполняет обратное отображение (декодирование расположения сигнальной точки) символа (символ, расположенный на сигнальной точке), поставленного из временного деперемежителя 163, выполняет ортогональную демодуляцию и поставляет данные (символ), полученные как результат, в битовый деперемежитель 165.
Битовый деперемежитель 165 выполняет обратное битовое перемежение данных (символа), поставляемых из QAM декодера 164, и поставляет LDPC-код, полученный как результат, в LDPC декодер 166.
LDPC декодер 166 выполняет LDPC декодирование LDPC-кода, поставленного из битового деперемежителя 165, и поставляет LDPC целевые данные (в данном случае, ВСН код), полученный как результат, в ВСН декодер 167.
ВСН декодер 167 выполняет ВСН декодирование LDPC целевых данных, поставленных из LDPC декодера 155, и поставляет данные, полученные как результат, в ВВ дешифратор 168.
ВВ дешифратор 168 выполняет ВВ дескремблирование по отношению к данным, поставленным из ВСН декодера 167, и поставляет данные, полученные как результат, в блок 169 удаления нулей.
Блок 169 удаления нулей удаляет нули, вставленные подстроечным конденсатором 112, показанным на фиг. 8, из данных, поставленных из ВВ дешифратора 168, и поставляет эти данные в демультиплексор 170.
Демультиплексор 170 разделяет отдельно один или несколько потоков (целевые данные), мультиплексированные с данными, поставленными из блока 169 удаления нулей, выполняет необходимую обработку для вывода потоков в качестве выходных потоков.
Здесь приемное устройство 12 может быть выполнено с возможностью не включать в себя часть блоках, показанных на фиг. 116. То есть, например, в случае, когда передающее устройство 11 (фиг. 8) выполнено с возможностью не включать в себя временной перемежитель 118, MISO/MIMO кодер 119, частотный перемежитель 120 и частотный перемежитель 124, приемное устройство 12 может быть выполнено с возможностью не включать в себя временной деперемежитель 163, MISO/MIMO декодер 162, частотный деперемежитель 161 и частотный деперемежитель 153, которые являются блоками, соответствующие временному перемежители 118, MISO/MIMO кодеру 119, частотному перемежителю 120 и частотному перемежителю 124 передающего устройства 11.
Фиг. 117 представляет собой блок-схему, иллюстрирующую пример конфигурации битового деперемежителя 165, показанного на фиг. 116.
Битовый деперемежитель 165 включает в себя мультиплексор (MUX) 54 и деперемежитель 55 скручивания столбцов и выполняет (бит) деперемежение битов символа, поставленного QAM декодера 164 (фиг. 116).
То есть, мультиплексор 54 выполняет процесс обработки обратной перестановки (процесс обратный процессу обработки перестановки), соответствующий процессу обработки перестановки, выполненный демультиплексором 25 на фиг. 9, то есть, процесс обработки обратной перестановки для возвращения позиций битов кода (битов символа) LDPC-кодов, переставленных в процессе выполнения перестановки, в исходные позиции по отношению к битам символа, поставленного из QAM декодера 164, и поставляет LDPC-код, полученный как результат, в деперемежитель 55 скручивания столбцов.
Деперемежитель 55 скручивания столбцов осуществляет обратное перемежение скручивания столбцов (процесс обратный процессу обработки скручивания столбцов), соответствующий скручиванию столбцов, как процесс обработки перегруппировки, выполняемого перемежителем 24 скручивания столбцов на фиг. 9, то есть, деперемежение скручивания столбцов как обратное переупорядочение для возвращения кодовых битов LDPC-кодов, расположение которых было изменено посредством выполнения процесса скручивания столбцов, как обработка переупорядочения, на первоначальные расположения по отношению к LDPC-коду, поставленного из мультиплексора 54.
В частности, деперемежитель 55 скручивания столбцов записывает кодовые биты LDPC-кода в память для обратного перемежения, имеющую ту же самую конфигурацию, что и память 31, показанную на фиг. 28, считывает кодовые биты и выполняет обратное перемежение скручивания столбцов.
Тем не менее, деперемежитель 55 скручивания столбцов записывает кодовые биты в направлении строк памяти для обратного перемежения, используя считываемые адреса, когда кодовые биты считываются из памяти 31 в качестве адресов записи. Кроме того, чтение кодовых битов выполняется в направлении столбцов памяти для обратного перемежения, используя адреса записи, когда кодовые биты записываются в память 31, как считываемые адреса.
LDPC-код, который получают в результате обратного перемежения скручивания столбцов, подается из деперемежителя 55 скручивания столбцов в LDPC декодер 166.
Здесь, в случае при перемежения четности, перемежение скручивания столбцов и обработка перестановки выполняются на LDPC-коде, поступающего из QAM декодера 164 в битовый деперемежитель 165, все из обратного перемежения четности (процесс обработки противоположный процессу перемежения четности, т.е. перемежение четности, который возвращает кодовые биты LDPC-кода, в котором расположение изменяется посредством перемежения четности, в первоначальное расположение), соответствующей перемежению четности, процесс обратный процессу перестановки и обратному перемежению скрещивания столбцов, соответствующий перемежению скручивания столбцов может быть выполнено в битовом деперемежителе 165.
Тем не менее, битовый перемежитель 165 на фиг. 117 включает в себя мультиплексор 54, который выполняет процесс обратный процессу перестановки, и деперемежитель 55 скручивания столбцов, который выполняет процесс обратного перемежения скручивания столбцов, соответствующий перемежению скручивания столбцов, но не включает в себя блок, который выполняет перемежение четности, соответствующий перемежению четности, и перемежение четности не выполняется.
Таким образом, LDPC-код, в котором выполняются процессы обратной обработки перестановки и перемежения скручивания столбцов, и перемежение четности не выполняется, подается из битового деперемежителя 165 (деперемежителя 55 скручивания столбцов) в LDPC декодер 166.
LDPC декодер 166 выполняет LDPC декодирование LDPC-кода, поставленный из битового деперемежителя 165, с использованием преобразованной матрицы контроля четности, полученной путем выполнения, по меньшей мере, перестановки, соответствующей перемежению четности по отношению к матрице H контроля четности, используемой LDPC-кодером 115 на фиг. 8 для выполнения LDPC-кодирования, и выводит данные, полученные как результат, в результат декодирования LDPC целевых данных.
Фиг. 118 представляет собой блок-схему алгоритма, иллюстрирующую процесс обработки, который выполняется посредством QAM декодера 164, битовым деперемежителем 165 и LDPC декодером 166, показанные на фиг. 117.
На этапе S111 QAM декодер 164 выполняет обратное отображение символа (символ, отображенный на сигнальную точку), поставленного из временного деперемежителя 163, выполняет ортогональную модуляцию и поставляет символ в битовый деперемежитель 165 и процесс обработки переходит на этап S112.
На этапе S112, битовый деперемежитель 165 выполняет перемежение (обратное перемежение битов) битов символа, поступающего из QAM декодера 164, и обработка переходит к этапу S113.
То есть, на этапе S112, в битовом деперемежителе 165, мультиплексор 54 выполняет процесс обработки обратный процессу перестановки относительно битов символа, поставленного из QAM декодера 164, и поставляет кодовые биты LDPC-кода, полученные как результат, в деперемежитель 55 скручивания столбцов.
Деперемежитель 55 скручивания столбцов выполняет обратное перемежение столбцов по отношению к LDPC-коду, поставленного из мультиплексора 54, и поставляет LDPC-код, полученной в результате, в LDPC декодер 166.
На этапе S113 LDPC декодер 166 выполняет LDPC декодирование LDPC-кода, поступающего из деперемежителя 55 скручивания столбцов, с использованием преобразованной матрицы контроля четности, полученной путем выполнения, по меньшей мере, перестановки столбца, соответствующей перемежению четности по отношению к матрице H контроля четности, используемой LDPC-кодером 115 на фиг. 8 для выполнения LDPC-кодирования, и выводит данные, полученные в результате, как результат декодирования LDPC целевых данных, в ВСН декодер 167.
На фиг. 117, для удобства объяснения, мультиплексор 54, который выполняет процесс обработки обратной перестановки, и деперемежитель 55 скручивания столбцов, который выполняет процесс обработки обратного перемежения скручивания столбцов, выполнены отдельно, аналогично случаю, показанному на фиг. 9. Тем не менее, мультиплексор 54 и деперемежитель 55 скручивания столбцов могут быть выполнены интегрально.
В битовом перемежителе 116 на фиг. 9, когда процесс перемежения скручивания столбцов не выполняется, то нет необходимости обеспечивать деперемежитель 55 скручивания столбцов в битовом деперемежителе 165, показанном на фиг. 117.
Далее, процесс LDPC декодирования, который выполняется LDPC декодером 166, показанный на фиг. 116, будет дополнительно описан.
В LDPC декодере 166 на фиг. 116, как описано выше, процесс LDPC декодирования LDPC-кода из деперемежителя 55 скручивания столбцов, в котором выполняются процесс обратной обработки перестановки и обратное перемежение скручивания столбцов и перемежение четности не выполняется, выполняется с использованием преобразованной матрицы контроля четности, полученной посредством выполнения, по меньшей мере, перестановкой столбца, соответствующая перемежению четности по отношению к матрице Н контроля четности, используемой LDPC-кодером 115 на фиг. 8 для выполнения LDPC-кодирования.
В этом случае, предварительно предложен процесс LDPC декодирования, который может подавлять рабочую частоту на достаточно доступном диапазоне при одновременном подавлении схемы деления, путем выполнения процесса декодирования LDPC с использованием преобразованной матрицы контроля четности (например, см JP 4224777 В).
Поэтому, во-первых, ранее предложенный процесс LDPC декодирования с использованием преобразованной матрицы контроля четности будет описан со ссылкой на фигуры с 119 по 122.
Фиг. 119 иллюстрирует пример матрицы Н контроля четности LDPC-кода, в котором кодовая длина N равна 90 и скорость кодирования составляет 2/3.
На фиг. 119 (и фиг. 120 и 121, которые будут описаны ниже), 0 представлен точкой (.).
В матрице Н контроля четности на фиг. 119, матрица контроля четности становится ступенчатой структурой.
Фиг. 120 иллюстрирует матрицу Н' контроля четности, которая получена путем выполнения замены строк согласно выражению (11), и замены столбца согласно выражению (12) по отношению к матрице Н контроля четности на фиг. 119.
В выражениях (11) и (12), s, t, x и y являются целыми числами в диапазонах от 0≤s<5, 0≤t<6, 0≤x<5, и 0≤y<6, соответственно.
Согласно замене строки по выражению (11), замена осуществляется таким образом, что 1-я, 7-я, 13-я, 19-я и 25-я строчки, имеющие остатки 1, когда были разделены на 6, заменены на 1-ю, 2-ю, 3-ю, 4-ю и 5-ю сточки, и 2-я, 8-я, 14-я, 20-я и 26-я строчки, имеющие остатки 2, когда была разделены на 6, заменены на 6-ю, 7-ю, 8-ю, 9-ю и 10-ю строчки, соответственно.
Согласно замене столбцов по выражению (12), замена осуществляется таким образом, что 61-й, 67-й, 73-й, 79-й и 85-й столбцы, имеющие остатки 1, когда были разделены на 6, заменены на 61-й, 62-й, 63-й, 64-й и 65-й столбцы, соответственно, и 62-й, 68-й, 74-й, 80-й и 86-й столбцы, имеющие остатки 2, когда были разделены на 6, заменены на 66-й, 67-й, 68-й, 69-й и 70-й столбцы, соответственно, по отношению к 61-му и следующим столбцам (матрицы четности).
Таким образом, матрица, полученная в результате выполнения замены строк и столбцов по отношению к матрице H контроля четности на фиг. 119, является матрицей Н' контроля четности, показанной на фиг. 120.
В этом случае, даже тогда, когда выполняется замена строки матрицы H контроля четности, то это не оказывает влияния на расположение кодовых битов LDPC-кода.
Замена столбцов по выражению (12) соответствует перемежению четности для перемежения (К+qx+y+1)-го кодового бита на позицию (K+Py+x+1)-го кодового бита, когда информационная длина К равна 60, число Ρ столбца блока циклической структуры равно 5, и делитель q (=Μ/Ρ) длины M четности (в данном случае, 30) равен 6.
Таким образом, матрица Н' контроля четности на фиг. 120 является преобразованной матрице контроля четности, полученной путем выполнения, по меньшей мере, заменой столбца, который заменяет К+qx+y+1-й столбец матрицы H контроля четности на фиг. 119 (которую далее условно можно назвать оригинальной матрицей контроля четности) на K+Py+x+1-й столбец.
C
T
T
Если матрица Н' контроля четности на фиг. 120 умножается на результат, полученный посредством выполнения аналогичной замены по выражению (12) по отношению к LDPC-коду матрицы Η контроля четности на фиг. 119, то вырабатывается нулевой вектор. То есть, если вектор строки, полученный путем выполнения замены столбца по выражению (12) по отношению к вектору с строки как LDPC-код (одно кодовое слово) исходной матрицы Η контроля четности, представляется как с', H становится нулевым вектором из состава матрицы контроля четности. Поэтому, Н'c', естественно, становится нулевым вектором.
Таким образом, преобразованная матрица Н' контроля четности на фиг. 120 становится матрицей контроля четности LDPC-кода с', который получен в результате выполнения замены столбца по выражению (12) по отношению к LDPC-коду с оригинальной матрицы H контроля четности.
Таким образом, замена столбца по выражению (12) выполняется по отношению к LDPC-коду оригинальной матрицы H контроля четности, LDPC-код с' после замены столбца декодируется (LDPC декодирование) с использованием преобразованной матрицы Н' контроля четности на фиг. 120, обратная замена произведенной замены столбца по выражению (12) выполняется по отношению к результату декодирования, и тот же результат декодирования в случае, в котором LDPC-код оригинальной матрицы H контроля четности декодируется с использованием матрицы H контроля четности, может быть получен.
Фиг. 121 иллюстрирует преобразованную матрицу Н' контроля четности на фиг. 120 с разнесенными блоками 5×5 матриц.
Как показано на фиг. 121, преобразованная матрица Н' контроля четности представляет собой комбинацию 5×5 (=Ρ×Ρ) блока матрицы, матрицу (далее соответственно называется как квазиблок матрицы), полученную путем установки одного или более 1 блока матрицы на ноль, матрицу (далее соответственно называется как смещенная матрица), полученную путем циклического сдвига блока матрицы или квазиблока матрицы, сумму (далее, соответственно называется как матрица сложения) двух или более матриц блока матрицы, квазиблока матрицы и смещенной матрицы, и 5×5 нулевую матрицу.
Преобразованная Н' матрица контроля четности на фиг. 121 может быть сконфигурирована с помощью 5×5 блока матрицы, квазиблока матрицы, смещенной матрицы, матрицы сложения и нулевой матрицы. Таким образом, 5×5 матрицы (блок матрицы, квазиблок матрицы, смещенная матрица, матрица сложения и нулевая матрица), которые представляют собой преобразованную матрицу Н' контроля четности, соответственно, называются далее как матрицы состояния.
Когда декодируется LDPC-код, представленный матрицей контроля четности, представленной Ρ×Ρ матрицами состояния, может быть использована архитектура, в которой одновременно выполняются операции узла проверки и переменного узела.
Фиг. 122 представляет собой блок-схему, иллюстрирующую пример конфигурации устройства декодирования, которое выполняет декодирование.
То есть, фиг. 122 иллюстрирует пример конфигурации устройства декодирования, которое выполняет декодирование LDPC-кода, с использованием преобразованной матрицы Н' контроля четности, показанной на фиг. 119, полученной путем выполнения, по меньшей мере, перестановки столбца согласно выражению (12) по отношению к исходной матрицы Η контроля четности, показанной на фиг. 121.
i
6
i
6
1
18
1
18
Устройство декодирования, показанное на фиг. 122, включает в себя память 300 для хранения данных ответвлений, которая включает в себя 6 FIFOs с 300 по 300, селектор 301, который выбирает FIFOs с 300 по 300, блок 302 вычисления узла проверки, две схемы 303 и 308 циклического сдвига, память 304 для хранения данных ответвлений, которая включает в себя 18 FIFOs с 304 по 304, селектор 305, который выбирает FIFOs с 300 по 300, память 306 данных приема, которая хранит данные приема, блок 307 вычисления переменного узла, блок 309 вычисления декодирования слова, блок 310 перестановки данных приема и блок 311 перестановки декодированных данных.
Во-первых, будет описан способ хранения данных в памяти 300 для хранения данных ответвлений и в памяти 304 для хранения данных ответвлений.
1
6
Память 300 для хранения данных ответвлений включает в себя 6 FIFOs с 300 по 300, что соответствует количеству, полученному делением на числа 30 строки преобразованной матрицы Н' контроля четности на фиг. 121, на число 5 строки матрицы состояния (число Ρ столбца блока циклической структуры). FIFO 300y (y=1, 2, …, и 6) включает в себя множество этапов областей хранения. В области хранения каждого этапа, сообщения, соответствующие пяти ветвям, числа строки и числа столбца матрицы состояния (число Ρ столбца блока циклической структуры) могут быть одновременно считаны или записаны. Количество этапов областей хранения FIFO 300y становится равным 9, что является максимальным числом (вес Хемминга) 1 направления строки преобразованной матрицы контроля четности на фиг. 121.
1
i
1
В FIFO 300 данные (сообщения V переменных узлов), соответствующие позициям 1 с первой по пятую строки преобразованной матрицы Н' контроля четности на фиг. 121, хранятся в виде заполнения каждой строки в поперечном направлении (форма, в которой 0 игнорируется). То есть, если j-я строка и i-й столбец представлены в виде (j, i), то данные, соответствующие позициям 1 из 5×5 блока матрицы с (1, 1) по (5, 5) преобразованной матрицы Н' контроля четности, хранятся в области хранения первого этапа FIFO 300. В области хранения второго этапа хранятся данные, соответствующие позициям 1 смещенной матрицы (смещенной матрицы, полученной путем циклического сдвига 5×5 блока матрицы вправо на 3) с (1, 21) по (5, 25) преобразованной матрицы Н' контроля четности. Как и в предыдущем случае, в областях хранения с третьего по восьмой этапы хранятся данные в ассоциации с преобразованной матрицей Н' контроля четности. В области хранения девятого этапа хранятся данные, соответствующие позиции 1 смещенной матрицы (смещенной матрицы, полученной путем замены 1 в первой строке 5×5 блока матрицы на 0 и циклическим сдвигом блока матрицы влево на 1) с (1, 86) по (5, 90) преобразованной матрицы Н' контроля четности.
2
2
В FIFO 300 хранятся данные, соответствующие позициям 1 с шестой по десятую строку преобразованной матрицы Н' контроля четности на фиг. 121. То есть, в области хранения первого этапа FIFO 300, хранятся данные, соответствующие позициям 1 первой смещенной матрицы, образующую матрицу суммы (матрица суммы является суммой первой смещенной матрицы, полученной путем циклического сдвига 5×5 блока матрицы вправо на 1, и второй смещенной матрицы, полученной путем циклического сдвига 5×5 блока матрицы вправо на 2) с (6, 1) по (10, 5) преобразованной матрицы Н' контроля четности. Кроме того, в области хранения на второго этапа хранятся данные, соответствующие позициям 1 второй смещенной матрицы, составляющей матрицу суммы с (6, 1) по (10, 5) преобразованной матрицы Н' контроля четности.
1
6
То есть, по отношению к матрице состояния, вес которой равен двум или более, когда матрица состояния представлена в виде суммы нескольких частей Ρ×Ρ блока матрицы, вес которой равен 1, квазиблок матрицы, в которой один или несколько элементов 1 в блоке матрицы становится равным 0, или смещенная матрица, полученная путем циклического сдвига блока матрицы или квазиблока матрицы, данные (сообщения, соответствующие ответвлениям, принадлежащим блоку матрицы, квазиблоку матрицы или смещенной матрицы), соответствующие позициям 1 блока матрицы веса 1, квазиблоку матрицы или смещенной матрицы, хранятся по тому же адресу (аналогично FIFO среди FIFOs с 300 по 300).
Соответственно, в областях хранения с третьего по девятый этапы, данные хранятся в ассоциации с преобразованной матрицей Н' контроля четности, аналогично рассмотренному выше случаю.
3
6
В FIFOs с 300 до 300, данные хранятся в ассоциации с преобразованной матрицей Н' контроля четности', аналогично рассмотренному выше случаю.
1
18
х
Память 304 для хранения данных ответвлений включает в себя 18 FIFOs с 304 по 304 что соответствует числу, полученному делением числа 90 столбцов преобразованной матрицы Н' контроля четности на 5, чтобы быть числом столбца матрицы состояния (число Ρ столбца блока циклической структуры). FIFO 304 (х=1, 2, …, и 18) включает в себя множество этапов областей хранения. В области хранения каждого этапа, сообщения, соответствующие пяти ветвям, соответствующие количеству строк и числу столбцов в матрице состояния (номер Ρ столбца блока циклической структуры), могут быть одновременно считаны или записаны.
1
j
1
В FIFO 304 хранятся данные (сообщения u из узлов проверки), соответствующие позициям 1 с первого по пятый столбец преобразованной матрицы Н' контроля четности на фиг. 121, в виде заполнения каждого столбца в продольном направлении (форма, в которой 0 игнорируется). То есть, если j-я строка и i-й столбец представлены как (j, i), то хранятся данные, соответствующие позициям 1 5×5 блока матрицы (1, 1) по (5, 5) преобразованной матрицы Н' контроля четности, в области хранения первого этапа FIFO 304. В области хранения второго этапа, хранятся данные, соответствующие позициям 1 первой смещенной матрицы, образующую матрицу суммы (матрица суммы является суммой первой смещенной матрицы, полученной путем циклического сдвига 5×5 блока матрицы вправо на 1, и второй смещенной матрицы, полученной путем циклического сдвига 5×5 блока матрицы вправо на 2) с (6, 1) по (10, 5) преобразованной матрицы Н' контроля четности. Кроме того, в области хранения третьего этапа хранятся данные, соответствующие позициям 1 второй смещенной матрицы, составляющей матрицу суммы с (6, 1) по (10, 5) преобразованной матрицы Н' контроля четности.
1
18
То есть, по отношению к матрице состояния, вес которой равен двум или более, когда матрица состояния представлена в виде суммы нескольких частей Ρ×Ρ блока матрицы, вес которой равен 1, квазиблок матрицы, в которой один или несколько элементов 1 в блоке матрицы становится равным 0, или смещенная матрица, полученная путем циклического сдвига блока матрицы или квазиблока матрицы, данные (сообщения, соответствующие ответвлениям, принадлежащим блоку матрицы, квазиблоку матрицы или смещенной матрицы), соответствующие позициям 1 блока матрицы веса 1, квазиблоку матрицы или смещенной матрицы, хранятся по тому же адресу (аналогично FIFO среди FIFOs с 300 по 300).
1
Соответственно, в областях хранения с четвертого по пятый этапы, данные хранятся в ассоциации с преобразованной матрицей Н' контроля четности, аналогично рассмотренному выше случаю. Количество этапов областей хранения FIFO 300 становится равным 5, что является максимальным числом (вес Хемминга) 1 направления строки с первого по пятый столбец преобразованной матрицы Н' контроля четности.
2
3
4
12
13
18
В FIFOs 304 и 304, данные хранятся в ассоциации с преобразованной матрицей Н' контроля четности, аналогично рассмотренному выше случаю, и каждая длина (количества этапов) равна 5. В FIFOs с 304 по 304, данные хранятся в ассоциации с преобразованной матрицей H' контроля четности, аналогично вышеприведенному случаю, и каждая длина равна 3. В FIFOs с 304 по 304 данные хранятся в ассоциации с преобразованной матрицей H' контроля четности, аналогично вышеприведенному случаю, и каждая длина равна 2.
Далее будет приведено описание процесса функционирования устройства декодирования, показанного на фиг. 122.
1
6
1
6
1
1
1
2
6
Память 300 для хранения данных ответвлений включает в себя 6 FIFOs с 300 по 300. Согласно информации (матрица данных) D312, в которой строка преобразованной матрицы H' контроля четности на фиг. 121 принадлежит пяти сообщениям D311, поставленных из схемы 308 циклического сдвига 308 предшествующего этапа, FIFO хранящиеся данные выбираются из FIFOs с 300 по 300 и пять сообщений D311 в совокупности хранимых последовательно в выбранном FIFO. Когда данные считываются, память 300 для хранения данных ответвлений последовательно считывает пять сообщений D300 с FIFO 300 и поставляет сообщения в селектор 301 следующего этапа. После завершения считывания сообщений из FIFO 300 память 300 для хранения данных ответвлений считывает сообщения последовательно из FIFOs с 300 по 300 и поставляет сообщения в селектор 301.
1
6
Селектор 301 выбирает пять сообщений из FIFO, с которого данные непосредственно считываются, среди FIFOs с 300 по 300, в соответствии с сигналом D301 выбора, и поставляет выбранные сообщения как сообщения D302 в блок 302 вычисления узла проверки.
1
5
1
5
i
1
5
j
Блок 302 вычисления узла проверки включает в себя пять калькуляторов с 302 по 302. Блок 302 вычисления узла проверки выполняет операцию узла проверки в соответствии с выражением (7), используя сообщения D302 (с D302 по D302) (сообщения V выражения 7), поставленные через селектор 301, и поставляет пять сообщений D303 (D303-D303) (сообщения u выражения (7)), полученные в результате операции узла проверки в схему 303 циклического сдвига.
1
5
Схема 303 циклического сдвига циклически сдвигает пять сообщений D303-D303, рассчитанных блоком 302 вычисления узла проверки на основании информации (матрица данных) D30S о том, сколько блоков матрицы (или квазиблоков матрицы) становятся исходными в преобразованной матрице Н' контроля четности циклически смещенными для получения соответствующих ветвей, и поставляет результат как сообщения D304 в память 304 для хранения данных.
1
18
1
18
1
1
1
2
18
Память 304 для хранения данных ответвлений включает в себя восемнадцать FIFOs с 304 по 304. Согласно информации D305, в которой строка преобразованной матрицы H' контроля четности принадлежит к пяти сообщениям D304, поставленных из схемы 303 циклического сдвига 308 предшествующего этапа, FIFO хранящиеся данные выбираются из FIFOs с 304 по 304 и пять сообщений D304 в совокупности хранимых последовательно в выбранном FIFO. Когда данные считываются, память 304 для хранения данных ответвлений последовательно считывает пять сообщений D304 с FIFO 304 и поставляет сообщения в селектор 305 следующего этапа. После завершения считывания сообщений из FIFO 304, память 304 для хранения данных ответвлений считывает сообщения последовательно из FIFOs с 304 по 304 и поставляет сообщения в селектор 305.
1
18
Селектор 305 выбирает пять сообщений из FIFO, из которого данные непосредственно считываются, среди FIFOs с 304 по 304, в соответствии с сигналом D307 выбора, и поставляет выбранные сообщения как сообщения D308 в блок 307 вычисления переменного узла и блок 309 вычисления декодирования слова.
Между тем, блок 310 перестановки данных приема перегруппировывает LDPC-код D313, который соответствует матрице Η контроля четности на фиг. 119, принятые по каналу 13 связи посредством выполнения замены столбца по выражению (12), и поставляет LDPC-код как данные D314 приема в память 306 данных приема. Память 306 данных приема вычисляет LLR (логарифмическое отношение правдоподобия) приема из данных D314 приема, поставленных из блока 310 перестановки данных приема, хранит LLR приема, LLR, собирает пять значений LLRs приема и поставляет значения LLRs приема как значения D309 приема в блок 307 вычисления переменного узла и блок 309 вычисления декодирования слова.
1
5
1
5
j
j
1
5
i
Блок 307 вычисления переменного узла включает в себя пять калькуляторов с 307 по 307. Блок 307 вычисления переменного узла выполняет операцию переменного узла в соответствии с выражением (1), используя сообщения D308 (с D308 по D308) (сообщения u выражения 1), поставленные через селектор 305, и поставляет пять сообщений D309 (значений u приема выражения (1)), поставленные из памяти 306 данный приема, и поставляет сообщения D310 (D310-D310) (сообщения v выражения (1)), полученные в результате операции переменного узла в схему 308 циклического сдвига.
1
5
Схема 308 циклического сдвига циклически сдвигает пять сообщений D310-D310, рассчитанных блоком 307 вычисления переменного узла на основании информации о том, сколько блоков матриц (или квазиблоков матриц) становятся исходными в преобразованной матрице Н' контроля четности циклически смещенными для получения соответствующих ветвей, и поставляет результат как сообщения D311 в память 300 для хранения данных ответвлений.
При циркуляции вышеописанной операции в одном цикле, процесс декодирования (операция переменного узла и операция узла проверки) LDPC-кода может быть выполнен один раз. После декодирования LDPC-кода посредством заданным количеством раз, устройство декодирования на фиг. 122 вычисляет итоговый результат декодирования и выводит конечный результат декодирования в блок 309 вычисления декодирования слова и блок 311 перестановки декодированных данных.
1
5
1
5
j
0i
То есть, блок 309 вычисления декодирования слова включает в себя пять калькуляторов с 309 по 309 декодирования слова. Блок 309 вычисления декодирования слова вычисляет результат декодирования (декодирование слова) в соответствии с выражением (5), как завершающий этап процесса декодирования, используя пять сообщений D308 (с D308 по D308) (сообщения u выражения), поставленные через селектор 305, и пять значений D309 приема (значений u приема выражения (5)), поставленные из памяти 306 данный приема, и поставляет декодированные данные D315, полученные в результате, в блок 311 перестановки декодированных данных.
Блок 311 перестановки декодированных данных выполняет обратную замену замененных столбцов по выражению (12) по отношению к декодированным данным D315, поставленным из блока 309 вычисления декодирования слова, переставляет их порядок, и выводит декодированные данные в качестве конечного результата D316 процесса декодирования.
Как упоминалось выше, при выполнении замены строки или замены столбца или замены того и другого матрицы контроля четности (исходной матрицы контроля четности) и посредством преобразования ее в матрицу контроля четности (преобразованную матрицу контроля четности), что может быть показано в комбинации p×p блока матрицы, квазиблока матрицы, где один или несколько их элементов 1 становится равными 0, смещенной матрицы, которая циклический сдвигает блок матрицы или квазиблок матрицы, матрицы суммы, которая является суммой двух или более блоков матриц, квазиблоков матриц и смещенной матрицы и p×p 0 матрицы, то есть комбинация матриц состояния, как для декодирования LDPC-кода, становится возможным принять архитектуру, которая одновременно выполняет вычисление узла проверки и вычисления переменного узла посредством Р, которое является числом меньшим, чем число строки и число столбца матрицы контроля четности. В случае принятия архитектуры, которая одновременно выполняет вычисление узла (вычисления узла проверки и вычисление переменного узла) посредством Р, которое является числом, меньшим, чем число строк и число столбцов в матрице контроля четности, по сравнению со случаем, когда вычисление узла выполняется одновременно с помощью числа, равного числу строк и числу столбцов в матрице контроля четности, можно уменьшить частоту выполнения операций в пределах допустимого диапазона и выполнить много операций итеративного декодирования.
LDPC декодер 166, который составляет приемное устройство 12 на фиг. 116, выполняет процесс декодирование LDPC посредством одновременного выполнения Ρ операций узла проверки и операций переменного узла, аналогично устройству декодирования, показанного на фиг. 122.
То есть, для упрощения объяснения, если матрица контроля четности LDPC-кода вырабатывает посредством LDPC-кодера 115, образующего передающее устройство 11, показанное на фиг. 8, относительно матрицы Η контроля четности, показанной на фиг. 119, где матрица четности становится ступенчатой структурой, в перемежителе 23 четности передающего устройства 11, перемежитель четности перемежевывает (K+qx+y+1)-й битовый код на позицию (K+Py+x+1)-го битового кода в состоянии, в котором информация К устанавливается на 60, номер Ρ столбца блока циклической структуры устанавливается на 5 и делитель q (=Μ/Ρ) длины M четности устанавливается на 6.
Из-за того, что перемежение четности соответствует замене столбца выражения (12), как описано выше, то нет необходимости выполнять замену столбца выражения (12) в LDPC декодере 166.
По этой причине, в приемном устройстве 12 на фиг. 116, как описано выше, LDPC-код, в котором перемежение четности не выполняется, то есть, LDPC-код находится в состоянии, в котором выполняется замена столбца выражения (12), поставляется из деперемежителя 55 скрещивания столбцов в LDPC декодер 166. В LDPC декодере 166 выполняется тот же процесс обработки, что и в устройстве декодирования, показанного на фиг. 122, за исключением того, что замена столбца выражения (12) не выполняется.
То есть, на фиг. 123 иллюстрируется пример конфигурации LDPC декодера 166, показанного на фиг. 116.
Как показано на фиг. 123, LDPC декодер 166 имеет ту же конфигурацию, что и устройство декодирования на фиг. 122, за исключением того, что блок 310 перестановки данных приема на фиг. 122 не предусмотрен, и выполняет ту же самую обработку, как декодирующее устройство, показанное на фиг. 122, за исключением того, что замена столбца выражения (12) не выполняется. Таким образом, описание процесса функционирования LDPC декодера опускается.
Как описано выше, поскольку LDPC декодер 166 может быть сконфигурирован без блока 310 перестановки данных приема, то шкала может быть уменьшена по сравнению с декодирующим устройством, показанным на фиг. 122.
На фигурах с 119 по 123, для упрощения объяснения, кодовая длина N LDPC-кода установлена на 90, информационная длина К установлена на 60, число Ρ столбца (число строки и число столбца матрицы состояния) блока циклической структуры установлено на 5 и делитель q (=M/Ρ) длины Μ четности устанавливается на 6. Однако, кодовая длина N, информационная длина K, число Ρ столбца блока циклической структуры и делитель q (=Μ/Ρ) не ограничиваются приведенными выше значениями.
То есть, в передающем устройстве 11, показанном на фиг. 8, LDPC-кодер 115 выводит LDPC-код, в котором кодовая длина N установлена на 64800 или 16200, информационная длина К установлена на N-Pq (=Ν-M), число Ρ столбца блока циклической структуры установлено на 360 и делитель q установлен на М/Р. Тем не менее, LDPC декодер 166 на фиг. 123 можно применить к случаю, в котором, Ρ операция узла проверки и операция переменного узла выполняются одновременно по отношению к LDPC-коду и выполняется процесс LDPC декодирования.
Фиг. 124 является иллюстрацией процесса обработки мультиплексора 54, образующего битовый деперемежитель 165, показанный на фиг. 117.
То есть, часть А фиг. 124 иллюстрирует пример функциональной конфигурации мультиплексора 54.
Мультиплексор 54 включает в себя блок 1001 обратной перестановки и память 1002.
Мультиплексор 54 выполняет процесс обработки обратной перестановки (процесс обратный процессу обработки перестановки), соответствующий процессу обработки перестановки, выполняемого демультиплексором 25 передающего устройства 11, то есть, обратный процесс перестановки для возвращения позиций битов кода (битов символа) LDPC-кодов, перестановленных в процессе выполнения обработки перестановки, на исходные позиции, по отношению к битам символа, поставленных из QAM декодера 164 предшествующего этапа, и поставляет LDPC-код, полученный как результат, в деперемежитель 55 скрещивания столбцов на следующем этапе.
0
1
mb-1
То есть, в мультиплексоре 54 биты y, y, …, и y символа mb битов b символов поставляются в блок 1001 обратной перестановки в блоке b (следующие друг за другом) символов.
0
1
mb-1
0
1
mb-1
0
mb-1
0
mb-1
Блок 1001 обратной перестановки выполняет процесс обратной перестановки для возвращения битов y, y, …, и y символа mb битов на позиции расположения кодовых битов b, b, …, и b оригинальных mb битов (расположение кодовых битов с b до b до выполнения перестановки в блоке 32 перестановки, составляющий демультиплексор 25 стороны передающего устройства 11), и выводит кодовые биты b до b mb битов, полученных как результат.
Память 1002 имеет емкость для хранения mb битов в направлении строки (поперечное) и хранения N/(mb) битов в направлении столбца (продольное), аналогично памяти 31, образующей демультиплексор 25 стороны передающего устройства 11. То есть, память 1002 включает в себя mb столбцы, хранящие N/(mb) бит.
Тем не менее, в памяти 1002 осуществляется запись кодовых битов LDPC-кода, поставленного блоком 1001 обратной перестановки, в направлении, в котором выполняется считывание кодовых битов из памяти 31 демультиплексора 25 передающего устройства 11, и считывание кодовых битов, записанных в памяти 1002, выполняется в направлении, в котором выполняется запись кодовых битов в памяти 31.
То есть, в мультиплексоре 54 приемного устройства 12, как показано на фиг. 124, запись кодовых битов LDPC-кода, выработанного блоком 1001 обратной перестановки, в направлении строки в блоке mb битов последовательно выполняется в сторону нижних строк с первой строки памяти 1002.
Если запись кодовых битов, соответствующих одной кодовой длине, заканчивается, то мультиплексор 54 считывает кодовые биты из памяти 1002 в направлении столбцов и подает кодовые биты в деперемежитель 55 скручивания столбцов на следующем этапе.
В этом случае, часть В на фиг. 124 является иллюстрацией процесса считывания кодовых битов из памяти 1002.
В мультиплексоре 54, чтение кодовых битов LDPC-кода в направлении вниз (направлении столбца) из верхней части столбцов, составляющие память 1002, выполняется в направлении столбцов в направлении справа налево.
Фиг. 125 является иллюстрацией процесса обработки деперемежителя 55 скручивания столбцов, образующий битовый деперемежитель 165, показанный на фиг. 117.
То есть, фиг. 125 иллюстрирует пример конфигурации памяти 1002 мультиплексора 54.
Память 1002 имеет емкость для хранения mb бит в направлении столбца (продольное) и хранит N/(mb) биты в направлении строки (поперечное) и включает в себя mb столбцы
Деперемежитель 55 скручивания столбцов записывает кодовые биты LDPC-кода в память 1002 в направлении строки, управляет начальной позицией считывания, когда кодовые биты считываются в направлении столбцов, и выполняет обратное перемежение скручивания столбцов.
То есть, в деперемежителе 55 скручивания столбцов, начальная позиция считывания для начала считывания кодовых битов надлежащим образом изменяться по отношению к каждому из множества столбцов и выполняется процесс обратной перестановки для возвращения позиций расположения битов кода, перестановленных посредством перемежения скручивания столбцов, в исходные позиции.
В этом случае, фиг. 125 иллюстрирует пример конфигурации памяти 1002, когда способом модуляции является 16APSK, 16QAM или тому подобное, и множитель b равен 1, как показано на фиг. 28. В этом случае, битовое число m одного символа равно 4 битам и память 1002 включает в себя четыре (=mb) столбца.
Деперемежитель 55 скручивания столбцов, (вместо мультиплексора 54), последовательно выполняет запись кодовых битов LDPC-кода, выработанного блоком 1001 обратной перестановки, в направлении строки в сторону нижних строк из первой строки памяти 1002.
Если запись кодовых битов, соответствующих одной кодовой длине, заканчивается, то деперемежитель 55 скручивания столбцов выполняет считывание кодовых битов в нисходящем направлении (направление столбца) из верхней части памяти 1002 к столбцам в направлении справа налево.
Тем не менее, деперемежитель 55 скручивания столбцов выполняет считывание кодовых битов из памяти 1002, используя начальную позицию записи для записи кодовых битов посредством перемежителя 24 скручивания столбцов на стороне передающего устройства 11 в качестве начальной позиции считывания кодовых бит.
То есть, если адрес позиции заголовка (верхней части) каждого столбца установлена в 0 и адрес каждой позиции в направлении столбцов представлен целым числом в порядке возрастания, когда способ модуляции является 16APSK или 16QAM и множитель b равен 1, в деперемежителе 55 скручивания столбцов начальная позиция чтения устанавливается как позиция, адрес которой равен 0 относительно самого левого столбца. В отношении второго столбца (с левой стороны), начальная позиция чтения устанавливается как позиция, адрес которой равен 2. Что касается третьего столбца, то начальная позиция чтения устанавливается как положение, адрес которой равен 4. В отношении четвертого столбца, начальная позиция чтения устанавливается как позиция, адрес которой равен 7.
Что касается столбцов, в которых начальные позиции считывания, являются позициями отличными от позиции, адрес которой равен 0, после чтения битов кода на самой нижней позиции, позиция возвращается к заголовку (позиция, адрес которой равен 0) и выполняется чтение на позиции непосредственно перед начальной позицией считывания. Затем, выполняется чтение из следующего (справа) столбца.
Посредством выполнения обратного перемежения скручивания столбцов, как описано выше, расположение битов кода, которые переставляются при перемежении скручивания столбцов, возвращается на исходные позиции.
Фиг. 126 представляет собой блок-схему, иллюстрирующую другой пример конфигурации битового обратного перемежителя 165, показанного на фиг. 116.
На чертежах, позиции, которые соответствуют случаю, показанному на фиг. 117, обозначены теми же ссылочными позициями, и их описание будет далее соответственно опущено.
То есть, битовый обратный перемежитель 165 на фиг. 126 имеет такую же конфигурацию, как в случае, показанном на фиг. 117, за исключением того, что вновь предусмотрен обратный перемежитель 1011 четности.
На фиг. 126 битовый обратный перемежитель 165 включает в себя мультиплексор (MUX) 54, деперемежитель 55 скручивания столбцов и обратный перемежитель 1011 четности и выполняет битовое обратное перемежение кодовых битов LDPC-кода, поступающего из QAM декодера 164.
То есть, мультиплексор 54 выполняет процесс обратной перестановки (обратный процесс обработки перестановки), соответствующий процессу обработки перестановки, выполненному демультиплексором 25 передающего устройства 11, то есть, обратный процесс обработки перестановки для возвращения позиций битов кода, которые были изменены посредством выполнения процесса обработки перестановки, на исходные позиции по отношению к LDPC-коду, поступающего из QAM декодера 164, и поставляет LDPC-код, полученный как результат, в деперемежитель 55 скручивания столбцов.
Деперемежитель 55 скручивания столбцов осуществляет процесс обратного перемежения скручивания столбцов, соответствующий перемежению скручивания столбцов, как процесс перегруппировки, выполненный перемежителем 24 скручивания столбцов передающего устройства 11, по отношению к LDPC-коду, поставленного из мультиплексора 54.
LDPC-код, который получают как результат перемежения скручивания столбцов, поставляется из деперемежителя 55 скручивания столбцов в обратный перемежитель 1011 четности.
Обратный перемежитель 1011 четности выполняет обратное перемежение четности (обратный процесс обработки перемежения четности), соответствующий процессу перемежения четности, выполняемого перемежителем 23 четности передающего устройства 11, то есть обратное перемежение четности для возврата позиций битов кода LDPC-кода, расположение которых было изменено посредством выполнения процесса перемежения четности, на исходные позиции по отношению к битам кода после перемежения скручивания столбцов в деперемежителе 55 скручивания столбцов.
LDPC-код, который получают как результат выполнения процесса обратного перемежения четности, подается из обратного перемежителя 1011 четности в LDPC декодер 166.
Таким образом, в битовом деперемежителе 165 на фиг. 126, LDPC-код, в котором выполнены процесс обратной перестановки, процесс обратного перемежения скручивания столбцов и процесс перемежения четности, то есть, LDPC-код, который получают путем LDPC-кодирования в соответствии с матрицей H контроля четности, поставляется в LDPC декодер 166.
LDPC декодер 166 выполняет LDPC декодирование LDPC-кода, поступившего из битового деперемежителя 165 с использованием матрицы H контроля четности, при кодировании LDPC посредством LDPC-кодера 115 передающего устройства 11. То есть, LDPC декодер 166 выполняет LDPC декодирование LDPC-кода из битового деперемежителя 165 путем использования матрицы H контроля четности, где использовалась для LDPC-кодирования посредством LDPC-кодера 115 передающего устройства 11 или посредством использования преобразованной матрицы контроля четности, полученной путем выполнения, по меньшей мере, замены столбца, в соответствии с процессом перемежения четности по отношению к матрице H контроля четности.
Как показано на фиг. 126, LDPC-код, который получают путем LDPC-кодирования в соответствии с матрицей H контроля четности, подается из (деперемежителя 1011 четности) битового деперемежителя 165 в LDPC декодер 166. По этой причине, когда LDPC декодирования LDPC-кода выполняется с использованием матрицы H контроля четности, применяя LDPC-кодер 115 передающего устройства 11 для выполнения LDPC-кодирования, LDPC декодер 166 может быть сконфигурирован устройством декодирования, выполняющего LDPC декодирование в соответствии с полной последовательностью способа декодирования для последовательного выполнения операций сообщений (сообщение узла проверки и сообщение переменного узла) для каждого узла или устройства декодирования, выполняющего LDPC декодирование в соответствии с полным параллельным способом декодирования для одновременного (параллельного) выполнения операции сообщений для всех узлов.
В LDPC декодере 166, когда LDPC декодирование LDPC-кода выполняется с использованием преобразованной матрицы контроля четности, полученный путем выполнения, по меньшей мере, перестановкой столбца, в соответствии с процессом перемежения четности по отношению к матрице H контроля четности, используемой LDPC-кодером 115 передающее устройство 11 для выполнения LDPC-кодирования, LDPC декодер 166 может быть сконфигурирован с помощью устройства декодирования (фиг. 122), которое является устройством декодирования архитектуры одновременного выполнения Ρ (или делитель Р, кроме 1) операций узла проверки и операций переменного узла, и имеет блок 310 перестановки данных приема для выполнения той же операции перестановки столбца, что и перестановка столбца для получения преобразованной матрицы контроля четности по отношению к LDPC-коду, и переставляет кодовые биты LDPC-кода.
Как показано на фиг. 126, для удобства объяснения, представлены отдельно мультиплексор 54, который выполняет процесс обратной перестановки, деперемежитель 55 скрещивания столбцов, который выполняет процесс обратного перемежения скрещивания столбцов, и деперемежитель 1011 четности, который выполняет процесс обратного перемежения четности. Тем не менее, два или более элементов мультиплексора 54, деперемежителя-55 скручивания столбцов и деперемежитель 1011 четности могут быть сконфигурированы как единое целое, аналогично перемежителю 23 четности, перемежителю 24 скручивания столбцов и демультиплексору 25 в передающем устройстве 11.
Более того, в случае, когда битовый перемежитель 116 (фиг. 8) передающего устройства 11 выполнен с возможностью не включать в себя перемежитель 23 четности и перемежитель 24 скручивания столбцов, на фиг. 126, то битовый деперемежитель 165 может быть выполнен с возможностью не включать в себя деперемежитель 55 скручивания столбцов и деперемежитель 1011 четности.
Даже в этом случае, LDPC декодер 166 может быть сконфигурирован с устройством декодирования полного последовательного способа декодирования для выполнения декодирования LDPC с использованием матрицы Η контроля четности, устройством декодирования полного параллельного способа декодирования для выполнения декодирования LDPC с использованием матрицы Η контроля четности и устройством декодирования (фиг. 122), имеющие блок 310 перестановки данных приема, который выполняет LDPC декодирование посредством одновременных Ρ вычислений узла проверки и вычислений переменного узла с использованием преобразованной матрицы Н' контроля четности.
Пример конфигурации приемной системы
Фиг. 127 представляет собой блок-схему, иллюстрирующую первый пример конфигурации приемной системы, которая может быть применена к принимающему устройству 12.
Как показано на фиг. 127, приемная система включает в себя получающий блок 1101, блок 1102 обработки декодирования передающего тракта и блок 1103 обработки декодирования информации источника.
Получающий блок 1101 получает сигнал, содержащий LDPC-код, полученный путем выполнения, по меньшей мере, LDPC-кодирования по отношению к LDPC целевым данным, таким как данные изображения или звуковые данные программы, переданные по передающему тракту (канал связи) не показано на чертежах, например, посредством наземного цифрового вещания, спутникового цифрового вещания, по CATV сети, интернет или других сетей, и поставляет сигнал в блок 1102 обработки декодирования передающего тракта.
В этом случае, когда сигнал, полученный получающим блоком 1101, передан вещательной станцией посредством земной волны, спутниковой волны или по CATV сети (кабельное телевидение), получающий блок 1101 конфигурируется с помощью тюнера и STB (телеприставки). Когда сигнал, полученный с помощью получающего блока 1101, передается из веб-сервера посредством многоадресной передачи, как EPTV (телевидение в сетях передачи данных по протоколу IP), получающий блок 1101 конфигурируется с помощью сетевого I/F (интерфейс), такого как NIC (сетевая интерфейсная карта).
Блок 1102 обработки декодирования передающего тракта соответствует принимающему устройству 12. Блок 1102 обработки декодирования передающего тракта выполняет процесс декодирования канала передачи, включающий в себя процесс, по меньшей мере, обработки для коррекции ошибок, сгенерированных в тракте передачи, по отношению к сигналу, полученному получающим блоком 1101 по передающему тракту, и поставляет сигнал, полученный как результат, в блок 1103 обработки декодирования информации источника.
То есть, сигнал, который получен получающим блоком 1101 по передающему тракту, является сигналом, который получают путем выполнения, по меньшей мере, процесса кодирования с исправлением ошибок для коррекции ошибок, сгенерированных в тракте передачи. Блок 1102 обработки декодирования передающего тракта выполняет процесс декодирования передающего тракта, например, процесс коррекции ошибок в отношении сигнала.
Так как выполняется процесс кодирования с исправлением ошибок, например, LDPC-кодирование или ВСН кодирование, то в этом случае, выполняется процесс кодирования с исправлением ошибок, по меньшей мере, при LDPC-кодировании.
Процесс обработки декодирования передающего тракта включает в себя демодуляцию сигнала модуляции.
Блок 1103 обработки декодирования информации источника выполняет процесс обработки декодирования информации источника, включающий в себя, по меньшей мере, процесс обработки распаковки сжатой информации в исходную информацию, по отношению к сигналу, к которому была применена обработка декодирования передающего тракта.
То есть, процесс кодирования со сжатием, что сжимает информацию, может быть выполнен по отношению к сигналу, полученному получающим блоком 1101 по передающему тракту, для уменьшения количества данных изображения или звука, соответствующий информации. В этом случае, блок 1103 обработки декодирования информации источника выполняет обработку декодирования информации источника, например, обработку (процесс расширения) для распаковки сжатой информации в исходную информацию по отношению к сигналу, к которому была применена обработка декодирования передающего тракта.
Когда кодирование со сжатием не выполняется по отношению к сигналу, полученному получающим блоком 1101 по передающему тракту, процесс обработки распаковки сжатой информации в исходную информацию не выполняется в блоке 1103 обработки декодирования информации источника.
В этом случае, как обработка распаковки, например, применяется MPEG декодирование. При обработке декодирования передающего тракта, в дополнение к обработке распаковки, может быть использован процесс дескремблирования.
В приемной системе, которая сконфигурирована так, как описано выше, в получающем блоке 1101 сигнал, к которому применен процесс кодирования со сжатием, такой как, кодирование MPEG и кодирование с исправлением ошибок, такой как Перекодирование по отношению к данным, таким как изображение или звук, получается по передающему тракту и подается в блок 1102 обработки декодирования передающего тракта.
В блоке 1102 обработки декодирования передающего тракта выполняется тот же процесс обработки, что и в приемном устройстве 12, в передающем тракте при выполнении декодирования по отношению к сигналу, поданному из принимающего блока 1101, и сигналу, полученному как результат, поставленному в блок 1103 обработки декодирования информации.
В блоке 1103 обработки декодирования информации источника выполняется процесс обработки декодирования информации источника, такой как MPEG декодирование, по отношению к сигналу, поданному из блока 1102 обработки декодирования передающего тракта, и выводится изображение или звук, полученные как результат.
Приемная система, показанная на фиг. 127 и описанная выше, может быть применена к телевизионному тюнеру для приема телевизионного вещания, соответствующего цифровому вещанию.
Каждый из получающего блока 1101, блока 1102 обработки декодирования передающего тракта и блока 1103 обработки декодирования информации источника может быть сконфигурирован как одно независимое устройство (аппаратное средство (IC (интегральная схема) и т.п.) или программный модуль).
Что касается получающего блока 1101, блока 1102 обработки декодирования передающего тракта и блока 1103 обработки декодирования информации источника, каждый набор получающего блока 1101 и блока 1102 обработки декодирования передающего тракта, набор блока 1102 обработки декодирования передающего тракта и блока 1103 обработки декодирования информации источника и набор получающего блока 1101, блока 1102 обработки декодирования передающего тракта и блока 1103 обработки декодирования информации источника могут быть сконфигурированы как одно независимое устройство.
Фиг. 128 представляет собой блок-схему, иллюстрирующую второй пример конфигурации приемной системы, который может быть применен к приемному устройству 12.
На чертежах участки, которые соответствуют случаю, показанному на фиг. 127, обозначены теми же ссылочными позициями, и их описание будет соответственно далее опущено.
Приемная система, показанная на фиг. 128, является общей для случая, показанного на фиг. 127, в том, что обеспечиваются получающий блок 1101, блок 1102 обработки декодирования передающего тракта и блок 1103 обработки декодирования информации источника и отличается от случая, показанного на фиг. 127, тем, что предусмотрен новый выходной блок 1111.
Выходной блок 1111 представляет собой устройство дисплея для отображения изображения, или громкоговоритель для вывода звука, и выводит изображение или звук, соответствующий выходному сигналу, из блока 1103 обработки декодирования информации источника. То есть выходной блок 1111 отображает изображение или вырабатывает звук.
Приемная система, показанная на фиг. 128 и описанная выше, может быть применена к телевизору (телевизионный приемник), принимающий сигналы телевизионного вещания, соответствующие цифровому вещанию, или к радиоприемнику, принимающий сигналы радиовещания.
Когда процесс кодирования со сжатием не выполняется по отношению к сигналу, полученного получающим блоком 1101, сигнал, который выводится посредством блока 1102 обработки декодирования передающего тракта, поставляется в выходной блок 1111.
Фиг. 129 представляет собой блок-схему, иллюстрирующую третий пример конфигурации приемной системы, который может быть применен к приемному устройству 12.
На чертежах, позиции, которые соответствуют случаю, показанному на фиг. 127, обозначены теми же ссылочными позициями, и их описание будет соответственно далее опущено.
Приемная система, показанная на фиг. 129, является общей в случае, показанном на фиг. 127, тем, что применяются получающий блок 1101 и блок 1102 обработки декодирования передающего тракта.
Тем не менее, приемная система, показанная на фиг. 129, отличается от случая, показанного на фиг. 127, тем, что блок 1103 обработки декодирования информации источника не предусмотрен и используется новый блок 1121 записи.
Блок 1121 записи записывает (хранит) сигнал (например, TS пакеты TS MPEG), выработанный блоком 1102 обработки декодирования передающего тракта, на носителе записи (хранения) мультимедийной информации, таком как оптический диск, жесткий диск (магнитный диск) и флэш-память.
Приемная система, показанная на фиг. 129 и описанная выше, может быть применена к рекордеру, который записывает сигналы телевизионного вещания.
Как показано на фиг. 129, приемная система выполнена посредством наличия блока 1103 обработки декодирования информации источника и может записывать сигнал, полученный выполнением процесса обработки декодирования информации источника, с помощью блока 1103 обработки декодирования информации источника, то есть, изображение или звук, полученные посредством декодирования, посредством блока 1121 записи.
Вариант реализации компьютера
Далее приведено описание последовательности выполнения операций процесса обработки, который может быть выполнен посредством аппаратных средств или может быть выполнен с помощью программного обеспечения. В случае, когда последовательность выполнения операций процесса обработки выполняется с помощью программного обеспечения, программа, конфигурирующая программное обеспечение, устанавливается на компьютер общего назначения.
Таким образом, фиг. 130 иллюстрирует пример конфигурации варианта реализации компьютера, в котором установлена программа, выполняющая последовательность обработки.
Программа может быть заранее записана на жесткий диск 705 и ROM 703, соответствующего носителя записи, встроенного в компьютер.
В качестве альтернативы, программа может быть временно или постоянно сохранена (записана) на съемном носителе 711 информации, таком как гибкий диск, CD-ROM (компакт-диск только для чтения), (магнитооптический) диск МО, DVD (цифровой универсальный диск), магнитный диск и полупроводниковое запоминающее устройство. Съемный носитель 711 информации может быть предоставлен в качестве так называемого пакета программного обеспечения.
Программа устанавливается на компьютер со съемного носителя 711 информации. Кроме того, программа может быть передана с сайта загрузки в компьютер по беспроводной связи через искусственный спутник связи для цифрового спутникового вещания или может быть передана на компьютер по проводам через сеть, такую как LAN (локальная сеть) или интернет. Компьютер может принять программу, переданную как описано выше, блоком 708 связи и установить программу на встроенный жесткий диск 705.
Компьютер включает в себя CPU (центральный процессор) 702 встроенный в него. Интерфейс 710 ввода/вывода, соединенный с CPU 702 через шину 701. Если пользователь использует блок 707 ввода, реализованный с помощью клавиатуры, мыши и микрофона, и вводится команда через интерфейс 710 ввода/вывода, то CPU 702 выполняет программу, сохраненную в ROM (постоянное запоминающее устройство) 703, в соответствии с командой. В качестве альтернативы, CPU 702 загружает программу, сохраненную на жестком диске 705, программу, передаваемую по спутнику или сети, принятую блоком 708 связи, и устанавливает на жесткий диск 705, или программу, считанную со съемного носителя 711 информации, установленную на дисковод 709, и установленную на жестком диске 705 в RAM (оперативное запоминающее устройство) 704, и выполняет программу. Таким образом, CPU 702 выполняет обработку в соответствии с блок-схемой алгоритма, описанную выше, или процесс обработки, выполняемый в соответствии с конфигурациями блок-схемах, описанных выше. Кроме того, CPU 702 выводит результат обработки из блока 706 вывода, сконфигурированного с использованием LCD (жидкокристаллический дисплей) или громкоговорителя, передает результат обработки из блока 708 связи, и записывает результат обработки на жестком диске 705 через интерфейс 710 ввода/вывода в соответствии с необходимостью.
В настоящем описании, предусмотрена возможность выполнения этапов процесса обработки, описанные программой, чтобы заставить компьютер выполнять различные операции обработки во временной последовательности, в соответствии с порядком, описанным в блок-схемах алгоритма, и выполнять операции обработки параллельно или по отдельности (например, параллельные операции обработки или обработки с использованием объекта).
Программа может быть обработана с помощью одного компьютера или может быть обработана с помощью множества компьютеров распределенным образом. Программа может быть передана на удаленный компьютер и может быть выполнена.
Вариант осуществления изобретения не ограничен вариантами осуществления, описанными выше, и различные изменения и модификации могут быть сделаны без отступления от сущности и объема изобретения.
То есть, например, (таблица начальных значений матрицы контроля четности) вышеописанный новый LDPC-код может быть использован, даже если коммуникационный тракт 13 (фиг. 7) представляет собой спутниковый канал связи, поверхностную волну, кабель (проводная схема) и другие. Кроме того, новый LDPC-код, также может быть использован для передачи данных, отличных от цифрового вещания.
Перечень ссылочных позиций
11 передающее устройство
12 приемное устройство
23 перемежитель четности
24 перемежитель скручивания столбцов
25 демультиплексор
31 память
32 блок перестановки
54 мультиплексор
55 перемежитель скручивания столбцов
111 мультиплексор/режим адаптации
112 заполнитель
113 ВВ скремблер
114 ВСН кодер
115 LDPC-кодер
116 битовый перемежитель
117 QAM кодер
118 временной перемежитель
119 MISO/MIMO кодер
120 частотный перемежитель
121 ВСН кодер
122 LDPC-кодер
123 QAM кодер
124 частотный перемежитель
131 блок выделения ресурсов/формирователь кадров
132 блок OFDM генерирования
151 OFDM операционный блок
152 блок управления кадров
153 частотный деперемежитель
154 QAM декодер
155 LDPC декодер
156 ВСН декодер
161 частотный деперемежитель
162 MISO/MIMO декодер
163 временной деперемежитель
164 QAM декодер
165 битовый деперемежитель
166 LDPC декодер
167 ВСН декодер
168 ВВ дешифратор
169 блок удаления нулей
170 демультиплексор
300 память хранения данных ответвлений
301 селектор
302 блок вычисления узла проверки
303 схема циклического сдвига
304 память хранения данных ответвлений
305 селектор
306 память данных приема
307 блок вычисления переменного узла
308 схема циклического сдвига
309 блок вычисления декодирования слова
310 блок перестановки данных приема
311 блок перестановки декодированных данных
601 блок обработки процесса кодирования
602 блок хранения
611 блок установки скорости кодирования
612 блок считывания таблицы начальных значений
613 блок генерирования матрицы контроля четности
614 блок считывания битовой информации
615 операционный блок кодирования четности
616 блок управления
701 шина
702 CPU
703 ROM
704 RAM
705 жесткий диск
706 выходной блок
707 блок ввода
708 блок связи
709 драйвер
710 интерфейс ввода/вывода
711 съемный носитель информации
1001 блок обратной перестановки
1002 память
1011 деперемежитель четности
1101 получающий блок
1101 блок обработки процесса декодирования передающего тракта
1103 блок обработки процесса декодирования информации источника
1111 выходной блок
1121 блок записи