JP5548037B2 - 命令発行制御装置及び方法 - Google Patents
命令発行制御装置及び方法 Download PDFInfo
- Publication number
- JP5548037B2 JP5548037B2 JP2010134528A JP2010134528A JP5548037B2 JP 5548037 B2 JP5548037 B2 JP 5548037B2 JP 2010134528 A JP2010134528 A JP 2010134528A JP 2010134528 A JP2010134528 A JP 2010134528A JP 5548037 B2 JP5548037 B2 JP 5548037B2
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- thread
- unit
- cycles
- stall
- 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 14
- 239000000872 buffer Substances 0.000 claims description 77
- 238000010586 diagram Methods 0.000 description 21
- 238000004422 calculation algorithm Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 7
- 230000004048 modification Effects 0.000 description 7
- 238000012986 modification Methods 0.000 description 7
- 230000007423 decrease Effects 0.000 description 6
- MHABMANUFPZXEB-UHFFFAOYSA-N O-demethyl-aloesaponarin I Natural products O=C1C2=CC=CC(O)=C2C(=O)C2=C1C=C(O)C(C(O)=O)=C2C MHABMANUFPZXEB-UHFFFAOYSA-N 0.000 description 4
- 230000010354 integration Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 208000033748 Device issues Diseases 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000010485 coping Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000007616 round robin method Methods 0.000 description 1
- 239000004065 semiconductor 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
-
- 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/3802—Instruction prefetching
-
- 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/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
- 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/3853—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution of compound instructions
Description
以下、本発明の実施の形態1における命令発効制御装置、及び命令発行制御装置を備えたマルチスレッドプロセッサについて、図面を参照しながら説明する。
次に、実施の形態1の変形例に係る命令発行制御装置220及びマルチスレッドプロセッサ100について説明する。
次に、本発明の実施の形態2における命令発行制御装置220及びマルチスレッドプロセッサ300について説明する。
次に、本発明の実施の形態3における命令発行制御装置220及びマルチスレッドプロセッサ400について説明する。
101 命令キャッシュメモリ
102 命令フェッチ部
103 命令バッファ
104 命令発行制御装置
105 命令グループ化部
106 スレッド選択部
107 命令実行部
108 データキャッシュメモリ
109 レジスタファイル
201 命令キャッシュメモリ
202 命令フェッチ部
203 命令バッファ
204 命令発行制御部
205 命令グループ化部
206 スレッド選択部
207 命令実行部
208 データキャッシュメモリ
209 レジスタファイル
210 リソース管理部
220 命令発行制御装置
300 マルチスレッドプロセッサ(実施の形態2)
302 第Nリソーステーブル
303 第1カウンタ
304 第1フラグ保持部
305 第2カウンタ
306 第2フラグ保持部
400 マルチスレッドプロセッサ(実施の形態3)
903 バスコントロールユニット
904 メインメモリ
905 DSP
906 他のCPU
907 DMAC
1005 分岐予測器
1105 命令実行チェック部
Claims (16)
- 命令実行部と、命令バッファメモリと、命令フェッチ部とを持つマルチスレッドプロセッサが備える命令発行制御装置であって、
実行中のスレッドの各々がストール中であるか否かを示すストール情報を管理するリソース管理部と、
前記実行中のスレッドのうち、ストール中でないスレッドを選択するスレッド選択部と、
前記選択されたスレッドから同時発行可能な命令が発行されるように前記マルチスレッドプロセッサを制御する命令発行制御部とを備え、
前記リソース管理部は、前記命令実行部、前記命令バッファメモリ、および前記命令フェッチ部からの現在占有されている共有リソースの識別情報、共有リソースを占有するスレッドの識別情報、前記命令バッファメモリに格納された命令が属する実行中のスレッドの識別情報及び、既に実行されている命令の残り実行サイクル数の情報を受理し、前記実行中のスレッドの各々について、当該スレッドが共有リソースを占有しているか否かを調べ、占有している場合には、あと何サイクルストールするかを示すストールサイクル数を、リソーステーブルを用いて管理しており、前記ストールサイクル数が1以上であるか否かを判断し、前記ストールサイクル数が0ならスレッドはストール中でないと判断して前記ストール情報を更新する
命令発行制御装置。 - 命令バッファメモリと命令フェッチ部と命令実行部と命令発行制御装置とを備えたマルチスレッドプロセッサであって、
前記命令発行制御装置は、
実行中のスレッドの各々がストール中であるか否かを示すストール情報を管理するリソース管理部と、
前記実行中のスレッドのうち、ストール中でないスレッドを選択するスレッド選択部と、
前記選択されたスレッドから同時発行可能な命令が前記命令実行部へ発行されるよう制御する命令発行制御部とを備え、
前記リソース管理部は、前記命令実行部、前記命令バッファメモリ、および前記命令フェッチ部からの現在占有されている共有リソースの識別情報、共有リソースを占有するスレッドの識別情報、前記命令バッファメモリに格納された命令が属する実行中のスレッドの識別情報及び、既に実行されている命令の残り実行サイクル数の情報を受理し、前記実行中のスレッドの各々について、当該スレッドが共有リソースを占有しているか否かを調べ、占有している場合には、あと何サイクルストールするかを示すストールサイクル数を、リソーステーブルを用いて管理しており、前記ストールサイクル数が1以上であるか否かを判断し、前記ストールサイクル数が0ならスレッドはストール中でないと判断して前記ストール情報を更新する
マルチスレッドプロセッサ。 - 前記リソース管理部は、前記ストール情報としてのスレッドレディフラグを保持する第1フラグ保持部と、前記ストールサイクル数を管理するためのカウンタである第1カウンタとを備え、
前記第1カウンタが1以上であれば、前記スレッドレディフラグを0にセットし、
前記第1カウンタが0であれば、前記スレッドレディフラグを1にセットする
請求項2に記載のマルチスレッドプロセッサ。 - 前記マルチスレッドプロセッサは、複数スレッドの各々の命令列を格納する複数の命令バッファを備え、
前記命令発行制御部は、前記複数の命令バッファに格納された命令のうち、次に前記命令実行部に発行されるべき同時発行が可能な1以上の命令を命令グループとしてグループ化する命令グループ化部を備えており、
前記命令グループ化部は、前記複数の命令バッファに格納された命令のうち、前記命令実行部で実行中である命令と依存関係をもたない命令を優先して前記命令グループに含めるように前記グループ化を行う
請求項3に記載のマルチスレッドプロセッサ。 - 前記リソース管理部は、前記実行中のスレッドの各々が、共有リソースの各々を現在占有しているか否かを示すリソースレディフラグを保持する第2フラグ保持部と、
前記実行中のスレッドの各々が、前記共有リソースの各々を占有する残りサイクル数を示す第2カウンタとを有しており、
前記命令グループ化部は、前記複数の命令バッファに格納された命令のうち、現在占有されている共有リソースを使用する命令が前記命令グループに含まれないように前記グループ化を行う
請求項4に記載のマルチスレッドプロセッサ。 - 前記命令グループ化部は、現在占有されている前記共有リソースの識別情報及び当該共有リソースを占有するスレッドの識別情報を、前記リソース管理部に通知し、
前記リソース管理部は、通知された前記共有リソースに対応する前記第2カウンタに応じて、通知された前記識別情報に対応するスレッドの前記第1カウンタを更新する
請求項5に記載のマルチスレッドプロセッサ。 - 前記命令グループ化部は、前記複数の命令バッファに格納された命令が前記命令実行部で既に実行されている命令と依存関係を有する場合には、前記命令バッファに格納された命令が属する前記実行中のスレッドの識別情報及び、前記既に実行されている命令の残り実行サイクル数を前記リソース管理部に通知し、
前記リソース管理部は、通知された前記残り実行サイクル数に応じて前記識別情報に対応するスレッドの前記第1カウンタを更新する
請求項4に記載のマルチスレッドプロセッサ。 - 前記マルチスレッドプロセッサは、前記命令実行部が用いるデータを保持するデータキャッシュメモリを備えており、
前記命令実行部は、データキャッシュミスが発生した場合に、実行中のスレッドの識別情報及び、前記データキャッシュミスが生じたデータを前記マルチスレッドプロセッサの外部にあるメインメモリから前記データキャッシュメモリへ転送するのに要するサイクル数を前記リソース管理部へ通知し、
前記リソース管理部は、通知された前記サイクル数に応じて前記識別情報に対応するスレッドの前記第1カウンタを更新する
請求項4に記載のマルチスレッドプロセッサ。 - 前記マルチスレッドプロセッサは、命令キャッシュメモリと、
前記命令キャッシュメモリから命令を取得し、取得した前記命令を前記命令バッファへ供給する命令フェッチ部とを備えており、
前記命令フェッチ部は、命令をフェッチする際に命令キャッシュミスが発生した場合に、実行中のスレッドの識別情報及び、前記命令キャッシュミスが生じた命令を前記マルチスレッドプロセッサの外部にあるメインメモリから前記命令キャッシュメモリへ転送するのに要する第2のサイクル数を前記リソース管理部へ通知し、
前記リソース管理部は、通知された前記第2のサイクル数に応じて前記識別情報に対応するスレッドの前記第1カウンタを更新する
請求項8に記載のマルチスレッドプロセッサ。 - 前記命令実行部は、分岐命令を実行する場合には、その分岐先アドレスが確定するまでに要するサイクル数及び当該分岐命令が属するスレッドの識別情報を前記リソース管理部に通知し、
前記リソース管理部は、通知された前記サイクル数に応じて前記識別情報に対応するスレッドの第1カウンタを更新する
請求項4に記載のマルチスレッドプロセッサ。 - 前記マルチスレッドプロセッサは、バスコントロールユニットを備え、
前記バスコントロールユニットは、前記命令キャッシュメモリ、前記データキャッシュメモリ、及び前記マルチスレッドプロセッサの外部にあるメインメモリとそれぞれ接続されており、
前記命令キャッシュメモリ及び前記データキャッシュメモリでキャッシュミスが生じた時に、前記バスコントロールユニットが既に占有されている場合には、
前記バスコントロールユニットは、現在の占有があと何サイクル継続するかを示す残り占有サイクル数を前記リソース管理部へ通知し、
前記リソース管理部は、通知された前記残り占有サイクル数に応じて前記第1カウンタを更新する
請求項9に記載のマルチスレッドプロセッサ。 - 前記リソース管理部は、前記実行中のスレッドの各々について、前記第1カウンタが示す値よりも大きいストールサイクル数が通知された場合にのみ、当該第1カウンタが示す値を通知された前記ストールサイクル数で上書きする
請求項6〜11のいずれか1項に記載のマルチスレッドプロセッサ。 - 前記リソース管理部は、前記マルチスレッドプロセッサの1サイクル動作毎に、前記第1カウンタ及び前記第2カウンタが示す値から事前に定められた特定の値を減ずる
請求項5に記載のマルチスレッドプロセッサ。 - 前記命令発行制御部は、さらに、分岐予測器を備えており、
前記分岐予測器は、前記命令実行部が分岐命令の実行を完了する前に分岐先アドレスを予測し、当該予測アドレスを用いて前記分岐命令を実行するとともに、前記分岐先アドレスの予測が外れることにより発生する可能性があるストールサイクル数を前記リソース管理部に通知し、
前記リソース管理部は、前記通知を受けた場合には、前記第1カウンタが示す値に通知されたストールサイクル数を加算する
請求項3に記載のマルチスレッドプロセッサ。 - 1サイクル動作で複数の命令グループを同時に命令実行部へ発行するSMT(Simultaneous Multi Threading)方式のマルチスレッドプロセッサであって、
前記マルチスレッドプロセッサは、前記命令実行部と、命令バッファメモリと、命令フェッチ部と、命令発行制御装置とを備えており、
前記命令発行制御装置は、
実行中のスレッドの各々がストール中であるか否かを示すストール情報を管理するリソース管理部と、
前記実行中のスレッドのうち、ストールしていないスレッドを選択するスレッド選択部と、
前記選択されたスレッドの各々に属する複数の命令グループを同時に前記命令実行部へ発行するよう制御する命令グループ化部とを備え、
前記リソース管理部は、前記命令実行部、前記命令バッファメモリ、および前記命令フェッチ部からの現在占有されている共有リソースの識別情報、共有リソースを占有するスレッドの識別情報、前記命令バッファメモリに格納された命令が属する実行中のスレッドの識別情報及び、既に実行されている命令の残り実行サイクル数の情報を受理し、前記実行中のスレッドの各々について、当該スレッドが共有リソースを占有しているか否かを調べ、占有している場合には、あと何サイクルストールするかを示すストールサイクル数を、リソーステーブルを用いて管理しており、前記ストールサイクル数が1以上であるか否かを判断し、前記ストールサイクル数が0ならスレッドはストール中でないと判断して前記ストール情報を更新する
マルチスレッドプロセッサ。 - 命令実行部と、命令バッファメモリと、命令フェッチ部とを持つマルチスレッドプロセッサの命令発行制御方法であって、
前記命令発行制御方法は、
実行中のスレッドの各々がストール中であるか否かを示すストール情報を管理するリソース管理ステップと、
前記実行中のスレッドのうち、ストールしていないスレッドを選択するスレッド選択ステップと、
前記選択されたスレッドから同時発行可能な命令が発行されるよう制御する命令発行制
御ステップとを含み、
前記リソース管理ステップにおいて、前記命令実行部、前記命令バッファメモリ、および前記命令フェッチ部からの現在占有されている共有リソースの識別情報、共有リソースを占有するスレッドの識別情報、前記命令バッファメモリに格納された命令が属する実行中のスレッドの識別情報及び、既に実行されている命令の残り実行サイクル数の情報を受理し、前記実行中のスレッドの各々について、当該スレッドが共有リソースを占有しているか否かを調べ、占有している場合には、あと何サイクルストールするかを示すストールサイクル数を、リソーステーブルを用いて管理しており、前記ストールサイクル数が1以上であるか否かを判断し、前記ストールサイクル数が0ならスレッドはストール中でないと判断して前記ストール情報を更新する
命令発行制御方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010134528A JP5548037B2 (ja) | 2010-06-11 | 2010-06-11 | 命令発行制御装置及び方法 |
PCT/JP2011/000432 WO2011155097A1 (ja) | 2010-06-11 | 2011-01-27 | 命令発行制御装置及び方法 |
CN201180027800.7A CN102934076B (zh) | 2010-06-11 | 2011-01-27 | 指令发行控制装置以及方法 |
US13/692,141 US9436464B2 (en) | 2010-06-11 | 2012-12-03 | Instruction-issuance controlling device and instruction-issuance controlling method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010134528A JP5548037B2 (ja) | 2010-06-11 | 2010-06-11 | 命令発行制御装置及び方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011258147A JP2011258147A (ja) | 2011-12-22 |
JP5548037B2 true JP5548037B2 (ja) | 2014-07-16 |
Family
ID=45097720
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010134528A Expired - Fee Related JP5548037B2 (ja) | 2010-06-11 | 2010-06-11 | 命令発行制御装置及び方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9436464B2 (ja) |
JP (1) | JP5548037B2 (ja) |
CN (1) | CN102934076B (ja) |
WO (1) | WO2011155097A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9260217B2 (en) | 2006-01-30 | 2016-02-16 | Impress Group B.V. | Can end for a can and such can |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2495959A (en) * | 2011-10-26 | 2013-05-01 | Imagination Tech Ltd | Multi-threaded memory access processor |
US8914764B2 (en) | 2012-06-18 | 2014-12-16 | International Business Machines Corporation | Adaptive workload based optimizations coupled with a heterogeneous current-aware baseline design to mitigate current delivery limitations in integrated circuits |
US8826216B2 (en) * | 2012-06-18 | 2014-09-02 | International Business Machines Corporation | Token-based current control to mitigate current delivery limitations in integrated circuits |
US8863068B2 (en) | 2012-06-18 | 2014-10-14 | International Business Machines Corporation | Current-aware floorplanning to overcome current delivery limitations in integrated circuits |
US8826203B2 (en) | 2012-06-18 | 2014-09-02 | International Business Machines Corporation | Automating current-aware integrated circuit and package design and optimization |
US9471310B2 (en) * | 2012-11-26 | 2016-10-18 | Nvidia Corporation | Method, computer program product, and system for a multi-input bitwise logical operation |
US9667747B2 (en) | 2012-12-21 | 2017-05-30 | Akamai Technologies, Inc. | Scalable content delivery network request handling mechanism with support for dynamically-obtained content policies |
US9654579B2 (en) | 2012-12-21 | 2017-05-16 | Akamai Technologies, Inc. | Scalable content delivery network request handling mechanism |
US9400653B2 (en) * | 2013-03-14 | 2016-07-26 | Samsung Electronics Co., Ltd. | System and method to clear and rebuild dependencies |
CN103237049A (zh) * | 2013-03-18 | 2013-08-07 | 北京易华录信息技术股份有限公司 | 一种文件传输方法及装置 |
CN104298552B (zh) * | 2013-07-15 | 2018-06-19 | 华为技术有限公司 | 多线程处理器的线程取指调度方法、系统和多线程处理器 |
CN104951283B (zh) * | 2015-06-05 | 2017-05-31 | 中国航天科技集团公司第九研究院第七七一研究所 | 一种risc处理器的浮点处理单元集成电路及方法 |
US10579389B2 (en) * | 2015-11-02 | 2020-03-03 | Arm Limited | Fusion of instructions by delaying handling of a partial subset of a fusible group of instructions |
US20170300361A1 (en) * | 2016-04-15 | 2017-10-19 | Intel Corporation | Employing out of order queues for better gpu utilization |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0644089A (ja) * | 1992-05-18 | 1994-02-18 | Matsushita Electric Ind Co Ltd | 情報処理装置 |
US5546593A (en) * | 1992-05-18 | 1996-08-13 | Matsushita Electric Industrial Co., Ltd. | Multistream instruction processor able to reduce interlocks by having a wait state for an instruction stream |
JPH06332700A (ja) * | 1993-05-25 | 1994-12-02 | Matsushita Electric Ind Co Ltd | 情報処理装置 |
US5867725A (en) * | 1996-03-21 | 1999-02-02 | International Business Machines Corporation | Concurrent multitasking in a uniprocessor |
CN1280714C (zh) | 1996-08-27 | 2006-10-18 | 松下电器产业株式会社 | 独立处理多个指令流、软式控制各指令流的处理功能的多线程处理器 |
JP3760035B2 (ja) * | 1996-08-27 | 2006-03-29 | 松下電器産業株式会社 | 複数の命令流を独立に処理し、命令流単位に処理性能を柔軟に制御するマルチスレッドプロセッサ |
US5985042A (en) * | 1997-05-28 | 1999-11-16 | Fiedler; John | Computer mouse cleaning device |
US5913049A (en) * | 1997-07-31 | 1999-06-15 | Texas Instruments Incorporated | Multi-stream complex instruction set microprocessor |
US6477562B2 (en) | 1998-12-16 | 2002-11-05 | Clearwater Networks, Inc. | Prioritized instruction scheduling for multi-streaming processors |
JP2001084143A (ja) * | 1999-09-10 | 2001-03-30 | Matsushita Electric Ind Co Ltd | 情報処理装置 |
US6889319B1 (en) | 1999-12-09 | 2005-05-03 | Intel Corporation | Method and apparatus for entering and exiting multiple threads within a multithreaded processor |
DE602004017879D1 (de) | 2003-08-28 | 2009-01-02 | Mips Tech Inc | Integrierter mechanismus zum suspendieren und endznem prozessor |
WO2005022384A1 (en) | 2003-08-28 | 2005-03-10 | Mips Technologies, Inc. | Apparatus, method, and instruction for initiation of concurrent instruction streams in a multithreading microprocessor |
JP5145936B2 (ja) | 2005-06-02 | 2013-02-20 | 学校法人慶應義塾 | マルチスレッド中央演算装置および同時マルチスレッディング制御方法 |
JP2008123045A (ja) | 2006-11-08 | 2008-05-29 | Matsushita Electric Ind Co Ltd | プロセッサ |
JP2009110209A (ja) | 2007-10-29 | 2009-05-21 | Panasonic Corp | 演算処理装置、プロセッサ、プログラム変換装置およびプログラム |
-
2010
- 2010-06-11 JP JP2010134528A patent/JP5548037B2/ja not_active Expired - Fee Related
-
2011
- 2011-01-27 CN CN201180027800.7A patent/CN102934076B/zh not_active Expired - Fee Related
- 2011-01-27 WO PCT/JP2011/000432 patent/WO2011155097A1/ja active Application Filing
-
2012
- 2012-12-03 US US13/692,141 patent/US9436464B2/en active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9260217B2 (en) | 2006-01-30 | 2016-02-16 | Impress Group B.V. | Can end for a can and such can |
Also Published As
Publication number | Publication date |
---|---|
CN102934076B (zh) | 2015-07-22 |
WO2011155097A1 (ja) | 2011-12-15 |
CN102934076A (zh) | 2013-02-13 |
JP2011258147A (ja) | 2011-12-22 |
US20130097409A1 (en) | 2013-04-18 |
US9436464B2 (en) | 2016-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5548037B2 (ja) | 命令発行制御装置及び方法 | |
US10114652B2 (en) | Processor with hybrid pipeline capable of operating in out-of-order and in-order modes | |
JP4610593B2 (ja) | デュアルスレッドプロセッサ | |
JP5209933B2 (ja) | データ処理装置 | |
US20130297912A1 (en) | Apparatus and method for dynamic allocation of execution queues | |
KR100745904B1 (ko) | 동시적 멀티스레드 프로세서에서 파이프라인 길이를변경하기 위한 방법 및 회로 | |
US8386753B2 (en) | Completion arbitration for more than two threads based on resource limitations | |
JP5413853B2 (ja) | マルチスレッド型プロセッサのためのスレッドデエンファシス方法及びデバイス | |
JP2002508568A (ja) | 不適正順序マルチスレッド実行を実行するロード命令およびストア命令を順序付けるシステム | |
JP2002508564A (ja) | 実行パイプラインの外部に複数のプログラム・カウンタとトレース・バッファを有するプロセッサ | |
JP2007536626A (ja) | ロードオペレーションの投機的な結果をレジスタ値にリンクするメモリファイルを検証するためのシステムおよび方法 | |
JP2002508567A (ja) | 誤推論後の命令再実施のためのアウトオブパイプライン・トレース・バッファ | |
US10649780B2 (en) | Data processing apparatus and method for executing a stream of instructions out of order with respect to original program order | |
JP2006228241A (ja) | プロセッサ、およびプロセッサにおいて命令演算をスケジューリングするための方法 | |
JP5861354B2 (ja) | 演算処理装置及び演算処理装置の制御方法 | |
US9652246B1 (en) | Banked physical register data flow architecture in out-of-order processors | |
GB2501582A (en) | Issuing speculative load instructions to cache memory | |
GB2520731A (en) | Soft-partitioning of a register file cache | |
US7725659B2 (en) | Alignment of cache fetch return data relative to a thread | |
EP2159691B1 (en) | Simultaneous multithreaded instruction completion controller | |
JPWO2008155801A1 (ja) | 情報処理装置及びレジスタ制御方法 | |
JP2010061642A (ja) | スレッドのスケジューリングテクニック | |
US10430342B2 (en) | Optimizing thread selection at fetch, select, and commit stages of processor core pipeline | |
JP2022184701A (ja) | 共有機能部を有するマイクロプロセッサ | |
JP4631442B2 (ja) | プロセッサ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130404 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20131029 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20131204 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140408 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140416 |
|
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: 20140507 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140516 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5548037 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
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 |