[發明專利]用于直接跳轉的超前預測的方法及分支指令追蹤高速緩存在審
| 申請號: | 202111033727.6 | 申請日: | 2021-09-03 |
| 公開(公告)號: | CN113722243A | 公開(公告)日: | 2021-11-30 |
| 發明(設計)人: | 張然;王飛 | 申請(專利權)人: | 蘇州睿芯集成電路科技有限公司 |
| 主分類號: | G06F12/0802 | 分類號: | G06F12/0802;G06F12/0862;G06F12/0875 |
| 代理公司: | 北京科龍寰宇知識產權代理有限責任公司 11139 | 代理人: | 孫皓晨 |
| 地址: | 215125 江蘇省蘇州市中國(江蘇)自由貿易試驗區蘇州片*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 用于 直接 跳轉 超前 預測 方法 分支 指令 追蹤 高速緩存 | ||
1.一種用于直接跳轉的超前預測的方法,其特征在于,包括以下步驟:
步驟1:在第一級流水線階段訪問基于分支歷史信息的預測表和分支目標指令追蹤高速緩存器,其中,基于分支歷史信息的預測表包括當前分支預測表和超前分支指令追蹤高速緩存器預測表;
并在第二級流水線階段獲取超前分支指令追蹤高速緩存器預測表和分支目標指令追蹤高速緩存器的內容及系統緩存中的指令;
步驟2:判斷從系統緩存中取出的指令是否為分支指令,
如果不是分支指令,則按順序依次取出指令;
如果是分支指令,則進入步驟3;
步驟3:判斷獲取的該分支指令是否命中分支目標指令追蹤高速緩存器,
如果沒有命中,則將該分支指令的跳轉地址作為下次取指地址,并建立對應的超前預測的分支指令追蹤高速緩存項;
如果命中,則進入步驟4;
步驟4:直接從分支目標指令追蹤高速緩存器中獲取下一次需要執行的指令,并根據超前分支指令追蹤高速緩存器預測表預測下一次需要執行的指令的跳轉情況,
如果下一次需要執行的指令是分支指令并且預測跳轉,則將分支目標指令追蹤高速緩存器中存儲的分支指令的目標指令的跳轉地址作為下次取指地址;
否則,將分支目標指令追蹤高速緩存器中存儲的分支指令的目標指令的順序地址作為下次取指地址。
2.根據權利要求1所述的方法,其特征在于,步驟3中判斷分支目標指令是否命中分支指令追蹤高速緩存器具體為:
判斷分支指令與分支目標指令追蹤高速緩存器中對應的標簽是否匹配,如果匹配則為命中分支目標指令追蹤高速緩存器,否則為沒有命中分支目標指令追蹤高速緩存器。
3.一種用于直接跳轉的超前預測的分支指令追蹤高速緩存,其特征在于,包括:
基于分支歷史信息的預測表,用于實現兩次跳轉預測,其中,基于分支歷史信息的預測表包括當前分支預測表和超前分支指令追蹤高速緩存器預測表;
分支目標指令追蹤高速緩存器,其包括多個條目,每個條目存儲多條連續指令,多條連續指令包含分支指令,其中,每個條目作為分支目標指令追蹤高速緩存項包括:分支指令的目標指令、分支指令的目標指令的順序地址、分支指令的目標指令的跳轉地址及標簽;以及
系統緩存;其中,
在第一級流水線時,系統通過當前指令地址同時訪問所述分支目標指令追蹤高速緩存器、所述當前分支預測表和所述超前分支指令追蹤高速緩存器預測表,若所述當前分支預測表預測指令不跳轉,則處理器在第二級流水順序取指令;
若所述當前分支預測表預測指令跳轉并且所述分支目標指令追蹤高速緩存器命中,則處理器在第二級流水從所述分支目標指令追蹤高速緩存器中獲取下次需要執行的指令,同時由所述超前分支指令追蹤高速緩存器預測表對所述分支目標指令追蹤高速緩存器存放的指令進行預測,若預測發生跳轉則下次取指來源為所述分支指令的目標指令的跳轉地址;否則取指來源為所述分支指令的目標指令的順序地址。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于蘇州睿芯集成電路科技有限公司,未經蘇州睿芯集成電路科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202111033727.6/1.html,轉載請聲明來源鉆瓜專利網。





