CN1822217A - 将数据存储在非易失性高速缓冲存储器中的设备和方法 - Google Patents

将数据存储在非易失性高速缓冲存储器中的设备和方法 Download PDF

Info

Publication number
CN1822217A
CN1822217A CNA200510097425XA CN200510097425A CN1822217A CN 1822217 A CN1822217 A CN 1822217A CN A200510097425X A CNA200510097425X A CN A200510097425XA CN 200510097425 A CN200510097425 A CN 200510097425A CN 1822217 A CN1822217 A CN 1822217A
Authority
CN
China
Prior art keywords
data
storage
cache unit
volatile cache
volatile
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.)
Pending
Application number
CNA200510097425XA
Other languages
English (en)
Inventor
尹熙撤
全裕成
崔明洵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN1822217A publication Critical patent/CN1822217A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47JKITCHEN EQUIPMENT; COFFEE MILLS; SPICE MILLS; APPARATUS FOR MAKING BEVERAGES
    • A47J37/00Baking; Roasting; Grilling; Frying
    • A47J37/06Roasters; Grills; Sandwich grills
    • A47J37/07Roasting devices for outdoor use; Barbecues
    • A47J37/0786Accessories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/21Employing a record carrier using a specific recording technology
    • G06F2212/214Solid state disk
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/22Employing cache memory using specific memory technology
    • G06F2212/222Non-volatile memory

Abstract

本发明提供了一种考虑更新率来将数据存储在非易失性高速缓冲存储器中的设备和方法。所述设备包括:非易失性海量存储单元;非易失性高速缓冲存储器单元;和存储器控制器,控制非易失性海量存储单元和非易失性高速缓冲存储器单元,并基于数据更新率来选择性地将数据存储在非易失性海量存储单元或非易失性高速缓冲存储器单元中。所述方法包括:接收存储数据的请求;和根据数据更新率来选择性地将数据存储在非易失性海量存储单元或非易失性高速缓冲存储器单元中;其中,如果更新率大于阈值,那么所述数据被存储在非易失性高速缓冲存储器单元中。

Description

将数据存储在非易失性高速缓冲存储器中的设备和方法
                         技术领域
本发明涉及一种考虑更新率来将数据存储在非易失性高速缓冲存储器中的设备和方法。
                         背景技术
随着多媒体技术的发展,数据量显著增加。此外,有了存储多媒体数据的各种装置,诸如数码相机、数字可携式摄像机和数字记录器,人们对存储多媒体数据的非易失性存储器的兴趣越来越大。在非易失性存储器中,有一种需要在写入之前进行擦除的NAND型闪速存储器。
闪速存储器是一种电可擦除并可编程的非易失性存储器,并且由于其大小和低功耗而具有许多优点。然而,在将数据存储在闪速存储器中之前需要擦除。在这种情况下,擦除单元可比写单元大。例如,就512字节的写单元和16k字节的擦除单元而言,如果写扇区属于已占用(非擦除的)扇区,那么应该在写入之前执行擦除。因此,应该在擦除16k字节之后写入512字节。这是因为闪速存储器包括空(擦除的)扇区和全(非擦除的)扇区。
然而,诸如磁盘的存储器可将数据存储在已写入数据而没有擦除的扇区中。按照这种方式,在磁盘和闪速存储器之间在数据写入上存在差异。因此,诸如文件系统的系统使用闪速翻译层(FTL)以使用闪速存储器。
图1示出用于将数据输入和输出到相关技术的闪速存储器的FTL的操作。
显示应用程序如何通过FTL将数据存储到闪速存储器和从闪速存储器读取数据的结构如图1中的(a)所示。
应用程序10以与其读取和存储存储在文件系统20中的数据相同的方式来读取闪速存储器中的数据并将数据存储在闪速存储器中。文件系统20不直接访问闪速存储器而是通过FTL 30来读取和存储数据。因此,应用程序或文件系统不指示与闪速存储器的写入有关的擦除工作。
当已执行擦除操作时,FTL 30将在写入操作期间由文件系统产生的逻辑地址转换成闪速存储器100中扇区的物理地址。为了快速执行地址转换,相对高成本的静态随机存取存储器(SRAM)被用作地址转换表。通过使用FTL30,主机可通过常用的磁盘的文件系统,诸如文件分配表(FAT),来有效控制闪速存储器。
FTL的转换如图1中的(b)所示。逻辑地址被转换成物理地址。逻辑地址是盘的扇区,可以是扇区编号。物理地址可以是闪速存储器的块编号(块地址)和页编号(页地址)。
通过FTL执行的读取和写入如图1中的(c)所示。如果文件系统命令FTL执行读取,那么FTL基于作为逻辑地址的相应的扇区编号搜索包括块编号和页编号的物理地址,并读取存储在闪速存储器中的数据。如果文件系统命令FTL执行写入,那么FTL从闪速存储器选择擦除的块以将数据存储在该擦除的块中并存储关于最近对作为逻辑地址的扇区编号存储的数据的块和页信息。
图2示出根据相关技术逻辑地址通过FTL被转换成物理地址的过程。
通过FTL将逻辑地址转换成物理地址的过程被称为“映射”;映射包括页映射和块映射。
页映射如图2中的(a)所示。页映射映射逻辑地址和闪速存储器的页地址。如图2中的(a)所示,逻辑扇区编号6映射到物理地址(0,2);该物理地址(0,2)映射到块0的页2。
(b)中的块映射通过分别标记闪速存储器的块和页来标记块中相应页的偏移量。如图2中的(b)所示,用“01”和“10”标记扇区6;“01”映射到存储在第一块中的数据。与页数据对应的“10”表示块的页2(二进制数10)。
如果如图2中的(a)或(b)所示逻辑扇区编号与物理地址映射,那么由于即使物理地址已改变,映射数据也被更新,所以通过逻辑扇区读取数据的文件系统和应用程序中不会出现问题。因此,考虑到存储的数据被更新时闪速存储器的特性,可提出一种将数据存储在不需要擦除的扇区中的方法。
第6587915 B1号美国专利公开了一种闪速存储器和一种通过利用页映射和块映射来控制该闪速存储器的方法,在该方法中基本使用块映射。为了存储小容量(页)的重写数据,产生相应的日志块并将改变的页顺序写入日志块中,从而不会引起闪速存储器的浪费。然而,由于日志块被重复写入,所以需要频繁更新。
同时,连接逻辑地址和物理地址的映射表是用于从闪速存储器读取数据的最重要的信息。因此,如果映射表不同于实际存储状态,那么不可能读取或写入数据。通常,映射数据存储在闪速存储器中,在初始化操作期间,映射表被从闪速存储器恢复到诸如随机存取存储器(RAM)的非易失性存储器中。如果映射数据被改变(写入),那么改变的映射数据另外被存储在闪速存储器中,从而即使由于例如电源故障而导致存储在RAM中的数据丢失,也能保持映射数据。
然而,闪速存储器存在几个问题。如果更新紧跟着写入,那么必须进行擦除。在这方面,将映射数据存储在闪速存储器中可能是提高速度的障碍。此外,由于闪速存储器在擦除次数上受限制,所以频繁更新会减少闪速存储器的寿命。
此外,如果重复写入特定扇区的小容量的数据,那么可影响系统的性能。这在写入文件系统的元数据时频繁出现。具体地讲,就FAT文件系统而言,FAT表存在于固定的扇区中,并且在文件产生和写操作期间FAT表会变化。即,FAT表被频繁写入。
因此,就需要频繁更新的FTL映射表和FAT表而言,即使在电源中断时也有必要不将数据存储在闪速存储器中就能保持数据。
                          发明内容
因此,本发明针对出现在现有技术中的上述问题提出,并且本发明的一方面是提供一种考虑更新率来将数据存储在非易失性高速缓冲存储器中的设备和方法。
本发明的另一方面是提供一种考虑更新率来将数据存储在非易失性高速缓冲存储器中的设备和方法,即使不提供电源,该设备和方法也能保持存储在高速缓冲存储器中的数据。本发明的另外的优点、方面和特点将部分地在下面的描述中被阐述,并且一进行下面的检查,部分将对本领域的普通技术人员变得显而易见,或者可从本发明的实施被领会。
根据本发明的示例性实施例,提供了一种考虑更新率来将数据存储在非易失性高速缓冲存储器中的设备,该设备包括:非易失性海量存储单元;非易失性高速缓冲存储器单元;和存储器控制器,控制非易失性海量存储单元和非易失性高速缓冲存储器单元,并根据数据更新率来选择性地将数据存储在非易失性海量存储单元或非易失性高速缓冲存储器单元中。
根据本发明的另一示例性实施例,提供了一种考虑更新率来将数据存储在非易失性高速缓冲存储器中的方法,该方法包括:接收存储数据的请求;和根据数据更新率来选择性地将数据存储在非易失性海量存储单元或非易失性高速缓冲存储器单元中。
                      附图说明
从下面结合附图对本发明示例性实施例进行的详细描述,本发明的以上和其它方面将会变得更加清楚,其中:
图1示出用于输入和输出数据到相关技术的闪速存储器的FTL的操作;
图2示出根据相关技术通过FTL逻辑地址被转换成物理地址的过程;
图3示出根据本发明示例性实施例的大容量存储器的构造;
图4示例性地示出存储在根据本发明示例性实施例的非易失性高速缓冲存储器中的数据;
图5示出根据本发明示例性实施例的热点入口和非易失性高速缓冲存储器之间的关系;
图6示出根据本发明示例性的实施例在数据输入和输出操作期间装置之间的关系;
图7示出根据本发明示例性实施例的读取数据的过程的流程图;和
图8示出根据本发明示例性实施例的存储数据的过程的流程图。
                      具体实施方式
