[go: up one dir, main page]

CN103618556A - Partially parallel quasi-cyclic low-density parity-check (QC-LDPC) decoding method based on row message passing (RMP) scheduling - Google Patents

Partially parallel quasi-cyclic low-density parity-check (QC-LDPC) decoding method based on row message passing (RMP) scheduling Download PDF

Info

Publication number
CN103618556A
CN103618556A CN201310676642.9A CN201310676642A CN103618556A CN 103618556 A CN103618556 A CN 103618556A CN 201310676642 A CN201310676642 A CN 201310676642A CN 103618556 A CN103618556 A CN 103618556A
Authority
CN
China
Prior art keywords
ram
module
soft information
decoding
address
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.)
Pending
Application number
CN201310676642.9A
Other languages
Chinese (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.)
Beijing Institute of Technology BIT
Original Assignee
Beijing Institute of Technology BIT
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 Beijing Institute of Technology BIT filed Critical Beijing Institute of Technology BIT
Priority to CN201310676642.9A priority Critical patent/CN103618556A/en
Publication of CN103618556A publication Critical patent/CN103618556A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Error Detection And Correction (AREA)

Abstract

本发明涉及一种基于行消息传递(RMP)调度的部分并行QC-LDPC译码方法,属于通信技术领域。本发明在采用基于RMP调度的最小和译码算法的QC-LDPC译码器中实现部分并行的译码结构,在每次迭代译码的过程中,较最小和译码算法减少了近一半的迭代延时;针对QC-LDPC校验矩阵具有的准循环特点,采用了部分并行处理的译码结构,将校验矩阵进行分区,在分区内进行并行迭代译码,译码延时和每个分区内译码并行度呈线性反比关系,成倍地提高了译码器的吞吐量,并且保证了此并行方式与串行的RMP方式具有相同的性能,使LDPC译码器适应高速数据处理的要求。

The invention relates to a partially parallel QC-LDPC decoding method based on Row Message Passing (RMP) scheduling, which belongs to the technical field of communication. The present invention implements a partially parallel decoding structure in the QC-LDPC decoder using the minimum sum decoding algorithm based on RMP scheduling, and in each iterative decoding process, compared with the minimum sum decoding algorithm, it reduces nearly half Iterative delay: In view of the quasi-cyclic characteristics of the QC-LDPC check matrix, a partial parallel processing decoding structure is used to partition the check matrix and perform parallel iterative decoding in the partitions. The decoding delay and each The decoding parallelism in the partition is linear and inversely proportional, which doubles the throughput of the decoder, and ensures that this parallel method has the same performance as the serial RMP method, making the LDPC decoder suitable for high-speed data processing. Require.

Description

基于RMP调度的部分并行QC-LDPC译码方法Partially Parallel QC-LDPC Decoding Method Based on RMP Scheduling

技术领域technical field

本发明涉及一种基于行消息传递(RMP)调度的部分并行QC-LDPC译码方法,属于通信技术领域。The invention relates to a partially parallel QC-LDPC decoding method based on Row Message Passing (RMP) scheduling, which belongs to the technical field of communication.

背景技术Background technique

低密度奇偶校验码(LDPC)是一种接近香农限的编码,其译码复杂度低、结构灵活,被广泛应用于现代通信系统,已经被多个通信与广播标准采纳。如数字卫星电视(DVB-S2)、无线局域网(WLAN)以及中国数字电视地面广播传输标准(DTMB)等。随着无线通信技术的发展,无线通信网络需具备更高速率的数据服务能力及综合实时多媒体业务,信道编码的快速译码成为迫切需求。Low-density parity-check code (LDPC) is a code close to the Shannon limit. It has low decoding complexity and flexible structure. It is widely used in modern communication systems and has been adopted by many communication and broadcasting standards. Such as digital satellite TV (DVB-S2), wireless local area network (WLAN) and China's digital TV terrestrial broadcast transmission standard (DTMB) and so on. With the development of wireless communication technology, wireless communication networks need to have higher data service capabilities and comprehensive real-time multimedia services, and fast decoding of channel coding has become an urgent need.

LDPC译码器多基于标准消息传递(SMP)的最小和算法(Min-Sum Algorithm)进行设计实现,该算法是一种对数似然比(Log-LLR)置信传播算法近似简化算法,虽然在译码性能上会有所损失,但硬件实现复杂度很低,译码过程中只存在数值比较和加减运算,适于工程实现。Most LDPC decoders are designed and implemented based on the Min-Sum Algorithm of Standard Message Passing (SMP), which is an approximate simplified algorithm of the Log-Likelihood Ratio (Log-LLR) belief propagation algorithm. There will be a loss in decoding performance, but the complexity of hardware implementation is very low, and there are only numerical comparisons and addition and subtraction operations in the decoding process, which is suitable for engineering implementation.

其译码器主要包括以下功能模块:变量节点软信息存储单元RAM_Q,与变量节点i对应存储;校验节点软信息存储单元RAM_R,与校验节点j对应存储;接收信息存储单元RAM_Y,与变量节点i对应存储;校验节点更新单元CNU,与校验节点j对应,完成校验节点更新的运算,并将结果返回给控制单元;变量节点更新单元VNU,与变量节点j对应,完成变量节点更新的运算,并将结果返回给控制单元;控制单元,用于产生各种控制信号控制译码器的读写地址,协调各个单元的工作。Its decoder mainly includes the following functional modules: variable node soft information storage unit RAM_Q, corresponding to variable node i; check node soft information storage unit RAM_R, corresponding to check node j; received information storage unit RAM_Y, corresponding to variable node i Node i corresponds to storage; check node update unit CNU, corresponding to check node j, completes the calculation of check node update, and returns the result to the control unit; variable node update unit VNU, corresponding to variable node j, completes the variable node Update the operation, and return the result to the control unit; the control unit is used to generate various control signals to control the read and write addresses of the decoder, and coordinate the work of each unit.

译码过程中,译码器接收到的软信息首先储存到接收信息存储单元RAM_Y中,随后开始初始化的过程:通过接收信息存储单元RAM_Y中的软信息对变量节点软信息存储单元RAM_Q进行更新;然后,进行校验节点更新:将变量节点软信息存储单元RAM_Q中的数据按照控制单元产生的读取地址读入校验节点更新单元CNU,完成运算,按照控制单元提供的存储地址将运算结果储存到校验节点软信息存储单元RAM_R中;接着,进行变量节点更新:将校验节点软信息存储单元RAM_R中的数据按照控制单元产生的读取地址读入变量节点更新单元VNU,完成运算,检测是否达到最大迭代次数,如果是则进行判决并将结果输出,否则按照控制单元提供的存储地址将运算结果储存到变量节点软信息存储单元RAM_Q中,并继续进行校验节点更新直到达到最大迭代次数。During the decoding process, the soft information received by the decoder is first stored in the received information storage unit RAM_Y, and then the initialization process starts: the variable node soft information storage unit RAM_Q is updated by the soft information in the received information storage unit RAM_Y; Then, update the check node: read the data in the variable node soft information storage unit RAM_Q into the check node update unit CNU according to the read address generated by the control unit, complete the calculation, and store the calculation result according to the storage address provided by the control unit to the check node soft information storage unit RAM_R; then, update the variable node: read the data in the check node soft information storage unit RAM_R into the variable node update unit VNU according to the read address generated by the control unit, complete the operation, and detect Whether the maximum number of iterations is reached, if yes, make a judgment and output the result, otherwise, store the operation result in the variable node soft information storage unit RAM_Q according to the storage address provided by the control unit, and continue to update the check node until the maximum number of iterations is reached .

2005年Radosavljevic(“Optimized message passing schedules for LDPCdecoding”,Signals,Systems and Computers,2005:591-595)提出了一种基于行消息传递(RMP)的译码算法。In 2005, Radosavljevic ("Optimized message passing schedules for LDPC decoding", Signals, Systems and Computers, 2005:591-595) proposed a decoding algorithm based on Row Message Passing (RMP).

上述译码过程的译码器主要包括以下功能模块:变量节点软信息存储单元RAM_N,与变量节点n对应存储;校验节点软信息存储单元RAM_M,与校验节点m对应存储;迭代译码更新单元ICU,完成迭代译码的运算,并将结果返回给控制单元;控制单元,用于产生各种控制信号控制译码器的读写地址,协调各个单元的工作。The decoder in the above decoding process mainly includes the following functional modules: variable node soft information storage unit RAM_N, which is stored correspondingly to variable node n; check node soft information storage unit RAM_M, which is correspondingly stored to check node m; iterative decoding update The unit ICU completes the operation of iterative decoding and returns the result to the control unit; the control unit is used to generate various control signals to control the read and write addresses of the decoder, and coordinate the work of each unit.

译码过程中,译码器接收到的软信息开始初始化的过程:将接收到的软信息存储到变量节点软信息存储单元RAM_N中,同时将校验节点软信息存储单元RAM_M进行初始化置零;然后,进行迭代更新:将变量节点软信息存储单元RAM_N和校验节点软信息存储单元RAM_M中的数据按照控制单元产生的读取地址读入迭代译码更新单元ICU,完成运算,按照控制单元提供的存储地址将运算结果储存到校验节点软信息存储单元RAM_N和校验节点软信息存储单元RAM_M中;接着,检测译码迭代是否达到最大迭代次数,如果是则进行判决并将结果输出,否则继续进行校验节点更新直到达到最大迭代次数。During the decoding process, the soft information received by the decoder starts the initialization process: the received soft information is stored in the variable node soft information storage unit RAM_N, and the check node soft information storage unit RAM_M is initialized to zero; Then, perform iterative update: read the data in the variable node soft information storage unit RAM_N and the check node soft information storage unit RAM_M into the iterative decoding update unit ICU according to the read address generated by the control unit, complete the operation, and follow the control unit to provide Store the operation result in the check node soft information storage unit RAM_N and the check node soft information storage unit RAM_M at the storage address; then, check whether the decoding iteration reaches the maximum number of iterations, if so, make a judgment and output the result, otherwise Continue with checkpoint updates until the maximum number of iterations is reached.

但是,上述的两种算法设计的译码器都存在一些问题:However, there are some problems in the decoders designed by the above two algorithms:

1.基于SMP的最小和算法每次更新都是用的上一次迭代之后的结果,每个节点更新的结果无法马上传递给其他节点,需要等到下一次迭代,导致算法的收敛速度慢。而且,每次迭代需要分别进行校验节点更新和变量节点更新,译码器每次迭代都要对存储器进行两次读取和写入操作。这些导致了译码需要更大的译码时延。1. Each update of the SMP-based minimum sum algorithm uses the result after the previous iteration. The update result of each node cannot be immediately transmitted to other nodes, and it needs to wait until the next iteration, resulting in slow convergence of the algorithm. Moreover, each iteration needs to update the check node and the variable node respectively, and the decoder needs to perform two read and write operations on the memory for each iteration. These lead to a larger decoding delay for decoding.

2.基于RMP的最小和译码算法虽然能解决一些基于SMP的最小和算法的问题,但是,从上面对基于RMP的最小和译码算法的介绍中可以看出,这种基于RMP的最小和译码算法进行更新时,后更新的行会使用到先更新的行中更新的数据,所以只能进行串行的更新,无法采用并行译码方式提高译码延时。2. Although the minimum sum decoding algorithm based on RMP can solve some problems of the minimum sum algorithm based on SMP, it can be seen from the above introduction to the minimum sum decoding algorithm based on RMP that this minimum sum decoding algorithm based on RMP When updating with the decoding algorithm, the row updated later will use the data updated in the row updated earlier, so it can only be updated serially, and parallel decoding cannot be used to increase the decoding delay.

发明内容Contents of the invention

本发明的目的是为了降低了QC-LDPC码译码器的译码延时和采用QC-LDPC码作为信道编码的通信系统的通信延时,提出一种基于RMP调度的部分并行LDPC译码方法,针对QC-LDPC码,对基于RMP调度的LDPC译码器的译码处理结构进行了优化。The purpose of the present invention is to reduce the decoding delay of the QC-LDPC code decoder and the communication delay of the communication system using the QC-LDPC code as channel coding, and propose a partially parallel LDPC decoding method based on RMP scheduling , for QC-LDPC codes, the decoding processing structure of LDPC decoder based on RMP scheduling is optimized.

本发明在采用基于RMP调度的最小和译码算法的QC-LDPC译码器中实现部分并行的译码结构,具体通过以下技术方案实现:The present invention implements a partially parallel decoding structure in a QC-LDPC decoder using a minimum-sum decoding algorithm based on RMP scheduling, specifically through the following technical solutions:

步骤一,对行重为a,列重为b的QC-LDPC码的校验矩阵H(M,N)进行分区,具体方法为:Step 1, the check matrix H(M, N) of the QC-LDPC code whose row weight is a and column weight is b is partitioned, and the specific method is as follows:

(1)寻找QC-LDPC码校验矩阵的最小循环子矩阵,并得到其大小为I×I,I为常数;(1) find the minimum cyclic submatrix of QC-LDPC code parity check matrix, and obtain its size as I * I, and I is a constant;

(2)在保证每个分区的列重为1的前提下,以每J行为一个分区将校验矩阵分为K个分区,其中I=nJ,M=KJ,n为整数,一般情况下n=1,即I=J;(2) Under the premise of ensuring that the column weight of each partition is 1, the check matrix is divided into K partitions with one partition per J row, where I=nJ, M=KJ, n is an integer, and generally n =1, that is, I=J;

(3)确定分区内多路并行译码处理数P,有Pl=J,l为每个分区内每一路译码处理的行数。(3) Determining the number P of multi-path parallel decoding processes in the partition, Pl=J, where l is the number of lines decoded and processed by each path in each partition.

步骤二,在分区的基础上,建立基于RMP调度的QC-LDPC码译码器,其组成包括:Step 2, on the basis of partitions, establish a QC-LDPC code decoder based on RMP scheduling, which consists of:

变量节点软信息存储单元RAM_λ,用于对迭代译码过程中的初始化信息和变量节点软信息进行存储,其中包含P块RAM存储块Mλp;第p块RAM存储块Mλp,存储了每一个分区中的第p路译码迭代包含的行中的非零元素所对应的变量节点软信息;The variable node soft information storage unit RAM_λ is used to store the initialization information and variable node soft information in the iterative decoding process, which includes the P RAM storage block Mλp; the pth RAM storage block Mλp stores the data in each partition The variable node soft information corresponding to the non-zero elements in the row contained in the p-th decoding iteration;

校验节点软信息存储单元RAM_Λ,用于对迭代译码过程中更新的校验节点软信息进行存储,其中包含P块RAM存储块MΛp;其中第p块RAM存储块MΛp,存储了每一个分区中的第p路译码迭代包含的行中的非零元素所对应的校验节点软信息;The check node soft information storage unit RAM_Λ is used to store the check node soft information updated in the iterative decoding process, which includes P blocks of RAM storage blocks MΛp ; wherein the pth RAM storage block MΛp stores each The check node soft information corresponding to the non-zero elements in the rows included in the p-th decoding iteration in a partition;

存储器地址产生模块ADU,用于产生QC-LDPC译码器中所用的变量节点软信息存储单元和校验节点软信息存储单元;由RAM_λ存储器地址产生子模块和RAM_Λ存储器地址产生子模块组成,每个子模块由P个初始地址存储器和P个地址偏移计算器组成;每个子模块具有P个综合信号输出端口,其输出由初始地址存储器的来自P个初始地址存储器和计数器;ADU有2P个输出端口,分别与RAM_λ模块和RAM_Λ模块的P个读写端口的读写地址端口相连。The memory address generation module ADU is used to generate the variable node soft information storage unit and the check node soft information storage unit used in the QC-LDPC decoder; it is composed of a RAM_λ memory address generation submodule and a RAM_Λ memory address generation submodule, each A sub-module is composed of P initial address memories and P address offset calculators; each sub-module has P integrated signal output ports, the output of which is from the initial address memory from P initial address memories and counters; ADU has 2P outputs Ports are respectively connected to the read-write address ports of the P read-write ports of the RAM_λ module and the RAM_Λ module.

迭代译码模块IDU,用于对迭代过程中的校验节点软信息和变量节点软信息进行并行更新运算,其中包含P个CNU计算模块;The iterative decoding module IDU is used to perform parallel update operations on the soft information of the check node and the soft information of the variable node in the iterative process, which includes P CNU calculation modules;

译码判决模块DJU,用于对变量节点软信息存储单元中即将输出的信息进行判决处理;The decoding and judgment module DJU is used to judge and process the information to be output in the variable node soft information storage unit;

软信息交换模块INU,用于在迭代译码时将来自RAM_λ模块中不同RAM存储块的数据送到相应的CNU计算模块,以及将相应的更新数据返回给RAM存储块;INU有2P输入端口和2P个输出端口,其中P个输入端口和输出端口与RAM_λ模块中的RAM的输出端口及输入端口相连,P个输入端口和输出端口与P个CNU计算模块中的RAM的输出端口及输入端口相连;通过INU模块综合信号,将RAM_λ模块中P个输出软信息分配到P个CNU模块中,并将P个CNU模块的输出软信息存储到RAM_λ模块中对应的RAM中。The soft information exchange module INU is used to send the data from different RAM storage blocks in the RAM_λ module to the corresponding CNU calculation module during iterative decoding, and return the corresponding updated data to the RAM storage block; the INU has 2P input ports and 2P output ports, where P input ports and output ports are connected to the output ports and input ports of RAM in the RAM_λ module, and P input ports and output ports are connected to output ports and input ports of RAM in P CNU computing modules ; Distribute the P pieces of output soft information in the RAM_λ module to P CNU modules through the integrated signal of the INU module, and store the output soft information of the P CNU modules in the corresponding RAM in the RAM_λ module.

译码流程控制模块PCU,用于产生整个译码流程的控制信号,其中包括INU模块综合信号。The decoding process control module PCU is used to generate the control signals of the entire decoding process, including the integrated signal of the INU module.

所述每块RAM存储块Mλp和MΛp含有两个读写端口,其读写模式均是“先读后写”,每个读写端口均与第p块CNU计算模块相连,每个端口各负责一路数据的读写;Described each piece of RAM storage block Mλp and MΛp contain two read-write ports, and its read-write mode is all " read first and then write ", and each read-write port is all connected with the p-th block CNU computing module, and each port is Responsible for reading and writing data all the way;

步骤三,对步骤二所建立的基于RMP调度的QC-LDPC码译码器的迭代译码器进行初始化:将接收到的一帧信道似然比软信息信息,按照校验矩阵中的分区将信道信息存储到变量节点软信息存储单元RAM_λ的P块RAM存储块Mλp中,第p块存储块Mλp的数据与地址按照分区中的第p路对应的行中的非零元素所在的列进行对应,每个存储块的存储地址范围为0~aJ-1,a为QC-LDPC码的行重,J为每个分区第p路对应的行数;同时,将校验节点软信息存储单元RAM_Λ中存储的数据全部初始化为0,并将迭代次数iter_time初始化为0次;Step 3, initialize the iterative decoder of the QC-LDPC code decoder based on RMP scheduling established in step 2: the received one frame of channel likelihood ratio soft information, according to the partition in the parity check matrix The channel information is stored in the P-block RAM storage block Mλp of the variable node soft information storage unit RAM_λ, and the data and address of the p-th storage block Mλp correspond to the column where the non-zero element in the row corresponding to the p-th way in the partition is located , the storage address of each storage block ranges from 0 to aJ-1, a is the line weight of the QC-LDPC code, and J is the number of lines corresponding to the p-th road in each partition; at the same time, the check node soft information storage unit RAM_Λ The data stored in is all initialized to 0, and the number of iterations iter_time is initialized to 0;

步骤四,进行迭代译码运算:译码流程控制模块PCU和存储器地址产生模块ADU共同控制所述的迭代译码模块IDU和软信息存储模块进行运算更新;Step 4, perform iterative decoding operation: the decoding process control module PCU and the memory address generation module ADU jointly control the iterative decoding module IDU and the soft information storage module to update the operation;

