存储器件、存储系统及其操作方法与流程

文档序号:15076549发布日期:2018-08-01 01:52阅读:138来源:国知局

本申请要求2017年1月23日提交的申请号为10-2017-0010342的韩国专利申请的优先权,其公开内容通过引用整体合并于此。

本专利文件涉及存储器件、包括该存储器件的存储系统及其操作方法。



背景技术:

可以对存储器件(诸如nand快闪存储器和相变随机存取存储器(pcram))的单个存储单元执行的写入操作的次数是有限的。例如,典型pcram中的写入操作的次数可以被限制在从约106次到约108次操作的范围内。因此,当写入操作集中在特定的单元或单元区域时,存储器件的寿命可能急剧缩短。为了防止对存储器件的特定单元或单元区域的写入操作的集中,通常执行损耗均衡操作以均衡对存储器件的所有单元区域的写入操作的性能。针对损耗均衡广泛使用的方法是通过改变逻辑地址与物理地址之间的地址映射来实现存储器件的所有单元区域之间的写入操作的更均匀的分配。

存储器件可以包括被称为存储块的多个存储区域。当用于存储块的写入操作的次数超过阈值时或者当存储块具有物理缺陷时,那么存储块将不能正常操作,并可能产生太多错误。迄今为止,通常,这样的存储块被识别为坏存储块,并且被排除在任何进一步的读取操作和写入操作之外。



技术实现要素:

本发明的各种实施例涉及能够可靠地使用坏存储块(即,不影响已处理数据的可靠性)的改进的存储器件、包括该存储器件的存储系统及其操作方法。

根据一些实施例,一种存储器件可以包括多个正常存储块;以及至少两个或更多个坏存储块,其中,具有与要储存在正常存储块中的数据相同比特位数的数据和具有为要储存在正常存储块中的奇偶校验码的比特位数的至少两倍的比特位数的奇偶校验码被储存在坏存储块之中的第一坏存储块和第二坏存储块中。

第一坏存储块和第二坏存储块可以被一起访问。

当第一坏存储块的第k页、第二坏存储块的第k页可以被一起访问时,k是等于或大于1且等于或小于n的正整数,并且n是第一坏存储块中的页数。

数据和用于校正数据的错误的第一奇偶校验码可以被储存在第一坏存储块的第k页中,而用于校正储存在第一坏存储块的第k页中的数据和第一奇偶校验码的错误的第二奇偶校验码可以被储存在第二坏存储块的第k页中。

根据另外的实施例,一种存储系统的操作方法可以包括:确定对存储器件的坏存储块的写入操作;产生用于校正要储存在坏存储块之中的第一坏存储块中的信息的错误的第一奇偶校验码;将信息写入第一坏存储块的第k页中,其中,k是等于或大于1且等于或小于n的正整数,并且n是第一坏存储块中的页数;以及将第一奇偶校验码写入坏存储块之中的第二坏存储块的第k页中。

信息可以包括数据。

信息还可以包括用于校正数据的错误的第二奇偶校验码。

该操作方法还可以包括:确定对存储器件的坏存储块的读取操作;从第一坏存储块的第k页中读取信息;从第二坏存储块的第k页中读取第一奇偶校验码;以及使用第一奇偶校验码来校正信息的错误。

信息包括数据和用于校正数据的错误的第二奇偶校验码。该操作方法还可以包括在校正信息的错误之后使用第二奇偶校验码来校正数据的错误。

根据另外的实施例,一种存储系统可以包括:存储器件,其包括多个正常存储块和至少两个或更多个坏存储块;以及存储器控制器,其被配置为控制存储器件,其中,存储器控制器包括:正常块纠错单元,其被配置为产生用于校正数据的错误的第一奇偶校验码,其中,第一奇偶校验码与数据一起被储存在坏存储块之中的第一坏存储块中;以及坏块纠错单元,其被配置为产生用于校正数据的错误和第一奇偶校验码的错误的第二奇偶校验码,其中,第二奇偶校验码被储存在坏存储块之中的第二坏存储块中。

第二奇偶校验码的比特位数可以是第一奇偶校验码的比特位数的两倍。

存储器控制器可以一起访问第一坏存储块和第二坏存储块。

当存储器控制器访问第一坏块存储块的第k页时,存储器控制器可以访问第二坏块存储块的第k页,其中,k是等于或大于1且等于或小于n的正整数,并且n是第一坏存储块中的页数。

存储器控制器还可以包括:正常映射表,其被配置为将逻辑存储块映射到正常存储块中,其中,一个逻辑存储块被映射到正常映射表中的一个正常存储块中;坏映射表,其被配置为将逻辑存储块之中在正常映射表中未映射的剩余逻辑存储块映射到坏存储块中,其中,一个逻辑存储块在坏映射表中被映射到至少两个坏存储块;以及坏存储块表,其被配置为储存坏存储块的列表。

存储器控制器还可以包括:主机接口,其被配置为与主机通信;调度器,其被配置为基于主机的请求来确定要被指示给存储器件的操作的顺序;命令发生器,其被配置为产生要被施加到存储器件的命令;损耗均衡单元,其被配置为执行存储器件的损耗均衡操作;以及存储器接口,其被配置为与存储器件通信。

根据另外的实施例,一种存储系统的操作方法可以包括:确定对存储器件的坏存储块的写入操作;将数据和用于校正数据的错误的第一奇偶校验码写入坏存储块之中的第一坏存储块中;以及将用于校正数据的错误和第一奇偶校验码的错误的第二奇偶校验码写入坏存储块之中的第二坏存储块中。

数据和第一奇偶校验码可以被写入第一坏存储块的第k页中,而第二奇偶校验码可以被写入第二坏存储块的第k页中,其中,k是等于或大于1且等于或小于n的正整数,并且n是第一坏存储块中的页数。

该方法还可以包括:确定对存储器件的坏存储块的读取操作;从第一坏存储块中读取数据和第一奇偶校验码;从第二坏存储块中读取第二奇偶校验码;使用第二奇偶校验码来校正数据的错误和第一奇偶校验码的错误;使用第一奇偶校验码来校正数据的错误;以及传送已纠错的数据。

可以从第一坏存储块的第k页中读取数据和第一奇偶校验码,并且可以从第二坏存储块的第k页中读取第二奇偶校验码,其中,k是等于或大于1且等于或小于n的正整数,并且n是第一坏存储块中的页数。

第二奇偶校验码的比特位数可以是第一奇偶校验码的比特位数的两倍。

附图说明

图1a和图1b是示出根据本公开的一个实施例的储存在存储器件的存储块中的信息的示例的示图。

图2a和图2b是示出根据本公开的一个实施例的储存在存储器件的存储块中的信息的另一示例的示图。

图3是示出根据本公开的一个实施例的存储系统的框图。

图4是示出图3中所示的坏存储块表的示图。

图5是示出图3中所示的正常映射表的示图。

图6是示出图3中所示的坏映射表的示图。

图7是示出根据本公开的一个实施例的图3中所示的存储系统的写入操作的流程图。

图8是示出根据本公开的一个实施例的图3中所示的存储系统的读取操作的流程图。

具体实施方式

下面将参照附图来更详细地描述本发明的各种实施例。然而,本公开可以以不同的形式来实施,并且不应被解释为限于本文所阐述的实施例。相反,提供这些实施例使得本公开将是全面和完整的,并且将向本领域技术人员充分地传达本发明的范围。贯穿本公开,在本公开的各个附图和实施例中,相同的附图标记表示相同的部件。

附图不一定按比例绘制,并且在某些情况下,为了更清楚地示出实施例的各种元件,比例可能已经被放大。例如,在附图中,为了便于说明,元件的尺寸和元件之间的间隔与实际尺寸和间隔相比可能被夸大。

