CN109495115A - 一种基于fpga的ldpc译码器及译码方法 - Google Patents

一种基于fpga的ldpc译码器及译码方法 Download PDF

Info

Publication number
CN109495115A
CN109495115A CN201811295448.5A CN201811295448A CN109495115A CN 109495115 A CN109495115 A CN 109495115A CN 201811295448 A CN201811295448 A CN 201811295448A CN 109495115 A CN109495115 A CN 109495115A
Authority
CN
China
Prior art keywords
module
hard decision
check
information
variable node
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.)
Granted
Application number
CN201811295448.5A
Other languages
English (en)
Other versions
CN109495115B (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.)
Harbin Institute of Technology
Original Assignee
Harbin Institute of Technology
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 Harbin Institute of Technology filed Critical Harbin Institute of Technology
Priority to CN201811295448.5A priority Critical patent/CN109495115B/zh
Publication of CN109495115A publication Critical patent/CN109495115A/zh
Application granted granted Critical
Publication of CN109495115B publication Critical patent/CN109495115B/zh
Expired - Fee Related 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/1105Decoding
    • H03M13/1111Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
    • H03M13/1125Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms using different domains for check node and bit node processing, wherein the different domains include probabilities, likelihood ratios, likelihood differences, log-likelihood ratios or log-likelihood difference pairs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0076Distributed coding, e.g. network coding, involving channel coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)

Abstract

一种基于FPGA的LDPC译码器及译码方法,它属于通信领域中信道编码技术领域。本发明解决了如何在减少硬件资源开销的同时提高LDPC译码器的吞吐率的问题。本发明利用兵乓缓存的方法将串行电路与并行部分分离,各部分采用独立的时钟,以保证连续数据流的流入流出与高吞吐率;而且本发明采用一种新的循环存储的方式以解决地址冲突问题,避免了桶形移位寄存器或连接网络的使用,同时减小了译码电路硬件资源占用率。当采用本发明的部分并行译码结构,并行度为7,主时钟频率选择110MHz,码率7/8,子矩阵维度511,迭代次数15次,平均变量节点更新时钟数为1.008时,吞吐率达到的最大值约为356.48Mbps。本发明可以应用于通信领域中信道编码技术领域。

Description

一种基于FPGA的LDPC译码器及译码方法
技术领域
本发明属于通信领域中信道编码技术领域,具体涉及一种LDPC译码器及译码方法。
背景技术
随着现代通信技术的不断进步,通信系统逐渐向吞吐率更高、容量更大及可靠性更高的方向发展,纠错码作为一类信道编码,是一种提高通信质量的主要方法。其中,LDPC码是一种性能逼近香农限的分组码,具有抗连续突发错误、纠错能力强、实现复杂度低、译码时延小的特点。
适合硬件实现的最小和译码算法目前已得到广泛应用。规定Rcv代表第c个校验节点到第v个变量节点传递的置信度信息,Lvc代表第v个变量节点到第c个校验节点传递的置信度信息,Rmv代表第m个校验节点到第v个变量节点传递的置信度信息,Lnc代表第n个变量节点到第c个校验节点传递的置信度信息,N(c)为与第c个校验节点相连的所有变量节点的集合,N(c)\v则为N(c)中除去变量节点v后的变量节点集合,M(v)为与第v个变量节点相连的所有校验节点的集合,M(v)\c则为M(v)中除去校验节点c后的校验节点集合,Rv表示接收到的对数似然比,Lv表示后验概率值。
则有
对Lv硬判决即可得到译码结果。
在实际译码器设计中,希望利用有限的硬件资源提高LDPC译码器的吞吐率,因此必须提高LDPC译码主体部分的并行度。
但译码器主体部分之外的连接电路需要采用串行数据传输方式,以便于其他模块,如解调模块、协议解析模块或信元译码模块连接。因此,为了提高译码器的吞吐率,如何处理串并行关系是重点考虑的问题。
提高译码器并行度时,需要使每次增加每个内存地址上存储数据的个数,但这样会造成地址冲突。为了规避内存冲突,Wang给出了一种解决方案,即一旦发生地址冲突,就先将数据缓存,直到所有需要的数据都被读取出来后,再将数据拼接,忽略不需要的数据。假设最恶劣情况下需要访问三个地址,那么需要两个寄存器,存储前两个地址的中间变量,这部分电路称作选择网络。
但在这种结构中,选择器MUX的电路十分复杂。因此,为简化选择器电路,减少硬件开销,同时减少变量节点译码延时,有必要提出更加简洁的规避地址冲突的方法。综上所述,如何在减少硬件资源开销的同时提高LDPC译码器的吞吐率是LDPC码应用于实际系统中必须解决的问题。
发明内容
本发明的目的是为解决如何在减少硬件资源开销的同时提高LDPC译码器的吞吐率的问题。
本发明为解决上述技术问题采取的技术方案是:
本发明的一个方面:提供了一种基于FPGA的LDPC译码器,所述LDPC译码器包括包括信道似然比乒乓存储模块、置信度消息存储模块、硬判决信息存储模块、译码结果乒乓缓存模块、校验节点更新模块、变量节点更新模块、硬判决校验模块、控制模块及输出模块;
所述信道似然比乒乓存储模块用于接收、并存储输入到译码器的信道对数似然比信息,并将信道对数似然比信息提供给所述变量节点更新模块;
所述置信度消息存储模块用于存储校验节点更新模块与变量节点更新模块计算得到的的置信度消息;
所述校验节点更新模块用于完成校验节点到变量节点置信度消息的计算,并将置信度消息存储到置信度消息存储模块;
所述变量节点更新模块用于完成变量节点到校验节点置信度消息的计算,并将置信度消息存储到置信度消息存储模块;并进行变量节点似后验概率的计算,并根据变量节点似后验概率进行硬判决,输出硬判决信息和译码结果;
所述硬判决信息存储模块用来接收、并存储变量节点更新模块每次迭代输出的硬判决信息;
所述硬判决校验模块用于读取硬判决信息存储模块输出的的硬判决信息并进行校验;
所述控制模块用于控制整个软判决迭代译码有序进行;
所述译码结果乒乓缓存模块用来接收、并存储译码结果;
所述输出模块用于输出译码结果。
本发明的另一个方面:提供了一种基于FPGA的LDPC译码器的译码方法,该方法通过以下步骤实现:
步骤一、初始化译码器:信道似然比乒乓存储模块接收、并存储输入到译码器的信道对数似然比信息,将置信度消息存储模块内的信息初始化为输入到译码器的信道对数似然比信息;
步骤二、校验节点更新模块利用置信度消息存储模块内的信息计算校验节点到变量节点置信度消息,并将计算出的置信度消息存储到置信度消息存储模块;
步骤三、变量节点更新模块利用置信度消息存储模块内的校验节点到变量节点的置信度信息和信道似然比乒乓存储模块内存储的信道对数似然比信息计算变量节点到校验节点置信度消息和似后验概率,并将计算出的变量节点到校验节点置信度消息存储到置信度消息存储模块,通过似后验概率进行硬判决,将硬判决信息输出给硬判决信息存储模块;
步骤四、硬判决信息存储模块存储硬判决信息,并将硬判决信息输出给硬判决校验模块,若硬判决校验模块的检验结果为c×HT=0,H为校验矩阵,c为硬判决信息,则变量节点更新模块输出译码结果给译码结果乒乓缓存模块,译码结果乒乓缓存模块存储译码结果,并将译码结果输出给输出模块,输出模块输出译码结果;
若硬判决校验模块的检验结果为c×HT≠0,则返回步骤二;
直至硬判决校验模块的检验结果为c×HT=0或达到最大迭代次数,则变量节点更新模块将本次迭代译码结果输出给译码结果乒乓缓存模块,译码结果乒乓缓存模块存储译码结果,并将译码结果输出给输出模块,输出模块输出译码结果。
本发明的有益效果是:本发明提供了一种基于FPGA的LDPC译码器及译码方法,本发明利用兵乓缓存的方法将串行电路与并行部分分离,各部分采用独立的时钟,以保证连续数据流的流入流出与高吞吐率;而且本发明采用一种新的循环存储的方式以解决地址冲突问题,避免了桶形移位寄存器或连接网络的使用,同时减小了译码电路硬件资源占用率。当采用本发明的部分并行译码结构,码型为(8176,7154)规则QC-LDPC码,并行度为7,主时钟频率选择110MHz,码率7/8,子矩阵维度511,迭代次数15次,平均变量节点更新时钟数为1.008时,吞吐率达到的最大值约为356.48Mbps。
附图说明
图1是本发明的一种基于FPGA的LDPC译码器的整体框架图;
图2是本发明信道似然比乒乓存储模块的工作原理图;
图3是本发明的置信度消息存储分配示意图;
图4是本发明的校验节点更新模块处理过程示意图;
图5是本发明的变量节点更新模块处理过程示意图;
其中:n为校验矩阵的列重;
图6是本发明的LDPC译码流程图;
具体实施方式
具体实施方式一:如图1所示,本实施方式所述的一种基于FPGA的LDPC译码器,所述LDPC译码器包括包括信道似然比乒乓存储模块、置信度消息存储模块、硬判决信息存储模块、译码结果乒乓缓存模块、校验节点更新模块、变量节点更新模块、硬判决校验模块、控制模块及输出模块;
所述信道似然比乒乓存储模块用于接收、并存储输入到译码器的信道对数似然比信息,并将信道对数似然比信息提供给所述变量节点更新模块;
所述置信度消息存储模块用于存储校验节点更新模块与变量节点更新模块计算得到的的置信度消息;
所述校验节点更新模块用于完成校验节点到变量节点置信度消息的计算,并将置信度消息存储到置信度消息存储模块;
所述变量节点更新模块用于完成变量节点到校验节点置信度消息的计算,并将置信度消息存储到置信度消息存储模块;并进行变量节点似后验概率的计算,并根据变量节点似后验概率进行硬判决,输出硬判决信息和译码结果;
所述硬判决信息存储模块用来接收、并存储变量节点更新模块每次迭代输出的硬判决信息;
所述硬判决校验模块用于读取硬判决信息存储模块输出的的硬判决信息并进行校验;
所述控制模块用于控制整个软判决迭代译码有序进行;
所述译码结果乒乓缓存模块用来接收、并存储译码结果;
所述输出模块与译码结果乒乓缓存模块连接,用于输出译码结果。
所述信道似然比乒乓存储模块利用乒乓存储对结构,将存储对的一侧用来完成串行数据输入,另一侧用来完成高并行度的译码数据交换。该模块包括16对位宽为P×8,深度为511/P的RAM_DATA1’~RAM_DATA16’(DATA1’~DATA16’分别代表第1对到第16对RAM)。如图2所示,每P个消息按顺序存入一个内存地址中。这种存储方式可以保证垂直更新时可同时读入P×16个似然比信息,提高了LDPC译码主体部分的并行度和译码器的吞吐率。
如图3所示,置信度消息存储模块采用一种新的循环存储方式来规避地址冲突,对于内存中置信度信息没有存满的最后一个地址,在其中填充首个地址的前几位数据,避免了最恶劣的地址冲突情况,节省了硬件开销。
由于变量节点与校验节点每次处理的数据量是相同的,因此在读取最后一个地址中数据之前或之后,选择前一地址和后一地址中数据的位置是固定的,仅在读完最后一个地址中数据之后有所不同。该循环存储方法可以极大的简化选择器的电路,而不需要大量的判断过程。每次读取到的数据与上一次读取的数据拼接,读取的数据仅经过一个延时器,选取其中的连续P位输出。这个过程仅需控制输出窗口的位置即可,而输出窗口的位置在每次迭代过程中仅改变一次。
如图4所示,在控制模块的控制下,校验节点更新模块读取置信度消息存储模块中对应的置信度消息并通过计算校验节点到相邻变量节点的置信度消息来进行校验节点的更新,然后将当前次迭代得到的校验节点到相邻变量节点的置信度消息存储到置信度消息存储模块;
校验节点更新模块由2×P个校验节点处理单元构成,每次工作能同时处理P行置信消息。其工作过程如下:首先,按顺序读出置信度消息存储模块中的信息,由于置信度消息在存储器中是按行的排序从小到大存储,因此地址只需依次自加即可。然后,将读取的置信度消息求绝对值,将绝对值送入比较器网;最后加入符号位,得到变量节点传递给每个相邻变量节点的置信度消息,将信息按原地址写回置信度消息存储单元中。
在控制模块的控制下,所述变量节点处理模块从置信度消息存储模块与信道似然比乒乓存储模块中分别读取对应地址的数据,并通过计算变量节点到相邻校验节点的置信度消息来进行变量节点的更新,然后将当前次迭代得到的变量节点到相邻校验节点的置信度消息存储到置信度消息存储模块;
同时,该模块计算变量节点的似后验概率用以进行硬判决,再将当前次迭代过程中得到的硬判决结果输出至硬判决信息存储模块。此外,最后还将译码结果输出至译码结果乒乓缓存模块。
变量节点更新模块由16×P个变量节点处理单元构成,也是P路并行。变量节点处理模块的工作过程如下所述。首先,读取对应地址的数据,将数据送入选择网络;然后,计算每一个变量节点向校验节点传递的置信度消息,其传递的置信消息为该列非自身的所有校验节点置信度信息与该列对应的信道似然比之和。每一个变量节点处理单元处理过程的示意图都可以用图5表示。
硬判决校验模块为P路并行,每次判决P行硬判决信息。若所有的行都满足校验式,则输出校验成功信号送给控制模块,控制模块将终止迭代,并输出译码结果。否则,继续迭代直到达到最大迭代次数。
具体实施方式二:本实施方式与具体实施方式一不同的是:所述信道似然比乒乓存储模块为乒乓存储对结构。
具体实施方式三:本实施方式与具体实施方式二不同的是:所述信道似然比乒乓存储模块包括16对位宽为P×8,深度为511/P的RAM,P为置信度消息存储模块每个地址的数据位数。
具体实施方式四:本实施方式与具体实施方式三不同的是:所述置信度消息存储模块包括64个位宽为P×8,深度为511/P的RAM。
具体实施方式五:如图6所示,本实施方式所述一种基于FPGA的LDPC译码器的译码方法,该方法通过以下步骤实现:
步骤一、初始化译码器:信道似然比乒乓存储模块接收、并存储输入到译码器的信道对数似然比信息,将置信度消息存储模块内的信息初始化为输入到译码器的信道对数似然比信息;
步骤二、校验节点更新模块利用置信度消息存储模块内的信息计算校验节点到变量节点置信度消息,并将计算出的置信度消息存储到置信度消息存储模块;
步骤三、变量节点更新模块利用置信度消息存储模块内的校验节点到变量节点的置信度信息和信道似然比乒乓存储模块内存储的信道对数似然比信息计算变量节点到校验节点置信度消息和似后验概率,并将计算出的变量节点到校验节点置信度消息存储到置信度消息存储模块,通过似后验概率进行硬判决,将硬判决信息输出给硬判决信息存储模块;
步骤四、硬判决信息存储模块存储硬判决信息,并将硬判决信息输出给硬判决校验模块,若硬判决校验模块的检验结果为c×HT=0,H为校验矩阵,c为硬判决信息,则变量节点更新模块输出译码结果给译码结果乒乓缓存模块,译码结果乒乓缓存模块存储译码结果,并将译码结果输出给输出模块,输出模块输出译码结果;
若硬判决校验模块的检验结果为c×HT≠0,则返回步骤二;
直至硬判决校验模块的检验结果为c×HT=0或达到最大迭代次数,则变量节点更新模块将本次迭代译码结果输出给译码结果乒乓缓存模块,译码结果乒乓缓存模块存储译码结果,并将译码结果输出给输出模块,输出模块输出译码结果。
若在达到最大迭代次数之前,出现检验结果c×HT=0,则将检验结果c×HT=0对应的迭代译码结果输出给译码结果乒乓缓存模块,若在达到最大迭代次数之前一直未出现检验结果c×HT=0,则将最大迭代次数对应的译码结果输出给译码结果乒乓缓存模块。
具体实施方式六:本实施方式与具体实施方式五不同的是:所述信道似然比乒乓存储模块接收、并存储输入到译码器的信道对数似然比信息,其具体过程为:
信道似然比乒乓存储模块的16对RAM分为上半部分存储阵列和下半部分存储阵列两个部分,在工作中的某一时刻,输入端将信道对数似然比信息存入上半部分存储阵列中,此时,下半部分存储阵列应为上一帧码字的信道对数似然比信息,信道对数似然比信息以16路并行的方式送入变量节点更新模块以保证译码的正常进行;
当上半部分存储阵列存满,上一帧码字也译码完成之后,输入侧开始将初始信道信息存入下半部分存储阵列,上半部分存储阵列的数据用来进行本次译码。
每对RAM中的一个共同组成上半部分存储阵列,每对RAM中的另一个共同组成下半部分存储阵列。
具体实施方式七:本实施方式与具体实施方式六不同的是:所述置信度消息存储到置信度消息存储模块,其具体过程为:
采用一种新的循环存储方式来规避地址冲突,对于置信度消息存储模块内存中置信度信息没有存满的最后一个地址,若最后一个地址剩余m位未存满,则将首个地址的前m位数据依次填充在最后一个地址的末位数据后;
避免了最恶劣的地址冲突情况,节省了硬件开销。
对于并行度为P的译码器,变量节点更新模块每次从置信度消息存储模块读取到的数据则与上一次读取的数据拼接,读取的数据仅经过一个延时器,选取其中的连续P位输出。
这个过程仅需控制输出窗口的位置即可,而输出窗口的位置在每次迭代过程中仅改变一次。置信度消息存储模块每个地址的数据位数为P即译码器的并行度为P。
本发明的上述算例仅为详细地说明本发明的计算模型和计算流程,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动,这里无法对所有的实施方式予以穷举,凡是属于本发明的技术方案所引伸出的显而易见的变化或变动仍处于本发明的保护范围之列。

Claims (7)

1.一种基于FPGA的LDPC译码器,其特征在于,所述LDPC译码器包括信道似然比乒乓存储模块、置信度消息存储模块、硬判决信息存储模块、译码结果乒乓缓存模块、校验节点更新模块、变量节点更新模块、硬判决校验模块、控制模块及输出模块;
所述信道似然比乒乓存储模块用于接收、并存储输入到译码器的信道对数似然比信息,并将信道对数似然比信息提供给所述变量节点更新模块;
所述置信度消息存储模块用于存储校验节点更新模块与变量节点更新模块计算得到的的置信度消息;
所述校验节点更新模块用于完成校验节点到变量节点置信度消息的计算,并将置信度消息存储到置信度消息存储模块;
所述变量节点更新模块用于完成变量节点到校验节点置信度消息的计算,并将置信度消息存储到置信度消息存储模块;并进行变量节点似后验概率的计算,并根据变量节点似后验概率进行硬判决,输出硬判决信息和译码结果;
所述硬判决信息存储模块用来接收、并存储变量节点更新模块每次迭代输出的硬判决信息;
所述硬判决校验模块用于读取硬判决信息存储模块输出的的硬判决信息并进行校验;
所述控制模块用于控制整个软判决迭代译码有序进行;
所述译码结果乒乓缓存模块用来接收、并存储译码结果;
所述输出模块用于输出译码结果。
2.根据权利要求1所述的一种基于FPGA的LDPC译码器,其特征在于,所述信道似然比乒乓存储模块为乒乓存储对结构。
3.根据权利要求2所述的一种基于FPGA的LDPC译码器,其特征在于,所述信道似然比乒乓存储模块包括16对位宽为P×8、深度为511/P的RAM,P为置信度消息存储模块每个地址的数据位数。
4.根据权利要求3所述的一种基于FPGA的LDPC译码器,其特征在于,所述置信度消息存储模块包括64个位宽为P×8,深度为511/P的RAM。
5.基于权利要求1所述的一种基于FPGA的LDPC译码器的译码方法,其特征在于,该方法通过以下步骤实现:
步骤一、初始化译码器:信道似然比乒乓存储模块接收、并存储输入到译码器的信道对数似然比信息,将置信度消息存储模块内的信息初始化为输入到译码器的信道对数似然比信息;
步骤二、校验节点更新模块利用置信度消息存储模块内的信息计算校验节点到变量节点置信度消息,并将计算出的置信度消息存储到置信度消息存储模块;
步骤三、变量节点更新模块利用置信度消息存储模块内的校验节点到变量节点的置信度信息和信道似然比乒乓存储模块内存储的信道对数似然比信息计算变量节点到校验节点置信度消息和似后验概率,并将计算出的变量节点到校验节点置信度消息存储到置信度消息存储模块,通过似后验概率进行硬判决,将硬判决信息输出给硬判决信息存储模块;
步骤四、硬判决信息存储模块存储硬判决信息,并将硬判决信息输出给硬判决校验模块,若硬判决校验模块的检验结果为c×HT=0,H为校验矩阵,c为硬判决信息,则变量节点更新模块输出译码结果给译码结果乒乓缓存模块,译码结果乒乓缓存模块存储译码结果,并将译码结果输出给输出模块,输出模块输出译码结果;
若硬判决校验模块的检验结果为c×HT≠0,则返回步骤二;
直至硬判决校验模块的检验结果为c×HT=0或达到最大迭代次数,则变量节点更新模块将本次迭代译码结果输出给译码结果乒乓缓存模块,译码结果乒乓缓存模块存储译码结果,并将译码结果输出给输出模块,输出模块输出译码结果。
6.根据权利要求5所述的一种基于FPGA的LDPC译码器的译码方法,其特征在于,所述信道似然比乒乓存储模块接收、并存储输入到译码器的信道对数似然比信息,其具体过程为:
信道似然比乒乓存储模块的16对RAM分为上半部分存储阵列和下半部分存储阵列两个部分,在工作中的某一时刻,输入端将信道对数似然比信息存入上半部分存储阵列中,此时,下半部分存储阵列应为上一帧码字的信道对数似然比信息,信道对数似然比信息以16路并行的方式送入变量节点更新模块以保证译码的正常进行;
当上半部分存储阵列存满,上一帧码字也译码完成之后,输入侧开始将初始信道信息存入下半部分存储阵列,上半部分存储阵列的数据用来进行本次译码。
7.根据权利要求6所述的一种基于FPGA的LDPC译码器的译码方法,其特征在于,所述置信度消息存储到置信度消息存储模块,其具体过程为:
对于置信度消息存储模块内存中置信度信息没有存满的最后一个地址,若最后一个地址剩余m位未存满,则将首个地址的前m位数据依次填充在最后一个地址的末位数据后;
对于并行度为P的译码器,变量节点更新模块每次从置信度消息存储模块读取到的数据则与上一次读取的数据拼接,读取的数据仅经过一个延时器,选取其中的连续P位输出。
CN201811295448.5A 2018-11-01 2018-11-01 一种基于fpga的ldpc译码器及译码方法 Expired - Fee Related CN109495115B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811295448.5A CN109495115B (zh) 2018-11-01 2018-11-01 一种基于fpga的ldpc译码器及译码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811295448.5A CN109495115B (zh) 2018-11-01 2018-11-01 一种基于fpga的ldpc译码器及译码方法

