JPS59117640A - データ処理装置のストア処理方法 - Google Patents

データ処理装置のストア処理方法

Info

Publication number
JPS59117640A
JPS59117640A JP22884282A JP22884282A JPS59117640A JP S59117640 A JPS59117640 A JP S59117640A JP 22884282 A JP22884282 A JP 22884282A JP 22884282 A JP22884282 A JP 22884282A JP S59117640 A JPS59117640 A JP S59117640A
Authority
JP
Japan
Prior art keywords
instruction
register
store
data
cycle
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
JP22884282A
Other languages
English (en)
Other versions
JPH0452488B2 (ja
Inventor
Takeshi Watanabe
毅 渡辺
Masahiro Hashimoto
眞宏 橋本
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP22884282A priority Critical patent/JPS59117640A/ja
Publication of JPS59117640A publication Critical patent/JPS59117640A/ja
Publication of JPH0452488B2 publication Critical patent/JPH0452488B2/ja
Granted 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

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図はデータ処理装置の概略構成であり、1は命令を
解読する命令ユニット、2は命令およびデータを格納す
る記憶ユニット、8は命令で指定された演算を実行する
演算ユニットを示す。演算パイプラインは、処理装置の
処理能力を向上させるため、演算ユニット8で、演J!
実行に必要とする時間を’FJ数サイクル数に分割し、
複数の異った命令処理を各サイクルに割当て、該演算ユ
ニットに対しパイプライン制御を施す方式である。
かかる演算パイプライン制御を実施する場合、従来はス
トア命令処理が現われると、先行する命令の演算が終了
してから該ストア処理を開始していた。これは、先行す
る命令の演算結果を格納するディスティネーション・レ
ジスタが、後続のストア命令でストアデータのソース・
レジスタに指定されている場合、先行命令の演算が終了
する前にストア処理を開始すると、先行命令の演算結果
がストアデータに反映されないことによる。
従来の演算ユニットの構成例を第2図に示す。
第2図は浮動小数点演算ユニットの例で、11,12は
セレクタ、13.14.16.17.19などはワーク
レシフタ、 15はプレシフタ、 18は並列加算器、
加はボストシフタ、21は演x、Iii!果レジスタ、
nはレジスタ群、おはストアデータレジスタ、刃はオペ
ランド・2ツブアラウンド制御回路、81はメモリ・リ
クエスト制御回路である。ここで、演算ユニットの実゛
行ザイクルをE、F、’Nとする。EはExecuti
on cycle 、 FはF (next of  
E )cycle 。
NはNormalize  cycle  の略である
。E、IF、Hの後にレジスタ格納ザイクルが続くが、
これをP(Put  Away )サイクルと呼ぶ。レ
ジスタ群nは一般には汎用レジスタ群と浮動小数点レジ
スタ群の2つを有しており、浮動小畝演算に際しては浮
動小数点レジスタ群を用い、それ以外の演算では汎用レ
ジスタ群を用いるが、図では1つのレジスタ群として示
している。
いま、先行する命令が加算命令で、この後にストア命令
が続き、先行mX命令の演算結果を格納するディスティ
ネーション・レジスタが該ストア命令のソース・レジス
タと同一である場合を考える。この場合の従来の演算パ
イプラインのタイムチャートを第8図に示す。第8図で
、ADは加算命令、STDはストア命令を表わしている
第8図を参照するに、オペランドデータがオペランドバ
ス真01. 1021よりセレクタ11.12を通して
レジスタ13,14にセットされると、第1サイクルで
は、加算動作に先立って、シフタ15により指数部の小
さいオペランドを大きいオペランドに桁合せずべくブレ
シフト動作を行う。第2サイクルでは、桁合せしてレジ
スタ16.17にセットされたオペランドデータ(仮数
部)に対して、並列加算器18により並列加算を実行す
る。第8サイクルはボストノーマライズのだめのサイク
ルであり、レジスタ19にセットされた演算結果に対し
て、仮数部の先頭に無効な0がこないようシフタ加で仮
数部のシフトを行い、咳シフトした分だけ指数部を補正
する。この後、第4サイクルでは、レジスタ21にセッ
トされた演算結果を、オペランドバス108を介してレ
ジスタ群n内の予め定められたレジスタ(ディスティネ
ーション・レジスタ)に格納する。
一方、次のストア命令の処理は第4サイクルで開始する
。オペランド・ラップアラウンド制御回路(資)は、相
前後する命令のオペランド部を監視し、先行する命令の
演算結果を格納するディスティネーション・レジスタか
、次の命令のソース・レジスタに指定されている場合、
演算結果がレジスタ四の該当レジスタに格納されるのを
待たずしてイd号巌104を経由し、セレクタ11.1
2を制御して目的のデータをレジスタ13あるいはI4
にセットする回路である。第8図より、先行する加算結
果は第8サイクルの終りでは確足している。そこで、第
4サイクルで次のストア命令の処理を開始し、オペラン
ド・ラップアラウンド制御111回路(資)の制御下で
、ストアデータとして先行加算命令の加算結果を信号線
104、セレクタ12経由でレジスタ14にセットする
のである6次の第5サイクルで、レジスタ14のストア
データをレジスタるに移し、メモリリクエスト制御回路
81がストアリクエストを出すことにより、信号線10
5経由でストアデータを記憶ユニットに書き込む。なお
、先行命令による演算結果を格納するディスティネーシ
ョン・レジスタと次のストア命令のストアデータが格納
されているノース・レジスタが異なる場合は、同様に、
第4サイクルでストアデータをオペランドバス102、
セレクタ12経由でレジスタ14にセットし、これを第
5サイクルで、レジスタお、信号線105経由で記憶ユ
ニットに書き込む。
第8図はストア命令が8サイクル前の先行命令のディス
ティネーションをソースレジスタとする場合を示すが、
該先行命令の先行命令(先々行舖令)のディスティネー
ションをソースレジスタとする場合は、先々行命令の演
算結果はレジスタ21に求っているので、これを線10
4を介して直接セレクタ12に転送するよ5にする。
以上のように、従来は先行する命令の演算が終了してか
らでないと、後続のストア命令の処理は開始できないと
いう考えに立っており、演算パイプラインの高速化を阻
害する一つの原因になっていた。
〔発明の目的〕
本発明の目的は、高速にストア命令を処理することによ
り、演算パイプライン方式のデータ処理装置のこれまで
以上の性能向上を図る□ことにある。
〔発明の概要〕
本発明の要点は、先行する命令の処理終了を待たずに、
後続のストア命令の処理を開始し、もし、先行する命令
のディスティネーション・レジスタと後続のストア命令
のソース・レジスタのオペランドが一致して、ストアデ
ータを変更する必要がある場合は、ストア命令の処理の
途中において、旧ストアデータを先行する命令の演算結
果に置きかえて記憶ユニットに送出するものである。
〔発明の実施例〕
第4図は本発明による演算ユニットの一実施例である。
第4図において、冴と届はセレクタ、5はバッファレジ
スタ、82Jはセレクタ制御回路であり、それ以外の構
成は第2図と同様である。
第4図では、ストア命令が出されると、先行する命令の
処理が終了するのを待たずに、該ストア命令の処理を開
始し、そのとき汎用レジスタ群四の該当レジスタ(ソー
スレジスタ)が保持するデータをストアデータとして、
オペランドバス101、セレクタ12経由でレジスタ■
4にセットする。このストアデータは、1サイクル・ピ
ッチでセレクタ冴、26を介して順次レジスタ6.23
と転送していく。このストアデータの転送の途中におい
て、セレクタ24では、先々行命令のディスティネーシ
ョン・レジスタと該ストア砧省のソース・レジスタが一
致する場合、信号線104上の先々で166令の演算結
果を選択し、旧ストアデータにかえてレジスタ乙にセッ
トする。同様に、セレクタ26では、先行命令のディス
ティネーション・レジスタト該ストア砧令のソース・レ
ジスタが一致する場合、信号線104上の先行命令の演
算結果を選択し、旧ストアデータにかえてレジスタ乙に
セットする。これらセレクタ24.26を制御するのが
セレクタ制御回路82である。
第5図にセレクタ制御回路82の詳細図を示す。
第5図において、40 、41 、42はレジスタ、招
、44+は比較回路である。演算パイプラインのEサイ
クルの初めに、実行ずべき命令の第1オペランドのレジ
スタアドレス(R1)をレジスタ40にセットし、Fサ
イクル、Nサイクルでレジスタ41、レジスタ42とシ
フトせしめる。命令の第1オペランドは、演算命令にあ
っては演算結果を格納するディスティネーション・レジ
スタを示し、ストア命令にあってはストアデータが格納
されているソースレジスタを示している。比較回路48
は、Fサイクルの初めにストア命令処理中といつ栄件下
で、レジスタ40とレジスタ佃の内容を比較し、一致す
ると信号線106にl”を出力する。比較回路44は、
次のNサイクルの初めに同じくストア命令処理中とい5
条件下で、レジスタ41とレジスタ42の内容を比較し
、一致すると信号線107に′1”を出力する。
ここで、信号線106が11”ということは、ストア命
令のソース・レジスタと該ストア命令に先々行する命令
のディスティネーション・レジスタとが一致することを
意味する。また、信号線107が′1”ということは、
ストア命令のソース・レジスタと該ストア命令の直前命
令(先行命令)のディスティネーション・レジスタとか
〒致することを意顧している。第4図のセレクタ24は
、信号線106が1”の時、レジスタ14の旧ストアデ
ータの代りに、そのとき信号線104上に出力される先
々行命令の演算結果を選択し、セレクタ5は、信号線1
07が1″の時、レジスタδの旧ストアデータの代りに
信号線104の先行命令の演算結果を選択するものであ
る。
第6図に本発明を通用した場合の債算パイプラインのタ
イムチャートを示す。これば第8図に対応するもので、
第8図の場合と同様に、先行命令が加算命令で、この後
にストア命令が続き、先行加’J’tfrh令の演算結
・果を格納するディスティネーション・レジスタが後続
のストア命令のソース・レジスタとなる場合の例である
加算命令ADの実行は従来と同様であり、第1サイクル
でシフタ15によるプレシフト動作を実行し、第2サイ
クルでは並列加算器18による加算動作、第8サイクル
ではシック加によるボストンーマライズ動作をそれぞれ
実行する。この第8サイクルで得られた演算結果が、仄
の第4サイクルでレジスタ群四の所定レジスタ(ディス
ティネーション・レジスタ)に格納される。
一方、次のストア加令STDの処理は第2サイクルで直
ちに開始する。この第2サイクルでは、レジスタ群22
の該当レジスタ(ソース・レジスタ)に格納されている
変更前のデータをストアデータ(旧ストアデータ)とし
て、オペランドバス102、セレクタ12経由でレジス
タ14にセットする。この旧ストアデータは、次の第8
サイクルでセレクタ冴を経由してレジスタ6に移される
。次の、@4サイクルのあだまで、該ストア命令のソー
ス・レジスタと先行加算命令のディスティネーション・
レジスタが同一ということでセレクタ制御回路82の出
力信号線107が1”になるため、セレクタ房はレジス
タ乙にかえて信号線104を選択する。この時、信号線
104には先行する加算命令の演算結果が出力されてい
る。従って、この第4サイクルでは、レジスタ5の旧ス
トアデータにかわって信号@! 104の演算結果がセ
レクタ部を経由してレジスタ乙にセットされ、記憶ユニ
ットに樗き込まれる。
第8図と第6図を比べた場合、g8図においては、スト
ア加令に後続する命令の実行開始は第5サイクルからで
あるが、第6図においては第8サイクルとなっており、
2サイクル高速化が達成される。
以上、本発明を浮動小数点演算ユニットに適用した場合
を例に説明したが、本発明はこれに限定されるものでな
いことはいうまでもない。
〔発明の効果〕
以−ヒの説明から明らかな如く、本発明によれば、演典
パイプライン制御において先行する命令の終了を待たず
にストア命令の処理を開始することが可能であり、かか
るデータ処理装置qのこれ丈で以上の性能向上が達成さ
れる。
【図面の簡単な説明】
第1図はデータ処理装置の全体構成図、第2図は従来の
演算ユニットの構成例を示す図、第8図は従来の演算パ
イプラインを説明するタイミング図、第4図は本発明の
演算ユニットの一実施例を示す図、第5図は第4図にお
けるセレクタ制御回路の詳細図、第6図は本発明の演算
ツクイブラインを説明するタイミング図である。 11、12.24.26・・・セレクタ、13.14.
16.17゜19.21.δ、26・・・レジスタ、1
5,20・・・シ7り、18・・・1W列加算器、22
・・・レジスタ群、82・・・セレクタ制御回路。 代理人弁理士  鈴 木   誠“  1亀。

Claims (1)

    【特許請求の範囲】
  1. (1)  演算パイプライン制御方式のデータ処理装置
    において、ストア命令が出された時、先行する命令の処
    理が終了する前に後続の該ストア命令の処理を開始する
    と共に、該ストア命令のソースデータアドレスと先行す
    る命令のディスティネーションアドレスとのオペランド
    の参照関係を調べ、両者が一致するときは、ストア命令
    の処理量゛始で用意したストアデータにかえて先行命令
    の演算結果を選択してメモリに書き込むことを特徴とす
    るデータ処理装置のストア処理方式。
JP22884282A 1982-12-25 1982-12-25 データ処理装置のストア処理方法 Granted JPS59117640A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP22884282A JPS59117640A (ja) 1982-12-25 1982-12-25 データ処理装置のストア処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP22884282A JPS59117640A (ja) 1982-12-25 1982-12-25 データ処理装置のストア処理方法

Publications (2)

Publication Number Publication Date
JPS59117640A true JPS59117640A (ja) 1984-07-07
JPH0452488B2 JPH0452488B2 (ja) 1992-08-24

Family

ID=16882713

Family Applications (1)

Application Number Title Priority Date Filing Date
JP22884282A Granted JPS59117640A (ja) 1982-12-25 1982-12-25 データ処理装置のストア処理方法

Country Status (1)

Country Link
JP (1) JPS59117640A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05204642A (ja) * 1992-01-27 1993-08-13 Fujitsu Ltd 命令実行制御方式

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101809303B (zh) 2007-09-27 2013-01-09 奥依列斯工业株式会社 合成树脂推力滑动轴承
JP5332379B2 (ja) 2008-07-28 2013-11-06 オイレス工業株式会社 合成樹脂製スラスト滑り軸受
JP5704625B2 (ja) 2009-12-11 2015-04-22 オイレス工業株式会社 合成樹脂製スラスト滑り軸受

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5569856A (en) * 1978-11-22 1980-05-26 Toshiba Corp Overlap system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5569856A (en) * 1978-11-22 1980-05-26 Toshiba Corp Overlap system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05204642A (ja) * 1992-01-27 1993-08-13 Fujitsu Ltd 命令実行制御方式

Also Published As

Publication number Publication date
JPH0452488B2 (ja) 1992-08-24

Similar Documents

Publication Publication Date Title
US5155817A (en) Microprocessor
US4658355A (en) Pipeline arithmetic apparatus
US5283874A (en) Cross coupling mechanisms for simultaneously completing consecutive pipeline instructions even if they begin to process at the same microprocessor of the issue fee
JPS633337B2 (ja)
JPH10228376A (ja) 複数レジスタ命令を処理する方法及びプロセッサ
JPH063584B2 (ja) 情報処理装置
US4954947A (en) Instruction processor for processing branch instruction at high speed
JPH0348536B2 (ja)
US5757685A (en) Data processing system capable of processing long word data
JPH04245324A (ja) 演算装置
JPS59231652A (ja) メモリアクセス・オ−バラツプ検出方式
JPS59117640A (ja) データ処理装置のストア処理方法
EP0162929B1 (en) Method of controlling branching
US5151993A (en) Data processor performing operation on data having length shorter than one-word length
JPH09198231A (ja) 演算処理装置
JPH0512751B2 (ja)
JPH01263820A (ja) マイクロプロセッサ
JPS59123937A (ja) 演算装置におけるバイパス制御方式
JPS5995646A (ja) 演算制御装置
JPH0340422B2 (ja)
JPH07248917A (ja) 演算処理方式
JP2707867B2 (ja) ディジタル計算機のレジスタファイルおよびそれを用いた命令実行方式
JP3155056B2 (ja) 情報処理装置
JPH07219771A (ja) 命令プロセッサ
JPS5896346A (ja) 階層型演算方式