JPH01307837A - Mpu simulation method and mpu simulator - Google Patents

Mpu simulation method and mpu simulator

Info

Publication number
JPH01307837A
JPH01307837A JP63139673A JP13967388A JPH01307837A JP H01307837 A JPH01307837 A JP H01307837A JP 63139673 A JP63139673 A JP 63139673A JP 13967388 A JP13967388 A JP 13967388A JP H01307837 A JPH01307837 A JP H01307837A
Authority
JP
Japan
Prior art keywords
mpu
data
command
execution
debugger
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.)
Granted
Application number
JP63139673A
Other languages
Japanese (ja)
Other versions
JP2803090B2 (en
Inventor
Tetsuji Sato
佐藤 徹次
Satoshi Takaoka
聡 高岡
Yoichi Nagasato
永里 洋一
Yasuto Kaneko
金子 康人
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP63139673A priority Critical patent/JP2803090B2/en
Publication of JPH01307837A publication Critical patent/JPH01307837A/en
Application granted granted Critical
Publication of JP2803090B2 publication Critical patent/JP2803090B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

PURPOSE:To debug a program only with software by filing data of hardware environments and external phenomena and performing simulation based on data of this file. CONSTITUTION:When an MPU simulator is started, data of hardware environments of a simulation object MPU is loaded from a configuration file CF where configuration information is stored. Various timing signals to be supplied to terminals of the MPU are loaded from an external phenomenon file EPF as test data. A target program TP as the debugging object is loaded to memory table MRTY. When execution of the program TP is indicated in this state, a debugger DBG instructs an MPU module MM to execute and stop instructions of the MPU, and execution of instructions of the MPU is simulated in the module MM.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、MPU(マイクロプロセッサユニット)によ
り制御される機器を開発する際に使用されるンミュレー
タ装置に関し、特に、制御プログラムのデバッグを行う
ための7ミユレーンヨン方法及びンミュレータに関する
[Detailed Description of the Invention] [Industrial Application Field] The present invention relates to an emulator device used when developing equipment controlled by an MPU (microprocessor unit), and in particular, to an emulator device for debugging a control program. 7 Millennium method and simulator for.

〔従来の技術〕[Conventional technology]

近年、MPUにより電気機器等を制御することが一般的
に行われている。MPUは、論理演算ユニット プログ
ラムメモリ、データメモリ、レジスタ、インターフェー
ス等が同一チップ内に形成された集積回路であり、プロ
グラムを変えることにより種々の制御を行うことができ
る。
In recent years, it has become common practice to control electrical devices and the like using MPUs. The MPU is an integrated circuit in which a logic operation unit, program memory, data memory, register, interface, etc. are formed on the same chip, and can perform various controls by changing the program.

このMPUにより制御される機器は、基本的には三つの
部分に分けられる。たとえば、複写機を例に挙げて説明
すると、第27図に示されるように、複写機本体201
、MPU202及びこの両者間のインターフェースを行
う電気回路基板203  とから構成されている。
The equipment controlled by this MPU is basically divided into three parts. For example, taking a copying machine as an example, as shown in FIG.
, an MPU 202, and an electric circuit board 203 that provides an interface between the two.

複写機本体201 には、複写動作状態を検出するため
のセンサ及びコントロールパネルからの指示をスカする
ためのスイッチ等が設けられており、これらのセンサ、
スイッチ等からの入力は、−旦電気回路基板203 に
供給され、ここで所定の信号処理が行われたのちM P
、U2O5に入力データとして供給される。また、入力
のなかの成るものは割込信号としてM P U2O5に
供給される。M P U2O5で所定の処理が行われた
出力データは、電気回路基板203 に供給され、この
電気回路基板203 からは、複写機本体201 に設
けられたモータ、ソレノイド等の駆動部品を制御するた
めの信号を出力する。
The copying machine main body 201 is provided with a sensor for detecting the state of copying operation and a switch for receiving instructions from the control panel.
Inputs from switches etc. are first supplied to the electric circuit board 203, where predetermined signal processing is performed, and then the M P
, U2O5 as input data. Also, some of the inputs are provided as interrupt signals to MPU2O5. The output data that has undergone predetermined processing in the MPU2O5 is supplied to an electric circuit board 203, and from this electric circuit board 203, data is sent to control driving parts such as motors and solenoids provided in the copying machine body 201. Outputs the signal.

このようなM P U2O5により制御される複写機を
開発する際には、複写機本体201 の設計、すなわち
、機構設計及び電気回路設計に並行してソフトウェア開
発、すなわち、当該機器のMPUで実行されるターゲッ
トプログラムの開発が行われる。
When developing a copying machine controlled by such an MPU2O5, in parallel with the design of the copying machine body 201, that is, the mechanical design and the electrical circuit design, software development, that is, software that is executed by the MPU of the device, is carried out. A target program will be developed.

第28図はMPUにより制御される機器を開発する場合
の一般的な開発手順を示したもので、製品が企画される
と、基本的な仕様が設計され、この仕様に基づいて機構
設計、電気回路設計及びソフトウェア開発が並行して行
われる。
Figure 28 shows the general development procedure when developing equipment controlled by an MPU. When a product is planned, basic specifications are designed, and based on these specifications, mechanical design and electrical Circuit design and software development are carried out in parallel.

ここで、従来のソフトウェア開発に関して説明する。Here, conventional software development will be explained.

先ず、開発の対象となる複写機で使用されるMPU1す
なわち、ターゲットMPUのソフトウェアの仕様が作成
される。そして、この仕様に基づいてソースプログラム
が作成される。このソースプログラムの作成及び編集に
際しては、開発ツールとして、たとえば、ミニコンピユ
ータ上のエディタが使用される。そして、このソースプ
ログラムが、開発ツールのコンパイラ或いはアセンブラ
によりオブジェクトプログラムに変換される。この後に
、このオブジェクトプログラムに対してデバッグを行う
必要がある。
First, the software specifications of the MPU 1 used in the copying machine that is the object of development, that is, the target MPU, are created. A source program is then created based on this specification. When creating and editing this source program, an editor on a minicomputer, for example, is used as a development tool. This source program is then converted into an object program by the compiler or assembler of the development tool. After this, it is necessary to debug this object program.

このため、従来はデバッグ用の開発ツールとして一般に
インサーキットエミュレータが使用される。このインサ
ーキットエミュレータは、前記MPUに置換して接続さ
れ、MPUの動作をシミュレートするもので、1ステツ
プ毎の動作、レジスタ内容等の表示等が可能となってい
る。
For this reason, conventionally, in-circuit emulators are generally used as development tools for debugging. This in-circuit emulator is connected to replace the MPU and simulates the operation of the MPU, and is capable of displaying the operation of each step and the contents of registers.

〔発明が解決しようとする課題〕[Problem to be solved by the invention]

しかしながら、従来のインサーキットエミュレータは、
実際の電気回路基板203 に接続されて使用されるも
のであり、この電気回路基板203 の試作が完成する
までは、デバッグ作業を開始することができずデバッグ
偉業が遅れてしまう。このため、設計期間の制約等から
完全なデバッグが行われる前に、次の実機デバッグの工
程に送られる。
However, traditional in-circuit emulators
It is used by being connected to the actual electric circuit board 203, and debugging cannot begin until the prototype of this electric circuit board 203 is completed, which delays the debugging process. For this reason, due to design period constraints, etc., the device is sent to the next step of actual device debugging before complete debugging is performed.

この実機デバッグでは、ターゲラ)MPUが実際の電気
回路或いは機構部分と組み合わされソフトウェアが検査
されるが、この段階で多数のバグが発見されるいう不都
合が生じる。また、この段階で発見されるトラブルは原
因追及及び対策に非常に手間がかかり、このためンステ
ム全体としての開発効率が著しく低下するという問題が
あった。
In this actual device debugging, the Targetera MPU is combined with an actual electrical circuit or mechanical part and the software is inspected, but a large number of bugs are discovered at this stage. In addition, troubles discovered at this stage require a great deal of time and effort to investigate the cause and take countermeasures, resulting in a problem in that the development efficiency of the system as a whole is significantly reduced.

また、デバッグの対象とすることができるMPUは1種
類のみであり、MPUの種類が変わった場合は別のイン
サーキットエミュレータを使用する必要があった。更に
は、従来のインサーキットシミュレータにおいては、M
PUの入力端子に供給される信号は予め決められた静的
な電圧であり、実際の動作時のように入力端子に供給さ
れる信号を動的に変化させてシミュレーションを行うこ
とはできなかった。
Further, only one type of MPU can be debugged, and when the type of MPU changes, it is necessary to use another in-circuit emulator. Furthermore, in conventional in-circuit simulators, M
The signal supplied to the input terminal of the PU is a predetermined static voltage, and it was not possible to perform simulations by dynamically changing the signal supplied to the input terminal as in actual operation. .

本発明は、上述の問題点を解決するために案出されたも
のであって、ソフトウェア開発に際してソフトウェア単
体でのデバッグを可能にすると共に、複数のMPUに容
易に対応できるようにすることを目的とする。
The present invention was devised to solve the above-mentioned problems, and its purpose is to enable debugging of a single piece of software during software development, and to easily support multiple MPUs. shall be.

〔課題を解決するための手段〕[Means to solve the problem]

本発明のMPUシミュレーション方法は、前記目的を達
成するため、シミュレーションの対象となるMPUのハ
ードウェア構成情報及び前記MPUの端子に供給する各
種タイミング信号をファイルデータとして読み込むと共
に、デバッグの対象となるターゲットプログラムを読み
込み、これらのデータを使用してシミ5レーシヨンの対
象となるMPUに固有の命令実行構造にしたがってター
ゲットプログラムの実行をシミュレートすることを特徴
とする。
In order to achieve the above object, the MPU simulation method of the present invention reads the hardware configuration information of the MPU to be simulated and various timing signals supplied to the terminals of the MPU as file data, and also It is characterized by reading a program and using these data to simulate the execution of the target program according to the instruction execution structure specific to the MPU to be subjected to simulation.

また、本発明のMPUシミュレータは、前記目的を達成
するため、シミュレーションの対象と、なるMPUのハ
ードウェア構成情報を格納する構成情報ファイルと、前
記MPUの端子に供給する各種タイミング信号のデータ
を格納する外部事象ファイルと、端末からの入力コマン
ド或いは端末への表示情報の処理を行うユーザインター
フェースと、該ユーザインターフェースを介して入力さ
れたコマンドに基づいてターゲットプログラムがロード
されているメモリテーブルの内容の変更1表示、ターゲ
ットプログラムの実行、停止等を指示するデバッガと、
該デバッガからの指示に基づき前記構成情報ファイル及
び外部事象ファイルからのデータを使用してシミュレー
ションの対象となるMPUに固有の構造にしたがってタ
ーゲットプログラムの実行をシミュレートするMPUモ
ジュールとを備えたことを特徴とする。
Furthermore, in order to achieve the above object, the MPU simulator of the present invention stores a configuration information file that stores hardware configuration information of the MPU to be simulated, and data of various timing signals to be supplied to the terminals of the MPU. an external event file for processing, a user interface for processing input commands from a terminal or information displayed on the terminal, and a memory table contents into which a target program is loaded based on commands entered via the user interface. A debugger that instructs to display change 1, execute target program, stop, etc.
and an MPU module that simulates the execution of the target program according to a structure specific to the MPU to be simulated using data from the configuration information file and the external event file based on instructions from the debugger. Features.

〔作用〕[Effect]

本発明の作用を第1図を参照して具体的に例を挙げて説
明する。
The operation of the present invention will be explained in detail by giving an example with reference to FIG.

本発明においては、MPUシミニレータが起動されると
、構成情報が格納されたコンフィグレーションファイル
CFからシミュレーションの対象となるMPUのハード
ウェア環境のデータがロードされると共に、MPUの端
子に供給されるべき各種タイミング信号が外部事象ファ
イノ叶PF からテストデータとしてロードされる。更
に、デバッグの対象となるターゲットプログラムTPが
メモリテーブルMRYTにロードされる。この状態でタ
ーゲットプログラムTPの実行を指示すると、デバッガ
DBGからMPUモジュールMMにMPUのインストラ
クションの実行、停止等が指示され、M P Uモジュ
ールMMにふいてMPUのインストラクションの実行が
シミュレートされる。したがって、略実機のものと同じ
ハードウェア環境のもとてオブジェクトプログラムが実
行される。
In the present invention, when the MPU simulator is started, data on the hardware environment of the MPU to be simulated is loaded from the configuration file CF in which configuration information is stored, and is to be supplied to the terminals of the MPU. Various timing signals are loaded as test data from the external event PF. Furthermore, the target program TP to be debugged is loaded into the memory table MRYT. When the execution of the target program TP is instructed in this state, the debugger DBG instructs the MPU module MM to execute or stop the MPU instructions, and the execution of the MPU instructions is simulated by the MPU module MM. Therefore, the object program is executed under substantially the same hardware environment as that of the actual machine.

このM P Uのシミュレーションに際しては、ユーザ
インターフェース旧Fを介してキーボード等からデバッ
ガDBG に各種コマンドが入力され、デバッガDBG
からの指示に基づきMPUモジュール!、+ 3.1に
おいてMPUのインストラクンヨンの実行がシミュレー
トされる。実行結果はユーザインターフェースUIF 
を介してデイスプレィ等に表示される。プログラムの実
行中にトラブルが生じた場合、このトラブルは、端末の
デイスプレィ等に表示されるので、ユーザはそのトラブ
ルの原因をデバッガDBG のコマンドを使用して解析
し、修正する。
When simulating this MPU, various commands are input to the debugger DBG from the keyboard etc. via the user interface old F, and the debugger DBG
MPU module based on instructions from! ,+3.1 the execution of the MPU instructions is simulated. The execution result is the user interface UIF
displayed on a display etc. via . If a trouble occurs during program execution, this trouble is displayed on the terminal display, etc., and the user uses commands from the debugger DBG to analyze and correct the cause of the trouble.

前記MPUモジュールM Mは、M P Uの種類に応
じてそれぞれ設けられており、MPUシミュレーク起動
時の指示に基づいてシミュレーンヨンの対象となるMP
Uに対応したMPUモジュール!AMが選択される。し
たがって、MPUの種類が異なった場合でも、デバッガ
DBG、ユーザインターフェース旧F等を共通に使用す
ることができる。すなわち、MPUモジュール)Aλ1
を切り換えるだけで、多数種のMPUに容易に対応が可
能となる。
The MPU modules M are provided depending on the type of MPU, and select the MPU to be simulated based on an instruction when starting the MPU simulation.
MPU module compatible with U! AM is selected. Therefore, even if the types of MPUs are different, the debugger DBG, user interface old F, etc. can be used in common. That is, MPU module)Aλ1
By simply switching, it is possible to easily support many types of MPUs.

〔実施例〕〔Example〕

以下、図面を参照しながら実施例に基づいて本発明の特
徴を具体的に説明する。なお、本実施例においては、M
PUで制御される複写機の制御プログラムを開発する場
合を例に挙げて説明する。
DETAILED DESCRIPTION OF THE INVENTION Hereinafter, features of the present invention will be specifically described based on examples with reference to the drawings. In addition, in this example, M
An example of developing a control program for a copying machine controlled by a PU will be described.

第2図は本発明のMPUシミュレータを含む複写機ンミ
ュレータ全体のソフトウェア構成の階層構造例を示す説
明図、第3図は本発明のMPUシミュレータのソフトウ
ェア構成例の概略を示す説明図である。
FIG. 2 is an explanatory diagram showing an example of the hierarchical structure of the entire software configuration of a copying machine simulator including the MPU simulator of the present invention, and FIG. 3 is an explanatory diagram showing an outline of an example of the software configuration of the MPU simulator of the present invention.

第2図に示すように、本実施例のMPUシミュレータM
Sは、複写機の動作をシミュレートする複写機シミユレ
ータC3を構成する複数のプログラムブロックの一つと
して位置している。
As shown in FIG. 2, the MPU simulator M of this embodiment
S is located as one of a plurality of program blocks constituting a copying machine simulator C3 that simulates the operation of a copying machine.

すなわち、複写機シミュレータC3は、MPUのハード
ウェア設定に関する情報を生成するコンフィグレーショ
ン生成部CG、MPUの入力端子への信号の変化状態を
示すテストデータを生成する外部事象データ生成!EP
DG及びMPUのシミュレーションを行うMPUシミュ
レータMSから構成されている。
That is, the copying machine simulator C3 includes a configuration generation unit CG that generates information regarding the hardware settings of the MPU, and an external event data generation unit that generates test data indicating the changing state of the signal to the input terminal of the MPU. EP
It consists of an MPU simulator MS that performs DG and MPU simulation.

M P U ’y ミ、 レークMSハ、U N I 
X (登録商標)と呼ばれるオペレーティングシステム
の管理下でMPUのシミュレーションを実行するもので
、第3図に示すように、ツリー構造を有する5個のサブ
システムから構成されている。
M P U 'y Mi, Lake MS Ha, UN I
It executes MPU simulation under the management of an operating system called X (registered trademark), and as shown in FIG. 3, it consists of five subsystems having a tree structure.

すなわち、プログラムを起動させるためのシミュレータ
SIM、後述するユーザインターフェースIIIFから
のコマンドを受けてそれに応じた処理を行うデバフガD
OG、 M P Uの1インストラクシヨンの実行等を
行うMPUモジュール!J )、l 、  端末のキー
ボード等からのコマンドを解析してデバッガ08G が
理解できる形式に変換して渡すと共に処理結果を端末の
デイスプレィ等に返すユーザインターフェースUIF 
及びターゲットプログラムTPをMPUの仮想メモリ空
間、たとえば、メモリテーブルM RY Tにロードす
るローダLDRから構成されている。
That is, a simulator SIM for starting a program, and a debuffer D that receives commands from the user interface IIIF (described later) and processes accordingly.
An MPU module that executes one instruction of OG and MPU! J), l, User interface UIF that analyzes commands from the terminal's keyboard, etc., converts them into a format that can be understood by the debugger 08G, passes them on, and returns processing results to the terminal's display, etc.
and a loader LDR that loads the target program TP into the virtual memory space of the MPU, for example, the memory table MRYT.

これらのサブシステムの詳細については後述するが、各
サブシステムは互いに独立性が高く、後述するように、
たとえば、MPUモジュールHを切り換えることにより
種々のMPUのシミュレーンヨンが可能となっている。
The details of these subsystems will be described later, but each subsystem is highly independent of each other, and as described later,
For example, by switching the MPU module H, it is possible to simulate various MPUs.

また、それぞれのサブシステムは、他のサブシステムか
ら呼び出される関数を有するエン) IJ−モジュール
と、種々の内部処理を行うサブモジュールから構成され
ている。
Furthermore, each subsystem is composed of an IJ module that has functions called from other subsystems, and submodules that perform various internal processes.

第4図は、本実施例のMPUシミュレータのハードウェ
ア構成を示すブロック図である。
FIG. 4 is a block diagram showing the hardware configuration of the MPU simulator of this embodiment.

第4図において、1はMPUシミュレータ全体の制御及
びデータ処理を行う中央処理装置である。
In FIG. 4, 1 is a central processing unit that controls the entire MPU simulator and processes data.

この中央処理装置1には、メインメモリ2が接続されて
いる。更に、中央処理装置1にはシリアルデータライン
3aを介して各種データ及び指示を入力するキーボード
4及び処理結果等を表示するためのデイスプレィ5が接
続されている。なお、キーボード4及びデイスプレィ5
からなる端末は複数組配置され、中央処理装置1では時
分割的に複数のタスクを処理するようになっている。ま
た、中央処理装置1のバス3には、プログラム及びデー
タを格納するディスク装置6等が接続される。
A main memory 2 is connected to the central processing unit 1 . Furthermore, a keyboard 4 for inputting various data and instructions and a display 5 for displaying processing results etc. are connected to the central processing unit 1 via a serial data line 3a. In addition, keyboard 4 and display 5
A plurality of sets of terminals are arranged, and the central processing unit 1 processes a plurality of tasks in a time-sharing manner. Further, a disk device 6 for storing programs and data is connected to the bus 3 of the central processing unit 1.

前記ディスク装置6には、MPUシミュレータで実行中
の全ての処理に関して、その実行中に必要なプログラム
本体、データ等のソフトウェア資源がファイルとして格
納されており、プログラムの実行に際しては、このディ
スク装置6内のプログラム及びデータをメインメモリ2
にロードし、中央処理装置1はこれらのソフトウェア資
源を使用して必要な処理を進める。
The disk device 6 stores, as files, software resources such as program bodies and data necessary for all processes being executed by the MPU simulator, and when executing the program, the disk device 6 The programs and data in main memory 2
The central processing unit 1 uses these software resources to proceed with necessary processing.

本実施例のMPUシミュレータにおける各サブシステム
の関係を第5図を参照して説明する。
The relationship between each subsystem in the MPU simulator of this embodiment will be explained with reference to FIG.

図に示されるように、本実施例のMPUシミュレータは
、大きく分けてンミュレータSIM、デバッガDBG、
 M P UモジュールM)4.ユーザインターフェー
ス[IIF及びローダLDRの5個のサブシステムから
構成されている。
As shown in the figure, the MPU simulator of this embodiment is broadly divided into emulator SIM, debugger DBG,
MPU module M)4. User interface [consists of five subsystems: IIF and loader LDR.

そして、これらのサブシステムに対して、ターゲットプ
ログラムTP、  コンフィグレーションファイルCF
、  外部事象ファイルEPF、 )レースファイルT
F等の外部ファイルが設けられる。
And for these subsystems, target program TP, configuration file CF
, external event file EPF, ) race file T
An external file such as F is provided.

また、外部テーブルとして、コンフィグレーションテー
ブルCFGT、  外部事象テーブノ叶PT、コマンド
テーブルCM D T 、  レジスタ情報テーブルR
IT、端子機能テーブルTPT、 M P U実行ステ
ータステーブル!、1EST、  メモリテーブル!J
 RY T 、  メツセージテーブル!、l S G
 Tが設けられる。更に、外部バッファとしてメツセー
ジバッファ)、IBが設けられる。
In addition, the external tables include the configuration table CFGT, external event table PT, command table CMDT, and register information table R.
IT, terminal function table TPT, MPU execution status table! , 1EST, Memory table! J
RYT, message table! , l S G
T is provided. Furthermore, a message buffer (message buffer) and IB are provided as external buffers.

以下、各ファイル及びテーブルの構成の概略について説
明する。なお、項目の詳細については、後述する。
The outline of the configuration of each file and table will be explained below. Note that details of the items will be described later.

ターゲットプログラムTPは、ユーザがシミュレータ上
で動作させたい、すなわち、デバッグの対象となるヘキ
サフォーマットファイル形式のプログラムであってディ
スクファイルである。なお、ここでディスクファイルと
は、第4図に示すディスク装置6内に格納されるファイ
ルを意味する。
The target program TP is a disk file and is a program in a hex format file format that the user wants to run on the simulator, that is, to be debugged. Note that the disk file here means a file stored in the disk device 6 shown in FIG. 4.

コンフィグレーションファイルCFは、シミュレーショ
ンの対象となるMPUに対応して、M P U動作クロ
ック、外部事象ファイルのデフォルトのファイル名、増
設RAMやROMの容量及びアドレス、シリアルクロク
の周波数、MPU種別等のMPUハードウェアデータを
格納するディスクファイルであり、シミュレータS I
 M の起動に先立って、第2図に示すコンフィグレー
ション生成部CGにより必要データが生成され、コンフ
ィグレーションファイルCFに格納される。
The configuration file CF contains information such as the MPU operating clock, default file name of external event file, capacity and address of additional RAM and ROM, serial clock frequency, MPU type, etc., corresponding to the MPU to be simulated. This is a disk file that stores MPU hardware data, and is a disk file that stores MPU hardware data.
Prior to the activation of M, necessary data is generated by the configuration generator CG shown in FIG. 2 and stored in the configuration file CF.

また、コンフィグレーションテーブルCFGTは、コン
フィグレーションファイルCFに対応するメモリファイ
ルである。このコンフィグレーションテーブルCFGT
は、ユーザが定義したコンフィグレーションファイルC
Fを解析して生成されるもので第6図に示す構成を有し
ており、その内容を第1表に示す。
Further, the configuration table CFGT is a memory file corresponding to the configuration file CF. This configuration table CFGT
is the user-defined configuration file C
It is generated by analyzing F and has the configuration shown in FIG. 6, and its contents are shown in Table 1.

第1表 なお、ID番号はMPUの種別を示す8ビツトのデータ
であって、たとえば、A/D変換器を内蔵した日本電気
株式会社製の8ピツトのMPUであるμP07810に
は、「0」を割り当て、μP07810・のプログラム
内蔵型であるμP07811には「1」を割り当てる。
Table 1 Note that the ID number is 8-bit data that indicates the type of MPU. "1" is assigned to the μP07811, which is a built-in program version of the μP07810.

同様に他の種別のMPUに対しでもそれぞれ異なったI
D番号を割り当てる。
Similarly, different I
Assign a D number.

外部事象ファイルEPF は、MPUの端子に供給され
る信号の性質、たとえば、論理信号名、端子機能名、属
性1人出力種別、開始時間、繰り返し回数、データ自体
等を格納するディスクファイルであって、シミュレータ
SIMの起動に先立って、第2図に示す外部事象データ
生成部EFDGによりデータ文として作成される。
The external event file EPF is a disk file that stores the properties of signals supplied to the terminals of the MPU, such as logical signal names, terminal function names, attribute single output type, start time, number of repetitions, and data itself. , is created as a data statement by the external event data generation unit EFDG shown in FIG. 2, prior to starting up the simulator SIM.

論理信号名は、ユーザが任意につける信号名であって、
入力を省略したときは以下に説明する端子機能名と同一
になる。
A logical signal name is a signal name arbitrarily assigned by the user,
If the input is omitted, it will be the same as the terminal function name explained below.

