КОДИРОВАНИЕ И ДЕКОДИРОВАНИЕ LDPC ПАКЕТОВ ПЕРЕМЕННЫХ РАЗМЕРОВ

1. Устройство, содержащее
по меньшей мере один процессор, выполненный с возможностью кодирования или декодирования пакетов переменных размеров на основании множества базовых матриц контроля четности разных размеров и множества значений поднятия, равных разным степеням 2, и
память, соединенную с по меньшей мере одним процессором и выполненную с возможностью хранения параметров для множества базовых матриц контроля четности.
2. Устройство по п.1, в котором по меньшей мере один процессор выполнен с возможностью определения размера пакета для пакета, подлежащего кодированию или декодированию, выбора значения поднятия из множества значений поднятия на основании размера пакета, выбора базовой матрицы контроля четности из множества базовых матриц контроля четности на основании размера пакета и выбранного значения поднятия, генерации поднятой матрицы контроля четности на основании выбранной базовой матрицы контроля четности и выбранного значения поднятия, и кодирования или декодирования пакета на основании поднятой матрицы контроля четности.
3. Устройство по п.2, в котором по меньшей мере один процессор выполнен с возможностью выбора значения поднятия путем вычисления
,
B,max
где k - размер пакета, k - максимальное количество информационных битов для множества базовых матриц контроля четности, L - выбранное значение поднятия, и “   ” обозначает оператор верхнего целочисленного приближения.
4. Устройство по п.2, в котором по меньшей мере один процессор выполнен с возможностью выбора базовой матрицы контроля четности путем вычисления
,
B
где k - размер пакета, L - выбранное значение поднятия, k - количество информационных битов для выбранной базовой матрицы контроля четности, и “   ” обозначает оператор верхнего целочисленного приближения.
5. Устройство по п.2, в котором по меньшей мере один процессор выполнен с возможностью генерации поднятой матрицы контроля четности на основании дополнительно значений циклического сдвига для ненулевых элементов выбранной базовой матрицы контроля четности.
6. Устройство по п.5, в котором по меньшей мере один процессор выполнен с возможностью вычисления значения циклического сдвига для поднятой матрицы контроля четности на основании значений циклического сдвига для ненулевых элементов выбранной базовой матрицы контроля четности и выбранного значения поднятия, и генерации поднятой матрицы контроля четности путем замены каждого ненулевого элемента выбранной базовой матрицы контроля четности матрицей циклической перестановки со значением циклического сдвига, вычисленным для ненулевого элемента.
7. Устройство по п.2, в котором по меньшей мере один процессор выполнен с возможностью генерации поднятой матрицы контроля четности на основании L копий базового графа для выбранной базовой матрицы контроля четности, где L - выбранное значение поднятия, и соединения между собой вершины L копий базового графа на основании матриц перестановки для ненулевых элементов выбранной базовой матрицы контроля четности.
8. Устройство по п.7, в котором базовый граф содержит множество ребер для ненулевых элементов выбранной базовой матрицы контроля четности, и в котором по меньшей мере один процессор выполнен с возможностью осуществления декодирования параллельно для L копий одного и того же ребра в L копиях базового графа, и осуществления декодирования последовательно для разных ребер в L копиях базового графа.
9. Устройство по п.7, в котором по меньшей мере один процессор выполнен с возможностью осуществления декодирования параллельно для вершин каждой копии базового графа, и осуществления декодирования последовательно для L копий базового графа.
10. Устройство по п.2, в котором по меньшей мере один процессор выполнен с возможностью кодирования информационных битов в пакете на основании поднятой матрицы контроля четности для получения первых битов четности, и кодировать информационные биты и первые биты четности на основании поднятой матрицы контроля четности для получения вторых битов четности.
11. Устройство по п.10, в котором по меньшей мере один процессор дополнительно выполнен с возможностью кодирования информационных битов, первых битов четности и вторых битов четности на основании поднятой матрицы контроля четности для получения третьих битов четности.
12. Устройство по п.1, в котором множество базовых матриц контроля четности содержит по меньшей мере одну базовую матрицу контроля четности для по меньшей мере одного из 6, 7, 8, 9, 10 и 11 информационных битов.
13. Устройство по п.1, в котором множество значений поднятия содержит по меньшей мере одно значение поднятия для по меньшей мере одного из 4, 8, 16, 32, 64, 128, 256, 512 и 1024.
max
max
14. Устройство по п.1, в котором каждая базовая матрица контроля четности содержит совокупность ненулевых элементов в совокупности положений, причем каждый ненулевой элемент связан со значением циклического сдвига в пределах от 0 до L-1, где L - максимальное значение поднятия.
15. Устройство по п.14, в котором память выполнена с возможностью хранения совокупности значений циклического сдвига для совокупности ненулевых элементов каждой базовой матрицы контроля четности.
16. Устройство по п.15, в котором по меньшей мере один процессор выполнен с возможностью определения значений циклического сдвига для всех значений поднятия для каждой базовой матрицы контроля четности на основании множества значений циклического сдвига, сохраненных для базовой матрицы контроля четности.
17. Способ обработки данных, содержащий этапы, на которых
кодируют или декодируют пакеты переменных размеров на основании множества базовых матриц контроля четности разных размеров и множества значений поднятия, равных разным степеням 2.
18. Способ по п.17, в котором на этапе кодирования или декодирования пакетов переменных размеров
определяют размер пакета для пакета, подлежащего кодированию или декодированию,
выбирают значение поднятия из множества значений поднятия на основании размера пакета,
выбирают базовую матрицу контроля четности из множества базовых матриц контроля четности на основании размера пакета и выбранного значения поднятия,
генерируют поднятую матрицу контроля четности на основании выбранной базовой матрицы контроля четности и выбранного значения поднятия, и
кодируют или декодируют пакет на основании поднятой матрицы контроля четности.
19. Способ по п.18, в котором на этапе выбора значения поднятия вычисляют
,
B,max
где k - размер пакета, k - максимальное количество информационных битов для множества базовых матриц контроля четности, L - выбранное значение поднятия, и “   ” обозначает оператор верхнего целочисленного приближения.
20. Способ по п.18, в котором на этапе выбора базовой матрицы контроля четности вычисляют
,
B
где k - размер пакета, L - выбранное значение поднятия, k - количество информационных битов для выбранной базовой матрицы контроля четности, и “   ” обозначает оператор верхнего целочисленного приближения.
21. Способ по п.17, в котором на этапе генерации поднятой матрицы контроля четности
генерируют поднятую матрицу контроля четности на основании дополнительно совокупности значений циклического сдвига для множества ненулевых элементов выбранной базовой матрицы контроля четности.
22. Способ по п.17, дополнительно содержащий этап, на котором
сохраняют множество значений циклического сдвига для множества ненулевых элементов каждой базовой матрицы контроля четности во множестве базовых матриц контроля четности.
23. Устройство для обработки данных, содержащее
средство для кодирования или декодирования пакетов переменных размеров на основании множества базовых матриц контроля четности разных размеров и множества значений поднятия, равных разным степеням 2.
24. Устройство по п.23, в котором средство для кодирования или декодирования пакетов переменных размеров содержит
средство для определения размера пакета для пакета, подлежащего кодированию или декодированию,
средство для выбора значения поднятия из множества значений поднятия на основании размера пакета,
средство для выбора базовой матрицы контроля четности из множества базовых матриц контроля четности на основании размера пакета и выбранного значения поднятия,
средство для генерации поднятой матрицы контроля четности на основании выбранной базовой матрицы контроля четности и выбранного значения поднятия, и
средство для кодирования или декодирования пакета на основании поднятой матрицы контроля четности.
25. Устройство по п.24, в котором средство для выбора значения поднятия содержит средство для вычисления
,
B,max
где k - размер пакета, k - максимальное количество информационных битов для множества базовых матриц контроля четности, L - выбранное значение поднятия, и “   ” обозначает оператор верхнего целочисленного приближения.
26. Устройство по п.24, в котором средство для выбора базовой матрицы контроля четности содержит средство для вычисления
,
B
где k - размер пакета, L - выбранное значение поднятия, k - количество информационных битов для выбранной базовой матрицы контроля четности, и “   ” обозначает оператор верхнего целочисленного приближения.
27. Устройство по п.23, в котором средство для генерации поднятой матрицы контроля четности содержит
средство для генерации поднятой матрицы контроля четности на основании дополнительно совокупности значений циклического сдвига для совокупности ненулевых элементов выбранной базовой матрицы контроля четности.
28. Устройство по п.23, дополнительно содержащее
средство для сохранения множества значений циклического сдвига для множества ненулевых элементов каждой базовой матрицы контроля четности во множестве базовых матриц контроля четности.
29. Компьютерный программный продукт, содержащий
машиночитаемый носитель, содержащий
код, побуждающий по меньшей мере один компьютер кодировать или декодировать пакеты переменных размеров на основании множества базовых матриц контроля четности разных размеров и множества значений поднятия, равных разным степеням 2.
30. Компьютерный программный продукт по п.29, в котором машиночитаемый носитель дополнительно содержит
код, побуждающий по меньшей мере один компьютер определять размер пакета для пакета, подлежащего кодированию или декодированию,
код, побуждающий по меньшей мере один компьютер выбирать значение поднятия из множества значений поднятия на основании размера пакета,
код, побуждающий по меньшей мере один компьютер выбирать базовую матрицу контроля четности из множества базовых матриц контроля четности на основании размера пакета и выбранного значения поднятия,
код, побуждающий по меньшей мере один компьютер генерировать поднятую матрицу контроля четности на основании выбранной базовой матрицы контроля четности и выбранного значения поднятия, и
код, побуждающий по меньшей мере один компьютер кодировать или декодировать пакет на основании поднятой матрицы контроля четности.
31. Компьютерный программный продукт по п.30, в котором машиночитаемый носитель дополнительно содержит
код, побуждающий по меньшей мере один компьютер выбирать значение поднятия путем вычисления
,
B,max
где k - размер пакета, k - максимальное количество информационных битов для множества базовых матриц контроля четности, L - выбранное значение поднятия, и “   ” обозначает оператор верхнего целочисленного приближения.
32. Компьютерный программный продукт по п.30, в котором машиночитаемый носитель дополнительно содержит
код, побуждающий по меньшей мере один компьютер выбирать базовую матрицу контроля четности путем вычисления
,
B
где k - размер пакета, L - выбранное значение поднятия, k - количество информационных битов для выбранной базовой матрицы контроля четности, и “   ” обозначает оператор верхнего целочисленного приближения.
33. Компьютерный программный продукт по п.29, в котором машиночитаемый носитель дополнительно содержит
код, побуждающий по меньшей мере один компьютер генерировать поднятую матрицу контроля четности дополнительно на основании совокупности значений циклического сдвига для совокупности ненулевых элементов выбранной базовой матрицы контроля четности.
34. Устройство, содержащее
по меньшей мере один процессор, выполненный с возможностью определения первого множества значений циклического сдвига для первой матрицы контроля четности с первым размером поднятия на основании второго множества значений циклического сдвига для второй матрицы контроля четности со вторым размером поднятия, причем первый и второй размеры поднятия являются разными степенями 2, генерировать первую матрицу контроля четности на основании первого множества значений циклического сдвига и кодировать или декодировать пакет на основании первой матрицы контроля четности, и
память, соединенную с по меньшей мере одним процессором.
35. Устройство по п.34, в котором по меньшей мере один процессор выполнен с возможностью определения коэффициента K на основании отношения второго размера поднятия к первому размеру поднятия и удаления K младших битов (LSB) каждого значения циклического сдвига во втором множестве для получения соответствующего значения циклического сдвига в первом множестве.
36. Устройство по п.34, в котором по меньшей мере один процессор выполнен с возможностью определения отношения второго размера поднятия к первому размеру поднятия и получения каждого значения циклического сдвига в первом множестве путем деления соответствующего значения циклического сдвига во втором множестве на отношение и округления в меньшую сторону до целочисленного значения.
37. Устройство по п.34, в котором по меньшей мере один процессор выполнен с возможностью определения коэффициента K на основании отношения второго размера поднятия к первому размеру поднятия и удаления K старших битов (MSB) каждого значения циклического сдвига во втором множестве для получения соответствующего значения циклического сдвига в первом множестве.
38. Устройство по п.34, в котором первый и второй размеры поднятия являются разными степенями 2.
39. Устройство по п.34, в котором по меньшей мере один процессор выполнен с возможностью генерации первой матрицы контроля четности путем замены каждого ненулевого элемента базовой матрицы контроля четности матрицей циклической перестановки со значением циклического сдвига в первом множестве, соответствующего ненулевому элементу.
40. Способ обработки данных, содержащий этапы, на которых
определяют первое множество значений циклического сдвига для первой матрицы контроля четности с первым размером поднятия на основании второго множества значений циклического сдвига для второй матрицы контроля четности со вторым размером поднятия, причем первый и второй размеры поднятия являются разными степенями 2,
генерируют первую матрицу контроля четности на основании первого множества значений циклического сдвига, и
кодируют или декодируют пакет на основании первой матрицы контроля четности.
41. Способ по п.40, в котором на этапе определения первого множества значений циклического сдвига
определяют коэффициент K на основании отношения второго размера поднятия к первому размеру поднятия, и
удаляют K младших битов (LSB) каждого значения циклического сдвига во втором множестве для получения соответствующего значения циклического сдвига в первом множестве.
42. Способ по п.40, в котором на этапе генерации первой матрицы контроля четности
генерируют первую матрицу контроля четности путем замены каждого ненулевого элемента базовой матрицы контроля четности матрицей циклической перестановки со значением циклического сдвига в первом множестве, соответствующего ненулевому элементу.
43. Устройство, содержащее
по меньшей мере один процессор, выполненный с возможностью получения поднятой матрицы контроля четности путем замены каждого ненулевого элемента базовой матрицы контроля четности матрицей перестановки L×L с конкретным значением циклического сдвига, где L равно степени 2, использования значений циклического сдвига s и s+L/m для двух ненулевых элементов в столбце базовой матрицы контроля четности, имеющем по меньшей мере три ненулевых элемента, где s - произвольное значение, и m равно степени 2, и кодирования или декодирования пакета на основании поднятой матрицы контроля четности, и
память, соединенную с по меньшей мере одним процессором.
44. Устройство по п.43, в котором базовая матрица контроля четности содержит
,
T
B
D
D
E
B
D
где  - нижняя треугольная матрица, матрицы  и  имеют ширину 1, матрицы  и  имеют высоту 1, и по меньшей мере три ненулевых элемента находятся в столбце, соответствующем матрицам  и .
45. Устройство по п.43, в котором по меньшей мере один процессор выполнен с возможностью выбора значения циклического сдвига s для третьего ненулевого элемента в столбце, имеющем по меньшей мере три ненулевых элемента.
46. Устройство по п.43, в котором m равно 2, и значения циклического сдвига для двух ненулевых элементов равны s и s+L/2.
47. Устройство по п.43, в котором m равно 4, и значения циклического сдвига для двух ненулевых элементов равны s и s+L/4.
48. Устройство по п.43, в котором m равно 8, и значения циклического сдвига для двух ненулевых элементов равны s и s+L/8.
49. Способ обработки данных, содержащий этапы, на которых
получают поднятую матрицу контроля четности путем замены каждого ненулевого элемента базовой матрицы контроля четности матрицей перестановки L×L с конкретным значением циклического сдвига, где L равно степени 2,
используют значения циклического сдвига s и s+L/m для двух ненулевых элементов в столбце базовой матрицы контроля четности, имеющем по меньшей мере три ненулевых элемента, где s - произвольное значение, и m равно степени 2, и
кодируют или декодируют пакет на основании поднятой матрицы контроля четности.
50. Способ по п.49, в котором базовая матрица контроля четности содержит
,
T
B
D
D
E
B
D
где  - нижняя треугольная матрица, матрицы  и  имеют ширину 1, матрицы  и  имеют высоту 1, и по меньшей мере три ненулевых элемента находятся в столбце, соответствующем матрицам  и .
51. Способ по п.49, в котором m равно 4, и значения циклического сдвига для двух ненулевых элементов равны s и s+L/4.