(57)【要約】【課題】デバッグサポート装置が、中央処理装置の代わりに、デバッグ中のメモリ空間切り替え要因の検出と、メモリ空間の切り替え制御をおこなうこと。【解決手段】デバッグサポート装置１５に、未定義命令フェッチまたはブレイクポイントを検出するメモリ空間切り替え要因検出部１２と、未定義命令フェッチもしくはブレイクポイントの検出時にメモリ空間をユーザメモリ空間１４からデバッグメモリ空間１７へ切り替える際の切り替えを制御するメモリ空間切り替え制御部１３を設ける。メモリ空間切り替え制御部１３は、ステップ実行ブレイク許可時には、一命令実行ごとにメモリ空間をユーザメモリ空間１４からデバッグメモリ空間１７へ切り替える。また、メモリ空間をデバッグメモリ空間１７に切り替える際に、メモリ空間切り替え要因検出部１２は、ＣＰＵ１１に対する強制割り込みを発生する。【選択図】      図１
2004252589.tif 000002
【特許請求の範囲】
【請求項１】
デバッグ中にユーザメモリ空間とデバッグメモリ空間の両方にアクセス可能な中央処理装置とともにマイクロコンピュータに搭載されるデバッグサポート装置であって、
デバッグ中に前記中央処理装置のアクセスを監視して、ユーザメモリ空間とデバッグメモリ空間とを切り替えるための要因を検出するメモリ空間切り替え要因検出手段を具備することを特徴とするデバッグサポート装置。
【請求項２】
デバッグ中にユーザメモリ空間とデバッグメモリ空間とを切り替える際の切り替えを制御するメモリ空間切り替え制御手段をさらに具備することを特徴とする請求項１に記載のデバッグサポート装置。
【請求項３】
前記メモリ空間切り替え要因検出手段が、メモリ空間を切り替えるための要因として未定義命令フェッチを検出すると、前記メモリ空間切り替え制御手段は、メモリ空間をユーザメモリ空間からデバッグメモリ空間へ切り替える制御をおこなうことを特徴とする請求項２に記載のデバッグサポート装置。
【請求項４】
前記メモリ空間切り替え要因検出手段が、メモリ空間を切り替えるための要因として、あらかじめ設定されたブレイクポイントを検出すると、前記メモリ空間切り替え制御手段は、メモリ空間をユーザメモリ空間からデバッグメモリ空間へ切り替える制御をおこなうことを特徴とする請求項２に記載のデバッグサポート装置。
【請求項５】
前記メモリ空間切り替え制御手段は、ステップ実行ブレイク許可時に、一命令実行ごとにメモリ空間をユーザメモリ空間からデバッグメモリ空間へ切り替える制御をおこなうことを特徴とする請求項２に記載のデバッグサポート装置。
【請求項６】
前記メモリ空間切り替え要因検出手段が、メモリ空間を切り替えるための要因としてリターンインタラプト命令フェッチを検出すると、前記メモリ空間切り替え制御手段は、メモリ空間をデバッグメモリ空間からユーザメモリ空間へ切り替える制御をおこなうことを特徴とする請求項２〜５のいずれか一つに記載のデバッグサポート装置。
【請求項７】
前記メモリ空間切り替え要因検出手段は、前記メモリ空間切り替え制御手段によりメモリ空間がユーザメモリ空間からデバッグメモリ空間へ切り替えられるときに、中央処理装置に対する強制割り込みを発生することを特徴とする請求項２〜５のいずれか一つに記載のデバッグサポート装置。
【請求項８】
デバッグ中にユーザメモリ空間とデバッグメモリ空間の両方にアクセス可能な中央処理装置とともにマイクロコンピュータに搭載されるデバッグサポート装置であって、
デバッグメモリ空間からユーザメモリ空間へのアクセスが許可されている間、中央処理装置のアクセスがオペコードフェッチもしくはオペランドフェッチであればメモリ空間がデバッグメモリ空間であることを示す信号を出力し、一方、中央処理装置のアクセスがデータアクセスであればメモリ空間がユーザメモリ空間であることを示す信号を出力するメモリ空間制御手段を具備することを特徴とするデバッグサポート装置。
【請求項９】
デバッグ中にユーザメモリ空間とデバッグメモリ空間の両方にアクセス可能な中央処理装置とともにマイクロコンピュータに搭載されるデバッグサポート装置であって、
デバッグメモリ空間からユーザメモリ空間へのアクセスが許可されているときにセットされるアクセス許可ビットと、
メモリ空間がユーザメモリ空間であるときにゼロを出力し、メモリ空間がデバッグメモリ空間であるときに１を出力するメモリ空間制御手段と、
前記アクセス許可ビットがセットされている間、中央処理装置のアクセスがオペコードフェッチもしくはオペランドフェッチであれば１となり、中央処理装置のアクセスがデータアクセスであればゼロとなる信号を選択して出力し、一方、前記アクセス許可ビットがクリアされているときには、前記メモリ空間制御手段から出力される信号を選択して出力するセレクタと、
を具備することを特徴とするデバッグサポート装置。
【請求項１０】
前記セレクタの出力信号がゼロから１に切り替わるのを検出したときに、前記アクセス許可ビットをクリアする検出器をさらに具備することを特徴とする請求項９に記載のデバッグサポート装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、マイクロコンピュータに搭載されるデバッグサポート装置に関する。
【０００２】
マイクロコンピュータには、マイクロコンピュータで実行されるファームウェア等のプログラムのデバッグ作業をおこなうために、デバッグサポート装置が搭載されることがある。このようなマイクロコンピュータは、デバッグ対象プログラムを格納し、またその実行時に作業領域となるユーザメモリ空間と、デバッグ処理をおこなうための割り込み処理プログラムを格納するデバッグメモリ空間を備えている。そして、デバッグ中に、ＣＰＵ（中央処理装置）は、ユーザメモリ空間とデバッグメモリ空間の両方にアクセスする。
【０００３】
【従来の技術】
図６は、従来のデバッグサポート装置搭載マイクロコンピュータの概略構成を機能的に示すブロック図である。図６に示すように、従来は、ユーザメモリ空間４とデバッグメモリ空間７との切り替え要因を検出する機能を実現するメモリ空間切り替え要因検出部２と、メモリ空間の切り替えを制御する機能を実現するメモリ空間切り替え制御部３は、ＣＰＵ１に設けられている。
【０００４】
したがって、現在のメモリ空間がユーザメモリ空間４にあるときに、ＣＰＵ１がブレイクポイント検出、未定義命令フェッチ検出またはステップ実行ブレイクをおこなうと、ＣＰＵ１は強制割り込み処理を開始する。それによって、デバッグサポート装置５のメモリ空間切り替え回路６を介して、メモリ空間がデバッグメモリ空間７に切り替えられる。
【０００５】
一方、現在のメモリ空間がデバッグメモリ空間７にあるときに、ＣＰＵ１は、ＲＥＴＩ命令（リターンインタラプト命令）フェッチを検出すると、メモリ空間をユーザメモリ空間４に切り替える。それと同時に、ＣＰＵ１は、ＲＥＴＩ命令を実行し、ユーザメモリ空間４からデバッグメモリ空間７へ移行するときの強制割り込みに対する復帰をおこなう。
【０００６】
また、従来のデバッグサポート装置搭載マイクロコンピュータでは、デバッグメモリ空間からユーザメモリ空間へアクセスをおこなう際には、ワンショットのメモリ空間切り替え信号が発生する。そのため、メモリ空間切り替え信号が発生したつぎのアクセスに限って、デバッグメモリ空間からユーザメモリ空間へアクセスすることができる。
【０００７】
また、デバッグサポート装置に関して、被デバッグシステムとデバッグサポートシステムとの間のメモリ空間の切り替えをおこなう技術が公知である（特許文献１参照）。また、インサーキットエミュレータを用いてバンクメモリ上に配置されたソフトウェアのデバッグをおこなう技術が公知である（特許文献２参照）。
【０００８】
【特許文献１】
特開平２−２８７３２号公報
【特許文献２】
特開平５−１１３９０６号公報
【０００９】
【発明が解決しようとする課題】
しかしながら、従来のデバッグサポート装置搭載マイクロコンピュータ（以下、評価用マイコンとする）のＣＰＵは、メモリ空間を切り替えるための多機能化により、デバッグサポート装置を搭載しないマイクロコンピュータ（以下、量産用マイコンとする）のＣＰＵと比較して、ゲート数が多くなり、面積が大きくなる。したがって、評価用マイコン向けのＣＰＵと量産用マイコン向けのＣＰＵとでは互換性がなくなるため、それらを別々に用意しなければならないという問題点がある。
【００１０】
また、従来の評価用マイコンでは、デバックメモリ空間からユーザメモリ空間へのバスのデータ幅を超えるデータアクセスを１命令でおこなうことができない。たとえば８ビットのバス幅に対して、ＣＰＵが、１６ビットデータのリードまたはライトをおこなう場合には、ワンショットで１回目のユーザメモリ空間への切り替えをおこない、最初の８ビットデータをユーザメモリ空間へアクセスした後、つづくワンショットで２回目のユーザメモリ空間への切り替えおよび残りの８ビットデータのアクセスをおこなうことになる。そのため、デバッグメモリ空間からユーザメモリ空間へのアクセス効率が悪いという問題点がある。
【００１１】
本発明は、上記問題点に鑑みてなされたものであって、ＣＰＵの代わりに、デバッグ中のメモリ空間切り替え要因の検出と、メモリ空間の切り替え制御をおこなうことが可能なデバッグサポート装置を提供することを目的とする。また、本発明は、デバッグ中にユーザメモリ空間への連続するデータアクセスを可能とするデバッグサポート装置を提供することを目的とする。
【００１２】
【課題を解決するための手段】
上記目的を達成するため、本発明にかかるデバッグサポート装置は、未定義命令フェッチまたはブレイクポイントを検出するメモリ空間切り替え要因検出手段と、未定義命令フェッチもしくはブレイクポイントの検出時にメモリ空間をユーザメモリ空間からデバッグメモリ空間へ切り替える際の切り替えを制御するメモリ空間切り替え制御手段を有することを特徴とする。また、メモリ空間切り替え制御手段は、ステップ実行ブレイク許可時には、一命令実行ごとにメモリ空間をユーザメモリ空間からデバッグメモリ空間へ切り替える。そして、メモリ空間をデバッグメモリ空間に切り替える際に、デバッグサポート装置は、ＣＰＵに対する強制割り込みを発生する。
【００１３】
この発明によれば、デバッグサポート装置は、ＣＰＵの代わりに、メモリ空間切り替え要因を検出して、メモリ空間をユーザメモリ空間からデバッグメモリ空間へ切り替えることができる。
【００１４】
この発明において、メモリ空間切り替え要因検出手段はＲＥＴＩ命令フェッチを検出し、その検出時に、メモリ空間切り替え制御手段がメモリ空間をデバッグメモリ空間からユーザメモリ空間へ切り替える構成としてもよい。この場合には、デバッグサポート装置は、ＣＰＵの代わりに、ＲＥＴＩ命令フェッチを検出して、メモリ空間をデバッグメモリ空間からユーザメモリ空間へ切り替えることができる。
【００１５】
また、上記目的を達成するため、本発明にかかるデバッグサポート装置は、デバッグメモリ空間からユーザメモリ空間へのアクセスが許可されているときにセットされるレジスタを有し、このレジスタがセットされている間、ＣＰＵのアクセスがデータアクセスであればメモリ空間がユーザメモリ空間であることを示す信号を出力し、ＣＰＵのアクセスがオペコードフェッチもしくはオペランドフェッチであればメモリ空間がデバッグメモリ空間であることを示す信号を出力するメモリ空間制御手段を有することを特徴とする。そして、前記レジスタは、メモリ空間を示す信号がユーザメモリ空間を示す状態からデバッグメモリ空間を示す状態に切り替わったときにクリアされる。
【００１６】
この発明によれば、デバッグ中に、ＣＰＵのアクセスがデータアクセスである限り、メモリ空間がユーザメモリ空間となるので、ユーザメモリ空間への連続するデータアクセスが可能となる。
【００１７】
【発明の実施の形態】
以下に、本発明の実施の形態について図面を参照しつつ詳細に説明する。
【００１８】
（実施の形態１）
図１は、本発明の実施の形態１にかかるデバッグサポート装置によるデバッグ環境の概略構成を機能的に示すブロック図である。図１において、ＣＰＵ１１、メモリ空間切り替え要因検出部１２、メモリ空間切り替え制御部１３、ユーザメモリ空間１４、デバッグサポート装置１５、メモリ空間切り替え回路１６およびデバッグメモリ空間１７は、評価用マイコンの構成要素である。
【００１９】
メモリ空間切り替え要因検出部１２とメモリ空間切り替え制御部１３は、デバッグサポート装置１５に実装されている。したがって、実施の形態１では、ＣＰＵ１１は、メモリ空間の切り替え要因を検出する機能、およびメモリ空間の切り替えを制御する機能を備えていない。これらの機能は、デバッグサポート装置１５により実現される。
【００２０】
図２は、デバッグサポート装置１５の詳細な構成を機能的に示すブロック図である。図２に示すように、メモリ空間切り替え要因検出部１２は、ブレイク制御部２１および複数の比較器２２ａ，２２ｂ，２２ｃ，２２ｄを備えている。なお、図２に４個の比較器を示したが、比較器の数は、アドレスブレイク、命令ブレイク、オペランドブレイクまたはデータブレイクなどのブレイク要因の数に応じて増減し、２個、３個または５個以上でもよい。以下の説明では、便宜上、第１の比較器２２ａ、第２の比較器２２ｂ、第３の比較器２２ｃ、第４の比較器２２ｄとする。
【００２１】
メモリ空間切り替え要因検出部１２は、ＣＰＵ１１がメモリ空間切り替え回路１６を介してユーザメモリ空間１４またはデバッグメモリ空間１７に対しておこなうアクセスを常に監視している。そして、第１の比較器２２ａ、第２の比較器２２ｂ、第３の比較器２２ｃおよび第４の比較器２２ｄは、種々のブレイクポイントのコードおよびＲＥＴＩ命令のコードのうち、それぞれに割り当てられたコードと、ＣＰＵ１１によりフェッチされたコードとの比較をおこなう。
【００２２】
ここで、図２では、各比較器２２ａ，２２ｂ，２２ｃ，２２ｄにおいて、ＣＰＵ１１のフェッチコードに対する比較対象を明示するため、種々のブレイクポイントのコードを、対応する第１〜第３の比較器２２ａ，２２ｂ，２２ｃから抜き出して、ブレイク要因０、ブレイク要因１およびブレイク要因ｎとして示している。また、ＲＥＴＩ命令のコードも、対応する第４の比較器２２ｄから抜き出して明示している。
【００２３】
ブレイク制御部２１は、第１〜第３の比較器２２ａ，２２ｂ，２２ｃのいずれかにおいてＣＰＵ１１のフェッチコードとブレイクポイントのコードが一致したとき、すなわちブレイクポイントが検出されたときに、ＣＰＵ１１に強制割り込みをかける。また、ブレイク制御部２１は、ステップ実行ブレイクが許可されているときには、ユーザメモリ空間１４で一命令を実行するごとに、ＣＰＵ１１に強制割り込みをかける。
【００２４】
また、ブレイク制御部２１は、ＣＰＵ１１が未定義命令をフェッチしたときにも、ＣＰＵ１１に強制割り込みをかける。未定義命令フェッチの検出は、メモリ空間切り替え要因検出部１２によりおこなわれるが、この検出機能を実現する構成については、図示省略する。
【００２５】
メモリ空間切り替え制御部１３は、強制割り込み／割り込み復帰検出部２５および割り込み処理／復帰処理シーケンス制御部２６を備えている。強制割り込み／割り込み復帰検出部２５は、ブレイク制御部２１によりＣＰＵ１１に強制割り込みがかけられたことの検出をおこなう。また、強制割り込み／割り込み復帰検出部２５は、第４の比較器２２ｄにおいてＣＰＵ１１のフェッチコードとＲＥＴＩ命令のコードが一致したことの検出をおこなう。
【００２６】
割り込み処理／復帰処理シーケンス制御部２６は、強制割り込み／割り込み復帰検出部２５によりＣＰＵ１１に対する強制割り込みの発生が検出されると、メモリ空間をユーザメモリ空間１４からデバッグメモリ空間１７へ切り替えるためのシーケンス制御をおこなう。また、割り込み処理／復帰処理シーケンス制御部２６は、強制割り込み／割り込み復帰検出部２５によりＲＥＴＩ命令が検出されると、メモリ空間をデバッグメモリ空間１７からユーザメモリ空間１４へ切り替えるためのシーケンス制御をおこなう。
【００２７】
メモリ空間切り替え回路１６は、割り込み処理／復帰処理シーケンス制御部２６のシーケンス制御に基づいて、メモリ空間の切り替えをおこなう。ＣＰＵ１１は、強制割り込みが発生すると、割り込み処理をおこなう。また、ＣＰＵ１１は、ＲＥＴＩ命令を実行し、強制割り込みに対する復帰処理をおこなう。
【００２８】
つぎに、図２に示す装置の動作について説明する。現在のメモリ空間がユーザメモリ空間１４にある場合に、メモリ空間切り替え要因検出部１２は、ＣＰＵ１１が未定義命令フェッチまたはブレイクポイントのアクセスをおこなったことを検出すると、ＣＰＵ１１に対して強制割り込みを発生する。それによって、ＣＰＵ１１は割り込み処理を開始する。また、メモリ空間切り替え制御部１３は、ＣＰＵ１１に対する強制割り込みの発生が通知されると、メモリ空間切り替え回路１６に、メモリ空間をデバッグメモリ空間１７へ切り替える信号を出力する。それによって、メモリ空間がデバッグメモリ空間１７へ切り替えられる。
【００２９】
ステップ実行ブレイクが許可されている場合には、メモリ空間切り替え要因検出部１２は、ユーザメモリ空間１４で一命令を実行するごとにＣＰＵ１１に対する強制割り込みを発生する。それによって、ＣＰＵ１１は、一命令実行ごとに割り込み処理をおこなう。また、メモリ空間切り替え制御部１３は、一命令実行ごとにメモリ空間切り替え回路１６に、メモリ空間をデバッグメモリ空間１７へ切り替える信号を出力する。それによって、メモリ空間が一命令ごとにデバッグメモリ空間１７へ切り替えられる。
【００３０】
一方、現在のメモリ空間がデバッグメモリ空間１７にある場合に、メモリ空間切り替え要因検出部１２は、ＣＰＵ１１がＲＥＴＩ命令フェッチをおこなったことを検出すると、それをメモリ空間切り替え制御部１３に通知する。その通知に基づいて、メモリ空間切り替え制御部１３は、メモリ空間切り替え回路１６に、メモリ空間をユーザメモリ空間１４へ切り替える信号を出力する。それによって、メモリ空間がユーザメモリ空間１４へ切り替えられる。それと同時に、ＣＰＵ１１はＲＥＴＩ命令を実行し、ユーザメモリ空間１４からデバッグメモリ空間１７へ移行するときの強制割り込みに対する復帰処理をおこなう。
【００３１】
上述した実施の形態１によれば、デバッグサポート装置１５に、メモリ空間を切り替える要因を検出する機能と、メモリ空間の切り替えを制御する機能が実装されているので、ＣＰＵに代わって、デバッグサポート装置１５によりメモリ空間の切り替えをおこなうことができる。したがって、ＣＰＵ１１を多機能化、多ゲート化および大型化することなく、評価用マイコンを構成することができるので、評価用マイコン向けのＣＰＵ１１と量産用マイコン向けのＣＰＵとで互換性をもたせることができる。たとえば、８ビットのＣＰＵの場合には、定義するブレイク要因の数にもよるが、ＣＰＵのゲート面積を従来に比べておおよそ１〜２割程度改善することができる。
【００３２】
（実施の形態２）
図３は、本発明の実施の形態２にかかるデバッグサポート装置によるデバッグ環境の概略構成を機能的に示すブロック図である。図３において、ＣＰＵ３１、ユーザメモリ空間３４、デバッグサポート装置３５、メモリ空間切り替え回路３６、デバッグメモリ空間３７、メモリ空間制御部３８、ユーザメモリ空間アクセス制御部４１およびメモリ空間制御部本体４２は、評価用マイコンの構成要素である。
【００３３】
メモリ空間制御部３８は、デバッグサポート装置３５に実装されている。ユーザメモリ空間アクセス制御部４１およびメモリ空間制御部本体４２は、メモリ空間制御部３８に実装されている。ユーザメモリ空間アクセス制御部４１は、デバッグ中にユーザメモリ空間３４への連続するデータアクセスをおこなう機能を実現する。
【００３４】
メモリ空間制御部本体４２は、メモリ空間がユーザメモリ空間３４にある場合に、デバッグメモリ空間切り替え要因検出後にメモリ空間をデバッグメモリ空間３７へ切り替える。また、メモリ空間制御部本体４２は、メモリ空間がデバッグメモリ空間３７にある場合には、ユーザメモリ空間切り替え要因検出後にメモリ空間をユーザメモリ空間３４へ切り替える。
【００３５】
図４は、デバッグサポート装置のメモリ空間制御部３８の詳細な構成を機能的に示すブロック図である。図４に示すように、ユーザメモリ空間アクセス制御部４１は、セレクタ５１、ユーザメモリ空間アクセス許可ビット５２および立ち上がり検出器５３を備えている。
【００３６】
セレクタ５１は、ユーザメモリ空間アクセス許可ビット５２の値がゼロのときに、メモリ空間切り替え回路３６に、メモリ空間を示す信号（メモリ空間信号）としてメモリ空間制御部本体４２の出力信号を供給する。また、セレクタ５１は、ユーザメモリ空間アクセス許可ビット５２の値が１のときに、メモリ空間切り替え回路３６に、メモリ空間信号としてオペコード信号またはオペランド信号を供給する。
【００３７】
ここで、メモリ空間制御部本体４２の出力信号は、ゼロの場合にユーザメモリ空間３４を示し、１の場合にデバッグメモリ空間３７を示す。また、オペコード信号またはオペランド信号は、ＣＰＵ３１のアクセスがオペコードフェッチまたはオペランドフェッチの場合に１となり、ＣＰＵ３１のアクセスがデータアクセスの場合にゼロとなる。ＣＰＵ３１のアクセスがオペコードフェッチまたはオペランドフェッチの場合のメモリ空間は、デバッグメモリ空間３７である。ＣＰＵ３１のアクセスがデータアクセスの場合のメモリ空間は、ユーザメモリ空間３４である。
【００３８】
ユーザメモリ空間アクセス許可ビット５２は、デバッグメモリ空間３７からユーザメモリ空間３４へのアクセスを許可するビットであり、ＣＰＵ３１によりセットされる。このユーザメモリ空間アクセス許可ビット５２がセットされる、すなわちユーザメモリ空間アクセス許可ビット５２の値が１であると、つぎのデータアクセスをユーザメモリ空間３４へおこなうことが許可される。ユーザメモリ空間アクセス許可ビット５２は、デバッグサポート装置３５内のレジスタに設けられており、デバッグメモリ空間３７の一部を構成するが、これについては、図３では省略している。
【００３９】
ユーザメモリ空間アクセス許可ビット５２は、セレクタ５１から出力されたメモリ空間信号がゼロから１へ変化したときに、クリアされ、ゼロに戻る。立ち上がり検出器５３は、セレクタ５１から出力されたメモリ空間信号がゼロから１へ変化したことの検出をおこなう。
【００４０】
つぎに、図４に示す装置の動作について説明する。現在のメモリ空間がデバッグメモリ空間３７にある場合に、ユーザメモリ空間アクセス許可ビット５２をセットすると、セレクタ５１から出力されるメモリ空間信号は、メモリ空間制御部本体４２の出力信号から、オペコード信号またはオペランド信号へ切り替わる。
【００４１】
その後、ＣＰＵ３１がおこなうアクセスがデータの場合には、メモリ空間はユーザメモリ空間３４となり、セレクタ５１から出力されるメモリ空間信号はゼロである。したがって、立ち上がり検出器５３がメモリ空間信号の立ち上がりを検出しないので、ユーザメモリ空間アクセス許可ビット５２はクリアされずに、セットされたままである。
【００４２】
この状態で、ＣＰＵ３１がつづいてデータアクセスをおこなうと、メモリ空間はユーザメモリ空間３４となる。このように、ＣＰＵ３１がつぎにオペコードまたはオペランドをアクセスするまで、メモリ空間はユーザメモリ空間３４となり、ＣＰＵ３１は連続してユーザメモリ空間３４へデータアクセスをおこなう。
【００４３】
そして、ＣＰＵ３１のアクセスがオペコードまたはオペランドになると、セレクタ５１から出力されるメモリ空間信号は１に切り替わる。それによって、立ち上がり検出器５３がこのメモリ空間信号の立ち上がりを検出し、ユーザメモリ空間アクセス許可ビット５２はクリアされてゼロに戻る。また、メモリ空間はデバッグメモリ空間３７に切り替わる。
【００４４】
ユーザメモリ空間アクセス許可ビット５２がセットされてからクリアされるまでのタイミングチャートを図５に示す。図５においては、“バス”として、具体的なデータではなく、アクセスの種類、すなわちオペコード、オペランドまたはデータを記している。図５に示すタイミングチャートでは、ユーザメモリ空間３４へのデータアクセスが、バスのデータ０とデータ１に対して連続しておこなわれている。そして、データ１に対するデータアクセスのつぎのオペコードフェッチによって、メモリ空間信号がゼロから１に切り替わり、ユーザメモリ空間アクセス許可ビット５２が１からゼロに戻っている。
【００４５】
上述した実施の形態２によれば、ユーザメモリ空間アクセス許可ビット５２がセットされている間、ＣＰＵ３１のアクセスがデータアクセスである限り、メモリ空間がユーザメモリ空間３４になるので、連続してユーザメモリ空間３４へアクセスすることができる。したがって、デバッグ時のユーザメモリ空間３４への連続するデータに対するアクセス効率が向上する。
【００４６】
以上において本発明は、上述した各実施の形態に限らず、種々変更可能である。たとえば、デバッグメモリ空間とユーザメモリ空間とは、物理的に別々のメモリ内に設けられていてもよいし、物理的に同一のメモリ内に設けられていてもよい。
【００４７】
（付記１）デバッグ中にユーザメモリ空間とデバッグメモリ空間の両方にアクセス可能な中央処理装置とともにマイクロコンピュータに搭載されるデバッグサポート装置であって、
デバッグ中に前記中央処理装置のアクセスを監視して、ユーザメモリ空間とデバッグメモリ空間とを切り替えるための要因を検出するメモリ空間切り替え要因検出手段を具備することを特徴とするデバッグサポート装置。
【００４８】
（付記２）デバッグ中にユーザメモリ空間とデバッグメモリ空間とを切り替える際の切り替えを制御するメモリ空間切り替え制御手段をさらに具備することを特徴とする付記１に記載のデバッグサポート装置。
【００４９】
（付記３）前記メモリ空間切り替え要因検出手段が、メモリ空間を切り替えるための要因として未定義命令フェッチを検出すると、前記メモリ空間切り替え制御手段は、メモリ空間をユーザメモリ空間からデバッグメモリ空間へ切り替える制御をおこなうことを特徴とする付記２に記載のデバッグサポート装置。
【００５０】
（付記４）前記メモリ空間切り替え要因検出手段が、メモリ空間を切り替えるための要因として、あらかじめ設定されたブレイクポイントを検出すると、前記メモリ空間切り替え制御手段は、メモリ空間をユーザメモリ空間からデバッグメモリ空間へ切り替える制御をおこなうことを特徴とする付記２に記載のデバッグサポート装置。
【００５１】
（付記５）前記メモリ空間切り替え制御手段は、ステップ実行ブレイク許可時に、一命令実行ごとにメモリ空間をユーザメモリ空間からデバッグメモリ空間へ切り替える制御をおこなうことを特徴とする付記２に記載のデバッグサポート装置。
【００５２】
（付記６）前記メモリ空間切り替え要因検出手段が、メモリ空間を切り替えるための要因としてリターンインタラプト命令フェッチを検出すると、前記メモリ空間切り替え制御手段は、メモリ空間をデバッグメモリ空間からユーザメモリ空間へ切り替える制御をおこなうことを特徴とする付記２〜５のいずれか一つに記載のデバッグサポート装置。
【００５３】
（付記７）前記メモリ空間切り替え要因検出手段は、前記メモリ空間切り替え制御手段によりメモリ空間がユーザメモリ空間からデバッグメモリ空間へ切り替えられるときに、中央処理装置に対する強制割り込みを発生することを特徴とする付記２〜５のいずれか一つに記載のデバッグサポート装置。
【００５４】
（付記８）デバッグ中にユーザメモリ空間とデバッグメモリ空間の両方にアクセス可能な中央処理装置とともにマイクロコンピュータに搭載されるデバッグサポート装置であって、
デバッグメモリ空間からユーザメモリ空間へのアクセスが許可されている間、中央処理装置のアクセスがオペコードフェッチもしくはオペランドフェッチであればメモリ空間がデバッグメモリ空間であることを示す信号を出力し、一方、中央処理装置のアクセスがデータアクセスであればメモリ空間がユーザメモリ空間であることを示す信号を出力するメモリ空間制御手段を具備することを特徴とするデバッグサポート装置。
【００５５】
（付記９）デバッグ中にユーザメモリ空間とデバッグメモリ空間の両方にアクセス可能な中央処理装置とともにマイクロコンピュータに搭載されるデバッグサポート装置であって、
デバッグメモリ空間からユーザメモリ空間へのアクセスが許可されているときにセットされるアクセス許可ビットと、
メモリ空間がユーザメモリ空間であるときにゼロを出力し、メモリ空間がデバッグメモリ空間であるときに１を出力するメモリ空間制御手段と、
前記アクセス許可ビットがセットされている間、中央処理装置のアクセスがオペコードフェッチもしくはオペランドフェッチであれば１となり、中央処理装置のアクセスがデータアクセスであればゼロとなる信号を選択して出力し、一方、前記アクセス許可ビットがクリアされているときには、前記メモリ空間制御手段から出力される信号を選択して出力するセレクタと、
を具備することを特徴とするデバッグサポート装置。
【００５６】
（付記１０）前記セレクタの出力信号がゼロから１に切り替わるのを検出したときに、前記アクセス許可ビットをクリアする検出器をさらに具備することを特徴とする付記９に記載のデバッグサポート装置。
【００５７】
（付記１１）前記セレクタの出力信号がゼロのときにメモリ空間をユーザメモリ空間とし、一方、前記セレクタの出力信号が１のときにメモリ空間をデバッグメモリ空間にするメモリ空間切り替え回路をさらに具備することを特徴とする付記１０に記載のデバッグサポート装置。
【００５８】
（付記１２）前記メモリ空間切り替え要因検出手段は、あらかじめ設定されたブレイク要因と中央処理装置のアクセスとの比較をおこなう比較器、および該比較器での比較結果が一致したときに中央処理装置に対する強制割り込みを発生するブレイク制御手段を具備することを特徴とする付記１に記載のデバッグサポート装置。
【００５９】
（付記１３）前記比較器は、ブレイク要因の種類に応じて複数設けられていることを特徴とする付記１２に記載のデバッグサポート装置。
【００６０】
（付記１４）前記メモリ空間切り替え制御手段は、前記ブレイク制御手段が中央処理装置に対して強制割り込みを発生したことを検出する強制割り込み検出手段、および該強制割り込み検出手段の検出結果に基づいてメモリ空間をユーザメモリ空間からデバッグメモリ空間へ切り替える制御をおこなう割り込み処理制御手段を具備することを特徴とする付記１２に記載のデバッグサポート装置。
【００６１】
（付記１５）前記メモリ空間切り替え要因検出手段は、リターンインタラプト命令コードと中央処理装置のフェッチコードとの比較をおこなう比較器を具備することを特徴とする付記１に記載のデバッグサポート装置。
【００６２】
（付記１６）前記メモリ空間切り替え制御手段は、前記比較器の比較結果に基づいてリターンインタラプト命令フェッチを検出する割り込み復帰検出手段、および該割り込み復帰検出手段の検出結果に基づいてメモリ空間をデバッグメモリ空間からユーザメモリ空間へ切り替える制御をおこなう復帰処理制御手段を具備することを特徴とする付記１５に記載のデバッグサポート装置。
【００６３】
【発明の効果】
本発明によれば、メモリ空間を切り替える要因を検出する機能と、メモリ空間の切り替えを制御する機能を実装したデバッグサポート装置が得られるという効果を奏する。また、本発明によれば、デバッグ中に、ＣＰＵのアクセスがデータアクセスである限り、ユーザメモリ空間への連続するデータアクセスをおこなうことを可能とするデバッグサポート装置が得られるという効果を奏する。
【図面の簡単な説明】
【図１】本発明の実施の形態１にかかるデバッグサポート装置によるデバッグ環境の概略構成を機能的に示すブロック図である。
【図２】本発明の実施の形態１にかかるデバッグサポート装置の詳細な構成を機能的に示すブロック図である。
【図３】本発明の実施の形態２にかかるデバッグサポート装置によるデバッグ環境の概略構成を機能的に示すブロック図である。
【図４】本発明の実施の形態２にかかるデバッグサポート装置のメモリ空間制御部の詳細な構成を機能的に示すブロック図である。
【図５】本発明の実施の形態２にかかるデバッグサポート装置によるメモリ空間の切り替え動作タイミングを示すタイミングチャートである。
【図６】従来のデバッグサポート装置搭載マイクロコンピュータの概略構成を機能的に示すブロック図である。
【符号の説明】
１１，３１  ＣＰＵ
１２  メモリ空間切り替え要因検出部
１３  メモリ空間切り替え制御部
１４，３４  ユーザメモリ空間
１５，３５  デバッグサポート装置
１６，３６  メモリ空間切り替え回路
１７，３７  デバッグメモリ空間
３８  メモリ空間制御部
４１  ユーザメモリ空間アクセス制御部
４２  メモリ空間制御部本体
５１  セレクタ
５２  ユーザメモリ空間アクセス許可ビット
５３  立ち上がり検出器
【図１】
2004252589.tif 000003
【図２】
2004252589.tif 000004
【図３】
2004252589.tif 000005
【図４】
2004252589.tif 000006
【図５】
2004252589.tif 000007
【図６】
2004252589.tif 000008