JPWO2020014066A5 - - Google Patents
Download PDFInfo
- Publication number
- JPWO2020014066A5 JPWO2020014066A5 JP2021500526A JP2021500526A JPWO2020014066A5 JP WO2020014066 A5 JPWO2020014066 A5 JP WO2020014066A5 JP 2021500526 A JP2021500526 A JP 2021500526A JP 2021500526 A JP2021500526 A JP 2021500526A JP WO2020014066 A5 JPWO2020014066 A5 JP WO2020014066A5
- Authority
- JP
- Japan
- Prior art keywords
- btb
- processor
- branch
- btb table
- entries
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Claims (10)
- 命令実行パイプラインと、
第一数の第一分岐ターゲットバッファテーブルエントリを含む第一BTBテーブルであって、前記第一BTBテーブルエントリのそれぞれは第一タグ及び第一ターゲットアドレスを含み、前記第一ターゲットアドレスのそれぞれは第一幅を有する、前記第一BTBテーブルと、
第二数の第二BTBテーブルエントリを含む第二BTBテーブルであって、前記第二BTBテーブルエントリのそれぞれは第二タグ及び第二ターゲットアドレスを含み、前記第二ターゲットアドレスのそれぞれは前記第一幅とは異なる第二幅を有する、前記第二BTBテーブルと、
所与の予測アドレスについて予測されたターゲットアドレスを提供するように構成される分岐予測器と、
を含む、プロセッサであって、
前記プロセッサは分岐命令の分岐特性に基づいて、前記第一BTBテーブルの第一BTBテーブルエントリか、前記第二BTBテーブルの第二BTBテーブルエントリかのいずれかに前記第一ターゲットアドレスを含む分岐記述子を格納するように構成される、プロセッサ。 - 前記分岐特性は、分岐ターゲットアドレスサイズである、請求項1に記載のプロセッサ。
- 前記分岐特性は分岐タイプである、請求項1に記載のプロセッサ。
- 前記第一BTBテーブルエントリは、ジャンプ分岐命令、呼び出し分岐命令、戻り分岐命令、及び条件分岐命令のうちの少なくとも1つについて構成される、請求項3に記載のプロセッサ。
- 前記分岐特性は前記BTBエントリに格納されるビットの数である、請求項1に記載のプロセッサ。
- 前記分岐特性は前記BTBエントリのスレッド識別子である、請求項1に記載のプロセッサ。
- 第一メモリレベルキャッシュ及び第二メモリレベルキャッシュ、をさらに含み、
前記第一BTBテーブル及び前記第二BTBテーブルは前記プロセッサの同じメモリレベルキャッシュに含まれる、請求項1に記載のプロセッサ。 - 前記第一BTBテーブルの前記第一BTBテーブルエントリは、予測ルックアップについてNウェイアソシアティブであり、
前記第二BTBテーブルの前記第二BTBテーブルエントリは、予測ルックアップについてMウェイアソシアティブであり、
前記M及び前記Nは1以上であり、前記Mは前記Nとは異なる、請求項1に記載のプロセッサ。 - 前記第一数の前記第一BTBテーブルエントリは、前記第二数の前記第二BTBテーブルエントリとは異なる、請求項1に記載のプロセッサ。
- 前記BTBテーブルエントリのそれぞれは、前記BTBエントリのそれぞれを、セット内で最近最も使用された(MRU)ステータス、及び最近最も使用されていない(LRU)ステータスのうちの1つとしてマーク付けする最近使用されたステータスビットを含み、
前記プロセッサは、前記最近使用されたステータスビットの状態に基づいて置き換えポリシーに従い前記セット内のBTBエントリをエビクトするように構成される、請求項1に記載のプロセッサ。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/030,031 | 2018-07-09 | ||
US16/030,031 US10713054B2 (en) | 2018-07-09 | 2018-07-09 | Multiple-table branch target buffer |
PCT/US2019/040497 WO2020014066A1 (en) | 2018-07-09 | 2019-07-03 | Multiple-table branch target buffer |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2021530782A JP2021530782A (ja) | 2021-11-11 |
JPWO2020014066A5 true JPWO2020014066A5 (ja) | 2022-07-26 |
JP7149405B2 JP7149405B2 (ja) | 2022-10-06 |
Family
ID=69102066
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021500526A Active JP7149405B2 (ja) | 2018-07-09 | 2019-07-03 | 複数のテーブルの分岐ターゲットバッファ |
Country Status (6)
Country | Link |
---|---|
US (2) | US10713054B2 (ja) |
EP (1) | EP3821339A4 (ja) |
JP (1) | JP7149405B2 (ja) |
KR (1) | KR102546238B1 (ja) |
CN (1) | CN112543916B (ja) |
WO (1) | WO2020014066A1 (ja) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11550588B2 (en) * | 2018-08-22 | 2023-01-10 | Advanced Micro Devices, Inc. | Branch target filtering based on memory region access count |
US11507380B2 (en) * | 2018-08-29 | 2022-11-22 | Advanced Micro Devices, Inc. | Branch confidence throttle |
GB2577051B (en) * | 2018-09-11 | 2021-03-03 | Advanced Risc Mach Ltd | Branch prediction using branch target buffer |
US11163573B2 (en) * | 2019-02-13 | 2021-11-02 | International Business Machines Corporation | Hierarchical metadata predictor with periodic updates |
TWI768547B (zh) * | 2020-11-18 | 2022-06-21 | 瑞昱半導體股份有限公司 | 管線式電腦系統與指令處理方法 |
US20220197657A1 (en) * | 2020-12-22 | 2022-06-23 | Intel Corporation | Segmented branch target buffer based on branch instruction type |
US12014182B2 (en) * | 2021-08-20 | 2024-06-18 | International Business Machines Corporation | Variable formatting of branch target buffer |
CN115480826B (zh) * | 2022-09-21 | 2024-03-12 | 海光信息技术股份有限公司 | 分支预测器、分支预测方法、装置和计算设备 |
CN117093267B (zh) * | 2023-10-17 | 2023-12-22 | 北京开源芯片研究院 | 分支指令跳转地址的存储方法、装置、设备及存储介质 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6256729B1 (en) | 1998-01-09 | 2001-07-03 | Sun Microsystems, Inc. | Method and apparatus for resolving multiple branches |
US6609194B1 (en) | 1999-11-12 | 2003-08-19 | Ip-First, Llc | Apparatus for performing branch target address calculation based on branch type |
US20050144427A1 (en) | 2001-10-23 | 2005-06-30 | Ip-First Llc | Processor including branch prediction mechanism for far jump and far call instructions |
KR100591769B1 (ko) * | 2004-07-16 | 2006-06-26 | 삼성전자주식회사 | 분기 예측 정보를 가지는 분기 타겟 버퍼 |
US7278012B2 (en) | 2005-06-02 | 2007-10-02 | Qualcomm Incorporated | Method and apparatus for efficiently accessing first and second branch history tables to predict branch instructions |
US20110093658A1 (en) * | 2009-10-19 | 2011-04-21 | Zuraski Jr Gerald D | Classifying and segregating branch targets |
US8458447B2 (en) * | 2011-06-17 | 2013-06-04 | Freescale Semiconductor, Inc. | Branch target buffer addressing in a data processor |
CN102662640B (zh) * | 2012-04-12 | 2015-04-01 | 苏州睿云智芯微电子有限公司 | 双重分支目标缓冲器和分支目标处理系统及处理方法 |
US9146739B2 (en) | 2012-06-14 | 2015-09-29 | International Business Machines Corporation | Branch prediction preloading |
US9430241B2 (en) | 2012-06-15 | 2016-08-30 | International Business Machines Corporation | Semi-exclusive second-level branch target buffer |
US20150301829A1 (en) | 2014-04-18 | 2015-10-22 | Jeffrey W. Scott | Systems and methods for managing branch target buffers in a multi-threaded data processing system |
US10664280B2 (en) * | 2015-11-09 | 2020-05-26 | MIPS Tech, LLC | Fetch ahead branch target buffer |
US10592248B2 (en) | 2016-08-30 | 2020-03-17 | Advanced Micro Devices, Inc. | Branch target buffer compression |
-
2018
- 2018-07-09 US US16/030,031 patent/US10713054B2/en active Active
-
2019
- 2019-07-03 WO PCT/US2019/040497 patent/WO2020014066A1/en unknown
- 2019-07-03 KR KR1020217004109A patent/KR102546238B1/ko active IP Right Grant
- 2019-07-03 EP EP19834916.9A patent/EP3821339A4/en active Pending
- 2019-07-03 CN CN201980052180.9A patent/CN112543916B/zh active Active
- 2019-07-03 JP JP2021500526A patent/JP7149405B2/ja active Active
-
2020
- 2020-07-10 US US16/926,339 patent/US11416253B2/en active Active
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8825958B2 (en) | High-performance cache system and method | |
JP4098347B2 (ja) | キャッシュメモリおよびその制御方法 | |
US7380065B2 (en) | Performance of a cache by detecting cache lines that have been reused | |
JP5378450B2 (ja) | アーキテクチャイベントの間のプロセッサリソースの保持 | |
US6912623B2 (en) | Method and apparatus for multithreaded cache with simplified implementation of cache replacement policy | |
US8151084B2 (en) | Using address and non-address information for improved index generation for cache memories | |
US6990557B2 (en) | Method and apparatus for multithreaded cache with cache eviction based on thread identifier | |
KR101898322B1 (ko) | 상이한 인덱싱 방식을 사용하는 1차 캐시와 오버플로 캐시를 갖는 캐시 시스템 | |
JPH03141443A (ja) | データ格納方法及びマルチ・ウェイ・セット・アソシアチブ・キャッシュ記憶装置 | |
JP5974133B1 (ja) | メモリシステム | |
US20150356025A1 (en) | High-performance cache system and method | |
US20130311724A1 (en) | Cache system with biased cache line replacement policy and method therefor | |
WO2015041151A1 (ja) | キャッシュメモリシステムおよびプロセッサシステム | |
TW201638774A (zh) | 一種基於指令和資料推送的處理器系統和方法 | |
JPWO2020014066A5 (ja) | ||
US8266379B2 (en) | Multithreaded processor with multiple caches | |
WO1997034229A9 (en) | Segment descriptor cache for a processor | |
WO1997034229A1 (en) | Segment descriptor cache for a processor | |
JP7131156B2 (ja) | 演算処理装置及び演算処理装置の制御方法 | |
JPH0659977A (ja) | 明示的なライン置換え操作が可能なキャッシュメモリとその制御方法 | |
US20080168232A1 (en) | Cache Memory and Control Method Thereof | |
JP3469042B2 (ja) | キャッシュメモリ | |
JPH11143774A (ja) | キャッシュ制御機構 | |
JPH01255944A (ja) | キャッシュメモリ | |
Tam et al. | Allocation by conflict: A simple, effective multilateral cache management scheme |