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

デ−タ処理装置

Info

Publication number
JPS5892041A
JPS5892041A JP56189309A JP18930981A JPS5892041A JP S5892041 A JPS5892041 A JP S5892041A JP 56189309 A JP56189309 A JP 56189309A JP 18930981 A JP18930981 A JP 18930981A JP S5892041 A JPS5892041 A JP S5892041A
Authority
JP
Japan
Prior art keywords
instruction
store
mask
signal line
address
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
JP56189309A
Other languages
English (en)
Other versions
JPS6132698B2 (ja
Inventor
Kaname Imai
今井 要
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 JP56189309A priority Critical patent/JPS5892041A/ja
Publication of JPS5892041A publication Critical patent/JPS5892041A/ja
Publication of JPS6132698B2 publication Critical patent/JPS6132698B2/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/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30018Bit or string instructions
    • 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/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30036Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
    • G06F9/30038Instructions to perform operations on packed data, e.g. vector, tile or matrix operations using a mask

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Advance Control (AREA)

Abstract

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

Description

【発明の詳細な説明】 本発明は高度に先1り制御を行なうためのデータ処理装
置に関し、特に先行するストア系命令と後続命令のアド
レスに関するコンフリクト制御を行なう先行制御装置に
関するものである。
周知のように、高度に先回り制御を行なうデータ処理装
置では、一般に命令の処理を数ステップ、例えば命令の
続出し、デコード、オペランドアドレスの計算を行なう
デコードステージ(以後、Dステージと略す)、オペラ
ンドの読出しを行なうアソシエーションステージ(以後
、Aステージと略す)、オペランドの転送を行なうロー
ドステージ(以後、Lステージと略す)、命令を実行す
るイクゼキューションステージ(以後、Eステージと略
す)の4ステツプに分け、各ステージを、Sイブライン
形式で並列に処理する方式がとられる。
第1図はその通常の命令処理フローを示しだもので、実
効的に命令はlサイクルで処理される。ここで、D−A
−Lの各ステージは先行制御装置が関与し、Eステージ
は演算装置が関与する。
今、このような専用の先行制御装置を有するデ−夕処理
装置において、第2図(a)の如く、ストア命令(ST
命令)とロード命令(L命令)が記憶値陵内の同一アド
レスをアクセスする場合を考える。第2図(a)は、8
バイト境界内の2〜6バイトがストア命令で書換わり、
4〜8バイトがロード命令で読出される例である。さて
、第1図の命令処理フローに従い、ストア命令の記憶装
置に対する書込み要求はEステージで出されるが、ロー
ド命令のオペランドは先行制御装置によりAステージで
読み出される。第2図(b)はそのJ4 fの命令処理
フローで、先行制御装置は前の命令のストア命令で書き
換えられる前のオペランドを読み出してしまうだめ、ロ
ード命令は正しく実行されないことが分かる。このため
、従来は先行するストア系命令のストア・アドレスと後
続命令のオペランド・フェッチ・アドレスの一致/不一
致を検出(オペランド・ストア・コンフリクトの検出(
オペランド・ストア・コンフリクトの検出と言い、以後
、O20の検出と略す)して、先行制御装置のステージ
を制御し、一致した場合、後続命令によるオペランドの
読出しを遅らせ、命令が正しく処理されることを保障し
ている。第3図(C)はこの場合の命令処理フローであ
る。
しかし、従来の処理装置は08Cの検出を8バイト境界
までの一改しか見ておらず、8バイト境界を越えるアド
レスに対してはO20の検出をしていない。そのため、
ストアデータが8バイト境界を4えてストアされる時は
、O20が発することを考這して先行制御装置をリセッ
トし、先行側Nのオーバラップを禁出(1−)efea
t  0ve(IBpと言い、以後、DOLと略す)し
て処理していた。
従って、後続の命令は命令読出しから実行されることに
なり、先回り制御の利点が損なわれる欠点があった。第
3図(a)は8バイト境界を越えてストアされる時のア
クセス例、第3図(b)はその場合の従来の命令処理フ
ローである。なお、8バイト童界を越えるアドレスに対
してもO20の検出を行なえばよいが、ハードウェア量
が増加するという開明がある。
本発明の目的とするところは上記の如き問題点を除去す
るものであり、高度に先回り制御を行なう先行制御装置
を有するデータ処理装置において、先行制御装置をリセ
ットして命令読出しから再開することなく、また少ない
ハードウェア量で8バイト境界を確えるストア系命令を
検出し、その検出結果により、処理ステージを制御する
ことにある。
上記の目的を達成するため、本発明では先行制御値#t
Kストア系命令検出回路をもうけ、オペレーション・コ
ード、オペランド−アドレス、レングス、マスク長を参
照してストアデータが8バイト境界を峨えるかテストし
、もし越える場合にはステージが進むのを抑市すること
により、後続命令の処理を抑市するものである。
次に本発明の一実施例につき図面を用いて詳細に説明す
る。
次に本発明の一実施例につき図面を用いて詳細に説明す
る。
第4図は本発明の一実施例のブロック図を示しりちので
ある。命令バッファレジスタ(図示せず)から切り出き
れた命令は命令レジスタlにセットされる。101〜1
05は命令レジスタlの出力線で、lOlは命令コード
が乗る信号線、102dベースレジスタ・アドレスが乗
る信号線、ICl3はインデクス・レジスタ・アドレス
が乗る信号線、104はSS形式命令のオペランドレン
グスが乗る信号s、1osViデイスプレースメントが
乗る信号線である。命令のタイプにより信号線102,
103で示されたアドレスの汎用レジスタ2の内容が読
出され、そのペース・レジスタ、インデクス・レジスタ
の内容がそれぞれ信号@(資)。
107を介して3人力アドレス中アダー3に入力される
。3人力アドレス・アダー3の残りの人力は、命令レジ
スタlのディスプレースメントが信号線105を介して
直接与えられる。3人力アドレス・アダー3はベースレ
ジスタ、インデクスレジスタ、ディスプレースメントを
加算し、信号線108を介して各アドレス・レジスタ及
びO8C検出回路4にデータを送出する。109は3人
力アドレス・アダー3の下3ピッ) (BC)が乗る信
号線である。5け命令レジスタlのディレィ・ラッチで
、命令のθバイト目と1バイト目を保持する。6は命令
コードをデコードするデコーダであり、信号11110
゜111及び1】2を介して本発明の特徴である固定長
ストア系命令検出回路7、可変長ストア系命令検出卸路
8及びマスク。ストア系命令検出回路9に入力される。
1】4はss形式命令のレングスが乗る信号線、115
はマスク命令のマスク部が乗る信号線である。10は各
ストア系命令検出信号を論理和(OR)する0R(9)
路であり、その出力120はステージ制御回路11に入
力されて、ステージが進むのを抑止する。
一般に処理装置で使用されるストア系命令は、(A)固
定長ストア命令(2,4,8バイト固定) (B)可変長ストア命令(88形式命令)(C)マスク
命令 に分類される。ここでは便宜上固定長ストア命令として
8to(e (以下8T命令と略す)、可変長命令とし
てMove  Character命令(以下MVC命
令と略す)、マスク命令として8tore  Char
acters   Under  Mask命令(以下
STCM命令と略す)を取りEげることとする。
第5図乃至第7図は本発明の特徴である各ストア系命令
検出回路の詳細図である。
第5図は固定長ストア系命令検出(ロ)路7を示してい
る。第4図のデコーダ6でそれぞれ8バイト、4バイト
、2バイトの固定長ストア命令がデコードされると信号
線110が“1”となる。信号線110が甲になると、
比較器11.12.13により、それぞれ3人力アドレ
スアダー3の下3ビットが乗る信号線109のデータ(
BC)と設定値″′l”、5 *、“7″が比較され、
結果がOR回路14を通して信号線116に出力される
。ここで、ST命令は4バイト・データをストアする命
令なので12の比較器が有効となる。
そして、 (i)  BC<sの時 8T命令と後続の命令のO8cは通常のO8C検出回路
4で認識される。
(i)  5(BCO時 8T命令Fi8バイト境界を補えるので、(支)定長ス
トア系命令検出回路7の出力線116は′1″となり、
後続の命令のステージは抑止される。同時に通常のO8
C検出回路でO20が発生していてもステージは抑止さ
れるので、その後正しく命令は実行される。
第6図は可変長命令検出回路8を示している。
MVC命令は核命令で示されるレングス(L)分だけデ
ータをストアするものである。信号線IC9に乗る3人
力アドレスアダー3の下3ビット・データー(BC)と
信号線114に乗るレングスデータ(L)は加算器2】
で加算され、加算結果(BC+L)が大小比較器ρの一
方の入力となる。大小比較器ρの他方の入力には設定値
“8″が与えられる。デコーダ6でMVC命令がデコー
ドされ、信号線111が“l”になると、大小比較器η
によりBC+Lと8の大小が比較され、結果が信号#1
]7に出力される。
そして、 (i)  B C+ L < 8の時 MVC命令と後続の命令のO20は通常のO8C検出回
路4で認識される。
(iリ BC+Lン8の時 MVC命令は8バイト境界を越えてデータをストアする
ので、可変長ストア系命令検出(ロ)路8の出力線11
7が”l”となり、ステージは抑止される。
第7図はマスク・ストア系命令検出回路を示している。
STCM命令のマスク部に対応するバイトのみストアす
るものである。例えばM=OI 010時、命令で示さ
れる汎用レジスタの1バイト目と3バイト目が記憶装簀
上に連続してストアされる。命令のマスク部(M) #
−i信号線115を通して加算器31に与えられる。加
算器31は、このマスク部(M)の1″の数と信号線1
09に乗る3人力アドレスアダー3の下3ビット・デー
タ(BC)とを加算し、加算結果を大小比較器32に与
える(口)路である。大小比較器32の他方の入力には
設定値“8″が与えられる。デコーダ6で8TCM命令
がデコードされ、信号線112が“1″になると、大小
比較器′32の比較結果が信号線118に出力される。
そして、(i)  BC+(Mの′l”の数)〈8の時
STCM命令と後続命令のO20は通常のO8C検出回
路4で認識される。
(i◆ BC+(Mの“1″の数)ン8の時STCM命
令は8バイト境界を越えてデータをストアするので、マ
スク・ストア系命令検出回路9の出力】18が“ビとな
りステージ信号は抑止される。
第8図に本発明を実施した時の命令処理フローを示す。
第3図と比較した場合、先行制御装置のリセットがない
ため、次の命令(P83図ではL命令)の命令フェッチ
サイクル分(3サイクル)、処理時間が短縮されること
が分かる。なお、実施例では8バイト境界を問題にした
が、勿論、本発明は8バイト境界に限定されるものでは
ないことはいうまでもない。
以上説明したごとく、本発明によれば次の効果を得るこ
とができる。
(i)  ハードウェア量を大量に増さなくても8バイ
ト境界等を越える0 8 C処理ができる。
C)従来DOL命令であったBS形式命令け8バイト境
界等、定められたバイト境界内でストアされる場き、D
OLとならないので性能が向上する。
【図面の簡単な説明】
第1図は先回り制御の通常の命令処理フローを示す図、
第2図(a)、(b)、(C)はオペランド、ストア・
コンフリクトの場合の処理を釈明する図、第3図(a)
、Φ)は8バイト晴界を越えてストアされる時の従来の
処理を説明する図、第4Mは本発明の一実施例を示すブ
ロックレ」、t4%5図PJ至第7図に第4図中の各ス
トア系命令検出回路の拝M図、第8図は本発明な実施し
た時の命令処理フローを示す図である。 1・・・命令レジスタ、2・・・汎用レジスタ群、3・
・・アドレス・アダー、4・・・O8C検出回路、5・
・・命令ディレィ・ラッチ、6・・・デコーダ、7・・
・固定長S T系命令検出回路、8・・・可変長ST系
命令検出回路、9・・・マスクST系命令検出回路、1
0・・・OR回路、11・・・ステージ制御回路。 代理人弁理士  薄 1)利 幸 牙1図 第2図 (α) (b) ネイフント”−先出し−r7−−コー オイランドgre、カム1 1

Claims (1)

    【特許請求の範囲】
  1. 1、命令及びデータを格納する記憶装置、該記憶装置か
    ら命令を読出し、デコード、オペランドアドレスの計算
    、オペランドの先読み等を行なう先行制御装置、先行制
    御装置から指定される命令の演算を処理する演算装置を
    具備してなるデータ処理装置において、前記先行制御装
    置に命令のオペレーション・コード、オペランドアドレ
    ス、レングス、マスク長等を入力として、先行するスト
    ア系命令のストア・アドレスが読出し書込み単位幅境界
    を越えることを検出する手段を設け、該検出結果により
    先行制御装置の処理ステージを制御して、前記ストア系
    命令のストアーアドレスが読出し書込み単位幅境界を越
    えたとき後続命令の処理を抑止することを特許とするデ
    ータ処理装置。
JP56189309A 1981-11-27 1981-11-27 デ−タ処理装置 Granted JPS5892041A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP56189309A JPS5892041A (ja) 1981-11-27 1981-11-27 デ−タ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP56189309A JPS5892041A (ja) 1981-11-27 1981-11-27 デ−タ処理装置

Publications (2)

Publication Number Publication Date
JPS5892041A true JPS5892041A (ja) 1983-06-01
JPS6132698B2 JPS6132698B2 (ja) 1986-07-29

Family

ID=16239181

Family Applications (1)

Application Number Title Priority Date Filing Date
JP56189309A Granted JPS5892041A (ja) 1981-11-27 1981-11-27 デ−タ処理装置

Country Status (1)

Country Link
JP (1) JPS5892041A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0210427A (ja) * 1988-02-29 1990-01-16 Mips Computer Syst Inc 精密浮動小数点例外用の方法及び装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5547524A (en) * 1978-09-28 1980-04-04 Nec Corp Data transmission device

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5547524A (en) * 1978-09-28 1980-04-04 Nec Corp Data transmission device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0210427A (ja) * 1988-02-29 1990-01-16 Mips Computer Syst Inc 精密浮動小数点例外用の方法及び装置

Also Published As

Publication number Publication date
JPS6132698B2 (ja) 1986-07-29

Similar Documents

Publication Publication Date Title
JP2848606B2 (ja) マクロ命令パイプラインを用いてマイクロ命令を変更する方法及び装置
JPS6028015B2 (ja) 情報処理装置
US5088030A (en) Branch address calculating system for branch instructions
JPH0348536B2 (ja)
JPH01177127A (ja) 情報処理装置
JPS58149541A (ja) デ−タ処理装置
US5142630A (en) System for calculating branch destination address based upon address mode bit in operand before executing an instruction which changes the address mode and branching
JPS5892041A (ja) デ−タ処理装置
JPH0512751B2 (ja)
JP2944563B2 (ja) パイプライン型情報処理装置
JP2812610B2 (ja) パイプライン制御方式
JPH0233173B2 (ja)
JPS60214043A (ja) パイプライン制御回路
JP2597744B2 (ja) 分岐制御方法
JPS6257028A (ja) パイプライン制御の情報処理装置におけるブランチ制御方法
JPH0248733A (ja) 情報処理装置
JP2764844B2 (ja) パイプライン処理装置
JPS61100836A (ja) 移動命令論理比較命令処理方式
JPS5817585A (ja) 仮想記憶処理装置の制御方法
JPS6012656B2 (ja) リトライ制御方式
JPS5896346A (ja) 階層型演算方式
JPS59129995A (ja) 記憶装置
JPH08227360A (ja) 情報処理装置
JPH04316127A (ja) 情報処理装置
JPS6063638A (ja) 情報処理装置