JP4856646B2 - 連続フロープロセッサパイプライン - Google Patents
連続フロープロセッサパイプライン Download PDFInfo
- Publication number
- JP4856646B2 JP4856646B2 JP2007533649A JP2007533649A JP4856646B2 JP 4856646 B2 JP4856646 B2 JP 4856646B2 JP 2007533649 A JP2007533649 A JP 2007533649A JP 2007533649 A JP2007533649 A JP 2007533649A JP 4856646 B2 JP4856646 B2 JP 4856646B2
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- slice
- register
- physical
- instructions
- 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
- 238000013507 mapping Methods 0.000 claims description 40
- 238000000034 method Methods 0.000 claims description 19
- 238000012545 processing Methods 0.000 claims description 19
- 230000002093 peripheral effect Effects 0.000 description 6
- 230000001419 dependent effect Effects 0.000 description 5
- 238000013461 design Methods 0.000 description 4
- 230000008439 repair process Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000001934 delay Effects 0.000 description 1
- 230000001627 detrimental effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical 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/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
-
- 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/3838—Dependency mechanisms, e.g. register scoreboarding
-
- 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/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 or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3842—Speculative 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 or look ahead
- G06F9/3861—Recovery, e.g. branch miss-prediction, exception handling
- G06F9/3863—Recovery, e.g. branch miss-prediction, exception handling using multiple copies of the architectural state, e.g. shadow 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/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3867—Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Advance Control (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
(1) R1←Mx
(アドレスがMxであるメモリロケーションの内容を物理レジスタR1にロードする)
(2) R2←R1+R3
(物理レジスタR1の内容及びR3の内容を加算し、その結果を物理レジスタR2に置く)
Claims (27)
- スケジューラが、プロセッサパイプラインにおける命令を、キャッシュミスにより待ち時間を生じた命令であるスライス命令として特定すること、
該特定に基づいて、前記スライス命令を実行するのに必要とされる情報の少なくとも一部であって前記スライス命令のソースレジスタの値を含む前記情報の前記少なくとも一部と共に、割り当て/レジスタリネームロジックが前記スライス命令をスライス処理ユニット内のスライスデータバッファに移動し、前記ソースレジスタに読み出されたものとしてマーキングすること、及び
割り当て/レジスタリネームロジックが、前記マーキングを、そのスライス命令以降の命令が、前記ソースレジスタをすでに読み出し済みであるという物理レジスタ解放条件の1つを保証するために用いて、前記スライス命令の実行のために割り当てられている物理レジスタを、他の命令によって利用可能となるように解放すること、
前記スライス命令のロードミスのデータ値が利用可能になった後、スライス処理ユニットが前記スライス命令を前記プロセッサパイプラインに再挿入すること
を含み、前記物理レジスタは、前記スライス命令が完了する前に他の命令による使用のために再利用される方法。 - 前記スライス命令によって占有されるスケジューラエントリーを、前記スケジューラが解放することをさらに含む、請求項1に記載の方法。
- 前記スライス命令は、前記パイプラインにおける複数の命令の1つであり、前記スライス命令は、該複数の命令のスケジューリング順序で前記スライスデータバッファに置かれる、請求項1または2に記載の方法。
- 前記情報の前記少なくとも一部は、前記スライス命令の物理レジスタマッピングを含む、請求項1から3のいずれか1項に記載の方法。
- プロセッサパイプラインにおける命令を、キャッシュミスにより待ち時間を生じた命令であるスライス命令として特定するスケジューラ、
スライス命令として特定された命令を記憶するためにスライス処理ユニット内に設けられるスライスデータバッファであって、各命令について、該命令のフィールドと、該命令のソースレジスタの値のフィールドと、該命令のレジスタの物理レジスタマッピングのフィールドとを備える、スライスデータバッファ、
前記プロセッサパイプラインにおける命令が前記スライス命令として特定されると、前記特定に基づいて前記スライス命令を実行するのに必要な情報の少なくとも一部であって前記スライス命令のソースレジスタの値を含む前記情報の前記少なくとも一部と共に前記スライス命令を前記プロセッサパイプラインから前記スライスデータバッファに移動し、前記ソースレジスタに読み出されたものとしてマーキングし、前記マーキングを、そのスライス命令以降の命令が、前記ソースレジスタをすでに読み出し済みであるという物理レジスタ解放条件の1つを保証するために用いて、前記スライス命令の実行のために割り当てられている物理レジスタを解放する割り当て/レジスタリネームロジック、
前記スライス命令のロードミスのデータ値が利用可能になった後、前記スライス命令を前記プロセッサパイプラインに再挿入するスライス処理ユニット、
を備え、前記物理レジスタは、前記スライス命令が完了する前に他の命令による使用のために再利用されるプロセッサ。 - 前記スライスデータバッファに接続されて、物理レジスタを、前記スライスデータバッファの前記物理レジスタマッピングの物理レジスタ識別子にマッピングするためのリマッパ
をさらに備える、請求項5に記載のプロセッサ。 - 前記リマッパの、チェックポインティングされた物理レジスタを特定するためのフィルタをさらに備える、請求項6に記載のプロセッサ。
- 命令を記憶するためのメモリと、
該メモリに接続されて、前記命令を実行するためのプロセッサと、を備え、該プロセッサは、
プロセッサパイプラインにおける命令を、キャッシュミスにより待ち時間を生じた命令であるスライス命令として特定するスケジューラ、
各命令について、該命令のフィールドと、該命令のソースレジスタの値のフィールドと、該命令のレジスタの物理レジスタマッピングのフィールドと有し、スライス命令として特定された命令を記憶するためにスライス処理ユニット内に設けられるスライスデータバッファ、
前記プロセッサパイプラインにおける命令がスライス命令として特定されると、前記特定に基づいて前記スライス命令を実行するのに必要な情報の少なくとも一部であって前記スライス命令のソースレジスタの値を含む前記情報の前記少なくとも一部と共に前記スライス命令を前記プロセッサパイプラインから前記スライスデータバッファに移動し、前記ソースレジスタに読み出されたものとしてマーキングし、前記マーキングを、そのスライス命令以降の命令が、前記ソースレジスタをすでに読み出し済みであるという物理レジスタ解放条件の1つを保証するために用いて、前記スライス命令の実行のために割り当てられている物理レジスタを解放する割り当て/レジスタリネームロジック、
前記スライス命令のロードミスのデータ値が利用可能になった後、前記スライス命令を前記プロセッサパイプラインに再挿入するスライス処理ユニット、
を有し、前記物理レジスタは、前記スライス命令が完了する前に他の命令による使用のために再利用されるシステム。 - 前記プロセッサは、
前記スライスデータバッファに接続されて、物理レジスタを、前記スライスデータバッファの前記物理レジスタマッピングの物理レジスタ識別子にマッピングするためのリマッパ
をさらに備える、請求項8に記載のシステム。 - 前記プロセッサは、前記リマッパの、チェックポインティングされた物理レジスタを特定するためのフィルタをさらに備える、請求項9に記載のシステム。
- キャッシュミスを発生するロード命令を、データキャッシュ/機能ユニットロジックが実行すること、
該ロード命令がキャッシュミスにより待ち時間を生じた命令であるスライス命令であることを示すように、該ロード命令に割り当てられるデスティネーションレジスタの指示子を、スケジューラがセットすること、
前記ロード命令を実行するのに必要とされる情報の少なくとも一部であって前記スライス命令のソースレジスタの値を含む前記情報の前記少なくとも一部と共に、割り当て/レジスタリネームロジックが前記ロード命令をスライス処理ユニット内のスライスデータバッファに移動させ、前記ソースレジスタに読み出されたものとしてマーキングすること、及び
割り当て/レジスタリネームロジックが、前記マーキングを、そのスライス命令以降の命令が、前記ソースレジスタをすでに読み出し済みであるという物理レジスタ解放条件の1つを保証するために用いて、前記ロード命令の実行のために割り当てられた前記デスティネーションレジスタを解放すること、
前記スライス命令のロードミスのデータ値が利用可能になった後、スライス処理ユニットが前記ロード命令をプロセッサパイプラインに再挿入すること、
を含み、前記デスティネーションレジスタは、前記スライス命令が完了する前に他の命令による使用のために再利用される方法。 - 前記デスティネーションレジスタにセットされた前記指示子に基づいて、前記デスティネーションレジスタをソースとして有する後続の命令のデスティネーションレジスタの指示子を、スケジューラがセットすること、
前記後続の命令を実行するのに必要とされる情報の少なくとも一部と共に、割り当て/レジスタリネームロジックが前記後続の命令を前記スライスデータバッファに移動させること、
割り当て/レジスタリネームロジックが前記後続の命令に割り当てられた物理レジスタを解放すること、
及び
前記スライス命令のロードミスのデータ値が利用可能になった後、スライス処理ユニットが前記後続の命令を前記プロセッサパイプラインに再挿入すること、
をさらに含み、前記物理レジスタは、前記後続の命令が完了する前に他の命令による使用のために再利用される請求項11に記載の方法。 - 前記ロード命令及び前記他の命令によって割り当てられたスケジューラエントリーを、スケジューラが解放することをさらに含む、請求項12に記載の方法。
- 前記情報の前記少なくとも一部は、前記他の命令の物理レジスタマッピングを含む、請求項12または13に記載の方法。
- 前記スライス命令のオペレーションが完了した後、前記ロード命令及び前記後続の命令をスケジューリング順序でプロセッサパイプラインに再挿入すること
をさらに含む、請求項12から14のいずれか1項に記載の方法。 - 前記スライス命令が前記スケジューラを離れる時に、前記スライス命令と共に、前記スライス命令の完成ソースレジスタの値が前記スライスデータバッファに記録され、前記完成ソースレジスタは読み出されたものとしてマーキングされ、前記完成ソースレジスタは、前記スライス命令が完了する前に他の命令による使用のために再利用される請求項1から4のいずれか1項に記載の方法。
- 前記スライス処理ユニットは、前記割り当て/レジスタリネームロジックに利用可能な範囲を上回る、マッピングに利用可能な物理レジスタの範囲を有する請求項1から4及び16のいずれか1項に記載の方法。
- 前記物理レジスタが、チェックポイントのアーキテクチャ状態に属するレジスタ、及びプログラムの現在の状態を反映するリブアウトレジスタのいずれかである場合、前記物理レジスタマッピングの物理レジスタ識別子に、最初に割り当てられたのと同じ物理レジスタがマッピングされる請求項4に記載の方法。
- 前記スライス命令は、L2キャッシュミスしたロード命令及び浮動小数点演算命令を含む請求項1から4及び16から18のいずれか1項に記載の方法。
- 前記スライス命令が前記スケジューラを離れる時に、前記スライス命令と共に、前記スライス命令の完成ソースレジスタの値が前記スライスデータバッファに記録され、前記完成ソースレジスタは読み出されたものとしてマーキングされ、前記完成ソースレジスタは、前記スライス命令が完了する前に他の命令による使用のために再利用される請求項5から7のいずれか1項に記載のプロセッサ。
- 前記スライス処理ユニットは、前記割り当て/レジスタリネームロジックに利用可能な範囲を上回る、マッピングに利用可能な物理レジスタの範囲を有する請求項5から7及び20のいずれか1項に記載のプロセッサ。
- 前記物理レジスタが、チェックポイントのアーキテクチャ状態に属するレジスタ、及びプログラムの現在の状態を反映するリブアウトレジスタのいずれかである場合、前記リマッパは、前記物理レジスタマッピングの物理レジスタ識別子に、最初に割り当てられたのと同じ物理レジスタをマッピングする請求項6または7に記載のプロセッサ。
- 前記スライス命令は、L2キャッシュミスしたロード命令及び浮動小数点演算命令を含む請求項5から7及び20から22のいずれか1項に記載のプロセッサ。
- 前記スライス命令が前記スケジューラを離れる時に、前記スライス命令と共に、前記スライス命令の完成ソースレジスタの値が前記スライスデータバッファに記録され、前記完成ソースレジスタは読み出されたものとしてマーキングされ、前記完成ソースレジスタは、前記スライス命令が完了する前に他の命令による使用のために再利用される請求項8から10のいずれか1項に記載のシステム。
- 前記スライス処理ユニットは、前記割り当て/レジスタリネームロジックに利用可能な範囲を上回る、マッピングに利用可能な物理レジスタの範囲を有する請求項8から10及び24のいずれか1項に記載のシステム。
- 前記物理レジスタが、チェックポイントのアーキテクチャ状態に属するレジスタ、及びプログラムの現在の状態を反映するリブアウトレジスタのいずれかである場合、前記リマッパは、前記物理レジスタマッピングの物理レジスタ識別子に、最初に割り当てられたのと同じ物理レジスタをマッピングする請求項9または10に記載のシステム。
- 前記スライス命令は、L2キャッシュミスしたロード命令及び浮動小数点演算命令を含む請求項8から10及び24から26のいずれか1項に記載のシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/953,762 US20060090061A1 (en) | 2004-09-30 | 2004-09-30 | Continual flow processor pipeline |
US10/953,762 | 2004-09-30 | ||
PCT/US2005/034145 WO2006039201A2 (en) | 2004-09-30 | 2005-09-21 | Continuel flow processor pipeline |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011199057A Division JP2012043443A (ja) | 2004-09-30 | 2011-09-13 | 連続フロープロセッサパイプライン |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008513908A JP2008513908A (ja) | 2008-05-01 |
JP4856646B2 true JP4856646B2 (ja) | 2012-01-18 |
Family
ID=35995756
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007533649A Expired - Fee Related JP4856646B2 (ja) | 2004-09-30 | 2005-09-21 | 連続フロープロセッサパイプライン |
JP2011199057A Withdrawn JP2012043443A (ja) | 2004-09-30 | 2011-09-13 | 連続フロープロセッサパイプライン |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011199057A Withdrawn JP2012043443A (ja) | 2004-09-30 | 2011-09-13 | 連続フロープロセッサパイプライン |
Country Status (6)
Country | Link |
---|---|
US (1) | US20060090061A1 (ja) |
JP (2) | JP4856646B2 (ja) |
CN (1) | CN100576170C (ja) |
DE (1) | DE112005002403B4 (ja) |
GB (1) | GB2430780B (ja) |
WO (1) | WO2006039201A2 (ja) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7487337B2 (en) * | 2004-09-30 | 2009-02-03 | Intel Corporation | Back-end renaming in a continual flow processor pipeline |
US20080077778A1 (en) * | 2006-09-25 | 2008-03-27 | Davis Gordon T | Method and Apparatus for Register Renaming in a Microprocessor |
US20080215804A1 (en) * | 2006-09-25 | 2008-09-04 | Davis Gordon T | Structure for register renaming in a microprocessor |
US8386712B2 (en) * | 2006-10-04 | 2013-02-26 | International Business Machines Corporation | Structure for supporting simultaneous storage of trace and standard cache lines |
US20090210666A1 (en) * | 2008-02-19 | 2009-08-20 | Luick David A | System and Method for Resolving Issue Conflicts of Load Instructions |
US7877579B2 (en) * | 2008-02-19 | 2011-01-25 | International Business Machines Corporation | System and method for prioritizing compare instructions |
US20090210672A1 (en) * | 2008-02-19 | 2009-08-20 | Luick David A | System and Method for Resolving Issue Conflicts of Load Instructions |
US7984270B2 (en) * | 2008-02-19 | 2011-07-19 | International Business Machines Corporation | System and method for prioritizing arithmetic instructions |
US20090210669A1 (en) * | 2008-02-19 | 2009-08-20 | Luick David A | System and Method for Prioritizing Floating-Point Instructions |
US8095779B2 (en) * | 2008-02-19 | 2012-01-10 | International Business Machines Corporation | System and method for optimization within a group priority issue schema for a cascaded pipeline |
US7865700B2 (en) * | 2008-02-19 | 2011-01-04 | International Business Machines Corporation | System and method for prioritizing store instructions |
US20090210677A1 (en) * | 2008-02-19 | 2009-08-20 | Luick David A | System and Method for Optimization Within a Group Priority Issue Schema for a Cascaded Pipeline |
US8108654B2 (en) * | 2008-02-19 | 2012-01-31 | International Business Machines Corporation | System and method for a group priority issue schema for a cascaded pipeline |
US7870368B2 (en) * | 2008-02-19 | 2011-01-11 | International Business Machines Corporation | System and method for prioritizing branch instructions |
US7882335B2 (en) * | 2008-02-19 | 2011-02-01 | International Business Machines Corporation | System and method for the scheduling of load instructions within a group priority issue schema for a cascaded pipeline |
US7996654B2 (en) * | 2008-02-19 | 2011-08-09 | International Business Machines Corporation | System and method for optimization within a group priority issue schema for a cascaded pipeline |
US9304749B2 (en) * | 2013-09-12 | 2016-04-05 | Marvell World Trade Ltd. | Method and system for instruction scheduling |
US10346171B2 (en) * | 2017-01-10 | 2019-07-09 | Intel Corporation | End-to end transmission of redundant bits for physical storage location identifiers between first and second register rename storage structures |
US10133620B2 (en) | 2017-01-10 | 2018-11-20 | Intel Corporation | Detecting errors in register renaming by comparing value representing complete error free set of identifiers and value representing identifiers in register rename unit |
US11269650B2 (en) | 2018-12-29 | 2022-03-08 | Texas Instruments Incorporated | Pipeline protection for CPUs with save and restore of intermediate results |
US10956160B2 (en) * | 2019-03-27 | 2021-03-23 | Intel Corporation | Method and apparatus for a multi-level reservation station with instruction recirculation |
US11126438B2 (en) | 2019-06-26 | 2021-09-21 | Intel Corporation | System, apparatus and method for a hybrid reservation station for a processor |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08249182A (ja) * | 1995-05-08 | 1996-09-27 | Hitachi Ltd | 情報処理装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5627985A (en) * | 1994-01-04 | 1997-05-06 | Intel Corporation | Speculative and committed resource files in an out-of-order processor |
US6609190B1 (en) * | 2000-01-06 | 2003-08-19 | International Business Machines Corporation | Microprocessor with primary and secondary issue queue |
US7114059B2 (en) * | 2001-11-05 | 2006-09-26 | Intel Corporation | System and method to bypass execution of instructions involving unreliable data during speculative execution |
US7114060B2 (en) * | 2003-10-14 | 2006-09-26 | Sun Microsystems, Inc. | Selectively deferring instructions issued in program order utilizing a checkpoint and multiple deferral scheme |
-
2004
- 2004-09-30 US US10/953,762 patent/US20060090061A1/en not_active Abandoned
-
2005
- 2005-09-21 WO PCT/US2005/034145 patent/WO2006039201A2/en active Application Filing
- 2005-09-21 CN CN200580032341A patent/CN100576170C/zh not_active Expired - Fee Related
- 2005-09-21 DE DE112005002403T patent/DE112005002403B4/de not_active Expired - Fee Related
- 2005-09-21 JP JP2007533649A patent/JP4856646B2/ja not_active Expired - Fee Related
-
2007
- 2007-01-18 GB GB0700980A patent/GB2430780B/en not_active Expired - Fee Related
-
2011
- 2011-09-13 JP JP2011199057A patent/JP2012043443A/ja not_active Withdrawn
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08249182A (ja) * | 1995-05-08 | 1996-09-27 | Hitachi Ltd | 情報処理装置 |
Also Published As
Publication number | Publication date |
---|---|
DE112005002403T5 (de) | 2007-08-16 |
CN101027636A (zh) | 2007-08-29 |
JP2012043443A (ja) | 2012-03-01 |
JP2008513908A (ja) | 2008-05-01 |
GB0700980D0 (en) | 2007-02-28 |
WO2006039201A3 (en) | 2006-11-16 |
DE112005002403B4 (de) | 2010-04-08 |
CN100576170C (zh) | 2009-12-30 |
GB2430780B (en) | 2010-05-19 |
US20060090061A1 (en) | 2006-04-27 |
WO2006039201A2 (en) | 2006-04-13 |
GB2430780A (en) | 2007-04-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4856646B2 (ja) | 連続フロープロセッサパイプライン | |
EP0682789B1 (en) | System and method for register renaming | |
US7711898B2 (en) | Register alias table cache to map a logical register to a physical register | |
US7228402B2 (en) | Predicate register file write by an instruction with a pending instruction having data dependency | |
US9454371B2 (en) | Micro-architecture for eliminating MOV operations | |
US20160026463A1 (en) | Zero cycle move using free list counts | |
JP2023526788A (ja) | マスターシャドウ物理レジスタファイルを利用するための方法及びシステム | |
US20040148493A1 (en) | Apparatus, system and method for quickly determining an oldest instruction in a non-moving instruction queue | |
US11995445B2 (en) | Assignment of microprocessor register tags at issue time | |
US20050138339A1 (en) | Method for and a trailing store buffer for use in memory renaming | |
US7487337B2 (en) | Back-end renaming in a continual flow processor pipeline | |
US7191315B2 (en) | Method and system for tracking and recycling physical register assignment | |
US20030182538A1 (en) | Method and system for managing registers | |
US20120144174A1 (en) | Multiflow method and apparatus for operation fusion | |
US7529913B2 (en) | Late allocation of registers | |
US20020144091A1 (en) | Method and apparatus for dynamic register management in a processor | |
US7055020B2 (en) | Flushable free register list having selected pointers moving in unison | |
US6360315B1 (en) | Method and apparatus that supports multiple assignment code | |
US6954848B2 (en) | Marking in history table instructions slowable/delayable for subsequent executions when result is not used immediately | |
WO2013101323A1 (en) | Micro-architecture for eliminating mov operations | |
US11281466B2 (en) | Register renaming after a non-pickable scheduler queue | |
US20210132985A1 (en) | Shadow latches in a shadow-latch configured register file for thread storage |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090602 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090630 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20090929 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20091006 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20091029 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20091106 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20091130 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20091207 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100104 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20101005 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110204 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20110207 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20110301 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110614 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110913 |
|
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: 20111011 |
|
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: 20111028 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20141104 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
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 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |