[發(fā)明專利]分支預(yù)測(cè)的方法及其微處理器以及數(shù)據(jù)處理系統(tǒng)在審
| 申請(qǐng)?zhí)枺?/td> | 202110595168.1 | 申請(qǐng)日: | 2021-05-28 |
| 公開(kāi)(公告)號(hào): | CN113760371A | 公開(kāi)(公告)日: | 2021-12-07 |
| 發(fā)明(設(shè)計(jì))人: | 陳丁明 | 申請(qǐng)(專利權(quán))人: | 晶心科技股份有限公司 |
| 主分類號(hào): | G06F9/38 | 分類號(hào): | G06F9/38 |
| 代理公司: | 北京同立鈞成知識(shí)產(chǎn)權(quán)代理有限公司 11205 | 代理人: | 宋興;臧建明 |
| 地址: | 中國(guó)臺(tái)灣新竹市新竹科*** | 國(guó)省代碼: | 臺(tái)灣;71 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 分支 預(yù)測(cè) 方法 及其 微處理器 以及 數(shù)據(jù)處理系統(tǒng) | ||
一種分支預(yù)測(cè)的方法及其微處理器以及數(shù)據(jù)處理系統(tǒng)。轉(zhuǎn)譯后備緩沖器條目皆有虛擬頁(yè)地址。分支目標(biāo)緩沖器條目包含代表對(duì)映分支地址和目標(biāo)地址的轉(zhuǎn)譯后備緩沖器條目的位置信息。分支預(yù)測(cè)執(zhí)行的方式是存取分支目標(biāo)緩沖器和轉(zhuǎn)譯后備緩沖器,其中代表轉(zhuǎn)譯后備緩沖器N個(gè)條目之一的位置信息用于判斷是否命中分支目標(biāo)緩沖器。如果命中分支目標(biāo)緩沖器,那么可透過(guò)使用分支目標(biāo)緩沖器中的目標(biāo)地址位置信息存取轉(zhuǎn)譯后備緩沖器以取得對(duì)映分支地址的分支目標(biāo)地址,或當(dāng)所命中的分支目標(biāo)緩沖器條目中的相同頁(yè)位被設(shè)定時(shí),使用分支頁(yè)地址來(lái)構(gòu)成對(duì)映分支地址的分支目標(biāo)地址。
技術(shù)領(lǐng)域
本公開(kāi)大體上涉及微處理器,尤其涉及分支預(yù)測(cè)的方法及其微處理器以及數(shù)據(jù)處理系統(tǒng)。
背景技術(shù)
在數(shù)據(jù)處理系統(tǒng)內(nèi),分支目標(biāo)緩沖器(branch target buffer;BTB)通常用于預(yù)測(cè)分支指令的結(jié)果和分支指令的目標(biāo)地址以便增強(qiáng)性能。由于微處理器透過(guò)增大流水線級(jí)(pipeline stages)的數(shù)目和并行執(zhí)行指令的數(shù)目來(lái)增強(qiáng)性能,因此分支目標(biāo)緩沖器(BTB)的大小通常隨之增大以便提高命中率且減少分支誤預(yù)測(cè)造成的性能損失。此外,4GB的數(shù)據(jù)存儲(chǔ)器對(duì)處理來(lái)自因特網(wǎng)的大量數(shù)據(jù)不再足夠,由此大部份高端微處理器需要64位存儲(chǔ)器地址而非10年以前的32位存儲(chǔ)器地址。然而,增大BTB的大小導(dǎo)致芯片面積增大、存取時(shí)間增長(zhǎng)以及增加BTB操作所需的功率。
發(fā)明內(nèi)容
根據(jù)實(shí)施例中的一個(gè),微處理器具備TLB和BTB。TLB包含多個(gè)由分支頁(yè)地址尋址的TLB條目。TLB用于根據(jù)指令頁(yè)地址來(lái)判斷多個(gè)TLB條目當(dāng)中是否命中至少一個(gè)TLB條目。每一TLB條目包含虛擬頁(yè)地址和對(duì)應(yīng)于L2 TLB其中一路的TLB路碼。BTB包含多個(gè)由分支地址尋址的BTB條目,每一條目包含分支地址簡(jiǎn)碼和目標(biāo)地址簡(jiǎn)碼。在實(shí)施例中,判斷是否命中BTB是透過(guò)命中TLB的TLB路碼用于選擇至少一個(gè)BTB條目達(dá)成。
根據(jù)實(shí)施例中的一個(gè),提供一種在微處理器中從分支地址進(jìn)行分支預(yù)測(cè)的方法。所述方法包含至少以下步驟:接收分支地址,根據(jù)分支地址的第一部分來(lái)存取TLB以從TLB陣列的TLB條目讀取TLB路碼,根據(jù)分支地址的第二部分來(lái)存取BTB以從BTB陣列選擇至少一個(gè)BTB條目,以及根據(jù)從TLB取得的TLB路碼來(lái)判斷是否命中BTB,其中命中BTB代表所選至少一個(gè)BTB條目與分支地址相關(guān)聯(lián)。
根據(jù)實(shí)施例中的一個(gè),提供一種數(shù)據(jù)處理系統(tǒng)。數(shù)據(jù)處理系統(tǒng)包括微處理器、耦合到微處理器的主存儲(chǔ)器、耦合到微處理器的總線橋以及耦合到總線橋的輸入/輸出裝置。微處理器包含TLB和BTB。TLB包含多個(gè)由分支地址尋址的TLB條目,且每一TLB條目包含一個(gè)虛擬頁(yè)地址標(biāo)記和對(duì)應(yīng)于L2TLB其中一路的TLB路碼。BTB包含多個(gè)由分支地址尋址的BTB條目,且每一條目包含分支地址簡(jiǎn)碼和目標(biāo)地址簡(jiǎn)碼。在實(shí)施例中,使用TLB路碼在分支預(yù)測(cè)時(shí)選擇至少一個(gè)BTB條目。
附圖說(shuō)明
當(dāng)結(jié)合附圖閱讀時(shí),從以下詳細(xì)描述會(huì)最好地理解本公開(kāi)。應(yīng)注意,根據(jù)業(yè)界標(biāo)準(zhǔn)慣例,各種特征未按比例繪制。實(shí)際上,為了論述清楚起見(jiàn),各種特征的尺寸經(jīng)過(guò)任意的增大或減小。
圖1是說(shuō)明根據(jù)本公開(kāi)的一些實(shí)施例的數(shù)據(jù)處理系統(tǒng)10的方塊圖;
圖2是說(shuō)明根據(jù)本公開(kāi)的一些實(shí)施例的,如圖1中所說(shuō)明的,CPU指令流水線架構(gòu)的方塊圖;
圖3A和圖3B用以說(shuō)明根據(jù)本公開(kāi)的一些實(shí)施例的處理器100的不同部分之間的分支預(yù)測(cè);
圖4是說(shuō)明根據(jù)本公開(kāi)的一些實(shí)施例的分支預(yù)測(cè)過(guò)程的流程圖;
圖5A和圖5B是說(shuō)明根據(jù)本公開(kāi)的一個(gè)實(shí)施例中的分支預(yù)測(cè)操作的圖式;
圖6是說(shuō)明根據(jù)本公開(kāi)的一些實(shí)施例的分支預(yù)測(cè)過(guò)程的流程圖。
附圖標(biāo)號(hào)說(shuō)明
10:數(shù)據(jù)處理系統(tǒng);
11:系統(tǒng)總線;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于晶心科技股份有限公司,未經(jīng)晶心科技股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110595168.1/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 圖像編碼裝置、圖像編碼方法、圖像譯碼裝置、圖像譯碼方法、程序以及記錄介質(zhì)
- 圖像編碼裝置、圖像編碼方法、圖像譯碼裝置、圖像譯碼方法
- 圖像編碼裝置、圖像編碼方法、圖像譯碼裝置、圖像譯碼方法
- 基于時(shí)間序列預(yù)測(cè)模型適用性量化的預(yù)測(cè)模型選擇方法
- 圖像編碼裝置、圖像編碼方法、圖像譯碼裝置、圖像譯碼方法
- 分類預(yù)測(cè)方法及裝置、預(yù)測(cè)模型訓(xùn)練方法及裝置
- 幀內(nèi)預(yù)測(cè)的方法及裝置
- 圖像預(yù)測(cè)方法及裝置、電子設(shè)備和存儲(chǔ)介質(zhì)
- 文本預(yù)測(cè)方法、裝置以及電子設(shè)備
- 模型融合方法、預(yù)測(cè)方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)
- 一種數(shù)據(jù)庫(kù)讀寫(xiě)分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





