[發明專利]固態硬盤的靜態磨損均衡方法及系統有效
| 申請號: | 201110264402.9 | 申請日: | 2011-09-07 |
| 公開(公告)號: | CN102289412A | 公開(公告)日: | 2011-12-21 |
| 發明(設計)人: | 高立森;付宇卓;蔣江;劉婷 | 申請(專利權)人: | 上海交通大學;上海欣納電子技術有限公司 |
| 主分類號: | G06F12/06 | 分類號: | G06F12/06 |
| 代理公司: | 上海思微知識產權代理事務所(普通合伙) 31237 | 代理人: | 鄭瑋 |
| 地址: | 200240 *** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 固態 硬盤 靜態 磨損 均衡 方法 系統 | ||
技術領域
本發明涉及計算機數據存儲技術領域,尤其是涉及一種固態硬盤的靜態磨損均衡方法及系統。
背景技術
在計算機數據存儲技術中,基于閃存的固態硬盤具有體積小、功耗低、速度快、抗沖擊能力強等多種優點。而由于閃存固有的缺點,固態硬盤也有不足。與傳統硬盤不同,固態硬盤通常只有有限的擦除周期。對于單層式存儲(SLC,single-level?cells),通常可以擦除10萬次;對于多層式存儲(MLC,multi-level?cells)通常只可以擦除1萬次。NAND?Flash中,數據更新的頻率不同。經常被更新的數據被稱為熱數據,而相對較少更新的數據被稱為冷數據。若熱數據持續不斷的訪問同一個塊,導致該塊很快被磨穿(wear?out),固態硬盤將會變得很不穩定而無法使用。如何將擦除操作均勻的分散在整個存儲空間,使NANDFlash的使用壽命達到最長,是磨損均衡算法(wear?leveling?algorithm)的重點。
大多數磨損均衡算法分為兩類:動態磨損均衡算法和靜態磨損均衡算法。其中,動態磨損均衡算法通過選用擦除次數少的塊作為回收目的塊,達到防止某塊反復被擦除以至于磨穿的目的。盡管動態磨損均衡算法很大程度上提高了閃存的壽命,但是動態磨損均衡算法有其固有的缺點:被選中的塊通常存有熱數據,而存有冷數據的塊很可能幾乎不被使用,導致閃存磨損的極度不均衡;靜態磨損均衡算法通過移動冷數據和熱數據以達到磨損均衡的目的,也是目前磨損均衡算法研究的重點。
現有的靜態磨損均衡算法過于重視通過移動和遷移冷熱數據以減少擦除次數的方差。冷數據應該從年輕塊(擦除次數較少的塊)移到年老塊(擦除次數較多的塊),而熱數據應該從年老塊遷移到年輕塊中,似乎已成為共識。但是,如何判斷數據的冷熱屬性是一個關鍵的問題。有些算法通過跟蹤記錄每個數據何時被訪問來進行估計和判斷,因此需要占用大量的內存;有些通過模擬最近最少訪問(LRU)算法來進行判斷,需要占用大量的中央處理器(CPU)運算時間。即使如此,冷熱數據屬性仍然有可能被錯誤判斷,導致年老塊存入熱數據而磨損的更加厲害,年輕塊存入冷數據仍然很少使用,使閃存的磨損更加不均勻。而且一旦熱數據變為冷數據,或者冷數據逐漸變熱,這些冷熱數據的移動顯得毫無意義。
另外,何時進行數據遷移是另一個需要解決的問題。通常有些算法選擇在最年老塊和最年輕塊的擦除次數差值大于某閾值時進行冷熱數據遷移。因此,需要維持隊列或者樹等數據結構對閃存中所有塊進行排序和搜索的操作,同樣需占用大量內存空間和CPU時間。為了解決這個問題,有些算法按照概率選擇目的塊進行操作,算法代價大大減少但是性能卻無法得到保證。在閃存中,塊作為擦除操作的基本單位,其特點并沒有在以前算法中得到體現和重視。
由上可知,需要一種固態硬盤的靜態磨損均衡方法,其能在占用較少內存和消耗較短CPU時間的同時保證磨損均衡算法的性能。
發明內容
本發明所要解決的技術問題是:無法在占用較少內存和消耗較短CPU時間的同時保證磨損均衡算法的性能。
為解決上述技術問題,本發明采用如下技術方案:
一種固態硬盤的靜態磨損均衡方法,所述方法包括以下步驟:
步驟S1:以對應于被擦除塊的物理地址作為鍵,以一個16位的計數器作為值構造哈希表并存放在內存中;
步驟S2:當有塊被擦除事件發生時,對存放在內存中的哈希表進行衰老和更新;
步驟S3:對存放在內存中的哈希表中的塊對應的計數器進行比較以區分冷熱塊,并對所述哈希表中冷熱塊進行冷熱數據交換。
進一步,在上述的固態硬盤的靜態磨損均衡方法中,所述步驟S2具體包括以下步驟:
以對應于被擦除塊的物理地址對所述哈希表的鍵進行搜索,若搜索成功,則對所述哈希表的值進行更新;若搜索不成功,則判斷所述哈希表是否已滿,
若所述哈希表已滿,對所述哈希表進行清洗操作;
若所述哈希表未滿,則對所述哈希表加入以當前地址為鍵的對。
進一步,在上述的固態硬盤的靜態磨損均衡方法中,所述步驟S2中對所述哈希表的值進行更新的步驟具體包括:
當有塊被擦除事件發生時,所有哈希表的值即計數器右移一位;
將對應于該擦除事件的塊的物理地址的值即計數器最高位(MSB)置為1。
進一步,在上述的固態硬盤的靜態磨損均衡方法中,所述步驟S3中對存放在內存中的哈希表中的塊對應的計數器進行比較以區分冷熱塊具體包括以下步驟:
根據閃存容量及內存大小,取數值N;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于上海交通大學;上海欣納電子技術有限公司,未經上海交通大學;上海欣納電子技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110264402.9/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:自動售貨機
- 下一篇:一種基于多目標機的衛星姿態控制半物理仿真系統





