CN112152637B - Dvb-s2 ldpc译码变量节点更新模块及其实现方法 - Google Patents

Dvb-s2 ldpc译码变量节点更新模块及其实现方法 Download PDF

Info

Publication number
CN112152637B
CN112152637B CN202010945001.9A CN202010945001A CN112152637B CN 112152637 B CN112152637 B CN 112152637B CN 202010945001 A CN202010945001 A CN 202010945001A CN 112152637 B CN112152637 B CN 112152637B
Authority
CN
China
Prior art keywords
llr
variable node
module
storage unit
check
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
CN202010945001.9A
Other languages
English (en)
Other versions
CN112152637A (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 CN202010945001.9A priority Critical patent/CN112152637B/zh
Publication of CN112152637A publication Critical patent/CN112152637A/zh
Application granted granted Critical
Publication of CN112152637B publication Critical patent/CN112152637B/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

Landscapes

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

Abstract

本发明公开了一种DVB‑S2LDPC译码变量节点更新模块及其实现方法,该方法包括:根据输入的第一数量,例化得到相应第一数量的变量节点更新子模块;在第一RAM上分别为每个变量节点更新子模块分配LLR存储单元,用于存储所述变量节点更新子模块从外部获取的第一LLR和计算得到第二LLR;在第二RAM上分别为每个变量节点更新子模块分配校验数据存储单元,用于存储所述变量节点更新子模块从校验节点处理模块获得的校验矩阵数据信息。本发明采用集群化设计变量节点更新模块,实现变量节点更新模块内部的功能模块化及资源共享化,能够有效提高内存使用效率,减少碎片。

Description

DVB-S2 LDPC译码变量节点更新模块及其实现方法
技术领域
本发明涉及信号与信息处理领域,特别涉及一种DVB-S2 LDPC译码变量节点更新模块及其实现方法。
背景技术
LDPC码是一种适合卫星通信系统的信道纠错码方案;相同调制方式和误码要求下,LDPC码相对于Turbo有0.3dB~0.5dB不等的编码增益。
ETSI(European Telecommunications Standards Institute,欧洲电信标准化协会)的第二代卫星数字广播标准DVB-S2阐述了不同码长、不同码率下LDPC(Low DensityParity Check Code,低密度校验码)的编码过程。
DVB-S2中采用的LDPC码为一种非规则重复累积(IRA)码;目前,业内针对IRA-LDPC码的研究成果较多;在算法方面,为了减小译码器的复杂度,提出了各种改进算法,常用的由置信传播算法(BPA)、最小和算法(MSA)、改进最小和算法(NMSA、OMSA)等;在实现结构方面,为了提高译码速度,提出了变量节点和校验节点处理模块的多子模块并行、对变量节点和校验节点统一处理、部分并行进行操作等策略,所以在LDPC译码时主要有量大处理模块,即变量节点更新模块和校验节点处理模块,变量节点更新模块主要是将校验矩阵每列中元素值为1的使用对应位置LLR(似然比)替换,然后求校验矩阵每列元素值的和,作为更新后的LLR,并存储LLR和从校验节点处理模块获得的新的校验矩阵数据信息,校验节点处理模块主要是求校验矩阵每行中最小元素值和次小值,用最小元素值替换掉对应行的其他元素值,用次小值替换最小元素值对应元素的元素值,得到新的校验矩阵数据,并发送给变量节点更新模块;在工程实现方面,为了提高编译码的吞吐量,通常都将流水线结构应用到译码器的各个处理单元中。
变量节点更新模块用于完成译码过程中变量节点外信息(LLR,似然比)更新计算和码字判决计算(根据校验节点处理模块发送的新的校验矩阵数据计算更新LLR),并将更新后的外信息和码字判决结果回写到相应的存储空间。目前,变量节点更新模块包括多个变量节点更新子模块,用于并行完成变量节点外信息更新计算和码字判决计算,每个变量节点更新子模块还对应一个RAM存储模块,用于存储变量节点更新子模块更新后的外信息、码字判决结果以及从校验节点处理模块获得的校验矩阵数据。变量节点更新模块虽然是LDPC译码架构中相对较为简单的模块,但并行的变量节点更新子模块在实施时需求数量较大,而FPGA或ASIC的资源是有限的,所以在进行LDPC译码架构设计时,对资源消耗非常敏感。在现有的技术方案中,变量节点更新模块的每个变量节点更新子模块对应一个RAM存储子模块,无法进行资源共享,不仅会产生很多碎片,无法充分和灵活调整独立RAM的使用,造成资源浪费;而且,无法根据芯片使用情况灵活调整变量节点更新子模块例化数量,需要修改代码,灵活性差,工作量大。
发明内容
本发明旨在至少解决现有技术中存在的技术问题之一。为此,本发明提出一种DVB-S2 LDPC译码变量节点更新模块及其实现方法,采用集群化设计变量节点更新模块,实现变量节点更新模块内部的相同功能模块化及资源共享化,不仅针对ASIC实现内存优化设计,能够有效提高内存使用效率,而且能够根据芯片使用情况,通过参数修改灵活调整变量节点更新子模块例化数量。
根据本发明的第一方面,提供了一种DVB-S2 LDPC译码变量节点更新模块,包括:
第一例化模块,根据输入的第一数量,例化得到相应第一数量的变量节点更新子模块;
第一RAM,根据所述第一数量为每个变量节点更新子模块分配LLR存储单元,用于存储所述变量节点更新子模块从外部获取的第一LLR和计算得到第二LLR;
第二RAM,根据所述第一数量为每个变量节点更新子模块分配校验数据存储单元,用于存储所述变量节点更新子模块从校验节点处理模块获得的校验矩阵数据信息。
本发明的一个的实施例中,所述第一数量为正整数,最大取值为360。
本发明的一个的实施例中,所述LLR存储单元包括:
第一LLR存储单元,用于存储将从外部获取的第一LLR;
第二LLR存储单元,用于存储每次迭代计算得到的第二LLR,且只存储最新计算的第二LLR。
本发明的一个的实施例中,所述第一LLR存储单元和第二LLR存储单元为矩阵存储结构;
其中,所述矩阵存储结构的列为变量节点并行度数N;行M为码长除以变量节点并行度数N;矩阵存储结构上存储N乘以M个所述第一LLR或第二LLR,每个所述第一LLR或第二LLR依次对应校验矩阵的一列。
本发明的一个的实施例中,所述变量节点并行度数N为360。
根据本发明的第二方面,提供了一种DVB-S2 LDPC译码变量节点更新模块的实现方法,包括:
根据输入的第一数量,例化得到相应第一数量的变量节点更新子模块;
在第一RAM上分别为每个变量节点更新子模块分配LLR存储单元,用于存储所述变量节点更新子模块从外部获取的第一LLR和计算得到第二LLR;
在第二RAM上分别为每个变量节点更新子模块分配校验数据存储单元,用于存储所述变量节点更新子模块从校验节点处理模块获得的校验矩阵数据信息。
本发明的一个的实施例中,所述第一数量为正整数,最大取值为360。
本发明的一个的实施例中,所述LLR存储单元包括第一LLR存储单元和第二LLR存储单元;
将从外部获取的第一LLR存储在所述第一LLR存储单元上;
将每次迭代计算得到的第二LLR存储在第二LLR存储单元上,且只存储最新计算的第二LLR。
本发明的一个的实施例中,所述第一LLR存储单元和第二LLR存储单元为矩阵存储结构;
其中,所述矩阵存储结构的列为变量节点并行度数N;行M为码长除以变量节点并行度数N;矩阵存储结构上存储N乘以M个所述第一LLR或第二LLR,每个所述第一LLR或第二LLR依次对应校验矩阵的一列。
本发明的一个的实施例中,所述变量节点并行度数N为360。
本发明实施例采用集群化设计变量节点更新模块,实现变量节点更新模块内部的功能模块化及资源共享化,多个变量节点更新子模块共用两个大的RAM存储子模块,不仅针对ASIC实现内存优化设计,能够有效提高内存使用效率,而且能够通过参数修改调整共享RAM存储子模块的变量节点更新子模块例化数量,更够根据芯片使用情况灵活调整变量节点更新子模块例化数量。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1为DVB-S2标准种在4/9码率下的H矩阵;
图2为图1矩阵的子矩阵H1;
图3为图1矩阵的子矩阵H2;
图4为为本发明实施例一提供的一种DVB-S2 LDPC译码变量节点更新模块的结构框图;
图5为本发明实施例一中矩阵存储结构示意图;
图6为本发明实施例一中,具有修正因子q时,矩阵存储结构示意图;
图7为本发明实施例一中第一数量NUMVNS=2时,综合后FPGA资源消耗图;
图8为本发明实施例一中第一数量NUMVNS=3时,综合后FPGA资源消耗图;
图9为本发明实施例一中第一数量NUMVNS=120时,综合后FPGA资源消耗图;
图10为本发明实施例二提供的一种DVB-S2 LDPC译码变量节点更新模块的实现方法流程图。
具体实施方式
本发明提供的一种DVB-S2 LDPC译码变量节点更新模块及其实现方法,基于FPGA或ASIC,可以使用Verilog、VHDL、System C,System Generator/DSP buil der等实现;通过参数化和模块化的设计,具有消耗资源少、可移植能力性强等优点。下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
在本发明的描述中,需要理解的是,涉及到方位描述,例如上、下、前、后、左、右等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
在本发明的描述中,若干的含义是一个或者多个,多个的含义是两个以上,大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。如果有描述到第一、第二只是用于区分技术特征为目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。
DVB-S2标准的LDPC码是一种非规则重复累积码(IRA码),其编码和译码均可以通过校验矩阵而非生成矩阵进行,所以其校验矩阵的存储十分重要。在本发明中,将校验矩阵H表示为H=[H1,H2],H维度为m×n,H1维度为m×k,H2维度为m×m。其中,n位不同码率码字的输出码长,k为不同码率码字的输入码长,m为n-k。每种码字的n、k具体值参见表1;表2为DVB-S2 LDPC中的子矩阵H1特性分析表;图1为DVB-S2 4/9码率的校验矩阵的子矩阵H1的示意图,图2为DVB-S2 4/9码率的校验矩阵的子矩阵H2的示意图,图3为DVB-S2 4/9码率的校验矩阵H的示意图。
DVB-S2标准附录B和C中给出了各码字的校验位地址表,由校验位地址表可以求得码字的校验矩阵,并进而进行编译码。
表1:不同码字类型的各参数值表。
码字类型 码率 输出码长n 输入码长k 行数X j q
0 1/4normal 64800 16200 45 12 135
1 1/3normal 64800 21600 60 12 120
2 2/5normal 64800 25920 72 12 108
3 1/2normal 64800 32400 90 8 90
4 3/5normal 64800 38880 108 12 72
5 2/3normal 64800 43200 120 13 60
6 3/4normal 64800 48600 135 12 45
7 4/5normal 64800 51840 144 11 36
8 5/6normal 64800 54000 150 13 30
9 8/9normal 64800 57600 160 4 20
10 9/10normal 64800 58320 162 4 18
11 1/5short 16200 3240 9 12 36
12 1/3short 16200 5400 15 12 30
13 2/5short 16200 6480 18 12 27
14 4/9short 16200 7200 20 8 25
15 3/5short 16200 9720 27 12 18
16 2/3short 16200 10800 30 13 15
17 11/15short 16200 11880 33 12 12
18 7/9short 16200 12600 35 -- 10
19 37/45short 16200 13320 37 13 8
20 8/9short 16200 14400 40 4 5
表2:DVB-S2 LDPC中的子矩阵H1特性分析表。
在表2中可以看出,对于校验矩阵H的子矩阵H1,其本身存在一些特殊性质,例如其矩阵的行重和列重是规律性的;但短帧的行重中存在V1,V2,V3,V4,V5五个向量,不再是固定值,表示该校验矩阵的行重以该向量为一周期循环至最后。其中:
V1=[2,2,2,2,2,2,1,2,2,2,2,2,2,1,1,1,2,2,2,2,1,2,2,2,2,2,1,1,1,2,1,2,2,2,2,2];
V2=[3,4,5,4,2,3,2,3,4,3,3,4,4,4,4,3,2,4,3,2,4,3,4,3,5];
V3=[8,10,9,7,8,11,9,10,9,8,9,10];
V4=[10,9,11,10,10,1l,11,11,11,11];
V5=[14,14,14,14,17,16,17,15]。
而对于DVB-S2标准中各LDPC码的校验矩阵的存储,也不是直接存储校验矩阵,实际上是对每个校验矩阵对应的边沿表(edgetable)的存储,边沿表是校验矩阵加扰前的缩减简化值,每个边沿表有X行(X=k/360,k为该码字类型的输入码长),每行有J(J也称度数,边沿表每行J取3或j,即每行校验位置值的数量为3或j)个校验位置值,每个校验矩阵对应的边沿表具体可参看DVB-S2标准的附录B和附录C,在此不再做更详细描述。
存储边沿表,相较于直接存储校验矩阵,在一定程度上能够减少资源消耗,但21种码字的边沿表具有的行数各不相同,且边沿表中,每个校验位置值较大,各个校验位置值的动态范围依然很大,并没有解决现有校验矩阵的存储访问逻辑复杂,逻辑资源消耗大,难以实现低资源消耗的存储的问题。所以本发明实施例,采用新的存储逻辑,以边沿表的每行为一个存储单元,先存储每行的总体特征(行描述字),再对每行中的各个校验位置进行计算,得到表征该校验位置值的特征值(校验描述字),该校验描述字为按照校验位置值对应的q值对该校验位置值取模,相较于校验位置值,校验描述字缩小q倍,存储该校验描述字,相较于校验位置值所需存储空间减小,且不同校验位置值的校验描述字之间的动态范围也相应减小,有效的降低了校验矩阵的存储访问逻辑复杂,减小逻辑资源消耗,实现低资源消耗的存储。
实施例一。
如图4所示,本发明实施例提供的一种DVB-S2 LDPC译码变量节点更新模块,包括:……
第一例化模块10,根据输入的第一数量,例化得到相应第一数量的变量节点更新子模块11;在本实施例中,第一数量为正整数,最大取值为360。
第一RAM20,根据第一数量为每个变量节点更新子模块11分配LLR存储单元21,用于存储变量节点更新子模块从外部获取的第一LLR和计算得到第二LLR;在本实施例中,LLR存储单元21包括:
第一LLR存储单元,用于存储将从外部获取的第一LLR;
第二LLR存储单元,用于存储每次迭代计算得到的第二LLR,且只存储最新计算的第二LLR,即每次计算得到新的第二LLR都会覆盖掉上一次迭代存储的第二LLR,并在达到最大迭代次数时,将最后一次计算得到的第二LLR加上原始的第一LLR,输出该和值,作为码子判决依据,例如,校验矩阵为m×n,即行为m,列为n,则原始输入的第一LLR和第二LLR个数都为n,每个第一LLR和每个第二LLR对应校验矩阵的一个列,所以在进行第一LLR和第二LLR做和时是与同一列对应的第一LLR和第二LLR之间做和,得到和值的个数依然为n。
第二RAM30,根据第一数量为每个变量节点更新子模块11分配校验数据存储单元31,用于存储变量节点更新子模块从校验节点处理模块获得的校验矩阵数据信息。
在本发明实施例中,第一LLR存储单元和第二LLR存储单元为矩阵存储结构;
其中,矩阵存储结构的列为变量节点并行度数N;行M为码长除以变量节点并行度数N;矩阵存储结构上存储N乘以M个所述第一LLR或第二LLR,每个所述第一LLR或第二LLR依次对应校验矩阵的一列。
以变量节点并行度数N为360为例,矩阵存储结构如图5所示,矩阵存储结构的列为360,如果码长为64800,则行数为180,如果码长为短帧16200,则行数为45。在图5中,VN[]为每个变量节点的编号,如并行度为360时,变量节点个数为360,则编号为VN[0]至VN[359],这样addr和VN[]确定了每个第一LLR或第二LLR的存储位置。
校验节点处理模块的存储结构在码字的所有数据位进行校验编码的时候都会使用,但在最后的校验位却会以一种不同的方式来合并。第一个校验位,VN[K]会编码到校验方程CN[1],然后VN[K+1]编码到CN[2],如此继续下去,一直到码字的最后,这种校验节点的组织方式不同于图5所示的方式,所以采用图6所示的矩阵存储结构来匹配校验节点处理模块CN的结构。
在图6中,校验的变量节点的bit位由因子q来修正,并且与校验节点单元的结构通过若干条边相连。因子q=(n-k)/360,即k=n-360q,所以变量节点VN[359]的最后一个地址包含变量节点(k+359*q-1)的数据,也相当于n-1,其中,n为码长,k为有效码长。
每一个变量节点更新子模块都对应360个变量节点,分别编号为VN[0]到VN[359].每个变量节点都有一个对应的RAM与其相连。在1/2码率时,k为32400,在每组RAM中,由于码长为64800,码的并行度为360,因此码字可以分成64800/360=180组,因此在进行译码器存储结构设计时,为了满足存储要求,可以将RAM的深度设置成最大值180。又因为在研究改进的最小和译码算法时,采用的量化方案若为6bit量化,因此在对RAM进行设置时,可以把宽度确定为6,该RAM在设计中采用与变量节点更新子模块相同的时钟驱动,主要为变量节点更新子模块提供节点信息的存储。为了使变量节点的处理更加高效,变量节点的存储方式可以用双口RAM。
变量节点更新子模块用来对变量节点中L(q(I,j) k)的值进行处理,处理前后的值均存在与其相连的第一RAM中。因为L(r(ji) k)的值时从校验节点处理模块传来的,因此在进行变量节点的信息处理时,根据变量节点的处理公式,只需要从与其相连的第一RAM中读取L(Pi)的值,并与校验节点处理模块传来的L(r(ji) k)的值进行累加,就可以完成变量节点信息的处理过程。变量节点对信息的更新操作相对于校验节点对信息的更新操作,其实现过程复杂度比较小。
对本发明进行了逻辑设计和仿真、综合,综合后的FPGA资源消耗评估如下,第一数量NUMVNS为2时,其中LUT占150个,如图7所示,FF为207个。第一数量NUMVNS为3时,LUT占218个,FF为280个,如图8所示。第一数量NUMV NS为120时,LUT占8143个,FF为8849个,如图9所示。
实施例二。
如图10所示,本发明实施例提供的一种DVB-S2 LDPC译码变量节点更新模块的实现方法,包括以下步骤:
步骤S100、根据输入的第一数量,例化得到相应第一数量的变量节点更新子模块;
步骤S200、在第一RAM上分别为每个变量节点更新子模块分配LLR存储单元,用于存储所述变量节点更新子模块从外部获取的第一LLR和计算得到第二LLR;
步骤S300、在第二RAM上分别为每个变量节点更新子模块分配校验数据存储单元,用于存储所述变量节点更新子模块从校验节点处理模块获得的校验矩阵数据信。
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
尽管已经示出和描述了本发明的实施方式,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施方式进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。

Claims (10)

1. 一种DVB-S2 LDPC译码变量节点更新模块,其特征在于,包括:
第一例化模块,根据输入的第一数量,例化得到相应第一数量的变量节点更新子模块;
第一RAM,根据所述第一数量为每个变量节点更新子模块分配LLR存储单元,用于存储所述变量节点更新子模块从外部获取的第一LLR和计算得到第二LLR;
第二RAM,根据所述第一数量为每个变量节点更新子模块分配校验数据存储单元,用于存储所述变量节点更新子模块从校验节点处理模块获得的校验矩阵数据信息。
2. 根据权利要求1所述的一种DVB-S2 LDPC译码变量节点更新模块,其特征在于,所述第一数量为正整数,最大取值为360。
3. 根据权利要求1所述的一种DVB-S2 LDPC译码变量节点更新模块,其特征在于,所述LLR存储单元包括:
第一LLR存储单元,用于存储将从外部获取的第一LLR;
第二LLR存储单元,用于存储每次迭代计算得到的第二LLR,且只存储最新计算的第二LLR。
4. 根据权利要求3所述的一种DVB-S2 LDPC译码变量节点更新模块,其特征在于,所述第一LLR存储单元和第二LLR存储单元为矩阵存储结构;
其中,所述矩阵存储结构的列为变量节点并行度数N;行M为码长除以变量节点并行度数N;矩阵存储结构上存储N乘以M个所述第一LLR或第二LLR,每个所述第一LLR或第二LLR依次对应校验矩阵的一列。
5. 根据权利要求4所述的一种DVB-S2 LDPC译码变量节点更新模块,其特征在于,所述变量节点并行度数N为360。
6.一种DVB-S2 LDPC译码变量节点更新模块的实现方法,其特征在于,包括:
根据输入的第一数量,例化得到相应第一数量的变量节点更新子模块;
在第一RAM上分别为每个变量节点更新子模块分配LLR存储单元,用于存储所述变量节点更新子模块从外部获取的第一LLR和计算得到第二LLR;
在第二RAM上分别为每个变量节点更新子模块分配校验数据存储单元,用于存储所述变量节点更新子模块从校验节点处理模块获得的校验矩阵数据信息。
7.根据权利要求6所述的方法,其特征在于,所述第一数量为正整数,最大取值为360。
8.根据权利要求6所述的方法,其特征在于,所述LLR存储单元包括第一LLR存储单元和第二LLR存储单元;
将从外部获取的第一LLR存储在所述第一LLR存储单元上;
将每次迭代计算得到的第二LLR存储在第二LLR存储单元上,且只存储最新计算的第二LLR。
9.根据权利要求8所述的方法,其特征在于,所述第一LLR存储单元和第二LLR存储单元为矩阵存储结构;
其中,所述矩阵存储结构的列为变量节点并行度数N;行M为码长除以变量节点并行度数N;矩阵存储结构上存储N乘以M个所述第一LLR或第二LLR,每个所述第一LLR或第二LLR依次对应校验矩阵的一列。
10.根据权利要求9所述的方法,其特征在于,所述变量节点并行度数N为360。
CN202010945001.9A 2020-09-10 2020-09-10 Dvb-s2 ldpc译码变量节点更新模块及其实现方法 Active CN112152637B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010945001.9A CN112152637B (zh) 2020-09-10 2020-09-10 Dvb-s2 ldpc译码变量节点更新模块及其实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010945001.9A CN112152637B (zh) 2020-09-10 2020-09-10 Dvb-s2 ldpc译码变量节点更新模块及其实现方法

Publications (2)

Publication Number Publication Date
CN112152637A CN112152637A (zh) 2020-12-29
CN112152637B true CN112152637B (zh) 2024-04-30

Family

ID=73889407

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010945001.9A Active CN112152637B (zh) 2020-09-10 2020-09-10 Dvb-s2 ldpc译码变量节点更新模块及其实现方法

Country Status (1)

Country Link
CN (1) CN112152637B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101471673A (zh) * 2007-12-28 2009-07-01 三星电子株式会社 Ldpc码存储单元划分方法以及一种ldpc码存储器
JP2009260692A (ja) * 2008-04-17 2009-11-05 Pioneer Electronic Corp 復号装置及び復号方法
CN101777921A (zh) * 2010-01-28 2010-07-14 中国人民解放军国防科学技术大学 用于显式存储片上系统的结构化ldpc码译码方法及装置
CN102394661A (zh) * 2011-11-08 2012-03-28 北京邮电大学 基于层译码处理的ldpc译码器及译码方法
CN107852176A (zh) * 2015-01-14 2018-03-27 北京航空航天大学 Ldpc码编码器和译码器
CN108462495A (zh) * 2018-04-03 2018-08-28 北京航空航天大学 一种基于gpu的多元ldpc码高速并行译码器及其译码方法
CN108809327A (zh) * 2017-05-05 2018-11-13 上海数字电视国家工程研究中心有限公司 Ldpc译码方法
CN110868225A (zh) * 2019-11-29 2020-03-06 中科院计算技术研究所南京移动通信与计算创新研究院 Ldpc码译码器

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1715589A1 (en) * 2005-03-02 2006-10-25 STMicroelectronics N.V. LDPC decoder in particular for DVB-S2 LDCP code decoding

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101471673A (zh) * 2007-12-28 2009-07-01 三星电子株式会社 Ldpc码存储单元划分方法以及一种ldpc码存储器
JP2009260692A (ja) * 2008-04-17 2009-11-05 Pioneer Electronic Corp 復号装置及び復号方法
CN101777921A (zh) * 2010-01-28 2010-07-14 中国人民解放军国防科学技术大学 用于显式存储片上系统的结构化ldpc码译码方法及装置
CN102394661A (zh) * 2011-11-08 2012-03-28 北京邮电大学 基于层译码处理的ldpc译码器及译码方法
CN107852176A (zh) * 2015-01-14 2018-03-27 北京航空航天大学 Ldpc码编码器和译码器
CN108809327A (zh) * 2017-05-05 2018-11-13 上海数字电视国家工程研究中心有限公司 Ldpc译码方法
CN108462495A (zh) * 2018-04-03 2018-08-28 北京航空航天大学 一种基于gpu的多元ldpc码高速并行译码器及其译码方法
CN110868225A (zh) * 2019-11-29 2020-03-06 中科院计算技术研究所南京移动通信与计算创新研究院 Ldpc码译码器

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
FPGA architecture of multi-codeword LDPC decoder with efficient BRAM utilization;S. Nimara等;《2016 IEEE 19th International Symposium on Design and Diagnostics of Electronic Circuits & Systems (DDECS)》;20160602;1-4 *
基于FPGA的LDPC码编译码器联合设计;袁瑞佳 白宝明;《电子与信息学报》;20120115;38-44 *

Also Published As

Publication number Publication date
CN112152637A (zh) 2020-12-29

Similar Documents

Publication Publication Date Title
US7395487B2 (en) Common circuitry supporting both bit node and check node processing in LDPC (Low Density Parity Check) decoder
US10298261B2 (en) Reduced complexity non-binary LDPC decoding algorithm
US7454685B2 (en) Method and apparatus for decoding low density parity check code using united node processing
US7587659B2 (en) Efficient front end memory arrangement to support parallel bit node and check node processing in LDPC (Low Density Parity Check) decoders
US7853854B2 (en) Iterative decoding of a frame of data encoded using a block coding algorithm
US20060107193A1 (en) Method and apparatus for efficiently decoding low density parity check code
US8046658B2 (en) Method and device for decoding blocks encoded with an LDPC code
WO2018036178A1 (zh) 一种ldpc的解码方法
KR20060056933A (ko) 데이터를 엔코딩 및 디코딩하는 방법 및 장치
CN101931416A (zh) 移动数字多媒体广播系统中的ldpc码的并行分层译码器
CN103618556A (zh) 基于rmp调度的部分并行qc-ldpc译码方法
JP5333233B2 (ja) 復号装置、データ蓄積装置、データ通信システム、および復号方法
CN105262493A (zh) 低密度奇偶校验码的译码方法
CN113783576A (zh) 用于从循环置换矩阵的集群构建的准循环低密度奇偶校验码的垂直分层解码的方法及设备
US20170134048A1 (en) Message-passing based decoding using syndrome information, and related methods
CN102594369B (zh) 基于fpga的准循环低密度校验码译码器及译码方法
TWI487290B (zh) 用於準循環低密度奇偶校驗碼之再定址解碼器與解碼方法
CN112152637B (zh) Dvb-s2 ldpc译码变量节点更新模块及其实现方法
US11108410B1 (en) User-programmable LDPC decoder
US10727869B1 (en) Efficient method for packing low-density parity-check (LDPC) decode operations
CN101557232A (zh) 一种低密度奇偶校验码解码方法
CN113595564B (zh) 基于信息截断的低复杂度多进制ldpc码译码器装置
CN109921877B (zh) 一种awgn信道下基于cuda架构的ldpc码并行译码方法
US20080178066A1 (en) Method and apparatus for receiving data in communication system
CN102164023A (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
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

CB02 Change of applicant information
TA01 Transfer of patent application right

Effective date of registration: 20220316

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

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant