CN112367085B - 准循环ldpc码译码方法、译码器、终端及介质 - Google Patents

准循环ldpc码译码方法、译码器、终端及介质 Download PDF

Info

Publication number
CN112367085B
CN112367085B CN202011193430.1A CN202011193430A CN112367085B CN 112367085 B CN112367085 B CN 112367085B CN 202011193430 A CN202011193430 A CN 202011193430A CN 112367085 B CN112367085 B CN 112367085B
Authority
CN
China
Prior art keywords
input signals
paths
quasi
ldpc code
decoding
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN202011193430.1A
Other languages
English (en)
Other versions
CN112367085A (zh
Inventor
王本庆
王飞
郭军平
王帅
施渊籍
周一青
石晶林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Zhongke Crystal Communication Technology Co ltd
Original Assignee
Nanjing Zhongke Crystal Communication Technology Co ltd
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 Nanjing Zhongke Crystal Communication Technology Co ltd filed Critical Nanjing Zhongke Crystal Communication Technology Co ltd
Priority to CN202011193430.1A priority Critical patent/CN112367085B/zh
Publication of CN112367085A publication Critical patent/CN112367085A/zh
Application granted granted Critical
Publication of CN112367085B publication Critical patent/CN112367085B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1148Structural properties of the code parity-check or generator matrix
    • H03M13/116Quasi-cyclic LDPC [QC-LDPC] codes, i.e. the parity-check matrix being composed of permutation or circulant sub-matrices
    • 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
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1108Hard decision decoding, e.g. bit flipping, modified or weighted bit flipping
    • 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
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1128Judging correct decoding and iterative stopping criteria other than syndrome check and upper limit for decoding iterations
    • 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/27Coding, 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 using interleaving techniques

Landscapes

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

Abstract

本申请公开了一种准循环LDPC码译码方法、装置、终端及介质。其中方法包括:基于待处理的准循环LDPC码比特流,确定译码模式;若译码模式为双路译码模式,则确定准循环LDPC码比特流包括的两路输入信号分别对应的似然比数据矩阵;对两路输入信号分别对应的似然比数据矩阵执行迭代译码处理,得到两路输入信号分别对应的中间数据矩阵;依据两路输入信号各自对应的似然比数据矩阵和中间数据矩阵进行编码,得到准循环LDPC码。本申请通过同时对两路输入信号进行迭代译码处理的方式,缩短了迭代译码消耗的时间,降低了译码器的计算开销,起到了通过并行处理两路输入信号来提高译码器编码效率的效果。

Description

准循环LDPC码译码方法、译码器、终端及介质
技术领域
本申请涉及通信技术领域,具体涉及一种准循环LDPC码译码方法、译码器、终端及介质。
背景技术
准循环结构的低密度奇偶校验码(QC-LDPC),因具有良好的编译码实现特性,被广泛应用于地面移动5G标准、DVB-S2标准(IRA-LDPC)等国际通信标准中。QC-LDPC码的主要优势是可通过多路并行译码,来提升系统的吞吐量。相关技术中,主要采用置信度传播(BP)算法来进行QC-LDPC码译码,该算法在硬件实现中,采用简化的最小和算法(MSA)。MSA包括变量节点更新和校验节点更新两个主要环节,但译码器在变量节点更新和校验节点更新两个主要环节的译码单元因交替执行迭代,存在译码单元利用率低的问题;同时,当前的译码器也无法同时对两路输入信号进行译码。
发明内容
为了解决上述译码器存在的变量节点更新和校验节点更新两个主要环节的译码单元利用率低,且无法同时对两路输入信号进行译码的技术问题,本申请提供一种准循环LDPC码译码方法、译码器、终端及介质。
根据本申请的第一方面,提供了一种准循环LDPC码译码方法,该方法包括:
基于待处理的准循环LDPC码比特流,确定译码模式;
若译码模式为双路译码模式,则确定准循环LDPC码比特流包括的两路输入信号分别对应的似然比数据矩阵;
对两路输入信号分别对应的似然比数据矩阵执行迭代译码处理,得到两路输入信号分别对应的中间数据矩阵;
依据两路输入信号各自对应的似然比数据矩阵和中间数据矩阵进行编码,得到准循环LDPC码。
根据本申请的第二方面,提供了一种译码器,该译码器包括:
译码模式确定模块,用于基于待处理的准循环LDPC码比特流,确定译码模式;
双路矩阵确定模块,用于若译码模式为双路译码模式,则确定准循环LDPC码比特流包括的两路输入信号分别对应的似然比数据矩阵;
中间矩阵确定模块,用于对两路输入信号分别对应的似然比数据矩阵执行迭代译码处理,得到两路输入信号分别对应的中间数据矩阵;
译码编译处理模块,用于依据两路输入信号各自对应的似然比数据矩阵和中间数据矩阵进行编码,得到准循环LDPC码。
根据本申请的第三方面,提供了一种终端,该终端包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时以实现上述准循环LDPC码译码方法。
根据本申请的第四方面,提供了一种计算机可读存储介质,该介质存储有计算机可执行指令,该计算机可执行指令用于以执行上述准循环LDPC码译码方法。
本申请实施例通过确定待处理的准循环LDPC码比特流的译码模式,以在译码模式为双路译码模式的条件下,确定准循环LDPC码比特流包括的两路输入信号分别对应的似然比数据矩阵,对两路输入信号分别对应的似然比数据矩阵执行迭代译码处理,得到两路输入信号分别对应的中间数据矩阵,从而依据两路输入信号各自对应的似然比数据矩阵和中间数据矩阵进行编码,以得到准循环LDPC码,这种同时对两路输入信号进行迭代译码处理的方式,缩短了迭代译码消耗的时间,降低了译码器的计算开销,起到了通过并行处理两路输入信号来提高译码器编码效率的效果。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。
图1为本申请实施例提供的一种准循环LDPC码译码方法的流程示意图;
图2为本申请实施例提供的应用准循环LDPC码译码方法的译码器的结构示意图;
图3为本申请实施例提供的应用准循环LDPC码译码方法的译码器的一种内部组合示意图;
图4为本申请实施例提供的应用准循环LDPC码译码方法的译码器的另一种内部组合示意图;
图5为本申请实施例提供的应用准循环LDPC码译码方法的译码器的又一种内部组合示意图;
图6为本申请实施例提供的应用准循环LDPC码译码方法的译码器的再一种内部组合示意图;以及
图7为本申请实施例提供的一种译码器的框图结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。
需要说明的是,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
根据本申请的一个实施例,提供了一种准循环LDPC码译码方法,如图1所示,该方法包括步骤S101至步骤S104。
步骤S101:基于待处理的准循环LDPC码比特流,确定译码模式。
具体地,译码器基于待处理的准循环LDPC码比特流,确定译码模式。
具体地,译码器一般根据准循环LDPC码比特流中信号的帧数来确定译码模式,因此,译码器同时支持双路译码和单路译码(也可以称之为孤帧控制)。
步骤S102:若译码模式为双路译码模式,则确定准循环LDPC码比特流包括的两路输入信号分别对应的似然比数据矩阵。
在本申请实施例中,双路译码模式用于表征译码器在同时接收到两帧输入信号的条件下执行的译码方式。具体地,译码器通过逐个获取到的符号,来确定各帧输入信号分别对应的符号序列,即,确定出各帧输入信号分别对应的比特流。
具体地,译码器按照预设的输入参数来接收符号,并对接收到的符号进行计数。
在本申请实施例中,似然比数据矩阵是指输入信号对应的符号序列一种表示形式。具体地,似然比数据矩阵可以按行或按列对输入信号对应的符号序列进行读取得到。
步骤S103:对两路输入信号分别对应的似然比数据矩阵执行迭代译码处理,得到两路输入信号分别对应的中间数据矩阵。
具体地,迭代译码处理包括变量节点更新的过程和校验节点更新的过程。
具体地,变量节点和校验节点根据本地预存矩阵来对输入信号对应的似然比数据矩阵进行迭代处理。更具体地,译码器一般按照预设的输入参数来确定本地预存矩阵。其中,本地预存矩阵一般呗设置为全零矩阵。
具体地,译码器根据预设的迭代次数来控制变量节点和校验节点对同一路输入信号进行迭代处理,直至达到预设的迭代次数阈值时,停止对该同一路输入信号的迭代译码处理。
步骤S104:依据两路输入信号各自对应的似然比数据矩阵和中间数据矩阵进行编码,得到准循环LDPC码。
具体地,可以通过对似然比数据矩阵和中间数据矩阵的乘积来进行计算。
本申请实施例通过确定待处理的准循环LDPC码比特流的译码模式,以在译码模式为双路译码模式的条件下,确定准循环LDPC码比特流包括的两路输入信号分别对应的似然比数据矩阵,对两路输入信号分别对应的似然比数据矩阵执行迭代译码处理,得到两路输入信号分别对应的中间数据矩阵,从而依据两路输入信号各自对应的似然比数据矩阵和中间数据矩阵进行编码,以得到准循环LDPC码,这种同时对两路输入信号进行迭代译码处理的方式,缩短了迭代译码消耗的时间,降低了译码器的计算开销,起到了通过并行处理两路输入信号来提高译码器编码效率的效果。
在一些实施例中,步骤S102中确定准循环LDPC码比特流包括的两路输入信号分别对应的似然比数据矩阵的步骤,进一步包括:
步骤S1021:对两路输入信号分别对应的比特流进行校验位调整处理;
步骤S1022:依据校验位调整处理后的两路输入信号分别对应的比特流,进行串并转换处理,得到两路输入信号分别对应的似然比数据矩阵。
具体地,可以根据输入信号符合的通信标准来进行校验位调整处理。例如,若输入信号为符合5G标准规则,可以对校验位进行调整;若输入信号为符合DVB标准,那么该输入信号的系统位的位置不变,仅对校验位进行Q长度的矩形交织。
具体地,可以通过预设的移位寄存器来执行串并转换处理。
在一些实施例中,步骤S102进一步还包括:
将先后完成串并转换处理的两路输入信号分别对应的似然比数据矩阵,在预设的两个存储模块中执行乒乓存储处理。
具体地,可以移位寄存器来进行串并转换,并实时将一路输入信号转换的结果存储至一个存储模块,另一路输入信号转换的结果存储至另一个模块,解决了现有技术中因译码器仅设置有一个似然比数据矩的存储模块,导致译码器无法对同时对两路输入信号进行处理的问题。
本申请实施例通过在译码器中增设两个存储模块,起到了同时对两路输入信号各自的似然比数据矩阵进行缓存的效果,为后续同时对两路输入信号各自的似然比数据矩阵进行迭代处理提供了查询基础,起到了充分利用译码器中执行迭代译码的各个译码单元的空隙时间,来同时对两路输入信号进行译码的效果,使得各个译码单元利用率达到100%,达到了提高译码器译码的效率的目的。
在一些实施例中,步骤S103进一步包括以下至少一个步骤:
若一路输入信号正在被预设的变量节点进行处理,则控制预设的校验节点对另一路输入信号对应的似然比数据矩阵进行校验更新;
若一路输入信号正在被预设的校验节点进行处理,则控制预设的变量节点对另一路输入信号对应的似然比数据矩阵进行变量更新。
由于变量节点和校验节点是间隔进行迭代处理的,即,在变量节点和校验节点中,一个节点执行迭代译码处理的同时,另一个节点处于空闲状态,这样就存在无法充分利用变量节点和校验节点的问题。为了解决这种问题,本申请通过交替控制变量节点或校验节点正在处理的输入信号,起到了变量节点和校验节点二者中的一个节点在对一路输入信号执行迭代处理的过程中,由另一个节点对另一路输入信号执行迭代处理,达到充分利用变量节点和校验节点,来实现双路信号的并行处理目的。
例如,假设第一路输入信号的似然比数据矩阵存储在RAM_L0中,第二路输入信号的似然比数据矩阵存储在RAM_L1中,若变量节点正在对第一路输入信号的似然比数据矩阵进行迭代译码处理,那么控制校验节点对第二路输入信号的似然比数据矩阵进行迭代译码处理。
在一些实施例中,步骤S103进一步还包括:
若校验节点对任一路输入信号执行迭代处理的次数达到预设迭代次数阈值,则停止对该任一路输入信号进行迭代处理,得到该任一路输入信号对应的中间数据矩阵。
具体地,预设迭代次数阈值可以预先设置的译码器中,也可以通过输入控制参数来进行确定。
在一些实施例中,步骤S101进一步包括:
获取准循环LDPC码比特流;
对准循环LDPC码比特流包括的符号进行计数;
依据计数结果,确定准循环LDPC码比特流包括的输入信号的帧数;
若帧数为2,则确定译码模式为双路译码模式。
具体地,译码器在接收到准循环LDPC码比特流的同时,进行计数,并根据技术结果来帧数。例如,一帧输入信号包括的符号数一般为定值,假设接收到与该定值对应的符号数,那么确定接收到一帧输入信号;若接收到两倍该定值的符号数,则确定接收到两帧输入信号。
在一些实施例中,步骤S101进一步还包括:
若帧数为1,且在预定时长内未接收到新的准循环LDPC码比特流,则确定译码模式为单路译码模式,以依据单路译码模式对准循环LDPC码比特流进行译码处理。
具体地,对依据单路译码模式对应的译码算法可以采用参照步骤S102至步骤S104中对一路输入信号的处理,即,先将该路输入信号进行串并转换,得到似然比数据矩阵,再通过预设的变量节点和校验节点对该似然比数据矩阵进行迭代译码处理,得到中间数据矩阵之后,对该中间数据矩阵和该似然比数据矩阵进行编码,得到准循环LDPC码。
为了进一步说明本申请实施例提供的准循环LDPC码译码方法,下面结合图2所示的译码器结构示意图进行说明。
参照图2,译码器执行上述准循环LDPC码译码方法包括以下几个部分:校验位调整(SIT)、调整缓存(RAM_T)、串并转换(S2P)、输入缓存(RAM_L)、变量节点更新(VPR)、交织器(It)、节点缓存(RAM_P)、校验节点更新(SPR)、输出缓存(RAM_O)等九部分组成。图中V为输入数据路数,W为并行译码路数。
其中,(1)校验位调整(SIT)。对DVB标准中LDPC码的系统位的位置不变,校验位进行Q长度的矩形交织,5GNR中LDPC码不需要。
(2)调整缓存(RAM_T)。单输入单输出RAM单元,由RAM_T0和RAM_T1组成乒乓缓存,由校验位调整(SIT)进行输入和输出控制。调整缓存(RAM_T)存入1帧译码数据,占用内存大小为NA比特,存储N/W×W×A比特似然比数据(矩阵),其中N为编码后信息长度,A为输入信息量化。
(3)串并转换(S2P)。S2P功能一是进行乒乓缓存,二是对V路串行译码输入进行W路并行存储控制,三是孤帧控制,四是对W路并行译码输出进行V路串行控制。乒乓缓存是指对输入的A比特量化的译码数据,每隔两帧分别存入输入缓存RAM_L0和RAM_L1中。孤帧控制是指当缓存收齐一帧数据后,如果译码器空闲,则译码器仅对一帧数据译码。
(4)输入缓存(RAM_L)。单输入单输出RAM单元,由RAM_L0和RAM_L1组成乒乓缓存,由串并转换(S2P)进行输入控制,由变量节点更新(VPR)进行输出控制。每个输入缓存(RAM_L0或RAM_L1)存入2帧译码数据,占用内存大小为2NA比特,存储2N/W×W×A比特似然比数据(矩阵),其中N为编码后信息长度,A为输入信息量化。
(5)变量节点更新(VPR)。由W个独立变量节点更新(VPR)模块组成,变量节点每次更新从相应输入缓存(RAM_L)中读取一个A比特量化似然比数据,从节点缓存(RAM_P0或RAM_P1交替使用)中按It_a控制字的地址和Iy_c控制字的个数读取多个A比特量化中间数据,按变量节点更新(VPR)规则更新后,再按It_a控制字的地址和Iy_c控制字的个数将更新后的A比特量化中间数据存储至节点缓存(RAM_P0或RAM_P1交替使用)中。
(6)交织器(It)。由正交织器(It0)和逆交织器(It1)组成,实现节点缓存(RAM_P)数据的W宽度(列内)循环移位。正交织器(It0)实现节点缓存(RAM_P0或RAM_P0)中间数据按It_c控制字规则的W宽度(列内)循环移位,并输出至变量节点更新(VPR);逆交织器(It1)实现变量节点更新(VPR)后的中间数据按It_c控制字逆规则的W宽度(列内)循环移位,并输出至节点缓存(RAM_P0或RAM_P0)。
(7)节点缓存(RAM_P)。双输入双输出RAM单元,由RAM_P0和RAM_P1组成,分别存储第一帧和第二帧LDPC译码中间数据,变量节点更新(VPR)和校验节点更新(SPR)交替对两个RAM进行更新操作。每个节点缓存(RAM_P0或RAM_P1)存入1帧译码中间数据,占用内存大小为WLA比特,存储L×W×A比特中间数据(矩阵),其中W并行译码路数,L为一个译码Q块重,A为输入信息量化,则节点缓存(RAM_P)共计占用内存为2WLA比特。
(8)校验节点更新(SPR)。由W个独立校验节点更新(SPR)模块组成,校验节点每次更新从节点缓存(RAM_P0或RAM_P1交替使用)中按Ix_c控制字的个数读取多个A比特量化中间数据,按校验节点更新(SPR)规则更新后,再按Ix_c控制字存储至节点缓存(RAM_P0或RAM_P1交替使用)中。
(9)输出缓存(RAM_O)。单输入单输出RAM单元,由变量节点更新(VPR)进行输入控制,由串并转换(S2P)进行输出控制。输出缓存(RAM_O)存入1帧译码后的信息数据,占用内存大小为NR比特,存储NR比特似然比数据(矩阵),其中N为编码后信息长度,R为码率。
(10)Ix_c、Iy_c和It_a、It_c控制字。Ix_c为校验节点更新(SPR)控制字,是校验矩阵每个按行块中的每行行重的集合,Iy_c为变量节点更新(VPR)控制字,是校验矩阵按列块中的每块首列列重的集合。It_a为变量节点更新(VPR)控制字,是中间数据的读取地址。It_c为交织器控制字,是对W宽度的中间数据的列内循环移位控制字。
应用时,图2所示的译码器的译码流程主要有五个部分组成:初始化、译码输入、变量节点更新、校验节点更新和译码输出。
(1)初始化:节点缓存(RAM_P0和RAM_P1)置零,校验节点更新(SPR)载入Ix_c控制字、变量节点更新(VPR)载入Iy_c控制字和It_a控制字、交织器(It)载入It_c控制字。
(2)译码流程:初始化完成后,同时进行译码输入(S2P+RAM_L)、校验检点更新(RAM_P+SPR)、变量节点更新(RAM_L+VPR+It+It1+RAM_P)等流程,这几个流程可以组成图3至图6几个不同的操作组合。
针对译码输入流程:
译码输入时串并转换(S2P)和一个输入缓存(RAM_L)组成操作组合。串并转换(S2P)在检测到输入使能有效时计数器开始计数。5G标准或DVB标准LDPC码前面系统码时,计数器除以W取余作为输入缓存(RAM_L)的行选信号,计数器除以W取整作为每个输入缓存(RAM_L)地址信号;DVB标准LDPC码后面校验码时,计数器除以Q取余加系统码存储地址偏移后作为每个输入缓存(RAM_L)地址信号,计数器除以Q取整作为W个输入缓存(RAM_L)行选信号。整个码字输入结束后,开始译码。变量节点更新(VPR)和校验节点更新(SPR)按顺序都执行一次操作称为一次译码迭代。
针对变量节点更新流程:
变量节点每次更新操作由变量节点更新(VPR)、一个输入缓存(RAM_L)、一个节点缓存(RAM_P)、正交织器(It0)和逆交织器(It1)组成操作组合,同时需要It_a控制字、It_c控制字、Iy_c控制字参与。是系统最复杂的操作。更新流程为:首先变量节点更新(VPR)根据Iy_c控制字按顺序读取一组It_a控制字,作为读取地址送至节点缓存(RAM_P),读取相应地址上的一组W宽度节点缓存(RAM_P)数据,这组W宽度数据按照It_c控制字经正交织器(It0)进行W宽度循环移位后,按组送入每个变量节点更新(VPR)。变量节点更新(VPR)同时按顺序读取输入缓存(RAM_L)W宽度的一个似然比数据,与这组W宽度节点缓存(RAM_P)数据一起进行节点更新运算;更新后的数据送入W宽度逆交织器(It1),根据It_c控制字进行W宽度逆循环移位后,再按照It_a地址存回节点缓存(RAM_P)中。
针对校验节点更新流程:
校验节点每次更新操作由校验节点更新(SPR)、一个节点缓存(RAM_P)组成操作组合,同时需要Ix_c控制字参与。更新流程为:首先校验节点更新(SPR)按顺序读取Ix_c控制字,按照控制字读取一组W宽度节点缓存(RAM_P)数据,送入每个校验节点更新(SPR)模块进行更新运算。更新后的数据按照Ix_c控制字存回节点缓存(RAM_P)中。
(3)译码输出。当校验节点更新(SPR)的译码迭代次数达到最大译码迭代次数时,执行译码输出。更新流程为:按照变量节点更新(VPR)流程读出节点缓存(RAM_P)和输入缓存(RAM_L),送入每个译码输出模块进行运算,并按W路输出译码硬判决数据。同时按照变量节点更新(VPR)流程把零存入节点缓存(RAM_P)中,实现清零
本申请的又一实施例提供了一种译码器,如图7所示,该译码器70包括:译码模式确定模块701、双路矩阵确定模块702、中间矩阵确定模块703以及译码编译处理模块704。
其中,译码模式确定模块701,用于基于待处理的准循环LDPC码比特流,确定译码模式;
双路矩阵确定模块702,用于若译码模式为双路译码模式,则确定准循环LDPC码比特流包括的两路输入信号分别对应的似然比数据矩阵;
中间矩阵确定模块703,用于对两路输入信号分别对应的似然比数据矩阵执行迭代译码处理,得到两路输入信号分别对应的中间数据矩阵;
译码编译处理模块704,用于依据两路输入信号各自对应的似然比数据矩阵和中间数据矩阵进行编码,得到准循环LDPC码。
本申请实施例,本申请实施例通过确定待处理的准循环LDPC码比特流的译码模式,以在译码模式为双路译码模式的条件下,确定准循环LDPC码比特流包括的两路输入信号分别对应的似然比数据矩阵,对两路输入信号分别对应的似然比数据矩阵执行迭代译码处理,得到两路输入信号分别对应的中间数据矩阵,从而依据两路输入信号各自对应的似然比数据矩阵和中间数据矩阵进行编码,以得到准循环LDPC码,这种同时对两路输入信号进行迭代译码处理的方式,缩短了迭代译码消耗的时间,降低了译码器的计算开销,起到了通过并行处理两路输入信号来提高译码器编码效率的效果。
进一步地,双路矩阵确定模块包括:
校验位调整子模块,用于对两路输入信号分别对应的比特流进行校验位调整处理;
串并转换处理子模块,用于依据校验位调整处理后的两路输入信号分别对应的比特流,进行串并转换处理,得到两路输入信号分别对应的似然比数据矩阵。
进一步地,串并转换处理子模块包括:
矩阵存储单元,用于将先后完成串并转换处理的两路输入信号分别对应的似然比数据矩阵,在预设的两个存储模块中执行乒乓存储处理。
进一步地,中间矩阵确定模块包括以下至少一个子模块:
第一控制子模块,用于若一路输入信号正在被预设的变量节点进行处理,则控制预设的校验节点另一路输入信号对应的似然比数据矩阵进行校验更新;
第二控制子模块,用于若一路输入信号正在被预设的校验节点进行处理,则控制预设的变量节点对另一路输入信号对应的似然比数据矩阵进行变量更新。
进一步地,中间矩阵确定模块还包括:
迭代停止子模块,用于若校验节点对任一路输入信号执行迭代处理的次数达到预设迭代次数阈值,则停止对该任一路输入信号进行迭代处理,得到该任一路输入信号对应的中间数据矩阵。
进一步地,译码模式确定模块包括:
比特流获取子模块,用于获取准循环LDPC码比特流;
比特计数子模块,用于对准循环LDPC码比特流包括的符号进行计数;
帧数确定子模块,用于依据计数结果,确定准循环LDPC码比特流包括的输入信号的帧数;
第一模式确定子模块,用于若帧数为2,则确定译码模式为双路译码模式。
进一步地,译码模式确定模块还包括:
第二模式确定子模块,用于若帧数为1,且在预定时长内未接收到新的准循环LDPC码比特流,则停止执行获取准循环LDPC码比特流的步骤,并确定译码模式为单路译码模式,以依据单路译码模式对准循环LDPC码比特流进行译码处理。
本实施例的译码器可执行本申请实施例提供的准循环LDPC码译码方法,其实现原理相类似,此处不再赘述。
本申请又一实施例提供了一种终端,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,该处理器执行计算机程序时以实现上述准循环LDPC码译码方法。
具体地,处理器可以是CPU,通用处理器,DSP,ASIC,FPGA或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
具体地,处理器通过总线与存储器连接,总线可包括一通路,以用于传送信息。总线可以是PCI总线或EISA总线等。总线可以分为地址总线、数据总线、控制总线等。
存储器可以是ROM或可存储静态信息和指令的其他类型的静态存储设备,RAM或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM、CD-ROM或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
可选的,存储器用于存储执行本申请方案的计算机程序的代码,并由处理器来控制执行。处理器用于执行存储器中存储的应用程序代码,以实现上述实施例提供的译码器的动作。
本申请又一实施例提供了一种计算机可读存储介质,存储有计算机可执行指令,该计算机可执行指令用于执行上述准循环LDPC码译码方法。
以上所描述的装置实施例仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
以上是对本申请的较佳实施进行了具体说明,但本申请并不局限于上述实施方式,熟悉本领域的技术人员在不违背本申请精神的前提下还可做出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。

Claims (9)

1.一种准循环LDPC码译码方法,其特征在于,包括:
基于待处理的准循环LDPC码比特流,确定译码模式;
若所述译码模式为双路译码模式,则确定所述准循环LDPC码比特流包括的两路输入信号分别对应的似然比数据矩阵;
对两路所述输入信号分别对应的似然比数据矩阵执行迭代译码处理,得到两路所述输入信号分别对应的中间数据矩阵;
依据两路所述输入信号各自对应的所述似然比数据矩阵和所述中间数据矩阵进行编码,得到准循环LDPC码;
其中,所述对两路所述输入信号分别对应的似然比数据矩阵执行迭代译码处理,得到两路所述输入信号分别对应的中间数据矩阵,包括以下至少一个步骤:
若一路所述输入信号正在被预设的变量节点进行处理,则控制预设的校验节点对另一路所述输入信号对应的所述似然比数据矩阵进行校验更新;
若一路所述输入信号正在被预设的校验节点进行处理,则控制预设的变量节点对另一路所述输入信号对应的所述似然比数据矩阵进行变量更新。
2.根据权利要求1所述的方法,其特征在于,所述确定所述准循环LDPC码比特流包括的两路输入信号分别对应的似然比数据矩阵的步骤,包括:
对两路所述输入信号分别对应的比特流进行校验位调整处理;
依据校验位调整处理后的两路所述输入信号分别对应的比特流,进行串并转换处理,得到两路所述输入信号分别对应的似然比数据矩阵。
3.根据权利要求2所述的方法,其特征在于,所述依据校验位调整处理后的两路所述输入信号分别对应的比特流,进行串并转换处理的步骤,还包括:
将先后完成串并转换处理的两路所述输入信号分别对应的所述似然比数据矩阵,在预设的两个存储模块中执行乒乓存储处理。
4.根据权利要求1所述的方法,其特征在于,所述对两路所述输入信号分别对应的似然比数据矩阵执行迭代译码处理,得到两路所述输入信号分别对应的中间数据矩阵的步骤,还包括:
若所述校验节点对任一路所述输入信号执行迭代处理的次数达到预设迭代次数阈值,则停止对该任一路所述输入信号进行迭代处理,得到该任一路所述输入信号对应的所述中间数据矩阵。
5.根据权利要求1所述的方法,其特征在于,所述基于待处理的准循环LDPC码比特流,确定译码模式的步骤,包括:
获取所述准循环LDPC码比特流;
对所述准循环LDPC码比特流包括的符号进行计数;
依据计数结果,确定所述准循环LDPC码比特流包括的所述输入信号的帧数;
若所述帧数为2,则确定所述译码模式为双路译码模式。
6.根据权利要求5所述的方法,其特征在于,所述所述基于待处理的准循环LDPC码比特流,确定译码模式的步骤,还包括:
若所述帧数为1,且在预定时长内未接收到新的所述准循环LDPC码比特流,则确定所述译码模式为单路译码模式,以依据所述单路译码模式对所述准循环LDPC码比特流进行译码处理。
7.一种译码器,其特征在于,包括:
译码模式确定模块,用于基于待处理的准循环LDPC码比特流,确定译码模式;
双路矩阵确定模块,用于若所述译码模式为双路译码模式,则确定所述准循环LDPC码比特流包括的两路输入信号分别对应的似然比数据矩阵;
中间矩阵确定模块,用于对两路所述输入信号分别对应的似然比数据矩阵执行迭代译码处理,得到两路所述输入信号分别对应的中间数据矩阵;
译码编译处理模块,用于依据两路所述输入信号各自对应的所述似然比数据矩阵和所述中间数据矩阵进行编码,得到准循环LDPC码;
其中,所述中间矩阵确定模块包括以下至少一个子模块:
第一控制子模块,用于若一路输入信号正在被预设的变量节点进行处理,则控制预设的校验节点另一路输入信号对应的似然比数据矩阵进行校验更新;
第二控制子模块,用于若一路输入信号正在被预设的校验节点进行处理,则控制预设的变量节点对另一路输入信号对应的似然比数据矩阵进行变量更新。
8.一种终端,包括:存储器、处理器及存储在该存储器上并可在该处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序以实现权利要1至6中任一项所述的方法。
9.一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行权利要求1至6中任一项所述的方法。
CN202011193430.1A 2020-10-30 2020-10-30 准循环ldpc码译码方法、译码器、终端及介质 Active CN112367085B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011193430.1A CN112367085B (zh) 2020-10-30 2020-10-30 准循环ldpc码译码方法、译码器、终端及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011193430.1A CN112367085B (zh) 2020-10-30 2020-10-30 准循环ldpc码译码方法、译码器、终端及介质

Publications (2)

Publication Number Publication Date
CN112367085A CN112367085A (zh) 2021-02-12
CN112367085B true CN112367085B (zh) 2024-01-12

Family

ID=74513641

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011193430.1A Active CN112367085B (zh) 2020-10-30 2020-10-30 准循环ldpc码译码方法、译码器、终端及介质

Country Status (1)

Country Link
CN (1) CN112367085B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115037412B (zh) * 2022-05-23 2023-11-17 山东大学 高动态通信系统中联合载波同步的自适应迭代译码方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102075198A (zh) * 2011-01-11 2011-05-25 上海交通大学 准循环低密度奇偶校验卷积码编译码系统及其编译码方法
CN103618556A (zh) * 2013-12-11 2014-03-05 北京理工大学 基于rmp调度的部分并行qc-ldpc译码方法
CN106571829A (zh) * 2016-10-27 2017-04-19 西安空间无线电技术研究所 一种基于fpga的高速自适应dvb‑s2 ldpc译码器及译码方法
CN110278000A (zh) * 2019-07-16 2019-09-24 南京中科晶上通信技术有限公司 基于dvb-s2标准的ldpc码并行译码fpga实现架构及译码方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101212277A (zh) * 2006-12-29 2008-07-02 中兴通讯股份有限公司 支持多协议标准的ldpc码译码装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102075198A (zh) * 2011-01-11 2011-05-25 上海交通大学 准循环低密度奇偶校验卷积码编译码系统及其编译码方法
CN103618556A (zh) * 2013-12-11 2014-03-05 北京理工大学 基于rmp调度的部分并行qc-ldpc译码方法
CN106571829A (zh) * 2016-10-27 2017-04-19 西安空间无线电技术研究所 一种基于fpga的高速自适应dvb‑s2 ldpc译码器及译码方法
CN110278000A (zh) * 2019-07-16 2019-09-24 南京中科晶上通信技术有限公司 基于dvb-s2标准的ldpc码并行译码fpga实现架构及译码方法

Also Published As

Publication number Publication date
CN112367085A (zh) 2021-02-12

Similar Documents

Publication Publication Date Title
KR100703271B1 (ko) 통합노드 프로세싱을 이용한 저밀도 패리티 검사 코드복호 방법 및 장치
RU2369008C2 (ru) Устройство и способ кодирования-декодирования блочного кода проверки на четность с низкой плотностью с переменной длиной блока
JP4038518B2 (ja) 低密度パリティ検査コードを効率的に復号する方法及び装置
KR101951663B1 (ko) Crc 부호와 극 부호에 의한 부호화 방법 및 장치
KR100594818B1 (ko) 순차적 복호를 이용한 저밀도 패리티 검사 부호의 복호장치 및 그 방법
US20110010602A1 (en) Method and apparatus for performing decoding using ldpc code
JP4777876B2 (ja) ターボデコーダの反復の早期終了
KR100941680B1 (ko) 준순환 저밀도 패리티 검사 부호의 생성 방법 및 장치
JP2004186940A (ja) 誤り訂正符号復号装置
Cammerer et al. Combining belief propagation and successive cancellation list decoding of polar codes on a GPU platform
CN112367085B (zh) 准循环ldpc码译码方法、译码器、终端及介质
CN110999092B (zh) 非二进制ldpc码的简化的预排序的基于校正子的扩展最小和(ems)解码
KR20080072392A (ko) 통신 시스템에서 신호 수신 장치 및 방법
WO2021188513A1 (en) List decoding of polarization-adjusted convolutional codes
WO2007037713A1 (en) Modified turbo-decoding message-passing algorithm for low-density parity check codes
CN112104412B (zh) 一种适用于低轨卫星宽带通信的加速器
US7631250B2 (en) Method and apparatus for self-compensation on belief-propagation algorithm
CN115037310B (zh) 一种基于随机计算的5g ldpc译码器性能优化方法及架构
KR20210099388A (ko) Ldpc 복호 방법 및 ldpc 복호 장치
CN111431543B (zh) 可变码长可变码率qc-ldpc译码方法及装置
CN116073839A (zh) 一种提升ldpc译码器短码译码效率的方法及装置
US8446813B1 (en) Method, apparatus and computer program for solving control bits of butterfly networks
KR20080068218A (ko) 통신 시스템에서 데이터 수신 방법 및 장치
CN110190856A (zh) 一种ldpc码的解码方法和解码装置
WO2022199529A1 (zh) 一种数据编码处理方法、装置、存储介质及电子装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 211135 floor 1-3, auxiliary building, building 6, artificial intelligence Industrial Park, Nanjing City, Jiangsu Province

Applicant after: Zhongke Nanjing mobile communication and computing Innovation Research Institute

Address before: 211135 floor 1-3, auxiliary building, building 6, artificial intelligence Industrial Park, Nanjing City, Jiangsu Province

Applicant before: INSTITUTE OF COMPUTING TECHNOLOGY, CHINESE ACADEMY OF SCIENCES, NANJING INSTITUTE OF MOBILE COMMUNICATIONS AND COMPUTING INNOVATION

TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20220322

Address after: No. 215, Qilin Industrial Park, Nanjing hi tech Development Zone, Jiangsu Province

Applicant after: Nanjing Zhongke Crystal Communication Technology Co.,Ltd.

Address before: 211135 floor 1-3, auxiliary building, building 6, artificial intelligence Industrial Park, Nanjing City, Jiangsu Province

Applicant before: Zhongke Nanjing mobile communication and computing Innovation Research Institute

GR01 Patent grant
GR01 Patent grant