JP2630779B2 - データ駆動型データ処理装置 - Google Patents

データ駆動型データ処理装置

Info

Publication number
JP2630779B2
JP2630779B2 JP18049287A JP18049287A JP2630779B2 JP 2630779 B2 JP2630779 B2 JP 2630779B2 JP 18049287 A JP18049287 A JP 18049287A JP 18049287 A JP18049287 A JP 18049287A JP 2630779 B2 JP2630779 B2 JP 2630779B2
Authority
JP
Japan
Prior art keywords
data
processing
packet
output
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
JP18049287A
Other languages
English (en)
Other versions
JPS6423337A (en
Inventor
宏喜 三浦
雅久 清水
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.)
Sanyo Denki Co Ltd
Original Assignee
Sanyo Denki Co 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 Sanyo Denki Co Ltd filed Critical Sanyo Denki Co Ltd
Priority to JP18049287A priority Critical patent/JP2630779B2/ja
Publication of JPS6423337A publication Critical patent/JPS6423337A/ja
Application granted granted Critical
Publication of JP2630779B2 publication Critical patent/JP2630779B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Description

【発明の詳細な説明】 (イ) 産業上の利用分野 本発明は、データ駆動型のデータ処理装置に関するも
のであり、詳しくは、データ駆動型のデータ処理装置の
構成要素として必要であるキューメモリのためのハード
ウエア量を大幅に減少させることができる構成としたデ
ータ駆動型のデータ処理装置に関するものである。
(ロ) 従来の技術 一般に、データ駆動型のデータ処理装置は、種々の命
令がデータの流れを示すアークによって接続されるデー
タフローグラフをプログラムとして実行するものであ
り、データ値と制御情報を含むデータが種々の処理要素
を経て転送されるうちに、データフローグラフに沿って
制御情報の付け換えやデータの複製や命令実行が行なわ
れる。各処理要素は、データの到着に応じてそのデータ
に所定の処理を施すように構成され、データが各処理要
素にどのようなタイミングで到着するかは予め規定され
ていない。つまり、外部からの入力、外部への出力、デ
ータの複製処理等の種々の処理が発生するタイミングは
予め規定できない。
従って、データの複製処理などの、通常の処理時間よ
りも長い時間を要するような特殊な処理が、ある処理要
素において発生した時には、その処理要素に後続して到
着しようとしているデータは、その特殊な処理の終了を
待つ必要がある。また、データを処理装置外部に出力す
る際にも、出力先が受け取り不可能な時には、出力デー
タは出力先が受け取り可能になるまで待たねばならな
い。さらに、外部からデータを入力する際には、入力処
理を優先させた場合、上記の特殊な処理と同様な性質を
持つため、処理装置内部において入力処理の終了を持つ
データが生じ、逆に内部のデータ処理を優先させた場
合、出力処理と同様に、処理装置が入力可能な状態にな
るまで、入力データが持つ必要が生じる。
従来のデータ駆動型のデータ処理装置においては、上
記のような要求を満たすために、必要に応じて処理装置
内部の各所に、FIFO方式のキューメモリを保持してい
た。例えば、昭和59年4月9日付で発行された日経エレ
クトロニクスの第181頁から第218頁に開示されているデ
ータ駆動型のデータ処理装置においては、出力データを
待たせるアウトプットキュー(OQ)、演算処理ユニット
(PU)や、(OQ)がビジーの時にデータを待たせるデー
タキュー(DQ)、及びデータの複製処理の際にデータを
待たせるジェネレータキュー(GQ)を備えている。ま
た、昭和59年10月8日付で発行された日経エレクトロニ
クスの第242頁から第247頁に開示されているデータ駆動
型のデータ処理装置においては、入出力制御や演算処理
を行なう機能ユニット(FU)に到着するデータを待たせ
るキュー、及び制御情報の付け換えとデータの複製処理
を行なうリンクメモリ(LM)に到着するデータを待たせ
るキューを備えている。さらに、特開昭58−127246号公
報に開示されている「リングバスインタフェイス回路」
は、データ駆動型データ処理装置の入力部に入力データ
専用のキューを、出力部に出力データ専用のキューを備
えている。
(ハ) 発明が解決しようとする問題点 しかるに、上述のデータ処理装置においては、待ちデ
ータを生じさせる可能性のある処理要素が処理装置内の
各所に分散しているため、待ちデータを待たせるための
キューメモリを各所に分散して備えており、各キューメ
モリを制御するための制御回路も同じく各所に分散して
備えているため、キューメモリのためのハードウエア量
が大きくなってしまい、結果的にデータ処理装置全体の
ハードウエア量が大きくなってしまうという問題点があ
った。
従って、本発明の目的は、データ駆動型のデータ処理
装置におけるキューメモリ1ケ所に集中して保持する構
成をとることにより、キューメモリに費やすハードウエ
ア量を減少させ、結果的にデータ駆動型のデータ処理装
置全体のハードウエア量を減少させることである。
(ニ) 問題点を解決するための手段 本発明のデータ駆動型データ処理装置においては、キ
ューメモリ及びキューメモリを制御する制御回路を1ケ
所に集中して保持し、さらに、待ちデータを生じさせる
可能性のある全ての処理要素をキューメモリの出力部に
できるだけ隣接して保持し、ある処理要素において処理
の終了を待たせる必要が生じた時に、即ち、ある処理要
素がビジー状態となった時に、キューメモリ及びキュー
メモリとビジー状態の処理要素との間に置かれた全ての
処理要素に対して待ちを要求する待ち要求信号が入力さ
れるように構成されている。
(ホ) 作用 前記待ち要求信号が入力されると、キューメモリの読
み出しは禁止され、各処理要素の出力は禁止される、こ
れによってキューメモリの出力部からビジー状態の処理
要素の入力部に至るデータ経路は停止状態となり、キュ
ーメモリの入力部に到着するデータは次々とキューメモ
リに書き込まれ、待ち要求信号が解除されるまでキュー
メモリにおいて待つことになる。
(ヘ) 実施例 第1図に本発明のデータ駆動型データ処理装置を用い
たシステム例としてデータフロー計算機システムの概要
を示す。同図のシステムは、システム内部のデータの基
本単位であるデータパケット(本来のデータ値の他に制
御情報を組み合わせた)を転送するリング状転送路であ
るリングネットワーク(RN)に、それ自身がRNの一部を
なしデータパケットの入出力を制御するネットワークイ
ンタフェース(NIF)(NIF)(NIF1)・・・(NIFn)を
介して、ホストインタフェース(HI)、データ記憶装置
(DM)、データフロー計算装置1(DFC1)、・・・、デ
ータフロー計算装置n(DFCn)が結合されて、ホストイ
ンタフェース(HI)にはさらにホスト計算機(HC)がつ
ながっている。
同システムのデータフロー計算装置n(DFCn)とネッ
トワークインタフェース(NIFn)とを合わせたものは、
内部がリング状をなすデータ駆動型データ処理装置とし
て動作し、データフローグラフによって記述されたデー
タ駆動型(データフロー型)のプログラムを実行する。
具体的には、まずホスト計算機(HC)から、ホストイン
タフェース(HI)、ネットワークインタフェース(NI
F)、リングネットワーク(RN)、ネットワークインタ
フェース(NIFn)を介してデータフロー計算装置n(DF
Cn)にプログラムがダウンロードされ、次に同じ経路
で、プログラムの実行を開始させるデータパケットであ
る開始パケットがデータフロー計算装置n(DFCn)に入
力されるとプログラムの実行が開始され、プログラムの
実行が終了するとすると、実行の終了を示すデータパケ
ットである終了パケットが、DFCnから(NIFn)、(R
N)、(NIF)、(HI)を介してHCに出力される。
第2図に本発明のデータ駆動型データ処理装置の概略
構成を示す。同図の装置に於いて(Q)はキューメモ
リ、(PM)はプログラム記憶手段、(NIF)はネットワ
ークインタフェース、(FC)は発火制御手段、(EXE)
は命令実行手段であり、各処理要素がリング状に結合さ
れている。尚(1)〜(5)と(30)、(40)、(50)
はデータ線である。
第2図を用いて本データ処理装置の動作の概略を説明
する。ホスト計算機(HC)からロードされたプログラム
(データフローグラフ)は、プログラム記憶手段(PM)
に格納される。開始パケットが各要素(NIF)、(F
C)、(EXE)、(Q)を介してプログラム記憶手段(P
M)に到着するとプログラムの実行が開始される。プロ
グラムの実行中に該記憶手段(PM)に入力されるパケッ
トの制御情報はこのデータフローグラフに従って付け替
えられたり、同じくデータフローグラフに従ってデータ
パケットの複製処理が行なわれたりする。該手段(PM)
から出力されたパケットはネットワークインタフェース
(NIF)において外部に出力されるか発火制御手段(F
C)に向けて転送されるかの選択がなされる。発火制御
手段(FC)では主に、二項演算命令などの左オペランド
と右オペランドをデータ対として検出して、二つのオペ
ランドを対にして出力する発火制御処理を行なう。左オ
ペランドは出力ライン(5)に、右オペランドは出力ラ
イン(50)に出力される。命令実行手段(EXE)では、
到着したパケットの制御情報によって指定される命令を
到着したパケットに対して施して出力する。これ等要素
(FC)、(EXE)においてはパケットが滞ることがない
がネットワークインタフェース(NIF)において外部か
らパケットが入力される時と出力しようとして出力でき
ない時、及びプログラムの記憶手段(PM)においてデー
タの複製処理が行なわれる時はビジー状態となり後続す
るデータパケットは停止してビジー状態の解除を待たな
ければならない。キューメモリ(Q)はこのような時に
データを一時格納して待たせるためのバッファリング機
能を遂行する。各処理要素において上記のような処理が
施されながらデータパケットが周回することによってプ
ログラムが実行される。また、データ処理装置内部に複
数のデータパケットが存在する時には、各々のデータパ
ケットに対して、異なる処理要素において同時に異なる
処理を施すパイプライン型の処理を行なうことができ
る。従って本データ処理装置は、リング状のパイプライ
ン型データ処理装置であると言える。
第3図及び第4図に本発明のデータ駆動型データ処理
装置の更に詳細な構成を示し、第5図〜第8図に本デー
タ処理装置に適用するデータパケットの構成を示す。
第5図はデータをデータ処理装置内部の所定のメモリ
にダウンロードするためのロードパケット、第6図はデ
ータ処理装置内部の所定のメモリからデータをダンプす
る(読み出す)ためのダンプパケット、第7図及び第8
図はプログラムの実行中に処理される実行パケットであ
り、発火制御手段(FC)において対となる左右のオペラ
ンドが検出されて、二つのオペランドが組になって出力
されたときに第7図の構成となる。以下これ等の図に基
づきデータパケットについて説明する。全てのデータパ
ケットは2語構成であり、1語目と2語目はヘッダ識別
子によって識別される。各データパケットはデータ値と
その他の情報(制御情報)から成る。制御情報のうち
f1、f0はパケット識別子であり第10図のように定義され
ロード、ダンプ、実行の各パケットを識別している。モ
ジュール番号は、ホストインターフェイス(HI)、デー
タ記憶装置(DM)、各データフロー計算装置(DFC1)、
(DFC2)、・・・(DFCn)などの各処理モジュールを識
別する番号であり、各モジュールは自分の番号を持って
おり自分のモジュール番号を持ったデータパケットのみ
を入力するようになっている。対象メモリ番号はロード
あるいはダンプの際に対象となるメモリを指定する番号
であり、第11図のように定義されている。セレクション
コードは、データ処理装置内部でデータパケットが処理
される経路を規定したものであり各コード値は第12図に
示すような意味を持つ。即ち、両図の図表に従えば、例
えば、開始パケットは、[S2S1S0]=000というプログ
ラム記憶手段(PM)宛のセレクションコードを保持して
おり、これが該手段(PM)において[S2S1S0]=101に
付け替えられると、[S2S1S0]=101を保持したパケッ
トは発火制御手段(FC)において処理され、該手段(F
C)は処理を終えるとセレクションコードを[S2S1S0
=001に変更したパケットを出力する。するとこのパケ
ットは次には命令実行手段(EXE)において処理され、
該手段(EXE)は処理を終えるとセレクションコードを
[S2S1S0]=000に変更したパケットを出力することに
より、パケットは再びプログラム記憶手段(PM)におい
て処理される。このように、各処理要素は第12図に示す
所定のセレクションコードを保持したパケットのみを処
理しそれ以外のパケットは何も行なわずに通過させると
ともに、処理を施したパケットに対して各処理要素がそ
のセレクションコードを次の処理要素に向けて更新する
ことによって、プログラムの実行処理が進行する。
この他に、ノード番号はデータフローグラフの各ノー
ドを識別する番号、環境番号は例えば本データ処理装置
の複数の使用者が本データ処理装置にロードされた同一
のプログラムを同時に実行する際に、各使用者を識別す
るための番号である。また、順序番号は相互に順序関係
を持ち同一のノード番号を環境番号を保持した複数のデ
ータパケットに対して同一のプログラムで記述された処
理を行なう時に各データパケットの順序関係を識別する
番号であり、(E)は順序関係を持つ複数のデータパケ
ットのうちの末尾のデータパケットであるときのみ1と
なる末尾フラグである。ノード番号、環境番号、順序番
号を合わせたものをタグと呼び、このタグの一致した二
つのパケットが二項演算の左右オペランドとして検出さ
れる。(L/R)は左右オペランドを区別するフラグであ
り、左オペランドの時1となる。(CY)、(OV)は演算
の結果格納される演算フラグであり、(CY)はキャリー
(桁上げ)フラグ、(OV)はオーバーフロー(桁あふ
れ)フラグである。(TF)は条件判定命令の実行によっ
て格納される真偽フラグであり、判定結果が、真の時
1、偽の時0となる。
次に、第3図、第4図に基づき、本データ処理装置の
詳細な動作を説明する。
第3図、第4図に分図表示したデータ駆動型データ処
理装置は、複数のレジスタが種々の回路を介してリング
状に接続された構成になっており、各レジスタに供給さ
れる共通のクロック信号(図では省略)に同期して、各
レジスタに後段のデータがラッチ(保持)されると同時
に、それまで保持していたデータ、あるいはそれまで保
持していたデータに所定の処理が施された結果データが
前段のレジスタにラッチされる仕組みになっている。即
ち、レジスタリング上の各レジスタに保持されている複
数のデータがクロック信号に同期して一斉に前段に向け
てシフトされ、各段において次のクロック信号までの時
間に所定の処理を施すことをくりかえすことによって循
環パイプライン型の処理が行なわれる。以下に、各処理
要素の動作を説明する。
(i) キューメモリ(Q) データ線(1)にデータパケットの1語目が到着する
とヘッダ識別信号(101)がハイレベルになりこれに応
じて、FIFO制御回路(102)は書き込み信号(105)を出
力して到着したデータパケットを1語目、2語目の順に
FIFOメモリ(103)に書き込む。FIFO制御回路(102)
は、FIFOメモリ(103)に滞在するデータパケットの数
を常時記憶する機能を待つ。滞在するデータパケット数
がゼロでなくかつ持ち要求信号(204)によって待ちが
要求されていなければ、読み出し信号(104)が出力さ
れて、FIFOメモリ(103)に書き込まれているデータパ
ケットのうち一番早く書き込まれたデータパケットが、
1語目、2語目の順に読み出されてデータ線(2)に出
力される。FIFOメモリ(103)に滞在するデータパケッ
ト数がゼロの時および待ち要求信号(204)によって待
ちが要求されている時は、読みだし信号(104)が禁止
されてFIFOメモリ(103)からの読みだしが禁止され、F
IFOメモリ(103)への書き込みのみが許可される。
(ii) プログラム記憶手段(PM) データ線(2)にデータパケットが到着するとプログ
ラムメモリ制御回路(201)に制御情報(202)が入力さ
れ、アドレスレジスタ(210)にはロード(ダンプ)パ
ケットの時はアドレスが、実行パケットの時はノード番
号がアドレス情報線(211)を経てラッチされるととも
にレジスタ(R1)にパケットの1語目がラッチされる。
アドレスレジスタ(210)の出力はプログラムメモリ(2
03)へのアドレスとなる。制御情報がプログラムメモリ
(203)へのロードを示しておれば、次のタイミングで
パケットの2語目のデータ値がレジスタ(R1)から出力
され、書き込み信号(208)によってデータ線(212)を
介してプログラムメモリ(203)に書き込まれる。制御
情報がプログラムメモリ(203)からのダンプを示して
おれば、読みだし信号(207)によってデータ線(212)
を介してプログラムメモリ(203)からデータ値が読み
出されてパケットの2語目に格納される。
ロードパケットによってプログラムメモリ(203)に
はデータフローグラフ(プログラム)の接続構造とプロ
グラムの実行中に使用される定数データ値が第9図に示
すような形式でロードされる。同図におけるモジュール
番号、セレクションコード、左右フラグ、ノード番号
は、プログラム記憶手段(PM)に到着したパケットに新
しく付加するための制御情報である。この他に定数デー
タ値が格納されていることを示す定数フラグ、データパ
ケットの複製処理を行なうことを示すコピーフラグが記
憶されている。
再び第3図に戻り、プログラム記憶手段(PM)に到着
したパケットが該手段(PM)で処理される実行パケット
(セレクションコード[S2S1S0]=[000])であれば
アドレスレジスタ(201)に保持されたノード番号をア
ドレスとしてプログラムメモリを読みだし、パケットの
1語目のうちのモジュール番号、セレクションコード、
左右フラグ、ノード番号のフィールドを第9図に示すよ
うに新しい制御情報に置換して、パケットの2語目のデ
ータ値はそのままにして出力する。この時プログラムメ
モリ(203)から読みだされてプログラムメモリ制御回
路(201)に入力されているフラグ情報(206)(定数フ
ラグ、コピーフラグ)のうちのコピーフラグがゼロであ
れば到着したパケットに対する処理を終了する。もしコ
ピーフラグが1、定数フラグが0であれば、待ち要求信
号(204)によりキューメモリ(Q)に待ちを要求し、
アドレスレジスタ(210)をインクリメントしてプログ
ラムメモリ(203)を読みだし、制御情報をプログラム
メモリ(203)から読み出した新しい制御情報に置換し
てパケットの1語目を出力するとともにプログラムメモ
リ制御回路(201)に新たなフラグ情報を入力し、新た
に読み出した定数フラグが0であれば出力するパケット
の2語目のデータ値として、入力パケットの保持してい
たデータ値をそのまま出力し、新たに読み出した定数フ
ラグが1であればアドレスレジスタ(210)をさらにイ
ンクリメントしてプログラムメモリ(203)に格納され
ている定数データ値を読み出し、出力するパケットの2
語目のデータ値として、この定数データ値を出力する。
このような動作を、キューメモリ(Q)を待ち状態にし
たまま、新たに読み出したコピーフラグが0になるまで
繰り返す。これがパケットの複製処理である。但し複製
処理の途中に待ち要求信号(302)によって持ちが要求
されれば、アドレスレジスタ(210)のインクリメント
及びレジスタ(R1)へのクロック信号の供給をレジスタ
制御線(209)によって停止させることによって複製処
理を中断する。また、複製処理中以外の時に待ち要求信
号(302)によって待ち要求されれば、レジスタ(R1)
へのクロック信号を停止させてプログラム記憶手段(P
M)からのデータの出力を停止させるとともに、待ち要
求信号(204)をキューメモリ(Q)に向けて出力す
る。このような待ち要求信号の連鎖により本データ処理
装置においては、キューメモリ(Q)を1ケ所に集中し
て保持する構成が実現されている。
(iii) ネットワークインタフェース(NIF) ネットワークインタフェース(NIF)においては、ロ
ード・ダンプ制御回路(307)においてロードパケット
は消去され(ヘッダ識別子がゼロにクリアされる)、ダ
ンプパケットのモジュール番号はホスト計算機(HC)行
きの番号(例えば[m2m1m0]=[000])に更新され
る。該インタフェイス(NIF)に到着するパケットには
次の4種類がある。即ち、 (a) データ線(3)からデータ線(4)へ転送され
るパケット(内部通過パケット) (b) データ線(3)からデータ線(40)へ転送され
るパケット(出力パケット) (c) データ線(30)からデータ線(4)へ転送され
るパケット(入力パケット) (d) データ線(30)からデータ線(40)へ転送され
るパケット(外部通過パケット) である。このうち、内部通過パケット及び入力パケット
は、本データ処理装置の番号として設定されたモジュー
ル番号を保持しており、出力パケット及び外部通過パケ
ットはそれ以外のモジュール番号を保持している。
入出力制御回路(301)は、データ線(3)、データ
線(30)よりそれぞれ制御情報(303)、制御情報(30
4)を入力する。この入出力制御回路(301)の制御によ
り、 データ線(3)、データ線(30)にそれぞれ内部通
過パケット、外部通過パケットが同時に到着した時は、
内部通過パケットはレジスタ(R2)、(R3)を経て、外
部通過パケットはレジスタ(R4)、(R5)を経てそれぞ
れ停止することなく通過する。
データ線(3)、データ線(30)にそれぞれ出力パ
ケット、入力パケットが同時に到着した時は、出力パケ
ットはレジスタ(R2)、(R6)を経て停止することなく
出力され、入力パケットはレジスタ(R4)、(R7)を経
て停止することなく入力される。
データ線(3)、データ線(30)にそれぞれ内部通
過パケット、入力パケットが同時に到着した時は、レジ
スタ(R2)、(R3)、(R6)へのクロック信号の供給と
レジスタ(R3)のデータ出力を禁止する禁止信号が制御
信号線(305)に出力されるとともに、待ち要求信号(3
02)によって持ちが要求され、入力パケットはレジスタ
(R4)、(R7)を経て停止することなく入力され、しか
る後に禁止信号と待ち要求信号が解除されて内部通過パ
ケットが通過する。
データ線(3)、データ線(30)にそれぞれ出力パ
ケット、外部通過パケットが同時に到着した時は、レジ
スタ(R2)、(R3)、(R6)へのクロック信号の供給と
レジスタ(R6)のデータ出力を禁止する禁止信号が制御
信号線(305)に出力されるとともに、待ち要求信号(3
02)によって待ちが要求され、外部通過パケットはレジ
スタ(R4)、(R5)を経て停止することなく通過し、し
かる後に禁止信号と待ち要求信号が解除されて出力パケ
ットが出力される。
データ線(3)、データ線(30)にパケットが同時
に到着しなかった場合は到着したパケットは停止するこ
となく所定の経路で転送される。
(iv) 発火制御手段(FC) ロード(ダンプ)パケットが到着すると、アドレスタ
グレジスタ(402)にアドレス情報線(401)を経てアド
レスがラッチされ、アドレス線(419)に出力される。
対生成制御回路(411)にはパケットの制御情報(409)
が入力され、制御信号群(410)が出力され、データ線
(417)、(408)のうちのいずれかを介して、データメ
モリ(405)、タグメモリ(406)、ソーティングメモリ
(407)のうちのいずれかにロード(いずれかがダン
プ)される。
タグメモリ(406)の所定のフィールドには、待ち合
わせデータが存在する時に1となる存在フラグを記憶す
るようになっており、ロードパケットによって、初期状
態ではこのフラグはタグメモリ(406)の全アドレスに
わたって0にクリアされている。また、ソーティングメ
モリ(407)の内容も全アドレスにわたってクリアされ
ている。
[S2S1S0]=[101]の発火制御の実行パケットが到
着すると、パケットのタグのうちの一部のフィールドが
アドレスタグレジスタ(402)にラッチされアドレス線
(419)に出力される。これをアドレスとして存在フラ
グ(412)を読み出す。一方、パケットのタグのうちの
残りのフィールドがデータタグレジスタ(403)にラッ
チされデータタグ(418)が出力されるとともにデータ
線(417)にはパケットの2語目のデータ値が出力され
る。ここで読み出した存在フラグが0であば、データ値
をデータメモリ(405)に、データタグをタグメモリ(4
06)に書き込むとともにタグメモリ(406)の存在フラ
グを1に更新するとともにパケット更新回路(421)に
おいてパケットを消去する。これによって対となる相手
のパケットの到着を待ち合わせることになる。読み出し
た存在フラグが1であれば、すでに対となる可能性のあ
るのパケットのデータ値とタグデータが記憶されている
ことを示しており、この時、到着したパケットのタグデ
ータ(418)とタグメモリ(406)から読み出したタグデ
ータが比較器(414)によって比較され、ここで一致信
号(413)が出力されると左右オペランドの対が検出さ
れ、到着したパケットのデータ値がデータ線(404)を
介してレジスタ(R9)、(R10)に、データメモリ(40
5)から読み出したデータ値がデータ線(416)を介して
レジスタ(R11)、(R12)にラッチされる。ここで、到
着したパケットの左右フラグ(L/R)ビットが1であれ
ばレジスタ(R9)、(R12)の出力が有効となり、到着
したパケットのL/Rビットが0であればレジスタ(R1
0)、(R11)の出力が有効となる。即ち、常にデータ線
(5)には左オペランドのデータ値が、データ線(50)
には右オペランドのデータ値が出力される。また、この
時パケット更新回路(421)においてセレクションコー
ドが[S2S1S0]=[001]に更新される。
[S2S1S0]=[111]のソーティングの実行パケット
が到着した時は、比較器(414)においてソーティング
メモリ(407)から読み出したデータと到着したパケッ
トのタグのうちの順序番号が比較される。両者が一致し
なかった場合は到着したパケットをそのままデータ線
(5)へ通過させる。両者が一致した場合は到着したパ
ケットのセレクションコードを[S2S1S0]=[001]に
更新して出力するとともに、さらに到着したパケットの
末尾フラグが0の時は、ソーティング制御回路(415)
により、それまでの値に1を加えたものを順序番号線
(420)を介してソーティングメモリ(407)に書き込
む。末尾フラグが1の時はソーティングメモリ(407)
にゼロを書き込む。
(v) 命令実行手段(EXE) 命令コードメモリ(510)のロード(ダンプ)パケッ
トが到着すると、アドレスレジスタ(534)にアドレス
値がラッチされ、データ線(512)を介して命令コード
メモリ(510)にデータ値がロード(命令コードメモリ
(10)から読み出したデータ値がダンプ)される。
ローカルメモリ(505)のロード(ダンプ)パケット
が到着するとマルチプレクサ(503)においてアドレス
情報線(502)が選択されパケットの1語目に保持され
ているアドレス値がアドレス線(504)に出力され、デ
ータ線(507)を介してローカルメモリ(505)にパケッ
トの2語目がロード(ローカルメモリ)(505)から読
み出したデータ値がダンプされる。
命令コードメモリ(510)にはプログラムの実行前
に、実行するプログラム中の各ノード番号に対応した命
令コードがロードパケットによりロードされており、命
令コードメモリ(510)をノード番号によって参照する
と対応する命令コードが読み出されるようになってい
る。
命令実行手段(EXE)で処理されるセレクションコー
ド[S2S1S0]=[001]を保持した実行パケットには1
オペランドの命令パケット(単項演算命令など)と2オ
ペランドの命令パケット(二項演算命令など)がある。
実行パケットが到着するとアドレスレジスタ(534)に
はノード番号がラッチされて命令コードメモリ(510)
から対応する命令コード(513)が読み出される。命令
コード(513)は、デコーダ(511)によってデコードさ
れ制御信号群(514)が出力される。制御信号群(514)
は、レジスタ(R14)、(R16)、(R18)、(R20)、
(R22)の順に、到着したパケットの1語目と並行して
転送され、各処理要素における制御信号として使用され
る。
命令の種類としては、 <a> ローカルメモリの読み出しまたは書き込みを行
なう命令、 <b> 単項または二項の演算命令、 <c> シフト命令、 <d> 条件判定命令、 <e> 制御情報更新命令、 <f> <a>〜<d>のうちのいくつかを組み合わせ
た複合命令、 がある。制御信号群(514)は、<a>〜<e>のそれ
ぞれに対応して制御信号群A〜制御信号群Eに分かれて
おり、それぞれの制御が独立に行なわれることによっ
て、<f>のような各種の複合命令の実行が可能となっ
ている。
制御信号群Aによってローカルメモリの読み出しまた
は書き込みが指定されていれば、マルチプレクサ(50
3)においてアドレス情報線(501)が選択されパケット
の2語目の左オペランドデータ値がローカルメモリ(50
5)のアドレスとなる。さらに読み出しの場合は、バッ
ファ(509)の出力を無効にしてローカルメモリ(505)
からデータを読み出してデータ線(507)を介して到着
したパケットの2語目の左データ値のフィールドに格納
する。書き込みの場合は、データ線(508)を介して到
着したパケットの左オペランドデータ値をローカルメモ
リ(505)に書き込む。
制御信号群Bによって演算処理が指定されていれば、
制御信号(521)、(522)の制御により、算術論理ユニ
ット(515)、算術論理ユニット(516)において、オペ
ランドデータの下位データ、上位データの順に指定され
た算術/論理演算が行なわれる。この時、データ線(52
6)を介して左オペランドデータ値のうちの下位データ
値が、データ線(527)を介して右オペランドデータ値
のうちの下位データ値が入力され、データ線(528)に
演算結果データ値のうちの下位データ値が出力される。
また、データ線(529)を介して左オペランドデータ値
のうちの上位データ値が、データ線(530)を介して右
オペランドデータ値のうちの上位データ値が入力され、
データ線(531)に演算結果データ値のうちの上位デー
タ値が出力される。
制御信号群Cによってシフトが指定されていれば、制
御信号(523)の制御によりシフタ(517)において所定
のデータシフト処理が実行される、またゼロ判定回路
(518)においては、常時左オペランドデータ値がゼロ
であるかないかの判定が行なわれる。
制御信号群Dによって条件判定処理が指定されていれ
ば制御信号(524)の制御により条件判定回路(519)に
おいて、指定された条件判定が行なわれ結果(真または
偽)が出力される。
制御信号群Eによって制御処理が指定されていれば、
制御信号(525)の制御により指定された制御処理(ノ
ード番号の更新、順序番号の更新、パケットの消去な
ど)が行なわれる。
(ト) 発明の効果 本発明によれば、データ駆動型データ処理装置におけ
るキューメモリを1ケ所に集中した構成を実現でき、デ
ータ駆動型データ処理装置がキューメモリのために費や
すハードウエア量を大幅に削減でき、結果的にデータ駆
動型データ処理装置全体のハードウエア量を削減できる
とともに、ハードウエア資源の効率の良い使用が可能と
なる。
【図面の簡単な説明】
第1図は本発明を用いたデータ駆動型データ処理装置が
用いられるデータフロー計算機システムの構成図、第2
図は本発明を用いたデータ駆動型データ処理装置の構成
図、第3図及び第4図は本発明を用いたデータ駆動型デ
ータ処理装置の更に詳細な構成図、第5図、第6図、第
7図及び第8図は本発明を用いたデータ駆動型データ処
理装置において用いられるデータパケットの構成、第9
図は本発明を用いたデータ駆動型データ処理装置のプロ
グラム記憶手段の記憶形式の一例を示す模式図、第10
図、第11図及び第12図はコード対照表図である。 (PM)……プログラム記憶手段、(NIF)……ネットワ
ークインタフェイス、(FC)……発火制御手段、(EX
E)……命令実行手段、(Q)……キューメモリ。

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】データ値と制御情報を含むデータを処理す
    るデータ駆動型のデータ処理装置であって、 1つのデータから複数のデータを生成する処理であるデ
    ータの複製処理を行う場合に生じる前記複製処理の終了
    を待ち合わせる待ちデータ、 及びデータの入力処理を行う場合に生じる前記入力処理
    の終了を待ち合わせる待ちデータ、 及びデータの出力処理を行う場合に生じる前記出力処理
    の終了を待ち合わせる待ちデータ を格納可能なキューメモリと、 データに所定の処理を施す、入力部と出力部とを夫々設
    けた複数の処理要素とを備え、 前記複数の処理要素のいずれかにおいて前記処理の終了
    を待たせる必要が生じた時に、 該待たせる必要が生じた処理要素と、 該待たせる必要が生じた処理要素からデータ処理の方向
    と逆方向にたどったキューメモリと を含め、これらの間に置かれた全ての処理要素からのデ
    ータの出力を禁止することを特徴となすデータ駆動型デ
    ータ処理装置。
  2. 【請求項2】前記複数の処理要素は、 データフローグラフの接続情報が格納され前記制御情報
    の付け換え及び前記複製処理を行うプログラム記憶手段
    と、 前記入力処理及び前記出力処理を行うインタフェース手
    段と、 二項演算などのオペランドデータを揃える発火制御処理
    を行う発火制御手段と、 演算命令や制御命令などの命令を実行する命令実行手段
    とであり、 前記キューメモリの出力部は前記プログラム記憶手段の
    入力部に、該プログラム記憶手段の出力部は前記インタ
    フェース手段の入力部に接続され、 前記プログラム記憶手段において前記制御情報の付け換
    えと前記複製処理の終了を待たせる必要が生じた時に、
    前記キューメモリからのデータの読み出しを禁止し、 前記インタフェース手段において前記入力処理及び前記
    出力処理の終了を待たせる必要が生じた時に、前記プロ
    グラム記憶手段からのデータの出力と前記キューメモリ
    からのデータの読み出しを禁止することを特徴となす特
    許請求の範囲第1項記載のデータ駆動型データ処理装
    置。
JP18049287A 1987-07-20 1987-07-20 データ駆動型データ処理装置 Expired - Lifetime JP2630779B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP18049287A JP2630779B2 (ja) 1987-07-20 1987-07-20 データ駆動型データ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP18049287A JP2630779B2 (ja) 1987-07-20 1987-07-20 データ駆動型データ処理装置

Publications (2)

Publication Number Publication Date
JPS6423337A JPS6423337A (en) 1989-01-26
JP2630779B2 true JP2630779B2 (ja) 1997-07-16

Family

ID=16084183

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18049287A Expired - Lifetime JP2630779B2 (ja) 1987-07-20 1987-07-20 データ駆動型データ処理装置

Country Status (1)

Country Link
JP (1) JP2630779B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01195540A (ja) * 1988-01-29 1989-08-07 Sharp Corp データのロードおよびダンプ方式
JP2589060Y2 (ja) * 1991-01-31 1999-01-20 有限会社フジオート 身体障害者用ハンドル旋回装置
JPH06928U (ja) * 1991-11-14 1994-01-11 株式会社ヤマコ 自動車の補助灯点滅装置

Also Published As

Publication number Publication date
JPS6423337A (en) 1989-01-26

Similar Documents

Publication Publication Date Title
US4675806A (en) Data processing unit utilizing data flow ordered execution
US5784630A (en) Method and apparatus for processing data in multiple modes in accordance with parallelism of program by using cache memory
TW581950B (en) Multiple logical interfaces to a shared coprocessor resource
US6978459B1 (en) System and method for processing overlapping tasks in a programmable network processor environment
US6029204A (en) Precise synchronization mechanism for SMP system buses using tagged snoop operations to avoid retries
USRE43825E1 (en) System and method for data forwarding in a programmable multiple network processor environment
US6732276B1 (en) Guarded computer instruction execution
JP2003029986A (ja) プロセッサ間レジスタ継承方法及びその装置
JPH06259253A (ja) データプロセッサおよびその動作方法
JPH0652519B2 (ja) メモリーサブシステム入力キュー
JP2630779B2 (ja) データ駆動型データ処理装置
JP2001306546A (ja) データ駆動型情報処理装置
JP2594093B2 (ja) データ駆動型データ処理装置
US7143247B1 (en) Method and apparatus for parallel execution pipeline data storage in a computer memory
JP2594140B2 (ja) データ駆動型データ処理装置
EP0700005B1 (en) Vector data bypass mechanism for vector computer
JP2594091B2 (ja) データ駆動型データ処理装置
JP2594092B2 (ja) データ駆動型データ処理装置
JP3497087B2 (ja) 命令制御装置及びその方法
JPH01211127A (ja) データ駆動型データ処理装置
JPH1131066A (ja) バッファ制御システム
JP2814683B2 (ja) 命令処理装置
JP3473506B2 (ja) パイプライン処理装置
JP5392810B2 (ja) 命令発行制御装置及び命令発行制御方法
JP2755646B2 (ja) データ駆動型データ処理装置

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term
FPAY Renewal fee payment (prs date is renewal date of database)

Year of fee payment: 11

Free format text: PAYMENT UNTIL: 20080425