JPH0727474B2 - データフロープログラムのデバッグ装置 - Google Patents

データフロープログラムのデバッグ装置

Info

Publication number
JPH0727474B2
JPH0727474B2 JP63165690A JP16569088A JPH0727474B2 JP H0727474 B2 JPH0727474 B2 JP H0727474B2 JP 63165690 A JP63165690 A JP 63165690A JP 16569088 A JP16569088 A JP 16569088A JP H0727474 B2 JPH0727474 B2 JP H0727474B2
Authority
JP
Japan
Prior art keywords
program
data flow
data
information
execution
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
Application number
JP63165690A
Other languages
English (en)
Other versions
JPH0214334A (ja
Inventor
和彦 依田
俊弥 岡本
真一 芳田
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.)
Sharp Corp
Original Assignee
Sharp Corp
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 Sharp Corp filed Critical Sharp Corp
Priority to JP63165690A priority Critical patent/JPH0727474B2/ja
Priority to US07/374,060 priority patent/US5038348A/en
Publication of JPH0214334A publication Critical patent/JPH0214334A/ja
Publication of JPH0727474B2 publication Critical patent/JPH0727474B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Devices For Executing Special Programs (AREA)

Description

【発明の詳細な説明】 [産業上の利用分野] この発明はデータフロープログラムのデバッグ装置に関
し、特に、データフロープログラムに展開されるソース
プログラムを変数表示することにより、ソースプログラ
ムのデバッグを可能にするようなデバッグ装置に関す
る。
[従来の技術] 従来のコンピュータは、プログラムとして種々の命令を
プログラムメモリに記憶しておき、プログラムカウンタ
によってプログラムメモリのアドレスを逐次指定して順
次命令を読出し、その命令を実行するというノイマン型
計算機が大部分である。
一方、データフロー型情報処理装置は、プログラムカウ
ンタによる逐次的な命令の実行という概念を持たない非
ノイマン型計算機の一種である。このようなデータフロ
ー型情報処理装置は、命令が並列に処理されることを前
提にしたアーキテクチャに従っている。そして、演算の
対象になるデータが揃い次第、命令の実行が可能とな
り、データによって複数の命令を同時に駆動するため、
データの自然な流れに従って並列的にプログラムが実行
される。その結果、演算の所要時間が大幅に短縮できる
ことになる。
第5図は従来のデータフロー型情報処理装置の一例を示
す概略ブロック図であり、第6図は第5図に示した情報
処理装置の各部分を巡回するデータパケットの基本構成
を示す図であり、第7図はプログラムメモリに記憶され
るデータフロープログラムの一部を示す図である。
まず、第5図,第6図および第7図を参照して、データ
フロー型情報処理装置の構成と概略の動作について説明
する。第6図に示したデータパケットの行先フィールド
には行先情報が格納され、命令フィールドには命令情報
が格納され、データ1フィールドまたはデータ2フィー
ルドにはオペランドデータが格納される。
第5図において、プログラム記憶部(PS)1はプログラ
ムメモリを含み、そのプログラムメモリには第7図に示
すように、行先情報と命令情報とからなるデータフロー
プログラムが記憶されている。プログラム記憶部1はデ
ータパケットの行先情報に基づくアドレス指定によって
行先情報および命令情報を読出し、各情報をデータパケ
ットの行先フィールドおよび命令フィールドに格納し
て、FIFOからなる入力バッフア2a,2bに出力する。
対データ検出器(FC)2は、プログラム記憶部1から入
力バッフア2aおよび2bを介して入力されるデータパケッ
トの待合わせを行ない、行先情報が一致する2つのデー
タパケットのうち、一方のデータパケットのオペランド
データを他方のデータパケットの所定のデータフィール
ドに格納して、FIFOからなる入力バッフア3aに出力す
る。なお、このとき、上述の一方のデータパケットは消
滅する。
演算処理部(FP)3は対データ検出部2から入力バッフ
ア3aを介して入力されるデータパケットの命令情報を解
読し、その2つのオペランドデータに対して所定の演算
処理を施し、その結果をデータパケットのデータフィー
ルドに格納して分岐部4に出力する。
分岐部4はデータパケットの行先情報に基づいて、その
データパケットをFIFOからなる入力バッフア1aに与える
か、あるいはFIFOからなる入力バッフア5aを介して外部
データメモリ(EDS)6に与える。入力バッフア1aから
のデータパケットまたは外部データメモリ5から出力バ
ッファ5bを介して出力されるデータパケットは合流部6
に与えられ、合流部6はそれらのデータパケットを先着
順にプログラム記憶部1に与える。
第5図に示されたデータフロー型情報処理装置において
は、データパケットが、プログラム記憶部1→対データ
検出部2→演算処理部3→分岐部4(→外部データメモ
リ5)→合流部6→プログラム記憶部1…のように回り
続けることにより、プログラム記憶部1に記憶されたプ
ログラムに基づく演算処理が進行する。
第8図は第5図に示したプログラム記憶部1の概略の構
成を示す図である。第8図において、入力データラッチ
部11はデータパケットの行先情報およびオペランドデー
タを保持するものであり、命令情報は消去される。保持
されたオペランドと、行先情報をもとにしてプログラム
メモリ13から読出された新しい行先情報と命令情報とが
出力データラッチ部14に与えられてラッチされる。入力
データラッチ部11でラッチされた行先情報はアドレス計
算部12に与えられ、その行先情報からプログラムメモリ
13のアドレスが計算される。プログラムメモリ13は前述
の第7図に示したような行先情報と命令情報からなるデ
ータフロープログラムを記憶しており、上述のアドレス
により新しい行先情報と命令情報が出力データラッチ部
14に与えられる。
[発明が解決しようとする課題] 上述のデータフロー型情報処理装置においては、演算の
対象となるデータが揃い次第命令の実行が可能となり、
データの自然な流れに従って並列的にかつ非同期にプロ
グラムが実行される。そのため、通常のノイマン型計算
機において実行される場合に書かれたようなソースプロ
グラムをデータフロープログラムに展開して実行する場
合、その実行順序はノイマン型計算機における実行順序
とは必ずしも一致しないため、単純にプログラムを辿る
だけでは、そのソースプログラムの誤りを発見し、正す
ことができないという問題点があった。また、展開され
たデータフロープログラムを実行するときに誤りを発見
することはさらに困難であり、またソースプログラムと
の対応関係を知ることにも大変な困難が生じるという問
題点があった。
それゆえに、この発明の主たる目的は、データフロー型
情報処理装置上で実行可能なデータフロープログラムの
デバッグを効率良く行なうためのデバッグ装置を提供す
ることである。
[課題を解決するための手段] この発明に係るデータフロープログラムのデバッグ装置
は、プログラム記憶手段に記憶されているデータフロー
プログラムの実行する処理装置における複数の構成部分
に対応する機能を模擬的に実行するとともに、データフ
ロープログラムを逐次実行するプログラム実行手段を含
み、状態記憶手段によってプログラム実行時のデータフ
ロープログラム実行状況の情報を得るとともに、データ
遷移記憶手段によってプログラム実行時のデータフロー
プログラムのデータの情報を得て、その情報をデバッグ
情報記憶手段に記憶されているデバッグ情報からそのソ
ースプログラムの各変数に対応させ、プログラム記憶手
段からソースプログラムの各変数に関する情報を読出し
てデバッグ情報表示手段に表示する。
[作用] この発明に係るデバッグ装置は、ソースプログラムとデ
ータフロープログラムとの対応関係およびそのソースプ
ログラム中の変数とデータフロープログラムとして実行
されるときの変数との対応関係などを示すファイルを作
成するため、逐次実行されるデータフロープログラムに
対応して変数の処理状況が表示できる。また、プログラ
ムの模擬的な実行に際しては、或る命令の実行によりい
ずれかの変数が決定されるごとに逐次プログラムが進行
させられ、データフロー型情報処理装置の各構成部分の
状態およびデータの遷移が順次状態記憶手段およびデー
タ遷移記憶手段に記憶される。
その結果、データフロープログラムに対応するソースプ
ログラムの実行順序および実行情報が得られることにな
る。
[実施例] 第1図はこの発明の一実施例の概略ブロック図である。
第1図において、デバッグ実行装置10はデータフロー型
情報処理装置の内部動作をシミュレートする部分であ
り、データフロー型情報処理装置の各構成部分の動作を
実行するものである。このデバッグ実行装置10として
は、一般の情報処理装置(ノイマン型計算機)が用いら
れる。デバッグ実行装置10には入力ファイル20とコマン
ドファイル30とコンソール40と内部ファイル50とデバッ
グ表示ファイル60と結果ファイル70とディスプレイ80と
が接続される。
入力ファイル20はデバッグ実行装置10に、データフロー
プログラムを実行させ、デバッグを行なわせるのに必要
なデータを入力する部分である。この入力ファイル20は
プログラムファイル21およびデバッグ情報ファイル22を
含む。プログラムファイル21はデータフロープログラム
のオブジェクトプログラムおよびそれに使用されるデー
タなどを記憶している。また、デバッグ情報ファイル22
には、ソースプログラムリストおよびソースプログラム
とデータフロー型に展開されたオプジェクトプログラム
との対応関係を示す情報などが記憶されている。コマン
ドファイル30はデバッグに関する各種命令を記憶するも
のであり、このコマンドファイル30にはバッチ処理によ
り実行されるコマンド群が格納されている。
コンソール40はデバッグに関する各種指定をキー入力す
るためのものである。内部ファイル50はデバッグ実行装
置10の内部において用いられる各種情報を記憶するもの
であり、PSファイル51とデータパケットファイル52とED
Sファイル・EDSマップファイル(以下、EDSファイルと
称する)53を含む。PSファイル51はプログラムファイル
21から与えられたオプジェクトプログラムをデバッグ実
行装置10において実行可能な形式に変換したデータフロ
ープログラムを記憶するものである。データパケットフ
ァイル52に記憶されたデータパケットは、前述の第5図
に示したデータフロー型情報処理装置の各部分を巡回す
るデータパケットに対応している。EDSファイル53は第
5図に示した外部データメモリ5に対応する部分の記憶
内容および記憶領域の割当に関する情報を記憶する。
デバッグ表示ファイル60はデバッグ実行装置10における
デバッグ実行中の表示の変化を記憶し、結果ファイル70
はデバッグ実行装置10によるデータフローグラフの実行
結果を記憶する。
したがって、データフロープログラムに基づく演算処理
の結果は、この結果ファイル70に記憶される。ディスプ
レイ80はデバッグ表示ファイル60の内容,結果ファイル
70の内容およびメッセージを表示する。
プログラムファイル21から与えられるオプジェクトプロ
グラムは、このデバッグ実行装置10において実行可能な
データフロープログラムに変換されてPSファイル51に記
憶される。また、プログラムファイル21から与えられる
データはデータパケットファイル52に記憶される。この
第1図に示したデバッグ実行装置10によるデバッグ処理
は、コンソール40から入力されるコマンドまたはコマン
ドファイル30に記憶されているコマンドに従って実行さ
れる。
第2図は第1図に示したデバッグ装置によってデバッグ
されるソースプログラムの一例を示す図であり、第3図
は第2図に示したソースプログラムに基づくフローグラ
フを示す図であり、第4図はこの発明の一実施例による
デバッグ実行結果の一例を示す図である。
なお、第3図に示したフローグラフにおいて、右側の丸
印内の数字は実行ランク値を示し、左側の数字はその実
行ランク値の昇順に付けられたノード番号を示してお
り、この実施例によるプログラムはそのノード番号の順
に実行されるものとする。したがって、第2図に示した
ソースプログラムに対して、ノード番号の順に実行され
ると、デバッグの実行とともに第4図に示すように表示
される。
まず、第4図の表示のフォーマットについて説明する。
デバッグ実行時には、第4図に示すように、100の位置
に表示される実行されたノードのノード番号と、現在見
ている関数内に属するすべての変数についての変数名21
0などが表示され、さらにその変数の属するソースプロ
グラム中のすべての行について、実行されていない行22
0および実行された行230の2つに区別されて表示され
る。
実行されていない行220とは、変数名210に示される変数
が属するソースプログラム中のすべての行のうち、デー
タフロープログラムに展開された実行形式において未だ
実行されていない行のことであり、その位置にはその行
番号が示される。その行は未だ実行されていないので、
当然その行における当該変数の値は未だ決定されていな
い。
また、実行された行230とは、変数名210に示される変数
が属するソースプログラム中のすべての行のうち、既に
実行された行のことであり、その位置にはその行番号が
示される。その行は既に実行済であり、( )内にはそ
の行が実行された結果、その変数がどのような値を持っ
たか、その値が示されている。なお、実行されていない
行220も実行された行230のいずれも同一の変数に対して
複数個存在することが考えられ、そこで複数の値が記号
“,"で区切って順に表示されている。
上述のごとく実行されたノード番号100,変数名210,実行
されていない行220,実行された行230がデータフロープ
ログラムの実行に伴ない、第4図に示すように表示が変
化してゆく。つまり第3図に示すノード10の実行により
表示された各情報がノード13の実行により変数名211,実
行されていない行221,実行された行231のように変更さ
れ、最終的にはノード16の実行にり、変数名212,実行さ
れていない行222,実行された行232と変わり、デバッグ
に必要な行が順次提供される。
次に、各ノードの実行に従って、表示がどのように変化
していくのかを詳細に説明する。ノード10の実行により
変数“x"の値が決定されるので、実行されていない行22
0の位置に表示されていた変数“x"に関する行番号10行
が実行された行230の位置にその計算結果(91)ととも
に表示される。同時にその10行に属する変数“inp",
“a",“b",“c"についても同様に実行されていない行22
0の位置から実行された行230の位置へと表示が移動す
る。ただし、それら変数“x"以外の変数については値が
変更されるわけではないので、( )内に示される変数
値は10行以前での値と同じである。
次に、第3図に示すノード13の実行により11行目の式が
終了し、変数“w"の値が決定されるので、その変数につ
いて実行されていない行221より実行された行231へと表
示が移動し、( )内にはその計算結果(95)が表示さ
れる。また、その11行目に属するその他の変数“c",
“x"についても表示が移動する。
最終的にはノード16の実行により、14行目の式が終了
し、変数名212の位置に表示された出力変数“out"の値
は実行済を示す行232の位置に記述されているように(2
370)と決定され、例として挙げたデータフロープログ
ラムが終了する。また、その変数“out"に加えて変数
“y",“z"についても実行されいない行222より実行され
た行232へと表示が移動する。その結果、すべての変数
について値が確定し、表示が移動したことになる。
以上のようにしてデバッグ情報が提供され、データフロ
ー型情報処理装置で実行されるソースプログラムに関す
る実行順序および実行情報が得られることになる。
[発明の効果] 以上のように、この発明によれば、データフロープログ
ラムの実行に対応するソースプログラムの実行順序およ
び変数値の変化の状況、すなわちソースプログラムの処
理、実行情報を得ることができる。したがって、データ
フロープログラムの開発を容易かつ正確に行なうことが
可能となる。
【図面の簡単な説明】
第1図はこの発明の一実施例の概略ブロック図である。
第2図はソースプログラムの一例を示す図である。第3
図は第2図に示したソースプログラムをデータフロープ
ログラムに展開した場合の一例を示す図である。第4図
はこの発明の一実施例によるデバッグ実行結果の表示例
である。第5図は従来のデータフロー型情報処理装置の
概略ブロック図である。第6図は第5図に示した情報処
理装置の各部分を巡回するデータパケットの構成を示す
図である。第7図はプログラムメモリに記憶されるデー
タフロープログラムの一部を示す図である。第8図はデ
ータフロー型情報処理装置のプログラム記憶部の構成を
示すブロック図である。 図において、10はデバッグ実行装置、20は入力ファイ
ル、21はプログラムファイル、22はデバッグ情報ファイ
ル、30はコマンドファイル、40はコンソール、50は内部
ファイル、51はPSファイル、52はデータパケットファイ
ル、53はEDSファイル・EDSマップファイル、60はデバッ
グ表示ファイル、70は結果ファイル、80はディスプレイ
を示す。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】データフロープログラムの動作をソースプ
    ログラムに記述された変数を単位としてデバッグするデ
    ータフロープログラムのデバッグ装置であって、 前記データフロープログラムを記憶するプログラム記憶
    手段、 前記データフロープログラムを実行する処理装置におけ
    る複数の構成部分に対応する機能を模擬的に実行する複
    数の機能部分を含み、かつ前記プログラム記憶手段に記
    憶された前記データフロープログラムを逐次実行するプ
    ログラム実行手段、 前記プログラム実行手段の前記複数の機能部分の、前記
    ソースプログラム中に定義された各変数の変化を記憶す
    る状態記憶手段、 前記データフロープログラムの実行に用いられるデータ
    の前記プログラム実行手段の各機能部での前記ソースプ
    ログラムの各変数に対応する処理,実行の進行状況を記
    憶するデータ遷移記憶手段、 前記ソースプログラムの各変数と前記データフロープロ
    グラムの各ノードとの対応関係を示したデバッグ情報を
    記憶するデバッグ情報記憶手段、 前記状態記憶手段によってプログラム実行時のデータフ
    ロープログラムの実行状況の情報を得るとともに、デー
    タ遷移記憶手段によってプログラム実行時のデータフロ
    ープログラムのデータの情報を得て、それらの情報を前
    記デバッグ情報記憶手段に記憶されているデバッグ情報
    からそのソースプログラムの各変数に対応させ、前記プ
    ログラム記憶手段から前記ソースプログラムの各変数に
    関する情報を読出すための制御手段、および 前記制御手段によって得られた前記ソースプログラムの
    各変数に関するデバッグ情報を表示するデバッグ情報表
    示手段を備えた、データフロープログラムのデバッグ装
    置。
JP63165690A 1988-07-01 1988-07-01 データフロープログラムのデバッグ装置 Expired - Fee Related JPH0727474B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP63165690A JPH0727474B2 (ja) 1988-07-01 1988-07-01 データフロープログラムのデバッグ装置
US07/374,060 US5038348A (en) 1988-07-01 1989-06-30 Apparatus for debugging a data flow program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63165690A JPH0727474B2 (ja) 1988-07-01 1988-07-01 データフロープログラムのデバッグ装置

Publications (2)

Publication Number Publication Date
JPH0214334A JPH0214334A (ja) 1990-01-18
JPH0727474B2 true JPH0727474B2 (ja) 1995-03-29

Family

ID=15817192

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63165690A Expired - Fee Related JPH0727474B2 (ja) 1988-07-01 1988-07-01 データフロープログラムのデバッグ装置

Country Status (1)

Country Link
JP (1) JPH0727474B2 (ja)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6383842A (ja) * 1986-09-27 1988-04-14 Toshiba Corp プログラム処理装置
JPH06101045B2 (ja) * 1988-03-14 1994-12-12 シャープ株式会社 データフロー型情報処理装置のシミュレーション装置

Also Published As

Publication number Publication date
JPH0214334A (ja) 1990-01-18

Similar Documents

