JP2008217353A - データ処理装置、およびメモリのリードアクティブ制御方法。 - Google Patents
データ処理装置、およびメモリのリードアクティブ制御方法。 Download PDFInfo
- Publication number
- JP2008217353A JP2008217353A JP2007053127A JP2007053127A JP2008217353A JP 2008217353 A JP2008217353 A JP 2008217353A JP 2007053127 A JP2007053127 A JP 2007053127A JP 2007053127 A JP2007053127 A JP 2007053127A JP 2008217353 A JP2008217353 A JP 2008217353A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- branch
- data
- active control
- memory
- 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
- 230000015654 memory Effects 0.000 title claims abstract description 60
- 238000000034 method Methods 0.000 title claims description 20
- 238000013500 data storage Methods 0.000 claims description 10
- 230000004044 response Effects 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 19
- 238000001514 detection method Methods 0.000 description 16
- 230000000694 effects Effects 0.000 description 9
- 230000007704 transition Effects 0.000 description 9
- 238000007796 conventional method Methods 0.000 description 5
- 230000003442 weekly effect Effects 0.000 description 1
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/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
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0862—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with prefetch
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0864—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using pseudo-associative means, e.g. set-associative or hashing
-
- 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/3814—Implementation provisions of instruction buffers, e.g. prefetch buffer; banks
-
- 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/3848—Speculative instruction execution using hybrid branch prediction, e.g. selection between prediction techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/60—Details of cache memory
- G06F2212/6032—Way prediction in set-associative cache
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Advance Control (AREA)
Abstract
【解決手段】複数のメモリ1、例えばキャッシュWAYを有する命令キャッシュメモリ2と、分岐命令の分岐条件成立/不成立の予測データを格納するとともに、成立予測の時に複数のメモリ1のうちで、分岐命令のデータが格納されているメモリ1の予測データを格納する手段3と、実行すべき命令が分岐命令である時、その分岐命令に対応するインデックスによって手段3から得られる2つの予測データを用いて、複数のメモリ1に対してリードアクティブ制御信号を出力する手段4とを備える。
【選択図】図1
Description
ある。このプレディクションデータは、分岐命令の実行のたびに分岐(条件)の成立/不成立、すなわちTaken/Not Takenに対応してその値が変化する。その値は、分岐が成立した時には“1”が加算され、不成立の時には“1”が減算されるカウンタのカウント値に相当する。
S.McFarling:"Combining Branch Predictors",Technical Note TN−36,Western Research Laboratory(June 1993)
作成手段6から出力されるインデックスに対応して、分岐予測データ格納手段3から出力される分岐(条件)成立/不成立の予測データとメモリの予測データとを用いて、複数のメモリ1に対してリードアクティブ制御信号を出力するものである。
から出力され、キャッシュRAM210、211の中でタグアドレスに対応するエントリに有効な命令データが格納されていることを示すエントリ有効信号とが入力され、これらの入力信号がともに“H”である時に“H”が出力される。
C−missの状態に遷移する。またWeakly Takenの状態で分岐が成立し、かつ分岐命令のデータがキャッシュから読み出された場合には、WAY0、WAY1のいずれにヒットしたかが判明するので、その結果に対応した状態遷移が行われる。
ものとする。この分岐予測データは4サイクル目で出力され、その結果5サイクル目ではWAY1に対するリードアクティブ信号が“H”とされるが、WAY0に対するリードアクティブ信号は“L”のままとされる。
2 命令キャッシュメモリ
3 分岐予測データ格納手段
4 リードアクティブ制御手段
5 ヒット/ミス判定手段
6 インデックス作成手段
10 マイクロプロセッサ
11 外部ランダム・アクセス・メモリ
12 実行ユニット
13 命令キャッシュユニット
14 動的分岐予測器
20 命令アドレスレジスタ
21 キャッシュRAM
22 タグRAM
23 比較器
24 ブロック先頭検出部
25 ヒット/ミス判定論理回路
26 インバータ
27 セレクタ
28 ブランチ・ヒストリー・レジスタ(BHR)
29 排他的論理和演算器(XOR)
30 パターン・ヒストリー・テーブル(PHT)
35 リードアクティブ制御回路
Claims (8)
- 複数のメモリを有する命令キャッシュメモリと、
分岐命令の分岐条件成立/不成立の予測データと、成立予測の時に前記複数のメモリのうちで、該分岐命令のデータが格納されているメモリの予測データとを格納する分岐予測データ格納手段と、
実行すべき命令が分岐命令である時、該分岐命令に対応するインデックスによって前記分岐予測データ格納手段から得られる前記分岐条件成立/不成立の予測データと、前記メモリの予測データとを用いて、前記複数のメモリに対してリードアクティブ制御信号を出力するリードアクティブ制御手段と
を備えることを特徴とするデータ処理装置。 - 請求項1記載のデータ処理装置において、
実行すべき命令のアドレスに対応して、該命令のデータが格納されているメモリを示す信号を前記リードアクティブ制御手段に出力するヒット/ミス判定手段をさらに備え、
実行すべき命令が分岐命令でない時、および分岐命令であるが分岐条件不成立と予測される時、前記リードアクティブ制御手段が、前記命令データ格納メモリを示す信号をそのまま前記リードアクティブ制御信号として出力することを特徴とするデータ処理装置。 - 請求項1記載のデータ処理装置において、
実行された分岐命令の分岐条件成立/不成立を示すデータが次々とシフトされて格納されているレジスタの格納内容と、実行すべき分岐命令のアドレスとの排他的論理和をとることによって、前記インデックスを作成し、前記リードアクティブ制御手段に与えるインデックス作成手段をさらに備えることを特徴とするデータ処理装置。 - 請求項1記載のデータ処理装置において、
前記分岐条件成立/不成立の予測データが、直前の分岐命令の実行結果としての分岐条件成立/不成立に加えて、さらに該直前の分岐命令に対するメモリ予測の成功/失敗を反映するデータであることを特徴とするデータ処理装置。 - 命令キャッシュメモリ内の複数のメモリのリードアクティブ制御方法であって、
実行すべき命令が分岐命令である時、該分岐命令に対応するインデックスによって、該分岐命令の分岐条件成立/不成立の予測データと、成立予測の時に前記複数のメモリのうちで、該分岐命令のデータが格納されているメモリの予測データとを検索し、
該検索の結果に対応して、前記複数のメモリに対するリードアクティブ制御信号を出力すること
を特徴とするメモリのリードアクティブ制御方法。 - 実行すべき命令が分岐命令でない時、および分岐命令であるが分岐条件不成立と予測される時、実行すべき命令のアドレスに対応して、該命令のデータが格納されているメモリを示す信号を、そのまま前記複数のメモリに対するリードアクティブ制御信号として出力することを特徴とする請求項5記載のメモリのリードアクティブ制御方法。
- 前記分岐命令に対応するインデックスを、過去に実行された分岐命令の分岐条件成立/不成立を示すデータが次々とシフトされて格納されているレジスタの格納内容と、実行すべき分岐命令のアドレスとの排他的論理和をとることによって作成することを特徴とする請求項5記載のメモリのリードアクティブ制御方法。
- 前記分岐条件成立/不成立の予測データが、直前の分岐命令の実行結果としての分岐条件成立/不成立に加えて、該直前の分岐命令に対するメモリ予測の成功/失敗を反映する
データであることを特徴とする請求項5記載のメモリのリードアクティブ制御方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007053127A JP4980751B2 (ja) | 2007-03-02 | 2007-03-02 | データ処理装置、およびメモリのリードアクティブ制御方法。 |
US12/040,269 US8667259B2 (en) | 2007-03-02 | 2008-02-29 | Data processor and memory read active control method |
CN200810083121.1A CN101256481B (zh) | 2007-03-02 | 2008-03-03 | 数据处理器以及存储器读激活控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007053127A JP4980751B2 (ja) | 2007-03-02 | 2007-03-02 | データ処理装置、およびメモリのリードアクティブ制御方法。 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008217353A true JP2008217353A (ja) | 2008-09-18 |
JP4980751B2 JP4980751B2 (ja) | 2012-07-18 |
Family
ID=39733971
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007053127A Expired - Fee Related JP4980751B2 (ja) | 2007-03-02 | 2007-03-02 | データ処理装置、およびメモリのリードアクティブ制御方法。 |
Country Status (3)
Country | Link |
---|---|
US (1) | US8667259B2 (ja) |
JP (1) | JP4980751B2 (ja) |
CN (1) | CN101256481B (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013502645A (ja) * | 2009-08-21 | 2013-01-24 | エンパイア テクノロジー ディベロップメント エルエルシー | キャッシュメモリ結合性を伴うプロセッサコアの割当 |
Families Citing this family (45)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8327115B2 (en) | 2006-04-12 | 2012-12-04 | Soft Machines, Inc. | Plural matrices of execution units for processing matrices of row dependent instructions in single clock cycle in super or separate mode |
CN107368285B (zh) | 2006-11-14 | 2020-10-09 | 英特尔公司 | 多线程架构 |
CN105468334A (zh) * | 2008-12-25 | 2016-04-06 | 世意法(北京)半导体研发有限责任公司 | 对非控制流指令减少分支检验 |
US8521996B2 (en) * | 2009-02-12 | 2013-08-27 | Via Technologies, Inc. | Pipelined microprocessor with fast non-selective correct conditional branch instruction resolution |
CN102053818B (zh) * | 2009-11-05 | 2014-07-02 | 无锡江南计算技术研究所 | 分支预测方法及装置 |
US10228949B2 (en) | 2010-09-17 | 2019-03-12 | Intel Corporation | Single cycle multi-branch prediction including shadow cache for early far branch prediction |
US8635408B2 (en) * | 2011-01-04 | 2014-01-21 | International Business Machines Corporation | Controlling power of a cache based on predicting the instruction cache way for high power applications |
CN108108188B (zh) | 2011-03-25 | 2022-06-28 | 英特尔公司 | 用于通过使用由可分区引擎实例化的虚拟核来支持代码块执行的存储器片段 |
CN103547993B (zh) | 2011-03-25 | 2018-06-26 | 英特尔公司 | 通过使用由可分割引擎实例化的虚拟核来执行指令序列代码块 |
US9842005B2 (en) | 2011-03-25 | 2017-12-12 | Intel Corporation | Register file segments for supporting code block execution by using virtual cores instantiated by partitionable engines |
TWI548994B (zh) | 2011-05-20 | 2016-09-11 | 軟體機器公司 | 以複數個引擎支援指令序列的執行之互連結構 |
CN107729267B (zh) | 2011-05-20 | 2022-01-25 | 英特尔公司 | 资源的分散分配以及用于支持由多个引擎执行指令序列的互连结构 |
KR101703401B1 (ko) | 2011-11-22 | 2017-02-06 | 소프트 머신즈, 인크. | 다중 엔진 마이크로프로세서용 가속 코드 최적화기 |
WO2013077876A1 (en) | 2011-11-22 | 2013-05-30 | Soft Machines, Inc. | A microprocessor accelerated code optimizer |
US9830272B2 (en) | 2011-12-28 | 2017-11-28 | Intel Corporation | Cache memory staged reopen |
US8930674B2 (en) | 2012-03-07 | 2015-01-06 | Soft Machines, Inc. | Systems and methods for accessing a unified translation lookaside buffer |
US9229873B2 (en) | 2012-07-30 | 2016-01-05 | Soft Machines, Inc. | Systems and methods for supporting a plurality of load and store accesses of a cache |
US9430410B2 (en) | 2012-07-30 | 2016-08-30 | Soft Machines, Inc. | Systems and methods for supporting a plurality of load accesses of a cache in a single cycle |
US9710399B2 (en) | 2012-07-30 | 2017-07-18 | Intel Corporation | Systems and methods for flushing a cache with modified data |
US9740612B2 (en) | 2012-07-30 | 2017-08-22 | Intel Corporation | Systems and methods for maintaining the coherency of a store coalescing cache and a load cache |
US9916253B2 (en) | 2012-07-30 | 2018-03-13 | Intel Corporation | Method and apparatus for supporting a plurality of load accesses of a cache in a single cycle to maintain throughput |
US9678882B2 (en) | 2012-10-11 | 2017-06-13 | Intel Corporation | Systems and methods for non-blocking implementation of cache flush instructions |
JP5954112B2 (ja) * | 2012-10-24 | 2016-07-20 | 富士通株式会社 | メモリ装置、演算処理装置、及びキャッシュメモリ制御方法 |
CN103984525B (zh) * | 2013-02-08 | 2017-10-20 | 上海芯豪微电子有限公司 | 指令处理系统及方法 |
WO2014150971A1 (en) | 2013-03-15 | 2014-09-25 | Soft Machines, Inc. | A method for dependency broadcasting through a block organized source view data structure |
US9891924B2 (en) | 2013-03-15 | 2018-02-13 | Intel Corporation | Method for implementing a reduced size register view data structure in a microprocessor |
US9811342B2 (en) | 2013-03-15 | 2017-11-07 | Intel Corporation | Method for performing dual dispatch of blocks and half blocks |
CN105210040B (zh) | 2013-03-15 | 2019-04-02 | 英特尔公司 | 用于执行分组成块的多线程指令的方法 |
WO2014150806A1 (en) | 2013-03-15 | 2014-09-25 | Soft Machines, Inc. | A method for populating register view data structure by using register template snapshots |
US10140138B2 (en) | 2013-03-15 | 2018-11-27 | Intel Corporation | Methods, systems and apparatus for supporting wide and efficient front-end operation with guest-architecture emulation |
WO2014150991A1 (en) | 2013-03-15 | 2014-09-25 | Soft Machines, Inc. | A method for implementing a reduced size register view data structure in a microprocessor |
US10275255B2 (en) | 2013-03-15 | 2019-04-30 | Intel Corporation | Method for dependency broadcasting through a source organized source view data structure |
US9886279B2 (en) | 2013-03-15 | 2018-02-06 | Intel Corporation | Method for populating and instruction view data structure by using register template snapshots |
US9904625B2 (en) | 2013-03-15 | 2018-02-27 | Intel Corporation | Methods, systems and apparatus for predicting the way of a set associative cache |
US9569216B2 (en) | 2013-03-15 | 2017-02-14 | Soft Machines, Inc. | Method for populating a source view data structure by using register template snapshots |
EP2972836B1 (en) | 2013-03-15 | 2022-11-09 | Intel Corporation | A method for emulating a guest centralized flag architecture by using a native distributed flag architecture |
US10209992B2 (en) * | 2014-04-25 | 2019-02-19 | Avago Technologies International Sales Pte. Limited | System and method for branch prediction using two branch history tables and presetting a global branch history register |
CN108255517B (zh) * | 2016-12-29 | 2020-05-05 | 展讯通信(上海)有限公司 | 处理器及请求指令缓存数据的方法 |
CN109308191B (zh) * | 2017-07-28 | 2021-09-14 | 华为技术有限公司 | 分支预测方法及装置 |
US12008375B2 (en) | 2022-06-08 | 2024-06-11 | Ventana Micro Systems Inc. | Branch target buffer that stores predicted set index and predicted way number of instruction cache |
US12014180B2 (en) | 2022-06-08 | 2024-06-18 | Ventana Micro Systems Inc. | Dynamically foldable and unfoldable instruction fetch pipeline |
US12014178B2 (en) * | 2022-06-08 | 2024-06-18 | Ventana Micro Systems Inc. | Folded instruction fetch pipeline |
US11836498B1 (en) | 2022-08-02 | 2023-12-05 | Ventana Micro Systems Inc. | Single cycle predictor |
US11816489B1 (en) | 2022-08-02 | 2023-11-14 | Ventana Micro Systems Inc. | Microprocessor with prediction unit pipeline that provides a next fetch address at a rate of one per clock cycle |
US12020032B2 (en) | 2022-08-02 | 2024-06-25 | Ventana Micro Systems Inc. | Prediction unit that provides a fetch block descriptor each clock cycle |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000222205A (ja) * | 1999-01-29 | 2000-08-11 | Internatl Business Mach Corp <Ibm> | セット予測によりセット連想キャッシュの遅延を少なくする方法及び装置 |
JP2001521241A (ja) * | 1997-10-24 | 2001-11-06 | アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド | 分岐予測を迅速に特定するための命令キャッシュ内のバイト範囲に関連する分岐セレクタ |
JP2002196981A (ja) * | 2000-12-22 | 2002-07-12 | Fujitsu Ltd | データ処理装置 |
JP2005535955A (ja) * | 2002-08-12 | 2005-11-24 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | ジャンプターゲットのための命令キャッシュウェイ予測 |
JP2006134331A (ja) * | 2004-11-02 | 2006-05-25 | Samsung Electronics Co Ltd | ブランチ目的アドレスを利用してキャッシュウェイを予測するプロセッサ及びその方法 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5764946A (en) * | 1995-04-12 | 1998-06-09 | Advanced Micro Devices | Superscalar microprocessor employing a way prediction unit to predict the way of an instruction fetch address and to concurrently provide a branch prediction address corresponding to the fetch address |
US5752259A (en) * | 1996-03-26 | 1998-05-12 | Advanced Micro Devices, Inc. | Instruction cache configured to provide instructions to a microprocessor having a clock cycle time less than a cache access time of said instruction cache |
US5794028A (en) * | 1996-10-17 | 1998-08-11 | Advanced Micro Devices, Inc. | Shared branch prediction structure |
US5802602A (en) * | 1997-01-17 | 1998-09-01 | Intel Corporation | Method and apparatus for performing reads of related data from a set-associative cache memory |
US6073230A (en) * | 1997-06-11 | 2000-06-06 | Advanced Micro Devices, Inc. | Instruction fetch unit configured to provide sequential way prediction for sequential instruction fetches |
US5974542A (en) * | 1997-10-30 | 1999-10-26 | Advanced Micro Devices, Inc. | Branch prediction unit which approximates a larger number of branch predictions using a smaller number of branch predictions and an alternate target indication |
US6079003A (en) * | 1997-11-20 | 2000-06-20 | Advanced Micro Devices, Inc. | Reverse TLB for providing branch target address in a microprocessor having a physically-tagged cache |
US6079005A (en) * | 1997-11-20 | 2000-06-20 | Advanced Micro Devices, Inc. | Microprocessor including virtual address branch prediction and current page register to provide page portion of virtual and physical fetch address |
US6016545A (en) * | 1997-12-16 | 2000-01-18 | Advanced Micro Devices, Inc. | Reduced size storage apparatus for storing cache-line-related data in a high frequency microprocessor |
US7159097B2 (en) * | 2002-04-26 | 2007-01-02 | Ip-First, Llc | Apparatus and method for buffering instructions and late-generated related information using history of previous load/shifts |
US7380110B1 (en) * | 2003-09-11 | 2008-05-27 | Sun Microsystems, Inc. | Branch prediction structure with branch direction entries that share branch prediction qualifier entries |
-
2007
- 2007-03-02 JP JP2007053127A patent/JP4980751B2/ja not_active Expired - Fee Related
-
2008
- 2008-02-29 US US12/040,269 patent/US8667259B2/en not_active Expired - Fee Related
- 2008-03-03 CN CN200810083121.1A patent/CN101256481B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001521241A (ja) * | 1997-10-24 | 2001-11-06 | アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド | 分岐予測を迅速に特定するための命令キャッシュ内のバイト範囲に関連する分岐セレクタ |
JP2000222205A (ja) * | 1999-01-29 | 2000-08-11 | Internatl Business Mach Corp <Ibm> | セット予測によりセット連想キャッシュの遅延を少なくする方法及び装置 |
JP2002196981A (ja) * | 2000-12-22 | 2002-07-12 | Fujitsu Ltd | データ処理装置 |
JP2005535955A (ja) * | 2002-08-12 | 2005-11-24 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | ジャンプターゲットのための命令キャッシュウェイ予測 |
JP2006134331A (ja) * | 2004-11-02 | 2006-05-25 | Samsung Electronics Co Ltd | ブランチ目的アドレスを利用してキャッシュウェイを予測するプロセッサ及びその方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013502645A (ja) * | 2009-08-21 | 2013-01-24 | エンパイア テクノロジー ディベロップメント エルエルシー | キャッシュメモリ結合性を伴うプロセッサコアの割当 |
Also Published As
Publication number | Publication date |
---|---|
US8667259B2 (en) | 2014-03-04 |
CN101256481A (zh) | 2008-09-03 |
JP4980751B2 (ja) | 2012-07-18 |
US20080215865A1 (en) | 2008-09-04 |
CN101256481B (zh) | 2015-07-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4980751B2 (ja) | データ処理装置、およびメモリのリードアクティブ制御方法。 | |
US7594131B2 (en) | Processing apparatus | |
EP0372865B1 (en) | Cache device for supplying a fixed word length of a variable length instruction code and instruction fetch device | |
US8788797B2 (en) | Combined level 1 and level 2 branch predictor | |
JP2006134331A (ja) | ブランチ目的アドレスを利用してキャッシュウェイを予測するプロセッサ及びその方法 | |
JP2018063684A (ja) | 分岐予測器 | |
US10592248B2 (en) | Branch target buffer compression | |
CN112230992B (zh) | 一种包含分支预测循环的指令处理装置、处理器及其处理方法 | |
KR20080036940A (ko) | 파이프라인 구조를 갖는 캐시 메모리 및 이를 제어하는방법 | |
US20150052339A1 (en) | Processor and control method of processor | |
US20080162903A1 (en) | Information processing apparatus | |
JP3590427B2 (ja) | 先行読出機能付命令キャッシュメモリ | |
JP2000200217A (ja) | 命令キャッシュメモリ | |
US7346737B2 (en) | Cache system having branch target address cache | |
US8578135B2 (en) | Apparatus for calculating and prefetching a branch target address | |
US20080172547A1 (en) | Reusing a buffer memory as a microcache for program instructions of a detected program loop | |
US6678638B2 (en) | Processor having execution result prediction function for instruction | |
KR100980076B1 (ko) | 저전력 분기 예측 시스템 및 분기 예측 방법 | |
US20050027921A1 (en) | Information processing apparatus capable of prefetching instructions | |
KR100517765B1 (ko) | 캐시 메모리 및 그 제어 방법 | |
JP2006031697A (ja) | 分岐ターゲットバッファと使用方法 | |
JP2010140306A (ja) | バウンダリ実行制御システム、バウンダリ実行制御方法、及びバウンダリ実行制御プログラム | |
JP2542565B2 (ja) | 分岐予測制御方式 | |
JP2001195390A (ja) | ベクトル処理装置のオペランドキャッシュ | |
JP2004265430A (ja) | セットアソシアティブ方式のメモリ装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20080730 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20091201 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110811 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110906 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111102 |
|
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: 20120417 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120419 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150427 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |