JPH01142832A - データフロー計算機の処理方式 - Google Patents

データフロー計算機の処理方式

Info

Publication number
JPH01142832A
JPH01142832A JP30021487A JP30021487A JPH01142832A JP H01142832 A JPH01142832 A JP H01142832A JP 30021487 A JP30021487 A JP 30021487A JP 30021487 A JP30021487 A JP 30021487A JP H01142832 A JPH01142832 A JP H01142832A
Authority
JP
Japan
Prior art keywords
token
data
instruction
function
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.)
Pending
Application number
JP30021487A
Other languages
English (en)
Inventor
Yasuhiro Fujino
藤野 泰弘
Haruki Taguchi
田口 春樹
Toshiaki Yamamoto
山本 利昭
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP30021487A priority Critical patent/JPH01142832A/ja
Publication of JPH01142832A publication Critical patent/JPH01142832A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、データフロー計算機における複数のプロセス
またはプログラム七ジエール(以下関数という)でのト
ークンの送受(プロセス間通信)方式に関し、新たな発
火検出機構を有するデータフロー計算機の処理方式に関
する。
〔従来の技術〕
従来のデータフロー計算機における発火検出方式は、ノ
ード名(プログラムメモリアドレス)あるいはノード名
とカラーをキーとしたものであった。また、関数間のト
ークンの送受は、特開昭60−5751号公報「データ
処理方式」に述べられているように、関数間のいわゆる
伝言板または黒板を介してデータを受渡す関数コールに
よって実現されていた。
〔発明が解決しようとする問題点〕
上記従来技術は、同一ノード名をもつトークンは必ず同
一関数に属していることから、複数の関数間での発火を
行うことは出来なかった。また、並列に動作している複
数のユニット(複数プロセス)間でメツセージの通信を
行う場合、送り側がどうしても受信側プロセスの進行状
況(どのノードが実行されているのか)を認識する必要
があった。
例えば成る送信側関数が受信側関数内のどれかにメツセ
ージを送る場合、受信側関数が機能毎の処理タスクから
なる複数のプロセスユニットの集合体とすると各タスク
は以前に受信したメツセージを分析して新しいメツセー
ジとの関連を−ベる必要があるため、送信側関数は受信
側関数のどのプロセスユニットにメツセージを送るかを
知る必要があった。このため ■ 送信側ユニットにおける受信側ユニットの状態分析
を要し、 ■ それにともなうプログラム構造が複雑となり。
■ その結果処理速度が低下する。
という問題があった。
本発明の目的はこれらの問題を解決し、関数コール方式
に依らないで関数間のトークンの授受を可能とするため
、複数の関数間での発火を可能とする発火検出方式等に
よるデータフロー計算機の処理方式を提供するととKあ
る。
〔問題点を解決するための手段〕
上記目的を達成するため、本発明は、データフロー計算
機においである複数の関数間で共通した記号を記憶する
手段と、該記号を検索情報として命令の発火を検出する
手段とを有することを特徴とする。
具体的には送信データのトークンと、受信ノードアドレ
スとでの新らしい発火方式に係る5BND命令とRBC
命令とを設ける方式等によシ解決する。
〔作用〕
上記の手段により、本発明に於ては、送信側関数Aは、
送ることだけを考え、受信側では新メツセージを必要と
する唯一のユニット(たとえばB2)が、受信すること
を示せば、そこで通信が可能となるもので、この点を以
下に示す。
(SEND命令): 送信側Aは、送るべきトークンが用意できたら、「送る
」と意志表示だけをすれば良く、受信側Bのどのノード
に送れば良いかは、意識する必要がないため、受信側関
数の状態分析が不要である。
(REC命令): 受信側Bは、実行すべきタスクが決まったら、受信ノー
ドアドレスがどこであるかを表せば良い。
(S/R命令): 異なるユニット間で、これら送信データと。
受信ノードアドレスの2つのトークンがそろったことに
より、送信データのトークン(A側にあった。)を、受
信ノード(B側)に送り込むことで、プロセス間通信が
実現されるもので。
プログラム構造が簡潔になる。
ところで関数A、B間での通信以外にも、たとえば、関
数C,D間においても、通信をするような場合、これら
を区別する必要がある。そこで、それぞれの送受信番号
を、1番(A、8間)、2番(C,D間)のように定め
、この番号をキーとして、発火するようにする。他の通
常の命令は、dosあるいは、dosとカラーをキーと
した発火検出方法である。
通常の命令は、発火した後、演算部で実行゛されるが、
5END 、REC命令の場合は、それぞれ単体で発火
した後、S/R命令となり、このS/R命令が演算部で
実行される。
〔実施例〕
以下、本発明の実施例を図面によシ詳細に説明する。
第2図は関数A(21)内の5ENDなる命令23に基
いて関数B(22)内の成る命令25に必要なデータを
送り込む場合を示すデータ70−グラフである。図は処
理の70−が上から下に進むことを示しており、関数B
内のRECなる命令24が発火した後関数A内の命令5
END23が発火し、次に命令25が発火することを示
している。図において命令REC24は関数B内のアド
レスReo−dosに格納されている命令に関しデータ
の待合せをするための命令であり定数データnを使用す
るものであることを示す。命令5END23は5end
−dataなるデータを持ち、定数データnを使用する
ものであることを示している。
命令25はReo−desなるアドレスに格納されてお
シ、5end−dataなる結果データを出力するもの
であることを示す。
次に本発明第1の実施例を第1図により命令REC24
が発火し、命令25が結果を出力するまでの過程によシ
説明する。以下の説明における■。
■・・・・・・・・・■は第1図の同符号に対応してい
る。また、図におけるデータのフローは全体を制御する
制御部によって行われるが、図が煩雑となるため図示は
省略しである。
■ Rec−dosをデータフィールドVIICもつト
ークンがオペランドワーキングキ、−1より抽出され、
プログラムメモリ2の該当アドレス部dss1に格納さ
れているRBC命令の該当するデータnを読み出して発
火検出部(またはマツチングストア部MS)のトークン
待合せメモリ3に格納する。
■ 発火検出部(MS )5ではREC命令であるにも
拘らず該データnに関し待合せメモリ内に既忙格納され
たトークンがないためトークン待合せメモリ内にnとデ
ータReo−dosを明示して待合せる。
ここでRBC命令は2オペランド命令であシ、制御部は
これを知っている。また定数データnは異った関数間F
cまたかる処理忙夫々与えた本発明特有の識別記号であ
って以下送受信番号と呼ぶこととする。
■ 次いで%5end −dataをデータフィールド
にもつトーク/がアドレスdos 2の5END命令の
データをアクセス1、結果をトークン待合せメモ175
1c格納する。
■ 発火検出部(MS)内のトークン待合せメモリを、
上記nを検索キーとして検索し、既に対応するRFC命
令が待合せていることを検出し、 ■ 演算部4に5end −data 、 Rac −
des及び送信命令S / Rの命令コードを転送する
■ 演算部4では、s / Hの命令コードにより。
新たに行先ノード名のフィールドにFteo −dos
をもち、データフィールドに5end−dataをもつ
命令トークン12を生成する。すなわち、この場合の演
算はデータ5end −dataを関数B内に送シ込む
ためのトークンを生成することであるため、単にデータ
を並べ換えて所定のフォーマットのトークンにするだけ
の作業が演算部4によって実行される。
■ トークン12のアドレス部(dos )はRec−
dosで既に決定しているため、該トークンはリンクメ
モリ5を参照せずに、オペランドワーキングキー−IK
記入され、さらにプログラムメモリ2に転送され、目的
の命令ノードにトークンを引渡す。
以上の動作を実現するための発火検出部における、RI
G命令の動作フローチャートを第5因罠示し、5END
命令の動作フローチャートを第4図に示す。上記■に対
する検索が第3図のステップ31に、上記■に対する検
索が第4図のステップ41に対応している。
以上が上記第1の実施例の基本的動作であるが、データ
フロー計算機では、命令の実行順序はトーク/の到着に
のみよるので、上述の5END命令とR13C命令が常
に順序正しく発火するとは限らない。たとえば、ある送
受信番号n0RBc命令に対して!3END命令が途中
に対応するREC命令の発火をはさますにつづけて複数
回発火した場合、発火検出部(MS)は一般にトークン
内のデータ部と送受信番号nで発火するよう作られるた
め、 5end−dataのトークン同士で発火してし
まうことになる。
第5図ないし第11図はこの問題を解決した第2の実施
例についての詳細説明図である。
第6図は81!ND命令の動作フローチャートを示す。
さらに各種状態における発火検出部の状態変化の様子を
第7図から第11図に示した。
第7図はトークン待合せメモリ内の各トークンの構成に
よりREC命令による発火の過程を示したものである。
701ないし706はその構成要素を示したものであシ
、5f701.θf702は夫々同種のデータのF’l
F’0キエーの先頭と終シを示すスタートフラッグおよ
びエンドフラッグであシ、8fが1のときは先頭、0の
ときはその前にリンクされたトークンがあることを示す
。efが1のときはそのトークンが最後、0のときは更
に後にリンク1でることを示す。703 dosは該ト
ークンの行く先アドレス、7o4送受noは送受信番号
、70511nkは上記FIFOキエーのつながりを示
すための次のトークンの格納されているアドレス、70
<5dataは該トークンのデータである。図は710
なるトークンが先頭であり720なるトークンとリンク
されてお9.720のef=1であるため、この2つだ
けで終っているととを示している。またトークン710
が使用されたあとは720が先頭になるため721のよ
うにsfが0から1に変ることを示している。
つぎに第2の実施例におけるRgC命令の動作を第5図
のフローチャートにより詳述する。
(ステップ501) 発火検出部(MS)内のトークン
待合せメモリ3を送受信番号nで検索する。すなわち、
待合せている5end −da taのトークンがある
かどうかを検索する。
(ステップ502)  501で、検索データがあった
場合には、最初に待合せた5and −dataのトー
クンを選出するため、スタートフラグ(8f)オンの該
当トークンを検索する。
(ステップ503)  502で検出した待合せトーク
ンの1inkフイールドがnullかどうか調べ、nu
llでない場合には、他の待合せ5end −data
のトークンがチェーンでリンクされているので、リンク
した先の待合せ5end−dataのトークンの8fを
オンにする。(第7図721) (ステップ504)  503の後、演算部に転送する
ための命令トークンを構成し、該当する5end −d
ataが格納されていたトークン待合せメモリのアドレ
スを空アドレスとして登録する(SOS)。
(ステップ506)  501で検索データがない場合
には、トークン待合せメモリの空アドレスをハントして
、送受信番号n、Rec−des、sfオフ、エンドフ
ラグ(af)オフを格納し、  5end−dataの
トークンの到着を待合せる。(第8図801) つぎに5END命令の動作を、第6図により詳細に示す
(ステップ601) 発火検出部(MS )内のトーク
ン待合せメモリを送受信番号を8fオンを検索キーとし
て検索する。すなわち。
概に待合せている5end−dataのトークンがある
かどうかを検索する。
(ステップ602)  601で検索データがあった場
合には、1inkフイールドのリンクチェーンをたどっ
て、最後の待合せ5end −dataのトークンを抽
出し、トークン待合せメモリの空アドレスをハントして
(603)、ハントしたアドレスを最後の待合せ5en
d −dataが格納されているアドレスのリンクフィ
ールドに書込み、かつそのefをオフにすることで待5
endのチェーンに結合しく604)、ハントしたアド
レスに送受信番号n、 56yld−data 、 s
fオフ。
ofオンを格納する。第9図に最後の5end−dat
aが5end −data 5の場合として以上の手続
を図解して示した。
(ステップ605)  601で検索データがなかった
場合には、発火検出部のトークン待合せメモリを今度は
送受信番号nだけで検索する(606)。すなわち今度
は、待合せReo−da8のトークンがあるかどうかを
検索する。
(ステップ607)  606で検索データがなかった
場合には、該当する送受信番号に属する5and −d
ataのトークンもReo−dosのトークンもない場
合であるので、トークン待合せメモリの空アドレスをハ
ントして(60B)ハントしたアドレスに、送受信番号
n 、 5end−data 、 ofオン、 efオ
ンを格納する(609)。第10図にこれを示した。
(ステラ7’61G)  606で検索データがありた
場合には、待合せていたReo −dosのトークンを
用いて演算部に転送するための命令トークンを構成し、
該当するRoe −deaが格納されて込たトークン待
合せメモリのアドレスを空アドレスとして登録する(6
11 )。
以上示したように第2の実施例の方式によれば。
5END命令とRKC命令を用いて、カラー並びに送受
信番号毎の111’0キエーを構成できる効果もある。
同一送受信番号をもつ5END命令とRIC命令が同−
関数内においても問題なく動作でき得ることから、上記
F’IFOキ為−を、いたるところに構成できることは
いうまでもない。
これまでは、発火検出部内のトークン待合せメそりに、
新たに送受信番号用のフィールドを設けた場合について
説明したが、トークン待合せメモリの通常の命令の発火
検出に用いるノード名(dos)のためのフィールドを
、5END命令及びRIG命令の場合には使用していな
いので、このフィールドに送受信番号を格納し、格納し
た値が送受信番号であることを示すフラグを設けること
によっても同じ動作を実現可能であり、この場合には。
新たに前記フラグ用の1ビツトを追加するだけで良い。
− さらにカラーを考慮する場合には、トークン待合せメモ
リを検索する時の検索中−にカラーを追加し、「送受信
番号とカラー」によって検索するようにすれば良い。
以上の実施例の説明からも明らかなように、本発明は上
述のほかに従来のデータフロー計算機のハードウェア構
成のままで新規なソフトウェア構成を導入して実現する
ことも可能である。
〔発明の効果〕
本発明によれば、複数の関数間でのデータの送受信が、
関数コール忙依らないでも可能であるため、プログラム
開発の自由度を広げ、プログラムの簡単化および生産性
向上の効果がある。
ま九、受信側関数で、所望の受信ノードを指定できる(
 Rec −des Kよる)ため、受信ポイントが複
