控制器、数据存储装置以及程序产品的制作方法

文档序号:6355227阅读:191来源:国知局

专利名称::控制器、数据存储装置以及程序产品的制作方法
技术领域
:本文中描述的实施例一般而言涉及控制器、数据存储装置以及程序。
背景技术
:在相关
技术领域
,在诸如硬盘驱动器(HDD)或固态驱动器(SSD)的数据存储装置中,使用诸如转换表的各种管理信息来管理存储介质的使用状态,其中在该转换表中,逻辑地址(LBA逻辑块地址)和物理地址(PBA物理块地址)彼此关联。逻辑地址是可被主机装置识别的存储介质的逻辑地址,所述主机装置例如为服务器计算机、存储系统的控制器或个人计算机。物理地址是指示(indicate)存储介质的物理存储位置的地址。作为数据存储装置的存储介质的实例,公知诸如NAND型闪速存储器的半导体存储元件。该存储介质不能进行数据的随机读出/写入操作,而是需要以称为页的单位来读出/写入数据,以其中集合了多个页的称为块的单位构建存储区。为了在已写入数据的页或块中写入新数据,需要以块为单位来擦除已写入的数据。也就是,对于其中没有写入数据的已擦除了数据的块的页,数据可被以页为单位依次写入,而对于已写入数据的页,则不能进行数据重写。在主机装置对数据存储装置进行数据读出/写入操作时的读出/写入的单位称为扇区(sector)并相对于页单位或块单位被独立地确定。例如,块尺寸被确定为512千字节,页尺寸被确定为4千字节,而扇区尺寸被确定为512字节。在使用具有上述约束的存储介质的数据存储装置中,采用这样的块管理方法,该方法使用块尺寸的整数倍的尺寸作为在管理信息时的数据的管理尺寸。当在块管理方法中从主机装置请求随机写入时,数据存储装置在暂时存储区中读出数据,该数据被包括在与作为由主机请求写入的逻辑地址的范围中的逻辑地址区相对应的一个或多个块中所存储的数据中且不被写请求所更新。数据存储装置合并该数据和写目标数据(writeobjectdata)。数据存储装置执行擦除一个或多个新的写目标块的处理,写入合并的数据,并将管理信息更新为使逻辑地址区与一个或多个新的写目标块彼此对应。如上所述,在该块管理方法中,因为数据存储装置中的数据写入的尺寸和数据读出的尺寸显著大于从主机装置请求的被请求数据写入的尺寸,因此处理时间会增加,并且随机写入性能会被显著劣化。由于该原因,在使用具有上述约束的存储介质的数据存储装置中,使用日志结构方法(log-structuredmethod)来改善随机写入性能(例如,参见MendelRosenblumandJohnK.Ousterhout,"TheLFSStorageManager,,,Proceedingsofthe1990SummerUsenix,Anaheim,California,June1990,pp.315-3),该方法是通过操作系统(OS)存储器管理或文件系统而被执行的。在使用日志结构方法的数据存储装置中,以页的升序依次写入写目标数据,而不考虑由主机装置的写请求指派的逻辑地址。如果主机装置做出了再次指派先前指派的逻辑地址的写请求,则数据存储装置将该新的写目标数据写入已完成了擦除处理的块的未写入的页中。数据存储装置使与管理信息中的该逻辑地址对应的页(当在过去指派对应的逻辑地址时写入了数据的页)无效,使新写目标数据被写入的页有效,并使该页与对应的逻辑地址关联。在使用日志结构方法的数据存储装置中,如果无效页的数目增加,则数据可被写入的且完成了擦除处理的新块的数目(即,在擦除处理之后未写入数据的空闲块的数目)减小,可能不能进行新的数据写入。出于该原因,在适当的时机进行压缩(对应于垃圾收集(garbagecollection))。在进行压缩时,数据存储装置收集在包含被无效的页的块当中的未被无效的物理地址中所存储的有效数据,并将该有效数据复制到空闲块中以移动该有效数据,并对这些已被复制的块执行擦除处锂,从而产生新的空闲块。数据存储装置通过进行压缩而从不可写入的块产生空闲块。即使在通过移动写入了有效数据的块中,如果存在未写入的页,仍能够进行对该页的新写入。根据该日志结构方法,由于数据存储装置中的数据写入的尺寸和数据读出的尺寸不会变为显著大于从主机装置请求的被请求数据写入的尺寸,因此可以获得高的随机写入性能。半导体存储元件的寿命通常依赖于擦除次数或写入次数。为了增加数据存储装置的设计寿命,数据存储装置中的数据写入尺寸优选小于从主机装置请求的被请求数据写入的尺寸。同时,在对数据存储装置的存取模式中,通常存在地址局域性(addresslocality)。在上述日志结构方法中,由于没有考虑存取模式的地址局域性,因而不能充分改善通常使用性能。
发明内容实施例的目的是提供可以改善其通常使用性能的控制器、数据存储装置以及程序Φ口广BFIο一般而言,根据一个实施例,写指令单元(writeinstructingunit)指令(instruct)数据存取单元(dataaccessunit)在数据存储单元的由第一物理地址指示的存储区中写入写目标数据,指令管理信息存取单元更新地址转换信息,并指令第一存取单元更新所述第一物理地址。压缩单元提取压缩目标数据(compactobjectdata)的物理地址,指令所述数据存取单元读出在所述数据存储单元的由所述物理地址指示的存储区中所存储的所述压缩目标数据,指令所述数据存取单元在所述数据存储单元的由第二物理地址指示的存储区中写入所述压缩目标数据,指令所述管理信息存取单元更新所述地址转换信息,并指令第二存取单元更新所述第二物理地址。根据上述实施例,可以改善通常使用性能。6图1为示出了根据第一实施例的数据存储装置的硬件配置的实例的框图;图2为示出了根据第一实施例的数据存储装置的功能配置的实例的框图;图3为示出了用于确保管理信息的一致性(consistency)的方法的实例的图;图4为示出了用于确保管理信息的一致性的方法的实例的图;图5为示出了用于确保管理信息的一致性的方法的实例的图;图6为示出了用于确保管理信息的一致性的方法的实例的图;图7为示出了根据第二实施例的数据存储装置的功能配置的实例的框图;图8为示出了正向查找表(forwardlookuptable)的数据配置的实例的图;图9为示出了逆向查找表(backwardlookuptable)、有效页标志(flag)以及有效页计数器的数据配置的实例的图;图10为示出了主机写日志结构指针的数据配置的实例的图;图11为示出了命令分割方法的实例的图;图12为示出了日志的实例的图;图13为示出了根据第二实施例的数据存储装置的写处理的实例的流程图;图14为示出了根据第二实施例的数据存储装置的读处理的实例的流程图;图15为示出了根据第二实施例的数据存储装置的压缩处理的实例的流程图;图16为示出了根据第二实施例的数据存储装置的快照(snapshot)记录处理的实例的流程图;图17为示出了根据第二实施例的数据存储装置的管理信息恢复处理的实例的流程图;图18为示出了以逻辑地址顺序排列数据的原理的图;图19为示出了根据第三实施例的数据存储装置的功能配置的实例的框图;图20为示出了有效页标志和有效页计数器的数据配置的实例的图;图21为示出了未用块(non-usedblock)的分配方法的图;图22为示出了未用块的分配方法的图;图23为示出了未用块的分配方法的图;图M为示出了未用块的分配方法的图;图25为示出了未用块的分配方法的图;图沈为示出了未用块的分配方法的图;图27为示出了针对页的数据的写方法的图;图观为示出了根据第三实施例的数据存储装置的写处理的实例的流程图;图四为示出了根据第三实施例的数据存储装置的压缩处理的实例的流程图;图30为示出了根据第三实施例的数据存储装置的管理信息恢复处理的实例的流程图;图31为示出了根据第三实施例的数据存储装置的块分配处理的实例的流程图;图32为示出了根据第三实施例的数据存储装置的块追加(blockadd)完成处理的实例的流程图;图33为示出了根据第三实施例的数据存储装置的空闲块收集处理的实例的流程7图34为示出了不根据约束(constraint)的恢复处理的实例的图35为示出了不根据约束的恢复处理的实例的图36为示出了不根据约束的恢复处理的实例的图37为示出了不根据约束的恢复处理的实例的图38为示出了不根据约束的恢复处理的实例的图39为示出了根据约束的恢复处理的实例的图40为示出了根据约束的恢复处理的实例的图41为示出了根据约束的恢复处理的实例的图42为示出了根据约束的恢复处理的实例的图43为示出了根据约束的恢复处理的实例的图44为示出了根据约束的恢复处理的实例的图45为示出了LBA表的数据配置的实例的图46为示出了逻辑/物理转换表的数据配置的实例的图47为示出了逆向查找表、有效页标志以及有效页计数器的数据配置的实例的图;以及图48为示出了日志结构指针的推进(advancing)方法的实例的图。具体实施例方式下文中,将参考附图详细地描述根据实施例的控制器、数据存储装置以及程序。在以下实施例中,将SSD示例为数据存储装置,但本发明不受此限制。在以下实施例中,示例了数据存储装置中的数据管理单位的尺寸等于页尺寸的情况,但本发明不受此限制。例如,一个页可以存储多个数据管理单位(数据管理单位可具有小于页尺寸的尺寸),或者,多个连续页可以存储一个数据管理单位(数据管理单位可具有大于页尺寸的尺寸)。第一实施例在第一实施中,示例了这样的情况,其中,独立地确保用于存储(追加(add))主机写请求用的写目标数据的存储区和用于追加压缩用的压缩目标数据的存储区。首先,将描述根据第一实施例的数据存储装置的框图。图1是示出根据第一实施例的数据存储装置100的硬件配置的实例的框图。如图1所示,数据存储装置100包括处理器51、引导只读存储器(R0M)52、存储器接口53、动态随机存取存储器(DRAM)54、SATA/SAS接口55、NAND接口57A到57F、NAND(半导体存储介质)58A到58F、以及连接这些部件的总线56。在下面的描述中,在不需将NAND接口57A到57F彼此区分开的情况下,可将NAND接口57A到57F简单地称为NAND接口57。同样,在不需将NAND58A到58F彼此区分开的情况下,可将NAND58A到58F简单地称为NAND58。引导ROM52存储在电力被供给到数据存储装置100时执行的程序。NAND58存储各种系统程序。SATA/SAS接口55在处理器51的控制下控制与主机装置(在图中未示出)的通信。在供应电力时,处理器51从引导ROM52读出程序,执行该程序,并根据对应的程序将存储在NAND58中的各种系统程序传送到DRAMM。处理器51执行被传送到DRAM54的系统程序,从而控制整个数据存储装置100,并实现各种功能。具体地,处理器51执行被传送到DRAM54的系统程序,解释从主机装置通过SATA/SAS接口55发送的命令,并根据经解释的命令而控制对NAND58的数据写入或数据从NAND58的读出。处理器51根据需要控制压缩处理。可以用实现由该各种系统程序实现的处理的全部或一部分的电路替代各种程序的全部或一部分。存储器接口53控制DRAM54。DRAM54存储各种数据或程序。NAND接口57控制NAND58并包括错误校正电路。NAND58由在NAND型闪速存储器中使用的存储元件构成。在图1示出的实例中,NAND58的数目为6。这是因为,通过连接多个NAND58并共同地进行存取,可以提高存取速度。然而,NAND的数目不局限于6。在第一实施例中,示例了块单位的处理。然而,当连接多个NAND58并进行存取时,可通过以其中连接了多个块的称为逻辑块的单位来进行处理。图2为示出了根据第一实施例的数据存储装置100的功能配置的概要的实例的框图。如图2所示,数据存储装置100包括接收器110、管理信息存储单元120、管理信息存取单元121、第一存储单元130、第一存取单元131、第二存储单元140、第二存取单元141、写指令单元150、读指令单元160、压缩单元170、数据存储单元105以及数据存取单元106。接收器110从主机装置接收写请求。写请求包括与主机装置请求写入数据的逻辑地址的范围对应的逻辑地址区的信息以及指定写目标数据的写数据指定信息(writedataspecificationinformation)。逻辑地址是可由主机装置识别的数据存储装置100的逻辑地址。写数据指定信息是写目标数据的信息或者是包括写目标数据的存储场所的信息。接收器110从主机装置接收读请求。该读请求包括与主机装置请求读出数据的逻辑地址的范围对应的逻辑地址区的信息。读请求可包括指示出读数据的存储场所的存储场所信息。通过由处理器51执行各种系统程序和SATA/SAS接口55的功能来实现接收器110的功能。管理信息存储单元120存储管理信息。作为操作数据存储装置100所需的信息的管理信息包括其中物理地址和逻辑地址彼此关联的地址转换信息。物理地址指示出在数据存储单元105中存储的数据的物理存储位置。第一存储单元130存储物理地址,该物理地址被将在下面描述的写指令单元150指派为数据写目的地。第二存储单元140存储物理地址,该物理地址被将在下面描述的压缩单元170指派为数据写目的地。通过DRAMM的预定区域来实现所有的管理信息存储单元120、第一存储单元130以及第二存储单元140。管理信息存取单元121从写指令单元150、读指令单元160或压缩单元接收读指令,从管理信息存储单元120读出管理信息,并向读指令源(写指令单元150、读指令单元160或压缩单元170)提供所读出的管理信息。管理信息存取单元121从写指令单元150或压缩单元170接收写指令,并在管理信息存储单元120中写入被写指令的管理信息(thewriteinstructedmanagementinformation)0第一存取单元131从写指令单元150接收读指令,从第一存储单元130读出物理地址,并向写指令单元150提供该所读出的物理地址。第一存取单元131从写指令单元150接收写指令,并在第一存储单元130中写入被写指令的物理地址(thewriteinstructedphysicaladdress)。第二存取单元141从压缩单元170接收读指令,从第二存储单元140读出物理地址,并向压缩单元170提供所读出的物理地址。第二存取单元141从压缩单元170接收写指令,并在第二存储单元140中写入被写指令的物理地址。通过存储器接口53的功能实现所有的管理信息存取单元121、第一存取单元131以及第二存取单元141。数据存储单元105存储各种数据,例如,由主机装置要求写入的用户数据。通过NAND58实现数据存储单元105。数据存取单元106从写指令单元150、读指令单元160或压缩单元170接收读指令,从数据存储单元105读出数据,并向读指令源(写指令单元150、读指令单元160或压缩单元170)提供所读出的数据。数据存取单元106从写指令单元150或压缩单元170接收写指令,并在数据存储单元105中写入被写指令的数据。通过NAND接口57的功能实现数据存取单元106。写指令单元150参照在由接收器110接收的写请求中包括的写数据指定信息,并获取写目标数据。写指令单元150指令第一存取单元131读出在第一存储单元130中存储的物理地址,并获取该物理地址。写指令单元150指令数据存取单元106在由所获取的物理地址指示的数据存储单元105的存储位置中写入所获取的写目标数据。写指令单元150指令管理信息存取单元121在管理信息存储单元120中写入被写入在数据存储单元105中的写目标数据的地址转换信息。写指令单元150指令第一存取单元131更新由第一存储单元130存储的物理地址并写入该更新的物理地址。读指令单元160提取在由接收器110接收的读请求中包括的读目标数据的逻辑地址区信息。读指令单元160指令管理信息存取单元121读出在管理信息存储单元120中存储的管理信息,并获取该管理信息。读指令单元160使用所提取的逻辑地址区信息而从所获取的管理信息提取物理地址。读指令单元160指令数据存取单元106从由所提取的物理地址指示的数据存储单元105的存储位置读出读目标数据,并获取该读目标数据。读指令单元160通过接收器110向主机装置发送读答复(readr印ly)。读答复是读目标数据的信息或这样的信息,该信息包括指示出读目标数据被存储在由存储场所信息所指定的场所中的信息。压缩单元170指令管理信息存取单元121读出在管理信息存储单元120中存储的管理信息,并获取该管理信息。压缩单元170使用所获取的管理信息而提取压缩目标数据的物理地址。当通过写指令单元150对特定的逻辑地址写入新数据时,先前对指示相同值的逻辑地址进行了写入的数据的存储区变为被无效的存储区。压缩目标数据是存储在未被无效的存储区中的数据。压缩单元170指令数据存取单元106从由所提取的物理地址指示的数据存储单元105的存储位置读出压缩目标数据,并获取该压缩目标数据。压缩单元170指令第二存取单元141读出在第二存储单元140中存储的物理地址,并获取该物理地址。压缩单元170指令数据存取单元106将所获取的压缩目标数据写入由所获取的物理地址指示的数据存储单元105的存储位置中。压缩单元170指令管理信息存取单元121在管理信息存储单元120中写入被写入在数据存储单元105中的压缩目标数据的地址转换信息。压缩单元170指令第二存取单元141更新由第二存储单元140存储的物理地址并写入该更新的物理地址。通过由处理器151执行各种系统程序来实现写指令单元150、读指令单元160以及压缩单元170的功能。如上所述,根据第一实施例,因为独立地确保了用于存储(追加)主机写请求用的写目标数据的存储区和用于追加压缩用的压缩目标数据的存储区,所以能够考虑存取模式的地址局域性,并可以改善通常使用性能。第二实施例在第一实施例中,示例了独立地确保了用于存储(追加)主机写请求用的写目标数据的存储区和用于追加压缩用的压缩目标数据的存储区的情况。当独立地执行主机写处理和压缩处理时,对相同逻辑地址区的主机写处理和压缩处理会彼此覆盖,因此需要确保管理信息的一致性。因此,在第二实施例中,示例了这样的情况,其中,当对相同的逻辑地址区的主机写处理和压缩处理彼此覆盖时,管理信息被最终更新为指示由主机写处理写入数据的新页,从而确保了管理信息的一致性。首先,将描述确保管理信息的一致性的方法。图3到6示出了对相同的逻辑地址区的主机写处理和压缩处理彼此覆盖的情形。在该情形中,如果管理信息被最终更新为指示由主机写处理写入数据的新页,则可以确保管理信息的一致性。在图3示出的实例中,压缩处理首先开始,主机写处理在压缩处理期间开始,并且压缩处理在主机写处理完成之前完成。在该情况下,通过压缩处理和主机写处理二者来更新管理信息,因此该管理信息指示出通过主机写请求写入了数据的新页。在图4示出的实例中,压缩处理首先开始,主机写处理在压缩处理期间开始,并且主机写处理在压缩处理完成之前完成。在该情况下,当压缩处理结束时管理信息未被更新,因此该管理信息指示出通过主机写请求写入了数据的新页。在图5示出的实例中,主机写处理首先开始,压缩处理在主机写处理期间开始,并且主机写处理在压缩处理完成之前完成。在该情况下,当压缩处理结束时管理信息未被更新,因此该管理信息指示出通过主机写请求写入了数据的新页。在图6示出的实例中,主机写处理首先开始,压缩处理在主机写处理期间开始,并且压缩处理在主机写处理完成之前完成。在该情况下,通过压缩处理和主机写处理二者来更新管理信息,因此该管理信息指示出通过主机写请求写入了数据的新页。如果数据存储装置丢失了该管理信息,则数据存储装置不能正常运作。出于该原因,需要在任意时刻将管理信息存储在存储介质中并根据需要恢复所存储的管理信息。每当更新管理信息时就需要存储管理信息。然而,如果每当更新管理信息时就存储所有的管理信息,那么存储时间会增加并且也会增加对存储介质的写入量。因此,在预定时刻存储所有的管理信息(快照),而每当更新管理信息时存储差别信息(日志)。管理信息的恢复被进行为使得在恢复了在存储介质中存储的最新快照之后,将在存储该快照之后存储的日志按时间序列的顺序依次应用于所恢复的快照。由此,可以恢复在最后记录日志的时间点处的管理信息。11如果独立地确保主机写请求用的存储区和压缩用的存储区并独立地执行主机写处理和压缩处理,则基于主机写请求的写目的地和压缩处理的存取目的地成为存储介质上的不连续的(discrete)物理地址。在使用诸如SSD的半导体存储元件作为存储介质的数据存储装置的情况下,即使对该存储介质进行存取时对应的物理地址为不连续的物理地址,时间惩罚(timepenalty)也不存在或可以被忽略。因此,增加了当独立地确保主机写请求用的存储区和压缩用的存储区并独立地执行主机写处理和压缩处理时获得的有益效果。在使用诸如HDD的盘作为存储介质的数据存储装置的情况下,如果对该存储介质进行存取时对应的物理地址为不连续的物理地址,则时间惩罚(例如直到完成了在该盘上插入(cueing)数据为止的磁头移动处理时间或旋转等待时间)增加。因此,减小了当独立地确保主机写请求用的存储区和压缩用的存储区并独立地执行主机写处理和压缩处理时获取的有益效果。接下来,将描述根据第二实施例的数据存储装置的配置。图7为示出了根据第二实施例的数据存储装置200的详细功能配置的实例的框图。如图7所示,数据存储装置200包括半导体存储介质控制单元203、半导体存储介质205、转换表控制单元221、转换表存储单元223、主机写日志结构指针控制单元232、主机写日志结构指针存储单元230、压缩日志结构指针控制单元M2、压缩日志结构指针存储单元M0、块使用信息控制单元226、块使用信息存储单元228、缓冲控制单元207、缓冲存储单元209、主机接口单元210、命令控制单元215、写指令单元250、读指令单元沈0、压缩单元270、快照存储单元观2、日志存储单元观4、管理信息恢复单元四0、快照恢复单元四2以及日志恢复单元四4。半导体存储介质控制单元203控制对半导体存储介质205的数据读出/写入,并为写指令单元250、读指令单元沈0、压缩单元270、快照存储单元观2、日志存储单元观4、快照恢复单元四2以及日志恢复单元294对半导体存储介质205的存取提供支持。通过由处理器51执行各种系统程序和NAND接口57的功能而实现半导体存储介质控制单元203的功能。如果半导体存储介质控制单元203从写指令单元250、读指令单元260或压缩单元270接收所指派的物理地址区的数据的读请求,半导体存储介质控制单元203从半导体存储介质205的所指派的物理地址区读出数据,并向读请求源提供所读出的数据。如果半导体存储介质控制单元203从写指令单元250、读指令单元260或压缩单元270接收写目标数据和对所指派的物理地址区的数据写请求,半导体存储介质控制单元203将所接收的写目标数据写入半导体存储介质205的所指派的物理地址区中。如果从写指令单元250、读指令单元260或压缩单元270连续地发出读请求或写请求,则半导体存储介质控制单元203连续地执行被请求的处理。现在,考虑这样的情况,其中,从指令单元250、读指令单元260和压缩单元270当中的除了发出连续请求的功能单元之外的功能单元正在/已经单独地(s印arately)或连续地向半导体存储介质控制单元203发出读请求或写请求。例如,考虑这样的情况,其中,压缩单元270连续地发出请求而使得半导体存储介质控制单元203正在连续地执行被请求的处理,并且从写指令单元250发出写请求或者已经从写指令单元250发出了写请求。在该情况下,半导体存储介质控制单元203不执行下一连续请求的处理,而是根据需要执行来除了发出该连续请求的功能单元之外的功能单元所请求的处理。也就是,半导体存储介质控制单元203根据需要而切换处理。如果切换之后的处理完成,则半导体存储介质控制单元203根据需要而执行下一连续请求的处理。也就是,半导体存储介质控制单元203根据需要而再次开始被切换的处理。如果半导体存储介质控制单元203从写指令单元250或压缩单元270接收所指派的块的擦除请求,半导体存储介质控制单元203执行对半导体存储介质205的所指派的块的擦除处理。如果半导体存储介质控制单元203从快照存储单元282或日志存储单元284接收数据存储请求,则半导体存储介质控制单元203将被请求存储的数据存储在半导体存储介质205的预定区域中或者存储在这样的区域中,可根据存储在半导体存储介质205的该预定区域中的信息而跟踪该区域。如果半导体存储介质控制单元203从快照恢复单元292或日志恢复单元294接收数据读请求,则半导体存储介质控制单元203从半导体存储介质205的预定区域或这样的区域读出被请求的数据,可根据存储在半导体存储介质205的该预定区域中的信息而跟踪该区域。半导体存储介质控制单元203向快照恢复单元292或日志恢复单元294提供所读出的数据。半导体存储介质205对应于数据存储单元105并由NAND型闪速存储器构成。诸如NAND型闪速存储器的存储元件不能随机读出/写入,能够以称为页的单位进行读出/写入,并构成了其中集合了多个页的称为块的单位的存储区。通过集合多个块而构成半导体存储介质205。可以连接多个半导体存储介质205。转换表控制单元221控制对由转换表存储单元223存储的转换表的存取,并为从写指令单元250、读指令单元沈0、压缩单元270、快照存储单元观2、快照恢复单元四2以及日志恢复单元294对转换表存储单元223的存取提供支持。通过由处理器51执行各种系统程序和存储器接口53的功能而实现转换表控制单元221的功能。转换表控制单元221从写指令单元250、读指令单元沈0、压缩单元270、快照存储单元观2、快照恢复单元292或日志恢复单元294接收对转换表的存取请求,并根据所接收的存取请求而执行处理。转换表控制单元221执行转换表的锁定处理(lockprocess),以便写指令单元250或压缩单元270进行转换表的排他控制。转换表控制单元221进行转换表的锁定解除处理,以便写指令单元250或压缩单元270终止转换表的排他控制。转换表存储单元223对应于管理信息存储单元120的一部分并存储转换表。转换表包括正向查找表、逆向查找表、有效页标志以及有效页计数器。正向查找表是指示出由数据存储装置200存储的数据的逻辑地址与指示出在半导体存储介质205中实际存储对应数据的物理存储位置的物理地址之间的对应关系的表,并且在将地址从逻辑地址转换为物理地址时使用该表。图8示出了正向查找表的数据配置的实例。如图8所示,正向查找表使用逻辑地址作为索引并包括作为条目(entry)的逻辑地址和物理地址。物理地址包括块号码和页号码。逆向查找表是指示出由数据存储装置200存储的数据的逻辑地址与指示出在半导体存储介质205中实际存储对应数据的物理存储位置的物理地址之间的对应关系的表,并且在将地址从物理地址转换为逻辑地址时使用该表,这与正向查找相反。有效页标志使用真/假值示出与在块中包括的各页当中的有效数据被写入的页相对应的有效页。有效页计数器示出包括在块中的各页当中的有效页的数目。图9示出了逆向查找表、有效页标志和有效页计数器的数据配置的实例。如图9所示,逆向查找表、有效页标志和有效页计数器使用块号码作为索引并包括作为条目的块号码、有效页计数器、逻辑地址组以及有效页标志组。逻辑地址组和有效页标志组以设置在块中的页的顺序排列,并可指定逻辑地址的页或有效页标志。同一块的有效页计数器的值和有效页标志的真值的总数目彼此匹配。在同一块中,成为索引的块号码和成为正向查找表的条目的块号码被指派位具有同一号码。主机写日志结构指针控制单元232控制对由主机写日志结构指针存储单元230存储的主机写日志结构指针的存取(access),并为从写指令单元250、快照存储单元观2、快照恢复单元四2以及日志恢复单元294对主机写日志结构指针存储单元230的存取提供支持。通过由处理器51执行各种系统程序和存储器接口53的功能而实现主机写日志结构指针控制单元232的功能。主机写日志结构指针控制单元232从写指令单元250、快照存储单元观2、快照恢复单元292或日志恢复单元294接收对主机写日志结构指针的存取请求,并根据所接收的存取请求而执行处理。主机写日志结构指针存储单元230对应于第一存储单元130并存储主机写日志结构指针。图10示出了主机写日志结构指针的数据配置的实例。如图10所示,主机写日志结构指针包括块号码和页号码。由此,可以识别数据被写入的下一页的物理地址。压缩日志结构指针控制单元242控制对由压缩日志结构指针存储单元240存储的压缩日志结构指针的存取,并为压缩单元270、快照存储单元观2、快照恢复单元四2以及日志恢复单元294对压缩日志结构指针存储单元MO的存取提供支持。通过由处理器51执行各种系统程序和存储器接口53的功能而实现压缩日志结构指针控制单元M2的功能。压缩日志结构指针控制单元242从压缩单元270、快照存储单元观2、快照恢复单元292或日志恢复单元294接收对压缩日志结构指针的存取请求,并根据所接收的存取请求而执行处理。压缩日志结构指针存储单元240对应于第二存储单元140并存储压缩日志结构指针。与图10所示的主机写日志结构指针相似地,压缩日志结构指针包括块号码和页号码。由此,可以识别数据被写入的下一页的物理地址。块使用信息控制单元2控制对由块使用信息存储单元2存储的块使用信息的存取。该块使用信息指示出包括在半导体存储介质205中的每个块是未用块(non-usedblock)还是已用块(usedblock)。在该情况下,未用块是而数据未被写入的块或者被收集作为新的写目的地块的块,其原因是确定了在所有页中先前写入的数据被无效。已用块是先前被分配作为新的写目的地块和未被收集作为未用块的块,其原因是尚未确定在所有页中已写入的数据被无效。块使用信息控制单元2为写指令单元250、压缩单元270、快照存储单元观2、快照恢复单元四2以及日志恢复单元四4对块使用信息存储单元2的存取提供支持。通过由处理器51执行各种系统程序和存储器接口53的功能而实现块使用信息控制单元226的功能。块使用信息控制单元2从写指令单元250、压缩单元270、快照存储单元观2、快照恢复单元292或日志恢复单元294接收对块使用信息的存取请求,并根据所接收的存取请求而执行处理。块使用信息存储单元2对应于管理信息存储单元120的一部分并存储块使用信息。在块使用信息中,指示出包括在半导体存储介质205中的每个块是未用块还是已用块的信息与每一个块相关联。对于在制造或操作数据存储装置200时被确定为缺陷块的块,则可关联指示出缺陷块的信息。缓冲控制单元207控制对缓冲存储单元209的数据输入/输出,并为从写指令单元250、读指令单元260和压缩单元270对缓冲存储单元209的存取提供支持。通过由处理器51执行各种系统程序和存储器接口53的功能而实现缓冲控制单元207的功能。缓冲控制单元207从写指令单元250、读指令单元260或压缩单元270接收要输入的数据和数据输入请求,并将所接收的数据输入到缓冲存储单元209。缓冲控制单元207从写指令单元250、读指令单元260或压缩单元270接收数据输出请求,从缓冲存储单元209输出与所接收的输出请求对应的数据,并将数据提供给数据输出请求源。缓冲存储单元209作为缓冲器而存储数据并通过DRAM54的预定区域而实现。主机接口单元210对应于接收器110的部分功能并控制主机装置(例如服务器计算机、存储系统的控制器和个人计算机)与数据存储装置200之间的通信。主机接口装置210从主机装置接收包括写命令和读命令的命令,并向命令控制单元215发出命令执行通知以根据所接收的命令的种类而执行处理。写命令包括数据存储装置200的写目的地逻辑地址和写数据尺寸。读命令包括数据存储装置200的读目的地逻辑地址和读数据尺寸。如果主机接口单元210从命令控制单元215接收到用于请求主机装置发送数据的请求,则主机接口单元210发出所接收的用于请求主机装置发送数据的请求。如果主机接口单元210接收到从主机装置发送的并将被数据存储装置200接收的数据,则主机接口单元210将该数据发送到命令控制单元215。如果主机接口单元210从命令控制单元215接收到用于请求主机装置接收数据的请求,则主机接口单元210发出所接收的用于请求主机装置接收数据的请求。如果主机接口单元210接收到来自主机装置的数据接收请求,则主机接口单元210向命令控制单元215发出所接收的来自主机装置的数据接收请求,并将从命令控制单元215接收到的并将被主机装置接收的数据发送到主机装置。命令控制单元215对应于接收器110的部分功能。如果命令控制单元215从主机接口单元210接收到命令执行通知,则命令控制单元215根据所接收的命令的种类而将向写指令单元250或读指令单元260分配处理。通过由处理器51执行各种系统程序而实现命令控制单元215的功能。当命令控制单元215从主机接口单元210接收到写命令或读命令并且用于该命令的区域超过管理尺寸区域(页)的边界时,命令控制单元215通过管理尺寸区的边界来分割该命令。图11示出了其写目的地逻辑地址为3且写数据尺寸为16的写命令的写区域与被配置为扇区尺寸为512字节且管理尺寸为4千字节的管理尺寸区域的边界之间的关系。在图11示出的实例的情况下,命令控制单元215将其写目的地逻辑地址为3且写数据尺寸为16的写命令分割成写目的地逻辑地址为3且写数据尺寸为5的写命令、写目的地逻辑地址为8且写数据尺寸为8的写命令、以及写目的地逻辑地址为16且写数据尺寸为3的写命令。命令控制单元215在该经分割的命令为写命令时向写指令单元250通知该经分割的命令,而当经分割的命令为读命令时向读指令单元260通知该经分割的命令。当从主机接口单元210接收到的写命令或读命令的区域没有超过管理尺寸区域的边界时,命令控制单元215在所接收的命令为写命令时向写指令单元250通知所接收的命令,而在所接收的命令为读命令时向读指令单元260通知所接收的命令。如果命令控制单元215从主机接口单元210接收到除写命令或读命令之外的命令的执行通知,则命令控制单元215执行适宜的处理。如果命令控制单元215从写指令单元250接收到用于请求主机装置发送数据的请求,则命令控制单元215向主机接口单元210发送所接收的用于请求主机装置发送数据的请求。如果命令控制单元215从主机接口单元210接收到由主机装置发送的数据,则命令控制单元215将所接收的数据发送到写指令单元250。如果命令控制单元215从读指令单元260接收到用于请求主机装置接收数据的请求,则命令控制单元215向主机接口单元210发送所接收的用于请求主机装置接收数据的请求。如果命令控制单元215从主机接口单元210接收到来自主机装置的数据接收请求,则该命令控制单元215将从主机装置接收到的数据接收请求发送到读指令单元沈0。如果命令控制单元215从读指令单元沈0接收到要由主机装置接收的数据,则命令控制单元215将所接收的数据发送到主机接口单元210。写指令单元250执行对应于写命令的处理。通过由处理器51执行各种系统程序来实现写指令单元250的功能。写指令单元250从命令控制单元215接收写命令(包括通过命令控制单元215分割的写命令)。写指令单元250向命令控制单元215发出用于请求主机装置发送数据的请求。如果写指令单元250从命令控制单元215接收到由主机装置发送的数据,则写指令单元250向缓冲控制单元207发出对所接收的数据的存储请求。对于通过命令控制单元215分割的写命令,写指令单元250可以如上所述与主机装置逐一地(individually)交换数据,或者命令控制单元215或主机接口210可收集数据并与主机装置一次性地交换数据。当写命令的写数据尺寸小于管理尺寸(例如,如在图11中所示的实例,作为分割结果而变为其写目的地逻辑地址为3且写数据尺寸为5的写命令的命令下文中,作为分割结果而变为其写目的地逻辑地址为3且写数据尺寸为5的写命令的命令称为在图11示出的实例)时,写指令单元250执行填充处理(paddingprocess),以便写数据变为对应于管理尺寸的数据。具体而言,写指令单元250向转换表控制单元221询问剩余的逻辑地址区(图11示出的实例中的逻辑地址为0且数据尺寸为3的区域)所对应的物理地址区,并获取剩余的逻辑地址区所对应的物理地址区的信息。写指令单元250向半导体存储介质控制单元203发出对剩余的逻辑地址区对应的所获取的物理地址区的数据的读请求,并向缓冲控制单元207发出对所读出的数据的存储请求。结果,缓冲控制单元207在缓冲存储单元209中存储对应于管理尺寸的数据以及从命令控制单元215接收到的数据。写指令单元250向主机写日志结构指针控制单元232询问当前的主机写日志结构指针,获取该主机写日志结构指针,并获取该主机写日志结构指针所对应的物理地址区的η息。写指令单元250向缓冲控制单元207发出对所存储的与管理尺寸对应的数据的提取请求,将所提取的数据和与所获取的主机写日志结构指针对应的物理地址区的信息发送到半导体存储介质控制单元203,并请求半导体存储介质控制单元203在与所获取的主机写日志结构指针对应的物理地址区中写入所提取的数据。当所获取的主机写日志结构指针指示块的首页(headpage)时,写指令单元205在请求半导体存储介质控制单元203写入数据之前请求半导体存储介质控制单元203执行块擦除处理。然而,块擦除处理的执行时机并不受此限制。例如,执行时机可以是新分配用于主机写入的块的时刻、作为未用块而收集块的时刻,或者在作为未用块而收集块之后直到写指令单元250请求半导体存储介质控制单元203写入数据的时间段期间的任意时刻。写指令单元250请求转换表控制单元221在与所获取的主机写日志结构指针对应的物理地址区的对应逆向查找表中登记包括该写命令的区域的管理尺寸区域的首部(head)的逻辑地址(在图11示出的实例中,逻辑地址0)。写指令单元250向日志存储单元284通知被更新的转换表的更新信息。写指令单元250请求转换表控制单元221执行转换表的排他控制开始处理(锁定处理)。在转换表的排他控制期间,写指令单元250更新转换表以指示新写入的数据。具体而言,写指令单元250向转换表控制单元221询问在接收写命令之前与包括该写命令的区域的管理尺寸区域的首部的逻辑地址(在图11示出的实例中,逻辑地址0)对应的物理地址(更新前的物理地址)。写指令单元250请求转换表控制单元221使与所获取的更新前的物理地址对应的有效页标志变为OFF。写指令单元250请求转换表控制单元221减小与所获取的更新前的物理地址对应的块的有效页计数器。写指令单元250请求转换表控制单元221使与所获取的主机写日志结构指针对应的有效页标志变为ON。写指令单元250请求转换表控制单元221增加与所获取的主机写日志结构指针对应的块的有效页计数器。写指令单元250请求转换表控制单元221更新正向查找表的包括该写命令的区域的管理尺寸区域的首部的逻辑地址(在图11示出的实例中,逻辑地址0)以指示主机写日志结构指针所对应的物理地址区的信息。写指令单元250向日志存储单元284通知被更新的转换表的更新信息。写指令单元250请求转换表控制单元221执行转换表的排他控制结束处理(锁定解除处理)。写指令单元250请求主机写日志结构指针控制单元232更新主机写日志结构指针以指示下一页。写指令单元250向主机写日志结构指针控制单元232询问更新的主机写日志结构指针是否超过该块的末页(finalpage)0如果写指令单元250接收到指示出更新的主机写日志结构指针超过块的末页的答复,则写指令单元250请求块使用信息控制单元2执行未用块的分配处理。结果,块使用信息被更新。写指令单元250请求主机写日志结构指针控制单元232更新主机写日志结构指针以指示新分配的块的首部的页。写指令单元250向日志存储单元284通知更新的主机写日志结构指针的更新信息和更新的块使用信息的更新信息。写指令单元250请求日志存储单元284提交(commit)向日志存储单元284通知的更新信息。读指令单元260执行对应于读命令的处理。通过由处理器51执行各种系统程序来实现读指令单元260的功能。读指令单元260从命令控制单元215接收读命令(包括通过命令控制单元215分割的读命令)。读指令单元260向转换表控制单元221询问所接收的读命令的逻辑地址区对应的物理地址区,并获取该对应的物理地址区的信息。读指令单元沈0向半导体存储介质控制单元203发出对所获取的物理地址区的数据的读请求,并向缓冲控制单元207发出对所读出的数据的存储请求。读指令单元沈0向命令控制单元215发出用于请求主机装置接收数据的请求。如果读指令单元260从命令控制单元215接收到来自于主机装置的数据接收请求,读指令单元沈0向缓冲控制单元207发出对所读出的数据的提取请求并将所提取的数据传送到命令控制单元215。对于通过命令控制单元215分割的读命令,读指令单元260可以如上所述与主机装置逐一地交换数据,或者,命令控制单元215或主机接口单元210可以收集数据并与主机装置一次性地交换数据。压缩单元270在需要进行压缩处理的时刻或在任何时刻执行压缩处理。通过由处理器51执行各种系统程序而实现压缩单元270的功能。压缩单元270向块使用信息控制单元2询问已用块的块号码,并获取该已用块的块号码。压缩单元270向转换表控制单元221询问所获取的块当中的适合用于压缩目标的块,并获取适合用于压缩目标的块的块号码以及对应的块的有效页标志和有效页计数器。适合用于压缩目标的块为有效页计数器的值为最小的块。在该情况下,当选择有效页计数器的值为0的块被选择作为压缩目标时,压缩单元270请求块使用信息控制单元2将对应的块登记为未用块。结果,对应的块作为未用块而被收集。当对应的块作为未用块而被收集时,压缩单元270向日志存储单元284通知更新的块使用信息的更新信息。压缩单元270向半导体存储介质控制单元203发出对与所获取的压缩目标块号码和有效页标志信息对应的物理地址区(复制源页(copyoriginpage))的读请求。如果压缩单元270接收到所读出的数据,压缩单元270向缓冲控制单元207发出对所接收的数据的存储请求。压缩单元270向压缩日志结构指针控制单元242询问当前的压缩日志结构指针,获取该压缩日志结构指针,并获取该压缩日志结构指针所对应的物理地址区(复制目的地页)的信息。压缩单元270向缓冲控制单元207发出对所存储的数据的提取请求,向半导体存储介质控制单元203发送所提取的数据和与所获取的压缩日志结构指针对应的物理地址区(复制目的地页)的信息,并请求半导体存储介质控制单元203在与所获取的压缩日志结构指针对应的物理地址区(复制目的地页)中写入所提取的数据。当所获取的压缩日志结构指针指示该块的首页时,压缩单元270在请求半导体存储介质控制单元203写入数据之前请求半导体存储介质控制单元203执行块擦除处理。然而,执行块擦除处理的时机不受此限制。例如,该时机可以为新分配用于压缩的块的时刻、作为未用块而收集块的时刻,或在作为未用块而收集块之后直到压缩单元207请求半导体存储介质控制单元203写入数据的时间段期间的任意时刻。压缩单元270请求转换表控制单元221在与所获取的压缩日志结构指针对应的物理地址区(复制目的地页)的对应逆向查找表中登记与所获取的压缩目标块号码和有效页标志信息对应的物理地址区(复制源页)的逆向查找逻辑地址信息。压缩单元270向日志存储单元284通知更新的转换表的更新信息。压缩单元270请求转换表控制单元221执行转换表的排他控制开始处理(锁定处理)。在转换表的排他控制期间,压缩单元270更新转换表以指示压缩目的地的数据。然而,如上所述,当在数据的复制处理期间通过写指令单元250完成对与被复制的数据对应的逻辑地址区相同的逻辑地址区的写处理时,压缩单元270不应更新转换表。具体而言,压缩单元270使用与所获取的压缩目标块号码和有效页标志信息对应的物理地址区(复制源页)的逆向查找逻辑地址信息而向转换表控制单元221发出对正向查找表的参照请求,并获取对应于该逆向查找逻辑地址信息的物理地址。压缩单元270确定对应于所获取的逆向查找逻辑地址信息的物理地址与所获取的压缩目标块号码和有效页标志信息所对应的物理地址区(复制源页)是否彼此匹配。当确定所述物理地址与所述物理地址区彼此不匹配时,这意味着,在数据的复制处理期间,写指令单元250完成了对与被复制的数据所对应的逻辑地址区相同的逻辑地址区的写处理。出于该原因,压缩单元270结束在转换表的排他控制期间的处理并且不更新转换表。当确定所述物理地址与所述物理地址区彼此匹配时,这意味着,在数据的复制处理期间,写指令单元250没有执行对与被复制的数据所对应的逻辑地址区相同的逻辑地址区的写处理,或者虽然执行但却没有完成该写处理。出于该原因,压缩单元270更新转换表。具体而言,压缩单元270请求转换表控制单元221使与所获取的压缩目标块号码和有效页标志信息对应的物理地址区(复制源页)的有效页标志变为OFF。压缩单元270请求转换表控制单元221减小与所获取的压缩目标块号码对应的块的有效页计数器。压缩单元270请求转换表控制单元221使与所获取的压缩日志结构指针对应的物理地址区(复制目的地页)的有效页标志变为ON。压缩单元270请求转换表控制单元221增加与所获取的压缩日志结构指针对应的块的有效页计数器。压缩单元270请求将转换表控制单元221由与所获取的压缩目标块号码和有效页标志信息对应的物理地址区(复制源页)的逆向查找逻辑地址所指示出的正向查找表的条目更新为指示与该压缩日志结构指针对应的物理地址区(复制目的地页)的信息。压缩单元270向日志存储单元284通知更新的转换表的更新信息。如果所获取的压缩目标块的有效页计数器的值变为0,则压缩单元270请求块使用信息控制单元2将对应的块登记为未用块。结果,作为未用块而收集该对应的块。当该对应的块作为未用块而被收集时,压缩单元270向日志存储单元284通知更新的块使用信息的更新信息。压缩单元270请求转换表控制单元221执行对转换表的排他控制结束处理(锁定解除处理)。压缩单元270请求压缩日志结构指针控制单元242更新压缩日志结构指针以指示下一页。压缩单元270向压缩日志结构指针控制单元242询问更新的压缩日志结构指针是否超过该块的末页。如果压缩单元270接收到指示出更新的压缩日志结构指针超过该块的末页的答复,则压缩单元270请求块使用信息控制单元2执行对未用块的分配处理。结果,块使用信息被更新。压缩单元270请求压缩日志结构指针控制单元242更新压缩日志结构指针以指示新分配的块的首部的页。压缩单元270向日志存储单元284通知更新的压缩日志结构指针的更新信息和更新的块使用信息的更新信息。压缩单元270请求日志存储单元284提交向日志存储单元284通知的更新信息。快照存储单元282在需要快照存储处理的时刻或任意时刻执行快照存储处理。通过由处理器51执行各种系统程序而实现快照存储单元观2的功能。快照存储单元282请求日志存储单元284存储指示出快照记录开始的信息的日志。由此,可以识别快照与日志的记录时间的次序关系。快照存储单元282请求转换表控制单元221提取转换表并获取该转换表。快照存储单元282请求主机写日志结构指针控制单元232提取主机写日志结构指针,并获取该主机写日志结构指针。快照存储单元282请求压缩日志结构指针控制单元242提取压缩日志结构指针,并获取该压缩日志结构指针。快照存储单元282请求块使用信息控制单元2提取块使用信息,并获取该块使用信息。快照存储单元282请求半导体存储介质控制单元203存储所获取的转换表、所获取的主机写日志结构指针、所获取的压缩日志结构指针以及所获取的块使用信息,并记录快照。如果不能在之前识别出其中记录了快照或日志的半导体存储介质205的物理地址,则在向数据存储装置200供电时,管理信息不能被恢复。出于该原因,使其中记录了快照或日志的半导体存储介质205的物理地址指示半导体存储介质205的预定区域或指示这样的区域,可通过在半导体存储介质205的该预定区域中记录的信息而跟踪该区域。快照存储单元282请求日志存储单元284存储指示出快照记录结束的信息的日志。由此,可以识别出快照和日志的记录时间的次序关系。日志存储单元284执行日志存储处理。通过由处理器151执行各种系统程序来实现日志存储单元观4的功能。日志存储单元284从写指令单元250或压缩单元270接收各种信息的更新信息的通知,并暂时存储所接收的更新信息。日志存储单元284从写指令单元250或压缩单元270接收提交通知(commitmentnotification),请求半导体存储介质控制单元203存储该暂时存储的更新信息,并记录该暂时存储的更新信息作为日志。日志存储单元284从快照存储单元282接收指示出快照记录开始的信息的日志的存储通知,请求半导体存储介质控制单元203存储该接收的指示出快照记录开始的信息的日志,并记录该信息作为日志。日志存储单元观4从快照存储单元282接收指示出快照记录结束的信息的日志的存储通知,请求半导体存储介质控制单元203存储该接收的指示出快照记录结束的信息的日志,并记录该信息作为日志。在图12中示出了日志存储单元284通过半导体存储介质控制单元203存储的日志的实例。如图12所示,日志存储单元284按日志提交处理请求的接收次序以时间序列排列日志。在该情况下,如果检测出快照的记录结束,因为在快照记录开始之前的日志(图12中示出的实例中的日志1和2)和在先前记录的快照在管理信息恢复处理中变得不必要,因此日志存储单元284将在快照记录开始之前的日志和先前记录的快照释放(free)为新的数据存储区。当需要恢复管理信息时,管理信息恢复单元290执行管理信息恢复处理。通过由处理器151执行各种系统程序来实现管理信息恢复单元290的功能。管理信息恢复单元四0请求快照恢复单元292恢复最新的快照。管理信息恢复单元290请求日志恢复单元294从在存储最新的快照之后存储的日志恢复管理信息。快照恢复单元292恢复最新的快照。通过由处理器151执行各种系统程序来实现快照恢复单元四2的功能。如果快照恢复单元292从管理信息恢复单元290接收到对最新的快照的恢复请求,则快照恢复单元四2向半导体存储介质控制单元203发出对最新的快照的恢复请求,并接收最新的快照。快照恢复单元292从所接收的快照提取转换表,并请求转换表控制单元221存储所提取的转换表。快照恢复单元292从所接收的快照提取主机写日志结构指针,并请求主机写日志结构指针控制单元232存储所提取的主机写日志结构指针。快照恢复单元292从所接收的快照提取压缩日志结构指针,并请求压缩日志结构指针控制单元242存储所提取的压缩日志结构指针。快照恢复单元292从所接收的快照提取块使用信息,并请求块使用信息控制单元2存储所提取的块使用信息。日志恢复单元294从在存储最新的快照之后存储的日志恢复管理信息。通过由处理器151执行各种系统程序来实现日志恢复单元四4的功能。如果日志恢复单元294从管理信息恢复单元290接收到从在存储最新的快照之后存储的日志恢复管理信息的请求,日志恢复单元四4向半导体存储介质控制单元203发出对从在存储该最新的快照之后存储的日志的提取请求,并接收在存储该最新的快照之后存储的日志。日志恢复单元294按记录次序从所接收的日志提取日志,并请求转换表控制单元221、主机写日志结构指针控制单元232、压缩日志结构指针控制单元242或块使用信息控制单元2反映在日志中记录的各种信息的更新信息。接下来,将描述根据第二实施例的数据存储装置的操作。首先,将参考图13描述根据来自主机装置的写命令由数据存储装置200执行的写处理的序列。图13为示出了由数据存储装置200执行的写处理的序列的流程的实例的流程图。数据存储装置200预先确保了用于来自主机装置的写命令的未用块,以为来自主机装置的写命令做准备。在步骤Sl中,主机接口单元210从主机装置接收写命令,并向命令控制单元215发出命令执行通知以根据所接收的命令的种类而执行处理。在步骤S2中,如果命令控制单元215从主机接口单元210接收到写命令,则命令控制单元215调查对应的命令的区域是否超过管理尺寸区域(页)的边界。当对应的命令的区域超过管理尺寸区域(页)的边界时(步骤S2中的是),处理进行到步骤S3。而当对应的命令的区域没有超过管理尺寸区域(页)的边界时(步骤S2中的否),处理进行到步骤S4。在步骤S3中,命令控制单元215通过管理尺寸区域的边界分割对应的命令。例如,如图11所示,命令控制单元215将其写目的地逻辑地址为3且写数据尺寸为16的写命令分割成写目的地逻辑地址为3且写数据尺寸为5的写命令、写目的地逻辑地址为8且写数据尺寸为8的写命令、以及写目的地逻辑地址为16且写数据尺寸为3的写命令。在步骤S4中,命令控制单元215向写指令单元250通知经分割的命令。当从主机接口单元210接收到的写命令的区域没有超过管理尺寸区域的边界时,命令控制单元215向写指令单元250通知所接收的命令。因此,当写命令被分割时,写指令单元250反复执行以下处理。在步骤S5中,写指令单元250向命令控制单元215发出用于请求主机装置发送数据的请求。如果命令控制单元215从写指令单元250接收到用于请求主机发送数据的请求,则命令控制单元215向主机接口单元210发送所接收的用于请求主机装置发送数据的请求。如果主机接口单元210从命令控制单元215接收到该用于请求主机装置发送数据的请求,则主机接口单元210向主机装置发出所接收的用于请求主机装置发送数据的请求。如果主机接口单元210从主机装置接收到将要由数据存储装置200接收的数据,则主机接口单元210将将要由数据存储装置200接收的数据发送到命令控制单元215。如果命令控制单元215从主机接口单元210接收到由主机装置发送的数据,则命令控制单元215将所接收的数据发送到写指令单元250。如果写指令单元250从命令控制单元215接收到由主机装置发送的数据,则写指令单元250向缓冲控制单元207发出对所接收的数据的存储请求。对于通过命令控制单元215分割的写命令,写指令单元250可以如上所述地与主机装置逐一地交换数据,或者命令控制单元215或主机接口210可以收集数据并与主机装置一次性地交换数据。缓冲控制单元207在缓冲存储单元209中存储被指派的数据。在步骤S6中,写指令单元250调查写命令的写数据尺寸是否小于管理尺寸。当写数据尺寸小于管理尺寸(步骤S6中的是)时,处理进行到步骤S7。当写数据尺寸不小于管理尺寸(步骤S6中的否)时,处理进行到步骤S8。如同图11示出的实例,写数据尺寸小于管理尺寸的情况是写命令的写目的地逻辑地址为3且写数据尺寸为5的情况。在步骤S7中,写指令单元250向转换表控制单元221询问剩余的逻辑地址区(图11示出的实例中的逻辑地址为0且数据尺寸为3的区域)所对应的物理地址区。转换表控制单元221参照由转换表存储单元223存储的转换表,并提供对应的物理地址区的信息。写指令单元250获取与所获取的剩余逻辑地址区对应的物理地址区的信息,并向半导体存储介质控制单元203发出对与剩余的逻辑地址区对应的物理地址区的数据的读请求。半导体存储介质控制单元203读出半导体存储介质205的被指派的物理地址区的数据,并提供该数据。当从写指令单元250连续地发出写请求或读请求且所请求的处理被连续地执行、并且从读指令单元260或压缩单元270发出读请求或写请求或者已经发出了读请求或写请求时,半导体存储介质控制单元203不执行下一连续请求的处理,而是根据需要执行由读指令单元260或压缩单元270请求的处理。也就是,半导体存储介质控制单元203根据需要切换处理。如果切换之后的处理完成,则半导体存储介质控制单元203根据需要执行下一连续请求的处理。也就是,半导体存储介质控制单元203根据需要重新开始被切换的处理。写指令单元250向缓冲控制单元207发出对读出的数据的存储请求。结果,缓冲控制单元207在缓冲存储单元209中存储从命令控制单元215接收到的数据以及对应于管理尺寸的数据。缓冲控制单元207在缓冲存储单元209中存储被指派的数据。在步骤S8中,写指令单元250向主机写日志结构指针控制单元232询问当前的主机写日志结构指针。主机写日志结构指针控制单元232提供由主机写日志结构指针存储单元230存储的主机写日志结构指针。写指令单元250获取该主机写日志结构指针,并获取与该主机写日志结构指针对应的物理地址区的信息。写指令单元250向缓冲控制单元207发出对与管理尺寸对应的所存储的数据的提取请求。缓冲控制单元207提取由缓冲存储单元209存储的被指派的数据,并提供该被指派的数据。写指令单元250将所提取的数据和与所获取的主机写日志结构指针对应的物理地址区的信息发送到半导体存储介质控制单元203,并请求半导体存储介质控制单元203在与所获取的主机写日志结构指针对应的物理地址区中写入所提取的数据。当所获取的主机写日志结构指针指示块的首页时,写指令单元250在请求半导体存储介质控制单元203写入数据之前请求半导体存储介质控制单元203执行块擦除处理。然而,块擦除处理的执行时机并不受此限制。例如,执行时机可以是新分配用于主机写入的块的时刻、作为未用块而收集块的时刻、或者在作为未用块而收集块之后直到在写指令单元250请求半导体存储介质控制单元203写入数据的时间的时间段期间的任意时刻。半导体存储介质控制单元203在半导体存储介质的被指派的物理地址区中写入被指派的数据。当从写指令单元250连续地发出写请求或读请求且所请求的处理被连续地执行、并且从读指令单元260或压缩单元270发出读请求或写请求或者已经发出了读请求或写请求时,半导体存储介质控制单元203不执行下一连续请求的处理,而是根据需要执行从读指令单元260或压缩单元270请求的处理。也就是,半导体存储介质控制单元203根据需要切换处理。如果切换之后的处理完成,则半导体存储介质控制单元203根据需要执行下一连续请求的处理。也就是,半导体存储介质控制单元203根据需要重新开始被切换的处理。在步骤S9中,写指令单元250请求转换表控制单元221在与所获取的主机写日志结构指针对应的逆向查找表中登记包括该写命令的区域的管理尺寸区域的首部的逻辑地址(在图11示出的实例中,逻辑地址0)。转换表控制单元221在逆向查找表中登记包括该写命令的区域的管理尺寸区域的首部的逻辑地址(在图11示出的实例中,逻辑地址0),该逆向查找表是由转换表存储单元223存储的转换表,并且所获取的主机写日志结构指针对应于该表。写指令单元250向日志存储单元284通知更新的转换表的更新信息。日志存储单元284接收更新的转换表的更新信息。在步骤SlO中,写指令单元250请求转换表控制单元221执行转换表的排他控制开始处理(锁定处理)。转换表控制单元221执行转换表的排他控制开始处理(锁定处理)。在步骤Sll中,写指令单元250向转换表控制单元221询问在接收写命令之前与包括该写命令的区域的管理尺寸区域的首部的逻辑地址(在图11示出的实例中,逻辑地址0)对应的物理地址(更新前的物理地址)。转换表控制单元221参照由转换表存储单元223存储的转换表,获取在接收写命令之前与包括该写命令的区域的管理尺寸区域的首部的逻辑地址(在图11示出的实例中,逻辑地址0)对应的物理地址(更新前物理地址),并提供该物理地址。写指令单元250获取在接收写命令之前与包括该写命令的区域的管理尺寸区域的首部的逻辑地址(在图11示出的实例中,逻辑地址0)对应的物理地址(更新前的物理地址)。在步骤S12中,写指令单元250请求转换表控制单元221使与所获取的更新前的物理地址对应的有效页标志变为OFF。在步骤S13中,写指令单元250请求转换表控制单元221减小与所获取的更新前的物理地址对应的块的有效页计数器。在步骤S14中,写指令单元250请求转换表控制单元221使与所获取的主机写日志结构指针对应的有效页标志变为ON。在步骤S15中,写指令单元250请求转换表控制单元221增加与所获取的主机写日志结构指针对应的块的有效页计数器。在步骤S16中,写指令单元250请求转换表控制单元221更新正向查找表的包括该写命令的区域的管理尺寸区域的首部的逻辑地址(在图11示出的实例中,逻辑地址0)以指示与主机写日志结构指针对应的物理地址的信息。转换表控制单元221根据指令而更新由转换表存储单元223存储的转换表。写指令单元250向日志存储单元284通知更新的转换表的更新信息。在步骤S17中,写指令单元250请求转换表控制单元221执行转换表的排他控制结束处理(锁定解除处理)。转换表控制单元221执行转换表的排他控制结束处理(锁定解除处理)。在步骤S18中,写指令单元250请求主机写日志结构指针控制单元232更新主机写日志结构指针以指示下一页。主机写日志结构指针控制单元232更新主机写日志结构指针以指示下一页。写指令单元250向日志存储单元284通知更新的主机写日志结构指针的更新信息。在步骤S19中,写指令单元250向主机写日志结构指针控制单元232询问更新的主机写日志结构指针是否超过该块的末页。主机写日志结构指针控制单元232调查更新的主机写日志结构指针是否超过该块的末页,并提供调查结果。如果写指令单元250接收到指示出更新的主机写日志结构指针超过块的末页的答复,则处理进行到步骤S20。否则,处理进行到步骤S21。在步骤S20中,写指令单元250请求块使用信息控制单元2执行未用块的分配处理。结果,块使用信息被更新。块使用信息控制单元2从由块使用信息存储单元2存储的块使用信息选择处于未被使用状态的块,分配该未用块,并更新块使用信息。写指令单元250请求主机写日志结构指针控制单元232更新主机写日志结构指针以指示新分配的块的首部的页。主机写日志结构指针控制单元232更新由主机写日志结构指针存储单元230存储的主机写日志结构指针以指示新分配的块的首部的页。写指令单元250向日志存储单元284通知更新的主机写日志结构指针的更新信息和更新的块使用信息的更新信息。在步骤S21中,写指令单元250请求日志存储单元284提交向日志存储单元观4通知的更新信息。日志存储单元284从写指令单元250接收提交通知,并请求半导体存储介质控制单元203存储该暂时存储的更新信息。半导体存储介质控制单元203记录该暂时存储的更新信息作为日志。如果不能在之前识别出其中记录了日志的半导体存储介质205的物理地址,则在向数据存储装置200供电时,管理信息不能被恢复。出于该原因,使其中记录了日志的半导体存储介质205的物理地址指示半导体存储介质205的预定区域或这样的区域,可通过在半导体存储介质205的该预定区域中记录的信息而跟踪该区域。在步骤S22中,根据需要,从步骤S4开始重复处理。接下来,将参考图14描述根据来自主机装置的读命令而由数据存储装置200执行的读处理的序列。图14为示出了由数据存储装置200执行的读处理的序列的流程的实例的流程图。在该情况下,假设在之前已经通过写命令写入了被请求读取的数据。在步骤S31中,主机接口单元210从主机装置接收读命令并向命令控制单元215发出命令执行通知以根据所接收的命令的种类而执行处理。在步骤S32中,如果命令控制单元215从主机接口单元210接收到读命令,则命令控制单元215调查对应的命令的区域是否超过管理尺寸区域(页)的边界。当对应的命令的区域超过管理尺寸区域(页)的边界时(步骤S32中的是),处理进行到步骤S33。当对应的命令的区域没有超过管理尺寸区域(页)的边界时(步骤S32中的否),处理进行到步骤S34。在步骤S33中,命令控制单元215通过管理尺寸区域的边界分割对应的命令。该命令分割处理与写处理时的情况相同。在步骤S34中,命令控制单元215向读指令单元沈0通知经分割的命令。当从主机接口单元210接收到的写命令的区域没有超过管理尺寸区域的边界时,命令控制单元215向读指令单元260通知所接收的命令。因此,当读命令被分割时,写指令单元260反复执行以下处理。在步骤S35中,读指令单元沈0向转换表控制单元221询问与所接收的读命令的逻辑地址区对应的物理地址区,并获取对应的物理地址区的信息。转换表控制单元221参照由转换表存储单元223存储的转换表,并提供与所接收的读命令的逻辑地址区对应的物理地址区信息。读指令单元260获取与所接收的读命令的逻辑地址区对应的物理地址区信肩、ο在步骤S36中,读指令单元沈0向半导体存储介质控制单元203发出对所获取的物理地址区的数据的读请求。半导体存储介质控制单元203读出半导体存储介质的被指派的物理地址区的数据,并提供该数据。当从读指令单元260连续地发出读请求且所请求的处理被连续地执行、并且从写指令单元250或压缩单元270发出读请求或写请求或者已经发出了读请求或写请求时,半导体存储介质控制单元203不执行下一连续请求的处理,而是根据需要执行由写指令单元250或压缩单元270请求的处理。也就是,半导体存储介质控制单元203根据需要切换处理。如果切换之后的处理完成,则半导体存储介质控制单元203根据需要执行下一连续请求的处理。也就是,半导体存储介质控制单元203根据需要重新开始被切换的处理。读指令单元沈0向缓冲控制单元207发出对读出的数据的存储请求。缓冲控制单元207在缓冲存储单元209中存储被指派的数据。在步骤S37中,读指令单元沈0向命令控制单元215发出用于请求主机装置接收数据的请求。如果命令控制单元215从读指令单元260接收到用于请求主机装置接收数据的请求,则命令控制单元215向主机接口单元210发出所接收的该用于请求主机装置接收数据的请求。如果主机接口单元210从命令控制单元215接收到该用于请求主机装置接收数据的请求,则主机接口单元210发出所接收的该用于请求主机装置接收数据的请求。如果主机接口单元210从主机装置接收到数据接收请求,则主机接口单元210将向命令控制单元215发出所接收的来自主机装置的数据接收请求。如果命令控制单元215通过主机接口单元210而接收到该来自主机装置的数据接收请求,则命令控制单元215向读指令单元260发送所接收的来自主机装置的数据接收请求。如果读指令单元260从命令控制单元215接收到该来自主机装置的数据接收请求,则读指令单元260向缓冲控制单元207发出对读出的数据的提取请求。缓冲控制单元207提取由缓冲存储单元209存储的被指派的数据,并该提供所提取的数据。读指令单元260将所提取的数据传递到命令控制单元215。如果命令控制单元215从读指令单元260接收到将要由主机装置接收的数据,则命令控制单元215将所接收的数据发送到主机接口单元210。主机接口单元210向主机装置发送从命令控制单元215接收的且将要由主机装置接收的该数据。对于通过命令控制单元215分割的读命令,读指令单元260可以如上所述与主机装置逐一地交换数据,或者命令控制单元215或主机接口210可以收集数据并与主机装置一次性地交换数据。在步骤S38中,根据需要,从步骤S34开始重复处理。接下来,将参考图15描述由数据存储装置200执行的压缩处理的序列。图15为示出了由数据存储装置200执行的压缩处理的序列的流程的实例的流程图。数据存储装置200在需要进行压缩处理的时刻或在任何时刻执行压缩处理。可以通过确定在块使用信息中记录的未用块的数目是否小于预定阈值来确定需要压缩处理的时刻。在步骤S41中,压缩单元270向块使用信息控制单元2询问已用块的块号码。块使用信息控制单元2参照由块使用信息存储单元2存储的块使用信息。压缩单元270获取已用块的块号码。压缩单元270向转换表控制单元221询问在所获取的块当中的适合用于压缩目标的块以及对应的块的有效页标志和有效页计数器。适合用于压缩目标的块为其中有效页计数器的值为最小的块。转换表控制单元221参照由转换表存储单元223存储的转换表,提取所获取的块当中的适合用于压缩目标的块,并提供适合用于压缩目标的块的块号码、对应的块的有效页标志和有效页计数器。压缩单元270获取适合用于压缩目标的块、对应的块的有效页标志和有效页计数器。在步骤S42中,压缩单元270调查被选择作为压缩目标的块的有效页计数器的值是否为0。当该值为0时,处理进行到步骤S43。当该值不为0时,处理进行到步骤S44。在步骤S43中,压缩单元270请求块使用信息控制单元2将对应的块登记为未用块。结果,对应的块作为未用块而被收集。块使用信息控制单元2在由块使用信息存储单元2存储的块使用信息中登记该对应的块作为未用块。结果,对应的块作为未用块而被收集。压缩单元270向日志存储单元284通知更新的块使用信息的更新信息。然后,处理返回到步骤S41。在步骤S44中,压缩单元270暂时存储所获取的压缩目标块号码和有效页标志信肩、ο在步骤S45中,对于所获取的有效页标志信息为ON的页,压缩单元270反复执行以下处理。在步骤S46中,压缩单元270向半导体存储介质控制单元203发出对与所获取的压缩目标块号码和有效页标志信息对应的物理地址区(复制源页)的读请求。半导体存储介质控制单元203读出半导体存储介质的该被指派的物理地址区的数据,并提供该数据。当从压缩单元270连续地发出写请求或读请求且所请求的处理被连续地执行、并且从读指令单元260或写指令单元250发出读请求或写请求或者已经发出了读请求或写请求时,半导体存储介质控制单元203不执行下一连续请求的处理,而是根据需要执行由读指令单元260或写指令单元250请求的处理。也就是,半导体存储介质控制单元203根据需要切换处理。如果切换之后的处理完成,则半导体存储介质控制单元203根据需要执行下一连续请求的处理。也就是,半导体存储介质控制单元203根据需要而重新开始被切换的处理。如果压缩单元270接收到读出的数据,则压缩单元270向缓冲控制单元207发出对所接收的数据的存储请求。缓冲控制单元207在缓冲存储单元209中存储被指派的数据。在步骤S47中,压缩单元270向转换表控制单元221询问与所获取的压缩目标块号码和有效页标志信息对应的物理地址区(复制源页)的逆向查找逻辑地址信息。转换表控制单元221参照由转换表存储单元223存储的转换表,并提供与所获取的压缩目标块号码和有效页标志信息对应的物理地址区(复制源页)的逆向查找逻辑地址信息。压缩单元270获取与所获取的压缩目标块号码和有效页标志信息对应的物理地址区(复制源页)的逆向查找逻辑地址信息。在步骤S48中,压缩单元270向压缩日志结构指针控制单元242询问当前的压缩日志结构指针。压缩日志结构指针控制单元242提供由压缩日志结构指针存储单元240存储的压缩日志结构指针。压缩单元270获取与该压缩日志结构指针对应的物理地址区(复制目的地页)的信息。压缩单元270向缓冲控制单元207发出对所存储的数据的提取请求。缓冲控制单元207提取由缓冲存储单元209存储的该被指派的数据,并提供所提取的数据。压缩单元270获取该存储数据。压缩单元270将所提取的数据和与所获取的压缩日志结构指针对应的物理地址区(复制目的地页)的信息发送到半导体存储介质控制单元203,并请求半导体存储介质控制单元203在与所获取的压缩日志结构指针对应的物理地址区(复制目的地页)中写入所提取的数据。当所获取的压缩日志结构指针指示块的首页时,压缩单元270在请求半导体存储介质控制单元203写入数据之前请求半导体存储介质控制单元203执行块擦除处理。然而,执行块擦除处理的时机不受此限制。例如,该时机可以为新分配用于压缩的块的时刻、作为未用块而收集块的时刻,或在作为未用块而收集块之后直到压缩单元270请求半导体存储介质控制单元203写入数据的时间段期间的任意时刻。半导体存储介质控制单元203在半导体存储介质205的被指派的物理地址区中写入被指派的数据。当从压缩单元270连续地发出写请求或读请求且所请求的处理被连续地执行、并且从读指令单元260或写指令单元250发出读请求或写请求或者已经发出了读请求或写请求时,半导体存储介质控制单元203不执行下一连续请求的处理,而是根据需要执行由读指令单元260或写指令单元250请求的处理。也就是,半导体存储介质控制单元203根据需要切换处理。如果切换之后的处理完成,半导体存储介质控制单元203根据需要执行下一连续请求的处理。也就是,半导体存储介质控制单元203根据需要重新开始被切换的处理。在步骤S49中,压缩单元270请求转换表控制单元221在与所获取的压缩日志结构指针对应的物理地址区(复制目的地页)的对应逆向查找表中登记与所获取的压缩目标块号码和有效页标志信息对应的物理地址区(复制源页)的对应逆向查找逻辑地址信息。转换表控制单元221在由转换表存储单元223存储的转换表中的与所获取的压缩日志结构指针对应的物理地址区(复制目的地页)的对应逆向查找表中登记与所获取的压缩目标块号码和有效页标志信息对应的物理地址区(复制源页)的对应逆向查找逻辑地址信息。压缩单元270向日志存储单元284通知更新的转换表的更新信息。在步骤S50中,压缩单元270请求转换表控制单元221执行转换表的排他控制开始处理(锁定处理)。转换表控制单元221执行转换表的排他控制开始处理(锁定处理)。在步骤S51中,压缩单元270使用与所获取的压缩目标块号码和有效页标志信息对应的物理地址区(复制源页)的对应逆向查找逻辑地址信息而向转换表控制单元221发出对正向查找表的参照请求。转换表控制单元221参照由转换表存储单元223存储的转换表,使用与所获取的压缩目标块号码和有效页标志信息对应的物理地址区(复制源页)的对应逆向查找逻辑地址信息而参照该正向查找表,并提供与该逆向查找逻辑地址信息对应的物理地址区的信息。压缩单元270获取与该逆向查找逻辑地址信息对应的物理地址区。在步骤S52中,压缩单元270确定与所获取的逆向查找逻辑地址信息对应的物理地址区和与所获取的压缩目标块号码和有效页标志信息对应的物理地址区(复制源页)是否彼此匹配。如上所述,当在数据的复制处理期间由写指令单元250完成了对与被复制的数据所对应的逻辑地址区相同的逻辑地址区的写处理时,转换表不被更新。当确定所述物理地址区不匹配(步骤S52中的否)时,这意味着,在数据的复制处理期间,由写指令单元250完成了对与被复制的数据所对应的逻辑地址区相同的逻辑地址区的写处理。出于该原因,处理进行到步骤S60,并且不应更新转换表。当确定所述物理地址区彼此匹配(步骤S52中的是)时,这意味着,在数据的复制处理期间,写指令单元250没有执行对与被复制的数据所对应的逻辑地址区相同的逻辑地址区的写处理,或者虽执行但却没有完成该写处理。出于该原因,处理进行到步骤S53并更新转换表。在步骤S53中,压缩单元270请求转换表控制单元221使与所获取的压缩目标块号码和有效页标志信息对应的物理地址区(复制源页)的有效页标志变为OFF。在步骤S54中,压缩单元270请求转换表控制单元221减小与所获取的压缩目标块号码对应的块的有效页计数器。在步骤S56中,如果所获取的压缩目标块的有效页计数器的值变为0(步骤S55中的是),则压缩单元270请求块使用信息控制单元2将对应的块登记为未用块。结果,该对应的块被收集作为未用块。如果所获取的压缩目标块的有效页计数器的值变为0(步骤S55中的是),块使用信息控制单元2在由块使用信息存储单元2存储的块使用信息中登记该对应的块作为未用块,并收集该对应的块作为未用块。当对应的块被作为未用块而被收集时,压缩单元270向日志存储单元284通知更新的块使用信息的更新信息。在步骤S57中,压缩单元270请求转换表控制单元221使与所获取的压缩日志结构指针对应的物理地址区(复制目的地页)的对应有效页标志变为ON。在步骤S58中,压缩单元270请求转换表控制单元221增加与所获取的压缩日志结构指针对应的块的有效页计数器。在步骤S59中,压缩单元270请求转换表控制单元221将由与所获取的压缩目标块号码和有效页标志信息对应的物理地址区(复制源页)的对应逆向查找逻辑地址所指示出的正向查找表的条目更新为指示与压缩日志结构指针对应的物理地址区(复制目的地页)的信息。转换表控制单元221根据指令而更新由转换表存储单元223存储的转换表。压缩单元270向日志存储单元284通知更新的转换表的更新信息。在步骤S60中,压缩单元270请求转换表控制单元221执行转换表的排他控制结束处理(锁定解除处理)。转换表控制单元221执行转换表的排他控制结束处理(锁定解除处理)。在步骤S61中,压缩单元270请求压缩日志结构指针控制单元242更新压缩日志结构指针以指示下一页。压缩日志结构指针控制单元242更新压缩日志结构指针以指示下一页。压缩单元270向日志存储单元284通知更新的压缩日志结构指针的更新信息。在步骤S62中,压缩单元270向压缩日志结构指针控制单元242询问更新的压缩日志结构指针是否超过块的末页。压缩日志结构指针控制单元242调查更新的压缩日志结构指针是否超过块的末页,并提供调查结果。如果压缩单元270接收到指示出更新的压缩日志结构指针超过块的末页的答复,则处理进行到步骤S63。否则,处理进行到步骤S64。在步骤S63中,压缩单元270请求块使用信息控制单元2执行对未用块的分配处理。结果,块使用信息被更新。块使用信息控制单元2从由块使用信息存储单元228存储的块使用信息选择未用块,分配该未用块,并更新块使用信息。压缩单元270请求压缩日志结构指针控制单元242更新压缩日志结构指针以指示新分配的块的首部的页。压缩日志结构指针控制单元242更新由压缩日志结构指针存储单元240存储的压缩日志结构指针以指示新分配的块的首部的页。压缩单元270向日志存储单元284通知更新的压缩日志结构指针的更新信息和更新的块使用信息的更新信息。在步骤S64中,压缩单元270请求日志存储单元284提交向日志存储单元284通知的更新信息。日志存储单元284从压缩单元270接收提交通知,并请求半导体存储介质控制单元203存储该暂时存储的更新信息。半导体存储介质控制单元203记录该暂时存储的更新信息作为日志。如果不能在之前识别出其中记录了日志的半导体存储介质205的物理地址,则在向数据存储装置200供电时,管理信息不能被恢复。出于该原因,使其中记录了日志的半导体存储介质205的物理地址指示半导体存储介质205的预定区域或指示这样的区域,可通过在半导体存储介质205的该预定区域中记录的信息而跟踪该区域。在步骤S65中,根据需要,从步骤S45开始重复处理。接下来,将参考图16描述由数据存储装置200执行的快照记录处理的序列。图16为示出了由数据存储装置200执行的快照记录处理的序列的流程的实例的流程图。数据存储装置200在预定时刻或任意时刻执行该快照存储处理。在步骤S71中,快照存储单元282请求日志存储单元284存储指示出快照记录开始的信息的日志。由此,可以识别出快照与日志的记录时间的次序关系。日志存储单元观4请求半导体存储介质控制单元203存储指示出快照记录开始的信息。如果不能预先识别出其中记录了日志的半导体存储介质205的物理地址,则在向数据存储装置200供电时,管理信息不能被恢复。出于该原因,使其中记录了日志的半导体存储介质205的物理地址指示半导体存储介质205的预定区域或指示这样的区域,可通过在半导体存储介质205的该预定区域中记录的信息而跟踪该区域。在步骤S72中,快照存储单元282请求转换表控制单元221提取转换表并获取该转换表。快照存储单元282请求主机写日志结构指针控制单元232提取主机写日志结构指针,并获取主机写日志结构指针。快照存储单元282请求压缩日志结构指针控制单元242提取压缩日志结构指针,并获取压缩日志结构指针。快照存储单元282请求块使用信息控制单元2提取块使用信息,并获取块使用信息。转换表控制单元221提取由转换表存储单元223存储的转换表,并提供该转换表。主机写日志结构指针控制单元232提取由主机写日志结构指针存储单元230存储的主机写日志结构指针,并提供该主机写日志结构指针。压缩日志结构指针控制单元242提取由压缩日志结构指针存储单元240存储的压缩日志结构指针,并提供该压缩日志结构指针。块使用信息控制单元2提取由块使用信息存储单元228存储的块使用信息,并提供该块使用信息。在步骤S73中,快照存储单元282请求半导体存储介质控制单元203存储所获取的转换表、所获取的主机写日志结构指针、所获取的压缩日志结构指针以及所获取的块使用信息,并记录快照。半导体存储介质控制单元203记录所获取的转换表、所获取的主机写日志结构指针、所获取的压缩日志结构指针以及所获取的块使用信息作为快照。如果不能预先识别出其中记录了快照或日志的半导体存储介质205的物理地址,则在向数据存储装置200供电时,管理信息不能被恢复。出于该原因,使其中记录了快照或日志的半导体存储介质205的物理地址指示半导体存储介质205的预定区域或指示这样的区域,可通过在半导体存储介质205的该预定区域中记录的信息而跟踪该区域。在步骤S74中,快照存储单元282请求日志存储单元284存储指示出快照记录结束的信息的日志。由此,可以识别出快照和日志的记录时间的次序关系。日志存储单元观4请求半导体存储介质控制单元203存储指示出快照记录结束的信息。半导体存储介质控制单元203记录该指示出快照记录结束的信息作为日志。如果不能预先识别出其中记录了日志的半导体存储介质205的物理地址,则在向数据存储装置200供电时,管理信息不能被恢复。出于该原因,其中记录了日志的半导体存储介质205的物理地址被记录在半导体存储介质205的预定区域中或被记录在可通过在半导体存储介质205的该预定区域中记录的信息而跟踪的区域中。由日志存储单元284按日志提交处理请求的接收次序以时间序列排列日志存储单元284通过半导体存储介质控制单元203而存储的日志,如图12所示。在该情况下,因为在快照记录开始之前的日志(图12中示出的实例中的日志1和2)和先前记录的快照在管理信息恢复处理中变得不必要,日志存储单元284将在快照记录开始之前的日志和先前记录的快照释放为新的数据存储区。接下来,将参考图17描述由数据存储装置200执行的管理信息恢复处理的序列。图17为示出了由数据存储装置200执行的管理信息恢复处理的序列的流程的实例的流程图。数据存储装置200在数据存储装置200被供电时恢复管理信息。在需要恢复管理信息的时刻,甚至在除了对数据存储装置200供电时之外的情况下,数据存储装置200恢复管理信息。例如,当检测到在DRAMM中存储的管理信息的数据被破坏时,数据存储装置200可执行管理信息恢复处理。在步骤S81中,管理信息恢复单元290请求快照恢复单元292恢复最新的快照。如果快照恢复单元292从管理信息恢复单元290接收到对最新的快照的恢复请求,快照恢复单元四2向半导体存储介质控制单元203发出对最新的快照的提取请求。半导体存储介质控制单元203从半导体存储介质205读出所请求的数据,并提供该读出的数据。快照恢复单元292接收该最新的快照。快照恢复单元292从所接收的快照提取转换表,并请求转换表控制单元221存储所提取的转换表。转换表控制单元221在转换表存储单元223中存储所提取的转换表。快照恢复单元292从所接收的快照提取主机写日志结构指针,并请求主机写日志结构指针控制单元232存储所提取的主机写日志结构指针。主机写日志结构指针控制单元232在主机写日志结构指针存储单元230中存储所提取的主机写日志结构指针。快照恢复单元292从所接收的快照提取压缩日志结构指针,并请求压缩日志结构指针控制单元242存储所提取的压缩日志结构指针。压缩日志结构指针控制单元242在压缩日志结构指针存储单元240中存储所提取的压缩日志结构指针。快照恢复单元292从所接收的快照提取块使用信息,并请求块使用信息控制单元2存储所提取的块使用信息。块使用信息控制单元2在块使用信息存储单元228中存储所提取的块使用信息。在步骤S82到S84中,管理信息恢复单元290请求日志恢复单元294从在存储最新的快照之后存储的日志恢复管理信息。如果日志恢复单元294从管理信息恢复单元290接收到从在存储最新的快照之后存储的日志恢复管理信息的请求,日志恢复单元四4向半导体存储介质控制单元203发出对在存储最新的快照之后存储的日志的提取请求。半导体存储介质控制单元203从半导体存储介质205读出所请求的数据,并提供该读出的数据。日志恢复单元294接收在存储最新的快照之后存储的日志。日志恢复单元294按记录顺序从所接收的日志提取日志,并请求转换表控制单元221、主机写日志结构指针控制单元232、压缩日志结构指针控制单元242或块使用信息控制单元2反映在日志中记录的各种信息的更新信息。转换表控制单元221、主机写日志结构指针控制单元232、压缩日志结构指针控制单元242或块使用信息控制单元2在由转换表存储单元223存储的转换表上、在由主机写日志结构指针存储单元230存储的主机写日志结构指针上、在由压缩日志结构指针存储单元240存储的压缩日志结构指针上、或在由块使用信息存储单元2存储的块使用信息上反映在日志中记录的各种信息的更新信息。接下来,将描述根据第二实施例的数据存储装置200的有益效果。在压缩处理中,作为压缩处理的结果,成为压缩源的块被收集作为未用块。因此,优选地,通过压缩而复制的页的数目是小的。出于该原因,当检测到压缩目标块时,优选选择有效页的数目尽可能小的块。然而,为了改善效率,被检测作为压缩目标块的块的有效页的数目需要通过使用地址局域性而减小。在对数据存储装置的存取模式中,通常存在地址局域性。如果存在地址局域性,则更新频率高的数据容易被新的写入所无效,而更新频率低的数据很少被新的写入所无效。出于该原因,从主机装置请求写入的数据为具有高更新频率的数据,而被压缩的数据为直到块被压缩为止没有被更新的数据。因此,被压缩的数据是具有低更新频率的数据。在根据第二实施例的数据存储装置200中,因为使用了其中主机写日志结构指针和压缩日志结构指针被分别地(individually)提供的配置,因而可以分别地收集具有高更新频率的数据和具有低更新频率的数据。如果收集了具有高更新频率且易被无效的数据,则会减小对应的块的有效页的数目的期望值。由于在根据第二实施例的数据存储装置200中的有效页的总数目是恒定的,如果收集了具有低更新频率且很少被无效的数据,则对应块的有效页的数目的期望值增加。结果,可以减小其它块的有效页的数目的期望值。同时,在其中不存在地址局域性的随机写时,即使在使用或不使用其中主机写日志结构指针和压缩日志结构指针被分别地提供的配置时,被检测为压缩目标块的块的有效页的数目的期望值是相同的。出于该原因,如第二实施例,即使使用了其中主机写日志结构指针和压缩日志结构指针被分别地提供的配置,随机写的性能也没有被劣化。如上所述,在第二实施例中,可以通过使用存取模式的地址区域性来减小将被压缩的块的有效页的数目的期望值。结果,与没有使用其中主机写日志结构指针和压缩日志结构指针被分别地提供的配置的情况相比,可以使数据存储装置中被实际写入和读出的数据的尺寸小于从主机装置请求写入的数据的尺寸。因此,可以获得高写入性能和长设计寿命的数据存储装置。在通常状态下,压缩总是被执行。因此,当不使用其中主机写日志结构指针和压缩日志结构指针被分别地提供的配置时,在作为压缩处理执行的结果而产生的新的写区域中写入由主机装置请求写入的数据。此时,如果(连续的)压缩写入没有完成,则不能写入从主机装置请求写入的数据。出于该原因,(连续的)压缩写入妨碍了来自主机装置的写请求,因此不能向主机装置提供稳定的写性能。相反地,在第二实施例中,使用了其中主机写日志结构指针和压缩日志结构指针被分别地提供的配置,因此主机写处理和压缩处理被分别地执行。此外,在半导体存储介质控制单元203中,可以根据需要将从写指令单元250到半导体存储介质205的写请求或读请求的处理切换到从压缩单元270到半导体存储介质205的写请求或读请求的处理。因此,根据第二实施例,可以根据需要而以页为单位切换主机写和压缩写,并且来自主机的写请求不会受到压缩写的妨碍。结果,可以为主机装置提供稳定的写性能。如在第二实施例中,如果使用了其中主机写日志结构指针和压缩日志结构指针被分别地提供的配置,则可以由来自主机装置的操作容易地按逻辑地址次序排列记录在数据存储装置200中的数据。具体而言,可以从主机装置发出对由数据存储装置200提供的逻辑地址区的全面顺序写请求(full-scalesequentialwriterequest),并且可以按逻辑地址的次序排列记录在数据存储装置中的数据。下文中,将参考图18描述该配置。如果从主机装置发出对由数据存储装置200提供的逻辑地址区的全面顺序写请求,则在执行全面顺序写请求期间数据被写入的逻辑地址中,在执行执行全面顺序写请求期间不会再次写入数据。现在,考虑这样的块,该块已经是用于主机写的日志结构块,在全面顺序写入的执行开始的时间点之后完成了对该块的追加。该块现在被管理为已用块。这样的块的页没有被无效。也就是,不将这样的块选择作为压缩目标块,该块已经是用于主机写的日志结构块,在全面顺序写入的执行开始的时间点之后完成了对该块的追加,并且该块被管理为已用块。同时,在全面顺序写入开始的时间点处已经被管理为已用块的块的有效页是全面顺序写入尚未被写入的逻辑地址的数据。同样,这样的块的有效页是全面顺序写入尚未被写入的逻辑地址的数据,该块已经是用于压缩的日志结构块,在全面顺序写入的执行开始的时间点之后完成了对其的追加,并且该块被管理为已用块。因此,在将来通过全面顺序写入而使各页无效。如上所述,一个接一个地使在全面顺序写入开始的时间点处已经被管理为已用块的块的有效页以及这样的块的有效页无效,该块已经是用于压缩的日志结构块,并在全面顺序写入的执行开始的时间点之后完成了对该块的追加以被管理为已用块。被选择作为压缩目标块的块是在全面顺序写入开始的时间点处已经被管理为已用块的块,或者是这样的块,该块已经是用于压缩的日志结构块并且在全面顺序写入的执行开始的时间点之后完成了对其的追加以被管理为已用块。如果完成了该全面顺序写入,则按逻辑地址的次序排列记录在数据存储装置200中的数据。相反地,如果没有使用其中主机写日志结构指针和压缩日志结构指针被分别地提供的配置,则指示出在逻辑地址上的不一致值的被压缩的数据以及指示出在逻辑地址上的一致值并由主机装置请求写入的数据总是被混合在一个块中。因此,难以完美地排列按逻辑地址次序写入的数据。如上所述,在完美地排列按逻辑地址次序写入数据并且由主机装置发送顺序写请求且在根据该写请求的数据写入中使用一个块的状态下,在物理地址上连续的数据被一个块无效。因此,如果在按逻辑地址次序排列数据的处理之后从主机装置发出顺序写请求,则不需要执行基于压缩的复制处理。在日志结构方法中,由于需要预先确保压缩目的地的块,因此数据储存装置200使用通过从安装在数据存储装置200中的存储介质的总容量减去预定容量的裕量容量(margincapacity)而获得的容量作为向主机装置提供的标称容量(declaredcapacity)。在完美地排列按逻辑地址次序写入的数据的状态下,用有效页填充对应于该标称容量的所有块,并且对应于裕量容量的所有块变为空的。出于该原因,即使在按逻辑地址次序排列数据的处理之后从主机装置发出随机写请求时,也不产生基于压缩的复制处理,直到写数据量变成至少与裕量容量对应的写数据量为止。而如果执行了基于压缩的复制处理,则从主机装置请求写入的数据的写性能要更劣于对于存储介质的数据写性能。由于以通常状态执行基于压缩的复制处理,因此当该状态变为通常状态时,从主机装置请求写入的数据的写入性能要更加劣于对于存储介质的数据写性能。如上所述,在按逻辑地址次序排列数据的处理之后,不产生基于压缩的复制处理,直到写数据量变为至少与裕量容量对应的写数据量为止。出于该原因,直到写数据量变为至少与裕量容量对应的写数据量为止,从主机装置请求写入的数据的写性能变为对于存储介质的写性能。因此,使用其中主机写日志结构指针和压缩日志结构指针被分别地提供的配置,可以容易地获得这样的状态,其中,从主机装置请求写入的数据的写性能变为对于存储介质的数据写性能。在上述描述中,通过从主机装置发出对由数据存储装置提供的逻辑地址区的全面顺序写请求而实现按逻辑地址次序排列数据的处理。然而,可以在数据存储装置中并入这样的机构,该机构执行按逻辑地址次序排列数据的处理。第三实施例如上所述,在使用具有约束(例如,对于尚未被写入数据的数据被擦除的块的页,可以以页为单位依次写入数据,但对于已经写入了数据的页,不能进行数据的重写)的存储介质的数据存储装置中,还需要以页为单位写入与管理信息的更新信息对应的日志。并且在第二实施例中,可以进行对管理信息的存储和恢复处理。然而,当像第二实施例一样将数据管理单位设定为页尺寸时,则每当从主机装置请求写入时或每当通过压缩写入而写入了对应于一个页的数据时都要更新管理信息。出于该原因,每当从主机装置请求写入时或每当通过压缩写入而写入了对应于一个页的数据时,需要在一个页中写入日志。这意味着,仅实现了对于存储介质的数据的写性能的一半,并且意味着通过存储介质的寿命计算的数据存储装置的设计寿命变为1/2。因此,在第三实施例中,将描述其中减小了日志记录次数的实例。在下面的描述中,主要描述第二实施例与第三实施例之间的差别,因此通过与第二实施例相同的参考标号来表示具有与第二实施例相同的功能的部件,并不再重复对其的描述。首先,将描述根据第三实施例的数据存储装置的配置。图19为示出了根据第三实施例的数据存储装置300的详细功能配置的实例的框图。在根据第三实施例的数据存储装置300中,转换表存储单元323、块使用信息控制单元326、写指令单元350、压缩单元370以及日志恢复单元394与根据第二实施例的数据存储装置200的情况不同。下文中,将描述各单元的差别。转换表存储单元323存储转换表。根据第三实施例的转换表包括正向查找表、有效页标志以及有效页计数器,但不包括逆向查找表。图20示出了有效页标志和有效页计数器的数据配置的实例。如图20所示,有效页标志和有效页计数器使用块号码作为索引并包括作为条目的块号码、有效页计数器以及有效页标志组。有效页标志组按设置在块中的页的顺序排列,并可指定有效页标志的页。同一块的有效页计数器的值和有效页标志的真值的总数目彼此匹配。在同一块中,成为索引的块号码和成为正向查找表的条目的块号码被指派为具有同一号码。该正向查找表与根据第二实施例的转换表存储单元223所包括的正向查找表相同。如上所述,根据第三实施例的转换表存储单元323不包括逆向查找表,这与根据第二实施例的转换表存储单元223不同。因此,在第三实施例中,可以减小管理信息的存储器使用量。当可以减小管理信息的存储器使用量时,这意味着,将被存储为快照的容量减小。结果,可以减小存储快照所需的处理时间,可以增加对半导体存储介质205的写入量,并可以增加数据存储装置300的设计寿命。如果块使用信息控制单元3从写指令单元350接收到对未用块的分配请求,则块使用信息控制单元3挂起(suspend)写指令单元350的处理,直到从压缩单元370完全接收了对未用块的分配请求。同样,如果块使用信息控制单元3从压缩单元370接收对未用块的分配请求,则块使用信息控制单元3挂起压缩单元370的处理,直到从写指令单元350完全接收了对未用块的分配请求。如果块使用信息控制单元3从写指令单元350和压缩单元370二者完全接收了对未用块的分配请求,并且在对应时间点处来自主机装置的写入量为1且在数据存储装置300中将被处理的压缩的写入量为N(N为等于或大于0的整数),则块使用信息控制单元326将一个未用块分配给写指令单元350并将N个未用块分配给压缩单元370。块使用信息控制单元3可以从包括在由块使用信息存储单元2存储的块使用信息中的已用块的数目的信息或者未用块的数目的信息来确定N的值。考虑这样的情况,当在对应的时间点处来自主机装置的写入量为1时,N的值被设定为大于在数据存储装置300中将被处理的压缩的写入量。当来自主机装置的写请求的载荷不大时,首先执行压缩处理,并减小要在将来执行的压缩处理的量。由此,可以改善当来自主机装置的写请求的载荷在将来增加时的响应性。块使用信息控制单元3根据分配的内容而更新由块使用信息存储单元2存储的块使用信息。块使用信息控制单元3重新开始写指令单元350和压缩单元370二者的被挂起的处理。接下来,将参考图21到25描述根据来自主机装置的主机写请求的压缩处理和写处理。首先,如图21所示,块使用信息控制单元3将块D分配给写指令单元350并将块A、B和C分配给压缩单元370。压缩单元370通过压缩处理写入数据的页次序变为块A、B以及C的次序。如果块使用信息控制单元3重新开始写指令单元350和压缩单元370二者的被挂起的处理,如图22所示,根据用于主机写的日志结构指针和用于压缩的日志结构指针而追加压缩目标数据和来自主机装置的写目标数据。如图23或M所示,即使当日志结构指针中的一个到达被分配的块的末端时,该处理也被挂起,直到其它日志结构指针到达被分配的块的末端,并且不分配新块。如上所述,当在对应时间点处来自主机装置的写入量为1且在数据存储装置300中将被处理的压缩的写入量为N(N为等于或大于0的整数)时,块使用信息控制单元3将一个未用块分配给写指令单元350且将N个未用块分配给压缩单元370。这是为了确保在对应时间点处所需的压缩量,并为了尽可能地避免即使当一个日志结构指针到达被分配的块的末端时处理也被挂起直到其它日志结构指针到达被分配的块的末端为止,如图23或24所示。如图25所示,如果这两个日志结构指针均到达被分配的块的末端,则块使用信息控制单元3将新块分配给写指令单元350和压缩单元370,并重新开始写指令单元350和压缩单元370的被挂起的处理,并且状态变为图21所示的状态。下文中,将从一块的分配到下一块的分配所需的时间称为“期限(term)”。在来自主机装置的存取模式中存在地址局域性的情况下,当在对应时间点处来自主机装置的写入量为1时,在数据处理装置300中将被处理的压缩量显著减小。然而,在该情况下,在上述块分配的规则中,如图沈所示,适当地切换其中分配了用于压缩的一个日志结构块的期限(期限2和6)与其中不分配用于压缩的日志结构块的期限(期限1、3、4、5)。重新参考图19,块使用信息控制单元326向日志存储单元284通知关于被分配的(N+1)个块的块分配信息。按该分配信息的顺序,被分配到压缩单元370的块在时间上先于被分配到写指令单元350的块。当多个块被分配给压缩单元370时,该分配信息的顺序变为压缩单元370所使用的块的顺序。例如,在如图21到25所示分配块的情况下的该分配信息的顺序变为块A、块B、块C和块D的顺序。在如图沈所示分配块的情况下的该分配信息的顺序变为期限1中的块A、期限2中的块B和块C、期限3中的块D、期限4中的块EjJ限5中的块F以及期限6中的块G和块H的顺序。块使用信息控制单元3请求日志存储单元284提交向日志存储单元284通知的信息。写指令单元350向缓冲控制单元207发出对所存储的对应于管理尺寸的数据的提取请求,将所提取的数据和与所获取的主机写日志结构指针对应的物理地址区信息发送到半导体存储介质控制单元203,并请求半导体存储介质控制单元203在与所获取的主机写日志结构指针对应的物理地址区中写入所提取的数据。当所获取的主机写日志结构指针指示块的首页时,写指令单元350在请求半导体存储介质控制单元203写入数据之前请求半导体存储介质控制单元203执行块擦除处理。然而,块擦除处理的执行时机并不受此限制。例如,执行时机可以是新分配用于主机写入的块的时刻、作为未用块而收集块的时刻,或者在作为未用块而收集块之后直到写指令单元250请求半导体存储介质控制单元203写入数据的时间段期间的任意时刻。在半导体存储介质205的页中,除了用于记录用户数据的区域之外,通常还提供冗余区。例如,冗余区用于记录关于用户数据的错误校正码的数据。在日志记录次数被减小的第三实施例中,在冗余区中记录错误校正码的数据以及对应页的逆向查找逻辑地址以减小日志记录次数。也就是,如图27所示,对于在页中记录的数据,用户数据被记录在用于记录用户数据的区域中,而对应页的逆向查找逻辑地址和错误校正码的数据被记录在冗余区中。所记录的逆向查找逻辑地址为包括写命令的区域的管理尺寸区的首部的逻辑地址(图11中示出的实例中的逻辑地址0)。在转换表的排他控制期间,写指令单元350更新转换表以指示新写入的数据。具体而言,在接收写命令之前,写指令单元350向转换表控制单元221询问与包括该写命令的区域的管理尺寸区域的首部的逻辑地址(在图11示出的实例中,逻辑地址0)对应的物理地址(更新前物理地址)。写指令单元350请求转换表控制单元使与所获取的更新前的物理地址对应的有效页标志变为OFF。写指令单元350请求转换表控制单元221减小与所获取的更新前的物理地址对应的块的有效页计数器。写指令单元350请求转换表控制单元221使与所获取的主机写日志结构指针对应的有效页标志变为ON。写指令单元350请求转换表控制单元221增加与所获取的主机写日志结构指针对应的块的有效页计数器。写指令单元350请求转换表控制单元221更新正向查找表的包括该写命令的区域的管理尺寸区域的首部的逻辑地址(在图11示出的实例中,逻辑地址0)以指示与主机写日志结构指针对应的物理地址区的信息。与根据第二实施例的写指令单元250相比,根据第三实施例的写指令单元350不向日志存储单元284通知转换表的更新信息。这是因为,在恢复管理信息(将在下面描述)时,可以基于在页中记录的逆向查找逻辑地址而存储恢复转换表的更新信息。在根据第二实施例的写指令单元250中,每当写入一页的用户数据时记录转换表的更新信息的日志。然而,在根据第三实施例的写指令单元350中,每当写入一页的用户数据时不需要记录更新信息的日志,并且可以极大地减小日志记录次数。写指令单元350请求主机写日志结构指针控制单元232更新主机写日志结构指针以指示下一页。写指令单元350向主机写日志结构指针控制单元232询问更新的主机写日志结构指针是否超过该块的末页。如果写指令单元350接收到指示出更新的主机写日志结构指针超过块的末页的答复,则写指令单元350向日志存储单元284通知对应的块的追加完成信息(addcompletioninformation),并请求日志存储单元284提交所通知的信息。为了减小下面描述的恢复处理时间,可存储在分配块之后直到完成追加为止被追加在块中的所有页的逆向查找逻辑地址,并且在对应块的追加写入结束日志中可包括被追加在对应的块中的页的逆向查找逻辑地址。如果写指令单元350接收到指示出更新的主机写日志结构指针超过块的末页的答复,则写指令单元350请求块使用信息控制单元3执行对未用块的分配处理。结果,块使用信息被更新。写指令单元350请求主机写日志结构指针控制单元232更新主机写日志结构指针以指示新分配的块的首部的页。与根据第二实施例的写指令单元250相比,根据第三实施例的写指令单元350不向日志存储单元284通知主机写日志结构指针的更新信息。在第三实施例中,通过块使用信息控制单元3通知由根据第二实施例的写指令单元250所通知的块使用信息的更新信息。这是因为,在恢复管理信息(将在下面描述)时,当可以基于在页中记录的逆向查找逻辑地址来恢复转换表时,可以恢复主机写日志结构指针。在根据第二实施例的写指令单元250中,每当写入一页的用户数据时记录主机写日志结构指针的更新信息的日志。然而,在根据第三实施例的写指令单元350中,每当写入一页的用户数据时不需要记录更新信息的日志,并且可以极大地减小日志记录次数。压缩单元370向转换表控制单元221询问所获取的块当中的适合用于压缩目标的块,并获取适合用于压缩目标的块的块号码以及对应块的有效页标志和有效页计数器。适合用于压缩目标的块是其中有效页计数器的值最小的块。在该情况下,当选择其中有效页计数器的值为0的块作为压缩目标时,压缩单元370请求块使用信息控制单元3将对应的块登记为未用块。结果,对应的块被收集作为未用块。当对应的块被收集作为未用块时,压缩单元370向日志存储单元284通知更新的块使用信息的更新信息。此外,压缩单元370请求日志存储单元284提交向日志存储单元284通知的信息。压缩单元370向半导体存储介质控制单元203发出对与所获取的压缩目标块号码和有效页标志信息对应的物理地址区(复制源页)的读取请求。如果压缩单元370接收到所读出的数据,则压缩单元370向缓冲控制单元207发出对所接收的数据的存储请求。在所接收的数据中,如图27所示,用户数据被记录在用于记录用户数据的区域中,并且对应页的逆向查找逻辑地址和错误校正码的数据被记录在冗余区中。压缩单元370提取在所读出的数据的冗余区中记录的逆向查找逻辑地址并暂时存储该逆向查找逻辑地址。压缩单元370向缓冲控制单元207发出对所存储的数据的提取请求,向半导体存储介质控制单元203发送所提取的数据和与所获取的压缩日志结构指针对应的物理地址区(复制目的地页)的信息,并请求半导体存储介质控制单元203在与所获取的压缩日志结构指针对应的物理地址区(复制目的地页)中写入所提取的数据。当所获取的压缩日志结构指针指示该块的首页时,压缩单元307在请求半导体存储介质控制单元203写入数据之前请求半导体存储介质控制单元203执行块擦除处理。然而,执行块擦除处理的时机不受此限制。例如,该时机可以为新分配用于压缩的块的时刻、作为未用块而收集块的时刻,或在作为未用块而收集块之后直到压缩单元307请求半导体存储介质控制单元203写入数据的时间段期间的任意时刻。如图27所示,因为在页中存储的数据为在缓冲存储单元209中存储的数据,用户数据被记录在用于记录用户数据的区域中,而对应页的逆向查找逻辑地址和错误校正码的数据被记录在冗余区中。逆向查找表仅当在页中写入数据时被新写入,此后不被更新,并仅在压缩时被参照。因此,在根据来自主机的写请求而在页中写入数据时可以同时写入逆向查找表,并且在读取被压缩的数据时可以同时读取该逆向查找表。结果,没有另外导致惩罚。在转换表的排他控制期间,压缩单元370更新转换表以指示压缩目的地的数据。然而,如上所述,当在数据的复制处理期间通过写指令单元350完成了对与被复制的数据对应的逻辑地址区相同的逻辑地址区的写处理时,压缩单元应该不更新转换表。具体而言,压缩单元370使用暂时存储的逆向查找逻辑地址信息而向转换表控制单元221发出对正向查找表的参照请求,并获取对应于暂时存储的逆向查找逻辑地址信息的物理地址。压缩单元370确定对应于暂时存储的逆向查找逻辑地址信息的物理地址与所获取的压缩目标块号码和有效页标志信息所对应的物理地址区(复制源页)是否彼此匹配。当确定该物理地址和物理地址区不彼此匹配时,这意味着,在数据的复制处理期间,写指令单元350完成了对与被复制的数据所对应的逻辑地址区相同的逻辑地址区的写处理。出于该原因,压缩单元370结束在转换表的排他控制期间的处理且不更新转换表。当确定该物理地址和物理地址区彼此匹配时,这意味着,在数据的复制处理期间,写指令单元250没有执行对与被复制的数据所对应的逻辑地址区相同的逻辑地址区的写处理,或者执行但却没有完成该写处理。出于该原因,压缩单元370更新转换表。具体而言,压缩单元370请求转换表控制单元221使与所获取的压缩目标块号码和有效页标志信息对应的物理地址区(复制源页)的有效页标志变为OFF。压缩单元370请求转换表控制单元221减小与所获取的压缩目标块号码对应的块的有效页计数器。压缩单元370请求转换表控制单元221使与所获取的压缩日志结构指针对应的物理地址区(复制目的地页)的对应有效页标志变为ON。压缩单元370请求转换表控制单元221增加与所获取的压缩日志结构指针对应的块的有效页计数器。压缩单元370请求转换表控制单元221更新由与所获取的压缩目标块号码和有效页标志信息对应的物理地址区(复制源页)的对应逆向查找逻辑地址指示的正向查找表的条目以指示与压缩日志结构指针对应的物理地址区(复制目的地页)的信息。与根据第二实施例的压缩单元270相反,根据第三实施例的压缩单元370不向日志存储单元284通知转换表的更新信息。这是因为,在恢复管理信息(将在下面描述)时,可以基于在页中记录的逆向查找逻辑地址来恢复转换表的更新信息。在根据第二实施例的压缩单元270中,每当写入一页的用户数据时记录转换表的更新信息的日志。然而,在根据第三实施例的压缩单元370中,每当写入一页的用户数据时不需要记录更新信息的日志,可以极大地减小日志记录次数。如果所获取的压缩目标块的有效页计数器的值变为0,则压缩单元370请求块使用信息控制单元3将对应的块登记为未用块。结果,作为未用块而收集该对应的块。当该对应的块作为未用块而被收集时,压缩单元370向日志存储单元284通知更新的块使用信息的更新信息,并请求日志存储单元284提交向日志存储单元284通知的信息。压缩单元370请求压缩日志结构指针控制单元242更新压缩日志结构指针以指示下一页。压缩单元270向压缩日志结构指针控制单元242询问更新的压缩日志结构指针是否超过块的末页。如果压缩单元370接收到指示出更新的压缩日志结构指针超过该块的末页的答复,则压缩单元370向日志存储单元284通知对应的块的追加完成信息,并请求日志存储单元284提交向日志存储单元284通知的该信息。为了缩短恢复处理时间(将在下面描述),可以存储在分配块之后直到完成追加写入为止在块中追加的所有页的逆向查找逻辑地址,并且在对应的块中追加的页的逆向查找逻辑地址可被包括在对应的块的追加写入结束日志中。如果压缩单元370接收到指示出更新的压缩日志结构指针超过块的末页的答复,压缩单元370请求压缩日志结构指针控制单元242更新压缩日志结构指针以指示从块使用信息控制单元3分配的下一块的首部的页。当压缩单元370接收到指示出更新的压缩日志结构指针超过块的末页的答复并使用从块使用信息控制单元3分配的所有块时,压缩单元370请求块使用信息控制单元3执行对未用块的分配处理。结果,块使用信息被更新。压缩单元370请求压缩日志结构指针控制单元242更新压缩日志结构指针以指示新分配的块的首部的页。与根据第二实施例的压缩单元270相反,根据第三实施例的压缩单元370不向日志存储单元284通知压缩日志结构指针的更新信息。在第三实施例中,通过块使用信息控制单元3通知由压缩单元270所通知的块使用信息的更新信息。这是因为,在恢复管理信息(将在下面描述)时,可以基于在页中记录的逆向查找逻辑地址而恢复转换表的更新信息。在根据第二实施例的压缩单元270中,每当写入一页的用户数据时记录压缩日志结构指针的更新信息的日志。然而,在根据第三实施例的压缩单元370中,每当写入一页的用户数据时不需要记录更新信息的日志,可以极大地减小日志记录次数。如果日志恢复单元394从管理信息恢复单元290接收到从在存储最新的快照之后存储的日志恢复管理信息的请求,日志恢复单元394向半导体存储介质控制单元203发出对在存储最新的快照之后存储的日志的提取请求,并接收在存储最新的快照之后存储的日志。在该日志中,记录新分配的块的信息、块的追加完成信息以及被收集为未用块的块的信息中的任何信息。在该情况下,在新分配的块的信息中,以由压缩单元370使用的块的顺序来排列用于压缩追加的一个或多个块的信息,并且随后是由写指令单元350所使用的用于主机追加的块的信息。只要在某个(certain)期限中分配的所有块的追加没有完成,则该期限不进行到下一期限。由此,通过以记录顺序跟踪日志,可以确认,在记录了在某个期限中分配的所有块的追加完成信息的状态下,记录下一期限的块分配的日志,并调查日志的有效性。日志恢复单元394根据分配的块的信息而依次提取块号码。日志恢复单元394向半导体存储介质控制单元203发出对所提取的块号码的块从首部的页开始依次读取页的请求。日志恢复单元394从半导体存储介质控制单元203接收所读出的页的数据,并从所接收的数据提取逆向查找逻辑地址。基于所提取的逆向查找逻辑地址信息,日志恢复单元394使转换表的所提取的逆向查找逻辑地址的条目指示所读出的页。具体而言,在读取该页之前,日志恢复单元394向转换表控制单元221询问与所提取的逆向查找逻辑地址对应的物理地址(更新前的物理地址)。日志恢复单元394请求转换表控制单元221使与所获取的更新前的物理地址对应的有效页标志变为OFF。日志恢复单元394请求转换表控制单元221减小与所获取的更新前的物理地址对应的有效页计数器。日志恢复单元394请求转换表控制单元221使与所读出的页对应的有效页标志变为ON。日志恢复单元394请求转换表控制单元221增加与所读出的页对应的块的有效页计数器。日志恢复单元394请求转换表控制单元221更新正向查找表的所提取的逆向查找逻辑地址以指示与所读出的页对应的物理地址区信息。对于没有完成追加的块,在上述处理期间读出未被记录的页。考虑这样的情况,其中,包括如图27所示的冗余区的数据的被擦除的页的数据的所有位具有例如1的值。例如,如果确定是否所有位的值变为1,可以识别出所读出的页是未被记录的页。此时,当没有完成追加的块是用于主机追加而分配的块时,日志恢复单元394请求主机写日志结构指针控制单元232更新主机写日志结构指针以指示未被记录的页。而当没有完成追加的块是用于压缩追加而分配的块时,日志恢复单元394请求压缩日志结构指针控制单元242更新压缩日志结构指针。在该情况下,在同一期限中,即使当在相同的逻辑地址中产生主机写和压缩时,根据压缩写的改变被最先反映在管理信息上,然后根据主机写的改变被反映。最后,管理信息的序列指示出进行了主机写的页。由此,确保了管理信息的一致性。当存储了在分配块之后直到完成追加为止被追加在块中的所有页的逆向查找逻辑地址并且在对应的块的追加完成日志中包括被追加在对应的块中的页的逆向查找逻辑地址时,可以仅仅通过查看追加完成日志就可以识别在对应的块中追加的所有页的逆向查找逻辑地址。由此,可以极大地减小从半导体存储介质205的读处理的量,并且可以仅对进行了最后追加的块从首部依次读取各页。如果在日志中记录了被收集为未用块的块的信息,则日志恢复单元394请求块使用信息控制单元3将对应的块的使用状态改变为未用状态。接下来,将描述根据第三实施例的数据存储装置的操作。因为读处理和快照记录处理与第二实施例相同,所以将不再重复对其的描述。首先,将参考图观描述根据来自主机装置的写命令而由数据存储装置300执行的写处理的序列。图观为示出了由数据存储装置300执行的写处理的序列的流程的实例的流程图。因为步骤SlOl到S107的处理与图13的步骤Sl到S7的处理相同,将不再重复描述。因为步骤S108的处理同样与图13的步骤S8相同,将不再重复描述。然而,如图27所示,在该页中,在用于记录用户数据的区域中记录用户数据,并在冗余区中记录对应页的逆向查找逻辑地址和错误校正码的数据。出于该原因,在第三实施例中,如图13的步骤S9所示,不需要单独地登记被写入的页的逆向查找逻辑地址,并且不需要在日志中记录逆向查找逻辑地址。因为步骤SllO到Sl15的处理与图13的步骤SlO到S15的处理相同,将不再重复描述。因为步骤S116的处理同样与图13的步骤S16的处理相同,将不再重复描述。然而,在步骤S116中,不向日志存储单元284通知转换表的更新信息。这是因为,在恢复管理信息(将在下面描述)时,可以基于在页中记录的逆向查找逻辑地址来恢复转换表的更新信息。由此,在图13的步骤S12到S16中,每当写入一页的用户数据时记录转换表的更新信息的日志。然而,在图观的步骤S112到S116中,每当写入一页的用户数据时不需要记录更新信息的日志,可以极大地减小日志记录次数。因为步骤S117的处理与图13的步骤S17的处理相同,将不再重复描述。因为步骤S118的处理与图13的步骤S18的处理几乎相同,将不再重复描述。然而,在步骤S118中,不向日志存储单元284通知更新的主机写日志结构指针的更新信息。这是因为,可以在恢复管理信息(将在下面描述)时恢复主机写日志结构指针的更新信息。由此,在图13的步骤S18中,每当写入一页的用户数据时记录主机写日志结构指针的更新信息的日志。然而,在图观的步骤S118中,每当写入一页的用户数据时不需要记录更新信息的日志,可以极大地减小日志记录次数。因为步骤Sl19的处理与图13的步骤S19的处理相同,将不再重复描述。在步骤Sl19.5中,写指令单元350向日志存储单元284通知对应的块的追加完成信息并请求日志存储单元284提交所通知的信息。为了减小将在下面描述的恢复处理时间,可存储在分配块之后直到完成追加为止被追加在块中的所有页的逆向查找逻辑地址,并且在对应的块的追加结束日志中可包括被追加在对应的块中的页的逆向查找逻辑地址。日志存储单元284从写指令单元350接收提交的通知并请求半导体存储介质控制单元203存储暂时存储的更新信息。半导体存储介质控制单元203记录暂时存储的更新信息作为日志。如果不能预先识别出其中记录了日志的半导体存储介质205的物理地址,则在向数据存储装置300供电时,管理信息不能被恢复。出于该原因,使其中记录了日志的半导体存储介质205的物理地址指示半导体存储介质205的预定区域或指示可通过在半导体存储介质205的该预定区域中记录的信息而跟踪的区域。写指令单元350请求块使用信息控制单元326执行对未用块的分配处理。如果块使用信息控制单元3从写指令单元350接收到对未用块的分配请求,块使用信息控制单元3挂起写指令单元350的处理,直到从压缩单元370接收到对该未用块的分配请求为止。在步骤S120中,如果块使用信息控制单元3从写指令单元350和压缩单元370二者完全地接收到对未用块的分配请求,并且在对应的时间点处来自主机装置的写入量为1且在数据存储装置300中将被处理的压缩的写入量为N(N为等于或大于0的整数),则块使用信息控制单元3将一个未用块分配给写指令单元350并将N个未用块分配给压缩单元370。块使用信息控制单元3可以从包括在由块使用信息存储单元2存储的块使用信息中的已用块的数目的信息或未用块的数目的信息来确定N的值。如果当在对应的时间点处来自主机装置的写入量为1时N的值被设定为大于在数据存储装置300中将被处理的压缩的写入量,当来自主机装置的写请求的载荷不大时,块使用信息控制单元326首先执行压缩处理并减小在将来将被执行的压缩处理的量,由此可以改善当来自主机装置的写请求的载荷在将来增加时的响应性。块使用信息控制单元3根据分配的内容更新由块使用信息存储单元2存储的块使用信息。块使用信息控制单元3重新开始写指令单元350的被挂起的处理。块使用信息控制单元326向日志存储单元284通知关于被分配的(N+1)个块的块分配信息。按该分配信息的顺序,被分配给压缩单元370的块在时间上先于被分配给写指令单元350的块。当多个块被分配给压缩单元370时,分配信息的顺序变为压缩单元370所使用的块的顺序。例如,在如图21到25所示分配块的情况下的分配信息的顺序变为块A、块B、块C和块D的顺序。在如图沈所示分配块的情况下的分配信息的顺序变为期限1中的块A、期限2中的块B和块C、期限3中的块D、期限4中的块E、期限5中的块F以及期限6中的块G和块H的顺序。块使用信息控制单元3请求日志存储单元284提交向日志存储单元284通知的信息。日志存储单元284从块使用信息控制单元3接收提交通知,并请求半导体存储介质控制单元203存储该暂时存储的更新信息。半导体存储介质控制单元203记录该暂时存储的更新信息作为日志。如果不能预先识别出其中记录了日志的半导体存储介质205的物理地址,则在向数据存储装置300供电时,管理信息不能被恢复。出于该原因,使其中记录了日志的半导体存储介质205的物理地址指示半导体存储介质205的预定区域或指示可通过在半导体存储介质205的该预定区域中记录的信息而跟踪的区域。写指令单元350请求主机写日志结构指针控制单元232更新主机写日志结构指针以指示新分配的块的首部的页。主机写日志结构指针控制单元232更新由主机写日志结构指针存储单元230存储的主机写日志结构指针以指示新分配的块的首部的页。如上所述,在图观中,通过块分配事件而记录日志。然而,因为块分配事件与压缩处理中的块分配处理处于相同的时间,如图13的步骤S21所示,在最后不能执行日志提交处理,因此需要一经要求就提交日志。因为步骤S122的处理与图13的步骤S22的处理相同,将不再重复描述。接下来将参考图四描述由数据存储装置300执行的压缩处理的序列。图四为示出了由数据存储装置300执行的压缩处理的序列的流程的实例的流程图。数据存储装置300在需要进行压缩处理的时刻或在任何时刻执行压缩处理。通过确定在块使用信息中记录的未用块的数目是否小于预定阈值而确定需要进行压缩处理的时刻。首先,因为步骤S141和S142的处理与图15的步骤S41和S42的处理相同,将不再重复描述。因为步骤S143的处理与图15的步骤S43的处理几乎相同,将不再重复描述。然而,执行以下处理。压缩单元370请求日志存储单元284提交更新的块使用信息。日志存储单元284接收来自压缩单元370的提交通知并请求半导体存储介质控制单元203存储该暂时存储的更新信息。半导体存储介质控制单元203记录该暂时存储的更新信息作为日志。如果不能预先识别出其中记录了日志的半导体存储介质205的物理地址,则在向数据存储装置300供电时,管理信息不能被恢复。出于该原因,使其中记录了日志的半导体存储介质205的物理地址指示半导体存储介质205的预定区域或指示可通过在半导体存储介质205的该预定区域中记录的信息而跟踪的区域。因为步骤S144到S146的处理与图15的步骤S44到S46的处理相同,将不再重复描述。关于在步骤S146中读出的数据,如图27所示,用户数据被记录在用于记录用户数据的区域中,而对应的页的逆向查找逻辑地址和错误校正码的数据被记录在冗余区中。在步骤S147中,压缩单元370提取在所读出的数据的冗余区中记录的逆向查找逻辑地址,并暂时存储该逆向查找逻辑地址。因为步骤S148的处理与图15的步骤S48的处理几乎相同,将不再重复描述。然而,如图27所示,在页中,用户数据被记录在用于记录用户数据的区域中,而对应的页的逆向查找逻辑地址和错误校正码的数据被记录在冗余区中。出于该原因,在第三实施例中,如图15的步骤S49所示,不需要单独登记被写入的页的逆向查找逻辑地址,并且不需要在日志中记录逆向查找逻辑地址。如上所述,仅当在页中写入数据时逆向查找表被新写入,此后不被更新,并仅在压缩时被参照。因此,在根据来自主机装置的写请求在页中写入数据时可以同时写入逆向查找表,并且在读取将被压缩的数据时可以同时读取逆向查找表。结果,没有另外导致惩罚。因为步骤S150到S158的处理与图15的步骤S50到S58的处理几乎相同,将不再重复描述。在图15的步骤S50到S58中的“与所获取的压缩目标块号码和有效页标志信息对应的物理地址区(复制源页)的对应逆向查找逻辑地址”对应于图四的步骤S150到S158中的所提取的逆向查找逻辑地址。因为步骤S159的处理与图15的步骤S59的处理几乎相同,将不再重复描述。在图四的步骤S159中,不向日志存储单元284通知转换表的更新信息,这与图15的步骤S59相反。这是因为,在恢复管理信息(将在下面描述)时,可以基于在页中记录的逆向查找逻辑地址来恢复转换表的更新信息。由此,在图15的步骤S53到S59中,每当写入一页的用户数据时记录转换表的更新信息的日志。然而,在图15的步骤S153到S159中,每当写入一页的用户数据时不需要记录更新信息的日志,可以极大地减小日志记录次数。当压缩目标块的有效页计数器的值变为0并且对应的块被收集为未用块时,压缩单元370向日志存储单元284通知更新的块使用信息的更新信息,并请求日志存储单元284提交向日志存储单元284通知的信息。日志存储单元284从压缩单元370接收提交信息,并请求半导体存储介质控制单元203存储该暂时存储的更新信息。半导体存储介质控制单元203记录该暂时存储的更新信息作为日志。如果不能预先识别出其中记录了日志的半导体存储介质205的物理地址,则在向数据存储装置300供电时,管理信息不能被恢复。出于该原因,使其中记录了日志的半导体存储介质205的物理地址指示半导体存储介质205的预定区域或指示可通过在半导体存储介质205的该预定区域中记录的信息而跟踪的区域。因为步骤S160的处理与图15的步骤S60的处理几乎相同,将不再重复描述。因为步骤S161的处理与图15的步骤S61的处理几乎相同,将不再重复描述。在图四的步骤161中,不向日志存储单元284通知更新的压缩日志结构指针的更新信息,这与图15的步骤S61相反。这是因为,在恢复管理信息(将在下面描述)时,可以恢复压缩日志结构指针的更新信息。由此,在图15的步骤S61中,每当执行一页的压缩时记录压缩日志结构指针的更新信息的日志。然而,在图四的步骤S161中,每当执行一页的压缩时不需要记录更新信息的日志,可以极大地减小日志记录次数。因为步骤S162的处理与图15的步骤S62的处理相同,将不再重复描述。在步骤S162.1中,压缩单元370向日志存储单元284通知对应的块的追加完成信息,并请求日志存储单元284提交所通知的信息。为了减小下面描述的恢复处理时间,可以存储在分配块之后直到完成追加为止被追加在块中的所有页的逆向查找逻辑地址,并且可以在对应的块的追加结束日志中包括被追加在对应的块中的页的逆向查找逻辑地址。日志存储单元284从压缩单元370接收提交通知并请求半导体介质存储控制单元203存储该暂时存储的更新信息。半导体存储介质控制单元203记录该暂时存储的更新信息作为日志。如果不能预先识别出其中记录了日志的半导体存储介质205的物理地址,则在向数据存储装置300供电时,管理信息不能被恢复。出于该原因,使其中记录了日志的半导体存储介质205的物理地址指示半导体存储介质205的预定区域或指示可通过在半导体存储介质205的该预定区域中记录的信息而跟踪的区域。在步骤S162.2中,压缩单元370调查是否使用了由块使用信息控制单元3分配的所有的块。当使用了所有的块时,处理进行到步骤S162.3。而当没有使用所有的块时,处理进行到步骤S162.5。在步骤S162.3中,压缩单元370请求块使用信息控制单元3执行对未用块的分配处理。如果块使用信息控制单元3从压缩单元370接收到对未用块的分配请求,块使用信息控制单元3挂起压缩单元370的处理,直到从写指令单元350完全接收了未用块的分配请求为止。在步骤S162.4中,如果块使用信息控制单元3从写指令单元350和压缩单元370二者完全接收了对未用块的分配请求,并且在对应时间点处来自主机装置的写入量为1且在数据存储装置300中将被处理的压缩的写入量为N(N为等于或大于0的整数),则块使用信息控制单元326向写指令单元350分配一个未用块并向压缩单元370分配N个未用块。块使用信息控制单元3可以通过包括在由块使用信息存储单元2存储的块使用信息中的已用块的数目的信息或未用块的数目的信息来确定N的值。如果N的值被设定为大于在数据存储装置300中将被处理的压缩的写入量且在对应的时间点处来自主机装置的写入量为1,则当来自主机装置的写请求的载荷不大时,块使用信息控制单元3首先执行压缩处理并减小在将来将被执行的压缩处理的量,由此,可以改善当来自主机装置的写请求的载荷在将来增加时的响应性。块使用信息控制单元3根据更新的内容而更新由块使用信息存储单元2存储的块使用信息。块使用信息控制单元3重新开始压缩单元370的被挂起的处理。块使用信息控制单元326向日志存储单元284通知关于被分配的(N+1)个块的块分配信息。按该分配信息的顺序,被分配到压缩单元370的块在时间上先于被分配到写指令单元350的块。当多个块被分配到压缩单元370时,该分配信息的顺序变为压缩单元370所使用的块的顺序。例如,在如图21到25所示分配块的情况下的该分配信息的顺序变为块A、块B、块C以及块D的顺序。在如图沈所示分配块的情况下的该分配信息的顺序变为期限1中的块A、期限2中的块B和块C、期限3中的块D、期限4中的块E、期限5中的块F以及期限6中的块G和块H的顺序。块使用信息控制单元3请求日志存储单元284提交向日志存储单元284通知的信息。日志存储单元284从块使用信息控制单元3接收提交通知,并请求半导体存储介质控制单元203存储该暂时存储的更新信息。半导体存储介质控制单元203记录该暂时存储的更新信息作为日志。如果不能预先识别出其中记录了日志的半导体存储介质205的物理地址,则在向数据存储装置300供电时,管理信息不能被恢复。出于该原因,使其中记录了日志的半导体存储介质205的物理地址指示半导体存储介质205的预定区域或指示可通过在半导体存储介质205的该预定区域中记录的信息而跟踪的区域。如上所述,在图四中,通过块分配事件而记录日志。然而,因为该块分配事件与写处理中的块分配处理处于相同的时间,如图15的步骤S64所示,在最后不能执行日志提交处理,因此需要一经要求就提交日志。在步骤S162.5中,压缩单元370请求压缩日志结构指针控制单元242更新压缩日志结构指针以指示通过块使用信息控制单元3分配的下一块的首部的页或者新分配的块中的第一块的首部的页。压缩日志结构指针控制单元242更新由压缩日志结构指针存储单元存储的压缩日志结构指针以指示被指派的块的被指派的页。因为步骤S165的处理与图15的步骤S65的处理相同,将不再重复描述。接下来,将参考图30描述由数据存储装置300执行的管理信息恢复处理的序列。图30为示出了由数据存储装置300执行的管理信息恢复处理的序列的流程的实例的流程图。当电力被供给到数据存储装置300时,数据存储装置300恢复管理信息。在需要恢复管理信息的时刻,甚至在除了电力被供给到数据存储装置300时之外的情况下,数据存储装置300可恢复管理信息。例如,当检测到在DRAMM中存储的管理信息的数据损坏时,数据存储装置300可执行管理信息恢复处理。首先,因为步骤S181到S184的处理与图17的步骤S81到S84的处理几乎相同,将不再重复描述。然而,步骤S183的日志的种类包括指示出该块被收集为未用块的空闲块收集信息、指示出完成了块的追加的块追加完成信息、以及指示出块的分配的块分配信息。步骤S183的处理对应于图17的更新根据日志信息而恢复的管理信息的步骤S83的处理并示出了根据每个日志的种类的处理。在该情况下,在新分配的块的信息中,按照由压缩单元237所使用的块的顺序排列用于压缩追加的一个或多个块的信息,并且排列由写指令单元350所使用的用于主机追加的块的信息。因此,关于每个被分配的块号码,重复执行对块的分配日志的恢复处理。下文中,将描述根据每个日志的种类的处理。首先,将参考图31描述当每个日志的种类为块分配信息时的恢复处理的流程的序列。图31为示出了当每个日志的种类为块分配信息时的恢复处理的序列的流程的实例的流程图。在步骤S201中,日志恢复单元394向半导体存储介质控制单元203发出对在日志中记录的块号码的块从首部的页依次读取页的请求。也就是,重复执行以下处理。半导体存储介质控制单元203读出半导体存储介质205的被指派的物理地址的数据,并提供该数据。日志恢复单元394从半导体存储介质控制单元203接收所读出的页的数据。在步骤S202中,日志恢复单元394确定所读出的页是否为未被记录的页。具体而言,因为包括如图27所示的冗余区的数据的被擦除的页的数据的所有位具有1的值,如果确定是否所有位的值变为1,则可以识别出所读出的页是未被记录的页。当所读出的页是未被记录的页时,处理进行到步骤S203。而当所读出的页不是未被记录的页(即,是被记录的页)时,处理进行到步骤S204。在步骤S203中,当对应的块是用于主机写的日志结构块时,日志恢复单元394请求主机写日志结构指针控制单元232更新主机写日志结构指针以指示该未被记录的页。同样,当对应的块是为压缩追加而分配的块时,日志恢复单元394请求压缩日志结构指针控制单元242更新压缩日志结构指针。主机写日志结构指针控制单元232接收来自日志恢复单元394的主机写日志结构指针更新请求,并更新由主机写日志结构指针存储单元230存储的主机写日志结构指针。压缩日志结构指针控制单元242接收来自日志恢复单元394的压缩日志结构指针更新请求,并更新由压缩日志结构指针存储单元240存储的压缩日志结构指针。在步骤S204中,日志恢复单元394从所读出的数据提取逆向查找逻辑地址信息。在步骤S205到S209中,基于所提取的逆向查找逻辑地址信息,日志恢复单元394使转换表的所提取的逆向查找逻辑地址信息的条目指示所读出的页。具体而言,在读取该页之前,日志恢复单元394向转换表控制单元221询问与所提取的逆向查找逻辑地址对应的物理地址(更新前的物理地址)。在读取该页之前,转换表控制单元221参照由转换表存储单元223存储的转换表并提供与所提取的逆向查找逻辑地址对应的物理地址(更新前的物理地址)。在读取该页之前,日志恢复单元394获取与所提取的逆向查找逻辑地址对应的物理地址(更新前的物理地址)。日志恢复单元394请求转换表控制单元221使与所获取的更新前的物理地址对应的有效页标志变为OFF。日志恢复单元394请求转换表控制单元221减小与所获取的更新前的物理地址对应的块的有效页计数器。日志恢复单元394请求转换表控制单元221使与所读出的页对应的有效页标志变为ON。日志恢复单元394请求转换表控制单元221增加与所读出的页对应的块的有效页计数器。日志恢复单元394请求转换表控制单元221更新正向查找表的所提取的逆向查找逻辑地址以指示与所读出的页对应的物理地址区信息。转换表控制单元221根据指令而更新由转换表存储单元323存储的转换表。如上所述,执行与在页写入时的转换表的更新处理相同的处理。也就是,在第三实施例中,不在日志中详细记录并且不恢复管理信息的更新信息,并且记录管理信息被更新的因素,再现从该因素更新的管理信息的方面,并恢复管理信息。在步骤S210中,根据需要,从步骤S201重复处理。在该情况下,在同一期限中,即使当在相同的逻辑地址中产生主机写处理和压缩处理时,根据压缩写的改变被最先反映在管理信息上,然后根据主机写的改变被反映。最后,管理信息的序列示出进行了主机写的页。由此,确保了管理信息的一致性。接下来,将参考图32描述当每个日志的种类为块的追加完成信息时的恢复处理的流程的序列。图32为示出了当每个日志的种类为块的追加完成信息时恢复处理的流程的序列的流程的实例的流程图。在日志中,记录新分配的块的信息、块的追加完成信息、以及指示出块被收集为未用块的信息。只要没有完成在某个期限中分配的所有块的追加,该期限就不会进行到下一期限。在步骤S220中,当按记录的次序跟踪日志时,日志恢复单元394确认在其中记录了在某个期限中分配的所有块的追加完成信息的状态下记录下一期限的块分配的日志,并可调查该日志的有效性。当存储了在分配了块之后直到完成了追加为止的被追加在该块中的所有页的逆向查找逻辑地址并且在对应的块的追加完成日志中包括被追加在该对应的块中的页的逆向查找逻辑地址时,通过仅仅查看该追加完成日志便可以识别出在该块中追加的所有页的逆向查找逻辑地址。由此,可以极大地减少图31的步骤S201的处理,也就是,从半导体存储介质205的读处理。出于该原因,可以仅关于进行了最后追加的块而从首部依次读取各页。结果,可以缩短管理信息恢复处理的处理时间。接下来,将参考图33描述当每个日志的种类为空闲块收集信息时的恢复处理的流程的序列。图33为示出了当每个日志的种类为空闲块收集信息时恢复处理的序列的流程的实例的流程图。在步骤S230中,日志恢复单元394请求块使用信息控制单元3将对应的块的使用状态变为未用状态。块使用信息控制单元3根据来自日志恢复单元394的请求而更新由块使用信息存储单元2存储的块使用信息。通过上述处理,在极大地减小日志记录次数的同时可以正确地恢复管理信息。结果,与关于存储介质的数据的写性能相比,可以进一步改善关于来自主机装置的写请求的写性能。此外,可以增加数据存储装置的设计寿命。在第三实施中,在块分配规则中存在下列两个约束。第一约束为,当主机写日志结构指针和压缩日志结构指针使用在对应的期限中分配的所有块时,同步进行对用于压缩追加的日记结构块和用于主机写的日志结构块的新块分配。第二约束涉及被分配的块的数目,S卩,当在对应时间点处来自主机装置的写入量为1且在数据存储装置中将被处理的压缩的写入量为N(N为等于或大于0的整数)时,将一个未用块分配给用于主机追加的块,而将N个未用块分配给用于压缩追加的块。接下来,将参考图34到38描述其中由于违反上述约束而不能正确地恢复管理信息的实例,同时考虑正向查找表的恢复。因为下述情况可应用于有效页标志或有效页计数器的恢复,这里将不再重复说明。在块被用于主机写和压缩的情况下,如图34所示,用于主机写的日志结构指针到达块的末端。在该情况下,违反第一约束而获取新块,并且如图35所示,连续地处理来自主机装置的写存取。在该情况下,因为在来自主机的写存取中产生了地址偏离(deviation),如图35和36所示,在用于压缩的块A中记录的LBA2的数据被无效化,块B变为压缩目标,并且LBA4的数据被复制到用于压缩的块A中。图37示出了在该时间点处的日志。在图36所示的情况下,因为对数据存储装置300的供电被打断并再次向数据存储装置300供电,正向查找表的内容被恢复。在该情况下,如图37所示,因为指示出“准备块”的日志的时间顺序为块A、块B、块C和块D的顺序,按该顺序读取每个块的页并恢复图38中所示的正向查找表。在图38中所示的该正向查找表中,关于LBA4的正向查找表的信息指示出不是最新的块B的页0。接下来,将参考图39到44描述其中由于保持上述约束而可以正确地恢复管理信息的实例,同时考虑正向查找表的恢复。在块被用于主机写和压缩的情况下,如图39所示,用于主机写的日志结构指针到达该块的末端。在该情况下,保持第一约束,延迟对新块的获取,直到用于压缩的日志结构指针到达该块的末端(如图40所示)为止,并且当日志指针到达被用于写的块的末端时获取新块。然后,连续地进行根据来自主机装置的写请求的写和压缩写,并同步进行对块的获取,如图41所示。如图42所示,用于主机写的块B被设定为压缩目标并进行压缩,并且在块B中存在的有效页被复制到块E中。图43示出了在该时间点处的日志。在图42所示的情况下,因为对数据存储装置300的供电被打断并再次向数据存储装置300供电,正向查找表的内容被恢复。图44示出了恢复的正向查找表。因为所关注的LBA(逻辑地址)为第四LBA,在图42中没有示出第十一到第十七LBA。如果约束被保持,则因为当日志结构指针获取新块时需要以组(group)的形式获取用于主机写的块和用于压缩的块,即使在重新构造正向查找表的情况下,也以组为单位执行恢复处理。在图44的状态下,获得包括块A和B的组、块C和D的组、以及块E和F的组的三个组。这三个组的恢复顺序为在写处理中块被使用的顺序。首先,依次读取块A和B的组的页、块C和块D的组的页、以及块E和F的组的页,并恢复正向查找表。在每一组中,在读出用于压缩的块的页并恢复正向查找表之后,读出用于主机写的块的页并恢复正向查找表。例如,关于块A和B的组,在处理块A的页之后,处理块B的页。如图44的正向查找表恢复结果所示,可以看出,因为与图36示出的存取模式一样地产生了地址偏离,尽管立即压缩了从主机装置写入的数据,正向查找表的恢复结果也确保了一致性。第一约束为这样的约束,该约束在两个写指针使用所有所获取的块时使块的获取被进行以写入具有不同特性的两种数据,并使关于每一个块的写历史以正确的顺序被存储和指定。通过该配置,可以看出,如果第一约束没有被保持,则不能正确地进行通过日志进行的正向查找表恢复。第二约束为这样的约束,该约束使来自主机装置的写请求频率的改变或未用块的数目的改变被动态地反映,同时保持第一约束。在不需要进行压缩的情况下,例如,在系统的使用开始之后的即刻,不通过用于压缩的日志结构指针获取块。而在由于系统的未用块的数目减小而导致需要进行压缩的情况下,通过用于压缩的日志结构指针而获取许多块,并产生关于主机写而进行了多次压缩的情况。以该方式,可以确保在对应时间点处所需的压缩的写入量,并且,可以尽可能地避免这样的情况,该情况为,即使当一个日志结构指针到达被分配的块的末端时,处理也被挂起,直到其它日志结构指针到达被分配的块的末端为止。第四实施例在第四实施例中,将描述其中在转换表中不包括有效页标志的实例。如果在页中写入的逆向查找逻辑地址与正向查找表之间实现了下列第一和第二关系,则可以采用其中在转换表中不包括有效页标志的配置。第一关系为,“当通过在页中写入的逆向查找逻辑地址而参照正向查找表并且在正向查找表中记录的物理地址指示对应的页时,这意味着,在对应的页的写入之后未进行对对应的逻辑地址的写入,并且该对应的页是有效的”。第二关系为,“当通过在页中写入的逆向查找逻辑地址而参照正向查找表并且在正向查找表中记录的物理地址不指示对应的页时,这意味着,在对应的页的写入之后进行了对对应的逻辑地址的写入,并且该对应的页是无效的”。当转换表被构建为不包括有效页标志时,使用上述关系,用下列处理来代替参照上述有效页标志的ON和OFF的处理。(1)读取页的数据的处理。(2)通过逆向查找逻辑地址而参照正向查找表并确定在正向查找表中记录的物理地址是否指示由(1)读出的页的处理。(3)当(2)变为真时确定有效页标志为ON并且当(2)变为假时确定有效页标志为OFF的处理。如上所述,在第四实施例中,通过使用其中在转换表中不包括有效页标志的配置,可以减小管理信息的存储器使用量。当可以减小管理信息的存储器使用量时,这意味着,可以减小将被存储为快照的容量。结果,可以减小存储快照所需的处理时间,可以减小对半导体存储介质的写入量,并且可以增加数据存储装置的设计寿命。“在页中写入的逆向查找逻辑地址”可以被读作“在转换表中的对应于对应的页的逆向查找逻辑地址”。第五实施例在第五实施例中,将描述这样的实例,其中各种处理不是按块单位执行,而是按其中组合了多个块的被称为逻辑块的单位执行。下文中,将块称为物理块以使块和逻辑块彼此区分开。当按逻辑块单位执行处理时,正向查找表具有图45所示的第一阶段(firststage)的LBA表和图46所示的第二阶段的逻辑/物理转换表。LBA表使用逻辑地址作为索引并包括逻辑地址、被分派到该逻辑地址的逻辑块号码、信道号码、以及被分派到页的页号码。按块产生顺序分派逻辑块号码。信道号码在图1所示的配置的情况下变为CHO到CH5并示出了写入写目标数据被写入的信道。逻辑/物理转换表是指示出属于逻辑块的每个信道的每个物理块的信息。逻辑/物理转换表使用逻辑块号码作为索引并包括逻辑块号码和用于在逻辑块中包括的每个通道的每个物理块号码。在图47中示出了逆向查找表、有效页标志和有效页计数器。如图47所示,逆向查找表、有效页标志和有效页计数器使用逻辑块号码作为索引,并包括作为条目的逻辑块号码、有效页计数器、每个通道的每个物理块的逻辑地址、以及有效页标志组。每个信道的每个物理块的逻辑地址和有效页标志组使用信道号码作为索引,并且信道号码、逻辑地址和有效页标志按设置在对应的物理块中的页的顺序排列,从而可以指定与逻辑地址信息或有效页标志信息对应的页。同一逻辑块的有效页计数器的值和有效页标志的真值的总数目彼此匹配。变为索引的逻辑块号码和变为正向查找表的条目的逻辑块号码被指派为在同一块中具有相同的号码。与图9所示的逆向查找表相似,逆向查找表为这样的表,该表指示出由数据存储装置存储的数据的逻辑地址与指示出在半导体存储介质中实际存储数据的物理存储位置的物理地址之间的对应关系,并且当将地址从物理地址转变为逻辑地址时使用该表,这与正向查找表相反。有效页标志使用真/假值示出了在物理块中包括的各页当中的写入了有效数据的有效页。有效页计数器示出了在物理块中包括的各页当中的有效页的数目。在该情况下,如果如图48所示确定构成逻辑块的物理块的各页的写入顺序,即,日志结构指针的推进方法,则可以用以逻辑块为单位的处理来代替上述以(物理)块为单位的各种处理。由此,可以对多个半导体存储介质进行共同地(collectively)存取,并可以提高存取速度。通过组合第三实施例或第四实施例,可以使用其中不包括逆向查找表或有效页标志的配置。根据上述至少一个实施例的控制器,写指令单元指令数据存取单元在数据存储单元的由第一物理地址指示的存储区中写入写目标数据,指令管理信息存取单元更新地址转换信息,并指令第一存取单元更新所述第一物理地址。压缩单元提取压缩目标数据的物理地址,指令所述数据存取单元读取在所述数据存储单元的由所述物理地址指示的存储区中所存储的所述压缩目标数据,指令所述数据存取单元在所述数据存储单元的由第二物理地址指示的存储区中写入所述压缩目标数据,指令所述管理信息存取单元更新所述地址转换信息,并指令第二存取单元更新所述第二物理地址。因此,可以改善通常使用性能。虽然已经描述了特定的实施例,但这些实施例仅仅被作为实例而给出,并不旨在限制本发明的范围。事实上,这里描述的新颖实施例可以以其它形式的变体实现;此外,可以在不背离本发明的精神的情况下,对这里描述的实施例做出形式上的各种省略、替代和改变。所附权利要求及其等价物旨在涵盖落入本发明的范围和精神内的这样的形式或修改。权利要求1.一种控制器,其被连接到数据存取单元、管理信息存取单元、第一存取单元以及第二存取单元,所述数据存取单元向存储数据的数据存储单元写入数据并从所述数据存储单元读出数据,所述管理信息存取单元向存储管理信息的管理信息存储单元写入数据并从所述管理信息存储单元读出数据,所述管理信息包括其中所述数据存储单元的物理地址和逻辑地址彼此关联的地址转换信息,所述第一存取单元向存储所述数据存储单元的第一物理地址的第一存储单元写入数据并从所述第一存储单元读出数据,所述第二存取单元向存储所述数据存储单元的第二物理地址的第二存储单元写入数据并从所述第二存储单元读出数据,所述控制器包括接收器,其接收来自主机装置的数据写请求;写指令单元,其指令所述第一存取单元读出所述第一物理地址,指令所述数据存取单元在所述数据存储单元的由所述第一物理地址指示的存储区中写入写目标数据,指令所述管理信息存取单元更新所述写目标数据的所述地址转换信息,并指令所述第一存取单元更新所述第一物理地址,所述写目标数据是由主机装置请求写入的数据;以及压缩单元,其指令所述管理信息存取单元读出所述管理信息,基于所读出的所述管理信息而提取在所述数据存储单元中存储的数据当中的压缩目标数据的物理地址,指令所述数据存取单元读出在所述数据存储单元的由所述物理地址指示的存储区中存储的所述压缩目标数据,指令所述第二存取单元读出所述第二物理地址,指令所述数据存取单元在所述数据存储单元的由所读出的所述第二物理地址指示的存储区中写入所述压缩目标数据,指令所述管理信息存取单元更新所述压缩目标数据的所述地址转换信息,并指令所述第二存取单元更新所述第二物理地址。2.根据权利要求1的控制器,其中,当所述压缩目标数据的读取源的存储区为被无效的存储区时,所述压缩单元不指令所述管理信息存取单元更新所述地址转换信息。3.根据权利要求1的控制器,还包括快照存储单元,其指令所述数据存取单元在所述数据存储单元中存储所述管理信息作为快照;日志存储单元,其指令所述数据存取单元在所述数据存储单元中存储所述管理信息的更新信息作为日志;快照恢复单元,其指令所述数据存取单元读出在所述数据存储单元中存储的所述快照并将所述快照恢复作为所述管理信息;以及日志恢复单元,其指令所述数据存取单元读出在所述数据存储单元中存储的所述日志并将所述日志应用于由所述快照恢复单元恢复的所述管理信息以恢复所述管理信息。4.根据权利要求3的控制器,其中,为所述写目标数据分配用于主机写的日志结构块,为所述压缩目标数据分配用于压缩的日志结构块,所述写指令单元指令所述数据存取单元在所述用于主机写的日志结构块的页中写入所述写目标数据和所述写目标数据的逻辑地址,所述压缩单元指令所述数据存取单元在所述用于压缩的日志结构块的页中写入所述压缩目标数据和所述压缩目标数据的逻辑地址,并且所述控制器还包括块使用信息控制单元,当对所述用于主机写的日志结构块的所有页完成了写入且对所述用于压缩的日志结构块的所有页完成了写入时,所述块使用信息控制单元为所述写目标数据分配新的用于主机写的日志结构块,为所述压缩目标数据分配新的用于压缩的日志结构块,并且按所述用于压缩的日志结构块和所述用于主机写的日志结构块的顺序记录分配信息作为日志。5.根据权利要求4的控制器,其中,所述块使用信息控制单元相对于分配一个新的用于主机写的日志结构块而分配N(N为等于或大于0的整数)个新的用于压缩的日志结构块。6.根据权利要求4的控制器,其中,所述压缩单元参照所述地址转换信息,当与在所述页中写入的所述压缩目标数据的逻辑地址关联的物理地址指示所述页时确定所述页是有效的,而当与在所述页中写入的所述压缩目标数据的逻辑地址关联的物理地址不指示所述页时确定所述页是无效的。7.一种数据存储装置,包括数据存储单元,其存储数据;管理信息存储单元,其存储管理信息,所述管理信息包括其中所述数据存储单元的物理地址和逻辑地址彼此关联的地址转换信息,第一存储单元,其存储所述数据存储单元的第一物理地址;第二存储单元,其存储所述数据存储单元的第二物理地址;数据存取单元,其向所述数据存储单元写入数据并从所述数据存储单元读出数据,管理信息存取单元,其向所述管理信息存储单元写入数据并从所述管理信息存储单元读出数据;第一存取单元,其向所述第一存储单元写入数据并从所述第一存储单元读出数据;第二存取单元,其向所述第二存储单元写入数据并从所述第二存储单元读出数据;接收器,其接收来自主机装置的数据写请求;写指令单元,其指令所述第一存取单元读出所述第一物理地址,指令所述数据存取单元在所述数据存储单元的由所述第一物理地址指示的存储区中写入写目标数据,指令所述管理信息存取单元更新所述写目标数据的所述地址转换信息,并指令所述第一存取单元更新所述第一物理地址,所述写目标数据是由主机装置请求写入的数据;以及压缩单元,其指令所述管理信息存取单元读出所述管理信息,基于所读出的所述管理信息而提取在所述数据存储单元中存储的数据当中的压缩目标数据的物理地址,指令所述数据存取单元读出在所述数据存储单元的由所述物理地址指示的存储区中存储的所述压缩目标数据,指令所述第二存取单元读出所述第二物理地址,指令所述数据存取单元在所述数据存储单元的由所读出的所述第二物理地址指示的存储区中写入所述压缩目标数据,指令所述管理信息存取单元更新所述压缩目标数据的所述地址转换信息,并指令所述第二存取单元更新所述第二物理地址。8.一种用于控制器的程序产品,所述控制器被连接到数据存取单元、管理信息存取单元、第一存取单元以及第二存取单元,所述数据存取单元向存储数据的数据存储单元写入数据并从所述数据存储单元读出数据,所述管理信息存取单元向存储管理信息的管理信息存储单元写入数据并从所述管理信息存储单元读出数据,所述管理信息包括其中所述数据存储单元的物理地址和逻辑地址彼此关联的地址转换信息,所述第一存取单元向存储所述数据存储单元的第一物理地址的第一存储单元写入数据并从所述第一存储单元读出数据,所述第二存取单元向存储所述数据存储单元的第二物理地址的第二存储单元写入数据并从所述第二存储单元读出数据,所述程序产品具有包括程序指令的计算机可读介质,其中当由计算机执行所述指令时,所述指令使所述计算机用作接收器,其接收来自主机装置的数据写请求;写指令单元,其指令所述第一存取单元读出所述第一物理地址,指令所述数据存取单元在所述数据存储单元的由所述第一物理地址指示的存储区中写入写目标数据,指令所述管理信息存取单元更新所述写目标数据的所述地址转换信息,并指令所述第一存取单元更新所述第一物理地址,所述写目标数据是由主机装置请求写入的数据;以及压缩单元,其指令所述管理信息存取单元读出所述管理信息,基于所读出的所述管理信息而提取在所述数据存储单元中存储的数据当中的压缩目标数据的物理地址,指令所述数据存取单元读出在所述数据存储单元的由所述物理地址指示的存储区中存储的所述压缩目标数据,指令所述第二存取单元读出所述第二物理地址,指令所述数据存取单元在所述数据存储单元的由所读出的所述第二物理地址指示的存储区中写入所述压缩目标数据,指令所述管理信息存取单元更新所述压缩目标数据的所述地址转换信息,并指令所述第二存取单元更新所述第二物理地址。全文摘要本发明涉及控制器、数据存储装置以及程序产品。根据一个实施例,写指令单元指令数据存取单元在数据存储单元的由第一物理地址指示的存储区中写入写目标数据,指令管理信息存取单元更新地址转换信息,并指令第一存取单元更新所述第一物理地址。压缩单元提取压缩目标数据的物理地址,指令所述数据存取单元读取在所述数据存储单元的由所述物理地址指示的存储区中所存储的所述压缩目标数据,指令所述数据存取单元在所述数据存储单元的由第二物理地址指示的存储区中写入所述压缩目标数据,指令所述管理信息存取单元更新所述地址转换信息,并指令第二存取单元更新所述第二物理地址。文档编号G06F11/14GK102193748SQ20111004876公开日2011年9月21日申请日期2011年3月1日优先权日2010年3月18日发明者吉井谦一郎,浅野滋博,福富和弘,菅野伸一申请人:株式会社东芝
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1