(57)【要約】【課題】リセット解除からデバッグの準備が完了するまでの間、ＣＰＵをリセット解除直後の状態に保持してプログラムの実行を停止できるデバッグ回路を提供する。【解決手段】ＣＰＵ１のリセット解除後に、モード判定回路１０によって準備期間判定手段デバックの準備のための期間を判定し、上記デバッグの準備のための期間において、デコーダ１１によってＣＰＵ１からの命令コードアクセスを監視し、上記命令コードアクセスがあったときに、それに応じてＣＰＵ１に転送されるリードデータバスＨＲＤＡＴＡ上の命令コードを、セレクタ１２によってＣＰＵ１をセルフループさせる分岐命令コードに置き換える。【選択図】図１ 
2005316559.tif 000002
【特許請求の範囲】
【請求項１】
ＣＰＵによって実行されるプログラムをＪＴＡＧインターフェースによってデバッグすることが可能な中央処理システム内に、上記デバッグの準備のために設けられるデバッグ回路であって、
上記ＣＰＵのリセット解除後に、デバックの準備のための期間を判定するデバッグ準備期間判定手段と、
上記デバッグの準備のための期間において、上記ＣＰＵからの命令コードアクセスを監視する監視手段と、
上記命令コードアクセスがあったときに、それに応じて上記ＣＰＵに転送される命令コードを、上記ＣＰＵをセルフループさせる他の命令コードに置き換える命令コード置換手段と
を備えた
ことを特徴とするデバッグ回路。
【請求項２】
ＣＰＵによって実行されるプログラムをＪＴＡＧインターフェースによってデバッグすることが可能な中央処理システム内に、上記デバッグの準備のために設けられるデバッグ回路であって、
上記ＣＰＵのリセット解除後に、デバックの準備のための期間を判定するデバッグ準備期間判定手段と、
上記デバッグの準備のための期間において、上記ＣＰＵからの命令コードアクセスを監視する監視手段と、
上記命令コードアクセスがあったときに、それに応じて上記ＣＰＵから出力されるデータ転送を要求する制御信号を、データ転送を無効にする制御信号に置き換える制御信号置換手段と
を備えた
ことを特徴とするデバッグ回路。
【請求項３】
ＣＰＵによって実行されるプログラムをＪＴＡＧインターフェースによってデバッグすることが可能な中央処理システム内に、上記デバッグの準備のために設けられるデバッグ回路であって、
上記ＣＰＵのリセット解除後に、デバックの準備のための期間を判定するデバッグ準備期間判定手段と、
それぞれ上記リセット直後に上記ＣＰＵがアクセスする互いに異なる命令コードが記憶された第１および第２のメモリと、
上記デバッグの準備のための期間では、上記アクセスに応じて命令コードを読み出すメモリを上記第１のメモリとし、上記デバッグの準備のための期間でなければ、上記命令コードを読み出すメモリを上記第２のメモリとするメモリ選択手段と
を備えた
ことを特徴とするデバッグ回路。
【請求項４】
上記ＣＰＵに接続する第１のバスと、
上記第１および第２のメモリに接続する第２のバスと、
上記第１のバスと上記第２のバスのインターフェースとして機能するメモリ制御手段と  をさらに備えた
ことを特徴とする請求項３記載のデバッグ回路。
【請求項５】
上記ＣＰＵおよび上記第１のメモリに接続する第１のバスと、
上記第２のメモリに接続する第２のバスと、
上記第１のバスと上記第２のバスのインターフェースとして機能するメモリ制御手段と  をさらに備えた
ことを特徴とする請求項３記載のデバッグ回路。
【請求項６】
ＣＰＵによって実行されるプログラムをＪＴＡＧインターフェースによってデバッグすることが可能な中央処理システムにおいての上記デバッグの準備を制御するデバッグ制御方法において、
上記ＣＰＵのリセット解除を判定するステップと、
上記リセット解除がなされたら、上記ＣＰＵからの命令コードアクセスを監視するステップと、
上記命令コードアクセスがあったときに、それに応じて上記ＣＰＵに転送される命令コードを、上記ＣＰＵをセルフループさせる他の命令コードに置き換える命令コード置換手段と
上記ＣＰＵにおいてのデバッグの準備完了を判定するステップと、
上記ＣＰＵにおいてのデバッグの準備が完了したら、上記命令コードアクセスの監視および上記命令コードの置き換えを停止するステップと
を含む
ことを特徴とするデバッグ制御方法。
【請求項７】
ＣＰＵによって実行されるプログラムをＪＴＡＧインターフェースによってデバッグすることが可能な中央処理システムにおいての上記デバッグの準備を制御するデバッグ制御方法において、
上記ＣＰＵのリセット解除を判定するステップと、
上記リセット解除がなされたら、上記ＣＰＵからの命令コードアクセスを監視するステップと、
上記命令コードアクセスがあったときに、それに応じて上記ＣＰＵから出力されるデータ転送を要求する制御信号を、データ転送を無効にする制御信号に置き換えるステップと、
上記ＣＰＵにおいてのデバッグの準備完了を判定するステップと、
上記ＣＰＵにおいてのデバッグの準備が完了したら、上記命令コードアクセスの監視および上記制御信号の置き換えを停止するステップと
を含む
ことを特徴とするデバッグ制御方法。
【請求項８】
ＣＰＵによって実行されるプログラムをＪＴＡＧインターフェースによってデバッグすることが可能な中央処理システムにおいての上記デバッグの準備を制御するデバッグ制御方法において、
上記ＣＰＵのリセット解除を判定するステップと、
上記リセット解除がなされたら、上記ＣＰＵからの命令コードアクセスに応じて第１の内部メモリから命令コードを読み出すステップと、
上記ＣＰＵにおいてのデバッグの準備完了を判定するステップと、
上記ＣＰＵにおいてのデバッグの準備が完了したら、上記命令コードアクセスに応じて上記第１の内部メモリとは異なる命令コードを記憶している第２の内部メモリから命令コードを読み出すステップと
を含む
ことを特徴とするデバッグ制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
ＣＰＵ（中央処理装置）によって実行されるプログラムをＪＴＡＧ（Joint Test Action Group）インターフェースによってデバッグすることが可能な中央処理システムに関し、特に上記中央処理システム内に上記デバッグの準備のために設けられるデバッグ回路および上記中央処理システムでの上記デバッグの準備を制御するデバッグ制御方法に関する。
【背景技術】
【０００２】
中央処理システムは、電子機器に設けられ、ＣＰＵによってプログラムを実行して、上記電子機器内の画像出力装置等の周辺装置を制御する（例えば、特許文献１参照）。
【０００３】
図６は従来の中央処理システムのブロック図である。図６の中央処理システムは、ＣＰＵ１と、Ｉ／Ｏ回路（入出力回路）２と、メモリ制御回路３と、ＲＯＭ４と、ＲＡＭ５と、バス６と、メモリバス７と、リセット信号ＨＲＥＳＥＴの入力端子と、ＪＴＡＧインターフェースのＴＡＰ（テスト・アクセス・ポート）１００とを備えており、Ｉ／Ｏ回路２に接続される記憶装置や画像出力装置等の１つまたは複数の周辺装置を制御する。
【０００４】
ＣＰＵ１は、リセット信号ＨＲＥＳＥＴがアサートされるとリセットされ、そのリセット信号ＨＲＥＳＥＴがネゲートされるとリセットが解除されて動作を開始する。ＣＰＵ１は、リセット解除直後には、ＲＯＭ４（読み出し専用のメモリ）に記憶されているプログラムの命令コードを読み出して実行し、その後は、引き続きＲＯＭ４のプログラムの命令コードを実行するか、またはＩ／Ｏ回路２に接続された記憶装置からＲＡＭ５（読み書き可能なメモリ）に転送したプログラムの命令コードを実行する。
【０００５】
一般に、中央処理システムのＣＰＵは、プログラム（上記ＲＯＭ４に記憶されているプログラムまたは／および上記記憶装置に記憶されているプログラム）の開発時にそのプログラムのデバッグ（そのプログラムの実行動作のデバッグ）を容易にするために、プログラムのシングルステップ機能、プログラムのブレーク機能、ＣＰＵレジスタの参照／変更機能、メモリ内容の参照／変更機能等のデバッグ機能を備えている。このようなデバッグ機能を制御するために、近年では、図６のＣＰＵ１のように、信号線本数が少なくて済むＪＴＡＧインタフェースが用いられる場合が多い。
【０００６】
上記デバッグ機能を実現するために、ＪＴＡＧインタフェースを備えた図５のＣＰＵ１は、通常モードとデバッグモードの２つのモードで動作する。通常モードは、ＣＰＵ１が普通にプログラムを実行するモードであり、デバッグモードは、ＪＴＡＧインタフェースから送られるコマンドに従ってＣＰＵ１を動作させ、デバッグ機能を実現するモードである。通常モードとデバッグモードの遷移は、ＪＴＡＧインタフェースから送られるコマンドによって制御される。
【０００７】
図２はＪＴＡＧインタフェースの構成図である。図２において、ＣＰＵ１をデバッグモードにする場合には、ＪＴＡＧインタフェースによってシリアル方式のデータ転送プロトコルで上記コマンドをＣＰＵ１内のレジスタ１０６に転送する。レジスタ１０６が上記コマンドに書き換えられると、ＣＰＵ１はデバッグ応答信号ＤＢＧＡＣＫをアサートして動作を一時停止し、デバッグモードになる。なお、図６の従来の中央処理システムでは、デバッグ応答信号ＤＢＧＡＣＫは、特に使用されていない。
【０００８】
【特許文献１】特開２０００−２７６３５８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、ＪＴＡＧインタフェースを用いてデバッグ機能を制御する上記従来の中央処理システムでは、ＪＴＡＧインタフェースがシリアル方式のデータ転送プロトコルであるため、ＪＴＡＧコマンドの転送を開始してから、そのコマンドがＣＰＵ１内のレジスタに転送されて書き込まれ、デバッグの準備が完了するまでに時間がかかり、デバッグ機能の制御に時間遅れが発生する。このため、システムのリセット解除とともにデバッグモードにする場合には、リセット解除後にＪＴＡＧインタフェースからの制御によりＣＰＵ１はデバッグモードに切り換えられるが、リセット解除からデバッグの準備完了までに時間がかかるので、リセット解除からデバッグの準備が完了してプログラムの実行が一時停止するまでの間に、ＲＯＭ４のプログラムが少し実行されてしまう。このようにリセット解除してからデバッグモードになるまでにプログラムが少し実行されると、リセット解除直後の動作デバッグが正確にできないという問題があった。
【００１０】
また、リセット解除してからデバッグモードになるまでにプログラムが少し実行されると、その中央処理システムによって制御される周辺装置が一部動作することがあるという問題があった。
【００１１】
さらに、デバック時には、ＲＯＭ４をＳＲＡＭ等の読み書き可能なメモリにして、デバックモードの最初に、ＪＴＡＧインタフェースによってＣＰＵ１のレジスタにプログラムを転送し、そのプログラムをさらに上記ＳＲＡＭ等に転送して書き込み、そのＳＲＡＭ等に書き込んだプログラムをＣＰＵ１で読み込んでデバックをする場合がある。このような場合には、リセット解除直後の上記ＳＲＡＭ等の内容は不確定値であるため、リセット解除からデバッグモードになるまでに上記不確定な内容を少し実行することによって、ＣＰＵ１が暴走し、周辺装置が予期できない動作をすることがあるという問題があった。
【００１２】
本発明は、このような従来の問題を解決するためになされたものであり、リセット解除からデバッグの準備が完了するまでの間、ＣＰＵをリセット解除直後の状態に保持してプログラムの実行を停止できるデバッグ回路を提供することを目的とする。
【課題を解決するための手段】
【００１３】
本発明のデバッグ回路は、
ＣＰＵによって実行されるプログラムをＪＴＡＧインターフェースによってデバッグすることが可能な中央処理システム内に、上記デバッグの準備のために設けられるデバッグ回路であって、
上記ＣＰＵのリセット解除後に、デバックの準備のための期間を判定するデバッグ準備期間判定手段と、
上記デバッグの準備のための期間において、上記ＣＰＵからの命令コードアクセスを監視する監視手段と、
上記命令コードアクセスがあったときに、それに応じて上記ＣＰＵに転送される命令コードを、上記ＣＰＵをセルフループさせる他の命令コードに置き換える命令コード置換手段と
を備えた
ことを特徴とするものである。
【発明の効果】
【００１４】
本発明のデバッグ回路によれば、リセット解除からデバッグの準備が完了するまでの間、ＣＰＵをリセット解除直後の状態に保持してプログラムの実行を停止できるので、中央処理システムのリセット解除直後のデバッグを確実にでき、デバッグの準備が完了するまでに、周辺装置が動作したり、中央処理装置が暴走することを防止できるという効果がある。
【発明を実施するための最良の形態】
【００１５】
実施の形態１
図１は本発明の実施の形態１の中央処理システムの構成図であり、図６と同様のものには同じ符号を付してある。この実施の形態１の中央処理システムは、ＣＰＵ１と、Ｉ／Ｏ回路（入出力回路）２と、メモリ制御回路３と、ＲＯＭ４と、ＲＡＭ５と、バス６と、メモリバス７と、リセット信号ＨＲＥＳＥＴの入力端子８と、モード信号ＭＯＤＥの入力端子９と、モード判定回路１０と、デコーダ１１と、セレクタ１２と、ＪＴＡＧインターフェースのＴＡＰ（テスト・アクセス・ポート）１００とを備えており、Ｉ／Ｏ回路２に接続される記憶装置や画像出力装置等の１つまたは複数の周辺装置を制御して、これらの周辺装置にデータアクセスし、命令を出す。
【００１６】
図１の実施の形態１の中央処理システムにおいて、モード信号ＭＯＤＥの入力端子９と、モード判定回路１０と、デコーダ１１と、セレクタ１２とは、ＪＴＡＧインターフェースによってなされるデバッグの準備をするためのデバッグ回路を構成している。
【００１７】
この実施の形態１の中央処理システムは、従来の中央処理システム（図６参照）において、モード判定回路１０，デコーダ１１，セレクタ１２，モード信号ＭＯＤＥの入力端子を設けたものである。
【００１８】
［モード信号ＭＯＤＥ，リセット信号ＨＲＥＳＥＴ］
モード信号ＭＯＤＥは、実施の形態１の中央処理システムをデバッグモードに設定するときにはアサートされており、通常の動作モード（通常モード）に設定するときにはネゲートされている信号である。また、リセット信号ＨＲＥＳＥＴがアサートされると、実施の形態１の中央処理システム（ＣＰＵ１）のリセットがなされ、リセット信号ＨＲＥＳＥＴがネゲートされると、上記リセットが解除されて、ＣＰＵ１が動作を開始する。
【００１９】
［ＣＰＵ１］
ＣＰＵ１は、バス６ならびにメモリ制御回路３およびメモリバス７を経由してＲＯＭ４およびＲＡＭ５にデータアクセスし、バス６およびＩ／Ｏ回路２を経由して被制御装置（ＣＰＵ１によって制御される装置）に命令を出したり、データアクセスする。このＣＰＵ１は、ＪＴＡＧインターフェースを備えており、リセット解除後に、ＣＵＰ１内の制御のためのレジスタ（以下、制御レジスタ）にＪＴＡＧインターフェースからのデバッグのためのデータ（以下、デバッグデータ）がシリアル転送され、上記制御レジスタが上記デバックデータに書き換えられると、デバック応答信号ＤＢＧＡＣＫをアサートし、動作を停止する。
【００２０】
［ＪＴＡＧインターフェイス］
図２はＣＰＵ１に設けられているＪＴＡＧインターフェイスの構成図である。ＪＴＡＧインターフェースのＴＡＰ１００は、ＴＤＩ（テスト・データ・イン）ポート１０１と、ＴＤＯ（テスト・データ・アウト）ポート１０２と、ＴＣＫ（テスト・クロック）ポート１０３と、ＴＭＳ（テスト・モード・セレクト）ポート１０４との４つのポートによって構成されている。ＣＰＵ１内には、ＴＡＰインターフェイス１０５が設けられている。ＣＰＵ１内の制御レジスタ１０６等が、このＪＴＡＧインターフェイスのバウンダリスキャンレジスタになっている。
【００２１】
ＴＤＩポート１０１は、上記バウンダリスキャンレジスタのシリアル入力およびテストアクセスポートインターフェイス１０５に接続されており、ＴＤＯポート１０２，ＴＣＫポート１０３，ＴＭＳポート１０４は、テストアクセスポートインターフェイス１０５に接続されており、上記バウンダリスキャンレジスタのシリアル出力は、テストアクセスポートインターフェイス１０５に接続されている。ＴＤＩポート１０１からは、上記デバッグデータ等が上記バウンダリスキャンレジスタにシリアル入力されるとともに、テスト命令コード等がテストアクセスポートインターフェイス１０５にシリアル入力される。ＴＣＫポート１０３からは、テストクロックが入力され、ＴＭＳポート１０４はテストモードをシーケンスする信号が入力される。ＴＤＯポート１０２には、上記バウンダリスキャンレジスタのシリアル出力データ等がテストアクセスポートインターフェイス１０５を介してシリアル出力される。
【００２２】
制御レジスタ１０６等のバウンダリスキャンレジスタのそれぞれのセルは、シリアル入力およびシリアル出力の他に、個別のラッチ回路として動作するためのデータ入力およびデータ出力を備えており、上記バウンダリスキャンレジスタは、テストアクセスポートインターフェイス１０５からの制御信号に従って、デバッグデータ等をシリアル転送するシフトレジスタとして動作するとともに、ＣＰＵ１内のパラレルなデータのレジスタとしても動作する。
【００２３】
［バス６］
バス６は、ＣＰＵ１から出力されたアドレスデータをＩ／Ｏ回路２またはメモリ制御回路３に転送するためのアドレスバスＨＡＤＤＲと、ＲＡＭ５に書き込むデータ等のＣＰＵ１から出力されたデータをＩ／Ｏ回路２またはメモリ制御回路３に転送するためのライトデータバスＨＷＤＡＴＡと、ＲＯＭ４から読み出された命令コード等のＩ／Ｏ回路２またはメモリ制御回路３から出力されたデータをＣＰＵ１に転送するためのリードデータバスＨＲＤＡＴＡと、これらのバスを制御するための複数の制御信号がＣＰＵ１からそれぞれ出力される複数の制御信号線Ｃｏｎｔとによって構成されており、ＣＰＵ１とＩ／Ｏ回路２およびメモリ制御回路３とを接続している。ただし、この実施の形態１では、リードデータバスＨＲＤＡＴＡの途中にセレクタ１２が挿入されるため、セレクタ１２の入力側（Ｉ／Ｏ回路２およびメモリ制御回路３側）のリードデータバスＨＲＤＡＴＡをＨＲＤＡＴＡ１とし、セレクタ１２の出力側（ＣＰＵ１側）のリードデータバスＨＲＤＡＴＡをＨＲＤＡＴＡ２とする。
【００２４】
［メモリバス７］
メモリバス７は、メモリ制御回路３から出力されたメモリアドレスデータをＲＯＭ４またはＲＡＭ５に転送するためのメモリアドレスバスＸＡと、ＲＯＭ４から読み出された命令コード等のＲＯＭ４またはＲＡＭ５の読み出しデータをメモリ制御回路３に転送するとともにメモリ制御回路３から出力された書き込みデータをＲＡＭ５に転送するためのメモリデータバスＸＤと、ＲＯＭ４およびＲＡＭ５の読み出し動作をイネーブルするためのリードイネーブル信号線ＯＥと、ＲＡＭ５の書き込み動作をイネーブルするためのライトイネーブル信号線ＷＥと、ＲＯＭ４を選択するためのメモリセレクト信号がメモリ制御回路３から出力されるメモリセレクト信号線ＣＳ０と、ＲＡＭ５を選択するためのメモリセレクト信号がメモリ制御回路３から出力されるメモリセレクト信号線ＣＳ１とによって構成されている。
【００２５】
このメモリバス７は、メモリアドレスバスＸＡ，メモリデータバスＸＤ，リードイネーブル信号線ＯＥ，メモリセレクト信号線ＣＳ０によって、メモリ制御回路３とＲＯＭ４とを接続し、メモリアドレスバスＸＡ，メモリデータバスＸＤ，リードイネーブル信号線ＯＥ，ライトイネーブル信号線ＷＥ，メモリセレクト信号線ＣＳ１によって、メモリ制御回路３とＲＡＭ５とを接続している。なお、デバッグにおいて、ＲＯＭ４をＳＲＡＭ等の書き込み可能なメモリとした場合には、ライトイネーブル信号線ＷＥは、上記ＳＲＡＭ等の読み出し動作をイネーブルするための信号線として上記ＳＲＡＭ等にも接続される。
【００２６】
［Ｉ／Ｏ回路２］
Ｉ／Ｏ回路２は、バス６と上記周辺装置のインターフェースとして機能し、ＣＰＵ１からアドレスバスＨＡＤＤＲに出力されるアドレスデータ等に従って被制御装置にアクセスし、ライトデータバスＨＷＤＡＴＡからのデータを被制御装置に出力し、被制御装置からのデータをリードデータバスＨＲＤＡＴＡ１に出力する。
【００２７】
［メモリ制御回路３］
メモリ制御回路３は、バス６とメモリバス７のインターフェースとして機能し、ＣＰＵ１からアドレスバスＨＡＤＤＲに出力されるアドレスデータ等に従ってＲＯＭ４またはＲＡＭ５にアクセスし、ライトデータバスＨＷＤＡＴＡからの書き込みデータをメモリデータバスＸＤに出力し、ＲＯＭ４またはＲＡＭ５からメモリデータバスＸＤに読み出されたデータをリードデータバスＨＲＤＡＴＡ１に出力する。
【００２８】
［ＲＯＭ４］
ＲＯＭ４は、システムのリセット解除後にＣＰＵ１によって実行されるプログラムの命令コード等を記憶している読み出し専用のメモリである。ただし、プログラム開発時等のデバッグ時は、このＲＯＭ４に代えて、プログラムの変更／修正が容易にできるＳＲＡＭ等の読み書き可能なメモリを使用する場合が多い。
【００２９】
［ＲＡＭ５］
ＲＡＭ５は、ＣＰＵ１のワークデータやＩ／Ｏ回路２に接続された記憶装置から転送されたプログラム等を記憶する読み書き可能なメモリである。
【００３０】
［モード判定回路１０］
モード判定回路１０は、モード信号ＭＯＤＥと、リセット信号ＨＲＥＳＥＴと、ＣＰＵ１からのデバッグ応答信号ＤＢＧＡＣＫとを入力とし、デバックモード準備信号ＤＢＧＭＯＤＥを出力する回路であって、モード信号ＭＯＤＥがデバックモードにアサートされており、デバック応答信号ＤＢＧＡＣＫ信号がネゲートされているときに、リセット信号ＨＲＥＳＥＴがネゲート（リセット解除）されると、デバックモード準備信号ＤＢＧＭＯＤＥをアサートする。また、モード判定回路１０は、モード信号ＭＯＤＥがデバックモードにアサートされており、リセット信号ＨＲＥＳＥＴがネゲートされているときに、ＣＰＵ１のデバッグの準備が完了し、デバック応答信号ＤＢＧＡＣＫ信号がアサートされると、デバックモード準備信号ＤＢＧＭＯＤＥをネゲートする。
【００３１】
［デコーダ１１］
デコーダ１１は、アドレスバスＨＡＤＤＲのアドレスデータと、制御線Ｃｏｎｔの信号と、モード判定回路１０からのデバッグモード準備信号ＤＢＭＯＤＥとを入力とし、デバッグセレクト信号ＤＢＧＳＥＬを出力するデコーダである。このデコーダ１１は、アドレスバスＨＡＤＤＲのアドレスデータおよび制御線Ｃｏｎｔの信号によって、ＣＰＵ１から命令コードアクセスがあるか否かを監視しており、デバッグモード準備信号ＤＢＧＭＯＤＥがアサートされているときに、ＣＰＵ１から命令コードアクセスがあると、デバックセレクト信号ＤＢＧＳＥＬをアサートし、上記命令コードアクセスが終了したら、デバックセレクト信号ＤＢＧＳＥＬをネゲートする。なお、デコーダ１１は、デバッグモード準備信号ＤＢＧＭＯＤＥがネゲートされているときには、上記命令コードアクセスがあっても、デバックセレクト信号ＤＢＧＳＥＬをアサートしない。
【００３２】
［セレクタ１２］
セレクタ１２は、分岐命令コードの値を記憶しており、デコーダ１１からのデバッグセレクト信号ＤＢＧＳＥＬがアサートされているときには、上記分岐命令コードの値をリードデータバスＨＲＤＡＴＡ２に出力し、デバッグセレクト信号ＤＢＧＳＥＬがネゲートされているときには、リードデータバスＨＲＤＡＴＡ２をリードデータバスＨＲＤＡＴＡ１に接続する。上記分岐命令コードは、ＣＰＵ１にリセット解除直後の動作を再度にさせることによって、ＣＰＵ１をセルフループ動作させる命令コードである。
【００３３】
［実施の形態１の動作］
このように構成された実施の形態１の動作を以下に説明する。モード信号ＭＯＤＥがデバッグモードにアサートされているときには、リセット信号ＨＲＥＳＥＴがネゲート（リセット解除）されると、ＣＰＵ１からのデバッグ応答信号ＤＢＧＡＣＫはリセット解除の直後はネゲートされているので、モード判定回路１０は、デバッグモード準備信号ＤＢＧＭＯＤＥをアサートする。
【００３４】
ＣＰＵ１は、リセット解除されると、動作を開始し、最初に命令コードアクセスをしようとする。しかしながら、デバッグモード準備信号ＤＢＧＭＯＤＥがアサートされているので、デコーダ１１は、ＣＰＵ１から上記の命令コードアクセスがあると、デバッグセレクト信号ＤＢＧＳＥＬをアサートし、このデバッグセレクト信号ＤＢＧＳＥＬのアサートによって、セレクタ１２は、分岐命令コードの値をリードデータバスＨＲＤＡＴＡ１に出力する。
【００３５】
従って、ＣＰＵ１から上記命令コードアクセスがあったときに、ＣＰＵ１には上記分岐命令コードが転送され、ＣＰＵ１はこの分岐命令コードを実行することになる。このセレクタ１２からの分岐命令コードは、ＣＰＵ１にリセット解除直後の動作を再度させて、ＣＰＵ１をセルフループ動作させる命令コードなので、この分岐命令コードをＣＰＵ１が実行することによって、ＣＰＵ１は、リセット解除直後のセルフループ動作をすることとなり、ＲＯＭ４に書き込まれた命令コ−ドを実行することはない。
【００３６】
やがて、ＣＰＵ１内の制御レジスタがＪＴＡＧインターフェースからシリアル転送されたデバッグデータに書き換えらえれ、デバッグの準備が完了し、デバッグ応答信号ＤＢＧＡＣＫがアサートされ、ＣＰＵ１が動作停止すると、モード判定回路１０は、デバッグモード準備信号ＤＢＧＭＯＤＥをネゲートする。
【００３７】
このデバッグモード準備信号ＤＢＧＭＯＤＥのネゲートによって、デコーダ１１は、ＣＰＵ１から命令コードアクセスがあっても、デバッグセレクト信号ＤＢＧＳＥＬをアサートしなくなるので、セレクタ１２は、リードデータバスＨＲＤＡＴＡ２をリードデータバスＨＲＤＡＴＡ１に接続したままにする。
【００３８】
従って、ＣＰＵ１から命令コードアクセスがあれば、その命令コードがＲＯＭ４から読み出されてＣＰＵ１に転送されるようになり、デバックが可能となる。
【００３９】
このように、リセット解除されてからデバッグの準備が完了するまでの間は、ＣＰＵ１にはセレクタ１２から分岐命令コードが転送され、ＣＰＵ１は、この分岐命令コードを実行することによって、リセット解除直後のセルフループ動作をして、不要な命令コードの実行をしない。
【００４０】
また、プログラム開発時等のデバッグにおいて、ＲＯＭ４をＳＲＡＭ等の読み書き可能なメモリとしている場合には、デバッグの準備が完了したら、まず最初に、ＪＴＡＧインターフェースによってプログラムをＣＰＵ１内の制御レジスタに転送し、そこからバス６を介して上記ＳＲＡＭ等に転送して書き込んでからデバッグをするが、リセット解除されてからデバッグの準備が完了するまでの間に、ＣＰＵ１が上記ＳＲＡＭ等のプログラムが書き込まれる前の不確定なデータを命令コードとして実行することはない。
【００４１】
なお、モード信号ＭＯＤＥが通常モードにネゲートされているときには、リセット信号ＨＲＥＳＥＴがネゲート（リセット解除）されても、モード判定回路１０は、デバッグモード準備信号ＤＢＧＭＯＤＥをアサートしないので、デコーダ１１は、ＣＰＵ１から命令コードアクセスがあっても、デバッグセレクト信号ＤＢＧＳＥＬをアサートしない。このため、セレクタ１２は、リードデータバスＨＲＤＡＴＡ１をリードデータバスＨＲＤＡＴＡ１に接続したままである。従って、ＣＰＵ１は、リセット解除直後から、ＲＯＭ４をアクセスすることができる。
【００４２】
以上のように実施の形態１によれば、ＣＰＵ１のリセット解除後に、モード判定回路１０によってデバックの準備のための期間を判定し、上記デバッグの準備のための期間において、デコーダ１１によってＣＰＵ１からの命令コードアクセスを監視し、上記命令コードアクセスがあったときに、それに応じてＣＰＵ１に転送されるリードデータバスＨＲＤＡＴＡ上の命令コードを、セレクタ１２によってＣＰＵ１をセルフループさせる分岐命令コードに置き換えることにより、ＣＰＵ１をリセット解除直後の状態に保持してＲＯＭ４内の命令コードの実行を停止できるので、リセット解除直後の動作デバッグが正確にできる。また、リセット解除からデバッグの準備が完了するまでの間にＲＯＭ４内の命令コードを実行しないので、システムによって制御される周辺装置が一部動作することを防止できる。さらに、ＲＯＭ４をＳＲＡＭ等の読み書き可能なメモリにした場合でも、ＣＰＵ１が暴走により予測できない動作を起こすことがない。
【００４３】
実施の形態２
図３は本発明の実施の形態２の中央処理システムの構成図であり、図１と同様のものには同じ符号を付してある。この実施の形態２の中央処理システムは、ＣＰＵ１と、Ｉ／Ｏ回路２と、メモリ制御回路３と、ＲＯＭ４と、ＲＡＭ５と、バス６と、メモリバス７と、リセット信号ＨＲＥＳＥＴの入力端子８と、モード信号ＭＯＤＥの入力端子９と、モード判定回路１０と、デコーダ１１と、ＯＲゲート１３と、ＪＴＡＧインターフェースのＴＡＰ１００とを備えている。
【００４４】
図３の実施の形態２の中央処理システムにおいて、モード信号ＭＯＤＥの入力端子９と、モード判定回路１０と、デコーダ１１と、ＯＲゲート１３とは、ＪＴＡＧインターフェースによってなされるデバッグの準備をするためのデバッグ回路を構成している。
【００４５】
この実施の形態２の中央処理システム（デバッグ回路）は、上記実施の形態１の中央処理システム（デバッグ回路）において、セレクタ１２に代えてＯＲゲート１３を設けたものである。
【００４６】
［データ転送制御信号ＨＴＲＡＮＳ］
データ転送制御信号ＨＴＲＡＮＳは、ＣＰＵ１からのデータ転送の要求を制御するための制御信号である。ＣＰＵ１は、データ転送を要求しないときには、データ転送制御信号ＨＴＲＡＮＳをアイドルにしており、命令コードアクセス等でデータの転送を要求するときに、データ転送制御信号ＨＴＲＡＮＳをアクティブにする。Ｉ／Ｏ回路２およびメモリ制御回路３は、データ転送制御信号ＨＴＲＡＮＳがアクティブのときにのみ、ＣＰＵ１からのデータ転送の要求に応じる。
【００４７】
［ＯＲゲート１３］
ＯＲゲート１３は、複数の制御信号線Ｃｏｎｔの内のデータ転送制御信号ＨＴＲＡＮＳの信号線の途中に挿入されている。ＣＰＵ１から出力されるデータ転送制御信号ＨＴＲＡＮＳをデータ転送制御信号ＨＴＲＡＮＳ１とし、Ｉ／Ｏ回路２およびメモリ制御回路３に転送されるデータ転送制御信号ＨＴＲＡＮＳをデータ転送制御信号ＨＴＲＡＮＳ２とすると、ＯＲゲート１３は、デコーダ１１からのデバッグセレクトＤＢＧＳＥＬ信号と、ＣＰＵ１からのデータ転送制御信号ＨＴＲＡＮＳ１を入力とし、データ転送制御信号ＨＴＲＡＮＳ２をＩ／Ｏ回路２およびメモリ制御回路３側に出力する。
【００４８】
このＯＲゲート１３は、データ転送制御信号ＨＴＲＡＮＳ１がアイドルであるか、またはデバッグセレクトＤＢＧＳＥＬ信号がアサートされているときには、データ転送制御信号ＨＴＲＡＮＳ２をアイドルとし、データ転送制御信号ＨＴＲＡＮＳ１がアクティブであり、かつデバッグセレクトＤＢＧＳＥＬ信号がネゲートされているときには、データ転送制御信号ＨＴＲＡＮＳ２をアクティブにする。
【００４９】
［実施の形態２の動作］
このように構成された実施の形態２では、モード信号ＭＯＤＥがデバッグモードにアサートされているときにリセット解除がなされ、モード判定回路１０によってデバッグモード準備信号ＤＢＧＭＯＤＥがアサートされているリセット解除からデバッグの準備完了までの間において、ＣＰＵ１から命令コードアクセスがあると、デコーダ１１によってデバッグセレクト信号ＤＢＧＳＥＬがアサートされる。
【００５０】
ＣＰＵ１は、リセット解除直後にはデータ転送制御信号ＨＴＲＡＮＳ１をアイドルとし、上記命令コードアクセスのときにデータ転送制御信号ＨＴＲＡＮＳ１をアクティブにするが、データ転送制御信号ＨＴＲＡＮＳ１がアクティブになったときにはデバッグセレクト信号ＤＢＧＳＥＬがアサートされているので、ＯＲゲート１３は、データ転送制御信号ＨＴＲＡＮＳ２をアクティブにせず、アイドルのままとする。
【００５１】
従って、メモリ制御回路３は、上記命令コードアクセスに応答せず、ＣＰＵ１には命令コードが転送されないので、ＣＰＵ１は、ＣＰＵ１は命令コードの転送待機のままとなり、ＲＯＭ４に書き込まれた命令コ−ドを実行することはない。
【００５２】
やがて、デバッグの準備が完了し、モード判定回路１０によってデバッグモード準備信号ＤＢＧＭＯＤＥがネゲートされると、ＣＰＵ１から命令コードアクセスがあっても、デコーダ１１によってデバッグセレクト信号ＤＢＧＳＥＬがアサートされなくなるので、ＣＰＵ１が上記命令コードアクセスのときにデータ転送制御信号ＨＴＲＡＮＳ１をアクティブにすると、ＯＲゲート１３は、データ転送制御信号ＨＴＲＡＮＳ２をアクティブにする。
【００５３】
従って、ＣＰＵ１から命令コードアクセスがあれば、その命令コードがＲＯＭ４から読み出されてＣＰＵ１に転送されるようになり、デバックが可能となる。
【００５４】
このように、リセット解除されてからデバッグの準備が完了するまでの間は、ＣＰＵ１には命令コードが転送されず、ＣＰＵ１は、リセット解除直後の命令コードの転送待機のまま保持され、不要な命令コードの実行をしない。
【００５５】
また、プログラム開発時等のデバッグにおいて、ＲＯＭ４をＳＲＡＭ等の読み書き可能なメモリとしている場合にも、リセット解除されてからデバッグの準備が完了するまでの間に、ＣＰＵ１が上記ＳＲＡＭ等のプログラムが書き込まれる前の不確定なデータを命令コードとして実行することはない。
【００５６】
なお、モード信号ＭＯＤＥが通常モードにネゲートされているときにリセット解除がなされたときには、モード判定回路１０によってデバッグモード準備信号ＤＢＧＭＯＤＥがアサートされず、ＣＰＵ１から命令コードアクセスがあっても、デコーダ１１によってデバッグセレクト信号ＤＢＧＳＥＬがアサートされないので、ＣＰＵ１が上記命令コードアクセスのときにデータ転送制御信号ＨＴＲＡＮＳ１をアクティブにすると、ＯＲゲート１３は、データ転送制御信号ＨＴＲＡＮＳ２をアクティブにする。従って、ＣＰＵ１は、リセット解除直後から、ＲＯＭ４をアクセスすることができる。
【００５７】
以上のように実施の形態２によれば、ＣＰＵ１のリセット解除後に、モード判定回路１０によってデバックの準備のための期間を判定し、上記デバッグの準備のための期間において、デコーダ１１によってＣＰＵ１からの命令コードアクセスを監視し、上記命令コードアクセスがあったときに、それに応じてＣＰＵ１からデータ転送を要求する制御信号として出力されるアクティブ信号のデータ転送制御信号ＨＴＲＡＮＳ１を、データ転送を無効にする制御信号としてのアイドル信号のデータ転送制御信号ＨＴＲＡＮＳ２に置き換えることにより、上記実施の形態１と同様の効果が得られる。その上、ＣＰＵ１からアクセスされた命令コードがバス６上およびメモリバス７上に出力されないので、リセット直後の動作デバッグをさらに正確にできる。
【００５８】
実施の形態３
図４は本発明の実施の形態３の中央処理システムの構成図であり、図１と同様のものには同じ符号を付してある。この実施の形態３の中央処理システムは、ＣＰＵ１と、Ｉ／Ｏ回路２と、メモリ制御回路３と、ＲＯＭ４と、ＲＡＭ５と、バス６と、メモリバス７と、リセット信号ＨＲＥＳＥＴの入力端子８と、モード信号ＭＯＤＥの入力端子９と、モード判定回路１０と、セレクタ１４と、ブートＲＯＭ１５と、ＪＴＡＧインターフェースのＴＡＰ１００とを備えている。
【００５９】
図４の実施の形態３の中央処理システムにおいて、モード信号ＭＯＤＥの入力端子９と、モード判定回路１０と、セレクタ１４と、ブートＲＯＭ１５とは、ＪＴＡＧインターフェースによってなされるデバッグの準備をするためのデバッグ回路を構成している。
【００６０】
この実施の形態３の中央処理システム（デバッグ回路）は、上記実施の形態１の中央処理システム（デバッグ回路）において、デコーダ１１およびセレクタ１２に代えて、セレクタ１４およびブートＲＯＭ１５を設けたものである。
【００６１】
［セレクタ１４］
セレクタ１４は、メモリバス７のメモリセレクト信号線ＣＳ０の途中に挿入されている。この実施の形態３では、メモリセレクト信号線ＣＳ０の途中にセレクタ１４を挿入することによって、メモリセレクト信号線ＣＳ０でＲＯＭ４またはブートＲＯＭ１５を選択できるようにしている。メモリ制御回路３とセレクタ１４の間のメモリセレクト信号線ＣＳ０をメモリセレクト信号線ＣＳ００とし、セレクタ１４とＲＯＭ４の間のメモリセレクト信号線ＣＳ０をメモリセレクト信号線ＣＳ０１とし、セレクタ１４とブートＲＯＭ１５の間のメモリセレクト信号線ＣＳ０をメモリセレクト信号線ＣＳ０２とする。
【００６２】
このセレクタ１４は、モード判定回路１０からのデバッグモード準備信号ＤＢＧＭＯＤＥがアサートされているときには、メモリセレクト信号線ＣＳ００をメモリセレクト信号線ＣＳ０２に接続し、デバッグモード準備信号ＤＢＧＭＯＤＥがネゲートされているときには、メモリセレクト信号線ＣＳ００をメモリセレクト信号線ＣＳ０１に接続する。従って、デバッグモード準備信号ＤＢＧＭＯＤＥがアサートされているときには、メモリセレクト信号線ＣＳ０（ＣＳ００，ＣＳ０２）によってＲＯＭ４に代えてブートＲＯＭ１５が選択され、デバッグモード準備信号ＤＢＧＭＯＤＥがネゲートされているときには、メモリセレクト信号線ＣＳ０（ＣＳ００，ＣＳ０１）によってＲＯＭ４が選択される。
【００６３】
［ブートＲＯＭ１５］
ブートＲＯＭ１５は、ＲＯＭ４と同様に、メモリバス７のメモリアドレスバスＸＡ，メモリデータバスＸＤ，リードイネーブル信号線ＯＥ，メモリセレクト信号線ＣＳ０（ＣＳ０２，ＣＳ００）によって、メモリ制御回路３に接続されている。このブートＲＯＭ１５は、システムのリセット解除後にＣＰＵ１によって実行されるプログラムの命令コードであって、ＣＰＵ１をセルフループにするプログラム等、そのプログラムの実行によってシステムに影響を与えず、ＣＰＵ１をリセット解除直後の状態に保持するための適切なプログラムの命令コードを記憶している読み出し専用のメモリである。このブートＲＯＭ１５は、デバッグの準備の期間のみ選択されるので、上記のようなＲＯＭ４とは異なるプログラムを記憶しておくことが可能である。
【００６４】
［実施の形態３の動作］
このように構成された実施の形態３では、モード信号ＭＯＤＥがデバッグモードにアサートされているときにリセット解除がなされ、モード判定回路１０によってデバッグモード準備信号ＤＢＧＭＯＤＥがアサートされているリセット解除からデバッグの準備完了までの間において、セレクタ１４は、メモリセレクト信号線ＣＳ００をメモリセレクト信号線ＣＳ０２に接続する。
【００６５】
従って、ＣＰＵ１からＲＡＭ４の命令コードのアクセスがあると、メモリセレクト信号線ＣＳ０（ＣＳ００，ＣＳ０２）によってＲＡＭ４に代えてブートＲＯＭ１５が選択され、ブートＲＯＭ１５から読み出された命令コードが、メモリデータバスＸＤ，メモリ制御回路３，リードデータバスＨＲＤＡＴＡを介してＣＰＵ１に転送され、ＣＰＵ１はこのブートＲＯＭ１５から読み出された命令コードを実行することになる。このブートＲＯＭ１５から読み出された命令コードは、例えばＣＰＵ１にリセット解除直後の動作を再度させて、ＣＰＵ１をセルフループ動作させる命令コードなので、ＣＰＵ１は、リセット解除直後のセルフループ動作をすることとなり、ＲＯＭ４に書き込まれた命令コ−ドを実行することはない。
【００６６】
やがて、デバッグの準備が完了し、モード判定回路１０によってデバッグモード準備信号ＤＢＧＭＯＤＥがネゲートされると、セレクタ１４は、メモリセレクト信号線ＣＳ００をメモリセレクト信号線ＣＳ０１に接続する。
【００６７】
従って、ＣＰＵ１から命令コードアクセスがあれば、メモリセレクト信号線ＣＳ０（ＣＳ００，ＣＳ０１）によってＲＡＭ４が選択され、ＲＯＭ４から読み出された命令コードが、メモリデータバスＸＤ，メモリ制御回路３，リードデータバスＨＲＤＡＴＡを介してＣＰＵ１に転送されるようになり、デバックが可能となる。
【００６８】
このように、リセット解除されてからデバッグの準備が完了するまでの間は、ブートＲＯＭ１５から読み出された命令コードが転送され、ＣＰＵ１は、このブートＲＯＭ１５からの命令コードを実行することによって、例えばリセット解除直後のセルフループ動作をして、不要な命令コードの実行をしない。
【００６９】
また、プログラム開発時等のデバッグにおいて、ＲＯＭ４をＳＲＡＭ等の読み書き可能なメモリとしている場合にも、リセット解除されてからデバッグの準備が完了するまでの間に、ＣＰＵ１が上記ＳＲＡＭ等のプログラムが書き込まれる前の不確定なデータを命令コードとして実行することはない。
【００７０】
なお、モード信号ＭＯＤＥが通常モードにネゲートされているときにリセット解除がなされたときには、モード判定回路１０によってデバッグモード準備信号ＤＢＧＭＯＤＥがアサートされず、セレクタ１４によってメモリセレクト信号線ＣＳ００はメモリセレクト信号線ＣＳ０１に接続されるので、ＣＰＵ１は、リセット解除直後から、ＲＯＭ４をアクセスすることができる。
【００７１】
以上のように実施の形態３によれば、リセット解除直後にＣＰＵ１がアクセスするＲＯＭ４の命令コードとは異なる命令コードであってＣＰＵ１をセルフループさせる命令コード等を記憶したブートＲＯＭ１５を設け、ＣＰＵ１のリセット解除後に、モード判定回路１０によってデバックの準備のための期間を判定し、上記デバッグの準備のための期間では、セレクタ１４によってブートＲＯＭ１５を選択し、ＣＰＵ１からの命令コードアクセスに応じて、ＲＯＭ４に代えてブートＲＯＭ１５からＣＰＵ１をセルフループさせる命令コード等を読み出すことにより、上記実施の形態１と同様の効果が得られる。さらに、メモリバス７のメモリセレクト信号ＣＳ０をセレクタ１４によって分岐することにより実現でき、バス６に新たな回路を設けないので、バス６の性能（負荷特性等）に影響を与えることがない。なお、メモリバス７に新たにブートＲＯＭ１５を設けているが、メモリバス７にはバス６ほどの高い性能は要求されないので、ブートＲＯＭ１５を設けることの影響は、無視できる。
【００７２】
実施の形態４
図５は本発明の実施の形態４の中央処理システムの構成図であり、図１と同様のものには同じ符号を付してある。この実施の形態４の中央処理システムは、ＣＰＵ１と、Ｉ／Ｏ回路２と、メモリ制御回路１７と、ＲＯＭ４と、ＲＡＭ５と、バス６と、メモリバス７と、リセット信号ＨＲＥＳＥＴの入力端子８と、モード信号ＭＯＤＥの入力端子９と、モード判定回路１０と、ブートＲＯＭ１６と、ＪＴＡＧインターフェースのＴＡＰ１００とを備えている。
【００７３】
図５の実施の形態４の中央処理システムにおいて、モード信号ＭＯＤＥの入力端子９と、モード判定回路１０と、ブートＲＯＭ１６とは、ＪＴＡＧインターフェースによってなされるデバッグの準備をするためのデバッグ回路を構成している。
【００７４】
この実施の形態４の中央処理システム（デバッグ回路）は、上記実施の形態１の中央処理システム（デバッグ回路）において、デコーダ１１およびセレクタ１２に代えてブートＲＯＭ１６を設け、メモリ制御回路３をメモリ制御回路１７としたものである。
【００７５】
［ブートＲＯＭ１６］
ブートＲＯＭ１６は、上記実施の形態３のブートＲＯＭ１５（図４参照）と同様に、システムのリセット解除後にＣＰＵ１によって実行されるプログラムの命令コードであって、ＣＰＵ１をセルフループにするプログラム等、そのプログラムの実行によってシステムに影響を与えず、ＣＰＵ１をリセット解除直後の状態に保持するための適切なプログラムの命令コードを記憶している読み出し専用のメモリである。このブートＲＯＭ１６は、デバッグの準備の期間のみ選択されるので、上記のようなＲＯＭ４とは異なるプログラムを記憶しておくことが可能である。
【００７６】
また、ブートＲＯＭ１６は、Ｉ／Ｏ回路２やメモリ制御回路１７と同様に、バス６に直接接続することが可能である。このブートＲＯＭ１６は、モード判定回路１０からのデバッグモード準備信号ＤＢＧＭＯＤＥがアサートされているときにのみ動作し、デバッグモード準備信号ＤＢＧＭＯＤＥがネゲートされているときには動作を停止する。さらに、ブートＲＯＭ１６は、その動作中にＣＰＵ１からメモリ制御回路１７のアクセスがあったら、メモリ制御回路１７に代えてそのアクセスに応答する機能を備えている。
【００７７】
［メモリ制御回路１７］
メモリ制御回路１７は、上記実施の形態１のメモリ制御回路３（図１参照）において、モード判定回路１０からのデバッグモード準備信号ＤＢＧＭＯＤＥがネゲートされているときにのみ動作し、デバッグモード準備信号ＤＢＧＭＯＤＥがアサートされているときには動作を停止する機能を付加したものである。従って、ブートＲＯＭ１６とメモリ制御回路１７が同時にバス６に接続されることはなく、必ずいずれか１つがバス６に接続される。
【００７８】
［実施の形態４の動作］
このように構成された実施の形態４では、モード信号ＭＯＤＥがデバッグモードにアサートされているときにリセット解除がなされ、モード判定回路１０によってデバッグモード準備信号ＤＢＧＭＯＤＥがアサートされているリセット解除からデバッグの準備完了までの間において、ブートＲＯＭ１６は動作し、メモリ制御回路１７は動作を停止し、メモリ制御回路１７のアクセスがあったときには、メモリ制御回路１７に代えてブートＲＯＭ１６がそのアクセスに応答する。
【００７９】
従って、ＣＰＵ１からＲＡＭ４の命令コードのアクセスがあると、メモリ制御回路１７に代えてブートＲＯＭ１６がそのアクセスに応答し、ブートＲＯＭ１６から読み出された命令コードがリードデータバスＨＲＤＡＴＡを介してＣＰＵ１に転送され、ＣＰＵ１はこのブートＲＯＭ１６から読み出された命令コードを実行することになる。このブートＲＯＭ１６から読み出された命令コードは、例えばＣＰＵ１にリセット解除直後の動作を再度させて、ＣＰＵ１をセルフループ動作させる命令コードなので、ＣＰＵ１は、リセット解除直後のセルフループ動作をすることとなり、ＲＯＭ４に書き込まれた命令コ−ドを実行することはない。
【００８０】
やがて、デバッグの準備が完了し、モード判定回路１０によってデバッグモード準備信号ＤＢＧＭＯＤＥがネゲートされると、ブートＲＯＭ１６は動作を停止し、メモリ制御回路１７は動作を開始する。
【００８１】
従って、ＣＰＵ１から命令コードアクセスがあれば、ＲＯＭ４から読み出された命令コードが、メモリデータバスＸＤ，メモリ制御回路１７，リードデータバスＨＲＤＡＴＡを介してＣＰＵ１に転送されるようになり、デバックが可能となる。
【００８２】
このように、リセット解除されてからデバッグの準備が完了するまでの間は、ブートＲＯＭ１６から読み出された命令コードが転送され、ＣＰＵ１は、このブートＲＯＭ１６からの命令コードを実行することによって、例えばリセット解除直後のセルフループ動作をして、不要な命令コードの実行をしない。
【００８３】
また、プログラム開発時等のデバッグにおいて、ＲＯＭ４をＳＲＡＭ等の読み書き可能なメモリとしている場合にも、リセット解除されてからデバッグの準備が完了するまでの間に、ＣＰＵ１が上記ＳＲＡＭ等のプログラムが書き込まれる前の不確定なデータを命令コードとして実行することはない。
【００８４】
なお、モード信号ＭＯＤＥが通常モードにネゲートされているときにリセット解除がなされたときには、モード判定回路１０によってデバッグモード準備信号ＤＢＧＭＯＤＥがアサートされず、ブートＲＯＭ１６は動作を停止し、メモリ制御回路１７は動作するので、ＣＰＵ１は、リセット解除直後から、ＲＯＭ４をアクセスすることができる。
【００８５】
以上のように実施の形態４によれば、リセット解除直後にＣＰＵ１がアクセスするＲＯＭ４の命令コードとは異なる命令コードであってＣＰＵ１をセルフループさせる命令コード等を記憶したブートＲＯＭ１６を設け、ＣＰＵ１のリセット解除後に、モード判定回路１０によってデバックの準備のための期間を判定し、上記デバッグの準備のための期間では、ブートＲＯＭ１６およびメモリ制御回路１７の内、ブートＲＯＭ１６のみを動作させ、ＣＰＵ１からの命令コードアクセスに応じて、ＲＯＭ４に代えてブートＲＯＭ１６からＣＰＵ１をセルフループさせる命令コード等を読み出すことにより、上記実施の形態１と同様の効果が得られる。さらにブートＲＯＭ１６とメモリ制御回路１７と切り換え、必ずいずれか１つがバス６に接続されるように構成しているので、バス６およびメモリバス７の性能（負荷特性等）に影響を与えることがない。
【図面の簡単な説明】
【００８６】
【図１】本発明の実施の形態１の中央処理システムの構成図である。
【図２】ＪＴＡＧインターフェースの構成図である。
【図３】本発明の実施の形態２の中央処理システムの構成図である。
【図４】本発明の実施の形態３の中央処理システムの構成図である。
【図５】本発明の実施の形態４の中央処理システムの構成図である。
【図６】従来の中央処理システムのの構成図である。
【符号の説明】
【００８７】
１  ＣＰＵ
２  Ｉ／Ｏ回路
３  メモリ制御回路
４  ＲＯＭ
５  ＲＡＭ
６  バス
７  メモリバス
１０  モード判定回路
１１  デコーダ
１２  セレクタ
１３  ＯＲゲート
１４  セレクタ
１５，１６  ブートＲＯＭ
１００  ＪＴＡＧインターフェースのＴＡＰ
１０１  ＴＤＩポート
１０２  ＴＤＯポート
１０３  ＴＣＫポート
１０４  ＴＭＳポート
１０５  ＴＡＰインターフェース
１０６  制御レジスタ
【図１】
2005316559.tif 000003
【図２】
2005316559.tif 000004
【図３】
2005316559.tif 000005
【図４】
2005316559.tif 000006
【図５】
2005316559.tif 000007
【図６】
2005316559.tif 000008