步骤4.a)迭代译码模块IDU中的第p个CNU计算模块对第k个分区中的第p路并行信息进行迭代译码计算,模块输入的信息来自变量节点软信息存储单元RAM_λ和校验节点软信息存储单元RAM_Λ,迭代译码的结果则保存到这两个存储单元相应的位置上;Step 4.a) The p-th CNU calculation module in the iterative decoding module IDU performs iterative decoding calculation on the p-th channel parallel information in the k-th partition. The information input by the module comes from the variable node soft information storage unit RAM_λ and calibration Verification node soft information storage unit RAM_Λ, and the result of iterative decoding is stored in the corresponding positions of these two storage units;

其中,在更新该路第i行的信息时,与第p个CNU计算模块对应的变量节点软信息存储单元RAM_λ的RAM存储块,是其中的第p个RAM存储的信息按照存储器地址产生模块ADU给出的地址读出,RAM_λ得到的地址可以按照如下计算得到:<第k个分区第p路译码初始化地址addr_kp0>+<i-1>;Wherein, when updating the information of the i-th row of the road, the RAM storage block of the variable node soft information storage unit RAM_λ corresponding to the p-th CNU calculation module is the information stored in the p-th RAM according to the memory address generation module ADU The given address is read out, and the address obtained by RAM_λ can be calculated as follows: <addr_kp0>+<i-1>;

在更新该路第i行的信息时,与第p个CNU计算模块对应的校验节点软信息存储单元RAM_Λ的RAM存储块是其中的第p个RAM存储的信息按照存储器地址产生模块ADU给出的地址读出,RAM_Λ得到的地址是按照存储块顺序的a个连续的地址,a为QC-LDPC码的行重;When updating the information in the i-th row of the road, the RAM storage block of the check node soft information storage unit RAM_Λ corresponding to the p-th CNU calculation module is the information stored in the p-th RAM according to the memory address generation module ADU. The address of RAM_Λ is read out, and the address that RAM_Λ obtains is a consecutive addresses according to the storage block order, and a is the row weight of QC-LDPC code;

步骤4.b)CNU计算模块计算的结果通过软信息交换模块INU分别保存到变量节点软信息存储单元RAM_λ和校验节点软信息存储单元RAM_Λ对应的存储块中,写入的地址是由对应的读取地址进行a个时钟的延迟得到的;Step 4.b) The results calculated by the CNU calculation module are respectively stored in the storage blocks corresponding to the variable node soft information storage unit RAM_λ and the check node soft information storage unit RAM_Λ through the soft information exchange module INU, and the written address is determined by the corresponding Obtained by reading the address with a delay of a clock;

步骤4.c)重复步骤4.a)-步骤4.b),直到完成每个分区中的所有行的更新;Step 4.c) Repeat Step 4.a) - Step 4.b) until all rows in each partition are updated;

步骤4.d),重复步骤4.a)~步骤4.c),直到完成整个校验矩阵中所有分区的更新;Step 4.d), repeat step 4.a) ~ step 4.c), until the update of all partitions in the entire check matrix is completed;

步骤五,重复步骤四,直到达到最大迭代次数,并将变量节点软信息存储单元RAM_λ中每个存储块中的数据按照存储的顺序读出进行判决,得到译码结果。Step 5: Repeat step 4 until the maximum number of iterations is reached, and read out the data in each storage block in the variable node soft information storage unit RAM_λ according to the stored order to make a decision and obtain a decoding result.

有益效果Beneficial effect

与传统的译码器相比,本发明设计的译码器采用了基于RMP的译码算法,在每次迭代译码的过程中,较最小和译码算法减少了近一半的迭代延时;另外,针对QC-LDPC校验矩阵具有的准循环特点,采用了部分并行处理的译码结构,将校验矩阵进行分区,在分区内进行并行迭代译码,译码延时和每个分区内译码并行度呈线性反比关系,从而成倍地提高了译码器的吞吐量,并且保证了这种并行方式与串行的RMP方式具有相同的性能,使LDPC译码器适应高速数据处理的要求。应用本发明的译码器设计,可使LDPC译码器适应更多高吞吐量的通信应用场合。Compared with the traditional decoder, the decoder designed by the present invention adopts the decoding algorithm based on RMP, and in the process of each iterative decoding, it reduces the iterative delay by nearly half compared with the minimum sum decoding algorithm; In addition, for the quasi-cyclic characteristics of the QC-LDPC parity check matrix, a partial parallel processing decoding structure is adopted, and the parity check matrix is partitioned, and parallel iterative decoding is performed in the partitions, and the decoding delay and each partition The decoding parallelism is linearly inversely proportional, which doubles the throughput of the decoder, and ensures that this parallel method has the same performance as the serial RMP method, making the LDPC decoder suitable for high-speed data processing. Require. Applying the decoder design of the present invention can make the LDPC decoder adapt to more communication applications with high throughput.

附图说明Description of drawings

图1为本发明LDP{Calderbank,1999#38}C译码方法流程图;Fig. 1 is LDP{Calderbank, 1999#38}C decoding method flowchart of the present invention;

图2为具体实施方式中采用的LDPC译码器的结构示意图;Fig. 2 is the structural representation of the LDPC decoder that adopts in the specific embodiment;

图3为具体实施方式中LDPC译码器的存储器地址控制模块说明图;Fig. 3 is an explanatory diagram of the memory address control module of the LDPC decoder in the specific embodiment;

图4为具体实施方式中的地址分配方法说明图。FIG. 4 is an explanatory diagram of an address allocation method in a specific embodiment.

具体实施方式Detailed ways

下面结合附图和实施例对本发明做进一步详细的说明。The present invention will be described in further detail below in conjunction with the accompanying drawings and embodiments.

参照图2本发明提供的基于RMP的部分并行QC-LDPC译码器主要分为6个部分,分别为变量节点软信息存储单元RAM_λ,校验节点软信息存储单元RAM_Λ,迭代译码模块IDU,译码判决模块DJU,译码流程控制模块PCU。其中,变量节点软信息存储单元RAM_λ,用于对迭代译码过程中的初始化信息和变量节点软信息进行存储,其中包含P块RAM存储块Mλp,;校验节点软信息存储单元RAM_Λ,用于对迭代译码过程中更新的校验节点软信息进行存储,其中包含P块RAM存储块MΛp,;存储器地址产生模块ADU,用于产生QC-LDPC译码器中所用的变量节点软信息存储单元和校验节点软信息存储单元;迭代译码模块IDU,用于对迭代过程中的校验节点软信息和变量节点软信息进行并行更新运算,其中包含P个CNU计算模块;译码判决模块DJU,用于对变量节点软信息存储单元中即将输出的信息进行判决处理;译码流程控制模块PCU,用于产生整个译码流程的控制信号。其中,RAM_λ和RAM_Λ模块中第p块RAM存储块,存储了每一个分区中的第p路译码迭代包含的行中的非零元素所对应的变量节和校验节点软信息;每块RAM存储块含有两个读写端口,其读写模式均是“先读后写”,每个读写端口均与第p块CNU计算模块相连,每个端口各负责一路数据的读写;存储器地址产生模块ADU,由RAM_λ存储器地址产生子模块和RAM_Λ存储器地址产生子模块组成,每个子模块由P个初始地址存储器和P个地址偏移计算器组成;存储器地址产生模块ADU,有2P个输出端口,分别与RAM_λ模块和RAM_Λ模块的P个读写端口的读写地址端口相连。Referring to Fig. 2, the RMP-based partially parallel QC-LDPC decoder provided by the present invention is mainly divided into 6 parts, which are variable node soft information storage unit RAM_λ, check node soft information storage unit RAM_Λ, iterative decoding module IDU, Decoding and judging module DJU, decoding process control module PCU. Among them, the variable node soft information storage unit RAM_λ is used to store the initialization information and variable node soft information in the iterative decoding process, which includes the P block RAM storage block Mλp; the check node soft information storage unit RAM_Λ is used for Store the check node soft information updated in the iterative decoding process, which includes P blocks of RAM storage blocks MΛp ; the memory address generation module ADU is used to generate the variable node soft information used in the QC-LDPC decoder to store Unit and check node soft information storage unit; iterative decoding module IDU, used to perform parallel update operation on check node soft information and variable node soft information in the iterative process, including P CNU calculation modules; decoding judgment module The DJU is used to judge and process the information to be output in the variable node soft information storage unit; the decoding process control module PCU is used to generate control signals for the entire decoding process. Among them, the pth RAM storage block in the RAM_λ and RAM_Λ modules stores the variable section and check node soft information corresponding to the non-zero elements in the row included in the pth decoding iteration in each partition; each block of RAM The storage block contains two read-write ports, and the read-write mode is "read first, then write". Each read-write port is connected to the p-th CNU computing module, and each port is responsible for reading and writing one channel of data; the memory address The generation module ADU is composed of the RAM_λ memory address generation sub-module and the RAM_Λ memory address generation sub-module, each sub-module is composed of P initial address memories and P address offset calculators; the memory address generation module ADU has 2P output ports , respectively connected to the read-write address ports of the P read-write ports of the RAM_λ module and the RAM_Λ module.

译码器的各个模块之间的连接关系如下:The connection relationship between the various modules of the decoder is as follows:

RAM_λ模块中的每一块RAM都含有两个读写端口,分别负责迭代译码软信息的读取和写入,其模式都为“先读取后写入”模式,第p块RAM的“读”端口同时与INU模块的第p个输入端口、译码判决模块DJU输入端口相连,第p块RAM的“写”端口同时与INU模块的第p个输入端口、译码器的输入端口相连;RAM_Λ模块中的每一块RAM都含有两个读写端口,分别负责迭代译码软信息的读取和写入,其模式都为“先读取后写入”模式,第p块RAM的两个端口同时与第p个迭代译码计算单元CNU_p的输入输出端口相连;INU模块的其中P个输出端口和输入端口分别与P个迭代译码计算单元CNU的输入端口和输出端口相连,另外P个输出端口和输入端口分别与RAM_λ模块中的P块RAM的输入端口和输出端口相连;ADU模块的2p个输出端口分别与RAM_λ模块以及RAM_Λ模块中的p个RAM读写地址端口相连,负责读写地址的控制。Each piece of RAM in the RAM_λ module has two read-write ports, which are respectively responsible for reading and writing iteratively decoded soft information. The mode is "read first and then write". The "port is connected with the pth input port of the INU module and the DJU input port of the decoding judgment module, and the "write" port of the pth block RAM is connected with the pth input port of the INU module and the input port of the decoder at the same time; Each piece of RAM in the RAM_Λ module has two read-write ports, which are respectively responsible for reading and writing iteratively decoded soft information. The mode is "read first and then write". The two ports of the p-th RAM The ports are connected to the input and output ports of the pth iterative decoding calculation unit CNU_p at the same time; the P output ports and input ports of the INU module are respectively connected to the input ports and output ports of the P iterative decoding calculation unit CNU, and the other P The output port and input port are respectively connected to the input port and output port of the P block RAM in the RAM_λ module; the 2p output ports of the ADU module are respectively connected to the RAM_λ module and the p RAM read and write address ports in the RAM_Λ module, responsible for reading and writing Address control.

参照图1,本发明提供的迭代译码的方法,其步骤如下:With reference to Fig. 1, the method for iterative decoding provided by the present invention, its steps are as follows:

步骤1,初始化:将接收到的一帧信道似然比软信息信息,按照校验矩阵中的分区将信道信息存储到变量节点软信息存储单元RAM_λ的P块RAM存储块Mλp中,第p块存储块Mλp的数据与地址按照分区中的第p路对应的行中的非零元素所在的列进行对应,每个存储块的存储地址范围为0~aJ-1,a为QC-LDPC码的行重,J为每个分区第p路对应的行数;同时,将校验节点软信息存储单元RAM_Λ中存储的数据全部初始化为0,并将迭代次数iter_time初始化为0次;Step 1, initialization: store the received channel likelihood ratio soft information of one frame into the P block RAM storage block Mλp of the variable node soft information storage unit RAM_λ according to the partition in the parity check matrix, the pth block The data and address of the storage block Mλp correspond to the column of the non-zero element in the row corresponding to the pth road in the partition. The storage address range of each storage block is 0~aJ-1, and a is the QC-LDPC code Line weight, J is the number of lines corresponding to the p-th road of each partition; at the same time, all the data stored in the check node soft information storage unit RAM_Λ is initialized to 0, and the number of iterations iter_time is initialized to 0 times;

步骤2,迭代译码运算,迭代译码模块IDU对软信息存储模块进行运算更新:Step 2, iterative decoding operation, the iterative decoding module IDU performs calculation update on the soft information storage module:

迭代译码模块IDU中的每一个计算单元CNU_p以行的顺序逐个更新与之相连的RAM_λ和RAM_Λ模块的第p块RAM中的信息,P个计算单元同时对校验矩阵一个分区中的P路进行并行译码;Each calculation unit CNU_p in the iterative decoding module IDU updates the information in the p-th block RAM of the RAM_λ and RAM_Λ modules connected to it one by one in the order of rows, and the P calculation units simultaneously update the P channels in a partition of the check matrix Perform parallel decoding;

所述的迭代译码模块IDU中的每个计算模块CNU_p对每个RAM中的信息的更新分为三步:CNU_p首先分别从RAM_λ和RAM_Λ模块的第p块RAM中读取更新所需要的软信息;CNU_p再根据读取的软信息进行迭代译码更新计算;最后将更新计算得到的外信息写回到RAM_λ和RAM_Λ模块的第p块RAM中;Each calculation module CNU_p in the described iterative decoding module IDU is divided into three steps to the update of the information in each RAM: CNU_p first reads the software required for updating from the pth block RAM of the RAM_λ and RAM_Λ modules respectively. information; CNU_p performs iterative decoding update calculation according to the read soft information; finally writes the external information obtained by the update calculation back into the p-block RAM of the RAM_λ and RAM_Λ modules;

所述的迭代译码模块IDU对RAM_λ和RAM_Λ模块的每块RAM进行信息更新,需要对每块RAM中的软信息进行读出和写入,其中每块RAM的数据读写采用一种循环的地址读写管理方法,参照图4,其地址分配方法如下:The iterative decoding module IDU updates the information of each block of RAM of the RAM_λ and RAM_Λ modules, and needs to read and write the soft information in each block of RAM, wherein the data reading and writing of each block of RAM adopts a cyclic Address reading and writing management method, with reference to Figure 4, its address allocation method is as follows:

a)校验节点软信息存储模块RAM_Λ按照每个分区的行顺序将第p路并行处理的校验软信息保存到第p块RAM_p中,1≤p≤P(P是并行处理路数,图中P=4),每个RAM的地址位为0~(aJ-1);a) The check node soft information storage module RAM_Λ saves the check soft information of the p-th parallel processing in the p-th block RAM_p according to the row order of each partition, 1≤p≤P (P is the number of parallel processing channels, Fig. In P=4), the address bits of each RAM are 0~(aJ-1);

