JPH0132537B2 - - Google Patents

Info

Publication number
JPH0132537B2
JPH0132537B2 JP18761680A JP18761680A JPH0132537B2 JP H0132537 B2 JPH0132537 B2 JP H0132537B2 JP 18761680 A JP18761680 A JP 18761680A JP 18761680 A JP18761680 A JP 18761680A JP H0132537 B2 JPH0132537 B2 JP H0132537B2
Authority
JP
Japan
Prior art keywords
operand
data
flag
instruction
packet
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
JP18761680A
Other languages
English (en)
Other versions
JPS57111748A (en
Inventor
Nobuaki Kawato
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 JP18761680A priority Critical patent/JPS57111748A/ja
Publication of JPS57111748A publication Critical patent/JPS57111748A/ja
Publication of JPH0132537B2 publication Critical patent/JPH0132537B2/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/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3842Speculative instruction execution

Landscapes

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

Description

【発明の詳細な説明】 本発明は、データ駆動型処理装置の高速処理方
式、特に演算実行のための時間の無駄を省いて装
置の高速化を可能としたデータ駆動型処理装置の
高速処理方式に関するものである。
最近のコンピユータ技術においては、その創造
以来、数十年の長に渡つてきたノイマン型の構想
に基づくコンピユータ技術を根本的に変革し、順
序的な蓄積プログラムによらない非ノイマン型コ
ンピユータというものが提案されている。
非ノイマン型のコンピユータ構想のうち1つに
データ駆動型処理装置があり、その原理はノード
とアークからなるデータフローグラフを機械語と
して実行することができるようになつている。
例えば、第1図に示すデータ駆動型処理装置に
よつて実行されるデータフローグラフを簡単な例
にとつて示す。第1図において、矢印はアーク、
接合点●印はリンクノード、〇印は各演算ノード
を示し、上記円内に示された演算記号にしたがつ
て例えば加算、減算、乗算、除算ノードが構成さ
れる。すなわち、第1図においては、例えばデー
タフロープログラムは入力a、b、cに対して各
出力x=(a+b)2/ab、y=(a+b)/ab、
およびz=ab+cを計算するものであるが、そ
の際に、入力アークのすべてにデータが到着した
ときに、各ノードに対応する演算が行なわれるも
のである。したがつて、このことにより、並列処
理およびパイプライン処理が自然な型で達成され
うる。
上記のような処理を実現するものとして、従
来、第2図に示すような構成のデータ駆動型処理
装置が提案されている。すなわち、第1図に示す
各ノードは命令セル0、1、2、…nの形式をと
る記憶セル部1で構成され、その入力側に分配回
路2が設けられ、その出力側に調整回路3が設け
られ、前記記憶セル部1から取出されたデータは
演算ユニツト0、1、2、…nからなる演算部4
へ送られ所定の演算が行なわれる。第3図は命令
セルの構成を示し、ノードの演算の種類は命令コ
ード部21で、入力アークはオペランド1部22
およびオペランド2部23で、出力アークは出力
先アドレス部24で指定される。このように各ノ
ードに対応する命令セルは分配回路2を介して記
憶セル部1に入力される。
ところで、第3図において、各オペランド部2
2,23にはデータが記憶されたか否かを示すフ
ラグ25が存在し、このフラグを利用してデータ
駆動により処理が行なわれる。例えば、特定の命
令セル中のオペランドの全てにデータが記憶され
た場合にはその命令は実行可能状態となり、命令
セルの内容によつて演算パケツトが構成され、第
2図に示す調整回路3に送られる。この調整回路
3は命令コード部21の内容にしたがつて、その
パケツトを目的の演算部4内の演算ユニツト0、
1、2、…nに転送する。上記演算パケツトは、
目的の演算ユニツトが空いている限り、そこに取
込まれその演算ユニツトで演算が実行され出力デ
ータパケツト、すなわち出力先アドレスと演算結
果が分配回路2へ送られ、該分配回路2は上記出
力先アドレスにより、所定の命令セルのオペラン
ド部22,23にその結果を転送する。前記結果
を受け取つた特定の命令セルは、その結果に関す
るデータを記憶すると共にフラグ25をセツトす
る。したがつて、この場合、オペランド部22あ
るいは23に、演算実行に必要な演算結果(ある
いは入力データ)がセツトされていることを示す
フラグ25がセツトされていることを検出したと
きその命令セルが実行可能状態であることがわか
る。かくして、命令セルよりそのデータ調整回路
3に送出され、上記の如き演算が行なわれる。そ
してこのような動作が逐次繰返される。
しかしながら、以上述べた従来方式によるデー
タ駆動型処理装置においては、データ処理に際し
第4図に示すように入力データに対してデータフ
ロープログラムのノードの一部のみにおいてその
入力アークのデータが変化しただけであつても、
例えば第4図に示す如く入力データの系列P1
P2…のデータC、C′、C″…のみ変るような場合
でも、各系列毎に全部のノードにおいて対応する
演算が行なわれることになり、この結果、a、b
を使用した同一の演算が繰り返されることにな
り、演算時間が無駄となることがある。
本発明は上記の問題を解決するもので、不必要
な演算があればそれを省略し、必要な演算のみを
実行して無駄を排するために、命令セルのオペラ
ンド部に直前のオペランドの値と等しいかどうか
を示す付加的なフラグ部分を更に設け、両者のオ
ペランドの一致を判定することによつて必要な演
算のみを実行し、処理速度を一段と向上させたデ
ータ駆動型処理装置の高速処理方式を提供するこ
とを目的としている。
そしてこのために、本発明のデータ駆動型処理
装置の高速処理方式は、命令セル内にオペランド
の有無を示す第1フラグ部と、該オペランドが前
のオペランドと一致することを示す第2フラグ部
を設けるとともに、記憶セル部内に演算結果の現
オペランドと前のオペランドの内容を比較する比
較手段を設けておき、前記2つのオペランドを前
記比較手段により比較し、その比較結果の一致、
不一致にしたがつて前記第2フラグ部を表示する
ことによつて必要な演算処理のみ実行するように
したことを特徴としている。
次に本発明の実施例を図面を参照して説明す
る。
第5図は本発明による高速処理方式を実現する
データ駆動型処理装置の実施例を示し、第6図は
第5図に関連する本発明による命令セルの構成を
示す。
第5図において、本発明のデータ駆動型処理装
置は命令セル0、1、2、…n、および比較装置
13を備えた記憶セル部10と、分配回路11、
調整回路12、および各演算ユニツト0、1、
2、…nを有する演算部14とで構成され、かつ
比較装置13を除いた記憶セル部10、分配回路
11、調整回路12、演算部14は、第2図に示
す装置の参照番号1、2、3、4で示した部分に
対応している。すなわち、データフロープログラ
ムの各ノードは命令セルの形をとり、分配回路1
1を介して記憶セル部10に入力されるようにな
つている。しかしながら、本発明による命令セル
は第6図に示すように構成されている。すなわ
ち、ノードの演算種類は命令コード部21に入力
アークはオペランド1部22とオペランド2部2
3に、出力アークは出力先アドレス部24により
指定され、第3図のものに対応しているが、相違
する点は本発明のものは、付加的なフラグ部26
が設けられ、オペランドの値が直前のオペランド
値と一致するか否かを表わし、その一致結果によ
つて演算の無駄を省き、高速化を計らんとするも
のである。
このように構成された本発明の装置の動作を第
5図、第6図を参照して説明する。
命令セル0、1、2…n中のオペランド部2
2,23にすでにデータが記憶されていれば、そ
の命令セルは実行可能状態となり、該命令セルの
内容にしたがつて、演算パケツトが構成される。
この場合、比較装置13によつてフラグ26の状
態が調べられ、前のオペランドと一致している場
合には、上記演算パケツトの演算不要を表わすフ
ラグと出力先アドレス24のみから構成される。
その他の通常の演算が必要なパケツトは、命令コ
ード、出力先アドレス、フラグ、両オペランドか
ら構成されている。
すなわち、このように構成された演算パケツト
は第5図の調整回路12へ転送され、該調整回路
12は、演算が必要か不必要かを調べ、不要な場
合には非演算フラグと出力先アドレスを有するデ
ータパケツトを生成し、直接分配回路に線L1
介して戻す。演算が必要であれば命令コード部2
1によりそのパケツトを線L2を介して演算部1
4のうちの目的の演算ユニツト0、1、2、…n
へ転送する。そして演算部14において所定の演
算を行ない、演算フラグ、出力先アドレスおよび
演算結果を有するデータパケツトにして分配回路
11に送る。分配回路11においては、送られた
パケツトの出力先アドレスから目的の命令セル
0、1、2、…nのオペランド部にパケツトを転
送し、これを受取つた命令セルは比較装置13に
よつて演算結果のオペランドと前のオペランド
(オペランド1部または2部)が等しいかどうか
を比較し、オペランドが一致していれば演算不要
のパケツトであるからフラグ部26をセツトし、
一致していなければ演算必要パケツトであること
が判るのでフラグ部26をリセツトする。しか
し、上記いずれの場合においてもフラグ25はセ
ツトされるので、その命令は実行可能状態とな
り、命令セルの内容により演算パケツトが再び構
成され、調整回路12に送られた際に、上記パケ
ツトのフラグ26がセツトされているものは演算
不要であるので線L1を介して、その出力先アド
レスで指定された場所に分配されるように分配回
路11へ送られ、そうでないものは動作説明の冒
頭に述べたように、命令コード、出力先アドレ
ス、オペランドを有する要演算パケツトとして線
L2を介して演算部14へ送られ、上記の動作が
繰返される。
上記の説明は簡単のために、入力系列中の1組
のデータに対する処理の場合を説明したものであ
り、実際はすべての入力力系列に対して上記の演
算処理が繰返して行なわれることは明らかであ
る。したがつて、本発明においては、比較装置1
3を備えたことにより、前のオペランドと現演算
結果のオペランドを比較することによつて、その
比較結果から次の演算処理の必要性の有無が決定
されるので、系列中の最初の入力データに対して
は、従来のものと処理速度は同じであるが、2番
目以降の入力データに対しては、処理速度が著し
く向上できる。
なお、上記の説明において、前のオペランドと
今回のオペランドとが比較装置13において比較
され、その結果、一致した場合の演算不要パケツ
トのフラグ部26をセツトするようにしたが、こ
れを逆にリセツト状態にして、逆に不一致の場合
の演算必要パケツトのフラグ部26をリセツトで
なく、セツトにできることは言うまでもない。
データ駆動型処理装置においては、オペランド
の値が全て決まつた時に演算が行なわれる。した
がつて、オペランドの値が決定したということを
認識することが必要である。本発明においては、
オペランドの値の決定は、必ずしも演算を行わな
くてもよいという点に着目したものである。しか
し、演算を行わない場合でも、オペランドの値
(前の値と同じ)が決定したということを認識す
る必要が有り、これを線L1を介して知らせてい
る。すなわち、演算結果は前と変わらないので、
演算結果を分配しなくても、演算は正しく行われ
る。
【図面の簡単な説明】
第1図はデータ駆動型処理装置の原理を説明す
る一般のデータフローグラフを示し、第2図は従
来のデータ駆動型処理装置の構成を示し、第3図
は第2図の装置に用いられる命令セルの構成を示
し、第4図はプログラムとデータとの関連を示
し、第5図は本発明による高速化方式を実現する
データ駆動型処理装置の実施例を示し、第6図は
本発明による命令セルの構成を示す。 図中、10は記憶セル部、11は分配回路、1
2は調整回路、13は比較装置、14は演算部、
を夫々示す。

Claims (1)

    【特許請求の範囲】
  1. 1 データ駆動型処理装置において、命令セル内
    にオペランドの有無を示す第1フラグ部と、該オ
    ペランドが前の内容と一致することを示す第2フ
    ラグ部を設けるとともに、記憶セル部内に演算結
    果の現オペランドと前のオペランドの内容を比較
    する比較手段を設けておき、前記2つのオペラン
    ドを前記比較手段により比較し、その比較結果の
    一致不一致にしたがつて前記第2フラグ部を表示
    するようにし必要な演算処理のみ実行するように
    したことを特徴とするデータ駆動型処理装置の高
    速処理方式。
JP18761680A 1980-12-29 1980-12-29 High speed processing system of data driving type processing device Granted JPS57111748A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP18761680A JPS57111748A (en) 1980-12-29 1980-12-29 High speed processing system of data driving type processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP18761680A JPS57111748A (en) 1980-12-29 1980-12-29 High speed processing system of data driving type processing device

Publications (2)

Publication Number Publication Date
JPS57111748A JPS57111748A (en) 1982-07-12
JPH0132537B2 true JPH0132537B2 (ja) 1989-07-05

Family

ID=16209218

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18761680A Granted JPS57111748A (en) 1980-12-29 1980-12-29 High speed processing system of data driving type processing device

Country Status (1)

Country Link
JP (1) JPS57111748A (ja)

Also Published As

Publication number Publication date
JPS57111748A (en) 1982-07-12

Similar Documents

Publication Publication Date Title
JPH07210369A (ja) 並列加算および平均演算を行うための回路およびその方法
JPS6351287B2 (ja)
US3571804A (en) Method for execution of jumps in an instruction memory of a computer
JP2617974B2 (ja) データ処理装置
JP2632074B2 (ja) データフロー型情報処理装置
JPH07107664B2 (ja) 乗算回路
JPH0132537B2 (ja)
US5542080A (en) Method for controlling execution of data driven type information processor
JPS63111535A (ja) デ−タ処理装置
JP2557629B2 (ja) 割込方式
JP3708560B2 (ja) データフロー型情報処理装置
JP2793357B2 (ja) 並列演算装置
JP3658879B2 (ja) パイプライン計算機
JP3139011B2 (ja) 固定小数点プロセッサ
JP3742745B2 (ja) 演算処理装置
JPS5971542A (ja) 演算処理装置
JPH01147723A (ja) 情報処理装置のパイプライン処理方式
JPH0812600B2 (ja) 並列データ処理制御方法
JPS6252331B2 (ja)
JPH0620071A (ja) データ駆動型情報処理装置
JPH0353322A (ja) 情報処理装置
JPH04149637A (ja) 情報処理装置
JPS6488839A (en) Addressing circuit
JPH0512007A (ja) データ処理方式
FR2520528A1 (fr) Processeur de microordinateur