数据处理装置和方法

文档序号:6669549阅读:164来源:国知局
专利名称:数据处理装置和方法
技术领域
本发明涉及一种数据处理方法和数据处理装置,特别是涉及最好用于例如IC(集成电路)卡等在非接触状态下执行数据的发送和接收的数据处理方法和数据处理装置。
背景技术
现已开发出了一种IC卡(智能卡),该卡准备用于电子货币系统或保密系统中。IC卡与用于完成各种处理功能的CPU (中央处理单元)、用于存储数据的存储器或 用于类似处理所需的装置共同使用,所述处理包括在所述IC卡与预定读/写器(R/W)接触 状态下执行数据的发送和接收。同时,还存在一种无电池型IC卡,其本身不带电池,电源由R/W施加到该无电池型 IC卡上。另外还存在一种IC卡,这种IC卡使用电磁波在非接触状态下在所述IC卡和R/W 之间执行数据的发送和接收,并通过电磁波获得所需的电源。但是,于非接触状态下,在IC卡和R/W之间执行数据的发送和接收存在一个问题, 即当对包含在IC卡中的存储器进行访问的过程中电磁波的接收状态衰减时,则不能提供 足够的功率,并由此引起存储器中数据一致性问题(引起存储器出错)。另外,当通过使所述IC卡与R/W接触而执行数据的发送和接收时,在用户能够自 由地将所述IC卡插入到R/W上或从中拆下的情况下,如果当所述IC卡在对存储器进行访 问的中间将其从R/W上拆下,也可能引起存储器出错。在这种情况下,当数据被保持在例如MS-DOS(微软磁盘操作系统)(已经进行了商 标登记)FAT (文件分配表)中的用于存储数据的每个单元(在MS-DOS系统情况下的扇区) 处时,在FAT中存储器已经出错的情况下,数据(文件)的所有位置信息都将丢失且无法再 对数据进行有效访问。因此,当存储器出错时,在最坏的情况下,所述IC卡不能使用,因此,针对存储器 出错问题,需要某些对策。另外,对于所述IC卡,利用预定块的一个单元读出和写入数据,因此多个相关数 据可以被分别写入到多个块中,即例如,当所述IC卡被用做电子货币或类似物以用于交 付火车费时,可能会出现希望存储有关记录(使用史)的情况。另外,例如登车站和登车时 间、下车站和下车时间、登车站和下车站之间的费用等的相关信息被作为记录加以存储时, 可以通过将所述信息分成多个块写入。因此,在这种情况下,不仅涉及单个块方面的存储器 出错,而且涉及由已经写入相关数据的多个块中的任何一个块引起的存储器出错。

发明内容
就是鉴于这种情况提出了本发明,本发明能够有效地处理存储器出错。根据本发明信息处理方法的第一方面,根据存储到第一或第二区域中任一个区域 中的块号,将被写入到所述数据区域中一个或多个块中的数据写入到一个或多个更新块 中,以便更新构成数据区域的块中的数据和所述块的块号,所述块是已经被更新的块,已经 被写入到这些块中的数据被存储到第一和第二存储区域的其它位置处。根据本发明信息处理装置的第二方面,提供了一种数据写入装置,用于根据被存 储到第一和第二区域中任一个区域内的块号将需要被写入到一个或多个所述数据区域块 中的数据写入到一个或多个更新块中,以便更新构成所述数据区域的块中的数据,并提供 了一个块号写入装置,用于将已经是被写入数据的更新块的块号存入到第一和第二区域的 一个区域中。根据本发明信息处理方法和信息处理装置的第一和第二方面,需要根据被存储到 第一和第二区域中任一个区域中的块号,将被写入到所述数据区域中一个或多个块内数据 写入到一个或多个更新块中,以便更新构成所述数据区域的块中的数据并将已经是被写入 数据的更新块的块号存储到第一和第二区域中的另一个区域中。因此,不仅在将数据写入 到一个块的情况下、而且在将块写入到多个块的情况下,也能够对存储器出错进行有效处 理。根据信息处理方法的第三个方面,需要被写入到与存储在块号区的块中的块号相 对应的数据区的一个或多个块中的数据,被写入到更新块的一个或多个更新块中,以便更 新构成数据区的块中的数据,所述块号区的块与存储在第一和第二区中任一区的块号相对 应。已经成为数据区的更新块的块号被写入更新块,以便更新构成块号区的块中的块号,其 中所述数据区已写入了数据。同时,已经成为块号区中更新块的块的块号被存入第一和第 二区中的另一个当中,其中所述块号区中已写入了块号。根据信息处理装置的第四方面,提供有一个数据写入装置,用于将写入到与存储 在块号区域的块中的块号相对应的数据区的一个或多个块中,以便更新构成数据区的块中 数据,所述块号区的块与存储在第一和第二区中任一区的块号相对应;第一块号写入装置, 用于将已被写入数据的数据区域更新块的块的块号写到更新块中,以用于更新构成块号区 的块中的块号;和第二块号写入装置,用于使第一和第二区域中的另一个区域存储已经成 为块号区的更新块的块的块号,其中所述块号已被写入到所述块号区中。根据数据处理方法的第三方面以及数据处理装置的第四方面,写入到与存储到块 号区的块的块号相对应的数据区的一个或多个块中的数据,被写入到一个或多个更新块 中,以更新构成数据区域的块中的数据,其中所述块号区的块与第一和第二区中任一个中 存储的块号相对应。已经成为数据区更新块的块的块号被写入到更新块中,以便更新构成 块号区的块中的块号,其中,数据区已写入数据;同时已经成为块号区更新块的块的块号被 存入到第一和第二区域中的另一个当中,其中所述块号已经写入到所述块号区中。因此,即 使当数据被写入到更多的块中时,也可以解决存储器出错的问题。


图1的方框图示出了应用了本发明的无触点卡系统的一个实施例的构成实例;图2的方框图示出了图1所示读/写器1的构成实例;图3的方框图示出了图1所示IC卡2的构成实例;图4A和4B是用于解释本发明的基本原理的框图;图5的流程图用于解释具有图4所示结构存储器的读出处理;图6的流程图用于解释具有图4所示结构的存储器的写入处理;图7示出了应用了单指针系统的存储器结构实例;图8示出了应用了单指针系统的存储器结构实例;图9的流程图用于解释由单指针系统执行的读出处理;图10的流程图用于解释由单指针系统执行的写入处理;图11示出了应用了双指针系统的存储器结构实例;图12示出了应用了双指针系统的存储器结构实例;图13的流程图用于解释由双指针系统执行的读出处理;图14的流程图用于解释由双指针系统执行的写入处理;图15示出了当数据由双指针系统读出和写入时,图3所示EEPR0M66的结构实例;图16 (A),16 (B)示出了用于构成一个有效确定块的物理块的结构实例;图17(A),17(B)示出了用于构成指针区域的物理块的结构实例;图18的流程图用于解释初始化处理,该初始化处理在执行对EEPR0M66读出和写 入之前执行;图19示出了 RAM67的存储内容;图20的流程图用于解释图18所示步骤S81处的详细处理;图21的流程图用于解释对EEPR0M66的读出处理;图22的流程图用于解释在图21步骤S103处的详细处理;图23的流程图用于解释对EEPR0M66的写入处理;图24的流程图用于进一步解释在图23步骤S123处的详细处理;图25用于解释图24步骤S143和S144的处理;图26的流程图用于进一步解释图23步骤S130处的详细处理;图27用于解释图26步骤S152和S153的处理;和图28用于解释图23步骤S135处的处理。
具体实施例方式图1示出了应用了本发明的一个无触点卡系统的实施例的结构实例。所述无触点卡系统由读/写器R/Wl、IC卡2和控制器3组成,使用电磁波在无触 点状态下在R/W1和IC卡2之间执行数据的发送和接收。即R/W1发送预定命令给IC卡2,IC卡2接收该命令并根据这个命令执行处理。 另外,IC卡2根据处理结果发送一个应答数据给R/W1。R/W1经过一个预定接口(例如,与RS-485A等规定相符)连接到控制器3,且控制 器3通过向R/W1提供预定控制信号使R/W1执行预定处理。
图2示出了图1所示R/W1的结构实例。在IC21中,用于处理数据的DPU (数据处理单元)31、用于处理发送给IC卡2的数 据和从IC卡2接收的数据的SPU(信号处理单元)32、用于执行与控制器3通信的SCC(串行 通信控制器)33和预先存有处理数据所需信息的R0M41及暂存处理过程中间数据的RAM42 构成的存储单元34被经过总线连接。另外,连接到所述总线上的还有一个闪速存储器22。DPU31输出一个向IC卡2发送的命令给SPU32并从SPU32接收IC卡2所接收到 的应答数据。SPU32根据向IC卡2发送的命令执行一个预定处理(例如BPSK(双相移键入) 调制(对一个相位码编码)等),然后将其输出给一个调制电路23并从解调电路25接收由 IC卡2发送的一个应答数据并根据所述数据执行一个预定处理。调制电路23利用由SPU32提供的数据并以ASK(幅值移位键入方式)调制由震荡 器26提供的预定频率(例如13. 56MHz)对载波进行调制,并经过天线27输出作为电磁波 的调制波给IC卡2。在这种情况下,调制电路23以调制度1或更少地执行ASK调制。艮口 即使是在数据处于低电平的情况下,也可以避免调制波的最大幅值被废除。解调电路25解调经过天线27接收的调制波(ASK-调制波)并输出解调数据给 SPU32。图3示出了图1所示IC卡2的结构实例。根据IC卡2,IC51接收从R/W1发送的 调制波。另外,电容器52与天线53 —起构成了 LC电路并与具有预定频率(载波频率)的 电磁波同步(谐振)。在RF接口单元61中,ASK解调单元81检测和解调经过天线53接收的调制波(ASK 调制波),向BPSK解调电路62输出解调信号;PLL (相位锁定环)单元63和电压调节器82 稳定由ASK解调单元81检测的信号并将该信号作为直流电源提供给各电路。另外,在RF接口单元61中,震荡电路83使具有和数据时钟频率相同频率的信号 产生震荡并将该信号输出给PLL单元63。RF接口单元61的ASK调制单元84根据计算单元64提供的数据改变作为IC卡2 电源的天线53的负载。例如,可以通过一个过程来实现,在该过程中,根据所述数据使一个 预定开关元件导通/截止(0N/0FF),并且只有当所述开关元件处于导通状态时才可以将一 个预定负载并联到天线53上。ASK调制单元84利用ASK调制方法调制经过天线53接收的调制波并将调制后的 成分经过天线53发送给R/W1。PLL单元63根据由ASK解调单元81提供的数据与所述数据同步地形成一个时钟 信号并输出该时钟信号给BPSK解调电路62和BPSK调制电路68。当利用BPSK调制方式对由ASK解调单元81解调的数据进行调制时,BPSK解调电 路62根据从PLL单元63提供的时钟信号执行数据的解调(译码一个Chester码)并输出 解调数据给计算单元64。当从BPSK解调电路62提供的数据被加密时,计算单元64在编码/译码单元92 中译码所述数据并在定序器91 (数据写装置)(块号写装置)处处理所述数据。另外,当数 据没有被加密时,BPSK解调电路62提供的数据不经过编码/译码单元92的处理而直接提供给定序器91。定序器91根据作为命令提供给它的数据执行处理。即例如,定序器91向EEPR0M 66 (存储装置)写入或从EEPR0M 66读出数据。计算单元64的奇偶计算单元93计算Reed-Solomon码作为来自数据的奇偶性,所 述数据是向ROM 65存储或是存储在EEPR0M 66中的数据。另外,在定序器91中执行预定处理之后,计算单元64根据处理输出应答数据(用 于向R/W1发送的数据)给BPSK调制电路68。BPSK调制电路68对计算单元64提供的数据以BPSK方式调制并输出数据给RF接 口单元61的ASK调制单元84。ROM 65存储由定序器91执行的处理程序或其它所需数据。当定序器91执行处理 时,RAM 67暂存处理过程当中的数据。EEPR0M(电可擦可编程ROM) 66是一个非易失存储器,用于在IC卡2结束与R/W1 的通信和停止提供电能之后继续存储数据。下面解释在R/W1和IC卡2之间数据的发送和接收处理。R/ffl/(图2)从天线27辐射一个预定电磁波,监视天线27的负载状态并进行等 待,直到由于一个IC卡2介入而检测到负载状态发生变化为止。在这种情况下,R/W1可以 重复执行处理(轮询)以辐射一个被具有预定短模式的数据进行ASK调制的电磁波,并以 固定的时间间隔呼叫IC卡2直到被提供来自IC卡2的应答为止。就R/W1而言,当检测到一个IC卡介入时,R/W1的SPU 32利用作为载波的具有预 定频率(例如可以是数据时钟频率的两倍或更多)矩形波的数据(根据处理过程,使IC卡 2工作的命令或是写入IC卡2的数据等等)执行BPSK调制并输出所形成的调制波给调制 电路23。顺带提到,在BPSK调制中,使用不同的转换可以使数据响应调制波的相位变化。 在这种情况下,由于即使是在BPSK调制信号被反相时,信号也将被解调成原始数据,所以, 不需要考虑在解调操作中调制波的极性问题。调制电路23利用小于1(例如是0. 1)的调制度(=数字信号的最大幅值/载波的 最大幅值)根据预定载波进行ASK调制并经过天线27向IC卡2发送所形成的调制波(ASK 调制波)。另外,当没有执行所述发送时,调制电路23被构成以利用由例如数字信号的两个 电平(高电平和低电平中)的高电平形成一个调制波。就IC卡2而言(图3),由R/W1的天线27辐射的部分电磁波在由天线53和电容 器52构成的LC电路中被转换成电信号,所述电信号(调制波)被输出给IC51的RF接口 61。另外,通过整流和平滑调制波,RF接口 61的ASK解调单元81执行包络检测,将如此形 成的信号提供给电压调节器82,通过抑制信号中的直流分量提取数据信号并输出数据信号 给BPSK解调电路62和PLL单元63。电压调节器82稳定从ASK解调单元81提供的信号,形成直流电源并将它提供给 各电路。另外,在这种情况下,由例如下述等式表示天线53的端电压W V0 = V10 (1+kxVs (t)) cos (w t)
其中,V10coS( t)表示载波,符号k指定调制度和Vs(t)表示从SPU 32输出的 数据。另外,在已经被ASK解调单元81整流的电压低电平值VLR例如可用下式表示VLR = V10 (1+kx (_1)) -Vf在这个等式中,符号Vf指定在一个二极管处的压降,该二极管构成一个整流电 路,用于在ASK解调单元81中执行整流和平滑操作,且电压大约0. 7伏。在接收已经被ASK解调单元81整流和平滑的信号的基础上,电压调节器82稳定 所述信号并将该信号作为直流电源提供给从计算单元64开始的各电路。另外,由于解调波 的解调度(k)小于1,所以整流之后的电压变化(高电平和低电平之间的差)很小。因此, 电压调节器82很容易形成一个直流电源。例如,当利用3V或更高的V10接收具有5%调制度“k”的调制波时,整流后的低电 平电压VLR是2. 15 ( = 3 X (1-0. 05) -0. 7) V或更高,因此,电压调节器82能够提供作为电 源的足够电压给各种电路。另外,在这种情况下,整流后电压VI的交流分量(数据分量) 的幅值2XkXV10(峰-峰值)是0. 3( = 2X0. 05X3)V或更高,因此,ASK解调单元81能 够利用足够高的S/N比对数据解调。在这种方式下,使用具有小于1或更小调制度“k”的ASK调制波可以执行低误差 比(在高S/N比状态下)的通信,并且足以作为电源的直流电压可以被提供给IC卡2。在从ASK解调单元81接收数据信号(BPSK调制信号)的基础上,BPSK解调电路 62根据由PLL单元63提供的时钟信号解调数据信号并输出被调制的数据给计算单元64。当由BPSK解调电路62提供的数据被加密时,计算单元64译码在编码/译码单元 92处的数据并将所述数据(命令)提供给定序器91。另外,在这个周期期间,即在已经向 IC卡2发送了数据之后,R/W1等待一个时间周期直到接收到应答为止,同时传送值为1的 数据。因此,在这个周期内,IC卡2接收具有固定最大值的调制波。在处理结束之后,定序器91向BPSK调制电路68输出关于处理结果的数据(用于 向R/W1发送的数据)。与R/W1的SPU 32类似,BPSK调制电路68对数据以BPSK方式调制 (编码成一个Chester码)。此后,电路输出数据给RF接口单元61的ASK调制单元84。另外,ASK调制单元84根据通过利用开关元件改变连接到天线53两端负载的方 法而发送的数据对所接收的调制波进行ASK调制,借此,R/W1天线27的端电压被改变并将 数据发送给R/W1。同时,R/W1的调制电路23继续发送来自IC卡2的接收数据中的具有值1 (高电 平)的数据。另外,由IC卡2传送的数据根据天线27电磁耦合到IC卡2的天线53端电 压的微小变化(例如几十毫伏),在解调电路25中被检测。再有,通过利用具有高增益的放大器进行放大而对检测到的信号(ASK调制波)进 行调制并且作为解调结果而获得的数字数据被输出给解调电路25中的SPU 32。SPU 32解 调该数据(BPSK解调信号)并将其输出给DPU 31。DPU 31处理来自SPU 32的数据和根据 处理结果确定通信是否已经结束。另外,当确定通信将被再此执行时,与上述情况类似,在 R/W1和IC卡2之间执行通信。同时,当它确定通信即将结束时,R/W1结束与IC卡2的通 信处理。如上所述,R/W1利用具有小于1调制度“k”的ASK调制方式将数据传至IC卡2以
10及将数据发送给IC卡2,并且IC卡2接收所述数据,根据所述数据执行处理并根据处理结 果将数据返回给R/W1。下面解释由IC卡的定序器91(图3)对EEPR0M 66的读写处理,在此之前,首先解 释作为在前级准备的本发明处理存储器出错的方法。首先解释处理存储器出错方法的基本原理。现在,例如就存储器而言,假定由预定块单元执行读和写信息并考虑存储到某个 块B1的数据被更新的情况。当新的数据被写入(对已经存储的数据重写)到块B1时,在提供给IC卡的电能 在写操作中间变得不足的情况下,所述新数据不能被完全写入。存储在块B1中的数据被破 坏从而引起存储器出错。因此,当在需要被写到块B1的新数据实际被写到存储器B1的情 况下引起存储器出错时,系统不能对其中的内容进行处理。例如,当数据存储于相当于电子 货币的块B1,进行新的交易时,所划的帐利用上述方法作为新数据被写入,当产生存储器出 错时,所述IC卡不能使用。因此,将要被写到B1块中的新数据被写到与块B1不同的块B2中。在这种方式下, 虽然在向块B2写入新数据的过程中间,在产生存储器出错的情况下,一个新数据不能够被 完全写入且不能保证有效,但是,至少存储在块B1中的数据能够避免被破坏。另外,当进一步提供新数据时,数据被写到不同于块B2的一个块中(例如块B1)。 在这种方式下,在提供新数据的场合下,该新数据被写到除已经存储了在先写入数据的一 个块之外的一个块中,借此,通过写入所述新数据使至少是在先已经写入的数据不被破坏, 从而即使是在最坏的情况下也能够避免所述IC卡不能使用。下面参考图4A和4B解释向应用本发明原理的存储器写入数据和从该存贮器读取 数据的方法。根据图4A和4B,一个块是由11个字节构成的,其中,1个8位最新信息字节,8个 数据字节和2个有效信息字节被从前端连续配置。但是,一个块的位数和分配给最新信息 的位数、以及数据和有效信息不局限于上述。最新信息指出块存储的新内容(最新特性)以及可以使用的例如绝对数据和时间 以及顺序号等。即当使用绝对数据和时间时,在数据和存储数据的时间被作为最新信息存 储处,可以通过该最新信息检测存储数据的最新块。另外,当使用顺序数时,在例如每次写 数据时被增加的顺序号被作为最新信息存储时,具有最大值的值是最新的一个写数据。在这种情况下,如果能够识别至少两个块中的哪一个是新的就足够了。所述最新 的信息能够表示至少三种状态。例如,现在,当0、1和2的三个值被假定是能够表示所述三 种状态的最新信息,在每次向两个块之一的一个块写数据时,0、1、2、0、a' a' a'可以被 作为已经写入数据的一个块的最新信息。在这种情况下,当两个块的最新信息是数据0和 1时,具有数据1的块较新,当它们是1和2时,具有数据2的块较新,和当它们是数据2和 0时,具有数据0的块较新。当0、1和2的三个值以这种方式用做最新信息时,数据位数为 2就足够了。反之,例如,作为最新信息,可以使用其中的每一个都是一位的三个标记,且每 次向所述块写数据时,用于所述位的标记都可以连续改变。在这种情况下,在下面的描述中,将使用0、1和2的三个值作为最新信息。下面,有效性信息指出了最新信息和涉及是否写入最新信息的数据的有效性(有效或无效)以及所述块的数据是否被正常完成,以及是否使用例如RS(Reed-Solomon))码寸。另外,所述有效性信息不局限于RS码等的误差校正码。例如,所述有效性信息可 以是在写最新信息和数据的同时所计算出的奇偶性,也可以是写入最新信息和数据之后加 入的一位标记。在图4A和4B中,存储器被提供有第一和第二区域的两个块。图4A示出了其中数 据01H到08H(H表示十六进制数)已经被存储到第一区域的块内和8个数据FFH已经被存 储到第二区域块内的情况。例如,假定11H到18H被提供作为需要写入的数据,首先,根据所述信息的有效性 确定第一和第二区域两个块的有效性。在这种情况下,假定其中的一个块是有效的。当两个块都是有效的时,根据最新信息确定哪一个是比较新的块。在图4A中,利 用01H或00H指定第一或第二区域块的最新信息,因此,第一区域的块是新的。在写新数据的情况下,如上所述,为了避免在前已经写入的数据被破坏,新数据被 写到一个不是最新块的块中。因此,在这种情况下,例如如图3B所示,数据11H到18H被写 到第二区域的块中。在完成写数据11H到18H之后,首先,更新已经被写入数据的块的最新 信息。即利用01H指定已经是最新块的第一区域块的最新信息,因此,利用通过使01H加 1产生的02H指定现在被写入数据的第二区域块的最新信息。最后,表示数据11H到18H的有效性信息和最新信息02H被写入到第二区域的块中。下面参考图5和图6进一步解释向具有图4所示结构的存储器写入数据和从该存 贮器读取数据的处理。首先参照图5流程解释读处理。首先,在步骤S1,参照第一和第二区域的有效性信息确定所述有效性。当在步骤 S1确定只有第一区域的块是有效的时,即当第一区域的块有效和第二区域的块无效时,操 作前进到步骤S2。在步骤S2,从是有效块的第一区域读出数据并且处理结束。另外,当在 步骤1确定只有第二区域的块是有效时,即当第一区域的块无效和第二区域的块有效时, 操作前进到步骤S3。从是有效块的第二区域读出数据和处理结束。同时,当第一和第二区域的块在步骤S1都被确定为有效时,操作前进到步骤S4, 在这里,参照第一和第二区域块的最新信息确定最新特性。当在步骤S4确定第一区域比第 二区域新时,操作前进到步骤S2,从是最新一个的第一区域的块中读出数据并且处理结束。 另外,当在步骤S3确定第二区域比第一区域新时,从是最新一个的第二区域的块中读出数 据并且处理结束。下面参照图6的流程解释所述的读出处理。在这种情况下,在步骤S11以类似于在图5步骤S1的方式确定有效性。当仅第一 区域的块被确定为有效时,操作前进到步骤S12,已经被更新的数据、最新信息和有效性信 息被写入做为无效块的第二区域并且处理结束。另外,当在步骤S11确定只有第二区域的 块是有效的时,已经被更新的数据、最新信息和有效性信息被写入做为无效块的第一区域 并且处理结束。同时,当在步骤S11确定第一和第二区域的块都是有效时,操作前进到步骤S16并 且第一和第二区域的块的最新特性以类似于图5所示步骤S4的方式确定。当在步骤S16
12确定第一区域比第二区域新时,操作前进到步骤S12且数据、最新信息和有效性信息被写 入第二区域中较老的一个块中,以便如上所述地保持较新一个的第一区域。另外,当在步骤 S16确定第二区域比第一区域新时,操作前进到步骤S14且数据、最新信息和有效性信息被 写入到一个较老的一个第一区域的块中,以便如上所述地保持较新一个的第二区域的块。另外,第一和第二区域的两个块被从外部识别成相同逻辑块的逻辑块。即第一和 第二区域的块是物理块,这些物理块客观存在并被分配有用于识别它们的唯一物理块号。 另外,第一和第二区域的物理块的物理块号与用于识别逻辑块的逻辑块号对应相同。借此, 第一和第二区域的物理块被从外部识别为单一的逻辑块。即在图4A和4B中,尽管第一和第二区域物理块的物理块号彼此不同,但相同的逻 辑块号被分配给它们中的一个。请求一个访问以从外部使所述逻辑块具有一个逻辑块号。 另外,在存储器一侧,当产生一个对逻辑块的访问请求时,分别执行已经参照图5或图6解 释的读或写处理,以用于具有与逻辑块一致的物理块号的块,即第一和第二区域。另外,在下面的描述中,假定物理块号和逻辑块号中任一都由一字节表示。另外,在上述情况下,在结束向一个物理块写数据之后,物理块的最新信息和有效 性信息被更新。因此,当多个相关数据被写入到多个物理块时,可能引起新老数据的混合。 即当在向多个逻辑块写多个数据过程当中引起存储器出错时,从外部看,虽然在存储器出 错之前已经被写入新数据的逻辑块中存在新数据,但是,在引起存储器出错时,旧数据存在 于一个范围之中,该范围从存在存储器变化的逻辑块到写入新数据的逻辑块。当多个相关数据作为整体是有意义的时,其整体是有用的。如上所述,当在多个相 关数据中新数据和旧数据被混合时,不能够建立兼容性。即,例如,在如上所述多个相关数 据是车站和上火车的时间、车站和下火车的时间和上、下火车站之间的费用等的情况下,当 根据下火车的站写新数据和根据上火车的时间保留老数据时,兼容性不能够被建立且数据 变得无用。当在多个数据写入结束之前在相关数据被写入到多个逻辑块的情况下引起存储 器出错时,从外部看,需要使多个相关数据的所有老数据保持在所述逻辑块中。因此,存储器的构成例如如图7所示。即存储器由作为数据区域的物理块构成,用于存储数据和第一和第二区域的物 理块,所述第一和第二区域用于存储构成所述物理块的物理块号。另外,还是在图7中,与图4类似,一个物理块由11个字节构成。构成数据区域的各种物理块被构成以存储11字节的一个单元的数据并且在图7 中,利用8个被分配有从#00H到#07H作为物理块号(注意#表示物理块号)的物理块构 成所述数据区域。另外,在这种情况下,从外部看,可以看到4个逻辑块,标号% 0011到% 03H被分配 给四个逻辑块以用做逻辑块号。另外,在图7所示的状态下,使逻辑块号% 0011到% 03H分 别对应于物理块号#00H到#03H。从前一个字节被分配给所述最新信息以及后两个字节被 分配给有效性信息的观点来看,第一和第二区域的物理块具有与图4所示情况相同这些特 性。但是,数据区域中物理块的物理块号,即用于构成所述数据区的物理块的指针被配置在 最新信息和有效性信息之间的8个字节处。在第一和第二区域中最新信息和有效性信息之间的8个字节中,数据区域目标块的物理块号被配置在4个字节的前半部分且所述数据区域更新块的物理块号被配置在4个 字节的后半部分。在这种情况下,目标块表示一个物理块将变成写信息过程中的写目标。即例如如 上所述,当存储在块Bl中的数据被改写成一个新数据时,根据本发明,所述新数据被写到块B2中,在这种情况下,在传统情况下最初被写入新数据的块对应于目标块。再有,更新块表示一物理块,当信息被写到物理块且其存储内容被更新时使用之。 即,例如当存储到块Bl的数据被改写成新数据时,该块B2实际被写入相应于该更新块的新 数据。按第一和第二区域中的最新信息和有效性信息之间的8个字节的前半部分的4个 字节配置的物理块号与逻辑块号对应。例如,在第一到第四字节处安排的物理块号分别与 逻辑块号% OOH到% 03H对应。在图7中,第一或第二区域的物理块号分别由标号#FE或#FF指定。根据上述的存储器结构,在图7中,4个相关数据被存储到物理块#00 (具有物理块 号#00H的物理块)到#03H和在第一区域的最新信息和有效性信息之间8个字节中前半部 分4个字节(此后称之为用于数据区域中目标块的一个指针列)处以这个顺序安排#00H 到#03H的物理数据块号。例如,当注意第一区域时,物理块号#00H到#03H分别与逻辑块号% OOH到% 03H对应。在这种情况下,当注意第一区域时,与逻辑块% OOH到% 03H对应的物理块#00H 到#03H中的任何一个构成将被作为访问目标的块,即目标块。更新块可以是在所述时间点处不构成目标块的物理块,或者说是空区域。因此,在 图7中,当注意第一区域时,物理块#04H到#07H可以是更新块。更新块的物理块号#04H到 #07H被安排在第一区域最新信息和有效性信息之间8个字节中后半部分4个字节处(此后 称之为用于数据区域更新块的一个指针列)。例如,假设只有作为第一和第二区域的一个区域的第一区域是有效的,并假设从 外部发出一个向与逻辑块号% 00到% 02相应的逻辑块写入相关两个数据的请求。在这种情况下,通过参考用于有效第一区域中数据区域目标块的列指针,与逻辑 块号% OOH到% 02H相对应的物理块号#00H到#02H被识别并且物理块#00H到#02H被识 别为需要写入两个相关数据的目标块。另外,通过参考用于第一区域中数据区域更新块的列指针,具有与目标块号相同 号的更新块的物理块号#04H到#05H被识别。另外,更新块的物理块号例如被从根据安排 在用于数据区域更新块的列指针左侧的一个开始陆续识别。再有,最初被写到作为目标块的物理块#00H到#02H的两个数据被写到作为更新 块的物理块#04H到#05H中。在这种情况下,图8表示一种状态,在该状态下,假设将被写入到与逻辑块号% OOH到% 02H对应的物理块号#00H到#02H的两个数据分别是40H到4AH和50H到5AH,并 且这些数据被分别写入到作为更新块的物理块#04H和#05H。然后,已经被写入新数据物理块的块号#04H和#05H被写入到所述列指针中,以用 于无效的第二块中数据区域的目标块。即用于第一区域中数据区域目标块的所述列指针被拷贝到第二区域,并且如图8所示,目标块的物理块号#00H到#02H被分别改写成物理已经 被写入数据的更新块的物理块号04H和#05H。结果是当注意第二区域时,物理块号#04H和 #05H分别对应于物理块号#00H和#02H对应的逻辑块号% OOH和% 02H。
另外,已经被写入数据的物理块#00H和#02H被改变成更新块,并且物理块号#00H 和#02H被写到所述列指针以用于更新在处于无效状态下的第二区域中的块。S卩,用于第一 区域中数据区更新块的列指针被拷贝到第二区域,并且如图8所示,其中已经被写入数据 的物理块的物理块号#04H和#05H被分别改写成目标块的物理块号#00H和#02H。结果是, 当注意第二区域时,物理块#00H和#02H构成所述更新块。在如上所述对第二区域更新之后,与图4所示情况相似,第二区域中最新信息和 有效性信息被陆续写入(改写)。因此,在这种情况下,除非用于所述数据区域目标块的列指针结束有关第二区域 的写操作,否则不必写入表示有效性的有效性信息。即在上述的情况下,除非向两个逻辑 块% 00!1和% 02H的数据写入结束,否则用于表示有效性的有效性信息不必写入到第二区 域。因此,当在数据被写入到两个逻辑块% 00!1和% 02H的周期期间内引起存储器出 错时,只有第一区域处于有效状态。通过参考有效的第一区域,存储到分别与逻辑块% OOH 和% 02H对应的物理块#00H和#02H的旧数据被从逻辑块% OOH和% 02H中读出。同时,当向两个逻辑块% 00!1和% 02H写数据过程已经结束且第二区域中最新信 息和有效性信息已经被更新时,通过参考处于有效并且最新状态的第二区域,存储到分别 与逻辑块% OOH和% 02H对应的物理块#04H和#05H的新数据被从逻辑块% OOH和% 02H 中读出。在这种情况下,当作为存储在逻辑块% OOH和% 02H中的多个数据的两个数据彼 此相关时,即使是在引起存储器出错的情况下,不仅是个别数据的兼容性、而且是两个数据 间的兼容性都可以得到保持。下面参照图9和10的流程进一步解释具有图7和图8所示结构的存储器的读/
写操作。首先,参照图9的流程解释读处理。在这种情况下,首先在步骤S21或S26,执行类似于图5所示步骤Sl或S4的确定处理。接着,当只有第一区域有效和虽然当第一和第二区域这两个区域都有效但第一区 域较新时,处理前进到步骤S22并且当只有第二区域有效和当虽然第一和第二两个区域都 有效,但第二区域较新时,操作前进到步骤S24。在步骤S22,通过参考用于第一区域中数据区域的目标块的指针列,与需要读出数 据的逻辑块号(所述逻辑块号例如是由外部提供的)一致的物理块号、即作为指向目标块 的指针的物理块号被识别并且操作前进到步骤S23。在步骤S23,根据在步骤S22识别的物 理块号从所述物理块中读出数据,处理结束。同时,在步骤S24,通过参考用于第二区域中数据区域目标块的指针列,与需要读 出数据的逻辑块号一致的物理块号,即,作为指向目标块的指针的物理块号被识别且操作 前进到步骤S25。在步骤S25,根据在步骤S24识别的物理块号从所述物理块中读出数据,处理结束。下面参照图10的流程解释读操作。在这种情况下,在步骤S31或40,执行与图5所示步骤Sl或S4类似的确定处理。另外,当只有第一区域有效和当第一和第二两个区域都有效,但第一区域较新时, 操作前进到步骤S32。在步骤S32,通过参考在第一区域中数据区域更新块的指针列识别能 够构成更新块的物理块的块号且处理前进到步骤S33。在步骤S33,由外部提供的待写数据 被写入更新块中。另外,当从外部提供需要写到多个逻辑块的数据时,在步骤S32,具有与所述多个 逻辑块号相同号的更新块的物理块号可以例如通过在用于第一区域中数据区域的更新块 的指针列从左到右方向上连续搜索加以识别。另外在这种情况下,在步骤S33,可以将数据 写到分别与所识别的多个物理块号一致的更新块中。然后,操作前进到步骤S34,用于数据区域目标块的指针列和用于第一区域中数据 区域更新块的指针列被更新,且最新信息以及有效性信息被更新,这些都被拷贝到第二区 域中。即就用于数据区域的目标块的指针列而言,将被写入的与从外部被提供有数据 的逻辑块的逻辑块号对应的物理块号(在图7和图8的例子中是#00H和#02H)被更新成 实际已被写入数据的更新块的物理块号(在图7和8的例子中是#04H和#05H)。另外,就 用于数据区域更新块的指针而言,已经被写入数据的物理块(已经是被更新块的物理块) 的物理块号(在图7和8的例子中是#04H和#05H)被更新成具有与已经被写入数据的物 理块的物理块号(在图7和8中是#00H和#02H)对应的物理块号。另外,最新信息和有效 性信息被更新且上述的更新结果被写入到第二区域中之后处理结束。同时,当只有第二区域有效和当虽第一和第二两个区域都有效但第二区域较新 时,操作连续前进到步骤S36到S38,并且除了就第一或第二区域的处理被分别与就第二或 第一区域的处理相反地执行之外,执行分别类似于步骤S32到S34的操作。另外,参照图7到图10解释了存储器的读/写系统使用了关于数据区域的一级指 针,因此,在下面的描述中,所述系统被称之为单指针系统。同时,在单指针系统的情况下,如图7和8所示,4个物理块号可以被存储到用于数 据区域目标块的所述指针列中,因此,最大可以保持4个块的兼容性。在这种情况下,在图7和8中,由于在是能够保持兼容性的最大块数的4个块的写 数据过程中也需要4个更新块,所以,4个块号可以被存储到与用于数据区域目标块方面的 所述列指针类似的用于数据区域更新块的所述指针列中。当所述单指针系统被应用于图7和8所示的结构时,如上所述,最大可以保持4个 块数据的兼容性,相反,要保持数量大于4的块的兼容性是困难的。即,当只有构成数据区 域的物理块的物理块号被存储到第一和第二区域的物理块中并由它们加以控制时,能够保 持数据兼容性的块的数量受能够将物理块号存储到第一和第二区域物理块中的数量的限 制。因此,存储器的构成例如可以如图11所示。即,在这种情况下,存储器可以由用于存储数据的数据区域物理块、用于存储用于构成数据区域物理块的指针的块号的指针区域的物理块以及用于存储构成指针区域区域的物理块的块号的物理块构成。另外,在图11中,从空间的角度看,一个物理块是由8个字节构成的。构成数据区域的各个物理块利用一个单元共8个字节存储数据并且在图11中,由 24个分别被分配有物理块号#00H和#17H的物理块构成所述数据区域。另外,在这种情况下,从外部可以看到16个逻辑块并且这16个逻辑块分别被分配 有块号#00H和#0FH。但是,在这种情况下,为方便解释起见,假设逻辑块的数量与构成数据 区域的物理块的数量相同,且除从外部看作为逻辑块的物理块以外的8个物理块分别被分 配有逻辑块号% 10到% 17。在图11所示的状态下,逻辑块号% 10到% 17分别与物理块 号#00H到#17H对应。包括指针区域的各个物理块被构成以存储用于包括用于由一个单元共8个字节 构成数据区的物理块的指针的物理块号,并且在图11中,所述指针区域由6个分别被分配 有物理块号#18到#1D的物理块构成。在这种情况下,构成指针区域的物理块利用一个单 元共8个字节存储物理块号并且所述物理块号由一个字节表示,因此,8个物理块号被存储 到一个物理块中。再有,被安排在指针区域每一个物理块中的8个物理块号与相应的逻辑块号对 应。即,被安排在第一到第八字节处的物理块号与以某个逻辑块号(如下所述是%00札% 08H或% 10H)为基准偏移(移位)0到7的逻辑块号对应。就第一和第二区域的块而言,其第一个字节被分配给最新信息且最后一个字节被 分配给有效性信息。另外,指针区域物理块的物理块号作为指针被安排在最新信息和有效 性信息之间的6个字节处。在第一和第二区域中的最新信息和有效性信息之间的6个字节当中,指针区域目 标块的物理块号被安排在3个字节的前半部分处(下面特别称之为用于指针区域目标块的 指针列)并且指针区域的更新块的物理块号被安排在3个字节的后半部分处(下面特别称 之为用于指针区域更新块的指针列)。存储到与指针区域目标块的指针列处的3个物理块号一致的指针区域物理块的 物理块号与逻辑块号对应。即,存储到与第一到第三字节处的物理块号相对应的指针区域的物理块的物理块 号分别与逻辑块号% OOH到% 07H、% 08H到% 0FH和% 1OH到% 17H对应。例如,在图11中,当注意第一区域时,在由用于指针区域目标块指针列中物理块 号#18H的第一字节指出的指针区域物理块的第一到第八字节处的物理块号#00H到#07H 分别与用于第一区域指针区域中目标块的指针列中第一字节对应的逻辑块号% OOH到% 07H对应。即,在由用于指针区域目标块的指针列中的物理块号指出的指针区域物理块的 第一到第八字节处的物理块号分别与从基准物理块号% OOH偏移0到7的物理块号% OOH 到% 07H对应。另外,在由用于指针区域目标块的指针列中的物理块号#19H的第二字节指出的 指针区域中的物理块第一到第八字节处的物理块号#08H到#(FH分别与对应于用于第一区 域中指针区域目标块的指针列中的第二字节的逻辑块号% 08H到% OFH对应。即,在由用 于指针区域目标块的指针列中的物理块号的第二字节指出的指针区域物理块的第一到第 八字节处的物理块号分别对应于从基准逻辑块号% 08H偏移0到7的逻辑块号% 08H到%OFH。类似的,在由用于指针区域指针列中物理块号的第三字节指出的指针区域中物理块第一到第八字节处的物理块号分别对应于从基准逻辑块号% IOH偏移0到7的逻辑块 号% IOH |lj % 17H。另外,在图11中,利用标记#1E和#1F指定第一或第二区域的物理块号。根据如上所述构成的存储器,例如,当注意第一区域时,与在用于指针区域目标块 的指针列中指定的物理块号一致的物理块构成指针区域的目标块。因此,在图11中,物理 块#18H到#1AH构成指针区域的目标块。另外,在图11中,指针区域中剩余的物理块#1BH 到#1DH构成用于更新指针区域的更新块。借此,物理块号#1BH到IDH被指定为用于第一 区域中指针区域更新块的指针列。另外,在图11中,例如,在与在指针区域目标块处所述物理块对应的数据区域物 理块中逻辑块% 00!1到% (FH—致的物理块构成数据区域的目标块。因此,在图11中,数 据区域剩余物理块(与逻辑块% 10到% 17H相对应的物理块)构成用于更新数据区域的 更新块。在用于指针区域的更新块的指针列中描述了指针区域更新块的物理块号并因此 可以参考指针列识别所述更新块。同时,数据区域的更新块是与逻辑块号% IOH到% 17H 相对应的物理块,因此,通过参考与用于指针区域目标块的列指针中第三字节处描述的物 理块号一致的指针区域的物理块,可以根据这里所描述的物理块号识别所述更新块。现在,只有第一和第二区域中的一个区域是有效的,例如,仅第一区域被假定为有 效并且从外部向例如与逻辑块号% OOH到% 02H 一致的逻辑块请求两个相关数据的写入。在这种情况下,通过参考用于处于有效状态第一区域中指针区域的目标块的列指 针和通过参考与这里所述与物理块号一致的物理块,将被写入两个相关数据的数据区域的 物理块的目标块被识别。即,通过参考用于第一区域中指针区域目标块指针列的第一个字 节,在数据区域中物理块的物理块号与逻辑块% OOH和% 02H—致的指针区域的物理块 #18H可以被识别。另外,通过参考物理块#18H的第一字节和第三字节,可以分别识别与逻 辑块% OOH的% 02H 一致的数据区域目标块的物理块号#00H和#02H。然后识别数据区域的更新块。通过参考用于第一区域中指针区域目标块的指针 列的第三字节,其中物理块的物理块号与所描述构成数据区域更新块的逻辑块% IOH到% 17H —致的指针区域物理块#1AH能够被识别。另外,通过参考物理块#1AH,用于构成数据 区域更新块的物理块的物理块号#10H到#17H可以被识别。通过连续参考例如从左边开始 的物理块#1AH,可以识别作为数据区域更新块的具有与数据写入目标的数据区域目标块号 同样号的物理块。因此,在这种情况下,与物理块号#10H和#11H对应的数据区域的物理块 构成更新块。另外,如图12所示,最初应被写入到作为数据区域目标块的物理块#00H和#02H 的两个数据被分别写入到作为数据区域更新块的物理块#10H和#11H。在这种情况下,图12示出了一个状态,在该状态下,需要被写入到与逻辑块号% OOH和% 02H 一致的物理块号#00H和#02H的两个数据分别由8个字节的OOH标记和8个字 节的02H标记指定并且这些数据被分别写入到作为数据区域更新块的物理块#10H和#11H 中。
如上所述,在需要写入到与存储到与存储在第一区域指针区域物理块号#18H — 致的物理块数据区域块号#00H和#02H —致的物理块的两个数据被分别写入到数据区域的 更新块#10H和#11H中,已经是数据区域更新块的物理块的块号#10H和#11H被写入到指 针区域更新块,另外,最初已经被写入数据的数据区域物理块的物理块号#00H和#02H被写 入到指针区域的其它更新块中。S卩,首先,通过参考用于第一区域中指针区域的更新块的指针列,可以识别指针区 域的更新块。在这种情况下,指针区域的更新块包括其号与需要根据上述写操作改变(更 新)到数据区域的指针区域目标块号相同的物理块。通过例如从左边开始连续参考用于指 针区域更新块的指针列,可以识别指针区域的更新块。因此,在上述情况下,通过从左边开 始连续参考用于第一区域中指针区域更新块的指针列,两个其号与其中已经存储有最初被 写入数据的数据区域目标块的物理块号#00H和#02H的指针区域的物理块#18H的两个物 理块号相同的指针区域的更新块#1BH和ICH以及其中实际已经被写入数据的物理块的物 理块号#10H和#11H的指针区域的物理块#1AH被识别。另外,例如,在指针区域被识别更新块#1BH和ICH的更新块#1BH中,其中存储有 数据区域目标块物理块号#00H和#02H的指针区域的物理块#18H的存储内容被拷贝并且 存储内容中数据区域目标块的物理块号#00H或#02H被分别写入到实际已经被写入数据的 数据区域的更新块的物理块号#10H或#11H中,如图12所示。另外,在指针区域被识别的更新块#1BH或#1CH的剩余更新块#1CH中,其中存储 有实际已经被写入数据的物理块号为#10H和#11H的指针区域物理块#1AH的存储内容被 拷贝,且如图12所示,物理块号#10H和#11H被分别写入到最初已经被写入数据的物理块 号(数据区域的目标块)#00H和#02H中。然后,已经是物理块号被更新的指针区域的更新块的物理块的块号#1BH和#1CH 被写入到处于无效状态下第二区域中用于指针区域目标块的指针列中。即,第一区域中指 针区域的目标块的指针列被拷贝到第二区域,与逻辑地址% OOH和% 07H 一致的第一区域 的第一个字节被重写到指针区域物理块的物理块号#1BH且与逻辑地址% 10!1到% 17H — 致的第三字节被重写到指针区域物理块号#1CH(见图12)。结果是,当注意第二区域时,物理块#1BH、#19H和#1CH变成指针区域的目标块,利 用这些目标块,已经是数据区域更新块的物理块#10H或#11H被处理得对应于逻辑块号% OOH或% 02H,并且,已经是数据区域目标块的物理块#00H或#02H也被处理得与逻辑块 号% 00!1或% 02H对应,和通过被分别处理得与逻辑块% IOH或% IlH对应,已经是目标块 的物理块#00H或#02H构成更新块。S卩,当参考第二区域中指针区域目标块指针列的第一个字节时,其中描述了与逻 辑块号% 00!1和% 02H—致的数据区域物理块的物理块号的指针区域物理块构成了物理块 #1BH并且当参考物理块#1BH的第一和第三字节时,与逻辑块% OOH和% 02H—致的数据区 域物理块分别构成了物理块#10H和#11H。另外,当参考第二区域中指针区域目标块的指 针列的第三字节时,其中描述了与逻辑块% 10!1和% IlH—致的数据区域物理块的物理块 号的指针区域物理块构成了物理块#1CH,且当参考物理块#1CH的第一和第二字节时,与逻 辑块% IOH和% IlH—致的数据区域的物理块、即数据区域的更新块构成了物理块#00H和 #02H。
另外,指针区中的物理块的块号#18H(其中,先前存有数据的物理块的物理块号 #00H和#02H被存储)以及物理块的物理块号#1AH(其中,已存有数据的物理块号#10H和 #11H被存储)被写入到用于第二区指针区的更新块的指针列中。即,用于第一区域中指针 区域更新块的指针列被拷贝到第二区域,和如图12所示,其中存储内容已经被更新的指针 区域物理块的物理块号#1BH或#1CH被分别重写为其中已经存储了与逻辑地址% OOH到% 07H对应的物理块号#18H或其中已经存储了与逻辑地址% 10!1到% 17H对应的物理块号 #1AH 中。结果是,当注意第二区域时,物理块#18H、#1AH和#1DH构成了指针区域的更新块。在如上所述更新第二区域之后,与单指针系统相似,第二区域的最新信息和有效 性信息被陆续写入。因此,在这种状态下,除非针对数据区域和指针区域的写操作结束,否则规定有效 性的有效性信息不能写入。即,在上述情况下,除非向两个逻辑块% 00!1和% 02H的数据写 操作已经结束,否则用于规定有效性的有效性信息不能被写到第二区域中。结果是,当在数据被写到两个逻辑块% OOH和% 02H的时间周期内引起存储器出 错时,只有第一区域处于有效状态并且通过参考处于有效状态的第一区域,存储到分别被 处理得与逻辑块% OOH和% 02H—致的物理块#00H和#02H的旧数据被从逻辑块% OOH 和% 02H中读出。同时,当向两个逻辑块% OOH和% 02H写数据操作结束和第二区域中的最新信息 和有效性信息被更新时,通过参考处于有效状态的第二区域和最新信息,存储在被处理得 与逻辑块% OOH和% 02H对应的物理块#10H和#11H的新数据被从逻辑块% OOH和% 02H读出。因此,当作为多个存储到逻辑块% OOH和% 02H的数据中的两个数据彼此相关时, 即使是在引起存储器出错的情况下,与单指针系统相似,也能够保持两个数据之间的兼容 性。再有,指针区域中三个物理块的物理块号可以被存储到所指针列中,以便第一和 第二区域中指针区域的目标块,和数据区域物理块的8个物理块号可以被存储到指针区域 中的一个单一的物理块中。因此,可以控制最大为数据区域的24( = 3X8)个物理块。因 此,是24个块一半的12个块可以构成最多的数据区域更新块;并且一定数量块的兼容性、 即,大于单指针系统一定数量逻辑块的一定数量的逻辑块的兼容性可以被保持。另外,在图 11和图12中,所述24个块中的8个块构成更新块并且这8个块数据的兼容性可以最大程 度地被保持。在这种情况下,结合图11和12进行如上所述解释的针对存储器的读/写系统使 用关于数据区域的两级指针,并因此在下面被称为双指针系统。下面结合图13和14的流程进一步解释根据双指针系统的数据读/写操作。首先,参看图13的流程解释读处理。在这种情况下,首先,在步骤S51或S58,执行与图5所示步骤Sl或S4类似的确定处理。接着,当只有第一区域有效和虽然第一和第二两个区域都有效但第一区域较新 时,操作前进到步骤S52,且当只有第二区域有效和虽然第一和第二两个区域都有效但第二区域较新时,操作前进到步骤S55。
在步骤S52,通过参考用于第一区域中指针区域目标块的的指针列,识别需要读出 与逻辑块号一致的物理块号的数据的指针区域物理块的物理块号(指针),且操作前进到 步骤S53。即,例如,当存储器的构成如图11所示时,在逻辑块号落入% 00!1到% 07!1或% 08H到% OFH的范围中的情况下,存储到用于指针区域目标块的指针列第一或第二字节的 物理块号被分别识别。在步骤S53,通过参考在步骤S52识别的与物理块号一致的指针区域物理块,与待 被读出数据的逻辑块号一致的物理块号被识别,且处理前进到步骤S54。即,当待被读出数 据的逻辑块号是从某个基准值(在图11所示情况下是% OOH或% 08H)偏移0到7的值 时,存储到从与在步骤S52被识别的物理块号一致的物理块左侧移位的位置的物理块号被 识别为与待被读出逻辑块号一致的物理块号。在步骤S54中,从与在步骤S53识别的物理块号一致的物理块中读出数据,并且处
理结束。同时,在步骤S55,通过参考用于第二区域中指针区域目标块的指针列,其中已经 存储了与数据将被从中读出的逻辑块号一致的物理块号的指针区域物理块的物理块号被 识别,然后,操作连续前进到步骤S56和S57,在这里,执行分别对应于步骤S53和S54的处 理,并且处理结束。下面参照图14的流程解释写处理。在这种情况下,在步骤S61或步骤S74,分别执行与图5步骤Sl或S4类似的确定处理。此外,当只有第一区域有效或虽然第一和第二两个区域都有效但第一区域较新 时,操作进行到步骤S62,通过参考用于第一区域中指针区域目标块的指针列,其中存储了 能够构成更新块的数据区域物理块的物理块号被识别且操作前进到步骤S63。S卩,例如,当 存储器的构成如图11所示时,存储到用于第一区域中指针区域目标块的指针列第三字节 的物理块号#1AH被识别。在步骤S63,通过参考存储到与在步骤S62所识别的物理块号一致的数据区域更 新块的物理块号,数据区域的更新块被识别,操作前进到步骤S64,并且由外部提供的待被 写入数据被写到数据区域的更新块中。另外,当在步骤S63从外部提供向多个逻辑块写入的数据时,通过连续搜索与在 步骤S62所识别的物理块号一致的物理块(指针区域中的物理块),其号与多个逻辑块号 相同的数据区域更新块的的物理块号被例如从左向右地识别。另外,在这种情况下,在步骤 S64,从外部提供的数据被陆续写入分别与以这种方式识别的多个物理块号一致的数据区 域更新块中。然后,处理前进到步骤S65,其中存储有已经被处理得与写数据目标逻辑块的逻辑 块号对应并且已经被更新的物理块号的物理块被拷贝到指针区域的更新块中。即,例如,在 已经参照图11和图12进行解释的情况下,存储被处理得与构成写数据目标的逻辑块的逻 辑块号% OOH和% 02H对应的物理块号#00H和#02H的物理块#18H被更新并且物理块号 #00H和#02H被分别变成#10H和#11H并被拷贝到指针区域的更新块#1BH中。另外,在步骤S65,就数据区域更新块而言,用于存储指针的已经被更新的物理块被拷贝到指针区域的更新块中。即,例如,在已经参照图11和图12进行解释的情况下,用于 存储数据区域更新块物理块号#10H到#17H的物理块#1AH被更新且物理块号#10H和#11H 被分别变成#00H和#02H并被拷贝到指针区域的更新块#1CH中。然后,操作前进到步骤S66,在第一区域中用于指针区域目标块的 指针列和用于指 针区域更新块的指针列被更新同时最新信息和有效性信息被更新并被拷贝到第二区域中。S卩,例如,根据图11和12所示的例子,就用于第一区域中指针区域目标块的指针 列而言,存储到构成已经被处理得与用于写从外部提供数据的逻辑块对应的数据区域物理 块#00H和#02H的指针的第一字节的物理块号#18H被更新成构成用于其中实际已经被写 入数据的数据区域的物理块#10H和#11H的指针的物理块号#1BH,且构成用于实际已经 被写入数据的数据区域物理块#10H和#11H指针的物理块号#1AH被更新成用于已经被处 理得与已经被写入数据的逻辑块对应的数据区域物理块#00H和#02H的指针的物理块号 #1CH。另外,就用于第一区域中指针区域更新块的指针列而言,具有其中物理块号已经 被更新的指针区域物理块(已经是更新块的物理块)的物理块号#1BH和#1CH被更新成已 经变成指针区域更新块的物理块的物理块号#18H和#1AH。另外,第一区域中的最新信息和有效性信息被更新,上述更新的结果被写入到第 二区域和处理结束。同时,当只有第二区域有效或虽然第一和第二两个区域都有效但第二区域较新 时,操作连续前进到步骤S68到步骤S72,除了分别在第二或第一区域方面有关第一或第二 区域的处理被相反执行以外,这里的处理分别类似于步骤S62到步骤S66的处理。另外,在双指针系统的情况下,与单指针系统类似,能够保持兼容性的物理块的数 量受到限制,但是,当在与单指针被扩展成双指针类似情况下扩展双指针系统和有关数据 区域的指针由3级、4级、aaa构成时,能够保持兼容性的物理块的数量可以被进一步增加。 因此,通过考虑一个块的长度和部分地设定用于数据区域的指针级数,能够得到所期望的 可保持兼容性的物理块的上限数量。接着,根据上述双指针系统,利用图3所示IC卡2的定序器91执行对EEPROM 66 的读/写处理,并且图15示出了这种情况下EEPROM分配存储器的一个例子。在图15中,EEPROM 66被提供有256个物理块。每个物理块由总数为40个字节 的32个数据单元字节(D00到DlF)和8个奇偶单元字节(P0到P5)构成。另外,在图15中,物理块号#00H到被分别分配给256个物理块,其中,物理块 #00H到#EFH构成数据区域,物理块#F0H到#FDH分别构成指针区域且物理块#FFH和#FFH 分别构成第一和第二区域。另外,关于数据区域,在240个物理块#00H到中,224个物理块构成目标块 (下面也称之为数据块)和其余的16个物理块构成更新块。因此,最大可以保持16个块数 据的兼容性。另外,在图15所示的状态下,物理块#00!1到#0 构成数据块且物理块#Ε0Η 到构成更新块。关于指针区域,14个物理块#F0H到#FDH中的7个物理块构成目标块(下面也称 之为指针块)和14个物理块的7个物理块构成更新块。另外,在图15所示状态下,物理块 #F01到#F6H构成指针块和物理块#F7H到#FDH构成更新块。
另外,在图15中,第一和第二区域被表示为有效性确定块。图16A和16B示出了(第一和第二区域)有效性确定块的一个例子。如图16A所示,最新信息(最新确定性信息)被安排在有效性块的数据单元的第 一字节(DOO)处且指针区域(指针块)的目标块的物理块号被安排在第二到第八字节(D01 到D07)处。
数据区域中更新块的物理块号被安排在有效性确定块数据单元的第九到第 二十四字节(D08到D17)处。即,在上述情况下,在第一和第二区域中,其中已经存储了数 据区域更新块的物理块号的指针区域的物理块的物理块号(与用于数据区域更新块的指 针相关的指针)和数据区域更新块的物理块号(用于数据区域更新块的指针)被直接存储 在有效性确定块中。因此,在这种情况下,在指针区域中没有其中存储了数据区域更新块物理块号的 物理块。指针区域更新块的物理块号被安排在有效性确定块数据单元的第25到31字节 (D18到DIE)处同时它的第32个字节(DlF)备用。另外,根据上述有效性决定信息利用例如RS码等安排有效性确定块的奇偶单元。这里,图16B示出了在构成EEPROM 66的情况下在有效性确定块中数据单元的初 始值。图17A和图17B示出了构成指针区域物理块(指针块和它的更新块)的一个例子。如图17A所示,利用32个单元安排数据区域物理块的物理块号。另外,构成指针 区域的物理块的奇偶单元不被用做上述有效性信息而是用做一般的奇偶性,因此,安排给 奇偶单元的信息最好被提供有误差校正能力。这是由于在双指针系统中,表示安排给构成 指针区域物理块数据单元的信息是否错误的有效性最后不是由安排给奇偶单元的信息确 定的,而是在作为有效性确定块的有效性信息的奇偶单元的基础上确定的。这里,图17B示出了在如图15所示在构成EEPROM 66的情况下构成指针区域物理 块的数据单元的初始值的例子。另外,除了安排在数据单元中的非物理块号而是用于读/写的数据以外,构成数 据区域的物理块(数据块和它的更新块)类似于构成指针区域的物理块,因此,省略其解释。下面解释当所述EEPROM 66被如上构成时,EEPROM 66的读/写处理。当IC卡2介入R/W1和如上所述开始对构成IC卡2的各个块提供电源时,在定序 器91处执行根据图18的流程所示的初始化处理。即,在这种情况下,首先,在步骤S81,定序器91通过参考EEPR0M66选择一个有 效和最新的有效性确定块,操作前进到步骤S82,并且被选择的有效性确定块被拷贝到RAM 67。然后,操作前进到步骤S83,定序器91参考安排在所选择有效性确定块处的指针区域 处的指针块的物理块号读出与来自EEPROM 66的物理块号一致的指针块,并将它们拷贝到 RAM 67中,且结束初始化处理。通过上述初始化处理,在RAM 67处如图19所示,存储到7指针块的数据区域的数 据块的有效性和最新有效性确定块以及物理块号(如图15所示,当是EEPROM 66时物理块 号为#00H到#DFH)被存储。
下面,图20的流程示出了图18所示步骤S81处理的详细过程。在这种情况下,首先,在步骤S91,定序器91参考用做与物理块号#FEH和#FFH — 致的有效性确定块的有效性信息的奇偶单元。
当在步骤S91确定只有与物理块号#FEH—致的有效性确定块是有效的时,操作前 进到步骤S92,定序器91将物理块号#FEH设置成变量Bn,以用于存储将被选择的有效性确 定块的物理块号并且操作返回。另外,当在步骤S91确定只有与物理块号#FFH —致的有效 性确定块是有效的时,操作前进到步骤S93,定序器91将物理块号#FFH设置成变量Bn并且 操作返回。同时,当它在步骤S91确定与物理块号#FEH和#FFH —致的两个有效性确定块都 是有效的时,操作前进到步骤S94,定序器91通过将数据单元的第一字节做为每个有效性 确定块的最新信息加以参考,确定哪个有效性确定块是新的。当它在步骤S94确定与物理 块号#FEH或#FFH —致的有效性确定块是新的时,操作前进到步骤S92或步骤S93,并执行 与上述情况类似的处理并且操作返回。下面,解释在初始化结束之后,当来自EEPROM 66的写数据请求被提供给定序器 91时所述定序器91的读处理。另外,在这种状态下,存储读出数据逻辑块的逻辑块号被与 所述读数据请求一起提供给定序器91。在这种情况下,如图21的流程所示,首先,在步骤S101,定序器91将需要读出的数 据的块号设置成变量“η”并例如将1赋给i以作为计算块号的初始值。这里,定序器91被 提供有如上所述存储了需要从中读出的数据的逻辑块的逻辑块号,并且定序器91根据所 述逻辑块号的号将逻辑块号“η”识别为需要被读出的数据。此后,在步骤S102,定序器91将第i个逻辑块的逻辑块号设置成变量Bi,操作前 进到步骤S103,和如上所述,通过参考RAM 67,识别被处理得与逻辑块号Bl对应的物理块 号Bp。然后,定序器91从与EEPROM 66物理块号Bp对应的物理块中读出数据并在步骤 S104将传输该数据给RAM 67的传输缓冲器。即,用于构成传输缓冲器的区域被提供给除用 于存储参照图18所述初始化处理结果的区域以外的RAM 67和从EEPROM 66读出的数据被 传输给传输缓冲器。 然后,在步骤S105,定序器91将变量“ i ”加1,操作前进到步骤S106,并确定变量 “i”是“η”或更低。当它在步骤S106确定变量“i”等于或小于“η”,即当被请求块号的数 据没有被读出时,操作返回到步骤S102并在以下执行上述的类似处理。另外,当它在步骤 S106确定变量“i”大于“η”,即当被请求逻辑块的数据读出操作已经结束时,操作前进到步 骤S107,存储到RAM67传输缓冲器中的数据被如上所述传输给R/W1,且读处理结束。图22的流程进一步详细地描述了在图21中的步骤S103的处理。在这种情况下,首先在步骤S111,定序器91确定所述逻辑块Bl是% OOH或更高还 是%0冊或更低范围中的值。这里,EEPROM 66准备了在% OOH或更高和% DHl或更低范围内的224(等于数据 块数)个逻辑块号并执行在步骤Slll的确定处理,以确认逻辑块号Bl是否是一个可用的值。当它在步骤Slll确定逻辑块号Bl不是位于% OOH或更高和% DHl或更低范围内的值时,操作前进到步骤Sl 12,执行确定误差处理和结束读处理。即,在这种情况下,逻辑块 号Bl不是一个可用的值,因此,此后的处理不再执行。同时,当它在步骤Slll确定所述逻辑块号Bl是一个位于范围% OOH或更高和% Dra或更低内的值,操作前进到步骤S113,通过参考RAM 67识别与逻辑块号Bl —致的物理 块号Bp,且操作返回。
下面,解释当在执行结合图18所述初始化处理之后,当向定序器91提出对EEPROM 66的写数据请求时的写处理(更新存储到EEPROM 66中的数据)。这种情况下,与写数据请求一起,数据和需要被写入数据的逻辑块的块号被提供 给定序器91。另外,除上述区域以外,用于存储由定序器91接收的写数据的接收缓冲器的 区域在RAM 67中是安全的且需要被写入的数据被存储在接收缓冲器中。在这种情况下,首先如图23流程所示,在步骤S121,定序器91将需要被写入的数 据的块号设置成变量“η”并例如将1赋给变量“i”,设置成用于块号计数的初始值。在这 种情况下,如上所述,定序器91根据提供给它的逻辑块号的号识别需要被写入数据的块号 “η”。此后,在步骤S122,定序器91将第i个逻辑块的逻辑块号(待被写入第i个数据 的逻辑块)设置成变量Bi,操作前进到步骤S123,且通过如上所述地参考RAM 67,计算实际 被写入需要被写到与逻辑块号Bl —致的逻辑块的数据的数据区域更新块的物理块号Br并 与此同时执行使所述更新块变成数据块的处理。S卩,在步骤S123,首先在图24流程的步骤S141处,通过参考RAM 67,定序器91计 算需要将数据写入与实际已经写入逻辑块号Bl —致的逻辑块的更新块的物理块号Br。特 别是,对从存储到已经被写入数据区域更新块的物理块号的RAM 67的有效性确定块的左 侧开始的第i部分加以参考且这里所描述的逻辑块号被设置成变量Br。然后,操作前进到步骤S142且定序器91如在图21所示步骤S103的情况一样参 考RAM 67,以识别被处理得与逻辑块号Bl对应的物理块号Bp。此后,在步骤S143,物理块号Bp被写到其中已经描述了数据区域更新块的物理块 号Br的RAM 67的一个位置处,操作前进到步骤S144,物理块号Br被写到其中已经描述了 被处理得与逻辑块号Bl对应的物理块号Bp的RAM 67的一个位置处,操作返回。S卩,如图25所示,在步骤S143和S144处,物理块号Br和Bp的存储位置相互交换, 借此,使已经是数据区域更新块的物理块Br改变成与逻辑块Bl—致的数据块,且使被处理 得与逻辑块Bl对应的物理块Bp变成数据区域的更新块。参看图23,在步骤S123处理结束之后,操作前进到步骤S124,存储到接收缓冲器 的第i个数据被写到数据区域的更新块Br (精确地说,是经过图24所述处理已经是数据区 域更新块和现在被改变成数据块的物理块Br)且操作前进到步骤S125。在步骤S125,定序器91使变量“i”加1,操作前进到步骤S126,定序器91确定变 量“i”是否等于或小于“η”。当它在步骤S126确定变量“i”等于或小于“η”时,即,当被 请求块号的数据还没有被写入时,操作返回到步骤S122并在后面的步骤中执行与上述情 况类似的处理。另外,当在步骤S126确定变量“i”大于“η”时,即,被请求块的写入已经结 束时,操作前进到步骤S128,定序器91通过执行步骤S122到S126的处理将存储到其中存 储内容已经改变(更新)的RAM 67的指针区域号设置成变量“m”,并例如将1设置给变量“ j”以用做被改变的指针区域的初始值。在这种情况下,虽然通过步骤S123的处理(结合于图4解释的处理)改变了存储 到RAM 67的指针块的存储内容,但是,当所述指针块的存储内容被以这种方式改变时,规 定所述改变的一个标记被存储到存有指针块的RAM 67的区域中,且在步骤S128中,通过参 考该标记识别存储内容已经改变的指针块的号。然后,操作前进到步骤S129,在定序器91中,例如来自被改变的指针块中RAM 67 顶部的第j个物理块号被设置成变量Bn。另外,在步骤S130,定序器91通过参考RAM 67 执行一个处理以识别存储最初需要被写入数据的物理块物理块号的指针块的物理块号Bn, 并将所述指针块Bn改变成指针区域的更新块。即,如图26的流程所示,在步骤S130,首先定序器91通过参考RAM67计算指针区 域更新块的物理块号Bt,以便改变成一个新的指针块。特别是,参考来自存储到其中已经描 述了指针区域更新块的物理块号的RAM 67中存贮的有效性确定块的自左侧的第j部分,且 这里所述的物理块号被设置成变量Bt。然后,在步骤S152,定序器91将物理块号Bt写到其中已经描述了指针块的物理块号Bn的RAM 67的一个位置中,并且操作前进到步骤S153,物理块号Bn被写到已经描述了 指针区域更新块的物理块号Bt的RAM 67的一个位置中,且操作返回。即,如图27所示,在步骤S152和S153,物理块号Bn和Bt的存储位置相互交换,借 此,已经是指针区域更新块的物理块Bt被变成指针块,且已经是指针块的物理块Bn被变成 指针区域的更新块。再参考图23,在步骤S130的处理之后,操作前进到步骤S131,定序器91将来自 RAM 67更新指针块顶部的第j个指针拷贝到存储在EEPR0M67中的指针区域更新块Bt和操 作前进到步骤S132。在步骤S132,定序器91使变量“ j”加1,操作前进到步骤133,确定变 量“j”是否等于或小于“m”。当在步骤S133确定变量“ j”等于或小于“m”时,即,当有关所 有更新指针块的处理还没有结束时,操作返回到步骤S129并在后面的步骤中执行类似于 上述的处理。另外,当它在步骤S133确定变量“ j”大于“m”时,即当有关所有被改变的指 针块的处理都已经结束时,操作前进到步骤S134且定序器91使数据单元的最后一个字节 加1作为存储到MM 67的有效性确定块的最新信息。另外,根据这个实施例,如上所述,作为最新信息,可以分别使用0、1和2三个值, 同时当作为最新信息在前增加的结果所获得的值是2时,在步骤S124,所述最新信息被变成零。在步骤S134的处理之后,操作前进到步骤S135,定序器91使奇偶计算单元93计 算需要被写到存储到MM 67有效性确定块奇偶单元的RS代码且操作前进到步骤S136。 在步骤S136,定序器91改写RAM67中一有效块确定块位置上的有效块确定块,该块位于 EEra0M66上且在初始化处理(图18)的步骤S81处未被选择,操作前进到步骤S137。在步 骤S137,在定序器91中,执行表明结束向R/W1的正常数据写入的写结束信息的控制且写处 理结束。如上所述,在完成向数据区域写处理结束之后和向其中存储有用于构成数据区域 的物理块的指针的指针区域的写操作结束之后,用于存储有关构成指针区域物理块的指针 的有效性确定块(第一和第二区域)的存储内容被更新和因此,在一个或更多物理块中实际存储器出错能够被处理。即,不仅是构成数据区域的一个物理块的存储器出错能够被处理,而且是多个物理块的存储器出错也能够被处理。另外,如上所述,存储到指针区域有效性确定块和信息被作为一个转换表,用于将数据区域中的逻辑块号转换成物理块号,因此,当在有关有效性确定块或指针区域的写操 作过程中产生故障时,虽然引起存储器出错,但这种逻辑存储器出错能够被处理。结果是,即使是在多个相关数据的写过程中出现故障和存储器产生出错时,存储 器出错能够被有效处理,其中,可以保持多个数据的兼容性。如上所述,虽然上述解释是在本发明被应用到非接触卡系统的情况下作出的,但 是,本发明也可以应用于具有一存储器的存储装置或用于写入数据的所有装置。但是,本发 明特别适用于在例如如上所述非接触系统的非稳定状态中执行数据传输和接收,也可以是 用户能够自由插入或取出IC卡等的接触型系统。另外,根据这个实施例,虽然指针区域更新块的物理块号或数据区域更新块的物 理块号分别被存储到有效性确定块或指针区域被作为所谓的指针区域的空区域或数据区 域,但更新块的物理块号并不必须进行存储。但是,当更新块的物理块号没有被存储时,在 写过程中,用于构成更新块的物理块必须通过搜索EEPROM 66的存储内容进行检测并因此 从高速格式化或处理的角度看,最好存储更新块的物理块号。另外,根据这个实施例,虽然用于存储有效性确定块、指针区域和数据区域的区域 被分配给EEPROM 66上的预定位置,但用于分配这些区域的位置没有特殊限制。再有,这些 区域不是非要成为EEPROM上一个连续区域。即,用于存储有效性确定块、指针区域或数据 区域的各个区域在EEPROM 66的可以是非连续区域。另外,根据本实施例,只有在先时间处的存储内容可以保持在EEPR0M66中,另外情况下,例如,在一个在先时间处和在超前于该在先时间处的存储内容可以被保持。但是, 在这种情况下,还需要进一步的存储容量。
权利要求
一种数据处理方法,使用在块单元中存储原始信息和更新信息的存储器,所述存储器包括数据区域以及第一和第二指针区域,所述数据区域用于存储多个数据块和多个更新块,所述第一和第二指针区域用于存储分配给所述数据块和所述更新块的多个块号和关于所存储的内容的新颖程度的最新信息,所述数据处理方法包括如下步骤根据所述最新信息选择所述第一和第二指针区域中的一个区域,使得存储在第一和第二指针区域的所述一个区域的所述一个或多个数据块号指向其中写入所述原始信息的一个或多个数据块;将对应于所述更新信息的数据写入一个或多个更新块中,所述一个或多个更新块对应于分配给所述一个或多个更新块并存储在所述第一和第二指针区域的所述一个区域中的一个或多个更新块号;以及将分配给一个或多个更新块的一个或多个更新块号存储到所述第一和第二指针区域的另一个区域中,使得存储在所述第一和第二指针区域的另一个区域中的所述一个或多个更新块号指向一个或多个数据块,将存储在所述第一和第二指针区域的所述一个区域中的所述一个或多个数据块号写入所述第一和第二指针区域的另一个区域中,使得存储在所述第一和第二指针区域的另一个区域中的所述一个或多个数据块号指向一个或多个更新块。
2.根据权利要求1所述的数据处理方法,其中所述第一和第二指针区域还存储关于存 储内容有效性的有效性信息,所述数据处理方法还包括根据有效性信息选择所述第一和 第二指针区域中的所述一个区域。
3.根据权利要求2所述的数据处理方法,还包括如下步骤将已经写入数据的一个或多个更新块的块号存储到第一和第二指针区域的所述另一 个区域中;和更新第一和第二指针区域的所述另一个区域中的最新信息和有效性信息。
4.根据权利要求3所述的数据处理方法,还包括如下步骤读出存储到数据块中的数据,所述数据块与存储到所选择的区域的块号对应。
5.根据权利要求1所述的数据处理方法,还包括如下步骤将原来要被写入数据的数据块的块号存储到第一和第二指针区域的所述另一个区域。
6.根据权利要求5所述的数据处理方法,其中写入步骤包括将原来要被写入到与存 储到第一指针区域和第二指针区域的一个区域中的块号对应的一个或多个数据块中的数 据,写入到与存储到该区域中的块号对应的一个或多个更新块中。
7.一种数据处理设备,通过使用用于在块单元中存储原始信息和更新信息的存储器执 行数据处理,所述存储器包括数据区域以及第一和第二指针区域,所述数据区域用于存储 多个数据块和多个更新块,所述第一和第二指针区域用于存储分配给所述数据块和所述更 新块的块号和关于存储内容的新颖程度的最新信息,所述数据处理设备包括选择装置,根据所述最新信息选择所述第一和第二指针区域中的一个区域,使得存储 在第一和第二指针区域的所述一个区域的所述一个或多个数据块号指向其中写入所述原 始信息的一个或多个数据块;数据写入装置,将对应于所述更新信息的数据写入一个或多个更新块中,所述一个或 多个更新块对应于分配给所述一个或多个更新块并存储在所述第一和第二指针区域的所 述一个区域中的一个或多个更新块号;和块号写入装置,用于将分配给一个或多个更新块的一个或多个更新块号存储到所述第 一和第二指针区域的另一个区域中,使得存储在所述第一和第二指针区域的另一个区域中 的所述一个或多个更新块号指向一个或多个数据块,将存储在所述第一和第二指针区域的 所述一个区域中的所述一个或多个数据块号写入所述第一和第二指针区域的另一个区域 中,使得存储在所述第一和第二指针区域的另一个区域中的所述一个或多个数据块号指向 一个或多个更新块。
8.一种信息处理方法,使用由预定块单元存储信息的存储装置,所述存储装置至少包 括数据区域、块号区域以及第一区域和第二区域,所述数据区域用于由预定块单元存储数 据,该数据区域包括多个数据块和多个更新块,所述块号区域用于由块单元存储分配给数 据块和更新块的块号,所述第一区域和第二区域用于存储构成块号区域的各块的多个块 号,所述的信息处理方法包括如下步骤将更新数据写入一个或多个更新块,所述数据对应于在与所述第一区域和第二区域中 的一个区域中存储的块号对应的一个或多个数据块中的原始写入的数据;将已写入更新数据的更新块的块号写入到块号区域的更新块中;将块号区域的更新块的块号存储到第一区域和第二区域中的另一个区域中;以及在每次将数据写入数据区域的更新块中之后,紧接着将已写入数据的更新块改变为数 据块,并将原来写有对应于已写入更新块中的数据的数据的数据块改变为更新块。
9.根据权利要求8所述的信息处理方法,其中所述第一区域和第二区域还存储关于存 储内容的新颖程度的最新信息或关于存储内容有效性的有效性信息,所述信息处理方法还 包括步骤根据最新信息或有效性信息,选择第一区域和第二区域中的一个区域,其中写入数据的步骤包括将数据写入数据区域的一个或多个更新块中,所述数据原来 要被写入与存储在第一区域和第二区域中所选择的一个区域中的块号相对应的数据区域 的一个或多个数据块中。
10.根据权利要求9所述的信息处理方法,还包括如下步骤更新第一区域和第二区域的另一个区域中的最新信息和有效性信息。
11.根据权利要求9所述的信息处理方法,还包括如下步骤读出存储到数据区域的数据块中的数据,所述数据块与存储于所选择区域的块号相对应。
12.根据权利要求8所述的信息处理方法,还包括如下步骤将原来要被写入数据的数据区域的数据块改变成数据区域的更新块,并将其块号写到 块号区域的更新块中;和将已经写入数据区域的更新块的块号的块号区域中的更新块的块号存储到第一和第 二区域的另一个区域中。
13.根据权利要求12所述的信息处理方法,其中写入数据的步骤包括将数据写入一个或多个更新块中,所述更新块与存储到第一区域和第二区域的另一个 区域中的块号对应,所述数据原来要被写入与存储在第一区域和第二区域的一个区域中的 块号相对应的一个或多个数据块中。
14.一种信息处理设备,用于使用由预定块单元存储信息的存储装置执行数据处理,所述存储装置至少包括数据区域、块号区域以及第一区域和第二区域,所述数据区域用于由 预定块单元存储数据,该数据区域包括多个数据块和多个更新块,所述块号区域用于由块 单元存储分配给数据块和更新块的块号,所述第一区域和第二区域用于存储构成块号区域 的各块的多个块号,所述的信息处理设备包括数据写入装置, 将更新数据写入一个或多个更新块,其中所述更新数据对应于原来被 写入到与第一区域和第二区域中的一个区域中存储的块号对应的一个或多个数据块中的 数据;第一块号写入装置,用于在每次将数据写入到更新块中之后,接着将已被写入数据的 更新块的块号写入所述块号区域的更新块中;和第二块号写入装置,用于使第一区域和第二区域中的另一个区域存储块号区域的更新 块的块号,在该块号区域中,已经作为块号区域中的数据块写入了更新块的块号。
全文摘要
即使是在多个相关数据被写入的过程中出现故障也能够保持多个数据的兼容性,第一区域存储分别与逻辑块号%00H到%03H一致的构成数据区域的物理块的物理块号#00H到#03H,例如,当具有一个对逻辑块%00H和%02H的数据写请求时,数据被分别写到例如是更新块的物理块#04H和#05H中,以便更新构成数据区域物理块中的数据,并且物理块的块号#04H和#05H被存储到分别与逻辑块%00H和%02H对应的第二区域中。
文档编号G07F7/10GK101807262SQ20101014455
公开日2010年8月18日 申请日期1998年2月28日 优先权日1997年2月28日
发明者日下部进, 高田昌幸 申请人:索尼公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1