兼容DVB-S2X标准的LDPC译码器设计方法技术

技术编号:14845077 阅读:70 留言:0更新日期:2017-03-17 11:46
本发明专利技术公开了一种兼容DVB-S2X标准的LDPC译码器设计方法,主要解决现有系统中译码器迭代时间长的问题。其实现步骤是:1.设计数据缓存器,将输入单路数据进行顺序调整后转换为360路并行数据缓存,并对其译码初始化;2.设计第一桶形移位模块,将变量节点更新后的360路数据进行移位并进行校验节点更新;3.设计第二桶形移位模块,将校验节点更新完成后的360路数据进行移位和变量节点更新;4.当译码迭代次数达到设置的最大迭代次数后,对360路数据计算硬判决信息;5.对硬判决信息进行译码判决后顺序输出,完成译码。本发明专利技术减少了LDPC译码器的迭代时间,使得译码器的吞吐量提高一倍。

【技术实现步骤摘要】

本专利技术属于无线通信领域,涉及一种兼容DVB-S2X标准的LDPC译码器设计方法,可用于DVB-S2和DVB-S2X标准中所有码长和码率LDPC码的译码。
技术介绍
低密度奇偶校验码简称LDPC码,是一种线性分组码。众多研究结果表明LDPC码性能良好,更加适合未来通信系统对数据传输的有效性和可靠性的要求,所以越来越多的通信标准都使用LDPC码作为其信道编码方案。DVB-S2和DVB-S2X标准中都采用了LDPC码,针对这些标准的LDPC码译码器的高速FPGA实现吸引了众多关注。串行结构的LDPC译码器由于校验节点更新单元和变量节点更新单元都只有一个,所以校验节点更新和变量节点更新需要交替进行。串行结构硬件结构简单,消耗的硬件资源少,但是由于各个节点需要共用校验节点更新单元和变量节点更新单元,所以需要轮流进行更新,这会导致译码器的时延变得非常大,译码时延会随着码长的增加而增加。基于串行结构的LDPC译码器吞吐量小,不能满足DVB-S2和DVB-S2X标准中高速数据吞吐量的要求。全并行结构的LDPC译码器每个节点都使用独立的更新模块,所有的节点更新都同时进行,所以全并行结构的LDPC译码器译码速度最快。全并行结构中校验节点更新单元和变量节点更新单元与校验矩阵中校验节点和变量节点的个数是对应的,各个处理单元之间的连接复杂,硬件复杂度最大,随着码长的增加,复杂度呈指数增长,所以全并行结构适合于码长较短且校验矩阵固定的LDPC码。>由于DVB-S2和DVB-S2X标准中LDPC码有多种码长和码率,其校验矩阵是各不相同的,采用全并行结构需要实现每种LDPC码校验矩阵中每个节点之间的连接关系,而且DVB-S2和DVB-S2X标准中LDPC码码长很大,这会导致硬件实现复杂度非常高,芯片布局难以实现。结合DVB-S2和DVB-S2X中IRA-LDPC码的特点,译码器的硬件实现适合采用部分并行结构。部分并行结构是串行结构和并行结构的一个折中,部分并行结构将校验矩阵中校验节点和变量节点分组,每组使用一个更新模块,各个模块并行处理,而每个更新模块的中的节点消息更新则是串行处理。采用部分并行结构可以减少芯片使用面积,但是相对于全并行结构,译码器的吞吐量也会随之下降。在LDPC译码过程中,一次译码迭代时间越短,则LDPC译码器吞吐量越高。现有的LDPC译码器在译码过程中一次迭代时间的缩短可以直接通过提高译码器的并行度来实现,但是提高并行度需要消耗较多的硬件资源。对于DVB-S2和DVB-S2X标准来说,LDPC译码器的并行度最高为360,另外LDPC译码器的并行度还可以进一步降低为360的整数因子,如180、90、45。DVB-S2和DVB-S2X标准中LDPC码码长较大、码率较多,这意味着译码器需要支持更多不同种类的LDPC码,存储更多不同LDPC码的参数,译码器的实现难度较大。DVB-S2X作为DVB-S2的拓展标准,有着更高的传输效率,这就要求LDPC译码器支持更大的吞吐量,如何在使用尽量少的硬件资源的基础上提高译码器的吞吐量,成了众多业内学者和技术研究人员的研究重点。2007年,Gomes等人在“FlexibleParallelArchitectureforDVB-S2LDPCDecoders”提出了采用部分并行结构设计DVB-S2标准中的LDPC译码器,降低了译码器的实现难度。2011年K.C.CinnatiLoi等人在“ImprovementsonthedesignandimplementationofDVB-S2LDPCdecoders”提出了通过增加并行度和使用流水处理提高DVB-S2标准中LDPC译码器吞吐量的改进设计方法。上述LDPC译码器的设计方法中,由于只使用了一个桶形移位模块,校验节点更新和变量节点更新需要交替进行,限制了译码器的吞吐量;而且因为DVB-S2X标准在2014年发布,上述LDPC译码器不兼容DVB-S2X标准。
技术实现思路
本专利技术的目的在于针对上述已有的缺点,提出一种兼容DVB-S2X标准的LDPC译码器设计方法,以实现在不增加译码器的并行度的基础上提高译码器的吞吐量。本专利技术的技术思路是:通过增加一个桶形移位模块和部分存储资源,可以在不增加译码器的并行度的基础上减少LDPC译码器在迭代过程中的译码时间,从而实现对吞吐量的增加,其设计方案包括如下:(1)设计LLR缓存模块,用于对低密度奇偶校验码LDPC输入译码器的对数似然比信息按照码长和码率进行顺序调整,并将完成顺序调整的1路对数似然比信息转换为并行的360路对数似然比信息,然后将这360路对数似然比信息进行缓存;(2)设计参数控制模块,用于生成低密度奇偶校验码LDPC的地址参数;设计变量节点更新模块,用于按照地址参数控制缓存的360路对数似然比信息输出,使得第一次译码迭代开始前的第i个变量节点传递给第j个校验节点的对数似然比信息L(0)(qij)等于第i个变量节点对应的初始对数似然比信息L(Pi),即L(0)(qij)=L(Pi),完成译码初始化;(3)设计译码迭代模块,用于进行第l次译码迭代,l的初始值为1:译码迭代模块包含参数控制子模块、第一桶形移位子模块、校验节点更新子模块、第二桶形移位子模块、校验节点消息缓存子模块、变量节点和值缓存子模块和变量节点更新子模块。(3a)对校验节点进行第l次更新:(3a1)设计参数控制子模块,用于生成低密度奇偶校验码LDPC校验节点更新中使用的移位参数sc1、sc2和sc3,设计第一桶形移位子模块用于按照这三个移位参数控制第l-1次译码迭代时的360路第i个变量节点传递给第j个校验节点的对数似然比信息L(l-1)(qij)进行移位;(3a2)设计校验节点更新子模块,用于移位之后,用低密度奇偶校验码LDPC中第l-1次译码迭代时第i′个变量节点传递给第j个校验节点的对数似然比信息L(l-1)(qi'j),计算第l次译码迭代时第j个校验节点传递给第i个变量节点的对数似然比信息L(l)(rji),完成校验节点的第l次更新:L(l)(rji)=αΠi′∈Vj\\isgn(L(l-1)(qi′j))·mini′∈Vj\\i(|L(l-1)(qi′j)|),]]>其中α为修正因子,Vj表示所有与第j个校验节点相连的变量节点的集合,Vj\\i表示除第i个变量节点之外所有与第j个校验节点相连的变量节点的集合,i′∈Vj\\i表示i′是集合Vj\\i中本文档来自技高网...

【技术保护点】
一种兼容DVB‑S2X标准的LDPC译码器设计方法,其包括:(1)设计LLR缓存模块,用于对低密度奇偶校验码LDPC输入译码器的对数似然比信息按照码长和码率进行顺序调整,并将完成顺序调整的1路对数似然比信息转换为并行的360路对数似然比信息,然后将这360路对数似然比信息进行缓存;(2)设计参数控制模块,用于生成低密度奇偶校验码LDPC的地址参数;设计变量节点更新模块,用于按照地址参数控制缓存的360路对数似然比信息输出,使得第一次译码迭代开始前的第i个变量节点传递给第j个校验节点的对数似然比信息L(0)(qij)等于第i个变量节点对应的初始对数似然比信息L(Pi),即L(0)(qij)=L(Pi),完成译码初始化;(3)设计译码迭代模块,用于进行第l次译码迭代,l的初始值为1:译码迭代模块包含参数控制子模块、第一桶形移位子模块、校验节点更新子模块、第二桶形移位子模块、校验节点消息缓存子模块、变量节点和值缓存子模块和变量节点更新子模块。(3a)对校验节点进行第l次更新:(3a1)设计参数控制子模块,用于生成低密度奇偶校验码LDPC校验节点更新中使用的移位参数sc1、sc2和sc3,设计第一桶形移位子模块用于按照这三个移位参数控制第l‑1次译码迭代时的360路第i个变量节点传递给第j个校验节点的对数似然比信息L(l‑1)(qij)进行移位;(3a2)设计校验节点更新子模块,用于移位之后,用低密度奇偶校验码LDPC中第l‑1次译码迭代时第i′个变量节点传递给第j个校验节点的对数似然比信息L(l‑1)(qi'j),计算第l次译码迭代时第j个校验节点传递给第i个变量节点的对数似然比信息L(l)(rji),完成校验节点的第l次更新:L(l)(rji)=αΠi′∈Vj\isgn(L(l-1)(qi′j))·mini′∈Vj\i(|L(l-1)(qi′j)|),]]>其中α为修正因子,Vj表示所有与第j个校验节点相连的变量节点的集合,Vj\i表示除第i个变量节点之外所有与第j个校验节点相连的变量节点的集合,i′∈Vj\i表示i′是集合Vj\i中的元素,Π为求积运算,sgn(.)为求符号位运算,min(.)为求最小值运算,|.|为求绝对值运算;(3b)对变量节点进行第l次更新:(3b1)设计参数控制子模块,用于生成低密度奇偶校验码LDPC变量节点更新中使用的移位参数sv1、sv2和sv3,设计第二桶形移位模块用于按照这三个移位参数控制第l次译码迭代时的360路第j个校验节点传递给第i个变量节点的对数似然比信息L(l)(rji)进行移位;(3b2)设计校验节点消息缓存子模块、变量节点和值缓存子模块和变量节点更新子模块,用于移位之后,用低密度奇偶校验码LDPC中第i个变量节点对应的初始对数似然比信息L(Pi)和第l次译码迭代时第j′个校验节点传递给第i个变量节点的对数似然比信息L(l)(rj'i),计算第l次译码迭代时第i个变量节点传递给第j个校验节点的对数似然比信息L(l)(qij),完成变量节点的第l次更新:L(l)(qij)=L(Pi)+Σj′∈Ci\jL(l)(rj′i),]]>其中Ci表示所有与第i个变量节点相连的校验节点的集合,Ci\j表示除第j个校验节点之外所有与第i个变量节点相连的校验节点的集合,j′∈Ci\j表示j′是集合Ci\j的元素;(4)将设定最大迭代次数h与译码迭代次数l进行比较,其中h为整数,1≤h≤50:当译码迭代次数l小于设定的最大迭代次数h时,令l=l+1,返回步骤(3),进行下一次译码迭代;设计硬判决信息计算模块,用于计算硬判决信息:当译码迭代次数l等于设定的最大迭代次数h时,停止译码迭代,并用低密度奇偶校验码LDPC码中第i个变量节点对应的初始对数似然比信息L(Pi)和第h次译码迭代时第j个校验节点传递给第i个变量节点的对数似然比信息L(h)(rji),计算达到最大迭代次数h时第i个变量节点的硬判决信息L(h)(qi):L(h)(qi)=L(Pi)+Σj∈CiL(h)(rji);]]>(5)设计译码判决输出模块,用于对达到最大迭代次数h时第i个变量节点的硬判决信息L(h)(qi)进行译码判决,如果L(h)(qi)≥0,译码结果判决为0,否则,译码结果判决为1,然后顺序输出译码结果,完成译码。...

【技术特征摘要】
1.一种兼容DVB-S2X标准的LDPC译码器设计方法,其包括:
(1)设计LLR缓存模块,用于对低密度奇偶校验码LDPC输入译码器的对数似
然比信息按照码长和码率进行顺序调整,并将完成顺序调整的1路对数似然比信息转
换为并行的360路对数似然比信息,然后将这360路对数似然比信息进行缓存;
(2)设计参数控制模块,用于生成低密度奇偶校验码LDPC的地址参数;设计
变量节点更新模块,用于按照地址参数控制缓存的360路对数似然比信息输出,使得
第一次译码迭代开始前的第i个变量节点传递给第j个校验节点的对数似然比信息
L(0)(qij)等于第i个变量节点对应的初始对数似然比信息L(Pi),即L(0)(qij)=L(Pi),完
成译码初始化;
(3)设计译码迭代模块,用于进行第l次译码迭代,l的初始值为1:
译码迭代模块包含参数控制子模块、第一桶形移位子模块、校验节点更新子模块、
第二桶形移位子模块、校验节点消息缓存子模块、变量节点和值缓存子模块和变量节
点更新子模块。
(3a)对校验节点进行第l次更新:
(3a1)设计参数控制子模块,用于生成低密度奇偶校验码LDPC校验节点更新
中使用的移位参数sc1、sc2和sc3,设计第一桶形移位子模块用于按照这三个移位参数
控制第l-1次译码迭代时的360路第i个变量节点传递给第j个校验节点的对数似然
比信息L(l-1)(qij)进行移位;
(3a2)设计校验节点更新子模块,用于移位之后,用低密度奇偶校验码LDPC
中第l-1次译码迭代时第i′个变量节点传递给第j个校验节点的对数似然比信息
L(l-1)(qi'j),计算第l次译码迭代时第j个校验节点传递给第i个变量节点的对数似然
比信息L(l)(rji),完成校验节点的第l次更新:
L(l)(rji)=αΠi′∈Vj\\isgn(L(l-1)(qi′j))·mini′∈Vj\\i(|L(l-1)(qi′j)|),]]>其中α为修正因子,Vj表示所有与第j个校验节点相连的变量节点的集合,Vj\\i表示

\t除第i个变量节点之外所有与第j个校验节点相连的变量节点的集合,i′∈Vj\\i表示i′
是集合Vj\\i中的元素,Π为求积运算,sgn(.)为求符号位运算,min(.)为求最小值运
算,|.|为求绝对值运算;
(3b)对变量节点进行第l次更新:
(3b1)设计参数控制子模块,用于生成低密度奇偶校验码LDPC变量节点更新
中使用的移位参数sv1、sv2和sv3,设计第二桶形移位模块用于按照这三个移位参数控
制第l次译码迭代时的360路第j个校验节点传递给第i个变量节点的对数似然比信
息L(l)(rji)进行移位;
(3b2)设计校验节点消息缓存子模块、变量节点和值缓存子模块和变量节点更
新子模块,用于移位之后,用低密度奇偶校验码LDPC中第i个变量节点对应的初始
对数似然比信息L(Pi)和第l次译码迭代时第j′个校验节点传递给第i个变量节点的对
数似然比信息L(l)(rj'i),计算第l次译码迭代时第i个变量节点传递给第j个校验节点
的对数似然比信息L(l)(qij),完成变量节点的第l次更新:
L(l)(qij)=L(Pi)+Σj′∈Ci\\jL(l)(rj′i),]]>其中Ci表示所有与第i个变量节点相连的校验节点的集合,Ci\\j表示除第j个校验节
点之外所有与第i个变量节点相连的校验节点的集合,j′∈Ci\\j表示j′是集合Ci\\j的
元素;
(4)将设定最大迭代次数h与译码迭代次数l进行比较,其中h为整数,1≤h≤50:
当译码迭代次数l小于设定的最大迭代次数h时,令l=l+1,返回步骤(3),进
行下一次译码迭代;
设计硬判决信息计算模块,用于计算硬判决信息:
当译码迭代次数l等于设定的最大迭代次数h时,停止译码迭代,并用低密度奇
偶校验码LDPC码中第i个变量节点对应的初始对数似然比信息L(Pi)和第h次译码
迭代时第j个校验节点传递给第i个变量节点的对数似然比信息L(h)(rji),计算达到最
大迭代次数h时第i个变量节点的硬判决信息L(h...

【专利技术属性】
技术研发人员:宫丰奎安宁张南王勇秦利卿
申请(专利权)人:西安电子科技大学
类型:发明
国别省市:陕西;61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1