一种降低LDPC误码平层的方法与流程

文档序号:17000207发布日期:2019-03-02 01:43阅读:527来源:国知局
一种降低LDPC误码平层的方法与流程

本发明涉及一种降低ldpc误码平层的方法,属于通信技术领域。



背景技术:

在通信系统中,由于信道中存在各种各样的噪声,来自信源的发送消息在经过信道后或多或少的会受到信道噪声产生的不良影响,例如在传输过程中受到外界的干扰,或在通信系统内部由于各个组成部分的质量不够理想而使传送的信号发生畸变等。当受到的干扰或信号畸变达到一定程度时,就会产生差错。

误码的产生是由于在信号传输中,衰变改变了信号的电压,致使信号在传输中遭到破坏,产生误码。噪音、交流电或闪电造成的脉冲、传输设备故障及其他因素都会导致误码(比如传送的信号是1,而接收到的是0;反之亦然)。各种不同规格的设备,均有严格的误码率定义,如通常视/音频双向光端机的误码率应该在:(ber)≤10e-9。

由于种种原因,数字信号在传输过程中不可避免地会产生差错。什么是差错?在数据通信中,如果发送的信号是“1”,而接收到的信号却是“0”,这就是“误码”,也就是发生了一个差错。在一定时间内收到的数字信号中发生差错的比特数与同一时间所收到的数字信号的总比特数之比,就叫做“误码率”,也可以叫做“误比特率”。误码率(ber:biterrorrate)是衡量数据在规定时间内数据传输精确性的指标。

误码率=错误码元数/传输总码元数。

误比特率=错误比特数/传输总比特数。

误码率是最常用的数据通信传输质量指标。它表示数字系统传输质量的式是“在多少位数据中出现一位差错”。举例来说,如果在一万位数据中出现一位差错,即误码率为万分之一,即10e-4。

ldpc码在1963年由gallager博士在他的博士论文中提出,可获得接近香农限的性能。虽然由于技术条件所限,ldpc码被忽视了三十多年,但最终还是以其优良的性能成为了编码领域的研究热点,目前已广泛应用于光纤通信、以太网(10g)、微波通信、ssd、硬盘通信、5g通信等无线通信标准中。

ldpc的误码平层表现为:到了一定的高信噪比区域,原本陡峭的性能曲线突然变得平坦。在许多应用中,比如存储领域,对纠错码的性能要求非常苛刻,降低误码平层有着非常重要的意义。降低误码平层通常有两个方向,一个是级联外码,比如bch,但是会增加不少面积消耗和增加延时;另一个是从ldpc本身出发,从矩阵设计上避免,但是通常在码字设计阶段很难准确评估误码平层的状况,通常的解码算法在设定最大迭代次数后,如果解码失败(通过判断校验式是否满足),则退出解码,宣布解码失败,大大降低了解码的成功率。



技术实现要素:

为解决上述问题,本发明的目的在于提供一种降低ldpc误码平层的方法,在初步校验后统计不满足的校验式的个数,预设合适的门限,在不满足校验式的个数小于所设门限的情况下,根据不满足的校验式获取对应的码字,执行纠正,降低误码平层。

本发明解决其问题所采用的技术方案是:一种降低ldpc误码平层的方法,其特征在于,该方法包括以下步骤:s100、输入码字进行校验并开始迭代,得到校验结果;s200、根据校验结果判断是否所有校验式都满足,若是则退出迭代,完成校验,否则执行下一步骤;s300、判断迭代次数是否等于预设最大迭代次数,若是则继续执行下一步骤,否则执行步骤s100;s400、判断不满足的校验式个数是否少于预设门限,若是则继续执行下一步骤,否则退出迭代并完成校验;s500、根据不满足的校验式获取对应的可疑错误比特,执行纠正;s600、退出迭代,完成校验。

进一步的,所述步骤s100包括以下步骤:将输入码字分段,按照分段策略执行分段处理,得到分段数据,其中所述分段策略为对码字以比特为最小单位进行分段,单个分段包含若干比特,其分段数是ldpc子矩阵大小的整数倍;根据分段数据进行校验,得到每段数据的校验结果。

进一步的,所述步骤s500包括以下步骤:s501、根据校验结果,得到不满足校验式的分段数据,该分段数据包含的若干信息比特即为可疑错误比特;s502、将包含可疑错误比特的分段数据按照预设翻转策略执行翻转;s503、重设迭代次数并返回执行步骤s100。

进一步的,所述步骤s502还包括:将翻转后的分段数据进行crc校验并开始迭代;判断所有分段数据的crc是否正确校验,若是则退出迭代,完成校验,否则继续执行下一步骤;是否尝试迭代,若是则执行步骤s100,否则执行下一步骤;判断crc纠错是否遍历完毕,若是则退出迭代,完成校验,否则返回执行步骤s502。

进一步的,所述翻转策略包括逐比特翻转和逐分段翻转。

进一步的,所述步骤s500包括以下步骤:根据校验结果检索出不满足的校验式,与其相连接的比特即为可疑的错误比特;将可疑的错误比特执行翻转并重设迭代次数;返回执行步骤s100。

进一步的,所述预设门限小于10。

本发明的有益效果是:本发明采用的一种尝试通过翻转比特来降低误码平层的方法,通过预设的迭代次数和门限,避免解码失败进入死循环并高效的进行crc联合校验,配合预设的翻转策略进行比特翻转,可以大幅降低误码平层,提高解码成功率,解决了常规的解码算法在设定最大迭代次数后,如果解码失败(通过判断校验式是否满足),则退出解码,宣布解码失败的问题。

附图说明

图1所示为根据本发明的方法流程图;

图2所示为根据本发明的具体实施例一;

图3所示为根据本发明的具体实施例二;

图4所述为根据本发明的具体实施例三。

具体实施方式

以下将结合实施例和附图对本发明的构思、具体结构及产生的技术效果进行清楚、完整的描述,以充分地理解本发明的目的、方案和效果。

需要说明的是,如无特殊说明,当某一特征被称为“固定”、“连接”在另一个特征,它可以直接固定、连接在另一个特征上,也可以间接地固定、连接在另一个特征上。此外,本公开中所使用的上、下、左、右等描述仅仅是相对于附图中本公开各组成部分的相互位置关系来说的。在本公开中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。此外,除非另有定义,本文所使用的所有的技术和科学术语与本技术领域的技术人员通常理解的含义相同。本文说明书中所使用的术语只是为了描述具体的实施例,而不是为了限制本发明。本文所使用的术语“和/或”包括一个或多个相关的所列项目的任意的组合。

应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种元件,但这些元件不应限于这些术语。这些术语仅用来将同一类型的元件彼此区分开。例如,在不脱离本公开范围的情况下,第一元件也可以被称为第二元件,类似地,第二元件也可以被称为第一元件。本文所提供的任何以及所有实例或示例性语言(“例如”、“如”等)的使用仅意图更好地说明本发明的实施例,并且除非另外要求,否则不会对本发明的范围施加限制。

术语解释:

ldpc码:是麻省理工学院robertgallager于1963年在博士论文中提出的一种具有稀疏校验矩阵的分组纠错码。几乎适用于所有的信道,因此成为编码界近年来的研究热点。它的性能逼近香农限,且描述和实现简单,易于进行理论分析和研究,译码简单且可实行并行操作,适合硬件实现。

crc:循环冗余校验(cyclicredundancycheck,crc)是一种根据网络数据包或电脑文件等数据产生简短固定位数校验码的一种散列函数,主要用来检测或校验数据传输或者保存后可能出现的错误。它是利用除法及余数的原理来作错误侦测的。

码字由码元组成,码元:在数字通信中常常用时间间隔相同的符号来表示一位二进制数字。这样的时间间隔内的信号称为二进制码元,而这个间隔被称为码元长度,比特/秒:是信息传输速率的单位码元传输速率也成为调制速率、波形速率或符号速率。一个码元不一定对应于一个比特。

比特率可以被理解为单位时间内传输码元符号的个数(传符号率),通过不同的调制方法可以在一个码元上负载多个比特信息。因此信息传输速率即比特率在数值上和传信率(rb)是信息传输速率,也叫比特率。指单位时间传递的平均信息量或比特数。单位为b/s。

码元速率(rb)是码元传输速率,也叫传码率、波特率。是指单位时间传送码元的数目。单位波特(b)。

参照图1所示为根据本发明的方法流程图,方法流程如下:输入码字并进行校验,得到校验结果;根据检验结果判断是否所有所有校验式都满足,若是,退出迭代,完成校验,否则执行下一步骤;判断迭代次数是否等于最大迭代次数,若是,继续执行下一步骤,否则执行步骤s100;判断不满足的校验式个数是否少于预设门限,若是,则继续执行下一步骤,否则,退出迭代,完成校验;根据不满足的校验式获取对应的码字,执行纠正;退出迭代,完成校验。详细说明,即

1、将码字分段,通常为子矩阵大小的整数倍为一段。

2、发射端将分段的数据做检验(如crc8),添加校验结果。

3、解码端在迭代到预设的最大迭代次数时,如果不满足的校验式较少,则可以考虑进行尝试比特翻转。

4、对于不满足数据校验的分段数据,其中与不满足的校验式相连接的信息比特为可疑的错误比特。

5、由于残留的比特很少,一般也比较分散,可以认为分段数据内只有少量几个错误,可以先尝试只有一个比特错误,则可疑的错误比特不超过列重与分段数据内的子矩阵个数的乘积,逐比特翻转并进行crc校验,若crc校验成功,则认为纠正了一个错误比特。如果要尝试多比特错误,则需要考虑组合的情况。

6、可以全部使用翻转—crc校验的方式纠正残留比特,也可以翻转少数几个(比如两个),然后继续ldpc迭代。

7、数据分段方式不一定是均匀分段,通常列重较大的几乎没有残留错误,可以加大长度或者不校验,列重较小的可以适当缩短长度。

参照图2所示为根据本发明的具体实施例一,码字分段处理并初步校验的方法流程:输入码字;将输入码字按照分段策略进行分段处理;得到分段数据;根据分段数据进行校验;得到每段数据的校验结果。

分段策略为,对码字以比特为最小单位进行分段,单个分段包含若干比特,其分段数是ldpc子矩阵大小的整数倍。

参照图3所示为根据本发明的具体实施例二,执行纠正的方案一,根据校验结果得到不满足校验式的分段数据;根据分段数据得到可疑错误比特;将包含可疑错误比特的分段数据按照翻转策略执行翻转;重设迭代次数;返回执行校验步骤;

其中,翻转策略包括逐比特翻转和逐分段翻转。

参照图4所示为根据本发明的具体实施例三,执行纠正的方案二,将包含可疑错误比特的分段数据按照翻转策略执行翻转;将翻转后的分段数据进行crc校验;判断所有分段数据的crc是否正确校验,若是,则退出迭代,完成校验,否则,继续执行下一步;是否尝试迭代,若是,则返回执行校验步骤,否则,继续执行下一步;crc纠错是否遍历完毕,若是则退出迭代,完成校验,否则,返回第一步,继续执行翻转。

分段翻转的原理如下,以一个6x9的校验矩阵为例,码字长度为9bit,有6条校验式,

v0-v8代表vn0-vn9,c0-5代表cn0-cn5。

假设分为3段数据来做crc,分别记为crc0,crc1,crc2.

假设只有c3校验式不满足,则有可能是v0,v5,v7出错,共7种情况:

1、有1bit错,(v0);(v5);(v7)

2、有2bit错,(v0,v5);(v0,v7);(v5,v7);

3、有3bit错,(v0,v5,v7)

最差情况需要尝试7次翻转bit。

如果联合crc的结果,则情况大大简化,crc的结果和vn一一对应,假设crc0错,则确定是v0错,直接翻转该bit,无需尝试。

以上所述,只是本发明的较佳实施例而已,本发明并不局限于上述实施方式,只要其以相同的手段达到本发明的技术效果,都应属于本发明的保护范围。在本发明的保护范围内其技术方案和/或实施方式可以有各种不同的修改和变化。

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