JPS5890247A - 情報処理装置のパイプライン制御方式 - Google Patents

情報処理装置のパイプライン制御方式

Info

Publication number
JPS5890247A
JPS5890247A JP56188888A JP18888881A JPS5890247A JP S5890247 A JPS5890247 A JP S5890247A JP 56188888 A JP56188888 A JP 56188888A JP 18888881 A JP18888881 A JP 18888881A JP S5890247 A JPS5890247 A JP S5890247A
Authority
JP
Japan
Prior art keywords
instruction
register
stage
load
registers
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
Application number
JP56188888A
Other languages
English (en)
Inventor
Kazuo Tajiri
田尻 和夫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP56188888A priority Critical patent/JPS5890247A/ja
Publication of JPS5890247A publication Critical patent/JPS5890247A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3867Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
    • G06F9/3873Variable length pipelines, e.g. elastic pipeline
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution

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)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 (1)発明の属する分骨の説明 本発明は、情報処理装置の命令制御方式に関するもので
ある。
(2)従来の技術の説明 従来から、高性能な情報処理装置においては、命令の処
理をいくつかのステージに分割し、各ステージは、]つ
の命令の処理を終了すると、その命令が最終のステージ
で処理を完了するのを待たずに次の命令の処理を開始す
る、パイプライン制御方式が採られている。
また、情報処理装置は、一般にレジスタとレジスタ間の
演算命令(以下RR命令と称する)と、レジスタとメモ
リ間の演算命令(ツメ下RS命令と称する)とを備えて
おり、ttS命令のオはランドのうち、メモリに存在す
るオはランドを参照するためのメモリアドレスは、レジ
スタに格納されたベースアドレス、インデクス値と、命
令自体に含まれるディスプレイスメントとの和で指定さ
れる方式がひろく採られている。
い−2、rjs命令が、次の5つのステージ、すなわち
命令解読のだめの1〕ステージと、ベースアドレス、イ
ンデクス値のレジスタからの読み出しとアドレス計算の
処理のためのAステージと、レジスタやメモリからのオ
はランドの読み出しのためのBステージと、演算のため
のEステージと、結果の格納のためのWステージとによ
って処理されるものと仮定する。■LS命令が連続する
場合の命令処理の流れを、第1図(a)に示す。
RR命令は、オはランドがレジスタに存在するため、A
ステージの処理が不要である。このため、第1図(b)
に示すとおり、Aステージを除去することが可能である
が、第1図(σ)に示すように、RR命令の処理にダミ
ーとしてAステージを挿入した場合と比較して、 ■ RR命令(命令n−4−1)と先行するR8命令(
命令n)とが、同時にEステージの処理を必要とし、演
算器に対する競合が生じる、■ 命令ルから命令ル+2
までの実行時間を比較すると、RR命令のAステージを
除去しても、高速化は図れない、 などの問題がある。
また分岐が成功して分岐先がRYt命令の場合にも、R
R命令にダミーとしてAステーシラ挿入した場合(第1
図(C))と、Aステージを除去した場合(第1図(カ
)とを比較すると、上記■と同一の問題がある(第1図
(C)、 (=4は分岐先命令の解読が分岐命令のEス
テージで可能となる場合の例)。
このため一般には、[R命令にもAステージをダミーと
して挿入する方式が採られている。
(3)発明の目的 本発明は、これらの問題を解決するために、演算器を使
用する必要のないロード/ストア命令や分岐成功を検出
し、この直後に実行すべき命令がRR命令であれば、ア
ドレス修飾ステージをスキップするとともに、後続命令
をも同時に解読を開始することによって、RR命令の実
行時間を短縮することを特徴とし、その目的は、情報処
理装置の高速化を図ることにある。
(4)発明の構成および作用の説明 第2図は本発明の実施例であり、R8命令は、前述のと
おりDステージ、Aステージ、Bステージ、゛Eステー
ジ、Wステージの+1nt K処理されるものとする。
]は命令バッファ(以下IBRと称す)であり、メモリ
2から、次に実行すべき命令とそれに続く複数の命令が
読み出されて、補充されているものとする。
命令は、命令M読のためのIt’l制御回路3によって
解読され、解読結果および付随する制御情報は、ラッチ
群4に保持される。次に、アドレス計算のための制御回
路5は、ラッチli’p 4の内容に従って、レジスタ
6からベースアドレスやインデクス値を取り出して、ア
ドレス計算を行ない、その結果および付随する制御tt
V報を、ラツヂノ)R7に保持する。
オはランド取シ出しのための制御回路8は、ラッチ群7
の内容を参照して、レジスタ9(レジスタ6と同一実体
)やメモリ10(メモリ2と同一実体)からオRランド
を取り出し、付随する制御情報とともに、ラッチ群11
に保持する。
演算制御回路12は、ラッチ群11の内容に従って、演
算器13を用いて演算を行なう。Wステージに関連する
部分は省略しである。
R8命令の1つであるロード命令は、Bステージでメモ
+310から読み出したデータを、演算器13を介さず
にレジスタ14(レジスタ6.9と同一実体)K%Eス
テージあるいはWステージで格納し、またR8命令の1
つであるストア命令は、Bステージでレジスタ9から読
み出したデータを、演算器13を介さずに、メモIJ 
15 (メモリ2゜10と同一実体)に、Eステージあ
るいはWステージで格納する(従来技術にて可能である
)。
次に、第2図に従って、ロード/ストア命令とRR命令
が連続する場合の動作を説明する。ロード/ストア命令
がDステージで解読されると、その結果をラッチ群4に
保持し、Aステージの処理に移行するとともに、IBR
内の該ロッド/ストア命令に続く命令16を、制御回路
3によって解読開始する。
さらに、命令16をRR命令と見なした場合の次命令1
7、例えばRR命令が2バイト長であれば、命令16の
アドレス−1−2バイト目以降を、制御回路3と同じ機
能を持つ制御回路18で解読する。いま、制御回路3で
命令]46がRR命令でないことが検出されると直ちに
制御回路18の動作を中止し、制御回路3の出力をラッ
チ群4にセツトシて、以降、命令]6のA、  B、E
、Wステージを順次処理する。
命令17については、命令16がAステージに移行した
とき、再度I 13 R内の正しい位置、例えば命令1
6が4バイト長のR8命令であれば、命令16のアドレ
ス+4バイト目以降を切り出し、制御回路3により、D
ステージの処理が行なわれる。この様子を、第3図(a
)に示す。
制御回路3で、命令]、6がRR命令であることが検出
された場合には、制御回路3の出力は、ラッチfff 
7に送られ、命令16のAステージはスキップされ、B
ステージ以降の処理が行なわれる。
同時に、制御回路1Bの出力は有効とされ、ラッチ群4
にセットされ、命令17については、Aステージ以降の
処理が行なわれる。命令17も才たRR命令である場合
でも、ラッチ群7に命令16に関する情報がセットされ
るので、制御回路18の出力を、−Bラッチ群4にセッ
トしで、Aステージの処理をダミーとして挿入する。こ
の様子を第3図(h)に示す。
第3図(b)に示すように、ロード/ストア命令ルとR
R命令ル+1とのEステージが重なるが、命令ルは前述
のとおり演算器を使用しないので競合しない。またBス
テージ、Wステージの重なりについては、RR命令ル+
1がレジスタのみをアクセスするため、レジスタの多ポ
ート化などにより、6易に競合を避けることができる。
またロード/ストア命令のオはランド格納をEステージ
で行なえば、Wステージの重なりは問題にならない。
いま、命令ルがロード命令であり、命令ル+1が命令ル
でロードされるレジスタの内容をオはランドとして用い
る場合には、第2図に示すように、ロード命令のBステ
ージでメモリ10から読み出したデータを、データ線1
9によってレジスタに送るとともに、データ線20をパ
イ・ぞスとして用い、演算器13にデータを送ることに
よって、次のサイクルでRR命令のEステージの処理が
可能となる。
分岐が成功した場合には、分岐先命令と、分岐先命令ア
ドレスにRR命令長を加えたアドレス以降を命令と見な
して、同時に両者の解読を開始して、以下同様の処理を
行なう。この様子を第3図(C)に示す。
(5)効果の説明 以上説明したように、ロード命令あるいはストア命令に
続いてRR命令が出現する場合(第3図(b))、RR
命令の実行時間を見かけ上零にすることが可能であり、
従来方式(第1図(α)、(A))に比べて高速化が図
れる。才た分岐成功時に、分岐先がRR命令である場合
(第3図(C))には、従来方式(第1図(C)、(→
)に比べて]、マシンサイクルの高速化が図れる。ロー
ド/ストア命令の直後や分岐成功時の分岐先にRR命令
が出現する頻度は、一般に高いことから、情報処理装置
の処理能力向上に有効である。
【図面の簡単な説明】
第1図(a)乃至(勾は従来技術による命令の・々イブ
ライン内における流れの例を示す説明図、第2図は本発
明の実施例を示すブロック図、第3図(α)乃至(C)
は第2図の実施例における命令のパイプライン内での流
れの例を示す説明図である。 図において、lは命令バッファレジスタ(IBR)、2
.10.15はメモリ、6,9.14はレジスタ、4.
  ’7. 11はラッチ11竿、3,18はDステー
ジ制御回路、5はAステージ制御回路、8はBステージ
制御回路、12はEステージ制御回路、13は演算器、
をそれぞれ示す。 ip!j許出願人出願人本電信電話公社代理人弁理士 
  森  1)     寛第 1 図 第 2121 第 3 図

Claims (1)

    【特許請求の範囲】
  1. レジスタとレジスタ間の演算命令と、レジスタとメモリ
    間の演算命令を命令セットの一部として有し、またメモ
    リアドレスとしてレジスタに格納されたベース値、イン
    デクス値などを用いて修飾したアドレスを使用する情報
    処理装置において、レジスタとメモリ間で情報の加工あ
    るいは内容のチェックを伴なわずに転送を行なうロード
    命令あるいはストア命令の出現と分岐の成功とを検出す
    る第1の手段と、第1の手段でロード命令やストア命令
    の出現や分岐の成功が検出されたとき、命令バッファに
    読み出されている次に実行すべき第1の命令と、命令バ
    ッファ上の第1の命令アドレスにレジスタとレジスタ間
    の演算命令の命令長音訓えたアドレス以降の部分を第2
    の命令と見なし、同時に2つの命令の解読を開始する第
    2の手段と、第1の命令がレジスタとレジスタ間の演算
    命令であることが解読された場合には、第1の命令のア
    ドレス修飾の処理ステージをスキップして、第1の命令
    の解読結果をオはランド読み出し処理ステージが参照す
    るラッチ11ηに送り、オはランド取り出し以降の処理
    を行なうとともに、第2の命令の解読結果を有効として
    、第2の命令のアドレス修飾以降の処理を行なう第3の
    手段と、第1の命令がレジスタとレジスタ間の演算命令
    でない場合には第2の命令の解読結果を無効にし、第1
    の命令の解読終了後第]−の命令の次に実行すべき命令
    の解読を行なう第4の手段と、第1の手段でロード命令
    が検出され、これに続く第1の命令が、レジスタとレジ
    スタ間の演算命令でありかつ先行するロード命令でロー
    ドされるレジスタをオはランド取り出しレジスタとして
    指定している場合には、メモリから読み出した情報をレ
    ジスタにロードすると同時に演算器に送り、第]の命令
    の演算を行なう第5の手段とを有し、ロード/ストア命
    令あるいは分岐成功の直後に現われるレジスタとレジメ
    タ間の演算命令の実行時間を短縮することを特徴とする
    情報処理装置のパイプライン制御方式。
