CN102055484B - 基于最小均方差准则的ldpc分层bp译码算法及译码器结构 - Google Patents

基于最小均方差准则的ldpc分层bp译码算法及译码器结构 Download PDF

Info

Publication number
CN102055484B
CN102055484B CN 201010598093 CN201010598093A CN102055484B CN 102055484 B CN102055484 B CN 102055484B CN 201010598093 CN201010598093 CN 201010598093 CN 201010598093 A CN201010598093 A CN 201010598093A CN 102055484 B CN102055484 B CN 102055484B
Authority
CN
China
Prior art keywords
centerdot
beta
rho
algorithm
information
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.)
Expired - Fee Related
Application number
CN 201010598093
Other languages
English (en)
Other versions
CN102055484A (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.)
Southeast University
Original Assignee
Southeast University
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 Southeast University filed Critical Southeast University
Priority to CN 201010598093 priority Critical patent/CN102055484B/zh
Publication of CN102055484A publication Critical patent/CN102055484A/zh
Application granted granted Critical
Publication of CN102055484B publication Critical patent/CN102055484B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Error Detection And Correction (AREA)

Abstract

一种基于最小均方差准则的LDPC分层BP译码算法,该算法通过构造线性方程来逼近BP算法中校验节点处的运算公式来降低算法实现的复杂度,并且使用最小均方差准则求得线性方程系数的最优解来提高算法的译码性能。同时该算法引入分层译码的思想,可以提高算法的收敛性,减小对存储空间的需求。基于该算法,本发明提出一种用于多媒体无线传感网中,具有部分并行结构的LDPC码译码器结构。该译码器支持多种码长码率的LDPC码译码,并且具有占用系统资源少,数据吞吐率高,系统功耗低等优点。

Description

