JPH0581068A - Debugging support device - Google Patents

Debugging support device

Info

Publication number
JPH0581068A
JPH0581068A JP3266853A JP26685391A JPH0581068A JP H0581068 A JPH0581068 A JP H0581068A JP 3266853 A JP3266853 A JP 3266853A JP 26685391 A JP26685391 A JP 26685391A JP H0581068 A JPH0581068 A JP H0581068A
Authority
JP
Japan
Prior art keywords
processor
bit
debugging
tag
interrupt
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
Application number
JP3266853A
Other languages
Japanese (ja)
Inventor
Teruhiko Ohara
輝彦 大原
Koichi Takeda
浩一 武田
Osamu Yamashita
修 山下
Akira Yamamoto
山本  明
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.)
National Institute of Advanced Industrial Science and Technology AIST
Original Assignee
Agency of Industrial Science and Technology
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 Agency of Industrial Science and Technology filed Critical Agency of Industrial Science and Technology
Priority to JP3266853A priority Critical patent/JPH0581068A/en
Publication of JPH0581068A publication Critical patent/JPH0581068A/en
Pending legal-status Critical Current

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02EREDUCTION OF GREENHOUSE GAS [GHG] EMISSIONS, RELATED TO ENERGY GENERATION, TRANSMISSION OR DISTRIBUTION
    • Y02E60/00Enabling technologies; Technologies with a potential or indirect contribution to GHG emissions mitigation
    • Y02E60/30Hydrogen technology
    • Y02E60/50Fuel cells

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

PURPOSE:To provide a debugging support device where plural supervisory points in debugging can be set without affecting debugging, hardware constitution is small and whose performance difference in processing speed in a debugging state and a non-debugging state is small. CONSTITUTION:A processor 1X1 adopting tag architecture is used. A breake bit 21iB interrupting the execution of an instruction is prepared in the tag of an instruction memory 21, and a watch bit 22jW interrupting a processing at the time of data access in the tag of a data memory 22. When the processor 1X1 accesses to a memory cell where the breake bit 21iB or the watch bit 22jW is set, an interruption drive means (1X2, 1X3 or 1X4 and 1X5) interrupts the processor 1X1 for starting a debugging processing.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、デバッギングシステム
を支援するデバッグ支援装置に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a debug support device for supporting a debugging system.

【0002】[0002]

【従来の技術】コンピュータシステムの複雑化、取扱う
情報の多様化、コンピュータシステムの利用形態の多様
化、利用者の拡大等によって、プログラムが複雑かつ多
大なものとなることが多く、そのため、デバッギングシ
ステムの使用が不可欠なものとなりつつある(文献:
「ソフトウェア指向アーキテクチャ」、飯塚肇、田中英
彦共著、1985(オーム社)、pp205-216 )。
2. Description of the Related Art Programs are often complicated and large due to the complexity of computer systems, diversification of information to be handled, diversification of usage forms of computer systems, expansion of users, etc. Is becoming indispensable (reference:
"Software-Oriented Architecture", Hajime Iizuka, Hidehiko Tanaka, 1985 (Ohmsha, pp205-216).

【0003】デバッギングシステムを構築する上で重要
な点の一つは、デバッグ状態と非デバッグ状態とを可能
な限り近付けることである。近付けるべき項目として
は、例えばデバッグ状態と非デバッグ状態との処理速度
がある。
One of the important points in constructing a debugging system is to bring the debug state and the non-debug state as close as possible. Items that should be brought closer include, for example, the processing speed in the debug state and the non-debug state.

【0004】例えば、プログラムのデバッグを行なう際
に、指定したところでプログラムの実行を中断し、レジ
スタやメモリの内容を調べるということを考える。この
場合、デバッグを支援する機構として、プロセッサが実
行する全ての命令で、命令実行前に中断が発生するよう
な機構を用意し、プログラムの実行制御とデータアクセ
スを監視する方式が考えられる。しかし、この方式で
は、デバッグ時に、命令の実行毎に中断が生じ、この中
断がプログラマがデバッギングのために指定したものか
否かを一々検索処理する必要があるので、プログラムの
処理速度が著しく低下する。
For example, when debugging a program, consider interrupting the execution of the program at a specified location and examining the contents of registers and memory. In this case, as a mechanism for assisting debugging, a method may be considered in which a mechanism is provided in which all instructions executed by the processor are interrupted before instruction execution, and program execution control and data access are monitored. However, in this method, during debugging, an interruption occurs each time an instruction is executed, and it is necessary to search each time whether this interruption is designated by the programmer for debugging, so the processing speed of the program is significantly reduced. To do.

【0005】そこで、かかる欠点を補うために、中断点
を特定して中断させる以下に示すハードウェア機構がデ
バッグ支援用として既に提案されている。
Therefore, in order to make up for such a drawback, the following hardware mechanism for identifying the interruption point and interrupting it has already been proposed for debugging support.

【0006】(1) プログラムの実行制御に関する機構 プログラムの命令実行中断点(以下、ブレークポイント
と呼ぶ)を示す特殊レジスタ(以下、ブレークポイント
レジスタと呼ぶ)をプロセッサの内部又は外部に用意
し、命令フェッチが発生する毎にそのアドレスとブレー
クポイントレジスタの内容を比較し、一致した場合(ブ
レークポイントに達した場合)に実行を中断する。
(1) Mechanism Related to Program Execution Control A special register (hereinafter, referred to as a break point register) indicating an instruction execution interruption point (hereinafter, referred to as a break point) of the program is prepared inside or outside the processor to provide an instruction. Each time a fetch occurs, the address is compared with the contents of the breakpoint register, and if they match (the breakpoint is reached), execution is suspended.

【0007】(2) データアクセスに関する機構 データアクセスの監視点(メモリ操作指示の中断点:以
下、ウォッチポイントと呼ぶ)を示す特殊レジスタ(以
下、ウォッチポイントレジスタと呼ぶ)をプロセッサの
内部又は外部に用意し、データアクセスが発生する毎に
そのアドレスとウォッチポイントレジスタの内容を比較
し、一致した場合(ウォッチポイントをアクセスした場
合)に実行を中断する。
(2) Mechanism for data access A special register (hereinafter, referred to as watchpoint register) indicating a monitoring point of data access (interruption point of memory operation instruction: hereinafter referred to as watchpoint) is provided inside or outside the processor. Every time a data access occurs, the address is prepared and the contents of the watchpoint register are compared, and if they match (when the watchpoint is accessed), the execution is interrupted.

【0008】[0008]

【発明が解決しようとする課題】しかし、上述した二つ
のデバッグ支援機構を用いて、デバッギングシステムを
構築する場合、次のような問題がある。
However, when a debugging system is constructed using the above-mentioned two debug support mechanisms, there are the following problems.

【0009】ステップ数が多いプログラムを対象とする
場合や、多数のデータを取扱うプログラムを対象とする
場合、デバッギングを有効に機能させるべく、複数のブ
レークポイントや複数のウォッチポイントを指定する必
要が生じることがある。これに応じるためには、複数の
ブレークポイントレジスタや複数のウォッチポイントレ
ジスタを実装してデバッギングシステムを構築すること
になる。一般には、デバッギングシステムは、複数のプ
ログラムを処理できるように汎用的なものであり、複数
のブレークポイントレジスタや複数のウォッチポイント
レジスタを実装するとしても限度がある。そのため、必
要な全てのブレークポイントやウォッチポイントを指定
できないことも生じる。これを解決しようとすると、多
大のブレークポイントレジスタやウォッチポイントレジ
スタを実装することを要し、ハードウェアが膨大とな
る。プロセッサの内部にレジスタを設ける場合には1チ
ップ化が困難になることが多く、外部に設ける場合には
装置全体が大型化する。
When a program with a large number of steps is targeted or a program which handles a large amount of data is targeted, it is necessary to specify a plurality of breakpoints or a plurality of watchpoints in order to make the debugging function effectively. Sometimes. In order to comply with this, a debugging system is constructed by implementing a plurality of breakpoint registers and a plurality of watchpoint registers. In general, the debugging system is general-purpose so that it can process a plurality of programs, and there is a limit even if a plurality of breakpoint registers and a plurality of watchpoint registers are mounted. Therefore, it may not be possible to specify all required breakpoints or watchpoints. In order to solve this, it is necessary to mount a large number of breakpoint registers and watchpoint registers, and the hardware becomes huge. When a register is provided inside the processor, it is often difficult to make it into one chip, and when it is provided outside, the entire device becomes large.

【0010】このような複数のブレークポイントや複数
のウォッチポイントを、命令フェッチやデータアクセス
の度に例外(トラップ)を発生させてソフトウェアによ
って検索することも考えられる。このようにすると、ハ
ードウェアで実現する場合の問題は生じない。しかし、
この方式の場合には、命令フェッチやデータアクセス毎
に検索処理するので、デバッグ状態と非デバッグ状態と
の処理速度面での性能差が大きくなるという問題があ
る。また、デバッギングシステムを構築する対象が並列
プロセッサシステムの場合、このオーバーヘッドのため
に、プログラムの動作そのものが変わってしまい、デバ
ッグに支障をきたす場合がある。
It is conceivable that such a plurality of breakpoints and a plurality of watchpoints may be searched by software by causing an exception (trap) each time an instruction fetch or data access is performed. In this way, there will be no problem when implemented by hardware. But,
In the case of this method, since the search processing is performed for each instruction fetch or data access, there is a problem that the performance difference in the processing speed between the debug state and the non-debug state becomes large. Further, when the target for constructing the debugging system is a parallel processor system, the operation itself of the program may change due to this overhead, which may hinder debugging.

【0011】本発明は、以上の点を考慮してなされたも
のであり、デバッグに影響を与えることなくデバッギン
グでの監視ポイントを複数設定することができる、しか
も、ハードウェア構成が小さい、デバッグ状態と非デバ
ッグ状態との処理速度面での性能差を小さくできるデバ
ッグ支援装置を提供しようとするものである。
The present invention has been made in consideration of the above points, and it is possible to set a plurality of monitoring points for debugging without affecting debug, and the hardware configuration is small and the debug state is small. An object of the present invention is to provide a debug support device capable of reducing the difference in performance between the non-debug state and the non-debug state.

【0012】[0012]

【課題を解決するための手段】かかる課題を解決するた
め、第1の本発明においては、タグアーキテクチャを採
用するプロセッサを少なくとも1台以上有するプロセッ
サシステムにおいて、メモリセルのタグ中に命令実行を
中断させる命令実行中断ビットを用意し、この命令実行
中断ビットがセットされているメモリセルをアクセスし
たプロセッサに、デバッギング処理を起動させる割込み
を掛ける割込み駆動手段を設けた。
In order to solve such a problem, according to the first aspect of the present invention, in a processor system having at least one processor adopting a tag architecture, instruction execution is suspended during a tag of a memory cell. There is provided an instruction execution interruption bit for causing the processor to access the memory cell in which the instruction execution interruption bit is set, and an interrupt driving means for applying an interruption for starting the debugging processing is provided.

【0013】また、第2の本発明においては、タグアー
キテクチャを採用するプロセッサを少なくとも1台以上
有するプロセッサシステムにおいて、メモリセルのタグ
中に、データメモリのアクセス時に処理を中断させるメ
モリ操作中断ビットを用意し、このメモリ操作中断ビッ
トのセットされているメモリセルをアクセスしたプロセ
ッサに、デバッギング処理を起動させる割込みを掛ける
割込み駆動手段を設けた。
According to the second aspect of the present invention, in a processor system having at least one processor adopting a tag architecture, a memory operation interruption bit for interrupting a process when accessing a data memory is included in a tag of a memory cell. An interrupt driving means is provided, which is prepared and applies an interrupt for starting the debugging process to the processor which has accessed the memory cell in which the memory operation interruption bit is set.

【0014】[0014]

【作用】第1の本発明においては、メモリセルのタグ中
に命令実行を中断させる命令実行中断ビットを予め用意
しておく。そして、プロセッサがこの命令実行中断ビッ
トがセットされているメモリセルをアクセスしたとき
に、割込み駆動手段がデバッギング処理を起動させる割
込みをプロセッサに掛ける。
In the first aspect of the present invention, the instruction execution interruption bit for interrupting the instruction execution is prepared in the tag of the memory cell. Then, when the processor accesses the memory cell in which the instruction execution interruption bit is set, the interrupt driving means issues an interrupt to the processor to activate the debugging process.

【0015】また、第2の本発明においては、メモリセ
ルのタグ中にデータメモリのアクセス時に処理を中断さ
せるメモリ操作中断ビットを予め用意しておく。そし
て、プロセッサがこのメモリ操作中断ビットのセットさ
れているメモリセルをアクセスしたときに、割込み駆動
手段がデバッギング処理を起動させる割込みをプロセッ
サに掛ける。
Further, in the second aspect of the present invention, a memory operation interruption bit for interrupting the processing when accessing the data memory is prepared in the tag of the memory cell. Then, when the processor accesses the memory cell in which the memory operation interruption bit is set, the interrupt driving means issues an interrupt to the processor to activate the debugging process.

【0016】[0016]

【実施例】以下、本発明を並列プロセッサシステムに適
用した一実施例を図面を参照しながら詳述する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment in which the present invention is applied to a parallel processor system will be described in detail below with reference to the drawings.

【0017】図2は、この実施例が対象とする並列プロ
セッサシステムの構成を示すブロック図である。
FIG. 2 is a block diagram showing the configuration of a parallel processor system to which this embodiment is directed.

【0018】図2において、並列プロセッサシステム1
は、複数のプロセッサモジュール11、12、…、1n
と、共有メモリモジュール20とが共有バス30を介し
て接続されている。各プロセッサモジュール11、1
2、…、1nにはそれぞれ、タグアーキテクチャを採用
しているプロセッサ111、121、…、1n1が設け
られており、各プロセッサ111、121、…、1n1
は必要に応じて共有メモリモジュール20をアクセスす
る。共有メモリモジュール20には、デバッギング対象
のプログラムに係る命令群を格納した命令メモリ21
と、デバッギング対象のプログラムに係るデータ群を格
納したデータメモリ22とが設けられている。
In FIG. 2, the parallel processor system 1
Is a plurality of processor modules 11, 12, ..., 1n
And the shared memory module 20 are connected via the shared bus 30. Each processor module 11, 1
, 1n are respectively provided with processors 111, 121, ..., 1n1 adopting the tag architecture.
Accesses the shared memory module 20 as necessary. The shared memory module 20 includes an instruction memory 21 that stores an instruction group related to a program to be debugged.
And a data memory 22 storing a data group related to a program to be debugged.

【0019】以上のような並列プロセッサシステム1と
しての基本的構成に加えて、以下のようなデバッギング
のための構成や機能が設けられている。これについて、
図1及び図3をも用いて説明する。
In addition to the basic configuration of the parallel processor system 1 as described above, the following configuration and functions for debugging are provided. about this,
A description will be given also with reference to FIGS. 1 and 3.

【0020】命令メモリ21の1個のセル21iは、図
3(A)に示すように、タグ部21i1と命令部21i
2とから構成されており、タグ部21i1中の1個のタ
グビットとして当該アドレスの命令がブレークポイント
であるか否かを示すブレークビット21iBが用意され
ている。また、データメモリ22の1個のセル22j
は、図3(B)に示すように、タグ部22j1とデータ
部22j2とから構成されており、タグ部22j1中の
1個のタグビットとして当該アドレスのデータがウォッ
チポイントであるか否かを示すウォッチビット22jW
が用意されている。なお、この実施例の命令メモリ21
は、データメモリ22と同様にプロセッサによるメモリ
操作指示(ライト処理等)によってそのタグ情報を更新
できるようになされている。
One cell 21i of the instruction memory 21 has a tag section 21i1 and an instruction section 21i, as shown in FIG.
2, and a break bit 21iB indicating whether or not the instruction at the address is a breakpoint is prepared as one tag bit in the tag portion 21i1. In addition, one cell 22j of the data memory 22
3B, as shown in FIG. 3B, is composed of a tag section 22j1 and a data section 22j2. It is determined whether or not the data of the address is a watchpoint as one tag bit in the tag section 22j1. Watch bit 22jW shown
Is prepared. The instruction memory 21 of this embodiment is
Like the data memory 22, the tag information can be updated by a memory operation instruction (write processing or the like) from the processor.

【0021】このようなブレークビット21iBやウォ
ッチビット22jWが有意か否かを監視する構成が各プ
ロセッサモジュール1x(xは1、2、…、n)に設け
られている。
Each processor module 1x (x is 1, 2, ..., N) is provided with a configuration for monitoring whether or not the break bit 21iB and the watch bit 22jW are significant.

【0022】ブレークビット21iBの監視構成とし
て、図1(A)に示すように、ナンド回路1x2とラッ
チ回路1x3とが設けられている。ラッチ回路1x3
は、ブレークポイントにアクセスした場合に割込みを発
生させるか否かを示すブレークモード信号BPEをラッ
チするものである。ブレークポイントに基づいたデバッ
ギング処理を行なう場合には、セット状態のブレークモ
ード信号BPEがラッチされる。ナンド回路1x2は、
ブレークビット21iB及びブレークモード信号BPE
が共にセットされているときに、プロセッサ1x1にブ
レークポイントとしての割込み信号INTREQ0を与
えるものである。
As a monitoring configuration of the break bit 21iB, as shown in FIG. 1 (A), a NAND circuit 1x2 and a latch circuit 1x3 are provided. Latch circuit 1x3
Is for latching a break mode signal BPE indicating whether or not to generate an interrupt when a breakpoint is accessed. When the debugging process based on the break point is performed, the break mode signal BPE in the set state is latched. The NAND circuit 1x2 is
Break bit 21iB and break mode signal BPE
Is set, the interrupt signal INTREQ0 as a breakpoint is given to the processor 1x1.

【0023】ウォッチビット22jWの監視構成とし
て、図1(B)に示すように、ナンド回路1x4とラッ
チ回路1x5とが設けられている。ラッチ回路1x5
は、ウォッチポイントにアクセスした場合に割込みを発
生させるか否かを示すウォッチモード信号WPEをラッ
チするものである。ウォッチポイントに基づいたデバッ
ギング処理を行なう場合には、セット状態のウォッチモ
ード信号WPEがラッチされる。ナンド回路1x4は、
ウォッチビット22jW及びウォッチモード信号WPE
が共にセットされているときに、プロセッサ1x1にウ
ォッチポイントとしての割込み信号INTREQ1を与
えるものである。
As a monitoring configuration of the watch bit 22jW, as shown in FIG. 1B, a NAND circuit 1x4 and a latch circuit 1x5 are provided. Latch circuit 1x5
Is to latch a watch mode signal WPE indicating whether or not to generate an interrupt when a watch point is accessed. When performing the debugging process based on the watchpoint, the watch mode signal WPE in the set state is latched. The NAND circuit 1x4 is
Watch bit 22jW and watch mode signal WPE
When both are set, the interrupt signal INTREQ1 as a watchpoint is given to the processor 1x1.

【0024】共有メモリモジュール20には、デバッガ
(デバッギングプログラム)23も格納されている。プ
ロセッサ1x1は、ブレークポイントとしての割込み信
号INTREQ0を与えられた場合には、デバッガ23
のブレークポイントに対する処理部分を実行させ、ウォ
ッチポイントとしての割込み信号INTREQ1を与え
られた場合には、デバッガ23のウォッチポイントに対
する処理部分を実行させる。
The shared memory module 20 also stores a debugger (debugging program) 23. When the processor 1x1 is given the interrupt signal INTREQ0 as a breakpoint, the debugger 23
Of the debugger 23 is executed, and when the interrupt signal INTREQ1 as the watchpoint is given, the processing part of the debugger 23 for the watchpoint is executed.

【0025】なお、デバッガ23には、ブレークビット
やウォッチビットのセットやリセットをいずれかの又は
所定のプロセッサに実行させるビット操作処理部分や、
ブレークモード信号BPEやウォッチモード信号WPE
のセットやリセットをいずれかの又は所定のプロセッサ
に実行させるモード操作処理部分が設けられている。す
なわち、いずれかの又は所定のプロセッサは、デバッガ
23のビット操作処理部分に基づいて、「命令メモリセ
ルのブレークビットをセット(リセット)せよ」又は
「データメモリセルのウォッチビットをセット(リセッ
ト)せよ」というデータ操作指示を共有メモリモジュー
ル20のメモリ制御回路(図示せず)に与えてセット
(リセット)させる。
The debugger 23 includes a bit operation processing portion that causes any or a predetermined processor to set or reset the break bit and the watch bit, and
Break mode signal BPE and watch mode signal WPE
A mode operation processing portion is provided for causing any or a predetermined processor to set or reset the above. That is, any or a predetermined processor "sets (resets) the break bit of the instruction memory cell" or "sets (resets) the watch bit of the data memory cell based on the bit manipulation processing portion of the debugger 23. The data operation instruction “” is given to the memory control circuit (not shown) of the shared memory module 20 to set (reset).

【0026】以上の構成において、オペレータはまず、
図示しない入出力装置を用いながらデバッガ23を利用
して、デバッギング対象のプログラムに係る所定の命令
や所定のデータに対するブレークビットやウォッチビッ
トの設定を行なう。その後、オペレータは、図示しない
入出力装置を用いながらデバッガ23を利用して、ブレ
ークモード信号BPEやウォッチモード信号WPEをセ
ットさせる。そして、デバッギング対象のプログラムを
起動させる。
In the above construction, the operator first
The debugger 23 is used while using an input / output device (not shown) to set break bits and watch bits for predetermined instructions and predetermined data relating to the program to be debugged. After that, the operator sets the break mode signal BPE and the watch mode signal WPE using the debugger 23 while using an input / output device (not shown). Then, the program to be debugged is activated.

【0027】ここで、あるプロセッサ1x1が命令をフ
ェッチすべく命令メモリ21をアクセスするための命令
アドレスを共有メモリモジュール20に与えたとする。
この場合、図1(A)に示すように、そのアドレスの命
令メモリセルに格納されている命令はそのプロセッサに
与えられると共に、その命令メモリセルに格納されてい
るブレークビット21iBはナンド回路1x2に与えら
れる。
Here, it is assumed that a processor 1x1 gives an instruction address for accessing the instruction memory 21 to fetch an instruction to the shared memory module 20.
In this case, as shown in FIG. 1A, the instruction stored in the instruction memory cell at that address is given to the processor, and the break bit 21iB stored in the instruction memory cell is transferred to the NAND circuit 1x2. Given.

【0028】ブレークビット21iBがセットされてい
ない場合には、ナンド回路1x2からプロセッサ1x1
に対して割込み要求信号INTREQ0が出力されず、
プロセッサ1x1はその命令を中断することなく実行す
る。
When the break bit 21iB is not set, the NAND circuit 1x2 to the processor 1x1.
Interrupt request signal INTREQ0 is not output to
Processor 1x1 executes the instruction without interruption.

【0029】他方、ブレークビット21iBがセットさ
れている場合には、ブレークモード信号BPEがセット
されているので、ナンド回路1x2からプロセッサ1x
1に対して割込み要求信号INTREQ0が出力され、
プロセッサ1x1はその命令を実行する前に、デバッガ
23に割込みを掛けてブレークポイントを検出したとき
の処理を実行させる。
On the other hand, when the break bit 21iB is set, the break mode signal BPE is set, so the NAND circuit 1x2 to the processor 1x.
The interrupt request signal INTREQ0 is output for 1
Before executing the instruction, the processor 1x1 interrupts the debugger 23 to execute the processing when the breakpoint is detected.

【0030】また、あるプロセッサ1x1がデータメモ
リ22をアクセスするためのデータアドレスとメモリ操
作指示(ライト又はリード)とを共有メモリモジュール
20に与えたとする。この場合、図1(B)に示すよう
に、そのアドレスのデータメモリセルに格納されている
データが読み出され、又は、そのアドレスのデータメモ
リセルにデータが書き込まれると共に、そのデータメモ
リセルに格納されているウォッチビット22jWはナン
ド回路1x4に与えられる。
It is also assumed that a processor 1x1 gives a data address for accessing the data memory 22 and a memory operation instruction (write or read) to the shared memory module 20. In this case, as shown in FIG. 1B, the data stored in the data memory cell at the address is read out, or the data is written in the data memory cell at the address, and the data memory cell is also written in the data memory cell. The stored watch bit 22jW is given to the NAND circuit 1x4.

【0031】ウォッチビット22jWがセットされてい
ない場合には、ナンド回路1x4からプロセッサ1x1
に対して割込み要求信号INTREQ1が出力されず、
プロセッサ1x1は中断することなく継続してデバッギ
ング対象のプログラムに従う処理を実行する。
If the watch bit 22jW is not set, the NAND circuit 1x4 to the processor 1x1.
Interrupt request signal INTREQ1 is not output to
The processor 1x1 continuously executes processing according to the program to be debugged without interruption.

【0032】他方、ウォッチビット22jWがセットさ
れている場合には、ウォッチモード信号WPEがセット
されているので、ナンド回路1x4からそのプロセッサ
1x1に対して割込み要求信号INTREQ1が出力さ
れ、プロセッサ1x1は、デバッガ23に割込みを掛け
てウォッチポイントを検出したときの処理を実行させ
る。
On the other hand, when the watch bit 22jW is set, the watch mode signal WPE is set, and therefore the NAND circuit 1x4 outputs the interrupt request signal INTREQ1 to the processor 1x1. The debugger 23 is interrupted to execute the processing when the watchpoint is detected.

【0033】従って、上述の実施例によれば、タグアー
キテクチャを採用し、タグの中にブレークポイント及び
ウォッチポイントを指示するブレークビット及びウォッ
チビットを設けるようにしたので、複数のブレークポイ
ントやウォッチポイントの指定が容易に実行でき、ま
た、ブレークポイントやウォッチポイントを監視するハ
ードウェアもブレークポイントやウォッチポイント毎に
設ける必要がなく小さいものとすることができる。
Therefore, according to the above-described embodiment, since the tag architecture is adopted and the break bit and the watch bit for designating the break point and the watch point are provided in the tag, a plurality of break points and watch points are provided. Can be specified easily, and the hardware for monitoring the breakpoints and watchpoints need not be provided for each breakpoint or watchpoint, and can be made small.

【0034】さらに、ソフトウェアによる監視を実行し
ていないので監視動作のために時間が割かれることがな
く、また、デバッグ処理用にはブレークビットやウォッ
チビットをセットしないようにすることでデバッギング
時における更なるデバッギングの監視を防止でき、デバ
ッグ状態と非デバッグ状態での処理速度を同程度とする
ことができ、効率の良いデバッギングシステムを実現す
ることができる。
Further, since the monitoring by software is not executed, no time is spent for the monitoring operation, and by not setting the break bit or the watch bit for the debug processing, it is possible to avoid the time during debugging. Further monitoring of debugging can be prevented, the processing speeds in the debug state and the non-debug state can be made approximately the same, and an efficient debugging system can be realized.

【0035】また、各ポイントの設定をレジスタを用い
ずに行なうようにしたので、各ポイントを監視するハー
ドウェア構成を上述したようにプロセッサの外部に設け
易く、複数のプロセッサを同一チップ上に形成させ易く
なる。実際上、並列プロセッサシステムを構成する複数
のプロセッサを同一チップに搭載することが考えられて
おり、上記実施例の場合、デバッギングを支援する構成
がこのような同一チップ化の制約にならない。
Further, since each point is set without using a register, the hardware configuration for monitoring each point is easily provided outside the processor as described above, and a plurality of processors are formed on the same chip. It becomes easier to do. In practice, it is considered to mount a plurality of processors forming a parallel processor system on the same chip, and in the case of the above-described embodiment, the configuration that supports debugging does not impose such a limitation on the same chip.

【0036】因に、タグアーキテクチャを採用すること
なく同様なフラグ(ブレークビット、ウォッチビット)
をメモリに格納させて同様な処理を実行させることも考
えられるが、ハードウェア構成が複雑になり、又は、ソ
フトウェア処理に多大な時間がかかり、上記実施例のよ
うな効果を得ることができない。
Incidentally, similar flags (break bit, watch bit) are adopted without adopting the tag architecture.
May be stored in the memory to execute the same processing, but the hardware configuration becomes complicated, or the software processing takes a lot of time, and the effects of the above-described embodiment cannot be obtained.

【0037】なお、上述の実施例においては、各ポイン
トを監視するハードウェアをプロセッサモジュール1x
側に設けたものを示したが、共有メモリモジュール20
側に設けるようにしても良い。また、各プロセッサに対
応して監視ハードウェア構成を1対1で設けるのではな
く、監視ハードウェア構成を共通的に設け、その出力を
セレクタを介して各プロセッサに与えるようにしても良
い。
In the above embodiment, the hardware for monitoring each point is the processor module 1x.
Although the one provided on the side is shown, the shared memory module 20
It may be provided on the side. Further, instead of providing the monitoring hardware configuration for each processor in a one-to-one correspondence, the monitoring hardware configuration may be provided in common and its output may be given to each processor via the selector.

【0038】また、上述の実施例においては、ブレーク
ポイントでのデバッギング処理及びウォッチポイントで
のデバッギング処理を行なうデバッギングシステムを支
援するものを示したが、いずれか一方のポイントでのデ
バッギング処理を行なうデバッギングシステムを支援す
ることもできる。
Further, in the above-mentioned embodiment, the one which supports the debugging system which performs the debugging processing at the break point and the debugging processing at the watch point is shown, but the debugging system which performs the debugging processing at any one of the points is shown. It can also assist the system.

【0039】さらに、上述の実施例においては、各ポイ
ントに対するビットのセット又はリセットをデバッガ2
3を用いて行なうものを示したが、OSを利用して行な
うものであっても良い。
Furthermore, in the above embodiment, the debugger 2 sets or resets the bit for each point.
Although the operation performed by using OS 3 is shown, it may be executed by using the OS.

【0040】さらにまた、本発明の適用システムは、並
列プロセッサシステムに限定されるものではなく、プロ
セッサが1個だけのシステムにも適用することができ
る。
Furthermore, the application system of the present invention is not limited to the parallel processor system, but can be applied to a system having only one processor.

【0041】[0041]

【発明の効果】以上のように、本発明によれば、タグア
ーキテクチャを採用し、メモリセルのタグ中に命令実行
を中断させる命令実行中断ビット及び又はデータメモリ
のアクセス時に処理を中断させるメモリ操作中断ビット
を用意し、命令実行中断ビット又はメモリ操作中断ビッ
トがセットされているメモリセルをアクセスしたプロセ
ッサに、デバッギング処理を起動させる割込みを掛ける
割込み駆動手段を設けたので、デバッグに影響を与える
ことなくデバッギングでの監視ポイントを複数設定する
ことができる、しかも、ハードウェア構成が小さい、デ
バッグ状態と非デバッグ状態との処理速度面での性能差
を小さくできるデバッグ支援装置を実現できる。
As described above, according to the present invention, the tag architecture is adopted and the instruction execution interruption bit for interrupting the instruction execution during the tag of the memory cell and / or the memory operation for interrupting the processing when accessing the data memory. Since the interrupt bit is prepared and the processor that accessed the memory cell in which the instruction execution interrupt bit or the memory operation interrupt bit is set is provided with the interrupt driving means for applying the interrupt for starting the debugging process, it may affect the debugging. Thus, it is possible to realize a debug support device capable of setting a plurality of monitoring points for debugging, and having a small hardware configuration and capable of reducing a difference in performance in processing speed between a debug state and a non-debug state.

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

【図1】実施例の要部構成を示すブロック図である。FIG. 1 is a block diagram showing a main configuration of an embodiment.

【図2】実施例が適用される並列プロセッサシステムを
示すブロック図である。
FIG. 2 is a block diagram showing a parallel processor system to which an embodiment is applied.

【図3】実施例のメモリセル構成を示す説明図である。FIG. 3 is an explanatory diagram showing a memory cell configuration of an example.

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

1…並列プロセッサシステム、11〜1n(1x)…プ
ロセッサモジュール、1x1…プロセッサ、1x2、1
x4…ナンド回路、1x3、1x5…ラッチ回路、20
…共有メモリモジュール、21…命令メモリ、21iB
…ブレークビット、22…データメモリ、22jW…ウ
ォッチビット、23…デバッガ。
1 ... Parallel processor system, 11-1n (1x) ... Processor module, 1x1, ... Processor, 1x2, 1
x4 ... NAND circuit, 1x3, 1x5 ... Latch circuit, 20
... shared memory module, 21 ... instruction memory, 21iB
... break bit, 22 ... data memory, 22jW ... watch bit, 23 ... debugger.

───────────────────────────────────────────────────── フロントページの続き (72)発明者 山本 明 東京都港区虎ノ門1丁目7番12号 沖電気 工業株式会社内 ─────────────────────────────────────────────────── ─── Continuation of the front page (72) Inventor Akira Yamamoto 1-7-12 Toranomon, Minato-ku, Tokyo Oki Electric Industry Co., Ltd.

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 タグアーキテクチャを採用するプロセッ
サを少なくとも1台以上有するプロセッサシステムにお
いて、 メモリセルのタグ中に命令実行を中断させる命令実行中
断ビットを用意し、 この命令実行中断ビットがセットされているメモリセル
をアクセスしたプロセッサに、デバッギング処理を起動
させる割込みを掛ける割込み駆動手段を設けたことを特
徴とするデバッグ支援装置。
1. A processor system having at least one processor adopting a tag architecture, wherein an instruction execution interrupt bit for interrupting instruction execution is prepared in a tag of a memory cell, and the instruction execution interrupt bit is set. A debug support device comprising an interrupt driving means for applying an interrupt for starting a debugging process to a processor that has accessed a memory cell.
【請求項2】 タグアーキテクチャを採用するプロセッ
サを少なくとも1台以上有するプロセッサシステムにお
いて、 メモリセルのタグ中に、データメモリのアクセス時に処
理を中断させるメモリ操作中断ビットを用意し、 このメモリ操作中断ビットのセットされているメモリセ
ルをアクセスしたプロセッサに、デバッギング処理を起
動させる割込みを掛ける割込み駆動手段を設けたことを
特徴とするデバッグ支援装置。
2. A processor system having at least one processor adopting a tag architecture, wherein a memory operation interrupt bit for interrupting processing when accessing a data memory is prepared in a tag of a memory cell, and the memory operation interrupt bit is provided. The debug support apparatus is provided with an interrupt driving means for applying an interrupt for starting a debugging process to a processor that has accessed the memory cell set in the above.
JP3266853A 1991-09-19 1991-09-19 Debugging support device Pending JPH0581068A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3266853A JPH0581068A (en) 1991-09-19 1991-09-19 Debugging support device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3266853A JPH0581068A (en) 1991-09-19 1991-09-19 Debugging support device

Publications (1)

Publication Number Publication Date
JPH0581068A true JPH0581068A (en) 1993-04-02

Family

ID=17436576

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3266853A Pending JPH0581068A (en) 1991-09-19 1991-09-19 Debugging support device

Country Status (1)

Country Link
JP (1) JPH0581068A (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60230246A (en) * 1984-04-28 1985-11-15 Toshiba Corp Data processor
JPH02110636A (en) * 1988-10-20 1990-04-23 Fujitsu Ltd Debugging device for tag architecture machine and its compiler

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60230246A (en) * 1984-04-28 1985-11-15 Toshiba Corp Data processor
JPH02110636A (en) * 1988-10-20 1990-04-23 Fujitsu Ltd Debugging device for tag architecture machine and its compiler

Similar Documents

Publication Publication Date Title
JP2765411B2 (en) Virtual computer system
JP5905911B2 (en) Diagnostic code using single-step execution
KR920003044B1 (en) Control system for guest execution of virtual computer system
EP0638864B1 (en) Development support system for microcomputer with internal cache
US6347368B1 (en) Microcomputing device for exchanging data while executing an application
JPH0581068A (en) Debugging support device
JPH0581070A (en) Programmable controller and user program execution method in programmable controller
JP2653412B2 (en) How to set breakpoints
JP2705121B2 (en) Electronic computer system
JP2653411B2 (en) How to set breakpoints
JPH0581087A (en) Processor monitoring system
JPS6042968B2 (en) information processing equipment
JP2590154B2 (en) Program debug support device for parallel processor
JP2786215B2 (en) Restart processing control method
JPS59202546A (en) Debugging device
JPS6270947A (en) Control system for debug interruption
JPS59202550A (en) Debugging device
JPH0795288B2 (en) Microcomputer
JP2654105B2 (en) Microprocessor
JPH05204710A (en) Event tracer
JPH0772874B2 (en) Interrupt receiving device
JPH02120940A (en) Debugging supporting circuit
JPS6286442A (en) Data processor
JPS6382525A (en) Microprocessor with tracing function
KR20000045665A (en) Interrupt generation circuit