端子機能名は、MPUの端子又は端子群についての名称
であり、後述するように予め決められた名称を使用する
The terminal function name is a name for a terminal or a group of terminals of the MPU, and uses a predetermined name as described later.

また、属性はデータの属性を指定するもので、rdJは
8ビツトデータを意味する。また、「S」は1ビツトデ
ータすなわち2.値の信号データであることを意味する
。なお、この属性は端子機能名と対になっている。
Further, the attribute specifies the attribute of data, and rdJ means 8-bit data. Moreover, "S" is 1-bit data, that is, 2. It means that it is value signal data. Note that this attribute is paired with the terminal function name.

入力/出力種別は、入力、出力を区別するもので、Fi
lはMPUへの入力を意味し、「0」はMPUからの出
力を意味する。
The input/output type distinguishes between input and output, and Fi
l means input to the MPU, and "0" means output from the MPU.

開始時間は、データの開始時間をM P Uのクロック
数で指定するもので、シミュレータが後述する「ラン(
run) J又は[ステップ(step) J コ?ン
ドにより実行を開始してからの積算クロックが指定のク
ロックに達した時点でデータが有効となる。
The start time specifies the start time of data using the number of MPU clocks, and the simulator specifies the start time of the data as described below.
run) J or [step (step) J ko? The data becomes valid when the accumulated clock after starting execution by the command reaches the specified clock.

繰り返し回数は、指定のデータの繰り返し回数を指定す
るものである。
The number of repetitions specifies the number of times specified data is repeated.

データは、属性にしたがってデータ自体を定義するもの
で、8ビツトデータの場合は16進2桁で指定され、信
号データの場合は「h」又は「1」で指定される。
The data itself is defined according to the attribute, and in the case of 8-bit data, it is specified by two hexadecimal digits, and in the case of signal data, it is specified by "h" or "1".

この外部事象ファイルEPF におけるデータ文の例を
以下に示す。
An example of a data statement in this external event file EPF is shown below.

data  s+data、rxd、d、+、150,
3.”30.if”このデータ文で定義された信号は、
論理信号名がrsidajaJの入力8ビツトデータで
あって、積算クロックが150の特売から、端子機能名
がrrxdJの端子にr30J、 Nfjのデータが3
回繰り返して供給されることを示している。
data s+data, rxd, d, +, 150,
3. "30.if" The signal defined in this data statement is
The logic signal name is input 8-bit data of rsidajaJ, and the integrated clock is 150 from the special sale, r30J is input to the terminal with the terminal function name rrxdJ, and the data of Nfj is 3.
This indicates that it will be supplied repeatedly.

data adataQ、 paQ、 s、 i、 1
0.3.h、 l、 l、ビまた、このデータ文で定義
された信号は、論理信号名がradataOJの入力信
号データであって、積算クロックが10の時点から、端
子機能名がrpaOJの端子にハイレベル、ローレベル
、ローレベル。
data dataQ, paQ, s, i, 1
0.3. h, l, l, bi Also, the signal defined in this data statement is the input signal data with the logical signal name radataOJ, and from the point in time when the integration clock is 10, a high level is applied to the terminal with the terminal function name rpaOJ. , low level, low level.

ローレベルの信号が3回繰り返して供給されることを示
している。
This shows that a low level signal is repeatedly supplied three times.

また、外部事象テーブノL−IEPT は、デバッガ[
]BGから知らされる上述の外部事象ファイルEPF 
のデータをフォーマット変換して一時的に格納するメイ
ンメモリ2上のテーブルである。この外部事象テーブル
EPTの構成の一例を第7図に示し、その内容を第2表
に示す。
In addition, the external event table L-IEPT can be used with the debugger [
]The above external event file EPF informed by BG
This is a table on the main memory 2 that formats and temporarily stores the data. An example of the structure of this external event table EPT is shown in FIG. 7, and its contents are shown in Table 2.

第2表 また、レジスタ情報テーブルRIT は、MPUの各レ
ジスタに関する情報を格納するメインメモリ2上のテー
ブルであって第8図に示す構成を有しており、その内容
を第3表に示す。このレジスタ情報テーブルRAT は
、各MPUに対応して複数組設けられている。
Table 2 The register information table RIT is a table on the main memory 2 that stores information regarding each register of the MPU, and has the configuration shown in FIG. 8, and its contents are shown in Table 3. A plurality of register information tables RAT are provided corresponding to each MPU.

第3表 前述のμP07811の場合のレジスタの一例を第4表
に示す。なお、第4表(a)は一般しジスタ、同表ら)
は特殊レジスタ、同表(C)はリクエストレジスタを示
している。
Table 3 An example of registers for the μP07811 described above is shown in Table 4. In addition, Table 4 (a) shows the general distribution, and the same table et al.)
indicates a special register, and (C) in the same table indicates a request register.

なお、このμP07811の各レジスタの詳細について
は、日本電気株式会社発行の「μC0M−87AD μ
P07811ユーザーズ・マニユアル(16M768G
) Jに記載があるので、ここではレジスタの種類を挙
げるにとどめ詳細な説明は省略する。
For details of each register of this μP07811, please refer to “μC0M-87AD μ
P07811 User's Manual (16M768G
), so a detailed explanation will be omitted here, only listing the types of registers.

(以下、余白) 第4表(a) 第4表(b) 第4表(C) 端子機能テーブルTPT は、MPUの端子機能に関す
る情報を格納するメインメモリ2上のテーブルであり、
第9図に示す構成を有しており、その内容を第5表に示
す。端子機能テーブルTPT も各MPUに対応して複
数組設けられている。
(Hereinafter, blank spaces) Table 4 (a) Table 4 (b) Table 4 (C) The terminal function table TPT is a table on the main memory 2 that stores information regarding the terminal functions of the MPU.
It has the configuration shown in FIG. 9, and its contents are shown in Table 5. A plurality of terminal function tables TPT are also provided corresponding to each MPU.

第5表 端子機能名は、MPUの端子又は端子群についての名称
であり、予め決められた名称を使用する。
The terminal function names in Table 5 are names for terminals or terminal groups of the MPU, and predetermined names are used.

ターゲットのMPUとしてμP07811を使用する場
合の端子機能名の一例を第6表に示す。なお、表中、入
力出力種別Jの欄のIは入力、0は出力、Iloは人出
力を示している。
Table 6 shows an example of terminal function names when μP07811 is used as the target MPU. In the table, I in the column of input/output type J indicates input, 0 indicates output, and Ilo indicates human output.

(以下余白) 第6表 上述のμP07811自体のハードウェア構成の概略を
第10図に示す。なお、このμP[]7811自体の構
成については、前述の「μCO!J −87A D μ
P[]7811ユーザ一ズ・マニュアル(IE!、+7
686) jに詳細に述べられていので、ここでは、概
略を説明するにとどめる。
(Space below) Table 6 A schematic hardware configuration of the μP07811 itself described above is shown in FIG. Regarding the configuration of this μP[]7811 itself, please refer to the above-mentioned “μCO!J-87A Dμ
P[]7811 User's Manual (IE!, +7
686) Since it is described in detail in Section 686), only an outline will be given here.

第10図に示されるM P Uにおいて、実行すべきプ
ログラムはプログラムメモIJP!、!に格納されてい
る。プログラムの実行に際しては、レジスタ部RBのプ
ログラムカウンタICにより指示されたアドレスの命令
がインストラクンヨンレジスタIHに格納され、インス
トラクションデコーダ10で解釈される。そして、この
解釈結果に基づき、内部データ或いは外部から入力され
たデータに対して必要な処理を行う。命令及びデータは
、内部データバスIDB 内を流れており、演算が必要
なデータは、ラッチLTCI、 LT[:2を介して算
術論理回路ALIJ に供給され、指定された演算が行
われる。この際、実行に必要な外部データは、シリアル
人出力部5IO1割り込み制御部+NTC,タイマTI
MER,タイマ/イベントカウンタTlEC,A/D変
換器ADC,ポート部PB等から入力される。演算後の
フラグの状態はプログラムステータスワード部PSWに
格納される。
In the MPU shown in FIG. 10, the program to be executed is program memo IJP! ,! is stored in. When a program is executed, the instruction at the address specified by the program counter IC of the register section RB is stored in the instruction register IH and interpreted by the instruction decoder 10. Then, based on this interpretation result, necessary processing is performed on the internal data or data input from the outside. Instructions and data flow within the internal data bus IDB, and data that requires an operation is supplied to the arithmetic logic circuit ALIJ via the latches LTCI and LT[:2, where the specified operation is performed. At this time, the external data necessary for execution is serial output unit 5IO1 interrupt control unit + NTC, timer TI
It is input from MER, timer/event counter TlEC, A/D converter ADC, port section PB, etc. The state of the flag after the calculation is stored in the program status word section PSW.

演算後のデータは、レジスタfiRB内の所定のレジス
フ或いはデータメモIJD!Jに格納される。また、必
要に応じてシリアル人出力部SID、タイマT I !
、I E It 。
The data after the operation is stored in a predetermined register in register fiRB or data memo IJD! Stored in J. In addition, if necessary, the serial input unit SID and the timer T I!
, I E It.

クイマ/イベントカウンタTEC,ポート部PB等を介
して、MPUの外部に出力される。
The signal is output to the outside of the MPU via the timer/event counter TEC, port section PB, etc.

以下、第5図に戻って説明する。The explanation will be given below by returning to FIG.

メモリテーブル!、I RY Tは、ターゲットプログ
ラムTPがロードされる64にバイトのアドレス空間を
有するメインメモリ2上のテーブルである。
Memory table! , IRYT is a table on the main memory 2 having an address space of 64 bytes into which the target program TP is loaded.

コマンドテーブルC!JDTは、ユーザインターフェー
ス[lIF とテ゛バンガDBG  との中間にあり、
ユーザから正しい入力があった場合に、ユーザインター
フェースUIF がデータをセントするメインメモリ2
上のテーブルであり、第11図に示す構成を有しており
、その内容を第7表に示す。
Command table C! The JDT is located between the user interface [lIF and the server DBG.
Main memory 2 where the user interface UIF stores data if there is a correct input from the user.
The above table has the structure shown in FIG. 11, and its contents are shown in Table 7.

第7表 デバッガDBG はセントされたコマンド番号及びパラ
メータに応じて処理を行う。
Table 7 Debugger DBG performs processing according to the sent command number and parameters.

また、メツセージテーブルM S G Tはデイスプレ
ィ5に出力するだめのメンセーノを格納したメインメモ
リ2上のテーブルであるっ 次に、MPU実行ステータステーブル!A E S T
は、MPUの実行動作に関する情報を有するメインメモ
リ2上のテーブルであり、MPUモジュールゝ、+ !
、1からデバッガDBGへ、命令実行中に起きたエラー
等を報告するためのものであり。このMPU実行ステー
タステーブル1.1 E S Tは、第12図に示す構
成を有しており、その内容例を第8表に示す。
Furthermore, the message table M S G T is a table in the main memory 2 that stores messages that are not to be output to the display 5.Next is the MPU execution status table! A E S T
is a table in the main memory 2 that has information regarding the execution operations of the MPU, and the MPU modules も, +!
, 1 to the debugger DBG to report errors that occur during instruction execution. This MPU execution status table 1.1 EST has the configuration shown in FIG. 12, and an example of its contents is shown in Table 8.

第8表 各項目について説明すると、先ず、リセット信号継続は
、M P Uのリセット端子への入力がローレベルのま
まハイレベルにならない場合に、MPUモジュール1.
賛4によってセットされるものである。
To explain each item in Table 8, first, the reset signal continuation occurs when the input to the MPU reset terminal remains at a low level and does not go to a high level.
It is set by 4.

リセット信号有無は、M P Uのリセット端子へロー
レベルの入力があった場合に、MPUモジュールM)j
によってセットされるものである。ホールト命令実行有
無は、ホールト命令すなわち、MPUの停止命令があっ
たかどうかを示している。ポートアクセスエラーは、M
PUのポートに不当なアクセスがあったかどうかを示し
ており、たとえば、入力端子へデータを書き込もうとし
た命令があった場合にセットされる。アドレスアクセス
エラーは、不当なアドレスがアクセスされたことを示し
ており、たとえば、コンフィグレーションファイルCF
で定義されていないアドレス領域がアクセスされたよう
な場合にセットされる。インストラクション実行エラー
は、インストラクション実行中にエラーが生じたことを
示すもので、たとえば、定義されていないインストラク
ションがあったような場合!二セントされる。演算エラ
ーは、演算中にエラーが発生したことを示すもので、た
とえば、0で除算した場合、或いは、指温れが生じたよ
うな場合にセットされる。最後のメモリマツプエラーは
、メモリへのアクセスが不当であることを示しており、
たとえば、ROM領域にデータを書き込もうとした命令
があった場合にセットされる。
The presence or absence of a reset signal is determined when there is a low level input to the MPU reset terminal.
It is set by The presence or absence of execution of a halt instruction indicates whether or not there was a halt instruction, that is, an instruction to stop the MPU. Port access error is M
This indicates whether or not there has been an illegal access to a PU port, and is set, for example, when there is an instruction that attempts to write data to an input terminal. An address access error indicates that an illegal address was accessed, for example in the configuration file CF
This is set when an address area not defined in is accessed. An instruction execution error indicates that an error occurred during instruction execution, such as when an instruction was not defined! Two cents will be given. The calculation error indicates that an error has occurred during calculation, and is set, for example, when dividing by 0 or when a finger becomes warm. The last memory map error indicates an illegal access to memory,
For example, it is set when there is an instruction to write data to the ROM area.

次に、各サブシステムの内部テーブルについて説明する
Next, the internal tables of each subsystem will be explained.

デバッガDBG には、内部テーブルとして、デバッガ
ステータステーブルDST、ブレークポイントテーブル
BPT、 )レースモードテーブルTMT、ラインバッ
ファLB及びメツセージ編集テーブル!、lET等が設
けられている。
The debugger DBG includes internal tables: debugger status table DST, breakpoint table BPT, race mode table TMT, line buffer LB, and message editing table! , lET, etc. are provided.

デバッガステータステーブルDST は、デバッガDB
G の実行動作に関する各種情報を格納するメインメモ
リ2上のテーブルであり、第13図に示す構成を有して
おり、その内容を第9表に示す。
Debugger status table DST is debugger DB
This is a table on the main memory 2 that stores various information regarding the execution operations of G, and has the configuration shown in FIG. 13, and its contents are shown in Table 9.

第9表 なお、このデバッガステータステーブルDST の初期
状態は、シミュレーションモード、ターゲットプログラ
ム無、外部事象ファイル無に設定されている。また、M
PU状態は、第12図に示すMPU実行ステータステー
ブルMEST (第8表参照)の内容を複写したもので
、1ステップ実行が終了するたびに外部テーブルのMP
U実行ステータステーブルMESTから読み込まれて更
新される。
Table 9 Note that the initial state of this debugger status table DST is set to simulation mode, no target program, and no external event file. Also, M
The PU status is a copy of the contents of the MPU execution status table MEST (see Table 8) shown in FIG.
It is read from the U execution status table MEST and updated.

ブレークポイントテーブルBPT は、ブレークポイン
トの情報を格納するメインメモリ2上のテーブルであり
、たとえば、第14図に示すように5個のブレークポイ
ントの設定が可能な構成を有している。ブレークポイン
トの設定例を第10表に示す。
The breakpoint table BPT is a table on the main memory 2 that stores breakpoint information, and has a configuration in which, for example, five breakpoints can be set as shown in FIG. 14. Table 10 shows examples of breakpoint settings.

第10表 第10表の例では、a090番地、 bb12番地及び
0210番地(いずれも16進表示)の3カ所でプログ
ラムが一旦停止する。なお、表中の−1はブレークポイ
ントが未設定であることを示している。
Table 10 In the example shown in Table 10, the program temporarily stops at three locations: address a090, address bb12, and address 0210 (all expressed in hexadecimal). Note that -1 in the table indicates that no breakpoint has been set.

トレースモードテーブルTMT  ハ、)レース実行の
各種モードを格納するメインメモリ2上のテーブルであ
り、第15図に示す構成を有しており、その内容を第1
1表に示す。
Trace mode table TMT (c) This is a table on the main memory 2 that stores various modes of race execution, and has the configuration shown in FIG.
It is shown in Table 1.

第11表 なお、初期状態では、トレース無1 ファイルクローズ
となっている。
Table 11 Note that in the initial state, there is no trace and the file is closed.

ラインバッファLBは、ユーザインターフェースUIF
 からの1行の入力を受は取るメモリバッファであり、
たとえば、キャラクタデータを256個格納する容量を
有している。
Line buffer LB is user interface UIF
is a memory buffer that takes one line of input from
For example, it has a capacity to store 256 character data.

メツセージ編集テーブルMET は、メツセージ編集用
のメモリバッファであり、たとえば、キャラクタデータ
を256個格納する容量を有している。
The message editing table MET is a memory buffer for message editing, and has a capacity to store, for example, 256 character data.

次に、MPUモジュール!AMの内部テーブルについて
説明する。
Next, the MPU module! The internal table of AM will be explained.

MPUモジュール)、1Mには、内部テーブルとして、
レジスタテーブルRT、  端子テーブルTT、MPt
JステータステーブルM S T 、ペースクロックテ
ーブルBCT。
MPU module), 1M has as an internal table,
Register table RT, terminal table TT, MPt
J status table MST, pace clock table BCT.

