JPH0652509B2 - Program development support device - Google Patents

Program development support device

Info

Publication number
JPH0652509B2
JPH0652509B2 JP63052114A JP5211488A JPH0652509B2 JP H0652509 B2 JPH0652509 B2 JP H0652509B2 JP 63052114 A JP63052114 A JP 63052114A JP 5211488 A JP5211488 A JP 5211488A JP H0652509 B2 JPH0652509 B2 JP H0652509B2
Authority
JP
Japan
Prior art keywords
time
program
processing
execution
simulation
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
Application number
JP63052114A
Other languages
Japanese (ja)
Other versions
JPH01226045A (en
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 JP63052114A priority Critical patent/JPH0652509B2/en
Publication of JPH01226045A publication Critical patent/JPH01226045A/en
Publication of JPH0652509B2 publication Critical patent/JPH0652509B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、DSP[digital signal processor]や汎
用MPU[microprocessing unit]等のリアルタイム
処理プログラムを開発する際に、作成したソースプログ
ラムの処理時間を計算することにより、開発効率の向上
を図るプログラム開発支援装置に関するものである。
DETAILED DESCRIPTION OF THE INVENTION [Industrial field of application] The present invention reduces the processing time of a source program created when a real-time processing program such as a DSP [digital signal processor] or a general-purpose MPU [microprocessing unit] is developed. The present invention relates to a program development support device for improving development efficiency by calculating.

〔従来の技術〕[Conventional technology]

DSP等のプログラム開発においては、作成したプログ
ラムにリアルタイム性が要求されるために、その実行時
間が規定時間内であるかどうかを知ることが必要とな
る。そこで、従来は、オブジェクトプログラムを実際に
動作させて、その実行時間を計測していた。
In developing a program such as a DSP, it is necessary to know whether the execution time is within a specified time because the created program is required to have real-time property. Therefore, conventionally, the object program is actually operated and its execution time is measured.

この従来のプログラム開発の手順を第3図に基づいて説
明する。
The conventional program development procedure will be described with reference to FIG.

まず、エディタを用いてソースプログラムの作成編集を
行う(P1)。次に、このソースプログラムをアセンブ
ル処理する(P2)。さらに、このアセンブル処理によ
って生成されたオブジェクトプログラムをエミュレータ
にかけて実行する(P3)。そして、この際に実行時間
を計測し、これが規定時間内ならば、そのプログラムを
完成する(P4)。ただし、この実行時間が規定時間内
に収まらない場合には、デバッグのためにP1のソース
プログラム編集に戻る。そして、以下、計測した実行時
間が規定時間内になるまでこの処理を繰り返す。
First, a source program is created and edited using an editor (P1). Next, the source program is assembled (P2). Furthermore, the object program generated by this assemble processing is executed by the emulator (P3). Then, the execution time is measured at this time, and if it is within the specified time, the program is completed (P4). However, if this execution time does not fall within the specified time, the process returns to P1 source program editing for debugging. Then, this process is repeated until the measured execution time falls within the specified time.

〔発明が解決しようとする課題〕[Problems to be Solved by the Invention]

しかしながら、通常DSP等のプログラムは、入力条件
の相違やその他の条件分岐等により、その実行時間が一
定していない。このため、前記P3においてプログラム
の最も長い実行時間を計測するには、これらの条件を全
て試みる必要がある。
However, the execution time of a program such as a DSP is not constant due to a difference in input condition or other conditional branching. Therefore, in order to measure the longest execution time of the program in P3, it is necessary to try all these conditions.

ところが、この実行時間の計測は、オブジェクトプログ
ラムを実際に動作させるためにリアルタイムで行われ
る。従って、少し複雑なプログラムになると、全ての条
件を実行するには膨大な時間を要することになる。
However, this execution time measurement is performed in real time in order to actually operate the object program. Therefore, in a slightly complicated program, it takes a huge amount of time to execute all the conditions.

このため、従来は、オブジェクトプログラムの実行時間
の計測に長時間を要するので、プログラム開発の効率が
悪くなるという問題点を有していた。
Therefore, conventionally, since it takes a long time to measure the execution time of the object program, there has been a problem that the efficiency of program development is deteriorated.

〔課題を解決するための手段〕[Means for Solving the Problems]

本発明に係るプログラム開発支援装置は、上記課題を解
決するために、プログラムの実行時間の最大許容限度を
示す規定時間を設定する規定時間設定手段と、プログラ
ムに用いられる各処理単位の実行時間を設定した時間テ
ーブルを作成する時間テーブル作成手段と、プログラム
の各実行手順に従って、このプログラムの処理単位を1
ステップずつシュミレートするシュミレート手段と、こ
のシュミレート手段が1ステップ、シュミレートする度
に、その処理単位に対応する実行時間を時間テーブルか
ら読み出し積算する処理時間算定手段と、この処理時間
算定手段の積算結果と規定時間設定手段により設定され
た規定時間とを比較する規定時間比較手段と、この規定
時間比較手段の比較により積算結果が規定時間を超えた
場合に告知を行い、かつ、前記処理時間算定手段の積算
結果を出力する出力手段とを有することを特徴としてい
る。
In order to solve the above-mentioned problems, a program development supporting apparatus according to the present invention sets a specified time setting means for setting a specified time indicating a maximum allowable limit of a program execution time, and an execution time of each processing unit used in the program. According to the time table creating means for creating the set time table and each execution procedure of the program, the processing unit of this program is set to 1
A simulation means for simulating step by step, a processing time calculation means for reading out and executing an execution time corresponding to a processing unit from a time table each time the simulation means simulates one step, and an integration result of the processing time calculation means. A prescribed time comparing means for comparing the prescribed time set by the prescribed time setting means and a notice when the integrated result exceeds the prescribed time by comparison of the prescribed time comparing means, and the processing time calculating means It is characterized by having an output means for outputting the integration result.

〔作 用〕[Work]

規定時間設定手段は、プログラムがリアルタイム性を維
持するために許容され得る最大限度の実行時間を規定時
間として設定する。また、そのプログラムに新たな機能
等を追加し得る実行時間の余裕を確保するための最大許
容限度を示す規定時間を同時に設定することもできる。
さらに、そのプログラム中の各処理ルーチンごとに、又
は、そのプログラム中の処理段階ごと等に、その最大許
容限度を示す規定時間を同時に設定してもよい。
The stipulated time setting means sets the maximum allowable execution time for maintaining the real-time property of the program as the stipulated time. Further, it is possible to simultaneously set a specified time indicating a maximum allowable limit for ensuring a margin of execution time in which a new function or the like can be added to the program.
Further, the specified time indicating the maximum allowable limit may be set at the same time for each processing routine in the program, or for each processing step in the program, or the like.

時間テーブル作成手段は、開発するプログラムに用いら
れる各処理単位の実行時間を設定して時間テーブルを作
成する。処理単位には、対象となるDSP等の1命令の
他に、これらの集合体からなる実行時間が既知のプログ
ラムユニット、サブルーチン及びその他のプログラム等
が含まれる。この処理単位は、その処理条件に応じて実
行時間が異なる場合がある。その場合には、各条件ごと
に実行時間を設定する。ただし、各条件ごとの設定が困
難である等の事情がある場合には、少なくともその処理
単位の最大の実行時間を設定する。
The time table creating means sets an execution time of each processing unit used in the program to be developed and creates a time table. The processing unit includes one instruction such as a target DSP and the like, as well as a program unit, a subroutine, other programs and the like, which are composed of these and have a known execution time. This processing unit may have different execution times depending on its processing conditions. In that case, the execution time is set for each condition. However, if there is a circumstance such that setting for each condition is difficult, at least the maximum execution time of the processing unit is set.

プログラムは、通常ソースプログラムの状態でRAM等
に保持しておく。シュミレート手段は、このプログラム
の実行手順に従って、処理単位を1ステップずつシュミ
レートする。このシュミレートは、各処理単位ごとに演
算等の処理についてはこれを実行し、その処理結果や入
力条件等の各処理条件を実際の実行時と同様に保持しな
がら進行する。また、条件分岐の場合には、保持してい
る処理条件に従って分岐する。プログラムの一連の実行
手順が終了すると、予め設定された手順に従って自動的
に、又は、操作によって、異なる入力条件等による他の
実行手順をシュミレートする。
The program is usually held in the RAM or the like in the state of the source program. The simulating means simulates the processing unit step by step according to the execution procedure of this program. The simulation executes processing such as calculation for each processing unit, and proceeds while holding each processing condition such as the processing result and input condition as in the case of actual execution. Further, in the case of a conditional branch, the branch is performed according to the processing condition held. When a series of execution procedures of the program is completed, another execution procedure under different input conditions or the like is simulated automatically according to a preset procedure or by an operation.

処理時間算定手段は、シュミレート手段が1ステップず
つシュミレートする度に、その処理単位に対応する実行
時間を時間テーブルから読み出し積算する。この際、そ
の処理単位が条件ごとに複数の実行時間を設定されてい
る場合には、保持している処理条件に対応する実行時間
を読み出す。この実行時間の積算は、通常一連の実行手
順ごとに行う。ただし、場合によっては、これと並行し
て各処理ルーチンごとや処理段階ごとに積算を行っても
よい。このようにして得た積算結果は、すべてそのまま
保持しておいてもよい。また、一連の実行手順が終了す
る度に、その積算結果とそれまでの最大の積算結果とを
比較し、常に最大の積算結果のみを保持するようにする
こともできる。
The processing time calculation means reads out the execution time corresponding to the processing unit from the time table and integrates it every time the simulation means simulates step by step. At this time, when the processing unit has a plurality of execution times set for each condition, the execution time corresponding to the held processing condition is read. The integration of the execution time is usually performed for each series of execution procedures. However, depending on the case, the integration may be performed in parallel for each processing routine or each processing stage. All the integration results obtained in this way may be retained as they are. It is also possible to compare the accumulated result with the maximum accumulated result up to that time each time a series of execution procedures is completed, and always hold only the maximum accumulated result.

なお、実行時間を時間テーブルに設定していない処理単
位が存在する場合には、これをシュミレートする際にオ
ペレータに告知して、時間テーブル作成手段による実行
時間の追加設定を促すようにすることもできる。このよ
うにすれば、引き続きシュミレートを続行することが可
能となるので、それまでに要した時間を無駄にすること
がなくなる。
If there is a processing unit for which the execution time is not set in the time table, the operator may be notified when simulating the processing unit, and the additional setting of the execution time by the time table creating means may be prompted. it can. In this way, it is possible to continue the simulation, so that the time taken up to that point is not wasted.

規定時間比較手段は、この処理時間算定手段による積算
結果と、前記規定時間設定手段によって設定された規定
時間とを比較する。そして、この積算結果が規定時間を
超過した場合に、告知のための出力を発する。この規定
時間比較手段の比較は、通常は1ステップごとに行われ
る。また、処理ルーチンごと、又は、処理段階ごと等に
も規定時間が設定してある場合には、対応するこれらの
規定時間とも比較を行う。
The specified time comparison means compares the integrated result obtained by the processing time calculation means with the specified time set by the specified time setting means. Then, when the integration result exceeds the specified time, an output for notifying is issued. The comparison of the specified time comparison means is usually performed step by step. In addition, when the specified time is set for each processing routine or each processing stage, etc., comparison is also made with the corresponding specified times.

出力手段は、この積算結果が規定時間を超えたために規
定時間比較手段が出力を発すると、警告音を発しCRT
によってその状況を表示する等の手段でオペレータに異
常を告知する。この際、シュミレート手段によるシュミ
レートは、一旦停止する。また、この出力手段は、シュ
ミレーション終了時に、処理時間算定手段が積算した積
算結果やCRTやプリンタ等に出力する。この際、全て
の積算結果を出力する他に、最大の積算結果、最小の積
算結果及び積算結果の平均値等を演算してから出力する
ようにしてもよい。なお、この出力手段による積算結果
は、シュミレーション終了時にのみならず、例えば一連
の実行手順の終了時等に随時出力するようにしてもよ
い。
The output means issues a warning sound and outputs a CRT when the specified time comparison means outputs an output because the integration result exceeds the specified time.
The operator is notified of the abnormality by means such as displaying the situation. At this time, the simulation by the simulation means is temporarily stopped. Further, this output means outputs the integrated result accumulated by the processing time calculation means, a CRT, a printer, etc. at the end of the simulation. At this time, in addition to outputting all the integration results, the maximum integration result, the minimum integration result, the average value of the integration results, and the like may be calculated and then output. It should be noted that the result of integration by the output means may be output not only at the end of the simulation but also at the end of a series of execution procedures, for example.

以上のように、本発明のプログラム開発支援装置は、プ
ログラムをリアルタイムで実行するのではなく、シュミ
レーションにより実行時間を計算することができるの
で、短時間に結果が得られる。特に、処理条件に関係し
ない処理単位や実行時間が既知のプログラムユニット及
びサブルーチン等が多く含まれるプログラムの場合に
は、実行手順が多岐にわたる場合にも極めて短い時間で
結果を得ることができる。また、このシュミレーション
の途上で実行時間が規定時間を超過したことが分かる
と、その旨が直ぐにオペレータに告知されるので、以後
の無駄なシュミレーションを防止し、時間超過に対して
迅速な措置を講じることができる。
As described above, the program development support apparatus of the present invention can calculate the execution time by simulation instead of executing the program in real time, so that the result can be obtained in a short time. In particular, in the case of a program including a large number of processing units irrelevant to processing conditions and program units and subroutines whose execution times are known, results can be obtained in an extremely short time even when the execution procedure is diverse. In addition, if it is found that the execution time has exceeded the specified time during this simulation, the operator will be immediately notified of this, so that unnecessary simulations after that will be prevented and prompt measures will be taken against the excess of time. be able to.

なお、本発明は、DSPのリアルタイム処理プログラム
の他、汎用MPUの通信処理プログラム等のようにリア
ルタイム性を要求される一般のプログラムの開発にも利
用される。また、リアルタイム性の要求されないプログ
ラムの場合でも、実行時間が参考になる場合には、利用
することができる。
Note that the present invention is also used for developing a general program that requires real-time processing, such as a DSP M real-time processing program and a general-purpose MPU communication processing program. Further, even in the case of a program that does not require real-time processing, it can be used when the execution time is useful.

〔実施例〕〔Example〕

本発明の一実施例を第1図及び第2図に基づいて説明す
れば、以下の通りである。
An embodiment of the present invention will be described below with reference to FIGS. 1 and 2.

本実施例は、モデム用DSPのプログラム開発を行う場
合について示す。
This embodiment shows a case where a program for a DSP for modem is developed.

プログラム開発支援装置は、マイクロコンピュータとこ
れに接続する各種入出力装置とで構成されている。
The program development support device is composed of a microcomputer and various input / output devices connected thereto.

入力装置1は、規定時間レジスタ2、時間テーブル3及
び入力バッファ4に接続している。この入力装置は、キ
ーボード及び外部記憶装置からの入力装置からなる。ま
た、必要な場合には、OCR等を含むこともできる。規
定時間レジスタ2は、入力装置1からの入力により、作
成するプログラムの実行時間の最大許容限度を示す規定
時間を設定したものである。時間テーブル3は、入力装
置1からの入力により、DSPの各命令等の実行時間を
設定したものである。また、入力バッファ4は、作成し
たソースプログラムを入力装置1から入力し記憶するも
のである。これらの規定時間レジスタ2、時間テーブル
3及び入力バッファ4は、マイクロコンピュータ内のR
AMによって構成される。
The input device 1 is connected to the specified time register 2, the time table 3 and the input buffer 4. This input device comprises a keyboard and an input device from an external storage device. It may also include OCR or the like if necessary. The specified time register 2 sets a specified time indicating the maximum allowable limit of the execution time of the program to be created by the input from the input device 1. The time table 3 is a table in which the execution time of each instruction of the DSP is set by the input from the input device 1. The input buffer 4 is for inputting and storing the created source program from the input device 1. The specified time register 2, the time table 3 and the input buffer 4 are the R in the microcomputer.
It is composed by AM.

規定時間レジスタ2は、比較部5に接続している。ま
た、時間テーブル3は、処理時間演算部6に接続してい
る。さらに、入力バッファ4は、シュミレート部7に接
続している。処理時間算定部6及びシュミレート部7
は、相互に接続している。また、処理時間算定部6は比
較部5に接続し、この比較部5はシュミレート部7に接
続している。このシュミレート部7は、入力バッファ4
に記憶されたソースプログラムを1ステップずつシュミ
レートするものである。そして、処理時間算定部6は、
シュミレートされた各命令等の実行時間を1ステップご
とに時間テーブル3から読み出し積算するものである。
比較部5は、この処理時間算定部6が積算した積算結果
と規定時間レジスタ2から読み出した規定時間とを1ス
テップごとに比較するものである。これらの比較部5
は、処理時間算定部6及びシュミレート部7は、マイク
ロコンピュータのCPU及びRAMによって構成されて
いる。
The specified time register 2 is connected to the comparison unit 5. Further, the time table 3 is connected to the processing time calculation unit 6. Further, the input buffer 4 is connected to the simulation section 7. Processing time calculation unit 6 and simulation unit 7
Are connected to each other. Further, the processing time calculation unit 6 is connected to the comparison unit 5, and the comparison unit 5 is connected to the simulation unit 7. The simulation unit 7 includes an input buffer 4
The source program stored in is simulated step by step. Then, the processing time calculation unit 6
The execution time of each simulated instruction is read from the time table 3 step by step and integrated.
The comparison unit 5 compares the integration result integrated by the processing time calculation unit 6 with the specified time read from the specified time register 2 step by step. These comparison parts 5
The processing time calculation unit 6 and the simulation unit 7 are composed of a CPU and a RAM of a microcomputer.

出力装置は、ブザー8、CRT表示装置9及びプリンタ
10からなる。ブザー8には、比較部5が接続されてい
る。CRT表示装置9には、規定時間レジスタ2、時間
テーブル3、入力バッファ4、比較部5及びシュミレー
ト部7が接続され、設定された規定時間のリスト、各命
令等の実行時間のリスト、入力されたソースプログラム
のリスト、実行時間が超過した場合の告知及びシュミレ
ートの実行状況等が表示される。プリンタ10には、処
理時間算定部6及びシュミレート部7が接続され、実行
時間の積算結果及びシュミレートの実行結果等が出力さ
れる。
The output device includes a buzzer 8, a CRT display device 9 and a printer 10. The comparison unit 5 is connected to the buzzer 8. A specified time register 2, a time table 3, an input buffer 4, a comparison unit 5 and a simulation unit 7 are connected to the CRT display device 9, and a list of set specified times, a list of execution times of respective commands and the like are input. A list of source programs, notifications when execution time is exceeded, and simulation execution status are displayed. A processing time calculation unit 6 and a simulation unit 7 are connected to the printer 10 and output an execution time integration result, a simulation execution result, and the like.

なお、これら各装置等の処理プログラムは、マイクロコ
ンピュータにおけるROMに記憶され、又は、入力装置
1を介して外部記憶装置からRAMに読み込まれ記憶さ
れている。
The processing programs of these devices and the like are stored in the ROM of the microcomputer or read and stored in the RAM from the external storage device via the input device 1.

上記構成のプログラム開発支援装置の動作を説明する。The operation of the program development support device having the above configuration will be described.

規定時間レジスタ2に規定時間を設定するには、入力装
置1におけるキーボード等で入力する。この規定時間
は、プログラムがリアルタイム性を維持するために許容
され得る最大限度の実行時間と共に、そのプログラムに
新たな機能等を追加し得る実行時間の余裕を確保するた
めの最大許容限度の実行時間やそのプログラム中の各処
理ルーチンごと、又は、そのプログラム中の処理段階ご
との実行時間を含める。
To set the specified time in the specified time register 2, the input device 1 is used to enter the specified time. This specified time is the maximum allowable execution time for maintaining the real-time property of the program, and the maximum allowable execution time for ensuring a margin of execution time for adding new functions to the program. Or each processing routine in the program, or the execution time for each processing step in the program is included.

時間テーブル3に実行時間を設定するには、入力装置1
におけるキーボードで入力する他に、予めそのDSP用
に作成されていたものを外部記憶装置から読み込んでも
よい。実行時間が設定されるのは、DSPの各命令の他
に、実行時間が既知のプログラムユニット、サブルーチ
ン及びその他のプログラムが含まれる。また、例えば
“sin-cosジェネレータ”のようなプログラムユニット
等では、sin演算を行うのか cos演算を行うかによっ
て、また、引数として受け渡す角度θの値によって、そ
の処理時間に相違が生じる。従って、この場合には、各
処理条件ごとの実行時間又はそれらのうちの最大の実行
時間を設定する。
To set the execution time in the time table 3, input device 1
In addition to inputting with the keyboard in, the data previously created for the DSP may be read from the external storage device. The execution time is set in addition to each instruction of the DSP, including program units, subroutines and other programs whose execution time is known. Further, for example, in a program unit such as a "sin-cos generator", the processing time differs depending on whether the sin operation or the cos operation is performed and the value of the angle θ passed as an argument. Therefore, in this case, the execution time for each processing condition or the maximum execution time among them is set.

外部記憶装置に記憶されたソースプログラムは、前記入
力装置1を介して入力バッファ4に読み込まれる。な
お、ソースプログラムが文書に印字されたものである場
合には、入力装置1におけるOCRを用いて読み込む。
また、本装置がエディタを備えている場合には、入力装
置1のキーボードにより直接入力バッファ4上に作成し
てもよい。
The source program stored in the external storage device is read into the input buffer 4 via the input device 1. If the source program is printed on the document, it is read using the OCR in the input device 1.
Further, when the present device is equipped with an editor, it may be created directly on the input buffer 4 by the keyboard of the input device 1.

シュミレート部7は、まずこの入力バッファ4に記憶さ
れたソースプログラムを実行手順に従って1ステップず
つ読み込む。次に、読み込んだ1ステップの命令等をシ
ュミレートする。このシュミレートは、処理条件等に関
係するものについては、実行時と同様の処理を行う。そ
して、その処理結果や予め設定された入力条件等も実行
時と同様に保持する。しかしながら、その他の処理につ
いては、実行を行わない。また、条件分岐の場合には、
保持している処理条件等に従って分岐する。ソースプロ
グラムの一連の実行手順が終了すると、引き続いて異な
る入力条件等による他の実行手順をシュミレートする。
The simulating unit 7 first reads the source program stored in the input buffer 4 step by step according to the execution procedure. Next, the read one-step instruction or the like is simulated. As for this simulation, the same processing as that at the time of execution is performed for those related to processing conditions and the like. Then, the processing result, the input condition set in advance, and the like are retained as in the case of execution. However, other processes are not executed. In the case of conditional branch,
It branches according to the processing conditions that it holds. When a series of execution procedures of the source program is completed, another execution procedure with different input conditions or the like is subsequently simulated.

処理時間算定部6は、シュミレート部7が1ステップの
シュミレートを行う度に、その命令等に対応する実行時
間を時間テーブル3から読み出し積算する。この際、そ
の命令等が条件ごとに複数の実行時間を設定されている
場合には、保持している処理条件に対応する実行時間を
読み出す。この実行時間の積算は、一連の実行手順ごと
に行う。このようにして得た積算結果は、それぞれその
まま保持する。
The processing time calculation unit 6 reads out the execution time corresponding to the instruction and the like from the time table 3 and integrates each time the simulation unit 7 performs one step of simulation. At this time, when the instruction or the like has a plurality of execution times set for each condition, the execution time corresponding to the held processing condition is read. The integration of the execution time is performed for each series of execution procedures. The integration results thus obtained are retained as they are.

また、この処理時間算定部6が時間テーブル3に実行時
間の設定されていないプログラムユニット等を発見した
場合には、シュミレート部7が直ぐにCRT表示装置9
等に出力を発し、オペレータにこの旨を告知して入力の
ための待機状態となるようにしている。オペレータは、
この告知があった場合に、そのプログラムユニット等の
処理時間を時間テーブル3に追加設定することにより、
シュミレートを続行することができる。
When the processing time calculating unit 6 finds a program unit or the like for which the execution time is not set in the time table 3, the simulating unit 7 immediately detects the CRT display device 9.
Is output to notify the operator of this fact, and a standby state for input is entered. The operator
When this notification is given, by additionally setting the processing time of the program unit etc. in the time table 3,
You can continue to simulate.

比較部5は、この処理時間算定部6が積算した積算結果
を前記規定時間レジスタ2に設定された規定時間と比較
する。この比較は、1ステップごとに行う。また、対応
する処理ルーチンや処理段階ごとの規定時間とも比較す
る。この比較の結果、積算結果が規定時間を超過してい
た場合には、比較部5が出力を発する。
The comparison unit 5 compares the integration result accumulated by the processing time calculation unit 6 with the specified time set in the specified time register 2. This comparison is performed step by step. Further, it is also compared with the corresponding processing routine and the specified time for each processing stage. As a result of this comparison, if the integrated result exceeds the specified time, the comparison unit 5 outputs an output.

ブザー8は、この比較部5からの出力により、警告音を
発する。また、この比較部5から出力が発せられると、
シュミレート部7におけるシュミレートが停止し、時間
超過の状況をCRT表示装置9が表示する。このCRT
表示装置9による表示は、例えば、時間超過時のソース
プログラムのステップナンバーや命令等をカーソルで示
すことによって行う。
The buzzer 8 emits a warning sound according to the output from the comparison unit 5. Also, when an output is issued from this comparison unit 5,
The simulation in the simulation section 7 is stopped, and the CRT display device 9 displays the situation of time overrun. This CRT
The display on the display device 9 is performed, for example, by indicating the step number of the source program and the instruction when the time is exceeded with a cursor.

このようにして、プログラムの実行時間の超過が告知さ
れると、オペレータは、シュミレーションをさらに続行
するか、又は、ソースプログラムの修正等を行うかを判
断し、その措置を講じる。この時間超過の原因がプログ
ラムのコーディングミスによるものではない場合には、
アルゴリズムの変更やモデムの機能縮小等によって実行
時間の短縮化を図ることにより修正を行うことができ
る。このようにしてソースプログラムの修正等の措置が
完了すると、再びシュミレートを開始する。
In this way, when it is announced that the execution time of the program is exceeded, the operator determines whether to continue the simulation or modify the source program, and takes the measures. If the cause of this time excess is not due to a coding mistake in the program,
The modification can be made by shortening the execution time by changing the algorithm or reducing the function of the modem. When measures such as correction of the source program are completed in this way, simulation is started again.

上記のようにして、全ての入力条件等における各実行手
順のシュミレーションが終了すると、処理時間算定部6
が積算結果をプリンタ10に出力する。この際、処理時
間算定部6は、保持する全ての積算結果から、その最大
の積算結果及び最小の積算結果を選び出し、また、これ
らの積算結果の平均値を演算して出力することもでき
る。シュミレート部7は、これらの各積算結果に添え
て、その実行手順の入力条件等をプリンタ10に出力す
る。また、これをCRT表示装置9に表示することも勿
論可能である。
When the simulation of each execution procedure under all the input conditions is completed as described above, the processing time calculation unit 6
Outputs the integration result to the printer 10. At this time, the processing time calculation unit 6 can select the maximum integration result and the minimum integration result from all the integration results that it holds, and can also calculate and output the average value of these integration results. The simulation unit 7 outputs to the printer 10 the input conditions and the like of the execution procedure, along with these integration results. Further, it is of course possible to display this on the CRT display device 9.

オペレータは、これらの出力結果から、作成したソース
プログラムの実行時間を知ることができる。従って、こ
の実行時間が規定値に対して適当な場合には、ソースプ
ログラムの作成が完了する。さらに、実行時間が最大の
規定値に対してまだ十分に余裕があった場合には、さら
に機能の追加や並列処理プログラムの受け入れ範囲の拡
大等を検討することができる。
The operator can know the execution time of the created source program from these output results. Therefore, when this execution time is appropriate for the specified value, the creation of the source program is completed. Furthermore, if the execution time still has a sufficient margin with respect to the maximum specified value, it is possible to consider adding a function or expanding the range of acceptance of the parallel processing program.

このプログラム開発支援装置を用いてプログラム開発を
行う場合の手順を第2図のフローチャートに基づいて説
明する。
A procedure for developing a program using this program development support apparatus will be described with reference to the flowchart of FIG.

まず、エディタによりソースプログラムの作成編集を行
う(S1)。ソースプログラムができあがると、これを
入力装置1により入力バッファ4へ読み込むと共に、こ
の入力装置1により時間テーブル3の設定及び規定時間
レジスタ2への規定時間の設定を行う(S2)。これら
の入力が完了すると、シュミレート部7により1ステッ
プずつのシュミレートを実行する(S3)。また、これ
と同時に処理時間算定部6がそのステップの実行時間の
積算を行う。1ステップのシュミレートを終了すると、
このときの処理時間算定部6による積算結果が規定時間
を超過しているかどうかの判断を行う(S4)。
First, a source program is created and edited by an editor (S1). When the source program is completed, it is read into the input buffer 4 by the input device 1, and the input device 1 sets the time table 3 and the specified time in the specified time register 2 (S2). When these inputs are completed, the simulation section 7 executes the simulation step by step (S3). At the same time, the processing time calculation unit 6 integrates the execution time of the step. After completing the one-step simulation,
At this time, it is judged whether or not the integrated result by the processing time calculation unit 6 exceeds the specified time (S4).

積算結果が規定時間を超過していない場合には、シュミ
レーションが終了したかどうかの判断を行う(S5)。
シュミレーションが終了していない場合には、S3に戻
り次のステップのシュミレートを行う。また、一連の実
行手順が終了しても、まだ実行すべき処理条件が残って
いる場合には、異なる処理条件による実行手順のシュミ
レートを続行する。そして、S5において、全ての処理
条件の実行手順が終了したと判断された場合には、処理
時間算定部6により実行時間の積算結果をCRT表示装
置9及びプリンタ10に出力し(S6)、処理を完了す
る。
If the integrated result does not exceed the specified time, it is determined whether the simulation has ended (S5).
If the simulation has not ended, the process returns to S3 and the simulation of the next step is performed. Further, even if a series of execution procedures are completed, if there are still processing conditions to be executed, the simulation of execution procedures under different processing conditions is continued. When it is determined in S5 that the execution procedure of all the processing conditions has been completed, the processing time calculation unit 6 outputs the integration result of the execution times to the CRT display device 9 and the printer 10 (S6), and the processing is performed. To complete.

また、S4において、積算結果が規定時間を超過した場
合には、シュミレート部7によるシュミレートを一旦停
止して、ブザー8から警告音を発すると共に、この状況
をCRT表示装置9に表示する(S7)。そして、オペ
レータにこの後さらにシュミレーションを続行するかど
うかの判断を仰ぐ(S8)。オペレータは、これに対し
て入力装置1のキーボードによって指示を行う。この指
示がシュミレーションを続行するものである場合には、
S5に移行する。なお、この場合には、規定時間レジス
タ2上の当該規定時間はキャンセルされる。
Further, in S4, when the integration result exceeds the specified time, the simulation by the simulation unit 7 is temporarily stopped, the buzzer 8 emits a warning sound, and this situation is displayed on the CRT display device 9 (S7). . Then, the operator is asked to decide whether or not to continue the simulation thereafter (S8). The operator gives an instruction to this with the keyboard of the input device 1. If this instruction is to continue the simulation,
The process moves to S5. In this case, the specified time on the specified time register 2 is canceled.

また、この指示がシュミレーションを中止するものであ
る場合には、S1に戻る。そして、オペレータは、ソー
スプログラムのデバッグを行い、S2から再度上記処理
を繰り返す。なお、この際には、時間テーブル3の設定
や規定時間の設定は、不要となる。また、ソースプログ
ラムの細部の修正で済むような場合には、S8の段階か
ら適当なステップ数を戻してシュミレーションを再開す
るような処理を行うことも可能である。
If the instruction is to stop the simulation, the process returns to S1. Then, the operator debugs the source program and repeats the above processing from S2. At this time, setting of the time table 3 and setting of the specified time are unnecessary. In addition, when it is sufficient to correct the details of the source program, it is possible to perform a process of returning an appropriate number of steps from the step S8 and restarting the simulation.

以上のようにして、S6で得た出力結果が満足できるも
のである場合には、これでソースプログラムを完成す
る。そして、このソースプログラムをアセンブル処理す
れば、DSPを動作させるためのオブジェクトプログラ
ムを得ることができる。
As described above, when the output result obtained in S6 is satisfactory, the source program is completed. By assembling the source program, an object program for operating the DSP can be obtained.

〔発明の効果〕〔The invention's effect〕

本発明に係るプログラム開発支援装置は、以上のよう
に、プログラムの実行時間の最大許容限度を示す規定時
間を設定する規定時間設定手段と、プログラムに用いら
れる各処理単位の実行時間を設定した時間テーブルを作
成する時間テーブル作成手段と、プログラムの各実行手
順に従って、このプログラムの処理単位を1ステップず
つシュミレートするシュミレート手段と、このシュミレ
ート手段が1ステップ、シュミレートする度に、その処
理単位に対応する実行時間を時間テーブルから読み出し
積算する処理時間算定手段と、この処理時間算定手段の
積算結果と規定時間設定手段により設定された規定時間
とを比較する規定時間比較手段と、この規定時間比較手
段の比較により積算結果が規定時間を超えた場合に告知
を行い、かつ、前記処理算定手段の積算結果を出力する
出力手段とを有する構成をなしている。
As described above, the program development support apparatus according to the present invention includes a specified time setting means for setting a specified time indicating a maximum allowable limit of the program execution time, and a time for setting the execution time of each processing unit used in the program. A time table creating means for creating a table, a simulating means for simulating the processing unit of this program step by step according to each execution procedure of the program, and each time the simulating means simulates one step, it corresponds to the processing unit. The processing time calculating means for reading and integrating the execution time from the time table, the specified time comparing means for comparing the integration result of the processing time calculating means with the specified time set by the specified time setting means, and the specified time comparing means. If the accumulated result exceeds the specified time by comparison, a notification will be given, and It forms a structure and an output means for outputting the integration result of physical calculation means.

これにより、プログラムをリアルタイムで実行すること
なく、シュミレーションにより実行時間を計算すること
ができる。また、この実行時間が規定時間を超過した場
合には、シュミレーションの途上でも直ぐに告知され
る。
As a result, the execution time can be calculated by simulation without executing the program in real time. Also, if the execution time exceeds the specified time, it will be announced immediately even during the simulation.

従って、本発明は、プログラムの実行時間を短時間に計
算でき、しかも時間超過に対して迅速な措置を講じるこ
とができるので、リアルタイム処理プログラムの開発効
率を向上させることができるという効果を奏する。
Therefore, the present invention can calculate the execution time of the program in a short time, and can take a prompt measure against the excess of the time, so that the development efficiency of the real-time processing program can be improved.

【図面の簡単な説明】[Brief description of drawings]

第1図及び第2図は本発明の一実施例を示すものであっ
て、第1図はプログラム開発支援装置のブロック図、第
2図はプログラム開発支援装置の動作を説明するための
フローチャートである。第3図は従来例を示すものであ
って、従来のリアルタイム処理プログラムの開発手順を
示すブロック図である。 1は入力装置、2は規定時間レジスタ、3は時間テーブ
ル、5は比較部、6は処理時間算定部、7はシュミレー
ト部、8はブザー、9はCRT表示装置、10はプリン
タである。
1 and 2 show an embodiment of the present invention. FIG. 1 is a block diagram of a program development supporting apparatus, and FIG. 2 is a flow chart for explaining the operation of the program developing supporting apparatus. is there. FIG. 3 shows a conventional example and is a block diagram showing a development procedure of a conventional real-time processing program. 1 is an input device, 2 is a specified time register, 3 is a time table, 5 is a comparison unit, 6 is a processing time calculation unit, 7 is a simulation unit, 8 is a buzzer, 9 is a CRT display device, and 10 is a printer.

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】プログラムの実行時間の最大許容限度を示
す規定時間を設定する規定時間設定手段と、プログラム
に用いられる各処理単位の実行時間を設定した時間テー
ブルを作成する時間テーブル作成手段と、プログラムの
各実行手順に従って、このプログラムの処理単位を1ス
テップずつシュミレートするシュミレート手段と、この
シュミレート手段が1ステップ、シュミレートする度
に、その処理単位に対応する実行時間を時間テーブルか
ら読み出し積算する処理時間算定手段と、この処理時間
算定手段の積算結果と規定時間設定手段により設定され
た規定時間とを比較する規定時間比較手段と、この規定
時間比較手段の比較により積算結果が規定時間を超えた
場合に告知を行い、かつ、前記処理時間算定手段の積算
結果を出力する出力手段とを有することを特徴とするプ
ログラム開発支援装置。
1. A specified time setting means for setting a specified time indicating a maximum allowable limit of the execution time of a program, and a time table creation means for creating a time table in which the execution time of each processing unit used in the program is set. According to each execution procedure of the program, a simulating means for simulating the processing unit of this program one step at a time, and a processing for reading and integrating the execution time corresponding to the processing unit from the time table each time the simulating means simulates one step. The integration result exceeds the specified time by comparing the time calculation means, the specified time comparison means for comparing the integrated result of this processing time calculation means with the specified time set by the specified time setting means, and this specified time comparison means. In case of notifying, and output the integration result of the processing time calculation means Program development support apparatus characterized by comprising a stage.
JP63052114A 1988-03-04 1988-03-04 Program development support device Expired - Lifetime JPH0652509B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63052114A JPH0652509B2 (en) 1988-03-04 1988-03-04 Program development support device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63052114A JPH0652509B2 (en) 1988-03-04 1988-03-04 Program development support device

Publications (2)

Publication Number Publication Date
JPH01226045A JPH01226045A (en) 1989-09-08
JPH0652509B2 true JPH0652509B2 (en) 1994-07-06

Family

ID=12905839

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63052114A Expired - Lifetime JPH0652509B2 (en) 1988-03-04 1988-03-04 Program development support device

Country Status (1)

Country Link
JP (1) JPH0652509B2 (en)

Also Published As

Publication number Publication date
JPH01226045A (en) 1989-09-08

Similar Documents

Publication Publication Date Title
JP4403794B2 (en) Inspection method, inspection apparatus and inspection program for control program
US20030217354A1 (en) Scope-based breakpoint selection and operation
JPH0854907A (en) Verification support system
JPH0652509B2 (en) Program development support device
JPH0554277A (en) Plant monitor device
JPH08328905A (en) Method and device for simulation
JPH0743657B2 (en) Program development support device
JP2004272830A (en) Device for supporting software development
JP6519530B2 (en) Verification apparatus, verification program, and verification method
JP2008310513A (en) Program test device
US11241962B2 (en) Evaluation apparatus for display arbitration control and generation apparatus for rule definition file
US20020178402A1 (en) System and method for software diagnosis
JPH10274920A (en) Plant simulator
JPH07200351A (en) Program debug method and program debug support device
JPH10214205A (en) Module checking device
JPH07295858A (en) Debug processing method for image processor and parallel computer
JPS6381505A (en) Sequencer simulator
CN111813702A (en) Debugging system, debugging method, device, and computer-readable storage medium
JPH02232744A (en) Constitution control system for simulator
JPH05297913A (en) Programmable controller
Zagar et al. Microprocessor architecture design with ATLAS
JPH0283634A (en) Program debugging system
JPH06301570A (en) Emulator with normality checking function for test program
JPH07105045A (en) Debugging system for information processor function test program
JPH05100898A (en) Program debugging system

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070706

Year of fee payment: 13

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080706

Year of fee payment: 14

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080706

Year of fee payment: 14