JPH0724032B2 - デバツグ用マイクロプロセツサ - Google Patents

デバツグ用マイクロプロセツサ

Info

Publication number
JPH0724032B2
JPH0724032B2 JP61203011A JP20301186A JPH0724032B2 JP H0724032 B2 JPH0724032 B2 JP H0724032B2 JP 61203011 A JP61203011 A JP 61203011A JP 20301186 A JP20301186 A JP 20301186A JP H0724032 B2 JPH0724032 B2 JP H0724032B2
Authority
JP
Japan
Prior art keywords
microprocessor
debug
interrupt
program
instruction
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.)
Expired - Lifetime
Application number
JP61203011A
Other languages
English (en)
Other versions
JPS6358548A (ja
Inventor
庸夫 小池
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 JP61203011A priority Critical patent/JPH0724032B2/ja
Publication of JPS6358548A publication Critical patent/JPS6358548A/ja
Publication of JPH0724032B2 publication Critical patent/JPH0724032B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はデバッグ対象システムのデバッグを行なうマイ
クロプロセッサ開発支援装置に使用されるデバッグ用マ
イクロプロセッサに関し、特に前記デバッグ用マイクロ
プロセッサがデバッグ対象プログラムの実行状態からメ
モリ、レジスタなどの内容の表示、変更を行なうデバッ
グプログラムの実行へ遷移する時う機能に関する。
〔従来の技術〕
まず、本デバッグ用マイクロプロセッサが使用されるマ
イクロプロセッサ開発支援装置とデバッグ対称システム
の接続の概要を第4図を用いて説明する。デバッグ対称
システム39に実装されるマイクロプロセッサの代わりに
コネクタ38、ケーブル37を介してマイクロプロセッサ開
発支援装置27が接続される。マイクロプロセッサ開発支
援装置27にはデバッグ用マイクロプロセッサ1の他に、
コントロール部など(本発明と直接関係がないので省略
した)があり、デバッグ対称システム39に実装されるべ
きマイクロプロセッサの代わりにデバッグ対象プログラ
ムの実行と、そのデバッグを行なう機能を有する。この
ためデバッグ用マイクロプロセッサ1は、デバッグ対象
システム39上のメモリにあるプログラム(通常マイクロ
プロセッサ開発支援装置27内に前記メモリを仮想的に配
置することも可能ではあるが、本発明とは直接関係がな
いので省略する)の実行と、マイクロプロセッサ開発支
援装置27内の別バンクにあるデバッグ機能を有したデバ
ッグプログラムが書き込まれているメモリの実行を行わ
なければならない。
従来、この種のデバッグ用マイクロプロセッサとして本
来デバッグ対象システム39上に接続すべきマイクロプロ
セッサ(以下本来のマイクロプロセッサと称す)を使用
し、ある条件でその実行を中断し(以下ブレークと称
す)、マイクロプロセッサ開発支援装置27上にあるデバ
ッグプログラムへ制御を移す為に、本来のマイクロプロ
セッサが持っているマスク不可能割り込み(以下NMIと
称す)を使ってブレーク動作を実現していた。
第5図は本来のマイクロプロセッサの内部ブロック図で
ある。バス制御部2はアドレスバス6とデータバス7と
制御バス8を制御し、命令を読み込み、命令バッファ3
へ格納する。命令実行部4はその内部にプログラムカウ
ンタ4−2′(以下PCを記述することもある)とマイク
ロプロセッサ内部状態情報4−1(以下プログラムステ
ータスワード:PSWと称す)を持ち、これにもとずいて命
令バッファ3から命令を受け取り、順次実行してゆく。
命令実行部はプログラムカウンタ4−2′の命令を命令
バッファ3から順次受け取り、命令を受け取る度にプロ
グラムカウンタ4−2′の内容は次に実行されるプログ
ラムの値に、更新される。すなわち、命令が実行されて
いる時点でのプログラムカウンタ4−2′の内容は次に
実行されるべき命令のマドレスを示している。命令バッ
ファ制御部11はバス制御部2と命令実行部4′からの情
報10−1,10−2により、命令バッファ3内に取り込まれ
ている命令数をマイクロプロセッサ外部へ信号線12を通
して通知する。また割り込み制御部5′は割り込み端子
(NMI14)からの割り込み要求を命令実行部4′は、プ
ログラムカウンタ4−2′の内容とプログラムステータ
スワード4−1とをバス制御部2る通じてメモリへ退避
させ、次に所定の命令を実行する。
このような動作をする本来のマイクロプロセッサをデバ
ッグ用マイクロプロセッサとして使用した場合のマイク
ロプロセッサ開発支援装置は、第7図の構成となる。マ
イクロプロセッサ開発支援装置27′は、本来のマイクロ
プロセッサ1′、制御部19′、デバッグプログラム用メ
モリ16、NMI退避メモリ17′、NMI退避タイミング制御部
18、デバッグ対象システムからのNMI26と制御部19′か
らのブレーク要求信号25とを選択する選択回路46などか
ら構成されている。デバッグ対象プログラムの実行状態
からデバッグプログラムの実行状態へ遷移させるブレー
ク動作は、マイクロプロセッサ開発支援装置27′がメモ
リバンクをNMI退避メモリ17′へ切り替え、ブレーク要
求信号25を通じてNMI14をアクティブとし、デバッグ用
マイクロプロセッサ1′(すなわち本来のマイクロプロ
セッサ)が退避する情報(プログラムカウンタ及びプロ
グラムステータスワード)をNMI退避メモリ17′へ格納
し、次に別バンクにあるデバッグプログラムメモリ16を
本来のマイクロプロセッサ1′に与え、デバッグプログ
ラムを起動することにより実行される。NMI退避タイミ
ング制御部18及び制御部19′は、以上の動作の制御を行
なっている。また命令バッファステータス制御部44はブ
レーク動作が発生した時点で実行していた命令を命令バ
ッファ制御信号12とNMI退避メモリ17′へ退避されたプ
ログラムカウンタの情報から換算し、その情報を制御部
19′へ知らせる機能を持たなければならなかった。
〔発明が解決しようとする問題点〕
上述したように、デバッグ用マイクロプロセッサとし
て、本来のマイクロプロセッサを使用した場合、命令バ
ッファを持つために、マイクロプロセッサが命令を読み
取る時刻と命令を実行する時刻が異なり、これを調整す
る機能、及びデバッグ対象システムからのNMIとブレー
ク要求信号を選択するための選択回路がマイクロプロセ
ッサ開発支援装置に必要となり、マイクロプロセッサ開
発支援装置の構成を複雑化していた。
〔問題点を解決するための手段〕
本発明のデバッグ用マイクロプロセッサはマイクロプロ
セッサ開発支援装置に使用するデバッグ用マイクロプロ
セッサとして、本来のマイクロプロセッサの機能に加え
て本来のマイクロプロセッサが有する割り込み機能より
優先順位の高いデバッグ用割り込み機能を有し、前記デ
バッグ用割り込みにより生じるデバッグ用マイクロプロ
セッサの内部情報の退避動作において、前記デバッグ用
割り込み処理が終了した時点で実行が再開されるべきプ
ログラムカウンタの情報の他に前記デバック用割り込み
のかかった時に実行していた命令のプログラムカウンタ
の情報をも退避する機能を有している。
〔実施例〕
次に本発明について図面を参照して説明する。第1図は
本発明の一実施例を示すデバッグ用マイクロプロセッサ
のブロック図である。第5図の本来のマイクロプロセッ
サとの違いは割り込み制御部5にデバッグ用割り込み13
がつき、また命令実行部4に従来のプログラムカウンタ
4−2(以下PCnextと記述する)に加えて2つめのプロ
グラムカウンタ4−3(以下PCcurrentと記述する)が
ついた点である。命令実行部はPCnext4−2を使って命
令を読み出すとPCcurrent4−3へPCnext4−2の値をコ
ピーし、続いてPCnext4−2を次に実行するプログラム
カウンタの値へセットする。すなわち、PCnext4−2は
次に実行されるべきプログラムカウンタについての情報
を、PCcurrent4−3は現在実行されているプログラムカ
ウンタについての情報を持っていることになる。また命
令実行部4はデバッグ用割り込み13がアクティブとなっ
たことを割り込み制御部5から通知されると、バス制御
部2を通してPSW4−1、PCnext4−2(本来のマイクロ
プロセッサにおけるPC4−2′と同じ)、PCcurrent4−
3の3つの情報を退避する機能を持っている。
本デバッグ用マイクロプロセッサを用いたマイクロプロ
セッサ開発支援装置のブロック図を第2図に示す。従来
のマイクロプロセッサ開発支援装置7のブロック図との
違いは命令バッファステータス制御部44と、デバッグ対
象システムからの割り込みと制御部からの割り込み(ブ
レーク要求信号)との選択回路46がなくなったことであ
る。制御部19からのブレーク要求信号25はデバッグ用マ
イクロプロセッサのデバッグ用割り込み13へ加えられ
る。ブレークが発生すると制御部19ブレークタイミング
制御部18によって、メモリバンクがブレーク退避メモリ
17(機能的にはNMI退避メモリ17′と同等)へ切り替え
られ、PSW4−1、PCnext4−2、PCcurrent4−3の情報
がブレーク退避メモリ17へ書き込まれ、次にデバッグプ
ログラムメモリ16へバンクが切り替えられ、デバッグプ
ログラムが動作する。この時既に、ブレークがかかった
時点で実行されていれ命令のプログラムカウンタの情報
(PCcurrent4−3)はブレーク退避メモリ17へ格納され
ており、命令バッファステータス制御部44がこの情報を
換算する必要がない。またデバッグ用割り込み13がNMI1
4と独立したため、デバッグ対象システム39からのNMI26
と制御部19からのブレーク要求信号25とを選択する必要
はない。
次に、本発明の他の実施例について説明する。第6図は
マイクロプロセッサの一構成図である。最近のマイクロ
プロセッサでは、機能が複雑な為、マイクロコード40と
呼ばれる制御プログラムをマイクロプロセッサ1,1′内
部に持ち、簡単な機能の回路の集合体であるハードウェ
ア42を、このマイクロコード40で制御してマイクロプロ
セッサを動作させているものである。
このようなマイクロコードによる制御を行なうマイクロ
プロセッサにおいて、本来のマイクロプロセッサが持つ
NMIの機能は第8図に示すようなマイクロコードで構成
されている。割り込みを検出するとスタックポインタ
(SPと記述する)と呼ばれるポインタを用いてプログラ
ムステータスワード、プログラムカウンタの内容をポイ
ンタが指す場所へ退避する。NMIを検出する(47)と、
まずSPがインクリメントされ(48)、SPのさすメモリへ
プログラムステータスワードの内容を書き込む。(49)
次に、再度SPをインクリメントし(50)、そこへプログ
ラムカウンタの内容を書き込む。(51)その後、プログ
ラムカウンタを所定のエントリーの値にセットして(5
2)、割り込みエントリーへ制御を移す(53)。このと
き、この本来のマイクロプロセッサを用いたマイクロプ
ロセッサ開発支援装置の動作は実施例1におけるマイク
ロプロセッサ開発支援装置27′と同じである。
第3図は本実施例におけるデバッグ用割り込みの機能を
実行させるマイクロコードをしめしたいものである。デ
バッグ用割り込みを検出する(28)と、まずSPがインク
リメントされ(29)、SPのさすメモリへプログラムステ
ータスワードの内容を書き込む(30)。次に、再度SPを
インクリメントし(31)、そこへPCnextの値を書き込み
(32)、さらに、SPをインクリメントし(33)、そこへ
PCcurrentの値を書き込む(34)。最後にプログラムカ
ウンタに所定のエントリーの値をセットして(35)、制
御を割り込みエントリーへ移す(36)。
〔発明の効果〕
以上説明したように本発明は、デバッグ用割り込みを持
ち、デバッグ用割り込み時にPSW、PCnext、PCcurrentを
退避する機能を持つデバッグ用マイクロプロセッサをマ
イクロプロセッサ開発支援装置に搭載することにより、
命令バッファステータス制御部、デバッグ対象システム
とブレーク要求信号の選択回路を持つ必要がなくなり、
マイクロプロセッサ開発支援装置を簡単に構成すること
ができる。
【図面の簡単な説明】
第1図は本発明によるデバッグ用マイクロプロセッサの
一実施例の機能ブロック図、第2図は本発明によるデバ
ッグ用マイクロプロセッサを用いたマイクロプロセッサ
開発支援装置の機能ブロック図、第3図は本発明で用い
るマイクロコードによる処理フロー図、第4図はマイク
ロプロセッサ開発支援装置とデバッグ対象システムの接
続図、第5図は従来のマイクロプロセッサの機能ブロッ
ク図、第6図はマイクロコードによって実現されるマイ
クロプロセッサのブロック図、第7図は本来のマイクロ
プロセッサを用いたマイクロプロセッサ開発支援装置の
一例を示す構成図、第8図はマイクロコードによって実
現される本来のマイクロプロセッサのNMIの動作を示す
シーケンスフロー図である。 1……デバッグ用マイクロプロセッサ、1′……本来の
マイクロプロセッサ、2……バス制御部、3……命令バ
ッファ、4……命令実行部、4−1……プログラムステ
ータスワード、4−2……次に実行されるプログラムカ
ウンタ(PCnext)、4−2′……次に実行されるプログ
ラムカウンタ(PC)、4−3……現在実行されているプ
ログラムカウンタ(PCcurrent)、5……割り込み制御
部、6……アンレスバス、7……データバス、8……制
御バス、9……アドレスバス、9−1,9−2……命令バ
ス、10−1,10−2……命令バッファ制御部入力信号、11
……命令バッファ制御部、12……命令バッファ制御部出
力信号、13……デバッグ用割り込み、14……マスク不可
能割り込み(NMI)、15……割り込み制御バス、16……
デバッグプログラム用メモリ(デバッグプログラムがの
っている)、17……ブレーク退避メモリ、17′……NMI
退避メモリ(17と機能的に同じ)、18……ブレーク退避
タイミング制御部、19,19′……制御部、20……デバッ
グ対象プログラムメモリ、21−1,21−2……バッファ、
メモリ選択信号、22−1,22−2,22−3……アクセス信
号、23−1,23−2……バッファ、24−1,24−2……イン
バータ、25……ブレーク要求信号、26……デバッグ対象
システムからのNMI、27,27′……マイクロプロセッサ開
発支援装置、28−36……デバッグ用割り込み処理手順
(マイクロコードによる処理)、37……ケーブル、38…
…コネクタ、39……デバッグ対象システム、40……マイ
クロコード、41……マイクロコード制御バス、42……ハ
ードウェア、43……マイクロプロセッサ信号、44……命
令バッファステータス制御部、45……命令バッファステ
ータス制御部出力信号、46……選択回路、47−53……NM
I処理手順(マイクロコードによる処理)。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】実行されるべき命令を指定するプログラム
    カウンタの内容と内部状態を表わす情報とをメモリへ退
    避する機能と、割り込み機能とを有るマイクロプロセッ
    サにおいて、前記割り込み機能より優先順位の高いデバ
    ッグ用割り込み機能を有する割込み制御部と、前記デバ
    ッグ用割り込み時に、前記プログラムカウンタの内容と
    前記内部状態を表わす情報との退避動作に加えて、前記
    デバッグ用割り込みが発生した時点で実行されていた命
    令を指定するプログラムカウンタの内容をも退避させる
    機能を有する命令実行部とを有することを特徴とするデ
    バッグ用マイクロプロセッサ。
JP61203011A 1986-08-28 1986-08-28 デバツグ用マイクロプロセツサ Expired - Lifetime JPH0724032B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61203011A JPH0724032B2 (ja) 1986-08-28 1986-08-28 デバツグ用マイクロプロセツサ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61203011A JPH0724032B2 (ja) 1986-08-28 1986-08-28 デバツグ用マイクロプロセツサ

Publications (2)

Publication Number Publication Date
JPS6358548A JPS6358548A (ja) 1988-03-14
JPH0724032B2 true JPH0724032B2 (ja) 1995-03-15

Family

ID=16466858

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61203011A Expired - Lifetime JPH0724032B2 (ja) 1986-08-28 1986-08-28 デバツグ用マイクロプロセツサ

Country Status (1)

Country Link
JP (1) JPH0724032B2 (ja)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61221943A (ja) * 1985-03-28 1986-10-02 Canon Inc 演算処理装置

Also Published As

Publication number Publication date
JPS6358548A (ja) 1988-03-14

Similar Documents

Publication Publication Date Title
US4881228A (en) Debugging microprocessor
US6301657B1 (en) System and method for booting a computer
EP0313097B1 (en) Microcomputer system including master processor and slave processor
EP0290942B1 (en) Guest machine execution control system for virtual machine system
JPH0724032B2 (ja) デバツグ用マイクロプロセツサ
JP2000339189A (ja) 不正なメモリアクセスを検出する方法、デバッグ装置および記録媒体
JPH0552535B2 (ja)
JPH07152598A (ja) インサーキット・エミュレータ
JPS61260338A (ja) メモリダンプ方式
JP2954006B2 (ja) エミュレーション装置およびエミュレーション方法
JPH0682323B2 (ja) デバッグ用マイクロプロセッサ
JP2665173B2 (ja) プロセッサトラップ回路
JPH06266630A (ja) トレース機能付き入出力制御装置
JP2558902B2 (ja) 半導体集積回路装置
JPH0232651B2 (ja)
JPH0333939A (ja) マイクロプロセッサ
JPH02183342A (ja) 割込み制御装置
JPH0193838A (ja) デバッグ用マイクロプロセッサ
JPS62107354A (ja) マイクロプログラム制御装置
JPH04199336A (ja) マイクロコンピュータ
JP2000347898A (ja) ソフトウェア開発支援装置
JPH0282318A (ja) 浮動小数点演算装置
JPH05274142A (ja) 命令疑似実行装置
JPH05241828A (ja) 命令処理装置
JPH0346053A (ja) 複プロセッサ間制御方式