b)每个子单位矩阵按照列顺序分为P个部分,每个子矩阵的第p个部分对应的变量节点软信息保存到RAM_λ模块的第p块RAM_p中,1≤p≤P(P是并行处理路数,图中P=4),每块RAM的地址位为0~J-1;b) Each sub-unit matrix is divided into P parts according to the column order, and the variable node soft information corresponding to the p-th part of each sub-matrix is stored in the p-th block RAM_p of the RAM_λ module, 1≤p≤P (P is parallel processing The number of channels, P=4 in the figure), the address bits of each block of RAM are 0~J-1;

c)在上述的前提下,ADU模块通过每个子矩阵的初始地址进行偏移计算,得到变量节点软信息存储模块中每一块RAM所存储的变量节点软信息对应的校验节点软信息,并将结果送到INU模块中,对从P块RAM得到的变量节点软信息送到相应的计算模块CNU中进行迭代译码更新。c) Under the above-mentioned premise, the ADU module performs offset calculation through the initial address of each sub-matrix, and obtains the check node soft information corresponding to the variable node soft information stored in each block of RAM in the variable node soft information storage module, and The result is sent to the INU module, and the variable node soft information obtained from the P block RAM is sent to the corresponding calculation module CNU for iterative decoding update.

例如,如果一个由64×64的单位矩阵循环得到的循环矩阵,其首地址为23,进行4路并行译码,RAM_Λ模块中的每一个RAM存储8个校验节点软信息,地址为0~15,类似地,RAM_λ模块中的每一个RAM存储8个校验节点软信息,地址为0~15;每块RAM中存储的软信息地址与计算模块之间的关系如下表所示:For example, if a circulant matrix obtained by circling a 64×64 unit matrix has a head address of 23 and performs 4-way parallel decoding, each RAM in the RAM_Λ module stores 8 check node soft information, and the address is 0~ 15. Similarly, each RAM in the RAM_λ module stores 8 check node soft information, with addresses ranging from 0 to 15; the relationship between the soft information addresses stored in each RAM and the calculation module is shown in the following table:

Figure BDA0000435525090000081
Figure BDA0000435525090000081

步骤3,重复步骤2,直到完成这个分区中每一路的更新;Step 3, repeat step 2 until the update of each path in this partition is completed;

步骤4,重复步骤2和步骤3,直到完成整个校验矩阵中所有分区的更新,并将迭代次数iter_time加1;Step 4, repeat step 2 and step 3 until the update of all partitions in the entire check matrix is completed, and the number of iterations iter_time is increased by 1;

步骤5,重复步骤2到步骤4,直到迭代次数iter_time达到最大值iter_MAX,并将变量节点软信息存储单元RAM_λ中每个存储块中的数据按照存储的顺序读出进行判决,得到译码结果。Step 5: Repeat steps 2 to 4 until the number of iterations iter_time reaches the maximum value iter_MAX, read out the data in each storage block in the variable node soft information storage unit RAM_λ according to the order of storage, and make a decision to obtain the decoding result.

与采用SMP最小和译码算法的LDPC译码器相比,在迭代次数与并行数相同的情况下,本发明的译码器能减少近一半译码延时;与采用RMP的LDPC译码器相比,在迭代次数相同的条件下,本发明的译码器能在不影响译码性能的情况下将减少一半的译码延时。Compared with the LDPC decoder that adopts the SMP minimum sum decoding algorithm, under the same situation of the number of iterations and the parallel number, the decoder of the present invention can reduce nearly half of the decoding delay; compared with the LDPC decoder that adopts RMP In comparison, under the condition of the same number of iterations, the decoder of the present invention can reduce the decoding delay by half without affecting the decoding performance.

以上所述为本发明的较佳实施例而已,本发明不应该局限于该实施例和附图所公开的内容。凡是不脱离本发明所公开的精神下完成的等效或修改,都落入本发明保护的范围。The above description is only a preferred embodiment of the present invention, and the present invention should not be limited to the content disclosed in this embodiment and the accompanying drawings. All equivalents or modifications accomplished without departing from the disclosed spirit of the present invention fall within the protection scope of the present invention.

Claims (1)