除非另外定义,否则鉴于本公开,本文所使用的所有术语(包括技术术语和科学术语)具有与本发明所属领域的普通技术人员通常所理解的相同的含义。还将理解的是,诸如在通用字典中定义的那些术语应该被解释为具有与其在本公开的上下文和相关领域中的含义一致的含义,而将不以理想化的或过于形式化的意义来解释,除非本文明确地如此定义。

在下面的描述中,阐述了大量具体细节以便提供对本发明的透彻理解。本发明可以在无这些具体细节中的一些或全部的情况下来实施。在其他情况下,未详细描述公知的工艺结构和/或工艺,以免不必要地混淆本发明。

还应注意的是,在某些情况下,对相关领域的技术人员明显的是,结合一个实施例描述的元件(也称为特征)可以单独使用或者与另一实施例的其他元件组合使用,除非另外具体指出。

在下文中,将参考附图详细描述本发明的各种实施例。

图1a和图1b是示出根据本公开的一个实施例的储存在存储器件的存储块中的信息的示例的示图。存储器件可以包括多个存储块,并且多个存储块中的每一个存储块可以包括多个页。这里,页可以是对存储器件执行读取操作和写入操作的单元。存储器件可以是图3的存储器件330。存储器件可以包括正常存储块和至少两个坏存储块。

图1a是示出储存在存储器件的正常存储块的一页中的信息的示图。具体地,数据data和用于校正数据data的错误的第一奇偶校验码ecc1可以被储存在正常存储块中。

图1b是示出储存在两个页中的信息的示图,每个页与存储器件的两个坏存储块(即,第一坏存储块和第二坏存储块)的页相对应。数据data和用于校正数据data的错误的第一奇偶校验码ecc1可以像被储存在图1a所示的正常存储块中一样被储存在第一坏存储块中。用于校正在第一坏存储块中储存的信息(即,包括数据data和第一奇偶校验码ecc1的信息)的错误的第二奇偶校验码ecc2可以被储存在第二坏存储块中。

由于在图1a所示的正常存储块中没有发生错误或者发生少量错误,因此可以仅使用第一奇偶校验码ecc1来校正数据data的错误。但是,由于在图1b所示的坏存储块中发生了大量错误,因此第一奇偶校验码ecc1和第二奇偶校验码ecc2两者都被用于纠错。具有与一个正常存储块比特位数相同的比特位数的数据data可以被储存在第一坏存储块和第二坏存储块中。例如,如图2b所示,第二奇偶校验码ecc2可以具有为第一奇偶校验码ecc1的比特位的至少两倍的比特位。在另一示例中,如图1b所示,第二奇偶校验码ecc2可以具有与数据data的比特位数和第一奇偶校验码ecc1的比特位数的总和相对应的比特位数。

图1a中示出,第一奇偶校验码ecc1被储存在正常存储块中。然而,应注意的是,有这样的可能性:第一奇偶校验码ecc1可以不被储存在正常存储块中,而可能仅数据data被储存在正常存储块中。

另外,在另一实施例中,在图1b中,数据data可以仅被储存在存储器件的第一坏存储块和第二坏存储块中的第一坏存储块中,而仅用于校正数据data的错误的奇偶校验码ecc2可以被储存在第二坏存储块中。

图2a和图2b是示出根据本公开的一个实施例的储存在存储器件的存储块中的信息的另一示例的示图。

图2a是示出储存在正常存储块的一页中的信息的示图。具体地,数据data和用于校正数据data的错误的第一奇偶校验码ecc1两者可以被储存在正常存储块中。

图2b是示出储存在两页中的信息的示图,每一页与两个坏存储块的每一个坏存储块相对应。与图1b相比,在其中数据data和第一奇偶校验码ecc1被储存在第一坏存储块中且仅第二奇偶校验码ecc2被储存在第二坏存储块中;在图2b中,数据data、第一奇偶校验码ecc1和第二奇偶校验码ecc2可以被划分并储存在第一坏存储块和第二坏存储块中。当储存在第一坏存储块和第二坏存储块中的信息的总量彼此相等时,数据data、第一奇偶校验码ecc1和第二奇偶校验码ecc2可以被储存在第一坏存储块和第二坏存储块的任意一块中。因此,图1b和图2b显示了在两步改进的纠错方法中成对地使用坏存储块而不影响读取数据的可靠性的两个不同的实施例。将参考其他附图来更详细地描述该方法。

图3是示出根据本公开的一个实施例的存储系统300的框图。图4是示出图3的坏存储块表317的示图。图5是示出图3的正常映射表315的示图。图6是示出图3的坏映射表316的示图。

参考图3,存储系统300可以包括存储器控制器310和存储器件330。

存储器控制器310可以根据从主机host接收的请求来控制存储器件330的操作。主机host可以是诸如中央处理单元(cpu)、图形处理单元(gpu)以及应用处理器(ap)和控制器中的任何合适的处理器。存储器控制器310可以包括主机接口311、调度器312、命令发生器313、损耗均衡单元314、正常映射表315、坏映射表316、坏存储块表317、正常块纠错单元318、坏块纠错单元319和存储器接口320。

主机接口311可以被配置为执行存储器控制器310与主机host之间的交互。主机接口311可以从主机host接收请求,并将请求的处理结果传送给主机host。

调度器312可以基于来自主机host的请求来确定要被指示给存储器件330的操作的顺序。调度器312可以设置与从主机host接收到的请求的顺序不同的要被指示给存储器件330的操作的顺序,以改善存储器件330的性能。例如,即使当主机host首先请求存储器件330的读取操作然后请求写入操作时,调度器312也可以控制操作的顺序,使得在读取操作之前优先执行写入操作。

命令发生器313可以基于由调度器312确定的操作的顺序来产生要被施加到存储器件330的命令。

存储器接口320可以被配置为执行存储器控制器310与存储器件330之间的交互。存储器接口320可以将命令cmd和地址add从存储器控制器310传输到存储器件330,并且可以在存储器件330与存储器控制器310之间传输和接收数据data。存储器接口320可以指的是物理层(phy)接口。

损耗均衡单元314可以执行损耗均衡操作。损耗均衡操作可以是防止存储器件330的寿命由于写入操作集中在存储器件330的存储块之中的特定存储块上而缩短的操作。损耗均衡操作可以允许对存储块均匀地执行写入操作。损耗均衡操作可以通过周期性地或者每当满足特定条件时改变逻辑存储块与物理存储块之间的映射的方法来执行。

坏存储块表317可以储存存储器件330的存储块之中的坏存储块的列表。坏存储块可以包括存储器件330的存储块之中发生错误的次数等于或超过阈值的那些存储块。参考图4,例如,存储器件330的存储块之中的第二存储块、第七存储块、第十一存储块和第十二存储块被示出为被确定的坏存储块bmb。

正常映射表315可以是被配置为将逻辑存储块映射到物理存储块(例如,存储器件330的存储块)的表。一个逻辑存储块可以被映射到正常映射表315中的一个物理存储块。参考图5,示出了第0逻辑存储块至第9逻辑存储块lmb被映射到物理存储块pmb。例如,第0逻辑存储块lmb可以被映射到第一物理存储块pmb,第五逻辑存储块lmb可以被映射到第四物理存储块pmb。有效标志valid可以指示映射是否有效。例如,有效标志valid的值“1”可以指示对应的映射是有效的,而值“0”可以指示对应的映射是无效的。从图5的示例可以看出,第七逻辑存储块lmb在正常映射表315中未被映射。

坏映射表316可以是被配置为将逻辑存储块之中在正常映射表315中未映射的逻辑存储块(即,非映射存储块)映射到存储器件330的坏存储块中的表。一个逻辑存储块可以被映射到坏映射表316中的至少两个坏存储块中。图6是示出坏映射表316的示例的示图。参考图6,在正常映射表315中未映射的第七逻辑存储块lmb在坏映射表316中被映射到为坏存储块的第二物理存储块pmb和第七物理存储块pmb。图6中的有效标志valid可以指示映射有效性。例如,有效标志valid的值“1”可以指示对应的映射是有效的,而有效标志valid的值“0”可以指示对应的映射是无效的。

正常块纠错单元318可以在写入操作中使用数据data来产生第一奇偶校验码ecc1,并且在读取操作中使用第一奇偶校验码ecc1来校正数据data的错误。由正常块纠错单元318产生的第一奇偶校验码ecc1可以与数据data一起被储存在正常存储块中。第一奇偶校验码ecc1可以与数据data一起被储存在被一起访问的两个坏存储块中的一个坏存储块中。可以参考图1a至图2b来理解数据data和第一奇偶校验码ecc1。

坏块纠错单元319可以在写入操作中使用数据data和第一奇偶校验码ecc1来产生用于校正数据data的错误和第一奇偶校验码ecc1的错误的第二奇偶校验码ecc2,并且可以在读取操作中使用第二奇偶校验码ecc2来校正数据data的错误和第一奇偶校验码ecc1的错误。可以参考图1a至图2b来理解第二奇偶校验码ecc2的使用。

存储器件330可以根据存储器控制器310的控制来执行读取操作、写入操作等。存储器件330可以包括多个存储块。存储器件330可以是任何合适的存储器件,例如相变随机存取存储器(pcram)、电阻式随机存取存储器(rram)、铁电式随机存取存储器(fram)、磁性随机存取存储器(mram)、nand快闪存储器、动态随机存取存储器(dram)等。

图7是示出根据本公开的一个实施例的图3的存储系统300的写入操作的流程图。

参考图7,在步骤s701中,可以从主机host向存储器控制器310提供针对写入操作的请求。来自主机host的写入请求可以包括用于要对其执行写入操作的逻辑存储块和逻辑存储块中的页的信息以及写入数据。

在步骤s703中,可以确定是将对存储器件330的正常存储块还是坏存储块执行写入操作。例如,当在步骤s701中请求写入操作所针对的逻辑存储块在正常映射表315中被映射时,可以对存储器件330的正常存储块执行写入操作。例如,基于图5的正常映射表315,当请求对第二逻辑存储块的写入操作时,可以对为正常存储块的存储器件330的第八逻辑存储块执行写入操作。当在步骤s701中请求写入操作所针对的逻辑存储块在坏映射表316中被映射时,可以对存储器件330的坏存储块执行写入操作。例如,基于图6的坏映射表316,当请求对第七逻辑存储块的写入操作时,可以对为坏存储块的存储器件330的第二存储块和第七存储块执行写入操作。

当确定要对存储器件330的正常存储块执行写入操作时(步骤s703的“否”),在步骤s705中,由正常块纠错单元318产生的数据data和第一奇偶校验码ecc1可以被写入在正常映射表315中映射的存储器件330的存储块的一页中。

当确定要对存储器件330的坏存储块执行写入操作时(步骤s703的“是”),存储器控制器310的调度器312可以对两个坏存储块执行写入操作的调度。

首先,在步骤s707中,由正常块纠错单元318产生的数据data和第一奇偶校验码ecc1可以被写入在坏映射表316中映射的存储器件330的两个坏存储块中的一个坏存储块的一页中。例如,基于图6的坏映射表316,数据data和第一奇偶校验码ecc1被写入存储器件330的第二存储块和第七存储块中的第二存储块的一页中。

在步骤s709中,由坏块纠错单元319产生的第二奇偶校验码ecc2可以被写入在坏映射表316中映射的存储器件330的两个坏存储块中的另一个坏存储块的一页中。例如,基于图6的坏映射表316,第二奇偶校验码ecc2被写入存储器件330的第二存储块和第七存储块中的第七存储块的一页中。在被一起访问的两个坏存储块中可以访问相同的页。例如,当在步骤s707中对第二存储块的第三页执行写入操作时,在步骤s709中可以对第七存储块的第三页执行写入操作。

根据图7的写入方法,第二奇偶校验码ecc2(其在对坏存储块的写入操作中具有的比特位数比在对正常存储块的写入操作中使用的第一奇偶校验码ecc1的比特位数多)可以被储存在不储存任何数据的坏存储块的页中。这是为了准备校正在坏存储块中发生的大量错误。

图8是示出根据本公开的一个实施例的图3的存储系统300的读取操作的流程图。

参考图8,在步骤s801中,可以从主机host向存储器控制器310提供针对读取操作的请求。从主机host接收的读取请求可以包括用于要对其执行读取操作的逻辑存储块和逻辑存储块中的页的信息。

在步骤s803中,可以确定是将对存储器件330的正常存储块还是坏存储块执行读取操作。当在步骤s801中请求读取操作所针对的逻辑存储块在正常映射表315中被映射时,可以对存储器件330的正常存储块执行写入操作。例如,基于图5的正常映射表315,当请求对第二逻辑存储块的读取操作时,可以对为正常存储块的存储器件330的第八存储块执行读取操作。当在步骤s801中请求读取操作所针对的逻辑存储块在坏映射表316中被映射时,可以对存储器件330的坏存储块执行写入操作。例如,基于图6的坏映射表316,当请求对第七逻辑存储块的读取操作时,可以对为坏存储块的存储器件330的第二存储块和第七存储块执行读取操作。

当确定要对存储器件330的正常存储块执行读取操作时(步骤s803的“否”),在步骤s805中,可以从在正常映射表315中映射的存储器件330的存储块的一页中读取数据data和第一奇偶校验码ecc1。

在步骤s807中,正常块纠错单元318可以使用第一奇偶校验码ecc1来校正数据data的错误。在步骤s809中,主机接口311可以将已纠错的数据data传输到主机host。

当确定要对存储器件330的坏存储块执行读取操作时(步骤s803的“是”),存储器控制器310的调度器312可以调度对两个坏存储块执行读取操作。

首先,在步骤s811中,可以从在坏映射表316中映射的存储器件330的两个坏存储块中的一个坏存储块的一页中读取数据data和第一奇偶校验码ecc1。例如,基于图6的坏映射表316,从存储器件330的第二存储块和第七存储块中的第二存储块的一页中读取数据data和第一奇偶校验码ecc1。

在步骤s813中,可以从在坏映射表316中映射的存储器件330的两个坏存储块中的另一个坏存储块的一页中读取第二奇偶校验码ecc2。例如,基于图6的坏映射表316,从存储器件330的第二存储块和第七存储块(第二存储块和第七存储块被映射到图6的坏映射表316中的第七逻辑存储块)中的第七存储块的一页中读取第二奇偶校验码ecc2。在被一起访问的两个坏存储块中可以访问相同的页。例如,当在步骤s811中对第二存储块的第三页执行读取操作时,可以在步骤s813中对第七存储块的第三页执行读取操作。

在步骤s815中,坏块纠错单元319可以使用第二奇偶校验码ecc2来校正数据data的错误和第一奇偶校验码ecc1的错误。在步骤s817中,正常块纠错单元318可以使用第一奇偶校验码ecc1来校正数据data的错误。在步骤s819中,主机接口311可以将已纠错的数据data传输到主机host。

根据图8的读取方法,可以在对坏存储块的读取操作中通过两步纠错来校正错误。因此,由于在对坏存储块的读取操作期间错误可能经受更强、更可靠的校正方法,所以即使在坏存储块中可能发生大量错误,也可以使用坏存储块。

尽管为了说明目的已经描述了各种实施例,但是对于本领域技术人员明显的是,在不脱离如所附权利要求所限定的本发明的精神和范围的情况下,可以进行各种改变和修改。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1