JPS63148330A - デ−タ処理装置 - Google Patents

デ−タ処理装置

Info

Publication number
JPS63148330A
JPS63148330A JP29607286A JP29607286A JPS63148330A JP S63148330 A JPS63148330 A JP S63148330A JP 29607286 A JP29607286 A JP 29607286A JP 29607286 A JP29607286 A JP 29607286A JP S63148330 A JPS63148330 A JP S63148330A
Authority
JP
Japan
Prior art keywords
data
arithmetic
register
address
instruction
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
JP29607286A
Other languages
English (en)
Inventor
Takayuki Noguchi
野口 孝行
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
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 filed Critical NEC Corp
Priority to JP29607286A priority Critical patent/JPS63148330A/ja
Publication of JPS63148330A publication Critical patent/JPS63148330A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Abstract

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

Description

【発明の詳細な説明】 (産業上の利用分野〕 本発明は高速化データ処理装置に関し、特に演算レジス
タの内容を更新しt後に参照するとき、先行命令の演算
結果を後続命令のオペランドとして直接供給する方式に
関する。
(従来の技術) この種のデータ処理getでは演算レジスタのバイパス
によって演算の高速化を図っている。
第2図は、斯かるデータ処理装置の一例を示すブロック
図である。第2図において、10は命令制御装置、20
は主記憶装置、30は演算レジスタ、31〜35は書込
みアドレスレジスタ、36は読出しアドレスレジスタ、
40は演算レジスタバイパス制御回路、41.42はそ
れぞれデータセレクタ、50は演算処理装置、51〜5
6はそれぞれデータレジスタ、57は論理比較回路、5
8は加減算回路、59は正規化回路である。
第2図に示すデータ処理装置では主記憶装置20、ある
いは演算レジスタ30に格納されているデータに対して
、命令制御装置10で解読された演算命令に応じた演算
処理を演算処理装置50によって実行し、演算結果を再
び主記憶装置20あるいは演算レジスタ30に格納する
演算レジスタ30は複数飴のデータ全格納することが可
能であり、命令制御装置10からの読出しアドレス情報
は読出しレジスタ36によって保持し、命令制御装置l
Oからの書込みアドレス情報は演算処理装置50による
演算処理の進行に伴って書込みレジスタ31〜35を順
次伝播し、最終的には書込みレジスタ35に格納される
演算処理装置50はデータレジスタ51〜561論理比
較回路57、加減算回路58、および正規化回路59か
ら構成され、主記憶装置20および演算レジスタ30の
間のデータ転送、論理演算、固定小数点データの刃口減
算、および浮動小数点データの加減算’を実行できる。
データセレクタ41.42はそれぞれ演算処理装置50
の内部の演算データを選択し、演算レジスタ30からの
読出しデータと差換えて演算処理装置50に供給する几
めのセレクタであり、演算レジスタバイパス制御回路4
0はデータセレクタ41.42を制御する。
次に、第2図に従ってデータ処理装置の一般的な命令シ
ーケンスの実行を説明する。
第3図に示す命令は主記憶fi[20に格納されている
データを演算レジスタ30に転送する文めのLo ad
命令、ならびに主記憶tjlt20および演算レジスタ
30にそれぞれ格納されている2つのデータを加算して
、演算レジスタ30に格納するためのAdd命令の組合
せである。
最初のLo ad命令によって更新された演算レジスタ
30の内容ル1を次のAdd命令によって参照し、その
次のLoad命令によって更新された演算レジスタ30
の内容R,2が最後のAdd命令によって参照される。
1番目のLoad命令と2番目のLoad命令との間、
ならびに3番目のLoad命令と4番目のAdd命令と
の間で演算レジスタ30の内容のバイパスが起る。各命
令はそれぞれ主記憶装置20あるいは演算レジスタ30
からデータを絖出丁マシンサイクル(以後、Lサイクル
と称する。〕、論論理比較回路7にエフ論理演算あるい
は浮動小数点加減算における仮数の桁合せ七行うマシン
サイクル(以後、Gサイクルと称する。〕、加減算回路
58にエフ固定小数点データ同志の加減算あるいは浮動
小数点データの仮数の7111減算を行うマシンサイク
ル(以後、Eサイクルと称する。〕、正規化回路59に
より浮動小数点データの正規化を行うマシンサイクル(
以後、Nサイクルと称する。〕、ならびに演算結果を主
記憶装置30あるいは演算レジスタ30に格納するマシ
ンサイクル(以後、Sサイクルと称する。)の5マシン
サイクルで実行される。
第2図の情報処理装置では、異なる命令の異なるマシン
サイクルを独立、ま九は同時に動作することができるの
で、命令を1マシンサイクルで実行して行くことも命令
の組合せで可能である。
第3図に示す命令では% 2つのLoad命令で更新さ
れる演算レジスタ30の内容R1、R2をそれぞれ直後
のAdd命令で参照しているため、Add命令によって
演算レジスタ30からR+1およびR2を読出してい九
のでは第4図(a)に示すようなタイムチャートになる
。しかし、5!際にはLoad命令で演算レジスタ30
の内容全更新する九め、主記憶装置20から読込まれ几
データはそのまま演算結果として確定されるので、後続
するAdd命令に対してデータレジスタ52→データセ
レクタ41→データセレクタ42の経路を利用して供給
することができる九め、タイムチャートは第4図(b)
に示すようになる。
続出しアドレスレジスタ36の内容と書込みアドレスレ
ジスタ32〜35の内容とをもとにして、バイパス制御
回路40により、演算レジスタ30の更新および参照の
関係t−調べ、これによってデータセレクタ41.42
’i制御している。
演算処理装置50は、与えられた入力データに対して命
令制御装置1110からの指示通りに演算′!il−笑
行しているだけであり、入力データが正しいデータであ
るか、あるいは不正なデータであるか?判断するための
手段を備えていない。
この究め、不正なデータに対しても正しいデータが入力
され友かのように振舞い、誤つ比演算結果を出力する。
例えば、演算レジスタバイパス制御回路10の誤動作に
より、第3図の4番目の命令Addによる演算レジスタ
30の内容几2のオペランドとして、3番目の命令Lo
adに対する演算結果の代シに、1番目の命令Load
に対する演算レジスタ30の内容R1への書込みデータ
を入力しても誤りは検出されない。
(発明が解決しようとする問題点ン 上述した従来のデータ処理装置では、演算レジスタバイ
パス制御回路の誤動作により不正なデータが後続命令の
入力オペランドとしてバイパスされることがあり、この
ような場合には演算処理結果はデータ化けどなって現れ
、正常な演算処理のなかに埋没してしまうと云う欠点が
ある。
すなわち、上記のような誤動作は最終的な演算処理結果
を丹念にチェックすることによって始めて発明されろ場
合が多く、通常は正しい演算処理結果として取扱われて
しまう危険性があると云う欠点がある。
本発明の目的は、演算レジスタをバイパスして後続命令
にデータを供給する几め、複数組のデータバス上のデー
タのそれぞれに演算レジスタのアドレス情報を付加する
ことにより、データ化けを起丁ことがないように構成し
tデータ処理装置を提供することにある。
(問題点を解決するための手段〕 本発明によるデータ処理装置は複数語の演算レジスタと
、演算レジスタバイパス制御回路と、複数個のアドレス
レジスタと、セレクタと、比較回路と、フリップフロッ
プとを具備して構成し几ものである。
演算レジスタバイパス制御回路は、先行する第1の演算
命令により演算結果が格納されている第1のアドレスと
、後続する第2の演算命令により参照される第2のアド
レスとが一致したときに第1の演算命令の最終的な演算
結果として確足したデータを第2の演算命令のオペラン
ドデータとして使用し、複数組のデータバスにより演算
レジスタのアドレスをバイパス制御回路するように制御
するためのものである。
複数個のアドレスレジスタは、複数組のデータバスの各
データに対応して演算レジスタのアドレスを保持する九
めのものである。
セレクタは、複数組のデータバス上のデータと各データ
に対応する演算レジスタのアドレスのなかから第2の演
算命令のオペランドデータか、あるいはオペランドデー
タに対応する演算レジスタのアドレスかを選択する几め
のものである。
比較回路は、第2の演算命令により参照される第2のア
ドレスと、セレクタによって選択されたアドレスと金比
収するためのものである。
フリップフロップは、比較回路において不一致が検出さ
れ几ときに複数組のデータバスを経由してデータを送る
のを禁止する信号を送出するためのものである。
(笑施例) 次に、本発明について図面を参照して説明する。
第1図に、本発明によるデータ処理装置の一笑施例を示
すブロック図である。第1図において、43.44はそ
れぞれセレクタ、37.38はそれぞれアドレスレジス
タ、39は比較回路、60はフリップフロップである。
いっぽう、命令制御装置10.主記憶装[120、演算
レジスタ30.演算レジスタ30の書込みアドレスレジ
スタ31〜35%演算レジスタ30の読出しレジスタ3
6、演算レジスタ30のバイパス制御回路40.および
演算処理装置50に関しては、第2図に示す従来技術に
よるデータ処理装置におけるものと同様な構成を有する
セレクタ43は演算処理装置50の内部の演算データを
選択すると同時に、各データに対応する演算レジスタ3
0のアドレスとして書込みアドレスレジスタ32〜35
の内容を選択してセレクタ44に供給するためのもので
ある。セレクタ44は演算レジスタ30の読出しデータ
、あるいはセレクタ43からの選択されたデータのうち
の一方を選択し、演算処理装[50に入力データとして
供給するとともに、セレクタ43からのアドレス情報、
あるいは読出レアドレスレジスタ36の一方を選択して
出力する几めのものである。
アドレスレジスタ37は演算レジスタ30の読出しレジ
スタ36の内容を受け、演算命令が参照しようとする演
算レジスタ30のアドレスを保持するtめのものである
。アドレスレジスタ38はセレクタ44のアドレス情報
を受けて、実際に演算処理装置50の入力データとして
供給された演算レジスタ30のアドレス、あるいは入力
データを格納しようとしている演算レジスタ30のアド
レスを保持するためのものである。
比較回路39は、アドレスレジスタ37.38にそれぞ
れ保持されているアドレス情報を比較し、一致信号を送
出する。フリップフロップ60に上記一致信号を入カレ
、不一致を検出しているときにINH信号を演算レジス
タバイパス制御回路40へ送出するためのものである。
第1図に示すデータ処理装置では、演算レジスタバイパ
巧制御@路40の誤動作により第3図に示す4番目の命
令Addに対する演算レジスタ30の内容R2のオペラ
ンドとして、3番目の命令Loadに対する演算結果、
すなわちデータレジスタ52の内容の代りに1番目の命
令Loadに対する演算レジスタ30の内容1(+1へ
の書込みデータ、すなわちデータレジスタ55の内容を
セレクタ44.43で選択する。これにより、アドレス
レジスタ38には演算レジスタ30の内容R2のアドレ
スの代りに、演算レジスタ30の内容R1のアドレスが
データの場合と同様に選択され、マシンサイクル5でセ
ットされる。このとき、アドレスレジスタ37には演算
レジスタ30の内容R2のアドレスがセットされている
ため、比較回路39より送出される一致信号が不一致全
検出し、フリップフロップ60より演算レジスタバイパ
ス制御回路40へIN)l信号が送出されろ。
以後、第1の演算命令の最終的な演算結果として確定さ
れたデータが第2の演算命令のオペランドデータとして
使用さn、ynレジスタ3o6バイパスして供給される
複数組のデータバスを経由したデータの取込みが禁止さ
れろ。
(発明の効果) 以上説明し友ように本発明は、演算レジスタをバイパス
して後続命令に供給するため、複数組のデータバス上の
各データに演算レジスタのアドレス情報を付加すること
により、異なつ几データ間の識別が可能となるため、演
算レジスタのバイパス動作の誤Vを直ちに検出できると
云う効果がある。
上記比較結果が不一致のときには、演算レジスタをバイ
パスして後続命令に供給するための複数組のデータバス
を経由したデータを演算装置に取込むことが禁止されて
いるので、上記バイパス動作に誤りが生じても正常なデ
ータを使って演算処理を実行できると云う効果がある。
従って、従来のように原因不明のデータ化けなどが潜入
する危険性を回避することができ、演算処理結果の信頼
性、すなわちデータ処理装置の信頼性を向上させると云
う効果がある。
【図面の簡単な説明】
第1図は、本発明によるデータ処理装置の一実施例を示
すブロック図である。 第2図は、従来技術によるデータ処理装置の一例を示す
ブロック図である。 第3図は、データ処理装置で実行される命令シーケンス
の一例を示す説明図である。 第4図(a)、(b)は第3図に示す命令シーケンスを
示すタイムチャートである。 10・・・命令制御装置  20・・・主記憶装置30
・・・演算レジスタ 31〜38・・・レジスタ  39・・・比較回路40
・・・演算レジスタバイパス制御回路41〜44・・・
セレクタ 50・・・演算処理装置 60・・・フリップフロップ 特許出願人  日本電気株式会社 代理人 弁理士 井 ノ ロ    壽ylr!!J yP2図 3B 1、LoaJ   PI ”  (Men)Z、   
    Adcl      R1←  (R1)十 
<Meyn)3、    Load   RZ−(Me
n)4、     Add    R2° (R2)十
(Ment)才4図 (a) t+ tz ts t4tt; tb j7 ts t
y tie t++ ta k k ts trs−−
マシンブイクIL (b) −−マンンサイグル

Claims (1)

    【特許請求の範囲】
  1. 複数語の演算レジスタと、先行する第1の演算命令によ
    り演算結果が格納される第1のアドレスと後続する第2
    の演算命令により参照される第2のアドレスとが一致し
    たときに前記第1の演算命令の最終的な演算結果として
    確定したデータを前記第2の演算命令のオペランドデー
    タとして使用し、複数組のデータバスにより前記演算レ
    ジスタのアドレスをバイパスして供給するように制御す
    るための演算レジスタバイパス制御回路と、前記複数組
    のデータバスの各データに対応して前記演算レジスタの
    アドレスを保持するための複数個のアドレスレジスタと
    、前記複数組のデータバス上のデータと前記各データに
    対応する前記演算レジスタのアドレスのなかから前記第
    2の演算命令のオペランドデータか、あるいは前記オペ
    ランドデータに対応する前記演算レジスタのアドレスか
    を選択するためのセレクタと、前記第2の演算命令によ
    り参照される前記第2のアドレスと前記セレクタによつ
    て選択されたアドレスとを比較するための比較回路と、
    前記比較回路において不一致が検出されたときに前記複
    数組のデータバスを経由してデータを送るのを禁止する
    信号を送出するためのフリップフロップとを具備して構
    成したことを特徴とするデータ処理装置。
JP29607286A 1986-12-12 1986-12-12 デ−タ処理装置 Pending JPS63148330A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP29607286A JPS63148330A (ja) 1986-12-12 1986-12-12 デ−タ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP29607286A JPS63148330A (ja) 1986-12-12 1986-12-12 デ−タ処理装置

Publications (1)

Publication Number Publication Date
JPS63148330A true JPS63148330A (ja) 1988-06-21

Family

ID=17828748

Family Applications (1)

Application Number Title Priority Date Filing Date
JP29607286A Pending JPS63148330A (ja) 1986-12-12 1986-12-12 デ−タ処理装置

Country Status (1)

Country Link
JP (1) JPS63148330A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04259080A (ja) * 1991-02-13 1992-09-14 Nissan Motor Co Ltd パイプライン形演算装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04259080A (ja) * 1991-02-13 1992-09-14 Nissan Motor Co Ltd パイプライン形演算装置

Similar Documents

Publication Publication Date Title
US4745547A (en) Vector processing
JPS6234242A (ja) デ−タ処理システム
US4037213A (en) Data processor using a four section instruction format for control of multi-operation functions by a single instruction
JPS6231379B2 (ja)
US5117493A (en) Pipelined register cache
JPS6351287B2 (ja)
JP3336987B2 (ja) パイプライン化浮動小数点ストア
JPH03286332A (ja) デジタルデータ処理装置
US4093983A (en) Fast and normal rate instruction fetching
US5546551A (en) Method and circuitry for saving and restoring status information in a pipelined computer
JPS62154032A (ja) インストラクシヨンカツシユメモリ
US4924377A (en) Pipelined instruction processor capable of reading dependent operands in parallel
JPS63148330A (ja) デ−タ処理装置
US5388253A (en) Processing system having device for testing the correct execution of instructions
GB1570510A (en) Micro-programme controlled data processing systems
US4410988A (en) Out of cycle error correction apparatus
JPH02213938A (ja) 演算装置
JPS6295635A (ja) デ−タ処理装置
US4802088A (en) Method and apparatus for performing a pseudo branch in a microword controlled computer system
EP0314342B1 (en) Parallel pipelined computer processor
JP3278441B2 (ja) ベクトル処理装置
JPS59123937A (ja) 演算装置におけるバイパス制御方式
US5644745A (en) Apparatus for replacing data availability information for an instruction subsequent to a branch with previous availability information upon branch prediction failure
JP2915131B2 (ja) データ処理装置
JPH0452488B2 (ja)