JP2003263421A - マイクロコンピュータ - Google Patents

マイクロコンピュータ

Info

Publication number
JP2003263421A
JP2003263421A JP2002062472A JP2002062472A JP2003263421A JP 2003263421 A JP2003263421 A JP 2003263421A JP 2002062472 A JP2002062472 A JP 2002062472A JP 2002062472 A JP2002062472 A JP 2002062472A JP 2003263421 A JP2003263421 A JP 2003263421A
Authority
JP
Japan
Prior art keywords
microcomputer
write
flash memory
voltage
writing
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
JP2002062472A
Other languages
English (en)
Inventor
Sozo Fujioka
宗三 藤岡
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.)
Renesas Design Corp
Mitsubishi Electric Corp
Original Assignee
Renesas Design Corp
Mitsubishi Electric 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 Renesas Design Corp, Mitsubishi Electric Corp filed Critical Renesas Design Corp
Priority to JP2002062472A priority Critical patent/JP2003263421A/ja
Priority to US10/234,386 priority patent/US6813191B2/en
Publication of JP2003263421A publication Critical patent/JP2003263421A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/22Safety or protection circuits preventing unauthorised or accidental access to memory cells

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Microcomputers (AREA)

Abstract

(57)【要約】 【課題】 消去および書込に高電圧を要する不揮発性メ
モリの情報の誤消去または誤書込を効率的に低減する。 【解決手段】 スレーブマイコン11とホストマイコン
10はマイクロコンピュータを構成する。スレーブマイ
コン11は、フラッシュメモリ14と、そこに格納され
たプログラムを実行するCPU12を有する。CPU1
2はフラッシュメモリ14上の情報の消去または書込の
ための複数の条件を設定する。条件の一つはホストマイ
コン10がスレーブマイコン11に与えてもよい。条件
の全てが設定されているときに、ANDゲート回路20
がスイッチ21を閉じて、書込消去用電圧端子17から
の書込消去用の電圧をフラッシュメモリ14に供給す
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、消去および書込
に書込消去用の電圧を要する不揮発性メモリを備えたマ
イクロコンピュータに関するものである。
【0002】
【従来の技術】フラッシュメモリまたはその他のEEP
ROM(electricallyerasable
programmable read only me
mory)は、電気信号によって部分的な情報の消去お
よび書込が可能であることから広く使われている。これ
らの不揮発性メモリの情報の消去および書込には、情報
の読み出しに要する電圧よりも一般に高い電圧が必要と
される。あるいは読み出しとは異なる電圧供給部から消
去または書込のための電圧が供給される。
【0003】図22は、フラッシュメモリを内蔵した従
来のマイクロコンピュータの一例を示すブロック図であ
る。図において、1はマイクロコンピュータ、2はCP
U(中央処理演算装置)、3はプログラムカウンタ(P
C)、4はフラッシュメモリ、5はRAM(rando
m−access memory)、6はバス、7は書
込消去用電圧端子、8は読み出し用電圧端子を示す。
【0004】マイクロコンピュータ1において、CPU
2、フラッシュメモリ4およびRAM5はバス6で相互
に接続されており、CPU2はバス6を介してフラッシ
ュメモリ4およびRAM5へ情報を交換することができ
る。
【0005】フラッシュメモリ4には、このマイクロコ
ンピュータ1が実行する各種のプログラムおよびデータ
が格納されている。CPU2は、フラッシュメモリ4か
らプログラムを読み出しながらこれを実行する。
【0006】RAM5には、プログラムの実行に必要な
データが一時的に格納される。また、フラッシュメモリ
4の消去モードおよび書込モードではフラッシュメモリ
4からプログラムを読み出すことができないので、フラ
ッシュメモリ4の消去または書込を行うプログラムの実
行にはRAM5が使用される。つまり、実際にフラッシ
ュメモリ4の消去または書込を行う前に、消去・書込プ
ログラムをCPU2はフラッシュメモリ4から読み出し
て、RAM5にロードすなわち一時的に格納する。そし
て、RAM5上のこのプログラムを参照しながら、CP
U2はフラッシュメモリ4の消去または書込を行う。
【0007】実行中のプログラムのうちの次に実行すべ
き命令が格納されているアドレスは、CPU2に設けら
れたプログラムカウンタ3で示される。従って、CPU
2は次にどの記憶装置(フラッシュメモリ4またはRA
M5)のどのアドレスを参照すればよいのか識別でき、
プログラムの実行が円滑化される。
【0008】フラッシュメモリ4には、書込消去用電圧
端子7から書込消去用のハイレベルの電圧Vppが与え
られ、読み出し用電圧端子8からローレベルの電圧V
ccが与えられる。ここでは電圧Vppがハイレベル
で、電圧Vccがローレベルと説明するが、電圧Vpp
が電圧Vccと同じこともある。書込消去用の電圧は、
情報の消去および書込のためにフラッシュメモリ4に必
要とされる。従って、書込消去用の電圧がフラッシュメ
モリ4に供給されなければ、フラッシュメモリ4への情
報の消去または書込はできない。読み出し用の電圧は、
フラッシュメモリ4からの情報の読み出しに必要とされ
る。
【0009】マイクロコンピュータでは、フラッシュメ
モリに格納された情報を適切に保護するために、誤動作
による誤消去または誤書込の防止措置を採ることが望ま
しい。その試みの一例が特開平6−180996号公報
に開示されている。この公報に記載されたコンピュータ
は、コンピュータの本体から分離した電圧変換装置(昇
圧回路装置)を備える。コンピュータの本体にはコネク
タが設けられており、必要なときにコネクタを電圧変換
装置に接続すると、書込消去用の電圧がコンピュータの
本体に配置されたフラッシュメモリに与えられて消去ま
たは書込が可能になる。
【0010】
【発明が解決しようとする課題】従来のマイクロコンピ
ュータは以上のように構成されているので、フラッシュ
メモリの情報の消去または書込が必要になるたびにコネ
クタをコンピュータの本体に接続しなければならず不便
であるなどの課題があった。
【0011】一方、誤消去または誤書込の防止のために
何の対策もなければ、フラッシュメモリからプログラム
を読み出しながら実行させている時に、誤動作で書込消
去用の電圧がフラッシュメモリに供給され、消去モード
または書込モードになると、プログラムが暴走してしま
う。上述したように、CPUは通常はフラッシュメモリ
からプログラムを読み出しながら実行させるが、このよ
うな誤動作はノイズまたはその他の原因により起こりう
る。
【0012】この発明は上記のような課題を解決するた
めになされたもので、消去および書込に書込消去用電圧
を要する電気的に情報の消去および書込ができる不揮発
性メモリの情報の誤消去または誤書込を効率的に低減ま
たは防止するマイクロコンピュータを得ることを目的と
する。
【0013】
【課題を解決するための手段】この発明に係るマイクロ
コンピュータは、書込消去用の電圧が供給されると電気
的に情報の消去および書込ができる不揮発性メモリと、
前記不揮発性メモリに格納されたプログラムを実行する
処理装置と、前記不揮発性メモリ上の情報の消去または
書込のための複数の条件を設定する設定部と、前記複数
の条件の全てが設定されているときに、書込消去用の電
圧を前記不揮発性メモリに供給できるようにする書込消
去用電圧供給許容部とを備えたものである。
【0014】この発明に係るマイクロコンピュータは、
不揮発性メモリに書込消去用の電圧を供給するため書込
消去用電圧供給部と不揮発性メモリとの間に介在するス
イッチを書込消去用電圧供給許容部が備えており、前記
不揮発性メモリが配置されているチップの外部に前記書
込消去用電圧供給部が設けられ、前記不揮発性メモリが
配置されたチップの内部に前記スイッチが配置されてい
ることを特徴とするものである。
【0015】この発明に係るマイクロコンピュータは、
ホストマイクロコンピュータと前記ホストマイクロコン
ピュータのコマンドに従って動作するスレーブマイクロ
コンピュータを備えており、設定部は、不揮発性メモリ
上の情報の消去または書込のための第1の条件および第
2の条件をそれぞれ設定する第1の設定部および第2の
設定部を有しており、前記スレーブマイクロコンピュー
タが前記不揮発性メモリと処理装置と前記第1の設定部
を有し、前記ホストマイクロコンピュータが前記第2の
設定部を有することを特徴とするものである。
【0016】この発明に係るマイクロコンピュータは、
ホストマイクロコンピュータと前記ホストマイクロコン
ピュータのコマンドに従って動作するスレーブマイクロ
コンピュータを備えており、前記スレーブマイクロコン
ピュータが不揮発性メモリと処理装置と設定部を有し、
ホストマイクロコンピュータは、スレーブマイクロコン
ピュータに不揮発性メモリ上の情報の消去または書込を
させるコマンドを前記スレーブマイクロコンピュータに
送信する前に、書込消去用電圧要求コマンドを前記スレ
ーブマイクロコンピュータに送信し、前記スレーブマイ
クロコンピュータが書込消去用電圧要求コマンドを受信
すると、前記設定部は条件の一つを設定することを特徴
とするものである。
【0017】この発明に係るマイクロコンピュータは、
設定部は、不揮発性メモリ上の情報の消去または書込の
ための第1の条件および第2の条件をそれぞれ設定する
第1の設定部と第2の設定部とを有しており、前記第1
の設定部が処理装置を有しており、前記第2の設定部が
前記処理装置とは別個の回路であって前記処理装置が配
置されたチップに配置されており、前記処理装置の動作
の正常性を確認し、正常である場合に前記第2の条件を
設定することを特徴とするものである。
【0018】この発明に係るマイクロコンピュータは、
不揮発性メモリに与えられる書込消去用の電圧を計測す
る電圧計測部をさらに備え、前記電圧が異常である場合
に、設定部が条件の一つを非設定にすることを特徴とす
るものである。
【0019】この発明に係るマイクロコンピュータは、
ホストマイクロコンピュータと前記ホストマイクロコン
ピュータのコマンドに従って動作するスレーブマイクロ
コンピュータを備えており、設定部は、不揮発性メモリ
上の情報の消去または書込のための第1の条件、第2の
条件および第3の条件をそれぞれ設定する第1の設定
部、第2の設定部および第3の設定部を有しており、前
記スレーブマイクロコンピュータが不揮発性メモリと処
理装置と第1の設定部を有し、前記ホストマイクロコン
ピュータが第2の設定部を有しており、前記スレーブマ
イクロコンピュータは、第3の設定部と、不揮発性メモ
リに与えられる書込消去用の電圧を計測する電圧計測部
をさらに有しており、前記電圧が異常である場合に、前
記第3の設定部が前記第3の条件を非設定にするように
なされており、前記第1の条件、前記第2の条件および
前記第3の条件の全てが設定されているときに、書込消
去用電圧供給許容部は書込消去用の電圧を前記不揮発性
メモリに供給できるようにされていることを特徴とする
ものである。
【0020】この発明に係るマイクロコンピュータは、
情報を一時的に格納できる一時的格納メモリをさらに備
え、不揮発性メモリ上の情報の消去または書込を行う場
合に、実行するプログラムを処理装置は前記一時的格納
メモリに格納させ、処理装置は、実行しようとする命令
が格納されているアドレスが前記一時的格納メモリのア
ドレスであるか否かを判断し、この判断が否定的な場合
に設定部が条件の一つを非設定にすることを特徴とする
ものである。
【0021】
【発明の実施の形態】以下、この発明の実施の一形態を
説明する。 実施の形態1.図1は、この発明の実施の形態1に係る
マイクロコンピュータであるマルチプロセッサシステム
を示す。図において、10はホストマイクロコンピュー
タ(ホストマイコン)、11はスレーブマイクロコンピ
ュータ(スレーブマイコン)を示す。ホストマイコン1
0およびスレーブマイコン11は相互にリンクされてお
り、相互に通信することが可能である。
【0022】単一のマイクロコンピュータとしてのマル
チプロセッサシステムにおいて、ホストマイコン10お
よびスレーブマイコン11は、それぞれ独立したプロセ
ッサとメモリを有するが、スレーブマイコン11はホス
トマイコン10のスレーブとして動作する。具体的に
は、図2に示されるように、スレーブマイコン11はホ
ストマイコン10からホストマイコン10が発行したコ
マンドを受信すると、そのコマンドに基づいた処理を実
行する。その処理の実行後、スレーブマイコン11は、
処理の実行完了を示すレスポンス信号をホストマイコン
10に返送する。レスポンス信号には、その処理の実行
結果も示される。
【0023】図3は、スレーブマイコン11のハードウ
エアの詳細を示すブロック図である。図において、12
はCPU(処理装置、設定部)、13はプログラムカウ
ンタ(PC)、14はフラッシュメモリ(不揮発性メモ
リ)、15はRAM(一時的格納メモリ)、16はバ
ス、17は書込消去用電圧端子(書込消去用電圧供給
部)、18は読み出し用電圧端子、19は制御レジスタ
(設定部)、20はANDゲート回路(書込消去用電圧
供給許容部)、21はスイッチ(書込消去用電圧供給許
容部)を示す。
【0024】スレーブマイコン11はシングルチップの
形態を有しており、その内部にCPU12、フラッシュ
メモリ14、RAM15、バス16およびANDゲート
回路20を備える。書込消去用電圧端子17、読み出し
用電圧端子18およびスイッチ21は、シングルチップ
の外部に周辺機器として設けられている。
【0025】スレーブマイコン11において、CPU1
2、フラッシュメモリ14およびRAM15はバス(デ
ータバス)16で相互に接続されており、CPU12は
バス16を介してフラッシュメモリ14およびRAM1
5へ情報を交換することができる。また、ホストマイコ
ン10とスレーブマイコン11の相互の通信のために、
バス16には、ホストマイコン10と接続された信号線
が接続されている。マルチプロセッサシステムの設計に
よっては、これらの相互の通信を実現するために、ホス
トマイコン10とスレーブマイコン11のそれぞれにイ
ンタフェースを内蔵させてもよい。
【0026】フラッシュメモリ14には、このCPU1
2が実行する各種のプログラムおよび各種のデータが格
納されている。
【0027】RAM15には、各種のプログラムの実行
に必要なデータが一時的に格納される。また、フラッシ
ュメモリ14の消去モードおよび書込モードではフラッ
シュメモリ14からプログラムを読み出すべきではない
ので、フラッシュメモリ14の消去または書込を行うプ
ログラムの実行にはRAM15が使用される。つまり、
実際にフラッシュメモリ14の消去または書込を行う前
に、消去・書込用のサブルーティンプログラム(消去・
書込プログラム)をCPU12はフラッシュメモリ14
から読み出して、RAM15にロードすなわち一時的に
格納する。そして、RAM15上のこのプログラムを参
照しながら、CPU12はフラッシュメモリ14の消去
または書込を行う。
【0028】実行中のプログラムのうちの次に実行すべ
き命令が格納されているアドレスは、CPU12に設け
られたプログラムカウンタ13で示される。従って、C
PU12は次にどの記憶装置(フラッシュメモリ14ま
たはRAM15)のどのアドレスを参照すればよいのか
識別でき、プログラムの実行が円滑化される。
【0029】フラッシュメモリ14には、書込消去用電
圧端子17から書込消去用のハイレベルの電圧Vpp
与えられ、読み出し用電圧端子18からローレベルの電
圧V ccが与えられる。ハイレベルの電圧Vppは、情
報の消去および書込のためにフラッシュメモリ14に必
要とされる。従って、ハイレベルの電圧Vppがフラッ
シュメモリ14に供給されなければ、フラッシュメモリ
14への情報の消去または書込はできない。ローレベル
の電圧Vccは、フラッシュメモリ14からの情報の読
み出しに必要とされる。なお、ここでは電圧Vppがハ
イレベルで、電圧Vccがローレベルと説明するが、電
圧Vppが電圧Vccと同じであってもよい。
【0030】誤動作を防止し必要時にだけ書込消去用の
電圧Vppがフラッシュメモリ14に供給されるよう
に、書込消去用電圧端子17とフラッシュメモリ14と
の間には、スイッチ21が介在させられている。スイッ
チ21は、例えばトランジスタから構成される。
【0031】ANDゲート回路20から高電圧要求信号
(より一般的には書込消去用の電圧要求信号)が供給さ
れる時だけ、スイッチ21は閉じられ、書込消去用の電
圧V ppがフラッシュメモリ14に供給される。AND
ゲート回路20の二つの入力端子には、消去書込要求信
号(EW要求信号)および実行中ステータス信号がそれ
ぞれCPU12から入力されるように構成されている。
【0032】EW要求信号は、フラッシュメモリ14に
ついて情報の消去または書込を必要とすることを示す信
号である。CPU12は、コマンドに応じてCPU12
が実行するサブルーティンプログラムがフラッシュメモ
リ14について情報の消去または書込を必要とするか否
か判断し、この判断が肯定的な場合に、EW要求信号を
生成する。
【0033】具体的には、そのプログラム中にフラッシ
ュメモリ14について情報の消去または書込の要求があ
れば、CPU12は自身の内部の制御レジスタ19の所
定のビット、例えばビット1(図3にてb1で示す)に
数値「1」を書き込む。このレジスタのビットは、AN
Dゲート回路20の一方の入力端子に接続されている。
フラッシュメモリ14上の情報の消去または書込の必要
性がなくなると、CPU12はそのビット、例えばビッ
ト1に数値「0」を書き込む。従って、フラッシュメモ
リ14について情報の消去または書込の要求がある限
り、ビット1には数値「1」が継続的に残っている。制
御レジスタ19のビット1上の数値「1」は一つのフラ
グすなわちEW要求信号としてANDゲート回路20に
利用される。
【0034】他方、実行中ステータス信号は、ホストマ
イコン10からのコマンドに従ってCPU12が後述す
るメインプログラムを実行中であることを示す信号であ
る。従って、CPU12は、メインプログラムを実行す
る前に、実行中ステータス信号を生成する。
【0035】具体的には、メインプログラムを実行する
前に、CPU12は制御レジスタ19の所定のビット、
例えばビット0(図3にてb0で示す)に数値「1」を
書き込む。このレジスタのビットは、ANDゲート回路
20の一方の入力端子に接続されている。メインプログ
ラムの実行の終了の直前に、CPU12はそのビット、
例えばビット0に数値「0」を書き込む。従って、メイ
ンプログラムが実行されている間の大部分で、ビット0
には数値「1」が継続的に残っている。制御レジスタ1
9のビット0上の数値「1」は一つのフラグすなわち実
行中ステータス信号としてANDゲート回路20に利用
される。
【0036】ANDゲート回路20は、EW要求信号お
よび実行中ステータス信号の両方が入力されている時
に、高電圧要求信号(より一般的には書込消去用の電圧
要求信号)をスイッチ21に供給する。換言すれば、制
御レジスタ19のビット1およびビット0の両方に
「1」が存在する場合に、ANDゲート回路20はスイ
ッチ21を閉じる(オンする)。従って、二つの条件が
満たされる場合にのみ、書込消去用電圧端子17からフ
ラッシュメモリ14に書込消去用の電圧Vppが供給さ
れる。
【0037】図3中の制御レジスタ19は、b0〜b7
の8ビットを有するが、制御レジスタ19の二進桁数は
8でなくてもよく、他の適切な数でもよい。また、EW
要求信号および実行中ステータス信号の供給のために使
うビットは、ビット1およびビット0に限らず、他のビ
ットでもよい。また、逆にビット1を実行中ステータス
信号に使用し、ビット0をEW要求信号に使用してもよ
い。
【0038】次に動作について説明する。以下の動作の
説明に関しては、図4に示されたフローチャートを参照
する。図4はこの実施の形態に係るスレーブマイコン1
1のメインプログラムの動作を示す。このメインプログ
ラムは、ホストマイコン10からスレーブマイコン11
のCPU12がコマンドを受信すると開始する。好まし
くは、図4に示されたメインプログラムは、フラッシュ
メモリ14からRAM15にロードされた後、実行され
る。
【0039】まず、ステップST1で、CPU12は制
御レジスタ19のビット0に「1」を書き込む。上記の
ように、ビット0に「1」を書き込むことは、以後、実
行中ステータス信号をANDゲート回路20に継続的に
与えることを意味する。
【0040】次に、ステップST2で、コマンドに従っ
たサブルーティンプログラムの処理をCPU12が開始
する。具体的には、コマンドに応じたサブルーティンプ
ログラムをフラッシュメモリ14から読み出して、プロ
グラムの実行を開始する。さらに、ステップST3で、
CPU12はフラッシュメモリ14上の情報の消去また
は書込の要求があるか否かを判断する。ステップST3
では、上記のサブルーティンプログラムにかかる要求が
含まれているか否かを判断するとよい。
【0041】消去または書込の要求がある場合、すなわ
ちステップST3の判断が肯定的である場合、動作はス
テップST4に進む。ステップST4では、CPU12
はフラッシュメモリ14から消去・書込用のサブルーテ
ィンプログラム(消去・書込プログラム)を読み出し
て、RAM15にロードする。
【0042】この後、ステップST5で、CPU12は
制御レジスタ19のビット1に「1」を書き込む。上記
のように、ビット1に「1」を書き込むことは、以後、
EW要求信号をANDゲート回路20に継続的に与える
ことを意味する。既にステップST1でビット0に
「1」が書き込まれたことによって、実行中ステータス
信号がANDゲート回路20に与えられているので、E
W要求信号および実行中ステータス信号に基づいて、A
NDゲート回路20は高電圧要求信号をスイッチ21に
供給する。これによって、スイッチ21がオンされ、書
込消去用電圧端子17から書込消去用の電圧Vppがフ
ラッシュメモリ14に与えられ、フラッシュメモリ14
上の情報の消去または書込が可能になる。
【0043】次にステップST6で、CPU12はフラ
ッシュメモリ14上の情報の消去および/または書込を
実行する。このステップは、ステップST4でRAM1
5に既にロードされた消去・書込プログラムを実行する
ことによって行う。
【0044】ステップST6の終了後、ステップST7
でCPU12は制御レジスタ19のビット1に「0」を
書き込む。ビット1に「0」を書き込むことは、以後、
フラッシュメモリ14について消去または書込の必要性
がなくなったこと、ひいてはEW要求信号をANDゲー
ト回路20に与えないことを意味する。ビット1への
「0」の書込に応じて、ANDゲート回路20は直ちに
高電圧要求信号のスイッチ21への供給を停止する。こ
れによって、スイッチ21がオフされ、書込消去用の電
圧Vppがフラッシュメモリ14に与えられなくなり、
フラッシュメモリ14上の情報の消去または書込が不可
能になる。
【0045】その後、ステップST8で、CPU12は
コマンドに従ったフラッシュメモリ14上のサブルーテ
ィンプログラムの実行を再開する。既にステップST7
で、書込消去用の電圧Vppがフラッシュメモリ14に
与えられなくなり、フラッシュメモリ14上の情報の誤
消去または誤書込が防止されるので、RAM15を使用
せずにフラッシュメモリ14から直接プログラムを読み
出しても暴走するおそれがない。
【0046】そのサブルーティンプログラムの実行終了
後、ステップST9でCPU12は制御レジスタ19の
ビット0に「0」を書き込む。ビット0に「0」を書き
込むことは、実行中ステータス信号をANDゲート回路
20に与えないことを意味する。このようにして、制御
レジスタ19のビット0およびビット1は初期状態に復
帰する。この後、ステップST10でCPU12がホス
トマイコン10にコマンドに従った処理の完了を示すレ
スポンス信号を送信し、このメインプログラムの動作は
終了する。
【0047】上述したステップST3の判断が否定的な
場合、すなわちフラッシュメモリ14に関して消去また
は書込の要求がない場合、動作はステップST3からス
テップST11に進む。ステップST11では、CPU
12はフラッシュメモリ14から読み出したコマンドに
応じたサブルーティンプログラムの処理を続行する。そ
の終了後、ステップST9でCPU12は制御レジスタ
19のビット0に「0」を書き込み、ステップST10
でCPU12がホストマイコン10にレスポンス信号を
送信し、このメインプログラムの動作が終了する。
【0048】以上のように、この実施の形態1によれ
ば、コマンドに従ったメインプログラムの実行を示す実
行中ステータス信号とEW要求信号の両方が存在すると
きだけに、ANDゲート回路20およびスイッチ21が
書込消去用の電圧Vppをフラッシュメモリ14に供給
できるようにするので、誤動作で消去モードまたは書込
モードになるおそれを極めて低減することが可能であ
る。仮に誤動作で実行中ステータス信号とEW要求信号
のいずれか一方が存在しても、他方が存在しなければ、
フラッシュメモリ14は消去モードまたは書込モードに
はならない。従って、フラッシュメモリ14の情報の誤
消去または誤書込を効率的に低減または防止することが
でき、そこから読み出し中のプログラムの暴走を抑制す
ることができるなどの効果が得られる。
【0049】特に実施の形態1では、高電圧要求信号の
供給がハードウエアたるANDゲート回路20で行われ
るので、プログラムが誤動作した場合にも、消去モード
または書込モードになるおそれが少ない。
【0050】実施の形態2.図5は、この発明の実施の
形態2に係るマイクロコンピュータ、すなわちスレーブ
マイコン11のハードウエアの詳細を示すブロック図で
ある。図において12Aは、CPU(処理装置、設定
部、書込消去用電圧供給許容部)を示す。前述のCPU
12と同様に、このCPU12Aも、フラッシュメモリ
14およびRAM15が配置されているのと同じシング
ルチップのスレーブマイコン11に配置され、プログラ
ムカウンタ13と制御レジスタ19を備える。
【0051】図5に示されるスレーブマイコン11も、
実施の形態1のスレーブマイコンと同様に、ホストマイ
コン10と組み合わせられて使用される(図1および図
2参照)。図5において、図3と共通する構成要素を示
すために同一の符号が使用され、それらの構成要素を詳
細には説明しない。
【0052】この実施の形態では、実施の形態1で使用
されたANDゲート回路20を使用せず、その代わりに
プログラムに従ってCPU12Aが内部の制御レジスタ
19の内容に基づいて、スイッチ21を操作する高電圧
要求信号(より一般的には書込消去用の電圧要求信号)
を生成する。スイッチ21の操作について以下に詳述す
る。
【0053】上述の実施の形態1と同様に、CPU12
Aは、メインプログラムを実行する前に、制御レジスタ
19の所定のビット、例えばビット0(図5にてb0で
示す)に数値「1」を書き込む。メインプログラムの実
行の終了の直前に、CPU12Aはそのビット、例えば
ビット0に数値「0」を書き込む。従って、メインプロ
グラムが実行されている間の大部分で、ビット0には数
値「1」が継続的に残っている。制御レジスタ19のビ
ット0上の数値「1」は、一つのフラグすなわち実行中
ステータス信号であるとみなすことができる。
【0054】また、CPU12Aは、コマンドに応じて
CPU12Aが実行するサブルーティンプログラムがフ
ラッシュメモリ14について情報の消去または書込を必
要とするか否か判断する。この判断が肯定的な場合に、
CPU12Aは自身の内部の制御レジスタ19の所定の
ビット、例えばビット1(図5にてb1で示す)に数値
「1」を書き込む。また、フラッシュメモリ14上の情
報の消去または書込の必要性がなくなると、CPU12
Aはそのビット、例えばビット1に数値「0」を書き込
む。従って、フラッシュメモリ14について情報の消去
または書込の要求がある限り、ビット1には数値「1」
が継続的に残っている。制御レジスタ19のビット1上
の数値「1」は一つのフラグすなわちEW要求信号であ
るとみなすことができる。
【0055】CPU12Aは、制御レジスタ19のビッ
ト1およびビット0上の数値が両方とも「1」である場
合にのみ、高電圧要求信号を生成し、これをスイッチ2
1に供給する。換言すれば、EW要求信号および実行中
ステータス信号の両方が存在する場合に、CPU12A
はスイッチ21を閉じる(オンする)。従って、二つの
条件が満たされる場合にのみ、書込消去用電圧端子17
からフラッシュメモリ14に書込消去用の電圧Vpp
供給される。かかるCPU12Aの動作はメインプログ
ラムに準拠して行われる。つまり、スイッチ21の操作
はソフトウエアによって行われる。
【0056】より簡単な動作を実現するために、制御レ
ジスタ19のビット1(b1)をスイッチ21の起動端
子に接続し、ビット0(b0)上の数値が「1」である
場合にのみ、ビット1に数値「1」を書き込み可能にす
ることもできる。この場合には、ビット0に実行中ステ
ータス信号としての数値「1」が存在しなければ、ビッ
ト1にはEW要求信号としての数値「1」が書き込まれ
ないので、ビット1に数値「1」が書き込まれるという
ことは上述した二つの条件が満たされることを意味す
る。従って、ビット1に入力されたEW要求信号として
の数値「1」が直ちに高電圧要求信号として利用でき
る。後述する図6のメインプログラムはこの方策を採用
する。
【0057】図5中の制御レジスタ19は、b0〜b7
の8ビットを有するが、制御レジスタ19の二進桁数は
8でなくてもよく、他の適切な数でもよい。また、EW
要求信号および実行中ステータス信号のために使うビッ
トは、ビット1およびビット0に限らず、他のビットで
もよい。また、逆にビット1を実行中ステータス信号に
使用し、ビット0をEW要求信号に使用してもよい。
【0058】次に動作について説明する。以下の動作の
説明に関しては、図6に示されたフローチャートを参照
する。図6はこの実施の形態に係るスレーブマイコン1
1のメインプログラムの動作を示す。このメインプログ
ラムは、ホストマイコン10からスレーブマイコン11
のCPU12Aがコマンドを受信すると開始する。好ま
しくは、図6に示されたメインプログラムは、フラッシ
ュメモリ14からRAM15にロードされた後、実行さ
れる。
【0059】まず、ステップST21で、CPU12A
は制御レジスタ19のビット0に実行中ステータス信号
としての「1」を書き込む。
【0060】次に、ステップST22で、コマンドに従
ったサブルーティンプログラムの処理をCPU12Aが
開始する。具体的には、コマンドに応じたサブルーティ
ンプログラムをフラッシュメモリ14から読み出して、
プログラムの実行を開始する。さらに、ステップST2
3で、CPU12Aはフラッシュメモリ14上の情報の
消去または書込の要求があるか否かを判断する。ステッ
プST23では、上記のサブルーティンプログラムにか
かる要求が含まれているか否かを判断するとよい。
【0061】消去または書込の要求がある場合、すなわ
ちステップST23の判断が肯定的である場合、動作は
ステップST24に進む。ステップST24では、CP
U12Aはフラッシュメモリ14から消去・書込用のサ
ブルーティンプログラム(消去・書込プログラム)を読
み出して、RAM15にロードする。
【0062】この後、ステップST25でCPU12A
は制御レジスタ19のビット0に数値「1」が書き込ま
れているか否か確認すなわち判断する。この判断が肯定
的な場合にのみ動作はステップST26に進み、CPU
12Aは制御レジスタ19のビット1にEW要求信号と
しての「1」を書き込む。上記のように、ビット1に書
き込まれた数値「1」は高電圧要求信号として利用され
る。すなわち、ビット1への数値「1」の書込によっ
て、以後、高電圧要求信号がスイッチ21に継続的に与
えられる。これによって、スイッチ21がオンされ、書
込消去用電圧端子17から書込消去用の電圧Vppがフ
ラッシュメモリ14に与えられ、フラッシュメモリ14
上の情報の消去または書込が可能になる。
【0063】次にステップST27で、CPU12Aは
フラッシュメモリ14上の情報の消去および/または書
込を実行する。このステップは、ステップST24でR
AM15に既にロードされた消去・書込プログラムを実
行することによって行う。
【0064】ステップST27の終了後、ステップST
28でCPU12Aは制御レジスタ19のビット1に
「0」を書き込む。ビット1に「0」を書き込むこと
は、以後、フラッシュメモリ14について消去または書
込の必要性がなくなったこと、ひいては高電圧要求信号
をスイッチ21に与えないことを意味する。ビット1へ
の「0」の書込に応じて、スイッチ21がオフされ、書
込消去用の電圧Vppがフラッシュメモリ14に与えら
れなくなり、フラッシュメモリ14上の情報の消去また
は書込が不可能になる。
【0065】その後、ステップST29で、CPU12
Aはコマンドに従ったフラッシュメモリ14上のサブル
ーティンプログラムの実行を再開する。既にステップS
T28で、書込消去用の電圧Vppがフラッシュメモリ
14に与えられなくなり、フラッシュメモリ14上の情
報の誤消去または誤書込が防止されるので、RAM15
を使用せずにフラッシュメモリ14から直接プログラム
を読み出しても暴走するおそれがない。
【0066】そのサブルーティンプログラムの実行終了
後、ステップST30でCPU12Aは制御レジスタ1
9のビット0に「0」を書き込む。ビット0に「0」を
書き込むことは、実行中ステータス信号の消滅を意味す
る。このようにして、制御レジスタ19のビット0およ
びビット1は初期状態に復帰する。この後、ステップS
T31でCPU12Aがホストマイコン10にコマンド
に従った処理の完了を示すレスポンス信号を送信し、こ
のメインプログラムの動作は終了する。
【0067】上述したステップST25の判断が否定的
な場合には、何らかの誤りによって制御レジスタ19の
ビット0に実行中ステータス信号としての「1」が書き
込まれていないことを意味する。この場合には、動作は
ステップST30に進み、事後処理としてCPU12A
は制御レジスタ19のビット0に「0」を書き込み、ス
テップST31でレスポンス信号を送信し、このメイン
プログラムの動作は終了する。この場合のレスポンス信
号は、コマンドの処理が未了であることが示される。
【0068】また、上述したステップST23の判断が
否定的な場合、すなわちフラッシュメモリ14に関して
消去または書込の要求がない場合、動作はステップST
23からステップST32に進む。ステップST32で
は、CPU12Aはフラッシュメモリ14から読み出し
たコマンドに応じたサブルーティンプログラムの処理を
続行する。その終了後、ステップST30でCPU12
Aは制御レジスタ19のビット0に「0」を書き込み、
ステップST31でCPU12Aがホストマイコン10
にレスポンス信号を送信し、このメインプログラムの動
作が終了する。
【0069】以上のように、この実施の形態2によれ
ば、コマンドに従ったメインプログラムの実行を示す実
行中ステータス信号とEW要求信号の両方が存在すると
きだけに、CPU12Aおよびスイッチ21が書込消去
用の電圧Vppをフラッシュメモリ14に供給できるよ
うにするので、誤動作で消去モードまたは書込モードに
なるおそれを極めて低減することが可能である。従っ
て、フラッシュメモリ14の情報の誤消去または誤書込
を効率的に低減または防止することができ、そこから読
み出し中のプログラムの暴走を抑制することができるな
どの効果が得られる。
【0070】実施の形態3.図7は、この発明の実施の
形態3に係るマイクロコンピュータ、すなわちスレーブ
マイコン11のハードウエアの詳細を示すブロック図で
ある。図7において、図3と共通する構成要素を示すた
めに同一の符号が使用され、それらの構成要素を詳細に
は説明しない。
【0071】実施の形態3に係るスレーブマイコン11
は、スイッチ21をシングルチップのスレーブマイコン
11の内部に配置した点で、実施の形態1に係るスレー
ブマイコン11と異なる。このようにスイッチ21をシ
ングルチップのスレーブマイコン11に内蔵したことに
よって、高電圧要求信号(より一般的には書込消去用の
電圧要求信号)をスレーブマイコン11の外部に出力す
る必要がなくなるので、端子数を節約することができ
る。また、高電圧要求信号をスレーブマイコン11の外
部に出力しないので、スレーブマイコン11の動作モー
ドが外部から傍受しにくくなる。
【0072】スレーブマイコン11の動作モードが外部
から傍受されると、フラッシュメモリ14上の情報が書
き換えられるおそれがある。例えば、高電圧がフラッシ
ュメモリ14に与えられている書込状態から、電力供給
を急に遮断すると、フラッシュメモリ14上のデータが
変化する。このような危険性をこの実施の形態では低減
することが可能である。
【0073】以上のように、この実施の形態3によれ
ば、スイッチ21をシングルチップのスレーブマイコン
11に内蔵したことによって、端子数を節約することが
できるとともに、スレーブマイコン11の動作モードが
外部から傍受しにくくなるなどの効果が得られる。
【0074】この実施の形態3は実施の形態1の修正で
あるが、図5に示された実施の形態2を同様に修正して
スレーブマイコン11の内部にスイッチ21を配置して
もよい。
【0075】実施の形態4.図8は、この発明の実施の
形態4に係るマイクロコンピュータ、すなわちスレーブ
マイコン11のハードウエアの詳細を示すブロック図で
ある。図8に示されるスレーブマイコン11も、実施の
形態1のスレーブマイコンと同様に、ホストマイコン1
0と組み合わせられて使用される(図1および図2参
照)。図8において、図3と共通する構成要素を示すた
めに同一の符号が使用され、それらの構成要素を詳細に
は説明しない。
【0076】図3の実施の形態1と異なり、この実施の
形態では、ホストマイコン(第2の設定部)10から供
給された消去書込許可信号(EW許可信号)がANDゲ
ート回路20に入力されるようになっている。また、ス
イッチ21はシングルチップのスレーブマイコン11の
内部に配置されている。
【0077】次に動作について説明する。この実施の形
態では、実施の形態1で使用された実行中ステータス信
号の代わりに、ホストマイコン10からのEW許可信号
が使用される。ホストマイコン10は、スレーブマイコ
ン11にコマンドを送信する時(またはその直前もしく
は直後)にEW許可信号をスレーブマイコン11へ供給
することを開始し、スレーブマイコン11からそのコマ
ンドに応じた処理の終了を示すレスポンス信号が返送さ
れてくるまで(図2参照)、スレーブマイコン11へE
W許可信号を供給し続ける。このようなEW許可信号の
供給は、スレーブマイコン11においてフラッシュメモ
リ14上の情報の消去または書込が必要なコマンドを送
信する場合に限って行ってもよい。
【0078】このEW許可信号は、ANDゲート回路2
0の一方の入力端子に供給される。ANDゲート回路2
0の他方の入力端子はCPU(第1の設定部)12の制
御レジスタ(第1の設定部)19のビット1(b1)に
接続されている。実施の形態1と同様に、制御レジスタ
19のビット1には、EW要求信号としてANDゲート
回路20に利用される数値「1」が書込可能である。但
し、EW要求信号の供給のために使うビットは、ビット
1に限らず、他のビットでもよい。
【0079】ANDゲート回路20は、EW要求信号お
よびEW許可信号の両方が入力されている時に、高電圧
要求信号(より一般的には書込消去用の電圧要求信号)
をスイッチ21に供給する。換言すれば、制御レジスタ
19のビット1に「1」が存在し、かつホストマイコン
10からEW許可信号を受信する場合に、ANDゲート
回路20はスイッチ21を閉じる(オンする)。従っ
て、二つの条件が満たされる場合にのみ、書込消去用電
圧端子17からフラッシュメモリ14に書込消去用の電
圧Vppが供給される。
【0080】この実施の形態でのスレーブマイコン11
のメインプログラムの動作は、実施の形態1に関連して
既述した図4に類似する。但し、実行中ステータス信号
の代わりに、ホストマイコン10からのEW許可信号が
使用されるので、図4中のステップST1およびステッ
プST9は不要である。
【0081】フラッシュメモリ14上の情報の消去また
は書込の要求がある場合には、CPU12は制御レジス
タ19のビット1に「1」を書き込み、EW要求信号を
ANDゲート回路20に継続的に与え、フラッシュメモ
リ14上の情報の消去および/または書込を実行する
(ステップST3〜ステップST6)。ステップST1
0でスレーブマイコン11からレスポンス信号が返送さ
れると、ホストマイコン10はスレーブマイコン11へ
のEW許可信号の供給を停止する。
【0082】以上のように、この実施の形態4によれ
ば、ホストマイコン10からのEW許可信号とスレーブ
マイコン11が生成するEW要求信号の両方が存在する
ときだけに、ANDゲート回路20およびスイッチ21
が書込消去用の電圧Vppをフラッシュメモリ14に供
給できるようにするので、誤動作で消去モードまたは書
込モードになるおそれを極めて低減することが可能であ
る。仮に誤動作でホストマイコン10がEW許可信号を
供給しても、スレーブマイコン11がEW要求信号を生
成しなければ、フラッシュメモリ14は消去モードまた
は書込モードにはならない。逆に誤動作でスレーブマイ
コン11がEW要求信号を生成しても、ホストマイコン
10がEW許可信号を生成しなければ、やはりフラッシ
ュメモリ14は消去モードまたは書込モードにはならな
い。従って、フラッシュメモリ14の情報の誤消去また
は誤書込を効率的に低減または防止することができ、デ
ータの信頼性が保たれる。また、そこから読み出し中の
プログラムの暴走を抑制することができるなどの効果が
得られる。
【0083】また、スイッチ21をシングルチップのス
レーブマイコン11に内蔵したことによって、端子数を
節約することができるとともに、スレーブマイコン11
の動作モードが外部から傍受しにくくなるなどの効果が
得られる。
【0084】図9は、実施の形態4のバリエーションの
スレーブマイコン11を示す。図において、20AはA
NDゲート回路(書込消去用電圧供給許容部)を示す。
このスレーブマイコン11では、三つの入力端子を持つ
ANDゲート回路20Aが設けられている。ANDゲー
ト回路20Aの一つの入力端子には、ホストマイコン1
0からのEW許可信号が供給されうる。ANDゲート回
路20の他の一つの入力端子には、EW要求信号が供給
可能である。ANDゲート回路20の残りの入力端子は
反転入力端子であり、これは接地されている。このた
め、反転入力端子には常にローレベルの電位が与えられ
ているので、他の二つの入力端子の両方に入力が存在す
るときに、ANDゲート回路20Aは高電圧要求信号
(より一般的には書込消去用の電圧要求信号)をスイッ
チ21に供給する。従って、図9のスレーブマイコン1
1は図8の実施の形態4のスレーブマイコン11と同様
に使用される。
【0085】図10は、実施の形態4の他のバリエーシ
ョンのスレーブマイコン11を示す。図において、20
BはANDゲート回路(書込消去用電圧供給許容部)を
示す。このスレーブマイコン11では、三つの入力端子
を持つANDゲート回路20Bが設けられている。AN
Dゲート回路20Bの一つの入力端子は反転入力端子で
あって、ここにはホストマイコン10からの負論理のす
なわち反転したEW許可信号が供給されうる。ANDゲ
ート回路20の他の一つの入力端子には、EW要求信号
が供給可能である。ANDゲート回路20の残りの入力
端子は読み出し用電圧端子18に接続されている。この
ため、その入力端子には常に読み出し用電圧端子18か
ら書込消去用の電位が与えられている。よって、他の二
つの入力端子に、反転したEW許可信号およびEW要求
信号がそれぞれ入力されているときに、ANDゲート回
路20Bは高電圧要求信号(より一般的には書込消去用
の電圧要求信号)をスイッチ21に供給する。従って、
図10のスレーブマイコン11も図8の実施の形態4の
スレーブマイコン11と同様に使用される。
【0086】実施の形態5.次に、この発明の実施の形
態5について説明する。この実施の形態5においても、
図1に示されるようなホストマイコン10とスレーブマ
イコン11とを備えるマルチプロセッサシステムが使用
される。このマルチプロセッサシステムにおいて、スレ
ーブマイコン11のフラッシュメモリ上の情報の消去お
よび書込がホストマイコン10からの指令のみに基づい
て制御される。
【0087】この実施の形態で使用されるスレーブマイ
コン11のハードウエアの詳細は、図3または図7に示
された実施の形態1または実施の形態3に係るものと同
じでよい。但し、EW要求信号および実行中ステータス
信号の生成過程が上述した実施の形態1または実施の形
態3と異なる。
【0088】次に動作について説明する。図11に示さ
れるように、この実施の形態によれば、ホストマイコン
10は高電圧要求コマンド(より一般的には書込消去用
の電圧要求コマンド)をスレーブマイコン11に供給す
ることが可能である。この高電圧要求コマンドは、フラ
ッシュメモリ14上の情報の消去または書込を要するコ
マンドをホストマイコン10がスレーブマイコン11に
送信するのに先だって発行される。そのような消去また
は書込を要しないコマンドをスレーブマイコン11に供
給する場合には、高電圧要求コマンドは発行されない。
【0089】ホストマイコン10から高電圧要求コマン
ドを受信すると、スレーブマイコン11のCPU12
は、実行中ステータス信号を生成する処理を実行する。
具体的には、CPU12は制御レジスタ19の所定のビ
ット、例えばビット0(図3または図7にてb0で示
す)に数値「1」を書き込む。制御レジスタ19のビッ
ト0上の数値「1」は実行中ステータス信号としてAN
Dゲート回路20に利用される。この処理の終了後、図
11に示されるように、CPU12は高電圧レスポンス
信号(より一般的には書込消去用の電圧レスポンス信
号)をホストマイコン10に返送する。高電圧レスポン
ス信号を受信すると、ホストマイコン10は直ちに本来
の目的のコマンドをスレーブマイコン11に送信する。
【0090】高電圧要求コマンドに続いてホストマイコ
ン10から受信したコマンドは、フラッシュメモリ14
上の情報の消去または書込を要するコマンドである。こ
のコマンドを受信すると、CPU12はコマンドに基づ
いた処理を実行し、EW要求信号を生成する。具体的に
は、CPU12は制御レジスタ19の所定のビット、例
えばビット1(図3または図7にてb1で示す)に数値
「1」を書き込む。制御レジスタ19のビット1上の数
値「1」はEW要求信号としてANDゲート回路20に
利用される。
【0091】ANDゲート回路20は、EW要求信号お
よび実行中ステータス信号の両方が入力されている時
に、高電圧要求信号をスイッチ21に供給する。換言す
れば、制御レジスタ19のビット1およびビット0の両
方に「1」が存在する場合に、ANDゲート回路20は
スイッチ21を閉じる(オンする)。従って、二つの条
件が満たされる場合にのみ、書込消去用電圧端子17か
らフラッシュメモリ14に書込消去用の電圧Vppが供
給される。
【0092】このようにして、フラッシュメモリ14上
の情報の消去または書込が可能になる。コマンドに基づ
いた処理の終了後、図11に示されるように、CPU1
2はレスポンス信号をホストマイコン10に返送する。
【0093】次に動作について説明する。以下の動作の
説明に関しては、図12に示されたフローチャートを参
照する。図12はこの実施の形態に係るスレーブマイコ
ン11のメインプログラムの動作を示す。このメインプ
ログラムは、ホストマイコン10からスレーブマイコン
11のCPU12がコマンドを受信すると開始する。好
ましくは、図12に示されたメインプログラムは、フラ
ッシュメモリ14からRAM15にロードされた後、実
行される。
【0094】まず、ステップST41で、ホストマイコ
ン10から受信したコマンドが高電圧要求コマンドであ
るか否かCPU12は判断する。この判断が肯定的な場
合には、動作はステップST42に進み、ここでCPU
12は制御レジスタ19のビット0に「1」を書き込
む。上記のように、ビット0に「1」を書き込むこと
は、以後、実行中ステータス信号をANDゲート回路2
0に継続的に与えることを意味する。
【0095】ビット0への「1」の書込終了後、ステッ
プST43でCPU12はホストマイコン10に高電圧
レスポンス信号を返信する。これにより、ホストマイコ
ン10は本来の目的のコマンド(フラッシュメモリ14
上の情報の消去または書込を要するコマンド)をスレー
ブマイコン11に送信する。ステップST44でスレー
ブマイコン11はホストマイコン10からこのコマンド
を受信する。
【0096】次に、ステップST45で、コマンドに従
ったサブルーティンプログラムの処理をCPU12が開
始する。具体的には、コマンドに応じたサブルーティン
プログラムをフラッシュメモリ14から読み出して、プ
ログラムの実行を開始する。
【0097】ステップST44で受信したコマンドは、
フラッシュメモリ14について消去または書込の要求を
伴う。そこでステップST45の終了後、ステップST
46でCPU12はフラッシュメモリ14から消去・書
込用のサブルーティンプログラム(消去・書込プログラ
ム)を読み出して、RAM15にロードする。
【0098】この後、ステップST47で、CPU12
は制御レジスタ19のビット1に「1」を書き込む。上
記のように、ビット1に「1」を書き込むことは、以
後、EW要求信号をANDゲート回路20に継続的に与
えることを意味する。既にステップST42でビット0
に「1」が書き込まれたことによって、実行中ステータ
ス信号がANDゲート回路20に与えられているので、
EW要求信号および実行中ステータス信号に基づいて、
ANDゲート回路20は高電圧要求信号をスイッチ21
に供給する。これによって、スイッチ21がオンされ、
書込消去用電圧端子17から書込消去用の電圧Vpp
フラッシュメモリ14に与えられ、フラッシュメモリ1
4上の情報の消去または書込が可能になる。
【0099】次にステップST48で、CPU12はフ
ラッシュメモリ14上の情報の消去および/または書込
を実行する。このステップは、ステップST46でRA
M15に既にロードされた消去・書込プログラムを実行
することによって行う。
【0100】ステップST48の終了後、ステップST
49でCPU12は制御レジスタ19のビット1に
「0」を書き込む。ビット1に「0」を書き込むこと
は、以後、フラッシュメモリ14について消去または書
込の必要性がなくなったこと、ひいてはEW要求信号を
ANDゲート回路20に与えないことを意味する。ビッ
ト1への「0」の書込に応じて、ANDゲート回路20
は直ちに高電圧要求信号のスイッチ21への供給を停止
する。これによって、スイッチ21がオフされ、書込消
去用の電圧Vppがフラッシュメモリ14に与えられな
くなり、フラッシュメモリ14上の情報の消去または書
込が不可能になる。
【0101】その後、ステップST50で、CPU12
はコマンドに従ったフラッシュメモリ14上のサブルー
ティンプログラムの実行を再開する。既にステップST
49で、書込消去用の電圧Vppがフラッシュメモリ1
4に与えられなくなり、フラッシュメモリ14上の情報
の誤消去または誤書込が防止されるので、RAM15を
使用せずにフラッシュメモリ14から直接プログラムを
読み出しても暴走するおそれがない。
【0102】そのサブルーティンプログラムの実行終了
後、ステップST51でCPU12は制御レジスタ19
のビット0に「0」を書き込む。ビット0に「0」を書
き込むことは、実行中ステータス信号をANDゲート回
路20に与えないことを意味する。このようにして、制
御レジスタ19のビット0およびビット1は初期状態に
復帰する。この後、ステップST52でCPU12がホ
ストマイコン10にコマンドに従った処理の完了を示す
レスポンス信号を送信し、このメインプログラムの動作
は終了する。
【0103】上述したステップST41の判断が否定的
な場合は、ホストマイコン10から受信したコマンドが
高電圧要求コマンドでなく、しかもフラッシュメモリ1
4について消去または書込の要求を伴わないということ
である。この場合、動作はステップST41からステッ
プST53に進む。ステップST53では、CPU12
はフラッシュメモリ14から読み出したコマンドに応じ
たサブルーティンプログラムの処理を実行する。その終
了後、ステップST52でCPU12がホストマイコン
10にレスポンス信号を送信し、このメインプログラム
の動作が終了する。
【0104】以上のように、この実施の形態5によれ
ば、高電圧要求コマンドを受信したことを示す実行中ス
テータス信号と、その後受信したコマンドがフラッシュ
メモリ14について消去または書込の要求を伴うことを
示すEW要求信号の両方が存在するときだけに、AND
ゲート回路20およびスイッチ21が書込消去用の電圧
ppをフラッシュメモリ14に供給できるようにする
ので、誤動作で消去モードまたは書込モードになるおそ
れを極めて低減することが可能である。仮にホストマイ
コン10が誤動作しても、上記の二つのコマンドをスレ
ーブマイコン11に供給しなければ、実行中ステータス
信号とEW要求信号の両方が存在するということがない
ので、フラッシュメモリ14は消去モードまたは書込モ
ードにはならない。従って、フラッシュメモリ14の情
報の誤消去または誤書込を効率的に低減または防止する
ことができ、そこから読み出し中のプログラムの暴走を
抑制することができるなどの効果が得られる。
【0105】上述のように、この実施の形態のスレーブ
マイコン11は図3または図7に示された実施の形態1
および実施の形態3に係るもののいずれと同じでもよ
い。ただし、図7に示されるように、スイッチ21をシ
ングルチップのスレーブマイコン11に内蔵すれば、端
子数を節約することができるとともに、スレーブマイコ
ン11の動作モードが外部から傍受しにくくなるなどの
効果が得られる。
【0106】実施の形態6.図13は、この発明の実施
の形態6に係るマイクロコンピュータ、すなわちスレー
ブマイコン11のハードウエアの詳細を示すブロック図
である。図において、22は許可信号生成回路(第2の
設定部)、23はアドレスバスを示す。図13に示され
るスレーブマイコン11も、実施の形態1のスレーブマ
イコンと同様に、ホストマイコン10と組み合わせられ
て使用される(図1および図2参照)。図13におい
て、図3と共通する構成要素を示すために同一の符号が
使用され、それらの構成要素を詳細には説明しない。
【0107】この実施の形態のスレーブマイコン11は
シングルチップの形態を有しており、CPU(第1の設
定部)12から独立した許可信号生成回路22およびア
ドレスバス23をシングルチップの内部に備える。許可
信号生成回路22は、CPU12から直接的には制御さ
れず、CPU12が生成する信号に基づいて間接的に動
作する。許可信号生成回路22は、例えばCPU12と
は別個のCPU(図示せず)を備えており、入力される
信号に応じてANDゲート回路20に消去書込許可信号
(EW許可信号)を選択的に供給する。
【0108】次に動作について説明する。上述の実施の
形態1と同様に、CPU12は、フラッシュメモリ14
について情報の消去または書込を必要とする場合に、E
W要求信号を生成する。例えば、CPU12は自身の内
部の制御レジスタ(第1の設定部)19の所定のビッ
ト、例えばビット1(b1)に数値「1」を書き込めば
よい。このレジスタのビットは、ANDゲート回路20
の一方の入力端子に接続されているだけでなく、許可信
号生成回路22にも接続されている。従って、許可信号
生成回路22は、EW要求信号の有無を監視することが
できる。
【0109】許可信号生成回路22は、CPU12に接
続されたアドレスバス23に接続されている。従って、
CPU12がアクセスするリソース(例えばフラッシュ
メモリ14およびRAM15)に関するアドレス情報を
許可信号生成回路22はアドレスバス23によって監視
することができる。
【0110】CPU12は、EW要求信号を生成すると
きには、消去・書込プログラムをロードするためにアク
セス対象としてRAM15を指定する。従って、このと
きには、CPU12はRAM15上のアドレスを指定し
たアドレス情報をアドレスバス23に送出する。すなわ
ち、EW要求信号が存在する場合には、RAM15上の
アドレスを指定したアドレス情報がアドレスバス23を
経て許可信号生成回路22に受信されるのが正常であ
る。許可信号生成回路22は、EW要求信号が存在し、
なおかつRAM15上のアドレスを指定したアドレス情
報を受信した場合に、EW許可信号を生成し、これをA
NDゲート回路20に供給する。許可信号生成回路22
は、RAM15上のアドレスに関するアドレス情報を記
憶する図示しない記憶装置を備えており、アドレスバス
23上のアドレス情報がRAM15上のアドレスに関す
るか否かを判断することができる。
【0111】ANDゲート回路20は、EW要求信号お
よびEW許可信号の両方が入力されている時に、高電圧
要求信号(より一般的には書込消去用の電圧要求信号)
をスイッチ21に供給する。換言すれば、制御レジスタ
19のビット1に「1」が存在し、CPU12がフラッ
シュメモリ14上の情報の消去または書込にふさわしい
アドレス情報を指定している場合に、ANDゲート回路
20はスイッチ21を閉じる(オンする)。従って、二
つの条件が満たされる場合にのみ、書込消去用電圧端子
17からフラッシュメモリ14に書込消去用の電圧V
ppが供給される。つまり、CPU12がアクセスする
リソースを指定したアドレス情報によってCPU12の
動作の正常性を許可信号生成回路22が確認する。
【0112】上記の動作の目的にかんがみると、AND
ゲート回路20を設けることは冗長的である。従って、
ANDゲート回路20を排除してもよい。このような修
正的な形態では、許可信号生成回路22からのEW許可
信号を高電圧要求信号として利用し、EW許可信号がス
イッチ21に供給されたらスイッチ21を閉じる(オン
する)ようにすればよい。
【0113】実施の形態6でのスレーブマイコン11の
CPU12のメインプログラムの動作は、実施の形態1
に関連して既述した図4に類似する。但し、実行中ステ
ータス信号の代わりに、アドレス情報が使用されるの
で、図4中のステップST1およびステップST9は不
要である。また、上記の説明から明らかなように、ステ
ップST4で消去・書込プログラムをRAM15にロー
ドする直前または直後に、CPU12はRAM15上の
アドレスを指定したアドレス情報をアドレスバス23に
送出する。ステップST5で制御レジスタ19のビット
1に数値「1」を書き込むことで、許可信号生成回路2
2がEW許可信号を出力するので、フラッシュメモリ1
4上の情報の消去および/または書込が可能になる。
【0114】以上のように、この実施の形態6によれ
ば、CPU12とは独立して動作するハードウエアであ
る許可信号生成回路22によって、CPU12の動作が
正常である場合に書込消去用の電圧Vppをフラッシュ
メモリ14に供給できるようにするので、誤動作で消去
モードまたは書込モードになるおそれを極めて低減する
ことが可能である。仮にCPU12の誤動作でRAM1
5を指定したアドレス情報とEW要求信号のいずれか一
方が存在しても、他方が存在しなければ、フラッシュメ
モリ14は消去モードまたは書込モードにはならない。
従って、フラッシュメモリ14の情報の誤消去または誤
書込を効率的に低減または防止することができ、そこか
ら読み出し中のプログラムの暴走を抑制することができ
るなどの効果が得られる。
【0115】この実施の形態6では、CPU12がアク
セスするリソースを指定したアドレス情報によってCP
U12の動作の正常性を確認するが、他の方式でCPU
12の動作の正常性を確認することも可能である。例え
ば、許可信号生成回路22は、アドレスバス23上のア
ドレス情報でなく、バス(データバス)16上のデータ
を監視し、CPU12が実行する個々のインストラクシ
ョン(上述したサブルーティンプログラム)の順番が正
常であるか否かを判断し、順番が正常である場合にEW
許可信号を出力するようにしてもよい。CPU12の動
作の実行の前に、CPU12またはホストマイコン10
からインストラクションの順番を許可信号生成回路22
に通知し、この順番を許可信号生成回路22が記憶する
ようにすれば、このような方式でCPU12の動作の正
常性を確認することが可能である。
【0116】インストラクションの順番は、消去または
書込の要求がCPU12で検知された後に、許可信号生
成回路22が確認するようにしてもよい。但し、これに
限らず、消去または書込の要求がCPU12で検知され
る前のインストラクションの流れを許可信号生成回路2
2が照合するのでもよい。この場合には、さらにスレー
ブマイコン11の動作の安全性が向上する。
【0117】他の形態として、CPU12の動作の正常
性を確認するために、ホストマイコン10との情報交換
のためのスレーブマイコン11内のインタフェースで交
換される情報を監視してもよい。例えば、ホストマイコ
ン10からスレーブマイコン11に送信されるコマンド
と、スレーブマイコン11からホストマイコン10へ送
信されるレスポンス信号との整合性が正常であるか否か
許可信号生成回路22が判断し、整合性が正常である場
合にEW許可信号を出力するとよい。
【0118】実施の形態7.図14は、この発明の実施
の形態7に係るマイクロコンピュータ、すなわちスレー
ブマイコン11のハードウエアの詳細を示すブロック図
である。図において、24は電圧検出部(電圧計測
部)、25はアナログ/デジタル変換器(A/D変換
器)を示す。図14に示されるスレーブマイコン11
も、実施の形態1のスレーブマイコンと同様に、ホスト
マイコン10と組み合わせられて使用される(図1およ
び図2参照)。図14において、図3と共通する構成要
素を示すために同一の符号が使用され、それらの構成要
素を詳細には説明しない。
【0119】この実施の形態のスレーブマイコン11は
シングルチップの形態を有しており、シングルチップの
内部に電圧検出部24およびA/D変換器25を備え
る。電圧検出部24は、スイッチ21がオンされてフラ
ッシュメモリ14に書込消去用電圧端子17から書込消
去用の電圧Vppが供給されるときに、この電圧のレベ
ルを計測する。A/D変換器25は、電圧検出部24の
アナログの電圧読取り値をデジタル値に変換する。デジ
タルの電圧読取り値はCPU12に供給される。
【0120】CPU12はA/D変換器25から供給さ
れたデジタルの電圧読取り値に基づいて、供給された書
込消去用の電圧が正常範囲にあるか否かを判断する。こ
の判断が肯定的である場合には、CPU12は正常電圧
信号を生成する。
【0121】具体的には、正常電圧である場合には、C
PU12は内部の制御レジスタ19の所定のビット、例
えばビット0(b0)に数値「1」を書き込むか、既に
「1」が書き込まれていればそのまま残す。このレジス
タのビットは、ANDゲート回路20の一方の入力端子
に接続されている。書込消去用の電圧が異常である場合
には、CPU12はそのビットに数値「0」を書き込
む。従って、書込消去用電圧端子17から供給される書
込消去用の電圧Vppが正常範囲にある限り、ビット0
には数値「1」が継続的に残っている。制御レジスタ1
9のビット0上の数値「1」は一つのフラグすなわち正
常電圧信号としてANDゲート回路20に利用される。
【0122】また、上述の実施の形態1と同様に、CP
U12は、フラッシュメモリ14について情報の消去ま
たは書込を必要とする場合に、EW要求信号を生成す
る。例えば、CPU12は自身の内部の制御レジスタ1
9の所定のビット、例えばビット1(b1)に数値
「1」を書き込めばよい。
【0123】ANDゲート回路20は、EW要求信号お
よび正常電圧信号の両方が入力されている時に、高電圧
要求信号(より一般的には書込消去用の電圧要求信号)
をスイッチ21に供給する。換言すれば、制御レジスタ
19のビット1およびビット0の両方に「1」が存在す
る場合に、ANDゲート回路20はスイッチ21を閉じ
る(オンする)。従って、二つの条件が満たされる場合
にのみ、書込消去用電圧端子17からフラッシュメモリ
14に書込消去用の電圧Vppが供給される。
【0124】但し、スイッチ21が閉じない限り、電圧
検出部24による電圧計測は不可能なので、CPU12
は制御レジスタ19のビット1にEW要求信号としての
数値「1」を書き込むときには、ビット0にも正常電圧
信号としての数値「1」を書き込む。従って、このスレ
ーブマイコン11では、スイッチ21が閉じて電圧計測
が可能になった後に、書込消去用の電圧Vppが異常に
なった場合に、書込消去用の電圧Vppの供給が停止さ
れる。
【0125】スイッチ21は、スレーブマイコン11の
外部に配置してもよいが、図示のようにシングルチップ
のスレーブマイコン11に内蔵させるのが好ましい。こ
の構造によれば、端子数を節約することができるととも
に、スレーブマイコン11の動作モードが外部から傍受
しにくくなる。
【0126】次に動作について説明する。以下の動作の
説明に関しては、図15に示されたフローチャートを参
照する。図15はこの実施の形態に係るスレーブマイコ
ン11のメインプログラムの動作を示す。このメインプ
ログラムは、ホストマイコン10からスレーブマイコン
11のCPU12がコマンドを受信すると開始する。好
ましくは、図15に示されたメインプログラムは、フラ
ッシュメモリ14からRAM15にロードされた後、実
行される。
【0127】まず、ステップST61で、コマンドに従
ったサブルーティンプログラムの処理をCPU12が開
始する。具体的には、コマンドに応じたサブルーティン
プログラムをフラッシュメモリ14から読み出して、プ
ログラムの実行を開始する。
【0128】次に、ステップST62で、CPU12は
フラッシュメモリ14上の情報の消去または書込の要求
があるか否かを判断する。ステップST62では、上記
のサブルーティンプログラムにかかる要求が含まれてい
るか否かを判断するとよい。
【0129】消去または書込の要求がある場合、すなわ
ちステップST62の判断が肯定的である場合、動作は
ステップST63に進む。ステップST63では、CP
U12はフラッシュメモリ14から消去・書込用のサブ
ルーティンプログラム(消去・書込プログラム)を読み
出して、RAM15にロードする。
【0130】その後、ステップST64でCPU12は
制御レジスタ19のビット0に「1」を書き込む。上記
のように、ビット0に「1」を書き込むことは、以後、
正常電圧信号をANDゲート回路20に継続的に与える
ことを意味する。
【0131】この後、ステップST65で、CPU12
は制御レジスタ19のビット1に「1」を書き込む。上
記のように、ビット1に「1」を書き込むことは、以
後、EW要求信号をANDゲート回路20に継続的に与
えることを意味する。既にステップST64でビット0
に「1」が書き込まれたことによって、正常電圧信号が
ANDゲート回路20に与えられているので、EW要求
信号および正常電圧信号に基づいて、ANDゲート回路
20は高電圧要求信号をスイッチ21に供給する。これ
によって、スイッチ21がオンされ、書込消去用電圧端
子17から書込消去用の電圧Vppがフラッシュメモリ
14に与えられ、フラッシュメモリ14上の情報の消去
または書込が可能になる。
【0132】次にステップST66で、CPU12は電
圧検出部24およびA/D変換器25から供給され、書
込消去用の電圧Vppに対応するデジタルの電圧読取り
値をサンプリングする。さらに、ステップST67で、
CPU12はサンプリングした書込消去用の電圧Vpp
が正常範囲にあるか否か判断する。
【0133】書込消去用の電圧Vppが正常であれば、
ステップST68で、CPU12はフラッシュメモリ1
4上の情報の消去および/または書込を実行する。この
ステップは、ステップST63でRAM15に既にロー
ドされた消去・書込プログラムを実行することによって
行う。
【0134】ステップST68の終了後、ステップST
69で、CPU12は再び書込消去用の電圧Vppに対
応するデジタルの電圧読取り値をサンプリングする。さ
らに、ステップST70で、CPU12はサンプリング
した書込消去用の電圧Vppが正常範囲にあるか否か判
断する。
【0135】ステップST70の判断が肯定的であれ
ば、ステップST71で、CPU12はCPU12は制
御レジスタ19のビット0およびビット1の各々に
「0」を書き込む。このようにして、制御レジスタ19
のビット0およびビット1は初期状態に復帰する。ビッ
ト0に「0」を書き込むことは、正常電圧信号をAND
ゲート回路20に与えないことを意味する。ビット1に
「0」を書き込むことは、以後、フラッシュメモリ14
について消去または書込の必要性がなくなったこと、ひ
いてはEW要求信号をANDゲート回路20に与えない
ことを意味する。ビット0およびビット1への「0」の
書込に応じて、ANDゲート回路20は直ちに高電圧要
求信号のスイッチ21への供給を停止する。これによっ
て、スイッチ21がオフされ、書込消去用の電圧Vpp
がフラッシュメモリ14に与えられなくなり、フラッシ
ュメモリ14上の情報の消去または書込が不可能にな
る。
【0136】その後、ステップST72で、CPU12
はコマンドに従ったフラッシュメモリ14上のサブルー
ティンプログラムの実行を再開する。既にステップST
71で、書込消去用の電圧Vppがフラッシュメモリ1
4に与えられなくなり、フラッシュメモリ14上の情報
の誤消去または誤書込が防止されるので、RAM15を
使用せずにフラッシュメモリ14から直接プログラムを
読み出しても暴走するおそれがない。
【0137】そのサブルーティンプログラムの実行終了
後、ステップST73でCPU12がホストマイコン1
0にコマンドに従った処理の完了を示すレスポンス信号
を送信し、このメインプログラムの動作は終了する。
【0138】他方、消去および/または書込の直前また
は直後において、書込消去用の電圧Vppが異常であっ
た場合には、ステップST67またはステップST70
の判断結果が否定的になる。この場合には、動作はステ
ップST74に進む。ステップST74では、CPU1
2は制御レジスタ19のビット0およびビット1の各々
に「0」を書き込む。このようにして、制御レジスタ1
9のビット0およびビット1は初期状態に復帰する。ビ
ット0およびビット1への「0」の書込に応じて、AN
Dゲート回路20は直ちに高電圧要求信号のスイッチ2
1への供給を停止する。これによって、フラッシュメモ
リ14上の情報の消去または書込が不可能になる。
【0139】この後、ステップST75で異常処理をC
PU12が実行する。異常処理では、ホストマイコン1
0に異常事態の発生を通知する情報を生成する。そし
て、ステップST73でCPU12がホストマイコン1
0にレスポンス信号を送信し、このメインプログラムの
動作が終了する。レスポンス信号には、異常事態の発生
を通知する情報が含まれ、これによって異常事態の発生
がホストマイコン10で認識される。
【0140】ステップST67の判断結果が否定的な場
合には、フラッシュメモリ14についての情報の消去お
よび/または書込は全く行われない。従って、異常電圧
の下でのフラッシュメモリ14上の情報の更新が予防さ
れる。フラッシュメモリ14に供給される電圧が異常な
ときに、フラッシュメモリ14上の情報を更新しようと
すると異常な情報がフラッシュメモリ14上に書き込ま
れるおそれがある。しかし、異常電圧の下での情報の更
新を予防することで、そのような不具合が防止される。
【0141】ステップST70の判断結果が否定的な場
合には、フラッシュメモリ14についての情報の消去お
よび/または書込は完了している。かかる情報の更新
は、正常な書込消去用の電圧Vppの下で行われたのか
もしれないが、そうでない可能性もある。ステップST
75の異常処理で生成された異常事態の発生を通知する
情報をホストマイコン10が受け取ることによって、こ
のシステムの運用者はフラッシュメモリ14上に異常な
情報が書き込まれた潜在的可能性を察知するであろう。
従って、運用者は適切な措置を採ることが可能である。
【0142】さらに、上述したステップST62の判断
が否定的な場合、すなわちフラッシュメモリ14に関し
て消去または書込の要求がない場合、動作はステップS
T62からステップST76に進む。ステップST76
では、CPU12はフラッシュメモリ14から読み出し
たコマンドに応じたサブルーティンプログラムの処理を
続行する。その終了後、ステップST73でCPU12
がホストマイコン10にレスポンス信号を送信し、この
メインプログラムの動作が終了する。
【0143】以上のように、この実施の形態7によれ
ば、フラッシュメモリ14に供給される書込消去用の電
圧Vppが正常で、なおかつEW要求信号が存在すると
きだけに、ANDゲート回路20およびスイッチ21が
書込消去用の電圧Vppをフラッシュメモリ14に供給
できるようにするので、誤動作で消去モードまたは書込
モードになるおそれを極めて低減することが可能であ
る。従って、フラッシュメモリ14の情報の誤消去また
は誤書込を効率的に低減または防止することができ、そ
こから読み出し中のプログラムの暴走を抑制することが
できるなどの効果が得られる。また、異常電圧の下での
消去または書込が防止されるので、フラッシュメモリ1
4上の予期しない異常な情報の書込などが防止される。
【0144】実施の形態8.図16は、この発明の実施
の形態8に係るマイクロコンピュータ、すなわちスレー
ブマイコン11のハードウエアの詳細を示すブロック図
である。図において、20Cは四つの入力端子を持つA
NDゲート回路(書込消去用電圧供給許容部)を示す。
図16に示されるスレーブマイコン11も、実施の形態
1のスレーブマイコンと同様に、ホストマイコン10と
組み合わせられて使用される(図1および図2参照)。
【0145】この実施の形態に係るスレーブマイコン1
1は、図3に示された実施の形態1の特徴と、図8に示
された実施の形態4の特徴と、図14に示された実施の
形態7の特徴を併有する。図16において、これらの図
と共通する構成要素を示すために同一の符号が使用さ
れ、それらの構成要素を詳細には説明しない。
【0146】ANDゲート回路20Cの四つの入力端子
の一つは、CPU(第1の設定部、第3の設定部)12
の内部の制御レジスタ(第1の設定部、第3の設定部)
19のビット2(b2)に接続され、この入力端子には
実行中ステータス信号が入力可能である。ANDゲート
回路20Cの他の一つの入力端子は、制御レジスタ19
のビット1(b1)に接続され、この入力端子にはEW
要求信号が入力可能である。ANDゲート回路20Cの
さらに他の一つの入力端子は、制御レジスタ19のビッ
ト0(b0)に接続され、この入力端子には正常電圧信
号が入力可能である。ANDゲート回路20Cの残りの
入力端子は、バス16に接続され、この入力端子にはホ
ストマイコン(第2の設定部)10からのEW許可信号
が入力可能である。
【0147】ANDゲート回路20Cに入力されうるこ
れらの信号の生成および供給の方式は、実施の形態1,
4および7に関連して既述したのと同様である。但し、
制御レジスタ19においては、ANDゲート回路20C
に入力される三種類のフラグ、すなわち実行中ステータ
ス信号、EW要求信号および正常電圧信号のために三つ
のビット(b0〜b2)が使われる。
【0148】スイッチ21は、スレーブマイコン11の
外部に配置してもよいが、図示のようにシングルチップ
のスレーブマイコン11に内蔵させるのが好ましい。こ
の構造によれば、端子数を節約することができるととも
に、スレーブマイコン11の動作モードが外部から傍受
しにくくなる。
【0149】次に動作について説明する。図17は、こ
の実施の形態に係るスレーブマイコン11のCPU12
のメインプログラムの動作を示すフローチャートであ
る。このプログラムは、図15に示された実施の形態7
に係るメインプログラムに、ステップST80とステッ
プST81を加えたものである。
【0150】このメインプログラムは、ホストマイコン
10からスレーブマイコン11のCPU12がコマンド
を受信すると開始する。好ましくは、図17に示された
メインプログラムは、フラッシュメモリ14からRAM
15にロードされた後、実行される。
【0151】まず、ステップST80で、CPU12は
制御レジスタ19のビット2(b2)に数値「1」を書
き込む。ビット2に「1」を書き込むことは、以後、実
行中ステータス信号をANDゲート回路20に継続的に
与えることを意味する。ステップST80の後は、図1
5に関する動作と同様の動作を行い、ステップST73
の前にステップST81でCPU12は制御レジスタ1
9のビット2(b2)に数値「0」を書き込んで初期状
態に復帰させる。
【0152】この実施の形態では、ANDゲート回路2
0Cは、制御レジスタ19からの実行中ステータス信号
(制御レジスタ19のビット2)、EW要求信号(ビッ
ト1)および正常電圧信号(ビット0)ならびにホスト
マイコン10からのEW許可信号の全てが入力されると
きに、スイッチ21を閉じて書込消去用電圧端子17か
らの書込消去用の電圧Vppをフラッシュメモリ14に
供給させる。従って、四つの条件を満たさなければ、フ
ラッシュメモリ14上の情報の消去または書込は不可能
である。
【0153】ホストマイコン10は、スレーブマイコン
11にコマンドを送信する時(またはその直前もしくは
直後)にEW許可信号をスレーブマイコン11へ供給す
ることを開始する。ステップST73でレスポンス信号
がCPU12から送信されると、ホストマイコン10は
EW許可信号の供給を停止する。
【0154】予測しない時に、ホストマイコン10から
のEW許可信号の供給が停止した場合には、このメイン
プログラムとは無関係にANDゲート回路20Cはスイ
ッチ21を開いてしまい、書込消去用の電圧Vppのフ
ラッシュメモリ14への供給を停止する。しかし、その
場合には、ステップST67またはステップST70
で、電圧が異常であると判断されるから、ホストマイコ
ン10にはステップST73で送信されるレスポンス信
号により異常事態が通知される。
【0155】以上のように、この実施の形態8によれ
ば、四つの条件を満たさなければ、フラッシュメモリ1
4上の情報の消去または書込は不可能である。このた
め、フラッシュメモリ14の情報の誤消去または誤書込
をさらに高い信頼性の下で低減または防止することがで
きるなどの効果が得られる。
【0156】実施の形態9.図18は、この発明の実施
の形態9に係るマイクロコンピュータ、すなわちスレー
ブマイコン11のハードウエアの詳細を示すブロック図
である。図18に示されるスレーブマイコン11も、実
施の形態1のスレーブマイコンと同様に、ホストマイコ
ン10と組み合わせられて使用される(図1および図2
参照)。図18において、図3と共通する構成要素を示
すために同一の符号が使用され、それらの構成要素を詳
細には説明しない。
【0157】上述の通り、フラッシュメモリ14の消去
または書込を行うプログラムの実行中は、プログラムの
暴走を防止するためフラッシュメモリ14からそのプロ
グラムを読み出すべきではないので、RAM15が使用
される。この実施の形態9においては、プログラムがR
AM15から読み出される状態であることをCPU12
が確認し、その状態である場合に、CPU12自身がE
W許可信号を生成する。
【0158】具体的には、CPU12は内部のプログラ
ムカウンタ13を参照し、プログラムカウンタ13がR
AM15上のアドレスを指定しているか否か判断する。
上述の通り、実行中のプログラムのうちの次に実行すべ
き命令が格納されているアドレスは、プログラムカウン
タ13で示される。プログラムカウンタ13がRAM1
5上のアドレスを指定していれば、制御レジスタ19の
所定のビット、例えばビット0(b0)に数値「1」を
書き込む。このレジスタのビットは、ANDゲート回路
20の一方の入力端子に接続されている。そして、消去
・書込プログラムの終了後に、CPU12はビット0に
数値「0」を書き込む。制御レジスタ19のビット0上
の数値「1」は一つのフラグすなわちEW許可信号とし
てANDゲート回路20に利用される。
【0159】また、上述の実施の形態1と同様に、CP
U12は、フラッシュメモリ14について情報の消去ま
たは書込を必要とする場合に、EW要求信号を生成す
る。例えば、CPU12は自身の内部の制御レジスタ1
9の所定のビット、例えばビット1(b1)に数値
「1」を書き込めばよい。
【0160】ANDゲート回路20は、EW要求信号お
よびEW許可信号の両方が入力されている時に、高電圧
要求信号(より一般的には書込消去用の電圧要求信号)
をスイッチ21に供給する。換言すれば、制御レジスタ
19のビット1およびビット0の両方に「1」が存在す
る場合に、ANDゲート回路20はスイッチ21を閉じ
る(オンする)。従って、二つの条件が満たされる場合
にのみ、書込消去用電圧端子17からフラッシュメモリ
14に書込消去用の電圧Vppが供給される。
【0161】次に動作について説明する。以下の動作の
説明に関しては、図19に示されたフローチャートを参
照する。図19はこの実施の形態に係るスレーブマイコ
ン11のメインプログラムの動作を示す。このメインプ
ログラムは、ホストマイコン10からスレーブマイコン
11のCPU12がコマンドを受信すると開始する。好
ましくは、図19に示されたメインプログラムは、フラ
ッシュメモリ14からRAM15にロードされた後、実
行される。
【0162】まず、ステップST91で、コマンドに従
ったサブルーティンプログラムの処理をCPU12が開
始する。具体的には、コマンドに応じたサブルーティン
プログラムをフラッシュメモリ14から読み出して、プ
ログラムの実行を開始する。
【0163】次に、ステップST92で、CPU12は
フラッシュメモリ14上の情報の消去または書込の要求
があるか否かを判断する。ステップST92では、上記
のサブルーティンプログラムにかかる要求が含まれてい
るか否かを判断するとよい。
【0164】消去または書込の要求がある場合、すなわ
ちステップST92の判断が肯定的である場合、動作は
ステップST93に進む。ステップST93では、CP
U12はフラッシュメモリ14から消去・書込用のサブ
ルーティンプログラム(消去・書込プログラム)を読み
出して、RAM15にロードする。
【0165】その後、ステップST94でCPU12は
制御レジスタ19のビット1に「1」を書き込む。上記
のように、ビット1に「1」を書き込むことは、以後、
EW要求信号をANDゲート回路20に継続的に与える
ことを意味する。
【0166】次にステップST95で、CPU12はプ
ログラムカウンタ(PC)13を参照し、プログラムカ
ウンタ13がRAM15上のアドレスを指定しているか
否か判断する。
【0167】プログラムカウンタ13がRAM15上の
アドレスを指定していれば、ステップST95の判断は
肯定的になり、ステップST96で、CPU12は制御
レジスタ19のビット0に「1」を書き込む。上記のよ
うに、ビット0に「1」を書き込むことは、以後、EW
許可信号をANDゲート回路20に継続的に与えること
を意味する。既にステップST94でビット1に「1」
が書き込まれたことによって、EW要求信号がANDゲ
ート回路20に与えられているので、EW要求信号およ
びEW許可信号に基づいて、ANDゲート回路20は高
電圧要求信号をスイッチ21に供給する。これによっ
て、スイッチ21がオンされ、書込消去用電圧端子17
から書込消去用の電圧Vppがフラッシュメモリ14に
与えられ、フラッシュメモリ14上の情報の消去または
書込が可能になる。
【0168】次に、ステップST97で、CPU12は
フラッシュメモリ14上の情報の消去および/または書
込を実行する。このステップは、ステップST93でR
AM15に既にロードされた消去・書込プログラムを実
行することによって行う。
【0169】ステップST97の終了後、ステップST
98で、CPU12は制御レジスタ19のビット0およ
びビット1の各々に「0」を書き込む。このようにし
て、制御レジスタ19のビット0およびビット1は初期
状態に復帰する。ビット0に「0」を書き込むことは、
EW許可信号をANDゲート回路20に与えないことを
意味する。ビット1に「0」を書き込むことは、以後、
フラッシュメモリ14について消去または書込の必要性
がなくなったこと、ひいてはEW要求信号をANDゲー
ト回路20に与えないことを意味する。ビット0および
ビット1への「0」の書込に応じて、ANDゲート回路
20は直ちに高電圧要求信号のスイッチ21への供給を
停止する。これによって、スイッチ21がオフされ、書
込消去用の電圧Vppがフラッシュメモリ14に与えら
れなくなり、フラッシュメモリ14上の情報の消去また
は書込が不可能になる。
【0170】その後、ステップST99で、CPU12
はコマンドに従ったフラッシュメモリ14上のサブルー
ティンプログラムの実行を再開する。既にステップST
98で、書込消去用の電圧Vppがフラッシュメモリ1
4に与えられなくなり、フラッシュメモリ14上の情報
の誤消去または誤書込が防止されるので、RAM15を
使用せずにフラッシュメモリ14から直接プログラムを
読み出しても暴走するおそれがない。
【0171】そのサブルーティンプログラムの実行終了
後、ステップST100でCPU12がホストマイコン
10にコマンドに従った処理の完了を示すレスポンス信
号を送信し、このメインプログラムの動作は終了する。
【0172】他方、消去および/または書込の前におい
て、プログラムカウンタ13がRAM15上のアドレス
を指定していない場合には、ステップST95の判断結
果が否定的になる。この場合には、動作はステップST
101に進む。ステップST101では、CPU12は
制御レジスタ19のビット0およびビット1の各々に
「0」を書き込む。このようにして、制御レジスタ19
のビット0およびビット1は初期状態に復帰する。ビッ
ト0およびビット1への「0」の書込に応じて、AND
ゲート回路20は直ちに高電圧要求信号のスイッチ21
への供給を停止する。これによって、フラッシュメモリ
14上の情報の消去または書込が不可能になる。
【0173】この後、ステップST102で異常処理を
CPU12が実行する。異常処理では、ホストマイコン
10に異常事態の発生を通知する情報を生成する。そし
て、ステップST100でCPU12がホストマイコン
10にレスポンス信号を送信し、このメインプログラム
の動作が終了する。レスポンス信号には、異常事態の発
生を通知する情報が含まれ、これによって異常事態の発
生がホストマイコン10で認識される。
【0174】ステップST95の判断結果が否定的な場
合には、フラッシュメモリ14についての情報の消去お
よび/または書込は全く行われない。従って、フラッシ
ュメモリ14から直接読み出されるサブルーティンプロ
グラムに基づいてフラッシュメモリ14上の情報が更新
されることが予防され、プログラムの暴走が予防され
る。また、ステップST102の異常処理で生成された
異常事態の発生を通知する情報をホストマイコン10が
受け取ることによって、このシステムの運用者は、本来
RAM15上にロードされるべき消去・書込プログラム
に異常があるなどの潜在的可能性を察知するであろう。
従って、運用者は適切な措置を採ることが可能である。
【0175】さらに、上述したステップST92の判断
が否定的な場合、すなわちフラッシュメモリ14に関し
て消去または書込の要求がない場合、動作はステップS
T92からステップST103に進む。ステップST1
03では、CPU12はフラッシュメモリ14から読み
出したコマンドに応じたサブルーティンプログラムの処
理を続行する。その終了後、ステップST100でCP
U12がホストマイコン10にレスポンス信号を送信
し、このメインプログラムの動作が終了する。
【0176】以上のように、この実施の形態9によれ
ば、消去・書込プログラムがRAM15から読み出され
る状態にあって、なおかつEW要求信号が存在するとき
だけに、ANDゲート回路20およびスイッチ21が書
込消去用の電圧Vppをフラッシュメモリ14に供給で
きるようにするので、誤動作で消去モードまたは書込モ
ードになるおそれを極めて低減することが可能である。
特に、プログラムがRAM15から読み出される状態で
あることをCPU12が確認し、その状態である場合に
EW許可信号を生成する。従って、フラッシュメモリ1
4からプログラムが読まれている間にフラッシュメモリ
14上の情報が誤消去または誤書込されることが防止さ
れ、そこから読み出し中のプログラムの暴走を抑制する
ことができるなどの効果が得られる。
【0177】実施の形態10.次に、この発明の実施の
形態10を説明する。この実施の形態では、フラッシュ
メモリ14へ書込消去用の電圧Vppを供給するまでの
過程に時間制限を設ける。すなわち、フラッシュメモリ
14へ書込消去用の電圧Vppを供給するための一つの
条件が満たされた後から一定時間範囲内に、第2の条件
が満たされない場合には、消去・書込プログラムの実行
を行わない。
【0178】図20は、上記の概念に従って、実施の形
態1に係る図4を修正したフローチャートである。この
メインプログラムでは、ステップST1で制御レジスタ
19のビット0に数値「1」を書き込んで実行中ステー
タス信号を生成した後、ステップST110で時間計測
を開始する。時間計測はCPU12の内蔵タイマ(図示
せず)によって行えばよい。そして、ステップST4で
消去・書込プログラムをRAM15にロードした後に、
ステップST111でCPU12は経過時間が一定時間
範囲内であるか否か判断する。この一定時間範囲は、ス
レーブマイコン11の動作が正常であれば、消去・書込
プログラムをRAM15にロードされる時間範囲として
設定される。一定時間範囲内であるとステップST11
1で判断されれば、CPU12は制御レジスタ19のビ
ット1に「1」を書き込み、EW要求信号をANDゲー
ト回路20に継続的に与え、フラッシュメモリ14上の
情報の消去および/または書込を実行する(ステップS
T5,ST6)。
【0179】他方、ステップST111で経過時間が一
定時間範囲外であると判断されたら動作はステップST
112に進み、異常処理をCPU12が実行する。異常
処理では、ホストマイコン10に異常事態の発生を通知
する情報を生成する。この情報は、ステップST10で
CPU12がホストマイコン10に送信するレスポンス
信号に示される。
【0180】実施の形態4(図8参照)についても上記
の概念に従って修正してよい。この場合のメインプログ
ラムの動作も図20に類似する。但し、実行中ステータ
ス信号(制御レジスタ19のビット0)の代わりに、ホ
ストマイコン10からのEW許可信号が使用されるの
で、図20中のステップST1およびステップST9は
不要である。この場合には、ホストマイコン10からの
EW許可信号はANDゲート回路20A(図8参照)だ
けでなくCPU12にも供給されると好ましい。CPU
12にホストマイコン10からのEW許可信号が供給さ
れた後に、時間計測を開始(ステップST110)すれ
ばよい。
【0181】図21は、上記の概念に従って、実施の形
態5に係る図12を修正したフローチャートである。こ
のメインプログラムでは、ステップST42で制御レジ
スタ19のビット0に数値「1」を書き込んで実行中ス
テータス信号を生成した後、ステップST120で時間
計測を開始する。そして、ステップST46で消去・書
込プログラムをRAM15にロードした後に、ステップ
ST121でCPU12は経過時間が一定時間範囲内で
あるか否か判断する。一定時間範囲内であれば、CPU
12は制御レジスタ19のビット1に「1」を書き込
み、EW要求信号をANDゲート回路20に継続的に与
え、フラッシュメモリ14上の情報の消去および/また
は書込を実行する(ステップST47,ST48)。
【0182】他方、ステップST121で経過時間が一
定時間範囲外であると判断されたら動作はステップST
122に進み、異常処理をCPU12が実行する。異常
処理では、ホストマイコン10に異常事態の発生を通知
する情報を生成する。この情報は、ステップST52で
CPU12がホストマイコン10に送信するレスポンス
信号に示される。
【0183】以上のように、この実施の形態10によれ
ば、フラッシュメモリ14へ書込消去用の電圧Vpp
供給するための一つの条件が満たされた後から一定時間
範囲内に、第2の条件が満たされない場合には、消去・
書込プログラムの実行を行わない。スレーブマイコン1
1が誤動作した場合には、第1の条件が満たされてから
第2の条件が満たされるまでの時間が長くなったり短く
なったりするか、第2の条件が満たされることがない。
この実施の形態によれば、時間制限を設けることで、プ
ログラムのシーケンスが正常に実行されていることが確
認されるので、誤動作で消去モードまたは書込モードに
なるおそれをさらに高い信頼性の下で低減することが可
能である。
【0184】以上、この発明をその好適な実施の形態を
参照しながら詳細に図示して説明したが、請求の範囲に
記載された本発明の趣旨および範囲の区域内で、形式お
よび細部に関する様々な変更が可能であることは当業者
であれば理解できることだろう。かかる変更、代替、修
正もこの発明の範囲に含まれる。
【0185】例えば、以上の各実施の形態では、フラグ
の設定のためにCPU12の内部の制御レジスタ19が
使用される。但し、CPU12の外部に配置される汎用
出力ポートに設けられる制御レジスタをフラグの設定の
ために使用してもよい。かかる汎用出力ポートは、スレ
ーブマイコン11を構成するシングルチップの内部に配
置してもよいし、外部に周辺機器として配置してもよ
い。
【0186】実施の形態2(図5参照)に関連して説明
した制御レジスタのフラグに基づいて、ANDゲート回
路ではなく、ソフトウエアに従って動作するCPU12
Aがスイッチ21に高電圧要求信号を供給する概念は、
他の実施の形態にも応用されうる。
【0187】以上の各実施の形態では、フラッシュメモ
リへの書込消去用の電圧の供給の制御に関連する。但
し、フラッシュメモリ以外のEEPROMへの電圧の供
給の制御に適するように各実施の形態を応用してもよ
い。
【0188】以上の各実施の形態においては、ANDゲ
ート回路20,20A,20B,20Cはシングルチッ
プのスレーブマイコン11に内蔵されている。但し、A
NDゲート回路はスイッチ21とともに、スレーブマイ
コン11のチップの外部に配置することも可能である。
さらに、ANDゲート回路はスイッチ21とともに、ホ
ストマイコン10に配置することも可能である。
【0189】
【発明の効果】以上のように、この発明によれば、不揮
発性メモリ上の情報の消去または書込のための複数の条
件を設定する設定部と、複数の条件の全てが設定されて
いるときに、書込消去用の電圧を不揮発性メモリに供給
できるようにする書込消去用電圧供給許容部を備えるよ
うに構成したので、消去および書込に高電圧を要する電
気的に情報の消去および書込ができる不揮発性メモリの
情報の誤消去または誤書込を効率的に低減または防止す
ることが可能であるなどの効果がある。
【0190】この発明によれば、不揮発性メモリが配置
されたチップの内部に書込消去用電圧供給許容部のスイ
ッチが配置されているように構成したので、端子数を節
約することができるとともに、チップの動作モードが外
部から傍受しにくくなるなどの効果がある。
【0191】この発明によれば、ホストマイクロコンピ
ュータとホストマイクロコンピュータのコマンドに従っ
て動作するスレーブマイクロコンピュータを備えてお
り、設定部は、不揮発性メモリ上の情報の消去または書
込のための第1の条件および第2の条件をそれぞれ設定
する第1の設定部および第2の設定部を有しており、ス
レーブマイクロコンピュータが不揮発性メモリと処理装
置と第1の設定部を有し、ホストマイクロコンピュータ
が第2の設定部を有するように構成したので、仮にホス
トマイコンとスレーブマイコンのいずれか一方が誤動作
しても、他方が正常であれば消去モードまたは書込モー
ドにはならない。従って、不揮発性メモリの情報の誤消
去または誤書込を効率的に低減または防止することがで
き、データの信頼性が保たれるなどの効果がある。
【0192】この発明によれば、ホストマイクロコンピ
ュータは、スレーブマイクロコンピュータに不揮発性メ
モリ上の情報の消去または書込をさせるコマンドをスレ
ーブマイクロコンピュータに送信する前に、高電圧要求
コマンドをスレーブマイクロコンピュータに送信し、ス
レーブマイクロコンピュータが高電圧要求コマンドを受
信すると、設定部は条件の一つを設定するように構成し
たので、仮にホストマイコンが一時的に誤動作しても、
その後にホストマイコンおよびスレーブマイコンの両方
が誤動作しなければ、不揮発性メモリは消去モードまた
は書込モードにはならない。従って、不揮発性メモリの
情報の誤消去または誤書込を効率的に低減または防止す
ることができ、そこから読み出し中のプログラムの暴走
を抑制することができるなどの効果がある。
【0193】この発明によれば、第2の設定部が処理装
置とは別個の回路であって処理装置が配置されたチップ
に配置されており、処理装置の動作の正常性を確認し、
正常である場合に第2の条件を設定するように構成した
ので、誤動作で不揮発性メモリが消去モードまたは書込
モードになるおそれを極めて低減することが可能である
などの効果がある。
【0194】この発明によれば、不揮発性メモリに与え
られる書込消去用の電圧を計測する電圧計測部をさらに
備え、電圧が異常である場合に、設定部が条件の一つを
非設定にするように構成したので、誤動作で消去モード
または書込モードになるおそれを極めて低減することが
可能である。また、異常電圧の下での消去または書込が
防止されるので、不揮発性メモリ上の予期しない異常な
情報の書込などが防止されるなどの効果がある。
【0195】この発明によれば、ホストマイクロコンピ
ュータとホストマイクロコンピュータのコマンドに従っ
て動作するスレーブマイクロコンピュータを備えてお
り、設定部は、不揮発性メモリ上の情報の消去または書
込のための第1の条件、第2の条件および第3の条件を
それぞれ設定する第1の設定部、第2の設定部および第
3の設定部を有しており、スレーブマイクロコンピュー
タが不揮発性メモリと処理装置と第1の設定部を有し、
ホストマイクロコンピュータが第2の設定部を有してお
り、スレーブマイクロコンピュータは、第3の設定部
と、不揮発性メモリに与えられる書込消去用の電圧を計
測する電圧計測部をさらに有しており、電圧が異常であ
る場合に、第3の設定部が第3の条件を非設定にするよ
うになされており、第1の条件、第2の条件および第3
の条件の全てが設定されているときに、書込消去用電圧
供給許容部は書込消去用の電圧を不揮発性メモリに供給
できるようにされているように構成したので、多数の条
件を満たさなければ、不揮発性メモリ上の情報の消去ま
たは書込は不可能である。このため、不揮発性メモリの
情報の誤消去または誤書込をさらに高い信頼性の下で低
減または防止することができるなどの効果がある。特
に、スレーブマイコンが第1の設定部を有する一方ホス
トマイコンが第2の設定部を有することにより、仮にホ
ストマイコンとスレーブマイコンのいずれか一方が誤動
作しても、他方が正常であれば消去モードまたは書込モ
ードにはならない。また、電圧が異常である場合に第3
の設定部が第3の条件を非設定にすることにより、異常
電圧の下での消去または書込が防止されるので、不揮発
性メモリ上の予期しない異常な情報の書込などが防止さ
れる。
【0196】この発明によれば、不揮発性メモリ上の情
報の消去または書込を行う場合に、実行するプログラム
を処理装置は一時的格納メモリに格納させ、処理装置
は、実行しようとする命令が格納されているアドレスが
一時的格納メモリのアドレスであるか否かを判断し、こ
の判断が否定的な場合に設定部が条件の一つを非設定に
するように構成したので、不揮発性メモリからプログラ
ムが読まれている間に不揮発性メモリ上の情報が誤消去
または誤書込されることが防止され、そこから読み出し
中のプログラムの暴走を抑制することができるなどの効
果がある。
【図面の簡単な説明】
【図1】 この発明の実施の形態1に係るマイクロコン
ピュータであるマルチプロセッサシステムを示す概略図
である。
【図2】 図1に示されたマルチプロセッサシステムの
概略的動作を示す制御フローシーケンス図である。
【図3】 図1に示されたマルチプロセッサシステム中
のスレーブマイコンのハードウエアの詳細を示すブロッ
ク図である。
【図4】 図3に示されたスレーブマイコンのメインプ
ログラムの動作を示すフローチャートである。
【図5】 この発明の実施の形態2に係るスレーブマイ
コンのハードウエアの詳細を示すブロック図である。
【図6】 図5に示されたスレーブマイコンのメインプ
ログラムの動作を示すフローチャートである。
【図7】 この発明の実施の形態3に係るスレーブマイ
コンのハードウエアの詳細を示すブロック図である。
【図8】 この発明の実施の形態4に係るスレーブマイ
コンのハードウエアの詳細を示すブロック図である。
【図9】 実施の形態4のバリエーションのスレーブマ
イコンを示すブロック図である。
【図10】 実施の形態4の他のバリエーションのスレ
ーブマイコンを示すブロック図である。
【図11】 この発明の実施の形態5に係るマルチプロ
セッサシステムの概略的動作を示す制御フローシーケン
ス図である。
【図12】 実施の形態5に係るスレーブマイコンのメ
インプログラムの動作を示すフローチャートである。
【図13】 この発明の実施の形態6に係るスレーブマ
イコンのハードウエアの詳細を示すブロック図である。
【図14】 この発明の実施の形態7に係るスレーブマ
イコンのハードウエアの詳細を示すブロック図である。
【図15】 図14に示されたスレーブマイコンのメイ
ンプログラムの動作を示すフローチャートである。
【図16】 この発明の実施の形態8に係るスレーブマ
イコンのハードウエアの詳細を示すブロック図である。
【図17】 図16に示されたスレーブマイコンのメイ
ンプログラムの動作を示すフローチャートである。
【図18】 この発明の実施の形態9に係るスレーブマ
イコンのハードウエアの詳細を示すブロック図である。
【図19】 図18に示されたスレーブマイコンのメイ
ンプログラムの動作を示すフローチャートである。
【図20】 この発明の実施の形態10に係るスレーブ
マイコンのメインプログラムの動作を示すフローチャー
トである。
【図21】 実施の形態10の修正的な形態のスレーブ
マイコンのメインプログラムの動作を示すフローチャー
トである。
【図22】 フラッシュメモリを内蔵した従来のマイク
ロコンピュータの一例を示すブロック図である。
【符号の説明】
10 ホストマイコン(第2の設定部)、11 スレー
ブマイコン、12 CPU(処理装置、設定部、第1の
設定部、第3の設定部)、12A CPU(処理装置、
設定部、書込消去用電圧供給許容部)、13 プログラ
ムカウンタ、14 フラッシュメモリ(不揮発性メモ
リ)、15 RAM(一時的格納メモリ)、16 バ
ス、17 書込消去用電圧端子(書込消去用電圧供給
部)、18 読み出し用電圧端子、19 制御レジスタ
(設定部、第1の設定部、第3の設定部)、20,20
A,20B,20C ANDゲート回路(書込消去用電
圧供給許容部)、21 スイッチ(書込消去用電圧供給
許容部)、22 許可信号生成回路(第2の設定部)、
23 アドレスバス、24 電圧検出部(電圧計測
部)、25 A/D変換器。

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 書込消去用の電圧が供給されると電気的
    に情報の消去および書込ができる不揮発性メモリと、 前記不揮発性メモリに格納されたプログラムを実行する
    処理装置と、 前記不揮発性メモリ上の情報の消去または書込のための
    複数の条件を設定する設定部と、 前記複数の条件の全てが設定されているときに、書込消
    去用の電圧を前記不揮発性メモリに供給できるようにす
    る書込消去用電圧供給許容部とを備えたマイクロコンピ
    ュータ。
  2. 【請求項2】 不揮発性メモリに書込消去用の電圧を供
    給するため書込消去用電圧供給部と不揮発性メモリとの
    間に介在するスイッチを書込消去用電圧供給許容部が備
    えており、前記不揮発性メモリが配置されているチップ
    の外部に前記書込消去用電圧供給部が設けられ、前記不
    揮発性メモリが配置されたチップの内部に前記スイッチ
    が配置されていることを特徴とする請求項1記載のマイ
    クロコンピュータ。
  3. 【請求項3】 ホストマイクロコンピュータと前記ホス
    トマイクロコンピュータのコマンドに従って動作するス
    レーブマイクロコンピュータを備えており、 設定部は、不揮発性メモリ上の情報の消去または書込の
    ための第1の条件および第2の条件をそれぞれ設定する
    第1の設定部および第2の設定部を有しており、 前記スレーブマイクロコンピュータが前記不揮発性メモ
    リと処理装置と前記第1の設定部を有し、 前記ホストマイクロコンピュータが前記第2の設定部を
    有することを特徴とする請求項1または請求項2記載の
    マイクロコンピュータ。
  4. 【請求項4】 ホストマイクロコンピュータと前記ホス
    トマイクロコンピュータのコマンドに従って動作するス
    レーブマイクロコンピュータを備えており、 前記スレーブマイクロコンピュータが不揮発性メモリと
    処理装置と設定部を有し、 ホストマイクロコンピュータは、スレーブマイクロコン
    ピュータに不揮発性メモリ上の情報の消去または書込を
    させるコマンドを前記スレーブマイクロコンピュータに
    送信する前に、書込消去用電圧要求コマンドを前記スレ
    ーブマイクロコンピュータに送信し、 前記スレーブマイクロコンピュータが書込消去用電圧要
    求コマンドを受信すると、前記設定部は条件の一つを設
    定することを特徴とする請求項1記載のマイクロコンピ
    ュータ。
  5. 【請求項5】 設定部は、不揮発性メモリ上の情報の消
    去または書込のための第1の条件および第2の条件をそ
    れぞれ設定する第1の設定部と第2の設定部とを有して
    おり、 前記第1の設定部が処理装置を有しており、前記第2の
    設定部が前記処理装置とは別個の回路であって前記処理
    装置が配置されたチップに配置されており、前記処理装
    置の動作の正常性を確認し、正常である場合に前記第2
    の条件を設定することを特徴とする請求項1記載のマイ
    クロコンピュータ。
  6. 【請求項6】 不揮発性メモリに与えられる書込消去用
    電圧を計測する電圧計測部をさらに備え、前記電圧が異
    常である場合に、設定部が条件の一つを非設定にするこ
    とを特徴とする請求項1記載のマイクロコンピュータ。
  7. 【請求項7】 ホストマイクロコンピュータと前記ホス
    トマイクロコンピュータのコマンドに従って動作するス
    レーブマイクロコンピュータを備えており、 設定部は、不揮発性メモリ上の情報の消去または書込の
    ための第1の条件、第2の条件および第3の条件をそれ
    ぞれ設定する第1の設定部、第2の設定部および第3の
    設定部を有しており、 前記スレーブマイクロコンピュータが不揮発性メモリと
    処理装置と第1の設定部を有し、 前記ホストマイクロコンピュータが第2の設定部を有し
    ており、 前記スレーブマイクロコンピュータは、第3の設定部
    と、不揮発性メモリに与えられる書込消去用の電圧を計
    測する電圧計測部をさらに有しており、前記電圧が異常
    である場合に、前記第3の設定部が前記第3の条件を非
    設定にするようになされており、 前記第1の条件、前記第2の条件および前記第3の条件
    の全てが設定されているときに、書込消去用電圧供給許
    容部は書込消去用の電圧を前記不揮発性メモリに供給で
    きるようにされていることを特徴とする請求項1記載の
    マイクロコンピュータ。
  8. 【請求項8】 情報を一時的に格納できる一時的格納メ
    モリをさらに備え、 不揮発性メモリ上の情報の消去または書込を行う場合
    に、実行するプログラムを処理装置は前記一時的格納メ
    モリに格納させ、 処理装置は、実行しようとする命令が格納されているア
    ドレスが前記一時的格納メモリのアドレスであるか否か
    を判断し、この判断が否定的な場合に設定部が条件の一
    つを非設定にすることを特徴とする請求項1記載のマイ
    クロコンピュータ。
JP2002062472A 2002-03-07 2002-03-07 マイクロコンピュータ Pending JP2003263421A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2002062472A JP2003263421A (ja) 2002-03-07 2002-03-07 マイクロコンピュータ
US10/234,386 US6813191B2 (en) 2002-03-07 2002-09-05 Microcomputer with nonvolatile memory protected against false erasing or writing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002062472A JP2003263421A (ja) 2002-03-07 2002-03-07 マイクロコンピュータ

Publications (1)

Publication Number Publication Date
JP2003263421A true JP2003263421A (ja) 2003-09-19

Family

ID=27784894

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002062472A Pending JP2003263421A (ja) 2002-03-07 2002-03-07 マイクロコンピュータ

Country Status (2)

Country Link
US (1) US6813191B2 (ja)
JP (1) JP2003263421A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018090214A (ja) * 2016-12-07 2018-06-14 日立オートモティブシステムズ株式会社 自動車用電子制御装置及び自動車用電子制御装置のリセット方法

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4153802B2 (ja) * 2003-02-07 2008-09-24 株式会社ルネサステクノロジ 記憶装置
US7441069B2 (en) * 2006-04-13 2008-10-21 Intel Corporation Default instruction to hide nonvolatile memory core initialization latency
DE102008030628B4 (de) * 2008-06-20 2013-08-22 Flextronics International Kft. Steuersystem
FR2951577A1 (fr) * 2009-10-20 2011-04-22 St Microelectronics Rousset Dispositif pour fournir une haute tension d'effacement programmation a un circuit integre
EP2317519A1 (fr) 2009-10-20 2011-05-04 STMicroelectronics Rousset SAS Circuit intégré comprenant une borne non dédié de réception d'une haute tension d'effacement programmation
JP6421042B2 (ja) * 2015-01-16 2018-11-07 ルネサスエレクトロニクス株式会社 情報処理装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5321845A (en) * 1987-09-09 1994-06-14 Hitachi, Ltd. Single-chip microcomputer including non-volatile memory elements
JPH03137900A (ja) * 1989-07-27 1991-06-12 Nec Corp 不揮発性半導体メモリ
JPH06180996A (ja) 1992-12-10 1994-06-28 Nikon Corp コンピュータ内蔵装置
JPH0729386A (ja) 1993-07-13 1995-01-31 Hitachi Ltd フラッシュメモリ及びマイクロコンピュータ
JP2689939B2 (ja) * 1995-02-21 1997-12-10 日本電気株式会社 不揮発性半導体記憶装置
US5732017A (en) * 1997-03-31 1998-03-24 Atmel Corporation Combined program and data nonvolatile memory with concurrent program-read/data write capability
US6032248A (en) * 1998-04-29 2000-02-29 Atmel Corporation Microcontroller including a single memory module having a data memory sector and a code memory sector and supporting simultaneous read/write access to both sectors
JP2001075941A (ja) 1999-09-02 2001-03-23 Mitsubishi Electric Corp フラッシュメモリ内蔵マイクロコンピュータおよびその動作方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018090214A (ja) * 2016-12-07 2018-06-14 日立オートモティブシステムズ株式会社 自動車用電子制御装置及び自動車用電子制御装置のリセット方法

Also Published As

Publication number Publication date
US6813191B2 (en) 2004-11-02
US20030169624A1 (en) 2003-09-11

Similar Documents

Publication Publication Date Title
US7213117B2 (en) 1-chip microcomputer having controlled access to a memory and IC card using the 1-chip microcomputer
US5793774A (en) Flash memory controlling system
US6587916B2 (en) Microcomputer with built-in programmable nonvolatile memory
US5826007A (en) Memory data protection circuit
US5327531A (en) Data processing system including corrupt flash ROM recovery
US4698750A (en) Security for integrated circuit microcomputer with EEPROM
US5210854A (en) System for updating program stored in eeprom by storing new version into new location and updating second transfer vector to contain starting address of new version
US20060005005A1 (en) Method and apparatus for executing the boot code of embedded systems
US9304943B2 (en) Processor system and control method thereof
JPH11259375A (ja) 車両用制御装置及び車両制御システム
US7096351B2 (en) Single-chip microcomputer and boot region switching method thereof
JP2003263421A (ja) マイクロコンピュータ
JP3376306B2 (ja) データ処理装置、そのデータ処理方法
US20080140920A1 (en) Microcomputer for flash memory rewriting
US6510501B1 (en) Non-volatile memory read/write security protection feature selection through non-volatile memory bits
JP3152535B2 (ja) データ処理装置
US7281103B2 (en) Microcomputer with a security function for accessing a program storage memory
JP3565987B2 (ja) エミュレータ装置
JPH0822422A (ja) メモリ装置
JP2003271420A (ja) 電子制御装置
JP4848126B2 (ja) マイクロコンピュータ、マイクロコンピュータにおける不揮発性メモリのデータ保護方法
KR100232880B1 (ko) 교환기 시스템의 응용 프로그램의 갱신방법
SU1453408A1 (ru) Устройство дл отладки микропроцессорной системы
US20020166036A1 (en) Multiple memory block disable function
JP3824295B2 (ja) 不揮発性半導体記憶装置