JPS59158441A - パイプライン制御方式 - Google Patents

パイプライン制御方式

Info

Publication number
JPS59158441A
JPS59158441A JP3328283A JP3328283A JPS59158441A JP S59158441 A JPS59158441 A JP S59158441A JP 3328283 A JP3328283 A JP 3328283A JP 3328283 A JP3328283 A JP 3328283A JP S59158441 A JPS59158441 A JP S59158441A
Authority
JP
Japan
Prior art keywords
register
instruction
control information
comparator
address
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
JP3328283A
Other languages
English (en)
Inventor
Masahiko Yamageri
山毛利 雅彦
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.)
NEC Corp
Original Assignee
NEC Corp
Nippon Electric Co 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 NEC Corp, Nippon Electric Co Ltd filed Critical NEC Corp
Priority to JP3328283A priority Critical patent/JPS59158441A/ja
Publication of JPS59158441A publication Critical patent/JPS59158441A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は、情報処理装置のパイプライン制御方式に関す
る。
(従来技術) 一般にパイプライン制御方式を採用した情報処理装置で
は、命令は複数のパイプラインステージにより分割して
処理されていた。
例えば、命令の取出し、命令の解読、オペランドアドレ
スの計算、オペランドの取出し、演算の実行、結果の格
納などに分割されてきた。
したがって、このような場合には複数の命令を並行に処
理することができるとは云え、先行する命令により記憶
されていたデータが後続する命令のオペランドであった
場合には不具合が生じると云う欠点があった。
牙1図は、このような場合のタイムチャートの一例であ
る。
第1図において、記憶されるべきデータが記憶装置上に
おいて確定されるのはサイクル5で行われ、ADD命令
によるオペランドの取出しはサイクル3で行われている
したがって、ADD命令の処理を一時中断して記憶され
るべきデータを記憶装置に格納した後、オペランドの取
出しを実行しなおさなければならない。 これはパイプ
ラインの乱れと々って性能低下を招くので、このようが
場合には高速な情報処理装置を使用し、オペランドを記
憶装置から取出さずに演算ユニットの内部にある記憶デ
ータをオペランドとして使用していた。
第2図はそのような場合の情報処理装置の一構成例を示
す図である。 第2図において、1.2は第1および第
2のデータ演算レジスタ、3はデータ演算器、4は結果
レジスタ、5はデータ選択器である。 演算器3の出力
、もしくは結果レジスタ4の出力をデータ選択器5に加
えて選択することにより、先行する命令の演算結果を後
続する命令のオペランドとすることができる。
いっぽう、高速の情報処理装置では、演算の高速化のた
めに複数の演算器を設けることがある。
例えば、固定小数点加算器、浮動小数点加算器、乗算器
などを備えることがあるわけである。
このような場合、上記のように演算ユニットの内部のデ
ータをオペランドとして使用しようとすると、ある演算
器の出力を他の演算器の演算レジスタに接続された入力
データ選択器のひとつの入力端子に接続しなければなら
ない。
しかし、この機能を実現しようとすると金物量が増大し
、それに伴って遅延時間が増大して、結果的にはクロッ
クサイクルが長くなす、性能が低下するという欠点があ
った。
(発明の目的) 本発明の目的は、アドレス登録レジスタの内容トオペラ
ンドアドレスレジスタの内容とが一致し、制御情報登録
レジスタの内容と制御情報レジスタの内容とが一致しな
い場合には演算の開始を抑止し、これによりデータが有
効化されていないタイミングを検出して命令の開始を遅
らせ、パイプラインの不具合を検出することができるよ
うに構成したパイプライン制御方式を提供することにあ
る。
(発明の構成) 本発明によるパイプライン制御方式は少なくトモオペラ
ンドアドレスレジスタと、アドレス登録レジスタと、制
御情報レジスタと、制御情報登録レジスタと、牙1およ
び第2の比較器とを具備した構成により実現するもので
ある。
オペランドアドレスレジスタはオペランドアドレスを生
成して格納するためのものであシ、アドレス登録レジス
タはオペランドアドレスを登録するためのものである。
また、制御情報レジスタはパイプラインの制御情報を生
成して格納するだめのものであシ、制御情報登録レジス
タはパイプラインの制御情報を登録するだめのものであ
る。
第1の比較器は、先行する命令に対する制御情報登録レ
ジスタの内容と、後続する命令に対してパイプラインの
制御情報を生成して格納するだめの制御情報レジスタの
内容とを比較するためのものである。
第2の比較器は、先行する命令に対するアドレス登録レ
ジスタの内容と、後続する命令に対するオペランドアド
レスレジスタの内容とを比較するだめのものである。
本発明によるパイプライン制御方式においては、牙1の
比較器の出力が不一致を検出し、牙2の比較器の出力が
一致を検出している場合には、後続する命令の演算実行
の開始を抑止するように動作する。
(実施例) 次に、本発明の実施例について図面を参照して詳細に説
明する。
第3図は、本発明によるパイプライン制御方式を採用し
た情報処理装置の一実施例の概略図である。
第3図において、100は先行制御ユニット、102 
ijl演算ユニット、104は記憶制御ユニット、10
6は記憶装置である。
第4図は牙3図に示した先行制御ユニット100の詳細
なブロック図である。
牙4図において10は命令レジスタ、11はインデック
スレジスタファイルである。 インデックスレジスタフ
ァイル11は信号線26により命令レジスタ10に接続
されている。 13は命令解読器であり、命令レジスタ
10に対して信号線25により接続きれている。 命令
解読器13は命令レジスタ10の内容を解読し、制御情
報レジスタ15に対して信号線29によって接続されて
いる。
14は加算器であり、命令レジスタ10のアドレス部と
インデックスレジスタファイル11とに対してそれぞれ
信号線27.28を通じて接続されている。 加算器1
4の出力はオペランドアドレスを示し、これは了ドレス
レジスタ16に信号線30により接続されている。
これと同時に、記憶制御ユニット104に対して加算器
14の出力は送出されている。1814ストア命令のス
トアアドレスを登録するためのアドレス登録レジスタで
あり、アドレスレジスタ16に信号線(により接続され
ている。
17はアドレス登録レジスタ18の内容に対応してスト
ア命令のパイプライン制御情報を登録するだめの制御情
報レジスタであり、制御情報レジスタ15に対して信号
線31により接続されている。
19は牙1の比較器であり、入力は信号線31により制
御情報レジスタ15に接続され、信号線33により制御
情報登録レジスタ17に接続されている。
20は第2の比較器であり、入力は信号線32によりア
ドレスレジスタ16に接続されるとともに、信号線34
によりアドレス登録レジスタ18に接続されている、 第5図は、第3図に示す演算ユニット102のさらに詳
細なブロック図である。
第5図において40は汎用レジスタファイルであし、演
算に使用される。
41.42.43.44はそれぞれ牙1〜第4の演算デ
ータ選択器であり、演算に使用するデータを選択するも
のである。
45.46.47.48はそれぞれ第1〜第4の演算レ
ジスタであり、入力は信号線61.62.63.64に
よって対応する第1〜第4のデータ選択器41.42.
43.44に接続されている。 49は第1の演算器で
あり、入力はそれぞれ信号線65.66により対応する
第1および第2の演算レジスタ45146から加えられ
ている。
出力は信号線69により第1の結果レジスタ51、なら
びに第1および第2のデータ選択器41.42のひとつ
の入力へ接続されている。
50は第2の演算器であり、入力はそれぞれ信号線63
.64により対応する第3および第4の演算レジスタ4
7.48から加えられている。 出力は信号線70によ
り第2の結果レジスタ52、ならびに第3および第4の
データ選択器43.44のひとつの入力へ接続されてい
る。
53は第5のデータ選択器であり、信号線71.72に
よシ第1および牙2の結果レジスタ51.52にそれぞ
れ接続されている。
その出力は信号線80により汎用レジスタファイル40
と、第1〜第4のデータ選択器41.42.43.44
のひとつの入力へ接続されるとともに、信号線202に
よ)先行制御ユニツ) 100に接続され、信号線20
8により記憶制御ユニット104へ接続されている。
牙1および第3のデータ選択器41.43のひとつの入
力端子は信号線60により汎用レジスタファイル40に
接続されている。 また、牙2および第4のデータ選択
器42.44のひとつの入力端子は信号線206により
記憶制御ユニット104へ接続されている。
54はインバータであり、信号線200により先行制御
ユニット100に接続されている。
インバータ54は出力されてくる制御信号の論理を反転
させ、第1および第2のANDゲート55.56に対し
て信号線72により接続されている。
次に、第4図と第5図とを使用して本発明によるバイブ
ライン制御方式を採用した情報処理装置の動作を詳細に
説明する。
命令が記憶装置から取出され、命令レジスタ10にセッ
トされると処理が開始される。
命令レジスタ10の内容は命令解読器13により解読さ
れ1パイプライン制御情報が制御情報レジスタ15にセ
ットされる。
そこで、加算器14によりオペランドアドレスが生成さ
れ、オペランドアドレスはアドレスレジスタ16にセッ
トされると同時に、記憶制御ユニット104に送出され
る。 ここで、パイプライン制御情報は上記命令を演算
ユニット102において演算するにあたって、牙1およ
び第2の演算器49.50のうちのどちらの演算器を使
用するのかを識別する情報である。
ここでは、第1の演算器49により実行されるストア命
令と、そのストア命令のストアデータをオペランドとし
、乏・2の演算器50を使用して実行される演算命令と
を、連続して実行する場合を想定する。
オ6図は、本発明によるパイプライン制御方式の動作を
説明するタイムチャートであシ、各クロックサイクルに
おける各レジスタの内容を表現するものである。
次に、)・4図〜才6図を使用して動作を詳細に説明す
る。
サイクル1で命令レジスタ10にストア命令がセットさ
れると、命令解読器13により解読され、パイプライン
制御情報が出力される。
これと同時に、オペランドアドレス(ストアアドレス)
が加算器14により計算される。
サイクル2でストア命令のオペランドアドレスがアドレ
スレジスタ16にセットされ、パイプライン制御情報が
制御情報レジスタbにセットされる。 ことでは、スト
ア命令のパイプライン制御情報の値はOであり、この値
は第1の演算器49を使用して演算していることを示す
ものである。
同時に、命令レジスタ10には次に処理する演算命令が
セットされ、命令解読器13にょシ解読される。 そこ
で、加算器14ではオペランドアドレスが計算される。
サイクル3においては、演算命令のオペランドアドレス
がアドレスレジスタ16にセットされ、パイプライン制
御情報が制御情報レジスタ15にセットされる。 ここ
では、演算命令のパイプライン制御情報の値は1であり
、この値は第2の演算器50を使用して演算することを
示すものである。 この場合、ストア命令のオペランド
アドレスがアドレス登録レジスタ18にセットされ、同
様にストア命令のパイプライン制御情報が制御情報登録
レジスタ17にセットされる。
また、牙1の演算レジスタ45がセットされ、ストア命
令の演算が第1の演算器49により実行される。
このサイクルでは、実行が完了していないストア命令の
オペランドアドレス(アドレス登録レジスタ18の内容
)と、演算命令のオペランドアドレス(アドレスレジス
タ16の内容)とが第2の比較器20で比較される。
同様に、ストア命令のパイプライン制御情報(制御情報
登録レジスタ17の内容)と、演算命令のパイプライン
制御情報(制御情報レジスタ15の内容)とが牙1の比
較器19によシ比較される。
通常、このサイクルで演算命令のオペランドの取出しが
行われる。 このとき、牙2の比較器20により比較さ
れたアドレス登録レジスタ18の内容とアドレスレジス
タ16の内容とが一致していれば、実行が完了していな
いストア命令のストアデータをオペランドとして処理が
行われているわけである。
そこで、演算ユニット内のデータを演算命令のオペラン
ドとして使用するように牙2の比較器20から制御信号
−人が送出され、これによ′り第2および牙4の選択器
’2.44が制御される。
このとき、第1の比較器19によシ比較された制御情報
登録レジスタ17の内容と制御情報レジスタ15の内容
とが不一致であれば、ストア命令を実行している演算器
と、演算命令を実行する演算器とが異方るわけである。
この場合、他の演算器の出力からさらに別の他の演算器
により使用される演算レジスタに通じるデータバスが存
在し危いので、演算命令のオペランドは準備できず、演
算開始を遅らせなければならない。
したがって、牙2の比較器20により一致が検出されて
信号線36の論理値が1に々す、第1の比較器19によ
り不一致が検出されて信号線35の論理値が1になる。
 そこで、第1のANDゲート21により信号線200
上の信号の論理値が1になる。
次に、インバータ54でコンブリメントがとられ、信号
線72の論理値がOとなると、この信号は第3のAND
ゲート56を通り、第3および第4の演算レジスタ47
.48のストローブを抑止して演算開始を抑止する。 
ここで、制御信号−Bは信号線Mを介して牙1のAND
ゲート21のひとつの入力に接続され、上記検出出力を
制御する。
サイクル4ではストア命令により記憶されるデータハ、
第1の結果レジスタ51にセットされる。
したがって、f5の選択器53により信号線71を介し
て第1の結果レジスタ51の内容が選択され、信号線8
0を介して第4の選択器44に導かれ、さらに第4の演
算レジスタ48へと転送される。
次に、サイクル5ではこのデータが第4の演算レジスタ
48に演算命令のオペランドとしてセットされ、命令の
実行が開始される。
以上説明したように、演算ユニット内でデータが有効化
されていないタイミングを検出し、命令実行開始を遅ら
せることKより、金物量の増加やクロックサイクルが長
くなることを防ぎ、性能低下を防ぐことができる。
本実施例においてid、演算器が2組の場合を説明した
が、演算器が3組以上ある場合にも適用できるととは勿
論である。
まだ、ストア命令のアドレス登録レジスタと制御情報登
録レジスタとけ1紹であるが、複数組である場合にも本
発明を適用することができる。
(発明の効果) 本発明は以上説明したように、アドレス登録レジスタの
内容とオペランドアドレスレジスタの内容とが一致し、
制御情報登録レジスタの内容と制御情報レジスタの内容
とが一致しない場合には演算の開始を抑止し、これによ
りデータが有効化されていないタイミングを検出して命
令実行開始を遅らせるように構成することにより必要な
金物量を削減し、クロックサイクルを短縮してバイブラ
イン処理の性能を向上できると云う効果がある。
【図面の簡単な説明】
牙1図は、従来のパイプライン制御方式による情報処理
装置において、不具合が生ずる場合の演算タイムチャー
トの一例を示す図である。 牙2図は、従来のパイプライン制御方式による演算ユニ
ットの一構成例を示すブロック図である。 牙3図は、本発明によるパイプライン制御方式を採用し
た情報処理装置の一実施例を示すブロック図である。 牙4図は、第3図に示す先行制御ユニットの詳細なブロ
ック構成図である。 第5図は、第3図に示す演算ユニットの詳細なブロック
構成図である。 劃・6図は、本発明によるパイプライン制御方式の動作
を説明するタイムチャートである。 1.2.4.10.15〜18.45〜48・・・レジ
スタ3.49・・・演算器 5.41〜44.53・・・選択器 11.40・・・ファイル  13・・・解読器14・
・・加算器     19.20・・・比較器21.5
5.56・・・ANDゲート 54・・・インバータ 100・・・先行制御ユニット 102・・・演算ユニット 104・・・記憶制御ユニット 106・・・記憶装置 特許出願人 日本電気株式会社 代理人 弁理士  井 ノ ロ   壽才1図 り0−2り 1イクノL     トーに一や−−ニー
aヨーー二竺−ヨーー戸]−や−−6−ヨ5TORE 
介+        −−一−−− 実fTヂ4蛸オ2
図 才3図 00

Claims (1)

    【特許請求の範囲】
  1. 少なくともオペランドアドレスを生成して格納するだめ
    のオペランドアドレスレジスタと、前記オペランドアド
    レスを登録するだめのアドレス登録レジスタと、パイプ
    ラインの制御情報を生成して格納するだめの制御情報レ
    ジスタと、前記パイプラインの制御情報を登録するだめ
    の制御情報登録レジスタと、先行する命令に対する前記
    制御情報登録レジスタの内容と後続する命令に対して前
    記パイプラインの制御情報を生成して格納するだめの制
    御情報レジスタの内容とを比較するための第1の比較器
    と、前記先行する命令に対する前記アドレス登録レジス
    タの内容と、前記後続する命令に対する前記オペランド
    アドレスレジスタの内容とを比較するための牙2の比較
    器とを具備し、前記第1の比較器の出力が不一致を検出
    し、かつ、前記第2の比較器の出力が一致を検出してい
    る場合には、前記後続する命令の演算実行の開始を抑止
    するように構成したことを特徴とするパイプライン制御
    方式。
JP3328283A 1983-03-01 1983-03-01 パイプライン制御方式 Pending JPS59158441A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3328283A JPS59158441A (ja) 1983-03-01 1983-03-01 パイプライン制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3328283A JPS59158441A (ja) 1983-03-01 1983-03-01 パイプライン制御方式

Publications (1)

Publication Number Publication Date
JPS59158441A true JPS59158441A (ja) 1984-09-07

Family

ID=12382172

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3328283A Pending JPS59158441A (ja) 1983-03-01 1983-03-01 パイプライン制御方式

Country Status (1)

Country Link
JP (1) JPS59158441A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02197961A (ja) * 1989-01-27 1990-08-06 Koufu Nippon Denki Kk 情報処理装置
JPH02254563A (ja) * 1989-03-29 1990-10-15 Koufu Nippon Denki Kk ベクトルデータ処理方式

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5199427A (ja) * 1975-02-27 1976-09-02 Hitachi Ltd
JPS57161938A (en) * 1981-03-30 1982-10-05 Fujitsu Ltd Instruction control system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5199427A (ja) * 1975-02-27 1976-09-02 Hitachi Ltd
JPS57161938A (en) * 1981-03-30 1982-10-05 Fujitsu Ltd Instruction control system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02197961A (ja) * 1989-01-27 1990-08-06 Koufu Nippon Denki Kk 情報処理装置
JPH02254563A (ja) * 1989-03-29 1990-10-15 Koufu Nippon Denki Kk ベクトルデータ処理方式

Similar Documents

Publication Publication Date Title
US5416911A (en) Performance enhancement for load multiple register instruction
US4954947A (en) Instruction processor for processing branch instruction at high speed
EP0093430A2 (en) Pipeline data processing system
EP0394711A2 (en) Branch instruction control unit based on a pipeline method
JPS59158441A (ja) パイプライン制御方式
JPH05274143A (ja) 複合条件処理方式
JP2812610B2 (ja) パイプライン制御方式
JP2783285B2 (ja) 情報処理装置
JP2597744B2 (ja) 分岐制御方法
JP2503223B2 (ja) 先行制御方式
JPS5844569A (ja) 命令処理同期制御方式
JPS59183434A (ja) 命令先取り制御方式
JP3431503B2 (ja) 情報処理装置およびプログラム制御方法
JP2793526B2 (ja) スーパースカラープロセッサ
JPH0228724A (ja) 分岐命令制御方式
JPS6132698B2 (ja)
JP2000305782A (ja) 演算装置
JPS63153638A (ja) パイプライン処理方法
JPS6051137B2 (ja) デ−タ処理装置
JPH0546385A (ja) レジスタ干渉制御回路
JPS63221428A (ja) デ−タ処理装置
JPH07248917A (ja) 演算処理方式
JPS58163046A (ja) 情報処理装置
JPS6329839A (ja) デ−タ処理装置
JPH06314196A (ja) 情報処理方法および装置