(57)【要約】【課題】ＥＣＣ回路を搭載した半導体記憶装置において、ユーザデータの入出力に際し、データの信頼性が高く、従来の装置とも互換性を備えかつユーザデータの記憶容量の高い半導体記憶装置を提供する。【解決手段】ＥＣＣ回路２０５に入力されるデータのビット数を、書き込みのため外部から入力されるデータのビット数よりも多くすることにより、メモリセルアレイ２０１に書き込まれるユーザデータに対するパリティビットの比率を低減させる。結果、従来装置に比べてメモリセルにおけるパリティビット用の記録領域の占める割合を低下させることで、集積密度が同一のメモリセルアレイにおいて、ユーザが利用可能な記憶容量を高くしている。【選択図】図１
2008192206.tif 000002
【特許請求の範囲】
【請求項１】
第１のデータに対する誤り訂正用の第１のパリティビットを生成する誤り訂正回路と、
前記第１のデータおよび前記第１のパリティビットが書き込まれるメモリセルアレイとを備えた半導体記憶装置であって、
前記第１のデータのデータ長は、当該第１のデータの書き込みもしくは書き換えのため外部から入力される第２のデータのデータ長より大きいことを特徴とする半導体記憶装置。
【請求項２】
前記第１のデータは前記第２のデータを少なくとも１つ含むことを特徴とする請求項１に記載の半導体記憶装置。
【請求項３】
前記第１のデータは、連続するｎ個（ｎ≧２を満たす整数）の前記第２のデータを含むことを特徴とする請求項２に記載の半導体記憶装置。
【請求項４】
前記第１のデータのデータ長は８ビットであり、前記ｎは４であることを特徴とする請求項３に記載の半導体記憶装置。
【請求項５】
前記誤り訂正回路は、更に、前記メモリセルアレイから読み出された前記第１のパリティビットに基づいて、前記メモリセルアレイから読み出された前記第１のデータの誤り訂正を行うことを特徴とする請求項１に記載の半導体記憶装置。
【請求項６】
前記第２のデータを含む前記第１のデータを保持可能な入力ラッチ回路を更に備えたことを特徴とする請求項１に記載の半導体記憶装置。
【請求項７】
誤り訂正された前記第１のデータを保持する出力ラッチ回路を更に備えたことを特徴とする請求項６に記載の半導体記憶装置。
【請求項８】
前記メモリセルアレイには更に第１の冗長データが記憶されており、前記メモリセルアレイから読み出された前記第１のデータに含まれる不良データを、前記第１の冗長データで置換する第１の冗長切換回路を更に備えたことを特徴とする請求項１に記載の半導体記憶装置。
【請求項９】
前記第１の冗長データによる救済は、データ入出力端子に対応するＩＯ単位で実施されることを特徴とする請求項８に記載の半導体記憶装置。
【請求項１０】
前記入力ラッチ回路から出力される前記第１のデータの一部を第２の冗長データとして選択する第２の冗長選択回路を更に備えたことを特徴とする請求項８に記載の半導体記憶装置。
【請求項１１】
前記誤り訂正回路から出力された前記第１のパリティビットおよび前記入力ラッチ回路から出力された前記第１のデータの一部のいずれかを選択するアクセス切換回路を更に備えたことを特徴とする請求項８に記載の半導体記憶装置。
【請求項１２】
前記メモリセルアレイのうち前記第１の冗長データおよび前記第１のパリティビットが記憶される領域は、前記メモリセルアレイの端部以外の場所に配置されていることを特徴とする請求項１に記載の半導体記憶装置。
【請求項１３】
請求項２に記載の半導体記憶装置のデータ書き込み方法であって、
前記メモリセルアレイから書き換えの対象となるアドレスに記憶された第３のデータを含み、前記第１のデータとデータ長が等しく、かつアドレスが連続する第４のデータを読み出す第１のステップと、
前記第４のデータのうち前記第３のデータを前記第２のデータに置き換えて前記第１のデータを生成する第２のステップと、
前記第１のデータを入力として、前記誤り訂正回路で誤り訂正用の前記第１のパリティビットを生成する第３のステップと、
前記第１のデータおよび前記第１のパリティビットを前記メモリセルアレイに書き込む第４のステップとを含むことを特徴とする半導体記憶装置のデータ書き込み方法。
【請求項１４】
前記誤り訂正回路は、前記メモリセルアレイから読み出された前記第２のパリティビットに基づいて、前記第４のデータの誤り訂正を行う機能を備え、
前記第１のステップで読み出された前記第４のデータに対して誤り訂正を行うステップを更に含むことを特徴とする請求項１３に記載の半導体記憶装置のデータ書き込み方法。
【請求項１５】
請求項３に記載の半導体記憶装置のデータ書き込み方法であって、
外部から連続して入力されるｎ個の前記第２のデータに基づいて前記第１のデータを生成する第１のステップと、
前記第１のデータを入力として、前記誤り訂正回路で誤り訂正用の前記第１のパリティビットを生成する第２のステップと、
前記第１のデータおよび前記第１のパリティビットを前記メモリセルアレイに書き込む第３のステップとを含むことを特徴とする半導体記憶装置のデータ書き込み方法。
【請求項１６】
請求項１１に記載の半導体記憶装置のデータ書き込み方法であって、
前記メモリセルアレイから書き換えの対象となるアドレスに記憶された第３のデータを含み、前記第１のデータとデータ長が等しく、かつアドレスが連続する第４のデータを読み出す第１のステップと、
前記第４のデータのうち前記第３のデータを前記第２のデータに置き換えて前記第１のデータを生成する第２のステップと、
前記第１のデータのうち、前記第２のデータの一部分を前記アクセス切換回路で選択し、前記第２のデータの他の部分を前記第２の冗長切換回路で選択する第３のステップと、
前記第１のデータおよび前記第２のデータの一部分および他の部分を前記メモリセルアレイに書き込む第４のステップとを含むことを特徴とする半導体記憶装置のデータ書き込み方法。
【請求項１７】
請求項５に記載の半導体記憶装置のデータ読み出し方法であって、
前記メモリセルアレイから読み出しの対象となるアドレスに記憶された前記第２のデータを含む前記第１のデータ、およびこの第１のデータに対応する前記第１のパリティビットを読み出す第１のステップと、
前記第１のパリティビットに基づいて前記第１のデータの誤り訂正を行う第２のステップと、
誤り訂正された前記第１のデータのうち前記第２のデータを外部に出力する第３のステップとを含むことを特徴とする半導体記憶装置のデータ読み出し方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、誤り訂正回路を搭載した半導体記憶装置に関する。
【背景技術】
【０００２】
近年、携帯端末機器やＩＣカード等の記憶機能を備えた小型かつ高性能の電子機器類の普及に伴い、低い消費電力で高速に動作すると共に携帯性を備える記憶容量の大きな半導体記憶装置に対する要望が高まっている。このような半導体記憶装置として、フラッシュメモリや強誘電体メモリなどに代表される不揮発性メモリが挙げられる。さらに、低消費電力性および高速動作性の観点から強誘電体メモリが注目されている。
【０００３】
強誘電体メモリは、強誘電体膜を用いたキャパシタの分極方向の相違を利用して不揮発性データを記憶するように構成されている。強誘電体メモリにおいては、データの書き換えには分極方向を反転させるための電界をかけるだけでよい。つまり、強誘電体メモリは、低電圧、低消費電力、および高速動作という特徴を有する。このような不揮発性メモリはカード型にパッケージされ、メモリカードとして広く普及している。
【０００４】
電子機器類の小型化および高性能化のために、プログラムを含むより多くのユーザデータを記録できる半導体記録装置が必要とされている。そのために、半導体記憶装置の大記録容量化が要求されている。特に、メモリカードとしてパッケージされている半導体記憶装置では、そのサイズを増大させずに記憶容量を増大させる、つまり高記録密度化傾向にある。また、記憶領域の記憶素子（以下、「メモリセル」という）に記憶されるデータの信頼性を確保するため、半導体記憶装置には誤り訂正符号回路（Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔ  Ｃｏｄｅ、以降「ＥＣＣ回路」という）が搭載されている（特許文献１）。
【０００５】
なお、本明細書において、ユーザデータとはユーザが半導体記憶装置に外部から記憶させるデータを言い、当該ユーザデータを記憶するために半導体記憶装置或いは外部において別途生成して記憶される補助データとは区別される。
【０００６】
以下に、図１３および図１４を参照して、上述の半導体記憶装置について説明する。図１３に示すように、半導体記憶装置１４０はメモリセルが高密度に集積化されたメモリセルアレイ１４１とＥＣＣ回路１４２とを含む。外部データ入出力端子Ｉ／Ｏ［７：０］を介して、パーソナルコンピュータなどの外部のデータ源（不図示）と半導体記憶装置１４０との間で８ビット長のユーザデータが交換される。
【０００７】
外部データ入出力端子Ｉ／Ｏ［７：０］から８ビットのデータ長のユーザデータが入力されると、外部データ長と同じ８ビットのデータ長の内部データが内部データバスに入力される。この内部データはＥＣＣ回路１４２に入力されて、ＥＣＣ回路１４２でＥＣＣ処理される。そして、ＥＣＣ回路で１バイト（８ビット）の内部データに対して４ビットのパリティビットＰＤ（４）がペアにして生成される。
【０００８】
そして、内部データとパリティビットＰＤは共にデータバスに出力され、半導体記憶装置のメモリセルアレイ１４１に書き込まれて記憶される。本明細書においては、説明の便宜上、外部データ入出力端子Ｉ／Ｏ［７：０］から入力されるユーザデータおよび当該ユーザデータに応答して内部データバスに入力される内部データを共にユーザデータＵＤ（８）と呼称する。なお、ユーザデータＵＤ（８）において、（８）は８ビットであることを意味する。今後同様に、各データ名に付与する接尾辞において（）内の数字は当該データのビット数を表すものとする。
【０００９】
また、８ビットのユーザデータＵＤ（８）とペアで生成される４ビットパリティビットＰＤ（４）とを併せてペアデータＤＰ（１２）と呼称する。パリティビットＰＤ（４）は、上述のように、外部から半導体記憶装置１４０に外部から入力されるユーザデータＵＤ（８）の記憶のために生成されて記憶される補助データである。ペアデータＤＰ（１２）は次式（１）によって表現される。
ＤＰ（１２）＝ＵＤ（８）＋ＰＤ（４）・・・・・（１）
【００１０】
読み出しの際には、メモリセルアレイ１４１からペアデータＤＰ（１２）であるユーザデータＵＤ（８）とパリティピットＰＤ（４）とが読み出される。そして、ＥＣＣ回路１４２においては、メモリセルアレイ１４１から読み出されたパリティビットＰＤ（４）に基づいて、ユーザデータＵＤ（８）の誤り訂正処理が行われる。そして誤り訂正処理の後に、ユーザデータＵＤ（８）はデータ入出力端子Ｉ／Ｏ［７：０］を介して外部に出力される。
【００１１】
図１４（Ａ）に外部データ入出力端子Ｉ／Ｏ［７：０］から入力されるユーザデータＵＤ（８）を示す。図１４（Ｂ）にＥＣＣ回路１４２から出力されるペアデータＤＰ（１２）を示す。そして、図１４（Ｃ）に、メモリセルアレイ１４１にユーザデータＵＤ（８）およびパリディビットＰＤ（４）がペアデータＤＰ（１２）として記録されている様子を示す。
【００１２】
図１４（Ｃ）においては、ユーザデータＵＤ（８）とペアのパリティビットＰＤ（４）が互いに接する連続する領域に記憶されているように表されている。しかしながら、ユーザデータＵＤ（８）が記憶される領域とペアのパリティビットＰＤ（４）が記憶される領域とは、必ずしも連続あるいは互いに接していなくても良い。たとえば、ユーザデータＵＤ（８）はユーザデータ用のメモリセルに、またパリティビットＰＤ（４）はパリティビット用のメモリセルに記憶される。
【００１３】
メモリセルアレイ１４１からユーザデータＵＤ（８）を読み出す場合には、ユーザデータＵＤ（８）用のメモリセルおよびこのユーザデータＵＤ（８）とパリティビットＰＤ（４）用のメモリセルのそれぞれから、ユーザデータＵＤ（８）とパリティビットＰＤ（４）がペアで読み出される。そして、１２ビット長のデータペアＤＰ（１２）がＥＣＣ回路１４２に入力される。
【００１４】
ＥＣＣ回路１４２は、パリティビットＰＤ（４）に基づき、ユーザデータＵＤ（８）の誤り訂正処理を行う。ＥＣＣ回路１４２からは、データ入出力端子ＩＯ［７：０］を介して、誤り訂正処理が行われたユーザデータＵＤ（８）が外部に出力される。
【００１５】
上述のように、ＥＣＣ回路１４２を経て誤り訂正処理を行う場合、８ビットのユーザデータＵＤ（８）は４ビットのパリティビットＰＤ（４）がペアデータＤＰ（１２）としてメモリセルアレイ１４１に記憶されている。この場合、ユーザデータＵＤ（８）のデータ長に対するパリティビットＰＤ（４）のデータ長比は次式（２）のごとく表現できる。
ＵＤ（８）：ＰＤ（４）＝８：４＝１００：５０  ・・・・  （２）
【００１６】
このように、ユーザデータＵＤ（８）の信頼性を確保するためにメモリセルアレイ１４１に記録されているパリティビットＰＤ（４）は、容量比においてユーザデータＵＤ（８）の５０％に相当する。すなわち、メモリセルアレイ１４１の全容量の２／３（約６７％）がユーザデータＵＤ（８）の格納に使用され、１／３が補助データであるパリティビットＰＤ（４）の格納に使用される。言い換えれば、ユーザが記憶させることができるユーザデータＵＤ（８）は記憶半導体記憶装置の記憶容量の２／３に制限される。
【００１７】
【特許文献１】特開２００１−２３３９４号公報
【発明の開示】
【発明が解決しようとする課題】
【００１８】
上述のような半導体記憶措置において、高記憶容量化の要求を満たすには使用するメモリセルアレイ（メモリセル）の数を増やす必要がある。具体的には、メモリセルの間隔を狭める高密度集積によって同一面積（あるいは、同一体積）あたりのメモリセル数を増やす方法と、メモリセルの間隔自体は変えないで単に使用するメモリセルの数を増やす方法がある。
【００１９】
高密度集積方法においては、メモリセルアレイあるいは半導体記憶装置の大きさは増大させずに高記憶容量化を実現できる。つまり、記憶容量が同一であれば高密度集積方法によって、メモリセルアレイあるいは半導体記憶装置は小さくできる。しかし、高密度集積という高度な技術を必要とするために、多大なる技術的困難さやコスト増大を招き、さらに高密度集積技術の新たな開発が必要とされる。
【００２０】
一方、単に使用するメモリセルの数を増やす方法では、集積技術を初めとして既存の技術を用いることができるので、技術的困難さやコスト増大は比較的に軽微である。しかし、メモリセルアレイあるいは半導体記憶装置の大きさ（面積、体積）は高容量化に伴い増大する。これは、半導体記憶装置が用いられる電子機器などに対する軽量化あるいは小型化の要求を損なうものである。特に、パッケージ化されたメモリカードなどにおいては、サイズ的に従来品との互換性が失われることにもなる。
【００２１】
従って、本発明は、上述の問題を鑑みて集積密度が同一のメモリセルアレイにおいて、より多くのユーザデータを記録できる半導体記憶装置を提供することを目的とする。
【課題を解決するための手段】
【００２２】
上記目的を達成するため本発明の半導体記憶装置は、
第１のデータに対する誤り訂正用の第１のパリティビットを生成する誤り訂正回路と、
前記第１のデータおよび前記第１のパリティビットが書き込まれるメモリセルアレイとを備えた半導体記憶装置であって、
前記第１のデータのデータ長は、当該第１のデータの書き込みもしくは書き換えのため外部から入力される第２のデータのデータ長より大きいことを特徴とする。
【００２３】
前記第１のデータは前記第２のデータを少なくとも１つ含むことが好ましい。また前記第１のデータは、連続するｎ個（ｎ≧２を満たす整数）の前記第２のデータを含むことが好ましい。更に、前記第１のデータのデータ長は８ビットであり、前記ｎは４であることが好ましい。
【００２４】
また前記誤り訂正回路は、更に、前記メモリセルアレイから読み出された前記第１のパリティビットに基づいて、前記メモリセルアレイから読み出された前記第１のデータの誤り訂正を行うことが好ましい。
【００２５】
本発明の半導体記憶装置は、前記第２のデータを含む前記第１のデータを保持可能な入力ラッチ回路を更に備えることが好ましい。また誤り訂正された前記第１のデータを保持する出力ラッチ回路を更に備えることが好ましい。
【００２６】
また本発明の半導体記憶装置は、前記メモリセルアレイには更に第１の冗長データが記憶されており、前記メモリセルアレイから読み出された前記第１のデータに含まれる不良データを、前記第１の冗長データで置換する第１の冗長切換回路を更に備えていても良い。前記第１の冗長データによる救済は、データ入出力端子に対応するＩＯ単位で実施されることが好ましい。
【００２７】
また本発明の半導体記憶装置は、前記入力ラッチ回路から出力される前記第１のデータの一部を第２の冗長データとして選択する第２の冗長選択回路を更に備えていても良い。また前記誤り訂正回路から出力された前記第１のパリティビットおよび前記入力ラッチ回路から出力された前記第１のデータの一部のいずれかを選択するアクセス切換回路を更に備えていても良い。
【００２８】
上記目的を達成するため本発明の第１の半導体記憶装置のデータ書き込み方法は、
前記メモリセルアレイから書き換えの対象となるアドレスに記憶された第３のデータを含み、前記第１のデータとデータ長が等しく、かつアドレスが連続する第４のデータを読み出す第１のステップと、
前記第４のデータのうち前記第３のデータを前記第２のデータに置き換えて前記第１のデータを生成する第２のステップと、
前記第１のデータを入力として、前記誤り訂正回路で誤り訂正用の前記第１のパリティビットを生成する第３のステップと、
前記第１のデータおよび前記第１のパリティビットを前記メモリセルアレイに書き込む第４のステップとを含むことを特徴とする。
【００２９】
また本発明の第２の半導体記憶装置のデータ書き込み方法は、
外部から連続して入力されるｎ個の前記第２のデータに基づいて前記第１のデータを生成する第１のステップと、
前記第１のデータを入力として、前記誤り訂正回路で誤り訂正用の前記第１のパリティビットを生成する第２のステップと、
前記第１のデータおよび前記第１のパリティビットを前記メモリセルアレイに書き込む第３のステップとを含むことを特徴とする。
【００３０】
また本発明の第３の半導体記憶装置のデータ書き込み方法は、
前記メモリセルアレイから書き換えの対象となるアドレスに記憶された第３のデータを含み、前記第１のデータとデータ長が等しく、かつアドレスが連続する第４のデータを読み出す第１のステップと、
前記第４のデータのうち前記第３のデータを前記第２のデータに置き換えて前記第１のデータを生成する第２のステップと、
前記第１のデータのうち、前記第２のデータの一部分を前記アクセス切換回路で選択し、前記第２のデータの他の部分を前記第２の冗長切換回路で選択する第３のステップと、
前記第１のデータおよび前記第２のデータの一部分および他の部分を前記メモリセルアレイに書き込む第４のステップとを含むことを特徴とする。
【００３１】
上記目的を達成するため本発明の半導体記憶装置のデータ読み出し方法は、
前記メモリセルアレイから読み出しの対象となるアドレスに記憶された前記第２のデータを含む前記第１のデータ、およびこの第１のデータに対応する前記第１のパリティビットを読み出す第１のステップと、
前記第１のパリティビットに基づいて前記第１のデータの誤り訂正を行う第２のステップと、
誤り訂正された前記第１のデータのうち前記第２のデータを外部に出力する第３のステップとを含むことを特徴とする。
【発明の効果】
【００３２】
本発明は、従来の技術により実現でき、メモリセルの仕様を変えることなくかつ製造コストを上げることなく、半導体記憶装置に記憶させるユーザデータの信頼性を備える一方で、半導体記憶装置の総記憶容量に対するユーザデータの実質的な記憶容量を大きくすることを可能とした半導体記憶装置を提供する。
【発明を実施するための最良の形態】
【００３３】
本発明の実施の形態について説明する前に、本発明の基本的な概念について説明する。図１３および図１４に示した従来の半導体記憶装置１４０においては、メモリセルアレイ１４１のメモリセルの２／３（約６７％）がユーザデータＵ（８）の格納に用いられ、残りの１／３（約３３％）はパリティビットＰＤ（４）の格納に用いられている。パリティビットＰＤ（４）の格納に使用されているメモリセルアレイ１４１の約３３％を占める領域は、ユーザデータＵＤ（８）の格納に用いられることはない。
【００３４】
これは、ユーザが記憶させたいデータの記憶には半導体記憶装置１４０の記憶容量の２／３しか利用できないことを意味している。つまり、ユーザから見れば、メモリセルアレイ１４１の本来の記憶容量が２／３に減じられている状態である。そして、この状態（比率）は、メモリセルを高密度集積化しても、単純に使用するメモリセルの数を増やしても変わらない。
【００３５】
本発明は、上述のメモリセルアレイにおいて、ユーザデータに対するパリティビットの比率を低下できれば、メモリセルを増加させずにメモリセルアレイに格納できるユーザデータ量を増加させることができる可能性に着目して考案されている。言い換えれば、メモリセルアレイにおけるパリティビット領域の占有率を低減させて、ユーザデータ領域の占有率を増加させることによって、ユーザからみた半導体記憶装置（メモリセルアレイ）の高記憶容量化を図ることができる。
【００３６】
そのために、本発明においては、従来の８ビットのユーザデータＵＤ（８）に対して４ビットのパリティビットＰＤ（４）を付与するＥＣＣ処理手段とは異なるＥＣＣ処理手段が新たに考案されている。このＥＣＣ処理手段は、半導体記憶装置に入力される８ビットのユーザデータＵＤ（８）の入力に対して、従来のＥＣＣ処理手段と同様に正しくＥＣＣ処理ができる。このようなＥＣＣ処理手段を備えると共に、ユーザデータＵＤ（８）の入出力において従来の半導体記憶装置と互換性を有する半導体記憶装置を考案している。
【００３７】
図１を参照して、本発明にかかる半導体記憶装置における、ＥＣＣ処理について説明する。本発明においては、ＥＣＣ回路に入力されるユーザデータＵＤのデータ長を４バイトとする。そして、ＥＣＣ回路で４バイトのユーザデータＵＤ（３２）に対して６ビットのパリティビットＰＤ（６）が生成されて、３８ビットのペアデータＤＰ（３８）が出力される。ペアデータＤＰ（３８）は次式（３）によって表現される。
ＤＰ（３８）＝ＵＤ（３２）＋ＰＤ（６）・・・・・（３）
【００３８】
図１（Ａ）に示すように、外部から半導体記憶装置に入力されるユーザデータＵＤ（８）のデータ長は、従来と同様に８ビット（１バイト）である。これは、本発明においても、従来の半導体記憶装置および周辺機器との互換性を確保するために、１バイト（８ビット）を単位としてメモリセルアレイへのデータの書き込み、もしくはメモリセルアレイからのデータの読み出しが行われることを意味している。つまり、外部と交換されるデータもこれに対応して１バイト（８ビット）を単位としている。
【００３９】
図１（Ｂ）に示すように、ＥＣＣ回路においては、８ビット×４（３２ビット）のユーザデータＵＤ（３２）の入力に対して、６ビットのパリティビットＰＤ（６）が生成される。一般に、ＥＣＣ回路では、誤り訂正処理を行うために必要なパリティビットＰＤのビット数は、ユーザデータＵＤのビット数が多くなるほど増えるが、ペアデータＤＰにおける比率は小さくなることが知られている。本発明ではこの性質を利用して、誤り訂正処理に必要なパリティビットＰＤのビット数の低減を図っている。
【００４０】
つまり、本発明は、メモリセルアレイ２０１に記憶されるユーザデータＵＤは、上述したユーザデータＵＤ（３２）つまり、４バイトに限定されるものではなく、ＥＣＣ処理により誤り訂正が保証される範囲内で、パリティビットＰＤ（α）との容量比が所望の値になるように選択できる。つまり、本発明は、メモリセルアレイ２０１に格納されるペアデータＤＰは、ユーザデータＵＤ（８×ｎ）とパリティビットＰＤ（α）になるようにして実施できる。ｎは２以上の任意の整数であり、αはユーザデータＵＤ（８×ｎ）に対して、パリティビットＰＤ（α）のユーザデータＵＤ（８×ｎ）との容量比が所望の値になるように選択できるビット数である。つまり、本実施の形態においては、ｎ＝４、α＝６として説明されている。
【００４１】
図１（Ｃ）に示すように、３２ビットのユーザデータＵＤ（３２）と６ビットのパリティビットＰＤ（６）は、メモリセルアレイに３８ビットのペアデータＤＰ（３８）として記憶される。この場合、ユーザデータＵＤ（３２）のデータ長に対するパリティビットＰＤ（６）のデータ長比は次式（４）のごとく表現できる。
【００４２】
ＵＤ（３２）：ＰＤ（６）＝３２：６＝１００：１８．７５    ・・・・  （４）
【００４３】
このように、ユーザデータＵＤ（３２）の信頼性を確保するためにメモリセルアレイに記録されているパリティビットＰＤ（６）は、容量比においてユーザデータＵＤ（３２）の約１９％に相当する。すなわち、メモリセルアレイの全容量の３２／３８（約８４％）がユーザデータＵＤ（３２）の格納に使用される。これは、上述の従来の半導体記憶装置においてはユーザデータＵＤ（８）の格納にはメモリセルアレイの約６７％しか利用できないのに対して、本発明においてはユーザデータＵＤ（３２）の格納にメモリセルアレイの約８４％が利用できることを示している。
【００４４】
つまり本発明にかかる半導体記憶装置においては、従来の半導体記憶装置におけるのと同一のメモリセルアレイを用いても、ユーザデータＵＤが約１７％（＝８４％―６７％）も多く記憶できることを意味している。これは、メモリセルアレイのユーザデータ領域を約１７％拡張することであり、ユーザからみれば半導体記憶装置の記憶容量が約１７％増加されたのと同様の状態である。このようにして、本発明においては、メモリセルの集積度を上げたり、メモリセルを増やしたりすることなく、メモリセルアレイのユーザデータ容量の増加を可能にしている。
【００４５】
以下に、図２を参照して、本発明の実施の形態にかかる半導体記憶装置の構成について説明する。半導体記憶装置２００は、メモリセルアレイ２０１、リードアンプ２０２、出力冗長データ切換回路２０３、入力冗長データ切換回路２０７、出力アクセス切換回路２０４、入力アクセス切換回路２０８、ＥＣＣ回路２０５、入力ラッチ回路２０６、ライトバッファ２０９および出力ラッチ回路２１０を含む。
【００４６】
図３に示すように、メモリセルアレイ２０１には、ｍ個（ｍは任意の整数）のペアデータＤＰ（３８）が格納されている。これらは、ペアデータＤＰ（３８）＿１〜ＤＰ（３８）＿ｍと接尾辞を附して識別される。なお、ペアデータＤＰ（３８）を構成するユーザデータＵＤ（３２）、ユーザデータＵＤ（８）、パリティビットＰＤ（６）も同様に、１〜ｍの接尾辞を附して識別される。ペアデータＤＰ（３８）およびユーザデータＵＤ（３２）の構成について、ペアデータＤＰ（３８）＿ｏ（１≦ｏ≦ｍの任意の整数）を例に詳しく説明する。
【００４７】
ペアデータＤＰ（３８）＿ｏは、３２ビット（４バイト）のユーザデータＵＤ（３２）＿ｏと６ビットのパリティビットＰＤ（６）＿ｏから成る。ユーザデータＵＤ（３２）＿ｏは４つのユーザデータＵＤ（８）＿ｏ＿１〜ｏ＿４から成る。この意味において、メモリセルアレイ２０１に記憶されている任意のユーザデータＵＤ（８）は、ユーザデータＵＤ（８）＿ｏ＿ｐ（１≦ｐ≦４の任意の整数）と表現される。
【００４８】
図２に戻って、Ｉ１、Ｍ１、Ｎ１〜Ｎ５、Ｐ１〜Ｐ３、Ｒ１〜Ｒ４およびＳ１〜Ｓ２は各々データバスを示す。データバスに添えられた数字はデータバスのビット幅を表す。ビット幅は転送されるデータのビット数に対応している。半導体記憶装置２００の動作は、冗長切換信号ＣＲＥＤ、データ入力ラッチ信号ＷＣＬＫ、ＥＣＣメモリセルアクセスイネーブル信号ＥＣＣＤＩＲ、ＥＣＣ処理イネーブル信号ＥＣＣＥＮ、およびデータ出力ラッチ信号ＲＣＬＫを含む制御信号の論理電圧のレベル（ＬあるいはＨ）に基づいて、制御される。半導体記憶装置２００においても、従来の半導体記憶装置１４０におけるのと同様に、外部データ入出力端子Ｉ／Ｏ［７：０］７を介して、８ビットのユーザデータＵＤ（８）が入出力される。
【００４９】
外部から入力されるユーザデータＵＤ（８）により、メモリセルアレイ２０１に記録されているユーザデータＵＤ（３２）が更新される際には、メモリセルアレイ２０１から４０ビットのデータが読み出されて、データバスＳ１に出力される。具体的には、コラムアドレス信号ＣＯＬＡＤに基づいて、入力されたユーザデータＵＤ（８）に対応するユーザデータＵＤ（８）ｏ＿ｐが決定されて、当該ユーザデータＵＤ（８）ｏ＿ｐを含むユーザデータＵＤ（３２）＿ｏが決定される。そして、決定されたユーザデータＵＤ（３２）＿ｏを含むペアデータＤＰ（３８）#ｏと対応する冗長データＲＤ（２）とを含む４０ビットのデータがメモリセルアレイ２０１からデータバスＳ１に出力される。
【００５０】
リードアンプ２０２は６つのアンプユニット２０２Ａ、２０２Ｂ、２０２Ｃ、２０２Ｄ、２０２Ｅ、および２０２Ｆを含む。リードアンプ２０２は、データバスＳ１を介してメモリセルアレイ２０１から入力されるデータの電気信号を増幅する。詳しくは、メモリセルアレイ２０１から読み出されたユーザデータＵＤ（３２）＿ｏのユーザデータＵＤ（８）＿ｏ＿１、ＵＤ（８）＿ｏ＿２、ＵＤ（８）＿ｏ＿３、およびＵＤ（８）＿ｏ＿４は、それぞれアンプユニット２０２Ａ〜２０２Ｄにおいて増幅された後に、出力冗長データ切換回路２０３へと出力される。
【００５１】
６ビットのパリティビットＰＤ（６）＿ｏは、アンプユニット２０２Ｅで増幅された後に、出力アクセス切換回路へと出力される。冗長データＲＤ（２）はアンプユニット２０２Ｆで増幅された後、データバスＲ１に出力される。
【００５２】
出力冗長データ切換回路２０３は、４つの出力切換器２０３Ａ、２０３Ｂ、２０３Ｃ、および２０３Ｄを含む。出力切換器２０３Ａ、２０３Ｂ、２０３Ｃ、および２０３Ｄのそれぞれは、冗長切換信号ＣＲＥＤの”Ｌ”から”Ｈ”に変化に応答して、アンプユニット２０２Ａ〜２００Ｄのそれぞれで増幅されたユーザデータＵＤ（８）＿ｏ＿１、ＵＤ（８）＿ｏ＿２、ＵＤ（８）＿ｏ＿３、およびＵＤ（８）＿ｏ＿４の３２ビットのデータに含まれる２ビットの不良データを冗長データＲＤ（２）で置換して、データバスＮ１に出力する。出力冗長データ切換回路２０３から出力されたユーザデータＵＤ（３２）＿ｏのユーザデータＵＤ（８）＿ｏ＿１、ＵＤ（８）＿ｏ＿２、ＵＤ（８）＿ｏ＿３、およびＵＤ（８）＿ｏ＿４は、データバスＮ１において３２ビットのユーザデータＵＤ（３２）＿ｏとして統合される。
【００５３】
出力アクセス切換回路２０４は、アンプユニット２０２Ｅを介して入力されるパリティビットＰＤ（６）＿ｏをデータパスＰ１に出力する。
【００５４】
ＥＣＣ回路２０５は、ＥＣＣ処理イネーブル信号ＥＣＣＥＮの”Ｌ”から”Ｈ”への変化に応答して作動する２つの機能を備えている。第１の機能は、データバスＰ２を介して入力される６ビットのパリティビットＰＤ（６）＿ｏに基づいて、出力冗長データ切換回路２０３で冗長データ置換されたユーザデータＵＤ（３２）＿ｏに誤り訂正処理を施した後に、データバスＮ２およびＮ３を介して入力ラッチ回路２０６および出力ラッチ回路２１０のそれぞれ出力することである。
【００５５】
第２の機能は、データバスＮ４を介して入力ラッチ回路２０６から入力されるユーザデータＵＤ（３２）＿ｏ‘に対して誤り訂正用の６ビットのパリティビットＰＤ（６）＿ｏ‘を新たに作成して、データバスＰ２に出力することである。なお、ユーザデータＵＤ（３２）＿ｏ‘は、データバスＩ１を介して入力されたユーザデータＵＤ（８）によってユーザデータＵＤ（８）＿ｏ＿ｐが置き換えられたユーザデータＵＤ（３２）＿ｏである。これについては、以下に詳述する。
【００５６】
入力ラッチ回路２０６は、データバスＮ２を介してＥＣＣ回路２０５から入力される誤り訂正されたユーザデータＵＤ（３２）＿ｏを保持する。さらに、入力ラッチ回路２０６においては、データ入力ラッチ信号ＷＣＬＫの”Ｌ”から”Ｈ”への変化に応答して、コラムアドレス信号ＣＯＬＡＤにより指定されるユーザデータＵＤ（８）＿ｏ＿ｐはデータバスＩ１から入力された書き換え用のユーザデータＵＤ（８）で置換されて、３２ビットのユーザデータＵＤ（３２）＿ｏ‘が生成される。
【００５７】
ユーザデータＵＤ（３２）＿ｏ‘はデータバスＮ４、Ｎ５、およびＲ２を介して、それぞれ、ＥＣＣ回路２０５、ライトバッファ２０９、および入力冗長データ切換回路２０７に出力される。なお、ユーザデータＵＤ（３２）＿ｏ‘において上述の置き換えられたユーザデータＵＤ（８）ｏ＿ｐの下位６ビットだけが入力アクセス切換回路２０８に入力される。
【００５８】
そして、ＥＣＣ回路２０５において、パリティビットＰＤ（６）＿ｏ’が生成されることは上述の通りである。生成されたパリティビットＰＤ（６）＿ｏ’は、データバスＰ２を介して入力アクセス切換回路２０８に入力される。
【００５９】
出力冗長データ切換回路２０７は冗長切換器２０７Ａ、２０７Ｂ、２０７Ｃ、および２０７Ｄを含む。冗長切換器２０７Ａ、２０７Ｂ、２０７Ｃ、および２０７Ｄは、入力ラッチ回路２０６から入力されたユーザデータＵＤ（３２）＿ｏ‘のユーザデータＵＤ（８）＿ｏ’＿１、ＵＤ（８）＿ｏ’＿２、ＵＤ（８）＿ｏ’＿３、およびＵＤ（８）＿ｏ’＿４を保持する。
【００６０】
そして、冗長切換信号ＣＲＥＤの”Ｌ”から”Ｈ”への変化に応答して、冗長切換器２０７Ａ、２０７Ｂ、２０７Ｃ、および２０７Ｄは、保持しているユーザデータＵＤ（８）＿ｏ’＿１、ＵＤ（８）＿ｏ’＿２、ＵＤ（８）＿ｏ’＿３、およびＵＤ（８）＿ｏ’＿４の３２ビットのデータから冗長データ（２）としてメモリセルアレイ２０１に格納する２ビットのデータを選択する。選択された２ビット冗長データＲＤ（２）はデータバスＲ３を介してライトバッファ２０９に出力される。
【００６１】
入力アクセス切換回路２０８は、ＥＣＣメモリセルアクセスイネーブル信号ＥＣＣＤＩＲに基づいて、入力ラッチ回路２０６から入力されている６ビットデータと、ＥＣＣ回路２０５から入力されているパリティビットＰＤ（６）＿ｏ‘の一方を選択して、データバスＰ３を介してライトバッファ２０９に出力する。具体的には、ＥＣＣメモリセルアクセスイネーブル信号ＥＣＣＤＩＲが”Ｌ”である場合は、パリティビットＰＤ（６）＿ｏ’が選択される。一方、ＥＣＣメモリセルアクセスイネーブル信号ＥＣＣＤＩＲの論理電圧が”Ｈ”である場合は、データバスＩ１から入力されたユーザデータＵＤ（８）の８ビット長のデータのうちの下位６ビットのデータが選択される。
【００６２】
ライトバッファ２０９は、ＥＣＣ回路２０５から入力されたユーザデータＵＤ（３２）＿ｏ‘と、入力冗長データ切換回路２０７から入力された６ビットデータ（ユーザデータＵＤ（８）の下位６ビットあるいはパリティビットＰＤ（６）＿ｏ’）と、入力冗長データ切換回路２０７から入力された冗長データＲＤ（２）とからなる４０ビットのデータを保持する。
【００６３】
この４０ビットのデータは、データバスＳ２を介してメモリセルアレイ２０１に出力される。４０ビットデータのうち、ユーザデータＵＤ（３２）＿ｏ‘およびパリティビットＰＤ（６）＿ｏ’は、図３に示したペアデータＤＰ（３８）＿ｏとしてメモリセルアレイ２０１に記録される。そして、冗長データＲＤ（２）もメモリセルアレイ２０１の然るべく領域に格納される。
【００６４】
出力ラッチ回路２１０は、ＥＣＣ回路２０５から出力された誤り訂正済みのユーザデータＵＤ（３２）＿ｏを保持する。さらに、出力ラッチ回路２１０は、データ出力ラッチ信号ＲＣＬＫの”Ｌ”から”Ｈ”への変化に応答して、コラムアドレス信号ＣＯＬＡＤに基づいて規定されるユーザデータＵＤ（８）ｏ＿ｐがデータバスＭ１を介して外部データ入出力端子Ｉ／Ｏ［７：０］に出力される。
【００６５】
上述のように、本実施の形態においては、メモリセルアレイに含まれる不良セル対策として、３２ビットのユーザデータＵＤおよびパリティビットＰＤの他、２ビットの不良ビットを冗長救済するための構成が追加されている。これに対応してメモリセルアレイ２０１には、冗長救済に使用するデータＲＤを記憶する領域がユーザデータＵＤおよびパリティビットＰＤを記憶する領域とは別に設けられている。不良セルとは、製造工程上の欠陥によって全く動作しないメモリセル、例えば配線の断線やショート等が生じているメモリセルを指す。なお冗長救済の内容については広く知られているため、詳細な説明は省略する。
【００６６】
以下に、図４〜図１０を参照して、上述の半導体記憶装置２００の各種動作モードにおけるユーザデータの書込および読み出しについて説明する。なお、動作モードは、１バイトモード、ページモード、およびメモリセル不良検査モードに大別される。
【００６７】
１バイトモードとは、外部から入力されるユーザデータＵＤ（８）の１バイト毎に、ペアデータＤＰ（３８）を更新して当該ユーザデータＵＤ（８）をメモリセルアレイ２０１に記録する書込動作と、メモリセルアレイ２０１からペアデータＤＰ（３８）を読み出して１バイトのユーザデータＵＤ（８）を出力する読み出し動作のことをいう。
【００６８】
ページモードとは、外部から入力されるユーザデータＵＤ（８）の４バイト毎に、メモリセルアレイ２０１に記録されるペアデータＤＰ（３８）および冗長データＲＤ（２）を更新して、当該４バイトのユーザデータＵＤ（８）を記録する書込動作と、メリセルアレイ２０１からペアデータＤＰ（３８）を読み出し、４バイトのユーザデータＵＤ（８）を出力する読み出し動作のことをいう。
【００６９】
メモリセル不良検査モードとは、ＥＣＣ回路２０５による誤り訂正処理を働かせずにメモリセルアレイ２０１に含まれる複数のメモリセルに所定のデータを試験的に記録した後に、ＥＣＣ回路２０５による誤り訂正処理を働かせずにメモリセルアレイ２０１からデータを読み出してメモリセルアレイ２０１に含まれる不良セルを検知する動作のことをいう。
【００７０】
＜１バイトモード＞
以下に、図４および図５を参照して、本発明の実施の形態にかかる半導体記憶装置２００の１バイトモードにおける書込動作について説明する。その後に、図６を参照して１バイトモードにおける読み出し動作について説明する。
【００７１】
書込動作：
図４のタイミングチャートに示すように、時刻ｔ０において、冗長切換信号ＣＲＥＤ、ＥＣＣ処理イネーブル信号ＥＣＣＥＮ、データ入力ラッチ信号ＷＣＬＫ、およびＥＣＣメモリセルアクセスイネーブル信号ＥＣＣＤＩＲは”Ｌ”である。
【００７２】
時刻ｔ１において、コラムアドレス信号ＣＯＬＡＤに基づき、ユーザデータＵＤ（３２）＿ｏとパリティビットＰＤ（６）＿ｏとを含むペアデータＤＰ（３８）＿ｏ、および冗長データＲＤ（２）がメモリセルアレイ２０１からから読み出される。
【００７３】
そして、読みされた４バイトのユーザデータＵＤ（３２）は１バイト（８ビット）毎にアンプユニット２０２Ａ〜２０２Ｄにそれぞれ入力されて増幅される。また、パリティビットＰＤ（６）および冗長データＲＤ（２）はそれぞれアンプユニット２０２Ｅおよび２０２Ｆに入力されて、増幅される。
【００７４】
出力冗長データ切換回路２０３を構成する４つの冗長切換器２０３Ａ〜２０３Ｄのそれぞれに、ユーザデータＵＤ（３２）＿ｏを構成する４つのユーザデータＵＤ（８）が１つずつ入力される。データバスＲ１を介して冗長データＲＤ（２）が冗長切換器２０３Ａ〜２０３Ｄへ入力される。冗長切換信号ＣＲＥＤの”Ｌ”から”Ｈ”への変化に応答して、４バイトのユーザデータＵＤ（３２）＿ｏは冗長置換されたのち、データバスＮ１を介して、ＥＣＣ回路２０５へ入力される。
【００７５】
また、パリティビットＰＤ（６）＿ｏは出力アクセス切換回路２０４に入力されたのち、データバスＰ１を介して、ＥＣＣ回路２０５に入力される。
【００７６】
時刻ｔ２において、ＥＣＣ処理イネーブル信号ＥＣＣＥＮの”Ｌ”から”Ｈ”への変化に応答して、３２ビットのユーザデータＵＤ（３２）＿ｏは６ビットのパリティビットＰＤ（６）＿ｏに基づいて、ＥＣＣ回路２０５において誤り訂正処理される。そして、誤り訂正されたユーザデータＵＤ（３２）＿ｏはデータバスＮ２を介して、入力ラッチ回路２０６で保持される。
【００７７】
時刻ｔ４において、データ入力ラッチ信号ＷＣＬＫの”Ｌ”から”Ｈ”に変化し、その立ち上がりエッジで、データ入出力端子Ｉ／Ｏ［７：０］に入力された１バイト（８ビット）のユーザデータＵＤ（８）がデータバスＩ１を介して入力ラッチ回路２０６に入力される。そしてコラムアドレス信号ＣＯＬＡＤに基づき、ユーザデータＵＤ（３２）の４つのユーザデータＵＤ（８）＿ｏ＿１〜ＵＤ（８）＿ｏ＿４のうちで、入力ラッチ回路２０６に入力されたユーザデータＵＤ（８）に対応する１バイトがユーザデータＵＤ（８）で置き換えられてユーザデータＵＤ（３２）＿ｏ’としてデータバスＮ４、Ｎ５およびＲ２に出力される。ユーザデータＵＤ（３２）＿ｏ’は、データバスＮ５を介してライトバッファ２０９に入力され、データバスＲ２を介して入力冗長データ切換回路２０７に入力される。
【００７８】
時刻ｔ５において、ＥＣＣ処理イネーブル信号ＥＣＣＥＮの”Ｌ”から”Ｈ”に変化し、ユーザデータＵＤ（３２）＿ｏ‘に基づき、ＥＣＣ回路２０５でパリティビットＰＤ（６）＿ｏ’が作成される。そして、パリティビットＰＤ（６）＿ｏ‘はデータバスＰ２を介して入力アクセス切換回路２０８に入力される。
【００７９】
その後、ＥＣＣセルアクセスイネーブル信号ＥＣＣＤＩＲが”Ｌ”であることに応答して、入力アクセス切換回路２０８では、入力されたパリティビットＰＤ（６）＿ｏ’が選択される。そして、パリティビットＰＤ（６）＿ｏ‘はデータバスＰ３を介して、ライトバッファ２０９に入力される。このようにして、ライトバッファ２０９において、ペアデータＤＰ（３８）は生成される。
【００８０】
時刻ｔ６においては、冗長切換信号ＣＲＥＤの”Ｌ”から”Ｈ”への変化し、入力冗長データ切換器２０７Ａ〜２０７Ｄのいずれかが選択される。そして、選択された入力冗長データ切換器（２０７Ａ〜２０７Ｄのいずれか）から冗長データＲＤ（２）が出力される。そして、冗長データＲＤ（２）はデータバスＲ３を介してライトバッファ２０９に入力される。
【００８１】
そして、ライトバッファ２０９から、ユーザデータＵＤ（３２）＿ｏ’、パリティビットＰＤ（６）＿ｏ’および冗長データＲＤ（２）がデータバスＳ２を介してメモリセルアレイ２０１に入力される。このようにして、ユーザデータＵＤ（３２）＿ｏ’、およびパリティビットＰＤ（６）＿ｏ’はペアデータＤＰ（３８）＿ｏ‘としてメモリセルアレイ２０１の所定の領域に書き込まれる。
【００８２】
すなわち、３２ビットのユーザデータＵＤ（３２）＿ｏは１バイトのユーザデータＵＤ（８）＿ｏ＿ｐを外部から入力される８ビットのユーザデータＵＤ（８）と置き換えられる。つまり、ユーザデータＵＤ（３２）＿ｏはユーザデータＵＤ（８）で編集される。そして、ユーザデータＵＤ（３２）＿ｏ’は、新たに作成されたパリティビットＰＤ（６）＿ｏ’とともに、ペアデータＤＰ（３８）＿ｏとしてメモリセルアレイ２０１に記録される。
【００８３】
上述のように、１つのペアデータＤＰ（３８）＿ｏは、連続して入力される４つのユーザデータＵＤ（８）によって、最大４回に渡って編集される。つまり、最大４回に渡る編集の度に、ペアデータＤＰ（３８）＿ｏはメモリセルアレイ２０１から読み出され、ユーザデータＵＤ（８）で編集され、パリティビットＰＤ（６）＿ｏ‘が生成され、ペアデータＤＰ（３８）＿ｏとしてメモリセルアレイ２０１に記録される。そして、ペアデータＤＰ（３８）＿ｏの４つのユーザデータＵＤ（８）＿ｏ＿１〜ＵＤ（８）＿４の何れとも対応しないユーザデータＵＤ（８）が入力された時点で、ユーザデータＵＤ（８）＿ｏは編集対象でなくなり、メモリセルアレイ２０１からは新たに編集対象となったペアデータＤＰ（３８）が読み出される。
【００８４】
図５を参照して、本発明の半導体記憶装置２００の１バイトモードの書込動作におけるユーザデータＵＤ（３２）の編集過程を説明する。
【００８５】
まず、図５（Ａ）に示すように、メモリセルアレイ２０１からデータバスＳ１へユーザデータＵＤ（３２）＿ｏとパリティビットＰＤ（６）＿ｏからなるペアデータＤＰ（３８）＿ｏおよび冗長データＲＤ（２）が出力される。
【００８６】
次に、図５（Ｂ）に示すように、ＥＣＣ回路２０５からデータバスＮ２へ、４バイトのユーザデータＵＤ（３２）＿ｏがそれぞれ入力ラッチ回路２０６に入力される。なお、ＵＤ（３２）＿ｏは４つのユーザデータＵＤ（８）＿ｏ＿ｐからなる。
【００８７】
そして、図５（Ｃ）に示すように、外部からデータ入出力端子Ｉ／Ｏ［７：０］を介してデータバスＩ１に出力される１バイトのユーザデータＵＤ（８）が入力ラッチ回路２０６に入力される。
【００８８】
そして、図５（Ｄ）に示すように、入力ラッチ回路２０６において、４バイトのユーザデータＵＤ（３２）＿ｏの１バイト（ＵＤ（８）＿ｏ＿ｐ）がユーザデータＵＤ（８）に編集される。すなわち、入力ラッチ回路２０６では４バイトのユーザデータＵＤ（３２）＿ｏ’として編集される。
【００８９】
そして、図５（Ｅ）に示すように、メモリセルアレイ２０１にはユーザデータＵＤ（３２）＿ｏ’を含むペアデータＤＰ（３８）＿ｏ’と冗長データＲＤ（２）を含む４０ビットのデータが書き込まれる。
【００９０】
１バイトモードの書込動作においては、４バイトのユーザデータＵＤ（３２）は１バイトのユーザデータＵＤ（８）で編集される。つまり、１バイトのユーザデータの書込動作の際には、１バイトの入力データで４バイトのユーザデータが更新される。
【００９１】
読み出し動作：
図６のタイミングチャートに於いて、時刻ｔ０〜時刻ｔ２迄の動作は、上述の図５における時刻ｔ０〜時刻ｔ２迄の動作と同様である。つまり、時刻ｔ３の直前では、ＥＣＣ回路２０５で誤り訂正されたユーザデータＵＤ（３２）＿ｏは出力ラッチ回路２１０に入力されている状態である。
【００９２】
時刻ｔ３において、データ出力ラッチ信号ＲＣＬＫの”Ｌ”から”Ｈ”へ変化し、出力ラッチ回路２１０ではデータバスＮ２を介して入力されたユーザデータＵＤ（３２）＿ｏのうち８ビットのユーザデータＵＤ（８）＿ｏ＿ｐがコラムアドレス信号ＣＯＬＡＤに基づき選択される。選択されたユーザデータＵＤ（８）＿ｏ＿ｐはデータバスＭ１を介してデータ入出力端子Ｉ／Ｏ［７：０］に出力され、８ビットのユーザデータＵＤ（８）として外部に出力される。
【００９３】
本発明の半導体記憶装置２００の１バイトモードの読み込み動作においては、ユーザデータＵＤ（３２）＿ｏがパリティビットＰＤ（６）＿ｏとともにメモリセルアレイ２０１から読み出され、４バイトのユーザデータＵＤ（３２）＿ｏのうち１バイトのユーザデータＵＤ（８）＿ｏ＿ｐが選択されて外部に出力される。
【００９４】
上述の１バイトモードは、編集或いは書込のために入力される４つ以上のユーザデータＵＤ（８）の連続性が確保されていない、不連続なユーザデータＵＤ（８）が半導体記憶装置２００に入力される場合に用いられる。つまり、入力されてくるユーザデータＵＤ（８）の１バイト単位で、４バイトのユーザデータＵＤ（３２）を編集して、パリティビットＰＤ（６）を更新するので、複数のユーザデータＵＤ（８）が不連続で入力しても３２ビットに対する６ビットの誤り訂正を行って、メモリセルアレイに適切に記録できる。
【００９５】
＜ページモード＞
以下に、図７および図８を参照して、本発明の実施の形態にかかる半導体記憶装置２００のページモードにおける書込動作について説明する。その後に、図８を参照してページモードにおける読み出し動作について説明する。
【００９６】
書込動作：
ページモードにおいては、１バイトモードにおけるのとは異なり、外部から連続して入力されるユーザデータＵＤ（８）が４バイト毎に、メモリセルアレイ２０１に記録される。つまり、１バイトモードにおけるように、ユーザデータＵＤ（８）が１つ入力される度に、メモリセルアレイ２０１からペアデータＤＰ（３８）が読み出され、ペアデータＤＰ（３８）が編集されたり、パリティビットＰＤ（６）が更新されることはない。
【００９７】
つまり、ページモードにおいては、ペアデータＤＰ（３８）は連続する４バイトのユーザデータＵＤ（８）が入力される度に、メモリセルアレイ２０１に連続的に書き込まれる。
【００９８】
まず、時刻ｔ２と時刻ｔ３との間に、データ入出力端子Ｉ／Ｏ［７：０］を介して、外部から連続するユーザデータＵＤ（８）の入力が開始される。
【００９９】
時刻ｔ３において、コラムアドレス信号ＣＯＬＡＤに基づいて、すでに入力されたユーザデータＵＤ（８）がユーザデータＵＤ（３２）の最初４バイト（つまり、ユーザデータＵＤ（３２）＿ｏにおける、ユーザデータＵＤ（８）＿ｏ＿１〜ＵＤ（）８）＿ｏ＿４）のどれであるかが判断される。本例においては、時刻ｔ２と時刻ｔ３との間に、最初のユーザデータＵＤ（８）、つまりユーザデータＵＤ（８）＿ｏ＿１の入力が開始されている場合を例に説明する。
【０１００】
よって、時刻ｔ３、ｔ４、ｔ５、およびｔ６のそれぞれにおいて、外部から連続して入力されるユーザデータＵＤ（８）＿ｏ＿１、ＵＤ（８）＿ｏ＿２、ＵＤ（８）＿ｏ＿３、およびＵＤ（８）＿ｏ＿４が、コラムアドレス信号ＣＯＬＡＤおよびデータ入力ラッチ信号ＷＣＬＫに基づいて、入力ラッチ回路２０６に入力される。つまり、この時点で入力ラッチ回路２０６において、ユーザデータＵＤ（３２）＿ｏが保持されている。
【０１０１】
よって、時刻ｔ６において、ＥＣＣ処理イネーブル信号ＥＣＣＥＮの“Ｈ”に応答して、ＥＣＣ回路２０５は入力ラッチ回路２０６に保持されているユーザデータＵＤ（３２）＿ｏに対して、パリティビットＰＤ（６）＿ｏを生成する。そして、ユーザデータＵＤ（３２）＿ｏおよびパリティビットＰＤ（６）＿ｏがライトバッファ２０９に出力される。
【０１０２】
時刻ｔ７において、冗長切換信号ＣＲＥＤの”Ｈ”に応答して、冗長切換回路２０７Ａ〜２０７Ｄのいずれかから冗長データＲＤ（２）が出力される。このようにして、連続する４つのユーザデータＵＤ（８）＿ｏ＿１〜ＵＤ（８）＿ｏ＿４で構成されるユーザデータＵＤ（３２）＿ｏと、当該ユーザデータＵＤ（３２）＿ｏに関するパリティビットＰＤ（６）＿ｏ、および冗長データＲＤ（２）がライトバッファ２０９で保持される。
【０１０３】
そして、ライトバッファ２０９から、ユーザデータＵＤ（３２）＿ｏ、パリティビットＰＤ（６）＿ｏおよび冗長データＲＤ（２）がデータバスＳ２を介してメモリセルアレイ２０１に入力される。つまり、入力ラッチ回路２０６において、ユーザデータＵＤ（３２）＿ｏは連続する４つのユーザデータＵＤ（８）によって生成されて、パリティビットＰＤ（６）が生成される。このように、ページモードにおいては、ユーザデータＵＤ（３２）およびパリティビットＰＤ（６）は、連続する４つのユーザデータＵＤ（８）毎に生成されて、メモリセルアレイ２０１に格納される。
【０１０４】
読み出し動作：
図８のタイミングチャートに於いて、時刻ｔ０〜時刻ｔ２迄の動作は、上述の図６における時刻ｔ０〜時刻ｔ２迄と同様に、時刻ｔ３の直前では、ＥＣＣ回路２０５で誤り訂正されたユーザデータＵＤ（３２）＿ｏは出力ラッチ回路２１０に入力されている状態である。
【０１０５】
時刻ｔ３において、データ出力ラッチ信号ＲＣＬＫの”Ｌ”から”Ｈ”へ変化し、出力ラッチ回路２１０ではデータパスＮ２を介して入力されたユーザデータＵＤ（３２）＿ｏを構成する４つのユーザデータＵＤ（８）＿ｏ＿１〜ＵＤ（８）＿ｏ＿４の任意の１つであるユーザデータＵＤ（８）＿ｏ＿ｐがコラムアドレス信号ＣＯＬＡＤに基づき選択されて、外部データ入出力端子Ｉ／Ｏ［７：０］から外部に出力される。本例においては、最初のユーザデータＵＤ（８）＿ｏ＿１が時刻ｔ３に出力される。
【０１０６】
以降、時刻ｔ４、ｔ５、およびｔ６において、ユーザデータＵＤ（８）＿ｏ＿２、ＵＤ（８）ｏ３、およびＵＤ（８）＿ｏ＿４がそれぞれ連続的に選択されて、出力ラッチ回路２１０から外部に出力される。
【０１０７】
ページモードは、ページ単位でユーザデータを半導体記憶装置２００に連続的に書き込みおよび読み出しが可能である。データ入出力端子Ｉ／Ｏ［７：０］より、データ書き込みラッチ信号ＷＣＬＫの４サイクルで４バイト（３２ビット）のユーザデータＵＤ（３２）＿ｏを入力ラッチ回路２０６に保持した後に、ＥＣＣ回路２０５で誤り訂正処理用のパリティビットを生成している。
【０１０８】
このように、ページモードの書き込み動作では、ユーザデータＵＤ（３２）の４バイトが全て書き込まれた時点で、ユーザデータＵＤ（３２）に対するパリティビットＰＤ（６）が作成されるため、書き込みの際に４０ビットのデータ（ペアデータＤＰ（３８）および冗長データＲＤ（２））をメモリセルアレイ２０１から読み出す必要はない。
【０１０９】
また、ユーザデータＵＤ（８）が外部から入力される度に、パリティビットＰＤ（６）を作成して、４０ビットのデータ（ペアデータＤＰ（３８）および冗長データＲＤ（２））をメモリセルアレイ２０１で記憶する必要もない。結果、１バイトモードに比べて、読み出し動作および書き込み動作共に高速化される。
【０１１０】
上述のようにページモードは、編集・書込のために入力される４つ以上のユーザデータＵＤ（８）のユーザデータＵＤ（３２）分以上連続している場合に用いられる。例えば、３２バイト以上の連続するユーザデータＵＤが半導体記憶装置２００に記録される場合には、ユーザデータＵＤ（８）が入力される毎のメモリセルアレイ２０１からの読み出し、パリティビットＰＤ（６）生成、およびメモリセルアレイ２０１への格納という作業を、１バイトモードの場合に比べて約１／４に低減できる。
【０１１１】
＜メモリセル不良検査モード＞
書込動作：
以下、図９および図１０を参照して、本モードにおけるデータのメモリセルアレイ２０１に対する書込および読み出し動作について説明する。メモリセルアレイ２０１のうちユーザデータＵＤ（３２）が記憶されるメモリセルの検査については、データの書き込みおよび読み出しの動作は、ＥＣＣ回路２０５による誤り訂正処理を無効にすることを除いて、図３〜図６を参照して説明した１バイトモードでのデータの書き込みおよび読み出しの動作と変わりがない。
【０１１２】
図９に、メモリセルアレイ２０１へデータを書き込む時のタイミングチャートを示す。図９のタイミングチャートは、１バイトモードで説明した図４のタイミングチャートと、ＥＣＣセルアクセスイネーブル信号ＥＣＣＤＩＲが“Ｈ”に固定され、ＥＣＣ処理イネーブル信号ＥＣＣＥＮが“Ｌ”に固定されている点で相違している。
【０１１３】
図９を参照して、メモリセルアレイ２０１のパリティビット用メモリセルおよび冗長データ用メモリセルに検査用データ（パリティビットおよび冗長データ）を書き込む際の動作について説明する
【０１１４】
データ入出力端子ＩＯ［７：０］から入力された８ビットのユーザデータＵＤ（８）が、入力ラッチ回路２０６に入力される。上述の１バイトモードにおいては、ＥＣＣセルアクセスイネーブル信号ＥＣＣＤＩＲが“Ｌ”に固定されているため、入力アクセス切換回路２０８で、ＥＣＣ回路２０５から出力された６ビットのパリティビットＰＤ（６）が選択され、ライトバッファ２０９に入力される。
【０１１５】
これに対し本モードでは、ＥＣＣメモリセルアクセスイネーブル信号ＥＣＣＤＩＲが“Ｈ”に固定されているため、入力アクセス切換回路２０８では、外部から入力され入力ラッチ回路２０６に保持された８ビットのデータのうちの上位６ビットがパリティビットとして選択され、ライトバッファ２０９に入力される。
また、８ビットのユーザデータＵＤ（８）のうちの残りの２ビットのデータが冗長切換器２０７Ａ〜２０７Ｄで選択され冗長データとして出力される。そして、２ビットの冗長データがライトバッファ２０９に入力される。
【０１１６】
こうして、３２ビットのユーザデータＵＤ（３２）、６ビットのパリティビット、および２ビットの冗長データを含む４０ビットのデータはライトバッファ２０９に保持される。ライトバッファ２０９に保持された４０ビットのデータは、その後メモリセルアレイ２０１に書き込まれ、それぞれユーザデータ用メモリセル、パリティビット用メモリセルおよび冗長データ用メモリセルに記憶される。このようにして、メモリセルアレイ２０１への検査用データの書き込みが終了する。
【０１１７】
読み込み動作：
次に、図１０のタイミングチャートを参照して、冗長データ用メモリセルとパリティビット用メモリセルから検査用データを読み出す際の動作について説明する。図１０のタイミングチャートは、１バイトモードで説明した図６のタイミングチャートと、ＥＣＣセルアクセスイネーブル信号ＥＣＣＤＩＲが“Ｈ”に固定され、ＥＣＣ処理イネーブル信号ＥＣＣＥＮが“Ｌ”に固定されている点で相違している。
【０１１８】
メモリセルアレイ２０１から４０ビットのデータが読み出され、アンプユニット２０２Ａ〜２０２Ｆに入力される。アンプユニット２０２Ｅに入力した６ビットのパリティビットは、出力アクセス切換回路２０４を介してＥＣＣ回路２０５に入力される。また、アンプユニット２０２Ｆに入力した２ビットの冗長データは、冗長切換器２０３Ａ〜２０３Ｄを介して、３２ビットのユーザデータＵＤ（３２）の下位２ビットに現れる。
【０１１９】
パリティビット用メモリセルから読み出された６ビットのパリティビットと冗長データ用メモリセルから読み出された２ビットの冗長データは、ＥＣＣ回路２０５から出力される３２ビットのユーザデータＵＤ（３２）の下位８ビットに現れる。ＥＣＣ回路２０５から出力された３２ビットのユーザデータＵＤ（３２）が出力ラッチ回路２１０に保持された後、ユーザデータの下位８ビットがデータ入出力端子ＩＯ［７：０］を介して外部に出力される。読み出された下位８ビットのデータの内容が書き込まれたデータの内容と同じであるか否かを確認することにより、各メモリセルが正常に動作するか否かを検査できる。
【０１２０】
従来の半導体記憶装置（図１４）では、上述のように８ビットのユーザデータに対してパリティビットは４ビットとなる。冗長データを２ビットとすると合計で６ビットとなるため、１バイト単位で検査を行う際に２ビットのデータが余り、効率が悪い。一方、本実施の形態では、メモリセルアレイ２０１に記憶された６ビットのパリティビットと２ビットの冗長データを同時にアクセスすることにより１バイト（８ビット）単位で検査用データを読み出すことができる。従って、メモリセルアレイのパリティビット用メモリセルと冗長データ用メモリセルを同時に検査する場合に、検査効率が向上する。
【０１２１】
次に、図１１を参照して、本実施の形態で採用している冗長救済の方法について説明する。図１１は、書き込みのため外部から入力するデータを８ビット、ＥＣＣ回路２０５に入力するデータのビット数を３２ビットとする場合の、冗長方式による冗長救済単位と必要な冗長ビット数を比較したものである。
【０１２２】
図１１（Ａ）に示すように、コラム冗長を使用する場合は、ＥＣＣ回路にコラム０〜コラム３（各コラムは、Ｉ／Ｏ０〜７の８ビットのＩ／Ｏデータで構成）までの３２ビットが入力され、この入力データをもとに、ＥＣＣ回路でコラム＿ＥＣＣ（Ｉ／Ｏ０〜５の６ビットのデータ）のパリティビットが生成される。冗長置換を実施する場合、前記３２ビットの入力データと前記パリティビットの合計３８ビットの単位で置換する必要があるため、１つのコラム冗長で必要となる冗長ビット数は３８ビットである。
【０１２３】
一方、図１１（Ｂ）に示すように、Ｉ／Ｏ冗長では、Ｉ／Ｏ０〜３１（各Ｉ／Ｏは、コラム０〜７の８コラムで構成）のコラム０に相当する３２ビットがＥＣＣ回路に入力され、前記入力データをもとに、ＥＣＣ回路で発生されるＩ／Ｏ＿ＥＣＣ０〜５（各Ｉ／Ｏ＿ＥＣＣは、コラム０〜７の８コラムで構成）のコラム０に相当する６ビットのパリティビットとなる。従って、前記Ｉ／Ｏ０〜３１とＩ／Ｏ＿ＥＣＣ０〜５がアクセス単位となり、冗長救済はそのアクセス単位内でのＩ／Ｏ置換になるので、１つのＩ／Ｏ冗長で必要となる冗長ビット数は８ビット（コラム０〜７）である。
【０１２４】
このように、半導体記憶装置で入出力するデータ（ユーザデータＵＤ（８））の書き換え単位のビット数よりもＥＣＣ回路で誤り訂正処理を行うデータ（ユーザデータＵＤ（３２））のビット数が大きい場合には、コラム冗長よりもＩ／Ｏ冗長のほうが有効である。コラム冗長では、１つのコラムに対して３８ビットが必要であるが、Ｉ／Ｏ冗長では、１つのＩ／Ｏ冗長に対して８ビットでユーザデータ（ユーザデータＵＤ（３２））用メモリセルおよびパリティビット（パリティビットＰＤ（６））用メモリセルに対する冗長救済が可能となる。
【０１２５】
以下に、図１２を参照して、メモリセルアレイ２０１におけるデータの種類毎の記憶領域について説明せる。メモリセルアレイ２０１のワード線方向を縦方向とし、ビット線方向を横方向とした場合に、各領域は縦方向に所定の順番に配置されている。具体的には、第１のユーザデータ領域ＲＵ１、第２のユーザデータ領域ＲＵ２、第３のユーザデータ領域ＲＵ３、および第４ユーザデータ領域が離散して順番に配置されている。
【０１２６】
第１のユーザデータ（ＵＤ（３２）＿１）領域ＲＵ１と第２のユーザデータ（ＵＤ（３２＿１））領域ＲＵ２との間には、第１のパリティビット（ＰＤ（６）＿１）領域ＲＰ１と第２のパリティビット（ＰＤ（６）＿２）領域ＲＰ２が配置されている。
【０１２７】
第２のユーザデータ（ＵＤ（３２）＿２）領域ＲＵ２と第３のユーザデータＵＤ（３２）＿３）領域ＲＵ３との間には、第３のパリティビット（ＰＤ（６）＿３）領域ＲＰ３、第１の冗長データ（ＲＤ（２）＿１）領域ＲＲ１、第２の冗長データ（ＲＤ（２）＿２）領域ＲＲ２、および第４のパリティビット（ＰＤ（６）＿４）領域ＲＰ４が順番に配置されている。
【０１２８】
そして、第３のユーザデータ（ＵＤ（３２）＿３）領域ＲＵ３と第４のユーザデータ（ＵＤ（３２）＿４）領域ＲＵ４との間には、第５のパリティビット（ＰＤ（６）＿５）領域ＲＰ５と第６のパリティビット領域ＲＰ６が順番に配置されている。
【０１２９】
このように、パリティビット用領域ＲＰおよび冗長データ用領域ＲＲを端部に配置しないことで、パリティビットおよび冗長データ用のメモリセルの不良率を抑えている。
【０１３０】
上述のように、本発明は、ｎバイトのユーザデータＵＤ（ｎ×８）に対して、ＥＣＣ訂正処理を施して生成されるαビットのパリティビットＰＤ（α）をペアに格納することによって、メモリセルアレイにおけるユーザデータＵＤの占有比率を増大させることができ、同一のサイズのメモリセルアレイ２０１により多くのユーザデータの記憶としている。つまり、メモリセルアレイの物理的記憶容量を増加させることなく、ユーザが直接記憶させるデータの記憶容量を増加させている。なお、ｎは２以上の任意の整数であり、αはｎの値によって適宜決定される整数である。
【産業上の利用可能性】
【０１３１】
本発明に係る半導体記憶装置は、軽量かつ小型化と共にデータ記憶の高容量化が要求される電子機器に用いることができる。
【図面の簡単な説明】
【０１３２】
【図１】本発明の実施の形態に係る半導体記憶装置において格納されるデータの構成を示す説明図
【図２】本発明の実施の形態に係る半導体記憶装置の構成を示すブロック図
【図３】図２のメモリセルアレイに記憶されるデータの構成を示す説明図
【図４】図２の半導体記憶装置の１バイトモードにおいて、メモリセルアレイへデータを書き込む時の動作のタイミングチャート
【図５】図２の半導体記憶装置の１バイトモードの書込動作におけるユーザデータの編集過程を示す説明図
【図６】図２の半導体記憶装置の１バイトモードにおいて、メモリセルアレイからデータを読み出す時の動作のタイミングチャート
【図７】図２の半導体記憶装置のページモードにおいて、メモリセルアレイへデータを書き込む時の動作のタイミングチャート
【図８】図２の半導体記憶装置のページモードにおいて、メモリセルアレイからデータを読み出す時の動作のタイミングチャート
【図９】図２の半導体記憶装置のメモリセル不良検査モードにおいて、メモリセルアレイへデータを書き込む時の動作のタイミングチャート
【図１０】図２の半導体記憶装置のメモリセル不良検査モードにおいて、メモリセルアレイからデータを読み出す時の動作のタイミングチャート
【図１１】図２の半導体記憶装置における、冗長方式による冗長救済単位と必要な冗長ビット数との説明図
【図１２】図２の半導体記憶装置における、メモリセルアレイでの記憶領域配置例を示す説明図
【図１３】従来の半導体記憶装置の構成を示すブロック図
【図１４】従来の半導体記憶装置に格納されるデータの構成を示す説明図
【符号の説明】
【０１３３】
２０１  メモリセルアレイ
２０２  リードアンプ
２０３  出力冗長データ切換回路
２０４  出力アクセス切換回路
２０７  入力冗長データ切換回路
２０８  入力アクセス切換回路
２０５  ＥＣＣ回路
２０６  入力ラッチ回路
２０９  ライトバッファ
２１０  出力ラッチ回路
ＣＲＥＤ  冗長切換信号
ＷＣＬＫ  データ入力ラッチ信号
ＣＯＬＡＤ  コラムアドレス信号
ＥＣＣＤＩＲ  ＥＣＣメモリセルアクセスイネーブル信号
ＥＣＣＥＮ  ＥＣＣ処理イネーブル信号
ＲＣＬＫ  データ出力ラッチ信号
Ｉ／Ｏ[７：０]  データ入出力端子
Ｉ１、Ｍ１、Ｎ１〜Ｎ５、Ｐ１〜Ｐ３、Ｒ１〜Ｒ４、Ｓ１〜Ｓ２  データバス
【図１】
2008192206.tif 000003
【図２】
2008192206.tif 000004
【図３】
2008192206.tif 000005
【図４】
2008192206.tif 000006
【図５】
2008192206.tif 000007
【図６】
2008192206.tif 000008
【図７】
2008192206.tif 000009
【図８】
2008192206.tif 000010
【図９】
2008192206.tif 000011
【図１０】
2008192206.tif 000012
【図１１】
2008192206.tif 000013
【図１２】
2008192206.tif 000014
【図１３】
2008192206.tif 000015
【図１４】
2008192206.tif 000016