一种用于打孔LDPC硬判决译码的预处理方法与流程

文档序号:18181481发布日期:2019-07-17 05:12阅读:751来源:国知局
一种用于打孔LDPC硬判决译码的预处理方法与流程
本发明属于信道编码领域,涉及一种用于打孔LDPC硬判决译码的预处理方法。
背景技术
:低密度奇偶校验码(LDPC)在通信系统中表现出迄今为止最接近香农极限的纠错性能,已经广泛应用于光通信、卫星通信、深空通信、第四代移动通信、高速与甚高速率数字用户线和磁记录等系统中。但是与其他纠错码相比,LDPC码的编解码通常需要大量的硬件资源消耗和处理时间,这就大大限制了其实际应用。近年来,研究的努力方向主要集中在降低编译码复杂度、应用嵌入式微系统和提高电子系统的运行速度等方面,然而硬件水平的限制使得大量研究人员更关注对现有算法的改进或替代。通过改进或替代算法来降低硬件实现的复杂度是明智且合理的选择,改进后的算法在某种程度上可以降低对硬件的要求,从而达到降低成本、易于实用的目的。在LDPC译码中,主要分为硬判决译码和软判决译码两大类,硬判决译码不需要任何软信息即可实现解码,结构简单,运算量较小,易于工程实现,但较软判决译码纠错性能约低2~3dB。软判决译码具有良好的的性能,但资源需求量大,实现复杂度较高。对LDPC码进行打孔处理是一种实现可变速率LDPC的方法,其思想是通过删除校验信息中的一些信息比特,来达到实现调整码率和码长的目的。在实际应用中,经常会遇到调整码长或码率来匹配通信的速率的情况,目前主要采用软判决译码的方法来进行译码。然而在码长较长、硬件资源紧张的条件下,软判决译码的实现难度异常大甚至是不可能的,若采用硬判决LDPC译码方法,译码纠错增益就会有较大的损失,特别是在打孔信息较多、信道条件较差的情况下硬判决LDPC译码甚至会失去译码纠错能力。技术实现要素:为了克服现有技术的不足,本发明提供一种用于打孔LDPC硬判决译码的预处理方法,根据打孔信息位置,结合生成矩阵,对接收到的信息进行预编码处理,再进行译码,最后得到译码结果。本发明解决其技术问题所采用的技术方案包括以下步骤:(1)根据编码打孔算法,确认编码后打孔校验信息的位置K1,K2…Kn,从接收信息中找出编码信息C,即信息比特;(2)根据校验矩阵H变换得到生成矩阵G,找出与打孔信息Ki对应的生成矩阵G中的第Ki列Gi,其中对应关系指的是第Ki个信息位与生成矩阵G的第Ki列互为对应关系;(3)将所有生成矩阵第Ki列中非0元素对应的接收码字中编码信息单元C,模2求和,得到预编码后的校验信息Pki;利用编码信息C做部分重新编码处理来恢复打孔部分的校验信息;(4)重复步骤(2)、(3),遍历i的各个取值,分别求出所有打孔位置校验信息恢复值Pki;(5)分别用求出的Pki来补全接收信息中第Ki个打孔校验信息,恢复出完整的码字S’;(6)将S’作为新的接收编码信息,运用LDPC硬判决译码算法解出译码信息。本发明的有益效果是:(1)本发明提出的预处理方法,在译码之前对接收信息做了部分重新编码处理,恢复打孔部分信息,为译码处理提供了更多可信信息,相比于以往直接进行硬判决译码的做法,能有约0.5dB的译码增益,特别是在打孔、信道条件较为苛刻时,效果更加明显;(2)本发明提出的预处理方法,仅对与打孔信息相关部分做重新编码处理,由于LDPC码的H矩阵和生成矩阵G都是稀疏矩阵,即矩阵中大部分单元为0,少量单元为1,根据矩阵乘运算规则,只需取G相关单元中非零单元的信息,简化运算,只需增加少量的硬件资源,相比于应用软判决译码算法的做法,对硬件资源的消耗少很多,更符合实际应用和成本方面的考虑。附图说明图1是本发明进行预处理方法的处理流程图;图2是本发明预处理方法应用过程图;图3是具体实施例中的进行预处理性能仿真对比图。具体实施方式下面结合附图和实施例对本发明进一步说明,本发明包括但不仅限于下述实施例。本发明解决其技术问题所采用的技术方案是根据打孔信息位置,结合生成矩阵,对接收到的信息进行预编码处理,再译码,最后得到译码结果,具体包括以下步骤:(1)初始化根据编码打孔算法,确认编码后打孔校验信息的位置K1,K2…Kn,从接收信息中找出编码信息C,即信息比特。(2)确定对应应的生成矩阵G单元根据校验矩阵H变换得到生成矩阵G,找出与打孔信息Ki对应的生成矩阵G中的第Ki列Gi,其中对应关系指的是第Ki个信息位与生成矩阵G的第Ki列互为对应关系。(3)预编码处理将所有生成矩阵第Ki列中非“0”元素对应的接收码字中编码信息单元C,模2求和,得到预编码后的校验信息Pki。根据编码原理S=C×G,其中S为编码后码字,C为接收信息中的编码信息,G为生成矩阵。由于接收码字S是由编码信息C和校验信息J拼接而成的,利用接收码字中编码信息C,做部分重新编码处理来恢复打孔部分的校验信息,即预编码处理。(4)重复(2)、(3)步骤得出所有恢复值Pki将i从1累计到n,重复第(2)、(3)步骤,分别求出所有打孔位置校验信息恢复值Pki。(5)补全打孔位置校验信息,恢复码字S’分别用求出的Pki来补全码字中第Ki个打孔校验信息,恢复出完整的码字S’即接收信息+打孔信息恢复值。(6)LDPC硬判决译码将S’作为新的接收的编码信息,再运用LDPC硬判决译码算法,按照硬判决译码的步骤,解出译码信息。下面以码率为1/2的(1250,2500)准循环LDPC码为例,对本发明的预处理方法的具体实施方式进行说明。由于(1250,2500)LDPC码不是一个码长较为规则的码,在实际系统中,通信速率为62.5kbps,再加上编码后的CRC校验,为了匹配通信速率,对LDPC做了打孔处理,在这种情况下应用本发明的预处理进行译码处理具体步骤如下:步骤1初始确定打孔位置及编码信息为了满足速率匹配的要求,系统完成编码后,对校验位的最后150bits做了打孔处理,由于(1250,2500)LDPC码是用50bits*50bits的循环码组成,以50bits为一个单位进行处理,我们选择第23、24、25个打孔单元,并对接收到的数据分组,每50bit为一组,前25组即为接收到的编码信息C1、C2、……C25。步骤2确定3组打孔相应的生成矩阵G单元组通过Matlab软件计算出该H矩阵对应的G矩阵,找到第23个打孔单元对应的G矩阵的单元G23。一般情况下,需要求出生成矩阵G才能进行后续步骤,但对应一些特殊的LDPC码来说,G矩阵是很容易得到的,如准循环LDPC(QC-LDPC)码,下三角结构LDPC码、双对角结构LDPC码,特别是一些直接构造G矩阵的LDPC码等。在G矩阵不易得到的码,可以参考编码部分借用编码生成的G矩阵,可以节约很多时间和精力。步骤3对第23个打孔相关信息做预编码处理,得到恢复值P23。根据编码原理S=C×G,其中S为编码后码字,C为接收信息中的编码信息,G为生成矩阵。由于接收码字s是由编码信息C和校验信息J拼接而成的,利用接收码字s中编码信息C,做部分重新编码处理来恢复打孔部分的校验信息,即预编码处理。在G矩阵中,第23列矩阵单元中,只有第5、11、17、25个矩阵单元为非零单元,其循环移位次数分别是:17、18、5、34。将接收到码字中的编码信息单元C5、C11、C17、C25分别作17、18、5、34次向右循环移位操作,按列对移位后的编码信息C’5、C’11、C’17、C’25做模2和运算,得到了第23个打孔单元的恢复值P23。步骤4分别按照(2)、(3)步骤得到恢复值P24、P25按照步骤(2)分别取第24、25列G矩阵单元G24、G25,其中G24中第6、11、20、21为非零单元,其循环移位次数分别是:25、13、1、9;其中G25中第7、12、18、25为非零单元,其循环移位次数分别是:28、29、43、14。按照步骤(3),分别对于相应的编码信息移位后做模2和处理,得到第24、25个单孔单元的恢复值P24、P25。步骤5恢复2500bits码字S’接收解析处理的码字共有2350bits,将步骤(4)得到的P23、P24、P25补到接收码字后面,即第23、24、25个打孔单元的位置,恢复出2500bits的码字S’。步骤6加权比特翻转硬判决算法译码应用加权比特翻转硬判决译码算法,最大迭代次数选为20次,对恢复的码字S’做译码处理,得到译码结果C’。以码率为1/2的(1250,2500)准循环打孔LDPC码为例,应用本专利发明的预处理方法,软件仿真得到的译码增益性能分析与硬判决译码的比较如图3,可以看出该预处理方法相比于硬判决译码方法,信噪比(Eb/N0)越低其纠错性能提高越多,随着信噪比的提高,其译码增益的提高在变小,在信噪比(Eb/N0)低于5.5dB时,该预处理方法能提高约0.5~1.0dB的译码增益。同时针对这种码,把本预处理方法应用到具体实践中,在Altera公司的CycloneIIIEP3C120F84I7FPGA上实现,软判决译码、预处理硬判决译码、硬判决译码的资源占用对比情况如表1,其中软判决译码信息位采用6位量化处理,硬判决译码采用加权比特翻转硬判决译码算法。可以看出应用该预处理方法所需的硬件资源是软判决译码方法需求的约1/3,与未处理的硬判决译码相比,只需增加不到1%的硬件资源。表1三种处理方法资源占用对比表处理方法LogicelementsRegistersMemorybits预处理硬判决7078(6%)384614721(<1%)软判决译码23596(20%)16091142771(4%)硬判决译码5803(5%)361110625(<1%)当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1