专利名称:信息存储设备的制作方法
技术领域:
本发明涉及信息存储设备,更具体地说,本发明涉及存储器卡,例如SD(保密数字)存储器卡。
背景技术:
有一种以闪速存储器为代表的非易失性存储器件,其最小擦除单元(数据擦除块)大于最小写入单元(数据写入块)。当在这种非易失性存储器件内进行附加写时,执行使现有数据移位的操作和数据写操作。
在数据移位操作中,在非易失性存储器件内准备新数据擦除块区,将数据拷贝到该区内,然后将附加写数据写入该区。
以下将更详细说明“数据移位操作”。
在诸如NAND型闪速存储器或AND型闪速存储器的非易失性存储器件内进行数据移位操作,在该非易失性存储器件中,只能以“1→0”或“0→1”的一个方向写入数据位。
在NAND型闪速存储器中,例如,只能以“1→0”的一个方向写入数据。即使在具有数据“0”的区内写入“1”,也不能写入“1”,而是仍保留数据“0”。
除非非易失性存储器件内的所有写入区具有初始值“1”,否则可能存在要写入的数据与实际写入的数据不一致的情况。在所有区内置位数据值“1”的唯一方法是对该区内的各地址发擦除命令。
假定主机已经发出新写8KB数据的第一命令和在新写8KB数据后写(附加写)8KB数据的第二命令。由于第二命令涉及附加写,所以在非易失性存储器件内的区内尝试进行附加数据写。然而,不能保证该区内的数据是否是“1”(即擦除后的数据),所以要写入的数据可能与实际写入的数据不一致。
为了避免发生此问题,准备新写入区来代替上述区用于进行附加写。首先,擦除新写入区,从而产生具有数值“1”的新写入区。然后,将现有数据拷贝到新写入块内。
此后,写入来自主机的附加写数据,并且使先前使用的写入区失效。该过程需要移位现有数据。
闪速存储器的优点在于非易失性和可重写。然而,在某些情况下,禁止物理覆盖写。此外,擦除/写速度通常低于读速度。
不仅如此,在最小擦除单元大于最小读取/写入单元情况下,即使在只有部分区内的数据需要被重写时,仍必须拷贝或擦除闪速存储器内的现有数据,这被描述为“现有数据移位操作”。因此,存在许多必要操作,而且不能提高写操作速度。
发明内容
根据本发明的一个方面,提供了一种具有非易失性存储器件的信息存储设备,在该非易失性存储器件中,数据擦除块大于数据写入块,该设备的特征在于包括擦除装置,用于根据来自主机的写命令,在非易失性存储器件内进行擦除;清洁块指针,用于存储被擦除装置擦除的非易失性存储器件中的擦除块的地址,以及指示擦除块内到该处数据被写入的写入块位置的信息;确定装置,用于根据清洁块指针,确定除已经写入擦除块中的其他数据外,是否可将与写命令有关的数据写入非易失性存储器件中的擦除块中;以及写装置,用于在确定装置确定可以写入数据时,将与写命令有关的数据写入擦除块;用于在确定装置确定数据不可写入时保留其他擦除块;用于将已经写入擦除块的其他数据复制到保留的其他擦除块;用于将与写命令有关的数据写入保留的其他擦除块。
根据本发明,提供了一种具有非易失性存储器件的信息存储设备,在该非易失性存储器件中,数据擦除块大于数据写入块,该设备的特征在于包括擦除装置,用于根据来自主机的写命令,擦除非易失性存储器件;第一清洁块指针,用于存储被擦除装置擦除的非易失性存储器件内的第一擦除块的地址,以及指示第一擦除块内到该处数据被写入的写入块位置的信息;第二清洁块指针,用于存储被擦除装置擦除的非易失性存储器件内的第二擦除块的地址,以及指示第二擦除块内到该处数据被写入的写入块位置的信息;确定装置,用于在将与写命令有关的数据写入第一擦除块时,根据第一清洁块指针,确定除已经写入第一擦除块中的其他数据外,是否可将与写命令有关的数据写入第一擦除块,而且用于在将与写命令有关的数据写入第二擦除块时,根据第二清洁块指针,确定除已经写入第二擦除块中的其他数据外,是否可将与写命令有关的数据写入第二擦除块;以及写装置,用于在确定装置确定可将数据写入第一擦除区时,将数据写入第一擦除块,并且在确定装置确定可以将数据写入第二擦除块时,将数据写入第二擦除块;用于在确定装置确定数据不可写入第一擦除块和第二擦除块之一时保留其他擦除块的装置;用于将已经写入第一擦除块和第二擦除块之一的其他数据复制到保留的其他擦除块的装置;用于将与写命令有关的数据写入保留的其他擦除块的装置。
根据本发明,提供了一种信息存储设备中的数据写入方法,所述信息存储设备具有一个在其中数据擦除块大于数据写入块的非易失性存储器件,以及一个清洁块指针,用于存储非易失性存储器件擦除块的地址以及指示擦除块内到该处数据被写入的写入块位置的信息,该方法的特征在于包括根据来自主机的写命令,擦除非易失性存储器件;根据清洁块指针,确定除已经写入擦除块中的其他数据外,是否可将与写命令有关的数据写入非易失性存储器件的擦除块内;在确定可以写入数据时,将与写命令有关的数据写入擦除块;在确定装置确定数据不可写入时保留其他擦除块;将已经写入擦除块的其他数据复制到保留的其他擦除块;将与写命令有关的数据写入保留的其他擦除块。
图1示出根据本发明实施例的信息存储设备;图2示出清洁块指针的结构图3示出写入非易失性存储器件的数据与清洁块指针的关系;图4是示出在进行擦除时的处理过程的流程图;图5是示出数据写操作的流程图;图6A示出主机控制器发出的写命令;图6B示出在设置一个清洁块指针情况下信息存储设备的运行过程;图6C示出在设置两个清洁块指针情况下信息存储设备的运行过程;以及图7是示出在非易失性存储器件内设置清洁块指针情况下的运行过程的流程图。
具体实施例方式
现在将参考
根据本发明一个方面的信息存储设备。
图1示出根据本发明实施例的信息存储设备。
如图1所示,本实施例的信息存储设备包括主机模块接口1-1、非易失性存储介质1-2、MPU 1-3、临时存储介质1-4、非易失性存储器件的接口1-5(以下称为“非易失性存储器件接口1-5”)以及非易失性存储器件1-6。
主机模块接口1-1将信息发送到主机控制器1-2,并从主机控制器1-2接收信息。
非易失性存储介质1-2存储用于控制MPU 1-3的固件。
MPU 1-3控制根据本发明实施例的信息存储设备的写操作。此外,MPU 1-3控制整个信息存储设备。根据存储在非易失性存储介质1-2内的程序,MPU 1-3解释主机控制器2发出的请求以及访问非易失性存储器件1-6,例如,发出命令和传送数据。
临时存储介质1-4是MPU 1-3的工作区。临时存储介质1-4不仅用于在将数据写入/读出非易失性存储器件1-6时,临时存储数据,而且用于存储访问非易失性存储器件1-6或主机控制器所需的变量。此外,临时存储介质1-4还存储该实施例的信息存储设备使用的清洁块指针1-4a。以下将说明清洁块指针1-4a的特定结构。
非易失性存储器件接口1-5一方面与非易失性存储器件1-6之间,另一方面与MPU 1-3和主机控制器2之间传送/接收信息。
主机控制器2是用于对存储设备1执行诸如读、写和擦除的存取操作的单元。主机控制器2是例如个人计算机。
现在将说明根据本发明实施例的信息存储设备的运行过程。
在主机控制器2发出读命令后,MPU 1-3解释读地址,然后,将临时存储介质1-4用作工作区,通过非易失性存储器件接口1-5,将读命令发送到非易失性存储器件1-6。将从非易失性存储器件1-6读出的数据存储到临时存储介质1-4,然后,在MPU 1-3的控制下将该数据送到主机控制器2。
在主机控制器2发出写命令时,MPU 1-3解释写地址,并将写数据存储到临时存储介质1-4。然后,通过非易失性存储器件接口1-5,MPU 1-3将写命令发送到非易失性存储器件1-6,这样实现写操作。
临时存储介质1-4存储被称为“清洁块指针”的变量。因此,临时存储介质1-4具有有效处理主机控制器发送的写数据所需的功能。
图2示出清洁块指针的结构。
清洁块指针1-4a包括数据擦除块地址和写使能指针。清洁块指针1-4a指出数据可以写入以由相关擦除块地址的写使能指针指出的块开始的区内。
在图2所示的例子中,信息“0X1000”描述为清洁块指针内的擦除块地址,而信息“0X003”描述为写使能指针。这意味着,前3个写入块禁止进行数据写,因为在其内已经写入了数据。
现在说明将数据附加写入其数据擦除块的大小大于数据读取/写入块的大小的非易失性存储设备内的情况。
在此实施例中,假定数据擦除块为16KB,而数据读取/写入块是8KB,而且主机控制器发送了两次进行8KB数据写的命令。
图3示出写入非易失性存储设备内的数据与清洁块指针之间的关系。图4是示出在进行擦除时的处理过程的流程图。图5是示出数据写操作的流程图。
如果主机控制器已经发出8KB数据的新写命令,则MPU 1-3根据传统方法,在非易失性存储设备内进行擦除操作,从而保留进行数据写的区域。因此,形成可写入区(图4S1)。此时,更新存储在临时存储介质内的清洁块指针(图4S2、S3)。
如果地址为X的擦除块已经被擦除,则“X”描述为清洁块指针内的擦除块地址(CBP-Addr),而“0”描述为写使能指针(CBP-Wp)。这样,就完成了擦除操作。
接着,将参考图5说明写操作。
首先,确定写命令的写地址是否与擦除块地址一致(S11)。如果在步骤S11确定不一致,则保留新写入区(S12),而且对新写入区进行擦除操作(S13)。
随后,将新写入区地址作为擦除块地址存储在清洁块指针内(S14),并且将“0”作为写使能指针存储(S15)。然后,进行数据写(S16),并更新写使能指针(S19)。
另一方面,如果在步骤S11确定写命令的写地址与擦除块地址一致,则将写地址与写使能指针进行比较(S17)。
在此实施例中,假定一个擦除块是16KB,而一个写入块是8KB。这样,如果写使能指针从擦除块地址中指出第二块,则确定不能进行附加写。
如果在步骤S17的比较结果显示不能进行附加写,则控制过程进入步骤S12。另一方面,如果确定可以进行附加写,则附加写数据(S18),然后,更新写使能指针(S19)。
根据本发明的信息存储设备,可以通过参考相关清洁块指针,确定在写入区内进行写的可能性/不可能性。如果写入区可以进行写,则将8KB数据写入该块内。
同时,将关于到其为止已经写入了数据的写入块的信息记录到清洁块指针。因此,这说明可以写入第一个8KB之外的块内。在此实施例中,由于8KB=1写入块,所以在清洁块指针内描述“1”。
如果已经发出另一个写命令以在后续地址写入(附加写)8KB数据,则将该写地址与清洁块指针进行比较。如果确认可以进行附加写,则将数据附加写入该区内,而无需进行数据移位操作。在这些过程中,要使用的存储区是一个擦除块,而且需要执行一个擦除操作和两个写操作。
在图3所示的例子中,与传统方法相比,可以将要使用的存储区减少一个擦除块,而且还可以不必执行一个擦除操作、一个写操作以及一个无效过程。
如上所述,在根据本发明的实施例中,发出多个写命令。如果这些命令与在同一个擦除块的区域内进行附加写相关联,则可以减少对非易失性存储器件进行存取操作的数量,而且可以实现高速操作。
另一个实施例现在将说明根据本发明另一个实施例的信息存储设备。
在上述实施例中,使用了一个清洁块指针。相反,在本实施例中,在临时存储介质内设置了多个清洁块指针。
假定主机控制器发出的写命令是对两个区交替发出的,如图6A所示。
图6B是用于解释在使用一个清洁块指针情况下信息存储设备的运行过程的示意图,图6C是用于解释使用两个清洁块指针情况下信息存储设备的运行过程的示意图。
在图6C中,清洁块指针CBP-1和CBP-2是指出存储在临时存储介质内的清洁块指针的值。每个指针的上部是擦除块地址(CBP-Addr),而下部是写使能指针(CBP-Wp)。
如图6B所示,如果在仅设置一个清洁块指针情况下,将写命令发送到地址X和地址Y,则在执行地址Y的写操作的同时,更新地址X的清洁块指针,而关于地址X的清洁块指针的信息被丢失。
因此,即使对地址X发出了附加写命令,仍不能确定附加写区是否可以写入,而且与现有技术相同,必须执行数据移位操作。此过程与不设置清洁块指针的情况相同,因此没有优点。
在此另一个实施例的信息存储设备中,设置两个清洁块指针,而且交替使用这两个指针(CBP-1,CBP-2)。图6C是用于解释在设置两个清洁块指针情况下信息存储设备的运行过程的示意图。
如果对地址X发出了写地址,则将写指针信息存储到CBP-1内。如果对Y地址发出了写命令,则将写指针信息存储到CBP-2。在此另一个实施例中,由于设置了两个清洁块指针,所以存储关于两个地址X、Y的信息。
如果对地址X发出了附加写命令,则参考CBP-1的写指针信息。如果对地址Y发出了附加写命令,则参考CBP-2的写指针信息。因此,可以对非易失性存储设备进行附加写。
具体地说,如果增加要设置的清洁块指针的数量,则可以存储关于更多存储区的写入点信息。因此,结合以高随机度发出的写地址,可以有效进行附加写操作。
关于图6B至6C所示的例子,如果设置一个清洁块指针,则在图6B所示写命令情况下,要使用的区的数量是4个,而且需要进行6次写操作。另一方面,如果设置两个清洁块指针,则要使用的区的数量是2,而且要执行4次写操作。
在上述实施例中,在临时存储介质内设置清洁块指针。作为一种选择,可以在非易失性存储器件内设置清洁块指针。
现在,参考图7所示的流程图,说明在非易失性存储器件内设置清洁块指针情况下的运行过程。
假定将清洁块指针与写数据一起设置在非易失性存储器件内。图7是写操作的流程图。
图7与在临时存储介质内设置清洁块指针的情况的不同之处在于,在开始写操作的同时,首先读出非易失性存储器件内的清洁块指针,而且还在于,在数据被写入非易失性存储器件内的同时,写入清洁块指针信息。
在开始数据写时,对应于主机发出的写入块地址,从非易失性存储器件的地址读取清洁块指针(S21)。应当理解,如果在该地址上没有写入数据,则将擦除后的值,例如“0”或“1”存储到所有区内,而且在写入后,存储清洁块指针的值。根据清洁块指针的值,可以确认数据是否被写入该地址。
这样,确定清洁块指针的值是否有效(S22)。如果该值无效,也就是说,如果不存储擦除后的值,则保留新写入区(S23),并对新写入区执行擦除操作(S24)。
接着,将新写入区地址作为所包括的擦除块地址存储到清洁块指针内(S25),并将值“0”作为写使能指针存储到清洁块指针(S26)。
此后,写入数据(新写的)和清洁块指针(S27),并更新写使能指针。
另一方面,如果在步骤S22确定清洁块指针的值有效,则与将清洁块指针存储到临时存储介质内的情况类似,分析写地址,并确定附加写的可能性/不可能性(S28)。
具体地说,将写地址与清洁块指针的擦除块地址进行比较。如果这两个地址不一致,则确定不能进行附加写,并执行步骤S23的处理过程。
如果在步骤S28的两个地址一致,则确定可能进行附加写,写入数据(附加写的)和清洁块指针(S29),并且更新写使能指针。在在此地址进行下一个写操作时,读出并参考清洁块指针。
如上所述,由于清洁块指针被存储在非易失性存储器件内,所以可以对所有擦除块地址设置同样数量的清洁块指针。因此,即使在任意擦除块地址进行附加写,仍不需要移位现有数据,而且实现高速处理过程。
本技术领域内的熟练技术人员容易设想其它优点和修改。因此,本发明在更广泛方面并不局限于在此所示和所说明的具体细节和说明性实施例。因此,在所附权利要求及其等效物所述的本发明基本原理的实质范围内,可以进行各种修改。
权利要求
1.一种具有非易失性存储器件的信息存储设备,在该非易失性存储器件中,数据擦除块大于数据写入块,该设备的特征在于包括擦除装置(1-3),用于根据来自主机的写命令,在非易失性存储器件内进行擦除;清洁块指针(1-4a),用于存储被擦除装置擦除的非易失性存储器件中的擦除块的地址,以及指示擦除块内到该处数据被写入的写入块位置的信息;确定装置(1-3),用于根据清洁块指针,确定除已经写入擦除块中的其他数据外,是否可将与写命令有关的数据写入非易失性存储器件中的擦除块中;以及写装置(1-3),用于在确定装置确定可以写入数据时,将与写命令有关的数据写入擦除块;用于在确定装置确定数据不可写入时保留其他擦除块的装置;用于将已经写入擦除块的其他数据复制到保留的其他擦除块的装置;用于将与写命令有关的数据写入保留的其他擦除块的装置。
2.根据权利要求1所述的信息存储设备,其特征在于将清洁块指针存储在与非易失性存储器件分离设置的临时存储介质内。
3.根据权利要求1所述的信息存储设备,其特征在于将清洁块指针以及与写命令有关的数据一同存储在非易失性存储器件内。
4.根据权利要求1所述的信息存储设备,其特征在于确定装置包括第一确定装置,用于确定与写命令有关的写地址是否与擦除块的地址一致;以及第二确定装置,用于在第一确定装置确定与写命令有关的写地址与擦除块的地址一致时,根据清洁块指针,确定除已经写入擦除块中的其他数据外,是否可以将与写命令有关的数据写入擦除块。
5.根据权利要求1所述的信息存储设备,其特征在于已经写入擦除块中的其他数据的地址对应于写命令的地址。
6.一种具有非易失性存储器件的信息存储设备,在该非易失性存储器件中,数据擦除块大于数据写入块,该设备的特征在于包括擦除装置(1-3),用于根据来自主机的写命令,擦除非易失性存储器件;第一清洁块指针(CBP-1),用于存储被擦除装置擦除的非易失性存储器件内的第一擦除块的地址,以及指示第一擦除块内到该处数据被写入的写入块位置的信息;第二清洁块指针(CBP-2),用于存储被擦除装置擦除的非易失性存储器件内的第二擦除块的地址,以及指示第二擦除块内到该处数据被写入的写入块位置的信息;确定装置(1-3),用于在将与写命令有关的数据写入第一擦除块时,根据第一清洁块指针,确定除已经写入第一擦除块中的其他数据外,是否可将与写命令有关的数据写入第一擦除块,而且用于在将与写命令有关的数据写入第二擦除块时,根据第二清洁块指针,确定除已经写入第二擦除块中的其他数据外,是否可将与写命令有关的数据写入第二擦除块;以及写装置(1-3),用于在确定装置确定可将数据写入第一擦除区时,将数据写入第一擦除块,并且在确定装置确定可以将数据写入第二擦除块时,将数据写入第二擦除块;用于在确定装置确定数据不可写入第一擦除块和第二擦除块之一时保留其他擦除块的装置;用于将已经写入第一擦除块和第二擦除块之一的其他数据复制到保留的其他擦除块的装置;用于将与写命令有关的数据写入保留的其他擦除块的装置。
7.根据权利要求6所述的信息存储设备,其特征在于将第一和第二清洁块指针存储在与非易失性存储器件分离设置的临时存储介质上。
8.根据权利要求5所述的信息存储设备,其特征在于将第一和第二清洁块指针以及与写命令有关的数据一同存储在非易失性存储器件内。
9.根据权利要求6所述的信息存储设备,其特征在于已经写入第一擦除块中的其他数据的地址对应于写命令的地址,已经写入第二擦除块中的其他数据的地址对应于写命令的地址。
10.一种信息存储设备中的数据写入方法,所述信息存储设备具有一个在其中数据擦除块大于数据写入块的非易失性存储器件,以及一个清洁块指针,用于存储非易失性存储器件擦除块的地址以及指示擦除块内到该处数据被写入的写入块位置的信息,该方法的特征在于包括根据来自主机的写命令,擦除非易失性存储器件;根据清洁块指针,确定除已经写入擦除块中的其他数据外,是否可将与写命令有关的数据写入非易失性存储器件的擦除块内;在确定可以写入数据时,将与写命令有关的数据写入擦除块;在确定装置确定数据不可写入时保留其他擦除块;将已经写入擦除块的其他数据复制到保留的其他擦除块;将与写命令有关的数据写入保留的其他擦除块。
11.根据权利要求10所述的数据写入方法,其特征在于,确定步骤包括确定与写命令有关的写地址是否与擦除块的地址一致;以及在确定与写命令有关的写地址与擦除块的地址一致时,根据清洁块指针,确定除已经写入擦除块中的其他数据外,是否可将与写命令有关的数据写入擦除块。
12.根据权利要求10所述的数据写入方法,其特征在于已经写入擦除块中的其他数据的地址对应于写命令的地址。
全文摘要
根据本发明,提供了一种具有非易失性存储器件的信息存储设备,在该非易失性存储器件中,数据擦除块大于数据写入块,该设备包括擦除装置(1-3),用于根据主机发出的写命令,在非易失性存储器件内进行擦除;清洁块指针(1-4a),用于存储被擦除装置擦除的非易失性存储器件擦除区的地址,以及指示到该处数据被写入的、擦除区内的写入块位置的信息;确定装置(1-3),用于根据清洁块指针,确定是否可以将与写命令有关的数据写入被擦除装置擦除的、非易失性存储器件的擦除区;以及写装置(1-3),用于在确定装置确定可以写入数据时,将与写命令有关的数据写入擦除区。
文档编号G06F12/00GK1832041SQ200510129609
公开日2006年9月13日 申请日期2003年3月20日 优先权日2002年3月20日
发明者鹰居赖治 申请人:株式会社东芝