CN1749974A - 存储器管理装置以及存储器装置 - Google Patents
存储器管理装置以及存储器装置 Download PDFInfo
- Publication number
- CN1749974A CN1749974A CNA200510099944XA CN200510099944A CN1749974A CN 1749974 A CN1749974 A CN 1749974A CN A200510099944X A CNA200510099944X A CN A200510099944XA CN 200510099944 A CN200510099944 A CN 200510099944A CN 1749974 A CN1749974 A CN 1749974A
- Authority
- CN
- China
- Prior art keywords
- data
- address
- mentioned
- physical block
- request
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/102—External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/14—Circuits for erasing electrically, e.g. erase voltage switching circuits
- G11C16/16—Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups
Landscapes
- Memory System (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明提供存储器管理装置以及存储器装置。该存储器管理装置管理具有多个块,构成为能够以其各块为单位清除数据的非易失性半导体存储器,具备:在有对于上述非易失性半导体存储器的数据的清除请求时,在包括上述清除请求的清除对象的数据的块中,设定上述清除对象的数据的地址范围的设定单元、在有对于上述非易失性半导体存储器的数据的读出请求时,在依据上述读出请求的读出对象的地址范围包含于由上述设定单元设定的地址范围中的情况下,进行作为上述读出对象的数据输出初始值数据的控制的控制单元。
Description
本申请基于并要求2004年9月13日提出的在前日本专利申请No.2004-265806的优先权,这里通过参考来合并其全部内容。
技术领域
本发明涉及具备非易失性存储器的存储器管理装置以及存储器装置。
背景技术
以往,在作为非易失性存储器一种的NAND闪速存储器对于已经发生数据写入的块发生重写时,需要把要在该理应重写的块中的被重写的数据以外的数据写入到其它物理块中的处理,因此需要很多的处理时间。
为了去除这样的原本应该写入的数据以外的写入处理,例如,像在特开2003-280822号公报中公开的那样,有对于一个虚拟块,使多个物理块与其相对应的方式。在该方式中,有根据清除命令,通过进行取消虚拟块与物理块的对应的处理,缩短在数据清除时花费的处理时间的技术。
在上述的使用了NAND闪速存储器装置即存储卡中,在该存储卡之一的SD存储卡(登录商标)的推荐文件系统中即FAT(文件分配表)文件系统中,在至1GB的容量中,分组尺寸是16K字节。在存储卡中,由于用分组单位分配读和写文件的尺寸,因此大多情况下主设备向存储卡发行的清除的最小单位相同,指定为16K字节。另外,发行到存储卡的清除命令大都是在该存储卡的格式化时。
主设备根据清除命令,对主引导记录(Master Boot Record)进行读入,把存储卡中的地址增加为16KB的同时,顺序清除16KB范围的数据这样的控制。
原本NAND闪速存储器的物理块尺寸大多是16K字节,该尺寸与前面所示的分组尺寸相同。然而,为了减小NAND闪速存储器的芯片尺寸,NAND闪速存储器的物理块尺寸正在逐渐增大为32K字节、128K字节、256K字节、......。
为此,在NAND闪速存储器的物理块尺寸是256K字节而且在分组尺寸是16KB的情况下,在要清除NAND闪速存储器的物理块中的16KB范围的数据时,由于在NAND闪速存储器中不能够进行数据的覆盖,因此在该NAND闪速存储器中,需要准备其它的物理块,对于作为物理块尺寸的256K字节中的16KB清除范围以外的数据进行复制。从而,在进行NAND闪速存储器中的一部分数据清除的情况下,其处理时间没有成为与清除尺寸相称的程度,始终需要一定的处理时间。
发明内容
依据本发明一个实施形态的存储器管理装置管理具有多个块,构成为能够以其各个块作为清除单位清除数据的非易失性半导体存储器,具备:在具有对于上述非易失性半导体存储器的数据清除请求时,在包括上述清除请求的清除对象的数据在内的块中,设定上述清除对象的数据的地址范围的设定单元、在具有对于上述非易失性半导体存储器的数据的读出请求时,在依据上述读出请求的读出对象的地址范围包含于由上述设定单元设定了的地址范围中的情况下,进行作为上述读出对象的数据输出初始值数据的控制的控制单元。
附图说明
附图与说明书相结合并且建立其一部分,举例说明本发明的最佳实施形态,并且与以上给出的描述以及下面给出的最佳实施形态的详细描述一起,用于解释本发明的原理。
图1是表示依据本发明实施形态的存储卡的结构例的框图。
图2表示清除写入到依据本发明实施形态的存储卡的闪速存储器上的物理块中的一部分数据的顺序(之一)的转移图。
图3表示在写入到依据本发明实施形态的存储卡中的数据的清除处理中使用的清除区指针的第1例子。
图4表示在写入到依据本发明实施形态的存储卡中的数据的清除处理时使用的清除区指针的第2例子。
图5表示在写入到依据本发明实施形态的存储卡中的数据的清除处理时使用的清除区指针的第3例子。
图6表示在写入到遵从本发明实施形态的存储卡中的数据的清除处理时使用的清除区指针的第4例子。
图7表示写入到依据本发明的实施形态的存储卡中的数据的清除顺序的一个例子(之二)的转移图。
图8是表示写入到依据本发明实施形态的存储卡中的数据的清除顺序的一个例子(之二)的流程图。
图9是表示写入到依据本发明实施形态的存储卡中的数据的读出顺序的一个例子的流程图。
图10是表示写入到依据本发明实施形态的存储卡中的数据清除顺序的一个例子(之三)的转移图。
图11是表示在写入到依据本发明实施形态的存储卡中的数据的清除有无使用清除区指针的选择处理的一个例子的流程图。
具体实施方式
以下根据图面说明本发明的一个实施形态。
图1是表示依据本发明一个实施形态的存储卡(存储器装置)1的结构例的框图。
图1所示的存储卡1例如与数码照相机等主设备2连接。
存储卡1具备闪速存储器控制单元11、主接口单元12、RAM13以及闪速存储器14。闪速存储器14例如是NAND型非易失性存储器。闪速存储器控制单元11经过主接口单元12与主设备2连接。另外,闪速存储器控制单元11与RAM13以及闪速存储器14连接。
来自主设备2向存储卡1所发行的指令通过指令用的信号线,输出到存储卡1内部的主接口单元12。
主接口单元12从来自于主设备2的指令格式抽取指令信息和地址信息。闪速存储器控制单元11进行依据来自主接口单元12的指令信息和地址信息的动作。
闪速存储器控制单元11进行表示闪速存储器14的物理块与逻辑块的对应关系的与表的管理或者清除有关的管理。
图2是表示清除写入到依据本发明一个实施形态的存储卡1中的闪速存储器14上的物理块中的一部分数据的顺序(之一)的一个例子的转移图。
闪速存储器14中的物理块的一块部分的尺寸是128K字节(KB)。闪速存储器14的物理块的一块是256页。可写入到闪速存储器14的物理块的一页中的数据尺寸是512字节。
图2表示在与遍及存储卡1的逻辑块地址“0x40000”地址部分的地址范围相对应的存储区中,写入连续的256KB部分的数据的情况。所谓逻辑块地址,是存储卡1的虚拟存储器上的索引值。逻辑块地址的开始两位“0x”是16进制的识别符。
闪速存储器14的一块物理块的尺寸是128KB。由此,连续的256KB的数据跨越写入在闪速存储器14上的两个物理块中。
图2所示的“物理块n(n=0、1、2、......)”意味着授予物理块地址“n”的物理块。在图2所示的形态中,上述256KB的数据中,128KB的数据写入到授予物理块地址“3”的物理块中。另外,剩余的128KB尺寸的数据写入到授予物理块地址“5”的物理块中。
RAM13如图1所示,具有逻辑物理地址变换表13a以及清除区指针存储区13b。逻辑物理地址变换表13a在闪速存储器14上的各物理块中,使授予写入着数据的物理块上的物理块地址以及逻辑块地址相对应地进行管理。
例如,所谓在逻辑物理块变换表13a中写入的“0x40000......物理块3”(参照图2),表示逻辑块地址“0x40000”地址与物理块地址“3”相对应。具体地讲,在闪速存储器14中,存储在以逻辑块地址“0x40000”地址作为起始地址,授予“0x20000”地址部分的连续地址范围的逻辑块中所存储的数据意味着存储在授予物理块地址“3”的物理块中。
另外,逻辑块地址与物理块地址不存在对应的物理块是未使用状态的物理块。在该未使用状态的物理块中写入初始值数据。当从系统即闪速存储器控制单元11具有对于未使用状态的物理块的读出请求时,读出初始值数据。
该未使用状态的物理块如果依据闪速存储器控制单元11的控制使授予给该物理块的物理块地址与逻辑块地址建立对应关系,则能够使用。
RAM13的清除区指针存储区13b(参照图1)在授予预先规定的物理块地址的物理块的各块中,管理没有写入用户数据即视为写入初始值数据的页的范围。所谓用户数据是初始值数据以外的数据。
在从主设备2经过主接口单元12,发行对于闪速存储器14上的逻辑块地址“0x40000”地址的服务请求时,闪速存储器控制单元11参照RAM13的逻辑物理地址变换表13a。而且,闪速存储器控制单元11从逻辑物理地址变换表13a检测出在“物理块3”即在授予了与逻辑块地址“0x40000”地址相对应的物理块地址“3”的物理块中写入了数据,读出写入到该物理块中的数据,作为对象数据向主设备2输出。
其次,说明在闪速存储器14中,如果与逻辑块地址“0x4000”地址建立对应关系,则在存储于由逻辑物理地址变换表13a管理的授予物理块地址“3”的物理块中的数据中,当从主设备2发行了清除16384字节(32页)部分数据的指令时,进行依据该指令的处理的顺序的第1例子。这里,假设RAM13没有清除区指针存储区13b。
这里,在闪速存储器14的物理块中,清除从授予物理块地址“3”的物理块的“页0”到“页31”为止的32页部分的数据。
数据的清除单位由于是物理块的一块部分,因此在授予了物理块地址“3”的物理块的“页32”以后的页中写入的数据也成为清除的对象。
因此,在闪速存储器14中的授予物理块地址“3”的物理块的各块中,把授予了比“页31”大的页地址的页中写入的数据复制到闪速存储器14中的其它的物理块中。这里,复制对象的物理块是授予了物理块地址“4”的物理块(“物理块4”)。
如果向“物理块4”的复制处理结束,则闪速存储器控制单元11把存储在RAM13的逻辑物理地址变换表13a中的“0x40000......物理块地址3”的信息改写为“0x40000......物理块4”。由此,在逻辑物理地址变换表13a中,与逻辑块地址“0x40000”地址相关联的物理块地址从“3”变更为“4”。
闪速存储器控制单元11在有从主设备2向闪速存储器14的访问请求时,参照如上述那样改写了信息的逻辑物理地址变换表13a。闪速存储器制单元11视为通过参照该逻辑物理地址变换表13a,把与从逻辑块地址“0x40000”地址到“0x20000”地址部分的地址范围相对应的虚拟存储器上的块中写入的128KB的数据写入到闪速存储器14中的授予了物理块地址“4”的物理块中。
根据以上所述,对于闪速存储器14中的具有128KB尺寸的物理块中的256页的区域,清除16KB的数据,即跨越32页部分所写入的数据时,闪速存储控制单元11必须进行读出闪速存储器14的物理块的224页(=256页-32页)部分的数据,把该读出的数据写入到其它物理块中的控制。因此,用于数据清除的处理时间多。
例如,在对于闪速存储器14的物理块写入处理需要的时间是1.2微秒/4页的情况下,224页部分的写入处理所需要的时间是67.2微秒(=224/4*1.2)。一块物理块部分的数据的清除处理所需要的时间是2微秒,物理块的32页部分的数据清除所需要的时间大约是一块物理块部分的数据的清除处理中花费的时间的32倍。
为了缩短该处理时间,在依据本发明一个实施形态的存储器管理装置中,设置设定清除区指针的功能。
所谓清除区指针是存储在图1所示的清除区指针存储区13b中的信息。该清除区指针表示在闪速存储器14的物理块的各页中所授予的页地址中,在一部分连续的页上授予的页地址的范围。
闪速存储器控制单元11把闪速存储器14的物理块的各页中,与用存储在清除区指针存储区13b中的清除区指针表示的地址范围相对应的页视为虚拟清除状态的页。所谓虚拟清除状态,是根据来自主设备2的访问请求,闪速存储器控制单元11在写入到闪速存储器14上的数据中不进行清除对象的数据的物理清除,而在外观上表示清除了的状态。
用清除区指针表示的值作为能够推定闪速存储器14的物理块中的各页中虚拟清除了的部分的值。能够推定虚拟清除的部分的值例如是表示为虚拟清除的区域的最终地点的地址值、来自起始地址的尺寸或者数据成为有效的区域的起始地址值等。
图3表示清除区指针的第1例子。在该例子中,作为清除区指针是设定开始指针和结束指针的情况。闪速存储器控制单元11根据来自主设备2的清除请求,在闪速存储器14上的写入了清除对象的数据的物理块(物理块A)中,把对写入了清除对象的数据的页群的起始页所授予的页地址指定为开始指针。而且,闪速存储器控制单元11根据来自主设备2的清除请求,把对写入了清除对象的数据的页群的最终页所授予的页地址指定为结束指针。
由此,在闪速存储器14上的写入了清除对象数据的物理块中,与指定为开始指针的页地址到设定为结束指针的页地址的地址范围相对应的页,即,用区域21表示的部分(参照图3)成为虚拟清除部分。
图4表示清除区指针的第2例子。在该例子中,闪速存储器控制单元11与第1例子相同,作为清除区指针设定开始指针和结束指针。但是,在该例子中,在闪速存储器14上的对写入清除对象数据的物理块的起始页所授予的地址成为开始指针,对写入了清除对象数据的物理块的最终页所授予的地址成为结束指针。
这种情况下,闪速存储器控制单元11不需要进行把清除区指针存储在清除区指针存储区13b中的处理,而可以进行应该把该清除对象的物理块整体(区域22)作为未使用状态的处理,即解除用逻辑物理地址变换表13a表示的逻辑块地址与物理块地址(“A”)的对应关系的处理。
图5表示清除区指针的第3例子。在该例子中,闪速存储器控制单元11把与虚拟清除区的起始相当的页地址定义为是对物理块的起始页所授予的页地址,作为清除区指针,仅设定结束指针。由此,与闪速存储器14中的从对写入了清除对象数据的物理块的起始页所授予的地址到用结束指针指定的地址的地址范围相对应的页,即用区域23表示的部分成为虚拟清除区。
图6表示清除区指针的第4例子。在该例子中,与图3的例子相同,作为清除区指针仅设定结束指针,说明从主设备2发行了跨越闪速存储器14上的多个物理块的清除指令时的处理。
这里,表示从主设备2发行了跨越3个物理块(物理块A、B、C)的清除指令的情况。物理块A的最终页由于不是虚拟清除区的终端部分,因此不能够设定虚拟清除区的结束指针。由此,闪速存储器控制单元11对于物理块A的清除对象的区域24,进行图2所示的伴随数据复制的清除处理。
关于物理块B,由于所有的区域成为清除对象区,因此闪速存储器控制单元11如上所述,通过从逻辑物理地址变换表13a削除物理块B的地址信息以及与该地址信息相对应的逻辑块地址信息,把该物理块的所有区域(区域25)作为未使用状态的块。
另外,关于物理块C,闪速存储器控制单元11与上述图5所示的例子相同,把对数据清除对象区域的最终部分的页所授予的页地址设定为清除区指针的结束指针。由此,区域26成为虚拟清除区,在写入到物理块C的数据中,不需要移动不是清除对象的数据。
例如,在作为清除区指针,闪速存储器控制单元11指定了“页10”的情况下,跨越从物理块C的起始地址到第10页为止的范围的写入数据成为虚拟清除状态。另外,在作为清除区指针,闪速存储器控制单元11指定了“页0”的情况下,意味着物理块C的起始地址以后,即写入到物理块C的各页中的数据全部成为有效数据,虚拟清除的区域没有存在于物理块C中。
这里,清除区指针存储区13b在闪速存储器14的各物理块中,存储依据来自主设备2的数据清除请求的成为清除对象的数据所存入的物理块中的虚拟清除区的数据,而在RAM13中,在能够确保大量的存储区的情况下,在清除区指针清除区13b中,也可以对于各物理块分别管理虚拟清除区的数据。
其次,说明清除写入到依据本发明一个实施形态的存储卡1的闪速存储器14上的物理块中的一部分数据的顺序(之二)的一个例子。
图7是表示写入到依据本发明一个实施形态的存储卡1中的数据的清除顺序(之二)的一个例子的转移图。图8是表示写入到依据本发明一个实施形态的存储卡1中的数据的清除顺序(之二)的一个例子的流程。
这里,说明与上述的数据清除顺序(之一,参照图2)相同,根据逻辑物理地址变换表13a,在与逻辑块地址“0x40000”地址相对应的授予了物理块地址“3”的物理块地址中进行存储后,则从主设备2发行在所管理的数据中清除16384字节(32页)部分数据的指令时的数据清除顺序。
这里,假设RAM13具有清除区指针存储区13b。另外,数据清除请求前的各物理块结构以及由逻辑物理地址变换表13a管理的信息的内容与上述的第1例子相同。
存储在清除区指针存储区13b中的“开始0x00结束0x00”表示页地址“页0”设定为清除区指针的开始地址以及结束地址,没有设定虚拟清除区。
闪速存储器控制单元11在主设备2进行了数据清除请求时(步骤S1),参照逻辑物理地址变换表13a,检测与在清除请求中指定的地址所授予的逻辑块相对应的物理块的地址(步骤S2)。在图7所示的例子中,闪速存储器控制单元11检测表示逻辑块地址“0x40000”地址与物理块地址“3”相对应的信息。
而且,闪速存储器控制单元11判别与存储了数据清除请求的清除对象数据的区域相对应的地址范围是否已经存储在清除区指针存储区13b中(步骤S3)。
在步骤S3的处理结果判别为「NO」的情况下,闪速存储器控制单元11为了把存储了数据清除请求中的清除对象数据的区域即与物理块地址“3”相对应的从物理块的0页到第31页的32页部分的区域作为虚拟清除区,把写入到清除区指针存储区13b中的数据改写为“开始0x00结束0x1F”,而且,作为对象块的数据写入“物理块3”(步骤S4)。所谓对象块,是各物理块中写入了虚拟清除对象的数据的页所属的物理块。
而且,闪速存储器控制单元11判别用在步骤S4的处理中所指定的清除区指针表示的地址范围与块尺寸是否一致,即,用清除区指针表示的开始地址是否是数据清除对象的物理块的起始地址,而且,用清区指针表示的结束地址是否是数据清除对象的物理块的最终地址(步骤S5)。
在步骤S5的处理结果判别为「YES」的情况下,闪速存储控制单元11为了把写入了清除对象的数据的物理块作为未使用状态的块,从逻辑物理地址变换表13a清除给写入了清除对象的数据的物理块所授予的物理块地址,以及与该地址相对应的逻辑块地址的数据(步骤S6)。
另外,在步骤S5的处理结果判别为「NO」的情况下,闪速存储器控制单元11把在步骤S4的处理中写入到清除区指针存储区13b中的数据也写入到闪速存储器14中(步骤S7)。通过进行步骤S7的处理,由于即使供给存储卡1的电源断开,也能够保持清除区指针的信息,因此不会解除虚拟清除的状态。
另外,在向存储卡1供给的电源断开后再次投入的情况下,闪速存储器控制单元11读出在步骤S7的处理中写入到闪速存储器14中的信息,可以把该信息写入到RAM13的清除区指针存储区13b中。
在步骤S6或者S7的处理以后,闪速存储器控制单元11经过主接口单元12把表示清除处理结束的控制信号输出到主设备2(步骤S8)。
图9是表示写入到依据本发明一个实施形态的存储卡1中的数据的读出顺序的一个例子的流程图。
在依据图8所示的流程图的数据清除处理结束以后,在主设备2进行了数据读出请求的情况下,闪速存储器控制单元11参照逻辑物理地址变换表13a,检测与在数据读出请求中指定的逻辑块地址相对应的物理块地址(步骤A1)。
而且,闪速存储器控制单元11参照清除区指针存储区13b,判别写入了读出对象的数据的页范围是否包含在用清除区指针表示的区域内(步骤A2)。
在步骤A2的处理结果判别为「YES」的情况下,闪速存储器控制单元11把初始值数据作为读出对象的数据输出到主设备2(步骤A3)。另一方面,在步骤A2的处理结果判别为「NO」的情况下,闪速存储器控制单元11把该读出对象的数据输出到主设备2(步骤A4)。
这样,通过进行依据清除顺序(之二)的处理,在数据清除时,由于不产生在上述的清除顺序(之一)进行的数据移动,因此能够大幅度地缩短数据清除中所花费的时间。
其次,说明清除写入到依据本发明的一个实施形态的存储卡1的闪速存储器14上的物理块中的一部分数据的顺序(之三)的一个例子。
图10是表示写入到依据本发明一个实施形态的存储卡1中的数据的清除顺序(之三)的一个例子的转移图。
这里,说明与上述的清除顺序(之一,参照图2)相同,根据逻辑物理地址变换表13a,当主设备2发行了在授予与逻辑块地址“0x40000”地址相对应的物理块地址“3”的物理块内所存储和所定义的数据中,清除16384字节(32页)部分的数据的指令时的数据清除顺序。另外,数据清除请求前的各物理块的结构以及由逻辑物理地址变换表13a管理的信息的内容与上述的清除顺序(之二,参照图7)相同。
闪速存储器控制单元11在主设备2进行了数据清除请求时,参照逻辑物理地址变换表13a,检测与在清除请求中指定的逻辑块地址“0x40000”地址相对应的物理块地址“3”。
于是,如果与存储根据数据清除请求的清除对象的数据的区域相对应的地址范围没有存储在清除区指针存储器13b中,则闪速存储器控制单元11为了把存储数据清除请求中的清除对象的数据所存储的区域即与物理块地址“3”相对应的物理块的从第0页到第31页的32页部分的区域作为虚拟清除区,把在RAM13内的逻辑物理地址变换表13a中所存储的“0x40000......物理块“3”的信息改写为“0x40000......物理块3(+物理块4)”。授予了物理块地址“4”的物理块设为写入了初始值数据的状态,即是未使用状态。
而且,闪速存储器控制单元11把写入到清除区指针存储区13b中的信息改写为“开始0x00结束0x1F”,作为对象块的数据写入“物理块4”。
由此,与逻辑块地址“0x40000”地址相对应的物理块地址变更为“3”以及“4”的两个,存储在逻辑物理地址变换表13a内的物理块地址“3”以及“4”中,在存储于清除区指针存储区13b内的对象块即授予了物理块地址“4”的物理块的各块中,用存储在清除区指针存储区13b中的清除区指针所表示的页即从“页0”到“页31”的页成为写入了对于清除处理后的来自主设备2的读出请求的读出对象的数据的第1区域。
另外,存储在逻辑物理地址变换表13a内的授予了物理块地址“3”以及“4”的各物理块中,在存储于清除区指针存储区13b内的不是对象块的物理块的各块中,用写入到清除区指针存储区13b中的清除区指针所表示的页范围以外的页范围成为写入了对于清除处理后的来自主设备2的读出请求的读出对象的数据的第2区域。
即,该第2区域是存储在逻辑物理地址变换表13a内的物理块地址“3”以及“4”中,在授予了物理块地址“3”的物理块的各页中,从“页0”到“页31”的范围以外的页范围,即从“页32”到“页225”的页。
于是,在从主设备2进行了数据读出请求的情况下,闪速存储器控制单元11参照逻辑物理地址变换表13a,检测与在数据读出请求中指定的逻辑块地址相对应的物理块地址。
而且,闪速存储器控制单元11参照清除区指针存储区13b,在用清除区指针表示的区域中包括写入了清除对象的数据的页的情况下,闪速存储器控制单元11把初始值数据输出到主设备2。
通过进行这样的处理,由于与上述的清除顺序(之二)相同,不发生在清除顺序(之一)中看到的数据移动,因此能够大幅度地缩短在数据的清除中花费的时间。
在依据本发明一个实施形态的存储卡1中,依照来自主设备2的指示进行数据清除处理时,使用上述的清除区指针,而该清除处理不限于从主设备2指示闪速存储器14的数据格式,即使在从主设备2指示了闪速存储器14的数据复制的情况下也能够进行。在这种情况下,在伴随写处理的清除处理中,使用上述那样的清除区指针的情况下,在该写处理中花费的时间比通常的时间长。
因此,参照图11说明用于防止写处理的时间过长,而且通过使用清除区指针产生缩短数据清除中所花费的时间的优点的顺序。图11是表示写入到依据本发明一个实施形态的存储卡内的数据的清除中,选择是否使用清除区指针的处理的一个例子的流程图。
这里,在从主设备2进行了闪速存储器14的数据格式的指示时,连续发行清除指令,而且,注目于用这些清除指令的变量所表示的清除对象的页地址是连续的情况,根据是否满足该条件,切换在进行数据清除处理时是否使用清除区指针。
从主设备2发行的指令是指示闪速存储器14的数据格式的指令的情况下,以16KB为单位清除数据,由于清除范围边增加16KB边反复进行上述动作,因此清除范围连续。
具体地讲,存储卡1的闪速存储器控制单元11在识别了从主设备2发行的指令时(步骤B1),判别该指令是否是清除指令(步骤B2)。
在该判别结果判别为「YES」的情况下,闪速存储器控制单元11把该清除指令的变存储在RAM13中(步骤B3)。
而且,闪速存储器控制单元11判别是否已经存储与通过步骤B3的处理存储的变量连续的变量(SB4)。在该判别结果判别为「NO」的情况下返回到步骤B1的处理。
另一方面,在步骤B4处理的结果判别为「YES」的情况下,由于意味着逐次发行了变量连续的清除指令,因此闪速存储器控制单元11视为从主设备2发出了用于进行数据格式的指示,进行使用了上述清除区指针的数据清除处理(步骤B5)。
另一方面,在上述的步骤B2的处理中判别为「NO」的情况下,闪速存储器控制单元11判别通过步骤B1的处理识别了的指令是否是写指令(步骤B6)。在该判决结果判别为「YES」的情况下,闪速存储器控制单元11在RAM13中具有存储的变量的情况下,将其清除(步骤B7)。
如果进行这样的处理,则由于只有在从主设备2发行的指令是表示闪速存储器14的数据格式的指令的情况下,进行使用了清除区指针的数据清除处理,因此不会使在写处理中花费的时间成为很长时间,而且能够缩短在数据清除中花费的时间。
从以往的技术将很容易想到其它的优点和变形。因此,本发明在其广泛的方面并不限于在这里示出和描述的特殊细节和典型的实施例。从而,能够在不脱离一般发明观念的精神或范围的情况下,产生各种变形,该发明观念由附加的权利要求和其等效的要求所定义。
Claims (9)
1.一种存储器管理装置,该存储器管理装置管理具有多个块,构成为能够以其各块为清除单位清除数据的非易失性半导体存储器,其特征在于具备:
在有对于上述非易失性半导体存储器的数据的清除请求时,在包括上述清除请求的清除对象的数据的块中,设定上述清除对象的数据的地址范围的设定单元;
进行控制而在有对于上述非易失性半导体存储器的数据的读出请求时,在依据上述读出请求的读出对象的地址范围包含于由上述设定单元设定的地址范围中的情况下,作为上述读出对象的数据输出初始值数据的控制单元。
2.根据权利要求1所述的存储器管理装置,其特征在于:
上述设定单元把包括上述清除对象的数据的块的起始地址设定为上述地址范围的起始地址,把包括上述清除对象的数据的块的单一的地址设定为上述地址范围的终端地址。
3.根据权利要求1所述的存储器管理装置,其特征在于还具备:
对于上述多个块,使物理地址与逻辑地址相对应进行管理的管理单元,
上述管理单元在由上述设定单元设定了的地址范围的起始地址和终端地址分别与包括上述清除对象的数据的块的起始地址和终端地址一致的情况下,解除对于该块的物理地址与逻辑地址的对应。
4.根据权利要求1所述的存储器管理装置,其特征在于:
上述设定单元针对上述每一个块设定依据上述清除请求的清除对象的数据的地址范围。
5.根据权利要求1所述的存储器管理装置,其特征在于还具备:
把由上述设定单元设定了的地址范围的信息存储在上述非易失性半导体存储器中的单元。
6.根据权利要求5所述的存储器管理装置,其特征在于还具备:
在电源投入时读出存储在上述非易失性半导体存储器中的地址范围的信息的单元。
7.一种存储器管理装置,该存储器管理装置管理具有多个块,构成为能够以其各块为清除单位清除数据的非易失性半导体存储器,其特征在于具备:
在有对于上述非易失性半导体存储器的数据的清除请求时,在包括上述清除请求的清除对象的数据的第1块中,设定上述清除对象的数据的地址范围的设定单元;
使物理地址与逻辑地址相对应进行管理的管理单元,其中,所述物理地址是与由上述设定单元设定的地址范围相同的地址范围相对应的写入了初始值数据的第2块中的物理地址,以及在上述第1块中,从与由上述设定单元设定的地址范围的终端地址连续的地址到该第1块的终端地址为止的地址范围相对应的物理地址。
8.根据权利要求1所述的存储器管理装置,其特征在于:
上述设定单元在有对于上述非易失性半导体存储器的地址范围连续的多个块汇总在一起的数据清除请求时,在包括上述清除请求的清除对象的数据的块中,设定上述清除对象的数据的地址范围。
9.一种存储器装置,其特征在于具备:
具有多个块,构成为能够以其各块为消除单位清除数据的非易失性半导体存储器;
在有对于该非易失性半导体存储器的数据的清除请求时,在包括上述清除请求的清除对象的数据的块中,设定上述清除对象的数据的地址范围的设定单元;
进行控制而在有对于上述非易失性半导体存储器的数据的读出请求时,在依据上述读出请求的读出对象的地址范围包含于由上述设定单元设定的地址范围中的情况下,作为上述读出对象的数据输出初始值数据的控制单元。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004265806A JP4192129B2 (ja) | 2004-09-13 | 2004-09-13 | メモリ管理装置 |
JP2004265806 | 2004-09-13 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1749974A true CN1749974A (zh) | 2006-03-22 |
CN100412822C CN100412822C (zh) | 2008-08-20 |
Family
ID=36035422
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB200510099944XA Expired - Fee Related CN100412822C (zh) | 2004-09-13 | 2005-09-13 | 存储器管理装置以及存储器装置 |
Country Status (4)
Country | Link |
---|---|
US (3) | US7057942B2 (zh) |
JP (1) | JP4192129B2 (zh) |
CN (1) | CN100412822C (zh) |
TW (1) | TW200622611A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101681315B (zh) * | 2008-03-01 | 2012-05-23 | 株式会社东芝 | 存储器系统 |
Families Citing this family (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7644239B2 (en) | 2004-05-03 | 2010-01-05 | Microsoft Corporation | Non-volatile memory cache performance improvement |
JP4192129B2 (ja) | 2004-09-13 | 2008-12-03 | 株式会社東芝 | メモリ管理装置 |
US7490197B2 (en) | 2004-10-21 | 2009-02-10 | Microsoft Corporation | Using external memory devices to improve system performance |
US7457909B2 (en) * | 2005-01-14 | 2008-11-25 | Angelo Di Sena | Controlling operation of flash memories |
KR100666174B1 (ko) * | 2005-04-27 | 2007-01-09 | 삼성전자주식회사 | 3-레벨 불휘발성 반도체 메모리 장치 및 이에 대한구동방법 |
US7634494B2 (en) * | 2005-05-03 | 2009-12-15 | Intel Corporation | Flash memory directory virtualization |
US20060253643A1 (en) * | 2005-05-04 | 2006-11-09 | Delkin Devices, Inc. | Memory with isolated master boot record |
JP4751163B2 (ja) * | 2005-09-29 | 2011-08-17 | 株式会社東芝 | メモリシステム |
US8914557B2 (en) | 2005-12-16 | 2014-12-16 | Microsoft Corporation | Optimizing write and wear performance for a memory |
KR101490327B1 (ko) | 2006-12-06 | 2015-02-05 | 퓨전-아이오, 인크. | 뱅크 인터리브를 이용한 솔리드-스테이트 스토리지의 명령 관리 장치, 시스템 및 방법 |
KR100885783B1 (ko) * | 2007-01-23 | 2009-02-26 | 주식회사 하이닉스반도체 | 플래시 메모리 장치 및 동작 방법 |
TW200832440A (en) | 2007-01-25 | 2008-08-01 | Genesys Logic Inc | Flash memory translation layer system |
US7791952B2 (en) | 2007-01-30 | 2010-09-07 | Micron Technology, Inc. | Memory device architectures and operation |
KR100823171B1 (ko) * | 2007-02-01 | 2008-04-18 | 삼성전자주식회사 | 파티션된 플래시 변환 계층을 갖는 컴퓨터 시스템 및플래시 변환 계층의 파티션 방법 |
US7804718B2 (en) * | 2007-03-07 | 2010-09-28 | Mosaid Technologies Incorporated | Partial block erase architecture for flash memory |
US7719889B2 (en) * | 2007-06-25 | 2010-05-18 | Sandisk Corporation | Methods of programming multilevel cell nonvolatile memory |
KR101391881B1 (ko) * | 2007-10-23 | 2014-05-07 | 삼성전자주식회사 | 멀티-비트 플래시 메모리 장치 및 그것의 프로그램 및 읽기방법 |
JP2009118212A (ja) * | 2007-11-07 | 2009-05-28 | Seiko Epson Corp | 画像読取装置および画像読取方法 |
JP5142685B2 (ja) * | 2007-11-29 | 2013-02-13 | 株式会社東芝 | メモリシステム |
US8631203B2 (en) | 2007-12-10 | 2014-01-14 | Microsoft Corporation | Management of external memory functioning as virtual cache |
TW200929237A (en) * | 2007-12-21 | 2009-07-01 | Winbond Electronics Corp | Memory architecture and configuration method thereof |
US20090222613A1 (en) * | 2008-02-29 | 2009-09-03 | Kabushiki Kaisha Toshiba | Information processing apparatus and nonvolatile semiconductor memory drive |
US20090222614A1 (en) * | 2008-02-29 | 2009-09-03 | Kabushiki Kaisha Toshiba | Information processing apparatus and nonvolatile semiconductor memory drive |
US8364930B2 (en) | 2008-03-07 | 2013-01-29 | Kabushiki Kaisha Toshiba | Information processing apparatus and storage drive adapted to perform fault analysis by maintenance of tracing information |
US20090228640A1 (en) * | 2008-03-07 | 2009-09-10 | Kabushiki Kaisha Toshiba | Information processing apparatus and non-volatile semiconductor memory drive |
TWI370969B (en) * | 2008-07-09 | 2012-08-21 | Phison Electronics Corp | Data accessing method, and storage system and controller using the same |
US8032707B2 (en) | 2008-09-15 | 2011-10-04 | Microsoft Corporation | Managing cache data and metadata |
US9032151B2 (en) | 2008-09-15 | 2015-05-12 | Microsoft Technology Licensing, Llc | Method and system for ensuring reliability of cache data and metadata subsequent to a reboot |
US7953774B2 (en) | 2008-09-19 | 2011-05-31 | Microsoft Corporation | Aggregation of write traffic to a data store |
US20100262979A1 (en) * | 2009-04-08 | 2010-10-14 | Google Inc. | Circular command queues for communication between a host and a data storage device |
US8595572B2 (en) | 2009-04-08 | 2013-11-26 | Google Inc. | Data storage device with metadata command |
KR20120132820A (ko) * | 2011-05-30 | 2012-12-10 | 삼성전자주식회사 | 스토리지 디바이스, 스토리지 시스템 및 스토리지 디바이스의 가상화 방법 |
FR3006804A1 (fr) * | 2013-06-05 | 2014-12-12 | St Microelectronics Rousset | Procede d’effacement par bloc d’une memoire de type eeprom effacable par page |
US10936199B2 (en) * | 2018-07-17 | 2021-03-02 | Silicon Motion, Inc. | Flash controllers, methods, and corresponding storage devices capable of rapidly/fast generating or updating contents of valid page count table |
US10593412B2 (en) | 2018-07-19 | 2020-03-17 | Micron Technology, Inc. | Using a status indicator in a memory sub-system to detect an event |
JP7225991B2 (ja) * | 2019-03-22 | 2023-02-21 | 富士フイルムビジネスイノベーション株式会社 | 情報処理装置 |
JP2023019261A (ja) * | 2021-07-29 | 2023-02-09 | Necプラットフォームズ株式会社 | メモリ制御装置、メモリ制御回路、メモリ制御方法およびメモリ制御プログラム |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5860124A (en) * | 1996-09-30 | 1999-01-12 | Intel Corporation | Method for performing a continuous over-write of a file in nonvolatile memory |
JP3954698B2 (ja) | 1997-08-29 | 2007-08-08 | パナソニック コミュニケーションズ株式会社 | メモリー制御装置 |
JP4085478B2 (ja) * | 1998-07-28 | 2008-05-14 | ソニー株式会社 | 記憶媒体及び電子機器システム |
KR100399034B1 (ko) * | 2000-05-02 | 2003-09-22 | 한국과학기술원 | 효율적 메모리 셀 어레이 관리 방법 |
JP4812192B2 (ja) * | 2001-07-27 | 2011-11-09 | パナソニック株式会社 | フラッシュメモリ装置、及び、それに記憶されたデータのマージ方法 |
GB0123422D0 (en) * | 2001-09-28 | 2001-11-21 | Memquest Ltd | Improved memory controller |
US6859856B2 (en) * | 2001-10-23 | 2005-02-22 | Flex P Industries Sdn. Bhd | Method and system for a compact flash memory controller |
US6798711B2 (en) * | 2002-03-19 | 2004-09-28 | Micron Technology, Inc. | Memory with address management |
JP3699942B2 (ja) | 2002-03-25 | 2005-09-28 | 株式会社東芝 | メモリ管理方式およびメモリ管理装置 |
US7171536B2 (en) * | 2002-10-28 | 2007-01-30 | Sandisk Corporation | Unusable block management within a non-volatile memory system |
JP4188744B2 (ja) * | 2003-04-08 | 2008-11-26 | 株式会社ルネサステクノロジ | メモリカード |
JP4157501B2 (ja) | 2004-06-30 | 2008-10-01 | 株式会社東芝 | 記憶装置 |
JP4192129B2 (ja) * | 2004-09-13 | 2008-12-03 | 株式会社東芝 | メモリ管理装置 |
-
2004
- 2004-09-13 JP JP2004265806A patent/JP4192129B2/ja not_active Expired - Fee Related
- 2004-12-28 US US11/022,857 patent/US7057942B2/en active Active
-
2005
- 2005-08-30 TW TW094129671A patent/TW200622611A/zh not_active IP Right Cessation
- 2005-09-13 CN CNB200510099944XA patent/CN100412822C/zh not_active Expired - Fee Related
-
2006
- 2006-04-21 US US11/408,021 patent/US7227788B2/en active Active
-
2007
- 2007-06-04 US US11/757,736 patent/US7388792B2/en active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101681315B (zh) * | 2008-03-01 | 2012-05-23 | 株式会社东芝 | 存储器系统 |
Also Published As
Publication number | Publication date |
---|---|
US7057942B2 (en) | 2006-06-06 |
CN100412822C (zh) | 2008-08-20 |
TWI310901B (zh) | 2009-06-11 |
US7227788B2 (en) | 2007-06-05 |
US20070223286A1 (en) | 2007-09-27 |
JP2006079543A (ja) | 2006-03-23 |
US7388792B2 (en) | 2008-06-17 |
TW200622611A (en) | 2006-07-01 |
US20060059295A1 (en) | 2006-03-16 |
JP4192129B2 (ja) | 2008-12-03 |
US20060187738A1 (en) | 2006-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1749974A (zh) | 存储器管理装置以及存储器装置 | |
CN1230829C (zh) | 快速可电擦写可编程只读存储器系统中的数据处理方法 | |
US9542278B2 (en) | Data storage device and flash memory control method | |
JP4256600B2 (ja) | メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム及びフラッシュメモリの制御方法 | |
EP1706869B3 (en) | Portable data storage device using a memory address mapping table | |
US7480766B2 (en) | Interfacing systems operating through a logical address space and on a direct data file basis | |
JP3905037B2 (ja) | メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法 | |
EP1920335B1 (en) | Reclaiming data storage capacity in flash memory systems | |
US7877540B2 (en) | Logically-addressed file storage methods | |
TWI464584B (zh) | 用於實施延伸以智慧型管理一大容量儲存系統之資源的系統與方法 | |
US7814262B2 (en) | Memory system storing transformed units of data in fixed sized storage blocks | |
CN1761935A (zh) | 半导体存储卡、半导体存储器控制装置以及半导体存储器控制方法 | |
JP4977703B2 (ja) | 予定再生操作を伴う不揮発性メモリ | |
CN104699622B (zh) | 数据储存装置以及其数据抹除方法 | |
CN1795437A (zh) | 用于块内页面分组的方法及设备 | |
CN1227591C (zh) | 记录系统、数据记录设备、存储设备和数据记录方法 | |
US20070136553A1 (en) | Logically-addressed file storage systems | |
WO2006006694A1 (en) | Storage device and host apparatus | |
CN1766850A (zh) | 具有存储元件的存储卡及其控制方法 | |
CN101069163A (zh) | 存储器系统以及写入非易失性半导体存储器中的方法 | |
JP5266250B2 (ja) | 連続論理アドレス空間インターフェイスを備えるダイレクトデータファイルシステムの使用 | |
JP2008009527A (ja) | メモリシステム | |
JP4895262B2 (ja) | 情報処理装置、コントローラおよびファイル読み出し方法 | |
CN1214326C (zh) | 非易失性存储装置及其控制方法 | |
JP2010515163A (ja) | ダイレクトデータファイルメモリシステムにおけるlbaインターフェイスの管理 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20080820 Termination date: 20170913 |