JP5105887B2 - 非同期式パイプラインのためのデータ・キャッシュ・ミスをアウト・オブ・オーダ方式で処理するための装置及び方法 - Google Patents
非同期式パイプラインのためのデータ・キャッシュ・ミスをアウト・オブ・オーダ方式で処理するための装置及び方法 Download PDFInfo
- Publication number
- JP5105887B2 JP5105887B2 JP2007019199A JP2007019199A JP5105887B2 JP 5105887 B2 JP5105887 B2 JP 5105887B2 JP 2007019199 A JP2007019199 A JP 2007019199A JP 2007019199 A JP2007019199 A JP 2007019199A JP 5105887 B2 JP5105887 B2 JP 5105887B2
- Authority
- JP
- Japan
- Prior art keywords
- load
- instruction
- data
- entry
- load instruction
- 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 title claims description 35
- 238000012545 processing Methods 0.000 claims description 34
- 230000000694 effects Effects 0.000 claims description 11
- 230000004044 response Effects 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 4
- 230000001172 regenerating effect Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 20
- 230000007246 mechanism Effects 0.000 description 18
- 230000007704 transition Effects 0.000 description 15
- 230000006870 function Effects 0.000 description 9
- 230000008569 process Effects 0.000 description 6
- 238000000348 solid-phase epitaxy Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 230000003111 delayed effect Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 238000000206 photolithography Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 239000000919 ceramic Substances 0.000 description 1
- 239000007795 chemical reaction product Substances 0.000 description 1
- 239000012467 final product Substances 0.000 description 1
- 238000011010 flushing procedure Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 239000013067 intermediate product Substances 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 230000008929 regeneration Effects 0.000 description 1
- 238000011069 regeneration method Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000002195 synergetic effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 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/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
- G06F9/30043—LOAD or STORE instructions; Clear instruction
-
- 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, look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
-
- 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, look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3838—Dependency mechanisms, e.g. register scoreboarding
- G06F9/384—Register renaming
-
- 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, look ahead
- G06F9/3854—Instruction completion, e.g. retiring, committing or graduating
- G06F9/3858—Result writeback, i.e. updating the architectural state or memory
- G06F9/38585—Result writeback, i.e. updating the architectural state or memory with result invalidation, e.g. nullification
-
- 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, look ahead
- G06F9/3861—Recovery, e.g. branch miss-prediction, exception handling
Description
112:L1キャッシュ
114:L2キャッシュ
199:共有メモリ
210:発行ユニット
220:ロード/ストア・パイプライン
230:命令パイプライン
240:ロード・ターゲット・バッファ
250:ロード・テーブル・データ構造
260:ロード・ミス・キュー・ユニット
270:レジスタ・ファイル記憶装置
280:L1データ・キャッシュ
290:L2データ・キャッシュ
Claims (22)
- 命令パイプライン及びロード/ストア・パイプラインを有するデータ処理装置において、ロード命令を処理する方法であって、
ロード命令を受け取るステップと、
前記ロード命令をロード・タグ(LTAG)と関連付けるステップと、
前記ロード/ストア・パイプラインに対して前記ロード命令及び前記LTAGを発行するステップと、
第1のキャッシュから前記ロード命令に対応するデータを検索しようと試みるステップと、
前記ロード命令に対応する前記データを検索しようとする前記試みがキャッシュ・ヒットを引き起こすか又はキャッシュ・ミスを引き起こすかを判断するステップと、
前記LTAG及び前記ロード命令に対応するデータを検索しようとする前記試みの結果に基づいて、ロード・ターゲット・バッファのロード・テーブル・データ構造内にエントリを生成するステップと
を含む方法であって、
前記ロード・テーブル・データ構造内にエントリを生成する前記ステップは、
前記ロード命令と関連付けられた前記LTAGによって索引付けされたエントリを前記ロード・テーブル内に生成するステップと、
前記ロード命令に対応する前記データを検索しようとする前記試みがキャッシュ・ヒットを引き起こすか又はキャッシュ・ミスを引き起こすかの判断結果に基づいて、前記エントリをキャッシュ・ヒット又はキャッシュ・ミスとマーク付けするステップと
を含み、
前記判断結果がキャッシュ・ミスである場合、前記方法は、
メモリ・サブシステムから前記ロード命令に対応する前記データを再生するステップと、
前記再生されたデータを前記ロード・テーブル内の前記エントリに格納するステップと
をさらに含み、
メモリ・サブシステムから前記ロード命令に対応する前記データを再生する前記ステップは、
ロード・ミス・キュー・ユニットにおいて、前記ロード命令と関連付けられた前記LTAGと、再生される前記データに対応する該ロード命令と関連付けられたロード・アドレスとを識別するデータ構造を維持するステップと、
前記メモリ・サブシステムから前記データが再生されたことに応答して、前記ロード・ミス・キュー・ユニット内の前記データ構造に基づいて、前記再生されたデータを前記ロード命令と関連付けるステップであって、該ロード・ミス・キュー・ユニット内の該データ構造において識別された該ロード命令の前記LTAGに基づいて、該再生されたデータが前記ロード・テーブル内の前記エントリに格納される、ステップと
を含む
方法。 - 前記再生されたデータが有効である場合に限り、前記ロード・テーブル内の前記エントリをキャッシュ・ヒットとマーク付けするステップと、
前記再生されたデータが無効である場合、前記ロード・テーブル内の前記エントリをキャッシュ・ミスとマーク付けするステップと
をさらに含む、請求項1に記載の方法。 - 前記命令パイプラインに対して前記ロード命令及び前記LTAGを発行するステップと、
前記ロード・ターゲット・バッファに対して前記命令パイプラインからの前記ロード命令を発行するステップと、
前記発行されたロード命令と関連付けられた前記LTAGに基づいて、該発行されたロード命令に対応する前記ロード・テーブル内のエントリを識別するステップと、
前記ロード・テーブル内の前記識別されたエントリがキャッシュ・ミスとマーク付けされるか又はキャッシュ・ヒットとマーク付けされるかに基づいて、前記ロード命令に対応する前記データをレジスタ・ファイルに格納するかどうかを判断するステップと
をさらに含む、請求項1に記載の方法。 - 前記識別されたエントリがキャッシュ・ヒットとマーク付けされると判断される場合、前記ロード命令に対応する前記データを前記レジスタ・ファイルに格納するステップをさらに含む、請求項3に記載の方法。
- 前記ロード命令に対応する前記データを前記レジスタ・ファイルに格納した後、前記LTAG及び前記ロード・テーブル内の前記エントリの割り当てを解除するステップをさらに含む、請求項4に記載の方法。
- 前記ロード・テーブル内の前記識別されたエントリがキャッシュ・ミスとマーク付けされると判断される場合、前記命令パイプラインからの前記ロード命令の前記発行のあらゆる効果を取り消すステップと、
前記ロード・テーブル内の前記識別されたエントリがキャッシュ・ミスとマーク付けされると判断される場合、該ロード・テーブル内の該識別されたエントリを、保留状態を有するものとして更新するステップと
をさらに含む、請求項3に記載の方法。 - 前記ロード・テーブル内の前記識別されたエントリがキャッシュ・ミスとマーク付けされると判断される場合、前記ロード命令の表現を、該ロード・テーブル内の該識別されたエントリに格納するステップと、
メモリ・サブシステムから再生された前記ロード命令に対応する前記データに応答して、前記識別されたエントリ内の該ロード命令の前記表現に基づいて、前記命令パイプラインに対して該ロード命令を再発行するステップと
をさらに含む、請求項6に記載の方法。 - 前記命令パイプライン及び前記ロード/ストア・パイプラインが互いに対して非同期である、請求項1に記載の方法。
- 前記データ処理装置がプロセッサである、請求項1に記載の方法。
- 前記データ処理装置は、全てのプロセッサが同種というわけではないマルチプロセッサデータ処理システムの一部である、請求項1に記載の方法。
- 前記全てのプロセッサが同種というわけではないマルチプロセッサデータ処理システムは、制御プロセッサと1つ又は複数のコプロセッサとを備え、前記データ処理装置は、前記制御プロセッサ又はコプロセッサの1つ又は複数である、請求項10に記載の方法。
- 発行ユニットと、
前記発行ユニットに連結された命令パイプラインと、
前記発行ユニットに連結されたロード/ストア・パイプラインと、
前記命令パイプライン及び前記ロード/ストア・パイプラインに連結されたロード・ターゲット・バッファと
を備え、
前記発行ユニットは、ロード命令を受け取り、前記ロード命令をロード・タグ(LTAG)と関連付け、前記ロード/ストア・パイプラインに対して該ロード命令及び前記LTAGを発行し、
前記ロード/ストア・パイプラインは、第1レベルのキャッシュから前記ロード命令に対応するデータを検索しようと試み、かつ、該ロード命令に対応する前記データを検索しようとする前記試みがキャッシュ・ヒットを引き起こすか又はキャッシュ・ミスを引き起こすかを判断し、
前記ロード・ターゲット・バッファは、前記LTAG及び前記ロード命令に対応するデータを検索しようとする前記試みの結果に基づいて、該ロード・ターゲット・バッファのロード・テーブル・データ構造内にエントリを生成する装置であって、
前記ロード・ターゲット・バッファは、
前記ロード命令と関連付けられた前記LTAGによって索引付けされたエントリを前記ロード・テーブル内に生成し、
前記ロード命令に対応する前記データを検索しようとする前記試みがキャッシュ・ヒットを引き起こすか又はキャッシュ・ミスを引き起こすかの判断結果に基づいて、前記エントリをキャッシュ・ヒット又はキャッシュ・ミスとマーク付けすること
によって、前記ロード・テーブル・データ構造内にエントリを生成する前記装置であって、
前記装置は、
前記ロード/ストア・パイプラインに連結されたロード・ミス・キュー・ユニットをさらに備え、前記判断結果がキャッシュ・ミスである場合、前記ロード・ミス・キュー・ユニットは、第2レベルのキャッシュから前記ロード命令に対応する前記データを再生し、かつ、前記再生されたデータを前記ロード・ターゲット・バッファの前記ロード・テーブル内の前記エントリに格納する、装置であり、
前記ロード・ミス・キュー・ユニットは、
前記ロード・ミス・キュー・ユニットにおいて、前記ロード命令と関連付けられた前記LTAGと、再生される前記データに対応する該ロード命令と関連付けられたロード・アドレスとを識別するデータ構造を維持すること、
前記第2レベルのキャッシュからの前記データの前記再生に応答して、前記ロード・ミス・キュー・ユニット内の前記データ構造に基づいて、前記再生されたデータを前記ロード命令と関連付けることであって、該ロード・ミス・キュー・ユニット内の該データ構造において識別された該ロード命令の前記LTAGに基づいて、該再生されたデータが前記ロード・テーブル内の前記エントリに格納されること
によって、前記第2レベルのキャッシュから前記ロード命令に対応する前記データを再生する
装置。 - 前記ロード・ターゲット・バッファは、前記再生されたデータが有効である場合に限り、前記ロード・テーブル内の前記エントリをキャッシュ・ヒットとマーク付けし、該再生されたデータが無効である場合、該ロード・テーブル内の該エントリをキャッシュ・ミスとマーク付けする、請求項12に記載の装置。
- 前記発行ユニットは、前記命令パイプラインに対して前記ロード命令及び前記LTAGを発行し、
前記命令パイプラインは、前記ロード・ターゲット・バッファに対して前記ロード命令を発行し、
前記ロード・ターゲット・バッファは、前記発行されたロード命令と関連付けられた前記LTAGに基づいて、該発行されたロード命令に対応する前記ロード・テーブル内のエントリを識別し、かつ、該ロード・テーブル内の前記識別されたエントリがキャッシュ・ミスとマーク付けされるか又はキャッシュ・ヒットとマーク付けされるかに基づいて、該ロード命令に対応する前記データをレジスタ・ファイルに格納するかどうかを判断する、請求項12に記載の装置。 - 前記ロード・ターゲット・バッファは、前記識別されたエントリがキャッシュ・ヒットとマーク付けされた場合、前記ロード命令に対応する前記データを前記レジスタ・ファイルに格納する、請求項14に記載の装置。
- 前記ロード命令に対応する前記データを前記レジスタ・ファイルに格納した後、前記ロード・ターゲット・バッファは、前記LTAG及び前記ロード・テーブル内の前記エントリの割り当て解除を開始する、請求項15に記載の装置。
- 前記ロード・テーブル内の前記識別されたエントリがキャッシュ・ミスとマーク付けされると判断される場合、前記命令パイプラインからの前記ロード命令の前記発行のあらゆる効果の取り消しを開始し、該ロード・テーブル内の該識別されたエントリがキャッシュ・ミスとマーク付けされると判断される場合、該ロード・テーブル内の該識別されたエントリを、保留状態を有するものとして更新する、請求項14に記載の装置。
- 前記ロード・テーブル内の前記識別されたエントリがキャッシュ・ミスとマーク付けされると判断される場合、前記ロード・ターゲット・バッファは、前記ロード命令の表現を、該ロード・テーブル内の該識別されたエントリに格納し、メモリ・サブシステムから再生された前記ロード命令に対応する前記データに応答して、該識別されたエントリ内の該ロード命令の前記表現に基づいて、前記命令パイプラインに対して該ロード命令を再発行する、請求項17に記載の装置。
- 前記命令パイプライン及び前記ロード/ストア・パイプラインが互いに対して非同期である、請求項12に記載の装置。
- 前記装置は、全てのプロセッサが同種というわけではないマルチプロセッサデータ処理システムの一部である、請求項12に記載の装置。
- 前記全てのプロセッサが同種というわけではないマルチプロセッサデータ処理システムは、制御プロセッサと1つ又は複数のコプロセッサとを備え、前記装置は、前記制御プロセッサ又はコプロセッサの1つ又は複数である、請求項20に記載の装置。
- 請求項1−11のいずれか1項に記載の方法の各ステップをコンピュータに実行させるためのコンピュータ・プログラム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/345,922 US7461239B2 (en) | 2006-02-02 | 2006-02-02 | Apparatus and method for handling data cache misses out-of-order for asynchronous pipelines |
US11/345922 | 2006-02-02 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007207238A JP2007207238A (ja) | 2007-08-16 |
JP5105887B2 true JP5105887B2 (ja) | 2012-12-26 |
Family
ID=38323511
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007019199A Expired - Fee Related JP5105887B2 (ja) | 2006-02-02 | 2007-01-30 | 非同期式パイプラインのためのデータ・キャッシュ・ミスをアウト・オブ・オーダ方式で処理するための装置及び方法 |
Country Status (4)
Country | Link |
---|---|
US (2) | US7461239B2 (ja) |
JP (1) | JP5105887B2 (ja) |
CN (1) | CN100583029C (ja) |
TW (1) | TWI391857B (ja) |
Families Citing this family (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090113182A1 (en) * | 2007-10-24 | 2009-04-30 | Abernathy Christopher M | System and Method for Issuing Load-Dependent Instructions from an Issue Queue in a Processing Unit |
US7991979B2 (en) * | 2008-09-23 | 2011-08-02 | International Business Machines Corporation | Issuing load-dependent instructions in an issue queue in a processing unit of a data processing system |
JP2010146084A (ja) * | 2008-12-16 | 2010-07-01 | Toshiba Corp | キャッシュメモリ制御部を備えるデータ処理装置 |
CN101526896B (zh) * | 2009-01-22 | 2011-11-23 | 杭州中天微系统有限公司 | 嵌入式处理器的加载/存储单元 |
US8099582B2 (en) * | 2009-03-24 | 2012-01-17 | International Business Machines Corporation | Tracking deallocated load instructions using a dependence matrix |
US8103894B2 (en) * | 2009-04-24 | 2012-01-24 | International Business Machines Corporation | Power conservation in vertically-striped NUCA caches |
US8140758B2 (en) * | 2009-04-24 | 2012-03-20 | International Business Machines Corporation | Data reorganization in non-uniform cache access caches |
US8171220B2 (en) * | 2009-04-24 | 2012-05-01 | International Business Machines Corporation | Cache architecture with distributed state bits |
CN101847094A (zh) * | 2009-05-29 | 2010-09-29 | 威盛电子股份有限公司 | 非循序执行的微处理器及其操作方法 |
US8793435B1 (en) * | 2011-09-30 | 2014-07-29 | Applied Micro Circuits Corporation | Load miss result buffer with shared data lines |
US8806135B1 (en) * | 2011-09-30 | 2014-08-12 | Applied Micro Circuits Corporation | Load store unit with load miss result buffer |
US9442861B2 (en) * | 2011-12-20 | 2016-09-13 | Intel Corporation | System and method for out-of-order prefetch instructions in an in-order pipeline |
US20150121046A1 (en) * | 2013-10-25 | 2015-04-30 | Advanced Micro Devices, Inc. | Ordering and bandwidth improvements for load and store unit and data cache |
CN104461758B (zh) * | 2014-11-10 | 2017-08-25 | 中国航天科技集团公司第九研究院第七七一研究所 | 一种容忍cache缺失快速清空流水线的异常处理方法及其处理结构 |
CN104572528A (zh) * | 2015-01-27 | 2015-04-29 | 东南大学 | 一种二级Cache对访问请求的处理方法及系统 |
CN106293978A (zh) * | 2015-05-22 | 2017-01-04 | 炬芯(珠海)科技有限公司 | 一种数据反馈的方法及设备 |
US20170090508A1 (en) * | 2015-09-25 | 2017-03-30 | Qualcomm Incorporated | Method and apparatus for effective clock scaling at exposed cache stalls |
US9983875B2 (en) | 2016-03-04 | 2018-05-29 | International Business Machines Corporation | Operation of a multi-slice processor preventing early dependent instruction wakeup |
US10037211B2 (en) | 2016-03-22 | 2018-07-31 | International Business Machines Corporation | Operation of a multi-slice processor with an expanded merge fetching queue |
US10346174B2 (en) | 2016-03-24 | 2019-07-09 | International Business Machines Corporation | Operation of a multi-slice processor with dynamic canceling of partial loads |
US10761854B2 (en) | 2016-04-19 | 2020-09-01 | International Business Machines Corporation | Preventing hazard flushes in an instruction sequencing unit of a multi-slice processor |
US10037229B2 (en) | 2016-05-11 | 2018-07-31 | International Business Machines Corporation | Operation of a multi-slice processor implementing a load/store unit maintaining rejected instructions |
US9934033B2 (en) | 2016-06-13 | 2018-04-03 | International Business Machines Corporation | Operation of a multi-slice processor implementing simultaneous two-target loads and stores |
US10042647B2 (en) | 2016-06-27 | 2018-08-07 | International Business Machines Corporation | Managing a divided load reorder queue |
US10318419B2 (en) | 2016-08-08 | 2019-06-11 | International Business Machines Corporation | Flush avoidance in a load store unit |
US10585797B2 (en) | 2017-07-14 | 2020-03-10 | International Business Machines Corporation | Operating different processor cache levels |
US10592414B2 (en) | 2017-07-14 | 2020-03-17 | International Business Machines Corporation | Filtering of redundantly scheduled write passes |
US10402263B2 (en) * | 2017-12-04 | 2019-09-03 | Intel Corporation | Accelerating memory fault resolution by performing fast re-fetching |
CN108519858B (zh) * | 2018-03-22 | 2021-06-08 | 雷科防务(西安)控制技术研究院有限公司 | 存储芯片硬件命中方法 |
US10725783B2 (en) * | 2018-11-02 | 2020-07-28 | International Business Machines Corporation | Splitting load hit store table for out-of-order processor |
CN110413679B (zh) * | 2019-07-31 | 2023-01-24 | 深圳前海微众银行股份有限公司 | 数据库信息处理方法、装置、设备及可读存储介质 |
CN117453435B (zh) * | 2023-12-20 | 2024-03-15 | 北京开源芯片研究院 | 缓存数据读取方法、装置、设备及存储介质 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6438834A (en) * | 1987-08-04 | 1989-02-09 | Nec Corp | Information processor |
US5185871A (en) * | 1989-12-26 | 1993-02-09 | International Business Machines Corporation | Coordination of out-of-sequence fetching between multiple processors using re-execution of instructions |
KR100248903B1 (ko) * | 1992-09-29 | 2000-03-15 | 야스카와 히데아키 | 수퍼스칼라마이크로프로세서에서의 적재 및 저장연산처리방법 및 시스템 |
JPH06222990A (ja) * | 1992-10-16 | 1994-08-12 | Fujitsu Ltd | データ処理装置 |
US5590368A (en) * | 1993-03-31 | 1996-12-31 | Intel Corporation | Method and apparatus for dynamically expanding the pipeline of a microprocessor |
DE69638271D1 (de) * | 1996-07-16 | 2010-11-18 | Globalfoundries Inc | Ladespeichereinheit und verfahren zur blockierungfreien beendigung von ladebefehlen in einem superskalaren mikroprozessor |
US6173410B1 (en) * | 1996-08-21 | 2001-01-09 | Texas Instruments Incorporated | Microprocessor circuits, systems and methods for conditioning information prefetching based on resource burden |
US6216219B1 (en) * | 1996-12-31 | 2001-04-10 | Texas Instruments Incorporated | Microprocessor circuits, systems, and methods implementing a load target buffer with entries relating to prefetch desirability |
JP3864509B2 (ja) * | 1997-08-19 | 2007-01-10 | 株式会社日立製作所 | マルチプロセッサシステム |
JP3628653B2 (ja) * | 2000-01-19 | 2005-03-16 | 富士通株式会社 | 記憶制御装置及び記憶制御方法 |
US6912557B1 (en) * | 2000-06-09 | 2005-06-28 | Cirrus Logic, Inc. | Math coprocessor |
JP2002007209A (ja) * | 2000-06-26 | 2002-01-11 | Fujitsu Ltd | データ処理装置 |
US7203817B2 (en) * | 2001-09-24 | 2007-04-10 | Broadcom Corporation | Power consumption reduction in a pipeline by stalling instruction issue on a load miss |
US20030126379A1 (en) * | 2001-12-31 | 2003-07-03 | Shiv Kaushik | Instruction sequences for suspending execution of a thread until a specified memory access occurs |
JP3577052B2 (ja) * | 2002-03-19 | 2004-10-13 | 株式会社東芝 | 命令発行装置及び命令発行方法 |
US6931109B1 (en) * | 2003-06-12 | 2005-08-16 | Sprint Communications Company L.P. | Link selection parameter modification for network access selection |
US7096043B1 (en) * | 2003-10-24 | 2006-08-22 | Nortel Networks Limited | Call origination control |
US7475232B2 (en) * | 2005-07-19 | 2009-01-06 | International Business Machines Corporation | Performance of an in-order processor by no longer requiring a uniform completion point across different execution pipelines |
-
2006
- 2006-02-02 US US11/345,922 patent/US7461239B2/en not_active Expired - Fee Related
-
2007
- 2007-01-25 CN CN200710008232A patent/CN100583029C/zh not_active Expired - Fee Related
- 2007-01-30 JP JP2007019199A patent/JP5105887B2/ja not_active Expired - Fee Related
- 2007-02-01 TW TW096103667A patent/TWI391857B/zh not_active IP Right Cessation
-
2008
- 2008-10-17 US US12/253,448 patent/US7900024B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US7461239B2 (en) | 2008-12-02 |
TW200805151A (en) | 2008-01-16 |
JP2007207238A (ja) | 2007-08-16 |
US20090043995A1 (en) | 2009-02-12 |
CN101013361A (zh) | 2007-08-08 |
US7900024B2 (en) | 2011-03-01 |
US20070180221A1 (en) | 2007-08-02 |
TWI391857B (zh) | 2013-04-01 |
CN100583029C (zh) | 2010-01-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5105887B2 (ja) | 非同期式パイプラインのためのデータ・キャッシュ・ミスをアウト・オブ・オーダ方式で処理するための装置及び方法 | |
JP6342970B2 (ja) | トランザクショナルメモリ(tm)システムにおける読み出し及び書き込み監視属性 | |
JP3016575B2 (ja) | 複数キャッシュ・メモリ・アクセス方法 | |
JP5608738B2 (ja) | 無制限トランザクショナルメモリ(utm)システムの最適化 | |
EP0684561B1 (en) | System and method for synchronization in split-level data cache system | |
US8706973B2 (en) | Unbounded transactional memory system and method | |
US8180977B2 (en) | Transactional memory in out-of-order processors | |
US20080005504A1 (en) | Global overflow method for virtualized transactional memory | |
JP3132755B2 (ja) | プロセッサのアーキテクチャ状態を維持するための方法および装置 | |
US7757044B2 (en) | Facilitating store reordering through cacheline marking | |
US20070143550A1 (en) | Per-set relaxation of cache inclusion | |
WO2015057846A1 (en) | Computer processor employing cache memory with pre-byte valid bits | |
JP2009521767A (ja) | 有限トランザクションメモリシステム | |
JP2003514274A (ja) | 接近して結合される多重プロセッサのための高速マルチスレッディング | |
US20100205609A1 (en) | Using time stamps to facilitate load reordering | |
US20120124296A1 (en) | Method and apparatus for reacquiring lines in a cache | |
JPH10283180A (ja) | プロセッサ内で命令をディスパッチする方法および装置 | |
JP2002530735A5 (ja) | ||
JP2007527563A (ja) | インデックス付ルックアップを使用したストア−ロードフォーワード(stl)バッファ | |
US11481331B2 (en) | Promoting prefetched data from a cache memory to registers in a processor | |
US11663130B1 (en) | Cache replacement mechanisms for speculative execution | |
JP6318440B2 (ja) | 無制限トランザクショナルメモリ(utm)システムの最適化 | |
JP2005284647A (ja) | 並列処理装置、命令再試行方法、およびプログラム | |
JPH0342744A (ja) | キャッシュ・メモリを有する計算システムおよびキャッシュ・メモリ管理方法 | |
JPH06309225A (ja) | 情報処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20091026 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120515 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120529 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120827 |
|
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: 20120911 |
|
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: 20121002 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151012 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |