一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用于准循环低密度奇偶校验码的垂直分层解码的方法及装置与流程

2021-10-19 23:23:00 来源:中国专利 TAG: 通信系统 循环 用于 译码 复杂度


1.本发明一般来说涉及用于信息传输、存储及处理系统(例如有线及无线通信系统、光学通信系统、计算机存储器、大容量数据存储系统等)的错误校正译码。更特定来说,本发明涉及用于低密度奇偶校验(ldpc)码的垂直分层迭代解码器的低复杂度实施方案的简化及优化,且更具体来说涉及由块循环置换矩阵组成的ldpc码,称作准循环ldpc(qc

ldpc)码。


背景技术:

2.错误校正码通过确保数据的完整性而在通信、计算机及存储系统中起重要作用。过去数十年已见证译码理论研究的激增,其导致基于ldpc码的高效译码方案的发展。迭代消息传递解码算法以及经适当设计的ldpc码已展示出在无限码字长度的限制下接近信息

理论信道容量。ldpc码在例如无线网络、卫星通信、深空通信及电力线通信等若干个应用中被标准化。
3.针对具有长度n及尺寸k的(n,k)ldpc码,大小为m
×
n=(n-k)
×
n的奇偶校验矩阵(pcm)h(假设h是满秩)由很少数目个非零项(即,很少数目个1)组成。以d
v
(n)(1≤n≤n)标示第n列的度数,即,第n列中1的数目。类似地,以d
c
(m)(1≤m≤m)标示第m行的度数,即,第m行中1的数目。此外,定义行及列的最大度数:
[0004][0005]
当h的列及行中1的数目恒定时,将ldpc码称为规则的,否则将ldpc码称为不规则的。针对规则ldpc码,γ=d
v
=d
v
(n)(1≤n≤n)且p=d
c
=d
c
(m)(1≤m≤m)。(d
v
,d
c
)规则ldpc码代表特别有趣的ldpc码类型。针对此类型,如果pcm h是满秩,那么码率是r=k/n=1-d
v
/d
c
。除非对于论证的清晰性有必要,否则将在行及列的度数标示中删除索引n或m。然而,显然,本发明的所有实施例适用于规则及不规则ldpc码两者。
[0006]
如果长度为n的二进制列向量(标示为x=[x1,x2,

,x
n
]
t
)是码字,那么其满足hx=0,其中在二进制字段gf(2)中执行乘法及加法运算,且0是长度为m的全零列向量。对于向量及矩阵两者,x
t
标示x的转置。矩阵中的元素可由h
m,n
或h(m,n)不同地标示。类似地,向量中的元素由x
n
或x(n)标示。向量及矩阵的水平串联及垂直串联分别标示为[a,b]及[a;b]。
[0007]
本发明涉及qc

ldpc类别。在qc

ldpc码中,pcm h由大小为l
×
l的正方形块或子矩阵组成,如方程式(2)中所描述,其中每一块h
i,j
是(i)全零l
×
l块或(ii)循环置换矩阵(cpm)。
[0008][0009]
cpm定义为循环群组的原始元素的幂。原始元素例如由方程式(3)中针对l=8的情形展示的l
×
l矩阵α定义。因此,cpmα
k
(其中k∈{0,

,l-1})具有向左移位k个位置的单位矩阵的形式。换种方式说,α
k
的第一列的非零值的行索引是k 1。k的值称为cpm值。cpm的主要特征是其在每一行/列中仅具有单个非零元素且可由其第一行/列以及用以产生其余行/列的过程一起定义。此过程的简单性转化为在qc

ldpc编码器或解码器中实现码字位的子集与奇偶校验方程式的子集之间的物理连接所需的低复杂度。
[0010][0011]
qc

ldpc码的pcm可方便地由具有m
b
行及n
b
列的基本矩阵(或原型矩阵)b表示,所述矩阵含有指示每一块h
i,j
的原始元素的幂的整数值。因此,基本矩阵的尺寸通过以下方式与pcm的尺寸相关:m=m
b l,n=n
b l,且k=k
b l(假设h是满秩)。方程式(4)中展示m
b
×
n
b
=4
×
5且l=8的矩阵h及b的实例。
[0012][0013]
其中i=α0是单位矩阵,且按惯例α


=0是全零l
×
l矩阵。
[0014]
奇偶校验矩阵h还可由二分特纳图(bipartite tanner graph)g表示,所述图由基数为n的变量节点集(vn)v={v1,v2,

,v
n
}及基数为m的校验节点集(cn)c={c1,c2,

,c
m
}组成。变量节点表示ldpc码的码字位且校验节点表示其奇偶校验方程式。如果奇偶校验矩阵中的矩阵元素等于h
m,n
=1,那么在节点c
m
与v
n
之间存在边缘的情况下,变量节点与校验节点通过边缘连接。校验节点c
m
的度数(标示为d
c
(m))是其连接到的变量节点的数目,且变量节点v
n
的度数(标示为d
v
(n))是其连接到的校验节点的数目。如果ldpc码的特纳图具有恒定变量节点度数及恒定校验节点度数那么将ldpc码称为规则的。否则,将ldpc码称为不规则的。进一步由n(c
m
)标示连接到c
m
的变量节点集且由n(v
n
)标
示连接到v
n
的校验节点集。
[0015]
对ldpc码的特纳图进行运算的迭代解码器沿着连接vn与cn的边缘在两种节点之间交换消息。边缘支持两个方向上的消息:变量到校验消息(标示为)及校验到变量消息(标示为)。
[0016]
本发明还涉及分层解码的概念,所述分层解码的概念用于在维持低复杂度的同时提高解码器收敛速度。分层ldpc解码方案通过减少达到成功解码所需的解码迭代次数而有效地改进收敛。分层解码器产生从校验节点的子集到变量节点的子集的消息,且接着产生从变量节点的子集到校验节点的子集的消息。
[0017]
现在定义qc

ldpc码中的层的概念。针对qc

ldpc码,行层通常由pcm的l个连续行组成,所述行由一组l
×
l循环置换矩阵定义。举例来说,方程式(2)中的第i块行定义了第i行层。类似地,列层由pcm的l个连续列组成。举例来说,方程式(2)中的第j块列定义第j列层。更一般来说,行层可由cpm的多个块行组成,且列层可由多个块列组成。为了易于表示,在本发明中,假设行层仅由一个块行组成,且列层仅由一个块列组成。所属领域技术人员可容易地将本发明中的说明一般化到其它层组织。
[0018]
迭代解码器通常由vn更新(vnu)规则、cn更新(cnu)规则以及消息计算的调度定义。调度定义了在ldpc码的整个特纳图中执行vnu及cnu运算的次序。迭代消息传递ldpc解码器有三个主要调度类型:(i)泛洪调度,(ii)水平分层(hl)调度,(iii)垂直分层(vl)调度。hl及vl调度通常联合qc

ldpc码一起使用。在hl解码中,消息更新是逐行层进行的,而在vl解码中,消息计算是逐列层进行的。
[0019]
本发明适用于任何二进制输入对称信道,且可容易地一般化到具有非二进制输入的信道。令x为长度为n的qc

ldpc码的码字。所述码字通过具有输出y的有噪声的无存储器信道发送,所述值属于q进制字母表信道精度n
q
是表示q进制字母表所需的位数,即,解码器的输入(标示为信道值)可通过对噪声信道的量化测量(即y的值)或通过这些测量的任何变换来定义。举例来说且在不失一般性的情况下,可将信道值定义为对数似然比(llr),其是从条件信道概率计算的,等于llr(y)=prob(y|x=0)/prob(y|x=1)。
[0020]
本发明的实施例进一步涉及称为有限字母表迭代解码器(faid)的一类迭代消息传递解码器。在这些解码器中,消息μ
c,v
及μ
v,c
属于有限字母表所述字母表由标示为s的有限(通常为少的)数目个层级组成。s个层级可使用精度的n
s
位表示,使得对于其中具有奇数基数的特定说明性情形,消息字母表标示为具有奇数基数的特定说明性情形,消息字母表标示为其中对于任何k>l,a
k
≥a
l
。注意,消息字母表与信道字母表可具有不同的基数,s≠q。
[0021]
使用预定义函数φ
v
:实施faid中的度数为d
v
的变量节点v的变量节点更新,所述函数在此说明中称为vn更新函数。其将特定边缘上的传出消息计算为信道值y与节点处的d
v
-1个传入消息的函数,不计所述特定边缘上的传入消息。举例来说,为了计算输出消息使用:
[0022][0023]
可优化vn更新函数以改进解码器的错误校正能力。可通过对称性从具有信道值y
=-y的vn更新函数导出信道值y= y的vn更新函数:
[0024][0025]
在faid中使用的校验节点更新函数φ
c
类似于用于在目前最新技术中通常使用的最小和解码器中的函数。如果表示到度数为d
c
的节点c的传入消息,那么φ
c
由以下公式给出:
[0026][0027]
取决于所使用的调度类型,可以各种方式实施cnu。随后将呈现有关用于vl解码的cnu实施方案的细节。
[0028]
最后,为了计算vn v的码字位的硬决策估计值,使用以下公式计算后验概率(app):
[0029][0030]
第n码字位的硬决策估计值,标示为等于:
[0031][0032]
如果硬决策估计值具有等于零的校正子,即,
[0033][0034]
那么解码器已成功收敛到有效码字。
[0035]
现在描述qc

ldpc码的vl解码的一般原理,重点是存储器组织及cnu处理。对于连接到d
c vn的每一cn c
m
,存在到cnu的d
c
个传入变量到校验消息,标示为可以正负号量值表示法写入所述消息其中sign
m,n
是消息的正负号,且mag
m,n
是其量值。进一步定义index
m,n
作为含有连接到校验节点c
m
的第n vn的块列的索引。替代地,index
m,n
可表示将v
n
连接到c
m
的d
c
个边缘当中的边缘的索引。用于index
m,n
的两个惯例均旨在定义所处理的消息的位置。
[0036]
使校验节点状态(cns)关联到每一cn c
m
,定义为如下
[0037][0038]
其中是对应于校验节点c
m
的校正子位,且m ag(d
c
)称为量值状态,由d
c
对组成。量值状态中的一对(mag
k
,index
k
)将称为量值对。在量值状态中,将量值按升序排序:
[0039]
mag1≤mag2<

<mag
k


≤mag
dc
[0040]
且index
k
的值指示与其中消息等于mag
k
的块列对应的块列索引。为了易于呈现,进一步假设,每一cn在奇偶校验矩阵的每一块列中具有最多一个vn相邻者,即,index
k

index
l
,k≠l。此条件对于vl解码不是强制性的,且当cn在块列中具有多于一个相邻者时,可以容易地扩展算法。
[0041]
在算法1中提出一般vl迭代解码器。所述算法采取信道值作为输入,并产生硬决策估计值在初始化步骤之后,解码器最多运行it
max
次迭代,且每一迭代以任意次序按顺序处理块列。在每一块列处理期间,消息的计算及cns的更新被组织成三个步骤:(i)利用cnu步骤a的校验到变量消息产生,(ii)利用vnu步骤的变量到校验消息计算,及最后(iii)利用cnu步骤b的cns更新。取决于算法的特定实施方案及变量节点更新φ
v
的类型,初始化步骤及vnu步骤可改变。举例来说,如果在vl解码器中使用faid算法,那么利用直接信道输出y执行初始化,而如果在vl解码器中使用最小和算法,那么利用llr执行初始化。
[0042]
为了计算硬决策估计值需要使用在cnu步骤a期间产生的消息依据(8)计算app,且使用方程式(9)做出决策。如果硬决策估计值验证零校正子条件(10),那么其形成有效码字。可在it
max
迭代结束时计算app值,或替代地可在解码过程期间、在每一迭代结束时或在每一块列处理结束时计算app值。在于解码期间计算app值的情形中,校正子h的值可用作较早停止准则。无论何时当校正子等于0时,由于解码器已经收敛到有效码字,因此可以使其停止。
[0043]
算法1中提出的一般vl解码器具有非常大的计算及存储复杂度,且降低复杂度的经典解决方案是将量值状态m ag(d
c
)截断为仅很少数目ω个最小量值。经截断cns使用经截断量值状态,且定义为:
[0044][0045]
减少cns中的量值数目会使vl解码器变得次优,从而影响错误校正强度及解码速度两者。文献中通常指出,保持ω=3个量值足以确保足够小的错误校正性能损失,而又不会显著影响平均迭代次数。
[0046]
[0047]
在算法1中的cnu步骤a及cnu步骤b中使用经截断cns,以降低解码复杂度。在cnu步骤a中,仅将cns中的两个最小量值用于处理。因此,只要ω≥2,量值状态的截断就不会改变cnu步骤a。cnu步骤b受cns的截断影响。在算法2中描述在ω≥2的情形中使用经截断cns时的简化vl解码器。有数个方式来高效地实施算法2中的cnu步骤b,以优化计算复杂度并使对错误校正性能的影响最小化。
[0048]
本发明涉及vl解码器中的cnu步骤a及cnu步骤b的低复杂度实施方案的简化及优化,同时在cns中使用最小数目个量值状态。
[0049]
[0050]


技术实现要素:

[0051]
本发明涉及使用迭代消息传递算法对qc

