(57)【要約】【課題】  冗長度が低く、不良救済率が高い誤り訂正機能付き半導体記憶装置およびその誤り訂正方法を提供する。【解決手段】  サブワードごとに付与された第一の誤り検出訂正符号に基づいてサブワードごとに誤り検出および訂正を行う第一の誤り検出訂正回路９と、列データごとに付与された第二の誤り検出訂正符号に基づいて誤りビットを含む列データを特定し、また、第一の誤り検出訂正回路９による誤り検出および訂正の結果により誤りビットが存在するサブワードを特定し、特定された列データおよびサブワードの両方に含まれるビットを誤りビットと特定し訂正する第二の誤り検出訂正回路１０とを備える。また、誤りの検出および訂正を３階層以上にわたって行う構成をとってもよい。また、ワードを構成するサブワードの数が、歩留りの値が所定値以上になるように設定する。【選択図】  図１
2005216437.tif 000002
【特許請求の範囲】
【請求項１】
複数のビットからなるサブワードを複数有するワード構成の半導体記憶装置であって、
前記ワードを記憶する記憶手段と、
前記記憶手段へ前記ワードを書き込む書き込み手段と、
前記記憶手段に記憶された前記ワードを読み出す読み出し手段と、
前記読み出し手段により読み出された前記ワードについて、各前記サブワードに付与された第一の誤り検出訂正符号に基づいて各前記サブワードごとに誤り検出および訂正を行う第一の誤り検出訂正手段と、
前記第一の誤り検出訂正手段による誤り検出および訂正の結果と、一部または全部の各前記サブワードのそれぞれ特定の順番のビットからなる列データごとに付与された第二の誤り検出訂正符号とに基づいて、前記ワードごとに誤り検出および訂正を行う第二の誤り検出訂正手段と
を備えることを特徴とする半導体記憶装置。
【請求項２】
前記第二の誤り検出訂正手段は、前記第一の誤り検出訂正符号による誤り検出または訂正の結果に基づいて誤りビットが存在するサブワードを特定し、前記第二の誤り検出訂正符号による誤り検出または訂正の結果に基づいて誤りビットを含む列データを特定し、前記特定されたサブワードおよび列データに重複して含まれるビットを誤りビットと特定し誤り訂正する
ことを特徴とする請求項１記載の半導体記憶装置。
【請求項３】
前記第一の誤り検出訂正手段は、各前記サブワード中に１つの誤りビットが存在するときにそれぞれ誤り検出および訂正し、各前記サブワード中に２つの誤りビットが存在するときにそれぞれ誤り検出を行う
ことを特徴とする請求項１または２記載の半導体記憶装置。
【請求項４】
前記第一の誤り検出訂正符号は、ハミング符号である
ことを特徴とする請求項１〜３のいずれか１項に記載の半導体記憶装置。
【請求項５】
前記第二の誤り検出訂正符号は、パリティ符号である
ことを特徴とする請求項１〜４のいずれか１項に記載の半導体記憶装置。
【請求項６】
前記第一の誤り検出訂正符号と前記第二の誤り検出訂正符号とは、異なる誤り検出訂正符号である
ことを特徴とする請求項１〜５のいずれか１項に記載の半導体記憶装置。
【請求項７】
前記第二の誤り検出訂正手段では、複数の異なる誤り検出訂正符号を用いる
ことを特徴とする請求項１〜６のいずれか１項に記載の半導体記憶装置。
【請求項８】
前記書き込み手段は、前記ワードを構成する全てのビットを一度の書き込み動作で書き込み、
前記読み出し手段は、前記ワードを構成する全てのビットを一度の読み出し動作で読み出す
ことを特徴とする請求項１〜７のいずれか１項に記載の半導体記憶装置。
【請求項９】
前記ワードを構成する前記サブワードの個数が、歩留りの値が所定値以上になるように設定されている
ことを特徴とする請求項１〜８のいずれか１項に記載の半導体記憶装置。
【請求項１０】
複数のビットからなるサブワードを複数有するワード構成の半導体記憶装置の誤り訂正方法であって、
前記ワードを書き込む書き込みステップと、
前記ワードを読み出す読み出しステップと、
前記読み出しステップにおいて読み出された前記ワードについて、各前記サブワードに付与された第一の誤り検出訂正符号に基づいて各前記サブワードごとに誤り検出および訂正を行う第一の誤り検出訂正ステップと、
前記第一の誤り検出訂正ステップにおける誤り検出および訂正の結果と、一部または全部の各前記サブワードのそれぞれ特定の順番のビットからなる列データごとに付与された第二の誤り検出訂正符号とに基づいて、前記ワードごとに誤り検出および訂正を行う第二の誤り検出訂正ステップと
を含むことを特徴とする半導体記憶装置の誤り訂正方法。
【請求項１１】
前記第二の誤り検出訂正ステップでは、前記第一の誤り検出訂正符号による誤り検出または訂正の結果に基づいて誤りビットが存在するサブワードを特定し、前記第二の誤り検出訂正符号による誤り検出または訂正の結果に基づいて誤りビットを含む列データを特定し、前記特定されたサブワードおよび列データに重複して含まれるビットを誤りビットと特定し訂正する
ことを特徴とする請求項１０記載の半導体記憶装置の誤り訂正方法。
【請求項１２】
前記第一の誤り検出訂正ステップでは、各前記サブワード中に１つの誤りビットが存在するときにそれぞれ誤り検出および訂正し、各前記サブワード中に２つの誤りビットが存在するときにそれぞれ誤り検出を行う
ことを特徴とする請求項１０または１１記載の半導体記憶装置の誤り訂正方法。
【請求項１３】
前記第一の誤り検出訂正符号は、ハミング符号である
ことを特徴とする請求項１０〜１２のいずれか１項に記載の半導体記憶装置の誤り訂正方法。
【請求項１４】
前記第二の誤り検出訂正符号は、パリティ符号である
ことを特徴とする請求項１０〜１３のいずれか１項に記載の半導体記憶装置の誤り訂正方法。
【請求項１５】
前記第一の誤り検出訂正符号と前記第二の誤り検出訂正符号とは、異なる誤り検出訂正符号である
ことを特徴とする請求項１０〜１４のいずれか１項に記載の半導体記憶装置の誤り訂正方法。
【請求項１６】
前記第二の誤り検出訂正ステップでは、複数の異なる誤り検出訂正符号を用いる
ことを特徴とする請求項１０〜１５のいずれか１項に記載の半導体記憶装置の誤り訂正方法。
【請求項１７】
前記書き込みステップでは、前記ワードを構成する全てのビットを一度の書き込み動作で書き込み、
前記読み出しステップでは、前記ワードを構成する全てのビットを一度の読み出し動作で読み出す
ことを特徴とする請求項１０〜１６のいずれか１項に記載の半導体記憶装置の誤り訂正方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、少数ビットの誤りを自動的に訂正する機能を有する半導体記憶装置に関するものである。
【背景技術】
【０００２】
従来、半導体記憶装置においては少数ビット不良による歩留り低下を低減するために、不良救済機能として誤り自動訂正機能や冗長ブロックなどを搭載している（例えば、特許文献１参照。）。特に誤り自動訂正機能においては、複数ビットからなるデータブロックごとに特定の計算式より求まる誤り訂正用の符号を専用の冗長ビットに記憶しておき、読み出し時に読み出したデータを用いて再度この符号を求め、冗長ビットから読み出した符号と比較することでデータブロック中の誤りの有無を検出し、場合により自動的に訂正を行う。
【０００３】
図９に、従来の誤り訂正機能付き半導体記憶装置の構成例を示す。この訂正機能付き半導体記憶装置２００は、外部より入力されるアドレスＡ０〜Ａnをカラムアドレスおよびロウアドレスに変換して出力するアドレスデコーダ／バッファ１と、アドレスデコーダ／バッファ１から出力されるカラムアドレスおよびロウアドレスが入力されるカラムアドレスデコーダ／バッファ２およびロウアドレスデコーダ／バッファ３と、データビットおよび冗長ビットを有しカラムアドレスデコーダ／バッファ２およびロウアドレスデコーダ／バッファ３からそれぞれ与えられるカラムアドレスおよびロウアドレスによってアクセス位置が指定されるメモリ部５と、メモリ部５に接続されてメモリ部５からのデータの読み出しおよびメモリ部５へのデータの書き込みを行うセンスアンプ／データラッチ６と、センスアンプ／データラッチ６に接続されてデータバッファ８を介して外部より入力されるデータＤ０〜Ｄnに対して冗長ビットを付加してセンスアンプ／データラッチ６へ供給するとともに、センスアンプ／データラッチ６から供給されるデータに対して冗長ビットを利用して誤り訂正を行ってデータバッファ８を介して外部へ出力する誤り訂正回路７と、外部より入力される制御信号に基づいてアドレスデコーダ／バッファ１とセンスアンプ／データラッチ６と誤り訂正回路７とデータバッファ８とに各制御信号を与える制御回路４とを備える。
【特許文献１】特許第３３７０８０４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、従来の訂正機能付き半導体記憶装置２００では誤り訂正回路７を一通りしか用いておらず、救済率を上げるためにはこの誤り訂正回路７において複数のビット救済を実施する必要があり、その場合には冗長ビットが多数必要となるという問題がある。
しかし、冗長ビットを増やせば増やすほど不良ビットの救済率は高くなるが、その代わりにメモリセルの総容量が増えてしまう。また、冗長ビットにも不良が発生する可能性があるため、冗長度が高くなるほど不良ビットの発生個数も多くなる。従って、不良救済率と冗長度の関係は必ずしも比例せず、チップ面積の問題等から冗長ビットはできるだけ少なくし、不良救済率を高める手法が望まれている。
【０００５】
そこで本発明は、冗長度が低く、不良救済率が高い誤り訂正機能付き半導体記憶装置およびその誤り訂正方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明に係る半導体記憶装置は、複数のビットからなるサブワードを複数有するワード構成の半導体記憶装置であって、前記ワードを記憶する記憶手段と、前記記憶手段へ前記ワードを書き込む書き込み手段と、前記記憶手段に記憶された前記ワードを読み出す読み出し手段と、前記読み出し手段により読み出された前記ワードについて、各前記サブワードに付与された第一の誤り検出訂正符号に基づいて各前記サブワードごとに誤り検出および訂正を行う第一の誤り検出訂正手段と、前記第一の誤り検出訂正手段による誤り検出および訂正の結果と、一部または全部の各前記サブワードのそれぞれ特定の順番のビットからなる列データごとに付与された第二の誤り検出訂正符号とに基づいて、前記ワードごとに誤り検出および訂正を行う第二の誤り検出訂正手段とを備えることを特徴とする。なお、列データとは、ワードを構成する複数のサブワードにおける同一の桁（ビット）を集めたデータである。
【０００７】
さらに、前記第二の誤り検出訂正手段は、前記第一の誤り検出訂正符号による誤り検出または訂正の結果に基づいて誤りビットが存在するサブワードを特定し、前記第二の誤り検出訂正符号による誤り検出または訂正の結果に基づいて誤りビットを含む列データを特定し、前記特定されたサブワードおよび列データに重複して含まれるビットを誤りビットと特定し訂正することを特徴とする。
【０００８】
このように、誤り訂正をデータを構成する階層ごとに実施することにより、不良救済率を向上させることができる。また、各階層における誤り訂正回路で訂正すべきビット数を減らすことができ、全体として少ない冗長ビットで効果的にデータの誤り検出および訂正を実現することが可能となる。また、半導体記憶装置のサイズを小さくすることができ、コスト削減につながる。
【０００９】
さらに、前記第一の誤り検出訂正手段は、各前記サブワード中に１つの誤りビットが存在するときにそれぞれ誤り検出および訂正し、各前記サブワード中に２つの誤りビットが存在するときにそれぞれ誤り検出を行うことを特徴とする。
また、前記第一の誤り検出訂正符号は、ハミング符号であることを特徴とする。
また、前記第二の誤り検出訂正符号は、パリティ符号であることを特徴とする。
【００１０】
これにより、従来技術では救済できないサブワード中の２ビットエラーを高い確率で救済できるようになり、冗長ビットの増分も少なくすることが可能となる。
さらに、前記第一の誤り検出訂正符号と前記第二の誤り検出訂正符号とは、異なる誤り検出訂正符号であることを特徴とする。
また、前記第二の誤り検出訂正手段では、複数の異なる誤り検出訂正符号を用いることを特徴とする。
【００１１】
これにより、救済率、冗長度、検出および訂正の可能なビット数を調整することが可能になる。
さらに、前記書き込み手段は、前記ワードを構成する全てのビットを一度の書き込み動作で書き込み、前記読み出し手段は、前記ワードを構成する全てのビットを一度の読み出し動作で読み出すことを特徴とする。
【００１２】
これにより、ワードごとの冗長データをデータと一括して読み書きできるため、動作速度を損なうことがなくなる。
さらに、前記ワードを構成する前記サブワードの個数が、歩留りの値が所定値以上になるように設定されていることを特徴とする。
これにより、サブワードの数を最適な数に設定することで、チップの歩留りの最適化を行うことができる。
【発明の効果】
【００１３】
本発明により、誤り訂正をデータを構成する階層ごとに実施することにより、不良救済率を向上させることができる。また、各階層における誤り検出訂正手段で訂正すべきビット数を減らすことができ、全体として少ない冗長ビットで効果的にデータの誤り検出および訂正を実現することが可能となる。また、それにより半導体記憶装置のサイズを小さくすることができ、コスト削減につながる。
【００１４】
また、従来技術では救済できないサブワード中の２ビットエラーを高い確率で救済できるようになり、冗長ビットの増分も少なくすることが可能となる。
さらに、救済率、冗長度、誤り検出および訂正の可能なビット数を調整することが可能になる。
また、サブワードの数を最適な数に設定することで、チップの歩留りの最適化を行うことができる。
【００１５】
例えば、冗長度は従来の２ビット訂正回路より小さく、かつ、救済率を従来の２ビット訂正回路より高くすることも可能である。
また、本発明は、誤り訂正機能付き半導体記憶装置として適用できるだけでなく、その誤り訂正方法としても適用可能である。
【発明を実施するための最良の形態】
【００１６】
本発明の実施の形態について、図面を用いて説明する。
（実施の形態１）
図１に、本発明の実施の形態１に係る誤り訂正機能付き半導体記憶装置の構成図を示す。
本訂正機能付き半導体記憶装置１００は、外部より入力されるアドレスＡ０〜Ａnをカラムアドレスおよびロウアドレスに変換して出力するアドレスデコーダ／バッファ１と、アドレスデコーダ／バッファ１から出力されるカラムアドレスおよびロウアドレスが入力されるカラムアドレスデコーダ／バッファ２およびロウアドレスデコーダ／バッファ３と、データビットおよび冗長ビットを有しカラムアドレスデコーダ／バッファ２およびロウアドレスデコーダ／バッファ３からそれぞれ与えられるカラムアドレスおよびロウアドレスによってアクセス位置が指定されるメモリ部５と、メモリ部５に接続されてメモリ部５からのデータの読み出しおよびメモリ部５へのデータの書き込みを行うセンスアンプ／データラッチ６と、データバッファ８を介して外部より入力されるデータＤ０〜Ｄnに対して冗長ビットを付加して第一の誤り訂正回路９に出力するとともに、第一の誤り訂正回路９から供給されるデータに対して冗長ビットを利用してワードごとに誤り検出・訂正を行ってデータバッファ８を介して外部へ出力する第二の誤り訂正回路１０と、センスアンプ／データラッチ６と第二の誤り訂正回路１０とに接続されて第二の誤り訂正回路１０より入力されたデータと冗長ビットをセンスアンプ／データラッチ６へ供給するとともに、センスアンプ／データラッチ６より入力されたデータに対して冗長ビットを利用してサブワードごとに誤り検出・訂正を行って第二の誤り訂正回路１０に出力する第一の誤り訂正回路９と、外部より入力される制御信号に基づいてアドレスデコーダ／バッファ１とセンスアンプ／データラッチ６と第二の誤り訂正回路１０とデータバッファ８とに各制御信号を与える制御回路４とを備える。
【００１７】
図２は、本発明の実施の形態２に係る誤り訂正回路のデータの構成を示す図である。
図２（ａ）は、サブワード構成を示している。サブワード３５は、データＤ１〜Ｄmと冗長ビットＥ１〜Ｅpとからなる。図２（ｂ）は、物理的配置のワード構成を示している。ワード４５は、ｎ個のサブワードＳ１〜Ｓn、データ用のパリティブロック１３、およびパリティブロック１３用のＥＣＣ１４とからなる。図２（ｃ）は、仮想配置のワード構成を示している。すなわち、パリティビットをサブビットを構成するデータビットの個数分だけに限定している。この構成にすることにより、これらのパリティビットの誤り訂正機能はサブビット毎に備える第一の誤り訂正回路と同一のものが使えることから、回路の設計が容易となる。
【００１８】
ハミング符号を用いた誤り訂正回路では、例えば８ビットのデータに対して４ビットの冗長ビットを付加することにより８＋４すなわち１２ビット中１ビットの誤り検出とその誤りの訂正が可能となる。ただし、この方法では１２ビット中に２ビット以上の誤りが生じた場合には正しく検出できず、間違った訂正を行う可能性がある。
そこで、冗長ビットをさらに１ビット追加して、８ビットのデータに対して５ビットの冗長ビットを付加することにより８＋５すなわち１３ビット構成にすると、１３ビット中の1ビットの誤り訂正と２ビットの誤り検出が可能となる。この場合、１ビットの誤りについては誤り箇所が特定できるため、自動的に訂正して出力することができるが、２ビットの誤りがあった場合には２ビット誤りであることを検出できるが、誤りビットの特定まではできない。
【００１９】
そこでさらに、直交する２方向の誤り検出演算を行うこと、すなわち、２ビットの誤りを含むサブワードの検出と、そのワード中のパリティの検出結果による誤りを含む列データを特定することにより、２ビットの誤りを含むサブワードと特定された列データの交わる箇所から誤りビットを特定する。
第二の誤り訂正機能は、データ８ビット毎に５ビットの冗長ビットを設けた第一の誤り検出・訂正回路と第一の誤り検出・訂正回路と直交する列データ毎の排他的論理和を算出した結果を用いる。
【００２０】
第二の誤り検出回路は、１つのワード中に含まれる複数のサブワードを構成する第一番目のビットの集合の中に存在するデータ“１”の個数またはデータ“０”の個数が偶数個であるか、奇数個であるかを記憶しておくことで、これらの集合のうち１ビットのデータが誤って反転した場合には、新たに計算した結果は以前の結果と異なることから、データの変化すなわち誤りが生じたことを検出する。
【００２１】
このような誤り検出回路を、先のワード内でサブワードを構成する第二番目のビットの集合、第三番目のビットの集合という様に第ｎ番目のビット集合ごとに計算し、それらを記憶しておくことで、これらのビット集合ごとの誤りの有無を判別する。
このビット集合ごとのパリティビットは、サブワードを構成するデータビットの個数分は必要である。
【００２２】
図３は、本発明の実施の形態１に係る誤り訂正回路の誤り訂正の一例を示す図である。仮に、図のようにｋ番目のサブワードのｐ番目とｑ番目のビットに誤りが発生したものとする。そうすると、このワードを構成しているサブワードの各ＥＣＣをチェックすることで、ｋ番目のサブワード中のデータに２ビットの誤りがあることが認識される。なお、ｋ番目以外のサブワードには誤りがないと認識される。一方、パリティをチェックすることで、ｐ列目とｑ列目の列データに含まれるいずれかのビットにそれぞれ１ビットの誤りがあると認識される。従って、結局この２つの情報から、このワードにおいてｋ番目のサブワード中のｐ番目とｑ番目のビットがそれぞれ誤っていると検出することができ、訂正が可能になる。
【００２３】
なお、さらにｋ番目のサブワード以外のサブワードに１ビットの誤りがある場合には、その１ビットの誤りを含むサブワードのＥＣＣによりその誤りは検出および訂正される。このとき、その誤りビットを含む列データがｐ列目とｑ列目以外であれば、その誤りビットに起因するパリティの反転チェックと、ｋ番目のサブワード中のｐ列目とｑ列目の誤りビットに起因するパリティの反転チェックとが区別できるので、結局３ビットの誤りがすべて訂正できる。一方、サブワード中の１ビットの誤りビットを含む列データがｐ列目またはｑ列目であれば、そのｐ列目またはｑ列目のパリティビットは反転チェックにかからないので、さらにその列データ中に他の誤りビットが含まれていることが認識されるため、結局この場合も３ビットの誤りがすべて訂正できる。
【００２４】
このように、サブワードを構成する誤り訂正符号ビットの集合（ワード）ごとにパリティ（偶奇検査）ビットを設けることで、誤り訂正の精度をより高くすることができる。また、これらのパリティビットを記録するメモリセルにも誤りが生じる可能性があることから、これらのパリティビットに対して第一の誤り訂正機能と同様の機能をもたせることでさらに精度向上が図れる。
【００２５】
以上説明を行ったように、本発明の実施の形態に係る誤り訂正機能付き半導体記憶装置を用いることで、１バイト中の１ビット誤りは全て修正可能であり、２ビットエラーについてもある条件のもとでは救済が可能となる。また、従来技術では救済できないサブワード中の２ビットエラーを高い確率で救済できるようになり、冗長ビットの増分も少なくすることが可能となる。また、半導体記憶装置のサイズを小さくすることができ、コスト削減につながる。
【００２６】
（実施の形態２）
本発明の実施の形態２は、データのワード構成が実施の形態１と異なる。
【００２７】
図４は、本発明の実施の形態１に係る誤り訂正回路のデータの構成を示す図である。
図４（ａ）は、サブワード構成を示している。サブワード３０は、データＤ１〜Ｄmと冗長ビットＥ１〜Ｅpとからなる。図４（ｂ）は、物理的配置のワード構成を示している。ワード４０は、ｎ個のサブワードＳ１〜Ｓn、サブワードＳ１〜Ｓn用のパリティブロック１１、およびパリティブロック１１用のＥＣＣ１２とからなる。図４（ｃ）は、仮想配置のワード構成を示している。ここで、パリティブロックはｍ＋ｐビット必要となっている。
【００２８】
この構成であっても、実施の形態１で説明を行った効果等が同様に得られることはいうまでもない。
【００２９】
（実施の形態３）
本誤り訂正方式では、ワード中のサブワードの数がパラメータとして自由に設定可能である。従って、サブワードの数を変化させることで、チップの歩留りの最適化を行うことができる。
【００３０】
図５は、本発明に係る誤り訂正回路および従来の誤り訂正回路におけるビット不良率と歩留りとの関係を算出した結果を示す図である（有効メモリ容量が256Kbチップの場合）。図において、１ワードの構成を１〜1024SW（サブワード)の間の１１段階に設定した場合の歩留りをそれぞれ示している。なお、右側のカッコ内の数字がそれぞれの場合の冗長度を示している。また、参考としてECCなしの場合、および従来型ECCの1〜３ビット訂正の場合の歩留りの値も示している。図からわかるように、本方式は適切にサブワードの数を選択することで、従来型ECCの２ビット訂正より低い冗長度で同等かそれ以上の歩留りが得られる。例えば、16ワード構成の場合、平均ビット不良率が0.3%のとき、従来型2bit訂正ECC（冗長度：1.88)の歩留り67.58%に対し、本方式（冗長度：1.74）では68.08%となる。
【００３１】
図６は、本発明に係る誤り訂正回路および従来の誤り訂正回路における冗長度と歩留りとの関係の一例を算出した結果を示す図である（有効メモリ容量が256Kbで、ビット不良率0.3％の場合）。図に示すように、本方式において１ワードにおけるサブワードの構成数をある領域（冗長度：1.64〜1.86、すなわち１ワード構成が8〜128サブワード）にすることで、従来型ECCより歩留りが良くなる。実質的には16〜32サブワード構成が有効である。
【００３２】
以上のように、本誤り訂正方式では、サブワードの数を最適な数に設定することで、チップの歩留りの最適化を行うことができる。
また、図７は、本発明に係る誤り訂正回路および従来の誤り訂正回路におけるビット不良率と歩留りとの関係を算出した結果を示す図である（有効メモリ容量が１Mbチップの場合）。図には、誤り訂正を用いない１メガビットメモリにおける平均ビット不良率とチップ歩留まりの関係１５、従来の１ビット誤り訂正を用いた１メガビットメモリにおける平均ビット不良率とチップ歩留まりの関係１６、本発明に係る階層型誤り訂正を用いた１メガビットメモリにおける平均ビット不良率とチップ歩留まりの関係１７、および、従来の２ビット誤り訂正を用いた１メガビットメモリにおける平均ビット不良率とチップ歩留まりの関係１８が示されている。この図からわかるように、本発明の方式は、サブワードの数を適切に選ぶことで、従来の２ビット救済ＥＣＣには及ばないが、従来の１ビット救済ＥＣＣと比べて高い救済率を実現していることがわかる。
【００３３】
以上説明を行ったように、本発明に係る誤り訂正回路によれば、冗長度は従来の２ビット訂正回路より小さく、救済率を従来の１ビット訂正回路より高くできる。さらに、あるビット不良率の場合には、救済率を従来の２ビット訂正回路より高くすることも可能になる。
【００３４】
（実施の形態４）
図８は、本発明の実施の形態４に係る誤り訂正回路のデータの構成を示す図である。本実施の形態では、誤りの検出および訂正を３階層にわたって行う構成をとっている。
【００３５】
ｎ個のサブワードとそれに対応する1個のパリティブロックからなるシートがx個重なった構造に、さらに１枚のn＋１個のパリティブロックからなるシートが備えられている。このn＋１個のパリティブロックからなるシートには、深さ方向の列データに対するそれぞれのパリティビットを備えるパリティワードが、パリティブロックｚ１〜ｚｎおよびｚに格納されている。各シート内の誤り訂正方法は、実施の形態１および２で説明したものと同じである。
【００３６】
この構成により、もしいずれかのサブワードに３個以上の誤りがあった場合、n＋１個のパリティブロックからなるシートにおいて該当する誤りビットを含むパリティブロックのビット位置が特定できる。また、誤りの生じたシート内のパリティブロックの該当するビット位置も特定できる。従って、その両方の列データに重複して含まれるビットが誤りの生じたビットとして特定でき、結局誤りを生じた全ビットとも訂正が可能になる。
【００３７】
また、図示はしていないが、4階層以上の構成をとることももちろん可能であり、階層の増加に応じて同様の誤り検出および訂正方法を用いることによりさらに救済率の向上が図れる。
このように、誤り訂正をデータを構成する階層ごとに実施することにより、不良救済率を向上させることができる。
【００３８】
以上のように、複数回に分けて各階層において誤り訂正を行うという本発明に係る誤り訂正方法を用いれば、各階層における誤り訂正回路で訂正すべきビット数を減らすことができ、全体として少ない冗長ビットで効果的にデータの誤り訂正を実現することが可能となる。
このとき、データの最小単位を構成する最下層の階層で、誤りの自動訂正を行い、この階層で訂正不可能な誤りを含む場合はそのことを上位の階層に伝えることにより、上位の階層で別の誤り訂正機能を用いてこの誤りを訂正することができる可能性が高まる。
【００３９】
また、１ワード分のデータは一度の読み出し動作で読み出しが完了し、また一度の書き込み動作で書き込みが完了する構成であれば、ワードごとの冗長データをデータと一括して読み書きできるため、動作速度を損なうことがない。
なお、一般的に誤り訂正の手法としては、偶奇判別（パリティ）方式、ハミング符号方式、巡回符号（ＣＲＣ）方式などがあり、各階層においていずれの方法を用いて誤り訂正を行ってもよい。また、複数の異なる誤り検出訂正符号を用いることで、救済率、冗長度、検出および訂正の可能なビット数を調整することが可能になる
【産業上の利用可能性】
【００４０】
本発明に係る誤り訂正機能付き半導体記憶装置およびその誤り訂正方法は、強誘電体メモリ等の不揮発性メモリに適用できる。
【図面の簡単な説明】
【００４１】
【図１】本発明の実施の形態１に係る誤り訂正機能付き半導体記憶装置の構成を示す図である。
【図２】（ａ）〜（ｃ）は、本発明の実施の形態１に係る誤り訂正回路のデータの構成を示す図である。
【図３】本発明の実施の形態１に係る誤り訂正回路の誤り訂正の一例を示す図である。
【図４】（ａ）〜（ｃ）は、本発明の実施の形態２に係る誤り訂正回路のデータの構成を示す図である。
【図５】本発明の実施の形態３に係る誤り訂正回路および従来の誤り訂正回路におけるビット不良率と歩留りとの関係を算出した結果を示す図である。
【図６】本発明の実施の形態３に係る誤り訂正回路および従来の誤り訂正回路における冗長度と歩留りとの関係を算出した結果を示す図である。
【図７】本発明の実施の形態３に係る誤り訂正回路および従来の誤り訂正回路におけるビット不良率と歩留りとの関係を算出した結果を示す図である。
【図８】本発明の実施の形態４に係る誤り訂正回路のデータの構成を示す図である。
【図９】従来の誤り訂正機能付き半導体記憶装置の構成を示す図である。
【符号の説明】
【００４２】
１  アドレスデコーダ回路およびそのバッファ回路
２  カラムアドレスデコーダ回路およびそのバッファ回路
３  ロウアドレスデコーダ回路およびそのバッファ回路
４  制御回路
５  メモリセル部
６  センスアンプ回路およびデータ保持回路
７  誤り訂正回路
８  データバッファ回路
９  第一の誤り訂正回路
１０  第二の誤り訂正回路
１１  第二の誤り訂正用冗長符号
１２  第二の誤り訂正用冗長符号のための誤り訂正符号
１３  第二の誤り訂正用冗長符号
１４  第二の誤り訂正用冗長符号のための誤り訂正符号
１５  誤り訂正を用いない１メガビットメモリにおける平均ビット不良率とチップ歩留まりの関係
１６  従来の１ビット誤り訂正を用いた１メガビットメモリにおける平均ビット不良率とチップ歩留まりとの関係
１７  本発明に係る階層型誤り訂正を用いた１メガビットメモリにおける平均ビット不良率とチップ歩留まりとの関係
１８  従来の２ビット誤り訂正を用いた１メガビットメモリにおける平均ビット不良率とチップ歩留まりとの関係
３０、３５  サブワード
４０、４５  ワード（物理的配置）
４１、４６  ワード（仮想配置）
１００、２００  誤り訂正機能付き半導体記憶装置
【図１】
2005216437.tif 000003
【図２】
2005216437.tif 000004
【図３】
2005216437.tif 000005
【図４】
2005216437.tif 000006
【図５】
2005216437.tif 000007
【図６】
2005216437.tif 000008
【図７】
2005216437.tif 000009
【図８】
2005216437.tif 000010
【図９】
2005216437.tif 000011