JPH10301801A - Debug device and information storage medium - Google Patents

Debug device and information storage medium

Info

Publication number
JPH10301801A
JPH10301801A JP9120346A JP12034697A JPH10301801A JP H10301801 A JPH10301801 A JP H10301801A JP 9120346 A JP9120346 A JP 9120346A JP 12034697 A JP12034697 A JP 12034697A JP H10301801 A JPH10301801 A JP H10301801A
Authority
JP
Japan
Prior art keywords
information
debug
program
debugging
pod
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.)
Withdrawn
Application number
JP9120346A
Other languages
Japanese (ja)
Inventor
Yoshimi Oka
義美 岡
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP9120346A priority Critical patent/JPH10301801A/en
Publication of JPH10301801A publication Critical patent/JPH10301801A/en
Withdrawn legal-status Critical Current

Links

Landscapes

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

Abstract

PROBLEM TO BE SOLVED: To provide a debug device and an information storage medium for providing information for allowing a user to easily understand the executed content or execution position or the like of a program executed for debug based on the output information of the program executed for debug. SOLUTION: This debug device operates debug by connecting a card PC (personal computer) being the object of debug(a target equipment 100) through a communication line 30 with a host device 200 being a debug device. A program 300 for debug is executed in the target equipment 100. In the target equipment 100, the output information of the program 300 for debug is transmitted to the host equipment 200, a waiting state for a command from the host device 200 is obtained, and when the command is transmitted, the processing of the command is operated. In the host device 200, a POD(power-on diagnostic) the inverse of ID, line number, source file, and comment or the like executed by the target equipment are outputted to a display part 670.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、ターゲットとなる
情報処理装置のハードウエア及びソフトウエアの少なく
とも一方をデバッグするデバッグ装置及び情報記憶媒体
に関する。
The present invention relates to a debugging device and an information storage medium for debugging at least one of hardware and software of a target information processing device.

【0002】[0002]

【背景技術及び発明が解決しようとする課題】パソコン
を新たに設計して製造を行う場合、「回路設計→基板設
計→サンプル製造→評価→量産」という流れとなる。こ
こにおいて、新たに設計する部品が多い場合や、製造工
程が確立していないサンプル製造時には、できあがるサ
ンプルに障害が多い。このようなサンプルのデバッグの
際に、パソコンの組み込みROMに書き込んで提供され
ることの多いソフトウエアであるBIOS(Basic
Input/Output System)の初期化と
機能診断のルーチン(以下POD(Power On
Diagnostic)と呼ぶ)が援用されることが多
い。BIOSは、ハードウエアの制御を行うソフトウエ
アであり、PODはそのなかの電源投入後最初に実行さ
れるプログラムである。従って、最初のサンプルのハー
ドウエアのデバッグは、まずCPUがROMから命令を
取り込んで動くようにすること、つまり、PODが動か
せる状態にすることから始まる。
2. Description of the Related Art When a personal computer is newly designed and manufactured, the flow is "circuit design → board design → sample manufacture → evaluation → mass production”. Here, when there are many parts to be newly designed or when manufacturing a sample for which a manufacturing process has not been established, the completed sample has many obstacles. When debugging such a sample, BIOS (Basic) which is software which is often written and provided in a built-in ROM of a personal computer is provided.
Initialization of Input / Output System and function diagnosis routine (hereinafter referred to as POD (Power On)
Diagnostics) are often incorporated. The BIOS is software for controlling hardware, and the POD is a program executed first after the power is turned on. Thus, hardware debugging of the first example begins with the CPU fetching instructions from the ROM and enabling it, ie, enabling the POD to operate.

【0003】このようなサンプルは、信号線の配線のつ
なぎまちがえやクロストークやハンダの不良等のハード
ウエアのバグ及びソフトウエアのバグを多く含んでお
り、そのデバッグ作業は困難なものであった。
Such a sample contains a lot of hardware bugs and software bugs such as incorrect connection of signal lines, crosstalk and defective soldering, and the debugging work is difficult. .

【0004】ここでサンプルのハードウエアとPODを
援用したデバッグの一般的な手法について説明する。
Here, a general debugging method using sample hardware and POD will be described.

【0005】サンプルに電源を投入すると最初にPOD
が実行される。PODは、周辺デバイスの機能診断をす
るので、PODの動作を確認することで、ハードウエア
の障害をある程度特定することができる。また、ソフト
的な設定が正しく行われているのかの検査もすることが
できる。
When power is supplied to the sample, the POD
Is executed. Since the POD diagnoses the function of the peripheral device, it is possible to identify a hardware failure to some extent by checking the operation of the POD. In addition, it is possible to check whether the software setting is correctly performed.

【0006】PODは、デバッグ上重要な位置でPOD
_IDと呼ばれるコードを所定のI/O port(M
FGポート)に出力する。そして、PODは、システム
を動かす上で必要なデバイスに障害がある場合には、自
らハングアップするように設計されている。従って、P
ODの実行中にMFGポートに出力される値をロジック
アナライザ等を用いて採ると、PODがどのルーチンを
実行したかが分かる。またMFGポートに出力された最
後の値を見れば、PODがハングアップした場合にどの
ルーチンを実行した結果ハングアップしたのかが分か
る。また、POD_IDは1ずつインクリメントされる
番号であるため、POD_IDを調べることで、POD
の実行位置を知ることができる。
[0006] The POD is used at a position important for debugging.
_ID is converted to a predetermined I / O port (M
FG port). The POD is designed to hang up by itself when a device necessary for operating the system has a failure. Therefore, P
If a value output to the MFG port during execution of the OD is taken using a logic analyzer or the like, it is possible to know which routine the POD has executed. Also, by looking at the last value output to the MFG port, it is possible to know which routine executed when the POD hangs up, resulting in the hang-up. Also, since the POD_ID is a number that is incremented by one, by examining the POD_ID,
The execution position of can be known.

【0007】しかし、POD_IDは単なる連番として
出力される番号にすぎない。このため、該POD_ID
を見ただけでユーザーが実行内容やPODのソースコー
ドのどの部分に対応しているのかを理解することは容易
ではなく、これがデバッグ作業を困難なものとする原因
の一つとなっていた。
[0007] However, POD_ID is merely a number output as a serial number. Therefore, the POD_ID
It is not easy for the user to understand the execution contents and which part of the POD source code corresponds just by looking at it, and this is one of the causes that makes the debugging work difficult.

【0008】本発明の目的は、デバッグ用に実行される
プログラムの出力情報に基づき、ユーザーがそのデバッ
グ用に実行されるプログラムの実行内容や実行位置等を
容易に理解できる情報を提供できるデバッグ装置及び情
報記憶媒体を提供することである。
SUMMARY OF THE INVENTION An object of the present invention is to provide a debugging apparatus which can provide information that allows a user to easily understand the execution contents and execution position of a program executed for debugging based on output information of the program executed for debugging. And an information storage medium.

【0009】[0009]

【課題を解決するための手段】本発明は、ターゲットと
なる情報処理装置のハードウエア及びソフトウエアの少
なくとも一方をデバッグするデバッグ装置であって、前
記ターゲット機において実行された前記デバッグ用プロ
グラムの出力データ及び前記デバッグ用プログラムのソ
ースコードに基づき、前記デバッグ用プログラムの実行
位置及び実行内容の少なくとも一方を表す情報を含むユ
ーザー用のデバッグ情報を作成するユーザー用デバッグ
情報作成手段と、前記ユーザー用のデバッグ情報を所与
の出力手段に出力するユーザー用デバッグ情報出力手段
とを含むことを特徴とする。
According to the present invention, there is provided a debugging apparatus for debugging at least one of hardware and software of a target information processing apparatus, comprising the steps of: outputting an output of the debugging program executed in the target machine; User debug information creating means for creating user debug information including information representing at least one of an execution position and an execution content of the debug program based on data and a source code of the debug program; and User debug information output means for outputting debug information to a given output means.

【0010】ターゲット機とはデバッグの対象となる情
報処理装置をいう。
The target machine is an information processing device to be debugged.

【0011】本発明ではターゲット機において実行され
るデバッグ用プログラムの出力データ及び前記バッグ用
プログラムのソースコードに基づき作成された前記デバ
ッグ用プログラムの実行位置及び実行内容の少なくとも
一方を含むユーザー用デバッグ情報が出力される。この
ため、単に前記出力データが出力される場合に比べて、
前記デバッグ用プログラムの実行内容や実行位置等の理
解が容易となる。従って、デバッグ作業を容易にし、デ
バッグ効率の向上を図ることが出来るデバッグ装置を提
供することができる。
According to the present invention, user debug information including at least one of an execution position and an execution content of the debug program created based on output data of the debug program executed on the target machine and the source code of the bag program. Is output. Therefore, compared to a case where the output data is simply output,
It is easy to understand the execution contents and the execution position of the debugging program. Therefore, it is possible to provide a debugging device that facilitates debugging work and improves debugging efficiency.

【0012】また本発明の前記ユーザー用デバッグ情報
作成手段は、前記デバッグ用プログラムの出力データに
基づき前記デバッグ用プログラムのソースコードに含ま
れるコメント情報を抽出して、ユーザー用のデバッグ情
報を作成し、前記ユーザー用デバッグ情報出力手段は、
前記デバッグ用プログラムのソースコードに含まれるコ
メント情報を含むユーザー用のデバッグ情報を出力する
ことを特徴とする。
Further, the user debug information creating means of the present invention creates comment information included in the source code of the debug program based on output data of the debug program to create debug information for the user. , The user debug information output means,
Outputting debug information for a user including comment information included in a source code of the debug program.

【0013】一般にコメントには、ソースコードに記載
された命令コード等に対応して、その部分の実行内容等
がわかるような情報が記されている。従って、該コメン
トをみれば、前記デバッグ用プログラムの実行内容等が
容易に理解できる場合が多い。
Generally, a comment describes information corresponding to an instruction code or the like described in a source code so that the contents of execution of the portion can be understood. Therefore, in many cases, the contents of execution of the debugging program can be easily understood from the comments.

【0014】本発明ではターゲット機において実行され
るデバッグ用プログラムの出力データに対応した前記バ
ッグ用プログラムのソースコードに含まれるコメント情
報を含むユーザー用デバッグ情報が出力される。
According to the present invention, user debug information including comment information included in the source code of the bag program corresponding to the output data of the debug program executed in the target machine is output.

【0015】従って前記コメント情報を利用して、デバ
ッグ動作を容易にし、デバッグ効率の向上を図ることが
出来るデバッグ装置を提供することができる。ここにお
いて、前記デバッグ用プログラムにデバッグ作業が効率
良く行えるようにコメントを記載しておくことが好まし
い。
Therefore, it is possible to provide a debugging device that can facilitate a debugging operation and improve debugging efficiency by using the comment information. Here, it is preferable that a comment is written in the debugging program so that the debugging operation can be performed efficiently.

【0016】また本発明の前記デバッグ用プログラムの
出力データは、前記デバッグ用プログラムの実行位置を
表す実行位置データを含み、前記ユーザー用デバッグ情
報作成手段は、前記デバッグ用プログラムから出力され
た実行位置データに基づき、ユーザー用デバッグ情報を
作成することを特徴とする。
Further, the output data of the debug program of the present invention includes execution position data indicating an execution position of the debug program, and the user debug information creating means includes an execution position output from the debug program. It is characterized in that user debug information is created based on data.

【0017】ここにおいて実行位置を表す実行位置デー
タとは、デバッグ用プログラムのソースコードによって
示される実行位置と1対1又は多対1の対応関係を有す
るようなデータをいう。
Here, the execution position data indicating the execution position is data having a one-to-one or many-to-one correspondence with the execution position indicated by the source code of the debugging program.

【0018】本発明によれば、前記実行位置データの有
する前記対応関係に基づいて前記デバッグ用プログラム
の対応するソースコードを検出することができるため、
効率良く前記ソースコードに対応したユーザー用デバッ
グ情報を提供することができる。
According to the present invention, a corresponding source code of the debugging program can be detected based on the correspondence relationship of the execution position data.
User debug information corresponding to the source code can be efficiently provided.

【0019】また本発明は、前記デバッグ用プログラム
のソースコードに基づいて作成された前記デバッグ用プ
ログラムの実行位置及び実行内容の少なくとも一方を表
す情報を含むソース情報を前記デバッグ用プログラムの
出力データに対応させて記憶するソース情報記憶手段を
さらに含み、前記ユーザー用デバッグ情報作成手段は前
記デバッグ用プログラムから出力された出力データに基
づき、前記ソース情報記憶手段に記憶されたソース情報
を読み出して、ユーザー用のデバッグ情報を作成するこ
とを特徴とする。
According to the present invention, source information including information indicating at least one of an execution position and an execution content of the debug program created based on a source code of the debug program is output to the output data of the debug program. A source information storage unit for storing the source information stored in the source information storage unit based on output data output from the debugging program; It is characterized by creating debug information for the application.

【0020】本発明によれば、ソース情報記憶手段は、
前記デバッグ用プログラムのソースコードに基づいて作
成された前記デバッグ用プログラムの実行位置及び実行
内容の少なくとも一方を表す情報を含むソース情報を記
憶しており、該ソース情報を読み出してユーザー用のデ
バッグ情報を作成する。従って、実行の度に前記デバッ
グ用プログラムのソースコードから前記デバッグ用プロ
グラムの実行位置及び実行内容の少なくとも一方を表す
情報を作成する場合に比べ、効率良くソースコードに対
応したユーザー用デバッグ情報を提供することができ
る。
According to the present invention, the source information storage means comprises:
It stores source information including information indicating at least one of an execution position and an execution content of the debugging program created based on the source code of the debugging program, and reads the source information to obtain debugging information for a user. Create Accordingly, user debug information corresponding to the source code is provided more efficiently than in a case where information representing at least one of the execution position and the execution content of the debug program is created from the source code of the debug program each time the program is executed. can do.

【0021】また本発明の前記ソース情報記憶手段は、
前記デバッグ用プログラムのソースコードに含まれるコ
メント情報を前記デバッグ用プログラムの出力データに
対応させて記憶することを特徴とする。
Further, the source information storage means of the present invention comprises:
Comment information included in the source code of the debugging program is stored in association with output data of the debugging program.

【0022】本発明によれば、ソース情報記憶手段は、
前記デバッグ用プログラムのソースコードに含まれるコ
メント情報を記憶している。従って、実行の度に前記デ
バッグ用プログラムのソースコードに含まれるコメント
情報を抽出する場合に比べ効率良くソースコードに対応
したコメント情報を含むユーザー用デバッグ情報を提供
することができる。
According to the present invention, the source information storage means comprises:
It stores comment information included in the source code of the debugging program. Therefore, user debug information including comment information corresponding to the source code can be provided more efficiently than when comment information included in the source code of the debug program is extracted each time the program is executed.

【0023】また本発明の前記ユーザー用デバッグ情報
出力手段は、所与の表示手段に前記ユーザー用のデバッ
グ情報を出力することを特徴とする。
Further, the user debug information output means of the present invention outputs the user debug information to a given display means.

【0024】本発明によれば、ユーザー用のデバッグ情
報が所与の表示手段に出力されるため、容易にユーザー
用のデバッグ情報の確認が行えるデバッグ装置を提供す
ることができる。
According to the present invention, since debugging information for a user is output to a given display means, it is possible to provide a debugging device capable of easily confirming debugging information for a user.

【0025】また本発明の前記デバッグ用プログラムの
出力データは、ターゲット機の読み出し専用メモリに記
憶されているBIOSの初期化及び機能診断ルーチンの
出力データであることを特徴とする。
The output data of the debugging program of the present invention is output data of a BIOS initialization and function diagnosis routine stored in a read-only memory of a target machine.

【0026】ここにおいてBIOSとは、Basic
Input/Output Systemの省略で、通
常パソコン等の情報処理装置に組み込みのROMに書き
込んで提供されるソフトウエアをさす。本発明に関係す
るBIOSの機能としては、ハードウエアの初期化と機
能診断がある。
Here, BIOS refers to Basic.
Abbreviation of Input / Output System, usually refers to software provided in an information processing device such as a personal computer by being written in a built-in ROM. BIOS functions related to the present invention include hardware initialization and function diagnosis.

【0027】BIOSの初期化と機能診断のルーチン
は、電源投入後最初に実行されるプログラムである。前
記ルーチンは、メモリ・ビデオ・通信ポート・キーボー
ドなどパソコン等の情報処理装置に普通に装備されてい
る周辺装置が正常に働くかどうか分からない状態で実行
が開始される。即ち該ルーチンは、CPUと該ルーチン
が納められているROMのみが正常に働くと言う前提で
作られており、上記の周辺装置の機能を調べ、前記周辺
装置の初期化を行うものである。
The BIOS initialization and function diagnosis routine is a program executed first after the power is turned on. The routine is started in a state where it is not known whether a peripheral device normally provided in an information processing device such as a personal computer such as a memory, a video, a communication port, and a keyboard works properly. That is, the routine is made on the assumption that only the CPU and the ROM in which the routine is stored operate normally. The routine checks the function of the peripheral device and initializes the peripheral device.

【0028】本発明によれば、このようなBIOSの初
期化と機能診断のルーチンを前記デバッグ用プログラム
として利用して効率よくデバッグ処理を行うことができ
るデバッグ装置を提供することができる。
According to the present invention, it is possible to provide a debugging apparatus capable of efficiently performing a debugging process by using such a BIOS initialization and function diagnosis routine as the debugging program.

【0029】[0029]

【発明の実施の形態】本発明の実施の形態について説明
する。
Embodiments of the present invention will be described.

【0030】図1は、本実施例のデバッグ装置を用い
て、クレジットサイズのカード形状のパソコン(以下カ
ードPCという)のサンプルをデバッグする際の外観図
を示している。前記カードPC10は、非常に小型であ
るため、サンプルデバッグ時にロジックアナライザのプ
ローブを付けることが困難である。また、前記カードP
C10は、CPUが基板に直付けになっているため、C
PUをICEのプローブと交換することができない。こ
のため、サンプルデバッグ時にロジックアナライザやI
CEを使うことができない。
FIG. 1 is an external view showing the use of the debug device of the present embodiment to debug a sample of a credit-size card-shaped personal computer (hereinafter referred to as a card PC). Since the card PC 10 is very small, it is difficult to attach a logic analyzer probe during sample debugging. The card P
Since C10 is directly attached to the board, C10 is
PU cannot be replaced with ICE probe. For this reason, the logic analyzer and I
I can't use CE.

【0031】そこで、本デバッグ装置は、デバッグの対
象(ターゲット機)であるカードPC10をホスト機と
なるパソコン20に通信線30で接続してデバッグを行
うよう構成されている。
Therefore, the present debugging apparatus is configured to connect the card PC 10 as a debugging target (target machine) to a personal computer 20 as a host machine via a communication line 30 to perform debugging.

【0032】(本実施例のハードウエア構成)図2は、
本実施例のデバッグ装置をサンプルとなるターゲット機
に通信線で接続した場合のハードウエア構成を示してい
る。ここにおいて本デバッグ装置をホスト機200と呼
ぶ。
(Hardware Configuration of the Present Embodiment) FIG.
The hardware configuration in the case where the debugging device of the present embodiment is connected to a sample target device via a communication line is shown. Here, the debugging device is referred to as a host device 200.

【0033】ターゲット機100は、CPU110、R
OM120、RAM130、I/Oポート140を含ん
でいる。ROM120には、デバッグ用プログラムが書
き込まれている。CPUはROMに記憶された該デバッ
グ用プログラムを読んで実行を行う。また、該デバッグ
用プログラムは図3に示すように通信ルーチン330を
含んでいる。
The target machine 100 includes a CPU 110, an R
It includes an OM 120, a RAM 130, and an I / O port 140. In the ROM 120, a debugging program is written. The CPU reads and executes the debugging program stored in the ROM. The debugging program includes a communication routine 330 as shown in FIG.

【0034】ターゲット機となるカードPCはデバッグ
の対象となるサンプルであるため、電源投入後にPOD
を数十ステップも実行するとハングアップする程度にハ
ードウエアに障害を含んでいる段階である。但し、本デ
バッグ装置が有効に機能するために、少なくともCPU
はROMに記憶されたデバッグ用プログラムを読み込ん
で実行し、その出力をI/Oポートから通信線30を通
じてホスト機に送信できる機能は動作してるものとす
る。
Since the card PC as the target machine is a sample to be debugged, the POD is turned on after the power is turned on.
This is a stage where hardware is faulty to the extent that it hangs up when dozens of steps are performed. However, in order for this debug device to function effectively, at least the CPU
Reads and executes a debugging program stored in the ROM, and operates a function capable of transmitting an output from the I / O port to the host device through the communication line 30.

【0035】ホスト機200は、CPU210、ROM
220、RAM230、I/Oポート240を含んでい
る。RAM230には、図6に示すホストプログラム6
00及びコメントファイル720が記憶されている。該
ホストプログラム600に記憶されている表示モジュー
ル640等が実行されることにより、ユーザー用デバッ
グ情報作成手段及びユーザー用デバッグ情報出力手段と
して機能する。また、前記コメントファイル720がソ
ース情報記憶手段として機能する。
The host device 200 includes a CPU 210 and a ROM.
220, a RAM 230, and an I / O port 240. The RAM 230 stores the host program 6 shown in FIG.
00 and a comment file 720 are stored. When the display module 640 or the like stored in the host program 600 is executed, it functions as a user debug information creation unit and a user debug information output unit. The comment file 720 functions as a source information storage unit.

【0036】また、ホスト機200とターゲット機10
0は、双方向の通信線で結ばれている。該通信線は、タ
ーゲット機100からホスト機200への通信を行う第
一の通信線31と、ホスト機200からターゲット機1
00への通信を行う第二の通信線32とシグナルグラウ
ンド33を含む。前記の各通信線31、32、33は双
方向でありさえすればよく、シリアルケーブルでもパラ
レルケーブルでもよい。ソフトウエアでそれぞれの通信
線に応じた通信ルーチンを用意すればよいからである。
The host machine 200 and the target machine 10
0 is connected by a bidirectional communication line. The communication line includes a first communication line 31 for performing communication from the target device 100 to the host device 200, and a communication line from the host device 200 to the target device 1
A second communication line 32 and a signal ground 33 for performing communication to 00 are included. The communication lines 31, 32, and 33 need only be bidirectional, and may be a serial cable or a parallel cable. This is because a communication routine corresponding to each communication line may be prepared by software.

【0037】ターゲット機では、送信用に任意のI/O
ポートの1ビットを、受信用に任意のI/Oポートの1
ビットを割り当てている。両者は、同じポートの別の2
ビットでも良いし、Read Only/Write
Onlyの同一のビットであってもよい。例えば、シリ
アルポートのハンドシェイクラインを割り当てることも
できるし、外付けのハードウエアに入出力のビットを一
つずつ用意しても良い。通信線30は双方向であり、半
二重の通信線が用いられている。半二重であること自体
には意味がないが、単純なI/Oポートで通信する関係
上ハードウエアの支援が得られないこと及び通信プログ
ラムがRAMを使えないこと及び通信速度の確保のため
には、全二重では無く半二重が好ましい。
In the target machine, any I / O for transmission
1 bit of port is set to 1 of any I / O port for reception.
Bits are allocated. Both are another two on the same port
Bits may be used, and Read Only / Write
Only the same bit may be used. For example, a handshake line of a serial port can be assigned, or input / output bits can be prepared one by one in external hardware. The communication line 30 is bidirectional, and a half-duplex communication line is used. Although it is meaningless to be half-duplex in itself, hardware support cannot be obtained due to communication through a simple I / O port, a communication program cannot use RAM, and communication speed is secured. Is preferably not half-duplex but half-duplex.

【0038】(本実施例のソフトウエア構成)ターゲッ
ト機の実行結果をホスト機でリアルタイムに受け取って
デバッグを行う場合のターゲット機100及びホスト機
200のソフトウエア構成について説明する。
(Software Configuration of the Present Embodiment) The software configuration of the target device 100 and the host device 200 when the execution result of the target device is received and debugged in real time by the host device will be described.

【0039】ターゲット機100では、デバッグ用プロ
グラムが実行される。デバッグ用プログラムの詳細につ
いては後述するが、図3に示すようにPODを含んでい
る。該PODには従来に比べて10倍程度多いPOD_
IDを出力できるよう構成されている。デバッグ用プロ
グラムでは、従来のPODが決まったボードに単純な出
力命令で出力していたPOD_IDを、双方向の通信線
30を使ってホスト機200に送るように構成されてい
る。また、送出後、ホスト機200から何等かのコマン
ドが送られてこないか確認する。送られてこない場合に
はPODを続行し、送られてきた場合にはそのコマンド
を処理を行う。
In the target machine 100, a debugging program is executed. Although details of the debug program will be described later, the debug program includes a POD as shown in FIG. The POD has about 10 times more POD_
It is configured to output an ID. The debugging program is configured to transmit the POD_ID, which has been output by a simple output command to a board in which the conventional POD is determined, to the host device 200 using the bidirectional communication line 30. After the transmission, it is checked whether any command is transmitted from the host device 200. If not sent, POD is continued, and if sent, the command is processed.

【0040】ホスト機200ではホストプログラムが実
行される。ホストプログラムは、ターゲット機100に
メモリ読み出しなどのコマンドを送り、その実行結果を
受け取り表示したり、ターゲット機100にプログラム
を送って実行させたりする。
In the host device 200, a host program is executed. The host program sends a command such as a memory read to the target device 100, receives and displays the execution result, and sends the program to the target device 100 to be executed.

【0041】次に、それぞれのソフトウェアが有するデ
バッグ上必要な各機能について説明する。
Next, each function required for debugging of each software will be described.

【0042】(ターゲット機におけるホスト検出機能)
ターゲット機100のデバッグ用プログラムは、処理を
開始してできるだけ早い時期にホスト機を検出し、ホス
ト機200が存在したかどうかを、ホスト存在フラグを
立てて記憶する。このようにホスト存在フラグを置くの
は、POD_ID送出の度にホスト機を検出すると、ホ
スト機200が存在しない場合PODの動作が遅くなっ
てしまうからである。
(Host detection function in target machine)
The debugging program of the target device 100 detects the host device as soon as possible after the processing is started, and sets whether or not the host device 200 is present by storing the host presence flag. The reason why the host presence flag is set in this manner is that if a host device is detected every time the POD_ID is sent, the operation of the POD becomes slow when the host device 200 does not exist.

【0043】このようにすることで、デバッグ用プログ
ラムはデバッグ時以外は、ホストが無いものとして、通
常のPODの動作する。このため、製品出荷時にもデバ
ッグ用プログラムをはずす必要はない。従って、製品出
荷後に不良がでた場合のデバッグにも利用することがで
きる。
In this manner, the debugging program operates as a normal POD except that there is no host except during debugging. For this reason, there is no need to remove the debugging program even when the product is shipped. Therefore, it can be used for debugging when a defect occurs after product shipment.

【0044】(ターゲット機におけるPOD_ID送信
機能)デバッグ用プログラムのPODには、その各所
に、動作が十分追えるようにPOD_IDが割り当てら
れている。POD_IDが割り当てられているとは、P
OD_IDを送出するためのルーチンを呼び出すサブル
ーチンコールが組み込まれていることを意味する。図4
(A)は、PODにPOD_IDを送出するためのルー
チンを呼び出すサブルーチンコールが組み込まれている
様子を示している。ここではsend_id(360ー
1、360ー2、360ー3)がPOD_IDを送出す
るためのルーチンを呼び出すサブルーチンコールに当た
る。
(POD_ID Transmission Function in Target Machine) POD_ID is assigned to each part of the POD of the debugging program so that the operation can be sufficiently followed. POD_ID is assigned when P
This means that a subroutine call for calling a routine for sending OD_ID is incorporated. FIG.
(A) shows a state in which a subroutine call for calling a routine for sending POD_ID to POD is incorporated. Here, send_id (360-1, 360-2, 360-3) corresponds to a subroutine call for calling a routine for transmitting POD_ID.

【0045】POD_IDを送出するためのルーチンで
は、まず、I/OポートへのPOD_IDの出力がおこ
なわれる。これは、単純なアウトプット命令である。そ
して、ホスト機が存在するかどうかホスト存在フラグに
よって判定する。ホスト機が存在しない場合には直ちに
呼び出し元に戻る(図5(A)のステップ50参照)。
ホスト機が存在する場合には、POD_IDをホスト機
に送り出し(図5(A)のステップ60参照)、その
後、ホスト機からコマンドの送出が無いか調べるためし
ばらく待つ(図5(A)のステップ70参照)。そして
コマンドが来なければ呼び出し元に戻る(図5(A)の
500参照)。コマンドが来れば、そのコマンドを処理
した後、呼び出し元に戻る(図5(A)のステップ10
0、110、120、140参照)。なお、RAMが使
えない場合でも、コマンド処理が行えるように、送られ
てきたコマンドや付随するパラメータ等は、CPUのレ
ジスタに記憶して処理を行うようにすることが好まし
い。
In the routine for transmitting the POD_ID, first, the POD_ID is output to the I / O port. This is a simple output instruction. Then, it is determined based on the host presence flag whether or not the host machine exists. If there is no host machine, the process immediately returns to the caller (see step 50 in FIG. 5A).
If the host machine is present, the POD_ID is sent to the host machine (see step 60 in FIG. 5A), and thereafter, it waits for a while to check whether a command is sent from the host machine (step in FIG. 5A). 70). If no command is received, the process returns to the calling source (see 500 in FIG. 5A). When a command arrives, it processes the command and returns to the calling source (step 10 in FIG. 5A).
0, 110, 120, 140). It is preferable that the transmitted command and associated parameters are stored in a register of the CPU and processed so that command processing can be performed even when the RAM cannot be used.

【0046】(ホスト機における出力情報受信機能)ホ
ストプログラムは、デバッグ用プログラムにホスト機を
検出させるため、デバッグ用プログラムより先に実行を
開始し、常に通信線30を見張り、PODがPOD_I
Dを送り出す度にそれを受け取ってメモリに蓄積する
(図5(B)のステップ160、170、180参
照)。ホスト機のメモリ上には、概ね3万ステップ程度
のPOD_IDが蓄積が可能である。これは、ロジック
アナライザに比べると10倍程度の能力であり、さらに
テンポラリファイルを利用することで、蓄積量を事実上
無制限にすることもできる。
(Output Information Receiving Function in Host Machine) In order to make the debug program detect the host machine, the host program starts execution before the debug program, always monitors the communication line 30, and the POD is POD_I.
Each time D is sent out, it is received and stored in memory (see steps 160, 170, 180 in FIG. 5B). POD_ID of about 30,000 steps can be stored in the memory of the host machine. This is about ten times the capacity of a logic analyzer, and the use of a temporary file can make the storage amount virtually unlimited.

【0047】(ホスト機における出力情報表示機能)蓄
積されたPOD_IDは、通信処理の合間にホスト機の
画面に表示される。POD_IDそのままでは単なる1
6ビットの数値で分かり難いので、対応するPODソー
スコードからコメントを取り出してならべて表示するこ
と等が好ましい。
(Output Information Display Function in Host Device) The accumulated POD_ID is displayed on the screen of the host device between communication processes. POD_ID is just 1 as it is
Since it is difficult to understand with a 6-bit numerical value, it is preferable to take out comments from the corresponding POD source code and display them in order.

【0048】(ホストプログラムからターゲット機の動
作を停止させるための機能)ブレークポイント機能を利
用したり、ワンステップ機能を利用したり、その他のユ
ーザー操作によって、ホスト機からターゲット機の動作
を停止させることができる。
(Function for Stopping Operation of Target Device from Host Program) The operation of the target device is stopped from the host device by using a breakpoint function, a one-step function, or other user operation. be able to.

【0049】ブレークポイント機能とは、あらかじめ決
められたPOD_IDが送られてきた時にPODの処理
を止める機能である。この機能は、POD_IDを受け
取った直後にターゲット機にPODの動作を中断するコ
マンドを送ることで実現される。(図5(B)のステッ
プ190、210参照)ブレークポイントとなるPOD
_IDはシステムで標準を定めても良いし、ユーザーが
デバッグ状況に応じて適宜定めても良い。例えば、デバ
ッグ用プログラムがシリアルポートの初期化を終えた時
に動作を止め、シリアルポートのテストプログラムをタ
ーゲット機に送り込んでシリアルポートの動作を確かめ
たい場合、前記初期化を終えた時点で出力されるPOD
_IDをブレークポイントとして設定しておくこととよ
い。
The break point function is a function for stopping POD processing when a predetermined POD_ID is sent. This function is realized by sending a command to suspend the POD operation to the target device immediately after receiving the POD_ID. (See steps 190 and 210 in FIG. 5B) POD serving as a breakpoint
The _ID may be set as a standard in the system, or may be set as appropriate by the user according to the debugging situation. For example, when the debug program stops operating when the serial port is initialized and sends the serial port test program to the target machine to check the operation of the serial port, the output is performed when the initialization is completed. POD
_ID may be set as a breakpoint.

【0050】ブレークポイントでPODの処理を止めた
後、ユーザーは、ホストプログラムを通して、種々の操
作を行うことができる。即ちホスト機の画面には、デバ
ッグ用プログラムに進行状況を表すために実行位置に対
応するコメント情報が表示されている。ユーザーは、該
画面表示を見ながら、ブレークポイントにおいてターゲ
ット機において実行させたいデバッグ処理を決定し、該
デバッグ処理に対応するコマンド等の実行を、ホスト機
のキーボードより入力する(図5(B)のステップ22
0、230、240参照)。
After stopping the processing of the POD at the break point, the user can perform various operations through the host program. That is, comment information corresponding to the execution position is displayed on the screen of the host machine to indicate the progress of the debugging program. The user determines a debugging process to be executed on the target device at the break point while watching the screen display, and inputs an execution of a command or the like corresponding to the debugging process from the keyboard of the host device (FIG. 5B). Step 22 of
0, 230, 240).

【0051】なお、ブレークポイント以外でもターゲッ
ト機の動作を停止させたい場合、ワンステップ機能を利
用したり、ユーザー操作を行ったりする。
When it is desired to stop the operation of the target machine other than at a break point, a one-step function is used or a user operation is performed.

【0052】ワンステップ機能とは、ターゲット機にお
いて次のsend_idルーチン呼び出しまでを実行さ
せる機能である。即ちユーザーがホスト機を操作して、
ワンステップ機能を実行するよう指示した後にくる最初
のPOD_IDでターゲット機の実行を停止させること
ができる。
The one-step function is a function that causes the target machine to execute up to the next call of the send_id routine. That is, the user operates the host machine,
The execution of the target device can be stopped at the first POD_ID that comes after the instruction to execute the one-step function is issued.

【0053】ワンステップ機能は、ターゲット機のPO
Dの継続を指示するコマンドを送り、その後にくる最初
のPOD_IDに対して停止コマンドを送ることで実現
される。 また、ユーザーがホスト機を操作することに
よって、一時的なブレークポイントを指示して、該一時
的なブレークポイントでターゲット機を止めることもで
きる。
The one-step function is executed by the PO of the target machine.
This is realized by sending a command instructing continuation of D, and sending a stop command to the first POD_ID that comes after that. In addition, the user can operate the host machine to specify a temporary breakpoint, and stop the target machine at the temporary breakpoint.

【0054】以下、本デバッグ装置のターゲット機及び
ホスト機の構成及び動作の一例について詳細に説明す
る。
Hereinafter, an example of the configuration and operation of the target machine and the host machine of the debugging apparatus will be described in detail.

【0055】(デバッグ用プログラムの構成)図3は、
ターゲット機のROMに記憶されているデバッグ用プロ
グラム300の構成を表している。デバッグ用プログラ
ム300は、POD310と本デバッグ装置のデバッグ
機能を実現するために必要なプログラムであるPOD_
ID更新ルーチン320、通信ルーチン330、コマン
ド処理ルーチン340を含んでいる。
(Configuration of Debugging Program) FIG.
3 shows a configuration of a debugging program 300 stored in a ROM of a target machine. The debugging program 300 is a program necessary for realizing the POD 310 and the debugging function of the present debugging apparatus.
It includes an ID update routine 320, a communication routine 330, and a command processing routine 340.

【0056】POD310は、電源投入後最初に実行さ
れ、ハードウエアの初期化と機能診断を行うプログラム
である。すなわち、POD310は、メモリ・ビデオ・
通信ポート・キーボードなどパソコンに普通に装備され
ている周辺装置の機能を調べ初期化する複数の初期化&
機能診断ルーチン312、314…を含んでいる。
The POD 310 is a program that is executed first after the power is turned on and performs hardware initialization and function diagnosis. That is, the POD 310 is a memory video
Multiple initializations to check and initialize the functions of peripheral devices normally equipped on the PC, such as communication ports and keyboards
.. Includes a function diagnosis routine 312, 314.

【0057】該POD310は、電源投入後最初に実行
され、周辺デバイスの機能診断をするため、従来からサ
ンプルのデバッグに用いるプログラムとして援用されて
いた。しかし従来は、デバッグ上重要な位置でPOD_
IDと呼ばれるコードを出力させ、それをロジックアナ
ライザに記憶させていただけだった。このため、ロジッ
クアナライザがつかないサンプルではデバッグが出来な
かったり、記録出来るPOD_IDの数が限られていた
り、PODの実行を止めて種々の操作をすることが出来
ない等の各種不具合が生じていた。
The POD 310 is executed first after the power is turned on, and has been conventionally used as a program used for debugging a sample in order to diagnose the function of a peripheral device. However, conventionally, POD_
They simply output a code called ID and stored it in the logic analyzer. For this reason, various problems have occurred such that debugging cannot be performed with a sample without a logic analyzer, the number of POD_IDs that can be recorded is limited, and various operations cannot be performed after POD execution is stopped. .

【0058】そこで前記不具合の解消すべく、本実施例
のターゲット機はPOD_IDも含めたデバッグ用プロ
グラムの出力情報を前記通信線30を介してホスト機2
00に送信し、又ホスト機からのコマンド等を受信し
て、該コマンドに対応する処理を行う機能を有するよう
構成されている。
In order to solve the above-mentioned problem, the target machine of this embodiment transmits the output information of the debugging program including the POD_ID to the host machine 2 via the communication line 30.
00, a command from the host device, and the like, and a process corresponding to the command.

【0059】ターゲット機100においては、前記PO
D_ID更新ルーチン320、通信ルーチン330、コ
マンド処理ルーチン340をデバッグ用プログラムに含
ませることで、ソフトウエア的に前記機能の実現を図っ
ている。
In the target machine 100, the PO
The D_ID update routine 320, the communication routine 330, and the command processing routine 340 are included in a debugging program, thereby realizing the above functions in software.

【0060】前記POD_ID更新ルーチン320は、
POD_IDを更新して、通信ルーチンに渡す処理を行
うルーチンである。POD310は、デバッグ上重要な
位置でPOD_ID更新ルーチン320をコールするよ
う構成されている。なお、RAMが使えないので、サブ
ルーチンの呼び出しには、戻り番地をレジスタ渡しにす
るなどの特殊なテクニックが必要となる。
The POD_ID update routine 320
This is a routine for performing a process of updating POD_ID and passing it to the communication routine. The POD 310 is configured to call the POD_ID update routine 320 at a location important for debugging. Since a RAM cannot be used, a special technique such as passing a return address to a register is required for calling a subroutine.

【0061】通信ルーチン330は、ターゲット機とホ
スト機の通信処理を行うルーチンであり、POD_ID
更新ルーチンから呼ばれて起動される。通信ルーチン
は、ホスト機の存在確認を行い、ホスト機が存在する場
合POD_IDの送信を行い、ホスト機からのコマンド
を受信するよう構成されている。そして、受信したコマ
ンドの処理を行うコマンド処理ルーチン340をコール
する。
The communication routine 330 is a routine for performing communication processing between the target machine and the host machine.
Called from the update routine and started. The communication routine is configured to confirm the presence of the host device, to transmit POD_ID when the host device exists, and to receive a command from the host device. Then, a command processing routine 340 for processing the received command is called.

【0062】コマンド処理ルーチン340は、ホスト機
から送られてくるコマンドに応じて、該コマンドに対応
した各種処理を行うためのプログラムを含んでいる。ホ
スト機からは、停止しているPOD310の継続を指示
するコマンド、PODの実行の停止を指示するコマン
ド、ターゲット機のメモリの内容を読み出すことを指示
するコマンド、ターゲット機のメモリに所与の内容を書
き込むことを指示するコマンド、ターゲット機のI/O
ポートの内容を読み出すことを指示するコマンド、ター
ゲット機のI/Oポートに所与の内容を書き込むことを
指示するコマンド、ホストから送信したプログラムの実
行を指示するコマンド等が送られてくる。
The command processing routine 340 includes a program for performing various processes corresponding to a command sent from the host machine. From the host machine, a command for instructing the continuation of the stopped POD 310, a command for instructing to stop the execution of the POD, a command for instructing to read the contents of the memory of the target machine, and a given content in the memory of the target machine. Command to write the data, I / O of target machine
A command to read the contents of the port, a command to write the given contents to the I / O port of the target device, a command to execute the program transmitted from the host, and the like are sent.

【0063】これに応じてコマンド処理ルーチン340
には前記各コマンドに対応した処理を行うためのプログ
ラムである継続コマンドルーチン341、停止コマンド
ルーチン342、メモリ読み出しコマンド処理ルーチン
343、メモリ書き込み処理ルーチン344、I/Oポ
ート読み出知るーチン345、I/Oポート書き込みル
ーチン346、プログラム実行コマンド処理ルーチン3
47が設けられている。
In response, the command processing routine 340
The continuation command routine 341, the stop command routine 342, the memory read command processing routine 343, the memory write processing routine 344, the I / O port read information 345, I / O port write routine 346, program execution command processing routine 3
47 are provided.

【0064】ここで、POD310及びPOD_ID更
新ルーチン320について説明する。
Here, the POD 310 and POD_ID update routine 320 will be described.

【0065】図4(A)(B)は、POD310の主要
個所にPOD_IDの更新ルーチン呼び出しが挿入され
ている様子及びPOD_ID更新ルーチン320の処理
の概略を表した図である。
FIGS. 4A and 4B are diagrams showing a state in which a POD_ID update routine call is inserted into a main part of the POD 310 and an outline of the processing of the POD_ID update routine 320. FIG.

【0066】図4(A)のPOD310はDMAページ
レジスタのテストを行うルーチンであり、DMAページ
レジスタの80hから8Ehに対し、各ビットが正しく
読み書き出来ることを1ビットずつ確認していく処理を
行っている。この例では、DMAページレジスタのテス
トを始めるとき(360ー1)、テスト中にエラーが生
じたとき(360ー2)、テストを終了したとき(36
0ー3)の3ヶ所でPOD_IDがホスト機に送られ
る。POD_ID更新ルーチンの呼び出しはマクロで行
われる。この例では、POD_ID更新ルーチンのマク
ロ名はsend_idである。この様に、PODを作成
する際、デバッグ状重要な位置に予めPOD_ID更新
ルーチンのマクロを挿入しておく。
The POD 310 in FIG. 4A is a routine for testing the DMA page register, and performs a process for checking the DMA page register 80h to 8Eh one bit at a time to confirm that each bit can be read and written correctly. ing. In this example, when the test of the DMA page register is started (360-1), when an error occurs during the test (360-2), and when the test is terminated (36-1).
The POD_ID is sent to the host device at three locations 0-3). The call of the POD_ID update routine is performed by a macro. In this example, the macro name of the POD_ID update routine is send_id. As described above, when a POD is created, a macro of a POD_ID update routine is inserted in advance at a debug-like important position.

【0067】図4(B)は、POD_ID更新ルーチン
320のマクロの処理の概要を表している。マクロ内で
のPOD_IDの再定義(370)は、一回マクロが呼
ばれる度にPOD_IDを増加させるためのものであ
る。これにより、マクロのなかでPOD_IDが1ずつ
増加され、各send_idマクロが異なるPOD_I
Dを送ることが出来る。なお、POD_IDはBIOS
のソースコードのファイルごとに1000個程度割り当
てられている。
FIG. 4B shows an outline of the macro processing of the POD_ID update routine 320. The redefinition of the POD_ID in the macro (370) is for increasing the POD_ID each time the macro is called. As a result, POD_ID is incremented by one among the macros, and each send_id macro has a different POD_I
D can be sent. POD_ID is BIOS
About 1000 files are assigned to each source code file.

【0068】POD_ID更新ルーチン320のマクロ
では、更新したPOD_IDをホスト機に送るために、
通信ルーチン330のコール(380)が行われる。
In the macro of the POD_ID update routine 320, in order to send the updated POD_ID to the host machine,
A call (380) of the communication routine 330 is made.

【0069】次に通信ルーチン330及び通信ルーチン
330が行うホスト機の存在確認について説明する。
Next, the communication routine 330 and the confirmation of the existence of the host machine performed by the communication routine 330 will be described.

【0070】通信ルーチン330は、ターゲット機10
0とホスト機200の通信処理を行うルーチンであり、
POD_ID更新ルーチン320から呼ばれて起動され
る。通信ルーチン330は、まずホスト機の存在の有無
の確認を行い、ホスト機が存在しない場合には、POD
_IDの送信を行わずに呼び出し元へ戻る。
The communication routine 330 is executed by the target machine 10
0 is a routine for performing communication processing between the host device 200 and the host device 200.
It is called from the POD_ID update routine 320 and started. The communication routine 330 first checks whether or not a host machine is present.
Return to the caller without transmitting _ID.

【0071】ホスト機200が存在する場合には、PO
D_IDをホスト機200に送信し、ホスト機200か
らのコマンドを受信するまで待機する。本実施例では、
ターゲット機100がホスト機200にPOD_IDを
送信すると、ホスト機200は存在する限りなにがしか
のコマンドを返送するように構成されているからであ
る。そしてホスト機200からコマンドを受信すると、
コマンド処理ルーチンをコールする。
If the host device 200 exists, the PO
D_ID is transmitted to the host device 200, and the process waits until a command from the host device 200 is received. In this embodiment,
This is because when the target device 100 transmits the POD_ID to the host device 200, the host device 200 is configured to return any command as long as it exists. When a command is received from the host device 200,
Call the command processing routine.

【0072】ターゲット機100は、POD_IDを送
信すると、ホスト機から継続コマンドを受信しない限り
ホスト機から送信されるコマンドの処理を行うよう構成
されている。このため継続コマンドの場合以外は、再び
ホスト機からのコマンドを受信するまで待機することに
なる。
Upon transmitting the POD_ID, the target device 100 is configured to process a command transmitted from the host device unless a continuation command is received from the host device. Therefore, except for the case of the continuation command, the process waits until a command from the host machine is received again.

【0073】なお、ホスト機の存在の有無の確認につい
ては、ホスト存在フラグを参照して行うよう構成されて
いる。即ち、処理の開始直後PODは通信ルーチンをコ
ールする。このとき、通信ルーチンはホスト機確認用に
決められたデータの送信をおこない、該データに対して
きめられたデータの応答があるかいなかでホスト機の存
在の有無を検出する。前記応答があった場合、ホスト機
が存在するとしてホスト存在フラグをONにし、前記応
答がない場合、ホスト機が存在しないとしてホスト存在
フラグをOFFにする。そして、ホスト存在フラグを設
定した後は、該ホスト存在フラグを参照して、ホスト機
の存在の有無の確認を行う。しかし、ホスト存在フラグ
がONであったため、POD_IDを送信したが、所定
時間すぎてもホスト機からなんらコマンドが送られてこ
ない場合には、ホスト存在フラグをOFFにして呼び出
し元に戻る。この様にしておけば、何らかの原因により
途中でホスト機との通信が出来なくなった場合、ホスト
機の存在をないものとして処理を続行出来るからであ
る。
It should be noted that the presence / absence of the host machine is confirmed by referring to the host presence flag. That is, immediately after the start of the process, the POD calls the communication routine. At this time, the communication routine transmits the data determined for host device confirmation, and detects the presence or absence of the host device in response to the determined data response to the data. If there is a response, the host presence flag is set to ON assuming that the host device is present, and if there is no response, the host presence flag is set to OFF as no host device is present. After setting the host presence flag, the presence / absence of the host device is confirmed with reference to the host presence flag. However, since the host presence flag was ON, the POD_ID was transmitted. However, if no command is sent from the host device even after a predetermined time, the host presence flag is turned OFF and the process returns to the caller. In this way, if communication with the host machine cannot be performed on the way for some reason, the processing can be continued assuming that the host machine does not exist.

【0074】また、RAMが使えない状況であるため、
ホスト存在フラグは、周辺デバイスにある何れかのポー
ト(スクラッチパッドレジスタを持つデバイスが幾つか
ある)か、CPUのレジスタの一つをPODでは使用し
ないことにしてそこに置くことにしてもよい。本実施例
では、ターゲット機の一つの32ビットレジスタ(たと
えばECXレジスタ)の上位16ビットをPODで使用
しないようにして、そこにホスト存在フラグを置くこと
にしている。このように無理をしてまでホスト存在フラ
グを置くのは、POD_ID送出の度にホスト機を検出
すると、ホスト機が存在しない場合PODの動作が遅く
なるのを防ぐためである。
Also, since the RAM cannot be used,
The host presence flag may be set to any port on the peripheral device (some devices have a scratchpad register), or one of the registers of the CPU may not be used in the POD. In this embodiment, the upper 16 bits of one 32-bit register (for example, ECX register) of the target machine are not used in POD, and the host presence flag is set there. The reason why the host presence flag is set beforehand is to prevent the POD operation from delaying when the host device is not detected when the host device is detected each time the POD_ID is transmitted.

【0075】(ターゲット機の動作の説明)ターゲット
機であるカードPCは、前記デバッグ用プログラム及び
ホスト機から送信される情報に基づき動作する。以下、
前記デバッグ用プログラムによるターゲット機の動作に
ついて説明する。
(Explanation of Operation of Target Machine) The card PC as the target machine operates based on the debugging program and information transmitted from the host machine. Less than,
The operation of the target machine by the debugging program will be described.

【0076】図5(A)(B)は本デバッグ装置の動作
説明を行うためのフローチャート図である。図5(A)
はターゲット機における動作を説明するためのフローチ
ャート図である。
FIGS. 5A and 5B are flow charts for explaining the operation of the debugging device. FIG. 5 (A)
FIG. 4 is a flowchart for explaining the operation in the target machine.

【0077】まず、電源が投入されると前記デバッグ用
プログラムのPODの実行が開始され、ホスト存在フラ
グの設定がおこなわれる(ステップ5)。そしてPOD
は、途中でハングアップするか、最後まで実行されて終
了する(ステップ10)。
First, when the power is turned on, the execution of the POD of the debug program is started, and a host presence flag is set (step 5). And POD
Hangs up in the middle or is executed to the end and ends (step 10).

【0078】PODの実行途中で、send_id(P
OD_ID更新ルーチン)のマクロ呼び出しがあると、
前記POD_ID更新ルーチン320に処理がわたりP
OD_ID更新処理が行われる(ステップ30、ステッ
プ40)。そして、前記通信ルーチン330に処理が渡
り、まずホスト機の存在チェックが行われる。即ち、ホ
スト存在フラグを参照し、ホスト存在フラグがOFFで
あったら、ホスト機へPOD_IDの送信を行わず、直
ちに呼び出し元のPODにもどる。ホスト存在フラグが
OFFでなかったら、ホスト機へPOD_IDを送信す
る処理が行われる(ステップ60)。そしてホスト機か
らのコマンド待ち状態となり、PODの実行は停止した
状態となる(ステップ70)。
During the execution of POD, send_id (P
When there is a macro call of (OD_ID update routine),
When the process goes to the POD_ID update routine 320, P
OD_ID update processing is performed (steps 30 and 40). Then, the processing is transferred to the communication routine 330, and first, the existence check of the host machine is performed. That is, the host presence flag is referred to, and if the host presence flag is OFF, the POD_ID is not transmitted to the host device, and the process immediately returns to the calling POD. If the host presence flag is not OFF, a process of transmitting the POD_ID to the host device is performed (Step 60). Then, a command is received from the host machine, and the execution of the POD is stopped (step 70).

【0079】ここにおいて、ホスト機から所定時間応答
がない場合、ホスト存在フラグをOFFにして、呼び出
し元のPODにもどる処理が行われる(ステップ80、
ステップ90)。該処理をタイムアウト処理(500)
という。
Here, if there is no response from the host machine for a predetermined time, the host presence flag is turned off, and processing for returning to the POD of the caller is performed (step 80,
Step 90). Timeout processing (500)
That.

【0080】所定時間内にホスト機からコマンドを受信
すると、該コマンドに対応したコマンド処理ルーチン3
40が起動され、コマンドによって指示された処理が行
われる(ステップ140)。該コマンドが継続コマンド
であった場合、呼び出し元のPODにもどり、停止して
いたデバッグ用プログラムの実行が再開される(ステッ
プ110)。
When a command is received from the host machine within a predetermined time, a command processing routine 3 corresponding to the command is received.
40 is started, and the process specified by the command is performed (step 140). If the command is a continuation command, the process returns to the POD of the calling source, and the execution of the stopped debugging program is resumed (step 110).

【0081】また、ホスト機から受信したコマンドが、
停止コマンドであった場合、前記タイムアウト処理が禁
止され、再びホスト機からのコマンド待ち状態となる
(ステップ120、ステップ130、ステップ70)。
The command received from the host machine is
If the command is a stop command, the timeout process is prohibited, and the system waits for a command from the host machine again (steps 120, 130, 70).

【0082】(ホスト機の動作の説明)次にブレークポ
イント機能を利用してターゲット機に種々デバッグコマ
ンドを送る場合を例にとりホスト機の動作を説明する。
(Explanation of the Operation of the Host Machine) Next, the operation of the host machine will be described with an example of sending various debug commands to the target machine using the breakpoint function.

【0083】ホストプログラムは、デバッグ用プログラ
ムにホスト機を検出させるため、デバッグ用プログラム
より先に実行を開始し、常に通信線を見張り、ターゲッ
ト機からPOD_IDが送られてくるのを待っている
(ステップ160)。そしてターゲット機がPOD_I
Dを送り出す度にそれを受け取ってメモリに蓄積する
(ステップ170、ステップ180)。
The host program starts execution before the debug program to make the debug program detect the host machine, always monitors the communication line, and waits for the POD_ID to be sent from the target machine ( Step 160). And the target machine is POD_I
Each time D is sent out, it is received and stored in the memory (step 170, step 180).

【0084】そして、受信したPOD_IDが、ブレー
クポイントに該当するか否か判断する(ステップ19
0)。該POD_IDがブレークポイントに該当しない
場合、ターゲット機に継続コマンドを送り(ステップ1
90、ステップ200)、該当する場合ターゲット機に
停止コマンドを送る(ステップ190、ステップ21
0)。
Then, it is determined whether or not the received POD_ID corresponds to a break point (step 19).
0). If the POD_ID does not correspond to a breakpoint, a continuation command is sent to the target device (step 1).
90, step 200) and, if applicable, send a stop command to the target machine (step 190, step 21)
0).

