JPS6116113B2 - - Google Patents

Info

Publication number
JPS6116113B2
JPS6116113B2 JP8611180A JP8611180A JPS6116113B2 JP S6116113 B2 JPS6116113 B2 JP S6116113B2 JP 8611180 A JP8611180 A JP 8611180A JP 8611180 A JP8611180 A JP 8611180A JP S6116113 B2 JPS6116113 B2 JP S6116113B2
Authority
JP
Japan
Prior art keywords
instruction
stage
arithmetic
register
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.)
Expired
Application number
JP8611180A
Other languages
English (en)
Other versions
JPS5710873A (en
Inventor
Shigeaki Okuya
Tetsuo Okamoto
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 JP8611180A priority Critical patent/JPS5710873A/ja
Publication of JPS5710873A publication Critical patent/JPS5710873A/ja
Publication of JPS6116113B2 publication Critical patent/JPS6116113B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • G06F15/8053Vector processors

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)
  • Complex Calculations (AREA)

Description

【発明の詳細な説明】 本発明は例えば複数の第1オペランドと複数の
第2オペランドの対応するオペランド同志を演算
するベクトル演算処理装置における命令制御装置
に関し、特に命令制御装置の命令パイプラインに
おいて演算処理部や記憶制御部を管理する演算制
御管理部分を複数段にするとともに、後段の演算
処理管理部分に対する命令情報をタイミングよく
転送することによりデータ処理を効率よく行なう
ようにした命令制御装置に関するものである。
汎用計算機では、1エレメントのデータをメモ
リ上から中央処理装置内のレジスタへロードした
り、また、レジスタ上の1エレメントよりなる第
2入力オペランドと、1エレメントよりなる第3
入力オペランドとの間に演算を施し、1エレメン
トよりなる結果オペランドを得る。そしてこのよ
うな制御を行なう命令は、スカラ命令といわれる
1命令で単数のエレメント処理を行なう命令であ
る。
しかしながらベクトル演算装置では、1命令に
より複数のエレメントを処理するベクトル命令に
より制御されるものである。例えばロード命令で
は、第1図に示す如く、主記憶装置1上の複数の
データa1,a2,a3,………,aoおよびb1,b2
b3,………,boを命令制御装置4の命令にもと
づき、記憶制御装置3、主記憶制御装置2を経由
してベクトル・レジスタ5にロードし、例えば次
の加算命令によつて演算処理部6おいてこれらの
データを加算させてA+B=Cすなわちa1+b1
c1、a2+b2=c2………、ao+bo=coという加算
を行なわせこの結果得られた複数の加算結果c1
c2,c3………,coをベクトル・レジスタ5にセ
ツトしたのちに主記憶装置1に格納するような処
理が行なわれる。この場合、1つの加算命令によ
り上記a1+b1=c1、a2+b2=c2………ao+bo
oという複数の演算が順次行なわれるものであ
る。
このような演算を行なう場合に、ベクトル演算
装置の如き高速計算機の分野では命令をパイプラ
イン処理することが一般に行なわれている。例え
ば1つの命令処理は、第2図に示す如く、命令
語の取出し(Fetch)、その解読(Decode)、
命令実行(Execute)の3段階に分けることがで
きる。そしてこのような命令処理を1命令ずつ処
理せずに、先行の命令が命令実行を行なつている
とき次の命令は命令の解読を行なつており、さら
に後続する命令は命令語の取出を行なう。すなわ
ち、第3図に示す如く、先行の命令V1が命令実
行(E)を行なつているとき次の命令V2は命令解読
(D)を行ない、さらに次の命令V3は命令語取出(F)
を行なうというように、各段階を同時に処理する
パイプライン処理方式により処理されている。こ
のとき命令実行のために複数サイクルを必要とす
るものであるが、一般に演算処理部はパイプライ
ン構造ではなく1命令実行に際してアダーやシフ
ターを複数回使用して1つのスカラ命令、つまり
1エレメントづつの処理を行なうようになつてい
る。したがつて1つの先行命令が命令実行(E)を終
了するまで次の命令に対する命令実行を行なうこ
とができなかつた。
ところが演算速度の高速化があまり要求されな
い場合は、上記の如き方式でもあまり問題はない
が、ベクトル命令を超高速度で処理する場合に
は、演算処理部をパイプライン構造にし、先行の
エレメントの演算処理が完了する前に後続のエレ
メントを投入しその演算処理を開始する必要があ
る。
例えば加算を行なう場合、演算処理部における
命令実行は、データの読出し(Read)、両オ
ペランドの指数比較(Compare)、指数を合わ
せるためのシフト(Aligment)、加算(Add)
演算後正規化のためのシフト(Post Shift)、
データの書込み(Write)の6段階に分けられ
る。ここで上記およびではシフタを使用する
必要がある。汎用計算機では同じシフタを使用し
ているが、これでは演算速度が遅くなるので、ベ
クトル命令を超高速に処理するためには当然演算
処理部をパイプライン構造にし、このために上記
およびのためにそれぞれ別のシフタが設けら
れることになる。したがつて複数のエレメントを
1つの命令で処理するベクトル命令をパイプライ
ン演算器で処理すると、第4図イに示す如く、一
番先行のエレメントe1に関して最終段階である書
込処理が行なわれるとき次のエレメントe2はポス
トシフト処理が行なわれ、エレメントe3について
は加算処理が行なわれ、エレメントe4については
アライメント処理が行なわれ、エレメントe5につ
いては指数比較処理が行なわれ、そしてエレメン
トe6については読出処理が行なわれ、このような
各処理がエレメントeoについて順次行なわれ
る。そしてその結果、ベクトル命令で加算を行な
う場合には、1命令について第4図ロの如き、平
行四辺形で表示されるような処理が遂行されるこ
とになる。
また第1図に示すベクトル・レジスタ5に主記
憶装置1からデータをロードするロード命令のと
きには、記憶制御装置3において加算命令と同様
のパイプライン処理が行なわれる。
しかしながらこのようなパイプライン構造を具
備した演算処理部で、ベクトル命令V1,V2(例
えばいずれも加算命令とする)を連続的に処理す
る場合、命令制御装置における命令、制御パイプ
ライン構造では、第5図に示すような状態でこれ
らのベクトル命令V1,V2に対する処理が行なわ
れる。
いま命令制御装置では命令V1により命令語の
読出しF1が行なわれ、それの解読D1が行なわれ
るとき命令V2に命令語の読出しF2が行なわれ
る。そして演算処理部で命令V1の命令実行E1
行なわれるとき命令制御装置では命令V2におけ
る命令語の解読D2が行なわれる。しかるにこの
命令実行E1は、第5図に示す如く、時間t2におい
て最後のエレメントe8に対する書込み処理が行な
われたときに終了し、それから命令V2に対する
命令実行E2が行なわれる。それ故、演算処理部
で命令V1において最後のエレメントe8に対するデ
ータ読出し処理が終つた時刻t1から命令V2におい
て、最初のエレメントe1′に対するデータ読出し
処理が始まる時刻t2までのt2−t1=t0の期間はこの
データ読出し処理回路は、ジヨブの遂行が可能で
あるにもかかわらず命令制御装置から何もジヨブ
が与えられない、いわゆる遊び期間となる。同様
にして指数比較処理、アライメント処理、加算処
理、ポストシフト処理、および書込み処理の各回
路にもそれぞれ期間t0だけの遊び期間が存在し、
その結果、第5図において斜線部Lで示す如き遊
び期間が存在することになる。このように命令制
御装置のパイプライン構造上の制限により、演算
処理部で命令V1に対する読出しの段階があけば
命令V2に対する読出し処理を行なうことができ
るにもかかわらずこれを行なうことができず、こ
の結果上記遊び期間を生ずる欠点があり、高速処
理上問題となる。
それ故、第6図に示す如く、命令パイプライン
の命令実行段階を、例えば2分割してデータ読出
し段階とその後の段階に分けて管理することが考
えられる。この場合には、命令制御装置に第1命
令実行レジスタと第2命令実行レジスタを設け、
命令V1については最初第1命令実行レジスタに
セツトされた命令により制御を行ない、命令V1
においてすべてのエレメントに対する読出し処理
が終了した時刻T1において第2命令実行レジス
タに命令をセツトして、該第2命令実行レジスタ
にセツトした命令にもとづき、時刻T2までの書
込み処理を管理するようにすることになる。しか
しながらこの場合、最初のエレメントに対する書
込み処理の開始される時刻T0から上記時刻T1
での期間は、第1命令実行レジスタにおいて読出
し処理に対する制御と書込み処理に対する制御を
管理しなければならず、このために制御が複雑に
なるという他の問題がある。
したがつて本発明は上記問題を解決するために
命令制御装置におけるパイプライン構造のうち、
命令実行ステージを複数のステージに分割してそ
の演算制御実行を高速処理できるようにするとと
もに、演算処理手段または記憶データ処理手段か
ら伝達される制御信号にもとづき演算制御実行に
必要な命令情報を演算制御実行命令保持手段に保
持させるようにした命令制御装置を提供すること
を目的とするものであつて、このために本発明に
おける命令制御装置では、パイプライン構造を有
する演算処理装置等の演算処理手段または記憶制
御装置等の記憶データ処理手段と上記演算処理手
段または記憶データ処理手段におけるデータ処理
を制御する命令制御装置を具備しベクトル命令を
処理するデータ処理装置において、上記命令制御
装置の演算実行命令情報を保持するステージ・レ
ジスタ、ステージ設定回路、命令デコーダ等を具
備する演算制御実行ステージに演算制御実行命令
情報を保持する複数の演算制御実行命令保持手段
を設けてこの演算制御実行ステージを複数のステ
ージに分割するとともに、上記演算処理手段また
は記憶データ処理手段から伝達される制御信号に
もとづき上記演算制御実行命令保持手段に演算制
御実行命令を保持させるようにしたことを特徴と
する。
以下本発明の一実施例を第7図および第8図に
もとづき説明する。
第7図は本発明の一実施例構成、第8図はその
動作説明図である。
図中、7はERステージ設定回路、8はERステ
ージレジスタ、9はEWステージ設定回路、10
はEWステージレジスタ、11および12はそれ
ぞれデコーダ、13はベクトルレジスタ、14は
演算処理部である。
ERステージ・レジスタ8およびEWステー
ジ・レジスタ10は、それぞれ演算実行命令を保
持するステージ・レジスタであり、演算実行命令
保持手段を提供する。
ERステージ設定回路7は、演算処理部14に
対してデコーダ11から命令を伝達したときに読
出し処理の実行が可能かどうか判断し、読出し処
理可能であるときデコーダDより命令を受取つて
これをERステージレジスタ8に伝達してさらに
デコーダ11で解読したり、また該ERステージ
レジスタ8にセツトした命令を保持する必要がな
くなつたときにはこれを消去したりあるいは次の
新らしい命令を受理するような制御を行なうもの
である。
EWステージ設定回路9はERステージレジス
タ8からEWステージレジスタ10に対して命令
をセツトしたり、またEWステージレジスタ10
にセツトした命令を保持する必要がなくなつたと
きにはこれを消去したりあるいは次の新らしい命
令を受理するような制御を行なうものである。
デコーダ11はEWステージレジスタ8にセツ
トされた命令をデコードするものであつて、特に
書込み処理命令以外の部分をデコードするもので
ある。
デコーダ12はEWステージレジスタ10にセ
ツトされた命令をデコードするものであつて、特
に書込み処理命令部分をデコードするものであ
る。
ベクトルレジスタ13はベクトル演算に必要な
複数のエレメントを一時的にセツトしたり、また
演算処理部14で処理した結果をデコーダ12に
より解読されたライト命令により一時的にセツト
されるようなベクトルレジスタである。
演算処理部14はベクトルレジスタ13にセツ
トされているエレメントを使用して、デコーダ1
1により解読された演算処理を実行するととも
に、演算結果を書込処理すべき状態になつたと
き、EWステージ設定回路9に対してこれを伝達
する機能を具備するものである。
いま、第8図に示す如く、命令V1およびV2
実行する場合、命令制御装置にまず命令V1が伝
達される。これにより命令制御装置は命令フエツ
チF1を行ない次いでこれをデコードD1する。そ
して時刻t0′でERステージ設定回路7が演算処理
部14において上記デコードD1にもとづく命令
が実行できると判断したとき、ERステージレジ
スタ8にデコーダより伝達された命令をセツトす
る。
このERステージレジスタ8にセツトされた命
令はさらにデコーダ11によりデコードされる。
これにもとづきデコーダ11はエレメントの読出
要求命令および該エレメント処理要求命令(例え
ば加算処理命令)をベクトルレジスタ13および
演算処理部14に伝達する。これによりベクトル
レジスタ13にセツトされているエレメントe1
e2,e3,………が順次読出され(エレメントe1
オペランドa1とb1、エレメントe2はa2とb2、エレ
メントe3はオペランドa3とb3………よりなる)、
これらの両オペランドの指数比較、指数合わせの
ためのシフト、加算および加算後正規化のための
シフトが行なわれる。そして最初のエレメントe1
に対する上記各処理が行なわれその演算結果をベ
クトルレジスタ13にセツトすべき段階にきたと
きに、演算処理部14はEWステージ設定回路9
に対して指示信号を伝達する。EWステージ設定
回路9はこの指示信号を受けたときERステージ
レジスタ8にセツトされている命令をEWステー
ジレジスタ10にセツトする。これによりデコー
ダ12はその書込み処理命令部分をデコードして
書込要求命令をベクトルレジスタ13に伝達す
る。これにより時刻t1′において上記エレメント
e1,e2………に対する演算結果が演算処理部14
からベクトルレジスタ13にセツトされるライト
段階の処理が遂行されることになる。
一方命令V1による上記エレメントe1,e2,e3
……の読出し段階が時刻t2′で終るとき、ベクト
ルレジスタ13はこれをERステージ設定回路7
に報告する。これによりERステージ設定回路7
は、今度はデコーダDを経由して伝達されている
命令V2をERステージレジスタ8にセツトし、こ
れにもとづく読出段階の処理が開始されることに
なる。
また上記時刻t1′から開始されたライト段階の
処理は時刻t3′で終了するが、このとき演算処理
部14は演算結果をベクトルレジスタ13にセツ
トすべき段階に来るのでこれを指示する信号を
EWステージ設定回路9に伝達する。これにより
今度はEWステージ設定回路9はERステージレ
ジスタ8にセツトされた命令V2に関する命令を
EWステージレジスタ10にセツトし命令V2に対
するライト段階の処理が開始されることになる。
そして命令V2に対しても命令V1と同様な制御処
理が行なわれ、時刻t4′においてこの命令V2にお
ける読出し段階の処理が終り、時刻t5′において
命令V2におけるライト段階の処理が終了するこ
とになる。
上記命令V1の処理について時刻t1′からt2′まで
の間ではERステージレジスタ8およびEWステ
ージレジスタ10に同一の命令がセツトされ、ま
た命令V2の処理について時刻t3′からt4′までの間
ではこれまた上記ERステージレジスタ8および
EWステージレジスタ10に同一命令がセツトさ
れる。この結果ERステージレジスタ8にセツト
された命令をデコードする場合にはEWステージ
レジスタ10に対してデコーダ12がデコードす
る部分以外のもののみをデコードすればよく、ま
たEWステージレジスタ10ではライト命令部分
のみをデコードすればよいので、これらのデコー
ドを分離して管理することができ、そのデコード
及び制御が非常に簡単になるとともに、第5図に
示す如き遊び期間が演算処理を行なうことができ
る。しかも、ライト段階の制御開始を演算処理部
からの指示にもとづき行なうことができるので、
例えば演算結果の先頭に0が存在せず加算後正規
化のためのシフトを必要としないような場合に
は、この正規化のためのシフト段階を経由せずに
その前の段階で上記指示を行なうこともできるの
で、正規化のためのシフト段階を必らず経由しな
ければならないような制御に比較して、演算処理
を早くすることができる。
本発明の他の実施例を第9図にもとづき説明す
る。
主記憶装置1を中央処理装置20およびチヤネ
ルプロセツサ21等で共通に使用するデータ処理
システムにおいて、いま中央処理装置20がデー
タ処理のために必要なデータを主記憶装置1から
読出してベクトルレジスタ5にセツトしようとし
たとき、チヤネルプロセツサ21から先行アクセ
スがある場合主記憶制御装置2は中央処理装置2
0からのアクセス要求を一時待機させる。そして
上記先行アクセスが終了したとき、今度は中央処
理装置20に対するアクセス要求を行なうことに
なる。このとき記憶制御装置3内のロード命令処
理部3−1では、命令制御処理4から伝達された
命令をデコードし、アドレス計算を行ない、アク
セス要求信号を主記憶制御装置2に発行し、主記
憶制御装置2からアクセス許可信号を受取つたと
き、主記憶装置1のアクセスを開始する。そして
主記憶装置1から主記憶制御装置2を経由して記
憶制御装置3にこの読出したデータが伝達され、
ベクトルレジスタ5にセツトするときに、ロード
命令処理部3−1は命令制御装置4に対してデー
タの書込を指示するタイミング指示信号を伝達す
る。このタイミング指示信号は命令制御装置4内
のEWステージ設定回路に印加され、EWステー
ジレジスタに命令がセツトされてベクトルレジス
タ5に対するライト段階の処理が開始されること
になる。これによれば例えばマルチプロセツサ方
式における主記憶装置からのデータ読出しのとき
のように、アクセス要求後のベクトルレジスタに
対するライト段階のタイミングが種類の条件によ
り不定の場合でも処理部の方からの指示にもとづ
き行なうので、最適の時期に書込処理を行なうこ
とができる。
以上説明の如く結局本発明によれば命令制御装
置における命令実行段階の管理手段をパイプライ
ン構造にして命令情報をオーバラツプして保持す
ることができるように構成するとともに、制御処
理部からの命令実行指示タイミング信号により命
令情報を伝達するようにしたので、実際の制御処
理状態に応じた最適のデータ処理を行なうことが
できる。
なお上記説明では加算命令や主記憶装置からの
データ読出しの場合について説明したが、本発明
は勿論これらのみに限定されるものではない。
【図面の簡単な説明】
第1図はベクトル演算装置の構成図、第2図乃
至第4図はその動作説明図、第5図は従来のベク
トル演算装置の問題点の説明図、第6図は上記問
題点を改善した場合の動作説明図、第7図は本発
明の一実施例構成、第8図はその動作説明図、第
9図は本発明の他の実施例である。 図中、1は主記憶装置、2は主記憶制御装置、
3は記憶制御装置、4は命令制御装置、5はベク
トルレジスタ、6は演算処理部、7はERステー
ジ設定回路、8はERステージレジスタ、9は
EWステージ設定回路、10はEWステージレジ
スタ、11,12はデコーダ、13はベクトルレ
ジスタ、14は演算処理部、20は中央処理装
置、21はチヤネルプロセツサをそれぞれ示す。

Claims (1)

  1. 【特許請求の範囲】 1 パイプライン構造を有する演算処理手段また
    は記憶データ処理手段と上記演算処理手段または
    記憶データ処理手段におけるデータ処理を制御す
    る命令制御装置を具備しベクトル命令を処理する
    データ処理装置において、 上記命令制御装置の演算実行命令情報を保持す
    るステージ・レジスタ、ステージ設定回路、命令
    デコーダ等を具備する演算制御実行ステージに演
    算制御実行命令情報を保持する複数の演算制御実
    行命令保持手段を設けてこの演算制御実行ステー
    ジを複数のステージに分割するとともに、上記演
    算処理手段または記憶データ処理手段から伝達さ
    れる制御信号にもとづき上記演算制御実行命令保
    持手段に演算制御実行命令を保持させるようにし
    たことを特徴とする命令制御装置。
JP8611180A 1980-06-25 1980-06-25 Instruction control device Granted JPS5710873A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8611180A JPS5710873A (en) 1980-06-25 1980-06-25 Instruction control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8611180A JPS5710873A (en) 1980-06-25 1980-06-25 Instruction control device

Publications (2)

Publication Number Publication Date
JPS5710873A JPS5710873A (en) 1982-01-20
JPS6116113B2 true JPS6116113B2 (ja) 1986-04-28

Family

ID=13877584

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8611180A Granted JPS5710873A (en) 1980-06-25 1980-06-25 Instruction control device

Country Status (1)

Country Link
JP (1) JPS5710873A (ja)

Also Published As

Publication number Publication date
JPS5710873A (en) 1982-01-20

Similar Documents

Publication Publication Date Title
US4896259A (en) Apparatus for storing modifying data prior to selectively storing data to be modified into a register
US5168571A (en) System for aligning bytes of variable multi-bytes length operand based on alu byte length and a number of unprocessed byte data
US5293500A (en) Parallel processing method and apparatus
US4740893A (en) Method for reducing the time for switching between programs
JPS6313215B2 (ja)
JPH04367936A (ja) スーパースカラープロセッサ
JPS6217252B2 (ja)
JPS6239780B2 (ja)
JPH0374434B2 (ja)
JPH0348536B2 (ja)
JPS623461B2 (ja)
JPS6116113B2 (ja)
US5276853A (en) Cache system
JPS6116112B2 (ja)
JPS6161416B2 (ja)
JPS6116114B2 (ja)
US5220670A (en) Microprocessor having ability to carry out logical operation on internal bus
JPS6116111B2 (ja)
JPS6134188B2 (ja)
JPS60108973A (ja) 配列要素の最小値および最小要素の要素番号を求める方法
JPH01116702A (ja) シーケンスコントローラ
JPH0412502B2 (ja)
JPS595354A (ja) デ−タ処理装置
KR950004227B1 (ko) 정보처리시스템
JPH0338613B2 (ja)