[發明專利]加快去分配命令處理的方法與存儲設備有效
| 申請號: | 201610803054.0 | 申請日: | 2016-09-05 |
| 公開(公告)號: | CN107797938B | 公開(公告)日: | 2022-07-22 |
| 發明(設計)人: | 于松海;蔡述楠;郭志紅;高慧娟 | 申請(專利權)人: | 北京憶恒創源科技股份有限公司 |
| 主分類號: | G06F12/06 | 分類號: | G06F12/06 |
| 代理公司: | 北京卓特專利代理事務所(普通合伙) 11572 | 代理人: | 張會會 |
| 地址: | 100192 北京市海淀區西小口*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 加快 分配 命令 處理 方法 存儲 設備 | ||
1.一種固態硬盤執行去分配命令的方法,其特征在于,包括:
根據去分配命令獲取去分配命令指示的邏輯地址范圍;其中,在去分配命令中設置或選擇去分配命令的執行效果,去分配命令的執行效果指執行去分配命令后,再讀取去分配命令所指示的邏輯地址范圍時,所得到的結果;
更新去分配表,將去分配命令指示的邏輯地址范圍對應的去分配表的表項設置為第一指定值;其中去分配表用于記錄FTL表中的邏輯地址是否被分配的信息;
指示去分配命令執行完成;
更新FTL表,將邏輯地址對應的FTL表的表項設置為指定值,該指定值作為物理地址,用于指示讀取該物理地址將獲取到為執行去分配命令所指定的值;其中,在更新FTL表前,對要更新的一個或多個邏輯地址對應的FTL表的表項加鎖,以避免其他任務同時訪問FTL表的這些表項;在更新FTL表之后,對被更新的一個或多個邏輯地址對應的FTL表的表項解鎖;
響應于收到讀命令,通過去分配表判斷所述讀命令所讀取的邏輯地址是否被分配,其中,若所讀取的邏輯地址未被分配,則以第二指定值作為對讀命令的響應,或者若所讀取的邏輯地址未被分配,以狀態信息向主機告知所讀取的邏輯地址無效、非法或處于一種或多種去分配狀態;
若所讀取的邏輯地址被分配,則查詢FTL表獲得要讀取的邏輯地址對應的物理地址,從物理地址讀取數據作為對讀命令的響應。
2.根據權利要求1所述的固態硬盤執行去分配命令的方法,其特征在于,還包括:
更新FTL表,將去分配命令指示的邏輯地址范圍對應的FTL表的表項設為第一指定值。
3.根據權利要求1或2所述的固態硬盤執行去分配命令的方法,其特征在于,還包括:
更新有效數據單元表,有效數據單元表用于記錄存儲設備的各物理數據單元的數據的狀態;
更新有效數據單元計數表,其中,有效數據單元計數表用于記錄物理塊、大塊或物理塊組中處于有效狀態的物理數據單元的數量。
4.根據權利要求3所述的固態硬盤執行去分配命令的方法,其特征在于,還包括:
依據有效數據單元計數表,更新物理塊、大塊或物理塊組的第一優先級,該第一優先級為用于執行垃圾回收操作的優先級;
依據第一優先級執行垃圾回收操作。
5.根據權利要求2所述的固態硬盤執行去分配命令的方法,其特征在于,
更新FTL表期間,阻止其他組件訪問正在被更新的FTL表的表項,或者,使其他組件不訪問正在被更新的FTL表的表項。
6.根據權利要求5所述的固態硬盤執行去分配命令的方法,其特征在于,還包括:
主機的驅動程序基于被告知的狀態信息,生成提供給讀取所述邏輯地址的應用的讀取結果或者數據。
7.根據權利要求1所述的固態硬盤執行去分配命令的方法,其特征在于,還包括:
響應于收到寫命令,為寫命令分配物理地址,根據所分配的物理地址更新FTL表以及去分配表。
8.一種存儲設備,其特征在于,包括控制部件、接口、DRAM和一個或多個NVM,其中,DRAM中存儲有去分配表和FTL表,接口用于與控制部件交換數據,控制部件根據去分配命令獲取去分配命令指示的邏輯地址范圍,其中,在去分配命令中設置或選擇去分配命令的執行效果,去分配命令的執行效果指執行去分配命令后,再讀取去分配命令所指示的邏輯地址范圍時,所得到的結果;并更新去分配表,將去分配命令指示的邏輯地址范圍對應的去分配表的表項設置為第一指定值,其中去分配表用于記錄FTL表中的邏輯地址是否被分配的信息,并指示去分配命令執行完成;
更新FTL表,將邏輯地址對應的FTL表的表項設置為指定值,該指定值作為物理地址,用于指示讀取該物理地址將獲取到為執行去分配命令所指定的值;其中,在更新FTL表前,對要更新的一個或多個邏輯地址對應的FTL表的表項加鎖,以避免其他任務同時訪問FTL表的這些表項;在更新FTL表之后,對被更新的一個或多個邏輯地址對應的FTL表的表項解鎖;
控制部件響應于收到讀命令,通過去分配表判斷所述讀命令所讀取的邏輯地址是否被分配,其中,若所讀取的邏輯地址未被分配,則以第二指定值作為對讀命令的響應,或者若所讀取的邏輯地址未被分配,以狀態信息向主機告知所讀取的邏輯地址無效、非法或處于一種或多種去分配狀態;若所讀取的邏輯地址被分配,則查詢FTL表獲得要讀取的邏輯地址對應的物理地址,從物理地址讀取數據作為對讀命令的響應。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京憶恒創源科技股份有限公司,未經北京憶恒創源科技股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201610803054.0/1.html,轉載請聲明來源鉆瓜專利網。





