(57)【要約】【課題】ビット化けの傾向を考慮してロバスト性を高めることができる半導体記憶装置を提供する。【解決手段】冗長データとして入力データの極性を反転させたデータ（例えば入力データが“０”の場合は“１”）を書込むようにしたので、冗長データとして入力データと同一極性のデータを書込む場合に比較して、ビット化けの全体の確率を低減することができる。これにより、出力データの信頼性を高めることができる。【選択図】図２
2015090588.tif 000002
【特許請求の範囲】
【請求項１】
入力データが書込まれる第１メモリセル（ａ０，ｂ０……）と当該入力データのロバスト性を高めるための冗長データが書込まれる複数の第２メモリセル（ａ１，ａ２，ｂ１，ｂ２……）とを組合せて構成される不揮発性メモリ（２）と、
前記入力データをそのままの極性で前記第１メモリセルに入力させ、前記入力データの極性を反転させた冗長データを前記第２メモリセルに入力させる入力手段（４）と、
前記第１メモリセルに書込まれた入力データをそのままの極性で出力し、前記第２メモリセルに書込まれた冗長データをその極性を反転させて出力する出力手段（６）と、
前記出力手段から出力された前記入力データと前記冗長データの内、一致した極性が多いデータを出力する多数決手段（１５）を備えたことを特徴とする半導体記憶装置。
【請求項２】
入力データが書込まれる第１メモリセルと当該入力データのロバスト性を高めるための冗長データが書込まれる一つまたは複数の第２メモリセルとを組合せて構成される不揮発性メモリと、
前記入力データをそのままの極性で前記第１メモリセルに入力させ、前記入力データの極性を反転させた冗長データを前記第２メモリセルに入力させる入力手段と、
前記第１メモリセルに書込まれた入力データをそのままの極性で出力し、前記第２メモリセルに書込まれた冗長データをその極性を反転させて出力する出力手段と、
前記出力手段から出力された前記入力データと前記冗長データとが不一致か否かを判定する不一致検出手段（１６）と、
を備えたことを特徴とする半導体記憶装置。
【請求項３】
前記多数決手段または前記不一致検出手段の動作をソフトにより実行する処理手段（１７）を備えたことを特徴とする請求項１または２記載の半導体記憶装置。
【請求項４】
前記入力手段は、前記冗長データの一部が前記入力データと同一極性となるように構成されていることを特徴とする請求項１から３の何れか一項に記載の半導体記憶装置。
【請求項５】
前記入力手段による極性反転を有効とする有効モードと、前記入力手段による極性反転を無効とする無効モードとに切換可能な第１切換手段（ＳＷ１，ＳＷ２）と、
ユーザモード実行時は前記第１切換手段を前記有効モードに切換え、検査モード実行時は前記第１切換手段を前記無効モードに切換える第１モード制御手段（１８）と、
を備えたことを特徴とする請求項１から４の何れか一項に記載の半導体記憶装置。
【請求項６】
前記出力手段による極性反転を有効とする有効モードと、前記出力手段による極性反転を無効とする無効モードとに切換可能な第２切換手段（ＳＷ１，ＳＷ２）を備え、
ユーザモード実行時は前記第２切換手段を前記有効モードに切換え、検査モード実行時は前記第２切換手段を前記無効モードに切換える第２モード制御手段（１８）と、
を備えたことを特徴とする請求項１から５の何れか一項に記載の半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、不揮発性メモリを有した半導体記憶装置に関する。
【背景技術】
【０００２】
フラッシュメモリ等の不揮発性メモリを用いた半導体記憶装置では、不揮発性メモリに記憶されたデータの信頼性向上のため、データ化け検出／訂正回路が搭載されるのが通常である。データ化け検出／訂正回路によりデータ化け検出／訂正を行うには、書きたいデータ（入力データ）に対し冗長データを付加して実施するが、主な手法にミラーリンングという手法があり、最新の技術としては特許文献１のものが挙げられる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−１３４９９３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１のものでは、データの多数決を利用した誤り訂正を例えば３冗長で行う場合は、入力データが“０”であるとすると、初期状態は１ビットの入力データと２ビットの冗長データとにより３冗長の“０００”となる。１ビット化けにより例えば“００１”となったとすると、３冗長の多数決により“１”が“０”に訂正されて出力データは“０”となる。
一方、データの不一致を利用した誤り検出を行う場合は、１ビット化けにより“００１”、２ビット化けにより“０１１”となったとすると、データの不一致によりデータ化けを検出して出力データの使用を禁止するなどの処理を行うことができる。
【０００５】
ところで、不揮発性メモリにおける実際のデータ化けは、一方向（例えば“０”が“１”に化ける）が他方（例えば“１”が“０”に化ける）よりも高確率で生じるのが一般的である。例えばフラッシュメモリの場合、何らかの要因によりフローティングゲートの電荷が抜ける確率をｐ、フローティングゲートに電荷が入る確率をｑとすると、一般的にｐ＞＞ｑ（≒０）となる傾向があり、それに伴いデータ化けの確率も一方向が他方に比べ高確率となる。
しかしながら、現在の技術では上記したビット化けの傾向が何ら考慮されておらず、ビット化けの傾向を考慮してロバスト性をさらに高めることが望まれている。
【０００６】
本発明は上記事情に鑑みてなされたもので、その目的は、ビット化けの傾向を考慮してロバスト性を高めることができる半導体記憶装置を提供することにある。
【課題を解決するための手段】
【０００７】
請求項１の発明によれば、第１メモリセルに書込まれた入力データまたは第２メモリセルに書込まれた冗長データの何れかがビット化けした場合は、多数決手段により訂正してデータを出力することができる。この場合、第１メモリセルに入力データの“０”を書込むときは、第２メモリセルには冗長データの“１”が書込まれ、第１メモリセルに入力データの“１”を書込むときは、第２メモリセルには冗長データの“０”が書込まれる。ここで、例えば不揮発性メモリがフラッシュメモリの場合は、何らかの要因でフローティングゲートの電荷が抜ける（データが“０”から“１”にビット化け）の方がフローティングゲートに電荷が入る（データが“１”から“０”にビット化け）よりも確率が高い。これにより、第１メモリセルと第２メモリセルの両方に同じ極性を書込むよりも第１メモリセルと第２メモリセルに異なる極性を書込んだ方がビット化けの全体の確率が低くなるので、出力データの信頼性を高めることができる。
【図面の簡単な説明】
【０００８】
【図１】本発明の第１実施形態における不揮発性メモリと入力段と出力段を示すブロック図
【図２】書込の電圧の印加状態を示す図１相当図
【図３】出力データを示す図１相当図
【図４】フラッシュメモリ装置の全体構成を示すブロック図
【図５】多数決一致回路を示す論理図
【図６】不一致検出回路を示す論理図
【図７】入力データを反転させない場合のビット化けの確率を示す図
【図８】入力データを反転させる場合の図７相当図
【図９】本発明の第２実施形態における不揮発性メモリの構成を示すブロック図
【図１０】正常書込が不可の場合を示す図９相当図
【図１１】本発明の第３実施形態における不揮発性メモリの構成を示すブロック図
【図１２】正常書込が不可の場合を示す図１０相当図
【図１３】本発明の第４実施形態における出力段を示すブロック図
【図１４】処理回路による多数決処理を示すフローチャート
【図１５】処理回路による不一致検出回路を示すフローチャート
【図１６】本発明の第５実施形態を示す図１相当図
【図１７】入力データの一部を反転させる場合を示す図７相当図
【図１８】本発明の第６実施形態における全ビット書込フローを示す図
【図１９】全ビット書込フローを示す図
【図２０】入力段を示すブロック図
【図２１】モードに対応した動作を示す図
【図２２】出力段を示す図
【図２３】モードに対応した動作を示す図
【発明を実施するための形態】
【０００９】
（第１実施形態）
以下、本発明をフラッシュメモリ装置に適用した第１実施形態について、図１から図８を参照して説明する。図４に示すように、本実施形態のフラッシュメモリ装置１００（半導体記憶装置に相当）は、ＮＡＮＤタイプのフラッシュメモリからなる不揮発性メモリ１、デコーダ３、入力段４、昇圧回路５、出力段６、制御回路７及び入出力バッファ８を備えて構成されている。
不揮発性メモリ１は、フラッシュメモリセルのアレイであり、複数のセクタ２で構成されている。セクタ２は一括して消去されるメモリセルの単位であり、１つのセクタ２の大きさは、通常、例えば数１０Ｋｂｉｔ〜数Ｍｂｉｔ程度である。
【００１０】
デコーダ３は、与えられるアドレス情報を解読し、不揮発性メモリ１内のメモリセルの選択／非選択を決定する。
入力段４は、デコーダ３及び制御回路７から与えられた情報を基に、選択したメモリセルのゲート、ソース、ドレインに所定の電圧を印加する。
昇圧回路５は、制御回路７からの指令に応じて書込み、読出し、または消去の動作を行うための高電圧や負電圧を生成する。
出力段６は、読出動作時に不揮発性メモリ１から入力したデータの多数決を取って制御回路７へ出力する。
【００１１】
制御回路７は、ＣＰＵ９、ＲＯＭ１０及びＲＡＭ１１を備え、アドレス情報やコマンド（制御）やデータを入出力バッファ８を介して入出力するように構成されている。制御回路７は、外部から受けたコマンドを解釈することにより、書込み、読出し、または消去などの動作を実行し、昇圧回路５を有効化／無効化したり、書込み、読出しや消去パルスのコントロールを行う。更に、制御回路７は、読出し動作などで出力データを外部に出力するときの有効化／無効化を制御する機能、不揮発性メモリ１の状態やメモリセルへの動作を制御する機能などを有する。
【００１２】
不揮発性メモリ１のセクタ２は、図１に示すように３ビットを基本単位とするメモリセルａ０，ａ１，ａ２（ｂ０，ｂ１，ｂ２……）からなるワード１２を組合せて構成されている。メモリセルａ０（ｂ０……）は入力データがそのまま書込まれる第１メモリセル、メモリセルａ１，ａ２（ｂ１，ｂ２……）は冗長データが書込まれる第２メモリセルで、３ビットのメモリセルａ０〜ａ２（ｂ０〜ｂ２……）により３冗長が構成されている。つまり、本実施形態では、同一のワード１２内に入力データと冗長データとが存在するように構成されている。
尚、以下の説明では３冗長を構成するメモリセルの内、メモリセルａ０〜ａ２を代表として説明し、他のメモリセルｂ０〜ｂ２……についての説明は省略する。
【００１３】
メモリセルａ０，ａ１，ａ２は入力段４（入力手段に相当）を介して入力データを入力するようになっている。即ち、メモリセルａ０のワード線は、ドライバ０を介してデコーダ３と接続され、メモリセルａ１，ａ２のワード線はそれぞれドライバ１，２及びインバータ１３ａ，１３ｂを介してデコーダ３と接続されている。デコーダ３は、入力データをアドレス情報により選択した所定の出力線に出力する。
【００１４】
一方、メモリセルａ０，ａ１，ａ２は出力段６（出力手段に相当）を介して出力データを出力するようになっている。即ち、メモリセルａ０のワード線はセンスアンプＳＡ０を介してと接続されている。メモリセルａ１，ａ２のワード線は、それぞれセンスアンプＳＡ１，ＳＡ２及びインバータ１６ａ，１６ｂを介してと接続されている。センスアンプＳＡ０〜ＳＡ２は、接続されたメモリセルａ０〜ａ２に流れる電流に基づいてデータが“１”であるか“０”であるかを判定し、その判定結果を出力する。
【００１５】
多数決回路１５は、入力線の信号レベルの多数決を取り、その結果を出力する。多数決回路１５は、図５に示すように例えば複数のＮｏｔ−ＯＲ回路１５ａを組合せて構成されており、３つの入力データの内、“０”が３個か２個の場合は出力レベルとして“０”、“１”が３個か２個の場合は出力レベルとして“１”を出力する。
【００１６】
図２に示すように入力データが“０”の場合にデコーダ３に書込信号が与えられると、ドライバ０からは“０”書込みの電圧がメモリセルａ０に印加され、ドライバ１，２からは“１”書込みの電圧がメモリセルａ１，ａ２に印加される。従って、３冗長を構成するメモリセルａ０〜ａ２には“０１１”が書込まれる。
【００１７】
一方、読出信号が与えられると、図３に示すようにメモリセルａ０に書込まれた入力データ“０”はそのままセンスアンプＳＡ０を介して出力され、メモリセルａ１，ａ２に書込まれた冗長データ“１”はインバータ１４ａ，１４ｂにより“０”に反転されて出力される。この場合、全ての入力データが“０”で同一であることから、多数決回路１５からは出力データとして“０”が出力されて処理される。
【００１８】
さて、３冗長を構成するメモリセルａ０〜ａ２に書込まれた入力データ或いは冗長データが何らかの要因によりビット化けすることがある。例えば冗長データの１つが“０”から“１”にビット化けして“０００”が“００１”となったとすると、多数決回路１５からは出力データとして“０”が出力され、“１”が“０”に訂正された出力データを出力することができる。
【００１９】
ここで、冗長データとして入力データの極性を反転させない従来の場合と、入力データの極性を反転させる本発明の場合のビット化けの確率を比較する。“０”が“１”にビット化けする確率をｐ、“１”が“０”にビット化けする確率をｑとすると、“０”が“１”にビット化けしない確率は１−ｐ、“１”が“０”にビット化けしない確率は１−ｑとなる。
【００２０】
図７に示すように初期状態が“０００”の場合に１ビット化けの確率はほぼ３ｐ、２ビット化けの確率はほぼ３ｐ２、３ビット化けの確率はほぼｐ３となる。初期状態が“１１１”の場合にビット化けの確率はほぼ０となる。尚、図７では最終的な確率をｑ＝０、ｐとｐ２の桁が混在する場合はｐ２の桁を省略し、ｐ２とｐ３の桁が混在する場合はｐ３の桁を省略した。
【００２１】
一方、図８に示すように初期状態が“０１１”の場合に１ビット化けの確率はほぼｐ、２ビット化けの確率はほぼ０、３ビット化けの確率はほぼ０となる。初期状態が“１００”の場合に１ビット化けの確率はほぼ２ｐ、２ビット化けの確率はほぼｐ２、３ビット化けの確率はほぼ０となる。
これらの図７及び図８から、１ｂｉｔ化けの確率に変化はないが、訂正不可能な２ｂｉｔ化けの確率を１／３に低減でき、さらに、訂正に加え検出も不可である３ｂｉｔ化けの確率を０にできることが分る。
【００２２】
このような実施形態によれば、冗長データとして入力データの極性を反転させたデータを書込むようにしたので、冗長データとして入力データと同一極性のデータを書込む場合に比較して、ビット化けの全体の確率を低減することができる。これにより、出力データの信頼性を高めることができる。
【００２３】
尚、多数決回路１５に代えて不一致検出回路を設けるようにしてもよいし、両方の回路を設けるようにしてもよい。不一致検出回路１６としては、図６に示すように、例えばＥｘｃｌｕｓｉｖｅ−ＯＲ回路１６ａとＯＲ回路１６ｂとを組合せて構成されており、３つの入力データに“０”と“１”が混在する場合はエラーフラグとして“１”を出力する。つまり、“０００”が不一致検出回路１６に入力されると、すべての入力データが同一であることから、不一致検出回路１６はエラーフラグとして“０”を出力する。この場合、出力データの信頼性は高いので、出力データを使用することが許可される。一方、メモリセルａ１，ａ２に書込まれたデータの内の１つまたは２つがビット化けした場合は、不一致検出回路１６はエラーフラグとして“１”を出力する。このような場合、出力データの信頼性が失われているので、出力データの使用は禁止される。
以下の実施形態では第１実施形態と同様に多数決回路１５が設けられている構成について説明するが、多数決回路１５に代えて不一致検出回路１６を設けてもよいし、両方の回路を設けてもよい。
【００２４】
（第２実施形態）
本発明の第２実施形態について図９及び図１０を参照して説明する。この第２実施形態は、メモリセルａ０，ａ１，ａ２を異なるワードにそれぞれ設けたことを特徴とする。
図９に示すように、不揮発性メモリ１のセクタ２を構成する第１のワード１２ａにはメモリセルａ０、第２のワード１２ｂにはメモリセルａ１、第３のワード１２ｃにはメモリセルａ２が設けられている。この実施形態では、出力段６の多数決回路１５は、第１から第３のワード１２ａ〜１２ｃのメモリセルａ０，ａ１，ａ２から入力データ及び冗長データを入力するようになっている。
【００２５】
このような実施形態によれば、図１０に示すように何らかの不具合で１ワード内全てが正常書込みできなかった場合でも多数決回路１５によりデータを救うことができる。
尚、冗長データ用のワードを１つしか設けない場合は、データを救うことができないものの、不一致検出回路１６によりデータが不一致であることは検出可能である。
【００２６】
（第３実施形態）
本発明の第３実施形態について図１１及び図１２を参照して説明する。この第２実施形態は、メモリセルａ０，ａ１，ａ２を異なるセクタにそれぞれ設けたことを特徴とする。
図１１に示すように不揮発性メモリ１の第１のセクタ２ａにはメモリセルａ０、第２のセクタ２ｂにはメモリセルａ１、第３のセクタ２ｃにはメモリセルａ２が設けられている。この実施形態では、出力段６の多数決回路１５は、第１から第３のセクタ２ａ〜２ｃのメモリセルａ０，ａ１，ａ２から入力データ及び冗長データを入力するようになっている。
【００２７】
このような実施形態によれば、図１２に示すように例えばメモリセルａ０、ｃ０、ｅ０……を直列的に接続するワード線が短絡したことにより１セクタ内全てが正常書込みできなかった場合でも多数決回路１５によりデータを救うことができる。
尚、冗長データ用のセクタを１つしか設けない場合は、データを救うことができないものの、不一致検出回路１６によりデータが不一致であることは検出可能である。
【００２８】
（第４実施形態）
本発明の第４実施形態を図１３から図１５を参照して説明する。この第４実施形態は、上記実施形態における出力段６のインバータ１４ａ，１４ｂ、多数決回路１５及び不一致検出回路１６の動作をソフトにより実行する処理回路を備えたことを特徴とする。
図１３に示すようにメモリセルａ０〜ａ２のワード線はセンスアンプＳＡ０〜ＳＡ２を介して処理回路１７（処理手段に相当）と直接接続されている。
図１４は処理回路１７による多数決回路１５の動作を実行する多数決処理を示している。尚、メモリセルａ０の入力データをＱ０、ａ１の冗長データをＱ１、ａ２の冗長データをＱ２とし、インバータの機能を実行するソフトにより極性を反転させたデータは当該データの前に「〜」を付加して示した。処理回路１７は、Ｑ０＝〜Ｑ１＝〜Ｑ２かを判定し、一致した場合は（ＹＥＳ）、出力データをＱ０とする。一致しない場合は（ＮＯ）、Ｑ０，〜Ｑ１，〜Ｑ２を比較すると“０”の方が多いかを判定する。“０”の方が多い場合は（ＹＥＳ）、出力データ＝０とする。“０”の方が少ない場合は（ＮＯ）、出力データ＝１とする。
【００２９】
以上のような動作により、多数決回路１５の動作を処理回路１７の多数決処理によりソフト的に実施することができる。
図１５は処理回路１７による不一致検出回路１６の動作を実行する不一致検出処理を示している。処理回路１７は、Ｑ０＝〜Ｑ１＝〜Ｑ２かを判定し、一致した場合は（ＹＥＳ）、エラーフラグを“０”とする。一致しない場合は（ＮＯ）、エラーフラグを“１”とする。
【００３０】
以上のような動作により、不一致検出回路１６の動作を処理回路１７の不一致検出処理によりソフト的に実施することができる。
このような実施形態によれば、処理回路１７による多数決処理によりビット化けを訂正した出力データを出力したり、不一致検出処理により不一致を検出した場合はエラーフラグを１としたりするようにしたので、アプリケーションの用途に応じて多数決回路１５と不一致検出回路１６とを選択的に動作させたり、両方を同時に動作させたりすることができ、アプリケーションの要求に対して柔軟に対応することができる。
尚、本実施形態では、処理回路１７が入力手段と出力手段も兼ねているが、インバータ回路を設け、処理手段としての動作のみを実行するように構成してもよい。また、処理回路１７は、多数決処理及び不一致検出処理の少なくとも一方の処理を実行するようにしてもよい。
【００３１】
（第５実施形態）
本発明の第５実施形態について図１６及び図１７を参照して説明する。この第５実施形態は、冗長データとして入力データの極性を全て反転させるのではなく、入力データの１部のみの極性を反転させたことを特徴とする。
図１６に示すように入力データはドライバ０，１を介してメモリセルａ０，ａ１に入力させる共に、インバータ１３ｂで極性が反転された状態でドライバ２を介してメモリセルａ２に入力させるように構成されている。一方、メモリセルａ０，ａ１の出力はセンスアンプＳＡ０，ＳＡ１を介して多数決回路１５に出力され、メモリセルａ２の出力はセンスアンプＳ２からインバータ１４ｂで極性が反転された状態で多数決回路１５に出力されるように構成されている。
【００３２】
図１７に示すように冗長データとして入力データの一部のみの極性を反転させることにより初期状態が“００１”の場合のビット化けの全体の確率は図８に示す初期状態が“００１”の場合のビット化けの全体の確率と等しい。また、初期状態が“１１０”の場合の全体の確率は図８に示す初期状態が“０１１”の場合のビット化けの全体の確率と等しい。従って、冗長データとして入力データの一部のみの極性を反転させた場合のビット化けの全体の確率は、冗長データとして入力データの極性を反転させない場合の全体の確率よりも低減することが分る。
【００３３】
このような実施形態によれば、冗長データとして入力データの一部のみの極性を反転させるようにしたので、データの極性を反転させるためのインバータを省略することが可能となり、全体構成の簡単化を図ることができる。
【００３４】
（第６実施形態）
本発明の第６実施形態について図１８から図２３を参照して説明する。図１８に示すように冗長データとして入力データの極性を反転させない構成において検査にて全ビット書込みを実施する場合は、全ビット書込フローは、“０”書込みでよい。これに対して、図１９に示すように入力データの極性を反転させる構成において検査にて全ビット書込みを実施する場合は、冗長データとして入力データの極性を反転させたデータを書込む工程が必要となることから、全ビットを一括で書込むことが不可能になる。このため、冗長データを書込むための余分なフローが発生し、検査時間の増加に繋がる。また、多数決回路１５からの出力データの読出時、冗長ビットの状態を把握することができないため、検査に不都合な構成であることが考えられる。
このような事情を考慮して全ビット書込、全ビット読出可能な回路構成を提案するもので、書込、読出信号に加え、テスト信号を用意し、ユーザでの書込／読出と検査時の書込／読出を区別した回路構成としたことを特徴とする。
【００３５】
まず、入力段４について説明する。図２０に示すようにドライバ０は入力データをメモリセルａ０にそのまま入力させ、ドライバ１，２は入力データをスイッチＳＷ１（第１切換手段に相当）を介してメモリセルａ１，ａ２に入力させると共に、スイッチＳＷ２（第１切換手段に相当）を介してインバータ１３ａ，１３ｂからの出力をメモリセルａ１，ａ２に入力させるように接続されている。
【００３６】
モード制御回路１８（第１モード制御手段に相当）は、書込信号とテスト信号が入力するように設けられており、書込信号とテスト信号の入力レベルに応じてユーザモードと検査モードを実行可能となっている。つまり、図２１に示すように、書込信号が「Ｈ」、テスト信号が「Ｌ」の場合は、モード制御回路１８は、ユーザモードであると判断してスイッチＳＷ１をＯＦＦ、スイッチＳＷ２をＯＮする。これにより、ユーザモードでは入力データの極性を反転させた冗長データが書込まれる。一方、書込信号が「Ｈ」、テスト信号が「Ｈ」の場合は、モード制御回路１８は、検査モードであると判断してスイッチＳＷ１をＯＮ、スイッチＳＷ２をＯＦＦする。これにより、検査モードでは入力データの極性が反転されることなく入力データがそのまま冗長データとして書込まれる。
【００３７】
次に、出力段６について説明する。図２２に示すようにセンスアンプＳＡ０〜ＳＡ２はメモリセルａ０〜ａ２のデータをスイッチＳＷ１（第２切換手段に相当）を介して出力すると共にＳＷ２（第２切換手段に相当）を介して多数決回路１５に出力するようになっている。
【００３８】
モード制御回路１８（第２モード制御手段に相当）は、読出信号とテスト信号が入力するように設けられており、読出信号とテスト信号の入力レベルに応じてユーザモードと検査モードを実行可能となっている。つまり、図２３に示すように、読出信号が「Ｈ」、テスト信号が「Ｌ」の場合は、モード制御回路１８は、ユーザモードであると判断してスイッチＳＷ１をＯＦＦ、スイッチＳＷ２をＯＮする。これにより、ユーザモードでは多数決回路１５によりビット化けの訂正を実行することができる。一方、書込信号が「Ｈ」、テスト信号が「Ｈ」の場合は、モード制御回路１８は、検査モードであると判断してスイッチＳＷ１をＯＮ、スイッチＳＷ２をＯＦＦする。これにより、検査モードでは訂正が行われることなく全ビットがそのまま生データとして読出される。
【００３９】
このような実施形態によれば、検査モードにより全ビットの書込みが可能となるので、検査時間の短縮を図ることができる。また、検査モードにより全ビットの生データの読出しが可能となるので、冗長ビットの状態を把握することが可能なる。
【００４０】
（その他の実施形態）
本発明は、上記実施形態に限定されることなく、次のように変形または拡張できる。
冗長データを書込むメモリセルは２つ（３冗長）に限定されることなく、１つでもよいし（２冗長）、３つ（４冗長）以上でもよい。但し、２冗長の場合は多数決を取ることはできないので、多数決回路１５を設けることはできず、不一致検出回路１６のみを設けることができる。
上記実施形態では、ＮＡＮＤタイプのフラッシュメモリ装置に適用したが、ＮＯＲタイプのフラッシュメモリに適用するようにしてもよい。
本発明をフラッシュメモリ装置に限定されることなく、ＥＰＲＯＭに適用するようにしてもよい。
【符号の説明】
【００４１】
図面中、１００はフラッシュメモリ装置（半導体記憶装置）、２は不揮発性メモリ、４は入力段（入力手段）、６は出力段（出力手段）、１５は多数決回路（多数決手段）、１６は不一致検出回路（不一致検出手段）、１７は処理回路（処理手段）、１８はモード制御回路（第１モード制御手段、第２モード制御手段）、ａ０，ｂ０……は第１メモリセル、ａ１，ａ２，ｂ１，ｂ２……は第２メモリセル、ＳＷ１，ＳＷ２はスイッチ（第１切換手段、第２切換手段）である。
【図１】
2015090588.tif 000003
【図２】
2015090588.tif 000004
【図３】
2015090588.tif 000005
【図４】
2015090588.tif 000006
【図５】
2015090588.tif 000007
【図６】
2015090588.tif 000008
【図７】
2015090588.tif 000009
【図８】
2015090588.tif 000010
【図９】
2015090588.tif 000011
【図１０】
2015090588.tif 000012
【図１１】
2015090588.tif 000013
【図１２】
2015090588.tif 000014
【図１３】
2015090588.tif 000015
【図１４】
2015090588.tif 000016
【図１５】
2015090588.tif 000017
【図１６】
2015090588.tif 000018
【図１７】
2015090588.tif 000019
【図１８】
2015090588.tif 000020
【図１９】
2015090588.tif 000021
【図２０】
2015090588.tif 000022
【図２１】
2015090588.tif 000023
【図２２】
2015090588.tif 000024
【図２３】
2015090588.tif 000025