実行タイマテーブルETT、命令セットテーブルIST
及び命令解析テーブルIATが設けられている。
Execution timer table ETT, instruction set table IST
and an instruction analysis table IAT.

レジスタテーブルRTは、全てのレジスタを実際のM 
P Uのレジスタと同じサイズで持ち、実情報を格納す
るメインメモリ2上のテーブルであり、第16図に示す
ように、一般しジスタテープル、′eF殊レジスタテー
ブル、リクエストレジスタテーブル及びプログラムステ
ータスワードテーブルから構成されている。この一般し
ジスタテープル、特殊レジスタテーブル及びリクエスト
レジスタテーブルは、先に述べた第4表(a)、  (
b)及び(C)に記載の各レジスタに対応している。ま
た、プログラムステータスワードテーブルは、MPUの
プログラムステータスワード部(第10図においてPS
l’lで示す)と同じ機能を有するメインメモリ2上の
テーブルであり、ゼロフラグ、スキップフラグ、ハーフ
キャリフラグ、 Llフラグ、  LOlフラグキャリ
フラグ等の領域がある。
Register table RT stores all registers in actual M
It is a table in the main memory 2 that has the same size as the PU register and stores actual information.As shown in FIG. 16, it is a table in the main memory 2 that stores real information. Consists of tables. The general register table, special register table and request register table are shown in Table 4 (a), (
This corresponds to each register described in b) and (C). The program status word table also includes the program status word section of the MPU (PS in FIG. 10).
This is a table on the main memory 2 that has the same function as (indicated by l'l), and has areas such as a zero flag, a skip flag, a half carry flag, an Ll flag, and an LOl flag carry flag.

端子テーブルTTは、端子機能に関する実情報を格納す
るメインメモリ2上のテーブルであり、第17面に示す
構成を有しており、その内容を第12表に示す。
The terminal table TT is a table on the main memory 2 that stores actual information regarding terminal functions, and has the configuration shown on the 17th page, and its contents are shown in the 12th table.

第12表 MPUステータステーブルMST は、MPUの実行動
作モードに関する情報を持つメインメモリ2上のテーブ
ルであり、第18図に示す構成を有しており、その内容
を第13表に示す。
The twelfth MPU status table MST is a table on the main memory 2 that has information regarding the execution operation mode of the MPU, and has the configuration shown in FIG. 18, the contents of which are shown in Table 13.

第13表 なお、リセット情報は、リセット端子へのローレベル入
力をクロック換算したもので、ここでは、クロック数が
60を超えるとMPUのリセットを行うようになってい
る。また、Elは割り込み受付可能状態を示し、DIは
割り込み受付不可能状態を示す。
Note that the reset information in Table 13 is obtained by converting the low level input to the reset terminal into clocks, and here, when the number of clocks exceeds 60, the MPU is reset. Further, El indicates a state in which interrupts can be accepted, and DI indicates a state in which interrupts cannot be accepted.

ベースクロッタテ−プルOCT は、クロック動作に関
する情報を持つメインメモリ2上のテーブルであり、第
19図に示す構造を有しており、レベル0がハイレベル
であるかローレベルであるか、レベル0の時間間隔、レ
ベル1がハイレベルであるかローレベルであるか、レベ
ル1の時間間隔、1クロツタの時間間隔、現在のレベル
がハイレベルであるかローレベルであるか、1クロック
相対時間、クロックカウント数及び合計クロック数の情
報を有している。
The base crotter table OCT is a table in the main memory 2 containing information regarding clock operations, and has the structure shown in FIG. 0 time interval, whether level 1 is high level or low level, level 1 time interval, 1 black ivy time interval, whether current level is high level or low level, 1 clock relative time , the clock count number and the total clock number.

実行タイマテーブルεTT は、実行時間に関する情報
を持つメモリ上のテーブルであり、第20図に示す構造
を有しており、1基本タロツク時間1合計実行時間1合
計実行うロック数、1命令時間。
The execution timer table εTT is a table in memory containing information regarding execution time, and has the structure shown in FIG. 20, where 1 basic tarlock time 1 total execution time 1 total number of locks to be executed, and 1 instruction time.

1命令ステート数、1命令クロック数2合計ステップ数
1割り込みクロック数及び割り込み時間から構成されて
いる。
It consists of 1 number of instruction states, 1 number of instruction clocks, 2 total steps, 1 number of interrupt clocks, and interrupt time.

命令セットテーブルIST は、命令毎にオペレーショ
ンコード、分類コード、実行時に要するステート数等に
関する情報を持つメモリ上のテーブルであり、後述する
命令解析の際に参照される。
The instruction set table IST is a table in memory that has information regarding the operation code, classification code, number of states required during execution, etc. for each instruction, and is referred to during instruction analysis to be described later.

最後の命令解析テーブルIAT は、メモリテーブルM
 RY Tから読み込まれたターゲットプログラムのオ
ブジェクトを解析して実行するための各種の情報を持つ
メインメモリ2上のテーブルであり、第21図に示す構
造を有しており、命令コード番号。
The last instruction analysis table IAT is the memory table M
This is a table on the main memory 2 containing various information for analyzing and executing the object of the target program read from RYT, and has the structure shown in FIG. 21, and has an instruction code number.

第1オペランド、第2オペランド、命令コード長。First operand, second operand, instruction code length.

第1ステート数、第2ステート数の情報を有している。It has information on the number of first states and the number of second states.

上述のペースクロッタテ−プルBCT、実行タイマテー
ブルETT、命令解析テーブル[AT がどのように参
照されるかについては、後述する。
How the above-mentioned pace crotter table BCT, execution timer table ETT, and instruction analysis table [AT are referred to will be described later.

更に、ユーザインターフェース旧Fには、コマンド分類
テーブルCOT、コマンドセットテーブルCST。
Furthermore, the old user interface F includes a command classification table COT and a command set table CST.

コマンドチエツクテーブルCCT等が設けられている。A command check table CCT and the like are provided.

:177)’分iテーブルCOT は、ユーザのコマン
ド入力毎に、コマンドラインの内容を、コマンド。
:177) 'Min iTable COT displays the contents of the command line for each command input by the user.

区切り記号、パラメータに分解してセットするテーブル
である(第22図参照)。また、コマンドセットテーブ
ルC3T には、コマンド毎にコマンド番号。
This is a table that is broken down into delimiters and parameters and set (see Figure 22). The command set table C3T also contains a command number for each command.

コマンド文字列、パラメータのデフォルト値及び入力形
式がコード化して登録されている(第23図参照)。更
に、コマンドチエツクテーブルCCTは、ユーサノコマ
ント入力毎に、コマンドセラ)f−プルC3T の中か
ら該当コマンドの登録内容が複写されるテンポラリテー
ブルである。ユーザが入力したコマンドの文字列がコマ
ンドセットチーフルC3T の文字列の内容と一致する
と、このテーブルが作成され、ユーザ入力が正しいもの
かどうかが調べられる。
Command character strings, parameter default values, and input formats are registered in code (see FIG. 23). Further, the command check table CCT is a temporary table in which the registered contents of the corresponding command are copied from the command server f-pull C3T every time a user command is input. When the character string of the command input by the user matches the contents of the character string of the command set CHIFLE C3T, this table is created and it is checked whether the user input is correct.

この結果、そのコマンドが正しければ、外部テーブルと
して設けられたコマンドテーブルCMDTにセットされ
る。
As a result, if the command is correct, it is set in the command table CMDT provided as an external table.

第24図はこれらのコマンド分類テーブルCOT、コマ
ンドセットテーブルC3T及びコマンドチエツクテーブ
ルCCTの関係を模式的に図示したものである。
FIG. 24 schematically shows the relationship among the command classification table COT, command set table C3T, and command check table CCT.

次に、MPUモジュールM L+の各エントリーモジュ
ールについて説明する。
Next, each entry module of the MPU module M L+ will be explained.

MPUモジュールMMとしては、下記の機能が求められ
る。
The MPU module MM is required to have the following functions.

(i)MPUの1命令(インストラクション)を実行す
る。
(i) Execute one MPU instruction.

(ii )  デバッガDBG の求めにより、MPU
のステータス情報、レジスタ、メモリ内容等を通知する
(ii) According to the request of the debugger DBG, the MPU
Notifies status information, registers, memory contents, etc.

(iii)  デバッガDBG の指定したレジスタ、
メモリ領域の値を設定する。
(iii) Register specified by debugger DBG,
Set the value of the memory area.

(1v)デバッガDOGから外部入力が知らされ、また
、逆に外部出力の内容をデバッガDOG に知らせる。
(1v) The debugger DOG notifies the external input, and conversely notifies the debugger DOG of the contents of the external output.

これらの機能を実現するため、MPUモジュールM M
は以下の複数のエントリー関数を有している。
In order to realize these functions, MPU module M
has the following multiple entry functions:

c−initial  ニレジスタテ−プルRT、  
端子テーブルTT等にアクセスして、MPUの状態をハ
ードウェアにおけるリセット状態にする関数 c−asmadrs  :アセンブラステートメント入
力時の開始アドレスを格納する関数 c−asm  :アセンブラステートメントをオブジェ
クトコードに変換し、メモリテーブルMRYT内の所定
のメモリ空間に格納する関数 c−disasm :命令解析テーブルIATを参照し
て指定のメモリ範囲を逆アセンブライメージでメツセー
ジバッファMBに書き込む関数 c−memprint :指定のメモリ範囲を指定形式
の表示イメージでメツセージバッファ!IBiご書き込
む関数 c−regprint :指定されたレジスタの内容を
指定形式の表示イメージでメツセージバッファMB+:
m書き込む関数 c−memwr+te :指定のアドレスへ指定のデー
タを書き込む関数 C−regWrlte :指定のレジスタへ指定のデー
タを書き込む関数 c−memfill  :指定のメモリ範囲を指定のデ
ータで埋める関数 c−inpadrs  : 15進データを連続入力す
る開始アドレスを格納する関数 c−input  :入力した16進データを前記関数
rc−inpadrsj で指定したアドレスから順次
書き込む関数 C−eXec :現在のプログラムカウンタが指すアド
レスの1ステツプを実行する関数 なお、この関数rc−execJでは、基本的には以下
に示す!序で処理が行われる。
c-initial register table RT,
Function c-asmadrs that accesses the terminal table TT etc. and resets the MPU state in hardware: Function that stores the start address when assembler statement is input c-asm: Converts assembler statement to object code and stores it in memory. Function c-disasm to store in a predetermined memory space in table MRYT: Function to refer to instruction analysis table IAT and write the specified memory range to message buffer MB as a disassembler image c-memprint: Specify the specified memory range in format Message buffer with display image! IBi write function c-regprint: Displays the contents of the specified register in the specified format in the message buffer MB+:
Function to write m c-memwr+te: Function to write specified data to specified address C-regWrlte: Function to write specified data to specified register c-memfill: Function to fill specified memory range with specified data c-inpadrs: Function c-input that stores the start address for continuously inputting hexadecimal data: Function that writes input hexadecimal data sequentially from the address specified by the function rc-inpadrsj C-eXec: One step of the address pointed to by the current program counter Note that this function rc-execJ is basically as shown below! Processing is performed in sequence.

第25図を参照して説明する。先ず、実行に先立って実
行ステータスフラグがクリアされる(ステラ プ51)
This will be explained with reference to FIG. 25. First, before execution, the execution status flag is cleared (step 51).
.

(1)命令解析 命令毎にオペレーンコンコード9分類コード1実行時に
要するステート数等が登録されているMPUモジュール
1.4M内の命令セン)テーブルIST を参照し゛C
1実行内容、実行に要する時間等を解析し、解析内容を
命令解析テーブルIAT ヘセソトする。
(1) Refer to the instruction table IST in the MPU module 1.4M in which the number of states required for execution of the operating lane concode 9 classification code 1 is registered for each instruction analysis instruction.
1 Analyzes the execution content, time required for execution, etc., and stores the analysis content in the instruction analysis table IAT.

(2)命令実行 命令解析テーブルIATの内容により命令を実行する。(2) Instruction execution The command is executed according to the contents of the command analysis table IAT.

また、この命令によりレジスタテーブルRT。Also, this instruction causes the register table RT to be updated.

メモリテーブルM RY T 、  端子テーブルTT
等へアクセスする。更に、ホールト命令や、メモリアク
セスエラーがあると、MPU実行ステータステーブルM
 E S Tへその内容を書き込む(以上、ステップ5
2)。
Memory table MRYT, terminal table TT
etc. Furthermore, if there is a halt instruction or memory access error, the MPU execution status table M
Write the contents to EST (that's all, step 5)
2).

(3)実行時間更新 実行時間に関する各種情報が格納されている実行タイマ
テーブル訂Tを更新する。
(3) Execution time update The execution timer table T, which stores various information regarding execution time, is updated.

(4)  ペースクロック更新 タイマ、イベント機能等の機能実行の際に参照されるベ
ースクロックテーブルBCTを更新する。゛(5)  
機能実行 MPUのタイマ、イベント、シリアルインターフェース
機能等を実行する。この機能実行の際には、ベースクロ
ックテーブルBCTが参照され、また、端子テーブルT
T、  レジスタテーブルRTがアクセスされる(以上
、ステップ53)。
(4) Update the base clock table BCT that is referenced when executing functions such as the pace clock update timer and event function.゛(5)
Executes the timer, event, serial interface functions, etc. of the function execution MPU. When executing this function, the base clock table BCT is referred to, and the terminal table T
T, the register table RT is accessed (step 53).

(6)トレース実行 MPUステータステーブルMST 内のトレースの設定
により、内部トレース、外部トレースの処理を行い、処
理結果をトレースファイルTFへ書き込む(ステップ5
4〜57)。
(6) Trace execution According to the trace settings in the MPU status table MST, internal trace and external trace are processed and the processing results are written to the trace file TF (Step 5
4-57).

(7)割り込み解析実行 レジスタテーブルRT内フラグを参照し、割り込みがあ
ったかどうか判定する。割り込みがあった場合は、レジ
スタテーブルRT内のプログラムカウンタIcを、割り
込みプログラムのスタートアドレスに書き換える(ステ
ップ53)。
(7) Refer to the flag in the interrupt analysis execution register table RT to determine whether there is an interrupt. If there is an interrupt, the program counter Ic in the register table RT is rewritten to the start address of the interrupt program (step 53).

(8)外部事象取り込み MPUステータステーブルMST 内の実行モードがシ
ミュレーションモードであるときは、実行タイマテーブ
ルETT を参照しながら、外部事象テーブルEPT 
から外部事象を取り込み、端子テーブルTT等をセット
する(ステップ59)。
(8) External event capture When the execution mode in the MPU status table MST is simulation mode, the external event table EPT is read while referring to the execution timer table ETT.
The external event is taken in from the terminal table TT and the like is set (step 59).

そして、最後にリターンする。And finally return.

以上が、関数「c−execJの説明である。The above is the explanation of the function "c-execJ".

以下、関数の説明を続ける。The explanation of the functions will be continued below.

c−time :実行タイマテーブルETT を参照し
て直前の実行時間を知らせる関数 c−status : M P Uステータステーブル
14sT を参照して現在のステータスを返す関数 c−exin :外部事象テーブルEPT を参照して
外部入力事象を取り込む関数 c−exout  :外部事象入力を知らせる関数c−
conf ig : M P U ステータステーブル
11!ST を参照してMPU!t1作環境の設定を行
う関数c−opbyte :は、現在のプログラムカウ
ンタの指す命令の命令バイト数を返す関数 次に、ユーザインターフェースUIF における関数に
ついて説明する。
c-time: A function that refers to the execution timer table ETT and informs the previous execution time c-status: A function that refers to the MPU status table 14sT and returns the current status c-exin: Refers to the external event table EPT Function c-exout that takes in an external input event: Function c- that notifies external event input
config: MPU status table 11! MPU with reference to ST! The function c-opbyte: which sets the t1 production environment is a function which returns the number of instruction bytes of the instruction pointed to by the current program counter.Next, the functions in the user interface UIF will be explained.

ユーザインターフェースLIIF は、キーボード4゜
デイスプレィ5等の端末の人出処理を行うもので、デバ
ッガDBG からの要求により下記の機能が果たす必要
がある。
The user interface LIIF performs processing for displaying terminals such as the keyboard 4° and the display 5, and is required to perform the following functions in response to requests from the debugger DBG.

(i)  デバッガDBGからの出力をデイスプレィ5
に表示する。
(i) Display the output from the debugger DBG on display 5.
to be displayed.

(ii )  キーボード4からのコマンドラインを入
力して解析し、デバッガDBG が理解できる形式に変
換する。このとき、文法エラーのチエツクを行う。
(ii) Input a command line from the keyboard 4, analyze it, and convert it into a format that the debugger DBG can understand. At this time, check for grammar errors.

(iii)  キーボード4からの入力1行をそのまま
デバッガDBGに渡す。
(iii) Pass one line of input from the keyboard 4 as is to the debugger DBG.

(iv)  キーボード4からの入力1文字をそのまま
デバッガDBGに渡す。
(iv) Pass one character input from the keyboard 4 as is to the debugger DBG.

これらの機能を実現するため、ユーザインターフェース
UIF は以下に説明する複数のエントリー関数を有し
ている。
To implement these functions, the user interface UIF has multiple entry functions described below.

u−display  :与えられた文字列データを端
末のデイスプレィ5に表示する関数 u−comin  :入力されたコマンドに対してコマ
ンドテーブルCM D T 、  レジスタ情報テーブ
ルRIT、端子機能テーブルTPT等を参照して文法チ
エツクを行うと共に、文法的に正しければコマンドテー
ブルCM D Tに所定のコマンド番号及びパラメータ
をセットしてデバッガDBGヘリターンする関数u−g
etline  :キーボード4の改行キーが押される
までの1行の文字列を受は取り、ファイルポインタによ
り指定されたテンポラリメモリバッファ(図示せず)の
アドレスにその内容を書き込む関数1−getchar
  :キーボード4から1文字を受は取り、その文字を
そのまま関数値としてデバッガDBGへ返す関数 次に、各サブシステムの機能の詳細について、第5図の
サブシステム関連図及び第26図のフローチャートを参
照して、操作の手順にしたがって説明する。なお、以下
の説明において特に注記している個所を除いて各ステッ
プの処理はデバッガDBGにより行われる。
u-display: A function that displays the given character string data on the display 5 of the terminal u-comin: Displays the input command by referring to the command table CMDT, register information table RIT, terminal function table TPT, etc. A function ug that checks the syntax and, if it is grammatically correct, sets a predetermined command number and parameters in the command table CMDT and returns to the debugger DBG.
etline: Function 1-getchar that takes one line of character string until the newline key on keyboard 4 is pressed and writes the contents to the address of the temporary memory buffer (not shown) specified by the file pointer.
:A function that takes one character from the keyboard 4 and returns that character as it is to the debugger DBG as a function value Next, for details of the functions of each subsystem, see the subsystem relationship diagram in Figure 5 and the flowchart in Figure 26. Refer to the following and explain the operation procedure. Note that in the following explanation, each step is processed by the debugger DBG, except where particularly noted.

なお、シミュレータSIMの起動に先立って、第2図に
示すコンフィグレーション生成部CGにより、使用する
MPUに対応して必要なデータを生成してコンフィグレ
ーションファイルCFに格納しておく。同様に、外部事
象データ生成部EPDGにより、必要なテストデータを
生成し、これを外部事象ファイルEPFに格納しておく
Note that, prior to starting the simulator SIM, the configuration generation unit CG shown in FIG. 2 generates necessary data corresponding to the MPU to be used and stores it in the configuration file CF. Similarly, the external event data generation unit EPDG generates necessary test data and stores it in the external event file EPF.

シミュレータS I M は、前記UNIXのコマンド
レベルの所定の起動コマンドにより起動され、ターゲッ
トプログラムTPを読み込むべきことをデバッガDBG
  に知らせる。たとえば、シミュレーションの対象と
なるMPUが、前述のμP07811であり、デバッグ
すべきターゲットプログラムTPのファイル名がrte
stJである場合は、第4図に示されるキーボード4か
ら、rmpu7811 test Jと入力する。
The simulator SIM is started by a predetermined startup command at the UNIX command level, and the debugger DBG instructs the simulator SIM to load the target program TP.
Let me know. For example, the MPU to be simulated is the μP07811 mentioned above, and the file name of the target program TP to be debugged is rte.
stJ, input rmpu7811 test J from the keyboard 4 shown in FIG.

このようにシミュレータSIMが起動されると、先ず、
コンフィグレーションファイルCFがロードされ(ステ
ップ101)、次いでデバッガDBG、 M P Uモ
ジュールMMの内部テーブルが初期化される(ステップ
102)。
When the simulator SIM is started in this way, first,
The configuration file CF is loaded (step 101), and then the internal tables of the debugger DBG and MPU module MM are initialized (step 102).

また、デバッガDOGはローダLDRを呼び出してター
ゲットプログラムTPをメモリテーブル!、I RY 
Tにロードする(ステップ103)。次いで、外部事象
ファイルEPFがロードされ(ステップ104)、デバ
ッガDBGからユーザインターフェース[IIF が呼
び出され、デバッガコマンドの入力待ちとなり(ステッ
プ105)ユーザの入力を受は付ける(ステップ106
)。なお、これらのステップ105. 106はユーザ
インターフェースUIFにより行われる。
Also, the debugger DOG calls the loader LDR and stores the target program TP in the memory table! ,IRY
T (step 103). Next, the external event file EPF is loaded (step 104), the user interface [IIF] is called from the debugger DBG, and it waits for input of a debugger command (step 105) and accepts user input (step 106).
). Note that these steps 105. 106 is performed by the user interface UIF.

