JP2754866B2 - データ駆動形計算機用オブジエクトコード生成装置 - Google Patents
データ駆動形計算機用オブジエクトコード生成装置Info
- Publication number
- JP2754866B2 JP2754866B2 JP13305290A JP13305290A JP2754866B2 JP 2754866 B2 JP2754866 B2 JP 2754866B2 JP 13305290 A JP13305290 A JP 13305290A JP 13305290 A JP13305290 A JP 13305290A JP 2754866 B2 JP2754866 B2 JP 2754866B2
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- object code
- node
- node number
- data
- 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
- Devices For Executing Special Programs (AREA)
Description
る方式を採用する、いわゆるデータ駆動形計算機のオブ
ジェクトコードを生成する装置に関するものである。
期)全国大会予稿集の209〜210頁の「図的データ駆動形
言語UL1の仕様」および211〜212頁の「図的データ駆動
形言語UL1の言語処理系」に示されたデータ駆動形計算
機用オブジェクトコード生成装置の構成図である。第6
図において、1はグラフィック端末、2はグラフィック
エディタ、3はコンパイラ構文解析部、4はコンパイラ
意味解析部、5はコンパイラコード生成部、6はマッパ
である。
生成装置の処理で特に、[UL1では記憶を伴う、いわゆ
る履歴依存処理の記述を許すために、そのデータ従属性
を副作用が生じないように保証している」とあり、さら
に、「UL1プログラム中の一語記憶形式をとる履歴への
アクセスについては、参照(GET)、更新(PUT)に変換
すると共に、副作用の生じない参照・更新規則に基づ
き、その接続構造を保証している」とある。特に記憶の
アクセスに関しては完全に副作用がないように接続を行
なっている。従って、従来のデータ駆動形計算機用オブ
ジェクトコード生成装置において記憶のアクセス命令で
出力のない命令は存在しなかった。
の処理に使用されるために準備されるので、出力がない
ということは有り得ない。
画像メモリへの書込み処理や、状態に応じて処理を行な
うようなプログラムの場合には、どんどんあるメモリの
データが更新され、ある一定時間ごとにそのデータに従
って処理がなされるといったこともある。そのために記
憶をアクセスするが出力がないという命令をもったデー
タ駆動形計算機が考えられる。データ用の記憶装置をア
クセスする命令の場合、また例えば演算処理部にあるレ
ジスタに積の結果を累算する命令(積和命令)の場合等
である。
積する命令(MAC)を含むプログラム例である。命令MAC
のノード番号は#8であるが、MAC実行後に実行される
命令はないので、オブジェクトコードの#8は有効な情
報が格納されないノード(ダミーノード)となる。ダミ
ーノードであるので、本来#9に格納されている有効な
ノードを格納すると、行き先ノードが#9の命令も行き
先ノードが#8となるため、待ち合わせの識別子が#8
となり、待ち合わせ処理部への到着順によっては、ノー
ド#6実行後のデータと本体行き先ノード#9のデータ
が発火してしまうということが起こり得るので、ノード
#8に単純に有効命令をつめることはできない。そのた
め、従来のデータ駆動形計算機用オブジェクトコードを
オペコードの追加等の単純な方法で変更した場合には第
7図のように何の情報ももたないダミーノードを含むオ
ブジェクトコードが生成される。第7図で、7は次に実
行する命令、8は行き先ノード番号、9はその他の情報
である。
装置に対して、待ち合わせは必要であるが出力のない命
令を追加した場合には、以上のようなオブジェクトコー
ドを生成するので、待ち合わせ処理の必要な命令は次の
命令を読み込まないものに対しても独立の行き先ノード
番号の割当てを行なわなくてはならず、従ってオブジェ
クトコードの該当するノード番号の部分は読み出される
ことはないにもかかわらず空けておかなくてはならず、
オブジェクトコードサイズが大きくなるという問題があ
った。
その目的とするところは、待ち合わせ処理は必要だが次
の命令を読み込まない命令に対しては、1入力命令など
その行き先ノード番号では待ち合わせ処理を行なわない
命令の行き先ノード番号を割り当てることができるとと
もに、それに伴って不必要な空きノードをオブジェクト
コード上に出力することのないデータ駆動形計算機用オ
ブジェクトコード生成装置を得ることにある。
ド生成装置は、2入力0出力命令のように待ち合わせは
必要であるが他の命令を駆動しない命令および1入力命
令のように待ち合わせは必要としないが他の命令を駆動
する命令を検出し、それぞれの命令を1対1に対応させ
それぞれに共通の行き先ノード番号を割り当てる処理部
を、従来のデータ駆動形計算機用オブジェクトコードに
対して追加したものである。
ド生成装置は、2入力0出力命令のように待ち合わせは
必要であるが他の命令を駆動しない命令を検出する手段
により、行き先ノード番号を待ち合わせの識別子として
使用するが次の命令読込みには使用しない命令の検出を
行なう。また、1入力命令のように待ち合わせは必要と
しないが他の命令を駆動する命令を検出する手段によ
り、行き先ノード番号を次の命令読込みにのみ使用する
命令の検出を行なう。このように検出されたそれぞれの
命令を1対1に対応付けて共通の行き先ノード番号を割
り当てていく。
クトコード生成装置の一実施例を示すブロック系統図で
ある。同図において、10はデータ駆動形計算機用オブジ
ェクトコード生成装置、11は入力ファイルであり、本実
施例では従来のオブジェクトコードファイルである。ま
た、12は入力ファイル11の読込み処理を行なう読込み部
である。13は2入力0出力の命令の検出と、検出した命
令のそれぞれに1入力命令の行き先ノード番号の割当て
処理を行なう処理部、14は不要となったダミーノードを
削除し、新たなノード番号のオブジェクトコードを出力
するオブジェクトコード出力部、15は各処理で使用する
メモリ、16は生成されるオブジェクトコードファイルで
ある。
ムの一例をフローグラフで示したものである。第3図は
第2図のフローグラフをオブジェクトコード化したもの
であり、このオブジェクトコードはオブジェクトコード
生成装置1により出力される。
るテーブルの構成を示すテーブル構成図である。同図に
おいて、21は1入力命令を検出した場合にその行き先ノ
ード番号を格納する領域であり、2入力0出力の命令を
検出した場合に、その行き先ノード番号は領域22に、そ
のノード番号は領域23に格納される。また、2入力0出
力の命令を検出した場合にその行き先ノード番号が既に
領域22に格納されていた場合、即ち待ち合わせすべき相
手のノードが登録済みの場合にはその行き先ノード番号
が格納されている列の領域24に新たに検出されたノード
の番号が格納される。同じ列に格納された1入力命令の
行き先ノード番号が2入力0出力の待ち合わせに使用さ
れるノード番号になる。領域22〜24の情報が2入力0出
力ノードの情報である。
ーチャートに従って動作の説明を行なう。まず1ノード
分の情報の読込みを行なう(ステップS1)。この読み込
んだノードに対して2入力0出力命令かどうかをチェッ
クする(ステップS2)。2入力0出力命令であった場合
には、第5図に示されるテーブルに格納するが、待ち合
わせすべき相手のノードが既に格納済みか否かのチェッ
クを行なう(ステップS3)。相手のノードはまだ格納さ
れていない場合、即ちこのノードの行き先ノード番号が
領域22に未登録の場合には、新たな行き先ノード番号お
よびこのノードの番号を登録する(ステップS4)。相手
となるノードが既に格納されていた場合には、その列の
領域24にこのノードのノード番号を格納する(ステップ
S5)。
入力命令のノードか否かをチェックする(ステップS
6)。1入力命令であった場合には、領域21の新たな列
に行き先ノード番号を登録する。以上の処理が終了した
ら、また、次のノードを読み込み(ステップS1)、上記
の処理を最後のノードを読み終えるまで繰り返す。
く処理およびノード番号の再割付けの処理を行なう。ダ
ミーノードを取り除くことができる2入力0出力の命令
とは行き先ノード番号が共用できる1入力命令があるも
のである。本実施例では、第5図の処理に使うテーブル
の同じ列に格納された1入力命令の行き先ノード番号と
2入力0出力命令の待ち合わせの識別子として流用する
こととする。
なっているノードの番号である。そのうちその列の1入
力ノードの行き先ノード番号領域21にノード番号が格納
されているものについてダミーノードを取り除くことが
できる。まず、全ノードに対して取り除けるノードをす
べて取り除いた場合のノード番号を決定する(ステップ
S9)。次に新たに決定されたノード番号で行き先のノー
ド番号を用いたオブジェクトコードを出力する(ステッ
プS10)。この場合、2入力0出力ノードの行き先ノー
ド番号は、テーブルに格納された1入力ノードの行き先
ノード番号(旧ノード番号)に対応する新ノード番号で
ある。
ドファイルとしたが、本発明は入力ファイルが高級言語
のソースプログラム、またアセンブリ言語のソースプロ
グラムなどコンパイラやアセンブラに適用することもで
きる。
ない命令として、2入力0出力命令のものを示したが、
3入力以上の命令のものにも適用できる。また、待ち合
わせを行なわない命令として1入力命令のものを示した
が、2入力以上の命令であっても定数データの処理等で
待ち合わせを行なわない場合の命令のものにも適用でき
る。
け用いられる行き先ノード番号と、次の命令の読出しに
だけ用いられる行き先ノード番号とを共用できるので、
オブジェクトコード上にダミーノードをつくる必要がな
く、サイズの小さなオブジェクトコードを得ることがで
きるという効果がある。また、一般に待ち合わせをする
が次の命令を読み込まない命令よりも、待ち合わせをし
ないが次の命令の読込みを行なう命令のほうが多く、ほ
とんどの場合ダミーノードのないオブジェクトコードが
得られる。
トコード生成装置の一実施例を示すブロック系統図、第
2図はデータ駆動形計算機で実行されるプログラムの一
例を示す説明図、第3図は第1図のデータ駆動形計算機
用オブジェクトコード生成装置で生成したオブジェクト
コードの構成を示す構成図、第4図は第1図の装置にお
ける処理を示すフローチャート、第5図は第1図の装置
の処理で使われるテーブルを示す構成図、第6図は従来
装置を示すブロック系統図、第7図は第6図の装置で生
成したオブジェクトコードの構成を示す構成図である。 10……オブジェクトコード生成装置、11……入力ファイ
ル、12……読込み部、13……処理部、14……オブジェク
トコード出力部、15……命令、16……オブジェクトコー
ドファイル。
Claims (1)
- 【請求項1】データの待ち合わせが必要であるが命令実
行後に他の命令を駆動しない命令および待ち合わせを必
要としないが命令実行後に他の命令を駆動する命令を検
出し、前記駆動しない命令および駆動する命令の2種類
の命令の少なくとも一部で共通の行き先ノード番号を割
り当てる処理部を有することを特徴とするデータ駆動形
計算機用オブジェクトコード生成装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP13305290A JP2754866B2 (ja) | 1990-05-22 | 1990-05-22 | データ駆動形計算機用オブジエクトコード生成装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP13305290A JP2754866B2 (ja) | 1990-05-22 | 1990-05-22 | データ駆動形計算機用オブジエクトコード生成装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0432980A JPH0432980A (ja) | 1992-02-04 |
JP2754866B2 true JP2754866B2 (ja) | 1998-05-20 |
Family
ID=15095695
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP13305290A Expired - Fee Related JP2754866B2 (ja) | 1990-05-22 | 1990-05-22 | データ駆動形計算機用オブジエクトコード生成装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2754866B2 (ja) |
-
1990
- 1990-05-22 JP JP13305290A patent/JP2754866B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH0432980A (ja) | 1992-02-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2666847B2 (ja) | 異種言語間連絡方式 | |
JP2000347872A (ja) | 例外を正規制御フローとして処理する方法及び装置 | |
US5379407A (en) | Error handling in a state-free system | |
JP2516703B2 (ja) | 論理自動生成方法および論理自動生成システム | |
Halpern | XPOP: a meta-language without metaphysics | |
JP2754866B2 (ja) | データ駆動形計算機用オブジエクトコード生成装置 | |
US5893122A (en) | Hyper-media system including plural application processors which execute navigation processing for hyper-media document | |
Tyszberowicz et al. | OBSERV-a prototyping language and environment combining object oriented approach, state machines and logic programming | |
JP2848609B2 (ja) | 論理回路変換方法及び装置 | |
JP2785138B2 (ja) | 大規模知識データベースシステムにおける遺伝方式 | |
JP3722854B2 (ja) | データ編集装置 | |
CN116166270A (zh) | 一种xaml文件修正方法、装置、计算机设备及存储介质 | |
JPS63261430A (ja) | 情報処理方式および装置 | |
JP3192177B2 (ja) | オブジェクト処理装置 | |
JP2928128B2 (ja) | Cpu周辺装置のシミュレーション方式およびその方法 | |
CN111273956A (zh) | 一种程序模块加载方法、装置、设备及存储介质 | |
JPH0285930A (ja) | レコードのコンパイル方式 | |
JPH11175344A (ja) | 知識ベースシステム | |
JPH03157729A (ja) | 多重継承制御方式 | |
JP2004302840A (ja) | データベースアクセス方法 | |
JPS62216037A (ja) | ソ−スライブラリによるメツセ−ジ管理方式 | |
George | A multilevel programming paradigm | |
JPH1124905A (ja) | プログラムの開発方法 | |
JPH01205331A (ja) | 大規模プログラムリンク方式 | |
JPH0268622A (ja) | プログラム特殊化方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080306 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Year of fee payment: 11 Free format text: PAYMENT UNTIL: 20090306 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Year of fee payment: 12 Free format text: PAYMENT UNTIL: 20100306 |
|
LAPS | Cancellation because of no payment of annual fees |