"予め設定されたプログラムに基づく演算処理を可能とするCPUと、上記CPUによるランダムアクセスによってリードライト可能な不揮発性記憶装置と、を含むシングルチップマイクロコンピュータであり、上記不揮発性記憶装置は、記憶領域として上記プログラムが格納される不揮発保持領域とデータを格納可能な不揮発性保持無効化領域とを含み、リセット状態を示すリセット信号により、上記記憶領域のうち上記不揮発性保持無効化領域に対してライト動作を行うことで、上記不揮発性保持無効化領域のデータを消去することを特徴とするシングルチップマイクロコンピュータ。上記不揮発保持領域には、前記リセット信号により消去されないデータを保持するデータ保存領域を含む請求項1記載のシングルチップマイクロコンピュータ。MRAMなどのように不揮発保持が可能なRAMNVRAMは、ランダムアクセスによるリード及びライトが可能であるため、CPUのプログラム領域としても、作業用データ領域としても使用可能である。しかも、このNVRAMにデータを格納すれば、電源遮断後も記憶データの内容を保持できる。従って、NVRAMを搭載することにより、電源投入時や、リセット時などに、それ以前のデータを参照することができる。このため、プログラム用メモリと、作業用メモリとを、一つのNVRAMで実現することができる。このように一種類のメモリで済めば、ハードウェア資源を節約できるし、製造工程の簡略化に寄与できる。しかしながら、このようなNVRAMをマイクロコンピュータに搭載することについて本願発明者が検討したところ、マイクロコンピュータに内蔵されたNVRAMに全てのデータを保持させることはセキュリティの面で好ましくないことが見いだされた。例えば、ID情報や鍵情報、暗号を復号化した後の情報などの秘密情報が不揮発保持されていると、マイクロコンピュータを不正に動作させて、秘密情報をリードされたりすることが考えられるからである。本発明の目的は、ランダムアクセスによってリードライト可能な不揮発性記憶装置NVRAMを、プログラム/データ兼用のメモリとして搭載した場合のセキュリティの向上を図るための技術を提供することにある。本発明の前記ならびにそのほかの目的と新規な特長は、本発明書の記述及び添付図面から明らかになるであろう。本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。1予め設定されたプログラムに基づく演算処理を可能とするCPUと、このCPUによるランダムアクセスによってリードライト可能な不揮発性記憶装置とを含んで成るマイクロコンピュータにおいて、上記不揮発性記憶装置には、記憶領域の一部に不揮発保持が無効とされる領域を設ける。上記の手段によれば、上記不揮発性記憶装置に、記憶領域の一部に不揮発保持が無効とされる領域が設けられているため、この領域を、秘密を保持すべきデータの格納用とすることにより、この秘密を保持すべきデータが上記不揮発性記憶装置に不揮発保持されることが回避される。このことが、ランダムアクセスによってリードライト可能な不揮発性記憶装置を、プログラム/データ兼用のメモリとして搭載した場合のセキュリティの向上を達成する。2上記1において、上記不揮発性記憶装置には、上記ライトに際して事前の消去処理が行われることなく、記憶情報の書き換えが可能とされるものを適用することができる。3上記1において、電源電圧レベルを検出可能な電源検出部を含み、電源投入後、上記電源検出部での検出結果に基づいて上記不揮発性記憶装置の動作が開始されるように構成することができる。4上記1において、上記CPUの動作を監視するための動作監視部を含み、上記動作監視部での監視結果に基づいて上記不揮発性記憶装置の動作が開始されるように構成することができる。5上記1において、上記不揮発性記憶装置は、上記CPUで実行されるプログラムを格納可能なプログラム領域と、上記CPUでのプログラム実行において使用されるデータを格納可能なデータ領域とを含み、上記CPUでの上記プログラムの実行によって、上記データ領域へのデータ書き込みが可能とされ、上記不揮発性記憶装置における少なくとも一部の記憶領域についての不揮発保持が無効とされた後に、上記CPUによるリード動作が許可されるように構成することができる。6上記1において、上記不揮発性記憶装置における少なくとも一部の記憶領域についての不揮発保持を無効にする動作は、上記不揮発性記憶装置に対する所定の値のライト動作とすることができる。7上記1において、上記不揮発性記憶装置は、上記CPUで実行されるプログラムを格納可能なプログラム領域と、上記CPUでのプログラム実行において使用されるデータを格納可能なデータ領域と、を含み、上記CPUでの上記プログラムの実行によって、上記データ領域へのデータ書き込みが可能とされ、上記CPUによって上記データ領域へのデータ書き込みが行われた後に、上記データ領域のリードが許可されるように構成することができる8上記1において、上記不揮発性記憶装置は、上記CPUによって管理される第1アドレス領域及び第2アドレス領域に配置され、上記第1アドレス領域からは上記不揮発性記憶装置のリードのみが可能とされ、上記第2アドレス領域からは上記不揮発性記憶装置のリード及びライトが可能とされる。9上記1において、上記不揮発性記憶装置において不揮発保持が無効にされる領域には、秘密を保持すべきデータを格納することができる。10上記1において、上記不揮発性記憶装置において不揮発保持が無効にされる領域には、暗号化されるべき元のデータ、復号化されたデータ、又は暗号化又は復号化のための情報を格納することができる。11上記6において、上記不揮発性記憶装置における少なくとも一部の記憶領域についての不揮発保持を無効にするためのライト動作は、上記CPUのプログラム実行によるライト動作とは別個に行うことができる。12予め設定されたプログラムに基づく演算処理を可能とするCPUと、上記CPUによるランダムアクセスによってリードライト可能な不揮発性記憶装置と、上記不揮発性記憶装置の動作開始又は電源遮断の少なくとも一方において、上記不揮発性記憶装置における一部の記憶領域についての不揮発保持を無効にするためのメモリコントローラとを含んでマイクロコンピュータを構成することができる。かかる構成においても、上記不揮発性記憶装置に、記憶領域の一部に不揮発保持が無効とされる領域が設けられているため、この領域を、秘密を保持すべきデータの格納用とすることにより、この秘密を保持すべきデータが上記不揮発性記憶装置に不揮発保持されることが回避される。このことが、ランダムアクセスによってリードライト可能な不揮発性記憶装置を、プログラム/データ兼用のメモリとして搭載した場合のセキュリティの向上を達成する。13上記12において、上記不揮発性記憶装置は、上記ライトに際して事前の消去処理が行われることなく、記憶情報の書き換えが可能とされる。14上記12において、上記CPU及び上記不揮発性記憶装置を初期状態に戻して動作を開始させるためのリセット信号を生成可能なリセットコントローラを含み、上記リセットコントローラは、上記マイクロコンピュータに供給される電源電圧のレベルを検出する電源検出部を含み、上記電源検出部での検出結果に基づいて上記リセット信号を形成するように構成することができる。15上記12において、上記不揮発性記憶装置を初期状態に戻して動作を開始させるためのリセット信号を生成可能なリセットコントローラと、上記CPUの動作を監視可能な動作監視部と、を含み、上記リセットコントローラによって、上記動作監視部での監視結果に基づいて上記リセット信号を形成するように構成することができる。16上記12において、上記不揮発性記憶装置は、上記CPUで実行されるプログラムを格納可能なプログラム領域と、上記CPUでのプログラム実行において使用されるデータを格納可能なするデータ領域とを含み、上記CPUでの上記プログラムの実行によって、上記データ領域へのデータ書き込みが可能とされ、上記メモリコントローラによって上記不揮発性記憶装置における少なくとも一部の記憶領域についての不揮発保持が無効とされた後に、上記CPUによるリード動作が許可されるように構成することができる。17上記12において、上記不揮発性記憶装置は、上記CPUで実行されるプログラムを格納可能なプログラム領域と、上記CPUでのプログラム実行において使用されるデータを格納可能なするデータ領域とを含み、上記CPUによって上記データ領域へのデータ書き込みが行われた後に、上記データ領域のリード動作が許可されるように構成することができる。18上記12において、上記不揮発性記憶装置において不揮発保持が無効にされる領域は、上記CPUの例外処理ベクタを含まない作業領域とすることができる。19上記12において、上記CPUは、上記不揮発性記憶装置において不揮発保持が無効にされる領域に、秘密を保持すべきデータを格納するように構成することができる。20上記12において、上記メモリコントローラは、不揮発保持を無効にするための信号を生成するためのライト制御部、及び不揮発保持を無効にするための信号と上記CPUのリード又はライトのための信号とを選択するためのマルチプレクサを含んで構成することができる。21上記12において、上記メモリコントローラは、上記不揮発性記憶装置における少なくとも一部の記憶領域についての不揮発保持を無効にするためのライト動作を、上記CPUによるライト動作とは別個に行うためのライト制御部を含んで構成することができる。22予め設定されたプログラムに基づく演算処理を可能とするCPUと、上記CPUによるランダムアクセスによってリードライト可能な不揮発性記憶装置とを含むマイクロコンピュータにおいて、上記不揮発性記憶装置は、上記CPUで実行されるプログラムを格納可能なプログラム領域と、上記CPUでのプログラム実行において使用されるデータを格納可能なするデータ領域とを含み、上記データ領域は、不揮発保持が可能とされる第1記憶領域と、不揮発保持が無効とされる第2記憶領域とを含み、上記CPUは、上記第2記憶領域を作業領域として使用する。上記の手段によれば、上記不揮発性記憶装置に、不揮発保持が無効とされる第2記憶領域が設けられ、この領域が上記CPUの作業領域とされることにより、例えばCPUの動作中に悪意を持って電源が遮断された場合でも、上記第2記憶領域の不揮発保持が無効とされるため、上記CPUでの作業内容の外部への読み出しを回避することができる。このことが、セキュリティの強化を達成する。23上記22において、上記不揮発性記憶装置の動作開始又は電源遮断の少なくとも一方において、上記不揮発性記憶装置における不揮発保持が無効とされる領域に対して書き込み又は書き換えの動作が行われるように構成することができる。24上記22において、上記不揮発性記憶装置の不揮発保持が無効な領域への書き込み又は書き換えが行われるまで、上記不揮発性記憶装置からのリードが阻止されるように構成することができる。本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記の通りである。すなわち、ランダムアクセスによってリードライト可能な不揮発性記憶装置NVRAMをプログラム/データ兼用のメモリとして搭載した場合のセキュリティの向上を図ることができる。図1には、本発明にかかるマイクロコンピュータの構成例が示される。図1に示されるマイクロコンピュータ100は、シングルチップマイクロコンピュータとされ、特に制限されないが、中央処理装置CPU103、不揮発性記憶装置NVRAM101、メモリコントローラNVMC102、バスコントローラBSC111、リセットコントローラRESC113、割り込みコントローラINT112、暗号処理機能部106、及び入出力I/O部107を含み、公知の半導体集積回路製造技術により、単結晶シリコン基板などの一つの半導体基板に形成される。I/O部107は、外部との間で各種信号の入出力を可能とする入出力ポートの他に、内部バスIバスと外部バスEXAB,EXDBとの間に介在されたバッファBUF108、CPU103の動作を監視するためのウォッチドッグタイマWDT109、シリアル通信ラインを介してシリアル通信を可能とするシリアルコミュニケーションインタフェースSCI110、及びアナログ信号をディジタル信号に変換するためのA/Dアナログ/ディジタル変換器122などの各種周辺回路を含む。尚、このマイクロコンピュータ100には、図示されないが、クロック発振器CPGなどの機能ブロックが設けられている。CPU103は、制御部104と実行部105を含み、主として、NVRAM101からフェッチした命令を実行する。作業用のデータ領域としてNVRAM101が使用される。NVRAM101は、特に制限されないが、不揮発性メモリでありながら、読み書き回数に制限がないメモリの一例であるマグネトロレジスティブランダムアクセスメモリMRAMとされる。MRAMは、磁化の向きで素子の抵抗が異なる磁気抵抗効果を利用して情報を記憶可能な複数のメモリセルがアレイ状に配列されて成る。このメモリセルは、マグネティックトンネルジャンクションMTJ素子などとされる。NVRAM101の動作は、NVMC102によって制御される。NVRAM101は、NVMC102を介して、Iバス115に接続され、このIバス115経由でリード/ライト可能とされる。NVMC102は、所定のアドレスに対するライトを行うことが可能で、このライトのための制御信号や、アドレス信号及びデータを生成し、Iバス115による相当信号とマルチプレクスを行い、NVRAM101に供給する。すなわち、NVRAM101は、Iバス115からのライトと、NVMC102からのライトが可能にされる。NVMC102は、必要に応じてウェイト信号を生成し、それをBSC111に供給する。マイクロコンピュータ100は、Iバス第1内部バス115、Pバス第2内部バス116を有し、これらのバスによって、上記各機能ブロックが相互に接続される。それぞれのバスはアドレスバス及びデータバスの他、バス権要求信号、バスアクノレッジ信号、バスコマンド又はリード信号、ライト信号、バスサイズ信号、レディ信号またはウェイト信号などを伝達するためのコントロールバスを含む。Iバス115は、CPU103によるNVRAM101の高速アクセスを可能とする。NVRAM101のアクセスは1ステートで行われる。接続先が少数であるため、バス幅は任意にでき、例えば32ビットなどとされる。尚、DMACダイレクトメモリアクセスコントローラなどの内部バスマスタを設ける場合、当該バスマスタはこのIバスに接続される。暗号機能部106は、Iバス115に接続され、CPU103の制御下で、暗号化処理及び復号化処理を行う。暗号機能部106は、バスマスタとしてもよいし、バススレーブとしてもよい。バスマスタとする場合には、NVRAM101に対してリード/ライトを行う。不揮発保持無効領域に格納された鍵情報を用いた暗号化処理が実行可能に構成される。Pバス116には、上記I/O部107に含まれるI/Oレジスタ121、前記周辺回路などが接続される。Iバス115とPバス116とが分離されているため、CPU103のプログラムリードなどで、主として使用されるIバス115の負荷を軽減することで高速化を図ることができ、未使用時のPバス116の状態を保持するなどして低消費電力化を図ることができる。CPU103が、Pバス116に接続されるI/Oレジスタ121をアクセスする場合は、Iバス115及びBSC111を経由して行われる。I/Oレジスタ121のアクセスは2ステートで行われる。接続先が多数であり、バス幅を広げると物理的な規模が増加するため、例えば16ビットとする。Iバス115と外部バス117とは、バッファBUF108によってインタフェースされる。外部バス117には、外部メモリなどを接続することができる。これらのバスを、バスコントローラBSCが制御する。NVMC102やBUF108からBSC111に対してウェイトが要求される。また、BSC111はCPU103に対してウェイトを要求することができる。リセットコントローラRESC113は、マイクロコンピュータ100の外部から入力されるリセット信号RESなどのリセット要因を取り込み、マイクロコンピュータ100の各モジュールに対するリセット信号120を出力する。このリセット信号120には、CPU103に供給されるリセット信号や、NVMC102に供給されるリセット状態遷移信号も含まれる。リセット要因には、WDT109のオーバフローなども含まれる。また、RESC113は、電源電圧Vccレベルを検出するための電源検出回路114を含み、この電源検出回路114での検出結果に基づいてリセット信号を発生することができる。マイクロコンピュータ100は、上記の他に以下の機能を備える。割り込みントローラINT112は、周辺回路WDT109、SCI110、A/D変換器122からの割り込み信号を取り込み、CPU103に割り込要求信号を出力する。WDT109は、CPU103の暴走を検知してリセットを要求する。図3には、上記NVMC102の構成例が示される。NVMC102は、マルチプレクサ1021、ライト制御部1022、アドレス判定部1023を含む。ライト制御部1022は、動作開始後に、所定のアドレスに対するライト制御信号1024を生成する。所定のアドレスは、1ビット又は複数ビット、バイト/ワードなどのCPU103のデータの単位、NVRAM101のワード線単位、あるいはそれ以上のいずれでもよい。ライト制御信号1024には、アドレス、データ、ライト信号などが含まれ、それらは、マルチプレクサ1021を介して、NVRAM101に供給される。ライトデータは、NVRAM101の記憶領域の一部についての不揮発保持を無効とするためのもので、論理値‘0’でも論理値‘1’でもよく、さらには‘0’と‘1’との混在データであっても、ユーザによって設定可能な所定の任意の値であってもよい。ライト回数は、NVMC102の外部から指定できるようにしてよい。この指定は、固定的なものであってもよい。この指定に拘らず、一部領域は必ずライトを行うようにするとよい。ライトデータのサイズと、ライト回数とを設定することによって、不揮発保持無効領域のサイズを任意に変更することが可能となる。また、NVMC102がNVRAM101に対するライトを行っている状態では、CPU103やBSC111に対し、ウェイト要求を行うようにする。マルチプレクサ1021は、上記ライト制御信号1024と、Iバス115によるバス制御信号を選択的にNVRAM101に与える。ライト制御部1022によってライト制御が行われている期間は、マルチプレクサ1021によってライト制御信号1024が選択される。アドレス判定部1023は、Iバス115から入力されたアドレスCPU103のアドレスを判定し、後述する第1の領域に対するライトが行われた場合は、NVRAM101に対するライトを抑止するように、マルチプレクサ1021に第1領域ライト抑止信号を与える。尚、NVRAM101が複数モジュールに分割されている場合において、不揮発保持無効領域を持たないモジュールがある場合、当該モジュールについては、NVMC102を介さずに当該NVRAM101をIバス115に接続することができる。図5には上記CPU103によって管理されるアドレス空間が示される。特に制限されないが、CPU103のアドレス空間は4Gバイトである。マイクロコンピュータ100内部のNVRAM101、I/Oレジスタ121は、それぞれ固有のアドレス、バス幅、アクセスステート数で動作する。前記の通り、NVRAM101は、NVMC102を介して内部バスIバス115によって接続され、通常は1ステートでリード/ライトが行われる。NVRAM101は、複数のアドレスに配置される。CPU103は、第1動作モードと第2動作モードとを含む。上記第1動作モードでは、例えば図5Aに示されるように、第1の領域NVRAM-1は主としてプログラム用、第2の領域NVRAM-2は主としてデータ用とされる。第1の領域NVRAM-1は、CPU103の例外処理ベクタを含む。第1の領域NVRAM-1、及び第2の領域NVRAM-2は、CPU103のアドレッシングモードなどに応じて配置すればよい。主としてプログラム用の第1の領域に対するライトは、プログラム保護のため、NVMC102によって禁止される。動作開始後に書き換えする領域不揮発保持無効領域は、例外処理ベクタと重ならないようにする。NVRAM101を複数モジュールに分割する場合は、互いに異なるモジュールに配置するとよい。本例では、第2の領域NVRAM-2の一部に不揮発保持無効領域が形成される。第2動作モードにおいて、第1の領域NVRAM-1は、図5Bに示されるように外部空間とされる。この場合、NVRAM101は、主としてデータ領域として使用され、プログラムは主として、外部バスに接続されたメモリが使用される。尚、図5Aに示されるように、プログラムの初期書き込み又は書き換えブートなどのためのプログラムを格納する、通常動作時には使用しない領域ブート領域を持つ場合があるが、この領域は、不揮発保持無効領域の対象外とする。この領域は、所定のブートモードなどのみで、リードできるようにしてよい。ブートモード又はブート領域でのプログラム実行時は、第1の領域NVRAM-1に対するライトを許可するようにしてよい。図6には、NVRAM101の格納データの一例が示される。NVRAM101は、ランダムアクセスによるリード又はライトが可能であって、フラッシュメモリのように、書き込みに際して消去などの特別な動作を行う必要がなく、NVRAM101上のプログラム実行によって、NVRAM101への書き込みを行うことができる。このため、単一のNVRAM101に、プログラム領域とデータ領域を設けることができる。データ領域には、要保存のデータ領域と、保持すべきでない消去すべきデータ領域とがある。例えばセキュリティの関係で保持すべきでない消去すべきデータ領域は、上記不揮発保持無効領域とする。NVRAM101の不揮発保持無効領域以外の不揮発保持領域に、プログラム及びデータ保存領域を設けることができる。不揮発保持無効領域は、CPU103の作業領域とされ、保持すべきでない消去すべき秘密情報が格納される。秘密ではない作業用データは、前記不揮発保持領域に格納してもよい。図7には、上記NVMC102の状態遷移が示される。マイクロコンピュータ100のリセットなどによりRESC113からのリセット状態遷移信号rstが論理値‘1’にアサートされることによって、NVMC102がリセット状態に遷移される。リセット後、NVMC102は、ライト状態に遷移し、ライト制御部1022の制御により、不揮発保持無効領域の所定のアドレスに対するライトサイクルが発行される。ライトすべきデータ数に応じて、ライト状態を複数のステートで構成してもよい。この状態では、CPU103からNVRAM101のリード/ライトができないので、CPU103がNVRAM101をリード又はライトしようとした場合は、ウェイト信号を活性化して、ウェイトを要求し、NVMC102による所定のライトが終了後後述のCPUリードライト状態遷移後に、CPU103によるNVRAM101のリード/ライトを行うようにする。あるいは、NVMC102がライト状態のときは、CPU103にリセットを継続するようにしてもよい。所定のライトが終了すると、NVRAM101は、CPU103のリードライト状態に遷移する。上記リセット後の所定のライト状態ライト動作により、不揮発保持無効領域に対する無効化処理を行うことが可能となる。尚、RESC113における電源検出回路114により電源投入が検知された場合に、NVMC102をリセット状態に遷移させ、電源投入完了後、又は所定時間経過後に、NVMC102をライト状態に遷移させるようにしてもよい。また、WDT109のオーバーフローや、マスク不可能な割り込みなど、異常と判断されるべき状態を検出して、リセット状態に遷移させるようにしても良い。また、NVRAM101に、パラメータ情報などを含む場合には、図8に示されるように、ライト終了後に、パラメータリードの状態を追加してもよい。パラメータ情報としては、例えば、NVRAM101のトリミング情報や、A/D変換器122のアナログ値の調整などが挙げられる。図9には、マイクロコンピュータ100における主要部の動作タイミングが示される。図9に示されるように、外部からのリセット信号RESに応じてリセット状態遷移信号rstが論理値‘1’となると、NVMC102は、リセット状態に遷移され、マルチプレクサ1021の選択状態がライト制御部1022側に切り換えられて、CPU103からのリード/ライトコマンド抑止されるnop。これによりアドレス及びデータは初期化される。そして、リセット状態遷移信号rstが論理値‘0’となり、リセットが解除されると、ライト状態になり、所定のアドレスaddr-1~addr-4についてのライトが行われる。本例では、ライト動作が4回連続して行われる。このようなライト動作のアドレスは、図5A,Bにおける不揮発保持無効領域に対応するように、ライト制御部1022においてハードウェア的に生成される。書き込みデータは、特に制限されないが、論理値‘0’とされる。上記のライト動作が終了すると、NVMC102は、CPUリードライト状態に遷移し、マルチプレクサ1021の選択状態をIバス115に切り換える。上記ライトの完了に相当する期間本例では4回のライトに相当する時間、RESC113は、CPU103に対するリセット信号rst_cpuを活性化するようにする。以降は、CPU103によるリード/ライトが受け付けられる。図10には、上記マイクロコンピュータ100における主要部の別の動作タイミングが示される。マイクロコンピュータ100の電源Vccが投入されて所定の電源電圧レベルに達したことが電源検出回路114によって検出されると、リセット状態遷移信号rstが論理値‘1’にされ、それによってNVMC102は、リセット状態に遷移され、マルチプレクサ1021の選択状態がライト制御部1022に切り換えられて、CPU103からのリード/ライトコマンド抑止されるnop。そして、リセット状態遷移信号rstが論理値‘0’となり、リセットが解除されると、ライト状態になり、所定のアドレスaddr-1~addr-4についてのライトが行われる。それ以降は、図9に示される場合と同様であるので、それについての説明を省略する。図11には、マイクロコンピュータ100における主要部の別の動作タイミングが示される。マイクロコンピュータ100の電源電圧Vccのレベル低下を検出すると、リセット信号rst_pdwnが論理値‘1’にされる。このリセット信号rst_pdwnは、電源検出回路114の検出結果に基づいてRESC113で生成される。リセット信号rst_pdwnが論理値‘1’にされることによってライト状態になり、所定のアドレスaddr-1に対するライトが行われる。電源電圧Vccが、必要最小限のレベル以下にまで低下した場合には、ライトを行うことができない。このため、電圧の低下や保持の程度によって、ライトできる領域が変わる。本例は、図9や図10に示される動作と組み合わせることが望ましい。図9や図10に示されるように電源投入後にライトを行えば、論理的に指定した領域を確実にライトすることができる。少なくともCPU103の動作開始以前に、ライトすることができる。尚、NVRAM101を複数モジュールに分割し、不揮発保持無効領域と、例外処理ベクタ領域が異なるモジュールに配置される場合には、CPU103に対するリセット信号rst_cpuを、リセット状態遷移信号rstと同様にし、CPU103が不揮発保持無効領域を含む領域にアクセスした場合に、ウェイトを要求するようにすればよい。また、図5Bに示される第2動作モードなど、例外処理ベクタ領域がNVRAM101に存在しない場合も同様にすることができる。リセット状態遷移信号rstの波形立上りの検出後、リセット状態遷移信号rstの波形立下りを待たずに、ライト状態に遷移するようにしてもよい。いずれにせよ、CPU103によるNVRAM101のアクセス以前に、自動書き換えを行うようにすればよい。マイクロコンピュータ100が複数の動作モードを持つ場合にも、動作モードによらずに自動書き換えを行うようにする。図13には、CPU103のリセット解除時のフローチャートが示される。リセットが解除されると、CPU103はリセット例外処理を行う。リセット例外処理時、CPU103は、不揮発保持無効領域に対するライトを行うNVRAMライト1~4ステップを持つようにする。すなわち、NVMC102によらず、NVRAM101の自動書き換えが行われる。このための、CPU103の実行部105に、アドレスやデータの生成論理、すなわち、通常の命令実行のアドレスやデータのセレクタを設け、制御部104に、前記セレクタの制御、バスコマンドの発生、フローの制御のための論理を設ける。それによりCPU103は、例外処理ベクタをリードし、プログラムの先頭命令に分岐する。これは、通常のCPUと同様である。自動書き換えのためのプログラムを、リセット例外処理後に実行するようにし、その後に、本来のプログラムの先頭命令に分岐するようにしてもよい。あるいは、DMAコントローラなどを持ち、リセット後に、かかるDMAコントローラを自動的に起動して、上記不揮発保持無効領域に対するライトを行うようにしてもよい。図14には、上記マイクロコンピュータ100の応用例が示される。また、図15には、図14に示される応用例における処理フローチャートが示される。図14に示されるように、マイクロコンピュータ100は、それに接続された他のマイクロコンピュータ200との間で通信を行う。そしてマイクロコンピュータ100は、通信の内容に従って所要の動作を行う。尚、接続先は変更される。通信の情報には、接続先のマイクロコンピュータに固有のID情報や鍵情報などの秘密情報が含まれ、接続先のマイクロコンピュータ200の認証を行うことがある。ID情報や鍵情報などの秘密情報は、通信時には、暗号化などを行って接続先から入力されたとしても、マイクロコンピュータ内部では復号されたデータ、又は暗号化する前のデータが存在する。これを、NVRAM101に保持していれば、それが、悪意のプログラム実行によってリードされる可能性が高まる。通信時に暗号化を行い、秘密を保持するのであるから、マイクロコンピュータ内の復号されたデータなどの秘密情報をリードされることも阻止すべきである。かかる秘密情報を不所望に保持しないために、所要の処理終了後に、当該秘密情報を、マイクロコンピュータ100のプログラムで初期化又は書き換えることも考えられるが、初期化又は書き換える前に、悪意を持って電源遮断などをされれば、初期化又は書き換えができないことも考えられる。このような使用方法において、マイクロコンピュータ100は、リセット後に不揮発保持無効領域の初期化又は書き換え不揮発保持無効化処理を行うようにするS1。その後、マイクロコンピュータ100は、NVRAM101上に格納されたプログラムに従い、CPU103の制御に基づき、接続先のマイクロコンピュータ200のID情報や鍵情報は、当該接続時には、SCI110を介して入力されるS2。入力されたデータは、一旦、NVRAM101にライトされて保持される。このデータが暗号化されたデータであれば、NVRAM101の不揮発保持領域に格納してよいS3。CPU103の制御により暗号機能部106において、入力データの復号化処理などが行われるS4。暗号機能部106には、適宜、鍵情報などが与えられる。ID情報や鍵情報、および復号化されたデータ平文は必要に応じて任意のタイミングにおいて不揮発保持無効領域に格納ライトされ、悪意によるリードが抑止されるS5。逆に、暗号化を行う場合は、元のデータ平文を不揮発保持無効領域に格納するようにする。暗号化されたデータは、不揮発保持領域に格納してもよい。暗号機能がデータを処理する場合も、平文を不揮発保持無効領域に格納するようにし、一方、暗号を不揮発保持領域に格納することができる。この復号されたデータは、認証などのCPU103の作業に随時参照リード/ライトされるS6。認証が確認されれば、当該システムに所要の処理が行われるS7。認証がなされなければ、処理を行わずに終了する。接続先のマイクロコンピュータとの接続が解消されれば、接続先のマイクロコンピュータ200に固有のID情報や鍵情報などの秘密情報は保持する必要はない。別のマイクロコンピュータと接続する場合には、不揮発保持無効領域に対し別のID情報や鍵情報を入力し、同様の処理が行われる。本マイクロコンピュータ100においては、上記のID情報や鍵情報、復号化されたデータなどの、保持すべきでない消去すべき秘密情報を、前記不揮発保持無効領域に格納しておけば、前記のようなマイクロコンピュータ100のプログラムで初期化又は書き換えする手間も不要であるし、悪意により動作中に電源が遮断されたような場合も、マイクロコンピュータ100の次の電源投入時に、当該マイクロコンピュータ100の動作開始前に書き換えされるから、悪意/善意によらず、リードすることができないので、セキュリティの強化を図ることができる。上記例によれば、以下の作用効果を得ることができる。1ランダムアクセスによってリードライト可能なNVRAM101を、CPU103のプログラム領域と作業用データ領域として使用することにより、ハードウェア資源を節約できるし、製造工程の簡略化に寄与できるので、製造費用を低減できる。NVRAM101とは別に一般的なRAMを搭載していないので、当該RAMにおける記憶データを保持するための電流を考慮しないで良いし、ソフトエラー対策も不要となる。この場合において、上記NVRAM101の記憶領域の一部に不揮発保持が無効とされる領域が設けられているため、この領域を、秘密を保持すべきデータの格納用とすることにより、この秘密を保持すべきデータが上記NVRAM101に不揮発保持されることが回避される。これによって、ランダムアクセスによってリードライト可能な不揮発性記憶装置NVRAMを、プログラム/データ兼用のメモリとして搭載した場合のセキュリティの向上を達成することができる。2NVMC102で、自動書き換え不揮発保持無効領域に対する無効化処理を行うことにより、CPU103は既存のものを使用することができる。CPU103を停止して、NVRAM101他のモジュールを、外部からリード/ライトするようなテストモードなどがあっても、自動書き換えを行うことができる。3NVMC102による自動書き換え中、CPU103をリセット状態に保持すれば、マイクロコンピュータ100の内部状態を簡略化できる。4例外処理ベクタ領域が、不揮発保持無効領域を含むNVRAM101以外に存在する場合は、自動書き換え中も、CPU103を動作させ、自動書き換え中のNVRAM101に対するアクセスがあったときにウェイトを要求することにより、不所望の待機時間を抑止することができる。5CPU103によって、自動書き換えを行うことにより、NVMC102を不要とすることができる。6NVRAM102のプログラム用に使用する領域を、ライト禁止にすることによって、フラッシュメモリなどに相違して、書き換えが容易であることによる、不所望のプログラムの書き換えを抑止できる。図2には、上記マイクロコンピュータ100における主要部の別の構成例が示される。図2に示されるマイクロコンピュータ100は、二つの半導体チップによって構成される。すなわち、図2に示されるマイクロコンピュータ100が、図1に示されるのと大きく相違するのは、それぞれNVRAM101及びNVMC102に対応するNVRAM201及びNVMC202が、CPU103とは別のチップ300に形成されている点である。また、このチップ300内には、チップ300内の電源電圧を検出可能な電源検出回路214を含むRESC213が設けられ、このRESC214によって形成されるリセット状態遷移信号によってNVMC202がリセットされるようになっている。また、NVMC202は、外部バス117及びBUF108を介してIバス115に結合される。NVRAM201、NVMC202、及びRESC213の機能は、それぞれ図1に示されるNVRAM201、NVMC202、及びRESC113と同様とされるため、その詳細な説明は省略する。このようにマイクロコンピュータシステム100が複数の半導体チップによって構成される場合にも、図1に示される場合と同様の作用効果を得ることができる。図4には、NVMC102の別の構成例が示される。NVMC102は、アドレス判定部1033、リード制御部1031を含んで成る。アドレス判定部1033は、動作開始後に、リセットによってリード阻止状態に遷移される。この状態では、アドレスの判定結果に従い、不揮発保持無効領域以外のリードは許可される。また、不揮発保持無効領域のリードは禁止される。ライトは領域によらず許可される。さらに、不揮発保持無効領域へのライトが観測される。不揮発保持無効領域の全てのアドレスにライトされたことが判定され、リード許可状態に遷移される。この状態では、領域によらず、リードを許可する。リード制御部1031は、アドレス判定のリード許可/禁止に従って、NVRAM101のリードの許可/禁止が行われる。これによって、不揮発保持無効領域は、ライトするまでリードすることができないから、動作開始以前の内容をリードすることを阻止できる。ライトした内容はリードできるから、作業領域として使用することに不都合はない。リードの禁止は、NVRAM101に対するリード信号を抑止してもよいし、リードデータをマスクするようにしてもよい。図12には、図4に示される構成を採用した場合のマイクロコンピュータ100の動作タイミングが示される。リセット状態遷移信号rstが論理値‘1’となると、NVMC102はリード阻止状態に遷移される。CPU103による、所定のアドレスaddr-1~addr-4に対するライトを検出すると、リード許可状態に遷移される。この例では、4回のライト後に遷移するようにしている。尚、1つのライト毎に、当該アドレスに対するリードを許可するようにしてもよい。リード禁止を行うことで、リセット後のCPU103のプログラム実行を早期に開始することができる。プログラムの実行によって、作業領域の初期化を行う場合は、二重にライトしたり、使用しないアドレスにライトしたりすることがない。以上本発明者によってなされた発明を具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。例えば、NVRAM101は、MRAMに限らず、ランダムなライトアクセスが可能で、不揮発保持が可能であればよい。NVRAM101の構成も任意にでき、例えば、プログラム用とデータ用に複数のNVRAM101を持ってもよい。プログラム用とデータ用に、一種類のNVRAM101で構成することが望ましい。NVRAM101とNVMC102とを一体的に構成してもよい。メモリアレイとNVMCに相当する機能を持てばよい。NVRAMは、ECCErrorCorrectingCodeによるエラー訂正が行えるように、データとシンドロームを持つようにしてもよい。また、リード禁止の手段も任意にできる。動作開始以前の内容をリードできず、動作開始以後にライトした内容をリードできるものであればよい。自動書き換え不揮発保持無効領域に対する無効化処理用データの内容も任意にできる。古いデータを保持しなければよく、固定値のほか、ランダムなものであってもよい。不揮発保持無効化とは、動作開始以前にすでに格納されているデータをリードできなくすることであって、フラッシュメモリのように、記憶素子の状態を、書き込み可能な状態に戻すことに限らない。不揮発保持無効化動作ということができる。自動書き換えのためのアドレス配置やアドレス範囲も任意にできる。自動書き換えのためのアドレス範囲については、フラッシュメモリで採用されているようにブロック単位で一括書き込みを可能とする構成を採ってもよい。さらに、自動書き換えのためのアドレス範囲については、CPU103のプログラム実行によるライトシーケンスと異なるようにしてもよい。例えば、アドレスに対応したバイト領域をライトする代わりに、ビット0のみを、8アドレスに対してライトしてもよい。バイト単位で意味を持つデータは、そのうちの1ビットを書き換えるだけでも意味をなさなくなるからである。上記ECCによるエラー訂正を行っている場合は、シンドロームのみをライトするようにしてもよい。マイクロコンピュータの構成や、アドレス空間の大きさや配置についても限定されない。そのほかや機能ブロックなども種々変更できる。CPU103や、暗号機能部106の他に、DMAコントローラなどのように、NVRAM101に対するライトを可能とするモジュールを搭載してもよい。マイクロコンピュータ100と通信を行うべき相手は、マイクロコンピュータに限定されない。通信すべきデータは、ID情報や鍵情報に限定されず、任意の著作物などであってもよい。不揮発保持無効領域に格納すべきデータとしては、ID情報や鍵情報に限定されず、マイクロコンピュータ内部で生成又は復号化される全ての秘密情報に対応できる。以上の説明では主として本発明者によってなされた発明をその背景となった利用分野であるシングルチップマイクロコンピュータに適用した場合について説明したが、本発明はそれに限定されるものではなく、ランダムアクセスを可能とする不揮発性記憶装置を含むマイクロコンピュータに広く適用することができる。"