TWI463311B - 快閃記憶體儲存設備的資料儲存方法和裝置 - Google Patents

快閃記憶體儲存設備的資料儲存方法和裝置 Download PDF

Info

Publication number
TWI463311B
TWI463311B TW100130029A TW100130029A TWI463311B TW I463311 B TWI463311 B TW I463311B TW 100130029 A TW100130029 A TW 100130029A TW 100130029 A TW100130029 A TW 100130029A TW I463311 B TWI463311 B TW I463311B
Authority
TW
Taiwan
Prior art keywords
data
storage
storage unit
identifier
storage area
Prior art date
Application number
TW100130029A
Other languages
English (en)
Other versions
TW201303585A (zh
Inventor
Ruiqing Wang
Dateng Li
Wei Wu
Original Assignee
Mstar Semiconductor Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mstar Semiconductor Inc filed Critical Mstar Semiconductor Inc
Publication of TW201303585A publication Critical patent/TW201303585A/zh
Application granted granted Critical
Publication of TWI463311B publication Critical patent/TWI463311B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1032Reliability improvement, data loss prevention, degraded operation etc
    • G06F2212/1036Life time enhancement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7202Allocation control and policies

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Read Only Memory (AREA)

Description

快閃記憶體儲存設備的資料儲存方法和裝置
本發明屬於資料儲存技術領域,尤其涉及一種快閃記憶體儲存設備的資料儲存方法和裝置。
現有的電子產品中,基本上都會用到儲存設備。目前比較常見儲存設備有快閃記憶體和電可讀寫可編程唯讀記憶體(Electrically Erasable Programmable Read-Only Memory,EEPROM),這兩種儲存設備分別具有以下優缺點:
a1)、快閃記憶體的優點是容量大且價格低;缺點是擦寫速度慢,而且必須先擦後寫,每次擦除的最小單位為一個BANK,即64KB。而且單位儲存空間可讀寫次數少,約為10萬次;
a2)、EEPROM的缺點是容量小且價格高;優點是擦寫速度快,可單個位元組擦寫,而且單位儲存空間的可讀寫次數多,可達到100萬次。
現有的儲存設備在儲存資料時,一般至少有兩部分資料需要儲存:程式部分和用戶資料部分。儲存設備出廠後,程式部分一般不會再改變,除非進行軟體升級,因此一般都會選擇快閃記憶體作為程式部分的儲存設備。而用戶資料部分經常會被用戶修改,對儲存設備的可讀寫次數和穩定性有較高的要求。
但是,如果為考慮成本而採用快閃記憶體儲存用戶資料,則會存在以下問題:快閃記憶體擦寫速度慢,而且大部分串週邊介面(Serial Peripheral Interface,SPI)的快閃記憶體必須以BANK(64KB)為最小擦除單位,一次擦除要100ms以上,擦除次數過多的話,勢必會影響快閃記憶體儲存設備的使用壽命,而且,對資料進行儲存時,速度也較慢。
本發明的目的在於提供一種快閃記憶體儲存設備的資料儲存方法和裝置,旨在延長快閃記憶體儲存設備的使用壽命,快速對資料進行儲存。
本發明是這樣實現的,一種快閃記憶體儲存設備的資料儲存方法,所述快閃記憶體儲存設備包括複數個儲存單元,所述方法包括以下步驟:查找並得到第一標識,所述第一標識對應於第一資料所在的儲存單元,所述第一資料為最新保存的資料;根據所述第一標識找到保存所述第一資料的儲存單元;將第二資料儲存至另一儲存單元;以及將所述第一標識對應於第二資料所在的所述另一儲存單元。
其中,所述方法還包括以下步驟:使用第二標識,並使對應於除第二資料所在的所述另一儲存單元之外所有儲存單元。
其中,將所述第一標識對應於第二資料所在的所述另一儲存單元的步驟包括:修改第一標識的儲存位置,使修改後的第一標識所在儲存位置對應第二資料所在的所述另一儲存單元的位置。
其中,所述快閃記憶體儲存設備的儲存單元數量為第一數量,每個儲存單元均有第二數量個位元組,在所述第一數量儲存單元中第一個儲存單元有第一數量個位元組分別用於儲存第一標識和第二標識,所述第二數量大於所述第一數量;所述第一個儲存單元中分別用於儲存第一標識和第二標識的第一數量位元組的相對位置與第一數量儲存單元的相對位置一一對應;其中對應於所述第一資料所在儲存單元的一位元組用於儲存所述第一標識,其餘所有位元組用於儲存其他第二標識,對應第一標識的位元組內容不同於對應第二標識的位元組內容;其中查找並得到第一標識及由所述第一標識找到保存第一資料的儲存單元步驟包括:從第一儲存單元的第一位元組開始往後一一識別;在識別到所述用於儲存第一標識的位元組時,確定所述位元組在第一儲存單元的連續第一數量位元組中的相對位置;以及,確定在第一數量儲存單元中對應所述位元組的相對位置的儲存單元為保存第一資料的儲存單元。
其中,所述第一數量是32,第二數量是2k,所述快閃記憶體儲存設備包括複數個儲存區,每個儲存區包括32個儲存單元,每個儲存區中的第一個儲存單元的前32個位元組用於儲存第一標識和第二標識。
其中,所述第一數量是64,第二數量是2k,所述複數個儲存單元的第一個儲存單元的前64個位元組用於儲存所述第一標識和第二標識。
其中,將第二資料儲存至另一儲存單元的步驟包括:將第二資料儲存至第一資料所在儲存區之外的另一儲存區中另一儲存單元;所述將所述第一標識對應於第二資料所在的所述另一儲存單元的步驟包括:確定第二資料所在的所述另一儲存單元在另一儲存區中的相對位置,並找到與第二資料所在的所述另一儲存單元的相對位置對應的另一儲存區的第一個儲存單元的一位元組,將所述第一標識儲存至所述位元組,使所述第一標識對應於第二資料所在的所述另一儲存單元;所述使用第二標識,並使其定義為除第二資料所在的所述另一儲存單元之外所有的儲存單元步驟包括:將第一資料所在儲存區的第一個儲存單元中用於儲存第一標識的位元組修改為儲存第二標識。
其中,將第二資料儲存至第一資料所在儲存區之外的另一儲存區中另一儲存單元之前,判斷除第一標識對應的儲存單元所在的儲存區之外所述另一儲存區是否存在空閒儲存單元;在判斷所述另一儲存區不存在空閒儲存單元時,將第二資料儲存至快閃記憶體儲存設備中其他儲存區的空閒儲存單元;確定第二資料所在儲存單元的相對位置,並找到與第二資料所在儲存單元相對位置對應的所述其他儲存區的第一個儲存單元的位元組,將所述第一標識儲存至所述位元組,使其對應第二資料所在儲存單元;將第一資料所在儲存區的第一個儲存單元中用於儲存第一標識的位元組修改為儲存第二標識;以及在儲存第二資料後,對所述另一儲存區進行擦除操作。
其中,在對所述另一儲存區進行擦除操作後,需要繼續儲存第三資料時,包括:將第三資料儲存至所述另一儲存區的其中一空閒儲存單元;確定第三資料所在儲存單元的相對位置,並找到與第三資料所在儲存單元的相對位置對應的另一儲存區的第一個儲存單元的位元組,將所述第一標識儲存至所述位元組,使其對應第三資料所在儲存單元;將第二資料所在儲存區的第一個儲存單元中用於儲存第一標識的位元組修改為儲存第二標識。
本發明是這樣實現的,一種快閃記憶體儲存設備的資料儲存裝置,所述快閃記憶體儲存設備包括複數個儲存單元,所述裝置包括:標識查找模組,用於查找並得到第一標識,其中,所述第一標識對應於第一資料所在的儲存單元,所述第一資料為最新保存的資料;資料查找模組,用於根據所述第一標識找到保存第一資料的儲存單元;資料儲存模組,用於將第二資料儲存至另一儲存單元;標識處理模組,用於將所述第一標識對應於第二資料所在的所述另一儲存單元。
其中,所述標識處理模組,還用於使用第二標識,並使所述第二標識對應於除第二資料所在的所述另一儲存單元之外所有儲存單元。
其中,所述標識處理模組,還用於修改所述第一標識的儲存位置,使修改後的第一標識所在儲存位置對應於所述第二資料所在的所述另一儲存單元。
其中,所述快閃記憶體儲存設備的儲存單元數量為第一數量,每個儲存單元均有第二數量個位元組,在所述第一數量儲存單元中第一個儲存單元有第一數量個位元組分別用於儲存第一標識和第二標識,所述第二數量大於所述第一數量;所述第一個儲存單元中分別用於儲存第一標識和第二標識的第一數量位元組的相對位置與第一數量儲存單元的相對位置一一對應;其中,對應於所述第一資料所在儲存單元的一位元組用於儲存所述第一標識,其餘所有位元組用於儲存其他第二標識,對應第一標識的位元組內容不同於對應第二標識的位元組內容;其中,所述標識查找模組,還用於從儲存區第一儲存單元的第一位元組開始往後一一識別,在識別到對應第一標識的位元組時,確定所述位元組在第一儲存單元的連續第一數量位元組中的相對位置,所述資料查找模組在第一數量儲存單元中確定所述位元組的相對位置的儲存單元為保存第一資料的儲存單元。
其中,所述第一數量是32,第二數量是2k,所述快閃記憶體儲存設備包括複數個儲存區,每個儲存區包括32個儲存單元,每個儲存區中的第一個儲存單元的前32個位元組用於儲存所述第一標識和第二標識。
其中,所述第一數量是64,第二數量是2k,所述複數個儲存單元的第一個儲存單元的前64個位元組用於儲存所述第一標識和第二標識。
其中,所述資料儲存模組,還用於將第二資料儲存至第一資料所在儲存區之外的另一儲存區中另一儲存單元;所述標識處理模組,還用於確定第二資料所在的所述另一儲存單元在另一儲存區的相對位置,並找到與第二資料所在的所述另一儲存單元的相對位置對應的另一儲存區的第一個儲存單元的一位元組,將所述第一標識儲存至所述位元組,使所述第一標識對應於第二資料所在的所述另一儲存單元;以及用於將第一資料所在儲存區的第一個儲存單元中用於儲存第一標識的位元組修改為儲存第二標識。
其中,所述裝置還包括判斷模組和擦除模組,其中,所述資料儲存模組在將第二資料儲存至第一資料所在儲存區之外的另一儲存區中另一儲存單元時,所述判斷模組用於判斷除第一標識對應的儲存單元所在的儲存區之外所述另一儲存區是否存在空閒儲存單元;在所述判斷模組判斷在判斷所述另一儲存區不存在空閒儲存單元時,所述資料儲存模組將第二資料儲存至快閃記憶體儲存設備中其他儲存區的空閒儲存單元,所述標識處理模組確定第二資料所在所述的另一儲存單元在另一儲存區中的相對位置,並找到與第二資料所在儲存單元的相對位置對應的另一儲存區中第一個儲存單元的一位元組,將所述第一標識儲存至所述位元組,使所述第一標識對應於第二資料所在所述的另一儲存單元,並且將第一資料所在儲存區的第一個儲存單元中用於儲存第一標識的位元組修改為儲存第二標識;以及所述擦除模組用於在所述資料儲存模組儲存第二資料後對所述另一儲存區進行擦除操作。
其中,在所述擦除模組對所述另一儲存區進行擦除操作後,需要繼續儲存第三資料時,所述資料儲存模組還用於將第三資料儲存至所述另一儲存區的其中一空閒儲存單元,所述標識處理模組確定第三資料所儲存單元的相對位置,並找到與第三資料所在儲存單元的相對位置對應的另一儲存區的第一個儲存單元的一位元組,將所述第一標識儲存至所述位元組,使其對應第三資料所在儲存單元,並且將第二資料所在儲存區的第一個儲存單元中用於儲存第一標識的位元組修改為儲存第二標識。
為了對本發明之上述及其他方面有更佳的瞭解,下文特舉較佳實施例,並配合所附圖式,作詳細說明如下:
為了使本發明的目的、技術方案及優點更加清楚明白,以下結合附圖及實施例,對本發明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,並不用於限定本發明。
第1圖示出了本發明提供的快閃記憶體儲存設備的資料儲存方法實施例之一的流程。在本發明實施例中,所述快閃記憶體儲存設備包括複數個儲存單元。
在步驟S101中,查找並得到第一標識。其中,所述第一標識對應於第一資料所在的儲存單元位置,所述第一資料為最新保存的資料。
在步驟S102中,根據所述第一標識找到保存第一資料的儲存單元。
在步驟S103中,將第二資料儲存至另一儲存單元。
在步驟S104中,將所述第一標識對應於第二資料所在的所述另一儲存單元。
顯然,本發明實施例中,每次儲存用戶資料的儲存單元和上次儲存用戶資料的儲存單元不同,可以有效地利用多個儲存單元輪轉的進行資料的儲存。當然,只要能夠使得用戶資料能夠在不同儲存區內的不同儲存單元進行輪轉儲存,均在本發明保護範圍之內,此處不一一列舉。
第2圖示出了本發明提供的快閃記憶體儲存設備的資料儲存方法實施例之二的流程。
在步驟S201中,將第二資料儲存至另一儲存單元。
在步驟S202中,修改第一標識的儲存位置,使修改後的第一標識所在儲存位置對應第二資料所在的所述另一儲存單元的位置。
在步驟S203中,使用第二標識,並使其對應於除第二資料所在的所述另一儲存單元之外所有儲存單元。
本發明實施例中,通過使用不同的第一標識和第二標識,由第一標識對應第二資料的所在的所述另一儲存單元,由第二標識對應於未儲存最新保存的資料的儲存單元,可以快速有效的通過查找第一標識來找到每次最新保存的資料的儲存單元,進而選擇未儲存資料的儲存單元進行下次資料的儲存,可以有效快速的進行資料的儲存。
第3圖示出了本發明提供的快閃記憶體儲存設備的資料儲存方法實施例之三的流程。本發明提供第3圖所示資料儲存方法來查找並得到第一標識及由所述第一標識找到保存第一資料的儲存單元。
在步驟S301中,從複數個儲存單元中第一儲存單元的第一位元組開始往後一一識別。
在步驟S302中,在識別到所述用於儲存第一標識的位元組後,確定所述位元組在第一儲存單元的連續第一數量位元組中的相對位置。
在步驟S303中,確定在第一數量儲存單元中對應所述位元組的相對位置的儲存單元為保存第一資料的儲存單元。
本發明實施例中,通過對第一儲存單元的位元組有順序且逐個進行識別,直到識別到對應第一標識的位元組,可以準確地根據第一標識來對應地找到第一資料所在的儲存單元,從而進行下一步的資料儲存。
在本發明實施例中,所述快閃記憶體儲存設備的儲存單元數量為第一數量,每個儲存單元均有第二數量個位元組,在所述第一數量儲存單元中第一個儲存單元有第一數量個位元組分別用於儲存第一標識和第二標識,所述第二數量大於所述第一數量;所述第一個儲存單元中分別用於儲存第一標識和第二標識的第一數量位元組的相對位置與第一數量儲存單元的相對位置一一對應;其中,對應於所述第一資料所在儲存單元的一位元組用於儲存所述第一標識,其餘所有位元組用於儲存其他第二標識,對應第一標識的位元組內容不同於對應第二標識的位元組內容。優選的,所述第一數量是32,第二數量是2k,所述快閃記憶體儲存設備複數個儲存區,每個儲存區包括32個儲存單元,每個儲存區中的第一個儲存單元的前32個位元組用於儲存第一標識和第二標識。
優選的,所述第一數量是64,第二數量是2k,所述複數個儲存單元的第一個儲存單元的前64個位元組用於儲存所述第一標識和第二標識。
第4圖示出了本發明提供的快閃記憶體儲存設備的資料儲存方法實施例之四的流程。
在步驟S401中,在將第二資料儲存至第一資料所在儲存區之外的另一儲存區中另一儲存單元之前,判斷除第一標識對應的儲存單元所在的儲存區之外所述另一儲存區是否存在空閒儲存單元。
若判斷另一記憶體存在空閒單元,則執行以下步驟。在步驟S402中,將第二資料儲存至所述另一儲存區的其中一空閒儲存單元。在步驟S403中,確定第二資料所在的所述另一儲存單元在另一儲存區中的相對位置,並找到與第二資料所在的所述另一儲存單元的相對位置對應的另一儲存區的第一個儲存單元的一位元組,將所述第一標識儲存至所述位元組,使所述第一標識對應於第二資料所在的所述另一儲存單元。在步驟S404中,將第一資料所在儲存區的第一個儲存單元中用於儲存第一標識的位元組修改為儲存第二標識。若此時需要儲存第三資料,則返回執行步驟S401中判斷除第一標識對應的儲存單元所在的儲存區之外所述另一儲存區是否存在空閒儲存單元,也就是說,判斷第二資料所在儲存區之外的另一儲存區中是否存在空閒儲存單元。接下來步驟同上,此處不再詳述。若判斷另一記憶體不存在空閒儲存單元,則執行以下步驟。在步驟S405中,將第二資料儲存至快閃記憶體儲存設備中其他儲存區的空閒儲存單元。執行分別與S403和S404相同的S406和S407,使得第一標識對應於第二資料所在儲存單元,第二標識對應於除第二資料所在儲存單元之外的其他所有儲存單元。在步驟S408中,在儲存第二資料後,對所述另一儲存區進行擦除操作。在步驟S409中,在對所述另一儲存區進行擦除操作後,需要繼續儲存第三資料時,由於擦除後的另一儲存區存在空閒儲存單元,則直接將第三資料儲存至所述另一儲存區的其中一空閒儲存單元。在步驟S410中,確定第三資料所在儲存單元的相對位置,並找到與第三資料所在儲存單元的相對位置對應的另一儲存區的第一個儲存單元的位元組,將所述第一標識儲存至所述位元組,使其對應於第三資料所在儲存單元。在步驟S411中,將第二資料所在儲存區的第一個儲存單元中用於儲存第一標識的位元組修改為儲存第二標識。
通過上述步驟可知,在當前儲存區不存在空閒儲存單元即寫滿資料、向另一儲存區儲存新的資料時,即便發生斷電等異常,也不會導致資料丟失。
除採用第二資料所在的儲存單元位置來對應第一標識儲存的位元組位置外,還可以是用將第二資料的位址賦值於第一標識。
第5圖示出了本發明提供的快閃記憶體儲存設備的資料儲存方法實施例之五的流程。
在步驟S501中,將第二資料儲存至第一資料所在儲存區的另一空閒儲存單元。
在步驟S502中,將所述第一標識對應於第二資料所在所述另一儲存單元。
在步驟S503中,使用第二標識,並使其對應於除第二資料所在的所述另一儲存單元之外所有儲存單元。
在具體實施過程中,為便於描述,將第一資料所在的儲存區稱為第一儲存區,另一儲存區為第二儲存區。在所述第一儲存區和第二儲存區之間確定對應第一標識所在儲存區的步驟包括:分別讀取所述第一儲存區和第二儲存區各自的前2k儲存單元,所述前2k儲存單元的連續前32個位元組中,各位元組的相對位置與所述儲存區中32個2k空間儲存單元的相對位置一一對應,其中第一標識採用所述位元組的第一內容標記,其餘所有位元組採用第二標識,以第一標識在前2k儲存單元的連續32個位元組中的儲存位置,對應為記錄所述儲存第二資料的儲存單元在儲存區的位置;在讀取到第一標識的位元組時,確定具有第一標識的儲存區為對應最新資料標記的儲存區。
在具體實施過程中,在判斷第一儲存區未寫滿時,可以將第二資料儲存至第一儲存區的其中一空閒儲存單元,同時將所述第一標識儲存至第一儲存區的第一個儲存單元中相應位置處的位元組中,使第一標識對應第二資料所在儲存單元的位置,將對應第二儲存區的第一標識去除。
在具體實施過程中,不管第一儲存區是否已經寫滿,都可以將第二資料儲存至第二儲存區的其中一空閒儲存單元,同時將所述第一標識儲存至第二儲存區的第一個儲存單元中相應位置處的位元組中,使第一標識對應第二資料所在儲存單元的位置,將對應第一儲存區的第一標識去除。
關於本發明更具體的實施例描述如下。
其中,在快閃記憶體儲存設備中,大部分空間存放的是程式資料,小部分(大概5個左右儲存區Bank)存放的是用戶資料,用戶資料的資料量通常在2KB以內。本發明實施例將以用戶資料區域為兩個儲存區Bank為例進行說明,對兩個儲存區Bank進行標識,譬如標識為第一儲存區Bank61和第二儲存區Bank62。每個儲存區Bank的儲存空間為64KB,本發明實施例將第一儲存區Bank61和第二儲存區Bank62劃分為64個儲存單元,每個儲存區Bank包括32個儲存單元,每個儲存單元的儲存空間是2KB,請參閱第6圖及第7圖。
當用戶在通過包含上述快閃記憶體儲存設備的電視收看TV節目的過程中,如果調整了用戶資料,那麽用戶資料會被依次存入第一儲存區Bank61或第二儲存區Bank62的某一個儲存單元內。
本發明實施例按照各個儲存區的標識,逐次且有順序的將各儲存區內的儲存單元進行標識,譬如,第一儲存區Bank61中的儲存單元被編號為奇數,分別是:B(61)Index1,3…,63(2n+1,n=0,..,31);第二儲存區Bank62中的儲存單元被編號為偶數,分別是:B(62)Index2,4…,64(2m,m=1,..,32)。
將每個儲存區Bank第1個儲存單元的前32個位元組編號為奇數:B(61)_1,3…,63(2n+1,n=0,..,31);第二儲存區Bank62中第1個儲存單元的前32個位元組編號為偶數:B(62)_2,4…,64(2m,m=1,..,32)。
在具體實施過程中,系統開機時分別讀取所述第一儲存區Bank61和第二儲存區Bank62各自的第1個儲存單元,所述第1個儲存單元的連續32個位元組中,各位元組的相對位置與所述儲存區中32個儲存單元的相對位置一一對應。
在本發明實施例中,最新資料標記採用所述位元組的第一標識,譬如0x3F,其餘所有位元組採用第二標識,譬如0x1F。以第一標識0x3F的最新資料標記在32個位元組中的位置,對應為記錄所述儲存最新用戶資料的儲存單元在儲存區的位置;在讀取到第一標識0x3F的位元組時,確定具有第一標識0x3F的儲存區為對應最新資料標記的儲存區。
舉例來說,假如系統掃描後發現在第一儲存區Bank61的第1個儲存單元的第2個位元組B(61)_3中存放的數值是第一標識0x3F,而其他數值均為第二標識0x1F,那麽系統會根據這個結果,從第一儲存區Bank61中對應於第2個位元組B(61)_3的第2個儲存單元B(61)Index3來讀取系統關機前最後保存的用戶資料(即最新資料)。此時,如果用戶需要改變將用戶資料,譬如將音量從20調整到21,即需要根據最新用戶資料“音量20”的儲存單元B(61)Index3來儲存下次用戶資料“音量21”,並將最新用戶資料更新為“音量21”,那麽系統相應地進行下面三個動作,請參閱第7圖,圖中短虛線箭頭表示的是存入第二標識0x1F,與虛線箭頭相連的實線箭頭表示的是存入第一標識0x3F,長虛線箭頭則標示用戶資料依次交替跨區儲存的方式。
c1)、將最新用戶資料儲存到第二儲存區Bank62的第2個儲存單元B(62)Index4。
c2)、在第一儲存區Bank61的第1個儲存單元中的第2個位元組B(61)_3中儲存0x1F以替換之前的數值0x3F。
c3)、在第二儲存區Bank62的第1個儲存單元中的第2個位元組B(62)_4中儲存0x3F以替換之前的數值0x1F。
顯然,通過上述步驟,最新用戶資料存放到儲存單元B(62)Index4中。
同樣,當進行下一次用戶資料改變時,譬如將音量從21調整到22,系統會相應地進行下面三個動作:
d1)、將最新用戶資料儲存到第一儲存區Bank61的第3個儲存單元B(61)Index5。
d2)、在第二儲存區Bank62的第1個儲存單元中的第2個位元組B(62)_4中儲存0x1F以替換之前的數值0x3F。
d3)、在第一儲存區Bank61的第1個儲存單元中的第3個位元組B(61)_5中儲存0x3F以替換之前的數值0x1F。
顯然,通過上述步驟,最新用戶資料存放到B(61)Index5中。
通過上面的描述不難看出,本發明實施例將第一儲存區Bank61和第二儲存區Bank62分成64個儲存單元,儲存用戶資料時,用戶資料會在64個儲存單元中輪換進行儲存。譬如第一次用戶資料儲存在儲存單元B(61)Index3,第二次用戶資料儲存在儲存單元B(62)Index4,第三次用戶資料儲存在儲存單元B(61)Index5……按如此交替輪換的原則進行資料儲存。當用戶資料再次儲存至到上次寫過的儲存單元時(譬如再次儲存至儲存單元B(61)Index3),需要等到62次之後。因此,同一儲存單元被重復儲存的幾率極大的降低,從而達到延長快閃記憶體儲存設備壽命的目的。
在具體實施過程中,當第一儲存區Bank61已經儲存滿用戶資料,最新用戶資料儲存在B(61)Index63,將下次用戶資料儲存到第二儲存區Bank62中的最後一個儲存單元(B(62)Index64),並且更新最新用戶資料為儲存在B(62)Index64中(使第一標識0x3F對應於B(62)Index64),那麽按照以上交替輪換的原則,此時兩個儲存區均已存滿用戶資料。因此,若要繼續進行用戶資料儲存,需要將第一儲存區Bank61整個64KB擦除。此時若發生斷電,儲存在位元組B(62)_64的第一標識0x3F和儲存在儲存單元B(62)Index64的最新用戶資料依然被保留在第二儲存區Bank62中。再次開機時,會根據第二儲存區Bank62第1個儲存單元中的位元組B(62)_64記錄的第一標識0x3F,找到用戶資料所屬的儲存單元B(62)Index64。顯然,在發生斷電等異常時,本發明很好的保護了用戶資料不被丟失。
依次地,當最新用戶資料被儲存在擦除後的第一儲存區Bank61中第一個儲存單元B(61)Index3,再次儲存用戶資料時,需要將已經存滿的第二儲存區Bank62整個64KB的空間擦除。此時如果發生斷電,儲存在位元組B(61)_3的第一標識0x3F和儲存在儲存單元B(61)Index3的最新用戶資料依然被保留在第一儲存區Bank61中。再次開機時,會根據第一儲存區Bank61第1個儲存單元中的位元組B(61)_3記錄的第一標識0x3F,找到用戶資料所屬的儲存單元B(61)Index3和其中的最新用戶資料。
顯然,在發生斷電等異常時,本發明很好的保護了用戶資料不被丟失。
而且,在本發明實施例中,在任意時刻,第一儲存區Bank61和第二儲存區Bank62的第一個儲存單元中只有一個位元組的儲存數值0x3F,其餘61個位元組都儲存的是0x1F,因此,系統在開機時檢索到0x3F,然後從相對應的儲存單元中讀取到最新的用戶資料,再根據最新用戶資料的儲存位置進行下次用戶資料的儲存。
在具體實施過程中,在一個輪換周期內,每次儲存用戶資料的儲存單元和上次儲存用戶資料的儲存單元不同,只要使得用戶資料能夠依次在不同儲存區內的不同儲存單元即可,均在本發明保護範圍之內。
請參閱第8圖,第8圖為在第一儲存區Bank61和第二儲存區Bank62內進行資料連續儲存的示意圖,其儲存原理與在第一儲存區Bank61和第二儲存區Bank62內輪轉儲存的原理類似,同樣引入第一標識來對應最新用戶資料的儲存單元,再根據最新用戶資料的儲存位置進行下次用戶資料的儲存。本發明實施例將第一儲存區Bank61和第二儲存區Bank62分成64個儲存單元,其中第一個儲存單元B(61)Index1的前64位元組用以儲存第一標識和第二標識,儲存用戶資料時,用戶資料會在其他63個儲存單元中依次儲存,第一儲存單元的前64個位元組位置與64個儲存單元一一對應。參照第8圖所示,如果第一次用戶資料儲存在儲存單元B(61)Index2,那麽第二次用戶資料儲存在儲存單元B(61)Index3,第三次用戶資料儲存在儲存單元B(61)Index4……按如此連續儲存的原則進行資料儲存。當用戶資料再次儲存至到上次寫過的儲存單元時(譬如再次儲存至儲存單元B(61)Index3),需要等到63次之後對整個128KB的空間進行擦除然後再按照以上規則重復寫入用戶資料。同一儲存單元被重復儲存的幾率極大的降低,從而達到延長快閃記憶體儲存設備壽命的目的。
第9圖示出了本發明提供的快閃記憶體儲存設備的資料擦寫裝置的結構。所述快閃記憶體儲存設備包括複數個儲存單元。
其中,標識查找模組91查找並得到第一標識。所述第一標識對應於第一資料所在的儲存單元,所述第一資料為最新保存的資料。資料查找模組92根據所述第一標識找到保存第一資料的儲存單元。資料儲存模組93將所述第二資料儲存至另一儲存單元。標識處理模組94用於將所述第一標識對應於除所述第二資料所在的所述另一儲存單元之外所有儲存單元。
在具體實施過程中,所述標識處理模組94還使用第二標識,並使所述第二標識對應於除第二資料所在的所述另一儲存單元之外所有的儲存單元,以及,修改第一標識的儲存位置,使修改後的第一標識所在儲存位置對應於所述第二資料所在的所述另一儲存單元。
其中,所述快閃記憶體儲存設備的儲存單元數量為第一數量,每個儲存單元均有第二數量個位元組,在所述第一數量儲存單元中的第一個儲存單元有第一數量個位元組分別用於儲存第一標識和第二標識,所述第二數量大於所述第一數量;所述第一個儲存單元中分別用於儲存第一標識和第二標識的第一數量位元組的相對位置與第一數量儲存單元的相對位置一一對應;其中,對應於所述第一資料所在儲存單元的一位元組用於儲存所述第一標識,其餘所有位元組用於儲存其他第二標識,對應第一標識的位元組內容不同於對應第二標識的位元組內容。
其中,所述標識查找模組91,還用於從儲存區第一儲存單元的第一位元組開始往後一一識別,在識別到所述用於儲存第一標識的位元組時,確定所述位元組在第一儲存單元的連續第一數量位元組中的相對位置,所述資料查找模組92在第一數量儲存單元中確定對應所述位元組的相對位置的儲存單元為保存第一資料的儲存單元。
優選的,所述第一數量是32,第二數量是2k,所述快閃記憶體儲存設備包括至少兩個儲存區,每個儲存區包括32個儲存單元,每個儲存區中的第一個儲存單元的前32個位元組用於儲存第一標識和第二標識。
所述資料儲存模組93,還用於將第二資料儲存至第一資料所在儲存區之外的另一儲存區中空閒儲存單元。
所述標識處理模組94,還用於確定第二資料所在的所述另一儲存單元在另一儲存區中的相對位置,並找到與第二資料所在的所述另一儲存單元的相對位置對應的另一儲存區的第一個儲存單元的一位元組,將所述第一標識儲存至所述位元組,使所述第一標識對應於第二資料所在的所述另一儲存單元;以及將第一資料所在儲存區的第一個儲存單元中用於儲存第一標識的位元組修改為儲存第二標識。
請參閱第9圖,所述資料儲存模組在將第二資料儲存至第一資料所在儲存區之外的另一儲存區中空閒儲存單元時,判斷模組95判斷所述另一儲存區是否存在空閒儲存單元;在所述判斷模組95判斷所述另一儲存區存在空閒儲存單元時,所述資料儲存模組93將第二資料儲存至另一儲存區中空閒儲存單元。
請參閱第9圖,判斷模組95判斷所述另一儲存區不存在空閒儲存單元時;所述資料儲存模組93將第二資料儲存至快閃記憶體儲存設備中其他儲存區的空閒儲存單元,所述標識處理模組94確定第二資料所在的所述另一儲存單元在另一儲存區中的相對位置,並找到與第二資料所在儲存單元相對位置相對應的另一儲存區的第一個儲存單元的一位元組,將所述第一標識儲存至所述位元組,使所述第一標識對應於第二資料所在的所述另一儲存單元,並且將第一資料所在儲存區的第一個儲存單元中用於儲存第一標識的位元組修改為儲存第二標識;以及在所述資料儲存模組93儲存第二資料後,所述擦除模組96對所述另一儲存區進行擦除操作。
在所述擦除模組96對所述另一儲存區進行擦除操作後,需要繼續儲存第三資料時,所述資料儲存模組93將第三資料儲存至所述另一儲存區的其中一空閒儲存單元;所述標識處理模組94確定第三資料所在儲存單元的相對位置,並找到與第三資料所在儲存單元的相對位置對應的另一儲存區的第一個儲存單元的一位元組,將所述第一標識儲存至所述位元組,使其對應第三資料所在的儲存單元,並且將第二資料所在儲存區的第一個儲存單元中用於儲存第一標識的位元組修改為儲存第二標識。
綜上所述,雖然本發明已以較佳實施例揭露如上,然其並非用以限定本發明。本發明所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作各種之更動與潤飾。因此,本發明之保護範圍當視後附之申請專利範圍所界定者為準。
91‧‧‧標識查找模組
92‧‧‧資料查找模組
93‧‧‧資料儲存模組
94‧‧‧標識處理模組
95‧‧‧判斷模組
96‧‧‧擦除模組
第1圖是本發明提供的快閃記憶體儲存設備的資料儲存方法實施例之一的流程圖;
第2圖是本發明提供的快閃記憶體儲存設備的資料儲存方法實施例之二的流程圖;
第3圖是本發明提供的快閃記憶體儲存設備的資料儲存方法實施例之三的流程圖;第4圖是本發明提供的快閃記憶體儲存設備的資料儲存方法實施例之四的流程圖;第5圖是本發明提供的快閃記憶體儲存設備的資料儲存方法實施例之五的流程圖;第6圖是本發明提供的快閃記憶體儲存設備的內部劃分實施例之一示意圖;第7圖是本發明提供的快閃記憶體儲存設備的內部劃分實施例之一示意圖;第8圖是本發明提供的快閃記憶體儲存設備的內部劃分實施例之二示意圖;第9圖是本發明提供的快閃記憶體儲存設備的資料擦寫裝置實施例結構圖。
S101~S104...步驟流程

Claims (18)

  1. 一種快閃記憶體儲存設備的資料儲存方法,所述快閃記憶體儲存設備包括複數個儲存單元,其特徵在於,所述方法包括以下步驟:查找並得到第一標識,所述第一標識對應於第一資料所在的儲存單元,所述第一資料為最新保存的資料;根據所述第一標識找到保存所述第一資料的儲存單元;將第二資料儲存至另一儲存單元;確定第二資料所在的所述另一儲存單元在另一儲存區中的相對位置;找到與第二資料所在的所述另一儲存單元的相對位置對應的另一儲存區的第一個儲存單元的一位元組;以及將所述第一標識儲存至所述位元組,使所述第一標識對應於第二資料所在的所述另一儲存單元。
  2. 如申請專利範圍第1項所述的快閃記憶體儲存設備的資料儲存方法,其特徵在於,所述方法還包括以下步驟:使用第二標識,並使其對應於除第二資料所在的所述另一儲存單元之外所有儲存單元。
  3. 如申請專利範圍第2項所述的快閃記憶體儲存設備的資料儲存方法,其特徵在於,將所述第一標識對應於 第二資料所在的所述另一儲存單元步驟包括:修改第一標識的儲存位置,使修改後的第一標識所在儲存位置對應於第二資料所在的所述另一儲存單元的位置。
  4. 如申請專利範圍第3項所述的快閃記憶體儲存設備的資料儲存方法,其特徵在於:所述快閃記憶體儲存設備的儲存單元數量為第一數量,每個儲存單元均有第二數量個位元組,在所述第一數量儲存單元中第一個儲存單元有第一數量個位元組分別用於儲存第一標識和第二標識,所述第二數量大於所述第一數量;所述第一個儲存單元中分別用於儲存第一標識和第二標識的第一數量位元組的相對位置與第一數量儲存單元的相對位置一一對應;其中,對應於所述第一資料所在儲存單元的一位元組用於儲存所述第一標識,其餘所有位元組用於儲存其他第二標識,對應第一標識的位元組內容不同於對應第二標識的位元組內容;其中,查找並得到第一標識及由所述第一標識找到保存第一資料的儲存單元步驟包括:從第一儲存單元的第一位元組開始往後一一識別;在識別到所述用於儲存第一標識的位元組時,確定所述位元組在第一儲存單元的連續第一數量位元組中的相對位置;以及 確定在第一數量儲存單元中對應所述位元組的相對位置的儲存單元為保存第一資料的儲存單元。
  5. 如申請專利範圍第4項所述的快閃記憶體儲存設備的資料儲存方法,其特徵在於:所述第一數量是32,第二數量是2k,所述快閃記憶體儲存設備包括複數個儲存區,每個儲存區包括32個儲存單元,每個儲存區中的第一個儲存單元的前32個位元組用於儲存所述第一標識和第二標識。
  6. 如申請專利範圍第4項所述的快閃記憶體儲存設備的資料儲存方法,其特徵在於:所述第一數量是64,第二數量是2k,所述複數個儲存單元的第一個儲存單元的前64個位元組用於儲存所述第一標識和第二標識。
  7. 如申請專利範圍第5項所述的快閃記憶體儲存設備的資料儲存方法,其特徵在於:所述將第二資料儲存至另一儲存單元的步驟包括:將第二資料儲存至第一資料所在儲存區之外的另一儲存區中另一儲存單元;以及所述使用第二標識,並使其對應於除第二資料所在的存的所述另一儲單元之外所有儲存單元步驟包括:將第一資料所在儲存區的第一個儲存單元中用於儲存第一標識的位元組修改為儲存第二標識。
  8. 如申請專利範圍第7項所述的快閃記憶體儲存設備的資料儲存方法,其特徵在於:將第二資料儲存至第一資料所在儲存區之外的另一儲存區中另一儲存單元之前,判斷除第一標識對應的儲存單元所在的儲存區之外的所述另一儲存區是否存在空閒儲存單元;在判斷所述另一儲存區不存在空閒儲存單元時,將第二資料儲存至快閃記憶體儲存設備中其他儲存區的空閒儲存單元;確定第二資料所在儲存單元的相對位置,並找到與第二資料所在儲存單元相對位置對應的所述其他儲存區的第一個儲存單元的位元組,將所述第一標識儲存至所述位元組,使其對應第二資料所在儲存單元;將第一資料所在儲存區的第一個儲存單元中用於儲存第一標識的位元組修改為儲存第二標識;以及在儲存第二資料後,對所述另一儲存區進行擦除操作。
  9. 如申請專利範圍第8項所述的快閃記憶體儲存設備的資料儲存方法,其特徵在於,在對所述另一儲存區進行擦除操作後,需要繼續儲存第三資料時,所述方法包括:將第三資料儲存至所述另一儲存區的其中一空閒儲存單元;確定第三資料所在儲存單元的相對位置,並找到與 第三資料所在儲存單元的相對位置對應的另一儲存區的第一個儲存單元的位元組,將所述第一標識儲存至所述位元組,使其對應第三資料所在儲存單元;將第二資料所在儲存區的第一個儲存單元中用於儲存第一標識的位元組修改為儲存第二標識。
  10. 一種快閃記憶體儲存設備的資料儲存裝置,所述快閃記憶體儲存設備包括複數個儲存單元,其特徵在於,所述裝置包括:標識查找模組,用於查找並得到第一標識,其中,所述第一標識對應於第一資料所在的儲存單元,所述第一資料為最新保存的資料;資料查找模組,用於根據所述第一標識找到保存所述第一資料的儲存單元;資料儲存模組,用於將第二資料儲存至另一儲存單元;以及標識處理模組,用於確定第二資料所在的所述另一儲存單元在另一儲存區中的相對位置,並找到與第二資料所在的所述另一儲存單元的相對位置對應的另一儲存區的第一個儲存單元的一位元組,將所述第一標識儲存至所述位元組,使所述第一標識對應於第二資料所在的所述另一儲存單元。
  11. 如申請專利範圍第10項所述的快閃記憶體儲存設備的資料儲存裝置,其特徵在於:所述標識處理模組, 還用於使用第二標識,並使所述第二標識對應於除第二資料所在的所述另一儲存單元之外所有儲存單元。
  12. 如申請專利範圍第11項所述的快閃記憶體儲存設備的資料儲存裝置,其特徵在於:所述標識處理模組,還用於修改所述第一標識的儲存位置,使修改後的第一標識所在儲存位置對應於所述第二資料所在的所述另一儲存單元的位置。
  13. 如申請專利範圍第12項所述的快閃記憶體儲存設備的資料儲存裝置,其特徵在於:所述快閃記憶體儲存設備的儲存單元數量為第一數量,每個儲存單元均有第二數量個位元組,在所述第一數量儲存單元中的第一個儲存單元有第一數量個位元組分別用於儲存第一標識和第二標識,所述第二數量大於所述第一數量;所述第一個儲存單元中分別用於儲存第一標識和第二標識的第一數量位元組的相對位置與第一數量儲存單元的相對位置一一對應;其中,對應於所述第一資料所在儲存單元的一位元組用於儲存所述第一標識,其餘所有位元組用於儲存其他第二標識,對應第一標識的位元組內容不同於對應第二標識的位元組內容;其中,所述標識查找模組,還用於從儲存區第一儲存單元的第一位元組開始往後一一識別,在識別到所述用 於儲存第一標識的位元組時,確定所述位元組在第一儲存單元的連續第一數量位元組中的相對位置,所述資料查找模組在第一數量儲存單元中確定對應所述位元組的相對位置的儲存單元為保存第一資料的儲存單元。
  14. 如申請專利範圍第13項所述的快閃記憶體儲存設備的資料儲存裝置,其特徵在於:所述第一數量是32,第二數量是2k,所述快閃記憶體儲存設備包括複數個儲存區,每個儲存區包括32個儲存單元,每個儲存區中的第一個儲存單元的前32個位元組用於儲存所述第一標識和第二標識。
  15. 如申請專利範圍第13項所述的快閃記憶體儲存設備的資料儲存裝置,其特徵在於:所述第一數量是64,第二數量是2k,所述複數個儲存單元的第一個儲存單元的前64個位元組用於儲存所述第一標識和第二標識。
  16. 如申請專利範圍第14項所述的快閃記憶體儲存設備的資料儲存裝置,其特徵在於:所述資料儲存模組,還用於將第二資料儲存至第一資料所在儲存區之外的另一儲存區中另一儲存單元;以及所述標識處理模組,還用於將第一資料所在儲存區的第一個儲存單元中用於儲存第一標識的位元組修改為儲存第二標識。
  17. 如申請專利範圍第16項所述的快閃記憶體儲存設備的資料儲存裝置,其特徵在於:所述裝置還包括判斷模組和擦除模組,其中,所述資料儲存模組在將第二資料儲存至第一資料所在儲存區之外的另一儲存區中另一儲存單元時,所述判斷模組用於判斷除第一標識對應的儲存單元所在的儲存區之外的所述另一儲存區是否存在空閒儲存單元;在所述判斷模組判斷在判斷所述另一儲存區不存在空閒儲存單元時,所述資料儲存模組將第二資料儲存至快閃記憶體儲存設備中其他儲存區的空閒儲存單元,所述標識處理模組確定第二資料所在的所述另一儲存單元在另一儲存區中的相對位置,並找到與第二資料所在的所述另一儲存單元的相對位置對應的另一儲存區的第一個儲存單元的位元組,將所述第一標識儲存至所述位元組,使所述第一標識對應於第二資料所在的所述另一儲存單元,並且將第一資料所在儲存區的第一個儲存單元中用於儲存第一標識的位元組修改為儲存第二標識;以及所述擦除模組用於在所述資料儲存模組儲存第二資料後對所述另一儲存區進行擦除操作。
  18. 如申請專利範圍第17項所述的快閃記憶體儲存設備的資料儲存裝置,其特徵在於:在所述擦除模組對所述另一儲存區進行擦除操作後,需要繼續儲存第三資料時,所述資料儲存模組還用於 將第三資料儲存至所述另一儲存區的其中一空閒儲存單元,所述標識處理模組確定第三資料所在儲存單元的相對位置,並找到與第三資料所在儲存單元的相對位置對應的另一儲存區的第一個儲存單元的位元組,將所述第一標識儲存至所述位元組,使其對應第三資料所在儲存單元,並且將第二資料所在儲存區的第一個儲存單元中用於儲存第一標識的位元組修改為儲存第二標識。
TW100130029A 2011-07-12 2011-08-22 快閃記憶體儲存設備的資料儲存方法和裝置 TWI463311B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110194055.7A CN102231136B (zh) 2011-07-12 2011-07-12 一种闪存存储设备的数据存储方法和装置

Publications (2)

Publication Number Publication Date
TW201303585A TW201303585A (zh) 2013-01-16
TWI463311B true TWI463311B (zh) 2014-12-01

Family

ID=44843700

Family Applications (1)

Application Number Title Priority Date Filing Date
TW100130029A TWI463311B (zh) 2011-07-12 2011-08-22 快閃記憶體儲存設備的資料儲存方法和裝置

Country Status (3)

Country Link
US (1) US9195582B2 (zh)
CN (1) CN102231136B (zh)
TW (1) TWI463311B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103744794B (zh) * 2014-02-10 2017-03-01 武汉英泰斯特电子技术有限公司 数据存储的方法及装置
JP6662134B2 (ja) * 2016-03-18 2020-03-11 日本電気株式会社 タグ管理装置、タグ管理方法、プログラム
CN107273128B (zh) * 2017-06-16 2020-11-10 合肥联宝信息技术有限公司 电子设备启动方法及装置
CN107562655B (zh) * 2017-08-31 2019-01-25 长江存储科技有限责任公司 一种数据存储方法和装置
CN107704200A (zh) * 2017-09-08 2018-02-16 晶晨半导体(上海)股份有限公司 一种数据存放方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200519595A (en) * 2003-12-02 2005-06-16 Hewlett Packard Development Co Data storage system with error correction code and replaceable defective memory
US20050172207A1 (en) * 2004-01-30 2005-08-04 Radke William H. Error detection and correction scheme for a memory device
TWI244587B (en) * 2002-11-08 2005-12-01 Intel Corp Interleaved mirrored memory systems
TW201118570A (en) * 2009-11-16 2011-06-01 Mediatek Inc Methods of utilizing address mapping table to manage data access of storage medium without physically accessing storage medium and related storage controllers thereof

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5845313A (en) * 1995-07-31 1998-12-01 Lexar Direct logical block addressing flash memory mass storage architecture
EP1966701A2 (en) * 2005-12-21 2008-09-10 Nxp B.V. Memory with block-erasable locations
US8275928B2 (en) * 2008-05-15 2012-09-25 Silicon Motion, Inc. Memory module and method for performing wear-leveling of memory module using remapping, link, and spare area tables
TWI381386B (zh) * 2008-08-04 2013-01-01 Phison Electronics Corp 資料管理方法及其儲存裝置與其控制器
TWI375887B (en) * 2008-10-31 2012-11-01 A Data Technology Co Ltd Flash memory device with wear-leveling mechanism and controlling method thereof
TWI457940B (zh) * 2009-05-15 2014-10-21 Macronix Int Co Ltd 區塊為基礎快閃記憶體之位元組存取
CN101980177B (zh) * 2010-10-21 2013-07-31 北京握奇数据系统有限公司 一种操作Flash的方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI244587B (en) * 2002-11-08 2005-12-01 Intel Corp Interleaved mirrored memory systems
TW200519595A (en) * 2003-12-02 2005-06-16 Hewlett Packard Development Co Data storage system with error correction code and replaceable defective memory
US20050172207A1 (en) * 2004-01-30 2005-08-04 Radke William H. Error detection and correction scheme for a memory device
TW201118570A (en) * 2009-11-16 2011-06-01 Mediatek Inc Methods of utilizing address mapping table to manage data access of storage medium without physically accessing storage medium and related storage controllers thereof

