基于集破坏的修正置信传播方法及装置与流程

文档序号:18410998发布日期:2019-08-13 18:09阅读:132来源:国知局
基于集破坏的修正置信传播方法及装置与流程

本发明涉及低密度奇偶校验码ldpc(low-densityparity-check)译码领域,尤其涉及一种基于集破坏的修正置信传播方法及装置。



背景技术:

由于其逼近香农限良好译码性能,低密度奇偶校验码ldpc(low-densityparity-check)不同类型的译码算法得到广泛的研究。置信传播算法(beliefpropagation,bp)以及对数基置信传播算法(log-likelihoodratiobeliefpropagation,llr-bp)用于ldpc译码时获得最优的译码性能。对于任意方法构造的ldpc码,在它们的校验矩阵中存在大量的环,而这些环正是构成陷阱集的基础。在bp算法(errorbackpropagation)的迭代译码过程中,如果一些比特节点形成陷阱集将很难被纠正,最终导致译码失败。多数情况下,ldpc码的这种结构缺陷导致译码过程的比特震荡型错误。

为了进一步提升ldpc码的应用价值,大量学者利用不同的方法不断改进bp算法的译码性能。这些方法主要分为两大类。其中一类方法就是研究ldpc码校验矩阵的结构,比如环、陷阱集以及度分布,然后利用这些结构迭代译码信息更新过程进而达到提升译码性能的目的。另一类方法是研究迭代译码算法的收敛特征,然后动态的修正迭代译码过程中的校验信息或者比特信息。第一类方法需要ldpc码校验矩阵的结构信息。因此,这类算法一般只适用于特定码字。另外,大多数ldpc码字的检验矩阵结构信息很难准确获取,进而造成无法利用第一类方法的思路为其设计改进译码算法。刚好相反,第二类方法不需要码字校验矩阵的结构信息,故而可以用于任意ldpc码的译码性能优化。在ldpc码的迭代译码过程中存在由短环引起的信息震荡现象,造成较为明显的译码错误。第二类方法利用陷阱集的概念解释ldpc码译码过程中出现的信息震荡类型错误并相应给出一类改进bp算法去提升码字的译码性能。

传统的基于陷阱集构造的修正置信传播译码算法的缺陷主要有以下几个方面:

1):研究ldpc码环、陷阱集以及度分布等校验矩阵结构的第一类算法,它们都是为某个ldpc码字设计,利用码字的特殊结构修正迭代译码信息更新过程达到译码性能提升目的,不具有通用性。

2):第二类方法所设计的算法不需要码字校验矩阵的结构信息,可以获得良好的译码性能,但是其译码复杂度较高,在一定程度上限制算法应用场景。



技术实现要素:

本发明实施例提供一种基于集破坏的修正置信传播方法,用以解决现有技术中置信传播算法译码过程中由于不稳定陷阱集引起的信息震荡行为的问题。

本发明实施例提供一种基于集破坏的修正置信传播方法,包括:

步骤1,通过接收端接收加性高斯白噪声awgn(additivewhitegaussiannoise)信道传输的经过二进制相移键控bpsk(binaryphaseshiftkeying)调制的码字c=[c1c2...cl],其中,接收端的接收向量y=[y1y2...yl],l为码字的个数;

步骤2,设置迭代次数k为0,对于所有在区间[1,n]中的比特节点n和在区间[1,m]的校验节点m,计算比特节点n的归一化接收值vn以及迭代硬判决值zn,设置比特节点n在第k次迭代的比特信息vmn和比特节点n发送给校验节点m的校验信息umn均等于零;其中,n和m分别为码字c的检验矩阵h=[hmn]的第n行和第m列;

步骤3,通过比特节点n的归一化接收值vn与包含比特节点n的校验节点集中除校验节点m以外的其他节点m’的校验信息um’n更新比特节点n在第k次迭代的比特信息vmn,n∈[1,n];

步骤4,通过参与校验节点m校验运算的比特节点集中除比特节点n以外的其他节点n’的比特信息vmn’更新比特节点n发送给校验节点m的校验信息umn,m∈[1,m];

步骤5,通过比特信息vmn与umn更新每个比特节点n的迭代硬判决值zn,并通过标识比特节点集、标识比特节点集在最后一次迭代的比特信息以及比特节点n的震荡标识对发生信息震荡的比特节点变量信息进行修正;

步骤6,判断是否满足预设的迭代停止条件,如果满足,则终止译码进程并且输出比特节点n的第k次迭代硬判决向量zk,否则返回到步骤3。

优选地,计算比特节点n的归一化接收值vn以及迭代硬判决值zn,具体包括:

根据公式1和公式2分别计算比特节点n的归一化接收值vn以及迭代硬判决值zn,

vn=4yn/δ2公式1;

zn=(1-sgn(yn))/2公式2;

其中,yn为任意码字cn的任意接收向量,yn=sn+ηn(n=1,2...l),任意码字cn的调制规则为sn=1-2cn,ηn为零均值加性高斯白噪声,其噪声方差为δ2

优选地,通过比特节点n的归一化接收值vn与包含比特节点n的校验节点集中除校验节点m以外的其他节点m’的校验信息um’n更新比特节点n在第k次迭代的比特信息vmn,具体包括:

根据公式3算比特节点n在第k次迭代的比特信息vmn:

其中,m(n)\m为排除校验节点m的包含比特节点n的校验节点集。

优选地,通过参与校验节点m校验运算的比特节点集中除比特节点n以外的其他节点n’的比特信息vmn’更新比特节点n发送给校验节点m的校验信息umn,具体包括:

根据公式4计算比特节点n发送给校验节点m的校验信息umn:

其中,n(m)\n为排除比特节点n的参与校验节点m校验运算的比特节点集。

优选地,通过比特信息vmn与umn更新每个比特节点n的迭代硬判决值zn,并通过标识比特节点集、标识比特节点集在最后一次迭代的比特信息以及比特节点n的震荡标识对发生信息震荡的比特节点变量信息进行修正,具体包括:

设置k=k+1,根据公式5更新每个比特节点n的迭代硬判决值zn;

zn=(1-sgn(vmn+umn))/2公式5;

其中,k为迭代次数;

对于每个m和n,如果满足公式6,则设置并对于在集λ(m,n)中的比特节点执行操作;

其中,signb为自定义函数,用于获取实数二进制补码形式下的符号位,λ(m,n)为标识比特节点集,为λ(m,n)在最后一次迭代的比特信息,υm,n为比特节点n的震荡标识。

优选地,预设迭代停止条件为:

比特节点n的第k次迭代的伴随向量sk的重量wk为零或迭代次数k超出迭代次数的最大值kmax;其中,伴随向量sk=zk×ht

本发明实施例提供一种基于集破坏的修正置信传播装置,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,计算机程序被处理器执行时实现如权利要求1至6中任一项所述方法的步骤。

采用本发明实施例,解决了现有技术中置信传播算法译码过程中由于不稳定陷阱集引起的信息震荡行为的问题,利用置信传播算法译码过程的译码数据特征,通过译码数据特征的逻辑运算和加法运算便可以简洁高效的标记出译码震荡行为,为置信传播算法的修正提供策略支撑。

上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:

图1是本发明实施例提供的基于集破坏的修正置信传播方法的步骤示意图;

图2是本发明实施例提供的基于集破坏的修正置信传播方法的码1在bp和发明算法译码下的性能比较图;

图3是本发明实施例提供的基于集破坏的修正置信传播方法的码2在bp和发明算法译码下的性能比较图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

方法实施例

本发明实施例提供一种基于集破坏的修正置信传播方法,如图1所示,根据本发明实施例的基于集破坏的修正置信传播方法具体包括如下步骤:

步骤1,通过接收端接收awgn信道传输的经过bpsk调制的码字c=[c1c2...cl],其中,接收端的接收向量y=[y1y2...yl],l为码字的个数;

步骤2,设置迭代次数k为0,对于所有在区间[1,n]中的比特节点n和在区间[1,m]的校验节点m,计算比特节点n的归一化接收值vn以及迭代硬判决值zn,设置比特节点n在第k次迭代的比特信息vmn和比特节点n发送给校验节点m的校验信息umn均等于零;其中,n和m分别为码字c的检验矩阵h=[hmn]的第n行和第m列;

其中,计算比特节点n的归一化接收值vn以及迭代硬判决值zn,具体包括:

根据公式1和公式2分别计算比特节点n的归一化接收值vn以及迭代硬判决值zn,

vn=4yn/δ2公式1;

zn=(1-sgn(yn))/2公式2;

其中,yn为任意码字cn的任意接收向量,yn=sn+ηn(n=1,2...l),任意码字cn的调制规则为sn=1-2cn,ηn为零均值加性高斯白噪声,其噪声方差为δ2

步骤3,通过比特节点n的归一化接收值vn与包含比特节点n的校验节点集中除校验节点m以外的其他节点m’的校验信息um’n更新比特节点n在第k次迭代的比特信息vmn,n∈[1,n];

其中,通过比特节点n的归一化接收值vn与包含比特节点n的校验节点集中除校验节点m以外的其他节点m’的校验信息um’n更新比特节点n在第k次迭代的比特信息vmn,具体包括:

根据公式3算比特节点n在第k次迭代的比特信息vmn:

其中,m(n)\m为排除校验节点m的包含比特节点n的校验节点集。

步骤4,通过参与校验节点m校验运算的比特节点集中除比特节点n以外的其他节点n’的比特信息vmn’更新比特节点n发送给校验节点m的校验信息umn,m∈[1,m];

其中,通过参与校验节点m校验运算的比特节点集中除比特节点n以外的其他节点n’的比特信息vmn’更新比特节点n发送给校验节点m的校验信息umn,具体包括:

根据公式4计算比特节点n发送给校验节点m的校验信息umn:

其中,n(m)\n为排除比特节点n的参与校验节点m校验运算的比特节点集。

步骤5,通过比特信息vmn与umn更新每个比特节点n的迭代硬判决值zn,并通过标识比特节点集、标识比特节点集在最后一次迭代的比特信息以及比特节点n的震荡标识对发生信息震荡的比特节点变量信息进行修正;

其中,通过比特信息vmn与umn更新每个比特节点n的迭代硬判决值zn,并通过标识比特节点集、标识比特节点集在最后一次迭代的比特信息以及比特节点n的震荡标识对发生信息震荡的比特节点变量信息进行修正,具体包括:

设置k=k+1,根据公式5更新每个比特节点n的迭代硬判决值zn;

zn=(1-sgn(vmn+umn))/2公式5;

其中,k为迭代次数;

对于每个m和n,如果满足公式6,则设置并对于在集λ(m,n)中的比特节点执行操作;

其中,signb为自定义函数,用于获取实数二进制补码形式下的符号位,λ(m,n)为标识比特节点集,为λ(m,n)在最后一次迭代的比特信息,υm,n为比特节点n的震荡标识。

步骤6,判断是否满足预设的迭代停止条件,如果满足,则终止译码进程并且输出比特节点n的第k次迭代硬判决向量zk,否则返回到步骤3。

其中,预设迭代停止条件为:

比特节点n的第k次迭代的伴随向量sk的重量wk为零或迭代次数k超出迭代次数的最大值kmax;其中,伴随向量sk=zk×ht

为帮助本领域技术人员理解,下面结合实例对本发明的技术方案进行说明;

仿真使用的码字为,渐进边增长peg(progressiveedgegrowth)基的规则(4,8)(1008,504)码和欧式几何eg(euclideangeometry)(1023,781)码,为了便于讨论,分别记为码1和码2。两个码字最大迭代次数都设为100。仿真使用均值为零、方差n0/2的加性高斯白噪声信道。对于每个信噪比点,观察到100个错误译码帧时停止译码。

图2和图3分别给出两个码字经由bp算法以及本发明实施例算法译码的仿真结果。由图2可知,当snr=3.0db时,对于码1本发明实施例算法相比于bp算法可以获得0.15db的译码增益。与此同时,当snr=3.5db时,对于码2,可以从图3中明显观察到一个0.25db译码增益。

仿真数据较好的验证了本发明实施例算法的有效性。另外,仿真结果反映出算法对于不同的ldpc码字具有一定性能差异。仿真结果较好地验证了本发明实施例算法的有效性。同时,由于不同码字校验矩阵结构的差异造成本发明实施例算法译码效果有所不同。码1是由peg算法生成的随机构造码字。因为peg算法在构造码字校验矩阵的过程中会尽力增加码字的环长,所以码1校验矩阵中的短环较少。然而,码2基于有限几何的点和线构造,有限几何码较大的行重和列重致使相应码字校验矩阵中,包含大量的短环。因为短环是构成陷阱集的基本结构,所以它也是构成不稳定陷阱集的主要结构。故而,在码2的译码过程中,将会出现远多于码1的不稳定陷阱集。相应地,直观上认为码2的译码过程中将会出现更多的信息震荡(相比码1)。本发明实施例算法通过减少由不稳定陷阱集造成的信息震荡行为提高译码性能。因此,利用本发明实施例算法译码时,在译码过程中出现更多信息震荡的码2可以获得比码1更大译码提升。

装置实施例

本发明实施例提供一种基于集破坏的修正置信传播装置,用于实现上述方法实施例中基于集破坏的修正置信传播方法,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,计算机程序被处理器执行时实现上述方法实施例的步骤,具体包括:

步骤1,通过接收端接收awgn信道传输的经过bpsk调制的码字c=[c1c2...cl],其中,接收端的接收向量y=[y1y2...yl],l为码字的个数;

