RU2651222C1 - Способ декодирования ldpc-кодов и устройство для его осуществления - Google Patents

Способ декодирования ldpc-кодов и устройство для его осуществления Download PDF

Info

Publication number
RU2651222C1
RU2651222C1 RU2017123811A RU2017123811A RU2651222C1 RU 2651222 C1 RU2651222 C1 RU 2651222C1 RU 2017123811 A RU2017123811 A RU 2017123811A RU 2017123811 A RU2017123811 A RU 2017123811A RU 2651222 C1 RU2651222 C1 RU 2651222C1
Authority
RU
Russia
Prior art keywords
algorithm
signal
decoding
minimum
noise
Prior art date
Application number
RU2017123811A
Other languages
English (en)
Inventor
Владимир Викторович Витязев
Евгений Александрович Лихобабин
Владимир Андреевич Волченков
Original Assignee
Федеральное государственное бюджетное образовательное учреждение высшего образования "Рязанский государственный радиотехнический университет"
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Федеральное государственное бюджетное образовательное учреждение высшего образования "Рязанский государственный радиотехнический университет" filed Critical Федеральное государственное бюджетное образовательное учреждение высшего образования "Рязанский государственный радиотехнический университет"
Priority to RU2017123811A priority Critical patent/RU2651222C1/ru
Application granted granted Critical
Publication of RU2651222C1 publication Critical patent/RU2651222C1/ru

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/35Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)

Abstract

Изобретение относится к системам телекоммуникаций и эфирным видеоинформационным системам вещания и может найти применение в декодерах устройств приема дискретной информации. Технический результат – снижение средней вычислительной сложности декодирования с сохранением качества декодирования принятого сигнала. Способ декодирования LDPC-кодов заключается в том, что для принятого кодового слова сигнала определяется отношение сигнал-шум, затем происходит переключение на оптимальный для данного значения отношения сигнал-шум алгоритм декодирования, после декодирования кодового слова происходит запись декодированного сигнала в общий массив декодированного сигнала. Алгоритм «распространения доверия» при значениях отношения сигнал-шум меньше 1,25 дБ, алгоритм «аппроксимация минимум-сумма» при значениях сигнал-шум в диапазоне [1,25, 1,8) дБ, алгоритм «минимум-сумма» при значениях сигнал-шум в диапазоне [1,8, 4,95) дБ, алгоритм «апостериорных вероятностей» при значениях отношения сигнал-шум в диапазоне [4,95, 11,5] дБ, алгоритм с инверсией бита - при значениях отношения сигнал-шум больше 11,5 дБ. 2 н. и 1 з.п. ф-лы, 1 ил.

Description

Изобретение относится к системам телекоммуникаций и эфирным видеоинформационным системам вещания и может найти применение в декодерах устройств приема дискретной информации.
Известен способ для декодирования канала с использованием кода LDPC, включающий этапы, на которых демодулируют принятый сигнал, определяют позицию сокращенных информационных битов, декодируют демодулированный сигнал, принимая во внимание определенную позицию сокращенных информационных битов, причем позиция определяется исходя из числа информационных битов, которые должны быть сокращены, а также определяют число групп битов, которые должны быть сокращены на основе определенного числа информационных битов, которые должны быть сокращены, и получают предварительно определенный порядок групп битов (патент RU 2543553, МПК Н03М 11/00, опубл. 10.03.2015 г.).
Недостаток данного способа состоит в том, что он применим только для квазициклических кодов. Его реализация требует дополнительных вычислительных затрат на определение позиций сокращаемых бит и внесения изменений в способ кодирования с изменением его скорости.
Наиболее близким к предлагаемому способу является способ декодирования LDPC-кодов, включающий вычисление логарифмических отношений правдоподобия через вычисление отношения сигнал-шум (ОСШ) или оценки их вероятностей, причем определение соотношения сигнал-шум осуществляют для каждого принятого кодового слова сигнала, декодирование принятых кодовых слов сигнала производят на основе одного алгоритма, в том числе с применением алгоритма «распространения доверия» (АРД) или алгоритма «минимум-сумма» (АМС) с возможностью переключения между обработчиками проверочных узлов или информационных узлов в декодере (патент US 7484158, МПК G06F 11/00; Н03М 13/00, опубл. 15.09.2005 г. - прототип).
В известном способе предлагается использовать декодирование на основе алгоритма "распространения доверия" или алгоритма "минимум-сумма". Одновременное применение указанных алгоритмов в процессе декодирования не предусмотрено. Недостаток данного способа декодирования заключается в недостаточной вычислительной эффективности при изменении ОСШ.
Известно устройство декодирования LDPC-кодов, включающее блок декодирования на основе алгоритма "распространения доверия" (АРД) и блок декодирования на основе алгоритма "минимум-сумма" (АМС), выполненные с возможностью последовательного декодирования каждого кодового слова сигнала (патент US 8006161, МПК Н03М 13/00, опубл. 23.08.2011 г.).
В известном устройстве сначала производится обработка алгоритмом "распространения доверия", затем алгоритмом "минимум-сумма". Переключение между алгоритмами в зависимости от ОСШ не предусмотрено. Недостаток данного способа декодирования заключается в недостаточной вычислительной эффективности при изменении ОСШ.
Известно устройство декодирования LDPC-кодов, включающее блок вычисления логарифмического отношения правдоподобия через вычисление отношения сигнал-шум (ОСШ), соединенный выходом с блоком переключателя (коммутатором) для переключения обработчиков проверочных узлов или информационных узлов в декодере, блок вычисления алгоритма «распространения доверия» или блок вычисления алгоритма «минимум-сумма», обобщенный блок обработки узлов, объединяющий блок обновления информационных узлов и блок обновления проверочных узлов (патент US 7484158, МПК G06F 11/00; Н03М 13/00, опубл. 15.09.2005 г.).
В известном устройстве переключение между указанными алгоритмами декодирования не предусмотрено. Недостаток данного способа декодирования заключается в недостаточной вычислительной эффективности при изменении ОСШ.
Наиболее близким к предлагаемому устройству является устройство декодирования LDPC-кодов, включающее блок определения отношения сигнал-шум, соединенный выходом с коммутатором, блок вычисления алгоритма «распространения доверия», блок вычисления алгоритма «минимум-сумма», блок вычисления алгоритма «апостериорных вероятностей» и блок объединения результатов декодирования сигналов по разным алгоритмам, первый, второй и третий выходы коммутатора соединены соответственно с входами блока вычисления алгоритма «распространения доверия», блока вычисления алгоритма «минимум-сумма» и блока вычисления алгоритма «апостериорных вероятностей», выходы которых соединены соответственно с первым, вторым и третьим входами блока объединения результатов декодирования сигналов по разным алгоритмам, выход которого является выходом устройства, входом которого является вход блока определения отношения сигнал-шум, выполненного с возможностью задания диапазона значений отношения сигнал-шум соответственно для каждого блока вычисления алгоритма декодирования, причем алгоритм «распространения доверия» применяют при значениях отношения сигнал-шум меньше 1,8 дБ, алгоритм «минимум-сумма» - при значениях сигнал-шум в диапазоне от 1,8 до 4,95 дБ, алгоритм «апостериорных вероятностей» - при значениях отношения сигнал-шум больше 4,95 дБ (патент на полезную модель РФ №168191, МПК Н03М 13/11, опубл. 23.01.2017 г. - прототип).
В известном устройстве предусмотрено переключение только между тремя алгоритмами декодирования. Недостаток данного устройства декодирования заключается в недостаточной вычислительной эффективности при изменении ОСШ.
Технический результат предлагаемого способа заключается в снижении средней вычислительной сложности декодирования с сохранением качества декодирования принятого сигнала.
Технический результат предлагаемого устройства заключается в снижении средней вычислительной сложности декодирования с сохранением качества декодирования принятого сигнала.
Технический результат достигается тем, что в способе декодирования LDPC-кодов, включающем определение отношения сигнал-шум для каждого принятого кодового слова сигнала и декодирование принятых кодовых слов сигнала на основе алгоритма «распространения доверия» или на основе алгоритма «минимум-сумма» введено по меньшей мере декодирование на основе алгоритма «апостериорных вероятностей», а также на основе алгоритма «аппроксимация минимум-сумма» и алгоритма с инверсией бита, для каждого алгоритма устанавливают диапазон значений сигнал-шум, причем осуществляют переключение алгоритмов в зависимости от значения сигнал-шум для каждого слова с последующим последовательным объединением результатов декодирования сигналов по разным алгоритмам.
Предпочтительно алгоритм «распространения доверия» применить при значениях отношения сигнал-шум меньше 1,25 дБ, алгоритм «аппроксимация минимум-сумма» - при значениях сигнал-шум в диапазоне [1,25, 1,8) дБ, алгоритм «минимум-сумма» - при значениях сигнал-шум в диапазоне [1,8, 4,95) дБ, алгоритм «апостериорных вероятностей» - при значениях отношения сигнал-шум в диапазоне [4,95, 11,5] дБ, алгоритм с инверсией бита - при значениях отношения сигнал-шум больше 11,5 дБ.
Технический результат достигается тем, что в устройство декодирования LDPC-кодов, включающее блок определения отношения сигнал-шум, соединенный выходом с коммутатором, блок вычисления алгоритма «распространения доверия», блок вычисления алгоритма «минимум-сумма», блок вычисления алгоритма «апостериорных вероятностей» и блок объединения результатов декодирования сигналов по разным алгоритмам, первый, второй и третий выходы коммутатора соединены соответственно с входами блока вычисления алгоритма «распространения доверия», блока вычисления алгоритма «минимум-сумма» и блока вычисления алгоритма «апостериорных вероятностей», выходы которых соединены соответственно с первым, вторым и третьим входами блока объединения результатов декодирования сигналов по разным алгоритмам, выход которого является выходом устройства, входом которого является вход блока определения отношения сигнал-шум, введены блок вычисления алгоритма «аппроксимация минимум-сумма» и блок вычисления алгоритма с инверсией бита, причем четвертый и пятый выходы коммутатора соединены соответственно с входами блока вычисления алгоритма «аппроксимация минимум-сумма» и блока вычисления алгоритма с инверсией бита, выходы которых соединены соответственно с четвертым и пятым входами блока объединения результатов декодирования сигналов по разным алгоритмам.
Предпочтительно блок определения отношения сигнал-шум выполнить с возможностью задания диапазона значений отношения сигнал-шум соответственно для каждого блока вычисления алгоритма декодирования.
Целесообразно алгоритм «распространения доверия» применить при значениях отношения сигнал-шум меньше 1,25 дБ, алгоритм «аппроксимация минимум-сумма» - при значениях сигнал-шум в диапазоне [1,25, 1,8) дБ, алгоритм «минимум-сумма» - при значениях сигнал-шум в диапазоне [1,8, 4,95) дБ, алгоритм «апостериорных вероятностей» - при значениях отношения сигнал-шум в диапазоне [4,95, 11,5] дБ, алгоритм с инверсией бита - при значениях отношения сигнал-шум больше 11,5 дБ.
Сущность изобретения заключается в том, что для принятого кодового слова сигнала определяется значение отношения сигнал-шум, затем происходит переключение на оптимальный для данного значения отношения сигнал-шум алгоритм декодирования, после декодирования кодового слова происходит запись декодированного сигнала в общий массив декодированного сигнала.
При проведении патентных исследований не обнаружены решения, идентичные заявленному, следовательно, предложенное решение соответствует критерию "новизна". Сущность изобретения не следует явным образом из известных решений, следовательно, предложенное изобретение соответствует критерию "изобретательский уровень".
На фиг. 1 изображена блок-схема предлагаемого устройства декодирования LDPC-кодов.
На фиг. 1 приняты следующие обозначения:
1 - блок определения отношения сигнал-шум;
2 - коммутатор;
3 - блок вычисления алгоритма «распространения доверия»;
4 - блок вычисления алгоритма «минимум-сумма»;
5 - блок вычисления алгоритма «апостериорных вероятностей»;
6 - блок вычисления алгоритма «аппроксимация минимум-сумма»;
7 - блок вычисления алгоритма с инверсией бита;
8 - блок объединения результатов декодирования сигналов по разным алгоритмам.
Устройство декодирования LDPC-кодов включает блок 1 определения отношения сигнал-шум, соединенный выходом с коммутатором 2, блок 3 вычисления алгоритма «распространения доверия», блок 4 вычисления алгоритма «минимум-сумма», блок 5 вычисления алгоритма «апостериорных вероятностей», блок 6 вычисления алгоритма «аппроксимация минимум-сумма», блок 7 вычисления алгоритма с инверсией бита и блок 8 объединения результатов декодирования сигналов по разным алгоритмам, причем первый, второй, третий, четвертый и пятый выходы коммутатора 2 соединены соответственно с входами блока 3 вычисления алгоритма «распространения доверия», блока 4 вычисления алгоритма «минимум-сумма», блока 5 вычисления алгоритма «апостериорных вероятностей», блока 6 вычисления алгоритма «аппроксимация минимум-сумма», блока 7 вычисления алгоритма с инверсией бита, выходы которых соединены соответственно с первым, вторым, третьим, четвертым и пятым входами блока 8 объединения результатов декодирования сигналов по разным алгоритмам, выход которого является выходом устройства, входом которого является вход блока 1 определения отношения сигнал-шум. Предпочтительно блок 1 определения отношения сигнал-шум выполнить с возможностью задания диапазона значений отношения сигнал-шум соответственно для каждого блока вычисления алгоритма декодирования. Блок 1 определения отношения сигнал-шум может быть реализован на основе различных алгоритмов определения отношения сигнал-шум на миникомпьютере Hardkernel Odroid XU4 с процессором ARM, 8 ядер. Язык реализации C/C++.
Целесообразно алгоритм «распространения доверия» применить при значениях отношения сигнал-шум меньше 1,25 дБ, алгоритм «аппроксимация минимум-сумма» - при значениях сигнал-шум в диапазоне [1,25, 1,8) дБ, алгоритм «минимум-сумма» - при значениях сигнал-шум в диапазоне [1,8, 4,95) дБ, алгоритм «апостериорных вероятностей» - при значениях отношения сигнал-шум в диапазоне [4,95, 11,5] дБ, алгоритм с инверсией бита - при значениях отношения сигнал-шум больше 11,5 дБ.
Предлагаемый способ применяют следующим образом. Для принятого кодового слова сигнала принимают информацию о значении отношения сигнал-шум. Далее в зависимости от полученного для принятого кодового слова значения ОСШ происходит переключение на оптимальный для данного значения отношения сигнал-шум алгоритм декодирования. Если значение ОСШ меньше 1,25 дБ, то обработка принятого кодового слова сигнала для декодирования LDPC-кода осуществляется алгоритмом «распространения доверия». В случае если значение ОСШ находится в диапазоне [1,25, 1,8) дБ, то обработка принятого кодового слова сигнала для декодирования LDPC-кода осуществляется алгоритмом «аппроксимация минимум-сумма». Если значение ОСШ находится в диапазоне [1,8, 4,95) дБ, то обработка принятого кодового слова сигнала для декодирования LDPC-кода осуществляется алгоритмом «минимум-сумма». В случае, если значение ОСШ находится в диапазоне [4,95, 11,5] дБ, то обработка принятого кодового слова сигнала для декодирования LDPC-кода осуществляется алгоритмом «апостериорных вероятностей». Если значение ОСШ больше 11,5 дБ, то обработка принятого кодового слова сигнала для декодирования LDPC-кода осуществляется алгоритмом с инверсией бита. После декодирования объединяют декодированные сигналы и добавляют их в общий массив декодированного сигнала.
Первым алгоритмом, используемым в предлагаемом способе декодирования LDPC-кода, является алгоритм "распространения доверия" (АРД) также известный под более общим названием - алгоритм "сумма-произведение" (АСП). В его основе лежит критерий максимума апостериорной вероятности, задачей которого является вычисление апостериорной вероятности того, что конкретный бит хi в переданном кодовом слове х=[х01,…xN-1] равен единице, при принятом кодовом слове y=[y0,y1,…yN-1].
Figure 00000001
,
тогда отношение правдоподобия (ОП, likelihood ratio, LR) для этого бита равно
Figure 00000002
,
или же в форме логарифмического отношения правдоподобия - ЛОП (log likelihood ratio)
Figure 00000003
.
Декодер инициализируется установкой всех исходящих из узла VNi сообщений Li→j равными канальным ЛОП
Figure 00000004
для всех i и j, для которых hij=1. Здесь yi обозначает принятое из канала значение для символа i.
Условие прекращения декодирования - равенство нулю синдрома
Figure 00000005
,
где кодовое слово
Figure 00000006
- предположительный результат декодирования.
Таким образом, алгоритм АРД можно представить в виде следующих шагов:
1. Инициализация. В зависимости от используемой модели канала связи для всех узлов i инициализируют значения Li по следующей формуле:
Figure 00000007
Затем для всех i и j, для которых hij=1, устанавливают Li→j=Li.
2. Обновление проверочных узлов. Для всех проверочных узлов CN вычисляют исходящие сообщения Lj→i
Figure 00000008
и передают их соответствующим информационным узлам VN.
3. Обновление битовых узлов. Вычисляют сообщения Li→j, исходящие от информационных узлов VN
Figure 00000009
и передают их соответствующим проверочным узлам.
4. Вычисление апостериорных ЛОП. Для всех j=0, 1…,N-1 вычисляют
Figure 00000010
5. Получение жестких решений. Для всех i=0, 1…,N-1 находят жесткие решения
Figure 00000011
6. Проверка условия остановки. Вычисляют синдром
Figure 00000012
. Если
Figure 00000013
или число итераций достигло максимума, вычисления прекращаются, а
Figure 00000006
считается результатом декодирования, в противном случае вычисления продолжаются с шага 2.
Данный алгоритм (АРД) очень хорошо справляется с декодированием сигналов даже при очень низком уровне отношения сигнал-шум (ОСШ). Однако имеет ряд недостатков. Самым существенным недостатком предложенного Галлагером алгоритма является высокая сложность его реализации.
Еще одним алгоритмом, используемым в предлагаемом способе декодирования LDPC-кода, является алгоритм "минимум-сумма" (АМС).
Обобщенная форма записи алгоритма минимальной суммы имеет вид:
1. Инициализация. Для всех узлов i инициализируют значения Li по (1) в зависимости от используемой модели канала связи. Затем для всех i и j, для которых hij=1, устанавливают Li→j=Li.
2. Обновление проверочных узлов. Для всех проверочных узлов CN вычисляют исходящие сообщения Lj→i:
Figure 00000014
и передают их соответствующим информационным узлам VN.
3. Обновление битовых узлов. Вычисляют сообщения Li→j, исходящие от информационных узлов VN
Figure 00000015
,
и передают их соответствующим проверочным узлам.
4. Вычисление апостериорных ЛОП. Для всех j=0, 1…,N-1 вычисляют
Figure 00000016
5. Получение жестких решений. Для всех i=0, 1…,N-1 находят жесткие решения
Figure 00000017
6. Проверка условия остановки. Вычисляют синдром
Figure 00000018
. Если
Figure 00000019
или число итераций достигло максимума, вычисления прекращаются, а
Figure 00000020
считается результатом декодирования, в противном случае вычисления продолжаются с шага 2.
Достоинством алгоритма АМС является то, что значение исходящего сообщения для каждого информационного узла может быть вычислено нахождением всего двух минимальных значений достоверностей, входящих в проверку (что требует всего 1-log2dr-3 операций [Fossorier М., Mihaljevich М., Imai Н. Reduced complexity iterative decoding of low density parity check codes based on belief propagation, IEEE Transactions on Communications. - 1999, May. - Vol. 47. - №5. - pp. 673-680]), плюс вычисление его знака:
Figure 00000021
Второе несомненное достоинство заключается в том, что при использовании модели канала с АБГШ инициализация может осуществляться не канальными ЛОП, а принятыми из канала амплитудами соответствующих бит.
К недостаткам алгоритма (АМС) можно отнести низкую производительность при ОСШ меньше 1,5 дБ относительно алгоритма АРД, а также вычислительную неэффективность при ОСШ больше 5 дБ относительно алгоритма вычисления апостериорных вероятностей.
Еще одним алгоритмом, используемым в предлагаемом способе декодирования LDPC-кода, является алгоритм "аппроксимация минимум-сумма" (АМС*).
Алгоритм, называемый «аппроксимация минимум-сумма» (АМС*, approximate min* - a-min*) [T. Tian, C. Jones, J. Villasenor, R. Wesel. Construction of irregular LDPC codes with low error floors // 2003 IEEE International Conference on Communications. - 2003, May. - pp. 3125-3129], является комбинацией алгоритмов АРД и АМС, модификация касается алгоритма подсчета сообщений в проверочном узле. В общем виде для АРД эта операция имеет вид
Figure 00000022
И под оператором min* понимается поиск минимума, и получаем, что для подсчета сообщений из проверочного узла требуется найти всего два сообщения - первое для узла, сообщение от которого было минимальным, а второе - будет одинаковым для всех остальных узлов.
Алгоритм АМС* использует ту же идеологию - в каждом проверочном узле рассчитывается всего два сообщения - одно для информационного узла, приславшего сообщение с минимальным весом, второе для всех остальных информационных узлов. Отличие заключается лишь в том, что вместо обычного минимума из двух аргументов используется оператор
Figure 00000023
, в котором помимо операции поиска минимума используется еще и функция корректировки g(L1, L2).
В обобщенном виде этот алгоритм выглядит следующим образом.
1. Инициализация. Для всех узлов i инициализировать значения Li по (8) в зависимости от используемой модели канала связи. Затем для всех i и j, для которых hij=1, устанавливается Li→j=Li.
2. Обновление проверочных узлов. Для всех проверочных узлов CN вычислить по формуле
Figure 00000024
исходящие сообщения:
• для узла с минимальной достоверностью
Figure 00000025
• для всех остальных
Figure 00000026
и передать их соответствующим информационным узлам VN.
3. Обновление битовых узлов. Вычислить сообщения Li→j, исходящие от информационных узлов VN
Figure 00000027
и передать их соответствующим проверочным узлам.
4. Вычисление апостериорных ЛОП. Для всех j=0, 1 …, N-1 вычислить
Figure 00000028
.
5. Получение жестких решений. Для всех i=0, 1 …, N-1 найти жесткие решения
Figure 00000029
.
6. Проверка условия остановки. Вычислить синдром
Figure 00000030
. Если
Figure 00000031
или число итераций достигло максимума - вычисления прекращаются, а
Figure 00000032
считается результатом декодирования, в противном случае вычисления продолжаются с шага 2.
Подобная модификация позволяет снизить вычислительные затраты на вычисление сообщений из проверочного узла для АРД-подобных алгоритмов с 3(dc-1) до (dc-1) операции
Figure 00000033
. По эффективности этот алгоритм занимает промежуточное место между АРД-подобными алгоритмами и алгоритмом АМС.
В алгоритме используется оператор
Figure 00000034
, а значит, при реализации может быть использована любая его интерпретация. Видно, что алгоритм сводится к поиску всего двух отсылаемых сообщений вместо dc. Вычисление этих двух сообщений займет всего dc-1 арифметических операций. Правомерность применения такого упрощения можно пояснить, рассмотрев работу алгоритмов АРД и АМС. Если при декодировании проверочного узла два или более входящих в проверочный узел сообщений недостоверны, то недостоверными будут все сообщения, исходящие из этого узла. Это свойство сохраняется и при введении рассматриваемой модификации. Если всего одно входящее в проверочный узел сообщение не верно, то исходящее сообщение для недостоверного информационного узла будет достоверным для всех трех декодеров. Как видно из описания рассматриваемого упрощения, в обоих рассмотренных случаях сообщение, отправляемое к самому ненадежному информационному узлу, всегда будет в точности таким же, как и для алгоритма АРД.
Еще одним алгоритмом, используемым в предлагаемом способе декодирования LDPC-кода, является алгоритм вычисления апостериорных вероятностей (ААВ).
Алгоритм вычисления апостериорных вероятностей (алгоритм АВ, ААВ, aposteriory probability, АРР) получил свое название благодаря шагу обновления битовых узлов - если в других АРД-подобных алгоритмах на этом шаге вычислялось сообщение (сумма ЛОП - за исключением ЛОП исходящего из рассматриваемого узла), то в этом алгоритме сразу осуществляется расчет апостериорных вероятностей, именно они используются для дальнейших расчетов. Алгоритм АВ можно рассматривать как дальнейшее упрощение алгоритма АМС. Этот алгоритм отличается от алгоритма АМС шагом обновления битовых узлов. Здесь вычисляется только одно исходящее сообщение от битового узла i, вместо dc (Li вместо Li→j), как это было во всех алгоритмах, основанных на алгоритме АСП. Выражение для подсчета исходящих из информационного узла сообщений имеет вид
Figure 00000035
Обобщенная форма записи алгоритма имеет вид:
1. Инициализация. В зависимости от используемой модели канала связи для всех узлов i инициализируют значения Li по формуле
Figure 00000036
Затем для всех i и j, для которых hij=1, устанавливают Li→j=Li.
2. Обновление проверочных узлов. Для всех проверочных узлов CN вычисляют исходящие сообщения Lj→i
Figure 00000037
и передают их соответствующим информационным узлам VN.
3. Обновление битовых узлов. Вычисляют сообщения Li→j, исходящие от информационных узлов VN:
Figure 00000038
и передают их соответствующим проверочным узлам.
4. Получение жестких решений. Для всех i=0, 1…,N-1 находят жесткие решения
Figure 00000039
.
5. Проверка условия остановки. Вычисляют синдром
Figure 00000040
. Если
Figure 00000041
или число итераций достигло максимума, вычисления прекращаются, а
Figure 00000042
считается результатом декодирования, в противном случае вычисления продолжаются с шага 2.
Введение упрощения ,применяемого в данном алгоритме, приводит к значительному ухудшению эффективности декодирования, с другой стороны, это позволяет существенно снизить вычислительные затраты и затраты памяти на реализацию алгоритма.
Еще одним алгоритмом, используемым в предлагаемом способе декодирования LDPC-кода, является алгоритм с инверсией бита (АИБ).
Алгоритм с инверсией бита (алгоритм ИБ, АИБ) был предложен Галлагером в [Gallager R.G. Low-density parity-check codes // Cambridge, MA: M.I.T. Press. - 1963]. В АИБ сначала вычисляются все проверочные уравнения в матрице Н, а затем инвертируются те биты в полученном кодовом слове, которые участвуют более чем в некотором заданном числе t невыполненных проверок. Этот шаг повторяется с измененным принятым кодовым словом, пока все проверки на четность не будут выполнены или пока не будет достигнуто некоторое максимальное число итераций.
На невыполненные проверочные уравнения указывают элементы синдрома s=yHT, а их число для каждого кодового бита можно найти, используя следующее выражение:
f=sH,
причем умножения матриц выполняется над целыми числами, а не над двоичными. Вектор f называют профилем достоверности, а его элементы ƒj являются ни чем иным, как достоверностями приема соответствующих бит, причем достоверность тем меньше, чем больше значение ƒj. При этом диапазон значений ƒj лежит в пределах [0,dc], и очевидно, что чем больше вес проверок для каждого из бит, тем более точно можно определить достоверность их приема.
Порог t - расчетная величина, которая должна быть выбрана таким образом, чтобы максимизировать эффективность декодирования при минимизации вычислительных затрат, и зависит от вероятности перехода в канале, а также dc и dr. В [Gallager R.G. Low-density parity-check codes // Cambridge, MA: M.I.T. Press. - 1963], приводится правило выбора оптимального порога для регулярных LDPC кодов при заданной вероятности перехода в канале. Рассчитывать порог в условиях изменяющихся характеристик канала не всегда оправдано, однако существует удобный, хотя и не оптимальный способ выбора порога, эффективно адаптирующегося к изменению качества канала. Суть его сводится к тому, что инвертируются те биты, для которых число невыполненных проверок максимально, при этом возможны модификации с инверсией только одного бита или нескольких бит за итерацию. Заметим, что при принятых обозначениях невыполненной проверке соответствует отрицательная достоверность. Следовательно, инвертировать следует биты, имеющие минимальное значение достоверности.
Алгоритм ИБ можно представить в обобщенном виде следующим образом:
1. Инициализация. Для всех узлов i инициализировать значения αi жесткими оценками принятых бит.
2. Обновление проверочных узлов. Для всех проверочных узлов CN вычислить исходящие сообщения Lj→i
Figure 00000043
и передать их соответствующим информационным узлам VN.
3. Обновление битовых узлов. Вычислить сообщения Li→j, исходящие от информационных узлов VN
Figure 00000044
и передать их соответствующим проверочным узлам.
4. Получение окончательных решений. Для всех i=0, 1 …, N-1 найти жесткие решения
Figure 00000045
5. Проверка правильности декодирования. Вычислить синдром
Figure 00000046
. Если
Figure 00000047
или число итераций достигло максимума, вычисления прекращаются, а
Figure 00000048
считается результатом декодирования, в противном случае вычисления продолжаются с шага 2.
После декодирования кодового слова одним из пяти алгоритмов происходит запись декодированного сигнала в общий массив декодированного сигнала.
Предлагаемое устройство работает следующим образом.
Для принятого кодового слова сигнала в блоке 1 определения отношения сигнал-шум принимается информация о значении отношения сигнал-шум (ОСШ). Далее в зависимости от полученного для принятого кодового слова значения ОСШ происходит переключение на оптимальный для данного значения отношения сигнал-шум алгоритм декодирования. Если значение ОСШ меньше 1,25 дБ, то обработка принятого кодового слова сигнала для декодирования LDPC-кода осуществляется блоком 3 вычисления алгоритма «распространения доверия». В случае, если значение ОСШ находится в диапазоне [1,25, 1,8) дБ, то обработка принятого кодового слова сигнала для декодирования LDPC-кода осуществляется блоком 6 вычисления алгоритма «аппроксимация минимум-сумма». Если значение ОСШ находится в диапазоне [1,8, 4,95) дБ, то обработка принятого кодового слова сигнала для декодирования LDPC-кода осуществляется блоком 4 вычисления алгоритма «минимум-сумма». В случае если значение ОСШ находится в диапазоне [4,95, 11,5] дБ, то обработка принятого кодового слова сигнала для декодирования LDPC-кода осуществляется блоком 5 вычисления алгоритма «апостериорных вероятностей». Если значение ОСШ больше 11,5 дБ, то обработка принятого кодового слова сигнала для декодирования LDPC-кода осуществляется блоком 7 вычисления алгоритма с инверсией бита. После декодирования блок 8 объединения декодированного сигнала принимает информацию с задействованного блока декодирования сигнала и добавляет ее в общий массив декодированного сигнала.
Устройство просто и может быть реализовано на миникомпьютере Hardkernel Odroid XU4 с процессором ARM, 8 ядер. Язык реализации C/C++, возможно использование технологии openCL.
Предлагаемый способ оперативен, точен и позволяет снизить затраты на декодирование в 4,13-7,93 раза в зависимости от используемой структуры декодера по сравнению с использованием только алгоритма АРД и в 2,61 раз по сравнению с использованием только алгоритма АМС. По сравнению с прототипом предлагаемое устройство позволяет снизить затраты на декодирование в 1,2-1,6 раза в зависимости от применяемого кода.

Claims (3)

1. Способ декодирования LDPC-кодов, включающий определение отношения сигнал-шум для каждого принятого кодового слова сигнала и декодирование принятых кодовых слов сигнала на основе алгоритма «распространения доверия» и «на основе алгоритма «минимум-сумма», отличающийся тем, что введено декодирование на основе алгоритма «апостериорных вероятностей», а также на основе алгоритма «аппроксимация минимум-сумма» и алгоритма с инверсией бита, для каждого алгоритма устанавливают диапазон значений сигнал-шум, причем осуществляют переключение алгоритмов в зависимости от значения отношения сигнал-шум для каждого слова с последующим последовательным объединением результатов декодирования сигналов по разным алгоритмам, при этом алгоритм «распространения доверия» применяют при значениях отношения сигнал-шум меньше 1,25 дБ, алгоритм «аппроксимация минимум-сумма» при значениях сигнал-шум в диапазоне [1,25, 1,8) дБ, алгоритм «минимум-сумма» при значениях сигнал-шум в диапазоне [1,8, 4,95) дБ, алгоритм «апостериорных вероятностей» при значениях отношения сигнал-шум в диапазоне [4,95, 11,5] дБ, алгоритм с инверсией бита - при значениях отношения сигнал-шум больше 11,5 дБ.
2. Устройство декодирования LDPC-кодов, включающее блок определения отношения сигнал-шум, соединенный выходом с коммутатором, блок вычисления алгоритма «распространения доверия», блок вычисления алгоритма «минимум-сумма», блок вычисления алгоритма «апостериорных вероятностей» и блок объединения результатов декодирования сигналов по разным алгоритмам, первый, второй и третий выходы коммутатора соединены соответственно с входами блока вычисления алгоритма «распространения доверия», блока вычисления алгоритма «минимум-сумма» и блока вычисления алгоритма «апостериорных вероятностей», выходы которых соединены соответственно с первым, вторым и третьим входами блока объединения результатов декодирования сигналов по разным алгоритмам, выход которого является выходом устройства, входом которого является вход блока определения отношения сигнал-шум, отличающееся тем, что введены блок вычисления алгоритма «аппроксимация минимум-сумма» и блок вычисления алгоритма с инверсией бита, причем четвертый и пятый выходы коммутатора соединены соответственно с входами блока вычисления алгоритма «аппроксимация минимум-сумма» и блока вычисления алгоритма с инверсией бита, выходы которых соединены соответственно с четвертым и пятым входами блока объединения результатов декодирования сигналов по разным алгоритмам, при этом алгоритм «распространения доверия» применяют при значениях отношения сигнал-шум меньше 1,25 дБ, алгоритм «аппроксимация минимум-сумма» при значениях сигнал-шум в диапазоне [1,25, 1,8) дБ, алгоритм «минимум-сумма» при значениях сигнал-шум в диапазоне [1,8, 4,95) дБ, алгоритм «апостериорных вероятностей» при значениях отношения сигнал-шум в диапазоне [4,95, 11,5] дБ, алгоритм с инверсией бита - при значениях отношения сигнал-шум больше 11,5 дБ.
3. Устройство по п. 2, отличающееся тем, что блок определения отношения сигнал-шум выполнен с возможностью задания диапазона значений отношения сигнал-шум соответственно для каждого блока вычисления алгоритма декодирования.
RU2017123811A 2017-07-05 2017-07-05 Способ декодирования ldpc-кодов и устройство для его осуществления RU2651222C1 (ru)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2017123811A RU2651222C1 (ru) 2017-07-05 2017-07-05 Способ декодирования ldpc-кодов и устройство для его осуществления

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2017123811A RU2651222C1 (ru) 2017-07-05 2017-07-05 Способ декодирования ldpc-кодов и устройство для его осуществления

Publications (1)

Publication Number Publication Date
RU2651222C1 true RU2651222C1 (ru) 2018-04-18

Family

ID=61977171

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2017123811A RU2651222C1 (ru) 2017-07-05 2017-07-05 Способ декодирования ldpc-кодов и устройство для его осуществления

Country Status (1)

Country Link
RU (1) RU2651222C1 (ru)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7484158B2 (en) * 2003-12-03 2009-01-27 Infineon Technologies Ag Method for decoding a low-density parity check (LDPC) codeword
US8006161B2 (en) * 2005-10-26 2011-08-23 Samsung Electronics Co., Ltd Apparatus and method for receiving signal in a communication system using a low density parity check code
RU2013115889A (ru) * 2008-02-26 2014-10-20 Самсунг Электроникс Ко., Лтд. Способ и устройство для канального кодирования и декодирования в системе связи, в которой используются коды контроля четности с низкой плотностью
RU168191U1 (ru) * 2016-10-13 2017-01-23 Общество с ограниченной ответственностью "Силовая электроника" Устройство декодирования LDPC-кодов

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7484158B2 (en) * 2003-12-03 2009-01-27 Infineon Technologies Ag Method for decoding a low-density parity check (LDPC) codeword
US8006161B2 (en) * 2005-10-26 2011-08-23 Samsung Electronics Co., Ltd Apparatus and method for receiving signal in a communication system using a low density parity check code
RU2013115889A (ru) * 2008-02-26 2014-10-20 Самсунг Электроникс Ко., Лтд. Способ и устройство для канального кодирования и декодирования в системе связи, в которой используются коды контроля четности с низкой плотностью
RU168191U1 (ru) * 2016-10-13 2017-01-23 Общество с ограниченной ответственностью "Силовая электроника" Устройство декодирования LDPC-кодов

Similar Documents

Publication Publication Date Title
Vangala et al. A comparative study of polar code constructions for the AWGN channel
KR101431162B1 (ko) 주변 신뢰도에 따른 서열화를 이용한 메시지 전달 디코딩 방법
US7716561B2 (en) Multi-threshold reliability decoding of low-density parity check codes
US7246304B2 (en) Decoding architecture for low density parity check codes
US8209579B2 (en) Generalized multi-threshold decoder for low-density parity check codes
US7895500B2 (en) Systems and methods for reduced complexity LDPC decoding
EP1482643A2 (en) Method and apparatus for decoding a low density parity check (LDPC) code in a communication system
US8826109B2 (en) LDPC decoder irregular decoding of regular codes
KR100846869B1 (ko) 저 복잡도 ldpc복호 장치 및 그 방법
Fritzmann et al. Analysis of error-correcting codes for lattice-based key exchange
KR101718543B1 (ko) 개선된 비트 반전 알고리즘 기반의 저밀도 패리티 검사 부호를 위한 복호 방법, 장치 및 이를 위한 기록 매체
CN107404321B (zh) 用于纠错码解码的方法和设备
CN101707485A (zh) 混合比特翻转和大数逻辑的ldpc译码方法
US10892783B2 (en) Apparatus and method for decoding polar codes
US8201049B2 (en) Low density parity check (LDPC) decoder
US8972817B2 (en) Two low complexity decoding algorithms for LDPC codes
CN112953569B (zh) 译码方法及装置、存储介质、电子设备、译码器
RU2651222C1 (ru) Способ декодирования ldpc-кодов и устройство для его осуществления
JP2008544639A (ja) 復号方法と装置
RU178755U1 (ru) Устройство декодирования ldpc-кодов
JP2022541691A (ja) マルチレベルポーラ符号化変調送信及び受信のための方法及びデバイス
CN111130564A (zh) 译码方法及装置
Seksembayeva et al. Study of the principles of error correcting code in a multipath communication channel with intersymbol interference
RU168191U1 (ru) Устройство декодирования LDPC-кодов
Yatribi et al. Gradient-descent decoding of one-step majority-logic decodable codes

Legal Events

Date Code Title Description
MM4A The patent is invalid due to non-payment of fees

Effective date: 20200706