JP5280521B2 - 分岐予測における使用のためのマルチモードレジスタファイル - Google Patents
分岐予測における使用のためのマルチモードレジスタファイル Download PDFInfo
- Publication number
- JP5280521B2 JP5280521B2 JP2011510563A JP2011510563A JP5280521B2 JP 5280521 B2 JP5280521 B2 JP 5280521B2 JP 2011510563 A JP2011510563 A JP 2011510563A JP 2011510563 A JP2011510563 A JP 2011510563A JP 5280521 B2 JP5280521 B2 JP 5280521B2
- Authority
- JP
- Japan
- Prior art keywords
- mode
- register file
- register
- branch
- multimode
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 claims description 22
- 238000010586 diagram Methods 0.000 description 44
- 238000012545 processing Methods 0.000 description 9
- 230000001413 cellular effect Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011022 operating instruction Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3851—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution from multiple instruction streams, e.g. multistreaming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
- G06F9/30101—Special purpose registers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
- G06F9/3012—Organisation of register space, e.g. banked or distributed register file
- G06F9/30123—Organisation of register space, e.g. banked or distributed register file according to context, e.g. thread buffers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30181—Instruction operation extension or modification
- G06F9/30189—Instruction operation extension or modification according to execution mode, e.g. mode flag
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3802—Instruction prefetching
- G06F9/3804—Instruction prefetching for branches, e.g. hedging, branch folding
- G06F9/3806—Instruction prefetching for branches, e.g. hedging, branch folding using address prediction, e.g. return stack, branch history buffer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3842—Speculative instruction execution
- G06F9/3844—Speculative instruction execution using dynamic branch prediction, e.g. using branch history tables
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Advance Control (AREA)
- Executing Machine-Instructions (AREA)
Description
マルチモードレジスタファイルは、ディジタル信号プロセッサのような、レジスタファイルを含む任意のプロセッサ内に含まれることができる。図7〜11の一般的な図は、例えば、第1のモード内のオペランドおよび実行している分岐命令の分岐を予測することについて使用されるために第2のモード内の分岐予測情報を組み込むことができる実例の装置を示す。
さらに図8の一般的な図に示されたように、ステレオオーディオCODEC830はアナログベースバンドプロセッサ806に結合されることができる。さらに、オーディオ増幅器832はステレオオーディオCODEC830に結合されることができる。例示的な実施形態では、第1のステレオスピーカ834および第2のステレオスピーカ836はオーディオ増幅器832に結合される。マイクロホン増幅器838はまたステレオオーディオCODEC830にも結合される。そのうえ、マイクロホン840はマイクロホン増幅器838に結合されることができる。特定の実施形態では、周波数変調(FM)無線チューナ842はステレオオーディオCODEC830に結合されることができる。また、FMアンテナ844はFM無線チューナ842に結合される。さらに、ステレオヘッドホン846はステレオオーディオCODEC830に結合されることができる。
この中に開示されたこの発明の概念の実施形態の前述の説明は図示および説明のためだけを示し、そしてこの中に開示された発明の概念を開示された正確な形式に徹底すべきことまたは限定すべきことを意味しない。多くの修正および改造はこの中に開示された発明の概念の精神および範囲から逸脱すること無しに当業者には明白である。
下記に出願時の請求項1−21に対応する記載を付記1−21として表記する。
付記1
第1のモード内に蓄積されたオペランド;および
補助情報、ここにおいて前記補助情報は第2のモード内の前記オペランドを置換する、
を具備するマルチモードレジスタファイル。
付記2
前記補助情報は分岐予測情報である、付記1記載のマルチモードレジスタファイル。
付記3
前記分岐予測情報は、
分岐ターゲットキャッシュ;および
分岐履歴表、
を具備する、付記2記載のマルチモードレジスタファイル。
付記4
前記レジスタファイルはマルチスレッドアーキテクチャ内の複数のレジスタファイル内にある、付記2記載のマルチモードレジスタファイル。
付記5
前記オペランドは前記マルチスレッドアーキテクチャによって実行されるべきオペレーションのパイプラインの1オペレーションからである、付記4記載のマルチモードレジスタファイル。
付記6
前記マルチスレッドアーキテクチャは、
前記マルチモードレジスタファイルが前記第1のモードにあるかどうかを決定する;および
もし前記マルチモードレジスタファイルが前記第1のモードにないことを決定したならば前記マルチモードレジスタファイルが前記第2のモードにあるかどうかを決定する、
ように構成される、付記5記載のマルチモードレジスタファイル。
付記7
前記複数のレジスタファイルのおのおのはマルチモードレジスタファイルである、付記4記載のマルチモードレジスタファイル。
付記8
前記マルチスレッドアーキテクチャは前記第2のモードに入るべき前記レジスタファイルの優先度を決定するように構成される、付記7記載のマルチモードレジスタファイル。
付記9
前記複数のレジスタファイルは前記第2のモードにおいて複数のレジスタファイルの間で前記分岐予測情報を分割するように構成される、付記8記載のマルチモードレジスタファイル。
付記10
第1のモードの間マルチモードレジスタファイルによってオペランドを蓄積すること;および
第2のモード内の前記マルチモードレジスタファイルによって前記オペランドを補助情報で置換すること、
を具備する方法。
付記11
前記補助情報は分岐予測情報である、付記10記載の方法。
付記12
前記分岐予測情報は
分岐ターゲットキャッシュ;および
分岐履歴表、
を具備する、付記11記載の方法。
付記13
前記マルチモードレジスタファイルが前記第1のモードにあるかどうかを決定すること;および
もし前記マルチモードレジスタファイルが前記第1のモードにないことを決定したならば前記マルチモードレジスタファイルは前記第2のモードにあるかどうかを決定すること、
をさらに具備する、付記11記載の方法。
付記14
前記レジスタファイルはマルチスレッドアーキテクチャ内の複数のマルチモードレジスタファイル内にある、付記11記載の方法。
付記15
前記複数のレジスタファイルのおのおのが前記第1のモードにあるかどうかを決定すること;および
前記第1のモードにない前記複数のレジスタファイルのおのおのについて各レジスタファイルが前記第2のモードにあるかどうかを決定すること、
をさらに具備する、付記14記載の方法。
付記16
前記第2のモード内の複数のレジスタファイル間で前記分岐予測情報を分割することをさらに具備する、付記15記載の方法。
付記17
第1のモードの間中オペランドを蓄積するための手段;および
前記オペランドを第2のモード内の補助情報で置換するための手段、
を具備する、マルチモードレジスタファイル。
付記18
前記補助情報は分岐予測情報である、付記17記載のマルチモードレジスタファイル。
付記19
前記マルチモードレジスタファイルが前記第1のモードにあるかどうかを決定するための手段;および
もし前記マルチモードレジスタファイルが前記第1のモードにないことを決定したならば前記マルチモードレジスタファイルは前記第2のモードにあるかどうかを決定するための手段、
をさらに具備する、付記18記載のマルチモードレジスタファイル。
付記20
付記19記載のマルチモードレジスタファイル:
前記第2のモードに入るべき複数のマルチモードレジスタファイルのおのおのについて前記優先権を決定するための手段をさらに具備し、ここにおいて前記マルチモードレジスタファイルは複数のマルチモードレジスタファイルの1つである、付記19記載のマルチモードレジスタファイル。
付記21
マルチスレッドシステムであって、
前記マルチスレッドシステムの各スレッドについてのマルチモードレジスタファイル、ここにおいて前記マルチモードレジスタファイルは第1のモード内の前記スレッドについてのオペランドおよび第2のモード内の異なるスレッドについての分岐履歴表を蓄積するように構成される;および
前記マルチモードレジスタファイルが前記第1のモードまたは前記第2のモードにあるかどうかを決定するために各マルチモードレジスタファイルについてのマルチモードレジスタファイルレジスタ、
を具備するマルチスレッドシステム。
Claims (21)
- 第1のモードにおいて格納されるオペランド、および
第2のモードにおいて前記オペランドに代えて格納される補助情報を具備するマルチモードレジスタファイル。 - 前記補助情報は分岐予測情報である、請求項1記載のマルチモードレジスタファイル。
- 前記分岐予測情報は、
分岐ターゲットキャッシュ;および
分岐履歴表、
を具備する、請求項2記載のマルチモードレジスタファイル。 - 前記レジスタファイルはマルチスレッドアーキテクチャ内の複数のレジスタファイル内にある、請求項2記載のマルチモードレジスタファイル。
- 前記オペランドは、パイプラインにおいて実行される1オペレーションであって前記マルチスレッドアーキテクチャにおいて実行される1オペレーションを実行する際に用いられる、請求項4記載のマルチモードレジスタファイル。
- 前記マルチスレッドアーキテクチャは、
前記マルチモードレジスタファイルが前記第1のモードにあるかどうかを決定する;および
もし前記マルチモードレジスタファイルが前記第1のモードにないことを決定したならば前記マルチモードレジスタファイルが前記第2のモードにあるかどうかを決定する、
ように構成される、請求項5記載のマルチモードレジスタファイル。 - 前記複数のレジスタファイルのおのおのはマルチモードレジスタファイルである、請求項4記載のマルチモードレジスタファイル。
- 前記マルチスレッドアーキテクチャは前記第2のモードに入ることに関する前記レジスタファイルの優先度を決定するように構成される、請求項7記載のマルチモードレジスタファイル。
- 前記複数のレジスタファイルは前記第2のモードになっている複数のレジスタファイルの間で前記分岐予測情報を分割するように構成される、請求項8記載のマルチモードレジスタファイル。
- 第1のモードのときにマルチモードレジスタファイルによってオペランドを格納すること;および
第2のモードのときに前記マルチモードレジスタファイルによって前記オペランドを補助情報で置換すること、
を具備する方法。 - 前記補助情報は分岐予測情報である、請求項10記載の方法。
- 前記分岐予測情報は
分岐ターゲットキャッシュ;および
分岐履歴表、
を具備する、請求項11記載の方法。 - 前記マルチモードレジスタファイルが前記第1のモードにあるかどうかを決定すること;および
もし前記マルチモードレジスタファイルが前記第1のモードにないことを決定したならば前記マルチモードレジスタファイルは前記第2のモードにあるかどうかを決定すること、
をさらに具備する、請求項11記載の方法。 - 前記レジスタファイルはマルチスレッドアーキテクチャ内の複数のマルチモードレジスタファイル内にある、請求項11記載の方法。
- 前記複数のレジスタファイルのおのおのが前記第1のモードにあるかどうかを決定すること;および
前記第1のモードにない前記複数のレジスタファイルのおのおのについて各レジスタファイルが前記第2のモードにあるかどうかを決定すること、
をさらに具備する、請求項14記載の方法。 - 前記第2のモード内の複数のレジスタファイル間で前記分岐予測情報を分割することをさらに具備する、請求項15記載の方法。
- 第1のモードのときにオペランドを格納するための手段;および
第2のモードのときに前記オペランドを補助情報で置換するための手段、
を具備する、マルチモードレジスタファイル。 - 前記補助情報は分岐予測情報である、請求項17記載のマルチモードレジスタファイル。
- 前記マルチモードレジスタファイルが前記第1のモードにあるかどうかを決定するための手段;および
もし前記マルチモードレジスタファイルが前記第1のモードにないことを決定したならば前記マルチモードレジスタファイルは前記第2のモードにあるかどうかを決定するための手段、
をさらに具備する、請求項18記載のマルチモードレジスタファイル。 - 前記第2のモードに入ることに関する、複数のマルチモードレジスタファイルのおのおのの優先権を決定するための手段をさらに具備し、ここにおいて前記マルチモードレジスタファイルは複数のマルチモードレジスタファイルの1つである、請求項19記載のマルチモードレジスタファイル。
- マルチスレッドシステムであって、
前記マルチスレッドシステムのそれぞれのスレッド毎に設けられたマルチモードレジスタファイルであって、第1のモードのときに、当該マルチモードレジスタに対応する前記スレッドのためのオペランドを格納し、第2のモードのときに、当該マルチモードレジスタに対応する前記スレッドとは異なるスレッドのための分岐履歴テーブルを格納するように構成されたマルチモードレジスタファイル、および
前記マルチモードレジスタファイルが前記第1のモードまたは前記第2のモードにあるかどうかを決定するための各マルチモードレジスタファイルについてのマルチモードレジスタファイルレジスタ、
を具備するマルチスレッドシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/124,357 US8639913B2 (en) | 2008-05-21 | 2008-05-21 | Multi-mode register file for use in branch prediction |
US12/124,357 | 2008-05-21 | ||
PCT/US2009/043331 WO2009142928A1 (en) | 2008-05-21 | 2009-05-08 | Multi-mode register file for use in branch prediction |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011521382A JP2011521382A (ja) | 2011-07-21 |
JP5280521B2 true JP5280521B2 (ja) | 2013-09-04 |
Family
ID=40908655
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011510563A Expired - Fee Related JP5280521B2 (ja) | 2008-05-21 | 2009-05-08 | 分岐予測における使用のためのマルチモードレジスタファイル |
Country Status (7)
Country | Link |
---|---|
US (1) | US8639913B2 (ja) |
EP (1) | EP2304551B1 (ja) |
JP (1) | JP5280521B2 (ja) |
KR (1) | KR101302611B1 (ja) |
CN (1) | CN102037443B (ja) |
TW (1) | TW201013524A (ja) |
WO (1) | WO2009142928A1 (ja) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9582275B2 (en) | 2011-05-31 | 2017-02-28 | Intel Corporation | Method and apparatus for obtaining a call stack to an event of interest and analyzing the same |
US20140365749A1 (en) * | 2011-12-29 | 2014-12-11 | Venkateswara R. Madduri | Using a single table to store speculative results and architectural results |
GB201300608D0 (en) * | 2013-01-14 | 2013-02-27 | Imagination Tech Ltd | Indirect branch prediction |
GB2533415B (en) * | 2014-12-19 | 2022-01-19 | Advanced Risc Mach Ltd | Apparatus with at least one resource having thread mode and transaction mode, and method |
US9507598B1 (en) * | 2015-12-15 | 2016-11-29 | International Business Machines Corporation | Auxiliary branch prediction with usefulness tracking |
CN105653472A (zh) * | 2015-12-31 | 2016-06-08 | 北京中科晶上科技有限公司 | 缓存辅助的向量寄存器堆的缓冲方法 |
US10884745B2 (en) | 2017-08-18 | 2021-01-05 | International Business Machines Corporation | Providing a predicted target address to multiple locations based on detecting an affiliated relationship |
US10884746B2 (en) | 2017-08-18 | 2021-01-05 | International Business Machines Corporation | Determining and predicting affiliated registers based on dynamic runtime control flow analysis |
US10534609B2 (en) | 2017-08-18 | 2020-01-14 | International Business Machines Corporation | Code-specific affiliated register prediction |
US10884747B2 (en) | 2017-08-18 | 2021-01-05 | International Business Machines Corporation | Prediction of an affiliated register |
US11150908B2 (en) | 2017-08-18 | 2021-10-19 | International Business Machines Corporation | Dynamic fusion of derived value creation and prediction of derived values in a subroutine branch sequence |
US10908911B2 (en) | 2017-08-18 | 2021-02-02 | International Business Machines Corporation | Predicting and storing a predicted target address in a plurality of selected locations |
US10719328B2 (en) | 2017-08-18 | 2020-07-21 | International Business Machines Corporation | Determining and predicting derived values used in register-indirect branching |
US11150904B2 (en) | 2017-08-18 | 2021-10-19 | International Business Machines Corporation | Concurrent prediction of branch addresses and update of register contents |
US11061575B2 (en) | 2017-09-19 | 2021-07-13 | International Business Machines Corporation | Read-only table of contents register |
US10896030B2 (en) | 2017-09-19 | 2021-01-19 | International Business Machines Corporation | Code generation relating to providing table of contents pointer values |
US10620955B2 (en) | 2017-09-19 | 2020-04-14 | International Business Machines Corporation | Predicting a table of contents pointer value responsive to branching to a subroutine |
US10713050B2 (en) | 2017-09-19 | 2020-07-14 | International Business Machines Corporation | Replacing Table of Contents (TOC)-setting instructions in code with TOC predicting instructions |
US10884929B2 (en) | 2017-09-19 | 2021-01-05 | International Business Machines Corporation | Set table of contents (TOC) register instruction |
US10725918B2 (en) | 2017-09-19 | 2020-07-28 | International Business Machines Corporation | Table of contents cache entry having a pointer for a range of addresses |
US10705973B2 (en) | 2017-09-19 | 2020-07-07 | International Business Machines Corporation | Initializing a data structure for use in predicting table of contents pointer values |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4829422A (en) * | 1987-04-02 | 1989-05-09 | Stellar Computer, Inc. | Control of multiple processors executing in parallel regions |
US5210831A (en) * | 1989-10-30 | 1993-05-11 | International Business Machines Corporation | Methods and apparatus for insulating a branch prediction mechanism from data dependent branch table updates that result from variable test operand locations |
JP3776449B2 (ja) * | 1992-12-23 | 2006-05-17 | セントル エレクトロニク オルロジェール ソシエテ アノニム | マルチタスク低電力制御装置 |
US5950012A (en) * | 1996-03-08 | 1999-09-07 | Texas Instruments Incorporated | Single chip microprocessor circuits, systems, and methods for self-loading patch micro-operation codes and patch microinstruction codes |
US6092175A (en) * | 1998-04-02 | 2000-07-18 | University Of Washington | Shared register storage mechanisms for multithreaded computer systems with out-of-order execution |
US6357016B1 (en) * | 1999-12-09 | 2002-03-12 | Intel Corporation | Method and apparatus for disabling a clock signal within a multithreaded processor |
US7017073B2 (en) * | 2001-02-28 | 2006-03-21 | International Business Machines Corporation | Method and apparatus for fault-tolerance via dual thread crosschecking |
US20020194461A1 (en) * | 2001-05-04 | 2002-12-19 | Ip First Llc | Speculative branch target address cache |
US6954846B2 (en) * | 2001-08-07 | 2005-10-11 | Sun Microsystems, Inc. | Microprocessor and method for giving each thread exclusive access to one register file in a multi-threading mode and for giving an active thread access to multiple register files in a single thread mode |
US6981113B2 (en) * | 2003-04-21 | 2005-12-27 | Intel Corporation | Storage registers for a processor pipeline |
US7120784B2 (en) | 2003-04-28 | 2006-10-10 | International Business Machines Corporation | Thread-specific branch prediction by logically splitting branch history tables and predicted target address cache in a simultaneous multithreading processing environment |
JP2005284749A (ja) * | 2004-03-30 | 2005-10-13 | Kyushu Univ | 並列処理コンピュータ |
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 |
US7877587B2 (en) * | 2006-06-09 | 2011-01-25 | Arm Limited | Branch prediction within a multithreaded processor |
US7454596B2 (en) * | 2006-06-29 | 2008-11-18 | Intel Corporation | Method and apparatus for partitioned pipelined fetching of multiple execution threads |
US7760576B2 (en) * | 2007-11-08 | 2010-07-20 | Qualcomm Incorporated | Systems and methods for low power, high yield memory |
-
2008
- 2008-05-21 US US12/124,357 patent/US8639913B2/en active Active
-
2009
- 2009-05-08 EP EP09751157.0A patent/EP2304551B1/en active Active
- 2009-05-08 JP JP2011510563A patent/JP5280521B2/ja not_active Expired - Fee Related
- 2009-05-08 CN CN200980118152.9A patent/CN102037443B/zh active Active
- 2009-05-08 WO PCT/US2009/043331 patent/WO2009142928A1/en active Application Filing
- 2009-05-08 KR KR1020107028749A patent/KR101302611B1/ko active IP Right Grant
- 2009-05-20 TW TW098116742A patent/TW201013524A/zh unknown
Also Published As
Publication number | Publication date |
---|---|
KR20110019751A (ko) | 2011-02-28 |
KR101302611B1 (ko) | 2013-09-02 |
JP2011521382A (ja) | 2011-07-21 |
US20090292906A1 (en) | 2009-11-26 |
TW201013524A (en) | 2010-04-01 |
EP2304551A1 (en) | 2011-04-06 |
EP2304551B1 (en) | 2017-03-29 |
CN102037443B (zh) | 2014-07-09 |
US8639913B2 (en) | 2014-01-28 |
WO2009142928A1 (en) | 2009-11-26 |
CN102037443A (zh) | 2011-04-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5280521B2 (ja) | 分岐予測における使用のためのマルチモードレジスタファイル | |
JP5318873B2 (ja) | マルチステージデータ処理パイプラインにおける命令実行システム及び方法 | |
US8429378B2 (en) | System and method to manage a translation lookaside buffer | |
EP2259190A2 (en) | Multithreaded processor with efficient processing for convergence device applications | |
US8464000B2 (en) | Systems and methods for cache line replacements | |
US8688761B2 (en) | Arithmetic logic and shifting device for use in a processor | |
KR101239272B1 (ko) | 하드웨어 프리페치 어드레스 및 산술 연산 값을 계산하기 위한 듀얼 함수 가산기 | |
KR20070118705A (ko) | 레지스터 파일에 액세스하기 위해 프리디케이트 값을이용하는 시스템 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110304 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20101221 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121106 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20130206 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20130214 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130405 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130423 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130522 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 5280521 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |