信号解码方法、信号解码装置和信号存储系统的制作方法

文档序号:6775545阅读:90来源:国知局
专利名称:信号解码方法、信号解码装置和信号存储系统的制作方法
技术领域
本发明涉及将被编码的信号解码的技术。
背景技术
在将被编码的信号解码时,进行噪声等引起的差错的检测或纠错。作为将信号编码的代码之一,例如,可列举低密度奇偶校验(Low Density ParityCheck,以下也表记为‘LDPC’)码。使用LDPC码,将被编码的信号解码(也表记为‘LDPC解码’)时,将校验矩阵乘以被解码的信号。由此,可检测在被解码的信号中产生的差错。作为这种校验矩阵的构成方法,提出了各种各样的方法。例如,在专利文献1中,公开了将根据与阵码有关的校验矩阵的定义而被定义的矩阵的一部分修正为上三角结构的校验矩阵的构成方法。
特开2003-115768号公报但是,通过校验矩阵的构成,有时不能检测在被解码的信号中产生的一部分差错。

发明内容
本发明鉴于上述情况而完成,其概括性的目的是,构成可正好适合于检测差错的校验矩阵。
在校验矩阵中,在包含了具有线性从属关系的多个列(以下,表记为‘线性从属列’)时,构成线性从属列的所有列与被解码的信号中的差错发生位置相乘时,如后述那样不能检测该差错。本发明人着眼于这一点,通过构成所有的线性从属列不与被解码的信号的差错发生位置相乘的校验矩阵,从而完成用于实现正好合适的差错检测的本发明。
本发明的一方案涉及信号解码方法。在该信号解码方法中,在将属于输入信号序列的编码过的信号解码时,使矩阵对该被解码的信号序列起作用而提高解码精度。在s、t成为s≥t≥2的自然数时,作为矩阵,使用从该矩阵提取出的s列中t列以下的列之间为线性独立的关系的矩阵,s列是在被解码的信号序列中被乘以差错发生频度比较高的信号的列。
根据该方案,矩阵以包含线性独立的t列、即非线性从属的t列而构成。由此,可以防止在被解码的信号序列中,在t位置发生了差错时,所有的线性从属列与该差错发生位置相乘,所以可以正好适合于检测发生频度比较高的差错。
本发明的另一方案也涉及信号解码方法。在该信号解码方法中,在将属于输入信号序列的被编码的信号解码时,使矩阵对该被解码的信号序列起作用,从而提高解码精度。在s、t成为s≥t≥2的自然数时,作为矩阵,使用从该矩阵提取出的s列中t列以下的列之间为线性独立的关系的矩阵,s列是矩阵中相邻的列。
根据该方案,矩阵以包含使线性独立的t列相邻而构成。由此,在被解码的信号序列中发生了t位置上连续地发生的差错(也表记为‘猝发差错’)的情况下,由于可以避免线性从属的列与猝发差错的发生位置相乘,所以可以正好适合于检测该猝发差错。
本发明的另一方案也涉及信号解码方法。该信号解码方法在将属于输入信号序列的被编码的信号解码时,使m行n列(m和n为m、n≥2的自然数)的矩阵对该被解码的信号序列起作用,从而提高解码精度。矩阵包含列方向上被连接的m行s列(s为n>s的自然数)的第1和第2部分矩阵,第1和第2部分矩阵,其s列中t列(t为s≥t≥2的自然数)以下的列之间为线性独立的关系。
根据该方案,在矩阵中,在t列以下线性从属关系不成立。由此,如果发生的差错的数在t以下,则可以避免将该t位置发生的差错与构成线性从属列的所有列相乘,所以可进行这些差错的检测。
本发明的另一方案涉及信号解码装置。该信号解码装置包括单位解码单元,单位解码单元取得输入信号序列,并在将属于该输入信号序列的被编码的信号解码时,执行该被解码的信号序列和矩阵的乘法运算。在s、t成为s≥t≥2的自然数时,作为矩阵,单位解码单元使用从该矩阵提取的s列中t列以下的列之间为线性独立的关系的矩阵。s列是在被解码的信号序列中被乘以差错发生频度比较高的信号的列。
根据该方案,矩阵以包含线性独立的t列、即非线性从属的t列而构成。由此,可以防止在被解码的信号序列中,在t位置发生了差错时,所有的线性从属列与该差错发生位置相乘,所以可以正好适合于检测发生频度比较高的差错。
本发明的另一方案涉及信号解码装置。该信号解码装置包括单位解码单元,单位解码单元取得输入信号序列,并在将属于该输入信号序列的被编码的信号解码时,执行该被解码的信号序列和矩阵的乘法运算,在s、t成为s≥t≥2的自然数时,作为矩阵,单位解码单元使用从该矩阵提取的s列中t列以下的列之间为线性独立的关系的矩阵。s列是在矩阵中相邻的列。
根据该方案,矩阵以包含使线性独立的t列相邻而构成。由此,在被解码的信号序列中,t位置上发生了猝发差错的情况下,由于单位解码单元可以避免所有线性从属的列与该猝发差错的发生位置相乘,所以可以正好适合于检测该猝发差错。
本发明的另一方案也涉及信号解码装置。该信号解码装置包括单位解码单元,单位解码单元取得输入信号序列,并在将属于该输入信号序列的被编码的信号解码时,执行该被解码的信号序列和m行n列(m和n为m、n≥2的自然数)的矩阵的乘法运算。矩阵包含列方向上被连接的m行s列(s为n>s的自然数)的第1和第2部分矩阵,在第1和第2部分矩阵中,其s列中t列(t为s≥t≥2的自然数)以下的列之间为线性独立的关系。
根据该方案,在矩阵中,t列以下线性从属关系不成立。由此,如果发生的差错的数在t以下,则可以避免将该t位置发生的差错与构成线性从属列的所有列相乘,所以可进行这些差错的检测。
第2部分矩阵也可以是对第1部分矩阵的元素附加了规定的移位处理的矩阵。此外,该移位处理也可以是行的置换。这样,如果构成第1部分矩阵,则第2部分矩阵只要对第1部分矩阵的元素施加规定的移位处理就可以构成,所以矩阵的构成容易。
在信号解码装置中,t的值也可以根据解码时不能检测的、在属于被解码的信号序列的信号中产生的差错的容许限度而确定。根据该方案,即使在对所有的差错未进行检测的情况下,t的值也被决定,以使该差错检测结果在可容许的范围内。即,通过构成矩阵而使这里决定的t列中不包含线性从属列,可进行可容许范围内的差错检测。由此,不必构成可检测所有差错的矩阵,所以可以更容易地构成矩阵。
单位解码单元也可以使用低密度奇偶校验码而解码被编码过的信号。根据该方案,可检测在被LDPC解码的信号中发生的差错。
本发明的另一方案涉及信号存储系统。该信号存储系统具有写通道(writechannel)和读通道。写通道包括第1编码单元,对数据进行行程编码;第2编码单元,对由第1编码单元编码后的数据使用低密度奇偶校验码再次进行编码;以及写入单元,将由第2编码单元编码后的数据写入存储装置。读通道包括读取单元,从存储装置读取由第2编码单元编码后的数据;软输出检测单元,计算由读取单元读取出的数据的似然,从而输出软判定值;与第2编码单元对应的第2解码单元,对从软输出检测单元输出的数据进行解码;以及与第1编码单元对应的第1解码单元,对由第2解码单元解码后的数据再次进行解码。第2解码单元具有在将从软输出检测单元输出的数据解码时,执行该解码的数据和矩阵的乘法运算的单位解码单元,在s、t成为s≥t≥2的自然数时,作为矩阵,单位解码单元使用从该矩阵提取的s列中t列以下的列之间为线性独立的关系的矩阵。s列是在被解码的信号序列中被乘以差错发生频度比较高的部分的列。信号存储系统也可以被集成在至少一个半导体基板上。
根据该方案,矩阵以包含线性独立的t列、即非线性从属的t列而构成。在被解码的数据中的t位置发生了差错时,单位解码单元不将所有的线性从属列与该差错发生位置相乘,所以可以正好适合于检测对于从存储装置读取出的数据发生频度比较高的差错。
本发明的另一方案也涉及信号存储系统。该信号存储系统具有写通道和读通道。写通道包括第1编码单元,对数据进行行程编码;第2编码单元,对由第1编码单元编码后的数据使用低密度奇偶校验码再次进行编码;以及写入单元,将由第2编码单元编码后的数据写入存储装置。读通道包括读取单元,从存储装置读取由第2编码单元编码后的数据;软输出检测单元,计算由读取单元读取出的数据的似然,从而输出软判定值;与第2编码单元对应的第2解码单元,对从软输出检测单元输出的数据进行解码;以及与第1编码单元对应的第1解码单元,对由第2解码单元解码后的数据再次进行解码。第2解码单元具有在将从软输出检测单元输出的数据解码时,执行该解码的数据和矩阵的乘法运算的单位解码单元。在s、t成为s≥t≥2的自然数时,作为矩阵,单位解码单元使用从该矩阵提取的s列中t列以下的列之间为线性独立的关系的矩阵。s列是在矩阵中相邻的列。信号存储系统也可以被集成在至少一个半导体基板上。
根据该方案,矩阵以包含使线性独立的t列、即不是线性从属的t列相邻而构成。由此,在被解码的信号序列中,在t位置上发生了猝发差错的情况下,由于单位解码单元不将所有的线性从属的列与该猝发差错产生位置相乘,所以可以正好适合于对于从存储装置读取出的数据检测该猝发差错。
信号存储系统还可以包括存储装置,存储规定的数据;以及控制单元,控制对存储装置的数据的写入和来自存储装置的数据的读取,读通道根据控制单元的指示,读取被存储在存储装置中的数据,写通道根据控制单元的指示,将规定的数据写入存储装置。根据该方案,通过控制单元的控制,可以对于从存储装置读取出的数据正好适合于检测差错。
再有,将以上构成元素的任意的组合、本发明的表现在方法、装置、系统、计算机程序、记录媒体等之间变换所得到的方案,作为本发明的形态是有效的。


