JP2011008732A - プライオリティ回路、演算処理装置及び演算処理方法 - Google Patents
プライオリティ回路、演算処理装置及び演算処理方法 Download PDFInfo
- Publication number
- JP2011008732A JP2011008732A JP2009154374A JP2009154374A JP2011008732A JP 2011008732 A JP2011008732 A JP 2011008732A JP 2009154374 A JP2009154374 A JP 2009154374A JP 2009154374 A JP2009154374 A JP 2009154374A JP 2011008732 A JP2011008732 A JP 2011008732A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- exa
- priority circuit
- arithmetic unit
- arithmetic
- 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.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims description 8
- 230000001629 suppression Effects 0.000 claims description 9
- 238000000034 method Methods 0.000 abstract description 14
- 238000010586 diagram Methods 0.000 description 46
- 230000005764 inhibitory process Effects 0.000 description 14
- 238000005516 engineering process Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000010354 integration 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/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/3001—Arithmetic instructions
-
- 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/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
-
- 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/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
- G06F9/3889—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by multiple instructions, e.g. MIMD, decoupled access or execute
- G06F9/3891—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by multiple instructions, e.g. MIMD, decoupled access or execute organised in groups of units sharing resources, e.g. clusters
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Advance Control (AREA)
Abstract
【解決手段】プライオリティ回路は、リザベーションステーションと、処理可能な演算が異なる複数の演算器とに接続され、命令デコーダおよびリザベーションステーションによる入力によって、特定の演算器でのみ実行可能な命令であることを示す実行可能フラグが立っていると判定された場合に、当該特定の演算器とは異なる演算器であって、キューに空きが存在する演算器に命令をディスパッチする。
【選択図】図1
Description
上述したように、プライオリティ回路は、命令デコーダによって演算器Aにのみ実行可能である命令を示すEXA_ONLYが一つのリザベーションステーションに入力され、リザベーションステーションによる当該EXA_ONLYの入力によって、EXA_ONLYが立っていると判定された場合に、演算器Bのキューが空であれば当該演算器Bに命令をディスパッチするので、演算器による演算処理を誤りなく効率化することができる。
上記実施例1では、主にプライオリティ回路への好適な実施例について説明したが、当該プライオリティ回路を含んだ演算処理装置(プロセッサ)として実現することもできる。例えば、プライオリティ回路を図10に示したプロセッサに適用すれば良い。
また、上記実施例1では、演算器について、固定小数点演算器に適用する場合について説明したが、浮動小数点演算器に対して適用することとしても良い。
また、上記文書中や図面中などで示した処理手順、制御手順、具体的名称、各種のデータやパラメタなどを含む情報(例えば、「ディスパッチ抑止フラグ」の具体的名称など)については、特記する場合を除いて任意に変更することができる。
110 RSE
120 プライオリティ回路
130 EXA
140 EXB
Claims (6)
- リザベーションステーションと、処理可能な演算が異なる複数の演算器とに接続されたプライオリティ回路であって、
特定の演算器でのみ実行可能な命令であることを示す実行可能フラグに基づいて、当該特定の演算器とは異なる演算器であって、キューに空きが存在する演算器に命令をディスパッチするディスパッチ手段を有することを特徴とするプライオリティ回路。 - 前記ディスパッチ手段は、さらに、特定の演算器へのディスパッチが不可であることを示すディスパッチ抑止フラグに基づいて、当該特定の演算器とは異なる演算器であって、キューに空きが存在する演算器に命令をディスパッチすることを特徴とする請求項1に記載のプライオリティ回路。
- リザベーションステーションと、
処理可能な演算が異なる複数の演算器と、
特定の演算器でのみ実行可能な命令であることを示す実行可能フラグを前記リザベーションステーションに入力する命令デコーダと、
前記リザベーションステーションによる前記実行可能フラグの入力に基づいて、前記特定の演算器とは異なる演算器であって、キューに空きが存在する演算器に命令をディスパッチするプライオリティ回路と、
を有することを特徴とする演算処理装置。 - 前記プライオリティ回路は、さらに、特定の演算器へのディスパッチが不可であることを示すディスパッチ抑止フラグに基づいて、当該特定の演算器とは異なる演算器であって、キューに空きがある演算器にディスパッチすることを特徴とする請求項3に記載の演算処理装置。
- リザベーションステーションと、処理可能な演算が異なる複数の演算器とを有する演算処理装置の演算処理方法であって、
前記演算処理装置が有する命令デコーダが、特定の演算器でのみ実行可能な命令であることを示す実行可能フラグを前記リザベーションステーションに入力するステップと、
前記演算処理装置が有するプライオリティ回路が、前記リザベーションステーションによる前記実行可能フラグの入力に基づいて、前記特定の演算器とは異なる演算器であって、キューに空きが存在する演算器に命令をディスパッチするステップと、
を含んだことを特徴とする演算処理方法。 - 前記プライオリティ回路は、さらに、特定の演算器へのディスパッチが不可であることを示すディスパッチ抑止フラグに基づいて、当該特定の演算器とは異なる演算器であって、キューに空きがある演算器にディスパッチすることを特徴とする請求項5に記載の演算処理方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009154374A JP2011008732A (ja) | 2009-06-29 | 2009-06-29 | プライオリティ回路、演算処理装置及び演算処理方法 |
US12/801,868 US8516223B2 (en) | 2009-06-29 | 2010-06-29 | Dispatching instruction from reservation station to vacant instruction queue of alternate arithmetic unit |
EP10167671A EP2270652B1 (en) | 2009-06-29 | 2010-06-29 | Priority circuit for dispatching instructions in a superscalar processor having a shared reservation station and processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009154374A JP2011008732A (ja) | 2009-06-29 | 2009-06-29 | プライオリティ回路、演算処理装置及び演算処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011008732A true JP2011008732A (ja) | 2011-01-13 |
Family
ID=42668277
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009154374A Pending JP2011008732A (ja) | 2009-06-29 | 2009-06-29 | プライオリティ回路、演算処理装置及び演算処理方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US8516223B2 (ja) |
EP (1) | EP2270652B1 (ja) |
JP (1) | JP2011008732A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014002555A (ja) * | 2012-06-18 | 2014-01-09 | Fujitsu Ltd | プロセッサ |
US9952872B2 (en) | 2015-06-02 | 2018-04-24 | Fujitsu Limited | Arithmetic processing device and processing method of arithmetic processing device |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013206095A (ja) * | 2012-03-28 | 2013-10-07 | Fujitsu Ltd | データ処理装置及びデータ処理装置の制御方法 |
US9317294B2 (en) * | 2012-12-06 | 2016-04-19 | International Business Machines Corporation | Concurrent multiple instruction issue of non-pipelined instructions using non-pipelined operation resources in another processing core |
CN104657114B (zh) * | 2015-03-03 | 2019-09-06 | 上海兆芯集成电路有限公司 | 并行化的多分派系统和用于排序队列仲裁的方法 |
US12039329B2 (en) * | 2020-12-24 | 2024-07-16 | Intel Corporation | Methods, systems, and apparatuses to optimize partial flag updating instructions via dynamic two-pass execution in a processor |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000181705A (ja) * | 1998-12-17 | 2000-06-30 | Fujitsu Ltd | 命令制御装置 |
JP2002055814A (ja) * | 2000-08-08 | 2002-02-20 | Fujitsu Ltd | 適切な発行先に命令を発行する命令発行装置 |
JP2003280896A (ja) * | 2002-03-19 | 2003-10-02 | Toshiba Corp | 命令発行装置及び命令発行方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2263565B (en) * | 1992-01-23 | 1995-08-30 | Intel Corp | Microprocessor with apparatus for parallel execution of instructions |
US5592679A (en) * | 1994-11-14 | 1997-01-07 | Sun Microsystems, Inc. | Apparatus and method for distributed control in a processor architecture |
US5809323A (en) * | 1995-09-19 | 1998-09-15 | International Business Machines Corporation | Method and apparatus for executing fixed-point instructions within idle execution units of a superscalar processor |
US6105128A (en) * | 1998-04-30 | 2000-08-15 | Intel Corporation | Method and apparatus for dispatching instructions to execution units in waves |
US6249855B1 (en) * | 1998-06-02 | 2001-06-19 | Compaq Computer Corporation | Arbiter system for central processing unit having dual dominoed encoders for four instruction issue per machine cycle |
US6742111B2 (en) * | 1998-08-31 | 2004-05-25 | Stmicroelectronics, Inc. | Reservation stations to increase instruction level parallelism |
WO2006114874A1 (ja) * | 2005-04-21 | 2006-11-02 | Fujitsu Limited | プロセッサ装置 |
US7707390B2 (en) * | 2007-04-25 | 2010-04-27 | Arm Limited | Instruction issue control within a multi-threaded in-order superscalar processor |
-
2009
- 2009-06-29 JP JP2009154374A patent/JP2011008732A/ja active Pending
-
2010
- 2010-06-29 EP EP10167671A patent/EP2270652B1/en not_active Not-in-force
- 2010-06-29 US US12/801,868 patent/US8516223B2/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000181705A (ja) * | 1998-12-17 | 2000-06-30 | Fujitsu Ltd | 命令制御装置 |
JP2002055814A (ja) * | 2000-08-08 | 2002-02-20 | Fujitsu Ltd | 適切な発行先に命令を発行する命令発行装置 |
JP2003280896A (ja) * | 2002-03-19 | 2003-10-02 | Toshiba Corp | 命令発行装置及び命令発行方法 |
Non-Patent Citations (4)
Title |
---|
CSND200300525009; 中森章: 'コンピュータアーキテクチャ その直感的アプローチ4 並列処理の基本,スーパスカラ' Oh!X 2001春号 , 20010301, Pages:256-275, ソフトバンクパブリッシング株式会社 * |
CSNG200300006062; 佐藤寿倫,有田五次郎: '過渡故障に対するマイクロプロセッサ向けフォールトトレランス技術の提案' 並列処理シンポジウム2001 , 20010605, Pages:335-342, 社団法人情報処理学会 * |
JPN6013042251; 中森章: 'コンピュータアーキテクチャ その直感的アプローチ4 並列処理の基本,スーパスカラ' Oh!X 2001春号 , 20010301, Pages:256-275, ソフトバンクパブリッシング株式会社 * |
JPN6013042252; 佐藤寿倫,有田五次郎: '過渡故障に対するマイクロプロセッサ向けフォールトトレランス技術の提案' 並列処理シンポジウム2001 , 20010605, Pages:335-342, 社団法人情報処理学会 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014002555A (ja) * | 2012-06-18 | 2014-01-09 | Fujitsu Ltd | プロセッサ |
US9952872B2 (en) | 2015-06-02 | 2018-04-24 | Fujitsu Limited | Arithmetic processing device and processing method of arithmetic processing device |
Also Published As
Publication number | Publication date |
---|---|
EP2270652A1 (en) | 2011-01-05 |
US20100332802A1 (en) | 2010-12-30 |
EP2270652B1 (en) | 2013-03-27 |
US8516223B2 (en) | 2013-08-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20170083313A1 (en) | CONFIGURING COARSE-GRAINED RECONFIGURABLE ARRAYS (CGRAs) FOR DATAFLOW INSTRUCTION BLOCK EXECUTION IN BLOCK-BASED DATAFLOW INSTRUCTION SET ARCHITECTURES (ISAs) | |
US6968444B1 (en) | Microprocessor employing a fixed position dispatch unit | |
US9946549B2 (en) | Register renaming in block-based instruction set architecture | |
US7263604B2 (en) | Heterogeneous parallel multithread processor (HPMT) with local context memory sets for respective processor type groups and global context memory | |
JP2011008732A (ja) | プライオリティ回路、演算処理装置及び演算処理方法 | |
US20160196141A1 (en) | Apparatus and method for configuring sets of interrupts | |
US10846092B2 (en) | Execution of micro-operations | |
CN112540796B (zh) | 一种指令处理装置、处理器及其处理方法 | |
CN107209664B (zh) | 用于扇出生产指令的结果的方法和设备及计算机可读媒体 | |
TW201528133A (zh) | 於多核心處理器中並行功能之高效率硬體分派及相關之處理器系統、方法及電腦可讀媒體 | |
US20210089306A1 (en) | Instruction processing method and apparatus | |
TWI752354B (zh) | 提供預測性指令分派節流以防止在基於亂序處理器(oop)的設備中的資源溢出 | |
CN112559048B (zh) | 一种指令处理装置、处理器及其处理方法 | |
US11080063B2 (en) | Processing device and method of controlling processing device | |
EP2856304B1 (en) | Issuing instructions to execution pipelines based on register-associated preferences, and related instruction processing circuits, processor systems, methods, and computer-readable media | |
JP2020091751A (ja) | 演算処理装置および演算処理装置の制御方法 | |
US20220197696A1 (en) | Condensed command packet for high throughput and low overhead kernel launch | |
CN112540789B (zh) | 一种指令处理装置、处理器及其处理方法 | |
JP5093237B2 (ja) | 命令処理装置 | |
US20070043930A1 (en) | Performance of a data processing apparatus | |
US20070005941A1 (en) | High performance architecture for a writeback stage | |
EP1622005B1 (en) | Branch instruction control apparatus and control method with a branch reservation station | |
JP6307975B2 (ja) | 演算処理装置及び演算処理装置の制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120309 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130812 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130827 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20131025 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20131112 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140210 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20140217 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20140314 |