CN107102816B - 存储系统及其操作方法 - Google Patents
存储系统及其操作方法 Download PDFInfo
- Publication number
- CN107102816B CN107102816B CN201610855655.6A CN201610855655A CN107102816B CN 107102816 B CN107102816 B CN 107102816B CN 201610855655 A CN201610855655 A CN 201610855655A CN 107102816 B CN107102816 B CN 107102816B
- Authority
- CN
- China
- Prior art keywords
- region
- logical
- memory device
- threshold
- nonvolatile memory
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
- G06F3/0649—Lifecycle management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
一种存储系统包括:非易失性存储器件,包括正常区域、热区域和冷区域,在正常区域中储存在存储单元中的最高有效位(MSB)和最低有效位(LSB)被同时访问,在热区域中储存在存储单元中的MSB被访问,在冷区域中储存在存储单元中的LSB被访问;以及存储器控制器,控制非易失性存储器件。在此,存储器控制器包括:读取/写入计数器,对针对逻辑簇的每个执行的读取操作的数量和写入操作的数量进行计数,从而产生计数结果;以及区域选择器,基于计数结果来将每个逻辑簇映射到正常区域、热区域和冷区域之中的一个区域,从而产生映射数据。
Description
相关申请的交叉引用
本申请要求2016年2月23日提交的申请号为10-2016-0021167的韩国专利申请的优先权,其通过引用整体合并于此。
技术领域
本发明的示例性实施例涉及一种包括非易失性存储器件和存储器控制器的存储系统。
背景技术
半导体存储器件通常被分类为易失性存储器件和非易失性存储器件。易失性存储器件的示例包括动态随机存取存储(DRAM)器件和静态随机存取存储(SRAM)器件。非易失性存储器件的示例包括可编程只读存储(PROM)器件、可擦除PROM(EPROM)器件、电EPROM(EEPROM)器件以及快闪存储器件。在易失性存储器件和非易失性存储器件之间的主要区别是在存储器的存储单元中储存的数据在预定时间过去以后是否能被保留。
与非易失性存储器件不同,由于小电流泄漏,因此易失性存储器件在预定时间过去以后丢失在其存储单元中储存的数据。因为这个原因,易失性存储器件需要保持其数据的刷新操作。非易失性存储器件不需要执行刷新操作。由于非易失性存储器件的这个特征适用于高度集成的低功耗设备,所以非易失性存储器件被广泛地用作便携式电子设备的储存介质。
同时,非易失性存储器件中的快闪存储器件经由写入操作和擦除操作来将数据储存在存储单元。在快闪存储器中,也被称为编程操作的写入操作是用于在形成存储单元的晶体管的浮置栅中累积电子的操作。擦除操作是用于对在晶体管的浮置栅中累积的电子放电的操作。快闪存储器件经由写入操作和擦除操作来在晶体管的浮置栅中累积电子或对晶体管的浮置栅中的电子放电,并且每个存储单元具有与数据“0”或数据“1”对应的数据分布。
接下来,如上所述,一个存储单元储存数据“0”或数据“1”。换而言之,一个存储单元储存一个比特位数据,而且这个存储单元被称为单电平单元。然而,最近趋势是在一个存储单元中储存一个以上比特位数据的多电平单元。单电平单元需要一个参考电压来决定在存储单元中储存的数据是“0”还是“1”。多电平单元需要多个参考电压来决定在存储单元中储存的数据是“00”、“01”、“10”还是“11”。
从单电平单元的存储单元读取数据或将数据写入单电平单元的存储单元需要相对短的时间,而多电平单元需要单电平单元的几倍时间来从多电平单元的存储单元读取数据或将数据写入多电平单元的存储单元。
发明内容
本发明的实施例涉及一种用于提高非易失性存储器件的性能而不损失多电平单元型非易失性存储器件的容量的方法。
根据本发明的实施例,存储系统包括:非易失性存储器件,包括正常区域、热区域和冷区域,在正常区域中储存在存储单元中的最高有效位(MSB)和最低有效位(LSB)被同时访问,在热区域中储存在存储单元中的MSB被访问,在冷区域中储存在存储单元中的LSB被访问;存储器控制器,控制非易失性存储器件,其中存储器控制器包括:读取/写入计数器,对针对多个逻辑簇的每个执行的读取操作的次数和所执行的写入操作的次数进行计数,从而产生计数结果;区域选择器,基于在读取/写入计数器中获得的计数结果来将逻辑簇的每个映射到正常区域、热区域和冷区域之中的一个区域,从而产生映射数据;以及簇映射表,储存在区域选择器中获得的映射数据。
热区域和冷区域可以共享存储单元,并且共享存储单元的一组MSB可以是热区域,而共享存储单元的一组LSB可以是冷区域。
区域选择器可以将具有对其执行的大量写入操作的逻辑簇映射到正常区域,将具有对其执行的少量写入操作和对其执行的大量读取操作的逻辑簇映射到热区域,以及将具有对其执行的少量写入操作和对其执行的少量读取操作的逻辑簇映射到冷区域。
区域选择器可以将其写入操作的数量等于或大于第一阈值的逻辑簇映射到正常区域;以及在其写入操作的数量小于第一阈值的逻辑簇之中,将其读取操作的数量等于或大于第二阈值以及通过将读取操作的数量除以写入操作的数量而获得的值等于或大于第三阈值的逻辑簇映射到热区域;以及在其写入操作的数量小于第一阈值的逻辑簇之中,将其读取操作的数量等于或大于第二阈值以及通过将读取操作的数量除以写入操作的数量而获得的值小于第三阈值的逻辑簇映射到冷区域。
多个逻辑簇可以被映射到正常区域作为默认值。
存储器控制器可以还包括移动管理器,所述区域管理器将通过区域选择器来改变其映射的逻辑簇的数据移动到改变的区域。
通过读取/写入计数器来计数的、针对多个逻辑簇中的每个所执行的读取操作的次数和所执行的写入操作的次数可以在预定时段内减少。
在非易失性存储器件中,正常区域、热区域和冷区域的容量是可以控制的。
多个逻辑簇的每个逻辑簇可以包括一个或多个逻辑块。
存储器控制器还可以包括用于与主机通信的主机接口、快闪转换层(FTL)以及用于与非易失性存储器件通信的存储器接口。
一种操作包括存储器控制器和非易失性存储器件的存储系统的方法包括:传送来自主机的用于对预定逻辑页执行读取操作的读取操作请求;在存储器控制器中检测预定逻辑页所属的逻辑簇被映射到非易失性存储器件的正常区域、热区域还是冷区域,其中在正常区域中储存在存储单元中的最高有效位(MSB)和最低有效位(LSB)被同时访问,在热区域中储存在存储单元中的MSB被访问,在冷区域中储存在存储单元中的LSB被访问;当预定逻辑页所属的逻辑簇被映射到正常区域时,从非易失性存储器件的正常区域中的与预定逻辑页对应的存储单元中读取MSB和LSB;当预定逻辑页所属的逻辑簇被映射到热区域时,从非易失性存储器件的热区域中的与预定逻辑页对应的存储单元中读取MSB;当预定逻辑页所属的逻辑簇被映射到冷区域时,从非易失性存储器件的冷区域中的与预定逻辑页对应的存储单元中读取LSB;以及在存储器控制器中增加对预定逻辑页所属的逻辑簇执行读取操作的计数次数。
所述方法还可以包括:在存储器控制器中查验在逻辑簇与非易失性存储器件的正常区域、热区域以及冷区域之间的映射是否需要改变;在存储器控制器中将其与非易失性存储器件的正常区域、热区域以及冷区域之中的一个区域的映射需要被改变的逻辑簇映射到适当区域;在存储器控制器的控制下,移动在非易失性存储器件中其映射被改变的逻辑簇的数据。
根据本发明的另一个实施例,一种操作包括存储器控制器和非易失性存储器件的存储系统的方法包括:传送来自主机的用于对预定逻辑页执行写入操作的写入操作请求;在存储器控制器中检测预定逻辑页所属的逻辑簇被映射到非易失性存储器件的正常区域、热区域还是冷区域,其中在正常区域中储存在存储单元中的最高有效位(MSB)和最低有效位(LSB)被同时访问,在热区域中储存在存储单元中的MSB被访问,在冷区域中储存在存储单元中的LSB被访问;当预定逻辑页所属的逻辑簇被映射到正常区域时,将MSB和LSB编程在非易失性存储器件的正常区域中的与预定逻辑页对应的存储单元中;当预定逻辑页所属的逻辑簇被映射到热区域时,将MSB编程在非易失性存储器件的热区域中的与预定逻辑页对应的存储单元中;当预定逻辑页所属的逻辑簇被映射到冷区域时,将LSB编程在非易失性存储器件的冷区域中的与预定逻辑页对应的存储单元中;以及在存储器控制器中增加对预定逻辑页所属的逻辑簇执行写入操作的计数次数。
所述方法还可以包括:在存储器控制器中查验在逻辑簇与非易失性存储器件的正常区域、热区域以及冷区域之间的映射是否需要改变;在存储器控制器中将其与非易失性存储器件的正常区域、热区域以及冷区域之中的一个区域的映射需要被改变的逻辑簇映射到适当区域;以及在存储器控制器的控制下,移动在非易失性存储器件中其映射被改变的逻辑簇的数据。
附图说明
图1图示了非易失性存储器件的正常区域、热区域以及冷区域。
图2是图示根据本发明的一个实施例的存储系统的框图。
图3是根据本发明的一个实施例的存储系统的读取操作的流程图。
图4是根据本发明的一个实施例的存储系统的写入操作的流程图。
具体实施方式
下面将参照附图来更详细地描述本发明的示例性实施例。然而,本发明可以以不同的形式来实施,而不应当被解释为局限于本文中所阐述的实施例。相反地,这些实施例被提供以使得本公开将彻底且完整,并且将本发明充分地传达给本领域技术人员。贯穿本公开,相同的附图标记在本发明的各种附图和实施例中始终指代相同的部分。
首先,以下描述了在本发明的下面实施例中使用的术语来帮助理解。
页:页是用于非易失性存储器件中读取操作和写入操作的单位。可以存在逻辑页和物理页。一个逻辑页可以被映射到非易失性存储器件中的一个物理页。
块:块是用于非易失性存储器件中擦除操作的单位。所述块包括多个页。可以存在逻辑块和物理块。一个逻辑块可以被映射到非易失性存储器件中的一个物理块。
逻辑簇(logical cluster):逻辑簇是一个或多个逻辑块的组。在下面的实施例中,对针对每个逻辑簇执行的读取操作的次数和所执行的写入操作的次数进行计数。这样,逻辑簇被映射到多个区域中的一个区域。
正常区域:正常区域可以是在多电平单元型非易失性存储器件中,最高有效位(MSB)和最低有效位(LSB)被同时访问的区域。正常区域可以以与传统的多电平单元型非易失性存储器件的操作相同的方式来操作。
热区域:热区域是在多电平单元型非易失性存储器件中,MSB被单独访问的区域。当读取热区域时,只访问可以被快速读取的MSB。因此,可以执行与单电平单元型非易失性存储器件一样快速的操作。
冷区域:冷区域是在多电平单元型非易失性存储器件中,LSB被单独访问的区域。由于在冷区域仅LSB被访问,所以冷区域比热区域操作更慢。
图1示出了非易失性存储器件的正常区域110、热区域120以及冷区域130。作为示例,假设在图1中的实施例中,非易失性存储器件设置有8个存储单元且页的大小是2个比特位。
正常区域110可以包括4个存储单元MC0到MC3。由于一个存储单元可以储存两个比特位数据,因此存储单元MC0到MC3中的每一个存储单元可以是正常单元110中的一页。
热区域120可以包括4个存储单元MC4到MC7中的MSB。在热区域120中,存储单元MC4和存储单元MC5中的MSB可以形成一页,而存储单元MC6和存储单元MC7中的MSB可以形成另一页。
冷区域130可以包括4个存储单元MC4到MC7中的LSB。在冷区域130中,存储单元MC4和存储单元MC5中的LSB可以形成一页,而存储单元MC6和存储单元MC7中的LSB可以形成另一页。
热区域120和冷区域130可以共享相同的存储单元MC4到MC7,其中共享存储单元MC4到MC7的MSB变成热区域120,而共享存储单元MC4到MC7的LSB变成冷区域130。因此,热区域120和冷区域130可以具有相同的容量。
储存在存储单元中的2个比特位数据中MSB和LSB可以在概念上彼此相反。储存在存储单元中的2个比特位数据之中可以立刻被读取的比特位变成MSB,而另一个比特位被称为LSB。换而言之,储存在存储单元中的2个比特位数据之中可以被快速读取的比特位是MSB,而不能像MSB一样被快速读取的比特位变成LSB。
图1显示的本发明的实施例中,其中非易失性存储器件包括8个存储单元而且每个页的大小是2个比特位,但是该实施例被提出仅仅是为了简单描述本发明的概念和精神,而且对本领域技术人员明显的是,非易失性存储器件可以具有超过几十到几百的千兆位(Gb)的容量以及每个页的大小可以是大于约4千字节(Kb)。
图2是图示根据本发明的实施例的存储系统200的框图。
参考图2,存储系统200可以包括存储器控制器210和非易失性存储器件250。
非易失性存储器件250可以包括正常区域、热区域和冷区域。如上所述,正常区域是通过MSB和LSB来同时访问的区域,热区域是通过MSB来访问的区域,而冷区域是通过LSB来访问的区域。
存储器控制器210可以控制非易失性存储器件250。存储器控制器210可以包括通过内部总线全部电耦接的主机接口211、快闪转换层(FTL)213、存储器接口215、读取/写入计数器217、区域选择器219、簇映射表221以及区域管理器223。
主机接口211可以是适合于使在主机HOST和存储器控制器210之间能够通信的接口。
所述FTL 213可以是管理非易失性存储器件250的模块。非易失性存储器件250在相对较低的价格下提供快速读取操作速率,这是有利的。然而,当将数据编程在非易失性存储器件250中时,擦除操作必须先于写入操作,而且用于擦除操作的数据单元是比用于写入操作的数据单元的页大的存储块。事实上,非易失性存储器件250的这些属性使得难以使用用于硬盘的典型的文件系统。由于这个原因,采用FTL 213来使文件系统与非易失性存储器件250彼此兼容。
存储器接口215可以是适合于使在存储器控制器210和非易失性存储器件250之间能够通信的接口。
读取/写入计数器217可以对针对每个逻辑簇执行的读取操作的次数和所执行的写入操作的次数来计数。每个逻辑簇可以包括多个逻辑块。通过读取/写入计数器217计数的、针对每个逻辑簇执行的读取操作的次数和所执行的写入操作的次数可以被用在区域选择器219中。通过读取/写入计数器217计数的、针对每个逻辑簇执行的读取操作的次数和所执行的写入操作的次数可以在预定时段内减少以排除过旧的数据。例如,当预定时间过去时,针对每个逻辑簇执行的读取操作的次数和所执行的写入操作的次数可以减少约20%或预定值。
区域选择器219可以基于读取/写入计数器217的计数结果而将每个逻辑簇映射到正常区域、热区域和冷区域中的一个区域。例如,区域选择器219可以基于在表1中所示的条件而将逻辑簇映射到所述区域。
表1
参考表1,具有大量写入操作执行次数的逻辑簇可以被映射到正常区域。因为在写入操作中,仅通过MSB来访问或仅通过LSB来访问可以使操作变慢,所以具有大量写入操作执行次数的逻辑簇被映射到正常区域。
具有少量写入操作和大量读取操作的逻辑簇可以被映射到热区域。由于仅有MSB对热区域访问,所以读取操作可以快速执行。
具有少量写入操作和少量读取操作的逻辑簇也可以被映射到冷区域。由于具有少量写入操作和少量读取操作的逻辑簇具有少量的访问,所以尽管它们被映射到冷区域,非易失性存储器件的操作性能也可以几乎不降低。
读取操作执行的次数和读取操作执行的次数是少还是多可以基于绝对标准或相对标准来决定。在下面的描述中(1)到(3)是决定读取操作的数量和写入操作的数量是少还是多的示例。
(1)执行写入操作的次数是少还是多可以基于阈值A(例如,1000次)来决定。写入操作执行的次数等于或大于阈值A的逻辑簇可以被分类为具有大量写入操作的逻辑簇,并被映射到正常区域。另一方面,写入操作执行的次数小于阈值A的逻辑簇可以被分类为具有少量写入操作的逻辑簇。
(2)在写入操作执行的次数小于阈值A的逻辑簇中,其读取操作执行的次数等于或大于B次(例如,500次)以及通过读取操作的数量除以写入操作的数量而获得的值等于或大于阈值C(例如5)(读取操作的数量/写入操作的数量≥阈值C),这样的逻辑簇成为具有少量写入操作和大量读取操作的逻辑簇且被映射到热区域。
(3)写入操作执行的次数小于阈值A的逻辑簇中,其读取操作执行的次数等于或大于B次(例如,500次)以及通过读取操作的数量除以写入操作的数量而获得的值小于阈值C(例如5)(读取操作的数量/写入操作的数量<阈值C),这样的逻辑簇成为具有少量写入操作和少量读取操作的逻辑簇且被映射到冷区域。
逻辑簇被映射到正常区域作为默认值,并且映射区域可以根据条件(1)到(3)来改变。区域选择器219可以通过查验是否满足条件(1)到(3)来改变逻辑簇到区域的映射。
簇映射表221可以储存区域选择器219的映射数据。
当存在其映射通过区域选择器219而改变的逻辑簇时,区域管理器223可以将该逻辑簇的数据移动到新的映射区域。
由于在非易失性存储器件250中,正常区域、热区域和冷区域通过它们如何被访问来划分,所以即使在存储系统200的操作的中间,这些区域的容量也可以改变。例如,在存储系统200的操作的中间,正常区域可以减少,而热区域和冷区域可以增加。作为另一个示例,热区域和冷区域可以减少,而正常区域增加。
在存储系统200中,由于在存储系统200中经常执行读取操作而相对较少执行写入操作的逻辑簇被映射到热区域,所以逻辑簇的读取操作可以与在单电平单元型非易失性存储器件中一样快地执行,因此可以改善存储系统200的性能。
图3是图示根据本发明的一个实施例的存储系统的读取操作的流程图。例如,图3可以图示图2中存储系统200的读取操作。
参考图3,在步骤S301中,主机可以请求存储器控制器210对预定逻辑页执行读取操作。
在步骤S303中,基于簇映射表221来检测请求读取的逻辑页所属的逻辑簇被映射到非易失性存储器件250的正常区域、热区域还是冷区域。
在步骤S305中,可以从在步骤S303检测到的区域中的与请求读取的逻辑页相对应的物理页来读取数据。当在步骤S303检测到请求读取的逻辑页所属的逻辑簇被映射到正常区域时,可以从与请求读取的逻辑页对应的存储单元读取MSB和LSB二者。当在步骤S303检测到请求读取的逻辑页所属的逻辑簇被映射到热区域时,可以从与请求读取的逻辑页对应的存储单元读取MSB。当在步骤S303检测到请求读取的逻辑页所属的逻辑簇被映射到冷区域时,可以从与请求读取的逻辑页对应的存储单元读取LSB。
在步骤S307中,在执行读取操作以后,读取/写入计数器217可以增加执行了读取操作的逻辑页所属的逻辑簇的读取操作的数量。
随后,在步骤S309中,区域选择器219可以查验在逻辑簇与和非易失性存储器件250的区域之间的映射是否需要改变。
当检测到映射需要改变时,在步骤S311中,区域选择器219可以将其与区域的映射需要改变的逻辑簇重新映射到适当区域。
在步骤S313中,区域管理器223可以移动在步骤S311中其映射被改变的逻辑簇的数据。
图4是图示根据本发明的一个实施例的存储系统的写入操作的流程图。例如,图4可以图示图2中存储系统200的写入操作。
参考图4,在步骤S401中,主机可以请求存储器控制器210对预定逻辑页执行写入操作。
在步骤S403中,基于簇映射表221来检测请求编程的逻辑页所属的逻辑簇被映射到非易失性存储器件250的正常区域、热区域还是冷区域。
在步骤S405中,可以将写入数据编程在步骤S403检测到的区域中的与请求编程的逻辑页相对应的物理页中。当在步骤S403检测到请求编程的逻辑页所属的逻辑簇被映射到正常区域时,可以在与请求编程的逻辑页对应的存储单元的MSB和LSB两者中编程写入数据。当在步骤S403检测到请求编程的逻辑页所属的逻辑簇被映射到热区域时,可以在与请求编程的逻辑页对应的存储单元的MSB中编程写入数据。当在步骤S403检测到请求编程的逻辑页所属的逻辑簇被映射到冷区域时,可以在与请求编程的逻辑页对应的存储单元的LSB中编程写入数据。
在步骤S407中,在执行写入操作以后,读取/写入计数器217可以增加被编程逻辑页所属的逻辑簇的写入操作的数量。
随后,在步骤S409中,区域选择器219可以查验在逻辑簇和非易失性存储器件250的区域之间的映射是否需要改变。
当检测到映射需要改变时,在步骤S411中,区域选择器219可以将其与区域的映射需要改变的逻辑簇重新映射到适当区域。
在步骤S413中,区域管理器223可以移动在步骤S411中其映射被改变的逻辑簇的数据。
根据本发明的实施例,可以提高非易失性存储器件的性能,而不降低多电平单元型非易失性存储器件的容量。
虽然已经就特定的实施例对本发明进行了描述,但是对本领域技术人员明显的是:在不脱离所附权利要求所限定的本发明的精神和范围的情况下,可以做出各种改变和修改。
Claims (15)
1.一种存储系统,包括:
非易失性存储器件,包括正常区域、热区域和冷区域,在正常区域中储存在存储单元中的最高有效位MSB和最低有效位LSB被同时访问,在热区域中储存在存储单元中的最高有效位MSB被访问,在冷区域中储存在存储单元中的最低有效位LSB被访问;以及
存储器控制器,适合于控制非易失性存储器件,
其中,存储器控制器包括:
读取/写入计数器,适合于针对多个逻辑簇中的每个所执行的读取操作的次数和所执行的写入操作的次数进行计数,从而产生计数结果;以及
区域选择器,适合于基于计数结果来将逻辑簇的每个映射到正常区域、热区域和冷区域中的一个区域,从而产生映射数据,
其中,所述区域选择器将写入操作的数量等于或大于第一阈值的逻辑簇映射到正常区域,以及
在写入操作的数量小于第一阈值的逻辑簇之中,将读取操作的数量等于或大于第二阈值以及通过将读取操作的数量除以写入操作的数量而获得的值等于或大于第三阈值的逻辑簇映射到热区域,以及
在写入操作的数量小于第一阈值的逻辑簇之中,将读取操作的数量等于或大于第二阈值以及通过将读取操作的数量除以写入操作的数量而获得的值小于第三阈值的逻辑簇映射到冷区域。
2.如权利要求1所述的存储系统,还包括:
簇映射表,适合于储存在区域选择器中获得的映射数据。
3.如权利要求1所述的存储系统,其中,热区域和冷区域共享存储单元,以及
共享存储单元的一组最高有效位MSB是热区域,而共享存储单元的一组最低有效位LSB是冷区域。
4.如权利要求1所述的存储系统,其中,所述多个逻辑簇被映射到正常区域作为默认值。
5.如权利要求1所述的存储系统,其中,所述存储器控制器还包括:
区域管理器,适合于将通过区域选择器来改变其映射的逻辑簇的数据移动到改变的区域。
6.如权利要求5所述的存储系统,其中,存储器控制器还包括:
主机接口,用于与主机通信;
快闪转换层FTL;以及
存储器接口,用于与非易失性存储器件通信。
7.如权利要求1所述的存储系统,其中,通过读取/写入计数器来计数的、针对所述多个逻辑簇中的每个执行的读取操作的次数和所执行的写入操作的次数在预定时段内减少。
8.如权利要求1所述的存储系统,其中,在非易失性存储器件中,正常区域、热区域和冷区域的容量能够被控制。
9.如权利要求1所述的存储系统,其中,所述多个逻辑簇的每个包括一个或更多个逻辑块。
10.一种操作存储器控制器的方法,包括:
从主机接收用于对非易失性存储器件的预定逻辑页执行读取操作的读取操作请求;
检测所述预定逻辑页所属的逻辑簇被映射到非易失性存储器件的正常区域、热区域还是冷区域,其中在正常区域中储存在存储单元中的最高有效位MSB和最低有效位LSB被同时访问,在热区域中储存在存储单元中的最高有效位MSB被访问,在冷区域中储存在存储单元中的最低有效位LSB被访问;
当所述预定逻辑页所属的逻辑簇被映射到正常区域时,从非易失性存储器件的正常区域中的与所述预定逻辑页对应的存储单元中读取最高有效位MSB和最低有效位LSB;
当所述预定逻辑页所属的逻辑簇被映射到热区域时,从非易失性存储器件的热区域中的与所述预定逻辑页对应的存储单元中读取最高有效位MSB;以及
当所述预定逻辑页所属的逻辑簇被映射到冷区域时,从非易失性存储器件的冷区域中的与所述预定逻辑页对应的存储单元中读取最低有效位LSB,
其中,所述非易失性存储器件包括多个逻辑簇,并且
将写入操作的数量等于或大于第一阈值的逻辑簇映射到正常区域,以及
在写入操作的数量小于第一阈值的逻辑簇之中,将读取操作的数量等于或大于第二阈值以及通过将读取操作的数量除以写入操作的数量而获得的值等于或大于第三阈值的逻辑簇映射到热区域,以及
在写入操作的数量小于第一阈值的逻辑簇之中,将读取操作的数量等于或大于第二阈值以及通过将读取操作的数量除以写入操作的数量而获得的值小于第三阈值的逻辑簇映射到冷区域。
11.如权利要求10所述的方法,还包括:
增加对所述预定逻辑页所属的逻辑簇执行读取操作的计数次数。
12.如权利要求10所述的方法,还包括:
查验逻辑簇与非易失性存储器件的正常区域、热区域以及冷区域之间的映射是否需要改变;
将其与非易失性存储器件的正常区域、热区域以及冷区域之中的一个区域的映射需要被改变的逻辑簇映射到适当区域;以及
移动在非易失性存储器件中其映射被改变的逻辑簇的数据。
13.一种操作存储器控制器的方法,包括:
从主机接收用于对非易失性存储器件的预定逻辑页执行写入操作的写入操作请求;
检测所述预定逻辑页所属的逻辑簇映射到非易失性存储器件的正常区域、热区域还是冷区域,其中在正常区域中储存在存储单元中的最高有效位MSB和最低有效位LSB被同时访问,在热区域中储存在存储单元中的最高有效位MSB被访问,在冷区域中储存在存储单元中的最低有效位LSB被访问;
当所述预定逻辑页所属的逻辑簇被映射到正常区域时,将最高有效位MSB和最低有效位LSB编程在非易失性存储器件的正常区域中的与所述预定逻辑页对应的存储单元中;
当所述预定逻辑页所属的逻辑簇被映射到热区域时,将最高有效位MSB编程在非易失性存储器件的热区域中的与所述预定逻辑页对应的存储单元中;以及
当所述预定逻辑页所属的逻辑簇被映射到冷区域时,将最低有效位LSB编程在非易失性存储器件的冷区域中的与所述预定逻辑页对应的存储单元中,
其中,所述非易失性存储器件包括多个逻辑簇,并且
将写入操作的数量等于或大于第一阈值的逻辑簇映射到正常区域,以及
在写入操作的数量小于第一阈值的逻辑簇之中,将读取操作的数量等于或大于第二阈值以及通过将读取操作的数量除以写入操作的数量而获得的值等于或大于第三阈值的逻辑簇映射到热区域,以及
在写入操作的数量小于第一阈值的逻辑簇之中,将读取操作的数量等于或大于第二阈值以及通过将读取操作的数量除以写入操作的数量而获得的值小于第三阈值的逻辑簇映射到冷区域。
14.如权利要求13所述的方法,还包括:
增加对所述预定逻辑页所属的逻辑簇执行写入操作的计数次数。
15.如权利要求13所述的方法,还包括:
查验逻辑簇与非易失性存储器件的正常区域、热区域以及冷区域之间的映射是否需要改变;
将其与非易失性存储器件的正常区域、热区域以及冷区域之中的一个区域的映射需要被改变的逻辑簇映射到适当区域;以及
移动在非易失性存储器件中其映射被改变的逻辑簇的数据。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2016-0021167 | 2016-02-23 | ||
KR1020160021167A KR20170099437A (ko) | 2016-02-23 | 2016-02-23 | 메모리 시스템 및 이의 동작 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107102816A CN107102816A (zh) | 2017-08-29 |
CN107102816B true CN107102816B (zh) | 2020-08-11 |
Family
ID=59631175
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610855655.6A Active CN107102816B (zh) | 2016-02-23 | 2016-09-27 | 存储系统及其操作方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9996292B2 (zh) |
KR (1) | KR20170099437A (zh) |
CN (1) | CN107102816B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102362229B1 (ko) | 2017-08-10 | 2022-02-11 | 삼성전자주식회사 | 메모리 컨트롤러, 메모리 시스템 및 메모리 컨트롤러를 포함하는 어플리케이션 프로세서 |
KR102507646B1 (ko) * | 2018-02-01 | 2023-03-09 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그의 동작방법 |
KR20190113437A (ko) * | 2018-03-28 | 2019-10-08 | 에스케이하이닉스 주식회사 | 메모리 시스템, 그것의 동작방법 및 메모리 시스템을 포함하는 컴퓨팅 시스템 |
KR20200018156A (ko) | 2018-08-10 | 2020-02-19 | 에스케이하이닉스 주식회사 | 메모리장치에 대한 에러정정코드 기능을 갖는 메모리 시스템 및 그 운영방법 |
KR102692942B1 (ko) * | 2018-11-22 | 2024-08-08 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작방법 |
CN110970075A (zh) * | 2019-12-02 | 2020-04-07 | 武汉新芯集成电路制造有限公司 | 存储结构及其擦除方法 |
KR20210083448A (ko) | 2019-12-26 | 2021-07-07 | 삼성전자주식회사 | 비지도 학습 기법을 사용하는 스토리지 장치 및 그것의 메모리 관리 방법 |
KR20210121527A (ko) * | 2020-03-30 | 2021-10-08 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작 방법 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101794253A (zh) * | 2009-02-04 | 2010-08-04 | 威刚科技股份有限公司 | 内存储存装置及其控制方法、热门数据控管模块 |
CN103455283A (zh) * | 2013-08-19 | 2013-12-18 | 华中科技大学 | 一种混合存储系统 |
CN103608782A (zh) * | 2011-05-15 | 2014-02-26 | 苹果公司 | Lsb页面和msb页面中的选择性数据存储 |
CN104714891A (zh) * | 2013-12-11 | 2015-06-17 | 华为技术有限公司 | 一种闪存数据管理方法及装置 |
US9098395B2 (en) * | 2009-07-09 | 2015-08-04 | Phison Electronics Corp. | Logical block management method for a flash memory and control circuit storage system using the same |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8843691B2 (en) | 2008-06-25 | 2014-09-23 | Stec, Inc. | Prioritized erasure of data blocks in a flash storage device |
US8407400B2 (en) | 2008-11-12 | 2013-03-26 | Micron Technology, Inc. | Dynamic SLC/MLC blocks allocations for non-volatile memory |
US9489297B2 (en) * | 2013-01-21 | 2016-11-08 | Sandisk Technologies Llc | Pregroomer for storage array |
US9536600B2 (en) * | 2014-10-22 | 2017-01-03 | International Business Machines Corporation | Simultaneous multi-page commands for non-volatile memories |
-
2016
- 2016-02-23 KR KR1020160021167A patent/KR20170099437A/ko not_active Application Discontinuation
- 2016-06-24 US US15/192,786 patent/US9996292B2/en active Active
- 2016-09-27 CN CN201610855655.6A patent/CN107102816B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101794253A (zh) * | 2009-02-04 | 2010-08-04 | 威刚科技股份有限公司 | 内存储存装置及其控制方法、热门数据控管模块 |
US9098395B2 (en) * | 2009-07-09 | 2015-08-04 | Phison Electronics Corp. | Logical block management method for a flash memory and control circuit storage system using the same |
CN103608782A (zh) * | 2011-05-15 | 2014-02-26 | 苹果公司 | Lsb页面和msb页面中的选择性数据存储 |
CN103455283A (zh) * | 2013-08-19 | 2013-12-18 | 华中科技大学 | 一种混合存储系统 |
CN104714891A (zh) * | 2013-12-11 | 2015-06-17 | 华为技术有限公司 | 一种闪存数据管理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
US9996292B2 (en) | 2018-06-12 |
CN107102816A (zh) | 2017-08-29 |
KR20170099437A (ko) | 2017-09-01 |
US20170242609A1 (en) | 2017-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107102816B (zh) | 存储系统及其操作方法 | |
US11042306B2 (en) | Memory management | |
US9645896B2 (en) | Data storage device and flash memory control method | |
US9104546B2 (en) | Method for performing block management using dynamic threshold, and associated memory device and controller thereof | |
KR100858241B1 (ko) | 하이브리드 플래시 메모리 장치 및 그것의 가용 블록 할당방법 | |
US10503411B2 (en) | Data storage device and method for operating non-volatile memory | |
US9870836B2 (en) | Memory system and method of controlling nonvolatile memory | |
KR102711283B1 (ko) | 저장 장치, 컨트롤러 및 컨트롤러의 동작 방법 | |
JP2014116031A (ja) | メモリデバイスを備えた電子システム | |
TW201301031A (zh) | 在一記憶體裝置中動態記憶體快取大小的調整 | |
US10360157B2 (en) | Memory system and method for wear-leveling by swapping memory cell groups | |
KR102157570B1 (ko) | 메모리 컨트롤러 및 이를 포함하는 스토리지 디바이스 | |
US11507289B2 (en) | Storage device, controller and method for operating storage device | |
US20130205073A1 (en) | Memory device, memory system, and programming method thereof | |
US11360885B2 (en) | Wear leveling based on sub-group write counts in a memory sub-system | |
CN112349334A (zh) | 跨越块池的耗损均衡 | |
US9507706B2 (en) | Memory system controller including a multi-resolution internal cache | |
CN112447242B (zh) | 对可用电源的改变的响应 | |
US9740602B2 (en) | Memory orprating method and memory device using the same | |
US11789861B2 (en) | Wear leveling based on sub-group write counts in a memory sub-system | |
US20230073148A1 (en) | Storage device | |
CN116931823A (zh) | 利用编程交错增强写入性能的系统及方法 | |
CN117174152A (zh) | 存储器子系统阈值电压修改操作 | |
CN117636968A (zh) | 用于块条写入的混合写入光标 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |