[發(fā)明專利]存儲器管理方法以及存儲控制器有效
| 申請?zhí)枺?/td> | 201811032715.X | 申請日: | 2018-09-05 |
| 公開(公告)號: | CN110879794B | 公開(公告)日: | 2023-01-17 |
| 發(fā)明(設計)人: | 黃上濱;謝宏志;蕭又華 | 申請(專利權)人: | 深圳大心電子科技有限公司 |
| 主分類號: | G06F13/16 | 分類號: | G06F13/16;G06F13/10;G06F13/42 |
| 代理公司: | 深圳壹舟知識產權代理事務所(普通合伙) 44331 | 代理人: | 寇闖 |
| 地址: | 518057 廣東省深圳市南山*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 存儲器 管理 方法 以及 存儲 控制器 | ||
本發(fā)明提供一種存儲器管理方法。所述方法包括:存儲獲取的第一指令至指令佇列,并且根據(jù)當前指令階段設定所述第一指令的指令階段值,其中反應于判定所述第一指令為刷新指令,計算對應當前指令階段的指令階段計數(shù)值,并且調整所述當前指令階段;從所述指令佇列中選擇新的目標指令,根據(jù)所述目標指令的目標指令階段值以及對應的目標指令階段計數(shù)值來執(zhí)行所述目標指令,其中非預設值的所述目標指令階段計數(shù)值會被調整;根據(jù)調整后的所述目標指令階段計數(shù)值判斷是否回應主機系統(tǒng)對應所述目標指令階段值的目標刷新指令已經執(zhí)行完畢。
技術領域
本發(fā)明涉及一種存儲器管理方法,尤其涉及一種適用于配置有可復寫式非易失性存儲器模塊的存儲裝置的存儲器管理方法與存儲控制器。
背景技術
傳統(tǒng)的SATA(Serial Advanced Technology Attachment)接口的固態(tài)硬盤(配置有可復寫式非易失性存儲器模塊的存儲裝置)會使用進階主機控制器接口(Advanced HostController Interface,以下稱AHCI)標準,其允許軟件與SATA存儲裝置溝通。一般來說,AHCI具有 32個指令深度,即,允許主機系統(tǒng)同一時間內下達32個指令。
但是,隨著硬件本身的進展,SATA接口的固態(tài)硬盤也演化為PCIe(PeripheralComponent Interconnect express)接口的固態(tài)硬盤,并且PCIe接口的固態(tài)硬盤會使用非易失性存儲器主機控制器接口(Non-Volatile Memory express,以下稱NVMe)標準。一般來說,NVMe具有65536 個指令深度,即,允許主機系統(tǒng)同一時間內下達65536個指令。也就是說,因為NVMe標準可提供近兩千倍的指令深度,存儲控制器所需要管理的來自主機系統(tǒng)的指令的數(shù)量也會隨之大量增加。
因此,要如何在NVMe標準下管理所接收到的大量指令,進而提升PCIe接口的固態(tài)硬盤的處理指令的效率,是本領域人員研究的課題之一。
發(fā)明內容
本發(fā)明提供一種存儲器管理方法(也稱,主機指令管理方法)與存儲控制器,可有效率地消化指令佇列中的多個指令,并且降低刷新指令所造成的資源搶奪。
本發(fā)明的一實施例提供適用于配置有可復寫式非易失性存儲器模塊的存儲裝置的一種存儲器管理方法。所述方法包括下列步驟:(1)從指令緩沖器獲取新的第一指令,并且判斷所述第一指令是否為刷新指令(Flush Command),其中反應于判定所述第一指令為該刷新指令,執(zhí)行步驟(2a),其中反應于判定所述第一指令不為該刷新指令,執(zhí)行步驟(2b);(2a)根據(jù)一當前指令階段來設定所述刷新指令的指令階段值,將所述刷新指令存儲至指令佇列(Command Queue)中,識別所述指令佇列中對應所述當前指令階段的多個第二指令,并且計數(shù)所述多個第二指令的總數(shù)以成為對應所述當前指令階段的指令階段計數(shù)值;將所述當前指令階段從多個指令階段中的第一指令階段調整至第二指令階段;以及根據(jù)所述指令佇列的剩余空間以及所述指令佇列中的一或多個刷新指令的總數(shù)來執(zhí)行步驟(1)或步驟(3);(2b)根據(jù)所述當前指令階段來設定所述第一指令的指令階段值,將所述第一指令存儲至所述指令佇列,并且根據(jù)所述指令佇列的所述剩余空間來執(zhí)行步驟(1)或步驟(3);(3)不從所述指令緩沖器獲取新的第一指令,并且執(zhí)行步驟(4);(4)從所述指令佇列的一或多個非刷新指令中選擇新的目標指令,識別所述目標指令的目標指令階段值以及對應所述目標指令階段值的目標指令階段計數(shù)值,其中反應于所識別的所述目標指令階段計數(shù)值等于預設值,執(zhí)行步驟(5a),其中反應于所識別的所述目標指令階段計數(shù)值不等于預設值,執(zhí)行步驟(5b);(5a)執(zhí)行所述目標指令,并且反應于完成所述目標指令的執(zhí)行,從所述指令佇列中刪除所述目標指令,并且執(zhí)行步驟(1);(5b)改變所述目標指令階段計數(shù)值,并且根據(jù)改變后的所述目標指令階段計數(shù)值執(zhí)行步驟(5a)或步驟 (5c);(5c)執(zhí)行所述目標指令,回應一主機系統(tǒng)對應所述目標指令階段值的目標刷新指令已經執(zhí)行完畢,將所述目標指令階段計數(shù)值設定為所述預設值,并且執(zhí)行步驟(1)。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于深圳大心電子科技有限公司,未經深圳大心電子科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811032715.X/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:慣性離心力演示教具
- 下一篇:一種注射用L-蘋果酸的精制提純方法