【0085】ブレークポイントになると、ユーザーの入
力待ちとなり(ステップ220)、ユーザーからの入力
があると(ステップ230)、入力された内容に対応す
るコマンドの送信処理を行う(ステップ240)。入力
されたコマンドが継続コマンドであれば、通常のターゲ
ット機からPOD_IDが送られてくるのを待っている
状態に戻る(ステップ250、ステップ160)。入力
されたコマンドが継続コマンドで無ければ、再びユーザ
ーの入力待ちの状態に戻る(ステップ250、ステップ
220)。
When the break point is reached, the user waits for an input (step 220), and when there is an input from the user (step 230), a command transmission process corresponding to the input content is performed (step 240). If the input command is a continuation command, the process returns to a state of waiting for a POD_ID to be sent from a normal target device (steps 250 and 160). If the input command is not a continuation command, the process returns to the state of waiting for the user's input again (steps 250 and 220).

【0086】(ホスト機プログラムの構成)図6はホス
トプログラムとその入出力デバイスの構成を示した図で
ある。
(Configuration of Host Program) FIG. 6 is a diagram showing the configuration of the host program and its input / output devices.

【0087】ホストプログラム600は、受信モジュー
ル610、送信モジュール620、蓄積モジュール63
0、表示モジュール640、操作モジュール650を含
む。
The host program 600 includes a reception module 610, a transmission module 620, and a storage module 63
0, a display module 640 and an operation module 650.

【0088】受信モジュール610は、ターゲット機か
ら通信線30、I/Oポート240の受信ポート690
を介して受け取ったデータを蓄積モジュール630に送
る機能を有する。ターゲット機から受け取るデータは、
POD_IDやデバッグコマンドに対する応答等のデバ
ッグ用プログラムの出力データや、ホストから送信した
プログラムの出力データ等である。
The receiving module 610 receives the communication line 30 from the target device and the receiving port 690 of the I / O port 240.
Has a function of transmitting data received via the storage module 630 to the storage module 630. The data received from the target machine
Output data of a debug program such as POD_ID and a response to a debug command, and output data of a program transmitted from the host.

【0089】送信モジュール620は、他のモジュール
から渡されたデータをI/Oポート送信ポート700、
通信線30を介してターゲット機に送り出す機能を有す
る。
The transmission module 620 transmits data passed from another module to the I / O port transmission port 700,
It has the function of sending out to the target machine via the communication line 30.

【0090】蓄積モジュール630は、以下の機能を有
する。
The storage module 630 has the following functions.

【0091】(1)受信モジュール610から渡された
データをメモリ710に蓄積する。
(1) The data passed from the receiving module 610 is stored in the memory 710.

【0092】(2)受信モジュール610からデータが
渡されたことを操作モジュール650に通知する。
(2) The operation module 650 is notified that the data has been passed from the receiving module 610.

【0093】(3)ファイル660から読み込んだデー
タをメモリ710に蓄積する。
(3) The data read from the file 660 is stored in the memory 710.

【0094】(4)メモリ710に蓄積されているデー
タをファイル660に書き込む。
(4) Write the data stored in the memory 710 to the file 660.

【0095】(5)表示モジュール640からの要求に
応じて、蓄積したデータを渡す。
(5) The stored data is passed in response to a request from the display module 640.

【0096】蓄積モジュール630は、受信モジュール
610から受け取ったデータとファイル660から読み
込んだデータを区別しないので、POD_IDの記録を
一旦ファイル660に書き出し、後から参照することも
できる。
Since the storage module 630 does not distinguish between the data received from the receiving module 610 and the data read from the file 660, the record of the POD_ID can be once written in the file 660 and referenced later.

【0097】以下各モジュールについて、詳細に説明す
る。
Hereinafter, each module will be described in detail.

【0098】(受信モジュール)まず、受信モジュール
610が行う受信動作について説明する。
(Receiving Module) First, the receiving operation performed by the receiving module 610 will be described.

【0099】受信モジュール610はターゲット機から
送られてきたデータを二線式通信方式により受信する。
二線式通信方式は、割り込みを使わず、ボーリングとソ
フトウエアによるハンドシェイクによって通信する。そ
のため、受信モジュール610は、適当な時間間隔で繰
り返して呼ばれ、ターゲット機からの受信要求を調べ
る。受信要求がなければ、受信モジュール610は何も
しない。
The receiving module 610 receives the data sent from the target device by a two-wire communication system.
The two-wire communication method uses boring and software handshaking to communicate without using interrupts. Therefore, the receiving module 610 is called repeatedly at appropriate time intervals, and checks a receiving request from the target device. If there is no reception request, the reception module 610 does nothing.

【0100】受信要求があれば、受信モジュール610
は、データを受信し、受信したデータを蓄積モジュール
630に渡す。受信モジュール610は、データの種類
を区別しない。即ち、ターゲット機から送られてきたデ
ータが、POD_IDであるか、例えば読み出したメモ
リのデータであるのか区別しない。
If there is a receiving request, the receiving module 610
Receives the data and passes the received data to the storage module 630. The receiving module 610 does not distinguish between data types. That is, it does not distinguish whether the data sent from the target device is the POD_ID or, for example, the data of the read memory.

【0101】(送信モジュール)次に、送信モジュール
620が行う送信動作について説明する。
(Transmission Module) Next, the transmission operation performed by the transmission module 620 will be described.

【0102】送信モジュール620は、他のモジュール
から渡されたデータを二線式通信方式を使ってターゲッ
ト機に送る。送られるデータは、デバッグコマンドやメ
モリ書き込みデータなどである。送信モジュール620
も、受信モジュール610同様データの種類を区別しな
い。
The transmission module 620 transmits data passed from another module to the target device using a two-wire communication system. The transmitted data is a debug command, memory write data, or the like. Transmission module 620
Also, like the receiving module 610, the type of data is not distinguished.

【0103】(蓄積モジュール)蓄積モジュール630
は、データ蓄積サブモジュール632とファイル操作サ
ブモジュール634の2つのサブモジュールを持つ。デ
ータ蓄積サブモジュール632は、メモリ710やディ
スク上のテンポラリファイルをデータ蓄積場所として確
保している。
(Storage Module) Storage Module 630
Has two sub-modules, a data storage sub-module 632 and a file operation sub-module 634. The data storage sub-module 632 secures a temporary file on the memory 710 or a disk as a data storage location.

【0104】このモジュールは、以下の機能を持つ。This module has the following functions.

【0105】(1)他のモジュールやサブモジュールか
ら渡されたデータを、データ蓄積場所に蓄積する。
(1) Data passed from another module or sub-module is stored in a data storage location.

【0106】(2)データ蓄積場所に蓄積されたデータ
の簡単な解釈をする。
(2) Perform simple interpretation of data stored in the data storage location.

【0107】(3)受信モジュール610からデータを
受け取ったことを、操作モジュール650に通知する。
(3) The operation module 650 is notified that data has been received from the reception module 610.

【0108】(4)他のモジュールやサブモジュールか
ら要求されたデータを、データ蓄積場所から読み出して
渡す。
(4) Data requested from another module or sub-module is read from the data storage location and passed.

【0109】(5)他のモジュールやサブモジュールか
らの指示により、データ蓄積場所を空にする。
(5) The data storage location is emptied according to an instruction from another module or sub-module.

【0110】ここで、データ蓄積サブモジュール632
の機能の一つ「蓄積されたデータの簡単な解釈」につい
て説明する。
Here, the data storage sub-module 632
One of the functions described above, "simple interpretation of stored data", will be described.

【0111】受信モジュール610は、ターゲット機よ
り送られてきたデータそのままを1バイト単位でデータ
蓄積サブモジュール632に渡すが、このままでは、デ
ータとして扱いづらい。すなわち、受け取ったデータを
そのままでは、単なるバイト列であるため、POD_I
Dなのかホスト機から送られたコマンドに対する応答な
のかの区別がない。また、例えばPOD_IDは3バイ
トのデータとして送信されるが、この1バイト目なのか
2バイト目なのかの区別もない。このように単なるバイ
トデータのままでは、データ蓄積サブモジュール632
からデータを得る操作モジュール650や表示モジュー
ル640がそれぞれデータの解釈をする必要が生じる。
この場合、2つ以上のモジュールでデータを解釈すると
解釈ロジックに誤りが入る可能性が高くなるので、デー
タ蓄積サブモジュール632で基本的なデータ解釈をす
ませる方が望ましい。そこで、本デバッグ装置では、蓄
積モジュール630でデータの解釈を行うことにしてい
る。
The receiving module 610 passes the data sent from the target device as it is to the data storage sub-module 632 in 1-byte units, but it is difficult to handle the data as it is. That is, since the received data is simply a byte string as it is, POD_I
There is no distinction between D and a response to a command sent from the host machine. Further, for example, the POD_ID is transmitted as 3-byte data, but there is no distinction between the first byte and the second byte. In this way, if the data is simply byte data, the data storage sub-module 632
It is necessary for the operation module 650 and the display module 640 that obtain data from the respective modules to interpret the data.
In this case, if the data is interpreted by two or more modules, there is a high possibility that an error will occur in the interpretation logic. Therefore, it is desirable that the data storage sub-module 632 perform basic data interpretation. Therefore, in the present debugging device, the storage module 630 interprets the data.

【0112】データ蓄積サブモジュール632の行うデ
ータ解釈は、データの区切りを決めること及びデータの
エラーを検出し、適当な補正を加えることを含む。デー
タの区切りを決める機能は、複数のバイトの組み合わせ
で送られてくるPOD_IDやその他のデータを、それ
ぞれまとまったデータとして解釈するための機能であ
る。データエラーの検出と補正は、誤って受信されたデ
ータによって生じるデータ解釈の混乱の影響を最低限に
押さえるためのものである。代表的には、バイトの挿入
・削除・変更によって、合理的なデータの区切りを得ら
れるようにする。
The data interpretation performed by the data storage sub-module 632 includes determining data delimiters and detecting data errors and making appropriate corrections. The function of determining the data delimiter is a function for interpreting POD_ID and other data sent in a combination of a plurality of bytes as a set of data. Data error detection and correction is intended to minimize the effects of data interpretation confusion caused by incorrectly received data. Typically, insertion, deletion, and modification of bytes are performed so that a reasonable data delimiter can be obtained.

【0113】なお、操作モジュール650へのデータ受
け取りの通知は、データの解釈が終わった後で行われ
る。
The data reception notification to the operation module 650 is performed after the data interpretation is completed.

【0114】ファイル操作サブモジュール634は、他
のモジュールの指示により、データ蓄積サブモジュール
632に蓄積されているデータをファイル660に書き
出したり、ファイル660からデータを読み込んでデー
タ蓄積サブモジュール632に蓄積させたりする。
The file operation sub-module 634 writes data stored in the data storage sub-module 632 to the file 660 or reads data from the file 660 and stores the data in the data storage sub-module 632 in accordance with an instruction from another module. Or

【0115】蓄積モジュール630は、蓄積動作、デー
タ提供動作、ファイル操作を行う。即ち、蓄積モジュー
ル630は、受信モジュール610から渡されたデータ
を、データ蓄積サブモジュール632を使って蓄積す
る。また、蓄積モジュール630は、他のモジュールか
ら要求されたデータを、データ蓄積サブモジュール63
2から取り出して提供する。また、蓄積モジュール63
0は、操作モジュール650の指示により、データ蓄積
サブモジュール632に蓄積されているデータをファイ
ル660に書き出したり、ファイル660からデータを
読み込んでデータ蓄積サブモジュール632に蓄積させ
たりする。
The storage module 630 performs a storage operation, a data providing operation, and a file operation. That is, the storage module 630 stores the data passed from the reception module 610 by using the data storage sub-module 632. The storage module 630 stores the data requested by another module in the data storage sub-module 63.
Take out from 2 and provide. The storage module 63
0 writes the data stored in the data storage sub-module 632 to the file 660 or reads the data from the file 660 and stores the data in the data storage sub-module 632 in accordance with the instruction of the operation module 650.

【0116】(表示モジュール)表示モジュール640
は、操作モジュール650から指示されたデータを蓄積
モジュール630から取得し、ホスト機の画面(表示
部)670に表示する。ここにおいて、蓄積モジュール
630から受け取るデータはターゲット機から送信され
たデータでも良いし、ファイル660に記憶されている
データでもよい。また、コメント用ファイル720か
ら、各POD_IDについてのコメント情報を取得し、
データの表示に利用する。
(Display Module) Display Module 640
Acquires the data instructed from the operation module 650 from the storage module 630 and displays it on the screen (display unit) 670 of the host device. Here, the data received from the storage module 630 may be data transmitted from the target device or data stored in the file 660. Also, comment information about each POD_ID is obtained from the comment file 720,
Used to display data.

【0117】表示の書式を、操作モジュール650から
の指示によって変更できる。表示できる項目は、「PO
D_ID・ソースコード名・行番号・コメント・詳細コ
メント」から選べる。
The format of the display can be changed by an instruction from the operation module 650. Items that can be displayed are “PO
D_ID, source code name, line number, comment, detailed comment ".