Publications (2)

Publication Number Publication Date
CN109495115A true CN109495115A (zh) 2019-03-19
CN109495115B CN109495115B (zh) 2022-08-09

Family

ID=65693454

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811295448.5A Expired - Fee Related CN109495115B (zh) 2018-11-01 2018-11-01 一种基于fpga的ldpc译码器及译码方法

Country Status (1)

Country Link
CN (1) CN109495115B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110278000A (zh) * 2019-07-16 2019-09-24 南京中科晶上通信技术有限公司 基于dvb-s2标准的ldpc码并行译码fpga实现架构及译码方法
CN110868225A (zh) * 2019-11-29 2020-03-06 中科院计算技术研究所南京移动通信与计算创新研究院 Ldpc码译码器
CN112104412A (zh) * 2020-11-17 2020-12-18 四川九洲电器集团有限责任公司 一种适用于低轨卫星宽带通信的加速器
CN112165334A (zh) * 2020-09-16 2021-01-01 深圳航天科技创新研究院 一种基于fpga的多元ldpc高速译码器及译码方法
CN113067582A (zh) * 2019-12-13 2021-07-02 华为技术有限公司 一种并行译码方法及装置
CN113300809A (zh) * 2020-02-24 2021-08-24 大唐移动通信设备有限公司 一种数据处理方法和装置
CN113691263A (zh) * 2021-08-19 2021-11-23 Oppo广东移动通信有限公司 多比特并行校验方法及装置、存储介质及Turbo译码器

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101489135A (zh) * 2009-01-22 2009-07-22 航天恒星科技有限公司 一种方便ldpc长码在fpga实现的编码器及编码方法
CN102281125A (zh) * 2011-07-29 2011-12-14 上海交通大学 分层分块非规则低密度校验码译码器及译码方法
CN103220003A (zh) * 2013-03-29 2013-07-24 西安空间无线电技术研究所 提高节点处理并行度的qc-ldpc译码器的实现方法
CN103916134A (zh) * 2014-03-24 2014-07-09 清华大学 低密度奇偶校验码的混叠译码方法及多核协同混叠译码器
CN104579362A (zh) * 2014-12-30 2015-04-29 北京遥测技术研究所 一种空间通信系统中部分并行结构ldpc码译码系统及其方法
CN105680879A (zh) * 2016-01-07 2016-06-15 西安电子科技大学 兼容dvb-s2x标准的ldpc译码器设计方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101489135A (zh) * 2009-01-22 2009-07-22 航天恒星科技有限公司 一种方便ldpc长码在fpga实现的编码器及编码方法
CN102281125A (zh) * 2011-07-29 2011-12-14 上海交通大学 分层分块非规则低密度校验码译码器及译码方法
CN103220003A (zh) * 2013-03-29 2013-07-24 西安空间无线电技术研究所 提高节点处理并行度的qc-ldpc译码器的实现方法
CN103916134A (zh) * 2014-03-24 2014-07-09 清华大学 低密度奇偶校验码的混叠译码方法及多核协同混叠译码器
CN104579362A (zh) * 2014-12-30 2015-04-29 北京遥测技术研究所 一种空间通信系统中部分并行结构ldpc码译码系统及其方法
CN105680879A (zh) * 2016-01-07 2016-06-15 西安电子科技大学 兼容dvb-s2x标准的ldpc译码器设计方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
肖婧婷: "低复杂度LDPC码编译码算法研究与实现", 《中国优秀硕士学位论文全文数据库(电子期刊)》 *

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110278000B (zh) * 2019-07-16 2020-12-11 南京中科晶上通信技术有限公司 基于dvb-s2标准的ldpc码并行译码fpga实现架构的译码方法
CN110278000A (zh) * 2019-07-16 2019-09-24 南京中科晶上通信技术有限公司 基于dvb-s2标准的ldpc码并行译码fpga实现架构及译码方法
CN110868225A (zh) * 2019-11-29 2020-03-06 中科院计算技术研究所南京移动通信与计算创新研究院 Ldpc码译码器
CN110868225B (zh) * 2019-11-29 2023-06-06 中科南京移动通信与计算创新研究院 Ldpc码译码器
CN113067582A (zh) * 2019-12-13 2021-07-02 华为技术有限公司 一种并行译码方法及装置
CN113067582B (zh) * 2019-12-13 2024-04-12 华为技术有限公司 一种并行译码方法及装置
CN113300809B (zh) * 2020-02-24 2022-08-16 大唐移动通信设备有限公司 一种数据处理方法和装置
CN113300809A (zh) * 2020-02-24 2021-08-24 大唐移动通信设备有限公司 一种数据处理方法和装置
CN112165334A (zh) * 2020-09-16 2021-01-01 深圳航天科技创新研究院 一种基于fpga的多元ldpc高速译码器及译码方法
CN112104412B (zh) * 2020-11-17 2021-02-02 四川九洲电器集团有限责任公司 一种适用于低轨卫星宽带通信的加速器
CN112104412A (zh) * 2020-11-17 2020-12-18 四川九洲电器集团有限责任公司 一种适用于低轨卫星宽带通信的加速器
CN113691263A (zh) * 2021-08-19 2021-11-23 Oppo广东移动通信有限公司 多比特并行校验方法及装置、存储介质及Turbo译码器
CN113691263B (zh) * 2021-08-19 2024-02-27 Oppo广东移动通信有限公司 多比特并行校验方法及装置、存储介质及Turbo译码器

Also Published As

Publication number Publication date
CN109495115B (zh) 2022-08-09

Similar Documents

Publication Publication Date Title
CN109495115A (zh) 一种基于fpga的ldpc译码器及译码方法
CN109379086B (zh) 低复杂度的码率兼容的5g ldpc编码方法和编码器
CN102412847B (zh) 用联合节点处理来解码低密度奇偶校验码的方法和设备
CN109842418B (zh) 一种基于比特翻转的极化码置信传播译码方法
WO2022037504A1 (zh) 一种应用于深空通信的多模式ldpc译码器
CN111970009B (zh) 级联极化码比特翻转置信传播编译码方法
CN100425000C (zh) 双涡轮结构低密度奇偶校验码解码器及解码方法
CN106936444B (zh) 一种集合译码方法和集合译码器
TW201926911A (zh) 使用於低密度奇偶檢查碼解碼器的方法及解碼器
CN107395214B (zh) 一种基于闪存页错误特性降低ldpc译码延迟的方法
CN102857324A (zh) 基于查找表的深空通信中ldpc串行编码器和编码方法
US7185268B2 (en) Memory system and method for use in trellis-based decoding
CN113783576A (zh) 用于从循环置换矩阵的集群构建的准循环低密度奇偶校验码的垂直分层解码的方法及设备
CN111130567B (zh) 添加噪声扰动和比特翻转的极化码置信传播列表译码方法
CN108306652A (zh) 一种低复杂度极化码ca-scl译码器
CN109802688A (zh) 一种多进制ldpc译码系统和方法
CN111431543B (zh) 可变码长可变码率qc-ldpc译码方法及装置
CN112217525B (zh) 一种Turbo译码迭代次数自动更新方法
CN102064835A (zh) 适用于准循环ldpc译码的译码器
CN113055029A (zh) 一种可复用资源的系统极化码编译码一体化装置及编译码方法
CN101777920B (zh) 低密度奇偶校验码的编码方法和编码译码装置
CN108933604B (zh) 一种变量节点处理方法及装置
CN105515588B (zh) 一种ldpc‑cc高速译码器
CN101094001A (zh) 一种ldpc码的译码器装置及译码方法
CN103475378B (zh) 一种适用于光通信的高吞吐率ldpc译码器

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
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20220809