048]進一步的,所述裝置還包括:
[0049]第一檢測單元23,用于在將校驗后錯誤比特數(shù)大于或等于第二閾值的校驗塊或者出現(xiàn)重讀的校驗塊標記為問題塊之后,檢測連續(xù)出現(xiàn)問題塊的個數(shù);
[0050]標記單元24,用于在連續(xù)出現(xiàn)問題塊的個數(shù)大于或等于第三閾值時,將所述嵌入式存儲器中所有寫入有效數(shù)據(jù)的MLC塊標記為問題塊,所述MLC塊是指多層單元閃存中既在最低有效位頁寫入數(shù)據(jù)也在非最低有效位頁上寫入數(shù)據(jù)的存儲塊。
[0051]進一步的,所述裝置還包括:
[0052]處理單元25,用于在將所述問題塊上的有效數(shù)據(jù)搬移到所述替換塊之后,對搬移到所述替換塊上的有效數(shù)據(jù)進行ECC校驗,判斷搬移到所述替換塊上的有效數(shù)據(jù)的錯誤比特數(shù)是否小于第二閾值,若是,則擦除該問題塊;若否,將該替換塊標記為壞塊,并將該問題塊上的有效數(shù)據(jù)搬移到新的替換塊。
[0053]進一步的,所述裝置還包括:
[0054]第二檢測單元26,用于在嵌入式存儲器上電后,檢測所述嵌入式存儲器的上電次數(shù),當所述嵌入式存儲器的上電次數(shù)小于第四閾值時,控制所述校驗單元以及替換單元的執(zhí)行。
[0055]綜上所述,本發(fā)明實施例通過對錯誤比特數(shù)達到第二閾值的存儲塊上的數(shù)據(jù)或者出現(xiàn)重讀的閃存塊上的數(shù)據(jù)進行預(yù)替換,能大大減少嵌入式存儲器中存儲塊上數(shù)據(jù)出錯的概率,從而有效提高嵌入式存儲器性能的穩(wěn)定性,具有較強的易用性和實用性。
[0056]所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,為了描述的方便和簡潔,僅以上述各功能單元、模塊的劃分進行舉例說明,實際應(yīng)用中,可以根據(jù)需要而將上述功能分配由不同的功能單元、模塊完成,即將所述裝置的內(nèi)部結(jié)構(gòu)劃分成不同的功能單元或模塊,以完成以上描述的全部或者部分功能。實施例中的各功能單元、模塊可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中,上述集成的單元既可以采用硬件的形式實現(xiàn),也可以采用軟件功能單元的形式實現(xiàn)。另外,各功能單元、模塊的具體名稱也只是為了便于相互區(qū)分,并不用于限制本申請的保護范圍。上述裝置中單元、模塊的具體工作過程,可以參考前述方法實施例中的對應(yīng)過程,在此不再贅述。
[0057]本領(lǐng)域普通技術(shù)人員可以意識到,結(jié)合本文中所公開的實施例描述的各示例的單元及算法步驟,能夠以電子硬件、或者計算機軟件和電子硬件的結(jié)合來實現(xiàn)。這些功能宄竟以硬件還是軟件方式來執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計約束條件。專業(yè)技術(shù)人員可以對每個特定的應(yīng)用來使用不同方法來實現(xiàn)所描述的功能,但是這種實現(xiàn)不應(yīng)認為超出本發(fā)明的范圍。
[0058]在本發(fā)明所提供的實施例中,應(yīng)該理解到,所揭露的裝置和方法,可以通過其它的方式實現(xiàn)。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述模塊或單元的劃分,僅僅為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式,例如多個單元或組件可以結(jié)合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通訊連接可以是通過一些接口,裝置或單元的間接耦合或通訊連接,可以是電性,機械或其它的形式。
[0059]所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)單元上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部單元來實現(xiàn)本實施例方案的目的。
[0060]另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現(xiàn),也可以采用軟件功能單元的形式實現(xiàn)。
[0061]所述集成的單元如果以軟件功能單元的形式實現(xiàn)并作為獨立的產(chǎn)品銷售或使用時,可以存儲在一個計算機可讀取存儲介質(zhì)中?;谶@樣的理解,本發(fā)明實施例的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻的部分或者該技術(shù)方案的全部或部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在一個存儲介質(zhì)中,包括若干指令用以使得一臺計算機設(shè)備(可以是個人計算機,服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)或處理器(processor)執(zhí)行本發(fā)明實施例各個實施例所述方法的全部或部分步驟。而前述的存儲介質(zhì)包括:U盤、移動硬盤、只讀存儲器(ROM,Read-Only Memory)、隨機存取存儲器(RAM,Random Access Memory)、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
[0062]以上所述實施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡管參照前述實施例對本發(fā)明進行了詳細的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當理解:其依然可以對前述各實施例所記載的技術(shù)方案進行修改,或者對其中部分技術(shù)特征進行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明實施例各實施例技術(shù)方案的精神和范圍。
【主權(quán)項】
1.一種嵌入式存儲器的數(shù)據(jù)保護方法,其特征在于,所述嵌入式存儲器至少包括一多層單元閃存,所述方法包括: 在嵌入式存儲器上電后,選取所述嵌入式存儲器中有效數(shù)據(jù)量大于或等于第一閾值的存儲塊作為校驗塊,并對所述校驗塊進行ECC校驗; 將校驗后錯誤比特數(shù)大于或等于第二閾值的校驗塊或者出現(xiàn)重讀的校驗塊標記為問題塊,并對所述問題塊上的有效數(shù)據(jù)進行預(yù)替換。
2.如權(quán)利要求1所述的方法,其特征在于,所述對所述問題塊上的有效數(shù)據(jù)進行預(yù)替換包括: 選取所述嵌入式存儲器中空的存儲塊作為替換塊; 將所述問題塊上的有效數(shù)據(jù)搬移到所述替換塊。
3.如權(quán)利要求1或2所述的方法,其特征在于,在將校驗后錯誤比特數(shù)大于或等于第二閾值的校驗塊或者出現(xiàn)重讀的校驗塊標記為問題塊之后,所述方法還包括: 檢測連續(xù)出現(xiàn)問題塊的個數(shù); 在連續(xù)出現(xiàn)問題塊的個數(shù)大于或等于第三閾值時,將所述嵌入式存儲器中所有寫入有效數(shù)據(jù)的MLC塊標記為問題塊,所述MLC塊是指多層單元閃存中既在最低有效位頁寫入數(shù)據(jù)也在非最低有效位頁上寫入數(shù)據(jù)的存儲塊。
4.如權(quán)利要求2所述的方法,其特征在于,在將所述問題塊上的有效數(shù)據(jù)搬移到所述替換塊之后,所述方法還包括: 對搬移到所述替換塊上的有效數(shù)據(jù)進行ECC校驗,判斷搬移到所述替換塊上的有效數(shù)據(jù)的錯誤比特數(shù)是否小于第二閾值,若是,則擦除該問題塊;若否,將該替換塊標記為壞塊,并將該問題塊上的有效數(shù)據(jù)搬移到新的替換塊。
5.如權(quán)利要求1所述的方法,其特征在于,在嵌入式存儲器上電后,所述方法還包括: 檢測所述嵌入式存儲器的上電次數(shù),當所述嵌入式存儲器的上電次數(shù)小于第四閾值時,執(zhí)行選取所述嵌入式存儲器中有效數(shù)據(jù)量大于或等于第一閾值的存儲塊作為校驗塊,并對所述校驗塊進行ECC校驗,以及將校驗后錯誤比特數(shù)大于或等于第二閾值的校驗塊或者出現(xiàn)重讀的校驗塊標記為問題塊,并對所述問題塊上的有效數(shù)據(jù)進行預(yù)替換的步驟。
6.—種嵌入式存儲器的數(shù)據(jù)保護裝置,其特征在于,所述嵌入式存儲器至少包括一多層單元閃存,所述裝置包括: 校驗單元,用于在嵌入式存儲器上電后,選取所述嵌入式存儲器中有效數(shù)據(jù)量大于或等于第一閾值的存儲塊作為校驗塊,并對所述校驗塊進行ECC校驗; 替換單元,用于將校驗后錯誤比特數(shù)大于或等于第二閾值的校驗塊或者出現(xiàn)重讀的校驗塊標記為問題塊,并對所述問題塊上的有效數(shù)據(jù)進行預(yù)替換。
7.如權(quán)利要求6所述的裝置,其特征在于,所述替換單元包括: 選取模塊,用于選取所述嵌入式存儲器中空的存儲塊作為替換塊; 替換模塊,用于將所述問題塊上的有效數(shù)據(jù)搬移到所述替換塊。
8.如權(quán)利要求6或7所述的裝置,其特征在于,所述裝置還包括: 第一檢測單元,用于在將校驗后錯誤比特數(shù)大于或等于第二閾值的校驗塊或者出現(xiàn)重讀的校驗塊標記為問題塊之后,檢測連續(xù)出現(xiàn)問題塊的個數(shù); 標記單元,用于在連續(xù)出現(xiàn)問題塊的個數(shù)大于或等于第三閾值時,將所述嵌入式存儲器中所有寫入有效數(shù)據(jù)的MLC塊標記為問題塊,所述MLC塊是指多層單元閃存中既在最低有效位頁寫入數(shù)據(jù)也在非最低有效位頁上寫入數(shù)據(jù)的存儲塊。
9.如權(quán)利要求7所述的裝置,其特征在于,所述裝置還包括: 處理單元,用于在將所述問題塊上的有效數(shù)據(jù)搬移到所述替換塊之后,對搬移到所述替換塊上的有效數(shù)據(jù)進行ECC校驗,判斷搬移到所述替換塊上的有效數(shù)據(jù)的錯誤比特數(shù)是否小于第二閾值,若是,則擦除該問題塊;若否,將該替換塊標記為壞塊,并將該問題塊上的有效數(shù)據(jù)搬移到新的替換塊。
10.如權(quán)利要求6所述的裝置,其特征在于,所述裝置還包括: 第二檢測單元,用于在嵌入式存儲器上電后,檢測所述嵌入式存儲器的上電次數(shù),當所述嵌入式存儲器的上電次數(shù)小于第四閾值時,控制所述校驗單元以及替換單元的執(zhí)行。
【專利摘要】本發(fā)明適用于存儲器技術(shù)領(lǐng)域,提供了一種嵌入式存儲器的數(shù)據(jù)保護方法及裝置。所述方法包括:在嵌入式存儲器上電后,選取所述嵌入式存儲器中有效數(shù)據(jù)量大于或等于第一閾值的存儲塊作為校驗塊,并對所述校驗塊進行ECC校驗;將校驗后錯誤比特數(shù)大于或等于第二閾值的校驗塊或者出現(xiàn)重讀的校驗塊標記為問題塊,并對所述問題塊上的有效數(shù)據(jù)進行預(yù)替換。本發(fā)明通過對錯誤比特數(shù)達到第二閾值的存儲塊上的數(shù)據(jù)或者出現(xiàn)重讀的閃存塊上的數(shù)據(jù)進行預(yù)替換,能大大減少嵌入式存儲器中存儲塊上數(shù)據(jù)出錯的概率,從而有效提高嵌入式存儲器性能的穩(wěn)定性。
【IPC分類】G06F11-10, G06F12-02
【公開號】CN104794019
【申請?zhí)枴緾N201510185709
【發(fā)明人】李志雄, 鄧恩華, 郭丹
【申請人】深圳市江波龍電子有限公司
【公開日】2015年7月22日
【申請日】2015年4月17日