【0118】(操作モジュール)操作モジュール650
は、自動応答サブモジュール652と司令処理サブモジ
ュール654のサブモジュールを有する。
(Operation Module) Operation Module 650
Has an automatic response sub-module 652 and a command processing sub-module 654.

【0119】自動応答サブモジュール652は、蓄積モ
ジュール630から受信データを受け取り、それに応じ
た応答を、送信モジュール620を通じて自動的にター
ゲット機に送る。
The automatic response sub-module 652 receives the received data from the storage module 630, and automatically sends a corresponding response to the target device via the transmission module 620.

【0120】通常、ターゲット機に送られるデータは、
ターゲット機にPODの処理を続行させるための継続コ
マンドである。ブレークポイントのPOD_IDが送ら
れてきたときには、PODの動作を中断させるための停
止コマンドを送る。
Normally, the data sent to the target machine is
This is a continuation command for causing the target device to continue POD processing. When the POD_ID of the breakpoint is sent, a stop command for interrupting the operation of the POD is sent.

【0121】さらに複雑な処理をおこなわせることもで
きる。例えば、あるPOD_IDを受け取った時にあら
かじめ用意されているプログラムをターゲット機に送っ
て実行させ、その実行が終了してからPODの動作を再
開するなどの処理を、あらかじめ予約しておくこと等も
できる。
Further complicated processing can be performed. For example, when a certain POD_ID is received, a program prepared in advance is sent to the target machine to be executed, and processing such as resuming the operation of the POD after the execution is completed may be reserved in advance. .

【0122】司令処理サブモジュール654は、ユーザ
ーが入力部680から行うキーボード操作やメニュー操
作を解釈し、各モジュールに適当な指示を出す。ユーザ
ーの行える操作としては、表示位置の変更・データの検
索、ブレークポイントの設定・自動応答の予約、ワンス
テップ機能の予約、ターゲット機のメモリ編集・I/O
・プログラム実行・POD再開の指示、蓄積データのフ
ァイルへの書き出し・読み込みの指示、ホストプログラ
ム終了の指示等がある。
The command processing sub-module 654 interprets a keyboard operation or a menu operation performed by the user from the input unit 680, and issues an appropriate instruction to each module. Operations that can be performed by the user include changing the display position, searching for data, setting breakpoints, reserving automatic responses, reserving one-step functions, editing memory on the target machine, and I / O
There are instructions for program execution, POD restart, instructions for writing / reading stored data to a file, instructions for terminating a host program, and the like.

【0123】(ホスト機において受信したデータを一旦
ファイルに書き込んで処理を行う場合) 図7(A)
(B)は、ホスト機において受信したデータを一旦ファ
イルに書き込んで処理を行う場合について説明するため
の図である。
(In the case where the data received by the host machine is once written to a file for processing) FIG. 7 (A)
FIG. 3B is a diagram for describing a case where the host device writes data received once into a file and performs processing.

【0124】図7(A)は、ホスト機において蓄積デー
タをファイル660に書き込む時の動作を説明するため
の図である。蓄積データとは、ホスト機が受信したデー
タを蓄積モジュール630のデータ蓄積サブモジュール
632がデータ蓄積場所に蓄積しているデータのことを
いう。ホスト機において、ターゲット機から送られてき
たデータをリアルタイムに処理する場合は、前述した例
で説明ように、蓄積モジュール630において蓄積され
ているデータをファイル660に書き出す必要は無い。
しかし、蓄積モジュール630は、受信モジュール61
0から受け取ったデータとファイル660から読み込ん
だデータを区別しないので、POD_IDの記録を一旦
ファイルに書き出し、後から参照することもできる。こ
のような場合に図7(A)(B)で説明する処理が必要
となる。
FIG. 7A is a diagram for explaining the operation when writing the stored data to the file 660 in the host machine. The stored data refers to data in which the data received by the host device is stored in the data storage location by the data storage sub-module 632 of the storage module 630. When the host machine processes the data sent from the target machine in real time, it is not necessary to write the data accumulated in the accumulation module 630 to the file 660 as described in the above-described example.
However, the storage module 630 does not
Since the data received from 0 and the data read from the file 660 are not distinguished, the record of the POD_ID can be once written to a file and referenced later. In such a case, the processing described in FIGS. 7A and 7B is required.

【0125】ユーザーが入力部680から蓄積データを
ファイル660に書き込むように操作すると(ステップ
910)、操作モジュール650は蓄積データをファイ
ル660に書き込むよう、蓄積モジュール630に指示
する(ステップ920)。蓄積モジュール630のファ
イル操作サブモジュール634は、蓄積データをファイ
ル660に書き出す(ステップ930)。書き出しを終
了すると、書き出し終了を操作モジュール650に通知
する(ステップ940)。操作モジュール650はユー
ザーに書き込み終了を知らせる(ステップ950)。
When the user operates the input unit 680 to write the stored data to the file 660 (step 910), the operation module 650 instructs the storage module 630 to write the stored data to the file 660 (step 920). The file operation sub-module 634 of the storage module 630 writes the stored data to the file 660 (Step 930). When the writing is completed, the end of the writing is notified to the operation module 650 (step 940). The operation module 650 notifies the user of the end of writing (step 950).

【0126】図7(B)は、ファイルからデータを読み
込む時の動作を説明するための図である。ユーザーが、
ファイル660からデータを読み込むように入力部68
0から操作すると(ステップ960)、操作モジュール
650はファイル660からデータを読み込むよう、蓄
積モジュール630に指示する(ステップ970)。す
ると蓄積モジュール630のファイル操作サブモジュー
ル634は、ファイル660からデータを読み込む。こ
のとき、データ蓄積サブモジュール632は、受信モジ
ュール610からデータを受け取る時と同様に、読み込
んだデータの解釈も行う(ステップ980)。読み込み
を終了すると、読み込み終了を操作モジュール650に
通知する(ステップ990)。操作モジュール650
は、表示モジュール640に先頭ページを表示部670
に表示するように指示する。(ステップ1000)。表
示モジュール640は蓄積モジュール630から先頭ペ
ージの表示に必要なデータを、画面に表示する。
FIG. 7B is a diagram for explaining the operation when reading data from a file. the user,
The input unit 68 reads data from the file 660.
When the operation is started from 0 (step 960), the operation module 650 instructs the storage module 630 to read data from the file 660 (step 970). Then, the file operation sub-module 634 of the storage module 630 reads data from the file 660. At this time, the data storage sub-module 632 interprets the read data in the same manner as when receiving data from the receiving module 610 (step 980). When the reading is completed, the operation module 650 is notified of the completion of the reading (step 990). Operation module 650
Displays the first page on the display module 640 in the display unit 670
To display. (Step 1000). The display module 640 displays data necessary for displaying the first page from the storage module 630 on a screen.

【0127】このように、本デバッグ装置ではファイル
から読み込んだデータも受信した蓄積データと同様に扱
いデバッグ動作を行うことができる。
As described above, the debugging device can perform the debugging operation by treating the data read from the file in the same manner as the received stored data.

【0128】(ホスト用データ作成プログラムとコメン
トファイル)本デバッグ装置では、ターゲット機から送
られてくる出力情報がホスト機の表示部670に表示さ
れるため、ユーザーは該表示情報を見ながら、ターゲッ
ト機のPODの進行状況に応じて臨機応変に所望のデバ
ッグ動作を行うことができる。
(Host Data Creation Program and Comment File) In this debugging apparatus, the output information sent from the target machine is displayed on the display unit 670 of the host machine. A desired debugging operation can be performed flexibly according to the progress of the POD of the device.

【0129】ターゲット機において、電源が投入される
と、図3に示すデバッグ用プログラム300のPOD3
10の実行が開始される。POD310は、周辺装置の
初期化と機能診断を行うプログラムであり、各周辺装置
(A、B、…)の初期化&機能診断ルーチン312、3
14、…を含んでいる。電源が投入されると、POD3
10は順次各周辺装置(A、B、…)の初期化&機能診
断ルーチン312、314、…の実行を行い、システム
を動かす上で障害がある場合は自らハングアップする。
When the power is turned on in the target machine, POD3 of the debug program 300 shown in FIG.
Execution of 10 is started. The POD 310 is a program for initializing peripheral devices and diagnosing functions, and initializes and diagnoses the functions of the peripheral devices (A, B,...) 312, 312.
14, ... is included. When the power is turned on, POD3
.. Sequentially execute the initialization and function diagnosis routines 312, 314,... Of the peripheral devices (A, B,...), And hang up if there is a problem in operating the system.

【0130】ここにおいて、該POD310はデバッグ
上重要な位置でPOD_IDデータをホスト機に送信す
るよう構成されている。POD_IDは1ずつインクリ
メントされる番号であるため、POD_IDを調べるこ
とで、POD310の実行位置を知ることができる。例
えばハングアップした場合、どの部分で落ちたのか知る
ためには、実行コード中にできるだけ近い間隔でPOD
_ID更新ルーチンを呼ぶマクロを挿入しておくことが
好ましい。しかし、全PODを実行すると、30000
個程度のPOD_IDが出力されるため、該POD_I
Dを見ただけでユーザーが実行内容やPODのソースコ
ードのどの部分に対応しているのかを理解することは困
難である。
Here, the POD 310 is configured to transmit POD_ID data to the host device at a position important for debugging. Since the POD_ID is a number that is incremented by one, the execution position of the POD 310 can be known by checking the POD_ID. For example, in the case of a hang-up, in order to know at which point the
It is preferable to insert a macro that calls the _ID update routine. However, when all PODs are executed, 30000
Since about POD_IDs are output, the POD_I
It is difficult for the user to understand the execution contents and which part of the POD source code corresponds only to D.

【0131】例えばユーザーが途中でPODの実行を停
止してメモリの読み出し等の所望のデバッグ動作を行い
たい場合、ユーザーは画面上でPODの位置を見なが
ら、PODの実行を停止してデバッグ動作を行う場所を
判断する。このような場合、ユーザーがPOD_IDだ
けをみてPODの位置を判断するのは、非常に困難であ
る。
For example, when the user wants to stop the execution of the POD and perform a desired debugging operation such as reading out of the memory on the way, the user stops the execution of the POD while watching the position of the POD on the screen. To determine where to do. In such a case, it is very difficult for the user to determine the position of the POD only by looking at the POD_ID.

【0132】そこで本デバッグ装置では、POD実行位
置をPOD_IDの値、行番号、コメント、詳細コメン
トのいずれか、又はそれらの組み合わせで表示すること
ができるようにしている。またそのほかにsend_idが含
まれる部分のラベル等を表示するようにしてもよい。即
ち例えば図8(A)において1210のsend_idによる
POD_IDの値を表示する場合、該send_idが含まれ
ている部分のラベルであるSR_VALUE_IOOPを表示する等
である。
Therefore, in the present debugging apparatus, the POD execution position can be displayed by any of POD_ID value, line number, comment, detailed comment, or a combination thereof. In addition, a label or the like of a portion including send_id may be displayed. That is, for example, when the value of the POD_ID based on the send_id 1210 in FIG. 8A is displayed, the label SR_VALUE_IOOP of the portion including the send_id is displayed.

【0133】図8(A)は、PODのソースコード12
00の一例を示している。例えばホスト機において、1
210のsend_idで送信されるPOD_IDを受信した
場合、ソースコード名を表示する場合、図8(A)に示
す1210のsend_id付近のソースコード、又は処理の
終わったソースコード上で最も近いところにある名前
(例えば1240)等を表示することになる。また、行
番号を表示する場合、1210のsend_idに対応する行
番号1010を表示することになる。また、コメントを
表示する場合、1210のsend_idに対応するコメント
である1220を表示することになる。更に詳細コメン
トとしては、1210のsend_id付近の処理の内容を詳
細に表したコメントを表示することになる。
FIG. 8A shows the POD source code 12.
00 shows an example. For example, in the host machine, 1
When the POD_ID transmitted with the send_id 210 is received, and when the source code name is displayed, the source code near the send_id 1210 shown in FIG. The name (for example, 1240) is displayed. When displaying a line number, a line number 1010 corresponding to send_id of 1210 is displayed. When a comment is displayed, a comment 1220 corresponding to send_id of 1210 is displayed. Further, as a detailed comment, a comment indicating the details of the process near send_id of 1210 is displayed.

【0134】ここにおいて、POD_IDはターゲット
機から受信することにより得られる情報であり、ソース
コード名、行番号、コメントは該POD_IDに基づき
PODのソースコードを解析して得られる情報である。
従ってホストプログラムのメモリにPODのソースコー
ドを記憶しておいて、POD_IDを受信する度に、P
ODのソースコードを解析して、該情報を得ることも可
能である。しかし、それでは処理に時間がかかり、実行
する度に同じ処理がくりかえされることになり、効率が
悪い。このため、本デバッグ装置では、予め図8(B)
に示すようにPOD_IDに対応した行番号、コメント
等を記憶させたコメントファイル720を用意してい
る。そして、表示モジュール640は、受け取ったPO
D_IDに基づき、コメントファイル720から行番
号、コメント等を読み出して表示部670に表示する。
Here, POD_ID is information obtained by receiving from the target device, and the source code name, line number, and comment are information obtained by analyzing the POD source code based on the POD_ID.
Therefore, the POD source code is stored in the memory of the host program, and each time the POD_ID is received,
The information can be obtained by analyzing the source code of the OD. However, this requires a long time for processing, and the same processing is repeated each time the processing is executed, which is inefficient. For this reason, in this debugging device, FIG.
, A comment file 720 storing a line number, a comment, and the like corresponding to the POD_ID is prepared. Then, the display module 640 displays the received PO
Based on D_ID, a line number, a comment, and the like are read from the comment file 720 and displayed on the display unit 670.

【0135】図8(B)は、コメントファイル720に
記憶されているデータの一例を示した図である。図8
(B)に示すように、コメントファイル720には、P
OD_ID720、行番号1260、コメント1270
等が記憶されている。
FIG. 8B is a diagram showing an example of data stored in the comment file 720. As shown in FIG. FIG.
As shown in (B), the comment file 720 contains P
OD_ID 720, line number 1260, comment 1270
Etc. are stored.

【0136】なお、詳細コメントの表示としては、ソー
スコード上に特殊なコメントの形で書かれた内容を表示
するようにしてもよい。即ち、マイクロソフトアセンブ
ラでは、「;」から行の後ろまでをコメントとみなすた
め、本実施例で、マクロ(send_id)に続く1つ
の「;」の後ろにかかれた文字列をコメントとして表示
し、マクロ(send_id)の現れる次の行に二つ続い
た「;」即ち「;;」が現れた場合、その行の終わりま
でを詳細コメントとして表示している。
As for the display of the detailed comment, the content written in the form of a special comment on the source code may be displayed. That is, in the Microsoft assembler, since the part from “;” to the end of the line is regarded as a comment, in this embodiment, a character string written after one “;” following the macro (send_id) is displayed as a comment, When ";", that is, ";;", which follows two lines next to the line where (send_id) appears, up to the end of the line is displayed as a detailed comment.

【0137】なお、PODのソースプログラムから直接
えられる情報では無く、ユーザーが予め、POD_ID
毎に又はコメントの内容毎にその内容を定義しておいた
ものを出力するようにしてもよい。例えばソースコード
のコメント情報に処理内容に応じた記号等含ませてお
き、その記号に対応する内容を、定義しておくような形
式でも良い。
It is to be noted that the information is not directly obtained from the POD source program, but is set in advance by the user.
For each comment or for each content of the comment, a content defining the content may be output. For example, a format may be used in which a comment or the like corresponding to the processing content is included in the comment information of the source code, and the content corresponding to the symbol is defined.

【0138】このようにコメントファイル720を予め
作成しておくと、POD_IDに対応した各種情報をコ
メントファイルから読み出すという簡単な構成で、ユー
ザーにわかり易い情報を画面に表示することができる。
If the comment file 720 is created in advance in this way, information that is easy for the user to understand can be displayed on the screen with a simple configuration in which various information corresponding to the POD_ID is read from the comment file.

【0139】(画面表示例)図9〜図11は、本デバッ
グ装置の表示画面を説明するための図であり、図9は、
実行情報が表示されていない場合の画面の状態を示した
図であり、図10及び図11は、ターゲット機100に
おいて前記図8(A)に示すPODのソースコード12
00が実行された場合の画面の表示例である。
(Screen Display Example) FIGS. 9 to 11 are diagrams for explaining the display screen of the debugging device. FIG.
FIG. 10 and FIG. 11 show screen states when execution information is not displayed. FIGS. 10 and 11 show the POD source code 12 shown in FIG.
13 is a display example of a screen when 00 is executed.

【0140】図8(A)はPODにおいてDMAレジス
タのテストを行う部分のソースコード1200を表して
いる。具体的にはDMAページレジスタ80hから8E
hに対し、各ビットが正しく読み書きできることを1ビ
ットずつ確認するためのソースコード1200を表して
いる。この部分の実行の最初に1212のsend_idが実
行され、該テストが失敗した場合には1210のsend_
idが実行され、該テストが成功した場合には1214の
send_idが実行される。
FIG. 8A shows a source code 1200 of a portion for testing the DMA register in the POD. Specifically, DMA page registers 80h to 8E
For h, a source code 1200 for confirming bit by bit that each bit can be read and written correctly is shown. At the beginning of execution of this part, a send_id of 1212 is executed, and if the test fails, a send_id of 1210 is executed.
id is executed and if the test succeeds, 1214
send_id is executed.

【0141】図10は前記テストが失敗した場合の画面
の表示例であり、図11は前記テストが成功した場合の
画面の表示例である。
FIG. 10 is a display example of a screen when the test has failed, and FIG. 11 is a display example of a screen when the test has succeeded.

【0142】図10の500のIDの下に表示されてい
る502の204や504の205は、ターゲット機か
ら出力されたPOD_IDである。ターゲット機におい
て前記テストが失敗した場合は、前述したように121
2のsend_id及び1210のsend_idが実行される。従
って、図8(B)のコメントファイル720から対応す
るPOD_IDとして204及び205読み出され、図
10に示すようにPOD_IDとして204、205が
表示される。ユーザーは、該POD_IDをたどること
により、PODの実行状態をしることができる。
In FIG. 10, reference numerals 502 204 and 504 205 displayed below the ID 500 indicate the POD_ID output from the target device. If the test fails on the target machine, 121
The send_id of 2 and the send_id of 1210 are executed. Accordingly, the corresponding POD_IDs 204 and 205 are read from the comment file 720 of FIG. 8B, and the POD_IDs 204 and 205 are displayed as shown in FIG. The user can check the execution status of the POD by following the POD_ID.

【0143】図10の510のSource file
の下に表示されている512や514のDMACHKC
K.ASMは、502や504のPOD_IDを出力し
たsend_idの含まれたPODのソースファイルの名称で
ある。本実施例では、PODのソースコードは複数のソ
ースファイルに分割して格納されている。従って該ソー
スファイル名称を参照することにより、実行されている
ソースコードが格納されているソースファイル名称をし
ることができる。
The source file 510 in FIG.
DMACHKC of 512 or 514 displayed under
K. ASM is the name of the source file of the POD including the send_id that outputs the POD_ID of 502 or 504. In this embodiment, the POD source code is divided into a plurality of source files and stored. Therefore, by referring to the source file name, the name of the source file in which the source code being executed is stored can be determined.

【0144】図10の520のLine number
の下に表示されている522の1000や524の10
10は、前記POD_ID(502の204や504の
205)を出力したsend_idの行番号である。図8
(A)に示すように、1212のsend_id及び1210
のsend_idの行番号は1000及び1010であり、係
る行番号は図8(B)に示すようにPOD_ID20
4、205に対応してコメントファイル720に記憶さ
れている(図8(B)の1260)。従って、コメント
ファイルから読み出されて、図10に示すように行番号
1000、1010が表示される。
The line number 520 in FIG.
1000 of 522 and 10 of 524 displayed under
Reference numeral 10 denotes a line number of the send_id that outputs the POD_ID (204 of 502 or 205 of 504). FIG.
As shown in (A), send_id of 1212 and 1210
The row numbers of send_id of the POD_ID20 are 1000 and 1010, and the row numbers of the POD_ID20 are as shown in FIG.
4 and 205 are stored in the comment file 720 (1260 in FIG. 8B). Therefore, the line numbers 1000 and 1010 are read from the comment file and displayed as shown in FIG.

【0145】図10の530のCommentの下に表
示されている532及び534のコメントは、図8
(A)に示すソースファイルの前記POD_ID(50
2の204や504の205)を出力したsend_idの行
に記載されたコメント1216及び1220である。図
8(A)に示すように、1212のsend_id及び121
4のsend_idのコメントは1216の’Start〜’及び
1222の’DMA〜failed’であり、係るコメントは
図8(B)に示すようにPOD_IDに対応してコメン
トファイル720に記憶されている(図8(B)の12
72と1274)。従って、コメントファイルから読み
出されて、図10に示すようにコメント532、534
が表示される。ユーザーは該コメントを見ることでソー
スコードを追わなくても、テストが失敗したことをしる
ことができる。
The comments 532 and 534 displayed below the comment 530 in FIG.
The POD_ID (50) of the source file shown in FIG.
2 are the comments 1216 and 1220 described in the send_id line that has output 204 and 504 205). As shown in FIG. 8A, send_id of 1212 and 121
The comment of send_id of No. 4 is “Start-” of 1216 and “DMA-failed” of 1222, and such a comment is stored in the comment file 720 corresponding to the POD_ID as shown in FIG. 12 of 8 (B)
72 and 1274). Therefore, the comments 532 and 534 are read out from the comment file and read as shown in FIG.
Is displayed. The user can see that the test failed without having to follow the source code by looking at the comment.

【0146】ターゲット機において前記テストが成功し
た場合は、前述したように1212のsend_id及び12
14のsend_idが実行される。従って、図8(B)のコ
メントファイル720から対応するPOD_IDとして
204及び206読み出され、図11に示すようにPO
D_IDとして204、206が表示される。ユーザー
は、該POD_IDをたどることにより、PODの実行
状態をしることができる。
If the test is successful on the target machine, the send_id of 1212 and the
14 send_id are executed. Therefore, the corresponding POD_IDs 204 and 206 are read from the comment file 720 of FIG.
204 and 206 are displayed as D_ID. The user can check the execution status of the POD by following the POD_ID.

【0147】図10の510のSource file
の下に表示されている516のDMACHKCK.AS
Mも、506のPOD_IDを出力したsend_idの含ま
れたPODのソースファイルの名称である。
Source file 510 in FIG.
Of 516 DMACHCKCK. Displayed below. AS
M is also the name of the source file of the POD including the send_id that outputs the POD_ID of 506.

【0148】図11の520のLine number
の下に表示されている526の1022は、前記POD
_ID(506の206)を出力したsend_idの行番号
である。図8(A)に示すように、1214のsend_id
の行番号は1022であり、係る行番号は図8(B)に
示すようにPOD_IDに対応してコメントファイル7
20に記憶されている(図8(B)の1260)。従っ
て、コメントファイルから読み出されて、図11に示す
ように行番号1022が表示される。
The line number 520 in FIG.
1022 of 526 displayed below the POD
_ID (206 of 506) is the line number of send_id that has output. As shown in FIG. 8A, send_id of 1214
Of the comment file 7 corresponding to the POD_ID as shown in FIG.
20 (1260 in FIG. 8B). Therefore, the line number 1022 is read from the comment file and displayed as shown in FIG.

【0149】図10の530のCommentの下に表
示されている536のコメントは、図8(A)に示すソ
ースファイルの前記POD_ID(506の206)を
出力したsend_idの行に記載されたコメント1214で
ある。図8(A)に示すように、1214のsend_idの
コメントは1222の’DMA〜OK’である。係るコ
メントは図8(B)に示すようにPOD_ID206に
対応してコメントファイル720に記憶されている(図
8(B)の1276)。従って、コメントファイルから
読み出されて、図11に示すようにコメント536が表
示される。
The comment 536 displayed under the comment 530 in FIG. 10 is a comment 1214 described in the send_id line that outputs the POD_ID (206 in 506) of the source file shown in FIG. It is. As shown in FIG. 8A, the comment of send_id of 1214 is “DMA to OK” of 1222. Such a comment is stored in the comment file 720 corresponding to the POD_ID 206 as shown in FIG. 8B (1276 in FIG. 8B). Therefore, the comment 536 is read from the comment file and displayed as shown in FIG.

【0150】(コメントファイル作成用プログラム)な
お、ホストプログラムには、前記コメントファイルを作
成するにあたり、PODを入力してコメントファイル7
20を作成するためのコメントファイル作成用プログラ
ムを用意している。該コメントファイル作成用プログラ
ムは、PODのソースコードにPOD_ID更新ルーチ
ンを呼ぶマクロ(send_id)を検出する度にPOD_I
Dの値をインクリメントする。ここにおいてPOD_I
Dの番号はPODのソースコードのファイル毎に割り当
てられている。このため、ソースコード上で、POD_
ID更新ルーチンを呼ぶマクロ(send_id)を検出する
度に、各ファイル毎にさだめられた初期値から1ずつイ
ンクリメントした値がそこで送信されるPOD_IDと
なる。
(Program for Creating a Comment File) In addition, when creating the comment file, the host program inputs a POD and
A comment file creation program for creating the file 20 is prepared. Each time the comment file creation program detects a macro (send_id) that calls the POD_ID update routine in the POD source code, the POD_I
Increment the value of D. Where POD_I
The D number is assigned to each POD source code file. Therefore, in the source code, POD_
Each time a macro (send_id) that calls the ID update routine is detected, the value incremented by one from the initial value determined for each file becomes the POD_ID transmitted there.

【0151】図8(A)(B)を用いて、PODのソー
スコードからコメントファイルを作成する様子を説明す
る。図8(A)に示すPODのソースコードを入力した
コメントファイル作成用プログラム1290は、まず1
212のsend_idを検出すると、1だけインクリメント
したPOD_ID(1250)0204hを出力する。
そして、対応する行番号1000及び当該行に記載され
ているコメント1216を出力する。そして、次のsend
_id(1210)を検出すると、前回より1だけインク
リメントしたPOD_ID(1250)0205hを出
力する。そして、対応する行番号1010及び当該行に
記載されているコメント1220を出力する。このよう
にして、コメントファイル作成用プログラム1290
は、PODのソースコードから、POD_ID、行番
号、コメント等の情報を記憶したコメントファイル72
0を作成する。
The manner in which a comment file is created from the POD source code will be described with reference to FIGS. The comment file creation program 1290 in which the POD source code shown in FIG.
When the send_id of 212 is detected, POD_ID (1250) 0204h incremented by 1 is output.
Then, the corresponding line number 1000 and the comment 1216 described in the line are output. And the next send
When the _id (1210) is detected, the POD_ID (1250) 0205h which is incremented by one from the previous time is output. Then, the corresponding line number 1010 and the comment 1220 described in the line are output. In this way, the comment file creation program 1290
Is a comment file 72 storing information such as POD_ID, line number, and comments from the POD source code.
Create 0.

【0152】なお本発明のデバッグ装置は、上記実施例
で説明したものに限らず、種々の変形実施が可能であ
る。
The debugging device of the present invention is not limited to the one described in the above embodiment, but can be variously modified.

【0153】例えば、上記実施例では、ターゲット機か
ら送られてくる出力情報がホスト機の表示部670にリ
アルタイム表示される場合を例にとり説明したが、出力
情報を一旦ファイルにおとすようにしてもよい。このよ
うな場合、ブレークポイントにおいてユーザーが入力す
る処理を自動応答にして実行させることが好ましい。ま
た、後で出力情報を出力させる場合、画面ではなくプリ
ンター等に出力するようにしてもよい。
For example, in the above embodiment, the case where the output information sent from the target device is displayed in real time on the display unit 670 of the host device has been described as an example, but the output information may be temporarily stored in a file. Good. In such a case, it is preferable that the process input by the user at the break point is executed with an automatic response. When outputting the output information later, the output information may be output to a printer or the like instead of the screen.

【0154】また、上記実施例では、ターゲット機とホ
スト機が双方向の通信を行う場合を例にとり説明した
が、ターゲット機がPOD_IDを一方的にホスト機に
送信し、ホスト機でその実行の軌跡を蓄積、出力するよ
うにしても良い。
In the above embodiment, the case where the target device and the host device perform bidirectional communication has been described as an example. However, the target device unilaterally transmits POD_ID to the host device, and the host device executes the execution. The trajectory may be stored and output.

【0155】また本実施例では予めコメントファイルを
作成して、コメントファイルの内容に基づいて画面表示
内容を出力するよう構成したが、PODのソースコード
を直接読み込んで、該ソースコードに基づいて画面表示
内容を出力するよう構成してもよい。
In this embodiment, a comment file is created in advance and the screen display content is output based on the content of the comment file. However, the POD source code is directly read and the screen is displayed based on the source code. The display contents may be output.

【0156】[0156]

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

【図1】本実施例のデバッグ装置を用いて、クレジット
サイズのカード形状のパソコンのサンプルをデバッグす
る際の外観図である。
FIG. 1 is an external view of a debug device of the present embodiment when a sample of a credit-size card-shaped personal computer is debugged.

【図2】本実施例のホスト機とターゲット機のハードウ
エア構成を示している。
FIG. 2 shows a hardware configuration of a host machine and a target machine of the present embodiment.

【図3】ターゲット機のROMに記憶されているデバッ
グ用プログラムの構成を表している。
FIG. 3 shows a configuration of a debugging program stored in a ROM of a target machine.

【図4】図4(A)(B)は、PODの主要個所にPO
D_IDの更新ルーチン呼び出しが挿入されている様子
及びPOD_ID更新ルーチンの処理の概略を表した図
である。
FIGS. 4A and 4B show PODs at main parts of a POD.
FIG. 14 is a diagram illustrating a state in which a D_ID update routine call is inserted and an outline of processing of a POD_ID update routine.

【図5】図5(A)(B)はホスト機とターゲット機の
動作説明を行うためのフローチャート図である。
FIGS. 5A and 5B are flowcharts for explaining the operation of a host machine and a target machine.

【図6】ホストプログラムとその入出力デバイスの構成
を示した図である。
FIG. 6 is a diagram showing a configuration of a host program and its input / output devices.

【図7】図7(A)(B)は、ホスト機において受信し
たデータを一旦ファイルに書き込んで処理を行う場合に
ついて説明するための図である。
FIGS. 7A and 7B are diagrams for explaining a case where data received by a host device is temporarily written to a file and processing is performed;

【図8】図8(A)(B)は、PODのソースコードか
らコメントファイルを作成する動作を説明するための図
である。
FIGS. 8A and 8B are diagrams for explaining an operation of creating a comment file from a POD source code.

【図9】本デバッグ装置の表示画面を説明するための図
であり、実行情報が表示されていない場合の画面の状態
を示している。
FIG. 9 is a diagram for explaining a display screen of the debugging device, and shows a state of the screen when execution information is not displayed.

【図10】本デバッグ装置の表示画面を説明するための
図であり、テストが失敗した場合の画面の表示例であ
る。
FIG. 10 is a diagram for explaining a display screen of the debugging device, and is a display example of a screen when a test fails.

【図11】本デバッグ装置の表示画面を説明するための
図であり、テストが成功した場合の画面の表示例であ
る。
FIG. 11 is a diagram for explaining a display screen of the debugging device, and is a display example of a screen when a test is successful.

【符号の説明】[Explanation of symbols]

30 通信線 31 第一の通信線 32 第二の通信線 33 シグナルグランド 100 ターゲット機 120 ROM 130 RAM 140 I/Oポート 300 デバッグ用プログラム 310 POD 320 POD_ID更新ルーチン 330 通信ルーチン 340 コマンド処理ルーチン 600 ホストプログラム 610 受信モジュール 620 送信モジュール 630 蓄積モジュール 640 表示モジュール 650 操作モジュール 660 ファイル 670 表示部 680 入力部 720 コメントファイル REFERENCE SIGNS LIST 30 communication line 31 first communication line 32 second communication line 33 signal ground 100 target machine 120 ROM 130 RAM 140 I / O port 300 debugging program 310 POD 320 POD_ID update routine 330 communication routine 340 command processing routine 600 host program 610 reception module 620 transmission module 630 storage module 640 display module 650 operation module 660 file 670 display section 680 input section 720 comment file

Claims (9)

【特許請求の範囲】[Claims] 【請求項1】 ターゲットとなる情報処理装置のハード
ウエア及びソフトウエアの少なくとも一方をデバッグす
るデバッグ装置であって、 前記ターゲット機において実行されたデバッグ用プログ
ラムの出力データ及び前記デバッグ用プログラムのソー
スコードに基づき、前記デバッグ用プログラムの実行位
置及び実行内容の少なくとも一方を表す情報を含むユー
ザー用のデバッグ情報を作成するユーザー用デバッグ情
報作成手段と、 前記ユーザー用のデバッグ情報を所与の出力手段に出力
するユーザー用デバッグ情報出力手段とを含むことを特
徴とするデバッグ装置。
1. A debugging device for debugging at least one of hardware and software of a target information processing device, comprising: output data of a debugging program executed in the target machine; and source code of the debugging program. User debug information creating means for creating user debug information including information representing at least one of the execution position and execution content of the debug program, and the user debug information to a given output means A debugging information output unit for outputting the user debugging information.
【請求項2】 請求項1において、 前記ユーザー用デバッグ情報作成手段は、 前記デバッグ用プログラムの出力データに基づき前記デ
バッグ用プログラムのソースコードに含まれるコメント
情報を抽出して、ユーザー用のデバッグ情報を作成し、 前記ユーザー用デバッグ情報出力手段は、 前記デバッグ用プログラムのソースコードに含まれるコ
メント情報を含むユーザー用のデバッグ情報を出力する
ことを特徴とするデバッグ装置。
2. The debugging information for a user according to claim 1, wherein the user debugging information creating means extracts comment information included in a source code of the debugging program based on output data of the debugging program. Wherein the user debug information output means outputs user debug information including comment information included in a source code of the debug program.
【請求項3】 請求項1又は2のいずれかにおいて、 前記デバッグ用プログラムの出力データは、前記デバッ
グ用プログラムの実行位置を表す実行位置データを含
み、 前記ユーザー用デバッグ情報作成手段は、 前記デバッグ用プログラムから出力された実行位置デー
タに基づき、ユーザー用デバッグ情報を作成することを
特徴とするデバッグ装置。
3. The debugger according to claim 1, wherein the output data of the debug program includes execution position data indicating an execution position of the debug program. A debug device for creating user debug information based on execution position data output from a program for use.
【請求項4】 請求項1〜3のいずれかにおいて、 前記デバッグ用プログラムのソースコードに基づいて作
成された前記デバッグ用プログラムの実行位置及び実行
内容の少なくとも一方を表す情報を含むソース情報を前
記デバッグ用プログラムの出力データに対応させて記憶
するソース情報記憶手段をさらに含み、 前記ユーザー用デバッグ情報作成手段は、 前記デバッグ用プログラムから出力された出力データに
基づき、前記ソース情報記憶手段に記憶されたソース情
報を読み出して、ユーザー用のデバッグ情報を作成する
ことを特徴とするデバッグ装置。
4. The method according to claim 1, wherein the source information including information indicating at least one of an execution position and an execution content of the debugging program created based on a source code of the debugging program is stored. Source information storage means for storing the output data of the debug program in association with the output data, wherein the user debug information creation means is stored in the source information storage means based on output data output from the debug program. A debug device for reading out the source information and creating debug information for a user.
【請求項5】 請求項4において、 前記ソース情報記憶手段は、 前記デバッグ用プログラムのソースコードに含まれるコ
メント情報を前記デバッグ用プログラムの出力データに
対応させて記憶することを特徴とするデバッグ装置。
5. The debugging device according to claim 4, wherein the source information storage unit stores comment information included in a source code of the debugging program in association with output data of the debugging program. .
【請求項6】 請求項1〜5のいずれかにおいて、 前記ユーザー用デバッグ情報出力手段は、 所与の表示手段に前記ユーザー用のデバッグ情報を出力
することを特徴とするデバッグ装置。
6. The debugging device according to claim 1, wherein the user debug information output unit outputs the user debug information to a given display unit.
【請求項7】 請求項1〜6のいずれかにおいて、 前記デバッグ用プログラムの出力データは、ターゲット
機の読み出し専用メモリに記憶されているBIOSの初
期化及び機能診断ルーチンの出力データであることを特
徴とするデバッグ装置。
7. The program according to claim 1, wherein the output data of the debugging program is output data of a BIOS initialization and function diagnosis routine stored in a read-only memory of a target machine. Characteristic debugging device.
【請求項8】 ターゲットとなる情報処理装置のハード
ウエア及びソフトウエアの少なくとも一方をデバッグす
るデバッグ装置に用いる情報記憶媒体であって、 前記ターゲット機において実行された前記デバッグ用プ
ログラムの出力データ及び前記デバッグ用プログラムの
ソースコードに基づきユーザー用のデバッグ情報を作成
するための情報と、 前記ユーザー用のデバッグ情報用を所与の出力手段に出
力するための情報とを含むことを特徴とする情報記憶媒
体。
8. An information storage medium used for a debugging device for debugging at least one of hardware and software of a target information processing device, wherein the output data of the debugging program executed on the target machine and An information storage, comprising: information for creating debug information for a user based on a source code of a debug program; and information for outputting the debug information for the user to a given output unit. Medium.
【請求項9】 請求項8において、 前記ユーザー用デバッグ情報を作成するための情報は、 前記デバッグ用プログラムの出力データに基づき前記デ
バッグ用プログラムのソースコードに含まれるコメント
情報を抽出して、ユーザー用のデバッグ情報を作成する
ための情報を含み、 前記ユーザー用のデバッグ情報を所与の出力手段に出力
するための情報は、 前記デバッグ用プログラムのソースコードに含まれるコ
メント情報を含むユーザー用のデバッグ情報を出力する
ための情報を含むことを特徴とする情報記憶媒体。
9. The information according to claim 8, wherein the information for creating the user debug information includes: extracting comment information included in a source code of the debug program based on output data of the debug program; Information for generating debug information for the user, and information for outputting the debug information for the user to a given output means, for the user including comment information included in the source code of the program for debugging. An information storage medium including information for outputting debug information.
JP9120346A 1997-04-23 1997-04-23 Debug device and information storage medium Withdrawn JPH10301801A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9120346A JPH10301801A (en) 1997-04-23 1997-04-23 Debug device and information storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9120346A JPH10301801A (en) 1997-04-23 1997-04-23 Debug device and information storage medium

Publications (1)

Publication Number Publication Date
JPH10301801A true JPH10301801A (en) 1998-11-13

Family

ID=14783970

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9120346A Withdrawn JPH10301801A (en) 1997-04-23 1997-04-23 Debug device and information storage medium

Country Status (1)

Country Link
JP (1) JPH10301801A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8539127B2 (en) 2009-03-03 2013-09-17 Fujitsu Limited Linkup state generating method, information processing apparatus, and linkup state generating program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8539127B2 (en) 2009-03-03 2013-09-17 Fujitsu Limited Linkup state generating method, information processing apparatus, and linkup state generating program

Similar Documents

Publication Publication Date Title
US6769077B2 (en) System and method for remotely creating a physical memory snapshot over a serial bus
CA1235520A (en) Maintenance subsystem for computer network
US8898638B1 (en) Method and system for remote software debugging
US5357519A (en) Diagnostic system
US7673188B2 (en) System and method for controlling synchronous functional microprocessor redundancy during test and method for determining results
US7873874B2 (en) System and method for controlling synchronous functional microprocessor redundancy during test and analysis
US6279123B1 (en) System for viewing and monitoring embedded processor operation
EP1372069A2 (en) Method system and software for configuring a graphics processing communication mode
US4713815A (en) Automatic fault location system for electronic devices
US6807629B1 (en) Apparatus and method for accessing POST 80h codes via a computer port
JP4171240B2 (en) Program verification system
JPH10301801A (en) Debug device and information storage medium
JPH10301803A (en) Debug device and information processor and information storage medium
CN111984533A (en) Software automation test system and method
JPH10301802A (en) Debug device and information processor and information storage medium
JP2001243089A (en) Device and method for verifying software
US10216525B1 (en) Virtual disk carousel
CN110321171B (en) Startup detection device, system and method
JP2004252585A (en) Program verification system
US11966309B2 (en) Saturation of multiple PCIe slots in a server by multiple ports in a single test card
CN109074455B (en) Erasing device
CN106814943A (en) The exchange method and system of a kind of computer and Android device
JP2001331344A (en) Fault information tracing device for integrated system
CN116185822A (en) Method and device for acquiring software test BUG, computer equipment and storage medium
CN113341907A (en) System and debugging method for universal Debug card

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20040706