JPH11260075A - フラッシュメモリ内蔵マイクロコンピュータおよびデータ書換方法 - Google Patents
フラッシュメモリ内蔵マイクロコンピュータおよびデータ書換方法Info
- Publication number
- JPH11260075A JPH11260075A JP19472698A JP19472698A JPH11260075A JP H11260075 A JPH11260075 A JP H11260075A JP 19472698 A JP19472698 A JP 19472698A JP 19472698 A JP19472698 A JP 19472698A JP H11260075 A JPH11260075 A JP H11260075A
- Authority
- JP
- Japan
- Prior art keywords
- flash memory
- data
- program
- stored
- data stored
- 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
Links
Landscapes
- Read Only Memory (AREA)
Abstract
(57)【要約】
【課題】 フラッシュメモリの記憶内容が誤って消去さ
れないようにする。 【解決手段】 コマンドデコーダ513は、オートイレ
ーズコマンドが書き込まれると、シーケンサ回路103
にオートイレーズ受付信号を供給する。シーケンサ回路
103は、外部装置に消去実行確認信号を出力するとと
もに、タイマ104に計時を開始させる。そして、所定
の時間が経過する前に応答信号がシーケンサ回路103
に入力されないと、タイマ104からオーバーフロー信
号が供給され、シーケンサ回路103は、現在実行中の
処理が誤動作によるものと判断して、リセット信号を出
力する。
れないようにする。 【解決手段】 コマンドデコーダ513は、オートイレ
ーズコマンドが書き込まれると、シーケンサ回路103
にオートイレーズ受付信号を供給する。シーケンサ回路
103は、外部装置に消去実行確認信号を出力するとと
もに、タイマ104に計時を開始させる。そして、所定
の時間が経過する前に応答信号がシーケンサ回路103
に入力されないと、タイマ104からオーバーフロー信
号が供給され、シーケンサ回路103は、現在実行中の
処理が誤動作によるものと判断して、リセット信号を出
力する。
Description
【0001】
【発明の属する技術分野】この発明はフラッシュメモリ
に記憶されているデータをCPU書換方式で書き換える
フラッシュメモリ内蔵マイクロコンピュータおよびデー
タ書換方法に関するものである。
に記憶されているデータをCPU書換方式で書き換える
フラッシュメモリ内蔵マイクロコンピュータおよびデー
タ書換方法に関するものである。
【0002】
【従来の技術】図17は従来のフラッシュメモリ内蔵マ
イクロコンピュータの構成を示すブロック図であり、図
18は図17に示すフラッシュメモリ内蔵マイクロコン
ピュータのうち、フラッシュメモリ503へのデータの
書込み時、またはデータの消去時に使用される回路を示
すブロック図である。図17において、501はフラッ
シュメモリ内蔵マイクロコンピュータ(以下、マイコン
という)であり、502はマイコン501に内蔵される
各種回路、メモリなどを制御する中央演算処理装置(再
転送手段:以下、CPUという)であり、503は電気
的にデータの消去が可能であるフラッシュメモリであ
り、504はフラッシュメモリ503へのデータの書込
み、データの消去、書込みまたは消去後のベリファイ動
作などを実行するフラッシュメモリ制御回路である。
イクロコンピュータの構成を示すブロック図であり、図
18は図17に示すフラッシュメモリ内蔵マイクロコン
ピュータのうち、フラッシュメモリ503へのデータの
書込み時、またはデータの消去時に使用される回路を示
すブロック図である。図17において、501はフラッ
シュメモリ内蔵マイクロコンピュータ(以下、マイコン
という)であり、502はマイコン501に内蔵される
各種回路、メモリなどを制御する中央演算処理装置(再
転送手段:以下、CPUという)であり、503は電気
的にデータの消去が可能であるフラッシュメモリであ
り、504はフラッシュメモリ503へのデータの書込
み、データの消去、書込みまたは消去後のベリファイ動
作などを実行するフラッシュメモリ制御回路である。
【0003】なお、フラッシュメモリ503には、各種
データの他、フラッシュメモリ503の記憶内容を消去
し、マイコン501に接続された外部装置より供給され
るデータをフラッシュメモリ503に書き込む処理を記
述したプログラム(以下、ブートプログラムという)が
予め記憶されている。このブートプログラムを実行する
ことにより、フラッシュメモリ503に記憶されている
データがCPU書換方式で書き換えられる。
データの他、フラッシュメモリ503の記憶内容を消去
し、マイコン501に接続された外部装置より供給され
るデータをフラッシュメモリ503に書き込む処理を記
述したプログラム(以下、ブートプログラムという)が
予め記憶されている。このブートプログラムを実行する
ことにより、フラッシュメモリ503に記憶されている
データがCPU書換方式で書き換えられる。
【0004】505は一時的にデータやプログラムを記
憶するランダムアクセスメモリ(以下、RAMという)
であり、506はタイマなどの周辺機器であり、507
は周辺機器506などより信号線519を介して供給さ
れる割り込み要求を適宜処理する割り込み回路であり、
508は外部端子510を介して供給されるクロックか
らマイコン501の内部回路を動作させる基準クロック
を生成するクロック生成回路であり、509はマイコン
501のデータバスおよびアドレスバス511に接続さ
れるとともに、フラッシュメモリ503にデータを供給
する例えばパーソナルコンピュータなどの外部装置に接
続され、データの授受を行うシリアルIOインタフェー
スなどのインタフェース回路であり、511はCPU5
02、フラッシュメモリ503、フラッシュメモリ制御
回路504、RAM505、周辺機器506、割り込み
回路507、クロック生成回路508、およびインタフ
ェース回路509に接続されたデータバスおよびアドレ
スバスである。
憶するランダムアクセスメモリ(以下、RAMという)
であり、506はタイマなどの周辺機器であり、507
は周辺機器506などより信号線519を介して供給さ
れる割り込み要求を適宜処理する割り込み回路であり、
508は外部端子510を介して供給されるクロックか
らマイコン501の内部回路を動作させる基準クロック
を生成するクロック生成回路であり、509はマイコン
501のデータバスおよびアドレスバス511に接続さ
れるとともに、フラッシュメモリ503にデータを供給
する例えばパーソナルコンピュータなどの外部装置に接
続され、データの授受を行うシリアルIOインタフェー
スなどのインタフェース回路であり、511はCPU5
02、フラッシュメモリ503、フラッシュメモリ制御
回路504、RAM505、周辺機器506、割り込み
回路507、クロック生成回路508、およびインタフ
ェース回路509に接続されたデータバスおよびアドレ
スバスである。
【0005】図18において、513はCPU502か
ら供給される、フラッシュメモリ503に対する動作を
指示するコマンドを記憶するコマンドレジスタ514
と、コマンドレジスタ514に記憶されたコマンドをデ
コードし、そのコマンドに対応する信号をフラッシュメ
モリ制御回路504の消去/書込制御回路517に出力
するデコード回路515で構成されたコマンドデコーダ
(図17には図示せず)である。
ら供給される、フラッシュメモリ503に対する動作を
指示するコマンドを記憶するコマンドレジスタ514
と、コマンドレジスタ514に記憶されたコマンドをデ
コードし、そのコマンドに対応する信号をフラッシュメ
モリ制御回路504の消去/書込制御回路517に出力
するデコード回路515で構成されたコマンドデコーダ
(図17には図示せず)である。
【0006】フラッシュメモリ制御回路504におい
て、516はフラッシュメモリ503の動作モードに対
応する設定値を記憶するフラッシュメモリ制御レジスタ
であり、517はフラッシュメモリ503へのデータの
消去およびデータの書込みを実行する消去/書込制御回
路である。なお、データが書込まれる場合、そのデータ
は、消去/書込制御回路517からフラッシュメモリ5
03に供給され、そのデータを記憶するアドレスは、デ
ータバスおよびアドレスバス511のうちのアドレスバ
スを介して供給される。
て、516はフラッシュメモリ503の動作モードに対
応する設定値を記憶するフラッシュメモリ制御レジスタ
であり、517はフラッシュメモリ503へのデータの
消去およびデータの書込みを実行する消去/書込制御回
路である。なお、データが書込まれる場合、そのデータ
は、消去/書込制御回路517からフラッシュメモリ5
03に供給され、そのデータを記憶するアドレスは、デ
ータバスおよびアドレスバス511のうちのアドレスバ
スを介して供給される。
【0007】次に動作について説明する。ここでは、ブ
ートプログラムに従ってフラッシュメモリ503に記憶
されているデータを書き換えるときの動作について説明
する。
ートプログラムに従ってフラッシュメモリ503に記憶
されているデータを書き換えるときの動作について説明
する。
【0008】まず、CPU502はフラッシュメモリ5
03からRAM505へブートプログラムを転送した
後、RAM505に記憶されたブートプログラムに従っ
てデータ書換の処理を開始する。なお、フラッシュメモ
リ503に記憶されたままでブートプログラムを実行す
ると、処理の途中でブートプログラムが消去されてしま
うため、ブートプログラムはRAM505に転送された
後に実行される。また、ブートプログラムが記憶されて
いる記憶領域だけを消去しないようにすることも考えら
れるが、その場合、データ書換時において回路の動作電
圧が様々に変化するため、ブートプログラムを正確に読
み出すことが困難である。
03からRAM505へブートプログラムを転送した
後、RAM505に記憶されたブートプログラムに従っ
てデータ書換の処理を開始する。なお、フラッシュメモ
リ503に記憶されたままでブートプログラムを実行す
ると、処理の途中でブートプログラムが消去されてしま
うため、ブートプログラムはRAM505に転送された
後に実行される。また、ブートプログラムが記憶されて
いる記憶領域だけを消去しないようにすることも考えら
れるが、その場合、データ書換時において回路の動作電
圧が様々に変化するため、ブートプログラムを正確に読
み出すことが困難である。
【0009】最初に、CPU502はフラッシュメモリ
制御回路504のフラッシュメモリ制御レジスタ516
のCPU書換モードエントリビットに値「1」を書き込
み、消去/書込制御回路517を動作可能な状態にす
る。
制御回路504のフラッシュメモリ制御レジスタ516
のCPU書換モードエントリビットに値「1」を書き込
み、消去/書込制御回路517を動作可能な状態にす
る。
【0010】次に、CPU502は、コマンドレジスタ
514に、オートイレーズコマンド「30H(Hは16
進数であることを示す)」を2回連続して書き込む。な
お、ここでは、誤消去を抑制するために連続して2回、
オートイレーズコマンドが書き込まれる。なお、オート
イレーズコマンドは、フラッシュメモリ503の記憶内
容を消去するための一連の動作(所定の記憶領域に対し
て値「0」を書込むイレーズ動作、イレーズ動作後にそ
の記憶領域に記憶されている値が「0」であることを確
認するイレーズベリファイ動作)を、CPU502を介
さずにハードウェア(フラッシュメモリ制御回路50
4)の動作だけで行うことを指示するコマンドである。
514に、オートイレーズコマンド「30H(Hは16
進数であることを示す)」を2回連続して書き込む。な
お、ここでは、誤消去を抑制するために連続して2回、
オートイレーズコマンドが書き込まれる。なお、オート
イレーズコマンドは、フラッシュメモリ503の記憶内
容を消去するための一連の動作(所定の記憶領域に対し
て値「0」を書込むイレーズ動作、イレーズ動作後にそ
の記憶領域に記憶されている値が「0」であることを確
認するイレーズベリファイ動作)を、CPU502を介
さずにハードウェア(フラッシュメモリ制御回路50
4)の動作だけで行うことを指示するコマンドである。
【0011】デコード回路515は、コマンドレジスタ
514にオートイレーズコマンドが書き込まれると、そ
のコマンドをデコードして、オートイレーズコマンドに
対応するオートイレーズ信号(AUTO)を、信号線5
18を介して消去/書込制御回路517に出力する。消
去/書込制御回路517は、オートイレーズ信号を供給
されると、イレーズ動作およびイレーズベリファイ動作
を実行する。
514にオートイレーズコマンドが書き込まれると、そ
のコマンドをデコードして、オートイレーズコマンドに
対応するオートイレーズ信号(AUTO)を、信号線5
18を介して消去/書込制御回路517に出力する。消
去/書込制御回路517は、オートイレーズ信号を供給
されると、イレーズ動作およびイレーズベリファイ動作
を実行する。
【0012】フラッシュメモリ503の全記憶領域に対
するオートイレーズコマンドが完了した後、CPU50
2は、データの書込みを指示するプログラムコマンド
「40H」をコマンドレジスタ514に書き込む。
するオートイレーズコマンドが完了した後、CPU50
2は、データの書込みを指示するプログラムコマンド
「40H」をコマンドレジスタ514に書き込む。
【0013】デコード回路515は、そのプログラムコ
マンドをデコードして、プログラムコマンドに対応する
プログラム信号(M40)を、信号線518を介して消
去/書込制御回路517に出力する。消去/書込制御回
路517は、プログラム信号を供給されると、図示せぬ
外部装置からインタフェース回路509およびデータバ
ス(データバスおよびアドレスバス511)を介して供
給されるデータをフラッシュメモリ503に書き込む。
なお、このとき、データが記憶されるアドレスは、外部
装置からインタフェース回路509およびアドレスバス
(データバスおよびアドレスバス511)を介してフラ
ッシュメモリ503に供給される。
マンドをデコードして、プログラムコマンドに対応する
プログラム信号(M40)を、信号線518を介して消
去/書込制御回路517に出力する。消去/書込制御回
路517は、プログラム信号を供給されると、図示せぬ
外部装置からインタフェース回路509およびデータバ
ス(データバスおよびアドレスバス511)を介して供
給されるデータをフラッシュメモリ503に書き込む。
なお、このとき、データが記憶されるアドレスは、外部
装置からインタフェース回路509およびアドレスバス
(データバスおよびアドレスバス511)を介してフラ
ッシュメモリ503に供給される。
【0014】データの書込みが完了した後、CPU50
2は、データが正確に書き込まれたことを確認するプロ
グラムベリファイ動作を指示するプログラムベリファイ
コマンド「C0H」をコマンドレジスタ514に書き込
む。
2は、データが正確に書き込まれたことを確認するプロ
グラムベリファイ動作を指示するプログラムベリファイ
コマンド「C0H」をコマンドレジスタ514に書き込
む。
【0015】デコード回路515は、そのプログラムベ
リファイコマンドをデコードして、プログラムベリファ
イコマンドに対応するプログラムベリファイ信号を、信
号線518を介して消去/書込制御回路517に出力す
る。消去/書込制御回路517は、プログラムベリファ
イ信号を供給されると、プログラム信号に対応して書き
込んだデータをフラッシュメモリ503から読み出し、
そのデータが、外部装置より供給されたデータと一致す
るか否かを判断する。
リファイコマンドをデコードして、プログラムベリファ
イコマンドに対応するプログラムベリファイ信号を、信
号線518を介して消去/書込制御回路517に出力す
る。消去/書込制御回路517は、プログラムベリファ
イ信号を供給されると、プログラム信号に対応して書き
込んだデータをフラッシュメモリ503から読み出し、
そのデータが、外部装置より供給されたデータと一致す
るか否かを判断する。
【0016】フラッシュメモリ503から読み出したデ
ータが、外部装置より供給されたデータと一致しないと
判断された場合、再度、そのデータを書き込むためのプ
ログラムコマンドが実行される。
ータが、外部装置より供給されたデータと一致しないと
判断された場合、再度、そのデータを書き込むためのプ
ログラムコマンドが実行される。
【0017】一方、フラッシュメモリ503から読み出
したデータが、外部装置より供給されたデータと一致す
ると判断された場合、次のデータを書き込むためのプロ
グラムコマンドが実行される。
したデータが、外部装置より供給されたデータと一致す
ると判断された場合、次のデータを書き込むためのプロ
グラムコマンドが実行される。
【0018】このようにして、フラッシュメモリ503
の全記憶領域に、外部装置より供給されたデータが順次
記憶され、CPU書換方式でのフラッシュメモリ503
の記憶内容の書き換えが実行される。
の全記憶領域に、外部装置より供給されたデータが順次
記憶され、CPU書換方式でのフラッシュメモリ503
の記憶内容の書き換えが実行される。
【0019】また、関連する他の装置としては、特開平
8−278895号公報に記載の装置がある。
8−278895号公報に記載の装置がある。
【0020】
【発明が解決しようとする課題】従来のフラッシュメモ
リ内蔵マイクロコンピュータは以上のように構成されて
いるので、マイコン501で各種プログラムを実行して
いるときに、そのプログラムが暴走した場合、ブートプ
ログラムが誤って実行されてしまう可能性があり、その
場合に対応するフェールセーフ機能がないので、フラッ
シュメモリ503の記憶内容が消去されてしまうという
課題や、ユーザにより誤って実行されたオートイレーズ
動作を途中で中止させることが困難であるなどの課題が
あった。
リ内蔵マイクロコンピュータは以上のように構成されて
いるので、マイコン501で各種プログラムを実行して
いるときに、そのプログラムが暴走した場合、ブートプ
ログラムが誤って実行されてしまう可能性があり、その
場合に対応するフェールセーフ機能がないので、フラッ
シュメモリ503の記憶内容が消去されてしまうという
課題や、ユーザにより誤って実行されたオートイレーズ
動作を途中で中止させることが困難であるなどの課題が
あった。
【0021】また、マイコン501がフラッシュメモリ
503の記憶内容を消去しているときに、何らかの原因
でマイコン501が暴走した場合、通常、フラッシュメ
モリ503に記憶されたベクタテーブルを参照して、そ
のベクタテーブルにより示されるアドレスから処理を再
開するようにマイコン501は動作するが、暴走が発生
した時点で既にベクタテーブルがフラッシュメモリ50
3から消去されている場合には、マイコン501単体で
処理の再開をすることが困難であるなどの課題があっ
た。
503の記憶内容を消去しているときに、何らかの原因
でマイコン501が暴走した場合、通常、フラッシュメ
モリ503に記憶されたベクタテーブルを参照して、そ
のベクタテーブルにより示されるアドレスから処理を再
開するようにマイコン501は動作するが、暴走が発生
した時点で既にベクタテーブルがフラッシュメモリ50
3から消去されている場合には、マイコン501単体で
処理の再開をすることが困難であるなどの課題があっ
た。
【0022】この発明は上記のような課題を解決するた
めになされたもので、フラッシュメモリに記憶されてい
るデータを書き換える場合に、フラッシュメモリに書き
込むデータを供給する外部装置からの応答があった場合
にのみデータの消去を実行するようにして、プログラム
の暴走などに起因する誤動作によってフラッシュメモリ
の記憶内容が消去されないようにするフラッシュメモリ
内蔵マイクロコンピュータおよびデータ書換方法を得る
ことを目的とする。
めになされたもので、フラッシュメモリに記憶されてい
るデータを書き換える場合に、フラッシュメモリに書き
込むデータを供給する外部装置からの応答があった場合
にのみデータの消去を実行するようにして、プログラム
の暴走などに起因する誤動作によってフラッシュメモリ
の記憶内容が消去されないようにするフラッシュメモリ
内蔵マイクロコンピュータおよびデータ書換方法を得る
ことを目的とする。
【0023】また、この発明は、フラッシュメモリに記
憶されているデータを書き換える場合に、フラッシュメ
モリの所定の記憶領域に記憶されたデータをRAMに転
送した後に消去し、その後に、フラッシュメモリに書き
込むデータを供給する外部装置からの応答があった場合
にのみ残りの記憶領域に記憶されたデータの消去を実行
するようにして、ユーザにより誤って実行されたオート
イレーズ動作を途中で中止することができるようにする
フラッシュメモリ内蔵マイクロコンピュータおよびデー
タ書換方法を得ることを目的とする。
憶されているデータを書き換える場合に、フラッシュメ
モリの所定の記憶領域に記憶されたデータをRAMに転
送した後に消去し、その後に、フラッシュメモリに書き
込むデータを供給する外部装置からの応答があった場合
にのみ残りの記憶領域に記憶されたデータの消去を実行
するようにして、ユーザにより誤って実行されたオート
イレーズ動作を途中で中止することができるようにする
フラッシュメモリ内蔵マイクロコンピュータおよびデー
タ書換方法を得ることを目的とする。
【0024】さらに、この発明は、フラッシュメモリに
記憶されたベクタテーブルのデータをランダムアクセス
メモリに転送し、そのデータの転送終了後にフラッシュ
メモリに記憶されたデータを消去し、フラッシュメモリ
に記憶されたデータを消去する処理において暴走が検出
された場合に、フラッシュメモリからベクタテーブルの
データが消去されていると判断されたときには、ベクタ
テーブルのデータをフラッシュメモリに再転送するよう
にして、フラッシュメモリに記憶されたベクタテーブル
が消去された後も、再転送されたベクタテーブルのデー
タに基づいて自律的に処理を再開することができるよう
にするフラッシュメモリ内蔵マイクロコンピュータおよ
びデータ書換方法を得ることを目的とする。
記憶されたベクタテーブルのデータをランダムアクセス
メモリに転送し、そのデータの転送終了後にフラッシュ
メモリに記憶されたデータを消去し、フラッシュメモリ
に記憶されたデータを消去する処理において暴走が検出
された場合に、フラッシュメモリからベクタテーブルの
データが消去されていると判断されたときには、ベクタ
テーブルのデータをフラッシュメモリに再転送するよう
にして、フラッシュメモリに記憶されたベクタテーブル
が消去された後も、再転送されたベクタテーブルのデー
タに基づいて自律的に処理を再開することができるよう
にするフラッシュメモリ内蔵マイクロコンピュータおよ
びデータ書換方法を得ることを目的とする。
【0025】さらに、この発明は、フラッシュメモリに
記憶されたデータを消去する前に、ウォッチドックタイ
マなどの暴走検出手段により暴走が検出されたとに参照
される割込ベクタアドレスを予めランダムアクセスメモ
リに記憶させ、その暴走検出手段により暴走が検出され
た場合に、その割込ベクタアドレスが示すアドレスから
処理を再開するようにして、フラッシュメモリに記憶さ
れたベクタテーブルが消去された後も、ランダムアクセ
スメモリに記憶された割込ベクタアドレスに基づいて自
律的に処理を再開することができるようにするフラッシ
ュメモリ内蔵マイクロコンピュータを得ることを目的と
する。
記憶されたデータを消去する前に、ウォッチドックタイ
マなどの暴走検出手段により暴走が検出されたとに参照
される割込ベクタアドレスを予めランダムアクセスメモ
リに記憶させ、その暴走検出手段により暴走が検出され
た場合に、その割込ベクタアドレスが示すアドレスから
処理を再開するようにして、フラッシュメモリに記憶さ
れたベクタテーブルが消去された後も、ランダムアクセ
スメモリに記憶された割込ベクタアドレスに基づいて自
律的に処理を再開することができるようにするフラッシ
ュメモリ内蔵マイクロコンピュータを得ることを目的と
する。
【0026】
【課題を解決するための手段】この発明に係るフラッシ
ュメモリ内蔵マイクロコンピュータは、ランダムアクセ
スメモリと、フラッシュメモリと、フラッシュメモリへ
のデータの書込み、およびフラッシュメモリに記憶され
たデータの消去を行うフラッシュメモリ制御手段と、ラ
ンダムアクセスメモリに記憶されたプログラムに従っ
て、ランダムアクセスメモリまたはフラッシュメモリに
記憶されたプログラムまたはデータの処理を行う中央演
算処理装置と、フラッシュメモリに記憶されたデータを
消去し書き換える場合、フラッシュメモリにデータを供
給する外部装置に所定の信号を出力し、その信号を出力
した時点から所定の時間内に外部装置より供給された応
答を検出する応答検出手段とを備え、フラッシュメモリ
に記憶されたデータを消去し書き換える場合において、
応答検出手段により外部装置からの応答が所定の時間内
に検出されない場合にはフラッシュメモリ制御手段がデ
ータの消去を中止するものである。
ュメモリ内蔵マイクロコンピュータは、ランダムアクセ
スメモリと、フラッシュメモリと、フラッシュメモリへ
のデータの書込み、およびフラッシュメモリに記憶され
たデータの消去を行うフラッシュメモリ制御手段と、ラ
ンダムアクセスメモリに記憶されたプログラムに従っ
て、ランダムアクセスメモリまたはフラッシュメモリに
記憶されたプログラムまたはデータの処理を行う中央演
算処理装置と、フラッシュメモリに記憶されたデータを
消去し書き換える場合、フラッシュメモリにデータを供
給する外部装置に所定の信号を出力し、その信号を出力
した時点から所定の時間内に外部装置より供給された応
答を検出する応答検出手段とを備え、フラッシュメモリ
に記憶されたデータを消去し書き換える場合において、
応答検出手段により外部装置からの応答が所定の時間内
に検出されない場合にはフラッシュメモリ制御手段がデ
ータの消去を中止するものである。
【0027】この発明に係るデータ書換方法は、フラッ
シュメモリにデータを供給する外部装置に所定の信号を
出力し、所定の信号に対応する外部装置からの応答が所
定の時間内に検出されない場合にはデータの消去を中止
するものである。
シュメモリにデータを供給する外部装置に所定の信号を
出力し、所定の信号に対応する外部装置からの応答が所
定の時間内に検出されない場合にはデータの消去を中止
するものである。
【0028】この発明に係るフラッシュメモリ内蔵マイ
クロコンピュータは、ランダムアクセスメモリと、フラ
ッシュメモリと、フラッシュメモリへのデータの書込
み、およびフラッシュメモリに記憶されたデータの消去
を行うフラッシュメモリ制御手段と、ランダムアクセス
メモリに記憶されたプログラムに従って、ランダムアク
セスメモリまたはフラッシュメモリに記憶されたプログ
ラムまたはデータの処理を行う中央演算処理装置と、フ
ラッシュメモリにデータを供給する外部装置に所定の信
号を出力し、その信号を出力した時点から所定の時間内
に外部装置より供給された応答を検出する応答検出手段
と、フラッシュメモリに記憶されているデータを読み出
し、ランダムアクセスメモリに転送するデータ転送手段
とを備え、フラッシュメモリに記憶されたデータを消去
し書き換える場合、データ転送手段により、データを書
き換える記憶領域のうちの所定の記憶領域に記憶されて
いるデータをランダムアクセスメモリに転送し、フラッ
シュメモリ制御手段により、所定の記憶領域に記憶され
ているデータの転送終了後にその所定の記憶領域に記憶
されたデータを消去し、そのデータの消去終了後の所定
の時間内に応答検出手段により外部装置からの応答が検
出されない場合にはデータを書き換える記憶領域のうち
の残りの記憶領域に記憶されたデータの消去を中止する
ものである。
クロコンピュータは、ランダムアクセスメモリと、フラ
ッシュメモリと、フラッシュメモリへのデータの書込
み、およびフラッシュメモリに記憶されたデータの消去
を行うフラッシュメモリ制御手段と、ランダムアクセス
メモリに記憶されたプログラムに従って、ランダムアク
セスメモリまたはフラッシュメモリに記憶されたプログ
ラムまたはデータの処理を行う中央演算処理装置と、フ
ラッシュメモリにデータを供給する外部装置に所定の信
号を出力し、その信号を出力した時点から所定の時間内
に外部装置より供給された応答を検出する応答検出手段
と、フラッシュメモリに記憶されているデータを読み出
し、ランダムアクセスメモリに転送するデータ転送手段
とを備え、フラッシュメモリに記憶されたデータを消去
し書き換える場合、データ転送手段により、データを書
き換える記憶領域のうちの所定の記憶領域に記憶されて
いるデータをランダムアクセスメモリに転送し、フラッ
シュメモリ制御手段により、所定の記憶領域に記憶され
ているデータの転送終了後にその所定の記憶領域に記憶
されたデータを消去し、そのデータの消去終了後の所定
の時間内に応答検出手段により外部装置からの応答が検
出されない場合にはデータを書き換える記憶領域のうち
の残りの記憶領域に記憶されたデータの消去を中止する
ものである。
【0029】この発明に係るフラッシュメモリ内蔵マイ
クロコンピュータは、所定の記憶領域に記憶されたデー
タの消去終了後の所定の時間内に外部装置からの応答が
検出されない場合に、ランダムアクセスメモリに転送し
たデータをフラッシュメモリの所定の記憶領域に再転送
する再転送手段を備えるものである。
クロコンピュータは、所定の記憶領域に記憶されたデー
タの消去終了後の所定の時間内に外部装置からの応答が
検出されない場合に、ランダムアクセスメモリに転送し
たデータをフラッシュメモリの所定の記憶領域に再転送
する再転送手段を備えるものである。
【0030】この発明に係るフラッシュメモリ内蔵マイ
クロコンピュータは、再転送手段が中央演算処理装置と
は独立に動作するものである。
クロコンピュータは、再転送手段が中央演算処理装置と
は独立に動作するものである。
【0031】この発明に係るデータ書換方法は、データ
を書き換える記憶領域のうちの所定の記憶領域に記憶さ
れているデータをランダムアクセスメモリに転送し、そ
の所定の記憶領域に記憶されたデータを消去し、フラッ
シュメモリにデータを供給する外部装置に所定の信号を
出力し、所定の時間内に外部装置からの応答が検出され
ない場合にはデータを書き換える記憶領域のうちの残り
の記憶領域に記憶されたデータの消去を中止するもので
ある。
を書き換える記憶領域のうちの所定の記憶領域に記憶さ
れているデータをランダムアクセスメモリに転送し、そ
の所定の記憶領域に記憶されたデータを消去し、フラッ
シュメモリにデータを供給する外部装置に所定の信号を
出力し、所定の時間内に外部装置からの応答が検出され
ない場合にはデータを書き換える記憶領域のうちの残り
の記憶領域に記憶されたデータの消去を中止するもので
ある。
【0032】この発明に係るフラッシュメモリ内蔵マイ
クロコンピュータは、プログラムまたはデータを記憶す
るランダムアクセスメモリと、プログラムまたはデータ
を記憶するフラッシュメモリと、フラッシュメモリに記
憶されたデータを消去し書き換える場合、フラッシュメ
モリに記憶されたベクタテーブルのデータをランダムア
クセスメモリに転送するデータ転送手段と、フラッシュ
メモリへのデータの書込み、およびフラッシュメモリに
記憶されたデータの消去を行い、フラッシュメモリに記
憶されたデータを消去し書き換える場合においては、フ
ラッシュメモリに記憶されたベクタテーブルのデータの
転送終了後に、フラッシュメモリに記憶されたデータを
消去するフラッシュメモリ制御手段と、ランダムアクセ
スメモリに記憶されたプログラムに従って、ランダムア
クセスメモリまたはフラッシュメモリに記憶されたプロ
グラムまたはデータの処理を行う中央演算処理装置と、
フラッシュメモリに記憶されたデータを消去する処理に
おける暴走を検出する暴走検出手段と、暴走検出手段に
より暴走が検出された場合に、フラッシュメモリからベ
クタテーブルのデータが消去されているか否かを判断す
る判断手段と、判断手段により、フラッシュメモリから
ベクタテーブルのデータが消去されていると判断された
場合に、ベクタテーブルのデータをフラッシュメモリに
再転送する再転送手段とを備えるものである。
クロコンピュータは、プログラムまたはデータを記憶す
るランダムアクセスメモリと、プログラムまたはデータ
を記憶するフラッシュメモリと、フラッシュメモリに記
憶されたデータを消去し書き換える場合、フラッシュメ
モリに記憶されたベクタテーブルのデータをランダムア
クセスメモリに転送するデータ転送手段と、フラッシュ
メモリへのデータの書込み、およびフラッシュメモリに
記憶されたデータの消去を行い、フラッシュメモリに記
憶されたデータを消去し書き換える場合においては、フ
ラッシュメモリに記憶されたベクタテーブルのデータの
転送終了後に、フラッシュメモリに記憶されたデータを
消去するフラッシュメモリ制御手段と、ランダムアクセ
スメモリに記憶されたプログラムに従って、ランダムア
クセスメモリまたはフラッシュメモリに記憶されたプロ
グラムまたはデータの処理を行う中央演算処理装置と、
フラッシュメモリに記憶されたデータを消去する処理に
おける暴走を検出する暴走検出手段と、暴走検出手段に
より暴走が検出された場合に、フラッシュメモリからベ
クタテーブルのデータが消去されているか否かを判断す
る判断手段と、判断手段により、フラッシュメモリから
ベクタテーブルのデータが消去されていると判断された
場合に、ベクタテーブルのデータをフラッシュメモリに
再転送する再転送手段とを備えるものである。
【0033】この発明に係るフラッシュメモリ内蔵マイ
クロコンピュータは、暴走検出手段で、所定の信号を所
定の時間以上供給されない場合に暴走が発生したと判断
し、フラッシュメモリ制御手段で、データ消去のために
フラッシュメモリに供給するパルス信号をその所定の信
号として暴走検出手段に供給するものである。
クロコンピュータは、暴走検出手段で、所定の信号を所
定の時間以上供給されない場合に暴走が発生したと判断
し、フラッシュメモリ制御手段で、データ消去のために
フラッシュメモリに供給するパルス信号をその所定の信
号として暴走検出手段に供給するものである。
【0034】この発明に係るフラッシュメモリ内蔵マイ
クロコンピュータは、フラッシュメモリ制御手段で、フ
ラッシュメモリに記憶されたデータを所定の順番でブロ
ック毎に消去し、判断手段で、消去されたブロックの数
に基づいて、ベクタテーブルのデータが記憶されたブロ
ックが消去されているか否かを判断し、そのブロックが
消去されていると判断した場合には、ベクタテーブルの
データがフラッシュメモリから消去されていると判断す
るものである。
クロコンピュータは、フラッシュメモリ制御手段で、フ
ラッシュメモリに記憶されたデータを所定の順番でブロ
ック毎に消去し、判断手段で、消去されたブロックの数
に基づいて、ベクタテーブルのデータが記憶されたブロ
ックが消去されているか否かを判断し、そのブロックが
消去されていると判断した場合には、ベクタテーブルの
データがフラッシュメモリから消去されていると判断す
るものである。
【0035】この発明に係るフラッシュメモリ内蔵マイ
クロコンピュータは、ランダムアクセスメモリに、フラ
ッシュメモリに記憶されたデータの書き換えの処理を記
述したプログラムを所定の記憶領域に記憶し、フラッシ
ュメモリに暴走発生時の割込ベクタアドレスとして所定
の記憶領域の先頭アドレスを記憶し、暴走発生時には、
割込ベクタアドレスが示すアドレスから処理を再開する
ものである。
クロコンピュータは、ランダムアクセスメモリに、フラ
ッシュメモリに記憶されたデータの書き換えの処理を記
述したプログラムを所定の記憶領域に記憶し、フラッシ
ュメモリに暴走発生時の割込ベクタアドレスとして所定
の記憶領域の先頭アドレスを記憶し、暴走発生時には、
割込ベクタアドレスが示すアドレスから処理を再開する
ものである。
【0036】この発明に係るデータ書換方法は、フラッ
シュメモリに記憶されたベクタテーブルのデータをラン
ダムアクセスメモリに転送し、フラッシュメモリに記憶
されたベクタテーブルのデータの転送終了後にフラッシ
ュメモリに記憶されたデータを消去し、フラッシュメモ
リに記憶されたデータを消去する処理における暴走が検
出された場合に、フラッシュメモリからベクタテーブル
のデータが消去されているか否かを判断し、フラッシュ
メモリからベクタテーブルのデータが消去されていると
判断された場合、ベクタテーブルのデータをフラッシュ
メモリに再転送するものである。
シュメモリに記憶されたベクタテーブルのデータをラン
ダムアクセスメモリに転送し、フラッシュメモリに記憶
されたベクタテーブルのデータの転送終了後にフラッシ
ュメモリに記憶されたデータを消去し、フラッシュメモ
リに記憶されたデータを消去する処理における暴走が検
出された場合に、フラッシュメモリからベクタテーブル
のデータが消去されているか否かを判断し、フラッシュ
メモリからベクタテーブルのデータが消去されていると
判断された場合、ベクタテーブルのデータをフラッシュ
メモリに再転送するものである。
【0037】この発明に係るフラッシュメモリ内蔵マイ
クロコンピュータは、プログラムまたはデータを記憶す
るランダムアクセスメモリと、プログラムまたはデータ
を記憶するフラッシュメモリと、フラッシュメモリへの
データの書込み、およびフラッシュメモリに記憶された
データの消去を行うフラッシュメモリ制御手段と、ラン
ダムアクセスメモリに記憶されたプログラムに従って、
ランダムアクセスメモリまたはフラッシュメモリに記憶
されたプログラムまたはデータの処理を行う中央演算処
理装置と、フラッシュメモリに記憶されたデータを消去
する処理における暴走を検出する暴走検出手段とを備
え、フラッシュメモリに記憶されたデータを消去する前
に、暴走検出手段による暴走検出時の割込ベクタアドレ
スをランダムアクセスメモリに記憶させ、暴走検出手段
により暴走が検出された場合に、その割込ベクタアドレ
スが示すアドレスから処理を再開するものである。
クロコンピュータは、プログラムまたはデータを記憶す
るランダムアクセスメモリと、プログラムまたはデータ
を記憶するフラッシュメモリと、フラッシュメモリへの
データの書込み、およびフラッシュメモリに記憶された
データの消去を行うフラッシュメモリ制御手段と、ラン
ダムアクセスメモリに記憶されたプログラムに従って、
ランダムアクセスメモリまたはフラッシュメモリに記憶
されたプログラムまたはデータの処理を行う中央演算処
理装置と、フラッシュメモリに記憶されたデータを消去
する処理における暴走を検出する暴走検出手段とを備
え、フラッシュメモリに記憶されたデータを消去する前
に、暴走検出手段による暴走検出時の割込ベクタアドレ
スをランダムアクセスメモリに記憶させ、暴走検出手段
により暴走が検出された場合に、その割込ベクタアドレ
スが示すアドレスから処理を再開するものである。
【0038】
【発明の実施の形態】以下、この発明の実施の一形態を
説明する。 実施の形態1.図1は、この発明の実施の形態1による
フラッシュメモリ内蔵マイクロコンピュータの構成の一
部を示すブロック図である。なお、図1に示す回路は、
図18に示す従来のフラッシュメモリ内蔵マイクロコン
ピュータの回路に対応するものであり、その他の部分は
図17に示すものと同様であるので、その説明を省略す
る。
説明する。 実施の形態1.図1は、この発明の実施の形態1による
フラッシュメモリ内蔵マイクロコンピュータの構成の一
部を示すブロック図である。なお、図1に示す回路は、
図18に示す従来のフラッシュメモリ内蔵マイクロコン
ピュータの回路に対応するものであり、その他の部分は
図17に示すものと同様であるので、その説明を省略す
る。
【0039】図1において、515Aは、コマンドレジ
スタ514に記憶されたコマンドをデコードし、そのコ
マンドに対応する信号をフラッシュメモリ制御回路(フ
ラッシュメモリ制御手段)504の消去/書込制御回路
517に出力するとともに、コマンドレジスタ514に
記憶されたコマンドがオートイレーズコマンドである場
合、オートイレーズコマンド受付信号を、信号線108
を介してシーケンサ回路103に出力し、後述の消去実
行信号が信号線114を介して供給されるとオートイレ
ーズ信号を、信号線115を介してフラッシュメモリ制
御回路504に出力するデコード回路である。
スタ514に記憶されたコマンドをデコードし、そのコ
マンドに対応する信号をフラッシュメモリ制御回路(フ
ラッシュメモリ制御手段)504の消去/書込制御回路
517に出力するとともに、コマンドレジスタ514に
記憶されたコマンドがオートイレーズコマンドである場
合、オートイレーズコマンド受付信号を、信号線108
を介してシーケンサ回路103に出力し、後述の消去実
行信号が信号線114を介して供給されるとオートイレ
ーズ信号を、信号線115を介してフラッシュメモリ制
御回路504に出力するデコード回路である。
【0040】103は、コマンドデコーダ513からオ
ートイレーズコマンド受付信号が供給されると、信号線
109および外部端子1を介して図示せぬ外部装置に、
データの消去の実行を確認するための消去実行確認信号
を出力するとともに、外部装置から信号線110および
外部端子2を介して入力される応答信号を検出し、所定
の時間内に応答信号を検出した場合、信号線114を介
してコマンドデコーダ513に消去実行信号を出力する
シーケンサ回路(応答検出手段)である。なお、シーケ
ンサ回路103は、消去実行確認信号を出力すると同時
に、信号線111を介してタイマ104に制御信号を供
給し、タイマ104に計時を開始させ、応答信号を検出
すると、計時を停止させる。また、シーケンサ回路10
3は、所定の時間内に応答信号を検出しなかった場合、
タイマ104からのオーバーフロー信号(後述)を受け
取ると信号線113を介してリセット信号を出力する。
ートイレーズコマンド受付信号が供給されると、信号線
109および外部端子1を介して図示せぬ外部装置に、
データの消去の実行を確認するための消去実行確認信号
を出力するとともに、外部装置から信号線110および
外部端子2を介して入力される応答信号を検出し、所定
の時間内に応答信号を検出した場合、信号線114を介
してコマンドデコーダ513に消去実行信号を出力する
シーケンサ回路(応答検出手段)である。なお、シーケ
ンサ回路103は、消去実行確認信号を出力すると同時
に、信号線111を介してタイマ104に制御信号を供
給し、タイマ104に計時を開始させ、応答信号を検出
すると、計時を停止させる。また、シーケンサ回路10
3は、所定の時間内に応答信号を検出しなかった場合、
タイマ104からのオーバーフロー信号(後述)を受け
取ると信号線113を介してリセット信号を出力する。
【0041】104は、シーケンサ回路103からの制
御信号に対応して計時を開始または停止するとともに、
計時を開始してから所定の時間が経過した場合において
は、信号線112を介してシーケンサ回路103にオー
バーフロー信号を出力するタイマ(応答検出手段)であ
る。
御信号に対応して計時を開始または停止するとともに、
計時を開始してから所定の時間が経過した場合において
は、信号線112を介してシーケンサ回路103にオー
バーフロー信号を出力するタイマ(応答検出手段)であ
る。
【0042】図1に示す他の構成要素は、図17または
図18に示すものと同様であるので、その説明を省略す
る。
図18に示すものと同様であるので、その説明を省略す
る。
【0043】次に動作について説明する。図2は、外部
装置からの応答信号が所定の時間内に検出された場合、
すなわち消去実行が許可された場合の動作を説明するタ
イミングチャートであり、図3は、外部装置からの応答
信号が所定の時間内に検出されなかった場合、すなわち
消去実行が許可されなかった場合の動作を説明するタイ
ミングチャートである。
装置からの応答信号が所定の時間内に検出された場合、
すなわち消去実行が許可された場合の動作を説明するタ
イミングチャートであり、図3は、外部装置からの応答
信号が所定の時間内に検出されなかった場合、すなわち
消去実行が許可されなかった場合の動作を説明するタイ
ミングチャートである。
【0044】なお、データ消去時の動作以外の動作は図
17の装置と同様であるので、ここではデータ消去時の
動作のみを説明する。
17の装置と同様であるので、ここではデータ消去時の
動作のみを説明する。
【0045】まず、図2および図3に示すように、CP
U502は、データバスおよびアドレスバス511のデ
ータバスを介して、オートイレーズコマンドを2回連続
してコマンドデコーダ513のコマンドレジスタ514
に書き込む。
U502は、データバスおよびアドレスバス511のデ
ータバスを介して、オートイレーズコマンドを2回連続
してコマンドデコーダ513のコマンドレジスタ514
に書き込む。
【0046】次に、コマンドデコーダ513のデコード
回路515Aは、コマンドレジスタ514にオートイレ
ーズコマンドが書き込まれると、信号線108を介して
シーケンサ回路103にオートイレーズ受付信号を供給
する(時刻T1)。
回路515Aは、コマンドレジスタ514にオートイレ
ーズコマンドが書き込まれると、信号線108を介して
シーケンサ回路103にオートイレーズ受付信号を供給
する(時刻T1)。
【0047】シーケンサ回路103は、そのオートイレ
ーズ受付信号を受け取ると、信号線109および外部端
子1を介して図示せぬ外部装置に消去実行確認信号を出
力するとともに、信号線111を介してタイマ104に
制御信号を供給し、タイマ104による計時を開始させ
る(時刻T2)。
ーズ受付信号を受け取ると、信号線109および外部端
子1を介して図示せぬ外部装置に消去実行確認信号を出
力するとともに、信号線111を介してタイマ104に
制御信号を供給し、タイマ104による計時を開始させ
る(時刻T2)。
【0048】そして、図2に示すように、タイマ104
が所定の時間まで計時する前に(時刻T3)、外部装置
から外部端子2および信号線110を介して、消去実行
許可を表す応答信号がシーケンサ回路103に入力され
た場合、シーケンサ回路103は、タイマ104による
計時を停止させるとともに、信号線114を介して、消
去実行信号をコマンドデコーダ513のデコード回路5
15Aに供給する(時刻T4)。コマンドデコーダ51
3のデコード回路515Aは、信号線115を介してフ
ラッシュメモリ制御回路504にオートイレーズ信号を
供給し、データの消去を実行させる。
が所定の時間まで計時する前に(時刻T3)、外部装置
から外部端子2および信号線110を介して、消去実行
許可を表す応答信号がシーケンサ回路103に入力され
た場合、シーケンサ回路103は、タイマ104による
計時を停止させるとともに、信号線114を介して、消
去実行信号をコマンドデコーダ513のデコード回路5
15Aに供給する(時刻T4)。コマンドデコーダ51
3のデコード回路515Aは、信号線115を介してフ
ラッシュメモリ制御回路504にオートイレーズ信号を
供給し、データの消去を実行させる。
【0049】一方、図3に示すように、タイマ104が
所定の時間まで計時する前に、外部装置から外部端子2
および信号線110を介して、消去実行許可を表す応答
信号がシーケンサ回路103に入力されない場合、タイ
マ104は、信号線112を介してシーケンサ回路10
3にオーバーフロー信号を供給する。シーケンサ回路1
03は、そのオーバーフロー信号を受け取ると、現在実
行中の処理が誤動作によるものと判断して、信号線11
3を介して、リセット信号を出力し、CPU502から
のオートイレーズコマンドを無効にする(時刻T5)。
所定の時間まで計時する前に、外部装置から外部端子2
および信号線110を介して、消去実行許可を表す応答
信号がシーケンサ回路103に入力されない場合、タイ
マ104は、信号線112を介してシーケンサ回路10
3にオーバーフロー信号を供給する。シーケンサ回路1
03は、そのオーバーフロー信号を受け取ると、現在実
行中の処理が誤動作によるものと判断して、信号線11
3を介して、リセット信号を出力し、CPU502から
のオートイレーズコマンドを無効にする(時刻T5)。
【0050】以上のように、この実施の形態1によれ
ば、フラッシュメモリ503に書き込むデータを供給す
る外部装置からの応答があった場合にのみデータの消去
を実行するようにして、プログラムの暴走などに起因す
る誤動作によってフラッシュメモリ503の記憶内容が
消去されないようにできるという効果が得られる。
ば、フラッシュメモリ503に書き込むデータを供給す
る外部装置からの応答があった場合にのみデータの消去
を実行するようにして、プログラムの暴走などに起因す
る誤動作によってフラッシュメモリ503の記憶内容が
消去されないようにできるという効果が得られる。
【0051】なお、上述の外部装置は、例えば外部端子
1,2に接続されるインタフェース回路を有し、消去実
行確認信号を受信すると、それに対応して応答信号を送
信するものである。また、応答信号をLレベルまたはH
レベルのいずれかの一定レベルの信号とすることによ
り、ノイズなどに起因する誤作動を低減することができ
る。
1,2に接続されるインタフェース回路を有し、消去実
行確認信号を受信すると、それに対応して応答信号を送
信するものである。また、応答信号をLレベルまたはH
レベルのいずれかの一定レベルの信号とすることによ
り、ノイズなどに起因する誤作動を低減することができ
る。
【0052】実施の形態2.図4は、この発明の実施の
形態2によるフラッシュメモリ内蔵マイクロコンピュー
タの構成の一部を示すブロック図である。なお、図4に
示す回路は、図18に示す従来のフラッシュメモリ内蔵
マイクロコンピュータの回路に対応するものであり、そ
の他の部分は図17に示すものと同様であるので、その
説明を省略する。
形態2によるフラッシュメモリ内蔵マイクロコンピュー
タの構成の一部を示すブロック図である。なお、図4に
示す回路は、図18に示す従来のフラッシュメモリ内蔵
マイクロコンピュータの回路に対応するものであり、そ
の他の部分は図17に示すものと同様であるので、その
説明を省略する。
【0053】201は、コマンドデコーダ513からオ
ートイレーズコマンド受付信号が供給されると、ダイレ
クトメモリアクセスコントローラ205に転送開始信号
を供給してフラッシュメモリ503の所定の記憶領域2
02に記憶されているデータをRAM505の所定の記
憶領域204に転送させた後、その記憶領域202のデ
ータの消去を実行させ、さらにその後、信号線109お
よび外部端子1を介して図示せぬ外部装置に、データの
消去の実行を確認するための消去実行確認信号を出力す
るとともに、外部装置から信号線110および外部端子
2を介して入力される応答信号を検出し、消去実行確認
信号を出力した時点から所定の時間内に応答信号を検出
した場合、信号線114を介してコマンドデコーダ51
3に残りの記憶領域203の記憶内容を消去するために
消去実行信号を出力するシーケンサ回路(応答検出手
段)である。
ートイレーズコマンド受付信号が供給されると、ダイレ
クトメモリアクセスコントローラ205に転送開始信号
を供給してフラッシュメモリ503の所定の記憶領域2
02に記憶されているデータをRAM505の所定の記
憶領域204に転送させた後、その記憶領域202のデ
ータの消去を実行させ、さらにその後、信号線109お
よび外部端子1を介して図示せぬ外部装置に、データの
消去の実行を確認するための消去実行確認信号を出力す
るとともに、外部装置から信号線110および外部端子
2を介して入力される応答信号を検出し、消去実行確認
信号を出力した時点から所定の時間内に応答信号を検出
した場合、信号線114を介してコマンドデコーダ51
3に残りの記憶領域203の記憶内容を消去するために
消去実行信号を出力するシーケンサ回路(応答検出手
段)である。
【0054】なお、シーケンサ回路201は、所定の時
間内に応答信号を検出しなかった場合、信号線113を
介してリセット信号を出力する。また、シーケンサ回路
201は、消去実行確認信号を出力すると同時に、信号
線111を介してタイマ104に制御信号を供給し、タ
イマ104に計時を開始させ、応答信号を検出すると、
計時を停止させる。
間内に応答信号を検出しなかった場合、信号線113を
介してリセット信号を出力する。また、シーケンサ回路
201は、消去実行確認信号を出力すると同時に、信号
線111を介してタイマ104に制御信号を供給し、タ
イマ104に計時を開始させ、応答信号を検出すると、
計時を停止させる。
【0055】505は少なくとも4キロバイトの記憶領
域を有するRAMであり、205は転送開始信号を供給
されると、フラッシュメモリ503の所定の記憶領域2
02に記憶されているデータをRAM505の所定の記
憶領域204に転送するダイレクトメモリアクセスコン
トローラ(データ転送手段:以下、DMACという)で
ある。なお、DMAC205は、CPU(再転送手段)
502を介さず直接にメモリに対するデータの入出力が
可能である回路であり、転送元の先頭アドレスと、転送
バイト数および転送先の先頭アドレスを設定すると、転
送元の先頭アドレスから転送バイト数分のデータを、転
送元の先頭アドレスから1バイト単位で順次読み出して
転送先の先頭アドレスから順次記憶させる。
域を有するRAMであり、205は転送開始信号を供給
されると、フラッシュメモリ503の所定の記憶領域2
02に記憶されているデータをRAM505の所定の記
憶領域204に転送するダイレクトメモリアクセスコン
トローラ(データ転送手段:以下、DMACという)で
ある。なお、DMAC205は、CPU(再転送手段)
502を介さず直接にメモリに対するデータの入出力が
可能である回路であり、転送元の先頭アドレスと、転送
バイト数および転送先の先頭アドレスを設定すると、転
送元の先頭アドレスから転送バイト数分のデータを、転
送元の先頭アドレスから1バイト単位で順次読み出して
転送先の先頭アドレスから順次記憶させる。
【0056】なお、図4のその他の構成要素は、実施の
形態1(図1)のものと同様であるので、その説明を省
略する。
形態1(図1)のものと同様であるので、その説明を省
略する。
【0057】次に動作について説明する。図5は、外部
装置からの応答信号が所定の時間内に検出された場合、
すなわち消去実行が許可された場合の動作を説明するタ
イミングチャートである。
装置からの応答信号が所定の時間内に検出された場合、
すなわち消去実行が許可された場合の動作を説明するタ
イミングチャートである。
【0058】なお、データ消去時の動作以外の動作は図
1の装置と同様であるので、ここではデータ消去時の動
作だけを説明する。
1の装置と同様であるので、ここではデータ消去時の動
作だけを説明する。
【0059】まず、図5に示すように、CPU502
は、データバスおよびアドレスバス511のデータバス
を介して、オートイレーズコマンドを2回連続してコマ
ンドデコーダ513のコマンドレジスタ514に書き込
む。
は、データバスおよびアドレスバス511のデータバス
を介して、オートイレーズコマンドを2回連続してコマ
ンドデコーダ513のコマンドレジスタ514に書き込
む。
【0060】次に、コマンドデコーダ513のデコード
回路515Aは、オートイレーズコマンドが書き込まれ
ると、信号線108を介してシーケンサ回路201にオ
ートイレーズ受付信号を供給する(時刻T1)。
回路515Aは、オートイレーズコマンドが書き込まれ
ると、信号線108を介してシーケンサ回路201にオ
ートイレーズ受付信号を供給する(時刻T1)。
【0061】シーケンサ回路201は、そのオートイレ
ーズ受付信号を受け取ると、転送開始信号をDMAC2
05に供給し(時刻T2)、フラッシュメモリ503の
所定の記憶領域202(今の場合、アドレス「1000
H」からアドレス「17FFH」までの記憶領域)に記
憶されている2キロバイトのデータをRAM505の所
定の記憶領域204(今の場合、アドレス「0080
H」からアドレス「087FH」までの記憶領域)に転
送させる。
ーズ受付信号を受け取ると、転送開始信号をDMAC2
05に供給し(時刻T2)、フラッシュメモリ503の
所定の記憶領域202(今の場合、アドレス「1000
H」からアドレス「17FFH」までの記憶領域)に記
憶されている2キロバイトのデータをRAM505の所
定の記憶領域204(今の場合、アドレス「0080
H」からアドレス「087FH」までの記憶領域)に転
送させる。
【0062】DMAC205は、データの転送が完了す
ると、信号線207を介してシーケンサ回路201に転
送完了信号を供給する(時刻T6)。シーケンサ回路2
01は、転送完了信号を受け取ると、信号線114を介
してコマンドデコーダ513のデコード回路515Aに
消去実行信号を供給する。
ると、信号線207を介してシーケンサ回路201に転
送完了信号を供給する(時刻T6)。シーケンサ回路2
01は、転送完了信号を受け取ると、信号線114を介
してコマンドデコーダ513のデコード回路515Aに
消去実行信号を供給する。
【0063】コマンドデコーダ513のデコード回路5
15Aは、その消去実行信号を受け取ると、フラッシュ
メモリ503の上記所定の記憶領域(第1ブロック)2
02に記憶されているデータを消去させるオートイレー
ズ信号(AUTO1)をフラッシュメモリ制御回路50
4に供給する(時刻T7)。ここでまず、記憶領域(第
1ブロック)202に記憶されているデータが消去され
る。
15Aは、その消去実行信号を受け取ると、フラッシュ
メモリ503の上記所定の記憶領域(第1ブロック)2
02に記憶されているデータを消去させるオートイレー
ズ信号(AUTO1)をフラッシュメモリ制御回路50
4に供給する(時刻T7)。ここでまず、記憶領域(第
1ブロック)202に記憶されているデータが消去され
る。
【0064】第1ブロック202に記憶されているデー
タを消去すると、フラッシュメモリ制御回路504は、
信号線208を介してシーケンサ回路201にオートイ
レーズ完了信号を供給する(時刻T8)。
タを消去すると、フラッシュメモリ制御回路504は、
信号線208を介してシーケンサ回路201にオートイ
レーズ完了信号を供給する(時刻T8)。
【0065】シーケンサ回路201は、このオートイレ
ーズ完了信号を受け取ると、消去実行確認信号を、信号
線109および外部端子1を介して図示せぬ外部装置に
出力するとともに、信号線111を介してタイマ104
に制御信号を供給し、タイマ104による計時を開始さ
せる(時刻T9)。
ーズ完了信号を受け取ると、消去実行確認信号を、信号
線109および外部端子1を介して図示せぬ外部装置に
出力するとともに、信号線111を介してタイマ104
に制御信号を供給し、タイマ104による計時を開始さ
せる(時刻T9)。
【0066】そして、タイマ104が所定の時間まで計
時する前に(時刻T10)、外部装置から外部端子2お
よび信号線110を介して、消去実行許可を表す応答信
号がシーケンサ回路201に入力された場合、シーケン
サ回路201は、タイマ104による計時を停止させる
とともに、信号線114を介して、フラッシュメモリ5
03の残りの記憶領域(第2ブロック)203に記憶さ
れているデータを消去させる消去実行信号をコマンドデ
コーダ513のデコード回路515Aに供給する(時刻
T11)。デコード回路515Aは、信号線115を介
してフラッシュメモリ制御回路504にオートイレーズ
信号を供給し、第2ブロック203に記憶されているデ
ータの消去を実行させる。
時する前に(時刻T10)、外部装置から外部端子2お
よび信号線110を介して、消去実行許可を表す応答信
号がシーケンサ回路201に入力された場合、シーケン
サ回路201は、タイマ104による計時を停止させる
とともに、信号線114を介して、フラッシュメモリ5
03の残りの記憶領域(第2ブロック)203に記憶さ
れているデータを消去させる消去実行信号をコマンドデ
コーダ513のデコード回路515Aに供給する(時刻
T11)。デコード回路515Aは、信号線115を介
してフラッシュメモリ制御回路504にオートイレーズ
信号を供給し、第2ブロック203に記憶されているデ
ータの消去を実行させる。
【0067】一方、タイマ104が所定の時間まで計時
する前に、外部装置から消去実行許可を表す応答信号が
シーケンサ回路201に入力されない場合、タイマ10
4は、信号線112を介してシーケンサ回路201にオ
ーバーフロー信号を供給する。シーケンサ回路201
は、そのオーバーフロー信号を受け取ると、現在実行中
の処理が誤動作によるものと判断して、信号線113を
介して、リセット信号を出力し、CPU502からのオ
ートイレーズコマンドを無効にする。
する前に、外部装置から消去実行許可を表す応答信号が
シーケンサ回路201に入力されない場合、タイマ10
4は、信号線112を介してシーケンサ回路201にオ
ーバーフロー信号を供給する。シーケンサ回路201
は、そのオーバーフロー信号を受け取ると、現在実行中
の処理が誤動作によるものと判断して、信号線113を
介して、リセット信号を出力し、CPU502からのオ
ートイレーズコマンドを無効にする。
【0068】この場合、フラッシュメモリ503の第1
ブロック202に記憶されているデータは消去されてし
まうが、DMAC205により転送されたデータがRA
M505の記憶領域204に記憶されているので、この
RAM505の記憶領域204に記憶されているデータ
をフラッシュメモリ503の第1ブロック202に再転
送することにより、フラッシュメモリ503の記憶内容
を、オートイレーズコマンド実行前の状態に戻すことが
できる。
ブロック202に記憶されているデータは消去されてし
まうが、DMAC205により転送されたデータがRA
M505の記憶領域204に記憶されているので、この
RAM505の記憶領域204に記憶されているデータ
をフラッシュメモリ503の第1ブロック202に再転
送することにより、フラッシュメモリ503の記憶内容
を、オートイレーズコマンド実行前の状態に戻すことが
できる。
【0069】例えば、ブートプログラムに、RAM50
5の記憶領域204に記憶されているデータを読み出
し、フラッシュメモリ503の元の記憶領域202に書
き込むルーチンを予め設けておき、オートイレーズ中止
後に割り込み処理などとしてCPU502がそのルーチ
ンを実行することによりデータの再転送を行うことがで
きる。
5の記憶領域204に記憶されているデータを読み出
し、フラッシュメモリ503の元の記憶領域202に書
き込むルーチンを予め設けておき、オートイレーズ中止
後に割り込み処理などとしてCPU502がそのルーチ
ンを実行することによりデータの再転送を行うことがで
きる。
【0070】以上のように、この実施の形態2によれ
ば、フラッシュメモリ503に記憶されているデータを
書き換える場合に、フラッシュメモリ503の所定の記
憶領域202に記憶されたデータをRAM505に転送
した後に消去し、その後に、フラッシュメモリ503に
書き込むデータを供給する外部装置からの応答があった
場合にのみ残りの記憶領域203に記憶されたデータの
消去を実行し、応答のない場合にはRAM505に転送
したデータをフラッシュメモリ503の元の記憶領域2
02に再転送するので、ユーザにより誤って実行された
オートイレーズ動作を途中で中止させることができると
いう効果が得られる。
ば、フラッシュメモリ503に記憶されているデータを
書き換える場合に、フラッシュメモリ503の所定の記
憶領域202に記憶されたデータをRAM505に転送
した後に消去し、その後に、フラッシュメモリ503に
書き込むデータを供給する外部装置からの応答があった
場合にのみ残りの記憶領域203に記憶されたデータの
消去を実行し、応答のない場合にはRAM505に転送
したデータをフラッシュメモリ503の元の記憶領域2
02に再転送するので、ユーザにより誤って実行された
オートイレーズ動作を途中で中止させることができると
いう効果が得られる。
【0071】なお、上記実施の形態2においては、フラ
ッシュメモリ503からRAM505へデータを転送す
る回路としてDMAC205を使用しているが、特にD
MACに限定されるものではなく、他の回路でもよい。
ッシュメモリ503からRAM505へデータを転送す
る回路としてDMAC205を使用しているが、特にD
MACに限定されるものではなく、他の回路でもよい。
【0072】また、フラッシュメモリ503からRAM
505へ転送するデータのサイズを2キロバイトとして
いるが、このデータのサイズは、2キロバイトに限定さ
れるものではない。
505へ転送するデータのサイズを2キロバイトとして
いるが、このデータのサイズは、2キロバイトに限定さ
れるものではない。
【0073】実施の形態3.この発明の実施の形態3
は、RAM505からフラッシュメモリ503へのデー
タの再転送を行う再転送回路を実施の形態2(図4)に
追加したものである。図6は、その再転送回路(再転送
手段)601の構成を示すブロック図である。なお、実
施の形態3のその他の構成要素は、実施の形態2のもの
と同様であるので、その説明を省略する。
は、RAM505からフラッシュメモリ503へのデー
タの再転送を行う再転送回路を実施の形態2(図4)に
追加したものである。図6は、その再転送回路(再転送
手段)601の構成を示すブロック図である。なお、実
施の形態3のその他の構成要素は、実施の形態2のもの
と同様であるので、その説明を省略する。
【0074】302は、信号線307を介して供給され
る読出先頭アドレスおよび読出最終アドレスに基づい
て、最初に読出先頭アドレスを読出アドレスに設定し、
以後、信号線319を介してアドレスインクリメント信
号が供給される毎に読出アドレスを読出最終アドレスに
到達するまでインクリメントし、その読出アドレスを、
信号線308を介してRAM505に供給するRAMリ
ードアドレス発生回路であり、303は、信号線311
を介して供給される書込先頭アドレスおよび書込最終ア
ドレスに基づいて、最初に書込先頭アドレスを書込アド
レスに設定し、以後、信号線320を介してアドレスイ
ンクリメント信号が供給される毎に書込アドレスを書込
最終アドレスに到達するまでインクリメントし、その書
込アドレスを、信号線312を介してフラッシュメモリ
503に供給するROMライトアドレス発生回路であ
る。
る読出先頭アドレスおよび読出最終アドレスに基づい
て、最初に読出先頭アドレスを読出アドレスに設定し、
以後、信号線319を介してアドレスインクリメント信
号が供給される毎に読出アドレスを読出最終アドレスに
到達するまでインクリメントし、その読出アドレスを、
信号線308を介してRAM505に供給するRAMリ
ードアドレス発生回路であり、303は、信号線311
を介して供給される書込先頭アドレスおよび書込最終ア
ドレスに基づいて、最初に書込先頭アドレスを書込アド
レスに設定し、以後、信号線320を介してアドレスイ
ンクリメント信号が供給される毎に書込アドレスを書込
最終アドレスに到達するまでインクリメントし、その書
込アドレスを、信号線312を介してフラッシュメモリ
503に供給するROMライトアドレス発生回路であ
る。
【0075】301は、RAMリードアドレス発生回路
302とROMライトアドレス発生回路303を制御す
るRAMリード/ROMライト制御回路である。304
は、RAM505からフラッシュメモリ503に転送さ
れるデータを一時的に記憶するROMライトデータラッ
チ回路であり、305は、RAM505からフラッシュ
メモリ503に再転送されたデータがプログラムベリフ
ァイ時において読み出されたときにそのデータを一時的
に記憶するROMベリファイデータラッチ回路である。
306はROMライトデータラッチ回路304に記憶さ
れたデータとROMベリファイデータラッチ回路305
に記憶されたデータとを比較し、その比較の結果をRA
Mリード/ROMライト制御回路301に出力する比較
器である。
302とROMライトアドレス発生回路303を制御す
るRAMリード/ROMライト制御回路である。304
は、RAM505からフラッシュメモリ503に転送さ
れるデータを一時的に記憶するROMライトデータラッ
チ回路であり、305は、RAM505からフラッシュ
メモリ503に再転送されたデータがプログラムベリフ
ァイ時において読み出されたときにそのデータを一時的
に記憶するROMベリファイデータラッチ回路である。
306はROMライトデータラッチ回路304に記憶さ
れたデータとROMベリファイデータラッチ回路305
に記憶されたデータとを比較し、その比較の結果をRA
Mリード/ROMライト制御回路301に出力する比較
器である。
【0076】次に動作について説明する。再転送回路6
01は、外部装置からの応答信号が検出されなかった場
合においてだけ動作するので、その場合における動作に
ついて説明する。なお、その他の動作は、実施の形態2
のものと同様であるので、その説明を省略する。図7
は、外部装置からの応答信号が検出されなかった場合に
おける動作を説明するフローチャートであり、図8は、
外部装置からの応答信号が検出されなかった場合におけ
る動作を説明するタイミングチャートである。
01は、外部装置からの応答信号が検出されなかった場
合においてだけ動作するので、その場合における動作に
ついて説明する。なお、その他の動作は、実施の形態2
のものと同様であるので、その説明を省略する。図7
は、外部装置からの応答信号が検出されなかった場合に
おける動作を説明するフローチャートであり、図8は、
外部装置からの応答信号が検出されなかった場合におけ
る動作を説明するタイミングチャートである。
【0077】まず、実施の形態2において説明したよう
にフラッシュメモリ503の記憶領域202に記憶され
たデータがRAM505の記憶領域204に転送され、
フラッシュメモリ503の記憶領域202に記憶された
データが消去された後、外部装置からの応答信号が検出
されなかった場合、実施の形態3におけるタイマ104
は信号線112を介してRAMリード/ROMライト制
御回路301にオーバーフロー信号を供給する。
にフラッシュメモリ503の記憶領域202に記憶され
たデータがRAM505の記憶領域204に転送され、
フラッシュメモリ503の記憶領域202に記憶された
データが消去された後、外部装置からの応答信号が検出
されなかった場合、実施の形態3におけるタイマ104
は信号線112を介してRAMリード/ROMライト制
御回路301にオーバーフロー信号を供給する。
【0078】そして、RAMリード/ROMライト制御
回路301は、そのオーバーフロー信号を受け取ると、
図7および図8に示す、RAM505に転送されたデー
タをフラッシュメモリ503に再転送する動作を開始す
る(時刻T5)。
回路301は、そのオーバーフロー信号を受け取ると、
図7および図8に示す、RAM505に転送されたデー
タをフラッシュメモリ503に再転送する動作を開始す
る(時刻T5)。
【0079】まず、図7のステップST1において、R
AMリード/ROMライト制御回路301は、信号線3
07を介してRAMリードアドレス発生回路302に読
出先頭アドレスおよび読出最終アドレスを供給するとと
もに、信号線311を介してROMライトアドレス発生
回路303に書込先頭アドレスおよび書込最終アドレス
を供給する(時刻T11)。
AMリード/ROMライト制御回路301は、信号線3
07を介してRAMリードアドレス発生回路302に読
出先頭アドレスおよび読出最終アドレスを供給するとと
もに、信号線311を介してROMライトアドレス発生
回路303に書込先頭アドレスおよび書込最終アドレス
を供給する(時刻T11)。
【0080】例えば、図4に示すように、フラッシュメ
モリ503のアドレス「1000H」〜アドレス「17
FFH」の記憶領域202から、RAM505のアドレ
ス「0080H」〜アドレス「087FH」の記憶領域
204に転送されたデータを再転送する場合、RAMリ
ード/ROMライト制御回路301は、読出先頭アドレ
スとして「0080H」を、読出最終アドレスとして
「087FH」をRAMリードアドレス発生回路302
に供給するとともに、書込先頭アドレスとして「100
0H」を、書込最終アドレスとして「17FFH」をR
OMライトアドレス発生回路303に供給する。
モリ503のアドレス「1000H」〜アドレス「17
FFH」の記憶領域202から、RAM505のアドレ
ス「0080H」〜アドレス「087FH」の記憶領域
204に転送されたデータを再転送する場合、RAMリ
ード/ROMライト制御回路301は、読出先頭アドレ
スとして「0080H」を、読出最終アドレスとして
「087FH」をRAMリードアドレス発生回路302
に供給するとともに、書込先頭アドレスとして「100
0H」を、書込最終アドレスとして「17FFH」をR
OMライトアドレス発生回路303に供給する。
【0081】次に、ステップST2において、RAMリ
ードアドレス発生回路302が読出アドレスをRAM5
05に供給するとともに、RAMリード/ROMライト
制御回路301がRAMリード信号をRAM505に供
給すると、その読出アドレスに記憶されているデータ
が、データバスおよびアドレスバス511のうちのデー
タバスに読み出される(時刻T12)。
ードアドレス発生回路302が読出アドレスをRAM5
05に供給するとともに、RAMリード/ROMライト
制御回路301がRAMリード信号をRAM505に供
給すると、その読出アドレスに記憶されているデータ
が、データバスおよびアドレスバス511のうちのデー
タバスに読み出される(時刻T12)。
【0082】一方、ステップST3において、ROMラ
イトアドレス発生回路303が書込アドレスをフラッシ
ュメモリ503に供給するとともに、RAMリード/R
OMライト制御回路301がプログラムコマンドをコマ
ンドデコーダ513に供給すると、データバスおよびア
ドレスバス511のうちのデータバスに読み出されたデ
ータが、フラッシュメモリ503の書込アドレスが示す
記憶領域に記憶される(時刻T13)。なお、データの
書込み(プログラム動作)は、出力イネーブル信号(O
Eバー)がHレベルであり、かつチップイネーブル信号
(CEバー)がLレベルである場合において、ライトイ
ネーブル信号(WEバー)がLレベルからHレベルへの
立ち上がり時に行われる。
イトアドレス発生回路303が書込アドレスをフラッシ
ュメモリ503に供給するとともに、RAMリード/R
OMライト制御回路301がプログラムコマンドをコマ
ンドデコーダ513に供給すると、データバスおよびア
ドレスバス511のうちのデータバスに読み出されたデ
ータが、フラッシュメモリ503の書込アドレスが示す
記憶領域に記憶される(時刻T13)。なお、データの
書込み(プログラム動作)は、出力イネーブル信号(O
Eバー)がHレベルであり、かつチップイネーブル信号
(CEバー)がLレベルである場合において、ライトイ
ネーブル信号(WEバー)がLレベルからHレベルへの
立ち上がり時に行われる。
【0083】そして、RAMリード/ROMライト制御
回路301は、信号線315を介してROMライトデー
タラッチ回路304にデータラッチ信号を供給する。R
OMライトデータラッチ回路304は、そのデータラッ
チ信号を受け取ると、データバスに読み出されているデ
ータを記憶する(時刻T14)。
回路301は、信号線315を介してROMライトデー
タラッチ回路304にデータラッチ信号を供給する。R
OMライトデータラッチ回路304は、そのデータラッ
チ信号を受け取ると、データバスに読み出されているデ
ータを記憶する(時刻T14)。
【0084】次にステップST4において、ROMライ
トアドレス発生回路303が書込アドレスをフラッシュ
メモリ503に供給するとともに、RAMリード/RO
Mライト制御回路301がプログラムベリファイコマン
ドをコマンドデコーダ513に供給すると、ステップS
T3において記憶されたデータが、データバスおよびア
ドレスバス511のうちのデータバスに読み出される
(時刻T15)。なお、プログラムベリファイ動作は、
ライトイネーブル信号(WEバー)がHレベルであり、
かつチップイネーブル信号(CEバー)がLレベルであ
る場合において、出力イネーブル信号(OEバー)のH
レベルからLレベルへの立ち下がり時に行われる。
トアドレス発生回路303が書込アドレスをフラッシュ
メモリ503に供給するとともに、RAMリード/RO
Mライト制御回路301がプログラムベリファイコマン
ドをコマンドデコーダ513に供給すると、ステップS
T3において記憶されたデータが、データバスおよびア
ドレスバス511のうちのデータバスに読み出される
(時刻T15)。なお、プログラムベリファイ動作は、
ライトイネーブル信号(WEバー)がHレベルであり、
かつチップイネーブル信号(CEバー)がLレベルであ
る場合において、出力イネーブル信号(OEバー)のH
レベルからLレベルへの立ち下がり時に行われる。
【0085】そして、RAMリード/ROMライト制御
回路301は、信号線316を介してROMベリファイ
データラッチ回路305にデータラッチ信号を供給す
る。ROMベリファイデータラッチ回路305は、その
データラッチ信号を受け取ると、データバスに読み出さ
れているデータを記憶する(時刻T16)。次に、RA
Mリード/ROMライト制御回路301は、信号線31
7を介して比較器306に比較実行信号を供給する。比
較器306は、比較実行信号を受け取ると、ROMライ
トデータラッチ回路304に記憶されたデータとROM
ベリファイデータラッチ回路305に記憶されたデータ
とを比較し、その比較の結果をRAMリード/ROMラ
イト制御回路301に出力する(時刻T17)。
回路301は、信号線316を介してROMベリファイ
データラッチ回路305にデータラッチ信号を供給す
る。ROMベリファイデータラッチ回路305は、その
データラッチ信号を受け取ると、データバスに読み出さ
れているデータを記憶する(時刻T16)。次に、RA
Mリード/ROMライト制御回路301は、信号線31
7を介して比較器306に比較実行信号を供給する。比
較器306は、比較実行信号を受け取ると、ROMライ
トデータラッチ回路304に記憶されたデータとROM
ベリファイデータラッチ回路305に記憶されたデータ
とを比較し、その比較の結果をRAMリード/ROMラ
イト制御回路301に出力する(時刻T17)。
【0086】RAMリード/ROMライト制御回路30
1は、比較の結果に基づき、ROMライトデータラッチ
回路304に記憶されたデータとROMベリファイデー
タラッチ回路305に記憶されたデータが一致している
か否かを判定し、両者が一致していると判定した場合、
ステップST5において、ステップST2とステップS
T3で処理したデータのアドレスが、再転送するデータ
を記憶する記憶領域の最終アドレスであるか否かを判定
する。
1は、比較の結果に基づき、ROMライトデータラッチ
回路304に記憶されたデータとROMベリファイデー
タラッチ回路305に記憶されたデータが一致している
か否かを判定し、両者が一致していると判定した場合、
ステップST5において、ステップST2とステップS
T3で処理したデータのアドレスが、再転送するデータ
を記憶する記憶領域の最終アドレスであるか否かを判定
する。
【0087】処理したデータのアドレスが、再転送する
データを記憶する記憶領域の最終アドレスではないと判
定した場合、ステップST6に進み、RAMリード/R
OMライト制御回路301は、次のデータの再転送を実
行するために、アドレスインクリメント信号を、信号線
319および信号線320を介してRAMリードアドレ
ス発生回路302およびROMライトアドレス発生回路
303にぞれぞれ供給する(時刻T18)。RAMリー
ドアドレス発生回路302およびROMライトアドレス
発生回路303は、アドレスインクリメント信号を供給
されると、読出アドレスおよび書込アドレスをそれぞれ
インクリメントする。このようにして、読出アドレスお
よび書込アドレスがそれぞれインクリメントされた後、
ステップST2に戻り、次のデータの再転送が実行され
る。
データを記憶する記憶領域の最終アドレスではないと判
定した場合、ステップST6に進み、RAMリード/R
OMライト制御回路301は、次のデータの再転送を実
行するために、アドレスインクリメント信号を、信号線
319および信号線320を介してRAMリードアドレ
ス発生回路302およびROMライトアドレス発生回路
303にぞれぞれ供給する(時刻T18)。RAMリー
ドアドレス発生回路302およびROMライトアドレス
発生回路303は、アドレスインクリメント信号を供給
されると、読出アドレスおよび書込アドレスをそれぞれ
インクリメントする。このようにして、読出アドレスお
よび書込アドレスがそれぞれインクリメントされた後、
ステップST2に戻り、次のデータの再転送が実行され
る。
【0088】一方、ステップST4において、ROMラ
イトデータラッチ回路304に記憶されたデータとRO
Mベリファイデータラッチ回路305に記憶されたデー
タが一致していないと判定された場合、ステップST2
に戻り、アドレスインクリメント信号は供給されず、再
度、同一のデータの再転送が行われる。
イトデータラッチ回路304に記憶されたデータとRO
Mベリファイデータラッチ回路305に記憶されたデー
タが一致していないと判定された場合、ステップST2
に戻り、アドレスインクリメント信号は供給されず、再
度、同一のデータの再転送が行われる。
【0089】また、ステップST5において、ステップ
ST2とステップST3で処理したデータのアドレス
が、再転送するデータを記憶する記憶領域の最終アドレ
ス(読出最終アドレス、書込最終アドレス)であると判
定した場合、ステップST7に進み、RAMリード/R
OMライト制御回路301は、信号線321を介してリ
セット信号を出力する。このように、先頭アドレスから
最終アドレスまでのデータを再転送した後、CPU50
2をリセットすることにより、通常の動作に復帰させる
ことができる。
ST2とステップST3で処理したデータのアドレス
が、再転送するデータを記憶する記憶領域の最終アドレ
ス(読出最終アドレス、書込最終アドレス)であると判
定した場合、ステップST7に進み、RAMリード/R
OMライト制御回路301は、信号線321を介してリ
セット信号を出力する。このように、先頭アドレスから
最終アドレスまでのデータを再転送した後、CPU50
2をリセットすることにより、通常の動作に復帰させる
ことができる。
【0090】以上のように、この実施の形態3によれ
ば、再転送回路601を利用して、CPU502とは独
立にデータの再転送を行うので、プログラムの暴走など
によりCPU502が正常に動作していない場合におい
ても、データの再転送を正確に実行することができると
いう効果が得られる。
ば、再転送回路601を利用して、CPU502とは独
立にデータの再転送を行うので、プログラムの暴走など
によりCPU502が正常に動作していない場合におい
ても、データの再転送を正確に実行することができると
いう効果が得られる。
【0091】実施の形態4.図9および図10は、この
発明の実施の形態4によるフラッシュメモリ内蔵マイク
ロコンピュータの構成の一部を示すブロック図である。
図11は、図10のオートイレーズ完了チェック回路の
構成例を示す回路図である。なお、図9に示す回路は、
図18に示す従来のフラッシュメモリ内蔵マイクロコン
ピュータの回路に対応するものであり、その他の部分は
図17に示すものと同様であるので、その説明を省略す
る。
発明の実施の形態4によるフラッシュメモリ内蔵マイク
ロコンピュータの構成の一部を示すブロック図である。
図11は、図10のオートイレーズ完了チェック回路の
構成例を示す回路図である。なお、図9に示す回路は、
図18に示す従来のフラッシュメモリ内蔵マイクロコン
ピュータの回路に対応するものであり、その他の部分は
図17に示すものと同様であるので、その説明を省略す
る。
【0092】図9において、201Aは、コマンドデコ
ーダ513からオートイレーズコマンド受付信号が供給
されると、DMAC205に転送開始信号を供給してフ
ラッシュメモリ503のブロックのうち、ベクタテーブ
ルを有するブロックのデータをRAM505の所定の記
憶領域204に転送させた後、信号線114を介してコ
マンドデコーダ513にフラッシュメモリ503の記憶
内容を消去するために消去実行信号を出力するシーケン
サ回路である。
ーダ513からオートイレーズコマンド受付信号が供給
されると、DMAC205に転送開始信号を供給してフ
ラッシュメモリ503のブロックのうち、ベクタテーブ
ルを有するブロックのデータをRAM505の所定の記
憶領域204に転送させた後、信号線114を介してコ
マンドデコーダ513にフラッシュメモリ503の記憶
内容を消去するために消去実行信号を出力するシーケン
サ回路である。
【0093】図10において、504Aは、フラッシュ
メモリ503へのデータの書込み、データの消去、書込
みまたは消去後のベリファイ動作などを実行するフラッ
シュメモリ制御回路である。フラッシュメモリ制御回路
504Aは、オートイレーズ処理実行時においては値が
「L」であるオートイレーズビジー信号を、信号線41
1を介してオートイレーズ完了チェック回路401に供
給するとともに、フラッシュメモリ503の各ブロック
に対するオートイレーズ処理が完了する毎に値が「H」
であるパルス信号を、信号線412を介してオートイレ
ーズ完了チェック回路401に供給する。また、フラッ
シュメモリ制御回路504Aは、オートイレーズ処理の
うち、フラッシュメモリ503に値「0」を順次書き込
むときに逐次発生する、値が「L」であるプログラムパ
ルス信号を、信号線413を介してNAND回路402
に供給するとともに、フラッシュメモリ503に記憶さ
れている値を順次消去するときに逐次発生する、値が
「L」であるイレーズパルス信号を、信号線414を介
してNAND回路402に供給する。
メモリ503へのデータの書込み、データの消去、書込
みまたは消去後のベリファイ動作などを実行するフラッ
シュメモリ制御回路である。フラッシュメモリ制御回路
504Aは、オートイレーズ処理実行時においては値が
「L」であるオートイレーズビジー信号を、信号線41
1を介してオートイレーズ完了チェック回路401に供
給するとともに、フラッシュメモリ503の各ブロック
に対するオートイレーズ処理が完了する毎に値が「H」
であるパルス信号を、信号線412を介してオートイレ
ーズ完了チェック回路401に供給する。また、フラッ
シュメモリ制御回路504Aは、オートイレーズ処理の
うち、フラッシュメモリ503に値「0」を順次書き込
むときに逐次発生する、値が「L」であるプログラムパ
ルス信号を、信号線413を介してNAND回路402
に供給するとともに、フラッシュメモリ503に記憶さ
れている値を順次消去するときに逐次発生する、値が
「L」であるイレーズパルス信号を、信号線414を介
してNAND回路402に供給する。
【0094】401は、信号線411,412を介して
供給される信号に基づいて、フラッシュメモリ503の
所定の数のブロックのすべてに対するオートイレーズ処
理が完了したか否かを判断し、すべてのブロックに対す
るオートイレーズ処理が完了したか否かを示す信号を、
信号線419を介してOR回路403に供給するととも
に、ベクタテーブルを有するブロックに対するオートイ
レーズ処理が完了したか否かを判断し、そのブロックに
対するオートイレーズ処理が完了したか否かを示す信号
を切替回路405に供給するオートイレーズ完了チェッ
ク回路(判断手段)である。
供給される信号に基づいて、フラッシュメモリ503の
所定の数のブロックのすべてに対するオートイレーズ処
理が完了したか否かを判断し、すべてのブロックに対す
るオートイレーズ処理が完了したか否かを示す信号を、
信号線419を介してOR回路403に供給するととも
に、ベクタテーブルを有するブロックに対するオートイ
レーズ処理が完了したか否かを判断し、そのブロックに
対するオートイレーズ処理が完了したか否かを示す信号
を切替回路405に供給するオートイレーズ完了チェッ
ク回路(判断手段)である。
【0095】図11のオートイレーズ完了チェック回路
401において、421は、フラッシュメモリ503の
ブロック数と同一の段数(今の場合、4段)を有し、信
号線412よりパルス信号が供給される毎に、値「H」
を次段にシフトし、ベクタテーブルが存在するブロック
に対応する段(すなわち第3番目のブロックにベクタテ
ーブルが含まれている場合には、図11のように第3
段)からの出力を制御信号として信号線418を介して
切替回路405に供給し、最終段からの出力を信号線4
19を介してOR回路403に供給するシフトレジスタ
である。
401において、421は、フラッシュメモリ503の
ブロック数と同一の段数(今の場合、4段)を有し、信
号線412よりパルス信号が供給される毎に、値「H」
を次段にシフトし、ベクタテーブルが存在するブロック
に対応する段(すなわち第3番目のブロックにベクタテ
ーブルが含まれている場合には、図11のように第3
段)からの出力を制御信号として信号線418を介して
切替回路405に供給し、最終段からの出力を信号線4
19を介してOR回路403に供給するシフトレジスタ
である。
【0096】427は、信号線411を介して供給され
る信号の値を反転し、反転した値をNAND回路423
および遅延回路424に供給するインバータであり、4
24は、3つのインバータ424A,424B,424
Cが直列に接続されて構成され、インバータ427の出
力値の反転値を所定の時間だけ遅延させてNAND回路
423に供給する遅延回路である。423は、インバー
タ427からの値と遅延回路424からの値との論理積
の反転値を計算し、その計算結果を信号線429を介し
てシフトレジスタ421の各段のリセット端子に供給す
るNAND回路である。
る信号の値を反転し、反転した値をNAND回路423
および遅延回路424に供給するインバータであり、4
24は、3つのインバータ424A,424B,424
Cが直列に接続されて構成され、インバータ427の出
力値の反転値を所定の時間だけ遅延させてNAND回路
423に供給する遅延回路である。423は、インバー
タ427からの値と遅延回路424からの値との論理積
の反転値を計算し、その計算結果を信号線429を介し
てシフトレジスタ421の各段のリセット端子に供給す
るNAND回路である。
【0097】422は、マイコン501のリセット時に
値が「H」になるリセット信号と信号線417を介して
供給される信号との論理和を計算し、その計算結果を信
号線428を介してシフトレジスタ421の各段に供給
するOR回路である。
値が「H」になるリセット信号と信号線417を介して
供給される信号との論理和を計算し、その計算結果を信
号線428を介してシフトレジスタ421の各段に供給
するOR回路である。
【0098】図10に戻り、402は、信号線413を
介して供給される信号と信号線414を介して供給され
る信号との論理積の反転値を計算し、その計算結果をO
R回路403に供給するNAND回路(暴走検出手段)
である。403は、オートイレーズ完了チェック回路4
01からの信号とNAND回路402からの信号との論
理和を計算し、その計算結果をオートイレーズウォッチ
ドックタイマ(以下、AEWDTという)404に供給
するOR回路(暴走検出手段)である。
介して供給される信号と信号線414を介して供給され
る信号との論理積の反転値を計算し、その計算結果をO
R回路403に供給するNAND回路(暴走検出手段)
である。403は、オートイレーズ完了チェック回路4
01からの信号とNAND回路402からの信号との論
理和を計算し、その計算結果をオートイレーズウォッチ
ドックタイマ(以下、AEWDTという)404に供給
するOR回路(暴走検出手段)である。
【0099】404は、OR回路403からの信号の値
が連続して「L」である時間を計測して、オートイレー
ズ処理時における暴走を検出し、暴走を検出した場合に
は、割込要求信号を信号線417を介して、オートイレ
ーズ完了チェック回路401および切替回路405に供
給するAEWDT(暴走検出手段)である。すなわち、
AEWDT404は、OR回路403から値「H」の信
号が供給される度に内蔵のタイマの値を初期値にリセッ
トし、タイマの値を所定の時間毎にカウントダウンさせ
ていき、所定の時間だけ値「H」の信号が供給されずに
タイマの値がアンダーフローした時点で暴走が発生した
と判断する。
が連続して「L」である時間を計測して、オートイレー
ズ処理時における暴走を検出し、暴走を検出した場合に
は、割込要求信号を信号線417を介して、オートイレ
ーズ完了チェック回路401および切替回路405に供
給するAEWDT(暴走検出手段)である。すなわち、
AEWDT404は、OR回路403から値「H」の信
号が供給される度に内蔵のタイマの値を初期値にリセッ
トし、タイマの値を所定の時間毎にカウントダウンさせ
ていき、所定の時間だけ値「H」の信号が供給されずに
タイマの値がアンダーフローした時点で暴走が発生した
と判断する。
【0100】405は、オートイレーズ完了チェック回
路401により供給される制御信号の値に応じて、AE
WDT404からの信号を割込回路406または再転送
回路601のRAMリード/ROMライト制御回路30
1に供給する切替回路である。切替回路405は、ベク
タテーブルが存在するブロックが消去されるまでは、A
EWDT404からの信号を割込回路406に供給し、
ベクタテーブルが存在するブロックが消去された後は、
AEWDT404からの信号を再転送回路601のRA
Mリード/ROMライト制御回路301に供給するよう
にオートイレーズ完了チェック回路401により制御さ
れる。
路401により供給される制御信号の値に応じて、AE
WDT404からの信号を割込回路406または再転送
回路601のRAMリード/ROMライト制御回路30
1に供給する切替回路である。切替回路405は、ベク
タテーブルが存在するブロックが消去されるまでは、A
EWDT404からの信号を割込回路406に供給し、
ベクタテーブルが存在するブロックが消去された後は、
AEWDT404からの信号を再転送回路601のRA
Mリード/ROMライト制御回路301に供給するよう
にオートイレーズ完了チェック回路401により制御さ
れる。
【0101】406は、切替回路405または再転送回
路601のRAMリード/ROMライト制御回路301
より供給される信号に基づいて割込信号をCPU502
に供給する割込回路である。
路601のRAMリード/ROMライト制御回路301
より供給される信号に基づいて割込信号をCPU502
に供給する割込回路である。
【0102】その他の構成要素については、図4または
図6に示すものと同様であるので、その説明を省略す
る。
図6に示すものと同様であるので、その説明を省略す
る。
【0103】次に動作について説明する。図12は、オ
ートイレーズ処理における実施の形態4によるフラッシ
ュメモリ内蔵マイクロコンピュータの動作を説明するフ
ローチャートであり、図13および図14は、オートイ
レーズ処理における実施の形態4によるフラッシュメモ
リ内蔵マイクロコンピュータの動作を説明するタイミン
グチャートであり、図15は、オートイレーズ処理にお
いて暴走を検出したときにおける実施の形態4によるフ
ラッシュメモリ内蔵マイクロコンピュータの動作を説明
するタイミングチャートである。
ートイレーズ処理における実施の形態4によるフラッシ
ュメモリ内蔵マイクロコンピュータの動作を説明するフ
ローチャートであり、図13および図14は、オートイ
レーズ処理における実施の形態4によるフラッシュメモ
リ内蔵マイクロコンピュータの動作を説明するタイミン
グチャートであり、図15は、オートイレーズ処理にお
いて暴走を検出したときにおける実施の形態4によるフ
ラッシュメモリ内蔵マイクロコンピュータの動作を説明
するタイミングチャートである。
【0104】まず、ステップST21において、CPU
502は、データバスおよびアドレスバス511のデー
タバスを介して、オートイレーズコマンド(図13の
「30H」)を2回連続してコマンドデコーダ513の
コマンドレジスタ514に書き込む。コマンドデコーダ
513のデコード回路515Aは、コマンドレジスタ5
14にオートイレーズコマンドが書き込まれると、信号
線108を介してシーケンサ回路201Aにオートイレ
ーズ受付信号を供給する。
502は、データバスおよびアドレスバス511のデー
タバスを介して、オートイレーズコマンド(図13の
「30H」)を2回連続してコマンドデコーダ513の
コマンドレジスタ514に書き込む。コマンドデコーダ
513のデコード回路515Aは、コマンドレジスタ5
14にオートイレーズコマンドが書き込まれると、信号
線108を介してシーケンサ回路201Aにオートイレ
ーズ受付信号を供給する。
【0105】次に、ステップST22において、シーケ
ンサ回路201Aは、そのオートイレーズ受付信号を受
け取ると、信号線206を介して転送開始信号をDMA
C205に供給し(図13参照)、フラッシュメモリ5
03の所定の数のブロックのうち、異常発生時に処理を
再開する位置(すなわちアドレス)を有するベクタテー
ブルが含まれているブロックであるベクタテーブル存在
ブロック251(今の場合、アドレス「FC00H」か
らアドレス「FFFFH」までの記憶領域)に記憶され
ているデータをRAM505の所定の記憶領域204
(今の場合、アドレス「0080H」からアドレス「0
47FH」までの記憶領域)に転送させる。
ンサ回路201Aは、そのオートイレーズ受付信号を受
け取ると、信号線206を介して転送開始信号をDMA
C205に供給し(図13参照)、フラッシュメモリ5
03の所定の数のブロックのうち、異常発生時に処理を
再開する位置(すなわちアドレス)を有するベクタテー
ブルが含まれているブロックであるベクタテーブル存在
ブロック251(今の場合、アドレス「FC00H」か
らアドレス「FFFFH」までの記憶領域)に記憶され
ているデータをRAM505の所定の記憶領域204
(今の場合、アドレス「0080H」からアドレス「0
47FH」までの記憶領域)に転送させる。
【0106】そして、ステップST23において、DM
AC205は、データの転送が完了すると、信号線20
7を介してシーケンサ回路201Aに転送完了信号を供
給する。シーケンサ回路201Aは、転送完了信号を受
け取ると、信号線114を介してコマンドデコーダ51
3のデコード回路515Aに消去実行信号(図13参
照)を供給する。
AC205は、データの転送が完了すると、信号線20
7を介してシーケンサ回路201Aに転送完了信号を供
給する。シーケンサ回路201Aは、転送完了信号を受
け取ると、信号線114を介してコマンドデコーダ51
3のデコード回路515Aに消去実行信号(図13参
照)を供給する。
【0107】フラッシュメモリ制御回路504Aは、オ
ートイレーズ処理実行時には値が「L」であるオートイ
レーズビジー信号を、信号線411を介してオートイレ
ーズ完了チェック回路401に供給するとともに、フラ
ッシュメモリ503の各ブロックに対するオートイレー
ズが完了する毎に値が「H」であるパルス信号を、信号
線412を介してオートイレーズ完了チェック回路40
1に供給する。
ートイレーズ処理実行時には値が「L」であるオートイ
レーズビジー信号を、信号線411を介してオートイレ
ーズ完了チェック回路401に供給するとともに、フラ
ッシュメモリ503の各ブロックに対するオートイレー
ズが完了する毎に値が「H」であるパルス信号を、信号
線412を介してオートイレーズ完了チェック回路40
1に供給する。
【0108】オートイレーズ完了チェック回路401
は、これらの信号に基づいて、オートイレーズ処理実行
中においては、OR回路403への出力の値を「L」に
設定することにより、オートイレーズ処理実行時にだけ
AEWDT404を動作させる。すなわち、オートイレ
ーズ処理実行時以外においては、OR回路403から値
「H」の信号が供給されるので、暴走の検出動作は行わ
れない。
は、これらの信号に基づいて、オートイレーズ処理実行
中においては、OR回路403への出力の値を「L」に
設定することにより、オートイレーズ処理実行時にだけ
AEWDT404を動作させる。すなわち、オートイレ
ーズ処理実行時以外においては、OR回路403から値
「H」の信号が供給されるので、暴走の検出動作は行わ
れない。
【0109】オートイレーズ完了チェック回路401に
おいては、図14に示すように、信号線411を介して
供給されるオートイレーズビジー信号の値が「H」から
「L」へ変化すると、NAND回路423、遅延回路4
24およびインバータ427により、パルス信号が発生
され、シフトレジスタ421の各段の値が「L」にリセ
ットされる(時刻T21)。したがって、OR回路40
3へ値「L」の信号が出力される。
おいては、図14に示すように、信号線411を介して
供給されるオートイレーズビジー信号の値が「H」から
「L」へ変化すると、NAND回路423、遅延回路4
24およびインバータ427により、パルス信号が発生
され、シフトレジスタ421の各段の値が「L」にリセ
ットされる(時刻T21)。したがって、OR回路40
3へ値「L」の信号が出力される。
【0110】さらに、フラッシュメモリ制御回路504
Aは、オートイレーズ処理のうち、フラッシュメモリ5
03に値「0」を順次書き込むときに逐次発生する、値
が「L」であるプログラムパルス信号を、信号線413
を介して、また、フラッシュメモリ503に記憶されて
いる値を順次消去するときに逐次発生する、値が「L」
であるイレーズパルス信号を、信号線414を介してN
AND回路402に供給する。
Aは、オートイレーズ処理のうち、フラッシュメモリ5
03に値「0」を順次書き込むときに逐次発生する、値
が「L」であるプログラムパルス信号を、信号線413
を介して、また、フラッシュメモリ503に記憶されて
いる値を順次消去するときに逐次発生する、値が「L」
であるイレーズパルス信号を、信号線414を介してN
AND回路402に供給する。
【0111】NAND回路402は、プログラムパルス
信号およびイレーズパルス信号のいずれかが発生した場
合に、値が「H」であるパルス信号をOR回路403に
供給する。このパルス信号は、オートイレーズ完了チェ
ック回路401からOR回路403への信号の値が
「H」である場合(すなわち、オートイレーズ処理実行
中である場合)、OR回路403を介してそのままAE
WDT404に供給される。
信号およびイレーズパルス信号のいずれかが発生した場
合に、値が「H」であるパルス信号をOR回路403に
供給する。このパルス信号は、オートイレーズ完了チェ
ック回路401からOR回路403への信号の値が
「H」である場合(すなわち、オートイレーズ処理実行
中である場合)、OR回路403を介してそのままAE
WDT404に供給される。
【0112】オートイレーズ処理実行中、ステップST
24において、AEWDT404は、OR回路403か
ら値が「L」である信号が連続して供給される時間を計
測し、その時間が所定の時間以上になった場合に、暴走
が発生したと判断する。また、ステップST25におい
て、フラッシュメモリ制御回路504Aは、フラッシュ
メモリ503のすべてのブロックに対するオートイレー
ズ処理が完了したか否かを判断する。
24において、AEWDT404は、OR回路403か
ら値が「L」である信号が連続して供給される時間を計
測し、その時間が所定の時間以上になった場合に、暴走
が発生したと判断する。また、ステップST25におい
て、フラッシュメモリ制御回路504Aは、フラッシュ
メモリ503のすべてのブロックに対するオートイレー
ズ処理が完了したか否かを判断する。
【0113】暴走が発生せずに、オートイレーズ処理が
完了した場合には、ステップST26に進み、オートイ
レーズ完了チェック回路401からOR回路403への
信号の値が「L」から「H」へ変化し、AEWDT40
4に値が「H」である信号が供給され、AEWDT40
4の暴走検出動作が停止する。
完了した場合には、ステップST26に進み、オートイ
レーズ完了チェック回路401からOR回路403への
信号の値が「L」から「H」へ変化し、AEWDT40
4に値が「H」である信号が供給され、AEWDT40
4の暴走検出動作が停止する。
【0114】すなわち、暴走が発生しない場合には、図
14に示すように、フラッシュメモリ503の各ブロッ
クに対するオートイレーズが完了する毎に、オートイレ
ーズ完了チェック回路401のシフトレジスタ421に
パルス信号が供給され、パルス信号が供給される毎に、
シフトレジスタ421の各段から後段へ値「H」がシフ
トされていく。すなわち、第1段の入力端子が電源に接
続されているので、信号線412を介してパルス信号が
供給される度に第1段に値「H」が入力され、その値
「H」が順次後段にシフトされていく。したがって、第
1番目のパルス信号が供給されることにより、第1段の
値が「H」になり、第2番目のパルス信号が供給される
ことにより、第1段および第2段の値が「H」になる。
以下同様に後段の値が「L」から「H」へパルス信号が
供給される毎に順次変化していく。そして、シフトレジ
スタ421の段数がフラッシュメモリ503の段数に設
定されているので、すべてのブロックに対してオートイ
レーズ処理が完了したときに、最終段の値が「H」にな
り、その値がOR回路403へ出力される。なお、マイ
コン501がリセットされた場合、値が「H」であるリ
セット信号がOR回路422に供給されることにより、
シフトレジスタ421の各段の初期値は「H」に設定さ
れる。
14に示すように、フラッシュメモリ503の各ブロッ
クに対するオートイレーズが完了する毎に、オートイレ
ーズ完了チェック回路401のシフトレジスタ421に
パルス信号が供給され、パルス信号が供給される毎に、
シフトレジスタ421の各段から後段へ値「H」がシフ
トされていく。すなわち、第1段の入力端子が電源に接
続されているので、信号線412を介してパルス信号が
供給される度に第1段に値「H」が入力され、その値
「H」が順次後段にシフトされていく。したがって、第
1番目のパルス信号が供給されることにより、第1段の
値が「H」になり、第2番目のパルス信号が供給される
ことにより、第1段および第2段の値が「H」になる。
以下同様に後段の値が「L」から「H」へパルス信号が
供給される毎に順次変化していく。そして、シフトレジ
スタ421の段数がフラッシュメモリ503の段数に設
定されているので、すべてのブロックに対してオートイ
レーズ処理が完了したときに、最終段の値が「H」にな
り、その値がOR回路403へ出力される。なお、マイ
コン501がリセットされた場合、値が「H」であるリ
セット信号がOR回路422に供給されることにより、
シフトレジスタ421の各段の初期値は「H」に設定さ
れる。
【0115】一方、すべてのブロックに対するオートイ
レーズ処理の完了前にAEWDT404が暴走を検出し
た場合には、AEWDT404は、割込要求信号を切替
回路405に出力し、ステップST27に進む。このと
き、切替回路405は、ベクタテーブルが存在するブロ
ックが消去されていない場合には、AEWDT404か
らの信号を割込回路406に供給し、ベクタテーブルが
存在するブロックが消去されている場合には、AEWD
T404からの信号を再転送回路601のRAMリード
/ROMライト制御回路301に供給する。
レーズ処理の完了前にAEWDT404が暴走を検出し
た場合には、AEWDT404は、割込要求信号を切替
回路405に出力し、ステップST27に進む。このと
き、切替回路405は、ベクタテーブルが存在するブロ
ックが消去されていない場合には、AEWDT404か
らの信号を割込回路406に供給し、ベクタテーブルが
存在するブロックが消去されている場合には、AEWD
T404からの信号を再転送回路601のRAMリード
/ROMライト制御回路301に供給する。
【0116】このとき、オートイレーズ完了チェック回
路401においては、図15に示すように、信号線41
7を介して値が「H」である信号がOR回路422に供
給され、シフトレジスタ421の各段の値が「H」に設
定される。したがって、シフトレジスタ421からOR
回路403へ値「H」の信号が供給され、AEWDT4
04の暴走検出動作が停止する。
路401においては、図15に示すように、信号線41
7を介して値が「H」である信号がOR回路422に供
給され、シフトレジスタ421の各段の値が「H」に設
定される。したがって、シフトレジスタ421からOR
回路403へ値「H」の信号が供給され、AEWDT4
04の暴走検出動作が停止する。
【0117】そして、ベクタテーブルが存在するブロッ
クが消去されている場合には、ステップST28におい
て、再転送回路601により、RAM505に転送され
たベクタテーブル存在ブロックのデータがフラッシュメ
モリ503に再転送される。データの再転送が完了した
後に、再転送回路601のRAMリード/ROMライト
制御回路301は、割込要求信号を割込回路406に供
給する。一方、ベクタテーブルが存在するブロックが消
去されていない場合には、ステップST28をスキップ
し、AEWDT404からの割込要求信号が切替回路4
05を介して割込回路406に供給される。
クが消去されている場合には、ステップST28におい
て、再転送回路601により、RAM505に転送され
たベクタテーブル存在ブロックのデータがフラッシュメ
モリ503に再転送される。データの再転送が完了した
後に、再転送回路601のRAMリード/ROMライト
制御回路301は、割込要求信号を割込回路406に供
給する。一方、ベクタテーブルが存在するブロックが消
去されていない場合には、ステップST28をスキップ
し、AEWDT404からの割込要求信号が切替回路4
05を介して割込回路406に供給される。
【0118】そして、ステップST29において、割込
回路406は、切替回路405または再転送回路601
のRAMリード/ROMライト制御回路301から割込
要求信号を供給されると、割込信号をCPU502に供
給し、ステップST30において、CPU502にベク
タテーブルを参照させ、ブートプログラム(今の場合、
RAM505のアドレス「0480H」を先頭アドレス
として記憶されている)を再実行させる。
回路406は、切替回路405または再転送回路601
のRAMリード/ROMライト制御回路301から割込
要求信号を供給されると、割込信号をCPU502に供
給し、ステップST30において、CPU502にベク
タテーブルを参照させ、ブートプログラム(今の場合、
RAM505のアドレス「0480H」を先頭アドレス
として記憶されている)を再実行させる。
【0119】以上のように、この実施の形態4によれ
ば、ベクタテーブルをRAM505に転送しておき、オ
ートイレーズ処理実行中でベクタテーブルを消去した後
に暴走が発生した場合においても、AEWDT404に
よりその暴走を検出して、RAM505に転送したベク
タテーブルのデータをフラッシュメモリ503に再転送
するようにしたので、オートイレーズ処理実行中でベク
タテーブルを消去した後に暴走が発生しても、自律的に
フラッシュメモリ503の記憶内容の書き換えを再実行
することができるという効果が得られる。
ば、ベクタテーブルをRAM505に転送しておき、オ
ートイレーズ処理実行中でベクタテーブルを消去した後
に暴走が発生した場合においても、AEWDT404に
よりその暴走を検出して、RAM505に転送したベク
タテーブルのデータをフラッシュメモリ503に再転送
するようにしたので、オートイレーズ処理実行中でベク
タテーブルを消去した後に暴走が発生しても、自律的に
フラッシュメモリ503の記憶内容の書き換えを再実行
することができるという効果が得られる。
【0120】実施の形態5.図16は、この発明の実施
の形態5によるフラッシュメモリ内蔵マイクロコンピュ
ータの構成の一部を示すブロック図である。なお、図1
6に示す回路は、図18に示す従来のフラッシュメモリ
内蔵マイクロコンピュータの回路に対応するものであ
り、その他の部分は図17に示すものと同様であるの
で、その説明を省略する。
の形態5によるフラッシュメモリ内蔵マイクロコンピュ
ータの構成の一部を示すブロック図である。なお、図1
6に示す回路は、図18に示す従来のフラッシュメモリ
内蔵マイクロコンピュータの回路に対応するものであ
り、その他の部分は図17に示すものと同様であるの
で、その説明を省略する。
【0121】この実施の形態5によるフラッシュメモリ
内蔵マイクロコンピュータにおいては、AEWDT40
4が暴走を検出したときに処理を再開する位置を示す割
込ベクタアドレスが、フラッシュメモリ503ではな
く、RAM505に記憶される。CPU502は、割込
回路406からの割込信号を受け取ると、RAM505
から割込ベクタアドレスを読み出し、その割込ベクタア
ドレスが示す記憶領域に記憶されているプログラムを実
行する。図16におけるその他の各構成要素は、図9ま
たは図10のものと同様であるので、その説明を省略す
る。
内蔵マイクロコンピュータにおいては、AEWDT40
4が暴走を検出したときに処理を再開する位置を示す割
込ベクタアドレスが、フラッシュメモリ503ではな
く、RAM505に記憶される。CPU502は、割込
回路406からの割込信号を受け取ると、RAM505
から割込ベクタアドレスを読み出し、その割込ベクタア
ドレスが示す記憶領域に記憶されているプログラムを実
行する。図16におけるその他の各構成要素は、図9ま
たは図10のものと同様であるので、その説明を省略す
る。
【0122】次に動作について説明する。ここでは、A
EWDT404により暴走が検出されたときの動作につ
いて説明する。その他の動作については、実施の形態4
のものと同様であるので、その説明を省略する。
EWDT404により暴走が検出されたときの動作につ
いて説明する。その他の動作については、実施の形態4
のものと同様であるので、その説明を省略する。
【0123】AEWDT404は、暴走を検出すると、
割込回路406に割込要求信号を出力する。割込回路4
06は、割込要求信号を受け取ると、割込信号をCPU
502に供給する。CPU502は、割込回路406か
らの割込信号を受け取ると、RAM505の所定の記憶
領域701から割込ベクタアドレスを読み出し、その割
込ベクタアドレスが示す記憶領域に記憶されているプロ
グラムを実行する。なお、この割込ベクタアドレスは、
オートイレーズ処理が実行される前に予めRAM505
の所定の記憶領域701に記憶される。
割込回路406に割込要求信号を出力する。割込回路4
06は、割込要求信号を受け取ると、割込信号をCPU
502に供給する。CPU502は、割込回路406か
らの割込信号を受け取ると、RAM505の所定の記憶
領域701から割込ベクタアドレスを読み出し、その割
込ベクタアドレスが示す記憶領域に記憶されているプロ
グラムを実行する。なお、この割込ベクタアドレスは、
オートイレーズ処理が実行される前に予めRAM505
の所定の記憶領域701に記憶される。
【0124】以上のように、この実施の形態5によれ
ば、割込ベクタアドレスを予めRAM505に記憶させ
ておき、オートイレーズ処理実行中に暴走が発生した場
合においても、AEWDT404によりその暴走を検出
して、RAM505に記憶された割込ベクタアドレスを
読み出すようにしたので、オートイレーズ処理実行中に
暴走が発生しても、自律的にフラッシュメモリ503の
記憶内容の書き換えを再実行することができるという効
果が得られる。
ば、割込ベクタアドレスを予めRAM505に記憶させ
ておき、オートイレーズ処理実行中に暴走が発生した場
合においても、AEWDT404によりその暴走を検出
して、RAM505に記憶された割込ベクタアドレスを
読み出すようにしたので、オートイレーズ処理実行中に
暴走が発生しても、自律的にフラッシュメモリ503の
記憶内容の書き換えを再実行することができるという効
果が得られる。
【0125】
【発明の効果】以上のように、この発明によれば、フラ
ッシュメモリにデータを供給する外部装置に所定の信号
を出力し、所定の信号に対応する外部装置からの応答が
所定の時間内に検出されない場合にはデータの消去を中
止するように構成したので、プログラムの暴走などに起
因する誤動作によってフラッシュメモリの記憶内容が消
去されないようにすることができるという効果がある。
ッシュメモリにデータを供給する外部装置に所定の信号
を出力し、所定の信号に対応する外部装置からの応答が
所定の時間内に検出されない場合にはデータの消去を中
止するように構成したので、プログラムの暴走などに起
因する誤動作によってフラッシュメモリの記憶内容が消
去されないようにすることができるという効果がある。
【0126】この発明によれば、データを書き換える記
憶領域のうちの所定の記憶領域に記憶されているデータ
をランダムアクセスメモリに転送し、その所定の記憶領
域に記憶されたデータを消去し、フラッシュメモリにデ
ータを供給する外部装置に所定の信号を出力し、所定の
時間内に外部装置からの応答が検出されない場合にはデ
ータを書き換える記憶領域のうちの残りの記憶領域に記
憶されたデータの消去を中止するように構成したので、
ユーザにより誤って実行されたオートイレーズ動作を途
中で中止させることができるという効果がある。
憶領域のうちの所定の記憶領域に記憶されているデータ
をランダムアクセスメモリに転送し、その所定の記憶領
域に記憶されたデータを消去し、フラッシュメモリにデ
ータを供給する外部装置に所定の信号を出力し、所定の
時間内に外部装置からの応答が検出されない場合にはデ
ータを書き換える記憶領域のうちの残りの記憶領域に記
憶されたデータの消去を中止するように構成したので、
ユーザにより誤って実行されたオートイレーズ動作を途
中で中止させることができるという効果がある。
【0127】この発明によれば、所定の記憶領域に記憶
されたデータの消去終了後の所定の時間内に外部装置か
らの応答が検出されない場合に、ランダムアクセスメモ
リに転送したデータをフラッシュメモリの所定の記憶領
域に再転送するように構成したので、データの消去を途
中で中止した場合において、フラッシュメモリに記憶さ
れているデータを元の状態に復帰させることができると
いう効果がある。
されたデータの消去終了後の所定の時間内に外部装置か
らの応答が検出されない場合に、ランダムアクセスメモ
リに転送したデータをフラッシュメモリの所定の記憶領
域に再転送するように構成したので、データの消去を途
中で中止した場合において、フラッシュメモリに記憶さ
れているデータを元の状態に復帰させることができると
いう効果がある。
【0128】この発明によれば、所定の記憶領域に記憶
されたデータの消去終了後の所定の時間内に外部装置か
らの応答が検出されない場合に、ランダムアクセスメモ
リに転送したデータをフラッシュメモリの所定の記憶領
域に再転送する回路を、中央演算処理装置とは独立に動
作するように構成したので、プログラムの暴走などによ
りCPUが正常に動作していない場合においても、デー
タの再転送を正確に実行することができるという効果が
ある。
されたデータの消去終了後の所定の時間内に外部装置か
らの応答が検出されない場合に、ランダムアクセスメモ
リに転送したデータをフラッシュメモリの所定の記憶領
域に再転送する回路を、中央演算処理装置とは独立に動
作するように構成したので、プログラムの暴走などによ
りCPUが正常に動作していない場合においても、デー
タの再転送を正確に実行することができるという効果が
ある。
【0129】この発明によれば、フラッシュメモリに記
憶されたベクタテーブルのデータをランダムアクセスメ
モリに転送し、フラッシュメモリに記憶されたベクタテ
ーブルのデータの転送終了後にフラッシュメモリに記憶
されたデータを消去し、フラッシュメモリに記憶された
データを消去する処理における暴走が検出された場合
に、フラッシュメモリからベクタテーブルのデータが消
去されているか否かを判断し、フラッシュメモリからベ
クタテーブルのデータが消去されていると判断された場
合、ベクタテーブルのデータをフラッシュメモリに再転
送するようにしたので、オートイレーズ処理実行中でベ
クタテーブルを消去した後に暴走が発生しても、自律的
にフラッシュメモリの記憶内容の書き換えを再実行する
ことができるという効果がある。
憶されたベクタテーブルのデータをランダムアクセスメ
モリに転送し、フラッシュメモリに記憶されたベクタテ
ーブルのデータの転送終了後にフラッシュメモリに記憶
されたデータを消去し、フラッシュメモリに記憶された
データを消去する処理における暴走が検出された場合
に、フラッシュメモリからベクタテーブルのデータが消
去されているか否かを判断し、フラッシュメモリからベ
クタテーブルのデータが消去されていると判断された場
合、ベクタテーブルのデータをフラッシュメモリに再転
送するようにしたので、オートイレーズ処理実行中でベ
クタテーブルを消去した後に暴走が発生しても、自律的
にフラッシュメモリの記憶内容の書き換えを再実行する
ことができるという効果がある。
【0130】この発明によれば、フラッシュメモリに記
憶されたデータを消去する前に、暴走検出手段による暴
走検出時の割込ベクタアドレスをランダムアクセスメモ
リに記憶させ、暴走検出手段により暴走が検出された場
合に、その割込ベクタアドレスが示すアドレスから処理
を再開するようにしたので、オートイレーズ処理実行中
に暴走が発生しても、自律的にフラッシュメモリの記憶
内容の書き換えを再実行することができるという効果が
ある。
憶されたデータを消去する前に、暴走検出手段による暴
走検出時の割込ベクタアドレスをランダムアクセスメモ
リに記憶させ、暴走検出手段により暴走が検出された場
合に、その割込ベクタアドレスが示すアドレスから処理
を再開するようにしたので、オートイレーズ処理実行中
に暴走が発生しても、自律的にフラッシュメモリの記憶
内容の書き換えを再実行することができるという効果が
ある。
【図1】 この発明の実施の形態1によるフラッシュメ
モリ内蔵マイクロコンピュータの構成の一部を示すブロ
ック図である。
モリ内蔵マイクロコンピュータの構成の一部を示すブロ
ック図である。
【図2】 消去実行が許可された場合の実施の形態1に
よるフラッシュメモリ内蔵マイクロコンピュータの動作
を説明するタイミングチャートである。
よるフラッシュメモリ内蔵マイクロコンピュータの動作
を説明するタイミングチャートである。
【図3】 消去実行が許可されなかった場合の実施の形
態1によるフラッシュメモリ内蔵マイクロコンピュータ
の動作を説明するタイミングチャートである。
態1によるフラッシュメモリ内蔵マイクロコンピュータ
の動作を説明するタイミングチャートである。
【図4】 この発明の実施の形態2によるフラッシュメ
モリ内蔵マイクロコンピュータの構成の一部を示すブロ
ック図である。
モリ内蔵マイクロコンピュータの構成の一部を示すブロ
ック図である。
【図5】 消去実行が許可された場合の実施の形態2に
よるフラッシュメモリ内蔵マイクロコンピュータの動作
を説明するタイミングチャートである。
よるフラッシュメモリ内蔵マイクロコンピュータの動作
を説明するタイミングチャートである。
【図6】 この発明の実施の形態3によるフラッシュメ
モリ内蔵マイクロコンピュータにおける再転送回路の構
成を示すブロック図である。
モリ内蔵マイクロコンピュータにおける再転送回路の構
成を示すブロック図である。
【図7】 外部装置からの応答信号が検出されなかった
場合における実施の形態3によるフラッシュメモリ内蔵
マイクロコンピュータの動作を説明するフローチャート
である。
場合における実施の形態3によるフラッシュメモリ内蔵
マイクロコンピュータの動作を説明するフローチャート
である。
【図8】 外部装置からの応答信号が検出されなかった
場合における実施の形態3によるフラッシュメモリ内蔵
マイクロコンピュータの動作を説明するタイミングチャ
ートである。
場合における実施の形態3によるフラッシュメモリ内蔵
マイクロコンピュータの動作を説明するタイミングチャ
ートである。
【図9】 この発明の実施の形態4によるフラッシュメ
モリ内蔵マイクロコンピュータの構成の一部を示すブロ
ック図である。
モリ内蔵マイクロコンピュータの構成の一部を示すブロ
ック図である。
【図10】 この発明の実施の形態4によるフラッシュ
メモリ内蔵マイクロコンピュータの構成の一部を示すブ
ロック図である。
メモリ内蔵マイクロコンピュータの構成の一部を示すブ
ロック図である。
【図11】 図10のオートイレーズ完了チェック回路
の構成例を示す回路図である。
の構成例を示す回路図である。
【図12】 オートイレーズ処理における実施の形態4
によるフラッシュメモリ内蔵マイクロコンピュータの動
作を説明するフローチャートである。
によるフラッシュメモリ内蔵マイクロコンピュータの動
作を説明するフローチャートである。
【図13】 オートイレーズ処理における実施の形態4
によるフラッシュメモリ内蔵マイクロコンピュータの動
作を説明するタイミングチャートである。
によるフラッシュメモリ内蔵マイクロコンピュータの動
作を説明するタイミングチャートである。
【図14】 オートイレーズ処理における実施の形態4
によるフラッシュメモリ内蔵マイクロコンピュータの動
作を説明するタイミングチャートである。
によるフラッシュメモリ内蔵マイクロコンピュータの動
作を説明するタイミングチャートである。
【図15】 オートイレーズ処理において暴走を検出し
たときにおける実施の形態4によるフラッシュメモリ内
蔵マイクロコンピュータの動作を説明するタイミングチ
ャートである。
たときにおける実施の形態4によるフラッシュメモリ内
蔵マイクロコンピュータの動作を説明するタイミングチ
ャートである。
【図16】 この発明の実施の形態5によるフラッシュ
メモリ内蔵マイクロコンピュータの構成の一部を示すブ
ロック図である。
メモリ内蔵マイクロコンピュータの構成の一部を示すブ
ロック図である。
【図17】 従来のフラッシュメモリ内蔵マイクロコン
ピュータの構成を示すブロック図である。
ピュータの構成を示すブロック図である。
【図18】 フラッシュメモリへのデータの書込み時ま
たはデータの消去時に使用される回路を示すブロック図
である。
たはデータの消去時に使用される回路を示すブロック図
である。
103,201 シーケンサ回路(応答検出手段)、1
04 タイマ(応答検出手段)、205 ダイレクトメ
モリアクセスコントローラ(データ転送手段)、401
オートイレーズ完了チェック回路(判断手段)、40
2 NAND回路(暴走検出手段)、403 OR回路
(暴走検出手段)、404 オートイレーズウォッチド
ックタイマ(暴走検出手段)、502 中央演算処理装
置(再転送手段)、503 フラッシュメモリ、504
フラッシュメモリ制御回路(フラッシュメモリ制御手
段)、505 ランダムアクセスメモリ、601 再転
送回路(再転送手段)。
04 タイマ(応答検出手段)、205 ダイレクトメ
モリアクセスコントローラ(データ転送手段)、401
オートイレーズ完了チェック回路(判断手段)、40
2 NAND回路(暴走検出手段)、403 OR回路
(暴走検出手段)、404 オートイレーズウォッチド
ックタイマ(暴走検出手段)、502 中央演算処理装
置(再転送手段)、503 フラッシュメモリ、504
フラッシュメモリ制御回路(フラッシュメモリ制御手
段)、505 ランダムアクセスメモリ、601 再転
送回路(再転送手段)。
Claims (12)
- 【請求項1】 プログラムまたはデータを記憶するラン
ダムアクセスメモリと、 プログラムまたはデータを記憶するフラッシュメモリ
と、 前記フラッシュメモリへのデータの書込み、および前記
フラッシュメモリに記憶されたデータの消去を行うフラ
ッシュメモリ制御手段と、 前記ランダムアクセスメモリに記憶されたプログラムに
従って、前記ランダムアクセスメモリまたは前記フラッ
シュメモリに記憶されたプログラムまたはデータの処理
を行う中央演算処理装置と、 前記フラッシュメモリに記憶されたデータを消去し書き
換える場合、前記フラッシュメモリにデータを供給する
外部装置に所定の信号を出力し、その信号を出力した時
点から所定の時間内に前記外部装置より供給された応答
を検出する応答検出手段とを備え、 前記フラッシュメモリ制御手段は、前記フラッシュメモ
リに記憶されたデータを消去し書き換える場合におい
て、前記応答検出手段により前記外部装置からの応答が
前記所定の時間内に検出されない場合には前記データの
消去を中止することを特徴とするフラッシュメモリ内蔵
マイクロコンピュータ。 - 【請求項2】 プログラムまたはデータを記憶するラン
ダムアクセスメモリと、プログラムまたはデータを記憶
するフラッシュメモリと、前記フラッシュメモリへのデ
ータの書込み、および前記フラッシュメモリに記憶され
たデータの消去を行うフラッシュメモリ制御手段と、前
記ランダムアクセスメモリに記憶されたプログラムに従
って、前記ランダムアクセスメモリまたは前記フラッシ
ュメモリに記憶されたプログラムまたはデータの処理を
行う中央演算処理装置とを備えたフラッシュメモリ内蔵
マイクロコンピュータにおける前記フラッシュメモリに
記憶されたデータを消去し書き換えるデータ書換方法に
おいて、 前記フラッシュメモリにデータを供給する外部装置に所
定の信号を出力し、 前記所定の信号に対応する前記外部装置からの応答が所
定の時間内に検出されない場合には前記データの消去を
中止することを特徴とするデータ書換方法。 - 【請求項3】 プログラムまたはデータを記憶するラン
ダムアクセスメモリと、 プログラムまたはデータを記憶するフラッシュメモリ
と、 前記フラッシュメモリへのデータの書込み、および前記
フラッシュメモリに記憶されたデータの消去を行うフラ
ッシュメモリ制御手段と、 前記ランダムアクセスメモリに記憶されたプログラムに
従って、前記ランダムアクセスメモリまたは前記フラッ
シュメモリに記憶されたプログラムまたはデータの処理
を行う中央演算処理装置と、 前記フラッシュメモリにデータを供給する外部装置に所
定の信号を出力し、その信号を出力した時点から所定の
時間内に前記外部装置より供給された応答を検出する応
答検出手段と、 前記フラッシュメモリに記憶されているデータを読み出
し、前記ランダムアクセスメモリに転送するデータ転送
手段とを備え、 前記データ転送手段は、前記フラッシュメモリに記憶さ
れたデータを消去し書き換える場合、データを書き換え
る記憶領域のうちの所定の記憶領域に記憶されているデ
ータを前記ランダムアクセスメモリに転送し、 前記フラッシュメモリ制御手段は、前記フラッシュメモ
リに記憶されたデータを消去し書き換える場合におい
て、前記所定の記憶領域に記憶されているデータの転送
終了後にその所定の記憶領域に記憶されたデータを消去
し、そのデータの消去終了後の前記所定の時間内に前記
応答検出手段により前記外部装置からの応答が検出され
ない場合には前記データを書き換える記憶領域のうちの
残りの記憶領域に記憶されたデータの消去を中止するこ
とを特徴とするフラッシュメモリ内蔵マイクロコンピュ
ータ。 - 【請求項4】 所定の記憶領域に記憶されたデータの消
去終了後の所定の時間内に外部装置からの応答が検出さ
れない場合に、ランダムアクセスメモリに転送したデー
タをフラッシュメモリの前記所定の記憶領域に再転送す
る再転送手段を備えることを特徴とする請求項3記載の
フラッシュメモリ内蔵マイクロコンピュータ。 - 【請求項5】 再転送手段は、中央演算処理装置とは独
立に動作する回路であることを特徴とする請求項4記載
のフラッシュメモリ内蔵マイクロコンピュータ。 - 【請求項6】 プログラムまたはデータを記憶するラン
ダムアクセスメモリと、プログラムまたはデータを記憶
するフラッシュメモリと、前記フラッシュメモリへのデ
ータの書込み、および前記フラッシュメモリに記憶され
たデータの消去を行うフラッシュメモリ制御手段と、前
記ランダムアクセスメモリに記憶されたプログラムに従
って、前記ランダムアクセスメモリまたは前記フラッシ
ュメモリに記憶されたプログラムまたはデータの処理を
行う中央演算処理装置とを備えたフラッシュメモリ内蔵
マイクロコンピュータにおける前記フラッシュメモリに
記憶されたデータを消去し書き換えるデータ書換方法に
おいて、 データを書き換える記憶領域のうちの所定の記憶領域に
記憶されているデータを前記ランダムアクセスメモリに
転送し、 その所定の記憶領域に記憶されたデータを消去し、 前記フラッシュメモリにデータを供給する外部装置に所
定の信号を出力し、 所定の時間内に前記外部装置からの応答が検出されない
場合には前記データを書き換える記憶領域のうちの残り
の記憶領域に記憶されたデータの消去を中止することを
特徴とするデータ書換方法。 - 【請求項7】 プログラムまたはデータを記憶するラン
ダムアクセスメモリと、 プログラムまたはデータを記憶するフラッシュメモリ
と、 前記フラッシュメモリに記憶されたデータを消去し書き
換える場合、前記フラッシュメモリに記憶されたベクタ
テーブルのデータを前記ランダムアクセスメモリに転送
するデータ転送手段と、 前記フラッシュメモリへのデータの書込み、および前記
フラッシュメモリに記憶されたデータの消去を行い、前
記フラッシュメモリに記憶されたデータを消去し書き換
える場合においては、前記フラッシュメモリに記憶され
たベクタテーブルのデータの転送終了後に、前記フラッ
シュメモリに記憶されたデータを消去するフラッシュメ
モリ制御手段と、 前記ランダムアクセスメモリに記憶されたプログラムに
従って、前記ランダムアクセスメモリまたは前記フラッ
シュメモリに記憶されたプログラムまたはデータの処理
を行う中央演算処理装置と、 前記フラッシュメモリに記憶されたデータを消去する処
理における暴走を検出する暴走検出手段と、 前記暴走検出手段により暴走が検出された場合に、前記
フラッシュメモリから前記ベクタテーブルのデータが消
去されているか否かを判断する判断手段と、 前記判断手段により、前記フラッシュメモリから前記ベ
クタテーブルのデータが消去されていると判断された場
合に、前記ベクタテーブルのデータを前記フラッシュメ
モリに再転送する再転送手段とを備えたフラッシュメモ
リ内蔵マイクロコンピュータ。 - 【請求項8】 暴走検出手段は、所定の信号を所定の時
間以上供給されない場合に暴走が発生したと判断し、 フラッシュメモリ制御手段は、データ消去のためにフラ
ッシュメモリに供給するパルス信号を前記所定の信号と
して前記暴走検出手段に供給することを特徴とする請求
項7記載のフラッシュメモリ内蔵マイクロコンピュー
タ。 - 【請求項9】 フラッシュメモリ制御手段は、フラッシ
ュメモリに記憶されたデータを所定の順番でブロック毎
に消去し、 判断手段は、消去されたブロックの数に基づいて、ベク
タテーブルのデータが記憶されたブロックが消去されて
いるか否かを判断し、そのブロックが消去されていると
判断した場合には、前記ベクタテーブルのデータが前記
フラッシュメモリから消去されていると判断することを
特徴とする請求項7記載のフラッシュメモリ内蔵マイク
ロコンピュータ。 - 【請求項10】 ランダムアクセスメモリは、フラッシ
ュメモリに記憶されたデータの書き換えの処理を記述し
たプログラムを所定の記憶領域に記憶し、 前記フラッシュメモリは、暴走発生時の割込ベクタアド
レスとして前記所定の記憶領域の先頭アドレスを記憶
し、 中央処理演算装置は、暴走発生時には、前記割込ベクタ
アドレスが示すアドレスから処理を再開することを特徴
とする請求項7記載のフラッシュメモリ内蔵マイクロコ
ンピュータ。 - 【請求項11】 プログラムまたはデータを記憶するラ
ンダムアクセスメモリと、プログラムまたはデータを記
憶するフラッシュメモリと、前記フラッシュメモリへの
データの書込み、および前記フラッシュメモリに記憶さ
れたデータの消去を行うフラッシュメモリ制御手段と、
前記ランダムアクセスメモリに記憶されたプログラムに
従って、前記ランダムアクセスメモリまたは前記フラッ
シュメモリに記憶されたプログラムまたはデータの処理
を行う中央演算処理装置とを備えたフラッシュメモリ内
蔵マイクロコンピュータにおける前記フラッシュメモリ
に記憶されたデータを消去し書き換えるデータ書換方法
において、 前記フラッシュメモリに記憶されたベクタテーブルのデ
ータを前記ランダムアクセスメモリに転送し、 前記フラッシュメモリに記憶されたベクタテーブルのデ
ータの転送終了後に、前記フラッシュメモリに記憶され
たデータを消去し、 前記フラッシュメモリに記憶されたデータを消去する処
理における暴走が検出された場合に、前記フラッシュメ
モリから前記ベクタテーブルのデータが消去されている
か否かを判断し、 前記フラッシュメモリから前記ベクタテーブルのデータ
が消去されていると判断された場合、前記ベクタテーブ
ルのデータを前記フラッシュメモリに再転送することを
特徴とするデータ書換方法。 - 【請求項12】 プログラムまたはデータを記憶するラ
ンダムアクセスメモリと、 プログラムまたはデータを記憶するフラッシュメモリ
と、 前記フラッシュメモリへのデータの書込み、および前記
フラッシュメモリに記憶されたデータの消去を行うフラ
ッシュメモリ制御手段と、 前記ランダムアクセスメモリに記憶されたプログラムに
従って、前記ランダムアクセスメモリまたは前記フラッ
シュメモリに記憶されたプログラムまたはデータの処理
を行う中央演算処理装置と、 前記フラッシュメモリに記憶されたデータを消去する処
理における暴走を検出する暴走検出手段とを備え、 前記中央演算処理装置は、前記フラッシュメモリに記憶
されたデータを消去する前に、前記暴走検出手段による
暴走検出時の割込ベクタアドレスを前記ランダムアクセ
スメモリに記憶させ、前記暴走検出手段により暴走が検
出された場合に、その割込ベクタアドレスが示すアドレ
スから処理を再開することを特徴とするフラッシュメモ
リ内蔵マイクロコンピュータ。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP19472698A JPH11260075A (ja) | 1998-01-08 | 1998-07-09 | フラッシュメモリ内蔵マイクロコンピュータおよびデータ書換方法 |
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP262498 | 1998-01-08 | ||
| JP10-2624 | 1998-01-08 | ||
| JP19472698A JPH11260075A (ja) | 1998-01-08 | 1998-07-09 | フラッシュメモリ内蔵マイクロコンピュータおよびデータ書換方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH11260075A true JPH11260075A (ja) | 1999-09-24 |
Family
ID=26336057
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP19472698A Pending JPH11260075A (ja) | 1998-01-08 | 1998-07-09 | フラッシュメモリ内蔵マイクロコンピュータおよびデータ書換方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH11260075A (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2008070919A (ja) * | 2006-09-12 | 2008-03-27 | Tdk Corp | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 |
| JP2014099239A (ja) * | 2006-12-22 | 2014-05-29 | Sidense Corp | Otpメモリのためのプログラム検証方法 |
| US10777287B2 (en) | 2018-06-14 | 2020-09-15 | Fujitsu Limited | Memory control apparatus, information processing apparatus, and memory control method |
-
1998
- 1998-07-09 JP JP19472698A patent/JPH11260075A/ja active Pending
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2008070919A (ja) * | 2006-09-12 | 2008-03-27 | Tdk Corp | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 |
| JP2014099239A (ja) * | 2006-12-22 | 2014-05-29 | Sidense Corp | Otpメモリのためのプログラム検証方法 |
| US10777287B2 (en) | 2018-06-14 | 2020-09-15 | Fujitsu Limited | Memory control apparatus, information processing apparatus, and memory control method |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0166272B1 (en) | Processor bus access | |
| JP4136359B2 (ja) | マイクロコンピュータ | |
| US5923838A (en) | Microcomputer with built-in flash memory | |
| WO2019136595A1 (zh) | 处理i2c总线死锁的方法、电子设备和通信系统 | |
| JP2842750B2 (ja) | Icカード | |
| JP2001350738A (ja) | フラッシュメモリ内蔵マイクロコンピュータ | |
| JPH1153306A (ja) | データ処理装置、外部記憶装置、データ処理システム及びデータ伝送方法 | |
| US6877113B2 (en) | Break determining circuit for a debugging support unit in a semiconductor integrated circuit | |
| US5481756A (en) | DMA controller mailing auto-initialize halting unit | |
| CN100353321C (zh) | 具有主用和备用引导程序的系统及启动方法 | |
| US6212646B1 (en) | Microprocessor including flash memory with its verification simplified | |
| JPH11260075A (ja) | フラッシュメモリ内蔵マイクロコンピュータおよびデータ書換方法 | |
| US20050060690A1 (en) | Microprocessor system with software emulation processed by auxiliary hardware | |
| TWI676987B (zh) | 資料處理系統與資料處理方法 | |
| JPH103436A (ja) | 自動転送機能付シリアル入出力回路 | |
| JP5010065B2 (ja) | マイクロコンピュータ | |
| EP0359232A2 (en) | Computer system and method for setting recovery time | |
| US12013805B2 (en) | Communication control apparatus and communication method | |
| JPH10198524A (ja) | ハードディスク制御装置 | |
| JP3197410B2 (ja) | Dmaバスマスタモジュール装置と制御方法 | |
| JPH03244045A (ja) | マイクロコンピュータ回路 | |
| JP2004126911A (ja) | 制御装置 | |
| JPH10143448A (ja) | メモリシステム | |
| JP2001075796A (ja) | マイクロコンピュータ及びそのファームウェア書込みシステム及び書込み方法 | |
| JP2000010909A (ja) | データ転送制御装置 |