以下,将参照附图来详细描述本发明的示例性实施例。然而,本发明不限于以下公开的示例性实施例,而是可以以各种形式被实施。限定在该描述中的内容,诸如详细的构造和部件,只是被提供以帮助本领域的普通技术人员全面理解本发明的特定细节,本发明仅仅被限定在权利要求的范围内。在本发明示例性实施例的整个描述中,在各个附图中/贯穿各个附图,相同的附图标号被用于相同的部件。
非易失性RAM
现有RAM是易失型RAM,在易失型RAM中,如果不提供电源,那么先前存储的数据就被删除。即使不提供电源,非易失型RAM也能保存数据。最近,已提出铁电RAM(FeRAM)、磁阻RAM(MRAM)和相变RAM(PRAM)。
闪速存储器
闪速存储器是一种电可擦除和可编程只读存储器(EEPROM),包括支持字节单位的输入/输出(I/O)的NOR型和支持页单位的I/O的NAND型。NOR型闪速存储器读取速度快,但写入速度慢。NAND型闪速存储器由于其快速的写入速度和较低的单位开销而被主要用作存储大量数据的存储器。此外,闪速存储器还包括DINOR型、T-Poly型和AND型。在本发明中,闪速存储器指的是这样一种存储器:如果存在无用数据,那么在将数据存储在该存储器中之前需要进行擦除。本发明的闪速存储器可具有大于写入范围的擦除范围。
如上所述,如果要求高更新率的数据存储在诸如闪速存储器的非易失性大容量存储器中,那么可降低该存储器的性能。此外,如果数据存储在诸如RAM的易失性存储器中,那么可引起数据的不平衡。因此,期望一种使用非易失性RAM作为高速缓冲存储器来存储具有高更新率的数据的方法。
图3示出根据本发明示例性实施例的大容量存储器的构造。
在本发明示例性的实施例中,术语“模块”或“表”表示诸如现场可编程门阵列(FPGA)或专用集成电路(ASIC)的软件和硬件组成部件。所述模块用于执行某些功能,但是并不限于软件或硬件。所述模块可存在于可寻址的存储器中。或者,可提供所述模块以再现一个或多个处理器。因此,所述模块的示例包括以下组件,诸如软件组件、面向对象的软件组件、类组件、任务组件、进程、函数、属性、过程、子程序、程序代码段、驱动程序、固件、微码、电路、数据、数据库、数据结构、表、数组和参数。所述组件和模块可与其它组件和模块结合,或者可被分成另外的组件和模块。此外,可提供所述组件和模块以再现装置或安全多媒体卡中的一个或多个中央处理单元(CPU)。
在本发明中,大容量存储器被独立设置为可分离存储卡。这种存储器可以是内部存储器类型的数字装置。对于数字装置可分离存储卡和内部存储器彼此不同。本发明的存储器可使用在这些装置中。以下,根据本发明示例性实施例的大容量存储器包括外部存储器类型和内部存储器类型。
大容量存储器还包括存储器控制器、非易失性海量存储单元和非易失性高速缓冲存储器单元。所述存储器可包括易失性存储器单元以提高其性能。
现在参照图3,非易失性海量存储单元120是一种以与上述闪速存储器相同的方式具有大于写单元的擦除单元的闪速存储器装置。即使不提供电源,非易失性海量存储单元120也能保存数据,并且非易失性海量存储单元120在写入操作之前擦除无用数据(如果存在无用数据的话)。擦除单元不同于写单元。写单元被称为“页”,而擦除单元被称为包括两页或更多页的“块”。
非易失性高速缓冲存储器单元130存储将被存储在非易失性海量存储单元120中的一些数据。非易失性高速缓冲存储器单元130与非易失性海量存储单元120的相同之处在于,即使不提供电源,非易失性高速缓冲存储器单元130也能保存数据。然而,不像非易失性海量存储单元120,非易失性高速缓冲存储器单元130没有在写入之前需要进行擦除的开销。FeRAM、MRAM和PRAM、或者现有技术中已知的其它适合类型的RAM可用作非易失性高速缓冲存储器单元130。将被频繁更新的数据可存储在非易失性高速缓冲存储器单元130中。例如,这种数据可以是用于存储在非易失性海量存储单元120中的文件的管理数据、诸如FTL映射表的元数据、文件系统数据和频繁更新的数据文件。
存储器控制器110将数据输入到所述存储器,从所述存储器输出数据,还管理这些数据。存储器控制器110从非易失性海量存储单元120读取数据,将数据写入非易失性海量存储单元120,还擦除数据。此外,存储器控制器110确定数据是将被存储在非易失性高速缓冲存储器单元130中还是将被存储在非易失性海量存储单元120中,从而数据可被存储在相应的存储器中。存储器控制器110设置将被存储的数据的类型。存储器控制器110可包括从数据输入和输出功能到可执行数字权限管理(DRM)的CPU功能的各种功能。存储器控制器110的功能取决于所使用的存储器的类型。
易失性存储器140的示例包括动态RAM(DRAM)和静态RAM(SRAM)。易失性存储器140已被传统地使用在大容量存储器(例如,闪速存储器)中以增大输入和输出速度。在本发明示例性的实施例中,尽管可另外提供易失性存储器140以增大输入和输出速度,但是可用非易失性高速缓冲存储器单元130来替代这种易失性存储器140。因此,可根据成本和处理来选择性地提供易失性存储器140。
将被存储在非易失性高速缓冲存储器单元130中的数据被频繁更新。这些频繁更新引起闪速存储器的擦除操作。例如,非易失性高速缓冲存储器单元130可包括以与FTL相同的方式将逻辑地址转换成物理地址的映射表131。如图2所示,映射表用于将闪速存储器的逻辑地址转换成物理地址。在数据输入和输出操作期间,在FTL将逻辑地址转换成物理地址的同时,文件系统通过逻辑地址访问数据。
此外,所述大容量存储器可包括用于管理文件的数据;例如,它可包括关于存储在非易失性海量存储单元120中的文件的名称、大小和属性的数据,以及该文件的扇区映射数据。作为示例,FAT文件系统的文件分配表(FAT)或者unix文件系统的整个信息节点或信息节点的一部分可被存储在非易失性高速缓冲存储器单元130中。
此外,将被存储在非易失性高速缓冲存储器单元130中的数据可根据已存储在所述大容量存储器中的数据的特性而变化。例如,在根据DRM的权限对象的情况下,可根据媒体的特性需要权限对象的连续更新。在这种情况下,整个权限对象或权限对象的一部分可被存储在非易失性高速缓冲存储器单元130中,以在再现媒体时处理更新。
图4示出存储在根据本发明示例性实施例的非易失性高速缓冲存储器单元中的数据。
如上所述,非易失性高速缓冲存储器单元130存储用于管理将被存储在非易失性海量存储单元120中的数据的数据或者映射数据,并且还存储频繁更新的数据以减少闪速存储器的擦除操作。
频繁更新的FTL映射表131和热点入口132存储在数据结构区中,将被高速缓冲的数据存储在高速缓冲区137中。FTL映射表存储参照图2描述的映射数据。热点入口存储关于热点是否已存储在非易失性高速缓冲存储器单元130中的数据。所述热点是写入被重复的小扇区。在本发明示例性的实施例中,热点表示可存储在非易失性高速缓冲存储器单元130中的数据。然而,由于非易失性高速缓冲存储器单元130有限的存储容量,所以热点不能全都存储在非易失性高速缓冲存储器单元130中。因此,热点入口保持关于哪个热点在非易失性高速缓冲存储器单元130中具有数据的数据,或者保持关于热点什么时候已被更新的数据。
因而,热点被部分存储在高速缓冲区137中。可根据策略擦除这种热点数据,并且该数据在被存储在非易失性海量存储单元中之后被擦除。
热点入口132的结构的示例包括:非易失性高速缓冲存储器单元130的地址以及详述更新时间或更新次数的编号的时间戳。逻辑地址是逻辑扇区地址,逻辑扇区地址与FTL映射表131的逻辑地址对应。在非易失性高速缓冲存储器单元中的位置是指存储在高速缓冲区137中的地址。
当生产大容量存储器时,可设置将存储在非易失性高速缓冲存储器单元中的扇区,或者可由用户或装配装置来设置该扇区。
此外,通过允许存储器控制器测量数据更新率,所述扇区可存储在非易失性高速缓冲存储器单元中。例如,存储器控制器管理非易失性高速缓冲存储器单元的一部分的更新历史,从而具有特定阈值更新率或更大更新率的扇区被注册为热点入口,并且如果稍后出现更新,那么所述扇区被看作将被存储在非易失性高速缓冲存储器单元中的热点。同样,更新出现很少的扇区被从热点入口移走,从而稍后可从非易失性海量存储单元读取该扇区和将该扇区写到非易失性海量存储单元中。
图5示出根据本发明示例性实施例的热点入口和非易失性高速缓冲存储器单元之间的关系。
热点入口和非易失性高速缓冲存储器单元的数据之间的关系的示例如图5中的(a)所示。逻辑地址为“1”的热点存储在非易失性高速缓冲存储器单元的地址“0”中,逻辑地址为“5”的热点存储在非易失性高速缓冲存储器单元的地址“1”中。同时,逻辑地址为“9”的热点与非易失性高速缓冲存储器单元的地址“-1”对应,并且不被存储在非易失性高速缓冲存储器单元中。然后,为了读取或写入逻辑地址为“9”的热点的数据,必须将数据从非易失性海量存储单元读取到非易失性高速缓冲存储器单元中。
存储在非易失性高速缓冲存储器单元的一页中的FAT入口的示例如图5中的(b)所示,其中,所述页的大小是2KB,一个FAT入口是32位(在FAT32的情况下)。如果有存储FAT数据的逻辑地址的输入和输出,那么检查对应地址的热点入口以确定热点入口是否已存储在非易失性高速缓冲存储器单元中。如果热点入口已存储在非易失性高速缓冲存储器单元中,那么从诸如闪速存储器的非易失性海量存储单元读取数据并将该数据存储在非易失性高速缓冲存储器单元中。
图6示出根据本发明示例性的实施例在数据输入和输出期间装置之间的关系。
如果包含存储单元的系统将逻辑地址发送给存储器控制器110,那么存储器控制器110在检查诸如热点入口地址的与热点相关的数据被存储的扇区的同时检查逻辑地址是否是热点。如果在热点入口中没有相应的地址,那么所述数据与热点不对应。因此,所述数据被存储在非易失性海量存储单元120中。
如果所述数据与热点对应,那么非易失性高速缓冲存储器单元130读取或存储所述数据。如果所述数据与热点对应但是没有存储在非易失性高速缓冲存储器单元130中,那么非易失性海量存储单元120可将数据复制到非易失性高速缓冲存储器单元130。同时,如果所述数据与热点不对应,那么非易失性海量存储单元120可参照映射逻辑地址和物理地址的诸如FTL映射表的映射表读取或存储数据。
图7是示出根据本发明示例性实施例的读取数据的过程的流程图。
为了读取数据,在操作S110中基于逻辑地址检索热点入口。结果,如果在操作S120中将被读取的数据的逻辑地址存在于热点入口中,那么在操作S130中检查相应的入口是否有效。为此,如果值“-1”存储在非易失性高速缓冲存储器单元中,那么通过参考图4的非易失性高速缓冲存储器单元的地址确定该入口没有被存储在非易失性高速缓冲存储器单元中。如果对应的入口有效,那么在操作S140中非易失性高速缓冲存储器单元读取数据。如果所述数据与将被存储在非易失性高速缓冲存储器单元中的数据不对应,或者如果所述数据与在操作S120中未被存储在非易失性高速缓冲存储器单元中而将被存储在非易失性高速缓冲存储器单元中的数据对应,那么在操作S150中非易失性海量存储单元读取数据。
同时,如果所述数据与将被存储在非易失性高速缓冲存储器单元中的数据对应,但是还没有被存储在非易失性高速缓冲存储器单元中,那么在操作S150之后可将从非易失性海量存储单元读取的数据存储在非易失性高速缓冲存储器单元中。这时,热点入口被再次更新。
图8是示出根据本发明示例性实施例的存储数据的过程的流程图。
以与读取数据的过程相同的方式,在操作S210中基于逻辑地址检索热点入口。结果,如果在操作S220中热点入口不存在于热点入口中,那么在操作S240中数据被存储在非易失性海量存储单元中。如果对应的热点入口存在,那么在操作S230中检查对应的入口是否有效。如果入口存在,那么在操作S250中数据被存储在非易失性高速缓冲存储器单元中。因此,为了检查数据是否实际上已存储在非易失性高速缓冲存储器单元中,检查图4的非易失性高速缓冲存储器单元的物理地址上的数据。例如,如果值“-1”存储在非易失性高速缓冲存储器单元中,那么确定所述入口没有存储在非易失性高速缓冲存储器单元中,从而该入口不是有效的。因此,执行操作S231、S232、S233和S234以将数据存储在非易失性高速缓冲存储器单元中。首先,在操作S231中检查空白页是否存在于非易失性高速缓冲存储器单元中。如果在非易失性高速缓冲存储器单元中不存在空白页,那么在操作S232中从存储在非易失性高速缓冲存储器单元中的页中选择将被存储在非易失性海量存储单元中的页。可基于输入和输出操作的频率来选择该页。或者,可选择非易失性高速缓冲存储器单元的最旧的页。还可基于高速缓冲存储器的策略的示例来选择所述页。在操作S233中选择的页被存储在非易失性海量存储器单元中。在操作S234中非易失性高速缓冲存储器单元的页地址被存储在热点入口中。此外,可设置诸如时间戳的数据。在操作S250中数据被存储在非易失性高速缓冲存储器单元中。如果在非易失性高速缓冲存储器单元中存在空白页,那么直接执行操作S234。
如上所述,如果没有任何的关于哪些数据将被存储在非易失性高速缓冲存储器单元中的策略来使用非易失性高速缓冲存储器单元,那么难以减少闪速存储器的写入和擦除操作。然而,如果将频繁更新的数据存储在非易失性高速缓冲存储器单元中,那么可以提高数据输入和输出速度。
如上所述,可将诸如FTL映射表的元数据和关于FAT文件系统的信息存储在非易失性高速缓冲存储器单元中。此外,存储器控制器可根据存储在闪速存储器中的数据的特性来不同地设置数据。就DRM而言,可将当前执行的或复制的权限对象存储在非易失性高速缓冲存储器单元中。同时,可将仅在特定时间内有效的诸如密钥或认证证明的在使用一段时间之后被擦除的数据存储在非易失性高速缓冲存储器单元中。
在本发明中,将具有高更新率的数据存储在非易失性高速缓冲存储器单元中以减少数据存储所需的时间。此外,即使不提供电源,也能保持存储在高速缓冲存储器中的数据。
尽管已为示例性的目的描述了本发明的示例性实施例,但是本领域的技术人员应该理解,在不脱离如权利要求中所公开的本发明的范围和精神的情况下,可以对其进行各种修改、添加和替换。

Claims (22)

1、一种考虑更新率来将数据存储在非易失性高速缓冲存储器中的设备,该设备包括:
非易失性海量存储单元;
非易失性高速缓冲存储器单元;和
存储器控制器,控制所述非易失性海量存储单元和所述非易失性高速缓冲存储器单元,并根据数据更新率来选择性地将数据存储在所述非易失性海量存储单元或所述非易失性高速缓冲存储器单元中。
2、如权利要求1所述的设备,其中,如果所述更新率大于阈值,那么所述存储器控制器将数据存储在所述非易失性高速缓冲存储器单元中。
3、如权利要求1所述的设备,其中,所述非易失性海量存储单元被构造为在存储数据之前擦除无用数据。
4、如权利要求1所述的设备,其中,所述非易失性高速缓冲存储器单元还存储关于所述数据的信息。
5、如权利要求1所述的设备,其中,所述非易失性高速缓冲存储器单元在存储数据之前不需要擦除操作。
6、如权利要求1所述的设备,其中,所述存储器控制器将存储在所述非易失性高速缓冲存储器单元的第一扇区中的数据存储在所述非易失性海量存储器单元中,并将将被存储在所述非易失性高速缓冲存储器单元中的另一数据存储在所述第一扇区中。
7、如权利要求1所述的设备,其中,所述非易失性海量存储器单元包括闪速存储器组件。
8、如权利要求1所述的设备,其中,所述非易失性高速缓冲存储器单元包括非易失性随机存取存储器。
9、如权利要求1所述的设备,其中,所述存储器控制器将构成映射表的数据存储在所述非易失性高速缓冲存储器单元中,所述映射表将存储在所述非易失性海量存储单元中的数据的逻辑地址映射到所述数据的物理地址。
10、如权利要求1所述的设备,其中,所述存储器控制器将构成文件分配表的数据存储在所述非易失性高速缓冲存储器单元中。
11、如权利要求1所述的设备,其中,所述存储器控制器将构成信息节点的数据存储在所述非易失性高速缓冲存储器单元中。
12、一种考虑更新率来将数据存储在非易失性高速缓冲存储器中的方法,该方法包括:
接收存储数据的请求;和
根据数据更新率来选择性地将数据存储在非易失性海量存储单元或非易失性高速缓冲存储器单元中。
13、如权利要求12所述的方法,其中,如果所述更新率大于阈值,那么数据被存储在所述非易失性高速缓冲存储器单元中。
14、如权利要求12所述的方法,其中,所述非易失性海量存储单元在存储数据之前擦除无用数据。
15、如权利要求12所述的方法,其中,存储数据的步骤还包括:将与所述数据的存储有关的信息存储在所述非易失性高速缓冲存储器单元中。
16、如权利要求12所述的方法,其中,存储数据的步骤包括:在存储所述数据之前不执行擦除操作将所述数据存储在所述非易失性高速缓冲存储器单元中。
17、如权利要求12所述的方法,其中,存储数据的步骤包括:将存储在所述非易失性高速缓冲存储器单元的第一扇区中的数据存储在所述非易失性海量存储器单元中,并将将被存储的另一数据存储在所述第一扇区中。
18、如权利要求12所述的方法,其中,所述非易失性海量存储单元包括闪速存储器组件。
19、如权利要求12所述的方法,其中,所述非易失性高速缓冲存储器单元包括非易失性随机存取存储器。
20、如权利要求12所述的方法,其中,存储数据的步骤包括:将构成映射表的数据存储在所述非易失性高速缓冲存储器单元中,所述映射表将存储在所述非易失性海量存储单元中的数据的逻辑地址映射到所述数据的物理地址。
21、如权利要求12所述的方法,其中,存储数据的步骤包括:将构成文件分配表的数据存储在所述非易失性高速缓冲存储器单元中。
22、如权利要求12所述的方法,其中,存储数据的步骤包括:将构成信息节点的数据存储在所述非易失性高速缓冲存储器单元中。
CNA200510097425XA 2005-01-06 2005-12-28 将数据存储在非易失性高速缓冲存储器中的设备和方法 Pending CN1822217A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020050001264 2005-01-06
KR1020050001264A KR100725390B1 (ko) 2005-01-06 2005-01-06 수정 빈도를 고려하여 데이터를 비휘발성 캐쉬부에저장하는 장치 및 방법

Publications (1)

Publication Number Publication Date
CN1822217A true CN1822217A (zh) 2006-08-23

Family

ID=36642013

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA200510097425XA Pending CN1822217A (zh) 2005-01-06 2005-12-28 将数据存储在非易失性高速缓冲存储器中的设备和方法

Country Status (3)

Country Link
US (1) US20060149902A1 (zh)
KR (1) KR100725390B1 (zh)
CN (1) CN1822217A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102648457A (zh) * 2009-12-07 2012-08-22 微软公司 使用混合存储来延伸ssd生存期
CN103092526A (zh) * 2011-10-31 2013-05-08 国际商业机器公司 在存储设备间进行数据迁移的方法和装置
WO2015127772A1 (zh) * 2014-02-27 2015-09-03 中国科学院数据与通信保护研究教育中心 密钥保护方法和装置
CN107025177A (zh) * 2016-02-01 2017-08-08 爱思开海力士有限公司 存储器系统及其操作方法
CN111164694A (zh) * 2018-03-15 2020-05-15 西部数据技术公司 存储器的易失性管理
CN111625477A (zh) * 2016-07-01 2020-09-04 北京忆恒创源科技有限公司 访问擦除块的读请求的处理方法与装置
WO2021082109A1 (zh) * 2019-10-31 2021-05-06 江苏华存电子科技有限公司 一种在静态随机存取存储器上的混合型映象表
CN111164694B (zh) * 2018-03-15 2024-04-19 西部数据技术公司 存储器设备和用于存储器设备的易失性管理的方法

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7426606B2 (en) * 2006-03-31 2008-09-16 Intel Corporation Method, apparatus and system for reverting FAT cluster number to file ID and offset of non-FAT flash file system
US7406560B2 (en) * 2006-06-21 2008-07-29 Intel Corporation Using multiple non-volatile memory devices to store data in a computer system
KR100874702B1 (ko) 2006-10-02 2008-12-18 삼성전자주식회사 플래시 메모리 파일 시스템을 효율적으로 관리하기 위한장치 드라이버 및 방법
KR100818797B1 (ko) * 2006-10-19 2008-04-01 삼성전자주식회사 메모리 용량 조절 방법과 메모리 용량 조절 장치
CN101622594B (zh) 2006-12-06 2013-03-13 弗森-艾奥公司 使用空数据令牌指令管理来自于请求设备的数据的装置、系统和方法
KR100823171B1 (ko) 2007-02-01 2008-04-18 삼성전자주식회사 파티션된 플래시 변환 계층을 갖는 컴퓨터 시스템 및플래시 변환 계층의 파티션 방법
US20080201288A1 (en) * 2007-02-15 2008-08-21 International Business Machines Corporation Method, system and program product for identifying caching opportunities
JP4356782B2 (ja) * 2007-09-12 2009-11-04 ソニー株式会社 メモリ装置、メモリ制御方法、およびプログラム
KR101297563B1 (ko) 2007-11-15 2013-08-19 삼성전자주식회사 스토리지 관리 방법 및 관리 시스템
US8140746B2 (en) * 2007-12-14 2012-03-20 Spansion Llc Intelligent memory data management
US20100049920A1 (en) * 2008-08-20 2010-02-25 International Business Machines Corporation Dynamically adjusting write cache size
TWI473100B (zh) * 2008-09-05 2015-02-11 A Data Technology Co Ltd Flash memory system and its operation method
KR20100055565A (ko) * 2008-11-18 2010-05-27 삼성전자주식회사 메모리 장치 및 메모리 장치의 관리 방법
US8412987B2 (en) * 2009-06-30 2013-04-02 Micron Technology, Inc. Non-volatile memory to store memory remap information
JP5434738B2 (ja) * 2010-03-26 2014-03-05 日本電気株式会社 ディスク装置
US8782344B2 (en) * 2012-01-12 2014-07-15 Fusion-Io, Inc. Systems and methods for managing cache admission
US10102117B2 (en) 2012-01-12 2018-10-16 Sandisk Technologies Llc Systems and methods for cache and storage device coordination
US9251052B2 (en) 2012-01-12 2016-02-02 Intelligent Intellectual Property Holdings 2 Llc Systems and methods for profiling a non-volatile cache having a logical-to-physical translation layer
US9767032B2 (en) 2012-01-12 2017-09-19 Sandisk Technologies Llc Systems and methods for cache endurance
US10019353B2 (en) 2012-03-02 2018-07-10 Longitude Enterprise Flash S.A.R.L. Systems and methods for referencing data on a storage medium
EP2733617A4 (en) * 2012-06-30 2014-10-08 Huawei Tech Co Ltd DATA BUFFER DEVICE, DATA STORAGE SYSTEM AND METHOD THEREFOR
KR102002830B1 (ko) 2012-09-28 2019-07-23 삼성전자 주식회사 세그먼트 클리닝 장치 및 방법
US9076530B2 (en) 2013-02-07 2015-07-07 Seagate Technology Llc Non-volatile write buffer data retention pending scheduled verification
US9424946B2 (en) 2013-02-08 2016-08-23 Seagate Technology Llc Non-volatile buffering to enable sloppy writes and fast write verification
US9552288B2 (en) 2013-02-08 2017-01-24 Seagate Technology Llc Multi-tiered memory with different metadata levels
KR20160070920A (ko) * 2014-12-10 2016-06-21 에스케이하이닉스 주식회사 맵 테이블을 갖는 컨트롤러 및 반도체 메모리 장치를 포함하는 메모리 시스템 및 그것의 동작 방법
WO2016122491A1 (en) * 2015-01-28 2016-08-04 Hewlett-Packard Development Company, L.P. Page cache in a non-volatile memory
US10289544B2 (en) * 2016-07-19 2019-05-14 Western Digital Technologies, Inc. Mapping tables for storage devices
US11237758B2 (en) * 2016-08-06 2022-02-01 Wolley Inc. Apparatus and method of wear leveling for storage class memory using address cache
KR102596964B1 (ko) * 2018-07-31 2023-11-03 에스케이하이닉스 주식회사 맵 캐시 버퍼 크기를 가변시킬 수 있는 데이터 저장 장치
US20220229552A1 (en) * 2021-01-15 2022-07-21 SK Hynix Inc. Computer system including main memory device having heterogeneous memories, and data management method thereof

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970008188B1 (ko) * 1993-04-08 1997-05-21 가부시끼가이샤 히다찌세이사꾸쇼 플래시메모리의 제어방법 및 그것을 사용한 정보처리장치
US5845313A (en) * 1995-07-31 1998-12-01 Lexar Direct logical block addressing flash memory mass storage architecture
GB2291991A (en) * 1995-09-27 1996-02-07 Memory Corp Plc Disk drive emulation with a block-erasable memory
KR100232231B1 (ko) * 1996-09-13 2000-03-02 김영환 비휘발성 메모리 소자의 데이터 기입 장치 및 방법
US6000006A (en) * 1997-08-25 1999-12-07 Bit Microsystems, Inc. Unified re-map and cache-index table with dual write-counters for wear-leveling of non-volatile flash RAM mass storage
KR19990019377A (ko) * 1997-08-29 1999-03-15 윤종용 플래시 메모리 이용 보조기억장치 및 그 방법
KR100594687B1 (ko) * 1998-12-24 2006-10-04 엘지전자 주식회사 휴대용단말기에서 대량의 데이타 저장 방법
US6282605B1 (en) * 1999-04-26 2001-08-28 Moore Computer Consultants, Inc. File system for non-volatile computer memory
KR100577380B1 (ko) * 1999-09-29 2006-05-09 삼성전자주식회사 플래시 메모리와 그 제어 방법
US6976073B2 (en) * 2001-11-29 2005-12-13 Hewlett-Packard Development Company, L.P. Transparent remote data storage device and method

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102648457B (zh) * 2009-12-07 2015-07-29 微软公司 使用混合存储来延伸ssd生存期
CN102648457A (zh) * 2009-12-07 2012-08-22 微软公司 使用混合存储来延伸ssd生存期
CN103092526B (zh) * 2011-10-31 2016-03-30 国际商业机器公司 在存储设备间进行数据迁移的方法和装置
CN103092526A (zh) * 2011-10-31 2013-05-08 国际商业机器公司 在存储设备间进行数据迁移的方法和装置
US10313111B2 (en) 2014-02-27 2019-06-04 Data Assurance And Communication Security Research Center, Chinese Academy Of Sciences Key protecting method and apparatus
WO2015127772A1 (zh) * 2014-02-27 2015-09-03 中国科学院数据与通信保护研究教育中心 密钥保护方法和装置
CN107025177A (zh) * 2016-02-01 2017-08-08 爱思开海力士有限公司 存储器系统及其操作方法
CN107025177B (zh) * 2016-02-01 2021-03-30 爱思开海力士有限公司 存储器系统及其操作方法
CN111625477A (zh) * 2016-07-01 2020-09-04 北京忆恒创源科技有限公司 访问擦除块的读请求的处理方法与装置
CN111625477B (zh) * 2016-07-01 2023-09-05 北京忆恒创源科技股份有限公司 访问擦除块的读请求的处理方法与装置
CN111164694A (zh) * 2018-03-15 2020-05-15 西部数据技术公司 存储器的易失性管理
CN111164694B (zh) * 2018-03-15 2024-04-19 西部数据技术公司 存储器设备和用于存储器设备的易失性管理的方法
WO2021082109A1 (zh) * 2019-10-31 2021-05-06 江苏华存电子科技有限公司 一种在静态随机存取存储器上的混合型映象表

