СПОСОБ И УСТРОЙСТВО ДЛЯ КОДИРОВАНИЯ И ДЕКОДИРОВАНИЯ КАНАЛА В СИСТЕМЕ СВЯЗИ С ИСПОЛЬЗОВАНИЕМ КОДОВ ПРОВЕРОК НА ЧЕТНОСТЬ С МАЛОЙ ПЛОТНОСТЬЮ
METHOD AND DEVICE FOR CHANNEL ENCODING AND DECODING IN COMMUNICATIONS NETWORK USING LOW DENSITY PARITY CHECK

Область техники, к которой относится изобретение
Настоящее изобретение, в общем, относится к системе связи, в которой используются коды проверок на четность с малой плотностью (LDPC, МППЧ), и, в частности, к способу и устройству кодирования/декодирования канала, которые предназначены для генерирования кодов LDPC, имеющих различную длину кодового слова и различные значения кодовой скорости из заданного кода LDPC.
Уровень техники
В системах беспроводной связи рабочие характеристики канала значительно снижаются из-за присутствия различных шумов в каналах, явления затухания и взаимных помех между символами (ICI, ПМС). Поэтому для реализации высокоскоростных цифровых систем связи, в которых требуется обеспечить высокую пропускную способность и надежность передачи данных, например, в мобильной связи следующего поколения, в цифровой широковещательной передаче и в портативной Интернет, необходимо разработать технологию, которая устраняла бы шумы, затухание и ICI. В последнее время были выполнены интенсивные исследования кода коррекции ошибок в качестве способа увеличения надежности передачи данных путем эффективного восстановления искаженной информации.
Код LDPC, впервые введенный Галлагером в 1960-ых гг., потерял свою привлекательность с течением времени из-за сложности его воплощения, которую нельзя было улучшить, используя технологию того времени. Однако в качестве турбокода, который был открыт Берроу, Главье и Ситимашима в 1993 г., он проявляет рабочие характеристики, приближающиеся к пределу канала Шеннона, при этом были проведены исследования итерационного декодировании и кодирования канала на основе графа, наряду с анализом работоспособности и характеристик турбокода. Благодаря таким исследованиям код LDPC повторно изучили в конце 1990-ых гг. и доказали, что код LDPC обладает характеристиками, приближающимися к пределу канала Шеннона, если для него выполняют декодирование, используя итеративное декодирование на основе алгоритма произведения-суммирования по графу Таннера (специальный случай фактор-графа), соответствующего коду LDPC.
Код LDPC обычно представляют с использованием технологии представления графа, и множество характеристик могут быть проанализированы с использованием способов, основанных на теории графов, алгебре и теории вероятности. Обычно модель графа кодов канала полезна для описания кодов, и путем отображения информации кодированных битов на вершины графа и отображения соотношений между битами на ребра графа, становится возможным рассмотреть сеть передачи данных, в которой вершины выполняют обмен заданными сообщениями через ребра, позволяя, таким образом, вывести естественный алгоритм декодирования. Например, алгоритм декодирования, выведенный из решетки, которую можно рассматривать как разновидность графа, может включать в себя хорошо известный алгоритм Витерби и алгоритм Бала, Коке, Елинека и Равива (BCJR, БКЕР).
Код LDPC обычно определяют как матрицу проверки на четность, и он может быть представлен с использованием двудольного графа, который называется графом Таннера. Двудольный граф означает, что вершины, составляющие граф, разделены на два разных типа, и код LDPC представлен двудольным графом, состоящим из вершин, некоторые из которых называются переменными узлами, и другие из которых называются узлами проверки. Различные узлы отображают на кодированные биты во взаимно-однозначном соответствии.
Со ссылкой на фиг. 1 и 2, будет приведено описание способа представления графа для кода LDPC.
1
На фиг. 1 показан пример матрицы H1 проверки на четность кода LDPC, состоящего из 4 рядов и 8 столбцов. Как показано на фиг. 1, поскольку количество столбцов равно 8, матрица H проверки на четность означает код LDPC, который генерирует кодовое слово длиной 8, и столбцы отображаются на 8 кодированных битов.
На фиг. 2 показана схема, иллюстрирующая граф Таннера, соответствующий H1 по фиг. 1.
1
2
3
4
5
6
7
8
1
i
1
i
Рассмотрим фиг. 2, на которой граф Таннера кода LDPC состоит из 8 переменных узлов x (202), x (204), x (206), x (208), x (210), x (212), x (214) и x (216), и 4 проверочных узлов 218, 220, 222 и 224. i-ый столбец и j-ую строку в матрице H проверки на четность кода LDPC отображают на переменный узел x и j-ый проверочный узел соответственно. Кроме того, значение 1, то есть, не нулевое значение в точке, где i-ый столбец и j-ая строка в матрице H проверки на четность кода LDPC пересекают друг друга, означает, что существует ребро между переменным узлом xи j-ым проверочным узлом в графе Таннера по фиг. 2.
1
2
3
4
5
6
7
8
1
1
В графе Таннера кода LDPC степень переменного узла и проверочного узла означает количество ребер, соединенных с каждым представительным узлом, и степень равна количеству ненулевых точек входа в столбец или строку, соответствующие ассоциированному узлу в матрице проверки на четность кода LDPC. Например, на фиг. 2, степени переменных узлов x (202), x (204), x (206), x (208), x (210), x (212), x (214) и x (216) составляют 4, 3, 3, 3, 2, 2, 2 и 2 соответственно, и степени проверочных узлов 218, 220, 222 и 224 составляют 6, 5, 5 и 5 соответственно. Кроме того, количества ненулевых точек входа в столбцах матрицы H проверки на четность по фиг. 1, которые соответствуют переменным узлам на фиг. 2, совпадают с их степенями 4, 3, 3, 3, 2, 2, 2 и 2, и количества ненулевых точек входа в строках матрицы Hпроверки на четность по фиг. 1, которые соответствуют проверочным узлам по фиг. 2, совпадают с их степенями 6, 5, 5 и 5.
i
j
2
3
4
i
5
6
j
Для представления распределения степени для узлов кода LDPC отношение количества переменных узлов со степенью i с общим количеством переменных узлов определено как f и отношение количества проверочных узлов со степенью j к общему количеству проверочных узлов определено как g. Например, для кода LDPC, соответствующего фиг. 1 и 2, f=4/8, f=3/8, f=1/8, и f=0 для i≠2, 3, 4; и g=3/4, g=1/4, и g=0 для j≠5, 6. Когда длина кода LDPC определена как N, то есть, количество столбцов определено как N, и когда количество строк определено как N/2, плотность ненулевых точек входа во всей матрице проверки на четность, имеющей описанное выше распределение степени, рассчитывают как уравнение (1).
(1)
В уравнении (1), при увеличении N, плотность единиц в матрице проверки на четность уменьшается. Обычно, что касается кода LDPC, поскольку длина N кода обратно пропорциональна плотности ненулевых точек входа, код LDPC с большим значением N имеет очень низкую плотность. Выражение "низкая плотность" в названии кода LDPC происходит из упомянутой выше взаимозависимости.
Далее, со ссылкой на фиг. 3, будет приведено описание характеристик матрицы проверки на четность структурированного кода LDPC, применяемого в настоящем изобретении. На фиг. 3 схематично иллюстрируется код LDPC, принятый как стандартная технология в DVB-S2 (стандарт спутниковой широковещательной передачи), который представляет собой один из европейских стандартов цифровой широковещательной передачи.
1
1
1
1
1
1
1
1
1
1
1
На фиг. 3, N обозначает длину кодового слова LDPC, K предоставляет длину информационного слова, и (N-K) предоставляет длину проверки на четность. Кроме того, М и Q определены так, что удовлетворяется q=(N-K)/M. Предпочтительно, отношение K/M должно составлять целое число. Для удобства, матрица проверки на четность по фиг. 3 называется первой матрицей H проверки на четность.
1
1
Рассмотрим снова фиг. 3, на которой структура части проверки на четность, то есть K-ый столбец - (N-1)-ый столбец, в матрице проверки на четность, имеет двойную диагональную форму. Поэтому, что касается распределения степени по столбцам, соответствующим части проверки на четность, все столбцы имеют степень "2", за исключением последнего столбца, имеющего степень "1".
1
В матрице проверки на четность структура информационной части, то есть, 0-ого столбца - (K-1)-го столбца получена с использованием следующих правил.
1
1
1
1
Правило 1: Она генерирует, в общей сложности, K/Mгрупп столбцов путем группирования Kстолбцов, соответствующих информационному слову в матрице проверки на четность, в множество групп по Mстолбцов. Способ формирования столбцов, принадлежащих каждой группе столбцов, соответствует Правилу 2, приведенному ниже.
1
1
i
i,0,
i,0
i,0
i,j
i
j
(1)
(2)
(Di)
(k)
Правило 2: Вначале определяют положения единиц в каждом 0-ом столбце i-ых групп столбцов (где i=1, ..., K/M). Когда степень 0-ого столбца в каждой i-ой группы столбцов обозначена как D, если предположить, что положения строк с 1 представляют собой R  R , ... R , положения R (k=1,2,..., D) строк с 1 определены как уравнение (2), в j-ом столбце (где j=1, 2,..., M-1) в группе i-ого столбца.
(2)
i
В соответствии с приведенными выше правилами, можно ожидать, что не все степени столбцов, принадлежащих i-ой группе столбцов, равны D. Для лучшего понимания структуры кода DVB-S2 LDPC, который содержит информацию о матрице проверки на четность в соответствии с описанными выше правилами, будет описан следующий подробный пример.
1
1
1
В качестве подробного примера, для N=30, K=15, М=5 и q=3, три последовательности для информации о положении строк с 1 (ниже эти последовательности для удобства называются "последовательностью положения с весом 1") для 0-ых столбцов в 3 группах столбцов могут быть выражены следующим образом;
Что касается последовательности положения с весом 1 для 0-вых столбцов в каждой группе столбцов, только соответствующие последовательности положения могут быть выражены для удобства следующим образом для каждой группы столбцов. Например:
0 1 2
0 11 13
0 10 14.
Другими словами, i-ая последовательность положения с весом 1 в i-ой строке последовательно представляет информацию о положении строк с 1 в i-ой группе столбцов.
Возможно генерировать код LDPC, имеющий ту же концепцию, как и в коде DVB-S2 LDPC по фиг. 4, формируя матрицу проверки на четность, используя информацию, соответствующую подробному примеру и Правилу 1, и Правилу 2.
Известно, что код DVB-S2 LDPC, разработанный в соответствии с Правилом 1 и Правилом 2, может быть эффективно кодирован с использованием структурной формы. Процесс выполнения кодирования LDPC с использованием матрицы проверки на четность и на основе DVB-S2 будет описан ниже в качестве примера.
1
1
1
1
0
1
K-1
1
0
1
N1-K1-1
В следующем примерном описании, в качестве подробного примера, код DVB-S2 LDPC с N=16200, K=10800, M=360 и q=15 подвергается процессу кодирования. Для удобства информационные биты, имеющие длину K, представлены как (i, i,...,i), и биты проверки на четность, имеющие длину (N-K1), выражены как (p, p, ..., p).
Этап 1: кодер инициализирует биты проверки на четность следующим образом:
0
1
N1-K1-1
p= p= … = p= 0
Этап 2: Кодер считывает информацию о строке, где расположена 1, в пределах первой группы столбцов информационного слова, из последовательности 0 положения с весом 1 сохраненных последовательностей, обозначающих матрицу проверки на четность.
0 2084 1613 1548 1286 1460 3196 4297 2481 3369 3451 4620 2622
x
0
1,0
(k)
Кодер обновляет конкретные биты p проверки на четность в соответствии с уравнением (3), используя считываемую информацию, и первый информационный бит i. Здесь x означает значение R  для k = 1,2,..., 13.
(3)
x
x
0
x
x
0
В уравнении (3), p = pi также может быть выражено как p ← pi, и  означает двоичное суммирование.
m
0
Этап 3: кодер вначале находит значение уравнения (4) для следующих 359 информационных битов i (где m=1, 2,..., 359) после i.
(4)
(k)
i,0
В уравнении (4), x означает значение R  для k=1,2,..., 13. Следует отметить, что уравнение (4) имеет ту же концепцию, что и уравнение (2).
Далее кодер выполняет операцию, аналогичную уравнению (3), используя значение, найденное в уравнении (4). Таким образом, кодер обновляет
{x+(m modM1)xq}mod(N1-K1)
m
1
P для i. Например, для m=1, то есть, для i, кодер обновляет биты
(x+q)mod(N1-K1)
Pпроверки на четность, как определено в уравнении (5).
(5)
Следует отметить, что q=15 в уравнении (5). Кодер выполняет описанную выше обработку для m=1, 2,..., 359, так же, как показано выше.
(K)
(K)
2,0
360
x
2,0
Этап 4: Как и на этапе 2, кодер считывает информацию R  (k=1,2,...,13), 1-ую последовательность положения с весом 1 для 361-ого информационного бита i и обновляет конкретное значение p, где x означает R . Кодер обновляет
{x-1(m modM1)xq}mod(N1-K1),
361
362
719
360.
P m = 361,362,...,719, аналогично применяя уравнение (4) к следующим 359 информационным битам i, i, ..., i после i
Этап 5: кодер повторяет этапы 2, 3 и 4 для всех групп, каждая из которых имеет 360 информационных битов.
Этап 6: кодер, в конечном итоге, определяет биты проверки на четность, используя уравнение (6).
(6)
i
Биты p проверки на четность уравнения (6) представляют собой биты проверки на четность, которые были подвергнуты кодированию LDPC.
Как описано выше, DVB-S2 выполняет кодирование, используя обработку на этапе 1 - этапе 6.
Для применения кода LDPC в фактически существующей системе связи код LDPC должен быть разработан так, чтобы он соответствовал скорости передачи данных, требуемой в системе передачи данных. В частности, не только в адаптивных системах связи, использующих схему гибридного автоматического запроса повторной передачи (HARQ, ГАЗП) и схему адаптивной модуляции и кодирования (AMC, АМК), но также и в системе связи, поддерживающей различные услуги широковещательной передачи, требуются коды LDPC, имеющие различные длины ключевого слова, для поддержки различных скоростей передачи данных в соответствии с требованиями системы.
Однако, как описано выше, код LDPC, используемый в системе DVB-S2, имеет только два типа длин кодовых слов из-за его ограниченного использования, и каждый тип кода LDPC требует независимой матрицы проверки на четность. По этим причинам существует назревшая потребность в данной области техники в разработке способа для поддержки различных длин ключевых слов, для увеличения возможности расширения и повышения гибкости системы. В частности, в системе DVB-S2 передача данных, содержащих от несколько сотен до тысяч битов, необходима для передачи информации сигналов. Однако поскольку только 16200 и 64800 доступны как длина кода DVB-S2 LDPC, необходимо обеспечить поддержку различных длин кодовых слов.
Кроме того, поскольку сохранение независимой матрицы проверки на четность отдельно для каждой длины кодового слова для кода LDPC уменьшает общую эффективность использования запоминающего устройства, существует потребность в схеме, которая позволяла бы эффективно поддерживать различные длины кодовых слов от данной существующей матрицы проверки на четность, без необходимости составления новой матрицы проверки на четность.
Сущность изобретения
Примерный аспект настоящего изобретения состоит в том, чтобы обеспечить способ и устройство кодирования/декодирования канала для генерирования кодов LDPC, имеющих разные длины кодовых слов, из заданного кода LDPC, используя сокращение или выкалывание в системе связи, использующей коды LDPC.
Другой примерный аспект настоящего изобретения состоит в том, чтобы обеспечить способ и устройство для кодирования/ декодирования канала, которые гарантировали бы оптимальные рабочие характеристики в отношении архитектуры DVB-S2 в системе связи, в которой используются коды LDPC.
В соответствии с примерным аспектом настоящего изобретения предложен способ кодирования канала в системе связи с использованием кода проверок на четность с малой плотностью (LDPC). Способ может включать в себя, например, этапы, на которых генерируют множество групп столбцов путем группирования столбцов, соответствующих информационному слову в матрице проверки на четность кода LDPC, и упорядочивают группы столбцов; определяют диапазон информационного слова, которое требуется получить, путем выполнения сокращения; на основе определенного диапазона информационного слова выполняют сокращение групп столбцов группа столбцов за группой столбцов для групп столбцов, по порядку, в соответствии с заданной структурой сокращения; и выполняют LDPC кодирование сокращенного информационного слова.
В соответствии с другим примерным аспектом настоящего изобретения предложен способ кодирования канала в системе связи с использованием кода проверок на четность с малой плотностью (LDPC). Способ может включать в себя этапы, на которых генерируют множество групп столбцов путем группирования столбцов, соответствующих информационному слову в матрице проверки на четность кода LDPC, и упорядочивают группы столбцов; определяют диапазон информационного слова, которое требуется получить, путем выполнения сокращения; на основе определенного диапазона информационного слова выполняют сокращение группа столбцов за группой столбцов для групп столбцов, по порядку, в соответствии с заданной структурой сокращения; и выполняют кодирование LDPC сокращенного информационного слова; причем выполнение сокращения группа столбцов за группой столбцов содержит этапы, на которых включают 168 битов проверки на четность Боуза-Чоудхури-Хокенгема (BCH) в информационное слово, которое требуется получить в результате выполнения сокращения, и выполняют сокращение столбцов за исключением столбцов в положениях, соответствующих 168 битам проверки на четность BCH.
В соответствии с еще одним примерным аспектом настоящего изобретения предложено устройство для кодирования канала в системе связи с использованием кода проверки на четность с малой плотностью (LDPC). Устройство включает в себя экстрактор матрицы проверки на четность, предназначенный для генерирования множества групп столбцов путем группирования столбцов, соответствующих информационному слову в матрице проверки на четность кода LDPC, и упорядочивания групп столбцов; модуль применения структуры сокращения, предназначенный для определения диапазона информационного слова, которое требуется получить путем выполнения сокращения, и, на основе определенного диапазона информационного слова, выполнения сокращения группа столбцов за группой столбцов для групп столбцов, по порядку, в соответствии с заданной структурой сокращения; и кодер, предназначенный для кодирования LDPC сокращенного информационного слова.
В соответствии с еще одним примерным аспектом настоящего изобретения предложено устройство, предназначенное для кодирования канала в системе связи, с использованием кода проверок на четность с малой плотностью (LDPC). Устройство включает в себя экстрактор матрицы проверки на четность, предназначенный для генерирования множества групп столбцов путем группирования столбцов, соответствующих информационному слову в матрице проверки на четность кода LDPC, и упорядочивания групп столбцов; модуль применения структуры сокращения, предназначенный для определения диапазона информационного слова, которое требуется получить путем выполнения сокращения и, на основе определенного диапазона информационного слова, выполнения сокращения группа столбцов за группой столбцов для групп столбцов, по порядку, в соответствии с заданной структурой сокращения; и кодер, предназначенный для кодирования LDPC сокращенного информационного слова; причем при выполнении сокращения группа столбцов за группой столбцов модуль применения структуры сокращения включает, например, 168 битов проверки на четность Боуза-Чоудхури-Хокенгема (BCH) в информационное слово, которое требуется получить в результате выполнения сокращения, и сокращает столбцы, за исключением столбцов в положениях, соответствующих 168 битам проверки на четность BCH.
В соответствии с еще одним примерным аспектом настоящего изобретения предложен способ декодирования канала в системе связи с использованием кода проверки на четность с малой плотностью (LDPC). Способ включает в себя, например, этапы, на которых демодулируют сигнал, передаваемый из передатчика; определяют положение сокращенного бита путем оценки информации о структуре сокращения кода LDPC, полученной из демодулированного сигнала; и декодируют данные, используя определенное положение сокращенного бита.
В соответствии с еще одним другим примерным аспектом настоящего изобретения предложено устройство для декодирования канала в системе связи с использованием кода проверки на четность с малой плотностью (LDPC). Устройство включает в себя, например, демодулятор, предназначенный для демодуляции сигнала, передаваемого из передатчика; определитель структуры сокращения, предназначенный для определения положения сокращенного бита путем оценки информации о структуре сокращения кода LDPC из демодулированного сигнала; и декодер, предназначенный для декодирования данных, используя определенное положение сокращенного бита.
Краткое описание чертежей
Описанные выше и другие аспекты, свойства и преимущества настоящего изобретения будут более понятны из следующего подробного описания изобретения, когда его рассматривают совместно с приложенными чертежами, на которых:
на фиг. 1 показана схема, иллюстрирующая примерную матрицу проверки на четность кода LDPC длиной 8;
на фиг. 2 показана схема, иллюстрирующая граф Таннера для примерной матрицы проверки на четность кода LDPC длиной 8;
на фиг. 3 показана схема, иллюстрирующая схематичную структуру кода DVB-S2 LDPC;
на фиг. 4 показана схема, иллюстрирующая примерную матрицу проверки на четность кода DVB-S2 LDPC;
на фиг. 5 показана блок-схема, иллюстрирующая структуру приемопередатчика в системе связи, использующей коды LDPC;
на фиг. 6 показана блок-схема последовательности операций, иллюстрирующая процесс генерирования кода LDPC, имеющего различную длину кодового слова, из матрицы проверки на четность сохраненного кода LDPC, в соответствии с примерным вариантом выполнения настоящего изобретения;
на фиг. 7 показана блок-схема, иллюстрирующая структуру устройства передачи, использующего сокращенные коды LDPC, в соответствии с вариантом выполнения настоящего изобретения;
на фиг. 8 показана блок-схема, иллюстрирующая структуру устройства передачи, использующего сокращенные/выколотые коды LDPC, в соответствии с примерным вариантом выполнения настоящего изобретения;
на фиг. 9 показана блок-схема, иллюстрирующая структуру устройства приема, использующего коды LDPC, для которых применяют сокращение, в соответствии с примерным вариантом выполнения настоящего изобретения;
на фиг. 10 показана блок-схема, иллюстрирующая структуру устройства приема, использующего коды LDPC, в которых одновременно применяют коды сокращения и выкалывания, в соответствии с примерным вариантом выполнения настоящего изобретения; и
на фиг. 11 показана блок-схема последовательности операций, иллюстрирующая операцию приема в устройстве приема, в соответствии с примерным вариантом выполнения настоящего изобретения.
На чертежах одни и те же номера ссылочных позиций следует понимать, как относящиеся к одним и тем же элементам, свойствам и структурам.
Подробное описание изобретения
Предпочтительные примерные варианты выполнения настоящего изобретения будут подробно описаны ниже со ссылкой на приложенные чертежи. В следующем описании подробное описание известных функций и примерных конфигураций, включенных здесь, могут быть исключены для ясности и краткости изложения, когда их включение может усложнить понимание изобретения для специалиста в данной области техники.
Настоящее изобретение направлено на способ поддержки кодов LDPC, имеющих различные длины кодового слова, используя матрицу проверки на четность структурированного кода LDPC конкретного типа. Кроме того, настоящее изобретение направлено на устройство для поддержки различных длин кодового слова в системе связи, использующей коды LDPC конкретного типа, и способ для управления ею. В частности, настоящее изобретение направлено на способ и устройство для генерирования кода LDPC, использующего матрицу проверки на четность заданного кода LDPC, причем генерируемый код LDPC короче по длине, чем заданный код LDPC.
На фиг. 5 показана блок-схема, иллюстрирующая структуру приемопередатчика в системе связи с использованием кодов LDPC.
u
Как показано на фиг. 5, сообщение u вводят в кодер 511 LDPC в передатчике 510 перед передачей в приемнике 530. Затем кодер 511 LDPC кодирует входное сообщение u и выводит кодированный сигнал в модулятор 513. Модулятор 513 модулирует кодированный сигнал и передает этот модулированный сигнал в приемник 530 по беспроводному каналу 520. Затем демодулятор 531 в приемнике 530 демодулирует сигнал, переданный передатчиком 510, и выводит демодулированный сигнал в декодер 533 LDPC. Затем декодер 533 LDPC выполняет оценку значения  сообщения на основе данных, принятых через беспроводный канал 520.
Кодер 511 LDPC генерирует матрицу проверки на четность в соответствии с длиной кодового слова, требуемой в системе связи, используя заранее установленную схему. В частности, в соответствии с настоящим изобретением, кодер 511 LDPC может поддерживать различные длины кодовых слов, используя код LDPC без отдельной необходимости сохранения дополнительной информации. Подробная операция кодера LDPC, для поддержки различных длин кодового слова, будет описана ниже со ссылкой на фиг. 6.
На фиг. 6 показана блок-схема последовательности операций, иллюстрирующая операцию кодирования кодера LDPC в соответствии с примерным вариантом выполнения настоящего изобретения. Более конкретно, на фиг. 6 показан способ генерирования кодов LDPC, имеющих разные длины кодовых слов, из матрицы проверки на четность ранее сохраненного кода LDPC.
Здесь в способе поддержки различных длин кодового слова используют технологию сокращения и технологию выкалывания.
Термин "технология сокращения", используемый здесь, означает способ, в котором, по существу, не используют определенную часть заданной конкретной матрицы проверки на четность. Для лучшего понимания технологии сокращения будет подробно описана матрица проверки на четность кода DVB-S2 LDPC, показанного на фиг. 3.
1
0
1
K1-1
1,
0
1
N1-K1-1
1
1
s
0
Ns-1
0
1
N1-1
s
0
Ns-1
Рассмотрим теперь матрицу проверки на четность кода DVB-S2 LDPC, показанного на фиг. 3, его общая длина составляет N, ведущая часть соответствует информационным битам (i,i,...,i) длиной K и задняя часть соответствует битам (p,p,...,p) проверки на четность длиной (N-K). Обычно информационные биты свободно имеют значения 0 или 1, и технологии сокращения ограничивают значения информационных битов определенной части, которую подвергают сокращению. Например, сокращение Nинформационных битов i- i обычно означает, что i=i=...=i=0. Другими словами, путем ограничения значения Nинформационных битов i- i до 0, технология сокращения позволяет получить тот же эффект, как и, по существу, при неиспользовании Ns ведущих столбцов в матрице проверки на четность кода DVB-S2 LDPC, показанного на фиг. 3. Термин "технология сокращения" происходит из упомянутой выше операции сокращения. Поэтому применение здесь сокращения означает учет значений сокращенных информационных битов, как равных 0.
Что касается технологии сокращения во время установки системы, передатчик и приемник могут совместно использовать или генерировать одну и ту же информацию о положении для сокращенных информационных битов. Поэтому, хотя передатчик не передает сокращенные биты, приемник выполняет декодирование, зная, что информационные биты в положениях, соответствующих сокращенным битам, имеют значение 0.
1
S
1
S
1
S
1
S
1
1
В технологии сокращения, поскольку длина кодового слова, которое передатчик фактически передает, составляет N-N, и длина информационного слова также равна K-N, скорость кода становится (K-N)/(N-N), которая всегда меньше, чем первая заданная скорость K/N кода.
p
1
1
p
Далее будет подробно описана технология выкалывания. Обычно технологию выкалывания можно применять как к информационным битам, так и к битам проверки на четность. Хотя технология выкалывания и технология сокращения выполняют одну и ту же функцию уменьшения длины кодового слова кодов, технология выкалывания, в отличие от технологии сокращения, описанной здесь выше, не имеет концепции, которая ограничивает значения определенных битов. Технология выкалывания представляет собой способ, в соответствии с которым просто не выполняют передачу определенных информационных битов или определенной группы генерируемых битов проверки на четность, таким образом, что приемник может выполнять обработку удаления соответствующих битов. Другими словами, путем простого отсутствия передачи битов в N определенных положениях в генерируемом кодовом слове LDPC длиной N, технология выкалывания позволяет получить тот же эффект, что и при передаче кодового слова LDPC длиной (N- N). Поскольку все столбцы, соответствующие битам, выколотым в матрице проверки на четность, используются без нарушения в процессе декодирования, технология выкалывания отличается от технологии сокращения.
Поскольку в соответствии с изобретением информация о положении выколотых битов в равной степени может совместно использоваться или может оцениваться передатчиком и приемником при установке системы, приемник выполняет обработку удаления соответствующих выколотых битов перед выполнением декодирования.
1
p
1
1
1
p
1
1
В технологии выкалывания, поскольку длина кодового слова, которое передатчик передает фактически, равна N-N, и длина информационного слова постоянно равны K, скорость кода становится K/(N-N), что всегда больше, чем первая заданная скорость K/Nкода.
Далее будет приведено описание примерной технологии сокращения и примерной технологии выкалывания, пригодных для кода DVB-S2 LDPC. Код DVB-S2 LDPC, как отмечено выше, представляет собой разновидность кода LDPC, имеющего определенную структуру. Поэтому, по сравнению с нормальным кодом LDPC, код DVB-S2 LDPC может подвергаться более эффективному сокращению и выкалыванию.
2
2
1
1
1
2
Δ
1
2
Δ,
2
2
Δ
Δ
Δ
Δ
Δ
1
1
Δ
Δ
Для удобства данного примера предположим, что длина кодового слова и длина информации кода LDPC представляет собой N и K соответственно, которые в соответствии с настоящим изобретением в конечном итоге требуется получить из кода DVB-S2 LDPC, длина кодового слова и длина информации которого составляют N и K соответственно, используя технологию сокращения и технологию выкалывания. Если N-N=N и K-K=K становится возможным генерировать код LDPC, длина кодового слова которого и длина информации которого равны N и K соответственно, путем сокращения K битов и выкалывания (N-K) битов из матрицы проверки на четность кода DVB-S2 LDPC. Для сгенерированного кода N>0 или K>0, поскольку его скорость кода  обычно отличается от скорости K/N кода для кода DVB-S2 LDPC, его алгебраические характеристики изменяются. Для N=K код LDPC генерируют, не используя ни сокращение, ни выкалывание, или используя только сокращение.
1
1
1
1
i,j
(k)
Однако, что касается кода DVB-S2 LDPC, как описано в Правиле 1 и в Правиле 2, поскольку одно значение  соответствует Мстолбцам, в сумме каждая из групп K/N столбцов имеет структурную форму. Поэтому код DVB-S2 LDPC равен коду LDPC, в котором не используется М столбцов, если в нем не используется одно значение R . Следующий процесс сокращения предложен, учитывая такие характеристики.
2
2
На этапе 601 кодер 511 LDPC считывает информацию группы столбца кода DVB-S2 LDPC, подвергаемого сокращению. Таким образом, кодер 511 LDPC считывает сохраненную информацию матрицы проверки на четность. После того, на этапе 603 кодер 511 LDPC определяет длину N кодового слова и длину K информации для сокращенного кодового слова LDPC, для фактической передачи после сокращения. После этого, кодер 511 LDPC выполняет обработку сокращения на этапах 605-611, на которых кодер 511 LDPC выполняет сокращение, соответствующее требуемой длине информации кода LDPC, на основе считываемой информации сохраненной матрицы проверки на четность.
Этап 1 сокращения: кодер 511 LDPC определяет  на этапе 605, где [x] означает максимальное целое число, которое меньше чем или равно x.
(k)
i,0
1
1
Этап 2 сокращения: кодер 511 LDPC выбирает последовательность для (A+1) групп столбцов среди  на этапе 607, и выбранная последовательность определена как . Кодер 511 LDPC учитывает, что отсутствует последовательность R для остальных групп столбцов K/M-A-1.
(k)
i,0
1
2
Этап 3 сокращения: кодер 511 LDPC генерирует сокращенный код DVB-S2 LDPC из A+1 S  значений, выбранных на этапе 2 сокращения, используя Правило 1 и Правило 2 на этапе 609. Следует отметить, что сокращенный код LDPC имеет длину информации (A+1)M, которая всегда больше чем или равна K.
Этап 4 сокращения: кодер 511 LDPC дополнительно сокращает на этапе 611
1
2
(A+1)M-K столбцов для сокращенного кода LDPC, сгенерированного на этапе 3 сокращения.
2
2
1
1
1
Для описания подробных примеров ниже будет приведено подробное описание обработки генерирования нового кода LDPC, длина кодового слова которого N=4050 и длина информации которого составляет K-1170, путем сокращения 12150 битов из информационных битов, используя код DVB-S2 LDPC, который имеет характеристику N=16200, K=13320, М=360 и q=9.
Пример этапа 1 сокращения: кодер 511 LDPC определяет
(k)
i,0
Пример этапа 2 сокращения: кодер 511 LDPC выбирает последовательность для 4 групп столбцов среди в сумме 37 R  значений. В этом конкретном примере кодер 511 LDPC выбирает следующую последовательность.
(k)
i,0
Пример этапа 3 сокращения: кодер 511 LDPC генерирует сокращенный код DVB-S2 LDPC из 4 S  значений, выбранных в примере этапа 2 сокращения, используя Правило 1 и Правило 2. Для сокращенного кода LDPC длина его информационного слова равна 4x360=1440.
Пример этапа 4 сокращения: кодер 511 LDPC дополнительно сокращает 1440-1170=270 столбцов для сокращенного кода LDPC, генерируемого в примере этапа 3 сокращения. Кодер 511 LDPC выполняет кодирование на основе сокращенного кода LDPC.
1
1
2
2
В соответствии с примерным вариантом выполнения, поскольку информация последовательности для K/M-A-1=13320/360-4=33 группы столбцов среди  значений не используется, это эквивалентно сокращению в сумме 33x360=11880 битов в примере этапа 2 сокращения. Кроме того, поскольку в кодере 511 LDPC сокращено 270 информационных битов в ходе примера этапа 3 сокращения и примера этапа 4 сокращения, в конечном итоге, это становится эквивалентно сокращению 12150 информационных битов. Поэтому результат варианта выполнения представляет сокращенный код LDPC с длиной N=4050 кодового слова и длиной K=1170 информации.
Как описано выше, настоящее изобретение позволяет применять эффективную технологию сокращения, в которой, по сравнению с технологией сокращения бит за битом, обычно используемой для сокращения кода DVB-S2 LDPC, применяют способ, в котором не используется информация в группах столбцов кода DVB-S2 LDPC, зависящих от структурных свойств кода DVB-S2 LDPC.
Выбор критериев последовательности для групп столбцов может кратко быть сведен к этапу 2 в процессе сокращения кода DVB-S2 LDPC.
2
2
1
2
2
2
Критерий 1: кодер 511 LDPC выбирает сокращенный код LDPC с длиной N кодового слова и информационной длиной K, полученной путем выполнения сокращения кода DVB-S2 LDPC с длиной Nкодового слова и длиной K информации, при этом распределение степени выбранного сокращенного кода LDPC практически аналогично оптимальному распределению степени нормального кода LDPC с длиной N кодового слова и длиной Kинформации.
Критерий 2: кодер 511 LDPC выбирает код, имеющий хорошую характеристику цикла на графе Таннера среди сокращенных кодов, выбранных по критерию 1. В настоящем изобретении, что касается критерия для характеристики цикла, кодер 511 LDPC выбирает случай, в котором циклы минимальной длины в графе Таннера являются, насколько это возможно, большими, и количество циклов минимальной длины является как можно меньшим.
Хотя оптимальное распределение степени нормального кода LDPC может быть определено по критерию 1, используя способ анализа эволюции плотности, подробное его описание будет исключено, поскольку оно не соответствует пониманию настоящего изобретения.
Если количество вариантов выбора последовательности положений с весом 1 для группы столбцов невелико, кодер 511 LDPC может выбрать последовательность положений с весом 1 для соответствующей группы столбцов, имеющей наилучшие характеристики, путем полного поиска всех случаев, независимо от критерия 1 и критерия 2. Однако критерии выбора для групп столбцов, применяемые на этапе 2 сокращения кода DVB-S2 LDPC, могут увеличивать свою эффективность путем выбора кода LDPC, одновременно удовлетворяющего условиям, когда количество выборов последовательности положений с весом 1 для группы столбцов слишком велико.
1
1
1
Для описания примера хорошей последовательности, получаемой путем применения критериев выбора последовательности положений с весом 1 для группы столбцов, будет рассмотрен код DVB-S2 с N=16200, K=3240, M=360 и q=36. Код DVB-S2 LDPC имеет следующую последовательность положений с весом 1 по группам столбцов.
6295 9626 304 7695 4839 4936 1660 144 11203 5567 6347 12557
10691 4988 3859 3734 3071 3494 7687 10313 5964 8069 8296 11090
10774 3613 5208 11177 7676 3549 8746 6583 7239 12265 2674 4292
11869 3708 5981 8718 4908 10650 6805 3334 2627 10461 9285 11120
7844 3079 10773
3385 10854 5747
1360 12010 12202
6189 4241 2343
9840 12726 4977
2
2
i-ая последовательность положений с весом 1 в i-ой строке последовательно представляет информацию о положениях строк с 1-ами для i-ой группы столбцов. Поэтому можно понимать, что код DVB-S2 LDPC состоит из 9 групп столбцов, и длина его информации составляет 9x360=3240. Если длина кодового слова и длина информации, которая должна быть получена при выполнении сокращения, представляют собой N и K соответственно, становится возможным определить оптимизированную структуру сокращения, используя этап 1 сокращения - этап 4 сокращения.
2
2
2
2
2
2
Однако, когда значения N и K, требуемые системой, чрезвычайно изменчивы, оптимизированная структура сокращения может не иметь корреляции в соответствии со значением N. Например, если предположить, что при оптимальном выборе для случая, необходимого для сокращения 2 групп столбцов из кода DVB-S2 LDPC, не используют информацию о строках с 1 в 4-ой и 8-ой группах столбцов, поскольку выбор и сокращение 1-ой, 5-ой и 6-ой групп столбцов также может быть оптимальным при выборе 3 групп столбцов, они не имеют корреляции друг с другом. Поэтому, когда значения N и K, требуемые системой, чрезвычайно изменчивы, нежелательно обязательно сохранять все оптимизированные структуры сокращения, в соответствии со значением K для оптимизированных рабочих характеристик.
2
2
Таким образом, если значения N и K, требуемые системой, чрезвычайно изменчивы, могут быть найдены близкие в оптимальным структуры сокращения, используя следующий способ для эффективности системы.
Вначале предположим, что выбор 1 группы столбцов необходим для сокращения. В этом случае, поскольку количество выбираемых групп столбцов равно только 1 в оптимальном смысле, становится возможным выбрать группу столбцов с самыми высокими рабочими характеристиками. Затем, когда существует потребность в выборе 2 групп столбцов для сокращения, кодер 511 LDPC выбирает группу столбцов, представляющих наилучшие характеристики среди остающихся групп столбцов, включающих в себя выбранную 1 группу столбцов. Таким же образом, когда существует потребность в выборе i групп столбцов для сокращения, кодер 511 LDPC выбирает одну группу столбцов с самыми высокими характеристиками среди оставшихся групп столбцов, включающих в себя (i-1) групп столбцов, выбранных на предыдущем этапе для сокращения.
2
Способ сокращения, хотя он не может гарантировать оптимальный выбор, может стабилизировать рабочие характеристики из одной структуры сокращения, независимо от изменения значения K.
2
2
2
2
2
1
2
В качестве подробного примера, когда значения N и K, требуемые системой, чрезвычайно изменчивы, становится возможным найти близкие к оптимальным структуры сокращения в соответствии с Nи K, для 9 случаев, показанных в таблице 1. Здесь N=N-K, поскольку не рассматривается технология выкалывания.
Таблица 1
Диапазон K<sub>2</sub>
Способ сокращения
1) 2880≤K<sub>2</sub><3240
Сокращают 3240-K<sub>2</sub> битов из информационного слова, соответствующего 8-ой последовательности 6189 4241 2343 для 8-ой группы столбцов среди последовательностей положений с весом 1.
2) 2520≤K<sub>2</sub><2880
Сокращают все столбцы, включенные в группу столбцов, которые соответствуют 8-ой последовательности среди последовательностей положений с весом 1, и дополнительно сокращают 2880-K<sub>2 </sub>битов из информационного слова, соответствующего 4-ой последовательности11869 3708 5981 8718 4908 10650 6805 3334 2627 10461 9285 11120для 4-ой группы столбцов.
3) 2160≤K<sub>2</sub><2520
Сокращают все столбцы, включенные в группу столбцов, которые соответствуют 8-ой и 4-ой последовательностям среди последовательностей положений с весом 1, и дополнительно сокращают 252-K<sub>2 </sub>битов из информационного слова, соответствующего 7-ой последовательности1360 12010 12202для 7-ой группы столбцов.
4) 1800≤K<sub>2</sub><2160
Сокращают все столбцы, включенные в группу столбцов, которые соответствуют 8-ой, 4-ой и 7-ой последовательностям среди последовательностей положений с весом 1, и дополнительно сокращают 2160-K<sub>2</sub> битов из информационного слова, соответствующего 6-ой последовательности3385 10854 5747для 6-ой группы столбцов.
5) 1440≤K<sub>2</sub><1800
Сокращают все столбцы, включенные в группу столбцов, которые соответствуют 8-ой, 4-ой, 7-ой и 6-ой последовательностям среди последовательностей положений с весом 1, и дополнительно сокращают 1880-K<sub>2</sub> битов из информационного слова, соответствующего 3-ей последовательности10774 3613 5208 11177 7676 3549 8746 6583 7239 12265 2674 4292для 3-ей группы столбцов.
6) 1080≤K<sub>2</sub><1440
Сокращают все столбцы, включенные в группу столбцов, которые соответствуют 8-ой, 4-ой, 7-ой, 6-ой и 3-ей последовательностям среди последовательностей положений с весом 1, и дополнительно сокращают 1440-K<sub>2</sub> битов из информационного слова, соответствующего 5-ой последовательности7844 3079 10773для 5-ой группы столбцов.
7) 720≤K<sub>2</sub><1080
Сокращают все столбцы, включенные в группу столбцов, которые соответствуют 8-ой, 4-ой, 7-ой, 6-ой, 3-ей и 5-ой последовательностям среди последовательностей положений с весом 1, и дополнительно сокращают 1080-K<sub>2</sub> битов из информационного слова, соответствующего 2-ой последовательности10691 4988 3859 3734 3071 3494 7687 10313 5964 8069 8296 11090для 2-ой группы столбцов.
8) 528≤K<sub>2</sub><720
Сокращают все столбцы, включенные в группу столбцов, которые соответствуют 8-ой, 4-ой, 7-ой, 6-ой, 3-ей, 5-ой и 2-ой последовательностям среди последовательностей положений с весом 1, и дополнительно сокращают 720-K<sub>2</sub> битов из информационного слова, соответствующего 9-ой последовательности9840 12726 4977для 9-ой группы столбцов. Однако, поскольку 168 битов проверки на четность BCH отображают на часть группы столбцов, которые соответствуют 9-ой последовательности, используя схему кодирования DVB-S2, столбцы в положениях, соответствующих проверке на четность BCH, не подвергают сокращению.
9) 168≤K<sub>2</sub><528
Сокращают все столбцы, включенные в группу столбцов, которые соответствуют 8-ой, 4-ой, 7-ой, 6-ой, 3-ей, 5-ой, 2-ой и 9-ой последовательностям среди последовательностей положений с весом 1, и дополнительно сокращают 528-K<sub>2</sub> битов из информационного слова, соответствующего 1-ой последовательности6295 9626 304 7695 4839 4936 1660 144 11203 5567 6347 12557для 1-ой группы столбцов. Здесь K<sub>2</sub>=168 означает случай, когда только столбцы, соответствующие четности BCH, остаются в коде DVB-S2 LDPC. Другими словами, отсутствуют чистые биты информационного слова. Это не учитывается.
Порядок сокращений в таблице 1 определяют с помощью, например, деления информационного слова на 9 интервалов с последующим применением к нему критерия 1 и критерия 2.
Что касается таблицы 1, можно видеть, что все столбцы, соответствующие 8-ой, 4-ой, 7-ой, 6-ой, 3-ей, 5-ой, 2-ой, 9-ой и 1-ой последовательностям, включенным в группу столбцом, последовательно подвергают сокращению в соответствии с требуемой длиной информации кода LDPC. Таким образом, значение ноль отображают на информационные биты, которые будут подвергнуты сокращению, в порядке столбцов, соответствующих 8-ой, 4-ой, 7-ой, 6-ой, 3-ей, 5-ой, 2-ой, 9-ой и 1-ой строкам в соответствии с требуемой длиной информации. В качестве альтернативы, также можно учесть, что имеющие значение информационные биты, значения которых не фиксированы на 0, последовательно отображают на столбцы, соответствующие 1-ой, 9-ой, 2-ой, 5-ой, 3-ей, 6-ой, 7-ой, 4-ой и 8-ой последовательностям, в соответствии с длиной информации. Порядок "8, 4, 7, 6, 3, 5, 2, 9, 1" столбцов также может быть выражен как "7, 3, 6, 5, 2, 4, 1, 8, 0", если представить 1-ый столбец как 0-ой блок.
1
1
1
1
1
2
На этапе 8) и на этапе 9) в таблице 1, поскольку последние 168 битов 9-ой группы столбцов или последней группы столбцов, в части, соответствующей битам информации кода DVB-S2 LDPC с N=16200, K=3240, M=360 и q=36, отображают на биты проверки на четность Bose-Chaudhuri-Hocquenghem (BCH), их нельзя подвергать сокращению. Фактически, когда разрабатывают код DVB-S2 LDPC с N=16200, 168 битов проверки на четность BCH всегда включают в информационные биты LDPC, имеющие длину K и K.
Информация порядка сокращения, показанная в таблице 1, также может быть кратко выражена как таблица 2.
Таблица 2
Основные переменные кода DVB-S2 LDPC
N<sub>1</sub>=16200, K<sub>1</sub>=3240, M<sub>1</sub>=360, q=36
Диапазон K<sub>2</sub>
Способ сокращения
1) 528≤K<sub>2</sub><3240
Для целого числа <img file="00000019.tif" he="10" wi="28" img-content="undefined" img-format="tif" /> сокращают все m групп столбцов, соответствующих π(0)-ой, π(1)-ой, … и π(m-1)-ой группам столбцов, и дополнительно сокращают информационные биты 3240-K<sub>2</sub>-360m из π(m)-ой группы столбцов. Здесь π обозначает функцию перестановки, означающую структуру сокращения, и взаимосвязь между ними показана в нижней части таблицы.Однако, когда сокращают часть π(7)=8-ой группы столбцов, столбцы в положениях, соответствующих 168 битам проверки на четность BCH, не подвергают сокращению.
2) 168≤K<sub>2</sub><528
Сокращают все из π(0)-ой, π(l)-ой и π(6)-ой групп столбцов и сокращают все столбцы, за исключением столбцов в положениях, соответствующих 168 битам проверки на четность BCH от π(7)=8-ой группы столбцов. Кроме того, дополнительно сокращают 528-K<sub>2</sub> информационных битов от π(8)=0-ой группы столбцов.
π(0)
π(1)
π(2)
π(3)
π(4)
π(5)
π(6)
π(7)
π(8)
7
3
6
5
2
4
1
8
0
1
1
1
Для описания другого примерного варианта выполнения будет описан код DVB-S2 для N=16200, K=7200, М=360 и q=25. Код DVB-S2 LDPC имеет следующие последовательности положений с весом 1.
20 712 2386 6354 4061 1062 5045 5158
21 2543 5748 4822 2348 3089 6328 5876
22 926 5701 269 3693 2438 3190 3507
23 2802 4520 3577 5324 1091 4667 4449
24 5140 2003 1263 4742 6497 1185 6202
0 4046 6934
1 2855 66
2 6694 212
3 3439 1158
4 3850 4422
5 5924 290
6 1467 4049
7 7820 2242
8 4606 3080
9 4633 7877
10 3884 6868
11 8935 4996
12 3028 764
13 5988 1057
14 7411 3450
2
2
i-ая последовательность последовательно представляет информацию о положении строк с 1 по i-ую группу столбцов. Поэтому следует понимать, что код DVB-S2 LDPC состоит из 20 групп столбцов, и длина информации составляет 20x360=7200. Когда длина кодового слова и длина информации, которую требуется получить в результате выполнения сокращения, составляют N и K соответственно, возможно найти близкие к оптимальным структуры сокращения, как определено в таблице 3.
Таблица 3
Основные переменные кода DVB-S2 LDPC
N<sub>1</sub>=16200, K<sub>1</sub>=7200, M<sub>1</sub>=360, q=25
Диапазон K<sub>2</sub>
Способ сокращения
1) 528≤K<sub>2</sub><7200
Для целого числа<img file="00000020.tif" he="11" wi="29" img-content="undefined" img-format="tif" /> сокращают все m групп столбцов, соответствующих π(0)-ой, π(1)-ой, ..., и π(m-1)-ой группам столбцов, и дополнительно сокращают информационные биты 7200-K<sub>2</sub>-360m из π(m)-ой группы столбцов. Здесь π обозначает функцию перестановки, означающую структуру сокращения, и взаимосвязь между ними, показана в нижней части таблицы.Однако, когда сокращают часть π(18)=l9-ой группы столбцов, столбцы в положениях, соответствующих 168 битам проверки на четность BCH, не подвергают сокращению.
2) 168≤K<sub>2</sub><528
Сокращают все из π(0)-ой, π(1)-ой и π(17)-ой групп столбцов, и сокращают все столбцы, за исключением столбцов в положениях, соответствующих 168 битам проверки на четность BCH из π(18)=19-ой группы столбцов. Кроме того, дополнительно сокращают 528-K<sub>2 </sub>информационных битов из π(19)=0-ой группы столбцов.
π(0)
π(1)
π(2)
π(3)
π(4)
π(5)
π(6)
π(7)
π(8)
π(9)
18
17
16
15
14
13
12
11
4
10
π(10)
π(11)
π(12)
π(13)
π(14)
π(15)
π(16)
π(17)
π(18)
π(19)
9
8
3
2
7
6
5
1
19
0
В процессе сокращения может быть более просто воплощено дополнительное сокращение, если процесс последовательно выполняют сзади или спереди группы столбцов, где достигается дополнительное сокращение.
После этапа 611 на фиг. 6, когда требуется выполнить выкалывание, кодер 511 LDPC применяет выкалывание в процессе кодирования LDPC на этапе 613. Способ выкалывания будет кратко описан ниже.
2
2
1
2
1
2
Δ
1
2
Δ
2
2
Δ
Δ
Δ
1
1,
1
1
Δ
Δ
Если длина кодового слова и длина информации кода LDPC определены как N и K соответственно, тогда в соответствии с изобретением следует стремиться к получению, в конечном итоге, из кода DVB-S2 LDPC кода с длиной N кодового слова и длиной Kинформации, используя технологию сокращения и технологию выкалывания, и при этом учитывая, что N-N=Nи K-K=K, можно получить код LDPC с длиной Nкодового слова и длиной K информации в результате сокращения битов K и выкалывания битов (N-K) из матрицы проверки на четность кода DVB-S2 LDPC. Предполагая, что для удобства выкалыванию подвергают только часть проверки на четность, поскольку длина проверки на четность равна N-Kсуществует способ выкалывания 1 бита из части проверки на четность через каждые (N-K)/(N-K) битов. Однако различные другие способы также можно применять в качестве технологии выкалывания.
Δ
Δ
Для N-K=0, нет необходимости применять технологию выкалывания. В данном случае становится возможным получить эффективно сокращенный код DVB-S2 LDPC путем применения аналогичного способа генерирования для кода DVB-S2 LDPC, используя структуру сокращения, показанную в таблице 1.
На фиг. 7 показан подробный пример устройства передачи, предназначенный для воплощения процесса сокращения кода DVB-S2 LDPC. На фиг. 7 показана блок-схема, иллюстрирующая примерную структуру устройства передачи, использующего сокращенные коды LDPC, в соответствии с вариантом выполнения настоящего изобретения.
Устройство передачи включает в себя, например, контроллер 710, модуль 720 применения структуры сокращения, экстрактор 740 матрицы проверки на четность кода LDPC и кодер 760 LDPC.
Экстрактор 740 матрицы проверки на четность кода LDPC выделяет сокращенную матрицу проверки на четность кода LDPC. Матрица проверки на четность кода LDPC может быть выделена из запоминающего устройства или может быть задана в устройстве передачи, или может быть сгенерирована устройством передачи.
Контроллер 710 управляет модулем 720 применения структуры сокращения так, что он может определять структуру сокращения в соответствии с длиной информации. Модуль 720 применения структуры сокращения вставляет нулевые (0) биты в положениях сокращенных битов или удаляет столбцы, соответствующие сокращенным битам из матрицы проверки на четность заданного кода LDPC. Способ определения структуры сокращения может использовать структуру сокращения, сохраненную в запоминающем устройстве, генерировать структуру сокращения, используя генератор последовательности (не показан), или использовать алгоритм анализа развития плотности для матрицы проверки на четность и ее заданной длины информации.
Контроллер 710 управляет модулем 720 применения структуры сокращения так, что он может сокращать часть информационных битов кода LDPC в структурах, показанных в таблице 1 - таблице 3.
Кодер 760 LDPC выполняет кодирование на основе кода LDPC, сокращенного контроллером 710 и модулем 720 применения структуры сокращения.
На фиг. 8 и 9 показаны блок-схемы, иллюстрирующие структуры устройства передачи и устройства приема для кода DVB-S2 LDPC, в которых в обоих применяют сокращение и выкалывание соответственно.
На фиг. 8 показана блок-схема, иллюстрирующая примерную структуру устройства передачи, в котором используются сокращенные/выколотые коды LDPC, в соответствии с вариантом выполнения настоящего изобретения.
Устройство передачи по фиг. 8 дополнительно содержит модуль 880 применения структуры выкалывания, добавленный к устройству передачи по фиг. 7. Как показано на фиг. 8, можно видеть, что сокращение выполняют в первом каскаде кодера 760 LDPC и выкалывание выполняют в выходном каскаде кодера 760 LDPC.
Модуль 880 применения структуры выкалывания применяет выкалывание к выходу кодера 760 LDPC. Способ применения выкалывания был подробно описан на этапе 613 со ссылкой на фиг. 6.
На фиг. 9 показана блок-схема, иллюстрирующая примерную структуру устройства приема с использованием кодов LDPC, в которой применяют сокращение, в соответствии с вариантом выполнения настоящего изобретения.
На фиг. 9 показан пример устройства приема, которое принимает сигнал, переданный из системы передачи данных, используя сокращенный код DVB-S2 LDPC, и восстанавливает данные, необходимые пользователю, из принятого сигнала, когда длину сокращенного кода DVB-S2 LDPC определяют из принятого сигнала.
Устройство приема включает в себя, например, контроллер 910, модуль 920 определения/оценки структуры сокращения, демодулятор 930 и декодер 940 LDPC.
Демодулятор 930 принимает и демодулирует сокращенный код LDPC и предоставляет демодулированный сигнал в модуль 920 определения/оценки структуры сокращения и в декодер 940 LDPC.
Модуль 920 определения/оценки структуры сокращения, под управлением контроллера 910, выполняет оценку или определяет информацию о структуре сокращения кода LDPC из демодулированного сигнала и предоставляет информацию о положении сокращенных битов в декодер 940 LDPC. Способ определения или оценки структуры сокращения в модуле 920 определения/оценки структуры сокращения может использовать структуру сокращения, сохраненную в запоминающем устройстве, или может генерировать структуру сокращения, используя генератор последовательности (не показан) или используя алгоритм анализа развития плотности для матрицы проверки на четность и ее заданной длины информации.
Поскольку вероятность того, что значения сокращенных битов будут равны нулю (0) в декодере 940 LDPC, равна 1 (или 100%), контроллер 910 определяет, будет ли он декодировать сокращенные биты с помощью декодера 940 LDPC, используя значение вероятности 1.
Декодер 940 LDPC восстанавливает данные, необходимые пользователю, из принятого сигнала, когда он определяет длину сокращенного кода DVB-S2 LDPC, используя модуль 920 определения/оценки сокращенной структуры.
На фиг. 10 показана блок-схема, иллюстрирующая примерную структуру устройства приема, с использованием кодов LDPC, в которой одновременно применяют сокращение и выкалывание, в соответствии с вариантом выполнения настоящего изобретения.
В устройстве приема по фиг. 10 модуль 1020 определения/оценки структуры сокращения и выкалывания заменяет модуль 920 определения/оценки структуры сокращения по фиг. 9.
Когда устройство передачи одновременно применяет сокращение и выкалывание, модуль 1020 определения/оценки структуры сокращения и выкалывания в устройстве приема может вначале выполнить определение/оценку структуры для сокращения или может вначале выполнить определение/оценку структуры для выкалывания, или может одновременно выполнять определение/оценку структуры для сокращения и определение/оценку структуры для выкалывания.
Декодер 940 LDPC, предпочтительно, имеет информацию как о сокращении, так и о выкалывании для выполнения декодирования.
На фиг. 11 показана блок-схема последовательности операций, иллюстрирующая примерную операцию приема в устройстве приема в соответствии с вариантом выполнения настоящего изобретения.
Демодулятор 930 принимает и демодулирует сокращенный код LDPC на этапе 1101. После этого, модуль 920 определения/оценки структуры сокращения определяет или выполняет оценку структуры (структур) сокращения/выкалывания из демодулированного сигнала на этапе 1103.
Модуль 920 определения/оценки структуры сокращения определяет на этапе 1105, имеется ли какой-либо сокращенный/выколотый бит. Если сокращенный/выколотый бит отсутствует, декодер 940 LDPC выполняет декодирование на этапе 1111. Однако если имеется сокращенный/выколотый бит биты), модуль 1020 определения/оценки структуры сокращения и выкалывания предоставляет информацию о положении сокращенных/выколотых битов в декодер 940 LDPC на этапе 1107.
На этапе 1109 на основании информации о положении сокращенных/выколотых битов декодер 940 LDPC определяет, что вероятность, что значения сокращенных битов будут равны 0, равна 1, и определяет, что выколотые биты представляют собой удаленные биты. После этого декодер 940 LDPC переходит на этап 1111, где он выполняет декодирование LDPC.
Как очевидно из приведенного выше описания, настоящее изобретение обеспечивает структуры сокращения, позволяя, таким образом, по существу, не использовать некоторые столбцы. Кроме того, настоящее изобретение может генерировать отдельные коды LDPC, имеющие разные длины кодового слова, используя информацию о заданной матрице проверки на четность в системе связи, в которой применяются коды LDPC.
Описанные выше способы в соответствии с настоящим изобретением могут быть реализованы в виде аппаратных средств или программного обеспечения, или компьютерного кода, который может быть сохранен на носителе записи, таком как CD-ROM, ОЗУ, гибкий диск, жесткий диск или магнитооптический диск, или может быть загружен через сеть, таким образом, что способы, описанные здесь, могут быть выполнены с помощью таких программных средств, используя компьютер общего назначения или специальный процессор, или программируемые или специализированные аппаратные средства, такие как ASIC (СИС, специализированная интегральная схема) или FPGA (ППВМ, программируемая пользователем вентильная матрица). Следует понимать, что в данной области техники компьютер, процессор или программируемые аппаратные средства включают в себя компоненты памяти, например RAM (ОЗУ, оперативное запоминающее устройство), ROM (ПЗУ, постоянное запоминающее устройство), память типа флэш и т.д., которые могут сохранять или принимать программное средство или компьютерный код, который, когда к нему осуществляется доступ и его выполняют с помощью компьютера, процессора или аппаратных средств, воплощает описанные здесь способы обработки.
Хотя изобретение было представлено и описано со ссылкой на определенный предпочтительный вариант его воплощения, для специалиста в данной области техники будет понятно, что различные изменения по форме и деталям могут быть выполнены здесь без выхода за пределы сущности и объема изобретения, которые определены приложенной формулой изобретения.