CN101082885A - 数据存储装置、存储器管理方法以及程序 - Google Patents
数据存储装置、存储器管理方法以及程序 Download PDFInfo
- Publication number
- CN101082885A CN101082885A CNA2007101052484A CN200710105248A CN101082885A CN 101082885 A CN101082885 A CN 101082885A CN A2007101052484 A CNA2007101052484 A CN A2007101052484A CN 200710105248 A CN200710105248 A CN 200710105248A CN 101082885 A CN101082885 A CN 101082885A
- Authority
- CN
- China
- Prior art keywords
- area
- management area
- management
- mentioned
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1441—Resetting or repowering
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
提供一种能够保障记录数据的安全性以及可靠性的数据存储装置、存储器管理方法以及程序。提供一种数据存储装置,其特征在于,具备:存储器(110),其具有记录表示有效的数据区域的地址信息的第1和第2管理区域以及记录与第1或者第2管理区域相同信息的保障区域;记录控制部(116),其在更新记录在第1或者第2管理区域中的地址信息后,对保障区域记录更新后的地址信息;以及管理区域设定部(118),其根据记录在保障区域中的信息,将第1或者第2管理区域设定为有效的管理区域。
Description
技术领域
本发明涉及数据存储装置、存储器管理方法以及程序。
背景技术
通常,在以搭载了非接触IC(Integrated Circuit:集成电路)卡或者非接触IC芯片的便携电话为代表的可进行非接触通信的通信设备中,搭载有用于保存与读/写器之间进行通信的数据、进行服务提供所需处理的应用程序的存储器。作为该存储器,例如有用于缓冲器等用途的易失性存储器、用于记录用户数据、应用程序用途的非易失性存储器。
众所周知,通常向非易失性存储器进行记录需要比较长的时间。因而, 当设想如上所述的通信设备的利用方式时,需要在对非易失性存储器写入信息途中发生电源供给停止的情况、通信未完成就停止的情况下的记录数据的复原单元。对于这样的问题,研究并公开了如下方案:通过保持改写对象的旧数据并将新数据写入到其他存储器区域,从而即使在该数据的写入未完成就结束的情况下,也能够通过旧数据来复原原来的状态(例如,参照专利文献1~4)。
专利文献1: 日本特开2001-51883号公报
专利文献2: 日本特开2001-249855号公报
专利文献3: 日本特开平8-272698号公报
专利文献4: 日本特开2005-107608号公报
发明内容
发明要解决的问题
但是,在现有的数据写入单元中,无法判断是否确实对非易失性存储器记录了新数据。但是,在向非易失性存储器中写入时,当写入途中电源被切断时,下次起动时必须转移到写入前或者写入完成后的状态。如上所述,直到数据被记录到非易失性存储器上为止,需要某固定的时间。因而,即使看起来记录有数据,也有该记录数据不是被确实记录的状态而是不稳定状态的情况。因而,希望有一种检测数据相对存储器的记录状态是否是确实被记录的状态的单元。
因此,本发明是鉴于上述问题而完成的,本发明的目的在于提供一种能够提高对存储器的数据存储的安全性以及可靠性的、新的且改进的数据存储装置、存储器管理方法以及程序。
用于解决问题的方案
为了解决上述问题,根据本发明的所具有的观点,提供一种数据存储装置,其特征在于,具备:存储器,其具有第1和第2管理区域以及保障区域,其中,所述第1和第2管理区域记录表示有效的数据区域的地址信息,所述保障区域记录与记录在第1或者第2管理区域中的地址信息对应的信息;记录控制部,当记录在第1或者第2管理区域中的地址信息被更新后,将记录在保障区域中的信息改写为与该更新后的地址信息对应的信息;以及管理区域设定部,其根据记录在保障区域中的信息,将第1或者第2管理区域设定为有效的管理区域。
上述数据存储装置具备的存储器,具有记录表示有效的数据区域的地址信息的第1和第2管理区域以及记录与记录在第1或者第2管理区域中的地址信息对应的信息的保障区域。另外,上述记录控制部当记录在第1或者第2管理区域中的地址信息被更新后,将记录在保障区域中的信息改写为与该更新后的地址信息对应的信息。并且,上述管理区域设定部根据改写到保障区域中的信息,将第1或者第2管理区域设定为有效的管理区域。由此,能够根据保障区域的信息,来判断是否确实进行了记录在第1或者第2管理区域中的地址信息的更新。因而,能够对由于难以预测的电源切断等导致的故障提供具有高抗性的数据存储单元,提高对记录数据的可靠性。
上述记录控制部也可以在完成对保障区域的记录处理之后,使第1或者第2管理区域之中不是有效的管理区域的管理区域中所记录的地址信息无效化。由此,能够根据不是有效的管理区域的管理区域状态,来判断是否完成了保障区域的记录处理。
上述管理区域设定部在数据存储装置起动时,也可以根据第1或者第2管理区域是否被无效化,来判断保障区域是否有效。由此,能够在判断是否完成了保障区域的改写处理的基础上,执行恢复处理。其结果,提供可靠性更高的数据恢复单元。
上述存储器也可以具有记录表示有效的数据区域的地址信息的多个辅助管理区域、第1和第2管理区域以及保障区域,第1或者第2管理区域记录表示有效的辅助管理区域的地址信息,来代替表示有效的数据区域的地址信息。根据上述结构,即使在具有分层结构的管理区域的存储器中,也能够对由于难以预测的电源切断等导致的故障提供具有高抗性的数据存储单元,提高对记录数据的可靠性。
另外,为了解决上述问题,根据本发明的其他观点,提供一种存储器管理方法,其特征在于,包括:第一步骤,在具有第1和第2管理区域以及保障区域的存储器中,更新记录在第1或者第2管理区域中的地址信息,其中,所述第1和第2管理区域记录表示有效的数据区域的地址信息,所述保障区域记录与记录在第1或者第2管理区域中的地址信息对应的信息;第二步骤,将记录在保障区域中的信息改写为与该更新后的地址信息对应的信息;以及第三步骤,根据记录在保障区域中的信息,将第1或者第2管理区域设定为有效的管理区域。
在上述存储器管理方法所包括的第1步骤中,在具有第1和第2管理区域以及保障区域的存储器中,更新记录在第1或者第2管理区域中的地址信息,其中,所述第1和第2管理区域记录表示有效的数据区域的地址信息,所述保障区域记录与记录在第1或者第2管理区域中的地址信息对应的信息。另外,在上述第2步骤中,将记录在保障区域中的信息改写为与该更新后的地址信息对应的信息。在第3步骤中,根据记录在保障区域中的信息,将第1或者第2管理区域设定为有效的管理区域。由此,通过对照保障区域的信息和记录在第1或者第2管理区域中的地址信息,能够判断是否确实更新了记录在第1或者第2管理区域中的地址信息。其结果,能够对由于难以预测的电源切断等导致的故障提供具有高抗性的存储器管理方法,提高对记录数据的可靠性。
另外,为了解决上述问题,根据本发明的另外其他观点,提供了一种程序,用于使计算机实现如下功能:第一功能,在具有第1和第2管理区域以及保障区域的存储器中,更新记录在第1或者第2管理区域中的地址信息,其中,所述第1和第2管理区域记录表示有效的数据区域的地址信息,所述保障区域记录与记录在第1或者第2管理区域中的地址信息对应的信息;第二功能,将记录在保障区域中的信息改写为与该更新后的地址信息对应的信息;以及第三功能,根据记录在保障区域中的信息,将第1或者第2管理区域设定为有效的管理区域。
通过上述程序使计算机实现的第1功能,在具有第1和第2管理区域以及保障区域的存储器中,更新记录在第1或者第2管理区域中的地址信息,其中,所述第1和第2管理区域记录表示有效的数据区域的地址信息,所述保障区域记录与记录在第1或者第2管理区域中的地址信息对应的信息。另外,上述第2功能,将记录在保障区域中的信息改写为与该更新后的地址信息对应的信息。第3功能,根据记录在保障区域中的信息,将第1或者第2管理区域设定为有效的管理区域。由此,通过对照保障区域的信息和记录在第1或者第2管理区域中的地址信息,能够判断是否确实更新了记录在第1或者第2管理区域中的地址信息。其结果,能够对由于难以预测的电源切断等导致的故障提供具有高抗性的存储器管理功能,提高对记录数据的可靠性。
发明的效果
如以上所说明,根据本发明能够提高对存储器的数据存储的安全性和可靠性。
附图说明
图1是表示与本发明第1实施方式有关的通信装置的框图。
图2是表示与该实施方式有关的存储器管理部的结构的框图。
图3是表示与该实施方式有关的存储器结构的框图。
图4是表示与该实施方式有关的存储器管理方法的流程图。
图5是表示与该实施方式有关的存储器管理方法的流程图。
图6是表示与该实施方式有关的存储器管理方法的流程图。
图7是表示与本发明第2实施方式有关的存储器结构的框图。
图8是表示与该实施方式有关的存储器管理方法的流程图。
附图标记说明
108:存储器管理部;110:存储器;112:管理区域;114:数据区域;116:记录控制部;118:管理区域设定部。
具体实施方式
下面参照附图详细说明本发明的最佳实施方式。此外,在本说明书以及附图中,对实质上具有相同功能结构的结构要素赋予相同的符号,从而省略重复说明。
<第1实施方式>
首先,按照具备与本发明第1实施方式有关的数据存储装置的通信装置的结构、数据更新方法以及记录状态的判断方法的顺序,详细地进行说明。此外,在本实施方式中,作为具备该数据存储装置的设备的一例,举出通信装置进行说明,但是本发明的数据存储装置并不限于上述例子,例如也可以是个人计算机、PDA(Personal Digital Assistants:个人数字助理)、信息家电、手表、音乐播放器或者影像播放器等能够存储数据的任意电子设备。并且,在本说明书中作为该通信装置的一例,设想非接触IC卡来进行说明,但也可以是内置了非接触IC芯片的便携电话、其他电子设备。
通信装置的结构
首先,参照图1说明具备与本实施方式有关的数据存储装置的通信装置的结构。图1是表示该通信装置的结构的框图。
作为非接触IC卡的通信装置100主要由以下部分构成:天线102、前端部104、电源再生部106、存储器管理部108以及存储器110。天线102提供用于在与非接触IC卡用的读/写器(未图示)之间发送接收数据的单元。例如,天线102由环形天线构成,利用电磁感应在与该读/写器之间进行数据的发送接收,并且从该读/写器接受电力的供给。
前端部104对从该读/写器发送的载波进行分频,再生驱动逻辑控制部(未图示)、存储器管理部108等的时钟。电源再生部106从由天线102接收到的载波再生电源,向通信装置100内的各部提供电力。存储器管理部108,在将从前端部104传输的数据写入到存储器110时,指定划分在存储器110内的数据区域以及管理区域来记录数据,并且控制各区域的有效/无效。存储器110记录通信装置100的动作用程序、从上述读/写器接收到的数据。另外,存储器110包括记录数据的多个数据区域以及用于保持该多个数据区域之中有效的数据区域的地址信息的管理区域。另外,该管理区域进一步被划分为多个区域。通信装置100的特征在于构成与本实施方式有关的数据存储装置的存储器110和存储器管理部108。因此下面具体说明存储器110以及存储器管理部108的结构及其功能。
首先,参照图2说明存储器管理部108的结构。存储器管理部108主要由记录控制部116和管理区域设定部118构成。
记录控制部116在存储器110的数据区域或者管理区域中记录各种数据。例如,在数据区域中可以记录从读/写器(未图示)接收到的用户数据,在管理区域中可以记录多个数据区域之中表示当前有效的数据区域的地址信息。另外,记录控制部116对存储器110内的管理区域写入地址信息时,选择应写入的管理区域来执行写入处理。特别是,记录控制部116执行对管理区域的记录控制,使得在更新记录在管理区域中的地址信息时,事先保持更新前的地址信息,即使万一更新后的地址信息在写入途中损坏,也能够利用该更新前的地址信息将通信装置100的功能恢复到原来状态。另外,如以下所说明,存储器110除了上述多个管理区域之外,还具有用于记录与记录在该管理区域的某一个中的地址信息对应的信息的保障区域。而且,记录控制部116对该保障区域也进行信息的记录控制。
管理区域设定部118根据记录在上述保障区域中的信息,将存储器110内的多个管理区域的某一个设定为有效的管理区域。当考虑在第1管理区域中记录了更新前的地址信息的状态下更新了记录在第2管理区域中的地址信息的情况时,如果该更新处理正常完成,则应该在保障区域中记录有与第2管理区域的更新后的地址信息对应的信息。此时,管理区域设定部118确认记录在第2管理区域中的地址信息和记录在保障区域中的信息一致,将第2管理区域设定为有效的管理区域。相反,在第2管理区域中写入地址信息的途中,在更新处理中断的情况下,保障区域保持更新前的地址信息。此时,管理区域设定部118确认记录在保障区域中的信息和记录在第1管理区域中的地址信息一致,将第1管理区域设定为有效的管理区域。这样,管理区域设定部118对照记录在保障区域中的信息和记录在第1或者第2管理区域中的地址信息,将一致的管理区域设定为有效的管理区域。
当然,有三个以上的管理区域的情况也相同。例如,在更新三个管理区域之中记录在多个管理区域中的地址信息的情况下,在完成了对第1~3管理区域之中需要更新的全部管理区域的地址信息的更新处理后,将与更新后的地址信息对应的信息记录到保障区域中。因而,管理区域设定部118对照记录在保障区域中的信息和记录在第1~3管理区域中的地址信息,将保持有一致的地址信息的管理区域设定为有效的管理区域。
以上,叙述了在第1管理区域中记载有更新前的地址信息的状态下更新记录在第2管理区域中的地址信息的更新处理,但是在进一步更新信息的情况下,记录在第1管理区域中的地址信息被改写为更新后的地址信息,与第1管理区域的更新后的地址信息对应的信息被记录在保障区域中。例如,记录控制器116对第1管理区域和第2管理区域,相互依次进行地址信息的更新处理。例如,当考虑具有二个管理区域的存储器110的情况时,记录控制部116交替地更新第1管理区域和第2管理区域分别保持的地址信息。当然,记录控制部116每当第1或者第2管理区域更新时,将更新后的地址信息记录到保障区域中。
以上,以第1管理区域和第2管理区域为例说明了记录控制部116和管理区域设定部118,但是如上所述,包含在存储器110中的多个管理区域具有相互相同的功能结构,利用相同的方法依次执行对记录在一个管理区域中的地址信息的更新处理、以及对记录在其他管理区域中的地址信息的更新处理。另外,存储器110除了上述多个管理区域之外还具有保障区域,每当更新记录在该多个管理区域的某一个中的地址信息时,记录该更新后的地址信息。
存储器110的结构
在此,参照图3详细说明存储器110的结构。如上所述,与本实施方式有关的存储器110具有管理区域112和数据区域114。另外,管理区域112被划分为多个区域,例如由管理区域A、管理区域B以及保障区域X构成。管理区域A对应于上述第1管理区域,管理区域B对应于上述第2管理区域。保障区域X是用于记录与管理区域A或者管理区域B相同的信息的区域。即,当保存在管理区域A或者B中的数据被更新时,与更新后的数据对应的数据被记录在保障区域X中。此外,记录在保障区域X中的数据也可以是管理区域A或者B之中与更新的数据相同的数据,但是只要是能够确定该更新的数据的数据即可。
例如,当考虑将记录在管理区域A中的地址信息利用其他地址信息进行更新的情况时,记录控制部116将能够确定该其他地址信息的信息记录到保障区域X中即可。即,当记录在作为第1管理区域的管理区域A中的地址信息被更新后,将记录在保障区域中的信息改写为与该更新后的地址信息对应的信息。更详细地说,只要将能够确认管理区域A中确实记录了该其他地址信息的信息记录到保障区域X中即可,因此既可以将该其他地址信息的一部分信息记录在保障区域X中,也可以记录该其他地址信息的错误校验码(例如,奇偶校验信息)。当然,记录控制部116也可以将该其他地址信息原样记录在管理区域X中。另外,管理区域A以及管理区域B具备确定自身地址信息的新旧的写入计数器(在图中表述为Num)。在更新了管理区域A或者B时,存储器管理部108进行更新使得被更新的管理区域中所具备的写入计数器在管理区域112内最大。
另外,数据区域114被划分为数据区域1~6。这些被划分的数据区域在数据更新时,相互成为冗长的结构。即,存储器管理部108,当更新保存在数据区域中的数据时,从划分的数据区域中选择空数据区域,在保存了更新后的数据之后,删除旧数据。通过采用这种结构,存储器管理部108即使在数据更新时产生电源切断等难以预测的故障,也能够通过事先保持的旧数据来复原原来的记录状态。
在此,示出管理区域112由两个被划分的管理区域(A/B)和一个保障区域(X)构成、并且数据区域114由六个数据区域构成的例子进行了说明,但是与本实施方式有关的存储器110的结构并不限于上述结构。例如,管理区域112可以划分为三个以上的管理区域,数据区域114可以划分为两个以上的任意数量。当然,存储器110也可以具备两个以上的保障区域。
数据更新方法
下面参照图3说明记录在上述存储器110中的数据的更新方法。首先,如图3的(a)所示,存储器110在数据区域1中保存有数据Da,在数据区域2中保存有Db,在数据区域3中保存有Dc,设管理区域A有效。由E1表示的实线表示有效的数据区域,在管理区域A中保存有该有效的数据区域1、数据区域2以及数据区域3的地址信息。另外,管理区域A的写入计数器设定为Num=1,该写入计数器在管理区域112内是最大数,因此管理区域A是具有最新地址信息的管理区域。
在此,如图3的(b)所示,考虑将保存在数据区域1中的数据Da和保存在数据区域2中的数据Db分别更新为数据Da’和数据Db’的情况。首先,记录控制部116当数据更新处理时,为了防止丢失现有数据,不覆盖保存在数据区域1和数据区域2中的数据,向作为空数据区域的数据区域4和数据区域5分别写入数据Da’和数据Db’。之后,记录控制部116将表示新的有效数据区域E2的地址信息记录在管理区域B中。在对管理区域B的记录处理完成之后,存储器管理部108使管理区域B所保持的写入计数器递增。具体地说,存储器管理部108设定管理区域B的写入计数器,使得更新前(图3的(a))的时刻在保持了最新地址信息的管理区域A的写入计数器(Num=1)上加上1的数成为更新后(图3的(b))的管理区域B的写入计数器(Num=2)。即,在更新了地址信息时,存储器管理部108将在更新前的管理区域112内的最大写入计数器上加上1的写入计数器设定为被更新的管理区域的写入计数器。由此,在管理区域112内,具有最大数写入计数器的管理区域,将保持最新的地址信息。
并且,记录控制部116对管理区域B记录表示数据区域3、数据区域4以及数据区域5的地址信息,在对管理区域B的地址信息更新完成之后,对保障区域X记录与更新后的地址信息对应的信息。例如,与本实施方式有关的记录控制部116既可以将与记录在管理区域B中的地址信息相同的地址信息记录到保障区域X中,也可以记录能够确定记录在管理区域B中的更新后的地址信息的其他信息。
根据这种方法,存储器管理部108在更新管理区域B时,能够通过对照冗长地构成的记录在保障区域X中的信息和保存在具有最大写入计数器的管理区域B中的地址信息,确认向管理区域B确实写入了地址信息。
通过利用上述方法来写入信息,在更新后读出存储器110的内容时,存储器管理部108能够判断更新后的地址信息是否确实地记录到管理区域B中。但是,在即使采用这种结构也由于在对冗长地构成的保障区域X的记录处理途中电源供给被切断等理由而成为信息记录未完成的状态的情况下,存储器管理部108根据保障区域X的状态,难以判断管理区域B的地址信息的正误。
因此,与本实施方式有关的存储器管理部108,在保障区域X的记录处理完成之后,使记录了旧地址信息的管理区域A所保持的信息无效化。管理区域A、管理区域B以及保障区域X,分别保持作为数据校验用码的CRC(Cycle Redundancy Check:循环冗余码校验)信息,该无效化也可以是例如用无效值来覆盖管理区域A的CRC信息。另外,该无效化也可以是全部以0xf等的值来覆盖记录在管理区域A中的信息从而删除信息。根据上述方法,存储器管理部108在再读出存储器110时,能够检测保障区域X的记录状态。即,在存储器110的读出时,存储器管理部108参照写入计数器小的管理区域A的状态,如果是在管理区域A的信息被无效化的情况下,则能够检测出保障区域X处于稳定的记录状态。相反,在管理区域A的信息没有被无效化的情况下,管理区域设定部118对照管理区域X所保持的信息和管理区域A或B所保持的地址信息,从而能够选择应该设为有效的管理区域。这样,管理区域设定部118根据记录在保障区域X中的信息,将管理区域A或者B设定为有效的管理区域。如果确定为保障区域X的信息和管理区域A的地址信息一致或者相同,则管理区域设定部118将管理区域A的地址信息所表示的数据区域设定为有效的数据区域。
在此,参照图4的流程图,整理说明上述更新处理的流程。首先,通信装置100接收数据区域114内的数据更新命令(S102),记录控制部116对数据区域114内的空数据区域写入接收到的数据(S104)。之后,记录控制部116将表示更新后变成有效的数据区域位置的地址信息写入管理区域B(S106)。并且,存储器管理部108使管理区域B的写入计数器递增(S108)。在对管理区域B的地址信息的记录处理完成之后,记录控制部116对保障区域X写入与记录在管理区域B中的地址信息相同的信息(S110)。并且,在对保障区域X的地址信息写入完成之后,存储器管理部108使保存旧地址信息的管理区域A无效化(S112)。
这样,当更新处理流程正常完成时,在保障区域X中记录与管理区域B相同的信息,管理区域A成为使地址信息无效化的状态。如果在保障区域X的记录途中更新处理流程被中断的情况下,管理区域A是保持了旧地址信息的状态。在这种情况下,存储器管理部108能够使用该旧地址信息,将有效的数据区域恢复到更新前的状态。另外,在更新管理区域B的地址信息的途中更新处理中断的情况下,由于在保障区域X中记录有在管理区域A中记录的更新前的地址信息,因此存储器管理部108能够确认保障区域X的信息和管理区域A的信息一致,执行根据更新前的地址信息进行的有效数据区域的恢复处理。这样,通过上述结构能够进行更安全的记录数据的管理。
以上,说明了数据记录处理的过程。下面参照图5以及图6,说明数据读出过程中的管理区域的状态判断以及恢复处理的过程。如上所述,通过使对冗长地构成的保障区域X的地址信息的记录以及无效的管理区域的地址信息无效化的处理,该数据存储装置能够安全地执行数据的更新或者恢复处理。但是,根据由于电源切断等导致的记录处理中断的定时,在所需要的时间后,具有一部分管理区域被破坏之类的发生难以预测的事态的情况。例如是如下情况等:由于对数据存储装置施加了物理冲击,因此使耗费很长时间记录的信息损坏。下面,包括这种情况来说明检测各管理区域状态的单元以及判断记录状态的方法。
首先,参照图5所示的流程图来说明各管理区域的状态判断。该过程通常大多是在通信装置100的起动处理时进行的。即,是因为设想了正在进行如上所述的数据更新处理时电源供给被切断、或通信处理停止的情况下的恢复处理。对管理区域112中包含的管理区域(A/B)和保障区域X,同样地执行下面叙述的状态判断处理。
首先,存储器管理部108确认管理区域保持的CRC的正误(S202)。如果CRC正确,存储器管理部108判断为该管理区域的状态是状态00(S204)。状态00表示CRC正确的状态。但是,存储器管理部108在记录的信息全部是0x0的情况下(错误状态的情况下)也认为CRC正确,因此进一步判断该信息是否全部是0x0(S206)。其结果,在该信息全部是0x0的情况下,存储器管理区域108判断为该管理区域的状态是状态01(S208),否则,判断为是状态00,结束状态判断。其中,状态01表示全部信息是0x0的不正确的状态。
另一方面,在S202中判断为CRC不正确的情况下,首先存储器管理部108判断为该管理区域是状态10(S210)。其中,状态10表示CRC不正确的状态。并且,由于管理区域所保持的信息全部为0xf的状态表示删除时的状态,因此存储器管理部108进行该信息是否全部为0xf的判断(S212)。假设在管理区域的信息全部为0xf的情况下,存储器管理部108判断为该管理区域是状态11(S214),否则,判断为是状态10,从而结束状态判断的过程。其中,状态11表示全部为0xf的状态。这样,存储器管理部108在数据存储装置起动时,判断全部的管理区域(A/B)以及保障区域X的状态。在此判断的状态是判断该管理区域是否为正常的状态。因而,即使记录在该管理区域中的地址信息没有损坏,只要该管理区域的信息被无效化,存储器管理部108就将该管理区域判断为不是正常的状态。
下面参照图6,说明根据通过上述判断处理决定的各管理区域的状态来选择有效的管理区域的过程。图6是表示选择有效的管理区域的处理流程的流程图。在图5的状态判断中详细地判断了状态,但是在此只关注各管理区域的状态是否为状态00(正常状态)来执行判断。
首先,存储器管理部108对管理区域(A/B)以及保障区域X实施图5所示的状态判断的处理,判断各管理区域的状态(S302)。然后,存储器管理部108参照判断的各管理区域的状态,来判断状态的组合(S304)。在图6中揭示了能想到的全部组合,但是在通常的利用环境中还包括极少发生的事例。
首先,考虑管理区域A、管理区域B以及保障区域X中的任何一个都是状态00以外的情况(S306)。该状态表示存储器110由于在存储器110内有物理损伤、存储器管理部108发生故障或者其他理由而处于不正确的状态(S308)。因而,在这种情况下保存在存储器110内的数据被破坏或者无效,因此必须中止使用通信装置100本身。
然后,考虑管理状态A和管理区域B是状态00以外、且保障区域X是状态00的情况(S310)。在这种情况下,记录控制部116将保障区域X的信息覆盖到管理区域A上进行复制(S312)。并且,管理区域设定部118将管理区域A选择为有效的管理区域,来结束有效管理区域的判断处理。此外,在S312的过程中,也可以是将保障区域X的信息覆盖复制到管理区域B上的结构。在这种情况下,将管理区域B选择为有效的管理区域,并结束有效管理区域的判断处理。
然后,考虑管理区域A和保障区域X是状态00、且管理区域B是状态00以外的情况(S316)。在这种情况下,存储器管理部108判断保障区域X的信息和管理区域A的信息是否相同(S318)。如果相同,则管理区域设定部118将管理区域A选择为有效的管理区域(S320),并结束有效的管理区域的选择过程。相反,在不相同的情况下,数据被破坏或者无效(S308),因此必须中止使用通信装置100。
然后,考虑管理区域A是状态00以外、且管理区域B和保障区域X是状态00的情况(S322)。在这种情况下,存储器管理部108判断保障区域X的信息和管理区域B的信息是否一致(S324)。假设一致的情况下,管理区域设定部118将管理区域B选择为有效的管理区域(S326),并结束有效的管理区域的选择过程。相反,在不一致的情况下,数据被破坏或者无效(S308),因此必须中止使用通信装置100。
然后,考虑管理区域A、管理区域B以及保障区域X中的任何一个都是状态为00的情况(S328)。在这种情况下,存储器管理部108首先判断保障区域X的信息和管理区域A的信息是否一致(S330)。假设一致的情况下,管理区域设定部118将管理区A选择为有效的管理区域(S332)。并且,记录控制部116删除管理区域B的信息(S334)。相反,在不一致的情况下,存储器管理部108判断保障区域X的信息和管理区域B的信息是否一致(S336)。假设保障区域X的信息和管理区域B的信息一致的情况下,管理区域设定部118将管理区域B选择为有效的管理区域(S338)。另外,记录控制部116删除管理区域A的信息(S340)。另一方面,在保障区域X的信息和管理区域B的信息不一致的情况下,数据被破坏或者无效(S308),因此必须中止使用通信装置100。
然后,考虑管理区域A和管理区域B是状态00、且保障区域X是状态00以外的情况(S342)。在这种情况下,存储器管理部108首先比较管理区域A和管理区域B的写入计数器的数值。在管理区域A的写入计数器(Wa)小于管理区域B的写入计数器(Wb)的情况下(Wa<Wb),管理区域设定部118将管理区域A选择为有效的管理区域(S346)。另外,记录控制部116将管理区域A的信息覆盖复制到保障区域X上(S348)。并且,记录控制部116删除管理区域B的信息(S350),并结束有效的管理区域的选择处理。相反,在管理区域A的写入计数器大于管理区域B的写入计数器的情况下(Wa>Wb),管理区域设定部118将管理区域B选择为有效的管理区域(S352)。另外,记录控制部116将管理区域B的信息覆盖复制到保障区域X上(S354)。并且,记录控制部116删除管理区域A的信息(S356),并结束有效管理区域的选择处理。
然后,考虑管理区域A是状态00、且管理区域B和保障区域X是状态00以外的情况(S358)。在这种情况下,管理区域设定部118将管理区域A选择为有效的管理区域(S346)。另外,记录控制部116将管理区域A的信息覆盖复制到保障区域X上(S348)。之后,记录控制部116删除管理区域B的信息(S350),并结束有效的管理区域的选择处理。
然后,研究管理区域A和保障区域X是状态00以外、且管理区域B是状态00的情况(S360)。在这种情况下,管理区域设定部118将管理区域B选择为有效的管理区域(S352)。另外,记录控制部116将管理区域B的信息覆盖复制到保障区域X上(S354)。并且,记录控制部116删除管理区域A的信息(S356),并结束有效的管理区域的选择处理。
以上,如参照图6详细进行说明那样,管理区域设定部118能够根据各管理区域的状态来判断保持了正常地址信息的管理区域,选择有效的管理区域。因而,即使有由于数据记录处理时发生的故障而导致的写入未完成等,存储器管理部108也能够进行适当的数据恢复处理。
<第2实施方式>
下面说明与本发明第2实施方式有关的数据存储装置。其中,对于与在上述第1实施方式中说明的内容重复的部分,省略其说明,只对不同点详细地进行说明。首先,参照图7简单地说明第2实施方式所涉及的存储器110的结构与上述第1实施方式所涉及的存储器110的结构之间的不同点。
与第2实施方式有关的存储器110具备多个管理区域202、204、208,形成了管理区域204和管理区域208从属于管理区域202的分层结构。另外,数据区域206和数据区域210,形成了分别从属于管理区域204和管理区域208的结构。另外,管理区域202具有管理区域1-A、管理区域1-B以及保障区域X,管理区域204具有管理区域2-A和管理区域2-B,管理区域208具有管理区域3-A和管理区域3-B。此时,管理区域1-A对应于上述第1管理区域,管理区域1-B对应于上述第2管理区域。当与上述第1实施方式所涉及的管理区域112的结构进行比较时,不同点在于在管理区域204、208中不存在冗长地构成的保障区域X。另外,由管理区域202管理的信息,是表示处于管理区域204以及管理区域208内部中的管理区域之中有效的管理区域的地址信息E1,这点也不同。
以上是第2实施方式和上述第1实施方式之间的主要不同点。因而,由于关于通信装置的结构以及记录状态的判断方法实质上相同,所以省略详细说明。因此,参照图7和图8详细叙述数据的更新方法。
数据的更新方法
图7是表示数据更新后的存储器110内的数据结构的框图。在数据更新前,在数据区域1中保存Da,在数据区域3中保存Db,在数据区域5中保存Dc,在数据区域6中保存Dd,管理区域1-A、管理区域2-A以及管理区域3-B有效。根据这种状态,将保存在数据区域3中的数据Db更新为Db’、将保存在数据区域5中的数据Dc更新为Dc’的过程作为例子,说明与本实施方式有关的数据更新方法。
首先,记录控制部116对作为更新前的空数据区域的数据区域2以及数据区域7分别写入数据Db’以及数据Dc’。并且,记录控制部116将表示更新后的有效数据区域的地址信息E2写入管理区域2-B,将地址信息E3写入管理区域3-A。之后,存储器管理部108使管理区域2-B以及管理区域3-A的写入计数器递增(Num=2)。并且,记录控制部116将表示管理区域204、208的有效的管理区域的地址信息E1记录到管理区域1-B中。而且,存储器管理部108使管理区域1-B的写入计数器递增(Num=2)。当对管理区域1-B的记录处理完成时,记录控制部116将与记录在管理区域1-B中的信息相同的信息记录到保障区域X中。并且,在保障区域X的记录处理完成后,存储器管理部108使管理区域1-A的信息无效化。该无效化例如是破坏管理区域1-A所保持的CRC信息。
在此,参照图8的流程图,整理说明上述写入处理的流程。首先,通信装置100接收更新命令(S402),记录控制部116向空数据区域写入更新后的数据(Db’、Dc’)(S404)。另外,记录控制部116将表示数据区域206内的有效数据区域的地址信息E2写入管理区域2-B(S406)。并且,存储器管理部108使管理区域2-B的写入计数器递增(S408)。然后,记录控制部116将表示数据区域210内的有效数据区域的地址信息E3写入管理区域3-A(S410)。然后,存储器管理部108使管理区域3-A的写入计数器递增(S412)。之后,记录控制部116将数据更新后变为有效的管理区域的地址信息E1写入管理区域1-B(S414)。并且,存储器管理部108使管理区域1-B的写入计数器递增(S416)。在管理区域1-B的更新处理完成后,记录控制部116将与记录在管理区域1-B中的地址信息E1相同的信息写入保障区域X(S418)。并且,在对保障区域X的写入处理完成之后,存储器管理部108使管理区域1-A的信息无效化(S420)。通过以上的过程,进行数据的更新处理。此外,对于再起动时的恢复处理,与上述第1实施方式中的恢复处理相同,按照图5以及图6所示的流程图执行恢复处理。
当执行这种更新处理时,在数据存储装置起动时,能够通过对照存储在保障区域X中的信息和记录在管理区域1-A或者1-B中的地址信息,来判断应该使那个管理区域有效。例如,在保障区域X所保持的信息内容是与管理区域1-A所保持的地址信息对应的信息的情况下,管理区域设定部118能够将管理区域1-A选择为有效的管理区域。并且,在数据存储装置起动时,存储器管理部108能够通过参照管理区域1-A和管理区域1-B的状态,来判断保障区域X的记录状态。例如,在数据存储装置起动时,管理区域1-A的写入计数器小于管理区域1-B的写入计数器、使管理区域1-A的信息无效化的情况下,如果保障区域X的状态正常,存储器管理部108能够判断为将与管理区域1-B的地址信息对应的信息确实地记录到保障区域X中。在这种情况下,管理区域设定部118将管理区域1-B选择为有效的管理区域。
如上所述,根据与本发明有关的第1和第2实施方式,存储器管理部108参照写入计数器,在判断各管理区域所保持的地址信息的新旧后,能够判断保存更新前的地址信息的管理区域的状态,从而判断保障区域X的信息是否是确实被记录的信息。另外,管理区域设定部118能够通过对照保障区域X的信息和其他管理区域的地址信息,选择应为有效的管理区域。当使用这种存储器管理方法时,存储器管理部108在数据存储装置起动时,能够判断保持在各管理区域中的地址信息是否是确实写入的状态,同时能够判断保持在保障区域中的信息是否是确实记录的状态。
另外,根据与第2实施方式有关的数据存储装置的结构,在构筑分层结构的管理区域的情况下,也能够通过将最上位层的管理区域设为冗长的结构,从而进行可靠性高的数据记录管理。特别是,一个管理区域能够管理的数据区域的大小根据所使用的记录介质等而有限制,因此在管理容量大的数据区域的情况下,认为构筑第2实施方式所示那样的分层结构的管理区域是现实的。因而,通过以上述第1实施方式所示的存储器管理方法为基础,并应用与第2实施方式有关的存储器管理方法,从而更实际地实现安全的数据记录管理。
以上,参照附图说明本发明的最佳实施方式,但是不意味着本发明限于上述例子。如果是本领域技术人员,当然能够在权利要求书记载的范畴内想到各种变更例或者修正例,关于这些当然也属于本发明的技术范围。
例如,像与上述第2实施方式有关的存储器110那样,在具有分层结构的管理区域的情况下,也可以是在各管理区域中设置冗长的保障区域X的结构。另外,也可以是数据区域进一步从属于最上位层的管理区域的结构。通过上述结构,不仅能够提高存储数据的可靠性,而且能够有效地灵活应用管理区域的存储区域。
另外,在上述第1和第2实施方式中,说明了存储器110具有两个管理区域(A/B)和保障区域X的结构,但是不限于此,也可以是具有三个以上的管理区域(A/B/C...)的结构。另外,存储器110也可以是包含多个保障区域的结构。
Claims (6)
1.一种数据存储装置,其特征在于,具备:
存储器,其具有第1和第2管理区域以及保障区域,其中,所述第1和第2管理区域记录表示有效的数据区域的地址信息,所述保障区域记录与记录在上述第1或者第2管理区域中的地址信息对应的信息;
记录控制部,当记录在上述第1或者第2管理区域中的地址信息被更新后,将记录在上述保障区域中的信息改写为与该更新后的地址信息对应的信息;以及
管理区域设定部,其根据记录在上述保障区域中的信息,将上述第1或者第2管理区域设定为有效的管理区域。
2.根据权利要求1所述的数据存储装置,其特征在于,
上述记录控制部在完成对上述保障区域的改写处理之后,使上述第1或者第2管理区域之中没有设定为上述有效的管理区域的管理区域中所记录的地址信息无效化。
3.根据权利要求2所述的数据存储装置,其特征在于,
上述管理区域设定部在上述数据存储装置起动时,根据上述第1或者第2管理区域是否被无效化,判断上述保障区域是否有效。
4.根据权利要求1~3任意一项所述的数据存储装置,其特征在于,
上述存储器具有:记录表示有效的数据区域的地址信息的多个辅助管理区域、上述第1和第2管理区域以及上述保障区域,
上述第1或者第2管理区域记录表示上述有效的辅助管理区域的地址信息,来代替表示上述有效的数据区域的地址信息。
5.一种存储器管理方法,其特征在于,包括:
更新步骤,在具有第1和第2管理区域以及保障区域的存储器中,更新记录在上述第1或者第2管理区域中的地址信息,其中,上述第1和第2管理区域记录表示有效的数据区域的地址信息,上述保障区域记录与记录在上述第1或者第2管理区域中的地址信息对应的信息;
改写步骤,将记录在上述保障区域中的信息改写为与该更新后的地址信息对应的信息;以及
设定步骤,根据记录在上述保障区域中的信息,将上述第1或者第2管理区域设定为有效的管理区域。
6.一种程序,用于使计算机实现如下功能:
更新功能,在具有第1和第2管理区域以及保障区域的存储器中,更新记录在上述第1或者第2管理区域中的地址信息,其中,上述第1和第2管理区域记录表示有效的数据区域的地址信息,上述保障区域记录与记录在上述第1或者第2管理区域中的地址信息对应的信息;
改写功能,将记录在上述保障区域中的信息改写为与该更新后的地址信息对应的信息;以及
设定功能,根据记录在上述保障区域中的信息,将上述第1或者第2管理区域设定为有效的管理区域。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006144616A JP2007316870A (ja) | 2006-05-24 | 2006-05-24 | データ記憶装置、メモリ管理方法、及びプログラム |
JP2006144616 | 2006-05-24 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101082885A true CN101082885A (zh) | 2007-12-05 |
CN100555250C CN100555250C (zh) | 2009-10-28 |
Family
ID=38749419
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2007101052484A Expired - Fee Related CN100555250C (zh) | 2006-05-24 | 2007-05-24 | 数据存储装置和存储器管理方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20070274302A1 (zh) |
JP (1) | JP2007316870A (zh) |
CN (1) | CN100555250C (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108885669A (zh) * | 2016-03-24 | 2018-11-23 | 株式会社自动网络技术研究所 | 信息处理装置及信息处理系统 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011165249A (ja) * | 2010-02-08 | 2011-08-25 | Elpida Memory Inc | 半導体装置 |
US11762710B2 (en) * | 2020-06-23 | 2023-09-19 | Juniper Networks, Inc. | Multithreaded route processing for routing information display |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100704998B1 (ko) * | 1999-02-26 | 2007-04-09 | 소니 가부시끼 가이샤 | 기록방법, 관리방법 및 기록장치 |
TWI240864B (en) * | 2001-06-13 | 2005-10-01 | Hitachi Ltd | Memory device |
JP2003141055A (ja) * | 2001-11-07 | 2003-05-16 | Hitachi Ltd | 計算機システムの接続設定方法 |
JP4701618B2 (ja) * | 2004-02-23 | 2011-06-15 | ソニー株式会社 | 情報処理装置及び情報処理方法、並びにコンピュータ・プログラム |
WO2005103903A1 (ja) * | 2004-04-20 | 2005-11-03 | Matsushita Electric Industrial Co., Ltd. | 不揮発性記憶システム |
JP2005339721A (ja) * | 2004-05-28 | 2005-12-08 | Sony Corp | 記録装置および方法、記録媒体、並びにプログラム |
-
2006
- 2006-05-24 JP JP2006144616A patent/JP2007316870A/ja active Pending
-
2007
- 2007-05-21 US US11/751,113 patent/US20070274302A1/en not_active Abandoned
- 2007-05-24 CN CNB2007101052484A patent/CN100555250C/zh not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108885669A (zh) * | 2016-03-24 | 2018-11-23 | 株式会社自动网络技术研究所 | 信息处理装置及信息处理系统 |
Also Published As
Publication number | Publication date |
---|---|
JP2007316870A (ja) | 2007-12-06 |
CN100555250C (zh) | 2009-10-28 |
US20070274302A1 (en) | 2007-11-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101095121B (zh) | 高速暂存区块 | |
CN102089746B (zh) | 采用事务日志的闪存恢复 | |
CN101231617B (zh) | 闪存设备的数据处理方法 | |
CN101903866B (zh) | 非易失存储介质中的数据存储的方法和系统 | |
JP4323707B2 (ja) | フラッシュメモリの欠陥管理方法 | |
EP1197868B1 (en) | Method of driving remapping in flash memory and flash memory architecture suitable therefor | |
CN101401076B (zh) | 针对具有可擦除/可重写存储器使用带有主机装置的一次或数次可编程存储器的方法及装置 | |
US8041883B2 (en) | Restoring storage devices based on flash memories and related circuit, system, and method | |
CN102150142A (zh) | 存储器系统和控制存储器系统的方法 | |
CN101978357A (zh) | 数据更新方法、存储器系统和存储器设备 | |
WO2007000862A1 (ja) | メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム、及びデータ書き込み方法 | |
JP2000181805A (ja) | 記憶装置 | |
CN102203873A (zh) | 重编程页而不向存储器设备重输数据的页缓冲器编程命令和方法 | |
CN101689140A (zh) | 存储器系统 | |
CN101681311A (zh) | 存储器系统 | |
KR100742849B1 (ko) | 데이타 기억 장치, 데이타 처리 시스템, 데이타 처리 방법 및 데이타 처리 장치 | |
WO2003010671A1 (en) | Non-volatile memory and non-volatile memory data rewriting method | |
CN107391300A (zh) | 一种提高闪存数据存储可靠性的方法及系统 | |
CN104937562A (zh) | 非易失性存储器写入机制 | |
CN100555250C (zh) | 数据存储装置和存储器管理方法 | |
CN106227620A (zh) | 可恢复的Flash数据存储方法 | |
CN111124739B (zh) | 用于非易失性存储器的防撕除保护系统 | |
CN101923500A (zh) | 一种嵌入式设备中引导程序备份及更新的方法及装置 | |
JP2008225672A (ja) | 半導体メモリ装置 | |
CN104575605B (zh) | 存储器装置及使用非易失性存储器对系统进行开机的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
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: 20091028 Termination date: 20130524 |