数存在し、条件あるいは状態によりそのうちのひとつが
選択されるような場合の効果に秀れている。例えば、従
来は送信側関数が受信側関数の状態等を分析し、コール
すべき関数を決定する処理が必要であシ、並列に動作し
つる複数の関数の独立性を損うといった問題があったが
1本発明により、受信側関数が所望の受信アドレス(R
eo −des )でRBC命令を実行すれば、送信側
関数は5END命令を実行するだけで送信すべきデータ
(5ond −data )を所望の受信ポイントに送
信できるなどの効果がある。このように本発明によれば
各関数の独立性を損うことが少く、データフローの処理
をより完全分散化する効果もある。
【図面の簡単な説明】
第1図は本発明の第1の実施例を示す説明図、第2図は
本発明の目的を示すデータフローグラフ、第3図は第1
の実施例におけるREC命令の動作を示すフローチャー
ト、第4図は同5END命令の動作を示すフローチャー
ト、第5図は本発明の第2の実施例におけるRBC命令
の動作を示すフローチャート、第6図は同S IND命
令の動作を示すフローチャート、第7図はREC命令に
よる発火時のトークン待合せメモリの状態変化を示す説
明図、第8図はR11iC命令待合せの場合を示す説明
図、第9図および第10図は5END命令待合せの場合
を示す説明図である。 符号の説明 1、・・・・・・オペランドトークンキエー、2・・・
・・・プログラムメモリ。 3・・・・・・発火検出部のトークン待合せメモリ、4
・・・・・・演算部、 5・・・・・・リンクメモリ。 尤 1 図 deS 出 2図 第3図 第4図 第50 第61EZI 出 70 第8図 第9口 341大才貫忠告pのトー7シ1守含辷メモリ第10図

Claims (1)

  1. 【特許請求の範囲】 1、データフロー計算機において、ある複数の関数間で
    共通した記号を記憶する手段と、該記号を検索情報とし
    て命令の発火を検出する手段とを有することを特徴とす
    るデータフロー計算機の処理方式。 2、前記命令の発火により、複数の関数間でのトークン
    の送受を関数コール以外の手続きにより行うことを可能
    としたことを特徴とする特許請求の範囲第1項記載のデ
    ータフロー計算機の処理方式。 3、上記記号の記憶を上記命令の発火を検出する発火検
    出部内のトークンを待合せるための記憶手段に記憶する
    ことを特徴とする特許請求の範囲第1項記載のデータフ
    ロー計算機の処理方式。
JP30021487A 1987-11-30 1987-11-30 データフロー計算機の処理方式 Pending JPH01142832A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP30021487A JPH01142832A (ja) 1987-11-30 1987-11-30 データフロー計算機の処理方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP30021487A JPH01142832A (ja) 1987-11-30 1987-11-30 データフロー計算機の処理方式

Publications (1)

Publication Number Publication Date
JPH01142832A true JPH01142832A (ja) 1989-06-05

Family

ID=17882090

Family Applications (1)

Application Number Title Priority Date Filing Date
JP30021487A Pending JPH01142832A (ja) 1987-11-30 1987-11-30 データフロー計算機の処理方式

Country Status (1)

Country Link
JP (1) JPH01142832A (ja)

Similar Documents

Publication Publication Date Title
KR100550197B1 (ko) 버츄얼 머신 또는 다른 컴퓨터 엔티티 간의 데이터를전송하기 위한 시스템 및 방법
EP0725351A2 (en) Expedited message transfer in a multi-nodal data processing system
CN114138340B (zh) 一种实现risc-v处理器扩展指令的方法、设备及介质
JPH05153194A (ja) 通信制御装置における緩衝域連鎖の方法およびその装置
EP0144779B1 (en) Parallel processing computer
CN101571800A (zh) 控制界面中处理控件关系的方法和装置
US5228122A (en) Method for bypassing user unwanted display screens from a host controlled terminal
EP0258650B1 (en) Parallel computer system capable of asynchronous data transmission
JPH05282166A (ja) データ処理システムで脱落したバッファを回復する装置
EP0309676B1 (en) Workstation controller with full screen write mode and partial screen write mode
US5442761A (en) Method by which packet handler inserts data load instructions in instruction sequence fetched by instruction fetch unit
JPH01142832A (ja) データフロー計算機の処理方式
JP3198547B2 (ja) 受信装置のバッファ管理方法
US7500239B2 (en) Packet processing system
JP2585818B2 (ja) プログラムの呼び出し処理装置
US7415027B2 (en) Processing frame bits
CN117527641A (zh) 数据报文的丢包观测方法、装置、设备及存储介质
JPH01265330A (ja) データ駆動型のデータ処理装置
JPH03219357A (ja) プログラム実行管理方式
GB2271203A (en) Digital processing system
EP0438699B1 (en) Menu bypass
JP2000183997A (ja) データ送受信方式、データ送受信方法、および記録媒体
JPS62254237A (ja) インタプリタ方式の分岐命令実行方式
JPS62232228A (ja) ネツトワ−ク層デ−タ転送制御方式
JPS603751A (ja) デ−タ処理方式