[發明專利]一種實現multi stream功能的方法和系統有效
| 申請號: | 201910554087.X | 申請日: | 2019-06-25 |
| 公開(公告)號: | CN110377270B | 公開(公告)日: | 2023-01-06 |
| 發明(設計)人: | 魏增健 | 申請(專利權)人: | 蘇州浪潮智能科技有限公司 |
| 主分類號: | G06F8/20 | 分類號: | G06F8/20 |
| 代理公司: | 濟南誠智商標專利事務所有限公司 37105 | 代理人: | 侯德玉 |
| 地址: | 215100 江蘇省蘇州市吳*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 實現 multi stream 功能 方法 系統 | ||
1.一種實現multi stream功能的方法,其特征在于,包括以下步驟:
S1:FTL層首先申請若干個free block,所述free block的數量=2* stream的數量;前端向FTL層發出分配stream id請求, FTL層在收到所述stream id請求后,為所述stream分配free block,在FTL層分配完成后回復前端分配stream id 完成;在步驟S1中,在FTL層收到前端釋放stream id消息后,FTL層關閉所述stream id對應的open block,回復前端釋放stream id完成;
在步驟S1中,在FTL層收到前端釋放stream id消息后,先將對應write buffer數據flash 至nand flash, 所述write buffer 未滿空間填充dummy數據,之后再向所述block填充多個字線的dummy數據,然后關閉所述block,記錄所述block對應的 stream id,然后FTL層回復前端釋放stream id完成;
S2:FTL層收到前端發出的stream 寫請求,先為stream寫請求分配write buffer,所述write buffer填充滿后數據寫入所述stream 對應的block中;若無法為所述stream 寫請求分配出空閑的write buffer,則寫入其他的stream或者非stream寫請求對應的writebuffer中;若收到所述非stream寫請求無法為所述stream寫請求分配write buffer,則在所有write buffer中選出活動的write buffer并將數據寫入;
S3:stream 對應的block 寫滿時,close 所述block, 同時帶上所述block對應的stream id。
2.根據權利要求1所述的一種實現multi stream功能的方法,其特征在于,在步驟S3中,在磨損均衡或GC回收時,每次只選擇一種類型的隊列做數據搬移,將相應有效數據填滿目的block,所述目的block關閉時需要標明stream id。
3.一種實現multi stream功能的系統,其特征在于,包括stream id請求和釋放模塊、stream 寫請求處理模塊和stream block關閉管理模塊;
所述stream id請求和釋放模塊用于FTL層首先申請若干個free block,所述freeblock的數量=2* stream的數量;前端向FTL層發出分配stream id請求, FTL層在收到所述stream id請求后,為所述stream 分配free block,在FTL層分配完成后回復前端分配stream id 完成;在FTL層收到前端釋放stream id消息后,FTL層關閉所述stream id對應的open block,回復前端釋放stream id完成;所述stream id請求和釋放模塊包括streamid請求模塊和stream id釋放模塊;所述stream id請求模塊用于FTL層首先申請若干個free block,所述free block的數量=2* stream的數量;前端向FTL層發出分配stream id請求, FTL層在收到所述stream id請求后,為所述stream 分配free block,在FTL層分配完成后回復前端分配stream id 完成;
所述stream id釋放模塊用于在FTL層收到前端釋放stream id消息后,先將對應writebuffer數據 flash 至nand flash, 所述write buffer 未滿空間填充dummy數據,之后再向所述block填充多個字線的dummy數據,然后關閉所述block,記錄所述block對應的stream id,然后FTL層回復前端釋放stream id完成;
所述stream 寫請求處理模塊用于FTL層收到前端發出的stream 寫請求,先為stream寫請求分配write buffer,所述write buffer填充滿后數據寫入所述stream 對應的block中;若無法為所述stream 寫請求分配出空閑的write buffer,則寫入其他的stream或者非stream寫請求對應的write buffer中;若收到所述非stream寫請求無法為所述stream寫請求分配write buffer,則在所有write buffer中選出活動的write buffer并將數據寫入;
所述stream block關閉管理模塊用于stream 對應的block 寫滿時,close 所述block, 同時帶上所述block對應的stream id。
4.根據權利要求3所述的一種實現multi stream功能的系統,其特征在于,所述stream寫請求處理模塊包括分配write buffer模塊和write buffer處理模塊;
所述分配write buffer模塊用于FTL層收到前端發出的stream 寫請求,先為stream寫請求分配write buffer;
所述write buffer處理模塊用于所述write buffer填充滿后數據寫入所述stream 對應的block中;若無法為所述stream 寫請求分配出空閑的write buffer,則寫入其他的stream或者非stream寫請求對應的write buffer中;若收到所述非stream寫請求無法為所述stream寫請求分配write buffer,則在所有write buffer中選出活動的write buffer并將數據寫入 。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于蘇州浪潮智能科技有限公司,未經蘇州浪潮智能科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910554087.X/1.html,轉載請聲明來源鉆瓜專利網。





