(57)【要約】【課題】ユーザーが容易に変更できないように管理されている保護領域へのアクセスを、修理店等において簡易に行うことが可能なマイクロコンピュータを提供すること。【解決手段】外部とのデータ通信を行う通信手段を備え、エントリーレベルに応じて、前記通信手段を用いた外部から所定の保護領域へのアクセスが制限されているマイクロコンピュータであって、外部から所定のデバッグモード開始信号を入力可能な入力受付手段と、前記入力受付手段に所定のデバッグモード開始信号が入力されたときに、前記所定の保護領域へのアクセス制限を緩和するように制御するデバッグモード制御手段と、を備えるマイクロコンピュータ。【選択図】図１
2011164850.tif 000002
【特許請求の範囲】
【請求項１】
外部とのデータ通信を行う通信手段を備え、
エントリーレベルに応じて、前記通信手段を用いた外部から所定の保護領域へのアクセスが制限されているマイクロコンピュータであって、
外部から所定のデバッグモード開始信号を入力可能な入力受付手段と、
前記入力受付手段に所定のデバッグモード開始信号が入力されたときに、前記所定の保護領域へのアクセス制限を緩和するように制御するデバッグモード制御手段と、
を備えるマイクロコンピュータ。
【請求項２】
請求項１に記載のマイクロコンピュータであって、
前記通信手段を介して前記所定の保護領域の内容を書き換える際に、バッファとして機能するバッファ手段を備えるマイクロコンピュータ。
【請求項３】
請求項１又は２に記載のマイクロコンピュータであって、
前記通信手段は、周辺機器とのデータ通信を行うための周辺バスを含む、マイクロコンピュータ。
【請求項４】
請求項３に記載のマイクロコンピュータであって、
前記通信手段は、前記周辺バスに接続されるシリアル通信手段を更に含む、マイクロコンピュータ。
【請求項５】
車両に搭載され、車載機器制御のための処理を行う、請求項１ないし４のいずれか１項に記載のマイクロコンピュータ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、エントリーレベルに応じて外部から所定の保護領域へのアクセスが制限されているマイクロコンピュータに関する。
【背景技術】
【０００２】
従来、特に車載制御装置等として用いられるマイクロコンピュータにおいては、ユーザーによって変更すべきでない情報を保持した保護領域について、容易に変更できないように管理されている。この保護領域では、マイクロコンピュータの種々のコンフィグ情報等が格納されている。こうした保護領域について、変更・追加・削除等を行う際には、ソフトウエアによってエントリーレベルを設定するためのフラグを書き換えていた。
【０００３】
また、特許文献１には、ホストコンピュータ、このホストコンピュータに接続されたエミュレータ本体、エミュレータ本体に接続されたエミュレーションポッドおよびエミュレーションポッドをターゲットボードへ接続するターゲットボード接続用プローブを有したマイクロコンピュータのソフトウエア開発のための開発支援装置について記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１０−１０５４２９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、ソフトウエアによってエントリーレベルを設定するためのフラグを書き換える場合、ソフトウエア変更、コンパイル、対象マイコンへのソースの再ダウンロード等の処理が必要となり、保護領域にアクセス可能となるまでの処理が煩雑なものとなっていた。また、特に車載制御装置のうち、エンジン制御系等の複雑な制御を行う制御装置として用いられるマイクロコンピュータの場合、上記ソフトウエア変更に要する所要時間が無視できないものである。
【０００６】
また、保護領域へのアクセス自体が制限されているため、保護領域に格納されたデータを外部に読み出す際には、メモリ等に一旦データを格納し、その後、外部に読み出すといった処理が必要である。
【０００７】
また、上記特許文献１に記載の装置は、ターゲットボードが処理対象となっており、組み込みが行われた後のマイクロコンピュータについて、保護領域へのアクセスを可能とする技術に関するものではない。
【０００８】
本発明はこのような課題を解決するためのものであり、ユーザーが容易に変更できないように管理されている保護領域へのアクセスを、修理店等において簡易に行うことが可能なマイクロコンピュータを提供することを、主たる目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するための本発明の一態様は、
外部とのデータ通信を行う通信手段を備え、
エントリーレベルに応じて、前記通信手段を用いた外部から所定の保護領域へのアクセスが制限されているマイクロコンピュータであって、
外部から所定のデバッグモード開始信号を入力可能な入力受付手段と、
前記入力受付手段に所定のデバッグモード開始信号が入力されたときに、前記所定の保護領域へのアクセス制限を緩和するように制御するデバッグモード制御手段と、
を備えるマイクロコンピュータである。
【００１０】
この本発明の一態様によれば、外部から所定のデバッグモード開始信号を入力可能な入力受付手段と、入力受付手段に所定のデバッグモード開始信号が入力されたときに、所定の保護領域へのアクセス制限を緩和するように制御するデバッグモード制御手段と、を備えるため、ユーザーが容易に変更できないように管理されている保護領域へのアクセスを、簡易に行うことができる。
【００１１】
本発明の一態様において、
前記通信手段を介して前記所定の保護領域の内容を書き換える際に、バッファとして機能するバッファ手段を備えるものとしてもよい。
【００１２】
また、本発明の一態様において、
前記通信手段は、例えば、周辺機器とのデータ通信を行うための周辺バスを含む。
【００１３】
この場合、
前記通信手段は、前記周辺バスに接続されるシリアル通信手段を更に含むものとしてもよい。
【００１４】
また、本発明の一態様は、
車両に搭載され、車載機器制御のための処理を行うものとすると、好適である。
【発明の効果】
【００１５】
本発明によれば、ユーザーが容易に変更できないように管理されている保護領域へのアクセスを、修理店等において簡易に行うことが可能なマイクロコンピュータを提供することができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の第１実施例に係るマイクロコンピュータ１のシステム構成例である。
【図２】第１実施例のマイクロコンピュータ１における、デバッグモードにエントリーする際、及びデバッグモードから退避する際の各種信号の時間的変化を示すタイミングチャートである。
【図３】デバッグモードにエントリーされた後において、外部からワークレジスタ７０にデータを書き込む際の各種信号の時間的変化を示すタイミングチャートである。
【図４】デバッグモードにエントリーされた後において、ワークレジスタ７０から保護領域４０にデータがコピーされる際の各種信号の時間的変化を示すタイミングチャートである。
【図５】デバッグモードにエントリーされた後において、保護領域４０からワークレジスタ７０にデータがコピーされる際の各種信号の時間的変化を示すタイミングチャートである。
【図６】デバッグモードにエントリーされた後において、ワークレジスタ７０に格納されたデータを外部に読み出す際の各種信号の時間的変化を示すタイミングチャートである。
【図７】本発明の第２実施例に係るマイクロコンピュータ２のシステム構成例である。
【図８】第２実施例のマイクロコンピュータ２における、デバッグモードにエントリーする際の各種信号の時間的変化を示すタイミングチャートである。
【図９】デバッグモードにエントリーされた後において、外部からワークレジスタ７０にデータを書き込む際の各種信号の時間的変化を示すタイミングチャートである。
【図１０】デバッグモードにエントリーされた後において、ワークレジスタ７０に格納されたデータを外部に読み出す際の各種信号の時間的変化を示すタイミングチャートである。
【図１１】本発明の第３実施例に係るマイクロコンピュータ３のシステム構成例である。
【図１２】第３実施例のマイクロコンピュータ３がデバッグモードにエントリーされた後において、外部から保護領域４０にデータを書き込む際の各種信号の時間的変化を示すタイミングチャートである。
【図１３】デバッグモードにエントリーされた後において、保護領域４０に格納されたデータを外部に読み出す際の各種信号の時間的変化を示すタイミングチャートである。
【図１４】ＤＢＧピン５０をエントリー及びコマンド取り込みとして用い、内部と非同期に動作させる場合の、各種信号の時間的変化を示すタイミングチャートである。
【発明を実施するための形態】
【００１７】
以下、本発明を実施するための形態について、添付図面を参照しながら実施例を挙げて説明する。
【実施例】
【００１８】
＜第１実施例＞
以下、図面を参照し、本発明の第１実施例に係るマイクロコンピュータ１について説明する。マイクロコンピュータ１は、例えば車両に搭載され、種々の車載機器制御を行う車載制御装置等、ユーザーによって変更すべきでない情報を保持した保護領域について、容易に変更できないように管理されている制御装置に、好適に適用される。後述の第２及び第３実施例についても同様である。
【００１９】
車載制御装置の例としては、例えばエンジン制御装置、ブレーキ制御装置、パワーステアリング等を制御するステアリング制御装置、ドアロック等を制御するボデー制御装置、ＶＳＣ（Vehicle  Stability  Control）やＶＤＩＭ（Vehicle  Dynamics  Integrated  Management）等の車両安定化制御装置、ＡＣＣ（Adaptive  Cruise  Control）等の運転支援装置、ナビゲーション制御装置等が挙げられる。
【００２０】
［基本構成］
図１は、本発明の第１実施例に係るマイクロコンピュータ１のシステム構成例である。マイクロコンピュータ１は、主要な構成として、命令キュー１０と、命令デコーダ１１と、レジスタファイル１２と、演算器１３と、ＬＳＵ（Load  Store  Unit）１４と、パイプラインコントローラ１５と、を備える。また、マイクロコンピュータ１は、図示しないプログラムカウンタ等を備えている。
【００２１】
プログラムカウンタには、図示しないＲＯＭ（Read  Only  Memory）、ＥＥＰＲＯＭ（Electrically  Erasable  and  Programmable  Read  Only  Memory）等のプログラムメモリ上のアドレスが記憶されている。プログラムカウンタがクロックに同期してアドレスをプログラムメモリに出力すると、命令バス１６を介して命令キュー１０に命令が送信される。プログラムカウンタは、クロック毎にアドレス値を変更し、順次命令の読み出しを行う。
【００２２】
命令キュー１０は、プログラムメモリから一単位の命令が入力されるレジスタであり、入力された命令が入力順に格納される。命令キュー１０に格納された命令は命令デコーダ１１で解読され、レジスタファイル１２に記憶される。
【００２３】
レジスタファイル１２は、汎用レジスタであり、命令デコーダによって解読された命令のうち演算の種別、ソースオペランド（演算対象のデータのアドレス）等が記憶される。また、レジスタファイル１２には、必要に応じて演算器１３による演算結果等が格納される。演算器１３による演算結果は、レジスタファイル１２の他、プログラムの指定によって、ＬＳＵ１４やデータバス１７を介してメモリ２０に格納される。
【００２４】
パイプラインコントローラ１５は、上記パイプライン制御の各ステージ（命令フェッチ、命令デコード、命令実行、オペランドフェッチ、ライトバック等）をクロックに基づき制御する。
【００２５】
データバス１７には、例えばＲＡＭ（Random  Access  Memory）であるメモリ２０の他、ＤＭＡＣ（Direct  memory  Access  Controller）２１、ＢＢ（Bus  Bridge）２２が接続されている。
【００２６】
ＢＢ２２には、周辺バス３０が接続されている。周辺バス３０は、例えば３２本の通信線からなり、コマンド、アドレス、Ｒデータ（リードデータ）、Ｗデータ（ライトデータ）等が送受信される。周辺バス３０にはＡ／Ｄ変換回路３１等が接続されている。本実施例のマイクロコンピュータ１は、周辺バス３０を介して外部との通信を行うことが可能となっている。Ａ／Ｄ変換回路３１は、例えば本実施例のマイクロコンピュータ１が車載制御装置に適用された場合、アナログ値として入力される各種センサの出力をデジタル値に変換し、デジタル演算処理を可能にする。
【００２７】
また、マイクロコンピュータ１は、エントリーレベルによってアクセス制限がなされる保護領域４０として、特権モードレジスタ４１と、ＣＰＵ機能レジスタ４２と、ユーザーレジスタ４３と、を備える。保護領域４０には、マイクロコンピュータ１のコンフィグ設定等が格納されている。このコンフィグ設定等の情報は、マイクロコンピュータ１の始動時に図示しないＲＯＭ等からダウンロードされる。
【００２８】
上記保護領域４０へのアクセスのために、特権モードレジスタ４１は最も高いエントリーレベルを必要とし、ＣＰＵ機能レジスタ４２は次に高いエントリーレベルを必要とし、ユーザーレジスタ４３は最も低いエントリーレベルで足りる。
【００２９】
こうしたアクセス制限は、図示しないＯＳ等によって制御されており、具体的には、パイプラインコントローラ１５が、禁止されている保護領域４０のアドレスを指定しないように制御されている。
【００３０】
以上のような構成を有するマイクロコンピュータ１は、例えば、車両に搭載され、種々の車載機器制御を行う制御装置に好適に適用される。この場合、車両システムが始動した後、通常の動作を開始した時点で、エントリーレベルがユーザーレベルに設定されるように、ＯＳ（Operating  System）等によってパイプラインコントローラ１５を介して制御がなされている。従って、特権モードレジスタ４１やＣＰＵ機能レジスタ４２にアクセスするには、このＯＳ等の変更を要し、煩雑な手順が必要となる。
【００３１】
［保護領域にアクセスするためのハードウエア構成］
これに対し、マイクロコンピュータ１は、外部から保護領域４０へのアクセスを可能とするための構成として、ＤＢＧ（Debug）ピン５０と、マッピング制御部６０と、ワークレジスタ７０と、アービター８０と、セレクタ９０と、を備える。
【００３２】
ＤＢＧピン５０には、ユーザーによって外部からデバッグモードに移行させるための信号が入力される。ここで、デバッグモードとは、前述のようなエントリーレベルに拘わらず、一時的にユーザーが所望の保護領域４０へのアクセスが可能となるモードであり、マイクロコンピュータ１及びこれが搭載された制御システム等の開発段階等において好適に用いられる。
【００３３】
マッピング制御部６０は、ＤＢＧピン５０に例えばＨＩ信号が入力されると、所定の信号（以下、ＤＢＧ＿ＡＣＴ信号と称する）をＢＢ２２に出力して外部からのデータ入力を許可させる。そして、コマンド、ＩＤ、アドレス等のデータを、周辺バス３０を介して取得し、外部からのワークレジスタ７０の読み書き、及び保護領域４０とワークレジスタ７０の間のデータ授受制御を行う。
【００３４】
マッピング制御部６０は、上記データ授受制御のために、ワークレジスタ７０のアドレスを示すＷＩＤ、保護領域４０のアドレスを示すＲｅｇＩＤ、保護領域４０のどのエントリーレベルのデータであるかを示すＬｅｖｅｌＩＤ等のＩＤを指定する。また、マッピング制御部６０は、制御信号ＥＮ＿Ｂ２Ａ、ＥＮ＿Ａ２Ｂを出力してアービター８０やセレクタ９０を動作させる。
【００３５】
ワークレジスタ７０は、外部から保護領域４０の内容を変更する際、及び変更した保護領域４０の内容を外部に保存する際にバッファとして機能する。
【００３６】
アービター８０は、ＤＲＢ（Data  Resister  Bus）８２を介して保護領域４０と接続され、ＤＳＢ（Data  Selector  Bus）８４を介してワークレジスタ７０と接続されている。そして、アービター８０は、保護領域４０とワークレジスタ７０の間のデータ授受を仲介する。
【００３７】
セレクタ９０は、マッピング制御部６０からの制御信号が入力されている期間のみ、マッピング制御部６０から入力されるＲｅｇＩＤ、ＬｅｖｅｌＩＤによる保護領域４０へのアクセスを許容する。
【００３８】
［各種動作例］
図２は、第１実施例のマイクロコンピュータ１における、デバッグモードにエントリーする際、及びデバッグモードから退避する際の各種信号の時間的変化を示すタイミングチャートである。
【００３９】
まず、ＤＢＧピン５０に例えばＨＩ信号が入力されると、マッピング制御部６０は、ＢＢ２２に出力するＤＢＧ＿ＡＣＴ信号をＨＩ状態とする（時刻ｔ１）。ＢＢ２２は、ＨＩ状態のＤＢＧ＿ＡＣＴ信号が入力されると、周辺バス３０を介した、外部からのマッピング制御部６０及びワークレジスタ７０へのアクセスを許容する。
【００４０】
次に、マッピング制御部６０は、内部周辺クロックＰ＿ＣＬＫに同期して、ＥｎｔｒｙコマンドやＥｘｉｔコマンドを、周辺バス３０を介して外部から取得する（時刻ｔ２、ｔ３）。マイクロコンピュータ１は、Ｅｎｔｒｙコマンドが周辺バス３０に入力されてからＥｘｉｔコマンドが周辺バス３０に入力されるまでの間、デバッグモードにエントリーされた状態となる。
【００４１】
そして、ＤＢＧピン５０に例えばＬＯ信号が入力される（或いは入力信号が停止する）と、マッピング制御部６０は、ＢＢ２２に出力するＤＢＧ＿ＡＣＴ信号をＬＯ状態とする（時刻ｔ４）。これによって、ＢＢ２２はコマンド待機状態から回避する。すなわち、周辺バス３０を介した外部からのマッピング制御部６０及びワークレジスタ７０へのアクセスを禁止する。
【００４２】
図３は、デバッグモードにエントリーされた後において、外部からワークレジスタ７０にデータを書き込む際の各種信号の時間的変化を示すタイミングチャートである。
【００４３】
まず、マッピング制御部６０は、内部周辺クロックＰ＿ＣＬＫに同期して、Ｗｒｉｔｅコマンドを、周辺バス３０を介して外部から取得する（時刻ｔ５）。
【００４４】
次に、マッピング制御部６０は、内部周辺クロックＰ＿ＣＬＫに同期して、Ａｄｄデータ（アドレスデータ）を、周辺バス３０を介して外部から取得する（時刻ｔ６）。Ａｄｄデータを取得したマッピング制御部６０は、ワークレジスタ７０のアドレスを示すＷＩＤをワークレジスタ７０に出力する（時刻ｔ７）
この状態で周辺バス３０に書き込みデータ（Ｄａｔａ）が入力されると、当該書き込みデータが、ワークレジスタ７０のＷＩＤで指定されたアドレスに書き込まれる（時刻ｔ８）。
【００４５】
図４は、デバッグモードにエントリーされた後において、ワークレジスタ７０から保護領域４０にデータがコピーされる際の各種信号の時間的変化を示すタイミングチャートである。
【００４６】
まず、マッピング制御部６０は、内部周辺クロックＰ＿ＣＬＫに同期して、Ｒ＿ＲＥＡＤコマンドを、周辺バス３０を介して外部から取得する（時刻ｔ９）。
【００４７】
次に、マッピング制御部６０は、内部周辺クロックＰ＿ＣＬＫに同期して、Ａｄｄデータ（アドレスデータ）を、周辺バス３０を介して外部から取得する（時刻ｔ１０）。Ａｄｄデータを取得したマッピング制御部６０は、時刻ｔ１１に前後して、（１）ワークレジスタ７０のアドレスを示すＷＩＤをワークレジスタ７０に出力し、（２）制御信号ＥＮ＿Ｂ２Ａを保護領域４０、ワークレジスタ７０、及びアービター８０に出力し、（３）例えば特権レベルを指定するＬｅｖｅｌＩＤと保護領域４０のアドレスを示すＲｅｇＩＤを保護領域４０に出力する。
【００４８】
これによって、アービター８０は、ワークレジスタ７０におけるＷＩＤによって指定されたアドレスのデータを、保護領域４０におけるＬｅｖｅｌＩＤとＲｅｇＩＤによって指定されたアドレスにコピーするように動作する。この結果、ＤＲＢ８２やＤＳＢ８４を介してワークレジスタ７０から保護領域４０に所望のデータがコピーされる。
【００４９】
図３及び図４に示した処理によって、外部から保護領域４０への書き込みが完了する。この結果、外部からマイクロコンピュータ１のコンフィグ情報が変更された状態で、種々のシミュレーションを行うことが可能となる。シミュレーションにおいて所望の結果が得られると、図５に示す処理によって保護領域４０からワークレジスタ７０にデータがコピーされ、次いで図６に示す処理によってワークレジスタ７０の内容がバックアップデータとして外部に出力される。なお、このような図３〜図６の処理順はあくまで一例であり、本発明における保護領域４０へのアクセス方法は、他の種々の態様で利用されうる。
【００５０】
図５は、デバッグモードにエントリーされた後において、保護領域４０からワークレジスタ７０にデータがコピーされる際の各種信号の時間的変化を示すタイミングチャートである。
【００５１】
まず、マッピング制御部６０は、内部周辺クロックＰ＿ＣＬＫに同期して、Ｒ＿ＷＲＩＴＥコマンドを、周辺バス３０を介して外部から取得する（時刻ｔ１２）。
【００５２】
次に、マッピング制御部６０は、内部周辺クロックＰ＿ＣＬＫに同期して、Ａｄｄデータ（アドレスデータ）を、周辺バス３０を介して外部から取得する（時刻ｔ１３）。Ａｄｄデータを取得したマッピング制御部６０は、時刻ｔ１４に前後して、（１）ワークレジスタ７０のアドレスを示すＷＩＤをワークレジスタ７０に出力し、（２）制御信号ＥＮ＿Ａ２Ｂを保護領域４０、ワークレジスタ７０、及びアービター８０に出力し、（３）例えば特権レベルを指定するＬｅｖｅｌＩＤと保護領域４０のアドレスを示すＲｅｇＩＤを保護領域４０に出力する。
【００５３】
これによって、アービター８０は、保護領域４０におけるＬｅｖｅｌＩＤとＲｅｇＩＤによって指定されたアドレスのデータを、ワークレジスタ７０におけるＷＩＤによって指定されたアドレスにコピーするように動作する。この結果、ＤＲＢ８２やＤＳＢ８４を介して保護領域４０からワークレジスタ７０に所望のデータがコピーされる。
【００５４】
図６は、デバッグモードにエントリーされた後において、ワークレジスタ７０に格納されたデータを外部に読み出す際の各種信号の時間的変化を示すタイミングチャートである。
【００５５】
まず、マッピング制御部６０は、内部周辺クロックＰ＿ＣＬＫに同期して、ＲＥＡＤコマンドを、周辺バス３０を介して外部から取得する（時刻ｔ１５）。
【００５６】
次に、マッピング制御部６０は、内部周辺クロックＰ＿ＣＬＫに同期して、Ａｄｄデータ（アドレスデータ）を、周辺バス３０を介して外部から取得する（時刻ｔ１６）。Ａｄｄデータを取得したマッピング制御部６０は、ワークレジスタ７０のアドレスを示すＷＩＤをワークレジスタ７０に出力する（時刻ｔ１７）
この結果、ワークレジスタ７０のＷＩＤで指定されたアドレスのデータが周辺バス３０に出力される（時刻ｔ１８）。
【００５７】
以上説明した本実施例のマイクロコンピュータ１によれば、外部から保護領域４０へのアクセスを可能とするための構成としてＤＢＧピン５０やマッピング制御部６０を備え、マッピング制御部６０がＤＢＧピン５０に入力された信号に応じて外部からのデータ入力を許可させると共に、エントリーレベルに拘わらずマッピング制御部６０から入力されるＲｅｇＩＤ、ＬｅｖｅｌＩＤによる保護領域４０へのアクセスを許容するため、ユーザーが容易に変更できないように管理されている保護領域４０へのアクセスを、修理店等において簡易に行うことができる。
【００５８】
また、バッファ領域としてワークレジスタを備えることにより、不意に保護領域４０の内容を毀損するような不都合を回避することができる。
【００５９】
なお、本実施例のマイクロコンピュータ１は、通常動作時において、ＤＢＧピン５０をグランド端子にクランプすることによって、デバッグモードへのエントリー機能を休止させることも可能である。これによって、各種制御装置として機能する場合に端子数の増加を回避することができる。
【００６０】
＜第２実施例＞
以下、図面を参照し、本発明の第２実施例に係るマイクロコンピュータ２について説明する。
【００６１】
［基本構成］
図７は、本発明の第２実施例に係るマイクロコンピュータ２のシステム構成例である。マイクロコンピュータ２は、主要な構成として、命令キュー１０と、命令デコーダ１１と、レジスタファイル１２と、演算器１３と、ＬＳＵ（Load  Store  Unit）１４と、パイプラインコントローラ１５と、を備える。また、マイクロコンピュータ２は、図示しないプログラムカウンタ等を備えている。これらの構成要素の機能等については、第１実施例と同様であるため、説明を省略する。
【００６２】
また、第２実施例に係るマイクロコンピュータ２では、第１実施例と同様、データバス１７に、メモリ２０、ＤＭＡＣ２１、ＢＢ２２が接続されている。ＢＢ２２には、周辺バス３０が接続されている。
【００６３】
第２実施例に係る周辺バス３０には、Ａ／Ｄ変換回路３１及びシリアル制御部３２が接続されている。そして、本実施例のマイクロコンピュータ２は、シリアル制御部３２を介して外部との通信を行うことが可能となっている。
【００６４】
シリアル制御部３２は、外部端子として機能するポートＡに入力されたデータを内部周辺クロックＰ＿ＣＬＫに同期して取り込み、シリアル／パラレル変換を行ってから周辺バス３０に出力する。マッピング制御部６０は、周辺バス３０に出力されたデータを解読し、後述のような種々の制御を行う。
【００６５】
また、マイクロコンピュータ２は、第１実施例と同様、エントリーレベルによってアクセス制限がなされる保護領域４０として、特権モードレジスタ４１と、ＣＰＵ機能レジスタ４２と、ユーザーレジスタ４３と、を備える。保護領域４０には、マイクロコンピュータ１のコンフィグ設定等が格納されている。このコンフィグ設定等の情報は、マイクロコンピュータ１の始動時に図示しないＲＯＭ等からダウンロードされる。
【００６６】
上記保護領域４０へのアクセスのために、特権モードレジスタ４１は最も高いエントリーレベルを必要とし、ＣＰＵ機能レジスタ４２は次に高いエントリーレベルを必要とし、ユーザーレジスタ４３は最も低いエントリーレベルで足りる。
【００６７】
以上のような構成を有するマイクロコンピュータ２は、例えば、車両に搭載され、種々の車載機器制御を行う制御装置に好適に適用される。この場合、車両システムが始動した後、通常の動作を開始した時点で、エントリーレベルがユーザーレベルに設定されるように、ＯＳ等によってパイプラインコントローラ１５を介して制御がなされている。従って、特権モードレジスタ４１やＣＰＵ機能レジスタ４２にアクセスするには、このＯＳ等の変更を要し、煩雑な手順が必要となる。
【００６８】
［保護領域にアクセスするためのハードウエア構成］
これに対し、マイクロコンピュータ２は、外部から保護領域４０へのアクセスを可能とするための構成として、ＤＢＧピン５０と、マッピング制御部６０と、ワークレジスタ７０と、アービター８０と、セレクタ９０と、を備える。マッピング制御部６０以外の構成要素の機能については、第１実施例と同様であるため、説明を省略する。また、マッピング制御部６０における第１実施例と異なる機能については、動作例と共に説明する。
【００６９】
［各種動作例］
図８は、第２実施例のマイクロコンピュータ２における、デバッグモードにエントリーする際の各種信号の時間的変化を示すタイミングチャートである。
【００７０】
まず、ＤＢＧピン５０に例えばＨＩ信号が入力されると、マッピング制御部６０は、ＢＢ２２に出力するＤＢＧ＿ＡＣＴ信号をＨＩ状態とする（時刻ｔ２０）。
【００７１】
ＢＢ２２は、ＨＩ状態のＤＢＧ＿ＡＣＴ信号が入力されると、周辺バス３０のうちコマンドバスをＷＲＩＴＥ状態とすると共に、アドレスバスにシリアルを設定してシリアル制御部３２を活性化する（時刻ｔ２１）。
【００７２】
次に、マッピング制御部６０は、内部周辺クロックＰ＿ＣＬＫに同期して、ＣＯＭコマンドやＥｎｔｒｙコマンドを、シリアル制御部３２及び周辺バス３０を介して外部から取得する（時刻ｔ２２、ｔ２３）。これらのコマンドは、周辺バス３０のうちＷデータバスに出力される。
【００７３】
マイクロコンピュータ２は、Ｅｎｔｒｙコマンドが周辺バス３０に入力されてからＥｘｉｔコマンドが周辺バス３０に入力されるまでの間、デバッグモードにエントリーされた状態となる。
【００７４】
図９は、デバッグモードにエントリーされた後において、外部からワークレジスタ７０にデータを書き込む際の各種信号の時間的変化を示すタイミングチャートである。
【００７５】
まず、マッピング制御部６０は、内部周辺クロックＰ＿ＣＬＫに同期して、ＣＯＭコマンド及びＩＤコマンドを、シリアル制御部３２及び周辺バス３０を介して外部から取得する（時刻ｔ２４、ｔ２５）。
【００７６】
次に、マッピング制御部６０は、内部周辺クロックＰ＿ＣＬＫに同期して、Ａｄｄデータ（アドレスデータ）を、シリアル制御部３２及び周辺バス３０を介して外部から取得する（時刻ｔ２６）。Ａｄｄデータを取得したマッピング制御部６０は、ワークレジスタ７０のアドレスを示すＷＩＤをワークレジスタ７０に出力する（時刻ｔ２７）。
【００７７】
この状態で周辺バス３０に書き込みデータ（Ｄａｔａ）が入力されると、当該書き込みデータが、ワークレジスタ７０のＷＩＤで指定されたアドレスに書き込まれる（時刻ｔ２８）。書き込みデータは、周辺バス３０のうちＷデータバスに出力される。
【００７８】
図１０は、デバッグモードにエントリーされた後において、ワークレジスタ７０に格納されたデータを外部に読み出す際の各種信号の時間的変化を示すタイミングチャートである。
【００７９】
まず、マッピング制御部６０は、内部周辺クロックＰ＿ＣＬＫに同期して、ＣＯＭコマンド及びＩＤコマンドを、シリアル制御部３２及び周辺バス３０を介して外部から取得する（時刻ｔ２９、ｔ３０）。
【００８０】
次に、マッピング制御部６０は、内部周辺クロックＰ＿ＣＬＫに同期して、Ａｄｄデータ（アドレスデータ）を、シリアル制御部３２及び周辺バス３０を介して外部から取得する（時刻ｔ３１）。Ａｄｄデータを取得したマッピング制御部６０は、ワークレジスタ７０のアドレスを示すＷＩＤをワークレジスタ７０に出力する（時刻ｔ３２）。
【００８１】
この状態で、コマンドバスに流れる信号がＲＥＡＤ信号に切り替わると、ワークレジスタ７０のＷＩＤで指定されたアドレスのデータが周辺バス３０及びシリアル制御部３２を介して外部に出力される（時刻ｔ３３）。
【００８２】
なお、ワークレジスタ７０と保護領域４０の間のデータ授受については、シリアル制御部３０を介して通信を行う点、及び外部からマッピング制御部３０へのコマンドとアドレスが、シリアル制御部３２及び周辺バス３０を介してＷデータバスに出力される点を除いて第１実施例と同様であるため、説明を省略する。
【００８３】
以上説明した本実施例のマイクロコンピュータ２によれば、外部から保護領域４０へのアクセスを可能とするための構成としてＤＢＧピン５０やマッピング制御部６０を備え、マッピング制御部６０がＤＢＧピン５０に入力された信号に応じて外部からのデータ入力を許可させると共に、エントリーレベルに拘わらずマッピング制御部６０から入力されるＲｅｇＩＤ、ＬｅｖｅｌＩＤによる保護領域４０へのアクセスを許容するため、ユーザーが容易に変更できないように管理されている保護領域４０へのアクセスを、修理店等において簡易に行うことができる。
【００８４】
また、外部との通信と、周辺バス３０における通信内容を調停するためのシリアル制御部３２のような構成要素を備えることにより、外部からアクセスするための機器の種類を幅広く選択することができる。
【００８５】
＜第３実施例＞
以下、図面を参照し、本発明の第３実施例に係るマイクロコンピュータ３について説明する。
【００８６】
［構成］
図１１は、本発明の第３実施例に係るマイクロコンピュータ３のシステム構成例である。図示するように、マイクロコンピュータ３は、第２実施例のマイクロコンピュータ１からワークレジスタ７０を省略した構成となっている。
【００８７】
マイクロコンピュータ３は、第１及び２実施例と同様、エントリーレベルによってアクセス制限がなされる保護領域４０として、特権モードレジスタ４１と、ＣＰＵ機能レジスタ４２と、ユーザーレジスタ４３と、を備える。保護領域４０には、マイクロコンピュータ１のコンフィグ設定等が格納されている。このコンフィグ設定等の情報は、マイクロコンピュータ１の始動時に図示しないＲＯＭ等からダウンロードされる。
【００８８】
［各種動作例］
図１２は、第３実施例のマイクロコンピュータ３がデバッグモードにエントリーされた後において、外部から保護領域４０にデータを書き込む際の各種信号の時間的変化を示すタイミングチャートである。
【００８９】
まず、マッピング制御部６０は、内部周辺クロックＰ＿ＣＬＫに同期して、ＣＯＭコマンド及びＩＤコマンドを、シリアル制御部３２及び周辺バス３０を介して外部から取得する（時刻ｔ４０、ｔ４１）。
【００９０】
次に、マッピング制御部６０は、内部周辺クロックＰ＿ＣＬＫに同期して、Ａｄｄデータ（アドレスデータ）を、シリアル制御部３２及び周辺バス３０を介して外部から取得する（時刻ｔ４２）。Ａｄｄデータを取得したマッピング制御部６０は、時刻ｔ４３に前後して、（１）制御信号ＥＮ＿Ａ２Ｂを保護領域４０、及びアービター８０に出力し、（２）例えば特権レベルを指定するＬｅｖｅｌＩＤと保護領域４０のアドレスを示すＲｅｇＩＤを保護領域４０に出力する。
【００９１】
これによって、アービター８０は、シリアル制御部３２によってＷデータバスに出力された書き込みデータ（ＤＡＴＡ）を、保護領域４０におけるＬｅｖｅｌＩＤとＲｅｇＩＤによって指定されたアドレスに格納するように動作する（時刻ｔ４４）。この結果、シリアル制御部３２、周辺バス３０、ＤＲＢ８２を介して外部から保護領域４０に所望のデータが書き込まれる。
【００９２】
図１３は、デバッグモードにエントリーされた後において、保護領域４０に格納されたデータを外部に読み出す際の各種信号の時間的変化を示すタイミングチャートである。
【００９３】
まず、マッピング制御部６０は、内部周辺クロックＰ＿ＣＬＫに同期して、ＣＯＭコマンド及びＩＤコマンドを、シリアル制御部３２及び周辺バス３０を介して外部から取得する（時刻ｔ４５、ｔ４６）。
【００９４】
次に、マッピング制御部６０は、内部周辺クロックＰ＿ＣＬＫに同期して、Ａｄｄデータ（アドレスデータ）を、シリアル制御部３２及び周辺バス３０を介して外部から取得する（時刻ｔ４７）。Ａｄｄデータを取得したマッピング制御部６０は、時刻ｔ４８に前後して、（１）制御信号ＥＮ＿Ｂ２Ａを保護領域４０、及びアービター８０に出力し、（２）例えば特権レベルを指定するＬｅｖｅｌＩＤと保護領域４０のアドレスを示すＲｅｇＩＤを保護領域４０に出力する。
【００９５】
この状態で、コマンドバスに流れる信号がＲＥＡＤ信号に切り替わると、ＬｅｖｅｌＩＤとＲｅｇＩＤで指定されたアドレスのデータが周辺バス３０及びシリアル制御部３２を介して外部に出力される（時刻ｔ４９）。
【００９６】
以上説明した本実施例のマイクロコンピュータ３によれば、外部から保護領域４０へのアクセスを可能とするための構成としてＤＢＧピン５０やマッピング制御部６０を備え、マッピング制御部６０がＤＢＧピン５０に入力された信号に応じて外部からのデータ入力を許可させると共に、エントリーレベルに拘わらずマッピング制御部６０から入力されるＲｅｇＩＤ、ＬｅｖｅｌＩＤによる保護領域４０へのアクセスを許容するため、ユーザーが容易に変更できないように管理されている保護領域４０へのアクセスを、修理店等において簡易に行うことができる。
【００９７】
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【００９８】
例えば、外部との情報授受において、周辺バスに直接アクセス可能とする態様や、シリアル通信によって外部からアクセスする態様を例示したが、これに限定されない、例えば、ＣＡＮ、ＬＩＮ、ＦｌｅｘＲａｙ、ＵＡＲＴ、Ｉ２Ｃ等、所望の通信態様によって外部からアクセス可能としてよい。
【００９９】
また、内部周辺クロックＰ＿ＣＬＫに同期して外部からのデータ取り込みを行うものとしたが、ＤＢＧピン５０をエントリー及びコマンド取り込みとして用い、内部と非同期に動作させるものとしてもよい。
【０１００】
図１４は、ＤＢＧピン５０をエントリー及びコマンド取り込みとして用い、内部と非同期に動作させる場合の、各種信号の時間的変化を示すタイミングチャートである。
【０１０１】
まず、ＤＢＧピン５０に例えばＨＩ信号が入力されると、マッピング制御部６０は、ＢＢ２２に出力するＤＢＧ＿ＡＣＴ信号をＨＩ状態とする（時刻ｔ５０）。
【０１０２】
ＢＢ２２は、ＨＩ状態のＤＢＧ＿ＡＣＴ信号が入力されると、周辺バス３０のうちコマンドバスをＷＲＩＴＥ状態とすると共に、アドレスバスにシリアルを設定してシリアル制御部３２を活性化する（時刻ｔ５１）。
【０１０３】
次に、マッピング制御部６０は、ＤＢＧピン５０に入力された信号に重畳する信号を解読し、ＣＯＭコマンドやＥｎｔｒｙコマンド、ＥＸＩＴコマンドを、周辺バス３０のうちＷデータバスに出力する（時刻ｔ５２〜５５）。
【０１０４】
マイクロコンピュータ２は、Ｅｎｔｒｙコマンドが周辺バス３０に出力されてからＥｘｉｔコマンドが周辺バス３０に出力されるまでの間、デバッグモードにエントリーされた状態となる。
【０１０５】
これによって、マイクロコンピュータが停止状態（すなわち内部周辺クロックＰ＿ＣＬＫが動作していない状態）であっても、保護領域４０へのアクセスを行うことができる。
【符号の説明】
【０１０６】
１、２、３  マイクロコンピュータ
１０  命令キュー
１１  命令デコーダ
１２  レジスタファイル
１３  演算器
１４  ＬＳＵ
１５  パイプラインコントローラ
１６  命令バス
１７  データバス
２０  メモリ
２２  ＢＢ
３０  周辺バス
３２  シリアル制御部
４０  保護領域
４１  特権モードレジスタ
４２  ＣＰＵ機能レジスタ
４３  ユーザーレジスタ
５０  ＤＢＧピン
６０  マッピング制御部
７０  ワークレジスタ
８０  アービター
８２  ＤＲＢ
８４  ＤＳＢ
９０  セレクタ
Ａ    ポート
【図１】
2011164850.tif 000003
【図２】
2011164850.tif 000004
【図３】
2011164850.tif 000005
【図４】
2011164850.tif 000006
【図５】
2011164850.tif 000007
【図６】
2011164850.tif 000008
【図７】
2011164850.tif 000009
【図８】
2011164850.tif 000010
【図９】
2011164850.tif 000011
【図１０】
2011164850.tif 000012
【図１１】
2011164850.tif 000013
【図１２】
2011164850.tif 000014
【図１３】
2011164850.tif 000015
【図１４】
2011164850.tif 000016