JPH1165883A - デバッグ機能内蔵マイクロプロセッサ - Google Patents

デバッグ機能内蔵マイクロプロセッサ

Info

Publication number
JPH1165883A
JPH1165883A JP9216549A JP21654997A JPH1165883A JP H1165883 A JPH1165883 A JP H1165883A JP 9216549 A JP9216549 A JP 9216549A JP 21654997 A JP21654997 A JP 21654997A JP H1165883 A JPH1165883 A JP H1165883A
Authority
JP
Japan
Prior art keywords
gate
signal output
signal
output
register set
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
JP9216549A
Other languages
English (en)
Inventor
Sumitomo Inagaki
純知 稲垣
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 JP9216549A priority Critical patent/JPH1165883A/ja
Publication of JPH1165883A publication Critical patent/JPH1165883A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Microcomputers (AREA)

Abstract

(57)【要約】 【課題】 動作タイミングを乱すことなくレジスタ値を
高速に読み出すことが可能なデバッグ機能内蔵マイクロ
プロセッサを提供する。 【解決手段】 命令実行回路5aがデバッグ機能内蔵マ
イクロプロセッサ1aの動作を制御するための少なくと
も1以上の制御信号を出力し、レジスタセット3が命令
実行回路5aから出力されたデータを格納し、退避レジ
スタセット4がスーパーバイザ12から直接読み書きが
でき、かつ、レジスタセット値を退避可能であり、デバ
ッグ割り込みの実行中、若しくは、目的の条件が成立し
た時に、命令実行に同期してレジスタセット3の値が退
避レジスタセット4にコピーされ、また、デバッグ割り
込み状態から戻る命令の実行中に、退避レジスタセット
4の値がレジスタセット3へコピーされる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、デバッグ機能内蔵
マイクロプロセッサに関し、特にユーザプログラム実行
中にデバッグ機能を実行することの可能なデバッグ機能
内蔵マイクロプロセッサに関する。
【0002】
【従来の技術】従来、マイクロプロセッサの発達に従っ
て、マイクロプセッサにより各種機器を制御する方法が
用いられている。それに伴い、マイクロプロセッサに求
められる機能としてデバッグ機能を内蔵したデバッグ機
能内蔵マイクロプロセッサが多用されている。
【0003】従来、この種のデバッグ機能内蔵マイクロ
プロセッサは、ユーザプログラム実行中の任意の状態に
おけるレジスタ値を得る手段として、例えば、「マイコ
ン開発のすべて」(コンピュータ・デザイン編集部編、
電波新聞社発行)のp84に記載されているように、ユ
ーザプログラム実行中にデバッグの割り込みを実行し、
このデバッグ割り込みルーチンに用意されたレジスタ読
み出しシーケンスを実行するという方式がとられてい
た。
【0004】上述の、従来のデバッグ機能内蔵マイクロ
プロセッサを図面を参照して説明する。図8に、従来の
デバッグ機能内蔵マイクロプロセッサのブロック図を示
す。
【0005】図8に示すように、この従来のデバッグ機
能内蔵マイクロプロセッサは、マイクロプロセッサ1b
内部の動作を制御する命令実行回路5bと、記憶素子と
しての内部RAM2と、レジスタセット74と、デバッ
グの割り込み状態を判定するためのデバッグ割り込み状
態判定回路7と、内部デバッグ割り込み信号生成回路8
と、要因フラグ73とから構成されている。
【0006】また、このデバッグ機能内蔵マイクロプロ
セッサ1bの外部に接続される部材として、図8に示さ
れるように、信号EXTSVIをデバッグ割り込み状態
判定回路7に出力する外部デバッグ割り込み信号生成回
路11と、スーパーバイザ12と、命令実行回路5b、
及び内部デバッグ割り込み信号生成回路8に、クロック
信号SCLKを出力する発振器13とが接続されてい
る。
【0007】ここで、図8に示されるデバッグ機能内蔵
マイクロプロセッサ1bを構成する部材のうち、デバッ
グ割り込み状態判定回路7、レジスタセット74、内部
デバッグ割り込み信号生成回路8、及び要因フラグ73
の構成について、それぞれ、図5、図9、図10、及び
図11を参照して説明する。
【0008】まず、図5を参照して、デバッグ割り込み
状態判定回路7の構成を説明する。図5は、本発明に係
るデバッグ機能内蔵マイクロプロセッサに用いられるデ
バッグ割り込み状態判定回路7の構成を示すブロック図
であるが、この図5に示されるデバッグ割り込み状態判
定回路7は、従来のデバッグ機能内蔵マイクロプロセッ
サ1b、及び本発明に係るデバッグ機能内蔵マイクロプ
ロセッサに共通に用いられているものである。
【0009】図5に示されるように、このデバッグ割り
込み状態判定回路7は、内部デバッグ割り込み信号生成
回路8から出力された信号INTSVIと、外部デバッ
グ割り込み信号生成回路11から出力された信号EXT
SVIとをそれぞれ入力するORゲート70と、ORゲ
ート70の出力をセットに入力し、命令実行回路5bか
ら出力された信号RSVIをリセットに入力するRS型
フリップフロップ(以下、RS−F/Fと記す。)71
とから構成されている。このRS−F/F71の出力
は、SVMOD信号として、図8に示されるように、命
令実行回路5b、内部デバッグ割り込み信号生成回路
8、及び要因フラグ73に出力される。
【0010】次に、図8に示されるレジスタセット74
の構成について、図9を参照して説明する。図9に、図
8に示されるレジスタセット74の構成のブロック図を
示す。
【0011】図9に示されるように、このレジスタセッ
ト74は、16個のD型フリップフロップ(以下、D−
F/Fと記す。)により構成されるレジスタ86、8
7、・・・、88と、この16個のレジスタ86、8
7、・・・、88を選択するための、アドレスバスA0
−3を経由した信号を入力するデコーダ85と、それぞ
れのレジスタに接続されている書き込み用バッファ8
9、75、・・・、77と、それぞれのレジスタに接続
されている読み出し用バッファ82、83、・・・、8
4と、レジスタ書き込み用のラッチ信号生成用ANDゲ
ート90、76、・・・、78と、レジスタ読み出し用
のバッファの出力制御信号生成用ANDゲート79、8
0、・・・、81とから構成されている。
【0012】上述のように、デコーダ85にはアドレス
バスA0−3を経由した信号が入力している。デコーダ
85は、AND回路90、76、・・・、78に選択信
号としてのSEL信号、SEL0〜SEL15を出力す
る。
【0013】また、AND回路90、76、・・・、7
8のそれぞれの入力には、図8に示されるように、命令
実行回路5bから出力されたREGWR信号としての信
号WEが入力している。また、レジスタ読み出し用のバ
ッファの出力制御信号生成用ANDゲート79、80、
・・・、81には、図8に示されるように命令実行回路
5bから出力されたREGRD信号が信号OEとして入
力している。
【0014】次に、図8に示される内部デバッグ割り込
み信号生成回路8について、図10を参照して説明す
る。図10に、内部デバッグ割り込み信号生成回路8の
構成のブロック図を示す。
【0015】図10に示されるように、この内部デバッ
グ割り込み信号生成回路8は、図8に示されるスーパー
バイザ12から出力された信号SVA0−31を入力す
るデコーダ91と、スーパーバイザ12から出力された
信号SVD0−31を入力するD−F/F92、及びD
−F/F93と、スーパーバイザ12から出力された信
号SVWRを入力するANDゲート100、101、1
02及び103と、ANDゲート101の出力をセット
に入力し、ANDゲート102の出力をリセットに入力
するRS−F/F96と、比較器94、及び比較器95
と、信号REGWRを入力するNOTゲート99と、図
8に示されるデバッグ割り込み状態判定回路7から出力
されたSVMOD信号を入力するNOTゲート108
と、NOTゲート99及びNOTゲート108の出力を
入力するANDゲート107と、ANDゲート107、
比較器94、RS−F/F96、及び比較器95の出力
を入力するANDゲート104と、ANDゲート104
の出力をセットに入力し、ANDゲート102の出力を
リセットに入力するRS−F/F106と、RS−F/
F106の出力を入力するD−F/F97と、D−F/
F97の出力が入力するNOTゲート98と、RS−F
/F106から出力された信号と、NOTゲート98か
ら出力された信号とが入力するANDゲート105とか
ら構成されている。
【0016】図8にも示されているように、内部デバッ
グ割り込み信号生成回路8には、発振器13から出力さ
れたクロックがクロック信号SCLKとして入力し、こ
のクロック信号SCLKは、図10にも示されているよ
うに、内部デバッグ割り込み信号生成回路8を構成する
D−F/F97に入力している。
【0017】次に、図8に示される要因フラグ73の構
成について、図11を参照して説明する。図11に、要
因フラグ73の構成のブロック図を示す。図11に示さ
れるように、この要因フラグ73は、信号SVA0−3
1を入力するデコーダ111と、デコーダ111から出
力された信号と、信号SVRDとを入力するANDゲー
ト109と、信号SVMODとANDゲート109から
出力された信号とを入力するバッファ110とから構成
されている。
【0018】次に、このデバッグ機能内蔵マイクロプロ
セッサ1bがデバッグ割り込みを行う際の動作につい
て、図面を参照して詳細に説明する。
【0019】図8に示されるマイクロプロセッサ1b
が、デバッグの対象となるユーザプログラムを実行して
いる際に、内部デバッグ割り込み信号生成回路8から出
力された割り込み信号INTSVI、若しくは、外部デ
バッグ割り込み信号生成回路11から出力された割り込
み信号EXTSVIが有効になると、デバッグ割り込み
状態判定回路7は、デバッグ割り込み信号SVMODを
有効にし、命令実行回路5b及び内部デバッグ割り込み
信号生成回路8に出力し、デバッグ割り込みを行うよう
要求する。
【0020】また、再度、ユーザプログラムを実行する
場合は、デバッグ割り込み状態からのリターン命令RE
TSVIを実行させる。この実行により、命令実行回路
5bからの割り込みリターン信号RSVIが有効にな
り、デバッグ割り込み状態判定回路7は、デバッグ割り
込みを受け付ける状態になる。
【0021】マイクロプロセッサ1bの内部RAM2
は、デバッグ割り込み中にスーパーバイザ12による読
み出し、及び書き込みの双方が可能であり、ユーザプロ
グラム実行中は、読み出しのみ可能である。
【0022】次に、図8に示されるレジスタセット74
について、図9を参照してさらに詳細に説明する。
【0023】前述のように、図9に示される、レジスタ
セット74は、D−F/Fによるレジスタ86、87、
・・・、88と、レジスタ選択用デコーダ85と、書き
込み用バッファ89、75、・・・、77と、読み出し
用バッファ82、83、・・・、84と、レジスタ書き
込み用のラッチ信号生成用ANDゲート90、76、・
・・、77と、レジスタ読み出し用バッファの出力制御
信号生成用ANDゲート79、80、・・・、81とか
ら構成されている。
【0024】ここで、図8及び図9を用いて、命令実行
回路5bの指示により、レジスタセット74に対して読
み出し動作、及び書き込み動作を実行する場合を詳細に
説明する。
【0025】命令実行回路5bからアドレスバスA0−
3へ出力されるアドレス値によって、レジスタセット7
4に具備されるデコーダ85は、レジスタ選択信号SE
L0〜SEL15中の1本を有効にする。
【0026】その際に、図8に示される命令実行回路5
bから出力されるレジスタ書き込み信号REGWRが有
効になれば、レジスタセット74に入力する信号WEが
有効になり、図9に示されているように、レジスタのラ
ッチ信号生成用ANDゲート90、76、・・・、78
の中の1つのラッチ信号生成用ANDゲートの出力だけ
が出力有効になり、命令実行回路5bからデータバスD
0−31へ出力される書き込みデータが、書き込み用バ
ッファ89、75、・・・、77を通して、レジスタ8
6、87、・・・、88の中の1個に書き込まれる。
【0027】また、命令実行回路5bから出力されるレ
ジスタ書き込み信号REGRDが有効になれば、レジス
タセット74に入力する信号OEが有効になり、デコー
ダ85のレジスタ選択信号SEL0からSEL15の中
において1本だけ有効になり、レジスタ読み出し用バッ
ファ82、83、・・・、84の中で1個だけ出力が有
効になり、レジスタ値がデータバスD0−31を通して
命令実行回路5bへ出力される。
【0028】次に、図13に示される動作のように、レ
ジスタセット74のレジスタD−F/F86がFFFF
h値になった場合に、レジスタセット74のレジスタ値
の読み出しを行う場合の動作を、図5、及び、図8から
図12を参照して説明する。また、図13に、従来のデ
バッグ機能内蔵マイクロプロセッサにおけるレジスタセ
ット読み出し処理シーケンスチャートを示す。
【0029】まず、図13に示される動作について説明
する。図13に示されるように、この動作は、ステップ
S9からステップS12までの動作によって構成されて
いる。
【0030】まず、基本的な動作を説明する。ユーザプ
ログラム実行中に、スーパーバイザ12により要因フラ
グ73を繰り返し読み出し(ステップS9)、次に、ス
ーパーバイザ12によりレジスタ値を読み出し(ステッ
プS10)、次に、スーパーバイザ12から内部デバッ
グ割り込み信号生成回路8のリセットを行い(ステップ
S11)、その後、ユーザプログラムの実行を再開す
る。
【0031】上述の動作において、図13に示されるよ
うに、デバッグ割り込みが発生した場合は、ステップS
12において、RETSVI命令の実行を行い、その後
に、ユーザプログラムの実行を再開する。
【0032】次に、上述の図13に示される動作を以下
に、図面を参照してさらに詳細に説明する。まず、図1
0に示される内部デバッグ割り込み信号生成回路8の構
成のブロック図を参照しつつ説明する。
【0033】図10に示される内部デバッグ割り込み信
号生成回路8は、前述のように、スーパーバイザ12か
ら検出アドレスを設定するためのD−F/F92と、ア
ドレス検出用の比較器94と、検出データを設定するた
めのD−F/F93と、アドレス検出用の比較器95
と、デバッグ割り込み機能制御用のRS−F/F96
と、アドレス/データ一致信号ADHITを生成するた
めのANDゲート104と、NOTゲート99、及びN
OTゲート108から出力された信号を入力するAND
ゲート107と、NOTゲート99及びNOTゲート1
08と、アドレス/データ一致信号をパルス化するため
のRS−F/F106と、D−F/F97と、NOTゲ
ート98と、ANDゲート105と、スーパーバイザ1
2から、D−F/F92及びD−F/F93に対して値
を設定するため、若しくは、RS−F/Fをリセットす
るための、デコーダ91と、ANDゲート100、10
1、102及び103により構成されている。
【0034】この内部デバッグ割り込み信号生成回路8
の動作について以下に説明する。予め、スーパーバイザ
12から、図10に示される内部デバッグ割り込み信号
生成回路8のD−F/F92へレジスタとしてのD−F
/F86が選択されるアドレス値A0−3=0hを設定
し、またD−F/F93へレジスタのデータ検出値FF
FFhを設定し、デバッグ割り込み制御用RS−F/F
96をセットする。
【0035】この、ユーザプログラム実行中に、図9に
示されるレジスタセット74のレジスタD−F/F86
へのデータの書き込みが行われる際、命令実行回路5b
からアドレスバスA0−3へ0hが出力され、レジスタ
セット74を構成するデコーダ111は、D−F/F8
6の選択信号SEL0を有効にする。また命令実行回路
5bからは、レジスタ書き込み信号REGWRが有効と
して出力され、ANDゲート90の出力、すなわち、レ
ジスタとしてのD−F/F86へのラッチ信号が有効に
なり、命令実行回路5bからデータバスD0−31へ出
力される値がレジスタとしてのD−F/F86へ書き込
まれる。
【0036】次に、図8に示される信号INTSVIの
生成タイミングを図12を参照して説明する。図12
に、図8に示される内部デバッグ割り込み信号生成回路
8が、デバッグ割り込み状態判定回路7に出力する信号
INTSVIを生成する動作のタイミングチャートを示
す。
【0037】図12には、図8に示される発振器13が
出力するシステムクロックSCLKのタイミングチャー
ト(T1)と、命令実行回路5bが出力するアドレスバ
スA0−3及びデータバスD0−31に出力される信号
のタイミングチャート(T2)と、命令実行回路5bが
出力する信号REGWRのタイミングチャート(T8)
と、命令実行回路5bが出力する信号REGRDのタイ
ミングチャート(T9)と、命令実行回路5bが出力す
る信号MWRのタイミングチャート(T10)と、図1
0に示されるANDゲート104が出力する信号ADH
ITのタイミングチャート(T11)と、SR−F/F
106の出力Qのタイミングチャート(T12)と、D
−F/F97の出力Qのタイミングチャート(T13)
と、図10に示されるANDゲート105の出力信号I
NTSVIのタイミングチャート(T14)と、デバッ
グ割り込み状態判定回路7の出力信号SVMODのタイ
ミングチャート(T15)とが示されている。
【0038】図12に示すように、ユーザプログラム実
行中に、レジスタD−F/F86に格納されたデータが
FFFFh値に書き変わる際、内部デバッグ割り込み信
号生成回路8では、D−F/F86へのラッチサイクル
で、命令実行回路5bからアドレスバスA0−3へ0h
が出力される(タイミングチャートT2)。この出力さ
れた値が、あらかじめD−F/F92に書き込まれた検
出アドレス値0hと一致すると、比較器94はANDゲ
ート104へ有効信号を出力する。
【0039】また、命令実行回路5bからは、データバ
スD0−31へFFFFhが出力される。そして、この
出力された値が、あらかじめD−F/F93に書き込ま
れた検出データ値FFFFhと一致すると、比較器95
はANDゲート104へ有効信号を出力する。
【0040】さらに、図10に示されるデバッグ割り込
み制御用のRS−F/F96は、スーパーバイザ12か
らセットされていて、命令実行回路5bからは、レジス
タ書き込み信号REGWRが有効になると(タイミング
チャートT8)、ANDゲート104の出力のアドレス
/データ一致信号ADHITが有効になる(タイミング
チャートT11)。
【0041】そして、RS−F/F106、D−F/F
97、NOTゲート98、及びANDゲート105を用
いて、アドレス/データ一致信号ADHITに同期して
セットし、システムクロックSCLKに同期してリセッ
トし、アドレス/データ一致信号のパルス化信号である
内部デバッグ割り込み信号INTSVIを生成する(タ
イミングチャートT12〜T14)。
【0042】図8に示される内部デバッグ割り込み信号
生成回路8が出力する内部デバッグ割り込み信号INT
SVIが有効になると、デバッグ割り込み状態判定回路
7が出力するデバッグ割り込み状態信号SVMODが有
効になる(タイミングチャートT15)。同時に、命令
実行回路5bは、SVMOD信号が有効になったのを受
けて、レジスタセット74から、一つずつレジスタ値を
読み出しては(タイミングチャートT9)、内部RAM
2へ書き込んでいく(タイミングチャートT10)。そ
の後、デバッグ割り込みプログラムを実行する。
【0043】次に、図8に示されるスーパーバイザ12
の動作について、図13を参照してさらに詳細に説明す
る。図13に示されるように、スーパーバイザ12は、
ユーザプログラム実行中に、図11に示されるバッファ
110を通して、デバッグ割り込み要因フラグ73を繰
り返し読み出しておき(ステップS9)、デバッグ割り
込みが発生したのを受けて、内部RAM2からデバッグ
割り込みの際に退避されたレジスタ値を読み出す(ステ
ップS10)。
【0044】また、ユーザプログラム実行中にデバッグ
割り込み信号INTSVIが有効になるように、スーパ
ーバイザ12から、図10に示されるように、内部デバ
ッグ割り込み信号生成回路8が具備するRS−F/F9
6及びRS−F/F106をリセットし(ステップS1
1)、命令実行回路5bにRETSVI命令を実行させ
て、ユーザプログラムの実行に移る(ステップS1
2)。命令実行回路5bは、内部RAM2からレジスタ
値を読み出してレジスタセット74に書き込む動作を繰
り返し、一つずつレジスタ値を退避する。
【0045】その後、命令実行回路5bのデバッグ割り
込みリターン信号RSVIが有効になり、図5に示され
る、デバッグ割り込み状態判定回路7が具備するRS−
F/F71がリセットされ、デバッグ割り込み状態信号
SVMODが無効として出力され、再度、デバッグ割り
込み信号を受け付ける状態になる。命令実行回路5b
は、デバッグ割り込み発生時のレジスタセット74の状
態から、ユーザプログラムの実行に戻る。
【0046】ここで、仮に、ユーザプログラムを新たな
レジスタ状態から実行させたい場合を考える。この場合
は、スーパーバイザ12から内部RAM2に退避されて
いるレジスタセット74のレジスタ値を目的の値に変更
して、RETSVI命令を実行させる。
【0047】しかし、図8に示される従来のデバッグ機
能内蔵マイクロプロセッサによると、ユーザプログラム
実行中のレジスタセット74の値を読み出す際は、ユー
ザプログラムがデバッグ割り込みのために一時的に中断
される。そのため、デバッグ割り込みよりもプライオリ
ティが低いユーザ割り込みは、デバッグ割り込み中は保
留されるという問題点があった。
【0048】上記問題点に対しては、特開平4−778
83号公報に開示された「シングルチップマイクロコン
ピュータ」のように、デバッグ割り込み時用のレジスタ
セットを有して、デバッグ割り込み時にレジスタ値の退
避を不要にし、デバッグ割り込み期間を短くするマイク
ロプロセッサが発明されている。
【0049】
【発明が解決しようとする課題】しかしながら、上述の
ような、従来のデバッグ機能内蔵マイクロプロセッサに
おいては、未だデバッグ割り込みを行う際の動作時間が
かかり過ぎるという問題点を有する。
【0050】例えば、従来のデバッグ機能内蔵マイクロ
プロセッサを用いてエンジンのガス噴射制御を行う場
合、エンジンが高速に回転すればするほど、気筒内部の
気圧の変化や、ガス噴射の広がり方を計算し、この計算
結果に基づいて細かにエンジンを制御する必要があり、
そのために、できるだけ短い周期によるガス噴射制御が
必要とされる。
【0051】この場合、従来のデバッグ機能内蔵マイク
ロプロセッサにより、一時的にデバッグ割り込み状態に
移って、レジスタセットの値を読み出し、再度、ガス噴
射制御に戻るとすると、この戻るまでに必要な時間が、
ガス噴射制御に必要な周期より大きくなり、最悪の場
合、ガス爆発が起きてエンジンを痛める可能性がある。
【0052】具体的な数値を計算すると、例えば、エン
ジンが1°回転する毎に、ガス噴射制御を実行する場
合、1秒間に1万回転しているとすると、 1/(360×10000)=0.278μs であり、この時間内に、レジスタセットの読み出しとガ
ス噴射制御とを行う必要があるが、実際は、高速のマイ
クロプロセッサでも、デバッグ割り込みしてレジスタセ
ットをメモリへ退避するだけでも、最低0.3〜0.5
μsの時間が必要である。
【0053】そのため、従来のデバッグ機能内蔵マイク
ロプロセッサでは、デバッグ割り込みをさせずに、ガス
噴射制御させながら、レジスタセットの状態を読み出す
ことができないため、その動作効率が低下するという問
題点を有している。
【0054】また、従来のデバッグ機能内蔵マイクロプ
ロセッサでは、ユーザプログラム実行中に内部RAMの
値をスーパーバイザから直接に読み出すことは可能であ
るが、レジスタセットの値は、デバッグ割り込みしてか
らでないと、レジスタ値を読み出すことができず、操作
性が悪化するという問題点を有している。
【0055】また、従来のデバッグ機能内蔵マイクロプ
ロセッサでは、レジスタが、内部RAMと同様に、ユー
ザプログラム実行中もスーパーバイザから直接に読み出
し可能であった場合、各レジスタ相互間の同時性が保証
できない、という問題点を有している。
【0056】例えば、カウンタ変数が割り当てられてい
る汎用レジスタを読み出してから、次の命令の実行アド
レスを示すPCレジスタを読み出した場合、カウンタ値
と実行アドレス値は読み出すタイミングが異なる。
【0057】本発明は、上記事情に鑑みなされたもの
で、ユーザープログラム実行中であっても、動作タイミ
ングを乱すことなくレジスタ値を高速に読み出すことが
可能なデバッグ機能内蔵マイクロプロセッサを提供する
ことを目的とする。
【0058】
【課題を解決するための手段】請求項1記載の発明は、
ユーザプログラム実行中におけるデバッグ用の割り込み
を実行するための機能を有するデバッグ機能内蔵マイク
ロプロセッサにおいて、該デバッグ機能内蔵マイクロプ
ロセッサの動作を制御するための少なくとも1以上の制
御信号と、データ信号とを出力する命令実行回路と、前
記命令実行回路から出力されたデータ信号により表され
るデータを格納するレジスタセットと、外部から直接読
み出し、及び、書き込みができ、かつ、前記レジスタセ
ットに格納されたデータをコピーして格納することが可
能な退避レジスタセットとを有し、前記デバッグ割り込
みの実行中、若しくは、所定の条件が成立した際に、命
令実行に同期してレジスタセットに格納された値が退避
レジスタセットにコピーされ、また、デバッグ割り込み
状態から戻る命令の実行中に、前記退避レジスタセット
に格納された値が前記レジスタセットにコピーされるこ
とを特徴とする。
【0059】請求項2記載の発明は、請求項1記載の発
明において、前記退避レジスタセットに対する、直接の
読み出し、及び、書き込みが、前記デバッグ機能内蔵マ
イクロプロセッサの外部に接続されたスーパーバイザに
より実行されることを特徴とする。
【0060】請求項3記載の発明は、データ信号と、命
令を実行させるための少なくとも1以上の制御信号とを
出力する命令実行回路と、外部から出力された制御信号
に基づき、デバッグ割り込みを実行させるための内部デ
バッグ割り込み信号を生成する内部デバッグ割り込み信
号生成回路と、前記内部デバッグ割り込み信号、若しく
は外部から出力された外部デバッグ割り込み信号に基づ
き、デバッグ割り込み状態であるか否かを判定し、該判
定の結果を表す信号を命令実行回路に出力するデバッグ
状態判定回路と、前記制御信号、若しくは、外部から出
力された制御信号に基づき、レジスタセットと退避レジ
スタセットとの間において、それぞれに格納されている
データを相手にコピーする動作であるコピーイベントを
実行させる、コピーイベント実行信号を出力するコピー
イベント生成回路と、前記データ信号をデータとして格
納するレジスタセットと、外部からの読み出し、及び書
き込みが可能な、データを格納するための退避レジスタ
セットとを有し、前記デバッグ割り込みの実行中、若し
くは、所定の条件が成立した際に、命令実行に同期して
レジスタセットに格納された値が退避レジスタセットに
コピーされ、また、デバッグ割り込み状態から戻る命令
の実行中に、前記退避レジスタセットに格納された値が
前記レジスタセットへコピーされることを特徴とする。
【0061】請求項4記載の発明は、請求項3記載の発
明において、前記コピーイベント生成回路が、前記命令
実行回路から出力された制御信号を入力する少なくとも
2以上のNOTゲートからなるNOTゲート群と、前記
命令実行回路から出力されたアドレス信号を入力する第
1の比較器と、前記命令実行回路から出力されたデータ
信号を入力する第2の比較器と、前記外部から出力され
た制御信号を入力し、前記比較器に出力信号を出力する
少なくとも1以上のD型フリップフロップと、前記外部
から出力された制御信号を入力する第1のデコーダと、
前記外部から出力された制御信号と、前記第1のデコー
ダから出力された信号とが入力する少なくとも2以上の
ANDゲートからなる第1のANDゲート群と、前記第
1のANDゲート群から出力された信号の1つをセット
に入力し、他の1つの信号をリセットに入力する第1の
RS型フリップフロップと、前記NOTゲートから出力
された信号が入力する第1のORゲートと、前記NOT
ゲートから出力された信号と、前記第1の比較器から出
力された信号と、前記第2の比較器から出力された信号
とが入力する第1のANDゲートと、前記少なくとも2
以上のANDゲートからなる第1のANDゲート群から
出力された信号の1つをセットに入力し、他の1つの信
号をリセットに入力する第2のRS型フリップフロップ
と、前記少なくとも2以上のANDゲートからなる第1
のANDゲート群から出力された信号の1つをセットに
入力し、他の1つの信号をリセットに入力する第3のR
S型フリップフロップと、前記第1のORゲートから出
力された信号と、前記第1のRS型フリップフロップか
ら出力された信号とが入力する第2のANDゲートと、
前記第1のANDゲートから出力された信号と、前記第
2のフリップフロップから出力された信号と、前記第2
のANDゲートから出力された信号とが入力するセレク
タと、前記デバッグ割り込み状態判定回路から出力され
た信号が入力する第1のNOTゲートと、前記第1のN
OTゲートから出力された信号と、前記セレクタから出
力された信号と、前記第3のRS型フリップフロップか
ら出力された信号とが入力する第3のANDゲートと、
前記第3のANDゲートから出力された信号をセットに
入力し、前記少なくとも2以上のANDゲートからなる
第1のANDゲート群から出力された信号の1つをリセ
ットに入力する第4のRS型フリップフロップと、前記
第4のRS型フリップフロップから出力された信号を入
力する第1のD型フリップフロップと、クロック信号が
入力する第2のNOTゲートとを有することを特徴とす
る。
【0062】請求項5記載の発明は、請求項3又は4に
記載の発明において、前記レジスタセットが、前記命令
実行回路から出力された制御信号を入力する第2のデコ
ーダと、前記命令実行回路から出力された制御信号と、
前記第2のデコーダから出力された信号とが入力する少
なくとも1以上のANDゲートからなる第2のANDゲ
ート群と、前記命令実行回路から出力された制御信号が
入力する第1のバッファと、前記命令実行回路から出力
されたデータ信号が入力する第2のバッファと、前記デ
コーダから出力された信号が入力する第4のANDゲー
トと、前記第4のANDゲートから出力された信号が入
力する第2のORゲートと、前記第1のバッファ、前記
第2のバッファ及び前記第2のORゲートから出力され
た信号が入力する第2のD型フリップフロップと、前記
第2のD型フリップフロップから出力された信号が入力
する第3のバッファと、前記第2のD型フリップフロッ
プから出力された信号が入力する第4のバッファとから
構成される少なくとも1以上のレジスタ部とを有するこ
とを特徴とする。
【0063】請求項6記載の発明は、請求項3から5の
いずれかに記載の発明において、前記デバッグ割り込み
状態判定回路が、前記内部デバッグ割り込み信号生成回
路から出力されたデバッグ割り込み信号と、外部から出
力されたデバッグ割り込み信号とを入力する第3のOR
ゲートと、前記第3のORゲートから出力された信号を
セットに入力し、前記命令実行回路から出力された制御
信号をリセットに入力する第5のRS型フリップフロッ
プとを有することを特徴とする。
【0064】
【発明の実施の形態】次に、図面を参照して、本発明に
係るデバッグ機能内蔵マイクロプロセッサの実施形態に
ついて説明する。
【0065】図1に、本発明に係るデバッグ機能内蔵マ
イクロプロセッサの一実施形態の構成のブロック図を示
す。ただし、図8に示される従来のデバッグ機能内蔵マ
イクロプロセッサ1bが具備する部材と同様な部材、及
び信号については、同じ番号を付す。
【0066】図1に示すように、この実施形態に係るデ
バッグ機能内蔵マイクロプロセッサ1aは、マイクロプ
ロセッサ1a全体の動作を制御するための制御信号、及
びデータ信号を出力する命令実行回路5aと、データを
格納する内部RAM2と、所定のデータを格納するレジ
スタセット3と、レジスタセット3から出力されるデー
タを格納する退避レジスタセット4と、デバッグ割り込
み状態判定回路7と、内部デバッグ割り込み信号生成回
路8と、コピーイベント生成回路6と、要因フラグ10
と、ORゲート9とから構成されている。
【0067】また、このデバッグ機能内蔵マイクロプロ
セッサ1aの外部に接続されている部材として、外部デ
バッグ割り込み信号生成回路11と、スーパーバイザ1
2と、発振器13とが接続されている。
【0068】図1に示される、本発明に係るデバッグ機
能内蔵マイクロプロセッサ1aを構成する部材の内、コ
ピーイベント生成回路6、レジスタセット3及び退避レ
ジスタセット4、要因フラグ10、及びデバッグ割り込
み状態判定回路7の構成を示すブロック図を、それぞ
れ、図2、図3、図4、及び図5に示す。
【0069】ただし、図5に示されるデバッグ割り込み
状態判定回路7は、図8に示される従来のデバッグ機能
内蔵マイクロプロセッサ1bに具備されているデバッグ
割り込み状態判定回路7と同じ部材であり、その説明は
前述の通りであるから、その説明を省略する。
【0070】まず、図1に示される本発明に係るデバッ
グ機能内蔵マイクロプロセッサ1aを構成する部材であ
る、コピーイベント生成回路6について図2を参照して
説明する。
【0071】図2に、図1に示されるデバッグ機能内蔵
マイクロプロセッサ1aが具備するコピーイベント生成
回路6の構成のブロック図を示す。
【0072】図2に示されるように、このコピーイベン
ト生成回路6は、図1に示される命令実行回路5aから
出力された信号REGRDを入力するNOTゲート34
と、命令実行回路5aから出力された信号REGWRを
入力するNOTゲート33と、NOTゲート33及びN
OTゲート34から出力された信号を入力するORゲー
ト28と、スーパーバイザ12から出力された信号SV
A0−31を入力するデコーダ17と、命令実行回路5
aから出力され、データバスD0−31を介した信号を
入力する比較器16と、スーパーバイザ12から出力さ
れた信号SVD0−31が入力するD−F/F37及び
D−F/F14と、スーパーバイザ12から出力された
信号が入力するANDゲート22、23、24、25、
26及び27と、ANDゲート24から出力された信号
がセットに入力し、ANDゲート25から出力された信
号がリセットに入力するRS−F/F18とを有する。
【0073】さらに、このコピーイベント生成回路6
は、命令実行回路5aから出力されアドレスバスA0−
3を介した信号と、D−F/F37から出力された信号
とを入力する比較器15と、NOTゲート33、比較器
15、及び比較器16から出力された信号が入力するA
NDゲート29と、ANDゲート23から出力された信
号がセットに入力し、ANDゲート25から出力された
信号がリセットに入力しているRS−F/F38と、A
NDゲート26から出力された信号がセットに入力し、
ANDゲート25から出力された信号がリセットに入力
しているRS−F/F19と、ORゲート28から出力
された信号と、RS−F/F18から出力された信号と
が入力しているANDゲート30と、信号SVMODが
入力するNOTゲート32と、ANDゲート29、RS
−F/F38及びANDゲート30から出力された信号
を入力するセレクタ20と、RS−F/F19、セレク
タ20及びNOTゲート32から出力された信号が入力
するANDゲート31と、ANDゲート31の出力がセ
ットに入力し、ANDゲート25の出力がリセットに入
力しているRS−F/F21と、SCLKが入力するN
OTゲート36と、RS−F/F21が入力し、NOT
ゲート36の出力がクロックとして入力するD−F/F
35とを有する。
【0074】次に、図3を参照して、レジスタセット3
の構成について説明する。ただし、図1に示される退避
レジスタセット4は、図1に示されるレジスタセット3
と同様の構成であり、従って、そのブロック図も同じで
あるので、図3に示されるブロック図は、図1に示され
る退避レジスタセット4の構成をも示している。
【0075】図3に示されるように、レジスタセット3
は、命令実行回路5aから出力されアドレスバスA0−
3を介した信号を入力するデコーダ58と、OE信号が
それぞれ入力するANDゲート49、50、・・・、5
1と、命令実行回路5aから出力されデータバスD0−
31を介した信号が入力するバッファ63、41、・・
・、44と、バッファ53、55、・・・、57から出
力された信号が入力するバッファ62、40、・・・、
43と、信号WE1と、デコーダ58から出力された信
号とが入力するANDゲート39、42、・・・、45
と、それぞれのバッファ62、40、・・・、43から
出力された信号と、それぞれのANDゲート39、4
2、・・・、45から出力された信号とが入力するOR
ゲート46、47、・・・、48と、バッファ62、6
3、40、41、・・・、43、44から出力された信
号を入力し、ORゲート46、47、・・・、48から
出力された信号がクロックとして入力するD−F/F5
9、60、・・・、61と、D−F/F59、60、・
・・、61から出力された信号が入力するバッファ5
2、53、54、55、・・・、56、57とから構成
される。
【0076】次に、図1に示される要因フラグ10につ
いて、図4を参照して説明する。図4に、要因フラグ1
0の構成のブロック図を示す。図4を参照すると、この
要因フラグ10は、図1に示されるように、デバッグ割
り込み状態判定回路7から出力された信号SVMODが
入力するバッファ67と、スーパーバイザ12から出力
された信号SVA0−31が入力するデコーダ68と、
スーパーバイザ12から出力された信号SVRD及びデ
コーダ68から出力された信号を入力するANDゲート
69と、スーパーバイザ12から出力された信号SVW
Rとデコーダ68から出力された信号とを入力するAN
Dゲート65と、図1に示されるコピーイベント生成回
路6から出力された信号CPENをセットに入力し、A
NDゲート65から出力された信号をリセットに入力す
るRS−F/F66と、RS−F/F66から出力され
た信号と、ANDゲート69から出力された信号とが入
力するバッファ64とから構成される。
【0077】次に、上述の各部材を有するデバッグ機能
内蔵マイクロプロセッサ1aについて、以下に説明す
る。図1に示されるレジスタセット3は、ユーザプログ
ラム実行中にも、デバッグ割り込み中でも、命令実行回
路5aから読み書きが可能である。
【0078】このレジスタセット3の構成について、図
3を参照して、さらに詳細に説明する。上述のように、
図3は、図1に示されるレジスタセット3、及び、退避
レジスタセット4の構成を示すブロック図である。
【0079】図3に示されるように、レジスタセット
3、及び退避レジスタセット4は、D−F/Fによるレ
ジスタ59、60、・・・、61と、レジスタ選択用デ
コーダ58と、書き込み用バッファ62、63、40、
41、・・・、43、44と、読み出し用バッファ5
2、53、54、55、・・・、56、57と、レジス
タ書き込み用のラッチ信号生成用ANDゲート39、4
2、・・・、45と、NANDゲート46、47、・・
・、48と、レジスタ読み出し用バッファの出力制御信
号生成用ANDゲート49、50、・・・、51とから
構成されている。
【0080】次に、図1及び図3を用いて、命令実行回
路5aからの指示によるレジスタセット3への読み書き
動作について詳細に説明する。命令実行回路5aからア
ドレスバスA0−3へ出力されるアドレス値によって、
図3に示されるデコーダ58は、レジスタ選択信号SE
L0〜15の中で一本だけ有効にする。
【0081】その際に、命令実行回路5aから出力され
るレジスタ書き込み信号REGWRが有効になれば、レ
ジスタセット3に入力する信号WE1が有効になり、レ
ジスタラッチ信号生成用のNANDゲート46、47、
・・・、48の中の出力の内1個だけが有効な出力にな
り、命令実行回路5aからデータバスD0−31へ出力
される書き込みデータが、書き込み用バッファ62、6
3、40、41、・・・、43、44を通して、レジス
タ59、60、・・・、61の中の1個に書き込まれ
る。
【0082】また、命令実行回路5aから出力されるレ
ジスタ書き込み信号REGRDが有効になれば、レジス
タ3に入力する信号OE1が有効になり、デコーダ58
のレジスタ選択信号SEL0〜SEL15の中で一本だ
け有効になり、レジスタ読み出し用バッファ52、5
4、・・・、56の中で1個だけ出力が有効になり、レ
ジスタ値がデータバスD0−31を通して命令実行回路
5aへ出力される。
【0083】スーパーバイザ12による退避レジスタセ
ット4への書き込み動作も、命令実行回路5aによるレ
ジスタセット3への読み書き動作と同様である。
【0084】また、図1に示されるコピーイベント生成
回路6から出力されるコピーイネーブル信号CPENが
有効になると、レジスタセット3に入力する信号OE2
が有効になり、読み出しバッファ53、55、・・・、
57を通して、コピーデータバスCD0−511にレジ
スタセット値が出力される。
【0085】これと同時に、退避レジスタセット4に入
力する信号WE2が有効になり、レジスタのラッチ信号
生成用NANDゲート46、47、・・・、48から出
力される出力が有効になり、レジスタセット3からデー
タバスD0−31へ出力されるレジスタセット値が、書
き込み用バッファ62、40、・・・、43を通して、
レジスタセット59、60、・・・、61に書き込まれ
る。
【0086】同様に、命令実行回路5aから出力される
デバッグ割り込み時コピー信号INTCPが有効になっ
た場合も、コピーイベント生成回路6からのコピーイネ
ーブル信号CPENが有効になった場合と同様に、レジ
スタセット3に格納されているレジスタセット値が退避
レジスタセット4へコピーされる。
【0087】また、デバッグ割り込み状態からのリター
ン命令RETSVIを実行させた際は、命令実行回路5
aから出力される割り込みリターン信号RSVI信号が
有効になり、コピーイベント生成回路6から出力される
コピーイネーブル信号CPENが有効になった場合とは
逆に、退避レジスタセット4のレジスタセット値が、レ
ジスタセット3へコピーされる。
【0088】次に、図7に示される動作のように、レジ
スタセット3のレジスタD−F/F59がFFFFh値
になった場合に、レジスタセット3に格納されているレ
ジスタセット値の読み出しを行う場合の動作を、図1〜
図6を用いて詳細に説明する。
【0089】まず、図7に示される動作について説明す
る。図7に示されるように、この動作は、ステップS1
からステップS8までの動作により構成されている。
【0090】まず、ステップS1において、スーパーバ
イザ12から命令実行をする際のレジスタセット3のコ
ピー条件を設定する。ステップS2において、スーパー
バイザ12の制御によりコピーイベントを受付可能に設
定する。ステップS3において、スーパーバイザ12に
より要因フラグ10を繰り返し読み出す。
【0091】次に、ステップS4において、スーパーバ
イザ12によりレジスタセット3に格納されたデータを
読み出す。ステップS5において、スーパーバイザ12
により要因フラグ10を読み出す。ステップS6におい
て、コピーイベント生成回路6をリセットする。ステッ
プS7において、スーパーバイザ12により新たにコピ
ー条件を設定する。ステップS8において、スーパーバ
イザ12によりコピーイベント受付可能に設定する。
【0092】次に、図2を参照して、図1に示されるコ
ピーイベント生成回路6についてさらに詳細に説明す
る。
【0093】図2に示すように、図1に示されるコピー
イベント生成回路6は、スーパーバイザ12により検出
アドレスを設定するためのD−F/F37と、アドレス
検出用の比較器15と、検出データを設定するためのD
−F/F14と、データ検出用の比較器16と、コピー
イベント発生制御用のRS−F/F19と、アドレス/
データ一致信号ADHITを生成するためのANDゲー
ト29と、NOTゲート33と、ユーザプログラム実行
中にアドレス/データ一致信号をシステムクロックSC
LKの立ち下がりで同期化するためのANDゲート31
と、RS−F/F21と、D−F/F35と、NOTゲ
ート36と、スーパーバイザ12によりコピーイベント
のトリガをレジスタの読み出し、及び書き込みに合わせ
て発生させるためのRS−F/F18と、ANDゲート
30と、ORゲート28と、NOTゲート34と、コピ
ーイベントをアドレス/データ検出によって発生させる
か、若しくは、スーパーバイザ12によるトリガによっ
て発生させるかを、スーパーバイザ12から選択するた
めのセレクタ20と、RS−F/F38と、D−F/F
37及びD−F/F14に値を設定するため、若しく
は、RS−F/Fをセット、リセットするためのデコー
ダ17と、ANDゲート22、23、24、25、2
6、及び27により構成される。
【0094】次に、上述の図1、及び図2を参照して、
図2に示されるコピーイベント生成回路6の動作につい
て説明する。予め、スーパーバイザ12から、図2のコ
ピーイベント生成回路6が具備するD−F/F37へD
−F/F86が選択されるアドレス値A0−3=0hを
設定し、また、D−F/F14へレジスタのデータ検出
値FFFFhを設定し、そして、スーパーバイザ12か
らのトリガでなく、アドレス/データが一致したことが
検出された際に、コピーイベントを発生させるように、
RS−F/F38をセットし、最後に、コピーイベント
が発生するようにRS−F/F19をセットする。
【0095】ここで、図6を参照して、レジスタのコピ
ー動作のタイミングを説明する。図6に、本発明に係る
レジスタセット3がコピー動作を実行する際のタイミン
グチャートを示す。
【0096】図6には、図1に示される発振器13から
出力されるシステムクロック信号SCLKのタイミング
チャートT1と、命令実行回路5aが、アドレスバスA
0−3、及びデータバスD0−31に出力する信号のタ
イミングチャートT2と、命令実行回路5aが出力する
信号REGRD及び信号REGWRとのタイミングチャ
ート(T3)と、命令を実行しているレジスタセット3
が出力する信号CD0−512のタイミングチャート
(T4)と、コピーイベント生成回路6が出力する信号
CPENのタイミングチャート(T5)と、命令実行回
路5aが出力する信号INTCPのタイミングチャート
(T6)と、退避レジスタセット4から出力されるラッ
チデータのタイミングチャート(T7)とが示されてい
る。
【0097】図6に示すように、ユーザプログラム実行
中に、命令実行回路5aのアドレスバスA0−3に出力
される信号が0hになり、データバスD0−31に出力
される信号がFFFFhになり、REGWRが有効にな
ると、レジスタセット3が具備するレジスタとしてのD
−F/F37へ値FFFFhが書き込まれる(タイミン
グチャートT2、T3)。
【0098】これと同時に、図2に示されるコピーイベ
ント生成回路6のANDゲート29の出力と、アドレス
/データ一致信号ADHITとが有効になり、スーパー
バイザ12の制御に伴い、セレクタ20はADHITを
選択するように設定され、コピーイベント発生制御用R
S−F/F19はセットされているので、ANDゲート
31の出力、すなわち、コピーイベント信号CPHIT
が有効になる。
【0099】図2に示されるANDゲート31から出力
されるCPHIT信号は、最初のイベントだけコピーを
発生させるためのRS−F/F21をセットし、その
後、システムクロック信号SCLKの立ち下がりに同期
してコピーイネーブル信号CPENを有効にするため
に、D−F/F35及びNOTゲート36によって、C
PHIT信号を同期化してCPEN信号を生成する(タ
イミングチャートT5)。
【0100】レジスタセット3には、命令実行回路5a
からのレジスタ書き込み信号REGWRの立ち上がり
で、D−F/F37へFFFFhが書き込まれるため、
レジスタセット3の新規レジスタセット値が、SCLK
の立ち上がりに同期して、コピーデータバスCD0−5
11へ出力される(タイミングチャートT4)。そし
て、退避レジスタセット4は、CPEN信号の立ち上が
りに同期して、CD0−511の値が書き込まれる(タ
イミングチャートT7)。このようにして、レジスタセ
ット3のレジスタセット値が退避レジスタセット4へコ
ピーされ、このコピーされた値をスーパーバイザ12か
ら読み出すことが出来る。
【0101】また、コピーイネーブル信号CPENによ
って、レジスタセット3のレジスタセット値が退避レジ
スタセット4にコピーされた後でも、デバッグ割り込み
が発生し、命令実行回路5aから出力されたデバッグ割
り込み時に、コピー信号INTCPが有効になれば、コ
ピーイベント発生時のレジスタセット3のレジスタ値が
保存されている退避レジスタセット4に、デバッグ割り
込み発生時のレジスタセット3のレジスタ値が上書きさ
れる。
【0102】従って、図7に示されるように、コピーイ
ベントが発生して、スーパーバイザ12が、図4に示さ
れるバッファ64を通してコピーイベント要因フラグが
有効であることを読み出すと、スーパーバイザ12は、
退避レジスタセット4からコピーイベント発生時のレジ
スタセット値を読み出した後、再度、バッファ67を通
して、デバッグ割り込み要因フラグを読み出す。
【0103】デバッグ割り込み要因フラグが有効であれ
ば、先ほど退避レジスタセット4から読み出した、コピ
ーイベント発生時のレジスタセット値は無効とし、デバ
ッグ割り込み要因フラグが無効であれば、先ほど読み出
したコピーイベント発生時のレジスタセット値は有効で
あると判断する。
【0104】また、再度、コピーイベントを発生させる
時は、スーパーバイザ12は、コピー要因フラグRS−
F/F66、及びコピーイベント生成回路6をリセット
し、新たに、コピーイベント生成回路6のイベント発生
条件を設定してから、コピーイベント発生制御用RS−
F/F19をセットする。
【0105】
【発明の効果】以上の説明から明らかなように、本発明
によれば、ユーザプログラム実行中のレジスタ値を、ス
ーパーバイザの読み出しに同期させて読み出すのではな
く、命令の実行に同期させて退避レジスタセットへコピ
ーさせたため、ユーザプログラム実行中に極めて頻繁に
内容が変化しているレジスタセットの値を、デバッグ割
り込みを行わずに読み出すことが可能なデバッグ機能内
蔵マイクロプロセッサを提供することができる。
【0106】また、レジスタセットの各レジスタを個別
に読み出すのではなく、同時に退避レジスタセットへコ
ピーさせて読み出すため、読み出し時間差による各レジ
スタの値の相対関係が崩れるようなことが無く、ユーザ
プログラム実行中に読み出したレジスタセットの各レジ
スタ値の同時性が保証されるデバッグ機能内蔵マイクロ
プロセッサを提供することができる。
【0107】さらに、デバッグ割り込み時に、レジスタ
セットのレジスタ値を一つずつメモリへ退避させず、一
度に退避用のレジスタセットへコピーし、RETSVI
命令実行時に、レジスタセットのレジスタ値を一つずつ
メモリから復帰させず、一度に退避用のレジスタセット
からレジスタセットへコピーさせるため、デバッグ割り
込みを発生させた場合、レジスタ値をメモリへ一つずつ
退避、復帰する必要が無くなり、マイクロプロセッサの
レジスタセット値を読み出すのではなく、周辺コントロ
ーラのレジスタ値、または、ユーザメモリの値を読み出
したい時には、一時的にデバッグ割り込みをして、ユー
ザ割り込みを禁止する期間を短くすることが可能なデバ
ッグ機能内蔵マイクロプロセッサを提供することができ
る。
【図面の簡単な説明】
【図1】本発明に係るデバッグ機能内蔵マイクロプロセ
ッサの一実施形態の構成を示すブロック図である。
【図2】図1に示されるコピーイベント生成回路の構成
を示すブロック図である。
【図3】図1に示されるレジスタセット及び退避レジス
タセットの構成を示すブロック図である。
【図4】図1に示される要因フラグの構成を示すブロッ
ク図である。
【図5】図1に示されるデバッグ割り込み状態判定回路
の構成を示すブロック図である。
【図6】本発明に係るデバッグ機能内蔵マイクロプロセ
ッサのコピー動作のタイミングチャートである。
【図7】図1に示されるデバッグ機能内蔵マイクロプロ
セッサのレジスタセットの読み出し処理のシーケンスチ
ャートである。
【図8】従来のデバッグ機能内蔵マイクロプロセッサの
構成を示すブロック図である。
【図9】図8に示されるレジスタセットの構成を示すブ
ロック図である。
【図10】図8に示される内部デバッグ割り込み信号生
成回路の構成を示すブロック図である。
【図11】図8に示される要因フラグの構成を示すブロ
ック図である。
【図12】図8に示される内部割り込み信号生成のタイ
ミングチャートである。
【図13】図8に示されるデバッグ機能内蔵マイクロプ
ロセッサのレジスタセットの読み出し処理のシーケンス
チャートである。
【符号の説明】
1a デバッグ機能内蔵マイクロプロセッサ 2 内部RAM 3 レジスタセット 4 退避レジスタセット 5a 命令実行回路 6 コピーイベント生成回路 7 デバッグ割り込み状態判定回路 8 内部デバッグ割り込み信号生成回路 9 ORゲート 10 要因フラグ 11 外部デバッグ割り込み信号生成回路 12 スーパーバイザ 13 発振器 14 D−F/F 15、16 比較器 17 デコーダ 18、19 RS−F/F 20 セレクタ 21 RS−F/F 22、23、24、25、26、27 ANDゲート 28 ORゲート 29、30、31 ANDゲート 32、33、34 NOTゲート 35 D−F/F 36 NOTゲート 37 D−F/F 38 RS−F/F 39 ANDゲート 40、41 バッファ 42 ANDゲート 43、44 バッファ 45 ANDゲート 46、47、48 ORゲート 49、50、51 ANDゲート 52、53、54、55、56、57 バッファ 58 デコーダ 59、60、61 D−F/F 62、63、64 バッファ 65 ANDゲート 66 RS−F/F 67 バッファ 68 デコーダ 69 ANDゲート 70 ORゲート 71 RS−F/F

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 ユーザプログラム実行中におけるデバッ
    グ用の割り込みを実行するための機能を有するデバッグ
    機能内蔵マイクロプロセッサにおいて、 該デバッグ機能内蔵マイクロプロセッサの動作を制御す
    るための少なくとも1以上の制御信号と、データ信号と
    を出力する命令実行回路と、 前記命令実行回路から出力されたデータ信号により表さ
    れるデータを格納するレジスタセットと、 外部から直接読み出し、及び、書き込みができ、かつ、
    前記レジスタセットに格納されたデータをコピーして格
    納することが可能な退避レジスタセットとを有し、 前記デバッグ割り込みの実行中、若しくは、所定の条件
    が成立した際に、命令実行に同期してレジスタセットに
    格納された値が退避レジスタセットにコピーされ、ま
    た、デバッグ割り込み状態から戻る命令の実行中に、前
    記退避レジスタセットに格納された値が前記レジスタセ
    ットにコピーされることを特徴とするデバッグ機能内蔵
    マイクロプロセッサ。
  2. 【請求項2】 前記退避レジスタセットに対する、直接
    の読み出し、及び、書き込みが、前記デバッグ機能内蔵
    マイクロプロセッサの外部に接続されたスーパーバイザ
    により実行されることを特徴とする請求項1記載のデバ
    ッグ機能内蔵マイクロプロセッサ。
  3. 【請求項3】 データ信号と、命令を実行させるための
    少なくとも1以上の制御信号とを出力する命令実行回路
    と、 外部から出力された制御信号に基づき、デバッグ割り込
    みを実行させるための内部デバッグ割り込み信号を生成
    する内部デバッグ割り込み信号生成回路と、 前記内部デバッグ割り込み信号、若しくは外部から出力
    された外部デバッグ割り込み信号に基づき、デバッグ割
    り込み状態であるか否かを判定し、該判定の結果を表す
    信号を命令実行回路に出力するデバッグ状態判定回路
    と、 前記制御信号、若しくは、外部から出力された制御信号
    に基づき、レジスタセットと退避レジスタセットとの間
    において、それぞれに格納されているデータを相手にコ
    ピーする動作であるコピーイベントを実行させる、コピ
    ーイベント実行信号を出力するコピーイベント生成回路
    と、 前記データ信号をデータとして格納するレジスタセット
    と、 外部からの読み出し、及び書き込みが可能な、データを
    格納するための退避レジスタセットとを有し、 前記デバッグ割り込みの実行中、若しくは、所定の条件
    が成立した際に、命令実行に同期してレジスタセットに
    格納された値が退避レジスタセットにコピーされ、ま
    た、デバッグ割り込み状態から戻る命令の実行中に、前
    記退避レジスタセットに格納された値が前記レジスタセ
    ットへコピーされることを特徴とするデバッグ機能内蔵
    マイクロプロセッサ。
  4. 【請求項4】 前記コピーイベント生成回路が、 前記命令実行回路から出力された制御信号を入力する少
    なくとも2以上のNOTゲートからなるNOTゲート群
    と、 前記命令実行回路から出力されたアドレス信号を入力す
    る第1の比較器と、 前記命令実行回路から出力されたデータ信号を入力する
    第2の比較器と、 前記外部から出力された制御信号を入力し、前記比較器
    に出力信号を出力する少なくとも1以上のD型フリップ
    フロップと、 前記外部から出力された制御信号を入力する第1のデコ
    ーダと、 前記外部から出力された制御信号と、前記第1のデコー
    ダから出力された信号とが入力する少なくとも2以上の
    ANDゲートからなる第1のANDゲート群と、 前記第1のANDゲート群から出力された信号の1つを
    セットに入力し、他の1つの信号をリセットに入力する
    第1のRS型フリップフロップと、 前記NOTゲートから出力された信号が入力する第1の
    ORゲートと、 前記NOTゲートから出力された信号と、前記第1の比
    較器から出力された信号と、前記第2の比較器から出力
    された信号とが入力する第1のANDゲートと、 前記少なくとも2以上のANDゲートからなる第1のA
    NDゲート群から出力された信号の1つをセットに入力
    し、他の1つの信号をリセットに入力する第2のRS型
    フリップフロップと、 前記少なくとも2以上のANDゲートからなる第1のA
    NDゲート群から出力された信号の1つをセットに入力
    し、他の1つの信号をリセットに入力する第3のRS型
    フリップフロップと、 前記第1のORゲートから出力された信号と、前記第1
    のRS型フリップフロップから出力された信号とが入力
    する第2のANDゲートと、 前記第1のANDゲートから出力された信号と、前記第
    2のフリップフロップから出力された信号と、前記第2
    のANDゲートから出力された信号とが入力するセレク
    タと、 前記デバッグ割り込み状態判定回路から出力された信号
    が入力する第1のNOTゲートと、 前記第1のNOTゲートから出力された信号と、前記セ
    レクタから出力された信号と、前記第3のRS型フリッ
    プフロップから出力された信号とが入力する第3のAN
    Dゲートと、 前記第3のANDゲートから出力された信号をセットに
    入力し、前記少なくとも2以上のANDゲートからなる
    第1のANDゲート群から出力された信号の1つをリセ
    ットに入力する第4のRS型フリップフロップと、 前記第4のRS型フリップフロップから出力された信号
    を入力する第1のD型フリップフロップと、 クロック信号が入力する第2のNOTゲートとを有する
    ことを特徴とする請求項3記載のデバッグ機能内蔵マイ
    クロプロセッサ。
  5. 【請求項5】 前記レジスタセットが、 前記命令実行回路から出力された制御信号を入力する第
    2のデコーダと、 前記命令実行回路から出力された制御信号と、前記第2
    のデコーダから出力された信号とが入力する少なくとも
    1以上のANDゲートからなる第2のANDゲート群
    と、 前記命令実行回路から出力された制御信号が入力する第
    1のバッファと、前記命令実行回路から出力されたデー
    タ信号が入力する第2のバッファと、前記デコーダから
    出力された信号が入力する第4のANDゲートと、前記
    第4のANDゲートから出力された信号が入力する第2
    のORゲートと、前記第1のバッファ、前記第2のバッ
    ファ及び前記第2のORゲートから出力された信号が入
    力する第2のD型フリップフロップと、前記第2のD型
    フリップフロップから出力された信号が入力する第3の
    バッファと、前記第2のD型フリップフロップから出力
    された信号が入力する第4のバッファとから構成される
    少なくとも1以上のレジスタ部とを有することを特徴と
    する請求項3又は4に記載のデバッグ機能内蔵マイクロ
    プロセッサ。
  6. 【請求項6】 前記デバッグ割り込み状態判定回路が、 前記内部デバッグ割り込み信号生成回路から出力された
    デバッグ割り込み信号と、外部から出力されたデバッグ
    割り込み信号とを入力する第3のORゲートと、 前記第3のORゲートから出力された信号をセットに入
    力し、前記命令実行回路から出力された制御信号をリセ
    ットに入力する第5のRS型フリップフロップとを有す
    ることを特徴とする請求項3から5のいずれかに記載の
    デバッグ機能内蔵マイクロプロセッサ。
JP9216549A 1997-08-11 1997-08-11 デバッグ機能内蔵マイクロプロセッサ Pending JPH1165883A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9216549A JPH1165883A (ja) 1997-08-11 1997-08-11 デバッグ機能内蔵マイクロプロセッサ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9216549A JPH1165883A (ja) 1997-08-11 1997-08-11 デバッグ機能内蔵マイクロプロセッサ

Publications (1)

Publication Number Publication Date
JPH1165883A true JPH1165883A (ja) 1999-03-09

Family

ID=16690186

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9216549A Pending JPH1165883A (ja) 1997-08-11 1997-08-11 デバッグ機能内蔵マイクロプロセッサ

Country Status (1)

Country Link
JP (1) JPH1165883A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009080632A (ja) * 2007-09-26 2009-04-16 Nec Electronics Corp 半導体集積回路

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009080632A (ja) * 2007-09-26 2009-04-16 Nec Electronics Corp 半導体集積回路
US8429615B2 (en) 2007-09-26 2013-04-23 Renesas Electronics Corporation Semiconductor integrated circuit

Similar Documents

Publication Publication Date Title
JP3233817B2 (ja) 先入れ先出し方式(fifo)メモリ装置における予測ステータスフラグ生成方法およびその装置
JPH05100905A (ja) ハードウエア支援ブレークポイント機能を有するシステム及び該機能を設ける方法
JPS5887646A (ja) タイマ・エラ−訂正方法
JP3260083B2 (ja) デバッグシステム及びデバッグ方法
JPH1165883A (ja) デバッグ機能内蔵マイクロプロセッサ
US5304855A (en) Bi-level pulse accumulator
JP3098409B2 (ja) 命令をリアル・タイムで処理する装置または方法
JPS61123959A (ja) 着脱自在なメモリモジユ−ルを有する電子機器
US6463551B1 (en) Debug circuit and microcomputer incorporating debug circuit
JPH08235073A (ja) マイクロコンピュータ
US5813039A (en) Guest execution control system, method and computer process for a virtual machine system
JPH0423051A (ja) マイクロプロセッサ
JP3089866B2 (ja) エミュレーション回路
JPS6295644A (ja) マイクロプロセッサ用プログラムデバッグ装置
JP3366235B2 (ja) データ読み出し制御装置
JP3001547B1 (ja) インサーキットエミュレータ
JP3405513B2 (ja) プログラマブルコントローラの二重化制御装置
JP2712730B2 (ja) エバリュエーションチップ
JP2781973B2 (ja) メモリー内容更新回路
JP2001092692A (ja) 時間測定回路及び時間測定方法
JPH04255028A (ja) マイクロプロセッサ
JP2770420B2 (ja) マイクロプログラム制御方式
JP2678112B2 (ja) リアルタイム出力ポート
JPS583012A (ja) タイムオブディクロックの同期化方式
EP0333213A2 (en) Microcomputer producing pulses at outout ports in sequence in response to request signal

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20010703