Способ и устройство для кодирования кода с низкой плотностью проверок на чётность (ldpc), базовая станция и машиночитаемый носитель данных

Изобретение относится к области связи, в частности, к способу и устройству для кодирования LDPC (коды с низкой плотностью проверок на четность). Технический результат заключается в снижении задержки кодирования и высокого потребления ресурсов. Указанный технический результат достигается тем, что способ предусматривает: получение кодированных исходных данных и коэффициента расширения и сегментирование кодированных исходных данных на основании коэффициента расширения с целью получения сегментированных кодированных данных (S1); и определение значения сдвига на основании коэффициента расширения и генерирование контрольной информации на основании значения сдвига и сегментированных кодированных данных для завершения кодирования (S3). 4 н. и 2 з.п. ф-лы, 9 ил.

 

Ссылка на родственную заявку

Данная заявка основана на заявке на патент Китая №201910754120.3, поданной 15 августа 2019 года, и испрашивает приоритет по этой заявке на патент Китая, содержание которой полностью включено в настоящий документ посредством ссылки.

Область техники, к которой относится настоящее изобретение

Настоящее изобретение относится к технической области связи, в частности, к способу и устройству для кодирования LDPC (коды с низкой плотностью проверок на четность), базовой станции и машиночитаемому носителю данных.

Предшествующий уровень техники настоящего изобретения

В качестве важнейшей составляющей систем беспроводной связи канальное кодирование, наряду с технологией множественного доступа и технологией с многими входами и выходами, являются одной из этих трех ключевых технологий, которые используются в радиоинтерфейсе 5G.

После выхода формулы Шэннона было использовано множество способов кодирования с исправлением ошибок, в которых коды разбиты на две категории, а именно: блоковые коды и решетчатые коды. Вследствие ограничений по числу состояний решетчатые коды вместе с обычными блоковыми кодами подходят для коротких кодов. Для обоих типов кода сложность декодирования экспоненциально соотносится с длиной кода.

Турбо-коды, используемые в настоящее время в системе 4G, относятся к длинным кодам с производительностью кодирования, приближающейся к пределу Шэннона. Турбо-коды принимают параллельно-каскадную рекурсивную структуру, а коды ее частей в сборе используют систематические сверточные коды. При этом между кодировками вводится перемежение с целью уменьшения корреляции информации между кодировками и симуляции формата случайного кодирования. Во время декодирования используется алгоритм декодирования «Soft-in-Soft-out» (двунаправленное кодирование с мягким решением) и формат декодирования с информационной обратной связью, что приближает турбо-коды к пределу Шэннона. Турбо-коды имеют недостаток, который заключается в высокой сложности кодирования. Кроме того, когда кодовые блоки имеют большую длину, перемежитель срабатывает со слишком большой задержкой.

С развитием технологии 5G проект партнерства третьего поколения (3GPP) определяет, что связь 5G реализует схему кодирования с использованием кодов LDPC в качестве длинных кодов. Представляя собой один из видов линейный блочных кодов с разреженными проверочными матрицами, коды LDPC характеризуются не только высокой производительностью, приближающейся к пределу Шэннона, но также и меньшей сложностью кодирования и гибкостью структуры.

Разные схемы кодирования LDPC имеют огромное влияние на производительность, и они очевидно отличаются друг от друга в плане потребления аппаратных ресурсов.

Краткое раскрытие настоящего изобретения

Вариантами осуществления настоящего изобретения предложен способ и устройство для кодирования LDPC, базовая станция и машиночитаемый носитель данных для того, чтобы устранить в известной мере, по меньшей мере, некоторые проблемы, связанные с большими задержками при кодировании и высоким потреблением ресурсов в некоторых ситуаций.

Согласно первому аспекту настоящего изобретения одним из вариантов его осуществления предложен способ кодирования LDPC. Этот способ может предусматривать: получение кодированных исходных данных и коэффициента расширения и сегментирование кодированных исходных данных с учетом коэффициента расширения с целью получения сегментированных кодированных данных; и определение значения сдвига на основании коэффициента расширения и генерирование контрольной информации с учетом значения сдвига и сегментированных кодированных данных для завершения кодирования.

Согласно другому аспекту настоящего изобретения одним из вариантов его осуществления предложено устройство для кодирования LDPC. Это устройство может включать в себя модуль обработки данных и модуль генерирования контрольной информации. Модуль обработки данных выполнен с возможностью получения кодированных исходных данных и коэффициента расширения, сегментирования кодированных исходных данных на основании коэффициента расширения с целью получения сегментированных кодированных данных и определения значения сдвига с учетом коэффициента расширения. Модуль генерирования контрольной информации выполнен с возможностью генерирования контрольной информации на основании значения сдвига и сегментированных кодированных данных для завершения кодирования.

Согласно еще одному аспекту настоящего изобретения одним из вариантов его осуществления предложен машиночитаемый носитель данных, в котором хранятся программы для осуществления передачи информации. Программы при их выполнении процессором инициируют реализацию этим процессором способа кодирования, описанного выше.

Согласно еще одному из аспектов настоящего изобретения одним из вариантов его осуществления предложена базовая станция. Эта базовая станция может содержать память, процессор и компьютерные программы, хранящиеся в памяти и выполняемые процессором. Компьютерные программы при их выполнении процессором инициируют реализацию этим процессором указанного способа кодирования.

Представленное выше описание лишь вкратце иллюстрирует технические схемы настоящего изобретения. Для прояснения технических средств данной заявки эти технические средства могут быть реализованы в соответствии с контекстом представленного описания, а чтобы указанные и прочие цели, признаки и преимущества данной заявки стали более очевидными, ниже будут проиллюстрированы примеры осуществления настоящего изобретения.

Краткое описание чертежей

Прочие иные преимущества и достоинства станут понятными специалисту в данной области техники после ознакомления с последующим подробным описанием предпочтительных примеров осуществления заявленного изобретения. Чертежи предназначены исключительно для иллюстрации, а не для ограничения предпочтительных вариантов осуществления настоящего изобретения. Кроме того, на всех чертежах одни и те же компоненты обозначены одинаковыми номерами позиций, где:

На фиг. 1 представлена блок-схема согласно первому варианту осуществления настоящего изобретения;

На фиг. 2 показана блок-схема получения сегментированных кодированных данных согласно первому варианту осуществления настоящего изобретения;

На фиг. 3 схематически показана структура устройства согласно второму варианту осуществления настоящего изобретения;

На фиг. 4 схематически показана обработка данных в устройстве согласно второму варианту осуществления настоящего изобретения;

На фиг. 5 показана базисная матрица коэффициента 512 расширения согласно третьему варианту осуществления настоящего изобретения;

На фиг. 6 показана предварительно сдвинутая базисная матрица коэффициента 512 расширения согласно третьему варианту осуществления настоящего изобретения;

На фиг. 7 показана базисная матрица коэффициента 256 расширения согласно четвертому варианту осуществления настоящего изобретения;

На фиг. 8 показана предварительно сдвинутая базисная матрица коэффициента 256 расширения согласно четвертому варианту осуществления настоящего изобретения; а

На фиг. 9 схематически показана структура базовой станции согласно шестому варианту осуществления настоящего изобретения.

Подробное раскрытие настоящего изобретения

Примеры осуществления заявленного изобретения будут подробно описаны ниже в привязке к чертежам. Хотя на чертежах показаны конкретные примеры осуществления настоящего изобретения, следует понимать, что заявленное изобретение может быть реализовано в самых разных формах, и оно не должно ограничиваться вариантами осуществления, описанными в настоящем документе. Правильнее сказать, что эти варианты осуществления представлены для обеспечения более глубокого понимания настоящего изобретения и раскрывают его объем специалистам в данной области техники.

Согласно первому аспекту настоящего изобретения первым вариантом его осуществления предложен способ кодирования LDPC. Как показано на фиг. 1, этот способ предусматривает выполнение стадий S1-S3.

На стадии S1 обеспечивается получение кодированных исходных данных и коэффициента расширения и сегментирование кодированных исходных данных на основании коэффициента расширения с целью получения сегментированных кодированных данных.

На стадии S2 обеспечивается сохранение сегментированных кодированных данных.

На стадии S3 определяется значение сдвига на основании коэффициента расширения, после чего на основании значения сдвига и сегментированных кодированных данных генерируется контрольная информация для завершения кодирования.

В этом варианте осуществления настоящего изобретения за счет сегментирования кодированных исходных данных на основании коэффициента расширения для получения сегментированных кодированных данных, определения значения сдвига на основании коэффициента расширения и генерирования контрольной информации на основании значения сдвига и сегментированных кодированных данных для завершения кодирования зависимость между различной контрольной информацией в процессе кодирования нарушается, и тем самым устраняются проблемы большой задержки кодирования и высокого потребления ресурсов, присущие существующей технологии.

В одном из вариантов осуществления настоящего изобретения, как это показано на фиг. 2, сегментирование кодированных исходных данных на основании коэффициента расширения с целью получения сегментированных кодированных данных предусматривает выполнение стадий S11 и S12.

На стадии S11 выбирается базисная матрица кодирования на основании длины кодированных исходных данных и коэффициента расширения.

На стадии S12 выполняется сегментирование кодированных исходных данных на основании коэффициента расширения с целью получения сегментированных кодированных данных.

В одном из вариантов осуществления настоящего изобретения базисная матрица кодирования делится на правую и левую части, где левая часть отображает беспроверочную матрицу, а правая часть отображает проверочную матрицу. В этом варианте осуществления настоящего изобретения существует соответствие между базисной матрицей и кодированными исходными данными. Например, в том случае, когда кодированные исходные данные записываются как Z×8 (где величина Z обозначает коэффициент расширения), может быть выбрана базисная матрица кодирования 18×26, где беспроверочная матрица имеет размеры 18×8, а проверочная матрица - 18×18.

При использовании указанных технических схем за счет сдвига выбранной базисной матрицы кодирования зависимость между различной контрольной информацией может быть нарушена, и может быть реализована разумная компоновка структуры кодирования, что повышает эффективность самого кодирования.

В одном из вариантов осуществления настоящего изобретения предусмотрено, что после сегментирования исходных данных на основании коэффициента расширения для получения сегментированных кодированных данных предложенный способ дополнительно предусматривает выполнение стадии, описанной ниже.

На стадии S2 обеспечивается сохранение сегментированных кодированных данных.

Сегментированные кодированные данные сохраняются для облегчения планирования данных в ходе их последующей обработки.

В одном из вариантов осуществления настоящего изобретения определение значения сдвига на основании коэффициента расширения предусматривает:

Расчет - по проверочной формуле для генерирования контрольной информации в базисной матрице - значения сдвига базисной матрицы кодирования, соответствующего коэффициенту расширения.

