Устройство и способ декодирования и система передачи сигналов

Иллюстрации

Показать все

Изобретение относится к устройству декодирования. Технический результат - улучшение возможности исправления ошибок устройства декодирования в процессе декодирования. Для этого путем выполнения обработки в случае, когда значение обновленного кодового элемента превышает диапазон квантования кодового элемента в процессе обновления кодового слова LDPC-кода, устройство декодирования избирательно отменяет обновление в случае, когда обновленный кодовый элемент превышает диапазон квантования кодового элемента, что препятствует устройству декодирования непосредственно квантовать обновленное кодовое слово, которое превышает диапазон квантования кодового элемента. 8 н. и 8 з.п. ф-лы, 11 ил.

Реферат

ИЗМЕНЕННОЕ ОПИСАНИЕ ИЗОБРЕТЕНИЯ

2420-539830RU/55

УСТРОЙСТВО И СПОСОБ ДЕКОДИРОВАНИЯ И СИСТЕМА ПЕРЕДАЧИ СИГНАЛОВ

ОБЛАСТЬ ТЕХНИКИ

[0001] Настоящее изобретение относится к области технологий обработки данных и, в частности, к устройству декодирования и способу декодирования, которые применимы к LDPC-коду, и к системе передачи сигналов и системе хранения данных, которые используют LDPC-код.

ПРЕДШЕСТВУЮЩИЙ УРОВЕНЬ ТЕХНИКИ

[0002] Код с низкой плотностью проверок на четность (полное наименование на английском языке: Low Density Parity Check; сокращенно LDPC) был впервые предложен Галлагером (Gallager) в 1963 г. и представляет собой линейный блочный код, включающий в себя информационный бит и бит четности. В предположении, что LDPC-код имеет длину кода n, и размер (длина) информационного бита равна k, размер бита четности равен n-k, и отношение R=k/n называется кодовой скоростью. Устройство кодирования LDPC-кода обрабатывает подлежащий передаче сигнал в соответствии с порождающей матрицей (также упоминается как G-матрица), чтобы генерировать кодовое слово. В общем, некоторые кодовые элементы этого кодового слова включают в себя подлежащий передаче сигнал и также упоминаются как информационные биты, а некоторые кодовые элементы включают в себя биты четности, используемые для проверки. Затем устройство кодирования LDPC-кода посылает кодовое слово к устройству декодирования LDPC-кода по каналу связи. Затем устройство декодирования LDPC-кода декодирует кодовое слово, то есть, проверяет, проходит ли кодовое слово проверочное решение. Если кодовое слово не проходит проверочное решение, что указывает, что возникла ошибка, потому что кодовое слово искажается шумом в процессе передачи по каналу связи, устройство декодирования LDPC-кода должно выполнять итерационное обновление на кодовом слове с использованием проверочной матрицы H, до тех пор, пока обновленное кодовое слово не пройдет проверочное решение.

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

СУЩНОСТЬ ИЗОБРЕТЕНИЯ

[0004] Настоящая заявка обеспечивает устройство декодирования, причем устройство декодирования может выполнять обработку в случае, когда диапазон квантования кодового элемента превышен в процессе обновления кодового элемента, и улучшать возможность исправления ошибок LDPC-кода устройства декодирования.

[0005] В соответствии с одним аспектом, вариант осуществления настоящей заявки обеспечивает устройство декодирования, причем устройство декодирования сконфигурировано, чтобы декодировать LDPC-код, и включает в себя: блок получения, сконфигурированный с возможностью получать первое кодовое слово, например, -9, +7, -12, +4, +7, +10, -11, где первое кодовое слово генерируется устройством кодирования LDPC-кода в соответствии с порождающей матрицей и включает в себя M первых кодовых элементов, M является положительным целым числом, и M в предыдущем примере равно 7; блок обработки, сконфигурированный с возможностью получать P первых кодовых элементов, соответствующих n-ой строке проверочной матрицы, где, например, если n установлено в 1, три элемента в первой строке проверочной матрицы равны 1, и поэтому P равно 3; получать P первых значений обновления, соответствующих P первым кодовым элементам; получать, в соответствии с P первыми значениями обновления, P вторых значений обновления, соответствующих P первым кодовым элементам; определять, превышает ли каждое второе значение обновления из P вторых значений обновления диапазон квантования кодового элемента; сохранять a-ый первый кодовый элемент не обновленным, если определено, что a-ое второе значение обновления из P вторых значений обновления превышает диапазон квантования кодового элемента; обновлять b-ый первый кодовый элемент с использованием b-го второго значения обновления, если определено, что b-ое второе значение обновления из P вторых значений обновления не превышает диапазон квантования кодового элемента; получать, в соответствии с вышеуказанной операцией обновления, P вторых кодовых элементов, соответствующих n-ой строке проверочной матрицы; и генерировать второе кодовое слово в соответствии с P вторыми кодовыми элементами, соответствующими n-ой строке проверочной матрицы, где проверочная матрица соответствует порождающей матрице и включает в себя N строк, 1≤n≤N, P≤M, 1≤a≤P, 1≤b≤P, и каждое второе значение обновления является суммой каждого первого значения обновления и соответствующего первого кодового элемента; и блок определения, сконфигурированный с возможностью получать второе кодовое слово и определять, декодировано ли второе кодовое слово успешно. После получения подлежащего декодированию первого кодового слова, устройство декодирования должно выполнять, над первым кодовым словом, обработку, соответствующую n-ой строке проверочной матрицы, может обновить кодовый элемент в первом кодовом слове в процессе обработки, и если обновленный кодовый элемент превышает диапазон квантования кодового элемента, должно отменить это обновление. То есть, в этом аспекте, если обновление, соответствующее кодовому элементу, превышает диапазон квантования кодового элемента, обновление, соответствующее кодовому элементу, отменяется.

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

[0007] Опционально, устройство декодирования в данном аспекте реализовано схемой, и блок получения, блок обработки и блок определения, которые включены в устройство декодирования, также реализованы схемой.

[0008] Опционально, в данном аспекте, генерация второго кодового слова в соответствии с P вторыми кодовыми элементами, соответствующими n-ой строке проверочной матрицы, включает в себя: генерацию второго кодового слова в соответствии с P вторыми кодовыми элементами, соответствующими n-ой строке проверочной матрицы, и другого первого кодового элемента, который находится в первом кодовом слове и не связан с n-ой строкой проверочной матрицы.

[0009] Опционально, в данном аспекте, генерация второго кодового слова в соответствии с P вторыми кодовыми элементами, соответствующими n-ой строке проверочной матрицы, включает в себя: генерацию второго кодового слова в соответствии с P вторыми кодовыми элементами соответствующими каждой строке проверочной матрицы.

[0010] В возможном варианте, блок обработки, упомянутый выше, включает в себя модуль хранения; модуль хранения сконфигурирован, чтобы хранить Р первых кодовых элементов, и дополнительно сконфигурирован, чтобы хранить P вторых значений обновления; блок обработки считывает, при определении, что a-ое второе значение обновления из Р вторых значений обновления превышает диапазон квантования кодового элемента, a-ый первый кодовый элемент, сохраненный в модуле хранения; и блок обработки считывает, при определении, что b-ое второе значение обновления из Р вторых значений обновления не превышает диапазон квантования кодового элемента, b-ое второе значение обновления, сохраненное в модуле хранения, чтобы обновлять b-ый первый кодовый элемент. Если возникает вышеуказанный случай, в котором обновленный кодовый элемент превышает диапазон квантования кодового элемента, кодовый элемент перед обновлением должен быть считан, чтобы отменить это обновление. Поэтому, модуль хранения сконфигурирован, чтобы хранить P вторых значений обновления и Р первых кодовых элементов, чтобы реализовать то, что необходимое значение может быть получено из модуля хранения, независимо от того, превышает ли обновленный кодовый элемент диапазон квантования кодового элемента, и гарантировать, что устройство декодирования может гибко реагировать на случай, в котором второе значение обновления превышает или не превышает диапазон квантования кодового элемента в процессе декодирования.

[0011] В соответствии с другим аспектом, вариант осуществления настоящей заявки обеспечивает устройство декодирования, причем устройство декодирования сконфигурировано, чтобы декодировать LDPC-код, и включает в себя: блок получения, сконфигурированный с возможностью получать первое кодовое слово, например, -9, +7, -12, +4, +7, +10, -11, где первое кодовое слово генерируется устройством кодирования LDPC-кода в соответствии с порождающей матрицей и включает в себя M первых кодовых элементов, M является положительным целым числом, и M в предыдущем примере равно 7; блок обработки, сконфигурированный с возможностью получать Р первых кодовых элементов, соответствующих n-ой строке проверочной матрицы, где, например, если три элемента в первой строке проверочной матрицы равны 1, P равно 3; получать P первых значений обновления, соответствующих Р первым кодовым элементам; получать, в соответствии с P первыми значениями обновления, P вторых значений обновления, соответствующих Р первым кодовым элементам; определять, превышает ли каждое второе значение обновления из Р вторых значений обновления диапазон квантования кодового элемента; сохранять Р первых кодовых элементов не обновленными, если определено, что a-ое второе значение обновления из Р вторых значений обновления превышает диапазон квантования кодового элемента; обновлять Р первых кодовых элементов с использованием P вторых значений обновления, если определено, что каждое второе значение обновления из Р вторых значений обновления не превышает диапазон квантования кодового элемента; получать, в соответствии с вышеуказанной операцией обновления, P вторых кодовых элементов, соответствующих n-ой строке проверочной матрицы; и генерировать второе кодовое слово в соответствии с P вторыми кодовыми элементами, где проверочная матрица соответствует порождающей матрице и включает в себя N строк, 1≤n≤N, P≤M, 1≤a≤P, 1≤b≤P, каждое второе значение обновления является суммой каждого первого значения обновления и соответствующего первого кодового элемента, и P вторых кодовых элементов включают в себя по меньшей мере один из Р первых кодовых элементов; и блок определения, сконфигурированный с возможностью получать второе кодовое слово и определять, декодировано ли второе кодовое слово успешно. После получения подлежащего декодированию первого кодового слова, устройство декодирования должно выполнять, над кодовым словом, обработку, соответствующую n-ой строке проверочной матрицы, и может обновлять кодовый элемент в первом кодовом слове в процессе обработки. То есть, в данном аспекте, если обновление, соответствующее кодовому элементу, превышает диапазон квантования кодового элемента, то обновления, соответствующие Р первым кодовым элементам с использованием всех P вторых значений обновления, соответствующих этой строке проверочной матрицы, отменяются.

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

[0013] Опционально, устройство декодирования в данном аспекте реализовано схемой, и блок получения, блок обработки и блок определения, которые включены в устройство декодирования, также реализованы схемой.

[0014] Опционально, в данном аспекте, генерация второго кодового слова в соответствии с P вторыми кодовыми элементами, соответствующими n-ой строке проверочной матрицы, включает в себя: генерацию второго кодового слова в соответствии с P вторыми кодовыми элементами, соответствующими n-ой строке проверочной матрицы, и другим первым кодовым элементом, который находится в первом кодовом слове и не связан с n-ой строкой проверочной матрицы.

[0015] Опционально, в данном аспекте, генерация второго кодового слова в соответствии с P вторыми кодовыми элементами, соответствующими n-ой строке проверочной матрицы, включает в себя: генерацию второго кодового слова в соответствии с P вторыми кодовыми элементами, соответствующими каждой строке проверочной матрицы.