JP56188888A 1981-11-25 1981-11-25 情報処理装置のパイプライン制御方式 Pending JPS5890247A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP56188888A JPS5890247A (ja) 1981-11-25 1981-11-25 情報処理装置のパイプライン制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP56188888A JPS5890247A (ja) 1981-11-25 1981-11-25 情報処理装置のパイプライン制御方式

Publications (1)

Publication Number Publication Date
JPS5890247A true JPS5890247A (ja) 1983-05-28

Family

ID=16231633

Family Applications (1)

Application Number Title Priority Date Filing Date
JP56188888A Pending JPS5890247A (ja) 1981-11-25 1981-11-25 情報処理装置のパイプライン制御方式

Country Status (1)

Country Link
JP (1) JPS5890247A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62115542A (ja) * 1985-11-15 1987-05-27 Hitachi Ltd 情報処理装置
JPS62262141A (ja) * 1986-05-09 1987-11-14 Hitachi Ltd データ処理装置
EP0272705A2 (en) * 1986-12-29 1988-06-29 Matsushita Electric Industrial Co., Ltd. Loosely coupled pipeline processor
JPS6453235A (en) * 1988-05-25 1989-03-01 Nec Corp Risc type microprocessor
JP2010538398A (ja) * 2007-09-06 2010-12-09 クゥアルコム・インコーポレイテッド マルチステージデータ処理パイプラインにおける命令実行システム及び方法
JP2012150589A (ja) * 2011-01-18 2012-08-09 Toshiba Corp 演算装置

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62115542A (ja) * 1985-11-15 1987-05-27 Hitachi Ltd 情報処理装置
JPS62262141A (ja) * 1986-05-09 1987-11-14 Hitachi Ltd データ処理装置
JPH0827720B2 (ja) * 1986-05-09 1996-03-21 株式会社日立製作所 データ処理装置
EP0272705A2 (en) * 1986-12-29 1988-06-29 Matsushita Electric Industrial Co., Ltd. Loosely coupled pipeline processor
JPS63167935A (ja) * 1986-12-29 1988-07-12 Matsushita Electric Ind Co Ltd 可変パイプラインプロセツサ
JPS6453235A (en) * 1988-05-25 1989-03-01 Nec Corp Risc type microprocessor
JP2010538398A (ja) * 2007-09-06 2010-12-09 クゥアルコム・インコーポレイテッド マルチステージデータ処理パイプラインにおける命令実行システム及び方法
US8868888B2 (en) 2007-09-06 2014-10-21 Qualcomm Incorporated System and method of executing instructions in a multi-stage data processing pipeline
JP2012150589A (ja) * 2011-01-18 2012-08-09 Toshiba Corp 演算装置

Similar Documents

Publication Publication Date Title
US5043868A (en) System for by-pass control in pipeline operation of computer
JPS6028015B2 (ja) 情報処理装置
US4631672A (en) Arithmetic control apparatus for a pipeline processing system
US4677549A (en) Pipelined data processor system having increased processing speed
JPS5890247A (ja) 情報処理装置のパイプライン制御方式
JP2798121B2 (ja) データ処理装置
US5819081A (en) Method of executing a branch instruction of jumping to a subroutine in a pipeline control system
JPS6116335A (ja) 情報処理装置
JPS5890244A (ja) デ−タ処理装置
JP2503984B2 (ja) 情報処理装置
JPS6120893B2 (ja)
JP2814683B2 (ja) 命令処理装置
JPS6236258B2 (ja)
JPS61288230A (ja) パイプライン制御方式
JP3033597B2 (ja) プライオリティーエンコーダ及びこれを用いた半導体集積回路
JPH0248733A (ja) 情報処理装置
JPS61143850A (ja) 処理装置
JPH0192862A (ja) データ処理装置
JPS63173142A (ja) 終了ト−クン出力回路
JPH0646411B2 (ja) 終了ト−クン出力回路
JPH0419575B2 (ja)
JPH02206836A (ja) データ処理装置
JPS63163634A (ja) 命令フエツチ方式
JPS62166463A (ja) デ−タ転送方式
JPH0792902A (ja) プログラマブルコントローラ