В одном из вариантов осуществления настоящего изобретения значение сдвига проверочной матрицы в базисной матрице кодирования, соответствующее коэффициенту расширения, рассчитывается по проверочной формуле для генерирования контрольной информации в базисной матрице. Предложенный способ заключается в расчете информации циклического сдвига (т.е. значения сдвига) каждого элемента по проверочной формуле для генерирования контрольной информации в базисной матрице, где базисная матрица принята в качестве прототипа, с последующим генерированием на этом основании контрольной информации кодирования. Таким образом, обеспечивается получение значения сдвига, соответствующего каждому элементу в базисной матрице. Можно также рассчитать предварительно сдвинутую базисную матрицу на основании значения сдвига, соответствующего базисной матрице.

В другом варианте осуществления настоящего изобретения предусмотрено, что после определения значения сдвига на основании коэффициента расширения предложенный способ дополнительно предусматривает:

определение промежуточного значения кодирования на основании кодированных исходных данных, базисной матрицы кодирования и значения сдвига.

В этом варианте осуществления настоящего изобретения может быть выполнена операция добавления по модулю 2 в отношении кодированных исходных данных на основании беспроверочной матрицы в левой части базисной матрицы кодирования с целью получения промежуточного значения кодирования. В частности, получение предварительно сдвинутой базисной матрицы может быть обеспечено путем расчета на основании значения сдвига с использованием базисной матрицы кодирования, а операция добавления по модулю 2 выполняется в отношении кодированных исходных данных с использованием предварительно сдвинутой базисной матрицы для получения промежуточного значения кодирования. В этом варианте осуществления настоящего изобретения после получения промежуточного значения кодирования это промежуточное значение кодирования может быть сохранено.

Генерирование контрольной информации на основании значения сдвига и сегментированных кодированных данных предусматривает:

генерирование контрольной информации на основании промежуточного значения кодирования, исходя из значения сдвига.

В одном из вариантов осуществления настоящего изобретения после получения промежуточного значения кодирования на основании значения сдвига, принятого в качестве исходной позиции, с учетом этого промежуточного значения кодирования генерируется контрольная информация.

В сравнении с некоторыми ситуациями при использовании способа согласно первому варианту осуществления настоящего изобретения зависимость между различной контрольной информацией в ходе кодирования нарушается, и реализуется разумная компоновка структуры кодирования, благодаря чему задержка при кодировании по всему каналу физического уровня сокращается параллельным механизмом. При этом за счет использования этого параллельного механизма производительность всей системы повышается, так что кодирование больше не является «узким местом» усилий по повышению производительности системы, а в некоторых случаях устраняются проблемы и недостатки, связанные с большой задержкой при кодировании LDPC, большим потреблением ресурсов и высокой стоимостью аппаратных средств.

Согласно второму аспекту настоящего изобретения вторым вариантом его осуществления предложено устройство для кодирования LDPC. Как показано на фиг. 3, это устройство может включать в себя модуль обработки данных и модуль генерирования контрольной информации.

Модуль обработки данных выполнен с возможностью получения кодированных исходных данных и коэффициента расширения, сегментирования кодированных исходных данных на основании коэффициента расширения с целью получения сегментированных кодированных данных и определения значения сдвига на основании коэффициента расширения.

Модуль генерирования контрольной информации выполнен с возможностью генерирования контрольной информации на основании значения сдвига и сегментированных кодированных данных для завершения кодирования.

В этом варианте осуществления настоящего изобретения модуль обработки данных сегментирует кодированные исходные данные на основании коэффициента расширения с целью получения сегментированных кодированных данных и определяет значение сдвига на основании коэффициента расширения, а модуль генерирования контрольной информации генерирует контрольную информацию на основании значения сдвига и сегментированных кодированных данных для завершения кодирования. Таким образом, зависимость между различной контрольной информацией в ходе кодирования нарушается, и устраняется проблема, состоящая в том, что в некоторых случаях автоматическая коррекция не может быть реализована из-за «застывания» компенсирующего значения.

В одном из вариантов осуществления настоящего изобретения модуль обработки данных выполнен с возможностью выбора базисной матрицы кодирования на основании длины кодированных исходных данных и коэффициента расширения.

Модуль обработки данных выполнен с возможностью сегментирования кодированных исходных данных на основании коэффициента расширения с целью получения сегментированных кодированных данных.

Как показано на фиг. 4, в этом варианте осуществления настоящего изобретения модуль обработки данных включает в себя модуль предварительной обработки данных и модуль предварительного сдвига.

Модуль предварительной обработки данных выполнен с возможностью выбора базисной матрицы кодирования на основании длины кодированных исходных данных и коэффициента расширения, т.е. выбора базисной матрицы кодирования на основании исходной длины данных перед кодированием и коэффициента расширения, и сегментирования кодированных исходных данных на основании базисной матрицы кодирования с целью получения сегментированных кодированных данных, как это показано на фиг. 4. При этом, как показано на фиг. 4, модуль предварительной обработки данных выдает сегментированные данные.

В этом варианте осуществления настоящего изобретения базисная матрица кодирования делится на правую и левую части, где левая часть отображает беспроверочную матрицу, а правая часть отображает проверочную матрицу. В этом варианте осуществления настоящего изобретения существует соответствие между базисной матрицей и кодированными исходными данными. Например, в том случае, когда кодированные исходные данные записываются как Z×8 (где величина Z обозначает коэффициент расширения), может быть выбрана базисная матрица кодирования 18×26, где беспроверочная матрица имеет размеры 18×8, а проверочная матрица - 18×18.

Согласно указанным техническим схемам модуль предварительной обработки данных выбирает базисную матрицу кодирования, вследствие чего зависимость между различной контрольной информацией в процессе кодирования может быть нарушена, и может быть реализована разумная компоновка структуры кодирования, что повышает эффективность самого кодирования.

В одном из вариантов осуществления настоящего изобретения модуль обработки данных выполнен с возможностью расчета - по проверочной формуле для генерирования контрольной информации в базисной матрице - значения сдвига базисной матрицы кодирования, соответствующего коэффициенту расширения.

Модуль обработки данных рассчитывает - по проверочной формуле для генерирования контрольной информации в базисной матрице - значение сдвига проверочной матрицы в базисной матрице кодирования, соответствующее коэффициенту расширения. Модуль предварительного сдвига в составе модуля обработки данных может рассчитать, в порядке генерирования контрольной информации в проверочной матрице, соответствующий контрольно-информационный индекс (т.е. значение сдвига) сдвигового перехода, приняв базисную матрицу за прототип, а затем на этом основании сгенерировать контрольную информацию кодирования. Таким образом, обеспечивается получение модулем предварительного сдвига значения сдвига, соответствующего каждому элементу в базисной матрице. Предварительно сдвинутая базисная матрица может быть также получена путем расчета на основании значения сдвига, соответствующего базисной матрице.

Модуль обработки данных выполнен с дополнительной возможностью определения промежуточного значения кодирования на основании кодированных исходных данных и базисной матрицы кодирования.

Как показано на фиг. 4, модуль обработки данных может дополнительно включать в себя модуль расчета промежуточного значения кодирования. В этом варианте осуществления настоящего изобретения модуль расчета промежуточного значения кодирования может выполнить операцию добавления по модулю 2 в отношении кодированных исходных данных на основании беспроверочной матрицы в левой части базисной матрицы кодирования. В одном из вариантов осуществления настоящего изобретения операция добавления по модулю 2 может быть выполнена в отношении кодированных исходных данных на основании предварительно сдвинутой базисной матрицы, полученной модулем предварительного сдвига с целью получения промежуточного значения кодирования. Таким образом, обеспечивается получение промежуточного значения кодирования.

Модуль генерирования контрольной информации выполнен с возможностью генерирования контрольной информации на основании промежуточного значения кодирования, исходя из значения сдвига.

В одном из вариантов осуществления настоящего изобретения предусмотрено, что после получения промежуточного значения кодирования модуль генерирования контрольной информации генерирует контрольную информацию на основании промежуточного значения кодирования с учетом значения сдвига в качестве исходной позиции.

В одном из вариантов осуществления настоящего изобретения предложенное устройство дополнительно содержит модуль памяти.

Модуль памяти выполнен с возможностью сохранения сегментированных кодированных данных и сохранения промежуточного значения кодирования после получения промежуточного значения кодирования.

В сравнении с некоторыми ситуациями за счет использования устройства согласно второму варианту осуществления настоящего изобретения зависимость между различной контрольной информацией в ходе кодирования нарушается, и реализуется разумная компоновка структуры кодирования, благодаря чему задержка при кодировании по всему каналу физического уровня сокращается параллельным механизмом. При этом за счет использования этого параллельного механизма производительность всей системы повышается, так что кодирование больше не является «узким местом» усилий по повышению производительности системы, а в некоторых случаях устраняются проблемы и недостатки, связанные с большой задержкой при кодировании LDPC, большим потреблением ресурсов и высокой стоимостью аппаратных средств.

Согласно третьему аспекту настоящего изобретения третьим вариантом его осуществления, основанным на первом варианте осуществления, предложен пример реализации способа кодирования LDPC. В этом варианте осуществления заявленного изобретения описан процесс кодирования кодированных исходных данных модулем кодирования LDPC после приема данных и выбора базисной матрицы, показанной на фиг. 5. Этот процесс может предусматривать выполнение стадий S101-S108.

На стадии S101 кодированные исходные данные принимаются в виде матрицы Z×8, и выбирается базисная матрица, показанная на фиг. 5. В базисную матрицу 18×26 входит беспроверочная матрица 18×8 и проверочная матрица 18×18.

На стадии S102 выполняется операция по сегментированию кодового блока в отношении кодированных исходных данных на основании коэффициента расширения Z=512. Каждый элемент кодируемых данных записывается как С, где С составляет 512×8. Беспроверочная матрица содержит 18 строк и 8 колонок, так что исходные кодированные данные делятся на 8 частей для последующего сохранения, которые записываются как [С0, C1, С2, С3, С4, С5, С6, С7]. Каждый элемент данных записывается как 512×1, а индексное значение равно нулю.

На стадии S103, в 0-ой строке базисной матрицы, показанной на фиг. 5, контрольная информация является результатом, выданным по 0-ой строке и 8-ой колонке. Все восемь элементов в 0-ой строке беспроверочной матрицы равны нулю, а это указывает на то, что сдвиг не выполнен. В отношении [С0, C1, С2, С3, С4, С5, С6, С7] и восьми элементов в 0-ой строке беспроверочной матрицы выполняется операция умножения и сложения, а результат записывается как М0, где М0+V0=0, причем значение сдвига равно нулю, благодаря чему мы напрямую получаем величину V0. Величина V0 представляет собой контрольную информацию результата кодирования в 0-ой строке.

На стадии S104, в первой строке базисной матрицы, показанной на фиг. 5, выполняется операция умножения и сложения в отношении [С0, C1, С2, С3, С4, С5, С6, С7] и восьми элементов в первой строке беспроверочной матрицы, а результат записывается как M1. M1+V0'+V1=0, где величина V0' является результатом сдвига величины V0 в течение 405 раз, а величина V1 представляет собой контрольную информацию результата кодирования в первой строке.

В данном случае M1+V0'+V1=0 преобразуется в M1107+V00+V1107=0 на основании базисной матрицы, показанной на фиг. 5, а значение сдвига равно 107. Для получения значения 107-ого элемента в V1 берется 107-ой элемент в M1 и 0-ой элемент в V0, и это значение напрямую сохраняется в пространстве 107 для хранения данных, соответствующем контрольной информации V1 кодирования.

Фиг. 6 может быть получена по фиг. 5 после обработки, и на основании фиг. 6 выполняется обработка исходных данных с целью получения промежуточного значения. Получение значения M1107 обеспечивается следующим образом: первая беспроверочная матрица в матрице предварительного сдвига, показанной на фиг. 6, записывается как [51, -1, -1, 91, 390, -1, 277, 107], а это говорит о том, что величина С0 смещена 51 раз для участия в операции, величина С3 смещена 91 раз, величина С4 смещена 390 раз, величина С6 смещена 277 раз, величина С7 смещена 107 раз, а -1 с пробелом указывает на неучастие в операции. Таким образом, элементом M1, полученным в первый раз, будет M1107.

На стадии S105, во второй строке базисной матрицы, показанной на фиг. 5, выполняется операция умножения и сложения в отношении [С0, C1, С2, С3, С4, С5, С6, С7] и восьми элементов во второй строке беспроверочной матрицы, а результат записывается как М2. М2+V1'+V2=0, где V1' является результатом сдвига величины V1 в течение 195 раз, а величина V2 представляет собой контрольную информацию результата кодирования во второй строке.

В данном случае М2+V1'+V2=0 преобразуется в М2424+V1107+V2424=0 на основании базисной матрицы, показанной на фиг. 5, а значение сдвига равно 424. Для получения значения 424-ого элемента в V2 берется 424-ый элемент в М2 и V1107 на стадии S104, и это значение напрямую сохраняется в пространстве 424 для хранения данных, соответствующем контрольной информации V2 кодирования.

Получение значения М2424 обеспечивается следующим образом: вторая беспроверочная матрица в матрице предварительного сдвига, показанной на фиг. 6, записывается как [412, 73, 43, 382, 115, 396, 284, 425], а это говорит о том, что величина С0 смещена 412 раз для участия в операции, величина С1 смещена 73 раза, величина С2 смещена 73 раза, величина С3 смещена 382 раза, величина С4 смещена 115 раз, величина С5 смещена 396 раз, а величина С7 смещена 425 раз. Таким образом, элементом М2, полученным в первый раз, будет М2424.

На стадии S106, в третьей строке базисной матрицы, показанной на фиг. 5, выполняется операция умножения и сложения в отношении [С0, C1, С2, С3, С4, С5, С6, С7] и восьми элементов в третьей строке беспроверочной матрицы, а результат записывается как М3. М3+V2'+V3=0, где V2' является результатом сдвига величины V2 в течение 161 раза, а величина V3 представляет собой контрольную информацию результата кодирования в третьей строке.

В данном случае М3+V2'+V3=0 преобразуется в М3263+V2424+V3263=0 на основании базисной матрицы, показанной на фиг. 5, а значение сдвига равно 263. Для получения значения 263-го элемента в V3 берется 263-ий элемент в М3 и V2424 на стадии S105, и это значение напрямую сохраняется в пространстве 263 для хранения данных, соответствующем контрольной информации V2 кодирования.

Получение значения М3263 обеспечивается следующим образом: вторая беспроверочная матрица в матрице предварительного сдвига, показанной на фиг. 6, записывается как [-1, 165, 219, 473, -1, 116, -1, 264], а это говорит о том, что величина С0 не смещена, величина С1 смещена 165 раз, величина С2 смещена 219 раз, величина С3 смещена 473 раза, величина С4 не смещена, величина С5 смещена 116 раз, величина С6 не смещена, а величина С7 смещена 264 раз. Таким образом, элементом М3, полученным в первый раз, будет М3263.

На стадии S107, по аналогии, в 17-ой строке базисной матрицы, показанной на фиг. 5, выполняется операция умножения и сложения в отношении [С0, C1, С2, С3, С4, С5, С6, С7] и восьми элементов в 17-ой строке беспроверочной матрицы, а результат записывается как М7. М17+V1'+V17=0, где V1' является результатом сдвига V1 в течение 90 раз, а величина V17 представляет собой контрольную информацию результата кодирования в 17-ой строке.

В данном случае М17+V1'+V17=0 преобразуется в М1717+V1107+V1717=0 на основании базисной матрицы, показанной на фиг. 5, а значение сдвига равно 17. Для получения значения 17-ого элемента в V17 берется 17-ый элемент в М17 и V1107 на стадии S104, и это значение напрямую сохраняется в пространстве 17 для хранения данных, соответствующем контрольной информации V17 кодирования.

Получение значения М1717 обеспечивается следующим образом: 17-ая беспроверочная матрица в матрице предварительного сдвига, показанной на фиг. 6, записывается как [233, 266, -1, -1, -1, -1, -1, 17, -1], а это говорит о том, что величина С0 смещена 233 раза, величина С1 смещена 266 раз, величина С6 смещена 17 раз, а величины С2, С3, С4, С5 и С7 не смещены. Таким образом, элементом М17, полученным в первый раз, будет М1717, а к индексному значению добавляется единица.