Also Published As

Publication number Publication date
KR20060080972A (ko) 2006-07-12
KR100725390B1 (ko) 2007-06-07
US20060149902A1 (en) 2006-07-06

Similar Documents

Publication Publication Date Title
CN1822217A (zh) 将数据存储在非易失性高速缓冲存储器中的设备和方法
US10649657B2 (en) Log-based storage for different data types in non-volatile memory
US9690694B2 (en) Apparatus, system, and method for an address translation layer
US10915475B2 (en) Methods and apparatus for variable size logical page management based on hot and cold data
Wu et al. An efficient B-tree layer for flash-memory storage systems
US8250286B2 (en) Block management method, and storage system and controller using the same
CN108121503B (zh) 一种NandFlash地址映射及块管理方法
US8166258B2 (en) Skip operations for solid state disks
US7953919B2 (en) Physical block addressing of electronic memory devices
US10496334B2 (en) Solid state drive using two-level indirection architecture
US20070094445A1 (en) Method to enable fast disk caching and efficient operations on solid state disks
US20100332732A1 (en) Memory systems and mapping methods thereof
US20200272577A1 (en) Cache Management of Logical-Physical Translation Metadata
US20140122783A1 (en) Solid state memory (ssm), computer system including an ssm, and method of operating an ssm
US20080098195A1 (en) Memory system including flash memory and mapping table management method
KR102087495B1 (ko) 저장 파라미터 변경
CN1705936A (zh) 用于分割一逻辑块的方法及设备
CN1828555A (zh) 支持多存储器映射方案的快闪存储器控制器件及其方法
US20190163386A1 (en) Cell block allocation for hybrid dual write
KR20150083264A (ko) 플래시 메모리 장치를 위한 주소변환 시스템 및 그 방법
TW201917581A (zh) 管理快閃記憶體模組的方法及相關的快閃記憶體控制器
US20090172269A1 (en) Nonvolatile memory device and associated data merge method
KR20080074584A (ko) 메모리 시스템 및 그것의 데이터 저장 방법
CN104424110A (zh) 固态驱动器的主动回收
CN113253926A (zh) 提升新型存储器的查询和存储性能的存储内索引构建方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Open date: 20060823