JPS62262141A - データ処理装置 - Google Patents

データ処理装置

Info

Publication number
JPS62262141A
JPS62262141A JP10464186A JP10464186A JPS62262141A JP S62262141 A JPS62262141 A JP S62262141A JP 10464186 A JP10464186 A JP 10464186A JP 10464186 A JP10464186 A JP 10464186A JP S62262141 A JPS62262141 A JP S62262141A
Authority
JP
Japan
Prior art keywords
instruction
stage
data
address
result
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
JP10464186A
Other languages
English (en)
Other versions
JPH0827720B2 (ja
Inventor
Yoichi Shintani
洋一 新谷
Akira Yamaoka
山岡 彰
Kazunori Kuriyama
和則 栗山
Toru Shonai
亨 庄内
Eiki Kamata
釜田 栄樹
Kiyoshi Inoue
潔 井上
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 JP61104641A priority Critical patent/JPH0827720B2/ja
Publication of JPS62262141A publication Critical patent/JPS62262141A/ja
Publication of JPH0827720B2 publication Critical patent/JPH0827720B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔発明の利用分野〕 本学明はパイプライン方式のディジタルコンピュータに
関する。
〔従来の技術〕
このコンピュータでは各命令の実行過程を複数のステー
ジに分け、異なる命令の異なるステージを並列に実行す
ることにより、実質上複数の命令を並列に実行する。
しかし、ある命令Bの処理に必要なデータが、先行する
命令Aが指定する演算結果を利用して求める場合には、
その演算結果が確定するまで命令Bの実行を遅延しなけ
ればならない、たとえば命令Aが実行されるとペースレ
ジスタ又はインデックスレジスタが書きかえられ、しか
も命令Bはそのペースレジスタ又はインデックスレジス
タの内容と命令B内に含まれるアドレス情報を加算して
主メモリアクセスのためのアドレスを計算する場合がこ
れに相当する。このように、先行する命令Aの演算結果
を用いて命令Bの実行のためのアドレスを決めなければ
ならない状態をアドレスコンフリクトがあると呼ぶ、こ
の場合、命令Bのアドレス計算ステージは命令Aの演算
結果がインデックスもしくはペースレジスタに書き込ま
れるまで遅延される。
特開昭54−41641で開示されているように、従来
では、この遅延を少なくするためには、すべての命令が
必要とする演算を実行できる主演算装置とは別の一部の
命令が要求する簡単な演算のみを実行できる従演算装置
とを設けた。この際従演算装置は構造が比較的簡単なた
めにペースレジスタ又はインデックスレジスタを含む汎
用レジスタの近くに設けられ、主演算装置はその構造が
複雑で回路規模が大きくなるため汎用レジスタからより
遠くに設けられる。
従って主演算装置と従演算装置とが同時に起動されたと
しても、従演算装置が汎用レジスタの近くに設けられて
いるために、演算に必要なオペランドを汎用レジスタか
らより早く供給され、したかって従演算装置がより早演
算結果を出力する。
したがって−1命令Bのアドレス計算を従演算装置の出
力を用いるならば、命令Bのアドレス計算は。
主演算装置の出力を用いて行うより早く開始できる。こ
うして、アドレスコンフリクトが生じた命令Bのアドレ
ス計算の遅延を少なくしている。すなわち、従演算f装
置によりアドレスコンフリクトを早期に解消することに
より処理の高速化を図っている。
同じ問題が条件付分岐命令のときにも生じる。
この命令(以下ではBC命令と呼ぶ)の演算実行サイク
ルにおいて、そのときの条件コードに基づき分岐成功か
否かの判定が行われる。したがって分岐命令に先行する
演算が条件コードを変更する命令のときには、この先行
命令の演算が終了し。
条件コードが設定されるまで分岐判定ができない。
このように、先行する命令の条件コード設定の後にBC
命令の分岐判定をしなければならない状態を条件フード
コンフリクトがある状態と呼ぶ、従来技術のように、従
演算装置で求められた条件コードを用いてBC命令の分
岐判定をすることにより、BC命令の分岐判定を早める
ことができる。
〔発明が解決しようとする問題点〕
しかしながら、上記従来技術においては、従演算装置に
て演算を行う命令として、メモリーデータをオペランド
とする命令をも含めるために、従演算装置にて演算を行
うステージをメモリーデータの読み出しが完了した後の
ステージに設定しでおり、このため例えば演算数が全て
レジスタに置かれる命令のように本来命令の解読ステー
ジにて演算数を読み出し演算を行うことのできる命令で
あっても、該演算が遅いステージにおいてしか開始でき
ず、従ってアドレスコンフリクトや条件分岐命令を十分
高速化できないでいた。
本発明の目的は、かかる問題点を解決し、アドレスコン
フリクトや条件分岐命令処理をより一層高速化し、もつ
とより処理速度の大きい情報処理装置を提供することに
ある。
〔問題点を解決するための手段〕
上記目的は、メモリオペランドを必要としない命令を識
別する手段、該命令の演算を行うことのできる第2の従
演算手段、′該第2の従演算手段に対してオペランドを
供給する従演算データ供給手段、アドレスコンフリクト
もしくは条件フードコンフリクトが発生した場合、該第
2の従演算手段もしくは他の演算手段にて必要な演算結
果もしくは条件コードが求まるまで、それを必要とする
命令の所定のステージの完了を禁止する手段と、仮に第
2の従演算手段にて必要な演算結果もしくは条件コード
が求まった場合にこれを必要とする命令Bのステージの
処理手段に供給する従演算結果供給手段を設けることに
より達成される。
〔作用〕
命令Aの解読ステージにおいて、上記識別手段が命令A
をメモリオペランドを必要としない命令として識別する
と、直ちに該従演算データ供給手段が例えば汎用レジス
タからオペランドを読み出し、これを用いて該第2の従
演算手段が演算を行う、該従演算データ供給手段の動作
ステージは。
メモリ読み出しがないため、主演算器へのWiL算デー
タ供給手段の動作ステージより早いステージに設定でき
る。ここで後続命令Bが命令Aとアドレスコンフリクト
もしくは条件コードコンフリクトを発生している場合、
該禁止手段は該従演算手段にて演算結果もしくは条件コ
ードが求まるまで命令Bの所定のステージの完了を禁止
し、求まった時点で該演算結果もしくは条件コードを命
令Bの所定のステージの処理に用いるように該従演算結
果供給手段が作用する。一方もし命令Aがメモリオペラ
ンドを用いる命令であった場合には、該禁止手段は主演
算手段にて演算結果もしくは条件コードが求まるまで命
令Bの所定のステージの完了を禁止するので、命令Bは
常に正しいデータを用いることができ、よって誤動作す
ることはない。
〔実施例〕
以下1本発明の一実施例を第1図により説明する。第1
図は本発明を適用したパイプライン型情報処理装置の全
体構成である。1は命令ユニットIUであり、命令の先
読み、解読、オペランド読み出しを行う、2は記憶ユニ
ットSUであり、プログラムやデータを格納する主記憶
や、キャッシュ、入出力装置(図示せず)とのデータの
やりとり等を制御する回路から成り、従来技術により構
成される。3は演算ユニットEUであり、演算及び結果
の書き込みを制御し、従来技術により構成される。4,
5は命令バッファIBRO,IBR1であり、SUから
読み出した命令列を格納する。
通常IBROに現在処理中の命令列を格納するが、分岐
命令が解読されるとその分岐先命令列がSUから読み出
され、IBRIに格納される。もし分岐が成立すると、
IBRI内の命令列を処理し、IBROの内容は無効化
される。これらの命令読み出し制御は従来技術で構成さ
れる。命令列は、SUから線6を介り、てrBRo、I
BRIに送られる。IBRO,IBRIの内容は線7.
8を介してセレクタ9に送られる。セレクタ9は、フリ
ップフロップFF−10から信号11を介して送られる
ストリーム番号に従って、IBRO。
IBRIのいずれかを選び、線12を介して命令レジス
タIR−13に送出する。命令レジスタ13は解読中の
命令を保持する。13の内容は線14を介してデコーダ
DEC−15に送られる。
以下では、説明の都合上、日立制作所のMシリーズアー
キテクチャを前提とすると、典型的な命令フォーマット
は第2A〜2C図のようになる。すなわち、ロード命令
り等のRX形式命令は第2A図のように32ビツトから
なり、ビットOがら7は命令の種類を表すす02部、ビ
ット8から11は第1オペランドの格納されるレジスタ
番号を示すR1部、ビット12から15及び16から1
9は第2オペランドアドレスを計算するためのインデク
スレジスタ及びペースレジスタ番号を示すX2及び82
部、そしてビット20から31は第2オペランドアドレ
スを計算するための変位D2部である1条件分岐命令B
Cは第28yAにょうに32ビツトから成り、ビット8
がら11が分岐成立条件−指定するマスク部Mzとなる
点と、アドレス計算の結果がオペランドでなく、分岐先
命令′のメモリ上の位置を表わす点を除いてL命令と同
じである。加算命令ARや比較命令CRのようなRR形
式命令は第2C図のように16ビツトから成り、02部
、Rx部はL命令と同じ、またビット12から15まで
が、第2オペランドの格納されるレジスタ番号を指定す
るRx部である。各命令の詳細な動作は同アーキテクチ
ャの解説書を参照されたい、再び第1図の説明に戻る。
16はIR−13内の命令の命令アドレスを保持する命
令カウンタICであり、線17を介して命令解読完了信
号DSが送られると、線18を介してDEC−15から
送られる命令長に従って命令カウンタをインクリメント
し、また纏19を介して分岐成立信号BC丁KNが送ら
れると、線20を介してアドレス加算器AA−21から
送られる分岐先命令アドレスを取り込む、22.23は
命令の解読情報を保持するパイプラインレジスタREG
であり、簡単のため命令解読が行われる度に。
DEC−15の内容をこの順に転送していくとする。2
4は汎用レジスタGRがあり、I R−13から、RX
形式命令のRgX工、Rx部に相当するレジスタ番号指
定部分が順に線25,26.27を介してRRz t 
RX z * RB xポートに入力され、これらで指
定されるレジスタの内容が、順にRt 。
Xtw Bzボートに出力されろ。REG  23には
次に演算を行うべき命令の解読情報が保持されているが
、このうち、RR形式命令のR1,Rx部に相当するレ
ジスタ番号指定部分が順に線28゜29を介して0R−
24のQRI、QR二ポートに入力され、これらで指定
されるレジスタの内容が順にDRz 、DRzポートに
出力される。30はセレクタSELであり、GR−24
のx2ポートから線31を介して送られるデータと、D
ステージ先行演算器PAD−32から線33を介して送
られるデータのいずれかを、線34の値に従って選択し
、線35を介してAA−21のXsボートに入力する。
同様にセレクタ5EL−36は、GR−24の82ポー
トから#1137を介して送られるデータと、線33上
のデータのいずれかを、線38の値に従って選択し、線
39を介してAA−21のBzボートに入力する。IR
−13のうち、RX形式命令のDa部に相当する部分が
腺40を介してAA−21のDzポートに入力される。
AA−21は、Xs 、Bs及びD2ポートニ入力され
た値を該アーキテクチャに従う方法で加え、結果を線2
0を介して5U−2、IC−16、P、AD−32に送
出する。43はアドレスラップアラウンド制御回路AW
Cであり、DEC−15及びREG−22から線41.
42を介して送られる命令の解読情報及び、線17を介
して入力される命令解読完了信号DSから、アドレスラ
ップアラウンド信号AWX、AWB、AWを生成し順に
、線34.38.44を介して5EL−30゜5EL−
36,アドレスコンフリクト検出回路ACC−45に送
出する。ACC−45は例えば特開q 6o−3to’
r7号(パイプライン型のデータ処理袋!りに示すよう
に構成することができ、このため、図示はしていないが
DEC−15,REG−22゜REG−23から命令解
読情報を、また後述のEU−3から演算制御情報を入力
し、アドレスコンフリクト信号ACONFを信号線46
を介して、デコード成功決定回路DSC−47に送出す
る。
48はDステージ判定制御回路DJCであり、DE(ニ
ー15から後述の命令解読情報を線63を介して、また
線17を介してDs倍信号入力し。
条件分岐命令のDステージ判定指示信号DJと。
PAD−32から線49を介して出力される条件コード
CCの有効性を示す信号VALIDを、線5゜を介して
CCコンフリクト検出回路B CC−51のため図示は
していないが、DIC−15から命令解読情報、EU−
,3から条件コードと演算制御IL DSC−47から
DS信号を入力し、条1件コードコンフリクト信号CC
0NFを線52を介してD S C−474,:、また
、分岐成立信号BCTKNを線19を介してFF−10
及びIC−164,:送出する。DSC−47は命令の
解読完了を示す俳号DS生成する回路であり、従来技術
により構成される。DS信号線17を介して、IR−1
3゜REG−22,REG−23,AWC−43゜DJ
C−48及びPAD−32に送出される。
PAD−32は本発明において新たに設けられたもので
、主記憶に置かれていないデータのみを用いて演算の行
える全ての命令もしくはその一部の演算を行い、演算結
果とその条件コードを求めることのできるものである。
このため、GR−24のXs 、B工、Rtボートの出
力が、線31゜37.53を介して、命令アドレスがI
C−16から線62を介して、アドレス計算結果がAA
−21から線20を介して、またDEC−15から命令
コードOP、PAD−32で演算可能な命令であること
を示す命令解読情報PA、そのうち特に条件コードを設
定する命令であることを示す解読情報CCP^を線54
を介して、またDS信号を線17を介して入力し、演算
結果を線331条件コードを線49に出力する。PAD
−32の演算結果はEU−3内のワークレジスタWAR
−57に送られ、従来技術に従って0R−24に書き込
まれる。
また、PAD−32からの条件コードはEU−3内の条
件コードレジスタCC−64に送られる。
EU−3には演算制御回路IシC−55.ワークレジス
タWBR−56,WAR−57,演算器ALU−58.
条件コードレジスタCC−64があり、これらは従来技
術で構成される。EC−55には命令解読情報が線59
を介して送出され、結果を格納するレジスタ番号WAが
線60を介して0R−24のWAポートに送出される。
また、ALU−58から出力される演算結果は線61を
介して0R−24のWDポートに送出される。また結果
の条件コードはCC−64に線65を介して送出される
。GR−24ではEC−55からの書き込み指令を受け
るとWDポートに入力されたデータがWAボートに入力
された番号のレジスタに書き込まれる。なお、結果を主
記憶に格納すめ命令の場合、ストアアドレスとストアデ
ータがEU−3から5U−2に送出されるが1本発明と
は直接関係ないので説明を省略する。
第3A図は本発明を適用して高速化されるアドレスコン
フリクトの生じている命令列の例である。
AR全命令汎用レジスタGR13の内容とG R0の内
容を加算し、結果をGRI3に格納する0次のL命令は
、GR2とGRI3の内容を加えて得られるアドレスか
ら始まる主記憶上のオペランドをGRIに格納する。こ
こで、L命令のペースレジスタが、AR全命令より設定
されるため、その完了までL命令のアドレス計算は遅延
される。いわゆるアドレスコンフリクトが発生している
。この時間関係を第4A図に示す、第4A図では横軸が
パイプラインのステージを単位とした時間、縦軸が命令
列の処理を示す、L命令のステージはり。
A、L、E、Pの5ステージから成る。Dステージは命
令解読及びアドレスレジスタ読み出し、Aステージはア
ドレス計算、Lステージは主記憶あるいはレジスタから
のオペランドもしくは分岐先命令読み出し、EはEU−
3による演算ステージ。
Pは結果の書き込みステージである。AR全命令はオペ
ランドは全てGR−24に格納されているため、AやL
ステージは不要のはずであるが、パイプライン方式ゆえ
L命令等、主記憶参照を行う命令のステージに合わせ、
A、Lステージを設けている。従って、従来技術によれ
ば、AR全命令結果が得られ、0R−24に格納される
のは同図の85ステージとなり、これを用いるL命令の
DステージはS6からしか開始できず、4ステージのパ
イプラインの空きを生じてしまう0本発明によればAR
全命令演算はPAD−32にて行い。
結果を直接AA−21に転送するため、図のように空き
なく処理が行え、よって4ステージの高速化が達成され
る。
第3B図は本発明を適用して高速化される、条件コード
コンフリクトの生じている命令列の例である。比較命令
CRはGROとGRIの内容を比較し、結果に従い条件
コードを設定する1次の条件分岐命令BCは、条件コー
ドの値がOlすなわちCR全命令上記2オペランドが等
しいことが検出された場合に、主記憶上のA番地上のS
T命令に分岐する0本例では分岐不成立であるとし、B
C命令に引き続くし命令が処理されるものとする。さて
この場合も、CR全命令よる条件コード設定までBC命
令による分岐判定が下せず、従ってL命令を実行すべき
か、ST命令を実行すべきか決定できないために、これ
らいずれの命令も処理が開始できないものとする。これ
らの時間関係を第4B図に示す、第4B図も第4A図と
同様の時間線図である。従来技術によれば、CR全命令
よって条件コードの設定されるのは、そのPステージで
あり、分岐判定はステージS6にて行われる。従って、
L命令はS7より処理を開始する。
よって、L命令には4ステージの空きが生ずる。
−古本発明においては、CR全命令よる条件コードは、
PAD−32によりそのAステージにて設定されるため
、BC命令による分岐判定はS2ステージにて行われ、
よってL命令は遅れなしで832ステージから処理を開
始することができ、4ステージの高速化が達成される。
第5図はアドレスラップアラウンド制御回路AWC−4
3の詳細を示す、DEC−15から線41を介して入力
される命令解読情報は、命令のB2.X2部と、該命令
がインデックスレジスタを指定することを示すXENB
L信号及びペースレジスタを指定することを示すOf!
NBt信号である。また信号線42を介してREG−2
2から入力される解読情報は、命令のR1部該命令がP
AD−32にて演算可能であることを示す信号PAであ
る。501は比較回路CMPであり、レジスタ番号R1
とXtの比較を行い一致していたら線502をオンとす
る。503はフリップフロップFFであり、DS信号を
1ステージ、すなわち1命令分遅延させる。FF−50
3がオンの時、REG−22内に有効な命令が格納され
ていることになる。
ANDゲート504には、FF−503内にあるDS信
号が線505を介して、また上記PA。
Xl!NRL信号及び、CMP−501(7)結果が線
502を介して入力され、その論理和がAWX信号34
として出力される。同様にCMP−506はレジスタ番
号R1と82の比較を行い、一致していたら線507を
オンとする。ANDゲート508には、DS信号が線5
05を介して、また上記PA。
・BENBL信号及びCMP−506の結果が線507
を介して入力され、その論理和かAWB信号38として
出力さる。ORゲート509は、AWX及びAWB信号
の論理和をAW信号44として出力する。
第6図はDテージ判定制御回路DJC−48の詳細を示
す、DEC−15から入力される命令解読情報としては
、条件分岐命令であることを示すBC,上記PA、条件
コードを設定するタイプの命令であることを示すCCC
HGである。601はANDゲートであり、DS信号と
BC信号の論理和を、Dステージ分岐判定信号DJとし
て出力する。602はANDゲートであり、 CCCH
G信号とDS信号の論理和を、線603を介してフリッ
プフロップ604に送出する。FF−604は、線60
3がオンとなった時に、PA倍信号とり込み、VALI
D信号を出力する。すなわち、FF−604は、PAD
演算可能な条件コード設定命令がDステージを完了した
時にオンとなり、PADで演算不可能な条件コード設定
命令がDステージを完了した時にオフとなるため、PA
Dで得られた条件コードが有効か否かを示すVALID
信号に他ならない。
第7図はDステージ先行演算器PAD−32の詳細を示
す、線54を介してDEC−15から入力される命令解
読情報としては、02部、PADで演算可能なタイプの
命令であることを示す信号PA、そのうちさらに条件コ
ードを設定するタイプの命令であることを示す信号CC
PAである。701は演算器であり、図中に記載されて
いる二一モニックの命令もしくは一部の演算を実行する
ことができ、従来技術で構成される。このため、701
には、IC−62,アドレス20.Xz−31゜R*−
53、及びOPが入力され演算結果及び条件コードが線
702,703を介して、レジスタREG−704,R
EG−705に送出する。なお701において[5AL
R及びBAL命令については、本来の命令仕様では、命
令長コード、プロゲラ11マスク、条件コードが結果の
先頭バイ1−となるが、この命令の結果を後続命令がア
ドレスレジスタに用いる場合は、該アドレスは24ビッ
ト幅であり、エムの生成のために上記先頭バイト情報は
用いられない、従って、これら2命令については、70
2に出力される結果の先頭バイトは任意とする。
706はANDゲートであり、CCPA信号とDS信号
の論理和を線707を介してRF:G−705に送出す
る、REG−705は線707がオンの時線703の値
をとり込む、すなわちREG705は、701にて演算
可能な条件コード設定命令がその演算結果の条件コード
を生成した時にそれをとり込む、REG−705の出力
はCC−49である。708はANDゲートであり、P
A倍信号DS信号の論理和を縦709を介してREG−
704に送出する。REG−704は、線709がオン
の時線702の値をとり込む、すなわちREG−704
は、701にて演算が行われたときその結果をとり込む
、REG−704の出力はアドレスラップアラウンドデ
ータAWD−33である。
(動作) 以下では、第3A図1次に第3Bに示す命令列を本実施
例の情報処理装置で処理した時の、各部の動作を説明す
る。
第3A図で示したアドレスコンフリクト処理は次によう
に処理さ、れる。
AR全命令IR−13に格納されると、そのRs 。
Rx部がGR−24に送られ、第1オペランド、第2オ
ペランドがR1,Xtポートから出力され。
PAD−32に送出される。PAD−32ではAR全命
令02部に指定される。第1.第2オペランド間の固定
小数点加算を行い、その結果はREG−704に格納さ
れる0次に、L命令がIR−13に入ると、そのxl、
Bz部がCMP−501、CMP−506に入力され、
REG−22内にあるAR全命令R1部と比較の結果。
CMP−506の出力がオンとなる。すなわち、L命令
のペースレジスタとAR全命令変更するレジスタが一致
していることが検出される。L命令ではBENRLがオ
ンとなる。また、AR全命令はREG−22内のPA信
号オンとなり、AR全命令REG−22に入った時点で
はFF−503がオンとなるため、ANDゲート508
の出力であるAWBがオントなる。AWXはCMP−5
011’の比較により一致が見られないため、オフであ
る。
また、AW倍信号オンとなる。これによって、5EL−
36は0R−24のBzポートの出力ではなく、PAD
−32の出力、すなわち、AR全命令Dステージ先行演
算結果を選択し、AA−21のBzボートに入力する。
これにより、L命令が必要なペースレジスタの値はAR
全命令演算結果がEU−3で生成されるまで待ち合せる
ことなくPAD−32から得られ、アドレス計算が直ち
に行える。一方、AW倍信号ACC−45からのACO
NF信号をリセットする1本実施例の場合AW倍信号L
命令のDステージと同時にオンとなるため、ACONF
信号は結果的に全くオンとならない。
このため、L命令は直ちにDS信号を発行して、Dステ
ージを完了することになる。
次に第3B図で示した条件コードコンフリクト処理は次
のように処理される。CR全命令IR−13に格納され
ると、そのRx、Rx部が0R−24に送られ、第1.
第2オペランドがRx、Xzポートから出力され、PA
D−32に送出される。
PAD−32ではCR全命令02部で指定される比較を
行い、結果の条件コードをREG−705に格納する。
またDEC−15からDJC−48に送出される命令解
読情報CCCHG及びPAが共にオンとなるため、CR
全命令Dステージが完了しDS信号がオンとなると、F
F−604がセットされ、VALID信号がオンとなる
1次にL命令がIR−13に入ると、命令解読情報BC
がオンとなり、そのDS信号がオンとなった時に、DJ
信号がオンとなる。この時読に、CR全命令設定したC
Cが有効であることを示すVALIO信号がオンとなっ
ているため、CCコンフリクト検出回路BCC−51で
は、CC0NF信号をリセットする。
本実施例の場合DJ信号は、BC命令のDステージと同
時にオンとなるため、CC0NF信号は結果的に全くオ
ンとならない、また、PAD−32から送られるCCを
用いて、BCC−51は、BC命令のM1部と比較した
結果、分岐不成立であることを検出する。よってBCT
KN信号19はオフのままである、よって5EL−9は
それまでと同一のストリームを選択するので1次にはI
 R−13にはBC命令に引き続くL命令が格納される
CC0NF信号はオフであるのでL命令は直ちにDステ
ージを完了しDS信号を発行する。
以上のように動作することにより、第3A。
3B図の各命令列は、第4A、4B図の各々の後半に示
すようにパイプラインの空きなく処理される。
〔発明の変形例〕
PAD−32の機能には、固定小数点の加減算があるが
、これを上記実施例のように専用の演算器(加減算器)
を用いて構成する方法もあるが。
AA−21を用いて行う方法もある。このためには、A
A入力部に補数生成回路を設けること、AA−21にて
Dステージ先行演算を行う命令を検出した時に、該命令
の演算をAA−21にて行うのに必要なAA制御情報を
生成する回路等が必要である。
〔発明の効果〕
本発明によれば、アドレスコンフリクトや条件コードコ
ンフリクトが発生した時でもバイプラインの空きなく命
令処理を行うことができるので。
処理装置の高速化に効果がある。
アドレスコンフリクトはシステム系プログラムでは全命
令に対し、10%程度の割合で発生し。
その処理はプログラムの処理時間の約1割程度を占める
重要なものである。このうち1本発明にて高速化できる
のは、その1/3程度であるから、処理装置全体の速度
を約3%程度高速化できる可能性があると考えられる。
一方1条件コードコンフリクトはシステム系プログラム
では20〜30%程度の割合で発生し、その処理はプロ
グラムの処理時間の約2割程度を占める重要なものであ
る。
このうち本発明にて高速化できるのは、その1/48!
度であるから、処理装置全体の速度を約5%程度高速化
できる可能性があると考えられる。
【図面の簡単な説明】
第1図は本発明による情報処理装置の全体構成、   
′第3A〜3B図は、本実施例で前提とする命令フォー
マット、第3A〜3B図は1本実施例で高速化可能なア
ドレスコンフリクト及び条件コードコンフリクトを起こ
している命令列の例、第4A。 4B図は、上記命令列の従来技術及び本発明によるパイ
プライン処理ステージ、第5図はアドレスラップアラウ
ンド制御回路の詳細、第6図はDステージ判定制御回路
の詳細、第7図はDステージ先行演算器の詳細である。 1・・・命令ユニット、2・・・記憶ユニット、3・・
・演算ユニット、13・・・命令レジスタ、24・・・
汎用レジスタ、21・・・アドレス加算器、32・・・
Dステージ先行演算器、43・・・アドレスラップアラ
ウンド制御回路、48・・・Dステージ判定制御回路、
58・・・演算器。

Claims (1)

  1. 【特許請求の範囲】 1、パイプラインモードで各命令を複数のステージに分
    けて実行する情報処理装置であって、演算に必要なデー
    タとして主記憶に置かれていないもののみを用いる命令
    を識別する命令識別手段と、演算に必要なデータとして
    主記憶に置かれているものを用いる命令を含む命令グル
    ープの演算を行う第1の演算手段と、該第1の演算手段
    に対して演算データを供給する第1の演算データ供給手
    段と、該命令識別手段にて識別された命令の演算を行う
    第2の演算手段と、該第2の演算手段に対して演算デー
    タを供給する第2の演算データ供給手段と、任意の命令
    Bについて、先行する命令Aの演算結果を命令Bの所定
    のステージにおいて利用するか否かを検出する手段と、
    該検出結果が肯定的となった場合には命令Bの該所定の
    ステージの実行を、命令Aに対する演算が上記第1、第
    2の演算手段のいずれかで終了するまで禁止する手段と
    第2の演算手段で演算が終了した場合該演算結果を命令
    Bの所定のステージの処理手段に供給する従演算結果供
    給手段とを有する情報処理装置。 2、該第2の演算データ供給手段の一部として、命令の
    アドレス計算及びそのステージにて行われる処理に必要
    なレジスタデータを読み出す、レジスタ読み出し手段を
    含むことを特徴とする、第1項記載の情報処理装置。 3、該検出手段は、任意の命令Bが該先行命令Aの演算
    結果を、命令Bの演算に必要なオペランドもしくは分岐
    先命令アドレスを算出するステージにおいて利用して該
    アドレスを算出するか否かを検出する手段である第1項
    又は第2項の情報処理装置。 4、該検出手段は、任意の命令Bが該先行命令Aの演算
    結果により定められる条件コードを、命令Bの所定ステ
    ージにおいて利用して分岐成功不成功の判定を行うか否
    かを、検出する手段である第1項又は第2項の情報処理
    装置。
JP61104641A 1986-05-09 1986-05-09 データ処理装置 Expired - Lifetime JPH0827720B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61104641A JPH0827720B2 (ja) 1986-05-09 1986-05-09 データ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61104641A JPH0827720B2 (ja) 1986-05-09 1986-05-09 データ処理装置

Publications (2)

Publication Number Publication Date
JPS62262141A true JPS62262141A (ja) 1987-11-14
JPH0827720B2 JPH0827720B2 (ja) 1996-03-21

Family

ID=14386077

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61104641A Expired - Lifetime JPH0827720B2 (ja) 1986-05-09 1986-05-09 データ処理装置

Country Status (1)

Country Link
JP (1) JPH0827720B2 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57423U (ja) * 1980-06-03 1982-01-05
JPS579088A (en) * 1980-06-17 1982-01-18 Matsushita Electric Ind Co Ltd Heat controller for electric cooking device
JPS5890247A (ja) * 1981-11-25 1983-05-28 Nippon Telegr & Teleph Corp <Ntt> 情報処理装置のパイプライン制御方式

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57423U (ja) * 1980-06-03 1982-01-05
JPS579088A (en) * 1980-06-17 1982-01-18 Matsushita Electric Ind Co Ltd Heat controller for electric cooking device
JPS5890247A (ja) * 1981-11-25 1983-05-28 Nippon Telegr & Teleph Corp <Ntt> 情報処理装置のパイプライン制御方式

Also Published As

Publication number Publication date
JPH0827720B2 (ja) 1996-03-21

Similar Documents

Publication Publication Date Title
US4476525A (en) Pipeline-controlled data processing system capable of performing a plurality of instructions simultaneously
EP0155211B1 (en) System for by-pass control in pipeline operation of computer
US5293500A (en) Parallel processing method and apparatus
JPH0242569A (ja) ベクター処理システムに用いる文脈スイッチング方法及び装置
JPH0545985B2 (ja)
JP2620511B2 (ja) データ・プロセッサ
EP0094535B1 (en) Pipe-line data processing system
US4385365A (en) Data shunting and recovering device
EP0093430A2 (en) Pipeline data processing system
US5253349A (en) Decreasing processing time for type 1 dyadic instructions
US4677549A (en) Pipelined data processor system having increased processing speed
JPH10143365A (ja) 並列処理装置及びその命令発行方式
US4707783A (en) Ancillary execution unit for a pipelined data processing system
US5276853A (en) Cache system
JPS62262141A (ja) データ処理装置
JPS6238953A (ja) 部分書込みアクセスを圧縮する主記憶装置
JPS60129839A (ja) 情報処理装置
JPS5896345A (ja) 階層型演算方式
JP2824484B2 (ja) パイプライン処理計算機
US6081886A (en) Holding mechanism for changing operation modes in a pipelined computer
JPH0816392A (ja) コンピュータシステム、コンピュータシステム動作方法、及びコンピュータ命令シーケンス実行方法
JPH0248733A (ja) 情報処理装置
US6289439B1 (en) Method, device and microprocessor for performing an XOR clear without executing an XOR instruction
JP2583614B2 (ja) ベクトル演算装置
JPS60178540A (ja) 情報処理装置におけるバイパス制御方式