TW201403607A - 快閃記憶體設備中數據儲存之方法及裝置 - Google Patents
快閃記憶體設備中數據儲存之方法及裝置 Download PDFInfo
- Publication number
- TW201403607A TW201403607A TW102117711A TW102117711A TW201403607A TW 201403607 A TW201403607 A TW 201403607A TW 102117711 A TW102117711 A TW 102117711A TW 102117711 A TW102117711 A TW 102117711A TW 201403607 A TW201403607 A TW 201403607A
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- written
- sample library
- logical address
- flash memory
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1032—Reliability improvement, data loss prevention, degraded operation etc
- G06F2212/1036—Life time enhancement
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Abstract
本發明適用於儲存器的數據儲存技術領域,提供了一種快閃記憶體設備中數據儲存之方法及裝置,其方法包括:接收主機系統發送的寫指令,寫指令包含有待寫入的數據以及待寫入數據寫入快閃記憶體的邏輯位址;判斷待寫入數據是否之前已寫入;若否,根據邏輯位址寫入待寫入數據;若是,不執行寫指令,將邏輯位址指向之前已寫入的與待寫入數據相同的數據保存的邏輯位址。藉由本發明,可有效減少對快閃記憶體的寫操作,進而減少對快閃記憶體區塊的擦除操作,避免快閃記憶體的頻繁磨損,提高快閃記憶體設備的使用性能,延長快閃記憶體設備的使用壽命。
Description
本發明屬於儲存器的數據儲存技術領域,尤其關於一種快閃記憶體設備中數據儲存之方法及裝置。
隨著訊息技術的發展,越來越多的訊息系統(例如:MP3、數位相機、智慧型電視機等)需要內置可擦寫的非易失儲存介質來儲存數據。而在習知的非易失儲存介質中,快閃記憶體因其體積小、功耗低、不易受物理破壞等優點,在業界得到了廣泛的應用。
雖然快閃記憶體具有可寫入、可擦除以及斷電後仍可保存數據等諸多優點。然而,由於快閃記憶體在進行數據儲存時,需要採用「寫入—擦除—再寫入」的方式進行,即對快閃記憶體中同一快閃記憶體區塊執行一次「寫入」操作後,要更新其中的數據,必須做一次「擦除」後,才能「再寫入」同一快閃記憶體區塊。而每個快閃記憶體區塊的擦除次數是有限的,如果其「擦除」的次數超過限定值(例如10000次)後就會出現磨損,可能導致該快閃記憶體區塊不能儲存數據或者儲存的數據丟失,影響快閃記憶體的使用性能,降低快閃記憶體的使用壽命。
本發明實施例的目的在於提供一種快閃記憶體設備中數據儲存之方法,以解決習知快閃記憶體設備在進行數據儲存時快閃記憶體區塊擦寫次數過多,導致快閃記憶體區塊磨損嚴重,減少快閃記憶體設備使用壽命的問題。
本發明實施例是這樣實現的,一種快閃記憶體設備中數據儲存之方法,其方法包括:
接收主機系統發送的寫指令,寫指令包含有待寫入的數據以及待寫入數據寫入快閃記憶體的邏輯位址;
判斷待寫入數據是否之前已寫入;
若否,根據邏輯位址寫入待寫入數據;
若是,不執行寫指令,將邏輯位址指向之前已寫入的與待寫入數據相同的數據保存的邏輯位址。
本發明實施例的另一目的在於提供一種快閃記憶體設備中數據儲存之裝置,其裝置包括:
指令接收單元,用於接收主機系統發送的寫指令,寫指令包含有待寫入的數據以及待寫入數據寫入快閃記憶體的邏輯位址;
判斷單元,用於判斷待寫入數據是否之前已寫入;
寫入單元,用於在判斷單元判斷結果為否時,根據邏輯位址寫入待寫入數據;
指向單元,用於在判斷單元判斷結果為是時,不執行寫指令,將邏輯位址指向之前已寫入的與待寫入數據相同的數據保存的邏輯位址。
從上述技術方案可以看出,本發明實施例在接收到寫指令後,先判斷寫指令中的待寫入數據是否之前已寫入過,若是,則不執行寫指令,只需將寫指令中的邏輯位址指向之前已寫入的與待寫入數據相同的數據保存的邏輯位址,從而有效減少對快閃記憶體的寫操作,進而減少對快閃記憶體區塊的擦除操作,避免快閃記憶體的頻繁磨損,提高快閃記憶體的使用性能,延長快閃記憶體設備的使用壽命,具有較強的實用性。
1...主機系統
11...微處理器
12...隨機存取儲存器
13...數據傳輸介面
14...輸入或輸出裝置
2...快閃記憶體設備
61、72、82...指令接收單元
62、74、84...判斷單元
63、75、85...寫入單元
64、76、86...指向單元
65、71、81...樣本庫建立單元
66、77、87...刪除單元
73、83...獲取單元
841...第一判斷模組
842...第二判斷模組
S201~S204、S301~S305、S401~S406、S501~S507...步驟
為了更清楚地說明本發明實施例中的技術方案,下面將對實施例或習知技術描述中所需要使用的圖式作簡單地介紹,顯而易見地,下面描述中的圖式僅僅是本發明的一些實施例,對於本發明所述技術領域中具有通常知識者來講,在不付出進步性勞動性的前提下,更可以根據這些圖式獲得其他的圖式。
第1圖是本發明實施例一提供的快閃記憶體設備中數據儲存方法所適用之系統場景圖;
第2圖是本發明實施例二提供的快閃記憶體設備中數據儲存方法之實現流程圖;
第3圖是本發明實施例三提供的快閃記憶體設備中數據儲存方法之實現流程圖;
第4圖是本發明實施例四提供的快閃記憶體設備中數據儲存方法之實現流程圖;
第5圖是本發明實施例五提供的快閃記憶體設備中數據儲存方法之實現流程圖;
第6圖是本發明實施例六提供的快閃記憶體設備中數據儲存裝置之組成結構圖;
第7圖是本發明實施例七提供的快閃記憶體設備中數據儲存裝置之組成結構圖;
第8圖是本發明實施例八提供的快閃記憶體設備中數據儲存裝置之組成結構圖。
第1圖是本發明實施例一提供的快閃記憶體設備中數據儲存方法所適用之系統場景圖;
第2圖是本發明實施例二提供的快閃記憶體設備中數據儲存方法之實現流程圖;
第3圖是本發明實施例三提供的快閃記憶體設備中數據儲存方法之實現流程圖;
第4圖是本發明實施例四提供的快閃記憶體設備中數據儲存方法之實現流程圖;
第5圖是本發明實施例五提供的快閃記憶體設備中數據儲存方法之實現流程圖;
第6圖是本發明實施例六提供的快閃記憶體設備中數據儲存裝置之組成結構圖;
第7圖是本發明實施例七提供的快閃記憶體設備中數據儲存裝置之組成結構圖;
第8圖是本發明實施例八提供的快閃記憶體設備中數據儲存裝置之組成結構圖。
為了使本發明的目的、技術方案及優點更加清楚明白,以下結合圖式及實施例,對本發明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,並不用於限定本發明。
為了說明本發明所述的技術方案,下面藉由具體實施例來進行說明。
實施例一:
第1圖表示了本發明實施例一提供的快閃記憶體設備中數據儲存方法所適用之系統場景示意圖,為了便於說明,僅表示了與本實施例相關的部分。
如第1圖所示,系統包括主機系統1以及快閃記憶體設備2。
其中,主機系統1為電腦系統,包括微處理器11、隨機存取儲存器(Random Access Memory, RAM)12、數據傳輸介面13以及輸入或輸出裝置14。
主機系統1藉由數據傳輸介面13與快閃記憶體設備2連接。用戶藉由輸入或輸出裝置14發出寫指令給微處理器11,微處理器11藉由數據傳輸介面13將寫指令發送快閃記憶體設備2,寫指令中包含RAM12中的待寫入數據以及待寫入數據寫入快閃記憶體的邏輯位址。
快閃記憶體設備2在接收到寫指令後,判斷寫指令中的待寫入數據是否之前已寫入過,若是,則不執行寫指令,只需將寫指令中的邏輯位址指向之前已寫入的與待寫入數據相同的數據保存的邏輯位址,否則將寫指令中的待寫入數據根據邏輯位址寫入快閃記憶體設備2。
在本實施例中,主機系統為可儲存數據的任意系統,例如電腦系統、數位相機、攝影機、通訊裝置、音訊播放器、視訊播放器等系統。
需要說明的是,本實施例提供的系統場景只用於解釋本發明,並不限定本發明的保護範圍。
實施例二:
第2圖表示了本發明實施例二提供的快閃記憶體設備中數據儲存方法之實現流程,該方法過程詳述如下:
在步驟S201中,接收主機系統發送的寫指令。
在本實施例中,寫指令包括但不限於以下訊息:待寫入的數據以及待寫入數據寫入快閃記憶體的邏輯位址。主機系統為可儲存數據的任意系統,例如電腦系統、數位相機、攝影機、通訊裝置、音訊播放器、視訊播放器等系統。
在步驟S202中,判斷待寫入數據是否之前已寫入,若判斷結果為「是」,則執行步驟S204,若判斷結果為「否」,執行步驟S203。
在本實施例中,為了減少對快閃記憶體的寫操作,在執行寫指令之前,判斷快閃記憶體中是否已經存在待寫入數據,即判斷待寫入數據是否之前已寫入過,若是則執行步驟S204,否則執行步驟S203。
在步驟S203中,執行寫指令,根據邏輯位址寫入待寫入數據,即將待寫入數據儲存至與邏輯位址對應的物理位址。
在步驟S204中,不執行寫指令,將邏輯位址指向之前已寫入的與待寫入數據相同的數據保存的邏輯位址。
在本實施例中,在寫指令中的待寫入數據之前已寫入過,即已存在於快閃記憶體中時,不執行寫指令,只將寫指令中的邏輯位址指向之前已寫入的與待寫入數據相同的數據保存的邏輯位址,並提醒用戶該數據已寫入過,從而有效減少對快閃記憶體的寫操作,進而減少對快閃記憶體區塊的擦除操作,避免快閃記憶體的頻繁磨損,提高快閃記憶體設備的使用性能,延長快閃記憶體設備的使用壽命。
實施例三:
第3圖表示了本發明實施例三提供的快閃記憶體設備中數據儲存方法之實現流程,該方法過程詳述如下:
在步驟S301中,建立樣本庫,樣本庫中包含有已寫入的數據以及與數據對應的邏輯位址。
較佳的是,樣本庫為一靜態樣本庫,樣本庫中包含經常寫入的數據及數據對應的邏輯位址,如表一所示。其中,經常寫入的數據為已寫入且寫入次數大於預設值(例如5次)的數據:
表一
表一
在步驟S302中,接收主機系統發送的寫指令,寫指令包含有待寫入的數據以及待寫入數據寫入快閃記憶體的邏輯位址。
在步驟S303中,判斷樣本庫中是否存在與待寫入數據相同的數據,如果判斷結果為「是」,則執行步驟S305,如果判斷結果為「否」,則執行步驟S304;
較佳的是,判斷靜態樣本庫中是否存在與待寫入數據相同的數據,如果判斷結果為「是」,則執行步驟S305,如果判斷結果為「否」,則執行步驟S304;
在步驟S304中,執行寫指令,根據邏輯位址寫入待寫入數據;
在步驟S305中,不執行寫指令,將邏輯位址指向之前已寫入的與待寫入數據相同的數據保存的邏輯位址。
例如,當待寫入數據為AA時,根據表一可知其已存在於快閃記憶體中,則將其邏輯位址指向表一中AA對應的邏輯位址0X00010010。
在本實施例中,根據預先建立的靜態樣本庫來判斷待寫入數據是否之前已寫入,由於該靜態樣本庫中只包含經常性寫入的數據,因此可有效提高判斷的效率。
需要說明的是,本實施例的步驟S301可以置於步驟S302之後,只需在步驟S303判斷之前建立樣本庫即可。
作為本發明的另一較佳實施例,其方法更包括:
當待寫入數據之前未寫入,且快閃記憶體當前剩餘的儲存空間小於預先設定的臨界值時,刪除樣本庫中沒有邏輯位址對應的數據。
例如,數據AA為樣本庫中的數據,其對應保存的邏輯位址為0X00010010;待寫入數據66,其寫入快閃記憶體的邏輯位址也為0X00010010,與樣本庫比較發現,待寫入數據66之前未寫入過,則將待寫入數據66及其對應的邏輯位址0X00010010保存至樣本庫,之前的數據AA保存的邏輯位址因為寫入了新的數據66,則數據AA沒有了對應的邏輯位址。在這種情況下,當快閃記憶體當前剩餘的儲存空間小於預先設定的臨界值時,則將數據AA繼續保留在樣本庫中,否則刪除數據AA。
需要說明的是,本實施例中的設定的臨界值大於或者等於待寫入數據需要的儲存空間,因為每次的待寫入數據需要的儲存空間很小,如果等到儲存空間小於待寫入數據的大小時,再釋放樣本庫中無效數據佔用的空間則會降低寫入效率。
實施例四:
第4圖表示了本發明實施例四提供的快閃記憶體設備中數據儲存方法之實現流程,該方法過程詳述如下:
在步驟S401中,建立樣本庫,樣本庫為動態樣本庫,動態樣本庫中包含有已寫入數據的特徵值以及與已寫入數據對應的邏輯位址。
在步驟S402中,接收主機系統發送的寫指令,寫指令包含有待寫入的數據以及待寫入數據寫入快閃記憶體的邏輯位址。
在步驟S403中,獲取待寫入數據的特徵值。
在本實施例中,待寫入數據的特徵值可以藉由哈希算法(Hash Algorithm)或者其他類似算法獲取。
在步驟S404中,判斷動態樣本庫中是否存在與待寫入數據的特徵值相同的特徵值,如果判斷結果為「是」,則執行步驟S406,如果判斷結果為「否」,則執行步驟S405;
在步驟S405中,執行寫指令,根據邏輯位址寫入待寫入數據;
在步驟S406中,不執行寫指令,將邏輯位址指向之前已寫入的與待寫入數據相同的數據保存的邏輯位址,並將該待寫入數據的特徵值及該待寫入數據對應的邏輯位址儲存至動態樣本庫。
在本實施例中,將動態樣本庫中不包含的特徵值以及該特徵值所對應數據所保存的邏輯位址儲存至動態樣本庫。
本實施例藉由一動態樣本庫來判斷待寫入數據是否之前已寫入,由於該動態樣本庫中包含所有已寫入的數據,從而可有效提高判斷的準確率。
需要說明的是,本實施例的步驟S401可以置於步驟S402之後,只需在步驟S404判斷之前建立動態樣本庫即可。
實施例五:
第5圖表示了本發明實施例五提供的快閃記憶體設備中數據儲存方法之實現流程,該方法過程詳述如下:
在步驟S501中,建立樣本庫,樣本庫包含靜態樣本庫和動態樣本庫,靜態樣本庫中包含有已寫入且寫入次數大於預設值的數據以及與數據對應的邏輯位址,動態樣本庫中包含有已寫入數據的特徵值以及與已寫入數據對應的邏輯位址。
在步驟S502中,接收主機系統發送的寫指令,寫指令包含有待寫入的數據以及待寫入數據寫入快閃記憶體的邏輯位址。
在步驟S503中,獲取待寫入數據的特徵值。
在步驟S504中,判斷靜態樣本庫中是否存在與待寫入數據相同的數據,如果判斷結果為「是」,則執行步驟S507,如果判斷結果為「否」,則執行步驟S505。
在步驟S505中,判斷動態樣本庫中是否存在與待寫入數據的特徵值相同的特徵值,如果判斷結果為「是」,則執行步驟S507,如果判斷結果為「否」,則執行步驟S506;
在步驟S506中,執行寫指令,根據邏輯位址寫入待寫入數據;
在步驟S507中,不執行寫指令,將邏輯位址指向之前已寫入的與待寫入數據相同的數據保存的邏輯位址,並將該待寫入數據的特徵值及該待寫入數據對應的邏輯位址儲存至動態樣本庫。
本實施例藉由建立的靜態樣本庫和動態樣本庫來判斷待寫入數據是否之前已寫入,即保證了判斷的效率又能保證判斷的準確率。
需要說明的是,本實施例的步驟S501可以置於步驟S502之後,只需在步驟S504判斷之前建立動態樣本庫即可。
實施例六:
第6圖表示了本發明實施例六提供的快閃記憶體設備中數據儲存裝置之組成結構,為了便於說明,僅示出了與本發明實施例相關的部分。
該快閃記憶體設備中數據儲存裝置可以應用於儲存設備中,可以是運行於儲存設備內的軟體單元、硬體單元或者軟硬體相結合的單元,也可以作為獨立的掛件結合到儲存設備中或者運行於儲存設備的應用系統中。
該快閃記憶體設備中數據儲存裝置包括指令接收單元61、判斷單元62、寫入單元63以及指向單元64。其中,各單元的具體功能如下:
指令接收單元61,用於接收主機系統發送的寫指令,寫指令包含有待寫入的數據以及待寫入數據寫入快閃記憶體的邏輯位址;
判斷單元62,用於判斷待寫入數據是否之前已寫入;
寫入單元63,用於在判斷單元62判斷結果為否時,根據邏輯位址寫入待寫入數據;
指向單元64,用於在判斷單元62判斷結果為是時,不執行寫指令,將邏輯位址指向之前已寫入的與待寫入數據相同的數據保存的邏輯位址。
為了保證判斷的效率,較佳的是,裝置更包括:
樣本庫建立單元65,用於建立樣本庫,樣本庫中包含有已寫入的數據以及與數據對應的邏輯位址;
較佳的是,樣本庫為靜態樣本庫,靜態樣本庫中包含有已寫入且寫入次數大於預設值的數據以及與數據對應的邏輯位址。
判斷單元62具體用於,判斷樣本庫中是否存在與待寫入數據相同的數據。
較佳的是,判斷單元62具體用於,判斷靜態樣本庫中是否存在與待寫入數據相同的數據。
較佳的是,裝置更包括:
刪除單元66,用於在判斷單元62判斷結果為否,且快閃記憶體當前剩餘的儲存空間小於預先設定的臨界值時,刪除樣本庫中沒有邏輯位址對應的數據。
本實施例提供的快閃記憶體設備中數據儲存裝置可以使用在前述對應的快閃記憶體設備中數據儲存方法,詳情參見上述快閃記憶體設備中數據儲存方法實施例二和實施例三的相關描述,在此不再贅述。
實施例七:
第7圖表示了本發明實施例七提供的快閃記憶體設備中數據儲存裝置之組成結構,為了便於說明,僅示出了與本發明實施例相關的部分。
該快閃記憶體設備中數據儲存裝置可以應用於儲存設備中,可以是運行於儲存設備內的軟體單元、硬體單元或者軟硬體相結合的單元,也可以作為獨立的掛件結合到儲存設備中或者運行於儲存設備的應用系統中。
該快閃記憶體設備中數據儲存裝置包括樣本庫建立單元71、指令接收單元72、獲取單元73、判斷單元74、寫入單元75以及指向單元76。其中,各單元的具體功能如下:
樣本庫建立單元71,用於建立樣本庫,樣本庫為動態樣本庫,動態樣本庫中包含有已寫入數據的特徵值以及與已寫入數據對應的邏輯位址;
指令接收單元72,用於接收主機系統發送的寫指令,寫指令包含有待寫入的數據以及待寫入數據寫入快閃記憶體的邏輯位址;
獲取單元73,用於獲取待寫入數據的特徵值;
判斷單元74,用於判斷動態樣本庫中是否存在與待寫入數據的特徵值相同的特徵值;
寫入單元75,用於在判斷單元74判斷結果為否時,根據待寫入數據寫入快閃記憶體的邏輯位址寫入待寫入數據,並將該待寫入數據的特徵值及該待寫入數據對應的邏輯位址儲存至動態樣本庫;
指向單元76,用於在判斷單元74判斷結果為是時,不執行寫指令,將邏輯位址指向之前已寫入的與待寫入數據相同的數據保存的邏輯位址。
較佳的是,裝置更包括:
刪除單元77,用於在判斷單元74判斷結果為否,且快閃記憶體當前剩餘的儲存空間小於預先設定的臨界值時,刪除樣本庫中沒有邏輯位址對應的數據。
本實施例提供的快閃記憶體設備中數據儲存裝置可以使用在前述對應的快閃記憶體設備中數據儲存方法,詳情參見上述快閃記憶體設備中數據儲存方法實施例四的相關描述,在此不再贅述。
實施例八:
第8圖表示了本發明實施例八提供的快閃記憶體設備中數據儲存裝置之組成結構,為了便於說明,僅示出了與本發明實施例相關的部分。
該快閃記憶體設備中數據儲存裝置可以應用於儲存設備中,可以是運行於儲存設備內的軟體單元、硬體單元或者軟硬體相結合的單元,也可以作為獨立的掛件結合到儲存設備中或者運行於儲存設備的應用系統中。
該快閃記憶體設備中數據儲存裝置包括樣本庫建立單元81、指令接收單元82、獲取單元83、判斷單元84、寫入單元85以及指向單元86。其中,各單元的具體功能如下:
樣本庫建立單元81,用於建立樣本庫,樣本庫包含靜態樣本庫和動態樣本庫,靜態樣本庫中包含有已寫入且寫入次數大於預設值的數據以及與數據對應的邏輯位址,動態樣本庫中包含有已寫入數據的特徵值以及與已寫入數據對應的邏輯位址;
指令接收單元82,用於接收主機系統發送的寫指令,寫指令包含有待寫入的數據以及待寫入數據寫入快閃記憶體的邏輯位址;
獲取單元83,用於獲取待寫入數據的特徵值;
判斷單元84包括第一判斷模組841以及第二判斷模組842:
第一判斷模組841用於判斷靜態樣本庫中是否存在與待寫入數據相同的數據;
第二判斷模組842,用於在第一判斷模組841判斷結果為否時,判斷動態樣本庫中是否存在與待寫入數據的特徵值相同的特徵值;
寫入單元85,用於在第二判斷模組842判斷結果為否時,根據待寫入數據寫入快閃記憶體的邏輯位址寫入待寫入數據,並將該待寫入數據的特徵值及該待寫入數據對應的邏輯位址儲存至動態樣本庫;
指向單元86,用於在第一判斷模組841或第二判斷模組842判斷結果為是時,不執行寫指令,將邏輯位址指向之前已寫入的與待寫入數據相同的數據保存的邏輯位址。
較佳的是,裝置更包括:
刪除單元87,用於在第二判斷模組842判斷結果為否,且快閃記憶體當前剩餘的儲存空間小於預先設定的臨界值時,刪除樣本庫中沒有邏輯位址對應的數據。
本實施例提供的快閃記憶體設備中數據儲存裝置可以使用在前述對應的快閃記憶體設備中數據儲存方法,詳情參見上述快閃記憶體設備中數據儲存方法實施例五的相關描述,在此不再贅述。
本發明所屬技術領域中具有通常知識者可以理解為上述實施例六、實施例七、實施例八所包括的各個單元和模組只是按照功能邏輯進行劃分的,但並不侷限於上述的劃分,只要能夠實現相應的功能即可;另外,各功能單元和模組的具體名稱也只是為了便於相互區分,並不用於限制本發明的保護範圍。
綜上所述,本發明實施例在接收到寫指令後,可以藉由多種方式判斷寫指令中的待寫入數據是否之前已寫入過,在判定待寫入數據之前已寫入過時,則不執行寫指令,只需將寫指令中的邏輯位址指向之前已寫入的與待寫入數據相同的數據保存的邏輯位址,從而有效減少對快閃記憶體的寫操作,進而減少對快閃記憶體區塊的擦除操作,避免快閃記憶體的頻繁磨損,提高快閃記憶體的使用性能,延長快閃記憶體設備的使用壽命,具有較強的實用性。
以上所述僅為本發明的較佳實施例而已,並不用以限制本發明,凡在本發明的精神和原則之內所作的任何修改、等同替換和改進等,均應包含在本發明的保護範圍之內。
S201~S204...步驟
Claims (14)
- 一種快閃記憶體設備中數據儲存之方法,其方法包括:
接收一主機系統發送的一寫指令,該寫指令包含有一待寫入的數據以及該待寫入數據寫入快閃記憶體的一邏輯位址;
判斷該待寫入數據是否之前已寫入;
若否,根據該邏輯位址寫入該待寫入數據;
若是,不執行該寫指令,將該邏輯位址指向該之前已寫入的與該待寫入數據相同的數據保存的邏輯位址。 - 如申請專利範圍第1項所述之方法,其中在判斷該待寫入數據是否之前已寫入的步驟之前,更包括:
建立樣本庫,該樣本庫中包含有已寫入的數據以及與該數據對應的邏輯位址;
該判斷該待寫入數據是否之前已寫入具體包括:
判斷該樣本庫中是否存在與該待寫入數據相同的數據。 - 如申請專利範圍第2項所述之方法,其中該樣本庫為一靜態樣本庫,該靜態樣本庫中包含有寫入次數大於預設值的數據以及與該數據對應的邏輯位址。
- 如申請專利範圍第2項所述之方法,其中該樣本庫為一動態樣本庫,該動態樣本庫包含有已寫入數據的特徵值以及與該已寫入數據對應的邏輯位址;
該方法在判斷該待寫入數據是否之前已寫入的步驟之前,更包括:
獲取該待寫入數據的特徵值;
該判斷該待寫入數據是否之前已寫入具體包括:
判斷該動態樣本庫中是否存在與該待寫入數據的特徵值相同的特徵值。 - 如申請專利範圍第2項所述之方法,其中該樣本庫包含一靜態樣本庫和一動態樣本庫;
該靜態樣本庫中包含有寫入次數大於預設值的數據以及與該數據對應的邏輯位址,該動態樣本庫中包含有已寫入數據的特徵值以及與該已寫入數據對應的邏輯位址;
該方法在判斷該待寫入數據是否之前已寫入的步驟之前,更包括:
獲取該待寫入數據的特徵值;
該判斷該待寫入數據是否之前已寫入具體包括:
判斷該靜態樣本庫中是否存在與該待寫入數據相同的數據;
若否,判斷該動態樣本庫中是否存在與該待寫入數據的特徵值相同的特徵值。 - 如申請專利範圍第4或5項所述之方法,其中該方法更包括:
在該動態樣本庫中不存在與該待寫入數據的特徵值相同的特徵值時,根據該待寫入數據寫入快閃記憶體的邏輯位址寫入該待寫入數據,並將該待寫入數據的特徵值及該待寫入數據對應的邏輯位址儲存至該動態樣本庫。 - 如申請專利範圍第2項所述之方法,其中該方法更包括:
當該待寫入數據之前未寫入,且該快閃記憶體當前剩餘的儲存空間小於預先設定的臨界值時,刪除該樣本庫中沒有邏輯位址對應的數據。 - 一種快閃記憶體設備中數據儲存之裝置,其裝置包括:
一指令接收單元,用於接收一主機系統發送的一寫指令,該寫指令包含有待寫入的數據以及該待寫入數據寫入快閃記憶體的一邏輯位址;
一判斷單元,用於判斷該待寫入數據是否之前已寫入;
一寫入單元,用於在該判斷單元判斷結果為否時,根據該邏輯位址寫入該待寫入數據;
一指向單元,用於在該判斷單元判斷結果為是時,不執行該寫指令,將該邏輯位址指向該之前已寫入的與該待寫入數據相同的數據保存的邏輯位址。 - 如申請專利範圍第8項所述之裝置,其中該裝置更包括:
一樣本庫建立單元,用於建立樣本庫,該樣本庫中包含有已寫入的數據以及與該數據對應的邏輯位址;
該判斷單元具體用於,判斷該樣本庫中是否存在與該待寫入數據相同的數據。 - 如申請專利範圍第9項所述之裝置,其中該樣本庫為一靜態樣本庫,該靜態樣本庫中包含有寫入次數大於預設值的數據以及與該數據對應的邏輯位址。
- 如申請專利範圍第9項所述之裝置,其中該樣本庫為一動態樣本庫,該動態樣本庫中包含有已寫入數據的特徵值以及與該已寫入數據對應的邏輯位址;
該裝置更包括:
一獲取單元,用於獲取該待寫入數據的特徵值;
該判斷單元具體用於,判斷該動態樣本庫中是否存在與該待寫入數據的特徵值相同的特徵值。 - 如申請專利範圍第9項所述之裝置,其中該樣本庫包含一靜態樣本庫和一動態樣本庫;
該靜態樣本庫中包含有寫入次數大於預設值的數據以及與該數據對應的邏輯位址,該動態樣本庫中包含有已寫入數據的特徵值以及與該已寫入數據對應的邏輯位址;
該裝置更包括:
一獲取單元,用於獲取該待寫入數據的特徵值;
該判斷單元包括:
一第一判斷模組,用於判斷該靜態樣本庫中是否存在與該待寫入數據相同的數據;
一第二判斷模組,用於在該第一判斷模組判斷結果為否時,判斷該動態樣本庫中是否存在與該待寫入數據的特徵值相同的特徵值。 - 如申請專利範圍第11或12項所述之裝置,其中該寫入單元具體用於,在該動態樣本庫中不存在與該待寫入數據的特徵值相同的特徵值時,根據該待寫入數據寫入快閃記憶體的邏輯位址寫入該待寫入數據,並將該待寫入數據的特徵值及該待寫入數據對應的邏輯位址儲存至該動態樣本庫。
- 如申請專利範圍第9項所述之裝置,其中該裝置更包括:
一刪除單元,用於在該判斷單元判斷結果為否,且該快閃記憶體當前剩餘的儲存空間小於預先設定的臨界值時,刪除該樣本庫中沒有邏輯位址對應的數據。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210160252.1A CN102722455B (zh) | 2012-05-22 | 2012-05-22 | 一种闪存设备中数据存储的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201403607A true TW201403607A (zh) | 2014-01-16 |
TWI521518B TWI521518B (zh) | 2016-02-11 |
Family
ID=46948227
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW102117711A TWI521518B (zh) | 2012-05-22 | 2013-05-20 | 快閃記憶體設備中數據儲存之方法及裝置 |
Country Status (3)
Country | Link |
---|---|
CN (1) | CN102722455B (zh) |
TW (1) | TWI521518B (zh) |
WO (1) | WO2013174210A1 (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102722455B (zh) * | 2012-05-22 | 2015-01-28 | 深圳市江波龙电子有限公司 | 一种闪存设备中数据存储的方法及装置 |
CN103049388B (zh) * | 2012-12-06 | 2015-12-23 | 深圳市江波龙电子有限公司 | 一种分页存储器件的压缩管理方法及装置 |
CN103049387B (zh) * | 2012-12-06 | 2015-12-09 | 深圳市江波龙电子有限公司 | 一种分页存储器件的压缩管理方法及装置 |
CN103648053A (zh) * | 2013-12-23 | 2014-03-19 | 乐视致新电子科技(天津)有限公司 | 在智能电视中连接远程存储设备的方法和装置 |
CN105354152B (zh) * | 2014-08-19 | 2018-06-26 | 华为技术有限公司 | 非易失性存储器及磨损均衡方法 |
CN104461754B (zh) * | 2014-12-10 | 2018-06-19 | 福州瑞芯微电子股份有限公司 | 一种监控eMMC的方法和装置 |
CN105260133B (zh) * | 2015-09-22 | 2019-04-30 | Tcl移动通信科技(宁波)有限公司 | 一种移动终端emmc的数据写入方法及系统 |
CN110830378B (zh) * | 2018-08-07 | 2022-05-17 | 迈普通信技术股份有限公司 | 一种地址表项更新方法及交换设备 |
CN110674057A (zh) * | 2019-09-06 | 2020-01-10 | 苏州浪潮智能科技有限公司 | 一种数据处理方法及系统 |
CN112114756B (zh) * | 2020-09-27 | 2022-04-05 | 海光信息技术股份有限公司 | 存储系统及电子设备 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100538662C (zh) * | 2007-07-05 | 2009-09-09 | 炬力集成电路设计有限公司 | 一种基于局部采样的存储器的磨损平衡方法 |
CN101571833B (zh) * | 2008-04-29 | 2012-03-21 | 深圳市朗科科技股份有限公司 | 存储介质的保护方法及装置 |
CN101719099B (zh) * | 2009-11-26 | 2011-12-07 | 成都市华为赛门铁克科技有限公司 | 减小固态硬盘写入放大的方法及装置 |
CN102722455B (zh) * | 2012-05-22 | 2015-01-28 | 深圳市江波龙电子有限公司 | 一种闪存设备中数据存储的方法及装置 |
-
2012
- 2012-05-22 CN CN201210160252.1A patent/CN102722455B/zh active Active
-
2013
- 2013-05-07 WO PCT/CN2013/075259 patent/WO2013174210A1/zh active Application Filing
- 2013-05-20 TW TW102117711A patent/TWI521518B/zh active
Also Published As
Publication number | Publication date |
---|---|
CN102722455B (zh) | 2015-01-28 |
WO2013174210A1 (zh) | 2013-11-28 |
TWI521518B (zh) | 2016-02-11 |
CN102722455A (zh) | 2012-10-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI521518B (zh) | 快閃記憶體設備中數據儲存之方法及裝置 | |
KR102500661B1 (ko) | 다중 레벨 셀 모드 비휘발성 메모리를 위한 비용 최적화된 단일 레벨 셀 모드 비휘발성 메모리 | |
EP2988221B1 (en) | Controller, flash memory device and method for writing data into flash memory device | |
US8392649B2 (en) | Memory storage device, controller, and method for responding to host write commands triggering data movement | |
US10331584B2 (en) | Internal system namespace exposed through use of two local processors and controller memory buffer with two reserved areas | |
CN107430554B (zh) | 通过使用数据的可压缩性作为高速缓存插入的标准来提高存储高速缓存性能 | |
WO2017041570A1 (zh) | 向缓存写入数据的方法及装置 | |
EP3196767B1 (en) | Method for writing data into flash memory device, flash memory device and storage system | |
US10754785B2 (en) | Checkpointing for DRAM-less SSD | |
US20170270045A1 (en) | Hybrid memory device and operating method thereof | |
EP3142014B1 (en) | Method, device and user equipment for reading/writing data in nand flash | |
JP2013239099A (ja) | 制御装置、記憶装置、記憶制御方法 | |
US20190042153A1 (en) | Mass storage device capable of fine grained read and/or write operations | |
TWI454922B (zh) | 記憶體儲存裝置及其記憶體控制器與資料寫入方法 | |
TW201814489A (zh) | 資料儲存方法與資料儲存系統 | |
WO2020192710A1 (zh) | 基于lsm数据库的垃圾处理的方法、固态硬盘以及存储装置 | |
TW201738750A (zh) | 儲存裝置及其控制單元、可用於儲存裝置的資料儲存方法 | |
CN104407990A (zh) | 一种磁盘访问方法及装置 | |
US9971549B2 (en) | Method of operating a memory device | |
US11775209B2 (en) | Controller and operation method thereof | |
JP2022184735A (ja) | プログラム起動方法及び機器、記憶媒体 | |
CN111897745B (zh) | 一种数据存储方法、装置、电子设备及存储介质 | |
TWM548816U (zh) | 利用主控端記憶體緩衝器之儲存裝置 | |
CN109002265B (zh) | 一种数据处理的方法以及相关装置 | |
US11455246B2 (en) | Garbage collection method for data storage device |