使用迭代译码纠错的技术转让专利

申请号 : CN200810088434.6

文献号 : CN101276627B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李宗旺李元兴理查德·L·加尔布雷思伊凡娜·朱德杰维克特拉维斯·R·奥宁

申请人 : 日立环球储存科技荷兰有限公司

摘要 :

提供用于对数据存储设备上记录的数据进行迭代译码的技术。迭代译码器使用多译码迭代译码数据以纠错。在迭代译码器的多重迭代中,后处理模块产生软信息,而译码器将最小和译码算法应用于低密度奇偶校验检查(LDPC)码,以基于软信息和更新的软信息产生非本征信息。

权利要求 :

1.一种包括用于在数据存储介质上记录的数据中纠错的迭代译码器的数据存储设备,其中在所述迭代译码器的多重迭代中:后处理模块产生用于数据的软信息;和

最小和译码器接收后处理模块所产生的软信息,将最小和译码算法应用于低密度奇偶校验检查码以使用该软信息产生更新的软信息,并且计算更新的软信息与该软信息之间的差来产生非本征信息,其中,在所述迭代译码器的第二重迭代中:

乘法器将来自所述迭代译码器的第一重迭代的非本征信息乘以缩放因数以产生经缩放的非本征信息;和在第二重迭代中的所述后处理模块包括后处理器和加法器,其中该加法器将所述后处理器的输出流加到经缩放的非本征信息以产生软信息。

2.根据权利要求1的数据存储设备,其中,在所述迭代译码器的第一重迭代中,第一检测器对数据执行匹配的Viterbi算法,而且该第一检测器的输出流被传送到该第一重迭代中的所述后处理模块。

3.根据权利要求2的数据存储设备,其中,在所述迭代译码器的第二重迭代中,第二检测器对数据执行匹配的Viterbi算法,而且该第二检测器的输出流被传送到该第二重迭代中的所述后处理模块。

4.根据权利要求1的数据存储设备,其中,硬判决译码器使用来自所述多重迭代中的每一重迭代的后处理模块的软信息译码数据。

5.根据权利要求4的数据存储设备,其中,如果所述最小和译码器所产生的早停参数小于阈值,则所述迭代译码器不执行附加的迭代。

6.根据权利要求2的数据存储设备,其中,在所述迭代译码器的第一重迭代中,目标滤波器对第一检测器的输出流滤波;

加法器将目标滤波器的输出流加到所述迭代译码器的输入流中的经均衡的样本;和长匹配滤波器对所述加法器的输出流滤波,其中将所述长匹配滤波器的输出流传送到第一重迭代中的后处理模块。

7.根据权利要求1的数据存储设备,还包括:

Reed-Solomon译码器,其译码从所述迭代译码器接收到的数据。

8.根据权利要求1的数据存储设备,其中,该数据存储设备是硬盘驱动器。

9.根据权利要求1的数据存储设备,其中,如果不满足停止条件,则所述迭代译码器执行至少三重迭代。

10.一种用于使用迭代译码器在数据存储设备中的数据中纠错的方法,其中在所述迭代译码器的多重迭代中,该方法包括:使用后处理模块产生关于数据的软信息;

使用最小和译码器来基于软信息产生更新的软信息,其中最小和译码器接收后处理模块所产生的软信息并将最小和译码算法应用于低密度奇偶校验检查码;以及使用最小和译码器来计算更新的软信息与该软信息之间的差以产生非本征信息,其中在所述迭代译码器的第二重迭代中,该方法还包括:使用第二目标滤波器对第一重迭代的输出流滤波;

使用第二加法器将第二目标滤波器的输出流加到表示数据的经均衡的样本;

使用第二长匹配滤波器对该第二加法器的输出流滤波;

使用乘法器将所述第一重迭代中的最小和译码器所产生的非本征信息乘以缩放因数以产生经缩放的非本征信息;

使用第三加法器将经缩放的非本征信息与第二长匹配滤波器的输出流相加;和将第三加法器的输出流传送到第二重迭代中的后处理模块,其中,在第二重迭代中的该后处理模块包括后处理器和第四加法器,该第四加法器将该后处理器的输出流加到经缩放的非本征信息以产生软信息。

11.根据权利要求10的方法,其中在该迭代译码器的第一重迭代中,该方法还包括:使用第一检测器对数据执行匹配的Viterbi算法,其中,将该第一检测器的输出流传送到该第一重迭代中的后处理模块。

12.根据权利要求11的方法,其中在所述第一重迭代中,该方法还包括:使用第一目标滤波器对该第一检测器的输出流进行滤波;和

使用第一加法器将该第一目标滤波器的输出流加到表示数据的经均衡的样本。

13.根据权利要求12的方法,其中在所述第一重迭代中,该方法还包括:使用第一长匹配滤波器对该第一加法器的输出流进行滤波;和

将该第一长匹配滤波器的输出流传送到所述第一重迭代的后处理模块。

14.根据权利要求10的方法,其中,在所述迭代译码器的至少一个迭代中,该方法还包括:使用来自该至少一个迭代中的每一个后处理模块的软信息执行硬判决译码。

15.根据权利要求10的方法,其中,如果不满足停止条件,则该迭代译码器执行至少三重迭代。

16.根据权利要求10的方法,其中,在所述迭代译码器的迭代中,该方法还包括:对所述最小和译码器产生的非本征信息执行硬判决译码,以产生在该迭代译码器的后续迭代中被传送到该后续迭代中的后处理模块的码元。

17.一种包括用于在硬盘上记录的数据中纠错的迭代译码器的硬盘驱动器,其中该迭代译码器包括:第一后处理模块,其在该迭代译码器的第一重迭代中产生用于数据的第一软信息;

第一译码器,其接收由第一后处理模块产生的第一软信息,将最小和译码算法应用于低密度奇偶校验检查码以使用该第一软信息产生更新的第一软信息,并且计算该更新的第一软信息和该第一软信息之间的差来产生第一非本征信息;

乘法器,其将来自所述第一译码器的第一非本征信息乘以缩放因数以产生经缩放的第一非本征信息;

第二后处理模块,其响应于该第一重迭代的输出流以及该乘法器产生的经缩放的第一非本征信息,在该迭代译码器的第二重迭代中产生用于数据的第二软信息;

加法器,其接收由第二后处理模块产生的第二软信息并将其加到经缩放的第一非本征信息;和第二译码器,其将最小和译码算法应用于低密度奇偶校验检查码以使用加法器的输出流产生更新的第二软信息,并且计算该更新的第二软信息和第二软信息之间的差来产生第二非本征信息。

18.根据权利要求17的硬盘驱动器,其中,所述迭代译码器进一步包括对数据执行匹配的Viterbi算法的第一检测器,而且将该第一检测器的输出流传送到第一后处理模块的输入端。

19.根据权利要求17的硬盘驱动器,其中,所述迭代译码器还包括使用所述第一软信息执行硬判决译码的硬判决译码器,而且将由该硬判决译码器产生的经译码的输出流传送到所述第二后处理模块的输入端。

20.根据权利要求17的硬盘驱动器,其中,所述迭代译码器还包括使用所述第一非本征信息执行硬判决译码的硬判决译码器,而且将该硬判决译码器产生的码元传送到所述第二后处理模块的输入端。

21.根据权利要求19的硬盘驱动器,其中如果由所述第一译码器产生的早停参数小于阈值,则所述迭代译码器停止执行迭代,而只有该早停参数大于或者等于阈值的情况下,才将所述硬判决译码器的经译码的输出流传送到所述第二后处理模块。

说明书 :

使用迭代译码纠错的技术

技术领域

[0001] 本发明涉及用于纠错的技术,更具体地说,涉及在诸如硬盘驱动器之类的数据存储设备中使用迭代译码(iterative decoding)纠错的技术。

背景技术

[0002] 在数据记录设备中使用纠错码来确保数据可靠性并且减小信道噪声的不利影响。奇偶检验码是纠错码的示例。通常使用奇偶检验码来纠正通过通信信道传送的或者在数字存储介质上存储的数据中发生的错误。例如,通常使用奇偶校验检查码来纠正在磁硬盘上存储的数据中的错误。
[0003] 可以使用硬判决译码器或者软判决译码器来执行纠错译码。硬判决译码通常基于这样的假设,即码字中的所有位相等地发生错误。硬判决译码一般不考虑某些位比其他位更加可靠。然而,一些硬判决译码码(hard decision decodingcode)对记录的位提供不相等保护。
[0004] 软判决译码接收输入模拟数据(例如,经均衡的读回(read-back)信号或者位可靠性信息)并且优选地将不可靠的位翻转(flip)。在软判决译码中,对数似然比(log-likelihood ratio)是由位为‘1’的似然性除以位为‘0’的似然性的量度。较大的LLR的绝对值指示更加可靠的位。软判决译码器使用用于每个位的LLR来评估位可能有错误的概率。软判决译码比硬判决译码更加优越,这是因为其能够利用一些位比其他位更加可靠的事实。
[0005] 低密度奇偶检验检查(LDPC)码是线性纠错码,其具有在每行和列中带有少量非零元素的奇偶检验检查矩阵H。可以使用软判决译码来译码LDPC码字。可以将LDPC码定义在任何有限域上。例如,可以将LDPC码定义在Galois域GF(2)上,其中仅仅“1”是非零元素。LDPC码的行(或列)权重(或者度)指的是在奇偶检验检查矩阵的行(或者列)的数之间具有非零值的元素的数量。
[0006] 在标准编码过程中,使用从LDPC码的奇偶检验检查矩阵中得出的发生器矩阵来编码信息位的块。在软判决译码中,被提供给每个位的错误保护强度依赖于被用于译码码字的奇偶检验检查矩阵中的对应列的权重。与带有较低权重的列对应的位被提供较少错误保护。
[0007] 某些类型的错误检测方案是迭代的。迭代错误检测方案的一个问题是它们趋于导致错误传播并且当被用于磁硬盘驱动器中时具有不可接受的错误下限(floor)。而且,在磁硬盘驱动器中所使用的许多迭代错误检测方案具有高复杂度。
[0008] 因此,最好提供导致较少错误传播并且不具有高复杂度的用于纠错的迭代技术。还最好提供经由可控错误下限的用于纠错的迭代技术。
[0009] 发明内容
[0010] 本发明提供用于对数据存储设备上记录的数据迭代译码的技术。迭代译码器使用多重译码迭代来译码数据以进行纠错。在迭代译码器的多重迭代中,后处理模块产生软信息,而译码器基于软信息和更新的软信息将最小和译码算法应用于低密度奇偶检验检查(LDPC)码以产生非本征信息。
[0011] 根据本发明的一个方面,提供包括用于在数据存储介质上记录的数据中纠错的迭代译码器的数据存储设备,其中在所述迭代译码器的多重迭代中:后处理模块产生用于数据的软信息;和最小和译码器接收后处理模块所产生的软信息,将最小和译码算法应用于低密度奇偶校验检查码以使用该软信息产生更新的软信息,并且计算更新的软信息与该软信息之间的差来产生非本征信息。
[0012] 根据本发明的另一方面,提供用于使用迭代译码器在数据存储设备中的数据中纠错的方法,其中在所述迭代译码器的多重迭代中,该方法包括:使用后处理模块产生关于数据的软信息;和使用最小和译码器来基于软信息产生更新的软信息,其中最小和译码器接收后处理模块所产生的软信息并将最小和译码算法应用于低密度奇偶校验检查码;以及使用最小和译码器来计算更新的软信息与该软信息之间的差以产生非本征信息。
[0013] 根据本发明的再一方面,提供包括用于在硬盘上记录的数据中纠错的迭代译码器的硬盘驱动器,其中该迭代译码器包括:第一后处理模块,其在该迭代译码器的第一重迭代中产生用于数据的第一软信息;第一译码器,其接收由第一后处理模块产生的第一软信息,将最小和译码算法应用于低密度奇偶校验检查码,以使用该第一软信息产生更新的第一软信息,并且计算该更新的第一软信息和该第一软信息之间的差来产生第一非本征信息;第二后处理模块,其响 应于该第一重迭代的输出流在该迭代译码器的第二重迭代中产生用于数据的第二软信息;和第二译码器,其接收由第二后处理模块产生的第二软信息,将最小和译码算法应用于低密度奇偶校验检查码,以使用该第二软信息产生更新的第二软信息,并且计算该更新的第二软信息和第二软信息之间的差来产生第二非本征信息。
[0014] 当考虑下面详细描述和附图时,本发明的其他目的、特征和优点将变得明显。
[0015] 附图说明
[0016] 图1示出了根据本发明实施方式的纠错和调制编码方案;
[0017] 图2示出了根据本发明实施方式的迭代纠错译码器的第一个例子;
[0018] 图3示出了根据本发明的另一个实施方式的迭代纠错译码器的第二个例子;
[0019] 图4示出了根据本发明的另一个实施方式的迭代纠错译码器的第三个例子;
[0020] 图5示出了根据本发明的另一个实施方式的迭代纠错译码器的第四个例子;
[0021] 图6示出了根据本发明的再一个实施方式的迭代纠错译码器的第五个例子;和[0022] 图7示出了根据本发明的又一个实施方式的迭代纠错译码器的第六个例子。
[0023] 具体实施方式
[0024] 图1示出了根据本发明的实施方式的纠错和调制编码方案。起初,由调制编码器101使用调制编码技术来编码输入数据。将调制编码器101的输出流提供给Reed-Solomon(RS)编码器102。RS编码器102产生提供纠错能力的RS检查字节。
[0025] 将RS编码器102的输出流提供给低列权重低密度奇偶检验检查(LDPC)码编码器103。LDPC码编码器103产生将附加等级的纠错提供给数据流的LDPC码检查字节。磁硬盘驱动器可以使用任何适当的磁数据记录技术将编码器103的经编码的输出数据记录在磁硬盘上。
[0026] 根据本发明的一些实施方式,纠错译码器执行多(N)重译码迭代。迭代译码器使用软判决后处理器(soft decision post processor)和最小和LDPC码译码器执行多重译码迭代。现在描述本发明的各种具体译码例子以进一步说明本发明的原理。
[0027] 图2示出了根据本发明的实施方式的迭代纠错译码器的第一个例子。图2的纠错译码器和本发明的其他译码器可以被用在硬盘驱动器或者其他类型的存储设备中。根据本发明的一些实施方式,迭代译码器导致较少的错误传播,提供更加可控的错误下限,并且更加不复杂。
[0028] 起初,输入均衡器(未示出)接收从诸如磁硬盘之类的数据存储介质读出 的数据的输入流。均衡器产生表示数据的经均衡的样本的流。经均衡的样本被传送到译码器中的MF 202、加法器208、加法器222、加法器244和其他加法器的输入端。这里所述的模块MF202和其他MF模块是长匹配白噪声滤波器(long matched noise whiten filter)。模块MF 202允许错误信号通过较长白噪声滤波器以进一步限制码元间干扰(ISI)残留噪声和其他噪声。
[0029] 图2的译码器对经均衡的样本执行N重译码迭代。N可以是大于1的任何适当的正整数。作为例子,在图2中示出迭代1、2、3和N。迭代1包括匹配的Viterbi检测器204、目标滤波器模块206、加法器208、LMF 210、软后处理器212和软输入软输出译码器(最小和译码器)214。迭代2包括加法器217、匹配的Viterbi模块218、目标滤波器模块220、加法器222、LMF 224、加法器226、软后处理器228、加法器229和最小和译码器230。迭代3包括加法器239、匹配的Viterbi模块240、目标滤波器模块242、加法器244、LMF 246、加法器250、后处理器252、加法器253和最小和译码器254。
[0030] 在译码器的第一重迭代(迭代1)中,由匹配的Viterbi检测器204中的匹配的Viterbi算法来处理MF 202的输出流。匹配的Viterbi检测器204产生被传送到目标滤波器模块206和软后处理器212的输入端的输出流。目标滤波器模块206从匹配的Viterbi检测器204的输出流中恢复理想的经均衡的样本。
[0031] 加法器208从译码器的输入流中的对应的经均衡的样本中减去由目标滤波器模块206产生的理想的经均衡的样本。在被加法器208使用之前,将来自译码器的输入流的经均衡的样本延迟模块202、204和206的延迟。通常,在被图2和下面描述的其他实施方式中的当前模块(例如,积分器222和244)使用之前,将译码器的输入流中的经均衡的样本延迟之前模块的延迟。将加法器208的输出流传送到长匹配滤波器(LMF)210的输入端。LMF 210产生带有被传送到软后处理器212的白噪声的输出流。
[0032] 软后处理器212从匹配的Viterbi检测器204和LMF 210接收输出流。软后处理器212产生包括最可能检测到的位流和与每个检测到的位对应的可靠性度量值的软信息。将软后处理器212所产生的软信息传送到最小和译码器214的输入端。
[0033] 最小和译码器214将最小和译码算法应用于低密度奇偶检验检查(LDPC)码,以使用由软后处理器212产生的软信息产生更加可靠的更新的软信息。然后,最小和译码器214计算更新的软信息和由软后处理器212产生的软信息之 间的差以产生非本征信息(extrinsic information)。来自最小和译码器214(和来自这里所述的其他最小和译码器)的非本征信息是更新的软信息和软后处理器212产生的软信息之间的差。
[0034] 在软判决译码中,执行多重译码本地迭代以试图使得接收到的字收敛为更加可靠的字(即,码字或者带有靠近码字的海明(Hamming)距离的字)。在图2中的译码器中所使用的最小和译码器具有低级别的复杂度,这是因为它们使用具有低权重的LDPC码,并且因为它们使用少量(例如,1或者2个)本地迭代。而且,图2的最小和译码器导致更少的错误传播并且具有更可控的错误下限,这是因为它们使用低权重LDPC和较少的本地迭代。
[0035] 将最小和译码器214的输出流传送到乘法器216。乘法器216将最小和译码器214的输出流中的非本征信息乘以缩放因数alpha。将乘法器216的输出流传送到加法器217、226和229的输入端,开始译码器的第二重迭代。
[0036] 加法器217从MF 202的输入流中的匹配的经均衡的样本中减去乘法器216的输出流中的经缩放的非本征信息。在被输入到加法器217之前,将MF 202的匹配的经均衡的样本的输出流延迟迭代1的延迟。通常,在图2的实施方式和下面描述的图6的实施方式中,在被当前迭代使用之前,将MF模块的匹配的经均衡的样本的输出流延迟之前迭代的延迟。然后检测器218对加法器217的输出流执行匹配的Viterbi算法。匹配的Viterbi模块218产生被传送到目标滤波器模块220和软后处理器228的输入端的输出流。
[0037] 加法器222从对应的原始经均衡的样本中减去由目标滤波器模块220产生的所恢复的经均衡的样本。将加法器222的输出流传送到LMF 224的输入。加法器226将乘法器216的输出流中的经缩放的非本征信息添加到LMF 224的输出流中。
[0038] 软后处理器228从匹配的Viterbi检测器218和加法器226接收输出流。软后处理器228产生包括最可能检测到的位流和与每个检测到的位对应的可靠性度量值的软信息。将由软后处理器228产生的软信息传送到数据加法器229。加法器229从软后处理器228的输出流中的软信息中减去乘法器216的输出流中的经缩放的非本征信息。
[0039] 最小和译码器230应用最小和低密度奇偶检验检查(LDPC)码,以使用来自加法器229的软信息产生更加可靠的更新的软信息。然后,最小和译码器230计算更新的软信息和来自加法器229的软信息之间的差以产生非本征信息。将 最小和译码器230的输出流传送到乘法器232的输入端。乘法器232将最小和译码器230的输出流乘以缩放因数alpha。
[0040] 将乘法器232的输出流传送到加法器239,开始译码器的第三重迭代。加法器239从MF 202的输出流中的错误信号中减去乘法器232的输出流中的经缩放的非本征信息。检测器240对加法器239的输出流执行匹配的Viterbi算法。匹配的Viterbi模块240产生被传送到目标滤波器模块242和软后处理器252的输入端的输出流。
[0041] 加法器244从对应的原始经均衡的样本中减去由目标滤波器模块242产生的所恢复的经均衡的样本。将加法器244的输出流传送到LMF 246的输入端。加法器250将乘法器232的输出流加到LMF 246的输出流。
[0042] 软后处理器252从匹配的Viterbi检测器240和加法器250接收输出流。软后处理器252产生包括最可能检测到的位流以及与每个检测到的位对应的可靠性度量值的软信息。将后处理器252所产生的软信息传送到加法器253。
[0043] 加法器253从软后处理器252的输出流中的软信息中减去乘法器232的输出流中的经缩放的非本征信息。最小和译码器254将最小和译码算法应用于低密度奇偶检验检查(LDPC)码,以使用来自加法器253的软信息产生更加可靠的更新的软信息。最小和译码器254然后计算更新的软信息和来自加法器253的软信息之间的差以产生非本征信息。将最小和译码器254的输出流传送到译码器的下一重迭代中的乘法器的输入端。
[0044] 对于每个附加的迭代都重复关于图2的译码器的迭代2和3的、在上面描述的步骤。然而,译码器的最后迭代N不包括最小和译码器。在迭代N中的最后模块是硬判决模块266。硬判决模块266将来自软后处理器264的软信息转换为码元流。将硬判决模块266的输出流传送到Reed-Solomon(RS)译码器270。RS译码器使用RS译码技术对迭代N的输出流执行RS译码。RS译码器270可以纠正在经均衡的样本中没有被最小和译码器纠正的许多错误。
[0045] 图3示出了根据本发明的另一种实施方式的迭代纠错译码器的第二例子。与之前的实施方式一样,MF模块302从输入均衡器(未示出)接收经均衡的样本。图3的译码器对经均衡的样本执行N重译码迭代。N可以是大于1的任何适当的正整数。作为例子,在图3中示出了迭代1、2、3和N。
[0046] 迭代1包括匹配的Viterbi检测器304、目标滤波器模块306、加法器308、长匹配滤波器(LMF)模块312、软后处理器314和最小和译码器316。迭代2 包括硬判决译码器318、目标滤波器模块320、加法器322、长匹配滤波器(LMF)模块326、乘法器328、加法器
330、软后处理器332、加法器334和最小和译码器336。除了第N重迭代外,每一个后续迭代都执行与迭代2相同的步骤。译码器的第N重迭代不具有第三加法器334或者最小和译码器336。
[0047] MF模块302产生被传送到匹配的Viterbi检测器304的输出流。迭代1以匹配的Viterbi检测器304开始。匹配的Viterbi检测器304使用匹配的Viterbi算法来从MF模块302的输出中产生输出流。图3的译码器仅仅具有使用匹配的Viterbi算法的一个匹配的Viterbi检测器304。
[0048] 将由匹配的Viterbi检测器304产生的输出流传送到目标滤波器模块306和软后处理器314的输入端。目标滤波器模块306产生被传送到加法器308的所恢复的经均衡的样本的输出流。加法器308从译码器的输入流中的对应的原始经均衡的样本中减去目标滤波器模块306的输出流中的所恢复的经均衡的样本以获得错误样本。
[0049] 将加法器308的输出流传送到LMF模块312的输入端。软后处理器314从匹配的Viterbi检测器304和LMF 312接收输出流。软后处理器314产生包括最可能检测到的位流和与每个检测到的位对应的可靠性度量值的软信息。将后处理器314产生的软信息传送到最小和译码器316的输入端和硬判决译码器318的输入端。
[0050] 最小和译码器316将最小和译码算法应用于低密度奇偶检验检查(LDPC)码,以使用由软后处理器314产生的软信息产生更加可靠的更新的软信息。然后,最小和译码器316计算更新的软信息和由软后处理器314产生的软信息之间的差以产生非本征信息。将最小和译码器316的输出流传送到乘法器328的输入端。
[0051] 在图3的译码器中所使用的最小和译码器具有低等级的复杂度,这是因为它们使用具有低权重的LDPC码,而且因为它们使用少量(例如,仅仅1和2重)本地迭代。而且,图3的最小和译码器导致较少的错误传播并且具有更加可控的错误下限,这是因为它们使用低权重LDPC码和较少的本地迭代。
[0052] 在图3译码器的迭代2中,硬判决译码器318使用具有低复杂度的任何适当的硬判决译码方案对后处理器314的输出流执行硬判决。硬判决译码器318产生被传送到目标滤波器模块320和软后处理器332的输入端的经译码的输出流。加法器322从输入流中的原始经均衡的样本中减去目标滤波器模块320的 输出流中的所恢复的经均衡的样本。
[0053] 将加法器322的输出流传送到LMF模块326。乘法器328将最小和译码器316的输出流乘以缩放因数alpha。加法器330将LMF模块326的输出流中的错误样本添加到乘法器328的输出流中的经缩放的非本征信息中。
[0054] 后处理器332从硬判决译码器318和加法器330接收输出流。软后处理器332产生包括最可能检测到的位流和与每个检测到的位对应的可靠性度量值的软信息,将后处理器332产生的软信息传送到加法器334的输入端和硬判决译码器340的输入端。
[0055] 加法器334从后处理器332的输出流中减去乘法器328的输出流中的经缩放的非本征信息。将加法器334的输出流传送到最小和译码器336的输入端。最小和译码器336将最小和译码算法应用于低密度奇偶检验检查(LDPC)码,以使用来自加法器334的软信息产生更加可靠的更新的软信息。最小和译码器336然后计算更新的软信息和来自加法器334的软信息之间的差以产生非本征信息。将译码器模块336的经译码的输出流传送到乘法器342的输入端。
[0056] 译码器的迭代3开始于硬判决译码器模块340。除了最后的迭代N外,图3译码器的每个附加的迭代重复如上所述的迭代2的步骤。最后的迭代N不包括加法器334或者最小和译码器336。替代地,将软后处理器364的输出流传送到硬判决译码模块365以将软信息转换为硬判决码元。RS译码器336使用RS译码算法译码硬判决模块365的输出流。例如,RS译码器366可以纠正没有被最小和译码器纠正的在经均衡的样本中的许多错误。
[0057] 图4示出了根据本发明的另一个实施方式的迭代纠错译码器的第三个例子。与之前的实施方式相同,MF模块402从输入均衡器(未示出)接收经均衡的样本。图4的译码器对经均衡的样本执行N重译码迭代。N可以是大于1的任何适当的正整数。在图4中示出了迭代1、2、3和N。
[0058] 迭代1包括匹配的Viterbi检测器404、目标滤波器模块406、加法器408、长匹配滤波器(LMF)模块412、软后处理器414和最小和译码器416。迭代2包括硬判决译码器420、目标滤波器模块422、加法器424、长匹配滤波器(LMF)模块428、乘法器430、加法器
432、软后处理器434、加法器436和最小和译码器438。除了第N重迭代外,每一个后续迭代都执行与迭代2相同的步骤。译码器的第N重迭代不具有第三加法器436或者最小和译码器438。
[0059] MF模块402产生被传送到匹配的Viterbi检测器404的输出流。图4译码 器的迭代1以匹配的Viterbi检测器404开始。匹配的Viterbi检测器404使用匹配的Viterbi算法来从MF模块402的输出中产生输出流。图4的译码器仅仅具有使用匹配的Viterbi算法的一个匹配的Viterbi检测器404。
[0060] 将匹配的Viterbi检测器404产生的输出流传送到目标滤波器模块406的软后处理器414的输入端。目标滤波器模块406产生被传送到加法器408的所恢复的经均衡的样本的输出流。加法器408从译码器的输入流中的对应的原始经均衡的样本中减去目标滤波器模块406的输出流中的所恢复的经均衡的样本。
[0061] 将加法器408的输出流传送到LMF块412的输入端。后处理器414从匹配的Viterbi检测器404和LMF 412接收到输出流。软后处理器414产生包括最可能检测到的位流和与每个检测到的位对应的可靠性度量值的软信息。将后处理器414产生的软信息传送到最小和译码器416的输入端。
[0062] 最小和译码器416将最小和译码算法应用于低密度奇偶校验检查(LDPC)码,以使用软后处理器414产生的软信息来产生更可靠的更新软信息。然后,最小和译码器416计算更新的软信息和软后处理器414产生的软信息之间的差,以产生非本征信息。在图4的译码器中使用的最小和译码器具有低级别的复杂度,导致更少的错误传播,并且具有更加可控的错误下限,这是因为它们使用具有低权重的LDPC码,而且因为它们使用少量(例如,1或者2重)本地迭代。将最小和译码器416的输出流传输到乘法器430和硬判决译码器
420的输入端。
[0063] 在图4译码器的迭代2中,硬判决译码器420使用具有低复杂度的硬判决译码方案依赖于最小和译码器416的输出流来执行硬判决。硬判决译码器420产生被传送到目标滤波器模块422和软后处理器模块434的输入端的经译码的输出流。加法器424从输入流中的经均衡的样本中减去目标滤波器模块422的输出流。
[0064] 将加法器424的输出流传送到LFM模块428。乘法器430将最小和译码器416的输出流中的非本征信息乘以缩放因数alpha。加法器432将LMF模块428的输出流中的错误样本加到乘法器430的输出流中的经缩放的非本征信息。
[0065] 后处理器434从硬判决译码器420和加法器432接收输出流。软后处理器434产生包括最可能检测到的位流和与每个检测到的位对应的可靠性度量值的软信息。将后处理器434产生的软信息传送到加法器436的输入端。
[0066] 将后处理器434的输出流传送到加法器436的输入端。加法器436从后处理器434的输出流中减去乘法器430的输出流。将加法器436的输出流传送到 最小和译码器438的输入端。最小和译码器438将最小和译码算法应用于低密度奇偶校验检查(LDPC)码以使用来自加法器436的软信息产生更加可靠的更新的软信息。然后,最小和译码器438计算更新的软信息和来自加法器436的软信息之间的差,以产生非本征信息。将译码器模块438的输出流传送到硬判决译码器模块440和乘法器442的输入端。
[0067] 译码器的迭代3以硬判决译码器模块440开始。如上所述,除了在最后迭代N中外,图4译码器的每个附加迭代重复迭代2的步骤。最后迭代N不包括加法器436或者最小和译码器438。替代地,将软后处理器450的输出流传送到将软信息转换为硬判决码元的硬判决译码器模块451。RS译码器452使用RS译码技术将硬判决译码器模块451的输出流进行译码。RS译码器452可以纠正没有被最小和译码器纠正的在经均衡的样本中的许多错误。
[0068] 图5示出了根据本发明再一种实施方式的迭代纠错译码器的第四例子。如之前的实施方式一样,MF模块502从输入均衡器(未示出)接收经均衡的样本。图5的译码器对经均衡的样本执行N重译码迭代。N可以是大于1的任何适当的正整数。作为例子,在图5中示出了1、2、3和N。
[0069] 迭代1包括匹配的Viterbi检测器504、目标滤波器模块506、加法器508、长匹配滤波器(LMF)模块512、软后处理器514和最小和译码器516。迭代2包括乘法器520、加法器522、软后处理器524、加法器526和最小和译码器528。除了第N重迭代之外,每一个后续迭代都执行与迭代2相同的步骤。译码器的第N重迭代不具有第二加法器526或者最小和译码器528。
[0070] MF模块502产生被传送到匹配的Viterbi检测器504的输出流。图5的迭代1以匹配的Viterbi检测器504开始。匹配的Viterbi检测器504使用匹配的Viterbi算法从MF模块502的输出流中产生输出流。图5的译码器具有仅仅一个匹配的Viterbi检测器504、仅仅一个目标滤波器506和仅仅一个长匹配滤波器(LMF)模块512。
[0071] 将匹配的Viterbi检测器504产生的输出流传送到目标滤波器模块506和软后处理器514的输入端。目标滤波器模块506产生被传送到加法器508的所恢复的经均衡的样本的输出流。加法器从译码器的输入流中的对应的原始经均衡的样本中减去目标滤波器模块506的输出流中的所恢复的经均衡的样本。
[0072] 将加法器508的输出流传送到LMF模块512的输入端。后处理器514从匹配的Viterbi检测器504和LMF 512接收输出流。软后处理器514产生包括最可 能检测到的位流和与每个检测到的位对应的可靠性度量值的软信息。将后处理器514产生的软信息传送到最小和译码器516的输入端。
[0073] 最小和译码器516将最小和译码算法应用于低密度奇偶校验检查(LDPC)码,以使用软后处理器514产生的软信息来产生更加可靠的更新的软信息。然后,最小和译码器516计算更新的软信息和软后处理器514产生的软信息之间的差,以产生非本征信息。在图5的译码器中所使用的最小和译码器具有低级别的复杂度,导致更少的错误传播,并且具有更加可控的错误下限,这是因为它们使用具有低权重的LDPC码,并且因为它们使用少量(例如,1或者2重)本地迭代。
[0074] 将最小和译码器516的输出流传送到乘法器520的输入端。乘法器520将最小和译码器516的输出流乘以缩放因数alpha。加法器522将LMF模块512的输出流加到来自乘法器520的经缩放的非本征信息。
[0075] 后处理器524从匹配的Viterbi检测器504和加法器522接收到输出流。软后处理器524产生包括最可能检测到的位流和与每个检测到的位对应的可靠性度量值的软信息。将后处理器524产生的软信息传送到加法器526的输入端。
[0076] 加法器526从后处理器524的输出流中减去乘法器520的输出流。将加法器526的输出流传送到最小和译码器528的输入端。最小和译码器528将最小和译码算法应用于低密度奇偶校验检查(LDPC)码,以使用来自加法器526的软信息产生更加可靠的经更新的软信息。然后,最小和译码器528计算经更新的软信息和来自加法器526的软信息之间的差,以产生非本征信息。将译码器模块528的输出流传送到乘法器530的输入端。
[0077] 图5的译码器的迭代3以乘法器530开始。除了最后的迭代N,图5的译码器的每个附加迭代都重复如上所述的迭代2的步骤。最后迭代N不包括加法器526或者最小和译码器528。替代地,将软后处理器540的输出流传送到将软信息转换为硬判决码元的硬判决模块541。RS译码器542使用RS判决技术译码硬判决模块541的输出流。RS译码器542可以纠正没有被最小和译码器纠正的在经均衡的码元中的许多错误。
[0078] 图6示出了根据本发明的另一种实施方式的迭代纠错译码器的第五例子。如之前的实施方式一样,MF模块602从输入均衡器(未示出)接收经均衡的样本。图6的译码器对经均衡的样本执行N重译码迭代。N可以是大于1的任何适当的正整数。作为例子,图6中示出的迭代1、2、3和N。图6的译码器示 出合并了图2和图3的译码器的步骤的混合译码方案。
[0079] 迭代1包括经匹配的Viterbi检测器604、目标滤波器模块606、加法器608、长匹配滤波器(LMF)模块612、软后处理器614和最小和译码器616。迭代2包括加法器620、匹配的Viterbi算法622、目标滤波器模块624、加法器626、长匹配滤波器(LMF)模块630、加法器634、软后处理器636、加法器638和最小和译码器640。迭代3包括硬判决译码器模块644、目标滤波器模块646、加法器648、长匹配滤波器(LMF)模块652、乘法器642、加法器654、软后处理器656、加法器658和最小和译码器660。除了第N重迭代以外,每一个后续迭代都执行与迭代3相同的步骤。译码器的第N重迭代不具有第三加法器658或者最小和译码器660。
[0080] 在图6的译码器的第一重迭代(迭代1)中,由匹配的Viterbi检测器604中的匹配的Viterbi算法来处理MF 602的输出流。匹配的Viterbi检测器604产生被传送到目标滤波器模块606和软后处理器614的输入端的所恢复的经均衡的样本的输出流。
[0081] 加法器608从译码器的输入流中的经均衡样本中的对应位中减去目标滤波器模块606产生的所恢复的经均衡的样本。将加法器608的输出流传送到长匹配滤波器(LMF)612的输入端。LFM 612产生被传送到软后处理器614的输出流。
[0082] 后处理器614从匹配的Viterbi检测器604和LMF 612接收输出流。软后处理器614产生包括最可能检测到的位流和与每个检测到的位对应的可靠性度量值的软信息。将后处理器614产生的软信息传送到最小和译码器616的输入端。
[0083] 最小和译码器616将最小和译码算法应用于低密度奇偶检测(LDPC)码,以使用软后处理器614产生的软信息产生更加可靠的经更新的软信息。然后,最小和译码器616计算经更新的软信息和软后处理器614产生的软信息之间的差,以产生非本征信息。图6的译码器中所使用的最小和译码器具有低等级的复杂度,导致更少的错误传播,并且具有更加可控的错误下限,这是因为它们使用具有低权重的LDPC,并且因为它们使用少量(例如,1或2重)本地迭代。
[0084] 最小和译码器616产生被传送到乘法器618的输出流。乘法器618将最小和译码器616的输出流乘以缩放因数alpha。将乘法器618的输出流传送到加法器620、634和638,开始译码器的第二重迭代。
[0085] 加法器620从MF 602的输出流中的错误样本中减去乘法器618的输出流中 的经缩放的非本征信息。然后,检测器622对加法器620的输出流执行匹配的Viterbi算法。匹配的Viterbi检测器622产生被传送到目标滤波器模块624和软后处理器636的输入端的输出流。
[0086] 加法器626从输入流中的对应原始经均衡的样本中减去目标滤波器模块624产生的所恢复的经均衡的样本。将加法器626的输出流传送到LMF 630的输入端。加法器634将乘法器618的输出流中的经缩放的非本征信息加到LMF630的输出流中的所恢复的均衡样本。
[0087] 后处理器636从匹配的Viterbi检测器622和加法器634接收输出流。软后处理器636产生包括最可能检测到的位流和与每个检测到的位对应的可靠性度量值的软信息。将后处理器636产生的软信息传送到加法器638的输入端和硬判决译码器644的输入端。
加法器638从后处理器636的输出流中减去乘法器618的输出流。
[0088] 最小和译码器640将最小和译码算法应用于低密度奇偶校验检查(LDPC)码,以使用来自加法器638的软信息产生更加可靠的经更新的软信息。然后,最小和译码器640计算经更新的软信息和来自加法器的软信息之间的差,以产生非本征信息。将最小和译码器640的输出流传送到乘法器642的输入端。
[0089] 在图6译码器的迭代3中,硬判决译码器644使用具有低复杂度的任何适当的硬判决译码方案依赖于后处理器636的输出流来执行硬判决。硬判决译码器644产生被传送到目标滤波器模块646和软后处理器模块656的输入端的经译码的输出流。加法器648从输入流中的原始经均衡的样本中减去目标滤波器模块646的输出流中的所恢复的经均衡的样本。
[0090] 将加法器648的输出流传送到长匹配滤波器(LMF)模块652。乘法器642将最小和译码器640的输出流乘以缩放因数alpha。加法器654将LMF模块652的输出流与乘法器642的输出流相加。
[0091] 软后处理器656从硬判决译码器644和加法器654接收输出流。软后处理器656产生包括最可能检测到的位流和与每个检测到的位对应的可靠性度量值的软信息。将后处理器656产生的软信息传送到加法器658的输入端和下一个迭代硬判决译码器(例如,硬判决译码器662)的输入端。
[0092] 加法器658从后处理器656的输出流中减去乘法器642的输出流。将加法器658的输出流传送到最小和译码器660的输入端。最小和译码器660将最小和译码算法应用于低密度奇偶校验检查(LDPC)码,以使用来自658的软信息 产生更加可靠的经更新的软信息。然后,最小和译码器660计算经更新的软信息和加法器产生的软信息之间的差,以产生非本征信息。将译码器模块660的输出流传送到下一个迭代中的乘法器(例如,乘法器664)的输入端。
[0093] 除了最后迭代N之外,图6译码器的每个附加迭代重复如上所说的迭代3的每一个步骤。最后迭代N不包括加法器658或者最小和译码器660。替代地,将软后处理器670的输出流传送到将软信息转换为硬判决码元的硬判决译码器671。RS译码器672使用RS译码技术译码硬判决模块671的输出流。RS译码器672可以纠正没有被最小和译码器和后处理器纠正的在均衡样本中的许多错误。
[0094] 为了减少迭代检测器的功耗,可以将新特征添加到图2-6中所示的方案中,以允许迭代检测器在最后迭代结束之前停止。图7示出了根据本发明的实施方式的早停止迭代译码器的例子。图7的迭代译码器基于图3的检测方案。根据本发明的进一步实施方式,可以将早停止技术使用在图2-6中所示的所有检测方案中。
[0095] 图7的译码器对经均衡的样本执行1到N重译码迭代。基于在模块718、740等处是否满足停止条件(S<TH)来确定译码迭代重数。S是最小和译码器714和736等基于校验和违规(checksum violation)或者LDPC码块中的最不可靠值(least reliable value)计算的停止条件值。TH是预定阈值参数。迭代的最大重数N可以是大于1的任何适当的正整数。作为例子,图7中示出的迭代1、2和N。
[0096] 迭代1包括匹配的Viterbi检测器704、目标滤波器模块706、加法器708、长匹配滤波器(LMF)模块710、软后处理器712、最小和译码器714、硬判决译码器716和停止模块718。迭代2包括目标滤波器模块722、加法器724、长匹配滤波器(LMF)模块726、乘法器
728、加法器730、软后处理器732、加法器734、最小和译码器736、硬判决译码器738和停止模块740。除了第N重迭代之外,每个随后的迭代都执行与迭代2相同的步骤。译码器的第N重迭代不具有第三加法器734、最小和译码器736、硬判决译码器738或者停止模块740。
[0097] 起初,如之前的实施方式一样,MF模块702从输入均衡器(未示出)接收经均衡的样本。MF模块702产生被传送到匹配的Viterbi检测器704的输出流。迭代1以匹配的Viterbi检测器704开始。匹配的Viterbi检测器704使用匹配的Viterbi算法从MF模块702的输出中产生输出流。图7的译码器仅仅具有使用 匹配的Viterbi算法的一个检测器模块704。
[0098] 将匹配的Viterbi检测器704产生的输出流传送到目标滤波器模块706和软后处理器712的输入端。目标滤波器模块706产生被传送到加法器708的所恢复的经均衡的样本的输出流。加法器708从译码器的输入流中的对应的原始经均衡的样本中减去目标滤波器模块706的输出流中的所恢复的经均衡的样本,以获得错误样本。
[0099] 将加法器708的输出流传送到LMF模块710的输入端。软后处理器712从匹配的Viterbi检测器704和LMF 710接收输出流。软后处理器712产生包括最可能检测到的位和与每个检测到的位对应的可靠性度量值的软信息。将后处理器712产生的软信息传送到最小和译码器714的输入端和硬判决译码器716的输入端。
[0100] 最小和译码器714将最小和译码算法应用于低密度奇偶校验检查(LDPC)码,以使用软后处理器712产生的软信息产生更加可靠的经更新的软信息。然后,最小和译码器714计算经更新的软信息和软后处理器712产生的软信息之间的差,以产生非本征信息。将最小和译码器714的输出流中的非本征信息传送到乘法器的输入端。最小和译码器714还产生被传送到停止模块718的早停止值(early stop value)S。S值可以例如是不满足的纠正子(syndrome)数量。
[0101] 在图7的译码器中所示的最小和译码器具有低等级的复杂度,导致更少的错误传播,并且具有更加可控的错误下限,这是因为它们使用具有低权重的LDPC码,并且因为它们使用少量(例如,1或者2重)本地迭代。
[0102] 硬判决译码器716使用具有低复杂度的任何适当的硬判决译码方案对后处理器712的输出流执行硬判决译码,以产生经译码的输出流。在停止模块718中的停止条件(S<TH)确定将硬判决译码器的经译码的输出流传送到哪个模块。在停止模块718,如果满足停止条件S<TH,则将来自硬判决译码器716的经译码的输出流直接传送到缓冲器模块
756(经由图7中的A),然后到Reed-Solomon译码器754,而不通过迭代译码器中的其余迭代。
[0103] 如果不满足停止条件S<TH,则图7的迭代译码器前进到迭代2。在迭代2中,将来自硬判决译码器716的经译码的输出流传送到目标滤波器模块722和软后处理器模块732的输入端。加法器724从输入流中原始的经均衡的样本中减去目标滤波器模块722的输出流中的所恢复的经均衡的样本。
[0104] 将加法器724的输出流传送到LMF模块726。乘法器将最小和译码器714 的输出流中的非本征信息乘以缩放因数alpha。加法器730将LMF模块726的输出流中的错误样本加到乘法器728的输出流中的经缩放的非本征信息。
[0105] 后处理器732从硬判决译码器716和加法器730接收输出流。软后处理器732产生包括最可能检测到的位流和与每个检测到的位对应的可靠性度量值的软信息。将后处理器732产生的软信息传送到加法器734的输入端和硬判决译码器738的输入端。
[0106] 加法器734从后处理器732的输出流中减去乘法器728的输出流中的经缩放的非本征信息。最小和译码器736将最小和译码算法应用于低密度奇偶校验检查(LDPC)码,以使用来自加法器734的软信息产生更加可靠的经更新的软信息。然后,最小和译码器736计算经更新的软信息和来自加法器734的软信息之间的差,以产生非本征信息。将译码器模块736的经译码的输出流中的非本征信息传送到下一个迭代中的乘法器(例如,乘法器742)的输入端。最小和译码器736还产生被传送到停止模块740的早停止值S。S可以例如是不满足的纠正子数量。
[0107] 硬判决译码器模块738使用具有低复杂度的任何适当的硬判决译码方案对后处理器732的输出执行硬判决译码。在停止模块740中的阈值条件(S<TH)确定将硬判决译码器738的经译码的输出流传送到哪个模块。在停止模块740,如果满足停止条件S<TH,则将来自硬判决译码器740的经译码的输出流直接传送到缓冲器模块756(经由图7的A),然后到Reed-Solomon译码器754,而不通过迭代译码器中的其余迭代。
[0108] 如不满足停止条件S<TH,图7的迭代译码器前进到迭代3,并且将硬判决译码器738的经译码的输出流传送到迭代3中的目标滤波器和软后处理器。译码器的迭代3以诸如目标滤波器模块741之类的目标滤波器模块开始。除了最后的迭代N外,图7的每个附加的迭代重复如上所述的迭代2的步骤。最后的迭代N不包括加法器734、最小和译码器
736、硬判决译码器738或者停止模块740。替代地,将软后处理器750的输出流传送到硬判决译码模块752以将软信息转换为硬判决码元。RS译码器754使用RS译码技术译码硬判决模块752的输出流。RS译码器754可以纠正没有被最小和译码器纠正的经均衡的码元中的许多错误。
[0109] 根据本发明的各种实施方式,以上关于图1-7描述的模块可以以硬件电路、软件电路或者硬件和软件的组合实现。根据本发明的一些实施方式,可以通过 使用每种类型的模块中的仅仅一个,并且替代于在每重迭代中使用不同的模块,在每重迭代中使用相同一组模块一次一次地重复上述步骤,从而实现迭代译码器。例如,本发明的迭代译码器具有一个后处理器和一个最小和译码器。在每重迭代中,使用相同的后处理器和相同的最小和译码器来执行译码。
[0110] 已经为了说明和描述的目的呈现了本发明的示例实施方式的上述描述,其不试图将本发明的范围穷尽或者限制到所精确公开的形式。可以在本发明中进行各种修改、各种改变和替代。在某些例子中,使用本发明的特征而不用对应使用所述的其他特征。在不偏离本发明的范围的情况下,根据上述教导,许多修改和变型都是可能的。本发明的范围不试图由本详细说明书限制,而是由所附权利要求限制。