储存装置及其操作方法

文档序号:8362696阅读:227来源:国知局
储存装置及其操作方法【
技术领域
】[0001]本发明是有关于一种储存装置及其操作方法,且特别是有关于一种可加速错误检查及更正(ErrorCheckingandCorrection,ECC)译码的储存装置及其操作方法。【
背景技术
】[0002]近年来,非易失性(Non-volatile)存储器,例如是闪存(flash)已广泛地应用在各种电子产品中。其中,NAND闪存式固态硬盘(Solid-StateDisk,SSD)即具有相当的潜力。相较于传统的硬盘驱动器(HardDiskDrive,HDD),固态硬盘具有小型化、低耗能以及较佳的随机读取特性。[0003]设计闪存时所要面临到的主要是位错误率(BitErrorRate,BER)的问题。闪存容易产生错误位,且BER会随着编程周期及擦除周期的增加而提高。在此情况下,存储器控制器中的数据译码器将需花费更多的时间以进行输入数据的错误检查以及更正,使得译码速度降低。[0004]因此,如何提供一种可加速ECC译码的储存装置及其操作方法,乃目前业界所致力的课题之一。【
发明内容】[0005]本发明是有关于一种储存装置及其操作方法,可加快ECC译码的速度。[0006]根据本发明一方面,提出一种储存装置的操作方法,包括以下步骤:首先,自第一储存单元的目标地址读取第一数据;接着,通过辅助单元,检查目标地址是否对应于储存在第二储存单元中的第二数据;若目标地址对应于第二数据,辅助单元依据第二数据更正第一数据,以产生更新后数据,更新后数据相较于第一数据具有较少的错误;之后,通过错误更正(ErrorCorrectionCode,ECC)译码器,对更新后数据进行ECC译码,以产生译码后数据。[0007]根据本发明的另一方面,提出一种储存装置,包括第一储存单元、第二储存单元、辅助单元以及ECC译码器;第一储存单元用以储存第一数据于目标地址;第二储存单元用以储存第二数据;辅助单元用以自第一储存单元的目标地址读取第一数据,并检查目标地址是否对应于储存在第二储存单元中的第二数据;若目标地址对应于第二数据,辅助单元依据第二数据更新第一数据,以产生更新后数据,更新后数据相较于第一数据具有较少的错误;ECC译码器用以对更新后数据进行ECC译码,以产生译码后数据。[0008]为了对本发明的上述及其他方面有更佳的了解,下文特举较佳实施例,并配合所附图式,作详细说明如下:【附图说明】[0009]图1绘示依据本发明的一实施例的储存装置的方块图。[0010]图2绘示储存装置的操作方法的流程图。[0011]图3绘示针对19纳米的三阶储存单元的NAND闪存的错误局域性。[0012]图4绘示ECP数据的一例。[0013]图5绘示ECP储存单元的一例。[0014]图6A绘示ECP辅助单元及ECC译码器的一例的方块图。[0015]图6B绘示ECP辅助单元及ECC译码器的一例的方块图。[0016]图6C绘示ECP辅助单元及ECC译码器的一例的方块图。[0017]图7绘示依据本发明的另一实施例的储存装置的方块图。[0018]图8绘示在不同的ECP错误降低比率下,ECC译码器译码时所需的存储器平均感测次数。[0019]图9绘示在不同的ECP错误降低比率下,ECC译码器译码时所需的平均迭代次数。[0020]【符号说明】[0021]100、700:储存装置[0022]102、702:数据储存单元[0023]104、7〇4:ECP储存单元[0024]1〇6、7〇6:ECP辅助单元[0025]108、708:ECC译码器[0026]200:操作方法[0027]202、204、206、208、210:步骤[0028]400:ECP数据[0029]402:ECP条目[0030]404:更正指标字段[0031]406:替代位字段[0032]408:替代位字段[0033]502:快取线[0034]504:有效值字段[0035]506:标签字段[0036]602:更正单元[0037]604:原始数据缓冲器[0038]606:比较单元[0039]608:输入缓冲器[0040]610:译码引擎[0041]612:输出缓冲器[0042]710:ECC编码器[0043]8〇2、8〇4、8〇6、8〇8、9〇2、9〇4、9〇6、9〇8、:曲线[0044]D':用户数据[0045]RD':编码后数据[0046]RD:原始数据[0047]CD:更新后数据[0048]D:译码后数据[0049]E1、E2:ECP数据【具体实施方式】[0050]以下是提出实施例进行详细说明,实施例仅用以作为范例说明,并不会限缩本发明欲保护的范围。此外,实施例中的图式是省略不必要的元件,以清楚显示本发明的技术特点。[0051]请参考图1以及图2。图1绘示依据本发明的一实施例的储存装置100的方块图。图2绘示储存装置100的操作方法200的流程图。储存装置100包括数据储存单元102、错误更正指针(Error-CorrectingPointer,ECP)储存单元104、ECP辅助单元106以及错误检查及更正(ErrorCheckingandCorrection,ECC)译码器108。在本实施例中,数据储存单元102可例如以NAND闪存、相变存储器(Phase-ChangeMemory,PCM)、磁阻随机存取存储器(MagnetoresistiveRandomAccessMemory,MRAM)、电阻型随机存取器(ResistiveRandomAccessMemory,ReRAM)或其它形式的存储器架构来实现。ECP储存单元104可例如以高速缓存(cache)、SRAM、或任意的储存元件来实现,或是实现于数据储存单元102当中。ECP辅助单元106可例如以微处理器、查阅表(lOok-uptable)或其它具备运算能力的电路来实现。ECC译码器可例如以低密度奇偶检查(Low-DensityParity-Check,LDPC)译码器、BCH(Bose-Chaudhuri-Hocquenhem,BCH)译码器或其它形式的软式决策(soft-decision)译码器或其它ECC来实现。[0052]在步骤202,原始数据是读取自数据储存单元102的一目标页地址(pageaddress)。在步骤204,ECP辅助单元106检查此目标页地址是否对应于储存在ECP储存单元104中的ECP数据。若是,则进入步骤206,ECP辅助单元106依据ECP数据更新此原始数据,以产生更新后数据。若否,则进入步骤208,原始数据直接送至ECC译当前第1页1 2 
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1