JPH1139193A - マイクロプロセッサ - Google Patents

マイクロプロセッサ

Info

Publication number
JPH1139193A
JPH1139193A JP9192584A JP19258497A JPH1139193A JP H1139193 A JPH1139193 A JP H1139193A JP 9192584 A JP9192584 A JP 9192584A JP 19258497 A JP19258497 A JP 19258497A JP H1139193 A JPH1139193 A JP H1139193A
Authority
JP
Japan
Prior art keywords
branch
microprocessor
branch instruction
instruction
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
Application number
JP9192584A
Other languages
English (en)
Inventor
Mamoru Yura
守 由良
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.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP9192584A priority Critical patent/JPH1139193A/ja
Publication of JPH1139193A publication Critical patent/JPH1139193A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【課題】 インターサーキットエミュレータを用いてマ
イクロプロセッサの履歴を把握する手法では、キャッシ
ュメモリがヒット中はアドレスが外部に出力されないた
め、エミュレーションを実行することができない。 【解決手段】 CPU1とキャシュメモリ4を接続する
CPU内部バス2に、分岐命令の種類を解読する分岐命
令デコーダ3と、解読された分岐命令の分岐アドレスを
ラッチする分岐アドレスラッチ6を接続する。また、前
記分岐命令の種類と分岐アドレスを一時的に蓄えるバッ
ファメモリ7と、この蓄えた情報を外部に出力するパラ
レルシリアル変換回路8とを備える。キャッシュメモリ
にヒットしたプログラムの実行中もプログラムの流れを
トレースでき、正確なエミュレーションが実行できる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、マイクロプロセッ
サにおけるディバグ回路に関するもので、特にキャシュ
メモリを内蔵したマイクロコンピュータがオンチップの
キャシュにヒットした場合でもプログラムの実行履歴を
トレースすることを可能にシタマイクロプロセッサに関
する。
【0002】
【従来の技術】マイクロプロセッサの技術の進歩は近年
著しく進み、特に半導体技術の微細化により高速化、大
規模化は目を見はるものがある。例えば、最近のRIS
Cマイクロコンピュータの動作周波数は200MHzを
越えるものも多く提案されている。また、近年の高性能
マイクロプロセッサにはオン・チップでのキャシュメモ
リが内蔵されているものも多い。
【0003】このような従来の高速化、大規模化が図ら
れたマイクロプロセッサでは、組込み用の応用システム
の開発段階ではインサーキットエミュレータ(以下、I
CEという)を用いてマイクロプロセッサの実行履歴を
みながらディバグする手法がとられている。図5はその
一例を示すブロック図であり、詳細は省略するが、スー
パバイザ部21、エミレーションメモリ22、ブレーク
ポイント回路部23、リアルタイムトレーサ部24、タ
ーゲットシステム25、エミュレータマイクロプロセッ
サ26とで構成されている。また、27はマイクロプロ
セッサ、28はスーパバイザバス、29はエミレーショ
ン/トレースバスである。
【0004】
【発明が解決しようとする課題】しかしながら、前記し
たような高速化された動作周波数のマイクロプロセッサ
では、信号のディレイや回路の反射ノイズによる誤動作
が生じ易く、前記したICEを用いてのディバグが不可
能になってきた。また、キャッシュメモリを備えるマイ
クロプロセッサでは、キャシュメモリにヒット中はマイ
クロプロセッサの外部にアドレスが出力されないので、
プログラムがどのように動作しているか履歴をとること
ができず、ディパグが困難なものとなっている。また、
キャシュにヒットしなかった場合に、そのアドレスをト
レースメモリに書き込む場合は多くのアドレスをロジッ
クアナライザに接続する必要があるが、プロービングの
本数が多く、更にバス線に対する負荷の増大やインピー
ダンスの変化により反射等が出やすくなるため、ブロー
ビングが複雑となり、バスの特性が悪くなるという問題
もある。
【0005】本発明の目的は、マイクロプロセッサがキ
ャシュヒット中であってもリアルタイムトレースを行な
うことができ、また、キャシュメモリにヒットしていな
い場合でも容易に外部バスのトレースが可能なマイクロ
プロセッサを提供することにある。また、本発明は、ア
ドレスバス等の端子数の多い信号線のロジックアナライ
ザへの接続を不要にしたマイクロプロセッサを提供する
ことにある。
【0006】
【課題を解決するための手段】本発明のマイクロプロセ
ッサは、メモリよりCPUへ読み込む命令が分岐命令で
あることを検出し、この分岐命令の種類と分岐アドレス
を含む情報を外部に出力する機能を有することを特徴と
する。すなわち、キャシュメモリを有するマイクロプロ
セッサにおいて、分岐命令の種類を解読する手段と、解
読された分岐命令の分岐アドレスをラッチする手段と、
前記分岐命令の種類と分岐アドレスを一時的に蓄えるメ
モリと、この蓄えた情報を外部に出力する手段とを備え
る。また、前記情報を外部に出力する手段は、情報をク
ロック信号に同期してシリアル信号として出力するパラ
レルシリアル変換回路を含むことが好ましい。
【0007】本発明では、CPUが分岐命令を実行する
ことを検出し、マイクロプロセッサ外部に分岐命令と分
岐アドレスを出力してトレース可能とする。これによ
り、例えば、マイクロプロセッサ内部のキャッシュメモ
リとCPU間でアクセス処理されて外部からは見えない
命令が実行された場合でも、プログラムの実行順序が外
部でトレースすることが可能となる。
【0008】
【発明の実施の形態】次に、本発明の実施形態について
図面を参照して説明する。図1に本発明の構成を示す。
CPUコア1にはCPU内部バス2を介してキャシュメ
モリ4が接続され、さらに外部バスインターフェース5
が接続される。前記CPU内部バス2には、CPU1か
らの分岐命令とその種類を解読する分岐命令デコーダ3
と、分岐命令と判定された際にその分岐アドレスをラッ
チする分岐アドレスラッチ6とが接続されており、これ
らの分岐命令デコーダ3と分岐アドレスラッチ6には、
前記分岐命令の種類と分岐アドレスを一時的に蓄えるバ
ッファメモリ7が接続される。前記バッファメモリ7は
FIFO形成となっており、先に入力された情報から順
にパラレルシリアル変換回路8に渡され、順次外部に送
出される。また、前記した分岐命令の種類の一例を図2
に示す。この例では、PC相対分岐命令、レジスタ間接
命令による分岐、割込み命令/例外発生による分岐、条
件付分岐命令実行による分岐等を出力する。
【0009】この構成において、CPUコア1からマイ
クロコンピュータが実行する命令コードが出力される
と、これを命令デコーダ3がデコードして分岐命令であ
ること及びその分岐命令の種類を解読する。その上で、
分岐アドレスラッチ6は解読された分岐命令の分岐アド
レスをラッチし、一時的にバッファメモリ7に書き込
む。バッファメモリ7には前記分岐命令と分岐アドレス
が順次書き込まれ、容量が一杯になると、最初に書き込
まれたものから順にパラレルシリアル変換回路8に渡さ
れ、マイクロコンピュータのクロックに同期して外部に
送出される。そして、マイクロコンピュータの外部に設
けられたトレース用のメモリに記憶され、プログラムの
実行履歴として逆アセンブルやC言語のソース行と対応
をとることができる。
【0010】このように、本発明では、マイクロプロセ
ッサの実行状態を把握するのに、外部のアドレスバスを
トレースするのではなく、通常順次アップしてゆく実行
アドレスが変化されるとき、つまり、分岐命令の実行を
外部で捕らえることを可能としている。そのために、C
PUが分岐命令を実行することを検出し、マイクロプロ
セッサ外部に分岐命令と分岐アドレスを出力してトレー
ス可能としている。これにより、例えば、マイクロプロ
セッサ内部のキャッシュメモリとCPU間でアクセス処
理されて外部からは見えない命令が実行された場合で
も、プログラムの実行順序が外部でトレースすることが
可能となる。
【0011】図3は、本発明を利用したデバッグコント
ロール部のブロック図である。マイクロコンピュータの
ディバグコントロールユニット部のブロック図である。
CPUコア11からPCトレースバス12を介してアド
レスが出力され、その中でトレース制御部16にアドレ
スが入力される。同時に入力されるPCトレースバス1
2には、CPUコア部11で既に分岐命令や分岐命令の
種類も同時に出力され、トレース制御部16に入力され
る。トレース制御部16にはトレースバッファメモリ1
3が含まれており、FIFO形成で構成される。
【0012】また、トレース制御部16にはパラレルシ
リアル変換回路が含まれており、変換後トレースデータ
出力端子14(TRCDATA0〜3)より出力され
る。この出力は、CPCのクロックに同期した形でクロ
ック出力端15(CLKOUT)と共に出力される。図
4はその出力のタイミング図である。TRCDATA0
〜3には分岐アドレスと分岐命令の種類が出力される。
このため、外部に出力される分岐アドレスはシリアル信
号として出力されることになり、分岐アドレス出力端子
の数を大幅に減らすことができ、プロービングの本数を
低減して構成が簡略化でき、かつバス線に対する負荷の
増大やインピーダンスの変化を抑制して特性を改善す
る。
【0013】
【発明の効果】以上説明したように本発明は、CPCか
らの分岐命令の種類と分岐アドレスをメモリに蓄え、こ
れを外部に出力可能に構成しているので、キャッシュメ
モリにヒットしたプログラムの実行中もプログラムの流
れをトレースでき、正確なエミュレーションが実行でき
る。また、分岐アドレスの出力手段にパラレルシリアル
変換回路を含むことにより、外部出力用の端子数を大幅
に低減でき、構成の簡略化やバス特性の向上が可能とな
る。
【図面の簡単な説明】
【図1】本発明のマイクロプロセッサの一実施形態のブ
ロック図である。
【図2】分岐命令の種類の一例を示す図である。
【図3】本発明にかかるディバクコントロール部のブロ
ック図である。
【図4】本発明におけるトレースデータの出力タイミン
グ図である。
【図5】従来のインサーキットエミレータのブロック図
である。
【符号の説明】
1 CPU 2 CPU内部バス 3 分岐命令デコーダ 4 キャッシュメモリ 5 外部バスインターフェース 6 分岐アドレスラッチ 7 バッファメモリ 8 パラレルシリアル変換回路

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 メモリよりCPUへ読み込む命令が分岐
    命令であることを検出し、この分岐命令の種類と分岐ア
    ドレスを含む情報を外部に出力する機能を有するマイク
    ロプロセッサ。
  2. 【請求項2】 キャシュメモリを有するマイクロプロセ
    ッサにおいて、分岐命令の種類を解読する手段と、解読
    された分岐命令の分岐アドレスをラッチする手段と、前
    記分岐命令の種類と分岐アドレスを一時的に蓄えるメモ
    リと、この蓄えた情報を外部に出力する手段とを備える
    ことを特徴とするマイクロプロセッサ。
  3. 【請求項3】 前記情報を外部に出力する手段は、情報
    をクロック信号に同期してシリアル信号として出力する
    パラレルシリアル変換回路を含む請求項2に記載のマイ
    クロプロセッサ。
JP9192584A 1997-07-17 1997-07-17 マイクロプロセッサ Pending JPH1139193A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9192584A JPH1139193A (ja) 1997-07-17 1997-07-17 マイクロプロセッサ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9192584A JPH1139193A (ja) 1997-07-17 1997-07-17 マイクロプロセッサ

Publications (1)

Publication Number Publication Date
JPH1139193A true JPH1139193A (ja) 1999-02-12

Family

ID=16293720

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9192584A Pending JPH1139193A (ja) 1997-07-17 1997-07-17 マイクロプロセッサ

Country Status (1)

Country Link
JP (1) JPH1139193A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009031210A1 (ja) * 2007-09-05 2009-03-12 Fujitsu Limited 情報処理装置、情報処理装置の制御方法および制御プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009031210A1 (ja) * 2007-09-05 2009-03-12 Fujitsu Limited 情報処理装置、情報処理装置の制御方法および制御プログラム

Similar Documents

Publication Publication Date Title
US7533302B2 (en) Trace and debug method and system for a processor
US7689867B2 (en) Multiprocessor breakpoint
KR930008686B1 (ko) 정보 처리장치
KR0168656B1 (ko) 데이터 처리 시스템
EP0762280A1 (en) Data processor with built-in emulation circuit
JP2693678B2 (ja) データ処理装置
JPH09114697A (ja) データプロセッサ
JPH09218803A (ja) データプロセッサ
JPH09128265A (ja) データ処理システム
JP2003085000A (ja) トレース情報生成装置およびその方法
JP2002163127A (ja) トレース制御回路
JP2001051874A (ja) マイクロコンピュータ
CN111177067B (zh) 一种片上系统
US20040049665A1 (en) Trace control circuit adapted for high-speed microcomputer operation
US5421026A (en) Data processor for processing instruction after conditional branch instruction at high speed
JPH1139193A (ja) マイクロプロセッサ
CN114580329B (zh) 一种数字信号处理器芯片实时调试方法
JP2760228B2 (ja) キャッシュメモリを内蔵したマイクロプロセッサとそのトレースアナライザ
JPH08161191A (ja) インサーキットエミュレータ
KR100273280B1 (ko) 디버깅 로직 제어 회로
JPH08335177A (ja) プロセッサ動作観察方法及び装置
JPH1011290A (ja) マイクロプロセッサ
JPS6316350A (ja) マイクロプロセッサ
JP2923570B2 (ja) インサーキットエミュレータおよびマイクロプロセッサ
JPS6286442A (ja) デ−タ処理装置