基于最小均方差准则的LDPC分层BP译码算法及译码器结构
技术领域
本发明涉及多媒体无线传感网通信系统,特别涉及多媒体无线传感网基带信号处理中的LDPC作为信道纠错码的译码方法及译码器结构实现。
背景技术
WMSN(多媒体无线传感网)是在传统WSN(无线传感器网络)基础上引入了音频、视频、图像等多媒体信息感知功能的一种新型传感器网络。它借助于节点上多媒体传感器感知周边环境的多媒体信息,通过多跳中继方式将数据传到信息汇聚中心。它综合了现代传感器技术,微电子技术,通信技术,嵌入式计算技术和分布式信息处理技术等多个学科,是新兴的交叉研究领域。并且由于其在军事国防,工农业,环境监测,生物医疗等重要领域具有十分广阔的应用前景,已经引起许多国家学术界和工业界的高度重视。
LDPC码是Gallager于1962年首先提出来的,近年来被Mackay等人重新发现,是继Turbo码后又一种性能接近香农限的纠错码,它的某些分类已经超过了Turbo码的性能并且无Turbo码的平层效应。LDPC码是一种线性纠错码,它的校验矩阵是一个稀疏矩阵,因而它的码字之间具有很好的距离特性。QC-LDPC(准循环低密度校验码)码,不同于一般的LDPC码,使用了准循环子矩阵来构造奇偶校验矩阵H(如下图所示),也就是说奇偶校验矩阵H包含J×K个循环置换的单位子矩阵,每个子矩阵的大小都是m×m。其中
Figure BDA0000039640410000011
表示一个大小为m×m的单位矩阵每行向右循环sx,y得到的新矩阵。位置偏移量sx,y是由公式a(x-1)×b(y-1)计算得到,其中a和b是Galois域(GF(m))元素。QC-LDPC码结合了一般LDPC码随机性的特点,又具有准循环结构的特性,其信道性能接近随机构造的LDPC码,其编译码电路大为简化,成为LDPC码走向应用的一种重要手段。QC-LDPC码在众多领域得到了广泛采用,许多工业标准已经采用或提案采用QC-LDPC码作为信道编码方案,同时还有望成为第四代移动通信的信道编码标准。本专利的具体实施将面向IEEE802.16e标准中使用的QC-LDPC码,包括1/2,2/3,3/4,5/6等多种码率。其单位子矩阵的大小从24到96,间隔为4,共19种,同时其码长从576到2304,间隔为96,共19种:
H = I s 1,1 I s 1,2 I s 1,3 . . . I s 1 , K I s 2,1 I s 2,2 I s 2,3 . . . I s 2 , K · · · · · · · . . . · · · · · I s J , 1 I s J , 2 I s J , 3 . . . I s J , K
目前应用最广泛的LDPC码译码算法是BP算法。其每次迭代包括两步:校验节点的处理和变量节点的处理。在每次迭代中,所以校验节点从其相邻的变量节点处接收消息,处理后,再传回到相邻的变量节点;然后所以的变量节点进行同样的过程;最后变量节点收集所有可以利用的消息进行判决。BP算法的译码性能优越,但其校验节点处的计算包含复杂的三角函数运算,使得其难于硬件实现,很难在实际工程中得到应用。
目前,LDPC码译码器结构包括完全并行结构、完全串行结构和部分并行结构。完全并行结构指校验矩阵中的校验节点和变量节点完全映射到硬件实现中,其译码速度快,数据吞吐量大,但是占用硬件资源多,复杂度高。完全串行结构指只采用一个校验节点处理单元和一个变量节点处理单元来串行的处理各个校验节点和变量节点。优点是可以大量节省硬件资源,但是译码速度太慢,数据吞吐量太小,特别是码长很大时。而部分并行结构,其介于完全并行结构和完全串行结构之间,在硬件实现复杂度和译码吞吐量之间取得了很好的折衷。
3.发明内容
本发明第一个目的是提供一种基于最小均方差准则的LDPC分层BP译码算法。
为了方便说明,下面定义算法中用到的变量。
Figure BDA0000039640410000021
表示第q次迭代中从变量节点n传递给校验节点m的信息(记为变量信息)。
Figure BDA0000039640410000022
表示第q次迭代中从校验节点m传递给变量节点n的信息(记为校验信息)。
Λn表示变量节点n的判决信息。
Nm表示和校验节点m相连的变量节点的集合。
与传统的BP算法不同,分层译码算法将LDPC码校验矩阵的行从上往下划分为组(每组包含相同数目的行),称为层。然后依次在每层中进行译码,每层的输出以及信道信息作为下一层的输入进行译码。最后一层译码结束后进行奇偶校验来判决译码是否结束。对于某一层的译码,其算法如下:
Q m , n q = Λ n - R m , n q - 1 - - - ( 1 )
R m , n q = ( Π j ∈ { Nm \ n } - sgn ( Q m , j q ) ) × ( β 0 + β 1 × min j ∈ { Nm \ n } Q m , j q + β 2 × sec . min j ∈ { Nm \ n } Q m , j q . . . + β ρ × max j ∈ { Nm \ n } Q m , j q ) - - - ( 2 )
Λ n = Q m , n q + R m , n q - - - ( 3 )
式(2)中
Figure BDA0000039640410000026
信息的数目由该校验节点的度数决定,并按从小到大的顺序排列,其系数β0,β1,L,βρ可以通过下述过程求得。
针对传统的BP算法中校验信息的计算(见式(4))包含三角函数运算,硬件实现很复杂。本发明提出一种具体的改进方法如下:
R m , n q + 1 = 2 arctan h ( Π j ∈ { Nm \ n } tanh Q m , j q 2 ) - - - ( 4 )
首先定义某一个校验方程中除去某一符号外的其他符号绝对值组成的集合如式(5),集合中的元素按升序排列,ρ为校验矩阵的行重。
S = { s 1 , s 2 , L , s ρ } = { Q m , j q | j ∈ { Nm \ n } } - - - ( 5 )
再次构造线性方程R=β01s12s2+L+βρsρ(6)去逼近式(4)。
最后通过最小均方差准则来求得β0,β1,L,βρ的最优值,分三步获得。
第一步:计算(6)式和(4)式(即R和
Figure BDA0000039640410000033
)差值的均方差。
Δ ( β 0 , β 1 , L , β ρ ) = E [ ( R - R m , n q + 1 ) 2 ]
= E [ ( β 0 + β 1 s 1 + β 2 s 2 + L + β ρ s ρ - R m , n q + 1 ) 2 ]
= β 0 2 + Σ i = 1 ρ Σ j = 1 ρ β i β j E [ s i s j ] + E [ ( R m , n q + 1 ) 2 ]
+ 2 β 0 Σ i = 1 ρ β i E [ s i ] - 2 β 0 E [ R m , n q + 1 ]
- 2 Σ i = 1 ρ β i E [ s i R m , n q + 1 ]
第二步:求上述差值的均方差相对于系数β0,β1,L,βρ的偏导数。
∂ Δ ( β 0 , β 1 , L , β ρ ) ∂ β 0 = 2 β 0 + 2 Σ i = 1 ρ β i E [ s i ] - 2 E [ R m , n q + 1 ] ∂ Δ ( β 0 , β 1 , L , β ρ ) ∂ β 1 = 2 β 0 E [ s 1 ] + 2 Σ i = 1 ρ β i E [ s 1 s i ] - 2 E [ s 1 R m , n q + 1 ] M ∂ Δ ( β 0 , β 1 , L , β ρ ) ∂ β ρ = 2 β 0 E [ s ρ ] + 2 Σ i = 1 ρ β ρ E [ s ρ s i ] - 2 E [ s ρ R m , n q + 1 ]
第三步:令可以求解各个系数的值。如下:
β 0 β 1 M β ρ = 1 E [ s 1 ] E [ s 2 ] L E [ s ρ ] E [ s 1 ] E [ s 1 s 1 ] E [ s 1 s 2 ] L E [ s 1 s ρ ] M M M M M E [ s ρ ] E [ s ρ s 1 ] E [ s ρ s 2 ] L E [ s ρ s ρ ] - 1 E [ R m , n q + 1 ] E [ s 1 R m , n q + 1 ] M E [ s ρ R m , n q + 1 ]
其中除了系数β0,β1,L,βρ以外的其他值可以通过在一定信噪比下对一定的样本求统计平均得到,然后就可以解方程组求得各个系数。同时从式(2)我们可以看到,在
Figure BDA0000039640410000042
中可以通过自左至右地选取S中的任意大于等于1小于ρ个元素来得到的近似值。当然,从S中选取越多个元素来进行线性化近似,得到的结果越接近
Figure BDA0000039640410000044
但是算法复杂度也越高,这就需要根据实际的应用来决定,在本发明中将选取前两个元素。
本发明的第二个目地是基于上述分层译码算法提出一种部分并行译码器结构,应用于多媒体无线传感网中。如图1所示,本发明提出的译码器包括控制模块,输入输出缓存,存储器模块,分层信息处理模块,奇偶校验模块和互连BENES网络等等。
本发明与现有技术相比具有下述方面的改进。
(1)本发明中分层信息处理模块采用逐级细化流水线的设计方法来实现,有效的降低了译码器的关键路径延迟,可以提高译码器电路的工作频率和吞吐量。同时通过分析译码器结构中的潜在可复用性来降低硬件资源的消耗,提高硬件利用率。
(2)众多文献表明,对于LDPC译码器,超过一半的功耗都是由读写存储器引起的,本发明采用内存旁路(memory bypassing,MB)技术来减少译码过程中对存储器的读写次数来降低功耗。可以看出,采用该技术后,读写存储器的次数可以达到50%的降幅。
4.附图说明
图1为本发明部分并行译码器结构示意图。
图2为本发明分层信息处理模块示意图。
图3a为本发明3∶2比较器示意图;图3b为本发明4∶2比较器示意图;
图3c为本发明10∶2比较器示意图。
图4为本发明BENES网络结构示意图。
图5为校验矩阵具有3行7列的一LDPC码实例的示意图。
图6为本发明内存旁路技术示意图。
5.具体实施方式
下面结合附图与具体实施方式对本发明作进一步说明:
本发明提出的支持多种码长码率的译码器针对的是IEEE 802.16e标准中提出的QC-LDPC码,共包括1/2,2/3,3/4和5/6四种码率。其校验矩阵每行包括24个子矩阵,每列的子矩阵数目由码率决定(例如码率为2/3时,每列包括8个子矩阵)。同时子矩阵的大小(也称扩展因子)一共19种,包括从24到96步长间隔为4。因此该码包括从576到2304共19种码长。如图1所示,译码器结构包括控制模块,输入输出缓存,96组7位减法器,96组分层信息处理模块,96组7位加法器,2个存储器模块(第一存储器和第二存储器),1个奇偶校验模块,以及用来传递消息的BENES网络。
本处选择减法器、处理模块和加法器的数量选择,是考虑到本专利具体实施所面向的QC-LDPC码是在IEEE 802.16e标准中定义使用的;其单位子矩阵的最大为96(已在背景说明中加入了相关说明);因此此处选择减法器、处理模块和加法器的数量选择都为96组,并且下述BENES网络的输入输出数目也为96。如果针对不同的QC-LDPC码,需要选择不同数量。
控制模块,用来控制整个译码器的工作过程,各个模块的工作状态及时序,包括信道信息的输入控制,迭代是否继续的控制,信息处理模块的使能控制,以及译码器结果的输出控制等等。同时,要实现多种码率码长的译码需求,BENES网络的参数也需通过控制模块设置。
输入缓存用来存储信道传来的对数似然比信息。
输出缓存用来存储译码器的输出判决比特,并完成译码数据打包。
R信息存储器(记为存储器1)用来保存分层信息处理模块产生的校验节点信息。判决信息存储器(记为存储器2)用来保存每次迭代译码产生的节点判决信息
分层信息处理模块完成式(4)中的运算,将和当前校验节点相连的变量节点信息,根据所述译码算法进行处理,处理完的信息将存入存储器1中。如图2所示,处理模块包括10个输入和10个输出,每个输出由其相应的输入之外的9个输入值中的最小值经过R=β01Lmin得到。其中10∶2比较器用来求取10个数值中的最小值和第二小值,由4个3∶2比较器和2个4∶2比较器组成,如图3所示。
奇偶校验单元用来判断迭代译码过程是否终止。本发明通过判断相邻两次迭代产生的变量节点n的判决信息的符号位是否相同来进行判决。如果所有判决信息的符号位都相同,则译码终止,否则继续。
改进型Benes互连开关网络用来在分层信息处理单元和存储器之间传递信息。该网络由三个参数决定:P,C和PM。其中参数P代表QC-LDPC码子矩阵扩展因子的大小。参数C代表子矩阵的循环移位数。参数PM代表当前网络允许的最大输入数目,初始值设为96。如图4所示,该网络可以通过配置网络中的2×2开关(到BAR状态或者CROSS状态)来实现输入输出间的任意循环移位变换,从而可以实现译码器支持多种码率码长LDPC码译码的功能。与传统BENES网络相比,改进网络优化了网络中使用的开关,可以减少网络面积带来的硬件开销。此外,本发明还提出一种并行算法来产生控制信号,可以减少整个网络传递消息的延时。如下所示,函数Floor(x)为向下取整函数。函数Ceil(A)为向上取整函数。
BENES网络控制信号生成算法:
Algorithm I:{
对于指定的(p,c,PM),
如果PM=3调用Algorithm B
否则调用Algorithm A
返回}
Algorithm A:{
步骤A0:检测参数p和c的最低位,计算Ceil(p/2)和Ceil((p-c)/2).
将Benes网络中的所有2×2开关都默认设置为BAR状态。
步骤A1:将当前网络的第一级和最后一级的2×2开关按如下设置:
如果p为偶数并且c为偶数,
调用Algorithm I(p/2,c/2,PM/2)和
Algorithm I(p/2,c/2,PM/2)。
如果p为偶数并且c为奇数,
将当前网络第一级的前Ceil(p/2)个开关设置为CROSS状态。
调用Algorithm I(p/2,Ceil(c/2),PM/2)和
Algorithm I(p/2,Floor(c/2),PM/2)。
如果p为奇数并且c为偶数,
将当前网络第一级的第Ceil((p-c)/2)个开关和第Ceil(p/2)个开关之间的所有开关,(包括这两个开关在内)设置为CROSS状态。
将最后一级的第Ceil(p/2)个开关设置为CROSS状态。
调用Algorithm I(Floor(p/2),c/2,PM/2)和
Algorithm I(Ceil(p/2),c/2,PM/2)。
如果p为奇数并且c为奇数,
将当前网络第一级的前Ceil((p-c)/2)-1个开关设置为CROSS状态。
调用Algorithm I(Ceil(p/2),Ceil(c/2),PM/2)和
Algorithm I(Floor(p/2),Floor(c/2),PM/2)。
步骤A2:返回}
Algorithm B:{
步骤B0:将3×3开关按如下规则设置:
如果(2,1,3),将开关1设置为CROSS状态。.
如果(3,1,3),将开关2和3设置为CROSS状态。
如果(3,2,3),将开关1和3设置为CROSS状态。
否则将所有开关设置为BAR状态。
步骤B1:返回}
该译码器的译码过程,共包含有5步骤:
(1)初始化:将输入缓存中的信道对数似然比信息读入存储器2的相应位置。存储器1值均初始设为零。同时根据LDPC码的校验矩阵来配置BENES网络。
(2)减法器运算:存储器2中各节点判决信息通过BENES网络传递到减法器输入端,从存储器1中读取相应的校验节点信息,两者相减可以得到变量节点信息。
(3)分层信息处理:对和该校验节点相连的各变量节点信息(步骤(2)的结果)进行如式(4)运算,得到校验节点信息,写入存储器1相应位置。
(4)加法器运算:将校验节点信息(步骤(3)的结果)和相应变量节点信息相加,得到节点判决信息,并通过BENES网络写入存储器2。
(5)奇偶校验:每次迭代译码的结果通过奇偶校验单元来判断是否满足校验方程。如果满足,则译码过程结束,否则,如果未达到最大迭代次数,则迭代过程继续。
为了提高译码器电路的工作频率和吞吐率,如图2所示,分层信息处理模块采取流水线的工作方式。其划分为四级流水线处理,第一级用来获取输入的绝对值,第二级计算出其中最小的两个绝对值,第三级通过比较选择获取除了和本次输出相应的输入之外的最小绝对值,第四级通过添加符号和输出运输得到校验节点处理单元的输出值。通过采用流水线工作方式,译码器电路的工作频率可以由66.37MHz提高到93.66MHz,吞吐率也由149.92Mbps提高到176.88Mbps。
由于多媒体传感网对功耗的严格要求,本发明提出的译码器具有低功耗的优点。许多文献表明,对于LDPC译码器,大约74%的功耗都是由读写存储器引起的。本发明将采用MB技术来减少对存储器的读写次数,从而降低功耗。在分层译码器结构中,每层信息处理模块从存储器1中读取信息,经过计算后再写入存储器中供下一层使用。如果使用MB技术,当相邻两层在相同列上都有非零元素时,上一层的信息处理模块结果可以无须写入存储器,而直接送给下一层使用。这样就可以省下上一层对存储器的写操作,和下一层对存储器的读操作。下面通过图5所示例子加以说明,其校验矩阵具有三层结构,每层包含七列。图6显示的是没有MB的分层译码过程,三层译码共需对存储器进行12次读操作和12次写操作。采用MB技术后(图中虚线框所示),读写存储器次数分别降低到6次,可以达到50%的降幅。例如,第二层译码时,对一列和三列相应存储器的读操作可以省略,第三层译码时,对二列和一列相应存储器的读操作可以省略。
在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。

Claims (4)

1.一种基于最小均方差准则的LDPC分层BP译码方法,其特征是包括步骤:
1)将LDPC码校验矩阵的行从上往下划分为组,每组包含相同数目的行,划分得到的组称为层;
2)然后依次在每层中进行译码,每层的输出以及信道信息作为下一层的输入进行译码;
3)最后一层译码结束后进行奇偶校验来判决译码是否结束;
变量定义:
Figure FDA00003115618400018
表示第q次迭代中从变量节点n传递给校验节点m的信息,记为变量信息;
表示第q次迭代中从校验节点m传递给变量节点n的信息,记为校验信息;
Λn表示变量节点n的判决信息;
其中,对于某一层的译码,步骤包括:
Q m , n q = Λ n - R m , n q - 1 - - - ( 1 )
R m , n q = ( Π j ∈ { Nm \ n } - sgn ( Q m , j q ) ) × ( β 0 + β 1 × min j ∈ { Nm \ n } Q m , j q + β 2 × sec . min j ∈ { Nm \ n } Q m , j q . . . + β ρ × max j ∈ { Nm \ n } Q m , j q ) - - - ( 2 )
Λ n = Q m , n q + R m , n q - - - ( 3 )
式(2)中
Figure FDA00003115618400014
信息的数目由该校验节点j的度数决定,并按从小到大的顺序排列;
β01,…,βρ最优值的确定步骤包括:
现有的BP算法中校验信息的计算方法,如式(4),
R m , n q + 1 = 2 arctanh ( Π j ∈ { Nm \ n } tanh Q m , j q 2 ) - - - ( 4 )
首先定义某一个校验方程中除去某一符号外的其他符号绝对值组成的集合如式(5),集合中的元素按升序排列,ρ为校验矩阵的行重;
S = { s 1 , s 2 , · · · , s ρ } = { Q m , j q | j ∈ { Nm \ n } } - - - ( 5 )
再次构造线性方程R=β01s12s2+…+βρsρ    (6)
去逼近式(4);
最后通过最小均方差准则来求得β01,…,βρ的最优值;
具体来说,所述β01,…,βρ的最优值获得具体步骤包括:
第一步:计算(6)式和(4)式差值的均方差:
Δ ( β 0 β 1 , · · · , β ρ ) = E [ ( R - R m , n q + 1 ) 2 ]
= E [ ( β 0 + β 1 s 1 + β 2 s 2 + · · · + β ρ s ρ - R m , n q + 1 ) 2 ]
= β 0 2 + Σ i = 1 ρ Σ j = 1 ρ β i β j E [ s i s j ] + E [ ( R m , n q + 1 ) 2 ]
+ 2 β 0 Σ i = 1 ρ β i E [ s i ] - 2 β 0 E [ R m , n q + 1 ]
- 2 Σ i = 1 ρ β i E [ s i R m , n q + 1 ]
第二步:求第一步中的差值的均方差相对于系数β01,…,βρ的偏导数:
∂ Δ ( β 0 , β 1 , · · · , β ρ ) ∂ β 0 = 2 β 0 + 2 Σ i = 1 ρ β i E [ s i ] - 2 E [ R m , n q + 1 ] ∂ Δ ( β 0 , β 1 , · · · , β ρ ) ∂ β 1 = 2 β 0 E [ s 1 ] + 2 Σ i = 1 ρ β i E [ s 1 s i ] - 2 E [ s 1 R m , n q + 1 ] · · · ∂ Δ ( β 0 , β 1 , · · · , β ρ ) ∂ β ρ = 2 β 0 E [ s ρ ] + 2 Σ i = 1 ρ β ρ E [ s ρ s i ] - 2 E [ s ρ R m , n q + 1 ]
第三步:令 ∂ Δ ( β 0 , β 1 , · · · , β ρ ) ∂ β 0 = 0 ∂ Δ ( β 0 , β 1 , · · · , β ρ ) ∂ β 1 = 0 · · · ∂ Δ ( β 0 , β 1 , · · · , β ρ ) ∂ β ρ = 0 可以求解各个系数的值,如下:
β 0 β 1 · · · β ρ = 1 E [ s 1 ] E [ s 2 ] · · · E [ s ρ ] E [ s 1 ] E [ s 1 s 1 ] E [ s 1 s 2 ] · · · E [ s 1 s ρ ] · · · · · · · · · · · · · · · E [ s ρ ] E [ s ρ s 1 ] E [ s ρ s 2 ] · · · E [ s ρ s ρ ] - 1 E [ R m , n q + 1 ] E [ s 1 R m , n q + 1 ] · · · E [ s ρ R m , n q + 1 ]
其中除了系数β01,…,βρ以外的其他值可以通过在一定信噪比下对一定的样本求统计平均得到,然后就可以解方程组求得各个系数β01,…,βρ
2.一种基于权利要求1所述的分层译码方法的部分并行译码器,其特征是包括控制模块、输入输出缓存、减法器、分层信息处理模块、加法器、第一存储器、第二存储器、奇偶校验模块和用来传递消息的互连BENES网络;
控制模块,用来控制整个译码器的工作过程,各个模块的工作状态及时序,包括:信道信息的输入控制、迭代是否继续的控制、信息处理模块的使能控制、译码器结果的输出控制和BENES网络的参数设置;
输入缓存用来存储信道传来的对数似然比信息;输出缓存用来存储译码器的输出判决比特,并完成译码数据打包;
第一存储器用来保存分层信息处理模块产生的校验节点信息;第二存储器用来保存每次迭代译码产生的节点判决信息;
分层信息处理模块完成式(4)中的运算,将和当前校验节点相连的变量节点信息,根据权利要求1所述算法进行处理,处理完的信息将存入第一存储器中;
奇偶校验模块用来判断迭代译码过程是否终止;
BENES网络用来在分层信息处理单元和存储器之间传递信息;
本译码器的译码过程,步骤包括:
(1)初始化:将输入缓存中的信道对数似然比信息读入第二存储器的相应位置;第一存储器值均初始设为零;同时根据LDPC码的校验矩阵来配置BENES网络;
(2)减法器运算:第二存储器中各节点判决信息通过BENES网络传递到减法器输入端,从第一存储器中读取相应的校验节点信息,两者相减可以得到变量节点信息;
(3)分层信息处理:对步骤(2)的结果进行如式(4)运算,得到校验节点信息,写入第一存储器相应位置;
(4)加法器运算:将步骤(3)的结果和相应变量节点信息相加,得到节点判决信息,并通过BENES网络写入第二存储器;
(5)奇偶校验:每次迭代译码的结果通过奇偶校验单元来判断是否满足校验方程;如果满足,则译码过程结束;如果不满足,如果未达到最大迭代次数,则迭代过程继续;
处理模块包括10个输入和10个输出,每个输出由其相应的输入之外的9个输入值中的最小值经过R=β01Lmin得到;
所述BENES网络由三个参数决定:P、C和PM
其中,P代表QC-LDPC码子矩阵扩展因子的大小;C代表子矩阵的循环移位数;PM代表当前网络允许的最大输入数目,初始值设为96;
BENES网络通过配置网络中的2×2开关和3×3开关来实现输入输出间的任意循环移位变换,从而实现译码器支持多种码率码长LDPC码译码的功能;所述2×2开关是BAR状态和CROSS状态的选择开关;
所述BENES网络控制信号生成算法I:
对于指定的(p,c,PM),如果PM=3,则调用算法B;否则调用算法A;
算法A步骤如下:
步骤A0:检测参数p和c的最低位,计算Ceil(p/2)和Ceil((p-c)/2);
将BENES网络中的所有2×2开关都默认设置为BAR状态;
步骤A1:将当前网络的第一级和最后一级的2×2开关按如下设置:
如果p为偶数并且c为偶数,则调用算法I(p/2,c/2,PM/2)和算法I(p/2,c/2,PM/2);
如果p为偶数并且c为奇数,则将当前网络第一级的前Ceil(p/2)个开关设置为CROSS状态;调用算法I(p/2,Ceil(c/2),PM/2)和算法I(p/2,Floor(c/2),PM/2);
如果p为奇数并且c为偶数,则将当前网络第一级的第Ceil((p-c)/2)个开关和第Ceil(p/2)个开关之间的所有开关,包括这两个开关在内设置为CROSS状态;将最后一级的第Ceil(p/2)个开关设置为CROSS状态;
调用算法I(Floor(p/2),c/2,PM/2)和算法I(Ceil(p/2),c/2,PM/2);
如果p为奇数并且c为奇数,则当前网络第一级的前Ceil((p-c)/2)-1个开关设置为CROSS状态;调用算法I(Ceil(p/2),Ceil(c/2),PM/2)和算法I(Floor(p/2),Floor(c/2),PM/2);
Floor(x)为向下取整,Ceil(A)为向上取整;
算法B步骤包括:
步骤B0:将3×3开关按如下规则设置:
如果(2,1,3),则将3×3开关中的开关1设置为CROSS状态;
如果(3,1,3),则将3×3开关中的开关2和3设置为CROSS状态;
如果(3,2,3),则将3×3开关中的开关1和3设置为CROSS状态;
否则将所有开关设置为BAR状态。
3.根据权利要求2所述的部分并行译码器,其特征是分层信息处理模块采取流水线的工作方式,其划分为四级流水线处理,第一级用来获取输入的绝对值,第二级计算出其中最小的两个绝对值,第三级通过比较选择获取除了和本次输出相应的输入之外的最小绝对值,第四级通过添加符号和输出运输得到校验节点处理单元的输出值。
4.根据权利要求2所述的部分并行译码器,其特征是在分层译码器结构中,当相邻两层在相同列上都有非零元素时,上一层的信息处理模块结果直接送给下一层使用。
CN 201010598093 2010-12-21 2010-12-21 基于最小均方差准则的ldpc分层bp译码算法及译码器结构 Expired - Fee Related CN102055484B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201010598093 CN102055484B (zh) 2010-12-21 2010-12-21 基于最小均方差准则的ldpc分层bp译码算法及译码器结构

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201010598093 CN102055484B (zh) 2010-12-21 2010-12-21 基于最小均方差准则的ldpc分层bp译码算法及译码器结构

Publications (2)

Publication Number Publication Date
CN102055484A CN102055484A (zh) 2011-05-11
CN102055484B true CN102055484B (zh) 2013-08-28

Family

ID=43959472

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201010598093 Expired - Fee Related CN102055484B (zh) 2010-12-21 2010-12-21 基于最小均方差准则的ldpc分层bp译码算法及译码器结构

Country Status (1)

Country Link
CN (1) CN102055484B (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102347775B (zh) * 2011-09-06 2013-07-10 复旦大学 一种基于并行分层译码算法的ldpc码译码器
CN102394661B (zh) * 2011-11-08 2015-05-06 北京邮电大学 基于层译码处理的ldpc译码器及译码方法
CN102594367B (zh) * 2012-02-29 2015-03-25 中山大学 一种ldpc码的低复杂度的动态异步bp译码方法
CN102664638A (zh) * 2012-05-31 2012-09-12 中山大学 基于分层nms算法的多码长ldpc码译码器的fpga实现方法
CN103036577B (zh) * 2012-12-28 2015-09-30 东南大学 一种低复杂度的低密度奇偶校验ldpc码编码电路结构
CN103916134B (zh) * 2014-03-24 2017-01-11 清华大学 低密度奇偶校验码的混叠译码方法及多核协同混叠译码器
CN106656406B (zh) * 2015-10-29 2019-07-19 电信科学技术研究院 一种非正交多址接入中信号检测方法及装置
CN106921396B (zh) * 2017-03-02 2019-12-06 电子科技大学 一种用于ldpc码的混合译码方法
CN107395213A (zh) * 2017-06-30 2017-11-24 记忆科技(深圳)有限公司 一种qsn网络的实现方法
CN111211790B (zh) * 2020-02-25 2023-09-29 重庆邮电大学 一种面向5g终端的高吞吐率ldpc译码算法及架构

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Oh D and Parhi K K.Low-complexity switch network for reconfigurable LDPC decoders.《IEEE Transactions on Very Large Scale Integrated Systems》.2010,第18卷(第1期),第85-94. *
吴俊等.低密度校验码分层译码的密度演化算法.《上海交通大学学报》.2007,第41卷(第6期),第903-906页. *
张天瑜.基于改进型UMP BP- Based 算法的LDPC译码研究.《微型机与应用》.2010,(第5期),第35-38页. *
王鹏 等.高速LDPC码分层译码器设计.《小型微型计算机系统》.2009,第30卷(第11期),第2294-2296页. *

Also Published As

Publication number Publication date
CN102055484A (zh) 2011-05-11

Similar Documents

Publication Publication Date Title
CN102055484B (zh) 基于最小均方差准则的ldpc分层bp译码算法及译码器结构
US8321747B2 (en) QC-LDPC code decoder and corresponding decoding method
KR101789959B1 (ko) 구조적 ldpc의 인코딩 방법, 디코딩 방법, 인코딩 장치 및 디코딩 장치
CN101924565B (zh) Ldpc编码器、解码器、系统及方法
KR100941680B1 (ko) 준순환 저밀도 패리티 검사 부호의 생성 방법 및 장치
CA2798963C (en) Apparatus and method for layered decoding in a communication system using low-density partiy-check codes
US10879929B2 (en) LDPC decoding method
CN101141133A (zh) 一种结构化低密度校验码的编码方法
Li et al. Quasi-cyclic LDPC code design for block-fading channels
AU2004302428A1 (en) Apparatus and method for coding/decoding block low density parity check code in a mobile communication system
CN102006085B (zh) 类eIRA准循环低密度奇偶校验码的校验矩阵构造方法
Ho et al. A 520k (18900, 17010) array dispersion LDPC decoder architectures for NAND flash memory
WO2021063217A1 (zh) 一种译码方法及装置
JP4819470B2 (ja) 復号装置および復号方法
Huang et al. Structure, property, and design of nonbinary regular cycle codes
CN101262230A (zh) 一种低密度奇偶校验码矩阵的设计方法
CN101420279B (zh) 用于移动多媒体广播中的高速ldpc译码器及译码方法
CN1949694A (zh) 基于两次扩展的分层近似规则低密度校验码构造方法
CN101471673A (zh) Ldpc码存储单元划分方法以及一种ldpc码存储器
CN1973440A (zh) Ldpc编码器、解码器、系统及方法
Ren et al. The design and implementation of high-speed codec based on FPGA
CN102611462B (zh) 一种ldpc-cc译码算法及译码器
Boncalo et al. Cost-efficient FPGA layered LDPC decoder with serial AP-LLR processing
Kim et al. Serial scheduling algorithm of LDPC decoding for multimedia transmission
CN103427847A (zh) Ldpc码的码字构造方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130828

Termination date: 20201221

CF01 Termination of patent right due to non-payment of annual fee