图1是表示实施方式的磁盘装置的结构的图。
图2是表示实施方式的R/W通道的结构的图。
图3是实施方式的LDPC重复解码单元的功能方框图。
图4是实施方式的LDPC单位解码单元的功能方框图。
图5是用于说明有关差错检测的图。
图6(a)是未发生差错的情况下的提取了图5的一部分的图,图6(b)是在1个位置上发生了差错的情况下的提取了图5的一部分的图,图6(c)是在2个位置上发生了差错的情况下的提取了图5的一部分的图,图6(d)是在3个位置上发生了差错的情况下的提取了图5的一部分的图。
图7是表示校验矩阵中线性从属的列被相邻配置的情况下的与差错发生位置的对应关系的图。
图8是表示校验矩阵中线性从属的列被分离配置的情况下的与差错发生位置的对应关系的图。
图9是用于说明实施方式的校验矩阵的构成方法的图。
具体实施例方式
以下,参照优选实施方式来论述本发明。这种论述不限定本发明的范围,只是例示本发明。
在本实施方式中,说明有关将从磁盘装置读取出的信号、即数据进行LDPC解码时产生的差错的检测。具体地说,通过将线性从属的列配置在相互分离的位置而构成校验矩阵,从而避免在猝发差错发生的位置乘以所有的线性从属的列。由此,实现该猝发差错的检测。
图1是表示磁盘装置100的结构的图。图1的磁盘装置100大致由硬盘控制器1(以下,略记为‘HDC1,)、中央处理运算装置(以下,略记为‘CPU2,)、读写通道3(以下,略记为‘R/W通道3’)、音圈电机/主轴电机控制单元4(以下,略记为‘VCM/SPM控制单元4)、以及磁盘罩5(以下,略记为‘DE5’)构成。一般地,HDC1、CPU2、R/W通道3、以及VCM/SPM控制单元4被集成在至少一个半导体基板上。
HDC1包括对HDC1整体进行控制的主控制单元11、数据格式控制单元12、纠错编码控制单元13(以下,略记为‘ECC控制单元13’)、以及缓冲RAM14。HDC1通过未图示的接口单元与主机系统连接。此外,通过R/W通道3,与DE5连接,通过主控制单元11的控制,进行主机和DE5之间的数据传送。在该HDC1中,被输入由R/W通道3生成的读出基准时钟(RPCK)。数据格式控制单元12将从主机传送的数据变换为适合于记录在盘介质50上的格式,相反地,将从盘介质50被再现的数据变换为适合于传送到主机的格式。盘介质50例如包含磁盘。ECC控制单元13为了进行对从盘介质50被再现的数据中包含的差错的纠正及差错的检测,将记录的数据作为信息码元,附加冗余码元。此外,ECC控制单元13对已被再现的数据判断是否发生了差错。在有差错的情况下进行纠正或检测。但是,差错可以纠正的码元数是有限的,此外,差错可以纠正的码元数依赖于冗余数据的长度。即,附加了许多冗余数据时,格式效率恶化,所以与可纠错的码元数折衷。作为ECC,在利用里德·索罗蒙(RS)码进行纠错的情况下,可以纠正(冗余码元数/2)个为止的差错。缓冲RAM14将从主机传送的数据暂时地保存,并以合适的定时传送到R/W通道3。相反地,将从R/W通道3传送的读数据暂时地保存,并在ECC解码处理等结束后,以合适的定时传送到主机。
CPU2包括闪存ROM21(以下,略记为‘FROM21’)及RAM22,与HDC1、R/W通道3、VCM/SPM控制单元4、以及DE5连接。在FROM21中,保存有CPU2的动作程序。
R/W通道3大致分为写通道31和读通道32,与HDC1之间进行被记录的数据及被再现的数据的传送。此外,R/W通道3与DE5连接,进行记录信号的发送、再现信号的接收。细节后述。
VCM/SPM控制单元4对DE5中的音圈电机52(以下,略记为‘VCM52’)和主轴电机53(以下,略记为‘SPM53’)进行控制。
DE5与R/W通道3连接,进行记录信号的接收、再现信号的发送。此外,DE5与VCM/SPM控制单元4连接。DE5有盘介质50、磁头51、VCM52、SPM53、及前置放大器54等。在图1的磁盘装置100中,假设盘介质50为一张,并且磁头51仅被配置在盘介质50的一个表面侧的情况,但也可以是多个盘介质50被层叠配置的结构。此外,一般地,磁头51被对应于盘介质50的各面而设置。通过R/W通道3发送的记录信号经由DE5内的前置放大器54而供给到磁头51,通过磁头51被记录在盘介质50中。相反地,通过磁头51从盘介质50被再现的信号经由前置放大器54而被发送到R/W通道3。DE5内的VCM52使磁头51在盘介质50的半径方向上移动,以便将磁头51定位于盘介质50上的目标位置。此外,SPM53使盘介质50旋转。一般地,HDC1、CPU2、R/W通道3、以及VCM/SPM控制单元4、前置放大器54和VCM52由同一半导体集成电路来实现。但是,也可以将它们的一部分的任意的组合由同一半导体集成电路来实现。
这里,使用图2,说明有关R/W通道3。图2表示图1的R/W通道3的结构。R/W通道3大致由写通道31和读通道32构成。
写通道31包括字节接口单元301、扰码器302行程(run-length)控制编码单元303(以下,略记为‘RLL编码单元303’)、低密度奇偶校验码单元304(以下,略记为‘LDPC编码单元304’)、写入补偿单元305(以下,略记为‘写补偿单元305’)、驱动器306。
在字节接口单元301,从HDC1传送的数据被作为输入数据来处理。介质上写入的数据以1扇区为单位被从HDC1输入。此时,不仅1扇区部分的用户数据(512字节)被输入,而且由HDC1附加的ECC字节也被同时输入。数据总线通常为1字节(8位),通过字节接口单元301被作为输入数据来处理。扰码器302将写数据变换为随机的序列。相同图案的数据的重复是为了防止对读出时的检测性能产生不良影响,使差错率恶化。RLL编码单元303用于限制0的最大连续长度。通过限制0的最大连续长度,成为适合于读出时的自动增益控制单元317(以下,略记为‘AGC317’)等的数据序列。
LDPC编码单元304具有对数据序列中附加了LDPC码的冗余位的LDPC编码后的数据序列进行编码的作用。LDPC编码通过对被称为生成矩阵的kxn的矩阵,将长度k的数据序列从左边起相乘而进行。该生成矩阵中包含的各元素是0或1。
写补偿单元305是对介质上的磁化转移的连续造成的非线性失真进行补偿的电路。根据写数据而对补偿所必要的图案进行检测,并预先调整写电流波形,以在正确的位置产生磁转移。驱动器306是将与模拟ECL电平对应的信号输出的驱动器。来自驱动器306的输出被传送到未图示的DE5,通过前置放大器54传送到磁头51,将写数据记录在盘介质50上。
读通道32包括可变增益放大器311(以下,略记为‘VGA311’)、低通滤波器312(以下,略记为‘LPF312’)、AGC317、模拟/数字变换器313(以下,略记为‘ADC313’)、频率合成器314、FIR滤波器315、SOVA(Soft-Output Viterbi Algorithm)解码单元316、零相启动单元318、定时控制单元319、内插器325、LDPC重复解码单元322、同步信号检测单元321、行程控制解码单元323(以下,略记为‘RLL解码单元323’)、解扰器324。
VGA311及AGC317进行从未图示的前置放大器54传送的数据的读出波形的振幅的调整。AGC317将理想的振幅和实际的振幅进行比较,并决定应对VGA311设定的增益。LPF312可以调整截止频率和提升量,担当高频噪声的降低和对部分响应(Partial Response,以下略记为‘PR’)波形的一部分均衡。在LPF312中,进行对PR波形的均衡,但因磁头的上浮量变动、介质的不均匀性、电机的旋转变动等许多因素,难以通过模拟的LPF而完全均衡。因此,使用被配置在LPF312的后级的、适应性更丰富的FIR滤波器315,再次进行对PR波形的均衡。FIR滤波器315也可以具有自适应地调整其抽头系数的功能。频率合成器314生成ADC313的采样时钟。内插器325使用由定时控制单元319检测出的相位误差,进行由频率合成器314生成的采样时钟的微调整。ADC313成为通过AD变换而直接获得同步采样的结构。再有,除了这种结构以外,也可以是通过AD变换而获得非同步采样的结构。这种情况下,取代内插器325而使用插补滤波器即可。零相启动单元318是用于决定初始相位的块。定时控制单元319使用被决定的初始相位和FRI滤波器315的输出,将理想的采样值和实际的采样值进行比较,并检测相位误差。
SOVA解码单元316使用作为一种维特比算法的SOVA,避免解码特性随着码间干扰的恶化。即,随着近年来的磁盘装置的记录密度的上升,被记录的码间的干扰增大,为了解决解码特性恶化的课题,作为克服它的方式,使用最大似然解码(Partial Response Maximum Likelihood,以下略记为‘PRML’)方式。PRML方式根据PR方式和ML方式的两个方式而成立,是求使再现信号的码间干扰造成的局部响应的似然最大的信号序列的方式。如图2所示,PRML解码单元320包括FIR滤波器315和SOVA解码单元316。来自SOVA解码单元316的输出可以用作LDPC重复解码单元322的软值输入。例如,作为SOVA的输出,(0.71,0.18,0.45,0.45,0.9)这样的软值被输出。这些值用数值表示为0的可能性大或为1的可能性大。例如,第1的0.71意味着表示为1的可能性大,第4的0.45意味着表示为0的可能性大而为1的可能性小。以往的维特比检波器的输出是硬值,是对SOVA的输出进行硬判定的输出。这里,硬判定是指例如在比规定的阈值大的情况下判定为‘1’,在小的情况下判定为‘0’等。上述例子的情况下,为(1,0,0,0,1)。硬值仅表示是0还是1,哪个可能性高的信息被丢失。因此,对LDPC重复解码单元322输入软值的方式解码性能良好。
同步信号检测单元321检测在数据的开头附加的同步信号(Sync Mark),并具有对数据的开头位置进行识别的作用。LDPC重复解码单元322具有从LDPC编码的信号序列中恢复到LDPC编码前的序列的作用。作为解码的方法,主要有sum-product解码法和min-sum解码法。在解码性能方面,sum-product解码法有利,而min-sum解码法具有通过硬件实现容易的特征。
一般地,在LDPC解码上使用重复解码的情况下,求被称为事前值和事后值的值,而且,通过DAE,再次计算事前值和事后值。在规定的次数、或被判断为不包含差错的情况下,对该时刻求出的似然进行硬判定,并输出二值的解码数据。不包含差错以将包含了冗余数据序列的解码数据乘以校验矩阵的转置矩阵,其结果是否为0矩阵而可以判断。校验矩阵是生成矩阵为G,校验矩阵为H时,GHT=0成立的矩阵。如上述那样,LDPC编码通过将信号序列从左起乘以生成矩阵,在信号序列上附加冗余位而完成。即,如果对解码数据乘以校验矩阵的转置矩阵所得的结果为0矩阵,则判断为通过纠正在解码数据中不包含差错。而如果结果是0矩阵以外,则判断为未被纠正的差错包含在解码数据中。另外,作为对不包含差错进行判断的方法,在解码对象的数据中,对除了冗余数据序列以外的数据序列,乘以在LDPC编码时使用的生成矩阵来求冗余位。接着,对冗余位进行硬判定,从而与冗余信号序列进行比较,并通过是否一致而判断差错是否被纠正。
RLL解码单元323对从LDPC重复解码单元322输出的数据,进行写通道31的RLL解码单元303的相反操作,返回到原来的信号序列。解扰器324进行写通道31的扰码器302的相反操作,返回到原来的信号序列。这里生成的数据被传送到HDC1。
图3是LDPC重复解码单元322的功能方框图。LDPC重复解码单元322包括交织器330、LDPC单位解码单元332、解交织器334、判定单元336、计数器337、DAE338和PR方式目标保持单元339。
由SOVA解码单元316解码并输出的软值的数据通过同步信号检测单元321而被识别了数据的开头位置后被输入到交织器330。交织器330将输入的数据进行交织而分为多个路径。‘交织’是将数据序列的连续的数据分开为多个段。
这里,说明交织器330的动作。一般地,在PRML方式,已知容易发生猝发差错。LDPC单位解码单元332在使校验矩阵对数据序列起作用时,将数据序列中的猝发差错发生位置乘以具有校验矩阵中的线性从属关系的列时,有不能检测该猝发差错的情况。特别是用于LDPC解码的校验矩阵的元素因1的数比0的数少而容易包含有线性从属关系的列,不能检测猝发差错的可能性比较高。交织器330通过将数据分为多个路径,使差错分散在各路径中,将乘以校验矩阵时的差错检测的精度提高。
但是,在构成猝发差错的差错位置的数多,即使进行交织仍存在猝发差错的情况下,有通过校验矩阵的结构也不能检测该猝发差错的情况。例如,在被交织前的数据中差错连续出现32个位置,从而交织器330将差错发生位置分为8个路径。其结果,在校验矩阵中4列中线性从属的关系成立的列相互相邻存在,这4列都乘以分配给各路径的各自数据中包含的4个位置连续的差错时,这些差错未被检测出。这样的情况下,如后述那样,通过将线性从属的列分离而构成校验矩阵,从而可以进行即使在进行交织后也存在的猝发差错的检测。
LDPC单位解码单元332对由交织器330分为多个路径的数据进行LDPC解码,从而将该解码数据作为暂时估计值输出,同时对于该暂时估计值进行奇偶校验。这里,LDPC单位解码单元332在第1次的解码中对输入的软值进行硬判定,并将暂时估计值作为硬值输出。‘奇偶校验’是暂时估计值为x,校验矩阵为H时,将暂时估计值x乘以校验矩阵H的转置矩阵HT,从而调查xHT=0的关系是否成立。通过LDPC单位解码单元332对由交织器330分为多个路径的数据实施并行处理,从而实现高速的处理。解交织器334对由LDPC单位解码单元332解码并输出的暂时估计值进行解交织,从而返回到原来的一个数据序列的形式。在图3中,将交织器330和LDPC单位解码单元332之间和LDPC单位解码单元332和解交织器334之间的多个路径以三个箭头表示。这里,‘解交织’是将被进行交织而分配到多个路径的数据汇集而重新排列为原来的形式。
判定单元336根据奇偶校验的结果,判定是否结束重复解码。计数器337对解码被重复的次数进行计数。即,计数器337每当判定单元336进行判定时在计数器337中加上1。这里,判定单元336在奇偶校验的结果为xHT=0成立时,或xHT=0不成立,但计数器337已计数了预先确定的重复解码的次数(也表记为‘规定的次数’)时,判定为结束重复解码。另一方面,判定单元336在奇偶校验的结果为xHT=0不成立,并且计数器337未计数到规定的次数时,判定为不结束重复解码。判定单元336在判定为结束重复解码时,将暂时估计值输出到RLL解码单元323。另一方面,判定单元336在未判定为结束重复解码时,将暂时估计值输出到DAE338。即,判定单元336通过解交织器334不对被解交织的暂时估计值施加处理,将该暂时估计值输出到RLL解码单元323或DAE338。DAE338使用被解交织的暂时估计值、FIR滤波器315的输出和PR方式目标保持单元339保持的PR方式的数据的波形等效目标值(也表记为‘PR方式目标’)来计算对数似然比。在本实施方式,此时使用的暂时估计值是硬值,但也可以是硬判定前的软值。这里,‘对数似然比’是暂时估计值码元的可靠性信息。对第2次以后的重复解码,使用DAE338算出的对数似然比。即,交织器330将作为DAE338的输出的对数似然比进行交织。LDPC单位解码单元332对于通过交织器330被交织过的对数似然比进行LDPC解码,从而将该解码数据作为暂时估计值输出,同时对于该暂时估计值进行奇偶校验。
图4是LDPC单位解码单元332的功能方框图。在本实施方式,使用min-sum解码法进行解码。这里,通过sum-product解码法进行解码也可以。暂时估计值计算单元342对通过交织器330被交织的信号进行解码。暂时估计值计算单元342的解码使用校验矩阵保持单元340保持的对于校验矩阵的各元素的对数外部值比、对数事前值比和对数似然比,对信号的暂时估计值重复计算规定的次数来进行。这里,暂时估计值计算单元342对在第1次的解码中输入的软值进行硬判定,将暂时估计值作为硬值输出。奇偶校验单元344对于暂时估计值计算单元342算出的暂时估计值,通过奇偶校验而进行差错检测。奇偶校验将暂时估计值乘以校验矩阵保持单元340保持的校验矩阵的转置矩阵来进行。具体地说,在暂时估计值为x,校验矩阵为H时,奇偶校验单元344进行xHT的乘法运算。在安装到电路的情况下,作为奇偶校验单元344使用乘法器。作为乘法运算的对象的暂时估计值,从奇偶校验单元344输出,被输入到解交织器334。此外,奇偶校验单元334中的乘法运算的结果被投入到判定单元336。这里,‘对数外部值比’是解码的码元的可靠性的增量。‘对数事先值比’是用于对数外部值比的计算的预先提供的值。
图5是用于说明有关差错检测的图。这里,说明有关校验矩阵中包含的所有线性从属的列被乘以差错发生位置时,不能进行差错检测的情况。在该图中,设暂时估计值为x,校验矩阵为H,奇偶校验中的乘法运算xHT的结果为y。暂时估计值x为17位的数据序列,在该图中,作为1行17列的矩阵来表现。校验矩阵H为6行17列的矩阵,作为xHT的乘法运算结果,获得1行6列的矩阵y。校验矩阵H中对各行附加行号码来表示,对各列附加列号码来表示。这里,在乘法运算结果y的元素都为‘0’时,差错还未发生,其中一个元素为‘1’时,可以说差错发生了。在本实施方式,被编码前的原来的数据假设为元素都为‘0’的1行17列的矩阵。通过该图中用框包围所示的校验矩阵H中的3列、即第11列、第12列和第15列,线性从属关系成立。
在暂时估计值x中差错未发生,即暂时估计值x的元素都为‘0’的情况下,乘法运算结果y的元素都为‘0’,变成‘000000’。在暂时估计值x中的1个位置中发生差错,第11列的元素变为‘1’时,乘法运算结果y变为‘001011’。这种情况下,由于乘法运算结果y的元素中包含有‘1’,所以可以判别发生了差错。在暂时估计值x中的2个位置中发生差错,第11列和第12列的元素变为‘1’时,乘法运算结果y变为‘001100’。这种情况下乘法结果y的元素中也包含有‘1’,所以可以判别发生了差错。在暂时估计值x中的3个位置中发生差错,第11列、第12列和第15列的元素为‘1’时,乘法运算结果y为‘000000’。这种情况下,获得与在暂时估计值x中不发生差错的情况相同的乘法运算结果y,不能判别发生了差错。这是因为对差错发生位置的元素‘1’乘以了所有线性从属的列引起的。以下,使用图6说明它。
图6是从图5所示的矩阵中提取出与差错发生位置有关的位置的图。矩阵α是提取暂时估计值x中的第11列、第12列和第15列而构成的矩阵,矩阵β是提取校验矩阵H中的线性从属的列、第11列、第12列和第15列而构成的矩阵,矩阵γ是乘法运算αβT的结果。构成矩阵β的3列有线性从属关系。即,在矩阵β的各行中元素‘1’不存在,而在2个位置存在,将这3列进行加法运算时,变为所有的元素为‘0’的6行1列的矩阵。
在进行乘法运算αβT的情况下,通过矩阵α的各元素和转置矩阵βT的各列、即矩阵β的各行的各元素被分别相乘后相加,从而计算乘法运算结果γ的各元素。图6(a)、图6(b)、图6(c)和图6(d)分别表示在暂时估计值x中未发生差错的情况、发生了1个位置差错的情况、发生了2个位置差错的情况、在3个位置发生了差错的情况下的矩阵α、矩阵β和乘法运算结果γ。此外,这些图6(b)、图6(c)和图6(d)中所示的箭头,作为箭头引出元的矩阵β中的各行表示与乘法运算的结果、决定作为箭头引出目的地的乘法运算结果γ的各元素的值有关。
暂时估计值x中未发生差错的情况下,矩阵α的各列的元素‘0’与矩阵β的各行的元素相乘,乘法运算结果γ如图6(a)所示,为‘000000’。在暂时估计值x中1个位置发生差错,从而矩阵α的第1列为‘1’的情况下,该元素‘1’与矩阵β的第1列中的各行的元素相乘。该矩阵β的第1列的元素为‘1’的原因是第3行、第5行和第6行,乘法运算结果γ将未发生差错的情况下的乘法运算结果γ‘000000’的第3列、第5列和第6列的元素反转的结果,如图6(b)所示,变为‘001011’。由此引起,如上述在图5中所示,乘法运算结果y也变为‘001011’。这里,‘反转’是指元素‘0’变为‘1’,或元素‘1’变为‘0’。
暂时估计值x中2个位置上发生差错,除了上述矩阵α的第1列以外,第2列的元素也变为‘1’。此时,矩阵α的第1列的元素‘1’与矩阵β的第1列中的各行的元素相乘,矩阵α的第2列的元素‘1’与矩阵β的第2列中的各行的元素相乘。矩阵β的第2列的元素为‘1’的原因是第4行、第5行和第6行,乘法运算结果γ将1个位置发生差错的情况下的乘法运算结果γ‘001011’的第4列、第5列和第6列的元素反转,从而如图6(c)所示变为‘001100’。由此引起,如上述在图5中所示,乘法运算结果y也变为‘001100’。
暂时估计值x中3个位置上发生差错,除了上述矩阵α的第1列和第2列以外,第3列的元素也变为‘1’。此时,矩阵α的第1列的元素‘1’与矩阵β的第1列中的各行的元素相乘。同样地,矩阵α的第2列的元素‘1’与矩阵β的第2列中的各行的元素相乘,矩阵α的第3列的元素‘1’与矩阵β的第3列中的各行的元素相乘。矩阵β的第3列的元素为‘1’的原因是第4行、第5行,乘法运算结果γ将2个位置发生差错的情况下的乘法运算结果γ‘001100’的第3列和第4列的元素反转,从而如图6(d)所示变为‘000000’。由此引起,如上述在图5中所示,乘法运算结果y也变为‘000000’,其结果,不可能进行差错的检测。
暂时估计值x的3个位置发生了差错时,乘法运算结果γ为‘000000’的原因是,矩阵β的第3行、第4行、第5行和第6行的各自行中在2个位置存在‘1’。即,在矩阵β中与差错发生位置相乘的位置上是元素‘1’时,与该元素‘1’存在的行对应的乘法运算结果γ的列的‘0’或‘1’产生反转。这里,矩阵β的第3行、第4行、第5行和第6行中在2个位置存在‘1’,所以在3个位置上发生差错时乘法运算结果γ的第3列、第4列、第5列和第6列的元素分别发生2次反转而变为‘0’。即,对差错发生位置乘以所有的线性从属的列时,不可能进行差错检测。在本实施方式,说明了在原来的数据中,在为‘0’的位置发送差错,从而变为‘1’的情况。即使是在原来的数据为‘1’的位置发生差错而变为‘0’的情况,在乘法运算结果中的元素‘1’和‘0’发生反转上没有改变,可以与上述情况同样地说明。
作为消除不能进行这种差错检测的问题的对策,可考虑通过使尽可能多的数的列中线性从属关系成立的列包含在校验矩阵中,从而使可检测的差错的数也增加。但是,校验矩阵是‘1’的数比‘0’的数少的稀疏矩阵,所以线性从属关系不容易成立,在线性从属成立的列的数上也有限制。
这里,如果配置线性从属的列而构成校验矩阵,以即使在哪个位置发生差错,也不对该位置乘以所有的线性从属的列,则可进行差错的检测。以下,说明本实施方式中的这样的校验矩阵的构成方法。
使用图7和图8,说明本实施方式的校验矩阵的构成的概念。这里,说明有关用于猝发差错的检测的校验矩阵的构成。图7和图8是着眼于图2所示的PRML解码单元320和LDPC重复解码单元322的图。PRML解码单元320对从图1所示的盘介质50被再现的数据进行PRML解码。如上述那样,一般地,在被PRML解码过的数据中,容易发生猝发差错。LDPC重复解码单元322使校验矩阵对PRML解码过的数据起作用。
在图7和图8中,PRML解码单元320和LCPC重复解码单元322的下面所示的用○和×表示的列是被PRML解码过的数据序列的一部分。○是在该数据序列中通过PRML解码而未发生差错的位置,×是通过PRML解码发生了差错的位置。如图7和图8所示,在通过PRML解码而被解码出的数据中,发生了5个位置连续的猝发差错。LDPC重复解码单元322的下面所示的矩阵是校验矩阵。在图7和图8中,示出了校验矩阵中所包含的3列。这3列具有线性从属关系。在校验矩阵中,假设在这3列以外,与作为线性从属的列的组合不存在。在图7中,这3列被相互地相邻配置。另一方面,在图8中,这3列被配置在相互分离的位置。
在图7中,在使校验矩阵对信号起作用时,假设这3列与用虚线连接表示的数据的×标记的位置、即与差错发生位置分别对应。即,在LDPC重复解码单元322中,校验矩阵中包含的所有线性从属的列与差错发生位置相乘。如上述那样,这种情况不能检测它们的差错。
另一方面,在图8中,线性从属的3列在校验矩阵中被配置在相互分离的位置,在线性从属的3列中,与差错发生位置对应的有2列,另外1列与未发生差错的位置对应。即,在与校验矩阵中的差错发生位置对应的5个位置,被配置相互线性独立的列、即不是线性从属的列。这种情况下,所有线性从属的列没有与差错发生位置相乘,所以可进行差错的检测。即,如果通过将这些列相互分离配置而构成校验矩阵,以在猝发差错中与连续的差错的数相同数的列中不包含全部的线性从属的列,则可以检测猝发差错。
配置校验矩阵中的线性从属的列的位置,可以根据猝发差错的特性而决定。例如,在将通过纵向记录方式或垂直记录方式而记录在盘介质50中的数据通过PRML解码法进行解码的情况下,一般地,在解码后的数据中发生的猝发差错中,已知连续的差错的位数大致在10位以下。此时,通过配置线性从属的列而构成校验矩阵,以使相邻的10列中不包含全部的线性从属的列,从而可以大体上检测在通过PRML解码而在被解码的信号中发生的猝发差错。
此外,即使不能检测全部的差错图案,但作为差错的检测结果,设置可容许的范围,也可以构成校验矩阵,以使差错的检测结果在该容许范围内。例如,在上述PRML解码过的数据中,很少发生10位那样长的图案的猝发差错,在发生的全部的差错中,约百分之九十的差错是5位左右的差错图案。这里,如果能够检测这些差错,则可以容许作为检测结果。因此,为了全部检测5位以内的差错图案,构成校验矩阵,以在相邻的5列中不包含全部的线性从属的列。由此,与还为了对发生频度低的9位或10位的长的差错图案进行检测,而构成校验矩阵,以使相邻的10列中不包含全部的线性从属的列的情况比较,可以容易地构成校验矩阵。此外,如果使用这样构成的校验矩阵就可以获得可容许的差错检测结果,则可以确保差错检测的精度的水平。
使用图9说明上述那样的校验矩阵的构成方法。这里,以检测5位以下的猝发差错作为目的。即,无论在校验矩阵的哪个位置相互相邻的5列中,需要不包含全部的线性从属的列。首先,以在相邻的5列中不包含全部的线性从属的列来构成块。接着,重复进行将该块在行方向上循环移位所得的块在列方向上依次连接的作业而构成校验矩阵。这里,即使对于夹置了各块的边界的5列,其中也不包含全部的线性从属的列。在循环移位进行了一循环时,连接最初构成的块,与第1循环同样,重复进行将循环移位的块依次连接的作业,直至达到校验矩阵的列的数为止。
图9是表示通过该方法构成的校验矩阵的图。校验矩阵400是6行37列的矩阵,由块A、B、C、D、E、F的6个块和a1的一个列构成。此外,如该图所示,块A由a1、a2、a3、a4、a5和a6的6个列构成。块B~F也同样分别由b1~b6、c1~c6、d1~d6、e1~e6、f1~f6的6个列构成。再有,在该图中,在校验矩阵400的下侧表示列的号码。
下面说明校验矩阵的构成的过程。首先,将a1~a6的6列在列方向上排列而构成块A。这里,a1、a3和a6是线性从属的列。再有,在块A中,假设通过这3列以外,线性从属关系不成立。在将a1~a6排列时,如该图所示,以在相邻的5列中不包含线性从属的这3列而分离配置。接着,将块A在行方向上循环移位而构成块B,并连接配置在块A的最终列a6上。由于将块A在行方向上循环移位,所以块A的第1行的元素相当于块B的第6行的元素。此外,块A的第2行~第5行相当于从块B的第1行至第5行。即,b1、b3、b6是将a1、a3、a6各自在行方向上循环移位。a1、a3和a6是线性从属的列,将它们在行方向循环移位所得的b1、b3和b6也是线性从属的列。即,即使在块B中,在相邻的5列中也不包含线性从属的列b1、b3、b6。再有,例如,从第6列至第10列的5列中a6、b1和b3跨越包含在块A和块B中,但留意到块的边界而构成块,所以在这些列之间线性从属关系不成立。
同样地,即使对于块C~F,重复进行依次在行方向进行循环移位而连接的作业。在块A~F被连接的状态下,构成6行36列的矩阵。然后,作为校验矩阵400的第37列,配置作为块A的第1列的a1。在通过以上过程所构成的校验矩阵400中,在哪个位置的相邻的5列中都不包含全部的线性从属的列。由此,如果是连续5位为止的猝发差错,则可以检测该猝发差错的发生。
在本实施方式的校验矩阵400的构成方法中,如果以在构成各块的6列中相邻的5列中不包含全部的线性从属的列来构成,则通过上述规定的过程,可构成校验矩阵400。由此,由于不需要考虑在校验矩阵400中的全部的列中的相邻的5列中不包含全部的线性从属的列的结构,所以可以容易地构成校验矩阵400。
在本实施方式,校验矩阵中包含的各块包含了线性从属的列,而作为变形例,在各块中也可以不包含线性从属的列,仅包含线性独立的列。由此,由于校验矩阵中的列全部由线性独立的列构成,所以可以省略将线性从属的列分离配置的作业。
在本实施方式,为了说明有关猝发差错的检测,而将线性独立的列相邻配置。但是,被检测的差错不限于此。如果将线性独立的列配置在与信号中差错发生频度高的位置对应的位置而构成校验矩阵,则可进行对容易发生周期性差错的信号的差错检测。此外,通过将尽可能多的数下线性从属关系成立的列包含在校验矩阵中,可以检测许多差错。
在本实施方式,说明了有关将本发明的信号解码装置应用于LDPC编码的解码的例子,但应用的对象不限于此,只要是使用了矩阵的解码,就可以应用。
在本实施方式,作为在磁盘装置中应用的例子进行了说明,但应用的对象不限于此,可应用于光盘存储装置、光磁盘存储装置等、作为将编码的信号存储的存储装置,读取信号时进行解码的装置。此外,可应用于在接收被编码发送的信号时进行解码的通信系统。
权利要求
1.一种信号解码方法,在将属于输入信号序列的被编码的信号解码时,使矩阵对该被解码的信号序列起作用,从而提高解码精度,其特征在于,在s、t成为s≥t≥2的自然数时,作为所述矩阵,使用从该矩阵提取出的s列中t列以下的列之间为线性独立的关系的矩阵,所述s列是在所述被解码的信号序列中被乘以差错发生频度比较高的信号的列。
2.一种信号解码方法,在将属于输入信号序列的被编码的信号解码时,使矩阵对该被解码的信号序列起作用,从而提高解码精度,其特征在于,在s、t成为s≥t≥2的自然数时,作为所述矩阵,使用从该矩阵提取出的s列中t列以下的列之间为线性独立的关系的矩阵,所述s列是所述矩阵中相邻的列。
3.一种信号解码方法,在将属于输入信号序列的被编码的信号解码时,使m行n列(m和n为m、n≥2的自然数)的矩阵对该被解码的信号序列起作用,从而提高解码精度,其特征在于,所述矩阵包含列方向上被连接的m行s列(s为n>s的自然数)的第1和第2部分矩阵,第1和第2部分矩阵,其s列中t列(t为s≥t≥2的自然数)以下的列之间为线性独立的关系。
4.一种信号解码装置,其特征在于,包括单位解码单元,取得输入信号序列,并在将属于该输入信号序列的被编码的信号解码时,执行该被解码的信号序列和矩阵的乘法运算,在s、t成为s≥t≥2的自然数时,作为所述矩阵,所述单位解码单元使用从该矩阵提取的s列中t列以下的列之间为线性独立的关系的矩阵,所述s列是在所述被解码的信号序列中被乘以差错发生频度比较高的信号的列。
5.如权利要求4所述的信号解码装置,其特征在于,所述t的值根据解码时不能检测的、在属于被解码的信号序列的信号中产生的差错的容许限度而确定。
6.如权利要求4所述的信号解码装置,其特征在于,所述单位解码单元使用低密度奇偶校验码解码被编码的信号。
7.一种信号解码装置,其特征在于,包括单位解码单元,取得输入信号序列,并在将属于该输入信号序列的被编码的信号解码时,执行该被解码的信号序列和矩阵的乘法运算,在s、t成为s≥t≥2的自然数时,作为所述矩阵,所述单位解码单元使用从该矩阵提取的s列中t列以下的列之间为线性独立的关系的矩阵,所述s列是在所述矩阵中相邻的列。
8.如权利要求7所述的信号解码装置,其特征在于,所述t的值根据解码时不能检测的、在属于被解码的信号序列的信号中产生的差错的容许限度而确定。
9.如权利要求7所述的信号解码装置,其特征在于,所述单位解码单元使用低密度奇偶校验码解码被编码的信号。
10.一种信号解码装置,其特征在于,包括单位解码单元,取得输入信号序列,并在将属于该输入信号序列的被编码的信号解码时,执行该被解码的信号序列和m行n列(m和n为m、n≥2的自然数)的矩阵的乘法运算,所述矩阵包含列方向上被连接的m行s列(s为n>s的自然数)的第1和第2部分矩阵,第1和第2部分矩阵,其s列中t列(t为s≥t≥2的自然数)以下的列之间为线性独立的关系。
11.如权利要求10所述的信号解码装置,其特征在于,所述t的值根据解码时不能检测的、在属于被解码的信号序列的信号中产生的差错的容许限度而确定。
12.如权利要求10所述的信号解码装置,其特征在于,所述单位解码单元使用低密度奇偶校验码解码被编码的信号。
13.如权利要求10所述的信号解码装置,其特征在于,第2部分矩阵具有对第1部分矩阵的元素附加了规定的移位处理的关系。
14.如权利要求11所述的信号解码装置,其特征在于,所述移位处理是行的置换。
15.一种信号存储系统,具有写通道和读通道,其特征在于,所述写通道包括第1编码单元,对数据进行行程编码;第2编码单元,对由所述第1编码单元编码后的数据使用低密度奇偶校验码再次进行编码;以及写入单元,将由所述第2编码单元编码后的数据写入存储装置,所述读通道包括读取单元,从所述存储装置读取由所述第2编码单元编码后的数据;软输出检测单元,计算由所述读取单元读取出的数据的似然,从而输出软判定值;与第2编码单元对应的第2解码单元,对从所述软输出检测单元输出的数据进行解码;以及与所述第1编码单元对应的第1解码单元,对由所述第2解码单元解码后的数据再次进行解码,所述第2解码单元具有在将从所述软输出检测单元输出的数据解码时,执行该解码的数据和矩阵的乘法运算的单位解码单元,在s、t成为s≥t≥2的自然数时,作为所述矩阵,所述单位解码单元使用从该矩阵提取的s列中t列以下的列之间为线性独立的关系的矩阵,所述s列是在所述被解码的数据中被乘以差错发生频度比较高的部分的列。
16.如权利要求15所述的信号存储系统,其特征在于,该系统还包括存储装置,存储规定的数据;以及控制单元,控制对存储装置的数据的写入和来自存储装置的数据的读取,所述读通道根据所述控制单元的指示,读取被存储在所述存储装置中的数据,所述写通道根据所述控制单元的指示,将所述规定的数据写入所述存储装置。
17.如权利要求15所述的信号存储系统,其特征在于,该系统被集成在至少一个半导体基板上。
18.一种信号存储系统,具有写通道和读通道,其特征在于,所述写通道包括第1编码单元,对数据进行行程编码;第2编码单元,对由所述第1编码单元编码后的数据使用低密度奇偶校验码再次进行编码;以及写入单元,将由所述第2编码单元编码后的数据写入存储装置,所述读通道包括读取单元,从所述存储装置读取由所述第2编码单元编码后的数据;软输出检测单元,计算由所述读取单元读取出的数据的似然,从而输出软判定值;与第2编码单元对应的第2解码单元,对从所述软输出检测单元输出的数据进行解码;以及与所述第1编码单元对应的第1解码单元,对由所述第2解码单元解码后的数据再次进行解码,所述第2解码单元具有在将从所述软输出检测单元输出的数据解码时,执行该解码的数据和矩阵的乘法运算的单位解码单元,在s、t成为s≥t≥2的自然数时,作为所述矩阵,所述单位解码单元使用从该矩阵提取的s列中t列以下的列之间为线性独立的关系的矩阵,所述s列是在所述矩阵中相邻的列。
19.如权利要求18所述的信号存储系统,其特征在于,该系统还包括存储装置,存储规定的数据;以及控制单元,控制对存储装置的数据的写入和来自存储装置的数据的读取,所述读通道根据所述控制单元的指示,读取被存储在所述存储装置中的数据,所述写通道根据所述控制单元的指示,将所述规定的数据写入所述存储装置。
20.如权利要求18所述的信号存储系统,其特征在于,该系统被集成在至少一个半导体基板上。
全文摘要
信号解码装置中包含的LDPC单位解码单元包括作为乘法器的奇偶校验单元,该奇偶校验单元执行将被编码的由暂时估计值计算单元算出的暂时估计值和校验矩阵的乘法运算。校验矩阵保持单元将校验矩阵保持。在s、t成为s≥t≥2的自然数时,从该校验矩阵提取出的s列中t列以下的列之间为线性独立的关系。该s列是在暂时估计值中被乘以差错发生频度比较高的位置的列。根据该方式,矩阵构成为包含线性独立的t列,即没有线性从属的t列。由此,在被解码的信号序列中,在t位置发生了差错时,可以避免所有的线性从属列被相乘该差错发生位置,所以正好能够检测发生频度比较高的差错。
文档编号G11B20/18GK1937414SQ20061015431
公开日2007年3月28日 申请日期2006年9月20日 优先权日2005年9月22日
发明者江角淳, 水野秀导 申请人:罗姆股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1