CN106452455A - 基于OpenCL 移动设备QC‑LDPC 的动态译码方法 - Google Patents

基于OpenCL 移动设备QC‑LDPC 的动态译码方法 Download PDF

Info

Publication number
CN106452455A
CN106452455A CN201610846690.1A CN201610846690A CN106452455A CN 106452455 A CN106452455 A CN 106452455A CN 201610846690 A CN201610846690 A CN 201610846690A CN 106452455 A CN106452455 A CN 106452455A
Authority
CN
China
Prior art keywords
information
node
opencl
check
likelihood ratio
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
CN201610846690.1A
Other languages
English (en)
Other versions
CN106452455B (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.)
South China University of Technology SCUT
Original Assignee
South China University of Technology SCUT
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 South China University of Technology SCUT filed Critical South China University of Technology SCUT
Priority to CN201610846690.1A priority Critical patent/CN106452455B/zh
Publication of CN106452455A publication Critical patent/CN106452455A/zh
Application granted granted Critical
Publication of CN106452455B publication Critical patent/CN106452455B/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/65Purpose and implementation aspects
    • H03M13/6508Flexibility, adaptability, parametrability and configurability of the implementation
    • H03M13/6513Support of multiple code types, e.g. unified decoder for LDPC and turbo codes
    • 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/65Purpose and implementation aspects
    • H03M13/6561Parallelized implementations

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

本发明提供基于OpenCL移动设备QC‑LDPC的动态译码方法。本发明将QC‑LDPC码的校验矩阵的母矩阵信息从宿主机传入OpenCL设备的常量存储器,并分配相应的内存空间;将待处理的码字信息传入OpenCL设备,当码字信息过大时,将码字信息分段,依次分别译码;将待处理的码字信息传入OpenCL设备,根据待译码的数据量来动态地选择最小和算法或者分层译码算法;读取相应的核函数,在OpenCL设备上完成译码算法。本发明针对QC结构LDPC码字的特点,实现了不同码率和码长的QC‑LDPC码在不同OpenCL设备上通用的加速译码;并提供了LDPC译码器在OpenCL框架中的并行化实现。能在OpenCL上独立并行地运行很多个LDPC译码器,译码效率大幅度提高。本发明可以节省成本,并且容易软件升级,容易实现多种制式的全网通功能。

Description

基于OpenCL移动设备QC-LDPC的动态译码方法
技术领域
本发明涉及一种数字信号处理技术领域的译码系统,具体涉及基于OpenCL移动设备QC-LDPC动态译码方法。
背景技术
在1962年,低密度奇偶检查码(LDPC code)即被Gallager提出[1],并被证明其错误校正能力非常接近理论最大值,香农极限(Shannon Limit);不过受限于当时技术,低密度奇偶检查码并无法实作。最近几年,低密度奇偶检查码被重新发现[2],并随着集成电路的技术演进,低密度奇偶检查码的实作逐渐可行,而成为各种先进通讯系统的频道编码标准。目前,用于LDPC码译码的算法包括和积算法、最小和算法和分层译码算法等。
准循环低密度奇偶校验码(Quasi-Cyclic LDPC,QC LDPC)是一类由小的零方阵和小的循环矩阵构成校验矩阵的LDPC码,是LDPC码的一个重要分支,也是目前LDPC码构造中一种最具实用性的结构。其结构是的其编码可以通过简单的移位寄存器实现,具有实现复杂度低的优点。除此之外,QC结构还非常适合实现部分并行的译码器结构,从而获得吞吐率和硬件复杂度方面的折中。在此之上,编码器和译码器的层内并行运算得以实现,编译码的吞吐率都得以提高。
可编程GPU已经发展成为一种高度并行化、多线程、多核心的处理器,并且具有杰出的计算功率和极高的存储器带宽。在我们熟知的桌面平台,GPU得到了极为广泛的应用。近几年,随着并行化的发展,越来越多的移动设备硬件厂商重视对并行化标准OpenCL的支持和应用,该标准以异构平台为目标。并行计算已经在移动平台具备硬件条件和变成标准的支持,而并行化又可以带来提升设备硬件利用效率,同时GPU的低主频特性又可以在一定程度上降低功耗,因此在智能手机等移动平台实现并行计算具有巨大的潜在价值,特别在当前手机续航时间不能满足用户要求的背景下,并行化的特性显得尤为重要。目前,移动设备市面上支持OpenCL框架的GPU主要为四个公司产品:Qualcomm,ImaginationTechnologies,ARM,Vivante。
经过对现有技术的文献检索发现,专利申请号201210330765.2的中国专利,专利名称为“基于GPU架构的QC-LDPC码的加速译码方法”,公开了一种基于GPU架构的QC-LDPC码的加速译码方法,主要适用于桌面端的GPU,译码的算法也较为单一,未能充分发挥软件实现译码易于动态切换的优点。
发明内容
本发明的目的在于克服现有技术存在的上述不足,提供基于OpenCL架构的移动设备如手机上QC-LDPC码的动态译码方法,是一种准循环低密度奇偶校验码的在移动设备上的动态译码方法,具体技术方案如下。
基于OpenCL移动设备QC-LDPC的动态译码方法,包括如下步骤:
步骤1、作为预处理,将QC-LDPC码的校验矩阵的母矩阵信息从宿主机传入OpenCL设备的常量存储器,并分配相应的内存空间;
读取校验矩阵的母矩阵信息,计算码字的参数,包括母矩阵的行数hSeedCols、列数hSeedRows和扩展因子z;
在OpenCL设备上的全局内存中分配相应的内存空间,包括用于存放未译码的码字信息和译码完成后的码字信息;
将待处理的码字信息传入OpenCL设备,由于移动设备上的OpenCL设备的全局内存受限,当码字信息过大时,将码字信息分段,依次分别译码;
步骤2、将待处理的码字信息传入OpenCL设备,根据待译码的数据量来动态地选择最小和算法或者分层译码算法;
步骤3、读取相应的核函数,在OpenCL设备上完成译码算法。
进一步地,步骤3具体包括:
(1)最小和算法的核函数在OpenCL设备上并行化实现,包括如下详细步骤:
1)在OpenCL设备上为信息节点n后验对数似然比Lpn和校验节点m传递给信息节点n的对数似然比Lrmn分配局部内存,局部内存只能在工作组的共享;
2)根据OpenCL设备的参数信息设置内核的工作组数,每个工作组的工作项为z*hSeedRows,这些工作项合作完成译码任务,其中每个工作项负责完成校验矩阵中同一行内的信息的更新;
3)使用待译码字对信息节点后验对数似然比初始化,并将校验节点传递给信息节点的对数似然比置零,其中i代表当前迭代次数,完成初始化,
其中,表示在译码之前,即第0次迭代时,信息节点n值为0的概率,同理,为此时信息节点n值为1的概率,为信息节点n接收信号与信道噪声之比;
4)循环执行以下步骤:其中同一工作组内z*hSeedRows个工作项分别负责校验矩阵z*hSeedRows个行的相关信息的更新:
4.1)信息节点传递给校验节点的对数似然比的更新:
其中,表示第i次迭代时信息节点n传递给校验节点m的信息的对数似然比,m′∈M(n)\m表示除了校验节点m之外所有与信息节点n有连接的校验节点m′;
4.2)校验节点传递给信息节点的对数似然比的更新:
其中,sign函数表示符号函数,即当输入为负数时输出-1,输入为正数时输出1,输入为0时输出0;n′∈N(m)\n表示除了信息节点n之外所有与校验节点m有连接的信息节点n′;表示在n′∈N(m)\n范围内所能取得的最小值;
4.3)信息节点后验对数似然比的更新:
4.4)信息节点的硬判决和校验:
其中,表示第i次迭代后信息节点n经过硬判决后的值;
5)循环以上过程,直到经校验所译码为正确的,或者达到最大译码次数,则跳出循环,将译码结果传回宿主机内存;
(2)分层译码算法的核函数在OpenCL设备上并行化实现,包括如下详细步骤:
1)在OpenCL设备上为信息节点后验对数似然比局部内存只能在工作组的共享;校验节点传递给信息节点的对数似然比将保存在各个工作项的私有内存中;
2)根据OpenCL设备的参数信息设置内核的工作组数,每个工作组的工作项为z,这些工作项合作完成译码任务其中,每个工作项负责完成校验矩阵中同一层内的信息的更新;
3)使用待译码字对信息节点后验对数似然比初始化,并将校验节点传递给信息节点的对数似然比置零,其中i代表当前迭代次数,k代表当前所在层数,完成初始化,
4)循环执行以下步骤:其中同一工作组内z个工作项分别负责校验矩阵一个层内的z个行的相关信息的更新:
4.4)信息节点传递给校验节点的对数似然比的更新:
其中,k表示当前的层数,表示在第i次迭代中,第k层中信息节点n传递给校验节点m的信息的对数似然比;表示在第i次迭代中,第k层中校验节点m传递给信息节点n的信息的对数似然比;
4.2)校验节点传递给信息节点的对数似然比的更新:
4.5)信息节点后验对数似然比的更新:
4.6)仅仅在完成最后一层的的更新后,才进行信息节点的硬判决和校验:
5)循环以上过程,直到经校验所译码为正确的,或者达到最大译码次数,则跳出循环,将译码结果传回宿主机内存。
进一步地,步骤2中,预先确定一个阈值,对于目前的移动设备通常阈值为几百KB,根据待译码的传输速率,当传输速率低于阈值时,动态地选择高度并行的最小和算法,能够在数据量较小时,获得较低的时间延迟;当传输速率阈值时,选择部分并行的分层译码算法,单组译码更节省计算资源,能够在数据量较大时,获得较高的吞吐率。将对应算法的核函数编译,设置相应的参数,并在OpenCL设备上运行。
与现有技术相比,本发明具有如下优点和技术效果:
本发明能将CPU作为控制器,将码字的接收信息放入到全局存储器中,并在完成所有初始化过程后,发起运行核函数的命令;合理地配置OpenCL的各项参数,在每个并行工作组中实现一组译码。通过同一工作组中不同工作项的合作完成最小和算法和分层译码算法。与硬件实现的译码方法不同,基于OpenCL的软件实现可以根据当前的传输速率动态选择译码算法,在传输速率低的时候选择具有低延迟的最小和算法,在传输速率高的时候选择具有高吞吐率的分层译码算法,算法切换可以方便地通过OpenCL核函数的切换实现。本发明针对QC结构LDPC码字的特点,实现了不同码率和码长的QC-LDPC码在不同OpenCL设备上通用的加速译码;并提供了LDPC译码器在OpenCL框架中的并行化实现。能在OpenCL上独立并行地运行很多个LDPC译码器,译码效率大幅度提高。LDPC本身用于4G信号传输,手机移动端实现高效的LDPC译码算法,可以取消手机用来通信的基带芯片中解码的功能,可以节省成本,并且容易软件升级,容易实现多种制式的全网通功能。
附图说明
图1是本发明中将准循环LDPC码的母矩阵进行扩展的结构示意图。
图2是本发明中所使用到的OpenCL平台模型示意图。
图3是本发明中所使用到的OpenCL内存结构示意图。
图4是本发明中所使用到的OpenCL编程模型示意图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。
如图1所示,是使用基于IEEE 802.16e标准的LDPC校验矩阵的母矩阵,以码率为5/6的码字为例,选取扩展因子z为24,即该校验矩阵为96×576。
如图2所示,本实验中所使用的OpenCL的平台模型,本实验使用型号为PowerVRG6200的GPU作为OpenCL设备,MTK的Helio X10CPU作为宿主机进行测试。
如图3所示,一个工作组占用OpenCL设备上一个计算单元,一个工作项占用计算单元内的一个处理单元。初始化时,主要在全局内存分配相应空间。CPU作为宿主机,首先对信源数据进行LDPC编码,并对编码后的比特加上AWGN噪声,之后作为待译码数据放入OpenCL设备内存的全局内存里。并根据传输速率执行相应的核函数。
如图4所示,具体的,将并行运行1000个工作组,同一工作组中各个工作项合作完成译码。
当使用最小和算法译码时,过程如下:设置每个工作组包含96个工作项,每个工作项分别完成校验矩阵中的一行内的信息节点传递给校验节点的对数似然比Lqnm的更新,此时并不需要保存完整的Lqnm,仅保存Lqnm的最小值、次小值以及最小值位置的索引,并用于校验节点传递给信息节点的对数似然比Lrmn的更新,之后是信息节点后验对数似然比Lpn的更新,以此视为完成一次迭代过程。循环执行以上迭代过程,直到经过校验译码正确,或者达到最大译码次数。
当使用分层译码算法译码时,过程如下:设置每个工作组包含24个工作项,此时总共有4个层,从第一层开始,每个工作项分别完成校验矩阵中同一层内的各行的信息节点传递给校验节点的对数似然比Lqnm的更新,此时并不需要保存完整的Lqnm,仅保存Lqnm的最小值、次小值以及最小值位置的索引,并用于校验节点传递给信息节点的对数似然比Lrmn的更新,以上视为完成一层的更新,之后从第二层开始往下更新,直到最后一层更新完成。在对全部层完成一次更新后,之后是信息节点后验对数似然比的更新,以此视为完成一次完整的迭代过程。循环执行以上迭代过程,直到经过校验译码正确,或者达到最大译码次数。
最后各个工作项负责将对应的数据组写回到全局内存,完成译码。

Claims (3)

1.基于OpenCL移动设备QC-LDPC的动态译码方法,其特征在于包括如下步骤:
步骤1、作为预处理,将QC-LDPC码的校验矩阵的母矩阵信息从宿主机传入OpenCL设备的常量存储器,并分配相应的内存空间;
读取校验矩阵的母矩阵信息,计算码字的参数,包括母矩阵的行数hSeedCols、列数hSeedRows和扩展因子z;
在OpenCL设备上的全局内存中分配相应的内存空间,包括用于存放未译码的码字信息和译码完成后的码字信息;
将待处理的码字信息传入OpenCL设备,由于移动设备上的OpenCL设备的全局内存受限,当码字信息过大时,将码字信息分段,依次分别译码;
步骤2、将待处理的码字信息传入OpenCL设备,根据待译码的数据量来动态地选择最小和算法或者分层译码算法;
步骤3、读取相应的核函数,在OpenCL设备上完成译码算法。
2.根据权利要求1所述的基于OpenCL移动设备QC-LDPC的动态译码方法,其特征在于步骤3具体包括:
(1)最小和算法的核函数在OpenCL设备上并行化实现,包括如下详细步骤:
1)在OpenCL设备上为信息节点n后验对数似然比Lpn和校验节点m传递给信息节点n的对数似然比Lrmn分配局部内存,局部内存只能在工作组的共享;
2)根据OpenCL设备的参数信息设置内核的工作组数,每个工作组的工作项为z*hSeedRows,这些工作项合作完成译码任务,其中每个工作项负责完成校验矩阵中同一行内的信息的更新;
3)使用待译码字对信息节点后验对数似然比初始化,并将校验节点传递给信息节点的对数似然比置零,其中i代表当前迭代次数,完成初始化,
Lp n 0 = ln p n 0 ( 0 ) p n 0 ( 1 ) = 2 y n σ 2 Lr m n 0 = 0 ;
其中,表示在译码之前,即第0次迭代时,信息节点n值为0的概率,同理,为此时信息节点n值为1的概率,为信息节点n接收信号与信道噪声之比;
4)循环执行以下步骤:其中同一工作组内z*hSeedRows个工作项分别负责校验矩阵z*hSeedRows个行的相关信息的更新:
4.1)信息节点传递给校验节点的对数似然比的更新:
Lq n m i = Lp n 0 + Σ m ′ ∈ M ( n ) \ m Lr m ′ n i - 1 ;
其中,表示第i次迭代时信息节点n传递给校验节点m的信息的对数似然比,m′∈M(n)\m表示除了校验节点m之外所有与信息节点n有连接的校验节点m′;
4.2)校验节点传递给信息节点的对数似然比的更新:
Lr m n i = Π n ′ ∈ N ( m ) \ n s i g n ( Lq n ′ m i ) min n ′ ∈ N ( m ) \ n | Lq n ′ m i | ;
其中,sign函数表示符号函数,即当输入为负数时输出-1,输入为正数时输出1,输入为0时输出0;n′∈N(m)\n表示除了信息节点n之外所有与校验节点m有连接的信息节点n′;表示在n′∈N(m)\n范围内所能取得的最小值;
4.3)信息节点后验对数似然比的更新:
Lp n i = Lp n 0 + Σ m ∈ M ( n ) Lr m n i - 1 ;
4.3)信息节点的硬判决和校验:
c n i = 1 i f Lp n i < 0 0 i f Lp n i > 0 ;
其中,表示第i次迭代后信息节点n经过硬判决后的值;
5)循环以上过程,直到经校验所译码为正确的,或者达到最大译码次数,则跳出循环,将译码结果传回宿主机内存;
(2)分层译码算法的核函数在OpenCL设备上并行化实现,包括如下详细步骤:
1)在OpenCL设备上为信息节点后验对数似然比局部内存只能在工作组的共享;校验节点传递给信息节点的对数似然比将保存在各个工作项的私有内存中;
2)根据OpenCL设备的参数信息设置内核的工作组数,每个工作组的工作项为z,这些工作项合作完成译码任务其中,每个工作项负责完成校验矩阵中同一层内的信息的更新;
3)使用待译码字对信息节点后验对数似然比初始化,并将校验节点传递给信息节点的对数似然比置零,其中i代表当前迭代次数,k代表当前所在层数,完成初始化,
Lp n 1 , 0 = ln p n 0 ( 0 ) p n 0 ( 1 ) = 2 y n &sigma; 2 Lr n m 0 , k = 0 ;
4)循环执行以下步骤:其中同一工作组内z个工作项分别负责校验矩阵一个层内的z个行的相关信息的更新:
4.1)信息节点传递给校验节点的对数似然比的更新:
Lq nm i , k = Lp n i , k - 1 - Lr mn i - 1 , k ;
其中,k表示当前的层数,表示在第i次迭代中,第k层中信息节点n传递给校验节点m的信息的对数似然比;表示在第i次迭代中,第k层中校验节点m传递给信息节点n的信息的对数似然比;
4.2)校验节点传递给信息节点的对数似然比的更新:
Lr m n i , k = &Pi; n &prime; &Element; N ( m ) \ n s i g n ( Lq n &prime; m i , k ) min n &prime; &Element; N ( m ) \ n | Lq n &prime; m i , k | ;
4.2)信息节点后验对数似然比的更新:
Lp n i , k = Lq n m i , k + Lr m n i , k ;
4.3)仅仅在完成最后一层的的更新后,才进行信息节点的硬判决和校验:
c n i = 1 i f Lp n i < 0 0 i f Lp n i > 0 ;
5)循环以上过程,直到经校验所译码为正确的,或者达到最大译码次数,则跳出循环,将译码结果传回宿主机内存。
3.根据权利要求1所述的基于OpenCL移动设备QC-LDPC的动态译码方法,其特征在于步骤2中,预先确定一个阈值,对于目前的移动设备通常阈值为几百KB,根据待译码的传输速率,当传输速率低于阈值时,动态地选择高度并行的最小和算法,能够在数据量较小时,获得较低的时间延迟;当传输速率阈值时,选择部分并行的分层译码算法,单组译码更节省计算资源,能够在数据量较大时,获得较高的吞吐率。将对应算法的核函数编译,设置相应的参数,并在OpenCL设备上运行。
CN201610846690.1A 2016-09-23 2016-09-23 基于OpenCL移动设备QC-LDPC的动态译码方法 Active CN106452455B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610846690.1A CN106452455B (zh) 2016-09-23 2016-09-23 基于OpenCL移动设备QC-LDPC的动态译码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610846690.1A CN106452455B (zh) 2016-09-23 2016-09-23 基于OpenCL移动设备QC-LDPC的动态译码方法

Publications (2)

Publication Number Publication Date
CN106452455A true CN106452455A (zh) 2017-02-22
CN106452455B CN106452455B (zh) 2019-10-18

Family

ID=58166125

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610846690.1A Active CN106452455B (zh) 2016-09-23 2016-09-23 基于OpenCL移动设备QC-LDPC的动态译码方法

Country Status (1)

Country Link
CN (1) CN106452455B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107241103A (zh) * 2017-04-20 2017-10-10 广东工业大学 一种针对ldpc码的局部动态bp译码方法
CN107968657A (zh) * 2017-11-28 2018-04-27 东南大学 一种适用于低密度奇偶校验码的混合译码方法
CN108900198A (zh) * 2018-06-29 2018-11-27 中国石油大学(华东) 一种串行抵消列表译码参数的快速确定方法
CN110380735A (zh) * 2019-06-24 2019-10-25 东南大学 一种基于单指令多数据流的软件实现qc-ldpc译码方法
WO2023272768A1 (en) * 2021-07-02 2023-01-05 Hong Kong Applied Science and Technology Research Institute Company Limited Low-latency segmented quasi-cyclic low-density parity-check (qc-ldpc) decoder
CN117879620A (zh) * 2024-03-13 2024-04-12 荣耀终端有限公司 译码方法、可读存储介质、程序产品及电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102064837A (zh) * 2010-12-24 2011-05-18 西安电子科技大学 基于fifo分段存储的qc-ldpc码部分并行译码方法
JP2014220713A (ja) * 2013-05-09 2014-11-20 日本電信電話株式会社 符号装置、復号装置、方法、及びプログラム
CN102932003B (zh) * 2012-09-07 2016-05-04 上海交通大学 基于gpu架构的qc-ldpc码的加速译码方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102064837A (zh) * 2010-12-24 2011-05-18 西安电子科技大学 基于fifo分段存储的qc-ldpc码部分并行译码方法
CN102932003B (zh) * 2012-09-07 2016-05-04 上海交通大学 基于gpu架构的qc-ldpc码的加速译码方法
JP2014220713A (ja) * 2013-05-09 2014-11-20 日本電信電話株式会社 符号装置、復号装置、方法、及びプログラム

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107241103A (zh) * 2017-04-20 2017-10-10 广东工业大学 一种针对ldpc码的局部动态bp译码方法
CN107968657A (zh) * 2017-11-28 2018-04-27 东南大学 一种适用于低密度奇偶校验码的混合译码方法
CN107968657B (zh) * 2017-11-28 2021-05-18 东南大学 一种适用于低密度奇偶校验码的混合译码方法
CN108900198A (zh) * 2018-06-29 2018-11-27 中国石油大学(华东) 一种串行抵消列表译码参数的快速确定方法
CN110380735A (zh) * 2019-06-24 2019-10-25 东南大学 一种基于单指令多数据流的软件实现qc-ldpc译码方法
WO2023272768A1 (en) * 2021-07-02 2023-01-05 Hong Kong Applied Science and Technology Research Institute Company Limited Low-latency segmented quasi-cyclic low-density parity-check (qc-ldpc) decoder
US11575390B2 (en) 2021-07-02 2023-02-07 Hong Kong Applied Science and Technology Research Insitute Co., Ltd. Low-latency segmented quasi-cyclic low-density parity-check (QC-LDPC) decoder
CN117879620A (zh) * 2024-03-13 2024-04-12 荣耀终端有限公司 译码方法、可读存储介质、程序产品及电子设备

Also Published As

Publication number Publication date
CN106452455B (zh) 2019-10-18

Similar Documents

Publication Publication Date Title
CN106452455A (zh) 基于OpenCL 移动设备QC‑LDPC 的动态译码方法
Wang et al. High throughput low latency LDPC decoding on GPU for SDR systems
RU2739465C2 (ru) Способ и устройство для кодирования и декодирования кодов с низкой плотностью проверок на четность
CN102394661B (zh) 基于层译码处理的ldpc译码器及译码方法
CN103220003B (zh) 提高节点处理并行度的qc-ldpc译码器的实现方法
CN103684474B (zh) 一种高速ldpc译码器的实现方法
CN101232288B (zh) 一种基于奇偶校验矩阵的ldpc码的译码方法及译码器
CN102932003A (zh) 基于gpu架构的qc-ldpc码的加速译码方法
CN102664638A (zh) 基于分层nms算法的多码长ldpc码译码器的fpga实现方法
Kang et al. Parallel LDPC decoder implementation on GPU based on unbalanced memory coalescing
Li et al. A multi-standard efficient column-layered LDPC decoder for software defined radio on GPUs
Andrade et al. A survey on programmable LDPC decoders
Abburi A scalable LDPC decoder on GPU
CN103618556A (zh) 基于rmp调度的部分并行qc-ldpc译码方法
CN101594152B (zh) 实现水平运算和垂直运算同时运行的ldpc码译码方法
CN106788467B (zh) 一种基于CUDA的Raptor Code编码方法、译码方法及系统
Park et al. Irregular product coded computation for high-dimensional matrix multiplication
CN109921802A (zh) 一种qc-ldpc码的译码方法、模块及装置
CN109120275B (zh) 一种编码方法及装置、计算机存储介质
Li et al. Efficient graphics processing unit based layered decoders for quasicyclic low‐density parity‐check codes
CN102611462B (zh) 一种ldpc-cc译码算法及译码器
CN102594369B (zh) 基于fpga的准循环低密度校验码译码器及译码方法
Andrade et al. From low-architectural expertise up to high-throughput non-binary LDPC decoders: Optimization guidelines using high-level synthesis
Kun High throughput GPU LDPC encoder and decoder for DVB-S2
Liao et al. A high throughput and flexible rate 5G NR LDPC encoder on a single GPU

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
OL01 Intention to license declared
OL01 Intention to license declared