Область техники, к которой относится изобретение
Настоящая технология относится к устройствам обработки данных и способам обработки данных, и, более конкретно, к устройству обработки данных и способу обработки данных, которые позволяют улучшить, например, устойчивость к ошибкам данных.
Уровень техники
Коды LDPC (проверки четности с низкой плотностью) имеют высокие возможности по коррекции ошибок, и в настоящее время их начинают широко использовать в системах передачи данных, включающих в себя цифровую спутниковую широковещательную передачу, такую как DVB (цифровая широковещательная передача видеоданных)-S.2, которая воплощена, например в Европе (см., например, непатентный документ 1). Кроме того, рассматривается использование кодов LDPC при наземной цифровой широковещательной передаче следующего поколения.
Последние исследования показали, что коды LDPC, имеющие большую длину кода, обладают возможностями, приближающимися к пределу Шеннона, такими, как у турбокода и т.п. Кроме того, код LDPC отличается тем, что минимальное расстояние пропорционально его длине кода. Учитывая это, особенности кода LDPC имеют преимущества, состоящие в том, что вероятность ошибки блока является высокой, и мало вероятно возникают, так называемые, явления минимального уровня ошибок, которые наблюдают в характеристиках декодирования турбокодов и т.п.
Такие коды LDPC подробно описаны ниже. Коды LDPC представляют собой линейные коды, и не обязательно двоичные коды. В этом описании, однако, коды LDPC описаны, как двоичные коды.
Наиболее существенная особенность кода LDPC состоит в том, что матрица проверки четности, определяющая код LDPC, является разреженной. Здесь разреженная матрица представляет собой матрицу, которая имеет очень малое количество элементов матрицы, равных "1" (или матрицу, в которой большинство элементов равно "0").
На фиг.1 показан пример матрицы Н проверки четности кода LDPC.
В матрице Н проверки четности, показанной на фиг.1, вес каждого столбца.(вес столбца) (количество элементов равных "1") равен "3", и вес каждой строки (вес строки) равен "6".
При кодировании, когда используется код LDPC (кодирование LDPC), генерируют порождающую матрицу G, например, на основе матрицы Н проверки четности, и порождающую матрицу G умножают на двоичные информационные биты для генерирования кодового слова (кода LDPC).
В частности, устройство кодирования, которое выполняет кодирование LDPC, вначале вычисляет такую порождающую матрицу G, чтобы она удовлетворяла уравнению GHT=0, в отношении транспонированной матрицы HT матрицы Н проверки четности. Здесь, если порождающая матрица G представляет собой матрицу K×N, устройство кодирования умножает порождающую матрицу G на строку битов (вектор u) из информационных битов, состоящих из К битов, для генерирования кодового слова с (=uG), состоящего из N битов. Кодовое слово (код LDPC), генерируемое устройством кодирования, принимают на стороне приема через заданный канал.
Декодирование кода LDPC может быть выполнено путем использования алгоритма пропуска сообщений, который представляет собой алгоритм, рассматриваемый, как вероятностное декодирование Галлагера, и основано на распространении степени уверенности в, так называемом, графе Таннера, сформированном с переменными узлами (также называются узлами сообщения) и узлами проверки. Ниже переменные узлы и узлы проверки также, соответственно, называются просто узлами.
На фиг.2 показаны процедуры для декодирования кода LDPC.
Следует отметить, что реальное значение (LLR приема), представляющее логарифм отношения вероятности указывающей вероятность того, что значение i-ого знакового бита в коде LDPC (одно кодовое слово), принятом на стороне приема, равно "0", также будет называться принятым значением u0i в соответствующих случаях. Кроме того, сообщение, которое выводят от узла проверки, представлено, как uj, и сообщение, которое выводят от переменного узла, представлено, как vi.
Вначале, при декодировании кода LDPC, как показано на фиг.2, код LDPC принимают на этапе S11. Сообщение (сообщение узла проверки) uj инициируют, делая равным "0", и переменную k, которая представляет собой целое число, как периодически повторяющийся счетчик обработки, инициируют, сбрасывая в "0". Операция затем переходит на этап S12. На этапе S12, на основе принятого значения u0i, полученного в результате приема кода LDPC, выполняют вычисление, показанное в уравнении (1) (вычисление переменного узла), для определения сообщения (сообщение переменного узла) vi. Кроме того, на основе сообщения vi, выполняют вычисление (вычисление узла проверки), показанное в уравнении (2), для определения сообщения uj.
[Математическая формула 1]
[Математическая Формула 2]
В уравнении (1) и в уравнении (2), dv и dc представляют параметры, которые могут быть произвольно выбраны и представляют количество элементов, равных "1", в вертикальном направлении (в столбце) и в горизонтальном направлении (строке) в матрице Н проверки четности, соответственно. В случае кода (3, 6), например, dv равен 3, и dc равен 6.
При вычислении переменного узла, показанного в уравнении (1), и при вычислении узла проверки, показанного в уравнении (2), сообщения, которые вводят от ребер (линии, каждая из которых соединяет переменный узел и проверочный узел), которые готовы для вывода сообщений, не подвергают вычислениям. Поэтому, диапазон вычислений составляет от 1 до dv-1 или от 1 до dc-1. На практике, вычисление проверочного узла, показанное в уравнении (2), выполняют путем подготовки заранее таблицы функции R (v1, v2) показанной в уравнении (3), определенной одним выходом для двух входных данных v1 и v2, и постоянно (рекурсивно) используя таблицу, как показано в уравнении (4).
[Математическая формула 3]
[Математическая формула 4]
Кроме того, на этапе S12, выполняют последовательное приращение переменной к только на "1", и операция затем переходит на этап S13. На этапе S13 выполняют проверку для определения, превышает ли переменная k заданное число С повторений декодирования. Если определяют, что переменная k не больше, чем С на этапе S13, операция возвращается на этап S12, и повторяют те же процедуры, как описаны выше.
Если определяют, что переменная k больше, чем С на этапе S13, операция переходит на этап S14, и вычисление, показанное в уравнении (5), выполняют для определения сообщения vi, в качестве результата декодирования, который должен быть выведен в конечном итоге. Сообщение vi затем выводят, и операция декодирования кода LDPC подходит к концу.
[Математическая формула 5]
Здесь вычисление, показанное в уравнении (5), выполняют, используя сообщения uj от всех ребер, соединенных с переменными узлами, в отличие от вычисления переменного узла, показанного в уравнении (1).
На фиг.3 показан пример матрицы Н проверки четности кода LDPC (3, 6) (скорость кода 1/2, длина кода 12).
В матрице Н проверки четности, показанной на фиг.3, вес столбца равен 3, и вес строки равен 6, как и в случае, представленном на фиг.1.
На фиг.4 показан граф Таннера матрицы Н проверки четности, показанной на фиг.3.
На фиг.4 каждый "+" представляет проверочный узел, и каждый "=" представляет переменный узел. Проверочные узлы и переменные узлы соответствуют строкам и столбцам, соответственно, матрицы Н проверки четности. Соединительные линии между проверочными узлами и переменными узлами представляют собой ребра, и они эквивалентны элементам "1" матрицы проверки четности.
В частности, когда элемент в j-ой строке и i-ом столбце в матрице проверки четности равен 1, переменный узел (представленный знаком "-"), то есть, i-ый сверху, и проверочный узел (представленный "+"), то есть, j-ый сверху, соединены ребром на фиг.4. Ребро указывает, что знаковый бит, соответствующий переменному узлу, имеет ограничение, соответствующее проверочному узлу.
В соответствии с алгоритмом "сумма-произведение", который представляет собой способ декодирования кодов LDPC, вычисление переменного узла и вычисление проверочного узла выполняют многократно.
На фиг.5 показано вычисление переменного узла, который выполняют в переменном узле.
В переменном узле сообщение vi, соответствующее ребру, которое должно быть вычислено, может быть определено путем вычисления переменного узла, показанного в уравнении (1), используя сообщения u1 и u2 из остальных ребер, соединенных с переменным узлом, и принятое значение u0i. Сообщение, соответствующее любому из других ребер, может быть определено так же, как и представлено выше.
На фиг.6 показано вычисление проверочного узла, выполняемого в проверочном узле.
Вычисление проверочного узла, показанное в уравнении (2), также может быть выражено уравнением (6), используя взаимозависимость, выраженную уравнением a×b={ln(|a|)+ln(|b|)}×знак (а)×знак (b). Здесь, знак (x) равен 1, когда х≥0, и равен -1, когда х<0.
[Математическая формула 6]
Когда х≥0, уравнение, φ-1(х)=2tanh-1(е-x), удовлетворяется, где функция φ(х) определена, как φ(х)=ln(tanh(х/2)). В соответствии с этим, уравнение (6) может быть преобразовано в уравнение (7).
[Математическая формула 7]
В проверочном узле вычисление проверочного узла, показанного в уравнении (2), выполняют в соответствии с уравнением (7).
В частности, в проверочном узле, сообщение uj, соответствующее ребру, которое должно быть вычислено, может быть определено путем вычисления проверочного узла, показанного в уравнении (7), используя сообщения v1, v2, v3, v4 и v5 от других ребер, соединенных с проверочным узлом, как показано на фиг.6. Сообщение, соответствующее любому из других ребер, может быть определено так же, как описано выше.
Следует отметить, что функция φ(х) в уравнении (7) может быть выражена уравнением φ(х)=ln((ex+1)/(ех-1)), и φ(х)=φ-1(х) удовлетворяется, когда х>0. Когда функцию φ(х) и φ-1(х) воплощают в аппаратных средствах, можно использовать LUT (справочные таблицы), но обе таблицы представляют собой идентичные LUT.
Список литературы
Непатентный документ
НЕПАТЕНТНЫЙ ДОКУМЕНТ 1: DVB-S.2: ETSI EN 302 307 V1.1.2 (2006-06)
Раскрытие изобретения
Задачи, решаемые изобретением
Коды LDPC используются в DVB-S.2, которые представляют собой стандарты для цифровой спутниковой широковещательной передачи, и в DVB-T.2, которые представляют собой стандарты для цифровой наземной широковещательной передачи. Коды LDPC также планируются использовать в DVB-C.2, которые представляют собой стандарты для следующего поколения цифровой широковещательной передачи CATV (кабельного телевидения).
При цифровой широковещательной передаче, в соответствии со стандартами DVB, такими как DVB-S.2, код LDPC преобразуют (символизируют) в символы ортогональной модуляции (цифровая модуляция), такой как QPSK (квадратурная манипуляция со сдвигом фазы) и передают символы, отображенные на точки сигнала.
При выражении символами кода LDPC знаковые биты кода LDPC переставляют по два или больше знаковых бита одновременно, и переставленные знаковые биты используются в качестве символьных битов.
Существуют различные виды способов, предполагаемых, в качестве способов перестановки знаковых битов, для выражения кодов LDPC в виде символов, и некоторые из них, например, установлены в DVB-T.2.
В то же время, DVB-T.2 представляют собой стандарты для цифровой широковещательной передачи, предназначенной для фиксированных оконечных устройств, таких как телевизионные приемники, установленные в домах, и могут быть не пригодны для цифровой широковещательной передачи, предназначенной для портативных оконечных устройств.
В частности, портативные оконечные устройства должны иметь меньшие размеры схемы, чем стационарные оконечные устройства, и должны быть разработаны для потребления меньшей энергии. Поэтому, для уменьшения нагрузки, требуемой при выполнении операций, таких как декодирование кодов LDPC в каждом портативном оконечном устройстве при цифровой широковещательной передаче для портативных оконечных устройств, количество повторений при декодировании (количество С повторений при декодировании) каждого кода LDPC, длина кода каждого кода LDPC и т.п. могут быть ограничены меньшими значениями, чем в случае цифровой широковещательной передачи для стационарных оконечных устройств.
При таких ограничениях, все еще требуется поддерживать определенный уровень устойчивости к ошибкам.
Настоящая технология была разработана с учетом таких обстоятельств, и предназначена для обеспечения для данных, таких как коды LDPC, более высокой устойчивости к ошибкам.
Решение задач
Устройство/способ обработки данных, в соответствии с первым аспектом настоящей технологии, включает в себя: модуль/этап кодирования для кодирования LDPC для генерирования кода LDPC, имеющего длину кода 16200 битов, и скорость кода 8/15, на основе матрицы проверки четности для кодов LDPC; и модуль/этап перестановки для смены мест знаковых битов кода LDPC, кодированного в модуле/на этапе кодирования с символьными битами для символа, соответствующего одной из 256 точек сигнала, определенных по 256QAM. Код LDPC, кодированный в модуле/на этапе кодирования, включает в себя информационные биты и биты проверки четности, и матрица проверки четности включает в себя информационный участок матрицы, соответствующий информационным битам, и участок матрицы проверки четности, соответствующий битам проверки четности. Информационный участок матрицы представлен таблицей исходного значения матрицы проверки, и таблица исходного значения матрицы проверки представляет собой таблицу, которая представляет положения элементов "1" участка информационной матрицы через интервалы 360 столбцов, и содержит
32 384 430 591 1976 1296 1999 2137 2175 3638 4214 4304 4486 4662 4999 5174 5700 6969 7115 7138 7189
1881 1788 1910 2724 4504 4928 4973 5616 5686 5718 5846 6523 6893 6994 7074 7100 7277 7399 7476 7480 7537
2791 2824 2927 4196 4298 4800 4948 5361 5401 5688 5818 5862 5969 6029 6244 6645 6962 7203 7302 7454 7534
574 2056 1826 1461 2069 2387 2794 3349 3366 4951 5826 5834 5903 6640 6762 6786 6859 7043 7418 7431 7554
14 178 675 823 890 930 1209 1311 2898 4339 4600 5203 6485 6549 6970 7208 7218 7298 7454 7457 7462
4075 4188 7313 7553
5145 6018 7148 7507
3198 4858 6983 7033
3170 5126 5625 6901
2839 6093 7071 7450
11 3735 5413
2497 5400 7238
2067 5172 5714
1889 7173 7329
1795 2773 3499
2695 2944 6735
3221 4625 5897
1690 6122 6816
5013 6839 7358
1601 6849 7415
2180 7389 7543
2121 6838 7054
1948 3109 5046
272 1015 7464
В модуле/на этапе перестановки заменяют бит b0 битом y2, бит b1 битом y6, бит b2 битом y1, бит b3 битом y0, бит b4 битом y7, бит b5 битом y5, бит b6 битом y3 и бит b7 битом y4, где восьми знаковым битам, которые содержатся в восьми модулях хранения, каждый из которых имеет емкость 16200/8 битов, и которые считывают из соответствующих модулей хранения по одному биту, каждому назначают один символ, при этом (#i+1)-ый бит, считая от самого верхнего бита из восьми знаковых битов, выражается, как бит b#i, и (#i+1)-ый бит, содержащийся в самом верхнем бите из восьми символьных битов одного символа, выражен как бит y#i.
В описанном выше первом аспекте кодирование LDPC для генерирования кода LDPC, имеющего длину кода 16200 битов и скорость кода 8/15, выполняют на основе матрицы проверки четности для кодов LDPC, и знаковые биты кода LDPC заменяют символьными битами символа, соответствующего одной из 256 точек сигнала, определенных 256QAM. Код LDPC включает в себя информационные биты и биты четности, и матрица проверки четности включает в себя информационный участок матрицы, соответствующий информационным битам, и участок четности матрицы, соответствующий битам четности. Информационный участок матрицы представлен таблицей исходного значения матрицы проверки, и таблица исходного значения матрицы проверки представляет собой таблицу, которая представляет положения элементов "1" информационного участка матрицы через интервалы 360 столбцов, и содержит
32 384 430 591 1976 1296 1999 2137 2175 3638 4214 4304 4486 4662 4999 5174 5700 6969 7115 7138 7189
1881 1788 1910 2724 4504 4928 4973 5616 5686 5718 5846 6523 6893 6994 7074 7100 7277 7399 7476 7480 7537
2791 2824 2927 4196 4298 4800 4948 5361 5401 5688 5818 5862 5969 6029 6244 6645 6962 7203 7302 7454 7534
574 2056 1826 1461 2069 2387 2794 3349 3366 4951 5826 5834 5903 6640 6762 6786 6859 7043 7418 7431 7554
14 178 675 823 890 930 1209 1311 2898 4339 4600 5203 6485 6549 6970 7208 7218 7298 7454 7457 7462
4075 4188 7313 7553
5145 6018 7148 7507
3198 4858 6983 7033
3170 5126 5625 6901
2839 6093 7071 7450
11 3735 5413
2497 5400 7238
2067 5172 5714
1889 7173 7329
1795 2773 3499
2695 2944 6735
3221 4625 5897
1690 6122 6816
5013 6839 7358
1601 6849 7415
2180 7389 7543
2121 6838 7054
1948 3109 5046
272 1015 7464
В случае, когда восемь знаковых битов, которые сохранены в восьми модулях хранения, каждый из которых имеет емкость хранения 16200/8 битов, и которые считывают из соответствующих модулей хранения по одному биту, каждому назначают один символ, (#i+1)-ый бит, отсчитанный от самого верхнего бита из восьми знаковых битов, выражается в качестве бита b#i, и (#i+1)-ый бит, отсчитанный от самого верхнего бита из восьми символьных битов для одного символа, выражается в качестве бита y#i, причем бит b0 заменяют битом y2, бит b1 заменяют битом y6, бит b2 заменяют битом y1, бит b3 заменяют битом y0, бит b4 заменяют битом y7, бит b5 заменяют битом y5, бит b6 заменяют битом y3 и бит b7 заменяют битом y4.
Устройство/способ обработки данных, в соответствии со вторым аспектом настоящей технологии, включает в себя: модуль/этап обратной перестановки для замены символьных битов символа, соответствующего одной из 256 точек сигнала, определенных 256QAM, знаковыми битами кода LDPC, имеющего длину кода 16200 битов и скорость кода 8/15; и модуль/этап декодирования для декодирования кода LDPC на основе матрицы проверки четности для кодов LDPC после перестановки кода LDPC модулем/этапом обратной перестановки. Модуль/этап обратной перестановки заменяет бит y2 битом b0, бит y6 битом b1, бит y1 битом b2, бит y0 битом b3, бит y7 битом b4, бит y5 битом b5, бит y3 битом b6 и бит y4 битом b7, где восемь знаковых битов содержатся в восьми модулях хранения, каждый из которых имеет емкость хранения 16200/8 битов, и которые считывают из соответствующих модулей хранения по одному биту, каждому из которых назначен один символ, (#i+1)-ый бит, отсчитанный от самого верхнего бита из восьми знаковых битов, выражен в качестве бита b#i, и (#i+1)-ый бит, отсчитанный от верхнего бита из восьми символьных битов одного символа, выражен в качестве бита y#i. Код LDPC включает в себя информационные биты и биты четности, и матрица проверки четности включает в себя информационный участок матрицы, соответствующий информационным битам, и участок четности матрицы, соответствующий битам четности. Информационный участок матрицы представлен таблицей исходного значения матрицы проверки, и таблица исходного значения матрицы проверки представляет собой таблицу, которая представляет положения элементов "1" участка информационной матрицы через интервалы 360 столбцов, и содержит
32 384 430 591 1976 1296 1999 2137 2175 3638 4214 4304 4486 4662 4999 5174 5700 6969 7115 7138 7189
1881 1788 1910 2724 4504 4928 4973 5616 5686 5718 5846 6523 6893 6994 7074 7100 7277 7399 7476 7480 7537
2791 2824 2927 4196 4298 4800 4948 5361 5401 5688 5818 5862 5969 6029 6244 6645 6962 7203 7302 7454 7534
574 2056 1826 1461 2069 2387 2794 3349 3366 4951 5826 5834 5903 6640 6762 6786 6859 7043 7418 7431 7554
14 178 675 823 890 930 1209 1311 2898 4339 4600 5203 6485 6549 6970 7208 7218 7298 7454 7457 7462
4075 4188 7313 7553
5145 6018 7148 7507
3198 4858 6983 7033
3170 5126 5625 6901
2839 6093 7071 7450
11 3735 5413
2497 5400 7238
2067 5172 5714
1889 7173 7329
1795 2773 3499
2695 2944 6735
3221 4625 5897
1690 6122 6816
5013 6839 7358
1601 6849 7415
2180 7389 7543
2121 6838 7054
1948 3109 5046
272 1015 7464
В описанном выше втором аспекте символьные биты символа, соответствующего одной из 256 точек сигнала, определенных 256QAM, заменяют знаковыми битами кода LDPC, имеющего длину кода 16200 битов и скорость кода 8/15, и переставленный код LDPC декодируют на основе матрицы проверки четности для кодов LDPC. Модуль/этап обратной перестановки заменяет бит y2 битом b0, бит y6 битом b1, бит y1 битом b2, бит y0 битом b3, бит y7 битом b4, бит y5 битом b5, бит y3 битом b6 и бит y4 битом b7, где восемь знаковых битов содержатся в восьми модулях хранения, каждый из которых имеет емкость 16200/8 битов, и которые считывают из соответствующих модулей хранения по одному биту, каждому из которых назначен один символ, (#i+1)-й бит, отсчитанный от верхнего бита из этих восьми знаковых битов, выражен в качестве бита b#i, и (#i+1)th бит, отсчитанный от верхнего бита из восьми символьных битов одного символа, выражен в качестве бита y#i. Код LDPC включает в себя информационные биты и биты четности, и матрица проверки четности включает в себя информационный участок матрицы, соответствующий информационным битам, и участок четности матрицы, соответствующий битам четности. Информационный участок матрицы представлен таблицей исходного значения матрицы проверки, и таблица исходного значения матрицы проверки представляет собой таблицу, которая представляет положения элементов "1" участка информационной матрицы с промежутками в 360 столбцов, и содержит
32 384 430 591 1976 1296 1999 2137 2175 3638 4214 4304 4486 4662 4999 5174 5700 6969 7115 7138 7189
1881 1788 1910 2724 4504 4928 4973 5616 5686 5718 5846 6523 6893 6994 7074 7100 7277 7399 7476 7480 7537
2791 2824 2927 4196 4298 4800 4948 5361 5401 5688 5818 5862 5969 6029 6244 6645 6962 7203 7302 7454 7534
574 2056 1826 1461 2069 2387 2794 3349 3366 4951 5826 5834 5903 6640 6762 6786 6859 7043 7418 7431 7554
14 178 675 823 890 930 1209 1311 2898 4339 4600 5203 6485 6549 6970 7208 7218 7298 7454 7457 7462
4075 4188 7313 7553
5145 6018 7148 7507
3198 4858 6983 7033
3170 5126 5625 6901
2839 6093 7071 7450
11 3735 5413
2497 5400 7238
2067 5172 5714
1889 7173 7329
1795 2773 3499
2695 2944 6735
3221 4625 5897
1690 6122 6816
5013 6839 7358
1601 6849 7415
2180 7389 7543
2121 6838 7054
1948 3109 5046
272 1015 7464
Устройство обработки данных может представлять собой независимое устройство, или может представлять собой внутренний блок в отдельном устройстве.
Эффекты изобретения
В соответствии с настоящей технологией, может быть повышена устойчивость к ошибкам.
Краткое описание чертежей
На фиг.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 показана схема для пояснения операции демультиплексора 25.
На фиг.19 показана схема для пояснения операции демультиплексора 25.
На фиг.20 показана схема, представляющая граф Таннера для декодировании кода LDPC.
На фиг.21 показана схема, представляющая матрицу HT четности, имеющую ступенчатую структуру, и граф Таннера, соответствующий матрице HT четности.
На фиг.22 показана схема, представляющая матрицу HT четности матрицы Н проверки четности, соответствующую коду LDPC, подвергнутому перемежению четности.
На фиг.23 показана схема, представляющая преобразованную матрицу проверки четности.
На фиг.24 показана схема для пояснения операция перемежителя 24 со скручиванием столбцов.
На фиг.25 показана схема, представляющая заданное количество столбцов для перемежения со скручиванием столбцов в запоминающем устройстве 31, и адреса положений начала записи.
На фиг.26 показана схема, представляющая требуемое количество столбцов для перемежения со скручиванием столбцов в запоминающем устройстве 31, и адреса положений начала записи.
На фиг.27 показана блок-схема последовательности операций для пояснения операций, которые будут выполнены в перемежителе 116 битов и кодере 117 QAM.
На фиг.28 показана схема, представляющая модель канала, используемого при моделировании.
На фиг.29 показана схема, представляющая взаимосвязь между частотами ошибки, полученными при моделировании, и частотой Допплера дрожания.
На фиг.30 показана схема, представляющая взаимосвязь между скоростями ошибки, полученными при моделировании, и частотой fa Допплера дрожания.
На фиг.31 показана блок-схема, представляющая пример структуры кодера 115 LDPC.
На фиг.32 показана блок-схема последовательности операций для пояснения операции кодера для кодера 115.
На фиг.33 показана схема, представляющая пример таблицы исходного значения матрицы проверки для кодовой скорости 1/4 и длины кода 16200.
На фиг.34 показана схема, представляющая способ определения матрицы Н проверки четности из таблицы исходного значения матрицы проверки.
На фиг.35 показана схема, представляющая пример таблицы исходного значения матрицы проверки для кодовой скорости 1/5 и длины кода 16200.
На фиг.36 показана схема, представляющая пример таблицы исходного значения матрицы проверки для кодовой скорости 4/15 и длины кода 16200.
На фиг.37 показана схема, представляющая пример таблицы исходного значения матрицы проверки для кодовой скорости 1/3 и длины кода 16200.
На фиг.38 показана схема, представляющая пример таблицы исходного значения матрицы проверки для кодовой скорости 2/5 и длины кода 16200.
На фиг.39 показана схема, представляющая пример таблицы исходного значения матрицы проверки для кодовой скорости 4/9 и длины кода 16200.
На фиг.40 показана схема, представляющая пример таблицы исходного значения матрицы проверки для кодовой скорости 7/15 и длины кода 16200.
На фиг.41 показана схема, представляющая пример таблицы исходного значения матрицы проверки для кодовой скорости 8/15 и длины кода 16200.
На фиг.42 показана схема, представляющая пример таблицы исходного значения матрицы проверки для кодовой скорости 3/5 и длины кода 16200.
На фиг.43 показана схема, представляющая пример таблицы исходного значения матрицы проверки для кодовой скорости 2/3 и длины кода 16200.
На фиг.44 показана схема, представляющая пример графа Таннера совокупности в порядке последовательности, в которой вес столбца равен 3, и вес строки равен 6.
На фиг.45 показана схема, представляющая пример графа Таннера совокупности многореберного типа.
На фиг.46 показана схема, представляющая минимальные длины цикла и пороговые значения рабочей характеристики матриц проверки четности кодов LDPC, имеющих длину кода 16200.
На фиг.47 показана схема для пояснения матрицы проверки четности кода LDPC, имеющего длину кода 16200.
На фиг.48 показана схема для пояснения матрицы проверки четности кода LDPC, имеющего длину кода 16200.
На фиг.49 показана схема, представляющая результаты моделирования, выполненного для измерения BER кодов LDPC, имеющих длину кода 16200.
На фиг.50 показана схема для пояснения операции перестановки в соответствии с существующими способами.
На фиг.51 показана схема для пояснения операции перестановки в соответствии с существующими способами.
На фиг.52 показана схема, представляющая группы знаковых битов и группы символьных битов в случаях, когда код LDPC, имеющий длину кода 16200 и скорость кода 4/15 модулирован 256QAM, и кратное число b равно 1.
На фиг.53 показана схема, представляющая правило назначения в случаях, когда код LDPC, имеющий длину кода 16200 и скорость кода 4/15 модулирован 256QAM, и кратное число b равно 1.
На фиг.54 показана схема, представляющая перестановку знакового бита в соответствии с правилом назначения в случаях, когда код LDPC, имеющий длину кода 16200 и скорость кода 4/15, модулирован 256QAM, и кратное число b равно 1.
На фиг.55 показана схема, представляющая группы знаковых битов и группы символьных битов в случаях, когда код LDPC, имеющий длину кода 16200 и скорость кода 7/15, модулирован 256QAM, и кратное число b равно 1.
На фиг.56 показана схема, представляющая правило назначения в случаях, когда код LDPC, имеющий длину кода 16200 и скорость кода 7/15, модулирован 256QAM, и кратное число b равно 1.
На фиг.57 показана схема, представляющая перестановку знакового бита в соответствии с правилом назначения в случаях, когда код LDPC, имеющий длину кода 16200 и скорость кода 7/15, модулирован 256QAM, и кратное число b равно 1.
На фиг.58 показана схема, представляющая группы знаковых битов и группы символьных битов в случаях, когда код LDPC, имеющий длину кода 16200 и скорость кода 8/15, модулирован 2560AM, и кратное число b равно 1.
На фиг.59 показана схема, представляющая правило назначения в случаях, когда код LDPC, имеющий длину кода 16200 и скорость кода 8/15, модулирован 256QAM, и кратное число b равно 1.
На фиг.60 показана схема, представляющая перестановку знакового бита в соответствии с правилом назначения в случаях, когда код LDPC, имеющий длину кода 16200 и скорость кода 8/15, модулирован 256QAM, и кратное число b равно 1.
На фиг.61 показана блок-схема, представляющая пример структуры устройства приема 12.
На фиг.62 показана блок-схема, представляющая пример структуры обратного перемежителя 165 битов.
На фиг.63 показана блок-схема последовательности операций для пояснения операций, выполняемых декодером QAM 164, обратным перемежителем 165 битов и декодером 166 LDPC.
На фиг.64 показана схема, представляющая пример матрицы проверки четности кода LDPC.
На фиг.65 показана схема, представляющая матрицу (преобразованную матрицу проверки четности), полученную путем выполнения замены строки и замены столбца в матрице проверки четности.
На фиг.66 показана схема, представляющая преобразованную матрицу проверки четности, разделенную на модули 5×5.
На фиг.67 показана блок-схема, представляющая пример структуры устройства декодирования, которое совместно выполняет Р вычислений узла.
На фиг.68 показана блок-схема, представляющая пример структуры декодера 166 LDPC.
На фиг.69 показана схема для пояснения операции мультиплексора 54 обратного перемежителя 165 бита.
На фиг.70 показана схема для пояснения операции обратного перемежителя 55 со скручиванием столбцов.
На фиг.71 показана блок-схема, представляющая другую примерную структуру обратного перемежителя 165 битов.
На фиг.72 показана блок-схема, представляющая первую примерную структуру системы приема, в которой может быть применено устройство 12 приема.
На фиг.73 показана блок-схема, представляющая вторую примерную структуру системы приема, в которой может быть применено устройство 12 приема.
На фиг.74 показана блок-схема, представляющая третью примерную структуру системы приема, в которой может быть применено устройство 12 приема.
На фиг.75 показана блок-схема, представляющая пример структуры варианта осуществления компьютера, в котором применена настоящая технология.
Подробное описание изобретения
Пример структуры системы передачи, в которой применяется настоящая технология
На фиг.7 показан пример структуры варианта осуществления системы передачи, в которой применяется настоящая технология ("система" означает логическую сборку устройств, и устройства, которые представляют данную структуру, не обязательно размещены в одном том же корпусе).
На фиг.7 показана система передачи, которая включает в себя устройство 11 передачи и устройство 12 приема.
Устройство 11 передачи выполняет передачу (широковещательную) (доставку) шоу, предназначенных для стационарных оконечных устройств и портативных оконечных устройств. В частности, устройство 11 передачи кодирует целевые данные передачи, такие, как данные изображения и аудиоданные, как шоу, предназначенные для стационарных оконечных устройств и портативных оконечных устройств, в коды LDPC, и передает эти коды LDPC через канал 13, например, по наземным волнам.
Устройство 12 приема представляет собой, например, портативное оконечное устройство. Устройство 12 приема принимает коды LDPC, переданные от устройства 11 передачи через канал 13, и декодирует коды LDPC в целевые данные перед выводом целевых данных.
Здесь коды LDPC, используемые в системе передачи, показанной на фиг.7, известны своей чрезвычайно высокой производительностью в каналах AWGN (аддитивный белый Гауссов шум).
Однако пакетные ошибки и удаления могут возникать в канале 13 наземных волн и т.п. Например, в системе OFDM (мультиплексирование с ортогональным разделением частоты) возникают моменты времени, когда мощность определенного символа становится равной нулю (удаление), в соответствии с задержкой эхо-сигнала (по-другому пути, чем основной путь) в среде с многолучевым распространением радиоволн, в которой D/U (отношение желательного/нежелательного) составляет 0 дБ (мощность нежелательного или эхо сигнала равна мощности желательного или сигнала в основном канале передачи).
Кроме того, когда D/U составляет 0 дБ, в случае дрожания сигнала (канал, в котором задержка равна нулю, и который имеет эхо-сигнал на Допплеровской частоте, добавленной к сигналу), мощность всех символов OFDM в определенные моменты времени может становиться равной нулю (удаление) из-за Допплеровской частоты.
Кроме того, на стороне устройства 12 приема, в некоторых случаях, пакетные ошибки возникают, из-за условий на линии от модуля приема (не показан), такого как антенна, которая принимает сигналы от устройства 11 передачи, до устройства 12 приема, и нестабильности источника питания устройства 12 приема.
При декодировании кода LDPC, с другой стороны, в строке матрицы Н проверки четности или в переменном узле, соответствующем знаковому биту кода LDPC, вычисление переменного узла, показанного в уравнении (1), включающее в себя добавление (принятого значения u0i для) знакового бита кода LDPC, выполняют, как уже описано со ссылкой на фиг.5. Поэтому, если возникает ошибка в знаковом бите, используемом при вычислении переменного узла, ухудшается точность получаемого в результате сообщения.
При декодировании кода LDPC вычисление проверочного узла, показанного в уравнении (7), выполняют в проверочном узле, используя сообщения, определенные в переменных узлах, подключенных к проверочному узлу. Поэтому, если количество проверочных узлов, которое приводит к появлению одновременных ошибок (включая в себя стирания) в подключенных переменных узлах (или в знаковых битах кодов LDPC, соответствующих переменным узлам), становится большим, характеристики декодирования ухудшаются.
Таким образом, когда одновременно возникает удаление в двух или больше переменных узлах, подключенных к проверочному узлу, проверочный узел возвращает во все переменные узлы сообщение, указывающее, что вероятность того, что значения равны "0", и вероятность того, значения равны "1", равны друг другу. В этом случае, проверочный узел, который возвращает сообщение, указывающее равные вероятности, не способствует одной из операции декодирования (один набор вычислений переменного узла и вычислений проверочного узла). В результате, количество повторений операции декодирования должно быть увеличено, и характеристики декодирования ухудшаются. Кроме того, увеличивается потребление энергии устройством 12 приема, которое декодирует коды LDPC.
С учетом этого, система передачи данных, показанная на фиг.7, улучшает устойчивость к пакетным ошибкам и удалениям при поддержании высоких рабочих характеристик в каналах AWGN.
Пример структуры устройства 11 передачи
На фиг.8 показана блок-схема, представляющая пример структуры устройства 11 передачи, показанного на фиг.7.
В устройстве 11 передачи один или более входных потоков, как целевые данные, подают на модуль 111 адаптации режима/мультиплексора.
Модуль 111 адаптации режима/мультиплексора выполняет выбор режима и мультиплексирует один или более входных потоков, подаваемых на него. Полученные в результате данные подают на заполнитель 112.
Заполнитель 112 выполняет необходимое заполнение нулями (вставку нулей) для данных, подаваемых от модуля 111 адаптации режима/мультиплексора, и подает полученные в результате данные на ВВ скремблер 113.
ВВ скремблер 113 выполняет операцию распределения энергии для данных, подаваемых от заполнителя 112, и подает полученные в результате данные на кодер 114 BCH.
Кодер 114 ВСН выполняет кодирование ВСН для данных, подаваемых от скремблера 113 ВВ, и подает полученные в результате данные в качестве целевых данных LDPC, которые должны быть подвергнуты кодированию LDPC, на кодер 115 LDPC.
Для целевых данных LDPC, подаваемых от кодера 114 ВСН, кодер 115 LDPC выполняет кодирование LDPC, в соответствии с матрицей проверки четности, имеющей лестничную структуру, в матрице четности, соответствующей битам четности кодов LDPC, и выводит код LDPC, имеющий целевые данные LDPC, в качестве информационного бита.
Таким образом, кодер 115 LDPC выполняет кодирование LDPC для кодирования целевых данных LDPC в код LDPC, такой, как код LDPC, установленный в стандартах DVB-T.2, и выводит полученный в результате код LDPC.
В соответствии со стандартами DVB-T.2, коды LDPC, установленные в стандартах DVB-S.2, используются, если только длина кода равна 16200 битов, и скорость кода составляет 3/5. Коды LDPC, установленные в стандартах DVB-T.2, представляют собой коды IRA (неравномерное накопление с повторением), и матрицы четности в матрицах проверки четности кодов LDPC имеют лестничную структуру. Матрицы четности и лестничные структуры будут описаны ниже. Коды IRA раскрыты, например, в публикации "Irregular Repeat-Accumulate Codes," Н. Jin, A. Khandekar, and R.J. McEliece, in Proceedings of 2nd International Symposium on Turbo Codes and Related Topics, pp.1-8, Sept. 2000.
Код LDPC, который выводят от кодера 115 LDPC, подают на перемежитель 116 битов.
Перемежитель 116 битов выполняет перемежение последнего описанного бита для кода LDPC, подаваемого от кодера 115 LDPC, и код LDPC, подаваемый в перемежение битов, подают на кодер 117 QAM.
Кодер 117 QAM выполняет ортогональную модуляцию (многоуровневую модуляцию) для кода LDPC, подаваемого от перемежителя 116 битов, путем отображения каждого модуля знакового бита (каждого модуля символа) одного или более битов кода LDPC в точку сигнала, представляющую один символ ортогональной модуляции.
Таким образом, кодер 117 QAM выполняет ортогональную модуляцию путем отображения кода LDPC, подаваемого от перемежителя 116 битов, в сигнальные точки, которые определены способом модуляции для ортогональной модуляции, выполняемой для кода LDPC в плоскости I-Q (совокупность I-Q), установленной осью I, указывающей компонент I одной фазы, в качестве колебаний несущей, и осью Q, указывающий компонент Q, перпендикулярный волнам несущей.
Здесь примеры способов модуляции для ортогональной модуляции, выполняемой кодером 117 QAM, включают в себя способы модуляции, установленные в стандартах DVB-T, такие как QPSK (квадратурная манипуляция со сдвигом фазы), 16QAM (квадратурная амплитудная модуляция), 64QAM, 256QAM, 1024QAM и 4096QAM. Способ модуляции, используемый при ортогональной модуляции на кодере 117 QAM, устанавливают заранее, например, в соответствии с операцией оператора устройства 11 передачи. Кодер 117 QAM также выполняет другую ортогональную модуляцию, такую как 4РАМ (импульсно-амплитудная модуляция).
Данные, получаемые в результате операции, выполняемой кодером 117 QAM (символы, отображенные на точки сигнала), подают на перемежитель 118 по времени.
Перемежитель 118 по времени выполняет перемежение по времени (перемежение в направлении времени) для каждого модуля символа данных (символов), подаваемых от кодера 117 QAM, и подает полученные в результате данные на кодер 119 MISO/MIMO.
Кодер 119 MISO/MIMO выполняет кодирование пространство-время для данных (символов), подаваемых от перемежителя 118 по времени, и подает полученные в результате данные на перемежитель 120 по частоте.
Перемежитель 120 по частоте выполняет перемежение по частоте (перемежение в направлении частоты) для каждого модуля символа данных (символов), подаваемых от кодера 119 MISO/MIMO, и подает полученные в результате данные на модуль 131 построителя фреймов/выделения ресурсов.
В то же время, данные управления (сигналы) для управления передачей, такие как преамбула, называемая L1, подают на кодер 121 ВСН.
Аналогично кодеру 114 ВСН, кодер 121 ВСН выполняет кодирование ВСН для данных управления, подаваемых на него, и подает полученные в результате данные на кодер 122 LDPC.
Аналогично кодеру 115 LDPC, кодер 122 LDPC выполняет кодирование LDPC для данных, подаваемых, в качестве целевых данных LDPC, от кодера 121 ВСН, и подает полученный в результате код LDPC на кодер 123 QAM.
Так же, как и кодер 117 QAM, кодер 123 QAM выполняет ортогональную модуляцию для кода LDPC, подаваемого от кодера 122 LDPC, путем отображения каждого модуля знакового бита (каждого модуля символов) одного или более битов кода LDPC на точку сигнала, представляющую один символ ортогональной модуляции, и подает полученные в результате данные (символы) на перемежитель 124 по частоте.
Аналогично перемежителю 120 по частоте, перемежитель 124 по частоте выполняет перемежение по частоте каждого модуля символа данных (символов), подаваемых от кодера 123 QAM, и подает полученные в результате данные на модуль 131 построителя фреймов/выделения ресурсов.
Модуль 131 построителя фреймов/выделения ресурсов вставляет пилотный символ в каждое соответствующее положение в данных (символах), подаваемых от перемежителей 120 и 124 по частоте, и создает фрейм, сформированный с заданным количеством символов, из полученных в результате данных (символов). Этот фрейм подают на модуль 132 генерирования OFDM.
Модуль 132 генерирования OFDM генерирует соответствующий сигнал OFDM из фрейма, подаваемого от модуля 131 построителя фреймов/выделения ресурсов, и передает сигнал OFDM через канал 13 (фиг.7).
На фиг.9 показана структура примера перемежителя 116 битов, показанного на фиг.8.
Перемежитель 116 битов представляет собой устройство обработки данных, которое выполняет перемежение данных, и сформировано с перемежителем 23 четности, перемежителем 24 со скручиванием столбцов и демультиплексором (DEMUX) 25.
Перемежитель 23 четности выполняет перемежение четности для перемежения бита четности кода LDPC, подаваемого от кодера 115 LDPC, в положение другого бита четности, и подает код LDPC, подвергнутый перемежению четности, в перемежитель 24 со скручиванием столбцов.
Перемежитель 24 со скручиванием столбцов выполняет перемежение со скручиванием столбцов для кода LDPC, подаваемого от перемежителя 23 четности, и подает код LDPC, подвергнутый перемежению со скручиванием столбцов, на демультиплексор 25.
Таким образом, на кодере 117 QAM, показанном на фиг.8, знаковый бит одного или больше битов кода LDPC отображает на точку сигнала, представляющую один символ ортогональной модуляции, и код LDPC затем передают.
В перемежителе 24 со скручиванием столбцов, последнее описанное перемежение со скручиванием столбцов выполняют, как операцию изменения конфигурации, для изменения конфигурации знаковых битов кода LDPC, подаваемых от перемежителя 23 четности, таким образом, что знаковые биты кода LDPC, соответствующие "1" в произвольной строке в матрице проверки четности, используемые на кодере 115 LDPC, не содержатся в одном символе.
Демультиплексор 25 выполняет операцию перестановки кода LDPC, подаваемого от перемежителя 24 со скручиванием столбцов, для перестановки положения двух или больше знаковых битов, которые должны представлять собой символы в коде LDPC. Таким образом, получают код LDPC с повышенной устойчивостью к AWGN. Демультиплексор 25 затем подает два или больше знаковых бита кода LDPC, полученных в результате операции перестановки, как символы, на кодер 117 QAM (фиг.8).
На фиг.10 показана матрица Н проверки четности, используемая при кодировании LDPC на кодере 115 LDPC, показанном на фиг.8.
Матрица Н проверки четности имеет структуру LDGM (матрица генерирования низкой плотности), и может быть выражена уравнением H=[HA|HT] (матрица, имеющая матрицу HA информации, как элемент с левой стороны, и матрицу HT четности, как элемент с правой стороны), где матрица HA информации соответствует информационным битам для знаковых битов кода LDPC, и матрица HT четности соответствует битам четности для знаковых битов кода LDPC.
Здесь для знаковых битов одного кода LDPC (одно кодовое слово) количество информационных битов и количество битов четности называются информационной длиной К и длиной М четности. Кроме того, количество знаковых битов в одном коде LDPC называется длиной N(=К+М) кода.
Информационную длину K и длину М четности кода LDPC, имеющего определенную длину N кода, определяют по их скорости кода. Матрица Н проверки четности представляет собой матрицу, имеющую М строк и N столбцов. Матрица HA информации представляет собой матрицу размером M×K, и матрица HT четности представляет собой матрицу М×М.
На фиг.11 показана матрица HT четности для матрицы Н проверки четности кода LDPC, установленного в стандартах DVB-T.2 (и DVB-S.2).
Матрица HT четности для матрицы Н проверки четности кода LDPC, установленного в стандартах DVB-T.2, имеет лестничную структуру, в которой элементы "1" расположены ступенчато, как показано на фиг.11. В матрице HT четности вес строки равен 1 в первой строке, и равен 2 в каждой из остальных строк. В то же время, вес столбца равен 1 в последнем столбце и равен 2 в каждом из остальных столбцов.
Как описано выше, код LDPC, имеющий матрицу Н проверки четности с лестничной структурой в матрице HT четности, может быть легко сгенерирован путем использования матрицы Н проверки четности.
Таким образом, код LDPC (одно кодовое слово) представлен вектором с строки, и вектор столбца, полученный в результате транспонирования вектора строки, представлен, как cT. Для вектора с строки, в качестве кода LDPC, участок информационного бита представлен вектором А строки, и участок битов четности представлен вектором Т строки.
В этом случае, вектор с строки может быть выражен с помощью уравнения с=[А|Т] (вектор строки имеющий вектор А строки, как элемент с левой стороны, и вектор Т строки, как элемент с правой стороны), где вектор А строки представляет собой информационные биты, и вектор Т строки представляет собой биты четности.
Матрица Н проверки четности и с вектор с=[А|Т] строки, как код LDPC, должны удовлетворять уравнению HcT=0, и вектор Т строки, как биты четности вектора с=[А|Т] строки, которые удовлетворяют уравнению HcT=0, могут быть последовательно определены (по порядку), путем изменения элемента в каждой строке на "0" в векторе HcT столбца в уравнении, HcT=0, начиная от элемента в первой строке, если матрица HT четности в матрице Н=[HA|HT] проверки четности имеет лестничную структуру, показанную на фиг.11.
На фиг.12 показана схема для пояснения матрицы Н проверки четности кода LDPC, представленного в стандартах DVB-T.2.
В столбцах КХ, начиная от первой строки матрицы Н проверки четности кода LDPC, установленного в стандартах DVB-T.2, вес столбца равен X. В столбцах K3, следующих после столбцов КХ, вес столбца равен 3. В столбцах (М-1), следующих после столбцов К3, вес столбца равен 2. В последнем одном столбце вес столбца равен 1.
Здесь KX+K3+(M-1)+1 равно длине N кода.
На фиг.13 показана схема, представляющая количества KX, K3 и М столбцов, и вес 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, известно, что знаковый бит, соответствующий столбцу с большим весом столбца в матрице Н проверки четности, имеет меньшую частоту ошибок.
В матрице Н проверки четности, установленной в стандартах DVB-T.2, показанной на фиг.12 и 13, столбец ближе к верху (с левой стороны) проявляет тенденцию иметь больший вес столбца. В соответствии с этим, в коде LDPC, соответствующем матрице Н проверки четности, знаковый бит, расположенный ближе к верхней части, проявляет тенденцию быть более сильным в отношении ошибок (или иметь запас устойчивости к ошибкам), и знаковый бит, расположенный ближе к концу, проявляет тенденцию быть более слабым в отношении ошибок.
На фиг.14 показана компоновка (точек сигнала, соответствующих) 16 символов в плоскости I-Q, в случае, когда выполняют 16QAM на кодере 117 QAM, показанном на фиг.8.
Таким образом, в позиции А на фиг.14 показаны символы 16QAM для DVB-T.2.
В 16QAM один символ представляет четыре бита, и присутствуют 16 (=24) символов. 16 символов расположены так, что квадрат 4×4 в направлении I и в направлении Q формируется вокруг исходной точки в плоскости I-Q.
В случае, когда бит yi представляет (i+1)-ый бит, отсчитанный, начиная с верхнего бита в столбце битов, представленных одним символом, четыре бита, представленные одним символом 16QAM, могут быть представлены битами y0, y1, y2 и y3 в порядке от самого верхнего бита. В случае, когда способ модуляции представляет собой 16QAM, четыре бита, такие как знаковый бит кода LDPC, преобразуют (преобразуют в символы) в символ (значение символа) из четырех битов y0-y3.
На фиг.14, в позиции В показаны границы битов в четырех соответствующих битах (ниже также называются символьными битами) y0-y3, представленных символом 16QAM.
Здесь границы символов в символьном бите yi (i=0, 1, 2 и 3 на фиг.14) представляют собой границу между символами, с которыми символьный бит yi равен 0, и символам, с которыми символьный бит yi равен 1.
Как показано в позиции В на фиг.14, ось Q в плоскости I-Q представляет собой только одну границу битов в самом верхнем символьном бите y0 среди четырех символьных битов y0-y3, представленных символом 16QAM, и ось I в плоскости I-Q представляет собой только одну границу битов во втором символьном бите y1 (второй самый верхний бит, отсчитываемый от самого верхнего бита).
В третьем символьном бите y2 линия между первым и вторым столбцами слева, и линия между третьим и четвертым столбцами среди символов 4×4, используются, как границы битов.
Кроме того, в четвертом символьном бите y3, линия между первой и второй строками сверху, и линия между третьей и четвертой строками среди символов 4×4 используются, как границы битов.
Среди символьных битов yi, представленных символами, символьный бит, имеющий большее количество символов, расположенных дальше от границы битов, проявляет тенденцию иметь меньшее количество ошибок (или иметь меньшую вероятность ошибок), и символьный бит, имеющий большее количество символов, расположенный ближе к границе битов, проявляет тенденцию иметь большее количество ошибок (или иметь большую вероятность ошибки).
В случае, когда биты, которые проявляют тенденцию иметь меньшее количество ошибок (или проявляют тенденцию устойчивости к ошибкам), называются "сильными битами", и биты, которые проявляют тенденцию иметь больше ошибок (или являются более слабыми в отношении ошибок) называются "слабыми битами", верхний символьный бит y0, и второй символьный бит y1 являются символьными битами среди четырех символьных битов y0-y3 символа 16QAM, и третий символьный бит y2, и четвертый символьный бит y3 представляют собой слабые биты.
На фиг.15-17 показана компоновка (точек сигнала, соответствующих) 64 символов в плоскости I-Q, в случае, когда выполняют 64QAM на кодере 117 QAM, показанном на фиг.8, или символов 16QAM в DVB-T.2.
В 64QAM один символ представляет шесть битов, и при этом присутствуют 64 (=26) символов. 64 символа расположены так, что квадрат 8×8 в направлении I и в направлении Q формируется вокруг исходной точки в плоскости I-Q.
Символьные биты одного символа 64QAM могут быть представлены, как биты y0, y1, y2, y3, y4 и y5 в порядке от самого верхнего бита. Когда способ модуляции представляет собой 64QAM, шесть знаковых битов кода LDPC преобразуют в символ из шести символьных битов y0-y5.
На фиг.15 показаны соответствующие границы битов в самом верхнем символьном бите y00 и во втором символьном бите y1 среди символьных битов y0-y5 символа 64QAM. На фиг.16 показаны соответствующие границы битов в третьем символьном бите y2 и четвертом символьном бите y3. На фиг.17 показаны соответствующие границы битов в пятом символьной бите y4 и в шестом символьном бите y5.
Как показано на фиг.15, присутствует одна граница битов в каждом верхнем символьном бите y0 и втором символьном бите y1. Кроме того, как показано на фиг.16, существуют две границы битов в каждом третьем символьном бите y2 и четвертом символьном бите y3. Как показано на фиг.17, существуют четыре границы битов в каждом пятом символьном бите y4 и в шестом символьном бите y5.
В соответствии с этим, для символьных битов y0-y5 для символа 64QAM, самый верхний символьный бит y0 и второй символьный бит y1 представляют собой сильные биты, и третий символьный бит y2, и четвертый символьный бит y3 представляют собой вторые самые сильные биты. Пятый символьный бит y4 и шестой символьный бит y5 представляют собой слабые биты.
Как можно видеть на фиг.14 и фиг.15-17, для символьных битов, для символа ортогональной модуляции, верхние биты проявляют тенденцию быть сильными битами, и нижние биты проявляют тенденцию быть слабыми битами.
Как описано выше со ссылкой на фиг.12 и 13, в коде LDPC, который выводят от кодера 115 LDPC (фиг.8), присутствуют знаковые биты, которые являются устойчивыми к ошибкам, и знаковые биты, которые являются слабыми в отношении ошибок.
Кроме того, как описано выше со ссылкой на фиг.14-17, среди символьных битов для символа ортогональной модуляции, выполняемой на кодере 117 QAM, присутствуют сильные биты и слабые биты.
Поэтому, когда знаковые биты, которые являются слабыми в отношении ошибок в коде LDPC, назначают для слабых символьных битов символа ортогональной модуляции, общая устойчивость к ошибкам становится низкой.
С учетом этого, был предложен перемежитель, который перемежает знаковые биты кода LDPC путем назначения знаковых битов, которые являются слабыми в отношении ошибок в коде LDPC, в основном, для сильных битов (символьных битов) для символа ортогональной модуляции.
Демультиплексор 25, показанный на фиг.9, может выполнять такую операцию перемежения.
На фиг.18 показана схема, предназначенная для пояснения операции демультиплексора 25, показанного на фиг.9.
В частности, в позиции А на фиг.18 показан пример функциональной структуры демультиплексора 25.
Демультиплексор 25 включает в себя запоминающее устройство 31 и модуль 32 перестановки.
Код LDPC подают от кодера 115 LDPC на запоминающее устройство 31.
Запоминающее устройство 31 имеет емкость хранения для хранения mb битов в направлении строки (горизонтальном направлении) и N/(mb) битов в направлении столбца (вертикальном направлении), записывает знаковые биты подаваемого кода LDPC в направлении столбца, считывает знаковые биты в направлении строки и подает знаковые биты на модуль 32 перестановки.
Здесь N (=длина K информации+длина М четности) представляет собой длину кода для кода LDPC, как описано выше.
Кроме того, m представляет количество знаковых битов кода LDPC для формирования одного символа, и b представляет заданное положительное целое число, которое представляет собой кратное число, предназначенное для умножения m на целое число. Как описано выше, демультиплексор 25 преобразует в символы (отображает в форме символов) знаковые биты кода LDPC, и кратное число b представляет количество символов, которое должно быть получено демультиплексором 25, выполняющим одну операцию преобразования символов.
На фиг.18 в позиции А показана структура примера демультиплексора 25 в случае, когда способ модуляции представляет собой 64QAM, и, поэтому, количество m знаковых битов кода LDPC для формирования одного символа равно 6.
Кроме того, в позиции А на фиг.18, множество чисел b равно 1 и, в соответствии с этим, запоминающее устройство 31 имеет емкость хранения N/(6×1)×(6×1) битов в направлении столбца и в направлении строки.
В запоминающем устройстве 31, каждая область хранения, которая имеет один бит в направлении строки и продолжается в направлении столбца, ниже будет называться столбцом, соответственно. В позиции А на фиг.18 запоминающее устройство 31 сформировано из шести (=6×1) столбцов.
В демультиплексоре 25 запись знаковых битов кода LDPC в столбцы, формирующие запоминающее устройство 31, в направлении сверху вниз (в направлении столбца), выполняют по столбцам в направлении слева направо.
После того, как запись знаковых битов будет закончена в самом нижнем положении, в самом правом столбце, знаковые биты считывают из первой строки всех столбцов, формирующих запоминающее устройство 31, в направлении строки по шесть битов (mb битов) одновременно, и затем подают на модуль 32 перестановки.
Модуль 32 перестановки выполняет операцию перестановки для перестановки положения шести знаковых битов, подаваемых от запоминающего устройства 31, и выводит полученные в результате шесть битов, как шесть символьных битов y0, y1, y2, y3, y4 и y5, которые представляют один символ 64QAM.
В частности, mb битов (шесть битов в данном примере) считывают в направлении строки из запоминающего устройства 31. В случае, когда i-ый бит (i=0, 1 …, mb-1), подсчитанный с самого верхнего бита среди m знаковых битов, считываемых из запоминающего устройства 31, будет представлен как бит bi, шесть знаковых битов, считываемых в направлении строки из запоминающего устройства 31, могут быть выражены, как биты b0, b1, b2, b3, b4 и b5 в порядке от самого верхнего бита.
Во взаимосвязи с весом столбца, описанном со ссылкой на фиг.12 и 13, знаковые биты, расположенные в направлении бита b0, представляют собой знаковые биты, устойчивые к ошибкам, и знаковые биты, расположенные в направлении бита b5, представляют собой знаковые биты, которые являются слабыми в отношении ошибок.
Модуль 32 перестановки может выполнять операцию перестановки для перестановки положения шести знаковых битов b0-b5, считанных из запоминающего устройства 31 таким образом, что знаковые биты, слабые в отношении ошибок среди шести знаковых битов b0-b5, считанные из запоминающего устройства 31, назначают для сильных битов среди символьных битов y0-y5 одного символа 64QAM.
Изготовители предложили различные способы, в качестве способов перестановки, для перестановки шести знаковых битов b0-b5, считываемых из запоминающего устройства 31, и назначения шести знаковых битов для шести символьных битов y0-y5, которые представляют один символ 64QAM.
На фиг.18 в позиции В показан первый способ перестановки, в позиции С показан второй способ перестановки и в позиции D показан третий способ перестановки.
В позициях В-D на фиг.18 (и на фиг.19, которая будет описана ниже), каждая строка, соединяющая биты bi и yj, указывает, что знаковый бит bi назначен для символьного бита yj символа (или заменяет символьный бит yj).
В качестве первого способа перестановки, показанного в позиции В на фиг.18, было предложено использовать один из трех способов перестановки. В качестве второго способа перестановки, показанного в позиции С на фиг.18, было предложено использовать один из двух способов перестановки.
В качестве третьего предложенного способа перестановки, показанного в позиции D на фиг.18, были последовательно выбраны и использовались шесть способов перестановки.
На фиг.19 показан пример структуры демультиплексора 25 в случае, когда способ модуляции представляет собой 64QAM (количество m знаковых битов в коде LDPC, которые должны быть отображены на один символ, равно 6, как в примере, показанном на фиг.18) и кратное число b равно 2, и также показан четвертый способ перестановки.
В случае, когда кратное число b равно 2, запоминающее устройство 31 имеет емкость накопления N/(6×2)×(6×2) битов в направлении столбца и в направлении строки, и сформированы 12(=6×2) столбцов.
На фиг.19 в позиции А показан порядок записи кода LDPC в запоминающее устройство 31.
В демультиплексоре 25 запись знаковых битов кода LDPC в столбцы, формирующие запоминающее устройство 31, в направлении сверху вниз (в направлении столбца) выполняют по столбцам в направлении слева направо, как описано выше со ссылкой на фиг.18.
После окончания записи знаковых битов в самом нижнем положении, в самом правом столбце, знаковые биты считывают из первой строки всех столбцов, формирующих запоминающее устройство 31, в направлении строки по 12 битов (mb битов) одновременно, и затем подают на модуль 32 перестановки.
Модуль 32 перестановки выполняет операцию перестановки, для перестановки положения 12 знаковых битов, подаваемых от запоминающего устройства 31, в соответствии с четвертым способом перестановки, и выводит полученные в результате 12 битов, которые составляют 12 битов, представляющих два символа (b символов) 64QAM, или шесть символьных битов y0, y1, y2, y3, y4 и y5, которые представляют один символ 64QAM, и шесть символьных битов y0, y1, y2, y3, y4 и y5, которые представляют следующий один символ.
На фиг.19, в позиции В показан четвертый способ перестановки, используемый модулем 32 перестановки, показанным в позиции А на фиг.19, для выполнения операции перестановки.
В случае, когда кратное число b равно 2 (как в случаях, когда кратное число b равно 3 или больше), mb знаковых битов назначают для mb символьных битов для b последовательных символов при операции перестановки. Как показано на фиг.19, в дальнейшем, (i+1)-ый бит, подсчитанный от верхнего бита среди mb символьных битов, для b последовательных символов, выражен как бит (символьный бит) yi, для простоты пояснения.
Кроме того, когда способ перестановки является соответствующим, следует ли увеличить частоту ошибок в каналах AWGN, зависит от скорости кода и длины кода каждого кода LDPC, способа модуляции и т.п.
Перемежение четности
Далее, со ссылкой на фиг.20-22, будет описано перемежение четности, выполняемое перемежителем 23 четности, показанным на фиг.9.
На фиг.20 показана (часть) графа Таннера матрицы проверки четности кода LDPC.
Как показано на фиг.20, когда два или больше (знаковых бита, соответствующих) переменных узлов, соединенных с проверочным узлом, одновременно имеют ошибки, такие как удаления, проверочный узел возвращает сообщение, указывающее, что вероятность того, что значение равно "0", и вероятность того что значение равно "1", равны друг другу, во все переменные узлы, соединенные с проверочным узлом. Поэтому, когда переменные узлы, соединенные с одним и тем же проверочным узлом, одновременно содержат удаление и т.п., характеристика декодирования ухудшаются.
В то же время, код LDPC, который выводят от кодера 115 LDPC, показанного на фиг.8, и который установлен в стандартах DVB-T.2, представляет собой код IRA, и матрица HT четности матрицы Н проверки четности имеет лестничную структуру, как показано на фиг.11.
На фиг.21 показана матрица HT четности, имеющая лестничную структуру, и граф Таннера, соответствующий матрице HT четности.
В частности, в позиции А на фиг.21 показана матрица HT четности, имеющая лестничную структуру, и позиции В на фиг.21 показан граф Таннера, соответствующий матрице HT четности, показанной в позиции А на фиг.21.
В матрице HT четности, имеющей лестничную структуру, элементы "1", расположенные рядом друг с другом в каждой строке (за исключением первой строки). Поэтому, в графе Таннера матрицы HT четности, два соседних переменных узла, соответствующие столбцу двух соседних элементов, имеющих значение "1" в матрице HT четности, соединены с одним и тем же проверочным узлом.
Когда биты четности, соответствующие двум соседним переменным узлам, одновременно имеют ошибки из-за пакетных ошибок или удаления и т.п., проверочный узел, соединенный с двумя переменными узлами (переменные узлы, запрашивающие сообщение, используя биты четности), соответствующими двум битам четности, имеющим ошибки, возвращает сообщение, обозначающее, что вероятность того, что значение составляет "0", и вероятность того, что значение, представляет собой "1", равны друг другу, в переменные узлы, соединенные с проверочным узлом. В результате, ухудшаются характеристики декодирования. Когда длина пакета (количество битов четности, имеющих последовательные ошибки) становится большой, количество проверочных узлов, возвращающих сообщение равной вероятности, становится большим, и характеристики декодирования дополнительно ухудшаются.
Для предотвращения деградации характеристик декодирования, перемежитель 23 четности (фиг.9) выполняет перемежение четности для перемежения битов четности кода LDPC, подаваемого от кодера 115 LDPC в положениях других битов четности.
На фиг.22 показана матрица HT четности матрицы Н проверки четности, соответствующей коду LDPC, подвергаемому перемещению четности, выполняемому перемежителем 23 четности, показанным на фиг.9.
Здесь, информационная матрица НА матрицы Н проверки четности, соответствующей коду LDPC, который выводят от кодера 115 LDPC, и который установлен в соответствии со стандартами DVB-T.2, имеет циклическую структуру.
Циклическая структура представляет собой структуру, в которой столбец является таким же, как столбец, сформированный в результате циклического сдвига другого столбца. Например, циклическая структура также представляет собой структуру, в которой положения элементов "1" в каждой строке Р столбцов циклически сдвинуты в направлении столбца на значение, пропорциональное значению q, полученному в результате деления первого столбца из Р столбцов на длину М четности. После этого Р столбцов в циклической структуре будут называться единичным числом столбцов в циклической структуре.
Что касается кодов LDPC, установленных в стандартах DVB-T.2, существуют два типа кодов LDPC, имеющих длину N кода 64800 битов и 16200 битов, как описано выше со ссылкой на фиг.12 и 13. Для каждого из двух типов кодов LDPC единичное число Р столбцов в циклической структуре определено, как 360, что представляет собой один из делителей длины М четности, за исключением 1 и М.
Длина М четности имеет значение, выраженное уравнением M=q×P=q×360 для разных значений q при каждой скорости кода. Длина М четности имеет другое значение, чем простое число. Поэтому, так же, как и единичное число Р столбцов в циклической структуре, значение q представляет собой другой один из делителей длины М четности, за исключением 1 и М, и его получают путем деления длины М четности на единичное число Р столбцов в циклической структуре (произведение Р и q, которые являются делителями длины М четности, равно длине М четности).
В случае, когда K представляет длину информации, x представляет целое число, которое не меньше, чем 0, и меньше чем P, и y представляет целое число, которое не меньше, чем 0, и меньше, чем q, как описано выше, перемежитель 23 четности выполняет перемежение четности для перемежения (K+qx+y+1)-ого знакового бита среди знаковых битов N-битного кода LDPC в положение (K+Py+х+1)-ого знакового бита.
Как (K+qx+y+1)-ый знаковый бит, так и (K+Py+х+1)-ый знаковый бит, представляют собой знаковые биты после (K+1)-ого знакового бита, и, поэтому, они представляют собой биты четности. В соответствии с этим, в результате перемежения четности, положения битов четности кода LDPC сдвигаются.
В результате такого перемежения четности, (биты четности, соответствующие) переменным узлам, соединенным с одним и тем же проверочным узлом, отделяются друг от друга на расстояние, эквивалентное единичному числу Р столбцов в циклической структуре, или на 360 битов в данном случае. В соответствии с этим, когда длина пакета меньше, чем 360 битов, можно предотвратить одновременные ошибки в переменных узлах, соединенных с одним и тем же проверочным узлом. В результате, может быть повышена устойчивость к пакетным ошибкам.
Код LDPC, подвергаемый перемежению четности, для перемежения (K+qx+y+1)-ого знакового бита в положение (K+Py+х+1)-ого знакового бита, является тем же, что и код LDPC матрицы проверки четности, полученной в результате выполнения замены столбца для замены (K+qx+y+1)-ого столбца в оригинальной матрице Н проверки четности на (K+Py+х+1)-ый столбец (полученная в результате матрица проверки четности ниже будет также называться преобразованной матрицей проверки четности).
В матрице четности преобразованной матрицы проверки четности появляется псевдоциклическая структура, имеющая циклы из Р столбцов (360 столбцов на фиг.22), как показано на фиг.22.
Здесь псевдоциклическая структура означает структуру, которая представляет собой циклическую структуру, за исключением некоторых участков. В преобразованной матрице проверки четности, получаемой в результате выполнения замены столбцов, эквивалентной перемежению четности матрицы проверки в матрице проверки четности кода LDPC, установленного в стандартах DVB-T.2, не хватает только одного среди множества элементов "1" (и имеется один дополнительный элемент "0" вместо этого) на участке правого угла из 360 строк и 360 столбцов (матрица сдвига, которая будет описана ниже). В этом аспекте структура не является (идеальной) циклической структурой, но представляет собой, так называемую, псевдоциклическую структуру.
Преобразованная матрица проверки четности, показанная на фиг.22, представляет собой матрицу, сформированную путем выполнения в оригинальной матрице Н проверки четности не только замены столбцов, эквивалентной перемежению четности, но также и операции замены строк (замена строки), для формирования преобразованной матрицы проверки с описанной ниже определяющей матрицей.
Перемежение со скручиванием столбцов
Со ссылкой теперь на фиг.23-26, будет описано перемежение со скручиванием столбцов, как операция изменения компоновки, выполняемая перемежителем 24 со скручиванием столбцов, показанным на фиг.9.
В устройстве 11 передачи, показанном на фиг.8, один или больше знаковых битов кода LDPC передают, как один символ. В частности, в случае, когда два знаковых бита формируют один символ, QPSK используют, например, как способ модуляции. В случае, когда четыре знаковых бита формируют один символ, 16QAM используют, например, как способ модуляции.
В случае, когда два или больше знаковых бита передают, как один символ, когда возникает удаление в символе, все знаковые биты символа имеют ошибки (удаление).
Поэтому, для снижения вероятности возникновения в (соответствующих знаковых битах) переменных узлах, соединенных с одним и тем же проверочным узлом, одновременного появления удаления, и, таким образом, для улучшения характеристики декодирования, необходимо предотвратить соединение переменных узлов, соответствующих знаковым битам одного символа, с одним и тем же проверочным узлом.
В то же время, в матрице Н проверки четности кода LDPC, который должен быть выведен от кодера 115 LDPC, и установленной в стандартах DVB-T.2, информационная матрица HA имеет циклическую структуру, и матрица HT четности имеет лестничную структуру, как описано выше. В преобразованной матрице проверки четности, которая представляет собой матрицу проверки четности кода LDPC, в котором выполняют перемежение четности, циклическая структура (точнее, псевдоциклическая структура, как описано выше) также появляется в матрице четности, как описано выше со ссылкой на фиг.22.
На фиг.23 показана преобразованная матрица проверки четности.
В частности, в позиции А на фиг.23 показана преобразованная матрица проверки четности матрицы Н проверки четности для кода LDPC, имеющего длину N кода 64800 битов и скорость кода (r) равную 3/4.
В позиции А на фиг.23 положения элементов, имеющих значение "1" в преобразованной матрице проверки четности, обозначены точками (·).
В позиции В на фиг.23 иллюстрируется операция, которая выполняется демультиплексором 25 (фиг.9) для кода LDPC преобразованной матрицы проверки четности, показанной в позиции А на фиг.23, или кода LDPC, который был подвергнут перемежению четности.
В позиции В на фиг.23, способ модуляции представляет собой 16QAM, и знаковые биты кода LDPC, подвергаемые перемежению четности, записывают в направлении столбца в четырех столбцах, формирующих запоминающее устройство 31 демультиплексора 25.
Знаковые биты, записанные в направлении столбца в четырех столбцах, формирующих запоминающее устройство 31, считывают по четыре бита одновременно в направлении строки, и затем формируют один символ.
В этом случае, четыре знаковых бита b0, b1, b2 и b3, которые формируют один символ, могут представлять собой знаковые биты, соответствующие элементам "1" в произвольной строке, в преобразованной матрице проверки четности, показанной в позиции А на фиг.23. В этом случае переменные узлы, соответствующие знаковым битам b0, b1, b2 и b3, соединены с одним и тем же проверочным узлом.
Поэтому, в случае, когда четыре знаковых бита b0, b1, b2 и b3 одного символа представляют собой знаковые биты, соответствующие элементам "1" в произвольной строке в преобразованной матрице проверки четности, если удаление происходит в символе, соответствующее сообщение не может быть получено от проверочного узла, с которым соединены переменные узлы, соответствующие знаковым битам b0, b1, b2 и b3. В результате, ухудшаются характеристики декодирования.
В случае других скоростей кода, кроме ¾, знаковые биты, соответствующие переменным узлам, соединенным с тем же самым проверочным узлом, также могут формировать один символ 16QAM.
Учитывая это, перемежитель 24 со скручиванием столбцов выполняет перемежение со скручиванием столбцов для перемежения знаковых битов кода LDPC, которые были подвергнуты перемежению четности, и которые были поданы из перемежителя 23 четности, таким образом, что знаковые биты, соответствующие элементам "1" в произвольной строке, в преобразованной матрице проверки четности, не будут содержаться в одном символе.
На фиг.24 показана схема, поясняющая перемежение со скручиванием столбцов.
В частности, на фиг.24 показано запоминающее устройство 31 (фиг.18 и 19) демультиплексора 25.
Как описано выше со ссылкой на фиг.18, запоминающее устройство 31 имеет емкость хранения для содержания mb битов в направлении столбца (вертикальном направлении) и N/(mb) битов в направлении строки (горизонтальном направлении), и сформировано из mb столбцов. Перемежитель 24 со скручиванием столбцов выполняет перемежение со скручиванием столбцом в запоминающем устройстве 31, путем управления положениями начала записи при записи знаковых битов кода LDPC в направлении столбца и считывания знаковых битов в направлении строки.
Таким образом, перемежитель 24 со скручиванием столбцов соответствующим образом изменяет положения начала записи, в которых начинается запись знакового бита в соответствующих столбцах, таким образом, что знаковые биты, формирующие один символ, предназначенный для считывания в направлении строки, не являются знаковыми битами, соответствующими элементам "1" в произвольной строке в преобразованной матрице проверки четности (или компоновка знаковых битов кода LDPC изменяется таким образом, чтобы знаковые биты, соответствующие элементам "1" в произвольной строке, в матрице проверки четности, не содержатся в одном символе).
Здесь, на фиг.24 показана примерная структура запоминающего устройства 31 в случае, когда способ модуляции представляет собой 16QAM, и кратное число b, описанное со ссылкой на фиг.18, равно 1. В соответствии с этим, число m знаковых битов кода LDPC, которое составляет один символ, равно 4, и запоминающее устройство 31 сформировано из четырех (=mb) столбцов.
В перемежителе 24 со скручиванием столбцов (вместо демультиплексора 25, показанного на фиг.18), запись знаковых битов кода LDPC в четыре столбца, формирующих запоминающее устройство 31 в направлении сверху вниз (в направлении столбца), выполняют для столбцов в направлении слева направо.
Когда запись знаковых битов заканчивается в самом правом столбце, перемежитель 24 со скручиванием столбцов считывает знаковые биты, по четыре бита (mb бита) одновременно, в направлении строки из первой строки всех столбцов, формирующих запоминающее устройство 31, и выводит знаковые биты, как код LDPC, подвергнутый перемежению со скручиванием столбцов, на модуль 32 перестановки (показанный на фиг.18 и 19) демультиплексора 25.
Когда адрес верхних положений (самое верхнее положение) в каждом столбце равен 0, и адреса соответствующих положений в направлении столбца представлены целыми числами в порядке возрастания, перемежитель 24 со скручиванием столбцов устанавливает положение начала записи в положении с адресом 0 самого левого столбца, устанавливает положение начала записи в положении с адресом 2 во втором столбце (слева), устанавливает положение начала записи в положении с адресом 4 в третьем столбце, и устанавливает положение начала записи в положении с адресом 7 в четвертом столбце.
В каждом столбце, в котором положение начала записи не является положением с адресом 0, операция записи возвращается к верху (положение с адресом 0) после выполнения записи знакового бита в самом нижнем положении, и запись затем продолжается пока не будет достигнуто положение непосредственно перед положением начала записи. После этого запись выполняют для следующего (правого) столбца.
В результате выполнения описанного выше перемежения со скручиванием столбцов для кода LDPC, установленного в стандартах DVB-T.2, можно предотвратить формирование знаковыми битами, соответствующими переменным узлам, соединенным с одним и тем же проверочным узлом, одного символа (или содержание знаковых битов в том же символе) 16QAM. В результате характеристика декодирования в каналах, имеющих удаления, может быть улучшена.
На фиг.25 показано количество столбцов, необходимое для перемежения со скручиванием столбцом в запоминающем устройстве 31, и адреса положения начала записи для соответствующих кодов LDPC, которые установлены в стандартах DVB-T.2, имеют длину N кода, равную 64800 и имеют 11 разных кодовых скоростей, в связи с соответствующими способами модуляции.
В случае, когда кратное число b равно 1, например, QPSK используется, как способ модуляции, и, соответственно, число m битов в одном символе равно 2, запоминающее устройство 31 имеет два столбца для хранения 2×1 (=mb) битов в направлении строки и содержит 64800/(2×1) битов в направлении столбца, как показано на фиг.25.
Положение начала записи в первом столбце из двух столбцов в запоминающем устройстве 31 представляет собой положение по адресу 0, и положение начала записи во втором столбце представляет собой положение по адресу 2.
Если один из первого-третьего способов перестановки, показанных на фиг.18, используется, как способ перестановки при операции перестановки, выполняемой демультиплексором 25 (фиг.9), например, кратное число b равно 1.
В случае, когда кратное число b равно 2, в качестве способа модуляции используют, например, QPSK, и, соответственно, число m битов в одном символе равно 2, запоминающее устройство 31 имеет четыре столбца для хранения 2×2 битов в направлении строки, и содержит 64800/(2×2) битов в направлении столбца, как показано на фиг.25.
Положение начала записи в первом столбце из четырех столбцов в запоминающем устройстве 31 представляет собой положение по адресу 0, положение начала записи во втором столбце представляет собой положение по адресу 2, положение начала записи в третьем столбце представляет собой положение по адресу 4, и положение начала записи в четвертом столбце представляет собой положение по адресу 7.
Если используется четвертый способ перестановки, показанный на фиг.19, в качестве способа перестановки при операции перестановки, выполняемой, например, демультиплексором 25 (фиг.9), кратное число b равно 2.
В случае, когда кратное число b равняется 1, в качестве способа модуляции используется, например, 16QAM, и, соответственно, число m битов в одном символе равно 4, запоминающее устройство 31 имеет четыре столбца, для хранения 4×1 битов в направлении строки, и содержит 64800/(4×1) битов в направлении столбца, как показано на фиг.25.
Положение начала записи в первом столбце из четырех столбцов в запоминающем устройстве 31 представляет собой положение по адресу 0, положение начала записи во втором столбце представляет собой положение по адресу 2, положение начала записи в третьем столбце представляет собой положение по адресу 4, и положение начала записи в четвертом столбце представляет собой положение по адресу 7.
В случае, когда кратное число b равно 2, в качестве способа модуляции используется, например, 16QAM, и, соответственно, количество m битов в одном символе равно 4, запоминающее устройство 31 имеет восемь столбцов, для хранения 4×2 битов в направлении строки и содержит 64800/(4×2) бита в направлении столбца, как показано на фиг.25.
Положение начала записи в первом столбце из восьми столбцов в запоминающем устройстве 31 представляет собой положение по адресу 0, положение начала записи во втором столбце представляет собой положение по адресу 0, положение начала записи в третьем столбце представляет собой положение по адресу 2, положение начала записи в четвертом столбце представляет собой положение по адресу 4, положение начала записи в пятом столбце представляет собой положение по адресу 4, положение начала записи в шестом столбце представляет собой положение по адресу 5, положение начала записи в седьмом столбце представляет собой положение по адресу 7, и положение начала записи в восьмом столбце представляет собой положение по адресу 7.
В случае, когда кратное число b равняется 1, в качестве способа модуляции используется, например, 64QAM, и, соответственно, число m битов в одном символе равно 6, запоминающее устройство 31 имеет шесть столбцов, для хранения 6×1 битов в направлении строки и содержит 64800/(6×1) битов в направлении столбца, как показано на фиг.25.
Положение начала записи в первом столбце из шести столбцов в запоминающем устройстве 31 представляет собой положение по адресу 0, положение начала записи во втором столбце представляет собой положение по адресу 2, положение начала записи в третьем столбце представляет собой положение по адресу 5, положение начала записи в четвертом столбце представляет собой положение по адресу 9, положение начала записи в пятом столбце представляет собой положение по адресу 10, и положение начала записи в шестом столбце представляет собой положение по адресу 13.
В случае, когда кратное число b равно 2, например, 64QAM используется, как способ модуляции, и соответственно, число m битов в одном символе равно 6, запоминающее устройство 31 имеет 12 столбцов для хранения 6×2 битов в направлении строки и содержит 64800/(6×2) битов в направлении столбца, как показано на фиг.25.
Положение начала записи в первом столбце этих 12 столбцов в запоминающем устройстве 31 представляет собой положение по адресу 0, положение начала записи во втором столбце представляет собой положение по адресу 0, положение начала записи в третьем столбце представляет собой положение по адресу 2, положение начала записи в четвертом столбце представляет собой положение по адресу 2, положение начала записи в пятом столбце представляет собой положение по адресу 3, положение начала записи в шестом столбце представляет собой положение по адресу 4, положение начала записи в седьмом столбце представляет собой положение по адресу 4, положение начала записи в восьмом столбце представляет собой положение по адресу 5, положение начала записи в девятом столбце представляет собой положение по адресу 5, положение начала записи в десятом столбце представляет собой положение по адресу 7, положение начала записи в 11-ом столбце представляет собой положение по адресу 8, и положение начала записи в 12-ом столбце представляет собой положение по адресу 9.
В случае, когда кратное число b равно 1, в качестве способа модуляции используется, например, 256QAM, и соответственно, число m битов в одном символе равно 8, запоминающее устройство 31 имеет восемь столбцов для хранения 8×1 битов в направлении строки и содержит 64800/(8×1) биты в направлении столбца, как показано на фиг.25.
Положение начала записи в первом столбце этих восьми столбцов в запоминающем устройстве 31 представляет собой положение по адресу 0, положение начала записи во втором столбце представляет собой положение по адресу 0, положение начала записи в третьем столбце представляет собой положение по адресу 2, положение начала записи в четвертом столбце представляет собой положение по адресу 4, положение начала записи в пятом столбце представляет собой положение по адресу 4, положение начала записи в шестом столбце представляет собой положение по адресу 5, положение начала записи в седьмом столбце представляет собой положение по адресу 7, и положение начала записи в восьмом столбце представляет собой положение по адресу 7.
В случае, когда кратное число b равно 2, в качестве способа модуляции используется, например, 256QAM, и соответственно, число m битов в одном символе равно 8, запоминающее устройство 31 имеет 16 столбцов для хранения 8×2 битов в направлении строки и содержит 64800/(8×2) битов в направлении столбца, как показано на фиг.25.
Положение начала записи в первом столбце этих 16 столбцов в запоминающем устройстве 31 представляет собой положение по адресу 0, положение начала записи во втором столбце представляет собой положение по адресу 2, положение начала записи в третьем столбце представляет собой положение по адресу 2, положение начала записи в четвертом столбце представляет собой положение по адресу 2, положение начала записи в пятом столбце представляет собой положение по адресу 2, положение начала записи в шестом столбце представляет собой положение по адресу 3, положение начала записи в седьмом столбце представляет собой положение по адресу 7, положение начала записи в восьмом столбце представляет собой положение по адресу 15, положение начала записи в девятом столбце представляет собой положение по адресу 16, положение начала записи в десятом столбце представляет собой положение по адресу 20, положение начала записи в 11-ом столбце представляет собой положение по адресу 22, положение начала записи в 12-ом столбце представляет собой положение по адресу 22, положение начала записи в 13-ом столбце представляет собой положение по адресу 27, положение начала записи в 14-ом столбце представляет собой положение по адресу 27, положение начала записи в 15-ом столбце представляет собой положение по адресу 28, и положение начала записи в 16-ом столбце представляет собой положение по адресу 32.
В случае, когда кратное число b равно 1, в качестве способа модуляции используется, например, 1024 QAM, и соответственно, число m битов в одном символе равно 10, запоминающее устройство 31 имеет 10 столбцов для хранения 10×1 битов в направлении строки и содержит 64800/(10×1) битов в направлении столбца, как показано на фиг.25.
Положение начала записи в первом столбце этих 10 столбцов в запоминающем устройстве 31 представляет собой положение по адресу 0, положение начала записи во втором столбце представляет собой положение по адресу 3, положение начала записи в третьем столбце представляет собой положение по адресу 6, положение начала записи в четвертом столбце представляет собой положение по адресу 8, положение начала записи в пятом столбце представляет собой положение по адресу 11, положение начала записи в шестом столбце представляет собой положение по адресу 13, положение начала записи в седьмом столбце представляет собой положение по адресу 15, положение начала записи в восьмом столбце представляет собой положение по адресу 17, положение начала записи в девятом столбце представляет собой положение по адресу 18, и положение начала записи в десятом столбце представляет собой положение по адресу 20.
В случае, когда кратное число b равно 2, в качестве способа модуляции используется, например, 1024 QAM, и соответственно, число m битов в одном символе равно 10, запоминающее устройство 31 имеет 20 столбцов для хранения 10×2 битов в направлении строки и содержит 64800/(10×2) битов в направлении столбца, как показано на фиг.25.
Положение начала записи в первом столбце этих 20 столбцов в запоминающем устройстве 31 представляет собой положение по адресу 0, положение начала записи во втором столбце представляет собой положение по адресу 1, положение начала записи в третьем столбце представляет собой положение по адресу 3, положение начала записи в четвертом столбце представляет собой положение по адресу 4, положение начала записи в пятом столбце представляет собой положение по адресу 5, положение начала записи в шестом столбце представляет собой положение по адресу 6, положение начала записи в седьмом столбце представляет собой положение по адресу 6, положение начала записи в восьмом столбце представляет собой положение по адресу 9, положение начала записи в девятом столбце представляет собой положение по адресу 13, положение начала записи в десятом столбце представляет собой положение по адресу 14, положение начала записи в 11-ом столбце представляет собой положение по адресу 14, положение начала записи в 12-ом столбце представляет собой положение по адресу 16, положение начала записи в 13-ом столбце представляет собой положение по адресу 21, положение начала записи в 14-ом столбце представляет собой положение по адресу 21, положение начала записи в 15-ом столбце представляет собой положение по адресу 23, положение начала записи в 16-ом столбце представляет собой положение по адресу 25, положение начала записи в 17-ом столбце представляет собой положение по адресу 25, положение начала записи в 18-ом столбце представляет собой положение по адресу 26, положение начала записи в 19-ом столбце представляет собой положение по адресу 28, и положение начала записи в 20-ом столбце представляет собой положение по адресу 30.
В случае, когда кратное число b равно 1, в качестве способа модуляции используется, например, 4096 QAM, и соответственно, число m битов в одном символе равно 12, запоминающее устройство 31 имеет 12 столбцов для хранения 12×1 битов в направлении строки и содержит 64800/(12×1) битов в направлении столбца, как показано на фиг.25.
Положение начала записи в первом столбце этих 12 столбцов в запоминающем устройстве 31 представляет собой положение по адресу 0, положение начала записи во втором столбце представляет собой положение по адресу 0, положение начала записи в третьем столбце представляет собой положение по адресу 2, положение начала записи в четвертом столбце представляет собой положение по адресу 2, положение начала записи в пятом столбце представляет собой положение по адресу 3, положение начала записи в шестом столбце представляет собой положение по адресу 4, положение начала записи в седьмом столбце представляет собой положение по адресу 4, положение начала записи в восьмом столбце представляет собой положение по адресу 5, положение начала записи в девятом столбце представляет собой положение по адресу 5, положение начала записи в десятом столбце представляет собой положение по адресу 7, положение начала записи в 11-ом столбце представляет собой положение по адресу 8, и положение начала записи в 12-ом столбце представляет собой положение по адресу 9.
В случае, когда кратное число b равно 2, в качестве способа модуляции используется, например, 4096 QAM, и соответственно, число m битов в одном символе равно 12, запоминающее устройство 31 имеет 24 столбца для хранения 12×2 битов в направлении строки и содержит 64800/(12×2) битов в направлении столбца, как показано на фиг.25.
Положение начала записи в первом столбце этих 24 столбцов в запоминающем устройстве 31 представляет собой положение по адресу 0, положение начала записи во втором столбце представляет собой положение по адресу 5, положение начала записи в третьем столбце представляет собой положение по адресу 8, положение начала записи в четвертом столбце представляет собой положение по адресу 8, положение начала записи в пятом столбце представляет собой положение по адресу 8, положение начала записи в шестом столбце представляет собой положение по адресу 8, положение начала записи в седьмом столбце представляет собой положение по адресу 10, положение начала записи в восьмом столбце представляет собой положение по адресу 10, положение начала записи в девятом столбце представляет собой положение по адресу 10, положение начала записи в десятом столбце представляет собой положение по адресу 12, положение начала записи в 11-ом столбце представляет собой положение по адресу 13, положение начала записи в 12-ом столбце представляет собой положение по адресу 16, положение начала записи в 13-ом столбце представляет собой положение по адресу 17, положение начала записи в 14-ом столбце представляет собой положение по адресу 19, положение начала записи в 15-ом столбце представляет собой положение по адресу 21, положение начала записи в 16-ом столбце представляет собой положение по адресу 22, положение начала записи в 17-ом столбце представляет собой положение по адресу 23, положение начала записи в 18-ом столбце представляет собой положение по адресу 26, положение начала записи в 19-ом столбце представляет собой положение по адресу 37, положение начала записи в 20-ом столбце представляет собой положение по адресу 39, положение начала записи в 21-ом столбце представляет собой положение по адресу 40, положение начала записи в 22-ом столбце представляет собой положение по адресу 41, положение начала записи в 23-ьем столбце представляет собой положение по адресу 41, и положение начала записи в 24-ом столбце представляет собой положение по адресу 41.
На фиг.26 показано количество столбцов, необходимое для перемежения со скручиванием столбцов в запоминающем устройстве 31, и адреса положения начала записи для соответствующих кодов LDPC, которые установлены в стандартах DVB-T.2, имеют длину N кода 16200, и имеют 10 разных скоростей кода, в связи с соответствующими способами модуляции.
В случае, когда кратное число b равно 1, в качестве способа модуляции используется, например, QPSK, и соответственно, число m битов в одном символе равно 2, запоминающее устройство 31 имеет два столбца для хранения 2×1 битов в направлении строки и содержит 16200/(2×1) битов в направлении столбца, как показано на фиг.26.
Положение начала записи в первом столбце этих двух столбцов в запоминающем устройстве 31 представляет собой положение по адресу 0, и положение начала записи во втором столбце представляет собой положение по адресу 0.
В случае, когда кратное число b равно 2, в качестве способа модуляции используется, например, QPSK, и соответственно, число m битов в одном символе равно 2, запоминающее устройство 31 имеет четыре столбца для хранения 2×2 битов в направлении строки и содержит 16200/(2×2) битов в направлении столбца, как показано на фиг.26.
Положение начала записи в первом столбце этих четырех столбцов в запоминающем устройстве 31 представляет собой положение по адресу 0, положение начала записи во втором столбце представляет собой положение по адресу 2, положение начала записи в третьем столбце представляет собой положение по адресу 3, и положение начала записи в четвертом столбце представляет собой положение по адресу 3.
В случае, когда кратное число b равно 1, в качестве способа модуляции используется, например, 16QAM, и соответственно, число m битов в одном символе равно 4, запоминающее устройство 31 имеет четыре столбца для хранения 4×1 битов в направлении строки и содержит 16200/(4×1) битов в направлении столбца, как показано на фиг.26.
Положение начала записи в первом столбце этих четырех столбцов в запоминающем устройстве 31 представляет собой положение по адресу 0, положение начала записи во втором столбце представляет собой положение по адресу 2, положение начала записи в третьем столбце представляет собой положение по адресу 3 и положение начала записи в четвертом столбце представляет собой положение по адресу 3.
В случае, когда кратное число b равно 2, в качестве способа модуляции используется, например, 16QAM, и соответственно, число ш битов в одном символе равно 4, запоминающее устройство 31 имеет восемь столбцов для хранения 4×2 битов в направлении строки и содержит 16200/(4×2) битов в направлении столбца, как показано на фиг.26.
Положение начала записи в первом столбце этих восьми столбцов в запоминающем устройстве 31 представляет собой положение по адресу 0, положение начала записи во втором столбце представляет собой положение по адресу 0, положение начала записи в третьем столбце представляет собой положение по адресу 0, положение начала записи в четвертом столбце представляет собой положение по адресу 1, положение начала записи в пятом столбце представляет собой положение по адресу 7, положение начала записи в шестом столбце представляет собой положение по адресу 20, положение начала записи в седьмом столбце представляет собой положение по адресу 20 и положение начала записи в восьмом столбце представляет собой положение по адресу 21.
В случае, когда кратное число b равно 1, в качестве способа модуляции используется, например, 64QAM, и соответственно, число m битов в одном символе равно 6, запоминающее устройство 31 имеет шесть столбцов для хранения 6×1 битов в направлении строки и содержит 16200/(6×1) битов в направлении столбца, как показано на фиг.26.
Положение начала записи в первом столбце этих шести столбцов в запоминающем устройстве 31 представляет собой положение по адресу 0, положение начала записи во втором столбце представляет собой положение по адресу 0, положение начала записи в третьем столбце представляет собой положение по адресу 2, положение начала записи в четвертом столбце представляет собой положение по адресу 3, положение начала записи в пятом столбце представляет собой положение по адресу 7 и положение начала записи в шестом столбце представляет собой положение по адресу 7.
В случае, когда кратное число b равно 2, в качестве способа модуляции используется, например, 64QAM, и соответственно, число m битов в одном символе равно 6, запоминающее устройство 31 имеет 12 столбцов для хранения 6×2 битов в направлении строки и содержит 16200/(6×2) битов в направлении столбца, как показано на фиг.26.
Положение начала записи в первом столбце этих 12 столбцов в запоминающем устройстве 31 представляет собой положение по адресу 0, положение начала записи во втором столбце представляет собой положение по адресу 0, положение начала записи в третьем столбце представляет собой положение по адресу 0, положение начала записи в четвертом столбце представляет собой положение по адресу 2, положение начала записи в пятом столбце представляет собой положение по адресу 2, положение начала записи в шестом столбце представляет собой положение по адресу 2, положение начала записи в седьмом столбце представляет собой положение по адресу 3, положение начала записи в восьмом столбце представляет собой положение по адресу 3, положение начала записи в девятом столбце представляет собой положение по адресу 3, положение начала записи в десятом столбце представляет собой положение по адресу 6, положение начала записи в 11-ом столбце представляет собой положение по адресу 7 и положение начала записи в 12-ом столбце представляет собой положение по адресу 7.
В случае, когда кратное число b равно 1, в качестве способа модуляции используется, например, 256QAM, и соответственно, число m битов в одном символе равно 8, запоминающее устройство 31 имеет восемь столбцов для хранения 8×1 битов в направлении строки и содержит 16200/(8×1) битов в направлении столбца, как показано на фиг.26.
Положение начала записи в первом столбце этих восьми столбцов в запоминающем устройстве 31 представляет собой положение по адресу 0, положение начала записи во втором столбце представляет собой положение по адресу 0, положение начала записи в третьем столбце представляет собой положение по адресу 0, положение начала записи в четвертом столбце представляет собой положение по адресу 1, положение начала записи в пятом столбце представляет собой положение по адресу 7, положение начала записи в шестом столбце представляет собой положение по адресу 20, положение начала записи в седьмом столбце представляет собой положение по адресу 20 и положение начала записи в восьмом столбце представляет собой положение по адресу 21.
В случае, когда кратное число b равно 1, в качестве способа модуляции используется, например, 1024 QAM, и соответственно, число m битов в одном символе равно 10, запоминающее устройство 31 имеет 10 столбцов для хранения 10×1 битов в направлении строки и содержит 16200/(10×1) битов в направлении столбца, как показано на фиг.26.
Положение начала записи в первом столбце этих 10 столбцов в запоминающем устройстве 31 представляет собой положение по адресу 0, положение начала записи во втором столбце представляет собой положение по адресу 1, положение начала записи в третьем столбце представляет собой положение по адресу 2, положение начала записи в четвертом столбце представляет собой положение по адресу 2, положение начала записи в пятом столбце представляет собой положение по адресу 3, положение начала записи в шестом столбце представляет собой положение по адресу 3, положение начала записи в седьмом столбце представляет собой положение по адресу 4, положение начала записи в восьмом столбце представляет собой положение по адресу 4, положение начала записи в девятом столбце представляет собой положение по адресу 5 и положение начала записи в десятом столбце представляет собой положение по адресу 7.
В случае, когда кратное число b равно 2, в качестве способа модуляции используется, например, 1024 QAM, и соответственно, число m битов в одном символе равно 10, запоминающее устройство 31 имеет 20 столбцов для хранения 10×2 битов в направлении строки и содержит 16200/(10×2) битов в направлении столбца, как показано на фиг.26.
Положение начала записи в первом столбце этих 20 столбцов в запоминающем устройстве 31 представляет собой положение по адресу 0, положение начала записи во втором столбце представляет собой положение по адресу 0, положение начала записи в третьем столбце представляет собой положение по адресу 0, положение начала записи в четвертом столбце представляет собой положение по адресу 2, положение начала записи в пятом столбце представляет собой положение по адресу 2, положение начала записи в шестом столбце представляет собой положение по адресу 2, положение начала записи в седьмом столбце представляет собой положение по адресу 2, положение начала записи в восьмом столбце представляет собой положение по адресу 2, положение начала записи в девятом столбце представляет собой положение по адресу 5, положение начала записи в десятом столбце представляет собой положение по адресу 5, положение начала записи в 11-ом столбце представляет собой положение по адресу 5, положение начала записи в 12-ом столбце представляет собой положение по адресу 5, положение начала записи в 13-ом столбце представляет собой положение по адресу 5, положение начала записи в 14-ом столбце представляет собой положение по адресу 7, положение начала записи в 15-ом столбце представляет собой положение по адресу 7, положение начала записи в 16-ом столбце представляет собой положение по адресу 7, положение начала записи в 17-ом столбце представляет собой положение по адресу 7, положение начала записи в 18-ом столбце представляет собой положение по адресу 8, положение начала записи в 19-ом столбце представляет собой положение по адресу 8 и положение начала записи в 20-ом столбце представляет собой положение по адресу 10.
В случае, когда кратное число b равно 1, в качестве способа модуляции используется, например, 4096 QAM, и соответственно, число m битов в одном символе равно 12, запоминающее устройство 31 имеет 12 столбцов для хранения 12×1 битов в направлении строки и содержит 16200/(12×1) битов в направлении столбца, как показано на фиг.26.
Положение начала записи в первом столбце этих 12 столбцов в запоминающем устройстве 31 представляет собой положение по адресу 0, положение начала записи во втором столбце представляет собой положение по адресу 0, положение начала записи в третьем столбце представляет собой положение по адресу 0, положение начала записи в четвертом столбце представляет собой положение по адресу 2, положение начала записи в пятом столбце представляет собой положение по адресу 2, положение начала записи в шестом столбце представляет собой положение по адресу 2, положение начала записи в седьмом столбце представляет собой положение по адресу 3, положение начала записи в восьмом столбце представляет собой положение по адресу 3, положение начала записи в девятом столбце представляет собой положение по адресу 3, положение начала записи в десятом столбце представляет собой положение по адресу 6, положение начала записи в 11-ом столбце представляет собой положение по адресу 7 и положение начала записи в 12-ом столбце представляет собой положение по адресу 7.
В случае, когда кратное число b равно 2, в качестве способа модуляции используется, например, 4096 QAM, и соответственно, число m битов в одном символе равно 12, запоминающее устройство 31 имеет 24 столбца для хранения 12×2 битов в направлении строки и содержит 16200/(12×2) битов в направлении столбца, как показано на фиг.26.
Положение начала записи в первом столбце этих 24 столбцов в запоминающем устройстве 31 представляет собой положение по адресу 0, положение начала записи во втором столбце представляет собой положение по адресу 0, положение начала записи в третьем столбце представляет собой положение по адресу 0, положение начала записи в четвертом столбце представляет собой положение по адресу 0, положение начала записи в пятом столбце представляет собой положение по адресу 0, положение начала записи в шестом столбце представляет собой положение по адресу 0, положение начала записи в седьмом столбце представляет собой положение по адресу 0, положение начала записи в восьмом столбце представляет собой положение по адресу 1, положение начала записи в девятом столбце представляет собой положение по адресу 1, положение начала записи в десятом столбце представляет собой положение по адресу 1, положение начала записи в 11-ом столбце представляет собой положение по адресу 2 и положение начала записи в 12-ом столбце представляет собой положение по адресу 2, положение начала записи в 13-ом столбце представляет собой положение по адресу 2, положение начала записи в 14-ом столбце представляет собой положение по адресу 3, положение начала записи в 15-ом столбце представляет собой положение по адресу 7, положение начала записи в 16-ом столбце представляет собой положение по адресу 9, положение начала записи в 17-ом столбце представляет собой положение по адресу 9, положение начала записи в 18-ом столбце представляет собой положение по адресу 9, положение начала записи в 19-ом столбце представляет собой положение по адресу 10, положение начала записи в 20-ом столбце представляет собой положение по адресу 10, положение начала записи в 21-ом столбце представляет собой положение по адресу 10, положение начала записи в 22-ом столбце представляет собой положение по адресу 10, положение начала записи в 23-ьем столбце представляет собой положение по адресу 10 и положение начала записи в 24-ом столбце представляет собой положение по адресу 11.
На фиг.27 показана блок-схема последовательности операций, предназначенная для пояснения операций, выполняемых на кодере 115 LDPC, перемежителя 116 битов и кодере 117 QAM, показанных на фиг.8.
Кодер 115 LDPC ожидает подачи целевых данных LDPC от кодера 114 ВСН. На этапе S101, кодер 115 LDPC кодирует целевые данные LDPC в код LDPC, и подает код LDPC на перемежитель 116 битов. Операция затем переходит на этап S102.
На этапе S102, перемежитель 116 битов выполняет перемежение битов для кода LDPC, подаваемого от кодера 115 LDPC, и подает символ, полученный в результате преобразования в символы кода LDPC, подвергнутые перемежению битов, на кодер 117 QAM. Операция затем переходит на этап S103.
В частности, на этапе S102, перемежитель 23 четности в перемежителе 116 битов (фиг.9) выполняет перемежение четности кода LDPC, подаваемого от кодера 115 LDPC, и подает код LDPC, подвергнутый перемежению четности, на перемежитель 24 со скручиванием столбцов.
Перемежитель 24 со скручиванием столбцов выполняет перемежение со скручиванием столбцов для кода LDPC, подаваемого от перемежителя 23 четности, и подает код LDPC на демультиплексор 25.
Демультиплексор 25 выполняет операцию перестановки, для перестановки знаковых битов кода LDPC, подвергнутых перемежению со скручиванием столбцов, используя перемежитель 24 со скручиванием столбцов, и преобразует знаковые биты после перестановки в символьные биты символа (или в биты, представляющие символ).
Здесь операция перестановки, выполняемая демультиплексором 25, может быть выполнена в соответствии с одним из первого-четвертого способов перестановки, показанных на фиг.18 и 19, или может быть выполнена в соответствии с правилом назначения. Правило назначения представляет собой правило для назначения знаковых битов кода LDPC для символьных битов, представляющих символ, и будет подробно описано ниже.
Символ, получаемый в результате операции перестановки демультиплексором 25, подают от демультиплексора 25 на кодер 117 QAM.
На этапе S103, кодер 117 QAM выполняет ортогональную модуляцию путем отображения символа, подаваемого от демультиплексора 25, в точки сигнала, определенные способом модуляции, используемым при ортогональной модуляции, выполняемой на кодере QAM 117, и подает полученные в результате данные на перемежитель 118 по времени.
Как описано выше, в результате выполнения перемежения четности и перемежения со скручиванием столбцов, устойчивость к удалениям и пакетным ошибкам может быть повышена в случаях, когда знаковые биты кода LDPC передают, как один символ.
На фиг.9 перемежитель 23 четности, как блок для выполнения перемежения четности, и перемежитель 24 со скручиванием столбцов, как блок для выполнения перемежения со скручиванием столбцов, формируют по-отдельности друг от друга для простоты пояснения. Однако перемежитель 23 четности и перемежитель 24 со скручиванием столбцов могут быть сформированы интегрально.
В частности, как перемежение четности, так и перемежение со скручиванием столбцов могут быть выполнены в результате записи и считывания знаковых битов в запоминающее устройство и из него, и могут быть представлены матрицей, которая преобразует адреса, в которые знаковые биты были записаны (адреса записи), по адресам, в которых знаковые биты считывают (адреса считывания).
В соответствии с этим, если матрицу генерируют путем умножения матрицы, представляющей перемежение четности, выполняемого матрицей, представляющей перемежение со скручиванием столбцов, результат перемежения со скручиванием столбцов, выполняемый кодом LDPC, который был подвергнут перемежению, может быть получен в результате преобразования знаковых битов, используя эту матрицу.
Кроме того, демультиплексор 25 может быть сформирован интегрально с перемежителем 23 четности и перемежителем 24 со скручиванием столбцов.
В частности, операция перестановки, выполняемая в демультиплексоре 25, также может быть представлена матрицей, которая преобразует адреса записи в запоминающем устройстве 31, в котором содержится код LDPC, в адреса считывания.
В соответствии с этим, если матрица генерируется путем умножения матрицы, представляющей перемежение четности, на матрицу, представляющую перемежение со скручиванием столбцов, и матрицу, представляющую операцию перестановки, перемежение четности, перемежение со скручиванием столбцов и операция перестановки могут быть выполнены совместно, используя эту матрицу.
Следует отметить, что могут быть выполнены либо перемежение четности, или перемежение со скручиванием столбцов, или могут не выполняться ни перемежение четности, ни перемежение со скручиванием столбцов.
Далее, со ссылкой на фиг.28-30, будет описано моделирование, выполняемое для устройства 11 передачи, которое показано на фиг.8, для измерения частоты ошибок (частоты ошибок битов).
Моделирование было выполнено с использованием канала, имеющего дрожание сигнала с D/U 0 дБ.
На фиг.28 показана модель канала, используемого при моделировании.
В частности, в позиции А на фиг.28 показана модель дрожания, используемая при моделировании.
В позиции В на фиг.28 показана модель канала, имеющего дрожание сигнала, показанное, как модель в позиции А на фиг.28.
В позиции В на фиг.28 Н представлена модель дрожания сигнала, показанного в позиции А на фиг.28. Кроме того, в позиции В на фиг.28 N представлены ICI (Взаимные помехи между несущими) и, при моделировании, ожидаемое значение Е [N2] мощности аппроксимировали по AWGN.
На фиг.29 и 30 показаны взаимосвязи между частотами ошибки, получаемыми при моделировании и Допплеровской частотой fd дрожания сигнала.
На фиг.29 показана взаимосвязь между частотами ошибки и Допплеровской частотой fd в случаях, когда способ модуляции представляет собой 16QAM, скорость (r) кода равна (3/4), и способ перестановки представляет собой первый способ перестановки. На фиг.30 показана взаимосвязь между частотами ошибки и Допплеровской частотой fd в случаях, когда способ модуляции представляет собой 64QAM, скорость кода (r) равна (5/6), и способ перестановки представляет собой первый способ перестановки.
Кроме того, на фиг.29 и 30, каждая толстая линия указывает взаимосвязь между частотами ошибки и Допплеровской частотой fd в случаях, когда выполняют все операция перемежения четности, перемежения со скручиванием столбцов и операцию перестановки. Каждая тонкая линия указывает взаимосвязь между частотой ошибок и Допплеровской частотой fd в случаях, когда выполняют только операцию перестановки среди операций перемежения, перемежения со скручиванием столбцов и операцией перестановки.
Как можно видеть на любой из фиг.29 и 30, улучшенные частоты ошибок (более низкие частоты ошибок) были получены в случае, когда выполняли все операции перемежения четности, перемежения со скручиванием столбцов и операцию перестановки, чем в случаях, когда выполняли только операцию перестановки.
Пример структуры кодера 115 LDPC
На фиг.31 показана блок-схема, представляющая пример структуры кодера 115 LDPC, показанного на фиг.8.
Следует отметить, что кодер 122 LDPC, показанный на фиг.8, имеет такую же структуру.
Как описано выше со ссылкой на фиг.12 и 13, в стандартах 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 (фиг.12 и 13).
Кодер 115 LDPC может выполнять кодирование с кодами LDPC, имеющими длины N кода 64800 битов и 16200 битов при соответствующих скоростях кода (кодирование с коррекцией ошибок), в соответствии с матрицей Н проверки четности, подготовленной для каждой длины N кода и каждой скорости кода.
Кодер 115 LDPC включает в себя модуль 601 кодирования и модуль 602 хранения.
Модуль 601 кодирования включает в себя модуль 611 установки степени кода, модуль 612 считывания таблицы исходного значения, модуль 613 генерирования матрицы проверки, модуль 614 считывания информационного бита, модуль 615 вычисления четности кодирования и модуль 616 управления. Модуль 601 кодирования выполняет кодирование LDPC для целевых данных LDPC, подаваемых на кодер 115 LDPC, и подает полученный в результате код LDPC на перемежитель 116 битов (фиг.8).
В частности, модуль 611 установки скорости кода устанавливает длину N кода и скорость кода для кода LDPC, в соответствии, например, с операцией оператора.
Модуль 612 считывания таблицы исходного значения считывает от модуля 602 хранения, описанную ниже таблицу исходного значения матрицы проверки, которая соответствует длине N кода и скорости кода, установленных в модуле 611 установки скорости кода.
На основе таблицы исходного значения матрицы проверки, считанной с помощью модуля 612 считывания таблицы исходного значения, модуль 613 генерирования матрицы проверки генерирует матрицу Н проверки четности путем размещения элементов "1" из информационной матрицы HA в соответствии с длиной информации К (=длине N кода-длина М четности), соответствующей длине N кода и скорости кода, установленным модулем 611 установки скорости кода в направлении столбца в циклах по 360 столбцов (в соответствии с единичным числом Р столбцов в циклической структуре). Матрицу Н проверки четности затем сохраняют в модуле 602 хранения.
Модуль 614 считывания информационного бита считывает (выделяет) информационные биты, эквивалентные длине К информации, из целевых данных LDPC, подаваемых на кодер 115 LDPC.
Модуль 615 вычисления четности кодирования считывает матрицу Н проверки четности с помощью модуля 613 генерирования матрицы проверки из модуля 602 хранения и, используя матрицу Н проверки четности, вычисляет биты четности для информационных битов, считываемых модулем 614 считывания информационного бита, в соответствии с заданным уравнением, для генерирования кодового слова (кода LDPC).
Модуль 616 управления управляет соответствующими блоками, формирующими модуль 601 кодирования.
Модуль 602 хранения сохраняет таблицы исходного значения матрицы проверки и т.п., соответствующие скоростям кода и т.п., показанные на фиг.12 и 13 для соответствующих длин N кода, например, 64800 битов и 16200 битов. Модуль 602 хранения также временно сохраняет данные, необходимые при выполнении операции модуля 601 кодирования.
На фиг.32 показана блок-схема последовательности операций, предназначенная для пояснения операция кодера 115 LDPC, показанного на фиг.31.
На этапе S201 модуль 611 установки скорости кода определяет (устанавливает) длину N кода и скорость r кода, используемые при кодировании LDPC.
На этапе S202, модуль 612 считывания таблицы исходного значения считывает от модуля 602 хранения заданную таблицу исходного значения матрицы проверки, соответствующую длине N кода и скорости r кода, определенных модулем 611 установки скорости кода.
На этапе S203, используя таблицу исходного значения матрицы проверки, которую считал модуль 612 считывания таблицы исходного значения от модуля 602 хранения, модуль 613 генерирования матрицы проверки определяет (генерирует) матрицу Н проверки четности кода LDPC, имеющего длину N кода и скорость r кода, определенные модулем 611 установки скорости кода, и подает, и сохраняет матрицу Н проверки четности на модуль 602 хранения.
На этапе S204, модуль 614 считывания информационного бита считывает из целевых данных LDPC, подаваемых от кодера 115 LDPC, информационные биты, эквивалентные длине информации K (=N×r), соответствующей длине N кода и скорости r кода, определенных модулем 611 установки скорости кода, и считывает матрицу Н проверки четности, определенную модулем 613 генерирования матрицы проверки от модуля 602 хранения. Информационные биты и матрицу Н проверки четности подают на модуль 615 вычисления четности кодирования.
На этапе S205 модуль 615 вычисления четности кодирования последовательно вычисляет биты четности кодового слова с, удовлетворяющего уравнению (8).
В уравнении (8) с представляет вектор строки, как кодовое слово (код LDPC), и cT представляет транспонирование вектора с строки.
В случае, когда часть информационного бита вектора с строки, как код LDPC (одно кодовое слово) представлено вектором А строки, и часть бита четности представлена вектором Т строки, как описано выше, вектор с строки может быть выражен уравнением, с=[А|Т], используя вектор А строки, как информационные биты, и вектор Т строки, как биты четности.
Матрица Н проверки четности и вектор строки с=[А|Т], как код LDPC, должны удовлетворять уравнению, HcT=0, и вектор Т строки, как биты четности вектора строки с=[А|Т], который удовлетворяет уравнению HcT=0, могут быть последовательно определены путем изменения элемента в каждой строке на "0" в векторе HcT столбца, в уравнении, HcT=0, начиная с элемента в первой строке, если матрица HT четности в матрице Н=[НА|HT] проверки четности имеет лестничную структуру, показанную на фиг.11.
После определения битов Т четности для информационных битов А, модуль 615 вычисления четности кодирования выводит кодовое слово с=[А|Т], выраженное информационными битами А и битами Т четности, как результат кодирования LDPC информационных битов А.
После этого, на этапе S206, модуль 616 управления определяет, следует ли закончить кодирование LDPC. Если на этапе S206 определяется, что кодирование LDPC не следует закончить, или если, например, существует больше целевых данных LDPC, которые должны быть подвергнуты кодированию LDPC, операция возвращается на этап S201 (или S204), и процедуры этапов S201 (или S204)-S206 повторяются.
Если на этапе S206 определяют, что кодирование LDPC следует закончить, или если, например, больше нет целевых данных LDPC, которые требуется подвергнуть кодированию LDPC, кодер 115 заканчивает операцию.
Как описано выше, подготавливают таблицы исходного значения матрицы проверки, соответствующие соответствующим длинам N кода и соответствующим скоростям r кода, и кодер 115 LDPC выполняет кодирование LDPC для заданной длины N кода и заданной скорости r кода, используя матрицу Н проверки четности, генерируемую из таблицы исходного значения матрицы проверки, соответствующей заданной длине N кода и заданной скорости r кода.
Примеры таблиц исходного значения матрицы проверки
Таблица исходного значения матрицы проверки представляет собой таблицу, которая представляет через интервалы 360 столбцов (соответствующих единичному числу Р столбцов в циклической структуре), участки элементов "1" информационной матрицы HA (фиг.10), соответствующие длине К информации матрицы Н проверки четности, соответствующей длине N кода и скорости r кода для кода LDPC (код LDPC, определенный матрицей Н проверки четности), и подготовлена заранее для каждой из матриц Н проверки четности, имеющих соответствующие длины N кода, и соответствующие скорости r кода.
На фиг.33 показана схема, представляющая пример таблицы исходного значения матрицы проверки.
В частности, на фиг.33 показана таблица исходного значения матрицы проверки для матрицы Н проверки четности, имеющей длину N кода 16200 битов и скорость кода (скорость кода, выраженная в соответствии с DVB-T.2) r равную ¼, как установлено в стандартах DVB-T.2.
Используя таблицу исходного значения матрицы проверки, модуль 613 генерирования матрицы проверки (фиг.31) определяет матрицу Н проверки четности следующим образом.
На фиг.34, в частности, показан способ определения матрицы Н проверки четности из таблицы исходного значения матрицы проверки.
Таблица исходного значения матрицы проверки, показанная на фиг.34, представляет собой таблицу исходного значения матрицы проверки для матрицы Н проверки четности, имеющей длину N кода 16200 битов и скорость r кода 2/3, как установлено в стандартах DVB-T.2.
Как описано выше, таблица исходного значения матрицы проверки представляет собой таблицу, которая показывает, через интервалы 360 столбцов (соответствующих единичному числу Р столбцов циклической структуры), положения элементов "1" информационной матрицы HA (фиг.10) в соответствии с длиной К информации, которая соответствует длине N кода и скорости r кода для кода LDPC. В i-ой строке таблицы количество элементов, равных "1" в строке (причем номер первой строки равен "0" в матрице Н проверки четности) в (1+360×(i-1))-ом столбце в матрице Н проверки четности представлены по номеру весов столбца, назначенных для (1+360×(i-1))-ого столбца.
Поскольку матрица HT четности (фиг.10), соответствующая длине М четности матрицы Н проверки четности, определена, как показано на фиг.21, информационная матрица HA (фиг.10), соответствующая длине K информации матрицы Н проверки четности, определена, в соответствии с таблицей исходного значения матрицы проверки.
Количество (k+1) строк в таблице исходного значения матрицы проверки изменяется в зависимости от длины K информации.
Взаимосвязь, выраженная уравнением (9), установлена между длиной K информации и количеством (k+1) строк в таблице исходного значения матрицы проверки.
Здесь 360, в уравнении (9), представляет собой единичное число Р столбцов в циклической структуре, описанной со ссылкой на фиг.22.
В таблице исходного значения матрицы проверки, показанной на фиг.34, 13 цифровых значений представлено в каждой из первой-третьей строк, и три цифровых значения представлены в каждой из четвертой по (k+1)-ой (30-ой на фиг.34) строк.
Поэтому, вес столбца в матрице Н проверки четности, определенный из таблицы исходного значения матрицы проверки, показанной на фиг.34, равен 13 в каждом из с первого по (1+360×(3-1)-1)-ый столбцов, и 3 в каждом из от (1+360×(3-1))-ого по K-ый столбцов.
Первая строка в таблице исходного значения матрицы проверки, показанной на фиг.34, представляет 0, 2084, 1613, 1548, 1286, 1460, 3196, 4297, 2481, 3369, 3451, 4620 и 2622, которые указывают, что в первом столбце в матрице Н проверки четности, элементы равны "1" в строках с номерами строк 0, 2084, 1613, 1548, 1286, 1460, 3196, 4297, 2481, 3369, 3451, 4620 и 2622 (и что другие элементы равны "0").
Кроме того, во второй строке таблицы исходного значения матрицы проверки, показанной на фиг.34, представлены 1, 122, 1516, 3448, 2880, 1407, 1847, 3799, 3529, 373, 971, 4358 и 3108, которые указывают, что в 361-ом (=(1+360×(2-1))-ом) столбце в матрице Н проверки четности, элементы равны "1" в строках с номерами строк 1, 122, 1516, 3448, 2880, 1407, 1847, 3799, 3529, 373, 971, 4358 и 3108.
Как описано выше, таблица исходного значения матрицы проверки представляет положения элементов "1" информационной матрицы HA матрицы Н проверки четности через интервалы 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-ой строке (i-ой сверху) и j-ом столбце (j-ом слева) в таблице исходного значения матрицы проверки представлено, как hi, j, и номер строки j-oro элемента "1" в w-ом столбце в матрице Н проверки четности представлен Hw-j, число Hw-j строки элемента "1" в w-ом столбце, который не является (1+360×(i-1))-ым столбцом в матрице Н проверки четности, может быть определено с помощью уравнения (10).
Здесь, mod(x,y) обозначает остаток, полученный при делении x на y.
P представляет единичное число столбца в описанной выше циклической структуре, и равно, например, 360, как описано выше в соответствии со стандартами DVB-T.2. Кроме того, q представляет значение М/360, полученное путем деления длины М четности на единичное число Р столбцов (=360) в циклической структуре.
В соответствии с таблицей исходного значения матрицы проверки, модуль 613 генерирования матрицы проверки (фиг.31) идентифицирует номер строки элемента "1" в (1+360×(i-1))-ом столбце в матрице Н проверки четности.
Кроме того, модуль 613 генерирования матрицы проверки (фиг.31) также определяет номер Hw-j строки элемента "1" в w-ом столбце, который не является (1+360×(i-1))-ым столбцом, в матрице Н проверки четности, в соответствии с уравнением (10), и генерирует матрицу Н проверки четности, в которой элементы в строках с номерами строк, определенными в соответствии с описанным выше подходом, равны "1".
Коды LDPC, пригодные для портативных оконечных устройств
Цифровая широковещательная передача для мобильных оконечных устройств, которая может быть выполнена с как можно меньшими изменениями в отношении конфигураций устройства передачи и устройства приема, в соответствии с DVB-T.2, которые представляют собой стандарты, например, для цифровой широковещательной передачи, предназначенной для стационарных оконечных устройств, была бы предпочтительной в смысле затрат.
Здесь DVB-T.2 определяет коды LDPC, имеющие две длины N кода 64 килобит и 16 килобит.
Если коды LDPC, установленные в DVB-T.2, используются в цифровой широковещательной передаче, предназначенной для портативных оконечных устройств, использование кодов LDPC, имеющих более короткую длину кода 16 килобит среди двух длин кода, определенных в DVB-T.2, является более соответствующим для цифровой широковещательной передачи, предназначенной для портативных оконечных устройств, поскольку коды LDPC, имеющие меньшую длину кода, позволяют уменьшить требуемое запоминающее устройство и задержки по времени при декодировании кодов LDPC, по сравнению с кодами LDPC, имеющими большую длину кода.
Однако, в портативных оконечных устройствах, возникают случаи, когда для уменьшения требуемой нагрузки при выполнении операций, таких как декодирование кодов LDPC, количество повторений декодирования кода LDPC (количество С повторений декодирования) ограничено до меньшего числа, чем, например, в случаях стационарных оконечных устройств. При цифровой широковещательной передаче, предназначенной для портативных оконечных устройств, 16-килобитные коды LDPC, установленные в DVB-T.2, возможно, могут не иметь достаточно высокой устойчивости к ошибкам.
Учитывая это, устройство 11 передачи (фиг.7) может выполнять цифровую широковещательную передачу для портативных оконечных устройств, используя новые 16-килобитные коды LDPC, которые имеют более высокую устойчивость к ошибке, чем 160-килобитные коды LDPC, установленные в DVB-T.2, как коды LDPC, пригодные для цифровой широковещательной передачи для портативных оконечных устройств (ниже также называются кодами LDPC для портативных оконечных устройств).
Что касается кодов LDPC для портативных оконечных устройств, для поддержания как можно более высокой совместимости с DVB-T.2, матрица HT четности в каждой матрице Н проверки четности имеет лестничную структуру (фиг.11), как и в случае кодов LDPC, установленных в DVB-T.2.
Кроме того, что касается кодов LDPC для портативных оконечных устройств, информационная матрица НА в каждой матрице Н проверки четности имеет циклическую структуру, и единичное число Р столбцов в циклической структуре равно 360, как и в кодах LDPC, установленных в DVB-T.2.
На фиг.35-43 показаны схемы, представляющие примеры таблиц исходного значения матрицы проверки для кодов LDPC, которые имеют длину N кода 16 килобит (для портативных оконечных устройств), как описано выше.
В частности, на фиг.35 показана таблица исходного значения матрицы проверки для матрицы Н проверки четности, имеющей длину N кода 16 килобит и скорость r кода 1/5.
На фиг.36 показана таблица исходного значения матрицы проверки для матрицы Н проверки четности, имеющей длину N кода 16 килобит и скорость r кода 4/15.
На фиг.37 показана таблица исходного значения матрицы проверки для матрицы Н проверки четности, имеющей длину N кода 16 килобит и скорость r кода 1/3.
На фиг.38 показана таблица исходного значения матрицы проверки для матрицы Н проверки четности, имеющей длину N кода 16 килобит и скорость r кода 2/5.
На фиг.39 показана таблица исходного значения матрицы проверки для матрицы Н проверки четности, имеющей длину N кода 16 килобит и скорость r кода 4/9.
На фиг.40 показана таблица исходного значения матрицы проверки для матрицы Н проверки четности, имеющей длину N кода 16 килобит и скорость r кода 7/15.
На фиг.41 показана таблица исходного значения матрицы проверки для матрицы Н проверки четности, имеющей длину N кода 16 килобит и скорость r кода 8/15.
На фиг.42 показана таблица исходного значения матрицы проверки для матрицы Н проверки четности, имеющей длину N кода 16 килобит и скорость r кода 3/5.
На фиг.43 показана таблица исходного значения матрицы проверки для матрицы Н проверки четности, имеющей длину N кода 16 килобит и скорость r кода 2/3.
При цифровой широковещательной передаче, предназначенной для портативных оконечных устройств, кодер 115 LDPC (фиг.8 и 31) выполняет кодирование кодов LDPC, имеющих длину N кода 16 килобит и одну из девяти скоростей r кода 1/5, 4/15, 1/3, 2/5, 4/9, 7/15, 8/15, 3/5 и 2/3, используя матрицу Н проверки четности, определенную из соответствующей одной из таблиц исходного значения матрицы проверки, показанных на фиг.35-43.
Коды LDPC, полученные путем использования матриц Н проверки четности, определенных из таблиц исходного значения матрицы проверки, показанных на фиг.35-43, представляют собой коды LDPC с высокими рабочими характеристиками.
Здесь коды LDPC с высокими рабочими характеристиками представляют собой коды LDPC, полученные из соответствующих матриц Н проверки четности.
Соответствующая матрица Н проверки четности представляет собой матрицу проверки четности, которая удовлетворяет заданным условиям, в соответствии с которыми коды LDPC, получаемые из матрицы Н проверки четности, имеют более низкое значение BER (частота ошибок битов) при передаче с низким значением Es/N0 (отношение мощности сигнала к мощности шумов на символ) или Eb/No (отношение мощности сигнала к мощности шумов на бит).
Соответствующая матрица Н проверки четности может быть определена путем выполнения моделирования для измерения BER, когда коды LDPC, полученные из различных матриц проверки четности, удовлетворяющих заданным условиям, передают, например, при низком отношении Es/No.
Заданные условия, которые должны удовлетворяться соответствующей матрицей Н проверки четности, представляют собой такие, что результат анализа, выполняемого в соответствии со способом анализа характеристик кода, называемым "эволюцией плотности", является хорошим, и при этом, например, отсутствует элемент петли "1", называемый "циклом 4".
Известно, что характеристики декодирования кода LDPC деградируют, если плотность элементов "1" в информационной матрице HA будет высокой, как в "цикле 4". Поэтому, одно из заданных состояний, которые должны удовлетворяться соответствующей матрицей Н проверки четности, состоит в том, что должен отсутствовать "цикл 4".
Заданные условия, которые должны удовлетворяться в соответствующей матрице Н проверки четности, могут быть, соответственно, определены так, чтобы улучшить характеристики декодирования кода LDPC и способствовать (упрощать) операцию декодирования кода LDPC.
На фиг.44 и 45 показаны схемы для пояснения эволюции плотности, которая может достичь результата анализа, как заданного условия, которое должно удовлетворяться соответствующей матрицей Н проверки четности.
Эволюция плотности представляет собой способ анализа кода для вычисления ожидаемого значения вероятности ошибки всего кода LDPC (в совокупности), который имеет длину N кода, равную ∞ и который характеризуется последней описанной последовательностью степени.
В случае, когда значение распределения шумов постепенно увеличивается от 0 в канале AWGN, ожидаемое значение вероятности ошибки в совокупности вначале равно 0, но не равно 0, когда значения дисперсии шумов становятся равными или больше, чем пороговое значение.
Используя эволюцию плотности, пороговые значения дисперсии шумов (ниже также называются пороговыми значениями рабочих характеристик), при которых ожидаемые значения вероятности ошибки не равны 0, сравнивают друг с другом, для определения уровня характеристики каждой совокупности (соответствие каждой матрицы проверки четности).
Определяют совокупность, которой принадлежит определенный код LDPC, и выполняют эволюцию плотности для этой совокупности. Таким образом, можно приблизительно оценить рабочие характеристики кода LDPC.
В соответствии с этим, если будет найдена совокупность с высокими характеристиками, коды LDPC с высокими характеристиками могут быть найдены среди кодов LDPC, принадлежащих совокупности.
Здесь упомянутая выше последовательность степени обозначает пропорции переменных узлов и проверочных узлов, имеющих веса соответствующих значений, к длине N кода для кодов LDPC.
Например, регулярный (3, 6) код LDPC, имеющий скорость кода ½, принадлежит совокупности, характеризующейся последовательностью степени, указывающей, что вес всех переменных узлов (вес столбца) равен 3, и вес всех проверочных узлов (вес строки) равен 6.
На фиг.44 показан граф Таннера такой совокупности.
На графе Таннера, показанном на фиг.44, присутствуют N переменных узлов, обозначенных кружками (ο), при этом N равно значению N длины кода. Здесь присутствуют N/2 проверочных узлов, обозначенных квадратами (□), N/2 представляет собой значение, получаемое путем умножения длины N кода на скорость 1/2 кода.
Три ребра соединены с каждым переменным узлом, при этом вес столбца равен трем. В соответствии с этим, в общей сложности 3N ребер соединены с N переменными узлами.
В то же время, шесть ребер соединены с каждым проверочным узлом, при этом вес строки равен шести. В соответствии с этим, в общей сложности 3N ребер соединены с N/2 проверочными узлами.
Кроме того, на графе Таннера, показанном на фиг.44, присутствует один перемежитель.
Перемежитель случайным образом изменяет компоновку 3N ребер, соединенных с N переменными узлами, и каждое из ребер в измененной компоновке соединено с одним из 3N ребер, соединенных с N/2 проверочными узлами.
Присутствуют (3N)!(=(3N)×(3N-1)×…×1) структур изменения компоновки, в которых перемежитель изменяет компоновку 3N ребер, соединенных с N переменными узлами. В соответствии с этим, совокупность, характеризуемая последовательностью степени, в которой все переменные узлы имеют вес 3, и все проверочные узлы имеют вес 6, установлены из (3N)! кодов LDPC.
При моделировании, для определения кодов LDPC с высокими рабочими характеристиками (соответствующих матриц проверки четности), совокупность многореберного типа используется в эволюции плотности.
Используя многореберный тип, перемежитель, с помощью которого продолжаются ребра, соединенные с переменными узлами, и ребра, соединенные с проверочными узлами, разделяют на два или больше перемежителей (множество ребер). При этом совокупность характеризуется большим количеством деталей.
На фиг.45 показан пример графа Таннера совокупности многореберного типа.
На графе Таннера, показанном на фиг.45, присутствуют два перемежителя, такие, как первый перемежитель и второй перемежитель.
Кроме того, на графе Таннера, показанном на фиг.45, присутствуют v1 переменных узлов, каждый из которых имеет одно ребро, соединенное с первым перемежителем, и не имеет ребер, соединенных со вторым перемежителем, присутствуют v2 переменных узлов, каждый из которых имеет одно ребро, соединенное с первым перемежителем, и два ребра, соединенные со вторым перемежителем, и присутствуют v3 переменных узлов, каждый из которых не имеет ребер, соединенных с первым перемежителем, и имеет два ребра, соединенных со вторым перемежителем.
Далее, на графе Таннера, показанном на фиг.45, присутствуют c1 проверочных узлов, каждый из которых имеет два ребра, соединенных с первым перемежителем, и не имеет ребер, соединенных со вторым перемежителем, при этом присутствуют с2 проверочных узла, каждый из которых имеет два ребра, соединенных с первым перемежителем, и два ребра, соединенных со вторым перемежителем, и присутствуют с3 проверочных узла, каждый из которых не имеет ребер, соединенных с первым перемежителем, и имеет три ребра, соединенных со вторым перемежителем.
Эволюция плотности и ее воплощение раскрыты, например, в публикации "On the Design of Low-Density Parity-Check Codes within 0.0045 dB of the Shannon Limit", S.Y. Chung, G.D. Forney, T.J. Richardson, R. Urbanke, IEEE Communications Leggers, VOL.5, NO.2, Feb 2001.
В каждом из вариантов моделирования, для определения (таблицы исходного значения матрицы проверки) кодов LDPC для портативных оконечных устройств, показанных на фиг.35-43, выбирают совокупность, которая имеет заданное значение или меньшее значение, чем заданное значение, как пороговое значение Eb/N0 рабочих характеристик, при котором начинается падение BER (становится меньшим) в результате эволюции плотности многореберного типа, и коды LDPC, которые снижают BER с помощью способов модуляции, используемых при цифровой широковещательной передаче для портативных оконечных устройств, такие как 16QAM и 64QAM, как коды LDPC с высокими рабочими характеристиками среди кодов LDPC, принадлежащих совокупности.
Поскольку портативное оконечное устройство имеет меньшую устойчивость к ошибкам, чем стационарное оконечное устройство, способ модуляции, который включает в себя относительно меньшее количество точек сигнала, таких как QPSK, 16QAM, 64QAM или 256QAM, используется при цифровой широковещательной передаче для портативных оконечных устройств, для повышения устойчивости к ошибкам.
Описанные выше таблицы исходного значения матрицы проверки, показанные на фиг.35-43, представляют собой таблицы исходного значения матрицы проверки кодов LDPC, имеющих длину N кода 16 килобит, которая определена в ходе описанного выше моделирования.
На фиг.46 показана схема, представляющая минимальные длины циклов и пороговые значения рабочих характеристик матриц Н проверки четности, определенных по таблицам исходного значения матрицы проверки девяти кодов LDPC, которые имеют длину N кода 16 килобит и имеют скорости кода 1/5, 4/15, 1/3, 2/5, 4/9, 7/15, 8/15, 3/5 и 2/3, как показано на фиг.35-43.
Среди матриц Н проверки четности, определенных из таблиц исходного значения матрицы проверки, показанных на фиг.35-43, минимальные длины циклов матриц Н проверки четности для скоростей r кода 1/5, 4/15 и 3/5 составляют восемь циклов, и минимальные длины циклов матриц Н проверки четности для скоростей r кода 1/3, 2/5, 4/9, 7/15, 8/15 и 2/3 составляет шесть циклов.
Поэтому, отсутствует "цикл 4" среди матриц Н проверки четности, определенных из таблиц исходного значения матрицы проверки, показанных на фиг.35-43.
Чем ниже скорость r кода, тем выше избыточность кода LDPC. Поэтому, пороговое значение рабочих характеристик проявляет тенденцию улучшения (становится меньше) по мере уменьшения скорости r кода.
На фиг.47 показана схема для пояснения матрицы Н проверки четности (определенной по таблицам исходного значения матрицы проверки) по фиг.35-43 (ниже также называются матрицами Н проверки четности кодов LDPC для портативных оконечных устройств).
В столбцах КХ, начиная с первой строки матрицы Н проверки четности кода LDPC для портативных оконечных устройств, вес столбца равен X. В столбцах KY1, следующих после столбцов КХ, вес столбца составляет Y1. В столбцах KY2, которые следуют после столбцов KY1, вес столбца составляет Y2. В столбцах (М-1), которые следуют после столбцов KY2, вес столбца равен 2. В последнем одном столбце вес столбца равен 1.
Здесь KX+KY1+…+KY2+М-1+1 равно длине N кода = 16200 битов.
На фиг.48 показана схема, представляющая номера столбцов КХ, KY1, KY2 и М, показанных на фиг.47, и веса X, Y1 и Y2 столбцов при соответствующих скоростях r кода (=1/5, 4/15, 1/3, 2/5, 4/9, 7/15, 8/15, 3/5 и 2/3) кодов LDPC для портативных оконечных устройств.
В матрицах Н проверки четности кодов LDPC для портативных оконечных устройств, имеющих длину N кода 16к, столбцы, расположенные ближе к верху (левая сторона) проявляют тенденцию иметь большие веса столбцов, как в матрицах проверки четности, установленных в соответствии с DVB-T.2, описанных со ссылкой на фиг.12 и 13. Поэтому, знаковый бит в верхней части кода LDPC для портативного оконечного устройства проявляет тенденцию быть сильным в отношении ошибок (обладать устойчивостью к ошибкам).
На фиг.49 показана схема, представляющая результаты моделирования, выполняемого для измерения BER кодов LDPC для портативных оконечных устройств, показанных на фиг.35-43.
При моделировании моделировали каналы AWGN. BPSK использовали, как способ модуляции, и число С повторений декодирования составило 50.
На фиг.49 по оси абсцисс обозначено Es/N0 (отношение мощности сигнала к мощности шумов на символ), и по оси ординат обозначена BER.
Для скоростей кода 1/5, 1/3, 2/5, 4/9, 3/5 и 2/3 среди скоростей г кода 1/5, 4/15, 1/3, 2/5, 4/9, 7/15, 8/15, 3/5 и 2/3 кодов LDPC для портативных оконечных устройств, коды LDPC, которые имеют соответствующие скорости кода и длину N кода 16к (ниже также называются стандартными 16к кодами), установлены в DVB-T.2.
Как подтвердилось в ходе моделирования, BER кода LDPC для портативных оконечных устройств, имеющих любую одну из скоростей r кода, таких, как 1/5, 1/3, 2/5, 4/9, 3/5 и 2/3, лучше, чем BER стандартного 16к кода, который установлен в DVB-T.2 и имеет такую же скорость кода. В соответствии с этим, в кодах LDPC для портативных оконечных устройств, устойчивость к ошибкам может быть увеличена.
Ни один из стандартных 16к кодов не имеет такие же скорости кода, как 4/15, 7/15 и 8/15 среди скоростей r кода 1/5, 4/15, 1/3, 2/5, 4/9, 7/15, 8/15, 3/5 и 2/3 кодов LDPC для портативных оконечных устройств.
Другими словами, коды LDPC для портативных оконечных устройств включают в себя коды LDPC, имеющие скорости r кодов 4/15, 7/15 и 8/15, которые не существуют среди стандартных 16к кодов.
Поскольку коды LDPC для портативных оконечных устройств включают в себя коды LDPC, имеющие скорости r кода 4/15, 7/15 и 8/15, которые не существуют среди стандартных 16к кодов, как описано выше, BER в отношении соответствующих скоростей r кода (=1/5, 4/15, 1/3, 2/5, 4/9, 7/15, 8/15, 3/5 и 2/3) кодов LDPC для портативных оконечных устройств обозначают через относительно равные интервалы, которые равны или короче, чем заданный интервал приблизительно 1 дБ в направлении Es/N0, как показано на фиг.49.
Что касается стандартных 16к кодов, с другой стороны, скорости r кода 4/15, 7/15 и 8/15 не существуют среди стандартных 16к кодов. Поэтому, относительно широкие зазоры приблизительно 2 дБ в направлении Es/N0 появляются между BER в отношении скорости r кода 1/5 (выражено, как ¼, в соответствии с DVB-T.2) и BER в отношении скорости r кода 1/3, и между BER в отношении скорости r кода 4/9 (выражено как ½, в соответствии с DVB-T.2) и BER в отношении скорости r кода 3/5. Из-за таких широких зазоров, BER стандартных 16к кодов появляются через нерегулярные интервалы.
С точки зрения организации широковещательной передачи, с использованием устройства 11 передачи, коды LDPC для портативных оконечных устройств, которые имеют BER, появляющиеся через относительно регулярные интервалы, равные или короче, чем приблизительно 1 дБ, имеют преимущество, состоящее в том, что скорость кода, которую требуется использовать для широковещательной передачи, может быть легче выбрана в соответствии со статусом канала (канал 13), чем для стандартных 16к кодов, которые имеют широкие зазоры приблизительно 2 дБ среди BER, появляющихся через нерегулярные интервалы.
Операции перестановки для 16200 битных кодов LDPC с длиной N кода
В случае, когда описанные выше коды LDPC для портативных оконечных устройств или 16200 битные коды LDPC, имеющие длину N кода, используются при цифровой широковещательной передаче, направленной на портативные оконечные устройства, устойчивость к ошибкам в канале 13 (фиг.7) будет ниже, чем в случае, когда используются, например, 64800 битные коды LDPC, имеющие большую длину N кода, как установлено в DVB-T.2.
Учитывая это, желательно принять меры для повышения устойчивости к ошибкам при цифровой широковещательной передаче для портативных оконечных устройств.
Примеры мер для повышения устойчивости к ошибкам включают в себя операцию перестановки, выполняемую демультиплексором 25 (фиг.9).
Примеры способов перестановки для перестановки знаковых битов в коде LDPC, установленных в стандартах, таких как DVB-T.2 при операции перестановки, включают в себя описанные выше первый-четвертый способы перестановки, и способы перестановки, установленные в стандартах, таких как, например, DVB-T.2.
В случае, когда выполняют цифровую широковещательную передачу, направленную на портативные оконечные устройства с описанными выше 16200 битные кодами LDPC, для портативных оконечных устройств, имеющих длину N кода, предпочтительно выполнять операцию перестановки, пригодную для кодов LDPC для портативных оконечных устройств.
Таким образом, при выполнении операции перестановки для кодов LDPC для портативных оконечных устройств, предпочтительно выполнять операцию перестановки, используя способ для дополнительного повышения устойчивости к ошибкам.
Учитывая это, демультиплексор 25 (фиг.9) разработан так, чтобы он был выполнен с возможностью выполнения операции перестановки, в соответствии с правилом назначения, описанным выше со ссылкой на фиг.27.
Операции перестановки, в соответствии с правилом назначения, будут описаны ниже. Перед описанием таких операций перестановки, будут описаны операции перестановки в соответствии с уже предложенными способами перестановки (ниже называются существующими способами).
Рассмотрим теперь фиг.50 и 51, операции перестановки, выполняемые с помощью демультиплексора 25 для кодов LDPC, установленных в DVB-T.2 и т.п. (ниже также называются установленными кодами), в соответствии с существующими способами, будут описаны ниже.
На фиг.50 показан пример операции перестановки, в соответствии с существующим способом, в случае, когда каждый код LDPC, установленный в DVB-T.2, имеет длину N кода 64800 битов и скорость кода 3/5.
В частности, в позиции А на фиг.50 показан пример операции перестановки, в соответствии с существующим способом, в случае, когда каждый код LDPC представляет собой установленный код, имеющий длину N кода 64800 битов и скорость кода 3/5, способ модуляции представляет собой 16QAM, и кратное число b равно 2.
В случае, когда способ модуляции представляет собой 16QAM, четыре (=m) битов среди знаковых битов отображают, как один символ на одну из 16 точек сигнала, определенных в 16QAM.
Кроме того, в случае, когда длина N кода составляет 64800 битов, и кратное число b равно 2, запоминающее устройство 31 (фиг.18 и 19) демультиплексора 25 имеет восемь столбцов, содержащих 4×2 (=mb) битов в направлении строки и содержащих 64800/(4×2) битов в направлении столбца.
После того, как знаковые биты кода LDPC были записаны в направлении столбца запоминающего устройства 31, и запись знаковых битов (одного кодового слова) 64800 битов была закончена в демультиплексоре 25, знаковые биты, записанные в запоминающем устройстве 31, считывают в направлении строки по 4×2 (=mb) битов одновременно и подают на модуль 32 перестановки (фиг.18 и 19).
Модуль 32 перестановки выполняет перестановку 4×2 (=mb) знаковых битов b0-b7, таким образом, что 4×2 (=mb) знаковых битов b0, b1, b2, b3, b4, b5, b6 и b7, которые считывают из запоминающего устройства 31, переназначают для 4×2 (=mb) символьных битов y0, y1, y2, y3, y4, y5, y6 и y7 из двух (=b) последовательных символов, например, как показано в позиции А на фиг.50.
В частности, модуль 32 перестановки выполняет перестановку, таким образом, что
знаковый бит b0 назначают для символьного бита y7,
знаковый бит b1 назначают для символьного бита y1,
знаковый бит b2 назначают для символьного бита y4,
знаковый бит b3 назначают для символьного бита y2,
знаковый бит b4 назначают для символьного бита y5,
знаковый бит b5 назначают для символьного бита y3,
знаковый бит b6 назначают для символьного бита y6, и
знаковый бит b7 назначают для y0 символьного бита.
На фиг.50 показан пример операции перестановки, в соответствии с существующим способом, в случае, когда каждый код LDPC представляет собой установленный код, имеющий длину N кода 64800 битов и скорость кода равную 3/5, способ модуляции представляет собой 64QAM, и кратное число b равно 2.
В случае, когда способ модуляции представляет собой 64QAM, шесть (=m) битов среди знаковых битов отображают, как один символ на одну из 64 сигнальных точек, определенных по 64QAM.
Кроме того, в случае, когда длина N кода составляет 64800 битов, и кратное число b равно 2, запоминающее устройство 31 (фиг.18 и 19) демультиплексора 25 имеет 12 столбцов, содержащих 6×2 (=mb) битов в направлении строки и содержащих 64800/(6×2) битов в направлении столбца.
После того, как знаковые биты кода LDPC были записаны в направлении столбца запоминающего устройства 31, и запись знаковых битов (одно кодовое слово) 64800 битов была закончена в демультиплексоре 25, знаковые биты, записанные в запоминающем устройстве 31, считывают в направлении строки по 6×2 (=mb) битов одновременно и подают на модуль 32 перестановки (фиг.18 и 19).
Модуль 32 перестановки выполняет перестановку 6×2 (=mb) знаковых битов b0-b11, таким образом, что 6×2 (=mb) знаковых битов b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10 и b11, которые считывают из запоминающего устройства 31, переназначают для 6×2 (=mb) символьных битов y0, y1, y2, y3, y4, y5, y6, y7, y8, y9, y10 и y11 из двух (=b) последовательных символов, например, как показано в позиции В на фиг.50.
В частности, модуль 32 перестановки выполняет перестановку таким образом, что
знаковый бит b0 назначают для символьного бита y11,
знаковый бит b1 назначают для символьного бита y7,
знаковый бит b2 назначают для символьного бита y3,
знаковый бит b3 назначают для символьного бита y10,
знаковый бит b4 назначают для символьного бита y6,
знаковый бит b5 назначают для символьного бита y2,
знаковый бит b6 назначают для символьного бита y9,
знаковый бит b7 назначают для символьного бита y5,
знаковый бит b8 назначают для символьного бита y1,
знаковый бит b9 назначают для символьного бита y8,
знаковый бит b10 назначают для символьного бита y4, и
знаковый бит b11 назначают для y0 символьного бита.
На фиг.50 показан пример операции перестановки в соответствии с существующим способом в случае, когда каждый код LDPC представляет собой установленный код, имеющий длину N кода 64800 битов и скорость кода равную 3/5, способ модуляции представляет собой 256QAM, и кратное число b равно 2.
В случае, когда способ модуляции представляет собой 256QAM, восемь (=m) битов среди знаковых битов отображают, как один символ, на одну из 256 точек сигнала, определенных по 256QAM.
Кроме того, когда длина N кода составляет 64800 битов, и кратное число b равно 2, запоминающее устройство 31 (фиг.18 и 19) демультиплексора 25 имеет 16 столбцов, содержащих 8×2 (=mb) битов в направлении строки и содержит 64800/(8×2) битов в направлении столбца.
После того, как знаковые биты кода LDPC были записаны в направлении столбца запоминающего устройства 31, и запись знаковых битов (одно кодовое слово) 64800 битов была закончена в демультиплексоре 25, знаковые биты, записанные в запоминающем устройстве 31, считывают в направлении строки по 8×2 (=mb) битов одновременно и подают на модуль 32 перестановки (фиг.18 и 19).
Модуль 32 перестановки выполняет перестановку 8×2 (=mb) знаковых битов b0-b15, таким образом, что 8×2 (=mb) знаковых битов b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14 и b15, которые считывают из запоминающего устройства 31, переназначают для 8×2(=mb) символьных битов y0, y1, y2, y3, y4, y5, y6, y7, y8, y9, y10, y11, y12, y13, y14 и y15 из двух (=b) последовательных символов, например, как показано в позиции С на фиг.50.
В частности, модуль 32 перестановки выполняет перестановку, таким образом, что
знаковый бит b0 назначают для символьного бита y15,
знаковый бит b1 назначают для символьного бита y1,
знаковый бит b2 назначают для символьного бита y13,
знаковый бит b3 назначают для символьного бита y3,
знаковый бит b4 назначают для символьного бита y8,
знаковый бит b5 назначают для символьного бита y11,
знаковый бит b6 назначают для символьного бита y9,
знаковый бит b7 назначают для символьного бита y5,
знаковый бит b8 назначают для символьного бита y10,
знаковый бит b9 назначают для символьного бита y6,
знаковый бит b10 назначают для символьного бита y4,
знаковый бит b11 назначают для символьного бита y7,
знаковый бит b12 назначают для символьного бита y12,
знаковый бит b13 назначают для символьного бита y2,
знаковый бит b14 назначают для символьного бита y14, и
знаковый бит b15 назначают для y0 символьного бита.
На фиг.51 показан пример операции перестановки, в соответствии с существующим способом, в случае, когда каждый код LDPC представляет собой установленный код, имеющий длину N кода 16200 битов и скорость кода равную 3/5.
В частности, в позиции А на фиг.51 показан пример операции перестановки, в соответствии с существующим способом, в случае, когда каждый код LDPC имеет длину N кода 16200 битов и скорость кода равную 3/5, способ модуляции представляет собой 16QAM, и кратное число b равно 2.
В случае, когда способ модуляции представляет собой 16QAM, четыре (=m) битов среди знаковых битов отображают, как один символ на одну из 16 точек сигнала, определенных по 16QAM.
Кроме того, когда длина N кода составляет 16200 битов, и кратное число b равно 2, запоминающее устройство 31 (фиг.18 и 19) демультиплексора 25 имеет восемь столбцов, содержащих 4×2 (=mb) битов в направлении строки и содержит 16200/(4×2) битов в направлении столбца.
После того, как знаковые биты кода LDPC были записаны в направлении столбца запоминающего устройства 31, и запись знаковых битов (одно кодовое слово) 16200 битов была закончена в демультиплексоре 25, знаковые биты, записанные в запоминающем устройстве 31, считывают в направлении строки по 4×2 (=mb) битов одновременно и подают на модуль 32 перестановки (фиг.18 и 19).
Модуль 32 перестановки выполняет перестановку 4×2 (=mb) знаковых битов b0-b7, таким образом, что 4×2 (=mb) знаковых битов b0, b1, b2, b3, b4, b5, b6 и b7, которые считывают из запоминающего устройства 31, переназначают для 4×2 (=mb) символьных битов y0, y1, y2, y3, y4, y5, y6 и y7 из двух (=b) последовательных символов, например, как показано в позиции А на фиг.51.
В частности, модуль 32 перестановки выполняет перестановку, чтобы назначить знаковые биты b0-b7 для символьных битов y0-y7 таким же образом, как и в описанном выше случае в позиции А на фиг.50.
В фиг.51 показан пример операции перестановки в соответствии с существующим способом в случае, когда каждый код LDPC представляет собой установленный код, имеющий длину N кода 16200 битов и скорость кода равную 3/5, способ модуляции представляет собой 64QAM, и кратное число b равно 2.
В случае, когда способ модуляции представляет собой 64QAM, шесть (=m) битов среди знаковых битов отображают как один символ на одну из 64 точек сигнала, определенных в 64QAM.
Кроме того, в случае, когда длина N кода составляет 16200 битов, и кратное число b равно 2, запоминающее устройство 31 (фиг.18 и 19) демультиплексора 25 имеет 12 столбцов, содержащих 6×2 (=mb) битов в направлении строки и содержащих 16200/(6×2) битов в направлении столбца.
После того, как знаковые биты кода LDPC были записаны в направлении столбца запоминающего устройства 31, и запись знаковых битов (одно кодовое слово) 16200 битов была закончена в демультиплексоре 25, знаковые биты, записанные в запоминающем устройстве 31, считывают в направлении строки по 6 битов 2 (=mb) битов одновременно и подают на модуль 32 перестановки (фиг.18 и 19).
Модуль 32 перестановки выполняет перестановку 6×2 (=mb) знаковых битов b0-b11, таким образом, что 6 битов 2 (=mb) знаковых битов b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10 и b11, которые считывают из запоминающего устройства 31, переназначают для 6×2 (=mb) символьных битов y0, y1, y2, y3, y4, y5, y6, y7, y8, y9, y10 и y11 из двух (=b) последовательных символов, например, как показано в позиции В на фиг.51.
В частности, модуль 32 перестановки выполняет перестановку таким образом, чтобы назначить знаковые биты b0-b11 для символьных битов y0-y11 таким же способом, как и в описанном выше случае в позиции В на фиг.50.
С фиг.51 показан пример операции перестановки в соответствии с существующим способом в случае, когда каждый код LDPC представляет собой установленный код, имеющий длину N кода 16200 битов и скорость кода равную 3/5, способ модуляции представляет собой 256QAM, и кратное число b равно 1.
В случае, когда способ модуляции представляет собой 256QAM, восемь (=m) битов среди знаковых битов отображают как один символ на одну из 256 точек сигнала, определенных 256QAM.
Кроме того, в случае, когда длина N кода составляет 16200 битов, и кратное число b равно 1, запоминающее устройство 31 (фиг.18 и 19) демультиплексора 25 имеет восемь столбцов, содержащих 8×1 (=mb) битов в направлении строки и содержит 16200/(8×1) битов в направлении столбца.
После того, как знаковые биты кода LDPC были записаны в направлении столбца запоминающего устройства 31, и запись знаковых битов (одно кодовое слово) 16200 битов была закончена в демультиплексоре 25, знаковые биты, записанные в запоминающем устройстве 31, считывают в направлении строки по 8×1 (=mb) битов одновременно и подают на модуль 32 перестановки (фиг.18 и 19).
Модуль 32 перестановки выполняет перестановку 8×1 (=mb) знаковых битов b0-b7, таким образом, что 8×1 (=mb) знаковых битов b0, b1, b2, b3, b4, b5, b6 и b7, которые считывают из запоминающего устройства 31, переназначают для 8×1 (=mb) символьных битов y0, y1, y2, y3, y4, y5, y6, и y7 одного (=b) символа, например, как показано в позиции С на фиг.51.
В частности, модуль 32 перестановки выполняет перестановку, таким образом, что
знаковый бит b0 назначают для символьного бита y7,
знаковый бит b1 назначают для символьного бита y3,
знаковый бит b2 назначают для символьного бита y1,
знаковый бит b3 назначают для символьного бита y5,
знаковый бит b4 назначают для символьного бита y2,
знаковый бит b5 назначают для символьного бита y6,
знаковый бит b6 назначают для символьного бита y4, и
знаковый бит b7 назначают для y0 символьного бита.
Далее будут описаны операции перестановки, в соответствии с правилами назначения (ниже также называются операциями перестановки, в соответствии с новыми способами перестановки).
На фиг.52-54 показаны схемы для пояснения новых способов перестановки.
В соответствии с новыми способами перестановки, модуль 32 перестановки демультиплексора 25 выполняет перестановку mb знаковых битов, в соответствии с заданным правилом назначения.
Правило назначения представляет собой правило для назначения знаковых битов кода LDPC символьным битам. В соответствии с правилом назначения, наборы группы определены, как комбинации групп знаковых битов, сформированных знаковыми битами, и групп символьных битов, сформированных символьными битами, которым должны быть назначены знаковые биты групп знаковых битов, и установлены количества соответствующих знаковых битов групп знаковых битов и соответствующих символьных битов групп символьных битов для наборов групп (ниже также называются количествами битов в группах).
Здесь знаковые биты имеют разные вероятности ошибки, как описано выше, и символьные биты также имеют разные вероятности ошибки. Группы знаковых битов представляют собой группы, в которых знаковые биты разделены, в соответствии с вероятностью ошибки, и группы символьных битов представляют собой группы, на которые символьные биты разделены в соответствии с вероятностями ошибки.
На фиг.52 показаны группы знаковых битов и группы символьных битов в случае, когда каждый код LDPC представляет собой код LDPC для портативных оконечных устройств, который имеет длину N кода 16200 битов и скорость кода 4/15, при этом способ модуляции представляет собой 256QAM (соответственно, m=8), и кратное число равно 1.
В этом случае, 8×1 (=mb) знаковых битов, которые считывают из запоминающего устройства 31, могут быть разделены на четыре группы Gb1, Gb2, Gb3 и Gb4 знаковых битов, в соответствии с различиями вероятности ошибки, как показано в позиции А на фиг.52.
Здесь группа Gb#i знаковых битов с меньшим окончанием #i представляет собой группу, которой принадлежат один или больше знаковых битов, имеющих лучшую (более низкую) вероятность ошибки.
В дальнейшем (#i+1)-ый бит, подсчитанный от верхнего бита из mb знаковых битов, которые считывают из запоминающего устройства 31 в направлении строки, также выражается, как бит b#i, и (#i+1)-ый бит, отсчитанный от самого верхнего бита из mb символьных битов для b последовательных символов, также выражается, как бит y#i.
В позиции на фиг.52, знаковый бит b0 принадлежит группе Gb1 знаковых битов, знаковый бит b1 принадлежит группе Gb2 знаковых битов, знаковый бит b2 принадлежит группе Gb3 знаковых битов, и знаковые биты b3, b4, b5, b6 и b7 принадлежат группе Gb4 знаковых битов.
В случае, когда способ модуляции представляет собой 256QAM, и кратное число b равно 1, 8×1 (=mb) символьных битов могут быть разделены на четыре группы Gy1, Gy2, Gy3 и Gy4 символьных битов, в соответствии с разностями вероятности ошибки, как показано в позиции В на фиг.52.
Так же, как в группах знаковых битов, группа Gy#i символьных битов с меньшим окончанием #i представляет собой группу, которой принадлежат один или более символьных битов, имеющих меньшую вероятность ошибки.
В позиции В на фиг.52, символьные биты y0 и y1 принадлежат группе символьных битов, Gy1, символьные биты y2 и y3 принадлежат группе Gy2 символьных битов, символьные биты y4 и y5 принадлежат группе Gy3 символьных битов, и символьные биты y6 и y7 принадлежат группе Gy4 символьных битов.
На фиг.53 показано правило назначения в случае, когда каждый код LDPC представляет собой код LDPC для портативных оконечных устройств, который имеет длину N кода 16200 битов и скорость кода 4/15, способ модуляции представляет собой 256QAM, и кратное число b равняется 1.
В правиле назначения, показанном на фиг.53, комбинация группы Gb1 знакового бита и группы Gy3 символьных битов установлена, как один набор группы. Количество битов в группе для набора группы установлено, как 1.
Ниже набор группы и количество битов в группе будут совместно называться информацией набора группы. Например, набор группы для группы Gb1 знаковых битов, и группы Gy3 символьных битов, и для бита группы номер 1 набора группы записывают, как информацию набора группы (Gb1, Gy3, 1).
Правило назначения, показанное на фиг.53, устанавливает информацию набора группы (Gb2, Gy1, 1), (Gb3, Gy4, 1), (Gb4, Gy1, 1), (Gb4, Gy2, 2), (Gb4, Gy4, 1) и (Gb4, Gy3, 1), а так же информацию набора группы (Gb1, Gy3, 1).
Например, информация набора группы (Gb1, Gy3, 1) означает, что один знаковый бит, принадлежащий группе Gb1 знаковых битов назначен одному символьному биты, принадлежащему группе Gy2 символьных битов.
В соответствии с этим, правило назначения, показанное на фиг.53, устанавливает, что один знаковый бит группы Gb1 знаковых битов, имеющей меньшую вероятность ошибки, назначают для одного символьного бита группы Gy3 символьных битов, имеющей третью наименьшую вероятность ошибки, в соответствии с информацией набора группы (Gb1, Gy3, 1), один знаковый бит группы Gb2 знаковых битов, имеющей вторую наименьшую вероятность ошибки, назначают одному символьному биту группы Gy1 символьных битов, имеющей наименьшую вероятность ошибки в соответствии с информацией набора группы (Gb2, Gy1, 1),
один знаковый бит группы Gb3 знаковых битов, имеющей третью наименьшую вероятность появления ошибки, назначают одному символьному биту группы Gy4 символьных битов, имеющей четвертую лучшую вероятность появления ошибки в соответствии с информацией набора группы (Gb3, Gy4, 1),
один знаковый бит группы Gb4 знаковых битов, имеющей четвертую наименьшую вероятность появления ошибки, назначают одному символьному биту группы Gy1 символьных битов, имеющей наименьшую вероятность появления ошибки в соответствии с информацией набора группы (Gb4, Gy1, 1),
два знаковых бита группы Gb4 знаковых битов, имеющей четвертую наименьшую вероятность появления ошибки, назначают двум символьным битам группы Gy2 символьных битов, имеющей вторую наименьшую вероятность появления ошибки в соответствии с информацией набора группы (Gb4, Gy2, 2),
один знаковый бит группы Gb4 знаковых битов, имеющей четвертую наименьшую вероятность появления ошибки, назначают одному символьному биту группы Gy4 символьных битов, имеющей четвертую наименьшую вероятность появления ошибки в соответствии с информацией набора группы (Gb4, Gy4, 1), и
один знаковый бит группы Gb4 знаковых битов, имеющей четвертую наименьшую вероятность появления ошибки, назначают одному символьному биту группы Gy3 символьных битов, имеющей третью наименьшую вероятность появления ошибки в соответствии с информацией набора группы (Gb4, Gy3, 1).
Как описано выше, группы знаковых битов представляют собой группы, в которых знаковые биты разделены в соответствии с вероятностями ошибки, и группы символьных битов представляют собой группы, в которых символьные биты разделены в соответствии с вероятностями ошибки. Учитывая это, можно сказать, что правило назначения устанавливает комбинации вероятностей ошибки знаковых битов и вероятностей ошибки символьных битов, которым должны быть назначены знаковые биты.
Правило назначения, которое устанавливает комбинации вероятностей ошибки знаковых битов и вероятностей ошибки символьных битов, которым должны быть назначены знаковые биты, определено таким образом, чтобы повысить устойчивость к ошибкам (устойчивость к шумам), например, через моделирование, выполняемое для измерения BER.
Если место назначения для назначения знаковых битов группы знаковых битов меняется среди битов группы одного символьного бита, это не влияет на устойчивость к ошибкам (или мало влияет).
Поэтому, для повышения устойчивости к ошибкам, информацию набора группы, которая сводит к минимуму BER (частота ошибок битов), или комбинации (набор групп) для групп знаковых битов, сформированных знаковыми битами, и групп символьных битов, сформированных символьными битами, которым должны быть назначены знаковые биты из групп знаковых битов, и количества (количества битов группы) знаковых битов и символьных битов для групп знаковых битов, и групп символьных битов набора групп устанавливают, как правило назначения, и знаковые биты должны быть переставлены для назначения знаковых битов для символьных битов, в соответствии с правилом назначения.
Однако, конкретный способ назначения, устанавливающий, какие знаковые биты должны быть назначены для каких символьных битов, в соответствии с правилом назначения, должен быть определен заранее между устройством 11 передачи и устройством 12 приема (фиг.7).
На фиг.54 показан пример перестановки знаковых битов, в соответствии с правилом назначения, показанным на фиг.53.
В частности, в позиции А на фиг.54 показан первый пример перестановки знакового бита, в соответствии с правилом назначения, показанным на фиг.53, в случае, когда каждый код LDPC представляет собой код LDPC для портативных оконечных устройств, который имеет длину N кода 16200 битов и скорость кода 4/15, способ модуляции представляет собой 256QAM, и кратное число b равно 1.
В случае, когда каждый код LDPC представляет собой код LDPC для портативных оконечных устройств, имеющий длину N кода 16200 битов и скорость кода равную 4/15, способ модуляции представляет собой 256QAM, и кратное число b равняется 1, знаковые биты, записанные в запоминающем устройстве 31, в котором содержится (16200/(8×1))×(8×1) битов в направлении столбца и в направлении строки, считывают в направлении строки по 8×1 (=mb) битов одновременно и подают на модуль 32 перестановки (фиг.18 и 19) на демультиплексоре 25.
В соответствии с правилом назначения, показанным на фиг.53, модуль 32 перестановки выполняет перестановку 8×1 (=mb) знаковых битов b0-b7, таким образом, что 8×1 (=mb) знаковых битов b0-b7, которые считывают из запоминающего устройства 31, назначают для 8×1 (=mb) символьных битов y0-y7 одного (=b) символа, например, как показано в позиции А на фиг.54.
В частности, модуль 32 перестановки выполняет перестановку, так, что
знаковый бит b0 назначают для символьного бита y4,
знаковый бит b1 назначают для символьного бита y0,
знаковый бит b2 назначают для символьного бита y6,
знаковый бит b3 назначают для символьного бита y1,
знаковый бит b4 назначают для символьного бита y3,
знаковый бит b5 назначают для символьного бита y7,
знаковый бит b6 назначают для символьного бита y5, и
знаковый бит b7 назначают для символьного бита y2.
В позиции В на фиг.54 показан второй пример перестановки знакового бита, в соответствии с правилом назначения, показанным на фиг.53, в случае, когда каждый код LDPC представляет собой код LDPC для портативных оконечных устройств, который имеет длину N кода 16200 битов и скорость кода равную 4/15, способ модуляции представляет собой 256QAM, и кратное число b равно 1.
В позиции В на фиг.54 модуль 32 перестановки выполняет перестановку 8×1 (=mb) знаковых битов b0-b7, считанных из запоминающего устройства 31, в соответствии с правилом назначения, показанным на фиг.53, таким образом, что
знаковый бит b0 назначают для символьного бита y4,
знаковый бит b1 назначают для символьного бита y1,
знаковый бит b2 назначают для символьного бита y7,
знаковый бит b3 назначают для y0 символьного бита,
знаковый бит b4 назначают для символьного бита y2,
знаковый бит b5 назначают для символьного бита y5,
знаковый бит b6 назначают для символьного бита y6, и
знаковый бит b7 назначают для символьного бита y3.
Здесь назначение каждого знакового бита b#i для символьного бита y#i, показанного в позиции А на фиг.54, и в позиции В на фиг.54, выполняют, используя следующее правило назначения, показанное на фиг.53 (или в соответствии с правилом назначения).
На фиг.55 показаны группы знаковых битов и группы символьных битов, в случае, когда каждый код LDPC представляет собой код LDPC для портативных оконечных устройств, который имеет длину N кода 16200 битов и скорость кода равную 7/15, способ модуляции представляет собой 256QAM, и кратное число b равняется 1.
В этом случае, 8×1 (=mb) знаковых битов, которые считывают из запоминающего устройства 31, могут быть разделены на пять групп Gb1, Gb2, Gb3, Gb4 и Gb5 знаковых битов, в соответствии с различиями вероятности ошибки, как показано на фиг.55.
В позиции А на фиг.55 знаковый бит b0 принадлежит группе Gb1 знаковых битов, знаковый бит b1 принадлежит группе Gb2 знаковых битов, знаковый бит b2 принадлежит группе Gb3 знаковых битов, знаковый бит b3 принадлежит группе Gb4 знаковых битов, и знаковые биты b4-b7 принадлежат группе Gb5 знаковых битов.
В случае то, когда способ модуляции представляет собой 256QAM, и кратное число b равняется 1, 8×1 (=mb) символьные биты могут быть разделены на четыре группы Gy1, Gy2, Gy3 и Gy4 символьных битов, в соответствии с разностью вероятности ошибки, как показано в позиции В на фиг.55.
В позиции В на фиг.55, символьные биты y0 и y1 принадлежат группе Gy1 символьных битов, символьные биты y2 и y3 принадлежат группе Gy2 символьных битов, символьные биты y4 и y5 принадлежат группе Gy3 символьных битов, и символьные биты y6 и y7 принадлежат группе Gy4 символьных битов.
На фиг.56 показано правило назначения в случае, когда каждый код LDPC представляет собой код LDPC для портативных оконечных устройств, который имеет длину N кода 16200 битов и скорость кода 7/15, способ модуляции представляет собой 256QAM, и кратное число b равняется 1.
Правило назначения, показанное на фиг.56, устанавливает информацию (Gb1, Gy2, 1), (Gb2, Gy4, 1), (Gb3, Gy3, 1), (Gb4, Gy1, 1), (Gb5, Gy3, 1), (Gb5, Gy1, 1), (Gb5, Gy4, 1) и (Gb5, Gy2, 1) набора группы.
В частности, правило назначения, показанное на фиг.56, устанавливает, что
один знаковый бит группы знаковых битов Gb1, имеющей наименьшую вероятность появления ошибки, назначают одному символьному биту группы символьных битов Gy2, имеющей вторую наименьшую вероятность появления ошибки в соответствии с информацией (Gb1, Gy2, 1) набора группы,
один знаковый бит группы знаковых битов Gb2, имеющей вторую наименьшую вероятность появления ошибки, назначают одному символьному биту группы Gy4 символьных битов, имеющей четвертую наименьшую вероятность появления ошибки в соответствии с информацией (Gb2, Gy4, 1) набора группы,
один знаковый бит группы знаковых битов Gb3, имеющей третью наименьшую вероятность появления ошибки, назначают одному символьному биту группы символьных битов Gy3, имеющей третью наименьшую вероятность появления ошибки в соответствии с информацией (Gb3, Gy3, 1) набора группы,
один знаковый бит группы знаковых битов Gb4, имеющей четвертую наименьшую вероятность появления ошибки, назначают одному символьному биту группы символьных битов Gy1, имеющей наименьшую вероятность появления ошибки в соответствии с информацией (Gb4, Gy1, 1) набора группы,
один знаковый бит группы знаковых битов Gb5, имеющей пятую наименьшую вероятность появления ошибки, назначают одному символьному биту группы символьных битов Gy3, имеющей третью наименьшую вероятность появления ошибки в соответствии с информацией (Gb5, Gy3, 1) набора группы,
один знаковый бит группы знаковых битов Gb5, имеющей пятую наименьшую вероятность появления ошибки, назначают одному символьному биту группы символьных битов Gy1, имеющей наименьшую вероятность появления ошибки в соответствии с информацией (Gb5, Gy1, 1) набора группы,
один знаковый бит группы знаковых битов Gb5, имеющей пятую наименьшую вероятность появления ошибки, назначают одному символьному биту группы символьных битов Gy4, имеющей четвертую наименьшую вероятность появления ошибки в соответствии с информацией (Gb5, Gy4, 1) набора группы, и
один знаковый бит группы знаковых битов Gb5, имеющей пятую наименьшую вероятность появления ошибки, назначают одному символьному биту группы символьных битов Gy2, имеющей вторую наименьшую вероятность появления ошибки в соответствии с информацией (Gb5, Gy2, 1) набора группы.
На фиг.57 показан пример перестановки знакового бита, в соответствии с правилом назначения, показанным на фиг.56.
В частности, на фиг.57 показан первый пример перестановки знакового бита, в соответствии с правилом назначения, показанным на фиг.56, в случае, когда каждый код LDPC представляет собой код LDPC для портативных оконечных устройств, который имеет длину N кода 16200 битов и скорость кода равная 7/15, способ модуляции представляет собой 256QAM, и кратное число b равно 1.
В случае, когда каждый код LDPC представляет собой код LDPC для портативных оконечных устройств, имеющий длину N кода 16200 битов и скорость кода равную 7/15, способ модуляции представляет собой 256QAM, и кратное число b равняется 1, знаковые биты, записанные в запоминающем устройстве 31, в котором содержится (16200/(8×1))×(8×1) битов в направлении столбца и в направлении строки, считывают в направлении строки по 8×1 (=mb) битов одновременно и подают на модуль 32 перестановки (фиг.18 и 19) в демультиплексоре 25.
В соответствии с правилом назначения, показанным на фиг.56, модуль 32 перестановки выполняет перестановку 8×1 (=mb) знаковых битов b0-b7, таким образом, что 8×1 (=mb) знаковых битов b0-b7, которые считывают из запоминающего устройства 31, назначают для 8×1 (=mb) символьных битов y0-y7 одного (=b) символа, например, как показано в позиции А на фиг.57.
В частности, модуль 32 перестановки выполняет перестановку, таким образом, что
знаковый бит b0 назначают для символьного бита y2,
знаковый бит b1 назначают для символьного бита y6,
знаковый бит b2 назначают для символьного бита y4,
знаковый бит b3 назначают для символьного бита y1,
знаковый бит b4 назначают для символьного бита y5,
знаковый бит b5 назначают для y0 символьного бита,
знаковый бит b6 назначают для символьного бита y7, и
знаковый бит b7 назначают для символьного бита y3.
В фиг.57 показан второй пример перестановки знакового бита, в соответствии с правилом назначения, показанным на фиг.56 в случае, когда каждый код LDPC представляет собой код LDPC для портативных оконечных устройств, который имеет длину N кода 16200 битов и скорость кода равную 7/15, способ модуляции представляет собой 256QAM, и кратное число b равно 1.
В позиции В на фиг.57 модуль 32 перестановки выполняет перестановку 8×1 (=mb) знаковых битов b0-b7, считанных из запоминающего устройства 31 в соответствии с правилом назначения, показанным на фиг.56, таким образом, что
знаковый бит b0 назначают для символьного бита y3,
знаковый бит b1 назначают для символьного бита y6,
знаковый бит b2 назначают для символьного бита y5,
знаковый бит b3 назначают для y0 символьного бита,
знаковый бит b4 назначают для символьного бита y4,
знаковый бит b5 назначают для символьного бита y1,
знаковый бит b6 назначают для символьного бита y2, и
знаковый бит b7 назначают для символьного бита y7.
На фиг.58 показаны группы знаковых битов и группы символьных битов, в случае, когда каждый код LDPC представляет собой код LDPC для портативных оконечных устройств, который имеет длину N кода 16200 битов и скорость кода равную 8/15, способ модуляции представляет собой 256QAM, и кратное число b равняется 1.
В этом случае, 8×1 (=mb) знаковых битов, которые считывают из запоминающего устройства 31, могут быть разделены на пять групп Gb1, Gb2, Gb3, Gb4 и Gb5 знаковых битов, в соответствии с различием вероятности ошибки, как показано на фиг.58.
На фиг.58, знаковый бит b0 принадлежит группе Gb1 знаковых битов, знаковый бит b1 принадлежит группе Gb2 знаковых битов, знаковые биты b2 и b3 принадлежат группе Gb3 знаковых битов, знаковый бит b4 принадлежит группе Gb4 знаковых битов, и знаковые биты b5-b7 принадлежат группе Gb5 знаковых битов.
В случае, когда способ модуляции представляет собой 256QAM, и кратное число b равняется 1, 8×1 (=mb), символьных битов могут быть разделены на четыре группы Gy1, Gy2, Gy3, и Gy4 символьных битов в соответствии с различиями вероятности появления ошибки, как показано в позиции В на фиг.58.
На фиг.58, символьные биты y0 и y1 принадлежат группе Gy1 символьных битов, символьные биты y2 и y3 принадлежат группе Gy2 символьных битов, символьные биты y4 и y5 принадлежат группе Gy3 символьных битов, и символьные биты y6 и y7 принадлежат группе Gy4 символьных битов.
На фиг.59 показано правило назначения в случае, когда каждый код LDPC представляет собой код LDPC для портативных оконечных устройств, который имеет длину N кода 16200 битов и скорость кода равную 8/15, способ модуляции представляет собой, 256QAM, и кратное число b равняется 1.
Правило назначения, показанное на фиг.59, определяет информацию об установке группы (Gb1, Gy2, 1), (Gb2, Gy4, 1), (Gb3, Gy1, 2), (Gb4, Gy4, 1), (Gb5, Gy3, 2), и (Gb5, Gy2, 1).
В частности, правило назначения, показанное на фиг.59, определяет, что один знаковый бит группы Gb1 знаковых битов, имеющей наименьшую вероятность появления ошибки, назначают одному символьному биту группы Gy2 символьных битов, имеющей вторую наименьшую вероятность появления ошибки в соответствии с информацией (Gb1, Gy2, 1) набора группы,
один знаковый бит группы Gb2 знаковых битов, имеющей вторую наименьшую вероятность появления ошибки, назначают одному символьному биту группы Gy4 символьных битов, имеющей четвертую наименьшую вероятность появления ошибки в соответствии с информацией набора группы (Gb2, Gy4, 1),
два знаковых бита группы Gb3 знаковых битов, имеющей третью наименьшую вероятность появления ошибки, назначают для двух символьных битов группы Gy1 символьных битов, имеющей наименьшую вероятность появления ошибки в соответствии с информацией (Gb3, Gy1, 2) набора группы,
один знаковый бит группы Gb4 знаковых битов, имеющей четвертую наименьшую вероятность появления ошибки, назначают одному символьному биту группы Gy4 символьных битов, имеющей четвертую наименьшую вероятность появления ошибки в соответствии с информацией (Gb4, Gy4, 1) набора группы,
два знаковых бита группы Gb5 знаковых битов, имеющей пятую наименьшую вероятность появления ошибки, назначают для двух символьных битов группы Gy3 символьных битов, имеющей третью наименьшую вероятность появления ошибки в соответствии с информацией (Gb5, Gy3, 2) набора группы, и
один знаковый бит группы Gb5 знаковых битов, имеющей пятую наименьшую вероятность появления ошибки, назначают одному символьному биту группы Gy2 символьных битов, имеющей вторую наименьшую вероятность появления ошибки в соответствии с информацией (Gb5, Gy2, 1) набора группы.
На фиг.60 показан пример перестановки знакового бита, в соответствии с правилом назначения, показанным на фиг.59.
В частности, на фиг.60 показан первый пример перестановки знакового бита, в соответствии с правилом назначения, показанным на фиг.59 в случае, когда каждый код LDPC представляет собой код LDPC для портативных оконечных устройств, который имеет длину N кода 16200 битов и скорость кода равную 8/15, способ модуляции представляет собой 256QAM, и кратное число b равно 1.
В случае, когда каждый код LDPC представляет собой код LDPC для портативных оконечных устройств, имеющий длину N кода 16200 битов и скорость кода равную 8/15, способ модуляции представляет собой 256QAM, и кратное число b равняется 1, знаковые биты, записанные в запоминающем устройстве 31, в котором содержится (16200/(8×1))×(8×1) битов в направлении столбца и в направлении строки, считывают в направлении строки по 8×1 (=mb) битов одновременно и подают на модуль 32 перестановки (фиг.18 и 19) в демультиплексоре 25.
В соответствии с правилом назначения, показанным на фиг.59, Модуль 32 перестановки выполняет перестановку 8×1 (=mb) знаковых битов b0-b7, таким образом, что 8×1 (=mb) знаковых битов b0-b7, которые считывают из запоминающего устройства 31, назначают для 8×1 (=mb) символьных битов y0-y7 одного (=b) символа, например, как показано на фиг.60.
В частности, модуль 32 перестановки выполняет перестановку, таким образом, что
знаковый бит b0 назначают для символьного бита y2,
знаковый бит b1 назначают для символьного бита y6,
знаковый бит b2 назначают для символьного бита y1,
знаковый бит b3 назначают для y0 символьного бита,
знаковый бит b4 назначают для символьного бита y7,
знаковый бит b5 назначают для символьного бита y5,
знаковый бит b6 назначают для символьного бита y3, и
знаковый бит b7 назначают для символьного бита y4.
В фиг.60 показан второй пример перестановки знакового бита, в соответствии с правилом назначения, показанным на фиг.59 в случае, когда каждый код LDPC представляет собой код LDPC для портативных оконечных устройств, который имеет длину N кода 16200 битов и скорость кода равную 8/15, способ модуляции представляет собой 256QAM, и кратное число b равно 1.
На фиг.60 модуль 32 перестановки выполняет перестановку 8×1 (=mb) знаковых битов b0-b7 считанных из запоминающего устройства 31 в соответствии с правилом назначения, показанным на фиг.59, таким образом, что
знаковый бит b0 назначают для символьного бита y3,
знаковый бит b1 назначают для символьного бита y7,
знаковый бит b2 назначают для символьного бита y0,
знаковый бит b3 назначают для символьного бита y1,
знаковый бит b4 назначают для символьного бита y6,
знаковый бит b5 назначают для символьного бита y4,
знаковый бит b6 назначают для символьного бита y2, и
знаковый бит b7 назначают для символьного бита y5.
При моделировании, выполненным изобретателем, было подтверждено, что значения BER были лучше в случае, когда операцию перестановки выполняли в соответствии с новым способом перестановки, чем в случае, когда операцию перестановки не выполняли. В соответствии с этим, устойчивость к ошибкам может быть повышена с помощью операции перестановки, в соответствии с новым способом перестановки.
В этом варианте осуществления модуль 32 перестановки выполняет операции перестановки для знаковых бит, считываемых из запоминающего устройства 31, в демультиплексоре 25, для простоты пояснения. Однако, операции перестановки могут быть выполнены путем управления записью и считыванием знаковых битов в/из запоминающего устройства 31.
Таким образом, операции перестановки могут быть выполнены путем управления адресами, в которых знаковые биты должны считываться (адреса считывания) таким образом, что знаковые биты считывают из запоминающего устройства 31 в порядке знаковых битов после перестановки.
Примерная структура устройства 12 приема
На фиг.61 показана блок-схема, представляющая пример структуры устройства 12 приема, показанного на фиг.7.
Модуль 151 операций OFDM принимает сигнал OFDM от устройства 11 передачи (фиг.7) и выполняет обработку сигналов для сигнала OFDM. Данные (символы), полученные модулем 151 операций OFDM, выполняющим обработку сигналов, подают на модуль 152 управления фреймом.
Модуль 152 управления фреймом выполняет обработку фрейма (интерпретацию фрейма), сформированного с символами, подаваемыми от модуля 151 операций OFDM, и подает символы результата целевых данных и символы, результата данных управления, на перемежители 161 и 153 частоты.
Перемежитель 153 частоты выполняет перемежение частоты для каждого из символов, подаваемых от модуля 152 управления фреймом, и подает результаты на декодер 154 QAM.
Декодер 154 QAM выполняет ортогональную демодуляцию путем обратного отображения (декодирование местоположения точки сигнала) символов (символов, расположенных в точках сигнала), подаваемых от обратного перемежителя 153 частоты, и подает полученные в результате данные (код LDPC) на декодер 155 LDPC.
Декодер 155 LDPC выполняет декодирование LDPC для кода LDPC, подаваемого от устройства декодирования 154 QAM, и подает полученные в результате целевые данные LDPC (код ВСН в данном случае) на декодер 156 ВСН.
Декодер 156 ВСН выполняет декодирование ВСН для целевых данных LDPC, подаваемых от устройства декодирования 155 LDPC, и выводит полученные в результате данные управления (сигналы).
В то же время, обратный перемежитель 161 по частоте выполняет обратное перемежение по частоте в каждом из символов, подаваемых от модуля 152 управления фреймом, и подает результаты на декодер 162 MISO/MIMO.
Декодер 162 MISO/MIMO выполняет декодирование пространство-время для данных (символов), подаваемых от обратного перемежителя 161 по частоте, и подает результаты на обратный перемежитель 163 времени.
Обратный перемежитель 163 времени выполняет обратное перемежение времени каждого символа данных (символов), подаваемых от устройства декодирования 162 MISO/MIMO, и подает результаты на декодер 164 QAM.
Декодер 164 QAM выполняет ортогональную демодуляцию путем обратного отображения (декодирование мест положения точек сигнала) символов (символов, расположенных в точках сигналов), подаваемых от обратного перемежителя 163 времени, и подает полученные в результате данные (символы) на обратный перемежитель 165 битов.
Обратный перемежитель 165 битов выполняет обратное перемежение данных (символов), подаваемых от декодера 164 QAM, и подает полученный в результате код LDPC в декодер 166 LDPC.
Декодер 166 LDPC выполняет декодирование LDPC для кода LDPC, подаваемого от обратного перемежителя 165 битов, и подает полученные в результате целевые данные LDPC (в данном случае код ВСН) на декодер 167 ВСН.
Декодер 167 ВСН выполняет декодирование ВСН для целевых данных LDPC, подаваемых от устройства декодирования 155 LDPC, и подает полученные в результате данные на дескремблер 168 ВВ.
Дескремблер 168 ВВ выполняет операцию, обратную диффузии энергии, для данных, подаваемых от устройства декодирования 167 ВСН, и подает полученные результате данные на модуль 169 удаления нуля.
Модуль 169 удаления нуля удаляет нули, вставленные заполнителем 112, показанным на фиг.8, из данных, подаваемых от дескремблера 168 ВВ, и подает результаты на демультиплексор 170.
Демультиплексор 170 разделяет каждый из одного или больше потоков (целевые данные), мультиплексированных по данным, подаваемым от модуля 169 удаления нулей, и выводит потоки в качестве выходных потоков.
На фиг.62 показана блок-схема, представляющая пример структуры обратного перемежителя 165 битов, показанного на фиг.61.
Обратный перемежитель 165 битов включает в себя мультиплексор (MUX) 54 и обратный перемежитель 55 со скручиванием столбцов и выполняет обратное перемежение (битов) для символьных битов символов, подаваемых от декодера 164 QAM (фиг.61).
В частности, мультиплексор 54 выполняет операцию обратной перестановки, соответствующую операции перестановки, выполняемой демультиплексором 25, показанным на фиг.9 (операция, противоположная операции перестановки) для символьных битов символов, подаваемых от декодера 164 QAM, или выполняет операцию обратной перестановки для возврата знаковых битов (символьных битов) кода LDPC, для которого была выполнена перестановка во время операции перестановки в оригинальные положения. Полученный в результате код LDPC подают на обратный перемежитель 55 со скручиванием столбцов.
Обратный перемежитель 55 со скручиванием столбцов выполняет обратное перемежение со скручиванием столбцов, соответствующее перемежению со скручиванием столбцов, как операцию изменения компоновки, выполняемую перемежителем 24 со скручиванием столбцов, показанным на фиг.9 (операция, противоположная перемежению со скручиванием столбцов) для кода LDPC, подаваемого от мультиплексора 54, или выполняет обратное перемежение со скручиванием столбцов, например, как обратную операцию изменения компоновки, для возврата последовательности знаковых битов кода LDPC, компоновка которой была изменена в результате перемежения со скручиванием столбцов, как операцию изменения компоновки в оригинальную последовательность.
В частности, обратный перемежитель 55 со скручиванием столбцов записывает знаковые биты кода LDPC в запоминающее устройство для выполнения обратного перемежения, которое имеет такую же структуру, как и запоминающее устройство 31, показанное на фиг.24, и другие, и, кроме того, дополнительно считывает знаковые биты для выполнения обратного перемежения со скручиванием столбцов.
Обратный перемежитель 55 со скручиванием столбцов выполняет запись знаковых битов в направлении строки в запоминающее устройство для выполнения обратного перемежения, используя адреса записи, которые представляют собой адреса считывания, использовавшиеся во время считывания знаковых битов из запоминающего устройства 31. Считывание знаковых битов выполняют в направлении столбца запоминающего устройства для выполнения обратного перемежения, используя адреса считывания, которые представляют собой адреса записи, использовавшиеся во время записи знаковых битов в запоминающее устройство 31.
Код LDPC, полученный в результате обратного перемежения со скручиванием столбцов, подают из обратного перемежителя 55 со скручиванием столбцов на декодер 166 LDPC.
Здесь код LDPC, подаваемый из декодера 164 QAM на обратный перемежитель 165 битов, был подвергнут перемежению четности, перемежению со скручиванием столбцов и операции перестановки в указанном порядке. Однако, в обратном перемежителе 165 битов выполняют только операцию обратной перестановки, соответствующую операции перестановки и обратного перемежения со скручиванием столбов, соответствующего перемежению со скручиванием столбцов, и операцию обратного перемежения четности, соответствующую перемежению честности (операция, противоположная перемежению четности) или обратное перемежение честности, для возврата последовательность знаковых битов кода LDPC, компоновка которого была изменена в результате перемежения четности в оригинальную последовательность, не выполняют.
В соответствии с этим, код LDPC, который был подвергнут операции обратной перестановки и обратного перемежения со скручиванием столбцов, но который не был подвергнут обратному перемежению четности, подают от (обратного перемежителя 55 со скручиванием столбцов) обратного перемежителя 165 битов на декодер 166 LDPC.
Декодер 166 LDPC выполняет декодирование LDPC, для кода LDPC, подаваемого от обратного перемежителя 165 битов, используя преобразованную матрицу проверки четности, полученную в результате выполнения по меньшей мере замены столбца, эквивалентной перемежению четности для матрицы Н проверки четности, использовавшейся при кодировании LDPC кодером 115 LDPC, показанным на фиг.8. Полученные в результате данные выводят в качестве результата декодирования целевых данных LDPC.
На фиг.63 показана блок-схема последовательности операций для пояснения операций, выполняемых декодером 164 QAM, обратным перемежителем 165 битов и декодером 166 LDPC, показанным на фиг.62.
На этапе S111, декодер 164 QAM выполняет ортогональную демодуляцию путем обратного отображения символов, подаваемых от обратного перемежителя 163 времени (символы, отображенные на точки сигнала), и подает результаты на обратный перемежитель 165 битов. Операция затем переходит на этап S112.
На этапе S112 обратный перемежитель 165 битов выполняет обратное перемежение символьных битов для символов, подаваемых от декодера 164 QAM (обратное перемежение битов), и операция затем переходит на этап S113.
В частности, на этапе S112, мультиплексор 54 в обратном перемежителе 165 битов выполняет операцию обратной перестановки символьных битов для символов, подаваемых от декодера 164 QAM, и подает знаковые биты, полученные в результате кода LDPC, на обратный перемежитель 55 со скручиванием столбцов.
Обратный перемежитель 55 со скручиванием столбцов выполняет обратное перемежение со скручиванием столбцов для кода LDPC, подаваемого от мультиплексора 54, и подает полученный в результате код LDPC на декодер 166 LDPC.
На этапе S113, декодер 166 LDPC выполняет декодирование LDPC для кода LDPC, подаваемого от обратного перемежителя 55 со скручиванием столбцов, используя преобразованную матрицу проверки четности, получаемую в результате выполнения по меньшей мере замены столбца, эквивалентной перемежению четности, для матрицы Н проверки четности, использовавшейся при кодировании LDPC кодером 115 LDPC, показанным на фиг.8. Полученные в результате данные выводят в качестве результата декодирования целевых данных LDPC на декодер 167 ВСН.
На фиг.62, для простоты пояснения, мультиплексор 54 выполняющий операцию обратной перестановки, и обратный перемежитель 55 со скручиванием столбцов, выполняющий обратное перемежение со скручиванием столбцов, сформированы отдельно друг от друга, как в случае, показанном на фиг.9. Однако, мультиплексор 54 и обратный перемежитель 55 со скручиванием столбцов могут быть сформированы интегрально.
В случае, когда перемежение со скручиванием столбцов не выполняют в перемежителе 116 битов, показанном на фиг.9, нет необходимости обеспечивать обратный перемежитель 55 со скручиванием столбцов в обратном перемежителе 165 битов, показанном на фиг.62.
Далее более подробно описано декодирование LDPC, которое должно быть выполнено на декодере 166 LDPC, показанном на фиг.61.
В декодере 166 LDPC, показанном на фиг.61, декодирование LDPC кода LDPC, который был подан от обратного перемежителя 55 со скручиванием столбцов, был подвергнут операции обратной перестановки и обратному перемежению со скручиванием столбцов, и который не был подвергнут обратному перемежению четности, выполняют, используя преобразованную матрицу проверки четности, полученную в результате выполнения по меньшей мере замены столбца, эквивалентного перемежению четности, для матрицы Н проверки четности, использовавшейся в коде LDPC кодером 115 LDPC, показанным на фиг.8, как описано выше.
Декодирование LDPC, которое может ограничивать рабочую частоту до значения в пределах обоснованно реалистичного диапазона, при уменьшении размера схемы, используя преобразованную матрицу проверки четности, уже было предложено (см., например, патент Японии №4 224 777).
Учитывая это, со ссылкой теперь на фиг.64-67, будет описано уже предложенное декодирование LDPC, используя преобразованную матрицу проверки четности.
На фиг.64 показан пример матрицы Н проверки четности кода LDPC, который имеет длину N кода равную 90 и скорость кода равную 2/3.
На фиг.64 (так же, как и на фиг.65 и 66, которые будут описаны ниже), О представлен точкой (.)
В матрице Н проверки четности, показанной на фиг.64, матрица четности имеет лестничную структуру.
На фиг.65 показана матрица Н′ проверки четности, полученная в результате выполнения замены строки, показанной в выражении (11), и замены столбца, показанного в выражении (12), для матрицы Н проверки четности, представленной на фиг.64.
Замена строки: (6s+t+1)-ая строка → (5t+s+1)-ая строка…(11)
Замена столбца: (6x+y+61)-ый столбец → (5y+x+61)-ый столбец…(12)
В выражениях (11) и (12), s, t, x и y представляют собой числа в диапазонах, выраженных, как 0≤s<5, 0≤t<6, 0≤x<5, и 0≤t<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-ого столбца и столбцов после него (матрица четности), 61-ый, 67-ой, 73-ий, 79-ый и 85-ый столбцы с номерами столбцов, каждый из которых оставляет остаток 1 при делении на 6, перемещают в 61-ый, 62-ой, 63-ий, 64-ый и 65-ый столбцы, соответственно, и 62-ой, 68-ой, 74-ый, 80-ый и 86-ой столбцы с номерами столбцов, каждый из которых оставляет остаток 2 при делении на 6, перемещают в 66-ой, 67-ой, 68-ой, 69-ый и 70-ый столбцы, соответственно.
Матрица, получаемая в результате выполнения замены строки и столбца, таким образом, в матрице Н проверки четности, показанной на фиг.64, представляет собой матрицу Н′ проверки четности, показанную на фиг.65.
Здесь на последовательность знаковых битов кода LDPC не влияет замена строки, выполняемая матрицей Н проверки четности.
Замена столбца, показанная в выражении (12), эквивалентна описанному выше перемежению четности, для перемежения (K+qx+y+1)-ого знакового бита в положение (K+Py+х+1)-ого знакового бита, где длина К информации равна 60, число Р столбцов в циклической структуре равно 5, и делитель q(M/P) длины М четности (30 в данном случае) равен 6.
Когда матрицу Н′ проверки четности (ниже называется преобразованной матрицей проверки четности, соответственно), показанную на фиг.65, умножают на результат той же замены, что и замена, показанная в выражении (12), выполняемая для кода LDPC матрицы Н проверки четности (ниже называется оригинальной матрицей проверки четности, соответственно), показанной на фиг.64, выводят нулевой вектор. В частности, в случае, когда с′ представляет вектор строки, полученный в результате выполнения замены столбца, показанной в выражении (12) для вектора с строки, в качестве кода LDPC (одно кодовое слово) оригинальной матрицы Н проверки четности, H′c′T, конечно, представляет собой нулевой вектор, поскольку HcT представляет собой нулевой вектор по сути матрицы проверки четности.
Учитывая описанное выше, преобразованная матрица Н′ проверки четности, показанная на фиг.65, представляет собой матрицу проверки четности кода с′ LDPC, получаемого в результате выполнения замены столбца, показанной в выражении (12) для кода LDPC оригинальной матрицы Н проверки четности.
В соответствии с этим, выполняется замена столбца, показанная в выражении (12), для кода с LDPC оригинальной матрицы Н проверки четности, и кода с′ LDPC, получаемого после декодирования замены столбца, используя преобразованную матрицу Н′ проверки четности, показанную на фиг.65 (декодирование LDPC). Обратную замену для замены столбца, показанной в выражении (12), затем выполняют для результата декодирования. Таким образом, может быть получен тот же результат декодирования, что и результат декодирования кода LDPC оригинальной матрицы Н проверки четности, при использованием матрицы Н проверки четности.
На фиг.66 показана преобразованная матрица Н′ проверки четности, показанная на фиг.65, в случае, когда пробел вставлен через интервалы единичной матрицы размером 5×5.
На фиг.66 представлена преобразованная матрица Н′ проверки четности, как комбинация единичных матриц 5×5, матриц, в которых один или больше элементов "1" каждой единичной матрицы изменен на "0" (ниже называются квазиединичными матрицами, соответственно), матрицы, сформированные в результате циклического сдвига сумм единичных матриц или квазиединичных матриц (ниже называются матрицами со сдвигом, соответственно), каждая из которых была получена путем суммирования двух или больше из единичных матриц, квазиединичных матриц и матриц со сдвигом (ниже называются суммарными матрицами, соответственно), и нулевых матриц размером 5×5.
Можно сказать, что преобразованная матрица Н′ проверки четности, показанная на фиг.66, формируется единичными матрицами 5×5, квазиединичными матрицами, матрицами со сдвигом, суммарными матрицами и нулевыми матрицами. Эти матрицы размером 5×5, составляющие преобразованную матрицу Н′ проверки четности, будут называться ниже составляющими матрицами, соответственно.
Для декодирования кода LDPC матрицы проверки четности, выраженной, как составляющая матрица Р×Р, может использоваться архитектура, которая одновременно выполняет операции проверочного узла Р и операции переменного узла Р.
На фиг.67 показана блок-схема, представляющая пример структуры устройства декодирования, которое выполняет такое декодирование.
В частности, на фиг.67 показан пример структуры устройства декодирования, которое декодирует код LDPC путем использования преобразованной матрицы Н′ проверки четности по фиг.66, полученной в результате выполнения по меньшей мере замены столбца, показанной в выражении (12) оригинальной матрицы Н проверки четности, представленной на фиг.64.
Устройство декодирования, показанное на фиг.67, включает в себя: запоминающее устройство 300 хранения данных ребра, сформированного с шестью FIFO 3001-3006; селектор 301, который выбирает FIFO 3001-3006; модуль 302 вычисления проверочного узла; две цепи 303 и 308 циклического сдвига; запоминающее устройство 304 хранения данных ребра, сформированного с 18 FIFO 3041-30418; селектор 305, который выбирает FIFO 3041-30418; запоминающее устройство 306 принятых данных, которое содержит принятые данные; модуль 307 вычисления переменного узла; модуль 309 вычисления декодированного слова; модуль 310 изменения компоновки принятых данных; и модуль 311 изменения компоновки декодированных данных.
Вначале будет описан способ хранения данных в запоминающих устройствах 300 и 304 хранения данных.
Запоминающее устройство 300 хранения данных ребра сформировано с шестью FIFO 3001-3006, при этом шесть представляет собой число, полученное путем деления 30, которое представляет собой количество строк в преобразованной матрице Н' проверки четности на фиг.66, 5, которая представляет собой количество строк в каждой составляющей матрице. Каждый FIFO 300y (y=1, 2,…,6) включает в себя несколько каскадов областей хранения, и сообщения, соответствующие пяти ребрам, эквивалентным количеству строк и количеству столбцов в каждой составляющей матрице, могут быть одновременно считаны из и записаны в область хранения в каждом каскаде. Количество каскадов областей хранения в FIFO 300y равно 9, что представляет собой максимальное число элементов 1 в направлении строки (вес Хамминга) в преобразованной матрице проверки четности по фиг.66.
Данные, соответствующие положениям элементов "1" в первой-пятой строках, в преобразованной матрице Н' проверки четности на фиг.66 (сообщение vi из переменных узлов), сохраняют в FIFO 3001 таким образом, что данные выравнивают в горизонтальном направлении, в соответствующих строках ("0" игнорируют). В частности, в случае, когда (j, i) представляют j-ую строку и i-ый столбец, данные, соответствующие положениям элементов "1" в единичной матрице 5×5 от (1, 1) до (5, 5) в преобразованной матрице Н′ проверки четности сохраняют в области хранения, в первом каскаде FIFO 3001. Данные, соответствующие положениям элементов "1" в матрице со сдвигом с размером от (1, 21) до (5, 25) (матрица со сдвигом, сформированная в результате циклического сдвига единичной матрицы 5×5 вправо на 3) в преобразованной матрице Н′ проверки четности, сохраняют в области хранения второго каскада. Аналогично, данные, ассоциированные с преобразованной матрицей Н′ проверки четности, сохраняют в областях хранения третьего-восьмого каскадов. Данные, соответствующие положениям элементов "1" в матрице со сдвигом от (1, 86) до (5, 90) (матрица со сдвигом, сформированная в результате циклического сдвига единичной матрицы 5×5 влево на 1, после замены элементов "1" в первой строке в единичной матрице 5×5 на "0") в преобразованной матрице Н′ проверки четности, сохраняют в области хранения девятого каскада.
Данные, соответствующие положениям элементов "1" в шестой-десятой строках, в преобразованной матрице Н' проверки четности на фиг.66, сохраняют в FIFO 3002. В частности, данные, соответствующие положениям элементов "1" в первой матрице со сдвигом, формирующей сумму матриц от (6, 1) до (10, 5) (матрица суммы, которая представляет собой сумму первой матрицы со сдвигом, сформированной в результате циклического сдвига единичной матрицы 5×5 вправо на 1, и второй матрицы со сдвигом, сформированной в результате циклического сдвига единичной матрицы 5×5 вправо на 2) в преобразованной матрице Н′ проверки четности, сохраняют в области хранения, в первом каскаде в FIFO 3002. Данные, соответствующие положениям элементов "1" во второй матрице со сдвигом, формирующие суммарную матрицу от (6, 1) до (10, 5) в преобразованной матрице Н′ проверки четности, сохраняют в области хранения во втором каскаде.
В частности, что касается составляющей матрицы, имеющей вес 2 или более, в случае, когда составляющая матрица выражена, как сумма двух или более единичных матриц Р×Р, имеющих вес 1, квазиединичной матрицы, в которой один или более элементов "1" в единичной матрице заменены на "0", и матрицы со сдвигом, сформированной в результате циклического сдвига единичной матрицы или квазиединичной матрицы, данные, соответствующие положениям элементов "1" в единичной матрице, имеющей вес 1, квазиединичной матрицы или матрицы со сдвигом (сообщения, соответствующие ребрам, принадлежащим единичной матрице, квазиединичной матрице или матрице со сдвигом) сохраняют по тому же адресу (один FIFO среди FIFO 3001-3006).
Аналогично, данные, ассоциированные с преобразованной матрицей Н' проверки четности, сохраняют в областях хранения в третьем-девятом каскадах.
Данные, ассоциированные с преобразованной матрицей Н′ проверки четности, также сохраняют в FIFO 3003-3006 таким же образом, как описано выше.
Запоминающее устройство 304 хранения данных ребра сформировано из 18 FIFO 3041-30418, 18 представляет собой число, получаемое путем деления 90, которое представляет собой количество столбцов в преобразованной матрице Н′ проверки четности на 5, которое представляет собой количество столбцов в каждой составляющей матрице. Каждый FIFO 304x (x=1, 2, …, 18) включает в себя несколько каскадов областей хранения, и сообщения, соответствующие пяти ребрам, эквивалентные количеству строк и количеству столбцов в преобразованной составляющей матрице Н′, можно одновременно считывать из и записывать в область хранения в каждом каскаде.
Данные, соответствующие положениям элементов "1" в первом-пятом столбцах, в преобразованной матрице Н′ проверки четности на фиг.66 (сообщение uj из проверочных узлов) сохраняют в FIFO 3041 таким образом, что данные выравниваются в вертикальном направлении в соответствующих столбцах (при этом "0" игнорируют). В частности, данные, соответствующие положениям элементов "1" в единичной матрице 5×5 от (1, 1) до (5, 5) в преобразованной матрице Н′ проверки четности сохраняют в области хранения в первом каскаде в FIFO 3041. Данные, соответствующие положениям элементов "1" в первой матрице со сдвигом, формирующей суммарную матрицу от (6, 1) до (10, 5) (матрица суммы, которая представляет собой сумму первой матрицы со сдвигом, сформированной в результате циклического сдвига единичной матрицы 5×5 вправо на 1, и второй матрицы со сдвигом, сформированной в результате циклического сдвига единичной матрицы 5×5 вправо на 2), в преобразованной матрице Н′ проверки четности сохраняют в области хранения во втором каскаде. Данные, соответствующие положениям элементов "1" во второй матрице со сдвигом, формирующей суммарную матрицу от (6, 1) до (10, 5) в преобразованной матрице Н′ проверки четности, сохраняют в области хранения на третьем каскаде.
В частности, что касается составляющей матрицы, имеющей вес 2 или больше, где составляющая матрица выражена суммой двух или больше из единичной матрицы Р×Р, имеющих вес 1, квазиединичной матрицы, в которой один или более элементов "1" в единичной матрицы изменены на "0", и матрицы со сдвигом, сформированной путем циклического сдвига единичной матрицы или квазиединичной матрицы, данные, соответствующие положениям элементов "1" в единичной матрице, имеющей вес 1, квазиединичной матрицы или матрицы со сдвигом (сообщения, соответствующие ребрам, принадлежащим единичной матрице, квазиединичной матрице или матрице со сдвигом) сохраняют по тому же адресу (один FIFO среди FIFO 3041-30418).
Аналогично, данные ассоциированные с преобразованной матрицей Н' проверки четности, сохраняют в областях хранения четвертого и пятого каскадов. Количество каскадов областей хранения в FIFO 3041 равно 5, что представляет собой максимальное количество элементов 1 в направлении строки (вес Хамминга) в первом-пятом столбцах в преобразованной матрице Н′ проверки четности.
FIFO 3042 и 3043 также содержит данные, ассоциированные с преобразованной матрицей Н′ проверки четности, и длина (количество каскадов) каждого из этих FIFO равна 5. FIFO 3044-30412 также содержат данные, ассоциированные с преобразованной матрицей Н' проверки четности, и длина каждого из этих FIFO равна 3. FIFO 30413-30418 также содержат данные, ассоциированные с преобразованной матрицей Н′ проверки четности, и длина каждого из этих FIFO равна 2.
Далее будет описана операция устройства декодирования, показанного на фиг.67.
Запоминающее устройство 300 хранения данных ребра сформировано с шестью FIFO 3001-3006 и выбирает FIFO для хранения данных из FIFO 3001-3006, в соответствии с информацией (данные матрицы) D312, указывающей, какие строки из пяти сообщений D311, подаваемых из схемы 308 циклического сдвига в предыдущем каскаде, принадлежат преобразованной матрице Н′ проверки четности. Пять сообщений D311 совместно и последовательно сохраняют в выбранных FIFO. При считывании данных из запоминающего устройства 300 хранения данных ребра последовательно считывают пять сообщений D3001 из FIFO 3001, и эти сообщения подают на селектор 301 в следующем каскаде. После считывания сообщений из FIFO 3001 запоминающее устройство 300 хранения данных ребра также последовательно считывает сообщения из FIFO 3002-3006 и подает эти сообщения в селектор 301.
В соответствии с сигналом D301 выбора, селектор 301 выбирает пять сообщений из FIFO, из которых в настоящее время считывают данные, среди FIFO 3001-3006, и подает выбранные пять сообщений, как сообщения D302, на модуль 302 вычисления проверочного узла.
Модуль 302 вычисления проверочного узла сформирован из пяти калькуляторов 3021-3025 проверочного узла, выполняет вычисление проверочного узла, в соответствии с уравнением (7), путем использования сообщений D302 (D3021-D3025) (сообщения vi в уравнении (7)), подаваемых через селектор 301, и подает пять сообщений D303 (D3031-D3035) (сообщения uj в уравнении (7)), полученных в результате вычисления проверочного узла, в схему 303 циклического сдвига.
Схема 303 циклического сдвига выполняет циклический сдвиг пяти сообщений от D3031 до D3035, определенных в модуле 302 вычисления проверочного узла, на основе информации (данных матрицы) D305, указывающей, на какое количество битов был выполнен циклический сдвиг базовой единичной матрицы в преобразованной матрице Н' проверки четности для формирования соответствующих ребер. Результаты подают, как сообщения D304, на запоминающее устройство 304 хранения данных ребра.
Запоминающее устройство 304 хранения данных ребра сформировано из 18 FIFO 3041-30418, и выбирает FIFO для хранения данных из FIFOs 3041-30418, в соответствии с информацией D305, указывающей, каким строкам принадлежат пять сообщений D304, поданных от схемы 303 циклического сдвига в предыдущем каскаде, в преобразованной матрице Н' проверки четности. Эти пять сообщений D304 совместно и последовательно сохраняют в выбранных FIFO. При считывании данных, запоминающее устройство 304 хранения данных ребра последовательно считывает пять сообщений D3061 из FIFO 3041, и подает эти сообщения на селектор 305 в следующем каскаде. После считывания данных из FIFO 3041, запоминающее устройство 304 хранения данных также последовательно считывает сообщения из FIFO 3042-30418 и подает эти сообщения на селектор 305.
В соответствии с сигналом D307 выбора, селектор 305 выбирает пять сообщений из FIFO, из которых считывают данные в настоящий момент, среди FIFOs 3041-30418, и подает выбранные сообщения, как сообщения D308, на модуль 307 вычисления переменного узла и на модуль 309 вычисления декодированного слова.
В то же время модуль 310 изменения компоновки принятых данных изменяет компоновку кода D313 LDPC, принятого по каналу 13, выполняя замену столбца, показанную в выражении (12), и подает принятые данные D314 на запоминающее устройство 306 принятых данных. Запоминающее устройство 306 принятых данных вычисляет LLRs (логарифмические отношения правдоподобия) приема по принятым данным D314, подаваемым от модуля 310 изменения компоновки принятых данных, и сохраняет LLR приема. Каждый набор из пяти LLR приема формирует принятые значения D309, и его подают на модуль 307 вычисления переменного узла и на модуль 309 вычисления декодированного слова.
Модуль 307 вычисления переменного узла сформирован из пяти калькуляторов 3071-3075 переменного узла и выполняет вычисление переменного узла в соответствии с уравнением (1), используя сообщения D308 (D3081-D3085) (сообщения uj в уравнении (1)), подаваемые через селектор 305, и пять принятых значений D309 (принятые значения u0i в уравнении (1)), подаваемые от запоминающего устройства 306 принятых данных. Сообщения D310 (D3101-D3105) (сообщения vi в уравнении (1)), полученные в результате вычислений, подают на схему 308 циклического сдвига.
Схема 308 циклического сдвига выполняет циклический сдвиг сообщений D3101-D3105, вычисленных модулем 307 вычисления переменного узла, на основе информации, указывающей, на сколько битов базовая единичная матрица в преобразованной матрице Н' проверки четности была циклически сдвинута для формирования соответствующих ребер. Результаты подают, в качестве сообщения D311, на запоминающее устройство 300 хранения данных ребра.
Каждый раз, когда однократно выполняется описанная выше операция, может быть выполнена операция декодирования кода LDPC. В устройстве декодирования, показанном на фиг.67, после того, как код LDPC будет декодирован заданное количество раз, модуль 309 вычисления декодированного слова и модуль 311 изменения компоновки декодированных данных определяют и выводят конечный результат декодирования.
В частности, модуль 309 вычисления декодированного слова сформирован из пяти калькуляторов 3091-3095 декодированного слова и вычисляет результат декодирования (декодированное слово) на основе уравнения (5) в последнем каскаде операций декодирования, используя пять сообщений D308 (D3081-D3085) (сообщения uj в уравнении (5)), выводимых из селектора 305, и пять принятых значений D309 (принятых значений u0i в уравнении (5)), подаваемых из запоминающего устройства 306 принятых данных. Полученные в результате декодированные данные D315 подают на модуль 311 изменения компоновки декодированных данных.
Модуль 311 изменения компоновки декодированных данных выполняет обратную замену после замены столбца, показанной в выражении (12) для декодированных данных D315, подаваемых от модуля 309 вычисления декодированного слова, для изменения компоновки последовательности декодированных данных D315. Затем выводят конечный результат D316 декодирования.
Как описано выше, матрицу проверки четности (оригинальную матрицу проверки четности) подвергают замене строки и/или замене столбца и, таким образом, преобразуют в матрицу проверки четности (преобразованная матрица проверки четности), которая может быть выражена комбинацией единичных матриц Р×Р, квазиединичных матриц, в каждой из которых один или больше элементов 1 были изменены на "0", матриц сдвига, каждая из которых сформирована путем циклического сдвига единичной матрицы или квазиединичной матрицы, суммарных матриц, каждая из которых сформирована путем сложения двух или больше единичных матриц, квазиединичной матрицы и матрицы со сдвигом, и нулевых матриц Р×Р, или комбинацией составляющих матриц. В соответствии с этим, архитектуру, которая может одновременно выполнять Р вычислений проверочного узла и Р вычислений переменного узла, можно использовать при декодировании кода LDPC. Поскольку вычисление узла Р выполняют одновременно, рабочую частоту ограничивают до значения в пределах реального диапазона, и может быть выполнено большое количество периодически повторяющихся операций декодирования.
Так же, как и устройство декодирования, показанное на фиг.67, декодер 166 LDPC устройства 12 приема, показанный на фиг.61, разработан для выполнения декодирования LDPC, путем одновременного выполнения Р вычислений проверочного узла и Р вычислений переменных узлов.
Для простоты пояснения, если матрица проверки четности кода LDPC, выводимого от кодера 115 LDPC устройства 11 передачи, показанная на фиг.8, представляет собой матрицу Н проверки четности, в которой матрица четности имеет лестничную структуру, как показано, например, на фиг.64, перемежитель 23 четности устройства 11 передачи выполняет перемежение четности для перемежения (К+qx+y+1)-ого знакового бита в положение (K+Py+х+1)-ого знакового бита, где длина К информации равна 60, единичное число Р столбцов в циклической структуре равно 5, и делитель q (=М/Р) для длины четности М равен 6.
Такое перемежение четности эквивалентно замене столбца, показанной в выражении (12), описанном выше. Поэтому, не требуется, чтобы декодер 166 LDPC выполнял замену столбца, показанную в выражении (12).
В соответствии с этим, устройство 12 приема, показанное на фиг.61, выполняет такую же операцию, как и операция, выполняемая устройством декодирования, показанным на фиг.67, за исключением того, что код LDPC не подвергают обратному перемежению четности, или коды LDPC, подвергнутые замене столбца, показанной в выражении (12), подают из обратного перемежителя 55 со скручиванием столбцов в декодер 166 LDPC, и декодер 166 LDPC не выполняет замену столбца, показанную в выражении (12).
На фиг.68 показана примерная структура устройства декодирования 166 LDPC, представленная на фиг.61.
На фиг.68 декодер 166 LDPC имеет такую же структуру, как и устройство декодирования, показанное на фиг.67, за исключением того, что модуль 310 изменения компоновки принятых данных, показанный на фиг.67, здесь не предусмотрен. Декодер 166 LDPC выполняет ту же операцию, что и устройство декодирования, показанное на фиг.67, за исключением того, что он не выполняет замену столбца, показанную в выражении (12). Поэтому, их пояснение здесь не повторяется.
В связи с тем, что здесь не требуется модуль 310 изменения компоновки принятых данных, как описано выше, декодер 166 LDPC может быть выполнен меньшим по размеру, чем устройство декодирования, показанное на фиг.67.
На фиг.64-68 длина N кода каждого кода LDPC равна 90, длина К информации равна 60, единичное число Р столбцов (количество строк и количество столбцов в каждой составляющей матрице) в циклической структуре равно 5, и делитель q (=М/Р) длины М четности равен 6, для простоты пояснения. Однако, длина N кода, длина К информации, единичное число Р столбцов в циклической структуре и делитель q (=М/Р) не ограничены упомянутыми выше соответствующими значениями.
В частности, в устройстве 11 передачи, показанном на фиг.8, кодер 115 LDPC выводит код LDPC, в котором длина N кода равна 64800, 16200 и т.п., длина K информации равна N-Pq (=N-М), единичное число Р столбцов в циклической структуре равно 360, и делитель q равен М/Р. Декодер 166 LDPC, показанный на фиг.68, также можно использовать при выполнении декодирования LDPC для такого кода LDPC, путем одновременного выполнения вычислений проверочного узла Р и вычислений переменного узла Р.
На фиг.69 показана схема для пояснения операции мультиплексора 54 обратного перемежителя 165 битов, показанного на фиг.62.
В частности, в позиции А на фиг.69 показан пример функциональной структуры мультиплексора 54.
Мультиплексор 54 включает в себя модуль 1001 обратной перестановки и запоминающее устройство 1002.
Мультиплексор 54 выполняет операцию обратной перестановки, соответствующую операции перестановки, выполняемой демультиплексором 25 устройства 11 передачи (противоположная операция для операции перестановки) для символьных бит из символов, подаваемых от декодера 164 QAM на предыдущем каскаде, или выполняет операцию обратной перестановки, для возврата знаковых битов (символьных битов) кода LDPC, переставленных в результате операции перестановки в оригинальные положения. Полученный в результате код LDPC подают на обратный перемежитель 55 со скручиванием столбцов в следующем каскаде.
В частности, в мультиплексоре 54, b (последовательных) символов установлены как единичный модуль, и символьные биты y0, y1, … и ymb-1 среди mb битов b символов подают на модуль 1001 обратной перестановки.
Модуль 1001 обратной перестановки выполняет обратную перестановку для возврата символьных битов y0-ymb-1 из mb битов в последовательность знаковых битов b0, b1, … и bmb-1 оригинальных mb битов (последовательность знаковых битов b0-bmb-1, которая присутствовала перед перестановкой в модуле 32 перестановки демультиплексора 25 в устройстве 11 передачи). Затем выводят полученные в результате знаковые биты b0-bmb-1 из mb битов.
Так же, как запоминающее устройство 31 демультиплексора 25 в устройстве 11 передачи, запоминающее устройства 1002 имеет емкость хранения для хранения mb битов в направлении строки (горизонтальном направлении) и N/(mb) битов в направлении столбца (вертикальном направлении). Таким образом, запоминающее устройство 1002 сформировано из mb столбцов для хранения N/(mb) битов.
В запоминающее устройстве 1002 знаковые биты кода LDPC, выводимые модулем 1001 обратной перестановки, записывают в направлении, в котором знаковые биты были считаны из запоминающего устройства 31 демультиплексора 25 в устройстве 11 передачи, и знаковые биты, записанные в запоминающем 1002 устройстве, считывают в направлении, в котором знаковые биты были записаны в запоминающее устройство 31.
В частности, в мультиплексоре 54 устройства 12 приема, запись знаковых битов кода LDPC, выводимых от модуля 1001 обратной перестановки в направлении строки на mb битов, начинают в первой строке в запоминающем устройстве 1002, и последовательно выполняют в нижних строках, как показано в позиции А на фиг.69.
Когда запись знаковых битов, эквивалентная длине одного кода, будет закончена, мультиплексор 54 считывает знаковые биты из запоминающего устройства 1002 в направлении столбца, и подает эти знаковые биты на обратный перемежитель 55 со скручиванием столбцов на следующем этапе.
В позиции В на фиг.69 показана схема, представляющая считывание знаковых битов от запоминающего устройства 1002.
В мультиплексоре 54 считывание знаковых битов кода LDPC в направлении сверху вниз (в направлении столбца) столбцов, формирующих запоминающее устройство 1002, выполняют для столбцов в направлении слева направо.
На фиг.70 показана схема для пояснения операции обратного перемежителя 55 со скручиванием столбцов обратного перемежителя 165 битов, показанного на фиг.62.
В частности, на фиг.70 показан пример структуры запоминающего устройства 1002 мультиплексора 54.
Запоминающее устройство 1002 имеет емкость хранения для хранения mb битов в направлении столбца (в вертикальном направлении) и N/(mb) битов в направлении строки (в горизонтальном направлении), и сформировано из mb столбцов.
Обратный перемежитель 55 со скручиванием столбцов выполняет обратное перемежение со скручиванием столбцов в запоминающем устройстве 1002 путем записи знаковых битов кода LDPC в направлении строки и управления положениями начала считывания, в которых знаковые биты считывают в направлении столбца.
В частности, обратный перемежитель 55 со скручиванием столбцов выполняет операцию обратного изменения компоновки для возврата последовательности знаковых битов, в которой была изменена компоновка, используя перемежение со скручиванием столбцов, в оригинальную последовательность, путем соответствующего изменения положений начала считывания, в которых начинается считывание знаковых битов среди столбцов.
Здесь, на фиг.70, показан пример структуры запоминающего устройства 1002 в случае, когда способ модуляции представляет собой 16QAM, и кратное число b равно 1, как описано выше со ссылкой на фиг.24. В соответствии с этим, число m битов в одном символе равно 4, и запоминающее устройство 1002 сформировано из четырех (=mb) столбцов.
Вместо мультиплексора 54, обратный перемежитель 55 со скручиванием столбцов выполняет запись знаковых битов кода LDPC, выводимых модулем 1001 перестановки, в направлении строки, начиная от первой строки в направлении нижних строк в запоминающем устройстве 1002.
После окончания записи знаковых битов, эквивалентных длине одного кода, обратный перемежитель 55 со скручиванием столбцов выполняет считывание знаковых битов в направлении сверху вниз запоминающего устройства 1002 (в направлении столбцов) для столбцов в направлении слева направо.
Обратный перемежитель 55 со скручиванием столбцов начинает считывание знаковых битов из запоминающего устройства 1002 в положения начала считывания знаковых битов, которые представляют собой положения начала записи, в котором перемежитель 24 со скручиванием столбцов в устройстве 11 передачи начинает запись знаковых битов.
В частности, когда адрес верхнего положения (самое верхнее положение) в каждом столбце равен 0, адреса соответствующих положений в направлении столбцов представлены целыми числами в порядке возрастания, способ модуляции представляет собой 16QAM, и кратное число b равно 1, обратный перемежитель 55 со скручиванием столбцов устанавливает положение начала считывания в положении с адресом 0 в самом левом столбце, устанавливает положение начала считывания, в положении с адресом 2 во втором столбце (слева), устанавливает положение начала считывания в положении с адресом 4 в третьем столбце, и устанавливает положение начала считывания в положении с адресом 7 в четвертом столбце.
В каждом столбце, в котором положение начала считывания не является положением с адресом 0, операция считывания возвращается к верху (положение с адресом 0) после выполнения считывания знакового бита в самом нижнем положении, и считывание затем продолжается до тех пор, пока не будет достигнуто положение непосредственно перед положением начала считывания. После этого считывание выполняют для следующего (правого) столбца.
По мере того, как выполняется описанное выше обратное перемежение со скручиванием столбцов, последовательность знаковых битов, компоновка которых была изменена в результате перемежения со скручиванием столбцов, возвращается в оригинальную последовательность.
На фиг.71 показана блок-схема, представляющая другую примерную структуру обратного перемежителя 165 битов, показанного на фиг.61.
На чертеже компоненты, эквивалентные показанным на фиг.62, обозначены теми же номерами ссылочных позиций, как и те, которые использовались на фиг.62, и пояснение их здесь не повторяется.
В частности, обратный перемежитель 165 битов, показанный на фиг.71, имеет такую же структуру, как показана на фиг.62, за исключением того, что был добавлен обратный перемежитель 1011 четности.
На фиг.71, обратный перемежитель 165 битов включает в себя мультиплексор (MUX) 54, обратный перемежитель 55 со скручиванием столбцов и обратный перемежитель 1011 четности и выполняет обратное перемежение битов для знаковых битов кода LDPC, подаваемого из декодера 164 QAM.
В частности, мультиплексор 54 выполняет операцию обратной перестановки, соответствующую операции перестановки, выполняемой демультиплексором 25 устройства 11 передачи (операция, противоположная операции перестановки) для кода LDPC, подаваемого декодером 164 QAM, или выполняет операцию обратной перестановки, для возврата положения знаковых битов, для которых была выполнена перестановка в результате операции перестановки в оригинальное положение. Полученный в результате код LDPC подают на обратный перемежитель 55 со скручиванием столбцов.
Обратный перемежитель 55 со скручиванием столбцов выполняет обратное перемежение со скручиванием столбцов, соответствующее перемежению со скручиванием столбцов, в качестве операции изменения компоновки, выполненный перемежителем 24 со скручиванием столбцов устройства 11 передачи, для кода LDPC, подаваемого из мультиплексора 54.
Код LDPC, полученный в результате обратного перемежения со скручиванием столбцов, подают от обратного перемежителя 55 со скручиванием столбцов на обратный перемежитель 1011 четности.
Обратный перемежитель 1011 четности выполняет обратное перемежение четности, соответствующее перемежению четности, выполняемому перемежителем 23 четности устройства 11 передачи (операция, противоположная перемежению четности) для знаковых битов, подвергавшихся обратному перемежению со скручиванием столбцов, в обратном перемежителе 55 со скручиванием столбцов, или выполняет обратное перемежение четности для возврата последовательности знаковых битов кода LDPC, для которых была выполнена перестановка в результате перемежения четности, в исходную последовательность.
Код LDPC, полученный в результате обратного перемежения четности, подают на обратный перемежитель 1011 четности в декодер 166 LDPC.
В соответствии с этим, в обратном перемежителе 165 битов, показанном на фиг.71, код LDPC, который был подвергнут операции обратной перестановки, обратному перемежению со скручиванием столбцов и обратному перемежению четности, или код LDPC, полученный в результате выполнения кодирования LDPC, в соответствии с матрицей Н проверки четности, подают на декодер 166 LDPC.
Декодер 166 LDPC выполняет декодирование LDPC для кода LDPC, подаваемого от обратного перемежителя 165 битов, используя матрицу Н проверки четности, применявшуюся при кодировании LDPC кодером 115 LDPC устройства 11 передачи, или преобразованную матрицу проверки четности, получаемую в результате выполнения по меньшей мере замены столбца, эквивалентной перемежению четности для матрицы Н проверки четности. Полученные в результате данные выводят, как результат декодирования целевых данных LDPC.
На фиг.71 код LDPC, полученный в результате кодирования, выполняя LDPC, в соответствии с матрицей Н проверки четности, подают из (обратного перемежителя 1011 четности) обратного перемежителя 165 битов на декодер 166 LDPC. Поэтому, в случае, когда выполняют декодирование LDPC кода LDPC, используя матрицу Н проверки четности, применявшуюся при кодировании LDPC кодером 115 LDPC устройства 11 передачи, декодер 166 LDPC может быть сформирован, используя устройство декодирования, которое выполняет декодирование LDPC с помощью способа полного последовательного декодирования, для последовательного вычисления сообщений (сообщения проверочных узлов и сообщения переменных узлов) по одному узлу одновременно, или устройство декодирования, которое выполняет декодирование LDPC, с помощью способа полного параллельного декодирования для вычисления сообщения одновременно (параллельно) для всех узлов.
В случае, когда выполняют декодирование LDPC для кода LDPC в декодере 166 LDPC, используя преобразованную матрицу проверки четности, полученную в результате выполнения по меньшей мере замены столбца, эквивалентной перемежению четности в матрице Н проверки четности, применявшейся при кодировании LDPC кодером 115 LDPC в устройстве 11 передачи, декодер 166 LDPC представляет собой устройство декодирования с архитектурой, которая одновременно выполняет Р (или делитель Р, кроме 1) вычислений проверочного узла и Р вычислений переменного узла, и может быть сформирован с устройством декодирования (фиг.67), которое включает в себя модуль 310 изменения компоновки принятых данных, который изменяет компоновку знаковых битов кода LDPC, выполняя ту же замену столбца, что и замена столбца для получения преобразованной матрицы проверки четности по коду LDPC.
На фиг.71 мультиплексор 54, выполняющий операцию обратной перестановки, обратный перемежитель 55 со скручиванием столбцов, выполняющий обратное перемежение со скручиванием столбцов, и обратный перемежитель 1011 четности, выполняющий обратное перемежение четности, сформированы отдельно друг от друга, для простоты пояснения. Однако, два или больше из мультиплексора 54, обратного перемежителя 55 со скручиванием столбцов и обратного перемежителя 1011 четности могут быть сформированы интегрально, так же, как и перемежитель 23 четности, перемежитель 24 со скручиванием столбцов и демультиплексор 25 устройства 11 передачи.
Примерная структура системы приема
На фиг.72 показана блок-схема, представляющая первую примерную структуру системы приема, в которой можно применять устройство 12 приема.
На фиг.72 система приема включает в себя модуль 1101 получения, модуль 1102 операций декодирования канала передачи и модуль 1103 операции декодирования источника информации.
Модуль 1101 получения получает сигнал, содержащий код LDPC, полученный в результате выполнения по меньшей мере кодирования LDPC для целевых данных LDPC, таких как данные изображения и аудиоданные шоу, через канал передачи (канал связи) (не показан) сети, такой как цифровая наземная широковещательная передача, цифровая спутниковая широковещательная передача, сеть CATV или Интернет. Сигнал затем подают на модуль 1102 операций декодирования канала передачи.
В случае, когда сигнал, который должен быть получен модулем 1101 получения, передают в режиме широковещательной передачи станции широковещательной передачи, например, по наземным волнам, спутниковым волнам или по сети CATV (кабельное телевидение), модуль 1101 получения формируют с тюнером, STB (телевизионная приставка) и т.п. В случае, когда сигнал, который должен быть получен модулем 1101 получения, передают, используя, например, групповую адресацию, как в IPTV (телевидение по протоколу Интернет) из веб-сервера, модуль 1101 получения сформирован с сетевым I/F (интерфейсом), таким как NIC (карта сетевого интерфейса).
Модуль 1102 операций декодирования канала передачи эквивалентен устройству 12 приема. Модуль 1102 операций декодирования канала передачи выполняет операцию декодирования канала передачи для сигнала, полученного модулем 1101 получения через канал передачи. Операция декодирования канала передачи включает в себя по меньшей мере операцию для коррекции ошибок, которые возникают в канале передачи. Полученный в результате сигнал подают на модуль 1103 операции декодирования источника информации.
В частности, сигнал, получаемый модулем 1101 получения через канал передачи, представляет собой сигнал, получаемый в результате выполнения по меньшей мере кодирования с коррекцией ошибок для коррекции ошибок, которые возникают в канале передачи, и модуль 1102 операций декодирования канала передачи выполняет операцию декодирования канала передачи, такую как операция коррекции ошибок для сигнала.
Здесь, например, кодирование с коррекцией ошибок может представлять собой кодированием LDPC или кодирование ВСН. В этом примере по меньшей мере кодирование LDPC выполняют, как кодирование коррекции ошибок.
Здесь представлены случаи, в которых операция декодирования канала передачи включает в себя демодуляцию модулированного сигнала и т.п.
Модуль 1103 операции декодирования источника информации выполняет операцию декодирования источника информации для сигнала, подвергнутого операции декодирования канала передачи. Операция декодирования источника информации включает в себя по меньшей мере операцию по разворачиванию сжатой информации в оригинальную информацию.
В частности, возникают случаи, когда сигнал, получаемый модулем 1101 получения через канал передачи, был подвергнут кодированию сжатия для сжатия информации, для уменьшения количества данных изображения и аудиоданных и т.п., в качестве информации. В таком случае модуль 1103 операции декодирования источника информации выполняет операцию декодирования источника информации, такую как операция по разворачиванию сжатой информации в оригинальную информацию (операция разворачивания) для сигнала, подвергнутого операции декодирования канала передачи.
В случае, когда сигнал, полученный модулем 1101 получения через канал передачи, не был подвергнут кодированию сжатия, модуль 1103 операции декодирования источника информации не выполняет операцию для разворачивания сжатой информации в оригинальную информацию.
Здесь операция разворачивания может представлять собой, например, декодирование MPEG. Возникают случаи, когда операция декодирования канала передачи включает в себя дескремблирование и т.п., а также операцию разворачивания данных.
В системе приема, имеющей описанную выше структуру, кодирование со сжатием, такое как кодирование MPEG, выполняется для данных, таких как изображения и звук, в модуле 1101 получения. Кроме того, сигнал, подвергнутый кодированию с коррекцией ошибок, такому как кодирование LDPC, получают через канал передачи и подают на модуль 1102 операций декодирования канала передачи.
В модуле 1102 операций декодирования канала передачи, ту же операцию, которая выполнялась, например, устройством 12 приема, выполняют, как операцию декодирования канала передачи для сигнала, подаваемого от модуля 1101 получения, и полученный в результате сигнал подают на модуль 1103 операции декодирования источника информации.
В модуле 1103 операции декодирования источника информации, выполняют операцию декодирования источника информации, такую как декодирование MPEG, для сигнала, подаваемого от модуля 1102 операций декодирования канала передачи, и выводят полученное в результате изображение или звук.
Система приема, имеющая описанную выше структуру, как показано на фиг.72, может применяться в телевизионном тюнере и т.п., который принимает телевизионную широковещательную передачу, в качестве цифровой широковещательной передачи.
Следует отметить, что модуль 1101 получения, модуль 1102 операций декодирования канала передачи, и модуль 1103 операции декодирования источника информации, могут быть сформированы, в качестве устройства (аппаратные средства (1С (интегральные схемы) и т.п.) или программные модули), независимые друг от друга.
Что касается модуля 1101 получения, модуля 1102 операций декодирования канала передачи и модуля 1103 операции декодирования источника информации, набор от модуля 1101 получения и модуля 1102 операций декодирования канала передачи, набор от модуля 1102 операций декодирования канала передачи и модуля 1103 операции декодирования источника информации, или набор от модуля 1101 получения, модуля 1102 операций декодирования канала передачи и модуля 1103 операции декодирования источника информации могут быть сформированы, как одно независимое устройство.
На фиг.73 показана блок-схема, представляющая вторую примерную структуру системы приема, в которой можно применять устройство 12 приема.
На чертеже компоненты, эквивалентные показанным на фиг.72, обозначены теми же номерами ссылочных позиций, что и на фиг.72, и их пояснение здесь не повторяется.
Система приема, показанная на фиг.73, является такой же, как и на фиг.72 и включает в себя модуль 1101 получения, модуль 1102 операций декодирования канала передачи и модуль 1103 операции декодирования источника информации, но отличается от показанной на фиг.72 тем, что она дополнительно включает в себя модуль 1111 вывода.
Модуль 1111 вывода может представлять собой устройство отображения, которое отображает изображение, или громкоговоритель, который выводит звук, например, и выводит изображения или звук, как выходной сигнал от модуля 1103 операции декодирования источника информации. Таким образом, модуль 1111 вывода отображает изображение или выводит звук.
Система приема, имеющая описанную выше структуру, как показано на фиг.73, может применяться в телевизионном устройстве (телевизионном приемнике), которое принимает телевизионные широковещательные передачи, как цифровые широковещательные передачи, или в радиоприемнике, который принимает широковещательные радиопередачи.
В случае, когда сигнал, получаемый модулем 1101 получения не был подвергнут кодированию сжатия, сигнал, выводимый модулей 1102 операций декодирования канала передачи подают на модуль 1111 вывода.
На фиг.74 показана блок-схема, представляющая третий пример структуры в системе приема, в которой может быть применено устройство 12 приема.
На чертеже компоненты, эквивалентные показанным на фиг.72, обозначены теми же номерами ссылочных позиций, как и у компонентов, которые используются на фиг.72, и пояснение их здесь не повторяется.
Система приема, показанная на фиг.74, является такой же, как и на фиг.72, и включает в себя модуль 1101 получения и модуль 1102 операций декодирования канала передачи.
Однако, система приема, показанная на фиг.74, отличается от показанной на фиг.72 тем, что модуль 1103 операции декодирования источника информации не предусмотрен, но был вновь добавлен модуль 1121 записи.
Модуль 1121 записи записывает (сохраняет) сигнал (такой, как пакет TS или TS MPEG), выводимый модулем 1102 операций декодирования канала передачи, на носитель (накопитель) записи, такой как оптический диск, жесткий диск (магнитный диск) или запоминающее устройство типа флэш.
Система приема, имеющая описанную выше структуру, как показано на фиг.74, может применяться для устройства записи, которое записывает телевизионные широковещательные передачи.
На фиг.74 система приема может дополнительно включать в себя модуль 1103 операции декодирования источника информации, и сигнал подвергается операции декодирования источника информации в модуле 1103 операции декодирования источником информации, или изображение или звук, получаемые в результате декодирования, могут быть записаны модулем 1121 записи.
Один вариант осуществления компьютера
Описанная выше последовательность операций может выполняться с использованием аппаратных средств, и также может выполняться с использованием программных средств. В случае, когда последовательность операций выполняется с использованием программных средств, программу, которая формирует программное обеспечение, устанавливают в компьютер общего назначения и т.п.
На фиг.75 показана примерная структура варианта осуществления компьютера, в котором установлена программа для выполнения описанной выше последовательности операций.
Программа может быть записана заранее на жестком диске 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 связи, например, через интерфейс 710 ввода-вывода, и дополнительно сохраняет результаты операции на жестком диске 705.
В данном описании этапы обработки, записанные в программе, которые обеспечивают выполнение компьютером различных операций, не обязательно выполняются в хронологическом порядке, в соответствии с последовательностью, описанной, как блок-схемы последовательности операций, но включают в себя процедуры, которые выполняются параллельно или независимо друг от друга (такие как параллельные процедуры или процедуры, основанные на объектах).
Программа может быть выполнена одним компьютером или может быть выполнена распределено более, чем одним компьютером. Кроме того, программа может быть передана на удаленный компьютер и может быть выполнена в нем.
Следует отметить, что варианты осуществления настоящей технологии не ограничены описанными выше вариантами осуществления, и различные модификации могут быть выполнены в отношении них, без выхода за пределы объема настоящей технологии.
Таким образом, описанные выше (таблицы исходного значения матрицы проверки) коды LDPC и т.п., предназначенные для использования при цифровой широковещательной передаче для портативных оконечных устройств, могут использоваться при цифровой широковещательной передаче для стационарных оконечных устройств.
Настоящая технология также может быть воплощена в структурах, описанных ниже.
(1) Устройство обработки данных, включающее в себя:
модуль кодирования, выполненный с возможностью кодирования LDPC для генерирования кода LDPC, имеющего длину кода 16200 битов и скорость кода равную 8/15, на основе матрицы проверки четности для кодов LDPC; и
модуль перестановки, выполненный с возможностью осуществления замены знаковых битов в коде LDPC, кодированном с помощью модуля кодирования, символьными битами символа, соответствующего одной из 256 точек сигнала, определенных по 256QAM,
при этом код LDPC, кодированный модулем кодирования, включает в себя информационные биты и биты четности,
причем матрица проверки четности, включает в себя информационную область матрицы, соответствующую информационным битам, и область матрицы четности, соответствующую битам четности,
при этом информационная область матрицы представлена таблицей исходного значения матрицы проверки,
таблица исходного значения матрицы проверки представляет собой таблицу, представляющую положения элементов "1" информационной области матрицы через интервалы 360 столбцов, и содержит
32 384 430 591 1976 1296 1999 2137 2175 3638 4214 4304 4486 4662 4999 5174 5700 6969 7115 7138 7189
1881 1788 1910 2724 4504 4928 4973 5616 5686 5718 5846 6523 6893 6994 7074 7100 7277 7399 7476 7480 7537
2791 2824 2927 4196 4298 4800 4948 5361 5401 5688 5818 5862 5969 6029 6244 6645 6962 7203 7302 7454 7534
574 2056 1826 1461 2069 2387 2794 3349 3366 4951 5826 5834 5903 6640 6762 6786 6859 7043 7418 7431 7554
14 178 675 823 890 930 1209 1311 2898 4339 4600 5203 6485 6549 6970 7208 7218 7298 7454 7457 7462
4075 4188 7313 7553
5145 6018 7148 7507
3198 4858 6983 7033
3170 5126 5625 6901
2839 6093 7071 7450
11 3735 5413
2497 5400 7238
2067 5172 5714
1889 7173 7329
1795 2773 3499
2695 2944 6735
3221 4625 5897
1690 6122 6816
5013 6839 7358
1601 6849 7415
2180 7389 7543
2121 6838 7054
1948 3109 5046
272 1015 7464
при этом модуль перестановки выполнен с возможностью замены
бита b0 битом y2,
бита b1 битом y6,
бита b2 битом y1,
бита b3 битом y0,
бита b4 битом y7,
бита b5 битом y5,
бита b6 битом y3, и
бита b7 битом y4,
причем восемь знаковых битов, сохраненных в восьми модулях хранения, каждый из которых имеет емкость хранения 16200/8 битов и считываемые из соответствующих модулей хранения по одному биту, каждых из которых назначают для одного символа, (#i+1)-ый бит, отсчитанный от верхнего бита из указанных восьми знаковых битов, выражен в качестве бита b#i, и (#i+1)-ый бит, отсчитанный от самого верхнего бита из восьми символьных битов одного символа выражен в качестве бита y#i.
(2) Способ обработки данных, содержащий:
этап кодирования, на котором осуществляют кодирование LDPC для генерирования кода LDPC, имеющего длину кода 16200 битов и скорость кода равную 8/15, на основе матрицы проверки четности для кодов LDPC; и
этап перестановки, на котором осуществляют замену знаковых битов кода LDPC, кодированного на этапе кодирования, символьными битами символа, соответствующего одной из 256 точек сигнала, определенных по 256QAM,
при этом код LDPC, кодированный на этапе кодирования, содержит информационные биты и биты четности,
причем матрица проверки четности включает в себя информационную область матрицы, соответствующую информационным битам, и область матрицы четности, соответствующую битам четности,
при этом информационная область матрицы представлена таблицей исходного значения матрицы проверки,
таблица исходного значения матрицы проверки представляет собой таблицу, представляющую положения элементов "1" информационной области матрицы через интервалы 360 столбцов, и содержит
32 384 430 591 1976 1296 1999 2137 2175 3638 4214 4304 4486 4662 4999 5174 5700 6969 7115 7138 7189
1881 1788 1910 2724 4504 4928 4973 5616 5686 5718 5846 6523 6893 6994 7074 7100 7277 7399 7476 7480 7537
2791 2824 2927 4196 4298 4800 4948 5361 5401 5688 5818 5862 5969 6029 6244 6645 6962 7203 7302 7454 7534
574 2056 1826 1461 2069 2387 2794 3349 3366 4951 5826 5834 5903 6640 6762 6786 6859 7043 7418 7431 7554
14 178 675 823 890 930 1209 1311 2898 4339 4600 5203 6485 6549 6970 7208 7218 7298 7454 7457 7462
4075 4188 7313 7553
5145 6018 7148 7507
3198 4858 6983 7033
3170 5126 5625 6901
2839 6093 7071 7450
11 3735 5413
2497 5400 7238
2067 5172 5714
1889 7173 7329
1795 2773 3499
2695 2944 6735
3221 4625 5897
1690 6122 6816
5013 6839 7358
1601 6849 7415
2180 7389 7543
2121 6838 7054
1948 3109 5046
272 1015 7464
причем этап перестановки, содержит замену
бита b0 битом y2,
бита b1 битом y6,
бита b2 битом y1,
бита b3 битом y0,
бита b4 битом y7,
бита b5 битом y5,
бита b6 битом y3, и
бита b7 битом y4,
при этом восемь знаковых битов, сохраненные в восьми модулях хранения, каждый из которых имеет емкость хранения 16200/8 битов и считываемые из соответствующих модулей хранения по одному биту, каждых из которых назначают для одного символа, причем (#i+1)-ый бит, отсчитанный от верхнего бита из указанных восьми знаковых битов, выражен в качестве бита b#i, и (#i+1)-ый бит, отсчитанный от верхнего бита из восьми символьных битов одного символа, выражен в качестве бита y#i.
(3) Устройство обработки данных, содержащее:
модуль обратной перестановки, выполненный с возможностью замены символьных битов символа, соответствующего одной из 256 точек сигнала, определенных по 256QAM, знаковыми битами кода LDPC, имеющего длину кода 16200 битов и скорость кода равную 8/15; и
модуль декодирования, выполненный с возможностью декодирования кода LDPC на основе матрицы проверки четности для кодов LDPC после перестановки кода LDPC модулем обратной перестановки,
при этом модуль обратной перестановки выполнен с возможностью замены:
бита y2 битом b0,
бита y6 битом b1,
бита y1 битом b2,
бита y0 битом b3,
бита y7 битом b4,
бита y5 битом b5,
бита y3 битом b6, и
бита y4 битом b7,
причем восемь знаковых битов, сохраненных в восьми модулях хранения, каждый из которых имеет емкость хранения 16200/8 битов и считываемых из соответствующих модулей хранения по одному биту, каждых из которых назначают для одного символа, (#i+1)-ый бит, отсчитанный от самого верхнего бита из указанных восьми знаковых битов, выражен в качестве бита b#i, и (#i+1)-ый бит, отсчитанный от самого верхнего бита из восьми символьных битов одного символа, выражен в качестве бита y#i.
при этом код LDPC, содержит информационные биты и биты четности, а
матрица проверки четности, содержит информационную область матрицы, соответствующую информационным битам, и область матрицы четности, соответствующую битам четности,
информационная область матрицы представлена таблицей исходного значения матрицы проверки,
таблица исходного значения матрицы проверки представляет собой таблицу, представляющую положения элементов "1" информационной области матрицы через интервалы 360 столбцов, и содержит
32 384 430 591 1976 1296 1999 2137 2175 3638 4214 4304 4486 4662 4999 5174 5700 6969 7115 7138 7189
1881 1788 1910 2724 4504 4928 4973 5616 5686 5718 5846 6523 6893 6994 7074 7100 7277 7399 7476 7480 7537
2791 2824 2927 4196 4298 4800 4948 5361 5401 5688 5818 5862 5969 6029 6244 6645 6962 7203 7302 7454 7534
574 2056 1826 1461 2069 2387 2794 3349 3366 4951 5826 5834 5903 6640 6762 6786 6859 7043 7418 7431 7554
14 178 675 823 890 930 1209 1311 2898 4339 4600 5203 6485 6549 6970 7208 7218 7298 7454 7457 7462
4075 4188 7313 7553
5145 6018 7148 7507
3198 4858 6983 7033
3170 5126 5625 6901
2839 6093 7071 7450
11 3735 5413
2497 5400 7238
2067 5172 5714
1889 7173 7329
1795 2773 3499
2695 2944 6735
3221 4625 5897
1690 6122 6816
5013 6839 7358
1601 6849 7415
2180 7389 7543
2121 6838 7054
1948 3109 5046
272 1015 7464.
(4) Способ обработки данных, содержащий:
этап обратной перестановки, на котором осуществляют замену символьных битов символа, соответствующего одной из 256 точек сигнала, определенных по 256QAM, знаковыми битами кода LDPC, имеющего длину кода 16200 битов и скорость кода равную 8/15; и
этап декодирования, на котором декодируют код LDPC на основе матрицы проверки четности для кодов LDPC после перестановки кода LDPC на этапе обратной перестановки,
при этом этап обратной перестановки, содержит замену
бита y2 битом b0,
бита y6 битом b1,
бита y1 битом b2,
бита y0 битом b3,
бита y7 битом b4,
бита y5 битом b5,
бита y3 битом b6, и
бита y4 битом b7,
причем восемь знаковых битов, хранящихся в восьми модулях хранения, каждый из которых имеет емкость хранения 16200/8 битов и считываемых из соответствующих модулей хранения по одному биту, каждый из которых назначают для одного символа, при этом (#i+1)-ый бит, отсчитанный от самого верхнего бита из указанных восьми знаковых битов, выражен в качестве бита b#i, и (#i+1)-ый бит, отсчитанный от самого верхнего бита из восьми символьных битов одного символа, выражен в качестве бита y#i.
при этом код LDPC содержит информационные биты и биты четности, а
матрица проверки четности содержит информационную область матрицы, соответствующую информационным битам, и область матрицы четности, соответствующую битам четности,
причем информационная область матрицы представлена таблицей исходного значения матрицы проверки, а
таблица исходного значения матрицы проверки представляет собой таблицу, представляющую положения элементов "1" информационной области матрицы через интервалы 360 столбцов, и содержит
32 384 430 591 1976 1296 1999 2137 2175 3638 4214 4304 4486 4662 4999 5174 5700 6969 7115 7138 7189
1881 1788 1910 2724 4504 4928 4973 5616 5686 5718 5846 6523 6893 6994 7074 7100 7277 7399 7476 7480 7537
2791 2824 2927 4196 4298 4800 4948 5361 5401 5688 5818 5862 5969 6029 6244 6645 6962 7203 7302 7454 7534
574 2056 1826 1461 2069 2387 2794 3349 3366 4951 5826 5834 5903 6640 6762 6786 6859 7043 7418 7431 7554
14 178 675 823 890 930 1209 1311 2898 4339 4600 5203 6485 6549 6970 7208 7218 7298 7454 7457 7462
4075 4188 7313 7553
5145 6018 7148 7507
3198 4858 6983 7033
3170 5126 5625 6901
2839 6093 7071 7450
11 3735 5413
2497 5400 7238
2067 5172 5714
1889 7173 7329
1795 2773 3499
2695 2944 6735
3221 4625 5897
1690 6122 6816
5013 6839 7358
1601 6849 7415
2180 7389 7543
2121 6838 7054
1948 3109 5046
272 1015 7464.
(5) Устройство обработки данных, содержащее:
модуль кодирования, выполненный с возможностью кодирования LDPC для генерирования кода LDPC, имеющего длину кода 16200 битов и скорость кода равную 4/15, на основе матрицы проверки четности для кодов LDPC; и
модуль перестановки, выполненный с возможностью замены знаковых битов кода LDPC, кодированных модулем кодирования с символьными битами символа, соответствующего одной из 256 точек сигнала, определенных по 256QAM,
при этом код LDPC содержит информационные биты и биты четности, а
матрица проверки четности содержит информационную область матрицы, соответствующую информационным битам, и область матрицы четности, соответствующую битам четности,
причем информационная область матрицы представлена таблицей исходного значения матрицы проверки,
таблица исходного значения матрицы проверки представляет собой таблицу, представляющую положения элементов "1" информационной части матрицы через интервалы 360 столбцов, и содержит
1953 2331 2545 2623 4653 5012 5700 6458 6875 7605 7694 7881 8416 8758 9181 9555 9578 9932 10068 11479 11699
514 784 2059 2129 2386 2454 3396 5184 6624 6825 7533 7861 9116 9473 9601 10432 11011 11159 11378 11528 11598
483 1303 1735 2291 3302 3648 4222 4522 5511 6626 6804 7404 7752 7982 8108 8930 9151 9793 9876 10786 11879
1956 7572 9020 9971
13 1578 7445 8373
6805 6857 8615 11179
7983 8022 10017 11748
4939 8861 10444 11661
2278 3733 6265 10009
4494 7974 10649
8909 11030 11696
3131 9964 10480
при этом модуль перестановки выполнен с возможностью замены:
бита b0 битом y4,
бита b1 битом y0,
бита b2 битом y6,
бита b3 битом y1,
бита b4 битом y3,
бита b5 битом y7,
бита b6 битом y5, и
бита b7 битом y2,
причем восемь знаковых битов, хранящихся в восьми модулях хранения, каждый из которых имеет емкость хранения 16200/8 битов и считываемых из соответствующих модулей хранения по одному биту, каждых из которых назначают для одного символа, (#i+1)-ый бит, отсчитанный от самого верхнего бита из указанных восьми знаковых битов, и выражен в качестве бита b#i, и (#i+1)-ый бит, отсчитанный от верхнего бита из восьми символьных битов одного символа, выражен в качестве бита y#i.
(6) Способ обработки данных, содержащий:
этап кодирования, на котором осуществляют кодирование LDPC для генерирования кода LDPC, имеющего длину кода 16200 битов и скорость кода равную 4/15, на основе матрицы проверки четности для кодов LDPC; и
этап перестановки, на котором осуществляют замену знаковых битов кода LDPC, кодированного на этапе кодирования, символьными битами символа, соответствующего одной из 256 точек сигнала, определенных в 256QAM,
при этом код LDPC, кодированный на этапе кодирования, содержит информационные биты и биты четности, а
матрица проверки четности содержит информационную область матрицы, соответствующую информационным битам, и область матрицы четности, соответствующую битам четности,
информационная область матрицы представлена таблицей исходного значения матрицы проверки, а
таблица исходного значения матрицы проверки представляет собой таблицу, представляющую положения элементов "1" информационной области матрицы через интервалы 360 столбцов, и содержит
1953 2331 2545 2623 4653 5012 5700 6458 6875 7605 7694 7881 8416 8758 9181 9555 9578 9932 10068 11479 11699
514 784 2059 2129 2386 2454 3396 5184 6624 6825 7533 7861 9116 9473 9601 10432 11011 11159 11378 11528 11598
483 1303 1735 2291 3302 3648 4222 4522 5511 6626 6804 7404 7752 7982 8108 8930 9151 9793 9876 10786 11879
1956 7572 9020 9971
13 1578 7445 8373
6805 6857 8615 11179
7983 8022 10017 11748
4939 8861 10444 11661
2278 3733 6265 10009
4494 7974 10649
8909 11030 11696
3131 9964 10480
при этом этап перестановки, содержит замену
бита b0 битом y4,
бита b1 битом y0,
бита b2 битом y6,
бита b3 битом y1,
бита b4 битом y3,
бита b5 битом y7,
бита b6 битом y5, и
бита b7 битом y2,
причем восемь знаковых битов, хранящихся в восьми модулях хранения, каждый из которых имеет емкость хранения 16200/8 битов и считываемых из соответствующих модулей хранения по одному биту, каждых из которых назначают для одного символа, причем (#i+1)-ый бит, отсчитанный от верхнего бита из указанных восьми знаковых битов, выражен в качестве бита b#i, a (#i+1)-ый бит, отсчитанный от верхнего бита из восьми символьных битов одного символа, выражен в качестве бита y#i.
(7) Устройство обработки данных, содержащее:
модуль обратной перестановки, выполненный с возможностью замены символьных битов символа, соответствующего одной из 256 точек сигнала, определенных в 256QAM, знаковыми битами кода LDPC, имеющего длину кода 16200 битов и скорость кода равную 4/15; и
модуль декодирования, выполненный с возможностью декодирования кода LDPC на основе матрицы проверки четности для кодов LDPC после перестановки кода LDPC модулем обратной перестановки,
модуль обратной перестановки, выполненный с возможностью замены
бита y4 битом b0,
бита y0 битом b1,
бита y6 битом b2,
бита y1 битом b3,
бита y3 битом b4,
бита y7 битом b5,
бита y5 битом b6, и
бита y2 битом b7,
причем восемь знаковых битов, хранящихся в восьми модулях хранения, каждый из которых имеет емкость хранения 16200/8 битов и считываемых из соответствующих модулей хранения по одному биту, каждых из которых назначают для одного символа, при этом (#i+1)-ый бит, отсчитанный от верхнего бита из указанных восьми знаковых битов, выражен в качестве бита b#i, и (#i+1)-ый бит, отсчитанный от верхнего бита из восьми символьных битов одного символа, выражен в качестве бита y#i.
при этом код LDPC содержит информационные биты и биты четности, а
матрица проверки четности содержит информационную область матрицы, соответствующую информационным битам, и область матрицы четности, соответствующую битам четности,
информационная область матрицы представлена таблицей исходного значения матрицы проверки,
причем таблица исходного значения матрицы проверки представляет собой таблицу, представляющую положения элементов "1" информационной области матрицы через интервалы 360 столбцов, и содержит
1953 2331 2545 2623 4653 5012 5700 6458 6875 7605 7694 7881 8416 8758 9181 9555 9578 9932 10068 11479 11699
514 784 2059 2129 2386 2454 3396 5184 6624 6825 7533 7861 9116 9473 9601 10432 11011 11159 11378 11528 11598
483 1303 1735 2291 3302 3648 4222 4522 5511 6626 6804 7404 7752 7982 8108 8930 9151 9793 9876 10786 11879
1956 7572 9020 9971
13 1578 7445 8373
6805 6857 8615 11179
7983 8022 10017 11748
4939 8861 10444 11661
2278 3733 6265 10009
4494 7974 10649
8909 11030 11696
3131 9964 10480.
(8) Способ обработки данных, включающий в себя:
этап обратной перестановки, на котором осуществляют замену символьных битов символа, соответствующего одной из 256 точек сигнала, определенных по 256QAM, знаковыми битами кода LDPC, имеющего длину кода 16200 битов и скорость кода равную 4/15; и
этап декодирования, состоящий в декодировании кода LDPC на основе матрицы проверки четности для кодов LDPC после перестановки кода LDPC на этапе обратной перестановки,
этап обратной перестановки, включающий в себя замену
бита y4 битом b0,
бита y0 битом b1,
бита y6 битом b2,
бита y1 битом b3,
бита y3 битом b4,
бита y7 битом b5,
бита y5 битом b6, и
бита y2 битом b7,
при этом восемь знаковых битов, хранящихся в восьми модулях хранения, каждый из которых имеет емкость хранения 16200/8 битов и считываемых из соответствующих модулей хранения по одному биту, каждых из которых назначают для одного символа, причем (#i+1)-ый бит, отсчитанный от верхнего бита из указанных восьми знаковых битов, выражен в качестве бита b#i, a (#i+1)-ый бит, отсчитанный от верхнего бита из восьми символьных битов одного символа, выражен в качестве бита y#i.
при этом код LDPC содержит информационные биты и биты четности, а
матрица проверки четности содержит информационную область матрицы, соответствующую информационным битам, и область матрицы четности, соответствующую битам четности,
причем информационная область матрицы представлена таблицей исходного значения матрицы проверки, а
таблица исходного значения матрицы проверки представляет собой таблицу, представляющую положения элементов "1" информационной области матрицы через интервалы 360 столбцов, и содержит
1953 2331 2545 2623 4653 5012 5700 6458 6875 7605 7694 7881 8416 8758 9181 9555 9578 9932 10068 11479 11699
514 784 2059 2129 2386 2454 3396 5184 6624 6825 7533 7861 9116 9473 9601 10432 11011 11159 11378 11528 11598
483 1303 1735 2291 3302 3648 4222 4522 5511 6626 6804 7404 7752 7982 8108 8930 9151 9793 9876 10786 11879
1956 7572 9020 9971
13 1578 7445 8373
6805 6857 8615 11179
7983 8022 10017 11748
4939 8861 10444 11661
2278 3733 6265 10009
4494 7974 10649
8909 11030 11696
3131 9964 10480.
(9) Устройство обработки данных, содержащее:
модуль кодирования, выполненный с возможностью кодирования LDPC для генерирования кода LDPC, имеющего длину кода 16200 битов и скорость кода равную 7/15, на основе матрицы проверки четности для кодов LDPC; и
модуль перестановки, выполненный с возможностью замены знаковых битов кода LDPC, кодированных модулем кодирования с символьными битами символа, соответствующего одной из 256 точек сигнала, определенных по 256QAM,
при этом код LDPC содержит информационные биты и биты четности, а
матрица проверки четности, содержит информационную область матрицы, соответствующую информационным битам, и область матрицы четности, соответствующую битам четности,
причем информационная область матрицы представлена таблицей исходного значения матрицы проверки, а
таблица исходного значения матрицы проверки представляет собой таблицу, представляющую положения элементов "1" информационной области матрицы через интервалы 360 столбцов, и содержит
3 137 314 327 983 1597 2028 3043 3217 4109 6020 6178 6535 6560 7146 7180 7408 7790 7893 8123 8313 8526 8616 8638
356 1839 1208 1197 1903 2712 3088 3537 4091 4301 4919 5068 6025 6195 6324 6378 6686 6829 7558 7745 8042 8382 8587 8602
18 187 1417 1115 1463 2300 2328 3502 3805 4677 4827 5551 5968 6394 6412 6753 7169 7524 7695 7976 8069 8118 8522 8582
714 2713 2726 2964 3055 3220 3334 3459 5557 5765 5841 6290 6419 6573 6856 7786 7937 8156 8286 8327 8384 8448 8539 8559
3452 7935 8092 8623
56 1955 3000 8242
1809 4094 7991 8489
2220 6455 7849 8548
1006 2576 3247 6976
2177 6048 7795 8295
1413 2595 7446 8594
2101 3714 7541 8531
10 5961 7484
3144 4636 5282
5708 5875 8390
3322 5223 7975
197 4653 8283
598 5393 8624
906 7249 7542
1223 2148 8195
976 2001 5005
модуль перестановки выполнен с возможностью замены
бита b0 битом y2,
бита b1 битом y6,
бита b2 битом y4,
бита b3 битом y1,
бита b4 битом y5,
бита b5 битом y0,
бита b6 битом y7, и
бита b7 битом y3,
при этом восемь знаковых битов, хранящие в восьми модулях хранения, каждый из которых имеет емкость хранения 16200/8 битов и считываемых из соответствующих модулей хранения по одному биту, каждых из которых назначают для одного символа, причем (#i+1)-ый бит, отсчитанный от самого верхнего бита из указанных восьми знаковых битов, выражен в качестве бита b#i, a (#i+1)-ый бит, отсчитанный от верхнего бита из восьми символьных битов одного символа, выражен в качестве бита y#i.
(10) Способ обработки данных содержит:
этап кодирования, на котором осуществляют кодирование LDPC для генерирования кода LDPC, имеющего длину кода 16200 битов и скорость кода равную 7/15, на основе матрицы проверки четности для кодов LDPC; и
этап перестановки, на котором осуществляют замену знаковых битов кода LDPC, кодированного на этапе кодирования, символьными битами символа, соответствующего одной из 256 точек сигнала, определенных в 256QAM,
при этом код LDPC, кодированный на этапе кодирования содержит информационные биты и биты четности, а
матрица проверки четности содержит информационную область матрицы, соответствующую информационным битам, и область матрицы четности, соответствующую битам четности,
при этом информационная область матрицы представлена таблицей исходного значения матрицы проверки, а
таблица исходного значения матрицы проверки представляет собой таблицу, представляющую положение элементов "1" информационной области матрицы через интервалы 360 столбцов, и содержит
3 137 314 327 983 1597 2028 3043 3217 4109 6020 6178 6535 6560 7146 7180 7408 7790 7893 8123 8313 8526 8616 8638
356 1839 1208 1197 1903 2712 3088 3537 4091 4301 4919 5068 6025 6195 6324 6378 6686 6829 7558 7745 8042 8382 8587 8602
18 187 1417 1115 1463 2300 2328 3502 3805 4677 4827 5551 5968 6394 6412 6753 7169 7524 7695 7976 8069 8118 8522 8582
714 2713 2726 2964 3055 3220 3334 3459 5557 5765 5841 6290 6419 6573 6856 7786 7937 8156 8286 8327 8384 8448 8539 8559
3452 7935 8092 8623
56 1955 3000 8242
1809 4094 7991 8489
2220 6455 7849 8548
1006 2576 3247 6976
2177 6048 7795 8295
1413 2595 7446 8594
2101 3714 7541 8531
10 5961 7484
3144 4636 5282
5708 5875 8390
3322 5223 7975
197 4653 8283
598 5393 8624
906 7249 7542
1223 2148 8195
976 2001 5005
этап перестановки содержит замену
бита b0 битом y2,
бита b1 битом y6,
бита b2 битом y4,
бита b3 битом y1,
бита b4 битом y5,
бита b5 битом y0,
бита b6 битом y7, и
бита b7 битом y3,
при этом восемь знаковых битов, хранящихся в восьми модулях хранения, каждый из которых имеет емкость хранения 16200/8 битов и считываемые из соответствующих модулей хранения по одному биту, каждых из которых назначают для одного символа, причем (#i+1)-ый бит, отсчитанный от самого верхнего бита из указанных восьми знаковых битов, выражен в качестве бита b#i, a (#i+1)-ый бит, отсчитанный от самого верхнего бита из восьми символьных битов одного символа, выражен в качестве бита y#i.
(11) Устройство обработки данных, содержащее:
модуль обратной перестановки, выполненный с возможностью замены символьных битов символа, соответствующего одной из 256 точек сигнала, определенных по 256QAM, знаковыми битами кода LDPC, имеющего длину кода 16200 битов и скорость кода равную 8/15; и
модуль декодирования, выполненный с возможностью декодирования кода LDPC на основе матрицы проверки четности для кодов LDPC после перестановки кода LDPC модулем обратной перестановки,
модуль обратной перестановки, выполненный с возможностью замены
бита y2 битом b0,
бита y6 битом b1,
бита y4 битом b2,
бита y1 битом b3,
бита y5 битом b4,
бита y0 битом b5,
бита y7 битом b6, и
бита y3 битом b7,
при этом восемь знаковых битов, сохраненных в восьми модулях хранения, каждый из которых имеет емкость хранения 16200/8 битов и считываемых из соответствующих модулей хранения по одному биту, каждых из которых назначают для одного символа, причем (#i+1)-ый бит, отсчитанный от самого верхнего бита из указанных восьми знаковых битов, выражен в качестве бита b#i, a (#i+1)-ый бит, отсчитанный от самого верхнего бита из восьми символьных битов одного символа, выражен в качестве бита y#i.
при этом код LDPC содержит информационные биты и биты четности, а
матрица проверки четности содержит информационную область матрицы, соответствующую информационным битам, и область матрицы четности, соответствующую битам четности,
причем информационная область матрицы представлена таблицей исходного значения матрицы проверки, а
таблица исходного значения матрицы проверки представляет собой таблицу, представляющую положения элементов "1" информационной области матрицы через интервалы 360 столбцов, и содержит
3 137 314 327 983 1597 2028 3043 3217 4109 6020 6178 6535 6560 7146 7180 7408 7790 7893 8123 8313 8526 8616 8638
356 1839 1208 1197 1903 2712 3088 3537 4091 4301 4919 5068 6025 6195 6324 6378 6686 6829 7558 7745 8042 8382 8587 8602
18 187 1417 1115 1463 2300 2328 3502 3805 4677 4827 5551 5968 6394 6412 6753 7169 7524 7695 7976 8069 8118 8522 8582
714 2713 2726 2964 3055 3220 3334 3459 5557 5765 5841 6290 6419 6573 6856 7786 7937 8156 8286 8327 8384 8448 8539 8559
3452 7935 8092 8623
56 1955 3000 8242
1809 4094 7991 8489
2220 6455 7849 8548
1006 2576 3247 6976
2177 6048 7795 8295
1413 2595 7446 8594
2101 3714 7541 8531
10 5961 7484
3144 4636 5282
5708 5875 8390
3322 5223 7975
197 4653 8283
598 5393 8624
906 7249 7542
1223 2148 8195
976 2001 5005.
(12) Способ обработки данных, содержащий:
этап обратной перестановки, на котором осуществляют замену символьных битов символа, соответствующего одной из 256 точек сигнала, определенных по 256QAM, знаковыми битами кода LDPC, имеющего длину кода 16200 битов и скорость кода равную 7/15; и
этап декодирования, на котором осуществляют декодирование кода LDPC на основе матрицы проверки четности для кодов LDPC после перестановки кода LDPC на этапе обратной перестановки,
этап обратной перестановки, на котором осуществляют замену
бита y2 битом b0,
бита y6 битом b1,
бита y4 битом b2,
бита y1 битом b3,
бита y5 битом b4,
бита y0 битом b5,
бита y7 битом b6, и
бита y3 битом b7,
при этом восемь знаковых битов, хранящихся в восьми модулях хранения, каждый из которых имеет емкость хранения 16200/8 битов и считываемых из соответствующих модулей хранения по одному биту, каждых из которых назначают для одного символа, причем (#i+1)-ый бит, отсчитанный от верхнего бита из указанных восьми знаковых битов, выражен в качестве бита b#i, a (#i+1)-ый бит, отсчитанный от верхнего бита из восьми символьных битов одного символа, выражен в качестве бита y#i.
причем код LDPC содержит информационные биты и биты четности, а
матрица проверки четности содержит информационную область матрицы, соответствующую информационным битам, и область матрицы четности, соответствующую битам четности,
при этом информационная область матрицы представлена таблицей исходного значения матрицы проверки, а
таблица исходного значения матрицы проверки представляет собой таблицу, представляющую положения элементов "1" информационной области матрицы через интервалы 360 столбцов, и содержит
3 137 314 327 983 1597 2028 3043 3217 4109 6020 6178 6535 6560 7146 7180 7408 7790 7893 8123 8313 8526 8616 8638
356 1839 1208 1197 1903 2712 3088 3537 4091 4301 4919 5068 6025 6195 6324 6378 6686 6829 7558 7745 8042 8382 8587 8602
18 187 1417 1115 1463 2300 2328 3502 3805 4677 4827 5551 5968 6394 6412 6753 7169 7524 7695 7976 8069 8118 8522 8582
714 2713 2726 2964 3055 3220 3334 3459 5557 5765 5841 6290 6419 6573 6856 7786 7937 8156 8286 8327 8384 8448 8539 8559
3452 7935 8092 8623
56 1955 3000 8242
1809 4094 7991 8489
2220 6455 7849 8548
1006 2576 3247 6976
2177 6048 7795 8295
1413 2595 7446 8594
2101 3714 7541 8531
10 5961 7484
3144 4636 5282
5708 5875 8390
3322 5223 7975
197 4653 8283
598 5393 8624
906 7249 7542
1223 2148 8195
976 2001 5005.
Список номеров ссылочных позиций
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 Модуль записи
название | год | авторы | номер документа |
---|---|---|---|
УСТРОЙСТВО ОБРАБОТКИ ДАННЫХ И СПОСОБ ОБРАБОТКИ ДАННЫХ | 2012 |
|
RU2595581C2 |
УСТРОЙСТВО ОБРАБОТКИ ДАННЫХ И СПОСОБ ОБРАБОТКИ ДАННЫХ | 2014 |
|
RU2656726C2 |
УСТРОЙСТВО ОБРАБОТКИ ДАННЫХ И СПОСОБ ОБРАБОТКИ ДАННЫХ | 2014 |
|
RU2656725C2 |
УСТРОЙСТВО ОБРАБОТКИ ДАННЫХ И СПОСОБ ОБРАБОТКИ ДАННЫХ | 2011 |
|
RU2574828C2 |
УСТРОЙСТВО ОБРАБОТКИ ДАННЫХ И СПОСОБ ОБРАБОТКИ ДАННЫХ | 2014 |
|
RU2656830C2 |
УСТРОЙСТВО ОБРАБОТКИ ДАННЫХ И СПОСОБ ОБРАБОТКИ ДАННЫХ | 2012 |
|
RU2595579C2 |
УСТРОЙСТВО ОБРАБОТКИ ДАННЫХ И СПОСОБ ОБРАБОТКИ ДАННЫХ | 2014 |
|
RU2654132C2 |
УСТРОЙСТВО ОБРАБОТКИ ДАННЫХ И СПОСОБ ОБРАБОТКИ ДАННЫХ | 2011 |
|
RU2574822C2 |
УСТРОЙСТВО ОБРАБОТКИ ДАННЫХ И СПОСОБ ОБРАБОТКИ ДАННЫХ | 2014 |
|
RU2656723C2 |
УСТРОЙСТВО ОБРАБОТКИ ДАННЫХ И СПОСОБ ОБРАБОТКИ ДАННЫХ | 2014 |
|
RU2658791C2 |
Изобретение относится к устройствам и способам обработки данных. Технический результат - повышение устойчивости к ошибкам данных. Для этого когда заданный код LDPC (проверки четности с низкой плотностью), имеющий длину кода 16200 битов и скорость кода равную 8/15, отображают на 256 точек сигналов, при этом (#i+1)-ый бит, отсчитанный от самого верхнего бита из 8×1 знаковых битов, a (#i+1)-ый бит, отсчитанный от самого верхнего бита из 8×1 символьных битов одного символа выражены в качестве бита b#i и бита y#i соответственно, причем демультиплексор выполнен с возможностью перестановки для назначения бита b0 в качестве бита y2, бита b1 в качестве бита y6, бита b2 в качестве бита y1, бита b3 в качестве бита y0, бита y4 в качестве бита y7, бита b5 в качестве бита y5, бита b6 в качестве бита y3 и бита b7 в качестве бита y4. Настоящая технология может применяться, например, в системах передачи, которые передают коды LDPC. 4 н.п. ф-лы, 75 ил.
1. Устройство обработки данных, содержащее:
модуль кодирования, выполненный с возможностью кодирования LDPC для генерирования кода LDPC, имеющего длину кода 16200 битов и скорость кода равную 8/15, на основе матрицы проверки четности для кодов LDPC; и
модуль перестановки, выполненный с возможностью осуществления замены знаковых битов в коде LDPC, кодированном с помощью модуля кодирования, символьными битами символа, соответствующего одной из 256 точек сигнала, определенных в 256QAM, при этом
код LDPC, кодированный модулем кодирования, содержит информационные биты и биты четности, а
матрица проверки четности содержит информационную область матрицы, соответствующую информационным битам, и область матрицы четности, соответствующую битам четности, причем
информационная область матрицы представлена таблицей исходного значения матрицы проверки, а
таблица исходного значения матрицы проверки является таблицей, представляющей положения элементов "1" информационной области матрицы через интервалы 360 столбцов, и содержит
32 384 430 591 1296 1976 1999 2137 2175 3638 4214 4304 4486 4662 4999 5174 5700 6969 7115 7138 7189
1788 1881 1910 2724 4504 4928 4973 5616 5686 5718 5846 6523 6893 6994 7074 7100 7277 7399 7476 7480 7537
2791 2824 2927 4196 4298 4800 4948 5361 5401 5688 5818 5862 5969 6029 6244 6645 6962 7203 7302 7454 7534
574 1461 1826 2056 2069 2387 2794 3349 3366 4951 5826 5834 5903 6640 6762 6786 6859 7043 7418 7431 7554
14 178 675 823 890 930 1209 1311 2898 4339 4600 5203 6485 6549 6970 7208 7218 7298 7454 7457 7462
4075 4188 7313 7553
5145 6018 7148 7507
3198 4858 6983 7033
3170 5126 5625 6901
2839 6093 7071 7450
11 3735 5413
2497 5400 7238
2067 5172 5714
1889 7173 7329
1795 2773 3499
2695 2944 6735
3221 4625 5897
1690 6122 6816
5013 6839 7358
1601 6849 7415
2180 7389 7543
2121 6838 7054
1948 3109 5046
272 1015 7464,
при этом модуль перестановки выполнен с возможностью замены
бита b0 битом y2,
бита b1 битом y6,
бита b2 битом y1,
бита b3 битом y0,
бита b4 битом y7,
бита b5 битом y5,
бита b6 битом y3 и
бита b7 битом y4,
при этом восемь знаковых битов хранятся в восьми модулях хранения, каждый из которых имеет емкость хранения 16200/8 битов, и считываются из соответствующих модулей хранения по одному биту, каждый из которых назначают для одного символа, причем (#i+1)-ый бит, отсчитанный от самого верхнего бита из указанных восьми знаковых битов, выражен в качестве бита b#i, a (#i+1)-ый бит, отсчитанный от самого верхнего бита из восьми символьных битов одного символа, выражен в качестве бита y#i.
2. Способ обработки данных, содержащий:
этап кодирования, на котором осуществляют кодирование LDPC для генерирования кода LDPC, имеющего длину кода 16200 битов и скорость кода равную 8/15, на основе матрицы проверки четности для кодов LDPC; и
этап перестановки, на котором осуществляют замену знаковых битов кода LDPC, кодированного на этапе кодирования, символьными битами символа, соответствующего одной из 256 точек сигнала, определенных в 256QAM, при этом
код LDPC, кодированный на этапе кодирования, содержит информационные биты и биты четности, а
матрица проверки четности содержит информационную область матрицы, соответствующую информационным битам, и область матрицы четности, соответствующую битам четности, причем
информационная область матрицы представлена таблицей исходного значения матрицы проверки, а
таблица исходного значения матрицы проверки является таблицей, представляющей положения элементов "1" информационной области матрицы через интервалы 360 столбцов, и содержит
32 384 430 591 1296 1976 1999 2137 2175 3638 4214 4304 4486 4662 4999 5174 5700 6969 7115 7138 7189
1788 1881 1910 2724 4504 4928 4973 5616 5686 5718 5846 6523 6893 6994 7074 7100 7277 7399 7476 7480 7537
2791 2824 2927 4196 4298 4800 4948 5361 5401 5688 5818 5862 5969 6029 6244 6645 6962 7203 7302 7454 7534
574 1461 1826 2056 2069 2387 2794 3349 3366 4951 5826 5834 5903 6640 6762 6786 6859 7043 7418 7431 7554
14 178 675 823 890 930 1209 1311 2898 4339 4600 5203 6485 6549 6970 7208 7218 7298 7454 7457 7462
4075 4188 7313 7553
5145 6018 7148 7507
3198 4858 6983 7033
3170 5126 5625 6901
2839 6093 7071 7450
11 3735 5413
2497 5400 7238
2067 5172 5714
1889 7173 7329
1795 2773 3499
2695 2944 6735
3221 4625 5897
1690 6122 6816
5013 6839 7358
1601 6849 7415
2180 7389 7543
2121 6838 7054
1948 3109 5046
272 1015 7464,
при этом на этапе перестановки осуществляют замену
бита b0 битом y2,
бита b1 битом y6,
бита b2 битом y1,
бита b3 битом y0,
бита b4 битом y7,
бита b5 битом y5,
бита b6 битом y3 и
бита b7 битом y4,
при этом восемь знаковых битов хранят в восьми модулях хранения, каждый из которых имеет емкость хранения 16200/8 битов, и считывают из соответствующих модулей хранения по одному биту, каждый из которых назначают для одного символа, причем (#i+1)-ый бит, отсчитанный от самого верхнего бита из указанных восьми знаковых битов, выражен в качестве бита b#i, a (#i+1)-ый бит, отсчитанный от самого верхнего бита из восьми символьных битов одного символа, выражен в качестве бита y#i.
3. Устройство обработки данных, содержащее:
модуль обратной перестановки, выполненный с возможностью замены символьных битов символа, соответствующего одной из 256 точек сигнала, определенных в 256QAM, знаковыми битами кода LDPC, имеющего длину кода 16200 битов и скорость кода равную 8/15; и
модуль декодирования, выполненный с возможностью декодирования кода LDPC на основе матрицы проверки четности для кодов LDPC после выполнения, модулем обратной перестановки, перестановки в коде LDPC,
модуль обратной перестановки выполнен с возможностью замены
бита y2 битом b0,
бита y6 битом b1,
бита y1 битом b2,
бита y0 битом b3,
бита y7 битом b4,
бита y5 битом b5,
бита y3 битом b6 и
бита y4 битом b7,
при этом восемь знаковых битов хранятся в восьми модулях хранения, каждый из которых имеет емкость хранения 16200/8 битов, и считываются из соответствующих модулей хранения по одному биту, каждый из которых назначают для одного символа, причем (#i+1)-ый бит, отсчитанный от самого верхнего бита из указанных восьми знаковых битов, выражен в качестве бита b#i, a (#i+1)-ый бит, отсчитанный от самого верхнего бита из восьми символьных битов одного символа, выражен в качестве бита y#i,
при этом код LDPC содержит информационные биты и биты четности, а
матрица проверки четности содержит информационную область матрицы, соответствующую информационным битам, и область матрицы четности, соответствующую битам четности, причем
информационная область матрицы представлена таблицей исходного значения матрицы проверки, а
таблица исходного значения матрицы проверки является таблицей, представляющей положения элементов "1" информационной области матрицы через интервалы 360 столбцов, и содержит
32 384 430 591 1296 1976 1999 2137 2175 3638 4214 4304 4486 4662 4999 5174 5700 6969 7115 7138 7189
1788 1881 1910 2724 4504 4928 4973 5616 5686 5718 5846 6523 6893 6994 7074 7100 7277 7399 7476 7480 7537
2791 2824 2927 4196 4298 4800 4948 5361 5401 5688 5818 5862 5969 6029 6244 6645 6962 7203 7302 7454 7534
574 1461 1826 2056 2069 2387 2794 3349 3366 4951 5826 5834 5903 6640 6762 6786 6859 7043 7418 7431 7554
14 178 675 823 890 930 1209 1311 2898 4339 4600 5203 6485 6549 6970 7208 7218 7298 7454 7457 7462
4075 4188 7313 7553
5145 6018 7148 7507
3198 4858 6983 7033
3170 5126 5625 6901
2839 6093 7071 7450
11 3735 5413
2497 5400 7238
2067 5172 5714
1889 7173 7329
1795 2773 3499
2695 2944 6735
3221 4625 5897
1690 6122 6816
5013 6839 7358
1601 6849 7415
2180 7389 7543
2121 6838 7054
1948 3109 5046
272 1015 7464.
4. Способ обработки данных, содержащий:
этап обратной перестановки, на котором осуществляют замену символьных битов символа, соответствующего одной из 256 точек сигнала, определенных в 256QAM, знаковыми битами кода LDPC, имеющего длину кода 16200 битов и скорость кода равную 8/15; и
этап декодирования, на котором осуществляют декодирование кода LDPC на основе матрицы проверки четности для кодов LDPC после осуществления, на этапе обратной перестановки, перестановки в коде LDPC,
при этом этап обратной перестановки содержит замену
бита y2 битом b0,
бит y6 битом b1,
бита y1 битом b2,
бита y0 битом b3,
бита y7 битом b4,
бита y5 битом b5,
бита y3 битом b6 и
бита y4 битом b7,
при этом восемь знаковых битов хранят в восьми модулях хранения, каждый из которых имеет емкость хранения 16200/8 битов, и считывают из соответствующих модулей хранения по одному биту, каждый из которых назначают для одного символа, причем (#i+1)-ый бит, отсчитанный от самого верхнего бита из указанных восьми знаковых битов, выражен в качестве бита b#i, a (#i+1)-ый бит, отсчитанный от самого верхнего бита из восьми символьных битов одного символа, выражен в качестве бита y#i,
при этом код LDPC содержит информационные биты и биты четности, а
матрица проверки четности содержит информационную область матрицы, соответствующую информационным битам, и область матрицы четности, соответствующую битам четности, причем
информационная область матрицы представлена таблицей исходного значения матрицы проверки, а
таблица исходного значения матрицы проверки является таблицей, представляющей положения элементов "1" информационной области матрицы через интервалы 360 столбцов, и содержит
32 384 430 591 1296 1976 1999 2137 2175 3638 4214 4304 4486 4662 4999 5174 5700 6969 7115 7138 7189
1788 1881 1910 2724 4504 4928 4973 5616 5686 5718 5846 6523 6893 6994 7074 7100 7277 7399 7476 7480 7537
2791 2824 2927 4196 4298 4800 4948 5361 5401 5688 5818 5862 5969 6029 6244 6645 6962 7203 7302 7454 7534
574 1461 1826 2056 2069 2387 2794 3349 3366 4951 5826 5834 5903 6640 6762 6786 6859 7043 7418 7431 7554
14 178 675 823 890 930 1209 1311 2898 4339 4600 5203 6485 6549 6970 7208 7218 7298 7454 7457 7462
4075 4188 7313 7553
5145 6018 7148 7507
3198 4858 6983 7033
3170 5126 5625 6901
2839 6093 7071 7450
11 3735 5413
2497 5400 7238
2067 5172 5714
1889 7173 7329
1795 2773 3499
2695 2944 6735
3221 4625 5897
1690 6122 6816
5013 6839 7358
1601 6849 7415
2180 7389 7543
2121 6838 7054
1948 3109 5046
272 1015 7464.
КОДИРОВАНИЕ И ПЕРЕОТОБРАЖЕНИЕ СООБЩЕНИЯ | 2007 |
|
RU2407146C2 |
Авторы
Даты
2016-08-27—Публикация
2012-05-17—Подача