ldpc码进行解码。更具体来说,本发明涉及遵循垂直分层(vl)调度方案的解码器。
[0052]
本发明涉及一种以非常低的实施方案复杂度为目标来实施vl ldpc解码器的方法及装置。这通过简化在迭代处理期间校验节点更新的方程式且通过减少存储有关在变量节点与校验节点之间交换的消息的相关信息所需的存储器量来实现。
[0053]
本发明的算法在ldpc码的特纳图中的vn与cn之间交换消息,从而利用变量节点更新(vnu)处理及校验节点更新(cnu)处理来更新消息。消息的最小量值及相关联索引存储在校验节点存储器(cnm)内的校验节点状态(cns)中。cnu以两个步骤实施:cnu产生器步骤及cnu更新器步骤。
[0054]
本发明的方法简化cnu产生器及cnu更新器处理步骤,同时减小cnm的大小,目标是最小化vl解码器实施方案的资源使用,且降低其计算复杂度。
[0055]
本发明的方法实施cnu的最接近近似,其将使用具有ω 1个量值的cns同时仅使用可从具有ω个量值的cns获得的值。使用预测性量值映射(pmm)函数从cns中可用的ω个量
值中产生额外量值。
[0056]
本发明的装置对cnu产生器及cnu更新器单元实施修改以使用pmm函数产生额外量值。经修改单元(标示为pmm

cnu产生器及pmm

cnu更新器)将pmm额外量值集成到cnu方程式中。当解码算法使用pmm额外量值时,将其标示为pmm

vl解码器。
[0057]
在本发明的优选实施例中,cns被限制为仅由最小量值及其对应的索引组成的最小配置,且pmm函数经设计以预测第二最小量值的值。cnu产生器及cnu更新器经设计以利用所预测第二最小量值来进行其处理。
[0058]
在本发明的另一优选实施例中,cns含有两个最小量值及其对应的索引,且pmm函数经设计以预测第三最小量值的值。cnu产生器及cnu更新器经设计以利用所预测第三最小量值来进行其处理。
[0059]
另外,在一些实施例中,本发明的方法使用多个pmm函数以便改进解码性能。基于块列索引的值或基于迭代次数,可在解码过程期间的任何时间在不同pmm函数之间进行切换。替代地,可在满足某种约束时在不同pmm函数进行切换。此约束可涉及例如将未满足的校正子位的数目计数且将此数目与阈值进行比较。
[0060]
在详细说明中将看到,高效地实现了上述目标,并且由于可在执行所提出的方法时做出一些改变而不背离本发明的精神及范围,因此意图说明中包含并在附图中展示的所有事物应解释为说明性而非限制性意义。
附图说明
[0061]
为了更完整地理解本发明,请参考以下说明及附图,其中:
[0062]
图1展示pmm

vl解码器的顶级架构,其展示所提出的pmm

cnu模块。作为本发明的一部分,使用预测性量值映射的两个单元是pmm

cnu产生器及pmm

cnu更新器;
[0063]
图2展示在仅具有ω=1量值对的校验节点状态的情形中pmm

cnu产生器单元的架构的优选实施例;
[0064]
图3展示在具有ω个量值对的校验节点状态的一般情形中pmm

cnu更新器单元的架构的优选实施例;
[0065]
图4展示用于基于迭代次数及/或块列索引的动态pmm切换的将在pmm

cnu产生器及pmm

cnu更新器中使用的多pmm单元的架构的优选实施例;
[0066]
图5展示用于基于校正子权重的动态pmm切换的多pmm

vl解码器的顶级架构,其展示所提出的多pmm

cnu模块;及
[0067]
图6展示用于基于校正子权重的动态pmm切换的将在pmm

cnu产生器及pmm

cnu更新器中使用的多pmm单元的架构的优选实施例。
具体实施方式
[0068]
本发明的方法涉及对qc

ldpc码进行运算的迭代消息传递ldpc解码器,qc

ldpc码的奇偶校验矩阵由大小为l
×
l的循环置换矩阵(cpm)组成。奇偶校验矩阵经配置以具有n
b
块列及m
b
块行。第j块列含有d
v
(j)个cpm,且第i块行含有d
c
(i)个cpm。在其余的说明中,将在这些标示中删除索引i及j。无论如何,本发明的所有实施例适用于规则及不规则ldpc码两者。
[0069]
本发明的消息传递解码器遵循vl调度,在vnu模块与cnu模块之间交换消息。从vnu模块传递到cnu模块的消息命名为变量到校验消息,标示为且从cnu模块传递到vnu模块的消息命名为校验到变量消息,标示为消息及关联到ldpc码的特纳图中连接vn v
n
与cn c
m
的边缘。在本发明的优选实施例中,使用固定(通常为少的)数目个精度位(标示为n
s
)表示消息。消息属于有限字母表如背景中所描述。
[0070]
在本发明的方法的各种优选实施例中,vl解码器在解码迭代期间以任意次序处理qc

ldpc码的n
b
个块列。在不损失一般性的情况下假设,从索引j=1到索引j=n
b
按顺序处理块列。在解码迭代期间,当前块列将被标示为经处理块列。此外,每一块列由l个变量节点组成。当解码器运算经处理块列内的vn v
n
的vnu时,v
n
将被标示为经处理vn。最后,当解码器运算连接到经处理vn的校验节点c
m
的cnu时,c
m
将被标示为经处理cn。
[0071]
在所述方法的其它优选实施例中,vl解码器执行多个块列的处理,所述块列中的每一者由l个变量节点组成。尽管出于论述的目的,在假设处理单个经处理块列的情况下描述所述方法,但所属领域的技术人员可容易地将所述方法一般化到多个经处理块列。
[0072]
如背景中所描述,vl解码器需要使用存储于cnm中的数个最小量值(标示为mag
k
)及其对应的块列索引(标示为iudex
k
)。
[0073]
在本发明中,提出简化cnu处理(cnu步骤a及cnu步骤b)且减小cnm的大小,目标是减少vl解码器实施方案的资源使用且最小化其计算复杂度。所提出的方法实施cnu的最接近近似,其将使用具有m ag(ω 1)的cns,但仅使用具有m ag(ω)的cns中可用的值。
[0074]
为了描述所述方法,首先假设cns由ω个量值对组成:
[0075]
为解码器中的cnu模块配备将cns的ω个量值映射成额外量值的函数χ
ω

[0076][0077]
将遍及说明将此函数称为预测性量值映射(pmm)。pmm可为从到的任何线性或非线性映射函数。
[0078]
尽管以非常一般的方式进行描述,但所提出的方法特别关注ω的小值。在本发明的优选实施例中,针对以下情形定义pmm:
[0079]
·
[0080]
在此最小配置中,cnm针对每一校验节点存储仅由三个值组成的cns:(i)校正子位s
m
的值,(ii)传入的变量到校验消息的最小量值mag1,及(iii)对应于最小量值的边缘索引index1。在此优选实施例中,旨在使解码性能接近于使用cns
(2)
(c
m
)的解码器,但仅使用来自cns
(1)
(c
m
)的值。此实施例的示范性、非限制性pmm函数由以下公式给出:
[0081][0082]
其中s是消息字母表中的最大量值。
[0083]
·
[0084]
在此第二优选实施例,所考虑的cns是cns
(2)
(c
m
)={s
m
;(mag1,index1),(mag2,
index2)},且的值是从两个最小量值预测,以便接近具有cns
(3)
(c
m
)的解码器的性能。注意,在此第二优选实施例,存在大量pmm函数。χ2可为仅mag1、仅mag2或mag1及mag2两者的函数。
[0085]
通过为经排序列表的量值状态的定义,必须使在本发明的优选实施例中,将进一步假设
[0086]
在本发明中提出的vl解码器在cnu处理中使用pmm额外量值,且称为pmm

vl解码器。针对pmm

vl解码器,将在算法2中呈现的cnu的两个步骤替换为具有用于校验到变量消息产生的pmm

cnu步骤a且具有用于cns更新的pmm

cnu步骤b的pmm

cnu。pmm

vl解码器的主要步骤描述于算法3中。
[0087][0088]
在图1中描绘在本发明中提出的pmm

vl解码器的顶级架构的装置。此架构且尤其是pmm

cnu模块,主要是围绕校验节点存储器(cnm)103设计的,所述校验节点存储器存储ldpc码中所有校验节点的校验节点状态cns(c
m
)。每一cns(c
m
)由校正子位s
m
、对应校验节点及含有ω对(mag
k
,iudex
k
)的量值状态m ag(ω)组成。正负号存储器106存储变量到校验消息的正负号sign
m,n
。因此,将vn连接到cn的每一边缘有一个正负号。
[0089]
可参考表3中的pmm

vl解码器的高级说明来使解码步骤与在图1中呈现的架构单元相关。
[0090]
为了易于论述,现在在假设单个经处理块列的处理的情况下描述模块的功能。然而,模块的说明也适用于处理多个经处理块列的较一般情形。
[0091]
初始化器单元102采取信道值101或信道值的任何变换作为输入,且使用其来初始化cnm 103中的cns。其计算所有cn的初始校正子位及量值状态的初始值,其等仅取决于信道值的量值或信道值的变换的量值。替代地,初始量值状态可由初始化器单元设定为固定预定值。在执行初始化之后,cnm含有cns的初始值。初始化器单元还计算变量到校验消息正负号的初始值,其存储于正负号存储器106中。
[0092]
pmm