Publication Publication Date Title
US5038348A (en) Apparatus for debugging a data flow program
JPS62229343A (ja) プログラム・カウンタ表示方式
JPS6116100B2 (ja)
JPH0727474B2 (ja) データフロープログラムのデバッグ装置
JPH0727473B2 (ja) データフロープログラムのデバッグ装置
JPH06101045B2 (ja) データフロー型情報処理装置のシミュレーション装置
JPH02202643A (ja) データ駆動型情報処理装置用のデバッグ装置
JPS63131238A (ja) 論理シミユレ−タ
JP2866143B2 (ja) 動的パイプライン処理装置
JPH01310444A (ja) 並列演算処理装置
JPH0750460B2 (ja) グラフ表示装置
JPS61143855A (ja) プログラムテスト方式
JPH01306932A (ja) データ処理装置の試験方法
JPS58134338A (ja) デイジタル計算機の制御方式
JPH06175883A (ja) プログラムデバッグ装置
JPS6222153A (ja) マイクロプロセツサの動作解析方法と装置
JPS6051903A (ja) プロセス制御プログラムの作成方法
JPS63147202A (ja) プログラマブルコントロ−ラの検証方式
JPS6326416B2 (ja)
JPS63217433A (ja) プログラム実行制御方式
JPS59165128A (ja) 対話型デ−タ入力方式
JPH0264827A (ja) データ処理装置
JPS6344251A (ja) 診断方式
JPS62262151A (ja) 診断方式
JPS6361341A (ja) プログラムデバツグ装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees