JP2594093B2 - データ駆動型データ処理装置 - Google Patents
データ駆動型データ処理装置Info
- Publication number
- JP2594093B2 JP2594093B2 JP3776388A JP3776388A JP2594093B2 JP 2594093 B2 JP2594093 B2 JP 2594093B2 JP 3776388 A JP3776388 A JP 3776388A JP 3776388 A JP3776388 A JP 3776388A JP 2594093 B2 JP2594093 B2 JP 2594093B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- packet
- order
- memory
- information
- 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 - Fee Related
Links
Landscapes
- Multi Processors (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、データ駆動型のデータ処理装置に関し、更
に詳述すれば、配列データ等のデータ集合をより効率的
に処理することを可能としたデータ処理装置に関する。
に詳述すれば、配列データ等のデータ集合をより効率的
に処理することを可能としたデータ処理装置に関する。
一般にデータ駆動型データ処理装置は、データの流れ
をアークにて示し、命令をアーク同士が接続されたノー
ドにて示すデータフローグラフをプログラムとして実行
する所謂非ノイマン型コンピュータである。
をアークにて示し、命令をアーク同士が接続されたノー
ドにて示すデータフローグラフをプログラムとして実行
する所謂非ノイマン型コンピュータである。
このようなデータ駆動型データ処理装置では、処理対
象のデータと、宛先情報(アークの接続先を示す)とを
含むデータパケットが種々の処理要素、具体的にはデー
タ処理回路間を転送される間に、データフローグラフに
従った宛先情報の付け替え、データの複製あるいは命令
(四則演算等)の実行等が行われる。
象のデータと、宛先情報(アークの接続先を示す)とを
含むデータパケットが種々の処理要素、具体的にはデー
タ処理回路間を転送される間に、データフローグラフに
従った宛先情報の付け替え、データの複製あるいは命令
(四則演算等)の実行等が行われる。
宛先情報は、データに対して実行されるべき命令の記
憶番地に対応しており、宛先情報の付け替えにより種々
の命令を同一のデータに施すことが可能である。即ち、
宛先情報により指示される宛先がデータフローグラフの
上の命令ノードを意味し、宛先情報の付け替えがアーク
の接続を意味する。
憶番地に対応しており、宛先情報の付け替えにより種々
の命令を同一のデータに施すことが可能である。即ち、
宛先情報により指示される宛先がデータフローグラフの
上の命令ノードを意味し、宛先情報の付け替えがアーク
の接続を意味する。
各処理要素は、データが到着すると直ちにそのデータ
に所定の処理を施すように構成されており、データが各
処理要素にどのようなタイミングで到着するかは予め定
められているわけではない。従って、二項演算のように
二つのデータがペアとして揃うことにより始めて実行可
能になる演算処理では、二つのデータの到着を待値合わ
せて検出するペアリング機構が必要になる。このような
機構、所謂発火機構は、たとえば宛先情報を識別子とし
て待ち合わせを行うデータフロー型プロセッサμPD7281
(日本電気株式会社)が1984年4月9日発行の「日経エ
レクトロニクス」の第196頁に開示されている。
に所定の処理を施すように構成されており、データが各
処理要素にどのようなタイミングで到着するかは予め定
められているわけではない。従って、二項演算のように
二つのデータがペアとして揃うことにより始めて実行可
能になる演算処理では、二つのデータの到着を待値合わ
せて検出するペアリング機構が必要になる。このような
機構、所謂発火機構は、たとえば宛先情報を識別子とし
て待ち合わせを行うデータフロー型プロセッサμPD7281
(日本電気株式会社)が1984年4月9日発行の「日経エ
レクトロニクス」の第196頁に開示されている。
ところで、上述のような従来のデータ駆動型データ処
理装置では、複数のデータにて一単位に構成される配列
データのようなデータ集合相互間での演算処理等では、
データ集合に含まれる全データに同一の命令が実行され
るにも拘わらず、各データは他のデータ集合中の対応す
るデータと待合わせを行う必要がある。
理装置では、複数のデータにて一単位に構成される配列
データのようなデータ集合相互間での演算処理等では、
データ集合に含まれる全データに同一の命令が実行され
るにも拘わらず、各データは他のデータ集合中の対応す
るデータと待合わせを行う必要がある。
このような事情から、前述のような従来のデータ駆動
型データ処理装置が有している如き宛先情報のみによる
待合わせ機構(発火機構)では同一の宛先情報を有する
データの対が同時に複数存在する可能性が生じるため、
プログラム通りの処理が保証されない。
型データ処理装置が有している如き宛先情報のみによる
待合わせ機構(発火機構)では同一の宛先情報を有する
データの対が同時に複数存在する可能性が生じるため、
プログラム通りの処理が保証されない。
このため、たとえばデータ集合の各データにそれぞれ
異なった宛先情報を持たせるか、あるいは同一の宛先情
報を有する各データに対して1データの処理が終了した
後に次のデータの処理を行うような同期制御を行う必要
が生じる。
異なった宛先情報を持たせるか、あるいは同一の宛先情
報を有する各データに対して1データの処理が終了した
後に次のデータの処理を行うような同期制御を行う必要
が生じる。
しかし前者の場合には、データ集合中の全データにつ
いての命令を記憶する必要が生じ、メモリの効率が低下
する。しかも、予めデータ数が判明しているデータ集合
に対する演算処理にのみ適用可能である。
いての命令を記憶する必要が生じ、メモリの効率が低下
する。しかも、予めデータ数が判明しているデータ集合
に対する演算処理にのみ適用可能である。
一方後者では、本来非同期的に実行可能な各データの
演算処理に同期制御が必要になるため、データ駆動型デ
ータ処理装置の最大の特徴が無意味になる他、ハードウ
ェア的な規模が拡大し、データ処理効率も低下する。
演算処理に同期制御が必要になるため、データ駆動型デ
ータ処理装置の最大の特徴が無意味になる他、ハードウ
ェア的な規模が拡大し、データ処理効率も低下する。
更にいずれの場合も、データ集合の各データを個別に
処理する点に着目しており、データ集合全体を一元的に
管理するという視点に欠けており、効率的な処理という
には程遠い。
処理する点に着目しており、データ集合全体を一元的に
管理するという視点に欠けており、効率的な処理という
には程遠い。
以上のような事情から、たとえば同一の宛先情報を有
する複数のデータにて構成されるデータ集合の各データ
に順序情報を持たせ、この順序情報をそれぞれのデータ
の識別子として発火制御を行うことが考えられる。しか
し、この場合には以下の如き新たな問題が考えられる。
する複数のデータにて構成されるデータ集合の各データ
に順序情報を持たせ、この順序情報をそれぞれのデータ
の識別子として発火制御を行うことが考えられる。しか
し、この場合には以下の如き新たな問題が考えられる。
具体的には、発火制御手段は到着したデータパケット
が有する宛先情報に対応した待合わせメモリを使用した
発火制御を行う。従って、同一の宛先情報を有するデー
タ集合の各データは待合わせメモリの同一の領域を使用
した発火制御を行うため、たとえば第n番目のデータが
発火制御手段に到着した時点で、その一つ前のn−1番
目のデータの発火検出が終了していなければ第n番目の
データは発火制御手段を一旦通過してデータ処理装置の
リング状のネットワークを一周した後に再度発火制御手
段に到着する。
が有する宛先情報に対応した待合わせメモリを使用した
発火制御を行う。従って、同一の宛先情報を有するデー
タ集合の各データは待合わせメモリの同一の領域を使用
した発火制御を行うため、たとえば第n番目のデータが
発火制御手段に到着した時点で、その一つ前のn−1番
目のデータの発火検出が終了していなければ第n番目の
データは発火制御手段を一旦通過してデータ処理装置の
リング状のネットワークを一周した後に再度発火制御手
段に到着する。
一方ではこの間に、次の第n+1番目のデータが待合
わせメモリの領域を占有する可能性があるが、この可能
性が現実化した場合には発火検出の待合わせ順序が入れ
換わることになる。このため、たとえば第20図に示す如
く、データ集合と単一データとの演算を行うようなデー
タフロープログラムでは、右側に示した単一データは第
n番目の演算が終了するまでは第n+1番目が生成され
ないので、第n+1番目の要素は永久に発火出来ないこ
とになる。
わせメモリの領域を占有する可能性があるが、この可能
性が現実化した場合には発火検出の待合わせ順序が入れ
換わることになる。このため、たとえば第20図に示す如
く、データ集合と単一データとの演算を行うようなデー
タフロープログラムでは、右側に示した単一データは第
n番目の演算が終了するまでは第n+1番目が生成され
ないので、第n+1番目の要素は永久に発火出来ないこ
とになる。
本発明はこのような従来のデータ駆動型データ処理装
置のデータ集合を取り扱う際の不具合の解消を目的とす
るものである。
置のデータ集合を取り扱う際の不具合の解消を目的とす
るものである。
〔課題を解決するための手段〕 本発明のデータ駆動型データ処理装置では、同一の宛
先情報を有する複数のデータにて構成されるデータ集合
の各要素のデータに順序番号及び最後のデータの末尾記
号を付加する順序情報設定手段と、この順序情報設定手
段により付加された順序情報を識別子として同一宛先情
報を有するデータ集合の各データを所定の順序に従って
それぞれの順序情報の一致により処理する発火制御手段
とを備えている。
先情報を有する複数のデータにて構成されるデータ集合
の各要素のデータに順序番号及び最後のデータの末尾記
号を付加する順序情報設定手段と、この順序情報設定手
段により付加された順序情報を識別子として同一宛先情
報を有するデータ集合の各データを所定の順序に従って
それぞれの順序情報の一致により処理する発火制御手段
とを備えている。
本発明は、演算の処理対象のデータと、該データの宛
先を示す宛先情報とを含むデータパケットの内から発火
制御手段により前記宛先情報が一致する二つのデータパ
ケットを一対の処理対象として検出し、両データパケッ
トに含まれるデータに所定の処理を施すデータ駆動型デ
ータ処理装置において、同一の宛先情報を有する複数の
データにて構成されるデータ集合内の各データのパケッ
トに対して、各データの順序を示す順序番号及び同一デ
ータ集合内での末尾の順序であることを示す末尾記号に
て構成される順序情報を生成して付加する順序情報設定
手段と、データ集合の各データを格納し、それぞれのデ
ータが格納された際の順序情報と同一の順序情報をそれ
ぞれのデータの読出しに際して付加して出力するデータ
記憶手段とを備え、前記発火制御手段は、前記データ記
憶手段から読出された同一宛先情報を有するデータ集合
の各データをそれぞれの順序情報の一致を検出して所定
の処理を実行すべくなしてあると共に、その順序情報の
一致の検出を所定の順序に従って実行するための発火順
序設定手段を有することを特徴とする。
先を示す宛先情報とを含むデータパケットの内から発火
制御手段により前記宛先情報が一致する二つのデータパ
ケットを一対の処理対象として検出し、両データパケッ
トに含まれるデータに所定の処理を施すデータ駆動型デ
ータ処理装置において、同一の宛先情報を有する複数の
データにて構成されるデータ集合内の各データのパケッ
トに対して、各データの順序を示す順序番号及び同一デ
ータ集合内での末尾の順序であることを示す末尾記号に
て構成される順序情報を生成して付加する順序情報設定
手段と、データ集合の各データを格納し、それぞれのデ
ータが格納された際の順序情報と同一の順序情報をそれ
ぞれのデータの読出しに際して付加して出力するデータ
記憶手段とを備え、前記発火制御手段は、前記データ記
憶手段から読出された同一宛先情報を有するデータ集合
の各データをそれぞれの順序情報の一致を検出して所定
の処理を実行すべくなしてあると共に、その順序情報の
一致の検出を所定の順序に従って実行するための発火順
序設定手段を有することを特徴とする。
本発明のデータ駆動型データ処理装置では、複数のデ
ータにて構成されるデータ集合の各データを、同一の宛
先情報にて、且つそれぞれに付加された順序情報を識別
子として所定の順序に並べ換えて発火処理可能であり、
また最後のデータの末尾記号を付与することにより任意
のデータ数のデータ集合を取り扱うことが出来る。
ータにて構成されるデータ集合の各データを、同一の宛
先情報にて、且つそれぞれに付加された順序情報を識別
子として所定の順序に並べ換えて発火処理可能であり、
また最後のデータの末尾記号を付与することにより任意
のデータ数のデータ集合を取り扱うことが出来る。
第1図に本発明のデータ駆動型データ処理装置を用い
たシステム例としてデータフロー計算機システムの概要
を示す。
たシステム例としてデータフロー計算機システムの概要
を示す。
同図に示すシステムは、システム内部のデータの基本
単位であるデータパケット(本来のデータ値の他に制御
情報を組み合わせて構成されている)を転送するリング
状転送路であるリングネットワークRNに、それ自身がリ
ングネットワークRNの一部をなすと共にデータパケット
の入出力を制御するネットワークインタフェースNIF,NI
F,NIF1…NIFnを介して、ホストインタフェースHI、デー
タ記憶装置DM、データフロー計算装置DFC1〜DFCnが結合
されており、ホストインタフェースHIには更にホスト計
算機HCが接続されている。
単位であるデータパケット(本来のデータ値の他に制御
情報を組み合わせて構成されている)を転送するリング
状転送路であるリングネットワークRNに、それ自身がリ
ングネットワークRNの一部をなすと共にデータパケット
の入出力を制御するネットワークインタフェースNIF,NI
F,NIF1…NIFnを介して、ホストインタフェースHI、デー
タ記憶装置DM、データフロー計算装置DFC1〜DFCnが結合
されており、ホストインタフェースHIには更にホスト計
算機HCが接続されている。
同システムのデータフロー計算装置DFC1〜DFCnとネッ
トワークインタフェースNIF1〜NIFnそれぞれとを組合わ
せたものは、内部がリング状をなすデータ駆動型データ
処理装置として動作し、データフローグラフによって記
述されたデータ駆動型(データフロー型)のプログラム
を実行する。
トワークインタフェースNIF1〜NIFnそれぞれとを組合わ
せたものは、内部がリング状をなすデータ駆動型データ
処理装置として動作し、データフローグラフによって記
述されたデータ駆動型(データフロー型)のプログラム
を実行する。
具体的には、まずホスト計算機HCから、ホストインタ
フェースHI、ネットワークインタフェースNIF、リング
ネットワークRN、ネットワークインタフェースNIFi(i
は1〜n)を介してデータフロー計算装置DFCiにプログ
ラムがダウンロードされ、次に同じ経路で、プログラム
の実行を開始させるデータパケットである開始パケット
がデータフロー計算装置DFCiに入力されるとプログラム
の実行が開始され、プログラムの実行が終了すると、実
行の終了を示すデータパケットである終了パケットが、
データフロー計算機DFCiからネットワークインタフェー
スNIFi,リングネットワークRN,ネットワークインタフェ
ースNIF,ホストインタフェースHIを介してホスト計算機
HCに出力される。
フェースHI、ネットワークインタフェースNIF、リング
ネットワークRN、ネットワークインタフェースNIFi(i
は1〜n)を介してデータフロー計算装置DFCiにプログ
ラムがダウンロードされ、次に同じ経路で、プログラム
の実行を開始させるデータパケットである開始パケット
がデータフロー計算装置DFCiに入力されるとプログラム
の実行が開始され、プログラムの実行が終了すると、実
行の終了を示すデータパケットである終了パケットが、
データフロー計算機DFCiからネットワークインタフェー
スNIFi,リングネットワークRN,ネットワークインタフェ
ースNIF,ホストインタフェースHIを介してホスト計算機
HCに出力される。
第2図に本発明のデータ駆動型データ処理装置の概略
構成を示す。同図の装置においてQはキューメモリ、PM
はプログラム記憶手段、NIFはネットワークインタフェ
ース、FCは発火制御手段、EXEは命令実行手段であり、
各処理要素がリング状に結合されている。なお、1〜5
と30、40、50はデータ線である。
構成を示す。同図の装置においてQはキューメモリ、PM
はプログラム記憶手段、NIFはネットワークインタフェ
ース、FCは発火制御手段、EXEは命令実行手段であり、
各処理要素がリング状に結合されている。なお、1〜5
と30、40、50はデータ線である。
第2図を用いて本データ処理装置の動作の概略を説明
する。ホスト計算機HCからロードされたプログラム(デ
ータフローグラフ)は、プログラム記憶手段PMに格納さ
れる。開始パケットが各要素、即ちネットワークインタ
フェースNIF、発火制御手段FC、命令実行手段EXE、キュ
ーメモリQを介してプログラム記憶手段PMに到着すると
プログラムの実行が開始される。プログラムの実行中に
プログラム記憶手段PMに入力されるパケットの制御情報
はこのデータフローグラフに従って付け替えられたり、
あるいば同じデータフローグラフに従ってデータパケッ
トの複製処理が行なわれたりする。プログラム記憶手段
PMから出力されたパケットはネットワークインタフェー
スNIFにおいて外部に出力されるか発火制御手段FCに向
けて転送されるかのを選択がなされる。
する。ホスト計算機HCからロードされたプログラム(デ
ータフローグラフ)は、プログラム記憶手段PMに格納さ
れる。開始パケットが各要素、即ちネットワークインタ
フェースNIF、発火制御手段FC、命令実行手段EXE、キュ
ーメモリQを介してプログラム記憶手段PMに到着すると
プログラムの実行が開始される。プログラムの実行中に
プログラム記憶手段PMに入力されるパケットの制御情報
はこのデータフローグラフに従って付け替えられたり、
あるいば同じデータフローグラフに従ってデータパケッ
トの複製処理が行なわれたりする。プログラム記憶手段
PMから出力されたパケットはネットワークインタフェー
スNIFにおいて外部に出力されるか発火制御手段FCに向
けて転送されるかのを選択がなされる。
発火制御手段FCでは主に、二項演算命令などの左オペ
ランドと右オペランドとをデータ対として検出して、二
つのオペランドを対にして出力する発火制御処理を行
う。左オペランドは出力ライン5に、右オペランドは出
力フイン50に出力される。
ランドと右オペランドとをデータ対として検出して、二
つのオペランドを対にして出力する発火制御処理を行
う。左オペランドは出力ライン5に、右オペランドは出
力フイン50に出力される。
命令実行手段EXEでは、到着したパケットの制御情報
によって指定される命令を到着したパケットに対して施
して出力する。これらの両要素、発火制御手段FC、命令
実行手段EXEにおいてはパケットが滞ることはないが、
ネットワークインタフェースNIFにおいては外部からパ
ケットが入力される時、出力しようとしても出力できな
い時、及びプログラム記憶手段PMにおいてデータの複製
処理が行なわれる時はビジー状態となる。これらの場合
には後続するデータパケットは停止してビジー状態の解
除を待たなければならない。キューメモリQはこのよう
な時にデータを一時格納して待たせるためのバッファリ
ング機能を有している。
によって指定される命令を到着したパケットに対して施
して出力する。これらの両要素、発火制御手段FC、命令
実行手段EXEにおいてはパケットが滞ることはないが、
ネットワークインタフェースNIFにおいては外部からパ
ケットが入力される時、出力しようとしても出力できな
い時、及びプログラム記憶手段PMにおいてデータの複製
処理が行なわれる時はビジー状態となる。これらの場合
には後続するデータパケットは停止してビジー状態の解
除を待たなければならない。キューメモリQはこのよう
な時にデータを一時格納して待たせるためのバッファリ
ング機能を有している。
各処理要素において上記のような処理が施されながら
データパケットが周回することによってプログラムが実
行される。また、データ処理装置内部に複数のデータパ
ケットが存在する時には、各々のデータパケットに対し
て、異なる情報要素において同時に異なる処理を施すパ
イプライン型の処理を行なうことができる。従って、本
データ処理は、リング状のパイプライン型データ処理装
置であると言える。
データパケットが周回することによってプログラムが実
行される。また、データ処理装置内部に複数のデータパ
ケットが存在する時には、各々のデータパケットに対し
て、異なる情報要素において同時に異なる処理を施すパ
イプライン型の処理を行なうことができる。従って、本
データ処理は、リング状のパイプライン型データ処理装
置であると言える。
第3図及び第4図に本発明のデータ駆動型データ処理
装置の更に詳細な構成を示し、第5図〜第8図に本デー
タ処理装置に適用するデータパケットの構成を示す。
装置の更に詳細な構成を示し、第5図〜第8図に本デー
タ処理装置に適用するデータパケットの構成を示す。
第5図にはデータをデータ処理装置内部の所定のメモ
リにダウンロードするためのロードパケット、第6図は
データ処理装置内部の所定のメモリからデータをダンプ
する(読み出す)ためのダンプパケット、第7図及び第
8図はプログラムの実行中に処理される実行パケットで
あり、発火制御手段FCにおいて対となる左右のオペラン
ドが検出されて、二つのオペランドが組になって出力さ
れたときに第7図の構成となる。
リにダウンロードするためのロードパケット、第6図は
データ処理装置内部の所定のメモリからデータをダンプ
する(読み出す)ためのダンプパケット、第7図及び第
8図はプログラムの実行中に処理される実行パケットで
あり、発火制御手段FCにおいて対となる左右のオペラン
ドが検出されて、二つのオペランドが組になって出力さ
れたときに第7図の構成となる。
以下これ等の図に基づきデータパケットについて説明
する。
する。
総てのデータパケットは2語構成であり、1語目と2
語目とはヘッダ識別子Hによって識別される。各データ
パケットはデータ値とその他の情報(制御情報)とから
なる。制御情報のうちf1,f0はパケット識別子であり第1
0図のように定義され、ロード,ダンプ及び実行の各パ
ケットを識別している。
語目とはヘッダ識別子Hによって識別される。各データ
パケットはデータ値とその他の情報(制御情報)とから
なる。制御情報のうちf1,f0はパケット識別子であり第1
0図のように定義され、ロード,ダンプ及び実行の各パ
ケットを識別している。
モジュール番号は、ホストインタフェースHI、データ
記憶装置DM、各データフロー計算装置DFC1,DFC2…DFCn
等の各処理モジュールを識別する番号であり、各モジュ
ールは自分の番号を持っており自分のモジュール番号を
持ったデータパケットのみを入力するようになってい
る。
記憶装置DM、各データフロー計算装置DFC1,DFC2…DFCn
等の各処理モジュールを識別する番号であり、各モジュ
ールは自分の番号を持っており自分のモジュール番号を
持ったデータパケットのみを入力するようになってい
る。
対象メモリ番号はロードあるいはダンプの際に対象と
なるメモリを指定する番号であり、第11図のように定義
されている。
なるメモリを指定する番号であり、第11図のように定義
されている。
セレクションコードは、データ処理装置内部でデータ
パケットが処理される経路を規定したものであり各コー
ド値は第12図に示すような意味を持つ。即ち、両図の図
表に従えば、例えば開始パケットは、〔S2S1S0〕=“00
0"というプログラム記憶手段PM宛のセレクションコード
を保持しており、これが該手段PMにおいて〔S2S1S0〕=
“101"に付け替えられると、〔S2S1S0〕=“101"を保持
したパケットは発火制御手段FCにおいて処理され、この
発火制御手段FCは処理を終えるとセレクションコードを
〔S2S1S0〕=“001"に変更したパケットを出力する。こ
のパケットは次に命令実行手段EXEにおいて処理され、
この命令実行手段EXEは処理を終えるとセレクションコ
ードを〔S2S1S0〕=“000"に変更したパケットを出力す
ることにより、パケットは再びプログラム記憶手段PMに
おいて処理される。
パケットが処理される経路を規定したものであり各コー
ド値は第12図に示すような意味を持つ。即ち、両図の図
表に従えば、例えば開始パケットは、〔S2S1S0〕=“00
0"というプログラム記憶手段PM宛のセレクションコード
を保持しており、これが該手段PMにおいて〔S2S1S0〕=
“101"に付け替えられると、〔S2S1S0〕=“101"を保持
したパケットは発火制御手段FCにおいて処理され、この
発火制御手段FCは処理を終えるとセレクションコードを
〔S2S1S0〕=“001"に変更したパケットを出力する。こ
のパケットは次に命令実行手段EXEにおいて処理され、
この命令実行手段EXEは処理を終えるとセレクションコ
ードを〔S2S1S0〕=“000"に変更したパケットを出力す
ることにより、パケットは再びプログラム記憶手段PMに
おいて処理される。
このように、各処理要素は第12図に示す所定のセレク
ションコードを保持したパケットのみを処理しそれ以外
のパケットは何も行なわずに通過させるとともに、処理
を施したパケットに対して各処理要素がそのセレクショ
ンコードを次の処理要素に向けて更新することによっ
て、プログラムの実行処理が進行する。
ションコードを保持したパケットのみを処理しそれ以外
のパケットは何も行なわずに通過させるとともに、処理
を施したパケットに対して各処理要素がそのセレクショ
ンコードを次の処理要素に向けて更新することによっ
て、プログラムの実行処理が進行する。
この他に、ノード番号はデータフローグラフの各ノー
ドを識別する番号、環境番号は例えば本データ処理装置
の複数の使用者が本データ処置装置にロードされた同一
のプログラムを同時に実行する際に、各使用者を識別す
るための番号である。
ドを識別する番号、環境番号は例えば本データ処理装置
の複数の使用者が本データ処置装置にロードされた同一
のプログラムを同時に実行する際に、各使用者を識別す
るための番号である。
また、順序番号は相互に順序関係を持ち同一のノード
番号と環境番号とを保持した複数のデータパケットに対
して同一のプログラムで記述された処理を行う時に各デ
ータパケットの順序関係を識別する番号であり、Eは順
序関係を持つ複数のデータパケットのうちの末尾のデー
タパケットであるときのみ“1"となる末尾フラグであ
る。ノード番号、環境番号、順序番号を合わせたものを
タグと呼び、このタグが一致した二つのパケットが二項
演算の左右オペランドとして検出される。
番号と環境番号とを保持した複数のデータパケットに対
して同一のプログラムで記述された処理を行う時に各デ
ータパケットの順序関係を識別する番号であり、Eは順
序関係を持つ複数のデータパケットのうちの末尾のデー
タパケットであるときのみ“1"となる末尾フラグであ
る。ノード番号、環境番号、順序番号を合わせたものを
タグと呼び、このタグが一致した二つのパケットが二項
演算の左右オペランドとして検出される。
L/Rは左右オペランドを区別するフラグであり、左オ
ペランドの時に“1"となる。
ペランドの時に“1"となる。
CY、OVは演算の結果格納される演算フラグであり、CY
はキャリー(桁上げ)フラグ、OVはオーバーフロー(桁
あふれ)フラグである。
はキャリー(桁上げ)フラグ、OVはオーバーフロー(桁
あふれ)フラグである。
TFは条件判定命令の実行によって格納される真偽フラ
グであり、判定結果が真の時“1"、偽の時“0"となる。
グであり、判定結果が真の時“1"、偽の時“0"となる。
次に、第3図、第4図に基づき、本データ処理装置の
詳細な動作を説明する。
詳細な動作を説明する。
第3図、第4図に分図表示したデータ駆動型データ処
理装置は、複数のレジスタが種々の回路を介してリング
状に接続された構成になっており、各レジスタに供給さ
れる共通のクロック信号(図では省略)に同期して、各
レジスタに後段のデータがラッチ(保持)されると同時
に、それまで保持されていたデータ、あるいはそれまで
保持していたデータに所定の処理が施された結果のデー
タが前段のレジスタにラッチされることによりデータを
順次伝送する仕組みになっている。即ち、レジスタリン
グ上の各レジスタに保持されている複数のデータがクロ
ック信号に同期して一斉に前段に向けてシフトされ、各
段において次のクロック信号までの時間に所定の処理を
施すことをくりかえすことによって循環パイプライン型
の処理が行なわれる。以下に、各処理要素の動作を説明
する。
理装置は、複数のレジスタが種々の回路を介してリング
状に接続された構成になっており、各レジスタに供給さ
れる共通のクロック信号(図では省略)に同期して、各
レジスタに後段のデータがラッチ(保持)されると同時
に、それまで保持されていたデータ、あるいはそれまで
保持していたデータに所定の処理が施された結果のデー
タが前段のレジスタにラッチされることによりデータを
順次伝送する仕組みになっている。即ち、レジスタリン
グ上の各レジスタに保持されている複数のデータがクロ
ック信号に同期して一斉に前段に向けてシフトされ、各
段において次のクロック信号までの時間に所定の処理を
施すことをくりかえすことによって循環パイプライン型
の処理が行なわれる。以下に、各処理要素の動作を説明
する。
(i) キューメモリQ データ線1にデータパケットの1語目が到着するとヘ
ッダ識別信号101がハイレベルに転じ、これに応じてFIF
O制御回路102は書き込み信号105を出力して到着したデ
ータパケットを1語目,2語目の順にFIFOメモリ103に書
き込む。FIFO制御回路102は、FIFOメモリ103に滞在する
データパケットの数を常時記憶する機能を持つ。FIFOメ
モリ103に滞在するデータパケット数がゼロでなく且つ
待ち要求信号204によって待ちが要求されていなけれ
ば、読み出し信号104が出力されて、FIFOメモリ103に書
き込まれているデータパケットのうち一番早く書き込ま
れたデータパケットが、1語目,2語目の順に読み出され
てデータ線2に出力される。FIFOメモリ103に滞在する
データパケット数がゼロの時および待ち要求信号204に
よって待ちが要求されている時は、読み出し信号104が
禁止されてFIFOメモリ103からの読み出しが禁止され、F
IFOメモリ103への書き込みのみが許可される。
ッダ識別信号101がハイレベルに転じ、これに応じてFIF
O制御回路102は書き込み信号105を出力して到着したデ
ータパケットを1語目,2語目の順にFIFOメモリ103に書
き込む。FIFO制御回路102は、FIFOメモリ103に滞在する
データパケットの数を常時記憶する機能を持つ。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の出力
はプログラムメモリ203へのアドレスとなる。制御情報
がプログラムメモリ203へのロードを示しておれば、次
のタイミングでパケットの2語目のデータ値がレジスタ
R1から出力され、書き込み信号208によってデータ線212
を介してプログラムメモリ203に書き込まれる。制御情
報がプログラムメモリ203からのダンプを示しておれ
ば、読み出し信号207によってデータ線212を介してプロ
グラムメモリ203からデータ値が読み出され、パケット
の2語目に格納される。
メモリ制御回路201に制御情報202が入力され、アドレス
レジスタ210にはロード(ダンプ)パケットの時はアド
レスが、実行パケットの時はノード番号がアドレス情報
線211を経てラッチされると共にレジスタR1にパケット
の1語目がラッチされる。アドレスレジスタ210の出力
はプログラムメモリ203へのアドレスとなる。制御情報
がプログラムメモリ203へのロードを示しておれば、次
のタイミングでパケットの2語目のデータ値がレジスタ
R1から出力され、書き込み信号208によってデータ線212
を介してプログラムメモリ203に書き込まれる。制御情
報がプログラムメモリ203からのダンプを示しておれ
ば、読み出し信号207によってデータ線212を介してプロ
グラムメモリ203からデータ値が読み出され、パケット
の2語目に格納される。
ロードパケットによってプログラムメモリ203にはデ
ータフローグラフ(プログラム)の接続構造とプログラ
ムの実行中に使用される定数データ値が第9図に示すよ
うな形式でロードされる。
ータフローグラフ(プログラム)の接続構造とプログラ
ムの実行中に使用される定数データ値が第9図に示すよ
うな形式でロードされる。
第9図におけるモジュール番号、セレクションコー
ド、左右フラグ、ノード番号は、プログラム記憶手段PM
に到着したパケットに新しく付加するための制御情報で
ある。この他に定数データ値が格納されていることを示
す定数フラグ、データパケットの複数処理を行うことを
示すコピーフラグが記憶されている。
ド、左右フラグ、ノード番号は、プログラム記憶手段PM
に到着したパケットに新しく付加するための制御情報で
ある。この他に定数データ値が格納されていることを示
す定数フラグ、データパケットの複数処理を行うことを
示すコピーフラグが記憶されている。
再び第3図に戻り、プログラム記憶手段PMに到着した
パケットがこのプログラム記憶手段PMで処理される実行
パケット(セレクションコード〔S2S1S0〕=“000")で
あればプログラムメモリ制御回路201はアドレスレジス
タ210に保持されたノード番号をアドレスとしてプログ
ラムメモリ203の内容を読み出し、パケットの1語目の
内のモジュール番号、セレクションコード、左右フラ
グ、ノード番号のフィールドを第9図に示すような新し
い制御情報に置換して、パケットの2語目のデータ値は
そのままで出力する。
パケットがこのプログラム記憶手段PMで処理される実行
パケット(セレクションコード〔S2S1S0〕=“000")で
あればプログラムメモリ制御回路201はアドレスレジス
タ210に保持されたノード番号をアドレスとしてプログ
ラムメモリ203の内容を読み出し、パケットの1語目の
内のモジュール番号、セレクションコード、左右フラ
グ、ノード番号のフィールドを第9図に示すような新し
い制御情報に置換して、パケットの2語目のデータ値は
そのままで出力する。
この時、プログラムメモリ203から読み出されてプロ
グラムメモリ制御回路201に入力されているフラグ情報2
06(定数フラグ、コピーフラグ)の内のコピーフラグが
“0"であれば到着したパケットに対する処理を終了す
る。もしコピーフラグが“1"、定数フラグが“0"であれ
ば、待ち要求信号204によりキューメモリQに待ちを要
求し、アドレスレジスタ210をインクリメントしてプロ
グラムメモリ203を読み出し、制御情報をプログラムメ
モリ203から読み出した新しい制御情報に置換してパケ
ットの1語目を出力すると共にプログラムメモリ制御回
路201に新たなフラグ情報を入力し、新たに読み出した
定数フラグが“0"であれば出力するパケットの2語目の
データ値として、入力パケットが保持していたデータ値
をそのまま出力し、新たに読み出した定数フラグが“1"
であればアドレスレジスタ210を更にインクリメントし
てプログラムメモリ203に格納されている定数データ値
を読み出し、出力するパケットの2語目のデータ値とし
て、この定数データ値を出力する。
グラムメモリ制御回路201に入力されているフラグ情報2
06(定数フラグ、コピーフラグ)の内のコピーフラグが
“0"であれば到着したパケットに対する処理を終了す
る。もしコピーフラグが“1"、定数フラグが“0"であれ
ば、待ち要求信号204によりキューメモリQに待ちを要
求し、アドレスレジスタ210をインクリメントしてプロ
グラムメモリ203を読み出し、制御情報をプログラムメ
モリ203から読み出した新しい制御情報に置換してパケ
ットの1語目を出力すると共にプログラムメモリ制御回
路201に新たなフラグ情報を入力し、新たに読み出した
定数フラグが“0"であれば出力するパケットの2語目の
データ値として、入力パケットが保持していたデータ値
をそのまま出力し、新たに読み出した定数フラグが“1"
であればアドレスレジスタ210を更にインクリメントし
てプログラムメモリ203に格納されている定数データ値
を読み出し、出力するパケットの2語目のデータ値とし
て、この定数データ値を出力する。
このような動作を、キューメモリQを待ち状態にした
まま、新たに読み出したコピーフラグが“0"になるまで
繰り返す。これがパケットの複製処理である。
まま、新たに読み出したコピーフラグが“0"になるまで
繰り返す。これがパケットの複製処理である。
但し複製処理中に待ち要求信号302によって待ちが要
求されれば、アドレスレジスタ210のインクリメント及
びレジスタR1へのクロック信号の供給をレジスタ制御線
209によって停止させることによって複製処理を中断す
る。
求されれば、アドレスレジスタ210のインクリメント及
びレジスタR1へのクロック信号の供給をレジスタ制御線
209によって停止させることによって複製処理を中断す
る。
また、複製処理中以外の時に待ち要求信号302によっ
て待ちが要求されれば、レジスタR1へのクロック信号を
停止させてプログラム記憶手段PMからのデータの出力を
停止させるとともに、待ち要求信号204をキューメモリ
Qに向けて出力する。このような待ち要求信号の連鎖に
より本データ処理装置においては、キューメモリQを1
ケ所に集中して保持する構成が実現されている。
て待ちが要求されれば、レジスタR1へのクロック信号を
停止させてプログラム記憶手段PMからのデータの出力を
停止させるとともに、待ち要求信号204をキューメモリ
Qに向けて出力する。このような待ち要求信号の連鎖に
より本データ処理装置においては、キューメモリQを1
ケ所に集中して保持する構成が実現されている。
(iii) ネットワークインタフェースNIF ネットワークインタフェースNIFにおいては、ロード
・ダンプ制御回路307においてロードパケットは消去さ
れ(ヘッダ識別子が“0"にクリアされる)、ダンプパケ
ットのモジュール番号はホスト計算機HC行きの番号(例
えば〔m2m1m0〕=“000")に更新される。このインタフ
ェースNIFに到着するパケットには次の4種類がある。
即ち、 (a) データ線3からデータ線4へ転送されるパケッ
ト(内部通過パケット) (b) データ線3からデータ線40へ転送されるパケッ
ト(出力パケット) (c) データ線30からデータ線4へ転送されるパケッ
ト(入力パケット) (d) データ線30からデータ線40へ転送されるパケッ
ト(外部通過パケット) である。これらの内、内部通過パケット及び入力パケッ
トは、本データ処理装置の番号として設定されたモジュ
ール番号を保持しており、出力パケット及び外部通過パ
ケットはそれ以外のモジュール番号を保持している。
・ダンプ制御回路307においてロードパケットは消去さ
れ(ヘッダ識別子が“0"にクリアされる)、ダンプパケ
ットのモジュール番号はホスト計算機HC行きの番号(例
えば〔m2m1m0〕=“000")に更新される。このインタフ
ェースNIFに到着するパケットには次の4種類がある。
即ち、 (a) データ線3からデータ線4へ転送されるパケッ
ト(内部通過パケット) (b) データ線3からデータ線40へ転送されるパケッ
ト(出力パケット) (c) データ線30からデータ線4へ転送されるパケッ
ト(入力パケット) (d) データ線30からデータ線40へ転送されるパケッ
ト(外部通過パケット) である。これらの内、内部通過パケット及び入力パケッ
トは、本データ処理装置の番号として設定されたモジュ
ール番号を保持しており、出力パケット及び外部通過パ
ケットはそれ以外のモジュール番号を保持している。
入出力制御回路301は、データ線3及び30よりそれぞ
れ制御情報303及び304を入力する。この入出力制御回路
301の制御により、 データ線3,30にそれぞれ内部通過パケット、外部通
過パケットが同時に到着した時は、内部通過パケットは
レジスタR2,R3を経て、また外部通過パケットはレジス
タR4,R5を経てそれぞれ停止することなく通過する。
れ制御情報303及び304を入力する。この入出力制御回路
301の制御により、 データ線3,30にそれぞれ内部通過パケット、外部通
過パケットが同時に到着した時は、内部通過パケットは
レジスタR2,R3を経て、また外部通過パケットはレジス
タR4,R5を経てそれぞれ停止することなく通過する。
データ線3,30にそれぞれ出力パケット、入力パケッ
ト、入力パケットが同時に到着した時は、出力パケット
はレジスタR2,R6を経て停止することなく出力され、入
力パケットはレジスタR4,R7を経て停止することなく入
力される。
ト、入力パケットが同時に到着した時は、出力パケット
はレジスタR2,R6を経て停止することなく出力され、入
力パケットはレジスタR4,R7を経て停止することなく入
力される。
データ線3,30にそれぞれ内部通過パケット、入力パ
ケットが同時に到着した時は、レジスタR2,R3,R6へのク
ロック信号の供給とレジスタR3のデータ出力を禁止する
禁止信号が制御信号線305に出力されると共に、待ち要
求信号302によって待ちが要求され、入力パケットはレ
ジスタR4,R7を経て停止することなく入力され、しかる
後に禁止信号と待ち要求信号が解除されて内部通過パケ
ットが通過する。
ケットが同時に到着した時は、レジスタR2,R3,R6へのク
ロック信号の供給とレジスタR3のデータ出力を禁止する
禁止信号が制御信号線305に出力されると共に、待ち要
求信号302によって待ちが要求され、入力パケットはレ
ジスタR4,R7を経て停止することなく入力され、しかる
後に禁止信号と待ち要求信号が解除されて内部通過パケ
ットが通過する。
データ線3,30にそれぞれ出力パケット、外部通過パ
ケットが同時に到着した時は、レジスタR2,R3,R6へのク
ロック信号の供給とレジスタR6のデータ出力を禁止する
禁止信号が制御信号線305に出力されるとともに、待ち
要求信号302によって待ちが要求され、外部通過パケッ
トはレジスタR4,R5を経て停止することなく通過し、し
かる後に禁止信号と待ち要求信号が解除されて出力パケ
ットが出力される。
ケットが同時に到着した時は、レジスタR2,R3,R6へのク
ロック信号の供給とレジスタR6のデータ出力を禁止する
禁止信号が制御信号線305に出力されるとともに、待ち
要求信号302によって待ちが要求され、外部通過パケッ
トはレジスタR4,R5を経て停止することなく通過し、し
かる後に禁止信号と待ち要求信号が解除されて出力パケ
ットが出力される。
データ線3,30にパケットが同時に到着しなかったパ
ケットは停止することなく所定の経路で転送される。
ケットは停止することなく所定の経路で転送される。
(iv) 発火制御手段FC ロード(ダンプ)パケットが到着すると、アドレスタ
グレジスタ402にアドレス情報線401を経てアドレスがラ
ッチされ、アドレス線419に出力される。
グレジスタ402にアドレス情報線401を経てアドレスがラ
ッチされ、アドレス線419に出力される。
対生成制御回路411にはパケットの制御情報409が入力
され、制御信号群410が出力され、データ線417,408の内
のいずれかを介して、データメモリ405、ダグメモリ40
6、ソーティングメモリ407の内のいずれかにロード(い
ずれかがダンプ)される。
され、制御信号群410が出力され、データ線417,408の内
のいずれかを介して、データメモリ405、ダグメモリ40
6、ソーティングメモリ407の内のいずれかにロード(い
ずれかがダンプ)される。
ダグメモリ406の所定のフィールドは、待ち合わせデ
ータが存在する時に“1"となる存在フラグを記憶するフ
ラグメモリとして機能する。この存在フラグは、初期状
態ではロードフラグによりタグメモリ406の全アドレス
にわたって“0"にクリアされている。また、ソーティン
グメモリ407の内容も全アドレスにわたってクリアされ
ている。
ータが存在する時に“1"となる存在フラグを記憶するフ
ラグメモリとして機能する。この存在フラグは、初期状
態ではロードフラグによりタグメモリ406の全アドレス
にわたって“0"にクリアされている。また、ソーティン
グメモリ407の内容も全アドレスにわたってクリアされ
ている。
〔S2S1S0〕=“101"の発火制御の実行パケットが到着
すると、パケットのタグのうちの一部のフィールドがア
ドレスタグレジスタ(ART)402にラッチされてアドレス
線419に出力される。これをアドレスとして存在フラグ4
12が読み出される。
すると、パケットのタグのうちの一部のフィールドがア
ドレスタグレジスタ(ART)402にラッチされてアドレス
線419に出力される。これをアドレスとして存在フラグ4
12が読み出される。
一方、パケットのタグの内の順序番号を含む残りのフ
ィールドはデータタグレジスタ(DTR)403にラッチさ
れ、順序番号を含むデータタグ418が出力されると共に
データ線417にはパケットの2語目のデータ値が出力さ
れる。ここで読み出された存在フラグが“0"であれば、
データ値をデータメモリ405に、またデータタグをタグ
メモリ406に書き込むと共にタグメモリ406の存在フラグ
を1に更新し、パケット更新回路421においてパケット
を消去する。これによって対となる相手のパケットの到
着を待ち合わせることになる。
ィールドはデータタグレジスタ(DTR)403にラッチさ
れ、順序番号を含むデータタグ418が出力されると共に
データ線417にはパケットの2語目のデータ値が出力さ
れる。ここで読み出された存在フラグが“0"であれば、
データ値をデータメモリ405に、またデータタグをタグ
メモリ406に書き込むと共にタグメモリ406の存在フラグ
を1に更新し、パケット更新回路421においてパケット
を消去する。これによって対となる相手のパケットの到
着を待ち合わせることになる。
読み出した存在フラグが“1"であれば、既に対となる
可能性があるのパケットのデータ値とタグデータが記憶
されていることを示しており、この時、到着したパケッ
トの順序番号を含むタグデータ418とタグメモリ406から
読み出したタグデータが比較器414によって比較され
る。この結果、一致信号413が出力されると左右オペラ
ンドの対が検出されたことになり、到着したパケットの
データ値がデータ線404を介してレジスタR9,R10に、デ
ータメモリ405から読み出したデータ値がデータ線416を
介してレジスタR11,R12にそれぞれラッチされる。
可能性があるのパケットのデータ値とタグデータが記憶
されていることを示しており、この時、到着したパケッ
トの順序番号を含むタグデータ418とタグメモリ406から
読み出したタグデータが比較器414によって比較され
る。この結果、一致信号413が出力されると左右オペラ
ンドの対が検出されたことになり、到着したパケットの
データ値がデータ線404を介してレジスタR9,R10に、デ
ータメモリ405から読み出したデータ値がデータ線416を
介してレジスタR11,R12にそれぞれラッチされる。
ここで、到着したパケットの左右フラグL/Rビットが
“1"であればレジスタR9,R12の出力が有効となり、到着
したパケットのL/Rビットが“0"であればレジスタR10,R
11の出力が有効となる。
“1"であればレジスタR9,R12の出力が有効となり、到着
したパケットのL/Rビットが“0"であればレジスタR10,R
11の出力が有効となる。
即ち、常にデータ線5には左オペランドのデータ値
が、データ線50には右オペランドのデータ値がそれぞれ
出力される。また、この時パケット更新回路421におい
てセレクションコードが〔S2S1S0〕=“001"に更新され
る。
が、データ線50には右オペランドのデータ値がそれぞれ
出力される。また、この時パケット更新回路421におい
てセレクションコードが〔S2S1S0〕=“001"に更新され
る。
〔S2S1S0〕=“111"であるソーティングの実行パケッ
トが到着した時は、比較器414においてソーティングメ
モリ407から読み出したデータと到着したパケットのタ
グ内の順序番号が比較される。両者が一致しなかった場
合は到着したパケットをそのままデータ線5へ通過させ
らる。両者が一致した場合は到着したパケットのセレク
ションコードを〔S2S1S0〕=“001"に更新されて出力さ
れると共に、更に到着したパケットの末尾フラグ“0"の 時は、ソーティング制御回路415により、それまでの値
に“1"を加えたものを順序番号線420を介してソーティ
ングメモリ407に書き込み、末尾フラグが“1"の時は
“0"を書き込む。
トが到着した時は、比較器414においてソーティングメ
モリ407から読み出したデータと到着したパケットのタ
グ内の順序番号が比較される。両者が一致しなかった場
合は到着したパケットをそのままデータ線5へ通過させ
らる。両者が一致した場合は到着したパケットのセレク
ションコードを〔S2S1S0〕=“001"に更新されて出力さ
れると共に、更に到着したパケットの末尾フラグ“0"の 時は、ソーティング制御回路415により、それまでの値
に“1"を加えたものを順序番号線420を介してソーティ
ングメモリ407に書き込み、末尾フラグが“1"の時は
“0"を書き込む。
ここで、第18図及び第19図を参照して、発火制御部FC
による発火処理及びソーティング処理について説明す
る。
による発火処理及びソーティング処理について説明す
る。
第19図はソーティング制御回路415のより詳細な構成
を示すブロック図である。
を示すブロック図である。
このソーティング制御回路415は、ソーティングメモ
リ407の内容を更新するためのソーティングメモリ更新
回路4150及び同じく初期化するためのソーティングメモ
リ初期化回路4151を主要な構成要素としている。
リ407の内容を更新するためのソーティングメモリ更新
回路4150及び同じく初期化するためのソーティングメモ
リ初期化回路4151を主要な構成要素としている。
ソーティングメモリ更新回路4150は、具体的にはたと
えばフェアチャイルド社製の加算器74F283を数個組み合
わせて構成することが可能である。
えばフェアチャイルド社製の加算器74F283を数個組み合
わせて構成することが可能である。
ソーティング制御回路415は、ソーティングメモリ407
に与えられているソーティングメモリライト信号4152が
書込みを指示しており、且つ自身に与えられている順序
番号更新信号4153が更新を指示しており、更に入力パケ
ットの末尾記号が“0"である、即ち末尾ではないことを
示している場合にのみ、入力パケットの順序番号に“1"
を加算した値をソーティングメモリ407に書込む。ま
た、ソーティングメモリライト信号4152が書込みを指示
しており、且つ入力パケットの末尾記号が“1"である、
即ち末尾データである場合にのみソーティングメモリ40
7に“0"を書込む。他の場合にはソーティングメモリ更
新回路4150はソーティングメモリ407の更新は行わな
い。
に与えられているソーティングメモリライト信号4152が
書込みを指示しており、且つ自身に与えられている順序
番号更新信号4153が更新を指示しており、更に入力パケ
ットの末尾記号が“0"である、即ち末尾ではないことを
示している場合にのみ、入力パケットの順序番号に“1"
を加算した値をソーティングメモリ407に書込む。ま
た、ソーティングメモリライト信号4152が書込みを指示
しており、且つ入力パケットの末尾記号が“1"である、
即ち末尾データである場合にのみソーティングメモリ40
7に“0"を書込む。他の場合にはソーティングメモリ更
新回路4150はソーティングメモリ407の更新は行わな
い。
第18図は対生成制御回路411のより詳細な構成を示す
ブロック図である。
ブロック図である。
対生成制御回路411は、2項命令の左右のパケットの
待ち合わせを制御する信号及びソーティング処理を制御
する信号を生成する発火制御論理回路4110と、第14図に
示されているR9〜R12の各レジスタの出力の選択を制御
する信号を生成するレジスタ制御論理回路4111と、各信
号のタイミングを遅延して調整するためのD−フリップ
フロップ4112,4113,4114等にて構成されている。
待ち合わせを制御する信号及びソーティング処理を制御
する信号を生成する発火制御論理回路4110と、第14図に
示されているR9〜R12の各レジスタの出力の選択を制御
する信号を生成するレジスタ制御論理回路4111と、各信
号のタイミングを遅延して調整するためのD−フリップ
フロップ4112,4113,4114等にて構成されている。
レジスタ制御論理回路4111は、上述の如く、R9〜R12
の各レジスタの出力を制御するようにレジスタ制御信号
を生成して出力する。
の各レジスタの出力を制御するようにレジスタ制御信号
を生成して出力する。
発火制御論理回路4110は、セレクションコード〔S2S1
S0〕=“101"を保持した実行パケットが到着した際に存
在フラグが“0"を示していればデータメモリライト信
号,タグメモリライト信号,フラグメモリライト信号,
パケット消去信号を出力し、フラグメモリライト値とし
て“1"を出力する。これにより、入力パケットのデータ
値とデータタグとをデータメモリ405とタグメモリ406に
それぞれ書込むと共に、パケットを消去する。またフラ
グメモリには存在フラグ412を“1"に書換えて相手のパ
ケットの到着を待ち合わせる。
S0〕=“101"を保持した実行パケットが到着した際に存
在フラグが“0"を示していればデータメモリライト信
号,タグメモリライト信号,フラグメモリライト信号,
パケット消去信号を出力し、フラグメモリライト値とし
て“1"を出力する。これにより、入力パケットのデータ
値とデータタグとをデータメモリ405とタグメモリ406に
それぞれ書込むと共に、パケットを消去する。またフラ
グメモリには存在フラグ412を“1"に書換えて相手のパ
ケットの到着を待ち合わせる。
セレクションコードが〔S2S1S0〕=“101"の実行パケ
ットが到着した場合には、存在フラグ412が“1"であ
り、且つタグ一致信号が一致を示している場合には、発
火制御論理回路4110はデータメモリリード信号,フラグ
メモリライト信号,発火信号を出力し、更にフラグメモ
リライト値として“0"を出力する。これにより、左右デ
ータをデータ対として出力すると共にセレクションコー
ドを〔S2S1S0〕=“001"に書換えた上で発火したパケッ
トとして命令実行部EXEにおいて処理すべく出力する。
ットが到着した場合には、存在フラグ412が“1"であ
り、且つタグ一致信号が一致を示している場合には、発
火制御論理回路4110はデータメモリリード信号,フラグ
メモリライト信号,発火信号を出力し、更にフラグメモ
リライト値として“0"を出力する。これにより、左右デ
ータをデータ対として出力すると共にセレクションコー
ドを〔S2S1S0〕=“001"に書換えた上で発火したパケッ
トとして命令実行部EXEにおいて処理すべく出力する。
セレクションコード〔S2S1S0〕=“111"のパケットが
到着すると、比較制御信号により比較器414では入力パ
ケットが保持している順序番号とソーティングメモリ40
7の内容とが比較される。この比較の結果、両者が一致
していれば、ソーティングメモリライト信号及び順序番
号更新信号、更に宛先情報更新信号として“0"が発火制
御論理回路4110から出力され、ソーティングメモリ407
の内容が更新されると共に、到着パケットのセレクショ
ンコードが〔S2S1S0〕=“001"に更新され、命令実行部
EXEにおいて処理されるべく出力される。
到着すると、比較制御信号により比較器414では入力パ
ケットが保持している順序番号とソーティングメモリ40
7の内容とが比較される。この比較の結果、両者が一致
していれば、ソーティングメモリライト信号及び順序番
号更新信号、更に宛先情報更新信号として“0"が発火制
御論理回路4110から出力され、ソーティングメモリ407
の内容が更新されると共に、到着パケットのセレクショ
ンコードが〔S2S1S0〕=“001"に更新され、命令実行部
EXEにおいて処理されるべく出力される。
比較結果が一致していない場合には、いずれの制御信
号も出力されず、到着パケットはそのまま出力される。
号も出力されず、到着パケットはそのまま出力される。
以上の説明から明らかなように、セレクションコード
〔S2S1S0〕=“111"を保持しているパケットの集合のそ
れぞれ発火制御部FCに到着する都度、それぞれがいかな
る順序で到着しても、それぞれが保持している順序情報
の昇順にセレクションコードが書換えられる。このた
め、命令実行部EXE及びプログラム記憶部における処理
は、順序番号の昇順に従って実行される。換言すれば、
到着パケットの並べ換えが行われる。
〔S2S1S0〕=“111"を保持しているパケットの集合のそ
れぞれ発火制御部FCに到着する都度、それぞれがいかな
る順序で到着しても、それぞれが保持している順序情報
の昇順にセレクションコードが書換えられる。このた
め、命令実行部EXE及びプログラム記憶部における処理
は、順序番号の昇順に従って実行される。換言すれば、
到着パケットの並べ換えが行われる。
セレクションコード〔S2S1S0〕=“011"を保持した実
行パケットが到着すると、存在フラグが“0"であれば比
較回路制御信号により比較器414においてパケットが保
持する順序番号とソーティングメモリ407の内容とが比
較される。この結果、一致が検出された場合には、発火
制御論理回路4110はデータメモリライト信号,タグメモ
リライト信号,フラグメモリライト信号,パケット消去
信号を出力し、更にフラグメモリライト値として“1"を
出力する。
行パケットが到着すると、存在フラグが“0"であれば比
較回路制御信号により比較器414においてパケットが保
持する順序番号とソーティングメモリ407の内容とが比
較される。この結果、一致が検出された場合には、発火
制御論理回路4110はデータメモリライト信号,タグメモ
リライト信号,フラグメモリライト信号,パケット消去
信号を出力し、更にフラグメモリライト値として“1"を
出力する。
これにより、入力パケットのデータ値とデータタグは
データメモリ405及びタグメモリ406にそれぞれ書き込ま
れると共に、パケットは消去され、更に存在フラグに値
“1"が書込まれて相手のパケットの到着を待合わせる状
態になる。
データメモリ405及びタグメモリ406にそれぞれ書き込ま
れると共に、パケットは消去され、更に存在フラグに値
“1"が書込まれて相手のパケットの到着を待合わせる状
態になる。
セレクションコード〔S2S1S0〕=“011"を保持した実
行パケットが到着し、この時、存在フラグが“1"であれ
ば比較回路制御信号により比較器414において到着パケ
ットの順序番号を含むデータタグとタグメモリの内容と
が比較される。
行パケットが到着し、この時、存在フラグが“1"であれ
ば比較回路制御信号により比較器414において到着パケ
ットの順序番号を含むデータタグとタグメモリの内容と
が比較される。
この結果、タグ一致信号が一致を示した場合には、発
火制御論理回路4110はデータメモリライト信号,フラグ
メモリライト信号,ソーティングメモリライト信号,順
序番号更新信号を出力し、更にフラグメモリ値として
“0"を、宛先情報更新信号として“0"を出力する。これ
により、左右データのデータ対がセレクションコードが
更新された上で命令実行部EXEにおいて処理されるべく
出力されると共に、ソーティング制御回路415によって
ソーティングメモリ407の更新が行われる。
火制御論理回路4110はデータメモリライト信号,フラグ
メモリライト信号,ソーティングメモリライト信号,順
序番号更新信号を出力し、更にフラグメモリ値として
“0"を、宛先情報更新信号として“0"を出力する。これ
により、左右データのデータ対がセレクションコードが
更新された上で命令実行部EXEにおいて処理されるべく
出力されると共に、ソーティング制御回路415によって
ソーティングメモリ407の更新が行われる。
以上の説明から明らかなように、セレクションコード
〔S2S1S0〕=“011"を有するパケットは、存在フラグが
“0"であっても順序番号が所定の値でなければ待合わせ
メモリ、即ちデータメモリ405に格納されることなくそ
のまま通過してしまう。更に対となるべき二つのパケッ
トが検出されてデータ対が出力された時にのみ順序番号
メモリ、即ちソーティングメモリ407の更新が行われる
ため、データ集合の各データは発火制御部FCにおいて順
序情報の昇順に従ってのみ発火されることになる。この
ように本発明装置の発火制御部FCは2項データの発火検
出及び並べ換えを同時に行うことが可能である。
〔S2S1S0〕=“011"を有するパケットは、存在フラグが
“0"であっても順序番号が所定の値でなければ待合わせ
メモリ、即ちデータメモリ405に格納されることなくそ
のまま通過してしまう。更に対となるべき二つのパケッ
トが検出されてデータ対が出力された時にのみ順序番号
メモリ、即ちソーティングメモリ407の更新が行われる
ため、データ集合の各データは発火制御部FCにおいて順
序情報の昇順に従ってのみ発火されることになる。この
ように本発明装置の発火制御部FCは2項データの発火検
出及び並べ換えを同時に行うことが可能である。
(v) 命令実行手段EXE 命令コードメモリ510にロード(ダンプ)パケットが
到着すると、アドレスレジスタ534にアドレス値がラッ
チされ、データ線512を介して命令コードメモリ510にデ
ータ線がロード(命令コードメモリ510から読み出した
データ値がダンプ)される。
到着すると、アドレスレジスタ534にアドレス値がラッ
チされ、データ線512を介して命令コードメモリ510にデ
ータ線がロード(命令コードメモリ510から読み出した
データ値がダンプ)される。
ローカルメモリ505にロード(ダンプ)パケットが到
着するとマルチプレクサ503においてアドレス情報線502
が選択されてパケットの1語目に保持されているアドレ
ス値がアドレス線504に出力され、データ線507を介して
ローカルメモリ505にパケットの2語目がロード(ロー
カルメモリ505から読み出したデータ値がダンプ)され
る。
着するとマルチプレクサ503においてアドレス情報線502
が選択されてパケットの1語目に保持されているアドレ
ス値がアドレス線504に出力され、データ線507を介して
ローカルメモリ505にパケットの2語目がロード(ロー
カルメモリ505から読み出したデータ値がダンプ)され
る。
命令コードメモリ510にはプログラムの実行前に、実
行するプログラム中の各ノード番号に対応した命令コー
ドがロードパケットによりロードされており、命令コー
ドメモリ510をノード番号によって参照すると対応する
命令コードが読み出されるようになっている。
行するプログラム中の各ノード番号に対応した命令コー
ドがロードパケットによりロードされており、命令コー
ドメモリ510をノード番号によって参照すると対応する
命令コードが読み出されるようになっている。
命令実行手段EXEで処理されるセレクションコード〔S
2S1S0〕=“001"を保持した実行パケットには1オペラ
ンドの命令パケット(単項演算命令など)と2オペラン
ドの命令パケット(二項演算命令など)がある。実行パ
ケットが到着するとアドレスレジスタ534にはノード番
号がラッチされて命令コードメモリ510から対応する命
令コード513が読み出される。
2S1S0〕=“001"を保持した実行パケットには1オペラ
ンドの命令パケット(単項演算命令など)と2オペラン
ドの命令パケット(二項演算命令など)がある。実行パ
ケットが到着するとアドレスレジスタ534にはノード番
号がラッチされて命令コードメモリ510から対応する命
令コード513が読み出される。
命令コード513は、デコーダ511によってデコードさ
れ、命令の種類に応じた制御信号群514が出力される。
制御信号群514は、レジスタR14,R16,R18,R20,R22の順
に、到着したパケットの1語目と平行して転送され、各
処理要素における制御信号として使用される。
れ、命令の種類に応じた制御信号群514が出力される。
制御信号群514は、レジスタR14,R16,R18,R20,R22の順
に、到着したパケットの1語目と平行して転送され、各
処理要素における制御信号として使用される。
命令の種類としては、 (a) ローカルメモリ505から読み出しまたはそれへ
の書き込みを行なう命令、 (b) 単項または二項の演算命令、 (c) シフト命令、 (d) 条件判定命令、 (e) 制御情報更新命令、 (f) (a)〜(d)の内のいくつかを組み合わせた
複合命令、 がある。
の書き込みを行なう命令、 (b) 単項または二項の演算命令、 (c) シフト命令、 (d) 条件判定命令、 (e) 制御情報更新命令、 (f) (a)〜(d)の内のいくつかを組み合わせた
複合命令、 がある。
制御信号群54は、上記の命令(a)〜(e)のそれぞ
れに対応して制御信号群A〜制御信号群Eに分かれてお
り、それぞれの制御が独立に行われることによって、
(f)のような各種の複合命令の実行が可能となってい
る。
れに対応して制御信号群A〜制御信号群Eに分かれてお
り、それぞれの制御が独立に行われることによって、
(f)のような各種の複合命令の実行が可能となってい
る。
制御信号群Aによってローカルメモリの読み出しまた
は書き込みが指定されていれば、マルチプレクサ503に
おいてアドレス情報線501が選択されパケットの2語目
の左オペランドデータ値がローカルメモリ505のアドレ
スとなる。更に読み出しの場合は、バッファ509の出力
を無効にしてローカルメモリ505からデータを読み出し
てデータ線507を介して到着したパケットの二語目の左
データ値のフィールドに格納する。書き込みの場合は、
データ線508を介して到着したパケットの左オペランド
データ値をローカルメモリ505に書き込む。
は書き込みが指定されていれば、マルチプレクサ503に
おいてアドレス情報線501が選択されパケットの2語目
の左オペランドデータ値がローカルメモリ505のアドレ
スとなる。更に読み出しの場合は、バッファ509の出力
を無効にしてローカルメモリ505からデータを読み出し
てデータ線507を介して到着したパケットの二語目の左
データ値のフィールドに格納する。書き込みの場合は、
データ線508を介して到着したパケットの左オペランド
データ値をローカルメモリ505に書き込む。
制御信号群Bによって演算処理が指定されていれば、
制御信号521,522の制御により、算術論理ユニット(ALU
1)515,算術論理ユニット(ALU2)516において、オペラ
ンドデータの下位データ、上位データの順に指定された
算術/論理演算が行なわれる。この時、データ線526を
介して左オペランドデータ値の内の下位データ値が、デ
ータ線527を介して右オペランドデータ値の内の下位デ
ータ値がそれぞれ入力され、データ線528に演算結果デ
ータ値の内の下位データ値が出力される。
制御信号521,522の制御により、算術論理ユニット(ALU
1)515,算術論理ユニット(ALU2)516において、オペラ
ンドデータの下位データ、上位データの順に指定された
算術/論理演算が行なわれる。この時、データ線526を
介して左オペランドデータ値の内の下位データ値が、デ
ータ線527を介して右オペランドデータ値の内の下位デ
ータ値がそれぞれ入力され、データ線528に演算結果デ
ータ値の内の下位データ値が出力される。
また、データ線529を介して左オペランドデータ値の
内の上位データ値が、データ線530を介して右オペラン
ドデータ値の内の上位データ値がそれぞれ入力され、デ
ータ線531に演算結果データ値の内の上位データ値が出
力される。
内の上位データ値が、データ線530を介して右オペラン
ドデータ値の内の上位データ値がそれぞれ入力され、デ
ータ線531に演算結果データ値の内の上位データ値が出
力される。
制御信号群Cによってシフトが指定されていれば、制
御信号523の制御によりシフタ517において所定のデータ
シフト処理が実行される、またゼロ判定部518において
は、常時左オペランドデータ値がゼロであるか否かの判
定が行なわれる。
御信号523の制御によりシフタ517において所定のデータ
シフト処理が実行される、またゼロ判定部518において
は、常時左オペランドデータ値がゼロであるか否かの判
定が行なわれる。
制御信号群Dによって条件判定処理が指定されていれ
ば制御信号524の制御により条件判定部519において、指
定された条件判定が行なわれ、その結果(真または偽)
が出力される。
ば制御信号524の制御により条件判定部519において、指
定された条件判定が行なわれ、その結果(真または偽)
が出力される。
制御信号群Eによって制御処理が指定されていれば、
制御信号525の制御により制御処理部520において、指定
された制御処理(ノード番号の更新、順序番号の更新、
パケットの消去など)が行なわれる。
制御信号525の制御により制御処理部520において、指定
された制御処理(ノード番号の更新、順序番号の更新、
パケットの消去など)が行なわれる。
以下、第13図〜第17図を参照して、条件判定処理部51
9により実行される条件判定処理及び制御処理部520によ
り実行される制御処理について更に詳細に説明する。
9により実行される条件判定処理及び制御処理部520によ
り実行される制御処理について更に詳細に説明する。
第13図は条件判定処理部519及び制御処理部520の詳細
な構成を示すブロック図である。
な構成を示すブロック図である。
図中の真偽フラグ設定回路5191、順序番号読出し回路
5192はいずれも2系統の入力の内の一方を1ビットの制
御信号により選択的に出力するマルチプレクサにて構成
されている。また末尾記号設定回路5201は、2入力のOR
ゲートにより構成されている。
5192はいずれも2系統の入力の内の一方を1ビットの制
御信号により選択的に出力するマルチプレクサにて構成
されている。また末尾記号設定回路5201は、2入力のOR
ゲートにより構成されている。
条件判定回路5193は第14図に示す如く、8入力マルチ
プレクサにて構成されている。この条件判定回路5193に
は、2入力命令の際の右オペランドパケットの真偽フラ
グ、演算の結果生じる各種の演算フラグ(ゼロフラグ,
符号ビット,キャリーフラグ,オーバフローフラグ)及
び入力パケットの末尾記号等がそれぞれ入力端子I0,I1
〜I5,I6に与えられている。
プレクサにて構成されている。この条件判定回路5193に
は、2入力命令の際の右オペランドパケットの真偽フラ
グ、演算の結果生じる各種の演算フラグ(ゼロフラグ,
符号ビット,キャリーフラグ,オーバフローフラグ)及
び入力パケットの末尾記号等がそれぞれ入力端子I0,I1
〜I5,I6に与えられている。
第4図に示されているデコーダ511において命令コー
ドに応じて出力された制御信号群514の内、条件判定処
理及び制御処理に関する制御信号群D及びEは、データ
パケットの1語目がレジスタR21に、2語目がレジスタR
19にそれぞれ保持されている間に、各処理要素に入力さ
れる。そして、この制御信号群D及びEに従ってそれぞ
れの処理要素、即ち条件処理部519及び制御処理部520の
各構成要素において命令コードに対応する所定の処理が
実行される。
ドに応じて出力された制御信号群514の内、条件判定処
理及び制御処理に関する制御信号群D及びEは、データ
パケットの1語目がレジスタR21に、2語目がレジスタR
19にそれぞれ保持されている間に、各処理要素に入力さ
れる。そして、この制御信号群D及びEに従ってそれぞ
れの処理要素、即ち条件処理部519及び制御処理部520の
各構成要素において命令コードに対応する所定の処理が
実行される。
条件判定回路5193においては、第15図に示す如く、制
御信号D1を構成する4ビット(C0〜C3)の値に応じた条
件処理がなされ、判定結果として真(“1")または偽
(“0")が出力される。
御信号D1を構成する4ビット(C0〜C3)の値に応じた条
件処理がなされ、判定結果として真(“1")または偽
(“0")が出力される。
ノード番号更新回路5202は第16図に示す如く加算器に
て構成されている。このノード番号更新回路5202には、
制御信号E3が“0"であり且つ上述の条件判定回路5193に
よる判定結果が真の値(“1")を示している場合にのみ
キャリー入力Coに“1"が入力される。これにより、パケ
ットのノード番号が1だけインクリメントされた値とな
って出力される。
て構成されている。このノード番号更新回路5202には、
制御信号E3が“0"であり且つ上述の条件判定回路5193に
よる判定結果が真の値(“1")を示している場合にのみ
キャリー入力Coに“1"が入力される。これにより、パケ
ットのノード番号が1だけインクリメントされた値とな
って出力される。
また条件判定回路5193の判定結果の信号は制御信号D2
として真偽フラグ設定回路5191にも与えられており、こ
の制御信号D2が“0"の場合は真偽フラグ設定回路5191に
おいて真偽フラグに条件判定結果(真または偽)が設定
されて出力される。これらの処理要素における処理の組
合わせにより、たとえば入力パケットがデータ集合中の
末尾データパケットである場合にのみ、ノード番号の更
新出力等の条件分岐命令、あるいは入力パケットがデー
タ集合中の末尾データである場合にのみ、真偽フラグの
真の値(“1")を設定して出力する条件判定命令等が実
行される。
として真偽フラグ設定回路5191にも与えられており、こ
の制御信号D2が“0"の場合は真偽フラグ設定回路5191に
おいて真偽フラグに条件判定結果(真または偽)が設定
されて出力される。これらの処理要素における処理の組
合わせにより、たとえば入力パケットがデータ集合中の
末尾データパケットである場合にのみ、ノード番号の更
新出力等の条件分岐命令、あるいは入力パケットがデー
タ集合中の末尾データである場合にのみ、真偽フラグの
真の値(“1")を設定して出力する条件判定命令等が実
行される。
次に第17図に示す如く、順序番号更新回路5203は加算
器にて、順序情報初期化回路5204は複数のANDゲートに
て構成されている。順序番号更新回路5203は制御信号E1
の制御により順序番号を1だけインクリメントする順序
番号更新命令を実行する。順序情報初期化回路5204は制
御信号E2の制御により順序番号及び末尾番号を“0"にク
リアする順序情報初期化命令を実行する。また、末尾記
号設定回路5201においては、制御信号E4の制御により、
末尾記号“1"を設定する末尾記号設定命令が実行され
る。
器にて、順序情報初期化回路5204は複数のANDゲートに
て構成されている。順序番号更新回路5203は制御信号E1
の制御により順序番号を1だけインクリメントする順序
番号更新命令を実行する。順序情報初期化回路5204は制
御信号E2の制御により順序番号及び末尾番号を“0"にク
リアする順序情報初期化命令を実行する。また、末尾記
号設定回路5201においては、制御信号E4の制御により、
末尾記号“1"を設定する末尾記号設定命令が実行され
る。
これらの種々の命令を組合わせたデータ駆動形のプロ
グラムを実行することにより、0から順に順序番号を付
され、末尾データにのみ末尾記号を保持する順序情報を
有するデータのデータ集合を生成することが可能にな
る。このようなデータ集合の生成は、プログラム実行に
よって動的に実行可能であるため、各要素のデータを生
成する処理の間に他の実行命令を適当に挿入すれば各要
素相互の生成間隔は自由に調整可能である。このような
データ集合は、たとえば第4図に示す如きローカルメモ
リ505のようなデータ記憶回路から読出されて生成され
る。
グラムを実行することにより、0から順に順序番号を付
され、末尾データにのみ末尾記号を保持する順序情報を
有するデータのデータ集合を生成することが可能にな
る。このようなデータ集合の生成は、プログラム実行に
よって動的に実行可能であるため、各要素のデータを生
成する処理の間に他の実行命令を適当に挿入すれば各要
素相互の生成間隔は自由に調整可能である。このような
データ集合は、たとえば第4図に示す如きローカルメモ
リ505のようなデータ記憶回路から読出されて生成され
る。
また、第13図における順序番号読出し回路5192では、
制御信号E5の制御により、入力パケットが保持している
順序番号をパケットの2語目に読出す順序番号読出し命
令が実行される。このような命令の実行により、データ
集合の各要素のデータをその順序番号に従って、たとえ
ば第4図に示すローカルメモリ505の如きデータ記憶回
路に書込むことが可能になる。
制御信号E5の制御により、入力パケットが保持している
順序番号をパケットの2語目に読出す順序番号読出し命
令が実行される。このような命令の実行により、データ
集合の各要素のデータをその順序番号に従って、たとえ
ば第4図に示すローカルメモリ505の如きデータ記憶回
路に書込むことが可能になる。
以上のように、命令実行部EXEにおいて所定の処理が
実行されたパケットは、パケット更新回路532において
セレクションコードが〔S2S1S0〕=“000"(行先はプロ
グラム記憶部PM)に更新されて出力される。
実行されたパケットは、パケット更新回路532において
セレクションコードが〔S2S1S0〕=“000"(行先はプロ
グラム記憶部PM)に更新されて出力される。
以上に詳述した如く、本発明のデータ駆動型データ処
理装置によれば、データ集合全体に同一の宛先情報を付
したままで、その各要素のデータを順序情報で管理して
所定の順序で発火させることが可能になるので、たとえ
ば第20図に示す如きデータ集合と単一データとの演算、
たとえば配列データの全要素データの和を得るような処
理がプログラム通りに実行可能であり、更にデータ集合
所定の順序に従って連続的に読出して処理し、再度書込
むというような集合データ処理の効率が向上する。
理装置によれば、データ集合全体に同一の宛先情報を付
したままで、その各要素のデータを順序情報で管理して
所定の順序で発火させることが可能になるので、たとえ
ば第20図に示す如きデータ集合と単一データとの演算、
たとえば配列データの全要素データの和を得るような処
理がプログラム通りに実行可能であり、更にデータ集合
所定の順序に従って連続的に読出して処理し、再度書込
むというような集合データ処理の効率が向上する。
第1図は本発明のデータ駆動型データ処理装置を組込ん
だデータフロー計算器のシステム構成を示すブロック
図、第2図は本発明のデータ駆動型データ処理装置の概
略の構成を示すブロック図、第3図及び第4図は本発明
のデータ駆動型データ処理装置の詳細な構成を示すブロ
ック図、第5図,第6図,第7図及び第8図は本発明の
データ駆動型データ処理装置に使用されるデータパケッ
トの構成を示す模式図、第9図は本発明のデータ駆動型
データ処理装置のプログラム記憶手段の記憶形式を示す
模式図、第10図,第11図及び第12図はコード対照を示す
模式図、第13図は条件判定処理部及び制御処理部の詳細
な構成を示すブロック図、第14図は条件判定回路の回路
図、第15図は条件判定回路のコード対照を示す模式図、
第16図はノード番号更新回路の構成を示す回路図、第17
図は順序番号更新回路及び順序情報初期化回路の構成を
示す回路図、第18図は対生成制御回路の構成を示すブロ
ック図、第19図はソーティング制御回路の構成を示すブ
ロック図、第20図は本発明装置にて処理されるデータフ
ロープログラムの一例を示す模式図である。 PM……プログラム記憶手段、NIF……ネットワークイン
ターフェイス、FC……発火制御手段、EXE……命令実行
手段、Q……キューメモリ、405……データメモリ、407
……ソーティングメモリ、411……対生成制御回路、414
……比較器、415……ソーティング制御回路、505……ロ
ーカルメモリ、520……順序情報設定手段、4110……発
火制御論理回路、4150……ソーティングメモリ初期化回
路、4151……ソーティングメモリ初期化回路、5201……
末尾記号設定回路、5202……ノード番号更新回路、5203
……順序番号更新回路、5204……順序情報初期化回路
だデータフロー計算器のシステム構成を示すブロック
図、第2図は本発明のデータ駆動型データ処理装置の概
略の構成を示すブロック図、第3図及び第4図は本発明
のデータ駆動型データ処理装置の詳細な構成を示すブロ
ック図、第5図,第6図,第7図及び第8図は本発明の
データ駆動型データ処理装置に使用されるデータパケッ
トの構成を示す模式図、第9図は本発明のデータ駆動型
データ処理装置のプログラム記憶手段の記憶形式を示す
模式図、第10図,第11図及び第12図はコード対照を示す
模式図、第13図は条件判定処理部及び制御処理部の詳細
な構成を示すブロック図、第14図は条件判定回路の回路
図、第15図は条件判定回路のコード対照を示す模式図、
第16図はノード番号更新回路の構成を示す回路図、第17
図は順序番号更新回路及び順序情報初期化回路の構成を
示す回路図、第18図は対生成制御回路の構成を示すブロ
ック図、第19図はソーティング制御回路の構成を示すブ
ロック図、第20図は本発明装置にて処理されるデータフ
ロープログラムの一例を示す模式図である。 PM……プログラム記憶手段、NIF……ネットワークイン
ターフェイス、FC……発火制御手段、EXE……命令実行
手段、Q……キューメモリ、405……データメモリ、407
……ソーティングメモリ、411……対生成制御回路、414
……比較器、415……ソーティング制御回路、505……ロ
ーカルメモリ、520……順序情報設定手段、4110……発
火制御論理回路、4150……ソーティングメモリ初期化回
路、4151……ソーティングメモリ初期化回路、5201……
末尾記号設定回路、5202……ノード番号更新回路、5203
……順序番号更新回路、5204……順序情報初期化回路
───────────────────────────────────────────────────── フロントページの続き (72)発明者 作田 良夫 大阪府守口市京阪本通2丁目18番地 三 洋電機株式会社内 (56)参考文献 特開 昭60−73746(JP,A)
Claims (2)
- 【請求項1】演算処理対象のデータと、該データの宛先
を示す宛先情報とを含むデータパケットの内から発火制
御手段により前記宛先情報が一致する二つのデータパケ
ットを一対の処理対象として検出し、両データパケット
に含まれるデータに所定の処理を施すデータ駆動型デー
タ処理装置において、 同一の宛先情報を有する複数のデータにて構成されるデ
ータ集合内の各データのパケットに対して、各データの
順序を示す順序番号及び同一データ集合内での末尾の順
序であることを示す末尾記号にて構成される順序情報を
生成して付加する順序情報設定手段と、 データ集合の各データを格納し、それぞれのデータが格
納された際の順序情報と同一の順序情報をそれぞれのデ
ータの読出しに際して付加して出力するデータ記憶手段
とを備え、 前記発火制御手段は、前記データ記憶手段から読出され
た同一宛先情報を有するデータ集合の各データをそれぞ
れの順序情報の一致を検出して所定の処理を実行すべく
なしてあると共に、その順序情報の一致の検出を所定の
順序に従って実行するための発火順序設定手段を有する
ことを特徴とするデータ駆動型データ処理装置。 - 【請求項2】前記発火順序設定手段は、 順序番号を格納する順序情報記憶手段と、 データパケットに含まれる宛先情報及びデータを格納す
る待合わせ記憶手段と、 到着したデータパケットに含まれる順序情報と前記順序
情報記憶手段に格納されている順序情報とを比較する比
較手段と、 該比較手段による比較結果が一致した場合に、前記待合
わせ記憶手段にそのデータパケットのデータを書込む待
合わせメモリ制御手段と、 前記発火制御手段による一致検出が行われた場合に、前
記順序情報記憶手段の内容を所定の順序に従って更新す
る順序番号記憶手段更新手段と、 前記発火制御手段による比較結果が一致し、またそのデ
ータパケットに含まれる順序情報が末尾記号である場合
に、前記順序情報記憶手段の内容を初期化する順序番号
記憶手段初期化手段と を備えた請求項1記載のデータ駆動型データ処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3776388A JP2594093B2 (ja) | 1988-02-19 | 1988-02-19 | データ駆動型データ処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3776388A JP2594093B2 (ja) | 1988-02-19 | 1988-02-19 | データ駆動型データ処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH01211126A JPH01211126A (ja) | 1989-08-24 |
JP2594093B2 true JP2594093B2 (ja) | 1997-03-26 |
Family
ID=12506510
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP3776388A Expired - Fee Related JP2594093B2 (ja) | 1988-02-19 | 1988-02-19 | データ駆動型データ処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2594093B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1992015960A1 (en) * | 1991-03-05 | 1992-09-17 | Hajime Seki | Electronic computer system and processor elements used for this system |
US5765014A (en) * | 1993-10-12 | 1998-06-09 | Seki; Hajime | Electronic computer system and processor element for processing in a data driven manner using reverse polish notation |
-
1988
- 1988-02-19 JP JP3776388A patent/JP2594093B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH01211126A (ja) | 1989-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1214661B1 (en) | Sdram controller for parallel processor architecture | |
US5954815A (en) | Invalidating instructions in fetched instruction blocks upon predicted two-step branch operations with second operation relative target address | |
EP1236094B1 (en) | Branch instruction for multithreaded processor | |
US4896259A (en) | Apparatus for storing modifying data prior to selectively storing data to be modified into a register | |
EP0050406B1 (en) | Conditional branch prediction apparatus and method | |
JPH0786845B2 (ja) | データ処理装置 | |
US7082499B2 (en) | External memory control device regularly reading ahead data from external memory for storage in cache memory, and data driven type information processing apparatus including the same | |
US6003126A (en) | Special instruction register including allocation field utilized for temporary designation of physical registers as general registers | |
JPH06259253A (ja) | データプロセッサおよびその動作方法 | |
US11847455B2 (en) | Clearing register data using a write enable signal | |
JP2594093B2 (ja) | データ駆動型データ処理装置 | |
JP4144153B2 (ja) | ベクトルレジスタを備えたコンピュータにおけるベクトルテールゲーティング | |
US7269716B2 (en) | Processor to efficiently rename decoded condition codes and instruction control method thereof | |
JP3146077B2 (ja) | プロセッサ | |
JP2594092B2 (ja) | データ駆動型データ処理装置 | |
KR100305487B1 (ko) | 특정유형의인스트럭션을동시에처리할수있는방법및데이터프로세싱시스템 | |
JP2594091B2 (ja) | データ駆動型データ処理装置 | |
JP3983455B2 (ja) | データ駆動型情報処理装置の実行制御装置 | |
JP2630779B2 (ja) | データ駆動型データ処理装置 | |
EP0334131B1 (en) | Data processor performing operation on data having length shorter than one-word length | |
JP2000163265A (ja) | 命令発行回路 | |
HUT75816A (en) | Method of operation of a system for processing information, as well as the processing system | |
EP0177712B1 (en) | Masked data fetch and modifying device | |
US7590827B2 (en) | Processor and instruction control method having a storage of latest register for updating data of source operands, and instruction control | |
JPH01211127A (ja) | データ駆動型データ処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |