(57)【要約】【課題】  本発明は、書換え制限方法及び半導体装置に関し、不揮発性メモリの許容書換え回数を超えた領域の書換えを確実に防止してデータの信頼性を向上すると共に、不揮発性メモリ全体の書換えを有効に利用し、且つ、書込み処理でのエラー判定を短時間で行うことを目的とする。【解決手段】  電気的に消去可能な不揮発性メモリの書換え制限方法において、不揮発性メモリの各領域に対して、書換え回数が所定値に達すると当該領域の書換えを禁止する信号を出力するように構成する。【選択図】  図１
2006085868.tif 000002
【特許請求の範囲】
【請求項１】
電気的に消去可能な不揮発性メモリの書換え制限方法であって、
該不揮発性メモリの各領域に対して、書換え回数が所定値に達すると当該領域の書換えを禁止する信号を出力するステップを含むことを特徴とする、書換え制限方法。
【請求項２】
電気的に消去可能な不揮発性メモリの書換え制限方法であって、
該不揮発性メモリの各領域に対して、書換え回数が所定値に達していないと書換えプログラムを実行して当該領域の書換えを行い、書換え回数が所定値に達すると警告プログラムを実行すると共に当該領域の書換えを禁止するステップを含むことを特徴とする、書換え制限方法。
【請求項３】
電気的に消去可能な複数の領域からなる不揮発性メモリと、
各領域の書換え回数を監視して保持するカウンタ部と、
各領域に対して、書換え回数が所定値に達すると当該領域の書換えを禁止する禁止信号を出力する信号発生回路とを備え、
該不揮発性メモリの当該領域の書換えは該禁止信号に基づいて禁止されることを特徴とする、半導体装置。
【請求項４】
ＣＰＵを更に備え、
前記不揮発性メモリは書換えプログラム及び警告プログラムを格納するプログラム領域を含み、
該ＣＰＵは、該不揮発性メモリの各領域に対して、書換え回数が前記所定値に達していないと該書換えプログラムを実行して当該領域の書換えを行い、書換え回数が該所定値に達すると該警告プログラムを実行することを特徴とする、請求項３記載の半導体装置。
【請求項５】
前記カウンタ部及び前記信号発生回路の少なくとも一方は、前記ＣＰＵにより実現されることを特徴とする、請求項４記載の半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、書換え制限方法及び半導体装置に係り、特に電気的に消去可能な不揮発性メモリの書換えを制限する制限回路及び書換え制限機能を備えた半導体装置に関する。
【背景技術】
【０００２】
一般的に、不揮発性メモリには、書換え回数に制限があり、許容書換え回数を超えると、データを正しく書込むことが難しくなり、データの信頼性が著しく低下してしまう。このため、不揮発性メモリでは、書換え回数を監視する必要がある。不揮発性メモリ及びＣＰＵからなる半導体装置の場合、書換え回数は、プログラムにより監視することができる。しかし、この場合、ＣＰＵが実行するべきプログラム数が増加してＣＰＵへの負荷が増加するため、書換え回数の監視処理に時間がかかってしまう。
【０００３】
特許文献１は、監視回路により不揮発性メモリの書換え回数をインクリメントし、インクリメント結果がリミット値に達すると、外部の制御装置に対して割り込み要求信号を出力するものである。
【０００４】
特許文献２は、外部の不揮発性メモリへの書換え回数をカウントし、リミット値に達すると警告を発生すると共に書換えを禁止するものである。
【０００５】
特許文献３は、不揮発性メモリの領域毎に書換え回数をカウントし、書換え回数の多い領域への書込みを、書換え回数の少ない領域への書込みに再配置したり、禁止したりするものである。
【０００６】
特許文献４は、不揮発性メモリの特定領域への書換え頻度が高いと、他の領域への書換えに変換するものである。
【特許文献１】特開平１１−６６８６９号公報
【特許文献２】特開平１０−６４２９０号公報
【特許文献３】特開２００１−２９０７９２号公報
【特許文献４】特開２０００−２０２５２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
特許文献１では、割り込み要求信号を制御装置に出力することで不揮発性メモリへの書換えを禁止する構成であるため、リミット値に達した不揮発性メモリの書換えは、ハードウェアにより禁止されるわけではない。このため、例えば割り込みプログラムが誤った動作を行うと、リミット値に達した不揮発性メモリへの書込みが禁止されない場合があり、このような場合にはデータの信頼性が低下してしまう。
【０００８】
特許文献２では、不揮発性メモリの書換え制限を領域毎に管理していないので、不揮発性メモリ全体の書換えを有効に利用できない。
【０００９】
特許文献３では、不揮発性メモリの領域毎に、書換え回数の少ない領域へのアドレス変換を行うため、アドレス変換処理に時間がかかってしまい、書込み処理でのエラー判定、即ち、書換えができないことが判明するまでに、時間がかかる。
【００１０】
特許文献４では、不揮発性メモリの特定領域への書換え頻度が高いと、他の領域への書換えに変換する処理を行うため、処理に時間がかかってしまい、書込み処理でのエラー判定までに時間がかかる。
【００１１】
従って、従来は、不揮発性メモリの許容書換え回数を超えた領域の書換えを確実に防止してデータの信頼性を向上すると共に、不揮発性メモリ全体の書換えを有効に利用し、且つ、書込み処理でのエラー判定を短時間で行うことができないという問題があった。
【００１２】
そこで、本発明は、不揮発性メモリの許容書換え回数を超えた領域の書換えを確実に防止してデータの信頼性を向上すると共に、不揮発性メモリ全体の書換えを有効に利用し、且つ、書込み処理でのエラー判定を短時間で行うことができる書換え制限方法及び半導体装置を提供することを目的とする。
【課題を解決するための手段】
【００１３】
上記の課題は、電気的に消去可能な不揮発性メモリの書換え制限方法であって、該不揮発性メモリの各領域に対して、書換え回数が所定値に達すると当該領域の書換えを禁止する信号を出力するステップを含むことを特徴とする書換え制限方法によって達成できる。
【００１４】
上記の課題は、電気的に消去可能な不揮発性メモリの書換え制限方法であって、該不揮発性メモリの各領域に対して、書換え回数が所定値に達していないと書換えプログラムを実行して当該領域の書換えを行い、書換え回数が所定値に達すると警告プログラムを実行すると共に当該領域の書換えを禁止するステップを含むことを特徴とする書換え制限方法によっても達成できる。
【００１５】
上記の課題は、電気的に消去可能な複数の領域からなる不揮発性メモリと、各領域の書換え回数を監視して保持するカウンタ部と、各領域に対して、書換え回数が所定値に達すると当該領域の書換えを禁止する禁止信号を出力する信号発生回路とを備え、該不揮発性メモリの当該領域の書換えは該禁止信号に基づいて禁止されることを特徴とする半導体装置によっても達成できる。
【発明の効果】
【００１６】
本発明によれば、不揮発性メモリの許容書換え回数を超えた領域の書換えを確実に防止してデータの信頼性を向上すると共に、不揮発性メモリ全体の書換えを有効に利用し、且つ、書込み処理でのエラー判定を短時間で行うことができる書換え制限方法及び半導体装置を実現することができる。
【発明を実施するための最良の形態】
【００１７】
以下に、本発明になる書換え制限方法及び本発明になる半導体装置の実施例を、図面と共に説明する。
【００１８】
尚、以下の説明で、「書換え」とは、消去を含むものとする。従って、以下の説明でデータ書換えコマンドに基づくデータの書換えとは、データ消去コマンドに基づくデータの消去であっても良い。
【実施例】
【００１９】
図１は、本発明になる半導体装置の一実施例を示すブロック図である。半導体装置の本実施例は、本発明になる書換え制限方法の一実施例を採用する。本実施例では、本発明が１チップマイクロコンピュータ（マイコン）に適用されているが、本発明はこれに限定されるものではない。
【００２０】
図１に示す１チップマイコン１は、バス３で接続されたＣＰＵ２、監視回路４、インタフェース（Ｉ／Ｆ）部１１及び不揮発性メモリ１５からなる。監視回路４は、カウンタ部５、書換え制限回数設定用レジスタ部６、比較部７、信号発生回路８及び書換え制限回数超過表示レジスタ部９を有する。Ｉ／Ｆ部１１は、切替えスイッチ１２，１６を有する。不揮発性メモリ１５は、複数の領域からなり、本実施例では、書換えプログラムを格納するプログラム領域１３と、警告プログラムを格納するプログラム領域１４と、複数のアクセス領域Ｒ１〜Ｒ５からなる。図１では、説明の便宜上５つのアクセス領域Ｒ１〜Ｒ５が図示されているが、アクセス領域の数は任意に設定可能である。
【００２１】
本実施例では、不揮発性メモリ１５が１つの場合について説明するが、２以上の不揮発性メモリが設けられていても良いことは、言うまでもない。又、プログラム領域１３，１４は、同じ不揮発性メモリ内に設けられている必要はなく、互いに異なる不揮発性メモリ内に設けられていても良い。更に、本実施例では、各アクセス領域Ｒ１〜Ｒ５は固定長であるが、可変長としても良い。
【００２２】
本実施例では、不揮発性メモリ１５が５つのアクセス領域Ｒ１〜Ｒ５を有するので、カウンタ部５は対応する５つのカウンタＣ１〜Ｃ５からなり、書換え制限回数超過表示レジスタ部９は対応する５つのレジスタｒ１〜ｒ５からなる。
【００２３】
尚、本発明の要旨と直接関係がないので図１においてその図示は省略するが、ＣＰＵ２には１チップマイコン１の外部と接続可能なインターフェース部が接続されている。このインタフェース部は、Ｉ／Ｆ部１１と兼用されるものであっても良い。
【００２４】
監視回路４は、ＣＰＵ２からバス３を介してＩ／Ｆ部１１に送られるデータ書換えコマンドを監視する。監視回路４のカウンタ部５は、不揮発性メモリ１５の各アクセス領域Ｒ１〜Ｒ５に対して書換えが行われる毎に書換え回数をカウントしてカウント値を対応するカウンタＣ１〜Ｃ５に保持する。書換え制限回数設定レジスタ部６には、不揮発性メモリ１５の各領域Ｒ１〜Ｒ５に対する共通の書換え制限回数が予め設定されている。比較部７は、バス３を介して得られる不揮発性メモリ１５の書込みアドレス（書換えアドレス）で示されるアクセス領域に対応するカウンタ部５のカウンタに保持されているカウント値と書換え制限回数設定レジスタ部６に設定されている書換え制限回数とを比較し、比較結果が等しい時は書換え制限回数超過表示レジスタ部９の対応するレジスタにフラグをセットする。
【００２５】
書換え時には、信号発生回路８は、バス３を介して得られる書込みアドレス（書換えアドレス）を読み取り、書換え制限回数超過表示レジスタ部９内のレジスタにセットされたフラグが示すアクセス領域と一致した場合、書込み禁止信号１０をＩ／Ｆ部１１に出力する。書込み禁止信号１０は、Ｉ／Ｆ部１１内の切替えスイッチ１２，１６に入力される。
【００２６】
バス３を介して得られる書込みアドレスが、書換え制限回数超過表示レジスタ部９内のレジスタにセットされたフラグが示すアクセス領域と一致しない場合、書込みアドレスへの書換えが可能であり、信号発生回路８は書込み禁止信号１０を出力しない。つまり、信号発生回路８からＩ／Ｆ部１１へは、書込みを禁止する信号は出力されない。この場合、切替えスイッチ１６は、書込み禁止信号１０を入力されないので、書込みアドレスに対する書込み許可信号ＷＥＸを不揮発性メモリ１５に出力する。又、切替えスイッチ１２は、書込み禁止信号１０を入力されないので、不揮発性メモリ１５のプログラム領域１３から書換えを行うための書換えプログラムを読み出すよう切替え制御され、ＣＰＵ２は書換えプログラムを実行して書込みアドレスへの書換えを行う。
【００２７】
他方、信号発生回路８からＩ／Ｆ部１１へ書込み禁止信号１０が出力されると、切替えスイッチ１６は、書込み禁止信号１０に応答して、書込みアドレスに対する書込み許可信号ＷＥＸの不揮発性メモリ１５への出力を停止する。これにより、書込みアドレスへの書換えは禁止される。又、切替えスイッチ１２は、書込み禁止信号１０に応答して、不揮発性メモリ１５のプログラム領域１４から警告プログラムを読み出すよう切替え制御され、ＣＰＵ２は警告プログラムを実行して任意のエラー処理等を行い、書込みアドレスに対する書換えは行われない。
【００２８】
図２は、半導体装置の動作を説明するフローチャートである。図２において、ステップＳ１では、ＣＰＵ２が外部要求に応答して不揮発性メモリ１５に対する書込みを許可する。ステップＳ２では、ＣＰＵ２が許可した書込みに基づいて、周知の書込みコマンドシーケンスを行い、データ書込みコマンド、書込みアドレス及び書込みデータを出力する。説明の便宜上、ここではデータ書換えコマンドがデータ書込みコマンドとして出力されるものとする。
【００２９】
ステップＳ３では、監視回路４が書き込みアドレスに基づいて、カウンタ部５に保持されている書換え領域の書換え回数のカウント値が、書換え制限回数設定用レジスタ６に設定されている書換え制限回数を超えているか否かを比較部７により判定する。ステップＳ３の判定結果がＮＯであると、信号発生回路８からは書込み禁止信号１０が出力されないので、ステップＳ４では、切替えスイッチ１２は書換えプログラムを不揮発性メモリ１５のプログラム領域１３から読み出すように切替え制御され、切替えスイッチ１６は書込みアドレスに対する書込み許可信号ＷＥＸを不揮発性メモリ１５に出力するよう切替え制御されるので、書込みアドレスへの書換えは許可される。ステップＳ５では、ＣＰＵ２が書換えプログラムを実行して書込みアドレスへの書換えを行う書込み処理を行う。
【００３０】
ステップＳ６では、ＣＰＵ２が書込み処理の最終アドレスに達したか否かを判定し、判定結果がＮＯであると、ステップＳ７で次のアドレスへ移り、処理はステップＳ２へ戻る。他方、ステップＳ６の判定結果がＹＥＳであると、処理は終了する。
【００３１】
ステップＳ３の判定結果がＹＥＳであると、処理ＳＴ１及びＳＴ２が行われる。処理ＳＴ１は、ステップＳ８からなる。処理ＳＴ２は、ステップＳ１１〜Ｓ１３からなる。
【００３２】
処理ＳＴ１において、切替えスイッチ１２は書込み禁止信号１０に応答して不揮発性メモリ１５のプログラム領域１４から警告プログラムを読み出すよう切替え制御されるので、ＣＰＵ２はステップＳ８で警告プログラムを実行して任意のエラー処理等のソフトウェア処理を行い、書込みアドレスに対する書換えは行われない。
【００３３】
処理ＳＴ２において、ステップＳ１１では、切替えスイッチ１６が書込み禁止信号１０に応答して書込みアドレスに対する書込み許可信号ＷＥＸの不揮発性メモリ１５への出力を停止するので、書込みアドレスへの書換えは禁止される。ステップＳ１２では、ＣＰＵ２がデータポーリングを行い、タイムオーバーによるエラー（タイムオーバーエラー）が発生したか否かをソフトウェアにより判定する。データポーリングを行って所定時間内に書込みデータが不揮発性メモリ１５に書込めない場合、ステップＳ１３では、ＣＰＵ２が書込みエラーが発生したことを認識し、任意のエラー処理等のソフトウェア処理を行う。
【００３４】
書込み禁止信号１０が出力されると、切替えスイッチ１２が切替え制御されて警告プログラムが実行されるので、書込み動作が行なわれない。従って、例えば警告プログラムがエラー処理へジャンプするものであれば、処理ＳＴ２を待たずにエラー処理を行うことができ、エラー判定の時間が短縮される。
【００３５】
このように、本実施例では、書込み禁止信号１０により不揮発性メモリ１５の許容書換え回数を超えた領域の書換えを確実に防止するので、データの信頼性を向上することができると共に、不揮発性メモリ１５全体の書換えを有効に利用することができる。又、書換え回数の少ない領域へのアドレス変換や、特定領域への書換え頻度が高いと他の領域への書換えに変換する処理を行わないので、書込み処理でのエラー判定を短時間で行うことができる。
【００３６】
更に、処理ＳＴ１において警告プログラムがエラー処理へジャンプするものであれば、処理ＳＴ２を待たずにエラー処理を行うことができるので、エラー判定の時間を更に短縮可能となる。
【００３７】
上記実施例において、監視回路４の少なくとも一部の機能を、ＣＰＵ２により実現するようにしても良い。同様に、Ｉ／Ｆ部１１の少なくとも一部の機能を、ＣＰＵ２にとり実現するようにしても良い。
【００３８】
又、書換え制限回数設定用レジスタ６及び／又は書換え制限回数超過表示レジスタ９の機能を、監視回路４側ではなく、不揮発性メモリ１５側に設けても良い。
【００３９】
本発明は、以下に付記する発明をも包含するものである。
（付記１）  電気的に消去可能な不揮発性メモリの書換え制限方法であって、
該不揮発性メモリの各領域に対して、書換え回数が所定値に達すると当該領域の書換えを禁止する信号を出力するステップを含むことを特徴とする、書換え制限方法。
（付記２）  電気的に消去可能な不揮発性メモリの書換え制限方法であって、
該不揮発性メモリの各領域に対して、書換え回数が所定値に達していないと書換えプログラムを実行して当該領域の書換えを行い、書換え回数が所定値に達すると警告プログラムを実行すると共に当該領域の書換えを禁止するステップを含むことを特徴とする、書換え制限方法。
（付記３）  前記書換えプログラム及び前記警告プログラムは、前記不揮発性メモリのプログラム領域に格納されていることを特徴とする、付記２記載の書換え制限方法。
（付記４）  前記ステップは、前記不揮発性メモリの当該領域に対して書込み禁止信号を出力することを特徴とする、付記１又は２記載の書換え制限方法。
（付記５）  電気的に消去可能な複数の領域からなる不揮発性メモリと、
各領域の書換え回数を監視して保持するカウンタ部と、
各領域に対して、書換え回数が所定値に達すると当該領域の書換えを禁止する禁止信号を出力する信号発生回路とを備え、
該不揮発性メモリの当該領域の書換えは該禁止信号に基づいて禁止されることを特徴とする、半導体装置。
（付記６）  ＣＰＵを更に備え、
前記不揮発性メモリは書換えプログラム及び警告プログラムを格納するプログラム領域を含み、
該ＣＰＵは、該不揮発性メモリの各領域に対して、書換え回数が前記所定値に達していないと該書換えプログラムを実行して当該領域の書換えを行い、書換え回数が該所定値に達すると該警告プログラムを実行することを特徴とする、付記５記載の半導体装置。
（付記７）  前記書換えプログラム及び前記警告プログラムは、同じ不揮発性メモリ又は互いに異なる不揮発性メモリのプログラム領域に格納されていることを特徴とする、付記６記載の半導体装置。
（付記８）  前記禁止信号が入力されるインタフェース部を更に備え、
該インタフェース部は、該禁止信号に応答して前記ＣＰＵが実行する前記書換えプログラムと前記警告プログラムの切替えを行う第１のスイッチと、該禁止信号に応答して前記不揮発性メモリの各領域の書換えと書換えの禁止の切替えを行う第２のスイッチを有することを特徴とする、付記６又は７記載の半導体装置。
（付記９）  前記カウンタ部、前記信号発生回路及び前記インタフェース部の少なくとも１つは、前記ＣＰＵにより実現されることを特徴とする、付記８記載の半導体装置。
（付記１０）  前記カウンタ部及び前記信号発生回路の少なくとも一方は、前記ＣＰＵにより実現されることを特徴とする、付記６〜８のいずれか１項記載の半導体装置。
（付記１１）  前記警告プログラムは、前記ＣＰＵによるエラー処理へジャンプするプログラムであることを特徴とする、付記６〜１０のいずれか１項記載の半導体装置。
（付記１２）  前記不揮発性メモリ、前記カウンタ部、前記信号発生回路及び前記ＣＰＵは、単一チップ内に設けられていることを特徴とする、付記６〜１１のいずれか１項記載の半導体装置。
【００４０】
以上、本発明を実施例により説明したが、本発明は上記実施例に限定されるものではなく、種々の変形及び改良が可能であることは、言うまでもない。
【図面の簡単な説明】
【００４１】
【図１】本発明になる半導体装置の一実施例を示すブロック図である。
【図２】半導体装置の動作を説明するフローチャートである。
【符号の説明】
【００４２】
１      マイコン
２      ＣＰＵ
４      監視回路
５      カウンタ部
６      書換え制限回数設定用レジスタ
７      比較部
８      信号発生回路
９      書換え制限回数超過表示レジスタ
１１      Ｉ／Ｆ部
１２，１６      切替えスイッチ
１５      不揮発性メモリ
【図１】
2006085868.tif 000003
【図２】
2006085868.tif 000004