[0016] В возможном варианте, блок обработки, упомянутый выше, включает в себя модуль хранения; модуль хранения сконфигурирован, чтобы хранить Р первых кодовых элементов, и дополнительно сконфигурирован, чтобы хранить P вторых значений обновления; блок обработки считывает, при определении, что a-ое второе значение обновления из Р вторых значений обновления превышает диапазон квантования кодового элемента, Р первых кодовых элементов, сохраненных в модуле хранения; и блок обработки считывает, при определении, что каждое второе значение обновления из Р вторых значений обновления не превышает диапазон квантования кодового элемента, P вторых значений обновления, сохраненных в модуле хранения, чтобы обновить Р первых кодовых элементов. Если возникает вышеупомянутый случай, в котором обновленный кодовый элемент превышает диапазон квантования кодового элемента, все Р первых кодовых элементов перед обновлением должны быть считаны, чтобы отменить это обновление. Поэтому модуль хранения сконфигурирован, чтобы хранить P вторых значений обновления и Р первых кодовых элементов, чтобы реализовывать то, что необходимое значение может быть получено из модуля хранения, независимо от того, превышает ли обновленный кодовый элемент диапазон квантования кодового элемента, и гарантировать, что устройство декодирования может гибко реагировать на случай, в котором второе значение обновления превышает или не превышает диапазон квантования кодового элемента в процессе декодирования.

[0017] В соответствии с другим аспектом, вариант осуществления настоящей заявки обеспечивает способ декодирования, причем способ декодирования используется для декодирования LDPC-кода и включает в себя: получение первого кодового слова, например, -9, +7, -12, +4, +7, +10, -11, где первое кодовое слово генерируется устройством кодирования LDPC-кода в соответствии с порождающей матрицей и включает в себя M первых кодовых элементов, M является положительным целым числом, и М в предыдущем примере равно 3; получение Р первых кодовых элементов, соответствующих n-ой строке проверочной матрицы, где, например, когда три элемента в первой строке проверочной матрицы соответствуют 1, P равно 3; получение Р первых значений обновления, соответствующих Р первым кодовым элементам; получение, в соответствии с Р первыми значениями обновления, P вторых значений обновления, соответствующих Р первым кодовым элементам; определение, превышает ли каждое второе значение обновления из Р вторых значений обновления диапазон квантования кодового элемента; сохранение a-го первого кодового элемента не обновленным, если определено, что a-ое второе значение обновления из Р вторых значений обновления превышает диапазон квантования кодового элемента; обновление b-го первого кодового элемента с использованием b-го второго значения обновления, если определено, что b-ое второе значение обновления из Р вторых значений обновления не превышает диапазон квантования кодового элемента; получение, в соответствии с вышеуказанной операцией обновления, P вторых кодовых элементов, соответствующих n-ой строке проверочной матрицы; и генерацию второго кодового слова в соответствии с P вторыми кодовыми элементами, соответствующими n-ой строке проверочной матрицы, где проверочная матрица соответствует порождающей матрице и включает в себя N строк, 1≤n≤N, P≤M, 1≤a≤P, 1≤b≤P, и каждое второе значение обновления является суммой каждого первого значения обновления и соответствующего первого кодового элемента; и определение, декодировано ли второе кодовое слово успешно. В процессе декодирования, после получения подлежащего декодированию первого кодового слова, обработка, соответствующая n-ой строке проверочной матрицы, должна быть выполнена над первым кодовым словом, кодовый элемент в первом кодовом слове может быть обновлен в процессе обработки, и если обновленный кодовый элемент превышает диапазон квантования кодового элемента, это обновление должно быть отменено. То есть, в данном аспекте, если обновление, соответствующее кодовому элементу, превышает диапазон квантования кодового элемента, обновление, соответствующее кодовому элементу, должно быть отменено.

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

[0019] Опционально, в данном аспекте, генерация второго кодового слова в соответствии с P вторыми кодовыми элементами, соответствующими n-ой строке проверочной матрицы, включает в себя: генерацию второго кодового слова в соответствии с P вторыми кодовыми элементами, соответствующими n-ой строке проверочной матрицы, и другим первым кодовым элементом, который находится в первом кодовом слове и не связан с n-ой строкой проверочной матрицы.

[0020] Опционально, в данном аспекте, генерация второго кодового слова в соответствии с P вторыми кодовыми элементами, соответствующими n-ой строке проверочной матрицы, включает в себя: генерацию второго кодового слова в соответствии с P вторыми кодовыми элементами, соответствующими каждой строке проверочной матрицы.

