(57)【要約】【課題】  ２ビット不良を２つの単ビット不良に置き換えてエラー訂正することで、半導体メモリの歩留を向上する。【解決手段】  半導体メモリは、第１および第２データ端子群で受けるリアルデータを記憶する第１および第２リアルメモリセル群と、リアルデータのうち第１データの第１パリティデータを記憶する第１パリティメモリセル群と、リアルデータのうち第１データを除く第２データの第２パリティデータを記憶する第２パリティメモリセル群とを有する。半導体メモリは、割り当て切り替え回路を用いて、第１エラー訂正モード中に、第１データを第１リアルメモリセル群に記憶し、第２データを第２リアルメモリセル群に記憶し、第２エラー訂正モード中に、第１データと割り当てが異なるリアルデータを第１リアルメモリセル群に記憶し、第２データと割り当てが異なるリアルデータを第２リアルメモリセル群に記憶する。【選択図】    図１
2011238309.tif 000002
【特許請求の範囲】
【請求項１】
第１データ端子群および第２データ端子群で受けるリアルデータを記憶する第１リアルメモリセル群および第２リアルメモリセル群と、
前記リアルデータのうち第１データの第１パリティデータと、前記リアルデータのうち前記第１データを除く第２データの第２パリティデータとを生成するパリティ生成回路と、
前記第１パリティデータを記憶する第１パリティメモリセル群と、
前記第２パリティデータを記憶する第２パリティメモリセル群と、
前記第１パリティメモリセル群から読み出される前記第１パリティデータおよび前記第２パリティメモリセル群から読み出される前記第２パリティデータを用いて、前記第１リアルメモリセル群および前記第２リアルメモリセル群から読み出される前記リアルデータのエラーを訂正するエラー訂正回路と、
第１エラー訂正モード中に、前記第１データを前記第１リアルメモリセル群に入出力し、前記第２データを前記第２リアルメモリセル群に入出力し、第２エラー訂正モード中に、前記第１データと割り当てが異なる第１リアルデータを前記第１リアルメモリセル群に入出力し、前記第２データと割り当てが異なる第２リアルデータを前記第２リアルメモリセル群に入出力するために、前記第１および第２リアルデータと前記第１および第２データとの割り当てを切り替える割り当て切替回路と、
を備えていることを特徴とする半導体メモリ。
【請求項２】
前記割り当て切替回路は、
前記パリティ生成回路に供給される前記第１データおよび前記第２データの割り当てを切り替えるパリティ入力切替回路と、
前記エラー訂正回路に供給される前記リアルデータの割り当てを切り替える訂正入力切替回路と、
前記エラー訂正回路から出力されるエラーが訂正されたデータの割り当てを切り替え、元のリアルデータに変換するデータ出力切替回路と
を備えていることを特徴とする請求項１に記載の半導体メモリ。
【請求項３】
前記割り当て切替回路は、
前記第１および前記第２リアルメモリセル群に入出力される前記リアルデータの割り当てを切り替えるリアルデータ切替回路を備えていること
を特徴とする請求項１に記載の半導体メモリ。
【請求項４】
前記第１および第２リアルメモリセル群のリアルメモリセルにそれぞれ接続されたビット線を備え、
互いに隣接するビット線は、異なる前記データ端子に割り当てられていること
を特徴とする請求項１ないし請求項３のいずれか１項に記載の半導体メモリ。
【請求項５】
半導体メモリを前記第１エラー訂正モードまたは前記第２エラー訂正モードに設定するための値がプログラムされるプログラム回路を含み、前記プログラム回路のプログラム状態に拘わりなく、モード設定要求に応じて半導体メモリを前記第１エラー訂正モードまたは前記第２エラー訂正モードに設定するモード設定部と、
試験モード中に動作し、前記モード設定要求を順次に生成して、半導体メモリを前記第１および第２エラー訂正モードに切り替え、前記各第１および第２エラー訂正モードにおいて、前記第１および前記第２リアルメモリセル群に書き込む試験パターンを生成し、前記第１および前記第２リアルメモリセル群から読み出されるリアルデータに応じて前記プログラム回路に値をプログラムする試験回路と
を備えていることを特徴とする請求項１ないし請求項４のいずれか１項に半導体メモリ。
【請求項６】
請求項１ないし請求項５のいずれか１項に記載の半導体メモリと、
前記半導体メモリのアクセスを制御するコントローラと
を備えていることを特徴とするシステム。
【請求項７】
リアルデータを記憶する第１リアルメモリセル群および第２リアルメモリセル群と、前記リアルデータのうち第１データの第１パリティデータを記憶する第１パリティメモリセル群と、前記リアルデータのうち前記第１データを除く第２データの第２パリティデータを記憶する第２パリティメモリセル群とを含み、前記第１および第２リアルメモリセル群に記憶するリアルデータと前記第１および第２データとの割り当てが異なる複数のエラー訂正モードと、前記エラー訂正モードがプログラムされるプログラム回路とを含む半導体メモリの製造方法であって、
前記エラー訂正モードを切り替えながら前記半導体メモリの試験を実施し、
前記プログラム回路を、試験をパスする前記エラー訂正モードのいずれかにプログラムすること
を特徴とする半導体メモリの製造方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、エラー訂正回路を有する半導体メモリに関する。
【背景技術】
【０００２】
エラー訂正機能を有し、メモリセルアレイに書き込まれるデータとデータ端子との割り当てを切り替え可能な半導体メモリが提案されている（例えば、特許文献１−２参照。）。この種の半導体メモリでは、パリティデータは、切り替え可能なデータ群毎に生成され、あるいは、複数のデータ群毎に生成される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−３１３６４５号公報
【特許文献２】特開２０００−１８２３７０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
半導体メモリのチップサイズを最小限にするため、パリティデータは１ビット不良が訂正できるビット数に設定されることがある。パリティデータをデータ群毎に生成するとき、各データ群で発生する２ビット不良をエラー訂正できず、歩留は低下する。
【課題を解決するための手段】
【０００５】
本発明の一形態では、半導体メモリは、第１データ端子群および第２データ端子群で受けるリアルデータを記憶する第１リアルメモリセル群および第２リアルメモリセル群と、リアルデータのうち第１データの第１パリティデータと、リアルデータのうち第１データを除く第２データの第２パリティデータとを生成するパリティ生成回路と、第１パリティデータを記憶する第１パリティメモリセル群と、第２パリティデータを記憶する第２パリティメモリセル群と、第１パリティメモリセル群から読み出される第１パリティデータおよび第２パリティメモリセル群から読み出される第２パリティデータを用いて、第１リアルメモリセル群および第２リアルメモリセル群から読み出されるリアルデータのエラーを訂正するエラー訂正回路と、第１エラー訂正モード中に、第１データを第１リアルメモリセル群に記憶し、第２データを第２リアルメモリセル群に記憶し、第２エラー訂正モード中に、第１データと割り当てが異なるリアルデータを第１リアルメモリセル群に記憶し、第２データと割り当てが異なるリアルデータを第２リアルメモリセル群に記憶するために、第１および第２リアルメモリセル群に記憶するリアルデータと第１および第２データとの割り当てを切り替える割り当て切替回路とを備えている。
【発明の効果】
【０００６】
第１リアルメモリセル群および第２リアルメモリセル群に記憶されるリアルデータと第１および第２パリティデータを生成する第１および第２データとの割り当てを切り替え可能にすることで、２ビット不良を２つの単ビット不良に置き換えてエラー訂正することができ、半導体メモリの歩留を向上できる。
【図面の簡単な説明】
【０００７】
【図１】一実施形態における半導体メモリの例を示している。
【図２】別の実施形態における半導体メモリの例を示している。
【図３】別の実施形態における半導体メモリの例を示している。
【図４】図３に示したメモリセルアレイの例を示している。
【図５】図３に示したメモリコアの例を示している。
【図６】図３に示した半導体メモリのデータ端子とパリティデータとの関係を示している。
【図７】図３に示したエラー制御部のうち、書き込み系の回路の例を示している。
【図８】図７に示したパリティ生成回路の例を示している。
【図９】図７に示したパリティ生成回路に供給される信号の例を示している。
【図１０】図３に示したエラー制御部のうち、読み出し系の回路の例を示している。
【図１１】図１０に示したシンドローム生成回路の例を示している。
【図１２】図１０に示したシンドローム生成回路に供給される信号の例を示している。
【図１３】図１０に示したシンドロームデコーダの例を示している。
【図１４】図１０に示したエラー訂正回路の例を示している。
【図１５】図１４に示したエラー訂正回路内のセレクタの動作の例を示している。
【図１６】図１４に示したエラー訂正回路内のデータ出力切替回路の動作の例を示している。
【図１７】図３に示した半導体メモリの製造工程で実施される製造方法を示している。
【図１８】別の実施形態における半導体メモリの例を示している。
【図１９】図１８に示したメモリセルアレイにおけるエラー訂正モードＭＤ１中のデータ端子の割り当ての例を示している。
【図２０】図１８に示したメモリセルアレイにおけるエラー訂正モードＭＤ２中のデータ端子の割り当ての例を示している。
【図２１】図１８に示したメモリセルアレイにおけるエラー訂正モードＭＤ３中のデータ端子の割り当ての例を示している。
【図２２】図１８に示したエラー制御部のうち、書き込み系の回路の例を示している。
【図２３】図２２に示したパリティ生成回路の例を示している。
【図２４】図２２に示したパリティ生成回路に供給される信号の例を示している。
【図２５】図１８に示したエラー制御部のうち、読み出し系の回路の例を示している。
【図２６】図２５に示したシンドローム生成回路の例を示している。
【図２７】図２５に示したシンドローム生成回路に供給される信号の例を示している。
【図２８】図２５に示したエラー訂正回路の例を示している。
【図２９】別の実施形態における半導体メモリの例を示している。
【図３０】図２９に示した半導体メモリの製造方法の例を示している。
【図３１】別の実施形態における半導体メモリの例を示している。
【図３２】別の実施形態の半導体メモリにおけるエラー訂正回路の例を示している。
【図３３】図３２に示したエラー訂正コード切替回路の動作の例を示している。
【図３４】上述した半導体メモリが搭載されるシステムの例を示している。
【発明を実施するための形態】
【０００８】
以下、実施形態を図面を用いて説明する。図中、太線で示した信号線は、複数本で構成されている。また、太線が接続されているブロックの一部は、複数の回路で構成されている。信号が伝達される信号線には、信号名と同じ符号を使用する。末尾に”Ｚ”の付いている信号は、正論理を示している。先頭に”／”の付いている信号は、負論理を示している。図中の二重の四角印は、外部端子を示している。外部端子は、例えば、半導体チップ上のパッド、あるいは半導体チップが収納されるパッケージのリードである。外部端子を介して供給される信号には、端子名と同じ符号を使用する。
【０００９】
図１は、一実施形態における半導体メモリＭＥＭの例を示している。半導体メモリＭＥＭは、リアルメモリセル群ＭＣＧ１、ＭＣＧ２、パリティメモリセル群ＰＭＣＧ１、ＰＭＣＧ２、パリティ生成回路ＰＧＥＮａ、ＰＧＥＮｂ、エラー訂正回路ＥＣａ、ＥＣｂおよび割り当て切替回路ＳＷ１、ＳＷ２、ＳＷ３を有している。
【００１０】
リアルメモリセル群ＭＣＧ１は、データ端子群ＤＱａで受けるリアルデータＲＬＤ１を記憶する複数のリアルメモリセルＭＣを有している。リアルメモリセル群ＭＣＧ２は、データ端子群ＤＱｂで受けるリアルデータＲＬＤ２を記憶する複数のリアルメモリセルＭＣを有している。パリティメモリセル群ＰＭＣＧ１は、パリティデータＰＲＤ１を記憶する複数のパリティメモリセルＰＭＣを有している。パリティメモリセル群ＰＭＣＧ２は、パリティデータＰＲＤ２を記憶する複数のパリティメモリセルＰＭＣを有している。
【００１１】
パリティ生成回路ＰＧＥＮａは、リアルデータＲＬＤ１、ＲＬＤ２のうち、割り当て切替回路ＳＷ１により選択されるデータＤ１のパリティデータＰＲＤ１を生成する。パリティ生成回路ＰＧＥＮｂは、リアルデータＲＬＤ１、ＲＬＤ２のうち、データＤ１を除くデータＤ２のパリティデータＰＲＤ２を生成する。例えば、割り当て切替回路ＳＷ１は、パリティ生成回路ＰＧＥＮａ、ＰＧＥＮｂに供給されるデータＤ１、Ｄ２の割り当てを切り替えるパリティ入力切替回路として動作する。
【００１２】
エラー訂正回路ＥＣａは、データＤ１の１ビット不良を訂正可能である。エラー訂正回路ＥＣｂは、データＤ２の１ビット不良を訂正可能である。エラー訂正回路ＥＣａは、パリティメモリセル群から読み出されるパリティデータＰＲＤ１と、リアルメモリセル群ＭＣＧ１、ＭＣＧ２から読み出されるリアルデータＲＬＤ１、ＲＬＤ２のうち、割り当て切替回路ＳＷ２により選択されるデータＤ１とを受ける。エラー訂正回路ＥＣａは、パリティデータＰＲＤ１を用いて、データＤ１のエラーを訂正し、訂正したデータを割り当て切替回路ＳＷ３を介してデータ端子群ＤＱａ、ＤＱｂの少なくともいずれかに出力する。エラー訂正回路ＥＣｂは、パリティメモリセル群から読み出されるパリティデータＰＲＤ２と、リアルメモリセル群ＭＣＧ１、ＭＣＧ２から読み出されるリアルデータＲＬＤ１、ＲＬＤ２のうち、割り当て切替回路ＳＷ２により選択されるデータＤ２とを受ける。エラー訂正回路ＥＣｂは、パリティデータＰＲＤ２を用いて、データＤ２のエラーを訂正し、訂正したデータを割り当て切替回路ＳＷ３を介してデータ端子群ＤＱａ、ＤＱｂの少なくともいずれかに出力する。
【００１３】
例えば、割り当て切替回路ＳＷ２は、エラー訂正回路ＥＣａ、ＥＣｂに供給されるリアルデータＲＬＤ１、ＲＬＤ２の割り当てを切り替える訂正入力切替回路として動作する。なお、割り当て切替回路ＳＷ２から出力されるデータＤ１がエラーを含むとき、割り当て切替回路ＳＷ２から出力されるデータＤ１とエラー訂正回路ＥＣａから出力されるデータＤ１の論理値は異なる。同様に、割り当て切替回路ＳＷ２から出力されるデータＤ２がエラーを含むとき、割り当て切替回路ＳＷ２から出力されるデータＤ２とエラー訂正回路ＥＣｂから出力されるデータＤ２の論理値は異なる。
【００１４】
第１エラー訂正モードでは、割り当て切替回路ＳＷ１、ＳＷ２は、リアルデータＲＬＤ１をデータＤ１として出力し、リアルデータＲＬＤ２をデータＤ２として出力する。すなわち、第１エラー訂正モードでは、パリティメモリセル群ＰＭＣＧ１は、リアルデータＲＬＤ１のパリティデータＰＲＤ１を記憶する。パリティメモリセル群ＰＭＣＧ２は、リアルデータＲＬＤ２のパリティデータＰＲＤ２を記憶する。
【００１５】
エラー訂正回路ＥＣａは、リアルメモリセル群ＭＣＧ１に記憶されているリアルデータＲＬＤ１のエラーを訂正する。エラー訂正回路ＥＣｂは、リアルメモリセル群ＭＣＧ２に記憶されているリアルデータＲＬＤ２のエラーを訂正する。割り当て切替回路ＳＷ３は、データＤ１をリアルデータＲＬＤ１として出力し、データＤ２をリアルデータＲＬＤ２として出力する。例えば、割り当て切替回路ＳＷ３は、エラー訂正回路ＥＣａ、ＥＣｂから出力されるエラーが訂正されたデータＤ１、Ｄ２の割り当てを切り替え、元のリアルデータＲＤＬ１、ＲＤＬ２に変換するデータ出力切替回路として動作する。
【００１６】
一方、第２エラー訂正モードでは、割り当て切替回路ＳＷ１、ＳＷ２は、リアルデータＲＬＤ１と割り当ての異なるデータＤ１と、リアルデータＲＬＤ２と割り当ての異なるデータＤ２とを出力する。すなわち、第２エラー訂正モードでは、パリティメモリセル群ＰＭＣＧ１は、リアルデータＲＬＤ１と割り当ての異なるデータＤ１のパリティデータＰＲＤ１を記憶する。パリティメモリセル群ＰＭＣＧ２は、リアルデータＲＬＤ２と割り当ての異なるデータＤ２のパリティデータＰＲＤ２を記憶する。
【００１７】
エラー訂正回路ＥＣａは、リアルデータＲＬＤ１と割り当ての異なるデータＤ１のエラーを訂正する。エラー訂正回路ＥＣｂは、リアルデータＲＬＤ２と割り当ての異なるデータＤ２のエラーを訂正する。割り当て切替回路ＳＷ３は、エラーが訂正されたデータＤ１、Ｄ２のビットを並び替えてリアルデータＲＬＤ１、ＲＬＤ２に変換する。
【００１８】
例えば、半導体メモリＭＥＭが、リアルメモリセル群ＭＣＧ１、ＭＣＧ２のそれぞれに単ビット不良が発生しやすい不良モードを有するとき、半導体メモリＭＥＭを第１エラー訂正モードに設定することで不良の救済確率を向上できる。半導体メモリＭＥＭが、リアルメモリセル群ＭＣＧ１、ＭＣＧ２のいずれかに２ビット不良が発生しやすい不良モードを有するとき、半導体メモリＭＥＭを第２エラー訂正モードに設定することで不良の救済確率を向上できる。以上、この実施形態では、不良モードに応じてエラー訂正モードを切り替えることで、不良の救済確率を向上でき、半導体メモリＭＥＭの歩留を向上できる。
【００１９】
図２は、別の実施形態における半導体メモリＭＥＭの例を示している。上述した実施形態で説明した要素と同一の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。半導体メモリＭＥＭは、リアルメモリセル群ＭＣＧ１、ＭＣＧ２、パリティメモリセル群ＰＭＣＧ１、ＰＭＣＧ２、パリティ生成回路ＰＧＥＮａ、ＰＧＥＮｂ、エラー訂正回路ＥＣａ、ＥＣｂおよび割り当て切替回路ＳＷを有している。リアルメモリセル群ＭＣＧ１、ＭＣＧ２、パリティメモリセル群ＰＭＣＧ１、ＰＭＣＧ２、パリティ生成回路ＰＧＥＮａ、ＰＧＥＮｂおよびエラー訂正回路ＥＣａ、ＥＣｂは、図１と同様の回路である。
【００２０】
割り当て切替回路ＳＷは、第１エラー訂正モードでは、データ端子群ＤＱａをリアルメモリセル群ＭＣＧ１に接続し、データ端子群ＤＱｂをリアルメモリセル群ＭＣＧ２に接続する。割り当て切替回路ＳＷは、第２エラー訂正モードでは、データ端子群ＤＱａのうち所定のビットとデータ端子群ＤＱｂのうち所定のビットとをリアルメモリセル群ＭＣＧ１に接続し、残りのビットをリアルメモリセル群ＭＣＧ２に接続する。例えば、割り当て切替回路ＳＷは、リアルメモリセル群ＭＣＧ１、ＭＣＧ２に入出力されるリアルデータＲＬＤ１、ＲＬＤ２の割り当てを切り替えるリアルデータ切替回路として動作する。
【００２１】
この実施形態では、第１エラー訂正モードでは、パリティメモリセル群ＰＭＣＧ１は、データ端子群ＤＱａで受けるリアルデータＲＬＤ１のパリティデータＰＲＤ１を記憶する。パリティメモリセル群ＰＭＣＧ２は、データ端子群ＤＱｂで受けるリアルデータＲＬＤ２のパリティデータＰＲＤ２を記憶する。第２エラー訂正モードでは、パリティメモリセル群ＰＭＣＧ１は、リアルメモリセル群ＭＣＧ１に記憶されるリアルデータＲＬＤ１と割り当ての異なるデータＤ１のパリティデータＰＲＤ１を記憶する。パリティメモリセル群ＰＭＣＧ２は、リアルメモリセル群ＭＣＧ２に記憶されるリアルデータＲＬＤ２と割り当ての異なるデータＤ２のパリティデータＰＲＤ２を記憶する。
【００２２】
これにより、上述した実施形態と同様に、半導体メモリＭＥＭが、リアルメモリセル群ＭＣＧ１、ＭＣＧ２のそれぞれに単ビット不良が発生しやすい不良モードを有するとき、半導体メモリＭＥＭを第１エラー訂正モードに設定することで不良の救済確率を向上できる。半導体メモリＭＥＭが、リアルメモリセル群ＭＣＧ１、ＭＣＧ２のいずれかに２ビット不良が発生しやすい不良モードを有するとき、半導体メモリＭＥＭを第２エラー訂正モードに設定することで不良の救済確率を向上できる。すなわち、不良モードに応じてエラー訂正モードを切り替えることで、不良の救済確率を向上でき、半導体メモリＭＥＭの歩留を向上できる。
【００２３】
以上、この実施形態においても、上述した実施形態と同様の効果を得ることができる。さらに、簡易な割り当て切替回路ＳＷにより不良の救済確率を向上でき、半導体メモリＭＥＭの歩留を向上できる。
【００２４】
図３は、別の実施形態における半導体メモリＭＥＭの例を示している。例えば、半導体メモリＭＥＭは、ＤＲＡＭである。半導体メモリＭＥＭは、クロック信号に同期して動作するが、クロック信号に非同期で動作してもよい。半導体メモリＭＥＭは、システムＬＳＩ等に搭載されるメモリマクロ（ＩＰ）として設計されてもよく、パッケージに封入された半導体記憶装置として設計されてもよい。半導体メモリＭＥＭは、例えば、シリコン基板上にＣＭＯＳプロセスを使用して形成される。
【００２５】
半導体メモリＭＥＭは、クロックバッファ１０、アドレスバッファ１２、コマンドデコーダ１４、データ入出力バッファ１６、アドレス制御部１８、コア制御部２０、モード設定部２２、メモリコア２４およびエラー制御部２６を有している。半導体メモリＭＥＭは、バースト動作用の制御回路およびリフレッシュ動作を自動的に実行するためのリフレッシュタイマ、リフレッシュアドレスカウンタ等を有している。また、半導体メモリＭＥＭは、不良を救済するための冗長回路を有している。例えば、冗長回路は、冗長ワード線、冗長ビット線、冗長メモリセル、不良アドレスをプログラムするアドレスプログラム回路等である。
【００２６】
クロックバッファ１０は、クロックイネーブル信号ＣＫＥが高レベルの期間に、クロック端子で受けるクロック信号ＣＬＫを、内部クロック信号ＩＣＬＫとしてクロックに同期して動作する内部回路に出力する。クロックバッファ１０は、クロックイネーブル信号ＣＫＥが低レベルの期間に、内部クロック信号ＩＣＬＫの出力を停止する。これにより、半導体メモリＭＥＭは、動作を停止し、低消費電力状態になる。
【００２７】
アドレスバッファ１２は、アドレス端子で受けるアドレス信号ＡＤを、バンクアドレス信号ＢＡ、ロウアドレス信号ＲＡまたはコラムアドレス信号ＣＡとしてアドレス制御部１８等に出力する。アドレスバッファ１２は、ロウアドレスラッチ信号ＲＡＬに同期して受けるアドレス信号ＡＤを、バンクアドレス信号ＢＡおよびロウアドレス信号ＲＡとして出力する。また、アドレスバッファ１２は、コラムアドレスラッチ信号ＣＡＬに同期して受けるアドレス信号ＡＤを、バンクアドレス信号ＢＡおよびコラムアドレス信号ＣＡとして出力する。半導体メモリＭＥＭは、共通のアドレス端子ＡＤを用いて、ロウアドレス信号ＲＡおよびコラムアドレス信号ＣＡを異なるタイミングで受けるアドレスマルチプレクスタイプである。
【００２８】
コマンドデコーダ１４は、コマンド端子を介してコマンド信号ＣＭＤを受け、受けた信号を解読し、メモリコア２４を動作させるための内部コマンド信号を出力する。コマンド信号ＣＭＤは、例えば、チップセレクト信号／ＣＳ、ロウアドレスストローブ信号／ＲＡＳ、コラムアドレスストローブ信号／ＣＡＳおよび書き込みイネーブル信号／ＷＥを含む。内部コマンド信号は、アクティブコマンド信号ＡＣＴＺ、読み出しコマンド信号ＲＤＺ、書き込みコマンド信号ＷＲＺ、プリチャージコマンド信号ＰＲＥＺ、エラー訂正モード設定コマンド信号ＭＤＺおよびエラー訂正モードプログラムコマンド信号ＰＧＭＺを含む。
【００２９】
データ入出力バッファ１６は、書き込み動作時にデータ端子ＤＱ（ＤＱ０−１５）で受ける書き込みデータを内部データ線ＩＤＱ（ＩＤＱ０−１５）に出力する。データ入出力バッファ１６は、読み出し動作時に内部データ線ＩＤＱを介して受けるメモリコア２４からの読み出しデータをデータ端子ＤＱに出力する。なお、データ端子ＤＱは１６ビットに限定されない。
【００３０】
アドレス制御部１８は、ロウアドレス信号ＲＡを内部ロウアドレス信号ＩＲＡとしてロウ制御回路ＲＣＮＴ等に出力し、コラムアドレス信号ＣＡを内部コラムアドレス信号ＩＣＡとしてコラム制御回路ＣＣＮＴ等に出力する。アドレス制御部１８は、バンクアドレス信号ＢＡを内部バンクアドレス信号ＩＢＡとしてコア制御部２０等に出力する。バンクアドレス信号ＢＡは、メモリコア２４に形成される４つのバンクＢＫ０−３を選択するために使用される。
【００３１】
コア制御部２０は、アクティブコマンド信号ＡＣＴＺ、読み出しコマンド信号ＲＤＺ、書き込みコマンド信号ＷＲＺおよびプリチャージコマンド信号ＰＲＥＺに応じて、メモリコア２４の動作を制御する制御信号（タイミング信号）を出力する。このとき、コア制御部２０は、バンクアドレス信号ＢＡが示すバンクＢＫ（ＢＫ０−３のいずれか）に対応する制御信号を出力する。
【００３２】
モード設定部２２は、エラー訂正モード設定コマンド信号ＭＤＺとともに受けるアドレス信号（例えば、２ビットのロウアドレス信号ＲＡ）に応じて、エラー訂正モード信号ＭＤをエラー制御部２６に出力する。半導体メモリＭＥＭは、エラー訂正モード信号ＭＤに応じて、エラー訂正モードＭＤ１−ＭＤ３（図６）のいずれかに設定される。また、モード設定部２２は、エラー訂正モードプログラムコマンド信号ＰＧＭＺとともに受けるアドレス信号（例えば、２ビットのロウアドレス信号ＲＡ）に応じて、エラー訂正モード信号ＭＤを設定するためにプログラム回路ＰＧＭをプログラムする。プログラム回路ＰＧＭは、例えば複数のヒューズを含み、ヒューズの溶断の有無に応じた論理のエラー訂正モード信号ＭＤを出力する。半導体メモリＭＥＭに電源が供給されている間、エラー訂正モード設定コマンド信号ＭＤＺは、エラー訂正モードプログラムコマンド信号ＰＧＭＺより優先される。このため、モード設定部２２は、プログラム回路ＰＧＭがプログラムされた後にエラー訂正モード設定コマンドＭＤＺを受けることで、プログラムされた論理と異なるエラー訂正モード信号ＭＤを出力可能である。
【００３３】
メモリコア２４は、メモリセルアレイＡＲＹ、ロウ制御回路ＲＣＮＴ、コラム制御回路ＣＣＮＴ、リードアンプＲＡおよびライトアンプＷＡを有している。なお、メモリコア２４は、各バンクＢＫ０−３で同じ回路である。メモリセルアレイＡＲＹは、マトリックス状に配置された複数のリアルメモリセルＭＣおよび複数のパリティメモリセルＰＭＣを有している。リアルメモリセルＭＣは、ワード線ＷＬおよびリアルビット線ＢＬ、／ＢＬに接続されている。パリティメモリセルＰＭＣは、ワード線ＷＬおよびパリティビット線ＰＢＬ、／ＰＢＬに接続されている。例えば、少なくとも１６個のリアルメモリセルＭＣと８個のパリティメモリセルＰＭＣが、１本のワード線ＷＬに接続されている。メモリセルアレイＡＲＹの例は図４に示す。
【００３４】
ロウ制御回路ＲＣＮＴは、コア制御部２０からの制御信号および内部ロウアドレス信号ＩＲＡを受け、ワード線ＷＬのいずれかを選択する。コラム制御回路ＣＣＮＴは、コア制御部２０からの制御信号および内部コラムアドレス信号ＩＣＡを受け、１６個のリアルビット線対ＢＬ、／ＢＬおよび８個のパリティビット線対ＰＢＬ、／ＰＢＬを選択する。選択されたリアルビット線対ＢＬ、／ＢＬおよびパリティビット線対ＰＢＬ、／ＰＢＬは、書き込み動作時に書き込みデータバスＷＤＢに接続され、読み出し動作時に読み出しデータバスＲＤＢに接続される。
【００３５】
リードアンプＲＡは、読み出し動作時に読み出しデータバスＲＤＢを介して受けるリアル読み出しデータおよびパリティ読み出しデータを、読み出しデータ線ＲＤ（ＲＤ０−１５）およびパリティ読み出しデータ線ＰＲＤ（ＰＲＤ０−７）に出力する。ライトアンプＷＡは、書き込み動作時に書き込みデータ線ＷＤ（ＷＤ０−１５）およびパリティ書き込みデータ線ＰＷＤ（ＰＷＤ０−７）を介して受けるリアル書き込みデータおよびパリティ書き込みデータを書き込みデータバスＷＤＢに出力する。
【００３６】
エラー制御部２６は、書き込み動作時に、書き込みデータＩＤＱに応じてパリティ書き込みデータＰＷＤを生成し、リアル書き込みデータＷＤとともにメモリコア２４に出力する。エラー制御部２６は、読み出し動作時に、メモリコア２４からのリアル読み出しデータＲＤのエラーを、パリティ読み出しデータＰＲＤに応じて訂正し、読み出しデータＩＤＱとしてデータ入出力バッファ１６に出力する。この実施形態では、図６および図７に示すように、８ビットのリアルデータ毎に４ビットのパリティデータが生成される。エラー制御部２６は、エラー訂正モード信号ＭＤの論理に応じて、パリティデータＰＤ０−３、ＰＤ４−７にそれぞれ対応する８ビットにリアルデータＤＱの割り当てを変更する。エラー制御部２６の例は、図７から図１６に示す。
【００３７】
図４は、図３に示したメモリセルアレイＡＲＹの例を示している。メモリセルアレイＡＲＹは、センスアンプＳＡの両側（図４の上下方向）にメモリセル部ＭＣＵ（ＭＣＵ０−ＭＣＵ３）を有している。各メモリセル部ＭＣＵは、リアルビット線ＢＬまたは／ＢＬのいずれかおよびパリティビット線ＰＢＬ、／ＰＢＬのいずれかが配線されている。換言すれば、各メモリセル部ＭＣＵにおいて、隣接するリアルビット線ＢＬ（または／ＢＬ）およびパリティビット線ＰＢＬ（または／ＰＢＬ）の極性は同じである。
【００３８】
各センスアンプＳＡは、両側のメモリセル部ＭＣＵに延びるビット線対ＢＬ、／ＢＬ（またはＰＢＬ、／ＰＢＬ）の電圧差を増幅し、図３のメモリセルＭＣ（またはＰＭＣ）に保持されているデータを読み出す。ビット線ＢＬ（またはＰＢＬ）からデータが読み出されるとき、ビット線／ＢＬ（または／ＰＢＬ）はプリチャージ電圧等の参照電圧が供給される。ビット線／ＢＬ（または／ＰＢＬ）からデータが読み出されるとき、ビット線ＢＬ（またはＰＢＬ）はプリチャージ電圧等の参照電圧が供給される。相補のビット線ＢＬ、／ＢＬ（またはＰＢＬ、／ＰＢＬ）がセンスアンプＳＡの両側に配線される構造は、オープンビット線構造と称される。オープンビット線構造では、メモリセルＭＣ、ＰＭＣからデータは、互いに隣接する複数のビット線ＢＬ、ＰＢＬに読み出される。
【００３９】
例えば、メモリセル部ＭＣＵ１は、２つのメモリグループＭＧ１−ＭＧ２を有している。メモリグループＭＧ１は、８本のリアルビット線ＢＬ＃１（ＢＬａ１、ＢＬｂ１、ＢＬｃ１、ＢＬｄ１、ＢＬｅ１、ＢＬｆ１、ＢＬｇ１、ＢＬｈ１）および４本のパリティビット線ＰＢＬ０−ＰＢＬ３を有している。８本のリアルビット線ＢＬ＃１は、８個のデータ端子ＤＱ０−ＤＱ７にそれぞれ対応する。メモリグループＭＧ２は、８本のリアルビット線ＢＬ＃２（ＢＬａ２、ＢＬｂ２、ＢＬｃ２、ＢＬｄ２、ＢＬｅ２、ＢＬｆ２、ＢＬｇ２、ＢＬｈ２）および４本のパリティビット線ＰＢＬ４−ＰＢＬ７を有している。８本のリアルビット線ＢＬ＃２は、８個のデータ端子ＤＱ８−ＤＱ１５にそれぞれ対応する。
【００４０】
この実施形態では、８本のリアルビット線ＢＬに接続されるリアルメモリセルＭＣに保持されるデータ（８ビット）のパリティデータ（４ビット）が、４本のパリティビット線ＰＢＬ０−３に接続されるパリティメモリセルＰＭＣに保持される。別の８本のリアルビット線ＢＬに接続されるリアルメモリセルＭＣに保持されるデータ（８ビット）のパリティデータ（４ビット）が、４本のパリティビット線ＰＢＬ４−７に接続されるパリティメモリセルＰＭＣに保持される。但し、メモリグループＭＧ１に保持される８ビットのリアルデータ（ＤＱ０−７）に対応する４ビットのパリティデータがメモリグループＭＧ１のパリティメモリセルＰＭＣに保持されるとは限らない。同様に、メモリグループＭＧ２に保持される８ビットのリアルデータ（ＤＱ８−１５）に対応する４ビットのパリティデータがメモリグループＭＧ２のパリティメモリセルＰＭＣに保持されるとは限らない。リアルデータ（データ端子ＤＱ）とパリティデータとの関係は、図６に示すように、エラー訂正モードＭＤ１−３に応じて変更される。
【００４１】
なお、メモリセルアレイＡＲＹの構成は、図４に限定されるものではない。例えば、リアルビット線ＢＬ＃１とパリティビット線ＰＢＬ０−３とを物理的に離れた位置に配置し、リアルビット線ＢＬ＃２とパリティビット線ＰＢＬ４−７とを物理的に離れた位置に配置してもよい。具体的には、リアルビット線ＢＬ＃１をメモリグループＭＧ１に配置し、リアルビット線ＢＬ＃２をメモリグループＭＧ２に配置し、パリティビット線ＰＢＬ０−７をメモリグループＭＧ１−２とは別のメモリグループに配置してもよい。このように、リアルデータを保持するリアルメモリセルＭＣと、パリティデータを保持するパリティメモリセルＰＭＣとは、物理的に離れた位置に配置可能である。
【００４２】
図５は、図３に示したメモリコア２４の例を示している。図５では、図４に示したメモリセル部ＭＣＵ１のビット線ＢＬ＃１、ＢＬ＃２、ＰＢＬ０−７を示している。なお、メモリコア２４は、読み出しデータバスＲＤＢおよび書き込みデータバスＷＤＢに接続するビット線ＢＬ、ＰＢＬを、コラムアドレス信号ＣＡに応じて選択するコラムスイッチを有している。しかし、説明を簡単にするために、コラムスイッチは省略している。
【００４３】
リアル読み出しデータ線ＲＤ０−７は、リードアンプＲＡおよび読み出しデータバスＲＤＢを介してリアルビット線ＢＬ＃１に接続されている。リアル書き込みデータ線ＷＤ０−７は、ライトアンプＷＡおよび書き込みデータバスＷＤＢを介してリアルビット線ＢＬ＃１に接続されている。パリティ読み出しデータ線ＰＲＤ０−３は、リードアンプＲＡおよび読み出しデータバスＲＤＢを介してパリティビット線ＰＢＬ０−３に接続されている。パリティ書き込みデータ線ＰＷＤ０−３は、ライトアンプＷＡおよび書き込みデータバスＷＤＢを介してパリティビット線ＰＢＬ０−３に接続されている。
【００４４】
同様に、リアル読み出しデータ線ＲＤ８−１５は、リードアンプＲＡおよび読み出しデータバスＲＤＢを介してリアルビット線ＢＬ＃２に接続されている。リアル書き込みデータ線ＷＤ８−１５は、ライトアンプＷＡおよび書き込みデータバスＷＤＢを介してリアルビット線ＢＬ＃２に接続されている。パリティ読み出しデータ線ＰＲＤ４−７は、リードアンプＲＡおよび読み出しデータバスＲＤＢを介してパリティビット線ＰＢＬ４−７に接続されている。パリティ書き込みデータ線ＰＷＤ４−７は、ライトアンプＷＡおよび書き込みデータバスＷＤＢを介してパリティビット線ＰＢＬ４−７に接続されている。
【００４５】
図６は、図３に示した半導体メモリＭＥＭのデータ端子ＤＱ０−１５とパリティデータＰＤ０−７との関係を示している。データ端子ＤＱ０−７は、メモリグループＭＧ１のリアルメモリセルＭＣに接続される。データ端子ＤＱ８−１５は、メモリグループＭＧ２のリアルメモリセルＭＣに接続される。エラー訂正モードＭＤ１（ＭＤ＝１）では、データ端子ＤＱ０−７に供給されるリアルデータからパリティデータＰＤ０−３が生成され、データ端子ＤＱ８−１５に供給されるリアルデータからパリティデータＰＤ４−７が生成される。すなわち、リアルデータＤＱ０−７（またはＤＱ８−１５）とパリティデータＰＤ０−３（またはＰＤ４−７）のペアは、共通のメモリグループＭＧ１（またはＭＣ２）に含まれる。
【００４６】
エラー訂正モードＭＤ２（ＭＤ＝２）では、データ端子ＤＱ０、８、１、９、２、１０、３、１１に供給されるリアルデータからパリティデータＰＤ０−３が生成され、データ端子ＤＱ４、１２、５、１３、６、１４、７、１５に供給されるリアルデータからパリティデータＰＤ４−７が生成される。エラー訂正モードＭＤ３（ＭＤ＝３）では、データ端子ＤＱ０、１、８、９、２、３、１０、１１に供給されるリアルデータからパリティデータＰＤ０−３が生成され、データ端子ＤＱ４、５、１２、１３、６、７、１４、１５に供給されるリアルデータからパリティデータＰＤ４−７が生成される。このように、エラー訂正モードＭＤ２およびエラー訂正モードＭＤ３では、パリティデータＰＤ０−３は、２つのメモリグループＭＧ１、ＭＧ２に対応するデータ端子ＤＱ０−３、８−１１に供給されるリアルデータから生成される。パリティデータＰＤ４−７は、２つのメモリグループＭＧ１、ＭＧ２に対応するデータ端子ＤＱ４−７、１２−１５に供給されるリアルデータから生成される。
【００４７】
図７は、図３に示したエラー制御部２６のうち、書き込み系の回路の例を示している。エラー制御部２６は、データバッファＤＢＵＦ０−ＤＢＵＦ１およびパリティ生成回路ＰＧＥＮ０−ＰＧＥＮ７を有している。
【００４８】
データバッファＤＢＵＦ０は、書き込み動作時にリアルデータＩＤＱ０−７を書き込みデータＷＤ０−７として出力する。データバッファＤＢＵＦ１は、書き込み動作時にリアルデータＩＤＱ８−１５を書き込みデータＷＤ８−１５として出力する。各パリティ生成回路ＰＧＥＮ０−７は、エラー訂正モードＭＤ１−３に応じてリアルデータＩＤＱ０−１５の所定のビットを選択し、選択したビットを用いてパリティデータＰＷＤ（ＰＷＤ０−７のいずれか）を生成する。
【００４９】
図８は、図７に示したパリティ生成回路ＰＧＥＮ０の例を示している。他のパリティ生成回路ＰＧＥＮ１−７は、入力される信号が異なることを除き、パリティ生成回路ＰＧＥＮ０と同様の回路である。例えば、符号ＷＡ０（０）において、”Ｗ”は書き込みデータを示し、”Ａ”はエラー訂正モードＭＤ１中に選択されることを示し、”０”は供給先のパリティ生成回路ＰＧＥＮの番号を示し、”（０）”は供給先のセレクタＳＥＬの番号を示す。符号ＷＢ０（０）の”Ｂ”は、エラー訂正モードＭＤ２中に選択されることを示す。符号ＷＣ０（０）の”Ｃ”は、エラー訂正モードＭＤ３中に選択されることを示す。他の符号も同様である。
【００５０】
パリティ生成回路ＰＧＥＮ０は、セレクタＳＥＬ０−４および６個の排他的論理和回路ＥＸＯＲ０−５を有している。排他的論理和回路ＥＸＯＲ０−５は、互いに同じ回路である。各セレクタＳＥＬ０−４は、エラー訂正モード信号ＭＤの論理に応じて、信号群ＷＡ０、ＷＢ０、ＷＣ０のいずれかを選択して排他的論理和回路ＥＸＯＲ０−２に出力する。セレクタＳＥＬ０−４は、パリティ生成回路ＰＧＥＮ０の排他的論理和回路ＥＸＯＲ０−２に供給されるリアル書き込みデータの割り当てを切り替えるパリティ入力切替回路として動作する。最終の排他的論理和回路ＥＸＯＲ５は、パリティデータＰＷＤ０を出力する。
【００５１】
図９は、図７に示したパリティ生成回路ＰＧＥＮ０−７に供給される信号の例を示している。例えば、パリティ生成回路ＰＧＥＮ０のセレクタＳＥＬ０−４は、エラー訂正モードＭＤ１では、書き込みデータＤＱ０−１５のうちデータＤＱ０、１、３、４、６をそれぞれ選択し、書き込みパリティデータＰＷＤ０を生成する。パリティ生成回路ＰＧＥＮ０のセレクタＳＥＬ０−４は、エラー訂正モードＭＤ２では、書き込みデータＤＱ０−１５のうちデータＤＱ０、８、９、２、３をそれぞれ選択し、書き込みパリティデータＰＷＤ０を生成する。パリティ生成回路ＰＧＥＮ０のセレクタＳＥＬ０−４は、エラー訂正モードＭＤ３では、書き込みデータＤＱ０−１５のうちデータＤＱ０、１、９、２、１０をそれぞれ選択し、書き込みパリティデータＰＷＤ０を生成する。
【００５２】
同様に、パリティ生成回路ＰＧＥＮ２のセレクタＳＥＬ０−４は、エラー訂正モードＭＤ１では、データＤＱ１、２、３、７と論理０（ＶＳＳ）をそれぞれ選択し、書き込みパリティデータＰＷＤ２を生成する。パリティ生成回路ＰＧＥＮ２のセレクタＳＥＬ０−４は、エラー訂正モードＭＤ２では、データＤＱ８、１、９、１１と論理０（ＶＳＳ）をそれぞれ選択し、書き込みパリティデータＰＷＤ２を生成する。パリティ生成回路ＰＧＥＮ０のセレクタＳＥＬ０−４は、エラー訂正モードＭＤ３では、データＤＱ１、８、９、１１と論理０（ＶＳＳ）をそれぞれ選択し、書き込みパリティデータＰＷＤ２を生成する。
【００５３】
図１０は、図３に示したエラー制御部２６のうち、読み出し系の回路の例を示している。エラー制御部２６は、シンドローム生成回路ＳＹＮＧ０−７、シンドロームデコーダＳＤＥＣ０−１およびエラー訂正回路ＥＣを有している。図１０の黒丸は、シンドローム生成回路ＳＹＮＧ０−７およびエラー訂正回路ＥＣが選択するリアル読み出しデータＲＤ０−１５を示している。例えば、シンドローム生成回路ＳＹＮＧ０に接続される矢印の符号ＲＡ０（５）−（９）において、”Ｒ”は読み出しデータを示し、”Ａ”はエラー訂正モードＭＤ１中に選択されることを示し、”０”は供給先のシンドローム生成回路ＳＹＮＧの番号を示し、”（５）−（９）”は図１１に示す供給先のセレクタＳＥＬの番号を示す。符号ＲＢ０（５）−（９）の”Ｂ”は、エラー訂正モードＭＤ２中に選択されることを示す。符号ＲＣ０（５）−（９）の”Ｃ”は、エラー訂正モードＭＤ３中に選択されることを示す。他の矢印の符号も同様である。
【００５４】
リアル読み出しデータＲＤ０−７は、データ端子ＤＱ０−７に対応するデータであり、メモリグループＭＧ１（図４）のリアルメモリセルＭＣから読み出される。リアル読み出しデータＲＤ８−１５は、データ端子ＤＱ８−１５に対応するデータであり、メモリグループＭＧ２（図４）のリアルメモリセルＭＣから読み出される。パリティ読み出しデータＰＲＤ０−３は、メモリグループＭＧ１から読み出され、パリティ読み出しデータＰＲＤ４−７は、メモリグループＭＧ２から読み出される。
【００５５】
各シンドローム生成回路ＳＹＮＧ０−７は、リアル読み出しデータＲＤ０−１５のうち所定のビットとパリティ読み出しデータＰＲＤ（ＰＲＤ０−７のいずれか）を用いてシンドロームＳＹＮＤ（ＳＹＮＤ０−７のいずれか）を生成する。
【００５６】
シンドロームデコーダＳＤＥＣ０は、シンドロームＳＹＮＤ０−３に基づいてリアル読み出しデータＲＤ０−７中のエラービットを示すエラー訂正信号ＣＲＣＴ０−７を生成する。シンドロームデコーダＳＤＥＣ１は、シンドロームＳＹＮＤ４−７に基づいてリアル読み出しデータＲＤ８−１５中のエラービットを示すエラー訂正信号ＣＲＣＴ８−１５を生成する。例えば、読み出しデータＲＤ０−７のエラーは、エラー訂正信号ＣＲＣＴ０−７のうち高レベルのビットと同じ番号のビットに含まれる。同様に、読み出しデータＲＤ８−１５のエラーは、エラー訂正信号ＣＲＣＴ８−１５のうち高レベルのビットと同じ番号のビットに含まれる。この実施形態では、リアル読み出しデータＲＤ０−７中の１ビットのエラー訂正と、リアル読み出しデータＲＤ８−１５中の１ビットのエラー訂正とが可能である。
【００５７】
エラー訂正回路ＥＣは、エラー訂正信号ＣＲＣＴ０−７に応じて、リアル読み出しデータＲＤ０−７のエラーを訂正し、エラー訂正信号ＣＲＣＴ８−１５に応じて、リアル読み出しデータＲＤ８−１５のエラーを訂正し、内部データＩＤＱ０−１５として出力する。
【００５８】
図１１は、図１０に示したシンドローム生成回路ＳＹＮＧ０の例を示している。他のシンドローム生成回路ＳＹＮＧ１−７は、入力される信号が異なることを除き、シンドローム生成回路ＳＹＮＧ０と同様の回路である。シンドローム生成回路ＳＹＮＧ０は、セレクタＳＥＬ５−９および６個の排他的論理和回路ＥＸＯＲ６−１１を有している。排他的論理和回路ＥＸＯＲ６−１１は、互いに同じ回路である。
【００５９】
各セレクタＳＥＬ５−９は、エラー訂正モード信号ＭＤが示すエラー訂正モードに応じて、信号群ＲＡ０、ＲＢ０、ＲＣ０のいずれかを選択して排他的論理和回路ＥＸＯＲ６−８に出力する。例えば、符号ＲＡ０（５）において、”Ｒ”は読み出しデータを示し、”Ａ”はエラー訂正モードＭＤ１中に選択されることを示し、”０”は供給先のシンドローム生成回路ＳＹＮＧの番号を示し、”（５）”は供給先のセレクタＳＥＬの番号を示す。符号ＲＢ０（５）の”Ｂ”は、エラー訂正モードＭＤ２中に選択されることを示す。符号ＲＣ０（５）の”Ｃ”は、エラー訂正モードＭＤ３中に選択されることを示す。他の符号も同様である。
【００６０】
セレクタＳＥＬ５−９は、シンドロームＳＹＮＤ０を生成するためにシンドローム生成回路ＳＹＮＧ０（エラー訂正回路の一種）に供給されるリアル読み出しデータの割り当てを切り替える訂正入力切替回路として動作する。排他的論理和回路ＥＸＯＲ８は、セレクタＳＥＬ９の出力とパリティ読み出しデータＰＲＤ０とを受ける。最終の排他的論理和回路ＥＸＯＲ１１は、シンドロームＳＹＮＤ０を出力する。
【００６１】
図１２は、図１０に示したシンドローム生成回路ＳＹＮＧ０−７に供給される信号の例を示している。例えば、シンドローム生成回路ＳＹＮＧ０のセレクタＳＥＬ５−９は、エラー訂正モードＭＤ１では、リアル読み出しデータＲＤ０−１５のうちデータＲＤ０、１、３、４、６をそれぞれ選択し、読み出しパリティデータＰＲＤ０を用いてシンドロームＳＹＮＤ０を生成する。シンドローム生成回路ＳＹＮＧ０のセレクタＳＥＬ５−９は、エラー訂正モードＭＤ２では、リアル読み出しデータＲＤ０−１５のうちデータＲＤ０、８、９、２、３をそれぞれ選択し、読み出しパリティデータＰＲＤ０を用いてシンドロームＳＹＮＤ０を生成する。シンドローム生成回路ＳＹＮＧ０のセレクタＳＥＬ５−９は、エラー訂正モードＭＤ３では、リアル読み出しデータＲＤ０−１５のうちデータＲＤ０、１、９、２、１０をそれぞれ選択し、読み出しパリティデータＰＲＤ０を用いてシンドロームＳＹＮＤ０を生成する。
【００６２】
同様に、シンドローム生成回路ＳＹＮＧ２のセレクタＳＥＬ５−９は、エラー訂正モードＭＤ１では、データＲＤ１、２、３、７と論理０（ＶＳＳ）をそれぞれ選択し、読み出しパリティデータＰＲＤ２を用いてシンドロームＳＹＮＤ２を生成する。パリティ生成回路ＰＧＥＮ２のセレクタＳＥＬ０−４は、エラー訂正モードＭＤ２では、データＲＤ８、１、９、１１と論理０（ＶＳＳ）をそれぞれ選択し、読み出しパリティデータＰＲＤ２を用いてシンドロームＳＹＮＤ２を生成する。パリティ生成回路ＰＧＥＮ０のセレクタＳＥＬ０−４は、エラー訂正モードＭＤ３では、リうちデータＲＤ１、８、９、１１と論理０（ＶＳＳ）をそれぞれ選択し、読み出しパリティデータＰＲＤ２を用いてシンドロームＳＹＮＤ２を生成する。
【００６３】
図１３は、図１０に示したシンドロームデコーダＳＤＥＣ０、ＳＤＥＣ１の例を示している。シンドロームデコーダＳＤＥＣ０−１は、互いに同じ回路のため、シンドロームデコーダＳＤＥＣ１の信号は、括弧内に示している。
【００６４】
シンドロームデコーダＳＤＥＣ０は、シンドロームＳＹＮＤ０−３をデコードし、リアル読み出しデータＲＤ０−７中のエラービットを示すエラー訂正信号ＩＣＲＣＴ０−７を生成する。シンドロームデコーダＳＤＥＣ１は、シンドロームＳＹＮＤ４−７をデコードし、リアル読み出しデータＲＤ８−１５中のエラービットを示すエラー訂正信号ＩＣＲＣＴ８−１５を生成する。
【００６５】
図１４は、図１０に示したエラー訂正回路ＥＣの例を示している。エラー訂正回路ＥＣは、内部データＩＤＱ０−１５に対応する１６個のセレクタＳＥＬ１０−２５、１６個の排他的論理和回路ＥＸＯＲおよびデータ出力切替回路ＤＯＳＷを有している。セレクタＳＥＬ１０−２５は、図１１に示したセレクタＳＥＬ５−９と同様に、エラー訂正モード信号ＭＤが示すエラー訂正モードＭＤ１−３に応じて、信号群ＲＡ０、ＲＢ０、ＲＣ０のいずれかを選択する。例えば、符号ＲＡ（１０）において、”Ｒ”は読み出しデータを示し、”Ａ”はエラー訂正モードＭＤ１中に選択されることを示し、”（１０）”は供給先のセレクタＳＥＬの番号を示す。符号ＲＢ（１０）の”Ｂ”は、エラー訂正モードＭＤ２中に選択されることを示す。符号ＲＣ（１０）の”Ｃ”は、エラー訂正モードＭＤ３中に選択されることを示す。他の符号も同様である。
【００６６】
セレクタＳＥＬ１０−２５は、エラー訂正モードＭＤ１−３に応じて、エラー訂正信号ＣＲＣＴ０−１５に対応するリアル読み出しデータＲＤ（ＲＤ０−１５のいずれか）を選択するために形成される。エラー訂正信号ＣＲＣＴ０１−１５は、図１０−１３に示したように、エラー訂正モードＭＤ１−３に応じて、対応するリアル読み出しデータＲＤ０−１５が異なる。このため、セレクタＳＥＬ１０−２５により、リアル読み出しデータＲＤ０−１５とエラー訂正信号ＣＲＣＴ０−１５の対応を正しくする必要がある。なお、この実施形態では、エラーは、リアル読み出しデータＲＤ０−７の１ビットで発生し、リアル読み出しデータＲＤ８−１５の１ビットで発生するものとする。
【００６７】
排他的論理和回路ＥＸＯＲは、セレクタＳＥＬ１０−２５により選択されたリアル読み出しデータＲＤとエラー訂正信号ＩＣＲＣＴ０−１５とをそれぞれ演算し、内部データＩＤ０−１５として出力する。データ出力切替回路ＤＯＳＷは、排他的論理和回路ＥＸＯＲ（エラー訂正回路の一種）から出力されるエラーが訂正された内部データＩＤ０−１５の割り当てを切り替え、元のリアルデータＩＤＱ０−１５に変換する。
【００６８】
図１５は、図１４に示したエラー訂正回路ＥＣ内のセレクタＳＥＬ１０−２５の動作の例を示している。各セレクタＳＥＬ１０−２５は、エラー訂正モードＭＤ１−３に応じて、リアル読み出しデータＲＤ０−１５のいずれかを選択する。選択されるリアル読み出しデータＲＤ０−１５の番号の並びは、図６に示したパリティデータＰＤ０−７を生成するためのデータ端子ＤＱ０−１５の番号の並びと同じである。
【００６９】
図１６は、図１４に示したエラー訂正回路ＥＣ内のデータ出力切替回路ＤＯＳＷの動作の例を示している。データ出力切替回路ＤＯＳＷは、エラー訂正モードＭＤ１−３に応じて、内部データＩＤ０−１５の割り当てを切り替え、内部データＩＤＱ０−１５として出力する。内部データＩＤＱ０−１５の番号の並びは、図６に示したパリティデータＰＤ０−７を生成するためのデータ端子ＤＱ０−１５の番号の並びと同じである。データ出力切替回路ＤＯＳＷにより、エラーが訂正されたリアル読み出しデータＩＤ０−１５は、正しいデータ端子ＤＱ０−１５に出力される。
【００７０】
図１７は、図３に示した半導体メモリＭＥＭの製造工程で実施される製造方法を示している。なお、図１７のフローは、図１８に示す半導体メモリＭＥＭの製造工程でも使用される。
【００７１】
まず、ステップＳ１００において、半導体メモリＭＥＭのウエハプロセスが実施される。ウエハプロセス後、半導体メモリＭＥＭが形成されたウエハがサンプリングされる。サンプリングされたウエハは、ステップＳ２００−Ｓ２０８の処理後、ステップＳ１０２に戻されてもよい。
【００７２】
ステップＳ１０２において、第１ウエハ試験が実施される。この後、ステップＳ１０４において、第１ウエハ試験でパスした半導体メモリチップＭＥＭは良品と判断され、第１ウエハ試験でフェイルした半導体メモリチップＭＥＭは救済可能な不良品と判断される。
【００７３】
次に、ステップＳ１０６において、図３に示したモード設定部２２のプログラム回路ＰＧＭがプログラムされ、ステップＳ２００−Ｓ２０８の処理で決定したエラー訂正モードが、不良の全ての半導体メモリチップＭＥＭに設定される。ステップＳ１０８において、第１ウエハ試験の結果に基づいて、不良のメモリセル等が冗長回路に置き換えられ、不良が救済される。なお、プログラム回路ＰＧＭのプログラムと、冗長回路に置き換えるためのプログラムは、同時に実施されてもよく、あるいは、ステップＳ１０８をステップＳ１０６の前に実施してもよい。
【００７４】
次に、ステップＳ１１０において、冗長回路への置き換えにより不良が救済されることを確認するために、第２ウエハ試験が実施される。この後、ステップＳ１１２において、第２ウエハ試験でパスした半導体メモリチップＭＥＭは良品と判断され、組立工程に送られ、または出荷される。第２ウエハ試験でフェイルした半導体メモリチップＭＥＭは不良品として処理される。なお、実際には、１枚のウエハ上に良品チップと不良品チップとが混在する。このため、良品チップと不良品チップとは、インクマークや電子的な記録により識別される。
【００７５】
一方、サンプリングしたウエハでは、半導体メモリチップＭＥＭは、ステップＳ２００において、図１０に示したエラー訂正回路ＥＣが無効にされる。例えば、エラー訂正回路ＥＣは、図３に示したコマンドデコーダ１４に無効設定用の試験コマンドが供給されることで無効にされる。無効にされたエラー訂正回路ＥＣは、エラー訂正信号ＣＲＣＴ０−１５の論理に拘わりなく、リアル読み出しデータＲＤ０−１５を内部データ線ＩＤＱ０−１５に出力する。すなわち、読み出しデータのエラーは訂正されない。
【００７６】
次に、ステップＳ２０２において、エラー訂正モードＭＤ１−３のそれぞれについて、各半導体メモリチップＭＥＭの動作試験が実施される。ステップＳ２０４において、エラー訂正モードＭＤ１−３毎に不良ビットが集計される。ステップＳ２０６において、エラー訂正モードＭＤ１−３毎に不良モードが判定される。ステップＳ２０８において、判定された不良モードに基づいて、最も歩留を向上できるエラー訂正モード（ＭＤ１−３のいずれか）が決定される。そして、上述したステップＳ１０６において、決定されたエラー訂正モードがプログラムされる。
【００７７】
例えば、データ端子ＤＱ３、４に対応するリアルメモリセルＭＣの２ビット不良の発生頻度が高いとき、図６に示したエラー訂正モードＭＤ１では、ＤＱ３、４に対応するパリティデータＰＤ０−３が同じため、２ビット不良はエラー訂正できない。一方、図６に示したエラー訂正モードＭＤ２−３では、ＤＱ３、４に対応するパリティデータ（ＰＤ０−３とＰＤ４−７）が異なるため、それぞれのビット不良を救済できる。同様に、データ端子ＤＱ２、４に対応するリアルメモリセルＭＣの２ビット不良の発生頻度が高いとき、エラー訂正モードＭＤ１では、ＤＱ２、４に対応するパリティデータＰＤ０−３が同じため、２ビット不良はエラー訂正できない。一方、図６に示したエラー訂正モードＭＤ２−３では、ＤＱ２、４に対応するパリティデータ（ＰＤ０−３とＰＤ４−７）が異なるため、それぞれのビット不良を救済できる。
【００７８】
ステップＳ２００−Ｓ２０８の処理（すなわち、サンプリング処理）は、例えば、数十ロットに１回の頻度で実施される。なお、サンプリングの頻度は、量産開始からの時期に応じて変更してもよく、あるいは、歩留が下がったときに増やしてもよい。サンプリングにより不良モードを判定し、最適なエラー訂正モードを決定することで、２ビット不良を２つの単ビット不良としてエラー訂正できる確率を向上できる。この結果、半導体メモリＭＥＭの歩留を向上できる。以上、この実施形態においても、上述した実施形態と同様の効果を得ることができる。
【００７９】
図１８は、別の実施形態における半導体メモリＭＥＭの例を示している。上述した実施形態で説明した要素と同一の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。この実施形態では、半導体メモリＭＥＭは、図３に示したメモリコア２４およびエラー制御部２６の代わりにメモリコア２４Ａおよびエラー制御部２６Ａを有している。半導体メモリＭＥＭのその他の構成は、図３と同様である。
【００８０】
メモリコア２４Ａは、リードアンプＲＡの出力に接続されたリアル読み出しデータ切替回路ＲＳＷと、ライトアンプＷＡの入力に接続されたリアル書き込みデータ切替回路ＷＳＷとを有している。メモリコア２４Ａのその他の構成は、図３のメモリコア２４と同様である。リアル読み出しデータ切替回路ＲＳＷは、読み出し動作時に、エラー訂正モード信号ＭＤに応じて、リードアンプＲＡからのリアル読み出しデータＩＲＤ０−１５のビットを入れ替え、リアル読み出しデータＲＤ０−１５として出力する。リアル書き込みデータ切替回路ＷＳＷは、書き込み動作時に、エラー訂正モード信号ＭＤに応じて、エラー制御部２６Ａからのリアル書き込みデータＷＤ０−１５のビットを入れ替え、リアル書き込みデータＩＷＤ０−１５として出力する。
【００８１】
エラー制御部２６Ａは、書き込み動作時に、リアル書き込みデータＩＤＱ０−１５をリアル書き込みデータＷＤ０−１５として出力するとともに、リアル書き込みデータＩＤＱ０−７、ＩＤＱ８−１５のパリティデータＰＤ０−３、ＰＤ４−７を生成する。エラー制御部２６Ａは、読み出し動作時に、パリティデータＰＲＤ０−３、ＰＲＤ４−７を用いてリアル読み出しデータＲＤ０−７、ＲＤ８−１５に含まれるエラーを訂正し、リアル読み出しデータＩＤＱ０−７、ＩＤＱ８−１５として出力する。
【００８２】
この実施形態では、メモリコア２４Ａ内でリアル読み出しデータＲＤ０−１５およびリアル書き込みデータＷＤ０−１５のビットの入れ替えが実施される。このため、エラー制御部２６内で処理されるデータのビット番号は、データ端子ＤＱの番号に等しく、エラー制御部２６内でのデータのビットの切り替えは不要である。
【００８３】
図１９は、図１８に示したメモリセルアレイＡＲＹにおけるエラー訂正モードＭＤ１中のデータ端子ＤＱ０−１５の割り当ての例を示している。メモリセルアレイＡＲＹの構造は、図４および図５と同様である。すなわち、メモリセルアレイＡＲＹは、８ビットのデータと４ビットのパリティデータを保持する２つのメモリグループＭＧ１−２を有している。図１９では、説明を分かりやすくするために、図１８に示した読み出しデータバスＲＤＢ、書き込みデータバスＷＤＢ、リードアンプＲＡおよびライトアンプＷＡの記載を省略している。
【００８４】
エラー訂正モードＭＤ１では、リアルビット線ＢＬ＃１（ＢＬａ１、ＢＬｂ１、ＢＬｃ１、ＢＬｄ１、ＢＬｅ１、ＢＬｆ１、ＢＬｇ１、ＢＬｈ１）に接続されるメモリグループＭＧ１のリアルメモリセルＭＣ（図１８）は、データ端子ＤＱ０−７に割り当てられる。リアルビット線ＢＬ＃２（ＢＬａ２、ＢＬｂ２、ＢＬｃ２、ＢＬｄ２、ＢＬｅ２、ＢＬｆ２、ＢＬｇ２、ＢＬｈ２）に接続されるメモリグループＭＧ２のリアルメモリセルＭＣは、データ端子ＤＱ８−１５に割り当てられる。
【００８５】
図２０は、図１８に示したメモリセルアレイＡＲＹにおけるエラー訂正モードＭＤ２中のデータ端子ＤＱ０−１５の割り当ての例を示している。メモリセルアレイＡＲＹは、図４および図５と同様に２つのメモリグループＭＧ１−２を有している。図２０では、説明を分かりやすくするために、図１８に示した読み出しデータバスＲＤＢ、書き込みデータバスＷＤＢ、リードアンプＲＡおよびライトアンプＷＡの記載を省略している。
【００８６】
エラー訂正モードＭＤ２では、リアルビット線ＢＬ＃１に接続されるメモリグループＭＧ１のリアルメモリセルＭＣ（図１８）は、データ端子ＤＱ０、８、１、９、２、１０、３、１１に割り当てられる。リアルビット線ＢＬ＃２に接続されるメモリグループＭＧ２のリアルメモリセルＭＣは、データ端子ＤＱ４、１２、５、１３、６、１４、７、１５に割り当てられる。
【００８７】
図２１は、図１８に示したメモリセルアレイＡＲＹにおけるエラー訂正モードＭＤ３中のデータ端子ＤＱ０−１５の割り当ての例を示している。メモリセルアレイＡＲＹは、図４および図５と同様に２つのメモリグループＭＧ１−２を有している。図２１では、説明を分かりやすくするために、図１８に示した読み出しデータバスＲＤＢ、書き込みデータバスＷＤＢ、リードアンプＲＡおよびライトアンプＷＡの記載を省略している。
【００８８】
エラー訂正モードＭＤ３では、リアルビット線ＢＬ＃１に接続されるメモリグループＭＧ１のリアルメモリセルＭＣ（図１８）は、データ端子ＤＱ０、１、８、９、２、３、１０、１１に割り当てられる。リアルビット線ＢＬ＃２に接続されるメモリグループＭＧ２のリアルメモリセルＭＣは、データ端子ＤＱ４、５、１２、１３、６、７、１４、１５に割り当てられる。
【００８９】
図２２は、図１８に示したエラー制御部２６Ａのうち、書き込み系の回路の例を示している。エラー制御部２６Ａは、データバッファＤＢＵＦ０−ＤＢＵＦ１およびパリティ生成回路ＰＧＥＮ０−ＰＧＥＮ７を有している。データバッファＤＢＵＦ０−１は、図７と同様の回路である。各パリティ生成回路ＰＧＥＮ０−７は、リアルデータＩＤＱ０−１５の所定のビットを選択し、選択したビットを用いてパリティデータＰＷＤ（ＰＷＤ０−７のいずれか）を生成する。
【００９０】
図２３は、図２２に示したパリティ生成回路ＰＧＥＮ０の例を示している。他のパリティ生成回路ＰＧＥＮ１−７は、入力される信号が異なることを除き、パリティ生成回路ＰＧＥＮ０と同様の回路である。パリティ生成回路ＰＧＥＮ０は、６個の排他的論理和回路ＥＸＯＲ０−５を有している。排他的論理和回路ＥＸＯＲ０−５は、図８と同じ回路である。排他的論理和回路ＥＸＯＲ０−２は、入力端子ＤＩＮ０−４でリアル書き込みデータＩＤＱ０、１、３、４、６を受けている。最終の排他的論理和回路ＥＸＯＲ５は、パリティデータＰＷＤ０を出力する。
【００９１】
図２４は、図２３に示したパリティ生成回路ＰＧＥＮ０−７に供給される信号の例を示している。例えば、パリティ生成回路ＰＧＥＮ１は、リアル書き込みデータＩＤＱ０、２、３、５、６を受け、書き込みパリティデータＰＷＤ１を生成する。パリティ生成回路ＰＧＥＮ２は、リアル書き込みデータＩＤＱ１、２、３、７および論理０（ＶＳＳ）を受け、書き込みパリティデータＰＷＤ２を生成する。
【００９２】
図２５は、図１８に示したエラー制御部２６Ａのうち、読み出し系の回路の例を示している。エラー制御部２６Ａは、シンドローム生成回路ＳＹＮＧ０−７、シンドロームデコーダＳＤＥＣ０−１およびエラー訂正回路ＥＣを有している。図２５の黒丸は、シンドローム生成回路ＳＹＮＧ０−７およびエラー訂正回路ＥＣが選択するリアル読み出しデータＲＤ０−１５を示している。シンドロームデコーダＳＤＥＣ０−１は、図１３と同様の回路である。
【００９３】
リアル読み出しデータＲＤ０−７は、リアルビット線ＢＬ＃１（図１９）に対応するデータであり、メモリグループＭＧ１のリアルメモリセルＭＣから読み出される。リアル読み出しデータＲＤ８−１５は、リアルビット線ＢＬ＃２に対応するデータであり、メモリグループＭＧ２のリアルメモリセルＭＣから読み出される。パリティ読み出しデータＰＲＤ０−３は、メモリグループＭＧ１から読み出され、パリティ読み出しデータＰＲＤ４−７は、メモリグループＭＧ２から読み出される。
【００９４】
各シンドローム生成回路ＳＹＮＧ０−７は、リアル読み出しデータＲＤ０−１５のうち所定のビットとパリティ読み出しデータＰＲＤ（ＰＲＤ０−７のいずれか）を用いてシンドロームＳＹＮＤ（ＳＹＮＤ０−７のいずれか）を生成する。
【００９５】
シンドロームデコーダＳＤＥＣ０は、シンドロームＳＹＮ０−３に基づいてリアル読み出しデータＲＤ０−７中のエラービットを示すエラー訂正信号ＣＲＣＴ０−７を生成する。シンドロームデコーダＳＤＥＣ１は、シンドロームＳＹＮ４−７に基づいてリアル読み出しデータＲＤ８−１５中のエラービットを示すエラー訂正信号ＣＲＣＴ８−１５を生成する。
【００９６】
エラー訂正回路ＥＣは、エラー訂正信号ＣＲＣＴ０−７に応じて、リアル読み出しデータＲＤ０−７のエラーを訂正し、エラー訂正信号ＣＲＣＴ８−１５に応じて、リアル読み出しデータＲＤ８−１５のエラーを訂正し、内部データＩＤＱ０−１５として出力する。
【００９７】
図２６は、図２５に示したシンドローム生成回路ＳＹＮＧ０の例を示している。他のシンドローム生成回路ＳＹＮＧ１−７は、入力される信号が異なることを除き、シンドローム生成回路ＳＹＮＧ０と同様の回路である。シンドローム生成回路ＳＹＮＧ０は、６個の排他的論理和回路ＥＸＯＲ６−１１を有している。排他的論理和回路ＥＸＯＲ６−１１は、図１１と同じ回路である。排他的論理和回路ＥＸＯＲ６−８は、入力端子ＤＩＮ５−９でリアル書き込みデータＩＤＱ０、１、３、４、６を受け、パリティ入力端子ＰＲＴＹでパリティ読み出しデータＰＲＤ０を受ける。最終の排他的論理和回路ＥＸＯＲ１１は、シンドロームＳＹＮＤ０を出力する。
【００９８】
図２７は、図２５に示したシンドローム生成回路ＳＹＮＧ０−７に供給される信号の例を示している。例えば、シンドローム生成回路ＳＹＮＧ１は、リアル読み出しデータＲＤ０、２、３、５、６および読み出しパリティデータＰＲＤ１を用いてシンドロームＳＹＮＤ１生成する。シンドローム生成回路ＳＹＮＧ２は、リアル読み出しデータＲＤ１、２、３、７と論理０（ＶＳＳ）および読み出しパリティデータＰＲＤ２を用いてシンドロームＳＹＮＤ２を生成する。
【００９９】
図２８は、図２５に示したエラー訂正回路ＥＣの例を示している。エラー訂正回路ＥＣは、リアル読み出しデータＲＤ０−１５およびエラー訂正信号ＣＲＣＴ０−１５をそれぞれ受け、内部データＩＤＱ０−１５を生成する１６個の排他的論理和回路ＥＸＯＲを有している。各排他的論理和回路ＥＸＯＲは、高レベルのエラー訂正信号ＣＲＣＴ（ＣＲＣＴ０−１５のいずれか）を受けているときに、対応するリアル読み出しデータＲＤ（ＲＤ０−１５のいずれか）の論理レベルを反転することで、エラーを訂正する。全てのエラー訂正信号ＣＲＣＴ０−１５が低レベルのとき、エラーは発生していない。なお、この実施形態では、エラーは、リアル読み出しデータＲＤ０−７の１ビットで発生し、リアル読み出しデータＲＤ８−１５の１ビットで発生するものとする。
【０１００】
図１８−図２８に示した半導体メモリＭＥＭは、図１７に示したフローを用いて製造される。すなわち、ステップＳ２０２において、図１９−図２１に示したエラー訂正モードＭＤ１−３での動作試験がそれぞれ実施され、歩留を向上するためのエラー訂正モード（ＭＤ１−３のいずれか）が決定される。以上、この実施形態においても、上述した実施形態と同様の効果を得ることができる。
【０１０１】
図２９は、別の実施形態における半導体メモリＭＥＭの例を示している。上述した実施形態で説明した要素と同一の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。この実施形態では、半導体メモリＭＥＭは、図３に示したコマンドデコーダ１４、アドレス制御部１８、コア制御部２０およびエラー制御部２６の代わりにコマンドデコーダ１４Ｂ、アドレス制御部１８Ｂ、コア制御部２０Ｂおよびエラー制御部２６Ｂを有している。また、半導体メモリＭＥＭは、ＢＩＳＴ（Built In Self Test）部２８Ｂを有している。半導体メモリＭＥＭのその他の構成は、図３と同様である。モード設定部２２は、ＢＩＳＴ部２８Ｂにより設定される。
【０１０２】
コマンドデコーダ１４Ｂは、コマンド信号ＣＭＤが試験開始コマンドを示すときに試験信号ＴＥＳＴＺを高レベルに設定し、コマンド信号ＣＭＤが試験終了コマンドを示すときに試験信号ＴＥＳＴＺを低レベルに設定する。コマンドデコーダ１４Ｂのその他の機能は、モード設定コマンド信号ＭＤＺが生成されないことを除き、図３のコマンドデコーダ１４と同様である。半導体メモリＭＥＭは、試験信号ＴＥＳＴＺが低レベルの期間に通常動作モードで動作し、試験信号ＴＥＳＴＺが高レベルの期間に試験動作モードで動作する。
【０１０３】
アドレス制御部１８Ｂは、通常動作モード中に、アドレスバッファ１２からのバンクアドレス信号ＢＡ、ロウアドレス信号ＲＡおよびコラムアドレス信号ＣＡを受けて動作する。アドレス制御部１８Ｂは、試験動作モード中に、ＢＩＳＴ部２８Ｂにより生成される試験バンクアドレス信号ＴＢＡ、試験ロウアドレス信号ＴＲＡおよび試験コラムアドレス信号ＴＣＡを受けて動作する。アドレス制御部１８Ｂは、受ける信号が動作モードに応じて異なることを除き、図３のアドレス制御部１８と同様の回路である。
【０１０４】
コア制御部２０Ｂは、通常動作モード中に、コマンドデコーダ１４Ｂからのアクティブコマンド信号ＡＣＴＺ、読み出しコマンド信号ＲＤＺ、書き込みコマンド信号ＷＲＺおよびプリチャージコマンド信号ＰＲＥＺを受けて動作する。コア制御部２０Ｂは、試験動作モード中に、ＢＩＳＴ部２８Ｂにより生成される試験アクティブコマンド信号ＴＡＣＴＺ、試験読み出しコマンド信号ＴＲＤＺ、試験書き込みコマンド信号ＴＷＲＺおよび試験プリチャージコマンド信号ＴＰＲＥＺを受けて動作する。コア制御部２０Ｂは、受ける信号が動作モードに応じて異なることを除き、図３のコア制御部２０と同様の回路である。
【０１０５】
エラー制御部２６Ｂは、通常動作モード中に、データ入出力バッファ１６から書き込みデータを受け、データ入出力バッファ１６に読み出しデータを出力する。エラー制御部２６Ｂは、試験動作モード中に、ＢＩＳＴ部２８Ｂから試験書き込みデータを受け、ＢＩＳＴ部２８Ｂに試験読み出しデータを出力する。エラー制御部２６Ｂは、書き込みデータを受ける相手および読み出しデータを出力する相手が動作モードに応じて異なることを除き、図３のエラー制御部２６と同様の回路である。
【０１０６】
ＢＩＳＴ部２８Ｂは、試験動作モード中にメモリコア２４にアクセスするために動作し、メモリコア２４に試験データを書き込み、メモリコア２４から試験データを読み出し、リアルメモリセルＭＣのエラーを判定する。ＢＩＳＴ部２８Ｂは、エラー訂正モードＭＤ１−３でメモリコア２４の試験を順次実施する。この後、ＢＩＳＴ部２８Ｂは、エラーが発生しなかったエラー訂正モードＭＤ１−３のいずれかをプログラムするためにプログラムコマンド信号ＰＧＭＺおよび試験ロウアドレス信号ＴＲＡをモード設定部２２Ｂに出力する。
【０１０７】
図３０は、図２９に示した半導体メモリＭＥＭの製造方法の例を示している。まず、ステップＳ３００において、半導体メモリチップＭＥＭのウエハプロセスが実施される。ウエハプロセス後、ステップＳ３０２において、半導体メモリＭＥＭがの第１ウエハ試験が実施される。ステップＳ３０４において、第１ウエハ試験でパスした半導体メモリチップＭＥＭは良品と判断され、第１ウエハ試験でフェイルした半導体メモリチップＭＥＭは救済可能な不良品と判断される。
【０１０８】
次に、ステップＳ３０６において、第１ウエハ試験の結果に基づいて、不良のメモリセル等が冗長回路に置き換えられ、不良が救済される。次に、ステップＳ３０８において、冗長回路への置き換えにより不良が救済されることを確認するために、第２ウエハ試験が実施される。この後、ステップＳ３１０において、第２ウエハ試験でパスした半導体メモリチップＭＥＭは良品と判断され、組立工程に送られ、または出荷される。
【０１０９】
次に、ステップＳ３１２において、図２９に示したＢＩＳＴ部２８Ｂを用いて、エラー訂正モードＭＤ１−３のそれぞれについて動作試験が実施される。この後、ステップＳ３１４において、動作試験に基づいて、エラー訂正モードＭＤ１−３のいずれかに設定することで良品になる半導体メモリチップＭＥＭが見つけられる。エラー訂正モードＭＤ１−３のいずれによっても良品にできない半導体メモリチップＭＥＭは不良品として扱われる。そして、ステップＳ３１６において、良品化可能と判定された半導体メモリチップＭＥＭは、エラー訂正モードＭＤ１−３のいずれかにプログラムされ、良品として扱われる。図３０に示した製造方法により、上述した実施形態と同様に、２ビット不良を２つの単ビット不良としてエラー訂正できる。この結果、不良と判定された半導体メモリＭＥＭを良品かでき、半導体メモリＭＥＭの歩留を向上できる。以上、この実施形態においても、上述した実施形態と同様の効果を得ることができる。
【０１１０】
図３１は、別の実施形態における半導体メモリＭＥＭの例を示している。上述した実施形態で説明した要素と同一の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。この実施形態では、半導体メモリＭＥＭは、図１８に示したコマンドデコーダ１４、アドレス制御部１８、コア制御部２０およびエラー制御部２６の代わりにコマンドデコーダ１４Ｂ、アドレス制御部１８Ｂ、コア制御部２０Ｂおよびエラー制御部２６Ｃを有している。また、半導体メモリＭＥＭは、ＢＩＳＴ部２８Ｂを有している。半導体メモリＭＥＭのその他の構成は、図１８と同様である。モード設定部２２は、ＢＩＳＴ部２８Ｂにより設定される。
【０１１１】
エラー制御部２６Ｃは、通常動作モード中に、データ入出力バッファ１６から書き込みデータを受け、データ入出力バッファ１６に読み出しデータを出力する。エラー制御部２６Ｂは、試験動作モード中に、ＢＩＳＴ部２８Ｂから試験書き込みデータを受け、ＢＩＳＴ部２８Ｂに試験読み出しデータを出力する。エラー制御部２６Ｂは、書き込みデータを受ける相手および読み出しデータを出力する相手が動作モードに応じて異なることを除き、図１８のエラー制御部２６Ａと同様の回路である。
【０１１２】
この実施形態では、図３０と同様の手順で半導体メモリＭＥＭが製造される。すなわち、第２ウエハ試験後に不良を救済できない半導体メモリチップＭＥＭについて、ＢＩＳＴ部２８Ｂによる動作試験がエラー訂正モードＭＤ１−３毎に実施され、不良チップの良品化が試される。これにより、２ビット不良を２つの単ビット不良としてエラー訂正でき、半導体メモリＭＥＭの歩留を向上できる。以上、この実施形態においても、上述した実施形態と同様の効果を得ることができる。
【０１１３】
図３２は、別の実施形態の半導体メモリにおけるエラー訂正回路ＥＣの例を示している。エラー訂正回路ＥＣを除く構成は、図３および図２９の半導体メモリＭＥＭと同様である。エラー訂正回路ＥＣは、エラー訂正コード切替回路ＣＲＣＴＳＷおよび内部データＩＤＱ０−１５を生成する１６個の排他的論理和回路ＥＸＯＲを有している。エラー訂正コード切替回路ＣＲＣＴＳＷは、エラー訂正信号ＣＲＣＴ０−１５の各ビットを、エラー訂正モード信号ＭＤに応じてエラー訂正信号ＩＣＲＣＴ０−１５のいずれかとして出力する。エラー訂正信号ＣＲＣＴ０−１５は、図１０に示したシンドロームデコーダＳＤＥＣ０−１から出力される。エラー訂正コード切替回路ＣＲＣＴＳＷの動作の例は、図１５に示す。
【０１１４】
各排他的論理和回路ＥＸＯＲは、高レベルのエラー訂正信号ＩＣＲＣＴ（ＩＣＲＣＴ０−１５のいずれか）を受けているときに、対応するリアル読み出しデータＲＤ（ＲＤ０−１５のいずれか）の論理レベルを反転することで、エラーを訂正する。全てのエラー訂正信号ＩＣＲＣＴ０−１５が低レベルのとき、エラーは発生していない。なお、この実施形態では、エラーは、リアル読み出しデータＲＤ０−７の1ビットで発生し、リアル読み出しデータＲＤ８−１５の１ビットで発生するものとする。
【０１１５】
図３３は、図３２に示したエラー訂正コード切替回路ＣＲＣＴＳＷの動作の例を示している。エラー訂正モードＭＤ１では、エラー訂正コード切替回路ＣＲＣＴＳＷは、エラー訂正信号ＣＲＣＴ０−１５をエラー訂正信号ＩＣＲＣＴ０−１５として出力する。エラー訂正モードＭＤ２、ＭＤ３では、エラー訂正コード切替回路ＣＲＣＴＳＷは、エラー訂正信号ＣＲＣＴ０−１５の所定数のビットを入れ替え、エラー訂正信号ＩＣＲＣＴ０−１５として出力する。
【０１１６】
図３３に示したエラー訂正モードＭＤ２でのエラー訂正信号ＩＣＲＣＴの並び順は、図６に示したエラー訂正モードＭＤ２でのパリティデータＰＤ０−７を生成するためのデータ端子の並び順（ＤＱ０、８、...、３、１１、ＤＱ４、１２、...、７、１５）と同じである。同様に、図３３に示したエラー訂正モードＭＤ３でのエラー訂正信号ＩＣＲＣＴの並び順は、図６に示したエラー訂正モードＭＤ３でのパリティデータＰＤ０−７を生成するためのデータ端子の並び順（ＤＱ０、１、...、１０、１１、ＤＱ４、５、...、１４、１５）と同じである。以上、この実施形態においても、上述した実施形態と同様の効果を得ることができる。
【０１１７】
図３４は、上述した半導体メモリＭＥＭが搭載されるシステムＳＹＳの例を示している。システムＳＹＳは、例えば、携帯電話や携帯ゲーム等の携帯機器の少なくとも一部を示している。なお、システムＳＹＳは、ビデオレコーダやパーソナルコンピュータ等のコンピュータ装置の少なくとも一部でもよい。
【０１１８】
システムＳＹＳは、システムオンチップＳｏＣを有している。あるいは、システムＳＹＳは、マルチチップパッケージＭＣＰ、システムインパッケージＳｉＰ、チップオンチップＣｏＣ、パッケージオンパッケージＰｏＰあるいはプリント基板の形態でもよい。システムＳＹＳの形態がプリント基板のとき、半導体メモリＭＥＭは、単一のパッケージに封入されていてもよい。
【０１１９】
例えば、ＳｏＣは、半導体メモリＭＥＭ、半導体メモリＭＥＭにアクセスするメモリコントローラＭＣＮＴ、フラッシュメモリＦＬＡＳＨ、フラッシュメモリＦＬＡＳＨをアクセスするメモリコントローラＦＣＮＴ、およびシステム全体を制御するＣＰＵ（メインコントローラ）を有している。ＣＰＵおよびメモリコントローラＭＣＮＴ、ＦＣＮＴは、システムバスＳＢＵＳにより互いに接続されている。特に限定されないが、ＳｏＣは、外部バスＳＣＮＴを介して上位のシステムに接続されてもよい。システムバスＳＢＵＳには、他の周辺回路チップが接続されてもよい。図３等に示したクロック信号ＣＬＫは、ＳｏＣ内の各デバイスに供給される。なおクロック信号ＣＬＫは、メモリコントローラＭＣＮＴから半導体メモリＭＥＭに供給されてもよい。
【０１２０】
ＣＰＵは、半導体メモリＭＥＭにアクセスするために、読み出しパケット（読み出しアクセス要求）および書き込みパケット（書き込みアクセス要求）をメモリコントローラＭＣＮＴに出力する。メモリコントローラＭＣＮＴは、ＣＰＵからの指示に基づいて、半導体メモリＭＥＭにコマンド信号ＣＭＤ、アドレス信号ＢＡ、ＡＤ、書き込みデータＤＱおよびデータマスク信号ＤＭを出力し、半導体メモリＭＥＭから読み出しデータＤＱを受ける。
【０１２１】
ＣＰＵは、フラッシュメモリＦＬＡＳＨにアクセスするために、読み出しパケット（読み出しアクセス要求）、書き込みパケット（書き込みアクセス要求）および消去パケット（消去要求）をメモリコントローラＦＣＮＴに出力する。メモリコントローラＦＣＮＴは、ＣＰＵからの指示に応じて、コマンド信号ＣＭＤおよび書き込みデータＤＴをフラッシュメモリＦＬＡＳＨに出力し、読み出しデータＤＴおよびビジー信号ＢＳＹをフラッシュメモリＦＬＡＳＨから受ける。アドレス信号は、データ線ＤＴを介してフラッシュメモリＦＬＡＳＨに伝達される。
【０１２２】
なお、システムＳＹＳにメモリコントローラＭＣＮＴを設けることなく、コマンド信号ＣＭＤおよびアドレス信号ＢＡ、ＡＤを、ＣＰＵから半導体メモリＭＥＭに直接出力してもよい。また、システムＳＹＳは、ＣＰＵと半導体メモリＭＥＭのみを有していてもよい。このとき、ＣＰＵは、メモリコントローラとして動作する。
【０１２３】
なお、上述した実施形態は、ＤＲＡＭに適用する例について述べた。しかしながら、上述した実施形態は、疑似ＳＲＡＭ、ＳＲＡＭ、フラッシュメモリ、強誘電体メモリ、ＭＲＡＭ（Spin Torque Transfer Magneto-resistive RAM）、ＲｅＲＡＭ（Resistive Random Access Memory）等の他の半導体メモリに適用可能である。疑似ＳＲＡＭは、ＤＲＡＭのメモリセルとＳＲＡＭのインタフェースを有し、内部で発生するリフレッシュ要求信号に応答して自動的にリフレッシュ動作を実行する。
【０１２４】
上述した実施形態では、図６および図１９−図２１に示すように、パリティデータＰＤ０−３、ＰＤ４−７の割り当てをエラー訂正モードＭＤ１−３に応じて３通りに変更する例について述べた。しかしながら、上述した実施形態は、パリティデータＰＤ０−３、ＰＤ４−７の割り当てを４通り以上に変更してもよい。
【０１２５】
図２９−図３１に示した実施形態では、半導体メモリＭＥＭの製造工程において、ＢＩＳＴ部２８Ｂを動作させる例について述べた。しかしながら、ＢＩＳＴ部２８Ｂは、半導体メモリＭＥＭがシステムＳＹＳに搭載された状態で、システムＳＹＳのパワーオン時に動作させてもよい。あるいは、ＢＩＳＴ部２８Ｂは、システムＳＹＳのパワーオン中に、半導体メモリＭＥＭの外部からの命令により動作させてもよい。このとき、長期間の使用によりビット不良が発生した半導体メモリＭＥＭをシステムＳＹＳ上で救済できる。また、設定されているエラー訂正モードＭＤ１−３を半導体メモリＭＥＭの外部に知らせるための外部端子を半導体メモリＭＥＭに形成してもよい。
【０１２６】
以上の詳細な説明により、実施形態の特徴点および利点は明らかになるであろう。これは、特許請求の範囲がその精神および権利範囲を逸脱しない範囲で前述のような実施形態の特徴点および利点にまで及ぶことを意図するものである。また、当該技術分野において通常の知識を有する者であれば、あらゆる改良および変更に容易に想到できるはずであり、発明性を有する実施形態の範囲を前述したものに限定する意図はなく、実施形態に開示された範囲に含まれる適当な改良物および均等物に拠ることも可能である。
【符号の説明】
【０１２７】
１０‥クロックバッファ；１２‥アドレスバッファ；１４、１４Ｂ‥コマンドデコーダ；１６‥データ入出力バッファ；１８、１８Ｂ‥アドレス制御部；２０、２０Ｂ‥コア制御部；２２‥モード設定部；２４、２４Ａ‥メモリコア；２６、２６Ａ、２６Ｂ、２６Ｃ‥エラー制御部；２８Ｂ‥ＢＩＳＴ部；ＣＲＣＴＳＷ‥エラー訂正コード切替回路；ＤＢＵＦ０−１‥データバッファ；ＤＯＳＷ‥データ出力切替回路；ＥＣ‥エラー訂正回路；ＥＣａ、ＥＣｂ‥エラー訂正回路；ＭＣ‥リアルメモリセル；ＭＣＧ１、ＭＣＧ２‥リアルメモリセル群；ＭＥＭ‥半導体メモリ；ＰＧＥＮａ、ＰＧＥＮｂ‥パリティ生成回路；ＰＧＥＮ０−７‥パリティ生成回路；ＰＧＭ‥プログラム回路；ＰＭＣ‥パリティメモリセル；ＰＭＣＧ１、ＰＭＣＧ２‥パリティメモリセル群；ＲＳＷ‥リアル読み出しデータ切替回路；ＳＤＥＣ０−１‥シンドロームデコーダ；ＳＷ、ＳＷ１−３‥割り当て切替回路；ＳＹＮＧ０−７‥シンドローム生成回路；ＷＳＷ‥リアル書き込みデータ切替回路
【図１】
2011238309.tif 000003
【図２】
2011238309.tif 000004
【図３】
2011238309.tif 000005
【図４】
2011238309.tif 000006
【図５】
2011238309.tif 000007
【図６】
2011238309.tif 000008
【図７】
2011238309.tif 000009
【図８】
2011238309.tif 000010
【図９】
2011238309.tif 000011
【図１０】
2011238309.tif 000012
【図１１】
2011238309.tif 000013
【図１２】
2011238309.tif 000014
【図１３】
2011238309.tif 000015
【図１４】
2011238309.tif 000016
【図１５】
2011238309.tif 000017
【図１６】
2011238309.tif 000018
【図１７】
2011238309.tif 000019
【図１８】
2011238309.tif 000020
【図１９】
2011238309.tif 000021
【図２０】
2011238309.tif 000022
【図２１】
2011238309.tif 000023
【図２２】
2011238309.tif 000024
【図２３】
2011238309.tif 000025
【図２４】
2011238309.tif 000026
【図２５】
2011238309.tif 000027
【図２６】
2011238309.tif 000028
【図２７】
2011238309.tif 000029
【図２８】
2011238309.tif 000030
【図２９】
2011238309.tif 000031
【図３０】
2011238309.tif 000032
【図３１】
2011238309.tif 000033
【図３２】
2011238309.tif 000034
【図３３】
2011238309.tif 000035
【図３４】
2011238309.tif 000036