CN103389943A - 控制装置、存储装置及存储控制方法 - Google Patents
控制装置、存储装置及存储控制方法 Download PDFInfo
- Publication number
- CN103389943A CN103389943A CN2013101625621A CN201310162562A CN103389943A CN 103389943 A CN103389943 A CN 103389943A CN 2013101625621 A CN2013101625621 A CN 2013101625621A CN 201310162562 A CN201310162562 A CN 201310162562A CN 103389943 A CN103389943 A CN 103389943A
- Authority
- CN
- China
- Prior art keywords
- physical
- management information
- logic
- physical page
- write
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7201—Logical to physical mapping or translation of blocks or pages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7207—Details relating to flash memory management management of metadata or control data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及控制装置、存储装置及存储控制方法,该控制装置包括:控制单元,所述控制单元执行向存储器单元的数据写入控制,所述控制器单元中作为删除单位的物理块的尺寸大于作为最小写入单位的物理页的尺寸,所述控制单元生成表示写入目标物理块中物理页地址和逻辑地址之间的对应关系的逻辑和物理地址管理信息,以便执行控制,使得所述逻辑和物理地址管理信息被写入所述写入目标物理块中,其中数据通过写入控制被写入所述写入目标物理块中。
Description
技术领域
本发明涉及控制装置、存储装置及存储控制方法。特别地,本技术涉及由逻辑地址转换成物理地址的管理信息的处理。
背景技术
例如,采用诸如NAND型闪存的非易失性存储器的存储装置已很普遍。非易失性存储器被用于可用于例如各种类型的电子装置和信息处理装置中的存储卡、固态驱动器(SSD)、嵌入式多媒体卡(eMMC)等等。
日本尚未审查的专利申请公开号第2009-70098号、2007-334852号、2007-193838号和2007-58840号已经公开了采用闪存的存储装置。
在非易失性存储器中,物理地址被用作物理存储区域的地址。相应地设置物理块、物理页和物理扇区。多个物理扇区组成物理页,多个物理页组成物理块。
删除(擦除)以物理块为单位执行,写入(程序)和读取可以以物理页为单位执行。
逻辑地址用于从主机装置侧的地址指定。根据逻辑地址的逻辑块和逻辑页与上述物理地址相关联。相应地,响应于访问请求和对实际闪存的访问,将逻辑地址转换成物理地址。
发明内容
因此,在使用NAND型闪存等用于存储的存储装置中,由主机装置指定的逻辑地址必须被转换成与该逻辑地址对应的表示数据位于闪存上哪个物理块的哪个物理页上的物理地址。
因此,必须构建执行这种转换的管理信息。
为了能够高速构建这种管理信息,提出了一种限制数据写入的执行使得逻辑地址在物理块中总是连续的方法。根据该方法,找到物理块中最后使用的物理页,获取该物理页中所记录数据的逻辑地址,从而能够高速构建管理信息。
然而,在该方法中,物理块中写入的数据的逻辑地址必须总是连续的。另外,当主机装置要写入间断逻辑地址的数据时,或当主机装置更新已写入逻辑地址的数据时,经常会出现碎片收集的问题,其中另一个物理块安全和数据被拷贝到已安全的物理块中,这会显著减小装置寿命和写入速度。
另一方面,也已公开了允许在物理块中连续写入间断逻辑地址数据的方法。
根据该方法,即使当写入逻辑地址间断的数据时,也可以避免上述碎片收集的问题。然而,间断逻辑地址的数据在物理块中连续,但构建管理信息花费时间。特别地,在这种情况下管理信息的构建通过获取物理块中所有物理页的逻辑地址执行,因此花费很多时间来获取管理信息,因此在该点上使得写入/读取速度降低。
期望避免这种允许在物理块内连续写入间断逻辑地址的数据和经常发生碎片收集问题的情形,并通过加速获取逻辑和物理地址管理信息来提高写入/读取速度。
根据本技术的实施方式,提供如下配置的控制装置。
即,根据本技术实施方式的控制装置,包括:控制单元,所述控制单元对存储器单元执行数据写入控制,其中作为删除单位的物理块的尺寸大于作为最小写入单位的物理页的尺寸,所述控制单元生成表示写入目标物理块中物理页地址和逻辑地址之间的对应关系的逻辑和物理地址管理信息,以便执行控制,使得所述逻辑和物理地址管理信息被写入所述写入目标物理块中,其中数据通过写入控制被写入所述写入目标物理块中。
进一步,存储设备可以根据本技术的实施方式做如下配置。
即,根据本技术另一实施方式的存储装置,包括存储器单元,其中作为删除单位的物理块的尺寸大于作为最小写入单位的物理页的尺寸。
根据另一实施方式的存储装置进一步包括:控制单元,所述控制单元执行向存储器单元的数据写入控制,以及生成表示写入目标物理块中物理页地址和逻辑地址之间的对应关系的逻辑和物理地址管理信息,以便执行控制,使得所述逻辑和物理地址管理信息被写入所述写入目标物理块中,其中,数据通过写入控制被写入所述写入目标物理块中。
如上所述,在本技术的实施方式中,生成逻辑和物理地址管理信息以存储在存储器单元中。相应地,无须强制限制数据被写入物理块中使得逻辑地址不可避免地连续,能够避免这种允许在物理块中连续写入逻辑地址间断的数据和经常发生碎片收集问题的情形。
而且,在本技术的实施方式中,逻辑和物理地址管理信息被写入写入目标物理块。在相关技术的方法中,允许在物理块中连续写入逻辑地址间断的数据,为了获取逻辑和物理地址管理信息,读取逻辑和物理地址管理信息管理的所有物理页。另一方面,根据本技术的实施方式,可通过读出单个物理页获取逻辑和物理地址管理信息。因此,加速了管理信息的获取,提高了写入/读取速度。
根据本技术的实施方式,可以避免这种允许在物理块中连续写入逻辑地址间断的数据和经常发生碎片收集问题的情形,并且加速了逻辑和物理地址管理信息的获取,从而提高了写入/读取速度。
附图说明
图1为示出了根据实施方式的存储设备的内部配置的方框图;
图2示意性示出了根据实施方式的物理块和物理页之间的关系;
图3示出了相关技术中写入数据使得逻辑地址在物理块中不可避免地连续的方法;
图4示出了图3所示的相关技术中方法的问题;
图5示出了相关技术中允许在物理块中连续写入逻辑地址间断的数据的方法;
图6示出了根据实施方式的写入方法;
图7示出了管理表的数据配置;
图8是根据实施方式的管理表构建过程的流程图;
图9是根据实施方式的数据写入过程的流程图;
图10示意性示出了表示多个物理块的逻辑和物理地址之间对应关系的管理表的概念;以及
图11示出了表示多个物理块的逻辑和物理地址之间对应关系的管理表的数据配置。
具体实施方式
下面说明本技术的实施方式。
本公开按照下面的顺序。
<1.存储装置的配置>
<2.相关技术的写入方法>
<3.实施方式的写入方法>
<4.处理程序>
<5.变型例>
<1.存储装置的配置>
图1的方框图示出了根据本技术实施方式的存储装置的存储卡1的内部配置。
存储卡1连接至主机装置2,并被用作存储装置。例如,可以考虑使用诸如个人计算机、数字照相机、摄像机、音频播放器、视频播放器、游戏控制台、携带式电话和例如个人数字助理(PDA)的信息端子的各种类型的电子装置和信息处理装置作为主机装置2。
存储卡1包括控制单元11、内部随机存取存储器(RAM)12、装置接口13、缓冲器RAM14和闪存15。
控制单元11由中央处理单元(CPU)组成,控制整个存储卡1。因此,控制单元11按顺序执行存储在内部RAM12中的命令码。主要地,控制单元11允许根据来自主机装置2的命令执行数据写入和读取。因此,控制单元11执行关于主机装置2的装置接口13的数据传输/接收操作控制,缓冲器RAM14的写入/读取操作的控制和对闪存15的访问操作的控制。
例如,内部RAM12由静态随机存取存储器(SRAM)组成。内部RAM12用于存储由控制单元11执行的程序(固件),用作工作区域。
设备接口13与主机装置2通信。
缓冲器RAM14用于缓冲关于主机装置2的传输数据(写入数据和读取数据)。
闪存15是非易失性存储器,该实例中NAND型闪存用作闪存15。
作为存储卡1的基本操作,在数据写入中,写入地址(逻辑地址)、数据大小和待写入数据与写入请求一起从主机装置2发送。
从主机装置2发送的数据在装置接口13接收并在缓冲器RAM14中缓存。然后在控制单元11的控制下,数据被写入闪存15中。控制单元11根据写入请求、写入地址和数据大小控制这些操作。
在数据读取中,读取地址(逻辑地址)和数据大小与读取请求一起从主机装置2发送。控制单元11基于读取地址和数据大小读出由闪存15指定的数据,并将该数据缓存在缓冲器RAM14中。而且,控制单元11对缓存的读取数据进行错误校正处理等等。然后,读取数据从缓冲器RAM14前进至装置接口13,以便发送至主机装置2。
另外,在闪存15中,物理地址用作物理存储区域的地址。相应地设置物理块、物理页和物理扇区。物理页由多个物理扇区组成和物理块由多个物理页组成。
图2示意性示出了物理块和物理页之间的关系。
在该实施方式中,假设单个物理块由128个物理页组成。
这里,尽管未示出,但是物理页被分成多个物理扇区。
删除(擦除)以物理块为单位执行。而且,写入(编程)和读取可以以物理页为单位执行。也就是说,物理块是物理删除单位(最小删除单位)和物理页是物理写入单元(最小写入单位)。
逻辑地址被用于主机装置2侧的地址指定。根据逻辑地址的逻辑块、逻辑页和逻辑扇区与上述物理地址有关。也就是说,控制单元11以关联逻辑地址和物理地址的方式生成逻辑和物理地址管理信息。响应于主机装置2的访问请求,控制单元11参考逻辑和物理地址管理信息,以便将指定的逻辑地址转换成物理地址。然后,控制单元11通过物理地址执行对闪存15的实际访问。
下文中,主机装置2请求写入和读取的数据(由主机装置2通过逻辑地址管理的数据)称作“主机数据”。
<2.相关技术的写入方法>
作为相关技术的一种常见写入方法,如图3所示,列举其中写入数据从而使得逻辑地址在物理块中总是连续的方法。
图3示出了发出用于写入作为主机数据的数据的指令的情况;该数据对应于六个页,分别赋予逻辑地址0至5(页单元中的逻辑地址)。
从物理页号为0的物理页开始按顺序使用物理块,使得这种情况下的主机数据(逻辑地址=0到5)被写入如图3所示的连续物理页。
在使用上述写入数据从而使得逻辑地址在物理块中总是连续的方法的情况下,当下一次获取写入物理块中的主机数据的信息时,通过查找物理块中最后使用的物理页并读取写入物理页中冗余区域的主机数据的逻辑地址,可以获取物理块中主机数据的记录状态。也就是说,可以获取物理块中逻辑地址和物理地址之间的对应关系。
应当注意,最后使用的物理页表示在过去的时间中最近进行数据写入的物理页。如上所述,从物理页号为0的物理页开始按顺序使用物理块。因此,在保证物理块中逻辑地址连续性的状态下,当发现(turn out)记录在最后使用的物理页中的数据的逻辑地址时,可以断定物理块中逻辑和物理地址之间的对应关系。
然而,当使用图3所示方法时,会出现图4所示的问题。
图4示出了第一次写入时主机数据是逻辑地址0至4的数据(五页的数据),和逻辑地址=1的数据的重写实施为第二次写入的情况。
在这种情况下,假定在第一次写入时,对物理块M执行主机数据(逻辑地址=0至4)的写入。
在第二次写入时,必须保证物理块中逻辑地址的连续性。因此,很难在物理块M中写入逻辑地址=1的新写入的数据。而且,删除单位是物理块单元,这样同样难以删除记录在物理块M中的逻辑地址=1的数据和在第二次写入时新写入的逻辑地址=1的数据。
相应地,在这种情况下,新保护不同于物理块M的物理块N,在物理块M中记录的逻辑地址=0、2、3、4的数据和第二次写入时发出写入指令的逻辑地址=1的数据被写入以上提及的要保护的物理块N,使得逻辑地址变得连续。
在如上提及的保证逻辑地址连续的方法中,当更新具有已经写入逻辑地址的主机数据时,发生所谓的碎片收集,其中主机数据被拷贝到另一个物理块N上。
尽管省略了参考附图的说明,但是当在物理块中写入间断逻辑地址的主机数据时,还是会发生这种碎片收集。也就是说,相关技术下保证逻辑地址连续性的方法会导致频繁发生碎片收集。
频繁发生碎片收集会显著降低设备的使用寿命和写入速度。
另一方面,作为相关技术的另一种方法,还公开了允许在物理块中连续写入间断逻辑地址的主机数据的方法。
在采用这种方法的情况下,如图5所示,当在如图4所示的情况下写入逻辑地址=0至4的主机数据之后在第二次写入中发出重新写入逻辑地址=1的数据的指令时,第二次写入中逻辑地址=1的主机数据可以被写入物理页号=5的部分。
也即是说,如由这一点可以理解的,根据允许物理块中逻辑地址间断的方法,可以有效地避免经常发生碎片收集的情形。
然而,在相关技术的方法中,通过获得目标物理块中所有物理页的逻辑地址可以构建管理信息。结果是,在这点上,占用大量时间获得管理信息并降低该点的写入/读取速度。
在本技术的实施方式中,可以避免这种允许在物理块中连续写入逻辑地址间断的数据和经常发生碎片收集问题的情形,加速获得逻辑和物理地址管理信息以便提高写入/读取速度。
<3.实施方式的写入方法>
在该实施方式中,首先假设基于逻辑和物理地址管理信息管理物理块中逻辑和物理地址之间的对应关系,以便允许物理块中逻辑地址的间断。特别地,可以使用下述管理表。
允许物理块中逻辑地址的间断可以减小上述碎片收集发生的次数。
在本技术的实施方式中,假设通过上述逻辑和物理地址管理信息管理,则可以在短时间内有效地获得逻辑和物理地址管理信息,因此提高主机数据写入/读取的访问速度。
特别地,在该实施方式中,采用这种响应于写入主机数据的执行而在在写入主机数据的物理块中写入逻辑和物理地址管理信息的方法。
这里,逻辑和物理地址管理信息指的是下面的管理表。
图6示出了实施方式的写入方法。
图6示出了如下情况,关于作为写入对象的物理块(假设为未记录的物理块),发出写入逻辑地址=0的数据作为第一次主机数据的指令,发出重新写入逻辑地址=1的数据作为第二次主机数据的指令,然后发出写入逻辑地址=200的数据作为第N次主机数据的指令。
响应于写入第一次主机数据的指令,逻辑地址=0至4的指定数据首先被写入物理块中物理页号0至4的物理页。
如上所述,从物理页号为0的物理页开始按顺序使用物理块。
然后,生成表示逻辑和物理地址之间对应关系的管理表,该管理表被写入已写入了主机数据的物理块中。特别地,在该实例中,管理表被写入已写入了主机数据的物理块中紧接最近使用的物理页之后的物理页。也就是说,在图6的实例的情况下,管理表被写入紧接物理页号=4的物理页之后的物理页号=5的物理页中,其中物理页号=4的物理页是在执行写入管理表的时间点最近使用的物理页。
写入管理表以与以下写入主机数据相似的方式执行。
特别地,响应于第二次写入主机数据的指令(重写逻辑地址=1的数据),如图6所示发布关于在逻辑地址=1的写入指令,在逻辑地址=1的主机数据被写入物理页号=6的物理页中之后生成表示物理页号=0至6的物理页中逻辑和物理地址之间对应关系的管理表,所生成的管理表被写入紧接最近使用的物理页之后的物理页中,即,在这种情况中的物理页号=7的物理页。
图6示出了按顺序使用物理页号=7到123的物理页,然后发出第n次主机数据写入的指令(逻辑地址=200的数据)的情况。在第n次写入中,当逻辑地址=200的指定数据被写入物理页号=124的物理页之后,生成表示物理页号=0到124的物理页中逻辑和物理地址的对应关系的管理表,并且将生成的管理表写入紧接最近使用的物理页之后的物理页中,即在这种情况下的物理页号=125的物理页。
图7示出了管理表的数据配置。
如图7所示,管理表是关联逻辑地址和物理页号的信息。
在该实例中,一个管理表是用于管理单个物理块中逻辑和物理地址之间对应关系的信息。该实例中逻辑地址是提供给被写入目标物理块的物理页中的主机数据的逻辑地址。在管理表中,各个逻辑地址与写入了提供有逻辑地址的主机数据的物理页的物理页号的信息相关联。
在所述实施方式中,管理表被写入上述闪存15中的物理块中。因此,当后来获取逻辑和物理地址的管理信息用于执行对应物理块的读取/写入时,可以读取物理块中最近使用的物理页内包含的信息。因此,可以比相关技术的方法更快的获取逻辑和物理地址管理信息。
特别地,在允许物理块中逻辑地址间断的相关技术方法中,必须读取目标物理块中所有物理页以获取逻辑和物理地址管理信息。然而,根据所述实施方式,通过读取目标物理块中单个物理页(在该示例中是最近使用的物理页)便可获得逻辑和物理地址管理信息,允许更快地获得管理信息。
结果是,与相关技术相比,可以提高读取/写入速度。
而且,在该实例中,如由图6的描述所理解的,每次写入主机数据都会写入管理信息。相应地,过去的逻辑和物理地址管理信息也存储在对应的物理块中。因此,当由于某些原因难以读取物理块中最新的管理表时,通过使用存储的过去的管理表可以有效地恢复逻辑和物理地址管理信息。
这里,在图8所示的流程中,通过使用过去已写入的管理表信息可以有效地恢复管理信息。
应当注意,控制单元11在端子RAM12上生成管理表。
如上所述,控制单元11根据来自主机装置2侧的命令获取将被写入的数据的逻辑地址。
在内部RAM12上,控制单元11积累就其发出写入指令的主机数据的逻辑地址与写入主机数据的物理页的物理页号相关联的信息作为管理表的入口信息。因此,生成管理表。因此生成的管理表被写入已写入了主机数据的物理块中紧接最近使用的物理页之后的物理页。
<4.处理程序>
参考图8和图9的流程图描述了用于实现实施方式的上述写入方法执行的特定处理的程序。
控制单元11根据存储在诸如闪存15的预定存储设备中的程序执行图8和图9所示的过程。
图8示出了管理表的构建过程。
图8中所示的管理表的构建过程可至少在启动阶段执行。
在图8中,步骤S101,控制单元11在目标物理块中搜索最近使用的物理页。例如,可以使用二分法搜索来搜索最近使用的物理页。如上所述,最近使用的物理页表示最新数据已在过去被写入的物理页。
上述二分法搜索是一种搜索最近使用的物理页,同时确认中央物理页的方法。在物理块由八个物理页(0到7)组成的情况下,例如可以首先确认位于中央的物理页,如物理页号=4的物理页。当物理页号=4的物理页是写入物理页时,应当理解,最近使用的物理页存在于物理页号=4的物理页之后的物理页中。因此,可以确认位于物理页号=5到7的范围中央的物理页号=6的物理页。
当物理页号=6的物理页是写入物理页时,物理页号=7的物理页可为最近使用的物理页。因此,物理页逐渐减少以便搜索最近使用的物理页,同时确认中央物理页。
当找到最近使用的物理页时,控制单元11在步骤S102中读取最近使用的物理页。
然后,在以下的步骤S103中,控制单元11判断管理表是否已经被写入最近使用的物理页。
当步骤S103得到肯定结果,即管理表已经被写入最近使用的物理页时,控制单元11进入步骤S104接受管理表。也就是说,当管理表被写入最近使用的物理页中时,管理表包含表示目标物理块中逻辑和物理地址之间对应关系的最近状态的信息(换句话说,表示当时已经被写入对应物理块的所有条主机数据的逻辑和物理地址的对应关系的信息),因此管理表保持在内部RAM12中。
另一方面,当步骤S103得到否定结果,即管理表尚未写入最近使用的物理页时,则最近的管理表不在物理块中。由于某种原因未执行管理表写入的情况,由于某种数据损坏等即使执行了写入也很难读取管理表的情况等,作为可能的情况被引用。
在判断管理表未被写入最近使用的物理页的情况下,控制单元11执行步骤S105到S110的下列流程,以便恢复最近的管理表。
特别地,当在步骤S103得到否定结果时,控制单元11转到步骤S105获取在物理页中记录的主机数据的逻辑地址。也就是说,控制单元11获取在步骤S102或下面的步骤S107中读取的物理页内记录的主机数据的逻辑地址。
在如此获取逻辑地址之后,步骤S106中,控制单元11判断对应的物理页是否是目标物理块的首物理页。
当在步骤S106中获得否定答案,即对应的物理页不是物理块的首物理页时,控制单元11转到步骤S107中读取前一个物理页并在步骤S108判断管理表是否已被写入该前一个物理页。
当在步骤S108中得到否定结果,即管理表尚未被写入时,重复步骤S105到S108的流程。相应地,返回物理页中获取逻辑地址,直到找到管理表。换句话说,执行这种流程,直到找到存储管理表的物理页,同时以从最近使用的物理页开始按顺序追溯之前的物理页的方式存储各个物理页的主机数据的逻辑地址。
当步骤S108得到肯定结果,即管理表已经被写入时,控制单元11转到步骤S109生成表示最近状态的管理表。也就是说,控制单元11通过向在步骤S108中找到的管理表中所包含的信息中添加基于步骤S105到S108的过程(从最近使用的物理页到紧接找到管理表的物理页之后的物理页)获得的逻辑地址生成的逻辑和物理地址的对应关系信息(找到管理表的物理页的前一物理页到物理页号=0的物理页的逻辑和物理地址对应关系信息),可以生成包含最近信息的管理表。换句话说,这是将过去写入的管理表更新至最近状态的过程。
如上所述,在内部RAM12中生成管理表,相应地,因此更新至最新状态的管理表也被存储在内部RAM12中。
这里,在步骤S106获得所述物理页是物理块首页的肯定结果的情况表示未在对应的物理块中找到管理表。
因此,在这种情况下,控制单元11转到步骤S110生成管理表。特别地,控制单元11按顺序关联在步骤S105的过程中获得的逻辑地址的信息和获得逻辑地址的物理页的物理页号,以便生成表示最近使用的物理页到物理页号=0的物理页的逻辑和物理地址的对应关系的管理表。
如果图8所示的构建过程至少在启动阶段执行,则当主机2发出写入/读取指令时,控制单元11获取闪存15中各个物理块最近的逻辑和物理地址对应关系。
图9示出了响应于写入主机数据要执行的过程。
在图9中,例如,在步骤S201中,控制单元11接收根据主机2发出的写入请求而要写入的主机数据,并获得逻辑地址。
特别地,控制单元11经由设备接口13将发送的主机数据暂时存储在缓冲器RAM14中。另外,控制单元11掌握待写入的主机数据的逻辑地址和根据经由装置接口13发送的写入请求的命令的数据量。
在步骤S202中,生成或更新管理表,以响应此时的数据写入。
由于执行上述图8所示的构建过程,控制单元11当前(写入主机数据之前的时间点)已经掌握了作为写入目标的物理块中逻辑和物理地址的对应关系。
当过去已经向目标物理块执行了主机数据的写入时,步骤S202的过程变成基于从现在起即将被写入的主机数据的逻辑和物理地址之间的对应关系信息更新已经存储在内部RAM12中的管理表的过程。可替换地,当第一次使用目标物理块时,步骤S202的过程变成基于从现在起即将被写入的主机数据的逻辑和物理地址之间的对应关系信息新生成管理表的过程。
在步骤S202中执行生成/更新管理表的处理之后,在步骤S203中控制单元11执行主机数据的写入。
如上所述,从物理页号=0开始顺序使用物理块,使得控制单元11从目标物理块中紧接最近使用的物理页之后的物理页开始按顺序写入主机2侧指定的主机数据。
在执行写入主机数据之后,在步骤S204中,控制单元11执行向紧接最近使用的物理页之后的物理页写入管理表。也就是说,控制单元11在在步骤S203中已写入主机数据的物理块中紧接最近使用的物理页的物理页中写入在前述步骤S202中在内部RAM12中生成/更新的管理表。
这里,图9中每次写入主机数据都会写入管理表。然而,写入管理表的执行时间不必局限于每次写入主机数据。
例如,预定时间内或自从上次写入管理表开始的时间内可以使用各种方法,比如写入主机数据时写入管理表的方法,和当物理块中逻辑地址间断时写入管理表的方法。
而且,可以想象,图8所示的管理表的构建过程(在RAM中生成/更新管理表的过程)不限于在启动阶段执行,而是在主机装置2每次发出写入或读取请求时执行。
<5.变型例>
已经描述了根据本技术的实施方式,但是本技术的实施方式不局限于上述特定实例。
在上述描述中,管理表是表示单个物理块中逻辑和物理地址之间对应关系的信息,但是管理表可以是例如表示多个物理块中逻辑和物理地址的对应关系的信息。
图10示意性示出了这种情况下管理表的概念。
图10示出了表示三个物理块(为物理块M、N和O)的逻辑和物理地址的对应关系的管理表实例。
在这种情况下,一体化管理这三个物理块,在这三个物理块中的预定物理页内写入管理表。例如,在这种情况下,管理表被写入这三个物理块中紧接最近使用的物理页之后的物理页中。通过采用如上述图8所示的搜索最近使用的物理页以获得管理表的方法,可以轻易识别管理表是否是最新的管理表。
图11示出了表示多个物理块的逻辑和物理地址的对应关系的管理表的数据配置。
在管理表表示多个物理块中逻辑和物理地址之间对应关系的情况下,管理表关联逻辑地址、写入提供有逻辑地址的数据的物理页的编号(物理页号)、和写入提供有逻辑地址的数据的物理块的地址(物理块地址)。
当多个物理块的逻辑和物理地址的对应关系由单个管理表管理时,所述管理表的数据大小趋于很大。根据系统环境,可以选择管理单个物理块对应关系的管理表或者管理多个物理块对应关系的管理表。
当采用如上述提及的管理多个物理块的逻辑和物理地址的对应关系的管理表时,通过读取单个管理表可以获得逻辑和物理地址管理信息,尽管在相关技术中逻辑和物理地址管理信息已通过读取多个物理块中所有写入物理页获得。结果是,可以进一步提高读取/写入速度。
而且,上面已经说明了一个实例,其中本技术的实施方式被应用于包括NAND型闪存的存储装置。然而,本技术的实施方式有利地适用于数据被写入存储器单元中的情况,其中该存储器单元中作为删除单位的物理块的尺寸大于作为最小写入单位的物理页的尺寸。
本技术的实施方式可以采用下面的配置。
(1)一种控制装置,包括:控制单元,所述控制单元对存储器单元执行数据写入控制,该存储器单元中作为删除单位的物理块的尺寸大于作为最小写入单位的物理页的尺寸,所述控制单元生成表示写入目标物理块中物理页地址和逻辑地址之间的对应关系的逻辑和物理地址管理信息,以便执行控制,使得所述逻辑和物理地址管理信息被写入所述写入目标物理块中,其中数据通过写入控制被写入所述写入目标物理块中。
(2)根据(1)所述的控制装置,所述控制单元执行控制,使得所述逻辑和物理地址管理信息被写入所述写入目标物理块中紧接最近使用的物理页之后的物理页中。
(3)根据(2)所述的控制装置,所述控制单元在目标物理块中从最近使用的物理页到首物理页按顺序执行搜索写入了所述逻辑和物理地址管理信息的物理页的处理,以便获取最先被发现的逻辑和物理地址管理信息,以及使用获取的逻辑和物理地址管理信息和尚未写入逻辑和物理地址管理信息的物理页的逻辑地址执行更新逻辑和物理地址管理信息的处理。
(4)根据(1)至(3)中任一项所述的控制装置,所述控制单元生成表示单个物理块中的物理页地址和逻辑地址之间的对应关系的信息,作为所述逻辑和物理地址管理信息。
(5)根据(1)至(3)中任一项所述的控制装置,所述控制单元生成表示多个物理块中的物理页地址和逻辑地址之间的对应关系的信息,作为所述逻辑和物理地址管理信息。
(6)根据(1)至(5)中任一项所述的控制装置,所述控制单元对作为NAND型闪存的所述存储器单元执行写入控制。
本公开包含涉及于2012年5月11日向日本专利局提交的日本在先专利申请JP2012-109089中公开的主题内容,其全部内容通过引用结合于此。
本领域技术人员应当理解,根据设计需要和其他因素,只要在所附权利要求及其等价物的保护范围内,各种修改、组合、子组合和替换都可以发生。
Claims (10)
1.一种控制装置,包括:
控制单元,所述控制单元对存储器单元执行数据写入控制,所述存储器单元中作为删除单位的物理块的尺寸大于作为最小写入单位的物理页的尺寸,所述控制单元生成表示写入目标物理块中物理页地址和逻辑地址之间的对应关系的逻辑和物理地址管理信息,以便执行控制,使得所述逻辑和物理地址管理信息被写入所述写入目标物理块中,其中数据通过写入控制被写入所述写入目标物理块中。
2.根据权利要求1所述的控制装置中,其中,所述控制单元执行控制,使得所述逻辑和物理地址管理信息被写入所述写入目标物理块中紧接最近使用的物理页之后的物理页中。
3.根据权利要求2所述的控制装置,其中,所述控制单元
在所述目标物理块中从最近使用的物理页到首物理页按顺序执行搜索写入了所述逻辑和物理地址管理信息的物理页的处理,以便获取最先被发现的逻辑和物理地址管理信息,以及
使用获取的逻辑和物理地址管理信息和尚未写入逻辑和物理地址管理信息的物理页的逻辑地址执行更新所述逻辑和物理地址管理信息的处理。
4.根据权利要求1所述的控制装置,其中,所述控制单元生成表示每单个物理块中的所述物理页地址和所述逻辑地址之间的对应关系的信息,作为所述逻辑和物理地址管理信息。
5.根据权利要求1所述的控制装置,其中,所述控制单元生成表示每多个物理块中的所述物理页地址和所述逻辑地址之间的对应关系的信息,作为所述逻辑和物理地址管理信息。
6.根据权利要求1所述的控制装置,其中,所述控制单元对作为NAND型闪存的所述存储器单元执行写入控制。
7.一种存储装置,包括:
存储器单元,其中作为删除单位的物理块的尺寸大于作为最小写入单位的物理页的尺寸;以及
控制单元,所述控制单元对所述存储器单元执行数据写入控制,以及生成表示写入目标物理块中物理页地址和逻辑地址之间的对应关系的逻辑和物理地址管理信息,以便执行控制,使得所述逻辑和物理地址管理信息被写入所述写入目标物理块中,其中,数据通过写入控制被写入所述写入目标物理块中。
8.根据权利要求7所述的存储装置中,其中,所述控制单元执行控制,使得所述逻辑和物理地址管理信息被写入所述写入目标物理块中紧接最近使用的物理页之后的物理页中。
9.根据权利要求8所述的控制装置,其中,所述控制单元
在所述目标物理块中从最近使用的物理页到首物理页按顺序执行搜索写入了所述逻辑和物理地址管理信息的物理页的处理,以便获取最先被发现的逻辑和物理地址管理信息,以及
使用获取的逻辑和物理地址管理信息和尚未写入逻辑和物理地址管理信息的物理页的逻辑地址执行更新所述逻辑和物理地址管理信息的处理。
10.一种存储控制方法,包括:
对存储器单元执行数据写入控制,所述存储器单元中作为删除单位的物理块的尺寸大于作为最小写入单位的物理页的尺寸,以及生成表示写入目标物理块中物理页地址和逻辑地址之间的对应关系的逻辑和物理地址管理信息,以便执行控制,使得所述逻辑和物理地址管理信息被写入所述写入目标物理块中,其中数据通过写入控制被写入所述写入目标物理块中。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012-109089 | 2012-05-11 | ||
JP2012109089A JP5949122B2 (ja) | 2012-05-11 | 2012-05-11 | 制御装置、記憶装置、記憶制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103389943A true CN103389943A (zh) | 2013-11-13 |
Family
ID=49534222
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2013101625621A Pending CN103389943A (zh) | 2012-05-11 | 2013-05-03 | 控制装置、存储装置及存储控制方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9146858B2 (zh) |
JP (1) | JP5949122B2 (zh) |
CN (1) | CN103389943A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107291405A (zh) * | 2017-08-17 | 2017-10-24 | 北京中电华大电子设计有限责任公司 | 一种NorFlash的数据管理方法与装置 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10261899B2 (en) * | 2014-09-03 | 2019-04-16 | Infineon Technologies Ag | Method, device and system for data processing using dedicated mapping between logical and physical addresses |
KR20200057473A (ko) | 2018-11-16 | 2020-05-26 | 삼성전자주식회사 | 스토리지 장치 및 이를 포함하는 스토리지 시스템 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6711663B2 (en) * | 2001-11-15 | 2004-03-23 | Key Technology Corporation | Algorithm of flash memory capable of quickly building table and preventing improper operation and control system thereof |
JP5162846B2 (ja) | 2005-07-29 | 2013-03-13 | ソニー株式会社 | 記憶装置、コンピュータシステム、および記憶システム |
JP5076411B2 (ja) | 2005-11-30 | 2012-11-21 | ソニー株式会社 | 記憶装置、コンピュータシステム |
JP2007164318A (ja) * | 2005-12-12 | 2007-06-28 | Renesas Technology Corp | 記憶装置 |
JP4537420B2 (ja) | 2007-04-02 | 2010-09-01 | 株式会社リコー | Simd型マイクロプロセッサ |
KR101473344B1 (ko) * | 2007-08-24 | 2014-12-17 | 삼성전자 주식회사 | 플래시 메모리를 스토리지로 사용하는 장치 및 그 동작방법 |
JP4356782B2 (ja) | 2007-09-12 | 2009-11-04 | ソニー株式会社 | メモリ装置、メモリ制御方法、およびプログラム |
JP4687720B2 (ja) * | 2008-01-30 | 2011-05-25 | Tdk株式会社 | メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 |
TWI385517B (zh) * | 2008-12-05 | 2013-02-11 | Apacer Technology Inc | Storage device and data management method |
-
2012
- 2012-05-11 JP JP2012109089A patent/JP5949122B2/ja not_active Expired - Fee Related
-
2013
- 2013-05-03 CN CN2013101625621A patent/CN103389943A/zh active Pending
- 2013-05-03 US US13/886,985 patent/US9146858B2/en not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107291405A (zh) * | 2017-08-17 | 2017-10-24 | 北京中电华大电子设计有限责任公司 | 一种NorFlash的数据管理方法与装置 |
CN107291405B (zh) * | 2017-08-17 | 2020-05-26 | 北京中电华大电子设计有限责任公司 | 一种NorFlash的数据管理方法与装置 |
Also Published As
Publication number | Publication date |
---|---|
JP2013235530A (ja) | 2013-11-21 |
US9146858B2 (en) | 2015-09-29 |
US20130304973A1 (en) | 2013-11-14 |
JP5949122B2 (ja) | 2016-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8843691B2 (en) | Prioritized erasure of data blocks in a flash storage device | |
JP5983019B2 (ja) | 制御装置、記憶装置、記憶制御方法 | |
US9996462B1 (en) | Data storage device and data maintenance method thereof | |
US9442841B2 (en) | Semiconductor memory device and method for logging monitored events into a buffer | |
KR100526178B1 (ko) | 플래시 메모리 액세스 장치 및 방법 | |
US9785438B1 (en) | Media cache cleaning based on workload | |
US20110320689A1 (en) | Data Storage Devices and Data Management Methods for Processing Mapping Tables | |
JP5183662B2 (ja) | メモリ制御装置及びメモリ制御方法 | |
US8819332B2 (en) | Nonvolatile storage device performing periodic error correction during successive page copy operations | |
JP5874525B2 (ja) | 制御装置、記憶装置、記憶制御方法 | |
JPWO2009004674A1 (ja) | 記憶装置、ディスク装置、書込み判定方法、制御装置 | |
US10942811B2 (en) | Data processing method for solid state drive | |
US10248526B2 (en) | Data storage device and data maintenance method thereof | |
US20100180072A1 (en) | Memory controller, nonvolatile memory device, file system, nonvolatile memory system, data writing method and data writing program | |
US10025706B2 (en) | Control device, storage device, and storage control method | |
JP2010086009A (ja) | 記憶装置およびメモリ制御方法 | |
CN103389943A (zh) | 控制装置、存储装置及存储控制方法 | |
EP2267725A1 (en) | Memory device for managing the recovery of a non volatile memory | |
US11797228B2 (en) | Efficient handling of background operations for improving sustained performance of host reads and writes | |
JP3978720B2 (ja) | データ記憶方法 | |
US7996598B2 (en) | Memory management module | |
US12112062B2 (en) | Write performance by relocation during sequential reads | |
JP2007148965A (ja) | フラッシュディスク装置のエラーブロック管理方法及び装置 | |
JP2009288914A (ja) | フラッシュメモリおよび電子機器 | |
JP2006018893A (ja) | 半導体記憶装置及びそのデータ移動方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20131113 |