JPH0632055B2 - デ−タ処理装置の制御方法及びそのためのデ−タ処理装置 - Google Patents
デ−タ処理装置の制御方法及びそのためのデ−タ処理装置Info
- Publication number
- JPH0632055B2 JPH0632055B2 JP59142283A JP14228384A JPH0632055B2 JP H0632055 B2 JPH0632055 B2 JP H0632055B2 JP 59142283 A JP59142283 A JP 59142283A JP 14228384 A JP14228384 A JP 14228384A JP H0632055 B2 JPH0632055 B2 JP H0632055B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- output
- input data
- processing
- storage means
- 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
Links
Landscapes
- Multi Processors (AREA)
Description
【発明の詳細な説明】 〔発明の利用分野〕 本発明は、内蔵プログラム制御式のデータ処理装置に関
し、特に、そのデータ駆動型制御に関するものである。
し、特に、そのデータ駆動型制御に関するものである。
データ駆動型制御は、データのフロー、すなわち被処理
データの準備状況に応じて、処理シーケンスを制御する
ものであって、従来、いわゆる非ノイマン型コンピユー
タの実現手段として研究されてきたものである(「コン
ピユータ構造を変革するデータフロー・コンピユータの
動向(上)」日経エレクトロニクス、1979年5月2
8日号,第64〜81頁参照)。データ駆動式の非ノイ
マン型コンピユータは、従来のいわゆるノイマン型、す
なわち、プログラムが予め定めらた単一の流れとして逐
次実行される型(本明細書では逐次実行型という)のコ
ンピユータとは基本的に異なるアーキテクチヤを有し、
かつ、並列処理等によるデータ処理能力の向上を主とし
て狙つたものであるから、限られた処理能力で充分な仕
事にとつては非常に高価なものとなるなど、必ずしも常
に最適とはいえない面を持つている。
データの準備状況に応じて、処理シーケンスを制御する
ものであって、従来、いわゆる非ノイマン型コンピユー
タの実現手段として研究されてきたものである(「コン
ピユータ構造を変革するデータフロー・コンピユータの
動向(上)」日経エレクトロニクス、1979年5月2
8日号,第64〜81頁参照)。データ駆動式の非ノイ
マン型コンピユータは、従来のいわゆるノイマン型、す
なわち、プログラムが予め定めらた単一の流れとして逐
次実行される型(本明細書では逐次実行型という)のコ
ンピユータとは基本的に異なるアーキテクチヤを有し、
かつ、並列処理等によるデータ処理能力の向上を主とし
て狙つたものであるから、限られた処理能力で充分な仕
事にとつては非常に高価なものとなるなど、必ずしも常
に最適とはいえない面を持つている。
他方、従来の逐次実行型装置は、データ処理能力のみな
らず、ソフトウエアの作成に関しても、種々の難点が指
摘されている。この点でも、データ駆動型制御は、プロ
グラムの諸部分の間における入出力データの相互関係や
各部分の実行条件などが明瞭になることによつて、プロ
グラムの全体構造を見やすくする結果、ソフトウエアの
開発、デバツグ、変更などが容易になる利点を持つ。
らず、ソフトウエアの作成に関しても、種々の難点が指
摘されている。この点でも、データ駆動型制御は、プロ
グラムの諸部分の間における入出力データの相互関係や
各部分の実行条件などが明瞭になることによつて、プロ
グラムの全体構造を見やすくする結果、ソフトウエアの
開発、デバツグ、変更などが容易になる利点を持つ。
一つの妥協案は、さほどのデータ処理能力を要しない場
合に、従来の逐次実行型装置を、データ駆動型動作を行
なうようにプログラムすることである。しかし、個々の
演算命令に対して、所要のオペランドが準備されている
か否かをチエツクするとともに、その実行の都度、その
生成データをオペランドとする各命令についてその準備
ができたことを表示するための、いわゆるオーバーヘツ
ドは、莫大であり、到底実用に耐えない。また、各演算
命令の生成データを、それを必要とするすべての命令の
オペランドアドレス位置に転送するのも、メモリアクセ
ス量の増大を招き、処理速度の低下をきたす。
合に、従来の逐次実行型装置を、データ駆動型動作を行
なうようにプログラムすることである。しかし、個々の
演算命令に対して、所要のオペランドが準備されている
か否かをチエツクするとともに、その実行の都度、その
生成データをオペランドとする各命令についてその準備
ができたことを表示するための、いわゆるオーバーヘツ
ドは、莫大であり、到底実用に耐えない。また、各演算
命令の生成データを、それを必要とするすべての命令の
オペランドアドレス位置に転送するのも、メモリアクセ
ス量の増大を招き、処理速度の低下をきたす。
本発明の目的は、従来の逐次実行型装置において、オー
バーヘツドその他に基因する処理能力の低下を最小限に
抑え、実用的で汎用性のあるデータ駆動型制御を実現す
ることにある。
バーヘツドその他に基因する処理能力の低下を最小限に
抑え、実用的で汎用性のあるデータ駆動型制御を実現す
ることにある。
逐次実行型装置にソフトウエア開発上の難点があること
は前に述べたが、それは、大規模で複雑なソフトウエア
の場合にいえるのであつて、小規模(機械語で数百ステ
ツプ程度以下)で独立したプログラムの場合には、ほと
んど問題にならない。本発明は、この点に着目して、比
較的小規模で独立した逐次実行型装置の処理プログラム
モジユールを単位とし、かようなプログラムモジユール
の相互間を、入出力データに関する情報を集約したテー
ブルに基づくデータ駆動型制御で連結することにより、
大規模なソフトウエアの構築においてデータ駆動論理の
利点を享受しようとするものである。
は前に述べたが、それは、大規模で複雑なソフトウエア
の場合にいえるのであつて、小規模(機械語で数百ステ
ツプ程度以下)で独立したプログラムの場合には、ほと
んど問題にならない。本発明は、この点に着目して、比
較的小規模で独立した逐次実行型装置の処理プログラム
モジユールを単位とし、かようなプログラムモジユール
の相互間を、入出力データに関する情報を集約したテー
ブルに基づくデータ駆動型制御で連結することにより、
大規模なソフトウエアの構築においてデータ駆動論理の
利点を享受しようとするものである。
すなわち、逐次実行型のデータ処理装置において、前記
各処理プログラムモジユールに対応してテーブル(入出
力規定テーブル)を記憶装置内に用意し、ここに、その
処理プログラムモジユールのための入力データ入手先テ
ーブル指示部、入力データ準備状況表示部、出力通知先
テーブル指示部、出力データ格納部、出力データ有効性
表示部などを設ける。また、入力データが全部揃つたテ
ーブルを待機させておくキユー(起動待合せキユー)を
記憶装置内に用意する。各処理プログラムモジユール
は、起特されると、対応するテーブルを参照しつつ、そ
こに指示された入手先テーブルから入力データを読出
し、逐次実行形式で所定の処理を行なつて、その結果の
出力データを前記対応するテーブルの所定格納部に書込
むとともに、その出力データが有効であることを同テー
ブルの出力データ有効性表示部に表示する。そうして、
実行制御プログラムは、前記対応するテーブルを参照し
て、前記処理結果の有効な出力データについて指定され
た出力通知先テーブルの入力データ準備状況表示部に、
対対応する入力データが準備されたことを表示する。実
行制御プログラムは、また、所要入力データが全部揃つ
たテーブルを前記キユーの末尾に登録し、かつ、同キユ
ー内で待機中のテーブルを先頭から順次取出して、対応
する処理プログラムモジユールを起動する。
各処理プログラムモジユールに対応してテーブル(入出
力規定テーブル)を記憶装置内に用意し、ここに、その
処理プログラムモジユールのための入力データ入手先テ
ーブル指示部、入力データ準備状況表示部、出力通知先
テーブル指示部、出力データ格納部、出力データ有効性
表示部などを設ける。また、入力データが全部揃つたテ
ーブルを待機させておくキユー(起動待合せキユー)を
記憶装置内に用意する。各処理プログラムモジユール
は、起特されると、対応するテーブルを参照しつつ、そ
こに指示された入手先テーブルから入力データを読出
し、逐次実行形式で所定の処理を行なつて、その結果の
出力データを前記対応するテーブルの所定格納部に書込
むとともに、その出力データが有効であることを同テー
ブルの出力データ有効性表示部に表示する。そうして、
実行制御プログラムは、前記対応するテーブルを参照し
て、前記処理結果の有効な出力データについて指定され
た出力通知先テーブルの入力データ準備状況表示部に、
対対応する入力データが準備されたことを表示する。実
行制御プログラムは、また、所要入力データが全部揃つ
たテーブルを前記キユーの末尾に登録し、かつ、同キユ
ー内で待機中のテーブルを先頭から順次取出して、対応
する処理プログラムモジユールを起動する。
所要入力データ中に定数などの既知データがあれば、そ
のデータ自体をテーブルに格納する。このように入力デ
ータに複数の種類(例えばデータ自体とアドレス)があ
るときは、テーブル中にその種別を表示しておく。ま
た、条件によつて出力通知先が異なる場合には、出力デ
ータの格納と共にそれが有効であることを表示し、この
表示があるものについてのみ出力通知処理を行なう。
のデータ自体をテーブルに格納する。このように入力デ
ータに複数の種類(例えばデータ自体とアドレス)があ
るときは、テーブル中にその種別を表示しておく。ま
た、条件によつて出力通知先が異なる場合には、出力デ
ータの格納と共にそれが有効であることを表示し、この
表示があるものについてのみ出力通知処理を行なう。
この制御方法は、単一の逐次実行型処理装置で実行する
こともできるが、実行制御用と処理用に各別の逐次実行
型処理ユニツトを設けてもよく、この場合、処理用のユ
ニツトを複数個設けるとともに、テーブルとキユーも各
処理用ユニツト対応に設けてもよい。そして、いずれの
装置構成をとるにしても、処理プログラムモジユール群
と実行制御プログラムの少くとも一部を他の情報の記憶
手段よりも高速な記憶手段に収容することにより、経済
的に高速化ができる。また、同じく、テーブルの内容に
は、固定的な情報(入力データ入手先、出力通知先な
ど)と可変情報(入力データ準備状況、出力データ)と
があるので、前者は読出専用メモリに収容することがで
きる。
こともできるが、実行制御用と処理用に各別の逐次実行
型処理ユニツトを設けてもよく、この場合、処理用のユ
ニツトを複数個設けるとともに、テーブルとキユーも各
処理用ユニツト対応に設けてもよい。そして、いずれの
装置構成をとるにしても、処理プログラムモジユール群
と実行制御プログラムの少くとも一部を他の情報の記憶
手段よりも高速な記憶手段に収容することにより、経済
的に高速化ができる。また、同じく、テーブルの内容に
は、固定的な情報(入力データ入手先、出力通知先な
ど)と可変情報(入力データ準備状況、出力データ)と
があるので、前者は読出専用メモリに収容することがで
きる。
第1図は、本発明の制御方法を実施するためのデータ処
理装置の一例を示す。この装置は、大別して、データ処
理用の処理ユニツト10と、データ駆動型制御のための
入出力規定テーブル用メモリ20と、実行制御用の処理
ユニツト30と、起動待合せキユー用メモリ40とから
なる。
理装置の一例を示す。この装置は、大別して、データ処
理用の処理ユニツト10と、データ駆動型制御のための
入出力規定テーブル用メモリ20と、実行制御用の処理
ユニツト30と、起動待合せキユー用メモリ40とから
なる。
データ処理用処理ユニツト10は、逐次実行型プロセッ
サ10−1と、複数の小規模で独立した処理プログラム
モジユールを格納したメモリ10−2と、実行制御用処
理ユニツト30と通信するためのインタフエース回路1
0−3と、これらを結ぶプロセツサバス10−4とから
なる。入出力規定テーブル用メモリ20は、前記処理プ
ログラムモジユールのそれぞれに対応して、プログラム
同定情報(プログラム番号、先頭アドレス等)、入力デ
ータ準備状況表示情報、入力データ指示情報(アドレス
又はリテラル)、出力データ格納領域、出力通知先指示
情報その他からなる入出力規定テーブル20−1を提供
する。実行制御用処理ユニツト30は、逐次実行型プロ
セッサ30−1と、実行制御プログラムを格納したメモ
リ30−2と、データ処理用処理ユニツト10と通信す
るためのインタフエース回路30−3と、これらを接続
するプロセツサバス30−4とからなる。なお、このプ
ロセツサバス30−4とデータ処理用処理ユニツトのプ
ロセツサバス10−4は、入出力規定テーブル用メモリ
20にも接続されている。起動待合せキユー用メモリ4
0は、実行制御用処理ユニツトのプロセツサバス30−
4に接続され、入力データの準備が整つたプログラムモ
ジユールに対応する入出力規定テーブルのアドレスを、
FIFO形式で登録する起動待合せキユー40−1を提
供する。
サ10−1と、複数の小規模で独立した処理プログラム
モジユールを格納したメモリ10−2と、実行制御用処
理ユニツト30と通信するためのインタフエース回路1
0−3と、これらを結ぶプロセツサバス10−4とから
なる。入出力規定テーブル用メモリ20は、前記処理プ
ログラムモジユールのそれぞれに対応して、プログラム
同定情報(プログラム番号、先頭アドレス等)、入力デ
ータ準備状況表示情報、入力データ指示情報(アドレス
又はリテラル)、出力データ格納領域、出力通知先指示
情報その他からなる入出力規定テーブル20−1を提供
する。実行制御用処理ユニツト30は、逐次実行型プロ
セッサ30−1と、実行制御プログラムを格納したメモ
リ30−2と、データ処理用処理ユニツト10と通信す
るためのインタフエース回路30−3と、これらを接続
するプロセツサバス30−4とからなる。なお、このプ
ロセツサバス30−4とデータ処理用処理ユニツトのプ
ロセツサバス10−4は、入出力規定テーブル用メモリ
20にも接続されている。起動待合せキユー用メモリ4
0は、実行制御用処理ユニツトのプロセツサバス30−
4に接続され、入力データの準備が整つたプログラムモ
ジユールに対応する入出力規定テーブルのアドレスを、
FIFO形式で登録する起動待合せキユー40−1を提
供する。
全体の動作を概説すれば、実行制御用処理ユニツト30
は、入出力規定テーブル20−1を走査し、全入力デー
タの準備が整つているテーブルを発見したら、そのテー
ブルのアドレスを起動待合せキユー40−1の末尾に登
録する。全テーブルの走査が終ると、実行制御用処理ユ
ニツト30は、起動待合せキユー40−1の先頭にある
テーブルアドレスを取出して、当該テーブルから対応す
る処理プログラムモジユールの同定情報を読出し、それ
を、当該テーブルのアドレスと共に、インタフエース回
路30−3経由で、データ処理用処理ユニツト10に送
る。これらをインタフエース回路10−3経由で受取る
と、データ処理用処理ユニツト10は、その処理プログ
ラムを、対応する入出力規定テーブル20−1を参照し
つつ、そこに指示された入力データを用いて実行して、
出力データを同テーブル中の所定領域に書込み、しかる
後、インタフエース回路10−3を経て、実行制御用処
理ユニツト30に処理の完了を報告する。実行制御用処
理ユニツト30は、この報告をインタフエース回路30
−3経由で受取ると、実行制御プログラムを起動し、対
応する入出力規定テーブル20−1を調べ、そこに指示
されたすべての出力通知先の入出力規定テーブルに対し
て、それらの入力データ準備状況表示をリセツトする。
そして、実行制御用処理ユニツト30は、全入力データ
の完備した処理プログラムモジユールがあれば、それを
起動待合せキユー40−1に登録する。
は、入出力規定テーブル20−1を走査し、全入力デー
タの準備が整つているテーブルを発見したら、そのテー
ブルのアドレスを起動待合せキユー40−1の末尾に登
録する。全テーブルの走査が終ると、実行制御用処理ユ
ニツト30は、起動待合せキユー40−1の先頭にある
テーブルアドレスを取出して、当該テーブルから対応す
る処理プログラムモジユールの同定情報を読出し、それ
を、当該テーブルのアドレスと共に、インタフエース回
路30−3経由で、データ処理用処理ユニツト10に送
る。これらをインタフエース回路10−3経由で受取る
と、データ処理用処理ユニツト10は、その処理プログ
ラムを、対応する入出力規定テーブル20−1を参照し
つつ、そこに指示された入力データを用いて実行して、
出力データを同テーブル中の所定領域に書込み、しかる
後、インタフエース回路10−3を経て、実行制御用処
理ユニツト30に処理の完了を報告する。実行制御用処
理ユニツト30は、この報告をインタフエース回路30
−3経由で受取ると、実行制御プログラムを起動し、対
応する入出力規定テーブル20−1を調べ、そこに指示
されたすべての出力通知先の入出力規定テーブルに対し
て、それらの入力データ準備状況表示をリセツトする。
そして、実行制御用処理ユニツト30は、全入力データ
の完備した処理プログラムモジユールがあれば、それを
起動待合せキユー40−1に登録する。
第2図は、1台の逐次実行型プロセッサ51と、処理プ
ログラム用メモリ11と、入出力規定テーブル用メモリ
21と、実行制御プログラム用メモリ31と、起動待合
せキユー用メモリ41とが、プロセツサバス61で相互
接続された装置であつて、この構成の装置によつても、
プロセツサ51が処理プログラムと実行制御プログラム
を交互に実行することにより、前記と同様なデータ駆動
型制御を実現することができる。また、これらのメモリ
11〜41の内容を単一の記憶装置の各領域に収容する
ことも、もちろん可能である。
ログラム用メモリ11と、入出力規定テーブル用メモリ
21と、実行制御プログラム用メモリ31と、起動待合
せキユー用メモリ41とが、プロセツサバス61で相互
接続された装置であつて、この構成の装置によつても、
プロセツサ51が処理プログラムと実行制御プログラム
を交互に実行することにより、前記と同様なデータ駆動
型制御を実現することができる。また、これらのメモリ
11〜41の内容を単一の記憶装置の各領域に収容する
ことも、もちろん可能である。
以下、更に細部の説明をする。第3図は、本発明が適用
される簡単なデータ駆動型プログラムの例である。これ
は、全体としては、入力データA及びBに対してある処
理を施して、結果の出力データCを得るプログラムであ
る。その処理の内容は、小規模な独立した処理プログラ
ムモジユールF1,F2及びF3の組合わせによつて表
わされ、各処理プログラムモジユールの間のデータの授
受関係は、矢印線で表わされる。各処理プログラムモジ
ユールF1〜F3の中味は、通常の逐次実行型プログラ
ムにより実現されるが、それらの実行は、それらに必要
な入力データのすべてが揃つたことに応じて起動され、
通常の逐次実行型プログラムとは違つて、プログラムカ
ウンタの指示やプログラムの記述順(あるいは格納位
置)によることはない。すなわち、処理プログラムモジ
ユールF1は、入力データAが存在しさえすれば直ちに
実行に移されるが、F2は、入力データBの存在に加え
て、F1がその出力Dを生成し終つたことによつて起動
される。更に、F3は、F1が出力データDを生成し、
かつ、F2が出力データEを生成し終つたことによつ
て、はじめて起動される。
される簡単なデータ駆動型プログラムの例である。これ
は、全体としては、入力データA及びBに対してある処
理を施して、結果の出力データCを得るプログラムであ
る。その処理の内容は、小規模な独立した処理プログラ
ムモジユールF1,F2及びF3の組合わせによつて表
わされ、各処理プログラムモジユールの間のデータの授
受関係は、矢印線で表わされる。各処理プログラムモジ
ユールF1〜F3の中味は、通常の逐次実行型プログラ
ムにより実現されるが、それらの実行は、それらに必要
な入力データのすべてが揃つたことに応じて起動され、
通常の逐次実行型プログラムとは違つて、プログラムカ
ウンタの指示やプログラムの記述順(あるいは格納位
置)によることはない。すなわち、処理プログラムモジ
ユールF1は、入力データAが存在しさえすれば直ちに
実行に移されるが、F2は、入力データBの存在に加え
て、F1がその出力Dを生成し終つたことによつて起動
される。更に、F3は、F1が出力データDを生成し、
かつ、F2が出力データEを生成し終つたことによつ
て、はじめて起動される。
各処理プログラムモジユール間における入出力データの
授受を仲介する場が、入出力規定テーブルであつて、第
4図はその構成の一例を示す。1つの処理プログラムモ
ジユールに対する入出力規定テーブル200は、起動待
合せキユーを形成するためのリンケージポインタ(LI
NKPT)201、当該処理プログラムモジユールの固
定情報(プログラム名、同番号、先頭アドレス等)20
2、入力データ数203、入力データの準備状況を示す
入力状況表示204、出力データ数205、入力データ
の種別206、入力データの指示(リテラルデータ又は
アドレス)207、出力データの有効性表示208、出
力通知先数209、出力データ格納部210及び出力通
知先の指示211の諸領域を含む。206と207の組
は、そのプログラムが必要とする入力データの数だけ設
けられ、また、211は当該出力の通知先の数だけ設け
られるとともに、208〜211の組は、そのプログラ
ムによつて生成される全出力データの数だけ設けられ
る。
授受を仲介する場が、入出力規定テーブルであつて、第
4図はその構成の一例を示す。1つの処理プログラムモ
ジユールに対する入出力規定テーブル200は、起動待
合せキユーを形成するためのリンケージポインタ(LI
NKPT)201、当該処理プログラムモジユールの固
定情報(プログラム名、同番号、先頭アドレス等)20
2、入力データ数203、入力データの準備状況を示す
入力状況表示204、出力データ数205、入力データ
の種別206、入力データの指示(リテラルデータ又は
アドレス)207、出力データの有効性表示208、出
力通知先数209、出力データ格納部210及び出力通
知先の指示211の諸領域を含む。206と207の組
は、そのプログラムが必要とする入力データの数だけ設
けられ、また、211は当該出力の通知先の数だけ設け
られるとともに、208〜211の組は、そのプログラ
ムによつて生成される全出力データの数だけ設けられ
る。
リンケージポインタ201と出力データ有効性表示20
8については、後で説明する。同定情報202、入力デ
ータ数203、出力データ数205及び出力データ格納
部210については説明を要しないであろう。入力状況
表示204は、この実施例では、各入力データに1ビツ
トずつ割当てられた一群のフラグビツトを保持し、その
“1”は対応する入力データが未完であることを表わ
し、“0”はそれが既に生成されていることを表わす
が、後述するように、他の形式とすることもできる。入
力データ種別206は、1ビツトのフラグであつて、当
該入力データが予め知られている固定データ(例えば定
数)の場合は“0”で、他のプログラムの出力データで
ある場合は“1”となる。そして、前者の場合には、入
力データ指示207にそのデータ自体が予め書込まれて
おり、後者の場合には、そのデータが読取られるべきア
ドレス(すなわち、そのデータを生成する処理プログラ
ムモジユールに対応する入出力規定テーブルの領域21
0)が書込まれている。出力通知先数209には、当該
出力データを入力データとして必要とする処理プログラ
ムモジユールの個数が格納されており、そして、出力通
知先指示211には、前記出力通知先プログラムモジユ
ールに対応する入出力規定テーブルのアドレス、詳しく
いえばその入力状況表示204の対応ビツト位置が、書
込まれている。なお、これらの情報は、201,20
4,208及び210を除き、すべてのプログラミング
の段階で決定されている固定情報である。
8については、後で説明する。同定情報202、入力デ
ータ数203、出力データ数205及び出力データ格納
部210については説明を要しないであろう。入力状況
表示204は、この実施例では、各入力データに1ビツ
トずつ割当てられた一群のフラグビツトを保持し、その
“1”は対応する入力データが未完であることを表わ
し、“0”はそれが既に生成されていることを表わす
が、後述するように、他の形式とすることもできる。入
力データ種別206は、1ビツトのフラグであつて、当
該入力データが予め知られている固定データ(例えば定
数)の場合は“0”で、他のプログラムの出力データで
ある場合は“1”となる。そして、前者の場合には、入
力データ指示207にそのデータ自体が予め書込まれて
おり、後者の場合には、そのデータが読取られるべきア
ドレス(すなわち、そのデータを生成する処理プログラ
ムモジユールに対応する入出力規定テーブルの領域21
0)が書込まれている。出力通知先数209には、当該
出力データを入力データとして必要とする処理プログラ
ムモジユールの個数が格納されており、そして、出力通
知先指示211には、前記出力通知先プログラムモジユ
ールに対応する入出力規定テーブルのアドレス、詳しく
いえばその入力状況表示204の対応ビツト位置が、書
込まれている。なお、これらの情報は、201,20
4,208及び210を除き、すべてのプログラミング
の段階で決定されている固定情報である。
例として、第3図のデータ駆動型プログラムのための入
出力規定テーブルを第5図に示す。第1処理プログラム
モジユール(以下混乱を生じる恐れのない限り単にプロ
グラムと略記する)F1の入力データは予め与えられた
A(リテラル)のみであり、そして、出力データは、D
のみであるが、プログラムF2の第1入力データ及びプ
ログラムF3の第1入力データとして使用されるもので
ある。したたがつて、プログラムF1の入出力規定テー
ブルFITBLにおいて、プログラム番号(202)=
1、入力データ数(203)=1、入力状況表示(20
4)の初期値=“00000000”、出力データ数(205)
=1、第1入力データ種別(206)=“0”、第1入
力データ指示(207)=A(リテラル)、第1出
力データの出力通知先数(209)=2、同出力通知先
(211)=F2TBLアドレス及びF3TBLアドレ
ス、となつている。
出力規定テーブルを第5図に示す。第1処理プログラム
モジユール(以下混乱を生じる恐れのない限り単にプロ
グラムと略記する)F1の入力データは予め与えられた
A(リテラル)のみであり、そして、出力データは、D
のみであるが、プログラムF2の第1入力データ及びプ
ログラムF3の第1入力データとして使用されるもので
ある。したたがつて、プログラムF1の入出力規定テー
ブルFITBLにおいて、プログラム番号(202)=
1、入力データ数(203)=1、入力状況表示(20
4)の初期値=“00000000”、出力データ数(205)
=1、第1入力データ種別(206)=“0”、第1入
力データ指示(207)=A(リテラル)、第1出
力データの出力通知先数(209)=2、同出力通知先
(211)=F2TBLアドレス及びF3TBLアドレ
ス、となつている。
第2プログラムF2については、第1入力データがプロ
グラムF1の出力データで、第2入力データが予め与え
られたB(リテラル)であり、そして、出力データは、
その数が1で、プログラムF3の第2入力データとして
使用される。したがつて、プログラムF2の入出力規定
テーブルF2TBLにおいては、プログラム番号(20
2)=2、入力データ数(203)=2、入力状況表示
(204)の初期値=“00000001”、出力データ数(2
05)=1、第1入力データの種別(206)=
“1”、第1入力データ指示(207)=OUT11ア
ドレス(F1TBLの第1出力データ格納部のアドレ
ス)、第2入力データの種別(206)=“0”、第2
入力データ指示(207)=B(リテラル)、第1
出力データの出力通知先数(209)=1、同出力通知
先指示(211)=F3TBLアドレス、となつてい
る。
グラムF1の出力データで、第2入力データが予め与え
られたB(リテラル)であり、そして、出力データは、
その数が1で、プログラムF3の第2入力データとして
使用される。したがつて、プログラムF2の入出力規定
テーブルF2TBLにおいては、プログラム番号(20
2)=2、入力データ数(203)=2、入力状況表示
(204)の初期値=“00000001”、出力データ数(2
05)=1、第1入力データの種別(206)=
“1”、第1入力データ指示(207)=OUT11ア
ドレス(F1TBLの第1出力データ格納部のアドレ
ス)、第2入力データの種別(206)=“0”、第2
入力データ指示(207)=B(リテラル)、第1
出力データの出力通知先数(209)=1、同出力通知
先指示(211)=F3TBLアドレス、となつてい
る。
また、第3プログラムF3については、第1入力データ
がプログラムF1の出力データで、第2入力データがプ
ログラムF2の出力データであり、そして、出力データ
数は1である。なお、その出力データを入力データとし
て使用するプログラムは、図示されていないが、n個あ
るものとする。したがつて、プログラムF3の入出力規
定テーブルF3TBLにおいては、プログラム番号(2
02)=3、入力データ数(203)=2、入力状況表
示(204)の初期値=“00000011”、出力データ数
(205)=1、第1入力データの種別(206)=
“1”、第1入力データ指示(207)=OUT11ア
ドレス、第2入力データの種別(206)=“1”、第
2入力データ指示(207)OUT21アドレス(F2
TBLの第1出力データ格納部のアドレス)、第1出力
データの出力通知先数(209)=n、同出力通知先指
示(211)=前記n個の入出力規定テーブルの各アド
レス、となつている。
がプログラムF1の出力データで、第2入力データがプ
ログラムF2の出力データであり、そして、出力データ
数は1である。なお、その出力データを入力データとし
て使用するプログラムは、図示されていないが、n個あ
るものとする。したがつて、プログラムF3の入出力規
定テーブルF3TBLにおいては、プログラム番号(2
02)=3、入力データ数(203)=2、入力状況表
示(204)の初期値=“00000011”、出力データ数
(205)=1、第1入力データの種別(206)=
“1”、第1入力データ指示(207)=OUT11ア
ドレス、第2入力データの種別(206)=“1”、第
2入力データ指示(207)OUT21アドレス(F2
TBLの第1出力データ格納部のアドレス)、第1出力
データの出力通知先数(209)=n、同出力通知先指
示(211)=前記n個の入出力規定テーブルの各アド
レス、となつている。
起動待合せキユー(40−1,41、以下41で代表す
る)は、通常のFIFOメモリで一向に差支えないが、
本実施例は、キユーの構成を簡単なものにするために、
入出力規定テーブルのリンケージポインタ(第4図20
1)によつてキユーのリンクを行なう。第6図に示すよ
うに、起動待合せキユー41自体は、ヘツドポインタ4
01とテールポインタ402のみを備えているにすぎな
い。ヘツドポインタ401は、キユーの先頭にある入出
力規定テーブル(TBL1)200−1のアドレスを保
持する。TBL1のリンケージポインタ201−1は、
キユーに並ぶ次位の入出力規定テーブル(TBL2)の
アドレスを保持し、以下同様にして、キユーの最後尾に
ある入出力規定テーブル(TBL3)のリンケージポイ
ンタ201−3は、それ以上のリンクがないことを表示
すべく“0”を保持する。そして、起動待合せキユー4
1内のテールポインタ402は、この最後尾にある入出
力規定テーブル(TBL3)のアドレスを保持する。
る)は、通常のFIFOメモリで一向に差支えないが、
本実施例は、キユーの構成を簡単なものにするために、
入出力規定テーブルのリンケージポインタ(第4図20
1)によつてキユーのリンクを行なう。第6図に示すよ
うに、起動待合せキユー41自体は、ヘツドポインタ4
01とテールポインタ402のみを備えているにすぎな
い。ヘツドポインタ401は、キユーの先頭にある入出
力規定テーブル(TBL1)200−1のアドレスを保
持する。TBL1のリンケージポインタ201−1は、
キユーに並ぶ次位の入出力規定テーブル(TBL2)の
アドレスを保持し、以下同様にして、キユーの最後尾に
ある入出力規定テーブル(TBL3)のリンケージポイ
ンタ201−3は、それ以上のリンクがないことを表示
すべく“0”を保持する。そして、起動待合せキユー4
1内のテールポインタ402は、この最後尾にある入出
力規定テーブル(TBL3)のアドレスを保持する。
キユーからの取出しは、ヘツドポインタ401の内容を
読出すことによつて行なわれ、その際に、ヘツドポイン
タ401の内容は、今読出された入出力規定テーブルの
リンケージポインタの内容(図示の例ではTBL1に保
持されていたTBL2アドレス)で置換される。また、
キユーへの登録は、新しく登録しようとする入出力規定
テーブルのアドレスを、テールポインタ402と、従来
の最後尾にあつた入出力規定テーブル(TBL3)のリ
ンケージポインタ201−3との双方に書込むことによ
つて行なわれ、同時に、新しく登録された入出力規定テ
ーブルのリンケージポインタを“0”にする。
読出すことによつて行なわれ、その際に、ヘツドポイン
タ401の内容は、今読出された入出力規定テーブルの
リンケージポインタの内容(図示の例ではTBL1に保
持されていたTBL2アドレス)で置換される。また、
キユーへの登録は、新しく登録しようとする入出力規定
テーブルのアドレスを、テールポインタ402と、従来
の最後尾にあつた入出力規定テーブル(TBL3)のリ
ンケージポインタ201−3との双方に書込むことによ
つて行なわれ、同時に、新しく登録された入出力規定テ
ーブルのリンケージポインタを“0”にする。
次に、第5図の入出力規定テーブルに従つて第3図のプ
ログラムを実行する場合における、第2図の装置の動作
を説明する。プログラムF1に対応する入出力規定テー
ブルF1TBLは、その入力状況表示204がすべて
“0”であるから、その入力データは既に完備してお
り、したがつて、実行制御プログラム31は、まず、F
1TBLのアドレスを起動待合せキユー41に登録する
(第7図70)。次いで、実行制御プログラム31は、
起動待合せキユー41のヘツドポインタ401を調べて
(71)、その内容(この場合はF1TBLのアドレ
ス)を読出し(72)、それに基づいて当該テーブルを
参照することにより、そのプログラム番号202から起
動すべきプログラムがF1であることを知り、プログラ
ムF1に制御を渡す(73)。プログラムF1は、外部
からの入力データをオペランドとして使用する際に、F
1TBLを参照して、その入力データ数203が1で、
入力データ種別206が“0”であることから、入力デ
ータが1個で、それは入力データ指示部207に格納さ
れたデータ自体であることを知り、そこからAを読
出して所定の演算を行ない、その結果であるDを、
第1出力データ格納部210すなわちOUT11に格納
し、プログラムが終了すると、実行制御プログラム31
に制御を戻す(74)。
ログラムを実行する場合における、第2図の装置の動作
を説明する。プログラムF1に対応する入出力規定テー
ブルF1TBLは、その入力状況表示204がすべて
“0”であるから、その入力データは既に完備してお
り、したがつて、実行制御プログラム31は、まず、F
1TBLのアドレスを起動待合せキユー41に登録する
(第7図70)。次いで、実行制御プログラム31は、
起動待合せキユー41のヘツドポインタ401を調べて
(71)、その内容(この場合はF1TBLのアドレ
ス)を読出し(72)、それに基づいて当該テーブルを
参照することにより、そのプログラム番号202から起
動すべきプログラムがF1であることを知り、プログラ
ムF1に制御を渡す(73)。プログラムF1は、外部
からの入力データをオペランドとして使用する際に、F
1TBLを参照して、その入力データ数203が1で、
入力データ種別206が“0”であることから、入力デ
ータが1個で、それは入力データ指示部207に格納さ
れたデータ自体であることを知り、そこからAを読
出して所定の演算を行ない、その結果であるDを、
第1出力データ格納部210すなわちOUT11に格納
し、プログラムが終了すると、実行制御プログラム31
に制御を戻す(74)。
そこで、実行制御プログラム31は、今実行されたプロ
グラムF1に対応する入出力規定テーブルF1TBLを
参照する。そして、その出力通知先指示211に従つ
て、F2TBL及びF3TBLの入力状況表示204に
おける対応ビツトを“0”にリセツトする(75)。そ
して、入力状況表示204がすべて“0”となつた入出
力規定テーブルがあれば、それ(この例ではF2TB
L)が起動待合せキユー41に登録される(70)。
グラムF1に対応する入出力規定テーブルF1TBLを
参照する。そして、その出力通知先指示211に従つ
て、F2TBL及びF3TBLの入力状況表示204に
おける対応ビツトを“0”にリセツトする(75)。そ
して、入力状況表示204がすべて“0”となつた入出
力規定テーブルがあれば、それ(この例ではF2TB
L)が起動待合せキユー41に登録される(70)。
なお、実行制御プログラム31は、起動待合せキユー4
1に登録された入出力規定テーブルがなくなつたことを
検出すると(71)、全処理が終了したと判定して、各
入出力規定テーブルに対して、入力データ数203と入
力データ種別206の情報に基づき、入力状況表示20
4中で他のプログラムからの入力データに対応するビツ
トを“1”にセツトして、初期状態を回復する。
1に登録された入出力規定テーブルがなくなつたことを
検出すると(71)、全処理が終了したと判定して、各
入出力規定テーブルに対して、入力データ数203と入
力データ種別206の情報に基づき、入力状況表示20
4中で他のプログラムからの入力データに対応するビツ
トを“1”にセツトして、初期状態を回復する。
入力状況表示204の別の形式として、それをカウンタ
とし、かつ、入力データ数203は、全入力データ数で
はなく、他のプログラムからの出力データのみの個数と
するとともに、この値を前記カウンタの初期値としてセ
ツトし、これを出力通知処理によりカウントダウンし
て、カウントが0になつたことにより入力データが揃つ
たと判定するようにしてもよい。この方法によれば、前
記実施例の方法よりも、少いビツト数で多数の入力デー
タの準備状況を表示・判定することができる。
とし、かつ、入力データ数203は、全入力データ数で
はなく、他のプログラムからの出力データのみの個数と
するとともに、この値を前記カウンタの初期値としてセ
ツトし、これを出力通知処理によりカウントダウンし
て、カウントが0になつたことにより入力データが揃つ
たと判定するようにしてもよい。この方法によれば、前
記実施例の方法よりも、少いビツト数で多数の入力デー
タの準備状況を表示・判定することができる。
ところで、一般に、入力データが揃う順序はほぼ一定に
なるものであり、特に、最後になる可能性があるもの
は、特定の少数のデータに限られる場合が多い。このよ
うな場合には、入力データ数203として最後になる可
能性があるデータの個数を採用し、かつ、入力状況表示
204の初期状態もそれに対応して設定して、一方、出
力通知先数209及び出力通知先指示211も、前記の
最後になる可能性があるもののみを対象にして設定して
もよい。この方法によれば、出力通知処理のためのオー
バーヘツドを軽減することができる。
なるものであり、特に、最後になる可能性があるもの
は、特定の少数のデータに限られる場合が多い。このよ
うな場合には、入力データ数203として最後になる可
能性があるデータの個数を採用し、かつ、入力状況表示
204の初期状態もそれに対応して設定して、一方、出
力通知先数209及び出力通知先指示211も、前記の
最後になる可能性があるもののみを対象にして設定して
もよい。この方法によれば、出力通知処理のためのオー
バーヘツドを軽減することができる。
また、予め決められた条件により処理フローが分岐する
場合も多い。この場合、分岐した枝によつて出力通知先
が異なるため、入出力規定テーブル中に分枝の数だけの
出力データ領域(第4図の208〜211)が必要であ
る。しかし、実際に出力通知処理を行なうのは特定の枝
に対応するものだけである。出力データ有効性表示20
8は、このような場合のために設けられている。処理プ
ログラムは、出力データを出力データ格納部210に格
納する時に、対応する出力データ有効性表示208に
“1”をセツトして、実行制御プログラムに制御を戻
す。実行制御プログラムは、第8図に示すように、出力
データ数205の示す個数だけ出力データ領域を調査し
て、それらの出力データ有効性表示208を調べ(ステ
ツプ91〜94)、出力データ有効性表示208が
“1”であるものについてのみ、出力通知処理を行えば
よい(ステツプ95〜99)。
場合も多い。この場合、分岐した枝によつて出力通知先
が異なるため、入出力規定テーブル中に分枝の数だけの
出力データ領域(第4図の208〜211)が必要であ
る。しかし、実際に出力通知処理を行なうのは特定の枝
に対応するものだけである。出力データ有効性表示20
8は、このような場合のために設けられている。処理プ
ログラムは、出力データを出力データ格納部210に格
納する時に、対応する出力データ有効性表示208に
“1”をセツトして、実行制御プログラムに制御を戻
す。実行制御プログラムは、第8図に示すように、出力
データ数205の示す個数だけ出力データ領域を調査し
て、それらの出力データ有効性表示208を調べ(ステ
ツプ91〜94)、出力データ有効性表示208が
“1”であるものについてのみ、出力通知処理を行えば
よい(ステツプ95〜99)。
入出力規定テーブルに格納される情報には、前述のよう
に、固定したものと可変なものとがある。そこで、これ
らを分離して、固定情報部分を読出専用メモリに収容す
る形態も可能である。第9図はその場合の入出力規定テ
ーブルの構成の一例を示し、固定情報部分200Aは読
出専用メモリに収容され、可変情報部分200Bは通常
の書込可能なメモリに収容される。そして、両部分のリ
ンケージを保つために、固定情報部分200Aに、可変
情報部分200Bのアドレスを保持する領域220を設
ける。その他の参照符号は第4図の場合と同じ対象を示
す。この形態は、汎用機には向かないが、専用機(例え
ば電子交換機制御用)には好適であつて、読取専用メモ
リを用いたことにより、信頼性が向上し、かつ、高速化
も期待できる。
に、固定したものと可変なものとがある。そこで、これ
らを分離して、固定情報部分を読出専用メモリに収容す
る形態も可能である。第9図はその場合の入出力規定テ
ーブルの構成の一例を示し、固定情報部分200Aは読
出専用メモリに収容され、可変情報部分200Bは通常
の書込可能なメモリに収容される。そして、両部分のリ
ンケージを保つために、固定情報部分200Aに、可変
情報部分200Bのアドレスを保持する領域220を設
ける。その他の参照符号は第4図の場合と同じ対象を示
す。この形態は、汎用機には向かないが、専用機(例え
ば電子交換機制御用)には好適であつて、読取専用メモ
リを用いたことにより、信頼性が向上し、かつ、高速化
も期待できる。
第1図の装置構成を発展させた形態を第10図に示す。
これは、3台のデータ処理用処理ユニツト10A,10
B及び10Cを設け、それらに対応して、入出力規定テ
ーブル20−1、起動待合せキユー40−1及び実行制
御用処理ユニツトのインタフエース回路30−3も、
A,B及びCの3組を用意したものである。実行制御用
処理ユニツト30は、入出力規定テーブル20−1A,
B,Cを順次調べて、入力データが全部揃つたテーブル
を発見したならば、それを起動待合せキユー40−1
A,B,Cの対応するものに登録する。データ処理用処
理ユニツト10−1A,B,Cのそれぞれの動作状態を
表示するインジケータ30−5を設け、実行制御用処理
ユニツト30は、ある入出力規定テーブルにつき出力通
知処理を終了したら、このインジケータ30−5を参照
して、動作中でないデータ処理用処理ユニツトに対応す
る起動待合せキユーから入出力規定テーブルを1つ取り
出して、当該処理ユニツトを起動するとともに、インジ
ケータ30−5の対応する表示をセツトする。この表示
は、当該処理ユニツトから処理了の報告があつた時にリ
セツトされる。なお、3台に限らず、任意台数のデータ
処理用処理ユニツトを設けることができるのは、いうま
でもない。
これは、3台のデータ処理用処理ユニツト10A,10
B及び10Cを設け、それらに対応して、入出力規定テ
ーブル20−1、起動待合せキユー40−1及び実行制
御用処理ユニツトのインタフエース回路30−3も、
A,B及びCの3組を用意したものである。実行制御用
処理ユニツト30は、入出力規定テーブル20−1A,
B,Cを順次調べて、入力データが全部揃つたテーブル
を発見したならば、それを起動待合せキユー40−1
A,B,Cの対応するものに登録する。データ処理用処
理ユニツト10−1A,B,Cのそれぞれの動作状態を
表示するインジケータ30−5を設け、実行制御用処理
ユニツト30は、ある入出力規定テーブルにつき出力通
知処理を終了したら、このインジケータ30−5を参照
して、動作中でないデータ処理用処理ユニツトに対応す
る起動待合せキユーから入出力規定テーブルを1つ取り
出して、当該処理ユニツトを起動するとともに、インジ
ケータ30−5の対応する表示をセツトする。この表示
は、当該処理ユニツトから処理了の報告があつた時にリ
セツトされる。なお、3台に限らず、任意台数のデータ
処理用処理ユニツトを設けることができるのは、いうま
でもない。
更に、装置構成上の他の変形として、速度によるメモリ
の使い分けも有効である。第11図はその一例を示し、
これは、実行制御プログラム11−1とデータ処理プロ
グラム群11−2を1つのブロツク11−5とし、起動
待合せキユー11−3と入出力規定テーブル11−4を
他のブロツク11−6としたものである。電子交換機制
御用のソフトウエアを例にとると、両ブロツクの総メモ
リ量は2メガバイト程度となるが、その内、ブロツク1
1−5は約40キロバイトで、これは全体の約2%にす
ぎない。他方、1ラウンドの処理に要するダイナミツク
ステツプ数では、全体で約40キロステツプの内、ブロ
ツク11−5が約20〜25キロステツプを占める。こ
の傾向は一般にも見られるものである。そこで、前記の
ようにブロツク分けを行なつて、ブロツク11−5に可
及的高速の記憶装置を用いる。こうすれば、メモリの僅
か2%の部分を高速化することにより、処理の60%を
高速化することができるから、効果的である。なお、処
理プログラム群11−2の全部でなく、その内で使用頻
度の高いもののみを高速ブロツク11−5に収容しても
よい。
の使い分けも有効である。第11図はその一例を示し、
これは、実行制御プログラム11−1とデータ処理プロ
グラム群11−2を1つのブロツク11−5とし、起動
待合せキユー11−3と入出力規定テーブル11−4を
他のブロツク11−6としたものである。電子交換機制
御用のソフトウエアを例にとると、両ブロツクの総メモ
リ量は2メガバイト程度となるが、その内、ブロツク1
1−5は約40キロバイトで、これは全体の約2%にす
ぎない。他方、1ラウンドの処理に要するダイナミツク
ステツプ数では、全体で約40キロステツプの内、ブロ
ツク11−5が約20〜25キロステツプを占める。こ
の傾向は一般にも見られるものである。そこで、前記の
ようにブロツク分けを行なつて、ブロツク11−5に可
及的高速の記憶装置を用いる。こうすれば、メモリの僅
か2%の部分を高速化することにより、処理の60%を
高速化することができるから、効果的である。なお、処
理プログラム群11−2の全部でなく、その内で使用頻
度の高いもののみを高速ブロツク11−5に収容しても
よい。
本発明によれば、ハードウエアについての特段の変更を
要せずに、従来の逐次実行型処理装置によつてデータ駆
動型プログラムを実行することができ、プログラム各部
の入出力条件及び起動条件が明解で、しかも、それらの
実行順序がそれらの記述順序によらないという、データ
駆動制御の利点を実質上享受することができる。その結
果、ソフトウエアの開発、デバツグ、変更などが容易に
なり、特に、難題の多い大規模なソフトウエアの生産性
の向上に寄与するところ大である。なかんずく、各処理
プログラムモジユールの出力データを、当該モジユール
の入出力規定テーブルに格納するだけで、それを入力と
して必要とする各処理プログラムモジユールの入出力テ
ーブルには転送しないので、一般にデータフロー制御で
行なわれる、出力データの各所要命令へのデータ転送の
ためのオーバーヘツドは、生じることがない。このこと
は、本願発明のように逐次制御型のプロセッサを用いる
装置にとつて極めて有利である。
要せずに、従来の逐次実行型処理装置によつてデータ駆
動型プログラムを実行することができ、プログラム各部
の入出力条件及び起動条件が明解で、しかも、それらの
実行順序がそれらの記述順序によらないという、データ
駆動制御の利点を実質上享受することができる。その結
果、ソフトウエアの開発、デバツグ、変更などが容易に
なり、特に、難題の多い大規模なソフトウエアの生産性
の向上に寄与するところ大である。なかんずく、各処理
プログラムモジユールの出力データを、当該モジユール
の入出力規定テーブルに格納するだけで、それを入力と
して必要とする各処理プログラムモジユールの入出力テ
ーブルには転送しないので、一般にデータフロー制御で
行なわれる、出力データの各所要命令へのデータ転送の
ためのオーバーヘツドは、生じることがない。このこと
は、本願発明のように逐次制御型のプロセッサを用いる
装置にとつて極めて有利である。
また、出力データの有効性を表示して、有効性が表示さ
れた出力データについてのみ出力通知を行なうので、条
件付き分岐がある場合でも、分岐の結果実行されるべき
処理プログラムモジユールに対してのみ、出力通知が行
なわれる。その結果、無用な出力通知動作が排除されて
能率が上がるだけでなく、実行されるべきでない処理プ
ログラムモジユールが誤つた出力通知のために誤つて起
動される恐れもない。
れた出力データについてのみ出力通知を行なうので、条
件付き分岐がある場合でも、分岐の結果実行されるべき
処理プログラムモジユールに対してのみ、出力通知が行
なわれる。その結果、無用な出力通知動作が排除されて
能率が上がるだけでなく、実行されるべきでない処理プ
ログラムモジユールが誤つた出力通知のために誤つて起
動される恐れもない。
第1図は本発明によるデータ処理装置の一実施例のブロ
ツクダイヤグラム、第2図は別の実施例のブロツクダイ
ヤグラム、第3図はデータ駆動型プログラムの一例のプ
ログラムチヤート、第4図は入出力規定テーブルの構成
図、第5図は第3図に示されたプログラムにおける入出
力規定テーブルの相互関係図、第6図は起動待合せキユ
ーの模式図、第7図は実行制御処理のフローチヤート、
第8図は出力通知処理のフローチヤート、第9図は入出
力規定テーブルの別の例の構成図、第10図及び第11
図は本発明の更に別の装置構成を示すブロツクダイヤグ
ラムである。 10……データ処理用処理ユニツト、10−1……逐次
実行型プロセッサ、10−2……データ処理プログラム
メモリ、10−3……インタフエース回路、20−1…
…入出力規定テーブル、30……実行制御用処理ユニツ
ト、30−1……逐次実行型プロセッサ、30−2……
実行制御プログラムメモリ、30−3……インタフエー
ス回路、40−1……起動待合せキユー。
ツクダイヤグラム、第2図は別の実施例のブロツクダイ
ヤグラム、第3図はデータ駆動型プログラムの一例のプ
ログラムチヤート、第4図は入出力規定テーブルの構成
図、第5図は第3図に示されたプログラムにおける入出
力規定テーブルの相互関係図、第6図は起動待合せキユ
ーの模式図、第7図は実行制御処理のフローチヤート、
第8図は出力通知処理のフローチヤート、第9図は入出
力規定テーブルの別の例の構成図、第10図及び第11
図は本発明の更に別の装置構成を示すブロツクダイヤグ
ラムである。 10……データ処理用処理ユニツト、10−1……逐次
実行型プロセッサ、10−2……データ処理プログラム
メモリ、10−3……インタフエース回路、20−1…
…入出力規定テーブル、30……実行制御用処理ユニツ
ト、30−1……逐次実行型プロセッサ、30−2……
実行制御プログラムメモリ、30−3……インタフエー
ス回路、40−1……起動待合せキユー。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 土岐田 義明 東京都国分寺市東恋ヶ窪1丁目280番地 株式会社日立製作所中央研究所内 (72)発明者 田辺 史朗 東京都国分寺市東恋ヶ窪1丁目280番地 株式会社日立製作所中央研究所内 (72)発明者 森田 隆士 東京都国分寺市東恋ヶ窪1丁目280番地 株式会社日立製作所中央研究所内
Claims (8)
- 【請求項1】逐次実行型プロセッサ及び処理プログラム
モジュール群とテーブル群とキユーとを格納した記憶手
段を備えたデータ処理装置において、前記テーブルによ
り各処理プログラムモジュール対応に入力データ入手先
テーブルと出力通知先テーブルを指示し、起動された処
理プログラムモジュールには対応するテーブルの前記指
示に従って入力データを入手させ、かつ、同テーブルの
所定位置に処理結果の出力データを書込ませるとともに
その出力データが有効であることを表示させ、そして、
有効であることが表示された前記処理結果の出力データ
について指示された通知先テーブル中に対応する入力デ
ータが準備されたことを表示し、所要全入力データが準
備されたテーブルを前記キユーの末尾に登録し、同キユ
ー内で待機中のテーブルを順次取出して対応する処理プ
ログラムモジユールを起動することを特徴とする、デー
タ処理装置の制御方法。 - 【請求項2】特許請求の範囲1において、既知の入力デ
ータについてはテーブル中にそのデータ自体を保持させ
るとともに、各入力データの種別を表示することを特徴
とする、データ処理装置の制御方法。 - 【請求項3】処理プログラムモジュール群記憶手段、各
処理プログラムモジュール対応に入力データ入手先テー
ブル指示領域と入力データ準備状況表示領域と出力通知
先テーブル指示領域と出力データ格納領域と出力データ
有効性表示領域とを有するテーブル記憶手段、所要全入
力データが準備されたテーブルを登録して起動すべきテ
ーブルを前記登録順に供給するキユー記憶手段、実行制
御プログラム記憶手段、及び前記処理プログラムモジュ
ールの制御の下に前記テーブルの指示する入力データに
対して所定の処理を行なって同テーブルの所定領域にそ
の出力データを書込むとともにその出力データの有効性
を表示し、かつ、前記実行制御プログラムの制御の下に
前記処理の結果の有効性が表示された出力データについ
て対応するテーブルが指示する出力通知先テーブルの所
定表示領域に入力データが準備されたことを表示すると
ともに前記キユーに対するテーブルの登録と同キユーか
ら供給されるテーブルに対応する処理プログラムモジュ
ールの起動を制御する逐次実行型プロセッサを備えたこ
とを特徴とする、データ処理装置。 - 【請求項4】特許請求の範囲3において、その処理プロ
グラムモジュール群記記憶手段と実行制御プログラム記
憶手段の少くとも一部が他の記憶手段よりも高速である
ことを特徴とする、データ処理装置。 - 【請求項5】特許請求の範囲3又は4において、そのテ
ーブル記憶手段が、入力データ入手先テーブル指示領域
及び出力通知先テーブル指示領域を含む読出専用記憶手
段と、入力データ準備状況表示領域、出力データ格納領
域及び出力データ有効性表示領域を含む書込可能記憶手
段とからなることを特徴とする、データ処理装置。 - 【請求項6】各処理プログラムモジュール対応に入力デ
ータ入手先テーブル指示領域と入力データ準備状況表示
領域と出力通知先テーブル指示領域と出力データ格納領
域と出力データ有効性表示領域とを有する少くとも1つ
のテーブル記憶手段、所要全入力データが準備されたテ
ーブルを登録して起動すべきテーブルを前記登録順に供
給する少くとも1つのキユー記憶手段、処理プログラム
モジユール群記憶手段と各処理プログラムモジユールの
制御の下に前記テーブルの指示する入力データに対して
所定の処理を行なって同テーブルの所定領域にその出力
データを書込むとともにその出力データの有効性を表示
する逐次実行型プロセツサとを含み前記テーブル記憶手
段及びキユー記憶手段対応に設けられた少くとも1つの
処理ユニット、実行制御プログラム記憶手段とこの実行
制御プログラムの制御の下に前記処理ユニットによる処
理の結果の有効性が表示された出力データについて対応
するテーブルが指示する出力通知先テーブルの所定表示
領域に入力データが準備されたことを表示するとともに
前記キユーに対するテーブルの登録と同キユーから供給
されるテーブルに対応する処理プログラムモジユールの
起動を制御する逐次実行型プロセツサとを含む実行制御
ユニット、及び両ユニツト間における制御情報授受手段
を備えたことを特徴とする、データ処理装置。 - 【請求項7】特許請求の範囲6において、その処理プロ
グラムモジユール群記憶手段と実行制御プログラム記憶
手段の少くとも一部が他の記憶手段よりも高速であるこ
とを特徴とする、データ処理装置。 - 【請求項8】特許請求の範囲6又は7において、そのテ
ーブル記憶手段が、入力データ入手先テーブル指示領域
及び出力通知先テーブル指示領域を含む読出専用記憶手
段と、入力データ準備状況表示領域、出力データ格納領
域及び出力データ有効性表示領域を含む書込可能記憶手
段とからなることを特徴とする、データ処理装置。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP59142283A JPH0632055B2 (ja) | 1984-07-11 | 1984-07-11 | デ−タ処理装置の制御方法及びそのためのデ−タ処理装置 |
DE8585108647T DE3584324D1 (de) | 1984-07-11 | 1985-07-11 | Datenflussgesteuertes informationsverarbeitungsverfahren und -system. |
EP85108647A EP0168054B1 (en) | 1984-07-11 | 1985-07-11 | Method and system for data driven information processing |
US07/753,852 US4901274A (en) | 1984-07-11 | 1985-07-11 | Method and system for data driven information processing |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP59142283A JPH0632055B2 (ja) | 1984-07-11 | 1984-07-11 | デ−タ処理装置の制御方法及びそのためのデ−タ処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS6123239A JPS6123239A (ja) | 1986-01-31 |
JPH0632055B2 true JPH0632055B2 (ja) | 1994-04-27 |
Family
ID=15311765
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP59142283A Expired - Lifetime JPH0632055B2 (ja) | 1984-07-11 | 1984-07-11 | デ−タ処理装置の制御方法及びそのためのデ−タ処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0632055B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5185873A (en) * | 1988-02-19 | 1993-02-09 | Hitachi, Ltd. | Control system with flag indicating two or less data inputs and counter indicating two or more controlling data driven execution method |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS57111747A (en) * | 1980-12-29 | 1982-07-12 | Fujitsu Ltd | Search sequence control system |
JPS57143641A (en) * | 1981-03-03 | 1982-09-04 | Nippon Telegr & Teleph Corp <Ntt> | Information processing device |
JPS58155458A (ja) * | 1982-03-12 | 1983-09-16 | Toshiba Corp | 計算機装置 |
-
1984
- 1984-07-11 JP JP59142283A patent/JPH0632055B2/ja not_active Expired - Lifetime
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS57111747A (en) * | 1980-12-29 | 1982-07-12 | Fujitsu Ltd | Search sequence control system |
JPS57143641A (en) * | 1981-03-03 | 1982-09-04 | Nippon Telegr & Teleph Corp <Ntt> | Information processing device |
JPS58155458A (ja) * | 1982-03-12 | 1983-09-16 | Toshiba Corp | 計算機装置 |
Also Published As
Publication number | Publication date |
---|---|
JPS6123239A (ja) | 1986-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0297893B1 (en) | Apparatus and method for recovering from page faults in vector data processing operations | |
US5341482A (en) | Method for synchronization of arithmetic exceptions in central processing units having pipelined execution units simultaneously executing instructions | |
US4016545A (en) | Plural memory controller apparatus | |
US5132898A (en) | System for processing data having different formats | |
JPH0517588B2 (ja) | ||
US4901274A (en) | Method and system for data driven information processing | |
US4701847A (en) | Adaptive instruction sequence synthesizer and process | |
US4631672A (en) | Arithmetic control apparatus for a pipeline processing system | |
JPS62115542A (ja) | 情報処理装置 | |
JP3035828B2 (ja) | 情報処理装置 | |
KR900010587A (ko) | 생산라인의 고성능 명령어 실행방법 및 장치 | |
JPH0632055B2 (ja) | デ−タ処理装置の制御方法及びそのためのデ−タ処理装置 | |
EP0447101B1 (en) | Processor with data format-independent instructions | |
JP2778717B2 (ja) | データ処理ユニット | |
JPH0754467B2 (ja) | データ処理装置 | |
EP0015276B1 (en) | A digital pipelined computer | |
JPS60134937A (ja) | アドレス拡張装置 | |
JP2866143B2 (ja) | 動的パイプライン処理装置 | |
JPH07110769A (ja) | Vliw型計算機 | |
JPH0298754A (ja) | 主記憶制御方式 | |
JP2688371B2 (ja) | エラーアドレス制御方式 | |
JPS61123937A (ja) | データ処理装置のデータ駆動型制御方式 | |
JP2940976B2 (ja) | 特定文字処理装置 | |
JPS6153754B2 (ja) | ||
JPS5931735B2 (ja) | デ−タ処理システムのための中央処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EXPY | Cancellation because of completion of term |