[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JPH0452488B2 - - Google Patents

Info

Publication number
JPH0452488B2
JPH0452488B2 JP57228842A JP22884282A JPH0452488B2 JP H0452488 B2 JPH0452488 B2 JP H0452488B2 JP 57228842 A JP57228842 A JP 57228842A JP 22884282 A JP22884282 A JP 22884282A JP H0452488 B2 JPH0452488 B2 JP H0452488B2
Authority
JP
Japan
Prior art keywords
instruction
register
store
cycle
data
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.)
Expired - Lifetime
Application number
JP57228842A
Other languages
English (en)
Other versions
JPS59117640A (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)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は演算パイプライン方式のデータ処理装
置に好適なストア処理方法に関する。
〔従来の技術〕
第1図はデータ処理装置の概略構成であり、1
は命令を解読する命令ユニツト、2は命令および
データを格納する記憶ユニツト、3は命令で指定
された演算を実行する演算ユニツトを示す。演算
パイプラインは、処理装置の処理能力を向上させ
るため、演算ユニツト3で、演算実行に必要とす
る時間を複数サイクル数に分割し、複数の異つた
命令処理を各サイクルに割当て、該演算ユニツト
に対しパイプライン制御を施す方式である。
かかる演算パイプライン制御を実施する場合、
従来はストア命令が現われると、先行する命令の
演算が終了してから該ストア命令の処理を開始し
ていた。これは、先行する命令の演算結果を格納
するデイステイネーシヨン・レジスタが、後続の
ストア命令でストアデータのソース・レジスタに
指定されている場合、先行命令の演算が終了する
前にストア処理を開始すると、先行命令の演算結
果がストアデータに反映されないことによる。
従来の演算ユニツトの構成例を第2図に示す。
第2図は浮動小数点演算ユニツトの例で、11,
12はセレクタ、13,14,16,17,19
などはワークレジスタ、15はプレシフタ、18
は並列加算器、20はポストシフタ、21は演算
結果レジスタ、22はレジスタ群、23はストア
データレジスタ、30はオペランド・ラツプアラ
ウンド制御回路、31はメモリ・リクエスト制御
回路である。ここで、演算ユニツトの実行サイク
ルをE,F,Nとする。EはExecution cycle、
FはF(next of E)cycle、NはNormalize
cycleの略である。E,F,Nの後にレジスタ格
納サイクルが続くが、これをP(Put Away)サ
イクルと呼ぶ。レジスタ群22は一般に汎用レジ
スタ群と浮動小数点レジスタ群の2つを有してお
り、浮動小数点演算に際して浮動小数点レジスタ
群を用い、それ以外の演算では汎用レジスタ群を
用いるが、図では1つのレジスタ群として示して
いる。
今、先行する命令が加算命令で、この後にスト
ア命令が続き、先行加算命令の演算結果を格納す
るデイステイネーシヨン・レジスタが該ストア命
令のソース・レジスタと同一である場合を考え
る。この場合の従来の演算パイプラインのタイム
チヤートを第3図に示す。第3図で、ADは加算
命令、STDはストア命令を表わしている。
第3図を参照するに、オペランドデータがオペ
ランドバス101,102よりセレクタ11,1
2を通してレジスタ13,14にセツトされる
と、第1サイクルでは、加算動作に先立つて、シ
フタ15により指数部の小さいオペランドを大き
いオペランドに桁合せすべくプレシフト動作を行
う。第2サイクルでは、桁合せしてレジスタ1
6,17にセツトされたオペランドデータ(仮数
部)に対して、並列加算器18により並列加算を
実行する。第3サイクルはポストノーマライズの
ためのサイクルであり、レジスタ19にセツトさ
れた演算結果に対して、仮数部の先頭に無効な0
がこないようにシフタ20で仮数部のシフトを行
い、該シフトした分だけ指数部を補正する。この
後、第4サイクルでは、レジスタ21にセツトさ
れた演算結果を、オペランドバス103を介して
レジスタ群22内の予め定められたレジスタ(デ
イステイネーシヨン・レジスタ)に格納する。
一方、次のストア命令の処理は第4サイクルで
開始する。オペランド・ラツプアラウンド制御回
路30は、相前後する命令のオペランド部を監視
し、先行する命令の演算結果を格納するデイステ
イネーシヨン・レジスタが、次の命令のソース・
レジスタに指定されている場合、演算結果がレジ
スタ22の該当レジスタに格納されるのを待たず
して信号線104を経由し、セレクタ11,12
を制御して目的のデータをレジスタ13あるいは
14にセツトする回路である。第3図より、先行
する加算命令の加算結果は第3サイクルの終りで
は確定している。そこで、第4サイクルで次のス
トア命令の処理を開始し、オペランド・ラツプア
ラウンド制御回路30の制御下で、ストアデータ
として先行加算命令の加算結果を信号線104、
セレクタ12経由でレジスタ14にセツトするの
である。次の第5サイクルで、レジスタ14のス
トアデータをレジスタ23に移し、メモリ・リク
エスト制御回路31がストアリクエストを出すこ
とにより、信号線105経由でストアデータを記
憶ユニツトに書き込む。なお、先行命令による演
算結果を格納するデイステイネーシヨン・レジス
タと次のストア命令のストアデータが格納されて
いるソース・レジスタが異なる場合は、同様に、
第4サイクルでストアデータをオペランドバス1
02、セレクタ12経由でレジスタ14にセツト
し、これを第5サイクルで、レジスタ23、信号
線105経由で記憶ユニツトに書き込む。
第3図はストア命令が3サイクル前の先行命令
のデイステイネーシヨンをソースレジスタとする
場合を示すが、該先行命令の先行命令(先々行命
令)のデイステイネーシヨンをソースレジスタと
する場合は、先々行命令の演算結果はレジスタ2
1に求まつているので、これを線104′を介し
て直接セレクタ12に転送するようにする。
以上のように、従来は先行する命令の演算が終
了してからでないと、後続のストア命令の処理は
開始できないという考えに立つており、演算パイ
プラインの高速化を阻害する一つの原因になつて
いた。
〔発明の目的〕
本発明の目的は、高速にストア命令を処理する
ことにより、演算パイプライン方式のデータ処理
装置のこれまで以上の性能向上を図ることにあ
る。
〔発明の概略〕
本発明の要点は、ストア命令が出されると、該
ストア命令の処理を直ちに開始してストアデータ
を入手すると共に、先々行命令および先行命令の
デイステイネーシヨン・レジスタと該ストア命令
のソース・レジスタの一致性を順次比較してい
き、一致する場合は、ストアデータを先々行命令
あるいは先行命令の演算結果と順次置きかえて記
憶ユニツトに送出するものである。
〔発明の実施例〕
第4図は本発明による演算ユニツトの一実施例
である。第4図において、24と26はセレク
タ、25はバツフアレジスタ、32はセレクタ制
御回路であり、それ以外の構成は第2図と同様で
ある。
第4図では、ストア命令が出されると、該スト
ア命令の処理を直ちに開始し、そのとき汎用レジ
スタ群22の該当レジスタ(ソースレジスタ)が
保持するデータをストアデータとして、オペラン
ドバス101、セレクタ12経由でレジスタ14
にセツトする。このストアデータは、1サイク
ル・ピツチでセレクタ24,26を介して順次レ
ジスタ25,23と転送していく。このストアデ
ータの転送の途中において、セレクタ24では、
先々行命令のデイステイネーシヨン・レジスタと
該ストア命令のソースレジスタが一致する場合、
信号線104上の先々行命令の演算結果を選択
し、旧ストアデータにかえてレジスタ25にセツ
トする。同様に、セレクタ26では、先行命令の
デイステイネーシヨン・レジスタと該ストア命令
のソースレジスタが一致する場合、信号線104
上の先行命令の演算結果を選択し、旧ストアデー
タにかえてレジスタ23にセツトする。これらの
セレクタ24,26を制御するのがセレクタ制御
回路32である。
第5図にセレクタ制御回路32の詳細図を示
す。第5図において、40,41,42はレジス
タ、43,44は比較回路である。演算パイプラ
インのEサイクルの初めに、実行すべき命令の第
1オペランドのレジスタアドレスR1をレジスタ
40にセツトし、Fサイクル、Nサイクルでレジ
スタ41、レジスタ42とシフトせしめる。命令
の第1オペランドは、演算命令にあつては演算結
果を格納するデイステイネーシヨン・レジスタを
示し、ストア命令にあつてはストアデータが格納
されているソース・レジスタを示している。比較
回路43は、Fサイクルの初めにストア命令処理
中という条件で、レジスタ40とレジスタ42の
内容を比較し、一致すると信号線106に“1”
を出力する。比較回路44は、次のNサイクルの
初めに同じくストア命令処理中という条件で、レ
ジスタ41とレジスタ42の内容を比較し、一致
すると信号線107に“1”を出力する。
ここで、信号線106が“1”ということは、
ストア命令のソース・レジスタと該ストア命令に
先々行する命令のデイステイネーシヨン・レジス
タとが一致することを意味する。また、信号線1
07が“1”ということは、ストア命令のソー
ス・レジスタと該ストア命令の直前命令(先行命
令)のデイステイネーシヨン・レジスタとが一致
することを意味している。第4図のセレクタ24
は、信号線106が“1”の時、レジスタ14の
旧ストアデータの代りに、そのとき信号線104
上に出力される先々行命令の演算結果を選択し、
セレクタ26は、信号線107が“1”の時、レ
ジスタ25の旧ストアデータの代りに信号線10
4の先行命令の演算結果を選択するものである。
第6図に本発明を適用した場合の演算パイプラ
インのタイムチヤートを示す。これは第3図に対
応するもので、第3図の場合と同様に、先行命令
が加算命令で、この後にストア命令が続き、先行
加算命令の演算結果を格納するデイステイネーシ
ヨン・レジスタが後続のストア命令のソース・レ
ジスタとなる場合の例である。第6図では、さら
に先々行命令(これは減算命令SUBとする)と
ストア命令STDの関係も点線で示している。
先行の加算命令ADの実行は従来と同様であ
り、第1サイクルでシフタ15によるプレシフト
動作を実行し、第2サイクルでは並列加算器18
による加算動作、第3サイクルではシフタ20に
よるポストノーマライズ動作をそれぞれ実行す
る。この第3サイクルで得られた演算結果が、次
の第4サイクルでレジスタ群22の所定レジスタ
(デイステイネーシヨン・レジスタ)に格納され
る。
一方、次のストア命令STDの処理は第2サイ
クルで直ちに開始する。この第2サイクルでは、
レジスタ群22の該当レジスタ(ソース・レジス
タ)に格納されている変更前のデータをストアデ
ータ(旧ストアデータ)として、オペランドバス
102、セレクタ12経由でレジスタ14にセツ
トする。この旧ストアデータは、次の第3サイク
ルでセレクタ24を経由してレジスタ25に移さ
れる。次の第4サイクルのあたまで、該ストア命
令のソース・レジスタと先行加算命令のデイステ
イネーシヨン・レジスタが同一ということでセレ
クタ制御回路32の出力信線107が“1”にな
るため、セレクタ26はレジスタ25にかえて信
号線104を選択する。この時、信号線104に
は先行する加算命令の演算結果が出力されてい
る。従つて、この第4サイクルでは、レジスタ2
5の旧ストアデータにかわつて信号線104の演
算結果がセレクタ26を経由してレジスタ23に
セツトされ、記憶ユニツトに書き込まれる。
第3図と第6図を比べた場合、第3図において
は、ストア命令に後続する命令の実行開始は第5
サイクルからであるが、第6図においては第3サ
イクルとなつており、2サイクル高速化が達成さ
れる。なお、第6図で点線で示したように、加算
命令ADの先行命令(ストア命令STDの先々行命
令)である減算命令SUBのデイステイネーシヨ
ン・レジスタがストア命令STDのソース・レジ
スタと一致する場合は、それが第3サイクルのあ
たまで判定され、セレクタ24はレジスタ14の
ストアデータにかえて、信号線104上の先々行
減算命令SUBの演算結果を選択してレジスタ2
5に移すことになる。
以上、本発明を浮動小数点演算ユニツトに適用
した場合を例に説明したが、本発明はこれに限定
されるものでないことはいうまでもない。
〔発明の効果〕
以上の説明から明らかな如く、本発明によれ
ば、複数の異つた命令の処理を各サイクルに割当
て並列に処理する演算パイプライン制御におい
て、ストア命令が発行されても、その処理を直ち
に開始し、もし先々行あるいは先行する命令のデ
イステイネーシヨン・レジスタとストア命令のソ
ース・レジスタのオペランドが一致して、ストア
データを変更する必要がある場合は、ストア命令
の処理途中において、該ストアデータを先々行あ
るいは先行する命令の演算結果と順次置きかえる
ため、パイプライン制御を何ら乱すことなく、ス
トア命令の高速処理が可能であり、かかる演算パ
イプライン制御方式のデータ処理装置のこれまで
以上の性能向上が達成される。
【図面の簡単な説明】
第1図はデータ処理装置の全体構成図、第2図
は従来の演算ユニツトの構成例を示す図、第3図
は従来の演算パイプラインを説明するタイミング
図、第4図は本発明の演算ユニツトの一実施例を
示す図、第5図は第4図におけるセレクタ制御回
路の詳細図、第6図は本発明の演算パイプライン
を説明するタイミング図である。 11,12,24,26…セレクタ、13,1
4,16,17,19,21,25,26…レジ
スタ、15,20…シフタ、18…並列加算器、
22…レジスタ群、32…セレクタ制御回路。

Claims (1)

  1. 【特許請求の範囲】 1 複数の異つた命令の処理を各サイクルに割当
    てて並列に処理する演算パイプライン制御方式の
    データ処理装置において、サイクルピツチで順
    次、第1演算命令、第2演算命令、ストア命令が
    出る場合のストア処理方法であつて、 前記ストア命令処理の第1サイクルで、該スト
    ア命令のソースデータアドレスで示されるデータ
    を第1レジスタにセツトし、 次の第2サイクルで、前記ストア命令のソース
    データアドレスと前記第1演算命令のデイステイ
    ネーシヨンアドレスを比較し、一致しない時は前
    記第1レジスタのデータを、一致するときは前記
    第1演算命令の演算結果データを選択して、第2
    レジスタにセツトし、 次の第3サイクルで、前記ストア命令のソース
    データアドレスと前記第2演算命令のデイステイ
    ネーシヨンアドレスを比較し、一致しない時は前
    記第2レジスタのデータを、一致するときは前記
    第2演算命令の演算結果データを選択して、当該
    ストア命令の最終的ストアデータとすることを特
    徴とするデータ処理装置のストア処理方法。
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 JPS59117640A (ja) 1984-07-07
JPH0452488B2 true 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 (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009041052A1 (ja) 2007-09-27 2009-04-02 Oiles Corporation 合成樹脂製スラスト滑り軸受
WO2010013415A1 (ja) 2008-07-28 2010-02-04 オイレス工業株式会社 合成樹脂製スラスト滑り軸受
EP3078868A1 (en) 2009-12-11 2016-10-12 Oiles Corporation Thrust slide bearing constituted of synthetic resins

Families Citing this family (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 命令実行制御方式

Family Cites Families (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 (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009041052A1 (ja) 2007-09-27 2009-04-02 Oiles Corporation 合成樹脂製スラスト滑り軸受
WO2010013415A1 (ja) 2008-07-28 2010-02-04 オイレス工業株式会社 合成樹脂製スラスト滑り軸受
EP3078868A1 (en) 2009-12-11 2016-10-12 Oiles Corporation Thrust slide bearing constituted of synthetic resins

Also Published As

Publication number Publication date
JPS59117640A (ja) 1984-07-07

Similar Documents

Publication Publication Date Title
US4882701A (en) Lookahead program loop controller with register and memory for storing number of loop times for branch on count instructions
JPS6028015B2 (ja) 情報処理装置
US5212662A (en) Floating point arithmetic two cycle data flow
JPH02227769A (ja) データ処理システム
JPH03653B2 (ja)
EP0305639B1 (en) Vector computer
US4954947A (en) Instruction processor for processing branch instruction at high speed
US5757685A (en) Data processing system capable of processing long word data
US4631672A (en) Arithmetic control apparatus for a pipeline processing system
JPS6142308B2 (ja)
JPH0452488B2 (ja)
US4924377A (en) Pipelined instruction processor capable of reading dependent operands in parallel
US5784606A (en) Method and system in a superscalar data processing system for the efficient handling of exceptions
US5220670A (en) Microprocessor having ability to carry out logical operation on internal bus
JP3278441B2 (ja) ベクトル処理装置
US5644745A (en) Apparatus for replacing data availability information for an instruction subsequent to a branch with previous availability information upon branch prediction failure
JP2819733B2 (ja) 情報処理装置
JPH06139071A (ja) 並列計算機
JP3155056B2 (ja) 情報処理装置
JPH01147723A (ja) 情報処理装置のパイプライン処理方式
JPH07248917A (ja) 演算処理方式
JPS62288939A (ja) 情報処理装置
JPS59188735A (ja) 浮動小数点演算装置
JPH04116770A (ja) ベクトルデータ処理装置
JPS5896346A (ja) 階層型演算方式