JPS6014355A - Debug device - Google Patents
Debug deviceInfo
- Publication number
- JPS6014355A JPS6014355A JP58120884A JP12088483A JPS6014355A JP S6014355 A JPS6014355 A JP S6014355A JP 58120884 A JP58120884 A JP 58120884A JP 12088483 A JP12088483 A JP 12088483A JP S6014355 A JPS6014355 A JP S6014355A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- address
- module
- debug
- program
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
【発明の詳細な説明】
〈発明の技術分野〉
本発明は、コンピュータプログラムを検査するデバッグ
製餡に関連し、殊に本発明は、複数のモジュールを結合
して成るプログラムをデバッグする場合、特定のモジュ
ールにブレークポイント(Break Po1nt )
を設定して、プログラムの進行を中断させる新規方式を
提案する。DETAILED DESCRIPTION OF THE INVENTION Technical Field of the Invention The present invention relates to debugging for testing computer programs. Break point (Break Point) in the module of
We propose a new method for interrupting program progress by setting .
〈発明の背景〉
近年、コンピュータシステムの動作プログラムは、仕事
内容等に応じて複数のモジュールに分割し、各モジュー
ルをコール命令を介し階層的に結合して、一連のものに
構造化しである。<Background of the Invention> In recent years, operating programs for computer systems have been structured into a series of programs by dividing them into a plurality of modules according to the content of work, etc., and connecting the modules hierarchically through call instructions.
一般にデバッグ処理は、被検査プログラムを一命令ずつ
進行させて実施するが、この種構造化プログラムの場合
、デバッグ処理中のモジュールにコール命令が設定され
ていると、デバッグの対象か下位のモジュールへ移行す
ることになる。通常下位のモジュールは、その」上位モ
ジュールの部品的役割を果すこ、とが多く、かかる場合
には、下位モジュールのデバッグを省略して、上位モジ
ュールのみをデバッグの対象とすることが行なわれる。Generally, debugging is carried out by progressing the program under test one instruction at a time, but in the case of this type of structured program, if a call instruction is set in the module being debugged, the debugging target or lower module will be transferred. Usually, a lower module often plays a component role of its upper module, and in such cases, debugging of the lower module is omitted and only the upper module is targeted for debugging.
ところ゛が現在のところ、かかる省略処理を容易かつ迅
速に実施し得る有効な方法が確立されておらず、これか
デパック処理の効2Vを低下されている。However, at present, no effective method has been established for easily and quickly carrying out such abbreviation processing, which reduces the effectiveness of the depacking process by 2V.
〈発明の目的〉
本発明は、複数の下位モジュールを有する特定のモジュ
ールにつき、下位モジュールのデバッグを省略I7て、
」−位モジュールのみを容易にデバッグし着る新規なデ
パック装置を提供し、もってデバッグ処理効率を向上す
ることを目的とする。<Objective of the Invention> The present invention provides a method for omitting debugging of a lower module for a specific module having a plurality of lower modules.
An object of the present invention is to provide a new depacking device that easily debugs and installs only the "-" module, thereby improving debugging processing efficiency.
〈発明の構成および効果〉
上記「1的を達成するため、本発明では、登録手段に対
し下位モジュールを呼び出すコール命令が設定されたア
ドレスと、−1−位モジュールへ戻すリターン命令が設
定されたアドレスとを予め登録しておき、例えば実行さ
れた命令のアドレスかコール命令設定アドレスにかかる
登録データに一致するとき、計数手段をアップカウント
シ、またリターン命令設定アドレスにかかる登録データ
に一致するとき、計数手段をタウンカウントし、計数内
容が計数開始点に復帰した(3)
とき、これをブレークポイントとじて停市制御手段によ
りプログラムの進行を停止I−させるようにした。<Configuration and Effects of the Invention> In order to achieve objective 1 above, in the present invention, an address where a call instruction to call a lower module is set for the registration means and a return instruction to return to the -1- module is set. For example, when the address of an executed instruction matches the registered data related to the call instruction setting address, when the counting means is incremented, or when it matches the registered data related to the return instruction setting address. , the counting means performs a town count, and when the count returns to the counting start point (3), this is set as a break point and the progress of the program is stopped by the stop control means.
本発明によれは、特定のモジュールに若r−I してデ
バッグする際、プログラムの進行が下位のモジュールに
移行しても、下位モジュールのデバッグを容易に省略し
て、着「]シたモジュールのみをデバッグでき、デバッ
グ処理効率を向1−し得る等、発明目的を達成した優れ
た効果を奏する。According to the present invention, when debugging a specific module, even if the program progresses to a lower module, debugging of the lower module can be easily omitted, and the module The present invention achieves excellent effects such as being able to debug only the debugging process and improving debugging processing efficiency.
〈実施例の説明〉
第1図はコンピュータシステムを採用した機械1(以下
実機という)に本発明のデバッグ装置2を接続した回路
構成例を示す。<Description of Embodiments> FIG. 1 shows an example of a circuit configuration in which a debugging device 2 of the present invention is connected to a machine 1 (hereinafter referred to as an actual machine) employing a computer system.
実機1は、被検査プログラムが格納しであるメモリ3と
、このプログラムを解読実行して入出力機器(図示せず
)の動作を一連に制御する実機CP U 4 (Cen
tral Processing Uni[)とを含む
。The actual device 1 includes a memory 3 in which a program to be tested is stored, and an actual CPU 4 (Cen.
tral Processing Uni[).
前記被検査プログラムは複数のモジュールを階層的に結
合して構成され、第2図にプロゲラ(4)
ムの構成例を階層図として示しである。第2図の各ブロ
ックはモジュールを示し、最上位のモジュールPには3
個のモジュールP、、 P2. P3が結合され、下位
モジュールP1には更に下位のモジュール”+1、同様
に下位モジュールP2にはモジュールP21 ! P2
21 P23が夫々結合され、更にまた下位モジュール
P22には2個の最下位のモジュールP22−1. 、
P2□−2が夫々結合されている。」1下関係にある
各モジュールは」−位モジュールに設定されたコール(
CA LL )命令および、下位モジュールに設定され
たリターン(RETURN)命令を介して夫々結合され
ており、第31)!Jに示す例では、モジュールPのア
ドレスb1. l)2. b3に下位モジュールPl+
P2 + P3の先頭を呼び出すコール命令が、また
モジュールP1のアドレス1)11およびモジュールP
2のアドレスh2+ 、 ’)22 、1)23に更に
下位のモジュールP11およびモジュールP2+ +
P22 + P23の先頭を呼ひ出すコール命令が、更
にモジュールP22のアドレス”’−’ l b22−
2 に最下位のモジュール”22− ] 、 T’22
−2の先頭を呼び出すコール命令が夫々設定してあり、
また最下位モジュールPを除(各モジュールの最終アド
レスa+1 a2+ ”3 )aII +a21 +
a22 + a231 a22−11 ”22 2には
その」−位のモジュールへ戻るリターン命令が夫々設定
しである。The program to be tested is constructed by hierarchically connecting a plurality of modules, and FIG. 2 shows an example of the structure of a program program (4) as a hierarchical diagram. Each block in FIG. 2 represents a module, and the topmost module P has three
modules P,, P2. P3 is combined, lower module P1 has a lower module "+1", and similarly lower module P2 has module P21!P2
21 P23 are connected to each other, and the lower module P22 has two lowest modules P22-1 . ,
P2□-2 are connected to each other. Each module with a ``1'' relationship has a call (
CALL ) instruction and a RETURN instruction set in the lower module, respectively, and are connected via the 31st)! In the example shown in J, the address b1. l)2. Lower module Pl+ in b3
The call instruction that calls the beginning of P2 + P3 also calls address 1) 11 of module P1 and module P
2 addresses h2+, ')22, 1)23, lower module P11 and module P2+ +
The call instruction that calls the beginning of P22 + P23 further calls the address of module P22 "'-' l b22-"
2, the lowest module "22-", T'22
A call instruction to call the beginning of -2 is set for each,
Also, excluding the lowest module P (the final address of each module a+1 a2+ "3) aII +a21 +
a22 + a231 a22-11 "22 2 has a return command to return to the -" module, respectively.
図示例のデバッグ装置2は、−1−記コール命令の設定
アドレスおよびリターン命令の設定アドレスを個別に登
録するための一対のピッ1−マツプメモリ5,6を有し
、各ビットマツプメモリ5.6の出力をゲート回路7,
8を介して可逆カウンタ9のカウントアツプ端子C(J
およびカウントダウン端子CDに夫々接続しである。例
えば第2図および第3図に示すプログラム例において、
モジュールPlをデバッグの対象とする場合には、下位
モジュールPI+を呼び出スコール命令設定アト1/ス
bl+に対応するビットマツプメモリ5のエリアにデー
タ「1」を、その他のエリアにデータ「0」を夫々セッ
トする。The illustrated debug device 2 has a pair of bit map memories 5 and 6 for individually registering the set address of the call instruction and the set address of the return instruction, each bit map memory 5 and 6. The output of gate circuit 7,
Count-up terminal C (J
and countdown terminal CD. For example, in the program examples shown in FIGS. 2 and 3,
When the module Pl is to be debugged, the lower module PI+ is called, and data "1" is written to the area of the bitmap memory 5 corresponding to the squall instruction setting at1/sbl+, and data "0" is written to the other areas. Set each.
また」上位モジュールP、へ戻りリターン命令設定アド
レスallに対応するヒツトマツプメモリ6のエリアに
テーク「1」を、その他のエリアにデータ「0」を夫々
セットする。これによりアドレスb】1のコール命令か
実行されたとき、ピッI・マツプメモリ5が論理「1」
の一致出力を送出腰司逆カウンタ9はアップカウントす
、る。一方アドレスallのリターン命令が実行された
とき、ビットマツプメモリ6が論理「】jの一致出力を
送出し、可逆カウンタ9はダウンカウントする。この可
逆カウンタ9は通常データ「0」がプリセットされ、こ
れにより可逆カウンタ9はrOJを起算点として計数を
開始し、アップカウントおよびグウンノJウントの各動
作の結果、計数内容が起算点に復帰したとき、キャリ端
子COよりブレークポイント検出信号1を出力する。こ
の検出信号iによってブレークポイントが設定され、ブ
レークコントロール回路】0か作動して、実機CP U
4によるプログラムの進行を停止」二させる。Also, a take "1" is set in the area of the hitmap memory 6 corresponding to the return command setting address "all" to the upper module P, and data "0" is set in the other areas. As a result, when the call instruction at address b]1 is executed, the pin map memory 5 becomes logic "1".
The counter 9 inversely counts up by sending out the matching output. On the other hand, when the return instruction at address all is executed, the bitmap memory 6 sends out a matching output of logic "]j, and the reversible counter 9 counts down. This reversible counter 9 is normally preset to data "0". As a result, the reversible counter 9 starts counting with rOJ as the starting point, and when the count returns to the starting point as a result of the up-count and count-down operations, it outputs the break point detection signal 1 from the carry terminal CO. . A breakpoint is set by this detection signal i, the break control circuit is activated, and the actual CPU
4 to stop the program from proceeding.
なお図中、マルチプレクサ1 ]、 、 12は、夫々
ビットマツプメモリ5,6に対し実機CPU4およびデ
バッグ装置2のCPU1.4を接続する回路であり、ま
たタイミングコントロール回路13は前記ゲート回路7
,8のゲート開閉動作を制御する回路である。またCI
’U14.14、メモリ15に格納されたデバッグ用プ
ログラムを解読実行し、コントロール回路16を介して
ビットマツプメモリ5,6、可逆カウンタ9、マルチプ
レクサ1.1 、1.2の各iFt+作を制御すると共
に、表示器17、キー人力装[418等、デパック処理
に供される各種入jii力機器の動作を制御する。In the figure, multiplexers 1, , and 12 are circuits that connect the actual CPU 4 and the CPU 1.4 of the debugging device 2 to the bitmap memories 5 and 6, respectively, and the timing control circuit 13 connects the gate circuit 7 to the bitmap memories 5 and 6, respectively.
, 8 is a circuit that controls the gate opening/closing operation of the gates. Also CI
'U14.14, decodes and executes the debugging program stored in the memory 15, and controls each iFt+ operation of the bitmap memories 5, 6, reversible counter 9, and multiplexers 1.1 and 1.2 via the control circuit 16. At the same time, it controls the operation of various input devices used for depacking processing, such as the display 17 and the key input device [418].
然して被検査プログラムにおける特定のモジュールをデ
パックする場合、第71図のステップ21および22に
おいて、下位のモジュールを呼ヒ出すコール命令の設定
アドレスをヒツトマツプメモリ5に、また−L位モジコ
ー−Jレヘ戻すリターン命令の設定アドレスをビットマ
ツプメモリ6に夫々登録する。つぎにステップ23て可
逆カウンタ9に、例えはデータ「0」をプリセットした
後、つぎのステップ24てマルチプレクサ]、 ] 、
1.2を実機CPU4側に切り換えて、実(幾1を運
転する。そして実機CP U 4か登録データに一致す
るアドレスの命令を実行したとき、その命令がコール命
令の場合は可逆カウンタ9がアップカウントシ、一方リ
ターン命令の場合は可逆カウンタ9がダウンカウントす
る(ステップ25)。その結果、可逆カウンタ9の内容
が起算点に復帰したとき、可逆カウンタ9はブレークポ
イント検出信号iを出力し、ステップ26の判定が°’
Y Ii S ”となって、実機CPU4によるプロ
グラムの実行が停止する(ステップ27)。しかる後、
マルチプレクサ11.12をデバッグ装置2のcpu1
4側に切り換え、モジュールのプログラムを一命令ずつ
進行させて、デバッグ処理を継続実施する。However, when depacking a specific module in the program under test, in steps 21 and 22 of FIG. The setting addresses of the return commands to be returned are registered in the bitmap memory 6, respectively. Next, in step 23, the reversible counter 9 is preset to, for example, data "0", and then in the next step 24, the multiplexer], ],
1. Switch 2 to the real CPU 4 side and run the real CPU 4. Then, when the real CPU 4 executes an instruction with an address that matches the registered data, if the instruction is a call instruction, the reversible counter 9 will be In the case of an up count, on the other hand, in the case of a return instruction, the reversible counter 9 counts down (step 25).As a result, when the contents of the reversible counter 9 return to the starting point, the reversible counter 9 outputs a break point detection signal i. , the determination in step 26 is °'
Y Ii S ” and the execution of the program by the actual CPU 4 is stopped (step 27). After that,
multiplexer 11.12 to CPU1 of debug device 2
4 side, the module program is advanced one instruction at a time, and debug processing is continued.
第1図は本発明にかかるデバッグ装置の回路ブロック図
、第2図はプログラムの構造例を示す階層図、第3図は
プログラムの構成およびアドレスを説明する図、第4図
は第1図に示す回路の動作子1111+(を示ずフロー
チャー1・である。
5.6・・・・・・ビットマツプメモリ9・・・・・・
可逆カウンタ
10・・・・・・ブレークコントロール回路特許出願人
立石電機株式会社FIG. 1 is a circuit block diagram of a debugging device according to the present invention, FIG. 2 is a hierarchical diagram showing an example of the program structure, FIG. 3 is a diagram explaining the program structure and addresses, and FIG. 4 is similar to FIG. 1. The operating element 1111+(of the circuit shown in FIG. 1) is flowchart 1.
Reversible counter 10...Break control circuit patent applicant Tateishi Electric Co., Ltd.
Claims (1)
プログラムが構成されたものにおいて、下位モジュール
を呼び出すコール命令が設定されたアドレスおよび」上
位モジュールへ戻すリターン命令か設定されたアドレス
を登録する登録手段と、実行した命令のアドレスと各登
録内容との比較結果に基つきアップカウントおよびダウ
ンカウントの各計数動作を実施する計数手段と、計数手
段の内容が計数開始点へ復帰したときプログラムの実行
を停止させる停止制御手段とを具備して成るデバッグ装
置。In a program configured by hierarchically connecting multiple modules via call instructions, register the address where the call instruction that calls the lower module is set and the address where the return instruction that returns to the upper module is set. a counting means that performs up-counting and down-counting operations based on the comparison result between the address of the executed instruction and each registered content; and execution of a program when the content of the counting means returns to the counting starting point. A debugging device comprising a stop control means for stopping the debugging device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP58120884A JPS6014355A (en) | 1983-07-02 | 1983-07-02 | Debug device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP58120884A JPS6014355A (en) | 1983-07-02 | 1983-07-02 | Debug device |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS6014355A true JPS6014355A (en) | 1985-01-24 |
Family
ID=14797353
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP58120884A Pending JPS6014355A (en) | 1983-07-02 | 1983-07-02 | Debug device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS6014355A (en) |
-
1983
- 1983-07-02 JP JP58120884A patent/JPS6014355A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5132971A (en) | In-circuit emulator | |
JPS63111545A (en) | Microprocessor for debug | |
JPH03204737A (en) | Debug circuit of signal processing processor | |
JPS6014355A (en) | Debug device | |
JPS6376028A (en) | Method for controlling execution of instruction step in virtual computer system | |
JPS59202547A (en) | Debugging device | |
JPS59202550A (en) | Debugging device | |
JPS6014356A (en) | Debug device | |
JPS6158051A (en) | False trouble generating system | |
JPS5860361A (en) | Real time system available for on-line debugging | |
JPS59202546A (en) | Debugging device | |
JPH1165884A (en) | Microcomputer and debugging method therefor | |
JPH03152634A (en) | Debugging device | |
JPH10124339A (en) | Digital controller | |
JPS61134850A (en) | Debugging method of subsequent processor | |
JPS59165158A (en) | Debugging device | |
JPS6091458A (en) | Program debug device of microprocessor | |
JPS59163653A (en) | Debug device | |
JPH06222917A (en) | Electronic device | |
JPH0926895A (en) | Emulation circuit of eeprom | |
JPS63150732A (en) | Program running supervisory equipment | |
JPS603757A (en) | Debugging device | |
JPS61138344A (en) | Debugging system | |
JP2001034498A (en) | Debug method and device | |
JPH01214942A (en) | In-circuit emulator |