Also Published As

Publication number Publication date
CN102231136B (zh) 2014-06-11
TW201303585A (zh) 2013-01-16
US20130019056A1 (en) 2013-01-17
CN102231136A (zh) 2011-11-02
US9195582B2 (en) 2015-11-24

Similar Documents

Publication Publication Date Title
US10657047B2 (en) Data storage device and method of performing partial garbage collection
CN103257831B (zh) 存储器的读写控制方法及对应的存储器
US8769189B2 (en) Method and apparatus for byte-access in block-based flash memory
US10534718B2 (en) Variable-size table for address translation
US8041884B2 (en) Controller for non-volatile memories and methods of operating the memory controller
US20150186263A1 (en) Data storage device and flash memory control method
TWI592865B (zh) 資料讀取方法、資料寫入方法及使用所述方法的儲存控制器
CN103440205B (zh) 一种机顶盒数据存储方法及装置
TWI463311B (zh) 快閃記憶體儲存設備的資料儲存方法和裝置
US8667234B2 (en) Data writing method, memory controller, and memory storage apparatus
CN108874298B (zh) 一种数据存储的方法及装置
US9563553B2 (en) Data storing method and embedded system
WO2009096180A1 (ja) メモリコントローラ、不揮発性記憶装置、及び、不揮発性記憶システム
JP2005242897A (ja) フラッシュディスク装置
KR102430198B1 (ko) 플래시 저장 장치의 어드레스 매핑 테이블 정리 방법
JP2010182266A (ja) メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
CN106020735A (zh) 一种数据存储方法及数据存储装置
US7058784B2 (en) Method for managing access operation on nonvolatile memory and block structure thereof
JP2009205689A (ja) フラッシュディスク装置
JP4488048B2 (ja) メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP2010250413A (ja) メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
CN102541753A (zh) 一种嵌入式存储器的读写优化方法
JP2010146515A (ja) メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
CN109634516B (zh) 一种芯片存储器的读、写数据方法及系统
JP2012068765A (ja) メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法