1. the part parallel QC-LDPC interpretation method of dispatching based on RMP, is characterized in that: specifically comprise the following steps:
Step 1, is heavily a to row, and the check matrix H (M, N) of the QC-LDPC code that column weight is b is carried out subregion, and concrete grammar is:
(1) find the minimal circulation submatrix of QC-LDPC code check matrix, and obtain its size for I * I, I is constant;
(2), under the prerequisite that is 1 at the column weight that guarantees each subregion, with subregion of every J behavior, check matrix is divided into K subregion, I=nJ wherein, M=KJ, n is integer, generally n=1, i.e. I=J;
(3) determine that in subregion, number P is processed in multidiameter delay decoding, have Pl=J, l is the line number that in each subregion, each road decoding is processed;
Step 2, on the basis of subregion, sets up the QC-LDPC code decoder based on RMP scheduling, and its composition comprises:
The soft information memory cell RAM_ of variable node λ, for the initialization information of iterative decoding process and the soft information of variable node are stored, wherein comprises P block RAM memory block M λ p; P block RAM memory block M λ p, has stored the soft information of the corresponding variable node of nonzero element in the row that the p road decoding iteration in each subregion comprises;
The soft information memory cell RAM_ of check-node Λ, stores for the soft information of check-node that iterative decoding process is upgraded, and wherein comprises P block RAM memory block M Λ p; P block RAM memory block M Λ wherein p, stored the soft information of the corresponding check-node of nonzero element in the row that the p road decoding iteration in each subregion comprises;
Storage address generation module ADU, for generation of the soft information memory cell of variable node used in QC-LDPC decoder and the soft information memory cell of check-node; By RAM_ λ storage address generation submodule and RAM_ Λ storage address, produce submodule and form, each submodule is comprised of P initial address memory and P address offset calculator; Each submodule has P integrated signal output port, its output by initial address memory from P initial address memory sum counter; ADU has 2P output port, is connected respectively with RAM_ λ module with the read/write address port of P reading-writing port of RAM_ Λ module;
Iteration decoding module IDU, for the soft information of the check-node of iterative process and the soft information of variable node are walked abreast and upgrades computing, wherein comprises P CNU computing module;
Decoding judging module DJU, carries out decision process for the soft information memory cell of variable node being about to the information of output;
Soft information exchange module INU, for will delivering to corresponding CNU computing module from the data of the different RAM memory blocks of RAM_ λ module when the iterative decoding, and will be accordingly more new data return to RAM memory block; INU has 2P input port and 2P output port, wherein P input port and output port are connected with output port and the input port of RAM in RAM_ λ module, and P input port and output port are connected with output port and the input port of RAM in P CNU computing module; By INU module synthesis signal, P the soft information distribution of output in RAM_ λ module, in P CNU module, and stored into the soft information of the output of P CNU module in RAM_ λ module in the RAM of correspondence;
Decoding process control module PCU, for generation of the control signal of whole decoding flow process, comprising INU module synthesis signal;
Described every block RAM memory block M λ p and M Λ pcontain two reading-writing port, its read-write mode is all " write-after-reads ", and each reading-writing port is all connected with p piece CNU computing module, and each is responsible for the read-write of a circuit-switched data each port;
Step 3, the iterative decoder of the QC-LDPC code decoder based on RMP scheduling that step 2 is set up carries out initialization: by the soft information of a frame channel likelihood ratio receiving, according to the subregion in check matrix, channel information is stored in the P block RAM memory block M λ p of the soft information memory cell RAM_ of variable node λ, the data of p piece memory block M λ p are carried out corresponding with address according to the row at the nonzero element place in row corresponding to the p road in subregion, the memory address scope of each memory block is 0~aJ-1, a is that the row of QC-LDPC code is heavy, J is each line number corresponding to subregion p road, meanwhile, the data of storing in the soft information memory cell RAM_ of check-node Λ are all initialized as to 0, and iterations iter_time is initialized as 0 time,
Step 4, carries out iterative decoding computing: iteration decoding module IDU and soft information storage module described in decoding process control module PCU and storage address generation module ADU co-controlling carry out computing renewal;
Step 4.a) p CNU computing module in iteration decoding module IDU carries out iterative decoding calculating to the p road parallel information in k subregion, the information of module input is from variable node soft information memory cell RAM_ λ and the soft information memory cell RAM_ of check-node Λ, and the result of iterative decoding is saved on these two corresponding positions of memory cell;
Wherein, when upgrading the capable information of this road i, the RAM memory block of the variable node soft information memory cell RAM_ λ corresponding with p CNU computing module, be that read the address that p RAM canned data wherein provides according to storage address generation module ADU, the address that RAM_ λ obtains can be according to calculating as follows: k subregion p road decoding initialization address addr_kp0>+<i-1> of <;
When upgrading the capable information of this road i, the RAM memory block of the check-node soft information memory cell RAM_ Λ corresponding with p CNU computing module is that read the address that p RAM canned data wherein provides according to storage address generation module ADU, the address that RAM_ Λ obtains is according to a of memory block order continuous address, and a is that the row of QC-LDPC code is heavy;
Step 4.b) result that CNU computing module calculates is saved in respectively in variable node soft information memory cell RAM_ λ and memory block corresponding to the soft information memory cell RAM_ of check-node Λ by soft information exchange module INU, and the address writing is that the delay of carrying out a clock by corresponding reading address obtains;
Step 4.c) repeating step 4.a)-step 4.b), until complete the renewal of all row in each subregion;
Step 4.d), repeating step 4.a)~step 4.c), until complete the renewal of all subregions in whole check matrix;
Step 5, repeating step four, until reach maximum iteration time, and the data in each memory block in the soft information memory cell RAM_ of variable node λ are adjudicated according to calling over of storage, obtain decode results.
CN201310676642.9A 2013-12-11 2013-12-11 Partially parallel quasi-cyclic low-density parity-check (QC-LDPC) decoding method based on row message passing (RMP) scheduling Pending CN103618556A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310676642.9A CN103618556A (en) 2013-12-11 2013-12-11 Partially parallel quasi-cyclic low-density parity-check (QC-LDPC) decoding method based on row message passing (RMP) scheduling

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310676642.9A CN103618556A (en) 2013-12-11 2013-12-11 Partially parallel quasi-cyclic low-density parity-check (QC-LDPC) decoding method based on row message passing (RMP) scheduling

Publications (1)

Publication Number Publication Date
CN103618556A true CN103618556A (en) 2014-03-05

Family

ID=50169260

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310676642.9A Pending CN103618556A (en) 2013-12-11 2013-12-11 Partially parallel quasi-cyclic low-density parity-check (QC-LDPC) decoding method based on row message passing (RMP) scheduling

Country Status (1)

Country Link
CN (1) CN103618556A (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105530195A (en) * 2014-10-21 2016-04-27 思科技术公司 Sparse graph coding scheduling for deterministic ethernet
CN106911336A (en) * 2017-01-17 2017-06-30 清华大学 The high-speed parallel low density parity check coding device and its interpretation method of multi-core dispatching
CN108809327A (en) * 2017-05-05 2018-11-13 上海数字电视国家工程研究中心有限公司 LDPC interpretation methods
CN109639288A (en) * 2018-10-24 2019-04-16 上海无线电设备研究所 Generalization interpretation method and decoding module suitable for QC-LDPC code
CN110114978A (en) * 2017-01-09 2019-08-09 华为技术有限公司 Efficient decodable code QC-LDPC code
CN112367085A (en) * 2020-10-30 2021-02-12 中科院计算技术研究所南京移动通信与计算创新研究院 Quasi-cyclic LDPC code decoding method, decoder, terminal and medium
CN114064588A (en) * 2021-11-24 2022-02-18 建信金融科技有限责任公司 Storage space scheduling method and system
WO2022116799A1 (en) * 2020-12-03 2022-06-09 重庆邮电大学 Hierarchical semi-parallel ldpc decoder system having single permutation network
CN117375636A (en) * 2023-12-07 2024-01-09 成都星联芯通科技有限公司 Method, device and equipment for improving throughput rate of QC-LDPC decoder

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101771421A (en) * 2010-03-11 2010-07-07 复旦大学 Ultrahigh-speed and low-power-consumption QC-LDPC code decoder based on TDMP
CN101917249A (en) * 2010-07-27 2010-12-15 清华大学 QC-LDPC code decoder and its realization method
CN102185615A (en) * 2011-05-05 2011-09-14 北京大学 LDPC (low density parity code) code construction method for realizing parallel decoding
CN102480336A (en) * 2010-11-30 2012-05-30 中国科学院微电子研究所 A Universal Fast Decoding Coprocessor for Quasi-Cyclic Low Density Parity Check Codes
US8301984B1 (en) * 2007-07-30 2012-10-30 Marvell International Ltd. QC-LDPC decoder with list-syndrome decoding
US8473824B1 (en) * 2008-09-08 2013-06-25 Marvell International Ltd. Quasi-cyclic low-density parity-check (QC-LDPC) encoder

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8301984B1 (en) * 2007-07-30 2012-10-30 Marvell International Ltd. QC-LDPC decoder with list-syndrome decoding
US8473824B1 (en) * 2008-09-08 2013-06-25 Marvell International Ltd. Quasi-cyclic low-density parity-check (QC-LDPC) encoder
CN101771421A (en) * 2010-03-11 2010-07-07 复旦大学 Ultrahigh-speed and low-power-consumption QC-LDPC code decoder based on TDMP
CN101917249A (en) * 2010-07-27 2010-12-15 清华大学 QC-LDPC code decoder and its realization method
CN102480336A (en) * 2010-11-30 2012-05-30 中国科学院微电子研究所 A Universal Fast Decoding Coprocessor for Quasi-Cyclic Low Density Parity Check Codes
CN102185615A (en) * 2011-05-05 2011-09-14 北京大学 LDPC (low density parity code) code construction method for realizing parallel decoding

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
甘振华: "IEEE802.16e标准LDPC码编译码器设计与FPGA实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105530195A (en) * 2014-10-21 2016-04-27 思科技术公司 Sparse graph coding scheduling for deterministic ethernet
US11095317B2 (en) 2017-01-09 2021-08-17 Huawei Technologies Co., Ltd. Efficiently decodable QC-LDPC code
CN110114978A (en) * 2017-01-09 2019-08-09 华为技术有限公司 Efficient decodable code QC-LDPC code
CN106911336B (en) * 2017-01-17 2020-07-07 清华大学 High-speed parallel low-density parity-check decoder with multi-core scheduling and its decoding method
CN106911336A (en) * 2017-01-17 2017-06-30 清华大学 The high-speed parallel low density parity check coding device and its interpretation method of multi-core dispatching
CN108809327B (en) * 2017-05-05 2022-01-28 上海数字电视国家工程研究中心有限公司 LDPC decoding method
CN108809327A (en) * 2017-05-05 2018-11-13 上海数字电视国家工程研究中心有限公司 LDPC interpretation methods
CN109639288A (en) * 2018-10-24 2019-04-16 上海无线电设备研究所 Generalization interpretation method and decoding module suitable for QC-LDPC code
CN109639288B (en) * 2018-10-24 2023-07-04 上海无线电设备研究所 Generalized decoding method and decoding module suitable for QC-LDPC code
CN112367085A (en) * 2020-10-30 2021-02-12 中科院计算技术研究所南京移动通信与计算创新研究院 Quasi-cyclic LDPC code decoding method, decoder, terminal and medium
CN112367085B (en) * 2020-10-30 2024-01-12 南京中科晶上通信技术有限公司 Quasi-cyclic LDPC code decoding method, decoder, terminal and medium
WO2022116799A1 (en) * 2020-12-03 2022-06-09 重庆邮电大学 Hierarchical semi-parallel ldpc decoder system having single permutation network
CN114064588A (en) * 2021-11-24 2022-02-18 建信金融科技有限责任公司 Storage space scheduling method and system
CN114064588B (en) * 2021-11-24 2023-04-25 建信金融科技有限责任公司 Storage space scheduling method and system
CN117375636A (en) * 2023-12-07 2024-01-09 成都星联芯通科技有限公司 Method, device and equipment for improving throughput rate of QC-LDPC decoder
CN117375636B (en) * 2023-12-07 2024-04-12 成都星联芯通科技有限公司 Method, device and equipment for improving throughput rate of QC-LDPC decoder

Similar Documents

Publication Publication Date Title
CN103618556A (en) Partially parallel quasi-cyclic low-density parity-check (QC-LDPC) decoding method based on row message passing (RMP) scheduling
CN102394661B (en) LDPC (low density parity check) decoder and decoding method based on layer decoding processing
CN101803210B (en) Method, apparatus and apparatus for providing semi-parallel low-density parity-check decoding using block-structured parity-check matrix
Ho et al. A 520k (18900, 17010) array dispersion LDPC decoder architectures for NAND flash memory
CN101499804B (en) Multi-code rate decoder for quasi-cyclic low density parity check code
CN106571829B (en) A high-speed adaptive DVB-S2 LDPC decoder and decoding method based on FPGA
US10374633B2 (en) Method and system for LDPC decoding
CN102664638A (en) FPGA (Field Programmable Gate Array) realization method for multi-code-length LDPC (Low Density Parity Check) code decoder on basis of hierarchical NMS (Network Management System) algorithm
CN101471674A (en) Method and apparatus for decoding low density parity check code
CN101420279B (en) High speed LDPC decoder in mobile multimedia broadcast and decoding method
CN113595564B (en) Low-complexity multi-system LDPC code decoder device based on information truncation
US20070198895A1 (en) Iterative decoding of a frame of data encoded using a block coding algorithm
CN113783576A (en) Method and apparatus for vertical layered decoding of quasi-cyclic low density parity check codes constructed from clusters of cyclic permutation matrices
CN106936444A (en) One kind set interpretation method and set decoder
CN102291153B (en) Decoding method of LDPC (Low Density parity check) code in CMMB (China Mobile multimedia broadcasting) and partial parallel decoder
CN102064835B (en) Decoder suitable for quasi-cyclic LDPC decoding
CN102594369A (en) Quasi-cyclic low-density parity check code decoder based on FPGA (field-programmable gate array) and decoding method
TWI487290B (en) Readdressing decoder for quasi-cyclic low-density parity-check and method thereof
CN102611462B (en) LDPC-CC (Low-Density Parity-Check Convolution Codes) decoding algorithm and decoder
CN101958718A (en) Improved semi-parallel decoder for low density parity check (LDPC) code and decoding method
CN109921877B (en) LDPC code parallel decoding method based on CUDA architecture under AWGN channel
CN103475378B (en) A kind of high-throughput ldpc decoder being applicable to optic communication
Zhang et al. A high-throughput multi-rate LDPC decoder for error correction of solid-state drives
CN101867449A (en) Efficient LDPC decoder based on ground digital television
Zhang et al. Low complexity DVB-S2 LDPC decoder

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20140305