(57)【要約】【課題】  プロテクトフラグの信頼性を確保することができる不揮発性半導体メモリ、その制御方法、およびそれを用いた半導体装置を実現する。【解決手段】  本発明の不揮発性半導体メモリ、その制御方法、およびそれを用いた半導体装置は、不揮発性メモリセルからなるメモリセルアレイ１２と、ページごとに誤り訂正符号によって符号化されたプロテクトフラグ１１と、ページへのデータ書き込みに先立ってプロテクトフラグ１１を読み出す読み出し回路１３と、復号したプロテクトフラグ１１にビット誤りがある場合には誤り訂正符号によって正しく符号化されたリカバリフラグ１４および誤り検出信号１７を生成する検出回路１５と、ページへのデータ書き込みを停止させる書き込み停止信号１８を生成し、かつ、リカバリフラグ１４を更新されたプロテクトフラグ１１として不揮発性メモリセルへ書き戻す書き込み制御回路１６を有する。【選択図】  図１
2007317305.tif 000002
【特許請求の範囲】
【請求項１】
不揮発性メモリセルが行および列方向に繰り返し配置されたメモリセルアレイと、
前記メモリセルアレイへのアクセス単位である論理的な領域を示すページと、
前記ページへのデータ書き込みを禁止するために前記ページごとに前記不揮発性メモリセルに格納されており、かつ、誤り訂正符号によって符号化されているプロテクトフラグと、
前記ページへのデータ書き込みに先立って前記プロテクトフラグを読み出す読み出し手段と、
前記読み出し手段によって読み出された前記プロテクトフラグを前記誤り訂正符号によって復号し、当該プロテクトフラグにビット誤りがある場合には前記誤り訂正符号によって正しく符号化されたリカバリフラグおよび誤り検出信号を生成する検出手段と、
前記検出手段からの前記リカバリフラグおよび誤り検出信号に基づいて、前記ページへのデータ書き込みを停止させる書き込み停止信号を生成して前記メモリセルアレイへ出力し、かつ、前記リカバリフラグを当該ページに対応する更新されたプロテクトフラグとして前記不揮発性メモリセルへ書き戻す書き込み制御手段を有することを特徴とする不揮発性半導体メモリ。
【請求項２】
前記ページは、ユーザデータが格納されるデータ領域と当該データ領域の属性を示す内部情報が格納される冗長領域とを備え、
前記プロテクトフラグは、前記冗長領域に格納されていることを特徴とする請求項１に記載の不揮発性半導体メモリ。
【請求項３】
複数の不揮発性メモリセルからなるメモリセルアレイへのアクセス単位である論理的な領域を示すページを備えた不揮発性半導体メモリの制御方法であって、
前記ページへのデータ書き込みを禁止するために前記ページごとに前記不揮発性メモリセルに格納されており、かつ、誤り訂正符号によって符号化されているプロテクトフラグを前記ページへのデータ書き込みに先立って読み出す読み出しステップと、
前記読み出しステップで読み出された前記プロテクトフラグを前記誤り訂正符号によって復号し、ビット誤りを検出する検出ステップと、
前記検出ステップで当該プロテクトフラグに前記ビット誤りが見つかった場合に、正しく符号化されたリカバリフラグを前記誤り訂正符号によって生成するリカバリステップと、
前記検出ステップで復号化された前記プロテクトフラグおよび前記リカバリフラグに基づいて、当該ページへのデータ書き込み許可を判定する判定ステップと、
前記検出ステップで前記ビット誤りが検出された場合に、前記リカバリフラグを更新されたプロテクトフラグとして前記不揮発性メモリセルへ書き戻す訂正ステップを有することを特徴とする不揮発性半導体メモリの制御方法。
【請求項４】
請求項１に記載の不揮発性半導体メモリと、
前記不揮発性半導体メモリからの前記誤り検出信号に基づいて、少なくとも一部の回路動作を停止させる停止信号を生成する制御手段を有することを特徴とする半導体装置。
【請求項５】
前記停止信号は、前記不揮発性半導体メモリを動作停止させることを特徴とする請求項４に記載の半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ領域への書き込みを禁止するプロテクトフラグを有する不揮発性半導体メモリ、その制御方法、およびそれを用いた半導体装置に関する。
【背景技術】
【０００２】
従来の半導体装置に用いられる不揮発性半導体メモリは、外部からの不正な書き換えを防止するために、論理的なアクセス単位であるページごとに書き込みを禁止するプロテクトフラグを設定できるようになっている。また、プロテクトフラグは、不揮発性半導体メモリの一部をデータ書き換えができない読み出し専用とするためにも用いられる。このプロテクトフラグは、メモリセルアレイの冗長領域（例えば、「特許文献１」を参照。）にデータ領域の属性の１つとして格納される。
【０００３】
従来の不揮発性半導体メモリでは、データ領域への書き込み動作時に、まず書き込むページに付属するプロテクトフラグを読み出す。そして、プロテクトフラグが書き込み禁止を示していれば、対応するデータ領域へのデータ書き込みを中止し、プロテクトフラグが書き込み許可を示していれば、対応するデータ領域へのデータ書き込みを実行する。
【０００４】
一方、近年の半導体製造プロセスの急速な微細化に伴って、不揮発性メモリセルも微細化され、メモリセルに記憶されたデータの信頼性を必ずしも十分に確保できるとは限らなくなってきている。このため、誤り訂正符号（ＥＣＣ、Error Correcting Code）によりデータの信頼性を保持する方法が用いられるようになっている。
【０００５】
しかしながら、従来の不揮発性半導体メモリでは、上述したように、プロテクトフラグを冗長領域に格納するためその信頼性を十分に確保することができないという問題があった。すなわち、ＥＣＣの対象はデータ領域に格納されたデータであり、論理アドレスなどの属性が格納される冗長領域はＥＣＣの対象とはなっておらず、メモリセルのビット化け等により不正な書き換えを許してしまうセキュリティ上の問題があった。
【特許文献１】特開２００５−２５０９５７号公報（図２）
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明は、プロテクトフラグの信頼性を確保することができる不揮発性半導体メモリ、その制御方法、およびそれを用いた半導体装置を提供する。
【課題を解決するための手段】
【０００７】
本発明の一態様によれば、不揮発性メモリセルが行および列方向に繰り返し配置されたメモリセルアレイと、前記メモリセルアレイへのアクセス単位である論理的な領域を示すページと、前記ページへのデータ書き込みを禁止するために前記ページごとに前記不揮発性メモリセルに格納されており、かつ、誤り訂正符号によって符号化されているプロテクトフラグと、前記ページへのデータ書き込みに先立って前記プロテクトフラグを読み出す読み出し手段と、前記読み出し手段によって読み出された前記プロテクトフラグを前記誤り訂正符号によって復号し、当該プロテクトフラグにビット誤りがある場合には前記誤り訂正符号によって正しく符号化されたリカバリフラグおよび誤り検出信号を生成する検出手段と、前記検出手段からの前記リカバリフラグおよび誤り検出信号に基づいて、前記ページへのデータ書き込みを停止させる書き込み停止信号を生成して前記メモリセルアレイへ出力し、かつ、前記リカバリフラグを当該ページに対応する更新されたプロテクトフラグとして前記不揮発性メモリセルへ書き戻す書き込み制御手段を有することを特徴とする不揮発性半導体メモリが提供される。
【０００８】
また、本発明の別の一態様によれば、複数の不揮発性メモリセルからなるメモリセルアレイへのアクセス単位である論理的な領域を示すページを備えた不揮発性半導体メモリの制御方法であって、前記ページへのデータ書き込みを禁止するために前記ページごとに前記不揮発性メモリセルに格納されており、かつ、誤り訂正符号によって符号化されているプロテクトフラグを前記ページへのデータ書き込みに先立って読み出す読み出しステップと、前記読み出しステップで読み出された前記プロテクトフラグを前記誤り訂正符号によって復号し、ビット誤りを検出する検出ステップと、前記検出ステップで当該プロテクトフラグに前記ビット誤りが見つかった場合に、正しく符号化されたリカバリフラグを前記誤り訂正符号によって生成するリカバリステップと、前記検出ステップで復号化された前記プロテクトフラグおよび前記リカバリフラグに基づいて、当該ページへのデータ書き込み許可を判定する判定ステップと、前記検出ステップで前記ビット誤りが検出された場合に、前記リカバリフラグを更新されたプロテクトフラグとして前記不揮発性メモリセルへ書き戻す訂正ステップを有することを特徴とする不揮発性半導体メモリの制御方法が提供される。
【０００９】
さらに、本発明の別の一態様によれば、不揮発性半導体メモリと、前記不揮発性半導体メモリからの前記誤り検出信号に基づいて、少なくとも一部の回路動作を停止させる停止信号を生成する制御手段を有することを特徴とする半導体装置が提供される。
【発明の効果】
【００１０】
本発明によれば、プロテクトフラグの信頼性を確保できるので、データ領域を適正に保護することができる。
【発明を実施するための最良の形態】
【００１１】
以下、図面を参照しながら、本発明の実施例を説明する。
【実施例１】
【００１２】
図１は、本発明の実施例１に係わる不揮発性半導体メモリを示す回路ブロック図である。ここでは、主に、プロテクトフラグ１１の検出とそのリカバリにかかわる部分を示した。
【００１３】
本発明の実施例１に係わる不揮発性半導体メモリは、不揮発性メモリセルからなるメモリセルアレイ１２、プロテクトフラグ１１を読み出す読み出し回路１３、プロテクトフラグ１１を判定しリカバリフラグ１４を生成する検出回路１５、およびメモリセルアレイ１２への書き込みを制御する書き込み制御回路１６を備えている。
【００１４】
メモリセルアレイ１２の出力であるプロテクトフラグ１１は読み出し回路１３へ入力され、読み出し回路１３の出力は検出回路１５へ入力され、検出回路１５の第１の出力である誤り検出信号１７および第２の出力であるリカバリフラグ１４は書き込み制御回路１６へ入力され、書き込み制御回路１６の第１の出力である書き込み停止信号１８および第２の出力であるリカバリフラグ１４はメモリセルアレイ１２へ出力されている。
【００１５】
メモリセルアレイ１２は、不揮発性メモリセルが行および列方向に繰り返し配置され、アクセス単位である論理的な領域を示す複数のページ２１に分割されている。
【００１６】
読み出し回路１３は、メモリセルアレイ１２へのデータ書き込みに先立ってメモリセルアレイ１２からプロテクトフラグ１１を読み出し、検出回路１５へ出力する。
【００１７】
検出回路１５は、読み出し回路１３からのプロテクトフラグ１１を誤り訂正符号によって復号する。この時、プロテクトフラグ１１にビット誤りがあれば、検出回路１５は、誤り検出信号１７を生成し書き込み制御回路１６へ出力する。また、同時に、検出回路１５は、誤り訂正符号によって正しく符号化されたリカバリフラグ１４を生成し、これを書き込み制御回路へ出力する。
【００１８】
書き込み制御回路１６は、検出回路１５からのリカバリフラグ１４および誤り検出信号１７に基づいて、メモリセルアレイ１２へのデータ書き込みを停止させる書き込み停止信号１８を生成してメモリセルアレイ１２へ出力する。
【００１９】
すなわち、誤り検出信号１７がプロテクトフラグ１１にビット誤りがあることを示していれば、書き込み制御回路１６は、リカバリフラグ１４に基づいて、メモリセルアレイ１２への書き込み禁止を示す書き込み停止信号１８をメモリセルアレイ１２へ出力する。
【００２０】
また、同時に、書き込み制御回路１６は、更新されたプロテクトフラグ１１としてリカバリフラグ１４をメモリセルアレイ１２へ書き戻す。
【００２１】
一方、誤り検出信号１７がプロテクトフラグ１１にビット誤りがないことを示していれば、書き込み制御回路１６は、プロテクトフラグ１１に基づいて、メモリセルアレイ１２への書き込み禁止を示す書き込み停止信号１８をメモリセルアレイ１２へ出力する。
【００２２】
図２は、本発明の実施例１に係わる不揮発性半導体メモリにおけるメモリセルアレイ１２の論理的な構成を示すイメージ図である。ここでは、説明のため一例として、第０ページから第ｎページからなるメモリセルアレイ１２の論理的な構成を示した。
【００２３】
本発明の実施例１に係わる不揮発性半導体メモリにおけるメモリセルアレイ１２は、読み出しまたは書き込みのアクセス単位であるページ２１、ユーザデータが格納されるデータ領域２２、およびページ２１ごとにデータ領域２２の属性が格納される冗長領域２３を備えている。
【００２４】
ページ２１は、図２に示したように、データ領域２２および冗長領域２３で構成されている。  
冗長領域２３には、対応するデータ領域２２の書き込み禁止を示すプロテクトフラグ１１が格納されている。プロテクトフラグ１１は、複数ビットで構成され、誤り訂正符号であるハミングコードによって符号化されている。
【００２５】
次に、上述した構成を持つ不揮発性半導体メモリの制御方法について説明する。  
図３は、本発明の実施例１に係わる不揮発性半導体メモリの制御方法を示すフロー図である。ここでは、主に、データ領域２２へのデータ書き込みに先立って行われるプロテクトフラグ１１の検出とそのリカバリにかかわる部分を示した。
【００２６】
本発明の実施例１に係わる不揮発性半導体メモリの制御方法は、プロテクトフラグ１１を読み出す読み出しステップ（ＳＴ３１）、プロテクトフラグ１１を復号しビット誤りを検出する検出ステップ（ＳＴ３２）、リカバリフラグ１４を生成するリカバリステップ（ＳＴ３３）、書き込み禁止を判定する判定ステップ（ＳＴ３４）、誤り検出信号１７をセットする書き込み禁止ステップ（ＳＴ３５）、誤り検出信号１７をリセットする書き込み許可ステップ（ＳＴ３６）、およびリカバリフラグ１４を書き戻す訂正ステップ（ＳＴ３７）を備えている。
【００２７】
ＳＴ３１では、読み出し回路１３が、選択されたページ２１の符号化されたプロテクトフラグ１１を読み出し、検出回路１５へ出力する。
【００２８】
ＳＴ３２では、検出回路１５が、ＳＴ３１で読み出されたプロテクトフラグ１１をハミングコードによって復号し、１ビットのビット誤りを検出する。プロテクトフラグ１１にビット誤りがある場合（“Ｙｅｓ”）には、動作はＳＴ３３へ移行し、ビット誤りがない場合（“Ｎｏ”）には、動作はＳＴ３４へ移行する。
【００２９】
ＳＴ３３では、検出回路１５が、正しく符号化されたリカバリフラグ１４をハミングコードによって生成し、書き込み制御回路１６へ出力する。
【００３０】
ＳＴ３４では、書き込み制御回路１６が、ＳＴ３２で復号化されたプロテクトフラグ１１またはＳＴ３３で生成されたリカバリフラグ１４に基づいて、選択されたページ２１のデータ領域への書き込み許可を判定する。データ領域２２への書き込みが“許可”であれば、動作はＳＴ３６へ移行し、データ領域２２への書き込みが“禁止”であれば、動作はＳＴ３５へ移行する。
【００３１】
ＳＴ３５では、書き込み制御回路１６が、ＳＴ３４での判定結果に基づいて、メモリセルアレイ１２への書き込み停止信号１８をセットし、動作はＳＴ３７へ移行する。
【００３２】
ＳＴ３６では、書き込み制御回路１６が、ＳＴ３４での判定結果に基づいて、メモリセルアレイ１２への書き込み停止信号１８をリセットし、動作はＳＴ３７へ移行する。
【００３３】
ＳＴ３７では、書き込み制御回路１６が、ＳＴ３２での検出結果に応じて、更新されたプロテクトフラグ１１としてリカバリフラグ１４を不揮発性メモリセルへ書き戻す。すなわち、ＳＴ３１で読み出されたプロテクトフラグ１１にビット誤りが検出されていた場合に、書き込み制御回路１６は、ＳＴ３３で生成されたリカバリフラグ１４を選択されたページ２１の冗長領域へ書き込む。
【００３４】
上記実施例１によれば、プロテクトフラグ１１の信頼性を確保できるので、データ領域２２を適正に保護することができる。
【００３５】
また、上記実施例１によれば、データ領域２２へのデータ書き込みに先立ってプロテクトフラグ１１のリカバリを行うので、失われかけたプロテクトフラグ１１を安全な状態へ復活させることができる。
【００３６】
上述の実施例１では、誤り訂正符号はハミングコードであるとしたが、本発明はこれに限られるものではなく、誤り訂正能力、誤り検出能力のある符号であれば、原理的には使用可能である。また、検出するビット誤りは１ビットであるとしたが、本発明はこれに限られるものではない。
【実施例２】
【００３７】
図４は、本発明の実施例２に係わる不揮発性半導体メモリを用いた半導体装置を示す回路ブロック図である。ここでは、主に、プロテクトフラグ１１の検出とそのリカバリ、および誤り検出信号１７を用いた制御にかかわる部分を示した。なお、図４では、実施例１と同様の構成部分には同じ符号を用いている。
【００３８】
本発明の実施例２に係わる不揮発性半導体メモリを用いた半導体装置は、不揮発性半導体メモリ４１、ＬＳＩ停止信号４２を生成する制御回路４３、およびメモリ停止信号４４を生成するＣＰＵ４５（Central Processing Unit：中央演算処理装置）を備えている。
【００３９】
不揮発性半導体メモリ４１の出力である誤り検出信号１７は制御回路４３およびＣＰＵ４５へ入力され、制御回路４３の出力であるＬＳＩ停止信号４２は半導体装置の内部回路（図示していない。）へ入力され、ＣＰＵ４５の出力であるメモリ停止信号４４は不揮発性半導体メモリ４１へ出力されている。
【００４０】
不揮発性半導体メモリ４１の構成、機能、および動作は実施例１と同様であるので、詳しい説明は省略する。実施例１との違いは、誤り検出信号１７が不揮発性半導体メモリ４１の外部へ出力されていることである。
【００４１】
制御回路４３は、不揮発性半導体メモリ４１からの誤り検出信号１７に基づいて、不揮発性半導体メモリ４１が搭載されている半導体装置の少なくとも一部の回路動作を停止させるＬＳＩ停止信号４２を生成し出力する。
【００４２】
すなわち、誤り検出信号１７がプロテクトフラグ１１にビット誤りがあることを示していれば、制御回路４３は、所定の内部回路へＬＳＩ停止信号４２を出力する。これにより、半導体装置外部からの不正なアクセスを防止することができる。
【００４３】
ＣＰＵ４３は、不揮発性半導体メモリ４１からの誤り検出信号１７に基づいて、不揮発性半導体メモリ４１を停止させるメモリ停止信号４４を生成し出力する。すなわち、誤り検出信号１７がプロテクトフラグ１１にビット誤りがあることを示していれば、ＣＰＵ４５は、不揮発性半導体メモリ４１へメモリ停止信号を出力する。これにより、内部回路によるデータ領域への誤書き込みを防止することができる。
【００４４】
次に、上述した構成を持つ半導体装置の制御方法について説明する。  
図５は、本発明の実施例２に係わる不揮発性半導体メモリを用いた半導体装置の制御方法を示すフロー図である。ここでは、主に、プロテクトフラグ１１の検出および誤り検出信号１７による制御にかかわる部分を示した。
【００４５】
本発明の実施例２に係わる半導体装置の制御方法は、プロテクトフラグ１１を読み出す読み出しステップ（ＳＴ５１）、プロテクトフラグ１１を復号しビット誤りを検出する検出ステップ（ＳＴ５２）、半導体装置および不揮発性半導体メモリ４１を動作停止させる停止ステップ（ＳＴ５５）、および不揮発性半導体メモリ４１へデータを書き込む書き込みステップ（ＳＴ５６）を備えている。
【００４６】
ＳＴ５１およびＳＴ５２は不揮発性半導体メモリ４１で実行されるステップであり、その動作は実施例１と同様であるので、詳しい説明は省略する。実施例１との違いは、ＳＴ５２での検出結果に基づいて誤り検出信号１７が不揮発性半導体メモリ４１の外部にも出力されることである。
【００４７】
ＳＴ５５では、ＳＴ５２で出力された誤り検出信号１７に基づいて、制御回路４３が、ＬＳＩ停止信号４２を生成し、所定の内部回路へ出力する。また、同様に、ＣＰＵ４５がメモリ停止信号４４を生成し、不揮発性半導体メモリ４１へ出力する。
【００４８】
ＳＴ５６では、制御回路４３およびＣＰＵ４５は通常動作をしており、不揮発性半導体メモリ４１への書き込み動作が実行される。ただし、プロテクトフラグ１１がデータ領域への書き込み禁止を示している場合は、実施例１で説明したように不揮発性半導体メモリ４１は、データ領域への書き込みは行わない。
【００４９】
上記実施例２によれば、実施例１と同様の効果を得られるばかりでなく、誤り検出信号１７に基づいて、半導体装置の少なくとも一部を動作停止させるので、外部からのデータ領域への不正書き込みを防止することができる。
【００５０】
さらに、上記実施例２によれば、誤り検出信号１７に基づいて、不揮発性半導体メモリを動作停止させるので、内部回路によるデータ領域への誤書き込みを防止することができる。
【図面の簡単な説明】
【００５１】
【図１】本発明の実施例１に係わる不揮発性半導体メモリを示す回路ブロック図。
【図２】本発明の実施例１に係わる不揮発性半導体メモリにおけるメモリセルアレイ１２の論理的な構成を示すイメージ図。
【図３】本発明の実施例１に係わる不揮発性半導体メモリの制御方法を示すフロー図。
【図４】本発明の実施例２に係わる不揮発性半導体メモリを用いた半導体装置を示す回路ブロック図。
【図５】本発明の実施例２に係わる不揮発性半導体メモリを用いた半導体装置の制御方法を示すフロー図。
【符号の説明】
【００５２】
１１  プロテクトフラグ
１２  メモリセルアレイ
１３  読み出し回路
１４  リカバリフラグ
１５  検出回路
１６  書き込み制御回路
１７  誤り検出信号
１８  書き込み停止信号
【図１】
2007317305.tif 000003
【図２】
2007317305.tif 000004
【図３】
2007317305.tif 000005
【図４】
2007317305.tif 000006
【図５】
2007317305.tif 000007