JP2579185B2 - データフロープログラムの実行制御方式 - Google Patents
データフロープログラムの実行制御方式Info
- Publication number
- JP2579185B2 JP2579185B2 JP63031560A JP3156088A JP2579185B2 JP 2579185 B2 JP2579185 B2 JP 2579185B2 JP 63031560 A JP63031560 A JP 63031560A JP 3156088 A JP3156088 A JP 3156088A JP 2579185 B2 JP2579185 B2 JP 2579185B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- information
- data packet
- destination
- field
- 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
【発明の詳細な説明】 [産業上の利用分野] [従来の技術] 第6図にデータ駆動型情報処理装置の一例であるブロ
ック構成図を示す。また、第7図に同情報処理装置にお
けるデータパケットのフィールド構成例を示す。さら
に、第8図にプログラム記憶手段における記憶内容のフ
ィールド構成の一部を示す。
ック構成図を示す。また、第7図に同情報処理装置にお
けるデータパケットのフィールド構成例を示す。さら
に、第8図にプログラム記憶手段における記憶内容のフ
ィールド構成の一部を示す。
第7図のデータパケットの行先フィールドには行先情
報が格納され、命令フィールドには命令情報が格納さ
れ、データ1フィールドまたはデータ2フィールドには
オペランドデータが格納される。第6図の情報処理装置
は、プログラム記憶手段1、データ対生成手段2および
演算処理手段3を含む。プログラム記憶手段1には、第
8図に示すデータフロープログラムが記憶されている。
このプログラム記憶手段1は、第7図における入力デー
タパケットの行先情報に基づいたアドレス指定によっ
て、第8図に示すように、次位の行先情報、次位の命令
情報およびコピー有/無情報を読出し、その行先情報お
よび命令情報を入力データパケットの行先フィールドお
よび命令フィールドに格納して出力する。データ対生成
手段2は、プログラム記憶手段1から出力されるデータ
パケットの待ち合わせを行なう。すなわち、行先情報が
一致する異なる2つのデータパケットの検出を行ない、
行先情報が一致する2つのデータパケットのうちの一方
のデータパケットのオペランドデータ、たとえば第7図
におけるデータ1フィールドの内容を他方のデータパケ
ットのデータ2フィールドに格納して出力する。演算処
理手段3は、データ対生成手段2から出力されるデータ
パケットに対して所定の演算処理を施し、その結果をそ
のデータパケットのデータ1フィールドに格納して上記
プログラム記憶手段1に出力する。
報が格納され、命令フィールドには命令情報が格納さ
れ、データ1フィールドまたはデータ2フィールドには
オペランドデータが格納される。第6図の情報処理装置
は、プログラム記憶手段1、データ対生成手段2および
演算処理手段3を含む。プログラム記憶手段1には、第
8図に示すデータフロープログラムが記憶されている。
このプログラム記憶手段1は、第7図における入力デー
タパケットの行先情報に基づいたアドレス指定によっ
て、第8図に示すように、次位の行先情報、次位の命令
情報およびコピー有/無情報を読出し、その行先情報お
よび命令情報を入力データパケットの行先フィールドお
よび命令フィールドに格納して出力する。データ対生成
手段2は、プログラム記憶手段1から出力されるデータ
パケットの待ち合わせを行なう。すなわち、行先情報が
一致する異なる2つのデータパケットの検出を行ない、
行先情報が一致する2つのデータパケットのうちの一方
のデータパケットのオペランドデータ、たとえば第7図
におけるデータ1フィールドの内容を他方のデータパケ
ットのデータ2フィールドに格納して出力する。演算処
理手段3は、データ対生成手段2から出力されるデータ
パケットに対して所定の演算処理を施し、その結果をそ
のデータパケットのデータ1フィールドに格納して上記
プログラム記憶手段1に出力する。
なお、プログラム記憶手段1とデータ対生成手段2と
はデータ伝送路4,5により結合されており、データ対生
成手段2と演算処理手段3とはデータ伝送路6により結
合されている。また、演算処理手段3とプログラム記憶
手段1とはデータ伝送路7により結合されている。
はデータ伝送路4,5により結合されており、データ対生
成手段2と演算処理手段3とはデータ伝送路6により結
合されている。また、演算処理手段3とプログラム記憶
手段1とはデータ伝送路7により結合されている。
データパケットがプログラム記憶手段1→データ対生
成手段2→演算処理手段3→プログラム記憶手段1→…
と回り続けることにより、プログラム記憶手段1に記憶
されたデータフロープログラムに基づいて演算処理が進
行する。
成手段2→演算処理手段3→プログラム記憶手段1→…
と回り続けることにより、プログラム記憶手段1に記憶
されたデータフロープログラムに基づいて演算処理が進
行する。
実行すべきデータフロープログラムにおいて、第9図
に示すようにデータのコピーが必要とされる場合、すな
わち、或る演算結果たとえば第9図における加算命令の
出力が2個以上の他の演算、たとえば第9図における乗
算および減算命令によって参照されるような場合、コピ
ー処理はプログラム記憶手段1において行なわれる。第
8図に示すように、プログラム記憶手段1にはコピー有
/無情報が記憶されている。まず、入力されたデータパ
ケットの行先情報に基づきアドレス指定された部分の内
容が読出される。このとき、コピー有/無情報が「無」
であれば、行先フィールドおよび命令フィールドの内容
が更新されたデータパケットが出力されて処理は終了す
る。一方、コピー有/無情報が「有」であれば、行先フ
ィールドおよび命令フィールドの内容が更新されたデー
タパケットが出力されるとともに、続いて記憶されてい
る行先情報、命令情報およびコピー有/無情報が読出さ
れる。引き続いて読出されたコピー有/無情報が「無」
であれば、データ1フィールドに入力データパケットと
同一の結果データを格納しかつ行先フィールドおよび命
令フィールドに現在読出された各情報を格納したデータ
パケットが出力されて処理は終了する。引き続いて読出
されたコピー有/無情報が「有」であれば、さらに続け
て同様にコピー処理が行なわれる。
に示すようにデータのコピーが必要とされる場合、すな
わち、或る演算結果たとえば第9図における加算命令の
出力が2個以上の他の演算、たとえば第9図における乗
算および減算命令によって参照されるような場合、コピ
ー処理はプログラム記憶手段1において行なわれる。第
8図に示すように、プログラム記憶手段1にはコピー有
/無情報が記憶されている。まず、入力されたデータパ
ケットの行先情報に基づきアドレス指定された部分の内
容が読出される。このとき、コピー有/無情報が「無」
であれば、行先フィールドおよび命令フィールドの内容
が更新されたデータパケットが出力されて処理は終了す
る。一方、コピー有/無情報が「有」であれば、行先フ
ィールドおよび命令フィールドの内容が更新されたデー
タパケットが出力されるとともに、続いて記憶されてい
る行先情報、命令情報およびコピー有/無情報が読出さ
れる。引き続いて読出されたコピー有/無情報が「無」
であれば、データ1フィールドに入力データパケットと
同一の結果データを格納しかつ行先フィールドおよび命
令フィールドに現在読出された各情報を格納したデータ
パケットが出力されて処理は終了する。引き続いて読出
されたコピー有/無情報が「有」であれば、さらに続け
て同様にコピー処理が行なわれる。
第10図に従来の選択構造を含むデータフロープログラ
ムの一例を示す。第10図において、N1〜N7はノードであ
る。D1〜D7は各ノードのノード番号、すなわち行先情報
である。op1、op2、TG、FG、op5〜op7は各ノードのオペ
レーションコード、すなわち命令情報である。但し、op
2は条件判定命令であり、入力データに応じた条件判定
結果を「真」/「偽」として出力する。TGは右入力デー
タが「真」のとき左入力データをそのまま出力し、
「偽」のとき何も出力しない、すなわちその入力データ
対を吸収する機能を有する。逆に、FGは右入力データが
「偽」のとき左入力データをそのまま出力し、「真」の
とき何も出力しない、すなわちその入力データ対を吸収
する機能を有する。したがって、第10図は、ノードN2の
出力が「真」のときノードN5、「偽」のときノードN6お
よびN7を、選択的に実行する構造を表わしている。
ムの一例を示す。第10図において、N1〜N7はノードであ
る。D1〜D7は各ノードのノード番号、すなわち行先情報
である。op1、op2、TG、FG、op5〜op7は各ノードのオペ
レーションコード、すなわち命令情報である。但し、op
2は条件判定命令であり、入力データに応じた条件判定
結果を「真」/「偽」として出力する。TGは右入力デー
タが「真」のとき左入力データをそのまま出力し、
「偽」のとき何も出力しない、すなわちその入力データ
対を吸収する機能を有する。逆に、FGは右入力データが
「偽」のとき左入力データをそのまま出力し、「真」の
とき何も出力しない、すなわちその入力データ対を吸収
する機能を有する。したがって、第10図は、ノードN2の
出力が「真」のときノードN5、「偽」のときノードN6お
よびN7を、選択的に実行する構造を表わしている。
第11図に、第10図に示すデータフロープログラムに対
応するプログラム記憶手段1の記憶内容を示す。
応するプログラム記憶手段1の記憶内容を示す。
第10図および第11図を用いて従来の選択構造の実行制
御方式について説明する。まず、ノードN1の演算結果に
対応するデータパケットが演算処理手段3から出力さ
れ、データ伝送路7を通りプログラム記憶手段1に入力
された場合を想定する。プログラム記憶手段1におい
て、その入力データパケットが有している行先情報D1に
基づくアドレス指定によって、第11図に示す記憶内容が
読出され、行先情報D3、命令情報TGおよびコピー有/無
情報「有」が得られる。この場合、プログラム記憶手段
1は、その行先情報および命令情報を持つ次位のデータ
パケットを出力するとともに、コピー有/無情報が
「有」であるため、D1が指定するアドレスの次のアドレ
スを指定することによりコピー情報、すなわち次位の行
先情報D4、次位の命令情報FGおよび次位のコピー有/無
情報「無」を読出し、次位の行先情報および次位の命令
情報を持つコピーに対応するデータパケットを生成し出
力する。プログラム記憶手段1から出力される前記デー
タパケットはデータ対生成手段2に入力される。同様
に、ノードN2の条件判定結果に従ってデータとして
「真」/「偽」を持つデータパケットもプログラム記憶
手段1において行先情報および命令情報が更新され、行
先情報D3および命令情報TGを持つデータパケットおよび
行先情報D4および命令情報FGを持つデータパケットが生
成された後データ対生成手段2に入力される。データ対
生成手段2においてノードN3およびN4に対するデータ対
が生成され、それぞれ演算処理手段3に入力される。も
し、ノードN2の状態判定結果が「真」であれば、演算処
理手段3において、ノードN3、すなわちTGに対応する入
力データパケットはそのまま演算処理手段3を通過し、
ノードN4、すなわちFGに対応する入力データパケットは
演算処理手段3によって吸収され、演算処理手段3から
は何も出力されない。したがって、ノードN3の行先にあ
たるノードN5は引き続いて実行されるが、ノードN4の行
先にあたるノードN6およびノードN7には入力データが到
着せず、実行されない。すなわち、ノードN5と、ノード
N6およびノードN7とに対する選択的な実行を実現してい
る。
御方式について説明する。まず、ノードN1の演算結果に
対応するデータパケットが演算処理手段3から出力さ
れ、データ伝送路7を通りプログラム記憶手段1に入力
された場合を想定する。プログラム記憶手段1におい
て、その入力データパケットが有している行先情報D1に
基づくアドレス指定によって、第11図に示す記憶内容が
読出され、行先情報D3、命令情報TGおよびコピー有/無
情報「有」が得られる。この場合、プログラム記憶手段
1は、その行先情報および命令情報を持つ次位のデータ
パケットを出力するとともに、コピー有/無情報が
「有」であるため、D1が指定するアドレスの次のアドレ
スを指定することによりコピー情報、すなわち次位の行
先情報D4、次位の命令情報FGおよび次位のコピー有/無
情報「無」を読出し、次位の行先情報および次位の命令
情報を持つコピーに対応するデータパケットを生成し出
力する。プログラム記憶手段1から出力される前記デー
タパケットはデータ対生成手段2に入力される。同様
に、ノードN2の条件判定結果に従ってデータとして
「真」/「偽」を持つデータパケットもプログラム記憶
手段1において行先情報および命令情報が更新され、行
先情報D3および命令情報TGを持つデータパケットおよび
行先情報D4および命令情報FGを持つデータパケットが生
成された後データ対生成手段2に入力される。データ対
生成手段2においてノードN3およびN4に対するデータ対
が生成され、それぞれ演算処理手段3に入力される。も
し、ノードN2の状態判定結果が「真」であれば、演算処
理手段3において、ノードN3、すなわちTGに対応する入
力データパケットはそのまま演算処理手段3を通過し、
ノードN4、すなわちFGに対応する入力データパケットは
演算処理手段3によって吸収され、演算処理手段3から
は何も出力されない。したがって、ノードN3の行先にあ
たるノードN5は引き続いて実行されるが、ノードN4の行
先にあたるノードN6およびノードN7には入力データが到
着せず、実行されない。すなわち、ノードN5と、ノード
N6およびノードN7とに対する選択的な実行を実現してい
る。
逆に、ノードN2の条件判定結果が「偽」であれば、ノ
ードN3に対応する入力データパケットは演算処理手段3
によって吸収され、演算処理手段3からは何も出力され
ず、ノードN4に対応する入力データパケットはそのまま
演算処理手段3を通過することにより、ノードN5と、ノ
ードN6およびノードN7とに対する選択的な実行を実現し
ている。
ードN3に対応する入力データパケットは演算処理手段3
によって吸収され、演算処理手段3からは何も出力され
ず、ノードN4に対応する入力データパケットはそのまま
演算処理手段3を通過することにより、ノードN5と、ノ
ードN6およびノードN7とに対する選択的な実行を実現し
ている。
このように、データフロープログラムの従来の選択的
実行は、演算処理手段3によるデータパケットの吸収に
よって実現されている。
実行は、演算処理手段3によるデータパケットの吸収に
よって実現されている。
[発明が解決しようとする課題] 上記の従来の選択構造の実行制御方式では、第10図に
示すように、被選択データおよび選択条件を表わす
「真」/「偽」のデータのコピーの実行と、TGおよびFG
をオペレーションコードとする2個のノードの実行とが
必要になり、選択構造を1個のノードで実現する場合に
比べて、データフロープログラムの実行効率が1/2に低
下する。さらにまた、こうした問題を解決する上で、パ
ケット形式についての制約などはできるだけ少なくする
ことが望ましい。
示すように、被選択データおよび選択条件を表わす
「真」/「偽」のデータのコピーの実行と、TGおよびFG
をオペレーションコードとする2個のノードの実行とが
必要になり、選択構造を1個のノードで実現する場合に
比べて、データフロープログラムの実行効率が1/2に低
下する。さらにまた、こうした問題を解決する上で、パ
ケット形式についての制約などはできるだけ少なくする
ことが望ましい。
[課題を解決するためのの手段] この発明に係るデータフロープログラムの実行制御方
式は、所定の条件によって実行すべき命令群を選択する
選択構造を含むデータフロープログラム上において、TG
およびFGをオペレーションコードとする2個のノードが
実現する選択機能を1個の次位のノードを用いて表現
し、演算処理手段において入力される次位のノードに対
するデータパケットの行先情報を前記所定の条件に基づ
いて操作することによって、そのデータパケットの行先
を選択的に指定するものである。所定の条件に従って、
被選択データに対して実行される命令群が選択される選
択構造を含むデータフロープログラムを実行する場合
に、条件データを含むデータパケットによってアクセス
されるプログラム記憶手段の領域、および被選択データ
を含むデータパケットによってアクセスされるプログラ
ム記憶手段の領域に、それぞれ、同一の行先情報およ
び、条件データの内容に従って行先情報に所定の操作を
施すことを内容とする、同一の令情報を記憶させる。命
令情報は、条件データに基づいて選択される2つの行先
の間の相対的位置情報を含む。演算処理手段において、
入力されたデータパケットの命令情報が上記した選択構
造に相当する命令情報である場合には、条件データの内
容に応じて当該データパケットの行先情報、または当該
データパケットの行先情報に相対的位置情報を加算した
行先情報、のいずれかを選択して、当該データパケット
の行先を指定する。
式は、所定の条件によって実行すべき命令群を選択する
選択構造を含むデータフロープログラム上において、TG
およびFGをオペレーションコードとする2個のノードが
実現する選択機能を1個の次位のノードを用いて表現
し、演算処理手段において入力される次位のノードに対
するデータパケットの行先情報を前記所定の条件に基づ
いて操作することによって、そのデータパケットの行先
を選択的に指定するものである。所定の条件に従って、
被選択データに対して実行される命令群が選択される選
択構造を含むデータフロープログラムを実行する場合
に、条件データを含むデータパケットによってアクセス
されるプログラム記憶手段の領域、および被選択データ
を含むデータパケットによってアクセスされるプログラ
ム記憶手段の領域に、それぞれ、同一の行先情報およ
び、条件データの内容に従って行先情報に所定の操作を
施すことを内容とする、同一の令情報を記憶させる。命
令情報は、条件データに基づいて選択される2つの行先
の間の相対的位置情報を含む。演算処理手段において、
入力されたデータパケットの命令情報が上記した選択構
造に相当する命令情報である場合には、条件データの内
容に応じて当該データパケットの行先情報、または当該
データパケットの行先情報に相対的位置情報を加算した
行先情報、のいずれかを選択して、当該データパケット
の行先を指定する。
[作用] 上記の実行制御方式を採用することにより、従来の選
択構造の実現のために必要であった被選択データおよび
選択条件を表わす「真」/「偽」データのコピーの実行
が不要になり、さらに、TGおよびFGをオペレーションコ
ードとする2個のノードが実現する機能と等価な機能が
1個のノードにより実現される。このため、情報処理装
置上を流れる本来不要なデータ量を削減できるととも
に、実行命令数も削減でき、データフロープログラムの
実行効率を高めることができる。さらに実行命令数の削
減により、プログラム記憶手段の記憶容量の有効利用も
図れる。また、命令情報に、一方の行先情報と、選択さ
れる2つの行先の間の相対的位置情報を含むだけであ
り、行先の位置情報そのものを含むわけではないので、
2つの行先を指定するための情報を格納するための領域
が少なくてすむ。
択構造の実現のために必要であった被選択データおよび
選択条件を表わす「真」/「偽」データのコピーの実行
が不要になり、さらに、TGおよびFGをオペレーションコ
ードとする2個のノードが実現する機能と等価な機能が
1個のノードにより実現される。このため、情報処理装
置上を流れる本来不要なデータ量を削減できるととも
に、実行命令数も削減でき、データフロープログラムの
実行効率を高めることができる。さらに実行命令数の削
減により、プログラム記憶手段の記憶容量の有効利用も
図れる。また、命令情報に、一方の行先情報と、選択さ
れる2つの行先の間の相対的位置情報を含むだけであ
り、行先の位置情報そのものを含むわけではないので、
2つの行先を指定するための情報を格納するための領域
が少なくてすむ。
[実施例] 以下、実施例に基づいてこの発明を詳細に説明する。
この発明の一実施例における情報処理装置のブロック
構成図は、第6図に示す従来例におけるブロック構成図
と同一である。また、この実施例におけるデータパケッ
トのフィールド構成およびプログラム記憶手段1におけ
る記憶内容のフィールド構成もそれぞれ第7図および第
8図に示す従来例の場合と同様である。
構成図は、第6図に示す従来例におけるブロック構成図
と同一である。また、この実施例におけるデータパケッ
トのフィールド構成およびプログラム記憶手段1におけ
る記憶内容のフィールド構成もそれぞれ第7図および第
8図に示す従来例の場合と同様である。
第1図にこの実施例における選択構造を含むデータフ
ロープログラムの変換規則を示す。第1図においてnは
従来例におけるTGをオペレーションコードとするノード
の出力のコピー数、すなわちそのノードから出力される
データパケットが何個の行先を持つかを表わす数であ
る。第1図においてSWn(n=1,2,3,…)をオペレーシ
ョンコードとするノードは、TGおよびFGをオペレーショ
ンコードとする2個のノードの機能を論理的に複合した
機能を有する。すなわち、SWnをオペレーションコード
とするノードは、右入力データが「真」のとき左入力デ
ータを左出力にそのまま出力して右出力には何も出力せ
ず、逆に、右入力データが「偽」のとき左入力データを
右出力にそのまま出力して左出力には何も出力しない機
能を有する。オペレーションコードSWnはその左出力の
コピー数に応じて個々に設定される。
ロープログラムの変換規則を示す。第1図においてnは
従来例におけるTGをオペレーションコードとするノード
の出力のコピー数、すなわちそのノードから出力される
データパケットが何個の行先を持つかを表わす数であ
る。第1図においてSWn(n=1,2,3,…)をオペレーシ
ョンコードとするノードは、TGおよびFGをオペレーショ
ンコードとする2個のノードの機能を論理的に複合した
機能を有する。すなわち、SWnをオペレーションコード
とするノードは、右入力データが「真」のとき左入力デ
ータを左出力にそのまま出力して右出力には何も出力せ
ず、逆に、右入力データが「偽」のとき左入力データを
右出力にそのまま出力して左出力には何も出力しない機
能を有する。オペレーションコードSWnはその左出力の
コピー数に応じて個々に設定される。
第2図に、この実施例における選択構造を含むデータ
フロープログラムの例を示す。但し、簡単のため、まず
従来例においてTGをオペレーションコードとするノード
の出力がコピーされていない場合、すなわちn=1の場
合について説明する。第2図は、第10図に示す従来例に
おける選択構造を含むデータフロープログラムに対し
て、n=1として第1図に示す変換規則を適用したもの
である。
フロープログラムの例を示す。但し、簡単のため、まず
従来例においてTGをオペレーションコードとするノード
の出力がコピーされていない場合、すなわちn=1の場
合について説明する。第2図は、第10図に示す従来例に
おける選択構造を含むデータフロープログラムに対し
て、n=1として第1図に示す変換規則を適用したもの
である。
第3図に、第2図に示すデータフロープログラムに対
応するプログラム記憶手段1の記憶内容の例を示す。第
3図において、行先情報D8が指定するアドレスには、SW
1をオペレーションコードとするノードN8の左出力の行
先に関する情報が記憶されている。さらに、D8が指定す
るアドレスの次のアドレス、すなわちD8+1が指定する
アドレス以降にはSW1をオペレーションコードとするノ
ードN8の右出力の行先に関する情報が記憶されている。
応するプログラム記憶手段1の記憶内容の例を示す。第
3図において、行先情報D8が指定するアドレスには、SW
1をオペレーションコードとするノードN8の左出力の行
先に関する情報が記憶されている。さらに、D8が指定す
るアドレスの次のアドレス、すなわちD8+1が指定する
アドレス以降にはSW1をオペレーションコードとするノ
ードN8の右出力の行先に関する情報が記憶されている。
次に、この実施例における選択構造の実行制御方式に
ついて説明する。まず、ノードN1の演算結果に対応する
データパケットが演算処理手段3から出力され、データ
伝送路7を通りプログラム記憶手段1に入力された場合
を想定する。プログラム記憶手段1において、その入力
データパケットが有している行先情報D1に基づくアドレ
ス指定によって、第3図に示す記憶内容が読出され、行
先情報D8、命令情報SW1およびコピー有/無情報「無」
が得られる。この場合、コピー有/無情報が「無」であ
るため、プログラム記憶手段1は、その行先情報および
命令情報を持つ次位のデータパケットのみを出力する。
プログラム記憶手段1から出力される前記データパケッ
トはデータ対生成手段2に入力される。同様に、ノード
N2の条件判定結果に従ってデータとして「真」/「偽」
を持つデータパケットは、プログラム記憶手段1におい
て行先情報および命令情報がそれぞれD8およびSW1に更
新された後、データ対生成手段2に入力される。データ
対生成手段2において、SW1をオペレーションコードと
するノードN8に対するデータ対が生成され、演算処理手
段3に入力される。もし、ノードN2の条件判定結果が
「真」であれば、演算処理手段3において、ノードN8、
すなわちSW1に対応する左入力データパケットはそのま
ま演算処理手段3から出力され、再びプログラム記憶手
段1に入力される。プログラム記憶手段1に対するその
入力データパケットは行先情報D8を有しているため、プ
ログラム記憶手段1においてその行先情報D8に基づくア
ドレス指定によって、次位の行先情報D5、命令情報op5
およびコピー有/無情報「無」が読出され、次位の行先
情報D5、命令情報op5を持つデータパケットが出力され
る。これは、ノードN8の左入力データパケットがデータ
フロープログラム上におけるノードN8の左出力に選択的
に出力されることを意味している。逆に、ノードN2の条
件判定結果が「偽」であれば、演算処理手段3におい
て、ノードN8、すなわちSW1に対応する入力データパケ
ットの行先情報は1を加算されてD8+1に更新された
後、演算処理手段3から出力され、再びプログラム記憶
手段1に入力される。プログラム記憶手段1に対するそ
の入力データパケットは行先情報D8+1を有しているた
め、プログラム記憶手段1においてその行先情報D8+1
に基づくアドレス指定によって、次位の行先情報D6、命
令情報op6およびコピー有/無情報「有」が読出され、
次位の行先情報D6、命令情報op6を持つデータパケット
が出力される。さらに、上記コピー有/無情報が「有」
であるため、引き続いてコピー処理が実行され、行先情
報D7、命令情報op7を持つデータパケットが出力され
る。これは、ノードN8の左入力データパケットがデータ
フロープログラム上におけるノードN8の右出力に選択的
に出力されることを意味している。
ついて説明する。まず、ノードN1の演算結果に対応する
データパケットが演算処理手段3から出力され、データ
伝送路7を通りプログラム記憶手段1に入力された場合
を想定する。プログラム記憶手段1において、その入力
データパケットが有している行先情報D1に基づくアドレ
ス指定によって、第3図に示す記憶内容が読出され、行
先情報D8、命令情報SW1およびコピー有/無情報「無」
が得られる。この場合、コピー有/無情報が「無」であ
るため、プログラム記憶手段1は、その行先情報および
命令情報を持つ次位のデータパケットのみを出力する。
プログラム記憶手段1から出力される前記データパケッ
トはデータ対生成手段2に入力される。同様に、ノード
N2の条件判定結果に従ってデータとして「真」/「偽」
を持つデータパケットは、プログラム記憶手段1におい
て行先情報および命令情報がそれぞれD8およびSW1に更
新された後、データ対生成手段2に入力される。データ
対生成手段2において、SW1をオペレーションコードと
するノードN8に対するデータ対が生成され、演算処理手
段3に入力される。もし、ノードN2の条件判定結果が
「真」であれば、演算処理手段3において、ノードN8、
すなわちSW1に対応する左入力データパケットはそのま
ま演算処理手段3から出力され、再びプログラム記憶手
段1に入力される。プログラム記憶手段1に対するその
入力データパケットは行先情報D8を有しているため、プ
ログラム記憶手段1においてその行先情報D8に基づくア
ドレス指定によって、次位の行先情報D5、命令情報op5
およびコピー有/無情報「無」が読出され、次位の行先
情報D5、命令情報op5を持つデータパケットが出力され
る。これは、ノードN8の左入力データパケットがデータ
フロープログラム上におけるノードN8の左出力に選択的
に出力されることを意味している。逆に、ノードN2の条
件判定結果が「偽」であれば、演算処理手段3におい
て、ノードN8、すなわちSW1に対応する入力データパケ
ットの行先情報は1を加算されてD8+1に更新された
後、演算処理手段3から出力され、再びプログラム記憶
手段1に入力される。プログラム記憶手段1に対するそ
の入力データパケットは行先情報D8+1を有しているた
め、プログラム記憶手段1においてその行先情報D8+1
に基づくアドレス指定によって、次位の行先情報D6、命
令情報op6およびコピー有/無情報「有」が読出され、
次位の行先情報D6、命令情報op6を持つデータパケット
が出力される。さらに、上記コピー有/無情報が「有」
であるため、引き続いてコピー処理が実行され、行先情
報D7、命令情報op7を持つデータパケットが出力され
る。これは、ノードN8の左入力データパケットがデータ
フロープログラム上におけるノードN8の右出力に選択的
に出力されることを意味している。
次に、従来例においてTGをオペレーションコードとす
るノードの出力がコピーされている場合について説明す
る。
るノードの出力がコピーされている場合について説明す
る。
第4図に、この実施例における選択構造を含むデータ
フロープログラムの他の例を示す。第4図において、従
来例におけるTGをオペレーションコードとするノードの
出力、すなわちこの実施例における選択命令を表わすノ
ードの左出力はコピーされており、コピー数はn=2で
ある。したがって、上記選択命令を表わすノードのオペ
レーションコードはSW2となる。
フロープログラムの他の例を示す。第4図において、従
来例におけるTGをオペレーションコードとするノードの
出力、すなわちこの実施例における選択命令を表わすノ
ードの左出力はコピーされており、コピー数はn=2で
ある。したがって、上記選択命令を表わすノードのオペ
レーションコードはSW2となる。
第5図に、第4図に示すデータフロープログラムに対
応するプログラム記憶手段1の記憶内容の例を示す。ノ
ードN9の左出力の行先がコピーされているため、第5図
において行先情報D9が指定するアドレスとその次のアド
レス(D9+1)にはSW2をオペレーションコードとする
ノードN9の左出力の行先に関する情報が記憶されてい
る。さらにその次のアドレス(D9+2)以後にはSW2を
オペレーションコードとするノードN9の右出力の行先に
関する情報が記憶されている。
応するプログラム記憶手段1の記憶内容の例を示す。ノ
ードN9の左出力の行先がコピーされているため、第5図
において行先情報D9が指定するアドレスとその次のアド
レス(D9+1)にはSW2をオペレーションコードとする
ノードN9の左出力の行先に関する情報が記憶されてい
る。さらにその次のアドレス(D9+2)以後にはSW2を
オペレーションコードとするノードN9の右出力の行先に
関する情報が記憶されている。
データ対生成手段2においてSW2をオペレーションコ
ードとするノードN9に対するデータ対が生成され、演算
処理手段3に入力されるまでの動作は、上記のSW2をオ
ペレーションコードとするノードの出力がコピーされて
いない場合と同様である。ノードN2の条件判定結果が
「真」であれば、SW2をオペレーションコードとするノ
ードの出力がコピーされていない場合と同様に、演算処
理手段3において、ノードN9、すなわちSW2に対応する
左入力データパケットはそのまま演算処理手段3から出
力され、再びプログラム記憶手段1に入力される。プロ
グラム記憶手段1に対する入力データパケットは行先情
報D9を有しているため、プログラム記憶手段1において
その行先情報D9に基づくアドレス指定によって、ノード
N5およびノードN5′に対応する入力データパケットが生
成される。逆に、ノードN2の条件判定結果が「偽」であ
れば、演算処理手段3において、ノードN9、すなわちSW
2に対応する入力データパケットの行先情報は2を加算
されてD9+2に更新された後、演算処理手段3から出力
され、再びプログラム記憶手段1に入力される。プログ
ラム記憶手段1に対する入力データパケットは行先情報
D9+2を有しているため、プログラム記憶手段1におい
てその行先情報D9+2に基づくアドレス指定によって、
ノードN6およびノードN7に対する入力データパケットが
生成される。
ードとするノードN9に対するデータ対が生成され、演算
処理手段3に入力されるまでの動作は、上記のSW2をオ
ペレーションコードとするノードの出力がコピーされて
いない場合と同様である。ノードN2の条件判定結果が
「真」であれば、SW2をオペレーションコードとするノ
ードの出力がコピーされていない場合と同様に、演算処
理手段3において、ノードN9、すなわちSW2に対応する
左入力データパケットはそのまま演算処理手段3から出
力され、再びプログラム記憶手段1に入力される。プロ
グラム記憶手段1に対する入力データパケットは行先情
報D9を有しているため、プログラム記憶手段1において
その行先情報D9に基づくアドレス指定によって、ノード
N5およびノードN5′に対応する入力データパケットが生
成される。逆に、ノードN2の条件判定結果が「偽」であ
れば、演算処理手段3において、ノードN9、すなわちSW
2に対応する入力データパケットの行先情報は2を加算
されてD9+2に更新された後、演算処理手段3から出力
され、再びプログラム記憶手段1に入力される。プログ
ラム記憶手段1に対する入力データパケットは行先情報
D9+2を有しているため、プログラム記憶手段1におい
てその行先情報D9+2に基づくアドレス指定によって、
ノードN6およびノードN7に対する入力データパケットが
生成される。
以上は、選択命令をオペレーションコードとするノー
ドの左出力がコピーされていない場合と、コピーされて
2個のノードに入力される場合、すなわちコピー数がN
=1およびN=2の場合について説明したが、選択命令
をオペレーションコードとするノードの左出力がコピー
され、任意のn個のノードに入力される場合についても
同様であり、SWnをオペレーションコードとしたノード
の入力データパケットの右入力データが「偽」の場合
に、演算処理手段3において入力データパケットの行先
情報の値をnだけ加算したものに更新し、演算処理手段
3から出力することにより選択構造の実行を実現するこ
とができる。
ドの左出力がコピーされていない場合と、コピーされて
2個のノードに入力される場合、すなわちコピー数がN
=1およびN=2の場合について説明したが、選択命令
をオペレーションコードとするノードの左出力がコピー
され、任意のn個のノードに入力される場合についても
同様であり、SWnをオペレーションコードとしたノード
の入力データパケットの右入力データが「偽」の場合
に、演算処理手段3において入力データパケットの行先
情報の値をnだけ加算したものに更新し、演算処理手段
3から出力することにより選択構造の実行を実現するこ
とができる。
[発明の効果] 以上詳細に説明したように、データ駆動型情報処理装
置においてこの発明による選択構造実行制御方式を採用
すれば、従来に比べて、コピー数の削減および実行命令
数の削減が図られ、データフロープログラムの実行効率
が高められる。さらに、実行命令数の削減により、プロ
グラム記憶手段の記憶容量の有効利用も図られる。ま
た、命令情報に、2つの行先の間の相対的位置情報を含
むだけで、選択構造の両方の行先のいずれをも指定する
ことが可能となり、2つの行先情報をそのまま記憶する
場合と比較して、必要とされる記憶領域が少なくてす
む。そのためデータパケットのパケット形式を従来のも
のと同様にできる上、行先を定めるために複雑な処理を
行なう必要もない。
置においてこの発明による選択構造実行制御方式を採用
すれば、従来に比べて、コピー数の削減および実行命令
数の削減が図られ、データフロープログラムの実行効率
が高められる。さらに、実行命令数の削減により、プロ
グラム記憶手段の記憶容量の有効利用も図られる。ま
た、命令情報に、2つの行先の間の相対的位置情報を含
むだけで、選択構造の両方の行先のいずれをも指定する
ことが可能となり、2つの行先情報をそのまま記憶する
場合と比較して、必要とされる記憶領域が少なくてす
む。そのためデータパケットのパケット形式を従来のも
のと同様にできる上、行先を定めるために複雑な処理を
行なう必要もない。
第1図はこの発明の一実施例における選択構造の変換規
則を示す図である。第2図は同実施例における選択構造
を含むデータフロープログラムの第1の例を示す図であ
る。第3図は第2図に示すデータフロープログラムに対
応するプログラム記憶手段の記憶内容を示す図である。
第4図は同実施例における選択構造を含むデータフロー
プログラムの第2の例を示す図である。第5図は第4図
に示すデータフロープログラムに対応するプログラム記
憶手段の記憶内容を示す図である。第6図は従来例およ
びこの発明の実施例におけるデータ駆動型情報処理装置
のブロック構成図である。第7図は従来例およびこの発
明の実施例におけるデータパケットのフィールド構成を
示す図である。第8図は従来例およびこの発明の実施例
におけるプログラム記憶手段の記憶内容のフィールド構
成を示す図である。第9図はコピー処理を含むデータフ
ロープログラムの例を示す図である。第10図は従来例に
おける選択構造を含むデータフロープログラムの例を示
す図である。第11図は第10図に示すデータフロープログ
ラムに対応するプログラム記憶手段の記憶内容を示す図
である。 図において、1はプログラム記憶手段、2はデータ対生
成手段、3は演算処理手段、4〜7はデータ伝送路、N1
〜N9,N5′はノード、D1〜D9,D5′は行先情報、op1,op2,
op5〜op7,op5′,TG,FG,SW1,SW2はオペレーションコード
を示す。
則を示す図である。第2図は同実施例における選択構造
を含むデータフロープログラムの第1の例を示す図であ
る。第3図は第2図に示すデータフロープログラムに対
応するプログラム記憶手段の記憶内容を示す図である。
第4図は同実施例における選択構造を含むデータフロー
プログラムの第2の例を示す図である。第5図は第4図
に示すデータフロープログラムに対応するプログラム記
憶手段の記憶内容を示す図である。第6図は従来例およ
びこの発明の実施例におけるデータ駆動型情報処理装置
のブロック構成図である。第7図は従来例およびこの発
明の実施例におけるデータパケットのフィールド構成を
示す図である。第8図は従来例およびこの発明の実施例
におけるプログラム記憶手段の記憶内容のフィールド構
成を示す図である。第9図はコピー処理を含むデータフ
ロープログラムの例を示す図である。第10図は従来例に
おける選択構造を含むデータフロープログラムの例を示
す図である。第11図は第10図に示すデータフロープログ
ラムに対応するプログラム記憶手段の記憶内容を示す図
である。 図において、1はプログラム記憶手段、2はデータ対生
成手段、3は演算処理手段、4〜7はデータ伝送路、N1
〜N9,N5′はノード、D1〜D9,D5′は行先情報、op1,op2,
op5〜op7,op5′,TG,FG,SW1,SW2はオペレーションコード
を示す。
Claims (1)
- 【請求項1】複数の行先情報および複数の命令情報から
なるデータフロープログラムを記憶し、行先フィール
ド、命令フィールド、第1のデータフィールドおよび第
2のデータフィールドからなるデータパケットを入力
し、そのデータパケットの行先フィールドの内容に基づ
くアドレス指定を行なうことによって、前記データフロ
ープログラムの次位の行先情報および次位の命令情報を
読出し、それらの各情報を前記データパケットの行先フ
ィールドおよび命令フィールドにそれぞれ格納して出力
するプログラム記憶手段と、 前記プログラム記憶手段から出力される前記データパケ
ットの待ち合わせを行ない、行先情報が一致する2つの
データパケットのうち一方のデータパケットの第1のデ
ータフィールドのデータを他方のデータパケットの第2
のデータフィールドに格納してその他方のデータパケッ
トを出力するデータ対生成手段と、 前記データ対生成手段から出力される前記データパケッ
トを入力し、そのデータパケットの命令フィールドの命
令情報を解読し、前記第1および第2のデータフィール
ドの2つのデータに対して所定の演算処理を施し、その
結果をそのデータパケットの第1のデータフィールドに
格納して出力する演算処理手段とから構成される情報処
理装置において、 所定の条件に従って、被選択データに対して実行される
命令群が選択される選択構造を含むデータフロープログ
ラムを実行する場合に、 条件データを含むデータパケットによってアクセスされ
る前記プログラム記憶手段の領域、および被選択データ
を含むデータパケットによってアクセスされる前記プロ
グラム記憶手段の領域に、それぞれ、同一の行先情報お
よび、前記条件データの内容に従って行先情報に所定の
操作を施すことを内容とする、同一の命令情報を記憶さ
せるとともに、 前記命令情報は、前記条件データに基づいて選択される
2つの行先の間の相対的位置情報を含み、 前記演算処理手段において、入力されたデータパケット
の命令情報が前記命令情報である場合には、前記条件デ
ータの内容に応じて当該データパケットの行先情報、ま
たは当該データパケットの行先情報に前記相対的位置情
報を加算した行先情報、のいずれかを選択して、当該デ
ータパケットの行先を指定することを特徴とする、デー
タフロープログラムの実行制御方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63031560A JP2579185B2 (ja) | 1988-02-12 | 1988-02-12 | データフロープログラムの実行制御方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63031560A JP2579185B2 (ja) | 1988-02-12 | 1988-02-12 | データフロープログラムの実行制御方式 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH01206436A JPH01206436A (ja) | 1989-08-18 |
JP2579185B2 true JP2579185B2 (ja) | 1997-02-05 |
Family
ID=12334559
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP63031560A Expired - Fee Related JP2579185B2 (ja) | 1988-02-12 | 1988-02-12 | データフロープログラムの実行制御方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2579185B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05174167A (ja) * | 1991-12-26 | 1993-07-13 | Sharp Corp | データフロープログラムの実行制御方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS59180636A (ja) * | 1983-03-31 | 1984-10-13 | Fujitsu Ltd | デ−タ・フロ−・マシン |
-
1988
- 1988-02-12 JP JP63031560A patent/JP2579185B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH01206436A (ja) | 1989-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2665111B2 (ja) | ベクトル処理装置 | |
JPS61276032A (ja) | 情報処理装置 | |
US5577256A (en) | Data driven type information processor including a combined program memory and memory for queuing operand data | |
EP0144779B1 (en) | Parallel processing computer | |
JP3237858B2 (ja) | 演算装置 | |
JP2579185B2 (ja) | データフロープログラムの実行制御方式 | |
JPH0523447B2 (ja) | ||
JPH05174167A (ja) | データフロープログラムの実行制御方法 | |
US5542080A (en) | Method for controlling execution of data driven type information processor | |
JP3686091B2 (ja) | データ駆動型情報処理装置 | |
JP3696625B2 (ja) | データ駆動型情報処理装置 | |
JPH0660206A (ja) | データフロープログラムの実行制御方法 | |
JP2764358B2 (ja) | データ駆動型情報処理装置 | |
JPH07110769A (ja) | Vliw型計算機 | |
JP2731740B2 (ja) | 通信レジスタ付並列計算機 | |
JP3708560B2 (ja) | データフロー型情報処理装置 | |
JPH0652334A (ja) | データフロープロセッサ処理変更装置 | |
JP2851192B2 (ja) | 並列演算処理装置におけるキャリー付き加減算処理方式 | |
JPS6315333A (ja) | マイクロプログラムシ−ケンス制御方式 | |
JPH0636161B2 (ja) | 情報処理装置 | |
JPH058451B2 (ja) | ||
JPH0531170B2 (ja) | ||
JPH0620071A (ja) | データ駆動型情報処理装置 | |
JPH1074190A (ja) | 並列プロセッサ | |
JPH0225931A (ja) | マイクロプログラム制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |