Область техники, к которой относится изобретение
Настоящее изобретение касается устройства обработки данных и способа обработки данных и, например, в частности касается устройства обработки данных и способа обработки данных, которые способны обеспечить хорошее качестве связи при передаче данных с использованием LDPC-кода.
Уровень техники
LDPC-код (Код с малой плотностью проверок на четность) обладает высокой способностью исправления ошибок и в последние годы широко применяется в системах передачи, в том числе в системах цифрового спутникового вещания, таких как используемая в Европе система DVB-S.2 (цифровое телевидение) (смотри, например, документ 1, который не относится к патентной литературе). Кроме того, исследована возможность применения LDPC-кода в наземном цифровом вещании следующего поколения, таком как DVB-T.2.
В последних исследованиях показано, что LDPC-код показывает характеристики, близкие к границе Шеннона при увеличении длины кода аналогично турбо-коду. Так как для LDPC-кода кратчайшее расстояние пропорционально длине кода, то этот код отличается превосходной вероятностной характеристикой исправления блоков ошибок и редко имеет место так называемый эффект замедления падения вероятности ошибки, который наблюдается при декодировании турбо-кода.
Список цитируемой литературы
Литература, не относящаяся к патентам
Документ 1, который не относится к патентной литературе: DVB-S.2: ETSI EN 302 307 V1.2.1 (2009-08)
Раскрытие изобретения
Техническая задача
В стандартах DVB, таких как DVB-S.2, DVB-T.2 и DVB-C.2, в которых используют LDPC-код, LDPC-код является символом (преобразован в символ) ортогональной модуляции (цифровой модуляции), такой как QPSK (квадратурная фазовая манипуляция) и символ преобразуют в сигнальную точку ортогональной модуляции и передают.
При передаче данных с использованием LDPC-кода, такой как описанный выше стандарт DVB-S.2, обязательно обеспечивают хорошее качество связи.
С учетом указанных обстоятельств, в соответствии с вариантом осуществления настоящего изобретения, желательно обеспечить хорошее качество связи при передаче данных с использованием LDPC-кода.
Решение задачи
Первое устройство обработки данных или способ обработки данных по настоящему изобретению представляет собой устройство обработки данных или способ обработки данных, которые включают в себя следующее: блок/этап кодирования для осуществления LDPC кодирования на основе проверочной матрицы LDPC-кода, для которого длина кода равна 16200 битам и скорость кодирования равна 7/15; и блок/этап перестановки для сопоставления бита LDPC-кода, для которого длина кода равна 16200 битам и скорость кодирования равна 7/15, с битом символа, соответствующим любой из 8 сигнальных точек, определенных 8-позиционной PSK. Когда 3 бита кода, которые сохранены в трех блоках памятей емкостью 16200/3 битов и которые побитно считаны из блоков памятей, сопоставляют одному символу, (i+1)-й бит от самого старшего бита из 3 битов кода обозначают через бит bi, (i+1)-й бит от самого старшего бита из 3 битов символа одного символа обозначают через бит yi, и в блоке/этапе перестановки сопоставляют бит b0 и бит y1, бит b1 и бит y0 и бит b2 и бит y2. 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 1197 1208 1839 1903 2712 3088 3537 4091 4301 4919 5068 6025 6195 6324 6378 6686 6829 7558 7745 8042 8382 8587 8602
18 187 1115 1417 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.
В первом устройстве обработки данных и способе обработки данных по настоящему изобретению LDPC кодирование осуществляют на основе проверочной матрицы LDPC-кода, для которого длина кода равна 16200 битам и скорость кодирования равна 7/15 и бит LDPC-кода, для которого длина кода равна 16200 битам и скорость кодирования равна 7/15, сопоставляют с битом символа, соответствующим любой из 8 сигнальных точек, определенных 8-позиционной PSK. При перестановке, когда 3 бита кода, которые сохранены в трех блоках памятей емкостью 16200/3 битов и которые побитно считаны из блоков памятей, сопоставляют одному символу, (i+1)-й бит от самого старшего бита из 3 битов кода обозначают через бит bi, (i+1)-й бит от самого старшего бита из 3 битов символа одного символа обозначают через бит yi, и сопоставляют бит b0 и бит y1, бит b1 и бит y0 и бит b2 и бит y2. 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 1197 1208 1839 1903 2712 3088 3537 4091 4301 4919 5068 6025 6195 6324 6378 6686 6829 7558 7745 8042 8382 8587 8602
18 187 1115 1417 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.
Второе устройство обработки данных или способ обработки данных по настоящему изобретению представляет собой устройство обработки данных или способ обработки данных, которые включают в себя следующее: блок/этап кодирования для осуществления LDPC кодирования на основе проверочной матрицы LDPC-кода, для которого длина кода равна 16200 битам и скорость кодирования равна 7/15; и блок/этап перестановки для сопоставления бита LDPC-кода, для которого длина кода равна 16200 битам и скорость кодирования равна 7/15, с битом символа, соответствующим любой из 16 сигнальных точек, определенных 16-позиционной APSK. Когда 4 бита кода, которые сохранены в четырех блоках памятей емкостью 16200/4 битов и которые побитно считаны из блоков памятей, сопоставляют одному символу, (i+1)-й бит от самого старшего бита из 4 битов кода обозначают через бит bi, (i+1)-й бит от самого старшего бита из 4 битов символа одного символа обозначают через бит yi, и в блоке/этапе перестановки сопоставляют бит b0 и бит y2, бит b1 и бит y1, бит b2 и бит y0 и бит b3 и бит y3. 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 1197 1208 1839 1903 2712 3088 3537 4091 4301 4919 5068 6025 6195 6324 6378 6686 6829 7558 7745 8042 8382 8587 8602
18 187 1115 1417 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.
Во втором устройстве обработки данных и способе обработки данных по настоящему изобретению LDPC кодирование осуществляют на основе проверочной матрицы LDPC-кода, для которого длина кода равна 16200 битам и скорость кодирования равна 7/15 и бит LDPC-кода, для которого длина кода равна 16200 битам и скорость кодирования равна 7/15, сопоставляют с битом символа, соответствующим любой из 16 сигнальных точек, определенных 16-позиционной APSK. При перестановке, когда 4 бита кода, которые сохранены в четырех блоках памятей емкостью 16200/4 битов и которые побитно считаны из блоков памятей, сопоставляют одному символу, (i+1)-й бит от самого старшего бита из 4 битов кода обозначают через бит bi, (i+1)-й бит от самого старшего бита из 4 битов символа одного символа обозначают через бит yi, и сопоставляют бит b0 и бит y2, бит b1 и бит y1, бит b2 и бит y0 и бит b3 и бит y3. 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 1197 1208 1839 1903 2712 3088 3537 4091 4301 4919 5068 6025 6195 6324 6378 6686 6829 7558 7745 8042 8382 8587 8602
18 187 1115 1417 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.
Третье устройство обработки данных или способ обработки данных по настоящему изобретению представляет собой устройство обработки данных или способ обработки данных, которые включают в себя следующее: блок/этап перестановки для сопоставления бита LDPC-кода, для которого длина кода равна 16200 битам и скорость кодирования равна 7/15, с битом символа, соответствующим любой из 16 сигнальных точек, определенных 16-позиционной APSK. Когда 4 бита кода, которые сохранены в четырех блоках памятей емкостью 16200/4 битов и которые побитно считаны из блоков памятей, сопоставляют одному символу, (i+1)-й бит от самого старшего бита из 4 битов кода обозначают через бит bi, (i+1)-й бит от самого старшего бита из 4 битов символа одного символа обозначают через бит yi, и в блоке/этапе перестановки сопоставляют бит b0 и бит y1, бит b1 и бит y2, бит b2 и бит y0 и бит b3 и бит y3.
В третьем устройстве обработки данных и способе обработки данных по настоящему изобретению бит LDPC-кода, для которого длина кода равна 16200 битам и скорость кодирования равна 7/15, сопоставляют с битом символа, соответствующим любой из 16 сигнальных точек, определенных 16-позиционной APSK. При перестановке, когда 4 бита кода, которые сохранены в четырех блоках памятей емкостью 16200/4 битов и которые побитно считаны из блоков памятей, сопоставляют одному символу, (i+1)-й бит от самого старшего бита из 4 битов кода обозначают через бит bi, (i+1)-й бит от самого старшего бита из 4 битов символа одного символа обозначают через бит yi, и сопоставляют бит b0 и бит y1, бит b1 и бит y2, бит b2 и бит y0 и бит b3 и бит y3.
Четвертое устройство обработки данных или способ обработки данных по настоящему изобретению представляет собой устройство обработки данных или способ обработки данных, которые включают в себя следующее: блок/этап перестановки для сопоставления бита LDPC-кода, для которого длина кода равна 16200 битам и скорость кодирования равна 7/15, с битом символа, соответствующим любой из 16 сигнальных точек, определенных 16-позиционной APSK. Когда 4 бита кода, которые сохранены в четырех блоках памятей емкостью 16200/4 битов и которые побитно считаны из блоков памятей, сопоставляют одному символу, (i+1)-й бит от самого старшего бита из 4 битов кода обозначают через бит bi, (i+1)-й бит от самого старшего бита из 4 битов символа одного символа обозначают через бит yi, и в блоке/этапе перестановки сопоставляют бит b0 и бит y1, бит b1 и бит y3, бит b2 и бит y0 и бит b3 и бит y2.
В четвертом устройстве обработки данных и способе обработки данных по настоящему изобретению бит LDPC-кода, для которого длина кода равна 16200 битам и скорость кодирования равна 7/15, сопоставляют с битом символа, соответствующим любой из 16 сигнальных точек, определенных 16-позиционной APSK. При перестановке, когда 4 бита кода, которые сохранены в четырех блоках памятей емкостью 16200/4 битов и которые побитно считаны из блоков памятей, сопоставляют одному символу, (i+1)-й бит от самого старшего бита из 4 битов кода обозначают через бит bi, (i+1)-й бит от самого старшего бита из 4 битов символа одного символа обозначают через бит yi, и сопоставляют бит b0 и бит y1, бит b1 и бит y2, бит b2 и бит y0 и бит b3 и бит y2.
Пятое устройство обработки данных или способ обработки данных по настоящему изобретению представляет собой устройство обработки данных или способ обработки данных, которые включают в себя следующее: блок/этап перестановки для сопоставления бита LDPC-кода, для которого длина кода равна 16200 битам и скорость кодирования равна 7/15, с битом символа, соответствующим любой из 16 сигнальных точек, определенных 16-позиционной APSK. Когда 4 бита кода, которые сохранены в четырех блоках памятей емкостью 16200/4 битов и которые побитно считаны из блоков памятей, сопоставляют одному символу, (i+1)-й бит от самого старшего бита из 4 битов кода обозначают через бит bi, (i+1)-й бит от самого старшего бита из 4 битов символа одного символа обозначают через бит yi, и в блоке/этапе перестановки сопоставляют бит b0 и бит y2, бит b1 и бит y1, бит b2 и бит y0 и бит b3 и бит y3.
В пятом устройстве обработки данных и способе обработки данных по настоящему изобретению бит LDPC-кода, для которого длина кода равна 16200 битам и скорость кодирования равна 7/15, сопоставляют с битом символа, соответствующим любой из 16 сигнальных точек, определенных 16-позиционной APSK. При перестановке, когда 4 бита кода, которые сохранены в четырех блоках памятей емкостью 16200/4 битов и которые побитно считаны из блоков памятей, сопоставляют одному символу, (i+1)-й бит от самого старшего бита из 4 битов кода обозначают через бит bi, (i+1)-й бит от самого старшего бита из 4 битов символа одного символа обозначают через бит yi, и сопоставляют бит b0 и бит y2, бит b1 и бит y1, бит b2 и бит y0 и бит b3 и бит y3.
Шестое устройство обработки данных или способ обработки данных по настоящему изобретению представляет собой устройство обработки данных или способ обработки данных, которые включают в себя следующее: блок/этап перестановки для сопоставления бита LDPC-кода, для которого длина кода равна 16200 битам и скорость кодирования равна 7/15, с битом символа, соответствующим любой из 16 сигнальных точек, определенных 16-позиционной APSK. Когда 4 бита кода, которые сохранены в четырех блоках памятей емкостью 16200/4 битов и которые побитно считаны из блоков памятей, сопоставляют одному символу, (i+1)-й бит от самого старшего бита из 4 битов кода обозначают через бит bi, (i+1)-й бит от самого старшего бита из 4 битов символа одного символа обозначают через бит yi, и в блоке/этапе перестановки сопоставляют бит b0 и бит y3, бит b1 и бит y1, бит b2 и бит y0 и бит b3 и бит y2.
В шестом устройстве обработки данных и способе обработки данных по настоящему изобретению бит LDPC-кода, для которого длина кода равна 16200 битам и скорость кодирования равна 7/15, сопоставляют с битом символа, соответствующим любой из 16 сигнальных точек, определенных 16-позиционной APSK. При перестановке, когда 4 бита кода, которые сохранены в четырех блоках памятей емкостью 16200/4 битов и которые побитно считаны из блоков памятей, сопоставляют одному символу, (i+1)-й бит от самого старшего бита из 4 битов кода обозначают через бит bi, (i+1)-й бит от самого старшего бита из 4 битов символа одного символа обозначают через бит yi, и сопоставляют бит b0 и бит y3, бит b1 и бит y1, бит b2 и бит y0 и бит b3 и бит y2.
Седьмое устройство обработки данных или способ обработки данных по настоящему изобретению представляет собой устройство обработки данных или способ обработки данных, которые включают в себя следующее: блок/этап перестановки для сопоставления бита LDPC-кода, для которого длина кода равна 16200 битам и скорость кодирования равна 7/15, с битом символа, соответствующим любой из 16 сигнальных точек, определенных 16-позиционной APSK. Когда 4 бита кода, которые сохранены в четырех блоках памятей емкостью 16200/4 битов и которые побитно считаны из блоков памятей, сопоставляют одному символу, (i+1)-й бит от самого старшего бита из 4 битов кода обозначают через бит bi, (i+1)-й бит от самого старшего бита из 4 битов символа одного символа обозначают через бит yi, и в блоке/этапе перестановки сопоставляют бит b0 и бит y1, бит b1 и бит y2, бит b2 и бит y3 и бит b3 и бит y0.
В седьмом устройстве обработки данных и способе обработки данных по настоящему изобретению бит LDPC-кода, для которого длина кода равна 16200 битам и скорость кодирования равна 7/15, сопоставляют с битом символа, соответствующим любой из 16 сигнальных точек, определенных 16-позиционной APSK. При перестановке, когда 4 бита кода, которые сохранены в четырех блоках памятей емкостью 16200/4 битов и которые побитно считаны из блоков памятей, сопоставляют одному символу, (i+1)-й бит от самого старшего бита из 4 битов кода обозначают через бит bi, (i+1)-й бит от самого старшего бита из 4 битов символа одного символа обозначают через бит yi, и сопоставляют бит b0 и бит y1, бит b1 и бит y2, бит b2 и бит y3 и бит b3 и бит y0.
Восьмое устройство обработки данных или способ обработки данных по настоящему изобретению представляет собой устройство обработки данных или способ обработки данных, которые включают в себя следующее: блок/этап перестановки для сопоставления бита LDPC-кода, для которого длина кода равна 16200 битам и скорость кодирования равна 7/15, с битом символа, соответствующим любой из 16 сигнальных точек, определенных 16-позиционной APSK. Когда 4 бита кода, которые сохранены в четырех блоках памятей емкостью 16200/4 битов и которые побитно считаны из блоков памятей, сопоставляют одному символу, (i+1)-й бит от самого старшего бита из 4 битов кода обозначают через бит bi, (i+1)-й бит от самого старшего бита из 4 битов символа одного символа обозначают через бит yi, и в блоке/этапе перестановки сопоставляют бит b0 и бит y1, бит b1 и бит y3, бит b2 и бит y2 и бит b3 и бит y0.
В восьмом устройстве обработки данных и способе обработки данных по настоящему изобретению бит LDPC-кода, для которого длина кода равна 16200 битам и скорость кодирования равна 7/15, сопоставляют с битом символа, соответствующим любой из 16 сигнальных точек, определенных 16-позиционной APSK. При перестановке, когда 4 бита кода, которые сохранены в четырех блоках памятей емкостью 16200/4 битов и которые побитно считаны из блоков памятей, сопоставляют одному символу, (i+1)-й бит от самого старшего бита из 4 битов кода обозначают через бит bi, (i+1)-й бит от самого старшего бита из 4 битов символа одного символа обозначают через бит yi, и сопоставляют бит b0 и бит y1, бит b1 и бит y3, бит b2 и бит y2 и бит b3 и бит y0.
Девятое устройство обработки данных или способ обработки данных по настоящему изобретению представляет собой устройство обработки данных или способ обработки данных, которые включают в себя следующее: блок/этап перестановки для сопоставления бита LDPC-кода, для которого длина кода равна 16200 битам и скорость кодирования равна 7/15, с битом символа, соответствующим любой из 16 сигнальных точек, определенных 16-позиционной APSK. Когда 4 бита кода, которые сохранены в четырех блоках памятей емкостью 16200/4 битов и которые побитно считаны из блоков памятей, сопоставляют одному символу, (i+1)-й бит от самого старшего бита из 4 битов кода обозначают через бит bi, (i+1)-й бит от самого старшего бита из 4 битов символа одного символа обозначают через бит yi, и в блоке/этапе перестановки сопоставляют бит b0 и бит y2, бит b1 и бит y1, бит b2 и бит y3 и бит b3 и бит y0.
В девятом устройстве обработки данных и способе обработки данных по настоящему изобретению бит LDPC-кода, для которого длина кода равна 16200 битам и скорость кодирования равна 7/15, сопоставляют с битом символа, соответствующим любой из 16 сигнальных точек, определенных 16-позиционной APSK. При перестановке, когда 4 бита кода, которые сохранены в четырех блоках памятей емкостью 16200/4 битов и которые побитно считаны из блоков памятей, сопоставляют одному символу, (i+1)-й бит от самого старшего бита из 4 битов кода обозначают через бит bi, (i+1)-й бит от самого старшего бита из 4 битов символа одного символа обозначают через бит yi, и сопоставляют бит b0 и бит y2, бит b1 и бит y1, бит b2 и бит y3 и бит b3 и бит y0.
Десятое устройство обработки данных или способ обработки данных по настоящему изобретению представляет собой устройство обработки данных или способ обработки данных, которые включают в себя следующее: блок/этап перестановки для сопоставления бита LDPC-кода, для которого длина кода равна 16200 битам и скорость кодирования равна 7/15, с битом символа, соответствующим любой из 16 сигнальных точек, определенных 16-позиционной APSK. Когда 4 бита кода, которые сохранены в четырех блоках памятей емкостью 16200/4 битов и которые побитно считаны из блоков памятей, сопоставляют одному символу, (i+1)-й бит от самого старшего бита из 4 битов кода обозначают через бит bi, (i+1)-й бит от самого старшего бита из 4 битов символа одного символа обозначают через бит yi, и в блоке/этапе перестановки сопоставляют бит b0 и бит y3, бит b1 и бит y1, бит b2 и бит y2 и бит b3 и бит y0.
В десятом устройстве обработки данных и способе обработки данных по настоящему изобретению бит LDPC-кода, для которого длина кода равна 16200 битам и скорость кодирования равна 7/15, сопоставляют с битом символа, соответствующим любой из 16 сигнальных точек, определенных 16-позиционной APSK. При перестановке, когда 4 бита кода, которые сохранены в четырех блоках памятей емкостью 16200/4 битов и которые побитно считаны из блоков памятей, сопоставляют одному символу, (i+1)-й бит от самого старшего бита из 4 битов кода обозначают через бит bi, (i+1)-й бит от самого старшего бита из 4 битов символа одного символа обозначают через бит yi, и сопоставляют бит b0 и бит y3, бит b1 и бит y1, бит b2 и бит y2 и бит b3 и бит y0.
Устройство обработки данных может являться независимым устройством и может являться внутренним блоком, входящим в состав одного устройства.
Полезные свойства изобретения
В соответствии с вариантом осуществления настоящего изобретения возможно обеспечить хорошее качество связи при передаче данных с использованием LDPC-кода.
Полезные свойства, описанные в настоящем документе, являются только примерами и полезные свойства некоторого варианта осуществления настоящего изобретения не ограничены полезными свойствами, описанными в настоящем документе, и могут существовать другие полезные свойства.
Краткое описание чертежей
Фиг. 1 - вид, показывающий проверочную матрицу Н LDPC-кода;
фиг. 2 - вид, показывающий блок-схему, иллюстрирующую последовательность декодирования LDPC-кода;
фиг. 3 - вид, показывающий пример проверочной матрицы LDPC-кода;
фиг. 4 - вид, показывающий граф Таннера проверочной матрицы;
фиг. 5 - вид, показывающий переменную вершину;
фиг. 6 - вид, показывающий проверочную вершину;
фиг. 7 - вид, показывающий пример конфигурации варианта осуществления системы передачи, в которой применено настоящее изобретение;
фиг. 8 - вид, иллюстрирующий структурную схему, показывающую пример конфигурации устройства 11 передачи;
фиг. 9 - вид, иллюстрирующий структурную схему, показывающую пример конфигурации устройства 116 разнесения битов;
фиг. 10 - вид, показывающий проверочную матрицу;
фиг. 11 - вид, показывающий матрицу контроля четности;
фиг. 12 - вид, показывающий проверочную матрицу LDPC-кода, определенного в стандарте DVB-S.2;
фиг. 13 - вид, показывающий проверочную матрицу LDPC-кода, определенного в стандарте DVB-S.2;
фиг. 14 - вид, показывающий расположение сигнальных точек 16-позиционной QAM;
фиг. 15 - вид, показывающий расположение сигнальных точек 64-позиционной QAM;
фиг. 16 - вид, показывающий расположение сигнальных точек 64-позиционной QAM;
фиг. 17 - вид, показывающий расположение сигнальных точек 64-позиционной QAM;
фиг. 18 - вид, показывающий расположение сигнальных точек, определенное в стандарте DVB-S.2;
фиг. 19 - вид, показывающий расположение сигнальных точек, определенное в стандарте DVB-S.2;
фиг. 20 - вид, показывающий расположение сигнальных точек, определенное в стандарте DVB-S.2;
фиг. 21 - вид, показывающий расположение сигнальных точек, определенное в стандарте DVB-S.2;
фиг. 22 - вид, показывающий обработку, осуществляемую в устройстве 25 демультиплексирования;
фиг. 23 - вид, показывающий обработку, осуществляемую в устройстве 25 демультиплексирования;
фиг. 24 - вид, показывающий граф Таннера для декодирования LDPC-кода;
фиг. 25 - вид, показывающий матрицу HT контроля четности, имеющую ступенчатую структуру, и граф Таннера, соответствующий матрице НT контроля четности;
фиг. 26 - вид, показывающий матрицу HT контроля четности проверочной матрицы Н, которая соответствует LDPC-коду после разнесения битов контроля четности;
фиг. 27 - вид, показывающий преобразованную проверочную матрицу;
фиг. 28 - вид, показывающий обработку, осуществляемую в устройстве 24 прокручивания столбцов;
фиг. 29 - вид, показывающий количество столбцов в памяти 31, необходимое для прокручивания столбцов и адрес позиции начала записи;
фиг. 30 - вид, показывающий количество столбцов в памяти 31, необходимое для прокручивания столбцов и адрес позиции начала записи;
фиг. 31 - вид, показывающий блок-схему, иллюстрирующую процесс обработки, осуществляемый в устройстве 116 разнесения битов и устройстве 117 преобразования;
фиг. 32 - вид, показывающий модель канала связи, которая применялась для моделирования;
фиг. 33 - вид, показывающий взаимосвязь частоты появления ошибки, которая получена при моделировании, и доплеровской частоты fd дрожания;
фиг. 34 - вид, показывающий взаимосвязь частоты появления ошибки, которая получена при моделировании, и доплеровской частоты fd дрожания;
фиг. 35 - вид, иллюстрирующий структурную схему, показывающую пример конфигурации устройства 115 LDPC кодирования;
фиг. 36 - вид, иллюстрирующий блок-схему, показывающую процесс обработки, осуществляемый в устройстве 115 LDPC кодирования;
фиг. 37 - вид, показывающий пример таблицы исходных значений для проверочной матрицы кода со скоростью кодирования, равной 1/4, и длиной кода, равной 16200;
фиг. 38 - вид, иллюстрирующий способ вычисления проверочной матрицы Н по таблице исходных значений для проверочной матрицы;
фиг. 39 - вид, показывающий пример таблицы исходных значений для проверочной матрицы 16К кода для Sx с r=7/15;
фиг. 40 - вид, показывающий пример таблицы исходных значений для проверочной матрицы 16К кода для Sx с r=8/15;
фиг. 41 - вид, показывающий пример графа Таннера такого ансамбля с последовательностью степеней, в которой вес столбца равен 3, а вес строки равен 6;
фиг. 42 - вид, показывающий пример графа Таннера ансамбля многореберного типа;
фиг. 43 - вид, показывающий минимальную длину цикла и порог эффективности проверочной матрицы 16К кода для Sx;
фиг. 44 - вид, показывающий проверочную матрицу 16К кода для Sx;
фиг. 45 - вид, показывающий проверочную матрицу 16К кода для Sx;
фиг. 46 - вид, показывающий процесс перестановки в соответствии с настоящим способом;
фиг. 47 - вид, показывающий процесс перестановки в соответствии с настоящим способом;
фиг. 48 - вид, показывающий первый пример процесса перестановки в соответствии со способом перестановки для Sx, когда способом модуляции является 8-позиционная PSK и множитель b равен 1 при передаче данных с использованием 16К кода для Sx;
фиг. 49 - вид, показывающий второй пример процесса перестановки в соответствии со способом перестановки для Sx, когда способом модуляции является 8-позиционная PSK и множитель b равен 1 при передаче данных с использованием 16К кода для Sx;
фиг. 50 - вид, показывающий результат моделирования при измерении BER/FER в ходе моделирования;
фиг. 51 - вид, показывающий результат моделирования при измерении BER/FER в ходе моделирования;
фиг. 52 - вид, показывающий структурную схему, иллюстрирующую модель системы передачи, используемую при моделировании;
фиг. 53 - вид, показывающий первый пример процесса перестановки в соответствии со способом перестановки для Sx, когда способом модуляции является 16-позиционная APSK и множитель b равен 1 при передаче данных с использованием 16К кода для Sx;
фиг. 54 - вид, показывающий второй пример процесса перестановки в соответствии со способом перестановки для Sx, когда способом модуляции является 16-позиционная APSK и множитель b равен 1 при передаче данных с использованием 16К кода для Sx;
фиг. 55 - вид, показывающий третий пример процесса перестановки в соответствии со способом перестановки для Sx, когда способом модуляции является 16-позиционная APSK и множитель b равен 1 при передаче данных с использованием 16К кода для Sx;
фиг. 56 - вид, показывающий четвертый пример процесса перестановки в соответствии со способом перестановки для Sx, когда способом модуляции является 16-позиционная APSK и множитель b равен 1 при передаче данных с использованием 16К кода для Sx;
фиг. 57 - вид, показывающий пятый пример процесса перестановки в соответствии со способом перестановки для Sx, когда способом модуляции является 16-позиционная APSK и множитель b равен 1 при передаче данных с использованием 16К кода для Sx;
фиг. 58 - вид, показывающий шестой пример процесса перестановки в соответствии со способом перестановки для Sx, когда способом модуляции является 16-позиционная APSK и множитель b равен 1 при передаче данных с использованием 16К кода для Sx;
фиг. 59 - вид, показывающий седьмой пример процесса перестановки в соответствии со способом перестановки для Sx, когда способом модуляции является 16-позиционная APSK и множитель b равен 1 при передаче данных с использованием 16К кода для Sx;
фиг. 60 - вид, показывающий восьмой пример процесса перестановки в соответствии со способом перестановки для Sx, когда способом модуляции является 16-позиционная APSK и множитель b равен 1 при передаче данных с использованием 16К кода для Sx;
фиг. 61 - вид, показывающий результат моделирования при измерении BER/FER в ходе моделирования;
фиг. 62 - вид, показывающий результат моделирования при измерении BER/FER в ходе моделирования;
фиг. 63 - вид, показывающий пример расположения сигнальных точек 16-позиционной APSK и отношение γ радиусов, когда 16-позиционную APSK используют в качестве способа модуляции.
фиг. 64 - вид, показывающий пример расположения сигнальных точек 16-позиционной APSK и отношение γ радиусов, когда 16-позиционную APSK используют в качестве способа модуляции.
фиг. 65 - вид, показывающий структурную схему примера конфигурации устройства 12 приема с фиг. 7;
фиг. 66 - вид, иллюстрирующий структурную схему, показывающую пример конфигурации устройства 165 обращения разнесения битов;
фиг. 67 - вид, показывающий блок-схему, иллюстрирующую процесс обработки, осуществляемый в устройстве 164 обратного преобразования, устройстве 165 обращения разнесения битов и устройстве 166 LDPC декодирования;
фиг. 68 - вид, показывающий пример проверочной матрицы LDPC-кода;
фиг. 69 - вид, показывающий матрицу (проверочная матрица), полученную путем применения замены строк и замены столбцов к проверочной матрице;
фиг. 70 - вид, показывающий проверочную матрицу, разделенную на блоки из матриц размера 5×5;
фиг. 71 - вид, иллюстрирующий структурную схему, показывающую пример конфигурации устройства декодирования, в котором осуществляют совместно Р преобразований вершины;
фиг. 72 - вид, иллюстрирующий структурную схему, показывающую пример конфигурации устройства 166 LDPC декодирования;
фиг. 73 - вид, показывающий обработку, осуществляемую устройством 54 мультиплексирования, входящим в состав устройства 165 обращения разнесения битов;
фиг. 74 - вид, показывающий обработку, осуществляемую устройством 55 обращения прокручивания столбцов;
фиг. 75 - вид, иллюстрирующий структурную схему, показывающую другой пример конфигурации устройства 165 обращения разнесения битов;
фиг. 76 - вид, иллюстрирующий структурную схему, показывающую первый пример конфигурации системы приема, которая может быть применена в устройстве 12 приема;
фиг. 77 - вид, иллюстрирующий структурную схему, показывающую второй пример конфигурации системы приема, которая может быть применена в устройстве 12 приема;
фиг. 78 - вид, иллюстрирующую структурную схему, показывающую третий пример конфигурации системы приема, которая может быть применена в устройстве 12 приема;
фиг. 79 - вид, показывающий структурную схему, иллюстрирующую пример конфигурации варианта осуществления компьютера, в котором применено настоящее изобретение.
Описание вариантов осуществления изобретения
Далее перед описанием вариантов осуществления настоящего изобретения будет описан LDPC-код.
[LDPC-код]
LDPC-код является линейным кодом и LDPC-код не обязательно является двоичным кодом. Тем не менее, в рассматриваемом случае предполагаем, что LDPC-код является двоичным кодом.
Наиболее значительное свойство LDPC-кода заключается в том, что проверочная матрица, определяющая LDPC-код, является разряженной. В рассматриваемом случае под разряженной матрицей понимается матрица, в которой очень мало количество элементов, равных «1» (практически все элементы матрицы равны 0).
На фиг. 1 показан пример проверочной матрицы Н LDPC-кода.
В проверочной матрице Н с фиг. 1 вес каждого столбца (вес столбца) (количество элементов, равных «1») равен «3», а вес каждой строки (вес строки) равен «6».
При осуществлении кодирования, например, с помощью LDPC-кода (LDPC кодирование) на основе проверочной матрицы Н получают порождающую матрицу G и для получения кодового слова (LDPC-кода) эту порождающую матрицу G умножают на двоичные информационные биты.
В частности, в устройстве кодирования, в котором осуществляют LDPC кодирование, сначала вычисляют порождающую матрицу G, которая удовлетворяет равенству GHT=0 относительно транспонированной матрицы HT для проверочной матрицы Н и порождающей матрицы G. Здесь, если размеры порождающей матрицы G равны K×N, то в устройстве кодирования умножают строку битов (вектор u), которая состоит из K информационных бит, на порождающую матрицу G, в результате чего получают кодовое слово с (=uG), содержащее N бит. Кодовое слово (LDPC-код), полученное в устройстве кодирования, передают по заранее заданному каналу связи и получают на приемной стороне.
LDPC-код можно декодировать с помощью алгоритма, называемого вероятностным декодированием и предложенного Галлагером (Gallager), то есть алгоритма передачи сообщений с использованием распространения надежности на, так называемом, графе Таннера, который содержит переменную вершину (также называемую вершиной сообщения) и проверочную вершину. Здесь и далее и переменную вершину, и проверочную вершину будем называть просто вершиной.
На фиг. 2 показана процедура декодирования LDPC-кода.
Здесь и далее действительное число (принятое LLR), полученное представлением правдоподобия «0» значения i-го бита LDPC-кода (одно кодовое слово), полученного на приемной стороне, в виде логарифма отношения правдоподобия, называют принятым значением u0i. Кроме того, сообщение, выходящее из проверочной вершины, обозначаем через uj, а сообщение, выходящее из переменной вершины, обозначаем через vi.
При декодировании LDPC-кода сначала, как показано на фиг. 2, на этапе S11 принимают LDPC-код и сообщению (сообщению проверочной вершины) uj присваивают значение «0», а переменной k, которая является целым числом и представляет собой счетчик повторений процесса обработки, присваивают значение «0», после чего обработка переходит на этап S12. На этапе S12 сообщение (сообщение переменной вершины) vi вычисляют путем осуществления преобразования (преобразование переменной вершины), представленного в равенстве (1), что делают на основе принятого значения u0i, полученного при приеме LDPC-кода, и сообщение uj вычисляют путем осуществления преобразования (преобразование проверочной вершины), представленного в равенстве (2), что делают на основе сообщения vi.
Здесь dv и dc в равенстве (1) и равенстве (2) являются соответственно параметрами, которые могут быть выбраны произвольным образом и которые представляют собой количество «1» в продольном направлении (направлении столбцов) и поперечном направлении (направлении строк) проверочной матрицы Н. Например, в случае LDPC-кода ((3, 6) LDPC-кода) с проверочной матрицей Н, в которой вес столбца равен 3, а вес строки равен 6, как показано на фиг. 1, устанавливают dv=3 и dc=6.
В преобразовании переменной вершины из равенства (1) и преобразовании проверочной вершины из равенства (2), так как сообщение, поступившее на вход по ребру (линии, соединяющей переменную и проверочную вершины) с целью подачи на выход сообщения, не является целью преобразования, результат преобразования находится в диапазоне от 1 до dv - 1 или от 1 до dc - 1. Преобразование проверочной вершины из равенства (2) фактически осуществляют путем предварительной подготовки таблицы значений функции R (v1, v2), которая представлена в равенстве (3) и результатом которой является одно число, полученное по двум входам v1 и v2 и последующим последовательным (рекурсивным) использованием таблицы в соответствии с равенством (4).
На этапе S12 значение переменной k увеличивается на «1» и обработка переходит на этап S13. На этапе S13 определяют, превосходит ли значение переменной k заранее заданное количество С повторений декодирования. Если на этапе S13 определяют, что значение переменной k не превосходит С, то обработка возвращается на этап S12 и повторяют аналогичный процесс.
Когда на этапе S13 определяют, что значение переменной k превосходит С, то обработка переходит на этап S14, и сообщение vi, которое соответствует результату декодирования, подаваемому на выход, вычисляют путем выполнения преобразования, представленного равенством (5), указанное сообщение подают на выход и заканчивают процесс декодирования LDPC-кода.
В рассматриваемом случае, преобразование из равенства (5) выполняют с использованием сообщений uj от всех ребер, соединенных с переменной вершиной, и указанное преобразование отлично от преобразования переменной вершины из равенства (1).
На фиг. 3 показан пример проверочной матрицы Н (3, 6) LDPC-кода (скорость кодирования равна 1/2, а длина кода равна 12).
В проверочной матрице Н с фиг. 3 вес столбца равен 3, а вес строки равен 6 аналогично фиг. 1.
На фиг. 4 показан граф Таннера проверочной матрицы Н с фиг. 3.
На фиг. 4 проверочные вершины обозначены «+» (плюс), а переменные вершины обозначены «=» (равно). Проверочная и переменная вершины соответствуют строке и столбцу проверочной матрицы Н соответственно. Линия, которая соединяет проверочную вершину с переменной вершиной является ребром и соответствует «1» из элементов проверочной матрицы.
То есть, когда элемент j-й строки и i-го столбца проверочной матрицы равен 1, на фиг. 4, i-я сверху переменная вершина (вершина «=») и j-я сверху проверочная вершина (вершина «+») соединены ребром. Ребро показывает, что на бит кода, соответствующий переменной вершине, наложено ограничение, соответствующее проверочной вершине.
В алгоритме суммы произведений, который представляет собой способ декодирования LDPC-кода, преобразование переменной вершины и преобразование проверочной вершины выполняются неоднократно.
На фиг. 5 показано преобразование переменной вершины, которое осуществляют в переменной вершине.
В переменной вершине сообщение vi соответствующее ребру для вычислений, вычисляют в ходе преобразования переменной вершины, которое соответствует равенству (1) и которое использует сообщения u1 и u2 из оставшихся ребер, соединенных с переменной вершиной, и использует принятое значение u0i. Сообщения, которые соответствуют другим ребрам, также вычисляют с помощью того же способа.
На фиг. 6 показано преобразование проверочной вершины, которое осуществляют в проверочной вершине.
В этом случае преобразование проверочной вершины, которое соответствует равенству (2), может быть переписано с помощью равенства (6) с использованием равенства . Тем не менее, sign(x) равен 1 в случае х≥0 и равен -1 в случае х<0.
При х≥0, если функция φ(х) определена с помощью равенства φ(х)=ln(tanh(x/2)), то справедливо равенство φ-1(х)=2tanh-1(e-x). По этой причине равенство (6) может быть заменено равенством (7).
В проверочной вершине преобразование проверочной вершины, соответствующее равенству (2), осуществляют в соответствии с равенством (7).
То есть, в проверочной вершине, как показано на фиг. 6, сообщение uj, соответствующее ребру для вычислений, вычисляют в ходе преобразования проверочной вершины, которое соответствует равенству (7) и которое использует сообщения v1, v2, v3, v4 и v5 из оставшихся ребер, соединенных с проверочной вершиной. Сообщения, которые соответствуют другим ребрам, также вычисляют с помощью того же способа.
Функция φ(х) из равенства (7) может быть представлена следующим образом φ(х)=ln((ех+1)/(ех-1)) и φ(х)=φ-1(х) справедливо при х>0. Когда функции φ(х) и φ-1(х) реализованы аппаратно, функции φ(х) и φ-1(х) могут быть реализованы с использованием LUT (Таблица соответствия). Тем не менее, обе функции φ(х) и φ-1(х) становятся одной и той же LUT.
<Пример конфигурации системы передачи, в которой применено настоящее изобретение>
На фиг. 7 показан пример конфигурации варианта осуществления системы передачи (под системой понимается логическое объединение множества устройств и устройство любой конфигурации может быть расположено или может не быть расположено в одном и том же корпусе), в которой применено настоящее изобретение.
На фиг. 7, система передачи содержит устройство 11 передачи и устройство 12 приема.
Например, устройство 11 передачи передает (транслирует) (перемещает) программу телевизионного вещания и так далее. То есть, например, в устройстве 11 передачи кодируют целевые данные, которые являются целью передачи, такие как изображения, звуковые данные, как программу, с помощью LDPC-кода и, например, передают полученные данные, например, по каналу 13 связи, такому как спутниковая схема, поверхностные волны и кабель (проводная схема).
В устройстве 12 приема принимают LDPC-код, переданный устройством 11 передачи по каналу 13 связи, декодируют LDPC-код с целью получения целевых данных и подают на выход целевые данные.
В этом случае известно, что LDPC-код, использованный системой передачи с фиг. 7, показывает очень высокую эффективность в канале связи с AWGN (аддитивным белым гауссовским шумом).
Тем не менее, в канале 13 связи могут быть выработаны пакетные ошибки или стирание информации. Особенно в случае, когда канал 13 связи является поверхностной волной, например, в системе OFDM (ортогональное частотное разделение каналов) мощность конкретного символа может стать равной 0 (стирание) в соответствии с задержкой эха (каналы, отличные от главного) в многоканальной среде, в которой отношение сигнала к шуму равно 0 дБ (мощность шума = эха равна мощности сигнала = главный канал).
При дрожании (канал связи, в котором задержка равна нулю и добавляется эхо с доплеровской частотой), когда отношение сигнала к шуму равно 0 дБ, мощность всего OFDM символа в конкретный момент времени может стать равной 0 (стирание) из-за доплеровской частоты.
Кроме того, пакетные ошибки могут иметь место из-за ситуации с проводной линией от блока приема (не показан на чертежах) на стороне устройства 12 приема, например, когда антенна принимает сигнал от устройства 11 передачи, до устройства 12 приема, или в ситуации нестабильности подачи электроэнергии в устройство 12 приема.
Между тем, при декодировании LDPC-кода, в переменной вершине, соответствующей столбцу проверочной матрицы Н, и биту LDPC-кода, как показано выше на фиг. 5, осуществляют преобразование переменной вершины, соответствующее равенству (1) с добавлением (принятого значения u0i) бита LDPC-кода. По этой причине, если в битах кода, используемых для преобразования переменной вершины, происходит ошибка, то ухудшается точность вычисленного сообщения.
При декодировании LDPC-кода, в проверочной вершине преобразование проверочной вершины, соответствующее равенству (7), осуществляют с использованием сообщения, вычисленного в переменной вершине, соединенной с проверочной вершиной. По этой причине, если увеличивается количество проверочных вершин, для которых одновременно происходят ошибки (в том числе стирания) во множестве соединенных переменных вершин (соответствующие биты LDPC-кода), то уменьшается эффективность декодирования.
То есть, если в двух или нескольких переменных вершинах из переменных вершин, соединенных с проверочной вершиной, одновременно происходит стирание, то проверочная вершина возвращает сообщение, для которого вероятность того, что значение равно 0, и вероятность того, что значение равно 1, равны для всех переменных вершин. В этом случае проверочная вершина, которая возвращает сообщение с равными вероятностями, не вносит вклада в процесс декодирования (один набор из преобразования переменной вершины и преобразования проверочной вершины). В результате необходимо увеличить количество повторений процесса декодирования, эффективность декодирования уменьшается и увеличивается потребление электроэнергии устройством 12 приема, которое осуществляет декодирования LDPC-кода.
Следовательно, в системе передачи с фиг. 7 может быть улучшена устойчивость к пакетной ошибке или стиранию при одновременном поддержании эффективности в канале связи с AWGN (AWGN канал).
<Пример конфигурации устройства 11 передачи>
На фиг. 8 показана структурная схема примера конфигурации устройства 11 передачи с фиг. 7.
В устройстве 11 передачи один или несколько входных потоков, соответствующих целевым данным, подают в устройство 111 адаптации режима/мультиплексирования.
В устройстве 111 адаптации режима/мультиплексирования осуществляют выбор режима и, при необходимости, такие процессы, как мультиплексирование одного или нескольких поданных входных потоков, и подают полученные в результате данные в подстроечный конденсатор 112.
В подстроечном конденсаторе 112 осуществляют необходимое дополнение нулями (вставка пустот) данных, поданных из устройства 111 адаптации режима/мультиплексирования, и подают полученные в результате данные в устройство 113 ВВ скремблирования.
В устройстве 113 ВВ скремблирования осуществляют скремблирование основной полосы (ВВ скремблирование) данных, поданных из подстроечного конденсатора 112, и подают полученные в результате данные в устройство 114 ВСН кодирования.
В устройстве 114 ВСН кодирования осуществляют ВСН кодирование данных, поданных из устройства 113 ВВ скремблирования, и подают полученные в результате данные как целевые данные LDPC, являющиеся целью LDPC кодирования, в устройство 115 LDPC кодирования.
В устройстве 115 LDPC кодирования осуществляют LDPC кодирование в соответствии с проверочной матрицей, в которой матрица контроля четности, являющаяся частью, соответствующей биту четности LDPC-кода, обладает ступенчатой структурой для целевых данных LDPC, поданных из устройства 114 ВСН кодирования, и подают на выход LDPC-код, в котором целевыми данными LDPC являются информационные биты.
То есть, в устройстве 115 LDPC кодирования осуществляют LDPC кодирование с целью кодирования целевых данных LDPC с использованием LDPC-кода, такого как LDPC-код (соответствующий проверочной матрице), определенный в заранее заданном стандарте DVB-S.2, DVB-T.2, DVB-C.2 или подобном, и как результат подают на выход полученный заранее заданный LDPC-код (соответствующий проверочной матрице) или подобный, полученный как результат.
LDPC-код, определенный в стандарте DVB-S.2, DVB-T.2 и DVB-C.2, является IRA-кодом (нерегулярный код повторения-накопления) и матрица контроля четности проверочной матрицы LDPC-кода имеет ступенчатую структуру. Далее будет описана матрица контроля четности и ступенчатая структура. IRA-код описан, например, в документе «Нерегулярные коды повторения-накопления», авторы X. Джин (Н. Jin), А. Хандекар (A. Khandekar) и Р.Дж. МакЭлис (R.J. МсЕliесе), опубликованном в материалах проходившего в сентябре 2000 года 2-го международного симпозиума по турбокодам и связанным с ними вопросам, стр. 1-8.
LDPC-код, полученный на выходе устройства 115 LDPC кодирования, подают в устройство 116 разнесения битов.
В устройстве 116 разнесения битов осуществляют описываемое ниже разнесение битов для LDPC-кода, поданного из устройства 115 LDPC кодирования, и подают LDPC-код после разнесения битов в устройство 117 преобразования.
В устройстве 117 преобразования осуществляют преобразование LDPC-кода, поданного из устройства 116 разнесения битов, в сигнальную точку, представляющую один символ ортогональной модуляции в блоке (блок символа) битов кода из одного или нескольких бит LDPC-кода, и осуществляют ортогональную модуляцию (многоуровневую модуляцию).
То есть, в устройстве 117 преобразования осуществляют преобразование LDPC-кода, поданного из устройства 116 разнесения битов, в сигнальную точку, определенную способом модуляции для осуществления ортогональной модуляции LDPC-кода, на плоскости IQ (созвездие IQ), которая определена осью I, представляющей I компонент, который совпадает по фазе с несущей, и осью Q, представляющей Q компонент, который ортогонален несущей, и осуществляют ортогональную модуляцию.
В этом случае, в качестве способа ортогональной модуляции, осуществляемой в устройстве 117 преобразования, используют такие способы модуляции, как способ модуляции, определенный в стандартах DVB-S.2, DVB-T.2, DVB-C.2 и подобных, и другие способы модуляции, такие как BPSK (двоичная фазовая манипуляция), QPSK (квадратурная фазовая манипуляция), 8-позиционная PSK (фазовая манипуляция), 16-позиционная APSK (амплитудно-фазовая манипуляция), 32-позиционная APSK, 16-позиционная QAM (квадратурная амплитудная манипуляция), 64-позиционная QAM, 256-позиционная QAM, 1024-позиционная QAM, 4096-позиционная QAM, 4-позиционная РАМ (амплитудно-импульсная модуляция) или подобные. В устройстве 117 преобразования осуществляют ортогональную модуляцию, что делают на основе заранее установленного способа модуляции в соответствии с преобразованием, которое осуществляет оператор устройства 11 передачи.
Данные (результат преобразования, где символ преобразуют в сигнальную точку), которые получают при обработке в устройстве 117 преобразования, подают в устройство 118 временного уплотнения.
В устройстве 118 временного уплотнения осуществляют временное уплотнение (уплотнение во временном направлении) в блоке символа для данных, поданных из устройства 117 преобразования, и подают полученные в результате данные в устройство 119 SISO/MISO кодирования (устройство SISO/MISO (Один вход один выход/несколько входов один выход) кодирования).
В устройстве 119 SISO/MISO кодирования осуществляют пространственно-временное кодирование данных, поданных из устройства 118 временного уплотнения, и подают данные в устройство 120 частотного уплотнения.
В устройстве 120 частотного уплотнения осуществляют частотное уплотнение (уплотнение в частотном направлении) в блоке символа для данных, поданных из устройства 119 SISO/MISO кодирования, и подают данные в блок 131 построения кадра/выделения ресурса.
С другой стороны, например, данные управления (сигнализация) для управления передачей, такие как сигнализация основной полосы (сигнализация основной полосы) (ВВ заголовок), подают в устройство 121 ВСН кодирования.
В устройстве 121 ВСН кодирования, которое аналогично устройству 114 ВСН кодирования, осуществляют ВСН кодирование поданной сигнализации, и подают полученные в результате данные в устройство 122 LDPC кодирования.
В устройстве 122 LDPC кодирования, которое аналогично устройству 115 LDPC кодирования, устанавливают данные, поданные из устройства 121 ВСН кодирования, как целевые данные LDPC, осуществляют LDPC кодирование данных, и подают полученный в результате LDPC-код в устройство 123 преобразования.
В устройстве 123 преобразования, которое аналогично устройству 117 преобразования, осуществляют преобразование LDPC-кода, поданного из устройства 122 LDPC кодирования, в сигнальную точку, представляющую один символ ортогональной модуляции в блоке (символьный блок) битов кода из одного или нескольких битов LDPC-кода, осуществляют ортогональную модуляцию и подают полученные в результате данные в устройство 124 частотного уплотнения.
В устройстве 124 частотного уплотнения, которое аналогично устройству 120 частотного уплотнения, осуществляют частотное уплотнение в блоке символа для данных, поданных из устройства 123 преобразования, и подают данные в блок 131 построения кадра/выделения ресурса.
В блоке 131 построения кадра/выделения ресурса вставляют вспомогательные символы в необходимые позиции данных (символов), поданных из устройств 120 и 124 частотного уплотнения, конфигурируют кадр (например, кадр физического уровня (PL), Т2 кадр, С2 кадр и так далее), содержащий заранее заданное количество символов из полученных в результате данных (символов), и подают кадр в блок 132 выработки OFDM.
В блоке 132 выработки OFDM вырабатывают OFDM сигнал, соответствующий кадру из кадра, поданного из блока 131 построения кадра/выделения ресурса, и передают OFDM символ по каналу 13 связи (фиг. 7).
Здесь, например, устройство 11 передачи может быть выполнено без части блоков, показанных на фиг. 8, таких как устройство 118 временного уплотнения, устройство 119 SISO/MISO кодирования, устройство 120 частотного уплотнения и устройство 124 частотного уплотнения.
На фиг. 9 показан пример конфигурации устройства 116 разнесения битов с фиг. 8.
Устройство 116 разнесения битов содержит функцию для разнесения данных и содержит устройство 23 разнесения битов контроля четности, устройство 24 прокручивания столбцов и устройство 25 демультиплексирования (DEMUX). Здесь устройство 116 разнесения битов может быть выполнено без одного или обоих из следующих устройств: устройство 23 разнесения битов контроля четности и устройство 24 прокручивания столбцов.
В устройстве 23 разнесения битов контроля четности осуществляют разнесение битов контроля четности с целью разнесения битов контроля четности LDPC-кода, поданного из устройства 115 LDPC кодирования, на позиции других битов контроля четности, и подают LDPC-код после разнесения битов контроля четности в устройство 24 прокручивания столбцов.
В устройстве 24 прокручивания столбцов осуществляют прокручивание столбцов для LDPC-кода, поданного из устройства 23 разнесения битов контроля четности, и подают LDPC-код после прокручивания столбцов в устройство 25 демультиплексирования.
То есть, в устройстве 117 преобразования с фиг. 8, биты кода, включающие в себя один или несколько битов LDPC-кода, преобразуют в сигнальную точку, представляющую один символ ортогональной модуляции и передают указанные биты кода.
В устройстве 24 прокручивания столбцов осуществляют описываемое ниже прокручивание столбцов, что выполняют как процесс перераспределения битов LDPC-кода, поданного из устройства 23 разнесения битов контроля четности, так что один символ не содержит нескольких битов LDPC-кода, которые соответствуют значению 1 и которые принадлежат любой одной строке проверочной матрицы, используемой в устройстве 115 LDPC кодирования.
В устройстве 25 демультиплексирования осуществляют процесс перестановки, заключающийся в перестановке позиций двух или более битов LDPC-кода, которые становятся символом, для LDPC-кода, поданного из устройства 24 прокручивания, и получают LDPC-код с увеличенной устойчивостью к AWGN и подобному. Кроме того, в устройстве 25 демультиплексирования подают два или более битов LDPC-кода, полученного в результате процесса перестановки, в качестве символа в устройство 117 преобразования (фиг. 8).
На фиг. 10 показана проверочная матрица Н, используемая для LDPC кодирования в устройстве 115 LDPC кодирования с фиг. 8.
Проверочная матрица Н имеет LDGM (Низкоплотностная порождающая матрица) структуру и может быть представлена в следующем виде (матрица, в которой элементы, расположенные на левой стороне, являются элементами информационной матрицы HA, а элементы, расположенные на правой стороне, являются элементами матрицы HT контроля четности), с использованием информационной матрицы HA, соответствующей информационным битам из битов LDPC-кода, и матрицы HT контроля четности, соответствующей битам контроля четности.
В этом случае количество информационных битов среди битов LDPC-кода (одно кодовое слово) и количество битов контроля четности называют соответственно информационной длиной К и длиной М контроля четности, а количество битов в одном кодовом слове LDPC-кода называют длиной N кода (=K+М).
Информационная длина К и длина М контроля четности для LDPC-кода определенной длины N кода определяются скоростью кодирования. Проверочная матрица Н является матрицей, в которой количество строк×количество столбцов равно М×N. Информационная матрица HA является матрицей размера М×K, а матрица HT контроля четности является матрицей размера М×М.
На фиг. 11 показана матрица HT контроля четности для проверочной матрицы Н LDPC-кода, определенного в стандартах DVB-S.2, DVB-T.2 и DVB-C.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 контроля четности проверочной матрицы имеет ступенчатую структуру, показанную на фиг. 11.
На фиг. 12 показана проверочная матрица Н LDPC-кода, определенного в стандарте DVB-T.2 или подобных.
Вес столбца равен X для KX столбцов, начиная с первого столбца проверочной матрицы Н LDPC-кода, определенной в стандарте DVB-T.2 или подобных, равен 3 для следующих K3 столбцов, равен 2 для следующих (М-1) столбцов и равен 1 для последнего столбца.
В этом случае сумма KX+K3+М-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-кода частота появления ошибок обычно бывает низкой для бита кода, соответствующего столбцу с большим весом в проверочной матрице Н.
В проверочной матрице Н, которая показана на фиг. 12 и 13 и которая определена в стандарте DVB-T.2 или подобных стандартах, вес столбца верхней стороны (левой стороны) обычно бывает большим. Следовательно, для LDPC-кода, соответствующего проверочной матрице Н, бит кода верхней стороны обычно хорошо устойчив к появлению ошибки (существует устойчивость к появлению ошибки) и бит кода конечной стороны обычно слабо устойчив к появлению ошибки.
На фиг. 14 показан пример расположения (сигнальных точек, соответствующих) 16 символов на IQ плоскости, при этом 16-позиционную QAM осуществляют в устройстве 117 преобразования с фиг. 8.
То есть, в участке А фиг. 14 показаны символы 16-позиционной QAM стандарта DVB-T.2 (сигнальная точка, соответствующая символу).
В 16-позиционной QAM один символ представлен 4 битами и существует 16 (=24) символов. 16 символов расположены так, что I направление × Q направление является квадратом 4×4 на основе исходной точки IQ плоскости.
Если (i+1)-й бит, начиная с самого старшего бита строки битов, представляющей один символ, обозначить через бит yi, то 4 бита, представляющие один символ из 16-позиционной QAM, могут быть последовательно представлены в виде битов y0, y1, y2 и y3, начиная с самого старшего бита. Когда способом модуляции является 16-позиционная QAM, то 4 бита из битов LDPC-кода представляют собой символ (значение символа) из 4 битов от y0 до y3 (являются символьным видом).
В участке В фиг. 14 показаны границы битов для каждого из 4 битов (здесь и далее также называют битами символа) от y0 до y3, которые представляют символ 16-позиционной QAM.
В этом случае, граница битов для бита yi символа (на фиг. 14, i=0, 1, 2 и 3) обозначает границу между символом, бит yi которого равен 0, и другим символом, бит yi которого равен 1.
Как ясно из участка В фиг. 14, для самого старшего бита y0 символа из 4 битов от y0 до y3 символа, представляющих символ 16-позиционной QAM, только одно расположение оси Q на IQ плоскости образует границу битов, а для второго бита y1 символа (второго по старшинству бита) только одно расположение оси I на IQ плоскости образует границу битов.
Для третьего бита y2 символа два места, а именно место между первым и вторым столбцами в левой стороне и место между третьим и четвертым столбцами из 4×4 символов, являются границами битов.
Для третьего бита y3 символа два места, а именно место между первой и второй строками в верхней стороне и место между третьей и четвертой строками из 4×4 символов, являются границами битов.
В битах yi символа, которые представляют символы, когда велико количество символов, находящихся в стороне от границ битов, ошибке трудно появиться (вероятность ошибки мала), а когда велико количество символов, близких к границам битов, ошибка появляется легко (вероятность ошибки велика).
Если биты, в которых ошибке трудно появиться (устойчивые к появлению ошибки), называют «сильными битами», а биты, в которых ошибка появляется легко (менее устойчивы к появлению ошибки), называют «слабыми битами», то среди 4 битов символа от y0 до y3, которые представляют символ 16-позиционной QAM, самый старший бит y0 символа и второй по старшинству бит y1 символа являются сильными битами, а третий бит y2 символа и четвертый бит y3 символа являются слабыми битами.
На фиг. 15-17 показаны примеры расположения 64 символов (соответствующих сигнальные точки) на IQ плоскости, то есть символы 16-позиционной QAM стандарта DVB-T.2, где 64-позиционную QAM осуществляют в устройстве 117 преобразования с фиг. 8.
В 64-позиционной QAM один символ представлен 6 битами и существует 64 (=26) символа. 64 символа расположены так, что I направление × Q направление является квадратом 8×8 на основе начальной точки IQ плоскости.
Биты одного символа 64-позиционной QAM могут быть последовательно представлены как y0, y1, y2, y3, y4 и y5, начиная с самого старшего бита. Когда способом модуляции является 64-позиционная QAM, то 6 битов из битов LDPC-кода представляют символ из 6 битов символа от y0 до y5.
В этом случае, на фиг. 15 показана граница битов для самого старшего бита y0 символа и второго бита y1 символа среди битов y0 - y5 символов 64-позиционной QAM; на фиг. 16 показана граница битов для третьего бита y2 символа и для четвертого бита y3 символа, и на фиг. 17 показана граница битов для пятого бита y4 символа и для шестого бита y5 символа.
Как показано на фиг. 15, граница битов для самого старшего бита y0 символа и для второго бита y1 символа является единой. Как показано на фиг. 16, границы битов для третьего бита y2 символа и для четвертого бита y3 символа расположены в двух местах. Как показано на фиг. 17, границы битов для пятого бита y4 символа и для шестого бита y5 символа расположены в четырех местах.
Соответственно, для битов y0 - y5 символа 64-позиционной QAM, самый старший бит y0 символа и второй бит y1 символа являются сильными битами и третий бит y2 символа и четвертый бит y3 символа являются следующими сильными битами. Кроме того, пятый бит y4 символа и шестой бит y5 символа являются слабыми битами.
Из фиг. 14 и 15-17, ясно, что для битов символа ортогональной модуляции расположенные выше биты обычно являются сильными битами, а расположенные ниже биты являются слабыми битами.
На фиг. 18 показан пример расположения 4 символов (соответствующих сигнальных точек) на IQ плоскости в случае, когда спутниковую схему используют в качестве канала 13 связи (фиг. 7) и QPSK осуществляют в устройстве 117 преобразования с фиг. 8, то есть, например, на фиг. 18 показано расположение сигнальных точек QPSK стандарта DVB-S.2.
В QPSK стандарта DVB-S.2 символ преобразуют в любую из 4 сигнальных точек на окружности с центром в начальной точке IQ плоскости и радиусом, равным ρ.
На фиг. 19 показан пример расположения 8 символов на IQ плоскости в случае, когда спутниковая схема используют в качестве канала 13 связи (фиг. 7) и 8-позиционную PSK осуществляют в устройстве 117 преобразования с фиг. 8, то есть, например, на фиг. 19 показано расположение сигнальных точек 8-позиционную PSK стандарта DVB-S.2.
В 8-позиционной PSK стандарта DVB-S.2 символ преобразуют в любую из 8 сигнальных точек на окружности с центром в начальной точке IQ плоскости и радиусом, равным ρ.
На фиг. 20 показан пример расположения 16 символов на IQ плоскости в случае, когда спутниковую схему используют в качестве канала 13 связи (фиг. 7) и 16-позиционную APSK осуществляют в устройстве 117 преобразования с фиг. 8, то есть, например, на фиг. 20 показано расположение сигнальных точек 16-позиционной APSK стандарта DVB-S.2.
В участке А фиг. 20 показано созвездие 16-позиционной APSK стандарта DVB-S.2.
В 16-позиционной APSK стандарта DVB-S.2 символ преобразуют в любую сигнальную точку из общего числа 16 сигнальных точек, состоящих из 4 сигнальных на окружности с центром в начальной точке IQ плоскости и радиусом R1 и 12 сигнальных точек на окружности с центром в начальной точке IQ плоскости и радиусом R2 (R2>R1).
В участке В фиг. 20 показан параметр γ=R2/R1, который является отношением радиусов R2 и R1 в созвездии 16-позиционной APSK стандарта DVB-S.2.
В созвездии 16-позиционной APSK стандарта DVB-S.2 отношение γ радиусов R2 и R1 разное при разных скоростях кодирования.
На фиг. 21 показан пример расположения 32 символов на IQ плоскости в случае, когда спутниковую схему используют в качестве канала 13 связи (фиг. 7) и 32-позиционную APSK осуществляют в устройстве 117 преобразования с фиг. 8, то есть, например, на фиг. 21 показано расположение сигнальных точек 32-позиционной APSK стандарта DVB-S.2.
В участке А фиг. 21 показано созвездие 32-позиционной APSK стандарта DVB-S.2.
В 32-позиционной APSK стандарта DVB-S.2 символ преобразуют в любую сигнальную точку из общего числа 32 сигнальных точек, состоящих из 4 сигнальных на окружности с центром в начальной точке IQ плоскости и радиусом R1, 12 сигнальных точек на окружности с центром в начальной точке IQ плоскости и радиусом R2 (R2>R1) и 16 сигнальных точек на окружности с центром в начальной точке IQ плоскости и радиусом R3 (R3>R2).
В участке В фиг. 21 показаны параметр γ1=R2/R1, который является отношением радиусов R2 и R1 в созвездии 32-позиционной APSK стандарта DVB-S.2, и параметр γ2=R3/R1, который является отношением радиусов R3 и R1.
В созвездии 32-позиционной APSK стандарта DVB-S.2 отношение γ1 радиусов R2 и R1 и отношение γ2 радиусов R3 и R1 разные при разных скоростях кодирования.
Даже для битов символов каждой квадратурной модуляции (QPSK, 8-позиционной PSK, 16-позиционной APSK и 32-позиционной APSK) стандарта DVB-S.2, которые показаны созвездием на фиг. 18 - фиг. 21, аналогично случаям с фиг. 14 - фиг. 17, существуют сильные и слабые биты.
Как показано на фиг. 12 и фиг. 13, для LDPC-кода, поданного на выход устройством 115 LDPC кодирования (фиг. 8) существуют устойчивые к ошибке биты кода и неустойчивые к ошибке биты кода.
Как показано на фиг. 14-21, среди битов символа ортогональной модуляции, осуществляемой в устройстве 117 преобразования, существуют сильные и слабые биты.
Соответственно, если биты LDPC-кода, устойчивые к появлению ошибок, выделяют для слабых битов символа ортогональной модуляции, то в целом устойчивость к появлению ошибок может снизиться.
Следовательно, предложено устройство разнесения, в котором разносят биты LDPC-кода таким образом, что биты LDPC-кода с низкой устойчивостью к появлению ошибок, выделяют для сильных битов (битов символа) символа ортогональной модуляции.
В устройстве 25 демультиплексирования с фиг. 9 могут осуществлять обработку данных, полученных от устройства разнесения.
На фиг. 22 показана обработка, осуществляемая в устройстве 25 демультиплексирования с фиг. 9.
То есть, в участке А фиг. 22 показан пример конфигурации устройства 25 демультиплексирования.
Устройство 25 демультиплексирования содержит память 31 и блок 32 перестановки.
LDPC-код подают из устройства 115 LDPC кодирования в память 31.
Емкость памяти 31 такова, что она способна хранить mb битов в направлении строк (поперечном) и N/(mb) битов в направлении столбцов (продольном). В память 31 записывают поданные в нее биты LDPC-кода в направлении столбцов, считывают из памяти 31 биты кода в направлении строк и подают биты кода в блок 32 перестановки.
В этом случае N (= информационная длина К + длина М контроля четности) представляет собой длину LDPC-кода, как описано выше.
Кроме того, m является количеством битов LDPC-кода, представляющих один символ, a b является заранее заданным положительным целым числом и является множителем, который используют для умножения на число m. В устройстве 25 демультиплексирования преобразуют в символьный вид биты LDPC-кода в блок заранее заданных m бит. Тем не менее, множитель b представляет количество символов, полученных при однократном преобразовании в символьный вид, осуществляемом в устройстве 25 демультиплексирования.
В участке А фиг. 22 показан пример конфигурации устройства 25 демультиплексирования в случае, когда способом модуляции является 64-позиционная QAM или подобная, когда преобразование осуществляют с любую из 64 сигнальных точек и, следовательно, количество бит LDPC-кода для одного символа равно 6.
В участке А фиг. 22 множитель b равен 1. Следовательно, емкость памяти 31 в направлении столбцов × направление строк равна N/(6×1)×(6×1) битов.
В этом случае область хранения памяти 31, размер которой в направлении строк равен 1 и которая тянется в направлении столбцов, здесь и далее называют столбцом. В участке А фиг. 22 память 31 содержит 6 (=6×1) столбцов.
В устройстве 25 демультиплексирования запись битов LDPC-кода в направлении сверху вниз (направлении столбцов), начиная с верхней части столбцов, образующих память 31, осуществляют слева по направлению к столбцам правой стороны.
Если запись битов кода заканчивается внизу самого правого столбца, биты кода считывают блоками по 6 битов (mb битов) в направлении строк, начиная с первой строки, из всех столбцов, которые образуют память 31, и подают в блок 32 перестановки.
В блоке 32 перестановки осуществляют процесс перестановки, который заключается в перестановке позиций 6 битов кода из памяти 31, и подают полученные в результате 6 битов как биты y0, y1, y2, y3, y4 и y5 символа, которые представляют собой один символ 64-позиционной QAM.
То есть, биты кода (в этом случае 6 битов) в количестве mb битов считывают из памяти 31 в направлении строк. Тем не менее, если i-й (i=0, 1, … и mb - 1) бит, начиная с самого старшего бита из битов кода в количестве mb бит, который считывают из памяти 31, обозначить как бит bi, биты кода в количестве 6 битов, которые считывают из памяти 31 в направлении строк, могут быть обозначены как биты b0, b1, b2, b3, b4 и b5, последовательно, начиная с самого старшего бита.
Что касается весов столбцов, описанных на фиг. 12 и 13, бит кода, расположенный в направлении бита b0, является битом кода, имеющим сильную устойчивость к появлению ошибки, а бит кода в направлении бита b5 является битом, имеющим слабую устойчивость к появлению ошибки.
В блоке 32 перестановки может быть осуществлен процесс перестановки, направленный на перестановку позиций битов b0 - b5 кода в количестве 6 битов из памяти 31, при котором биты кода, слабо устойчивые к появлению ошибки, из битов b0 - b5 кода в количестве 6 битов из памяти 31, сопоставляют сильным битам из битов y0 - y5 символа 64-позиционной QAM.
В этом случае, в качестве способов перестановки, направленных на перестановку битов b0 - b5 кода в количестве 6 битов из памяти 31 и сопоставление битам b0 - b5 кода в количестве 6 битов битов у0 - y5 символа, представляющих один символ 64-позиционной QAM, отдельными компаниями предложены различные способы.
В участке В фиг. 22 показан первый способ перестановки, в участке С фиг. 22 показан второй способ перестановки и в участке D фиг. 22 показан третий способ перестановки.
В участке В фиг. 22 и участке D фиг. 22 (аналогично фиг. 23, рассмотренной ниже) отрезок прямой, связывающий биты bi и yj обозначает, что бит bi кода сопоставляют биту yj символа (его переставляют на позицию бита yj символа).
В качестве первого способа перестановки из участка В фиг. 22 предложено использовать любой из трех типов способов перестановки. В качестве второго способа перестановки из участка С фиг. 22 предложено использовать любой из двух типов способов перестановки.
В качестве третьего способа перестановки из участка D фиг. 22 предложено последовательно выбрать и использовать любой из шести типов способов перестановки.
На фиг. 23 показан пример конфигурации устройства 25 демультиплексирования в случае, когда способом модуляции является 64-позиционная QAM или подобная, когда преобразование осуществляют с любой из 64 сигнальных точек (следовательно, количество m бит LDPC-кода преобразуемых в один символ равно 6, аналогично фиг. 22) и множитель b равен 2 и показан четвертый способ перестановки.
Когда множитель b равен 2, емкость памяти 31, в которой направление столбцов × направление строк равно N/(6×2)×(6×2) бит и содержит 12 (=6×2) столбцов.
В участке А фиг. 23 показан порядок записи LDPC-кода в память 31.
В устройстве 25 демультиплексирования, описанном на фиг. 22, запись битов LDPC-кода в направлении вниз (направлении столбцов), начиная с верхней части столбцов, образующих память 31, осуществляют слева по направлению к столбцам правой стороны.
Если запись битов кода заканчивается внизу самого правого столбца (если закончена запись кодового слова), биты кода считывают блоками по 12 битов (mb битов) в направлении строк, начиная с первой строки, из всех столбцов, которые образуют память 31, и подают в блок 32 перестановки.
В блоке 32 перестановки осуществляют процесс перестановки, который заключается в перестановке позиции 12 битов кода из памяти 31 с использованием четвертого способа перестановки и подают на выход полученные в результате 12 битов как 12 битов, которые представляют два символа (b символов) 64-позиционной QAM, то есть 6 битов y0, y1, y2, y3, y4 и y5 символа представляют один символ 64-позиционной QAM и 6 битов y0, y1, y2, y3, y4 и y5 символа представляют следующий символ.
В этом случае, в участке В фиг. 23 показан четвертый способ перестановки, соответствующий процессу перестановки, который осуществляют в блоке 32 перестановки из участка А фиг. 23.
Когда множитель b равен 2 (или 3 и более) в процессе перестановки mb битов кода сопоставляют mb битам символа b последовательных символов. В приведенном ниже объяснении, в том числе объяснении фиг. 23, для удобства описания (i+1)-й по старшинству бит среди mb битов символа для b последовательных символов обозначен как бит yi (бит символа).
Какие биты кода целесообразно переставлять, то есть улучшение частоты появления ошибок в AWGN канале связи или подобном, различается в зависимости от скорости кодирования или длины LDPC-кода и способа модуляции.
<Разнесение битов контроля четности>
Далее будет описано разнесение битов контроля четности, осуществляемое в устройстве 23 разнесения битов контроля четности с фиг. 9 со ссылками на фиг. 24-26).
На фиг. 24 показан (часть) граф Таннера проверочной матрицы LDPC-кода.
Как показано на фиг. 24, если в нескольких, например, двух переменных вершинах (соответствующих битах кода) из переменных вершин, соединенных с проверочной вершиной, одновременно появляется ошибка, такая как стирание, то проверочная вершина возвращает сообщение, для которого вероятность того, что значение равно 0, и вероятность того, что значение равно 1, равны для всех переменных вершин, соединенных с проверочной вершиной. По этой причине, если в нескольких переменных вершинах, соединенных с одной и той же проверочной вершиной, одновременно появляется ошибка, эффективность декодирования ухудшается.
Между тем, LDPC-код, полученный на выходе устройства 115 LDPC кодирования с фиг. 8 и определенный в стандарте DVB-S.2 или подобном, является IRA кодом и матрица HT контроля четности проверочной матрицы Н имеет ступенчатую структуру, показанную на фиг. 11.
На фиг. 25 показана матрица HT контроля четности, имеющая ступенчатую структуру, и показан граф Таннера, соответствующий этой матрице HT контроля четности.
То есть, в участке А фиг. 25 показана матрица HT контроля четности, имеющая ступенчатую структуру, а в участке В фиг. 25 показан граф Таннера, соответствующий этой матрице HT контроля четности из участка А фиг. 25.
В матрице HT контроля четности, имеющей ступенчатую структуру, элементы, равные 1, расположены рядом в каждой строке (за исключением первой строки). Следовательно, в графе Таннера матрицы HT контроля четности две соседние переменные вершины, соответствующие столбцу с двумя соседними элементами, значение которых в матрице HT контроля четности равно 1, соединены с одной и той же проверочной вершиной.
Следовательно, когда в битах контроля четности, соответствующие двум упомянутым выше переменным вершинам, одновременно появляется ошибка стирания или пакетная ошибка и так далее, проверочная вершина, соединенная с двумя переменными вершинами (переменными вершинами для поиска сообщения с использованием битов контроля четности), соответствующим тем двум битам контроля четности, которые содержат ошибку, возвращают сообщение, для которого вероятность того, что значение равно 0, равна вероятности того, что значение равно 1, с переменными вершинами, соединенными с проверочной вершиной, и, следовательно, ухудшается эффективность декодирования. Более того, когда становится большой длина пакета (количество бит из непрерывных битов контроля четности, которые содержат ошибку), увеличивается количество проверочных вершин, которые возвращают сообщение с равной вероятностью, и дополнительно ухудшается эффективность декодирования.
Следовательно, в устройстве 23 разнесения битов контроля четности (фиг. 9) осуществляют разнесение битов контроля четности с целью разнесения битов контроля четности LDPC-кода, поданного из устройства 115 LDPC кодирования, на позиции других битов контроля четности, что делают для предотвращения ухудшения эффективности декодирования.
На фиг. 26 показана матрица HT контроля четности проверочной матрицы Н, соответствующей LDPC-коду, полученному после разнесения битов контроля четности, которое осуществляют в устройстве 23 разнесения битов контроля четности с фиг. 9.
В этом случае информационная матрица HA проверочной матрицы Н, соответствующей LDPC-коду, подаваемому на выход устройством 115 LDPC кодирования и определенному в стандарте DVB-S.2 или подобном, имеет циклическую структуру.
Циклическая структура является структурой, в которой любой столбец соответствует столбцу, полученному при циклическом сдвиге другого столбца. Например, циклическая структура содержит структуру, в которой положение 1 каждой строки Р столбцов является позицией, полученной циклическим сдвигом первого столбца из Р столбцов в направлении столбцов на значение, пропорциональное значению q, полученному делением длины М контроля четности, для каждого из Р столбцов. Здесь и далее, Р столбцов в циклической структуре соответственно называют количеством столбцов в блоке циклической структуры.
В качестве LDPC-кода, определенного в таком стандарте как DVB-S.2, показанного на фиг. 12 и фиг. 13, присутствуют два типа LDPC-кодов, для которых длина N кода равна 64800 битов и 16200 битов, и для обоих типов LDPC-кодов, количество Р столбцов, образующих блок циклической структуры, определяют как число 360, которое является одним из делителей, за исключением 1 и М, длины М контроля четности.
Длина М контроля четности является значением, отличным от простых чисел, и представленным в выражении M=q×P=q×360, с использованием различных значений q в соответствии со скоростью кодирования. Следовательно, аналогично количеству Р столбцов блока циклической структуры, значение q является одним из делителей длины М контроля четности, не совпадающим с 1 и М, и его получают делением длины М контроля четности на количество Р столбцов блока циклической структуры (произведение Р и q, которые являются делителями длины М контроля четности, равно длине М контроля четности).
Как описано выше, когда информационная длина обозначена через K, целое число, равное или большее 0 и меньшее Р, обозначено через x, целое число, равное или большее 0 и меньшее q, обозначено через y, в устройстве 23 разнесения битов контроля четности располагают K+qx+y+1-й бит кода среди битов LDPC-кода, количество которых равно N, на позиции K+Py+х+1-го бита кода, что делается в процессе разнесения битов.
Так как K+qx+y+1-й бит кода и K+Py+x+1-й бит кода являются битами кода после K+1-го бита, то они являются битами контроля четности и, следовательно, позиции битов контроля четности LDPC-кода перемещаются в соответствии с разнесением битов.
В соответствии с разнесением битов, переменные вершины (соответствующие биты контроля четности), соединенные с одной и той же проверочной вершиной, отделены Р столбцами блока циклической структуры, то есть 360 битами в рассматриваемом случае. По этой причине, когда длина пакета меньше 360 битов, предотвращается одновременное появление ошибки во множестве переменных вершин, соединенных с одной и той же проверочной вершиной. В результате может быть улучшена устойчивость к пакетной ошибке.
LDPC-код после разнесения, заключающегося в расположении (K+qx+y+1)-го бита кода на позиции (K+Py+х+1)-го бита кода, соответствует LDPC-коду с проверочной матрицей (здесь и далее также называем преобразованной проверочной матрицей), полученной заменой столбцов, которая заключается в замене (K+qx+y+1)-го столбца исходной проверочной матрицы Н на (K+Py+х+1)-й столбец.
В матрице контроля четности преобразованной проверочной матрицы Н, как показано на фиг. 26, появляется псевдоциклическая структура, в которой в качестве блока используется Р столбцов (на фиг. 26, 360 столбцов).
В этом случае под псевдоциклической структурой понимают структуру, в которой сформирована циклическая структура за исключением ее некоторой части. Преобразованная проверочная матрица, которая получена при осуществлении замены столбцов в соответствии с разнесением битов для проверочной матрицы LDPC-кода, определенного в стандарте DVB-S.2 или подобных, обладает псевдоциклической структурой, а не (точной) циклической структурой, так как количество элементов, равных 1, меньше 1 (существуют элементы, равные 0) в части (матрица со сдвигом, которая будет описана ниже) из 360 строк × 360 столбцов в правой угловой части преобразованной проверочной матрицы.
Преобразованная проверочная матрица с фиг. 26 является матрицей, которая получена при осуществлении замены столбцов в соответствии с разнесением битов контроля четности и заменой (замена строк) строк с целью сопоставления преобразованной проверочной матрицы с составляющей матрицей, описанной ниже, при этом указанные выше преобразования осуществляют с исходной проверочной матрицей Н.
<Прокручивание столбцов>
Далее, со ссылками на фиг. 27-30 будет описано прокручивание столбцов, соответствующее процессу перераспределения, осуществляемому в устройстве 24 прокручивания столбцов с фиг. 9.
В устройстве 11 передачи с фиг. 8 один или более битов LDPC-кода передают в виде одного символа. То есть, когда 2 бита кода установлены в качестве одного символа, в качестве способа модуляции используют QPSK, а когда 4 бита кода установлены в качестве одного символа, в качестве способа модуляции используют APSK или 16-позиционную QAM.
Фактически, когда два или более битов кода передают в виде одного символа и если в некотором символе произойдет стирание, то все биты кода этого символа становятся ошибочными (стирание).
Следовательно, с целью улучшения эффективности декодирования необходимо предотвратить ситуацию, когда переменные вершины, соответствующие битам кода одного символа, соединены с одной и той же проверочной вершиной, что нужно для уменьшения вероятности того, что в нескольких переменных вершинах (соответствующие биты кода), соединенных с одной и той же проверочной вершиной, одновременно появляется ошибка.
При этом, как описано выше, в проверочной матрице Н LDPC-кода, который подает на выход устройство 115 LDPC кодирования и который определен в стандарте DVB-S.2 или подобном, информационная матрица HA обладает циклической структурой, а матрица HT контроля четности обладает ступенчатой структурой. Как показано на фиг. 26, в преобразованной проверочной матрице, которая является проверочной матрицей LDPC-кода после выполнения разнесения битов контроля четности, циклическая структура (фактически псевдоциклическая структура, описанная выше) также появляется в матрице контроля четности.
На фиг. 27 показана преобразованная проверочная матрица.
То есть, в участке А фиг. 27 показана преобразованная проверочная матрица для проверочной матрицы Н LDPC-кода, для которого длина N кода равна 64800 битам, а скорость (r) кодирования равна 3/4.
В участке А фиг. 27 в преобразованной проверочной матрице позиция элемента, значение которого равно 1, показана точкой (.).
В участке В фиг. 27 показана обработка, осуществляемая в устройстве 25 демультиплексирования (фиг. 9) для LDPC-кода с преобразованной проверочной матрицей из участка А фиг. 27, то есть для LDPC-кода после разнесения битов контроля четности.
В участке В фиг. 27, с предположением, что способ модуляции является способом, в котором символ преобразуют в любую из 16 сигнальных точек, таким как 16-позиционная APSK и 16-позиционная QAM, биты LDPC-кода после разнесения битов контроля четности записывают в направлении столбов в четыре столбца, которые образуют память 31 устройства 25 демультиплексирования.
Биты кода, записанные в направлении столбцов в четыре столбца, которые образуют память 31, считывают в направлении строк в блоки по 4 бита, которые образуют один символ.
В этом случае биты В0, B1, В2 и В3 кода в количестве четырех штук, которые образуют один символ, могут являться битами кода, соответствующими 1, в любой одной строке преобразованной проверочной матрицей из участка А фиг. 27. В этом случае переменные вершины, соответствующие битам В0, B1, В2 и В3 кода, соединены с одной и той же проверочной вершиной.
Следовательно, когда 4 бита В0, В1, В2 и В3 кода одного символа являются битами кода, соответствующими 1 в одной произвольной строке преобразованной проверочной матрицы, и если произойдет стирание символа, то надлежащее сообщение может быть не вычислено в проверочной вершине, к которой присоединены переменные вершины, соответствующие битам В0, В1, В2 и В3 кода. В результате ухудшается эффективность декодирования.
Что касается скоростей кодирования, отличающихся от скорости кодирования, равной 3/4, несколько битов кода, соответствующих нескольким переменным вершинам, соединенным с одной и той же проверочной вершиной, могут являться одним символом APSK или 16-позиционной QAM, аналогично приведенному выше случаю.
Следовательно, в устройстве 24 прокручивания столбцов осуществляют прокручивание столбцов, при котором биты LDPC-кода после разнесения битов контроля четности, которое выполняют в устройстве 23 разнесения битов контроля четности, разносят так, что несколько битов кода, значения которых соответствуют 1 в любой одной произвольной строке преобразованной проверочной матрицы, не содержатся в одном символе.
На фиг. 28 показано прокручивание столбцов.
То есть, на фиг. 28 показана память 31 (фиг. 22 и 23) устройства 25 демультиплексирования.
Как показано на фиг. 22, емкость памяти 31 такова, что она способна хранить mb битов в направлении столбцов (продольном) и N/(mb) битов в направлении строк (поперечном) и содержит mb столбцов. В устройстве 24 прокручивания столбцов записывают биты LDPC-кода в направлении столбцов в память 31 и управляют позицией начала записи, когда биты кода считывают в направлении строк, и осуществляют прокручивание столбцов.
То есть, в устройстве 24 прокручивания столбцов подходящим образом изменяют позицию начала записи, согласно которой начинают запись битов кода для каждого из нескольких столбцов, так что несколько битов кода, которые считывают в направлении строк и которые становятся одним символом, не являются битами кода, соответствующими 1 в любой одной произвольной строке преобразованной проверочной матрицы (так перераспределяют биты LDPC-кода, что несколько битов кода, которые соответствуют 1 в любой одной произвольной строке проверочной матрицы, не входят в один и тот же символ).
В этом случае, на фиг. 28 показан пример конфигурации памяти 31, когда способом модуляции является 16-позиционная APSK или 16-позиционная QAM и множитель b, описанный на фиг. 22, равен 1. Следовательно, количество m битов LDPC-кода, становящегося одним символом, равно 4 битам и память 31 содержит 4 (=mb) столбца.
В устройстве 24 прокручивания столбцов осуществляют запись битов LDPC-кода (вместо устройства 25 демультиплексирования с фиг. 22), в направлении вниз (направлении столбцов), начиная с верхней части четырех столбцов, образующих память 31, слева по направлению к столбцам правой стороны.
Если запись битов кода заканчивают в самом правом столбце, в устройстве 24 прокручивания столбцов считывают биты кода в блоки по 4 бита (mb битов) в направлении строк, начиная с первой строки всех столбцов, которые образуют память 31, и в качестве LDPC-кода после проведения прокручивания столбцов подают на выход биты кода в блок 32 перестановки (фиг. 22 и 23) устройства 25 демультиплексирования.
Тем не менее, в устройстве 24 прокручивания столбцов, если адрес позиции верха каждого столбца установлен, равным 0, и адрес каждой позиции в направлении столбцов представляет собой увеличивающееся целое число, для самого левого столбца позицию начала записи устанавливают равной позиции, адрес которой равен 0. Для второго (с левой стороны) столбца позицию начала записи устанавливают равной позиции, адрес которой равен 2. Для третьего столбца позицию начала записи устанавливают равной позиции, адрес которой равен 4. Для четвертого столбца позицию начала записи устанавливают равной позиции, адрес которой равен 7.
Заметим, что для столбцов, в которых позиции начала записи являются позициями, отличными от позиции с адресом, равным 0, после записи битов кода в самую нижнюю позицию, позиция записи возвращается наверх (в позицию с адресом, равным 0) и запись осуществляют в позицию, непосредственно предшествующую позиции начала записи. Далее, осуществляют запись в следующий (правый) столбец.
Благодаря осуществлению описанного выше прокручивания столбцов для LDPC-кодов, которые определены в стандарте DVB-T.2 или подобных, может быть предотвращена ситуация, когда несколько битов кода, соответствующих нескольким переменным вершинам, соединенным с одной и той же проверочной вершиной, становятся одним символов APSK или 16-позиционной QAM (содержатся в одном и том же символе). В результате может быть улучшена эффективность декодирования в канале связи, в котором существуют ошибки.
На фиг. 29 показано количество столбцов памяти 31, необходимое для прокручивания столбцов, и адрес позиции начала записи для каждого способа модуляции для LDPC-кодов с одиннадцатью различными скоростями кодирования, определенными в стандарте DVB-T.2, при этом длина N кода равна 64800.
Когда множитель b равен 1, QPSK применяют в качестве способа модуляции, и количество m битов для одного символа равно 2 битам, согласно фиг. 29, память 31 содержит два столбца для хранения 2×1 (=mb) битов в направлении строк и хранит 64800/(2×1) битов в направлении столбцов.
Позиция начала записи для первого из двух столбцов памяти 31 является позицией с адресом, равным 0, а позиция начала записи для второго столбца является позицией с адресом, равным 2.
Например, когда любой один из первого - третьего способов перестановки с фиг. 22 применяют в качестве способа перестановки для процесса перестановки устройства 25 демультиплексирования (фиг. 9), множитель b равен 1.
Когда множитель b равен 2, QPSK применяют в качестве способа модуляции, и количество m битов для одного символа равно 2 битам, согласно фиг. 29, память 31 содержит четыре столбца для хранения 2×2 (=mb) битов в направлении строк и хранит 64800/(2×2) битов в направлении столбцов.
Позиция начала записи для первого из четырех столбцов памяти 31 является позицией с адресом, равным 0, позиция начала записи для второго столбца является позицией с адресом, равным 2, позиция начала записи для третьего столбца является позицией с адресом, равным 4, и позиция начала записи для четвертого столбца является позицией с адресом, равным 7.
Например, когда четвертый способ перестановки с фиг. 23 применяют в качестве способа перестановки для процесса перестановки устройства 25 демультиплексирования (фиг. 9), множитель b равен 2.
Когда множитель b равен 1, 16-позиционную QAM применяют в качестве способа модуляции, и количество m битов для одного символа равно 4 битам, согласно фиг. 29, память 31 содержит четыре столбца для хранения 4×1 (=mb) битов в направлении строк и хранит 64800/(4×1) битов в направлении столбцов.
Позиция начала записи для первого из четырех столбцов памяти 31 является позицией с адресом, равным 0, позиция начала записи для второго столбца является позицией с адресом, равным 2, позиция начала записи для третьего столбца является позицией с адресом, равным 4, и позиция начала записи для четвертого столбца является позицией с адресом, равным 7.
Когда множитель b равен 2, 16-позиционную QAM применяют в качестве способа модуляции, и количество m битов для одного символа равно 4 битам, согласно фиг. 29, память 31 содержит восемь столбцов для хранения 4×2 (=mb) битов в направлении строк и хранит 64800/(4×2) битов в направлении столбцов.
Позиция начала записи для первого из восьми столбцов памяти 31 является позицией с адресом, равным 0, позиция начала записи для второго столбца является позицией с адресом, равным 0, позиция начала записи для третьего столбца является позицией с адресом, равным 2, позиция начала записи для четвертого столбца является позицией с адресом, равным 4, позиция начала записи для пятого столбца является позицией с адресом, равным 4, позиция начала записи для шестого столбца является позицией с адресом, равным 5, позиция начала записи для седьмого столбца является позицией с адресом, равным 7, и позиция начала записи для восьмого столбца является позицией с адресом, равным 7.
Когда множитель b равен 1, 64-позиционную QAM применяют в качестве способа модуляции, и количество m битов для одного символа равно 6 битам, согласно фиг. 29, память 31 содержит шесть столбцов для хранения 6×1 (=mb) битов в направлении строк и хранит 64800/(6×1) битов в направлении столбцов.
Позиция начала записи для первого из шести столбцов памяти 31 является позицией с адресом, равным 0, позиция начала записи для второго столбца является позицией с адресом, равным 2, позиция начала записи для третьего столбца является позицией с адресом, равным 5, позиция начала записи для четвертого столбца является позицией с адресом, равным 9, позиция начала записи для пятого столбца является позицией с адресом, равным 10, и позиция начала записи для шестого столбца является позицией с адресом, равным 13.
Когда множитель b равен 2, 64-позиционную QAM применяют в качестве способа модуляции, и количество m битов для одного символа равно 6 битам, согласно фиг. 29, память 31 содержит двенадцать столбцов для хранения 6×2 (=mb) битов в направлении строк и хранит 64800/(6×2) битов в направлении столбцов.
Позиция начала записи для первого из двенадцати столбцов памяти 31 является позицией с адресом, равным 0, позиция начала записи для второго столбца является позицией с адресом, равным 0, позиция начала записи для третьего столбца является позицией с адресом, равным 2, позиция начала записи для четвертого столбца является позицией с адресом, равным 2, позиция начала записи для пятого столбца является позицией с адресом, равным 3, позиция начала записи для шестого столбца является позицией с адресом, равным 4, позиция начала записи для седьмого столбца является позицией с адресом, равным 4, позиция начала записи для восьмого столбца является позицией с адресом, равным 5, позиция начала записи для девятого столбца является позицией с адресом, равным 5, позиция начала записи для десятого столбца является позицией с адресом, равным 7, позиция начала записи для одиннадцатого столбца является позицией с адресом, равным 8, и позиция начала записи для двенадцатого столбца является позицией с адресом, равным 9.
Когда множитель b равен 1, 256-позиционную QAM применяют в качестве способа модуляции, и количество m битов для одного символа равно 8 битам, согласно фиг. 29, память 31 содержит восемь столбцов для хранения 8×1 (=mb) битов в направлении строк и хранит 64800/(8×2) битов в направлении столбцов.
Позиция начала записи для первого из восьми столбцов памяти 31 является позицией с адресом, равным 0, позиция начала записи для второго столбца является позицией с адресом, равным 0, позиция начала записи для третьего столбца является позицией с адресом, равным 2, позиция начала записи для четвертого столбца является позицией с адресом, равным 4, позиция начала записи для пятого столбца является позицией с адресом, равным 4, позиция начала записи для шестого столбца является позицией с адресом, равным 5, позиция начала записи для седьмого столбца является позицией с адресом, равным 7, и позиция начала записи для восьмого столбца является позицией с адресом, равным 7.
Когда множитель b равен 2, 256-позиционную QAM применяют в качестве способа модуляции, и количество m битов для одного символа равно 8 битам, согласно фиг. 29, память 31 содержит шестнадцать столбцов для хранения 8×2 (=mb) битов в направлении строк и хранит 64800/(8×2) битов в направлении столбцов.
Позиция начала записи для первого из шестнадцати столбцов памяти 31 является позицией с адресом, равным 0, позиция начала записи для второго столбца является позицией с адресом, равным 2, позиция начала записи для третьего столбца является позицией с адресом, равным 2, позиция начала записи для четвертого столбца является позицией с адресом, равным 2, позиция начала записи для пятого столбца является позицией с адресом, равным 2, позиция начала записи для шестого столбца является позицией с адресом, равным 3, позиция начала записи для седьмого столбца является позицией с адресом, равным 7, позиция начала записи для восьмого столбца является позицией с адресом, равным 15, позиция начала записи для девятого столбца является позицией с адресом, равным 16, позиция начала записи для десятого столбца является позицией с адресом, равным 20, позиция начала записи для одиннадцатого столбца является позицией с адресом, равным 22, позиция начала записи для двенадцатого столбца является позицией с адресом, равным 22, позиция начала записи для тринадцатого столбца является позицией с адресом, равным 27, позиция начала записи для четырнадцатого столбца является позицией с адресом, равным 27, позиция начала записи для пятнадцатого столбца является позицией с адресом, равным 28, и позиция начала записи для шестнадцатого столбца является позицией с адресом, равным 32.
Когда множитель b равен 1, 1024-позиционную QAM применяют в качестве способа модуляции, и количество m битов для одного символа равно 10 битам, согласно фиг. 29, память 31 содержит десять столбцов для хранения 10×1 (=mb) битов в направлении строк и хранит 64800/(10×1) битов в направлении столбцов.
Позиция начала записи для первого из десяти столбцов памяти 31 является позицией с адресом, равным 0, позиция начала записи для второго столбца является позицией с адресом, равным 3, позиция начала записи для третьего столбца является позицией с адресом, равным 6, позиция начала записи для четвертого столбца является позицией с адресом, равным 8, позиция начала записи для пятого столбца является позицией с адресом, равным 11, позиция начала записи для шестого столбца является позицией с адресом, равным 13, позиция начала записи для седьмого столбца является позицией с адресом, равным 15, позиция начала записи для восьмого столбца является позицией с адресом, равным 17, позиция начала записи для девятого столбца является позицией с адресом, равным 18, и позиция начала записи для десятого столбца является позицией с адресом, равным 20.
Когда множитель b равен 2, 1024-позиционную QAM применяют в качестве способа модуляции, и количество m битов для одного символа равно 10 битам, согласно фиг. 29, память 31 содержит двадцать столбцов для хранения 10×2 (=mb) битов в направлении строк и хранит 64800/(10×2) битов в направлении столбцов.
Позиция начала записи для первого из двадцати столбцов памяти 31 является позицией с адресом, равным 0, позиция начала записи для второго столбца является позицией с адресом, равным 1, позиция начала записи для третьего столбца является позицией с адресом, равным 3, позиция начала записи для четвертого столбца является позицией с адресом, равным 4, позиция начала записи для пятого столбца является позицией с адресом, равным 5, позиция начала записи для шестого столбца является позицией с адресом, равным 6, позиция начала записи для седьмого столбца является позицией с адресом, равным 6, позиция начала записи для восьмого столбца является позицией с адресом, равным 9, позиция начала записи для девятого столбца является позицией с адресом, равным 13, позиция начала записи для десятого столбца является позицией с адресом, равным 14, позиция начала записи для одиннадцатого столбца является позицией с адресом, равным 14, позиция начала записи для двенадцатого столбца является позицией с адресом, равным 16, позиция начала записи для тринадцатого столбца является позицией с адресом, равным 21, позиция начала записи для четырнадцатого столбца является позицией с адресом, равным 21, позиция начала записи для пятнадцатого столбца является позицией с адресом, равным 23, позиция начала записи для шестнадцатого столбца является позицией с адресом, равным 25, позиция начала записи для семнадцатого столбца является позицией с адресом, равным 25, позиция начала записи для восемнадцатого столбца является позицией с адресом, равным 26, позиция начала записи для девятнадцатого столбца является позицией с адресом, равным 28, и позиция начала записи для двадцатого столбца является позицией с адресом, равным 30.
Когда множитель b равен 1, 4096-позиционную QAM применяют в качестве способа модуляции, и количество m битов для одного символа равно 12 битам, согласно фиг. 29, память 31 содержит двенадцать столбцов для хранения 12×1 (=mb) битов в направлении строк и хранит 64800/(12×1) битов в направлении столбцов.
Позиция начала записи для первого из двенадцати столбцов памяти 31 является позицией с адресом, равным 0, позиция начала записи для второго столбца является позицией с адресом, равным 0, позиция начала записи для третьего столбца является позицией с адресом, равным 2, позиция начала записи для четвертого столбца является позицией с адресом, равным 2, позиция начала записи для пятого столбца является позицией с адресом, равным 3, позиция начала записи для шестого столбца является позицией с адресом, равным 4, позиция начала записи для седьмого столбца является позицией с адресом, равным 4, позиция начала записи для восьмого столбца является позицией с адресом, равным 5, позиция начала записи для девятого столбца является позицией с адресом, равным 5, позиция начала записи для десятого столбца является позицией с адресом, равным 7, позиция начала записи для одиннадцатого столбца является позицией с адресом, равным 8, и позиция начала записи для двенадцатого столбца является позицией с адресом, равным 9.
Когда множитель b равен 2, 4096-позиционную QAM применяют в качестве способа модуляции, и количество m битов для одного символа равно 12 битам, согласно фиг. 29, память 31 содержит двадцать четыре столбца для хранения 12×2 (=mb) битов в направлении строк и хранит 64800/(12×2) битов в направлении столбцов.
Позиция начала записи для первого из двадцати четырех столбцов памяти 31 является позицией с адресом, равным 0, позиция начала записи для второго столбца является позицией с адресом, равным 5, позиция начала записи для третьего столбца является позицией с адресом, равным 8, позиция начала записи для четвертого столбца является позицией с адресом, равным 8, позиция начала записи для пятого столбца является позицией с адресом, равным 8, позиция начала записи для шестого столбца является позицией с адресом, равным 8, позиция начала записи для седьмого столбца является позицией с адресом, равным 10, позиция начала записи для восьмого столбца является позицией с адресом, равным 10, позиция начала записи для девятого столбца является позицией с адресом, равным 10, позиция начала записи для десятого столбца является позицией с адресом, равным 12, позиция начала записи для одиннадцатого столбца является позицией с адресом, равным 13, позиция начала записи для двенадцатого столбца является позицией с адресом, равным 16, позиция начала записи для тринадцатого столбца является позицией с адресом, равным 17, позиция начала записи для четырнадцатого столбца является позицией с адресом, равным 19, позиция начала записи для пятнадцатого столбца является позицией с адресом, равным 21, позиция начала записи для шестнадцатого столбца является позицией с адресом, равным 22, позиция начала записи для семнадцатого столбца является позицией с адресом, равным 23, позиция начала записи для восемнадцатого столбца является позицией с адресом, равным 26, позиция начала записи для девятнадцатого столбца является позицией с адресом, равным 37, позиция начала записи для двадцатого столбца является позицией с адресом, равным 39, позиция начала записи для двадцать первого столбца является позицией с адресом, равным 40, позиция начала записи для двадцать второго столбца является позицией с адресом, равным 41, позиция начала записи для двадцать третьего столбца является позицией с адресом, равным 41, и начала записи для двадцать четвертого столбца является позицией с адресом, равным 41.
На фиг. 30 показано количество столбцов памяти 31, необходимое для прокручивания столбцов, и адрес позиции начала записи для каждого способа модуляции для LDPC-кодов с 10 различными скоростями кодирования, определенными в стандарте DVB-T.2, при этом длина N кода равна 16200.
Когда множитель b равен 1, QPSK применяют в качестве способа модуляции, и количество m битов для одного символа равно 2 битам, согласно фиг. 30, память 31 содержит два столбца для хранения 2×1 (=mb) битов в направлении строк и хранит 16200/(2×1) битов в направлении столбцов.
Позиция начала записи для первого из двух столбцов памяти 31 является позицией с адресом, равным 0, а позиция начала записи для второго столбца является позицией с адресом, равным 0.
Когда множитель b равен 2, QPSK применяют в качестве способа модуляции, и количество m битов для одного символа равно 2 битам, согласно фиг. 30, память 31 содержит четыре столбца для хранения 2×2 (=mb) битов в направлении строк и хранит 16200/(2×2) битов в направлении столбцов.
Позиция начала записи для первого из четырех столбцов памяти 31 является позицией с адресом, равным 0, позиция начала записи для второго столбца является позицией с адресом, равным 2, позиция начала записи для третьего столбца является позицией с адресом, равным 3, и позиция начала записи для четвертого столбца является позицией с адресом, равным 3.
Когда множитель b равен 1, 16-позиционную QAM применяют в качестве способа модуляции, и количество m битов для одного символа равно 4 битам, согласно фиг. 30, память 31 содержит четыре столбца для хранения 4×1 (=mb) битов в направлении строк и хранит 16200/(4×1) битов в направлении столбцов.
Позиция начала записи для первого из четырех столбцов памяти 31 является позицией с адресом, равным 0, позиция начала записи для второго столбца является позицией с адресом, равным 2, позиция начала записи для третьего столбца является позицией с адресом, равным 3, и позиция начала записи для четвертого столбца является позицией с адресом, равным 3.
Когда множитель b равен 2, 16-позиционную QAM применяют в качестве способа модуляции, и количество m битов для одного символа равно 4 битам, согласно фиг. 30, память 31 содержит восемь столбцов для хранения 4×2 (=mb) битов в направлении строк и хранит 16200/(4×2) битов в направлении столбцов.
Позиция начала записи для первого из восьми столбцов памяти 31 является позицией с адресом, равным 0, позиция начала записи для второго столбца является позицией с адресом, равным 0, позиция начала записи для третьего столбца является позицией с адресом, равным 0, позиция начала записи для четвертого столбца является позицией с адресом, равным 1, позиция начала записи для пятого столбца является позицией е адресом, равным 7, позиция начала записи для шестого столбца является позицией с адресом, равным 20, позиция начала записи для седьмого столбца является позицией с адресом, равным 20, и позиция начала записи для восьмого столбца является позицией с адресом, равным 21.
Когда множитель b равен 1, 64-позиционную QAM применяют в качестве способа модуляции, и количество m битов для одного символа равно 6 битам, согласно фиг. 30, память 31 содержит шесть столбцов для хранения 6×1 (=mb) битов в направлении строк и хранит 16200/(6×1) битов в направлении столбцов.
Позиция начала записи для первого из шести столбцов памяти 31 является позицией с адресом, равным 0, позиция начала записи для второго столбца является позицией с адресом, равным 0, позиция начала записи для третьего столбца является позицией с адресом, равным 2, позиция начала записи для четвертого столбца является позицией с адресом, равным 3, позиция начала записи для пятого столбца является позицией с адресом, равным 7, и позиция начала записи для шестого столбца является позицией с адресом, равным 7.
Когда множитель b равен 2, 64-позиционную QAM применяют в качестве способа модуляции, и количество m битов для одного символа равно 6 битам, согласно фиг. 30, память 31 содержит двенадцать столбцов для хранения 6×2 (=mb) битов в направлении строк и хранит 16200/(6×2) битов в направлении столбцов.
Позиция начала записи для первого из двенадцати столбцов памяти 31 является позицией с адресом, равным 0, позиция начала записи для второго столбца является позицией с адресом, равным 0, позиция начала записи для третьего столбца является позицией с адресом, равным 0, позиция начала записи для четвертого столбца является позицией с адресом, равным 2, позиция начала записи для пятого столбца является позицией с адресом, равным 2, позиция начала записи для шестого столбца является позицией с адресом, равным 2, позиция начала записи для седьмого столбца является позицией с адресом, равным 3, позиция начала записи для восьмого столбца является позицией с адресом, равным 3, позиция начала записи для девятого столбца является позицией с адресом, равным 3, позиция начала записи для десятого столбца является позицией с адресом, равным 6, позиция начала записи для одиннадцатого столбца является позицией с адресом, равным 7, и позиция начала записи для двенадцатого столбца является позицией с адресом, равным 7.
Когда множитель b равен 1, 256-позиционную QAM применяют в качестве способа модуляции, и количество m битов для одного символа равно 8 битам, согласно фиг. 30, память 31 содержит восемь столбцов для хранения 8×1 (=mb) битов в направлении строк и хранит 16200/(8×1) битов в направлении столбцов.
Позиция начала записи для первого из восьми столбцов памяти 31 является позицией с адресом, равным 0, позиция начала записи для второго столбца является позицией с адресом, равным 0, позиция начала записи для третьего столбца является позицией с адресом, равным 0, позиция начала записи для четвертого столбца является позицией с адресом, равным 1, позиция начала записи для пятого столбца является позицией с адресом, равным 7, позиция начала записи для шестого столбца является позицией с адресом, равным 20, позиция начала записи для седьмого столбца является позицией с адресом, равным 20, и позиция начала записи для восьмого столбца является позицией с адресом, равным 21.
Когда множитель b равен 1, 1024-позиционную QAM применяют в качестве способа модуляции, и количество m битов для одного символа равно 10 битам, согласно фиг. 30, память 31 содержит десять столбцов для хранения 10×1 (=mb) битов в направлении строк и хранит 16200/(10×1) битов в направлении столбцов.
Позиция начала записи для первого из десяти столбцов памяти 31 является позицией с адресом, равным 0, позиция начала записи для второго столбца является позицией с адресом, равным 1, позиция начала записи для третьего столбца является позицией с адресом, равным 2, позиция начала записи для четвертого столбца является позицией с адресом, равным 2, позиция начала записи для пятого столбца является позицией с адресом, равным 3, позиция начала записи для шестого столбца является позицией с адресом, равным 3, позиция начала записи для седьмого столбца является позицией с адресом, равным 4, позиция начала записи для восьмого столбца является позицией с адресом, равным 4, позиция начала записи для девятого столбца является позицией с адресом, равным 5, и позиция начала записи для десятого столбца является позицией с адресом, равным 7.
Когда множитель b равен 2, 1024-позиционную QAM применяют в качестве способа модуляции, и количество m битов для одного символа равно 10 битам, согласно фиг. 30, память 31 содержит двадцать столбцов для хранения 10×2 (=mb) битов в направлении строк и хранит 16200/(10×2) битов в направлении столбцов.
Позиция начала записи для первого из двадцати столбцов памяти 31 является позицией с адресом, равным 0, позиция начала записи для второго столбца является позицией с адресом, равным 0, позиция начала записи для третьего столбца является позицией с адресом, равным 0, позиция начала записи для четвертого столбца является позицией с адресом, равным 2, позиция начала записи для пятого столбца является позицией с адресом, равным 2, позиция начала записи для шестого столбца является позицией с адресом, равным 2, позиция начала записи для седьмого столбца является позицией с адресом, равным 2, позиция начала записи для восьмого столбца является позицией с адресом, равным 2, позиция начала записи для девятого столбца является позицией с адресом, равным 5, позиция начала записи для десятого столбца является позицией с адресом, равным 5, позиция начала записи для одиннадцатого столбца является позицией с адресом, равным 5, позиция начала записи для двенадцатого столбца является позицией с адресом, равным 5, позиция начала записи для тринадцатого столбца является позицией с адресом, равным 5, позиция начала записи для четырнадцатого столбца является позицией с адресом, равным 7, позиция начала записи для пятнадцатого столбца является позицией с адресом, равным 7, позиция начала записи для шестнадцатого столбца является позицией с адресом, равным 7, позиция начала записи для семнадцатого столбца является позицией с адресом, равным 7, позиция начала записи для восемнадцатого столбца является позицией с адресом, равным 8, позиция начала записи для девятнадцатого столбца является позицией с адресом, равным 8, и позиция начала записи для двадцатого столбца является позицией с адресом, равным 10.
Когда множитель b равен 1, 4096-позиционную QAM применяют в качестве способа модуляции, и количество m битов для одного символа равно 12 битам, согласно фиг. 30, память 31 содержит двенадцать столбцов для хранения 12×1 (=mb) битов в направлении строк и хранит 16200/(12×1) битов в направлении столбцов.
Позиция начала записи для первого из двенадцати столбцов памяти 31 является позицией с адресом, равным 0, позиция начала записи для второго столбца является позицией с адресом, равным 0, позиция начала записи для третьего столбца является позицией с адресом, равным 0, позиция начала записи для четвертого столбца является позицией с адресом, равным 2, позиция начала записи для пятого столбца является позицией с адресом, равным 2, позиция начала записи для шестого столбца является позицией с адресом, равным 2, позиция начала записи для седьмого столбца является позицией с адресом, равным 3, позиция начала записи для восьмого столбца является позицией с адресом, равным 3, позиция начала записи для девятого столбца является позицией с адресом, равным 3, позиция начала записи для десятого столбца является позицией с адресом, равным 6, позиция начала записи для одиннадцатого столбца является позицией с адресом, равным 7, и позиция начала записи для двенадцатого столбца является позицией с адресом, равным 7.
Когда множитель b равен 2, 4096-позиционную QAM применяют в качестве способа модуляции, и количество m битов для одного символа равно 12 битам, согласно фиг. 30, память 31 содержит двадцать четыре столбца для хранения 12×2 (=mb) битов в направлении строк охранит 16200/(12×2) битов в направлении столбцов.
Позиция начала записи для первого из двадцати четырех столбцов памяти 31 является позицией с адресом, равным 0, позиция начала записи для второго столбца является позицией с адресом, равным 0, позиция начала записи для третьего столбца является позицией с адресом, равным 0, позиция начала записи для четвертого столбца является позицией с адресом, равным 0, позиция начала записи для пятого столбца является позицией с адресом, равным 0, позиция начала записи для шестого столбца является позицией с адресом, равным 0, позиция начала записи для седьмого столбца является позицией с адресом, равным 0, позиция начала записи для восьмого столбца является позицией с адресом, равным 1, позиция начала записи для девятого столбца является позицией с адресом, равным 1, позиция начала записи для десятого столбца является позицией с адресом, равным 1, позиция начала записи для одиннадцатого столбца является позицией с адресом, равным 2, позиция начала записи для двенадцатого столбца является позицией с адресом, равным 2, позиция начала записи для тринадцатого столбца является позицией с адресом, равным 2, позиция начала записи для четырнадцатого столбца является позицией с адресом, равным 3, позиция начала записи для пятнадцатого столбца является позицией с адресом, равным 7, позиция начала записи для шестнадцатого столбца является позицией с адресом, равным 9, позиция начала записи для семнадцатого столбца является позицией с адресом, равным 9, позиция начала записи для восемнадцатого столбца является позицией с адресом, равным 9, позиция начала записи для девятнадцатого столбца является позицией с адресом, равным 10, позиция начала записи для двадцатого столбца является позицией с адресом, равным 10, позиция начала записи для двадцать первого столбца является позицией с адресом, равным 10, позиция начала записи для двадцать второго столбца является позицией с адресом, равным 10, позиция начала записи для двадцать третьего столбца является позицией с адресом, равным 10, и начала записи для двадцать четвертого столбца является позицией с адресом, равным 11.
На фиг. 31 показана блок-схема, иллюстрирующая процесс обработки, осуществляемый в устройстве 115 LDPC кодирования, устройстве 116 разнесения битов и устройстве 117 преобразования с фиг. 8.
В устройстве 115 LDPC кодирования ожидают подачи целевых данных LDPC из устройства 121 ВСН кодирования. На этапе S101 в устройстве 115 LDPC кодирования кодируют целевые данные LDPC с помощью LDPC-кода и подают LDPC-код в устройство 116 разнесения битов. Обработка продолжается на этапе S102.
На этапе S102 в устройстве 116 разнесения битов осуществляют разнесение битов для LDPC-кода, поданного из устройства 115 LDPC кодирования, и подают в устройство 117 преобразования символ, полученный после преобразования в символьный вид LDPC-кода после разнесения битов. Обработка продолжается на этапе S103.
То есть, на этапе S102 в устройстве 116 разнесения битов (фиг. 9), в устройстве 23 разнесения битов контроля четности осуществляют разнесение битов контроля четности для LDPC-кода, поданного из устройства 115 LDPC кодирования, и подают LDPC-код после разнесения битов контроля четности в устройство 24 прокручивания столбцов.
В устройстве 24 прокручивания столбцов осуществляют прокручивание столбцов для LDPC-кода, поданного из устройства 23 разнесения битов контроля четности, и подают LDPC-код в устройство 25 демультиплексирования.
В устройстве 25 демультиплексирования осуществляют процесс перестановки, заключающийся в перестановке битов LDPC-кода после прокручивания столбцов, которое осуществляют в устройстве 24 прокручивания столбцов, и преобразовании битов кода после перестановки в биты символов (биты, образующие символ).
Здесь процесс перестановки, осуществляемый в устройстве 25 демультиплексирования, может быть осуществлен в соответствии с первым - четвертым способами перестановки, показанными на фиг. 22 и фиг. 23 и, более того, упомянутый процесс может быть осуществлен в соответствии с другими способами перестановки.
Символ, полученный в ходе процесса перестановки, осуществляемого в устройстве 25 демультиплексирования, подают из устройства 25 демультиплексирования в устройство 117 преобразования.
На этапе S103 в устройстве 117 преобразования преобразуют символ, поданный из устройства 25 демультиплексирования, в сигнальную точку, определенную способом ортогональной модуляции, что осуществляют в устройстве 117 преобразования, и подают полученные в результате данные в устройство 118 временного уплотнения.
Как описано выше, осуществляют разнесение битов контроля четности или прокручивание столбцов, так что может быть улучшена устойчивость к ошибке стирания или к пакетной ошибке при передаче нескольких битов LDPC-кода как одного символа.
На фиг. 9 на удобства описания отдельно изображены устройство 23 разнесения битов контроля четности, являющееся блоком для осуществления разнесения битов контроля четности, и устройство 24 прокручивания столбцов, являющееся блоком для осуществления прокручивания столбцов. Тем не менее, устройство 23 разнесения битов контроля четности и устройство 24 прокручивания столбцов могут быть выполнены как единое целое.
То есть, как разнесение битов контроля четности, так и прокручивание столбцов могут быть осуществлены путем записи битов кода в память и считывания битов кода из нее и могут быть представлены матрицей для преобразования адресов (адресов записи), в которые необходимо осуществлять запись битов кода, и адресов (адресов считывания), из которых необходимо осуществлять считывание битов кода.
Следовательно, если вычислить матрицу, полученную умножением матрицы, представляющей разнесение битов контроля четности, и матрицы, представляющей прокручивание столбцов, биты кода преобразовать с помощью указанной матрицы, то может быть получен результат, заключающийся в осуществлении разнесения битов контроля четности и прокручивании столбцов LDPC-кода после прокручивания столбцов.
Помимо устройства 23 разнесения битов контроля четности и устройства 24 прокручивания столбцов можно устройство 25 демультиплексирования выполнить как единое целое с указанными устройствами.
То есть, процесс перестановки, осуществляемый в устройстве 25 демультиплексирования, может быть представлен матрицей, предназначенной для преобразования адреса записи из памяти 31, хранящей LDPC-код, в адрес считывания.
Следовательно, если вычисляют матрицу, полученную умножением матрицы, представляющей разнесение битов контроля четности, матрицы, представляющей прокручивание столбцов, и матрицы, представляющей процесс перестановки, то разнесение битов контроля четности, прокручивание столбцов и процесс перестановки могут быть осуществлены вместе с помощью этой матрицы.
Может быть осуществлено или только разнесение битов контроля четности или только прокручивание столбцов или может быть осуществлено и разнесение битов контроля четности и прокручивание столбцов. Например, аналогично DVB-S.2, в случае, когда канал 13 связи (фиг. 7) является спутниковой схемой или подобным каналом, который отличается от AWGN и для которого не нужно сильно обращать внимание на пакетную ошибку и дрожание и так далее, возможно не осуществлять разнесение битов контроля четности и прокручивание столбцов.
Далее, моделирование для измерения частоты появления ошибок (частота появления ошибочных битов), которое осуществляют для устройства 11 передачи с фиг. 8, будет описано со ссылками на фиг. 32-34.
Моделирование осуществляют с применением канала связи, в котором существует дрожание, для которого отношение сигнал/шум равно 0 дБ.
На фиг. 32 показана модель канала связи, примененного при моделировании.
То есть, в участке А фиг. 32 показана модель дрожания, примененного при моделировании.
Кроме того, в участке В фиг. 32 показана модель канала связи с дрожанием, представленным моделью из участка А фиг. 32.
В участке В фиг. 32 через Н обозначена модель дрожания из участка А фиг. 32. В участке В фиг. 32 через N обозначены ICI (межнесущие искажения). При моделировании математическое ожидание E[N2] мощности приближено AWGN.
На фиг. 33 и 34 показаны взаимосвязи частоты появления ошибок, полученной при моделировании, и доплеровской частоты fd дрожания.
На фиг. 33 показана взаимосвязь частоты появления ошибок и доплеровской частоты fd, когда в качестве способа модуляции используют 16-позиционную QAM, скорость (r) кодирования равна (3/4) и способом перестановки является первый способ перестановки. На фиг. 34 показана взаимосвязь частоты появления ошибок и доплеровской частоты fd, когда в качестве способа модуляции используют 64-позиционную QAM, скорость (r) кодирования равна (5/6) и способом перестановки является первый способ перестановки.
На фиг. 33 и 34 толстая линия показывает взаимосвязь частоты появления ошибок и доплеровской частоты fd, когда осуществляют разнесение битов контроля четности, прокручивание столбцов и процесс перестановки, а тонкая линия показывает взаимосвязь частоты появления ошибок и доплеровской частоты fd, когда из процессов разнесения битов контроля четности, прокручивания столбцов и процесса перестановки осуществляют только процесс перестановки.
Из фиг. 33 и 34 можно понять, что частота появления ошибок дополнительно улучшается (уменьшается) когда осуществляют и разнесение битов контроля четности и прокручивание столбцов и процесс перестановки, а не когда осуществляют только процесс перестановки.
<Пример конфигурации устройства 115 LDPC кодирования>
На фиг. 35 показана структурная схема, иллюстрирующая пример конфигурации устройства 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 и 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 установки скорости кодирования.
В блоке 613 выработки проверочной матрицы на основе таблицы исходных значений для проверочной матрицы, считанной в блоке 612 считывания таблицы исходных значений, вырабатывают проверочную матрицу Н путем расположения элементов со значением 1 информационной матрицы НA, соответствующей информационной длине К (= длина N кода - длина М четности) в соответствии с длиной N кода и скоростью кодирования, которая установлена в блоке 611 установки скорости кодирования, в направлении столбцов с периодом, равным 360 столбцам (количество Р столбцов в блоке циклической структуры), и сохраняют проверочную матрицу Н в блоке 602 хранения.
В блоке 614 считывания информационных битов осуществляют считывание (извлекают) информационные биты, соответствующие информационной длине К, из целевых данных LDPC, поданных в устройство 115 LDPC кодирования.
В блоке 615 обработки битов контроля четности при кодировании считывают проверочную матрицу Н, выработанную в блоке 613 выработки проверочной матрицы, из блока 602 хранения и на основе заранее заданного выражения с использованием проверочной матрицы Н вырабатывают кодовое слово (LDPC-код), что делают путем вычисления битов контроля четности для информационных битов, считанных в части 614 считывания информационных битов.
В блоке 616 управления управляют каждым блоком, который входит в состав блока 601 кодирования.
В блоке 602 хранения сохраняют несколько таблиц исходных значений для проверочной матрицы, которые соответствуют нескольким скоростям кодирования, показанным на фиг. 12 и 13, для длин N кода, равных 64800 битам и 16200 битам. Кроме того, в блоке 602 хранения на временной основе сохраняют данные, необходимые для обработки, осуществляемой в блоке 601 кодирования.
На фиг. 36 показана блок-схема, иллюстрирующая процесс обработки, осуществляемый в устройстве 115 LDPC кодирования с фиг. 35.
На этапе S201 в блоке 611 установки скорости кодирования определяют (устанавливают) длину N кода и скорость r кодирования для осуществления LDPC кодирования.
На этапе S202 в блоке 612 считывания таблицы исходных значений из блока 602 хранения считывают ранее определенную таблицу исходных значений для проверочной матрицы, которая соответствует длине N кода и скорости r кодирования, которые были определены в блоке 611 установки скорости кодирования.
На этапе S203 в блоке 613 выработки проверочной матрицы вычисляют (вырабатывают) проверочную матрицу Н LDPC-кода, для которого длину N кода и скорость r кодирования определили в блоке 611 установки скорости кодирования, что делают с использованием таблицы исходных значений для проверочной матрицы, которую в блоке 612 считывания таблицы исходных значений считывают из блока 602 хранения, и подают проверочную матрицу в блок 602 хранения и сохраняют проверочную матрицу в блоке хранения.
На этапе S204 в блоке 614 считывания информационных битов считывают информационные биты в соответствии с информационной длиной K (=N×r), которая соответствует длине N кода и скорости r кодирования, которые определили в блоке 611 установки скорости кодирования, из целевых данных LDPC, поданных в устройство 115 LDPC кодирования, считывают проверочную матрицу Н, вычисленную в блоке 613 выработки проверочной матрицы, из блока 602 хранения и подают информационные биты и проверочную матрицу в блок 615 обработки битов контроля четности при кодировании.
На этапе S205 в блоке 615 обработки битов контроля четности при кодировании последовательно обрабатывают биты контроля четности кодового слова с, которое удовлетворяет равенству (8), что делают с использованием информационных битов и проверочной матрицы Н, считанных из блока 614 считывания информационных битов.
В равенстве (8) через с обозначена вектор-строка, представляющая кодовое слово (LDPC-код), а через cT обозначена транспонированная вектор-строка с.
Как описано выше, когда в рамках вектор-строки с, являющейся LDPC-кодом (одно кодовое слово), часть, соответствующая информационным битам, представлена вектор-строкой А, а часть, соответствующая битам контроля четности, представлена вектор-строкой Т, вектор-строка с может быть представлена равенством , где вектор-строка А представляет информационные биты, а вектор-строка Т представляет биты контроля четности.
Для проверочной матрицы Н и вектор-строки , соответствующей LDPC-коду, необходимо, чтобы выполнялось равенство HcT=0. Вектор-строка Т, которая соответствует битам контроля четности, содержащимся в вектор-строке , которая удовлетворяет равенству HcT=0, может быть последовательно вычислена путем присвоения элементам каждой строки 0, что делают последовательно от элементов первой строки вектор-столбца HcT из равенства HcT=0, где матрица HT контроля четности проверочной матрицы имеет ступенчатую структуру, показанную на фиг. 11.
Если в блоке 615 обработки битов контроля четности при кодировании определяют биты Т контроля четности для информационных битов А из блока 614 считывания информационных битов, то в качестве результата LDPC кодирования информационных битов А на выход подают кодовое слово, содержащее информационные биты А и биты Т контроля четности.
Далее, на этапе S206 в блоке 616 управления определяют, заканчивается ли LDPC кодирование. Когда на этапе S206 определяют, что LDPC кодирование не заканчивается, то есть когда существуют целевые данные LDPC для выполнения LDPC кодирования, обработка возвращается на этап S201 (или этап S204). Далее повторяют обработку с этапов S201 (или этапа S204) - S206.
Когда на этапе S206 определяют, что LDPC кодирование заканчивается, то есть когда не существует целевых данных LDPC для выполнения LDPC кодирования, в устройстве 115 LDPC кодирования заканчивают обработку.
Как описано выше, для каждой длины N кода и скорости r кодирования подготовлена таблица исходных значений для проверочной матрицы, и в устройстве 115 LDPC кодирования осуществляют LDPC кодирование для заранее заданной длины N кода и скорости r кодирования, при этом используют проверочную матрицу Н, полученную из таблицы исходных значений для проверочной матрицы, соответствующей заранее заданной длине N кода и заранее заданной скорости r кодирования.
<Пример таблицы исходных значений для проверочной матрицы>
Таблица исходных значений для проверочной матрицы представляет собой таблицу, в которой содержатся позиции элементов, равных 1, информационной матрицы HA (фиг. 10) проверочной матрицы Н, которая соответствует информационной длине К, соответствующей длине N кода и скорости r кодирования LDPC-кода (LDPC-код, определенный проверочной матрицей Н) для каждых 360 столбцов (количество Р столбцов в блоке циклической структуры), и указанную таблицу исходных значений для проверочной матрицы получают заранее для каждой проверочной матрицы Н для каждой длины N кода и каждой скорости r кодирования.
На фиг. 37 показан пример таблицы исходных значений для проверочной матрицы.
То есть, на фиг. 37 показана таблица исходных значений для проверочной матрицы Н, определенной в стандарте DVB-T.2, при этом длина N кода равна 16200 битам, а скорость r кодирования (скорость кодирования для стандарта DVB-T.2) равна 1/4.
В блоке 613 выработки проверочной матрицы (фиг. 35) вычисляют проверочную матрицу Н с использованием таблицы исходных значений для проверочной матрицы следующим образом.
На фиг. 38 показан способ вычисления проверочной матрицы Н по таблице исходных значений для проверочной матрицы.
То есть, на фиг. 38 показана таблица исходных значений для проверочной матрицы Н, определенной в стандарте DVB-T.2, при этом длина N кода равна 16200 битам, а скорость r кодирования равна 2/3.
Как описано выше, таблица исходных значений для проверочной матрицы представляет собой таблицу, в которой содержатся позиции элементов, равных 1, информационной матрицы HA (фиг. 10), соответствующей информационной длине K, соответствующей длине N кода и скорости r кодирования LDPC-кода для каждых 360 столбцов (количество Р столбцов в блоке циклической структуры). В i-й строке указанной матрицы номера строк (номера строк, когда номер первой строки проверочной матрицы Н установлен равным 0) элементов, равных 1 в (1+360×(i-1)-м столбце проверочной матрицы Н, упорядочены по величине весов столбцов (1+360×(i-1)-го столбца.
В этом случае, так как матрица HT контроля четности (фиг. 10) проверочной матрицы Н, которая соответствует длине М контроля четности, определена так, как показано на фиг. 25, в соответствии с таблицей исходных значений для проверочной матрицы, то вычисляют информационную матрицу HA (фиг. 10) проверочной матрицы Н, которая соответствует информационной длине К.
Количество k+1 строк таблицы исходных значений для проверочной матрицы различается в зависимости от информационной длины К.
Взаимосвязь из равенства (9) выполняется для информационной длины K и количества k+1 строк таблицы исходных значений для проверочной матрицы.
В этом случае 360 в равенстве (9) представляет собой количество Р столбцов в блоке циклической структуры с фиг. 26.
В таблице исходных значений для проверочной матрицы с фиг. 38, 13 числовых значений расположены в первых трех строках и 3 числовых значения расположены в строках с четвертой по k+1-ую (на фиг. 38 по 30-ую строку).
Следовательно, веса столбцов проверочной матрицы Н, которые вычисляют из таблицы исходных значений для проверочной матрицы с фиг. 38, равны 13 для столбцов от первого до (1+360×(3-1)-1)-го и равны 3 для столбцов от (1+360×(3-1))-го до K-го.
Первая строка таблицы исходных значений для проверочной матрицы с фиг. 38 представляет собой 0, 2084, 1613, 1548, 1286, 1460, 3196, 4297, 2481, 3369, 3451, 4620 и 2622 и это означает, что в первом столбце проверочной матрицы Н значение элементов в строках с номерами 0, 2084, 1613, 1548, 1286, 1460, 3196, 4297, 2481, 3369, 3451, 4620 и 2622 равно 1 (а значения других элементов равны 0).
Вторая строка таблицы исходных значений для проверочной матрицы с фиг. 38 представляет собой 1, 122, 1516, 3448, 2880, 1407, 1847, 3799, 3529, 373, 971, 4358 и 3108, что означает, что элементы строк с номерами 1, 122, 1516, 3448, 2880, 1407, 1847, 3799, 3529, 373, 971, 4358 и 3108 равны 1 в 361 (=1+360×(2-1))-м столбце проверочной матрицы Н.
Как описано выше, таблица исходных значений для проверочной матрицы показывает позиции элементов информационной матрицы HA проверочной матрицы Н, значение которых равно 1, для каждых 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)).
Если обозначить числовое значение элемента, расположенного в j-м столбце (j-м столбце слева) i-й строки (i-й строки сверху) таблицы исходных значений для проверочной матрицы через hi,j и обозначить номер строки j-го элемента, значение которого равно 1, в w-м столбце проверочной матрицы Н через Hw-j, то номер Hw-j строки элемента, значение которого равно 1, в w-м столбце, который является столбцом отличным от (1+360×(i-1))-го столбца проверочной матрицы Н, может быть вычислен в соответствии с равенством (10).
В этом случае, mod(x, y) означает остаток, полученный при делении x на y.
Кроме того, Р является количеством столбцов в блоке описанной выше циклической структуры. Например, в стандартах DVB-S.2, DVB-T.2 и DVB-C.2 Р равно 360, как описано выше. Кроме того, q - это значение М/360, полученное делением длины М контроля четности на количество Р столбцов (=360) в блоке циклической структуры.
В блоке 613 выработки проверочной матрицы (фиг. 35) из таблицы исходных значений для проверочной матрицы определяют номера строк с элементами, значение которых равно 1, в (1+360×(i-1))-м столбце проверочной матрицы Н.
В блоке 613 выработки проверочной матрицы (фиг. 35) вычисляют номер Hw-j строки с элементом, значение которого равно 1, в w-м столбце, отличном от (1+360×(i-1))-го столбца проверочной матрицы Н, что делают в соответствии с равенством (10), и вырабатывают проверочную матрицу Н, в которой значение элемента строки с полученным номером строки установлено равным 1.
<LDPC-код стандарта DVB-Sx>
Между тем разработали стандарт, который является улучшением DVB-S.2 и который называется DVB-Sx или развитием DVB-S.2.
Таким образом, далее будет описан LDPC-код (здесь и далее также называется 16К кодом для Sx), в котором длина N кода равна 16К битам и который может быть использован при передаче данных, отличной от передачи данных стандарта DVB-Sx.
Здесь для 16К кода для Sx с точки зрения настолько, насколько возможного, поддержания близости (совместимости) со стандартом DVB-S.2, аналогично LDPC-коду, определенному в стандарте DVB-S.2, предполагается, что матрица HT контроля четности проверочной матрицы Н имеет ступенчатую структуру (фиг. 11).
Кроме того, для 16К кода для Sx, аналогично LDPC-коду, определенному в стандарте DVB-S.2, предполагается, что информационная матрица HA проверочной матрицы Н обладает циклической структурой и количество Р столбцов, которые являются блоком циклической структуры, предполагается равным 360.
На фиг. 39 и 40 показан пример таблицы исходных значений для проверочной матрицы 16К кода для Sx.
На фиг. 39 показана таблица исходных значений для проверочной матрицы Н 16К кода для Sx, скорость r кодирования которого равна 7/15 (здесь и далее также называется 16К кодом для Sx с r=7/15).
На фиг. 40 показана таблица исходных значений для проверочной матрицы Н 16К кода для Sx, скорость r кодирования которого равна 8/15 (здесь и далее также называется 16К кодом для Sx с r=8/15).
В устройстве 115 LDPC кодирования (фиг. 8 и фиг. 35) может быть осуществлено LDPC кодирование в любой 16К код для Sx, длина N кода которого составляет 16К и двумя значениями скорости r кодирования, равными 7/15 или 8/15, что делают с использованием проверочной матрицы Н, получаемой по таблицам исходных значений для проверочной матрицы, показанным на фиг. 39 и 40).
В этом случае, таблицы исходных значений для проверочной матрицы с фиг. 39 и фиг. 40 сохраняют в блоке 602 хранения устройства 115 LDPC кодирования (фиг. 8).
16К код для Sx, полученный с использованием проверочной матрицы Н, вычисляемой по таблицам исходных значений для проверочной матрицы с фиг. 39 и фиг. 40, является LDPC-кодом хорошей эффективности.
Здесь LDPC-код хорошей эффективности представляет собой LDPC-код, полученный по надлежащей проверочной матрице Н.
Более того, надлежащая проверочная матрица Н представляет собой проверочную матрицу, которая удовлетворяет заранее заданному условию, чтобы сделать BER (и FER) меньше, когда LDPC-код, полученный по проверочной матрице Н, передают при малом отношении Es/N0 или Eb/No (отношение мощностей сигнал/шум на бит).
Например, надлежащая проверочная матрица Н может быть найдена путем осуществления моделирования с целью измерения BER, когда LDPC-коды, полученные по различным проверочным матрицам, удовлетворяющим заранее заданному условию, передают при малом отношении Es/N0.
В качестве заранее заданного условия, которому должна удовлетворять надлежащая проверочная матрица Н, например, могут использоваться следующее: отличный результат анализа, полученный с использованием способа анализа эффективности кода, называемого эволюция плотности (эволюция плотности), и не существует цикла из элементов, равных 1, что называется циклом 4 и так далее.
Здесь в информационной матрице HA известно, что эффективность декодирования LDPC-кода ухудшается, когда элементы, равные 1, расположены компактно, аналогично циклу 4, и, следовательно, в качестве заранее заданного условия, которому должна удовлетворять надлежащая проверочная матрица Н, требуется, чтобы не существовало циклов 4.
Здесь заранее заданное условие, которому должна удовлетворять надлежащая проверочная матрица Н, может быть определено произвольным образом с точки зрения улучшения эффективности LDPC-кода и облегчения (упрощения) процесса декодирования LDPC-кода и так далее.
На фиг. 41 и фиг. 42 показаны схемы, описывающие эволюцию плотности, в результате которой можно получить аналитический результат в качестве заранее заданного условия, которому должна удовлетворять надлежащая проверочная матрица Н.
Эволюция плотности представляет собой способ анализа кода, в котором вычисляют ожидаемое значение вероятности ошибки всего LDPC-кода (ансамбля) с длиной N кода, равной ∞ и обладающего описанной ниже последовательностью степеней.
Например, когда для AWGN канала значение дисперсии шума постепенно увеличивается от 0, ожидаемое значение вероятности ошибки определенного ансамбля сначала равно 0, но, когда значение дисперсии шума становится больше или равно определенному порогу, упомянутое ожидаемое значение не равно 0.
В соответствии с эволюцией плотности благодаря сравнению порога значения дисперсии шума (который также может быть назван порогом эффективности), при котором ожидаемое значение вероятности ошибки не равно 0, возможно определить эффективность ансамбля (проверочная матрица является надлежащей).
Здесь, что касается конкретного LDPC-кода, когда выбран ансамбль, к которому принадлежит LDPC-код, и для ансамбля осуществлена эволюция плотности, можно определить примерную эффективность LDPC-кода.
Следовательно, если найден ансамбль с хорошей эффективностью, то из LDPC-кодов, принадлежащих ансамблю, может быть найден LDPC-код с хорошей эффективностью.
Здесь упомянутая выше последовательность степеней показывает, при каком проценте относительно длины N LDPC-кода существует переменная вершина или проверочная вершина, обладающая некоторым весом.
Например, регулярный (3, 6) LDPC-код со скоростью кодирования, равной 1/2, принадлежит ансамблю, отличающемуся последовательностью степеней, в которой вес (вес столбцов) всех переменных вершин равен 3, а вес (вес строк) всех проверочных вершин равен 6.
На фиг. 41 показан граф Таннера такого ансамбля.
В графе Таннера с фиг. 41 присутствуют переменные вершины, показанные на схеме кружками (знак О) в количестве N штук, которое равно длине N кода и существуют проверочные вершины, показанные квадратами (знак □) в количестве N/2 штук, равном значению произведения скорости кодирования, равной 1/2, на длину N кода.
Три линии (ребра), количество которых равно весу столбца, соединены с каждой переменной вершиной и, следовательно, всего существует 3N линий, соединенных с N переменными вершинами.
Более того, шесть линий (ребер), количество которых равно весу строки, соединены с каждой проверочной вершиной и, следовательно, всего существует 3N линий, соединенных с N/2 проверочными вершинами.
Кроме того, в графе Таннера присутствует одно устройство разнесения, как показано на фиг. 41.
Устройство разнесения случайным образом перераспределяет 3N линий, соединенных с N переменными вершинами, и соединяет каждую перераспределенную линию с любой из 3N линий, соединенных с N/2 проверочными вершинами.
Существует (3N)! (=(3N)×(3N-1)×…×1) шаблонов перераспределения для перераспределения 3N линий, соединенных с N переменными вершинами в устройстве разнесения. Следовательно, ансамбль, характеризующийся последовательностью степеней, в котором вес всех переменных вершин равен 3, а вес всех проверочных вершин равен 6, является объединением (3N)! LDPC-кодов.
При моделировании, направленном на нахождение LDPC-кода хорошей эффективности (надлежащая проверочная матрица), при эволюции плотности используют ансамбль многореберного типа.
При многореберном типе, устройство разнесения, через которое проходят линии, соединенные с переменными вершинами, и линии, соединенные с проверочными вершинами, разделено на несколько частей (многореберный тип) и, благодаря этому, ансамбль можно характеризовать более точно.
На фиг. 42 показан пример графа Таннера ансамбля многореберного типа.
В графе Таннера с фиг. 42 присутствуют два устройства разнесения: первое устройство разнесения и второе устройство разнесения.
Более того, в схеме графа Таннера с фиг. 42, существует соответственно v1 переменных вершин с одной линией, соединенной с первым устройством разнесения, и не соединенных ни одной линией со вторым устройством разнесения, v2 переменных вершин с одной линией, соединенной с первым устройством разнесения, и двумя линиями, соединенными со вторым устройством разнесения, и v3 переменных вершин не соединенных ни одной линией с первым устройством разнесения и двумя линиями, соединенными со вторым устройством разнесения.
Далее, в схеме графа Таннера с фиг. 42, существует соответственно c1 проверочных вершин с двумя линиями, соединенными с первым устройством разнесения, и не соединенных ни одной линией со вторым устройством разнесения, с2 проверочных вершин с двумя линиями, соединенными с первым устройством разнесения, и двумя линиями, соединенными со вторым устройством разнесения, и с3 проверочных вершин не соединенных ни одной линией с первым устройством разнесения и тремя линиями, соединенными со вторым устройством разнесения.
Здесь, например, эволюция плотности и ее установка описаны в «О проектировании кодов с малой плотностью проверок на четность в пределах 0,0045 дБ границы Шеннона» С.Ю. Чанг (S.Y. Chung), Г.Д. Форней (G.D. Forney), Т.Дж. Ричардсон (T.J. Richardson), Р. Урбанке (R. Urbanke), журнал «IEEE Communications Letters», том. 5, №2, февраль 2001.
При моделировании, направленном на нахождение (таблицы исходных значений для проверочной матрицы) 16К кода для Sx с помощью эволюции плотности многореберного типа находят ансамбль, в котором порог эффективности, то есть Eb/N0 (отношение мощностей сигнал/шум на бит) с ухудшением (уменьшением) BER меньшим или равным заранее заданному значению, и LDPC-код, который уменьшает BER при использовании одной или нескольких ортогональных модуляций, таких как QPSK, выбирают из LDPC-кодов, принадлежащих ансамблю, как LDPC-код с хорошей эффективностью.
Упомянутая выше таблица исходных значений для проверочной матрицы 16К кода для Sx является таблицей исходных значений для проверочной матрицы соответствующих LDPC-кодов с длиной N кода, равной 16 Кбитам, и скоростью r кодирования, равной 7/15 или 8/15, которые найдены с помощью упомянутого выше моделирования.
Таким образом, в соответствии с 16К кодом для Sx, полученным по таблице исходных значений для проверочной матрицы, возможно обеспечить хорошее качество связи при передаче данных.
На фиг. 43 показана минимальная длина цикла и порог эффективности проверочной матрицы Н, полученной по таблице исходных значений для проверочной матрицы 16К кода для Sx с r=7/15 и 8/15, показанных на фиг. 39 и 40.
Здесь минимальная длина цикла (охват) означает минимальное значение длины цикла (длина цикла), сформированного элементами, равными 1, в проверочной матрице Н.
В проверочной матрице Н, полученной из таблицы исходных значений для проверочной матрицы 16К кода для Sx, не существует цикла 4 (цикла элементов, равных 1, длина которого равна 4).
Более того, так как избыточность LDPC-кода становится больше при уменьшении скорости r кодирования, порог эффективности обычно увеличивается (уменьшается) при уменьшении скорости r кодирования.
На фиг. 44 показана схема, иллюстрирующая проверочную матрицу Н (которую можно назвать проверочной матрицей Н 16К кода для Sx) с фиг. 39 и фиг. 40 (которую получают по таблице исходных значений для проверочной матрицы).
Вес столбца равен X для KX столбцов с первого столбца проверочной матрицы Н 16К кода для Sx, вес столбца равен Y1 для следующих KY1 столбцов, вес столбца равен Y2 для следующих KY2 столбцов, вес столбца равен 2 для следующих М-1 столбцов и вес столбца равен 1 для последнего столбца.
Здесь сумма KX+KY1+KY2+М-1+1 равна длине N кода, где N=16200 битов.
На фиг. 45 показана схема, иллюстрирующая количества KX, KY1, KY2 и М столбцов и веса X, Y1 и Y2 столбцов с фиг. 44 для каждой скорости r кодирования 16К кода для Sx.
Что касается проверочной матрицы Н соответствующих 16К кодов для Sx с r, равной 7/15 или 8/15, аналогично проверочной матрице, описанной на фиг. 12 и фиг. 13, вес столбца обычно больше в столбце, который ближе к верхней стороне (левая сторона) и, следовательно, бит кода, расположенный ближе к началу 16К кодов для Sx, обычно более устойчив к ошибкам (обладает устойчивостью к ошибкам).
<Процесс перестановки для 16К кода для Sx с r=7/15 и 8/15>
Для обеспечения лучшего качества связи при передаче данных с использованием 16К кода для Sx желательно предпринять меры по улучшению устойчивости к ошибкам.
Примерами таких мер по улучшению устойчивости к ошибкам, являются способ применения схемы модуляции, в котором сравнительно мало количество сигнальных точек, например 8-позиционной PSK или 16-позиционной APSK, и процесс перестановки, осуществляемый с помощью устройства 25 демультиплексирования (фиг. 9).
Что касается процесса перестановки, примерами способа перестановки, при котором переставляют биты LDPC-кода, определенного в таком стандарте, как DVB-T.2, являются описанные выше первый - четвертый способы перестановки, способ перестановки, определенный в DVB-T.2 или подобных стандартах.
Тем не менее, при передаче данных с использованием 16К кода для Sx предпочтительно применять процесс перестановки, подходящий для 16К кода для Sx.
То есть, в 16К коде для Sx желательно применять процесс перестановки со способом перестановки, специальным для 16К кода для Sx (также называют способом перестановки для Sx), в котором дополнительно улучшена устойчивость к ошибкам 16К кода для Sx.
Далее, до процесса перестановки в соответствии со способом перестановки для Sx будет описан процесс перестановки в соответствии с уже предложенным способом перестановки (здесь и далее также называют текущим способом).
Процесс перестановки, когда его осуществляют для LDPC-кода (здесь и далее также называем предписанным кодом), предписанного в стандарте DVB-T2 в соответствии с текущим способом и осуществляют с помощью устройства 25 демультиплексирования, будет описан со ссылками на фиг. 46 и 47.
На фиг. 46 показан пример процесса перестановки, соответствующего текущей схеме, когда LDPC-код, как предписано в DVB-T.2, имеет длину N кода, равную 64800 битам, и скорость кодирования, равную 3/5.
То есть, в участке А фиг. 46 показан пример способа перестановки, соответствующего текущему способу, когда LDPC-код является предписанным кодом, длина N кода которого равна 64800 битам, а скорость кодирования равна 3/5 и способ модуляции представляет собой 16-позиционную QAM и множитель b равен 2.
Когда способ модуляции представляет собой 16-позиционную QAM, 4 (=m) бита кода преобразуют в определенные точки из 16 сигнальных точек в 16-позиционной QAM как один символ.
Когда длина N кода равна 64800 битам и множитель b равен 2, память 31 (фиг. 22 и 23) устройства 25 демультиплексирования содержит 8 столбцов, хранящих 4×2 (=mb) битов в направлении строк и 64800/(4×2) битов в направлении столбцов.
В устройстве 25 демультиплексирования, когда биты LDPC-кода записаны в направлении столбцов памяти 31 и запись 64800 битов кода (1 кодовое слово) заканчивается, биты кода, записанные в память 31, считывают в блоки из 4×2 (=mb) битов в направлении строк и подают в блок 32 перестановки (фиг. 22 и 23).
В блоке 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 символа 2-х (=b) последовательных символов, как показано в участке А фиг. 46.
То есть, в блоке 32 перестановки осуществляют такую перестановку, что биты кода следующим образом сопоставляют битам символа:
бит b0 кода и бит y7 символа,
бит b1 кода и бит y1 символа,
бит b2 кода и бит y4 символа,
бит b3 кода и бит y2 символа,
бит b4 кода и бит y5 символа,
бит b5 кода и бит y3 символа,
бит b6 кода и бит y6 символа и
бит b7 кода и бит у0 символа.
В участке В фиг. 46 показан пример способа перестановки, соответствующего текущему способу, когда LDPC-код является предписанным кодом, длина N кода которого равна 64800 битам, а скорость кодирования равна 3/5 и способ модуляции представляет собой 64-позиционную QAM и множитель b равен 2.
Когда способ модуляции представляет собой 64-позиционную QAM, 6 (=m) битов кода преобразуют в определенные точки из 64 сигнальных точек в 64-позиционной QAM как один символ.
Когда длина N кода равна 64800 битам и множитель b равен 2, память 31 (фиг. 22 и 23) устройства 25 демультиплексирования содержит 12 столбцов, хранящих 6×2 (=mb) битов в направлении строк и 64800/(6×2) битов в направлении столбцов.
В устройстве 25 демультиплексирования, когда биты LDPC-кода записаны в направлении столбцов памяти 31 и запись 64800 битов кода (1 кодовое слово) заканчивается, биты кода, записанные в память 31, считывают в блоки из 6×2 (=mb) битов в направлении строк и подают в блок 32 перестановки (фиг. 22 и 23).
В блоке 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 символа 2-х (=b) последовательных символов, как показано в участке В фиг. 46.
То есть, в блоке 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 символа.
В участке С фиг. 46 показан пример способа перестановки, соответствующего текущему способу, когда LDPC-код является предписанным кодом, длина N кода которого равна 64800 битам, а скорость кодирования равна 3/5 и способ модуляции представляет собой 256-позиционную QAM и множитель b равен 2.
Когда способ модуляции представляет собой 256-позиционную QAM, 8 (=m) битов кода преобразуют в определенные точки из 256 сигнальных точек в 256-позиционной QAM как один символ.
Когда длина N кода равна 64800 битам и множитель b равен 2, память 31 (фиг. 22 и 23) устройства 25 демультиплексирования содержит 16 столбцов, хранящих 8×2 (=mb) битов в направлении строк и 64800/(8×2) битов в направлении столбцов.
В устройстве 25 демультиплексирования, когда биты LDPC-кода записаны в направлении столбцов памяти 31 и запись 64800 битов кода (1 кодовое слово) заканчивается, биты кода, записанные в память 31, считывают в блоки из 8×2 (=mb) битов в направлении строк и подают в блок 32 перестановки (фиг. 22 и 23).
В блоке 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 символа 2-х (=b) последовательных символов, как показано в участке С фиг. 46.
То есть, в блоке 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 символа.
На фиг. 47 показан пример процесса перестановки, соответствующего текущей схеме, когда предписанный код, как предписано в DVB-T.2, имеет длину N кода, равную 16200 битам, и скорость кодирования, равную 3/5.
То есть, в участке А фиг. 47 показан пример способа перестановки, соответствующего текущему способу, когда LDPC-код является LDPC-кодом, длина N кода которого равна 16200 битам, а скорость кодирования равна 3/5 и способ модуляции представляет собой 16-позиционную QAM и множитель b равен 2.
Когда способ модуляции представляет собой 16-позиционную QAM, 4 (=m) бита кода преобразуют в определенные точки из 16 сигнальных точек в 16-позиционной QAM как один символ.
Когда длина N кода равна 16200 битам и множитель b равен 2, память 31 (фиг. 22 и 23) устройства 25 демультиплексирования содержит 8 столбцов, хранящих 4×2 (=mb) битов в направлении строк и 16200/(4×2) битов в направлении столбцов.
В устройстве 25 демультиплексирования, когда биты LDPC-кода записаны в направлении столбцов памяти 31 и запись 16200 битов кода (1 кодовое слово) заканчивается, биты кода, записанные в память 31, считывают в блоки из 4×2 (=mb) битов в направлении строк и подают в блок 32 перестановки (фиг. 22 и 23).
В блоке 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 символа 2-х (=b) последовательных символов, как показано в участке А фиг. 47.
То есть, в блоке 32 перестановки осуществляют перестановку, так что биты b0 - b7 кода сопоставляют битам y0 - y7 символа, как в описанном выше случае из участка А фиг. 46.
В участке В фиг. 47 показан пример способа перестановки, соответствующего текущему способу, когда LDPC-код является предписанным кодом, длина N кода которого равна 16200 битам, а скорость кодирования равна 3/5 и способ модуляции представляет собой 64-позиционную QAM и множитель b равен 2.
Когда способ модуляции представляет собой 64-позиционную QAM, 6 (=m) битов кода преобразуют в определенные точки из 64 сигнальных точек в 64-позиционной QAM как один символ.
Когда длина N кода равна 16200 битам и множитель b равен 2, память 31 (фиг. 22 и 23) устройства 25 демультиплексирования содержит 12 столбцов, хранящих 6×2 (=mb) битов в направлении строк и 16200/(6×2) битов в направлении столбцов.
В устройстве 25 демультиплексирования, когда биты LDPC-кода записаны в направлении столбцов памяти 31 и запись 16200 битов кода (1 кодовое слово) заканчивается, биты кода, записанные в память 31, считывают в блоки из 6×2 (=mb) битов в направлении строк и подают в блок 32 перестановки (фиг. 22 и 23).
В блоке 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 символа 2-х (=b) последовательных символов, как показано в участке В фиг. 47.
То есть, в блоке 32 перестановки осуществляют перестановку, так что биты b0 - b11 кода сопоставляют битам y0 - y11 символа, как в описанном выше случае из участка В фиг. 46.
В участке С фиг. 47 показан пример способа перестановки, соответствующего текущему способу, когда LDPC-код является предписанным кодом, длина N кода которого равна 16200 битам, а скорость кодирования равна 3/5 и способ модуляции представляет собой 256-позиционную QAM и множитель b равен 1.
Когда способ модуляции представляет собой 256-позиционную QAM, 8 (=m) битов кода преобразуют в определенные точки из 256 сигнальных точек в 256-позиционной QAM как один символ.
Когда длина N кода равна 16200 битам и множитель b равен 1, память 31 (фиг. 22 и 23) устройства 25 демультиплексирования содержит 8 столбцов, хранящих 8×1 (=mb) битов в направлении строк и 16200/(8×1) битов в направлении столбцов.
В устройстве 25 демультиплексирования, когда биты LDPC-кода записаны в направлении столбцов памяти 31 и запись 16200 битов кода (1 кодовое слово) заканчивается, биты кода, записанные в память 31, считывают в блоки из 8×1 (=mb) битов в направлении строк и подают в блок 32 перестановки (фиг. 22 и 23).
В блоке 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 символа 1-х (=b) последовательных символов, как показано в участке С фиг. 47.
То есть, в блоке 32 перестановки осуществляют такую перестановку, что биты кода следующим образом сопоставляют битам символа:
бит b0 кода и бит y7 символа,
бит b1 кода и бит y3 символа,
бит b2 кода и бит y1 символа,
бит b3 кода и бит y5 символа,
бит b4 кода и бит y2 символа,
бит b5 кода и бит y6 символа,
бит b6 кода и бит y4 символа и
бит b7 кода и бит y0 символа.
Далее будет описан процесс перестановки в соответствии со способом перестановки для Sx.
Здесь и далее (i+1)-й бит от самого старшего бита из mb битов кода, считанный в направлении строк из памяти 31, также выражают как bi и (i+1)-й бит от самого старшего бита из mb битов символа b последовательных символов также выражают как yi.
На фиг. 48 показан первый пример процесса перестановки в соответствии со способом перестановки для Sx, когда способ модуляции представляет собой 8-позиционную PSK и множитель b равен 1 при передаче данных с использованием 16К кода для Sx с r=7/15 или 8/15.
Когда способ модуляции представляет собой 8-позиционную PSK и множитель b равен 1 при передаче данных с использованием 16К кода для Sx с r=7/15 или 8/15, (16200/(3×1))×(3×1) битов кода, записанных в память 31 в направлении столбцов × направлении строк, считывают в блоки 3×1 (=mb) битов в направлении строк с помощью устройства 25 демультиплексирования и подают в блок 32 перестановки (фиг. 22 и 23).
В блоке 32 перестановки так переставляют 3×1 (=mb) битов кода с b0 по b2, что 3×1 (=mb) битов кода с b0 по b2, считанных из памяти 31, сопоставляют, например, 3×1 (=mb) битам с y0 по y2 символа 1-го (=b) символа, как показано на фиг. 48.
То есть, в блоке 32 перестановки осуществляют такую перестановку, что биты кода следующим образом сопоставляют битам символа:
бит b0 кода и бит y1 символа,
бит b1 кода и бит y0 символа и
бит b2 кода и бит y2 символа.
На фиг. 49 показан второй пример процесса перестановки в соответствии со способом перестановки для Sx, когда способ модуляции представляет собой 8-позиционную PSK и множитель b равен 1 при передаче данных с использованием 16К кода для Sx с r=7/15 или 8/15.
В этом случае, как описано со ссылками на фиг. 48, (16200/(3×1))×(3×1) битов кода, записанных в память 31 в направлении столбцов × направлении строк, считывают в блоки 3×1 (=mb) битов в направлении строк с помощью устройства 25 демультиплексирования и подают в блок 32 перестановки (фиг. 22 и 23).
В блоке 32 перестановки так переставляют 3×1 (=mb) битов кода с b0 по b2, что 3×1 (=mb) битов кода с b0 по b2, считанных из памяти 31, сопоставляют, например, 3×1 (=mb) битам с y0 по y2 символа 1-го (=b) символа, как показано на фиг. 49.
То есть, в блоке 32 перестановки осуществляют такую перестановку, что биты кода следующим образом сопоставляют битам символа:
бит b0 кода и бит y1 символа,
бит b1 кода и бит y2 символа и
бит b2 кода и бит y0 символа.
Здесь, в качестве способа перестановки для битов LDPC-кода в ходе процесса перестановки, осуществляемого в блоке 32 перестановки, то есть шаблона сопоставления между битами LDPC-кода и битами символа, образующими символ (здесь и далее также называют шаблон сопоставления битов), в каждом из 16К кодов для Sx со скоростями кодирования, равными r=7/15 и 8/15, может быть использован специальный шаблон сопоставления битов.
Здесь, когда для каждого из 16К кодов для Sx со скоростями кодирования, равными r=7/15 и 8/15, используют специальный шаблон сопоставления битов, необходимо установить каждый шаблон сопоставления битов в устройстве 11 передачи. Далее, для 16К кодов для Sx с разными скоростями r кодирования необходимо изменять (заменять) шаблон сопоставления битов.
Соответственно, когда способом модуляции является 8-позиционная PSK и множитель b равен 1 в каждом из 16К кодов для Sx со скоростями r кодирования, равными 7/15 и 8/15, только один из способов перестановки, описанных со ссылками на фиг. 48 и 49, может быть установлен в устройстве 11 передачи. То же самое также применимо, когда способом модуляции является 16-позиционная APSK и множитель b равен 1, как будет описано ниже.
На фиг. 50 показан результат моделирования, представляющий собой измерения BER/FER при моделировании, при этом в качестве способа перестановки применялся первый пример способа перестановки для Sx с фиг. 48 и в качестве способа модуляции использовалась 8-позиционная PSK для 16К кода для Sx со скоростью r кодирования, равной 7/15.
На фиг. 51 показан результат моделирования, представляющий собой измерения BER/FER при моделировании, при этом в качестве способа перестановки применялся первый пример способа перестановки для Sx с фиг. 48 и в качестве способа модуляции использовалась 8-позиционная PSK для 16К кода для Sx со скоростью r кодирования, равной 8/15.
На фиг. 50 и фиг. 51 горизонтальная ось показывает Es/N0, а вертикальная - BER/FER. Здесь сплошной линией показан параметр BER, а пунктирной линией - параметр FER.
По фиг. 50 и 51 может быть подтверждено, что хороший параметр BER/FER получают для каждого из 16К кодов для Sx со скоростями r кодирования, равными 7/15 и 8/15, и, таким образом, хорошее качество связи обеспечивают при передаче данных с использованием 16К кода для Sx.
При моделировании, параметр BER/FER, который по существу совпадает с этим параметром при использовании первого примера способа перестановки для Sx с фиг. 48, измерялся даже когда использовали второй пример способа перестановки для Sx с фиг. 49.
Здесь при моделировании при использовании 50 повторений в качестве количества С (it) повторений декодирования при декодировании 16К кода для Sx и с предположением, что NL (нелинейный) канал является каналом 13 связи (фиг. 7), параметр BER/FER измеряют для различных шаблонов сопоставления, при которых 3 бита кода сопоставляют 3 битам символа.
Шаблон сопоставления битов, для которого получают хороший параметр BER/FER, применяют в качестве способа перестановки для Sx.
Таким образом, можно сказать, что способы перестановки для Sx с фиг. 48 и 49 являются оптимальными способами перестановки, когда передачу данных с 8-позиционной PSK с использованием 16К кода для Sx, осуществляют по NL каналу.
При моделировании, в котором в качестве способа модуляции используют, например, 8-позиционную PSK, в качестве созвездия 8-позиционной PSK используют созвездие (фиг. 19), применяемое с 8-позиционной PSK из стандарта DVB-S.2.
Таким образом, для способов перестановки для Sx с фиг. 48 и 49, хорошее качество связи может быть обеспечено не только при использовании с NL каналом, но также при использовании, например, с линейным каналом или AWGN каналом, когда AWGN добавляют к линейному каналу, отличающемуся от NL канала.
На фиг. 52 показана структурная схема, иллюстрирующая модель системы передачи с использованием моделирования (модель системы передачи).
Модель системы передачи содержит Тх блок 210, Rx блок 220 и блок 230 канала.
Тх блок 210 является моделью стороны передачи и содержит FEC блок 211 (прямое исправление ошибок) и блок 212 преобразования (Map.), блок 213 увеличения частоты дискретизации (увеличение частоты дискретизации) и блок 214 фильтра Найквиста (фильтр Найквиста).
В FEC блоке 211 осуществляют кодирование с исправлением ошибок, например, с помощью ВСН кода и LDPC-кода и подают LDPC-код, полученный с помощью кодирования с исправлением ошибок, в блок 212 преобразования.
В блоке 212 преобразования осуществляют квадратурную модуляцию путем преобразования символа в сигнальные точки, как определено в способе заранее заданной квадратурной модуляции, такой как 8-позиционная PSK или 16-позиционная APSK, с использованием заранее заданного количества бит LDPC-кода из FEC блока 211 в качестве символа, и далее подают данные после квадратурной модуляции в блок 213 увеличения частоты дискретизации.
В блоке 213 увеличения частоты дискретизации увеличивают частоту дискретизации данных из блока 212 преобразования и подают полученные в результате данные в блок 214 фильтра Найквиста.
В блоке 214 фильтра Найквиста фильтруют данные из блока 213 увеличения частоты дискретизации и подают полученный в результате передаваемый сигнал в блок 230 канала.
Rx блок 220 является моделью стороны приема и содержит AGC (автоматическая регулировка усиления) блок 221, блок 222 умножения, блок 223 фильтра с плавным спадом частотной характеристики (фильтр с плавным спадом частотной характеристики), блок 224 уменьшения частоты дискретизации (Down samp.), CSI блок 225 (информация о состоянии канала), блок 226 обратного преобразования (De-Map.) и FEC блок 227.
В AGC блоке 221 устанавливают AGC параметр для усиления передаваемого сигнала от блока 230 канала и подают AGC параметр в блок 222 умножения.
В блок 222 умножения подают не только AGC параметр из AGC блока 221, но также подают передаваемый сигнал, полученный из блока 230 канала.
В блоке 222 умножения усиливают передаваемый сигнал из блока 230 канала в соответствии с AGC параметром из AGC блока 221 и подают передаваемый сигнал в блок 223 фильтра с плавным спадом частотной характеристики.
В блоке 223 фильтра с плавным спадом частотной характеристики фильтруют передаваемый сигнал из блока 222 умножения и подают передаваемый сигнал в блок 224 уменьшения частоты дискретизации.
В блоке 224 уменьшения частоты дискретизации уменьшают частоту дискретизации передаваемого сигнала из блока 223 фильтра с плавным спадом частотной характеристики и подают полученные в результате данные (данные после преобразования) в блок 226 обратного преобразования.
В CSI блоке 225 устанавливают информацию о канале, указывающую состояние канала (блок 230 канала) и подают информацию о канале в блок 226 обратного преобразования.
В блоке 226 обратного преобразования осуществляют квадратурную демодуляцию путем обратного преобразования (декодирование расположения сигнальных точек) данных из блока 224 уменьшения частоты дискретизации с использованием информации о канале из CSI блока 225 и подают полученные в результате данные (правдоподобие LDPC-кода) в FEC блок 227.
В FEC блоке 227 осуществляют декодирование с исправлением ошибок для данных из блока 226 обратного преобразования с целью декодирования кода с исправлением ошибок, то есть, например, декодирования LDPC-кода и декодирования ВСН кода.
Блок 230 канала является моделью NL канала и содержит IBO (потери входной мощности) блок 231, блок 232 умножения, TWTA (усилитель на лампах бегущей волны) блок 233, AWGN блок 234 и блок 235 сложения.
В IBO блоке 231 устанавливают IBO параметр для регулировки мощности передаваемого сигнала из Тх блока 210 и подают IBO параметр в блок 232 умножения.
В блок 232 умножения подают не только IBO параметр из IBO блока 231, но также подают передаваемый сигнал, полученный из Тх блока 210.
В блоке 232 умножения усиливают передаваемый сигнал из Тх блока 210 в соответствии с IBO параметром из IBO блока 231 и подают передаваемый сигнал в TWTA блок 233.
TWTA блок 233 выполнен так, чтобы содержать, например, нелинейный усилитель и в TWTA блоке 233 подают на выход без изменения передаваемый сигнал, мощность которого меньше заранее заданного значения, и подают на выход передаваемый сигнал, мощность которого больше или равна заранее заданного значения, что делают благодаря ограничению заранее заданным значением мощности передаваемых сигналов из блока 232 умножения.
В AWGN блоке 234 вырабатывают и подают на выход AWGN.
В блок 235 сложения подают передаваемый сигнал из TWTA блока 233 и AWGN из AWGN блока 234.
В блоке 235 сложения складывают AWGN из AWGN блока 234 с передаваемым сигналом из TWTA блока 233 и подают передаваемый сигнал как выход блока 230 канала.
В выполненной таким образом модели системы передачи в FEC блоке 211 осуществляют кодирование с исправлением ошибок и подают LDPC-код, полученный в ходе кодирования с исправлением ошибок, в блок 212 преобразования в Тх блоке 210.
В блоке 212 преобразования осуществляют квадратурную модуляцию путем преобразования LDPC-кода из FEC блока 211 в сигнальные точки, выбранные в способе заранее заданной квадратурной модуляции. Данные, полученные в блоке 212 преобразования, подают как передаваемый сигнал из Тх блока 210 в блок 230 канала через блок 213 увеличения частоты дискретизации и блок 214 фильтра Найквиста.
В блоке 230 канала передаваемый сигнал из Тх блока 210 передают через блок 232 умножения и TWTA блок 235 с нелинейным искажением и подают в блок 235 сложения.
В блоке 232 сложения AWGN из AWGN блока 234 складывают с передаваемым сигналом, поданным через блок 232 умножения и TWTA блок 233, и передаваемый сигнал подают в Rx блок 220.
В Rx блоке 220 передаваемый сигнал из блока 230 канала подают в блок 226 обратного преобразования через блок 222 умножения, блок 223 фильтра с плавным спадом частотной характеристики и блок 224 уменьшения частоты дискретизации.
В блоке 226 обратного преобразования данные, поданные через блок 222 умножения, блок 223 фильтра с плавным спадом частотной характеристики и блок 224 уменьшения частоты дискретизации, подвергают обратному преобразованию с целью осуществления квадратурной демодуляции с использованием информации о канале из CSI блока 225 и полученные в результате данных подают в FEC блок 227.
В FEC блоке 227 данные из блока 226 обратного преобразования подвергают декодированию с исправлением ошибок, такому как LDPC декодирование. При моделировании измеряют (вычисляют) параметр BER/FER с использованием результата декодирования с исправлением ошибок.
Блок 230 канала с фиг. 52 также выполнен так, что содержит только AWGN блок 234 и блок 235 сложения и не содержит IBO блок 231, блок 232 умножения и TWTA блок 233, так что блок 230 канала служит как модель AWGN канала.
На фиг. 53 показан первый пример процесса перестановки в соответствии со способом перестановки для Sx, когда способ модуляции представляет собой 16-позиционную PSK и множитель b равен 1 при передаче данных с использованием 16К кода для Sx с r=7/15 или 8/15.
Когда способ модуляции представляет собой 16-позиционную PSK и множитель b равен 1 при передаче данных с использованием 16К кода для Sx с r=7/15 или 8/15, (16200/(4×1))×(4×1) битов кода, записанных в память 31 в направлении столбцов × направлении строк, считывают в блоки 4×1 (=mb) битов в направлении строк с помощью устройства 25 демультиплексирования и подают в блок 32 перестановки (фиг. 22 и 23).
В блоке 32 перестановки так переставляют 4×1 (=mb) битов кода с b0 по b3, что 4×1 (=mb) битов кода с b0 по b3, считанных из памяти 31, сопоставляют, например, 4×1 (=mb) битам с y0 по y3 символа 1-го (=b) символа, как показано на фиг. 53.
То есть, в блоке 32 перестановки осуществляют такую перестановку, что биты кода следующим образом сопоставляют битам символа:
бит b0 кода и бит y1 символа,
бит b1 кода и бит y2 символа,
бит b2 кода и бит y0 символа и
бит b3 кода и бит y3 символа.
На фиг. 54 показан второй пример процесса перестановки в соответствии со способом перестановки для Sx, когда способ модуляции представляет собой 16-позиционную PSK и множитель b равен 1 при передаче данных с использованием 16К кода для Sx с r=7/15 или 8/15.
В этом случае, как описано со ссылками на фиг. 53, (16200/(4×1))×(4×1) битов кода, записанных в память 31 в направлении столбцов × направлении строк, считывают в блоки 4×1 (=mb) битов в направлении строк с помощью устройства 25 демультиплексирования и подают в блок 32 перестановки (фиг. 22 и 23).
В блоке 32 перестановки так переставляют 4×1 (=mb) битов кода с b0 по b3, что 4×1 (=mb) битов кода с b0 по b3, считанных из памяти 31, сопоставляют, например, 4×1 (=mb) битам с y0 по y3 символа 1-го (=b) символа, как показано на фиг. 54.
То есть, в блоке 32 перестановки осуществляют такую перестановку, что биты кода следующим образом сопоставляют битам символа:
бит b0 кода и бит y1 символа,
бит b1 кода и бит y3 символа,
бит b2 кода и бит y0 символа и
бит b3 кода и бит y2 символа.
На фиг. 55 показан третий пример процесса перестановки в соответствии со способом перестановки для Sx, когда способ модуляции представляет собой 16-позиционную PSK и множитель b равен 1 при передаче данных с использованием 16К кода для Sx с r=7/15 или 8/15.
В этом случае, как описано со ссылками на фиг. 53, (16200/(4×1))×(4×1) битов кода, записанных в память 31 в направлении столбцов × направлении строк, считывают в блоки 4×1 (=mb) битов в направлении строк с помощью устройства 25 демультиплексирования и подают в блок 32 перестановки (фиг. 22 и 23).
В блоке 32 перестановки так переставляют 4×1 (=mb) битов кода с b0 по b3, что 4×1 (=mb) битов кода с b0 по b3, считанных из памяти 31, сопоставляют, например, 4×1 (=mb) битам с y0 по y3 символа 1-го (=b) символа, как показано на фиг. 55.
То есть, в блоке 32 перестановки осуществляют такую перестановку, что биты кода следующим образом сопоставляют битам символа:
бит b0 кода и бит y2 символа,
бит b1 кода и бит y1 символа,
бит b2 кода и бит y0 символа и
бит b3 кода и бит y3 символа.
На фиг. 56 показан четвертый пример процесса перестановки в соответствии со способом перестановки для Sx, когда способ модуляции представляет собой 16-позиционную PSK и множитель b равен 1 при передаче данных с использованием 16К кода для Sx с r=7/15 или 8/15.
В этом случае, как описано со ссылками на фиг. 53, (16200/(4×1))×(4×1) битов кода, записанных в память 31 в направлении столбцов × направлении строк, считывают в блоки 4×1 (=mb) битов в направлении строк с помощью устройства 25 демультиплексирования и подают в блок 32 перестановки (фиг. 22 и 23).
В блоке 32 перестановки так переставляют 4×1 (=mb) битов кода с b0 по b3, что 4×1 (=mb) битов кода с b0 по b3, считанных из памяти 31, сопоставляют, например, 4×1 (=mb) битам с y0 по y3 символа 1-го (=b) символа, как показано на фиг. 56.
То есть, в блоке 32 перестановки осуществляют такую перестановку, что биты кода следующим образом сопоставляют битам символа:
бит b0 кода и бит y3 символа,
бит b1 кода и бит y1 символа,
бит b2 кода и бит y0 символа и
бит b3 кода и бит y2 символа.
На фиг. 57 показан пятый пример процесса перестановки в соответствии со способом перестановки для Sx, когда способ модуляции представляет собой 16-позиционную PSK и множитель b равен 1 при передаче данных с использованием 16К кода для Sx с r=7/15 или 8/15.
В этом случае, как описано со ссылками на фиг. 53, (16200/(4×1))×(4×1) битов кода, записанных в память 31 в направлении столбцов × направлении строк, считывают в блоки 4×1 (=mb) битов в направлении строк с помощью устройства 25 демультиплексирования и подают в блок 32 перестановки (фиг. 22 и 23).
В блоке 32 перестановки так переставляют 4×1 (=mb) битов кода с b0 по b3, что 4×1 (=mb) битов кода с b0 по b3, считанных из памяти 31, сопоставляют, например, 4×1 (=mb) битам с y0 по y3 символа 1-го (=b) символа, как показано на фиг. 57.
То есть, в блоке 32 перестановки осуществляют такую перестановку, что биты кода следующим образом сопоставляют битам символа:
бит b0 кода и бит y1 символа,
бит b1 кода и бит y2 символа,
бит b2 кода и бит y3 символа и
бит b3 кода и бит y0 символа.
На фиг. 58 показан шестой пример процесса перестановки в соответствии со способом перестановки для Sx, когда способ модуляции представляет собой 16-позиционную PSK и множитель b равен 1 при передаче данных с использованием 16К кода для Sx с r=7/15 или 8/15.
В этом случае, как описано со ссылками на фиг. 53, (16200/(4×1))×(4×1) битов кода, записанных в память 31 в направлении столбцов × направлении строк, считывают в блоки 4×1 (=mb) битов в направлении строк с помощью устройства 25 демультиплексирования и подают в блок 32 перестановки (фиг. 22 и 23).
В блоке 32 перестановки так переставляют 4×1 (=mb) битов кода с b0 по b3, что 4×1 (=mb) битов кода с b0 по b3, считанных из памяти 31, сопоставляют, например, 4×1 (=mb) битам с y0 по y3 символа 1-го (=b) символа, как показано на фиг. 58.
То есть, в блоке 32 перестановки осуществляют такую перестановку, что биты кода следующим образом сопоставляют битам символа:
бит b0 кода и бит y1 символа,
бит b1 кода и бит y3 символа,
бит b2 кода и бит y2 символа и
бит b3 кода и бит y0 символа.
На фиг. 59 показан седьмой пример процесса перестановки в соответствии со способом перестановки для Sx, когда способ модуляции представляет собой 16-позиционную PSK и множитель b равен 1 при передаче данных с использованием 16К кода для Sx с r=7/15 или 8/15.
В этом случае, как описано со ссылками на фиг. 53, (16200/(4×1))×(4×1) битов кода, записанных в память 31 в направлении столбцов × направлении строк, считывают в блоки 4×1 (=mb) битов в направлении строк с помощью устройства 25 демультиплексирования и подают в блок 32 перестановки (фиг. 22 и 23).
В блоке 32 перестановки так переставляют 4×1 (=mb) битов кода с b0 по b3, что 4×1 (=mb) битов кода с b0 по b3, считанных из памяти 31, сопоставляют, например, 4×1 (=mb) битам с y0 по y3 символа 1-го (=b) символа, как показано на фиг. 59.
То есть, в блоке 32 перестановки осуществляют такую перестановку, что биты кода следующим образом сопоставляют битам символа:
бит b0 кода и бит y2 символа,
бит b1 кода и бит y1 символа,
бит b2 кода и бит y3 символа и
бит b3 кода и бит y0 символа.
На фиг. 60 показан восьмой пример процесса перестановки в соответствии со способом перестановки для Sx, когда способ модуляции представляет собой 16-позиционную PSK и множитель b равен 1 при передаче данных с использованием 16К кода для Sx с r=7/15 или 8/15.
В этом случае, как описано со ссылками на фиг. 53, (16200/(4×1))×(4×1) битов кода, записанных в память 31 в направлении столбцов × направлении строк, считывают в блоки 4×1 (=mb) битов в направлении строк с помощью устройства 25 демультиплексирования и подают в блок 32 перестановки (фиг. 22 и. 23)
В блоке 32 перестановки так переставляют 4×1 (=mb) битов кода с b0 по b3, что 4×1 (=mb) битов кода с b0 по b3, считанных из памяти 31, сопоставляют, например, 4×1 (=mb) битам с y0 по y3 символа 1-го (=b) символа, как показано на фиг. 60.
То есть, в блоке 32 перестановки осуществляют такую перестановку, что биты кода следующим образом сопоставляют битам символа:
бит b0 кода и бит y3 символа,
бит b1 кода и бит y1 символа,
бит b2 кода и бит y3 символа и
бит b3 кода и бит y0 символа.
На фиг. 61 показан результат моделирования, представляющий собой измерение параметра BER/FER при моделировании, при этом в качестве способа перестановки применялся третий пример способа перестановки для Sx с фиг. 55 и в качестве способа модуляции использовалась 16-позиционная APSK для 16К кода для Sx со скоростью r кодирования, равной 7/15.
На фиг. 62 показан результат моделирования, представляющий собой измерение параметра BER/FER при моделировании, при этом в качестве способа перестановки применялся третий пример способа перестановки для Sx с фиг. 55 и в качестве способа модуляции использовалась 16-позиционная APSK для 16К кода для Sx со скоростью r кодирования, равной 8/15.
На фиг. 61 и фиг. 62 горизонтальная ось показывает Es/N0, а вертикальная - BER/FER. Здесь сплошной линией показан параметр BER, а пунктирной линией - параметр FER.
Из фиг. 61 и 62 может быть подтверждено, что хороший параметр BER/FER получают для каждого из 16К кодов для Sx со скоростями r кодирования, равными 7/15 и 8/15, и, таким образом, хорошее качество связи обеспечивают при передаче данных с использованием 16К кода для Sx.
При моделировании, параметр BER/FER, который по существу совпадает с этим параметром при использовании первого примера способа перестановки для Sx с фиг. 53, второго примера способа перестановки для Sx с фиг. 54, четвертого примера способа перестановки для Sx с фиг. 56 или восьмого примера способа перестановки для Sx с фиг. 55, измерялся даже когда использовали третий пример способа перестановки для Sx с фиг. 55.
Здесь при моделировании, когда применяли 16-позиционную APSK, при использовании 50 повторений в качестве количества С повторений декодирования при декодировании 16К кода для Sx и с предположением, что NL (нелинейный) канал является каналом 13 связи (фиг. 7, аналогично случаю моделирования (фиг. 50 и 51), когда в качестве способа модуляции использовали 8-позиционную PSK, параметр BER/FER измеряют для различных шаблонов сопоставления битов, в которых 4 бита кода сопоставляют 4 битам символа.
Шаблон сопоставления битов, в котором получают хороший параметр BER/FER, применяют в качестве способа перестановки для Sx.
Соответственно, можно сказать, что способ перестановки для Sx с фиг. 53-60 является оптимальным способом перестановки, когда передачу данных с 16-позиционной APSK с использованием 16К кода для Sx, осуществляют по NL каналу.
При моделировании, при котором в качестве способа модуляции применяют 16-позиционную APSK, созвездие, в котором оптимизировано отношение γ радиусов, применяют в качестве созвездия 16-позиционного APSK относительно созвездия (фиг. 20), использованного с 16-позиционным APSK стандарта DVB-S.2.
То есть, при моделировании, при котором в качестве способа модуляции применяют 16-позиционную APSK, созвездие, в котором 4 сигнальные точки на окружности (внутренняя окружность) радиуса R1 с центром, являющимся центром IQ плоскости, 12 сигнальные точки на окружности (внешняя окружность) радиуса R2 (>R1), то есть всего расположено 16 сигнальных точек, применяют как в созвездии, показанном на фиг. 20.
При моделировании, при котором в качестве способа модуляции применяют 16-позиционную APSK, значение, для которого параметр FER минимален, применяют в качестве отношения γ=R2/R1 радиусов при передаче данных, осуществляемой через NL канал.
Более конкретно, для 16К кода для Sx со скоростью r кодирования, равной 7/15, значение 5,25 применяют в качестве отношения γ радиусов при моделировании, при котором в качестве способа модуляции применяют 16-позиционную APSK. Для 16К кода для Sx со скоростью r кодирования равной 7/15, значение 4,85 применяют в качестве отношения γ радиусов при моделировании, при котором в качестве способа модуляции применяют 16-позиционную APSK.
В способе перестановки для Sx с фиг. 53-60, хорошее качество связи может быть обеспечено не только во время использования с NL каналом, но также при использовании, например, с линейным каналом или AWGN каналом, когда AWGN добавляют к линейному каналу, а не к NL каналу.
При моделировании, в котором измеряют параметр BER/FER с фиг. 61 и 62 (также при моделировании, в котором параметр BER/FER с фиг. 50 и 51 измеряют аналогично описанному выше), 10% применяют в качестве коэффициента спада частотной характеристики. Коэффициент спада частотной характеристики является параметром, касающимся блока 214 фильтра Найквиста и блока 223 фильтра с плавным спадом частотной характеристики с фиг. 52.
<Преобразование>
На фиг. 63 и 64 показаны примеры сигнальных точек 16-позиционной APSK и отношение γ радиусов, когда 16-позиционную APSK используют в качестве способа модуляции при передаче данных с использованием 16К кода для Sx.
На фиг. 63 и 64 16 сигнальных точек 16-позиционной PSK расположены на внутренней окружности радиуса R1 и внешней окружности радиуса R2, который больше R1.
Более конкретно, 4 сигнальные точки расположены под одинаковым углом на внутренней окружности радиуса R1 и 12 сигнальных точек расположены под одинаковым углом на внешней окружности радиуса R2.
В созвездии 16-позиционного APSK (16 сигнальных точек) отношение (значение, показывающее множитель, на который радиус R2 внешней окружности больше радиуса R1 внутренней окружности) γ=R2/R1 радиусов, являющееся отношением радиуса R2 внешней окружности больше к радиусу R1 внутренней окружности, считают оптимальным значением для каждой скорости r кодирования 16К кода для Sx целевых данных, преобразованных в сигнальные точки.
В качестве оптимального отношения γ радиусов, по первому и второму моделированию получают значение (отношение радиусов), которое лучше заранее заданного оценочного значения.
На фиг. 63 показано отношение γ радиусов, полученное при первом моделировании и на фиг. 64 показано отношение γ радиусов, полученное при втором моделировании.
При первом моделировании, как показано на фиг. 63, γ=5,25 получают как оптимальное отношение радиусов для 16К кода для Sx со скоростью r кодирования равной 7/15 и γ=4,85 получают как оптимальное отношение радиусов для 16К кода для Sx со скоростью r кодирования равной 8/15.
При втором моделировании, как показано на фиг. 64, γ=3,32 получают как оптимальное отношение радиусов для 16К кода для Sx со скоростью r кодирования равной 7/15 и γ=3,50 получают как оптимальное отношение радиусов для 16К кода для Sx со скоростью r кодирования равной 8/15.
Здесь при первом моделировании предполагается, что каналом 13 связи является NL канал (фиг. 7), параметр FER устанавливают как значение в диапазоне от 10-1 до 10-2, определено значение SNR (отношение сигнал/шум) передаваемого сигнала, и отношение радиусов, при котором FER минимально, в передаваемом сигнале SNR значения, полученного как оптимальное отношение γ радиусов.
Соответственно, можно сказать, что отношение γ радиусов, полученное при первом моделировании, является оптимальным отношением радиусов, когда передачу данных осуществляют через NL канал.
При втором моделировании, с другой стороны, каналом 13 связи является AWGN канал, отношение радиусов, при котором BICM пропускная способность (пропускная способность модуляции кода с разнесением битов), которая является верхней границей (пропускная способность канала) пропускной способности, определенной расположением сигнальных точек на созвездии и параметр SNR передаваемого сигнала является максимальным, получают как оптимальное отношение γ радиусов.
Соответственно, можно скачать, что отношение γ радиусов, полученное при втором моделировании, является оптимальным отношением радиусов, когда передачу данных осуществляют через AWGN канал.
Для 16К кода для Sx с r=7/15, когда в качестве способа модуляции применяют 16-позиционную APSK и использовано отношение γ радиусов, равное 5,25 и оптимальное для NL канала, параметр BER/FER описан выше со ссылками на фиг. 61.
Для 16К кода для Sx с r=8/15, когда в качестве способа модуляции применяют 16-позиционную APSK и использовано отношение γ радиусов, равное 4,85 и оптимальное для NL канала, параметр BER/FER описан выше со ссылками на фиг. 62.
Таким образом, благодаря использованию отношения γ радиусов, равного 5,25, для 16К кода для Sx с r=7/15, как показано на фиг. 61, может быть получено хорошее значение BER/FER и, таким образом, может быть обеспечено хорошее качество связи.
Аналогично, благодаря использованию отношения γ радиусов, равного 4,85, для 16К кода для Sx с r=8/15, как показано на фиг. 62, может быть получено хорошее значение BER/FER и, таким образом, может быть обеспечено хорошее качество связи.
В созвездии 16-позиционной APSK с отношением γ радиусов, полученным при первом моделировании, хорошее качество связи может быть обеспечено не только при использовании с NL каналом, но также при использовании с AWGN каналом или другими каналами, в том смысле, что значение BER/FER является хорошим.
В созвездии 16-позиционной APSK с отношением γ радиусов, полученным при втором моделировании, хорошее качество связи может быть обеспечено независимо от канала, в том смысле, что значение пропускной способности BICM является хорошим.
<Пример конфигурации устройства 12 приема>
На фиг. 65 показана структурная схема примера конфигурации устройства 12 приема с фиг. 7.
В блоке 151 обработки OFDM принимают OFDM сигнал из устройства 11 передачи (фиг. 7) и выполняют обработку OFDM сигнала. Данные, полученные после выполнения обработки сигнала в блоке 151 обработки OFDM, подают в блок 152 управления кадрами.
В блоке 152 управления кадрами выполняют обработку (преобразование кадра) кадра, скомпонованного данными, поданными из блока 151 обработки OFDM, и подают сигнал из полученных в результате целевых данных и сигнализацию в устройства 161 и 153 обращения частотного уплотнения.
В устройстве 153 обращения частотного уплотнения осуществляют обращение частотного уплотнения в блоке символа для данных, поданных из устройства 152 управления кадрами, и подают символ в устройство 154 обратного преобразования.
В устройстве 154 обратного преобразования осуществляют квадратурную демодуляцию путем обратного преобразования (осуществляют декодирование расположения сигнальных точек для) данных (данных на созвездии) из устройства 153 обращения частотного уплотнения на основе расположения (созвездия) сигнальных точек, определенных в квадратурной модуляции, осуществляемой на стороне устройства 11 передачи, и подают полученные в результате данные (LDPC-код (правдоподобие LDPC-кода)) в устройство 155 LDPC декодирования.
В устройстве 155 LDPC декодирования осуществляют LDPC декодирование LDPC-кода, поданного из устройства 154 обратного преобразования, и подают полученные в результате целевые данные LDPC (в этом случае ВСН код) в устройство 156 ВСН декодирования.
В устройстве 156 ВСН декодирования осуществляют ВСН декодирование целевых данных LDPC, поданных из устройства 155 LDPC декодирования, и подают на выход полученные в результате управляющие данные (сигнализация).
При этом, в устройстве 161 обращения частотного уплотнения осуществляют обращение частотного уплотнения в блоке символа для данных, поданных из устройства 152 управления кадрами, и подают символ в устройство 162 SISO/MISO декодирования.
В устройстве 162 SISO/MISO декодирования осуществляют пространственно-временное декодирование данных, поданных из устройства 161 обращения частотного уплотнения, и подают данные в устройство 163 обращения временного уплотнения.
В устройстве 163 обращения временного уплотнения осуществляют обращение временного уплотнения в блоке символа для данных, поданных из устройства 162 SISO/MISO декодирования, и подают символ в устройство 164 обратного преобразования.
В устройстве 164 обратного преобразования осуществляют квадратурную демодуляцию путем обратного преобразования (осуществляют декодирование расположения сигнальных точек для) данных (данных на созвездии) из устройства 163 обращения временного уплотнения на основе расположения (созвездия) сигнальных точек, определенных в квадратурной модуляции, осуществляемой на стороне устройства 11 передачи, и подают полученные в результате данные в устройство 165 обращения разнесения битов.
В устройстве 165 обращения разнесения битов осуществляют обращение разнесения битов для данных из устройства 164 обратного преобразования и подают LDPC-код (правдоподобие 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 удаления пустот, осуществляют необходимую обработку с целью подачи на выход выходных потоков.
Здесь, устройство 12 приема может быть выполнено без части блоков, показанных на фиг. 65. То есть, например, в случае, когда устройство 11 передачи (фиг. 8) выполнено без устройства 118 временного уплотнения, устройства 119 SISO/MISO кодирования, устройства 120 частотного уплотнения и устройства 124 частотного уплотнения, устройство 12 приема может быть выполнено без устройства 163 обращения временного уплотнения, устройства 162 SISO/MISO декодирования, устройства 161 обращения частотного уплотнения и устройства 153 обращения частотного уплотнения, которые являются блоками, соответствующими устройству 118 временного уплотнения, устройству 119 SISO/MISO кодирования, устройству 120 частотного уплотнения и устройству 124 частотного уплотнения устройства 11 передачи.
На фиг. 66 показана структурная схема, иллюстрирующая пример конфигурации устройства 165 обращения разнесения битов с фиг. 65.
Устройство 165 обращения разнесения битов содержит устройство 54 (MUX) мультиплексирования и устройство 55 обращения прокручивания столбцов и в устройстве 165 обращения разнесения битов осуществляют обращение разнесения (битов) битов символа, которые являются данными, поданными из устройства 164 обратного преобразования (фиг. 65).
То есть, в устройстве 54 мультиплексирования выполняют процесс обратной перестановки (процесс обратный для процесса перестановки) для процесса перестановки, выполняемого в устройстве 25 демультиплексирования с фиг. 9, то есть процесс обратной перестановки, направленный на возврат позиций битов (правдоподобие битов кода) LDPC-кодов, измененных в ходе процесса перестановки, на исходные позиции, что осуществляют с битами символа, поданными из устройства 164 обратного преобразования, и подают полученный в результате LDPC-код в устройство 55 обращения прокручивания столбцов.
В устройстве 55 обращения прокручивания столбцов осуществляют обращение прокручивания столбцов (процесс, обратный по отношению к прокручиванию столбцов), при этом прокручивание столбцов как процесс перераспределения выполняют в устройстве 24 прокручивания столбцов с фиг. 9, то есть осуществляют обращение прокручивания столбцов как процесса обращения перераспределения, направленного на возвращение битов LDPC-кодов, расположение которых изменилось в ходе прокручивания столбцов как процесса перераспределения, в исходное расположение, что делают для LDPC-кода, поданного из устройства 54 мультиплексирования.
Более конкретно, в устройстве 165 обращения прокручивания столбцов записывают биты LDPC-кода в память для обращения прокручивания, конфигурация которой совпадает с конфигурацией памяти 31, показанной на фиг. 28, считывают биты кода и осуществляют обращение прокручивания столбцов.
Тем не менее, в устройстве 55 обращения прокручивания столбцов запись битов кода осуществляют в направлении строк памяти для обращения прокручивания, что делают с использованием адресов считывания, когда биты кода считывают из памяти 31, в качестве адресов записи. Кроме того, считывание битов кода осуществляют в направлении столбцов памяти для обращения прокручивания, что делают с использованием адресов записи, когда биты кода записывают в память 31, в качестве адресов считывания.
LDPC-код, который получают в результате обращения прокручивания столбцов, подают из устройства 55 обращения прокручивания столбцов в устройство 166 LDPC декодирования.
Здесь в случае, когда разнесение битов контроля четности, прокручивание столбцов и процесс перестановки осуществляют для LDPC-кода, поданного из устройства 164 обратного преобразования в устройство 165 обращения разнесения битов, и обращение разнесения битов контроля четности (процесс, обратный по отношению к разнесению битов контроля четности, то есть обращение разнесения битов контроля четности возвращает исходное расположение битов LDPC-кода, расположение которых изменилось в ходе разнесения битов контроля четности), которое соотносится с разнесением битов контроля четности, и обращение процесса перестановки, которое соотносится к процессом перестановки, и обращение прокручивания столбцов, которое соотносится с прокручиванием столбцов, могут быть осуществлены в устройстве 165 обращения разнесения битов.
Тем не менее, устройство 165 обращения разнесения битов с фиг. 66 содержит устройство 54 мультиплексирования, в котором осуществляют обращение процесса перестановки, которое соотносится с процессом перестановки, и устройство 55 обращения прокручивания столбцов, в котором осуществляют обращение прокручивания столбцов, которое соотносится с прокручиванием столбцов, но не содержит блока, в котором осуществляют обращение разнесения битов контроля четности, которое соотносится с разнесением битов контроля четности, и обращение разнесения битов контроля четности не осуществляют.
Следовательно, LDPC-код, для которого осуществили обращение процесса перестановки и обращение прокручивания столбцов и не осуществили обращение разнесения битов контроля четности, подают из (устройства 55 обращения прокручивания столбцов) устройства 165 обращения разнесения битов в устройство 166 LDPC декодирования.
В устройстве 166 LDPC декодирования осуществляют LDPC декодирование LDPC-кода, поданного из устройства 165 обращения разнесения битов, что делают с использованием преобразованной проверочной матрицей, полученной путем осуществления, по меньшей мере, замены столбцов, соответствующих разнесению битов контроля четности, в проверочной матрице Н, использованной в устройстве 115 LDPC кодирования с фиг. 8 для осуществления LDPC кодирования, и подают на выход полученные в результате данные как результат декодирования целевых данных LDPC.
На фиг. 67 показана блок-схема, иллюстрирующая процесс обработки, осуществляемый в устройстве 164 обратного преобразования, устройстве 165 обращения разнесения битов и устройстве 166 LDPC декодирования с фиг. 66.
На этапе S111 в устройстве 164 обратного преобразования осуществляют обратное преобразование данных (данные на созвездии, преобразованные в сигнальные точки), поданных из устройства 163 обращения временного уплотнения, осуществляют ортогональную модуляцию и подают символ В устройство 165 обращения разнесения битов и процесс обработки переходит на этап S112.
На этапе S112 в устройстве 165 обращения разнесения битов осуществляют обращение разнесения (обращение разнесения битов) данных, поданных из устройства 164 обратного преобразования, и процесс обработки переходит на этап S113.
То есть, на этапе S112 в устройстве 165 обращения разнесения битов, в устройстве 54 мультиплексирования осуществляют обращение процесса перестановки для данных (соответствующих битам символа), поданных из устройства 164 обратного преобразования, и подают полученные в результате биты LDPC-кода в устройство 55 обращения прокручивания столбцов.
В устройстве 55 обращения прокручивания столбцов осуществляют обращение прокручивания столбцов для LDPC-кода, поданного из устройства 54 мультиплексирования, и подают полученный в результате LDPC-код (правдоподобие LDPC-кода) в устройство 166 LDPC декодирования.
На этапе S113 в устройстве 166 LDPC декодирования осуществляют LDPC декодирование LDPC-кода, поданного из устройства 55 обращения прокручивания столбцов, что делают с использованием преобразованной проверочной матрицы, полученной путем осуществления, по меньшей мере, замены столбцов, соответствующей разнесению битов контроля четности, в проверочной матрице Н, использованной в устройстве 115 LDPC кодирования с фиг. 8 для осуществления LDPC кодирования, и подают на выход полученные в результате данные, как результат декодирования целевых данных LDPC, в устройство 167 ВСН декодирования.
На фиг. 66 для удобства объяснения устройство 54 мультиплексирования, в котором выполняют обращение процесса перестановки, и устройство 55 обращения прокручивания столбцов, в котором осуществляют обращение прокручивания столбцов, выполнены отдельно, аналогично случаю с фиг. 9. Тем не менее, устройство 54 мультиплексирования и устройство 55 обращения прокручивания столбцов могут быть выполнены как единое целое.
В устройстве 116 разнесения битов с фиг. 9, когда не осуществляют прокручивание столбцов, не нужно предусматривать устройство 55 обращения прокручивания столбцов в устройстве 165 обращения разнесения битов с фиг. 66.
Далее, будет дополнительно описано LDPC декодирование, которое осуществляют в устройстве 166 LDPC декодирования с фиг. 65.
В устройстве 166 LDPC декодирования с фиг. 65, как описано выше, осуществляют LDPC декодирование LDPC-кода, поданного из устройства 55 обращения прокручивания столбцов, в котором осуществили обращение процесса перестановки и обращение прокручивания столбцов и не осуществили обращение разнесения битов контроля четности, при этом LDPC декодирование осуществляют с использованием преобразованной проверочной матрицы, полученной путем осуществления, по меньшей мере, замены столбцов, соответствующей разнесению битов контроля четности, в проверочной матрице Н, использованной в устройстве 115 LDPC кодирования с фиг. 8 для осуществления LDPC кодирования.
В этом случае ранее (смотри, например, JP 4224777 В) было предложено LDPC декодирование, которое может подавлять рабочую частоту на достаточно реальном диапазоне при одновременном уменьшении масштаба схемы, что делают путем LDPC декодирования с использованием преобразованной проверочной матрицы.
Следовательно, сначала будет описано ранее предложенное LDPC декодирование с использованием преобразованной проверочной матрицы со ссылками на фиг. 68-71.
На фиг. 68 показан пример проверочной матрицы Н LDPC-кода, для которого длина N кода равна 90, а скорость кодирования равна 2/3.
На фиг. 68 (аналогично фиг. 69 и фиг. 70, которые будут рассмотрены ниже) 0 показан в виде точки (.).
В проверочной матрице Н с фиг. 68 матрица контроля четности обладает ступенчатой структурой.
На фиг. 69 показана проверочная матрица Н', полученная путем осуществления замены строк в соответствии с равенством (11) и замены столбцов в соответствии с равенством (12) в проверочной матрице Н с фиг. 68.
В равенствах (11) и (12) s, t, x и y являются целыми числами в следующих диапазонах соответственно: 0≤s<5, 0≤t<6, 0≤x<5 и 0≤t<6.
В соответствии с заменой строк из равенства (11), замену осуществляют так, что 1-ую, 7-ую, 13-ую, 19-ую и 25-ую строки, номера которых при делении на 6 дают остаток, равный 1, заменяют соответственно на 1-ую, 2-ую, 3-ью, 4-ую и 5-ую строки, а 2-ую, 8-ую, 14-ую, 20-ую и 26-ую строки, номера которых при делении на 6 дают остаток, равный 2, заменяют соответственно на 6-ую, 7-ую, 8-ью, 9-ую и 10-ую строки.
В соответствии с заменой столбцов из равенства (12), замену осуществляют так, что 61-й, 67-й, 73-й, 79-й и 85-й столбцы, номера которых при делении на 6 дают остаток, равный 1, заменяют соответственно на 61-й, 62-й, 63-й, 64-й и 65-й столбцы, а 62-й, 68-й, 74-й, 80-й и 86-й столбцы, номера которых при делении на 6 дают остаток, равный 2, заменяют соответственно на 66-й, 67-й, 68-й, 69-й и 70-й столбцы.
Таким образом, матрица, полученная путем осуществления замены строк и столбцов в проверочной матрице Н с фиг. 68, является проверочной матрицей Н' с фиг. 69.
В этом случае, даже при осуществления замены строк для проверочной матрицы Н, расположение битов LDPC-кода не изменяется.
Замена столбцов из равенства (12) соответствует разнесению битов контроля четности, когда (K+qx+у+1)-й бит кода перемещают в позицию (K+Py+х+1)-го бита кода, при этом информационная длина K равна 60, количество Р столбцов блока циклической структуры равно 5, делитель q (=М/Р) длины М контроля четности (в этом случае - 30) равен 6.
Следовательно, проверочная матрица Н' с фиг. 69 является преобразованной проверочной матрицей, полученной путем осуществления, по меньшей мере, замены столбцов, при которой заменяют K+qx+y+1-й столбец проверочной матрицы Н с фиг. 68 (которую можно произвольно назвать исходной проверочной матрицей) на K+Py+x+1-й столбец.
Если проверочную матрицу Н' с фиг. 69 умножают на результат, полученный при осуществлении той же замены, что и в равенстве (12), для LDPC-кода с проверочной матрицей Н с фиг. 68, то выходом будет нулевой вектор. То есть, если вектор-строка, полученная путем осуществления замены столбцов из равенства (12) для вектор-строки с как LDPC-кода (одно кодовое слово) исходной проверочной матрицы Н, обозначить как с', HcT является нулевым вектором, что следует из свойства проверочной матрицы. Следовательно, Н'с'T естественно является нулевым вектором.
Таким образом, преобразованная проверочная матрица Н' с фиг. 69 является проверочной матрицей LDPC-кода с', который получен при осуществлении замены столбцов из равенства (12) LDPC-кода с исходной проверочной матрицы Н.
Следовательно, замену столбцов из равенства (12) осуществляют для LDPC-кода исходной проверочной матрицы Н, LDPC-код с' после замены столбцов декодируют (LDPC декодирование) с использованием преобразованной проверочной матрицы Н' с фиг. 69, обратную замену относительно замены столбцов из равенства (12) осуществляют для результата декодирования и может быть получен тот же результат декодирования, что и в случае, когда LDPC-код исходной проверочной матрицы Н декодируют с использованием проверочной матрицы Н.
На фиг. 70 показана преобразованная проверочная матрица Н' с фиг. 69, разделенная на блоки из матриц размера 5×5.
На фиг. 70, преобразованная проверочная матрица Н' показана как объединение единичных матриц размера 5×5 (=р×р), матриц (здесь и далее называемых квазиединичной матрицей), полученных путем замены одной или нескольких 1 единичной матрицы на ноль, матриц (здесь и далее называемых матрицей со сдвигом), полученных циклическим сдвигом единичной матрицы или квазиединичной матрицы, суммы (здесь и далее называемых суммой матриц) двух или более матриц из единичной матрицы, квазиединичной матрицы и матрицы со сдвигом и нулевой матрицы размера 5×5.
Преобразованная проверочная матрица Н' с фиг. 70 может быть выполнена с использованием единичной матрицы размера 5×5, квазиединичной матрицы, матрицы со сдвигом, суммы матриц и нулевой матрицы. Следовательно, матрицы размера 5×5 (единичная матрица, квазиединичная матрица, матрица со сдвигом, сумма матриц, и нулевая матрица), которые формируют преобразованную проверочную матрицу Н', здесь и далее называют составляющими матрицами.
Когда декодируют LDPC-код, представленный проверочной матрицей, которая представлена составляющими матрицами размера Р×Р, может быть использована архитектура, в которой одновременно осуществляют Р преобразований проверочной вершины и преобразований переменной вершины.
На фиг. 71 показана структурная схема, иллюстрирующая пример конфигурации устройства декодирования, в котором осуществляют декодирование.
То есть, на фиг. 71 показан пример конфигурации устройства декодирования, в котором осуществляют декодирование LDPC-кода с использованием преобразованной проверочной матрицы Н' с фиг. 68, полученной при осуществлении, по меньшей мере, замены столбцов из равенства (12) для исходной проверочной матрицы Н с фиг. 70.
Устройство декодирования с фиг. 71 содержит память 300 хранения данных линий, которая содержит 6 блоков 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 хранения данных линий содержит 6 блоков FIFO с 3001 по 3006, которые соответствуют числу, полученному при делении количества 30 строк преобразованной проверочной матрицы Н' с фиг. 70 на количество 5 строк составляющей матрицы (количество Р столбцов блока циклической структуры). Блок FIFO 300y (y=1, 2, … и 6) содержит несколько этапов областей хранения. В области хранения каждого этапа могут быть одновременно считаны или записаны сообщения, соответствующие пяти линиям, что равно количеству строк и количеству столбцов составляющей матрицы (количество Р столбцов блока циклической структуры). Количество этапов областей хранения блока FIFO 300y равно 9 и является максимальным количеством чисел, равных 1 (вес Хэмминга), в направлении строк преобразованной проверочной матрицы с фиг. 70.
В блоке FIFO 3001 данные (сообщения vi из переменной вершины), соответствующие позициям 1 в первой - пятой строках преобразованной проверочной матрицы Н' с фиг. 70, хранят в форме заполнения каждой строки в поперечном направлении (в форме, в которой игнорируют 0). То есть, если пересечение j-й строки и i-го столбца представляют как (j, i), данные, соответствующие позициям 1 единичной матрицы размера 5×5 с (1, 1) по (5, 5) преобразованной проверочной матрицы Н', сохраняют в области хранения первого этапа блока FIFO 3001. В области хранения второго этапа сохраняют данные, соответствующие позициям 1 матрицы со сдвигом (матрица со сдвигом, полученная циклическим сдвигом единичной матрицы размера 5×5 вправо на 3) с (1, 21) по (5, 25) преобразованной проверочной матрицы Н'. Аналогично упомянутому выше случаю, в областях хранения третьего - восьмого этапов данные сохраняют со связью с преобразованной проверочной матрицей Н'. В области хранения девятого этапа сохраняют данные, соответствующие позициям 1 матрицы со сдвигом (матрица со сдвигом, полученная циклическим сдвигом единичной матрицы размера 5×5 вправо на 1) с (1, 86) по (5, 90) преобразованной проверочной матрицы Н'.
В блоке FIFO 3002 сохраняют данные, соответствующие позициям 1 в шестой - десятой строках преобразованной проверочной матрицы Н' с фиг. 70. То есть, в области хранения первого этапа блока FIFO 3002, сохраняют данные, соответствующие позициям 1 первой матрицы со сдвигом, входящей в состав суммы матриц (сумма матриц является суммой первой матрицей со сдвигом, полученной циклическим сдвигом единичной матрицы размера 5×5 вправо на 1, и второй матрицы со сдвигом, полученной циклическим сдвигом единичной матрицы размера 5×5 вправо на 2) с (6, 1) по (10, 5) преобразованной проверочной матрицы Н'. Кроме того, в области хранения второго этапа сохраняют данные, соответствующие позициям 1 второй матрицы со сдвигом, входящей в состав суммы матриц, с (6, 1) по (10, 5) преобразованной проверочной матрицы H'.
То есть, что касается составляющей матрицы, вес которой равен двум или более, когда составляющая матрица является суммой нескольких матриц из списка, состоящего из единичной матрицы размера Р×Р, вес которой равен 1, квазиединичной матрицы, в которой один или более элементов, равных 1 в единичной матрице, равны 0, или матрицы со сдвигом, полученной циклическим сдвигом единичной матрицы или квазиединичной матрицы, данные (сообщения, соответствующие линиям, принадлежащим единичной матрице, квазиединичной матрице или матрице со сдвигом), соответствующие позициям 1 в единичной матрице веса 1, квазиединичной матрице или матрице со сдвигом, сохраняют по тому же самому адресу (тот же блок FIFO из блоков FIFO с 3001 по 3006).
Далее, в областях хранения третьего - девятого этапов данные сохраняют со связью с преобразованной проверочной матрицей Н', аналогично упомянутому выше случаю.
В блоках FIFO с 3003 по 3006 данные сохраняют со связью с преобразованной проверочной матрицей Н', аналогично упомянутому выше случаю.
Память 304 хранения данных линий содержит 18 блоков FIFO с 3041 по 30418, которые соответствуют числу, полученному при делении количества 90 строк преобразованной проверочной матрицы Н' на число 5, которое является количеством столбцов составляющей матрицы (количество Р столбцов блока циклической структуры). Блок FIFO 304x (x=1, 2, … и 18) содержит несколько этапов областей хранения. В области хранения каждого этапа могут быть одновременно считаны или записаны сообщения, соответствующие пяти линиям, что соответствует количеству строк и количеству столбцов составляющей матрицы (количество Р столбцов блока циклической структуры).
В блоке FIFO 3041 данные (сообщения uj из проверочных вершин), соответствующие позициям 1 в первом - пятом столбцах преобразованной проверочной матрицы Н' с фиг. 70, хранят в форме заполнения каждой строки в продольном направлении (в форме, в которой игнорируют 0). То есть, если пересечение j-й строки и i-го столбца представляют как (j, i), данные, соответствующие позициям 1 единичной матрицы размера 5×5 с (1, 1) по (5, 5) преобразованной проверочной матрицы Н', сохраняют в области хранения первого этапа блока FIFO 3041. В области хранения первого этапа сохраняют данные, соответствующие позициям 1 первой матрицы со сдвигом, входящей в состав суммы матриц (сумма матриц является суммой первой матрицей со сдвигом, полученной циклическим сдвигом единичной матрицы размера 5×5 вправо на 1, и второй матрицы со сдвигом, полученной циклическим сдвигом единичной матрицы размера 5×5 вправо на 2) с (6, 1) по (10, 5) преобразованной проверочной матрицы Н'. Кроме того, в области хранения третьего этапа сохраняют данные, соответствующие позициям 1 второй матрицы со сдвигом, входящей в состав суммы матриц, с (6, 1) по (10, 5) преобразованной проверочной матрицы Н'.
То есть, что касается составляющей матрицы, вес которой равен двум или более, когда составляющая матрица является суммой нескольких матриц из списка, состоящего из единичной матрицы размера Р×Р, вес которой равен 1, квазиединичной матрицы, в которой один или более элементов, равных 1 в единичной матрице, равны 0, или матрицы со сдвигом, полученной циклическим сдвигом единичной матрицы или квазиединичной матрицы, данные (сообщения, соответствующие линиям, принадлежащим единичной матрице, квазиединичной матрице или матрице со сдвигом), соответствующие позициям 1 в единичной матрице веса 1, квазиединичной матрице или матрице со сдвигом, сохраняют по тому же самому адресу (тот же блок FIFO из блоков FIFO с 3041 по 30418).
Далее, в областях хранения четвертого - пятого этапов данные сохраняют со связью с преобразованной проверочной матрицей Н', аналогично упомянутому выше случаю. Количество этапов областей хранения блока FIFO 3041 равно 5, что является максимальным количеством чисел, равных 1 (вес Хэмминга), в направлении строк в первом - пятом столбцах преобразованной проверочной матрицы Н'.
В блоках FIFO с 3042 по 3043 данные сохраняют со связью с преобразованной проверочной матрицей Н', аналогично упомянутому выше случаю, и каждая длина (количество этапов) равна 5. В блоках FIFO с 3044 по 30412 данные сохраняют со связью с преобразованной проверочной матрицей Н', аналогично упомянутому выше случаю, и каждая длина равна 3. В блоках FIFO с 30413 по 30418 данные сохраняют со связью с преобразованной проверочной матрицей Н', аналогично упомянутому выше случаю, и каждая длина равна 2.
Далее будет описана работа устройства декодирования с фиг. 71.
Память 300 хранения данных линий содержит 6 блоков FIFO с 3001 по 3006. В соответствии с информацией (матричные данные) D312, о том, какой строке преобразованной проверочной матрицы Н1 с фиг. 70 принадлежат пять сообщений D311, поданных из схемы 308 циклического сдвига предыдущего этапа, блок FIFO для хранения данных выбирают из блоков FIFO с 3001 по 3006 и пять сообщений D311 вместе сохраняют последовательно в выбранный блок FIFO. Когда данные считаны, в памяти 300 хранения данных линий последовательно считывают пять сообщений D3001 из блока FIFO 3001 и подают сообщения в устройство 301 выбора следующего этапа. После окончания считывания сообщений из блока FIFO 3001, в памяти 300 хранения данных линий считывают сообщения последовательно из блоков FIFO с 3002 по 3006 и подают сообщения в устройство 301 выбора.
В устройстве 301 выбора выбирают пять сообщений из блока FIFO, из которого в текущий момент считаны данные из блоков FIFO с 3001 по 3006, в соответствии с выбранным сигналом D301, и подают выбранные сообщения как сообщения D302 в блок 302 вычисления в проверочных вершинах.
Блок 302 вычисления в проверочных вершинах содержит пять устройств 3021 - 3025 вычисления в проверочных вершинах. В блоке 302 вычисления в проверочных вершинах осуществляют преобразование проверочной вершины в соответствии с равенством (7), что делают с использованием сообщений D302 (с D3021 по D3025) (сообщения vi из равенства (7)), поданных через устройство 301 выбора, и подают пять сообщений D303 (с D3031 по D3035) (сообщения uj из равенства (7)), полученных в результате преобразования проверочной вершины, в схему 303 циклического сдвига.
В схеме 303 циклического сдвига циклически сдвигают пять сообщений с D3031 по D3035, вычисленные в блоке 302 вычисления в проверочных вершинах, на основе информации D305 (матричные данные) о том, сколько единичных матриц (или квазиединичных матриц), являющихся исходными для преобразованной проверочной матрице Н', циклически сдвинуты с целью получения соответствующих линий, и подают результат в качестве сообщений D304 в память 304 хранения данных линий.
Память 304 хранения данных линий содержит восемнадцать блоков FIFO с 3041 по 30418. В соответствии с информацией D305, о том, какой строке преобразованной проверочной матрицы Н' принадлежат пять сообщений D304, поданных из схемы 303 циклического сдвига предыдущего этапа, блок FIFO для хранения данных выбирают из блоков FIFO с 3041 по 30418 и пять сообщений D304 вместе сохраняют последовательно в выбранный блок FIFO. Когда данные считаны, в памяти 304 хранения данных линий последовательно считывают пять сообщений D3041 из блока FIFO 3041 и подают сообщения в устройство 305 выбора следующего этапа. После окончания считывания сообщений из блока FIFO 3041, в памяти 304 хранения данных линий считывают сообщения последовательно из блоков FIFO с 3042 по 30418 и подают сообщения в устройство 305 выбора.
В устройстве 305 выбора выбирают пять сообщений из блока FIFO, из которого в текущий момент считаны данные из блоков FIFO с 3041 по 30418, в соответствии с выбранным сигналом D307, и подают выбранные сообщения как сообщения D308 в блок 307 вычисления в переменных вершинах и блок 309 вычисления декодируемого слова.
Между тем, в блоке 310 перераспределения принятых данных перераспределяют LDPC-код D313, то есть соответствующий проверочной матрице Н с фиг. 68 и полученный по каналу 13 связи, что делают путем осуществления замены столбцов из равенства (12), и подают LDPC-код в качестве принятых данных D314 в память 306 принятых данных. В памяти 306 принятых данных вычисляют принятое LLR (отношение логарифмов правдоподобия) по принятым данным D314, поданным из блока 310 перераспределения принятых данных, сохраняют принятое LLR, собирают пять принятых LLR и подают принятые LLR в качестве принятых значений D309 в блок 307 вычисления в переменных вершинах и блок 309 вычисления декодируемого слова.
Блок 307 вычисления в переменных вершинах содержит пять устройств 3071 - 3075 вычисления в переменных вершинах. В блоке 307 вычисления в переменных вершинах осуществляют преобразование переменной вершины в соответствии с равенством (1) с использованием сообщений D308 (с D3081 по D3085) (сообщения uj из равенства (1)), поданные через устройство 301 выбора, и пяти принятых значений D309 (принятые значения им из равенства (1)), поданных из памяти 306 принятых данных, и подают полученные сообщения D310 (с D3101 по D3105) (сообщение vi из равенства (1)) как результат преобразования в схему 308 циклического сдвига.
В схеме 308 циклического сдвига циклически сдвигают пять сообщений с D3101 по D3105, вычисленных в блоке 307 вычисления в переменных вершинах, на основе информации о том, сколько единичных матриц (или квазиединичных матриц), являющихся исходными для преобразованной проверочной матрицы Н', циклически сдвинуты с целью получения соответствующих линий, и подают результат в качестве сообщений D311 в память 300 хранения данных линий.
Благодаря совершению упомянутого выше преобразования в одном цикле, декодирование (преобразование переменной вершины и преобразование проверочной вершины) LDPC-кода может быть осуществлено один раз. После заранее заданного количества декодирований LDPC-кода, в устройстве декодирования с фиг. 71 вычисляют конечный результат декодирования и подают конечный результат декодирования в блок 309 вычисления декодируемого слова и блок 311 перераспределения декодированных данных.
То есть, блок 309 вычисления декодируемого слова содержит пять устройств 3091 - 3095 вычисления декодируемого слова. В блоке 309 вычисления декодируемого слова вычисляют результат декодирования (декодируемое слово) на основе равенства (5) как окончательный этап многократного декодирования с использованием пяти сообщений D308 (с D3081 по D3085) (сообщения uj из равенства), поданные на выход устройством 301 выбора, и пяти принятых значений D309 (принятые значения u0i из равенства (5)), поданные из памяти 306 принятых данных, и подают полученные в результате декодированные данные D315 в блок перераспределения декодированных данных.
В блоке 311 перераспределения декодированных данных осуществляют обращение замены столбцов из равенства (12) для декодированных данных D315, поданных из блока 309 вычисления декодируемого слова, перераспределяют их порядок и подают на выход декодированные данные в качестве конечного результата D316 декодирования.
Как упомянуто выше, путем осуществления или замены строк или замены столбцов или и того и другого для проверочной матрицы (исходная проверочная матрица) и преобразования ее в проверочную матрицу (преобразованная проверочная матрица), на которую можно смотреть как на объединение единичной матрицы размера р×р, квазиединичной матрицы, в котором один или более 1 становятся 0, матрицы со сдвигом, которая получается циклическим сдвигом единичной матрице или квазиединичной матрицы, суммы матрицы, которая является суммой двух или более единичных матрицы, квазиединичных матриц и матрицы со сдвигом и нулевой матрицы размера р×р, то есть объединение составляющих матриц, как декодирования LDPC-кода, становится возможным применять архитектуру, в которой одновременно осуществляют вычисление проверочной вершине и вычисление переменной вершины Р раз, что является числом, меньшим количества строк и количества столбцов проверочной матрицы. В случае применения архитектуры, в которой одновременно осуществляют вычисление в вершине (вычисление в проверочных вершинах и вычисление в переменных вершинах) Р раз, что является числом, меньшим количества строк и количества столбцов проверочной матрицы, по сравнению со случаем, когда вычисление в вершине осуществляют одновременно количество раз, равное количеству строк и количеству столбцов проверочной матрицы, возможно подавить частоту преобразования в возможном диапазоне и возможно осуществить много элементов итеративного декодирования.
В устройстве 166 LDPC декодирования, которое входит в состав устройства 12 приема с фиг. 65, осуществляют LDPC декодирование путем одновременного осуществления Р преобразований проверочной вершины и преобразований переменной вершины, аналогично устройству декодирования с фиг. 71.
То есть, для упрощения объяснения, если проверочная матрица LDPC-кода, поданная из устройства 115 LDPC кодирования, входящего в состав устройства 11 передачи с фиг. 8, считается проверочной матрицей Н, показанной на фиг. 68, в которой матрица контроля четности обладает ступенчатой структурой, в устройстве 23 разнесения битов контроля четности устройства 11 передачи разнесение битов контроля четности, когда (K+qx+y+1)-й бит кода перемещают в позицию (K+Py+х+1)-го бита кода, осуществляют в состоянии, когда информационная длина К равна 60, количество Р столбцов блока циклической структуры равно 5 и делитель q (=М/Р) длины М контроля четности равен 6.
Так как разнесение битов контроля четности соответствует замене столбцов из равенства (12), как описано выше, то не нужно осуществлять замену столбцов из равенства (12) в устройстве 166 LDPC декодирования.
По этой причине, в устройстве 12 приема с фиг. 65, как описано выше, LDPC-код, в котором не осуществляют обращение разнесения битов контроля четности, то есть LDPC-код в состоянии, в котором осуществлена замена столбцов из равенства (12), подают из устройства 55 обращения прокручивания столбцов в устройство 166 LDPC декодирования. В устройстве 166 LDPC декодирования, осуществляют тот же процесс обработки, что и в устройстве декодирования с фиг. 71, за исключением того, что не осуществляют замену столбцов из равенства (12).
То есть, на фиг. 72 показан пример конфигурации устройства 166 LDPC декодирования с фиг. 65.
На фиг. 72 конфигурация устройства 166 LDPC декодирования совпадает с конфигурацией устройства декодирования с фиг. 71, за исключением того, что не предусмотрен блок 310 перераспределения принятых данных с фиг. 71, и в устройстве 166 LDPC декодирования выполняют аналогичный процесс обработки, что и в устройстве декодирования с фиг. 71, за исключением того, что не осуществляют замену столбцов из равенства (12). Следовательно, опустим описание устройства LDPC декодирования.
Как описано выше, так как устройство 166 LDPC декодирования может быть выполнено без блока 310 перераспределения принятых данных, масштаб может быть уменьшен по сравнению с устройством декодирования с фиг. 71.
На фиг. 68-72 для упрощения описания длину N LDPC-кода устанавливают равной 90, информационную длину K устанавливают равной 60, количество Р столбцов (количество строк и количество столбцов составляющей матрицы) блока циклической структуры устанавливают равным 5 и делитель q (=М/Р) длины М контроля четности устанавливают равным 6. Тем не менее, длина N кода, информационная длина K, количество Р столбцов блока циклической структуры и делитель q (=М/Р) не обязательно равны приведенным выше значениям.
То есть, в устройстве 11 передачи с фиг. 8 в устройстве 115 LDPC кодирования подают на выход LDPC-код, для которого длину N кода устанавливают равной 64800 или 16200, информационную длину К устанавливают равной N-Pq (=N-М), количество Р столбцов блока циклической структуры устанавливают равным 360 и делитель q устанавливают равным М/Р. Тем не менее, устройство 166 LDPC декодирования с фиг. 72 может быть применено в случае, когда Р преобразований проверочной вершины и преобразований переменной вершины одновременно осуществляют для LDPC-кода и осуществляют LDPC декодирование.
На фиг. 73 показана обработка, осуществляемая устройством 54 мультиплексирования, входящим в состав устройства 165 обращения разнесения битов с фиг. 66.
То есть, в участке А фиг. 73 показан пример функциональной конфигурации устройства 54 мультиплексирования.
Устройство 54 мультиплексирования содержит блок 1001 обращения перестановки и память 1002.
В устройстве 54 мультиплексирования осуществляют процесс обращения перестановки (процесс, обратный для процесса перестановки), соответствующий процессу перестановки, который выполняют в устройстве 25 демультиплексирования устройства 11 передачи, то есть процесс обращения перестановки, направленный на возврат позиций битов (правдоподобие битов кода) LDPC-кодов, измененных в ходе процесса перестановки, на исходные позиции, что осуществляют с битами символа, поданными из устройства 164 обратного преобразования, и подают полученный в результате LDPC-код в устройство 55 обращения прокручивания столбцов следующего этапа.
То есть, в устройстве 54 мультиплексирования биты y0, y1, … и ymb-1 символов в количестве mb битов b символов подают в блок 1001 обращения перестановки в виде блоков из b (последовательных) символов.
В блоке 1001 обращения перестановки осуществляют обращение перестановки, направленное на возврат позиций битов y0, y1, … и ymb-1 символов в количестве mb битов до расположения битов b0, b1, … и bmb-1 кода исходных mb битов (расположение битов b0 - bmb-1 кода до осуществления перестановки в блоке 32 перестановки, входящем в состав устройства 25 демультиплексирования стороны устройства 11 передачи), и подают на выход полученные в результате биты b0 - bmb-1 кода в количестве mb битов.
Емкость памяти 1002 такова, что она способна хранить mb битов в направлении строк (поперечном) и хранить N/(mb) битов в направлении столбцов (продольном), аналогично памяти 31, входящей в состав устройства 25 демультиплексирования стороны устройства 11 передачи. То есть, память 1002 содержит mb столбцов, в которых хранят N/(mb) битов.
Тем не менее, в памяти 1002 запись битов LDPC-кода из блока 1001 обращения перестановки осуществляют в направлении, в котором осуществляли считывание битов кода из памяти 31 устройства 25 демультиплексирования устройства 11 передачи, и считывание битов кода, записанных в память 1002, осуществляют в направлении, в котором осуществляли запись битов кода в память 31.
То есть, в устройстве 54 мультиплексирования устройства 12 передачи, как показано в участке А фиг. 73, запись битов LDPC-кода из блока 1001 обращения перестановки в направлении строк в блок из mb битов последовательно осуществляют по направлению к нижним строкам от первой строки памяти 1002.
Если заканчивается запись битов кода, соответствующих одной длине кода, в устройстве 54 мультиплексирования считывают биты кода из памяти 1002 в направлении столбцов и подают биты кода в устройство 55 обращения прокручивания столбцов следующего этапа.
В этом случае, в участке В фиг. 73 показано считывание битов кода из памяти 1002.
В устройстве 54 мультиплексирования считывание битов LDPC-кода в направлении сверху вниз (направлении столбцов) с верхней части столбцов, образующих память 1002, осуществляют начиная слева по направлению к столбцам правой стороны.
На фиг. 74 показана обработка, осуществляемая устройством 55 обращения прокручивания столбцов, входящим в состав устройства 165 обращения разнесения битов с фиг. 66.
То есть, на фиг. 74 показан пример конфигурации памяти 1002 устройства 54 мультиплексирования.
Емкость памяти 1002 такова, что она способна хранить mb битов в направлении столбцов (продольном) и N/(mb) битов в направлении строк (поперечном) и содержит mb столбцов.
В устройстве 55 обращения прокручивания столбцов записывают биты LDPC-кода в направлении столбцов в память 1002, управляют позицией начала считывания, когда биты кода считывают в направлении столбцов, и осуществляют обращение прокручивания столбцов.
То есть, в устройстве 55 обращения прокручивания столбцов позицию начала считывания, нужную для начала считывания битов кода, изменяют надлежащим образом для каждого из нескольких столбцов и выполняют процесс обращения перераспределения, направленный на возврат расположения битов кода, перераспределенных при прокручивании столбцов, до исходного расположения.
В этом случае, на фиг. 74 показан пример конфигурации памяти 1002, когда способом модуляции является 16-позиционная APSK, 16-позиционная QAM или подобная и множитель b равен 1, как описано на фиг. 28. В этом случае количество m битов одного символа равно 4 и память 1002 содержит четыре (=mb) столбца.
В устройстве 55 обращения прокручивания столбцов (вместо устройства 54 мультиплексирования) последовательно осуществляют запись битов LDPC-кода, поданного из блока 1001 обращения перестановки, в направлении строк по направлению к нижним строкам, начиная от первой строки памяти 1002.
Если заканчивается запись битов кода, соответствующих одной длине кода, в устройстве 55 обращения прокручивания столбцов осуществляют считывание битов кода в направлении сверху вниз (направлении столбцов) с верхней части памяти 1002, начиная слева по направлению к столбцам правой стороны.
Тем не менее, в устройстве 55 обращения прокручивания столбцов осуществляют считывание битов кода из памяти 1002 с использованием позиции начала записи с целью записи битов кода в устройстве 24 прокручивания столбцов стороны устройства 11 передачи, в качестве позиции начала считывания битов кода.
То есть, если адрес позиции верха каждого столбца установлен равным 0 и адрес каждой позиции направления столбцов представляет собой увеличивающееся целое число, когда способом модуляции является 16-позиционная APSK или 16-позиционная QAM и множитель b равен 1, в устройстве 55 обращения прокручивания столбцов для самого левого столбца позицию начала считывания устанавливают равной позиции, адрес которой равен 0. Для второго столбца (слева) позицию начала считывания устанавливают равной позиции, адрес которой равен 2. Для третьего столбца позицию начала считывания устанавливают равной позиции, адрес которой равен 4. Для четвертого столбца позицию начала считывания устанавливают равной позиции, адрес которой равен 7.
Для столбцов, в которых позиции начала считывания являются позициями, отличными от позиции с адресом, равным 0, после считывания битов кода в самую нижнюю позицию, позиция возвращается наверх (в позицию с адресом, равным 0) и считывание осуществляют в позицию, непосредственно предшествующую позиции начала считывания. Далее, осуществляют считывание из следующего (справа) столбца.
Благодаря осуществлению описанного выше обращения прокручивания столбцов, расположение битов кода, которые были перераспределены при прокручивании столбцов, возвращается к исходному.
На фиг. 75 показана структурная схема, иллюстрирующая другой пример конфигурации устройства 165 обращения разнесения битов с фиг. 65.
На фигурах части, которые соответствуют случаю с фиг. 66, обозначены одинаковыми ссылочными позициями и здесь и далее их описание будет опущено.
То есть, конфигурация устройства 165 обращения разнесения битов с фиг. 72 совпадает с конфигурацией устройства с фиг. 66, за исключением того, что в первом случае предусмотрено устройство 1011 обращения разнесения битов контроля четности.
На фиг. 75, устройство 165 обращения разнесения битов содержит устройство 54 (MUX) мультиплексирования, устройство 55 обращения прокручивания столбцов и устройство 1011 обращения разнесения битов контроля четности и в устройстве 165 обращения разнесения битов осуществляют обращение разнесения битов LDPC-кода, поданными из устройства 164 обратного преобразования.
То есть, в, устройстве 54 мультиплексирования осуществляют процесс обращения перестановки (процесс, обратный для процесса перестановки), соответствующий процессу перестановки, который выполняют в устройстве 25 демультиплексирования устройства 11 передачи, то есть процесс обращения перестановки, направленный на возврат позиций битов кода, измененных в ходе процесса перестановки, на исходные позиции, что делают для LDPC-кода, поданного из устройства 164 обратного преобразования, и подают полученный в результате LDPC-код в устройство 55 обращения прокручивания столбцов.
В устройстве 55 обращения прокручивания столбцов осуществляют обращение прокручивания столбцов, соответствующее прокручиванию столбцов, которое является процессом перераспределения, выполненным в устройстве 24 прокручивания столбцов устройства 11 передачи для LDPC-кода, поданного из устройства 54 мультиплексирования.
LDPC-код, который получают в результате обращения прокручивания столбцов, подают из устройства 55 обращения прокручивания столбцов в устройство 1011 обращения разнесения битов контроля четности.
В устройстве 1011 обращения разнесения битов контроля четности осуществляют обращение разнесения битов контроля четности (процесс, обратный по отношению к разнесению битов контроля четности), соответствующего разнесению битов контроля четности, осуществленному в устройстве 23 разнесения битов контроля четности устройства 11 передачи, то есть обращение разнесения битов контроля четности, направленное на возвращение расположения битов LDPC-кода, расположение которых изменилось при разнесении битов контроля четности, до исходного расположения, что делают для битов кода после обращения прокручивания столбцов в устройстве 55 обращения прокручивания столбцов.
LDPC-код, который получают в результате обращения разнесения битов контроля четности, подают из устройства 1011 обращения разнесения битов контроля четности в устройство 166 LDPC декодирования.
Следовательно, в устройстве 165 обращения разнесения битов с фиг. 75, LDPC-код, для которого осуществили обращение процесса перестановки, обращение прокручивания столбцов и обращение разнесения битов контроля четности, то есть LDPC-код, полученный при LDPC кодировании в соответствии с проверочной матрицей Н, подают в устройство 166 LDPC декодирования.
В устройстве 166 LDPC декодирования осуществляют LDPC декодирование LDPC-кода из устройства 165 обращения разнесения битов с использованием проверочной матрицы Н, использованной для LDPC кодирования, осуществленного в устройстве 115 LDPC кодирования устройства 11 передачи. То есть, в устройстве 166 LDPC декодирования осуществляют LDPC декодирование LDPC-кода из устройства 165 обращения разнесения битов с использованием проверочной матрицы Н, использованной для LDPC кодирования, осуществленного в устройстве 115 LDPC кодирования устройства 11 передачи, или с использованием преобразованной проверочной матрицы (относительно проверочной матрицы Н), полученной при осуществлении, по меньшей мере, замены столбцов, которая соответствует разнесению битов контроля четности.
На фиг. 75 LDPC-код, который получают в результате LDPC кодирования в соответствии с проверочной матрицей Н, подают из (устройства 1011 обращения разнесения битов контроля четности) устройства 165 обращения разнесения битов в устройство 166 LDPC декодирования. По этой причине, когда LDPC декодирование LDPC-кода осуществляют с использованием проверочной матрицы Н, использованной в устройстве 115 LDPC кодирования устройства 11 передачи для осуществления LDPC кодирования, устройство 166 LDPC декодирования может быть выполнено как устройство декодирования, осуществляющее LDPC декодирование в соответствии с полностью последовательным способом декодирования, в ходе которого последовательно осуществляют преобразования сообщений (сообщение переменной вершины и сообщение переменной вершины) для каждой вершины, или как устройство декодирования, осуществляющее LDPC декодирование в соответствии с полностью параллельным способом декодирования, в ходе которого одновременно (параллельно) осуществляют преобразования сообщений для всех вершин.
В устройстве 166 LDPC декодирования, когда осуществляют LDPC декодирование LDPC-кода с использованием преобразованной проверочной матрицы (относительно проверочной матрицы Н, использованной в устройстве 115 LDPC кодирования устройства 11 передачи для осуществления LDPC кодирования), полученной путем осуществления, по меньшей мере, замены столбцов в соответствии с разнесением битов контроля четности, устройство 166 LDPC декодирования может быть выполнено как устройство декодирования (фиг. 71), то есть устройство декодирования такой архитектуры, когда одновременно осуществляют Р (или делитель Р, отличный от 1) преобразований проверочной вершины и преобразований переменной вершин, и содержит блок 310 перераспределения принятых данных для осуществления одной и той же замены столбцов в качестве замены столбцов с целью получения преобразованной проверочной матрицы для LDPC-кода и перераспределения битов LDPC-кода.
На фиг. 75 для удобства объяснения устройство 54 мультиплексирования, в котором выполняют обращение процесса перестановки, устройство 55 обращения прокручивания столбцов, в котором осуществляют обращение прокручивания столбцов, и устройство 1011 обращения разнесения битов контроля четности, в котором осуществляют обращение разнесения битов контроля четности, выполнены отдельно. Тем не менее, два или более элементов из устройства 54 мультиплексирования, устройства 55 обращения прокручивания столбцов и устройства 1011 обращения разнесения битов контроля четности могут быть объединены, аналогично устройству 23 разнесения битов контроля четности, устройству 24 прокручивания столбцов и устройству 25 демультиплексирования устройства 11 передачи.
Более того, в случае, когда устройство 116 разнесения битов (фиг. 8) устройства 11 передачи выполнено без устройства 23 разнесения битов контроля четности и устройства 24 прокручивания столбцов, на фиг. 75, устройство 165 разнесения битов может быть выполнено без устройства 55 обращения прокручивания столбцов и устройства 1011 обращения разнесения битов контроля четности.
Даже в этом случае, устройство 166 LDPC декодирования может содержать устройство декодирования, реализующее полностью последовательный способ декодирования для осуществления LDPC декодирования с использованием самой проверочной матрицы Н, устройство декодирования, реализующее полностью параллельный способ декодирования для осуществления LDPC декодирования с использованием самой проверочной матрицы Н, и устройство декодирования (фиг. 71), содержащее блок 310 перераспределения принятых данных, в котором осуществляют LDPC декодирование путем Р одновременных вычислений в проверочных вершинах и вычислений в переменных вершинах благодаря использованию преобразованной проверочной матрицы Н'.
<Пример конфигурации системы приема>
На фиг. 76 показана структурная схема, иллюстрирующая первый пример конфигурации системы приема, которая может быть применена в устройстве 12 приема.
На фиг. 76 система приема содержит блок 1101 получения, блок 1102 декодирования канала передачи и блок 1103 декодирования источника информации.
В блоке 1101 получения получают сигнал, содержащий LDPC-код, полученный путем осуществления, по меньшей мере, LDPC кодирования для целевых данных LDPC, таких как данные изображения или звуковые данные программы, через канал передачи (канал связи), не показанный на чертежах, такой как наземное цифровое вещание, спутниковое цифровое вещание, сеть кабельного телевидения, интернет или другие сети, и подают сигнал в блок 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 декодирование. В процессе декодирования канала передачи помимо процесса расширения может присутствовать дескремблирование.
В системе приема, которая выполнена так, как описано выше, в блоке 1101 получения через канал передачи получают сигнал, в котором осуществляют кодирование со сжатием, такое как MPEG кодирование, и кодирование с исправлением ошибок, такое как LDPC кодирование, для таких данных, как изображение или звук, и результат подают в блок 1102 декодирования канала передачи.
В блоке 1102 декодирования канала передачи выполняют такой же процесс обработки, как и в устройстве 12 приема, в качестве процесса декодирования канала передачи для сигнала, поданного из блока 1101 получения, и полученный в результате сигнал подают в блок 1103 декодирования источника информации.
В блоке 1103 декодирования источника информации выполняют процесс декодирования источника информации, такой как MPEG декодирование для сигнала, поданного из блока 1102 декодирования канала передачи, и полученное в результате изображение или звук подают на выход.
Система приема с фиг. 76, описанная выше, может быть применена в телевизионном тюнере для приема телевизионного вещания, соответствующего цифровому вещанию.
И блок 1101 получения и блок 1102 декодирования канала передачи и блок 1103 декодирования источника информации могут быть выполнены как одно независимое устройство (аппаратное (IC (интегральная схема) обеспечение и подобное) или программный модуль).
Что касается блока 1101 получения, блока 1102 декодирования канала передачи и блока 1103 декодирования источника информации, как одно независимое устройство может быть выполнен любой набор из следующего: набор из блока 1101 получения и блока 1102 декодирования канала передачи, набор из блока 1102 декодирования канала передачи и блока 1103 декодирования источника информации и набор из блока 1101 получения, блока 1102 декодирования канала передачи и блока 1103 декодирования источника информации.
На фиг. 77 показана структурная схема, показывающая второй пример конфигурации системы приема, которая может быть применена в устройстве 12 приема.
На фигурах части, которые соответствуют случаю с фиг. 76, обозначены одинаковыми ссылочными позициями и здесь и далее их описание будет опущено.
Система приема с фиг. 77, совпадает со случаем с фиг. 76 в том, что предусмотрены блок 1101 получения, блок 1102 декодирования канала передачи и блок 1103 декодирования источника информации и отличается от случая с фиг. 76 в том, что новым является блок 1111 вывода.
Блок 1111 вывода является устройством отображения, направленным на показ изображения, или динамиком, направленным на вывод звука, и в блоке 1111 вывода подают на выход изображение или звук, соответствующий сигналу, поданному на выход из блока 1103 декодирования источника информации. То есть, в блоке 1111 вывода показывают изображение или подают на выход звук.
Система приема с фиг. 77, описанная выше, может быть применена в TV (телевизионный приемник), принимающем телевизионное вещание, соответствующее цифровому вещанию, или радиоприемнике, принимающем радиовещание.
Когда не осуществляют кодирование со сжатием для сигнала, полученного в блоке 1101 получения, сигнал, который подают на выход блока 1102 декодирования канала передачи, подают в блок 1111 вывода.
На фиг. 78 показана структурная схема, иллюстрирующая третий пример конфигурации системы приема, которая может быть применена в устройстве 12 приема.
На фигурах части, которые соответствуют случаю с фиг. 76, обозначены одинаковыми ссылочными позициями и здесь и далее их описание будет опущено.
Система приема с фиг. 78, совпадает со случаем с фиг. 76 в том, что предусмотрены блок 1101 получения и блок 1102 декодирования канала передачи.
Тем не менее, система приема с фиг. 78 отличается от случая с фиг. 76 в том, что не предусмотрен блок 1103 декодирования источника информации и новым является блок 1121 записи.
В блоке 1121 записи записывают (сохраняют) сигнал (например, TS пакеты из TS стандарта MPEG), подаваемый на выход из блока 1102 декодирования канала передачи, на носитель информации, такой как оптический диск, накопитель на жестких дисках и флеш-память.
Система приема с фиг. 78, описанная выше, может быть применена в устройстве записи, в котором записывают телевизионное вещание.
На фиг. 78 система приема выполнена содержащей блок 1103 декодирования источника информации и в системе приема можно записывать сигнал, полученный путем осуществления процесса декодирования источника информации в блоке 1103 декодирования источника информации, то есть изображение или звук, полученный при декодировании, с помощью блока 1121 записи.
<Вариант осуществления компьютера>
Далее набор описанных выше процессов может быть выполнен с помощью аппаратного или программного обеспечения. В случае, когда набор процессов выполняют с помощью программного обеспечения, на компьютер общего назначения устанавливают программу, настраивающую программное обеспечение.
Следовательно, на фиг. 79 показан пример конфигурации варианта осуществления компьютера, в котором установлена программа, выполняющая набор процессов.
Эта программа может быть заранее записана на накопитель 705 на жестких дисках и ROM 703, соответствующее носителю информации, встроенному в компьютер.
В качестве альтернативы, программа может быть на временной или постоянной основе сохранена (записана) на съемном носителе 711 информации, таком как гибкий диск, CD-ROM (компакт-диск для однократной записи данных), МО (магнитооптический) диск, DVD (универсальный цифровой диск), магнитный диск и полупроводниковая память. Съемный носитель 711 информации может быть выполнен как так называемый пакет программного обеспечения.
Программу устанавливают со съемного носителя 711 информации на компьютер. Кроме того, программа может быть беспроводным образом передана на компьютер с сайта для скачивания с помощью искусственного спутника для цифрового спутникового вещания или может быть передана на компьютер проводным образом по сети, такой как LAN (локальная сеть) или Интернет. На компьютере могут принять программу, переданную так, как описано выше, с помощью блока 708 связи и установить программу на встроенный накопитель 705 на жестких дисках.
Компьютер содержит встроенный ЦП (центральный процессор) 702. Интерфейс 710 ввода/вывода соединен с ЦП 702 по шине 701. Если пользователь работает с блоком 707 ввода, выполненным с использованием клавиатуры, мыши и микрофона, и команду вводят с помощью интерфейса 710 ввода/вывода, в ЦП 702 в соответствии с командой выполняют программу, хранящуюся в ROM (постоянное запоминающее устройство) 703. В качестве альтернативы, в ЦП 702 загружают в RAM (оперативное запоминающее устройство) 704 программу, хранящуюся в накопителе 705 на жестких дисках, программу, переданную с помощью спутника или по сети, принятую в блоке 708 связи, и установленную в накопителе 705 на жестких дисках или программу, считанную со съемного носителя 711 информации, вставленного в привод 709, и установленную с накопителя 705 на жестких дисках и выполняют программу. Таким образом, в ЦП 702 выполняют процесс в соответствии с описанными выше блок-схемами или процесс, выполняемый описанными выше конфигурациями структурных схем. Кроме того, в ЦП 702 подают на выход результат обработки из блока 706 вывода, выполненного с использованием LCD (жидкокристаллический дисплей) или динамика, передают результат обработки из блока 708 связи и при необходимости записывают результат обработки на накопитель 705 на жестких дисках с помощью интерфейса 710 ввода/вывода.
Согласно настоящему описанию не нужно выполнять этапы процесса, описывающие программу, благодаря работе которой компьютер выполняет различные процессы последовательной обработки в соответствии с описанным на блок-схемах порядком, и также процессы, выполняемые параллельно или отдельно (например, параллельная обработки или обработки с использованием некоторого объекта).
Программа может быть выполнена в одном компьютере или может быть выполнена несколькими компьютерами распределенным образом. Программа может быть передана на удаленный компьютер и может быть выполнена.
Любой вариант осуществления изобретения не ограничен описанными выше вариантами и не выходя за объем изобретения могут быть предложены различные изменения и модификации.
То есть, например описанный 16К код для Sx (его таблица исходных значений для проверочной матрицы) может быть использован даже если канал 13 связи (фиг. 7) является любым из следующего: спутниковая схема, поверхностная волна, кабель (проводная схема) и другие. Помимо этого, 16К код для Sx также может быть использован для передачи данных, отличных от цифрового вещания.
Список ссылочных позиций
11 устройство передачи
12 устройство приема
23 устройство разнесения битов контроля четности
24 устройство прокручивания столбцов
25 устройство демультиплексирования
31 память
32 блок перестановки
54 устройство мультиплексирования
55 устройство обращения прокручивания столбцов
111 устройство адаптации режима/мультиплексирования
112 подстроечный конденсатор
113 устройство ВВ скремблирования
114 устройство ВСН кодирования
115 устройство LDPC кодирования
116 устройство разнесения битов
117 устройство преобразования
118 устройство временного уплотнения
119 устройство SISO/MISO кодирования
120 устройство частотного уплотнения
121 устройство ВСН кодирования
122 устройство LDPC кодирования
123 устройство преобразования
124 устройство частотного уплотнения
131 блок построения кадра/выделения ресурса
132 блок выработки OFDM
151 блок обработки OFDM
152 блок управления кадрами
153 устройство обращения частотного уплотнения
154 устройство обратного преобразования.
155 устройство LDPC декодирования
156 устройство ВСН декодирования
161 устройство обращения частотного уплотнения
162 устройство SISO/MISO декодирования
163 устройство обращения временного уплотнения
164 устройство обратного преобразования.
165 устройство обращения разнесения битов
166 устройство LDPC декодирования
167 устройство ВСН декодирования
168 устройство обращения ВВ скремблирования
169 блок удаления пустот
170 устройство демультиплексирования
210 Тх блок
211 FEC блок
212 блок преобразования
213 блок увеличения частоты дискретизации
214 блок фильтра Найквиста
220 Rx блок
221 AGC блок
222 блок умножения
223 блок фильтра с плавным спадом частотной характеристики
224 блок уменьшения частоты дискретизации
225 CSI блок
226 блок обратного преобразования
227 FEC блок
230 блок канала
231 IBO блок
232 блок умножения
233 TWTA блок
234 AWGN блок
235 блок сложения
300 память хранения данных линий
301 устройство выбора
302 блок вычисления в проверочных вершинах
303 схема циклического сдвига
304 память хранения данных линий
305 устройство выбора
306 память принятых данных
307 блок вычисления в переменных вершинах
308 схема циклического сдвига
309 блок вычисления декодируемого слова
310 блок перераспределения принятых данных
311 блок перераспределения декодированных данных
601 блок кодирования
602 блок хранения
611 блок установки скорости кодирования
612 блок считывания таблицы исходных значений
613 блок выработки проверочной матрицы
614 блок считывания информационных битов
615 блок обработки битов контроля четности при кодировании
616 блок управления
701 шина
702 ЦП
703 ROM
704 RAM
705 накопитель на жестких дисках
706 блок вывода
707 блок ввода
708 блок связи
709 привод
710 интерфейс ввода/вывода
711 съемный носитель информации
1001 блок обращения перестановки
1002 память
1011 устройство обращения разнесения битов контроля четности
1101 блок получения
1102 блок декодирования канала передачи
1103 блок декодирования источника информации
1111 блок вывода
1121 - блок записи
название | год | авторы | номер документа |
---|---|---|---|
УСТРОЙСТВО ОБРАБОТКИ ДАННЫХ И СПОСОБ ОБРАБОТКИ ДАННЫХ | 2014 |
|
RU2656723C2 |
УСТРОЙСТВО ОБРАБОТКИ ДАННЫХ И СПОСОБ ОБРАБОТКИ ДАННЫХ | 2014 |
|
RU2656830C2 |
УСТРОЙСТВО ОБРАБОТКИ ДАННЫХ И СПОСОБ ОБРАБОТКИ ДАННЫХ | 2012 |
|
RU2595579C2 |
УСТРОЙСТВО ОБРАБОТКИ ДАННЫХ И СПОСОБ ОБРАБОТКИ ДАННЫХ | 2014 |
|
RU2656726C2 |
УСТРОЙСТВО ОБРАБОТКИ ДАННЫХ И СПОСОБ ОБРАБОТКИ ДАННЫХ | 2012 |
|
RU2595585C2 |
УСТРОЙСТВО ОБРАБОТКИ ДАННЫХ И СПОСОБ ОБРАБОТКИ ДАННЫХ | 2014 |
|
RU2656725C2 |
УСТРОЙСТВО ОБРАБОТКИ ДАННЫХ И СПОСОБ ОБРАБОТКИ ДАННЫХ | 2011 |
|
RU2574822C2 |
УСТРОЙСТВО ОБРАБОТКИ ДАННЫХ И СПОСОБ ОБРАБОТКИ ДАННЫХ | 2014 |
|
RU2654132C2 |
УСТРОЙСТВО ОБРАБОТКИ ДАННЫХ И СПОСОБ ОБРАБОТКИ ДАННЫХ | 2012 |
|
RU2595581C2 |
УСТРОЙСТВО ОБРАБОТКИ ДАННЫХ И СПОСОБ ОБРАБОТКИ ДАННЫХ | 2011 |
|
RU2574828C2 |
Изобретение относится к технике связи и предназначено для обработки данных при передачи данных с использованием LDPC-кода. Технический результат – обеспечение хорошего качества связи при передаче данных с использованием LDPC-кода. Для этого бит LDPC-кода, для которого длина кода равна 16200 битам и скорость кодирования равна 7/15, сопоставляют с битом символа, соответствующим любой из 8 сигнальных точек, определенных 8-позиционной PSK. При перестановке, когда 3 бита кода, которые сохранены в трех блоках памятей емкостью 16200/3 битов и которые побитно считаны из блоков памятей, сопоставляют одному символу, (i+1)-й бит от самого старшего бита из 3 битов кода обозначают через бит bi, (i+1)-й бит от самого старшего бита из 3 битов символа одного символа обозначают через бит yi, и бит b0, бит b1 и бит b2 переставляют с битами y0, y1 и y2. 4 н. и 2 з.п. ф-лы, 79 ил.
1. Устройство обработки данных, содержащее:
блок кодирования, выполненный с возможностью осуществления LDPC кодирования на основе проверочной матрицы LDPC-кода, для которого длина N кода равна 16200 битам и скорость кодирования равна 7/15; и
блок перестановки, выполненный с возможностью сопоставления бита LDPC-кода, для которого длина кода равна 16200 битам и скорость кодирования равна 7/15, с битом символа, соответствующим любой из 8 сигнальных точек, определенных 8-позиционной PSK,
при этом, когда 3 бита кода, которые сохранены в трех блоках памятей емкостью 16200/3 битов и которые побитно считаны из блоков памятей, сопоставляют одному символу, (i+1)-й бит от самого старшего бита из 3 битов кода обозначают битом bi, (i+1)-й бит от самого старшего бита из 3 битов символа одного символа обозначают битом yi, и в блоке перестановки сопоставляют
бит b0 и бит y1,
бит b1 и бит y0, и
бит b2 и бит y2,
при этом 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 1197 1208 1839 1903 2712 3088 3537 4091 4301 4919 5068 6025 6195 6324 6378 6686 6829 7558 7745 8042 8382 8587 8602
18 187 1115 1417 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.
2. Устройство обработки данных по п. 1,
в котором в блоке перестановки переставляют бит кода из 3×1 битов LDPC-кода, который записан в направлении столбцов и считан в направлении строк блока хранения, содержащего три столбца, в которых хранят 3×1 битов в направлении строк и хранят 16200/(3×1) битов в направлении столбцов.
3. Способ обработки данных, включающий в себя следующее:
этап кодирования для осуществления LDPC кодирования на основе проверочной матрицы LDPC-кода, для которого длина N кода равна 16200 битам и скорость кодирования равна 7/15; и
этап перестановки, выполненный для сопоставления бита LDPC-кода, для которого длина кода равна 16200 битам и скорость кодирования равна 7/15, с битом символа, соответствующим любой из 8 сигнальных точек, определенных 8-позиционной PSK,
при этом на этапе перестановки, когда 3 бита кода, которые сохранены в трех блоках памятей емкостью 16200/3 битов и которые побитно считаны из блоков памятей, сопоставляют одному символу, (i+1)-й бит от самого старшего бита из 3 битов кода обозначают битом bi, (i+1)-й бит от самого старшего бита из 3 битов символа одного символа обозначают битом yi,
бит b0 сопоставляют с битом y1,
бит b1 сопоставляют с битом y0, и
бит b2 сопоставляют с битом y2,
при этом 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 1197 1208 1839 1903 2712 3088 3537 4091 4301 4919 5068 6025 6195 6324 6378 6686 6829 7558 7745 8042 8382 8587 8602
18 187 1115 1417 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.
4. Устройство обработки данных, содержащее:
блок кодирования, выполненный с возможностью осуществления LDPC кодирования на основе проверочной матрицы LDPC-кода, для которого длина N кода равна 16200 битам и скорость кодирования равна 7/15; и
блок перестановки, выполненный с возможностью сопоставления бита LDPC-кода, для которого длина кода равна 16200 битам и скорость кодирования равна 7/15, с битом символа, соответствующим любой из 16 сигнальных точек, определенных 16-позиционной APSK,
при этом, когда 4 бита кода, которые сохранены в четырех блоках памятей емкостью 16200/4 битов и которые побитно считаны из блоков памятей, сопоставляют одному символу, (i+1)-й бит от самого старшего бита из 4 битов кода обозначают битом bi, (i+1)-й бит от самого старшего бита из 4 битов символа одного символа обозначают битом yi, и в блоке перестановки сопоставляют
бит b0 и бит y2,
бит b1 и бит y1,
бит b2 и бит y0, и
бит b3 и бит y3,
при этом 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 1197 1208 1839 1903 2712 3088 3537 4091 4301 4919 5068 6025 6195 6324 6378 6686 6829 7558 7745 8042 8382 8587 8602
18 187 1115 1417 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.
5. Устройство обработки данных по п. 4,
в котором в блоке перестановки переставляют бит кода из 4×1 битов LDPC-кода, который записан в направлении столбцов и считан в направлении строк блока хранения, содержащего четыре столбца, в которых хранят 4×1 битов в направлении строк и хранят 16200/(4×1) битов в направлении столбцов.
6. Способ обработки данных, включающий в себя следующее:
этап кодирования для осуществления LDPC кодирования на основе проверочной матрицы LDPC-кода, для которого длина N кода равна 16200 битам и скорость кодирования равна 7/15; и
этап перестановки, выполненный для сопоставления бита LDPC-кода, для которого длина кода равна 16200 битам и скорость кодирования равна 7/15, с битом символа, соответствующим любой из 16 сигнальных точек, определенных 16-позиционной APSK,
при этом на этапе перестановки, когда 4 бита кода, которые сохранены в четырех блоках памятей емкостью 16200/4 битов и которые побитно считаны из блоков памятей, сопоставляют одному символу, (i+1)-й бит от самого старшего бита из 4 битов кода обозначают битом bi, (i+1)-й бит от самого старшего бита из 4 битов символа одного символа обозначают битом yi,
бит b0 сопоставляют с битом y2,
бит b1 сопоставляют с битом y1,
бит b2 сопоставляют с битом y0, и
бит b3 сопоставляют с битом y3,
при этом 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 1197 1208 1839 1903 2712 3088 3537 4091 4301 4919 5068 6025 6195 6324 6378 6686 6829 7558 7745 8042 8382 8587 8602
18 187 1115 1417 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.
JP 2013005124 A, 07.01.2013 | |||
JP 2012049734 A, 08.03.2012 | |||
СПОСОБЫ И УСТРОЙСТВО LDPC-КОДИРОВАНИЯ | 2005 |
|
RU2395902C2 |
СПОСОБ И УСТРОЙСТВО ДЛЯ КОДИРОВАНИЯ И ДЕКОДИРОВАНИЯ ДАННЫХ | 2005 |
|
RU2365034C2 |
ВЫБОР КОДА ПРЯМОЙ КОРРЕКЦИИ ОШИБОК И КОДОВОЙ СКОРОСТИ НА ОСНОВАНИИ РАЗМЕРА ПАКЕТА | 2008 |
|
RU2427086C2 |
УСТРОЙСТВО ДЕКОДИРОВАНИЯ, УСТРОЙСТВО ХРАНЕНИЯ ДАННЫХ, СИСТЕМА ОБМЕНА ДАННЫМИ И СПОСОБ ДЕКОДИРОВАНИЯ | 2008 |
|
RU2440669C1 |
US 8351541 B2, 08.01.2013 | |||
US 7539920 B2, 26.05.2009 | |||
УСТРОЙСТВО ДЛЯ ПРЕДВАРИТЕЛЬНОЙ ПОДГОТОВКИ НЕФТИ К ПЕРЕРАБОТКЕ И СПОСОБ ЕЕ ОСУЩЕСТВЛЕНИЯ | 2014 |
|
RU2568612C1 |
JP 2012151655 A, 09.08.2009 | |||
JP 2011176645 A, 08.09.2011. |
Авторы
Даты
2018-06-22—Публикация
2014-04-21—Подача