JPH01134530A - パイプライン制御装置 - Google Patents

パイプライン制御装置

Info

Publication number
JPH01134530A
JPH01134530A JP29181387A JP29181387A JPH01134530A JP H01134530 A JPH01134530 A JP H01134530A JP 29181387 A JP29181387 A JP 29181387A JP 29181387 A JP29181387 A JP 29181387A JP H01134530 A JPH01134530 A JP H01134530A
Authority
JP
Japan
Prior art keywords
instruction
arithmetic
cycle
stage
processing
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.)
Granted
Application number
JP29181387A
Other languages
English (en)
Other versions
JPH0766325B2 (ja
Inventor
Fumio Matsunoshita
松野下 文郎
Yoshihiro Mizushima
水島 芳宏
Koichi Ueda
上田 孝一
Satoshi Sugiura
聡 杉浦
Tetsuya Hagiwara
哲也 萩原
Masato Tanaka
正人 田中
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP29181387A priority Critical patent/JPH0766325B2/ja
Publication of JPH01134530A publication Critical patent/JPH01134530A/ja
Publication of JPH0766325B2 publication Critical patent/JPH0766325B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔概   要〕 電子計算機システムの処理高速化の手段として用いられ
るパイプライン処理制御装置に?JL、本来演算を必要
としないロード系の命令中に、■サイクルとして、他の
命令処理フローの演算ステーツのVサイクル以外のサイ
クルと同時に実行可能な特定演算サイクルを強制的に設
けることにより一層の高速処理を実現することを目的と
し、処理すべき命令が演算命令であるときに制御データ
を記1,9する第1の記憶手段と、前記処理すべき命令
が演算を必要としない命令であるときに制御データを記
憶する第2の記憶手段と、演算を実行する演算部と、前
記演算命令実行時に前記第1の記憶手段からの出力によ
り、前記特定演算サイクル(V)を演算部に実行させ、
また前記演算不要の命令実行時に前記第2の記憶手段か
らの出力により、前記の■サイクルを強制的に発生させ
るパイプライン制御部を有するように構成する。
〔産業上の利用分野〕
本発明は電子計算機システムにおける処理高速、化の手
段出して用いられるパイプライン処理制御装置に係り、
特に本来演算を必要としないロード系の命令中に、■サ
イクルとして、他の命令処理フローの演算ステージの■
サイクル以外のサイクルと同時に実行可能な演算サイク
ルを強制的に設けることにより処理の一層の高速化を可
能とするパイプライン処理制御方式に関する。
〔従来の技術〕
電子計算機の処理を高速化する目的でパイプライン処理
が広く用いられている。これは与えられた命令の実行手
順を、例えば命令解読、アドレス計算、オペランド取出
し、演算、結果の格納といった各段階(ステージ)の動
作に分割し、各ステージを実行するハードウェア機構を
用意し、各ステージの実行部はステージ動作の終了後そ
の結果を次のステージ実行部に渡すとともに、次の命令
に対する同一ステージを実行するものである。ある時点
をみると見かけ上腹数の命令が同時、かつ並列に処理さ
れ、全体の処理速度が向上する。
一方、計算機のマシンサイクルは機種により決定され、
上述の命令解読、アドレス計算等の各ステージがすべて
1マシンサイクルで実行されるか否かはパイプライン処
理の速度に大きな影響がある。すべてのステージが1サ
イクルで終了する場合にはパイプラインの乱れもなく、
最短時間で処理を行なうことができるが、実際には2マ
シンサイクル以上の時間を要するステージも少な(ない
その典型的な例が演算命令中の演算実行ステージである
。演算実行には、その内容によって数サイクルを必要と
することもある。
演算命令の実行時にパイプラインの乱れをなくし、高速
化をはかる手段として、演算ステージを構成する複数サ
イクルのうちの特定サイクルを、他の命令の演算ステー
ジにおけるこの特定サイクル以外のサイクルと同時に実
行可能とする方法がある。この同時に実行可能な演算サ
イクルは必要に応じてマイクロコードによって設けられ
るものでバニッシュサイクルと呼ばれ、以下Vサイクル
と称する。
上述のように演算ステージを分割し、同時に実行可能な
演算サイクル、すなわち■サイクルを設けた場合の処理
高速化を第5図を例にとって説明する。同図ta>は■
サイクルを設けない場合、(b)は設けた場合を示す。
各ステージを表す記号り、A。
T、B、IF、、WはそれぞれDは命令解読(デコード
)、八はデータ読出し等の場合のアドレス計算、Tはデ
ータがバッファ記憶にあるか否かのチエ、7りと論理ア
ドレスから実アドレスへの変換(トランスレーション)
、Bはバッファデータのリード、Eは実行(エグゼキュ
ーション)、Wは結果をレジスタ等に格納するライトの
ステージである。
第5図(a)で命令■と■は同種の演算命令でその最短
処理時間は等しいものとする。ただし演算ステージは2
サイクルにわたっており、命令Iはり。
A、T、B、E、E、Wの7サイクルで処理される。命
令・■は命令lより1サイクルだけ遅れてその処理が開
始され、D、A、T、B、の順にステージ動作が進行し
た後、本来は次のEステージに直ちに移行するはずであ
るが、命令IのEステージが続いているためにEステー
ジに移行できず、Bステージを再度繰り返して待機する
必要がある。
その結果、命令Hの処理には8サイクルを要し、処理が
遅れる。
これに対して第5図(blでは演算ステージ2サイクル
をEと■の各サイクルに分割し、■サイクルを同時に実
行可能な演算サイクルとするために、命令Iの■サイク
ルのところで命令■の演算ステ−ジを実行開始すること
ができ、Bステージでの待機が不要となり、命令■も7
サイクルで終了する。
〔発明が解決しようとする問題点〕
上述のように演算命令中に同時に実行可能な演算サイク
ル、すなわちVサイクルを設けることにより、演算命令
が連続する場合には処理の高速化に有効である。しかし
ながら演算の途中でレジスタを用いる場合にはレジスタ
へのデータセント等のためにロード系の命令を使うこと
が必要となる。
このロード系命令は一般に1サイクルで処理され、しか
も演算ステージを必要としないため、前述の■サイクル
を発生できず、その結果バイブラインの乱れを生じ、高
速化を妨げる原因になるという問題がある。その例を第
6図により説明する。
第6図で演算命令Iで演算ステージはEとVの2サイク
ルにわたっている。次のロード命令では、D、A、T、
Bまでの各ステージの処理に問題はない。その後の実行
ステージ、すなわちロード実行ステージEは命令IのV
サイクルが実行されている区間で実行可能ではあるが、
その次のWステージの区間が演算命令■のWステージと
重なってしまう。そこでBステージで待機して、D、A
T、[3,B、  E、Wの順でロード命令は処理され
る。ここで、DSA、TSBSE、E、WのようにEで
待機することはできない。その理由はE9EとE動作を
続ける場合には演算ユニットからの処理終了信号により
E動作を終了することになっており、ロード系命令では
演算ユニットが起動されず、処理終了信号も発生せず、
E動作終了時点が指示されないためである。
ロード命令でのBステージの繰返は以後の演算命令処理
を遅らせる原因となる。すなわち、次の演算命令■では
り、A、Tの各ステージをそれぞれ1サイクルで処理し
た後、直ちにBステージに移行できずにTステージで待
機する必要があり、また演算命令■の処理ではAステー
ジでの待機が必要となる。
本発明は、上述の問題点に鑑み、ロード系命令中に強制
的に同時に実行可能な演算サイクル、すなわち■サイク
ルを設けることにより一層の処理高速化を実現するパイ
プライン処理制御装置を提供することを目的とする。
〔問題点を解決するための手段〕 本発明の原理ブロック図を第1図に示す。同図で第1の
記憶手段1は処理すべき命令が演算命令であるときに制
御記憶中の制御データを記憶し、第2の記憶手段2は命
令が演算を必要としないもの、例えばロード命令である
ときに制御データを記憶するためのものである。パイプ
ライン制御部4は命令が演算命令であるときには第1の
記憶子121からの出力により演算部3に同時に実行可
能な演算サイクル、すなわちVサイクルを実行させ、命
令が演算不要のものであるときには演算部3をデータス
ルーの状態に保ったままで■サイクルを1サイクルだけ
強制的に発生させるためのものである。
〔作   用〕
第1図で処理すべき命令が演算命令である場合には、例
えば計算機の制御記憶(コントロールストレージ(C3
))に格納されているマイクロコードの制御データが第
1の記憶手段、例えばデータレジスタ(A)1に格納さ
れる。これに対して、命令がロード系のものであれば制
御データは第2の記憶手段、例えばデータレジスタ(B
)2に格納される。二つのレジスタの選択は、例えばマ
イクロコードのある特定ビットが1°であるときにレジ
スタ(A)、別の特定ビットが°1゛であるときにレジ
スタ(B)とする方式で行なわれる。
演算命令に対しては、第1の記憶手段1、例えばデータ
レジスタ(A)からのVサイクル信号により、バイブラ
イン制御部4は演算部3に起動信号を出力し、演算部を
起動させる。演算が終了すると演算部3はパイプライン
制御部4に処理終了信号を出力し、■サイクル動作が終
わる。
これに対して、命令がロード系のものであるときには、
第2の記憶手段2、例えばデータレジスタ(B)からの
Vサイクル強制信号によって、パイプライン制御部4は
演算部3にデータスルー信号を出力する。このとき演算
部3は■サイクル用には起動されず、図示しないレジス
タへのデータ入出力等のためにデータスルーの状態に保
たれる。
パイプライン制御部4は■サイクルを強制的に発生させ
、それを1サイクルのみで終了させる。
以上のように本発明ではパイプラインの乱れを防ぐこと
を目的として演算を必要としない命令中に、同時に実行
可能な演算サイクル、すなわち■サイクルを強制的に発
生させる。
〔実  施  例〕
第2図に本発明のパイプライン処理制御装置の実施例全
体ブロック図を示す。同図でデータレジスタ(A)1は
処理すべき命令が演算命令であるときに、またデータレ
ジスタ(B)2は演算不要の命令であるときに制御記憶
中の制御データを記憶するものである。演算部(Eユニ
ット)3は複数のマシンサイクルから成る演算ステージ
の一部であり、他の部分と同時に実行可能な演算サイク
ル、すなわち■サイクル演算を実行できるものである。
パイプライン制御部4は命令のパイプライン処理を制御
する。制御記憶(CS)5は制御用の複数のマイクロコ
ードを格納しているもので、各マイクロコードの格納ア
ドレスは制御記憶5に与えられる命令のオペレーション
コード(OP−CODE)と一対一に対応して指定され
る。レジスタ群6は、演算の途中で演算結果を演算部3
から受は取って一時記憶するためのものであり、バッフ
ァ制御部(Sユニット)7は演算結果を外部メモリ8に
格納したり、外部メモリ8からデータを取り込むために
バッファの制御を行なう。
本発明では、演算を必要としない命令のパイプライン処
理のフロー中に、制御データにより同時に実行可能な演
算サイクル、すなわち■サイクルを強制的に1サイクル
だけ発生させる方式をとるので、制御記憶の形式を概念
的に第3図に示す。
同図でオペレーションコードに対応して、制御記憶5内
のマイクロコードの格納アドレスが指定され、そのアド
レスにあるマイクロコード、同図ではマイクロコード■
が読み出される。マイクロコード■は例えば10ビツト
で構成され、そのうちの特定の1ビツト、A欄は、命令
が演算命令であり、データレジスタ(A)1に制御デー
タを記憶するときに“1′をたてるビット、また別の特
定の1ビツト、B憫は1.演算不要の命令であり、デー
タレジスタ(B)2に制御データを記憶するときに“1
゛をたてるビットである。他の8ビツトには、バッファ
制御部(Sユニット)7、演算部(Eユニット)3等を
制御するための制御データが格納されている。これらの
データは二つのデータレジスタ1.2のいずれかに記憶
された後に、各部の制御用信号として出力される。
第2図と第3図を用いて本発明の実施例の動作について
説明する。第2図で命令のオペレーションコードが与え
られ、制御記憶(CS)5のアドレスが指定され、その
アドレスにあるマイクロコードが読み出される。そのコ
ードを第3図でマイクロコード■とする。マイクロコー
ド■のある特定ビット、A欄に“1°がたっていると演
算命令であるので、制御データがデータレジスタ(A)
1にセントされる。データレジスタ(A)1からパイプ
ライン制御部4に対して演算ステージの■サイクルであ
ることが■サイクル信号として通知され、パイプライン
制御部4は演算部3に対して起動信号を出す。演算部3
はその起動信号を受は取ると、演算データをレジスタ群
6、又はバッファ制御部7から取り出し、演算を行なっ
てその結果をレジスタ群6、又はバッファ制御部7に戻
すと同時に、パイプライン制御部4に対して処理終了信
号を出力する。
第3図のマイクロコードの別の特定ビット、B掴に“1
゛がたっている場合には、例えばロード系の命令であり
、制御データはデータレジスタ(B)2にセントされる
。データレジスタ(B)2からパイプライン制御部4に
対して■サイクルを強制的に発生させることを指示する
信号が送られ、パイプライン制御部4は演算部3に対し
て起動信号は出さずにVサイクルを発生させ、1サイク
ルのみでそれを終了させる。すなわち、ロード系命令で
あれば、パイプライン制御部4は演算部3にデータスル
ー信号を出力し、演算部3は、例えばバッファ制御部7
からのデータをそのままレジスタ群6に送るデータスル
ー動作を行なう。演算部3は処理終了信号を出力せず、
■サイクル終了はパイプライン制御部4により制御され
る。
以上に詳しく説明したように、演算を必要としない命令
、例えばロード命令中に強制的にVサイクルを発生させ
た場合のパイプライン処理の例を第4図に示す。同図で
演算命令Iより1サイクルだけ遅れてロード命令の処理
が開始されるが、そのロッド実行ステージ、すなわちE
ステージの直後に同時に実行可能な演算サイクルである
Vサイクルが強制的に設けられている。これにより、次
の演算命令■では、第6図のようにロード命令中にVサ
イクルを設けない場合と比較してTステージでの待機が
不要となり、その実行は7サイクルで終了し、第6図の
場合より1サイクル、処理が速くなる。また、同様に演
算命令■も7サイクルで実行され、処理が1サイクル速
くなる。
この実施例では第3図の制御記憶5内のマイクロコード
中の特定ビットが“1゛である場合に強制的にVサイク
ルを発生させる方式としたが、命令のオペレーションコ
ードを見て、ハード的に■サイクル強制発生を行なうこ
ともできることはもちろんである。
〔発明の効果〕
命令をパイプライン方式で処理する計算機システムにお
いて、連続する演算命令の間にロード命令等の演算不要
の命令が介在する場合、その処理フロー中に同時に実行
可能な演算サイクルを強制的に発生させることにより、
パイプラインの乱れをなくし、高速化が実現される。
【図面の簡単な説明】
第1図は本発明のパイプライン処理制御装置の原理ブロ
ック図、 第2図は本発明の実施例の全体ブロック図、第3図は■
サイクル発生のための制御記憶の概念図、 第4図はロード命令中に■サイクルを発生させたときの
パイプライン処理説明図、 第5図(a)、 (blは演算命令中にのみ■サイクル
を設ける従来例におけるパイプライン処理説明図、第6
図は連続する演算命令の間にロード命令がある場合の処
理遅れの説明図である。 1・・・データレジスタ(A)、 2・・・データレジスタ(B)、 3・・・演算部(Eユニット)、    ・4・・・パ
イプライン制御部、 5・・・制御記憶(CS)、 6・・・レジスタ群、 7・・・バッファ制御部(Sユニット)、8・・・外部
メモリ。 オ(4む9目の)ぐす渥イフ・] ]4Σイオζフ07
7図第2図

Claims (1)

  1. 【特許請求の範囲】 1)演算命令処理時に、複数のマシンサイクルから成る
    演算実行ステージ中のある特定演算サイクル(V)を、
    他の演算命令の演算実行ステージ中で該特定演算サイク
    ル(V)に相当するサイクル(V)以外のサイクル(E
    )と同時に実行することのできるパイプライン方式の計
    算機において、処理すべき命令が演算命令であるときに
    制御データを記憶する第1の記憶手段(1)と、前記処
    理すべき命令が演算不要の命令であるときに制御データ
    を記憶する第2の記憶手段(2)と、演算を実行する演
    算部(3)と、前記演算命令実行時に前記第1の記憶手
    段(1)からの出力により該演算命令実行ステージのう
    ちの前記特定演算サイクル(V)を前記演算部(3)に
    実行させ、また前記演算不要の命令実行時に前記第2の
    記憶手段(2)からの出力により前記特定演算サイクル
    (V)に相当する特定演算サイクル(V)を強制的に発
    生させるパイプライン制御部(4)を有することを特徴
    とするパイプライン制御装置。 2)前記演算不要の命令はロード命令であることを特徴
    とする特許請求の範囲第1項記載のパイプライン制御装
    置。 3)前記演算命令の演算実行ステージは2サイクルであ
    ることを特徴とする特許請求の範囲第1項記載のパイプ
    ライン制御装置。 4)前記演算不要の命令の命令実行ステージは1サイク
    ルであることを特徴とする特許請求の範囲第3項記載の
    パイプライン制御装置。
JP29181387A 1987-11-20 1987-11-20 パイプライン制御装置 Expired - Fee Related JPH0766325B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP29181387A JPH0766325B2 (ja) 1987-11-20 1987-11-20 パイプライン制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP29181387A JPH0766325B2 (ja) 1987-11-20 1987-11-20 パイプライン制御装置

Publications (2)

Publication Number Publication Date
JPH01134530A true JPH01134530A (ja) 1989-05-26
JPH0766325B2 JPH0766325B2 (ja) 1995-07-19

Family

ID=17773748

Family Applications (1)

Application Number Title Priority Date Filing Date
JP29181387A Expired - Fee Related JPH0766325B2 (ja) 1987-11-20 1987-11-20 パイプライン制御装置

Country Status (1)

Country Link
JP (1) JPH0766325B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5548736A (en) * 1991-03-14 1996-08-20 Fujitsu Limited Method and apparatus overcoming delay introduced by instruction interlocking in pipelined instruction execution

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5548736A (en) * 1991-03-14 1996-08-20 Fujitsu Limited Method and apparatus overcoming delay introduced by instruction interlocking in pipelined instruction execution

Also Published As

Publication number Publication date
JPH0766325B2 (ja) 1995-07-19

Similar Documents

Publication Publication Date Title
JPH0248931B2 (ja)
JP3237858B2 (ja) 演算装置
JPS623461B2 (ja)
JPS5911921B2 (ja) 数値制御装置
RU2066067C1 (ru) Центральный процессор для многопроцессорной вычислительной системы
JPH01134530A (ja) パイプライン制御装置
JPH0512751B2 (ja)
JPH0830971B2 (ja) プログラマブルコントローラ
JP2812610B2 (ja) パイプライン制御方式
JP2558831B2 (ja) パイプライン制御方式
JP2545594B2 (ja) オペランドデータ先取り方式
JP2895892B2 (ja) データ処理装置
JPS6116114B2 (ja)
JPH0546389A (ja) 並列処理装置
JPS5925264B2 (ja) ベクトル命令処理方式
JPH02230326A (ja) パイプライン情報処理装置
JPH0338613B2 (ja)
JPH05250156A (ja) Riscプロセッサ
JPS6391739A (ja) 可変長命令解読装置
JPH031234A (ja) 情報処理装置
JPS6028014B2 (ja) マイクロプロセツサ
JPS5947649A (ja) デ−タ処理装置
JPH0412491B2 (ja)
JPH0243626A (ja) コンピュータ・プロセッサの実行速度を制御する装置
JPH0553804A (ja) 並列処理装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees