JPH1115691A - Processor and debug equipment - Google Patents
Processor and debug equipmentInfo
- Publication number
- JPH1115691A JPH1115691A JP9171401A JP17140197A JPH1115691A JP H1115691 A JPH1115691 A JP H1115691A JP 9171401 A JP9171401 A JP 9171401A JP 17140197 A JP17140197 A JP 17140197A JP H1115691 A JPH1115691 A JP H1115691A
- Authority
- JP
- Japan
- Prior art keywords
- bus
- program
- operand
- internal
- address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】
【課題】 本発明は、キャッシュヒット中もプログラム
の実行アドレスのトレースなどの動作の追跡が可能なプ
ロセッサを提供すること、および、キャッシュメモリの
動作を停止させることなくプログラムのデバッグを可能
とするデバッグ装置を提供することを目的とする。
【解決手段】 バッファ10、13によりキャッシュの
アクセスアドレスはキャッシュ7、8のヒット・ミスに
かかわらず常に出力する。また、キャッシュ7、8のヒ
ット時はバッファ11、14によりキャッシュの読出し
データを出力する。これにより、デバッグ装置20はキ
ャッシュ7、8のヒット・ミスにかかわらず常にプロセ
ッサ1の中央処理装置2の動作を追跡できる。
(57) [Problem] To provide a processor capable of tracing an operation such as tracing of an execution address of a program even during a cache hit, and to provide a processor without stopping the operation of a cache memory. An object of the present invention is to provide a debugging device that enables debugging. SOLUTION: An access address of a cache is always output by buffers 10 and 13 irrespective of a hit / miss of a cache 7 or 8. When the caches 7 and 8 hit, the buffers 11 and 14 output the data read from the caches. As a result, the debug device 20 can always track the operation of the central processing unit 2 of the processor 1 irrespective of the hit / miss of the caches 7 and 8.
Description
【0001】[0001]
【発明の属する技術分野】本発明は、キャッシュメモリ
を搭載するプロセッサ、および該プロセッサに適用され
るプログラムのデバッグを行うデバッグ装置に関する。[0001] 1. Field of the Invention [0002] The present invention relates to a processor having a cache memory, and a debugging device for debugging a program applied to the processor.
【0002】[0002]
【従来の技術】近年の電子技術の発展により、マイクロ
プロセッサをはじめ情報処理装置が普及し、あらゆる分
野で用いられている。特にプロセッサの動作速度の向上
は著しい。しかしながらDRAMを初めとする半導体メモリ
は、集積度は格段に増大していながらも、その速度が追
随しないためにプロセッサの性能が十分に発揮されない
局面がある。これを打開するために、小容量であっても
高速なキャッシュメモリをプロセッサに搭載することが
周知である。2. Description of the Related Art With the recent development of electronic technology, microprocessors and other information processing apparatuses have become widespread and used in various fields. Particularly, the operation speed of the processor has been remarkably improved. However, although the degree of integration of DRAMs and other semiconductor memories has increased remarkably, there is a situation where the performance of the processor is not sufficiently exhibited because the speed does not follow. In order to overcome this, it is well known that a high-speed cache memory having a small capacity is mounted on a processor.
【0003】キャッシュメモリを搭載する従来のプロセ
ッサは、キャッシュメモリにプログラムやオペランドデ
ータのコピーを持たない場合、即ちキャッシュミスヒッ
トの場合は外部に対してアドレスを出力して所望のプロ
グラムまたはオペランドデータをアクセスするが、一旦
コピーをキャッシュメモリに持つと、即ちキャッシュヒ
ットの場合は、プロセッサはキャッシュメモリに対して
アクセスしているアドレスなどの情報を出力せず、プロ
セッサで閉じた動作を行っている。A conventional processor equipped with a cache memory outputs an address to the outside and outputs a desired program or operand data when the cache memory does not have a copy of a program or operand data, that is, in the case of a cache mishit. Access is made, but once a copy is stored in the cache memory, that is, in the case of a cache hit, the processor does not output information such as the address accessing the cache memory, and performs an operation closed by the processor.
【0004】従って上記のプロセッサに対応する従来の
デバッグ装置は、キャッシュメモリにプログラムやオペ
ランドデータのコピーを持たないようにキャッシュメモ
リの動作を停止させてプログラムのデバッグを行う。Therefore, the conventional debugging device corresponding to the above processor stops the operation of the cache memory so as not to have a copy of the program or the operand data in the cache memory and debugs the program.
【0005】[0005]
【発明が解決しようとする課題】しかしながら上記のプ
ロセッサでは、キャッシュメモリに対してアクセスして
いるアドレスなどの情報が出力されないため、キャッシ
ュヒット中は、プログラムのアドレスのトレースや命令
の検証、あるいはオペランドのアドレスやデータの監視
といったプロセッサの動作の追跡ができないという問題
点がある。However, in the above-described processor, information such as the address accessing the cache memory is not output. Therefore, during a cache hit, tracing of a program address, verification of an instruction, or operand However, there is a problem that the operation of the processor such as monitoring of addresses and data cannot be tracked.
【0006】また上記のデバッグ装置では、キャッシュ
メモリの動作を停止させてプログラムのデバッグを行う
ため、実際にキャッシュメモリを動作させた場合と同一
のプロセッサ実行状態でのデバッグができないといった
問題点や、キャッシュメモリを動作させた場合の実行時
間の測定やキャッシュヒット率などのキャッシュメモリ
の評価ができないという問題点がある。Further, in the above-mentioned debugging apparatus, since the operation of the cache memory is stopped to debug the program, there is a problem that debugging cannot be performed in the same processor execution state as when the cache memory is actually operated. There is a problem that it is impossible to measure the execution time when the cache memory is operated and to evaluate the cache memory such as the cache hit rate.
【0007】本発明はかかる課題に鑑み、キャッシュヒ
ット中もプログラムの実行アドレスのトレースなどの動
作の追跡が可能なプロセッサを提供すること、および、
キャッシュメモリの動作を停止させることなくプログラ
ムのデバッグを可能とするデバッグ装置を提供すること
を目的とする。In view of the foregoing, the present invention provides a processor capable of tracing an operation such as tracing the execution address of a program even during a cache hit, and
It is an object of the present invention to provide a debugging device that enables a program to be debugged without stopping the operation of the cache memory.
【0008】[0008]
【課題を解決するための手段】この課題を解決するため
の本発明のプロセッサは、プログラムに従ってオペラン
ドの処理を行う中央処理装置と、前記プログラムまたは
前記オペランドを格納するキャッシュメモリと、前記キ
ャッシュメモリに格納されたプログラムまたはオペラン
ドが読出される場合に、読出しを行うアドレスおよび読
出された内容の少なくとも一方を外部に出力するバス制
御装置とを備えている。A processor according to the present invention for solving this problem comprises a central processing unit for processing operands according to a program, a cache memory for storing the program or the operand, and a cache memory for storing the program or the operand. When a stored program or operand is read, a bus control device is provided for outputting at least one of an address to be read and read contents to the outside.
【0009】また本発明のプロセッサは、プログラムを
転送する内部プログラムバスと、オペランドを転送する
内部オペランドバスとを有し、前記プログラムに従って
前記オペランドの処理を行う中央処理装置と、前記内部
プログラムバスに接続され、前記プログラムを格納する
命令キャッシュメモリと、前記内部オペランドバスに接
続され、前記オペランドを格納するデータキャッシュメ
モリと、前記命令キャッシュメモリに格納されたプログ
ラムが読出される場合に、前記内部プログラムバス上の
内容を外部に出力し、前記データキャッシュメモリに格
納されたオペランドが読出される場合に、前記内部オペ
ランドバス上の内容を外部に出力するバス制御装置とを
備えている。A processor according to the present invention has an internal program bus for transferring a program, an internal operand bus for transferring an operand, a central processing unit for processing the operand in accordance with the program, and An instruction cache memory that is connected to store the program, a data cache memory that is connected to the internal operand bus, and stores the operand, and an internal program that is used when the program stored in the instruction cache memory is read. A bus control device for outputting the content on the bus to the outside and outputting the content on the internal operand bus to the outside when the operand stored in the data cache memory is read.
【0010】また本発明のプロセッサは、プログラムを
転送する内部プログラムバスと、オペランドを転送する
内部オペランドバスとを有し、前記プログラムに従って
前記オペランドの処理を行う中央処理装置と、前記内部
プログラムバスに接続され、前記プログラムを格納する
命令キャッシュメモリと、前記命令キャッシュメモリに
格納されたプログラムが読出されたとき、前記内部プロ
グラムバス上の内容を一時的に蓄積する一時記憶手段
と、前記内部オペランドバスにオペランドが転送されて
いるときは、前記内部オペランドバス上の内容のみを外
部に出力し、前記内部オペランドバスにオペランドが転
送されていないときに、前記一時記憶手段に蓄積された
内容を外部に出力するバス制御装置とを備えている。A processor according to the present invention has an internal program bus for transferring a program, an internal operand bus for transferring an operand, and a central processing unit for processing the operand in accordance with the program. An instruction cache memory connected to store the program, temporary storage means for temporarily storing contents on the internal program bus when a program stored in the instruction cache memory is read, and an internal operand bus When the operand is transferred to the internal operand bus, only the content on the internal operand bus is output to the outside, and when the operand is not transferred to the internal operand bus, the content stored in the temporary storage means is output to the outside. And a bus control device for outputting.
【0011】また本発明のプロセッサは、プログラムを
転送する内部プログラムバスと、オペランドを転送する
内部オペランドバスとを有し、前記プログラムに従って
前記オペランドの処理を行う中央処理装置と、前記内部
オペランドバスに接続され、前記オペランドを格納する
データキャッシュメモリと、前記データキャッシュメモ
リに格納されたプログラムが読出されたとき、前記内部
オペランドバス上の内容を一時的に蓄積する一時記憶手
段と、前記内部プログラムバスにプログラムが転送され
ているときは、前記内部プログラムバス上の内容のみを
外部に出力し、前記内部プログラムバスにプログラムが
転送されていないときに、前記一時記憶手段に蓄積され
た内容を外部に出力するバス制御装置とを備えている。A processor according to the present invention has an internal program bus for transferring a program, an internal operand bus for transferring an operand, and a central processing unit for processing the operand in accordance with the program. A data cache memory connected to store the operand, temporary storage means for temporarily storing contents on the internal operand bus when a program stored in the data cache memory is read, and the internal program bus When the program is transferred to the internal program bus, only the content on the internal program bus is output to the outside, and when the program is not transferred to the internal program bus, the content stored in the temporary storage unit is output to the outside. And a bus control device for outputting.
【0012】さらに上記の課題を解決するための本発明
のデバッグ装置は、プログラムに従ってオペランドの処
理を行う中央処理装置と、前記プログラムまたは前記オ
ペランドを格納するキャッシュメモリと、前記キャッシ
ュメモリに格納されたプログラムまたはオペランドが読
出される場合に、読出しを行うアドレスおよび読出され
た内容の少なくとも一方をバスに出力し、前記キャッシ
ュメモリに格納されていないプログラムまたはオペラン
ドが読出される場合に、読出しを行うアドレスを前記バ
スに出力するバス制御装置とを有するプロセッサと、前
記バスに接続され、前記プロセッサにプログラムまたは
オペランドを供給するエミュレーションメモリと、前記
バスに接続され、前記バス上の内容に基づいて前記プロ
セッサにおける前記中央処理装置の動作を追跡するモニ
タ装置とを備えている。Further, according to the present invention, there is provided a debugging apparatus, comprising: a central processing unit for processing an operand in accordance with a program; a cache memory for storing the program or the operand; When a program or operand is read, at least one of an address to be read and read content is output to a bus, and when a program or operand that is not stored in the cache memory is read, an address to be read A bus control device that outputs a signal to the bus, an emulation memory connected to the bus and supplying a program or operand to the processor, and a processor connected to the bus and based on contents on the bus. Before And a monitor device that tracks the operation of the central processing unit.
【0013】また本発明のプロセッサは、プログラムを
転送する内部プログラムバスと、オペランドを転送する
内部オペランドバスとを有し、前記プログラムに従って
前記オペランドの処理を行う中央処理装置と、前記内部
プログラムバスに接続され、前記プログラムを格納する
命令キャッシュメモリと、前記内部プログラムバスと前
記内部オペランドバスとに接続されるバス制御装置とを
備えるプロセッサであって、前記中央処理装置は、前記
キャッシュメモリに格納されていないプログラムの読出
しと、オペランドの読出しまたは書込みとが同時に発生
した場合に、前記プログラムの読出しを取りやめ、遅延
し、または保留するようにしたプロセッサである。A processor according to the present invention has an internal program bus for transferring a program, an internal operand bus for transferring an operand, a central processing unit for processing the operand in accordance with the program, and a processor connected to the internal program bus. A processor having an instruction cache memory connected to store the program and a bus control device connected to the internal program bus and the internal operand bus, wherein the central processing unit is stored in the cache memory. A processor that cancels, delays, or suspends the reading of the program when the reading of a program that has not been performed and the reading or writing of an operand occur simultaneously.
【0014】[0014]
【発明の実施の形態】以下、本発明の実施の形態につい
て、図1と図2とを用いて説明する。DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described below with reference to FIGS.
【0015】図1は、本発明の第一の実施の形態におけ
るプロセッサおよびデバッグ装置の構成を示すブロック
図である。FIG. 1 is a block diagram showing a configuration of a processor and a debugging device according to the first embodiment of the present invention.
【0016】図1において、プロセッサ1は、中央処理
装置2とデータキャッシュ7と命令キャッシュ8とバス
制御装置9とから構成され、出力のオペランドアドレス
バス16と入出力のオペランドデータバス17と出力の
プログラムアドレスバス18と入出力のプログラムデー
タバス19とを外界とのインタフェースとして備える。In FIG. 1, a processor 1 comprises a central processing unit 2, a data cache 7, an instruction cache 8, and a bus control unit 9, and outputs an operand address bus 16, an input / output operand data bus 17, and an output. A program address bus 18 and an input / output program data bus 19 are provided as interfaces with the outside world.
【0017】中央処理装置2は、出力の内部オペランド
アドレスバス3と入出力の内部オペランドデータバス4
と出力の内部プログラムアドレスバス5と入力の内部プ
ログラムデータバス6とをインタフェースとして備え、
内部プログラムアドレスバス5と内部プログラムデータ
バス6とを介して入力されたプログラムに従ってオペラ
ンドの処理を行う。処理を施す前のオペランドまたは処
理を施した後のオペランドは、内部オペランドアドレス
バス3と内部オペランドデータバス4とを介して入出力
される。The central processing unit 2 includes an output internal operand address bus 3 and an input / output internal operand data bus 4.
And an internal program address bus 5 for output and an internal program data bus 6 for input as interfaces.
The operands are processed according to the program input via the internal program address bus 5 and the internal program data bus 6. The operand before the processing or the operand after the processing is input / output via the internal operand address bus 3 and the internal operand data bus 4.
【0018】データキャッシュ7は、内部オペランドア
ドレスバス3と内部オペランドデータバス4とに接続さ
れ、オペランドを格納する。The data cache 7 is connected to the internal operand address bus 3 and the internal operand data bus 4, and stores operands.
【0019】命令キャッシュ8は、内部プログラムアド
レスバス5と内部プログラムデータバス6とに接続さ
れ、プログラムを格納する。The instruction cache 8 is connected to the internal program address bus 5 and the internal program data bus 6, and stores a program.
【0020】バス制御装置9は、内部オペランドアドレ
スバス3の内容をオペランドアドレスバス16に出力す
るバッファ10と、内部オペランドデータバス4の内容
をオペランドデータバス17に出力するバッファ11
と、オペランドデータバス17の内容を内部オペランド
データバス4に出力するバッファ12と、内部プログラ
ムアドレスバス5の内容をプログラムアドレスバス18
に出力するバッファ13と、内部プログラムデータバス
6の内容をプログラムデータバス19に出力するバッフ
ァ14と、プログラムデータバス19の内容を内部プロ
グラムデータバス6に出力するバッファ15と、図示し
ないバス制御回路とを含む。バッファ10とバッファ1
3とは常に動作するが、バッファ11はデータキャッシ
ュ7のライト時またはリードヒット時に動作し、バッフ
ァ12はデータキャッシュ7のリードミスヒット時に動
作し、バッファ14は命令キャッシュ8のヒット時に動
作し、バッファ15は命令キャッシュ8のミスヒット時
に動作するようにそれぞれバス制御回路によって制御さ
れる。なお、命令キャッシュ8へのライトは起こらない
ものとする。The bus controller 9 includes a buffer 10 for outputting the contents of the internal operand address bus 3 to the operand address bus 16 and a buffer 11 for outputting the contents of the internal operand data bus 4 to the operand data bus 17.
Buffer 12 for outputting the contents of operand data bus 17 to internal operand data bus 4, and the contents of internal program address bus 5 to program address bus 18
A buffer 13 for outputting the contents of the internal program data bus 6 to the program data bus 19, a buffer 15 for outputting the contents of the program data bus 19 to the internal program data bus 6, and a bus control circuit (not shown). And Buffer 10 and Buffer 1
3 always operates, but the buffer 11 operates at the time of a write or read hit of the data cache 7, the buffer 12 operates at the time of a read miss hit of the data cache 7, the buffer 14 operates at the time of a hit of the instruction cache 8, Numerals 15 are controlled by the bus control circuit so as to operate when the instruction cache 8 has a miss hit. It is assumed that writing to the instruction cache 8 does not occur.
【0021】また図1において、デバッグ装置20は、
プロセッサ1とデータエミュレーションメモリ21とプ
ログラムエミュレーションメモリ22とモニタ装置23
とから構成される。In FIG. 1, the debugging device 20 comprises:
Processor 1, data emulation memory 21, program emulation memory 22, and monitor device 23
It is composed of
【0022】データエミュレーションメモリ21は、オ
ペランドアドレスバス16とオペランドデータバス17
とに接続され、データキャッシュ7のライト時はオペラ
ンドデータバス17からライトデータを入力して書込
み、データキャッシュ7のリードミスヒット時はオペラ
ンドデータバス17にリードデータを出力する。データ
キャッシュ7のリードヒット時には何も動作しない。The data emulation memory 21 includes an operand address bus 16 and an operand data bus 17
When the data cache 7 is written, write data is input from the operand data bus 17 for writing, and when the data cache 7 has a read miss, the read data is output to the operand data bus 17. No operation is performed during a read hit of the data cache 7.
【0023】プログラムエミュレーションメモリ22
は、プログラムアドレスバス18とプログラムデータバ
ス19とに接続され、命令キャッシュ8のミスヒット時
はプログラムデータバス19にデータを出力する。命令
キャッシュ8のヒット時には何も動作しない。なおプロ
グラムエミュレーションメモリ22には、図示しない例
えばホストコンピュータからの転送など方法により、デ
ータとしてデバッグされるプログラムが格納される。Program emulation memory 22
Are connected to a program address bus 18 and a program data bus 19, and output data to the program data bus 19 when the instruction cache 8 misses. No operation is performed when the instruction cache 8 hits. The program emulation memory 22 stores a program to be debugged as data by a method (not shown) such as transfer from a host computer.
【0024】モニタ装置23は、オペランドアドレスバ
ス16とオペランドデータバス17とプログラムアドレ
スバス18とプログラムデータバス19とを入力し、中
央処理装置2の動作の追跡を行う。動作の追跡とは、オ
ペランドアドレスバス16上のアドレスに基づく、オペ
ランドアドレスのトレース、オペランドアドレスブレー
クポイント処理、オペランドカバレッジの測定、データ
キャッシュ7のヒット率の測定や、オペランドデータバ
ス17上のデータに基づく、オペランドの内容によるブ
レークポイント処理などの検証や、プログラムアドレス
バス18上のアドレスに基づくプログラムアドレスのト
レース、プログラムアドレスブレークポイント処理、プ
ログラムカバレッジの測定、命令キャッシュ8のヒット
率の測定や、プログラムデータバス19上のデータに基
づく命令の内容によるブレークポイント処理などの検証
を含む。The monitor device 23 inputs the operand address bus 16, the operand data bus 17, the program address bus 18 and the program data bus 19, and tracks the operation of the central processing unit 2. The tracing of the operations includes tracing the operand addresses, measuring the operand address breakpoints, measuring the operand coverage, measuring the hit ratio of the data cache 7 based on the addresses on the operand address bus 16, and measuring the data on the operand data bus 17. Verification of breakpoint processing based on the contents of operands, tracing of program addresses based on addresses on the program address bus 18, program address breakpoint processing, measurement of program coverage, measurement of the hit rate of the instruction cache 8, Verification such as breakpoint processing based on the contents of an instruction based on data on the data bus 19 is included.
【0025】以上のように構成された本発明の第一の実
施の形態によるプロセッサおよびデバッグ装置につい
て、その動作を説明する。The operation of the thus configured processor and debug device according to the first embodiment of the present invention will be described.
【0026】プログラムとオペランドとは全く独立に動
作を把握することができるため、それぞれについてキャ
ッシュのヒット、ミスヒットに分けて説明する。Since the operation of the program and the operand can be grasped completely independently, the description will be made separately for each of the cache hit and the mishit.
【0027】(1)プログラムに関する中央処理装置2
の動作の把握 イ.命令キャッシュ8のヒットの場合 プロセッサ1においては、中央処理装置2がアドレスを
内部プログラムアドレスバス5とバッファ13を経由し
てプログラムアドレスバス18とに出力し、命令キャッ
シュ8が内部プログラムアドレスバス5上のアドレスを
もとにプログラムを読出して内部プログラムデータバス
6を経由して中央処理装置2に入力するとともにバッフ
ァ14を経由してプログラムデータバス19に出力す
る。(1) Central processing unit 2 for programs
Understanding the operation of i. In the case of a hit in the instruction cache 8, in the processor 1, the central processing unit 2 outputs an address to the program address bus 18 via the internal program address bus 5 and the buffer 13, and the instruction cache 8 , The program is read out based on the address, input to the central processing unit 2 via the internal program data bus 6, and output to the program data bus 19 via the buffer 14.
【0028】デバッグ装置20においては、モニタ装置
23が、プログラムアドレスバス18から中央処理装置
2が出力するプログラムアドレスと、プログラムデータ
バス19から命令キャッシュ8が出力するプログラムと
を入力する。In the debug device 20, the monitor device 23 inputs the program address output from the central processing unit 2 from the program address bus 18 and the program output from the instruction cache 8 from the program data bus 19.
【0029】この場合、命令キャッシュ8にデータがあ
るにも関わらずプログラムアドレスバス18を介してプ
ログラムエミュレーションメモリ22にアドレスが出さ
れ、データの衝突が問題となるが、プロセッサが出力す
るバスの制御信号、例えばアドレスストローブ信号やチ
ップセレクト信号などを非活性とすることによりデータ
衝突を回避する。In this case, although data is present in the instruction cache 8, an address is output to the program emulation memory 22 via the program address bus 18 and data collision becomes a problem. Data collision is avoided by deactivating signals such as an address strobe signal and a chip select signal.
【0030】なお、これはデータキャッシュ7のヒット
時も同じである。 ロ.命令キャッシュ8のミスヒットの場合 プロセッサ1においては、中央処理装置2がアドレスを
内部プログラムアドレスバス5とバッファ13を経由し
てプログラムアドレスバス18とに出力し、バッファ1
5と内部プログラムデータバス6とを経由してプログラ
ムデータバス19からプログラムを中央処理装置2に入
力する。This is the same when the data cache 7 hits. B. In the case of a miss hit in the instruction cache 8, in the processor 1, the central processing unit 2 outputs an address to the program address bus 18 via the internal program address bus 5 and the buffer 13, and
The program is input to the central processing unit 2 from the program data bus 19 via the internal data bus 5 and the internal program data bus 6.
【0031】デバッグ装置20においては、プログラム
エミュレーションメモリ22がプログラムアドレスバス
18上のアドレスをもとにプログラムを読出してプログ
ラムデータバス19に出力し、モニタ装置23が、プロ
グラムアドレスバス18から中央処理装置2が出力する
プログラムアドレスと、プログラムデータバス19から
プログラムエミュレーションメモリ22が出力するプロ
グラムとを入力する。In the debug device 20, the program emulation memory 22 reads a program based on the address on the program address bus 18 and outputs the program to the program data bus 19, and the monitor device 23 transmits the program from the program address bus 18 to the central processing unit. 2 and the program output from the program emulation memory 22 from the program data bus 19 are input.
【0032】(2)オペランドに関する中央処理装置2
の動作の把握 ハ.データキャッシュ7のリードヒットの場合 プロセッサ1においては、中央処理装置2がアドレスを
内部オペランドアドレスバス3とバッファ10を経由し
てオペランドアドレスバス16とに出力し、データキャ
ッシュ7が内部オペランドアドレスバス3上のアドレス
をもとにオペランドを読出して内部オペランドデータバ
ス4を経由して中央処理装置2に入力するとともにバッ
ファ11を経由してオペランドデータバス17に出力す
る。(2) Central processing unit 2 for operands
Understanding the operation of c. In the case of a read hit of the data cache 7, in the processor 1, the central processing unit 2 outputs an address to the operand address bus 16 via the internal operand address bus 3 and the buffer 10, and the data cache 7 outputs the address to the internal operand address bus 3. Operands are read based on the above address, input to the central processing unit 2 via the internal operand data bus 4, and output to the operand data bus 17 via the buffer 11.
【0033】デバッグ装置20においては、モニタ装置
23が、オペランドアドレスバス16から中央処理装置
2が出力するオペランドアドレスと、オペランドデータ
バス17からデータキャッシュ7が出力するオペランド
とを入力する。In the debug device 20, the monitor device 23 inputs the operand address output from the central processing unit 2 from the operand address bus 16 and the operand output from the data cache 7 from the operand data bus 17.
【0034】ニ.データキャッシュ7のリードミスヒッ
トの場合 プロセッサ1においては、中央処理装置2がアドレスを
内部オペランドアドレスバス3とバッファ10を経由し
てオペランドアドレスバス16とに出力し、バッファ1
2と内部オペランドデータバス4とを経由してオペラン
ドデータバス17からオペランドを中央処理装置2に入
力する。D. In the case of a read mishit in the data cache 7, in the processor 1, the central processing unit 2 outputs an address to the operand address bus 16 via the internal operand address bus 3 and the buffer 10, and the buffer 1
The operand is input from the operand data bus 17 to the central processing unit 2 via the internal operand data bus 4 and the internal operand data bus 4.
【0035】デバッグ装置20においては、データエミ
ュレーションメモリ21がオペランドアドレスバス16
上のアドレスをもとにオペランドを読出してオペランド
データバス17に出力し、モニタ装置23が、オペラン
ドアドレスバス16から中央処理装置2が出力するオペ
ランドアドレスと、オペランドデータバス17からデー
タエミュレーションメモリ21が出力するオペランドと
を入力する。In the debug device 20, the data emulation memory 21 is connected to the operand address bus 16
Based on the above address, the operand is read and output to the operand data bus 17, and the monitor device 23 outputs the operand address output by the central processing unit 2 from the operand address bus 16 and the data emulation memory 21 from the operand data bus 17. Input the operand to be output.
【0036】ホ.データキャッシュ7のライトの場合 プロセッサ1においては、中央処理装置2がアドレスを
内部オペランドアドレスバス3とバッファ10を経由し
てオペランドアドレスバス16とに出力し、同じく中央
処理装置2がオペランドを内部オペランドデータバス4
とバッファ11を経由してオペランドデータバス17と
に出力し、データキャッシュ7が内部オペランドアドレ
スバス3上のアドレスをもとに内部オペランドデータバ
ス4上のオペランドを書込む。E. In the case of writing data in the data cache 7, in the processor 1, the central processing unit 2 outputs an address to the operand address bus 16 via the internal operand address bus 3 and the buffer 10, and the central processing unit 2 outputs the operand to the internal operand bus. Data bus 4
The data cache 7 writes the operand on the internal operand data bus 4 based on the address on the internal operand address bus 3.
【0037】デバッグ装置20においては、モニタ装置
23が、オペランドアドレスバス16から中央処理装置
2が出力するオペランドアドレスと、オペランドデータ
バス17から中央処理装置2が出力するオペランドとを
入力する。In the debug device 20, the monitor device 23 inputs the operand address output from the central processing unit 2 from the operand address bus 16 and the operand output from the central processing unit 2 from the operand data bus 17.
【0038】以上のように本発明の第一の実施の形態に
よれば、データキャッシュ7や命令キャッシュ8がヒッ
トしている時も、プロセッサ1はプログラムおよびオペ
ランドのアドレスやデータを外部に出力する。そのため
デバッグ装置20は、キャッシュメモリの動作を停止さ
せることなくプログラムのデバッグを可能にする。As described above, according to the first embodiment of the present invention, even when the data cache 7 or the instruction cache 8 is hit, the processor 1 outputs the address and data of the program and the operand to the outside. . Therefore, the debugging device 20 enables debugging of the program without stopping the operation of the cache memory.
【0039】図2は、本発明の第二の実施の形態におけ
るプロセッサおよびデバッグ装置の構成を示すブロック
図である。図2において図1と同一の構成要素について
は同じ符号を付す。FIG. 2 is a block diagram showing a configuration of a processor and a debugging device according to the second embodiment of the present invention. 2, the same components as those in FIG. 1 are denoted by the same reference numerals.
【0040】図2において、プロセッサ41は、中央処
理装置2とデータキャッシュ7と命令キャッシュ8とバ
ス制御装置42とから構成され、出力のアドレスバス5
3と入出力のデータバス54とを外界とのインタフェー
スとして備える。Referring to FIG. 2, a processor 41 comprises a central processing unit 2, a data cache 7, an instruction cache 8, and a bus control unit 42.
3 and an input / output data bus 54 as an interface with the outside world.
【0041】バス制御装置42は、内部プログラムアド
レスバス5の内容を蓄積するアドレスFIFOメモリ43
と、内部プログラムデータバス6の内容を蓄積するデー
タFIFOメモリ44とを備え、内部オペランドアドレスバ
ス3の内容をアドレスバス53に出力するバッファ45
と、内部プログラムアドレスバス5の内容をアドレスバ
ス53に出力するバッファ46と、アドレスFIFOメモリ
43の出力をアドレスバス53に出力するバッファ47
と、内部オペランドデータバス4の内容をデータバス5
4に出力するバッファ48と、データバス54の内容を
内部オペランドデータバス4に出力するバッファ49
と、内部プログラムデータバス6の内容をデータバス5
4に出力するバッファ50と、データバス54の内容を
内部プログラムデータバス6に出力するバッファ51
と、データFIFOメモリ44の出力をデータバス54に出
力するバッファ52と、図示しないバス制御回路とを含
む。バッファ45から47は互いに排他的に動作し、バ
ッファ48と50と52とは互いに排他的に動作する。
動作の条件は、以下の動作の説明の所で述べる。なお、
命令キャッシュ8へのライトは起こらないものとする。The bus controller 42 has an address FIFO memory 43 for storing the contents of the internal program address bus 5.
And a data FIFO memory 44 for storing the contents of the internal program data bus 6, and a buffer 45 for outputting the contents of the internal operand address bus 3 to the address bus 53.
And a buffer 46 for outputting the contents of the internal program address bus 5 to the address bus 53 and a buffer 47 for outputting the output of the address FIFO memory 43 to the address bus 53.
And the contents of internal operand data bus 4 to data bus 5
And a buffer 49 for outputting the contents of the data bus 54 to the internal operand data bus 4.
And the contents of the internal program data bus 6 to the data bus 5
And a buffer 51 for outputting the contents of the data bus 54 to the internal program data bus 6.
And a buffer 52 for outputting the output of the data FIFO memory 44 to the data bus 54, and a bus control circuit (not shown). Buffers 45 to 47 operate exclusively with each other, and buffers 48, 50 and 52 operate exclusively with each other.
The conditions for the operation will be described in the following description of the operation. In addition,
Write to the instruction cache 8 does not occur.
【0042】また図2において、デバッグ装置55は、
プロセッサ41とデータエミュレーションメモリ56と
プログラムエミュレーションメモリ57とモニタ装置5
8とから構成される。In FIG. 2, the debugging device 55
Processor 41, data emulation memory 56, program emulation memory 57, and monitor device 5
And 8.
【0043】データエミュレーションメモリ56は、ア
ドレスバス53とデータバス54とに接続され、データ
キャッシュ7のライト時はデータバス54からライトデ
ータを入力して書込み、データキャッシュ7のリードミ
スヒット時はデータバス54にリードデータを出力す
る。データキャッシュ7のリードヒット時には何も動作
しない。The data emulation memory 56 is connected to the address bus 53 and the data bus 54. The data emulation memory 56 receives write data from the data bus 54 when writing data in the data cache 7, and writes data when the read cache hits the data cache 7. The read data is output to 54. No operation is performed during a read hit of the data cache 7.
【0044】プログラムエミュレーションメモリ57
は、アドレスバス53とデータバス54とに接続され、
命令キャッシュ8のミスヒット時はデータバス54にデ
ータを出力する。命令キャッシュ8のヒット時には何も
動作しない。なおプログラムエミュレーションメモリ5
7には、図示しない例えばホストコンピュータからの転
送などの方法により、データとしてデバッグされるプロ
グラムが格納される。Program emulation memory 57
Are connected to an address bus 53 and a data bus 54,
When a miss occurs in the instruction cache 8, data is output to the data bus 54. No operation is performed when the instruction cache 8 hits. The program emulation memory 5
7 stores a program to be debugged as data by a method (not shown) such as transfer from a host computer.
【0045】モニタ装置58は、アドレスバス53とデ
ータバス54とを入力し、中央処理装置2の動作の追跡
を行う。動作の追跡とは、アドレスバス53上のアドレ
スに基づく、オペランドアドレスのトレース、オペラン
ドアドレスブレークポイント処理、オペランドカバレッ
ジの測定、データキャッシュ7のヒット率の測定、プロ
グラムアドレスのトレース、プログラムアドレスブレー
クポイント処理、プログラムカバレッジの測定、命令キ
ャッシュ8のヒット率の測定や、データバス54上のデ
ータに基づく、オペランドの内容によるブレークポイン
ト処理などの検証、命令の内容によるブレークポイント
処理などの検証を含む。The monitor device 58 inputs the address bus 53 and the data bus 54, and tracks the operation of the central processing unit 2. The tracing of the operations includes tracing of an operand address, operand address breakpoint processing, measurement of operand coverage, measurement of a hit ratio of the data cache 7, program address tracing, and program address breakpoint processing based on an address on the address bus 53. , Measurement of program coverage, measurement of the hit rate of the instruction cache 8, verification of breakpoint processing by the contents of operands based on data on the data bus 54, and verification of breakpoint processing by the contents of instructions.
【0046】以上のように構成された本発明の第二の実
施の形態によるプロセッサおよびデバッグ装置につい
て、その動作を説明する。The operation of the processor and the debug device according to the second embodiment of the present invention configured as described above will be described.
【0047】プログラムとオペランドとは独立に動作を
把握することができない。ここでは、命令キャッシュ8
とデータキャッシュ7とのヒット、ミスヒット、ライ
ト、アクセスなしの組合せに分けて説明する。The operation cannot be grasped independently of the program and the operand. Here, the instruction cache 8
And the data cache 7 will be described separately.
【0048】イ.命令キャッシュ8がヒット、データキ
ャッシュ7がリードヒットの場合 プロセッサ41においては、中央処理装置2がアドレス
を内部プログラムアドレスバス5に出力し、命令キャッ
シュ8が内部プログラムアドレスバス5上のアドレスを
もとにプログラムを読出して内部プログラムデータバス
6を経由して中央処理装置2に入力する。同時に、内部
プログラムアドレスバス5上のアドレスと内部プログラ
ムデータバス6上のデータとをそれぞれアドレスFIFOメ
モリ43とデータFIFOメモリ44とに蓄積する。また、
中央処理装置2がアドレスを内部オペランドアドレスバ
ス3とバッファ45を経由してアドレスバス53とに出
力し、データキャッシュ7が内部オペランドアドレスバ
ス3上のアドレスをもとにオペランドを読出して内部オ
ペランドデータバス4を経由して中央処理装置2に入力
するとともにバッファ48を経由してデータバス54に
出力する。B. In the case where the instruction cache 8 is hit and the data cache 7 is a read hit In the processor 41, the central processing unit 2 outputs an address to the internal program address bus 5, and the instruction cache 8 outputs the address based on the address on the internal program address bus 5. And the program is input to the central processing unit 2 via the internal program data bus 6. At the same time, the address on the internal program address bus 5 and the data on the internal program data bus 6 are stored in the address FIFO memory 43 and the data FIFO memory 44, respectively. Also,
The central processing unit 2 outputs the address to the address bus 53 via the internal operand address bus 3 and the buffer 45, and the data cache 7 reads the operand based on the address on the internal operand address bus 3 to read the internal operand data. The data is input to the central processing unit 2 via the bus 4 and output to the data bus 54 via the buffer 48.
【0049】デバッグ装置55においては、モニタ装置
58が、アドレスバス53から中央処理装置2が出力す
るオペランドアドレスと、データバス54からデータキ
ャッシュ7が出力するオペランドとを入力する。従って
この場合は、オペランドに関してのみ中央処理装置2の
動作が把握できる。In the debug device 55, the monitor device 58 inputs an operand address output from the central processing unit 2 from the address bus 53 and an operand output from the data cache 7 from the data bus 54. Therefore, in this case, the operation of the central processing unit 2 can be grasped only with respect to the operand.
【0050】ロ.命令キャッシュ8がヒット、データキ
ャッシュ7がリードミスヒットの場合 プロセッサ41においては、中央処理装置2がアドレス
を内部プログラムアドレスバス5に出力し、命令キャッ
シュ8が内部プログラムアドレスバス5上のアドレスを
もとにプログラムを読出して内部プログラムデータバス
6を経由して中央処理装置2に入力する。同時に、内部
プログラムアドレスバス5上のアドレスと内部プログラ
ムデータバス6上のデータとをそれぞれアドレスFIFOメ
モリ43とデータFIFOメモリ44とに蓄積する。また、
中央処理装置2がアドレスを内部オペランドアドレスバ
ス3とバッファ45を経由してアドレスバス53とに出
力し、バッファ49と内部オペランドデータバス4とを
経由してデータバス54からオペランドを中央処理装置
2に入力する。B. In the case where the instruction cache 8 is hit and the data cache 7 is a read miss hit In the processor 41, the central processing unit 2 outputs an address to the internal program address bus 5, and the instruction cache 8 outputs the address based on the address on the internal program address bus 5. And the program is input to the central processing unit 2 via the internal program data bus 6. At the same time, the address on the internal program address bus 5 and the data on the internal program data bus 6 are stored in the address FIFO memory 43 and the data FIFO memory 44, respectively. Also,
The central processing unit 2 outputs the address to the address bus 53 via the internal operand address bus 3 and the buffer 45, and outputs the operand from the data bus 54 via the buffer 49 and the internal operand data bus 4. To enter.
【0051】デバッグ装置55においては、データエミ
ュレーションメモリ56がアドレスバス53上のアドレ
スをもとにオペランドを読出してデータバス54に出力
し、モニタ装置58が、アドレスバス53から中央処理
装置2が出力するオペランドアドレスと、データバス5
4からデータエミュレーションメモリ56が出力するオ
ペランドとを入力する。従ってこの場合は、オペランド
に関してのみ中央処理装置2の動作が把握できる。In the debug device 55, the data emulation memory 56 reads an operand based on the address on the address bus 53 and outputs it to the data bus 54, and the monitor device 58 outputs the data from the address bus 53 to the central processing unit 2. Operand address and data bus 5
4 and the operand output from the data emulation memory 56. Therefore, in this case, the operation of the central processing unit 2 can be grasped only with respect to the operand.
【0052】ハ.命令キャッシュ8がヒット、データキ
ャッシュ7がライトの場合 プロセッサ41においては、中央処理装置2がアドレス
を内部プログラムアドレスバス5に出力し、命令キャッ
シュ8が内部プログラムアドレスバス5上のアドレスを
もとにプログラムを読出して内部プログラムデータバス
6を経由して中央処理装置2に入力する。同時に、内部
プログラムアドレスバス5上のアドレスと内部プログラ
ムデータバス6上のデータとをそれぞれアドレスFIFOメ
モリ43とデータFIFOメモリ44とに蓄積する。また、
中央処理装置2がアドレスを内部オペランドアドレスバ
ス3とバッファ45を経由してアドレスバス53とに出
力し、同じく中央処理装置2がオペランドを内部オペラ
ンドデータバス4とバッファ48を経由してデータバス
54とに出力し、データキャッシュ7が内部オペランド
アドレスバス3上のアドレスをもとに内部オペランドデ
ータバス4上のオペランドを書込む。C. When the instruction cache 8 is hit and the data cache 7 is write In the processor 41, the central processing unit 2 outputs an address to the internal program address bus 5, and the instruction cache 8 outputs the address based on the address on the internal program address bus 5. The program is read and input to the central processing unit 2 via the internal program data bus 6. At the same time, the address on the internal program address bus 5 and the data on the internal program data bus 6 are stored in the address FIFO memory 43 and the data FIFO memory 44, respectively. Also,
The central processing unit 2 outputs the address to the address bus 53 via the internal operand address bus 3 and the buffer 45, and the central processing unit 2 similarly outputs the operand via the internal operand data bus 4 and the buffer 48 to the data bus 54. The data cache 7 writes the operand on the internal operand data bus 4 based on the address on the internal operand address bus 3.
【0053】デバッグ装置55においては、モニタ装置
58が、アドレスバス53から中央処理装置2が出力す
るオペランドアドレスと、データバス54から中央処理
装置2が出力するオペランドとを入力する。従ってこの
場合は、オペランドに関してのみ中央処理装置2の動作
が把握できる。In the debug device 55, the monitor device 58 inputs the operand address output from the central processing unit 2 from the address bus 53 and the operand output from the central processing unit 2 from the data bus 54. Therefore, in this case, the operation of the central processing unit 2 can be grasped only with respect to the operand.
【0054】ニ.命令キャッシュ8がヒット、データキ
ャッシュ7がアクセスなしの場合 プロセッサ41においては、中央処理装置2がアドレス
を内部プログラムアドレスバス5に出力し、命令キャッ
シュ8が内部プログラムアドレスバス5上のアドレスを
もとにプログラムを読出して内部プログラムデータバス
6を経由して中央処理装置2に入力する。このときアド
レスFIFOメモリ43およびデータFIFOメモリ44が空の
場合、内部プログラムアドレスバス5上のアドレスと内
部プログラムデータバス6上のデータとをそれぞれバッ
ファ46とバッファ50とを経由してそれぞれアドレス
バス53とデータバス54とに出力する。アドレスFIFO
メモリ43およびデータFIFOメモリ44が空でない場
合、内部プログラムアドレスバス5上のアドレスと内部
プログラムデータバス6上のデータとをそれぞれアドレ
スFIFOメモリ43とデータFIFOメモリ44とに新たに蓄
積し、アドレスFIFOメモリ43に蓄積された最も古いア
ドレスとデータFIFOメモリ44に蓄積された最も古いデ
ータとをそれぞれバッファ46とバッファ50とを経由
してそれぞれアドレスバス53とデータバス54とに出
力する。D. When the instruction cache 8 is hit and the data cache 7 is not accessed In the processor 41, the central processing unit 2 outputs an address to the internal program address bus 5, and the instruction cache 8 outputs the address based on the address on the internal program address bus 5. And the program is input to the central processing unit 2 via the internal program data bus 6. At this time, if the address FIFO memory 43 and the data FIFO memory 44 are empty, the address on the internal program address bus 5 and the data on the internal program data bus 6 are transferred to the address bus 53 via the buffer 46 and the buffer 50, respectively. And the data bus 54. Address FIFO
When the memory 43 and the data FIFO memory 44 are not empty, the address on the internal program address bus 5 and the data on the internal program data bus 6 are newly stored in the address FIFO memory 43 and the data FIFO memory 44, respectively. The oldest address stored in the memory 43 and the oldest data stored in the data FIFO memory 44 are output to an address bus 53 and a data bus 54 via a buffer 46 and a buffer 50, respectively.
【0055】デバッグ装置55においては、モニタ装置
58が、アドレスバス53から中央処理装置2またはア
ドレスFIFOメモリ43が出力するプログラムアドレス
と、データバス54から命令キャッシュ8またはデータ
FIFOメモリ44が出力するプログラムとを入力する。従
ってこの場合は、プログラムに関してのみ中央処理装置
2の動作が把握できる。In the debug device 55, the monitor device 58 controls the program address output from the central processing unit 2 or the address FIFO memory 43 via the address bus 53 and the instruction cache 8 or data from the data bus 54 via the data bus 54.
The program output from the FIFO memory 44 is input. Therefore, in this case, the operation of the central processing unit 2 can be grasped only for the program.
【0056】ホ.命令キャッシュ8がミスヒット、デー
タキャッシュ7がリードヒットの場合 プロセッサ41においては、中央処理装置2がアドレス
を内部プログラムアドレスバス5に出力してプログラム
を読出そうとするがプログラム読出しについてはそれ以
上は何も起きない(同一アドレスのプログラム読出しが
繰り返される)。また、中央処理装置2がアドレスを内
部オペランドアドレスバス3とバッファ45を経由して
アドレスバス53とに出力し、データキャッシュ7が内
部オペランドアドレスバス3上のアドレスをもとにオペ
ランドを読出して内部オペランドデータバス4を経由し
て中央処理装置2に入力するとともにバッファ48を経
由してデータバス54に出力する。E. When the instruction cache 8 is a mishit and the data cache 7 is a read hit In the processor 41, the central processing unit 2 outputs an address to the internal program address bus 5 to read a program. Nothing happens (program reading of the same address is repeated). The central processing unit 2 outputs the address to the address bus 53 via the internal operand address bus 3 and the buffer 45, and the data cache 7 reads the operand based on the address on the internal operand address bus 3 and The data is input to the central processing unit 2 via the operand data bus 4 and output to the data bus 54 via the buffer 48.
【0057】デバッグ装置55においては、モニタ装置
58が、アドレスバス53から中央処理装置2が出力す
るオペランドアドレスと、データバス54からデータキ
ャッシュ7が出力するオペランドとを入力する。従って
この場合は、オペランドに関してのみ中央処理装置2の
動作が把握できる。In the debug device 55, the monitor device 58 inputs an operand address output from the central processing unit 2 via the address bus 53 and an operand output from the data cache 7 via the data bus 54. Therefore, in this case, the operation of the central processing unit 2 can be grasped only with respect to the operand.
【0058】ヘ.命令キャッシュ8がミスヒット、デー
タキャッシュ7がリードミスヒットの場合 プロセッサ41においては、中央処理装置2がアドレス
を内部プログラムアドレスバス5に出力してプログラム
を読出そうとするがプログラム読出しについてはそれ以
上は何も起きない(同一アドレスのプログラム読出しが
繰り返される)。また、中央処理装置2がアドレスを内
部オペランドアドレスバス3とバッファ45を経由して
アドレスバス53とに出力し、バッファ49と内部オペ
ランドデータバス4とを経由してデータバス54からオ
ペランドを中央処理装置2に入力する。F. In the case where the instruction cache 8 is a mishit and the data cache 7 is a read mishit In the processor 41, the central processing unit 2 outputs an address to the internal program address bus 5 to read a program. Nothing happens (program reading of the same address is repeated). The central processing unit 2 outputs the address to the address bus 53 via the internal operand address bus 3 and the buffer 45, and centrally processes the operand from the data bus 54 via the buffer 49 and the internal operand data bus 4. Input to the device 2.
【0059】デバッグ装置55においては、データエミ
ュレーションメモリ56がアドレスバス53上のアドレ
スをもとにオペランドを読出してデータバス54に出力
し、モニタ装置58が、アドレスバス53から中央処理
装置2が出力するオペランドアドレスと、データバス5
4からデータエミュレーションメモリ56が出力するオ
ペランドとを入力する。従ってこの場合は、オペランド
に関してのみ中央処理装置2の動作が把握できる。In the debug device 55, the data emulation memory 56 reads an operand based on the address on the address bus 53 and outputs it to the data bus 54, and the monitor device 58 outputs the operand from the address bus 53 to the central processing unit 2. Operand address and data bus 5
4 and the operand output from the data emulation memory 56. Therefore, in this case, the operation of the central processing unit 2 can be grasped only with respect to the operand.
【0060】ト.命令キャッシュ8がミスヒット、デー
タキャッシュ7がライトの場合 プロセッサ41においては、中央処理装置2がアドレス
を内部プログラムアドレスバス5に出力してプログラム
を読出そうとするがプログラム読出しについてはそれ以
上は何も起きない(同一アドレスのプログラム読出しが
繰り返される)。また、中央処理装置2がアドレスを内
部オペランドアドレスバス3とバッファ45を経由して
アドレスバス53とに出力し、同じく中央処理装置2が
オペランドを内部オペランドデータバス4とバッファ4
8を経由してデータバス54とに出力し、データキャッ
シュ7が内部オペランドアドレスバス3上のアドレスを
もとに内部オペランドデータバス4上のオペランドを書
込む。G. When the instruction cache 8 is a mishit and the data cache 7 is a write In the processor 41, the central processing unit 2 outputs an address to the internal program address bus 5 to read a program. Does not occur (program reading of the same address is repeated). Further, the central processing unit 2 outputs the address to the address bus 53 via the internal operand address bus 3 and the buffer 45, and the central processing unit 2 similarly outputs the operand to the internal operand data bus 4 and the buffer 4
8 and output to the data bus 54, and the data cache 7 writes the operand on the internal operand data bus 4 based on the address on the internal operand address bus 3.
【0061】デバッグ装置55においては、モニタ装置
58が、アドレスバス53から中央処理装置2が出力す
るオペランドアドレスと、データバス54から中央処理
装置2が出力するオペランドとを入力する。従ってこの
場合は、オペランドに関してのみ中央処理装置2の動作
が把握できる。In the debug device 55, the monitor device 58 inputs an operand address output from the central processing unit 2 from the address bus 53 and an operand output from the central processing unit 2 from the data bus 54. Therefore, in this case, the operation of the central processing unit 2 can be grasped only with respect to the operand.
【0062】チ.命令キャッシュ8がミスヒット、デー
タキャッシュ7がアクセスなしの場合 アドレスFIFOメモリ43およびデータFIFOメモリ44が
空の場合。H. When the instruction cache 8 is mishit and the data cache 7 is not accessed. When the address FIFO memory 43 and the data FIFO memory 44 are empty.
【0063】プロセッサ41においては、中央処理装置
2がアドレスを内部プログラムアドレスバス5とバッフ
ァ46を経由してアドレスバス53とに出力し、バッフ
ァ51と内部プログラムデータバス6とを経由してデー
タバス54からプログラムを中央処理装置2に入力す
る。In the processor 41, the central processing unit 2 outputs an address to the address bus 53 via the internal program address bus 5 and the buffer 46, and outputs the data bus via the buffer 51 and the internal program data bus 6. From 54, the program is input to the central processing unit 2.
【0064】デバッグ装置55においては、プログラム
エミュレーションメモリ57がアドレスバス53上のア
ドレスをもとにプログラムを読出してデータバス54に
出力し、モニタ装置58が、アドレスバス53から中央
処理装置2が出力するプログラムアドレスと、データバ
ス54からプログラムエミュレーションメモリ57が出
力するプログラムとを入力する。In the debugging device 55, the program emulation memory 57 reads out the program based on the address on the address bus 53 and outputs it to the data bus 54, and the monitor device 58 outputs the data from the address bus 53 to the central processing unit 2. A program address to be output and a program output from the program emulation memory 57 from the data bus 54 are input.
【0065】アドレスFIFOメモリ43およびデータFIFO
メモリ44が空でない場合。プロセッサ41において
は、中央処理装置2がアドレスを内部プログラムアドレ
スバス5に出力してプログラムを読出そうとするがプロ
グラム読出しについてはそれ以上は何も起きない(同一
アドレスのプログラム読出しが繰り返される)。アドレ
スFIFOメモリ43に蓄積された最も古いアドレスとデー
タFIFOメモリ44に蓄積された最も古いデータとをそれ
ぞれバッファ46とバッファ50とを経由してそれぞれ
アドレスバス53とデータバス54とに出力する。Address FIFO memory 43 and data FIFO
When the memory 44 is not empty. In the processor 41, the central processing unit 2 outputs an address to the internal program address bus 5 to read the program, but nothing more occurs in the program reading (the program reading of the same address is repeated). The oldest address stored in the address FIFO memory 43 and the oldest data stored in the data FIFO memory 44 are output to an address bus 53 and a data bus 54 via a buffer 46 and a buffer 50, respectively.
【0066】デバッグ装置55においては、モニタ装置
58が、アドレスバス53からアドレスFIFOメモリ43
が出力するプログラムアドレスと、データバス54から
データFIFOメモリ44が出力するプログラムとを入力す
る。In the debug device 55, the monitor device 58 is connected to the address FIFO memory 43 via the address bus 53.
And the program output from the data FIFO memory 44 from the data bus 54 are input.
【0067】従ってこれらの場合はいずれも、プログラ
ムに関してのみ中央処理装置2の動作が把握できる。Therefore, in each case, the operation of the central processing unit 2 can be grasped only with respect to the program.
【0068】リ.命令キャッシュ8がアクセスなし、デ
ータキャッシュ7がリードヒットの場合 プロセッサ41においては、中央処理装置2がアドレス
を内部オペランドアドレスバス3とバッファ45を経由
してアドレスバス53とに出力し、データキャッシュ7
が内部オペランドアドレスバス3上のアドレスをもとに
オペランドを読出して内部オペランドデータバス4を経
由して中央処理装置2に入力するとともにバッファ48
を経由してデータバス54に出力する。Re. In the case where the instruction cache 8 has no access and the data cache 7 has a read hit, in the processor 41, the central processing unit 2 outputs an address to the address bus 53 via the internal operand address bus 3 and the buffer 45, and the data cache 7
Reads an operand based on the address on internal operand address bus 3 and inputs it to central processing unit 2 via internal operand data bus 4 while buffer 48
To the data bus 54 via
【0069】デバッグ装置55においては、モニタ装置
58が、アドレスバス53から中央処理装置2が出力す
るオペランドアドレスと、データバス54からデータキ
ャッシュ7が出力するオペランドとを入力する。従って
この場合は、オペランドに関してのみ中央処理装置2の
動作が把握できる。In the debug device 55, the monitor device 58 inputs the operand address output from the central processing unit 2 via the address bus 53 and the operand output from the data cache 7 via the data bus 54. Therefore, in this case, the operation of the central processing unit 2 can be grasped only with respect to the operand.
【0070】ヌ.命令キャッシュ8がアクセスなし、デ
ータキャッシュ7がリードミスヒットの場合 プロセッサ41においては、中央処理装置2がアドレス
を内部オペランドアドレスバス3とバッファ45を経由
してアドレスバス53とに出力し、バッファ49と内部
オペランドデータバス4とを経由してデータバス54か
らオペランドを中央処理装置2に入力する。Nu. In the case where the instruction cache 8 has not been accessed and the data cache 7 has a read mishit, in the processor 41, the central processing unit 2 outputs the address to the address bus 53 via the internal operand address bus 3 and the buffer 45, and Operands are input from the data bus 54 to the central processing unit 2 via the internal operand data bus 4.
【0071】デバッグ装置55においては、データエミ
ュレーションメモリ56がアドレスバス53上のアドレ
スをもとにオペランドを読出してデータバス54に出力
し、モニタ装置58が、アドレスバス53から中央処理
装置2が出力するオペランドアドレスと、データバス5
4からデータエミュレーションメモリ56が出力するオ
ペランドとを入力する。従ってこの場合は、オペランド
に関してのみ中央処理装置2の動作が把握できる。In the debug device 55, the data emulation memory 56 reads an operand based on the address on the address bus 53 and outputs it to the data bus 54, and the monitor device 58 outputs the data from the address bus 53 to the central processing unit 2. Operand address and data bus 5
4 and the operand output from the data emulation memory 56. Therefore, in this case, the operation of the central processing unit 2 can be grasped only with respect to the operand.
【0072】ル.命令キャッシュ8がアクセスなし、デ
ータキャッシュ7がライトの場合 プロセッサ41においては、中央処理装置2がアドレス
を内部オペランドアドレスバス3とバッファ45を経由
してアドレスバス53とに出力し、同じく中央処理装置
2がオペランドを内部オペランドデータバス4とバッフ
ァ48を経由してデータバス54とに出力し、データキ
ャッシュ7が内部オペランドアドレスバス3上のアドレ
スをもとに内部オペランドデータバス4上のオペランド
を書込む。R. In the case where the instruction cache 8 is not accessed and the data cache 7 is write In the processor 41, the central processing unit 2 outputs an address to the address bus 53 via the internal operand address bus 3 and the buffer 45, and the central processing unit 2 outputs the operand to the data bus 54 via the internal operand data bus 4 and the buffer 48, and the data cache 7 writes the operand on the internal operand data bus 4 based on the address on the internal operand address bus 3. Put in.
【0073】デバッグ装置55においては、モニタ装置
58が、アドレスバス53から中央処理装置2が出力す
るオペランドアドレスと、データバス54から中央処理
装置2が出力するオペランドとを入力する。従ってこの
場合は、オペランドに関してのみ中央処理装置2の動作
が把握できる。In the debug device 55, the monitor device 58 inputs the operand address output from the central processing unit 2 from the address bus 53 and the operand output from the central processing unit 2 from the data bus 54. Therefore, in this case, the operation of the central processing unit 2 can be grasped only with respect to the operand.
【0074】ヲ.命令キャッシュ8がアクセスなし、デ
ータキャッシュ7がアクセスなしの場合 アドレスFIFOメモリ43およびデータFIFOメモリ44が
空の場合。ヲ. When the instruction cache 8 is not accessed and the data cache 7 is not accessed When the address FIFO memory 43 and the data FIFO memory 44 are empty.
【0075】プロセッサ41、デバッグ装置55とも変
化なし。アドレスFIFOメモリ43およびデータFIFOメモ
リ44が空でない場合。There is no change in both the processor 41 and the debug device 55. When the address FIFO memory 43 and the data FIFO memory 44 are not empty.
【0076】プロセッサ41においては、アドレスFIFO
メモリ43に蓄積された最も古いアドレスとデータFIFO
メモリ44に蓄積された最も古いデータとをそれぞれバ
ッファ46とバッファ50とを経由してそれぞれアドレ
スバス53とデータバス54とに出力する。In the processor 41, the address FIFO
The oldest address and data FIFO stored in the memory 43
The oldest data stored in the memory 44 is output to the address bus 53 and the data bus 54 via the buffer 46 and the buffer 50, respectively.
【0077】デバッグ装置55においては、モニタ装置
58が、アドレスバス53からアドレスFIFOメモリ43
が出力するプログラムアドレスと、データバス54から
データFIFOメモリ44が出力するプログラムとを入力す
る。従ってこの場合は、プログラムに関してのみ中央処
理装置2の動作が把握できる。In the debug device 55, the monitor device 58 is connected to the address FIFO memory 43 via the address bus 53.
And the program output from the data FIFO memory 44 from the data bus 54 are input. Therefore, in this case, the operation of the central processing unit 2 can be grasped only for the program.
【0078】以上のように本発明の第二の実施の形態に
よれば、データキャッシュ7や命令キャッシュ8がヒッ
トしている時も、プロセッサ41はプログラムおよびオ
ペランドのアドレスやデータを外部に出力する。そのた
めデバッグ装置55は、キャッシュメモリの動作を停止
させることなくプログラムのデバッグを可能にする。As described above, according to the second embodiment of the present invention, even when the data cache 7 or the instruction cache 8 is hit, the processor 41 outputs the address and data of the program and the operand to the outside. . Therefore, the debug device 55 enables debugging of the program without stopping the operation of the cache memory.
【0079】さらに本発明の第二の実施の形態によれ
ば、アドレスFIFOメモリ43とデータFIFOメモリ44と
を設けて一時的にプログラムのアドレスとデータを蓄積
し、オペランドのアドレスやデータが外部に出力されな
いときに蓄積したプログラムのアドレスとデータを外部
に出力することにより、プロセッサ41がプログラムと
オペランドとについてアドレスバス53およびデータバ
ス54を共有して転送する方式であってもプログラムお
よびオペランドのアドレスやデータを外部に出力するこ
とができる。Further, according to the second embodiment of the present invention, an address FIFO memory 43 and a data FIFO memory 44 are provided to temporarily store program addresses and data, and to store operand addresses and data to the outside. By outputting the stored program address and data to the outside when they are not output, even if the processor 41 transfers the program and the operand by sharing the address bus 53 and the data bus 54, the addresses of the program and the operand are transferred. And data can be output to the outside.
【0080】さらに本発明の第二の実施の形態によれ
ば、命令キャッシュ8のミスヒットとオペランドアクセ
スとが同時に発生した時には、同一のアドレスで命令キ
ャッシュ8を繰り返してリードするようにしているた
め、バス制御装置42には命令キャッシュ8のミスヒッ
トに係る手段は何も必要としない。Further, according to the second embodiment of the present invention, when a miss hit of the instruction cache 8 and an operand access occur simultaneously, the instruction cache 8 is repeatedly read at the same address. The bus control unit 42 does not need any means relating to the miss hit of the instruction cache 8.
【0081】なお、第二の実施の形態では、アドレスFI
FOメモリ43とデータFIFOメモリ44とに一時的にプロ
グラムのアドレスとデータを蓄積し、オペランドのアド
レスやデータが外部に出力されないときに蓄積したプロ
グラムのアドレスとデータを外部に出力するようにして
いるが、一時的にオペランドのアドレスとデータを蓄積
し、プログラムのアドレスとデータが外部に出力されな
いときに蓄積したオペランドのアドレスとデータを外部
に出力するようにしてもよいし、プログラムとオペラン
ドのアドレスおよびデータを格納する二系統のアドレス
FIFOメモリとデータFIFOメモリとを設けて、プログラム
とオペランドの一方のアドレスやデータが外部に出力さ
れないときに蓄積した他方のアドレスとデータを外部に
出力するようにしてもよい。In the second embodiment, the address FI
The program address and data are temporarily stored in the FO memory 43 and the data FIFO memory 44, and the stored program address and data are output to the outside when the operand address and data are not output to the outside. May temporarily store the operand address and data and output the stored operand address and data to the outside when the program address and data are not output to the outside, or the program and operand address And two addresses for storing data
It is also possible to provide a FIFO memory and a data FIFO memory, and output the other address and data stored when one address or data of one of the program and the operand is not output to the outside.
【0082】また、以上の本発明の実施の形態では、い
ずれもデータキャッシュ7と命令キャッシュ8との両方
を設けているが、いずれか一方だけを設けてもよい。In the above embodiments of the present invention, both the data cache 7 and the instruction cache 8 are provided, but only one of them may be provided.
【0083】また、上記実施の形態では、プロセッサが
キャッシュヒット時にキャッシュのアクセスアドレスと
キャッシュから読出されたデータとを出力し、デバッグ
装置内のモニタ装置でこれらを入力しているが、アドレ
スとデータのいずれか一方だけでもよい。特にアドレス
だけをモニタ装置に加えた場合は、トレース、アドレス
ブレークポイント処理、カバレッジの測定、キャッシュ
のヒット率の測定など、データだけを加えた場合に比べ
て幅広く中央処理装置2の動作の追跡が可能になる。In the above embodiment, the processor outputs the access address of the cache and the data read from the cache when the cache hits, and inputs them by the monitor device in the debug device. Either one of them may be used. In particular, when only the address is added to the monitor device, the operation of the central processing unit 2 can be traced more widely than when only the data is added, such as tracing, address breakpoint processing, coverage measurement, and cache hit ratio measurement. Will be possible.
【0084】また、上記実施の形態では、プロセッサが
キャッシュヒット時にキャッシュのアクセスアドレスと
キャッシュから読出されたデータとを出力し、デバッグ
装置内のモニタ装置でこれらを入力しているが、これら
に加えてプロセッサがキャッシュヒット信号を出力し、
デバッグ装置内のモニタ装置でキャッシュヒット信号を
入力するようにしてもよい。こうすることにより、その
アクセスがキャッシュヒットによるものかキャッシュミ
スヒットによるものかを容易に判別することが可能にな
る。In the above embodiment, the processor outputs the access address of the cache and the data read from the cache at the time of a cache hit, and inputs them by the monitor device in the debug device. Processor outputs a cache hit signal,
A cache hit signal may be input to a monitor device in the debug device. This makes it possible to easily determine whether the access is due to a cache hit or a cache miss.
【0085】[0085]
【発明の効果】以上のように本発明に係るプロセッサ
は、プログラムに従ってオペランドの処理を行う中央処
理装置と、前記プログラムまたは前記オペランドを格納
するキャッシュメモリと、前記キャッシュメモリに格納
されたプログラムまたはオペランドが読出される場合
に、読出しを行うアドレスおよび読出された内容の少な
くとも一方を外部に出力するバス制御装置とを備える。
この構成によれば、キャッシュヒット中もキャッシュメ
モリの読出しアドレスまたは読出された内容を外部で追
跡できる。As described above, the processor according to the present invention comprises a central processing unit for processing operands according to a program, a cache memory for storing the program or the operand, and a program or operand stored in the cache memory. And a bus controller for outputting at least one of the address to be read and the read content to the outside when the data is read.
According to this configuration, even during a cache hit, the read address or the read content of the cache memory can be tracked externally.
【0086】また本発明に係るプロセッサは、プログラ
ムを転送する内部プログラムバスと、オペランドを転送
する内部オペランドバスとを有し、前記プログラムに従
って前記オペランドの処理を行う中央処理装置と、前記
内部プログラムバスに接続され、前記プログラムを格納
する命令キャッシュメモリと、前記内部オペランドバス
に接続され、前記オペランドを格納するデータキャッシ
ュメモリと、前記命令キャッシュメモリに格納されたプ
ログラムが読出される場合に、前記内部プログラムバス
上の内容を外部に出力し、前記データキャッシュメモリ
に格納されたオペランドが読出される場合に、前記内部
オペランドバス上の内容を外部に出力するバス制御装置
とを備える。この構成によれば、命令キャッシュメモリ
およびデータキャッシュメモリのいずれがヒットしても
それらの動作を外部で追跡できる。Further, a processor according to the present invention has an internal program bus for transferring a program and an internal operand bus for transferring an operand, and a central processing unit for processing the operand in accordance with the program; And an instruction cache memory for storing the program, a data cache memory for storing the operands connected to the internal operand bus, and an internal memory for reading the program stored in the instruction cache memory. A bus control device for outputting the contents on the program bus to the outside and outputting the contents on the internal operand bus to the outside when the operand stored in the data cache memory is read. According to this configuration, even if the instruction cache memory or the data cache memory hits, their operations can be tracked externally.
【0087】また本発明に係るプロセッサは、プログラ
ムを転送する内部プログラムバスと、オペランドを転送
する内部オペランドバスとを有し、前記プログラムに従
って前記オペランドの処理を行う中央処理装置と、前記
内部プログラムバスに接続され、前記プログラムを格納
する命令キャッシュメモリと、前記命令キャッシュメモ
リに格納されたプログラムが読出されたとき、前記内部
プログラムバス上の内容を一時的に蓄積する一時記憶手
段と、前記内部オペランドバスにオペランドが転送され
ているときは、前記内部オペランドバス上の内容のみを
外部に出力し、前記内部オペランドバスにオペランドが
転送されていないときに、前記一時記憶手段に蓄積され
た内容を外部に出力するバス制御装置とを備える。この
構成によれば、外部に出力する経路が単一であっても、
命令キャッシュメモリの動作と内部オペランドバスに転
送されるオペランドのアドレスやデータとを外部で追跡
できる。A processor according to the present invention has an internal program bus for transferring a program and an internal operand bus for transferring an operand, and a central processing unit for processing the operand in accordance with the program; An instruction cache memory for storing the program, temporary storage means for temporarily storing contents on the internal program bus when the program stored in the instruction cache memory is read, and the internal operand When the operand is transferred to the bus, only the content on the internal operand bus is output to the outside, and when the operand is not transferred to the internal operand bus, the content stored in the temporary storage means is output to the external. And a bus control device for outputting the data to the bus. According to this configuration, even if there is a single path to output to the outside,
The operation of the instruction cache memory and the address and data of the operand transferred to the internal operand bus can be tracked externally.
【0088】また本発明に係るプロセッサは、プログラ
ムを転送する内部プログラムバスと、オペランドを転送
する内部オペランドバスとを有し、前記プログラムに従
って前記オペランドの処理を行う中央処理装置と、前記
内部オペランドバスに接続され、前記オペランドを格納
するデータキャッシュメモリと、前記データキャッシュ
メモリに格納されたプログラムが読出されたとき、前記
内部オペランドバス上の内容を一時的に蓄積する一時記
憶手段と、前記内部プログラムバスにプログラムが転送
されているときは、前記内部プログラムバス上の内容の
みを外部に出力し、前記内部プログラムバスにプログラ
ムが転送されていないときに、前記一時記憶手段に蓄積
された内容を外部に出力するバス制御装置とを備える。
この構成によれば、外部に出力する経路が単一であって
も、データキャッシュメモリの動作と内部プログラムバ
スに転送されるプログラムのアドレスやデータとを外部
で追跡できる。Further, a processor according to the present invention has an internal program bus for transferring a program and an internal operand bus for transferring an operand, a central processing unit for processing the operand in accordance with the program, and an internal operand bus. A data cache memory for storing the operands, temporary storage means for temporarily storing the contents on the internal operand bus when a program stored in the data cache memory is read, and When the program is transferred to the bus, only the contents on the internal program bus are output to the outside, and when the program is not transferred to the internal program bus, the contents stored in the temporary And a bus control device for outputting the data to the bus.
According to this configuration, the operation of the data cache memory and the address and data of the program transferred to the internal program bus can be tracked externally even if there is only one external output path.
【0089】さらに本発明に係るデバッグ装置は、プロ
グラムに従ってオペランドの処理を行う中央処理装置
と、前記プログラムまたは前記オペランドを格納するキ
ャッシュメモリと、前記キャッシュメモリに格納された
プログラムまたはオペランドが読出される場合に、読出
しを行うアドレスおよび読出された内容の少なくとも一
方をバスに出力し、前記キャッシュメモリに格納されて
いないプログラムまたはオペランドが読出される場合
に、読出しを行うアドレスを前記バスに出力するバス制
御装置とを有するプロセッサと、前記バスに接続され、
前記プロセッサにプログラムまたはオペランドを供給す
るエミュレーションメモリと、前記バスに接続され、前
記バス上の内容に基づいて前記プロセッサにおける前記
中央処理装置の動作を追跡するモニタ装置とを備える。
この構成によれば、キャッシュヒット中はキャッシュメ
モリの読出しアドレスまたは読出された内容を、キャッ
シュミスヒット中はエミュレーションメモリの読出しア
ドレスまたは読出された内容をモニタ装置で追跡でき、
キャッシュメモリの動作を停止させることなくプログラ
ムのデバッグが可能となる。Further, in the debugging device according to the present invention, a central processing unit for processing operands according to a program, a cache memory for storing the program or the operand, and a program or operand stored in the cache memory are read. A bus for outputting at least one of an address to be read and read contents to a bus, and outputting an address to be read to the bus when a program or an operand not stored in the cache memory is read. A processor having a control device, and a processor connected to the bus;
An emulation memory for supplying a program or an operand to the processor; and a monitor connected to the bus and tracking operation of the central processing unit in the processor based on contents on the bus.
According to this configuration, the monitor device can track the read address or read content of the cache memory during a cache hit and the read address or read content of the emulation memory during a cache miss.
The program can be debugged without stopping the operation of the cache memory.
【0090】また本発明に係るプロセッサは、プログラ
ムを転送する内部プログラムバスと、オペランドを転送
する内部オペランドバスとを有し、前記プログラムに従
って前記オペランドの処理を行う中央処理装置と、前記
内部プログラムバスに接続され、前記プログラムを格納
する命令キャッシュメモリと、前記内部プログラムバス
と前記内部オペランドバスとに接続されるバス制御装置
とを備えるプロセッサであって、前記中央処理装置は、
前記キャッシュメモリに格納されていないプログラムの
読出しと、オペランドの読出しまたは書込みとが同時に
発生した場合に、前記プログラムの読出しを取りやめ、
遅延し、または保留するようにしたプロセッサである。
この構成によれば、オペランドの読出しまたは書込みと
が同時に発生しなくなるまで前記プログラムの読出しを
繰り返すため、バス制御装置には前記キャッシュメモリ
に格納されていないプログラムの読出しに係る手段が不
要である。A processor according to the present invention has an internal program bus for transferring a program and an internal operand bus for transferring an operand, and a central processing unit for processing the operand according to the program. An instruction cache memory that stores the program, and a bus control device that is connected to the internal program bus and the internal operand bus, wherein the central processing unit includes:
If reading of a program not stored in the cache memory and reading or writing of an operand occur simultaneously, cancel reading of the program;
A processor that is delayed or put on hold.
According to this configuration, since the reading of the program is repeated until the reading or writing of the operands does not occur at the same time, the bus control device does not need a means for reading a program that is not stored in the cache memory.
【0091】以上説明したように本発明によれば、キャ
ッシュヒット中もプログラムの実行アドレスのトレース
などの動作の追跡が可能で、キャッシュメモリの動作を
停止させることなくプログラムをデバッグすることがで
きるという有利な効果が得られる。As described above, according to the present invention, it is possible to trace an operation such as tracing the execution address of a program even during a cache hit, and to debug the program without stopping the operation of the cache memory. An advantageous effect is obtained.
【図1】本発明の第一の実施の形態におけるプロセッサ
およびデバッグ装置の構成を示すブロック図FIG. 1 is a block diagram showing a configuration of a processor and a debug device according to a first embodiment of the present invention.
【図2】本発明の第二の実施の形態におけるプロセッサ
およびデバッグ装置の構成を示すブロック図FIG. 2 is a block diagram showing a configuration of a processor and a debug device according to a second embodiment of the present invention.
【符号の説明】 1、41 プロセッサ 2 中央処理装置 3 内部オペランドアドレスバス 4 内部オペランドデータバス 5 内部プログラムアドレスバス 6 内部プログラムデータバス 7 データキャッシュ 8 命令キャッシュ 9、42 バス制御装置 10〜15、45〜52 バッファ 16 オペランドアドレスバス 17 オペランドデータバス 18 プログラムアドレスバス 19 プログラムデータバス 20、55 デバッグ装置 21、56 データエミュレーションメモリ 22、57 プログラムエミュレーションメモリ 23、58 モニタ装置 43 アドレスFIFOメモリ 44 データFIFOメモリ 53 アドレスバス 54 データバスDESCRIPTION OF SYMBOLS 1, 41 Processor 2 Central processing unit 3 Internal operand address bus 4 Internal operand data bus 5 Internal program address bus 6 Internal program data bus 7 Data cache 8 Instruction cache 9, 42 Bus control devices 10 to 15, 45 ~ 52 Buffer 16 Operand address bus 17 Operand data bus 18 Program address bus 19 Program data bus 20,55 Debug device 21,56 Data emulation memory 22,57 Program emulation memory 23,58 Monitor device 43 Address FIFO memory 44 Data FIFO memory 53 Address bus 54 Data bus
Claims (12)
行う中央処理装置と、 前記プログラムまたは前記オペランドを格納するキャッ
シュメモリと、 前記キャッシュメモリに格納されたプログラムまたはオ
ペランドが読出される場合に、読出しを行うアドレスお
よび読出された内容の少なくとも一方を外部に出力する
バス制御装置とを備えることを特徴とするプロセッサ。A central processing unit for processing operands according to a program; a cache memory for storing the program or the operand; and an address for reading when a program or operand stored in the cache memory is read. And a bus control device for outputting at least one of the read contents to the outside.
スと、オペランドを転送する内部オペランドバスとを有
し、前記プログラムに従って前記オペランドの処理を行
う中央処理装置と、 前記内部プログラムバスに接続され、前記プログラムを
格納する命令キャッシュメモリと、 前記内部オペランドバスに接続され、前記オペランドを
格納するデータキャッシュメモリと、 前記命令キャッシュメモリに格納されたプログラムが読
出される場合に、前記内部プログラムバス上の内容を外
部に出力し、前記データキャッシュメモリに格納された
オペランドが読出される場合に、前記内部オペランドバ
ス上の内容を外部に出力するバス制御装置とを備えるこ
とを特徴とするプロセッサ。2. A central processing unit having an internal program bus for transferring a program and an internal operand bus for transferring an operand, performing a processing of the operand in accordance with the program, and connected to the internal program bus, An instruction cache memory connected to the internal operand bus, and a data cache memory storing the operands. When a program stored in the instruction cache memory is read, the contents on the internal program bus are read. A processor, comprising: a bus controller for outputting to the outside and outputting the contents on the internal operand bus to the outside when an operand stored in the data cache memory is read.
送する外部プログラムバスと、外部との間でオペランド
を転送する外部オペランドバスとに接続され、 前記命令キャッシュメモリに格納されたプログラムが読
出される場合に、前記内部プログラムバス上の内容を外
部プログラムバスに出力し、 前記データキャッシュメモリに格納されたオペランドが
読出される場合に、前記内部オペランドバス上の内容を
外部オペランドバスに出力することを特徴とするプロセ
ッサ。3. The bus control device according to claim 2, wherein each of the bus control devices is provided separately and connected to an external program bus for transferring a program to / from an external device and an external operand bus for transferring an operand to / from the external device. When the program stored in the instruction cache memory is read, the contents on the internal program bus are output to an external program bus, and when the operand stored in the data cache memory is read, A processor for outputting contents on an internal operand bus to an external operand bus.
スと、オペランドを転送する内部オペランドバスとを有
し、前記プログラムに従って前記オペランドの処理を行
う中央処理装置と、 前記内部プログラムバスに接続され、前記プログラムを
格納する命令キャッシュメモリと、 前記命令キャッシュメモリに格納されたプログラムが読
出されたとき、前記内部プログラムバス上の内容を一時
的に蓄積する一時記憶手段と、 前記内部オペランドバスにオペランドが転送されている
ときは、前記内部オペランドバス上の内容のみを外部に
出力し、 前記内部オペランドバスにオペランドが転送されていな
いときに、前記一時記憶手段に蓄積された内容を外部に
出力するバス制御装置とを備えることを特徴とするプロ
セッサ。4. A central processing unit having an internal program bus for transferring a program and an internal operand bus for transferring an operand, performing a processing of the operand in accordance with the program, and connected to the internal program bus, An instruction cache memory for storing the contents of the instruction cache memory, a temporary storage means for temporarily storing the contents on the internal program bus when the program stored in the instruction cache memory is read, and an operand transferred to the internal operand bus. A bus control device that outputs only the content on the internal operand bus to the outside when the operand is not transferred to the internal operand bus, and outputs the content stored in the temporary storage means to the outside when the operand is not transferred to the internal operand bus And a processor comprising:
容または前記一時記憶手段に蓄積された内容のいずれか
を選択的に外部に出力することを特徴とするプロセッ
サ。5. The bus control device according to claim 4, wherein the bus control device is connected to a single external bus, and using the external bus, any of the content on the internal operand bus or the content stored in the temporary storage means. A processor that selectively outputs the data to the outside.
スと、オペランドを転送する内部オペランドバスとを有
し、前記プログラムに従って前記オペランドの処理を行
う中央処理装置と、 前記内部オペランドバスに接続され、前記オペランドを
格納するデータキャッシュメモリと、 前記データキャッシュメモリに格納されたプログラムが
読出されたとき、前記内部オペランドバス上の内容を一
時的に蓄積する一時記憶手段と、 前記内部プログラムバスにプログラムが転送されている
ときは、前記内部プログラムバス上の内容のみを外部に
出力し、 前記内部プログラムバスにプログラムが転送されていな
いときに、前記一時記憶手段に蓄積された内容を外部に
出力するバス制御装置とを備えることを特徴とするプロ
セッサ。6. A central processing unit having an internal program bus for transferring a program and an internal operand bus for transferring an operand, and performing a processing of the operand in accordance with the program; A data cache memory for storing data stored in the data cache memory, a temporary storage means for temporarily storing the contents on the internal operand bus when the program stored in the data cache memory is read, and a program transferred to the internal program bus. A bus control device that outputs only the content on the internal program bus to the outside when the program is not transferred to the internal program bus, and outputs the content stored in the temporary storage unit to the outside when the program is not transferred to the internal program bus And a processor comprising:
容または前記一時記憶手段に蓄積された内容のいずれか
を選択的に外部に出力することを特徴とするプロセッ
サ。7. The bus control device according to claim 6, wherein the bus control device is connected to a single external bus, and using the external bus, any of the content on the internal program bus or the content stored in the temporary storage means. A processor that selectively outputs the data to the outside.
行う中央処理装置と、 前記プログラムまたは前記オペランドを格納するキャッ
シュメモリと、 前記キャッシュメモリに格納されたプログラムまたはオ
ペランドが読出される場合に、読出しを行うアドレスお
よび読出された内容の少なくとも一方をバスに出力し、
前記キャッシュメモリに格納されていないプログラムま
たはオペランドが読出される場合に、読出しを行うアド
レスを前記バスに出力するバス制御装置とを有するプロ
セッサと、 前記バスに接続され、前記プロセッサにプログラムまた
はオペランドを供給するエミュレーションメモリと、 前記バスに接続され、前記バス上の内容に基づいて前記
プロセッサにおける前記中央処理装置の動作を追跡する
モニタ装置とを備えることを特徴とするデバッグ装置。8. A central processing unit for processing an operand according to a program, a cache memory for storing the program or the operand, and an address for reading when the program or operand stored in the cache memory is read. And at least one of the read contents is output to the bus,
A processor having a bus control device for outputting an address to be read to the bus when a program or an operand not stored in the cache memory is read; A debugging device, comprising: an emulation memory to be supplied; and a monitoring device connected to the bus and tracking the operation of the central processing unit in the processor based on the content on the bus.
ャッシュメモリに格納されたプログラムまたはオペラン
ドが読出される場合に、読出しを行うアドレスと読出さ
れた内容とをそれぞれ前記バスのアドレス部とデータ部
とに出力し、 モニタ装置は、前記バスのアドレス部とデータ部とに基
づいて前記プロセッサにおける前記中央処理装置の動作
を追跡することを特徴とするデバッグ装置。9. The bus control device according to claim 8, wherein when a program or an operand stored in said cache memory is read, an address to be read and a read content are respectively stored in an address portion of said bus. A debugger for outputting the data to a data section, and wherein the monitor tracks the operation of the central processing unit in the processor based on the address and the data of the bus.
ッシュメモリに格納されたプログラムまたはオペランド
が読出される場合に、読出しを行うアドレスと、キャッ
シュメモリに格納されたプログラムまたはオペランドが
読出されたことを示す識別信号とを外部に出力すること
を特徴とするプロセッサ。10. A bus control device according to claim 1, wherein when a program or an operand stored in a cache memory is read, an address to be read and a program or an operand stored in the cache memory are read. And outputting an identification signal indicating the fact to the outside.
ッシュメモリに格納されたプログラムまたはオペランド
が読出される場合に、読出しを行うアドレスをバスに出
力するとともに、キャッシュメモリに格納されたプログ
ラムまたはオペランドが読出されたことを示す識別信号
を出力し、 モニタ装置は、前記バス上のアドレスと前記識別信号と
に基づいて前記プロセッサにおける前記中央処理装置の
動作を追跡することを特徴とするデバッグ装置。11. A bus control device according to claim 8, wherein when a program or an operand stored in the cache memory is read, an address to be read is output to the bus, and the program or the operand stored in the cache memory is output. A debugging device for outputting an identification signal indicating that an operand has been read, wherein the monitor device tracks the operation of the central processing unit in the processor based on the address on the bus and the identification signal. .
バスと、オペランドを転送する内部オペランドバスとを
有し、前記プログラムに従って前記オペランドの処理を
行う中央処理装置と、 前記内部プログラムバスに接続され、前記プログラムを
格納する命令キャッシュメモリと、 前記内部プログラムバスと前記内部オペランドバスとに
接続されるバス制御装置とを備えるプロセッサにおい
て、 前記中央処理装置は、 前記キャッシュメモリに格納されていないプログラムの
読出しと、オペランドの読出しまたは書込みとが同時に
発生した場合に、 前記プログラムの読出しを取りやめ、遅延し、または保
留することを特徴とするプロセッサ。12. A central processing unit having an internal program bus for transferring a program and an internal operand bus for transferring an operand, and performing a processing of the operand in accordance with the program. And a bus control device connected to the internal program bus and the internal operand bus, wherein the central processing unit reads a program that is not stored in the cache memory; A processor characterized by canceling, delaying, or suspending the reading of the program when reading or writing of operands occurs simultaneously.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP9171401A JPH1115691A (en) | 1997-06-27 | 1997-06-27 | Processor and debug equipment |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP9171401A JPH1115691A (en) | 1997-06-27 | 1997-06-27 | Processor and debug equipment |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH1115691A true JPH1115691A (en) | 1999-01-22 |
Family
ID=15922479
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP9171401A Pending JPH1115691A (en) | 1997-06-27 | 1997-06-27 | Processor and debug equipment |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH1115691A (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010505195A (en) * | 2006-09-28 | 2010-02-18 | フリースケール セミコンダクター インコーポレイテッド | Data processing system having cache memory debug support and method therefor |
-
1997
- 1997-06-27 JP JP9171401A patent/JPH1115691A/en active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010505195A (en) * | 2006-09-28 | 2010-02-18 | フリースケール セミコンダクター インコーポレイテッド | Data processing system having cache memory debug support and method therefor |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4858111A (en) | Write-back cache system using concurrent address transfers to setup requested address in main memory before dirty miss signal from cache | |
| US7051239B2 (en) | Method and apparatus for efficiently implementing trace and/or logic analysis mechanisms on a processor chip | |
| US5539890A (en) | Microprocessor interface apparatus having a boot address relocator, a request pipeline, a prefetch queue, and an interrupt filter | |
| US8688910B2 (en) | Debug control for snoop operations in a multiprocessor system and method thereof | |
| JPH011039A (en) | In-circuit emulator | |
| JP2010505195A (en) | Data processing system having cache memory debug support and method therefor | |
| KR940003318B1 (en) | Processor having cache memory | |
| KR970011214B1 (en) | Microcomputer Development Support Device | |
| US5212775A (en) | Method and apparatus for observing internal memory-mapped registers | |
| JPH1115691A (en) | Processor and debug equipment | |
| US20070006042A1 (en) | Software debug support for cache flush with access to external data location(s) through debug port | |
| JPH01169557A (en) | Storage control system for computer | |
| JPS6383841A (en) | Central processing unit of computer capable of program test | |
| JP2636107B2 (en) | Debug support device | |
| JP2902861B2 (en) | Buffer device with trace function | |
| JPH10222423A (en) | Cache memory control system | |
| JPH08335177A (en) | Method and device for observing processor operation | |
| JP2654105B2 (en) | Microprocessor | |
| JPH08137715A (en) | Processor device | |
| JPH02259945A (en) | Storing processing system | |
| JPS61204755A (en) | Controlling system for direct memory access | |
| JPH04369739A (en) | program debug equipment | |
| JPS60153554A (en) | processor | |
| JPS58151659A (en) | Measuring device for logical analysis of data processing equipment | |
| JPH08147187A (en) | emulator |