N维错误校正码的高效解码

文档序号:54606 发布日期:2021-09-28 浏览:8次 >En<

阅读说明:本技术 N维错误校正码的高效解码 (Efficient decoding of N-dimensional error correction codes ) 是由 保罗·爱德华·汉纳姆 大卫·麦尔康·西蒙斯 法兰西斯科·乔治欧 于 2019-12-20 设计创作,主要内容包括:各种实施方案涉及用于使用错误校正编码来维持SSD装置中的数据的完整性及可靠性的系统及方法。根据特定方面,对于具有包含两个或多于两个子码的ECC码的数据帧,当一个子解码器未在使用中时,所述子解码器可用于起始对另一帧的解码。通过使所述帧在子解码器之间进行“交错”及交替,可以高效方式同时对两个或多于两个帧进行解码。此可明显地扩展到更多子码(即,大于二的维度)。(Various implementations relate to systems and methods for maintaining the integrity and reliability of data in an SSD device using error correction coding. According to a particular aspect, for a frame of data having an ECC code including two or more sub-codes, one sub-decoder may be used to initiate decoding of another frame when the sub-decoder is not in use. By &#34;interleaving&#34; and alternating the frames between sub-decoders, two or more frames can be decoded simultaneously in an efficient manner. This can be extended significantly to more subcodes (i.e., dimensions greater than two).)

N维错误校正码的高效解码

技术领域

本公开一般来说涉及用于保持存储器系统(例如,固态驱动器(SSD))的数据完整性及可靠性的系统及方法。

背景技术

传统非易失性存储器控制器包含错误校正码(ECC)解码器,所述ECC解码器经配置以校正来自存储器系统(例如SSD)中的非易失性存储器装置的数据。举例来说,具有多个存储器信道(例如,4个、8个、16个等存储器信道)的多信道控制器通常具有专用信道ECC解码器(每信道一个),以提供高带宽、独立并行操作。可通过“汇集(pooling)”ECC解码器以供由所有信道使用而获得经改进效率,举例来说如美国申请案第16/125,283号中所描述,所述美国申请案的内容以其全文引用的方式并入本文中。然而,在效率及其它方面的更进一步改进是合意的。

发明内容

在特定方面中,本发明实施方案涉及用于使用错误校正编码来维持SSD装置中的数据的完整性及可靠性的系统及方法。根据特定方面,对于具有包含两个或多于两个子码的ECC码的数据帧,当一个子解码器未在使用中时,所述子解码器可用于起始对另一帧的解码。通过使所述帧在子解码器之间进行“交错”及交替,可以高效方式同时对两个或多于两个帧进行解码。在将子解码器汇集的情况下,帧的交错及交替并不限制于源自单个存储器信道的帧,这是因为来自不同存储器信道的帧可在子解码器之间进行交错。此可明显地扩展到更多子码(即,大于二的维度)。

附图说明

图1是图解说明常规二维错误解码的方面的图式;

图2是图解说明常规二维错误解码的其它方面的图式;

图3是图解说明根据实施例的二维错误解码的方面的图式;

图4是图解说明根据实施例的可实施错误解码的实例性方法的流程图;

图5展示根据一些实施方案的用于校正来自SSD装置的非易失性存储器装置的数据的系统的框图;

图6是图解说明根据实施例的可使用例如图5中所图解说明的系统的系统来执行的错误解码的方面的图式;及

图7展示根据一些实施方案的用于校正来自SSD装置的非易失性存储器装置的数据的过程的流程图。

具体实施方式

根据特定一般方面,本发明实施例涉及存储于存储器装置(例如SSD)中的数据的可靠性,且特定来说与此存储器装置的非易失性存储器控制器有关。非易失性存储器的类型包含NAND快闪存储器、NOR快闪存储器、磁性RAM(MRAM)、电阻式RAM(RRAM)、相变存储器(PCM)及电池支持的易失性存储器。

如上文所陈述,常规非易失性存储器控制器包含ECC解码器,所述ECC解码器经配置以校正来自存储器系统(例如SSD)中的非易失性存储器装置的数据。在其它方面,本申请人认识到许多ECC码包含多个子码。举例来说,称作乘积码的一种类型的错误校正码将一串数据位形成为n维位阵列且将ECC奇偶校验(即,子码)添加到每一维度。在最简单情形中,每一维度由单独子解码器依序解码,希望先前解码将帮助后续解码。这些乘积码中的许多乘积码将针对每一子码使用不同ECC类型(例如汉明(Hamming)、里德-索罗门(Reed Solomon)(RS)、博斯-查德胡里-霍昆格姆(Bose Chaudhuri Hocquengheim)(BCH)及低密度奇偶校验码(LDPC)),且因此针对每一子码需要不同ECC解码器,其中整体解码在子解码器之间交替。

举例来说,在其中使用两个子码的乘积码(即,二维码)中,通常为每一读取信道提供一对ECC子解码器,例如子解码器Dec_1及Dec_2。乘积解码是迭代的,其中用于错误编码包或帧的解码过程通常包含由Dec_1执行的帧的解码轮次,后续接着由Dec_2执行的帧的解码轮次,后续接着由Dec_1执行的帧的另一解码轮次、由Dec_2执行的帧的另一解码轮次,以此类推。每一解码轮次的结果可用于帮助帧的每一后续解码轮次。继续进行此交替序列直到完全解码包或帧而无错误为止(即,在最后子解码Dec_1或Dec_2之后,此后包或帧已被完全解码而无错误)。应注意,此交替序列中的“轮次”的数目可为预定的或其可为可变数目(可能达到特定预定阈值,此后帧可被视为“未解码”或错误帧)。

图1是图解说明常规ECC解码的这些及其它方面的图式。如图1中所展示,在控制器处(举例来说)从一或多个非易失性存储器装置接收一串位104。所述串位包含位的顺序帧或包,例如F_1、F_2、F_3等。这些帧各自布置成二维位阵列,其中ECC奇偶校验子码添加到每一维度。还可存在奇偶校验编码的奇偶校验位,其中每一行中的奇偶校验位形成阵列的额外列(数目取决于每一行中的奇偶校验位的数目);替代地,每一列中的奇偶校验位形成将被编码的阵列的额外行。举例来说,一种编码形式利用F_1展示为二维数据位阵列110,针对额外列具有水平子码奇偶校验位112、垂直子码奇偶校验位114及垂直子码奇偶校验位116。因此,举例来说,在将帧布置成16或32行数据位及每行128列数据位的情况下,将针对所述行存在16或32组奇偶校验位或子码且针对所述列存在128组奇偶校验位或子码。

控制器包含ECC解码器102,所述ECC解码器包含子解码器Dec_1及Dec_2,所述子解码器中的每一者分别专用于解码帧中的特定子码(例如,Dec_1解码行的子码,而Dec_2解码列的子码)。如上文所陈述,子解码器Dec_1及Dec_2可对彼此不同类型的码(例如,BCH、LDPC等)进行操作。如图1的实例中所展示,解码器102依序且个别地作用于每一帧F_1、F_2、F_3等上,使得两个子解码器一起对单个帧工作,直到成功地解码整个帧然后才工作以解码下一帧,即使已在控制器处接收到所述下一帧。因此,帧F_1、F_2及F_3一次一个地被依次独立解码。换句话说,直到已完全解码帧F_1才开始对帧F_2进行解码(即使已接收到帧F_2),且直到已完全解码帧F_2才开始对帧F_3进行解码(即使已接收到帧F_3)。

图2是图解说明常规ECC解码的其它方面的图式。如此实例中所展示,二维乘积码包含子解码器Dec_1及Dec_2。子解码器Dec_1花费时间DT_1来执行解码且子解码器Dec_2花费时间DT_2。假定DT_2<DT_1,如由Dec_1及Dec_2的矩形的不同相应宽度所指示,其中较大宽度对应于较长解码时间。两个帧F_1及F_2分别在时间T1及T2连续到达解码器。在此实例中,帧F_1采用Dec_1及Dec_2两者的三个轮次来完全解码且F_2采用Dec_1及Dec_2两者的四个轮次来解码。

图2的实例展示常规情形,其中子解码器两者均专用于在T1开始解码F_1,而在到达T2之后暂停对F_2的解码。对F_1的解码在子解码器Dec_1与子解码器Dec_2之间交替达尽可能多的轮次以使F_1被成功地解码(在此实例中,三个轮次)。接着,一旦在时间T3完全解码F_1,对F_2的解码便可起始。对F_2的解码类似地以子解码器Dec_1与子解码器Dec_2的尽可能多的交替轮次继续进行以使F_2在时间T4被成功地解码(在此实例中,四个轮次)。

除其它之外,本申请人认识到,对于具有两个或多于两个子码的ECC码(例如图2中所展示的ECC码),当一个子解码器未在使用中时,可使用其它子解码器来起始对另一帧的解码。通过使帧在子解码器之间进行“交错”及交替,可同时解码两个或多于两个帧。此原理可明显地扩展到大于二的任何维度N的更多N维子码。

图3展示根据本发明实施例的特定方面的对于更充分利用的子解码器的可能性。在此实例中,同时解码两个帧,其中所述对(Dec_1与Dec_2)的两个子解码器在至少一些时间并行使用,借此增加整体解码过程的效率。

更特定来说,如图3中所展示,当帧F_1到达T1时,所述帧首先被提供到子解码器Dec_1,如在常规实例中。然而,当帧F_2到达T2时,由于子解码器Dec_1已完成F_1的解码轮次,因此帧F_2被立即提供到子解码器Dec_1以进行解码轮次。同时,在T2,F_1同时被提供到子解码器Dec_2。接着,在F_2已由子解码器Dec_1在T3b完成解码轮次之后,帧F_1与F_2在子解码器Dec_1与Dec_2之间交换,且此过程继续进行直到在时间T4b已完全解码F_1及F_2两者为止。

将图2中所展示的常规方案与根据图3中的实施例的实例性方案相比,常规地从帧F_1到达T1起,F_1花费总时间3*(DT_1+DT_2)来成功地解码且从帧F_2到达T2起,F_2花费6*DT_1+7*DT_2来成功地解码。而且从F_1到达T1一直到在T4b成功解码F_1及F_2两者的总经过时间是7*(DT_1+DT_2)。

通过比较方式,在具有图3中的更充分利用的子解码器的情况下,从F_1到达T1起,成功解码F_1花费5*DT_1+DT_2。同时,从F_2到达时间T2起,成功解码F_2花费6*DT_1+DT_2。因此,在F_1到达T1与在T4b成功解码F_1及F_2两者之间的总经过时间是7*DT_1+DT_2。因此,用于F_1解码的时间在新情形中稍微较长。然而,随着DT_2逐渐接近于DT_1,差异减小。此外,利用新方案解码F_2所花费的时间明显较短且利用新方案解码F_1及F_2两者所花费的总经过时间明显短6*DT_2。这些增益随着DT_2趋向于DT_1而增加且在DT_1=DT_2时实现最优化。

图4是图解说明可用于实施本发明实施例的以上及其它方面(例如结合图3所图解说明的方面)的实例性方法的流程图。

在框402中,子解码器Dec_1及Dec_2均为空闲的且信道等待读取数据。

在框404中,帧F_1到达且被提供到子解码器Dec_1以进行解码轮次。

在图4的实例中,框406与408可至少部分地同时发生以实现本发明实施例的效率。在框406中,在F_1解码达子解码器Dec_1的第一迭代之后,将F_1提供到子解码器Dec_2以进行第一迭代。同时,帧F_2到达且Dec_1一完成解码F_1的第一迭代,便将帧F_2提供到子解码器Dec_1以进行解码的第一迭代。

同样在此实例中,框410与412可至少部分地同时发生。在框410中,在F_2解码达子解码器Dec_1的第一迭代之后,将F_2提供到子解码器Dec_2以进行解码的第一迭代。同时,帧F_1已被解码达Dec_2的第一迭代且被提供到子解码器Dec_1以进行子解码的另一迭代。

进一步同样在此实例中,框414与416可至少部分地同时发生。在框414中,在F_1解码达子解码器Dec_1的最终迭代之后,将F_1传递出。同时,帧F_2由子解码器Dec_2完成解码轮次且被提供到子解码器Dec_1以进行子解码的另一迭代。

在由子解码器Dec_1进行的最终处理轮次(在框418中)、接着由子解码器Dec_2进行的最终处理轮次(在框420中)之后,F_2的完全解码完成。

结合图2到图4所描述的以上实施例可在其中每一存储器信道包含专用解码器的实例性存储器系统中实施。在将在下文中更详细描述的其它实施例中,可利用“经汇集”子解码器及仲裁器来建构其它有利实例,举例来说如美国申请案第16/125,283号中所描述。

根据将在下文更明了的特定方面,包含“经汇集”子解码器的实施例使得可在乘积解码情形中调整Dec_1及Dec_2子解码器的相应数量,以便避免必须提供相同数目M个两种子解码器来同时高效地乘积解码M个包的蛮力及低效方式。如将描述,可根据被同时解码所需或所要的包数目以及Dec_1及Dec_2子解码器的相应解码时间(举例来说)而调整子解码器Dec_1的数量与Dec_2的数量之间的比率。

图5是图解说明根据这些“经汇集”子解码器实施例的实例性系统的框图。更特定来说,图5展示根据一些实施方案的用于维持来自非易失性存储器装置520a到520n的数据的可靠性及/或完整性的系统500的框图。系统500可包括SSD装置的部分。在一些布置中,SSD装置可包含于数据中心(为简洁起见,未展示)中的类似或其它类型的存储装置的机架中。然而,实施例的原理不限于此实例性实施方案。

系统500包含非易失性存储器装置520a到520n及控制器510。可使用处理器、逻辑、固件及/或软件(例如,包含但不限于专用集成电路(ASIC)、现场可编程门阵列(FPGA)及单芯片系统(SOC))以各种方式来实施控制器510。非易失性存储器装置520a到520n的实例包含但不限于NAND快闪存储器装置、NOR快闪存储器装置、磁性RAM(MRAM)、电阻式RAM(RRAM)、相变存储器(PCM)及电池支持的易失性存储器。非易失性存储器装置520a到520n为快闪存储器且可包含一或多个个别非易失性裸片。因此,非易失性存储器装置520a到520n是指SSD装置内的多个非易失性存储器装置或裸片。非易失性存储器装置520a到520n可经由相应读取信道525a到525n而传递存储于其中的数据。读取信道525a到525n是数据总线,所述数据总线经配置以响应于读取命令(例如,响应于来自数据中心中的主机计算装置(为简洁起见,未展示)的读取请求而由控制器510向非易失性存储器装置520a到520n发布的读取命令)而将存储于非易失性存储器装置520a到520n中的数据传递到控制器510来进行处理。

如所描述,控制器510提供错误处置能力以及为本发明实施例的清晰起见而未进行描述的其它能力。举例来说,存储于非易失性存储器装置520a到520n中的数据可经编码以减少在数据被解码以用于读取时的错误。在写入以进行存储的时间(其中在存储数据的同时,存储器单元利用电荷进行编程)(由于邻近存储的数据的读取/写入或所存储电荷随时间的泄漏)或当读取数据时,可引入错误。特定来说,在控制器510中提供ECC解码器535及550以响应于读取命令而对来自装置520a到520n的数据进行解码及校正。举例来说,在其中ECC方案包含二维乘积码的实例中,控制器510包含由经汇集第一子解码器540a到540p1及经汇集第二子解码器542a到542p2(p1及p2可为相同或不同整数)定义的前线ECC解码器池535。所属领域的技术人员可了解,可在任何给定时间点汇集任何数目个前线ECC解码器及任何类型的子解码器,且其它解码器及/或子解码器池可包含于池535中。无论如何,经汇集前线ECC解码器535以一方式聚合,使得无任何子解码器被提供于读取信道525a到525n中的任一者中或专用于所述读取信道中的任一者。而是,经汇集前线ECC解码器535在读取信道525a到525n当中被共享。一般来说,可在逐帧基础上灵活地指派池中的解码器535中的任一者以解码从任何读取信道525a到525n读取的任何数据帧。

更特定地就此来说,控制器510包含仲裁器530,所述仲裁器经配置以将来自非易失性存储器装置520a到520n的数据路由到池535并在所述池内路由且选择或以其它方式指定经汇集前线ECC解码器535中的一或多者来解码数据。仲裁器530包含用于执行本文中所描述的功能的适合处理及存储器能力。举例来说,仲裁器530可为具有处理器及存储器的处理电路。在一些实施方案中,仲裁器530可利用控制器510的处理能力来实施。在其它实施方案中,仲裁器530可利用专用处理能力来实施。仲裁器530可操作地耦合到读取信道525a到525n以将来自非易失性存储器装置520a到520n的数据(例如,数据帧)路由到池535并在所述池内路由。

在实施例中,由仲裁器530对子解码器的选择或指派具有两个一般方面:(1)对相应数目p1及p2个经汇集子解码器的配置或指派;及(2)将用于解码的个别帧路由到子解码器540及542中的特定子解码器。数目p1及p2可为固定的或其可为可变的。举例来说,数目p1及p2可基于关于子解码器540及542解码给定帧所需的相应平均时间的先验假定,且这些固定数目个子解码器可经分配以用于在由仲裁器530进行的操作期间解码所有帧。在其它实例中,可在操作期间由仲裁器530基于变化的电力或性能要求或者池535中的子解码器的可用性而使数目p1及p2变化。举例来说,为减少具有p1个解码器的池的控制器510的整体电力消耗,仲裁器530可经配置以将一些解码器关闭电源且以减少的数目p1a(p1a<p1)进行操作,接着随后通过将额外解码器通电而以p1b个解码器(p1a<p1b<p1)进行操作来增加性能(由于SSD装置上的经增加读取/写入命令活动)。所属领域的技术人员将能够基于前述描述而实施这些及其它实例。

控制器510包含或可以存取随机存取存储器(RAM)560,所述RAM本身可操作地耦合到仲裁器530、前线ECC解码器池535及后续ECC解码器550。RAM 560经配置以:(1)在等待经汇集前线解码器中的一者变得可用时,或在数据帧从读取信道520a到520n被读取之后,为仲裁器530充当数据帧的缓冲器;(2)在由子解码器540a到540p1或542a到542p2进行子解码之后、等待下一子解码器的选择或可用性之际,为经汇集前线ECC解码器535充当数据帧的缓冲器;或(3)在解码失败之后,为经汇集前线ECC解码器充当数据帧的缓冲器,其中帧被缓冲以准备好由后续ECC解码器550存取。

后续ECC解码器550包含第二线ECC解码器552、第三线ECC解码器554及第四线ECC解码器556。后续ECC解码器550可利用固件来更新或配置。响应于确定前线ECC解码器540a到540n未能对帧进行解码及校正,将所述帧发送到第二线ECC解码器552来进行解码或校正。响应于确定第二线ECC解码器552未能对所述帧进行解码及校正,将所述帧发送到第三线ECC解码器554来进行解码或校正。响应于确定第三线ECC解码器554未能对所述帧进行解码及校正,将所述帧发送到第四线ECC解码器556来进行解码或校正。所属领域的技术人员了解,可实施后续ECC解码器的任何数目个层或线。在DRAM 560中对经解码且经校正帧进行缓冲以供由后续功能存取来处理经解码且经校正帧(为简洁起见,未展示)。在一个实例中,将未能被前线ECC解码器535解码的帧置于DRAM 560中。就此来说,后续ECC解码器550(例如,第二线ECC解码器552及/或第三线ECC解码器554)可用经解码帧来覆写此类失败帧。

在图5中未展示的一些布置中,系统500中的控制器510可为SSD装置中的其它非易失性存储器装置提供一或多个额外前线ECC解码器池,可能以及提供经布置以处置额外解码器池的额外仲裁器。

图6是图解说明可使用图5的实例性控制器510来实施的本发明实施例的方面的图式。

在此实例中,前线解码器的池535经配置以针对每个第二子解码器(例如,542-1)包括三个第一子解码器(例如,540-1到540-3)。此配置基于如下观察:第二子解码器542能够以第一子解码器540所需时间的一小部分(在此实例中,三分之一的时间)对帧进行操作。此可归因于相比于与第二子解码器542相关联的码的复杂性(举例来说),与第一子解码器540相关联的码的复杂性较大。如所展示,控制器510可分别使用第一子解码器5401-1、540-2及540-3开始在T1同时解码三个包F_1、F_2及F_3(例如,同时从三个信道525接收,或依序从一或多个信道525接收并通过仲裁器530而在RAM 560中缓冲成一组三个)。

接着在时间T2,在子解码器540-1、540-2及540-3已完成解码帧F_1、F_2及F_3的轮次之后,仲裁器530可将帧F_1提供到子解码器542-1以进行解码轮次。同时,帧F_2及F_3的进一步解码由仲裁器530暂停。

在时间T3,子解码器542-1已完成帧F_1的解码轮次,因此可由仲裁器530将帧F_1提供回到子解码器540-1。同时在T3,由于子解码器540-2先前已完成帧F_2的解码轮次,因此仲裁器530可将帧F_2提供到子解码器542-1以开始进行解码帧F_2的轮次。

在时间T4,子解码器542-1已完成帧F_2的解码轮次,因此可由仲裁器530将帧F_2提供回到子解码器540-2。同时在T4,由于子解码器540-3先前已完成帧F_3的解码轮次,因此仲裁器530可将帧F_3提供到子解码器542-1以开始进行解码帧F_3的轮次。

在时间T5,子解码器542-1已完成帧F_3的解码轮次,因此可将帧F_3提供回到子解码器540-3。由于所有帧现在正由子解码器540-1、540-2及540-3处理,因此由子解码器542-1进行的处理被仲裁器530暂停。接着在时间T6,子解码器542-1可开始进行解码帧F_1的另一轮次,且在时间T7,子解码器542-1可开始进行解码帧F_2的另一轮次,同时子解码器540-1开始进行解码帧F_1的另一轮次。

在此实例中,在子解码器540与542之间的帧F_1、F_2及F_3中的每一者的解码交替在所述帧被成功地解码之前继续进行达每一子解码器三个轮次。应了解,出于图解说明目的而提供此实例,且在一些实施例中,子解码器540及542中的任一者或两者可需要更少或更多轮次来成功解码任何给定帧。

如可见,总体而言,帧F_1尽可能快地完成解码(即使子解码器542-1需要等待直到子解码器540-1完成对给定帧的解码为止,且反之亦然)。此外,通过“汇集”较快子解码器542-1,或在三个帧F_1、F_2与F_3之间在时间上对所述较快子解码器的使用进行多路复用,控制器510可在使整体解码发生仅一个额外子解码器542-1延迟的情况下解码第二帧F_2。第三帧F_3开始时仅经历子解码器542-1的两个额外延迟,但接着以全速继续进行。仍进一步地,效率已增加,这是因为尽管使用三个第一子解码器,但仅需要一个第二子解码器。

应明了,此方案可经一般化以具有不同比率的第一子解码器与第二子解码器。举例来说,如果第二子解码器可以第一子解码器的三分之二的时间完成解码,那么仲裁器530可分配三个第一子解码器540-1到540-3以及两个第二子解码器542-1及542-2以便高效地使用解码器。

图7是图解说明可用于实施例如图6中所展示的实施例的实施例的实例性方法的流程图。更特定来说,图7展示根据一些实施方案的用于校正来自SSD装置的非易失性存储器装置的数据的过程700的流程图。

参考图5到6,在710处,仲裁器530经由读取信道525到525n而从非易失性存储器装置520a到520n接收数据帧。此时,所有所接收帧尚未由任何ECC解码器进行解码或校正。

在720处,仲裁器530在经汇集前线ECC解码器535当中分配帧。也就是说,在二维乘积码实例中,仲裁器530针对经由信道525a到525n而接收的每一数据帧选择经汇集第一子解码器540a到540p1中的一者及经汇集第二子解码器542a到542p2中的一者。在一些布置中,仲裁器530基于经汇集前线ECC解码器535的可用性以及经汇集第一及第二子解码器的相应配置数目而分配帧,如上文所描述。应注意,可将对具有不包含乘积码的ECC码类型的帧的处理分配到池535中的其它解码器。

在730处,经汇集子解码器540及542对所述帧执行解码轮次。如上文所陈述,此可包含子解码器540及/或542中的特定子解码器同时对所述帧进行操作,而子解码器540及/或542中的其它子解码器在帧之间进行交错或多路复用。

在740处,在由经汇集子解码器540及542进行解码轮次之后,仲裁器530确定是否已完全解码任何帧,或任何帧是否已超出前线解码器的解码能力。如果否,那么过程返回到730,其中执行由解码器540及542中的另一者进行的帧的另一解码轮次。

在750处,仲裁器530确定是否成功地解码及校正帧。关于由经汇集前线ECC解码器535成功解码及校正的帧(750:是),在760处,将经解码帧在DRAM中进行存储及缓冲并标记为成功解码。另一方面,关于未能由经汇集前线ECC解码器535解码或校正的帧(750:否),在770处,经汇集前线ECC解码器535将未解码帧在DRAM中进行存储及缓冲并标记为未解码,以供由后续ECC解码器550存取。如所描述,后续ECC解码器550可包含第二线解码器552、第三线解码器554及第四线解码器556中的一或多者。后续ECC解码器550可对先前未解码且未校正的帧进行解码。

提供先前描述以使得所属领域的技术人员能够实践本文中所描述的各种方面。所属领域的技术人员将容易明了对这些方面的各种修改,且本文中所界定的通用原理可应用于其它方面。因此,权利要求书并不打算限制于本文中所展示的方面,而是应被赋予与语言权利要求书相一致的全部范围,其中以单数形式对一要素的提及并不打算意指“一个且仅一个”(除非具体如此陈述),而是意指“一或多个”。除非另有具体陈述,否则术语“一些”是指一或多个。所属领域的技术人员已知的或后来知晓的在先前描述通篇描述的各种方面的要素的所有结构及功能等效物明确地以引用的方式并入本文中且打算由权利要求书囊括。此外,本文中所揭示的任何内容均不打算致力于公共的,而不管此揭示内容是否明确地陈述于权利要求书中。任何权利要求要素均不应被解释为构件加功能,除非使用短语“用于…的构件”来明确地陈述所述要素。

应理解,所揭示的过程中的步骤的特定次序或层次是说明性方法的实例。基于设计偏好,应理解,可在保持属于先前描述的范围内的同时重新布置过程中的步骤的特定次序或层次。所附方法权利要求书以范例次序呈现各种步骤的要素,而未必意在限于所呈现的特定次序或层次。

提供所揭示实施方案的先前描述以使得所属领域的技术人员能够制作或使用所揭示的标的物。所属领域的技术人员将易于明了对这些实施方案的各种修改,且在本文中所定义的一般原理可在不背离先前描述的精神或范围的情况下应用于其它实施方案。因此,并非打算将先前描述限制于本文中所展示的实施方案,而是将赋予其与本文中所揭示的原理及新颖特征相一致的最宽广范围。

仅作为实例而提供所图解说明及描述的各种实例以图解说明权利要求书的各种特征。然而,关于任何给定实例所展示及描述的特征未必限制于相关联实例,而是可与所展示及描述的其它实例一起使用或组合。此外,权利要求书并非打算由任何一个实例限制。

前述方法描述及处理流程图仅作为说明性实例而提供且并非打算需要或暗示必须以所呈现的次序执行各种实例的步骤。如将由所属领域的技术人员了解,可以任何次序执行前述实例中的步骤的次序。例如“此后”、“接着”、“接下来”等词语并不打算限制步骤的次序;这些词语仅用于引导读者完成方法的描述。此外,以单数形式(举例来说,使用冠词“一(a、an)”或“所述(the))对权利要求要素的任何提及不应被解释为将所述要素限制于单数。

结合本文中所揭示的实例描述的各种说明性逻辑块、模块、电路及算法步骤可实施为电子硬件、计算机软件或此两者的组合。为清晰地图解说明硬件与软件的此可互换性,上文已一般就其功能性而描述各种说明性组件、块、模块、电路及步骤。此功能性是实施为硬件还是软件取决于特定应用及施加于整体系统上的设计约束。所属领域的技术人员可针对每一特定应用以变化的方式实施所描述功能性,但此类实施方案决策不应被理解为导致与本公开的范围背离。

用于实施结合本文中所揭示的实例描述的各种说明性逻辑、逻辑块、模块及电路的硬件可利用通用处理器、DSP、ASIC、FPGA或其它可编程逻辑装置、离散门或晶体管逻辑、离散硬件组件或者经设计以执行本文中所描述的功能的其任何组合来实施或执行。通用处理器可为微处理器,但在替代方案中,处理器可为任何常规处理器、控制器、微控制器或状态机。处理器还可实施为计算装置的组合,例如,DSP与微处理器的组合、多个微处理器的组合、一或多个微处理器连同DSP核心的组合,或者任何其它此配置。替代地,可通过给定功能所特有的电路系统而执行一些步骤或方法。

在一些示范性实例中,所描述的功能可以硬件、软件、固件或其任何组合来实施。如果以软件来实施,那么可将功能作为一或多个指令或代码存储于非易失性计算机可读存储媒体或非易失性处理器可读存储媒体上。非易失性存储器的实例包含但不限于NAND快闪存储器、NOR快闪存储器、磁性MRAM、RRAM、PCM及电池支持的易失性存储器。本文中所揭示的方法或算法的步骤可以处理器可执行软件模块来体现,所述处理器可执行软件模块可驻存于非易失性计算机可读或处理器可读存储媒体上。非易失性计算机可读或处理器可读存储媒体可为可由计算机或处理器存取的任何存储媒体。通过实例而非限制方式,此类非易失性计算机可读或处理器可读存储媒体可包含RAM、ROM、EEPROM、快闪存储器、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置,或者可用于存储呈指令或数据结构形式的所要程序代码且可由计算机存取的任何其它媒体。如本文中所使用,磁盘及光盘包含压缩光盘(CD)、激光光盘、光盘、数字多功能光盘(DVD)、软盘及蓝光光盘,其中磁盘通常以磁性方式复制数据,而光盘利用激光以光学方式复制数据。以上各项的组合也包含于非易失性计算机可读及处理器可读媒体的范围内。另外,方法或算法的操作可作为代码及/或指令中的一者或任一组合或者集驻存于可并入到计算机程序产品中的非易失性处理器可读存储媒体及/或计算机可读存储媒体上。

提供对所揭示实例的前述描述以使得所属领域的技术人员能够制作或使用本公开。所属领域的技术人员将易于明了对这些实例的各种修改,且本文中所定义的一般原理可在不背离本公开的精神或范围的情况下应用于一些实例。因此,本公开并不打算限制于本文中所展示的实例,而是应被赋予与所附权利要求书以及本文中所揭示的原理及新颖特征相一致的最宽广范围。

19页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:具有可配置内部错误校正模式的存储器装置

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!