CN100576335C - 复合存储设备和数据处理方法 - Google Patents
复合存储设备和数据处理方法 Download PDFInfo
- Publication number
- CN100576335C CN100576335C CN200610058921A CN200610058921A CN100576335C CN 100576335 C CN100576335 C CN 100576335C CN 200610058921 A CN200610058921 A CN 200610058921A CN 200610058921 A CN200610058921 A CN 200610058921A CN 100576335 C CN100576335 C CN 100576335C
- Authority
- CN
- China
- Prior art keywords
- data
- data area
- bunch
- address
- memory device
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
一种复合存储设备、数据处理方法和数据处理程序,能够有效地和选择性地使用非易失性固态存储器和记录介质。所述复合存储设备包括非易失性固态存储器和记录介质,并且被适配来将记录介质的数据区域和非易失性固态存储器的数据区域组合,并通过预定的文件系统来将它们管理为总体或部分地集成的数据区域。复合存储设备通过接口部件而连接到主机设备。
Description
技术领域
本发明涉及一种包括记录介质和非易失性存储介质的复合存储设备,使得可以根据对于数据共同的文件系统来从所述复合存储设备写入和从其读出所述数据,本发明并且涉及一种数据写入方法和数据写入程序,用于向这样的复合存储设备写入数据。
背景技术
硬盘驱动器(以下简称为HDD)被普遍地用作个人计算机(PC)的外部存储设备,并且作为对于记录密度的改进的结果而被使得具有较大的存储容量。已经发现并且正在预期它们在包括AV(视听)家庭服务器和汽车AV设备的各种消费AV设备的领域中得到应用。
另外,已经降低了HDD的盘大小,1.8英寸或甚至1英寸大小的HDD预期变得可广泛地用于诸如数字静态照相机(DSC)和便携音乐播放器之类的移动设备。
另一方面,快闪存储器和其它的非易失性固态存储器提供了包括低功耗率、快速启动能力和高耐冲击性的优点,并且正在被使得具有超过1GB的较大容量。因此,它们可以得到能够有效地发挥所述优点的各种应用。
同时,要由被应用到移动设备的小存储设备满足的要求包括低成本、高存储容量、低功耗率和快速响应。
但是,HDD在电源启动后需要几秒来达到就绪状态,在该就绪状态中,可以向其记录或从其再现数据。另一方面,非易失性固态存储设备在快速响应方面优异,并且在电源启动后瞬时变得就绪,以便可以从向所述设备供电时开始向其记录或从其再现数据。
当HDD被保持在空闲状态(在此状态中其对于记录或再现数据准备就绪)中时浪费功率,因此降低了其电源仅仅具有有限容量的移动设备中的电源使用效率。HDD具有另外的缺点:替换操作耗费时间,因此当在轨道上出现缺陷扇区时引起数据传输速率的降低。
因此,预期开发作为HDD和非易失性固态存储器的协调组合的产品的所谓混合存储设备,以便使用非易失性固态存储器的优点来弥补HDD的缺点。本发明的发明人已经提出了可以由单个文件系统管理的各种混合存储设备,以发挥它们的优点(特别参见专利文件1:日本专利申请公开出版物第2003-123379号,专利文件2:日本专利申请公开出版物第2003-125358号,专利文件3:日本专利申请公开出版物第2002-150699号,专利文件4:日本专利申请公开出版物第2000-324435号)。
过去,当访问软件时所需要的系统数据和用于控制HDD控制器的数据被存储在HDD的预定区域中,并且不能被读出,直到HDD进入就绪状态。换句话说,在启动电源后一段时间不能使用包含HDD的设备,直到从HDD读出所述系统数据。考虑到这个问题,专利文件1提出了一种技术,通过其,在非易失性固态存储器中存储系统数据,以便当向所述设备供电时,所述设备进入就绪状态。
如上所述,HDD在启动电源后需要几秒来进入就绪状态,在该就绪状态中,可以向其记录或从其再现数据。换句话说,不能向HDD记录数据或从HDD再现数据,直到HDD进入就绪状态。考虑到这个问题,专利文件2提出了一种技术,通过其,在从操作开始起的预定时段向非易失性固态存储器写入数据,随后从HDD在数据记录模式中达到就绪状态时开始向HDD写入数据,而首先从非易失性固态存储器读出数据,随后从HDD在数据读取模式中达到就绪状态时起从HDD读出数据,以便可以从向设备供电时起记录或再现数据。
专利文件3描述了一种技术,用于通过使用非易失性固态存储器来作为备用存储区域来防止当出现缺陷扇区时数据传输速率降低。
当配备了HDD的视频摄像机在正在向HDD记录数据时疏忽地掉落或受到冲击时,电源会突然切断,使得文件系统不再进行数据注册操作。因此,它将不再可能从HDD再现数据。因此,所述文件系统需要在HDD的预定区域中定期更新,以防止这样的灾难情况发生。但是,可以通过用于更新文件系统的布置来显著地降低HDD的数据记录速率。考虑到这个问题,专利文件4描述了一种技术,用于向非易失性固态存储器分配要用于更新文件系统的存储区域,以便可以在不降低传输速率的情况下保护数据。
因此,可以通过组合小容量非易失性固态存储器和大容量HDD而提供低成本高性能存储设备,以便利用非易失性固态存储器来作为仅仅用于过渡状态的数据存储区域,并且利用HDD来作为用于稳定状态的数据存储区域。
发明内容
同时,当从可靠性角度将非易失性固态存储器与HDD相比较时,非易失性固态存储器提供了宽于HDD的操作保证温度范围。另外,HDD易于被振动和冲击损坏,因为它当存取数据时涉及机械操作。
现在,在操作保证范围上,将使用NAND(与非)快闪存储器(非易失性固态存储器)的存储卡和1英寸-1.8英寸HDD相比较。
关于所述操作保证温度范围,它对于使用NAND快闪存储器的存储卡在摄氏0度和70度之间,并且对于HDD在摄氏5度和60度之间。在操作中的保证振动限制对于使用NAND快闪存储器的存储卡是15G(=147m/s2),对于HDD是2G(=19.6m/s2)。在操作中的可允许冲击对于使用NAND快闪存储器的存储卡是3,000G(29,400m/s2),对于HDD是500G(4,900m/s2)。因此,根据所有上述列出的参数,非易失性固态存储器提供了相对于HDD更宽的可允许范围。
因此,可以通过组合非易失性固态存储器和大容量HDD来实现高度有效的存储设备。更具体而言,当非易失性固态存储器被用作存储要频繁存取并用于过渡状态的数据的数据存储区域,而HDD被用作要用于稳定状态的记录区域时,可以实现低成本高可靠性存储设备。
但是,由于成本和关于空间的限制,非易失性固态存储器的容量远小于HDD的容量。因此,实现这样的存储设备以有效地使用非易失性固态存储器是重要的。
另外,如果当启动HDD时和在过渡状态中非易失性固态存储器的存储区域被频繁用来临时存储视频信号,则固有地仅具有小存储容量的非易失性固态存储器的可用容量将迅速被占用。类似地,如果非易失性固态存储器的介质区域用于存储仅仅很少被访问的大量文件,则是使用这样的存储设备的低效率方式。因此,需要另外的操作来通过移动数据而保证空余的存储区域。
也需要改进的技术,用于备份管理被写入到HDD和非易失性固态存储器的数据的管理信息和重要数据。
根据上述情况,期望提供一种能够有效地和选择性地使用非易失性固态存储器和HDD的高度可靠的复合存储设备、数据处理方法和数据处理程序。
按照本发明,提供了一种复合存储设备,包括:记录介质,具有第一数据区域,所述第一数据区域具有被分配到预定大小的相应簇(cluster)的第一地址;非易失性存储介质,具有第二数据区域,所述第二数据区域具有被分配到预定大小的相应簇的第二地址;接口部件,连接到主机设备;提取装置,在向第二数据区域移动或复制被写入第一数据区域的数据或向第一数据区域移动或复制被写入第二数据区域的数据时,通过引用目录区域来提取要移动或复制的数据的引导簇的地址,所述目录区域承载写入到第一数据区域或第二数据区域的数据的引导簇地址;第一通知装置,经由所述接口向主机设备通知由所述提取装置提取的引导簇的地址;第一接收装置,响应于所述第一通知装置的通知,而经由所述接口部件从主机设备接收第一信号或第二信号,所述第一信号命令从第一数据区域向第二数据区域移动或复制数据,所述第二信号命令从第二数据区域向第一数据区域移动或复制数据;读取装置,用于在通过所述第一接收装置接收到所述第一信号或第二信号时,从识别信息表读取要移动或复制的数据的引导簇的地址的簇链,所述识别信息表由逻辑地址构成并且承载每个逻辑地址的预定识别信息,所述逻辑地址用于管理第一地址和第二地址;空余区域检测装置,用于在从第一数据区域向第二数据区域移动或复制数据时从第二数据区域检测空余区域,并且在从第二数据区域向第一数据区域移动或复制数据时从第一数据区域检测空余区域;移动/复制装置,用于把要移动或复制的数据移动或复制到由所述空余区域检测装置检测的空余区域;更新装置,在通过所述移动/复制装置来移动或复制数据时,更新由所述读取装置从所述识别信息表读取的簇链,以承载移动或复制的位置的地址;第二通知装置,用于当所述更新装置完成更新所述簇链时通过所述接口部件向所述主机设备通知引导簇的被改变的地址;第二接收装置,用于响应于第二通知装置的通知,而通过所述接口部件来从所述主机设备接收用于命令改变所述引导簇的地址的信号;以及改变装置,用于当通过第二接收装置从主机设备接收到用于命令改变引导簇的地址的信号时,将在所述目录区域中的引导簇的地址改变为由所述移动/复制装置移动或复制的数据的引导簇的地址。
按照本发明,提供了一种复合存储设备的数据处理方法,所述复合存储设备具有记录介质、非易失性存储介质和接口部件,所述记录介质具有第一数据区域,所述第一数据区域具有被分配到预定大小的相应簇的第一地址,所述非易失性存储介质具有第二数据区域,所述第二数据区域具有被分配到预定大小的相应簇的第二地址,所述接口部件要连接到主机设备,所述方法包括:提取步骤,在向第二数据区域移动或复制被写入第一数据区域的数据或向第一数据区域移动或复制被写入第二数据区域的数据时,通过引用目录区域来提取要移动或复制的数据的引导簇的地址,所述目录区域承载写入到第一数据区域或第二数据区域的数据的引导簇地址;第一通知步骤,用于经由接口部件向主机设备通知在所述提取步骤中提取的引导簇的地址;第一接收步骤,用于响应于在所述第一通知步骤中的通知,而通过所述接口部件来从主机设备接收第一信号或第二信号,所述第一信号命令从第一数据区域向第二数据区域移动或复制数据,所述第二信号命令从第二数据区域向第一数据区域移动或复制数据;读取步骤,用于当在所述第一接收步骤中接收到所述第一信号或第二信号时,从识别信息表读取要移动或复制的数据的引导簇的地址的簇链,所述识别信息表由逻辑地址构成并且承载每个逻辑地址的预定识别信息,所述逻辑地址用于管理第一地址和第二地址;空余区域检测步骤,用于在从第一数据区域向第二数据区域移动或复制数据时从第二数据区域检测空余区域,并且在从第二数据区域向第一数据区域移动或复制数据时从第一数据区域检测空余区域;移动/复制步骤,用于把要移动或复制的数据移动或复制到在所述空余区域检测步骤中检测的空余区域;更新步骤,在所述移动/复制步骤中移动或复制数据时,更新在所述读取步骤从所述识别信息表读取的簇链,以承载移动或复制的位置的地址;第二通知步骤,用于当在所述更新步骤中完成更新所述簇链时通过所述接口部件向所述主机设备通知引导簇的被改变的地址;第二接收步骤,用于响应于第二通知步骤中的通知,而通过所述接口部件来从所述主机设备接收用于命令改变所述引导簇的地址的信号;以及改变步骤,用于当在第二接收步骤中从主机设备接收到用于命令改变引导簇的地址的信号时,将在所述目录区域中的引导簇的地址改变为在所述移动/复制步骤中移动或复制的数据的引导簇的地址。
按照本发明,提供了一种数据处理程序,用于使得计算机执行复合存储设备的数据处理操作,所述复合存储设备具有记录介质、非易失性存储介质和接口部件,所述记录介质具有第一数据区域,所述第一数据区域具有被分配到预定大小的相应簇的第一地址,所述非易失性存储介质具有第二数据区域,所述第二数据区域具有被分配到预定大小的相应簇的第二地址,所述接口部件要连接到主机设备,所述程序包括:提取步骤,在向第二数据区域移动或复制被写入第一数据区域的数据或向第一数据区域移动或复制被写入第二数据区域的数据时,通过引用目录区域来提取要移动或复制的数据的引导簇的地址,所述目录区域承载写入到第一数据区域或第二数据区域的数据的引导簇地址;第一通知步骤,用于经由所述接口部件向主机设备通知在所述提取步骤中提取的引导簇的地址;第一接收步骤,用于响应于在所述第一通知步骤中的通知,而通过所述接口部件从主机设备来接收第一信号或第二信号,所述第一信号命令从第一数据区域向第二数据区域移动或复制数据,所述第二信号命令从第二数据区域向第一数据区域移动或复制数据;读取步骤,用于当在所述第一接收步骤中接收到所述第一信号或第二信号时,从识别信息表读取要移动或复制的数据的引导簇的地址的簇链,所述识别信息表由逻辑地址构成并且承载每个逻辑地址的预定识别信息,所述逻辑地址用于管理第一地址和第二地址;空余区域检测步骤,用于在从第一数据区域向第二数据区域移动或复制数据时从第二数据区域检测空余区域,而在从第二数据区域向第一数据区域移动或复制数据时从第一数据区域检测空余区域;移动/复制步骤,用于把要移动或复制的数据移动或复制到在所述空余区域检测步骤中检测的空余区域;更新步骤,当在所述移动/复制步骤中移动或复制数据时,更新在所述读取步骤中从所述识别信息表读取的簇链,以承载移动或复制的位置的地址;第二通知步骤,用于当在所述更新步骤中完成更新所述簇链时,通过所述接口部件向所述主机设备通知引导簇的被改变的地址;第二接收步骤,用于响应于第二通知步骤的通知,而通过所述接口部件来从所述主机设备接收用于命令改变所述引导簇的地址的信号;以及改变步骤,用于当在第二接收步骤中从主机设备接收到用于命令改变引导簇的地址的信号时,将在所述目录区域中的引导簇的地址改变为在所述移动/复制步骤中移动或复制的数据的引导簇的地址。
因此,按照本发明的复合存储设备包括非易失性固态存储器和记录介质,并且所述非易失性固态存储器的数据区域和所述记录介质的数据区域部分或全部地被整合,以便在所述非易失性固态存储器中记录的数据可以部分或全部地被移动到所述记录介质,而不在所述复合存储设备和主机设备之间传送所述数据,并且可以按照所移动的簇的配置来重建文件分配表(FAT),而在所述记录介质中记录的数据可以部分地被移动到所述非易失性固态存储器,而不在所述记录介质和所述主机设备之间传送所述数据,并且可以按照所移动的簇的配置来重建文件分配表。另外,在所述非易失性固态存储器中记录的数据可以部分或全部地被复制到所述记录介质,而不在所述复合存储设备和主机设备之间传送所述数据,并且可以按照所复制的簇的配置来重建所述文件分配表,而在所述记录介质中记录的数据可以部分地被复制到所述非易失性固态存储器,而不在所述记录介质和所述主机设备之间传送所述数据,并且可以按照所复制的簇的配置来重建所述文件分配表。
另外,按照本发明,可以把临时写入所述非易失性固态存储器的所保存数据自动地移动至将写入所保存数据的适当数据区域,而不在所述复合存储设备和主机设备之间传送所述数据,并且按照所移动的簇的配置来重建所述文件分配表。
另外,按照本发明,可以构建一种高度可靠的混合存储系统,其配备了用于检测冲击和振动的传感器,并且被适配来根据所述传感器的检测操作的结果而从非易失性固态存储器向记录介质,或相反方向,转换数据,以便如果所述非易失性固态存储器仅仅具有小的记录容量,则可以通过向所述记录介质的数据区域自动写回所保存的数据,来在所述非易失性固态存储器中自动保证空余区域。
附图说明
图1是通过使用按照本发明的复合存储设备而能够实现的数据存取系统的示意方框图,用于图解其配置;
图2是当通过预定的文件格式来管理按照本发明的复合存储设备的记录介质和非易失性固态存储器时的LBA空间和逻辑扇区空间的示意图解;
图3是每个识别信息的含义的示意图解;
图4是目录区域的示意图解;
图5是由按照本发明的复合存储设备和主机设备实现的数据存取系统的示意图解,其中,通过所述主机设备来管理在所述目录区域中存储的目录信息,并且通过所述复合存储设备来管理所述文件系统的FAT(文件分配表);
图6是将在非易失性固态存储器的数据区域中记录的数据移动到记录介质的数据区域的操作(移动处理)的流程图,用于图解操作序列;
图7是在将数据从所述非易失性固态存储器向所述记录介质移动的移动处理之前能够用于本发明的目的的文件的示意图解;
图8是当命令移动或复制数据时能够用于本发明的目的的命令的示意图解;
图9是当通知在移动或复制的位置的引导簇的地址时能够用于本发明的目的的命令的示意图解;
图10是当从所述非易失性固态存储器向所述记录介质移动数据的移动处理正在进行时的图7的文件的示意图解;
图11是在从所述非易失性固态存储器向所述记录介质移动数据的移动处理后的图7的文件的示意图解;
图12是将在所述记录介质的数据区域中记录的数据移动到所述非易失性固态存储器的数据区域的操作(移动处理)的流程图,用于图解操作序列;
图13是在将数据从所述记录介质向所述非易失性固态存储器移动的移动处理之前能够用于本发明的目的的文件的示意图解;
图14是当从所述记录介质向所述非易失性固态存储器移动数据的移动处理正在进行时图13的文件的示意图解;
图15是在从所述记录介质向所述非易失性固态存储器移动数据的移动处理后图13的文件的示意图解;
图16是将在所述非易失性固态存储器的数据区域中记录的数据复制到所述记录介质的数据区域的操作(复制处理)的流程图,用于图解操作序列;
图17是将在所述记录介质的数据区域中记录的数据复制到所述非易失性固态存储器的数据区域的操作(复制处理)的流程图,用于图解操作序列;
图18是在从所述记录介质向所述非易失性固态存储器复制数据的复制处理之前能够用于本发明的目的的文件的示意图解;
图19是当从所述记录介质向所述非易失性固态存储器复制数据的复制处理正在进行时图18的文件的示意图解;
图20是在从所述记录介质向所述非易失性固态存储器复制数据的复制处理后图18的文件的示意图解;
图21A是向数据存取系统的复合存储设备写入数据的操作的第一流程图,用于图解操作序列;
图21B是向数据存取系统的复合存储设备写入数据的操作的第二流程图,用于图解操作序列;
图21C是向数据存取系统的复合存储设备写入数据的操作的第三流程图,用于图解操作序列;
图22是复合存储设备的温度依存性的示意图解;
图23是当向记录介质的数据区域正在写入数据时由温度传感器检测到异常状态的示意图解;
图24是下述情况的示意图解:其中,记录介质的内部温度上升超过记录介质的操作保证温度范围,并且所有的剩余数据被写入到非易失性固态存储器的数据区域;
图25是在下述情况中写入数据的操作的第一示意图解:其中,记录介质的内部温度上升超过记录介质的操作保证温度范围,并且随后下降返回所述操作保证温度范围;
图26是在下述情况中写入数据的操作的第二示意图解:其中,记录介质的内部温度上升超过记录介质的操作保证温度范围,并且随后下降返回所述操作保证温度范围;
图27是复合存储设备的操作振动依存性的示意图解;
图28是复合存储设备的操作冲击依存性的示意图解;
图29是当在所述记录介质的数据区域和所述非易失性固态存储器的数据区域二者上记录相关数据时将在非易失性固态存储器中记录的数据移动到记录介质的处理的流程图;
图30是当在所述记录介质的数据区域和所述非易失性固态存储器的数据区域二者上记录相关数据时将在非易失性固态存储器中的数据移动到记录介质的处理之前文件的状态的示意图解;
图31是当在所述记录介质的数据区域和所述非易失性固态存储器的数据区域二者上记录相关数据时将在非易失性固态存储器中的数据移动到记录介质的处理期间文件的状态的示意图解;
图32是当在所述记录介质的数据区域和所述非易失性固态存储器的数据区域二者上记录相关数据时将在非易失性固态存储器中的数据移动到记录介质的处理之后文件的状态的示意图解;
图33是当在所述记录介质的数据区域和所述非易失性固态存储器的数据区域二者上记录相关数据时将在记录介质中记录的数据移动到非易失性固态存储器的处理的流程图;
图34是当在所述记录介质的数据区域和所述非易失性固态存储器的数据区域二者上记录相关数据时将在非易失性固态存储器中记录的数据自动移动到记录介质的处理的流程图;
图35A和35B是临时保存的簇表的示意图解;
图36是当在所述记录介质的数据区域和所述非易失性固态存储器的数据区域二者上记录相关数据时文件的状态的示意图解;
图37是当在所述记录介质的数据区域和所述非易失性固态存储器的数据区域二者上记录相关数据时,在将在非易失性固态存储器的数据区域中记录的数据自动移动到记录介质的(修复)处理期间,文件的状态的示意图解;
图38是当在所述记录介质的数据区域和所述非易失性固态存储器的数据区域二者上记录相关数据时,在将在非易失性固态存储器的数据区域中记录的数据自动移动到记录介质、并且修复部分数据的处理完成后,文件的状态的示意图解;以及
图39是由重复应用LBA的记录介质的部分区域和非易失性存储介质的部分区域形成的区域X的示意图解。
具体实施方式
本发明涉及复合存储设备,包括承载盘形记录介质的硬盘驱动器(HDD)和诸如快闪存储器之类的非易失性存储介质,并且被适配来根据预定的文件系统而将HDD的数据区域和非易失性存储介质的数据区域处理为部分或全部整合的数据区域。在下面的说明中,假定采用MS-DOS兼容FAT文件系统来作为所述复合存储设备的文件系统。
图1图解了数据存取系统1,它包括复合存储设备(混合硬盘驱动器)2,所述复合存储设备2由记录介质和非易失性存储介质复合形成,并且通过符合适当标准的接口部件3而连接到主机设备4,所述适当标准诸如IDE、SCSI、FC或USB。
主机设备4包括:CPU 10,被适配来执行预定的处理操作;存储器11,用于CPU 10的处理操作;以及接口控制部件12,用于与组件类型存储设备交换数据和控制信息。
主机设备4具体上是诸如视频摄像机、数字照相机或音乐播放器之类的应用设备,它被适配来有效地执行记录/再现处理,发挥复合存储设备2的优点。它通常向与其连接的复合存储设备2发出“识别设备命令”(ATA标准),并且获取与复合存储设备2相关联的参数信息,以便它可以容易地识别出所述复合存储设备2是由记录介质和非易失性固态存储器26复合形成的设备。或者,主机设备4可以是个人计算机等,被适配来根据在其中包含的文件系统来记录/再现数据。
如图1所示,复合存储设备2包括:头(head)部件21,它向记录介质20写入数据和从记录介质20读取数据;驱动部件22,它驱动记录介质20以每单位时间预定转数在预定方向上旋转;伺服控制部件23,用于控制所述头部件21和所述驱动部件22;读取/写入信道部件24,它连接到所述头部件21,并且对于被提供到它的数据执行预定的处理;缓冲存储器25,它临时缓冲数据;非易失性固态存储器26,它存储数据;HDD控制部件27,它控制伺服控制部件23和读取/写入信道部件24;处理器/控制器(CPU)28,它执行预定的处理操作,并且选择操作伺服控制部件23、读取/写入信道部件24等所需要的命令和参数;存储器29,由CPU 28使用来进行处理操作;接口控制部件30,它与主机设备4交换数据和控制信息;传感器31,它检测环境信息。
现在,参照图2来说明在记录介质20和非易失性固态存储器26之间的关系。图2是LBA(逻辑块地址)空间和逻辑扇区空间的示意图解。
记录介质20被FAT(文件分配表)文件系统管理,所述FAT文件系统将在以下更详细地说明,并且由至少具有数据区域DA1的诸如HD(硬盘)之类的盘形记录介质形成,在所述盘形记录介质,向预定数据大小的相应簇应用地址(以下称为物理地址)。
另一方面,非易失性固态存储器26是采用了FAT文件系统的NAND型快闪存储卡(记忆棒、致密快闪存储器(compact flash)、SD卡等),包括:数据区域DA2,其中从记录介质20的数据区域DA1的引导地址向预定数据大小的相应簇串行应用地址(以下称为存储器地址);系统入口(entry)区域SA,用于存储系统信息。所述系统入口区域SA继而包括:导入(boot)数据区域BA,用于存储导入信息;FAT区域FA,用于存储识别信息表(FAT),其中,对于每个预定地址(以下称为逻辑地址)写入预定的识别信息;以及目录区域DirA,用于存储目录信息。
按照本发明,记录介质20的数据区域DA1和非易失性固态存储器26的数据区域DA2被FAT文件系统组合,并且被管理为部分或全部整合的数据区域(以下称为组合数据区域DA)。
在此将说明FAT文件系统。FAT是表,其中,当将文件划分为多个簇并且记录时,描述簇的链接信息。它是用于管理主机设备4的格式化系统的表。格式化是将数据存储区域划分为预定大小的区域,并且向那些区域分配编号(物理地址)的操作。它包括:所谓的物理格式化,用于将在记录介质20上形成的轨道划分为被称为扇区的区域;以及逻辑格式化,用于将多个扇区组合为被称为簇的单位,并且形成系统入口区域SA、数据区域DA1和另一数据区域DA2。
扇区是在存储(通常512字节的)数据的记录介质20中使用的最小单位。对于本发明的目的,扇区也是最小的单位。主机设备4通过逻辑块地址(LBA)来存取记录介质20。在用于管理文件的FAT文件系统中,多个(N个)扇区被组合为簇,用作读取/写入数据的最小单位。
通过格式化而产生的系统入口区域SA包括导入数据区域BA、其中写入FAT的FAT区域FA和目录区域DirA。导入数据区域BA是从主机设备4看具有LBA“0000”的扇区,其中,记录了自举(bootstrap)代码和分区表。
如图3所示,诸如关于数据区域的空余空间信息之类的预定信息在FAT中被示出为识别信息。例如,识别信息“0000h”指示对应的簇在“空闲”状态中,识别信息“0002h-FFF6h”指示对应的簇在“被分配”状态,对应的数值是要接续的簇编号。识别编号“FFF7h”指示对应的簇是“有缺陷的簇”,而识别编号“FFF8h-FFFFh”指示对应的簇是文件的结尾(EOF)或在“被分配”的状态。
数据区域包括要用于管理文件信息的目录区域和其中实际写入数据的数据区域。如图4所示,目录区域用于存储关于每个目录(每个文件)的信息,包括文件名、扩展名、属性、保留区域(RES)、记录时间、记录日期、引导(开始)簇的编号(地址)和文件的文件大小(文件长度)。
按照本发明,在开始向复合存储设备2供电后首先被读出的系统入口区域SA不被布置在记录介质20中,而是被布置在非易失性固态存储器26中,所述记录介质20在开始供电后需要预定的时段来达到就绪状态,在所述就绪状态中,可以存取数据,所述非易失性固态存储器26可以瞬间达到可以存取数据的就绪状态。因此,记录介质20具有数据区域DA1,数据区域DA1被划分为预定大小的区域,向这些区域分配了各自的物理地址,而非易失性固态存储器26具有:数据区域DA2,它也被划分为预定大小的区域,向这些区域分配各自的存储地址;系统入口区域SA,包括FAT,通过布置与数据区域DA1的物理地址和数据区域DA2的存储地址对应的逻辑地址而形成所述FAT。
因为上述的布置,一旦复合存储设备2连接到主机设备4并且向设备2供电,则可以从系统入口区域SA读出数据。
伺服控制部件23控制驱动部件22以驱动记录介质20,来以每单位时间预定转数在预定方向上旋转,并且也控制头部件21以使得它存取记录介质20上的预定位置。
在数据写入操作时,读取/写入信道部件24编码(调制)所提供的数据,将它们变换为与记录/再现系统适配的一系列数字比特,随后将被变换的数据提供到头部件21。在数据读取操作时,读取/写入信道部件24从头部件21提供的所再现信号中去除高频噪声,随后通过模拟/数字转换器(ADC)来数字化它们,通常通过最大似然解码方法来对它们执行预定的处理,并且解调它们。
在数据写入操作时,缓冲存储器25在HDD控制部件27的控制下临时缓冲从主机设备4提供的数据,并且当其中累积的数据数量达到预定水平时,将数据读出并且提供到读取/写入信道部件24。在数据读取操作时,缓冲存储器25在HDD控制部件27的控制下临时缓冲从读取/写入信道部件24提供的数据,并且当其中累积的数据数量达到预定水平时,将所述数据读出并且通过接口控制部件30而提供到主机设备4。另外,在数据写入操作或数据读取操作时,缓冲存储器25临时缓冲数据,以减少由于传输速率的差别而导致的性能的劣化,如果有的话。
HDD控制部件27通过FAT文件系统来管理在缓冲存储器25和读取/写入信道部件23之间的数据发送/接收的操作,这将在后面更详细地说明,并且执行与数据格式化相关的处理。当执行与数据格式化相关的处理时,HDD控制部件27也使用纠错码来执行编码处理,并且执行与错误检测和纠错相关的处理。
传感器31包括:温度传感器31a,用于观察复合存储设备2的内部温度;以及加速度传感器31b,用于检测复合存储设备2的加速度或速度的改变。当发现所观察的内部温度低于或高于预定的温度范围时,温度传感器31a产生用于告知内部温度已经超过预定范围的信号S1,并且将它产生的信号提供到HDD控制部件27。当在向记录介质20写入数据的同时从温度传感器31a提供信号S1时,HDD控制部件27中止数据写入操作,并且控制所述操作以便向非易失性固态存储器26写入正在被写入记录介质20的数据的簇。
当内部温度返回预定范围时,温度传感器31a产生用于告知内部温度已经返回预定范围的信号S2,并且将它产生的信号S2提供到HDD控制部件27。当从温度传感器31a提供信号S2时,HDD控制部件27终止向非易失性固态存储器26写入数据的操作,并且控制所述操作以便向记录介质20写入被写入到非易失性固态存储器26的数据的簇。
加速度传感器31b检测复合存储设备2的加速度或速度的改变,并且通过计算来确定来自加速度或速度的改变的冲击程度。如果通过计算而确定的冲击程度被发现超过了预定范围,则它产生用于告知发现冲击程度超过预定范围的信号S3,并且将它产生的信号S3提供到HDD控制部件27。当在向记录介质20写入数据的同时从加速度传感器31b提供信号S3时,HDD控制部件27中止所述数据写入操作,并且控制所述操作以便向非易失性固态存储器26写入正被写入记录介质20的数据的簇。
当冲击程度返回预定范围时,加速度传感器31b产生用于告知冲击程度已经返回到预定范围的信号S4,并且将它产生的所述信号S4提供到HDD控制部件27。当从加速度传感器31b提供信号S4时,HDD控制部件27终止向非易失性固态存储器26写入数据的所述操作,并且控制所述操作以便向记录介质20写入被写入到非易失性固态存储器26的数据的簇。
另外,加速度传感器31b检测复合存储设备2的加速度和频率,并且通过计算来确定来自它检测的加速度和频率的振动程度。如果通过计算而确定的振动程度被发现超过了预定范围,则它产生用于告知振动程度被发现超过预定范围的信号S5,并且将它产生的信号S5提供到HDD控制部件27。当在向记录介质20写入数据的同时从加速度传感器31b提供信号S5时,HDD控制部件27中止所述数据写入操作,并且控制所述操作以便向非易失性固态存储器26写入正被写入记录介质20的数据的簇。
当振动程度返回预定范围时,加速度传感器31b产生用于告知振动程度已经返回预定范围的信号S6,并且将它产生的所述信号S6提供到HDD控制部件27。当从加速度传感器31b提供所述信号S6时,HDD控制部件27终止向非易失性固态存储器26写入数据的操作,并且控制所述操作以便向记录介质20写入被写入非易失性固态存储器26的数据的簇。
传感器31可以另外包括降落(falling)速度检测传感器,用于检测复合存储设备2的降落速度。当降落速度检测传感器检测到持续了超过预定时段的复合存储设备2的降落速度时,它产生告知复合存储设备的降落速度被发现持续了超过预定时段的信号S7,并且将它产生的所述信号S7提供到HDD控制部件27。当正向记录介质20写入数据的同时从降落速度检测传感器提供信号S7时,HDD控制部件27中止所述数据写入操作,并且控制所述操作以便向非易失性固态存储器26写入正被写入记录介质20的数据的簇。
现在,作为示例,将参照图3来说明当数据存取系统1的主机设备4是PC并且复合存储设备2被用作普通HDD时进行的复合存储设备2的操作。但是,注意,不像普通的HDD那样,复合存储设备2包括非易失性固态存储器26。
当通过预定的开始序列来启动主机设备4时,它读出在复合存储设备2的非易失性固态存储器26的系统入口区域SA的目录区域中写入的信息(以下称为目录信息)和FAT,并且在存储器11中展开它读出的所述目录信息和FAT。另外,每次主机设备4准备、擦除或修改文件时,它在存储器11的内部更新或改变目录信息和FAT,并且同时向复合存储设备2的非易失性固态存储器26的系统入口区域SA反映所更新或改变的内容。
另外,在本实施例中,在非易失性固态存储器26中形成系统入口区域SA,它包括存储FAT的FAT区域FA和存储目录信息的目录区域DirA,非易失性固态存储器26的剩余区域是包括数据区域DA2的组合数据区域DA。
在本实施例中,FAT整体地处理组合数据区域DA,所述组合数据区域DA包括记录介质20的数据区域DA1和非易失性固态存储器26的数据区域DA2。因此,地址0000h至7FFFh作为对应于数据区域DA1的逻辑地址而被分配,地址8000h-8FFFh作为对应于数据区域DA2的逻辑地址而被分配。因此,在按照FAT而进行的数据写入操作中,仅仅当所有的数据区域DA1已经被分配到数据时才向数据区域DA2写入数据。如下所述,在包括记录介质20的数据区域DA1和非易失性固态存储器26的数据区域DA2的组合数据区域DA中,从LBA的角度来看,数据区域DA1的一部分和数据区域DA2的一部分可以彼此重叠。
因为记录介质20的数据区域DA1的数据容量对应于32,767(7FFF)个簇,因此它是
另一方面,因为非易失性固态存储器26的数据区域DA2的数据容量对应于4,096个簇,因此它是
如图5所示,当启动数据存取系统1时,它从非易失性固态存储器26的目录区域DirA读出目录信息,并且在主机设备4的存储器11中展开它读出的目录信息,同时它也从FAT区域FA读出FAT,并且在存储器29中展开所述FAT。作为如此进行的结果,主机设备4拥有对于目录的决定权,而复合存储设备2拥有FAT的决定权。因此,复合存储设备2自身确定在组合的数据区域DA中的可用空余区域(空余簇)和FAT链(构成文件的簇的链接信息)。另一方面,主机设备4仅仅指定所述FAT链的开始点(引导簇编号),复合存储设备2自身指定所有随后的空余簇。
<示例1:从数据区域DA2向数据区域DA1移动数据的(移动)处理>
现在,参照图6的流程图来说明当文件1是很少被访问的文件时向记录介质20的数据区域DA1移动在复合存储设备2的非易失性固态存储器26的数据区域DA2中记录的数据文件(文件1)的处理(移动处理)的序列。具体而言,在此假定,通过使用如图7中所示的LBA(逻辑块地址)空间和逻辑扇区空间来将被写入到数据区域DA2的“20761h-20766h”的文件1移动到数据区域DA1的空余区域“01231h-01236h”。注意,图7图解了在移动处理前的文件的状态。
主机设备4向复合存储设备2发出命令,要求向它通知文件1的引导簇地址。响应于从主机设备4发出的命令,复合存储设备2发送来自目录区域DirA的文件1的引导簇地址“20761h”。然后,主机设备4发出命令,用于根据它接收的引导簇地址来将文件1从数据区域DA2向数据区域DA1移动(图8)。图8示出,在特征项下的“EN”,表示由于在数据写入操作期间产生的起因(“0”指示“禁止”,而“1”指示“使能”),被写入到数据区域DA2的临时保存的数据被移动到数据区域DA1;在复制项下的数据移动方法(“0”指示移动数据,而“1”指示复制数据);以及在“DRF(方向标志)”项下的数据移动方向(“0”指示将在数据区域DA2中写入的数据移动到数据区域DA1,而“1”指示将在数据区域DA1中写入的数据移动到数据区域DA2)。
返回参见图6,在步骤ST1中,复合存储设备2将要在寄存器中移动的文件的引导簇地址设置为从主机设备4发出的命令的引数(argument)。在这个示例中,“20761h”被设置为引导簇地址。
然后,在步骤ST2中,复合存储设备2确定是否所设置的簇地址示出了正常值。在接收到所述命令时,复合存储设备2从FAT区域FA读出要移动的文件1的引导簇地址“20761h”的簇链,并且将其存储在存储器29中。然后,它通过引用所述簇链而确定是否所设置的簇地址示出了正常值。复合存储设备2当所设置的簇地址示出正常值时进行到步骤ST3,而当所设置的簇地址示出除了正常值之外的值时进行到步骤ST9。
在步骤ST3,复合存储设备2从数据区域DA1的簇区域“001E0h-201FFh”提取空余簇。
在步骤ST4,复合存储设备2确定是否检测到任何空余簇作为在步骤ST3中的提取操作的结果。当确定检测到空余簇时,复合存储设备2进行到步骤ST5,而当确定没有检测到簇时,它进行到步骤ST10。在下面假定簇“01231h”被提取为空余簇。
在步骤ST5,复合存储设备2根据在步骤ST1或步骤ST8设置的簇地址来从数据区域DA2读出对应的数据,并且向在步骤ST4检测的空余簇写入它读出的数据。例如,复合存储设备2读出文件1的第一簇数据,并且基于“20761h”,将它们移动到“01231h”。
在步骤ST6,复合存储设备2更新在存储器29中存储的簇链,并且重写FAT信息。例如,它可以写入指示在与移动的原点“20761h”对应的簇链中的空余簇的识别信息、和指示在与移动目的地“01231h”对应的簇链中的分配状态的识别信息。
在步骤ST7,复合存储设备2通过引用在存储器29中存储的簇链而确定是否在步骤ST5中移动的数据对应于最后的簇地址。当它们不是对应于最后簇地址的数据时,复合存储设备2进行到步骤ST8,并且当它们是对应于最后簇地址的数据时,进行到步骤ST10。
在步骤ST8,复合存储设备2通过引用在存储器29中存储的簇链而提取下一簇地址。
另一方面,在步骤ST9,复合存储设备2在错误寄存器中设置异常结束值。
在步骤ST10,复合存储设备2推断出FAT链。在这个示例中,它写入指示与“01236h”对应的FAT中的EOF的识别信息。
在步骤ST11,复合存储设备2向主机设备4通知在移动后的文件1的引导簇地址(图9)。在这个示例中,所述引导簇地址是“01231h”。
图10图解了在移动处理期间文件的状态,图11图解了在移动处理后文件的状态。
主机设备4按照在步骤ST11中向它通知的引导簇地址来改变文件1的目录信息,并且命令复合存储设备2更新所述目录信息。
复合存储设备2可以通过执行上述处理,并且写入用于指示在原始FAT链中的空余状态的识别信息,如图11所示,来保证在数据区域DA2中的空余区域。
<示例2:从数据区域DA1向数据区域DA2移动数据的(移动)处理>
现在,参照图12的流程图来说明,当文件1是频繁被访问的文件时,向非易失性固态存储器26的数据区域DA2移动在复合存储设备2的记录介质20的数据区域DA1中记录的数据文件(文件1)的处理(移动处理)的序列。具体而言,通过使用如图13中所示的LBA(逻辑块地址)空间和逻辑扇区空间来将被写入到数据区域DA1的“01231h-01236h”的文件1移动到数据区域DA2的空余区域“20761h-20766h”。
主机设备4向复合存储设备2发出命令,要求向它通知文件1的引导簇地址。响应于从主机设备4发出的命令,复合存储设备2发送来自目录区域DirA的文件1的引导簇地址“01231h”。然后,主机设备4发出命令,用于根据它接收的引导簇地址来将文件1从数据区域DA1向数据区域DA2移动(图8)。
步骤ST20中,复合存储设备2将要移动的文件的引导簇地址设置为从主机设备4发出的命令的引数。在这个示例中,“01231h”被设置为引导簇地址。
然后,在步骤ST21,复合存储设备2确定是否所设置的簇地址示出了正常值。在接收到命令时,复合存储设备2从FAT区域FA读出要移动的文件1的引导簇地址“01231h”的簇链,并且将其存储在存储器29中。然后,它通过引用所述簇链而确定是否所设置的簇地址示出了正常值。复合存储设备2当所设置的簇地址示出正常值时进行到步骤ST22,而当所设置的簇地址示出除了正常值之外的值时进行到步骤ST28。
在步骤ST22,复合存储设备2从数据区域DA2的簇区域“20200h-20FFFh”提取空余簇。
在步骤ST23,复合存储设备2确定是否检测到任何空余簇作为在步骤ST22中的提取操作的结果。复合存储设备2当确定检测到空余簇时进行到步骤ST24,而当确定没有检测到簇时,进行到步骤ST29。在下面假定簇“20761h”被提取为空余簇。
在步骤ST24,复合存储设备2根据在步骤ST20或步骤ST27设置的簇地址来从数据区域DA1读出对应的数据,并且向在步骤ST23检测的空余簇写入它读出的数据。例如,复合存储设备2读出文件1的第一簇数据,并且基于“01231h”将它们移动到“20761h”。
在步骤ST25,复合存储设备2更新在存储器29中存储的簇链,并且重写FAT信息。当移动对应于引导簇地址的数据时,写入指示“被分配”状态的识别信息以更新所述簇链。例如,它可以写入用于指示在对应于移动原点“01231h”的簇链中的空余簇的识别信息和用于指示在对应于移动目的地“20761h”的簇链中的分配状态的识别信息。
在步骤ST26,复合存储设备2通过引用在存储器29中存储的簇链而确定是否在步骤ST24中移动的数据对应于最后的簇地址。当它们不是对应于最后簇地址的数据时,复合存储设备2进行到步骤ST27,而当它们是对应于最后簇地址的数据时,它进行到步骤ST29。
在步骤ST27,复合存储设备2通过引用在存储器29中存储的簇链而提取下一簇地址。
另一方面,在步骤ST28,复合存储设备2在错误寄存器中设置异常结束值。
在步骤ST29,复合存储设备2推断出FAT链。在这个示例中,它写入指示对应于“20766h”的FAT中EOF的识别信息。
在步骤ST30,复合存储设备2向主机设备4通知在移动后的文件1的引导簇地址(图9)。在这个示例中,所述引导簇地址是“20761h”。
图13图解了在移动处理之前文件的状态,图14图解了在移动处理期间文件的状态,图15图解了在移动处理后文件的状态。
主机设备4按照在步骤ST30中向它通知的引导簇地址来改变文件1的目录信息,并且命令复合存储设备2更新所述目录信息。
复合存储设备2可以通过执行上述处理,并且写入用于指示在原始FAT链中的空余状态的识别信息,如图15所示,来保证在数据区域DA1中的空余区域。
<示例3:从数据区域DA2向数据区域DA1复制数据的(复制)处理>
现在,参照图16的流程图来说明,当文件1是很少被访问的文件时,向记录介质20的数据区域DA1复制在复合存储设备2的非易失性固态存储器26的数据区域DA2中记录的数据文件(文件1)的处理(复制处理)的序列。具体而言,通过使用LBA(逻辑块地址)空间和逻辑扇区空间来将被写入到数据区域DA2的“20761h-20766h”的文件1复制到数据区域DA1的空余区域“01231h-01236h”。
主机设备4向复合存储设备2发出命令,请求向它通知文件1的引导簇地址。响应于从主机设备4发出的命令,复合存储设备2发送来自目录区域DirA的文件1的引导簇地址“20761h”。然后,主机设备4发出命令,用于根据它接收的引导簇地址来将文件1从数据区域DA2向数据区域DA1复制(图8)。
在步骤ST40中,复合存储设备2将要复制的文件的引导簇地址设置为从主机设备4发出的命令的引数。在这个示例中,“20761h”被设置为引导簇地址。
然后,在步骤ST41中,复合存储设备2确定是否所设置的簇地址示出了正常值。在接收到所述命令时,复合存储设备2从FAT区域FA读出要复制的文件1的引导簇地址“20761h”的簇链,并且将其存储在存储器29中。然后,它通过引用所述簇链而确定是否所设置的簇地址示出了正常值。复合存储设备2当所设置的簇地址示出正常值时进行到步骤ST42,而当所设置的簇地址示出除了正常值之外的值时进行到步骤ST48。
在步骤ST42,复合存储设备2从数据区域DA1的簇区域“001E0h-201FFh”提取空余簇。
在步骤ST43,复合存储设备2确定是否检测到任何空余簇作为在步骤ST42中的提取操作的结果。当确定检测到空余簇时,复合存储设备2进行到步骤ST44,当确定没有检测到簇时,它进行到步骤ST48。在下面假定簇“01231h”被提取为空余簇。
在步骤ST44,复合存储设备2根据在步骤ST40或步骤ST47设置的簇地址来从数据区域DA2读出对应的数据,并且向在步骤ST43检测的空余簇写入它读出的数据。例如,复合存储设备2读出文件1的第一簇数据,并且基于“20761h”将它们复制到“01231h”。
在步骤ST45,复合存储设备2更新在存储器29中存储的簇链,并且重写FAT信息。例如,它可以写入用于指示在与复制的原点“20761h”对应的簇链中的空余簇的识别信息。
在步骤ST46,复合存储设备2通过引用在存储器29中存储的簇链而确定是否在步骤ST44中复制的数据对应于最后的簇地址。当它们不是对应于最后簇地址的数据时,复合存储设备2进行到步骤ST47,而当它们是对应于最后簇地址的数据时,它进行到步骤ST49。
在步骤ST47,复合存储设备2通过引用在存储器29中存储的簇链而提取下一簇地址。
另一方面,在步骤ST48,复合存储设备2在错误寄存器中设置异常结束值。
在步骤ST49,复合存储设备2推断出FAT链。在这个示例中,它写入指示对应于“01236h”的FAT中EOF的识别信息。
在步骤ST50,复合存储设备2向主机设备4通知复制后文件1的引导簇地址(图9)。在这个示例中,所述引导簇地址是“01231h”。
主机设备4按照在步骤ST50中向它通知的引导簇地址来改变文件1的目录信息,并且命令复合存储设备2更新所述目录信息。
<示例4:从数据区域DA1向数据区域DA2复制数据的(复制)处理>
现在,参照图17的流程图来说明,当文件1是频繁被访问的文件时,向非易失性固态存储器26的数据区域DA2复制在复合存储设备2的记录介质20的数据区域DA1中记录的数据文件(文件1)的处理(复制处理)的序列。具体而言,通过使用如图18中所示的LBA(逻辑块地址)空间和逻辑扇区空间来将被写入到数据区域DA1的“01231h-01236h”的文件1复制到数据区域DA2的空余区域“20761h-20766h”。
主机设备4向复合存储设备2发出命令,请求向它通知文件1的引导簇地址。响应于从主机设备4发出的命令,复合存储设备2发送来自目录区域DirA的文件1的引导簇地址“01231h”。然后,主机设备4发出命令,用于根据它接收的引导簇地址来将文件1从数据区域DA1向数据区域DA2复制(图8)。
步骤ST60中,复合存储设备2将寄存器中要复制的文件的引导簇地址设置为从主机设备4发出的命令的引数。在这个示例中,“01231h”被设置为引导簇地址。
然后,在步骤ST61,复合存储设备2确定是否所设置的簇地址示出了正常值。在接收到所述命令时,复合存储设备2从FAT区域FA读出要复制的文件1的引导簇地址“01231h”的簇链,并且将其存储在存储器29中。然后,它通过引用所述簇链而确定是否所设置的簇地址示出了正常值。复合存储设备2当所设置的簇地址示出正常值时进行到步骤ST62,而当所设置的簇地址示出除了正常值之外的值时进行到步骤ST68。
在步骤ST62,复合存储设备2从数据区域DA2的簇区域“20200h-20FFFh”提取空余簇。
在步骤ST63,复合存储设备2确定是否检测到任何空余簇作为在步骤ST62中的提取操作的结果。复合存储设备2当确定检测到空余簇时进行到步骤ST64,当确定没有检测到簇时,进行到步骤ST69。在下面假定簇“20761h”被提取为空余簇。
在步骤ST64,复合存储设备2根据在步骤ST60或步骤ST67设置的簇地址来从数据区域DA1读出对应的数据,并且向在步骤ST63检测的空余簇写入它读出的数据。例如,复合存储设备2读出文件1的第一簇数据,并且基于“01231h”将它们复制到“20761h”。
在步骤ST65,复合存储设备2更新在存储器29中存储的簇链,并且重写FAT信息。当复制对应于引导簇地址的数据时,写入用于指示“被分配”状态的识别信息以更新所述簇链。例如,它可以写入用于指示在与复制的原点“01231h”对应的簇链中的空余簇的识别信息。
在步骤ST66,复合存储设备2通过引用在存储器29中存储的簇链而确定是否在步骤ST64中复制的数据对应于最后的簇地址。当它们不是对应于最后簇地址的数据时,复合存储设备2进行到步骤ST67,而当它们是对应于最后簇地址的数据时,进行到步骤ST69。
在步骤ST67,复合存储设备2通过引用在存储器29中存储的簇链而提取下一簇地址。
另一方面,在步骤ST68,复合存储设备2在错误寄存器中设置异常结束值。
在步骤ST69,复合存储设备2推断出FAT链。在这个示例中,它写入指示对应于“20766h”的FAT中EOF的识别信息。
在步骤ST70,复合存储设备2向主机设备4通知复制后文件1的引导簇地址(图9)。在这个示例中,所述引导簇地址是“20761h”。
图18图解了在复制处理之前文件的状态,图19图解了在复制处理期间文件的状态,图15图解了复制处理后文件的状态。
主机设备4按照在步骤ST70中向它通知的引导簇地址来改变文件1的目录信息,并且命令复合存储设备2更新所述目录信息。
<示例5>
现在参照图21A、21B和21C的流程图来说明操作序列,按照所述操作序列,复合存储设备2根据传感器31是否在向由复合存储设备2的记录介质20和非易失性固态存储器26形成的组合数据区域DA中写入数据的操作中检测到异常状态,而在组合数据区域DA中写入从主机设备4提供的数据,其中,主机设备4管理目录信息,复合存储设备2管理FAT。
在步骤ST80,HDD控制部件27确定是否传感器31检测到异常状态,如图21A中所示。如果传感器31检测到异常状态,则它产生信号S1、S3、S5或S7,并且将所述信号提供到HDD控制部件27。当传感器31没有检测到任何异常状态,因而检测到正常状态时,复合存储设备2进行到步骤ST81(见图21C),而当传感器31检测到异常状态时它进行到步骤ST90。
在步骤ST81,HDD控制部件27通常通过参见在记录介质20中包含的盘的每单位时间的转数是否已经达到指定的数目,而确定是否记录介质20处于有效状态,从而对于进行数据写入操作准备就绪。当HDD控制部件27确定记录介质20处于有效状态中时,复合存储设备2进行到步骤ST82(见图21B),但当盘停止或正在停止时进行到步骤ST97,而当记录介质20刚刚启动因而没有对于进行数据写入操作准备就绪时,进行到步骤ST98。
在步骤ST82,HDD控制部件27从记录介质20的数据区域DA1提取空余的簇。由于记录介质20处于有效状态中,因此HDD控制部件27从记录介质20的数据区域DA1提取空余簇。
在步骤ST83,HDD控制部件27确定是否在步骤ST82中检测的空余簇中要记录的数据是第一数据,因而所述簇是第一簇。当所检测的簇是第一簇时,复合存储设备2进行到步骤ST85,而当所检测的簇不是第一簇时进行到步骤ST84。
在步骤ST84,HDD控制部件27执行用于将FAT链连接到要写入数据的空余簇的处理。HDD控制部件27将在存储器29中展开的FAT上的在步骤ST82中提取的簇的地址“0000h”改变为要写入数据的簇的地址,并且更新所述FAT链。
另一方面,在步骤ST85,HDD控制部件27使得要写入数据的空余簇为“被分配”。HDD控制部件27向在存储器29中展开的FAT上的要写入数据的空余簇的地址写入指示“被分配”状态的信息。
在步骤ST86,HDD控制部件27在步骤ST82中检测到空余簇的数据区域DA1中写入数据。
在步骤ST87,HDD控制部件27确定是否传感器31检测到异常状态。当传感器31没有检测到任何异常状态、因而检测到正常状态时,复合存储设备2进行到步骤ST96,而当传感器31检测到异常状态时进行到步骤ST88。
在步骤ST88,HDD控制部件27删除在步骤ST84或步骤ST85中更新的FAT链,在数据区域DA2中检测空余簇,并且重新连接所述FAT链。
在步骤ST89,HDD控制部件27在步骤ST88中检测到空余簇的数据区域DA2中写入数据。随后,复合存储设备2进行到步骤ST103。
现在,说明步骤ST88和ST89以及有关问题。
<示例5-1>
复合存储设备2被适配来通过温度传感器31a来观察复合存储设备2的内部温度。温度传感器31a可以是热电偶、热敏电阻或某些其它的类似元件。HDD控制部件27按照从温度传感器31a提供的信号而确定是否内部温度超过了记录介质20的操作保证温度范围的上限或下限,并且也确定是否向记录介质20写入数据的操作要继续或从记录介质20向非易失性固态存储器26转换。现在,参照图22来说明记录介质20的操作保证温度。
图22是通过实际观察而确定的记录介质20的温度依存性的示意图解。从图22,可以看到,记录介质20的操作保证范围在摄氏5度和50度之间。图22中的三角指示通过实际观察而获得的数据,曲线表示通过实际观察而获得的数据的近似线。在图22的图中,水平轴指示温度(摄氏度),垂直轴指示在顺序数据写入操作中的数据传输速率(M比特/秒),在所述顺序数据写入操作中,在连续区域中连续地写入数据。在图22中,阴影区域(低于大约摄氏0度并且高于摄氏70度)指示在非易失性固态存储器26的操作保证温度范围之外的温度区域。
复合存储设备2可以通过按照图22的图的数据而选择性地驱动记录介质20和非易失性固态存储器26,来整体地将操作保证温度范围保持在大约摄氏0度和大约摄氏70度之间。
因此,温度传感器31a被适配来当内部温度下降到低于大约摄氏0度或上升到超过大约摄氏70度时产生用于通知异常状态的信号S1,并且向HDD控制部件27发送所述信号S1。另一方面,温度传感器31a当内部温度返回在大约摄氏0度和大约摄氏70度之间的温度范围中时产生用于通知正常状态的信号S2,并且向HDD控制部件27发送所述信号S2。
例如,假定当在完成向数据区域DA1的“1234h”和“1235h”分别写入文件1的第一簇数据和第二簇数据的操作后,文件1的第三簇数据正在被写入数据区域DA1的“1236h”时(图23),内部温度达到摄氏70度。然后,HDD控制部件27从温度传感器31a接收到信号S1。因此,HDD控制部件27假定在它向主机设备4发送“结束写入”命令之前在记录介质20中发生异常状态,并且停止驱动记录介质20。因此,HDD控制部件27确定没有正确地完成向记录介质20写入数据(第三簇数据)的操作,并且不在FAT链的结尾指定簇。然后,HDD控制部件27提取在非易失性固态存储器26上的空余簇。其后,HDD控制部件27按照所提取的空余簇的地址“8765h”来更新FAT链,并且向数据区域DA2的“8765h”重写数据(第三簇数据)。在完成重写操作后,HDD控制部件27向主机设备4发送“结束写入”命令。
图24示意地图解了当在温度传感器31a检测到超过上限(大约摄氏70度)的内部温度后,文件1的第三簇数据和所有的后续数据正在被写入数据区域DA2时,存储区域的最终配置。注意,在图24中,通过FAT链“1234h→1235h→8765h→8766h...8770h(EOF)”来连接文件1的数据。
图25示意地图解了,当在完成向数据区域DA1的“1234h”和“1235h”分别写入第一簇数据和第二簇数据的操作后,正在向“1236h”写入文件1的第三簇数据时,内部温度超过操作保证温度范围的上限(大约摄氏70度)的情况下,以及当在完成向数据区域DA2的“8765h”和“8766h”分别写入文件1的第三簇数据和第四簇数据的操作后,正在向“8767h”写入第五簇数据时,内部温度返回操作保证温度范围(在大约摄氏0度和大约摄氏70度之间)的情况下,组合数据区域DA的配置。下面说明在图25的情况下HDD控制部件27的操作。
随着HDD控制部件27当正在向“8767h”写入第五簇数据时,从温度传感器31a接收到告知内部温度返回操作保证温度范围的信号S2,而执行启动记录介质20的处理。HDD控制部件27保持向数据区域DA2写入数据,直到记录介质20被启动和完全进入有效状态。因此,在本实施例中,HDD控制部件27控制数据写入操作,以便第五簇数据和第六簇数据被分别写入到“8767h”和“8768h”。它仅仅当确认记录介质20已经变得完全就绪时停止向数据区域DA2写入数据的操作,然后控制数据写入操作以便第七簇数据和随后的簇的数据被写入到数据区域DA1(图26)。
注意,在图26中,通过FAT链“1234h→1235h→8765h→8766h→8767h→8768h→1236h→1237h→1238h...123Ch(EOF)”来连接文件1的数据。
虽然在上述的说明中假定内部温度超过操作保证温度范围的上限,但是当内部温度下降到低于下限(大约摄氏0度)时可以执行类似的处理。
<示例5-2>
复合存储设备2被适配来通过加速度传感器31b来观察被施加到它的振动。能够观察在一维方向、二维方向或三维方向上的振动的元件可以选择性地用于加速度传感器31b。加速度传感器31b可以从被输入到它的振动频率和强度来获取(通过计算而确定)振动的频率和强度。然后,它确定是否所述值超过记录介质20的容许范围以及是否向记录介质20写入数据的操作要继续或从记录介质20向非易失性固态存储器26转换。现在,参照图27来说明记录介质20的操作诱发的振动的容许范围。
图27是通过实际观察而确定的记录介质20的振动依存性的示意图解。从图27,可以看到,记录介质20的操作诱发振动的容许范围在0G和2G之间。在图27中的三角指示通过实际观察而获得的数据,曲线表示通过实际观察而获得的数据的近似线。在图27中的图中,水平轴指示振动强度(G),垂直轴指示在顺序数据写入操作中的数据传输速率(M比特/秒),在所述顺序数据写入操作中,在连续区域中连续地写入数据。在图27中,阴影区域(高于大约15G)指示超过非易失性固态存储器26的操作诱发振动的容许范围的振动区域,其中不保证记录介质26的操作。
复合存储设备2可以通过按照图27的图的数据而选择性地驱动记录介质20和非易失性固态存储器26而整体地将操作诱发振动的容许范围保持在大约0G和15G之间。要对于振动执行的处理操作类似于要对于温度执行的上述处理操作,除了对于振动不存在下限,仅仅参照上限。
因此,加速度传感器31b被适配来当内部振动上升到超过大约15G时产生用于通知异常状态的信号S3,并且向HDD控制部件27发送所述信号S3。另一方面,加速度传感器31b当内部振动返回不大于15G的操作诱发振动的容许范围时产生用于通知正常状态的信号S4,并且向HDD控制部件27发送信号S4。
通常,记录介质20的操作振动保证范围定义在大约10Hz和150Hz之间的频带中的振动强度。这个频带比在大约500Hz和大约1,500Hz之间的伺服频带足够地低,因此可以提供足够的伺服增益。不能在接近并且大于伺服频带的频率区域中期望错误压缩,因此,振动将直接被发送到头部件21。这样高频的振动可以通过声音(空气的振动)而被施加到设备。可以全面地发挥复合存储设备2的特性,并且选择具有这样相对高频率的振动的数据区域。
<示例5-3>
复合存储设备2被适配来通过加速度传感器31b来观察被施加到它的冲击的强度。能够观察在一维方向、二维方向或三维方向上的振动的元件可以选择性地用于加速度传感器31b。不像振动和温度改变那样,冲击不是有规律地发生,而是离散和过渡的现象。在其内部布置了加速度传感器的已知记录介质包括:配备了当检测到大于预定水平的加速度时,将头部件21从记录介质20的顶部缩回,保护正被其驱动的盘的机构的那些;以及被适配来监视伺服锁和PLL锁,并且如果它们中的任何一个示出了异常状态,则判断记录介质20经受诸如冲击之类的异常现象(没有识别出原因),从而将头部件21从记录介质20的顶部缩回的那些。本发明对于已经配备了将头部件21从记录介质20的顶部缩回的机构的记录介质20是有效的。按照本发明,当将头部件21从记录介质20的顶部缩回时,向非易失性固态存储器26写入数据,并且当冲击不再继续时,记录介质20重新启动,以便其后向记录介质20记录数据。
现在,参照图28来说明记录介质20的冲击的容许范围。图28是通过实际观察而确定的记录介质20的冲击依存性的示意图解。从图28,将看到冲击的容许范围在速度改变上小于3.1米/秒(例如在500G、1毫秒半正弦(1ms-half-sine)时)。在图28中的三角指示通过实际观察而获得的数据,曲线指示通过实际观察而获得的数据的近似线。在图28的图中,水平轴指示速度改变(米/秒),垂直轴指示在连续区域中连续地写入数据的顺序数据写入操作中的数据传输速率(M比特/秒)。在图28中,阴影区域(大于大约18.7米/秒)指示超过非易失性固态存储器26的冲击容许范围的冲击区域,其中不保证记录介质20的操作。
复合存储设备2可以通过按照图28的图的数据而选择性地驱动记录介质20和非易失性固态存储器26来整体地将冲击的容许范围保持在18.7米/秒之下(例如在3,000G、1毫秒半正弦时)。
虽然经常通过G(9.8m/s2)来表达加速度的强度,但是也可以通过考虑加速度的持续期间的速度改变(米/秒)来表达它。当将速度改变用作索引时,可以使用同一处理。可以将在100G、10毫秒半正弦时的冲击转换为速度改变,如下:
速度改变=100×9.8(m/s2)×10e-3(秒)×2/3.14159=6.2(米/秒)
<示例5-4>
复合存储设备2被适配来通过加速度传感器31b来观察被施加到它的冲击的强度。可以选择性地使用能够观察在一维方向、二维方向或三维方向上的振动的元件来用于加速度传感器31b。当使得物体从静止状态自由降落时,所述物体具有1G(9.8m/s2)的加速度。如果所述降落方向不是恒定的,则难以通过能够观察仅仅在一维方向上的加速度的加速度传感器31b来观察恒定的加速度。具体上,在物体正在旋转地所述物体自由降落的情况下,必须通过三维向量的强度来观察加速度。因此,强烈推荐使用被适配来观察在三维方向上的加速度的元件来用于加速度传感器31b。
当加速度传感器31b判断大约1G(9.8m/s2)的加速度持续了预定时段时,它产生告知此的信号S7,并且向HDD控制部件27提供它产生的信号S7。因此,复合存储设备2可以在记录介质20与地面撞击之前保护记录介质20,并且在头部件21与记录介质20撞击之前缩回头部件21。
在步骤ST90,HDD控制部件27通常通过查看是否在记录介质20中包含的盘的每单位时间的转数已经达到指定数目,来确定是否记录介质20在有效状态、因而准备好进行数据写入操作。复合存储设备2当HDD控制部件27确定记录介质20在有效状态中或正在启动时进行到步骤ST91,但是当盘停止或正在停止时进行到步骤ST92。
在步骤ST91,HDD控制部件27产生用于停止记录介质20的信号(状态),并且向记录介质20发送它产生的信号。在从HDD控制部件27接收到提示它停止的信号时,记录介质20停止其中包含的盘的旋转。
在步骤ST92,HDD控制部件27从在组合数据区域DA中的非易失性固态存储器26的数据区域DA2提取空余簇。
在步骤ST93,HDD控制部件27确定是否在步骤ST92中检测的空余簇中要记录的数据是第一数据、因而所述簇是第一簇。复合存储设备2当所检测的簇是第一簇时进行到步骤ST95,而当所检测的簇不是第一簇时进行到步骤ST94。
在步骤ST94,HDD控制部件27执行用于将FAT链连接到要写入数据的空余簇的处理。HDD控制部件27把在存储器29中展开的FAT上的、在步骤ST92中提取的簇的地址“0000h”改变为要写入数据的簇的地址,并且更新FAT链。
另一方面,在步骤ST95,HDD控制部件27使得要写入数据的空余簇为“被分配”。HDD控制部件27向在存储器29中展开的FAT上的、要写入数据的空余簇的地址写入指示“被分配”状态的信息。
在步骤ST96,HDD控制部件27在与在步骤ST98中检测的空余簇对应的数据区域DA2中写入数据。其后,复合存储设备2进行到步骤ST103。
在步骤S97,HDD控制部件27产生用于启动记录介质20的信号(状态),并且向记录介质20发送它产生的信号。在从HDD控制部件27接收到提示它启动的信号时,记录介质20开始旋转其中包含的盘,并且将其带入能够在其中记录数据的状态(有效状态)中。
在步骤ST98中,HDD控制部件27从非易失性固态存储器26的数据区域DA2提取空余簇。因为记录介质20还不在有效状态中,因此HDD控制部件27从在组合数据区域DA中的非易失性固态存储器26的数据区域DA2中提取空余簇。
在步骤ST99,HDD控制部件27确定是否在步骤ST98中检测的空余簇中要记录的数据是第一数据、因而所述簇是第一簇。复合存储设备2当所检测的簇是第一簇时进行到步骤ST101,而当所检测的簇不是第一簇时进行到步骤ST100。
在步骤ST100,HDD控制部件27执行将FAT链连接到要写入数据的空余簇的处理。HDD控制部件27将在存储器29上展开的FAT上的、在步骤ST98中提取的簇的地址“0000h”改变为要写入数据的簇的地址,并且更新所述FAT链。
另一方面,在步骤ST101,HDD控制部件27使得要写入数据的空余簇为“被分配”。HDD控制部件27向在存储器29中展开的FAT上的、要写入数据的空余簇的地址写入指示“被分配”状态的信息。
在步骤ST102,HDD控制部件27在与在步骤ST98中检测的空余簇对应的数据区域DA2中写入数据。
在步骤ST103,HDD控制部件27确定是否在步骤ST89、步骤ST96和步骤ST102中在组合数据区域DA中写入的数据是最后簇的数据、因而是构成文件的最后数据。复合存储设备2当所述簇是最后簇时进行到步骤ST104,而当所述簇不是最后簇时进行到步骤ST105。
在步骤ST104,HDD控制部件27执行推断FAT链在数据的EOF的处理。HDD控制部件27把在存储器29中展开的FAT中的、对应于最后簇的地址改变为对应于EOF的信息,并且更新所述FAT链。
在步骤ST105,HDD控制部件27查看是否在组合数据区域DA中的非易失性固态存储器26的数据区域DA2中有空余区域。具体而言,HDD控制部件27通过引用在存储器29中展开的FAT,来查看是否在数据区域DA2中有空余区域。当在数据区域DA2中没有任何空余区域时,复合存储设备2进行到步骤ST106,而当在数据区域DA2中有空余区域时返回步骤ST80。
在步骤ST106,HDD控制部件27产生用于告知在数据区域DA2没有空余区域的信号(状态),并且将它产生的所述信号发送到主机设备4。其后,复合存储设备2返回步骤ST80。HDD控制部件27确定是否在数据区域DA2中剩余的数据已经达到了预定数量,并且当所述数据已经达到预定数量时产生状态。
<示例6:当相关联数据被记录在数据区域DA1和数据区域DA2上时的移动处理>
下面参照图29的流程图来说明处理序列,所述处理序列被执行来在下述情况下将数据从数据区域DA2向数据区域DA1移动:在视频信号正在被记录到数据区域DA1中时发生温度改变或冲击或者发生振动,以便从数据区域DA1向数据区域DA2保存数据(见示例5),以及文件1的数据被记录在数据区域DA1和数据区域DA2上。具体而言,在此假定,通过使用如图30所示的LBA(逻辑块地址)空间和逻辑扇区空间来将被保存到数据区域DA2的“20761h”的文件1的第三簇的数据移动到“01233h”,并且将被保存到数据区域DA2的“20762h”的文件1的第五簇的数据移动到“01235h”。
主机设备4向复合存储设备2发出命令,请求向它通知文件1的引导簇地址。响应于从主机设备4发出的命令,复合存储设备2从目录区域DirA发送文件1的引导簇地址“01231h”。然后,如果文件1的数据被记录在数据区域DA1和数据区域DA2上,则主机设备4根据它接收的引导簇地址而发出把在数据区域DA2中记录的文件1的数据移动到数据区域DA1的命令。
在步骤ST110,复合存储设备2在寄存器中将要移动的文件的引导簇地址设置为从主机设备4发出的命令的引数。
然后,在步骤ST111,复合存储设备2确定是否所设置的簇地址示出了正常值。在接收到所述命令后,复合存储设备2从FAT区域FA读出要移动的文件1的引导簇地址的簇链,并且将其存储在存储器29中。然后,它通过引用簇链而确定是否所设置的簇地址示出了正常值。复合存储设备2当所设置的簇地址示出正常值时进行到步骤ST112,并且当所设置的簇地址示出除了正常值之外的值时进行到步骤ST119。
在步骤ST112,复合存储设备2确定是否在步骤ST110中设置的簇地址属于数据区域DA1“001E0h-201FFh”。复合存储设备2当所述簇地址属于数据区域DA1时进行到步骤ST117。另一方面,复合存储设备2当所述簇地址不属于数据区域DA1、因而属于数据区域DA2时进行到步骤ST113。
在步骤ST113,复合存储设备2从数据区域DA1的簇区域“001E0h-201FFh”提取空余簇。
在步骤ST114,复合存储设备2确定是否检测到了任何空余簇作为在步骤ST113中的提取操作的结果。复合存储设备2当确定检测到空余簇时进行到步骤ST115,而当确定没有检测到簇时进行到步骤ST119。下面假定簇“01233h”被提取为空余簇。
在步骤ST115,复合存储设备2根据在步骤ST110或步骤ST118中设置的簇地址来从数据区域DA2读出对应的数据,并且向在步骤ST114中检测的空余簇写入它读出的数据。下面假定在步骤ST118中设置了“20761h”,如下所述。因此,复合存储设备2读出文件1的第三簇数据,并且基于“20761h”将它们移动到“01233h”。
在步骤ST116,复合存储设备2更新在存储器29中存储的簇链,并且重写FAT信息。例如,它可以写入用于指示在与移动原点“20761h”对应的簇链中的空余簇的识别信息、和用于指示在与移动目的地“012331h”对应的簇链中的被分配状态的识别信息。
在步骤ST117,复合存储设备2通过引用在存储器29中存储的簇链而确定是否在步骤ST115中移动的数据对应于最后的簇地址。当它们不是对应于最后的簇地址的数据时,复合存储设备2进行到步骤ST118,而当它们是对应于最后的簇地址的数据时,复合存储设备2进行到步骤ST120。
在步骤ST118,复合存储设备2通过引用在存储器29中存储的簇链而提取下一簇地址。
另一方面,在步骤ST119,复合存储设备2在错误寄存器中设置异常结束值。
在步骤ST120,复合存储设备2推断出FAT链。但是,在这个示例中,不执行这个步骤,因为EOF已经被写入到“01236h”。
在步骤ST121,复合存储设备2向主机设备4通知移动后文件1的引导簇地址。在这个示例中,所述引导簇地址保持为“01231h”。在上述的步骤之后,也以类似的方式来执行移动被保存到“20762h”的文件1的第五簇的数据的操作。
图30图解了在移动处理期间文件的状态,图31图解了在复制处理期间文件的状态,图32图解了在移动处理后文件的状态。
复合存储设备2可以通过执行上述处理,并且在如图32所示的原始FAT链中写入指示空余状态的识别信息,来保证在数据区域DA2中的空余区域。
<示例7:当在数据区域DA1和数据区域DA2上记录相关联的数据时的移动处理>
下面参照图33的流程图来说明处理序列,所述处理序列被执行来在下述情况下将数据从数据区域DA1向数据区域DA2移动:在视频信号正在被记录到数据区域DA1中时发生温度改变或冲击或者发生振动,以便从数据区域DA1向数据区域DA2保存数据(见示例5),以及文件1的数据被记录在数据区域DA1和数据区域DA2上。
主机设备4向复合存储设备2发出命令,请求向它通知文件1的引导簇地址。响应于从主机设备4发出的命令,复合存储设备2从目录区域DirA发送文件1的引导簇地址。然后,如果文件1的数据被记录在数据区域DA1和数据区域DA2上,则主机设备4根据它接收的引导簇地址而发出将在数据区域DA1中记录的文件1的数据移动到数据区域DA2的命令。
在步骤ST130,复合存储设备2在寄存器中将要移动的文件的引导簇地址设置为从主机设备4发出的命令的引数。
然后,在步骤ST131,复合存储设备2确定是否所设置的簇地址示出了正常值。在接收到所述命令时,复合存储设备2从FAT区域FA读出要移动的文件1的引导簇地址的簇链,并且将其存储在存储器29中。然后,它通过引用所述簇链而确定是否所设置的簇地址示出了正常值。复合存储设备2当所设置的簇地址示出正常值时进行到步骤ST132,并且当所设置的簇地址示出除了正常值之外的值时进行到步骤ST139。
在步骤ST132,复合存储设备2确定是否在步骤ST130中设置的簇地址属于数据区域DA1“001E0h-201FFh”。复合存储设备2当所述簇地址属于数据区域DA1时进行到步骤ST133。另一方面,复合存储设备2当所述簇地址不属于数据区域DA1、因而属于数据区域DA2时进行到步骤ST137。
在步骤ST133,复合存储设备2从数据区域DA2的簇区域“20200h-20FFFh”提取空余簇。
在步骤ST134,复合存储设备2确定是否检测到了任何空余簇作为在步骤ST133中的提取操作的结果。复合存储设备2当确定检测到空余簇时进行到步骤ST135,而当确定没有检测到簇时进行到步骤ST139。
在步骤ST135,复合存储设备2根据在步骤ST130或步骤ST138中设置的簇地址来从数据区域DA1读出对应的数据,并且向在步骤ST134中检测的空余簇写入它读出的数据。
在步骤ST136,复合存储设备2更新在存储器29中存储的簇链,并且重写FAT信息。
在步骤ST137,复合存储设备2通过引用在存储器29中存储的簇链而确定是否在步骤ST135中移动的数据对应于最后的簇地址。当它们不是对应于最后的簇地址的数据时,复合存储设备2进行到步骤ST138,而当它们是对应于最后的簇地址的数据时,复合存储设备2进行到步骤ST140。
在步骤ST138,复合存储设备2通过引用在存储器29中存储的簇链而提取下一簇地址。
另一方面,在步骤ST139,复合存储设备2在错误寄存器中设置异常结束值。
在步骤ST140,复合存储设备2推断出FAT链。
在步骤ST141,复合存储设备2向主机设备4通知移动后文件1的引导簇地址。
<示例8>
下面说明处理序列,所述处理序列在下述情况下被自动执行来将数据从数据区域DA2向数据区域DA1移动:在视频信号正在被记录到数据区域DA1中时发生温度改变或冲击或者发生振动,以便从数据区域DA1向数据区域DA2保存数据(见示例5),以及文件1的数据被记录在数据区域DA1和数据区域DA2上,但是主机设备4在预定时段中没有访问复合存储设备2。
在这个示例中,如图34所示,在示例5中所引用的在图21的流程图的步骤ST89后插入更新临时保存的簇表的步骤(ST150),并且在图21的流程图的步骤ST96后插入用于更新临时保存的簇表的步骤(ST151),而在图21的流程图的步骤ST102后插入用于更新临时保存的簇表的步骤(ST152)。
下面说明准备临时保存的簇表的处理。在当视频信号正在被记录到数据区域DA1并且记录介质20进入停止其操作并在预定时段中不再能够向记录介质20写入数据的状态时,复合存储设备2受到振动或冲击的情况下,复合存储设备2在重新启动主轴(spindle)以便可以再次向记录介质20写入数据的预定时段期间,将用于记录数据的区域临时从数据区域DA1转换到数据区域DA2。
当如上所述用于记录数据的区域临时转换到数据区域DA2时,HDD控制部件27在完成数据保存操作后准备包含簇链信息(在发生异常写入状态的一个的之前紧邻的数据区域DA1的簇编号、发生异常写入状态的数据区域DA1的簇编号、和作为替代而操作的数据区域DA2的簇编号)的临时保存的簇表,并且将其存储在存储器29中。如果例如产生三个被保存的簇,则将准备如图35A中所示的临时保存的簇表。
在这个示例中,如图34中所示,在示例5中所引用的、在图21的流程图的步骤ST103或步骤ST104之后插入步骤ST153-ST157。
在步骤ST153,HDD控制部件27确定是否有要随后写入的数据。当有要随后写入的数据时,复合存储设备2进行到步骤ST105,而当没有任何要随后写入的数据时,它进行到步骤ST154。
在步骤ST154,HDD控制部件27确定当主机设备4在预定时段中不访问复合存储设备2时是否自动更新临时保存的簇表。具体而言,HDD控制部件27访问存储器29,并且查看是否在步骤ST150、步骤ST151或步骤ST152中更新了临时存储的簇表。当更新临时保存的簇表时,复合存储设备2进行到步骤ST155,而当不更新临时保存的簇表时它返回步骤ST153。
在步骤ST155,HDD控制部件27通过引用临时保存的簇表而将在数据区域DA2中临时保存的数据移动到数据区域DA1。然后,HDD控制部件27按照在数据区域DA2中的替换簇信息而将临时保存的簇的数据写入缓冲存储器25。其后,HDD控制部件27在要保留的簇(写入中止的簇)中写入数据。
在步骤ST156,HDD控制部件27按照簇链信息来更新在数据区域DA1中的簇链和在数据区域DA2中的簇链。
在完成返回在数据区域DA2中临时保存的数据后,HDD控制部件27在步骤ST157从临时保存的簇表删除所完成的操作的数据。它重复步骤ST153-ST157的处理操作,直到从临时保存的簇表完全删除所保存的数据。图35B图解了当返回两个被保存的簇时的临时保存的簇表。图36是当将相关联的数据记录在数据区域DA1和数据区域DA2二者上时文件1的状态的示意图解。图37是在将数据区域DA2中记录的数据自动移动到数据区域DA1的处理期间文件1的状态的示意图解。图38是在完成将数据区域DA2中记录的数据自动移动到数据区域DA1的处理后文件1的状态的示意图解。
作为上述处理的结果,可以在主机设备4不参与的情况下在非易失性固态存储器26的数据区域DA2中保证空余区域。
因此,具有上述配置的数据存取系统1包括通过接口部件3而彼此连接的主机设备4和复合存储设备。复合存储设备具有非易失性固态存储器26和记录介质20,并且被适配来将记录介质20的数据区域DA1和非易失性固态存储器26的数据区域DA2整合,并且将所述数据区域管理为组合的数据区域DA。使用这种布置,可以将数据区域DA2中记录的数据移动到数据区域DA1,而不用在复合存储设备和主机设备之间传送数据,并且可以按照所移动的簇的配置来重建FAT,同时可以将数据区域DA1中记录的数据移动到数据区域DA2,而不用在复合存储设备和主机设备之间传送数据,并且可以按照所移动的簇的配置来重建FAT。另外,可以将数据区域DA2中记录的数据复制到数据区域DA1,而不用在复合存储设备和主机设备之间传送数据,并且可以按照所复制的簇的配置来重建FAT,同时可以向数据区域DA2复制在数据区域DA1中记录的数据,而不用在复合存储设备和主机设备之间传送数据,并且可以按照所复制的簇的配置来重建FAT。
另外,按照本发明,按照本发明的复合存储设备2被配备了用于检测冲击和振动的传感器31,并且被适配来适当地从数据区域DA2向数据区域DA1,或相反方向,转换数据。因此,可以在数据区域DA1和数据区域DA2上记录相关联的数据。但是,按照本发明,在数据区域DA2中保存的数据被自动写回数据区域DA1,以便可以在非易失性固态存储器26(数据区域DA2)中自动保证空余区域。因此,可以通过使用具有比记录介质20的记录容量(数据区域DA1)小得多的记录容量的非易失性固态存储器26来建立高度可靠的混合存储系统。
另外,如上所述,主机设备4不通过使用逻辑扇区编号(LSN)而是通过使用逻辑块地址(LBA)来访问复合存储设备2。按照本发明,可以在记录介质20的存储区域的部分和在非易失性固态存储器26的存储区域的部分中形成重复地分配LBA的区域X,如在图39的概念图解中所示。在图39中,向数据区域DA2的部分和数据区域DA1的部分分配相同的LBA以形成区域X。但是,按照本发明的LBA的重复分配绝不限于图39。
因此,例如,HDD控制部件27操作来记录被写入到在区域X中的FAT区域和目录区域的信息和/或重要数据。
因此,当在按照本发明的复合存储设备2中形成区域X时,在记录介质20和非易失性固态存储器26二者中记录FAT,以便可以建立稳定和可靠的系统。
虽然在所述实施例的上述说明中假定记录介质20是硬盘,但是它或者可以是诸如CD或DVD之类的光盘,只要它是用于本发明的目的的随机可存取的存储介质。
虽然在上述的说明中将FAT文件系统用作管理复合存储设备2的组合数据区域DA的文件系统,但是被适配来将数据管理为文件的任何其它文件系统或者也可以被用于本发明的目的。
为了本发明的目的,可以通过软件来执行上述的处理系列。当通过软件来执行处理系列时,所述软件的程序通常被安装在通用计算机中。所述程序可以被记录在诸如CD-ROM之类的可移动介质,并且被提供到用户。或者,它可以通过网络而被下载到用户计算机。
本领域内的技术人员应当明白,只要在所附的权利要求或其等效内容的范围内,可以根据设计要求和其它因素来进行各种修改、组合、子组合和改变。
相关申请的交叉引用
本申请包含与分别在2005年3月8日和2005年7月25日在日本专利局提交的日本专利申请JP2005-064518和2005-215105相关的主题,其整体内容通过引用被并入在此。
Claims (6)
1.一种复合存储设备,包括:
记录介质,具有第一数据区域,所述第一数据区域具有被分配到预定大小的相应簇的第一地址;
非易失性存储介质,具有第二数据区域,所述第二数据区域具有被分配到预定大小的相应簇的第二地址;
接口部件,连接到主机设备;
提取装置,在向第二数据区域移动或复制被写入第一数据区域的数据或向第一数据区域移动或复制被写入第二数据区域的数据时,通过引用目录区域来提取要移动或复制的数据的引导簇的地址,所述目录区域承载写入到第一数据区域或第二数据区域的数据的引导簇地址;
第一通知装置,经由所述接口部件向主机设备通知由所述提取装置提取的引导簇的地址;
第一接收装置,响应于所述第一通知装置的通知,而接收第一信号或第二信号,所述第一信号命令从第一数据区域向第二数据区域移动或复制数据,所述第二信号命令从第二数据区域向第一数据区域移动或复制数据;
读取装置,用于在通过所述第一接收装置接收到所述第一信号或第二信号时,从识别信息表读取要移动或复制的数据的引导簇的地址的簇链,所述识别信息表由逻辑地址构成并且承载每个逻辑地址的预定识别信息,所述逻辑地址用于管理第一地址和第二地址;
空余区域检测装置,用于在从第一数据区域向第二数据区域移动或复制数据时从第二数据区域检测空余区域,并且在从第二数据区域向第一数据区域移动或复制数据时从第一数据区域检测空余区域;
移动/复制装置,用于把要移动或复制的数据移动或复制到由所述空余区域检测装置检测的空余区域;
更新装置,在通过所述移动/复制装置来移动或复制数据时,更新由所述读取装置从所述识别信息表读取的簇链,以承载移动或复制的位置的地址;
第二通知装置,用于当所述更新装置完成更新所述簇链时,通过所述接口部件向所述主机设备通知引导簇的所改变的地址;
第二接收装置,用于响应于第二通知装置的通知,而通过所述接口部件来从所述主机设备接收用于命令改变所述引导簇的地址的信号;以及
改变装置,用于当通过第二接收装置从主机设备接收到用于命令改变引导簇的地址的信号时,将在所述目录区域中的引导簇的地址改变为由所述移动/复制装置移动或复制的数据的引导簇的地址。
2.按照权利要求1的设备,其中,当所述第一信号或第二信号由所述第一接收装置接收时,所述读取装置从识别信息表读取要移动或复制的数据的引导簇地址的簇链,所述识别信息表由管理第一地址和第二地址的逻辑地址构成,所述第一地址的一部分和所述第二地址的一部分由相同的逻辑地址构成,所述识别信息表表示出对于每个逻辑地址写入的预定识别信息。
3.按照权利要求1的设备,还包括:
删除装置,用于当通过移动/复制装置而移动或复制数据时,从识别信息表区域删除与所移动或复制的原始数据对应的簇链。
4.按照权利要求1的设备,其中,
当在第一数据区域和第二数据区域上写入相关联数据时,
所述提取装置通过引用所述目录而提取相关联数据的引导簇的地址,
所述第一通知装置通过所述接口部件向主机设备通知由提取装置提取的引导簇地址,
所述第一接收装置响应于来自第一通知装置的通知,而通过所述接口部件从主机设备接收第三信号或第四信号,所述第三信号命令在第二数据区域中写入的相关联数据移动到第二数据区域,所述第四信号命令在第一数据区域中写入的相关联数据移动到第一数据区域,
所述读取装置在通过第一接收装置接收到第三信号或第四信号时,从识别信息表区域读出相关联数据的引导簇地址的簇链,
所述空余区域检测装置当从第二数据区域向第一数据区域移动数据时从第一数据区域检测空余区域,当从第一数据区域向第二数据区域移动数据时从第二数据区域中检测空余区域,以及
所述移动/复制装置通过引用由读取装置读出的簇链而读出在第二数据区域中写入的相关联数据,并且将所读出的数据移动或复制到由空余区域检测装置检测的第一数据区域的空余区域,或者读出在第一数据区域中写入的相关联数据,并且将所读出的数据移动或复制到由空余区域检测装置检测的第二数据区域中的空余区域。
5.一种复合存储设备的数据处理方法,所述复合存储设备具有记录介质、非易失性存储介质和接口部件,所述记录介质具有第一数据区域,所述第一数据区域具有被分配到预定大小的相应簇的第一地址,所述非易失性存储介质具有第二数据区域,所述第二数据区域具有被分配到预定大小的相应簇的第二地址,所述接口部件要连接到主机设备,所述方法包括:
提取步骤,在向第二数据区域移动或复制被写入第一数据区域的数据或向第一数据区域移动或复制被写入第二数据区域的数据时,通过引用目录区域来提取要移动或复制的数据的引导簇的地址,所述目录区域承载写入到第一数据区域或第二数据区域的数据的引导簇地址;
第一通知步骤,用于经由接口部件向主机设备通知在所述提取步骤中提取的引导簇的地址;
第一接收步骤,用于响应于在所述第一通知步骤中的通知,而接收第一信号或第二信号,所述第一信号命令从第一数据区域向第二数据区域移动或复制数据,所述第二信号命令从第二数据区域向第一数据区域移动或复制数据;
读取步骤,用于当在所述第一接收步骤中接收到所述第一信号或第二信号时,从识别信息表读取要移动或复制的数据的引导簇的地址的簇链,所述识别信息表由逻辑地址构成并且承载每个逻辑地址的预定识别信息,所述逻辑地址用于管理第一地址和第二地址;
空余区域检测步骤,用于在从第一数据区域向第二数据区域移动或复制数据时从第二数据区域检测空余区域,并且在从第二数据区域向第一数据区域移动或复制数据时从第一数据区域检测空余区域;
移动/复制步骤,用于把要移动或复制的数据移动或复制到在所述空余区域检测步骤中检测的空余区域;
更新步骤,在所述移动/复制步骤中移动或复制数据时,更新在所述读取步骤从所述识别信息表读取的簇链,以承载移动或复制的位置的地址;
第二通知步骤,用于当在所述更新步骤中完成更新所述簇链时,通过所述接口部件向所述主机设备通知引导簇的所改变的地址;
第二接收步骤,用于响应于第二通知步骤中的通知,而通过所述接口部件来从所述主机设备接收用于命令改变所述引导簇的地址的信号;以及
改变步骤,用于当在第二接收步骤中从主机设备接收到用于命令改变引导簇的地址的信号时,将在所述目录区域中的引导簇的地址改变为在所述移动/复制步骤中移动或复制的数据的引导簇的地址。
6.按照权利要求5的方法,其中,当在所述第一接收步骤中接收到所述第一信号或第二信号时,所述读取步骤被适配来从识别信息表读取要移动或复制的数据的引导簇地址的簇链,所述识别信息表由用于管理第一地址和第二地址的逻辑地址构成,所述第一地址的一部分和所述第二地址的一部分由相同的逻辑地址构成,所述识别信息表表示出对于每个逻辑地址写入的预定识别信息。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005064518 | 2005-03-08 | ||
JP064518/05 | 2005-03-08 | ||
JP215105/05 | 2005-07-25 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1832014A CN1832014A (zh) | 2006-09-13 |
CN100576335C true CN100576335C (zh) | 2009-12-30 |
Family
ID=36994219
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200610058921A Expired - Fee Related CN100576335C (zh) | 2005-03-08 | 2006-03-08 | 复合存储设备和数据处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100576335C (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10528116B2 (en) | 2013-03-14 | 2020-01-07 | Seagate Technology Llc | Fast resume from hibernate |
CN104637510A (zh) * | 2013-11-12 | 2015-05-20 | 四零四科技股份有限公司 | 外接储存装置及外接储存装置的数据存储方法 |
CN109558072B (zh) * | 2018-10-10 | 2022-03-25 | 建荣半导体(深圳)有限公司 | 音频播放芯片的存储空间扩展方法、系统、音频播放芯片及存储装置 |
-
2006
- 2006-03-08 CN CN200610058921A patent/CN100576335C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN1832014A (zh) | 2006-09-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20060099429A (ko) | 복합형 기억 장치, 데이터 처리 방법 및 프로그램 | |
US5535381A (en) | Apparatus and method for copying and restoring disk files | |
US20040111582A1 (en) | File-update apparatus | |
US7136977B2 (en) | Backup acquisition method and disk array apparatus | |
KR100926865B1 (ko) | 데이터 기억 장치, 그 데이터 재배치 방법, 프로그램을기록한 기록 매체 | |
CN102227729A (zh) | 仅向主机呈现与定义的主机性能相兼容的文件的存储器件 | |
CN101661473A (zh) | 固态存储器、计算机系统以及操作固态存储器的方法 | |
US20110099346A1 (en) | Apparatus and method for controlling storage system | |
US20020152416A1 (en) | Disk array apparatus and method for expanding storage capacity | |
EP2353081A2 (en) | Managing cache data and metadata | |
US20060161823A1 (en) | Disk array system configuring a logical disk drive having a redundancy function | |
CN111797058B (zh) | 一种通用文件系统及文件管理的方法 | |
CN100576335C (zh) | 复合存储设备和数据处理方法 | |
US7600151B2 (en) | RAID capacity expansion interruption recovery handling method and system | |
JP5633432B2 (ja) | ストレージシステム、ストレージ制御装置およびストレージ制御方法 | |
KR101604222B1 (ko) | 영상 기록 장치 및 일시적 네트워크 장애 발생시 영상 기록 방법 | |
US7191360B2 (en) | Method of data backup and recovery | |
JP2005284816A (ja) | ディスクアレイシステム | |
US7069379B2 (en) | Multistage information recording method and system using magnetic recording disk units | |
US20090190249A1 (en) | Method and apparatus for efficient storage and retrieval of multiple content streams | |
JPH1185589A (ja) | 情報記憶装置および同装置に適用される管理データ再構築方法 | |
US20070043968A1 (en) | Disk array rebuild disruption resumption handling method and system | |
JP3919319B2 (ja) | 複数メディア記録装置 | |
CN102063273B (zh) | 硬盘管理方法及管理装置 | |
KR101442145B1 (ko) | 데이터 관리 장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CI02 | Correction of invention patent application |
Correction item: Priority Correct: 2005.07.25 JP 215105/2005 False: Lack of priority second Number: 37 Page: The title page Volume: 22 |
|
COR | Change of bibliographic data |
Free format text: CORRECT: PRIORITY; FROM: MISSING THE SECOND ARTICLE OF PRIORITY TO: 2005.7.25 JP 215105/2005 |
|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20091230 Termination date: 20130308 |