存储器使用寿命提高方法及硬件装置的制作方法

文档序号:6759931阅读:215来源:国知局
专利名称:存储器使用寿命提高方法及硬件装置的制作方法
技术领域
本发明涉及一种新型的通过改变存储器操作方法的手段提高半导体存储器的使用寿命以及长寿命的含存储器的硬件装置。尤其涉及半导体存储器寿命的提高和长寿命半导体存储器。
背景技术
普通的存储器或含存储器的电子设备的使用寿命主要取决于存储器的可擦写寿命,当某个存储单元因为反复擦写造成损坏,不能使用时,存储器和电子设备的正常工作就受到影响,所以在存储器空间足够的前提下,可利用冗余空间来缓解某些存储单元的操作次数。如果能提高存储器最常使用单元的寿命,相当于存储器的寿命和使用存储器的电子设备的寿命得到了提高。在智能卡中的错误计数器、电子设备中的数字电位器上,使用寿命的提高显得尤为重要。

发明内容
本发明克服普通存储器直接读写,频繁使用的单元容易到达使用寿命的缺点,提供了一种提高存储器使用寿命的方法,由原始数据块,备份数据区和备份数据规则组成。通过每次写非同一块数据区或多块备份数据区来提高整体存储器的可擦写次数与可靠性。每次写非同一块数据区降低了反复写某区域的频率。每次写多块备份数据区降低了某数据区损坏对数据有效性的影响。所述提高存储器使用寿命的方法特别适于对半导体存储器上错误计数器、防掉电数据区、定长数据区或变长数据区的寿命延长,主要用于存储器和带存储器的设备的寿命延长(如FLASH、EEPROM、其它半导体存储器、数字电位器和智能卡)。
当需要提高寿命的存储单元是单字节或定长数据时所述提高存储器使用寿命的方法,当原始数据块为单字节或定长多字节时,设单字节寿命延长倍数字段N(2≤N≤255)或多字节寿命延长倍数字段(寿命延长倍数介于2和多字节最大值组成的闭区间内),则备份数据区应设定为N个数据块,每个数据块长度为寿命延长倍数字段的长度+原始数据块长度,即每个数据块格式为序号+数据。初次使用要对备份数据区进行初始化(字节全写00H或FFH)。
每次写数据的方法按以下步骤(1)地址指针定位到备份数据区初始地址,到(2);(2)依次读两个数据块的数据,如果两个数据块的序号不符合规则(按递减、递增或其它数字转盘规则),则到(3),否则到(4);(3)地址指针定位到下一个数据块,到(2);(4)把两个数据块中后面一个数据块的序号改写成符合规则的序号(如递增规则,单字节序号前一个数据块序号为00H,后一个数据块序号就应为01H;如前一个数据块序号达到最大FFH,则后一个数据块序号就应为起始值00H;数据块为循环链表,备份数据区最后一个数据块的后一个数据块为第一个数据块),并把数据写入序号后面的字节。
每次读数据的方法按以下步骤(1)地址指针定位到备份数据区初始地址,到(2);(2)依次读两个数据块的数据,如果两个数据块的序号不符合规则(按递减、递增或其它数字转盘规则),则到(3),否则到(4);(3)地址指针定位到下一个数据块,到(2);(4)把两个数据块中前面一个数据块的序号后面的数据读出即所需数据。
当需要提高寿命的存储单元是变长数据或兼容变长数据与定长数据时所述提高存储器使用寿命的方法,当应用是定长或变长数据时,设单字节寿命延长倍数字段N(2≤N≤255)或多字节寿命延长倍数字段(寿命延长倍数介于2和多字节最大值组成的闭区间内),则备份数据区应设定为N个数据块,每个数据块长度为寿命延长倍数字段的长度+最大数据长度字段的长度+数据区,即每个数据块格式为序号+长度+数据。初次使用要对备份数据区进行初始化(字节全写00H或FFH)。
每次写数据的方法按以下步骤(1)地址指针定位到备份数据区初始地址,到(2);(2)依次读两个数据块的数据,如果两个数据块的序号不符合规则(按递减、递增或其它数字转盘规则),则到(3),否则到(4);(3)地址指针定位到下一个数据块,到(2);(4)把两个数据块中后面一个数据块的序号改写成符合规则的序号(如递增规则,单字节序号前一个数据块序号为00H,后一个数据块序号就应为01H;如前一个数据块序号达到最大FFH,则后一个数据块序号就应为起始值00H;数据块为循环链表,备份数据区最后一个数据块的后一个数据块为第一个数据块),并把数据长度及数据写入序号后面的字节。
每次读数据的方法按以下步骤(1)地址指针定位到备份数据区初始地址,到(2);(2)依次读两个数据块的数据,如果两个数据块的序号不符合规则(按递减、递增或其它数字转盘规则),则到(3),否则到(4);(3)地址指针定位到下一个数据块,到(2);(4)读出两个数据块中前面一个数据块的序号后面的数据字段即数据长度,根据数据长度读出后面字节中的数据。
需要提高寿命的存储单元是单字节或定长数据时,另外一种不需要序号,通过增加备份区提高寿命的方法所述提高存储器使用寿命的方法,当应用是定长数据时,设单字节寿命延长倍数字段N(2≤N≤255)或多字节寿命延长倍数字段(寿命延长倍数介于2和多字节最大值组成的闭区间内),则备份数据区应设定为2N+1个数据块,每个数据块长度为1个原始数据块长度,即每个数据块格式只包含一组数据。初次使用要对备份数据区进行初始化(字节全写00H或FFH),实际延长寿命为原来的N+1/2倍。
每次写数据的方法按以下步骤(1)地址指针定位到备份数据区初始地址,到(2);(2)依次读入两个数据块,如果两个数据块的值不符合规则(按相等、互补或其它运算规则),则到(3),否则到(4);(3)地址指针定位到下一个数据块,到(2);(4)地址指针定位到下一个数据块(即前面步骤中读入的两个数据块的后一个),把连续两个数据块都写成需要写入的数据。
每次读数据的方法按以下步骤(1)地址指针定位到备份数据区初始地址,到(2);(2)依次读两个数据块的数据,如果两个数据块的序号不符合规则(按递减、递增或其它数字转盘规则),则到(3),否则到(4);(3)地址指针定位到下一个数据块,到(2);(4)读出两个数据块中任一数据块的数据即所需读出数据。
需要提高寿命的存储单元是变长数据或兼容变长数据和定长数据时,通过增加备份区提高寿命的方法所述提高存储器使用寿命的方法,当应用是变长数据或定长数据时,设单字节寿命延长倍数字段N(2≤N≤255)或多字节寿命延长倍数字段(寿命延长倍数介于2和多字节最大值组成的闭区间内),则备份数据区应设定为2N+1个数据块,每个数据块长度为最大数据长度字段的长度+原始数据块长度,即每个数据块格式为长度+数据。初次使用要对备份数据区进行初始化(字节全写00H或FFH)。
每次写数据的方法按以下步骤(1)地址指针定位到备份数据区初始地址,到(2);
(2)依次读入两个数据块,如果两个数据块的值不符合规则(按相等、互补或其它运算规则),则到(3),否则到(4);(3)地址指针定位到下一个数据块,到(2);(4)地址指针定位到下一个数据块(即前面步骤中读入的两个数据块的后一个),把连续两个数据块都写成需要写入的长度+数据。
每次读数据的方法按以下步骤(1)地址指针定位到备份数据区初始地址,到(2);(2)依次读两个数据块的数据,如果两个数据块的序号不符合规则(按递减、递增或其它数字转盘规则),则到(3),否则到(4);(3)地址指针定位到下一个数据块,到(2);(4)读出两个数据块中任一数据块的长度字段,再根据长度字段即可读出所需数据。
这种方法可以扩展为通过不止增加一个数据块做备份,可以增加到多个如M,每次写数据只覆盖上次写的M个数据块的最后一个,这样对于提高寿命为原来的N+1/M倍,则备份数据块应为M*N+1。
为了在提高存储器寿命的同时,能够校验存储单元的有效性,增加了数据校验方法所述提高存储器使用寿命的方法,所述每个数据块的结构可以为数据+校验,通过重新计算校验值并进行核对可以判断某数据块所在存储单元的有效性,如果本数据块无效则标记为坏,从而写下一数据块然后再校验,直至写并校验正确为止。
为了在提高存储器寿命的同时,还能够保护数据,增加了数据加密方法所述提高存储器使用寿命的方法,在提高寿命的同时还提供安全保护,数据不以明文形式写入,而是以密文方式安全存储,安全存储使用特定密钥、随机数、数字序列、加密算法、摘要算法、缺陷算法(运算结果不是完全正确,存在有规律缺陷)、唯一ID号、时间信息、过程信息的一种或多种进行组合来实现。


具体实施例方式
实施例1(长寿命智能卡)本发明所述的长寿命智能卡,使用所述的提高存储器使用寿命的方法,使得智能卡的寿命可以提高几倍到几万倍,以至于智能卡本身的寿命不因存储器的可擦写寿命而受到影响。例如智能卡中的错误计数器存储单元,电子钱包存储单元,循环记录文件的当前记录号单元和防掉电备份数据单元等都是频繁使用的单元,经常由于这些单元的使用寿命影响整体的使用寿命。本发明通过软件和/或硬件的方法实现存储器管理或提供特定的高寿命存储单元,从而提供一种长寿命智能卡,可以应用在需要长时间使用的安全项目上。
实施例2(长寿命数字电位器)本发明所述的长寿命数字电位器,使用所述的提高存储器使用寿命的方法,使得数字电位器的寿命可以提高几倍到几万倍,以至于数字电位器本身的寿命不因存储器的可擦写寿命而受到影响。一般的电视机、音响和电子设备中大量使用存储器和数字电位器来保存当前设置,本发明通过软件和/或硬件的方法实现存储器管理或提供特定的高寿命存储单元,使得可以提供一种长寿命数字电位器用于电子设备,以提高整体使用寿命。
实施例3(长寿命电子设备)本发明所述的使用存储器的长寿命电子设备,使用所述的提高存储器使用寿命的方法,使得电子设备的寿命不因存储器的可擦写寿命而受到影响。本发明通过软件和/或硬件的方法实现存储器管理或提供特定的高寿命存储单元,使得可以提供一种长寿命电子设备,以提高整体使用寿命。
权利要求
1.一种提高存储器使用寿命的方法,由原始数据块,备份数据区和备份数据规则组成。通过每次写非同一块数据区或多块备份数据区来提高整体存储器的可擦写次数与可靠性。每次写非同一块数据区降低了反复写某区域的频率。每次写多块备份数据区降低了某数据区损坏对数据有效性的影响。所述提高半导体存储器使用寿命的方法特别适于对错误计数器、防掉电数据区、定长数据区或变长数据区的寿命延长,主要用于存储器和带存储器的设备的寿命延长(如FLASH、EEPROM、其它半导体存储器、数字电位器和智能卡)。
2.根据权利要求1中所述的提高存储器使用寿命的方法,当原始数据块为单字节或定长多字节时,设单字节寿命延长倍数字段N(2≤N≤255)或多字节寿命延长倍数字段(寿命延长倍数介于2和多字节最大值组成的闭区间内),则备份数据区应设定为N个数据块,每个数据块长度为寿命延长倍数字段的长度+原始数据块长度,即每个数据块格式为序号+数据。初次使用要对备份数据区进行初始化(字节全写00H或FFH)。每次写数据的方法按以下步骤(1)地址指针定位到备份数据区初始地址,到(2);(2)依次读两个数据块的数据,如果两个数据块的序号不符合规则(按递减、递增或其它数字转盘规则),则到(3),否则到(4);(3)地址指针定位到下一个数据块,到(2);(4)把两个数据块中后面一个数据块的序号改写成符合规则的序号(如递增规则,单字节序号前一个数据块序号为00H,后一个数据块序号就应为01H;如前一个数据块序号达到最大FFH,则后一个数据块序号就应为起始值00H;数据块为循环链表,备份数据区最后一个数据块的后一个数据块为第一个数据块),并把数据写入序号后面的字节。每次读数据的方法按以下步骤(1)地址指针定位到备份数据区初始地址,到(2);(2)依次读两个数据块的数据,如果两个数据块的序号不符合规则(按递减、递增或其它数字转盘规则),则到(3),否则到(4);(3)地址指针定位到下一个数据块,到(2);(4)把两个数据块中前面一个数据块的序号后面的数据读出即所需数据。
3.根据权利要求2中所述的提高存储器使用寿命的方法,当应用是变长数据或变长与定长兼容数据时,设单字节寿命延长倍数字段N(2≤N≤255)或多字节寿命延长倍数字段(寿命延长倍数介于2和多字节最大值组成的闭区间内),则备份数据区应设定为N个数据块,每个数据块长度为寿命延长倍数字段的长度+最大数据长度字段的长度+数据区,即每个数据块格式为序号+长度+数据。初次使用要对备份数据区进行初始化(字节全写00H或FFH)。每次写数据的方法按以下步骤(1)地址指针定位到备份数据区初始地址,到(2);(2)依次读两个数据块的数据,如果两个数据块的序号不符合规则(按递减、递增或其它数字转盘规则),则到(3),否则到(4);(3)地址指针定位到下一个数据块,到(2);(4)把两个数据块中后面一个数据块的序号改写成符合规则的序号(如递增规则,单字节序号前一个数据块序号为00H,后一个数据块序号就应为01H;如前一个数据块序号达到最大FFH,则后一个数据块序号就应为起始值00H;数据块为循环链表,备份数据区最后一个数据块的后一个数据块为第一个数据块),并把数据长度及数据写入序号后面的字节。每次读数据的方法按以下步骤(1)地址指针定位到备份数据区初始地址,到(2);(2)依次读两个数据块的数据,如果两个数据块的序号不符合规则(按递减、递增或其它数字转盘规则),则到(3),否则到(4);(3)地址指针定位到下一个数据块,到(2);(4)读出两个数据块中前面一个数据块的序号后面的数据字段即数据长度,根据数据长度读出后面字节中的数据。
4.根据权利要求1中所述的提高存储器使用寿命的方法,当应用是定长数据时,设单字节寿命延长倍数字段N(2≤N≤255)或多字节寿命延长倍数字段(寿命延长倍数介于2和多字节最大值组成的闭区间内),则备份数据区应设定为2N+1个数据块,每个数据块长度为1个原始数据块长度,即每个数据块格式只包含一组数据。初次使用要对备份数据区进行初始化(字节全写00H或FFH)。每次写数据的方法按以下步骤(1)地址指针定位到备份数据区初始地址,到(2);(2)依次读入两个数据块,如果两个数据块的值不符合规则(按相等、互补或其它运算规则),则到(3),否则到(4);(3)地址指针定位到下一个数据块,到(2);(4)地址指针定位到下一个数据块(即前面步骤中读入的两个数据块的后一个),把连续两个数据块都写成需要写入的数据。每次读数据的方法按以下步骤(1)地址指针定位到备份数据区初始地址,到(2);(2)依次读两个数据块的数据,如果两个数据块的序号不符合规则(按递减、递增或其它数字转盘规则),则到(3),否则到(4);(3)地址指针定位到下一个数据块,到(2);(4)读出两个数据块中任一数据块的数据即所需读出数据。所述方法可以扩展为通过不止增加一个数据块做备份,可以增加到多个如M,每次写数据只覆盖上次写的M个数据块的最后一个,这样对于提高寿命为原来的N+1/M倍,则备份数据块应为M*N+1。
5.根据权利要求4中所述的提高存储器使用寿命的方法,当应用是变长数据或定长与变长数据兼容时,设单字节寿命延长倍数字段N(2≤N≤255)或多字节寿命延长倍数字段(寿命延长倍数介于2和多字节最大值组成的闭区间内),则备份数据区应设定为2N+1个数据块,每个数据块长度为最大数据长度字段的长度+原始数据块长度,即每个数据块格式为长度+数据。初次使用要对备份数据区进行初始化(字节全写00H或FFH)。每次写数据的方法按以下步骤(1)地址指针定位到备份数据区初始地址,到(2);(2)依次读入两个数据块,如果两个数据块的值不符合规则(按相等、互补或其它运算规则),则到(3),否则到(4);(3)地址指针定位到下一个数据块,到(2);(4)地址指针定位到下一个数据块(即前面步骤中读入的两个数据块的后一个),把连续两个数据块都写成需要写入的长度+数据。每次读数据的方法按以下步骤(1)地址指针定位到备份数据区初始地址,到(2);(2)依次读两个数据块的数据,如果两个数据块的序号不符合规则(按递减、递增或其它数字转盘规则),则到(3),否则到(4);(3)地址指针定位到下一个数据块,到(2);(4)读出两个数据块中任一数据块的长度字段,再根据长度字段即可读出所需数据。所述方法可以扩展为通过不止增加一个数据块做备份,可以增加到多个如M,每次写数据只覆盖上次写的M个数据块的最后一个,这样对于提高寿命为原来的N+1/M倍,则备份数据块应为M*N+1。
6.根据权利要求1至5中任一所述的提高存储器使用寿命的方法,所述每个数据块的结构可以为数据+校验,通过重新计算校验值并进行核对可以判断某数据块所在存储单元的有效性,如果本数据块无效则标记为坏,从而写下一数据块然后再校验,直至写并校验正确为止。
7.根据权利要求1至5中任一所述的提高存储器使用寿命的方法,在提高寿命的同时还提供安全保护,数据不以明文形式写入,而是以密文方式安全存储,安全存储使用特定密钥、随机数、数字序列、加密算法、摘要算法、缺陷算法(运算结果不是完全正确,存在有规律缺陷)、唯一ID号、时间信息、过程信息的一种或多种进行组合来实现。
8.一种长寿命智能卡,使用如权利要求1至5中任一所述的提高存储器使用寿命的方法,使得智能卡的寿命可以提高几倍到几万倍,以至于智能卡本身的寿命不因存储器的可擦写寿命而受到影响。所述长寿命智能卡通过软件和/或硬件的方法实现存储器管理或提供特定的高寿命存储单元,从而实现长寿命使用。
9.一种长寿命数字电位器,使用如权利要求1至5中任一所述的提高存储器使用寿命的方法,使得数字电位器的寿命可以提高几倍到几万倍,以至于数字电位器本身的寿命不因存储器的可擦写寿命而受到影响。所述长寿命数字电位器通过软件和/或硬件的方法实现存储器管理或提供特定的高寿命存储单元,从而实现长寿命使用。
10.一种使用存储器的长寿命电子设备,使用如权利要求1至5中任一所述的提高存储器使用寿命的方法,使得电子设备的寿命不因存储器的可擦写寿命而受到影响。所述长寿命电子设备通过软件和/或硬件的方法实现存储器管理或提供特定的高寿命存储单元,从而实现长寿命使用。
全文摘要
本发明公开了一种提高存储器使用寿命的方法,由原始数据块,备份数据区和备份数据规则组成。通过每次写非同一块数据区或多块备份数据区来提高整体存储器的可擦写次数与可靠性。每次写非同一块数据区降低了反复写某区域的频率。每次写多块备份数据区降低了某数据区损坏对数据有效性的影响。所述提高半导体存储器使用寿命的方法特别适于对错误计数器、防掉电数据区、定长数据区或变长数据区的寿命延长,主要用于存储器和带存储器的设备的寿命延长如FLASH和智能卡。所述每个数据块的结构可以为数据+校验,通过重新计算校验值并进行核对可以判断某数据块所在存储单元的有效性。所述的提高存储器使用寿命的方法,在提高寿命的同时还提供安全保护。本发明还公开了一种长寿命智能卡,一种长寿命数字电位器和一种长寿命电子设备。
文档编号G11C8/00GK101051522SQ20061006698
公开日2007年10月10日 申请日期2006年4月4日 优先权日2006年4月4日
发明者陈新 申请人:北京锐科天智科技有限责任公司, 许丰
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1