cnu模块由两个处理单元组成:pmm

cnu产生器105,其实施pmm

cnu步骤a的消息产生;及pmm

cnu更新器104,其实施pmm

cnu步骤b的cns更新。在初始化之后,pmm

cnu模块与vnu模块迭代地交换消息,所述消息流动通过桶式移位器单元107及108。桶式移位器根据qc

ldpc码的循环置换矩阵将消息地址重新排序。
[0093]
针对度数为d
v
的经处理块列,解码器针对块列中的每一经处理vn v
n
如下进行。针对连接到v
n
的每一经处理cn,pmm

cnu产生器105从cnm读取cns且从正负号存储器106读取消息正负号,计算pmm额外量值,且产生将用作到vnu模块的输入的校验到变量消息针对每一经处理vn,需要产生d
v
个校验到变量消息。在处理经处理块列中的所有vn之后,接着由桶式移位器单元108根据经处理块列的d
v
个cpm将消息循环地移位。
[0094]
针对经处理块列中的每一经处理vn,vnu模块109接收d
v
个校验到变量消息及对应于经处理vn的信道值。vnu模块根据方程式(5)使用变量节点更新函数φ
v
计算d
v
个变量到校验消息一旦已处理了经处理块列中的所有vn,便由桶式移位器单元107将消息循环地移位且发送到pmm

cnu更新器104。
[0095]
针对每一经处理cn,pmm

cnu更新器采取来自107的对应变量到校验消息、其来自103的相关联cns及来自106的对应正负号作为输入。注意,来自正负号存储器的正负号sign
m,n
是对应变量到校验消息的正负号,但来自先前解码迭代。接着,pmm

cnu更新器计算pmm额外量值,更新经处理cn的写入cnm 103中的新cns,且提取消息的写入正负号存储器106中的新正负号。
[0096]
重复先前描述的消息及cns的计算及更新直到遍历整个奇偶校验矩阵,然后构成一个解码迭代,且然后解码过程从第一块列再次重新开始以开始下一解码迭代。
[0097]
vnu模块还计算经处理块列中的所有vn的在(8)之后的app且计算硬决策估计值将硬决策估计值发送到验证单元110以检查解码器是否已收敛到码字。验证单元利用从vnu模块接收的的最新值计算ldpc码的校正子,且遵循方程式(10),无论何时校正子为零时停止解码,这意味着硬决策估计值111形成有效码字。app的计算及校正子的验证两者可在解码过程期间的任何时间、在块列的处理结束时执行。
[0098]
cnu产生器使用cnm及正负号存储器计算到vnu模块的传入消息。使用pmm函数的cnu产生器称为pmm

cnu产生器且实施算法3的pmm

cnu步骤a。
[0099]
依据算法1中的说明,可看到cnu产生器仅需要来自m ag(ω)的以下值:(mag1,iudex1,mag2)。因此,此模块不需要太多修改来合并使用pmm函数。当在pmm

cnu产生器中使用具有ω≥2的m ag(ω)时,不需要改变算法。当在pmm

cnu产生器中使用具有ω=1的m ag(ω)时,则依据pmm函数χ1计算且将其用于pmm

cnu步骤a中,如表1中所描述。
[0100][0101]
在图2中,展示在ω=1的情形中实施pmm

cnu产生器的装置的架构,pmm

cnu产生器计算到vnu模块的传入校验到变量消息。
[0102]
针对连接到经处理块列index*=j 203中的经处理vn v
n
的d
v
个经处理cn c
m
中的每一者,从cnm读取对应cns 201,且从正负号存储器读取对应正负号202。由于ω=1,因此cns仅由校正子位s
m
及单一对m ag(1)=(mag1,index1)组成。在单元204中在校正子位与消息正负号sign
m,n
之间执行xor运算以计算临时外赋正负号pmm单元205使用函数χ1从m ag(1)计算的经预测值。消息产生单元206实施表1的步骤pmm

cnu步骤a

(c)。在单元206的输出处,获得用作到vnu的输入的校验到变量消息
[0103]
在ω≥2的情形中,绕过pmm单元205且消息产生单元206仅采取cns值、临时外赋正负号及经处理块列索引作为输入。
[0104]
在cnu产生器的输出处且针对经处理块列中的每一经处理vn,将d
v
个校验到变量消息发送到vnu模块以计算将用作到cnu更新器的输入的变量到校验消息
[0105]
在本发明的优选实施例中,将vnu更新函数定义为低精度函数φ
υ
,其对应于背景中所描述的faid算法。vnu更新函数φ
υ
的许多实施例在本发明的范围内,其中φ
υ
可定义为闭式函数、查找表、任意映射、一组方程式或任何其它适用的有限精度更新函数。消息是以n
s
位的精度表示,且vnu更新函数将称为n
s
位faid更新函数,其可无差别地适用于硬输出信道或任何n
q
位软输入信道。
[0106]
在本发明的其它优选实施例中,vnu模块可使用多个vnu更新函数来计算变量到校验消息,以便改进解码器的错误校正性能。举例来说,不同vnu更新函数可用于不同块列处理。
[0107]
针对由d
v
个循环行列式组成的经处理块列中的每一经处理vn v
n
,cnu更新器计算连接到v
n
的d
v
个经处理cn的cns的新值。使用pmm函数的cnu更新器称为pmm

cnu更新器且实施算法3的pmm

cnu步骤b。
[0108]
表2中所描述的pmm

cnu更新器不同于步骤(f)及(i)中的经典vl解码器的cnu更新器。依据存储于cns的m ag(ω)中的量值,pmm函数χ
ω
计算额外量值其与当前块列索引一起形成额外量值对:除新量值对(mag*,index*)之外,在步骤(i)中
在截断之前的经排序列表中还考虑pmm额外对。
[0109][0110]
在图3中,展示用于ω个量值状态的一般情形的实施pmm

cnu更新器的装置的架构,pmm

cnu更新器更新存储于cnm中的cns。
[0111]
针对给定经处理块列index*=j 304中的经处理vn v
n
且针对连接到v
n
的每一经处理cn c
m
,pmm

cnu更新器采取已由vnu模块产生的新变量到校验消息301、来自先前迭代的对应正负号sign
m,n 303及c
m 302的旧cns作为输入。cns由校正子位s
m
及量值状态m ag(ω)中的ω对(mag
k
,index
k
)组成。
[0112]
提取新变量到校验消息301的正负号及量值,即,且且值sign*对应于待存储于正负号存储器101中的新正负号310。经更新校正子位是使用3输入xor单元306获得,3输入xor单元306执行旧校正子位s
m
与旧正负号sign
m,n
及与新输入消息的正负号sign*的xor运算。
[0113]
pmm单元307使用pmm函数χ
ω
从m ag(ω)中的量值计算的值。
[0114]
针对每一经处理cn,量值状态更新器单元308计算经更新量值状态m ag
new
(ω)。其接收输入消息的量值mag*、旧量值状态m ag(ω)、pmm额外量值及经处理块列的索引index*=j作为输入。
[0115]
量值状态更新器如下进行。首先,所述单元检查当前索引index*是否存在于旧量值状态m ag(ω)中,且移除对应对(mag
k
,index
k
)。如果index*未出现在m ag(ω)中,那么不移除对。然后,将当前块列索引关联到pmm额外量值以形成pmm对将pmm对及新产生的对(mag*index*)插入经排序列表中以计算新量值状态,m ag
new
(ω)。在此处理阶段处,量值状态的大小是ω=ω 1或ω=ω 2,这取决于是否已从旧量值状态移除对(mag
k
,iudex
k
)。将经排序量值状态m ag
new
(ω)截断到最小ω个量值,以便形成经更新量值状态m ag
new
(ω)。
[0116]
最后,将经更新校正子位及经更新量值状态组合到新校验节点状态309中,新校验节点状态309被发送且写入到cnm。
[0117]
针对ω=1的优选实施例,量值状态更新器308根据以下规则计算新量值状态:
[0118]
如果
[0119]
如果
[0120]
如果
[0121]
如果
[0122]
针对ω=2的优选实施例,量值状态更新器308根据以下规则计算新量值状态:
[0123]
如果
[0124][0125]
如果
[0126][0127]
如果
[0128][0129]
如果
[0130][0131]
如果
[0132][0133]
如果
[0134][0135]
如果
[0136][0137]
如果
[0138][0139]
如果
[0140][0141]
作为本发明的一部分,pmm

vl解码器还可使用多个pmm函数以便改进错误校正性能。出于论述的目的,假设针对大小为ω的量值状态,在集中存在可用于使用的d个pmm函数。
[0142]
所提出的方法基于使用的pmm

vl解码器及使用的pmm

vl解码器(其中k≠
k

)可具有不同迭代解码动态且因此产生不同解码结果的事实。举例来说,一些pmm函数可能更有效地校正ldpc码的错误率性能的所谓的瀑布区域中的错误,而其它pmm函数可能在ldpc码的错误率性能的错误底值区域中更高效。
[0143]
提出使用由多个不同pmm函数带来的多样的解码器动态来改进ppm

vl解码器的总体错误校正性能。此解码器将称为多pmm

vl解码器。在解码期间不同pmm函数之间有数个切换方式。作为实例,呈现所述方法的在多pmm

vl解码器中的解码期间在不同pmm函数之间切换的三个优选实施例。然而,在多pmm

vl解码器中组合多个pmm函数的结果的任何其它策略均归属于本发明的范围内。
[0144]
静态切换:将静态切换称为当多pmm

vl解码器按顺序使用不同pmm函数且每当解码器切换到新pmm函数时利用信道值重新初始化解码时的情形。
[0145]
在此优选实施例中,多pmm

vl使用开始pmm

vl的解码达最多次迭代。如果解码器未收敛到有效码字,那么以相同输入但使用下一pmm函数重新开始pmm

vl的解码达最多次迭代。当重新启动解码器时,信道值101被用作输入,经过初始化器单元102,因此以解码开始时的相同值初始化cnm 103及正负号存储器106。重复此所过程直到解码成功或已耗尽所有d个pmm函数。
[0146]
基于块列索引及/或迭代次数的动态切换:将动态切换称为当多pmm

vl解码器可在解码期间且在每一块列处理时根据某种约束或解码器参数的特定值动态地选择d个可用函数当中的特定pmm函数时的情形。在动态切换中,解码器不通过新初始化而重新开始,且仅在修改pmm函数的情况下继续进行解码。
[0147]
在此第二优选实施例中,多pmm

vl基于迭代次数及/或块列的索引在不同pmm函数之间切换。在此实施例中,需要选择迭代次数及块列索引的d个预定值的列表。迭代次数标示为{it
(1)

,it
(d)
},其中it
(k)
≤it
(k 1)
,且块列索引标示为{iudex
(1)
,

,index
(d)
}。每一对值(it
(k)
,index
(k)
)与特定pmm函数pmm(k)相关联。在图4中描述实施多pmm选择单元的装置的架构。此图中所描述的多pmm单元替代pmm

cnu产生器中的pmm单元205及pmm

cnu更新器中的pmm单元307。在此多pmm单元中,m ag(ω)中的量值被输入401中且用于使用可用pmm函数中的一者产生pmm额外量值406。在解码期间,当it
*
=it
(k)
且index*=index
(k)
时,然后多路复用器405选择pmm
k 404来产生pmm额外量值。
[0148]
在一般情形中,允许pmm函数的数目d不同于切换的数目d。举例来说,如果d>d,那么可在解码过程期间多次选择相同pmm函数。
[0149]
基于校正子权重的动态切换。在此第三优选实施例中,多pmm

vl基于校正子权重的值在不同pmm函数之间切换,所述值等于存储于cns中的所有校正子位的和,即,的值在不同pmm函数之间切换,所述值等于存储于cns中的所有校正子位的和,即,在图5中展示多pmm

vl解码器的此实施例的架构。所述解码器配备有校正子权重计算单元512,校正子权重计算单元512使用由验证单元510产生的校正子位作为输入。将校正子权重的值发送到多pmm

cnu模块504及505。
[0150]
pmm

cnu产生器中的pmm单元205及pmm

cnu更新器中的pmm单元307由图6中所描述的多pmm单元替代。作为实例,描述d=2个pmm函数的非限制性情形,且到大量pmm函数的一般化可容易地进行。解码以第一pmm函数603开始,且在每一块列处理处监测602中的校正子权重s
w
。通过在单元606中将校正子权重与固定预定阈值δ进行比较而做出在两个pmm函数
603与604之间切换的决策。当满足约束s
w
≥δ时,选择pmm1,且当满足约束s
w
<δ时,则选择pmm2。到d>2个pmm函数的一般化需要使用d-1个预定阈值{δ
(d)
,


(d

1)
}。
[0151]
多pmm

vl解码器的其它可能实施例包含(i)使用迭代及块列索引连同校正子权重的组合来做出切换到不同pmm函数的决策,或(ii)使用不同于s
w
的度量来在不同pmm函数之间切换,包含组合校正子位与存储于cns中的量值的值的度量。
[0152]
在多pmm

vl解码器的其它优选实施例中,还考虑使用多个vnu更新函数其可在不损失一般性的情况下定义为有限精度faid更新函数。在这些实施例中,集中的每一pmm函数关联到vnu更新函数以形成函数对无论何时多pmm

vl解码器根据先前所描述的切换策略中的一者切换到不同pmm函数时,在多pmm

cnu模块中使用新pmm函数而在vnu模块509中使用相关联新vnu更新函数。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献