すなわち、ステップ105になると、デバッガDBGか
らユーザインターフェース旧Fが call u−comin() の形式で呼び出され、キーボード4からシミュレータS
 I IJのコマンドを待つ。そして、ユーザが1行入
力した時点でコマンドテーブルCMDTを参照して文法
エラーのチエツクを行なう。文法エラーがあった場合は
、ユーザインターフェースtlIF の関数ru−di
splayJ を呼び出してエラーメツセージを表示さ
せ、関数値を0としてデバッガDBG にリターンする
。また、文法的に正しければ、コマンドテーブルCMD
Tに必要なパラメータをセントすると共に、関数値にコ
マンド番号をセントしてデバッガDBGにリターンする
。なお、この関数ru−cominJが呼ばれたときは
、デイスプレィ5にプロンプトとしてr (mpu) 
Jを表示する。
That is, at step 105, the user interface old F is called from the debugger DBG in the form of call u-comin(), and the simulator S is called from the keyboard 4.
I Wait for IJ command. Then, when the user inputs one line, the command table CMDT is referred to to check for grammar errors. If there is a syntax error, use the ru-di function of the user interface tlIF.
Call sprayJ to display an error message, set the function value to 0, and return to debugger DBG. Also, if it is grammatically correct, the command table CMD
The necessary parameters are placed in T, the command number is placed in the function value, and the process returns to the debugger DBG. Note that when this function ru-cominJ is called, r (mpu) is displayed as a prompt on the display 5.
Display J.

デバッガコマンドの一例を以下に示す。An example of the debugger command is shown below.

アセンブルコマンドrasmj は、メモリ内容をアセ
ンブラニーモニックにより変更するコマンドである。こ
のrasmJ コマンドを受けると、デバッガDBG 
は起点アドレスのチエツクをしたのち、MPUモジュー
ルMMの関数r c−asmadrs Jを呼び出し、
アセンブラ入力の起点アドレスを通知する。その後、ア
センブラニーモニックの入力モードになったことをユー
ザインターフェースIJIF の関数ru−displ
ayJを通じてユーザに知らせる。アセンブラニーモニ
ツクの入力モードになると、ユーザインターフェースU
[F の関数「u−getline」が呼び出される。
The assemble command rasmj is a command for changing memory contents using assembler mnemonics. When this rasmJ command is received, the debugger DBG
After checking the start address, calls the function r c-asmadrs J of the MPU module MM,
Notifies the starting address of assembler input. After that, the user interface IJIF function ru-displ indicates that the assembler mnemonic input mode is entered.
Notify users through ayJ. When entering the assembler mnemonic input mode, the user interface U
[F's function "u-getline" is called.

この関数[u−getlineJは、入力に対して文法
エラーのチエツクを行うことなく改行キー入力までの1
行文の入力をそのまま返す。デバッガDOGはこれをM
PUモジュールj、l !、tにそのまま渡し、MPU
モジュール!、1 !、1はこのステートメントを解析
し、オブジェクトに変換したのち所定番地に格納する。
This function [u-getlineJ executes 1 line input until the newline key input without checking the input for grammatical errors.
Returns the line input as is. Debugger DOG uses this as M
PU module j, l! , pass it as is to MPU
module! ,1! , 1 analyzes this statement, converts it into an object, and stores it in a predetermined location.

正常時には、M P Uモジュール)AMはそのまま次
の入力を待つが、異常時にはその旨エラーメツセージを
表示したのち入力を待つ。なお、入力が改行キーのみで
あるときは、アセンブラニーモニックの入力モードが解
除され、関数ru−cominJが呼び出されてコマン
ド入力モードとなる。
When normal, the MPU module (AM) waits for the next input, but when abnormal, it displays an error message and then waits for the input. Note that when the input is only the line feed key, the assembler mnemonic input mode is canceled, the function ru-cominJ is called, and the command input mode is entered.

たとえば、メモリの0215番地以降のプログラム内容
をrmvi a、0OhJ に対応するデータに変更す
る場合、r (mpu) jのプロンプトが表示されて
いる状態で、r0215jとアドレスを入力して改行キ
ーを押すと、この入力されたアドレスがプロンプトとな
って入力待ちとなり、次いで、rmvi a、0OhJ
 と入力して改行キーを押すと、入力されたアセンブラ
ステートメント、すなわち、rmvi a、00hJが
オブジェクトに変換されて、0215番地に「69」が
、0216番地に「00」が格納される。なお、rmv
i a、0OhJは、16進数の「00」をAレジスタ
に入れるμP07810及びμP07811の命令であ
る。
For example, if you want to change the program contents starting from memory address 0215 to data corresponding to rmvi a, 0OhJ, while the r (mpu) j prompt is displayed, enter the address r0215j and press the new line key. Then, this entered address becomes a prompt and waits for input, and then rmvi a, 0OhJ
When you input this and press the new line key, the input assembler statement, ie, rmvi a, 00hJ, is converted into an object, and ``69'' is stored at address 0215 and ``00'' is stored at address 0216. In addition, rmv
i a, 0OhJ is an instruction of μP07810 and μP07811 to put hexadecimal “00” into the A register.

ブレークコマンドrbreakj は、最大5個のブレ
ークポイントを設定するコマンドであり、このコマンド
を受けるとデバッガDBGはブレークポイントテーブル
BPTの内容を書き換える。なお、デバッガDBGは、
1ステップ実行前にMPUモジュールM旧こ対してプロ
グラムカウンタ値及び命令バイト数を問い合わせ、ブレ
ークポイントがこれから実行しようとするプログラムの
アドレス空間に含まれる場合は、ブレークポイントでプ
ログラムの実行を停止する。
The break command rbreakj is a command for setting up to five breakpoints, and upon receiving this command, the debugger DBG rewrites the contents of the breakpoint table BPT. In addition, the debugger DBG is
Before executing one step, the MPU module M is inquired about the program counter value and the number of instruction bytes, and if the breakpoint is included in the address space of the program to be executed, execution of the program is stopped at the breakpoint.

クリアコマンド「clearJ は、上記rbreak
J :17ンドで設定したブレークポイントを解除する
コマンドである。
The clear command "clearJ" is the above rbreak
J: This is a command to cancel the breakpoint set in step 17.

デバッグコマンドrdebugJ は、シミュレータを
初期化するコマンドであり、ターゲットプログラムが指
定されている場合、このプログラムがメモリテーブルM
 RY T上にロードされる。
The debug command rdebugJ is a command that initializes the simulator, and if a target program is specified, this program is
Loaded onto RYT.

ディスアセンブルコマンドrdisasembleJは
、メモリの内容をディスアセンブルして、アセンブラニ
ーモニックで表示するコマンドである。このコマンドは
、起点アドレス及びワード数をパラメータにしてMPU
モジュールMMの関数rc−disasmJを呼び出す
。MPUモジニールIAMは逆アセンブルの結果を表示
イメージで作成してメツセージバッファ)4Bに格納し
たのちデバッガ[]BG にリターンする。
The disassembly command rdisaassembleJ is a command that disassembles the contents of memory and displays it in assembler mnemonics. This command uses the MPU address and number of words as parameters.
Call the function rc-disasmJ of module MM. The MPU modular IAM creates a display image of the result of disassembly, stores it in the message buffer) 4B, and then returns to the debugger []BG.

デバッガDOG はその結果をユーザインターフェース
tllF を介してデイスプレィ5に表示する。
The debugger DOG displays the results on the display 5 via the user interface tllF.

外部事象ロードコマンドr external Jは、
指定の外部事象ファイルEPF の内容をメモリテーブ
ルMRYT上にロードするコマンドである。
The external event load command r external J is
This command loads the contents of the specified external event file EPF onto the memory table MRYT.

フィルコマンドrfillJは、メモリテーブルM R
Y Tの指定範囲のアドレス空間を指定データで埋める
コマンドである。
The fill command rfillJ fills the memory table M R
This is a command that fills the address space in the specified range of YT with specified data.

ヘルプコマンドrhelpJは、MPUシミニレータの
全てのコマンドの一覧表を表示するコマンドである。
The help command rhelpJ is a command that displays a list of all commands of the MPU simulator.

インプットコマンドrinputJ は、指定アドレス
から連続して16進データをセットするコマンドである
The input command rinputJ is a command that continuously sets hexadecimal data from a specified address.

モードコマンドrmodeJは、シミュレータの実行モ
ードの指定・変更を行うコマンドである。本実施例のシ
ミュレータの実行モードは、プログラムモードとシミュ
レーションモードの2通りあり、プログラムモードでは
ターゲットプログラムTPO実行動作のみを行い、シミ
ュレーションモードでは外部事象を含めたシミュレーシ
ョンを行う。シミュレータ起動時には、自動的にシミュ
レーションモードとなるが、このrmodeJコマンド
により実行モードを変更することができる。
The mode command rmodeJ is a command for specifying/changing the execution mode of the simulator. The simulator of this embodiment has two execution modes: a program mode and a simulation mode. In the program mode, only the target program TPO execution operation is performed, and in the simulation mode, simulation including external events is performed. When the simulator is started, it automatically enters simulation mode, but the execution mode can be changed using this rmodeJ command.

プリントコマンドrprintJ は、MPUのレジス
タ、メモリ等の内容を表示するコマンドであり、起点ア
ドレス及びワード数或いはレジスタ塩及び表示形式をパ
ラメータにしてMPUモジュールMMの関数rc−me
mprint J或いはrC−regprintJを呼
び出す。MPUモジュールM Mは指定アドレス空間或
いは指定レジスタのデータを表示イメージで作成してメ
ツセージバッファMBに格納したのちデバッガDBGに
リターンする。デバッガDOGはその結果をユーザイン
ターフェース[IIF を介してデイスプレィ5に表示
する。
The print command rprintJ is a command that displays the contents of registers, memory, etc. of the MPU, and uses the starting address, number of words, register salt, and display format as parameters to print the function rc-me of the MPU module MM.
Call mprint J or rC-regprintJ. The MPU module MM creates data in the designated address space or designated register as a display image, stores it in the message buffer MB, and then returns to the debugger DBG. The debugger DOG displays the results on the display 5 via the user interface [IIF].

終了コマンドrquitJは、シミュレーションを終了
するコマンドであって、このコマンドの入力により前記
UNIXのコマンドレベルに戻る。
The termination command rquitJ is a command for terminating the simulation, and upon input of this command, the system returns to the UNIX command level.

ランコマンドrrunJ は、ターゲットプログラムT
Pを指定のアドレスから実行するコマンドである。
The run command rrunJ is the target program T.
This is a command to execute P from a specified address.

このコマンドを受けると、デバッガDBGliMPUモ
ジュールM Mに対して実行を命じる。MPUモジュー
ルMMでは、レジスタテーブルRTのプログラムカウン
タの値を指定されたアドレスに書き換えたのち、プログ
ラムを1ステツプごとに実行する。
When this command is received, it instructs the debugger DBGliMPU module MM to execute. The MPU module MM rewrites the value of the program counter in the register table RT to the designated address, and then executes the program step by step.

■ステップの実行においては、デバッガDBG は、デ
バッガステータステーブルDST により現在の設定ス
テータスを参照する。
(2) When executing a step, the debugger DBG refers to the current setting status using the debugger status table DST.

ブレークポイント表示コマンドrshow break
Jは、現在のブレークポイント全てについて設定状況の
一覧表を表示するコマンドである。
Breakpoint display command rshow break
J is a command that displays a list of setting statuses for all current breakpoints.

ステップコマンド[5tepJは、現在のプログラムカ
ウンタが指すアドレスを1ステツプだけ実行したのち停
止するコマンドである。
The step command [5tepJ is a command that executes one step at the address pointed to by the current program counter and then stops.

ステータスコマンド「5tatusjは、現在のシミュ
レータ動作環境等を表示するコマンドで、たとえば、デ
バッガステータステーブルDSTを参照して、シミュレ
ータ実行モード、MPU種別、MPU動作クロック、タ
ーゲットプログラム名、外部事象ファイル名、現在のプ
ログラムカウンタの値、トレースモード設定状況等を表
示する。
The status command "5tatusj" is a command that displays the current simulator operating environment, etc. For example, it refers to the debugger status table DST and displays the simulator execution mode, MPU type, MPU operating clock, target program name, external event file name, current Displays the program counter value, trace mode setting status, etc.

トレースコマンド「tracej は、内部或いは外部
事象の発生をトレースし、その内容をデイスプレィ5に
表示すると共にトレースファイルTFに格納するコマン
ドである。
The trace command ``tracej'' is a command for tracing the occurrence of internal or external events, displaying the contents on the display 5, and storing them in the trace file TF.

書き込みコマンドrwritej は、指定のメモリ或
いはレジスタに値をセットするコマンドである。
The write command rwritej is a command for setting a value in a specified memory or register.

なお、上述のrrunJ コマンド実行中にコントロー
ルCとすると、実行中のターゲットプログラムは停止し
、コマンド待ちとなる。なお、コントロールCとは、キ
ーボード4のコントロールキーを押しながら「C」のキ
ーを押すことを意味する。
Note that if control C is activated while the above rrunJ command is being executed, the target program being executed will stop and wait for the command. Note that control C means pressing the "C" key while pressing the control key on the keyboard 4.

本実施例のMPUシミュレータを使用してソフトウェア
単体のデバッグを行う際の基本的な流れとしては、プロ
グラムの実行に先立ち、入力データをセットし、デバッ
グの対象となるプログラムユニットの出口にブレークポ
イントを設定したのち、プログラムユニットの先頭から
実行する。そして、ブレークポイントで止まった時点で
出力データを参照し、予め想定していたデータと一致す
るかどうか検査する。不一致があった場合は、どこにバ
グが存在しているのかをデバッガコマンドを使用して見
つけ出す。
The basic flow of debugging individual software using the MPU simulator of this embodiment is to set input data and set a breakpoint at the exit of the program unit to be debugged before executing the program. After setting, execute the program unit from the beginning. Then, when the program stops at a breakpoint, the output data is referenced and checked to see if it matches the data expected in advance. If there is a discrepancy, use debugger commands to find where the bug is.

キーボード4から入力されたコマンドラインは、ユーザ
インターフェース[IIF により解析され、デバッガ
DBG が理解できる形式に変換される。
A command line input from the keyboard 4 is analyzed by the user interface [IIF] and converted into a format that can be understood by the debugger DBG.

ユーザの入力が終了コマンド、すなわち、rquitJ
であったときは、MPUシミュレータの動作を終了させ
る(ステップ107)。また、「quitJ以外のコマ
ンドであり且つMPUインストラクション実行コマンド
でない場合、たとえば、rwriteJ、rρrint
J。
The user's input is the exit command, i.e. rquitJ
If so, the operation of the MPU simulator is ended (step 107). In addition, "If the command is other than quitJ and is not an MPU instruction execution command, for example, rwriteJ, rρrint
J.

rbreakj等であった場合、それぞれのコマンドが
実行される(ステップ108.117)。そして、その
実行結果がユーザインターフェース旧Fに通知され(ス
テノア’118)、ユーザインターフェースUIF  
により実行結果がデイスプレィ5に表示される(ステッ
プ119)。
rbreakj, etc., the respective commands are executed (steps 108 and 117). Then, the execution result is notified to the user interface old F (stenoa '118), and the user interface UIF
The execution result is displayed on the display 5 (step 119).

また、ユーザの入力がMPUインストラクンヨン実行コ
マンド、すなわち、「run J、 r 5tep J
コマンドであったときは(ステップ108)、シミュレ
ーンヨンモードであるかどうかデバッガステータステー
ブルDSTを参照して判別しくステップ109)、ンミ
ュレーションモードであるときは、外部事象ファイルE
PFから外部入力データをセットする(ステップ110
)。次いで、MPUモジュール:a !、1によりMP
Uインストラクション実行のシミュレーンヨンが行われ
た(ステップ111)のち、タイマ、タイマ/イベント
カウンタ処理等のMPUの内部機能が実行され(ステッ
プ112)、更に、インストラクション実行結果のデバ
ッガDBGへの通知等が行われる(ステラ7’113)
。なお、シミュレーンヨンモードでないとき、すなわち
、プログラムモードのときは、ターゲットプログラムの
実行動作のみを行い外部入力データは不要であるので、
外部入力データのセット (ステップ110)はスキッ
プされる。なお、ステップ111.112.113は、
デバッガDBGではなく、MPUモジュールMMにより
実行される。
Also, if the user's input is an MPU instruction execution command, ``run J, r 5tep J
If it is a command (step 108), it is determined by referring to the debugger status table DST whether it is in the simulation mode or not (step 109). If it is in the simulation mode, the external event file E is
Set external input data from PF (step 110
). Next, the MPU module: a! , MP by 1
After simulating the execution of the U instruction (step 111), internal functions of the MPU such as timer and timer/event counter processing are executed (step 112), and furthermore, the instruction execution results are notified to the debugger DBG, etc. will be held (Stella 7'113)
. Note that when not in simulation mode, that is, when in program mode, only the execution of the target program is performed and no external input data is required.
Setting external input data (step 110) is skipped. Note that steps 111, 112, and 113 are
It is executed not by the debugger DBG but by the MPU module MM.

インストラクション実行結果は、更にユーザインターフ
ェースUIFへ通知され(ステップ114)、このユー
ザインターフェースUIF により実行結果の表示が第
4図に示されるデイスプレィ5により行われる(ステッ
プ115)。
The instruction execution result is further notified to the user interface UIF (step 114), and the user interface UIF displays the execution result on the display 5 shown in FIG. 4 (step 115).

たとえば、a090番地にブレークポイントがセットさ
れている場合、a090番地を含むアドレス空間でプロ
グラムを実行すると途中でターゲットプログラムの実行
が停止し、 rbreak at breakl(a090)  J
という表示が行われる。この表示は、ターゲットプログ
ラムの実行が、第1ブレークポイントのアドレスである
8090番地で停止したことを意味している。この状態
でrprintj コマンドを使用してレジスタやメモ
リの内容を表示させ、予期した値と一致するかどうか検
査する。
For example, if a breakpoint is set at address a090, when a program is executed in the address space that includes address a090, execution of the target program will stop midway, and rbreak at breakl(a090) J
This message is displayed. This display means that execution of the target program has stopped at address 8090, which is the address of the first breakpoint. In this state, use the rprintj command to display the contents of registers and memory and check whether they match the expected values.

一致した場合、コマンドとしてrrun a090Jを
入力し、このブレークポイントからターゲットプログラ
ムの実行を再開させ、次のブレークポイントまでプログ
ラムを実行させる。
If they match, input rrun a090J as a command to restart execution of the target program from this breakpoint and execute the program to the next breakpoint.

この模作をブレークポイント毎に行う。Perform this simulation for each breakpoint.

出力されたレジスタやメモリの内容が予期した値と一致
しない場合は、たとえば、rtracej コマンドに
よりブレークポイントに至るまでのレジスタやメモリの
変化を、MPUのインストラクション毎に表示させてバ
グの位置を探す。このトレースモードにおいては、デバ
ッガDBG のトレースモードテーブルT!JT が参
照され、指定されたトレースモードに応じて、内部トレ
ース、外部トレース或いは両方のトレースが行われ、ト
レース結果がデイスプレィ5に表示されると共にトレー
スファイルTFに格納される。なお、内部トレースの場
合は、MPUの実行によるレジスタ、メモリ、内部機能
をトレースする。また、外部トレースの場合は、外部事
象ファイルEPFから取り込んだ外部入力、及び、MP
Uからのポート出力、シリアル出力等をトレースする。
If the contents of the output register or memory do not match the expected values, use the rtracej command to display the changes in the registers and memory up to the breakpoint for each MPU instruction to find the location of the bug. In this trace mode, the debugger DBG's trace mode table T! JT is referenced, internal tracing, external tracing, or both tracing is performed depending on the specified trace mode, and the trace results are displayed on the display 5 and stored in the trace file TF. Note that in the case of internal tracing, registers, memory, and internal functions caused by MPU execution are traced. In addition, in the case of external tracing, external input imported from the external event file EPF and MP
Trace port output, serial output, etc. from U.

そして、バグが発見されたら、ターゲットプログラムを
オブジェクトレベルで修正する。たとえば、[asmj
 コマンドにより、該当番地のメモリ内容をアセンブラ
ニーモニソクにより変更する。
Once a bug is discovered, the target program is fixed at the object level. For example, [asmj
The command changes the memory contents at the corresponding address using assembler mnemonics.

なお、このデバッグ作業のためには、「breakJ。In addition, for this debugging work, "breakJ.

rprint上r Lrace上rasmJ コマンド
の他に、先に述べた各種デバッガコマンドが使用される
In addition to the rprint and rasmJ commands, the various debugger commands described above are used.

上述の作業の繰り返しによりデバッグ作業が行われる。Debugging work is performed by repeating the above-mentioned work.

ターゲットプログラムの複数ステップにわたる実行のン
ミュレーションが指示された場合、指定された全インス
トラクションの実行が終了するまでは、ステップ116
からステップ109に戻る。全インストラクションの実
行が終了するとデバッガコマンドの入力待ちに戻る(ス
テップ116.105)。
If execution of the target program over multiple steps is instructed, step 116 is executed until execution of all specified instructions is completed.
Then, the process returns to step 109. When execution of all instructions is completed, the process returns to waiting for input of a debugger command (steps 116 and 105).

上述のように、本実施例のシミユレータにおいては、ン
ミュレーション実行の際には、ローダLDRによりター
ゲットプログラムTPがメモリテーブルM RY Tに
ロードされ、コンフィグレーションファイルCF及び外
部事象ファイルEPF のデータに基づいてMPUモジ
ュール゛11 !、lでMPU動作のシミュレーンヨン
を行う。すなわち、設定されたハードウェア環境のもと
てテストデータに応じてターゲットプログラムTPが実
行される。そして、シミュレーンヨンの結果は、デイス
プレィ5(第4図参照)に表示される。
As mentioned above, in the simulator of this embodiment, when executing the simulation, the target program TP is loaded into the memory table MRYT by the loader LDR, and the data in the configuration file CF and external event file EPF are loaded. Based on MPU module ゛11! , l simulate the MPU operation. That is, the target program TP is executed according to the test data based on the set hardware environment. The simulation results are then displayed on the display 5 (see FIG. 4).

ユーザは、このシミュレーションの結果をチエツクし、
トラブルが発生した場合は、デバッガコマンドにより原
因を解析する。トラブル解析の結果、バグが発見された
場合は、デバッガコマンドによりによりターゲットプロ
グラムを修正する。
The user checks the results of this simulation and
If a problem occurs, analyze the cause using debugger commands. If a bug is found as a result of trouble analysis, the target program is modified using debugger commands.

上記作業を各種条件、例えば、テストデータを変更しな
がら繰り返すことによりデバッグが終了し、バグのない
オブジェクトプログラムが得られる。
By repeating the above operations while changing various conditions, for example, test data, debugging is completed and a bug-free object program is obtained.

このとき、M P Uに固有な情報の部分、すなわち、
レジスタ構造、端子構造及びインストラクンヨン体系等
に関係する部分は独立したモジュール、すなわち、レジ
スタ情報テーブルRIT、端子機能テーブルTPT及び
M P UモジュールMMとなっているので、シミュレ
ーンヨンの対象となるMPUに応じてこれらのテーブル
及びモジュールを切り換えればよい。
At this time, the part of the information specific to MPU, that is,
The parts related to the register structure, terminal structure, instruction system, etc. are independent modules, that is, the register information table RIT, the terminal function table TPT, and the MPU module MM. These tables and modules may be switched depending on the situation.

〔発明の効果〕〔Effect of the invention〕

以上述べたように、本発明によれば、MPUを使用した
機器のソフトウェアを開発する際に、ハードウェア環境
及び外部事象のデータをファイル化しておき、このファ
イルのデータに基づいてシミュレーションを行う。した
がって、実際の装置を使用することなくソフトウェア単
体でのデバッグが可能となりデバッグ効率を高めること
ができる。このとき、MPUモジュールを独立して設け
、このMPUモジュールにMPU固有の処理を受は持た
せている。したがって、MPUの種別が変更となっても
、デバッガ本体、ユーザインターフェース等を変更する
必要はなく、MPUモジュールを切り換えればこれに対
応することができる。これにより従来のように、各MP
Uに対してそれぞれ独立のシミュレータを用意する必要
がなくなりソフトウェアの開発費用を抑えることができ
る。
As described above, according to the present invention, when developing software for a device using an MPU, data on the hardware environment and external events are created in a file, and a simulation is performed based on the data in this file. Therefore, it is possible to debug the software alone without using an actual device, and debugging efficiency can be improved. At this time, an MPU module is provided independently, and this MPU module is provided with processing specific to the MPU. Therefore, even if the type of MPU is changed, there is no need to change the debugger body, user interface, etc., and this can be handled by simply switching the MPU module. As a result, each MP
There is no need to prepare independent simulators for each U, and software development costs can be reduced.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は本発明のMPUシミュレータを説明するための
原理図、第2図はMPUシミュレータと複写機シミュレ
ータ全体との階層関係を示すブロック図、第3図はMP
Uシミュレータのソフトウェア構造を示す説明図、第4
図はMPUシミュレータのハードウェア構成を示すブロ
ック図、第5図はMPUシミュレータを構成する各サブ
システムとファイル及びテーブルとの関係を示す説明図
、第6図はコンフィグレーションテーブルの構成を示す
説明図、第7図は外部事象テーブルの構成を示す説明図
、第8図はレジスタ情報テーブルの構成を示す説明図、
第9図は端子機能テーブルの構成を示す説明図、第10
図はシミュレーションの対象となるMPUの構造の一例
を示す概略ブロック図、第11図はコマンドテーブルの
構成を示す説明図、第12図はMPU実行ステータステ
ーブルの構成を示す説明図、第13図はデバッグステー
タステーブルの構成を示す説明図、第14図はブレーク
ポイントテーブルの構成を示す説明図、第15図はトレ
ースモードテーブルの構成を示す説明図、第16図はレ
ジスタテーブルの構成を示す説明図、第17図は端子テ
ーブルの構成を示す説明図、第18図はM P Uステ
ータステーブルの構成を示す説明図、第19図はペース
クロックテーブルの構成を示す説明図、第20図は一実
行タイマテーブルの構成を示す説明図、第21図は命令
解析テーブルの構成を示す説明図、第22図はコマンド
分類テーブルのm成を示す説明図、第23図はコマンド
セットテーブルの構成を示す説明図、第24図はコマン
ド関連テーブル間の関係を示す説明図、第25図はMP
Uモジュールにおける関数の処理の流れの一例を示すフ
ローチャート、第26図は本実施例のM P Uシミュ
レータにおけるシミュレーション動作の流れを説明する
ためのフローチャートである。また、第27図はMPU
により制御される複写機の概略を示す説明図、第28図
はM P Uにより制御される機器を開発する際の一般
的な手順を示す工程図である。 CF;コンフィグレーションファイル DOG :デバソガ EPF :外部事象ファイル !JM:MPUモジュール !、1RYT:メモリテーブル TP:ターゲットプログラム 111F :ユーザインターフェース 特許出願人     富士ゼロックス株式会社代 理 
人     小 堀  益(はが2名)第1図 TP IF 第2図 CG      EPDG     MS第 3 図 第4゛図 第6図     第7図 第11図    第12図 第8図    第9図 第14図 第16図    第17図   第18図第21図  
 第22図    第23図第19図    第20図 1し ベ ル 1 定義     :合計実行うロンク
数・1クロツクカウント数胃    i割り込みクロフ
ク数、1Lλh ’) O−/ ’) tl霞1if 
”) 込ミBW 間第24図 ユーザ入力 第25図 第 26 図
Fig. 1 is a principle diagram for explaining the MPU simulator of the present invention, Fig. 2 is a block diagram showing the hierarchical relationship between the MPU simulator and the copying machine simulator as a whole, and Fig. 3 is a diagram of the MPU simulator of the present invention.
Explanatory diagram showing the software structure of the U simulator, Part 4
The figure is a block diagram showing the hardware configuration of the MPU simulator, Figure 5 is an explanatory diagram showing the relationship between each subsystem, files, and tables that make up the MPU simulator, and Figure 6 is an explanatory diagram showing the configuration of the configuration table. , FIG. 7 is an explanatory diagram showing the structure of the external event table, FIG. 8 is an explanatory diagram showing the structure of the register information table,
Figure 9 is an explanatory diagram showing the configuration of the terminal function table;
The figure is a schematic block diagram showing an example of the structure of the MPU to be simulated, FIG. 11 is an explanatory diagram showing the configuration of the command table, FIG. 12 is an explanatory diagram showing the configuration of the MPU execution status table, and FIG. 13 is an explanatory diagram showing the configuration of the MPU execution status table. An explanatory diagram showing the structure of the debug status table, FIG. 14 is an explanatory diagram showing the structure of the breakpoint table, FIG. 15 is an explanatory diagram showing the structure of the trace mode table, and FIG. 16 is an explanatory diagram showing the structure of the register table. , FIG. 17 is an explanatory diagram showing the configuration of the terminal table, FIG. 18 is an explanatory diagram showing the configuration of the MPU status table, FIG. 19 is an explanatory diagram showing the configuration of the pace clock table, and FIG. 20 is an explanatory diagram showing the configuration of the MPU status table. FIG. 21 is an explanatory diagram showing the configuration of the timer table, FIG. 21 is an explanatory diagram showing the configuration of the command analysis table, FIG. 22 is an explanatory diagram showing the composition of the command classification table, and FIG. 23 is an explanatory diagram showing the configuration of the command set table. 24 is an explanatory diagram showing the relationship between command-related tables, and FIG. 25 is an explanatory diagram showing the relationship between command-related tables.
FIG. 26 is a flowchart showing an example of the flow of function processing in the U module. FIG. 26 is a flowchart for explaining the flow of simulation operation in the MPU simulator of this embodiment. Also, Figure 27 shows the MPU
FIG. 28 is a process chart showing the general procedure for developing equipment controlled by an MPU. CF: Configuration file DOG: Devasoga EPF: External event file! JM: MPU module! , 1RYT: Memory table TP: Target program 111F: User interface Patent applicant Fuji Xerox Co., Ltd. Agent
Masu Kobori (2 people) Figure 1 TP IF Figure 2 CG EPDG MS Figure 3 Figure 4 Figure 6 Figure 7 Figure 11 Figure 12 Figure 8 Figure 9 Figure 14 Figure 16 Figure 17 Figure 18 Figure 21
Figure 22 Figure 23 Figure 19 Figure 20 1 Bell 1 Definition: Total number of executed clocks/1 clock count Number of i interrupt clocks, 1Lλh ') O-/') tl Kasumi 1if
”) Include BW Fig. 24 User input Fig. 25 Fig. 26

Claims (1)

【特許請求の範囲】 1、シミュレーションの対象となるMPUのハードウェ
ア構成情報及び前記MPUの端子に供給する各種タイミ
ング信号をファイルデータとして読み込むと共に、デバ
ッグの対象となるターゲットプログラムのデータを読み
込み、これらのデータを使用してシミュレーションの対
象となるMPUに固有の命令実行構造にしたがってター
ゲットプログラムの実行をシミュレートすることを特徴
とするMPUシミュレーション方法。 2、前記ハードウェア構成情報は、構成情報ファイルに
格納され、前記各種タイミング信号は、外部事象ファイ
ルに格納されていることを特徴とする請求項1記載のM
PUシミュレーション方法。 3、前記ターゲットプログラムはシミュレーションに先
立ち、メモリテーブルにロードされることを特徴とする
請求項1記載のMPUシミュレーション方法。 4、MPUの種類ごとに前記ターゲットプログラムの実
行のシミュレーションを行うMPUモジュールを設ける
と共に、該MPUモジュールに対するコマンドの入力及
び該MPUモジュールからの出力の表示を行うユーザイ
ンターフェースを設けたことを特徴とする請求項1記載
のMPUシミュレーション方法。 5、前記ユーザインターフェースを介して入力されたコ
マンドに基づいて、前記ターゲットプログラムがロード
されているメモリテーブルの内容の変更、表示、ターゲ
ットプログラムの実行、停止等を前記MPUモジュール
に指示するデバッガを設けたことを特徴とする請求項4
記載のMPUシミュレーション方法。 6、シミュレーションの対象となるMPUのハードウェ
ア構成情報を格納する構成情報ファイルと、前記MPU
の端子に供給する各種タイミング信号のデータを格納す
る外部事象ファイルと、端末からの入力コマンド或いは
端末への表示情報の処理を行うユーザインターフェース
と、該ユーザインターフェースを介して入力されたコマ
ンドに基づいてターゲットプログラムがロードされてい
るメモリテーブルの内容の変更、表示、ターゲットプロ
グラムの実行、停止等を指示するデバッガと、該デバッ
ガからの指示に基づき前記構成情報ファイル及び外部事
象ファイルからのデータを使用してシミュレーションの
対象となるMPUに固有の構造にしたがってターゲット
プログラムの実行をシミュレートするMPUモジュール
とを備えたことを特徴とするMPUシミュレータ。 7、前記MPUモジュールをMPUの種類に対応して複
数設けたことを特徴とする請求項6記載のMPUシミュ
レータ。
[Claims] 1. Read the hardware configuration information of the MPU to be simulated and various timing signals supplied to the terminals of the MPU as file data, and read the data of the target program to be debugged; An MPU simulation method, characterized in that the execution of a target program is simulated according to an instruction execution structure specific to an MPU to be simulated using data of the MPU. 2. The M according to claim 1, wherein the hardware configuration information is stored in a configuration information file, and the various timing signals are stored in an external event file.
PU simulation method. 3. The MPU simulation method according to claim 1, wherein the target program is loaded into a memory table prior to simulation. 4. An MPU module for simulating execution of the target program is provided for each type of MPU, and a user interface is provided for inputting commands to the MPU module and displaying output from the MPU module. The MPU simulation method according to claim 1. 5. A debugger is provided that instructs the MPU module to change or display the contents of a memory table loaded with the target program, execute or stop the target program, etc., based on commands input through the user interface. Claim 4 characterized in that
The MPU simulation method described. 6. A configuration information file that stores hardware configuration information of the MPU to be simulated, and the MPU
an external event file that stores data of various timing signals supplied to the terminals of the terminal, a user interface that processes input commands from the terminal or information displayed on the terminal, and a A debugger that instructs to change or display the contents of a memory table into which the target program is loaded, execute or stop the target program, and use data from the configuration information file and external event file based on instructions from the debugger. An MPU simulator comprising: an MPU module that simulates execution of a target program according to a structure specific to an MPU to be simulated. 7. The MPU simulator according to claim 6, wherein a plurality of said MPU modules are provided corresponding to types of MPU.
JP63139673A 1988-06-06 1988-06-06 MPU simulation method and MPU simulator Expired - Fee Related JP2803090B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63139673A JP2803090B2 (en) 1988-06-06 1988-06-06 MPU simulation method and MPU simulator

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63139673A JP2803090B2 (en) 1988-06-06 1988-06-06 MPU simulation method and MPU simulator

Publications (2)

Publication Number Publication Date
JPH01307837A true JPH01307837A (en) 1989-12-12
JP2803090B2 JP2803090B2 (en) 1998-09-24

Family

ID=15250754

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63139673A Expired - Fee Related JP2803090B2 (en) 1988-06-06 1988-06-06 MPU simulation method and MPU simulator

Country Status (1)

Country Link
JP (1) JP2803090B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03188535A (en) * 1989-11-29 1991-08-16 Bull Hn Inf Syst Inc Assembly language programming error detecting process
JPH0721058A (en) * 1993-06-30 1995-01-24 Nec Corp Program test system
JPH0769853B2 (en) * 1990-05-09 1995-07-31 アプライド マイクロシステムズ コーポレイション In-circuit emulator

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5835647A (en) * 1981-08-27 1983-03-02 Nec Corp Appreciating device for microcomputer
JPS6072038A (en) * 1983-09-28 1985-04-24 Hitachi Ltd Inspecting device of software
JPS6142040A (en) * 1984-08-03 1986-02-28 Nec Corp Logical simulator
JPS63126043A (en) * 1986-11-17 1988-05-30 Hitachi Ltd Logic simulator

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5835647A (en) * 1981-08-27 1983-03-02 Nec Corp Appreciating device for microcomputer
JPS6072038A (en) * 1983-09-28 1985-04-24 Hitachi Ltd Inspecting device of software
JPS6142040A (en) * 1984-08-03 1986-02-28 Nec Corp Logical simulator
JPS63126043A (en) * 1986-11-17 1988-05-30 Hitachi Ltd Logic simulator

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03188535A (en) * 1989-11-29 1991-08-16 Bull Hn Inf Syst Inc Assembly language programming error detecting process
JPH0769853B2 (en) * 1990-05-09 1995-07-31 アプライド マイクロシステムズ コーポレイション In-circuit emulator
JPH0721058A (en) * 1993-06-30 1995-01-24 Nec Corp Program test system

Also Published As

Publication number Publication date
JP2803090B2 (en) 1998-09-24

Similar Documents

Publication Publication Date Title
US8180620B2 (en) Apparatus and method for performing hardware and software co-verification testing
EP0785510B1 (en) Program debugging system for debugging a program having a graphical user interface
US5715433A (en) Dynamic software model for emulating hardware
CN117422026A (en) RISC-V architecture-based processor verification system
US20030177471A1 (en) System and method for graphically developing a program
JPH01307837A (en) Mpu simulation method and mpu simulator
CN112765018B (en) Instrument and meter debugging system and method
JPH08314760A (en) Program development supporting device
Kline et al. The in-circuit approach to the development of microcomputer-based products
Davidson High level microprogramming: current usage, future prospects
CA2193466C (en) Game apparatus and method for debugging game program
JP2828590B2 (en) Microprogram verification method
Rose et al. N. mPc: a retrospective
Krummel et al. Advances in microcomputer development systems
Gladstone Comparing Microcomputer Development System Capabilities
Hocker The use of software simulators in the testing and debugging of microprogram logic
JPH05250221A (en) Simulator execution system
JP4149047B2 (en) Simulator
Gray A computer simulator for use in an introductory course on computer systems and assembly language programming
JP2004145670A (en) Method and device for generating test bench, and computer program
JP2939390B2 (en) emulator
JPH04123144A (en) Debuging device
Mitchell Manual and automatic vhdl/verilog test bench coding techniques
JPH04123143A (en) Simulator for recorder
Sherwood A prototype engineering tester for microcode and hardware debugging

Legal Events

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