JPH0287229A - 実行命令の先取り制御方式 - Google Patents
実行命令の先取り制御方式Info
- Publication number
- JPH0287229A JPH0287229A JP23928288A JP23928288A JPH0287229A JP H0287229 A JPH0287229 A JP H0287229A JP 23928288 A JP23928288 A JP 23928288A JP 23928288 A JP23928288 A JP 23928288A JP H0287229 A JPH0287229 A JP H0287229A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- queue
- address
- fetch
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 claims description 9
- 230000009191 jumping Effects 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 2
- 230000007423 decrease Effects 0.000 description 1
Landscapes
- Advance Control (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
(産業上の利用分野)
本発明は、各種のデータ処理装置を構成するプロセッサ
に適用される実行命令の先取り制御方式%式% (従来の技術) 各種のデータ処理装置を構成するプロセッサでは、実行
対象の命令群から成るプログラムが予め主記憶装置に格
納され、ここから1命令ずつプロセッサにフェッチされ
、実行されてゆく。命令のフェッチに要する時間を短縮
して実行速度を高めるための一手法として、複数の命令
をそれらの実行に先行して主記憶装置から予めフェッチ
して待ち行列に保持させておく先取り制御方式が採用さ
れる場合がある。
に適用される実行命令の先取り制御方式%式% (従来の技術) 各種のデータ処理装置を構成するプロセッサでは、実行
対象の命令群から成るプログラムが予め主記憶装置に格
納され、ここから1命令ずつプロセッサにフェッチされ
、実行されてゆく。命令のフェッチに要する時間を短縮
して実行速度を高めるための一手法として、複数の命令
をそれらの実行に先行して主記憶装置から予めフェッチ
して待ち行列に保持させておく先取り制御方式が採用さ
れる場合がある。
(発明が解決しようとする課題)
上記従来の先取り制御方式では、待ち行列を1系統だけ
設けておきここに命令の実行順序に変更がないとした場
合の命令群を先行フェッチして保持させている。このた
め、条件付き分岐命令などの実行に伴い、実行先アドレ
スに跳びが生した場合には、先行フェッチして保持中の
命令群を廃棄して跳び先のアドレスからの先行フェッチ
を開始しなければならず、処理速度が低下するという問
題がある。
設けておきここに命令の実行順序に変更がないとした場
合の命令群を先行フェッチして保持させている。このた
め、条件付き分岐命令などの実行に伴い、実行先アドレ
スに跳びが生した場合には、先行フェッチして保持中の
命令群を廃棄して跳び先のアドレスからの先行フェッチ
を開始しなければならず、処理速度が低下するという問
題がある。
(課題を解決するための手段)
本発明に係わる実行命令の先取り制御方式によれば、待
ち行列部が複数の系統で構成されると共に、先行フェッ
チ部は先行フェッチした命令がその実行に伴い先行フェ
ッチ先のアドレスに跳びを生じさせる可能性がある場合
にはその跳び先アドレスについても先9行フェッチを行
って複数系統の待ち行列部の一つに保持させることによ
り、アドレスに跳びが生じた場合の実行命令の先行フェ
ッチのやりなおしを不要とし、処理速度の向上を図るよ
うに構成されている。
ち行列部が複数の系統で構成されると共に、先行フェッ
チ部は先行フェッチした命令がその実行に伴い先行フェ
ッチ先のアドレスに跳びを生じさせる可能性がある場合
にはその跳び先アドレスについても先9行フェッチを行
って複数系統の待ち行列部の一つに保持させることによ
り、アドレスに跳びが生じた場合の実行命令の先行フェ
ッチのやりなおしを不要とし、処理速度の向上を図るよ
うに構成されている。
以下、本発明の作用を実施例と共に詳細に説明する。
(実施例)
第1図は、本発明の一実施例に係わる実行命令の先取り
制御方式を適用するデータ処理装置の構成を示すブロッ
ク図であり、1は主記憶装置、2は先行フェッチ部、3
,4は待ち行列、5はセレクタ、6は実行部である。
制御方式を適用するデータ処理装置の構成を示すブロッ
ク図であり、1は主記憶装置、2は先行フェッチ部、3
,4は待ち行列、5はセレクタ、6は実行部である。
主記憶装置1には、実行対象の命令とデータの群で構成
されるプログラムが格納されている。先行フェッチ部2
は、主記憶装置1に格納中のプログラムを構成する命令
群を読出して待ち行列部3と4に保持させる。実行部6
は、待ち行列部3と4に保持中の命令をセレクタ5を介
して一つずつ続出して実行してゆく。
されるプログラムが格納されている。先行フェッチ部2
は、主記憶装置1に格納中のプログラムを構成する命令
群を読出して待ち行列部3と4に保持させる。実行部6
は、待ち行列部3と4に保持中の命令をセレクタ5を介
して一つずつ続出して実行してゆく。
先行フェッチ部2は、第2図に例示するように、主記憶
装置lから先頭の命令1をフェッチし、待ちj〒列3に
保持させる。続いて、先行フェッチ部2は主記憶装置か
ら次の命令2を先行フェッチし、待ち行列3に保持させ
る。先行フェッチ部2は、次の命令の先行フェッチに際
し、直前にフェッチした命令2が条件付き分岐命令など
実行アドレスの跳びを伴う命令であることを検出すると
、主記憶装置1から次アドレスの命令3を読出して待ち
行列3に保持させると共に、跳び先アドレスの命令6を
主記憶装置1から読出して、待ち行列4に保持させる。
装置lから先頭の命令1をフェッチし、待ちj〒列3に
保持させる。続いて、先行フェッチ部2は主記憶装置か
ら次の命令2を先行フェッチし、待ち行列3に保持させ
る。先行フェッチ部2は、次の命令の先行フェッチに際
し、直前にフェッチした命令2が条件付き分岐命令など
実行アドレスの跳びを伴う命令であることを検出すると
、主記憶装置1から次アドレスの命令3を読出して待ち
行列3に保持させると共に、跳び先アドレスの命令6を
主記憶装置1から読出して、待ち行列4に保持させる。
上記先行フェッチ部2の動作と並行して、実行部6は先
行フェッチ部2によって選択状態の制御が行われるセレ
クタ5を介して待ち行列3からフェッチ済みの命令lを
読出して実行する。
行フェッチ部2によって選択状態の制御が行われるセレ
クタ5を介して待ち行列3からフェッチ済みの命令lを
読出して実行する。
命令フェッチ部2は次命令の先行フェッチに移るが、第
2図に例示するように、直前に読出した命令3と6が条
件付き分岐命令などであってそれらの実行に伴い次命令
が命令4と7だけでなく命令5と8とに跳ぶ可能性もあ
るものとする。この場合、先行フェッチ部2は主記憶装
置lから4個の命令4,5,7.8を先行フェッチする
。この先行フェッチと並行して待ち行列部3から読出さ
れた命令2が実行部6で実行され、その結果命令6が次
の実行対象命令になったものとする。
2図に例示するように、直前に読出した命令3と6が条
件付き分岐命令などであってそれらの実行に伴い次命令
が命令4と7だけでなく命令5と8とに跳ぶ可能性もあ
るものとする。この場合、先行フェッチ部2は主記憶装
置lから4個の命令4,5,7.8を先行フェッチする
。この先行フェッチと並行して待ち行列部3から読出さ
れた命令2が実行部6で実行され、その結果命令6が次
の実行対象命令になったものとする。
この命令6の格納アドレスは、信号線7を介して実行部
6から先行フェッチ部2に通知される。
6から先行フェッチ部2に通知される。
この通知を受けた先行フェッチ部2は、先行フェッチ済
みの4個の命令4,5,7.8のうち不要となった命令
4,5を廃棄し、残る命令7,8のうち命令7を待ち行
列4内の命令6の直後に保持させると共に、命令3を待
ち行列部3に保持させ、セレクタ5をの選択状態を待ち
行列部3側から待ち行列部4側へと切り替える。
みの4個の命令4,5,7.8のうち不要となった命令
4,5を廃棄し、残る命令7,8のうち命令7を待ち行
列4内の命令6の直後に保持させると共に、命令3を待
ち行列部3に保持させ、セレクタ5をの選択状態を待ち
行列部3側から待ち行列部4側へと切り替える。
この結果、待ち行列部4に保持中の命令6がセレクタ5
を介して実行部6に読出され、実行される。
を介して実行部6に読出され、実行される。
以上、2系統の待ち行列部を設置する構成を例示したが
、先行フェッチの程度によっては3以上の系統の待ち行
列部を設置する構成としてもよい。
、先行フェッチの程度によっては3以上の系統の待ち行
列部を設置する構成としてもよい。
(発明の効果)
以上詳細に説明したように、本発明に係わる実行命令の
先取り制御方式は、先行フェッチした命令がその実行に
伴い先行フェッチ先のアドレスに跳びを生じさせる可能
性がある場合にはその跳び先アドレスについても先行フ
ェッチを行って複数系統の待ち行列部の一つに保持させ
る構成であるから、アドレスに跳びが生じた場合でも実
行命令の先行フエyチのやりなおしが不要になり、処理
速度が向上するという効果が奏される。
先取り制御方式は、先行フェッチした命令がその実行に
伴い先行フェッチ先のアドレスに跳びを生じさせる可能
性がある場合にはその跳び先アドレスについても先行フ
ェッチを行って複数系統の待ち行列部の一つに保持させ
る構成であるから、アドレスに跳びが生じた場合でも実
行命令の先行フエyチのやりなおしが不要になり、処理
速度が向上するという効果が奏される。
第1図は本発明の一実施例に係わる実行命令の先取り制
御方式を適用するデータ処理装置の構成を示すブロック
図、第2図は第1図の装置の動作の一例を説明するため
の概念図である。 l・・・主記憶装置、2・・・先行フェッチ部、3.4
・・・待ち行列部、6・・・実行部。
御方式を適用するデータ処理装置の構成を示すブロック
図、第2図は第1図の装置の動作の一例を説明するため
の概念図である。 l・・・主記憶装置、2・・・先行フェッチ部、3.4
・・・待ち行列部、6・・・実行部。
Claims (1)
- 【特許請求の範囲】 実行対象の命令群から成るプログラムを格納する記憶部
と、この記憶部から実行対象の命令群を先行フェッチす
る先行フェッチ部と、この先行フェッチされた命令群を
保持する待ち行列部と、この待ち行列部に保持中の命令
群を1命令ずつ実行してゆく実行部とを備えたプロセッ
サにおいて、前記待ち行列部は複数の系統で構成され、 前記先行フェッチ部は先行フェッチした命令がその実行
に伴い先行フェッチ先のアドレスに跳びを生じさせる可
能性がある場合にはその跳び先アドレスの実行命令につ
いても先行フェッチを行って前記複数系統の待ち行列部
の一つに保持させておくことを特徴とする実行命令の先
取り制御方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP23928288A JPH0287229A (ja) | 1988-09-24 | 1988-09-24 | 実行命令の先取り制御方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP23928288A JPH0287229A (ja) | 1988-09-24 | 1988-09-24 | 実行命令の先取り制御方式 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0287229A true JPH0287229A (ja) | 1990-03-28 |
Family
ID=17042429
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP23928288A Pending JPH0287229A (ja) | 1988-09-24 | 1988-09-24 | 実行命令の先取り制御方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0287229A (ja) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH05204641A (ja) * | 1992-01-30 | 1993-08-13 | Fujitsu Ltd | マイクロプロセッサ |
| US6647485B2 (en) | 1991-07-08 | 2003-11-11 | Seiko Epson Corporation | High-performance, superscalar-based computer system with out-of-order instruction execution |
| US7028161B2 (en) | 1991-07-08 | 2006-04-11 | Seiko Epson Corporation | High-performance, superscalar-based computer system with out-of-order instruction execution and concurrent results distribution |
| JP2009070378A (ja) * | 2007-09-17 | 2009-04-02 | Internatl Business Mach Corp <Ibm> | アウト・オブ・オーダ・プロセッサにおける述語型実行のための方法および装置 |
-
1988
- 1988-09-24 JP JP23928288A patent/JPH0287229A/ja active Pending
Cited By (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6959375B2 (en) | 1991-07-08 | 2005-10-25 | Seiko Epson Corporation | High-performance, superscalar-based computer system with out-of-order instruction execution |
| US7487333B2 (en) | 1991-07-08 | 2009-02-03 | Seiko Epson Corporation | High-performance, superscalar-based computer system with out-of-order instruction execution |
| US6915412B2 (en) | 1991-07-08 | 2005-07-05 | Seiko Epson Corporation | High-performance, superscalar-based computer system with out-of-order instruction execution |
| US6934829B2 (en) | 1991-07-08 | 2005-08-23 | Seiko Epson Corporation | High-performance, superscalar-based computer system with out-of-order instruction execution |
| US6941447B2 (en) | 1991-07-08 | 2005-09-06 | Seiko Epson Corporation | High-performance, superscalar-based computer system with out-of-order instruction execution |
| US6948052B2 (en) | 1991-07-08 | 2005-09-20 | Seiko Epson Corporation | High-performance, superscalar-based computer system with out-of-order instruction execution |
| US6647485B2 (en) | 1991-07-08 | 2003-11-11 | Seiko Epson Corporation | High-performance, superscalar-based computer system with out-of-order instruction execution |
| US7028161B2 (en) | 1991-07-08 | 2006-04-11 | Seiko Epson Corporation | High-performance, superscalar-based computer system with out-of-order instruction execution and concurrent results distribution |
| US7941635B2 (en) | 1991-07-08 | 2011-05-10 | Seiko-Epson Corporation | High-performance superscalar-based computer system with out-of order instruction execution and concurrent results distribution |
| US7162610B2 (en) | 1991-07-08 | 2007-01-09 | Seiko Epson Corporation | High-performance, superscalar-based computer system with out-of-order instruction execution |
| US6986024B2 (en) | 1991-07-08 | 2006-01-10 | Seiko Epson Corporation | High-performance, superscalar-based computer system with out-of-order instruction execution |
| US7555632B2 (en) | 1991-07-08 | 2009-06-30 | Seiko Epson Corporation | High-performance superscalar-based computer system with out-of-order instruction execution and concurrent results distribution |
| JPH05204641A (ja) * | 1992-01-30 | 1993-08-13 | Fujitsu Ltd | マイクロプロセッサ |
| JP2009070378A (ja) * | 2007-09-17 | 2009-04-02 | Internatl Business Mach Corp <Ibm> | アウト・オブ・オーダ・プロセッサにおける述語型実行のための方法および装置 |
| US9946550B2 (en) | 2007-09-17 | 2018-04-17 | International Business Machines Corporation | Techniques for predicated execution in an out-of-order processor |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4974155A (en) | Variable delay branch system | |
| JPS63175934A (ja) | デ−タ処理装置 | |
| JPH0769812B2 (ja) | データ処理装置 | |
| KR910008410B1 (ko) | 마이크로코드 판독 제어 시스템 | |
| JPH06236267A (ja) | スーパースカラ・プロセッサ・システムにおける命令ディスパッチ効率を向上させる方法およびシステム | |
| JPH0287229A (ja) | 実行命令の先取り制御方式 | |
| JP2723238B2 (ja) | 情報処理装置 | |
| JP2591200B2 (ja) | プログラム先取り装置 | |
| KR970012141A (ko) | 파이프라인 처리를 수행하는 데이터 처리 장치 | |
| KR100329780B1 (ko) | 인터럽트 응답 시간을 줄인 인터럽트 처리 장치 | |
| JPS60231241A (ja) | プログラム先行フエツチ制御方式 | |
| JPS60241136A (ja) | デ−タ処理装置 | |
| JPS63314644A (ja) | デ−タ処理装置 | |
| JP3325309B2 (ja) | サブルーチンリターン命令処理装置 | |
| JPS63318634A (ja) | 命令先取り方式 | |
| KR100240590B1 (ko) | 슈퍼스칼라 마이크로프로세서를 위한 명령어 디코딩 장치 및 그 방법 | |
| JPS61289429A (ja) | 演算処理装置 | |
| JPS62208129A (ja) | デ−タ処理方式 | |
| JPS6232507B2 (ja) | ||
| JPH0769800B2 (ja) | データ処理装置 | |
| JPH0774992B2 (ja) | データ処理装置 | |
| JPH0373022A (ja) | 中央処理装置 | |
| JPH01175635A (ja) | データ処理装置 | |
| JPH08286914A (ja) | メモリ制御装置 | |
| JPS63205732A (ja) | 情報処理装置 |