用于二进制和非二进制双解码处理的系统和方法

文档序号:7541703阅读:242来源:国知局
用于二进制和非二进制双解码处理的系统和方法
【专利摘要】公开了用于二进制和非二进制双解码处理的系统和方法。本发明涉及向正在处理的数据集应用两种或更多种数据解码算法的系统和方法。
【专利说明】用于二进制和非二进制双解码处理的系统和方法
【技术领域】
[0001]本发明涉及执行数据处理的系统和方法,并且更具体地涉及向正在处理的数据集应用两种或更多种数据解码算法的系统和方法。
【背景技术】
[0002]数据处理电路通常包括数据检测器电路和数据解码器电路。在一些情况下,通过数据检测器电路和数据解码器电路二者形成很多通路,以试图恢复原始写入的数据。每个通过数据检测器电路和数据解码器电路二者的通路可以包括通过数据解码器的多个迭代。在一些情况下,所允许的通过数据解码器和数据检测器电路的迭代次数可能不会产生正确的结果。
[0003]因此,至少出于上述原因,本领域中存在用于数据处理的高级系统和方法的需要。
【发明内容】

[0004]本发明涉及执行数据处理的系统和方法,并且更具体地涉及对正在处理的数据集应用两种或更多种数据解码算法的系统和方法。
[0005]本发明的各个实施例提供包括采样缓冲器和数据检测器电路的数据处理系统。采样缓冲器可操作地用来保持与非二进制代码字对应的采样集。数据解码器电路可操作地用来:向由采样集导出的解码器输入应用非二进制数据解码算法以产生非二进制解码输出;向解码器输入应用二进制数据解码算法以产生二进制解码输出;确定与非二进制解码输出对应的未满足校验的第一数量;确定与二进制解码输出对应的未满足校验的第二数量;至少部分地基于未满足校验的第一数量和未满足校验的第二数量来选择二进制解码输出和非二进制解码输出中的一个作为所选解码结果。数据处理系统可以作为例如存储设备或者接收设备来实现。在各种情况下,数据处理系统作为集成电路的一部分来实现。在一种或更多种情况下,数据解码器电路是低密度奇偶校验电路。
[0006]在上述实施例的一些实例中,非二进制解码输出是第一非二进制解码输出,并且二进制解码输出是第一二进制解码输出。在这些实例中,数据解码器电路可以进一步可操作地用来:在所选解码结果的指导下向解码器输入再次应用非二进制数据解码算法以产生第二非二进制解码输出;以及在所选解码结果的指导下向解码器输入再次应用二进制数据解码算法以产生第二二进制解码输出。
[0007]在上述实施例的各种实例中,非二进制数据解码算法的应用使用非二进制H矩阵,并且二进制数据解码算法的应用使用二进制H矩阵。在一些情况下,确定与非二进制解码输出对应的未满足校验的第一数量包括:将非二进制解码输出与二进制H矩阵相乘以产生等效二进制数。在上述实施例的一种或更多种实例中,非二进制代码字中的每个符号表示2N个模式,N是每个符号中的非零比特数量;并且应用二进制数据解码算法包括将非二进制代码字当做具有单比特符号来处理。在上述实施例的特定实例中,当未满足校验的第二数量少于未满足校验的第一数量时,选择二进制解码输出,和/或当未满足校验的第一数量少于未满足校验的第二数量时,选择非二进制解码输出。
[0008]本发明的其它实施例提供了方法,包括:向解码器输入应用非二进制数据解码算法以产生非二进制解码输出;向解码器输入应用二进制数据解码算法以产生二进制解码输出;确定与非二进制解码输出对应的未满足校验的第一数量;确定与二进制解码输出对应的未满足校验的第二数量;至少部分地基于未满足校验的第一数量和未满足校验的第二数量来选择二进制解码输出和非二进制解码输出中的一个作为所选解码结果。
[0009]本
【发明内容】
仅仅提供根据本发明一些实施例的概要。根据以下详细描述、所附权利要求和附图,本发明的许多其它目的、特征、优点和其它实施例将变得更加完全地明了。
【专利附图】

【附图说明】
[0010]通过参考本说明书剩余部分所描述的附图,可以实现对本发明各个实施例的进一步理解。附图中,可以在多幅附图中始终使用相似的附图标记来指相似的组件。在一些情况下,包含小写字母的子标记与附图标记相关联,以指明多个相似组件中的一个。当在没有指定现有子标记的情况下对附图标记进行引用时,其意在指所有这样的多个相似组件。
[0011]图1显示了包括根据本发明一个或更多个实施例的具有二进制和非二进制双解码电路的读通道的存储设备;
[0012]图2显示了包括根据本发明一些实施例的具有二进制和非二进制双解码电路的接收器的数据传输设备;
[0013]图3描述了根据本发明一些实施例的具有二进制和非二进制双解码电路的数据处理电路;以及
[0014]图4a_4c是显示根据本发明一些实施例的用于二进制和非二进制双解码处理的方法的流程图。
【具体实施方式】
[0015]本发明涉及执行数据处理的系统和方法,并且更具体地涉及对正在处理的数据集应用两种或更多种数据解码算法的系统和方法。
[0016]本发明的各个实施例提供当期望延迟处理时对数据解码处理的改进。当数据处理电路的处理需求出现下降时,这样的延迟处理完成,从而允许在此前未收敛的数据集上应用其它未使用的处理资源。例如,可能由于从存储介质访问数据时磁道的改变或者数据传输设备的传输结束而出现数据处理电路的处理需求的这种下降,所述磁道的改变或者传输结束导致引入到数据解码处理中的数据容量的减少。基于在此所提供的公开内容,本领域技术人员将认识到可能导致数据处理电路的使用不足的各种情形。还应当注意到,所改进的解码处理还可以应用在不包括使用不足的其它情形中。
[0017]在本发明的特定实施例中,数据处理电路包括:硬判决输出电路,接收由数据解码器电路处理的数据集并且在传输到接收方之前缓存已处理的数据集;以及采样缓冲器,保持与已处理的数据集对应的未检测/未解码数据集。当进行非延迟或者标准处理时,硬判决输出电路运行以按照标准的方式向接收方提供数据集。当标准处理收敛失败时,可以在采样缓冲器中保持数据集并且可以在硬判决输出电路中保持当前解码输出以等待延迟处理期间的改进处理。在延迟处理期间,向数据集应用二进制和非二进制解码处理二者以确定哪一个处理产生最少的未满足校验。选择产生最少未满足校验的二进制解码或者非二进制解码的结果以指导数据检测算法和/或数据解码算法的后续应用。
[0018]转向图1,显示了根据本发明一些实施例的包括具有二进制和非二进制双解码电路的读通道电路110的存储系统100。存储系统100可以例如是硬盘驱动器。存储系统100还包括前置放大器170、接口控制器120、硬盘控制器166、马达控制器168、主轴马达172、盘片(disk platter) 178和读/写头组件176。接口控制器120控制到/来自盘片178的数据的寻址和时序。盘片178上的数据由当读/写头组件176适当地位于盘片178上时可以由读/写头组件176检测的一组磁信号构成。在一个实施例中,盘片178包括依据纵向或者垂直的记录方案来记录的磁信号。
[0019]在典型的读操作中,通过马达控制器168将读/写头组件176精确地定位于盘片178的期望数据磁道上。马达控制器168不仅相对于盘片178定位读/写头组件176,并且还在硬盘控制器166的指导下通过移动读/写头组件到盘片178的适当数据磁道来驱动主轴马达172。主轴马达172以确定的旋转速度(RPM)旋转盘片178。一旦将读/写头组件176放置于邻近适当的数据磁道,则随着主轴马达172旋转盘片178,读/写头组件176读取表示盘片178上的数据的磁信号。将所读取的磁信号作为表示盘片178上的磁数据的连续、微小模拟信号来提供。将该微小模拟信号从读/写头组件176经由前置放大器170传输到读通道电路110。前置放大器170可操作地用来放大从盘片178存取的微小模拟信号。进而,读通道电路110解码和数字化所接收的模拟信号,以重现原始写入盘片178的信息。将该数据作为读数据103提供给接收电路。写操作基本上与在前读操作相反,其中写数据101被提供给读通道电路110。接着编码该数据并且将其写入盘片178。
[0020]在操作期间,使用标准处理从盘片178读取数据并且对其进行处理。这样的标准处理可以使用二进制数据解码或者非二进制数据解码中的一种来完成。在一些情况下,使用标准处理来处理的一个或更多个数据集会收敛失败。在此情况下,将未收敛数据集和该未收敛数据集不可用的指示作为输出来提供,并且在数据处理系统中保持未收敛数据集和相应的未检测/未编码数据集,以用于延迟处理期间的额外处理。该延迟处理期间可以是(例如)读/写头组件176从当前磁道移动到另一个磁道的时间期间。在该延迟处理期间,访问未收敛数据集和相应未检测/未解码数据集的组合,以用于再处理。再处理包括根据显示用于后续处理的最少数量的剩余未满足校验的结果选择,执行数据二进制数据解码和非二进制数据解码二者。在本发明的一些实施例中,可以使用与下面关于图3所述的数据处理电路类似的数据处理电路,和/或可以与下面关于图4a-4c所述的那样类似地来完成处理。
[0021]应当注意到,可以将存储系统100结合到在诸如(例如)基于RAID (廉价磁盘冗余阵列或者独立磁盘冗余阵列)的存储系统的较大存储系统中。这样的RAID存储系统通过冗余(将多个磁盘组合为一个逻辑单元)来增加稳定性和可靠性。数据可以分布在根据多种算法而被包含在RAID存储系统中并且操作系统可以将其作为单个磁盘来访问的多个磁盘上。例如,可以将数据镜像到RAID存储系统中的多个磁盘上,或者可以按照多种技术将数据分段并且分布在多个磁盘上。如果RAID存储系统中的少量磁盘发生故障或者变得不可用,则可以使用错误校正技术基于来自RAID存储系统中其它磁盘的剩余数据部分来重现丢失数据。RAID存储系统中的磁盘可以是(但不限于)诸如存储系统100的单个存储系统,并且可以相互靠近或者为了增加安全性而分布得更广。在写操作中,将写数据提供给控制器,其在磁盘上存储写数据(例如通过镜像或者通过条带化(stripe)写数据)。在读操作中,控制器从磁盘获取数据。控制器接着将RAID存储系统作为单个磁盘来产生所生成的读数据。
[0022]与读通道电路110相关地使用的数据解码器电路可以是(但不限于)本领域已知的低密度奇偶校验(LDPC)解码器电路。这样的低密度奇偶校验技术可应用于通过任何虚拟通道的信息传输或者任何虚拟介质上的信息存储。传输应用包括(但不限于)光纤、射频通道、有线或者无线局域网、数字用户线路技术、无线蜂窝、经由诸如铜或光纤的任何介质的以太网、诸如有线电视的有线通道和地球卫星通信。存储应用包括(但不限于)硬盘驱动器、光盘、数字视频磁盘、磁带和诸如DRAM、NAND闪存、NOR闪存、其它非易失性存储器和固态驱动器的存储器设备。
[0023]转向图2,显示了根据本发明一些实施例的包括具有二进制和非二进制双解码电路的接收器220的数据传输设备200。数据传输系统200包括本领域中已知的能够通过传输介质230发射编码信息的发射器210。通过接收器220从传输介质230接收编码数据。
[0024]在操作期间,通过接收器220从传输介质230接收数据并且使用标准处理对其进行处理。在一些情况下,使用标准处理来处理的一个或更多个数据集会收敛失败。这样的标准处理可以使用二进制数据解码或者非二进制数据解码中的一种来完成。在此情况下,将未收敛数据集和该未收敛数据集不可用的指示作为输出来提供,并且在数据处理系统中保持未收敛数据集和相应的未检测/未编码数据集,以用于延迟处理期间的额外处理。该延迟处理期间可以是(例如)还没通过传输介质230接收数据的时间期间。在该延迟处理期间,访问未收敛数据集和相应未检测/未解码数据集的组合,以用于再处理。再处理包括根据显示用于后续处理的最少数量的剩余未满足校验的结果选择,执行数据二进制数据解码和非二进制数据解码二者。在本发明的一些实施例中,可以使用与下面关于图3所述的数据处理电路类似的数据处理电路,和/或可以与下面关于图4a-4c所述的那样类似地来完成处理。
[0025]转向图3,显示了根据本发明一些实施例的具有二进制和非二进制双解码电路的数据处理电路300。数据处理电路300包括接收模拟输入308的模拟前端电路310。模拟前端电路310处理模拟输入308并且将已处理模拟信号312提供给模数转换器电路315。模拟前端电路310可以包括(但不限于)本领域中已知的模拟滤波器和放大器电路。基于在此所提供的公开内容,本领域技术人员将认识到可以作为模拟前端电路310的一部分来包括的各种电路。在一些情况下,从与存储介质(未示出)相关地布置的读/写头组件(未示出)导出模拟输入308。在其它情况下,从可操作地用来从传输介质(未示出)接收信号的接收器电路(未示出)导出模拟输入308。传输介质可以是有线的或者无线的。基于在此所提供的公开内容,本领域技术人员将认识到可以导出模拟输入308的各种源。
[0026]模数转换器电路315将已处理模拟信号312转换为相应的一系列数字米样317。模数转换器电路315可以是本领域中已知的能够产生与模拟输入信号对应的数字采样的任何电路。基于在此所提供的公开内容,本领域技术人员将认识到可以与本发明的不同实施例相关地使用的各种模数转换器电路。将数字采样317提供给均衡器电路320。均衡器电路320向数字采样317应用均衡算法以产生均衡输出322。在本发明的一些实施例中,均衡器电路320是本领域中已知的数字有限冲激响应滤波器电路。
[0027]将均衡输出322提供给数据检测器电路325并且提供给采样缓冲器电路375。采样缓冲器电路375将均衡输出322作为缓冲数据377来存储,以用于随后通过数据检测器电路325的迭代。数据检测器电路325可以是本领域中已知的能够产生检测输出327的任何数据检测器电路。作为一些示例,数据检测器电路325可以是(但不限于)本领域中已知的Viterbi算法检测器电路或者最大后验检测器电路。注意,在其最宽泛的含义上使用通用短语“Viterbi数据检测算法”或者“Viterbi算法数据检测器电路”,以指包括(但不限于)双向Viterbi检测算法或者双向Viterbi算法检测器电路的任何Viterbi检测算法或Viterbi算法检测器电路或者其变形。同样,在其最宽泛的含义上使用通用短语“最大后验数据检测算法”或者“最大后验数据检测器电路”,以指包括(但不限于)简化的最大后验数据检测算法和max-log最大后验数据检测算法或者相应检测器电路的任何最大后验检测算法或者检测器电路或者其变形。基于在此所提供的公开内容,本领域技术人员将认识到可以与本发明的不同实施例相关地使用的各种数据检测器电路。检测输出327可以包括硬判决和软判决。在其最宽泛的含义上使用术语“硬判决”和“软判决”。特别是,“硬判决”是指示预期原始输入值(例如,二进制“I”或者“0”,或者非二进制数字值)的输出,而“软判决”指示相应的硬判决正确的似然性。基于在此所提供的公开内容,本领域技术人员将认识到可以与本发明的不同实施例相关地使用的各种硬判决和软判决。
[0028]将检测输出327提供给操作地用来对数据检测器电路325和数据解码器电路350之间传递的数据进行缓冲的中央队列存储器电路360。在一些情况下,中央队列存储器电路360包括本领域中已知的交织(即,数据混洗)和解交织(即,数据去混洗)电路。当数据解码器电路350可用时,数据解码器电路350从中央队列存储器电路360将检测输出327作为解码器输入356来访问。数据解码器电路350向解码器输入356应用数据解码算法,以试图恢复原始写入数据。数据解码器电路350可操作地用来在由延迟处理信号395的无效(de-assertion)所指示的标准处理期间向解码器输入356应用非二进制数据解码算法。使用提供矩阵输出396的非二进制H矩阵397向数据解码器电路350应用非二进制数据解码算法。
[0029]相对照地,数据解码器电路350可操作地首先向解码器输入356应用非二进制数据解码算法,并且随后在延迟处理期间向解码器输入356应用二进制数据解码算法。使用提供矩阵输出398的二进制H矩阵394向数据解码器电路350应用二进制数据解码算法。这样的延迟处理由延迟处理信号395的断言来指示。每次断言延迟处理输入392时通过数据处理控制器电路390断言延迟处理信号395,并且每次延迟处理输入392无效时延迟处理信号395无效。当数据处理电路300的处理需求出现下降时可以断言延迟处理输入392。处理需求的这种下降可以(例如)因为读取存储介质时磁道的改变或者数据传输设备的传输结束而出现。基于在此所提供的公开内容,本领域技术人员将认识到可能导致数据处理电路300的使用不足的各种情形。
[0030]在标准处理期间,一旦完成非二进制数据解码算法的应用,就从数据解码器电路350提供所产生的非二进制解码输出352。类似于检测输出327,解码输出352可以包括硬判决和软判决二者。例如,数据解码器电路350可以是本领域中已知的能够向所接收的输入应用解码算法的任何数据解码器电路。数据解码器电路350可以是(但不限于)本领域中已知的低密度奇偶校验(LDPC)解码器电路或者ReedSolomon解码器电路。基于在此所提供的公开内容,本领域技术人员将认识到可以与本发明的不同实施例相关地使用的各种数据解码器电路。当原始数据被恢复(即,数据解码算法收敛)或者超时条件出现时,将解码输出352存储到硬判决输出电路380中所包含的存储器。进而,硬判决输出电路380将收敛的解码输出352作为数据输出384提供给接收方(未示出)。接收方可以是(例如)可操作地接收已处理数据集的接口电路。基于在此所提供的公开内容,本领域技术人员将认识到可以与本发明的不同实施例相关地使用的各种接收方。当在超时条件之前原始数据没有被恢复(即,数据解码算法收敛失败)时,如下面更加具体地描述的那样,解码输出352指示数据不可用,并且类似地将数据输出384标识为不可用。
[0031]可以通过数据检测器电路325和数据解码器电路350的组合进行一次或更多次迭代,以试图在原始写入数据集上收敛。通过数据检测器电路和数据解码器电路二者的处理被称为“全局迭代”。相对照地,通过数据解码器电路的每次通过被称为“局部迭代”。对于第一次全局迭代,数据检测器电路325在没有解码输出的指导的情况下向均衡输出322应用数据检测算法。对于后续的全局迭代,数据检测器电路325依照解码输出352的指导向缓冲数据377应用数据检测算法。将解码输出352作为解码器输出354存储到中央队列存储器电路360,并且从中央队列存储器电路360作为检测器输入329来提供。
[0032]在每次全局迭代期间,数据解码器电路350可以进行一次或更多次包括向解码器输入356应用数据解码算法的局部迭代。对于第一次局部迭代,数据解码器电路350在没有解码输出352的指导的情况下应用数据解码器算法。对于后续的局部迭代,数据解码器电路350依照在前解码输出352的指导向解码器输入356应用数据解码算法。所允许的局部迭代次数可以是(例如)10次。基于在此所提供的公开内容,本领域技术人员将认识到根据本发明的不同实施例可以允许的各种不同的局部迭代次数。当数据解码器电路350的局部迭代次数超过所允许的次数,但确定在数据集的标准处理期间允许至少一次额外的全局迭代时,将解码输出352作为解码输出354提供回中央队列存储器电路360。在中央队列存储器电路360中保持解码输出354,直到数据检测器电路325变得可用来执行额外处理。
[0033]相对照地,当数据解码器电路350的局部迭代次数超过所允许的次数并且确定对于该数据集而言已经超过所允许的全局迭代次数和/或超时或者存储器使用要求特定数据集的处理的结束时,数据集的标准处理结束并且将解码输出和输出不可用的指示作为数据输出352来提供。在数据集的标准处理已经结束的这种情况下,在硬判决输出电路380的存储器中存储未收敛的数据集(即,作为数据输出352来提供),并且将与未收敛的数据集对应(即,保持在采样缓冲器电路375中)的采样数据在采样缓冲器电路375中保持至少一个定义期间,所述定义期间用于等待通过延迟处理输入392的断言的延迟处理的指示。此外,识别未收敛的数据集和相应的采样数据以用于保持信号391的断言所指示的延迟处理。再次,延迟处理由延迟处理输入392的断言来通知。
[0034]在延迟处理输入392的断言所指示的延迟处理期间,如来自数据处理控制器电路390的控制输出376所指示的那样,访问采样数据集中与采样缓冲器电路375中保留的在前未收敛数据集对应的一个。此外,数据处理控制器电路390向数据解码器电路350和硬判决输出电路380断言延迟处理信号395。数据检测器电路325向针对延迟处理而识别的并且如控制输出376所指示的那样来访问的采样集再次应用数据检测算法,以产生检测输出327。将检测输出327存储到中央队列存储器电路360。一旦数据解码器电路350变得可用,则数据解码器电路350将检测输出327从中央队列存储器电路360作为解码器输入356来访问。数据解码器电路350访问此前存储到硬判决输出电路380的相应解码输出382,并且在解码输出382的指导下使用来自非二进制H矩阵397的矩阵输出396向解码器输入356应用非二进制解码算法,以产生存储到延迟处理期间大量未使用的硬判决输出电路380中的存储器的非二进制解码输出352。随后,数据解码器电路350在解码输出382的指导下使用来自二进制H矩阵394的矩阵输出398向解码器输入356应用二进制解码算法,以产生存储到延迟处理期间(再次)大量未使用的硬判决输出电路380中的存储器的二进制解码输出352。注意,根据本发明的其它实施例,应用二进制解码算法和非二进制解码算法的顺序可以相反。
[0035]数据解码器电路350接着将与硬判决输出电路380的存储器中保持的非二进制解码输出对应的硬判决与二进制H矩阵394相乘,以产生多个二进制未满足校验。从非二进制结果获得二进制未满足校验的这种处理是本领域中已知的。参见示例,F.J.Macwilliams等,“The Theory of Error Correction Codes”,North-Holland 出版公司,第 106 页。出于全部目的,上述参考文献的全部内容在此通过引用而并入。接下来,将从非二进制解码输出得到的二进制未满足校验的该数量与应用二进制解码输出所产生的二进制解码输出中剩余的未满足校验的数量进行比较。当与应用非二进制解码算法的结果相关联的二进制未满足校验的数量少于与应用二进制解码算法的结果相关联的二进制未满足校验的数量时,则保留非二进制解码算法的结果,以用于指导未来的数据检测和/或数据解码。否则,保留二进制解码算法的结果,以用于指导未来的数据检测和/或数据解码。
[0036]当允许通过数据解码器电路350的另一次局部迭代时,则由保留的数据解码结果来指导应用二进制数据解码算法和非二进制数据解码算法二者的上述处理。重复该处理,直到以下中的任一个:二进制数据解码算法或非二进制数据解码算法收敛,已经完成了针对当前全局迭代的最大数量的局部迭代,或者满足超时条件。当满足超时条件时,报告错误。当用尽最大数量的全局迭代时,可能满足错误条件。基于在此所提供的公开内容,本领域技术人员将认识到可以认为已经满足超时条件的各种其它情况。当已经满足局部迭代的最大数量时,在保留结果的指导下向来自采样缓冲器电路375的数据输入应用数据检测算法,并且再次开始解码处理。当二进制数据解码算法或者非二进制数据解码算法收敛时,将收敛结果作为数据输出来提供。
[0037]转向图4a_4c,流程图400、445、470显示了根据本发明一些实施例的用于二进制和非二进制双解码处理的方法。转向图4a并且沿着流程图400,接收模拟输入(块405)。可以从(例如)存储介质或者数据传输通道导出模拟输入。基于在此所提供的公开内容,本领域技术人员将认识到模拟输入的各种源。将模拟输入转换为一系列数字采样(块410)。该转换可以使用本领域中已知的模数转换器电路或者系统来完成。注意,可以使用本领域中已知的能够将模拟信号转换为表示所接收的模拟信号的一系列数字值的任何电路。对所产生的数字采样进行均衡以产生均衡输出(块415)。在本发明的一些实施例中,使用本领域中已知的数字有限冲激响应电路来完成均衡。基于在此所提供的公开内容,本领域技术人员将认识到根据本发明不同实施例的可以用来替代这类数字有限冲激响应电路来执行均衡的各种均衡器。缓存均衡输出(块420)。[0038]确定延迟处理是否是期望的(块425)。当数据处理电路的处理需求出现下降时选择该延迟处理。处理需求的这种下降可以(例如)因为读取存储介质时磁道的改变或者数据传输设备的传输结束而出现。基于在此所提供的公开内容,本领域技术人员将认识到可能导致数据处理电路的使用不足的各种情形。
[0039]当延迟处理并非期望时(块425),应用标准处理。该标准处理包括选择来自缓冲器的下一个均衡输出以用于处理(块430)。可以根据本领域中已知的任何数据处理电路选择算法来完成该选择。将数据检测算法应用到所选的均衡输出,以产生检测输出(块435),并且将检测输出(或者其导出值)存储到中央存储器电路(块440)。接着从中央存储器访问该存储数据以用于标准处理的执行(流程图445)。根据图4b的流程图445来完成该标准处理。
[0040]当延迟处理是期望的时(块425),应用延迟处理。该延迟处理包括选择来自缓冲器的下一个延迟处理均衡输出以用于处理(块450)。延迟处理均衡输出选自于标准处理期间收敛失败的一个或更多个数据集。将要应用到当前处理数据集的剩余全局迭代数量被设置成等于延迟全局最大数量(块480)。在本发明的一些实施例中,延迟全局最大数量是二十(20)。将数据检测算法应用到所选的延迟处理均衡输出,以产生检测输出(块485),并将检测输出(或者其导出值)存储到中央存储器电路(块490)。接着从中央存储器访问该存储数据以用于延迟处理的执行(图4c的流程图495)。
[0041]转向图4b,流程图445显示了上述标准处理的实现。沿着流程图445,确定解码器电路是否可用于处理在前存储的检测输出(块401)。当解码器电路可用时(块401),选择检测输出的下一个导出值以用于处理并且从中央存储器电路访问检测输出的下一个导出值(块406)。通过数据解码器电路向所选的检测输出应用非二进制数据解码算法的第一次局部迭代,以产生非二进制解码输出(块411)。
[0042]接下来,确定非二进制解码输出是否收敛(即,产生正确结果)(块416)。当解码输出收敛时(块416),将非二进制解码输出提供给硬判决输出缓冲器(块421)。接着确定硬判决输出缓冲器是否准备好卸载(块456)。在一些情况下,当最近完成的解码输出是此前被作为数据输出来提供的解码输出之后的下一个解码输出时,硬判决输出缓冲器准备好卸载。当硬判决输出缓冲器准备卸载时(块456),将硬判决输出缓冲器中保持的所有连续解码输出作为数据输出提供给接收方设备(块461)。基于在此所提供的公开内容,本领域技术人员将认识到可以与本发明的不同实施例相关地使用的各种接收方设备。
[0043]替代地,当非二进制解码输出收敛失败时(块416),确定局部迭代计数是否已经超过局部迭代限制(块426)。该局部迭代限制可以是(例如)十(10)次局部迭代。当还没有超过局部迭代的数量时(块426),向当前处理数据集再次应用数据解码算法以用于由非二进制解码输出所指导的后续局部迭代,以产生更新的非二进制解码输出(块431)。接着重复在块416开始的处理。
[0044]替代地,当已经超过针对当前处理全局迭代的局部迭代的数量时(块426),确定已经向当前处理数据集应用的全局迭代的最大数量(块436)。当(例如)已经出现超时条件或者已经超过存储器使用限制时,可能完成全局迭代的数量。当没有完成全局迭代时(块436),将非二进制解码输出作为标准输出存储到中央存储器,等待后续全局迭代的处理(块441)。替代地,当完成了全局迭代时(块436),将当前处理数据集识别为用于延迟处理(即,延迟处理期间的处理)(块446),并且将非二进制解码输出作为标记成不可用的数据输出来提供(块451)。
[0045]转向图4c,流程图495显示了上述延迟处理的实现。沿着流程图495,确定解码器电路是否可用于处理在前存储的检测输出(块402)。当解码器电路可用时(块402),选择针对延迟处理而生成的检测输出的下一个导出值(即,在块446针对延迟处理而识别的)以进行处理并且从中央存储器电路来访问该导出值(块407)。选择非二进制解码(412),并且依照在前所选解码结果的指导使用非二进制H矩阵向检测输出的导出值应用非二进制解码算法,以产生非二进制解码输出(块417)。对于延迟处理的第一次局部迭代,在前所选解码结果是来自块451的输出缓冲器中存储的非二进制解码输出。对于后续局部迭代,在前所选解码结果是非二进制解码输出(块482)或者二进制解码输出(块477)中选择的一个。
[0046]确定非二进制解码输出是否收敛(B卩,产生正确结果)(块422)。当非二进制解码输出收敛时(块422),将非二进制解码输出作为数据输出来提供并且开始对后续数据集的另一个全局迭代操作(块432)。否则,当非二进制解码输出收敛失败时(块422),存储非二进制解码输出以用于未来的使用(块427)。可以在(例如)输出缓冲器、中央存储器缓冲器或者输入缓冲器的未使用部分存储非二进制解码输出。此外,将非二进制解码输出中的未满足校验转换为二进制未满足校验(块437)。例如,这可以通过将与非二进制解码输出对应的硬判决与二进制H矩阵相乘以产生多个二进制未满足校验来完成。从非二进制结果获得二进制未满足校验的这种处理是本领域中已知的。参见示例,F.J.Macwilliams等,“The Theory of Error Correction Codes”,North-Holland 出版公司,第 106 页。
[0047]接下来,选择二进制解码(块442),并且依照在前选择解码结果的指导使用二进制H矩阵向检测输出的导出值应用二进制解码算法,以产生二进制解码输出(块447)。对于延迟处理的第一次局部迭代,在前所选解码结果是来自块451的输出缓冲器中存储的非二进制解码输出。对于后续局部迭代,在前所选解码结果是非二进制解码输出(块482)或者二进制解码输出(块477)中选择的一个。注意,尽管流程图495显示了非二进制解码(块417)在二进制解码(块447)之前,但在本发明的其它实施例中,二进制解码可以在非二进制解码之前。在本发明的又一其它实施例中,二进制解码可以与非二进制解码并行地完成。
[0048]确定二进制解码输出是否收敛(B卩,产生正确结果)(块452)。当二进制解码输出收敛时(块452),将二进制解码输出作为数据输出来提供并且开始对后续数据集的另一个全局迭代操作(块462)。否则,当二进制解码输出收敛失败时(块452),存储二进制解码输出以用于未来的使用(块457)。可以在(例如)输出缓冲器、中央存储器缓冲器或者输入缓冲器的未使用部分中存储二进制解码输出。
[0049]将与非二进制解码输出(块437)对应的二进制满足校验的数量与二进制解码输出(块467)中的二进制未满足校验的数量(USC)进行比较。当与非二进制解码输出对应的二进制未满足校验的数量大于与二进制解码器输出对应的二进制未满足校验的数量时(块472),将来自块447的二进制解码输出选择为所选的解码结果(块477)。否则,当与非二进制解码输出对应的二进制未满足校验的数量少于或者等于与二进制解码器输出对应的二进制未满足校验的数量时(块472),将来自块417的非二进制解码输出选择为所选的解码结果(块482)。
[0050]接下来,确定是否允许另一次局部迭代(块487)。当允许另一次局部迭代时(块487),使用最新选择的解码结果重复于块412开始的处理。否则,当不允许另一次局部迭代时(块487),确定是否允许另一次全局迭代(块492)。当不允许另一次全局迭代时(块492),指示错误并且开始对后续数据集的处理(块499)。否则,当允许另一次全局迭代时(块492),在所选解码结果的指导下向所选的延迟处理均衡输出应用数据检测算法,以产生更新的检测输出(块497),并且对于同一数据集重新开始于块402开始的处理。
[0051]应当注意到,上面应用中所述的各种块可以与其它功能一同以集成电路来实现。这样的集成电路可以包括给定块、给定系统或者给定电路的全部功能,或者仅仅包括块、系统或电路的子集。而且,可以跨越多个集成电路来实现块、系统或者电路的元件。这样的集成电路可以是本领域中已知的任何类型的集成电路,包括(但不限于)单片集成电路、倒装芯片集成电路、多芯片模块集成电路和/或混合信号集成电路。还应当注意到,可以以软件或者固件来实现在此所述的块、系统或者电路的各种功能。在一些这样的情况下,可以使用其软件或者固件以等同方式来实现整个系统、块或者电路。在其它情况下,可以以软件或者固件来实现给定系统、给定块或者给定电路的一部分,而以硬件来实现其它部分。
[0052]总之,本发明提供了新的用于数据处理的系统、设备、方法和布置。尽管以上给出了本发明一个或更多个实施例的详细描述,但对于本领域技术人员而言,在不脱离本发明实质的前提下,各种替代、修改和等同形式将是明了的。因此,以上描述不应当被用来限制本发明的范围,本发明的范围由所附权利要求来限定。
【权利要求】
1.一种数据处理系统,所述数据处理系统包含: 采样缓冲器,可操作地用来保持与非二进制代码字对应的采样集; 数据解码器电路,可操作地用来: 向由所述采样集导出的解码器输入应用非二进制数据解码算法,以产生非二进制解码输出; 向所述解码器输入应用二进制数据解码算法,以产生二进制解码输出; 确定与所述非二进制解码输出对应的未满足校验的第一数量; 确定与所述二进制解码输出对应的未满足校验的第二数量; 至少部分地基于所述未满足校验的第一数量和所述未满足校验的第二数量来选择所述二进制解码输出和所述非二进制解码输出中的一个作为所选解码结果。
2.如权利要求1所述的数据处理系统,其中所述非二进制解码输出是第一非二进制解码输出,其中所述二进制解码输出是第一二进制解码输出,其中所述数据解码器电路进一步可操作地用来: 在所述所选解码结果的指导下向所述解码器输入再次应用所述非二进制数据解码算法,以产生第二非二进制解码输出;以及 在所述所选解码结果的指导下向所述解码器输入再次应用所述二进制数据解码算法,以产生第二二进制解码输出。
3.如权利要求1所述的数据处理系统,其中使用非二进制H矩阵来应用所述非二进制数据解码算法,并且其中使 用二进制H矩阵来应用所述二进制数据解码算法。
4.如权利要求3所述的数据处理系统,其中确定与所述非二进制解码输出对应的未满足校验的第一数量包含: 将所述非二进制解码输出与所述二进制H矩阵相乘,以产生等效二进制数。
5.如权利要求1所述的数据处理系统,其中所述非二进制代码字中的每个符号表示2N个模式,其中N是每个符号中的非零比特数量;并且其中应用所述二进制数据解码算法包括将所述非二进制代码字当做具有单比特符号来处理。
6.如权利要求1所述的数据处理系统,其中当所述未满足校验的第二数量少于所述未满足校验的第一数量时,选择所述二进制解码输出。
7.如权利要求1所述的数据处理系统,其中当所述未满足校验的第一数量少于所述未满足校验的第二数量时,选择所述非二进制解码输出。
8.如权利要求1所述的数据处理系统,其中所述系统进一步包含: 数据检测器电路,可操作地用来向所述采样集应用数据检测算法,以产生检测输出,其中由所述检测输出导出所述解码器输入。
9.如权利要求8所述的数据处理系统,其中所述数据检测器电路选自以下所构成的组中=Viterbi算法数据检测器电路,和最大后验数据检测器电路。
10.如权利要求1所述的数据处理系统,其中所述数据解码器电路是低密度奇偶校验电路。
11.如权利要求1所述的数据处理系统,其中所述数据处理系统作为从以下所构成的组中所选择的设备的一部分来实现:存储设备和接收设备。
12.如权利要求1所述的数据处理系统,其中所述数据处理系统作为集成电路的一部分来实现。
13.—种方法,所述方法包含: 向解码器输入应用非二进制数据解码算法,以产生非二进制解码输出; 向所述解码器输入应用二进制数据解码算法,以产生二进制解码输出; 确定与所述非二进制解码输出对应的未满足校验的第一数量; 确定与所述二进制解码输出对应的未满足校验的第二数量;以及至少部分地基于所述未满足校验的第一数量和所述未满足校验的第二数量来选择所述二进制解码输出和所述非二进制解码输出中的一个作为所选解码结果。
14.如权利要求13所述的方法,其中所述非二进制解码输出是第一非二进制解码输出,其中所述二进制解码输出是第一二进制解码输出,其中所述方法进一步包含: 在所述所选解 码结果的指导下向所述解码器输入再次应用所述非二进制数据解码算法,以产生第二非二进制解码输出;以及 在所述所选解码结果的指导下向所述解码器输入再次应用所述二进制数据解码算法,以产生第二二进制解码输出。
15.如权利要求14所述的方法,其中使用非二进制H矩阵来应用所述非二进制数据解码算法,并且其中使用二进制H矩阵来应用所述二进制数据解码算法。
16.如权利要求15所述的方法,其中确定与所述非二进制解码输出对应的未满足校验的第一数量包含: 将所述非二进制解码输出与所述二进制H矩阵相乘,以产生等效二进制数。
17.如权利要求13所述的方法,其中当所述未满足校验的第二数量少于所述未满足校验的第一数量时,选择所述二进制解码输出;以及当所述未满足校验的第一数量少于所述未满足校验的第二数量时,选择所述非二进制解码输出。
18.如权利要求13所述的方法,其中所述方法进一步包含: 向采样集应用数据检测算法,以产生检测输出,其中由所述检测输出导出所述解码器输入。
19.一种存储设备,所述存储设备包含: 存储介质; 头组件,相对于所述存储介质设置并且可操作地用来提供与所述存储介质上的信息对应的读取信号; 读通道电路,包括: 模拟前端电路,可操作地用来提供与所述读取信号对应的模拟信号; 模数转换器电路,可操作地用来对所述模拟信号进行采样,以产生一系列数字采样; 均衡器电路,可操作地用来对所述数字采样进行均衡,以产生采样集; 采样缓冲器,可操作地用来保持所述采样集; 数据解码器电路,可操作地用来: 向由所述采样集导出的解码器输入应用非二进制数据解码算法,以产生非二进制解码输出; 向所述解码器输入应用二进制数据解码算法,以产生二进制解码输出; 确定与所述非二进制解码输出对应的未满足校验的第一数量;确定与所述二进制解码输出对应的未满足校验的第二数量; 至少部分地基于所述未满足校验的第一数量和所述未满足校验的第二数量来选择所述二进制解码输出和所述非二进制解码输出中的一个作为所选解码结果。
20.如权利要求19所述的存储设备,其中所述非二进制解码输出是第一非二进制解码输出,其中所述二进制解码输出是第一二进制解码输出,其中所述数据解码器电路进一步可操作地用来: 在所述所选解码结果的指导下向所述解码器输入再次应用所述非二进制数据解码算法,以产生第二非二进制解码输出;以及 在所述所选解码结果的指导下向所述解码器输入再次应用所述二进制数据解码算法,以产生第二二进制解码 输出。
【文档编号】H03M7/06GK103427843SQ201310130775
【公开日】2013年12月4日 申请日期:2013年4月16日 优先权日:2012年5月17日
【发明者】张帆, 王昌立, 夏海涛, 杨少华 申请人:Lsi公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1