(57)【特許請求の範囲】
【請求項１】
通常のデータ書き込み、読み出しに用いられるノーマルデータ部及び、ノーマルデータ部からの読み出しデータの誤り検出を行うための検査用データを記憶するパリティデータ部を備えたセルアレイと、
前記セルアレイからの読み出しデータ及びセルアレイへの書き込みデータを一時保持するデータバッファと、
データ書き込み時に入力された書き込みデータから前記パリティデータ部に記憶すべき検査用データを生成し、データ読み出し時に前記ノーマルデータ部から読み出されたデータと前記パリティデータ部から読み出された検査用データに基づいて読み出されたデータのエラー検知訂正を行うための、前記読み出されたデータと検査用データに基づいてシンドローム信号を生成するシンドローム生成回路及び生成されたシンドローム信号をデコードしてエラービットの訂正を行うシンドロームデコード／エラー訂正回路を有するエラー検知訂正回路と、
前記データバッファでの出力データ変化を検出してタイミング信号を生成するタイミング信号生成回路と、
前記タイミング信号生成回路で生成されたタイミング信号により制御されて前記シンドロームデコード／エラー訂正回路における前記シンドローム信号のデコードタイミング又は前記エラービットの訂正タイミングを調整する訂正タイミング調整回路と、
を有することを特徴とする半導体メモリ装置。
【請求項２】
前記エラー検知訂正回路は、外部から前記タイミング信号生成回路の活性、非活性状態を制御することにより、活性、非活性状態の切り換えが可能に構成されている
ことを特徴とする請求項１記載の半導体メモリ装置。
【請求項３】
前記訂正タイミング調整回路の出力をエラー訂正の有無を外部に知らせるモニター信号として出力するモニター端子を有する
ことを特徴とする請求項１又は２記載の半導体メモリ装置。
【請求項４】
前記シンドロームデコード／エラー訂正回路は、シンドローム信号の“１”データの組み合わせを検出するための第１のＮＡＮＤゲートと、“０”データの組み合わせを検出するためのＮＯＲゲートと、前記第１のＮＡＮＤゲートの出力の反転信号と前記ＮＯＲゲート出力の一致検出を行う第２のＮＡＮＤゲートとを備えたシンドロームデコード回路を有する
ことを特徴とする請求項１〜３のいずれか１項記載の半導体メモリ装置。
【請求項５】
前記シンドロームデコード／エラー訂正回路は、シンドローム信号の“１”データの組み合わせを検出するためのＮＡＮＤゲートを配列したＮＡＮＤゲートアレイにより構成されたシンドロームデコード回路を有する
ことを特徴とする請求項1〜３のいずれか１項記載の半導体メモリ装置。
【請求項６】
前記エラー検知訂正回路は、ハミング符号により単一ビットエラー訂正を行うものであって、前記パリティデータ部に記憶する検査用データは、読み出しデータのエラー検知訂正に必要最小限のビット数により構成されている
ことを特徴とする請求項１〜４のいずれか１項記載の半導体メモリ装置。
【請求項７】
前記エラー検知訂正回路は、ハミング符号により単一ビットエラー訂正を行うものであって、前記パリティデータ部に記憶する検査用データは、読み出しデータのエラー検知訂正に必要最小限のビット数より１ビット多いビット数で構成されている
ことを特徴とする請求項１〜３及び５のいずれか１項記載の半導体メモリ装置。
【請求項８】
前記データバッファと前記セルアレイのノーマルデータ部との間はｎビット並列データの授受が行われ、前記データバッファと外部入出力端子の間はｍビット並列データ（但し、ｍ＜ｎ）の授受が行われるものであり、
データ書き込みサイクルの前半において、書き換えられるべきｍビットデータを含むｎビットデータが並列読み出しされて、前記エラー検知訂正回路でそのｎビットデータのエラー検知訂正が行われ、
データ書き込みサイクルの後半において、前記エラー検知訂正回路で訂正されたｎビット並列データのうち書き換えられるべきｍビットデータ部分が外部入出力端子から供給されたｍビット並列データで置き換えられて、前記ノーマルデータ部に転送される
ことを特徴とする請求項１〜７のいずれか１項記載の半導体メモリ装置。
【請求項９】
前記エラー検知訂正回路は、前記書き換えられるべきｍビットデータ部分にエラーがある場合にはエラー訂正を行わず、前記書き換えられるべきｍビットデータ部分以外にエラーがある場合にエラー訂正を行う
ことを特徴とする請求項８記載の半導体メモリ装置。
【請求項１０】
前記エラー検知訂正回路は、データ読み出しサイクルにおいては、読み出しデータのエラー訂正があっても前記ノーマルデータ部の対応するセルデータの訂正を行わない
ことを特徴とする請求項１〜９のいずれか１項記載の半導体メモリ装置。
【請求項１１】
前記セルアレイは、所定周期でデータがリフレッシュされるＤＲＡＭセルアレイであって、
前記エラー検知訂正回路は、前記ＤＲＡＭセルアレイのリフレッシュ動作時、動作停止する
ことを特徴とする請求項１〜１０のいずれか１項記載の半導体メモリ装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、半導体メモリ装置に係り、特に省電力化に伴うデータ不良の救済を可能とする半導体メモリ装置に関する。
【０００２】
【従来の技術】
半導体メモリの小型化，大容量化，省電力化に伴い、半導体メモリの中でも特に微細構造を持つメモリセルはプロセス的にも、トランジスタ特性においても信頼性確保が難しくなっている。半導体メモリの中でＳＲＡＭは、メモリセルが複数のトランジスタ（フルＣＭＯＳタイプで６個のトランジスタ）で構成されるため、小型化，大容量化が困難である。これに対し、ＤＲＡＭのメモリセルは、１個のトランジスタと１個のキャパシタで構成されるため、小型化，大容量化に向いている。
【０００３】
この様なＳＲＡＭとＤＲＡＭの特徴を考慮して、例えば小型の携帯電子機器等において、従来ＳＲＡＭを用いた構成されていたメモリシステムの一部をＤＲＡＭセルを用いた疑似ＳＲＡＭ（Ｐｓｅｕｄｏ−ＳＲＡＭ；ＰＳＲＡＭ）に置き換えて小型化を図ることが考えられている。通常、ＤＲＡＭはロウ，カラムのアドレスをマルチプレクスするのに対し、ＳＲＡＭではアドレスマルチプレクスを行わない。従ってＳＲＡＭ用のインターフェースをそのまま用いるとすれば、ＰＳＲＡＭは、アドレスマルチプレクスせずに使うことになる。また、ＤＲＡＭはデータのリフレッシュ動作を必要とするから、ＰＳＲＡＭにおいても内部に自動リフレッシュ回路を内蔵させることが必要になる。
【０００４】
【発明が解決しようとする課題】
上述のように、ＰＳＲＡＭはＤＲＡＭセルを用いるために、データ保持電流がＳＲＡＭに比べて多くなるが、システムの小型化，大容量化に向いている。しかし、更に省電力化を進めようとすると、メモリセルのデータ保持特性が劣化し、自動リフレッシュ回路を内蔵するとしても、データ保持特性劣化により不良データの発生が問題になる。
省電力化によるデータ保持特性の劣化は、ＰＳＲＡＭに特有のものではなく、通常のＤＲＡＭや更にはＥＥＰＲＯＭでも同様に問題になる。
【０００５】
この発明は、好ましいデータ不良の救済態様を有する半導体メモリ装置を提供することを目的としている。
【０００６】
【発明を解決するための手段】
この発明の一実施形態に係る半導体メモリ装置は、通常のデータ書き込み、読み出しに用いられるノーマルデータ部及び、ノーマルデータ部からの読み出しデータの誤り検出を行うための検査用データを記憶するパリティデータ部を備えたセルアレイと、前記セルアレイからの読み出しデータ及びセルアレイへの書き込みデータを一時保持するデータバッファと、データ書き込み時に入力された書き込みデータから前記パリティデータ部に記憶すべき検査用データを生成し、データ読み出し時に前記ノーマルデータ部から読み出されたデータと前記パリティデータ部から読み出された検査用データに基づいて読み出されたデータのエラー検知訂正を行うための、前記読み出されたデータと検査用データに基づいてシンドローム信号を生成するシンドローム生成回路及び生成されたシンドローム信号をデコードしてエラービットの訂正を行うシンドロームデコード／エラー訂正回路を有するエラー検知訂正回路と、前記データバッファでの出力データ変化を検出してタイミング信号を生成するタイミング信号生成回路と、前記タイミング信号生成回路で生成されたタイミング信号により制御されて前記シンドロームデコード／エラー訂正回路における前記シンドローム信号のデコードタイミング又は前記エラービットの訂正タイミングを調整する訂正タイミング調整回路とを有することを特徴としている
【０００７】
エラー検知訂正回路は、例えば、ハミング符号により単一ビットエラー訂正を行うものであって、パリティデータ部に記憶する検査用データは、読み出しデータのエラー検知訂正に必要最小限のビット数により構成される。より好ましくは、パリティデータ部に記憶する検査用データは、読み出しデータのエラー検知訂正に必要最小限のビット数より１ビット多いビット数で構成される。
【０００８】
また、エラー検知訂正回路は、書き換えられるべきｍビットデータ部分にエラーがある場合にはエラー訂正を行わず、書き換えられるべきｍビットデータ部分以外にエラーがある場合にエラー訂正を行う。
またエラー検知訂正回路は、データ読み出しサイクルにおいては、読み出しデータのエラー訂正があってもノーマルデータ部の対応するセルデータの訂正を行わない。更に、セルアレイが所定周期でデータがリフレッシュされるＤＲＡＭセルアレイである場合には、エラー検知訂正回路は、ＤＲＡＭセルアレイのリフレッシュ動作時は、動作停止するものとする。
【００１０】
好ましくは、データバッファとセルアレイのノーマルデータ部との間はｎビット並列データの授受が行われ、データバッファと外部入出力端子の間はｍビット並列データ（但し、ｍ＜ｎ）の授受が行われるものであり、データ書き込みサイクルの前半において、書き換えられるべきｍビットデータを含むｎビットデータが並列読み出しされて、エラー検知訂正回路でそのｎビットデータのエラー検知訂正が行われ、データ書き込みサイクルの後半において、エラー検知訂正回路で訂正されたｎビット並列データのうち書き換えられるべきｍビットデータ部分が外部入出力端子から供給されたｍビット並列データで置き換えられて、ノーマルデータ部に転送されるものとする。
【００１１】
エラー検知訂正回路は、外部から前記タイミング信号生成回路の活性、非活性状態を制御することにより、活性、非活性状態の切り換えが可能に構成されていることが好ましい。更に、訂正タイミング調整回路の出力をエラー訂正の有無を外部に知らせるモニター信号として出力するモニター端子を備えることが好ましい。
【００１２】
本発明の他の実施形態において、前記シンドロームデコード／エラー訂正回路は、シンドローム信号の“１”データの組み合わせを検出するための第１のＮＡＮＤゲートと、“０”データの組み合わせを検出するためのＮＯＲゲートと、前記第１のＮＡＮＤゲートの出力の反転信号と前記ＮＯＲゲート出力の一致検出を行う第２のＮＡＮＤゲートとを備えたシンドロームデコード回路を有する。
【００１３】
本発明の更に他の実施形態において、前記シンドロームデコード／エラー訂正回路は、シンドローム信号の“１”データの組み合わせを検出するためのＮＡＮＤゲートを配列したＮＡＮＤゲートアレイにより構成されたシンドロームデコード回路を有する。
【００１５】
【発明の実施の形態】
以下、図面を参照して、この発明の実施の形態を説明する。
図１は、この発明の実施の形態による半導体メモリの基本構成を示す。この半導体メモリはＤＲＡＭセルを用いて構成されたＰＳＲＡＭである。この実施の形態では、セルアレイ１のデータ不良を救済するために、セルアレイ１とＩ／Ｏバッファ６の間に、読み出しデータのエラーチェックを行い、エラー訂正を行うためのエラー検知訂正（error checking and correcting：ＥＣＣ)回路７を介在させている。ＥＣＣ回路７は、ハミングコード（Hamming-Code）を利用した単一ビットエラー検出訂正を行うものである。
【００１６】
ＤＲＡＭセルアレイ１は、通常のデータ記憶を行うためのノーマルデータ部１ａと、ＥＣＣのための検査用データ、具体的にはシンドロームの奇偶判定のためのパリティデータを記憶するためのパリティデータ部１ｂとにより構成される。ロウデコーダ／ワード線ドライバ２により選択駆動されるワード線ＷＬは、ノーマルデータ部１ａからパリティデータ部１ｂにまで連続するように配設され、ワード線ＷＬとビット線ＢＬの交差部にはＤＲＡＭセルＭＣが設けられている。
【００１７】
セルアレイ１のビット線ＢＬにはセンスアンプ３が接続されている。ビット線ＢＬは、カラムゲート４により選択されて、データ線ＤＱとの間でデータ転送が行われる。データ線ＤＱにはＤＱバッファ５が設けられ、このＤＱバッファ５とＩ／Ｏバッファ６の間にＥＣＣ回路７が配置されている。
【００１８】
ＥＣＣ回路７は、ＤＱバッファ５とＩ／Ｏバッファ６の間で読み出し／書き込みデータを中継するリード／ライトドライバ７１を有する。ＥＣＣ回路７はまた、Ｉ／Ｏ端子から供給される書き込みデータＷＤに基づいて、パリティデータ部１ｂに書き込むための検査データを生成する検査ビット生成回路７３を有する。単一ビットエラー訂正（Ｓｉｎｇｌｅ−Ｅｒｒｏｒ−Ｃｏｒｒｅｃｔｉｏｎ）の場合であれば、検査ビット生成回路７３では、データビットＮビットから、符号長Ｎ＋Ｍの訂正可能な符号語（ハミング符号）を生成するように、Ｍビットの検査データを生成する。具体的に、ハミング符号語をベクトルＶとし、Ｍ桁の２進数行列である検査行列Ｈとして、ＨＶT＝０を満たすように、検査用データを生成することになる。
【００１９】
ＥＣＣ回路７はまた、パリティデータ部１ｂから読み出された検査用データＰＲＷＤと、ノーマルデータ部１ａから読み出されたデータＲＤとに基づいてシンドローム信号を生成するシンドローム生成回路７５を有する。情報ビット生成回路７４は、排他的論理和ゲートアレイにより構成されて、読み出しデータＲＤと予め定められた検査行列データとに基づいて、シンドローム生成に用いられるＭビットの情報ビットを生成して、これがシンドローム生成回路７５に送られる。シンドローム生成回路７５は、排他的論理和ゲートアレイにより構成されており、情報ビット生成回路７４で生成されるＭビットの情報ビットとＭビットの検査用データＰＲＷＤを入力して、Ｍビットのシンドローム信号を生成する。
【００２０】
リード／ライトドライバ７１内には、シンドロームデコード／エラー訂正回路７２が設けられている。このシンドロームデコード／エラー訂正回路７２において、シンドローム生成回路７５で生成されたシンドローム信号をデコードしてエラー検知を行い、エラービットの訂正を行うことになる。シンドロームデコード回路は、シンドローム信号Ｓ（＝ＨＶT）が“０”でない検査行列の中のエラービットに対応する列を検出するための、ＮＡＮＤ／ＮＯＲゲートアレイ或いは、ＮＡＮＤゲートアレイにより構成される。
【００２１】
図１では、読み出しデータＲＤと書き込みデータＷＤが異なるデータ線を転送されるかのように示されているが、実際にはこれらは同じデータバス上を異なるタイミングで転送される。リード／ライトドライバ７１とＩ／Ｏバッファ６の間のＩ／Ｏデータについても同様である。以下の実施の形態においてもまた、同様である。
【００２２】
以上のように構成された半導体メモリの動作を説明する。データ読み出し時、ＥＣＣ回路７は、ノーマルデータ部１ａから読み出されたデータＲＤと、パリティデータ部１ｂから読み出された検査用データＰＲＷＤとをシンドローム生成回路７５で比較して、シンドローム信号を生成する。シンドローム信号は、デコードすることにより、ハミングコードの検査行列のエラーのない番地では、“０”となり、エラーが発生した番地では“１”を出力する。リード／ライトドライバ７１では、シンドロームデコード／訂正回路７２がシンドローム信号をデコードしてエラー検出を行い、エラーが検出された番地のビットデータを反転して、訂正されたデータを外部に出力する。
【００２３】
データ書き込み時は、外部からの書き込みデータＷＤから、ＥＣＣ回路７内で検査用データを生成する。そして、ノーマルデータ部１ａには書き込みデータＷＤを、パリティデータ部１ｂには生成された検査用データを同時に書き込む。
【００２４】
この様に、ＥＣＣ回路を内蔵することにより、省電力化によってメモリセルアレイ１のデータ保持特性が多少劣化したとしても、検査用データに基づいて訂正された正しいデータを読み出すことが可能になる。図では示していないが、欠陥セルを置換する冗長回路方式と併用することによって、種々のセル不良を含む場合に高い救済効率が得られる。冗長回路方式は、パッケージング後のセル不良には対応できないが、ＥＣＣ回路はこれにも対応可能である。
【００２５】
なお、以下の各実施の形態でも同様であるが、データ読み出し時、セルデータに誤りがあっても外部的に正しいデータを出力するのがＥＣＣ回路であるから、読み出し時にはそのエラーに対応するセルデータの訂正は行わない。
また、ＥＣＣ回路７は、ハミングコードを利用した１ビットエラー訂正の場合、パリティデータ部１ｂの検査用データのエラービットをも検出することができる。しかし、パリティデータ部１ｂにエラービットがあるということは、ノーマルデータ部１ａのデータは正しいということを意味する。従って、パリティデータ部１ｂのデータ訂正は必要がない。
【００２６】
図２は、図１におけるＥＣＣ回路７のより具体的な構成例である。ここでは、データバッファ５とセルアレイ１の間では、ｎビット並列データの転送が行われ、データバッファ５とＩ／Ｏ端子の間では、ｍビット並列データの転送が行われる場合を扱う。但し、ｍ，ｎは正の整数（好ましくは、２のべき乗数）であって、ｍ＜ｎである。具体的に図２では、ｍ＝１６，ｎ＝６４の例を示している。
【００２７】
メモリセルアレイ１のノーマルデータ部１ａの並列読み出し／書き込みのデータが、ｎ＝６４ビットデータである。また、ＥＣＣ回路７は、ハミングコードを用いた１ビットエラー訂正を行うものとする。一般に、ｎビットのデータビットに対して、１ビットエラー訂正に必要な検査ビット数ｋは、２k≧ｎ＋ｋ＋１で表される。ｎ＝６４ビットデータの１ビットエラー検出訂正に最小限必要な検査用ビット数ｋは、ｋ＝７である。従って、パリティデータ部１ｂは、６４ビット並列データの領域と同時にアクセスされて、７ビットの検査用データが読み出し／書き込みされる。
【００２８】
ＥＣＣ回路７は、データ読み出し時はノーマルデータ部１ａの６４ｂｉｔデータを読み出し、同時にパリティデータ部１ｂから７ｂｉｔの検査用データを読み出す。これらのデータに基づいてシンドローム生成回路７５でシンドローム演算が行われて、７ｂｉｔのシンドローム信号が生成される。シンドローム信号は、リード／ライトドライバ７１に転送されデコードされる。これにより、１ｂｉｔのエラーが検知訂正される。
【００２９】
Ｉ／Ｏ端子は、ｍ＝１６個である。即ち、ＥＣＣ回路７は、データバッファ５を介してセルアレイ１との間で６４ビット並列データの授受を行うが、ＥＣＣ回路７とＩ／Ｏバッファ６（従ってＩ／Ｏ端子）との間は、１６ビット並列データの授受となる。これは、ページモードを想定したもので、ＥＣＣ回路７に読み出された６４ビットデータを、１６ビットずつシリアルに外部に読み出すことができる。
【００３０】
この実施の形態において、データ書き込みサイクルは、前半部と後半部に分かれる。即ちデータ書き込みは、外部端子から１６ビット単位で行われるが、書き込みサイクルの前半において、ノーマルデータ部１ａの書き換えられるべき１６ビットデータを含む６４ビットデータがまず並列読み出しされる。ＥＣＣ回路７では、この読み出しデータについてエラー検出訂正を行う。そして、書き込みサイクル後半において、ＥＣＣ回路７内でエラー訂正された６４ビットデータのうちの１６ビット分が、リード／ライトドライバ７１内で外部から供給された１６ビットの書き込みデータで置き換えられる。こうして一部オーバーライトされた６４ビットデータは、ノーマルデータ部１ａに転送され書き込まれる。同時に、一部オーバーライトされた６４ビットの書き込みデータに基づいて、検査用データが生成され、これがパリティデータ部１ｂに書き込まれる。
【００３１】
この様に、６４ビット並列の読み出しデータのうち、１６ビット分を外部データでオーバーライトする場合、オーバーライトされる部分については、エラー訂正を行う必要はない。従って、６４ビットデータのエラービット位置が検出された場合、それが書き込みデータの番地内にあるか否かを判定し、エラービット位置が書き込みデータの番地内であれば、エラー訂正を行わない。通常書き込みアドレスは、書き込みサイクルの間チップ内部に保持されているから、この様なアドレス判定ができる。そして、エラービットが外部から供給される１６ビットデータと同じ番地でない場合にのみ、そのエラービット部分を訂正回路７２で訂正し、残りの部分を外部データにより書き換えた後、６４ビット分をノーマルデータ部に並列書き込みする。
【００３２】
ＥＣＣ回路７は、読み出しデータに誤りがあったとしてもそのエラー検知訂正を行って外部には正しいデータとして出力するのが機能である。また、新しいデータが書き込まれる場合には、ＥＣＣ回路７において、その書き込みデータに基づいて検査用データが生成され、パリティデータ部１ｂが書き換えられる。従って、もしノーマルセル部１ａとリード／ライトドライバ７１の間のデータ授受及び、リード／ライトドライバ７１と外部端子とのデータ授受が同じビット数で行われるとすれば、書き込みサイクルではエラー検知訂正を行う必要はない。ノーマルデータ部１ａの書き込むべき番地に保持されているデータに誤りがあっても、書き込みデータによりその誤りあるデータ部分がオーバーライトされて正しいデータに書き換えられ、またパリティデータ部１ｂの検査用データも更新されるからである。
【００３３】
しかし、メモリチップがページモード等を搭載し、外部端子とのデータ授受が１６ビット単位で行われるが、チップ内部では６４ビット分が並列アクセスされる場合は、問題である。この様なモードでは、書き換えられる１６ビット分以外の（６４−１６）ビット分は、通常はチップ内部で読み出されたまま再書き込みされる。これでは、誤ったビットデータがそのまま再書き込みされるからである。そこで、上述のように、書き込みサイクルの前半で読み出しデータのエラー検知訂正を行うことにより、誤ったデータがそのまま再書き込みされる事態を防止することができる。ＥＣＣ回路７が１ビットエラー訂正である場合は、この様なデータ書き込みを行うことにより、ＥＣＣ回路機能を信頼性の高いものとすることができる。
【００３４】
図３は、図１のＥＣＣ回路７の別の構成例である。メモリセルアレイ１は、ノーマルデータ部１ａが６４ｂｉｔであり、パリティデータ部１ｂが図２の場合に比べて１ビット多い８ｂｉｔとしている。ＥＣＣ回路７は、ハミングコードを用いた単一ビットエラー訂正の場合である。
【００３５】
ＥＣＣ回路７は、データ読み出し時はノーマルデータ部１ａの６４ｂｉｔデータを読み出し、同時にパリティデータ部１ｂから８ｂｉｔの検査用データを読み出す。これらのデータに基づいてシンドローム生成回路７５でシンドローム演算が行われて、８ｂｉｔのシンドローム信号が生成される。シンドローム信号は、リード／ライトドライバ７１に転送されデコードされる。これにより、１ｂｉｔのエラーが検知訂正される。
【００３６】
データ書き込みサイクルは、この実施の形態でも、図２の実施の形態と同様に、前半部と後半部に分かれる。即ちデータ書き込みは、１６ビット単位で行われるが、書き込みサイクルの前半において、その書き込みアドレスを含むノーマルデータ部１ａの６４ビットデータを、ＤＱバッファ５を介してＥＣＣ回路７まで読み出してエラー検出訂正を行う。そして、後半部において、１ビット訂正された６４ビットデータのうちの１６ビット分を、リード／ライトドライバ７１内で外部から供給された１６ビットデータで置き換えて、ノーマルデータ部１ａとパリティデータ部１ｂへの書き込みを行う。
【００３７】
これにより、図２の実施の形態と同様の効果が得られる。またこの実施の形態によると、検査用データを８ビットとすることにより、シンドローム信号をデコードして検査行列の訂正番地を検出するシンドロームデコード回路の構成のバリエーションが増える。具体的に図２の場合と比較して説明する。図２の実施の形態におけるように、検査用データが７ビットの場合、ハミング符号の検査行列を構成する７ビットの各列に、３ビットが“１”、４ビットが“０”の組み合わせを用いるとする。このときその組み合わせは最大３５通りである。また４ビットが“１”、３ビットが“０”の組み合わせも最大３５通りである。従って、検査ビットが７ビットでは、６４ビットのデータビットが全て一次独立となる検査行列ができない。
【００３８】
これに対して、図３の実施の形態のように、検査用データを８ビットとすれば、４ビットが“１”、４ビットが“０”の組み合わせが最大７０通りある。このため、６４ビット全て一次独立である検査行列ができる。またこの場合、シンドロームデコード回路は、４ビットの“１”または“０”のデータパターンを検出するゲートアレイで構成できる。従ってパターンレイアウト上も有利になる。
【００３９】
図２の実施の形態のように７ビット検査用データを用いる場合、ハミングコードの検査行列と符号は、０以外の７桁の２進数で与えられる。このときシンドローム信号は、検査行列の１ビット誤りの番地を求めるものであるが、シンドロームデコード回路の好ましい構成は、図７に示すように、ＮＯＲ／ＮＡＮＤ構成になる。これは、２ビット以上のエラーが発生した場合、７ビット全てが“１”というシンドロームが生成されることがあり、このとき、シンドロームの“１”又は“０”のみを検知してデコードする回路では、複数の正しいデータを書き換える事態が生じてしまうためである。
【００４０】
即ち、シンドロームデコーダは、７桁のシンドローム信号の“１”のビットが全て“１”であることを検出するための３入力ＮＡＮＤゲートＧ１と、“０”のビットが全て“０”であることを検出するための４入力ＮＯＲゲートＧ２を併設して構成される。ＮＡＮＤゲートＧ１の出力をインバータゲートＧ３で反転し、これとＮＯＲゲートＧ２の出力が共に“１”であることを検出するためのＮＡＮＤゲートＧ４が配置される。これは具体的に、シンドロームが、３ビットの“１”と４ビットの“０”の組み合わせで構成されたデータビットに対するものである。前述のように検査ビットが７ビットの場合、６４ビット全てを一次独立の検査行列とすることができず、６４ビット分のデコーダを構成するには、その組み合わせにより、ＮＡＮＤゲートＧ１とＮＯＲゲートＧ２の入力数を変更する必要がある。これにより、読み出しデータに誤りがない場合デコード出力は全て“０”となり、誤りがある場合検査行列の対応番地の出力が“１”になる。
【００４１】
図３の実施の形態のように８ビットの検査用データを用いる場合も、図８に示すように、図７とほぼ同様にＮＯＲ／ＮＡＮＤ構成のシンドロームデコード回路を用いることも可能である。一方、検査用データが８ビット、従ってシンドローム信号が８ビットのときには、そのうち、４ビットのみの入力によりシンドロームデコード回路を構成することができる。即ち、図９に示すように、４ビットの“１”データの一致検出を行う４入力ＮＡＮＤゲートのみを用いて、デコード回路を構成することができる。これは、検査用データが８ビットの場合、４ビットの“１”と４ビットの“０”の組み合わせでデータビット数６４ビット分のシンドロームを生成でき、４ビットの“１”の一致検出のみで、エラー番地の検出ができるためである。
【００４２】
図４は、図３のＥＣＣ回路７を変形した実施の形態である。ＥＣＣ回路７の基本構成及び動作は、図３と同様であるが、異なる点は、リード／ライトドライバ７１内のシンドロームデコード／訂正回路７２に対してエラー訂正のタイミングを設定するタイミング信号ＴＣを用いることである。タイミング信号生成回路８は、ノーマルデータ部１ａからのデータ読み出しに同期して、内部的にタイミング信号ＴＣを生成する。
【００４３】
図５は、タイミング信号生成回路８の構成例を、ＤＱバッファ５との関係で示している。セルアレイ１につながるデータ線ＤＱ，／ＤＱには、書き込みデータＷＤを相補信号に変換して供給するライト回路５１が設けられ、また読み出しデータを増幅する、カレントミラー増幅器等によるバッファアンプ５２が設けられる。このバッファアンプ５２の出力により駆動されるＮＭＯＳトランジスタＱＮ１のドレインに、読み出しデータ線ＲＤが接続される。
【００４４】
ＤＱバッファ５からの読み出しデータは通常相補信号ではないが、図５の構成では、カレントミラー型差動アンプであるバッファアンプ５２を、差動出力型としている。そしてバッファアンプ５２により駆動される出力段のＮＭＯＳトランジスタＱＮ１と相補的に駆動されるＮＭＯＳトランジスタＱＮ２が付加され、そのドレインにデータ線／ＲＤが接続されている。そして、これらの相補データ線ＲＤ，／ＲＤの出力を入力とする排他的論理和ゲート（ＥＸＯＲゲート）８１が設けられる。このＥＸＯＲゲート８１の出力は、制御信号ＣＮＴと共にＮＡＮＤゲート８２に入力される。これにより、ＮＡＮＤゲート８２からは、制御信号ＣＮＴが“Ｈ”であり且つ、データが読み出されたときのみ“Ｌ”となる訂正タイミング信号ＴＣを得ることができる。
【００４５】
タイミング信号ＴＣによるシンドロームデコード／訂正回路７２の制御は例えば、次のようにすればよい。図６Ａに示すように、シンドロームデコード／訂正回路７２は、シンドロームデコード回路７２ａとエラー訂正回路７２ｂを有する。このシンドロームデコード回路７２ａの前に、シンドローム生成回路７５の出力であるシンドローム信号のデコード回路７２ａへの転送を、タイミング信号ＴＣで制御する訂正タイミング調整回路（転送スイッチ回路）７２ｃを設ける。或いは図６Ｂに示すように、デコード回路７２ａとエラー訂正回路７２ｂの間に、デコード信号の転送をタイミング信号ＴＣでオンにする訂正タイミング調整回路７２ｃを設ける。
【００４６】
この様にタイミング信号ＴＣを用いて、データ読み出しがなされた場合のみ、シンドロームデコード／訂正回路７２を活性化するという制御を行えば、ノイズ等によりシンドロームデコード／訂正回路７２が誤動作するといった事態を防止することができる。
【００４７】
図１０は、図３のＥＣＣ回路７を基本として、シンドロームデコード／訂正回路７２でエラー検知訂正があった場合に、そのことを外部モニター端子に訂正モニター信号ＭＴとして出力するようにしたものである。これにより、ＥＣＣ回路７の動作を確認することができる。訂正モニター信号ＭＴは、訂正の有無のみを知らせるには１ビットでよい。複数ビットの訂正モニター信号ＭＴを出力して、訂正位置を確認できるようにすることも有効である。
【００４８】
具体的にこのようなエラー訂正モニター信号ＭＴは、図６Ａ或いは図６Ｂにそれぞれ対応して、図１１Ａ或いは図１１Ｂに示すように、訂正タイミング調整回路７２ｃの出力をモニター信号ＭＴとすればよい。
【００４９】
なお、以上の各実施の形態において、ＥＣＣ回路７はオン，オフできるようにすることが、ＥＣＣ回路の機能チェックのために好ましい。これは、図５に示したように、タイミング信号生成回路８の出力段ＮＡＮＤゲート８２の制御信号ＣＮＴを外部からオンオフできるようにすることで可能である。例えば、ＥＣＣ回路７をオンとして、先の実施の形態で説明した書き込み動作によりテストデータの書き込みを行う。ついで、ＥＣＣ回路７をオフにして、先に書き込まれたテストデータを、あるビットのみが異なるデータにより書き換える。これは、パリティデータ部が更新されていないから、強制的にエラー状態を作ったことになる。そして、再度ＥＣＣ回路７をオンにしてテストデータ読み出しを行う。これにより、ＥＣＣ回路７が正常に動作するか否かを確認することが可能である。
【００５０】
またＤＲＡＭセルアレイは、ある周期でリフレッシュ動作が必要である。このためＤＲＡＭチップには、例えば自動的にリフレッシュ動作を行うリフレッシュ回路を内蔵するが、リフレッシュ動作の間は、ＤＱバッファ５にはデータは読み出されない。従って、図４の実施の形態において、リフレッシュサイクル時は訂正タイミング信号生成回路８は動作せず、ＥＣＣ回路７の動作は停止する。これにより、無駄な消費電力を低減することができる。
【００５１】
【発明の効果】
以上述べたようにこの発明にる半導体メモリは、ＥＣＣ回路の内蔵により、特に省電力化に伴うデータ不良を救済することが可能になる。
【図面の簡単な説明】
【図１】この発明の実施の形態による半導体メモリの構成を示す図である。
【図２】他の実施の形態による半導体メモリにおけるＥＣＣ回路の構成を示す図である。
【図３】他の実施の形態による半導体メモリにおけるＥＣＣ回路の構成を示す図である。
【図４】他の実施の形態による半導体メモリにおけるＥＣＣ回路の構成を示す図である。
【図５】同実施の形態の訂正タイミング信号生成回路部の構成を示す図である。
【図６Ａ】同実施の形態のエラー検知訂正回路部の構成を示す図である。
【図６Ｂ】同実施の形態のエラー検知訂正回路部の他の構成を示す図である。
【図７】シンドローム信号デコード回路の構成を示す図である。
【図８】シンドローム信号デコード回路の他の構成を示す図である。
【図９】シンドローム信号デコード回路の他の構成を示す図である。
【図１０】他の実施の形態による半導体メモリのＥＣＣ回路の構成を示す図である。
【図１１Ａ】同実施の形態の訂正モニター信号生成部の構成を示す図である。
【図１１Ｂ】同実施の形態の訂正モニター信号生成部の他の構成を示す図である。
【符号の説明】
１…メモリセルアレイ、１ａ…ノーマルデータ部、１ｂ…パリティデータ部、２…ロウデコーダ／ワード線ドライバ、３…センスアンプ、４…カラムゲート、５…ＤＱバッファ、６…Ｉ／Ｏバッファ、７…ＥＣＣ回路、８…訂正タイミング調整用信号発生回路、７１…リード／ライトドライバ、７２…シンドロームデコード／エラー訂正回路、７２ａ…デコード回路、７２ｂ…エラー訂正回路、７２ｃ…訂正タイミング調整回路、７３…検査用データ生成回路、７４…情報用データ生成回路、７５…シンドローム信号生成回路。
【図１】
0004050091.tif 000002
【図２】
0004050091.tif 000003
【図３】
0004050091.tif 000004
【図４】
0004050091.tif 000005
【図５】
0004050091.tif 000006
【図６Ａ】
0004050091.tif 000007
【図６Ｂ】
0004050091.tif 000008
【図７】
0004050091.tif 000009
【図８】
0004050091.tif 000010
【図９】
0004050091.tif 000011
【図１０】
0004050091.tif 000012
【図１１Ａ】
0004050091.tif 000013
【図１１Ｂ】
0004050091.tif 000014