JPH04319741A - デバッグサポート機能を有するマイクロプロセッサ - Google Patents

デバッグサポート機能を有するマイクロプロセッサ

Info

Publication number
JPH04319741A
JPH04319741A JP3112302A JP11230291A JPH04319741A JP H04319741 A JPH04319741 A JP H04319741A JP 3112302 A JP3112302 A JP 3112302A JP 11230291 A JP11230291 A JP 11230291A JP H04319741 A JPH04319741 A JP H04319741A
Authority
JP
Japan
Prior art keywords
instruction
branch
address
cache memory
hit
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
JP3112302A
Other languages
English (en)
Inventor
Toshikatsu Mori
俊勝 森
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 JP3112302A priority Critical patent/JPH04319741A/ja
Publication of JPH04319741A publication Critical patent/JPH04319741A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)
  • Advance Control (AREA)
  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、キャッシュメモリを内
蔵したマイクロプロセッサに関するものである。
【0002】
【従来の技術】一般に、マイクロプロセッサは命令フェ
ッチおよびオペランドフェッチをチップの入出力端子を
通じて外部のメモリをアクセスすることにより行う。従
ってデバッグ時には、チップの入出力端子をロジックア
ナライザなどでモニタすればプロセッサがどのような命
令シーケンスを実行しているかを把握することができる
【0003】
【発明が解決しようとする課題】しかし、マイクロプロ
セッサもキャッシュメモリを内蔵したものが登場してき
ており、そのようなマイクロプロセッサでは、内蔵のキ
ャッシュメモリでヒットし、キャッシュメモリがアクセ
スされている状態では、外部のメモリはアクセスされな
い。そのため、上述のような方法ではどのような命令シ
ーケンスが実行されているかを把握することはできない
【0004】もちろん、デバッグ時に内蔵キャッシュメ
モリの使用を止め、外部メモリがアクセスされるように
して命令シーケンスをたどることは可能である。しかし
その場合にはマイクロプロセッサの動作速度が低下する
ので、実際の使用状態でマイクロプロセッサをデバッグ
することはできない。また、内蔵キャッシュメモリを用
いたときのみに発生するような障害の解析には役立たな
い。従って、デバッグの初期の段階でしかこのような方
法を用いることはできない。
【0005】本発明の目的は、このような問題を解決し
、キャッシュメモリから命令がフェッチされる場合でも
どのような命令シーケンスが実行されているかを把握で
きるようにしたデバッグサポート機能を有するマイクロ
プロセッサを提供することにある。
【0006】
【課題を解決するための手段】本発明は、キャッシュメ
モリを内蔵したマイクロプロセッサにおいて、分岐命令
による分岐の後、最初に命令コードがフェッチされると
き、分岐後の最初の命令フェッチであることを示す第1
の表示信号を外部に出力する第1の表示信号送出手段と
、前記分岐後の最初の命令フェッチで前記キャッシュメ
モリがアクセスされ、そのアクセスがヒットした場合、
そのことを示す第2の表示信号を外部に出力する第2の
表示信号送出手段と、前記分岐後の最初の命令フェッチ
で前記キャッシュメモリがアクセスされ、そのアクセス
がヒットした場合、アクセスされた前記キャッシュメモ
リのアドレスを外部に出力するアドレス送出手段とを備
えたことを特徴とする。
【0007】
【実施例】次に本発明の実施例について図面を参照して
説明する。図1に本発明によるデバッグサポート機能を
有するマイクロプロセッサの一例を示す。バスインター
フェース部1は、外部との間で信号を授受するためのも
ので、特に、外部アドレスバス17および外部データバ
ス20によって外部のメインメモリに接続されている。
【0008】キャッシュメモリ部2はこのマイクロプロ
セッサに内蔵されたキャッシュメモリであり、命令プリ
フェッチ部3によってアクセスされ、そのアクセスがヒ
ットしたかあるいはミスヒットとなったかを示すヒット
/ミスヒット表示信号bをバスインターフェース部1に
出力する。
【0009】命令プリフェッチ部3は、命令のフェッチ
要求が発生すると、まずアドレスをアドレスバス10を
通じてキャッシュメモリ部2に与える。そのアクセスが
ヒットした場合にはキャッシュメモリ部2からデータバ
ス12を通じて命令コードおよびその他のデータを受け
取り、一方、ミスヒットとなった場合には、バスインタ
ーフェース部1を通じて上記メインメモリから命令コー
ドおよびその他のデータを受け取る。また、後述する分
岐先のアドレスが分岐アドレスバス11を通じて演算実
行部5から与えられた場合には、この新しいアドレスに
よりキャッシュメモリ部2を参照し、同時にバスインタ
ーフェース部1に分岐後の命令フェッチであることを示
す信号を出力する。
【0010】命令デコーダ・アドレス計算部4は命令用
データバス13を通じて命令プリフェッチ部3から命令
コードを受け取ると、演算実行部5で実行可能な命令形
式に変換し、そして演算実行に必要なオペランドに対す
るアドレスを計算する。
【0011】演算実行部5は、命令デコーダ・アドレス
計算部4から命令コードおよびオペランドのアドレスを
受け取り、受け取ったアドレスにもとづいてオペランド
がメモリ上のデータか否かを判定し、メモリ上のデータ
であればアドレスバス10およびデータバス12を通じ
てキャッシュメモリ部2を参照し、ヒットした場合には
キャッシュメモリ部2よりデータを受け取り、一方、ミ
スヒットした場合にはインターフェース部1を通じてメ
インメモリよりデータを受け取る。
【0012】また、受け取った命令コードが分岐命令を
表す場合には、必要に応じて分岐条件を調べ、分岐が必
要な場合には分岐先のアドレスを分岐アドレスバス11
を通じて命令プリフェッチ部3に送る。
【0013】ここでバスインターフェース部1の本発明
に特に関連した機能を説明すると、バスインターフェー
ス部1は、命令プリフェッチ部3から分岐後の命令フェ
ッチであることを示す信号を受け取った場合には、分岐
後最初に行われた命令フェッチであることを示す分岐表
示信号dを外部に出力し、また、このときキャッシュメ
モリ部2からヒット/ミスヒット表示信号を受け取り、
それがヒットを表している場合にはヒット表示信号cを
外部に出力し、かつそのときキャッシュメモリ部2に与
えられているアドレスをアドレスバス10を通じて受け
取り、それを外部アドレスバス17に出力する。
【0014】次に図2を用いて命令シーケンスをトレー
スする場合の動作を説明する。図2において、ブロック
A,B,Cはシーケンシャルな命令列により構成されて
おり、ブロックAのプログラム実行後の分岐命令Jの結
果によって、ブロックBを実行するか否かが決定される
【0015】命令プリフェッチ部3がメモリから分岐命
令Jを受け取ると、それを命令用データバス13を通じ
て命令デコーダ・アドレス計算部4に出力する。命令デ
コーダ・アドレス計算部4は、分岐命令を演算実行部5
で実行可能な命令形式に変換し、そして演算実行に必要
なオペランドに対するアドレスを計算する。
【0016】演算実行部5は、命令デコーダ・アドレス
計算部4から命令コードおよびオペランドのアドレスを
受け取るが、この場合、受け取った命令コードが分岐命
令を表すので、その分岐条件を調べる。ここで分岐が必
要であったとすると、分岐先のアドレス、すなわち、ブ
ロックCの先頭のアドレスを分岐アドレスバス11を通
じて命令プリフェッチ部3に送る。
【0017】命令プリフェッチ部3は、このアドレスに
よりキャッシュメモリ部2を参照し、同時にバスインタ
ーフェース部1に分岐後の命令フェッチであることを示
す信号aを出力する。そして、命令プリフェッチ部3が
キャッシュメモリ部2をアクセスし、それがヒットした
場合には、キャッシュメモリ部2はそのことを示すヒッ
ト/ミスヒット表示信号bを出力する。
【0018】バスインターフェース部1はこれらの信号
を受け、分岐後最初に行われた命令フェッチであること
を示す分岐表示信号dを外部に出力し、またキャッシュ
メモリ部2へのアクセスがヒットしたことを示すヒット
表示信号cを外部に出力する。さらにバスインターフェ
ース部1はそのときキャッシュメモリ部2に与えられて
いるアドレスをアドレスバス10を通じて受け取り、そ
れを外部アドレスバス17に出力する。
【0019】従って、分岐命令JによってブロックCに
分岐された場合には、分岐表示信号dによってそのこと
を知ることができ、またヒット表示信号cによって分岐
後最初の命令フェッチがキャッシュメモリ部2に対して
行われ、それがヒットしたことを知ることができる。さ
らにそのときキャッシュメモリ部2でアクセスされたア
ドレスは外部アドレスバス17を通じて知ることができ
る。
【0020】一方、命令プリフェッチ部3がキャッシュ
メモリ部2をアクセスし、それがミスヒットとなった場
合には、キャッシュメモリ部2はそのことを示すヒット
/ミスヒット表示信号bを出力する。従ってバスインタ
ーフェース部1はヒット表示信号cは出力せず、命令プ
リフェッチ部3が出力しているアドレスを外部アドレス
17を通じてメインメモリに与える。
【0021】すなわち、分岐命令JによってブロックC
に分岐されたが、キャッシュメモリ部2へのアクセスは
ヒットしなかった場合には、ブロックCに分岐したこと
は分岐表示信号dによって、また分岐後最初の命令フェ
ッチがキャッシュメモリ部2に対して行われたが、それ
がヒットしなかったはヒット表示信号が出力されないこ
とでそれぞれ知ることができる。さらにそのときメイン
メモリでアクセスされたアドレスは外部アドレスバス1
7を通じて知ることができる。
【0022】また、分岐命令JによってブロックCに分
岐されない場合には、演算実行部5は分岐先のアドレス
を出力せず、従って命令プリフェッチ部3はバスインタ
ーフェース部1に分岐後の命令フェッチであることを示
す信号aは出力しない。そのため、バスインターフェー
ス部1は分岐表示信号dを出力しない。
【0023】このように本実施例のデバッグサポート機
能を有するマイクロプロセッサでは、命令シーケンスの
過程で分岐が行われたか否か、および分岐後最初の命令
フェッチがキャッシュメモリ部2でヒットしたか否かを
それぞれ分岐表示信号dおよびヒット表示信号cによっ
て外部でモニタでき、またメインメモリでアクセスされ
るアドレスだけでなくキャッシュメモリ部2でアクセス
されるアドレスも外部アドレスバスを通じて知ることが
できる。
【0024】
【発明の効果】以上説明したように本発明は、キャッシ
ュメモリを内蔵したマイクロプロセッサにおいて、分岐
命令による分岐の後、最初に命令コードがフェッチされ
るとき、分岐後の最初の命令フェッチであることを示す
第1の表示信号を外部に出力する第1の表示信号送出手
段と、分岐後の最初の命令フェッチでキャッシュメモリ
がアクセスされ、そのアクセスがヒットした場合、その
ことを示す第2の表示信号を外部に出力する第2の表示
信号送出手段と、分岐後の最初の命令フェッチでキャッ
シュメモリがアクセスされ、そのアクセスがヒットした
場合、アクセスされたキャッシュメモリのアドレスを外
部に出力するアドレス送出手段とを備えている。
【0025】従って本発明のデバッグサポート機能を有
するマイクロプロセッサでは、命令シーケンスの過程で
分岐が行われたか否か、および分岐後最初の命令フェッ
チがキャッシュメモリでヒットしたか否かをそれぞれ第
1および第2の表示信号によって外部でモニタでき、ま
たメインメモリでアクセスされるアドレスだけでなくキ
ャッシュメモリでアクセスされるアドレスも外部で知る
ことができる。その結果、キャッシュメモリから命令が
フェッチされる場合でも、どのような命令シーケンスが
実行されているかを把握することが可能となる。
【図面の簡単な説明】
【図1】本発明によるデバッグサポート機能を有するマ
イクロプロセッサの一例を示すブロック図である。
【図2】図1のマイクロプロセッサが実行する命令シー
ケンスの一例を示すフローチャートである。
【符号の説明】
1  バスインターフェース部 2  キャッシュメモリ部 3  命令プリフェッチ部 4  命令デコーダ・アドレス計算部 5  演算実行部 10  アドレスバス 11  分岐アドレスバス 12  データバス 13,14  命令用データバス 17  外部アドレスバス

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】キャッシュメモリを内蔵したマイクロプロ
    セッサにおいて、分岐命令による分岐の後、最初に命令
    コードがフェッチされるとき、分岐後の最初の命令フェ
    ッチであることを示す第1の表示信号を外部に出力する
    第1の表示信号送出手段と、  前記分岐後の最初の命
    令フェッチで前記キャッシュメモリがアクセスされ、そ
    のアクセスがヒットした場合、そのことを示す第2の表
    示信号を外部に出力する第2の表示信号送出手段と、前
    記分岐後の最初の命令フェッチで前記キャッシュメモリ
    がアクセスされ、そのアクセスがヒットした場合、アク
    セスされた前記キャッシュメモリのアドレスを外部に出
    力するアドレス送出手段とを備えたことを特徴とするデ
    バッグサポート機能を有するマイクロプロセッサ。
  2. 【請求項2】前記キャッシュメモリはマイクロプロセッ
    サ本体と同一のチップに実装されていることを特徴とす
    る請求項1記載のデバッグサポート機能を有するマイク
    ロプロセッサ。
  3. 【請求項3】前記第1および第2の表示信号送出手段お
    よびアドレス送出手段は、外部との間で信号のやり取り
    を行うバスインターフェース部に設けられていることを
    特徴とする請求項1または請求項2記載のデバッグサポ
    ート機能を有するマイクロプロセッサ。
JP3112302A 1991-04-18 1991-04-18 デバッグサポート機能を有するマイクロプロセッサ Pending JPH04319741A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3112302A JPH04319741A (ja) 1991-04-18 1991-04-18 デバッグサポート機能を有するマイクロプロセッサ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3112302A JPH04319741A (ja) 1991-04-18 1991-04-18 デバッグサポート機能を有するマイクロプロセッサ

Publications (1)

Publication Number Publication Date
JPH04319741A true JPH04319741A (ja) 1992-11-10

Family

ID=14583281

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3112302A Pending JPH04319741A (ja) 1991-04-18 1991-04-18 デバッグサポート機能を有するマイクロプロセッサ

Country Status (1)

Country Link
JP (1) JPH04319741A (ja)

Similar Documents

Publication Publication Date Title
US5560036A (en) Data processing having incircuit emulation function
JP4190114B2 (ja) マイクロコンピュータ
US5479616A (en) Exception handling for prefetched instruction bytes using valid bits to identify instructions that will cause an exception
JP5788370B2 (ja) プロセッサ命令セット動作モードを比較するデバッグ回路
US6754856B2 (en) Memory access debug facility
EP1003095A2 (en) A computer system for executing branch instructions
US20060117224A1 (en) Trace and debug method and system for a processor
KR19980032859A (ko) 데이타 프로세서 및 데이타 처리시스템
US5502827A (en) Pipelined data processor for floating point and integer operation with exception handling
JPH1124959A (ja) マイクロプロセッサのトレース情報出力方法
JPH04319741A (ja) デバッグサポート機能を有するマイクロプロセッサ
JP2760228B2 (ja) キャッシュメモリを内蔵したマイクロプロセッサとそのトレースアナライザ
JP3394854B2 (ja) 無条件ジャンプ命令処理方法並びにそのための無条件ジャンプ命令処理装置及び汎用レジスタ
JPS62197831A (ja) デ−タ処理装置
EP0525672A2 (en) Microprocessor with program tracing
JP2535984B2 (ja) 命令実行検出装置
JPH06103109A (ja) データプロセッサ、及びこれを用いるデバッグ装置
JP2666737B2 (ja) トレースメモリ内蔵マイクロプロセッサおよびトレース方法
JP3210171B2 (ja) データ処理装置
JPH05120071A (ja) データ処理装置
JPH06202907A (ja) デバッグ支援装置
CN114580329A (zh) 一种数字信号处理器芯片实时调试方法
JP3590289B2 (ja) イベント検出回路
JPH0675858A (ja) キャッシュ内蔵マイクロプロセッサ及びそのトレースシステム
JPH1011290A (ja) マイクロプロセッサ