[發(fā)明專利]一種Cache的分配方法和裝置有效
| 申請?zhí)枺?/td> | 201310692431.4 | 申請日: | 2013-12-16 |
| 公開(公告)號: | CN104714898B | 公開(公告)日: | 2018-08-21 |
| 發(fā)明(設計)人: | 康海容;邱均華;錢少雄;施懿 | 申請(專利權(quán))人: | 深圳市國微電子有限公司 |
| 主分類號: | G06F12/0871 | 分類號: | G06F12/0871 |
| 代理公司: | 深圳中一專利商標事務所 44237 | 代理人: | 劉朗星 |
| 地址: | 518000 廣東省深圳市南*** | 國省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 cache 分配 方法 裝置 | ||
1.一種Cache的分配方法,其特征在于,其中的Cache包括若干個大小相同的存儲組,所述存儲組中包括數(shù)據(jù)及狀態(tài)存儲區(qū)、地址標簽存儲區(qū)和寄存器組區(qū),所述寄存器組區(qū)包括處理器進程號寄存器、Cache缺失率寄存器和Cache組標記寄存器,所述方法包括:
所述寄存器組區(qū)是通過在硬件內(nèi)部設置的硬件內(nèi)部寄存器組區(qū);
獲取所述Cache缺失率寄存器所記錄的進程號的Cache缺失率;
判斷所述進程號的Cache缺失率是否高于預設的Cache缺失率閾值;
如果所述進程號的Cache缺失率高于預設的Cache缺失率閾值,調(diào)整Cache組標記寄存器、進程號寄存器增加所述進程號對應存儲組;
其中,所述獲取所述Cache缺失率寄存器記錄的進程號的Cache缺失率步驟為:
根據(jù)所述Cache缺失率寄存器記錄的進程號,查詢所述進程號對應的多個存儲組;
根據(jù)所述查詢的進程號對應的多個存儲組,獲取所述多個存儲組的Cache缺失率的平均值,作為所述進程號的Cache缺失率。
2.根據(jù)權(quán)利要求1所述方法,其特征在于,所述Cache還包括最小缺失率寄存器,所述判斷所述進程號的Cache缺失率是否高于預設的Cache缺失率閾值步驟之后,所述方法還包括:
由缺失率寄存器記錄每個周期中最小缺失率的存儲組;
在Cache數(shù)據(jù)行替換時,如果所述進程號的Cache缺失率低于預設的Cache缺失率閾值,則對所述進程號中的缺失率最小的存儲組,查找所述存儲組中最少使用的數(shù)據(jù)行作為替換數(shù)據(jù)行。
3.根據(jù)權(quán)利要求1所述方法,其特征在于,所述如果所述進程號的Cache缺失率高于預設的Cache缺失率閾值,調(diào)整Cache組標記寄存器、進程號寄存器增加所述進程號對應存儲組步驟包括:
查找Cache中是否還有未使用的存儲組;
如果所述Cache中有未使用的存儲組,則調(diào)整Cache組標記寄存器、進程號寄存器為所述進程號分配新的存儲組。
4.根據(jù)權(quán)利要求3所述方法,其特征在于,所述查找Cache中是否還有未使用的存儲組之后,所述方法還包括:
如果所述Cache中沒有未使用的存儲組,則查找最近最少使用的進程號所對應的存儲組;
將所述查找的存儲組作為Cache缺失率高于預設的Cache缺失率閾值的進程號的新增加的存儲組。
5.根據(jù)權(quán)利要求1所述方法,其特征在于,在所述獲取所述Cache缺失率寄存器所記錄的進程號的Cache缺失率的步驟之前,所述方法還包括:
判斷在Cache中是否存在操作的數(shù)據(jù)的硬件地址所屬的進程號;
如果Cache中不存在所述硬件地址所屬的進程號,分配新的存儲組寫入所述進程號對應的數(shù)據(jù);
如果Cache中存在所述硬件地址所屬的進程號,則轉(zhuǎn)入獲取所述Cache缺失率寄存器所記錄的進程號的Cache缺失率的步驟。
6.一種Cache的分配裝置,其特征在于,其中的Cache包括若干個大小相同的存儲組,所述存儲組中包括數(shù)據(jù)及狀態(tài)存儲區(qū)、地址標簽存儲區(qū)和寄存器組區(qū),所述寄存器組區(qū)包括處理器進程號寄存器、Cache缺失率寄存器和Cache組標記寄存器,所述裝置包括:
所述寄存器組區(qū)是通過在硬件內(nèi)部設置的硬件內(nèi)部寄存器組區(qū);
獲取單元,用于獲取所述Cache缺失率寄存器所記錄的進程號的Cache缺失率;
判斷單元,用于判斷所述進程號的Cache缺失率是否高于預設的Cache缺失率閾值;
第一調(diào)整單元,用于如果所述進程號的Cache缺失率高于預設的Cache缺失率閾值,調(diào)整Cache組標記寄存器、進程號寄存器增加所述進程號對應存儲組;
其中,所述獲取單元包括:
查詢子單元,用于根據(jù)所述Cache缺失率寄存器記錄的進程號,查詢所述進程號對應的多個存儲組;
獲取子單元,用于根據(jù)所述查詢的進程號對應的多個存儲組,獲取所述多個存儲組的Cache缺失率的平均值,作為所述進程號的Cache缺失率。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于深圳市國微電子有限公司,未經(jīng)深圳市國微電子有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310692431.4/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





