[發(fā)明專利]多周期取指分支預(yù)測機制及分支別名、抖動優(yōu)化方案在審
| 申請?zhí)枺?/td> | 202111301148.5 | 申請日: | 2021-11-04 |
| 公開(公告)號: | CN114020334A | 公開(公告)日: | 2022-02-08 |
| 發(fā)明(設(shè)計)人: | 劉德;魏敬和;唐茗敏 | 申請(專利權(quán))人: | 中國電子科技集團(tuán)公司第五十八研究所;中科芯集成電路有限公司 |
| 主分類號: | G06F9/38 | 分類號: | G06F9/38;G06F9/30 |
| 代理公司: | 無錫派爾特知識產(chǎn)權(quán)代理事務(wù)所(普通合伙) 32340 | 代理人: | 葉昕;楊立秋 |
| 地址: | 214000 *** | 國省代碼: | 江蘇;32 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 周期 分支 預(yù)測 機制 別名 抖動 優(yōu)化 方案 | ||
本發(fā)明公開一種多周期取指分支預(yù)測機制及分支別名、抖動優(yōu)化方案,屬于計算機體系架構(gòu)領(lǐng)域,第一級預(yù)測器包括微型分支目標(biāo)緩存器,所述微型分支目標(biāo)緩存器采用寄存器陣列作為存儲單元,并能夠?qū)Ψ种Х较蚝头种繕?biāo)都進(jìn)行預(yù)測;第二級預(yù)測器包括大型分支目標(biāo)緩存器和雙峰表,所述采用SRAM作為存儲單元并支持大范圍目標(biāo)跳轉(zhuǎn),所述雙峰表對分支方向進(jìn)行預(yù)測;第三級預(yù)測器為TAGE預(yù)測器和循環(huán)預(yù)測器,采用SRAM作為存儲單元并利用全局歷史進(jìn)行預(yù)測;對于第三級預(yù)測器,還輔以返回地址堆棧RAS和分支譯碼單元進(jìn)行預(yù)測。該多周期取指分支預(yù)測機制適用于多級流水的取指單元,能夠提供快速且準(zhǔn)確的分支預(yù)測,是一種具有實際應(yīng)用價值的分支預(yù)測機制。
技術(shù)領(lǐng)域
本發(fā)明涉及計算機體系架構(gòu)技術(shù)領(lǐng)域,特別涉及一種多周期取指分支預(yù)測機制及分支別名、抖動優(yōu)化方案。
背景技術(shù)
分支預(yù)測器是通用處理器CPU內(nèi)核的基本組成單元,其能夠通過預(yù)測取指的方式解決處理器流水線中的控制冒險。通過預(yù)測下周期取指,流水線能夠以推測的方式工作,從而提高流水線的效率,提升指令集并行度。
目前,分支預(yù)測器有靜態(tài)預(yù)測和動態(tài)預(yù)測兩大類。其中動態(tài)預(yù)測又可大致分為一級動態(tài)預(yù)測和兩級動態(tài)預(yù)測結(jié)構(gòu)。兩級動態(tài)預(yù)測結(jié)構(gòu)通過引入分支歷史能夠達(dá)到較高的預(yù)測準(zhǔn)確率,因此被廣泛采用。但是對于不同的處理器微架構(gòu),分支預(yù)測器的具體實現(xiàn)需要結(jié)合處理器微架構(gòu)特點進(jìn)行適配。只有通過適配實現(xiàn)符合當(dāng)前處理器微架構(gòu)特點的分支預(yù)測器才能最大程度的提高所適配處理器的指令集并行度。此外,分支預(yù)測器本身也存在一些普遍性缺陷,如分支別名和分支抖動,這些缺陷在一定程度上限制了分支預(yù)測器的性能。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種多周期取指分支預(yù)測機制及分支別名、抖動優(yōu)化方案,以解決背景技術(shù)中的問題。
為解決上述技術(shù)問題,本發(fā)明提供了一種多周期取指分支預(yù)測機制,包括第一級預(yù)測器、第二級預(yù)測器和第三級預(yù)測器;
所述第一級預(yù)測器包括微型分支目標(biāo)緩存器,所述微型分支目標(biāo)緩存器采用寄存器陣列作為存儲單元,并能夠?qū)Ψ种Х较蚝头种繕?biāo)都進(jìn)行預(yù)測;
所述第二級預(yù)測器包括大型分支目標(biāo)緩存器和雙峰表,所述采用SRAM作為存儲單元并支持大范圍目標(biāo)跳轉(zhuǎn),所述雙峰表對分支方向進(jìn)行預(yù)測;
所述第三級預(yù)測器為TAGE預(yù)測器和循環(huán)預(yù)測器,采用SRAM作為存儲單元并利用全局歷史進(jìn)行預(yù)測;
對于第三級預(yù)測器,還輔以返回地址堆棧RAS和分支譯碼單元進(jìn)行預(yù)測。
可選的,所述第一級預(yù)測器的存儲表項包括標(biāo)記域、飽和計數(shù)器、偏移量以及是否為條件分支指令標(biāo)志;預(yù)測時,是否為條件分支指令標(biāo)志將決定分支方向預(yù)測由飽和計數(shù)器提供還是直接跳轉(zhuǎn)。
可選的,所述第二級預(yù)測器的存儲表項包括標(biāo)記域、偏移量、擴展目標(biāo)地址、是否需要擴展標(biāo)志以及否為條件分支指令標(biāo)志;預(yù)測時,是否為條件分支指令標(biāo)志將決定分支方向預(yù)測由雙峰表的飽和計數(shù)器提供還是直接跳轉(zhuǎn);是否需要擴展標(biāo)志將決定分支目標(biāo)預(yù)測由擴展目標(biāo)地址緩存直接提供還是由偏移量通過有符號運算得到。
可選的,所述TAGE預(yù)測器包括基準(zhǔn)預(yù)測器和若干個標(biāo)記預(yù)測表,每一個標(biāo)記預(yù)測表的表項由飽和計數(shù)器,標(biāo)記域以及使用度計數(shù)器組成,所述飽和計數(shù)器、所述標(biāo)記域以及所述使用度計數(shù)器的位寬靈活設(shè)置。
可選的,所述第三級預(yù)測器以第二級預(yù)測器的雙峰表為基準(zhǔn)預(yù)測器,并以循環(huán)預(yù)測器對TAGE預(yù)測器預(yù)測的循環(huán)體進(jìn)行輔助修正。
可選的,所述第三級預(yù)測器的最終預(yù)測結(jié)果由分支譯碼單元和返回地址堆棧RAS共同決定。
本發(fā)明還提供了一種分支別名優(yōu)化方案,通過利用Sobel特征提取算子完成對虛擬PC的特征提取,并以特征提取后的值為索引對雙峰表和TAGE預(yù)測器進(jìn)行索引。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于中國電子科技集團(tuán)公司第五十八研究所;中科芯集成電路有限公司,未經(jīng)中國電子科技集團(tuán)公司第五十八研究所;中科芯集成電路有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202111301148.5/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 圖像編碼裝置、圖像編碼方法、圖像譯碼裝置、圖像譯碼方法、程序以及記錄介質(zhì)
- 圖像編碼裝置、圖像編碼方法、圖像譯碼裝置、圖像譯碼方法
- 圖像編碼裝置、圖像編碼方法、圖像譯碼裝置、圖像譯碼方法
- 基于時間序列預(yù)測模型適用性量化的預(yù)測模型選擇方法
- 圖像編碼裝置、圖像編碼方法、圖像譯碼裝置、圖像譯碼方法
- 分類預(yù)測方法及裝置、預(yù)測模型訓(xùn)練方法及裝置
- 幀內(nèi)預(yù)測的方法及裝置
- 圖像預(yù)測方法及裝置、電子設(shè)備和存儲介質(zhì)
- 文本預(yù)測方法、裝置以及電子設(shè)備
- 模型融合方法、預(yù)測方法、裝置、設(shè)備及存儲介質(zhì)





