(57)【特許請求の範囲】
【請求項１】
電気的にデータ書換え可能でメモリセルエリアが複数のブロックに分割されたフラッシュメモリ及び、データの書込み読出し可能な記憶装置を混載するマイクロコンピュータにおいて、
予め設定されたリフレッシュモードの指定により、前記フラッシュメモリに設定されたモードレジスタに対して、リフレッシュ動作を開始させるための指示電圧が印加され、リフレッシュモードの実行を開始する第１ステップと、
リフレッシュ動作を行う１ブロック若しくは数ブロックからなるエリアの第１開始アドレス及び第１終了アドレスを生成し、第１開始アドレスをカウンタに設定する第２ステップと、
前記フラッシュメモリに保持されるデータを前記第１開始アドレスから、順次読出し、一対一に対応する記憶装置のエリアにデータを書き込むデータ転送を行う第３ステップと、
前記開始アドレスからアドレス値を更新しつつ、フラッシュメモリから前記記憶装置へデータ転送を行い、前記終了アドレスに到達した際に、データ転送を終了させる第４ステップと、
前記フラッシュメモリのデータ転送させたエリアのデータを消去する第５ステップと、
データ消去された前記エリアの第２開始アドレスと第２終了アドレスを生成し、第２開始アドレスをカウンタに設定する第６ステップと、
前記記憶装置から一時退避させたデータを読出し、前記第２開始アドレスから順次、該データを再書き込みするデータ転送を行う第７ステップと、
前記第２終了アドレスに到達した際に、データの再書き込みを終了させ、該データのリフレッシュ動作を完了する第８ステップと、
で構成されることを特徴とするフラッシュメモリを混載するマイクロコンピュータのデータ書換え方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、不揮発性メモリとして、メモリセルアレイが分割されているフラッシュメモリを混載するマイクロコンピュータのデータ書換え方法に関する。
【０００２】
【従来の技術】
従来、マイクロコンピュータに搭載される不揮発性メモリとして、データ書き換え可能なＥＰＲＯＭやＥＥＰＲＯＭ等が用られる場合がある。このＥＰＲＯＭは、紫外線を所定の位置に照射して、それまでの保持データを消去し、新たにデータを書き込むことができる。このメモリは、書換える場合には、紫外線が他の部品へ影響したり、紫外線を照射できない位置に実装されている場合があるため、実装している基板等から取り外して、メモリ単体で書換える必要がある。
【０００３】
しかし、ＥＥＰＲＯＭは、所定の電気信号を印加することにより、それまで保持しているデータを消去し、新たなデータに書換えることができる。つまり、ＥＥＰＲＯＭは、実装する際に配線基板に消去・書き込み用のパターン配線を形成しておき、所定の電気信号を印加することにより、実装したままで、メモリを取り出すこと無く保持データの消去、新たなデータの書き込みができる。
【０００４】
しかし、ＥＥＰＲＯＭには、選択トランジスタを設けているため、全体としてのセルサイズがＥＰＲＯＭに比べて、数倍大きくなり、集積化させることが難しい。そこで、近年、電気的に書換えが可能で、１つのトランジスタでメモリセルが構成されるフラッシュＥＥＰＲＯＭが利用されている。このフラッシュＥＥＰＲＯＭは、配線基板に実装された状態で、所定の電気信号により書換えが可能であり、メモリ容量の大容量化が実現できる。
【０００５】
【発明が解決しようとする課題】
しかし、前述したフラッシュＥＥＰＲＯＭは、図７に示すように、例えば、ＮＯＲ型フラッシュＥＥＰＲＯＭであれば、データ書込みは、ＥＰＲＯＭと同様であって、ドレインの近傍で発生したホットエレクトロンを、コントロールゲートに印加した高電圧を用いて、フローティングゲートに注入するという原理である。また、データ消去は、コントロールゲートを接地し、ソースに印加した高電圧により発生したトンネル電流を利用して、フローティングゲートからホットエレクトロンを引き抜くという原理である。
【０００６】
従って、フローティングゲート下の酸化膜は、トンネル酸化膜という１０ｎｍ程度の薄い膜に形成されている。
このためにフラッシュＥＥＰＲＯＭのメモリセルは、技術的に解決することが難しい種々のディスターブ(disturb) の問題が発生する。例えば、技術的アプローチとしては、形成技術面からトンネル酸化膜の膜質を高品位化させて欠陥をなくす。また、回路を構成した場合には、部位に掛かるストレスを可能なかぎり回避する等である。
【０００７】
図８には、フラッシュＥＥＰＲＯＭに生じる種々のディスターブについて示す。この構成において、メモリセル１は書込み時にメモリセル２はワードラインが共通のため、ゲートが高電位になるというゲートディスターブが発生する。さらに、メモリセル３には、逆にビットラインが共通のために、ドレインに高電位が印加されるというドレインディスターブが発生する。また、ブロック１を消去時にブロック２は、ソースが高電位になるというソースディスターブが発生する。
【０００８】
これらのディスターブ若しくはストレスは、全ブロックを一括消去する場合には、時間的に比較的短くなり問題とはならない。特にソースディスターブは、一括消去の場合には発生しない。
【０００９】
しかし、実際に利用される場合には、ブロック消去が利用される場合が多く、通常、１０4 〜１０6 回の書込み・消去が要求されている。
特に、使用状況によっては、特定のブロックのみが繰り返し使用され、１０4 〜１０6 回の書込み・消去が行われてしまう場合がある。この時、全く書換えされないブロックも存在しており、そのブロックは他のブロックが書換える際のストレスを一括消去の場合に比べて、１０4 〜１０6 回受けることになり記憶されるデータに影響を与える場合もある。
【００１０】
また、長期間に渡って記憶されるデータの状態を良好に保持させる点から考えると、読み出し時にかかるドレイン電圧及びゲート電圧でのディターブも問題ととなる。
【００１１】
そこで本発明は、簡単な構成により、メモリの駆動により生じる保持データの劣化を防止するフラッシュメモリを混載するマイクロコンピュータのデータ書換え方法を提供することを目的とする。
【００１２】
【課題を解決するための手段】
本発明は上記目的を達成するために、電気的にデータ書換え可能でメモリセルエリアが複数のブロックに分割されたフラッシュメモリ及び、データの書込み読出し可能な記憶装置を混載するマイクロコンピュータにおいて、予め設定されたリフレッシュモードの指定により、前記フラッシュメモリに設定されたモードレジスタに対して、リフレッシュ動作を開始させるための指示電圧が印加され、リフレッシュモードの実行を開始する第１ステップと、リフレッシュ動作を行う１ブロック若しくは数ブロックからなるエリアの第１開始アドレス及び第１終了アドレスを生成し、第１開始アドレスをカウンタに設定する第２ステップと、前記フラッシュメモリに保持されるデータを前記第１開始アドレスから、順次読出し、一対一に対応する記憶装置のエリアにデータを書き込むデータ転送を行う第３ステップと、前記開始アドレスからアドレス値を更新しつつ、フラッシュメモリから前記記憶装置へデータ転送を行い、前記終了アドレスに到達した際に、データ転送を終了させる第４ステップと、前記フラッシュメモリのデータ転送させたエリアのデータを消去する第５ステップと、データ消去された前記エリアの第２開始アドレスと第２終了アドレスを生成し、第２開始アドレスをカウンタに設定する第６ステップと、前記記憶装置から一時退避させたデータを読出し、前記第２開始アドレスから順次、該データを再書き込みするデータ転送を行う第７ステップと、前記第２終了アドレスに到達した際に、データの再書き込みを終了させ、該データのリフレッシュ動作を完了する第８ステップとで構成されるフラッシュメモリを混載するマイクロコンピュータのデータ書換え方法を提供する。
【００１３】
以上のような構成のフラッシュメモリを混載するマイクロコンピュータのデータ書換え方法は、リフレッシュモードの指定により、リフレッシュ動作が開始され、フラッシュメモリに保持されるデータを分割して、それぞれのブロックの開始アドレス・終了アドレスが設定されて、これらアドレスに従い、ブロック毎に記憶装置（ＲＡＭ）にデータ転送して一時的に退避させ、フラッシュメモリの退避させたエリアのデータを消去する。そして、再度、記憶装置からフラッシュメモリのエリアに退避させたデータを再書込みすることにより、保持データがリフレッシュされる。
【００１４】
【発明の実施の形態】
以下、図面を参照して本発明の実施形態について詳細に説明する。
図１には、本発明による実施例としてのフラッシュメモリを混載するマイクロコンピュータの書換え方法を実施するための概略的な構成を示し説明する。
【００１５】
この構成において、メモリセルアレイが複数のブロックに分割されたフラッシュメモリ１と、マイクロコンピュータ内に内蔵するＲＡＭ２と、リフレッシュモードを指定するためのモードレジスタ３と、リフレッシュのための電圧が印加されているか否か判定するリフレッシュモード制御回路４と、リフレッシュを行うエリア（１ブロック若しくは数ブロック）の開始アドレスを生成する開始アドレスレジスタ５と、終了アドレスを生成する終了アドレスレジスタ６と、前記開始アドレス及び終了アドレスに基づいてカウントを行うアドレスカウンタ７と、前記アドレスカウンタ７にリフレッシュを行ったアドレスのカウント数と前記終了アドレス数とを比較し前記リフレッシュモード制御回路４にリフレッシュ完了の指示を行うコンパレータ８と、前記前記リフレッシュモード制御回路４からの制御信号に基づき、フラッシュメモリ１とＲＡＭ２との間で保持されるデータの転送（書込み）及び、フラッシュメモリ１の保持データをブロック単位で消去する消去・書込み制御回路９とで構成される。
【００１６】
本実施例においては、通常の動作からリフレッシュモードに切り換えるためにモードレジスタ３によりリフレッシュモードを選択する。その方法としては、（１）ハードウエアモード，（２）モニタモード，（３）ソフトウエアモード等が考えられる。
（１）ハードウエアモード
図２に示すように、マイクロコンピュータにリフレッシュモードとして機能させるための入力端子を設ける。この入力端子の電位をＨｉｇｈレベルにすることにより、モードレジスタへリフレッシュモードが設定される。
【００１７】
このモードが設定されると、図３に示すように、予め設定されたリフレッシュブロックの先頭アドレス及び終了アドレスが、各々モードレジスタへ設定され、先頭アドレスから終了アドレスまでのデータがフラッシュメモリ１から読み出され、ＲＡＭに一時的に待避される。
【００１８】
この後に、待避したエリアのブロックを消去する。消去動作完了の後、再び、フラッシュメモリ１の元のエリアへＲＡＭ２から読み出したデータを再書き込みすることにより、一連のリフレッシュ処理が終了する。
（２）モニタモード
図４に示すように、データや制御プログラム等を記憶するための本体メモリのマトリックス（ブロック分割されたエリア）とは別に、モニタ用の数ビット以上のセルを含むマトリックスを設ける。
【００１９】
例えば、モニタ用の少なくとも２ｂｉｔ以上のマトリックスを設ける。これは、ＤＡＴＡの”０”と”１”の両方をモニタするためである。また、モニタセルの感度の関係から、例えば、１，０のＤＡＴＡにそれぞれ３ｂｉｔを用いた、計６ｂｉｔによる構成であっても良い。この構成によれば、各ＤＡＴＡに対して、多数決の判定ができる。即ち、最初からモニタセルに１ｂｉｔの欠陥があっても使用できる。あるいは、モニタセルにウィークなものがあっても使用できる。
【００２０】
このマトリックスのセルへ印加される読出し時の電圧を本体メモリの各セルに印加される電圧より厳しく管理する。例えば、読出し時にセルのドレインへ印加される電圧ａを高めにする、又はゲート電圧ｂを高めにする、又は常に読み続ける等により、データリテンションのモニタとして利用する。このモニタセルのデータが１ビットでも反転していれば、前記モードレジスタへ自動的にリフレッシュモードが設定され、前述したと同様な一連のリフレッシュ処理が開始される。
（３）ソフトウエアモード
図５に示すように、本体メモリの適当なアドレス（１byte若しくは、数byte）へパスワードを書き込み、予め作成したソフトウエアにより、データの読出し時にパスワードが書き込まれたものと同じか否か定期的にモニタし、もし不一致が確認されたならば、前記モードレジスタへ自動的にリフレッシュモードが設定されるようなソフトウエアを書き込んでおき、前述したと同様な一連のリフレッシュ処理を開始させる。
【００２１】
図６に示すフローチャートを参照して、このように構成されたフラッシュメモリを混載するマイクロコンピュータの書換え方法について説明する。
まず、モードレジスタ３によりリフレッシュモードが選択されると、フレッシュモード制御回路４は書込み／消去のための指示電圧（リフレッシュのための電圧）ＶPPが印加されているか否か判定し（ステップＳ２）、印加されていれば  （ＹＥＳ）、最初にリフレッシュを行うエリア（１ブロック若しくは数ブロック）の開始アドレス及び終了アドレスを生成し、開始アドレスをアドレスカウンタ７に設定する（ステップＳ３）。もし、指示電圧ＶPPが印加されていなければ（ＮＯ）、リフレッシュモードにはエントリーされない。
【００２２】
次にアドレスカウンタ７のカウンタ値に従って、順次、フラッシュメモリ１から保持されるデータを読出し、ＲＡＭ２へ順番に書き込むデータ転送を行う（ステップＳ４）。この時、ＲＡＭ２へ書き込むアドレスは、通常のメモリマップ上のアドレスと異なり、０番地から割り当てており、フラッシュメモリ１から最初に読出したデータをＲＡＭ２の０番地、次に読出したデータをＲＡＭ２の１番地、以後同様にデータを転送する。このようにフラッシュメモリ１のリフレッシュするブロックのエリアと、そのデータが書き込まれるＲＡＭ２のエリアが一対一に対応している。
【００２３】
そして、コンパレータ８において、前記フラッシュメモリ１のリフレッシュされるデータのアドレスと前記終了アドレスとを比較して、同じになった場合には（ＹＥＳ）、リフレッシュモード制御回路４に転送終了の指示を行い、前記ＲＡＭ２へのデータ転送（一時的な退避）が終了する。
【００２４】
次に、リフレッシュモード制御回路４からのＲＡＭ２に退避させたデータブロックの消去実行を指示により、消去・書き込み制御回路９は、ブロック消去を実施し（ステップＳ６）、その消去を終了した場合には、終了の指示をリフレッシュモード制御回路４に出力する。
【００２５】
そしてリフレッシュモード制御回路４は、終了の指示に従って、アドレスカウンタ７に再度、ＲＡＭ２からフラッシュメモリ１にデータ転送を行うエリアの開始アドレスを設定し（ステップＳ７）、消去・書き込み制御回路９に再書き込みを指示し、ＲＡＭ２へ退避させたデータをフラッシュメモリ１に転送させる（ステップＳ８）。そして全データの再書き込みが終了すると（ステップＳ９）、リフレッシュすべきデータが記憶されるエリア（ブロック）に対して、リフレッシュ動作が完了したか否か判定し（ステップＳ１０）、終了するまで前記ステップＳ３に戻り、前述したと同様なリフレッシュ動作を繰り返し行う。フラッシュメモリの全エリアのブロックのリフレッシュが終了すると、このモードの動作は終了する。
【００２６】
また、このリフレッシュモードは、全エリアに対して行うだけではなく、任意のブロックを指定して行ってもよい。また、ＲＡＭ２は、マイクロコンピュータに内蔵するＲＡＭを利用したが、ポートを介して、ＤＡＭ等を用いて外部メモリに退避させてもよい。またリフレッシュモードは、モードレジスタによる設定ではなく、外部端子による設定もしくは命令に追加しても良い。また従来のプログラム、消去のモードと同様にリフレッシュコマンドとして登録してもよい。
【００２７】
以上説明したように本実施例によれば、フラッシュメモリとＲＡＭとの間で、データ転送を行うリフレッシュモードを設けることにより、フラッシュメモリに保持され、読み出し動作や書換え動作により発生するディスターブやストレスにより劣化する保持データを一時的に転送させて退避し、再書き込みを行うことにより保持データのリフレッシュを図ることができる。このリフレッシュにより保持されるデータの信頼性及び保持特性の向上を実施できる。従来のプロセス的アプローチと併せて非常に有効である。
また、このリフレッシュモードを実行させるために必要とする回路は極僅かで済み、フラッシュメモリのセル面積やデバイス構造に影響しない。
【００２８】
【発明の効果】
以上詳述したように本発明によれば、簡単な構成により、メモリの駆動により生じる保持データの劣化を防止するフラッシュメモリを混載するマイクロコンピュータのデータ書換え方法を提供することができる。
【図面の簡単な説明】
【図１】本発明の実施例としてのフラッシュメモリを混載するマイクロコンピュータの書換え方法を実施するための概略的な構成を示す図である。
【図２】データ書き換えを開始するためのハードウエアモードを設定するための構成例を示す図である。
【図３】本実施例のハードウエアモードによるデータ書き換えを説明するためのタイミングチャートである。
【図４】本実施例のデータ書き換えを開始するためのモニタモードを説明するための構成例を示す図である。
【図５】本実施例のデータ書き換えを開始するためのソフトウエアモードを説明するための図である。
【図６】本実施例のデータ書換え方法を説明するためのフローチャートである。
【図７】従来のフラッシュＥＥＰＲＯＭへのデータ書込み及びデータ消去を説明するための図である。
【図８】従来のフラッシュＥＥＰＲＯＭに生じる種々のディスターブについて説明するための図である。
【符号の説明】
１…フラッシュメモリ
２…ＲＡＭ
３…モードレジスタ
４…リフレッシュモード制御回路
５…開始アドレスレジス
６…終了アドレスレジスタ
７…アドレスカウンタ
８…コンパレータ
９…消去・書込み制御回路
【図１】
0003641066.tif 000002
【図２】
0003641066.tif 000003
【図３】
0003641066.tif 000004
【図４】
0003641066.tif 000005
【図５】
0003641066.tif 000006
【図６】
0003641066.tif 000007
【図７】
0003641066.tif 000008
【図８】
0003641066.tif 000009