[發明專利]用于SSD的多通道動態讀寫調度方法有效
| 申請號: | 201310096932.6 | 申請日: | 2013-03-25 |
| 公開(公告)號: | CN103135945A | 公開(公告)日: | 2013-06-05 |
| 發明(設計)人: | 肖儂;陳志廣;盧宇彤;周恩強;劉芳;所光;謝旻;董勇;張偉 | 申請(專利權)人: | 中國人民解放軍國防科學技術大學 |
| 主分類號: | G06F3/06 | 分類號: | G06F3/06 |
| 代理公司: | 湖南兆弘專利事務所 43008 | 代理人: | 趙洪;譚武藝 |
| 地址: | 410073 湖南省長沙市硯瓦池正*** | 國省代碼: | 湖南;43 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 用于 ssd 通道 動態 讀寫 調度 方法 | ||
技術領域
本發明涉及SSD(固態盤)內部的讀寫調度方法,具體涉及一種用于SSD的多通道動態讀寫調度方法。
背景技術
基于閃存的SSD(Solid?State?Drive,固態盤)是一種新型的大容量存儲設備。閃存的基本讀寫單位是頁(Page)。如果一個頁已經包含一份數據,當需要更新這份數據時,不能將新的數據直接寫到該頁上,因為已經包含數據的頁只有被擦除(Erase)之后才能再次寫入新的數據。擦除操作延遲很大,且擦除操作的基本單位是塊(Block),一塊包含2i(64或128)個頁,不能因為一頁數據的修改就擦除整個塊。所以,對于SSD中的數據更新,通常的做法是將更新的數據寫到一個新的頁,如何選擇新的頁取決于SSD的寫調度策略。目前采用的調度方法主要有以下幾種:
1、考慮壽命的寫調度策略。閃存擦除操作的基本單位是塊,每個塊能擦除的次數是有限的。如果一塊的擦除次數超過限制,該塊內的數據出錯幾率變大,可能導致數據丟失。在SSD內部,所有塊的擦除次數應盡可能一致。如果一些塊因為擦除次數過多而損壞,SSD的總容量會減少。考慮壽命的寫調度策略就是在SSD的所有塊之間均勻的寫。具體做法是:主機端發出的寫請求到達時,SSD將數據優先寫到擦除次數最少的塊上。這種策略充分考慮了壽命問題,但不能兼顧讀寫延遲。例如,這種策略可能將多個寫請求調度到同一塊閃存芯片上,導致這些寫請求排隊等待,從而增大寫延遲。
2、通道間的輪轉調度策略。為了避免寫請求的排隊等待,可以將寫請求調度到不同的閃存芯片上,通道間的輪轉調度策略就是基于這一原理設計的。SSD包含多個通道,每個通道連接多塊閃存芯片。通道間的輪轉調度策略將寫請求依次調度到不同的通道上,寫請求之間不會相互影響。在一個通道內部,還可以采用考慮壽命的寫調度策略,優先將數據寫入該通道內擦除次數最少的塊上。這種調度策略可以避免寫請求之間的相互影響,但不能避免寫請求和讀請求之間的影響。如果一個通道正在響應讀請求,向該通道調度寫請求仍然會導致排隊等待。
3、空閑通道調度策略。空閑通道調度策略作進一步的改進,只向空閑的通道調度寫請求,盡可能避免寫請求之間、以及寫請求和讀請求之間的影響,但這種方法存在兩方面的缺陷。首先,由于一直向空閑的通道上調度寫請求,可能導致通道間寫入的數據量不均衡,一些通道上的塊過早的損壞,SSD容量減少。其次,不能完全消除寫請求對讀請求的影響。如果SSD向一個通道調度一個寫請求后,主機端隨后向該通道發送一個讀請求,讀請求不能調度到其它通道上,只能在該通道上排隊等待。由于寫操作延遲很大,且主機端的應用程序正在等待讀請求的數據,讀請求被阻塞會顯著增加應用程序的等待時間。
發明內容
本發明要解決的技術問題是提供一種各通道寫入均衡、SSD使用壽命長、寫請求對讀請求影響小、垃圾回收對讀請求影響小、讀延遲低的用于SSD的多通道動態讀寫調度方法。
為了解決上述技術問題,本發明采用的技術方案為:
一種用于SSD的多通道動態讀寫調度方法,其實施步驟如下:
1)在SSD內預先配備一個基于DRAM的寫緩沖,在所述寫緩沖中初始化用于指定SSD當前通道的目標通道、用于記錄目標通道累計寫請求數目的寫請求計數器、用于緩存寫請求的地址和數據的FIFO隊列、用于記錄目標通道上讀請求的讀請求序列;
2)根據輪轉調度策略從SSD的多個通道中選擇一個目標通道,跳轉執行下一步;
3)接受主機端發送的讀寫請求,跳轉執行下一步;
4)判定讀寫請求的請求類型,如果請求類型為讀請求,跳轉執行步驟5);如果請求類型為寫請求,跳轉執行步驟7);
5)判定所述讀請求是否為指向目標通道的讀請求,若讀請求指向目標通道則跳轉執行步驟6),否則將讀請求的數據從閃存芯片取出后直接返回給用戶,等待在下一個讀寫請求到來時跳轉執行步驟3);
6)將讀請求記錄至目標通道的讀請求序列中,并將讀請求的數據從閃存芯片中讀出返回給用戶,等待在下一個讀寫請求到來時跳轉執行步驟3);
7)將寫請求的地址和數據加入FIFO隊列中,跳轉執行下一步;
8)通過所述寫請求計數器將寫請求數目進行累加,跳轉執行下一步;
9)檢測寫請求數目是否大于指定閾值,如果大于指定閾值則跳轉執行步驟10);否則等待在下一個讀寫請求到來時跳轉執行步驟3);
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國人民解放軍國防科學技術大學,未經中國人民解放軍國防科學技術大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310096932.6/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種紅外線頻譜足浴桶
- 下一篇:車輛到位檢測裝置