Стадии S108 и S103-S107 повторяются до тех пор, пока индексное значение не сравняется с коэффициентом расширения 512, что укажет на завершение кодирования. Выходные результаты кодирования будут такими: М0, V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16 и V17.

Согласно четвертому аспекту настоящего изобретения четвертым вариантом его осуществления, основанным на первом варианте осуществления, предложен пример реализации способа кодирования LDPC. В этом варианте осуществления заявленного изобретения описан процесс кодирования кодированных исходных данных модулем кодирования LDPC после приема данных и выбора базисной матрицы, показанной на фиг. 7. Этот процесс может включать в себя стадии S201-S208.

На стадии S201 принимаются кодированные исходные данные в виде матрицы Z×22, и выбирается базисная матрица, показанная на фиг. 7. В базисную матрицу 46×68 входит беспроверочная матрица 46×22 и проверочная матрица 46×46.

На стадии S202 выполняется операция сегментирования кодового блока в отношении кодированных исходных данных на основании коэффициента расширения Z=256. Каждый элемент кодируемых данных записывается как С, где С составляет 256×22. Беспроверочная матрица содержит 46 строк и 22 колонки, так что исходные кодированные данные делятся на 22 части для последующего сохранения, которые записываются как [С0, C1, С2, С3, С4, С5, С6, С7, С8, С9, С10, С11, С12, С13, С14, С15, С16, С17, С18, С19, С20, С21]. Каждый элемент данных записывается как 256×1, а индексное значение равно нулю.

На стадии S203, в строках с 0-ой по третью базовой матрицы, показанной на фиг. 7, выполняется операция умножения и сложения в отношении [С0, С1, С2, С3, С4, С5, С6, С7, С8, С9, С10, С11, С12, С13, С14, С15, С16, С17, С18, С19, С20, С21] и 22-х элементов в 0-ой строке беспроверочной матрицы, а результат записывается как М0. М0+V0'+V1=0, где V0' является результатом одноразового сдвига величины V0, величина V1 представляет собой контрольную информацию результата кодирования в первой строке.

В отношении [С0, C1, С2, С3, С4, С5, С6, С7, С8, С9, С10, С11, С12, С13, С14, С15, С16, С17, С18, С19, С20, С21] и 22-х элементов в первой строке беспроверочной матрицы выполняется операция умножения и сложения, а результат записывается как M1. M1+V0+V1+V2=0, где величины V0 и V2 представляют собой контрольную информацию результатов кодирования в 0-ой строке и 2-ой строке, соответственно.

В отношении [С0, C1, С2, С3, С4, С5, С6, С7, С8, С9, С10, С11, С12, С13, С14, С15, С16, С17, С18, С19, С20, С21] и 22-х элементов во второй строке беспроверочной матрицы выполняется операция умножения и сложения, а результат записывается как М2. М2+V2+V3=0, где величина V3 представляет собой контрольную информацию результата кодирования в третьей строке.

В отношении [С0, C1, С2, С3, С4, С5, С6, С7, С8, С9, С10, С11, С12, С13, С14, С15, С16, С17, С18, С19, С20, С21] и 22-х элементов в третьей строке беспроверочной матрицы выполняется операция умножения и сложения, а результат записывается как М3. М3+V0'+V3=0, где величина V0' является результатом одноразового сдвига величины V0.

М0+V0'+V1=0

M1+V0+V1+V2=0

М2+V2+V3=0

М3+V0'+V3=0

Строки базисной матрицы с нулевой по третью обрабатываются совместно для получения величин V0, V1, V2 и V3.

На стадии S204, в 4-ой строке базисной матрицы, показанной на фиг. 7, выполняется операция умножения и сложения в отношении [С0, C1, С2, С3, С4, С5, С6, С7, С8, С9, С10, С11, С12, С13, С14, CIS, С16, С17, С18, С19, С20, С21] и 22-х элементов в 4-ой строке беспроверочной матрицы, а результат записывается как М4. М4+V4=0, где величина V4 представляет собой контрольную информацию результата кодирования в 4-ой строке.

Получение значения М4 обеспечивается следующим образом: 4-ая беспроверочная матрица в матрице предварительного сдвига, показанной на фиг. 8, записывается как [157, 102, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], а это говорит о том, что величина С0 смещена 157 раз, величина С1 смещена 102 раза, а остальные величины не смещены. Таким образом, элементом М4, полученным в первый раз, будет М40.

На стадии S205, в 5-ой строке базисной матрицы, показанной на фиг. 7, выполняется операция умножения и сложения в отношении [С0, C1, С2, С3, С4, С5, С6, С7, С8, С9, С10, С11, С12, С13, С14, С15, С16, С17, С18, С19, С20, С21] и 22-х элементов в 5-ой строке беспроверочной матрицы, а результат записывается как М5. М5+V0'+V5=0, где величина V0' является результатом сдвига величины V0 в течение 115 раз, а величина V5 представляет собой контрольную информацию результата кодирования в 5-ой строке.

М5+V0'+V5=0 преобразуется в М5141+V00+V5141=0 на основании базисной матрицы, показанной на фиг. 7, а значение сдвига равно 141. Для получения значения 141-ого элемента в V5 берется 141-ый элемент в М5 и V00 на стадии S202, и это значение напрямую сохраняется в пространстве 141 для хранения данных, соответствующем контрольной информации 5 кодирования.

Получение значения М5141 обеспечивается следующим образом: 5-ая беспроверочная матрица в матрице предварительного сдвига, показанной на фиг. 8, записывается как [90, 121, -1, 79, -1, -1, -1, -1, -1, -1, -1, -1, 116, -1, -1, -1, 169, -1, -1, -1, -1, 8], а это говорит о том, что величина С0 смещена 90 раз, величина С1 смещена 121 раз, величина С3 смещена 79 раз, величина С12 смещена 116 раз, величина С16 смещена 169 раз, величина С21 смещена 8 раз, а остальные величины не смещены. Таким образом, элементом М5, полученным в первый раз, будет М5141.

На стадии S206, по такой же аналогии, в 6-ой строке базисной матрицы, показанной на фиг. 7, выполняется операция умножения и сложения в отношении [С0, C1, С2, С3, С4, С5, С6, С7, С8, С9, С10, С11, С12, С13, С14, С15, С16, С17, С18, С19, С20, С21] и 22-х элементов в 6-ой строке беспроверочной матрицы, а результат записывается как М6. М6+V6=0, где величина V6 представляет собой контрольную информацию результата кодирования в 6-ой строке.

Получение значения Мб обеспечивается следующим образом: 6-ая беспроверочная матрица в матрице предварительного сдвига, показанной на фиг. 8, записывается как [183, -1, -1, -1, -1, -1, 22, -1, -1, -1, 28, 67, -1, 244, -1, -1, -1, 11, 157, -1, 211, -1], а это говорит о том, что величина С0 смещена 183 раза, величина С6 смещена 22 раза, величина С10 смещена 28 раз, величина С11 смещена 67 раз, величина С13 смещена 244 раза, величина С17 смещена 11 раз, величина С18 смещена 157 раз, величина С20 смещена 211 раз, а остальные величины не смещены. Таким образом, элементом М6, полученным в первый раз, будет М60.

На стадии S207, по такой же аналогии, в 45-ой строке базисной матрицы, показанной на фиг. 7, выполняется операция умножения и сложения в отношении [С0, C1, С2, С3, С4, С5, С6, С7, С8, С9, С10, С11, С12, С13, С14, С15, С16, С17, С18, С19, С20, С21] и 22-х элементов в 45-ой строке беспроверочной матрицы, а результат записывается как М45. М45+V45=0, где величина V45 представляет собой контрольную информацию результата кодирования в 45-ой строке.

Получение значения М45 обеспечивается следующим образом: 45-ая беспроверочная матрица в матрице предварительного сдвига, показанной на фиг. 8, записывается как [-1, 149, -1, -1, -1, -1, 151, -1, -1, -1, 167, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], а это говорит о том, что величина С1 смещена 149 раз, величина С6 смещена 151 раз, величина С10 смещена 167 раз, а остальные величины не смещены. Таким образом, элементом М45, полученным в первый раз, будет М450, а к индексному значению добавляется единица.

Стадии S208 и S202-S207 повторяются до тех пор, пока индексное значение не сравняется с коэффициентом расширения 256 кодового блока, что укажет на завершение кодирования. Выходные результаты кодирования будут такими: М0, V0, V1, V2, …, V15.

Согласно пятому аспекту настоящего изобретения пятым вариантом его осуществления предложен машиночитаемый носитель данных, в котором хранятся программы для осуществления передачи информации. Эти программы при их выполнении процессором инициируют реализацию этим процессором способа кодирования согласно первому варианту осуществления настоящего изобретения.

Согласно шестому аспекту настоящего изобретения, как это показано на фиг. 9, шестым вариантом его осуществления предложена базовая станция. Базовая станция может включать в себя память 901, процессор 902 и компьютерные программы, которые хранятся в памяти и выполняются процессором. Компьютерные программы при их выполнении процессором инициируют реализацию этим процессором способа кодирования согласно первому варианту осуществления настоящего изобретения.

В вариантах осуществления настоящего изобретения за счет сегментирования кодированных исходных данных на основании коэффициента расширения для получения сегментированных кодированных данных, определения значения сдвига на основании коэффициента расширения и генерирования контрольной информации на основании значения сдвига и сегментированных кодированных данных для завершения кодирования в некоторых случаях устраняются проблемы большой задержки кодирования и высокого потребления ресурсов, а также достигаются положительные технические эффекты.

Следует отметить, что в контексте настоящего изобретения термины «содержит/содержащий» «включает в себя/включающий в себя» или любые другие их производные носят неисключительный характер, т.е. какой-либо процесс, способ, объект или устройство, включающее в себя ряд элементов, включает в себя не только эти элементы, но также и другие элементы, не перечисленные в настоящем документе, или же дополнительно включает в себя элементы, являющиеся неотъемлемой частью такого процесса, способа, объекта или устройства. Строго говоря, элемент, заданный фразой «содержащий…», не исключает наличие других идентичных элементов процесса, способа, объекта или устройства, включающих в себя такой элемент.

Последовательные номера в вариантах осуществления настоящего изобретения представлены исключительно в целях описания, и не указывают на превосходство одних вариантов над другими.

Из описанных выше вариантов осуществления настоящего изобретения специалисты в данной области техники могут ясно понять, что варианты осуществления способа могут быть реализованы программными средствами и необходимыми универсальными аппаратными платформами. Разумеется, варианты осуществления способа могут быть также реализованы аппаратными средствами. Однако во многих случаях первый вариант является предпочтительным. Исходя из этого понимания, технические схемы настоящего изобретения могут быть по существу реализованы в виде программных продуктов, или же некоторые из технических схем, которые используются в существующей технологии, могут быть реализованы в виде программных продуктов. Компьютерные программные продукты хранятся в носителе данных (например, в ROM/RAM (постоянное/оперативное запоминающее устройство), на магнитных дисках или оптических дисках) и содержат ряд команд, инициирующих выполнение терминалом (которым может служить мобильный терминал, компьютер, сервер, кондиционер воздуха, сетевое устройство и т.п.) способов согласно различным вариантам осуществления настоящего изобретения.

Хотя выше были описаны конкретные варианты осуществления настоящего изобретения в привязке к чертежам, заявленное изобретение ими не ограничено. Представленные выше примеры осуществления носят исключительно иллюстративный, а не ограничительный характер. Специалист в данной области техники может разработать различные формы в рамках концепции настоящего изобретения без отступления от ее идеи и от объема правовой охраны прилагаемой формулы, и эти формы должны подпадать под объем правовой охраны настоящего изобретения.

1. Способ кодирования кода с низкой плотностью проверок на чётность (LDPC), предусматривающий выполнение следующих стадий:

получение кодированных исходных данных и коэффициента расширения и выбор базисной матрицы кодирования, соответствующей кодированным исходным данным, на основании длины кодированных исходных данных и коэффициента расширения;

сегментирование кодированных исходных данных на основании коэффициента расширения с целью получения сегментированных кодированных данных; и

расчет, на основании проверочной формулы для генерирования контрольной информации в базисной матрице, значения сдвига базисной матрицы кодирования, соответствующего коэффициенту расширения;

определение промежуточного значения кодирования на основании кодированных исходных данных, базисной матрицы кодирования и значения сдвига;

и генерирование контрольной информации на основании промежуточного значения кодирования, исходя из значения сдвига на основе сегментированных кодированных данных для завершения кодирования.

2. Способ по п. 1, отличающийся тем, что после сегментирования кодированных исходных данных на основании коэффициента расширения с целью получения сегментированных кодированных данных этот способ дополнительно предусматривает: сохранение сегментированных кодированных данных.

3. Устройство для кодирования кода с низкой плотностью проверок на чётность (LDPC), содержащее:

модуль обработки данных, выполненный с возможностью получения кодированных исходных данных и коэффициента расширения, выбора базисной матрицы кодирования, соответствующей кодированным исходным данным, на основании длины кодированных исходных данных и коэффициента расширения;

сегментирования кодированных исходных данных на основании коэффициента расширения с целью получения сегментированных кодированных данных, расчета, на основании проверочной формулы для генерирования контрольной информации в базисной матрице, значения сдвига базисной матрицы кодирования, соответствующего коэффициенту расширения; и

модуль генерирования контрольной информации, выполненный с возможностью генерирования контрольной информации в соответствии с промежуточным значением кодирования, исходя из значения сдвига, на основании сегментированных кодированных данных для завершения кодирования.

4. Устройство по п. 3, дополнительно содержащее: модуль памяти, выполненный с возможностью хранения сегментированных кодированных данных.

5. Машиночитаемый носитель данных, в котором хранятся программы, которые при их выполнении процессором, осуществляют передачу данных путем инициирования процессора реализовать способ кодирования по любому из пп. 1 или 2.

6. Базовая станция, содержащая: память, процессор и компьютерные программы, которые хранятся в памяти и выполняются процессором, причем компьютерные программы при их выполнении процессором инициируют реализацию этим процессором способа кодирования по любому из пп. 1 или 2.



 

Похожие патенты:

Изобретение относится к области связи. Технический результат заключается в обеспечении возможности выделения ресурса и доступа в открытых беспроводных каналах.

Изобретение относится к беспроводной связи. Способ для обратной связи HARQ включает: после приема первого сообщения произвольного доступа Msg.A, переданного каждым терминалом, возврат базовой станцией второго сообщения произвольного доступа Msg.B упомянутому терминалу.

Изобретение относится к области связи. Технический результат заключается в обеспечении возможности управления расстоянием в частотной области между ресурсами физического прямого канала обратной связи PSFCH.

Изобретение относится к области сетевых информационных технологий. Технический результат заключается в повышении скорости передачи данных и помехоустойчивости радиосети группы робототехнических средств (РТС) в условиях воздействия дестабилизирующих факторов.

Изобретение относится к системе мобильной связи следующего поколения. Технический результат изобретения заключается в возможности использовать нисходящую информацию управления для назначения временного режима передачи сигнала подтверждения доставки в случае гибкой настройки, или ресурса сигнала подтверждения доставки.

Изобретение относится к выбору ресурсов в сетевой системе транспортного средства. Технический результат состоит в уменьшении задержки передачи услуги.

Изобретение относится к области технологий связи, и в частности к способу и устройству связи. Технический результат заключается в возможности определения физического ресурса, занимаемого информацией UCI, что позволяет повысить надежность передачи информации.

Изобретение относится к области связи. Технический результат состоит в возможности надлежащего управления по меньшей мере одним из определения и ответной передачи кодовой книги HARQ-ACK.

Изобретение относится к системам мобильной связи следующего поколения. Технический результат изобретения заключается в возможности осуществлять обратную передачу HARQ-ACK, даже когда используется множество полупостоянных планирований SPS.

Изобретение относится к области связи. Техническим результатом является обеспечение возможности терминалу связи выполнять обработку (например, кодирование) или конфигурацию радиоресурса (например, определение метода отображения или ресурса PUCCH) в соответствии с требованиями к ответным сигналам, мультиплексированным в PUCCH, даже когда мультиплексируются ответные сигналы с различными требованиями.

Группа изобретений относится к области связи и может быть использована для реализации конкатенированного полярного кодирования с перемежением. Техническим результатом является повышение производительности.
Наверх