步骤2,设置迭代次数k为0,对于所有在区间[1,n]中的比特节点n和在区间[1,m]的校验节点m,计算比特节点n的归一化接收值vn以及迭代硬判决值zn,设置比特节点n在第k次迭代的比特信息vmn和比特节点n发送给校验节点m的校验信息umn均等于零;其中,n和m分别为码字c的检验矩阵h=[hmn]的第n行和第m列;

其中,计算比特节点n的归一化接收值vn以及迭代硬判决值zn,具体包括:

根据公式1和公式2分别计算比特节点n的归一化接收值vn以及迭代硬判决值zn,

vn=4yn/δ2公式1;

zn=(1-sgn(yn))/2公式2;

其中,yn为任意码字cn的任意接收向量,yn=sn+ηn(n=1,2...l),任意码字cn的调制规则为sn=1-2cn,ηn为零均值加性高斯白噪声,其噪声方差为δ2

步骤3,通过比特节点n的归一化接收值vn与包含比特节点n的校验节点集中除校验节点m以外的其他节点m’的校验信息um’n更新比特节点n在第k次迭代的比特信息vmn,n∈[1,n];

其中,通过比特节点n的归一化接收值vn与包含比特节点n的校验节点集中除校验节点m以外的其他节点m’的校验信息um’n更新比特节点n在第k次迭代的比特信息vmn,具体包括:

根据公式3算比特节点n在第k次迭代的比特信息vmn:

其中,m(n)\m为排除校验节点m的包含比特节点n的校验节点集。

步骤4,通过参与校验节点m校验运算的比特节点集中除比特节点n以外的其他节点n’的比特信息vmn’更新比特节点n发送给校验节点m的校验信息umn,m∈[1,m];

其中,通过参与校验节点m校验运算的比特节点集中除比特节点n以外的其他节点n’的比特信息vmn’更新比特节点n发送给校验节点m的校验信息umn,具体包括:

根据公式4计算比特节点n发送给校验节点m的校验信息umn:

其中,n(m)\n为排除比特节点n的参与校验节点m校验运算的比特节点集。

步骤5,通过比特信息vmn与umn更新每个比特节点n的迭代硬判决值zn,并通过标识比特节点集、标识比特节点集在最后一次迭代的比特信息以及比特节点n的震荡标识对发生信息震荡的比特节点变量信息进行修正;

其中,通过比特信息vmn与umn更新每个比特节点n的迭代硬判决值zn,并通过标识比特节点集、标识比特节点集在最后一次迭代的比特信息以及比特节点n的震荡标识对发生信息震荡的比特节点变量信息进行修正,具体包括:

设置k=k+1,根据公式5更新每个比特节点n的迭代硬判决值zn;

zn=(1-sgn(vmn+umn))/2公式5;

其中,k为迭代次数;

对于每个m和n,如果满足公式6,则设置并对于在集λ(m,n)中的比特节点执行操作;

其中,signb为自定义函数,用于获取实数二进制补码形式下的符号位,λ(m,n)为标识比特节点集,为λ(m,n)在最后一次迭代的比特信息,υm,n为比特节点n的震荡标识。

步骤6,判断是否满足预设的迭代停止条件,如果满足,则终止译码进程并且输出比特节点n的第k次迭代硬判决向量zk,否则返回到步骤3。

其中,预设迭代停止条件为:

比特节点n的第k次迭代的伴随向量sk的重量wk为零或迭代次数k超出迭代次数的最大值kmax;其中,伴随向量sk=zk×ht

本发明实施例中,利用置信传播算法译码过程的译码数据特征;参考屏幕菜单式调节方式osd(on-screendisplay)算法的相关理论,使每个比特节点的可靠性可以由其对数似然值表示,发明算法采用每个比特节点的比特信息观察相应节点的震荡行为,即观察比特节点判决值符号是否出现不能收敛的情况;通过对标记为发生震荡行为的比特节点,用其当前以及上一次迭代比特信息的平均值代替当前值,提高了置信传播算法的译码性能。且修正仅在每次迭代过程中,对每个比特节点二进制译码结果进行两次异或运算即可简单检测到各个比特节点是否出现译码震荡行为;由于异或运算利用现场可编程门阵列fpga(field-programmablegatearray)等硬件实现时,运算量非常低,所以本发明算法相较于传统置信传播算法,译码的复杂度以及处理时延并不会有很大提升;有效的破坏了译码过程中出现的译码震荡行为,有效降低仿真码字的错误平层,验证发明算法的有效性;解决了现有技术中置信传播算法译码过程中由于不稳定陷阱集引起的信息震荡行为的问题。

显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1