專利名稱:存儲器使用壽命提高方法及硬件裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種新型的通過改變存儲器操作方法的手段提高半導(dǎo)體存儲器的使用壽命以及長壽命的含存儲器的硬件裝置。尤其涉及半導(dǎo)體存儲器壽命的提高和長壽命半導(dǎo)體存儲器。
背景技術(shù):
普通的存儲器或含存儲器的電子設(shè)備的使用壽命主要取決于存儲器的可擦寫壽命,當某個存儲單元因為反復(fù)擦寫造成損壞,不能使用時,存儲器和電子設(shè)備的正常工作就受到影響,所以在存儲器空間足夠的前提下,可利用冗余空間來緩解某些存儲單元的操作次數(shù)。如果能提高存儲器最常使用單元的壽命,相當于存儲器的壽命和使用存儲器的電子設(shè)備的壽命得到了提高。在智能卡中的錯誤計數(shù)器、電子設(shè)備中的數(shù)字電位器上,使用壽命的提高顯得尤為重要。
發(fā)明內(nèi)容
本發(fā)明克服普通存儲器直接讀寫,頻繁使用的單元容易到達使用壽命的缺點,提供了一種提高存儲器使用壽命的方法,由原始數(shù)據(jù)塊,備份數(shù)據(jù)區(qū)和備份數(shù)據(jù)規(guī)則組成。通過每次寫非同一塊數(shù)據(jù)區(qū)或多塊備份數(shù)據(jù)區(qū)來提高整體存儲器的可擦寫次數(shù)與可靠性。每次寫非同一塊數(shù)據(jù)區(qū)降低了反復(fù)寫某區(qū)域的頻率。每次寫多塊備份數(shù)據(jù)區(qū)降低了某數(shù)據(jù)區(qū)損壞對數(shù)據(jù)有效性的影響。所述提高存儲器使用壽命的方法特別適于對半導(dǎo)體存儲器上錯誤計數(shù)器、防掉電數(shù)據(jù)區(qū)、定長數(shù)據(jù)區(qū)或變長數(shù)據(jù)區(qū)的壽命延長,主要用于存儲器和帶存儲器的設(shè)備的壽命延長(如FLASH、EEPROM、其它半導(dǎo)體存儲器、數(shù)字電位器和智能卡)。
當需要提高壽命的存儲單元是單字節(jié)或定長數(shù)據(jù)時所述提高存儲器使用壽命的方法,當原始數(shù)據(jù)塊為單字節(jié)或定長多字節(jié)時,設(shè)單字節(jié)壽命延長倍數(shù)字段N(2≤N≤255)或多字節(jié)壽命延長倍數(shù)字段(壽命延長倍數(shù)介于2和多字節(jié)最大值組成的閉區(qū)間內(nèi)),則備份數(shù)據(jù)區(qū)應(yīng)設(shè)定為N個數(shù)據(jù)塊,每個數(shù)據(jù)塊長度為壽命延長倍數(shù)字段的長度+原始數(shù)據(jù)塊長度,即每個數(shù)據(jù)塊格式為序號+數(shù)據(jù)。初次使用要對備份數(shù)據(jù)區(qū)進行初始化(字節(jié)全寫00H或FFH)。
每次寫數(shù)據(jù)的方法按以下步驟(1)地址指針定位到備份數(shù)據(jù)區(qū)初始地址,到(2);(2)依次讀兩個數(shù)據(jù)塊的數(shù)據(jù),如果兩個數(shù)據(jù)塊的序號不符合規(guī)則(按遞減、遞增或其它數(shù)字轉(zhuǎn)盤規(guī)則),則到(3),否則到(4);(3)地址指針定位到下一個數(shù)據(jù)塊,到(2);(4)把兩個數(shù)據(jù)塊中后面一個數(shù)據(jù)塊的序號改寫成符合規(guī)則的序號(如遞增規(guī)則,單字節(jié)序號前一個數(shù)據(jù)塊序號為00H,后一個數(shù)據(jù)塊序號就應(yīng)為01H;如前一個數(shù)據(jù)塊序號達到最大FFH,則后一個數(shù)據(jù)塊序號就應(yīng)為起始值00H;數(shù)據(jù)塊為循環(huán)鏈表,備份數(shù)據(jù)區(qū)最后一個數(shù)據(jù)塊的后一個數(shù)據(jù)塊為第一個數(shù)據(jù)塊),并把數(shù)據(jù)寫入序號后面的字節(jié)。
每次讀數(shù)據(jù)的方法按以下步驟(1)地址指針定位到備份數(shù)據(jù)區(qū)初始地址,到(2);(2)依次讀兩個數(shù)據(jù)塊的數(shù)據(jù),如果兩個數(shù)據(jù)塊的序號不符合規(guī)則(按遞減、遞增或其它數(shù)字轉(zhuǎn)盤規(guī)則),則到(3),否則到(4);(3)地址指針定位到下一個數(shù)據(jù)塊,到(2);(4)把兩個數(shù)據(jù)塊中前面一個數(shù)據(jù)塊的序號后面的數(shù)據(jù)讀出即所需數(shù)據(jù)。
當需要提高壽命的存儲單元是變長數(shù)據(jù)或兼容變長數(shù)據(jù)與定長數(shù)據(jù)時所述提高存儲器使用壽命的方法,當應(yīng)用是定長或變長數(shù)據(jù)時,設(shè)單字節(jié)壽命延長倍數(shù)字段N(2≤N≤255)或多字節(jié)壽命延長倍數(shù)字段(壽命延長倍數(shù)介于2和多字節(jié)最大值組成的閉區(qū)間內(nèi)),則備份數(shù)據(jù)區(qū)應(yīng)設(shè)定為N個數(shù)據(jù)塊,每個數(shù)據(jù)塊長度為壽命延長倍數(shù)字段的長度+最大數(shù)據(jù)長度字段的長度+數(shù)據(jù)區(qū),即每個數(shù)據(jù)塊格式為序號+長度+數(shù)據(jù)。初次使用要對備份數(shù)據(jù)區(qū)進行初始化(字節(jié)全寫00H或FFH)。
每次寫數(shù)據(jù)的方法按以下步驟(1)地址指針定位到備份數(shù)據(jù)區(qū)初始地址,到(2);(2)依次讀兩個數(shù)據(jù)塊的數(shù)據(jù),如果兩個數(shù)據(jù)塊的序號不符合規(guī)則(按遞減、遞增或其它數(shù)字轉(zhuǎn)盤規(guī)則),則到(3),否則到(4);(3)地址指針定位到下一個數(shù)據(jù)塊,到(2);(4)把兩個數(shù)據(jù)塊中后面一個數(shù)據(jù)塊的序號改寫成符合規(guī)則的序號(如遞增規(guī)則,單字節(jié)序號前一個數(shù)據(jù)塊序號為00H,后一個數(shù)據(jù)塊序號就應(yīng)為01H;如前一個數(shù)據(jù)塊序號達到最大FFH,則后一個數(shù)據(jù)塊序號就應(yīng)為起始值00H;數(shù)據(jù)塊為循環(huán)鏈表,備份數(shù)據(jù)區(qū)最后一個數(shù)據(jù)塊的后一個數(shù)據(jù)塊為第一個數(shù)據(jù)塊),并把數(shù)據(jù)長度及數(shù)據(jù)寫入序號后面的字節(jié)。
每次讀數(shù)據(jù)的方法按以下步驟(1)地址指針定位到備份數(shù)據(jù)區(qū)初始地址,到(2);(2)依次讀兩個數(shù)據(jù)塊的數(shù)據(jù),如果兩個數(shù)據(jù)塊的序號不符合規(guī)則(按遞減、遞增或其它數(shù)字轉(zhuǎn)盤規(guī)則),則到(3),否則到(4);(3)地址指針定位到下一個數(shù)據(jù)塊,到(2);(4)讀出兩個數(shù)據(jù)塊中前面一個數(shù)據(jù)塊的序號后面的數(shù)據(jù)字段即數(shù)據(jù)長度,根據(jù)數(shù)據(jù)長度讀出后面字節(jié)中的數(shù)據(jù)。
需要提高壽命的存儲單元是單字節(jié)或定長數(shù)據(jù)時,另外一種不需要序號,通過增加備份區(qū)提高壽命的方法所述提高存儲器使用壽命的方法,當應(yīng)用是定長數(shù)據(jù)時,設(shè)單字節(jié)壽命延長倍數(shù)字段N(2≤N≤255)或多字節(jié)壽命延長倍數(shù)字段(壽命延長倍數(shù)介于2和多字節(jié)最大值組成的閉區(qū)間內(nèi)),則備份數(shù)據(jù)區(qū)應(yīng)設(shè)定為2N+1個數(shù)據(jù)塊,每個數(shù)據(jù)塊長度為1個原始數(shù)據(jù)塊長度,即每個數(shù)據(jù)塊格式只包含一組數(shù)據(jù)。初次使用要對備份數(shù)據(jù)區(qū)進行初始化(字節(jié)全寫00H或FFH),實際延長壽命為原來的N+1/2倍。
每次寫數(shù)據(jù)的方法按以下步驟(1)地址指針定位到備份數(shù)據(jù)區(qū)初始地址,到(2);(2)依次讀入兩個數(shù)據(jù)塊,如果兩個數(shù)據(jù)塊的值不符合規(guī)則(按相等、互補或其它運算規(guī)則),則到(3),否則到(4);(3)地址指針定位到下一個數(shù)據(jù)塊,到(2);(4)地址指針定位到下一個數(shù)據(jù)塊(即前面步驟中讀入的兩個數(shù)據(jù)塊的后一個),把連續(xù)兩個數(shù)據(jù)塊都寫成需要寫入的數(shù)據(jù)。
每次讀數(shù)據(jù)的方法按以下步驟(1)地址指針定位到備份數(shù)據(jù)區(qū)初始地址,到(2);(2)依次讀兩個數(shù)據(jù)塊的數(shù)據(jù),如果兩個數(shù)據(jù)塊的序號不符合規(guī)則(按遞減、遞增或其它數(shù)字轉(zhuǎn)盤規(guī)則),則到(3),否則到(4);(3)地址指針定位到下一個數(shù)據(jù)塊,到(2);(4)讀出兩個數(shù)據(jù)塊中任一數(shù)據(jù)塊的數(shù)據(jù)即所需讀出數(shù)據(jù)。
需要提高壽命的存儲單元是變長數(shù)據(jù)或兼容變長數(shù)據(jù)和定長數(shù)據(jù)時,通過增加備份區(qū)提高壽命的方法所述提高存儲器使用壽命的方法,當應(yīng)用是變長數(shù)據(jù)或定長數(shù)據(jù)時,設(shè)單字節(jié)壽命延長倍數(shù)字段N(2≤N≤255)或多字節(jié)壽命延長倍數(shù)字段(壽命延長倍數(shù)介于2和多字節(jié)最大值組成的閉區(qū)間內(nèi)),則備份數(shù)據(jù)區(qū)應(yīng)設(shè)定為2N+1個數(shù)據(jù)塊,每個數(shù)據(jù)塊長度為最大數(shù)據(jù)長度字段的長度+原始數(shù)據(jù)塊長度,即每個數(shù)據(jù)塊格式為長度+數(shù)據(jù)。初次使用要對備份數(shù)據(jù)區(qū)進行初始化(字節(jié)全寫00H或FFH)。
每次寫數(shù)據(jù)的方法按以下步驟(1)地址指針定位到備份數(shù)據(jù)區(qū)初始地址,到(2);
(2)依次讀入兩個數(shù)據(jù)塊,如果兩個數(shù)據(jù)塊的值不符合規(guī)則(按相等、互補或其它運算規(guī)則),則到(3),否則到(4);(3)地址指針定位到下一個數(shù)據(jù)塊,到(2);(4)地址指針定位到下一個數(shù)據(jù)塊(即前面步驟中讀入的兩個數(shù)據(jù)塊的后一個),把連續(xù)兩個數(shù)據(jù)塊都寫成需要寫入的長度+數(shù)據(jù)。
每次讀數(shù)據(jù)的方法按以下步驟(1)地址指針定位到備份數(shù)據(jù)區(qū)初始地址,到(2);(2)依次讀兩個數(shù)據(jù)塊的數(shù)據(jù),如果兩個數(shù)據(jù)塊的序號不符合規(guī)則(按遞減、遞增或其它數(shù)字轉(zhuǎn)盤規(guī)則),則到(3),否則到(4);(3)地址指針定位到下一個數(shù)據(jù)塊,到(2);(4)讀出兩個數(shù)據(jù)塊中任一數(shù)據(jù)塊的長度字段,再根據(jù)長度字段即可讀出所需數(shù)據(jù)。
這種方法可以擴展為通過不止增加一個數(shù)據(jù)塊做備份,可以增加到多個如M,每次寫數(shù)據(jù)只覆蓋上次寫的M個數(shù)據(jù)塊的最后一個,這樣對于提高壽命為原來的N+1/M倍,則備份數(shù)據(jù)塊應(yīng)為M*N+1。
為了在提高存儲器壽命的同時,能夠校驗存儲單元的有效性,增加了數(shù)據(jù)校驗方法所述提高存儲器使用壽命的方法,所述每個數(shù)據(jù)塊的結(jié)構(gòu)可以為數(shù)據(jù)+校驗,通過重新計算校驗值并進行核對可以判斷某數(shù)據(jù)塊所在存儲單元的有效性,如果本數(shù)據(jù)塊無效則標記為壞,從而寫下一數(shù)據(jù)塊然后再校驗,直至寫并校驗正確為止。
為了在提高存儲器壽命的同時,還能夠保護數(shù)據(jù),增加了數(shù)據(jù)加密方法所述提高存儲器使用壽命的方法,在提高壽命的同時還提供安全保護,數(shù)據(jù)不以明文形式寫入,而是以密文方式安全存儲,安全存儲使用特定密鑰、隨機數(shù)、數(shù)字序列、加密算法、摘要算法、缺陷算法(運算結(jié)果不是完全正確,存在有規(guī)律缺陷)、唯一ID號、時間信息、過程信息的一種或多種進行組合來實現(xiàn)。
具體實施例方式
實施例1(長壽命智能卡)本發(fā)明所述的長壽命智能卡,使用所述的提高存儲器使用壽命的方法,使得智能卡的壽命可以提高幾倍到幾萬倍,以至于智能卡本身的壽命不因存儲器的可擦寫壽命而受到影響。例如智能卡中的錯誤計數(shù)器存儲單元,電子錢包存儲單元,循環(huán)記錄文件的當前記錄號單元和防掉電備份數(shù)據(jù)單元等都是頻繁使用的單元,經(jīng)常由于這些單元的使用壽命影響整體的使用壽命。本發(fā)明通過軟件和/或硬件的方法實現(xiàn)存儲器管理或提供特定的高壽命存儲單元,從而提供一種長壽命智能卡,可以應(yīng)用在需要長時間使用的安全項目上。
實施例2(長壽命數(shù)字電位器)本發(fā)明所述的長壽命數(shù)字電位器,使用所述的提高存儲器使用壽命的方法,使得數(shù)字電位器的壽命可以提高幾倍到幾萬倍,以至于數(shù)字電位器本身的壽命不因存儲器的可擦寫壽命而受到影響。一般的電視機、音響和電子設(shè)備中大量使用存儲器和數(shù)字電位器來保存當前設(shè)置,本發(fā)明通過軟件和/或硬件的方法實現(xiàn)存儲器管理或提供特定的高壽命存儲單元,使得可以提供一種長壽命數(shù)字電位器用于電子設(shè)備,以提高整體使用壽命。
實施例3(長壽命電子設(shè)備)本發(fā)明所述的使用存儲器的長壽命電子設(shè)備,使用所述的提高存儲器使用壽命的方法,使得電子設(shè)備的壽命不因存儲器的可擦寫壽命而受到影響。本發(fā)明通過軟件和/或硬件的方法實現(xiàn)存儲器管理或提供特定的高壽命存儲單元,使得可以提供一種長壽命電子設(shè)備,以提高整體使用壽命。
權(quán)利要求
1.一種提高存儲器使用壽命的方法,由原始數(shù)據(jù)塊,備份數(shù)據(jù)區(qū)和備份數(shù)據(jù)規(guī)則組成。通過每次寫非同一塊數(shù)據(jù)區(qū)或多塊備份數(shù)據(jù)區(qū)來提高整體存儲器的可擦寫次數(shù)與可靠性。每次寫非同一塊數(shù)據(jù)區(qū)降低了反復(fù)寫某區(qū)域的頻率。每次寫多塊備份數(shù)據(jù)區(qū)降低了某數(shù)據(jù)區(qū)損壞對數(shù)據(jù)有效性的影響。所述提高半導(dǎo)體存儲器使用壽命的方法特別適于對錯誤計數(shù)器、防掉電數(shù)據(jù)區(qū)、定長數(shù)據(jù)區(qū)或變長數(shù)據(jù)區(qū)的壽命延長,主要用于存儲器和帶存儲器的設(shè)備的壽命延長(如FLASH、EEPROM、其它半導(dǎo)體存儲器、數(shù)字電位器和智能卡)。
2.根據(jù)權(quán)利要求1中所述的提高存儲器使用壽命的方法,當原始數(shù)據(jù)塊為單字節(jié)或定長多字節(jié)時,設(shè)單字節(jié)壽命延長倍數(shù)字段N(2≤N≤255)或多字節(jié)壽命延長倍數(shù)字段(壽命延長倍數(shù)介于2和多字節(jié)最大值組成的閉區(qū)間內(nèi)),則備份數(shù)據(jù)區(qū)應(yīng)設(shè)定為N個數(shù)據(jù)塊,每個數(shù)據(jù)塊長度為壽命延長倍數(shù)字段的長度+原始數(shù)據(jù)塊長度,即每個數(shù)據(jù)塊格式為序號+數(shù)據(jù)。初次使用要對備份數(shù)據(jù)區(qū)進行初始化(字節(jié)全寫00H或FFH)。每次寫數(shù)據(jù)的方法按以下步驟(1)地址指針定位到備份數(shù)據(jù)區(qū)初始地址,到(2);(2)依次讀兩個數(shù)據(jù)塊的數(shù)據(jù),如果兩個數(shù)據(jù)塊的序號不符合規(guī)則(按遞減、遞增或其它數(shù)字轉(zhuǎn)盤規(guī)則),則到(3),否則到(4);(3)地址指針定位到下一個數(shù)據(jù)塊,到(2);(4)把兩個數(shù)據(jù)塊中后面一個數(shù)據(jù)塊的序號改寫成符合規(guī)則的序號(如遞增規(guī)則,單字節(jié)序號前一個數(shù)據(jù)塊序號為00H,后一個數(shù)據(jù)塊序號就應(yīng)為01H;如前一個數(shù)據(jù)塊序號達到最大FFH,則后一個數(shù)據(jù)塊序號就應(yīng)為起始值00H;數(shù)據(jù)塊為循環(huán)鏈表,備份數(shù)據(jù)區(qū)最后一個數(shù)據(jù)塊的后一個數(shù)據(jù)塊為第一個數(shù)據(jù)塊),并把數(shù)據(jù)寫入序號后面的字節(jié)。每次讀數(shù)據(jù)的方法按以下步驟(1)地址指針定位到備份數(shù)據(jù)區(qū)初始地址,到(2);(2)依次讀兩個數(shù)據(jù)塊的數(shù)據(jù),如果兩個數(shù)據(jù)塊的序號不符合規(guī)則(按遞減、遞增或其它數(shù)字轉(zhuǎn)盤規(guī)則),則到(3),否則到(4);(3)地址指針定位到下一個數(shù)據(jù)塊,到(2);(4)把兩個數(shù)據(jù)塊中前面一個數(shù)據(jù)塊的序號后面的數(shù)據(jù)讀出即所需數(shù)據(jù)。
3.根據(jù)權(quán)利要求2中所述的提高存儲器使用壽命的方法,當應(yīng)用是變長數(shù)據(jù)或變長與定長兼容數(shù)據(jù)時,設(shè)單字節(jié)壽命延長倍數(shù)字段N(2≤N≤255)或多字節(jié)壽命延長倍數(shù)字段(壽命延長倍數(shù)介于2和多字節(jié)最大值組成的閉區(qū)間內(nèi)),則備份數(shù)據(jù)區(qū)應(yīng)設(shè)定為N個數(shù)據(jù)塊,每個數(shù)據(jù)塊長度為壽命延長倍數(shù)字段的長度+最大數(shù)據(jù)長度字段的長度+數(shù)據(jù)區(qū),即每個數(shù)據(jù)塊格式為序號+長度+數(shù)據(jù)。初次使用要對備份數(shù)據(jù)區(qū)進行初始化(字節(jié)全寫00H或FFH)。每次寫數(shù)據(jù)的方法按以下步驟(1)地址指針定位到備份數(shù)據(jù)區(qū)初始地址,到(2);(2)依次讀兩個數(shù)據(jù)塊的數(shù)據(jù),如果兩個數(shù)據(jù)塊的序號不符合規(guī)則(按遞減、遞增或其它數(shù)字轉(zhuǎn)盤規(guī)則),則到(3),否則到(4);(3)地址指針定位到下一個數(shù)據(jù)塊,到(2);(4)把兩個數(shù)據(jù)塊中后面一個數(shù)據(jù)塊的序號改寫成符合規(guī)則的序號(如遞增規(guī)則,單字節(jié)序號前一個數(shù)據(jù)塊序號為00H,后一個數(shù)據(jù)塊序號就應(yīng)為01H;如前一個數(shù)據(jù)塊序號達到最大FFH,則后一個數(shù)據(jù)塊序號就應(yīng)為起始值00H;數(shù)據(jù)塊為循環(huán)鏈表,備份數(shù)據(jù)區(qū)最后一個數(shù)據(jù)塊的后一個數(shù)據(jù)塊為第一個數(shù)據(jù)塊),并把數(shù)據(jù)長度及數(shù)據(jù)寫入序號后面的字節(jié)。每次讀數(shù)據(jù)的方法按以下步驟(1)地址指針定位到備份數(shù)據(jù)區(qū)初始地址,到(2);(2)依次讀兩個數(shù)據(jù)塊的數(shù)據(jù),如果兩個數(shù)據(jù)塊的序號不符合規(guī)則(按遞減、遞增或其它數(shù)字轉(zhuǎn)盤規(guī)則),則到(3),否則到(4);(3)地址指針定位到下一個數(shù)據(jù)塊,到(2);(4)讀出兩個數(shù)據(jù)塊中前面一個數(shù)據(jù)塊的序號后面的數(shù)據(jù)字段即數(shù)據(jù)長度,根據(jù)數(shù)據(jù)長度讀出后面字節(jié)中的數(shù)據(jù)。
4.根據(jù)權(quán)利要求1中所述的提高存儲器使用壽命的方法,當應(yīng)用是定長數(shù)據(jù)時,設(shè)單字節(jié)壽命延長倍數(shù)字段N(2≤N≤255)或多字節(jié)壽命延長倍數(shù)字段(壽命延長倍數(shù)介于2和多字節(jié)最大值組成的閉區(qū)間內(nèi)),則備份數(shù)據(jù)區(qū)應(yīng)設(shè)定為2N+1個數(shù)據(jù)塊,每個數(shù)據(jù)塊長度為1個原始數(shù)據(jù)塊長度,即每個數(shù)據(jù)塊格式只包含一組數(shù)據(jù)。初次使用要對備份數(shù)據(jù)區(qū)進行初始化(字節(jié)全寫00H或FFH)。每次寫數(shù)據(jù)的方法按以下步驟(1)地址指針定位到備份數(shù)據(jù)區(qū)初始地址,到(2);(2)依次讀入兩個數(shù)據(jù)塊,如果兩個數(shù)據(jù)塊的值不符合規(guī)則(按相等、互補或其它運算規(guī)則),則到(3),否則到(4);(3)地址指針定位到下一個數(shù)據(jù)塊,到(2);(4)地址指針定位到下一個數(shù)據(jù)塊(即前面步驟中讀入的兩個數(shù)據(jù)塊的后一個),把連續(xù)兩個數(shù)據(jù)塊都寫成需要寫入的數(shù)據(jù)。每次讀數(shù)據(jù)的方法按以下步驟(1)地址指針定位到備份數(shù)據(jù)區(qū)初始地址,到(2);(2)依次讀兩個數(shù)據(jù)塊的數(shù)據(jù),如果兩個數(shù)據(jù)塊的序號不符合規(guī)則(按遞減、遞增或其它數(shù)字轉(zhuǎn)盤規(guī)則),則到(3),否則到(4);(3)地址指針定位到下一個數(shù)據(jù)塊,到(2);(4)讀出兩個數(shù)據(jù)塊中任一數(shù)據(jù)塊的數(shù)據(jù)即所需讀出數(shù)據(jù)。所述方法可以擴展為通過不止增加一個數(shù)據(jù)塊做備份,可以增加到多個如M,每次寫數(shù)據(jù)只覆蓋上次寫的M個數(shù)據(jù)塊的最后一個,這樣對于提高壽命為原來的N+1/M倍,則備份數(shù)據(jù)塊應(yīng)為M*N+1。
5.根據(jù)權(quán)利要求4中所述的提高存儲器使用壽命的方法,當應(yīng)用是變長數(shù)據(jù)或定長與變長數(shù)據(jù)兼容時,設(shè)單字節(jié)壽命延長倍數(shù)字段N(2≤N≤255)或多字節(jié)壽命延長倍數(shù)字段(壽命延長倍數(shù)介于2和多字節(jié)最大值組成的閉區(qū)間內(nèi)),則備份數(shù)據(jù)區(qū)應(yīng)設(shè)定為2N+1個數(shù)據(jù)塊,每個數(shù)據(jù)塊長度為最大數(shù)據(jù)長度字段的長度+原始數(shù)據(jù)塊長度,即每個數(shù)據(jù)塊格式為長度+數(shù)據(jù)。初次使用要對備份數(shù)據(jù)區(qū)進行初始化(字節(jié)全寫00H或FFH)。每次寫數(shù)據(jù)的方法按以下步驟(1)地址指針定位到備份數(shù)據(jù)區(qū)初始地址,到(2);(2)依次讀入兩個數(shù)據(jù)塊,如果兩個數(shù)據(jù)塊的值不符合規(guī)則(按相等、互補或其它運算規(guī)則),則到(3),否則到(4);(3)地址指針定位到下一個數(shù)據(jù)塊,到(2);(4)地址指針定位到下一個數(shù)據(jù)塊(即前面步驟中讀入的兩個數(shù)據(jù)塊的后一個),把連續(xù)兩個數(shù)據(jù)塊都寫成需要寫入的長度+數(shù)據(jù)。每次讀數(shù)據(jù)的方法按以下步驟(1)地址指針定位到備份數(shù)據(jù)區(qū)初始地址,到(2);(2)依次讀兩個數(shù)據(jù)塊的數(shù)據(jù),如果兩個數(shù)據(jù)塊的序號不符合規(guī)則(按遞減、遞增或其它數(shù)字轉(zhuǎn)盤規(guī)則),則到(3),否則到(4);(3)地址指針定位到下一個數(shù)據(jù)塊,到(2);(4)讀出兩個數(shù)據(jù)塊中任一數(shù)據(jù)塊的長度字段,再根據(jù)長度字段即可讀出所需數(shù)據(jù)。所述方法可以擴展為通過不止增加一個數(shù)據(jù)塊做備份,可以增加到多個如M,每次寫數(shù)據(jù)只覆蓋上次寫的M個數(shù)據(jù)塊的最后一個,這樣對于提高壽命為原來的N+1/M倍,則備份數(shù)據(jù)塊應(yīng)為M*N+1。
6.根據(jù)權(quán)利要求1至5中任一所述的提高存儲器使用壽命的方法,所述每個數(shù)據(jù)塊的結(jié)構(gòu)可以為數(shù)據(jù)+校驗,通過重新計算校驗值并進行核對可以判斷某數(shù)據(jù)塊所在存儲單元的有效性,如果本數(shù)據(jù)塊無效則標記為壞,從而寫下一數(shù)據(jù)塊然后再校驗,直至寫并校驗正確為止。
7.根據(jù)權(quán)利要求1至5中任一所述的提高存儲器使用壽命的方法,在提高壽命的同時還提供安全保護,數(shù)據(jù)不以明文形式寫入,而是以密文方式安全存儲,安全存儲使用特定密鑰、隨機數(shù)、數(shù)字序列、加密算法、摘要算法、缺陷算法(運算結(jié)果不是完全正確,存在有規(guī)律缺陷)、唯一ID號、時間信息、過程信息的一種或多種進行組合來實現(xiàn)。
8.一種長壽命智能卡,使用如權(quán)利要求1至5中任一所述的提高存儲器使用壽命的方法,使得智能卡的壽命可以提高幾倍到幾萬倍,以至于智能卡本身的壽命不因存儲器的可擦寫壽命而受到影響。所述長壽命智能卡通過軟件和/或硬件的方法實現(xiàn)存儲器管理或提供特定的高壽命存儲單元,從而實現(xiàn)長壽命使用。
9.一種長壽命數(shù)字電位器,使用如權(quán)利要求1至5中任一所述的提高存儲器使用壽命的方法,使得數(shù)字電位器的壽命可以提高幾倍到幾萬倍,以至于數(shù)字電位器本身的壽命不因存儲器的可擦寫壽命而受到影響。所述長壽命數(shù)字電位器通過軟件和/或硬件的方法實現(xiàn)存儲器管理或提供特定的高壽命存儲單元,從而實現(xiàn)長壽命使用。
10.一種使用存儲器的長壽命電子設(shè)備,使用如權(quán)利要求1至5中任一所述的提高存儲器使用壽命的方法,使得電子設(shè)備的壽命不因存儲器的可擦寫壽命而受到影響。所述長壽命電子設(shè)備通過軟件和/或硬件的方法實現(xiàn)存儲器管理或提供特定的高壽命存儲單元,從而實現(xiàn)長壽命使用。
全文摘要
本發(fā)明公開了一種提高存儲器使用壽命的方法,由原始數(shù)據(jù)塊,備份數(shù)據(jù)區(qū)和備份數(shù)據(jù)規(guī)則組成。通過每次寫非同一塊數(shù)據(jù)區(qū)或多塊備份數(shù)據(jù)區(qū)來提高整體存儲器的可擦寫次數(shù)與可靠性。每次寫非同一塊數(shù)據(jù)區(qū)降低了反復(fù)寫某區(qū)域的頻率。每次寫多塊備份數(shù)據(jù)區(qū)降低了某數(shù)據(jù)區(qū)損壞對數(shù)據(jù)有效性的影響。所述提高半導(dǎo)體存儲器使用壽命的方法特別適于對錯誤計數(shù)器、防掉電數(shù)據(jù)區(qū)、定長數(shù)據(jù)區(qū)或變長數(shù)據(jù)區(qū)的壽命延長,主要用于存儲器和帶存儲器的設(shè)備的壽命延長如FLASH和智能卡。所述每個數(shù)據(jù)塊的結(jié)構(gòu)可以為數(shù)據(jù)+校驗,通過重新計算校驗值并進行核對可以判斷某數(shù)據(jù)塊所在存儲單元的有效性。所述的提高存儲器使用壽命的方法,在提高壽命的同時還提供安全保護。本發(fā)明還公開了一種長壽命智能卡,一種長壽命數(shù)字電位器和一種長壽命電子設(shè)備。
文檔編號G11C8/00GK101051522SQ20061006698
公開日2007年10月10日 申請日期2006年4月4日 優(yōu)先權(quán)日2006年4月4日
發(fā)明者陳新 申請人:北京銳科天智科技有限責任公司, 許豐