[0021] В соответствии с другим аспектом, вариант осуществления настоящей заявки обеспечивает способ декодирования, причем способ декодирования используется для декодирования LDPC-кода и включает в себя: получение первого кодового слова, например, -9, +7, -12, +4, +7, +10, -11, где первое кодовое слово генерируется устройством кодирования LDPC-кода в соответствии с порождающей матрицей и включает в себя M первых кодовых элементов, M является положительным целым числом, и M в предыдущем примере равно 7; получение Р первых кодовых элементов, соответствующих n-ой строке проверочной матрицы, где, например, если три элемента в первой строке проверочной матрицы соответствуют 1, P равно 3; получение Р первых значений обновления, соответствующих Р первым кодовым элементам; получение, в соответствии с Р первыми значениями обновления, P вторых значений обновления, соответствующих Р первым кодовым элементам; определение, превышает ли каждое второе значение обновления из Р вторых значений обновления диапазон квантования кодового элемента; сохранение Р первых кодовых элементов не обновленными, если определено, что a-ое второе значение обновления из Р вторых значений обновления превышает диапазон квантования кодового элемента; обновление Р первых кодовых элементов с использованием P вторых значений обновления, если определено, что каждое второе значение обновления из Р вторых значений обновления не превышает диапазон квантования кодового элемента; получение, в соответствии с вышеуказанной операцией обновления, P вторых кодовых элементов, соответствующих n-ой строке проверочной матрицы; и генерацию второго кодового слова в соответствии с P вторыми кодовыми элементами, где проверочная матрица соответствует порождающей матрице и включает в себя N строк, 1≤n≤N, P≤M, 1≤a≤P, 1≤b≤P, и каждое второе значение обновления является суммой каждого первого значения обновления и соответствующего первого кодового элемента; и определение, декодировано ли второе кодовое слово успешно. В процессе декодирования, после получения подлежащего декодированию первого кодового слова, обработка, соответствующая n-ой строке проверочной матрицы, должна быть выполнена над кодовым словом, кодовый элемент в первом кодовом слове может быть обновлен в процессе обработки. То есть, в данном аспекте, если обновление, соответствующее кодовому элементу, превышает диапазон квантования кодового элемента, то обновления, соответствующие Р первым кодовым элементам, с использованием всех P вторых значений обновления, соответствующих этой строке проверочной матрицы, отменяются.

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

[0023] Опционально, в данном аспекте, генерация второго кодового слова в соответствии с P вторыми кодовыми элементами, соответствующими n-ой строке проверочной матрицы, включает в себя: генерацию второго кодового слова в соответствии с P вторыми кодовыми элементами, соответствующими n-ой строке проверочной матрицы, и другим первым кодовым элементов, который находится в первом кодовом слове и не связан с n-ой строкой проверочной матрицы.

[0024] Опционально, в данном аспекте, генерация второго кодового слова в соответствии с P вторыми кодовыми элементами, соответствующими n-ой строке проверочной матрицы, включает в себя: генерацию второго кодового слова в соответствии с P вторыми кодовыми элементами, соответствующими каждой строке проверочной матрицы.

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

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

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

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ

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

[0029] Фиг. 1 является схематичным представлением архитектуры кодирования и декодирования LDPC-кода в соответствии с вариантом осуществления настоящего изобретения;

[0030] Фиг. 2 является схематичным представлением другой архитектуры кодирования и декодирования LDPC-кода в соответствии с вариантом осуществления настоящего изобретения;

[0031] Фиг. 3 является схематичным представлением структуры устройства декодирования в соответствии вариантом осуществления 1 устройства согласно настоящему изобретению;

[0032] Фиг. 4 является схематичным представлением структуры устройства декодирования в соответствии вариантом осуществления 2 устройства согласно настоящему изобретению;

[0033] Фиг. 5 является схематичным представлением структуры устройства декодирования в соответствии вариантом осуществления 3 устройства согласно настоящему изобретению;

[0034] Фиг. 6 является диаграммой Таннера (Tanner), соответствующей проверочной матрице, применяемой в устройствах декодирования в соответствии с вариантом осуществления 3 устройства и вариантом осуществления 4 устройства согласно настоящему изобретению;

[0035] Фиг. 7 является схематичным представлением структуры устройства декодирования в соответствии с вариантом осуществления 4 устройства согласно настоящему изобретению;

[0036] Фиг. 8 является блок-схемой последовательности операций способа декодирования в соответствии с вариантом осуществления 1 способа согласно настоящему изобретению;

[0037] Фиг. 9 является блок-схемой последовательности операций способа декодирования в соответствии с вариантом осуществления 2 способа согласно настоящему изобретению;

[0038] Фиг. 10 является блок-схемой последовательности операций способа декодирования в соответствии с вариантом осуществления 3 способа согласно настоящему изобретению; и

[0039] Фиг. 11 иллюстрирует результаты эмуляции устройства декодирования в соответствии с настоящим изобретением и обычного устройства декодирования.

ОПИСАНИЕ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ

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

[0041] В настоящей спецификации, термин ʺкод с низкой плотностью проверок на четностьʺ (полное наименование на английском языке: Low Density Parity Check Code) относится к типу линейного кода с исправлением ошибок и обычно используется в области связи для передачи сигнала по каналу связи или для хранения данных на носителе хранения данных.

[0042] В настоящей спецификации, термин ʺкодовое словоʺ (полное наименование на английском языке: Code Word) относится к сигналу, включающему в себя группу кодовых элементов (полное наименование на английском языке: Code Element), передаваемых по каналу связи или для хранения в устройстве хранения данных. Например, в случае, когда кодовое слово LDPC-кода имеет длину 7, кодовое слово включает в себя 7 кодовых элементов.

[0043] В настоящей спецификации, термин ʺдиапазон квантования кодового элементаʺ может также упоминаться как диапазон квантования переменного узла (Variable Node). В процессе декодирования LDPC-кода, каждый кодовый элемент подлежащего декодированию кода соответствует одному переменному узлу, и каждая строка проверочной матрицы соответствует одному проверочному узлу (Check Node). Относительно дополнительных деталей, можно сослаться на диаграмму Таннера на фиг. 6. Диапазон квантования кодового элемента, таким образом, представляет собой размер адресного пространства, выделенного устройством декодирования LDPC-кода каждому кодовому элементу. Например, если адресное пространство, выделенное каждому кодовому элементу, составляет 6 битов, диапазон квантования кодового элемента соответствует от -31 до +31 (здесь после включения -31 и +31).

Архитектура кодирования и декодирования LDPC-кода в вариантах осуществления настоящего изобретения

[0044] Фиг. 1 изображает архитектуру кодирования и декодирования LDPC-кода в соответствии с вариантом осуществления настоящего изобретения. В общем случае, для группы подлежащих передаче сигналов (переносящих текущую информацию, также упоминаемых как информационный бит), устройство кодирования LDPC-кода сначала генерирует одно кодовое слово для подлежащих передаче сигналов в соответствии с порождающей матрицей, также упоминаемой как G-матрица, и затем устройством кодирования LDPC-кода посылает кодовое слово к устройству декодирования LDPC-кода по каналу связи. Обычно, кодовое слово испытывает воздействие шума в процессе передаче по каналу связи, и поэтому в процессе передачи по каналу связи может возникать ошибка в кодовом слове. Поэтому устройство декодирования LDPC-кода имеет возможности проверки и исправления ошибок для кодового слова, передаваемого по каналу связи. Например, группа подлежащих передаче сигналов представляет собой 1, 0, 1, 1. Кодовое слово, генерируемое устройством кодирования LDPC-кода в соответствии с подлежащими передаче сигналами и порождающей матрицей, представляет собой 1, 0, 1, 1, 0, 0, 1. Затем устройство кодирования LDPC-кода передает кодовое слово к устройству декодирования LDPC-кода с использованием сигнала электрического потенциала, сигналы электрического потенциала, принимаемые устройством декодирования LDPC-кода, равны -9 вольт, +7 вольт, -12 вольт, +4 вольта, +7 вольт, +10 вольт, -11 вольт. В настоящем изобретении, сигнал электрического потенциала, посылаемый к устройству декодирования LDPC-кода по каналу связи, также упоминается как кодовое слово, где положительный потенциал соответствует 0, а отрицательный потенциал соответствует 1. Поэтому, после передачи по каналу связи, четвертый кодовый элемент 1 превращается в +4 вольта, что соответствует 0, то есть, возникает ошибка в процессе передачи четвертого кодового элемента кодового слова по каналу связи, и устройство декодирования LDPC-кода должно исправлять ошибку в соответствии с проверочной матрицей, соответствующей порождающей матрице, используемой устройством кодирования LDPC-кода, чтобы получить корректное кодовое слово 1, 0, 1, 1, 0, 0, 1.

[0045] Фиг. 2 изображает сценарий использования другой архитектуры кодирования и декодирования LDPC-кода в соответствии с вариантом осуществления настоящего изобретения. В соответствии вышеупомянутым примером, после приема подлежащих сохранению сигналов 1, 0, 1, 1, устройство кодирования LDPC-кода генерирует кодовое слово 1, 0, 1, 1, 0, 0, 1 в соответствии с подлежащими сохранению сигналами и порождающей матрицей и сохраняет кодовое слово на носителе хранения данных. Когда устройство декодирования LDPC-кода получает доступ к носителю хранения данных, носитель хранения данных обычно записывает данные с использованием сигнала электрического потенциала. Например, сигналы электрического потенциала, полученные из носителя хранения данных устройством декодирования LDPC-кода представляют собой -9 вольт, +7 вольт, -12 вольт, +4 вольта, +7 вольт, +10 вольт, -11 вольт. Вследствие старения или другого фактора для носителя хранения данных, возникает ошибка в четвертом кодовом элементе в процессе хранения, и устройство декодирования LDPC-кода должно исправить ошибку в соответствии с проверочной матрицей, соответствующей порождающей матрице, используемой устройством кодирования LDPC-кода, чтобы получить корректное кодовое слово 1, 0, 1, 1, 0, 0, 1.

[0046] На практике, в общем случае, устройство кодирования LDPC-кода и устройство декодирования LDPC-кода осуществляют выполнение функций с использованием специализированного аппаратного устройства, например, специализированной интегральной схемы (полное наименование на английском языке: Application Specific Integrated Circuit; сокращенно: ASIC), программируемой вентильной матрицы (полное наименование на английском языке: Field Programmable Gate Array; сокращенно: FPGA) и т.п. Сигнал электрического потенциала, передаваемый на устройство декодирования LDPC-кода по каналу связи, обычно представляет собой число с плавающей запятой. Кроме того, ввиду существования шумов, диапазон значений сигнала электрического потенциала не может быть определен. Поэтому, в общем случае, устройство декодирования LDPC-кода квантует значения потенциала кодового слова, которое получено устройством декодирования LDPC-кода или используется в процессе исправления ошибок. Например, когда 6 битов используются для квантования, диапазон значений составляет от -31 до +31, значение, превышающее +31, устанавливается на +31, и значение, меньшее, чем -31, устанавливается на -31. На практике имеется множество методов квантования, и результат квантования не обязательно является целым числом, но также может включать в себя целую часть и дробную часть. Однако, в соответствии с количеством битов выделенного значения квантования при проектировании, результат квантования имеет фиксированный диапазон значений, также упоминаемый как диапазон квантования. В общем случае, переменный узел и проверочный узел имеют, каждый, их соответствующие диапазоны квантования. В настоящей заявке, диапазон квантования кодового элемента является также диапазоном квантования переменного узла.

Вариант осуществления 1 устройства

[0047] Вариант осуществления 1 устройства обеспечивает устройство 200 декодирования, причем устройство 200 декодирования скон