Код документа: RU2537806C2
Область техники, к которой относится изобретение
Настоящее изобретение относится, в общем, к системе связи с использованием линейных блочных кодов и, более конкретно, к устройству передачи/приема и способу для генерирования линейных блочных кодов в конкретной форме.
Уровень техники
В системах беспроводной связи эффективность линий связи значительно ухудшается вследствие различных шумов, затухания и межсимвольных помех (ISI) каналов. Поэтому, чтобы реализовывать высокоскоростные цифровые системы связи, требующие высокой пропускной способности данных и надежности, такие как система мобильной связи следующего поколения, система цифрового широковещания и система мобильного интернета, является важным разработать технологии, чтобы справляться с шумами, затуханием и ISI. В последнее время были изучены коды с исправлением ошибок, чтобы улучшать надежность связи посредством эффективного восстановления искажения информации.
Код проверки четности низкой плотности (LDPC) будет указываться здесь в качестве примера линейного блочного кода, но настоящее изобретение не ограничено кодом LDPC.
Код LDPC обычно представляется с использованием графового представления, и многие его характеристики могут анализироваться с помощью теории графов и способов на основе алгебры и теории вероятностей. В общем графовая модель канальных кодов является полезной не только в описании кода, но также может рассматриваться как сеть связи, в которой вершины обмениваются сообщениями через ребра, если информация о кодированных битах отображается в вершины в графе и отношения между битами отображаются в ребра в графе, таким образом делая возможным выводить естественный алгоритм декодирования. Например, в решетке, которая является некоторым типом графа, выведенный алгоритм декодирования может включать в себя хорошо известный алгоритм Витерби и алгоритм Бала (Bahl), Кока (Cocke), Джелинека (Jelinek) и Равива (Raviv) (BCJR).
Код LDPC, в общем, определяется как матрица проверки четности и может представляться с использованием двудольного графа, который указывается как граф Таннера (Tanner). В двудольном графе вершины разделяются на два разных типа, и код LDPC представляется посредством двудольного графа, включающего в себя вершины, называемые переменные узлы и узлы проверки. Переменные узлы отображаются в кодированные биты на основе один к одному.
Фиг.1 иллюстрирует пример матрицы H1 проверки четности кода LDPC, которая включает в себя четыре строки и восемь столбцов.
Ссылаясь на фиг.1, имея восемь столбцов, матрица H1 проверки четности генерирует кодовое слово длины 8 в коде LDPC, и ее столбцы отображаются в восемь кодированных битов на основе один к одному.
Фиг.2 иллюстрирует граф Таннера, соответствующий матрице H1 проверки четности из фиг.1.
Ссылаясь на фиг.2, граф Таннера кода LDPC включает в себя восемь переменных узлов x1 202, x2 204, x3 206, x4 208, x5 210, x6 212, x7 214, и x8 216 и четыре узла 218, 220, 222 и 224 проверки. i-й столбец и j-я строка матрицы H1 проверки четности кода LDPC отображаются в переменный узел xi и j-й узел проверки соответственно. В дополнение, значение 1, т.е. ненулевое значение, в точке, где i-й столбец и j-я строка матрицы H1 проверки четности кода LDPC пересекают друг друга, означает, что на графе Таннера существует ребро, соединяющее переменный узел xi с j-м узлом проверки, как проиллюстрировано на фиг.2.
В графе Таннера кода LDPC степень каждого переменного узла и узла проверки показывает количество ребер, соединенных с узлом, и равняется количеству элементов, чьи значения не '0' в строке или столбце, соответствующем узлу в матрице проверки четности кода LDPC. Например, на фиг.2, степени переменных узлов x1 202, x2 204, x3 206, x4 208, x5 210, x6 212, x7 214 и x8 216 - это 4, 3, 3, 3, 2, 2, 2 и 2 соответственно, и степени узлов 218, 220, 222 и 224 проверки - это 6, 5, 5 и 5 соответственно. В дополнение, количество элементов, чьи значения не равны '0' в столбцах матрицы H1 проверки четности на фиг.1, которые соответствуют переменным узлам на фиг.2, являются идентичными их ассоциированным степеням 4, 3, 3, 3, 2, 2, 2 и 2 соответственно, и количества элементов, чьи значения не равны '0' в строках матрицы H1 проверки четности на фиг.1, которые соответствуют узлам проверки на фиг.2, являются идентичными их ассоциированным степеням 6, 5, 5 и 5 соответственно.
Чтобы выразить распределение степеней для узлов кода LDPC, предполагая, что отношение количества переменных узлов со степенью =i к полному количеству переменных узлов это fi, и отношение количества узлов проверки со степенью =j к полному количеству узлов проверки это gi, в коде LDPC, соответствующем фиг.1 и 2, f2=4/8, f3=3/8 и f4=1/8; fi=0 для i2, 3, 4; g5=3/4 и g6 1/4; и gi=0 для j5, 6. Если длина кодового слова в коде LDPC, т.е. количество столбцов в матрице проверки четности, - это N, и количество строк - это N/2, плотность элементов, чьи значения не равны '0' во всей матрице проверки четности, имеющей вышеописанное распределение степеней, вычисляется в соответствии с Уравнением (1) ниже:
В Уравнении (1) плотность '1' уменьшается с увеличением N в матрице проверки четности. В общем, так как для кода LDPC, плотность ненулевых элементов является обратно пропорциональной длине кодового слова N, код LDPC с большим значением для N имеет очень низкую плотность. Словосочетание 'низкая плотность' в названии кода LDPC было выведено из этого принципа.
Фиг.3 является диаграммой, иллюстрирующей схематическую структуру кода LDPC. Конкретно, фиг.3 иллюстрирует характеристики матрицы проверки четности кода LDPC, имеющего конкретную структуру. Для ссылки, код LDPC, проиллюстрированный на фиг.3, был принят как стандартная технология в европейских стандартах цифрового широковещания, таких как DVB-S2, DVB-T2, и DVB-C2 и т.д.
Ссылаясь на фиг.3, N1 обозначает длину кодового слова в коде LDPC, K1 обозначает длину информационного слова, и (N1-K1) обозначает длину битов четности. В дополнение, целые числа M1 и q определяются посредством q=(N1-K1)/M1. K1/M1 также является целым числом. Для удобства описания, будет предполагаться, что матрица проверки четности из фиг.3 является первой матрицей H1 проверки четности.
В матрице проверки четности из фиг.3 часть четности (соответствующая битам четности), включающая в себя K1-й по (K1-1)-й столбцы, имеет структуру в дуальной (дву-) диагональной форме. Поэтому в отношении распределения степеней столбцов, соответствующих части четности, все столбцы имеют степень 2, за исключением последнего столбца, имеющего степень 1.
В матрице проверки четности, часть информационного слова, состоящая из 0-го по (K1-1)-й столбцы, имеет структуру, которая формируется согласно следующим правилам.
Правило (1): Все из K1/M1 групп столбцов генерируются посредством группирования K1 столбцов для информационного слова в M1 группы в матрице проверки четности. Каждый столбец в каждой группе столбцов формируется согласно Правилу (2) ниже.
Правило (2): Во-первых, определяются местоположения 1 в каждом 0-м столбце в i-й группе столбцов (где i=0, 1, …, K1/M1-1). Степень 0-го столбца в i-й группе столбцов представляется посредством Di. Если местоположения строк с 1 - это
Согласно правилам выше, степени столбцов в i-й группе столбцов все являются Di.
Как более подробный пример, в отношении каждого 0-го столбца в каждой из трех групп столбцов для N1=30, K1=15, M1=5, q=3 информация местоположения строк с 1 может представляться следующим образом. Например, если {0, 1, 2} - это 0-я группа столбцов, {0, 1, 2} показывает, что 1 существует в 0-й строке, 1-й строке и 2-й строке в 0-м столбце в 0-й группе столбцов.
Для информации о строках с 1 в каждом 0-м столбце в каждой группе столбцов, только информация местоположения может представляться на основе группы столбцов для удобства следующим образом:
То есть последовательность последовательно представляет информацию о строках с 1 для 0-го столбца в i-й группе столбцов.
Посредством составления матрицы проверки четности с использованием информации в вышеописанном подробном примере и Правил (1) и (2), код LDPC, имеющий такую же концепцию, как код кода LDPC со структурой из фиг.3, может генерироваться, как проиллюстрировано на фиг.4.
Далее, ссылка будет делаться на процесс выполнения кодирования LDPC с использованием матрицы проверки четности.
Для удобства информационные биты с длиной K1 представляются посредством
Способ кодирования кода LDPC
Этап 1: Инициализируют биты четности.
Этап 2: Информация о строках с 1 в 0-м столбце в первой группе столбцов информационного слова вызывается из информации о сохраненной матрице проверки четности.
С использованием вызванной информации и информационного бита i0 конкретные биты четности px обновляются, как показано в Уравнении (3) ниже, где х - это значение, для
В Уравнении (3) представляет двоичное добавление и
Этап 3: Для следующих 359 информационных битов i1,i2,…,i359, следующих за i0, получается значение Уравнения (4) ниже:
В Уравнении (4) x является значением
С использованием значений, полученных в Уравнении (4), выполняется операция, аналогичная операции Уравнения (3). То есть p{x+(m mod M1)×q}mod(N1-K1) обновляется для im.
Например, для m=1, т.е. для i1, p{x+q}mod(N1-K1) обновляется, как показано в Уравнении (5) ниже:
Следует отметить, что в Уравнении (5) q=15. Вышеописанный процесс выполняется аналогичным образом для m=1, 2, …, 359.
Этап 4: Как и на Этапе 2, информация о
Этап 5: Для каждой из групп 360 информационных битов Этапы 2, 3, и 4 повторяются. Наконец, биты четности определяются с использованием Уравнения (6) ниже:
В Уравнении (6) биты pi являются битами четности, которые полностью подверглись кодированию LDPC.
Соответственно, с использованием вышеописанного способа кодирования LDPC кодирование выполняется посредством Этапов 1 по 5.
Является хорошо известным, что эффективности обычных кодов LDPC близко связаны с циклическими характеристиками графа Таннера. В частности, было определено посредством экспериментирования, что ухудшение эффективности может происходить, если имеется много циклов короткой длины в графе Таннера. Поэтому, чтобы разрабатывать коды LDPC, имеющие отличную эффективность, должны приниматься во внимание циклические характеристики на графе Таннера.
Вкратце, циклические характеристики являются количеством узлов, которые ребро проходит, будучи в графе Таннера, ребро, начинающееся в одном переменном узле, возвращается в упомянутый переменный узел после прохождения по меньшей мере одного узла проверки и других переменных узлов. Например, на фиг.2, путь 202 -> 218 -> 204 -> 220 -> 202 может пониматься как один цикл. Важно разрабатывать коды LDPC так, что такие циклические характеристики имеют оптимальную длину, которая не является слишком короткой или длинной.
Однако является очень трудным построить матрицу проверки четности очень большого кода LDPC, чья длина кодового слова около десятков тысяч бит, принимая во внимание циклические характеристики на графе Таннера. Фактически, не было еще предложено способа построения, который улучшает циклические характеристики кодов LDPC, имеющих конкретную структуру из фиг.3. В реальности, в кодах LDPC, имеющих вышеописанную структуру, минимальный уровень ошибок наблюдается при высоком отношении сигнала к шуму (SNR), так как оптимизация циклических характеристик на графе Таннера не рассматривается.
Соответственно, для построения кодов LDPC, имеющих конкретную структуру из фиг.3, требуется эффективный способ, который строит матрицу проверки четности при улучшении циклических характеристик.
Дополнительно, в европейских стандартах цифрового широковещания с использованием кода LDPC возможное количество длин кодированного блока кода LDPC - это только два вследствие ограниченного использования кода, и чтобы поддерживать даже эти две длины блока, сохраняются разные матрицы проверки четности.
Однако чтобы применять коды LDPC к действительной системе связи, коды LDPC должны строиться, чтобы быть подходящими для пропускной способности данных, требуемой в системе связи. Конкретно, коды LDPC, имеющие различные длины блока, требуются, чтобы поддерживать различные пропускные способности данных при запросе пользователя не только в адаптивных системах связи, использующих гибридный автоматический запрос на повторную передачу (HARQ), и адаптивную модуляцию, и кодирование (AMC), но также в системе связи, поддерживающей различные широковещательные услуги.
В дополнение, так как сохранение независимой матрицы проверки четности для каждой длины блока кода LDPC уменьшает эффективность памяти, имеется необходимость, чтобы исследовать новый способ для эффективной поддержки различных длин блока из заданной существующей матрицы проверки четности без построения новой матрицы проверки четности.
РАСКРЫТИЕ ИЗОБРЕТЕНИЯ
Техническая проблема
Соответственно, настоящее изобретение предназначено, чтобы обращаться к, по меньшей мере, вышеописанным проблемам и/или недостаткам и чтобы обеспечивать, по меньшей мере, преимущества, описанные ниже. Один аспект настоящего изобретения состоит в том, чтобы обеспечить способ генерирования матрицы проверки четности для генерирования линейного блочного кода, имеющего переменную длину блока в системе связи.
Другой аспект настоящего изобретения состоит в том, чтобы обеспечить способ генерирования матрицы проверки четности для генерирования структурированного кода LDPC, имеющего переменную длину блока в системе связи.
Другой аспект настоящего изобретения состоит в том, чтобы обеспечить способ и устройство передачи/приема с использованием способа генерирования матрицы проверки четности.
Другой аспект настоящего изобретения состоит в том, чтобы обеспечить способ и устройство для эффективного генерирования матрицы проверки четности кода LDPC посредством частичной оптимизации циклических характеристик в разработке кода LDPC, имеющего конкретную структуру.
Другой аспект настоящего изобретения состоит в том, чтобы обеспечить способ и устройство для кодирования и декодирования кода LDPC, имеющего переменную длину блока посредством частичной оптимизации циклических характеристик из одной матрицы проверки четности в системе связи с использованием кодов LDPC.
Другой аспект настоящего изобретения состоит в том, чтобы обеспечить способ и устройство для генерирования кодов LDPC, имеющих разные длины блока, из матрицы проверки четности, построенной посредством частичной оптимизации циклических характеристик, чтобы улучшать эффективность памяти для хранения кодов LDPC.
Техническое решение
В соответствии с одним аспектом настоящего изобретения, обеспечивается способ для генерирования матрицы проверки четности, используемой, чтобы генерировать линейный блочный код в передатчике/приемнике системы связи. Способ включает в себя определение базового параметра второй матрицы проверки четности, удовлетворяющей правилу, предварительно определенному по отношению к заданной первой матрице проверки четности; генерирование подматрицы, соответствующей части четности второй матрицы проверки четности, с использованием базового параметра; и генерирование подматрицы, соответствующей части информационного слова второй матрицы проверки четности, с использованием первой матрицы проверки четности и базового параметра.
В соответствии с другим аспектом настоящего изобретения, обеспечивается способ для кодирования линейного блочного кода с использованием второй матрицы проверки четности, сгенерированной согласно вышеуказанному способу.
В соответствии с другим аспектом настоящего изобретения, обеспечивается способ для декодирования линейного блочного кода с использованием второй матрицы проверки четности, сгенерированной согласно вышеуказанному способу.
В соответствии с другим аспектом настоящего изобретения, обеспечивается устройство передачи в системе связи. Устройство включает в себя кодер для кодирования информационного слова в линейный блочный код; передатчик для передачи линейного блочного кода; и контроллер для определения второй матрицы проверки четности из заданной первой матрицы проверки четности согласно линейному блочному коду и управления кодером, чтобы выполнять кодирование с использованием второй матрицы проверки четности. Контроллер определяет базовый параметр второй матрицы проверки четности, удовлетворяющей правилу, предварительно определенному по отношению к заданной первой матрице проверки четности, генерирует подматрицу, соответствующую части четности второй матрицы проверки четности, с использованием базового параметра, и генерирует подматрицу, соответствующую части информационного слова второй матрицы проверки четности, с использованием первой матрицы проверки четности и базового параметра.
В соответствии с другим аспектом настоящего изобретения обеспечивается устройство приема в системе связи. Устройство включает в себя приемник для приема сигнала, передаваемого через сеть связи; декодер для декодирования принятого сигнала, закодированного в линейном блочном коде, в информационное слово; и контроллер для определения второй матрицы проверки четности из заданной первой матрицы проверки четности согласно линейному блочному коду и управления декодером, чтобы выполнять декодирование с использованием второй матрицы проверки четности. Контроллер определяет базовый параметр второй матрицы проверки четности, удовлетворяющей правилу, предварительно определенному по отношению к заданной первой матрице проверки четности, генерирует подматрицу, соответствующую части четности второй матрицы проверки четности, с использованием базового параметра, и генерирует подматрицу, соответствующую части информационного слова второй матрицы проверки четности, с использованием первой матрицы проверки четности и базового параметра.
Описание чертежей
Вышеописанные и другие аспекты, признаки и преимущества некоторых вариантов осуществления настоящего изобретения будут более ясны из последующего описания, взятого со ссылками на сопроводительные чертежи, на которых:
Фиг.1 является диаграммой, иллюстрирующей пример матрицы проверки четности кода LDPC длины 8;
Фиг.2 является диаграммой, иллюстрирующей пример графа Таннера матрицы проверки четности кода LDPC длины 8;
Фиг.3 является диаграммой, иллюстрирующей схематическую структуру кода LDPC;
Фиг.4 является диаграммой, иллюстрирующей пример матрицы проверки четности кода LDPC;
Фиг.5 является диаграммой, иллюстрирующей способ для генерирования матрицы проверки четности линейного блочного кода согласно одному варианту осуществления настоящего изобретения;
Фиг.6 по 10 являются диаграммами, иллюстрирующими способ для генерирования матрицы проверки четности линейного блочного кода согласно одному варианту осуществления настоящего изобретения;
Фиг.11 является блок-схемой, иллюстрирующей структуру системы связи с использованием линейных блочных кодов согласно одному варианту осуществления настоящего изобретения;
Фиг.12 является блок-схемой устройства передачи с использованием линейных блочных кодов согласно одному варианту осуществления настоящего изобретения;
Фиг.13 является блок-схемой, иллюстрирующей устройство приема с использованием линейных блочных кодов согласно одному варианту осуществления настоящего изобретения; и
Фиг.14 является диаграммой, иллюстрирующей операцию приема в устройстве приема с использованием линейных блочных кодов согласно одному варианту осуществления настоящего изобретения.
Всюду на чертежах одинаковые ссылочные позиции чертежей должны пониматься как указывающие на одинаковые элементы, признаки и структуры.
Варианты осуществления изобретения
Различные варианты осуществления настоящего изобретения будут теперь описываться подробно со ссылкой на сопровождающие чертежи. В последующем описании конкретные детали, такие как детальная конфигурация и компоненты, обеспечиваются всего лишь, чтобы способствовать всеобъемлющему пониманию этих вариантов осуществления настоящего изобретения. Поэтому должно быть очевидно специалистам в данной области техники, что различные изменения и модификации вариантов осуществления, здесь описанных, могут делаться без выхода из объема и сущности изобретения. В дополнение, описания хорошо известных функций и конструкций пропускаются для ясности и краткости.
В соответствии с одним вариантом осуществления настоящего изобретения, обеспечивается способ для генерирования матрицы проверки четности кода LDPC, например линейного блочного кода. Следует отметить, что способ генерирования матрицы проверки четности, описанный ниже, может применяться таким же образом к другим линейным блочным кодам, которые используют матрицу проверки четности, не только коду LDPC.
Ниже обеспечиваются способы для генерирования матрицы проверки четности кода LDPC большого размера из матрицы проверки четности заданного базового кода LDPC маленького размера. В дополнение, также обеспечиваются устройство для поддержки переменной длины блока в системе связи с использованием кодов LDPC в конкретной форме и способ для управления этим. Специалистам в данной области техники должно быть ясно, что матрица проверки четности кода LDPC маленького размера может генерироваться из матрицы проверки четности заданного кода LDPC большого размера с использованием следующих способов. Однако настоящее изобретение не ограничено поддержкой всех из построенных переменных длин блока.
Для удобства описания, код LDPC будет иметь такую же структуру, как код LDPC, построенный на основе Правил (1) и (2) предшествующего уровня техники, как проиллюстрировано на фиг.3. Дополнительно, матрица проверки четности заданного кода LDPC является первой матрицей проверки четности H1 и ее длина кодового слова (кодированного блока) и длина информационного слова - это N1 и K1 соответственно. Поэтому длина четности - это (N1-K1). Также, M1 и q определяются, чтобы удовлетворять
Местоположения строк с 1 в каждом 0-м столбце в i-й (i=0,1,…,K1/М1-1) группе столбцов, представляющие информацию о матрице H1 проверки четности, - это
В соответствии с одним вариантом осуществления настоящего изобретения, обеспечивается способ для построения второй матрицы H2 проверки четности, удовлетворяющей следующим правилам. Длина кодового слова и длина информационного слова матрицы Н2 проверки четности - это N2 и K2 соответственно.
Правило (3): Для положительного целого числа p, N2=pN1, K2=pK1 и M2=pM1. Поэтому K2/М2=K1/M1 удовлетворяется, обеспечивая, что Н2 равняется H1 в количестве групп столбцов в части информационного слова. В дополнение, (N2-K2)/М2=q=(N1-K1)/М1 задано.
Правило (4): Н2 и H1 равны в распределении степеней для части информационного слова.
Местоположения строк с 1 в каждом 0-м столбце в i-й (i=0,1,…,K2/M2-1) группе столбцов матрицы H2 проверки четности - это
Правило (5): Циклические характеристики на графе Таннера для Н2 должны быть равны или лучше, чем циклические характеристики на графе Таннера для H1.
Правило (6): H1 должна быть способна генерироваться из информации о Н2.
Правило (7): Код LDPC, определенный посредством H1, должен быть способен кодироваться с использованием информации о Н2.
В соответствии с одним вариантом осуществления настоящего изобретения, обеспечивается следующий способ для генерирования матрицы проверки четности кода LDPC, как проиллюстрировано на блок-схеме из фиг.5, чтобы генерировать матрицу Н2 проверки четности кода LDPC, удовлетворяющего Правилам (3), (4), (5), (6) и (7). Для легкости описания предполагается, что в Правиле (4)
Способ генерирования матрицы проверки четности кода LDPC
Фиг.5 является диаграммой, иллюстрирующей способ для генерирования матрицы проверки четности линейного блочного кода согласно одному варианту осуществления настоящего изобретения.
Ссылаясь на фиг.5, на этапе 510 определяются базовые параметры матрицы H2 проверки четности, подлежащей генерированию. Базовые параметры включают в себя длину кодового слова (т.е. кодированного блока) кода LDPC, и размер, в котором информационное слово должно подвергаться группированию, т.е. размер группы столбцов в матрице H2 проверки четности.
На этапе 520 подматрица, соответствующая битам четности матрицы H2 проверки четности, определяется в предварительно определенной структуре. Более конкретно, операция этапа 520 включает в себя следующие Этапы 1 и 2.
Этап 1: (N2-K2)×(N2-K2) матрица, имеющая такую же структуру, что и у подматрицы, соответствующей битам четности из фиг.3, устанавливается как подматрица, соответствующая части четности Н2.
Этап 2: 'i' инициализируется на 0 (i=0).
На этапе 530 вызывается последовательность, соответствующая информационным битам заданной матрицы H1 проверки четности. Более конкретно, операция этапа 530 включает в себя следующий Этап 3.
Этап 3: Для каждого компонента последовательности
На этапе 540 из последовательности, представляющей матрицу H1 проверки четности, определяется последовательность, соответствующая информационным битам, в матрице H2 проверки четности с использованием следующего Этапа 4.
Этап 4: Предполагая, что компоненты подматрицы, соответствующей (i+1)-й по ((N2-K2)/M2-1)-й группам столбцов, которые соответствуют информационным битам в матрице Н2 проверки четности, все являются нулями (0), последовательно получаются последовательности
Условие (1)
Условие (2)
Среди последовательностей, удовлетворяющих Условию (1), если имеются несколько последовательностей, имеющих наилучшие циклические характеристики на графе Таннера, т.е. если имеются несколько наилучших последовательностей, то одна из них выбирается произвольно.
Этап 5: Для i=1,…,(N2-K2)/M2-1 Этапы 3 и 4 повторяются. То есть этап 530 и этап 540 повторяются для i=1,…,(N2-K2)/M2-1, хотя это не показано на фиг.5.
В соответствии с вариантом осуществления настоящего изобретения,
В Уравнении (8)
Для более лучшего понимания способа, проиллюстрированного на фиг.5, примеры иллюстрируются на фиг.6, 7 и 8, которые будут описываться ниже. Ссылка будет сначала делаться на пример, в котором Уравнение (7) используется на Этапе 3.
Главные параметры, используемые, чтобы описывать пример из фиг.6, включают в себя M1=3, p=2, M2=pM1=6, (N1-K1)=9 и q=(N1-K1)/3=3, и информация местоположения строк с 1 в 0-м столбце 603 в одной группе 601 столбцов - это 0, 5 и 7. Другими словами, можно отметить, что в 0-м столбце 603 в заданной одной группе 601 столбцов, 1 существует в 0-й, 5-й и 7-й строках. Также следует отметить, что первый и второй столбцы 605 и 607 в заданной группе 601 столбцов могут просто получаться посредством циклического сдвига местоположений 1 в 0-м столбце 603 посредством q=3 по модулю (N1-K1)=9. Следует отметить, что степени столбцов 603, 605 и 607 в группе 601 столбцов из фиг.6 все 3, и степени строк все 1.
Ниже будет делаться ссылка на фиг.7, описывающую структуру 0-го столбца в новой группе столбцов, получаемой из заданной группы столбцов из фиг.6.
Так как информация местоположения строк с 1 в 0-м столбце в группе столбцов из фиг.6 - это 0, 5 и 7, информация местоположения строк с 1 в 0-м столбце в новой группе столбцов может представляться как одно из {0,5,7}, {0,5,16}, {0,7,14}, {0,14,16}, {5,7,9}, {5,9,16}, {7,9,14} и {9,14,16}, когда только Уравнение (7) используется на Этапе 3.
Для информации местоположения восьми строк структуры столбца последовательно представляются, как показано посредством ссылочной позиции 701 на фиг.7.
Предполагая, что в информации местоположения восьми строк, последовательность, удовлетворяющая Условиям (1) и (2) через Этап 4 была {0,5,16} или вторым кандидатом 703, 0-й столбец в новой группе столбцов может определяться как столбец, длина строки которого - это 18, и в котором 1 существует в каждой из 0-й строке, 5-й строке и 16-й строке.
Теперь, 1-й по 5 =(M2-1)-й столбцы будут генерироваться посредством применения способа генерирования кода LDPC в форме из фиг.6, в новый 0-й столбец. В соответствии со способом генерирования кода LDPC в форме из фиг.6, оставшиеся столбцы могут получаться посредством циклического сдвига местоположений 1 в 0-м столбце посредством q=3 по модулю (N1-K1)=9, как проиллюстрировано на фиг.8.
Ссылаясь на фиг.8, степени всех столбцов в группе 801 столбцов все равны 3, и степени строк все равны 1. Соответственно, фиг.8 эквивалентна фиг.6 в распределении степеней в части информационного слова.
Ссылаясь на фиг.9, обеспечивается структура 0-го столбца в новой группе столбцов, получаемой из заданной группы столбцов из фиг.6, когда Уравнение (8) используется на Этапе 3.
Так как информация местоположения строк с 1 в 0-м столбце в группе столбцов из фиг.6 - это 0, 5 и 7, информация местоположения строк с 1 в 0-м столбце в новой группе столбцов может представляться как одно из {0,10,14}, {0,10,15}, {0,11,14}, {0,11,15}, {1,10,14}, {1,10,15}, {1,11,14} и {1,11,15}, когда Уравнение (8) используется на Этапе 3.
Для информации местоположения восьми строк, структуры столбца последовательно представляются как показано посредством ссылочной позиции 901 на фиг.9.
Предполагая, что в информации местоположения восьми строк, последовательность, удовлетворяющая Условиям (1) и (2) через Этап 4 - это {0,10,15} или второй кандидат 903, 0-й столбец в новой группе столбцов может определяться как столбец, длина строки которого - это 18, и в котором 1 существует в каждой из 0-й строке, 10-й строке и 15-й строке.
Теперь, 1-й по 5 =(M2-1)-й столбцы будут генерироваться посредством применения способа генерирования кода LDPC в форме из фиг.3 в новый 0-й столбец. В соответствии со способом генерирования кода LDPC в форме из фиг.3, оставшиеся столбцы получаются посредством всего лишь циклического сдвига местоположений 1 в 0-м столбце посредством q=3 по модулю (N1-K1)=9, как проиллюстрировано на фиг.10.
Ссылаясь на фиг.10, степени всех столбцов в группе 1001 столбцов - это все 3, и степени строк - это все 1, т.е. фиг.10 является эквивалентной фиг.6 в распределении степеней в части информационного слова.
Ниже предоставляется описание, чтобы показать, что способ, проиллюстрированный на фиг.5, удовлетворяет Правилам (3), (4), (5), (6) и (7).
Правила (3) и (4) удовлетворяются на базовых предположениях способа.
Ссылаясь на Правило (5), предполагая, что
Однако, так как последовательность, имеющая наилучшие циклические характеристики на графе Таннера, выбирается на Этапе 4, последовательность, имеющая циклические характеристики, лучшие чем или равные характеристикам
Ссылаясь на Правило (6), информация о группах столбцов, представляющих матрицу Н2 проверки четности, определяется как
Аналогично, когда Уравнение (8) используется на Этапе 3,
Следует отметить, что, так как
Ссылаясь на Уравнения (10) и (11), если информация о группах столбцов матрицы H2 проверки четности является известной, значения
Ссылаясь на Правило (7), все коды LDPC, определенные посредством H1 и Н2, могут кодироваться, как описано в правилах предшествующего уровня техники. Когда длина кодового слова, длина информационного слова и значение q заданы, кодирование выполняется с использованием только информации о строках с 1 в 0-м столбце в каждой группе столбцов информационного слова. Так как
В то время как H2 получается из H1 в описании выше, в качестве примера, более большая матрица проверки четности может получаться посредством повторения способа, как проиллюстрировано на фиг.5.
Таким образом, эффективные матрицы проверки четности могут строиться посредством повторного применения способа, проиллюстрированного на фиг.5, к матрицам проверки четности H1, H2, Н3, … и Hs, удовлетворяющим Уравнениям (12), (13) и (14) ниже, в которых Ni, Ki и Mi обозначают длину кодового слова, длину информационного слова и единицу группы столбцов в Правиле (1) для Hi соответственно и Ni+1=piNi, Ki+1=piKi и Mi+1=piMi удовлетворяются для некоторого целого числа pi (i=1, …, s-1):
В дополнение, если только информация о матрице проверки четности Hs, полученной посредством способа из фиг.5, задана, то H1, H2,... и Hs-1 могут также все генерироваться.
Следует отметить, что посредством удовлетворения Правилу (6) матрица проверки четности кода LDPC, предложенная одним вариантом осуществления настоящего изобретения, может генерировать матрицы проверки четности, имеющие различные размеры из одной матрицы проверки четности. Также следует отметить, что так как размер матрицы проверки четности показывает длину кодового слова ее кода LDPC, код LDPC, сгенерированный способом, предложенным в соответствии с одним вариантом осуществления настоящего изобретения, может поддерживать коды LDPC, имеющие различные длины блока, с использованием Уравнения (10) или Уравнения (11). Несмотря на поддержку кодов LDPC с различными длинами блока, сохраняется информация о только одной матрице проверки четности, тем самым обеспечивая высокую эффективность памяти.
В соответствии с одним вариантом осуществления настоящего изобретения, матрица H2 проверки четности эффективно генерируется посредством применения способа, проиллюстрированного на фиг.5, к матрице H1 проверки четности, имеющей параметры, заданные в Уравнениях (15) по (20) ниже, и сгенерированная матрица H2 проверки четности представляется в Таблицах 1 по 6.
Таблица 1 показывает пример матрицы проверки четности, представляющий информацию местоположения строк с 1 в каждом 0-м столбце в матрице проверки четности, состоящей из 10 групп столбцов. {122, 149, …, 2773} представляют местоположения строк с 1 в 0-м столбце в 0-й группе столбцов, {167, 279, …, 2681} представляют местоположения строк с 1 в 0-м столбце в 1-м столбце и {866, 1229, 2661} представляют местоположения строк с 1 в 0-м столбце в 9-м столбце. Матрицы проверки четности, представленные посредством Таблиц 2-41 ниже, также могут толковаться таким же образом.
В соответствии с другим вариантом осуществления настоящего изобретения, матрицы H2 и H3 проверки четности эффективно генерируются посредством применения способа из фиг.5 к матрице H1 проверки четности, имеющей параметры, заданные в Уравнениях (21) по (26) ниже, и сгенерированные матрицы H2 и H3 проверки четности представляются в Таблицах 7 по 18.
В соответствии с другим вариантом осуществления настоящего изобретения, матрицы Н2 и H3 проверки четности эффективно генерируются посредством применения способа из фиг.5 к матрице H1 проверки четности, имеющей параметры, заданные в Уравнениях (27) по (31) ниже, и сгенерированные матрицы H2 и Н3 проверки четности представляются в Таблицах 19 по 28.
В соответствии с другим вариантом осуществления настоящего изобретения, матрица Н2 проверки четности эффективно генерируется посредством применения способа из фиг.5 к матрице H1 проверки четности, имеющей параметры, заданные в Уравнениях (32) по (35) ниже, и сгенерированная матрица H2 проверки четности представляется в Таблицах 29 по 32.
В соответствии с другим вариантом осуществления настоящего изобретения, матрица Н2 проверки четности эффективно генерируется посредством применения способа фиг.5 к матрице H1 проверки четности, имеющей параметры, заданные в Уравнениях (36) по (40) ниже, и сгенерированная матрица H2 проверки четности представляется в Таблицах 33 по 37.
В соответствии с другим вариантом осуществления настоящего изобретения, матрица H2 проверки четности эффективно генерируется посредством применения способа из фиг.5 к матрице H1 проверки четности, имеющей параметры, заданные в Уравнениях (41) по (44) ниже, и сгенерированная матрица H2 проверки четности представляется в Таблицах 38 по 41.
Фиг.11 является блок-схемой, иллюстрирующей структуру системы связи с использованием линейных блочных кодов согласно одному варианту осуществления настоящего изобретения.
Ссылаясь на фиг.11, сообщение u кодируется в передатчике 1110 посредством кодера 1111 LDPC, который выводит сигнал c. Выведенный сигнал c модулируется посредством модулятора 1113, который выводит сигнал s, который передается по беспроводному каналу 1120. В приемнике 1130 демодулятор 1131 демодулирует сигнал r, принятый через канал 1120, и выводит демодулированный сигнал x. Декодер 1133 LDPC извлекает оценку сообщения из демодулированного сигнала x.
Кодер 1111 LDPC и декодер 1133 LDPC выбирают матрицу проверки четности согласно длине блока, требуемой системой связи, и выполняют ее кодирование и декодирование с использованием предварительно определенной схемы кодирования/декодирования. Конкретно, в соответствии с одним вариантом осуществления настоящего изобретения, кодер 1111 LDPC и декодер 1133 LDPC поддерживают различные длины блока в коде LDPC посредством генерирования матрицы проверки четности кода LDPC большого размера из матрицы проверки четности кода LDPC маленького размера или посредством генерирования матрицы проверки четности кода LDPC маленького размера из матрицы проверки четности кода LDPC большого размера, или могут поддерживать различные длины блока с использованием матрицы проверки четности кода LDPC, имеющей самую длинную длину блока, без отдельного сохранения матриц проверки четности кодов LDPC, имеющих разные длины блока.
Фиг.12 является блок-схемой, иллюстрирующей устройство передачи с использованием кода LDPC, сгенерированного согласно варианту осуществления настоящего изобретения.
Устройство передачи включает в себя модуль 1210 извлечения матрицы проверки четности кода LDPC, контроллер 1230 и кодер 1250 LDPC.
Модуль 1210 извлечения матрицы проверки четности кода LDPC извлекает матрицу проверки четности кода LDPC согласно требованиям системы. Матрица проверки четности кода LDPC может извлекаться из информации последовательности, окончательно полученной посредством способа, проиллюстрированного на фиг.5, с использованием Уравнения (10) или (11), может извлекаться из памяти, хранящей матрицу проверки четности, может задаваться в устройстве передачи или может генерироваться в устройстве передачи.
Контроллер 1230 определяет требуемую матрицу проверки четности согласно длине кодового слова или длине информационного слова, чтобы удовлетворять требованиям системы. Соответственно, контроллер 1230 может включать в себя модуль 1210 извлечения матрицы проверки четности кода LDPC.
Кодер 1250 LDPC выполняет кодирование на основе информации о матрице проверки четности кода LDPC, вызванной контроллером 1230 и модулем 1210 извлечения матрицы проверки четности кода LDPC.
Фиг.13 является блок-схемой, иллюстрирующей устройство приема согласно одному варианту осуществления настоящего изобретения. Конкретно, устройство приема, проиллюстрированное на фиг.13, принимает сигнал, передаваемый системой связи с использованием построенного кода LDPC, и восстанавливает пользовательские требуемые данные от принятого сигнала.
Устройство приема включает в себя демодулятор 1310, определитель 1330 матрицы проверки четности, контроллер 1350, модуль 1370 извлечения матрицы проверки четности кода LDPC и декодер 1390 LDPC.
Демодулятор 1310 принимает и демодулирует код LDPC и передает демодулированный сигнал в определитель 1330 матрицы проверки четности и декодер 1390 LDPC.
Определитель 1330 матрицы проверки четности, под управлением контроллера 1350, определяет матрицу проверки четности кода LDPC, используемую в системе, из демодулированного сигнала.
Контроллер 1350 передает определение, сделанное посредством определителя 1330 матрицы проверки четности, в модуль 1370 извлечения матрицы проверки четности кода LDPC и декодер 1390 LDPC.
Модуль 1370 извлечения матрицы проверки четности кода LDPC, под управлением контроллера 1350, извлекает матрицу проверки четности кода LDPC, требуемую системой, и передает извлеченную матрицу проверки четности в декодер 1390 LDPC. Альтернативно, контроллер 1350 может включать в себя по меньшей мере одно из определителя 1330 матрицы проверки четности и модуля 1370 извлечения матрицы проверки четности кода LDPC. Матрица проверки четности кода LDPC может извлекаться из информации последовательности, в конце концов, полученной посредством способа из фиг.5, с использованием Уравнения (10) или (11), может извлекаться из памяти, хранящей матрицу проверки четности, может задаваться в устройстве приема или может генерироваться в устройстве приема.
Декодер 1390 LDPC под управлением контроллера 1350 выполняет декодирование на основе принятого сигнала, передаваемого из демодулятора 1310, и информации о матрице проверки четности кода LDPC, передаваемой из модуля 1370 извлечения матрицы проверки четности кода LDPC.
Фиг.14 иллюстрирует операцию декодирования устройства приема согласно одному варианту осуществления настоящего изобретения.
На этапе 1410, определитель 1330 матрицы проверки четности определяет, из принятого сигнала, матрицу проверки четности кода LDPC, используемую в системе. На этапе 1420, контроллер 1350 передает информацию о матрице проверки четности кода LDPC в модуль 1370 извлечения матрицы проверки четности кода LDPC и декодер 1390 LDPC, как результат определения, сделанного посредством определителя 1330 матрицы проверки четности. На этапе 1430, модуль 1370 извлечения матрицы проверки четности кода LDPC извлекает матрицу проверки четности кода LDPC, требуемую в системе, и доставляет ее в декодер 1390 LDPC. На этапе 1440, декодер 1390 LDPC декодирует принятую матрицу проверки четности кода LDPC.
В то время как примеры из фиг.11 по 14 были описаны в соединении с кодами LDPC, в качестве примера, вышеописанная структура и операция устройства передачи/приема могут применяться таким же образом не только к коду LDPC, но также к другим линейным блочным кодам, использующим матрицу проверки четности.
Как является очевидным из предшествующего описания, согласно вышеописанным вариантам осуществления настоящего изобретения матрица проверки четности линейного блочного кода, имеющего очень длинную длину кодового слова, может эффективно конструироваться из матрицы проверки четности маленького размера при поддержании частично оптимизированных циклических характеристик на графе Таннера.
В дополнение, настоящее изобретение может генерировать линейные блочные коды, имеющие различные длины блока, с использованием информации о матрице проверки четности, заданной в системе связи с использованием линейных блочных кодов. Так как линейные блочные коды, имеющие различные длины блока, могут поддерживаться из одной матрицы проверки четности, информация матрицы проверки четности может эффективно сохраняться, обеспечивая расширение системы.
В то время как настоящее изобретение было показано и описано со ссылкой на некоторые его варианты осуществления, специалистам в данной области техники следует понимать, что могут делаться различные изменения в форме и деталях без выхода из сущности и объема изобретения, как определено посредством прилагаемых пунктов формулы изобретения и их эквивалентов.
Изобретение относится к средствам для генерирования матрицы проверки четности в системе связи с использованием линейных блочных кодов. Технический результат заключается в повышении эффективности восстановления искаженной информации. Определяют базовый параметр второй матрицы проверки четности, удовлетворяющей правилу, предварительно определенному по отношению к заданной первой матрице проверки четности. Генерируют подматрицы, соответствующие части четности второй матрицы проверки четности, с использованием базового параметра. Генерируют подматрицы, соответствующие части информационного слова второй матрицы проверки четности, с использованием первой матрицы проверки четности и базового параметра. 4 н. и 8 з.п. ф-лы, 14 ил., 41 табл.