JPH08221300A - Program simulator - Google Patents
Program simulatorInfo
- Publication number
- JPH08221300A JPH08221300A JP7021815A JP2181595A JPH08221300A JP H08221300 A JPH08221300 A JP H08221300A JP 7021815 A JP7021815 A JP 7021815A JP 2181595 A JP2181595 A JP 2181595A JP H08221300 A JPH08221300 A JP H08221300A
- Authority
- JP
- Japan
- Prior art keywords
- program
- stop
- condition
- simulation
- instruction
- 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
Links
Landscapes
- Debugging And Monitoring (AREA)
Abstract
Description
【発明の詳細な説明】Detailed Description of the Invention
【0001】[0001]
【産業上の利用分野】本発明はプログラム・シミュレー
タに係り、特に走行プログラムの停止機能と可視化機能
に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a program simulator, and more particularly to a stopping function and a visualizing function of a running program.
【0002】[0002]
〔その1〕現在、オンライン・デバッグを行う方法とし
ては、ターゲット・マシン(実マシン)を使う方法、あ
るいはシミュレータ等のサポートツールを使う方法があ
る。[No. 1] Currently, as a method of performing online debugging, there is a method of using a target machine (actual machine) or a method of using a support tool such as a simulator.
【0003】両方法において、プログラムを途中で停止
させてデバッグを行う場合が多々ある。この停止方法
は、オンライン・プログラムにおいては、プログラムの
走行ルートを書き換える(例えばプログラム中の停止せ
んとするアドレスの命令をプログラム停止命令に書き換
える)ことによって停止させる方法、付加コンソール等
のハード装置によって停止せんとするアドレスを登録
し、プログラムが当該アドレスに到ったら停止させる方
法がある。In both methods, it is often the case that the program is stopped midway for debugging. This stop method is a method of stopping by rewriting the running route of the program in the online program (for example, by rewriting the instruction of the address to be stopped in the program to the program stop instruction), or by a hardware device such as an additional console There is a method of registering the address to be monitored and stopping it when the program reaches the address.
【0004】シミュレータ等のサポートツールにおいて
も、プログラムの走行ルートのアドレスを登録し、その
ルートを走行時に停止させる方法がある。Also in a support tool such as a simulator, there is a method of registering an address of a traveling route of a program and stopping the route during traveling.
【0005】〔その2〕また、現在、プログラムの走行
状態をプログラム・シミュレータを用いて監視、確認す
る方法として以下のようなものがある。[2] At present, there is the following method for monitoring and confirming the running state of a program using a program simulator.
【0006】プログラムの走行履歴情報(データアス
セスを含む)を収集し、プログラム走行終了後に試験者
が同走行履歴情報を参照することで、プログラムの走行
状態を確認する。[0006] The running state of the program is confirmed by collecting running history information (including data access) of the program and referring to the running history information by the tester after the running of the program is completed.
【0007】アドレス・ストップ等を設定してプログ
ラムを停止させ、その後にステップ操作でレジスタ情報
やデータ等のプログラムの走行状態を確認する。The address stop or the like is set to stop the program, and then the running state of the program such as register information and data is confirmed by step operation.
【0008】[0008]
〔その1〕上記従来技術の〔その1〕の問題点として、
両方法はともに、あくまでも、走行アドレスに対しての
停止であるため、デバッグにおいては、特に以下に示す
〜などの例の場合には、プログラムを停止させるこ
とができない。[Part 1] As a problem of [Part 1] of the above-mentioned conventional technology,
Both of these methods are only stopped at the running address, so that the program cannot be stopped during debugging, particularly in the cases of the following cases (1) to (3).
【0009】関数の入力ポインタが“0”等の異常な
値で入って来る場合がたまにある。 フラグの何ビット目に“1”が設定される場合に停止
させたい。 トランザクション等の不特定アドレスのあるデータ
が、特定パターンで破壊された時に停止させたい。 特定の命令パターンの時に停止させたい。 特定のBクラス割込みが発生した時に停止させたい。Occasionally, the input pointer of a function comes in with an abnormal value such as "0". I want to stop when the bit of the flag is set to "1". I want to stop when data with an unspecified address such as a transaction is destroyed in a specified pattern. I want to stop at a specific command pattern. I want to stop when a specific B class interrupt occurs.
【0010】そこで、シミュレータにおいて、多種多様
なパターンでのプログラムの停止を行うことを可能とす
れば、試験を効率的に行うことができる。Therefore, if it is possible to stop the program in various patterns in the simulator, the test can be efficiently performed.
【0011】〔その2〕また、上記従来技術の〔その
2〕の問題点として、この方法だと、リアルタイムにプ
ログラム走行状態を確認することができず、プログラム
の異常動作を発見時に、再度、異常箇所を走行させる必
要があるなど、迅速に情報収集を行うことができない。
このため、プログラムの動作を確認するために試験者に
多大な負荷がかかっている。[Part 2] Further, as a problem of [Part 2] of the above-mentioned prior art, this method cannot confirm the program running state in real time, and when an abnormal operation of the program is found, It is not possible to collect information quickly because it is necessary to drive in an abnormal place.
Therefore, a great burden is placed on the tester to confirm the operation of the program.
【0012】したがって、本発明の目的は、プログラム
・シミュレータにおいて、多種多様なパターンでのプロ
グラムの停止を可能にすることにある。Therefore, it is an object of the present invention to enable a program simulator to stop a program in various patterns.
【0013】また、本発明の他の目的は、プログラム、
シミュレータによるシミュレーション状況を可視化し
て、試験者がプログラムの動作状態をリアルタイムに監
視、確認できるようにすることにある。Another object of the present invention is to provide a program,
It is to visualize the simulation status by a simulator so that the tester can monitor and confirm the operating status of the program in real time.
【0014】[0014]
【課題を解決するための手段】図1は本発明に係る原理
説明図であり、実行時にシミュレーションを停止させる
条件を登録する条件テーブル91と、実行中の被試験プ
ログラムが該条件テーブル91の条件に一致したかをチ
ェックするチェック手段92と、チェック手段92のチ
ェック結果が一致時に被試験プログラムのシミュレーシ
ョンを停止させる走行制御手段93とを備えたプログラ
ム・シミュレータにより構成される。 〔その1〕前述の「発明が解決しようとする課題」の
〔その1〕を解決するために、本発明においては、一つ
の形態として、特定のファンクションまたは命令パター
ンの実行時にシミュレーションを停止させるインストラ
クション・ストップ条件を登録するインストラクション
条件テーブルと、実行中の被試験プログラムが該インス
トラクション条件テーブルの条件に一致したかをチェッ
クするインストラクション・チェック手段と、インスト
ラクション・チェック手段のチェック結果が一致時に被
試験プログラムのシミュレーションを停止させる走行制
御手段とを備えたプログラム・シミュレータが提供され
る。FIG. 1 is a diagram for explaining the principle of the present invention. A condition table 91 for registering conditions for stopping a simulation at the time of execution and a condition of the condition table 91 for the program under test are being executed. The program simulator is provided with a check means 92 for checking whether the check result of the check means 92 and the running control means 93 for stopping the simulation of the program under test when the check result of the check means 92 match. [No. 1] In order to solve [No. 1] of the above-mentioned “Problems to be solved by the invention”, in the present invention, as one form, an instruction to stop the simulation when a specific function or instruction pattern is executed. -The instruction condition table for registering the stop condition, the instruction checking means for checking whether the program under test being executed matches the conditions of the instruction condition table, and the program under test when the check results of the instruction checking means match. There is provided a program simulator provided with a traveling control means for stopping the simulation.
【0015】また他の形態として、特定のデータアクセ
ス時にシミュレーションを停止させるオペランド・スト
ップ条件を登録するオペランド条件テーブルと、実行中
の被試験プログラムが該オペランド条件テーブルの条件
に一致したかをチェックするオペランド・チェック手段
と、該オペランド・チェック手段のチェック結果が一致
時に該被試験プログラムのシミュレーションを停止させ
る走行制御手段とを備えたプログラム・シミュレータが
提供される。As another form, it is checked whether an operand condition table for registering an operand / stop condition for stopping a simulation at a specific data access and whether a program under test match the condition of the operand condition table. There is provided a program simulator including operand check means and travel control means for stopping the simulation of the program under test when the check results of the operand check means match.
【0016】また他の形態として、レジスタの内容が所
定の条件に一致時に時にシミュレーションを停止させる
ストップ条件を登録するレジスタ条件テーブルと、実行
中の被試験プログラムが該レジスタ条件テーブルの条件
に一致したかをチェックするレジスタ・チェック手段
と、該レジスタ・チェック手段のチェック結果が一致時
に該被試験プログラムのシミュレーションを停止させる
走行制御手段とを備えたプログラム・シミュレータが提
供される。As another form, the register condition table for registering a stop condition for stopping the simulation when the content of the register matches a predetermined condition and the program under test match the condition of the register condition table. There is provided a program simulator including a register check means for checking whether or not a check result of the register check means coincides with a running control means for stopping a simulation of the program under test.
【0017】また他の形態として、フリップフロップグ
ループの内容が所定の条件に一致時に時にシミュレーシ
ョンを停止させるストップ条件を登録するフリップフロ
ップ・グループ条件テーブルと、実行中の被試験プログ
ラムが該フリップフロップグループ条件テーブルの条件
に一致したかをチェックするフリップフロップグループ
・チェック手段と、該フリップフロップ・グループ・チ
ェック手段のチェック結果が一致時に該被試験プログラ
ムのシミュレーションを停止させる走行制御手段とを備
えたプログラム・シミュレータが提供される。As another form, a flip-flop group condition table for registering a stop condition for stopping the simulation when the contents of the flip-flop group match a predetermined condition, and the program under test being executed are the flip-flop group condition table. A program including flip-flop group check means for checking whether the conditions of the condition table are met, and running control means for stopping the simulation of the program under test when the check result of the flip-flop group check means is matched. -A simulator will be provided.
【0018】〔その2〕また、前述の「発明が解決しよ
うとする課題」の〔その2〕を解決するために、本発明
においては、プログラム中における走行状態の可視化を
行いたい範囲を指定する範囲指定手段と、該範囲指定手
段で指定された範囲でのプログラムの実行速度を調節す
る実行速度調節手段と、該範囲指定部で指定したプログ
ラム範囲でのプログラム走行情報を収集する収集手段
と、該収集手段で収集したプログラム走行情報を可視表
示する表示手段とを備えたプログラム・シミュレータが
提供される。[Part 2] In order to solve the above-mentioned [Part 2] of the "problem to be solved by the invention", in the present invention, a range in which a running state in a program is desired to be visualized is designated. Range specifying means, execution speed adjusting means for adjusting the execution speed of the program in the range specified by the range specifying means, and collecting means for collecting program running information in the program range specified by the range specifying section, There is provided a program simulator including display means for visually displaying the program running information collected by the collecting means.
【0019】[0019]
〔その1〕シミュレータの走行時の情報により、各チェ
ック手段は対応する条件テーブルを参照して走行プログ
ラムの内容が以下の場合に走行制御手段によりシミュレ
ーションを停止させる。 1.インストラクション・ストップ:特定のファンクシ
ョン、または命令パターン実行時に停止させる。 2.オペランド・ストップ:特定のデータアクセス条件
に一致時、停止させる。 3.レジスタまたはFFG・ストップ:レジスタまたは
FFG(フリップフロップ・グループ)の内容が条件に
一致時、停止させる。 これらのパターンでのプログラムの停止を行うことによ
り、試験効率を向上させることができる。[No. 1] Based on the running information of the simulator, each checking means refers to the corresponding condition table and causes the running control means to stop the simulation when the contents of the running program are as follows. 1. Instruction stop: Stops when a specific function or instruction pattern is executed. 2. Operand stop: Stop when a specific data access condition is met. 3. Register or FFG stop: Stops when the contents of the register or FFG (flip-flop group) match the conditions. The test efficiency can be improved by stopping the program in these patterns.
【0020】〔その2〕ユーザが範囲指定手段と実行速
度調節手段で被試験プログラムの可視化を行いたい範囲
と実行速度の指定をする。収集手段は指定の範囲内であ
った場合、走行情報を収集し、表示部で走行情報を可視
表示する。これにより、ユーザは表示手段の走行情報を
見ることにより、被試験プログラムの走行状態を1ステ
ップごと等に知ることが可能である。また走行速度は実
行速度調節手段により被試験者がプログラム走行を容易
に確認できる速さに調節することができる。[Part 2] The user designates the range and the execution speed at which the program under test is to be visualized by the range specifying means and the execution speed adjusting means. When the collection means is within the specified range, the traveling information is collected and the traveling information is visually displayed on the display unit. Thereby, the user can know the running state of the program under test step by step or the like by looking at the running information on the display means. Further, the running speed can be adjusted by the execution speed adjusting means to a speed at which the person under test can easily confirm the programmed running.
【0021】このように、プログラム・シミュレータに
おいて、プログラムの走行状態を調節することで、プロ
グラム走行状態の可視化を実現でき、また走行状態を表
示する範囲と実行速度を試験者が指定できる。As described above, in the program simulator, the running state of the program can be visualized by adjusting the running state of the program, and the tester can specify the range in which the running state is displayed and the execution speed.
【0022】[0022]
【実施例】以下、図面を参照して本発明の実施例を説明
する。 〔その1〕プログラム・シミュレータの停止機能の実施
例 図2は本発明の一実施例としてのプログラム・シミュレ
ータの停止機能が行う行うシミュレータ・プログラムを
機能ブロック化して表現した図である。図示のように、
このシミュレータ・プログラムはコマンド制御部1、条
件テーブル2、シミュレート実行部3、走行制御部4、
停止種別設定部5などを含み構成される。Embodiments of the present invention will be described below with reference to the drawings. [Part 1] Embodiment of Stop Function of Program Simulator FIG. 2 is a diagram showing functional blocks of a simulator program executed by the stop function of the program simulator as an embodiment of the present invention. As shown,
This simulator program includes a command control unit 1, a condition table 2, a simulation execution unit 3, a travel control unit 4,
The stop type setting unit 5 and the like are included.
【0023】コマンド制御部1はユーザが入力した入力
パラメータ(コマンド)を処理する部分であり、コマン
ド分析機能11、多様化ストップ登録機能12、停止パ
ターン変換機能13などからなる。コマンド分析機能1
1はユーザにより投入された入力パラメータを分析し、
その内容に応じて多様化ストップ登録機能12の該当す
る登録機能を起動する部分である。多様化ストップ登録
機能12は入力パラメータの内容に応じて停止パターン
変換機能13を起動して同停止パターン変換機能13に
より入力パラメータを停止パターンに変換し、その停止
パターンを条件テーブル2の該当するテーブルに登録す
る部分である。The command control section 1 is a section for processing input parameters (commands) input by the user, and comprises a command analysis function 11, a diversification stop registration function 12, a stop pattern conversion function 13 and the like. Command analysis function 1
1 analyzes the input parameters input by the user,
This is a part that activates a corresponding registration function of the diversification stop registration function 12 according to the contents. The diversification stop registration function 12 activates the stop pattern conversion function 13 according to the content of the input parameter, converts the input parameter into the stop pattern by the stop pattern conversion function 13, and the stop pattern is the corresponding table of the condition table 2. This is the part to register with.
【0024】条件テーブル2は、後述する各種停止種別
の条件を登録する部分であり、インストラクション・ス
トップのための条件を登録するインストラクション条件
テーブル21、オペランド・ストップのための条件を登
録するオペランド条件テーブル22、レジスタ・ストッ
プのための条件を登録するレジスタ条件テーブル23、
FFG・ストップのための条件を登録するFFG条件テ
ーブル24等を含み構成される。The condition table 2 is a part for registering conditions of various stop types, which will be described later, and an instruction condition table 21 for registering a condition for instruction stop and an operand condition table for registering a condition for operand stop. 22, a register condition table 23 for registering conditions for register stop,
It is configured to include an FFG condition table 24 for registering conditions for FFG / stop.
【0025】ここで、『インストラクション・ストッ
プ』は、特定のファンクション、または命令パターン実
行時にプログラムを停止させること、『オペランド・ス
トップ』は、特定のデータアクセス条件に一致時にプロ
グラムを停止させること、『レジスタ・ストップ』は、
レジスタの内容が条件に一致時にプログラムを停止させ
ること、『FFG・ストップ』は、FFG(フリップフ
ロップ・グループ)の内容が条件に一致時にプログラム
を停止させることである。Here, "instruction stop" means to stop the program when a specific function or instruction pattern is executed, and "operand stop" means to stop the program when a specific data access condition is met. Register Stop ”
The program is stopped when the contents of the register match the condition, and the "FFG stop" is to stop the program when the contents of the FFG (flip-flop group) match the condition.
【0026】図4にはオペランド・ストップの基本パタ
ーンに対するオペランド条件テーブルの例が示され、図
8にはレジスタ・ストップの基本パターンに対するレジ
スタ条件テーブルの例が示され、図11にはFFG・ス
トップの基本パターンに対するFFG条件テーブルの例
が示される。FIG. 4 shows an example of the operand condition table for the basic pattern of the operand stop, FIG. 8 shows an example of the register condition table for the basic pattern of the register stop, and FIG. 11 shows the FFG / stop. An example of the FFG condition table for the basic pattern is shown.
【0027】メイン・メモリ6はシミュレーション対象
のプログラムを格納するメモリである。図中の(XXX
XXXXX)H はプログラムの実行する命令を16進数
で示している。以降の説明においても、( )H で
囲んだ記号・数字は16進数を表すものとする。また、
以降のアドレス、マスクパターン、インストラクショ
ン、パターン値は16進数とする。The main memory 6 is a memory for storing a simulation target program. (XXX in the figure
XXXXXX) H indicates the instruction executed by the program in hexadecimal. Also in the following description, the symbols and numbers surrounded by () H represent hexadecimal numbers. Also,
Subsequent addresses, mask patterns, instructions, and pattern values are hexadecimal numbers.
【0028】シミュレート実行部3はメイン・メモリ6
に格納されているプログラムの命令を1ステップずつ読
み出して解釈し実行する部分であり、機械命令擬似機能
30、インストラクション・チェック機能31、オペラ
ンド・チェック機能32、レジスタ・チェック機能3
3、FFG・チェック機能34等を含み構成される。機
械命令擬似機能30は実際に走行させている命令を分析
して実行する機能部分である。インストラクション・チ
ェック機能31は実行している命令がインストラクショ
ン・ストップの条件に該当するか否かをチェックする機
能部分である。オペランド・チェック機能32は実行し
ている命令がオペランド・ストップの条件に該当するか
否かチェックする機能部分である。レジスタ・チェック
機能33は実行している命令がレジスタ・ストップの条
件に該当するか否かチェックする機能部分である。FF
G・チェック機能34は実行している命令がFFG・ス
トップの条件に該当するか否かチェックする機能部分で
ある。The simulation execution unit 3 has a main memory 6
Is a part for reading out, interpreting and executing the instructions of the program stored in the step by step, the machine instruction pseudo-function 30, the instruction check function 31, the operand check function 32, the register check function 3
3, FFG / check function 34 and the like. The machine instruction pseudo function 30 is a functional portion that analyzes and executes an actually running instruction. The instruction check function 31 is a functional portion that checks whether or not the instruction being executed corresponds to the instruction stop condition. The operand check function 32 is a functional part that checks whether or not the instruction being executed satisfies the condition of operand stop. The register check function 33 is a functional part that checks whether or not the instruction being executed corresponds to the register stop condition. FF
The G / check function 34 is a functional portion for checking whether or not the instruction being executed satisfies the FFG / stop condition.
【0029】停止種別設定部5は各チェック機能部31
〜34での条件成立時に該当する停止種別(インストラ
クション・ストップ、オペランド・ストップ、レジスタ
・ストップ、FFG・ストップ)を設定する部分であ
る。The stop type setting unit 5 includes check function units 31
This is a part for setting a corresponding stop type (instruction stop, operand stop, register stop, FFG stop) when the conditions in 34 to 34 are satisfied.
【0030】走行制御部4は停止監視機能41を備え、
停止監視機能41により停止種別設定部5を監視して、
条件成立時にシミュレート実行部3によるプログラム・
シミュレートを停止(本体側プログラムの走行を停止)
させてコマンド制御部1を起動させたり、条件が成立し
ない時にはシミュレート実行部3に対して次命令の実行
を指示したりする部分である。The traveling control unit 4 has a stop monitoring function 41,
By monitoring the stop type setting unit 5 with the stop monitoring function 41,
When the condition is satisfied, the program executed by the simulation execution unit 3
Stop simulation (stop running the program on the main unit)
In this case, the command control unit 1 is activated, and when the condition is not satisfied, the simulation execution unit 3 is instructed to execute the next instruction.
【0031】以下、本実施例装置の各種停止種別での動
作を説明する。The operation of the apparatus of this embodiment in various stop types will be described below.
【0032】(I)インストラクション・ストップ(特
定のファンクション、または命令パターン実行時の停
止)の実施例(I) Example of instruction stop (stop when a specific function or instruction pattern is executed)
【0033】例:特定の命令パターンを実行時に停止す
る例。ここでは、実行命令が(****8024)の時
〔但し、*はドント・ケア〕に停止するインストラクシ
ョン・ストップの例を図3を参照して以下に説明するExample: An example of stopping a specific instruction pattern at the time of execution. Here, an example of the instruction stop that stops when the execution instruction is (*** 8024) [where * is don't care] will be described below with reference to FIG.
【0034】(1)コマンド投入時 ユーザが実行命令が(****8024)の時に停止
するコマンド(入力パラメータ)を投入すると、コマン
ド制御部1のコマンド分析機能11によって、入力パラ
メータを分析し、その内容に応じて多様化ストップ登録
機能12を起動する。(1) At command input When the user inputs a command (input parameter) that stops when the execution command is (*** 8024), the command analysis function 11 of the command control unit 1 analyzes the input parameter. , And activates the diversification stop registration function 12 according to the contents.
【0035】多様化ストップ登録機能12により、停
止パターン変換機能13を起動し、入力パラメータを変
換し、インストラクション条件テーブル21に登録す
る。ここでは、入力インストラクション(000080
24)、マスクパターン(0000FFFF)をインス
トラクション条件テーブル21に設定する。The diversified stop registration function 12 activates the stop pattern conversion function 13, converts the input parameter, and registers it in the instruction condition table 21. Here, the input instruction (000080)
24), the mask pattern (0000FFFF) is set in the instruction condition table 21.
【0036】(2)シミュレート実施時 シミュレート実行部3は、メイン・メモリ6に格納の
プログラムの命令(XXXXXXXX)H を読み出すと
ともに、機械命令擬似機能30はインストラクション・
チェック機能31を起動する。(2) At the time of simulating The simulation executing section 3 reads the instruction (XXXXXXXXXX) H of the program stored in the main memory 6, and the machine instruction pseudo-function 30 executes instructions.
The check function 31 is activated.
【0037】インストラクション・チェック機能31
でオンライン・プログラム実行命令(XXXXXXX
X)H とインストラクション条件テーブルの登録データ
とを比較し、インストラクション・ストップの条件が成
立しているか否かチェックする。すなわち、 (00008024)H =(0000FFFF)H &
(XXXXXXXX)H となるかをチェックする。このように、比較は1ワード
の比較で可能である。条件の成立時はへ、不成立時は
へ移行する。Instruction check function 31
Online program execution command (XXXXXXX
X) H is compared with the registered data in the instruction condition table to check whether the instruction stop condition is satisfied. That is, (00008024) H = (0000FFFF) H &
Check whether it becomes (XXXXXXXXXX) H. In this way, the comparison can be made by comparing one word. When the condition is satisfied, moves to, and when the condition is not satisfied, moves to.
【0038】インストラクション・チェック機能31
により条件成立と判定されたら、停止種別設定部5に停
止種別として“インストラクション停止”を設定する。Instruction check function 31
When it is determined that the condition is satisfied, the stop type setting unit 5 sets "stop instruction" as the stop type.
【0039】走行制御部4の停止監視機能41で停止
種別が設定されているか否かを監視する。設定なしの場
合はを行い、設定ありの場合は(3)項を行う。The stop monitoring function 41 of the traveling control unit 4 monitors whether or not the stop type is set. If there is no setting, perform, and if there is setting, perform (3).
【0040】シミュレート実行部3はシミュレートを
続け、走行制御部4はシミュレート実行部3に対して次
命令実行を指示し、(2)項へ移行して次命令に対し
て同じ処理を繰り返す。The simulation execution unit 3 continues the simulation, and the traveling control unit 4 instructs the simulation execution unit 3 to execute the next instruction. Then, the process shifts to the item (2) and the same processing is performed for the next instruction. repeat.
【0041】(3)シミュレート停止時 シミュレート実行部3によるシミュレートを停止(被
シミュレート・プログラムを停止)し、コマンド制御部
1へ処理を渡す。(3) At the time of stopping simulation The simulation by the simulation executing unit 3 is stopped (the simulated program is stopped), and the process is passed to the command control unit 1.
【0042】なお、特定のファンクション実行時停止の
場合には(例:CC000000の実行命令)、インス
トラクション条件テーブルに登録されるインストラクシ
ョン条件は、指定したファンクション(XXXXXXX
X)H 、例(CC000000)H 、マスクパターン
(FFFFFFFF)H となる。When a specific function is stopped during execution (eg, CC000000 execution instruction), the instruction condition registered in the instruction condition table is the specified function (XXXXXXXXX).
X) H , an example (CC000000) H , and a mask pattern (FFFFFFFF) H.
【0043】(II)オペランド・ストップの実施例 オペランド・ストップの基本パターンと、それぞれのオ
ペランド条件テーブルの関係を図4に示す。(II) Example of Operand Stop FIG. 4 shows the relationship between the basic pattern of operand stop and each operand condition table.
【0044】例1:基本パターンが『33333番地に
2以上の値を書込み時停止』のオペランド・ストップを
図5を参照して以下に説明する。Example 1: An operand stop having a basic pattern "Stop when writing a value of 2 or more to 33333 address" will be described below with reference to FIG.
【0045】(1)コマンド投入時 ユーザが『33333番地に2以上の値を書込み時停
止』の入力パラメータを投入すると、コマンド制御部1
のコマンド分析機能11より、入力パラメータを分析
し、多様化ストップ登録機能12を起動する。(1) At command input When the user inputs an input parameter of "Stop when writing a value of 2 or more to 33333 address", the command control unit 1
The command analysis function 11 of 1 analyzes the input parameter and activates the diversification stop registration function 12.
【0046】多様化ストップ登録機能12により停止
パターン変換13を起動し、入力パラメータを停止パタ
ーンに変換し、オペランド条件テーブルに登録する。こ
こでは、アドレス(33333)、条件〔GE(=
>)〕、パターン値(2)、起動関数(書込GE判定)
をオペランド条件テーブル22に登録する。The diversified stop registration function 12 activates the stop pattern conversion 13, converts the input parameter into a stop pattern, and registers it in the operand condition table. Here, the address (33333), the condition [GE (=
>)], Pattern value (2), start function (write GE determination)
Is registered in the operand condition table 22.
【0047】(2)シミュレート実施時 シミュレート実行部3はメイン・メモリ6から命令を
一つ読み出し、シミュレート実行部3の機械命令擬似機
能30で、メイン・メモリ6へのアクセス・アドレスが
オペランド条件テーブル22のアドレスと一致した時
に、オペランド条件テーブル22の該当する基本パター
ンのアドレス・アクセス・フラグをONにする。(2) At the time of simulating The simulation executing unit 3 reads one instruction from the main memory 6, and the machine instruction pseudo function 30 of the simulation executing unit 3 determines the access address to the main memory 6. When the address matches the address of the operand condition table 22, the address access flag of the corresponding basic pattern of the operand condition table 22 is turned ON.
【0048】シミュレート実行部3の機械命令擬似機
能30により、オペランド・チェック機能32を起動す
る。The operand check function 32 is activated by the machine instruction pseudo function 30 of the simulation executing section 3.
【0049】オペランド・チェック機能32で、オペ
ランド条件テーブル22のアドレス・アクセス・フラグ
が、 (a)ONの時、オペランド条件テーブルの起動関数
(GE判定)で条件成立のチェックを行う。条件の成立
時はを行い、不成立時はを行う。 (b)OFFの時、を行う。In the operand check function 32, when the address access flag of the operand condition table 22 is (a) ON, the start function (GE judgment) of the operand condition table is used to check the condition satisfaction. If the condition is satisfied, perform, and if not, perform. (B) When OFF, perform.
【0050】オペランド・チェック機能32で条件成
立と判定された時には、停止種別設定部5の停止種別に
“オペランド停止”を設定する。When the operand check function 32 determines that the condition is satisfied, "stop operand" is set in the stop type of the stop type setting unit 5.
【0051】走行制御部4の停止監視機能41で、停
止種別設定部5に停止種別が設定されているか監視す
る。設定なしの場合はを行い、設定ありの場合は
(3)項を行う。The stop monitoring function 41 of the traveling control unit 4 monitors whether the stop type is set in the stop type setting unit 5. If there is no setting, perform, and if there is setting, perform (3).
【0052】シミュレート実行部3はシミュレートを
続け、走行制御部4はシミュレート実行部3に次命令実
行指示を与え、次命令に対して(2)項を行う。The simulation execution unit 3 continues the simulation, and the traveling control unit 4 gives the simulation execution unit 3 an instruction to execute the next instruction, and executes the item (2) for the next instruction.
【0053】(3)シミュレート停止時 シミュレート停止(被シミュレーション・プログラム
を停止)し、コマンド制御部1へ処理を渡す。(3) At the time of stopping simulation The simulation is stopped (the program to be simulated is stopped), and the process is passed to the command control unit 1.
【0054】例2:基本パターンが『11111番地に
書込み時停止』のオペランド・ストップを図6を参照し
て以下に説明する。Example 2: An operand stop whose basic pattern is "stop when writing to address 11111" will be described below with reference to FIG.
【0055】(1)コマンド投入時 ユーザが『11111番地に書込み時停止』の入力パ
ラメータを投入すると、コマンド制御部1のコマンド分
析機能11により、入力パラメータを分析し、多様化ス
トップ登録機能12を起動する。(1) When command is input When the user inputs the input parameter of "Stop when writing to address 11111", the command analysis function 11 of the command control unit 1 analyzes the input parameter and activates the diversification stop registration function 12. to start.
【0056】多様化ストップ登録機能12により停止
パターン変換機能13を起動し、入力パラメータを変換
し、オペランド条件テーブル22に登録する。ここでは
アドレス(11111)、条件〔DOC(*)〕、パタ
ーン値(−)、起動関数(−)をオペランド条件テーブ
ル22に登録する。The diversification stop registration function 12 activates the stop pattern conversion function 13, converts the input parameter, and registers it in the operand condition table 22. Here, the address (11111), the condition [DOC (*)], the pattern value (-), and the activation function (-) are registered in the operand condition table 22.
【0057】(2)シミュレート実施時 シミュレート実行部3はメイン・メモリ6から命令を
一つ読み出す。シミュレート実行部3の機械命令擬似機
能30で、メイン・メモリ6へのアクセス・アドレスが
オペランド条件テーブル22のアドレスと一致した時
に、オペランド条件テーブル22の該当する基本パター
ンのアドレス・アクセス・フラグをONにする。(2) At the time of simulating The simulation executing unit 3 reads one instruction from the main memory 6. When the access address to the main memory 6 matches the address of the operand condition table 22, the machine instruction pseudo function 30 of the simulation executing unit 3 sets the address access flag of the corresponding basic pattern of the operand condition table 22. Turn it on.
【0058】シミュレート実行部3の機械命令擬似機
能30により、オペランド・チェック機能32を起動す
る。The operand check function 32 is activated by the machine instruction pseudo function 30 of the simulation executing section 3.
【0059】オペランド・チェック機能32で、オペ
ランド条件テーブル22のアドレス・アクセス・フラグ
が、(a)ONの時、読込み/書込みのチェックを行
い、条件が成立時はを行い、不成立時はを行い、
(b)OFFの時、を行う。In the operand check function 32, when the address access flag of the operand condition table 22 is (a) ON, read / write is checked. When the condition is satisfied, is performed, and when it is not satisfied, is performed. ,
(B) When OFF, perform.
【0060】オペランド・チェック機能32で、停止
種別設定部5の停止種別に“オペランド停止”を設定す
る。The operand check function 32 sets "stop operand" in the stop type of the stop type setting unit 5.
【0061】走行制御部4の停止監視機能41で、停
止種別設定部5に停止種別が設定されているか否かを監
視する。設定なしの場合はを行い、設定ありの場合は
(3)項を行う。The stop monitoring function 41 of the traveling control unit 4 monitors whether or not the stop type is set in the stop type setting unit 5. If there is no setting, perform, and if there is setting, perform (3).
【0062】シミュレートを続ける。走行制御部4は
シミュレート実行部3に対して次命令実行指示を行い、
次命令に対して(2)項を行う。Continue the simulation. The traveling control unit 4 instructs the simulation execution unit 3 to execute the next instruction,
Perform item (2) for the next instruction.
【0063】(3)シミュレート停止時 シミュレート停止(被シミュレーション・プログラム
を停止)し、コマンド制御部1へ処理を渡す。(3) At the time of stopping simulation The simulation is stopped (the program to be simulated is stopped) and the process is passed to the command control unit 1.
【0064】例3:基本パターンが『不特定アクセスか
らABCDEの値を読込み時停止』のオペランド・スト
ップを図7を参照して以下に説明する。Example 3: An operand stop having a basic pattern "Stop when reading ABCDE value from unspecified access" will be described below with reference to FIG.
【0065】(1)コマンド投入時 ユーザが『不特定アクセスからABCDEの値を読込
み時停止』のオペランド・ストップのコマンドを投入す
ると、コマンド制御部1のコマンド分析機能11によ
り、入力パラメータを分析し、多様化ストップ登録機能
12を起動する。(1) At command input When the user inputs an operand stop command "Stop when reading ABCDE value from unspecified access", the command analysis function 11 of the command control unit 1 analyzes the input parameters. , Activates the diversification stop registration function 12.
【0066】多様化ストップ登録機能12により停止
パターン変換機能13を起動し、入力パラメータを変換
し、オペランド条件テーブル22に登録する。ここで
は、アドレス(ALL−ADDR)、条件(EQ
(=))、パターン値(ABCDE)、起動関数(書込
EQ判定)、アドレス・アクセス・フラグ(ON)を登
録する。The diversification stop registration function 12 activates the stop pattern conversion function 13, converts the input parameter, and registers it in the operand condition table 22. Here, the address (ALL-ADDR), the condition (EQ
(=)), The pattern value (ABCDE), the activation function (write EQ judgment), and the address access flag (ON) are registered.
【0067】(2)シミュレート実施時 シミュレート実行部3はメイン・メモリ6から命令を
一つ読み出し、機械命令擬似を実行する。(2) At the time of simulating The simulation executing section 3 reads one instruction from the main memory 6 and executes the machine instruction simulation.
【0068】シミュレート実行部3の機械命令擬似機
能30より、オペランド・チェック機能32を起動す
る。The operand checking function 32 is activated by the machine instruction pseudo function 30 of the simulation executing section 3.
【0069】オペランド・チェック機能32で、オペ
ランド条件テーブル22の該当する基本パターンのアド
レス・アクセス・フラグが、(a)ONの時、オペラン
ド条件テーブルの起動関数(EQ判定)で条件成立のチ
ェックを行い、条件が成立時はを行い、不成立時は
を行い、(b)OFFの時、を行う。In the operand check function 32, when the address access flag of the corresponding basic pattern of the operand condition table 22 is (a) ON, the condition is checked by the activation function (EQ judgment) of the operand condition table. If the condition is satisfied, the operation is performed. If the condition is not satisfied, the operation is performed.
【0070】オペランド・チェック機能32で、停止
種別設定部5に停止種別として“オペランド停止”を設
定する。The operand check function 32 sets "operand stop" as the stop type in the stop type setting section 5.
【0071】走行制御部4の停止監視機能41で、停
止種別設定部5に停止種別が設定されているか監視す
る。設定なしの場合はを行い、設定ありの場合は
(3)項を行う。The stop monitoring function 41 of the traveling control unit 4 monitors whether the stop type is set in the stop type setting unit 5. If there is no setting, perform, and if there is setting, perform (3).
【0072】シミュレートを続ける。走行制御部4は
シミュレート実行部3に対して次命令実行指示を行い、
次命令に対して(2)項を行う。Continue the simulation. The traveling control unit 4 instructs the simulation execution unit 3 to execute the next instruction,
Perform item (2) for the next instruction.
【0073】(3)シミュレート停止時 シミュレート停止(被シミュレーション・プログラム
を停止)し、コマンド制御部1へ処理を渡す。(3) At the time of stopping simulation The simulation is stopped (the program to be simulated is stopped), and the process is passed to the command control unit 1.
【0074】(III)レジスタ・ストップの実施例 レジスタ・ストップの基本パターンと、それぞれのレジ
スタ条件テーブルの関係を図8に示す。(III) Embodiment of Register Stop FIG. 8 shows the relationship between the basic pattern of register stop and each register condition table.
【0075】例1:基本パターンが『レジスタ1番地が
H(100)以上の時に停止』のレジスタ・ストップを
行う例を図9を参照して以下に説明する。Example 1: An example of register stop having a basic pattern "Stop when register 1 address is H (100) or more" will be described below with reference to FIG.
【0076】(1)コマンド投入時 ユーザが『レジスタ1番地が100以上の時に停止』
のコマンドを投入すると、コマンド制御部1のコマンド
分析機能11により、入力パラメータを分析し、多様化
ストップ登録機能12を起動する。(1) When a command is entered The user "stops when register 1 address is 100 or more"
When the command is input, the command analysis function 11 of the command control unit 1 analyzes the input parameters and activates the diversification stop registration function 12.
【0077】多様化ストップ登録機能12により停止
パターン変換機能13を起動し、入力パラメータを変換
し、レジスタ条件テーブル23に登録する。ここでは、
レジスタ番号(1)、条件〔GE(=>)〕、パターン
値(100)、起動関数(GE判定)、マスクパターン
(FFFFFFFF)をレジスタ条件テーブル23に登
録する。The diversification stop registration function 12 activates the stop pattern conversion function 13, converts the input parameter, and registers it in the register condition table 23. here,
The register number (1), the condition [GE (=>)], the pattern value (100), the activation function (GE determination), and the mask pattern (FFFFFFFF) are registered in the register condition table 23.
【0078】(2)シミュレート実施時 シミュレート実行部3はメイン・メモリ6から命令を
一つ読み出し、機械命令擬似機能30を実行し、レジス
タ・チェック機能33を起動する。(2) At the time of simulating The simulation executing section 3 reads one instruction from the main memory 6, executes the machine instruction pseudo function 30, and activates the register check function 33.
【0079】シミュレート実行部3のレジスタ・チェ
ック機能33でレジスタ条件テーブル23の起動関数に
より、命令実行時のレジスタ1番の内容(R1)に対し
て、 (R1)&(FFFFFFFF)=>(0000010
0) の条件のチェックを行う。条件が成立時はを行い、不
成立時はを行う。The register check function 33 of the simulation execution unit 3 uses the start function of the register condition table 23 to set the contents (R1) of register 1 at the time of instruction execution to (R1) & (FFFFFFFF) => ( 0000010
Check the condition of 0). If the condition is satisfied, perform, and if not, perform.
【0080】条件成立時、レジスタ・チェック機能3
3で、停止種別設定部5に停止種別として“レジスタ停
止”を設定する。Register check function 3 when conditions are met
At 3, the stop type setting unit 5 sets "register stop" as the stop type.
【0081】走行制御部4の停止監視機能41で、停
止種別設定部5に停止種別が設定されているか否か監視
する。設定なしの場合はを行い、設定ありの場合は
(3)項を行う。The stop monitoring function 41 of the traveling control unit 4 monitors whether or not the stop type is set in the stop type setting unit 5. If there is no setting, perform, and if there is setting, perform (3).
【0082】シミュレートを続ける。走行制御部4は
シミュレート実行部3に対して次命令実行指示を行い、
次命令に対して(2)項を行う。Continue the simulation. The traveling control unit 4 instructs the simulation execution unit 3 to execute the next instruction,
Perform item (2) for the next instruction.
【0083】(3)シミュレート停止時 シミュレート停止(被シミュレーション・プログラム
を停止)し、コマンド制御部1へ処理を渡す。(3) At the time of stopping simulation The simulation is stopped (the program to be simulated is stopped) and the process is passed to the command control unit 1.
【0084】例2:基本パターンが『レジスタ2番の4
ビット目から10ビットの値がH(200)以外の時に
停止』のレジスタ・ストップを図10を参照して以下に
説明する。Example 2: The basic pattern is "4 of register No. 2"
The register stop of "Stop when the value of the 10th bit from the 10th bit is other than H (200)" will be described below with reference to FIG.
【0085】(1)コマンド投入時 ユーザが『レジスタ2番の4ビット目から10ビット
の値がH(200)以外の時に停止』のコマンドを投入
すると、コマンド制御部1のコマンド分析機能11よ
り、入力パラメータを分析し、多様化ストップ登録機能
12を起動する。(1) At the time of command input When the user inputs a command "Stop when the value of 10th bit from the 4th bit of register 2 is other than H (200)", the command analysis function 11 of the command control unit 1 , Analyzes the input parameters and activates the diversification stop registration function 12.
【0086】多様化ストップ登録機能12により停止
パターン変換機能13を起動し、入力パラメータを変換
し、レジスタ条件テーブル23に登録する。ここでは、
レジスタ番号(2)、条件〔NE(/>)〕、パターン
値〔00002000〕、起動関数(NE判定)、マス
クパターン(00003FF0)をレジスタ条件テーブ
ル23に登録する。The diversification stop registration function 12 activates the stop pattern conversion function 13, converts the input parameter, and registers it in the register condition table 23. here,
The register number (2), the condition [NE (/>)], the pattern value [00002000], the activation function (NE judgment), and the mask pattern (00003FF0) are registered in the register condition table 23.
【0087】(2)シミュレート実施時 シミュレート実行部3はメイン・メモリ6から命令を
一つ読み出し、機械命令擬似機能30を実行する。(2) At the time of simulating The simulation executing section 3 reads one instruction from the main memory 6 and executes the machine instruction pseudo function 30.
【0088】シミュレート実行部3のレジスタ・チェ
ック機能33でレジスタ条件テーブル23の起動関数に
より、命令実行時のレジスタ2番の内容(R2)に対し
て、 (R2)&(00003FF0)/=(0000200
0) か否かチェックする。 条件が成立時はを行い、不成
立時はを行う。The register check function 33 of the simulation execution unit 3 uses the start function of the register condition table 23 to set the contents (R2) of register 2 at the time of instruction execution to (R2) & (00003FF0) / = ( 0000200
Check whether it is 0). If the condition is satisfied, perform, and if not, perform.
【0089】レジスタ・チェック機能33で停止種別
設定部5に停止種別として“レジスタ停止”を設定す
る。The register check function 33 sets "register stop" as the stop type in the stop type setting section 5.
【0090】走行制御部4の停止監視機能41で、停
止種別設定部5に停止種別が設定されているか否か監視
する。設定なしの場合はを行い、設定ありの場合は
(3)項を行う。The stop monitoring function 41 of the traveling control unit 4 monitors whether or not the stop type is set in the stop type setting unit 5. If there is no setting, perform, and if there is setting, perform (3).
【0091】シミュレートを続ける。走行制御部4は
シミュレート実行部3に対して次命令実行指示を行い、
次命令に対して(2)項を行う。Continue the simulation. The traveling control unit 4 instructs the simulation execution unit 3 to execute the next instruction,
Perform item (2) for the next instruction.
【0092】(3)シミュレート停止時 シミュレート停止(被シミュレーション・プログラム
を停止)し、コマンド制御部1へ処理を渡す。(3) At the time of stopping simulation The simulation is stopped (the program to be simulated is stopped) and the process is passed to the command control unit 1.
【0093】(IV)FFG・ストップの実施例 FFG・ストップの基本パターンとそれぞれのFFG条
件テーブルの関係を図11に示す。(IV) Example of FFG / Stop FIG. 11 shows the relationship between the basic pattern of FFG / stop and each FFG condition table.
【0094】例:基本パターンが『FFG4番の26ビ
ット目から2ビットの値が1時停止』のFFG・ストッ
プの例を図12を参照して以下に説明する。Example: An example of FFG / stop having a basic pattern of "stop at 1 o'clock from the 26th bit of FFG No. 2 to 2 bits" will be described with reference to FIG.
【0095】(1)コマンド投入時 ユーザが『FFG4番の26ビット目から2ビットの
値が1時停止』のコマンドを投入すると、コマンド制御
部1のコマンド分析機能11より、入力パラメータを分
析し、多様化ストップ登録機能12を起動する。(1) At the time of command input When the user inputs a command "Stop the 2nd bit value from the 26th bit of FFG No. 4 at 1 o'clock", the command analysis function 11 of the command control unit 1 analyzes the input parameters. , Activates the diversification stop registration function 12.
【0096】多様化ストップ登録機能12により停止
パターン変換機能13を起動し、入力パラメータを変換
し、FFG条件テーブル24に登録する。ここでは、F
FG番号(4)、条件〔EQ(=)〕、パターン値〔0
4000000〕、起動関数(EQ判定)、マスクパタ
ーン(0C000000)をFFG条件テーブル24に
登録する。The diversification stop registration function 12 activates the stop pattern conversion function 13, converts the input parameter, and registers it in the FFG condition table 24. Here, F
FG number (4), condition [EQ (=)], pattern value [0
4000000], the activation function (EQ determination), and the mask pattern (0C000000) are registered in the FFG condition table 24.
【0097】(2)シミュレート実施時 シミュレート実行部3はメイン・メモリ6から命令を
一つ読み出し、機械命令擬似機能30を実行する。(2) At the time of simulating The simulation executing section 3 reads one instruction from the main memory 6 and executes the machine instruction pseudo function 30.
【0098】シミュレート実行部3のFFG・チェッ
ク機能34でFFG条件テーブル24の起動関数によ
り、命令実行時のFFG4番の内容(FFG#4)に対
して (FFG#4)&(0C000000)=(04000
000) の条件をチェックする。条件が成立時はを行い、不成
立時はを行う。(FFG # 4) & (0C000000) = with respect to the contents of FFG No. 4 (FFG # 4) at the time of instruction execution by the activation function of the FFG condition table 24 in the FFG / check function 34 of the simulation executing unit 3. (04000
000) condition is checked. If the condition is satisfied, perform, and if not, perform.
【0099】条件成立すると、FFG・チェック機能
34で停止種別設定部5に停止種別として“FFG停
止”を設定する。When the condition is satisfied, the FFG / check function 34 sets "FFG stop" in the stop type setting unit 5 as the stop type.
【0100】走行制御部4の停止監視機能41で、停
止種別設定部5に停止種別が設定されているか否か監視
する。設定なしの場合はを行い、設定ありの場合は
(3)項を行う。The stop monitoring function 41 of the traveling control unit 4 monitors whether or not the stop type is set in the stop type setting unit 5. If there is no setting, perform, and if there is setting, perform (3).
【0101】シミュレートを続ける。走行制御部4は
シミュレート実行部3に対して次命令実行指示を行い、
次命令に対して(2)項を行う。Continue the simulation. The traveling control unit 4 instructs the simulation execution unit 3 to execute the next instruction,
Perform item (2) for the next instruction.
【0102】(3)シミュレート停止時 シミュレート停止(被シミュレーション・プログラム
を停止)し、コマンド制御部1へ処理を渡す。(3) At the time of stopping simulation The simulation is stopped (the program to be simulated is stopped), and the process is passed to the command control unit 1.
【0103】〔その2〕プログラム・シミュレータの走
行プログラムの可視化機能の実施例 次に、本発明の一実施例としてのプログラム・シミュレ
ータによる走行プログラムの可視化機能を説明する。図
13はプログラム・シミュレータの機構を示す図であ
る。[Part 2] Example of Visualization Function of Running Program of Program Simulator Next, the visualization function of the running program by the program simulator as one example of the present invention will be described. FIG. 13 is a diagram showing the mechanism of the program simulator.
【0104】図中、71はユーザが被試験プログラム中
における実行速度調整をするアドレス範囲(プログラム
中における走行状態の監視、確認のため可視化を行いた
い範囲)を指定する実行速度調節範囲指定部である。7
2はユーザが被試験プログラム中の実行速度調整をする
範囲での走行プログラムの実行速度を指定する実行速度
調節機能部である。実行速度は被試験者がプログラム走
行を容易に確認できる速さに調節することが可能であ
る。In the figure, reference numeral 71 denotes an execution speed adjustment range designating section for designating an address range (a range in which the user wants to visualize the running state in the program for monitoring and confirmation) for adjusting the execution speed in the program under test. is there. 7
Reference numeral 2 denotes an execution speed adjustment function unit that specifies the execution speed of the running program within a range where the user adjusts the execution speed in the program under test. The execution speed can be adjusted to a speed at which the person under test can easily confirm the programmed running.
【0105】70は被試験プログラムをシミュレーショ
ンするシミュレーション部であって、このシミュレーシ
ョン部70は実行速度調節範囲指定部71で指定の範囲
内であった場合、プログラム走行情報を収集し、プログ
ラム実行表示部73に情報を送るように促す。プログラ
ム実行表示部73は、シミュレーション部70の走行状
態情報を受け取り、ユーザに走行状態を視覚的に通知す
る。このプログラムの走行状態の内容としては、プログ
ラムの実行アドレス、アクセス・データ、レジスタ情
報、実行命令内容、次実行アクセス等を表示する。ユー
ザは、プログラム実行表示部73を見ることにより、被
試験プログラムの走行状態を1ステップごとに知ること
が可能である。Reference numeral 70 is a simulation section for simulating the program under test. When the simulation section 70 is within the range specified by the execution speed adjustment range specification section 71, the program running information is collected and the program execution display section is displayed. Prompt 73 to send information. The program execution display unit 73 receives the running state information of the simulation unit 70 and visually notifies the user of the running state. As the contents of the running state of the program, the program execution address, access data, register information, execution instruction content, next execution access, etc. are displayed. The user can know the running state of the program under test step by step by looking at the program execution display section 73.
【0106】図16にはプログラム実行表示部73で表
示されるプログラム走行状態の一例が示される。表示内
容としては、レジスタ表示、FFG表示、番地、機械
語、命令、a2、内容(a2)などがあり、図示のよう
に、現に実行している命令の前後のアドレス範囲につい
てこれらの内容を表示し、かつ現に実行している命令は
図示のごとく四角などで囲んで分かるようにする。ま
た、画面内に次実行番地がある場合には矢印(←)で表
示される。なお、レジスタ表示とFFG表示は現に実行
している命令についてのものが一括表示される。FIG. 16 shows an example of the program running state displayed on the program execution display section 73. The display contents include register display, FFG display, address, machine language, instruction, a2, content (a2), etc., and these contents are displayed for the address range before and after the currently executed instruction as shown in the figure. In addition, the instruction currently being executed is surrounded by a square as shown in the figure so that the instruction can be understood. If there is a next execution address on the screen, it is displayed with an arrow (←). The register display and the FFG display collectively display the instructions currently being executed.
【0107】この実施例のプログラム・シミュレータに
よれば、プログラムの走行速度を調節することで、プロ
グラム走行状態の可視化を実現でき、また走行状態を表
示する範囲は試験者が指定できる。According to the program simulator of this embodiment, the traveling speed of the program can be visualized by adjusting the traveling speed of the program, and the range in which the traveling status is displayed can be designated by the tester.
【0108】以下、この実施例のプログラム・シミュレ
ータによる基本的な走行動作を図14のフローチャート
を参照して詳細に説明する。The basic running operation of the program simulator of this embodiment will be described below in detail with reference to the flowchart of FIG.
【0109】(1)基本的なシミュレータの走行(図1
4参照) 〔前処理〕 シミュレータを起動する。(1) Basic simulator running (Fig. 1
4) [Pre-processing] Start the simulator.
【0110】〔シミュレータ・コマンド制御機能〕 シミュレータ・コマンド制御機能として、実行速度調
節範囲指定部71と実行速度調節機能部72により、実
行速度調節範囲と実行速度を登録する。[Simulator Command Control Function] As the simulator command control function, the execution speed adjustment range designating unit 71 and the execution speed adjusting function unit 72 register the execution speed adjustment range and the execution speed.
【0111】シミュレータ・コマンド制御機能から被
試験システム擬似機能を起動する。The simulator command control function starts the system under test pseudo function.
【0112】〔被試験システム擬似機能〕 シミュレート停止しなければならないかを判断する。
停止の場合は’を行い、停止しない場合はを行う。[System under Test Pseudo Function] It is determined whether or not the simulation has to be stopped.
If it is stopped, perform '. If not, perform.
【0113】被試験システムの擬似処理を行う。次に
を行う。Simulate the system under test. Then do the following:
【0114】’アドレス・ストップ、停止ボタン、被
試験プログラムのエラーなどによりシミュレート停止し
なければならない場合は、シミュレータ・コマンド制御
機能を起動し、に戻る。'If it is necessary to stop the simulation due to an address stop, a stop button, an error in the program under test, etc., activate the simulator command control function and return to.
【0115】実行速度調節機能部72により速度調節
が設定されているかを判断する。設定されていれば、
を行う。設定されていなければ、に戻る。It is determined whether the speed adjustment is set by the execution speed adjustment function unit 72. If set,
I do. If not set, return to.
【0116】実行速度調節機能を実施する。The execution speed adjustment function is executed.
【0117】次に、実行速度調節機能の処理手順を図1
5のフローチャートを参照して説明する。この処理は被
試験プログラムが1ステップ実行されるごとに動作す
る。Next, the processing procedure of the execution speed adjusting function is shown in FIG.
This will be described with reference to the flowchart of FIG. This process operates every time the program under test is executed one step.
【0118】シミュレータ・コマンド制御機能によ
り、デバッガ機能の一つである実行速度調節機能を設定
済とする。With the simulator / command control function, the execution speed adjusting function, which is one of the debugger functions, is set.
【0119】被試験プログラムの実行アドレスが実行
速度調節範囲指定部71で設定されているアドレス範囲
内(実行速度調節範囲)のものかの条件が成立している
かを判断する。成立していれば、を行い、成立してい
なければを行う。It is determined whether or not the condition that the execution address of the program under test is within the address range (execution speed adjustment range) set by the execution speed adjustment range designation unit 71 is satisfied. If yes, then do, otherwise do.
【0120】シミュレーション部70で被試験プログ
ラム走行状態情報を収集し、プログラム実行表示部73
に渡す。The simulation section 70 collects the running status information of the program under test, and the program execution display section 73
Pass to.
【0121】プログラム実行表示部73は図16に示
されるような表示形態で被試験プログラム走行状態情報
を表示する。The program execution display section 73 displays the program under test running state information in a display form as shown in FIG.
【0122】被試験プログラムが走行を始めてから速
度調節ボタンがユーザにより押下されたかを調べる。こ
の速度調節ボタンは実行速度調整機能部72での実行速
度の設定後においても実行速度を所望の実行速度に設定
できるようにしたものである。押下された場合にはを
行い、押下されていない場合にはを行う。It is checked whether the speed adjustment button has been pressed by the user since the program under test started running. This speed adjustment button allows the execution speed to be set to a desired execution speed even after the execution speed is set in the execution speed adjustment function unit 72. When the button is pressed, is performed, and when it is not pressed, is performed.
【0123】ユーザにより速度調整ボタンで指定され
た実行速度情報を収集する。The execution speed information designated by the user with the speed adjustment button is collected.
【0124】既に設定してある実行速度から、速度調
整ボタンでユーザに指定された実行速度に変更する。The execution speed already set is changed to the execution speed designated by the user with the speed adjustment button.
【0125】設定された実行速度または変更された実
行速度に従って、被試験プログラムの実行をウェイト状
態とする。The execution of the program under test is put in the wait state according to the set execution speed or the changed execution speed.
【0126】実行速度調節機能を終了し、被試験プロ
グラムの次ステップが実行されるのを待つ。The execution speed adjusting function is terminated, and the execution of the next step of the program under test is waited for.
【0127】[0127]
【発明の効果】以上に説明したように、本発明のプログ
ラム・シミュレータの停止機能によれば、多種多様なパ
ターンでのプログラムの停止を行うことが可能となり、
発生した問題に対する効率的な原因究明、試験の実施を
行うことができる。As described above, according to the stop function of the program simulator of the present invention, it is possible to stop the program in various patterns.
It is possible to efficiently investigate the cause of a problem that has occurred and to carry out a test.
【0128】また本発明のプログラム・シミュレータの
可視化機能によれば、 ・試験者はプログラムの走行状態をリアルタイムに見る
ことができる、 ・プログラムの走行異常を迅速に発見し、原因を容易に
見つけることができる、 ・試験者自身がプログラムの走行履歴、レジスタ情報等
の情報を収集する必要がないので、試験者の負担が軽く
なる、 ・プログラム走行状態を表示する範囲を試験者自身が指
定できる、 ・プログラム走行の速度を試験者が変更できる、など、
プログラムの走行状態がリアルタイムに表示されるた
め、試験者に負担をかけることなく、シミュレーション
上での被試験システムの異常動作確認が容易になる。According to the visualization function of the program simulator of the present invention, the tester can see the running state of the program in real time, and the running abnormality of the program can be found quickly and the cause can be easily found.・ Since the tester does not need to collect information such as program running history and register information, the tester's burden is lightened. ・ The tester can specify the range in which the program running status is displayed.・ The tester can change the speed of program running, etc.
Since the running state of the program is displayed in real time, it is easy to check the abnormal operation of the system under test on the simulation without burdening the tester.
【図1】本発明に係る原理説明図である。FIG. 1 is a diagram illustrating the principle of the present invention.
【図2】本発明の一実施例としてのプログラム・シミュ
レータによる停止機能を実現するシミュレータ・プログ
ラムを機能ブロック化して示した図である。FIG. 2 is a diagram showing, as functional blocks, a simulator program that realizes a stop function by a program simulator as an embodiment of the present invention.
【図3】実施例システムにおけるインストラクション・
ストップの動作例を示す図である。[Fig. 3] Instructions in the embodiment system
It is a figure which shows the operation example of a stop.
【図4】実施例システムにおけるオペランド・ストップ
基本パターンとオペランド条件テーブルを示す図であ
る。FIG. 4 is a diagram showing an operand stop basic pattern and an operand condition table in the embodiment system.
【図5】実施例システムにおけるオペランド・ストップ
の動作例1を示す図である。FIG. 5 is a diagram showing an operation example 1 of an operand stop in the embodiment system.
【図6】実施例システムにおけるオペランド・ストップ
の動作例2を示す図である。FIG. 6 is a diagram showing an operation example 2 of operand stop in the embodiment system.
【図7】実施例システムにおけるオペランド・ストップ
の動作例3を示す図である。FIG. 7 is a diagram showing an operation example 3 of an operand stop in the embodiment system.
【図8】実施例システムにおけるレジスタ・ストップ基
本パターンとレジスタ条件テーブルを示す図である。FIG. 8 is a diagram showing a register stop basic pattern and a register condition table in the embodiment system.
【図9】実施例システムにおけるレジスタ・ストップの
動作例1を示す図である。FIG. 9 is a diagram showing a first operation example of register stop in the embodiment system.
【図10】実施例システムにおけるレジスタ・ストップ
の動作例2を示す図である。FIG. 10 is a diagram showing a second operation example of register stop in the embodiment system.
【図11】実施例システムにおけるFFG・ストップ基
本パターンとFFG条件テーブルを示す図である。FIG. 11 is a diagram showing an FFG / stop basic pattern and an FFG condition table in the example system.
【図12】実施例システムにおけるFFG・ストップの
動作例を示す図である。FIG. 12 is a diagram showing an operation example of FFG / stop in the embodiment system.
【図13】本発明の一実施例としてのプログラム・シミ
ュレータの可視化機能を行う機構を示す図である。FIG. 13 is a diagram showing a mechanism for performing a visualization function of a program simulator as an embodiment of the present invention.
【図14】実施例システムにおける基本的なシミュレー
タ走行の処理手順を示すフローチャートである。FIG. 14 is a flowchart showing a basic simulator traveling processing procedure in the embodiment system.
【図15】実施例システムにおける実行速度調整機能の
処理手順を示すフローチャートである。FIG. 15 is a flowchart illustrating a processing procedure of an execution speed adjustment function in the embodiment system.
【図16】実施例システムにおけるプログラム走行情報
の表示例を示す図である。FIG. 16 is a diagram showing a display example of program running information in the embodiment system.
1 コマンド制御部 2 条件テーブル 3 シミュレート実行部 4 走行制御部 5 停止種別設定部 6 メイン・メモリ 11 コマンド分析機能 12 多様化ストップ登録機能 13 停止パターン変換機能 21 インストラクション条件テーブル 22 オペランド条件テーブル 23 レジスタ条件テーブル 24 FFG条件テーブル 30 機械命令擬似機能 31 インストラクション・チェック機能 32 オペランド・チェック機能 33 レジスタ・チェック機能 34 FFG・チェック機能 41 停止監視機能 70 シミュレーション部 71 実行速度調節範囲指定部 72 実行速度調節機能部 73 プログラム実行表示部 1 Command Control Section 2 Condition Table 3 Simulation Execution Section 4 Travel Control Section 5 Stop Type Setting Section 6 Main Memory 11 Command Analysis Function 12 Diversified Stop Registration Function 13 Stop Pattern Conversion Function 21 Instruction Condition Table 22 Operand Condition Table 23 Register Condition table 24 FFG condition table 30 Machine instruction pseudo function 31 Instruction check function 32 Operand check function 33 Register check function 34 FFG check function 41 Stop monitoring function 70 Simulation unit 71 Execution speed adjustment range specification unit 72 Execution speed adjustment function 73 Program execution display
───────────────────────────────────────────────────── フロントページの続き (72)発明者 喜多山 浩子 神奈川県横浜市港北区新横浜3丁目9番18 号 富士通コミュニケーション・システム ズ株式会社内 (72)発明者 小川 清史 神奈川県横浜市港北区新横浜3丁目9番18 号 富士通コミュニケーション・システム ズ株式会社内 (72)発明者 片山 義明 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 竹田 和正 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 ─────────────────────────────────────────────────── ─── Continuation of the front page (72) Inventor Hiroko Kitayama 3-9-18 Shin-Yokohama, Kohoku Ward, Yokohama City, Kanagawa Prefecture Fujitsu Communication Systems Ltd. (72) Kiyofumi Ogawa Shin-Yokohama, Kohoku Ward, Yokohama City, Kanagawa Prefecture 3-9-18 Fujitsu Communication Systems Ltd. (72) Inventor Yoshiaki Katayama 1015 Ueodachu, Nakahara-ku, Kawasaki-shi, Kanagawa Prefecture 1515 Fujitsu Limited (72) Kazuma Takeda, Ue-Odaka, Nakahara-ku, Kawasaki-shi, Kanagawa Address 1015 within Fujitsu Limited
Claims (5)
の実行時にシミュレーションを停止させるインストラク
ション・ストップ条件を登録するインストラクション条
件テーブルと、 実行中の被試験プログラムが該インストラクション条件
テーブルの条件に一致したかをチェックするインストラ
クション・チェック手段と、 該インストラクション・チャネル手段のチェック結果が
一致時に該被試験プログラムのシミュレーションを停止
させる走行制御手段とを備えたプログラム・シミュレー
タ。1. An instruction condition table for registering an instruction stop condition for stopping a simulation when a specific function or instruction pattern is executed, and whether or not a program under test matches the condition of the instruction condition table. A program simulator comprising instruction checking means and running control means for stopping the simulation of the program under test when the check results of the instruction channel means match.
ンを停止させるオペランド・ストップ条件を登録するオ
ペランド条件テーブルと、 実行中の被試験プログラムが該オペランド条件テーブル
の条件に一致したかをチェックするオペランド・チェッ
ク手段と、 該オペランド・チェック手段のチェック結果が一致時に
該被試験プログラムのシミュレーションを停止させる走
行制御手段とを備えたプログラム・シミュレータ。2. An operand condition table for registering an operand stop condition for stopping a simulation when a specific data is accessed, and an operand check means for checking whether a program under test matches the condition of the operand condition table. And a running control means for stopping the simulation of the program under test when the check results of the operand checking means match.
にシミュレーションを停止させるストップ条件を登録す
るレジスタ条件テーブルと、 実行中の被試験プログラムが該レジスタ条件テーブルの
条件に一致したかをチェックするレジスタ・チェック手
段と、 該レジスタ・チェック手段のチェック結果が一致時に該
被試験プログラムのシミュレーションを停止させる走行
制御手段とを備えたプログラム・シミュレータ。3. A register condition table for registering a stop condition for stopping the simulation when the contents of the register match a predetermined condition, and checking whether the program under test matches the condition of the register condition table. A program simulator comprising register check means and travel control means for stopping the simulation of the program under test when the check results of the register check means match.
条件に一致時に時にシミュレーションを停止させるスト
ップ条件を登録するフリップフロップ・グループ条件テ
ーブルと、 実行中の被試験プログラムが該フリップフロップグルー
プ条件テーブルの条件に一致したかをチェックするフリ
ップフロップグループ・チェック手段と、 該フリップフロップ・グループ・チェック手段のチェッ
ク結果が一致時に該被試験プログラムのシミュレーショ
ンを停止させる走行制御手段とを備えたプログラム・シ
ミュレータ。4. A flip-flop group condition table for registering a stop condition for stopping a simulation when the content of the flip-flop group matches a predetermined condition, and a program under test is a condition of the flip-flop group condition table. A program simulator comprising: a flip-flop group check means for checking whether or not the test result matches, and a running control means for stopping the simulation of the program under test when the check result of the flip-flop group check means matches.
行いたい範囲を指定する範囲指定手段と、 該範囲指定手段で指定された範囲でのプログラムの実行
速度を調節する実行速度調節手段と、 該範囲指定部で指定したプログラム範囲でのプログラム
走行情報を収集する収集手段と、 該収集手段で収集したプログラム走行情報を可視表示す
る表示手段とを備えたプログラム・シミュレータ。5. A range designating unit for designating a range in which a running state is to be visualized in a program, an execution speed adjusting unit for adjusting a program execution speed in the range designated by the range designating unit, and the range. A program simulator comprising: a collecting unit that collects program running information in a program range designated by a designating unit; and a display unit that visually displays the program running information collected by the collecting unit.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7021815A JPH08221300A (en) | 1995-02-09 | 1995-02-09 | Program simulator |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7021815A JPH08221300A (en) | 1995-02-09 | 1995-02-09 | Program simulator |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH08221300A true JPH08221300A (en) | 1996-08-30 |
Family
ID=12065567
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP7021815A Pending JPH08221300A (en) | 1995-02-09 | 1995-02-09 | Program simulator |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH08221300A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010097406A (en) * | 2008-10-16 | 2010-04-30 | Fujitsu Ten Ltd | Simulation system |
-
1995
- 1995-02-09 JP JP7021815A patent/JPH08221300A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010097406A (en) * | 2008-10-16 | 2010-04-30 | Fujitsu Ten Ltd | Simulation system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5896536A (en) | Data triggered trace support for debugging object oriented programs | |
US7302675B2 (en) | System and method for analyzing a graphical program using debugging graphical programs | |
JP2001034504A (en) | Source level debugger | |
US6279104B1 (en) | Debugging system for parallel processed program and debugging method thereof | |
JPH07248941A (en) | Debug support device | |
JPH08221300A (en) | Program simulator | |
JP3085730B2 (en) | Parallel simulation method for complex CPU system | |
JPH08263130A (en) | Simulation system | |
JPH07219980A (en) | Test execution system | |
JPH08278809A (en) | Plant controller | |
JPH0244269A (en) | System for analyzing trouble of lsi | |
JP2533489B2 (en) | Simulation system | |
JPH05250221A (en) | Simulator execution system | |
JPH0233178B2 (en) | ||
JPH1040133A (en) | Software simulator | |
JPH03294934A (en) | Debugger for high level program lenguage | |
JPH1091477A (en) | Control microcomputer device and maintenance tool for the same | |
JPH06324912A (en) | Integrated software debugging supporting device | |
JPH07114485A (en) | Simulation test system execution method | |
JPH0567164A (en) | Logic simulation system | |
JPH04128941A (en) | Simulator for recorder | |
JPH03198132A (en) | Simulation device | |
JPH06175882A (en) | Program debugging method | |
JPH03209534A (en) | Back-up device for development of program | |
JPH02197932A (en) | Regenerating device for abnormal phenomenon of computer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20020423 |