專(zhuān)利名稱(chēng)::用于非易失存儲(chǔ)系統(tǒng)的電源管理數(shù)據(jù)塊的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明主要涉及海量數(shù)字?jǐn)?shù)據(jù)存儲(chǔ)系統(tǒng)。更特別地,本發(fā)明涉及能夠有效地作出有關(guān)一個(gè)正在開(kāi)啟電源的存儲(chǔ)系統(tǒng)先前是正常地或異常地關(guān)閉電源的判斷的系統(tǒng)和方法。
背景技術(shù):
:非易失存儲(chǔ)系統(tǒng)諸如閃存存儲(chǔ)系統(tǒng)(flashmemorystoragesystem)的使用正在增加,因?yàn)檫@樣的存儲(chǔ)系統(tǒng)空間物理尺寸小以及非易失存儲(chǔ)器可反復(fù)重編寫(xiě)的能力。閃存存儲(chǔ)系統(tǒng)空間物理尺寸小使得在正變得日益流行的設(shè)備中使用這樣的存儲(chǔ)系統(tǒng)變得方便。使用閃存存儲(chǔ)系統(tǒng)的設(shè)備包括,但不限于此,數(shù)字照相機(jī)、數(shù)字?jǐn)z象機(jī)、數(shù)字音樂(lè)播放器、手持個(gè)人計(jì)算機(jī)和全球定位設(shè)備。反復(fù)重編寫(xiě)非易失存儲(chǔ)器的能力包括在閃存存儲(chǔ)系統(tǒng)中能夠使用和重復(fù)使用閃存存儲(chǔ)系統(tǒng)。一般而言,閃存存儲(chǔ)系統(tǒng)可包括閃存卡(flashmemorycard)和閃存芯片組(flashmemorychipset)。閃存芯片組主要包括閃存存儲(chǔ)器組件和控制器組件。一般地,可安排閃存芯片組被裝配在一個(gè)嵌入系統(tǒng)中。這樣的組合或宿主系統(tǒng)(hostsystem)的廠商一般獲得與其它組件一樣的組件形式的閃存存儲(chǔ)器,然后將閃存存儲(chǔ)器和其它組件裝配到一個(gè)宿主系統(tǒng)。當(dāng)一個(gè)存儲(chǔ)系統(tǒng)被關(guān)閉電源時(shí),關(guān)閉電源發(fā)生可能或者因?yàn)橛脩粢呀?jīng)關(guān)閉存儲(chǔ)系統(tǒng),或者因?yàn)榇鎯?chǔ)系統(tǒng)已經(jīng)有了一次掉電。如果用戶選擇關(guān)閉存儲(chǔ)系統(tǒng),存儲(chǔ)系統(tǒng)一般實(shí)質(zhì)性地完成所有當(dāng)前過(guò)程,例如,存儲(chǔ)系統(tǒng)完成從宿主系統(tǒng)將一個(gè)文件寫(xiě)入與這個(gè)存儲(chǔ)系統(tǒng)關(guān)聯(lián)的一個(gè)目錄中的過(guò)程。如果因?yàn)橐馔饣蛲蝗坏牡綦?,例如由于電源故障,那么沒(méi)有完成當(dāng)前的過(guò)程而一般改換為異常中斷當(dāng)前的過(guò)程。已經(jīng)在“正?!鼻闆r下關(guān)閉電源的存儲(chǔ)系統(tǒng),如例如在響應(yīng)一個(gè)用戶請(qǐng)求時(shí)切斷這個(gè)存儲(chǔ)系統(tǒng)的電源時(shí),一般不要求執(zhí)行磁盤(pán)掃描或數(shù)據(jù)恢復(fù),因?yàn)樵谑盏揭粋€(gè)關(guān)閉電源請(qǐng)求的時(shí)候正在發(fā)生的所有過(guò)程已經(jīng)完成。這一般被稱(chēng)為“正常關(guān)閉”或“正常關(guān)閉電源”。不過(guò),已經(jīng)在“異?!鼻闆r下關(guān)閉電源的存儲(chǔ)系統(tǒng),例如,由于電源故障、電池故障或意外的電源切除,一般要求執(zhí)行磁盤(pán)掃描和數(shù)據(jù)恢復(fù),如本領(lǐng)域的熟練技術(shù)人員將意識(shí)到的那樣。在異常情況下關(guān)閉電源一般被稱(chēng)為“異常關(guān)閉”或“異常關(guān)閉電源”。在一個(gè)常規(guī)的閃存非易失存儲(chǔ)系統(tǒng)中,對(duì)于存儲(chǔ)系統(tǒng)一般不可能確定已經(jīng)發(fā)生的關(guān)閉電源是因?yàn)槔缬脩粝胍P(guān)閉或是因?yàn)殡娫垂收?。因此,一般在每次給存儲(chǔ)系統(tǒng)開(kāi)啟電源時(shí),無(wú)論是否已經(jīng)正?;虍惓jP(guān)閉電源,都應(yīng)用比較耗費(fèi)時(shí)間的恢復(fù)過(guò)程,例如在Windows/DOS環(huán)境中的“scandisk”(磁盤(pán)掃描)過(guò)程。雖然當(dāng)先前在異常情況下關(guān)閉存儲(chǔ)系統(tǒng)時(shí)應(yīng)用磁盤(pán)掃描能夠進(jìn)行數(shù)據(jù)恢復(fù),但是當(dāng)在正常情況下關(guān)閉存儲(chǔ)系統(tǒng)時(shí)應(yīng)用這個(gè)過(guò)程會(huì)沒(méi)有效率,因?yàn)檫@樣的恢復(fù)過(guò)程實(shí)際上是不必要的。因此,想得到的是能夠在存儲(chǔ)系統(tǒng)開(kāi)啟電源時(shí)作出有關(guān)存儲(chǔ)系統(tǒng)先前是正?;虍惓5仃P(guān)閉的判斷的過(guò)程和系統(tǒng)。也就是說(shuō),需要的是允許與異常關(guān)閉的存儲(chǔ)系統(tǒng)關(guān)聯(lián)的數(shù)據(jù)當(dāng)給存儲(chǔ)系統(tǒng)開(kāi)啟電源時(shí)能被恢復(fù),而當(dāng)存儲(chǔ)系統(tǒng)正常關(guān)閉電源時(shí)不使存儲(chǔ)系統(tǒng)經(jīng)受與恢復(fù)數(shù)據(jù)關(guān)聯(lián)的過(guò)程的有效方法。概述本發(fā)明涉及使非易失存儲(chǔ)器的開(kāi)啟電源過(guò)程有效發(fā)生的系統(tǒng)和方法。依照本發(fā)明的一個(gè)方面,利用具有一帶有至少一保留存儲(chǔ)區(qū)域非易失存儲(chǔ)器存儲(chǔ)系統(tǒng)的方法包括給存儲(chǔ)系統(tǒng)提供電源,初始化非易失存儲(chǔ)器,以及將一第一簽名寫(xiě)入保留存儲(chǔ)區(qū)域。第一簽名被安排表示存儲(chǔ)系統(tǒng)被成功地初始化。在一個(gè)實(shí)施例中,這個(gè)方法還包括在存儲(chǔ)系統(tǒng)上執(zhí)行一關(guān)閉電源過(guò)程,以及將一表示關(guān)閉電源過(guò)程已經(jīng)被執(zhí)行的第二簽名寫(xiě)入保留存儲(chǔ)區(qū)域。諸如一被安排為包含初始化和關(guān)閉電源簽名的電源管理數(shù)據(jù)塊這樣的保留存儲(chǔ)區(qū)域使能夠作出有關(guān)先前從非易失存儲(chǔ)系統(tǒng)移去電源是由于請(qǐng)求關(guān)閉電源或由于電源故障的判斷。在當(dāng)非易失存儲(chǔ)系統(tǒng)諸如NAND閃存存儲(chǔ)器開(kāi)啟電源時(shí)訪問(wèn)電源管理數(shù)據(jù)塊時(shí),電源管理數(shù)據(jù)塊的內(nèi)容可被有效地掃描或獲得以確定最近先前關(guān)閉電源是被請(qǐng)求的或由于電源故障。例如,當(dāng)找到一關(guān)閉電源簽名時(shí),一般表示先前關(guān)閉電源是被請(qǐng)求的。因此,存儲(chǔ)器或數(shù)據(jù)恢復(fù)過(guò)程通常是不需要的。可替換地,當(dāng)沒(méi)有找到關(guān)閉電源或關(guān)閉簽名但找到初始化或開(kāi)啟電源簽名時(shí),通常表示先前關(guān)閉電源是由于電源故障。同樣,可運(yùn)行數(shù)據(jù)恢復(fù)過(guò)程。在開(kāi)啟電源運(yùn)行或執(zhí)行費(fèi)時(shí)的數(shù)據(jù)恢復(fù)過(guò)程,實(shí)質(zhì)上只在非易失存儲(chǔ)器需要這樣的過(guò)程時(shí)才進(jìn)行,例如在電源故障先前已經(jīng)發(fā)生過(guò)的時(shí)候,使非易失存儲(chǔ)器能更有效地被使用,如在實(shí)際上沒(méi)有需要數(shù)據(jù)恢復(fù)時(shí)可避免這樣一個(gè)過(guò)程。依照本發(fā)明的另一方面,利用具有一帶有至少一保留存儲(chǔ)區(qū)域非易失存儲(chǔ)器存儲(chǔ)系統(tǒng)的方法包括給存儲(chǔ)系統(tǒng)提供電源,確定存儲(chǔ)系統(tǒng)先前已經(jīng)經(jīng)歷一實(shí)質(zhì)性地正常的關(guān)閉電源過(guò)程的時(shí)間,以及當(dāng)確定存儲(chǔ)系統(tǒng)先前沒(méi)有經(jīng)歷一正常的關(guān)閉電源過(guò)程時(shí),在非易失存儲(chǔ)器上執(zhí)行一第一過(guò)程。第一過(guò)程一般被安排為使用準(zhǔn)備好非易失存儲(chǔ)器。最后,當(dāng)確定存儲(chǔ)系統(tǒng)先前已經(jīng)經(jīng)歷一正常的關(guān)閉電源過(guò)程時(shí),這個(gè)方法包括實(shí)質(zhì)性地使非易失存儲(chǔ)器能被使用。在一個(gè)實(shí)施例中,確定存儲(chǔ)系統(tǒng)先前已經(jīng)經(jīng)歷實(shí)質(zhì)性正常的關(guān)閉電源過(guò)程的時(shí)間包括確定保留存儲(chǔ)區(qū)域包括一表示一正常的關(guān)閉電源過(guò)程先前已經(jīng)發(fā)生過(guò)的第一簽名的時(shí)間。在這樣一個(gè)實(shí)施例中,確定存儲(chǔ)系統(tǒng)先前已經(jīng)經(jīng)歷實(shí)質(zhì)性正常的關(guān)閉電源過(guò)程的時(shí)間還可包括確定保留存儲(chǔ)區(qū)域包括一表示存儲(chǔ)系統(tǒng)先前已經(jīng)經(jīng)歷一初始化過(guò)程的第二簽名的時(shí)間。當(dāng)確定保留存儲(chǔ)區(qū)域不包括第二簽名并且不包括第一簽名時(shí),第一過(guò)程可以是一初始化過(guò)程??商鎿Q地,當(dāng)確定保留存儲(chǔ)區(qū)域包括第二簽名并且不包括第一簽名時(shí),第一過(guò)程可以是一數(shù)據(jù)恢復(fù)過(guò)程。本發(fā)明的這些和其它優(yōu)點(diǎn)在閱讀下面的詳細(xì)說(shuō)明并研究各種附圖的基礎(chǔ)上將變得明顯。本發(fā)明通過(guò)參考結(jié)合下列附圖的后面的說(shuō)明能最好地理解本發(fā)明圖1a是普通的包括非易失存儲(chǔ)器的宿主系統(tǒng)的概略表示。圖1b是存儲(chǔ)設(shè)備例如圖1a的存儲(chǔ)設(shè)備120的概略表示。圖1c是包含嵌入的非易失存儲(chǔ)器的宿主系統(tǒng)的概略表示。圖2是依照本發(fā)明實(shí)施例的非易失存儲(chǔ)器組件的概略表示。圖3a是依照本發(fā)明實(shí)施例包括初始化簽名的電源管理數(shù)據(jù)塊的概略表示。圖3b是依照本發(fā)明實(shí)施例帶有初始化簽名和關(guān)閉電源簽名的電源管理數(shù)據(jù)塊例如圖3a的電源管理數(shù)據(jù)塊304的概略表示。圖4是一過(guò)程流程圖,示出依照本發(fā)明實(shí)施例與初始化使用非易失存儲(chǔ)器組件關(guān)聯(lián)的步驟。圖5是一過(guò)程流程圖,示出依照本發(fā)明實(shí)施例與利用一先前已經(jīng)關(guān)閉電源的存儲(chǔ)器組件的方法關(guān)聯(lián)的步驟。圖6是依照本發(fā)明實(shí)施例的非易失存儲(chǔ)器的宿主系統(tǒng)區(qū)和數(shù)據(jù)區(qū)的概略表示。圖7是一過(guò)程流程圖,示出依照本發(fā)明實(shí)施例與使用文件分配表文件系統(tǒng)諸如Windows或DOS將一與宿主系統(tǒng)關(guān)聯(lián)的文件寫(xiě)入非易失存儲(chǔ)器的方法關(guān)聯(lián)的步驟。圖8是一過(guò)程流程圖,示出依照本發(fā)明實(shí)施例與識(shí)別與處理與一單一邏輯數(shù)據(jù)塊關(guān)聯(lián)的物理數(shù)據(jù)塊的方法關(guān)聯(lián)的步驟。圖9是依照本發(fā)明實(shí)施例的系統(tǒng)結(jié)構(gòu)的概略的方框圖表示。詳細(xì)說(shuō)明存儲(chǔ)系統(tǒng)的掉電一般可在存儲(chǔ)系統(tǒng)中引起許多問(wèn)題。這些問(wèn)題包括,但不限于此,當(dāng)在將一個(gè)文件寫(xiě)入閃存的過(guò)程期間掉電時(shí)被丟失的數(shù)據(jù)。為了糾正由于電源掉電而發(fā)生的問(wèn)題,在存儲(chǔ)系統(tǒng)后來(lái)開(kāi)啟電源后可執(zhí)行恢復(fù)操作以維護(hù)數(shù)據(jù)完整性。當(dāng)正在寫(xiě)閃存存儲(chǔ)器時(shí)已經(jīng)經(jīng)歷一次掉電,數(shù)據(jù)可能被不正確地編寫(xiě)到存儲(chǔ)器中。如果損壞的數(shù)據(jù)是在諸如文件分配表(FAT)或目錄這樣的系統(tǒng)數(shù)據(jù)區(qū)中,閃存存儲(chǔ)器可能不能被宿主識(shí)別。一個(gè)成功的恢復(fù)過(guò)程將使閃存存儲(chǔ)器返回可用的狀態(tài)。如果寫(xiě)了部分文件,則還沒(méi)有寫(xiě)的部分一般被認(rèn)為不存在了。已經(jīng)寫(xiě)入的部分可被搶救到一個(gè)臨時(shí)文件供用戶回顧、丟棄、創(chuàng)建或合并到另一個(gè)文件。一般地,在不知道關(guān)于上次關(guān)閉的情形時(shí),可在存儲(chǔ)系統(tǒng)每次開(kāi)啟電源時(shí)執(zhí)行恢復(fù)操作,甚至當(dāng)這個(gè)操作沒(méi)有必要時(shí),如例如當(dāng)在上次存儲(chǔ)系統(tǒng)被關(guān)閉時(shí)發(fā)生正常的關(guān)閉電源。區(qū)別與非易失存貯器組件關(guān)聯(lián)的正常關(guān)閉電源和異常關(guān)閉電源之間的能力能使開(kāi)啟電源過(guò)程進(jìn)行得更有效率。例如,如果確定存儲(chǔ)器組件先前關(guān)閉電源為正常時(shí)可避免比較費(fèi)時(shí)的磁盤(pán)掃描操作。如果確定先前關(guān)閉電源是異常的,那么可使用磁盤(pán)掃描操作以收回丟失的存儲(chǔ)。通過(guò)實(shí)質(zhì)性地阻止存儲(chǔ)恢復(fù)過(guò)程諸如磁盤(pán)掃描過(guò)程發(fā)生,除非這樣的過(guò)程是必需的,例如當(dāng)存在異常關(guān)閉電源諸如電源故障時(shí),整個(gè)開(kāi)啟電源過(guò)程可進(jìn)行得更有效率。在非易失存儲(chǔ)系統(tǒng)中保留初始化和關(guān)閉電源過(guò)程簽名,如例如在非易失存儲(chǔ)器中的一個(gè)保留扇區(qū)中,使能夠有效地作出有關(guān)先前從非易失存儲(chǔ)器移去電源是由于要求的關(guān)閉或由于電源故障的判斷。例如,在正常情況下如要求關(guān)閉電源時(shí)發(fā)生關(guān)閉電源的任何時(shí)候,可存儲(chǔ)表示在正常情況下發(fā)生關(guān)閉電源的關(guān)閉電源簽名。因此,當(dāng)在下次開(kāi)啟電源期間找到這樣的關(guān)閉電源簽名時(shí),這個(gè)關(guān)閉電源簽名可用于確定前一次關(guān)閉電源發(fā)生在正常情況下并且存儲(chǔ)恢復(fù)過(guò)程是不必要的。在一個(gè)實(shí)施例中,一個(gè)保留數(shù)據(jù)塊,例如存儲(chǔ)器組件或芯片的電源管理數(shù)據(jù)塊可象這樣安排,使每當(dāng)正常關(guān)閉電源發(fā)生時(shí)可將一關(guān)閉電源簽名寫(xiě)入電源管理數(shù)據(jù)塊的頁(yè)。當(dāng)下一次為存儲(chǔ)器組件施加電源時(shí),可訪問(wèn)保留數(shù)據(jù)塊以確定一個(gè)合適的關(guān)閉電源簽名是否包含在其中。閃存存儲(chǔ)系統(tǒng),或更一般地,可從使用電源管理數(shù)據(jù)塊得益的非易失存儲(chǔ)系統(tǒng)通常包括閃存卡(flashmemorycard)和芯片組。一般地,閃存存儲(chǔ)系統(tǒng)是與宿主系統(tǒng)一起使用的,這樣使宿主系統(tǒng)可從閃存存儲(chǔ)系統(tǒng)讀寫(xiě)數(shù)據(jù)。不過(guò),有些閃存存儲(chǔ)系統(tǒng)包括嵌入的閃存存儲(chǔ)器和在宿主上實(shí)際作為這個(gè)嵌入的閃存存儲(chǔ)器的控制器執(zhí)行的軟件,如將在下面相對(duì)于圖1c討論的。參考圖1a,將描述一個(gè)普通的包括非易失存儲(chǔ)設(shè)備例如袖珍閃存卡(CompactFlashmemorycard)的宿主系統(tǒng)。宿主或計(jì)算機(jī)系統(tǒng)100一般包括允許微處理器108、隨機(jī)存取存儲(chǔ)器(RAM)112和輸入/輸出電路116通信的系統(tǒng)總線104。應(yīng)該意識(shí)到宿主系統(tǒng)100一般可包括其它組件,例如,為了說(shuō)明的目的未示出的顯示設(shè)備和網(wǎng)絡(luò)設(shè)備。一般而言,宿主系統(tǒng)100可能具有捕捉信息的能力,信息包括但不限于此,靜態(tài)圖象信息、音頻信息和視頻信息。可以實(shí)時(shí)地捕捉這樣的信息,并可通過(guò)無(wú)線方式將信息發(fā)送到宿主系統(tǒng)100。雖然宿主系統(tǒng)100實(shí)際上可以是任何系統(tǒng),但是宿主系統(tǒng)100一般是數(shù)字照相機(jī)、視頻攝象機(jī)、移動(dòng)通信裝置、音頻播放器或視頻播放器。不過(guò)應(yīng)該意識(shí)到,宿主系統(tǒng)100通??梢允菍?shí)際上存儲(chǔ)數(shù)據(jù)或信息并且檢索數(shù)據(jù)或信息的任何系統(tǒng)。宿主系統(tǒng)100也可以是或者只捕捉數(shù)據(jù)或者只檢索數(shù)據(jù)的系統(tǒng)。也就是說(shuō),宿主系統(tǒng)100可以是,在一個(gè)實(shí)施例中,一個(gè)存儲(chǔ)數(shù)據(jù)的專(zhuān)用系統(tǒng),或者宿主系統(tǒng)100可以是一個(gè)讀取數(shù)據(jù)的專(zhuān)用系統(tǒng)。作為例子,宿主系統(tǒng)100可以是一個(gè)只被安排寫(xiě)和存儲(chǔ)數(shù)據(jù)的存儲(chǔ)記錄器(memorywriter)??商鎿Q地,宿主系統(tǒng)100可以是這樣一個(gè)裝置,諸如一般被安排為讀取或檢索數(shù)據(jù)而不捕捉數(shù)據(jù)的MP3播放器。在一個(gè)實(shí)施例中,是可移動(dòng)的非易失存儲(chǔ)設(shè)備的非易失存儲(chǔ)設(shè)備被安排與總線104接口以存儲(chǔ)信息。可選的接口單元130可允許非易失存儲(chǔ)設(shè)備120間接與總線104接口。當(dāng)存在這個(gè)單元時(shí),輸入/輸出電路單元116幫助減少總線104上的負(fù)荷,如在本領(lǐng)域的熟練技術(shù)人員將理解的。非易失存儲(chǔ)設(shè)備120包括非易失存儲(chǔ)器124和一個(gè)可選的存儲(chǔ)控制系統(tǒng)128。在一個(gè)實(shí)施例中,非易失存儲(chǔ)設(shè)備120可在一單一芯片或電路小片(die)上實(shí)現(xiàn)。可替換地,非易失存儲(chǔ)設(shè)備120可以在多芯片模塊或在多個(gè)分散的可形成芯片組并可作為非易失存儲(chǔ)設(shè)備120一起使用的組件上實(shí)現(xiàn)。一個(gè)非易失存儲(chǔ)設(shè)備120的實(shí)施例將在下面參考圖1b描述。非易失存儲(chǔ)器124例如閃存諸如NAND閃存存儲(chǔ)器,被安排存儲(chǔ)數(shù)據(jù),使數(shù)據(jù)在需要時(shí)可被訪問(wèn)或讀取。存儲(chǔ)在非易失存儲(chǔ)器124中的數(shù)據(jù)在適當(dāng)?shù)臅r(shí)候也可以被擦除,盡管應(yīng)該理解在非易失存儲(chǔ)器124中有些數(shù)據(jù)是不可擦除的。存儲(chǔ)數(shù)據(jù)、讀取數(shù)據(jù)和擦除數(shù)據(jù)的過(guò)程通常由存儲(chǔ)控制系統(tǒng)128或當(dāng)不存在存儲(chǔ)控制系統(tǒng)128時(shí)由微處理器108執(zhí)行的軟件控制。非易失存儲(chǔ)器124的操作可通過(guò)實(shí)質(zhì)上使非易失存儲(chǔ)器124的扇區(qū)被實(shí)質(zhì)性地平均磨損這樣管理,使非易失存儲(chǔ)器124的壽命充分地最大化。非易失存儲(chǔ)設(shè)備120通常被描述為包括一個(gè)可選的存儲(chǔ)控制系統(tǒng)128,即控制器。非易失存儲(chǔ)設(shè)備120常??砂ǚ且资Т鎯?chǔ)器124和存儲(chǔ)控制系統(tǒng)128的單獨(dú)的芯片,即控制器、功能。作為例子,盡管包括但不限于此PC卡(PCcard)、袖珍閃存卡(CompactFlashcard)、多媒體卡(MultiMediacard)和保密數(shù)字卡(securedigitalcard)在內(nèi)的非易失存儲(chǔ)設(shè)備包括可在單獨(dú)的芯片上實(shí)現(xiàn)的控制器,但是其它非易失存儲(chǔ)設(shè)備可不包括在單獨(dú)的芯片上的控制器。在不包括單獨(dú)的存儲(chǔ)器和控制器芯片的非易失存儲(chǔ)設(shè)備實(shí)施例中,存儲(chǔ)器和控制器功能可被集成到一單一芯片中,如本領(lǐng)域的熟練技術(shù)人員將意識(shí)到的??商鎿Q地,存儲(chǔ)控制系統(tǒng)128的功能可由微處理器108提供,如例如在非易失存儲(chǔ)設(shè)備120不包括存儲(chǔ)控制器128的實(shí)施例中,如上所述。參考圖1b,非易失存儲(chǔ)設(shè)備120將依照本發(fā)明的一個(gè)實(shí)施例更詳細(xì)地描述。如上所述,非易失存儲(chǔ)設(shè)備120包括非易失存儲(chǔ)器124和可能包括存儲(chǔ)控制系統(tǒng)128。存儲(chǔ)器124和控制系統(tǒng)128或控制器可以是非易失存儲(chǔ)設(shè)備120的基本組件,盡管當(dāng)存儲(chǔ)器124是在嵌入NAND設(shè)備中,例如,非易失存儲(chǔ)設(shè)備120可不包括控制系統(tǒng)128。存儲(chǔ)器124可以是一個(gè)在半導(dǎo)體基底上形成的存儲(chǔ)單元陣列,在其中通過(guò)將兩個(gè)或多個(gè)電荷電平之一存儲(chǔ)在存儲(chǔ)單元的單獨(dú)存儲(chǔ)元件中使一個(gè)或多個(gè)數(shù)據(jù)位被存儲(chǔ)在單獨(dú)存儲(chǔ)單元中。非易失閃存電可擦寫(xiě)只讀存儲(chǔ)器(electricallyerasableprogrammablereadonlymemory)(EEPROM)是普通類(lèi)型的用于這樣系統(tǒng)的存儲(chǔ)器的一個(gè)例子。當(dāng)控制系統(tǒng)存在時(shí),控制系統(tǒng)128通過(guò)總線15與宿主計(jì)算機(jī)或其它使用存儲(chǔ)系統(tǒng)存儲(chǔ)數(shù)據(jù)的系統(tǒng)通信??偩€15通常是圖1a的總線104的一部分??刂葡到y(tǒng)128還控制包括存儲(chǔ)器單元陣列11的存儲(chǔ)器124的操作,以寫(xiě)由宿主提供的數(shù)據(jù)、讀宿主請(qǐng)求的數(shù)據(jù)以及執(zhí)行在操作存儲(chǔ)器124中的各種內(nèi)務(wù)管理功能??刂葡到y(tǒng)128通常包括一個(gè)已經(jīng)與非易失軟件存儲(chǔ)器關(guān)聯(lián)的通用微處理器,各種邏輯電路等等。常常包括一個(gè)或多個(gè)狀態(tài)機(jī)以控制特殊例程的執(zhí)行。存儲(chǔ)器單元陣列11一般由控制系統(tǒng)128或微處理器108通過(guò)地址解碼器17尋址。解碼器17施加正確的電壓到陣列11的選通(gate)和位線,為了編寫(xiě)數(shù)據(jù)到存儲(chǔ)單元、從存儲(chǔ)單元讀數(shù)據(jù)或擦除存儲(chǔ)單元,這里的存儲(chǔ)單元是一組正由控制系統(tǒng)128尋址的存儲(chǔ)單元。附加的電路19包括控制施加到陣列的元件的、依賴(lài)要被編寫(xiě)到被尋址的單元組的數(shù)據(jù)的電壓。電路19還包括讀出放大器和其它從被尋址的存儲(chǔ)單元組讀數(shù)據(jù)所需的電路。被編寫(xiě)到陣列11的數(shù)據(jù),或最近從陣列11讀取的數(shù)據(jù),一般被存儲(chǔ)在控制系統(tǒng)128中的一個(gè)緩沖存儲(chǔ)器21中。控制系統(tǒng)128還通常包含各種寄存器用于臨時(shí)存儲(chǔ)命令和狀態(tài)數(shù)據(jù)等等。陣列11被分成大量的數(shù)據(jù)塊(BLOCK)O-N個(gè)存儲(chǔ)單元。如對(duì)于閃存EEPROM系統(tǒng)是共同的,數(shù)據(jù)塊一般是最小的擦除單元。也就是說(shuō),每個(gè)數(shù)據(jù)塊包含最小數(shù)量的要一起被擦除的存儲(chǔ)單元。每個(gè)數(shù)據(jù)塊一般被分成許多頁(yè)(page)。如本領(lǐng)域的熟練技術(shù)人員將意識(shí)到的,一個(gè)頁(yè)是最小的編寫(xiě)單位。也就是說(shuō),一個(gè)基本的編寫(xiě)操作將數(shù)據(jù)寫(xiě)入最小的一個(gè)存儲(chǔ)單元頁(yè),或從最小的一個(gè)存儲(chǔ)單元頁(yè)讀取數(shù)據(jù)。數(shù)據(jù)的一個(gè)或多個(gè)扇區(qū)(section)一般存儲(chǔ)在每個(gè)頁(yè)中。如圖1b所示,一個(gè)扇區(qū)包括用戶數(shù)據(jù)和系統(tǒng)開(kāi)銷(xiāo)數(shù)據(jù)(overheaddata)。系統(tǒng)開(kāi)銷(xiāo)數(shù)據(jù)一般包括一個(gè)錯(cuò)誤校正碼(errorcorrectioncode)(ECC),它是從這個(gè)扇區(qū)的用戶數(shù)據(jù)計(jì)算出來(lái)的??刂葡到y(tǒng)128的部分23當(dāng)數(shù)據(jù)正被編寫(xiě)到陣列11中時(shí)計(jì)算ECC,以及當(dāng)從陣列11讀取數(shù)據(jù)時(shí)也校驗(yàn)ECC??商鎿Q地,ECC被存儲(chǔ)在不同的頁(yè)或不同的數(shù)據(jù)塊中,而不是存儲(chǔ)在ECC附屬的用戶數(shù)據(jù)中。一個(gè)扇區(qū)的數(shù)據(jù)一般為512字節(jié),相應(yīng)于在磁盤(pán)驅(qū)動(dòng)器中的扇區(qū)的大小。系統(tǒng)開(kāi)銷(xiāo)數(shù)據(jù)或冗余數(shù)據(jù),一般是額外的16字節(jié)。在每個(gè)頁(yè)中最普通地包含一個(gè)數(shù)據(jù)扇區(qū),但兩個(gè)或多個(gè)扇區(qū)可代替一個(gè)扇區(qū)構(gòu)成一個(gè)頁(yè)。任意數(shù)量的頁(yè)一般可構(gòu)成一個(gè)數(shù)據(jù)塊。作為例子,一個(gè)數(shù)據(jù)塊可從八個(gè)頁(yè)到512、1024或更多的頁(yè)構(gòu)成。選擇數(shù)據(jù)塊的數(shù)量以給存儲(chǔ)系統(tǒng)提供一個(gè)要求的數(shù)據(jù)存儲(chǔ)容量。陣列11一般被分成少量子陣列(未出示),每個(gè)子陣列包括一部分?jǐn)?shù)據(jù)塊,子陣列為了增加在執(zhí)行各種存儲(chǔ)操作中的并行性程度(degreeofparallelism)在某種程度上互相獨(dú)立地操作。在美國(guó)專(zhuān)利號(hào)No.5,890,192中描述了使用多個(gè)子陣列的實(shí)例,通過(guò)引用將該專(zhuān)利全部包含在此。在一個(gè)實(shí)施例中,非易失存儲(chǔ)器被嵌入在一個(gè)系統(tǒng)例如一個(gè)宿主系統(tǒng)中。圖1c是包括嵌入的非易失存儲(chǔ)器的宿主系統(tǒng)的概略表示。宿主或計(jì)算機(jī)系統(tǒng)150一般包括允許微處理器158、RAM162和輸入/輸出電路166在宿主系統(tǒng)150的其它組件(未示出)中通信的系統(tǒng)總線154。非易失存儲(chǔ)器174例如閃存存儲(chǔ)器,允許信息被存儲(chǔ)在宿主系統(tǒng)150內(nèi)??稍诜且资Т鎯?chǔ)器174與總線154之間提供接口180,以使信息能從非易失存儲(chǔ)器174讀取或?qū)懭敕且资Т鎯?chǔ)器174。非易失存儲(chǔ)器174可由微處理器158管理,微處理器有效地執(zhí)行被安排控制非易失存儲(chǔ)器174的軟件和固件的任一或兩者。也就是說(shuō),微處理器158可運(yùn)行代碼器(未示出),即讓非易失存儲(chǔ)器174被控制的軟件代碼器或固件代碼器。這樣的代碼器,可以是與CPU一起包裝在微處理器158中的閃存存儲(chǔ)器、單獨(dú)的閃存ROM或在非易失存儲(chǔ)器174中,它將在下面被描述,可使非易失存儲(chǔ)器174中的物理數(shù)據(jù)塊能被尋址,并可使信息能被存入物理數(shù)據(jù)塊、或從物理數(shù)據(jù)塊讀出和擦除。一般而言,非易失存儲(chǔ)器組件諸如一個(gè)NAND閃存芯片被分成數(shù)據(jù)塊。圖2是依照本發(fā)明的一個(gè)實(shí)施例的非易失存儲(chǔ)器組件的概略表示。存儲(chǔ)器組件200包括一組數(shù)據(jù)塊204。在存儲(chǔ)器組件200中數(shù)據(jù)塊204的數(shù)量可以依據(jù)存儲(chǔ)器組件200的全部容量大范圍地變化。作為例子,存儲(chǔ)器組件200可包括512個(gè)數(shù)據(jù)塊、1024個(gè)數(shù)據(jù)塊、2048個(gè)數(shù)據(jù)塊或4096個(gè)數(shù)據(jù)塊。應(yīng)該意識(shí)到存儲(chǔ)器組件200一般可包括N個(gè)數(shù)據(jù)塊204,其中N實(shí)際上可以是任意適當(dāng)?shù)臄?shù)據(jù)塊數(shù)量。在存儲(chǔ)器組件204中一定數(shù)量的數(shù)據(jù)塊204可認(rèn)為是被保留的數(shù)據(jù)塊204f-m。雖然保留數(shù)據(jù)塊204f-m可以是最后很少使用的數(shù)據(jù)塊204,如例如在存儲(chǔ)器組件200中最后八個(gè)數(shù)據(jù)塊204,但是保留數(shù)據(jù)塊204f-m通??梢允谴鎯?chǔ)器組件200中任意數(shù)據(jù)塊204。保留數(shù)據(jù)塊204f-m一般被保留用作電源管理數(shù)據(jù)塊或擦除計(jì)數(shù)數(shù)據(jù)塊,這在共同待批的美國(guó)專(zhuān)利申請(qǐng)No.10/281,804中描述,通過(guò)引用包含在此。保留數(shù)據(jù)塊f-m常常包括一個(gè)當(dāng)前電源管理數(shù)據(jù)塊,一旦這個(gè)當(dāng)前電源管理數(shù)據(jù)塊滿它就可由從保留數(shù)據(jù)塊204f-m中分配的其它電源管理數(shù)據(jù)塊代替或接替。當(dāng)將電源施加于存儲(chǔ)器組件200時(shí),例如當(dāng)首先施加電源作為一個(gè)初始化過(guò)程的一部分時(shí),一個(gè)被安排表示初始化過(guò)程是成功的初始化簽名或位,可被存儲(chǔ)到與電源管理數(shù)據(jù)塊關(guān)聯(lián)的頁(yè)中。參考圖3a,將依照本發(fā)明實(shí)施例描述一個(gè)包含初始化簽名的電源管理數(shù)據(jù)塊的實(shí)施例。電源管理數(shù)據(jù)塊304一般包括任意數(shù)量的頁(yè)308。一般地,包含在電源管理數(shù)據(jù)塊304中的頁(yè)數(shù)308可以至少部分地依賴(lài)于在包括電源管理數(shù)據(jù)塊304的整個(gè)非易失存儲(chǔ)器中的數(shù)據(jù)塊的標(biāo)準(zhǔn)容量。一旦成功地初始化存儲(chǔ)器組件,一個(gè)初始化或“open”(開(kāi))簽名312被寫(xiě)入電源管理數(shù)據(jù)塊304的一第一頁(yè)308a。因此,當(dāng)在第一頁(yè)308中找到初始化簽名312時(shí),或者更一般地如果在電源管理數(shù)據(jù)中可得到最近的簽名,則表示一個(gè)初始化過(guò)程已經(jīng)成功。在一個(gè)實(shí)施例中,初始化簽名312可與其它信息例如一個(gè)平均擦除計(jì)數(shù)一起被寫(xiě)入頁(yè)308a。當(dāng)包括電源管理數(shù)據(jù)塊304的存儲(chǔ)器組件開(kāi)啟電源時(shí),一般訪問(wèn)已經(jīng)寫(xiě)入內(nèi)容的最后頁(yè)308。如果先前初始化過(guò)程成功,已經(jīng)寫(xiě)入內(nèi)容的最后頁(yè)308可包括初始化簽名312,但是在這個(gè)初始化過(guò)程之后發(fā)生的關(guān)閉過(guò)程是異常的。如果在初始化過(guò)程之后發(fā)生的關(guān)閉過(guò)程是正常的,那么已經(jīng)寫(xiě)入內(nèi)容的最后頁(yè)308一般將包括一個(gè)關(guān)閉簽名,如圖3b所示。關(guān)閉或“closed”(關(guān))簽名324一般可包括被安排為例如以一個(gè)模式表示一個(gè)關(guān)閉過(guò)程成功地完成的位。一般而言,關(guān)閉簽名324的存在于已經(jīng)寫(xiě)入內(nèi)容的最后頁(yè)308b表示最近存儲(chǔ)器組件的關(guān)閉電源是在正常情況下發(fā)生的,而不是在可使存儲(chǔ)器組件需要執(zhí)行一次數(shù)據(jù)恢復(fù)過(guò)程的異常情況諸如由于電池故障下發(fā)生的。當(dāng)關(guān)閉簽名324被寫(xiě)入頁(yè)308b時(shí),關(guān)閉簽名324可與其它信息一起被寫(xiě)入頁(yè)308b??膳c關(guān)閉簽名324一起被寫(xiě)入308b的其它信息可包括,但不限于此,平均擦除計(jì)數(shù)以及屬于空余的數(shù)據(jù)塊諸如最頻繁地被擦除的數(shù)據(jù)塊和最不頻繁地被擦除的數(shù)據(jù)塊這樣的擦除計(jì)數(shù)。參考圖4,將依照本發(fā)明實(shí)施例描述與初始使用一個(gè)具有與電源管理數(shù)據(jù)塊關(guān)聯(lián)的非易失存儲(chǔ)器組件的方法的有關(guān)步驟。初始使用一個(gè)非易失存儲(chǔ)器組件的過(guò)程400,如例如第一次存儲(chǔ)器組件開(kāi)啟電源,開(kāi)始于步驟404,在該步驟中存儲(chǔ)器組件開(kāi)啟電源。初始化存儲(chǔ)器組件可包括,但不限于此,為存儲(chǔ)器組件提供、創(chuàng)建使存儲(chǔ)器組件能被使用所需要的數(shù)據(jù)結(jié)構(gòu)。一旦初始化存儲(chǔ)器組件,在步驟408中可將一個(gè)初始化簽名寫(xiě)入電源管理數(shù)據(jù)塊。如前面提到的,可將初始化簽名寫(xiě)入電源管理數(shù)據(jù)塊的同一頁(yè)中,如平均擦除計(jì)數(shù)和其它信息一樣。在寫(xiě)入初始化簽名后,在步驟412中可使用存儲(chǔ)器組件。使用存儲(chǔ)器組件一般可包括寫(xiě)或存儲(chǔ)數(shù)據(jù)到存儲(chǔ)器組件中,以及從存儲(chǔ)器組件讀取所存儲(chǔ)的數(shù)據(jù)。在某些時(shí)候,存儲(chǔ)器組件的用戶可發(fā)布一個(gè)命令或一個(gè)請(qǐng)求關(guān)閉存儲(chǔ)器組件,如例如當(dāng)用戶想要關(guān)閉一個(gè)與存儲(chǔ)器組件接口的宿主設(shè)備的時(shí)候。因而,在步驟416中作出有關(guān)存儲(chǔ)器組件是否要被關(guān)閉的判斷。如果決定存儲(chǔ)器組件不要關(guān)閉電源,那么過(guò)程流程返回到步驟412,在該步驟中繼續(xù)使用存儲(chǔ)器組件??商鎿Q地,如果決定存儲(chǔ)器組件要關(guān)閉電源,那么在步驟420中將一個(gè)關(guān)閉簽名寫(xiě)入電源管理數(shù)據(jù)塊。在一個(gè)實(shí)施例中,在實(shí)際上將其它信息象關(guān)閉簽名一樣存儲(chǔ)到同一頁(yè)中的同時(shí)寫(xiě)關(guān)閉簽名。這樣的信息可包括,但不限于此,平均擦除計(jì)數(shù)、與最少頻繁地被擦除的數(shù)據(jù)塊表關(guān)聯(lián)的標(biāo)識(shí)符和與最頻繁地被擦除的數(shù)據(jù)塊表關(guān)聯(lián)的標(biāo)識(shí)符,如上面所提到的。在將關(guān)閉簽名寫(xiě)入電源管理數(shù)據(jù)塊后,在步驟424中存儲(chǔ)器組件關(guān)閉電源,并且初始化使用存儲(chǔ)器組件的過(guò)程完成。一般而言,當(dāng)不知道存儲(chǔ)器組件是否要被初始化時(shí),可以檢查存儲(chǔ)器組件的電源管理數(shù)據(jù)塊中的初始化標(biāo)簽。也就是說(shuō),與其自動(dòng)地初始化存儲(chǔ)器組件,如可以在知道電源是第一次提供給存儲(chǔ)器組件時(shí)發(fā)生的,不如首先確定以前是否已經(jīng)初始化過(guò)存儲(chǔ)器組件,以及因此開(kāi)啟電源或關(guān)閉電源。圖5是一個(gè)過(guò)程流程圖,示出依照本發(fā)明實(shí)施例與使用以前可能已經(jīng)關(guān)閉電源的存儲(chǔ)器組件的方法有關(guān)的步驟。使用包含電源管理數(shù)據(jù)塊的存儲(chǔ)器組件的過(guò)程500開(kāi)始于步驟504,在該步驟中為存儲(chǔ)器組件提供電源。一旦為存儲(chǔ)器組件提供電源,在步驟508中確定在電源管理數(shù)據(jù)塊中是否存在初始化簽名。特別地,確定存儲(chǔ)器組件的初始化是否以前完成過(guò)。當(dāng)確定在電源管理數(shù)據(jù)塊中有一個(gè)合適的初始化簽名時(shí),那么表示存儲(chǔ)器組件的初始化或開(kāi)啟電源先前成功完成。同樣,在步驟512中,確定在電源管理數(shù)據(jù)塊中是否存在一個(gè)適當(dāng)?shù)年P(guān)閉簽名。當(dāng)在電源管理數(shù)據(jù)塊中有一個(gè)適當(dāng)?shù)年P(guān)閉簽名時(shí),表示關(guān)閉簽名是電源管理數(shù)據(jù)塊中最近的簽名。在一個(gè)實(shí)施例中,確定是否存在一個(gè)適當(dāng)?shù)年P(guān)閉簽名包括確定一個(gè)初始化簽名是否是電源管理數(shù)據(jù)塊中最近的簽名,或者存在于電源管理數(shù)據(jù)塊中最近所寫(xiě)的頁(yè)中。如果在步驟512中確定在電源管理數(shù)據(jù)塊中存在一個(gè)適當(dāng)?shù)年P(guān)閉簽名,那么表示數(shù)據(jù)與存儲(chǔ)器組件實(shí)際上是同步的,并且因此,不需要數(shù)據(jù)恢復(fù)過(guò)程。同樣,在步驟532中可使用存儲(chǔ)器組件。應(yīng)該意識(shí)到使用存儲(chǔ)器組件可包括將一個(gè)初始化簽名或開(kāi)簽名寫(xiě)入電源管理數(shù)據(jù)塊。使用存儲(chǔ)器組件還可包括當(dāng)收到一個(gè)關(guān)閉或關(guān)閉電源的命令時(shí)將一個(gè)關(guān)閉簽名寫(xiě)入電源管理數(shù)據(jù)塊。一旦在步驟532中使用存儲(chǔ)器組件,利用存儲(chǔ)器組件的過(guò)程就完成了??商鎿Q地,如果在步驟512中確定關(guān)閉簽名不是電源管理數(shù)據(jù)塊中最近的簽名,那么表示存儲(chǔ)器組件的異常關(guān)閉先前已經(jīng)發(fā)生過(guò)。也就是說(shuō),當(dāng)一個(gè)初始化簽名是電源管理數(shù)據(jù)塊中最近的簽名并且不存在與這個(gè)初始化簽名對(duì)應(yīng)的關(guān)閉簽名時(shí),那么推論是先前關(guān)閉存儲(chǔ)器組件或切除存儲(chǔ)器組件的電源不是在正常情況下發(fā)生的。例如,由于電池故障存儲(chǔ)器組件可能發(fā)生過(guò)掉電。同樣,過(guò)程流程從步驟512移至步驟516,在該步驟中執(zhí)行一個(gè)數(shù)據(jù)塊同步過(guò)程。一般地,由于與存儲(chǔ)器組件關(guān)聯(lián)的數(shù)據(jù)可能不同步,例如可能存在不止一個(gè)物理數(shù)據(jù)塊被分配給一個(gè)邏輯數(shù)據(jù)塊,則可執(zhí)行數(shù)據(jù)塊同步過(guò)程。而且,可通知宿主系統(tǒng)使用這個(gè)存儲(chǔ)器組件的整個(gè)系統(tǒng)的先前關(guān)閉不是平穩(wěn)的,并可提示用戶運(yùn)行恢復(fù)診斷諸如掃描磁盤(pán)診斷。在一個(gè)實(shí)施例中,在執(zhí)行數(shù)據(jù)恢復(fù)過(guò)程之后,實(shí)際上所有與數(shù)據(jù)塊關(guān)聯(lián)的擦除計(jì)數(shù)可以是同步的或者否則在步驟518中使用從擦除計(jì)數(shù)數(shù)據(jù)塊獲得的一個(gè)平均擦除計(jì)數(shù)更新它們。擦除計(jì)數(shù)數(shù)據(jù)塊的一個(gè)實(shí)例在共同待批的美國(guó)專(zhuān)利申請(qǐng)No.10/281,626中描述,通過(guò)引用包括在此。在同步擦除計(jì)數(shù)之后,在步驟524中通知操作系統(tǒng)或宿主在先前的關(guān)閉電源中不正確的關(guān)閉或電源故障已經(jīng)發(fā)生過(guò)。也就是說(shuō),通知與存儲(chǔ)器組件關(guān)聯(lián)的宿主的文件系統(tǒng)不正確的關(guān)閉。宿主一般將確定是否需要一個(gè)象“scandisk”(磁盤(pán)掃描)過(guò)程的數(shù)據(jù)完整性檢查和恢復(fù)過(guò)程??上蛴脩籼崾疽粋€(gè)是否需要這樣一個(gè)過(guò)程的詢問(wèn)。然后可將是啟動(dòng)恢復(fù)過(guò)程還是忽略這個(gè)通知留給用戶?;氐讲襟E808,如果確定在電源管理數(shù)據(jù)塊中沒(méi)有初始化簽名,那么表示的是存儲(chǔ)器組件先前沒(méi)有被成功地初始化。同樣,在步驟528中,初始化存儲(chǔ)器組件。初始化存儲(chǔ)器組件可包括如果正確地初始化存儲(chǔ)器組件,將一個(gè)初始化簽名寫(xiě)入電源管理數(shù)據(jù)塊。一旦初始化存儲(chǔ)器組件,那么在步驟532中就可使用存儲(chǔ)器組件。一般而言,當(dāng)在整個(gè)系統(tǒng)中發(fā)生電源故障時(shí),可危及與文件關(guān)聯(lián)的數(shù)據(jù)完整性。特別地,當(dāng)由于電源故障寫(xiě)過(guò)程被過(guò)早地異常中斷時(shí),可危及從一個(gè)宿主有效寫(xiě)入非易失存儲(chǔ)器或存儲(chǔ)器組件的數(shù)據(jù)區(qū)的文件的完整性。當(dāng)有一個(gè)來(lái)自于用戶的關(guān)閉電源請(qǐng)求時(shí),一般在實(shí)際關(guān)閉電源發(fā)生之前完成寫(xiě)文件。當(dāng)將文件寫(xiě)入到非易失存儲(chǔ)器時(shí),一般基于一種順序?qū)⑽募?xiě)入到非易失存儲(chǔ)器的不同區(qū)域。例如,可按一特殊順序?qū)懭氲椒且资Т鎯?chǔ)器的宿主系統(tǒng)區(qū)和數(shù)據(jù)區(qū)。圖6是依照本發(fā)明實(shí)施例的非易失存儲(chǔ)器的宿主系統(tǒng)區(qū)和數(shù)據(jù)區(qū)的概略表示。在所描述的實(shí)施例中,非易失存儲(chǔ)器600是一個(gè)NAND存儲(chǔ)器,雖然應(yīng)該意識(shí)到非易失存儲(chǔ)器600通常可以是任何適合的存儲(chǔ)器。存儲(chǔ)器600的宿主系統(tǒng)區(qū)通常包括一主引導(dǎo)記錄(masterbootrecord)602、一隱藏區(qū)(hiddenarea)606、一分區(qū)引導(dǎo)記錄(partitionbootrecord)610、一第一文件分配表(firstfileallocationtable)614、一第二文件分配表(secondfileallocationtable)618和一根目錄(rootdiretory)622。主引導(dǎo)記錄602使能確定與存儲(chǔ)器600關(guān)聯(lián)的哪個(gè)分區(qū)與哪個(gè)操作系統(tǒng)兼容。例如,主引導(dǎo)記錄602可指定一個(gè)特殊的分區(qū)與Linux操作系統(tǒng)兼容,而另一個(gè)分區(qū)與Windows98操作系統(tǒng)兼容。分區(qū)引導(dǎo)記錄610,如本領(lǐng)域熟練技術(shù)人員將意識(shí)到的,使與存儲(chǔ)器600接口的宿主系統(tǒng)能識(shí)別操作系統(tǒng)與哪一個(gè)存儲(chǔ)器600兼容。存儲(chǔ)器600的數(shù)據(jù)區(qū)626被安排包括與根目錄622關(guān)聯(lián)的子目錄(未示出)。此外,數(shù)據(jù)區(qū)626被安排包含與存儲(chǔ)器600關(guān)聯(lián)的文件。當(dāng)文件被寫(xiě)存儲(chǔ)器600時(shí),如在下面將參考圖7描述的,可在一個(gè)目錄例如根目錄622或與根目錄622關(guān)聯(lián)的子目錄中寫(xiě)入文件名,在此之后將與文件名關(guān)聯(lián)的數(shù)據(jù)寫(xiě)入到數(shù)據(jù)區(qū)626。然后可用文件的內(nèi)容的位置、大小和創(chuàng)建時(shí)間寫(xiě)入文件分配表614、618和更新已經(jīng)寫(xiě)入文件名的目錄。參考圖7,將依照本發(fā)明實(shí)施例描述與一個(gè)將與宿主系統(tǒng)關(guān)聯(lián)的文件寫(xiě)入非易失存儲(chǔ)器的方法的典型步驟的實(shí)例。寫(xiě)文件的過(guò)程760開(kāi)始于步驟764,在該步驟中將要被創(chuàng)建的數(shù)據(jù)文件的名稱(chēng)、創(chuàng)建時(shí)間和屬性寫(xiě)入一個(gè)與非易失存儲(chǔ)器關(guān)聯(lián)的目錄中,如例如NAND存儲(chǔ)器。一旦將文件的名稱(chēng)寫(xiě)入目錄,在步驟768中將數(shù)據(jù)文件的內(nèi)容寫(xiě)入與存儲(chǔ)器關(guān)聯(lián)的數(shù)據(jù)區(qū)。在所述實(shí)施例中,在將數(shù)據(jù)文件的內(nèi)容寫(xiě)入到數(shù)據(jù)區(qū)之后,在步驟772中可寫(xiě)入第一FAT以使數(shù)據(jù)在對(duì)應(yīng)于文件的數(shù)據(jù)區(qū)的位置能被識(shí)別。在步驟776中可這樣寫(xiě)入第二FAT,使第二FAT是第一FAT的有效拷貝。在寫(xiě)兩個(gè)FAT之后,在步驟780中可用標(biāo)識(shí)文件開(kāi)始的內(nèi)容在數(shù)據(jù)區(qū)中位置的開(kāi)始簇和標(biāo)識(shí)有效創(chuàng)建文件的最后時(shí)間更新對(duì)應(yīng)于文件的目錄項(xiàng)。由于文件創(chuàng)建或修改沒(méi)有完成直到步驟780完成,因此在步驟772和步驟776之后,一般寫(xiě)入數(shù)據(jù)文件內(nèi)容的最后簇或最后頁(yè)。如本領(lǐng)域熟練技術(shù)人員將意識(shí)到的,簇可包括任意數(shù)量的頁(yè),并且一般由分區(qū)引導(dǎo)記錄規(guī)定。一旦完成寫(xiě)文件的過(guò)程,目錄項(xiàng)就被更新。通過(guò)使用電源管理數(shù)據(jù)塊,可確定先前切除存儲(chǔ)器電源是否由于電源故障或另外的異常。當(dāng)確定存儲(chǔ)器的關(guān)閉電源是異常的,那么文件寫(xiě)過(guò)程可能發(fā)生過(guò)異常中斷。因此,通知宿主執(zhí)行數(shù)據(jù)恢復(fù)過(guò)程以維護(hù)系統(tǒng)的數(shù)據(jù)完整性是值得做的。繼續(xù)參考圖7,如果在步驟764之間或步驟780之后關(guān)閉電源,沒(méi)有寫(xiě)文件或完成寫(xiě)文件,則沒(méi)有損壞的文件。要寫(xiě)但由于在寫(xiě)過(guò)程開(kāi)始之前掉電而未寫(xiě)的那些文件,對(duì)于用戶將是不可用的。除了步驟768之外,如果開(kāi)始寫(xiě)操作但在步驟764、步驟772、步驟776或步驟780中任意一個(gè)步驟沒(méi)有完成,則沒(méi)有有效執(zhí)行這些步驟。因此,正在寫(xiě)入的頁(yè)實(shí)際上被丟棄了,而舊的頁(yè)被用于恢復(fù)。在本發(fā)明中舊頁(yè)是可用的。實(shí)際上代替損壞頁(yè)的舊頁(yè)對(duì)于宿主是透明的。由ECC校驗(yàn)保護(hù)內(nèi)容的有效性。當(dāng)一個(gè)頁(yè)被損壞時(shí),先前“good”(好)或未損壞的頁(yè)可返回給宿主,如在共同待批的美國(guó)臨時(shí)專(zhuān)利申請(qǐng)No.60/421,725中所述,通過(guò)引用將該專(zhuān)利全部包含在此。頁(yè)的被更新信息實(shí)際上總是被寫(xiě)到一個(gè)已擦除的頁(yè)而不蓋寫(xiě)舊頁(yè)。因此,如果還沒(méi)有擦除舊頁(yè),它的數(shù)據(jù)內(nèi)容將不被蓋寫(xiě)中的新信息損壞。而且,如在共同待批的美國(guó)專(zhuān)利No.10/281,631中所述的,包括FAT和目錄在內(nèi)的文件系統(tǒng)的臨界區(qū),常常被分成多個(gè)物理數(shù)據(jù)區(qū)。在格式化閃存之后,一般存在一個(gè)FAT和目錄的每個(gè)頁(yè)的有效拷貝。當(dāng)沒(méi)有成功地寫(xiě)新的頁(yè)時(shí)備份頁(yè)是可用的,因此使介質(zhì)能被恢復(fù),而一個(gè)不能識(shí)別的FAT和目錄可使介質(zhì)不可被恢復(fù)。如果在步驟764中電源故障發(fā)生并引起寫(xiě)操作失敗,則通常使用目錄的先前拷貝。如果寫(xiě)操作成功完成,系統(tǒng)可能有一個(gè)有名稱(chēng)的文件,但不包括內(nèi)容,例如具有近似于零的文件大小。因此,用戶一般將需要“re-create”(重創(chuàng)建)文件,這樣具有內(nèi)容的文件將被存儲(chǔ)。當(dāng)步驟掉電發(fā)生在步驟768或在步驟768之后但在步驟772之前的任何時(shí)候,所寫(xiě)的數(shù)據(jù)不與任何文件關(guān)聯(lián),因此,對(duì)于用戶是不可用的。用戶一般將有一個(gè)大小近似于零的文件。如果掉電發(fā)生在寫(xiě)入FAT1或FAT2之后,宿主可能能夠定位數(shù)據(jù)并使數(shù)據(jù)可用于用戶在恢復(fù)過(guò)程中搶救一些信息。應(yīng)該理解在步驟768之后的電源故障,因?yàn)樵谶@個(gè)故障中寫(xiě)入的信息使用普通恢復(fù)過(guò)程通常是不可搶救的。由于目錄項(xiàng)沒(méi)有將文件與數(shù)據(jù)關(guān)聯(lián)起來(lái)直到步驟780,用戶甚至在776后將還“see”(看見(jiàn))文件大小為近似于零。本發(fā)明允許用戶通知宿主發(fā)生過(guò)電源故障并通常需要恢復(fù)過(guò)程。當(dāng)在異常關(guān)閉電源后給存儲(chǔ)器開(kāi)啟電源時(shí),在異常關(guān)閉電源的后果中也可能需要完成數(shù)據(jù)塊復(fù)制或合并過(guò)程。例如,當(dāng)一組物理數(shù)據(jù)塊與一個(gè)單一邏輯數(shù)據(jù)塊關(guān)聯(lián),這樣分解(resolve)物理數(shù)據(jù)塊使邏輯數(shù)據(jù)塊實(shí)際上只與實(shí)際包含所有與這個(gè)邏輯數(shù)據(jù)塊關(guān)聯(lián)的當(dāng)前數(shù)據(jù)或信息的單一物理數(shù)據(jù)塊關(guān)聯(lián)在一起,這是值得做的。分解與一個(gè)公共邏輯數(shù)據(jù)塊關(guān)聯(lián)的物理邏輯數(shù)據(jù)塊一般包括確定哪一個(gè)物理數(shù)據(jù)塊是最近與這個(gè)邏輯數(shù)據(jù)塊關(guān)聯(lián)的。在共同待批的美國(guó)專(zhuān)利申請(qǐng)No.10/281,762中所描述的更新索引,可用于確定一組物理數(shù)據(jù)塊中哪一個(gè)物理數(shù)據(jù)塊與一個(gè)邏輯數(shù)據(jù)塊關(guān)聯(lián),并因此應(yīng)該有效地更新以包含與這個(gè)邏輯數(shù)據(jù)塊關(guān)聯(lián)的最近的內(nèi)容。當(dāng)一個(gè)邏輯數(shù)據(jù)塊具有不止一個(gè)關(guān)聯(lián)的物理數(shù)據(jù)塊并且實(shí)際上需要識(shí)別一個(gè)要與這個(gè)邏輯數(shù)據(jù)塊關(guān)聯(lián)的物理數(shù)據(jù)塊,常常從物理數(shù)據(jù)塊中獲得更新索引,如這樣安排更新索引,比較來(lái)自兩個(gè)物理數(shù)據(jù)塊的更新索引將識(shí)別這兩個(gè)物理數(shù)據(jù)塊中哪一個(gè)在分解物理數(shù)據(jù)塊之后應(yīng)該保留與這個(gè)邏輯數(shù)據(jù)塊關(guān)聯(lián),例如在一個(gè)合并過(guò)程發(fā)生后,以及這兩個(gè)物理數(shù)據(jù)塊中哪一個(gè)應(yīng)該不與這個(gè)邏輯數(shù)據(jù)塊關(guān)聯(lián)。存儲(chǔ)在至少一個(gè)與物理數(shù)據(jù)塊關(guān)聯(lián)的系統(tǒng)開(kāi)銷(xiāo)或冗余區(qū)域中的更新索引,可被安排表示兩個(gè)涉及復(fù)制或合并的物理數(shù)據(jù)塊中哪一個(gè)是舊的物理數(shù)據(jù)塊和這兩個(gè)物理數(shù)據(jù)塊中哪一個(gè)是新的物理數(shù)據(jù)塊或者哪一個(gè)內(nèi)容要被復(fù)制到這個(gè)物理數(shù)據(jù)塊。例如,新的物理數(shù)據(jù)塊的更新索引可這樣設(shè)置,使這個(gè)更新索引的值比舊的物理數(shù)據(jù)塊的更新索引高。因此,當(dāng)物理數(shù)據(jù)塊的更新索引被檢查以確定哪一個(gè)物理數(shù)據(jù)塊是新物理數(shù)據(jù)塊時(shí),可確定具有較高的更新索引的物理數(shù)據(jù)塊是新物理數(shù)據(jù)塊。當(dāng)確定之后,在例如使用一個(gè)電源管理數(shù)據(jù)塊時(shí),在一個(gè)包括非易失存儲(chǔ)器的存儲(chǔ)系統(tǒng)中先前已經(jīng)發(fā)生過(guò)電源故障,那么任何已經(jīng)具有不止一個(gè)關(guān)聯(lián)的物理數(shù)據(jù)塊的邏輯數(shù)據(jù)塊可這樣識(shí)別使物理數(shù)據(jù)塊可被分解,例如通過(guò)使用更新索引。在一個(gè)實(shí)施例中,可具有不止一個(gè)關(guān)聯(lián)的物理數(shù)據(jù)塊的實(shí)際上唯一的邏輯數(shù)據(jù)塊是當(dāng)電源故障發(fā)生時(shí)正在寫(xiě)或更新的過(guò)程中的最后的邏輯數(shù)據(jù)塊。圖8是一個(gè)過(guò)程流程圖,示出依照本發(fā)明實(shí)施例與一個(gè)識(shí)別和處理與一個(gè)單一的邏輯數(shù)據(jù)塊關(guān)聯(lián)的物理數(shù)據(jù)塊的方法關(guān)聯(lián)的步驟。過(guò)程900開(kāi)始于步驟904,在該步驟中在存儲(chǔ)器組件的電源或者由于故意關(guān)閉電源或者意外的電源故障而被切斷之后的某個(gè)時(shí)候給存儲(chǔ)器組件提供電源。在為存儲(chǔ)器組件提供電源之后,可讀取存儲(chǔ)器組件的電源管理數(shù)據(jù)塊中的頁(yè)以確定電源故障是否發(fā)生。如上面所討論的,當(dāng)一個(gè)關(guān)閉簽名是電源管理數(shù)據(jù)塊中有效的最近簽名,那么表示存儲(chǔ)器組件先前的關(guān)閉是故意關(guān)閉電源。否則,一般表示存儲(chǔ)器組件先前的關(guān)閉是由于電源故障。在步驟912中作出有關(guān)電源故障是否發(fā)生過(guò)的判斷。如果確定電源故障沒(méi)有發(fā)生,那么可能表示沒(méi)有要分解成單一邏輯數(shù)據(jù)塊的物理數(shù)據(jù)塊。因此,識(shí)別與分解物理數(shù)據(jù)塊的過(guò)程完成??商鎿Q地,如果在步驟912中確定電源故障或異常關(guān)閉發(fā)生過(guò),那么可能存在要分解的物理數(shù)據(jù)塊。因此,過(guò)程流程從步驟912移到步驟916,在該步驟中讀取與存儲(chǔ)器組件關(guān)聯(lián)的物理數(shù)據(jù)塊的系統(tǒng)開(kāi)銷(xiāo)區(qū)域。讀取系統(tǒng)開(kāi)銷(xiāo)區(qū)域可包括讀取通常存儲(chǔ)在系統(tǒng)開(kāi)銷(xiāo)區(qū)域中的更新索引,以及讀取屬于每個(gè)物理數(shù)據(jù)塊所關(guān)聯(lián)的邏輯數(shù)據(jù)塊的信息。一旦讀取存儲(chǔ)器組件的物理數(shù)據(jù)塊的系統(tǒng)開(kāi)銷(xiāo)區(qū)域,就在步驟920中確定是否有任何具有不止一個(gè)關(guān)聯(lián)的物理數(shù)據(jù)塊的邏輯數(shù)據(jù)塊。如果確定存在具有不止一個(gè)關(guān)聯(lián)的物理數(shù)據(jù)塊的邏輯數(shù)據(jù)塊,則過(guò)程流程移到步驟924,在該步驟中從與一個(gè)共同的邏輯數(shù)據(jù)塊關(guān)聯(lián)的物理數(shù)據(jù)塊的系統(tǒng)開(kāi)銷(xiāo)區(qū)域中獲得更新索引,使物理數(shù)據(jù)塊的更新索引可被比較。應(yīng)該意識(shí)到當(dāng)存在多個(gè)具有不止一個(gè)關(guān)聯(lián)的物理數(shù)據(jù)塊的邏輯數(shù)據(jù)塊時(shí),對(duì)應(yīng)與一個(gè)邏輯數(shù)據(jù)塊關(guān)聯(lián)的物理數(shù)據(jù)塊的更新索引可以全部獲得。換句話說(shuō),實(shí)際上所有具有不止一個(gè)關(guān)聯(lián)的物理數(shù)據(jù)塊的邏輯數(shù)據(jù)塊可通過(guò)獲得實(shí)際上所有與這樣的邏輯數(shù)據(jù)塊關(guān)聯(lián)的物理數(shù)據(jù)塊的更新索引而被處理。在從物理數(shù)據(jù)塊獲得更新索引之后,在步驟928中分解物理數(shù)據(jù)塊,使每個(gè)邏輯數(shù)據(jù)塊具有一個(gè)單一的關(guān)聯(lián)的物理數(shù)據(jù)塊。通常這樣分解物理數(shù)據(jù)塊,使一組與一個(gè)共同的邏輯數(shù)據(jù)塊關(guān)聯(lián)的物理數(shù)據(jù)塊的更新索引被用于識(shí)別物理數(shù)據(jù)塊中哪一個(gè)是最近與這個(gè)共同的邏輯數(shù)據(jù)塊關(guān)聯(lián)的。分解物理數(shù)據(jù)塊還可包括實(shí)際上將所有當(dāng)前的與這個(gè)共同的邏輯數(shù)據(jù)塊關(guān)聯(lián)的信息或數(shù)據(jù)提供給與這個(gè)共同的邏輯數(shù)據(jù)塊最近關(guān)聯(lián)的物理數(shù)據(jù)塊。緊接著分解物理數(shù)據(jù)塊,如果需要在步驟932可執(zhí)行其它數(shù)據(jù)恢復(fù)。其它數(shù)據(jù)恢復(fù)可包括,例如,恢復(fù)作為異常中斷復(fù)制過(guò)程的結(jié)果所失去的簇。一旦執(zhí)行了數(shù)據(jù)恢復(fù),識(shí)別與分解物理數(shù)據(jù)塊的過(guò)程就完成了?;氐讲襟E920,如果確定沒(méi)有具有不止一個(gè)關(guān)聯(lián)的物理數(shù)據(jù)塊的邏輯數(shù)據(jù)塊,那么表示不存在要分解的物理數(shù)據(jù)塊。因此,過(guò)程流程移到步驟936,在該步驟中如需要可執(zhí)行其它數(shù)據(jù)塊。在執(zhí)行了任何其它所需的數(shù)據(jù)恢復(fù)后,識(shí)別和分解物理數(shù)據(jù)塊的過(guò)程完成。一般而言,在軟件例如作為程序編碼設(shè)備或作為包括非易失存儲(chǔ)器或非易失存儲(chǔ)器組件的宿主系統(tǒng)的固件中,提供與實(shí)現(xiàn)、維護(hù)和利用電源管理數(shù)據(jù)塊關(guān)聯(lián)的功能。在圖9中示出一個(gè)適合的系統(tǒng)結(jié)構(gòu)的實(shí)施例,這個(gè)系統(tǒng)結(jié)構(gòu)與提供給宿主系統(tǒng)使它能實(shí)現(xiàn)、維護(hù)和使用電源管理數(shù)據(jù)塊的軟件或固件關(guān)聯(lián)。系統(tǒng)結(jié)構(gòu)700通常包括各種各樣的模塊,這些模塊可包括但不限于此,應(yīng)用程序接口模塊704、系統(tǒng)管理程序模塊708、數(shù)據(jù)管理程序模塊712、數(shù)據(jù)完整性管理程序模塊716和設(shè)備管理程序和接口模塊720。一般而言,系統(tǒng)結(jié)構(gòu)700可使用可由處理器例如圖1的處理器108存取的軟件編碼設(shè)備或固件。一般而言,應(yīng)用程序接口模塊704可被安排與宿主、操作系統(tǒng)或用戶直接通信。應(yīng)用程序接口模塊704還可與系統(tǒng)管理程序模塊708和數(shù)據(jù)管理程序模塊712。當(dāng)用戶想要讀、寫(xiě)或格式閃存時(shí),它發(fā)送請(qǐng)求至操作系統(tǒng),請(qǐng)求被傳遞給應(yīng)用程序接口。應(yīng)用程序接口依賴(lài)于請(qǐng)求將請(qǐng)求指向系統(tǒng)管理程序模塊708或數(shù)據(jù)管理程序模塊712。系統(tǒng)管理程序模塊708包括一個(gè)系統(tǒng)初始化子模塊724、一個(gè)擦除計(jì)數(shù)數(shù)據(jù)塊管理程序子模塊726和一個(gè)電源管理程序數(shù)據(jù)塊子模塊730。通常安排系統(tǒng)初始化子模塊724使一個(gè)初始化請(qǐng)求能被處理,以及一般與擦除計(jì)數(shù)數(shù)據(jù)塊管理子模塊726通信。擦除計(jì)數(shù)數(shù)據(jù)塊管理子模塊726包括使數(shù)據(jù)塊的擦除計(jì)數(shù)被存儲(chǔ)的功能和使用單獨(dú)的擦除計(jì)數(shù)使平均擦除計(jì)數(shù)被計(jì)算和更新的功能。在共同待批的美國(guó)專(zhuān)利申請(qǐng)No.10/281,739中描述擦除計(jì)數(shù)的使用,通過(guò)引用將該專(zhuān)利全部包括在此。系統(tǒng)初始化模塊724還被安排分解一個(gè)一對(duì)多邏輯對(duì)物理(logical-to-physical)數(shù)據(jù)塊分配,并且因此可利用更新索引。電源管理數(shù)據(jù)塊子模塊730可被安排使電源管理能被實(shí)現(xiàn)、維護(hù)和使用。作為例子,電源管理數(shù)據(jù)塊子模塊730可被安排分配電源管理數(shù)據(jù)塊,以及監(jiān)視寫(xiě)簽名和可被存儲(chǔ)在電源管理數(shù)據(jù)塊中的其它信息。除與應(yīng)用程序接口模塊704通信之外,系統(tǒng)管理程序模塊708還與數(shù)據(jù)管理程序模塊712以及設(shè)備管理程序和接口模塊720通信。與系統(tǒng)管理程序模塊708和應(yīng)用程序接口模塊704兩者通信的數(shù)據(jù)管理程序模塊712,可包括提供有效地將邏輯扇區(qū)翻譯成物理扇區(qū)的扇區(qū)映射功能。也就是說(shuō),安排數(shù)據(jù)管理程序模塊712將邏輯數(shù)據(jù)塊映射成物理數(shù)據(jù)塊。數(shù)據(jù)管理程序模塊712還可包括與操作系統(tǒng)和文件系統(tǒng)接口層關(guān)聯(lián)的功能,以及使數(shù)據(jù)塊內(nèi)的組能被管理,如在共同待批的美國(guó)專(zhuān)利申請(qǐng)No.10/281,855中描述的,通過(guò)引用已經(jīng)包括該專(zhuān)利全部。與系統(tǒng)管理程序模塊708、數(shù)據(jù)管理程序712和數(shù)據(jù)完整性管理器716通信的設(shè)備管理程序和接口模塊720,一般提供一個(gè)閃存接口,并包括與硬件抽象(hardwareabstraction)例如I/O接口關(guān)聯(lián)的功能。數(shù)據(jù)完整性模塊716在其它功能中提供ECC處理。雖然只描述了少數(shù)本發(fā)明的實(shí)施例,但是應(yīng)該理解本發(fā)明可在很多其它不脫離本發(fā)明的精神或范圍的特殊形式中具體化。作為例子,雖然通常將電源管理模塊描述為與NAND存儲(chǔ)器例如MLCNAND存儲(chǔ)器關(guān)聯(lián)。不過(guò)一般而言,可相對(duì)于實(shí)質(zhì)上任何適合的存儲(chǔ)器或存儲(chǔ)系統(tǒng)實(shí)現(xiàn)電源管理數(shù)據(jù)塊。在初始化簽名和關(guān)閉簽名中包括的位數(shù)可很大地變化。在一個(gè)實(shí)施例中,在簽名中包括的位數(shù)可依賴(lài)于特殊系統(tǒng)的要求。例如,在簽名中包括的位數(shù)可少到一位,或多到包括在電源管理數(shù)據(jù)塊的一個(gè)頁(yè)中的位數(shù)??珊艽蟮刈兏c本發(fā)明各種方法關(guān)聯(lián)的步驟。一般而言,在不脫離本發(fā)明的精神和范圍下可增加、刪除、重排序和改變步驟。因此,要認(rèn)為這些實(shí)例是例示性而非限制性的,并且本發(fā)明不受限于在此給出的細(xì)節(jié),而是可在后附的權(quán)利要求書(shū)的范圍內(nèi)修改的本發(fā)明。權(quán)利要求1.利用存儲(chǔ)系統(tǒng)的方法,所述存儲(chǔ)系統(tǒng)包括非易失存儲(chǔ)器,所述非易失存儲(chǔ)器包括至少一個(gè)保留存儲(chǔ)區(qū)域,所述方法包括下列步驟為所述存儲(chǔ)系統(tǒng)提供電源;初始化所述非易失存儲(chǔ)器;以及將第一簽名寫(xiě)入所述至少一個(gè)保留存儲(chǔ)區(qū)域,其中,所述第一簽名被安排表示所述存儲(chǔ)系統(tǒng)被成功地初始化。2.如權(quán)利要求1所述的方法,進(jìn)一步包括在所述存儲(chǔ)系統(tǒng)上執(zhí)行關(guān)閉電源過(guò)程;以及將第二簽名寫(xiě)入所述至少一個(gè)保留存儲(chǔ)區(qū)域,其中,所述第二簽名被安排表示所述關(guān)閉電源過(guò)程已被執(zhí)行。3.如權(quán)利要求2所述的方法,進(jìn)一步包括在將所述第二簽名寫(xiě)入所述至少一保留存儲(chǔ)區(qū)域之后從所述存儲(chǔ)系統(tǒng)移去電源。4.如權(quán)利要求2所述的方法,其特征在于,所述將第二簽名寫(xiě)入所述至少一保留存儲(chǔ)區(qū)域的步驟包括將附加的信息與所述第二簽名一起寫(xiě)入所述至少一個(gè)保留存儲(chǔ)區(qū)域。5.如權(quán)利要求2所述的方法,其特征在于,所述至少一個(gè)保留存儲(chǔ)區(qū)域是數(shù)據(jù)塊,并且所述將第二簽名寫(xiě)入所述至少一個(gè)保留存儲(chǔ)區(qū)域的步驟包括將所述第二簽名寫(xiě)入包括在所述數(shù)據(jù)塊中的第二頁(yè)。6.如權(quán)利要求5所述的方法,其特征在于,所述將第一簽名寫(xiě)入所述至少一個(gè)保留存儲(chǔ)區(qū)域的步驟包括將所述第一簽名寫(xiě)入包括在所述數(shù)據(jù)塊中的第一頁(yè)。7.如權(quán)利要求2所述的方法,其特征在于,所述執(zhí)行關(guān)閉電源過(guò)程的步驟包括完成文件復(fù)制過(guò)程和分解與所述非易失存儲(chǔ)器關(guān)聯(lián)的物理數(shù)據(jù)塊之一。8.如權(quán)利要求1所述的方法,其特征在于,所述將第一簽名寫(xiě)入所述至少一個(gè)存儲(chǔ)區(qū)域的步驟包括將附加信息與所述第一簽名一起寫(xiě)入所述至少一個(gè)保留存儲(chǔ)區(qū)域。9.如權(quán)利要求1所述的方法,其特征在于,所述至少一個(gè)保留存儲(chǔ)區(qū)域是數(shù)據(jù)塊,并且所述將第一簽名寫(xiě)入所述至少一個(gè)保留存儲(chǔ)區(qū)域的步驟包括將所述第一簽名寫(xiě)入包括在所述數(shù)據(jù)塊中的第一頁(yè)。10.如權(quán)利要求1所述的方法,其特征在于,所述非易失存儲(chǔ)器是NAND閃存存儲(chǔ)器。11.存儲(chǔ)系統(tǒng)包括包括至少一個(gè)保留存儲(chǔ)區(qū)域的非易失存儲(chǔ)器;提供電源的工具;初始化所述非易失存儲(chǔ)器的工具;以及將第一簽名寫(xiě)入所述至少一個(gè)保留存儲(chǔ)區(qū)域的工具,其中,所述第一簽名被安排表示所述非易失存儲(chǔ)器被成功地初始化。12.如權(quán)利要求11所述的存儲(chǔ)系統(tǒng),進(jìn)一步包括在所述存儲(chǔ)系統(tǒng)上執(zhí)行關(guān)閉電源過(guò)程的工具;以及將第二簽名寫(xiě)入所述至少一個(gè)保留存儲(chǔ)區(qū)域的工具,其中,所述第二簽名被安排表示所述關(guān)閉電源過(guò)程已被執(zhí)行。13.如權(quán)利要求12所述的存儲(chǔ)系統(tǒng),其特征在于,所述至少一個(gè)保留存儲(chǔ)區(qū)域是數(shù)據(jù)塊,并且所述將第一簽名寫(xiě)入所述至少一個(gè)保留存儲(chǔ)區(qū)域的步驟包括將所述第一簽名寫(xiě)入包括在所述數(shù)據(jù)塊中的第一頁(yè),并且所述將第二簽名寫(xiě)入所述至少一個(gè)保留存儲(chǔ)區(qū)域的步驟包括將所述第二簽名寫(xiě)入包括在所述數(shù)據(jù)塊中的第二頁(yè)。14.如權(quán)利要求11所述的存儲(chǔ)系統(tǒng),其特征在于,所述非易失存儲(chǔ)器是NAND閃存存儲(chǔ)器。15.存儲(chǔ)設(shè)備包括被安排維護(hù)在非易失存儲(chǔ)器內(nèi)的至少一個(gè)保留存儲(chǔ)區(qū)域的編碼器;當(dāng)所述非易失存儲(chǔ)器被成功初始化時(shí),使第一簽名被寫(xiě)入所述至少一個(gè)保留存儲(chǔ)區(qū)域以表示所述非易失存儲(chǔ)器被成功初始化的編碼器;以及被安排存儲(chǔ)所述編碼器的存儲(chǔ)扇區(qū)。16.如權(quán)利要求15所述的存儲(chǔ)設(shè)備,進(jìn)一步包括當(dāng)關(guān)閉電源過(guò)程被成功執(zhí)行時(shí),使第二簽名被寫(xiě)入所述至少一個(gè)保留存儲(chǔ)區(qū)域以表示所述關(guān)閉電源過(guò)程已被成功執(zhí)行的編碼器。17.如權(quán)利要求16所述的存儲(chǔ)設(shè)備,其特征在于,所述至少一保留存儲(chǔ)區(qū)域是數(shù)據(jù)塊,并且所述使第一簽名被寫(xiě)入所述至少一個(gè)保留存儲(chǔ)區(qū)域的編碼器包括使所述第一簽名被寫(xiě)入包括在所述數(shù)據(jù)塊中的第一頁(yè)的編碼器,并且所述使第二簽名被寫(xiě)入所述至少一個(gè)保留存儲(chǔ)區(qū)域的編碼器包括使所述第二簽名被寫(xiě)入包括在所述數(shù)據(jù)塊中的第二頁(yè)的編碼器。18.如權(quán)利要求15所述的存儲(chǔ)設(shè)備,其特征在于,所述編碼器是軟件編碼器和固件編碼器之一。19.利用存儲(chǔ)系統(tǒng)的方法,所述存儲(chǔ)系統(tǒng)包括非易失存儲(chǔ)器,所述非易失存儲(chǔ)器包括至少一個(gè)保留存儲(chǔ)區(qū)域,所述方法包括下列步驟為所述存儲(chǔ)系統(tǒng)提供電源;確定所述存儲(chǔ)系統(tǒng)先前已經(jīng)經(jīng)歷實(shí)質(zhì)性正常的關(guān)閉電源過(guò)程的時(shí)間;當(dāng)確定所述存儲(chǔ)系統(tǒng)先前沒(méi)有經(jīng)歷正常的關(guān)閉電源過(guò)程時(shí),在所述非易失存儲(chǔ)器上執(zhí)行第一過(guò)程,所述第一過(guò)程被安排為使用準(zhǔn)備好所述非易失存儲(chǔ)器;以及當(dāng)確定所述存儲(chǔ)系統(tǒng)先前已經(jīng)經(jīng)歷正常的關(guān)閉電源過(guò)程時(shí),實(shí)質(zhì)性地允許使用所述非易失存儲(chǔ)器。20.如權(quán)利要求19所述的方法,其特征在于,所述實(shí)質(zhì)性地允許使用所述非易失存儲(chǔ)器的步驟包括將第一簽名寫(xiě)入所述至少一個(gè)保留存儲(chǔ)區(qū)域以表示所述非易失存儲(chǔ)器被實(shí)質(zhì)性地啟用。21.如權(quán)利要求19的所述方法,其特征在于,所述確定所述存儲(chǔ)系統(tǒng)先前已經(jīng)經(jīng)歷所述實(shí)質(zhì)性正常的關(guān)閉電源過(guò)程的時(shí)間的步驟包括確定所述至少一個(gè)保留存儲(chǔ)區(qū)域包括第一簽名的時(shí)間,所述第一簽名被安排表示所述正常關(guān)閉電源過(guò)程先前已經(jīng)發(fā)生。22.如權(quán)利要求21的所述方法,其特征在于,確定所述存儲(chǔ)系統(tǒng)先前已經(jīng)經(jīng)歷所述實(shí)質(zhì)性正常的關(guān)閉電源過(guò)程的時(shí)間的步驟進(jìn)一步包括確定所述至少一個(gè)保留存儲(chǔ)區(qū)域包括第二簽名的時(shí)間,所述第二簽名被安排表示所述存儲(chǔ)系統(tǒng)先前已經(jīng)經(jīng)歷初始化過(guò)程。23.如權(quán)利要求22所述的方法,其特征在于,當(dāng)確定所述至少一個(gè)保留存儲(chǔ)區(qū)域不包括所述第二簽名并且不包括所述第一簽名時(shí),所述第一過(guò)程是所述初始化過(guò)程。24.如權(quán)利要求22所述的方法,其特征在于,當(dāng)確定所述至少一個(gè)保留存儲(chǔ)區(qū)域包括所述第二簽名并且不包括所述第一簽名,所述第一過(guò)程是一數(shù)據(jù)恢復(fù)過(guò)程。25.如權(quán)利要求24的所述的方法,其特征在于,所述數(shù)據(jù)恢復(fù)過(guò)程被安排收回在所述非易失存儲(chǔ)器內(nèi)的內(nèi)存。26.如權(quán)利要求25所述的方法,其特征在于,所述數(shù)據(jù)恢復(fù)過(guò)程包括至少完成文件復(fù)制過(guò)程和分解與所述非易失存儲(chǔ)器關(guān)聯(lián)的物理數(shù)據(jù)塊之一。27.如權(quán)利要求19所述的方法,其特征在于,所述第一過(guò)程是數(shù)據(jù)恢復(fù)過(guò)程和存儲(chǔ)器初始化過(guò)程之一。28.如權(quán)利要求19所述的方法,其特征在于,所述非易失存儲(chǔ)器是NAND閃存存儲(chǔ)器。29.存儲(chǔ)系統(tǒng)包括非易失存儲(chǔ)器,所述非易失存儲(chǔ)器包括至少一個(gè)保留存儲(chǔ)區(qū)域;為所述存儲(chǔ)系統(tǒng)提供電源的工具;確定所述存儲(chǔ)系統(tǒng)先前已經(jīng)經(jīng)歷實(shí)質(zhì)性正常的關(guān)閉電源過(guò)程的時(shí)間的工具;當(dāng)確定所述存儲(chǔ)系統(tǒng)先前沒(méi)有經(jīng)歷正常的關(guān)閉電源過(guò)程時(shí),在所述非易失存儲(chǔ)器上執(zhí)行第一過(guò)程的工具,所述第一過(guò)程被安排為使用準(zhǔn)備好所述非易失存儲(chǔ)器;以及當(dāng)確定所述存儲(chǔ)器先前已經(jīng)經(jīng)歷正常關(guān)閉電源過(guò)程時(shí),實(shí)質(zhì)性地允許使用所述非易失存儲(chǔ)器的工具。30.如權(quán)利要求29所述的存儲(chǔ)系統(tǒng),其特征在于,所述實(shí)質(zhì)性地允許使用所述非易失存儲(chǔ)器的工具包括將第一簽名寫(xiě)入所述至少一個(gè)保留存儲(chǔ)區(qū)域以表示所述非易失存儲(chǔ)器的工具被實(shí)質(zhì)性地啟用。31.如權(quán)利要求29所述的存儲(chǔ)系統(tǒng),其特征在于,所述確定所述存儲(chǔ)系統(tǒng)先前已經(jīng)經(jīng)歷所述實(shí)質(zhì)性正常的關(guān)閉電源過(guò)程的時(shí)間的工具包括確定所述至少一個(gè)保留存儲(chǔ)區(qū)域包括第一簽名的時(shí)間的工具,所述第一簽名被安排表示所述正常關(guān)閉電源過(guò)程先前已經(jīng)發(fā)生。32.如權(quán)利要求31所述的存儲(chǔ)系統(tǒng),其特征在于,所述確定所述存儲(chǔ)系統(tǒng)先前已經(jīng)經(jīng)歷所述實(shí)質(zhì)性正常的關(guān)閉電源過(guò)程的時(shí)間的工具進(jìn)一步包括確定所述至少一個(gè)保留存儲(chǔ)區(qū)域包括第二簽名的時(shí)間的工具,所述第二簽名被安排表示所述存儲(chǔ)系統(tǒng)先前已經(jīng)經(jīng)歷初始化過(guò)程。33.如權(quán)利要求32所述的存儲(chǔ)系統(tǒng),其特征在于,當(dāng)確定所述至少一個(gè)保留存儲(chǔ)區(qū)域不包括所述第二簽名并且不包括所述第一簽名時(shí),所述第一過(guò)程是所述初始化過(guò)程。34.如權(quán)利要求32所述的存儲(chǔ)系統(tǒng),其特征在于,當(dāng)確定所述至少一個(gè)保留存儲(chǔ)區(qū)域包括所述第二簽名并且不包括所述第一簽名時(shí),所述第一過(guò)程是數(shù)據(jù)恢復(fù)過(guò)程。35.存儲(chǔ)系統(tǒng),包括使確定所述存儲(chǔ)系統(tǒng)先前已經(jīng)經(jīng)歷實(shí)質(zhì)性正常的關(guān)閉電源過(guò)程的時(shí)間的編碼器;被安排當(dāng)確定所述存儲(chǔ)系統(tǒng)先前沒(méi)有經(jīng)歷正常關(guān)閉電源過(guò)程時(shí)使第一過(guò)程在與所述存儲(chǔ)系統(tǒng)關(guān)聯(lián)的非易失存儲(chǔ)器上被執(zhí)行的編碼器,其特征在于,所述第一過(guò)程被安排為使用準(zhǔn)備好所述非易失存儲(chǔ)器;被安排當(dāng)所述存儲(chǔ)系統(tǒng)先前已經(jīng)經(jīng)歷正常的關(guān)閉電源過(guò)程時(shí)使所述非易失存儲(chǔ)器被允許使用的編碼器;以及存儲(chǔ)所述編碼器的存儲(chǔ)區(qū)域。36.如權(quán)利要求35所述的存儲(chǔ)系統(tǒng),其特征在于,所述被安排使所述非易失存儲(chǔ)器被允許使用的編碼器包括被安排將第一簽名寫(xiě)入所述非易失存儲(chǔ)器的至少一個(gè)保留存儲(chǔ)區(qū)域以表示所述非易失存儲(chǔ)器被允許使用的編碼器。37.如權(quán)利要求35所述的存儲(chǔ)系統(tǒng),其特征在于,所述使確定所述存儲(chǔ)系統(tǒng)先前已經(jīng)經(jīng)歷所述實(shí)質(zhì)性正常的關(guān)閉電源過(guò)程的時(shí)間的編碼器包括被安排使確定所述非易失存儲(chǔ)器的至少一個(gè)保留存儲(chǔ)區(qū)域包括第一簽名的時(shí)間的編碼器,所述第一簽名被安排表示所述正常的關(guān)閉電源過(guò)程先前已經(jīng)發(fā)生。38.如權(quán)利要求37所述的存儲(chǔ)系統(tǒng),其特征在于,所述使確定所述存儲(chǔ)系統(tǒng)先前已經(jīng)經(jīng)歷所述實(shí)質(zhì)性正常的關(guān)閉電源過(guò)程的時(shí)間的編碼器進(jìn)一步包括被安排使確定所述至少一個(gè)保留存儲(chǔ)區(qū)域包括第二簽名的時(shí)間的編碼器,所述第二簽名被安排表示所述存儲(chǔ)系統(tǒng)先前已經(jīng)經(jīng)歷初始化過(guò)程。39.如權(quán)利要求38所述的存儲(chǔ)系統(tǒng),其特征在于,當(dāng)確定所述至少一個(gè)保留存儲(chǔ)區(qū)域不包括所述第二簽名并且不包括所述第一簽名時(shí),所述第一過(guò)程是所述初始化過(guò)程。40.如權(quán)利要求38所述的存儲(chǔ)系統(tǒng),其特征在于,當(dāng)確定所述至少一個(gè)保留存儲(chǔ)區(qū)域包括所述第二簽名并且不包括所述第一簽名,所述第一過(guò)程是數(shù)據(jù)恢復(fù)過(guò)程。41.存儲(chǔ)系統(tǒng)包括非易失存儲(chǔ)器;以及控制設(shè)備,所述控制設(shè)備被安排確定所述存儲(chǔ)系統(tǒng)先前已經(jīng)經(jīng)歷實(shí)質(zhì)性地正常的關(guān)閉電源過(guò)程的時(shí)間,當(dāng)確定所述存儲(chǔ)系統(tǒng)先前沒(méi)有經(jīng)歷正常的關(guān)閉電源過(guò)程時(shí),在所述非易失存儲(chǔ)器上執(zhí)行第一過(guò)程,其中,所述第一過(guò)程被安排為使用準(zhǔn)備好所述非易失存儲(chǔ),并且當(dāng)確定所述存儲(chǔ)系統(tǒng)先前已經(jīng)經(jīng)歷正常的關(guān)閉電源過(guò)程時(shí),實(shí)質(zhì)性地允許使用所述非易失存儲(chǔ)器。42.如權(quán)利要求41所述的存儲(chǔ)系統(tǒng),其特征在于,所述第一過(guò)程是數(shù)據(jù)恢復(fù)過(guò)程和存儲(chǔ)器初始化過(guò)程之一。43.如權(quán)利要求41所述的系統(tǒng),其特征在于,所述非易失存儲(chǔ)器是NAND閃存存儲(chǔ)器。44.存儲(chǔ)系統(tǒng)包括非易失存儲(chǔ)器,所述非易失存儲(chǔ)器包括至少一個(gè)保留存儲(chǔ)區(qū)域;控制器,所述控制器被安排初始化所述非易失存儲(chǔ)器并且將第一簽名寫(xiě)入所述至少一個(gè)保留存儲(chǔ)區(qū)域,其中,所述第一簽名被安排表示所述存儲(chǔ)系統(tǒng)被成功地初始化。45.如權(quán)利要求44所述的存儲(chǔ)系統(tǒng),其特征在于,所述控制器進(jìn)一步被安排在所述存儲(chǔ)系統(tǒng)上執(zhí)行關(guān)閉電源過(guò)程并且將第二簽名寫(xiě)入所述至少一個(gè)保留存儲(chǔ)區(qū)域,其中,所述第二簽名被安排表示所述關(guān)閉電源過(guò)程已被執(zhí)行。46.如權(quán)利要求44所述的系統(tǒng),其特征在于,所述非易失存儲(chǔ)器是NAND閃存存儲(chǔ)器。全文摘要描述了使非易失存儲(chǔ)器的開(kāi)啟電源過(guò)程能有效地發(fā)生的方法與裝置。依照本發(fā)明的一個(gè)方面,利用具有帶有至少一個(gè)保留存儲(chǔ)區(qū)域非易失存儲(chǔ)器存儲(chǔ)系統(tǒng)的方法包括給存儲(chǔ)系統(tǒng)提供電源,初始化非易失存儲(chǔ)器,以及將第一簽名寫(xiě)入保留存儲(chǔ)區(qū)域。第一簽名被安排表示存儲(chǔ)系統(tǒng)被成功地初始化。在一個(gè)實(shí)施例中,這個(gè)方法還包括在存儲(chǔ)系統(tǒng)上執(zhí)行關(guān)閉電源過(guò)程,以及將表示關(guān)閉電源過(guò)程已經(jīng)被執(zhí)行的第二簽名寫(xiě)入保留存儲(chǔ)區(qū)域。文檔編號(hào)G06F12/16GK1540672SQ20031010464公開(kāi)日2004年10月27日申請(qǐng)日期2003年10月28日優(yōu)先權(quán)日2002年10月28日發(fā)明者張欽澤,B·卡瓦米,F·薩比特—沙希,S·約丁,咼,忍亍誠(chéng)申請(qǐng)人:三因迪斯克公司