在硬决策软解码期间决定何时结束位翻转算法的方法与流程

文档序号:11215300阅读:1148来源:国知局
本发明涉及用于一低密度奇偶校验(low-densityparitycheck,ldpc)解码器的硬解码(harddecoding),尤其是涉及一种具备省电设计的位翻转(bitflipping)算法。
背景技术
::低密度奇偶校验解码器使用具有多个奇偶位的线性错误更正码,其中所述奇偶位建立具有多个奇偶方程式的解码器,以对接收到的码字(codeword)进行验证。举例来说,低密度奇偶校验可为一固定长度的二进制代码,其中所述二进制代码中所有的符元(symbol)相加会等于零。在编码过程中,所有的数据位会被重复执行并且被传送至对应的编码器,其中每个编码器会产生一奇偶符元(paritysymbol)。码字是由k个信息位(informationdigit)以及r个校验位(checkdigit)所组成。如果码字总共有n位,则k=n-r。上述码字可用一奇偶校验矩阵来表示,其中所述奇偶校验矩阵具有r列(表示方程式的数量)以及n行(表示位数),如图1所示。这些码被称为“低密度”是因为相较于奇偶校验矩阵中位0的数量而言,位1的数量相对的少。在解码过程中,每次的奇偶校验都可视为一奇偶校验码,并随后与其他奇偶校验码一起进行交互校验(cross-check),其中解码会在校验节点(checknode)进行,而交互校验会在变量节点(variablenode)进行。ldpc解码器支持三种模式:硬决策硬解码(harddecisionharddecoding)、软决策硬解码(softdecisionharddecoding),以及软决策软解码(softdecisionharddecoding)。图1是奇偶校验矩阵h(图1的上半部份)以及tannergraph(图1的下半部份)的示意图,其中tannergraph是另一种表示码字的方式,并且可用于解释当使用一位翻转(bitflipping)算法时,ldpc解码器的一些涉及硬决策软解码的操作。在tunnergraph中,方形(c1~c4)所表示的校验节点(checknode)代表奇偶位(paritybit)的数量,且圆形(v1~v7)所表示的变量节点(variablenode)是一码字中位的数量。如果一特定方程式与码符元(codesymbol)有关,则对应的校验节点与变量节点之间会以联机来表示。被估测的消息会沿着这些联机来传递,并且于节点上以不同的方式组合。一开始时,变量节点将发送一估测至所有联机上的校验节点,其中这些联机包括被认为是正确的位。接着,每个校验节点会依据对所有其他的连接的估测(connectedestimate)来针对每一变数节点进行新的估测,并且将新的估测传回至变量节点。新的估测是基于:奇偶校验方程式迫使所有的变量节点连接至一特定校验节点,以使总和为零。这些变量节点会接收新的信息并且使用多数规则(majorityrule)(也就是硬决策)来判断所传送的原始位的值是否正确,若不正确,所述原始位会被翻转(flipped)。接着,所述位会被传回至所述校验节点,且上述步骤会被迭代地执行一预定次数,直到符合这些校验节点的奇偶校验方程式。若有符合这些奇偶校验方程式(也就是校验节点所计算的值符合接收自变量节点的值,则可启用提前终止(earlytermination),这会使得系统在最大迭代次数达到之前就结束解码程序。迭代的次数会被错误位的数量所限制,若执行超出特定次数的迭代,错误位会急剧地增加,在此情况下,有需要将系统切换至一不同模式。在无法得知错误位的正确数量的情况下,何时要切换模式(例如由位翻转切换至软决策软解码(softdecisionsoftdecoding))会根据解码器的性能来决定。上述的位翻转算法是一低功率解码方法,而硬决策软解码(harddecisionsoftdecoding)也可采用其他的解码算法,诸如n2解码器以及n6解码器所采用的算法。这些不同的解码算法将会导致不同结果,而这些结果各有其优缺点。若能判断出位翻转算法的可更正位率(correctablebitrate)会在何时开始下降,则可据以切换至比较适合的解码类型。位翻转解码器在原始错误位(rawerrorbit)较少的情况下具有低功率的优势,而当位翻转解码器的效能开始下降时,则有需要采用其他具有较高的可更正率的解码器。技术实现要素:本发明的一目的在于公开一种用于决定位翻转算法的效能何时开始下降的方法,以及使用所产生的信息来切换至一具有更高可更正率的解码算法。本发明的一实施例公开了一种用于在一低密度奇偶校验(lowdensityparitycheck,ldpc)解码器执行硬决策软解码(harddecisionsoftdecoding)的期间决定何时结束一位翻转算法的方法。所述方法包括有:选取一特定次数的迭代,作为一第一临界值;当达到所述第一临界值时,针对目前为止所进行的每一次迭代决定出一最高可变节点码字(codeword),以产生多个最高可变节点码字;将所述最高可变节点码字与一第二临界值进行比较;以及当所述最高可变节点码字的值是小于或等于所述第二临界值时,结束所述位翻转算法。附图说明图1是根据现有技术的用于进行低密度奇偶校验解码的一奇偶校验矩阵以及tannergraph的示意图。其中,附图标记说明如下:h奇偶校验矩阵c1~c4校验节点v1~v7变数节点具体实施方式如上所述,本发明的目的在于避免位翻转算法没有效率地进行太多次迭代,此外,本发明能够找出解码算法需要被切换成硬决策软解码的正确时间点。为了实现以上目的,本发明公开一种动态的位翻转方法,其中迭代的次数并非预设,而是采用一效能参数来作为决定最大迭代次数的指标(benchmark)。在进行位翻转期间,所述变量节点是使用多数决定准则(majorityrule),以通过找出最大的变量节点、翻转原始位以及判断校验节点是否为零,来决定出正确信息。在执行一特定次数的迭代之后,所有的校验节点应为零,除非有无法更正的错误出现,而这种情况下就需要一种新的解码算法。一变量节点的行权重被定义为奇偶校验矩阵的一行中“1”的数量,这也表示所述变量节点的最大错误。参考图1,行权重也代表了每一变量节点耦接至多少个校验节点。行权重在此作为量测之用,以决定何时结束位翻转。数值t是用来在使用行权重进行量测之前,设定一最小迭代次数。在本范例中,t被选为3,这是因为通常不太可能在第一次甚至是第二次迭代就会满足所述码字,然而t的值不限于此,可根据不同的需求来作调整。令t等于3,以及令行权重事先用来进行量测效能的迭代次数等于i(即当前迭代次数为i),则所述解码器将会经历一第一次迭代“i–2”以及一第二次迭代“i–1”。如以上所述,位翻转算法会参考多个变量节点的最大码字并且翻转一原始位。在此情况下,系统也会分别针对第一次迭代i–2、第二次迭代i–1以及当前迭代i,来将最大变量节点码字的值与对应的“行权重除以2”来作比较。倘若每一次迭代所使用的值小于或等于对应的“行权重除以2”,这表示解码模式需要切换。反之,倘若每一次迭代所使用的值大于对应的行权重除以2,这表示所述位翻转算法可再作一次迭代,可用以下方程式来表示:若[mi–t,…,mi]<floor(columnweight/2),则终止位翻转。在以上方程序中,mi是第i次迭代的最大临界值(也就是最大的变量码字),以及t是期望的迭代次数,其中t是可调整。一旦判断出在经过一定次数的迭代之后,所述最高可变节点码字小于或等于所述行权重除以2,即表示使用目前的位翻转算法的错误位已多到无法解决的程度,故需要切换另一种解码算法。由以上说明可知,本发明通过只对算法执行一特定次数的迭代,来节省进行位翻转的功率损耗。通过使用行权重作为一效能参数,可迅速地得知终止位翻转的正确时间点,并且于目前的位翻转算法终止后,可选用其他的解码算法。以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1