JPH0234058B2 - - Google Patents

Info

Publication number
JPH0234058B2
JPH0234058B2 JP58093539A JP9353983A JPH0234058B2 JP H0234058 B2 JPH0234058 B2 JP H0234058B2 JP 58093539 A JP58093539 A JP 58093539A JP 9353983 A JP9353983 A JP 9353983A JP H0234058 B2 JPH0234058 B2 JP H0234058B2
Authority
JP
Japan
Prior art keywords
operand
address
overlap
operand address
main memory
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
JP58093539A
Other languages
English (en)
Other versions
JPS59218567A (ja
Inventor
Masahito Oono
Katsumi Oonishi
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 JP9353983A priority Critical patent/JPS59218567A/ja
Publication of JPS59218567A publication Critical patent/JPS59218567A/ja
Publication of JPH0234058B2 publication Critical patent/JPH0234058B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Description

【発明の詳細な説明】 (a) 発明の技術分野 パイプライン処理によつて、第1オペランドと
第2オペランドを扱う命令を処理するデータ処理
装置において、第1オペランドアドレスと第2オ
ペランドアドレスとのオーバラツプをチエツクす
る方式に関す。
(b) 技術の背景 パイプライン処理を行うデータ処理装置におい
て、第1オペランドと第2オペランドとを主記憶
装置から読み出し、演算してその結果を主記憶装
置上の第1オペランドに書き込む命令、又は第2
オペランドを主記憶装置上から読み出し、主記憶
装置上の第1オペランドに書き込む命令を実行す
る場合、ソフトウエアインタフエース条件として
は、例えば1語が8バイトから成るデータ処理装
置では、一般にはアドレスの単位である1バイト
の演算を逐次実行して最終的に8バイトの演算結
果が得られることを前提としている。
然し、ハードウエア的には8バイト単位で演算
しているので、この侭ではソフトウエアから見た
ハードウエア条件が合わなくなる問題があり、見
掛け上1バイト単位で処理しているようにする必
要があつた。
具体例を挙げれば、第2オペランドから第1オ
ペランドへデータを転送する命令で、第2オペラ
ンドの最初の1バイトにのみ、全“0”を入れ
て、且つ第2オペランドアドレスと第1オペラン
ドアドレスとを上記1バイト分だけずらせて、こ
の転送命令を実行させると、第1オペランドの最
初の1バイトから順次1バイトづつ“0”が転送
され、最終的には全データ長に“0”を入れるこ
とができる。然し、若しデータ処理装置の1語を
構成する8バイト単位の転送で、この命令が実行
されると、8バイトの語の内最初の1バイトにの
み“0”であるが、他の7バイトは“0”でない
データが8バイト単位で、第1オペランドの全デ
ータ長について転送され、所期の目的を達成させ
ることができなくなる。
この問題に対する対策として、第1オペランド
アドレスと第2オペランドアドレスとのオーバラ
ツプチエツクを行い、2つのアドレスがオーバラ
ツプしている場合は、オーバラツプしていないバ
イト長のみの演算を、総てのデータ長について
(演算結果を主記憶装置に書き込む場合は、書き
込みレングスについて)繰り返して行う方法が採
られていた。
然して、パイプライン処理を行うデータ処理装
置において、従来方式で上記オーバラツプチエツ
クを行うと、そのオーバラツプチエツクの処理の
為に、演算結果を主記憶装置上にストアするレン
グスを決定する処理が遅れ、パイプライン処理を
効率的に実行できない問題があり、改善策の検討
が望まれていた。
(c) 従来技術と問題点 第1図がパイプライン処理を行うデータ処理装
置において、オペランドアドレスのオーバラツプ
チエツクを行う場合の従来方式を示す図であつ
て、1がそのタイムチヤート図であり、2がブロ
ツク図である。
以下、1,2を対照しながら、従来方式による
オーバラツプチエツク方式を説明する。
先ず、1で示すタイムチヤートの第1フローで
第1オペランドの読み出しが行なわれ、第2フロ
ーで第2オペランドの読み出しと、第1オペラン
ドと第2オペランドとの演算が行なわれ、第3フ
ローで演算結果の主記憶装置への書き込みが行わ
れるのであるが、ここでは各フローにおける処理
の内、本発明に関連する部分ものを示している。
そして、D,R,A,B1,B2、は、そのパイ
プライン処理の各ステージを示しており、Dは命
令のデコード、Rはバツフアメモリ又は主記憶装
置に対するメモリアクセス要求を出す処理、Aは
オペランドアドレス計算、B1,B2はバツフア
メモリからの読み出しステージである。
2において、1はベースレジスタ(BR)、2
はデイスプレイスメントレジスタ(DR)、3は
オペランドアドレス計算器(EAG)、4はオペラ
ンドアドレスレジスタ(EAR)、5はワーキング
アドレスレジスタ(WAR)、6はアドレスオー
バラツプ計算器(OAG)、7はオーバラツプレジ
スタ(OAR)でオーバラツプ長を蓄積している。
8は1回の処理でストアすべきデータ長を計算す
るストアレングス計算器(SLG)で、命令で指
定するデータ長Lとオーバラツプレジスタ
(OAR)7のオーバラツプデータを用いて計算す
る。そしてOVLPLCHはオーバラツプレングス
チエツク信号で、この信号がオンの時第1オペラ
ンドと第2オペランドがオーバラツプしているこ
とを示している。
パイプライン処理を行うデータ処理装置では、
演算器としてパイプライン演算器が1つしか無い
為、1つの命令をマルチフローに展開して処理す
る場合、複数個の処理が1つづつ、上記パイプラ
イン演算器に投入される。上記第1フロー〜第3
フローがその展開フローである。
本図面の1で示すタイムチヤートで、本発明に
関連する動作を説明すると、第1フローのAステ
ージにおいて、第1オペランドアドレスの計算に
必要なベースレジスタ(BR)1とデイスプレイ
スメントレジスタ(DR)2が読み出されて、オ
ペランドアドレス計算器(EAG)3で第1オペ
ランドアドレスが計算される。そして、次のB1
ステージでオペランドアドレス計算器(EAG)
3での計算結果をオペランドアドレスレジスタ
(EAR)4にセツトし、B2ステージでワーキン
グアドレスレジスタ(WAR)5にバツフアリン
グする。
第2フローでは第2オペランドの読み出しと、
第1オペランドアドレスと第2オペランドアドレ
スとのオーバラツプチエツク迄を行う。即ち、第
1フローと同じようにして、先ずAステージで第
2オペランドアドレスの計算に必要な、ベースレ
ジスタ(BR)1とデイスプレイスメントレジス
タ(DR)2が読み出され、オペラントアドレス
計算器(EAG)3で第2オペランドアドレスが
計算される。そして、次のB1ステージでオペラ
ンドアドレス計算器(EAG)3での計算結果を
オペランドアドレスレジスタ(EAR)4にセツ
トすると同時に、第1フローで既にワーキングア
ドレスレジスタ(WAR)5に蓄積されている第
1オペランドアドレスと、前記第2オペランドア
ドレスが入つているオペランドアドレスレジスタ
(EAR)4を読み出し、アドレスオーバラツプ計
算器(OAG)6で各オペランドアドレスのオー
バラツプの計算を行う。そして、次のB2ステー
ジで、アドレスオーバラツプ計算器(OAG)6
で計算されたオーバラツプ長をオーバラツプレジ
スタ(OAR)7にストアすると共に、オーバラ
ツプレングスチエツク信号OVLPLCHを出力す
る。
従つて、本来は演算結果の主記憶装置への書き
込みを行う第3フローのAステージで、書き込み
の為のストアレングス計算を行う必要があるが、
2で示した従来方式の処理機構では、オーバラツ
プ長がオーバラツプレジスタ(OAR)7に蓄積
されるのが、第2フローのB2ステージである
為、第3フローで示しているように、少なくとも
1つのAwステージ(Aステージの待ち状態)を
設ける必要があり、パイプライン処理を長くする
問題があつた。
(d) 発明の目的 本発明は上記従来の欠点に鑑み、パイプライン
処理を行うデータ処理装置において、第1オペラ
ンドアドレスと第2オペランドアドレスとのオー
バラツプチエツクを実行した後の書き込みレング
ス決定処理を、正規のAステージで実行できる方
法を提供することを目的とするものである。
(e) 発明の構成 そしてこの目的は、第1オペランド、第2オペ
ランドが主記憶装置上にあり、それぞれを主記憶
装置から読み出し、演算してその結果を主記憶装
置上の第1オペランドへ書き込む命令、又は第2
オペランドを主記憶装置から読み出し、主記憶装
置上の第1オペランドに書き込む命令を処理する
データ処理装置において、第2オペランドアドレ
スの計算要素をオペランドアドレス計算器
(EAG)に入力して第2オペランドアドレスを算
出するとき、該第1オペランドと第2オペランド
とのオーバラツプ量を検出するアドレスオーバラ
ツプ計算器に、上記第2オペランドアドレスの計
算要素と、前もつて計算されている第1オペラン
ドアドレスを保持したレジスタの内容の1の補数
とを入力して、第2オペランドアドレスの計算
と、第1オペランドアドレスと第2オペランドア
ドレスとのオーバラツプの量の検出とを同時に行
うように制御する方法を提供することによつて達
成され、書き込みレングスを計算するのに特別な
パイプラインステージAwを考える必要がなく、
処理サイクルを短縮できる利点がある。
(f) 発明の実施例 以下本発明の実施例を図面によつて詳述する。
第2図が本発明の一実施例を示す図であり、1が
そのタイムチヤート、2がブロツク図である。本
発明は、第2フローでの第2オペランドアドレス
の生成結果を用いてオーバラツプチエツクを行う
のではなく、該第2フローでのオペランドアドレ
ス計算器(EAG)による第2オペランドのアド
レス生成と同時に、該2オペランドアドレスの計
算要素{ベースレジスタ(BR)、デイスプレイ
スメント(DR)(}を、例えば、3入力加算器
で構成されている専用のアドレスオーバラツプ計
算器(OAG)の2つの入力に入力すると同時に、
第1フローで生成されている第1オペランドのア
ドレスの1の補数を残りの第3入力に入力して、
オーバラツプチエツクを行い第3フローでの書き
込みレングス生成を、本来のAステージで実行
し、従来方式で必要としていたAステージの待ち
サイクルAwをなくし処理サイクルを短縮しよう
とするものである。
この図面において、1で示したタイムチヤート
の各ステージは、第1図の1と同じものであり、
2においても1〜4及び6,7は第1図2と同じ
ものであるが、アドレスオーバラツプ計算器
(OAG)6の入力条件が異なつている。即ち、ア
ドレスオーバラツプ計算器(OAG)6はOA1,
OA2,OA3の3入力演算器となつており、OA
1,OA2には第2オペランドのベースレジスタ
(BR)1、デイスプレイスメントレジスタ
(DR)2を入力し、OA3には第1オペランドア
ドレスの生成結果を蓄積しているオペランドアド
レスレジスタ(EAR)4の1の補数を入力して
いる。
尚、上記の実施例においては、アドレスオーバ
ラツプ計算器(OAG)として、3入力演算器を
使用した例で説明したが、例えば、第1オペラン
ド、第2オペランドのアドレスの計算に3入力を
必要する時には、オペランドアドレス計算器
(EAG)が3入力演算器となり、アドレスオーバ
ラツプ計算器(OAG)は、4入力演算器となる
ことはいう迄もないことである。
このような構成とすることにより、1で示した
タイムチヤートから明らかな如く、第2フローの
Aステージで、第2オペランドのアドレス生成
と、第1オペランドアドレスと第2オペランドア
ドレスとのアドレスオーバラツプチエツクを同時
に行い、B1ステージで第2オペランドアドレス
生成結果のオペランドアドレスレジスタ(EAR)
へのストアと、アドレスオーバラツプチエツク結
果のオーバラツプレジスタ(OAR)7へのスト
アを同時に行うことができ、その結果として第3
フローのAステージで書き込みレングスの生成動
作を行うことができる。
(g) 発明の効果 以上詳細に説明したように、本発明によればパ
イプライン処理を行うデータ処理装置において、
第2オペランドアドレスを計算すると同時に、第
1オペランドアドレスとのアドレスオーバラツプ
チエツクを行うことにより、パイプライン処理に
おける書き込みレングス決定のための“待ち”を
無くし、処理サイクルを短くできる効果がある。
【図面の簡単な説明】
第1図はアドレスオーバラツプチエツクを行う
場合の従来方式を示す図、第2図は本発明の一実
施例を示す図である。 図面において、1はベースレジスタ(BR)、
2はデイスプレイスメントレジスタ(DR)、3
はオペランドアドレス計算器(EAG)、4はオペ
ランドアドレスレジスタ(EAR)、5はワーキン
グアドレスレジスタ(WAR)、6はアドレスオ
ーバラツプ計算器(OAG)、7はオーバラツプレ
ジスタ(OAR)、8はストアレングス計算器
(SLG)、OVLPLCHはオーバラツプチエツク信
号をそれぞれ示す。

Claims (1)

    【特許請求の範囲】
  1. 1 第1オペランド、第2オペランドが主記憶装
    置上にあり、それぞれを主記憶装置から読み出
    し、演算してその結果を主記憶装置上の第1オペ
    ランドへ書き込む命令、又は第2オペランドを主
    記憶装置から読み出し、主記憶装置上の第1オペ
    ランドに書き込む命令を処理するデータ処理装置
    において、第2オペランドアドレスの計算要素を
    オペランドアドレス計算器に入力して第2オペラ
    ンドアドレスを算出するとき、該第1オペランド
    と第2オペランドとのオーバラツプ量を検出する
    アドレスオーバラツプ計算器に、上記第2オペラ
    ンドアドレスの計算要素と、前もつて計算されて
    いる第1オペランドアドレスを保持したレジスタ
    の内容の1の補数とを入力して、第2オペランド
    アドレスの計算と、第1オペランドアドレスと第
    2オペランドアドレスとのオーバラツプの量を検
    出とを同時に行うように制御することを特徴とす
    るアドレスオーバラツプチエツク方式。
JP9353983A 1983-05-27 1983-05-27 アドレスオ−バラツプチエツク方式 Granted JPS59218567A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9353983A JPS59218567A (ja) 1983-05-27 1983-05-27 アドレスオ−バラツプチエツク方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9353983A JPS59218567A (ja) 1983-05-27 1983-05-27 アドレスオ−バラツプチエツク方式

Publications (2)

Publication Number Publication Date
JPS59218567A JPS59218567A (ja) 1984-12-08
JPH0234058B2 true JPH0234058B2 (ja) 1990-08-01

Family

ID=14085074

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9353983A Granted JPS59218567A (ja) 1983-05-27 1983-05-27 アドレスオ−バラツプチエツク方式

Country Status (1)

Country Link
JP (1) JPS59218567A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4364833A1 (en) 2022-11-02 2024-05-08 Sio Co., Ltd. Fluid mixing output apparatus and fluid utilization apparatus using the same

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0823820B2 (ja) * 1985-10-23 1996-03-06 富士通株式会社 アドレス・オーバラップ・チェック処理装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5621246A (en) * 1979-07-30 1981-02-27 Fujitsu Ltd Pipeline control system
JPS57169856A (en) * 1981-04-10 1982-10-19 Fujitsu Ltd Instruction execution system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5621246A (en) * 1979-07-30 1981-02-27 Fujitsu Ltd Pipeline control system
JPS57169856A (en) * 1981-04-10 1982-10-19 Fujitsu Ltd Instruction execution system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4364833A1 (en) 2022-11-02 2024-05-08 Sio Co., Ltd. Fluid mixing output apparatus and fluid utilization apparatus using the same

Also Published As

Publication number Publication date
JPS59218567A (ja) 1984-12-08

Similar Documents

Publication Publication Date Title
JPS6028015B2 (ja) 情報処理装置
JPS59154564A (ja) プログラマブルコントロ−ラ
JPH0248931B2 (ja)
JP3579843B2 (ja) ディジタル信号処理装置
JPS623461B2 (ja)
JP2690406B2 (ja) プロセッサおよびデータ処理システム
JPH0234058B2 (ja)
JPH0821009B2 (ja) チャネル制御装置のイニシャライズ方法及びそのイニシャライズのためのシステム
JP3490191B2 (ja) 計算機
CN110245096B (zh) 一种实现处理器直接连接扩展计算模块的方法
JPH07110769A (ja) Vliw型計算機
JP2536238B2 (ja) 情報処理装置
JP2001256073A (ja) ディジタルシグナルプロセッサ
JPS5925264B2 (ja) ベクトル命令処理方式
JPS6028014B2 (ja) マイクロプロセツサ
JPH0546389A (ja) 並列処理装置
JPH04181454A (ja) データアクセス制御装置
JPS59172044A (ja) 命令制御方式
JP2908117B2 (ja) ベクトル演算処理装置
JP2866143B2 (ja) 動的パイプライン処理装置
JP2622026B2 (ja) 中央処理装置におけるレジスタ書込制御方式
JPS59165143A (ja) デ−タ処理装置
JPH0823820B2 (ja) アドレス・オーバラップ・チェック処理装置
JPH03189868A (ja) データ処理プロセツサ
JPS63311569A (ja) コプロセツサ演算装置