(57)【要約】      （修正有）【課題】複数の半導体メモリユニット個々のおけるエラーを検出し、破損したデータを訂正するための機能を提供する。【解決手段】第１の半導体メモリユニット210、211、212、213にデータ240、241、242、243を保存し、また、データを復元するために第２の半導体メモリユニット214にエラー訂正情報244を保存する。エラー訂正情報は、少なくとも第１のメモリユニットに保存されたデータの値に等しい値を有する。【選択図】図２
2015201221.tif 000002
【特許請求の範囲】
【請求項１】
第１の値を有するデータを保存するように設定された第１の半導体メモリユニットと、
前記データを復元するためのエラー訂正情報を保存するように設定された第２の半導体メモリユニットと、
を備え、
前記第１の半導体メモリユニットに、アドレスの少なくとも第１群のビット値に基づき前記データが保存され、前記第２の半導体メモリユニットに、前記アドレスの第２群のビット値に基づき前記エラー訂正情報が保存される、装置。
【請求項２】
第１の値を有する第１のデータを保存するように設定された第１の半導体メモリユニットと、
第２の値を有する第２のデータを保存するように設定された第２の半導体メモリユニットと、
前記第１のデータおよび前記第２のデータの１つを復元するためのエラー訂正情報を保存するように設定された第３の半導体メモリユニットであって、前記エラー訂正情報が部分的に前記第１および第２の値に基づく値を有する、第３の半導体メモリユニットと、
を備え、
前記第１の半導体メモリユニットに、アドレスの少なくとも第１群のビット値に基づき前記データが保存され、前記第３の半導体メモリユニットに、前記アドレスの第２群のビット値に基づき前記エラー訂正情報が保存される、装置。
【請求項３】
前記第１の半導体メモリユニットは、前記第１のデータを保存するための前記第１の半導体メモリユニット内の第１のアドレスに関連する第１の記憶場所を含み、前記第２の半導体メモリユニットは、前記第２のデータを保存するための前記第２の半導体メモリユニット内の第２のアドレスに関連する第２の記憶場所を含み、前記第３の半導体メモリユニットは、前記エラー訂正情報を保存するための前記第３の半導体メモリユニット内の第３のアドレスに関連する第３の記憶場所を含み、前記第１、第２、および第３のアドレスは同一のアドレス値を有する、請求項２に記載の装置。
【請求項４】
第１の値を有する第１のデータと、少なくとも部分的に第２のデータの第２の値および第３のデータの第３の値に基づく値を有する第１のエラー訂正情報とを保存するように設定された第１の半導体メモリユニットであって、前記第２のデータにエラーが生じた場合、前記第１のエラー訂正情報が、前記第１のエラー訂正情報の値と少なくとも前記第３のデータの値とに基づいて前記第２のデータを復元するように使用される、第１の半導体メモリユニットと、
前記第２のデータと、少なくとも部分的に前記第１の値および第４のデータの第４の値に基づく値を有する第２のエラー訂正情報とを保存するように設定された第２の半導体メモリユニットであって、前記第１のデータにエラーが生じた場合、前記第２のエラー訂正情報が、該第２のエラー訂正情報と少なくとも前記第４のデータの値とに基づいて前記第１のデータを復元するように使用される、第２の半導体メモリユニットと、
を備え、
前記第１の半導体メモリユニットに、アドレスの少なくとも第１群のビット値に基づき前記データが保存され、前記第２の半導体メモリユニットに、前記アドレスの第２群のビット値に基づき前記エラー訂正情報が保存される、装置。
【請求項５】
前記第１の半導体メモリユニットは、前記第１のエラー訂正情報を保存するための前記第１の半導体メモリユニット内の第１のアドレスに関連する第１の記憶場所を含み、前記第２の半導体メモリユニットは、前記第２のデータを保存するための前記第２の半導体メモリユニット内の第２のアドレスに関連する第２の記憶場所を含み、前記第１および第２
のアドレスは同一のアドレス値を有する、請求項４に記載の装置。
【請求項６】
前記第１の半導体メモリユニットは、前記第１のデータを保存するための前記第１の半導体メモリユニット内の第３のアドレスに関連する第３の記憶場所を含み、前記第２の半導体メモリユニットは、前記第２のエラー訂正情報を保存するための前記第２の半導体メモリユニット内の第４のアドレスに関連する第４の記憶場所を含み、前記第３および第４のアドレスは同一のアドレス値を有する、請求項５に記載の装置。
【請求項７】
複数の半導体メモリユニットであって、該複数の半導体メモリユニットの少なくとも１つが前記複数の半導体メモリユニット中の少なくとも第１の半導体メモリユニットのデータの値に基づく値を有するエラー訂正情報を保存するように設定されている、複数の半導体メモリユニットと、
前記第１の半導体メモリユニットのデータにエラーが生じた場合、前記第１の半導体メモリユニットの前記データの値を除いて、前記エラー訂正情報の値と前記複数の半導体メモリユニットの少なくとも１つのデータの値とに基づいて前記第１の半導体メモリユニッ
トの前記データを復元するように設定されたコントローラと、
を備え、
前記第１の半導体メモリユニットは、アドレスの少なくとも第１群のビット値に基づき前記データが保存され、前記エラー訂正情報を保存するように設定された前記複数の半導体メモリユニットの少なくとも１つは、前記アドレスの第２群のビット値に基づき前記エラー訂正情報が保存される、装置。
【請求項８】
前記コントローラは、前記複数の半導体メモリユニット中の第２の半導体メモリユニットのデータにエラーが生じた場合、前記第２の半導体メモリユニットのデータの値を除いて、前記エラー訂正情報の値と前記複数の半導体メモリユニットの少なくとも１つのデー
タの値とに基づいて前記第２の半導体メモリユニットのデータを復元するようにさらに設定されている、請求項７に記載の装置。
【請求項９】
前記コントローラは、前記第１の半導体メモリユニットのデータの値を復元するために前記エラー訂正情報の値から、前記第１の半導体メモリユニットのデータの値を除いて、
前記複数の半導体メモリユニットの少なくとも１つの値を差し引くように設定されている、請求項７に記載の装置。
【請求項１０】
前記エラー訂正情報と前記複数の記憶場所のそれぞれにおけるデータとは同数のビットを有する、請求項７に記載の装置。
【請求項１１】
前記複数の半導体メモリユニットのうちの選択された半導体メモリユニットは、前記エラー訂正を保存するための前記選択された半導体メモリユニット内の第１のアドレスに関連する選択された記憶場所を含み、前記複数の半導体メモリユニットのそれぞれは、前記選択された半導体メモリユニットを除いて、データを保存するための第２のアドレスに関連する記憶場所を含み、前記第２のアドレスは、前記選択された半導体メモリユニットを除いて、前記複数の半導体メモリユニットのそれぞれの内部にあり、前記第１および第２
のアドレスは同一のアドレス値を有する、請求項７に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願
この特許出願は、参照することにより本明細書に組み込まれた２００８年１０月２８日出願の米国特許出願第１２／２５９，９４９号から利益を受ける優先権を主張する。
【背景技術】
【０００２】
メモリユニットはコンピュータ並びにテレビ、デジタルカメラおよび携帯電話のような他の電子製品に広く使用されている。いくつかの従来のメモリユニットは、データと他の情報とを保存するための複数のメモリセルを有する半導体材料を含む。これらの装置のいくつかは、さまざまな従来の技術を用いてエラーを検出し、破損したデータを訂正するための機能を有する。いくつかの従来のメモリユニットは、記憶容量を増大させるための複数の個々の半導体メモリユニットの組織を含む。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
しかし、複数の個々の半導体メモリユニットは、一部の従来のエラー検出および訂正技術に困難をもたらす。
【図面の簡単な説明】
【０００４】
【図１】本発明のさまざまな実施形態に係る、半導体メモリユニットを含む装置のブロック図である。
【図２】本発明のさまざまな実施形態に係る、複数のメモリユニットのうちの１つに保存されたエラー訂正情報を有する半導体メモリユニットを含む装置のブロック図である。
【図３】本発明のさまざまな実施形態に係る、新しいデータで置き換えられた先のデータを有しまた新しい値をもつエラー訂正情報を有する記憶場所を備える図２の装置のブロック図である。
【図４】本発明のさまざまな実施形態に係る、図２および図３の装置に使用されるデータおよびエラー訂正情報のためのアドレス・マッピングの一例を示す図である。
【図５】本発明のさまざまな実施形態に係る、２つ以上のメモリユニットに保存されたエラー訂正情報を有する複数の半導体メモリユニットを含む装置のブロック図である。
【図６】本発明のさまざまな実施形態に係る、図５の装置に使用されるデータおよびエラー訂正情報のためのアドレス・マッピングの一例を示すチャートである。
【図７】本発明の様々な実施形態に係る、図５の装置に使用されるデータおよびエラー訂正情報のためのアドレス・マッピングの他の一例を示すチャートである。
【図８】本発明のさまざまな実施形態に係る、装置の操作の方法を示す流れ図である。
【図９】本発明さまざまな実施形態に係る、積み重ねて配列された複数のダイを有する半導体メモリユニットを含む集積回路（ＩＣ）の断面図を示す図である。
【図１０】本発明のさまざまな実施形態に係る、システムを示す図である。
【発明を実施するための形態】
【０００５】
図１は、本発明のさまざまな実施形態に係る、半導体メモリユニット１１０、１１１、１１２、１１３および１１４を含む装置１００のブロック図である。装置１００は、メモリ装置、プロセッサ組立体、コンピュータ、または他の電気装置もしくはシステムを含み、あるいはこれらに含まれる。
【０００６】
メモリユニット１１０ないし１１４は、同数のメモリ要素、例えばダイを含む。例えば、メモリユニット１１０ないし１１４のそれぞれは、３つの対応するメモリ要素、例えば３つのダイ１２０、１２１、１２２、１２３または１２４を含む。図１は、装置１００が５つのメモリユニット１１０ないし１１４と、３つのメモリ要素（例えばダイ）とを含む一例を示す。しかし、メモリユニットの数および／または各メモリユニットにおけるメモリ要素の数は変わることがある。例えば、メモリユニット１１０ないし１１４のそれぞれは、単一のメモリ要素、例えば単一のダイのみを含むことがある。
【０００７】
図１において、ダイ１２０，１２１、１２２、１２３および１２４のそれぞれは、メモリセルのような電気的要素および関連する電気回路が形成された半導体材料を含む。装置１００はメモリユニット１１０ないし１１４にデータおよび他の情報を保存する。装置１００がメモリユニット１１０ないし１１４にデータを保存するたびに、それは関連するエラー訂正情報をも保存する。装置１００は、前記データにエラーが生じた場合、メモリユニット１１０ないし１１３のデータを復元するためにエラー訂正情報を使用する。装置１００は、メモリユニット１１０ないし１１４中の１つのメモリユニット（例えば、ユニット１１４）のみを、他の全てのメモリユニット（例えば、ユニット１１０、１１１、１１２および１１３）に保存されたデータに関連するエラー訂正情報を保存するために使用する。代わりの方法では、装置１００は、全てのメモリユニット１１０ないし１１４を、これらのメモリユニットに保存されたデータに関連するエラー訂正情報を保存するために使用する。しかし、この代わりの方法では、データおよび該データに関連するエラー訂正情報は個々のメモリ要素、例えば個々のダイに保存される。
【０００８】
また、装置１００は、メモリ・コントローラ１３０と、データおよび情報をメモリユニット１１０ないし１１４におよび該メモリユニットから移動するためのパス１３５とを含む。また、メモリ・コントローラ１３０は、コンピュータ内または他の電子製品内のプロセッサのような他の外部装置と通信をするためのパス１３６を含む。
【０００９】
メモリ・コントローラ１３０とメモリユニット１１０ないし１１４とのそれぞれは、個々のＩＣパッケージ（すなわちＩＣチップ）内においてパッケージ化されている。メモリユニット１１０ないし１１４のそれぞれの内部のダイは、前記ＩＣパッケージの内部に積み重ねの状態で配列される。
【００１０】
メモリユニット１１０ないし１１４のそれぞれは、それ自体のローカル・コントローラと、それの複数のダイに保存されたデータに生じることがあるエラーを検出しかつ訂正するための複数のエラー検出および訂正要素を含む。各メモリユニットは、ハミング符号、リードソロモン符号のようなエラー訂正符号（ＥＣＣ）、または他の符号若しくは技術を含む技術を用いて、前記データに生じるエラーを検出しまた訂正する。また、メモリユニット１１０ないし１１４のそれぞれは、エラー自体の検出および訂正要素を用いてエラーを検出する選択を含むが、メモリ・コントローラ１３０が、検出されたエラーを訂正することを許すように選択することがある。例えば、エラーを有する前記メモリユニットは、メモリ・コントローラ１３０がエラーを有するデータを復元するためのデータ復元操作を実行するように、メモリ・コントローラ１３０に前記エラーを通知する。
【００１１】
図１は、簡単にするため、単一のラインを用いてパス１３５および１３６のそれぞれを示す。しかし、パス１３５および１３６のそれぞれは、多くの物理的導電線を含む。前記導電線は複数の分離グループに分割される。メモリ・コントローラ１３０は、データを移動させるための１つの分離グループの導電線（例えば、データバス）と、アドレスおよび他の情報をメモリ・コントローラ１３０におよび該メモリ・コントローラから移動させるための他の分離グループの線（例えば、アドレスおよびコントロールバス）とを介して、メモリユニット１１０ないし１１４のそれぞれに連結される。代わりに、メモリユニット
１１０ないし１１４は、各メモリユニットとメモリ・コントローラ１３０との間でデータ、アドレスおよび他の情報を移動させるための１または複数のグループの線を共有する。
【００１２】
装置１００は複数の要素を含み、また、図２ないし図９を参照して以下に説明される動作と同様のまたは同一の動作を実行するように配列される。
【００１３】
図２は、本発明のさまざまな実施形態に係る、半導体メモリユニット２１０、２１１、２１２、２１３および２１４を含む装置２００のブロック図であり、これらのメモリユニットのうちの１つにエラー訂正情報が保存される。メモリユニット２１０ないし２１４は、対応するダイ２２０、２２１、２２２、２２３および２２４を含む。各ダイは、ダイ２２０における複数の記憶場所２４０、ダイ２２１における複数の記憶場所２４１、ダイ２２２における複数の記憶場所２４２、ダイ２２３における複数の記憶場所２４３、およびダイ２２４における複数の記憶場所２４４のような多くの記憶場所を含む。これらの記憶場所のそれぞれは、データＤ１、Ｄ２、Ｄ３、Ｄ４、Ｄ５、Ｄ６、Ｄ７、Ｄ８、ＤＷ、ＤＸおよびＤＹのようなデータと、ＥＣ０、ＥＣ１およびＥＣＭのようなエラー訂正情報（ＥＣ）とを保存するための複数のセルを含む。
【００１４】
図２に示すように、装置２００はメモリユニット２１４にのみエラー訂正情報ＥＣ０ないしＥＣＭを保存し、また、他のメモリユニット２１０ないし２１３にデータを保存する。図２は、メモリユニット２１４の記憶場所に保存されたエラー訂正情報の値が他のメモリユニット２１０ないし２１３の対応する記憶場所に保存されたデータの合計に等しいことを示すためにＥＣ０＝Ｄ１＋Ｄ２＋Ｄ３＋Ｄ４、ＥＣ１＝Ｄ５＋Ｄ６＋Ｄ７＋Ｄ８、およびＥＣＭ＝ＤＷ＋ＤＸ＋ＤＹを示す。したがって、Ｎが、データを保存するために使用されるメモリユニット（例えば、ユニット２１０ないし２１３）の数を示すとすれば、装置２００はデータおよびエラー訂正情報の双方を保存するためのＮ＋１のメモリユニットを含む。図２は、データを保存するためのＮ＝４のメモリユニットと、エラー訂正情報を保存するための１つのメモリユニットとの一例を示す。したがって、図２に示された例において、データとエラー訂正情報の双方を保存するための前記メモリユニットの総数（Ｍ）は、Ｍ＝Ｎ＋１＝５である。
【００１５】
いくつかの実施形態において、ＮはＮ＝２Ｘのような２の任意の累乗に等しい。ここにおいて、Ｘは少なくとも１（Ｘ＝１、２、３または１より大きい他の整数）に等しい整数である。また、Ｘは、Ｎ＝２０＝１のように、零であってもよい。したがって、いくつかの実施形態において、Ｎ＝１である。前記メモリユニットの総数がＭ＝Ｎ＋１であるため、ＭはＮが１であるときに２の値（Ｍ＝Ｎ＋１＝１＋１＝２）を有し、あるいはＭはＮが少なくとも２であるときに２より大きい値を有する。他の実施形態において、Ｎは２の累乗でない整数である。しかし、装置１００（図１）、２００（図２）または本明細書に記載された他の装置のようなメモリユニットにおいて、複数のメモリユニットの組織化および／または複数の記憶場所のアドレス指定は、Ｎが２の累乗でないときより２の累乗に等しいとき、比較的簡単である。
【００１６】
Ｎが、装置、例えば装置２００にデータを保存するためのメモリユニットの数である場合、Ｎ個のメモリユニットに特別なメモリユニットを１つだけ加えることは、装置２００が比較的小さいサイズと、データ復元技術を含む本明細書に記載の技術を実現するための比較的低廉な方法とを有することを可能にする。
【００１７】
各記憶場所２４０、２４１、２４２、２４３または２４４は、１または複数ビットのデータを保存するための１または複数のメモリセルを含む。したがって、データＤ１、Ｄ２、Ｄ３、Ｄ４、Ｄ５、Ｄ６、Ｄ７、Ｄ８、ＤＷ、ＤＸおよびＤＹのそれぞれは、１または複数のデータビットを含む。データおよびエラー訂正情報は、同数のビットを有する。例
えば、データＤ１、Ｄ２、Ｄ３、Ｄ４およびＤ５のそれぞれが６４ビットを有する場合、ＥＣ０も６４ビットを有する。代わりに、データおよびエラー訂正情報が異なる数のビットを有するものであってもよい。
【００１８】
図２に示すように、記憶場所２４０ないし２４４は、アドレスＡ０およびアドレスＡ１ないしＡＭに関連する。アドレスＡ０およびアドレスＡ１ないしＡＭのそれぞれは、値Ａ０が値Ａ１および値ＡＭとは異なるような固有のアドレス値を有する。装置２００における完全なアドレスは、各記憶場所に関連するアドレスに加えて、メモリユニット番号とダイ番号とを含む。したがって、１つのデータ項目は、メモリユニット２１１内のダイ２２１のアドレスＡ０にある。装置２００は、エラー訂正情報と対応する合計の各データとを、複数のメモリユニット中の分離ダイに、該分離ダイのそれぞれの内部の同一アドレス値を有する記憶場所において、保存する。例えば、図２に示すように、アドレスＡ０に関連する記憶場所２４４のエラー訂正情報ＥＣ０は、ダイ２２０、２２１、２２２および２２３における同一のアドレスＡ０に保存されたデータＤ１、Ｄ２、Ｄ３およびＤ４の値の合計に等しい値を有する。図２は、一例として、１つのメモリユニット内の１つの特定のダイ（例えば、ダイ２２０）内の１つの対応する記憶場所に関連する１つのアドレス（例えば、Ａ０）を示す。しかし、アドレスは、メモリユニット内の任意のダイにおける１つの対応する記憶場所に関連する。データは、１つの特定のアドレスに対する全ての参照が常に同一のデータ項目に言及する限り、任意のアドレスを有する１つの場所に保存される。例えば、メモリユニット２１１内のダイ２２１のアドレスＡ０に対する１つの参照は、全ての参照が一致しかつ全ての読み出し操作が各アドレスに保存されていた各データに言及する限り、メモリユニット２１２内のダイ２２２のアドレスＡＭを有する１つの場所に実際に保存される。この例では、メモリユニット２１２内のダイ２２２のＡＭが参照されることができないか、またはそのアドレスがどこかほかの場所に位置付けられる。
【００１９】
図２は、メモリユニット２１０、２１１、２１２および２１３のうちの１つにおける１つの特定の記憶場所、例えばダイ２２３におけるアドレスＡＭに関連する記憶場所２４３がデータを有しない、例えば空である例を示す。したがって、対応するエラー訂正情報、例えばＥＣＭ＝ＤＷ＋ＤＸ＋ＤＹは、前記特定の記憶場所にデータの値を含まない値を有する。図２における記憶場所２４３のような「空」の記憶場所は、複数の記憶場所に初期値が与えられるように、関連したエラー訂正情報が更新されるときに使用される固有の既知の値を含む。装置２００は、同一の初期値、例えば零またはいくつかの他の値を有するエラー訂正情報を保存するために使用される記憶場所を含む、メモリユニット２１０、２１１、２１２および２１３内の全ての記憶場所を（例えば、システムの起動中に）初期化する。したがって、図２における記憶場所２４３のような、空の記憶場所は零の初期値を有する。
【００２０】
装置２００がダイ２２０、２２１、２２２および２２３にデータを保存するたびに、それはダイ２２４内の対応するエラー訂正情報をも更新する。データＤ１、Ｄ２、Ｄ３およびＤ４の任意の１つにエラーが生じた場合、装置２００は、前記エラーを有するデータを復元するために前記対応するエラー訂正情報を用いる。例えば、データＤ１が読み出される（例えば、読み込まれる）ときにデータＤ１にエラーが生じた場合、装置２００は、元のデータＤ１を復元するために対応するエラー訂正情報ＥＣ０を読み出しかつ値ＥＣ０からデータＤ２、Ｄ３およびＤ４の値を差し引く。この例では、Ｄ１＝ＥＣ０−（Ｄ２＋Ｄ３＋Ｄ４）＝（Ｄ１＋Ｄ２＋Ｄ３＋Ｄ４）−（Ｄ２＋Ｄ３＋Ｄ４）である。したがって、１つのメモリユニットの１つのダイ内の１つの特定の記憶場所に保存された１つの特定のデータにエラーが生じ、前記特定のデータが読み出されるとき、装置２００も、また、他の複数のメモリユニットから、該他のメモリユニットのそれぞれの１つのダイ内の同一アドレス値を有する記憶場所にあるデータを読み出す。次に、装置２００は、エラーを有する前記特定のデータの値を復元するために、減算のような操作を実行する。
【００２１】
図２に示すように、装置２００は、さまざまな操作の間にパス２３５を通してメモリユニット２１０ないし２１４におよびこれらからデータおよび情報を移動させるためのメモリ・コントローラ２３０を含む。メモリ・コントローラ２３０は、コンピュータまたは他の電子製品内のプロセッサのような他の外部装置と通信するためのパス２３６をも含む。装置２００は、メモリユニット２１０ないし２１４にデータを保存するための書き込み操作と、保存されたデータを読み出すための読み込み操作とを含む。
【００２２】
以下の説明は、データＤ１、Ｄ２、Ｄ３およびＤ４と、エラー訂正情報ＥＣ０＝Ｄ１＋Ｄ２＋Ｄ３＋Ｄ４とを保存するための書き込み操作の一例を示す。この例は、アドレスＡ０に関連する記憶場所２４０ないし２４４が、当初、アドレスＡ０に関連する記憶場所におけるデータの値が零に相当するような、データを有しないと仮定する。この例では、メモリ・コントローラ２３０がアドレスＡ０とデータＤ１とをダイ２２０に移動させる。ダイ２２０はアドレスＡ０に関連する記憶場所２４０にデータＤ１を保存し、また更新情報（ＵＰＤＡＴＥ）を提供する。このケースでは、ＵＰＤＡＴＥ＝Ｄ１−０＝Ｄ１である。ＵＰＤＡＴＥは、１つの特定の記憶場所に書き込まれる新データ（例えば、この例ではＤ１）の値と、前記新データが書き込まれる前の前記特定の記憶場所内の先のデータの値（例えば、この例では「０」）との間の値の差を表わす。ＵＰＤＡＴＥの値が得られた後、メモリ・コントローラ２３０は、アドレスＡ０に関連する記憶場所２４４における対応するエラー訂正情報ＥＣ０を更新する、前記更新情報をダイ２２４に移動させる。装置２００は、ＥＣ０を、この例では零（ＥＣ０＝０）のような初期値に初期化する。ＥＣ０を更新するため、ダイ２２４はＥＣ０の値にＵＰＤＡＴＥ＝Ｄ１の値を加える。したがって、データＤ１がダイ２２０に保存された後、ＥＣ０＝０＋Ｄ１＝Ｄ１がダイ２２４に保存される
【００２３】
装置２００は、データＤ２、Ｄ３およびＤ４を保存するための同様の動作を含む。例えば、メモリ・コントローラ２３０は、アドレスＡ０に関連する記憶場所２４１にデータＤ２を保存する、ダイ２２１にアドレスＡ０とデータＤ２とを移動させる。また、ダイ２２１は、それがデータＤ２を保存するときに更新情報ＵＰＤＡＴＥ＝Ｄ２−０を提供する。ダイ２２４は、ＥＣ０の値にＵＰＤＡＴＥ＝Ｄ２の値を加えることにより、アドレスＡ０に関連する記憶場所２４４におけるＥＣ０を更新する。したがって、データＤ２がダイ２２１に保存された後、ＥＣ０＝Ｄ１＋Ｄ２がダイ２２４に保存される。同様に、データＤ３がダイ２２２に保存された後にＥＣ０＝Ｄ１＋Ｄ２＋Ｄ３がダイ２２４に保存され、また、データＤ４がダイ２２３に保存された後にＥＣ０＝Ｄ１＋Ｄ２＋Ｄ３＋Ｄ４がダイ２２４に保存される。装置２００は、データＤ１、Ｄ２、Ｄ３およびＤ４のようなデータをメモリユニット２１０および２１３に１つずつ移動させる。代わりに、装置２００は、２つ以上のデータＤ１、Ｄ２、Ｄ３およびＤ４をメモリユニット２１０ないし２１３に同時に移動させる。したがって、装置２００は、対応する記憶場所にデータＤ１、Ｄ２、Ｄ３およびＤ４を１つずつ保存し、あるいは、対応する記憶場所にデータＤ１、Ｄ２、Ｄ３およびＤ４を２つ以上同時に保存する。
【００２４】
装置２００は、それがエラー訂正情報を更新するときに加算機能（例えば、Ｄ１＋Ｄ２＋Ｄ３＋Ｄ４）を実行するための複数の要素を含む。たとえば、装置２００は、ＥＣ０の値を得るために複数ビットのデータＤ１、Ｄ２、Ｄ３およびＤ４に対してビット排他的論理和演算のような前記加算機能に相当する論理演算を実行するための複数の要素を含む。したがって、ＥＣ０はＤ１（＋）Ｄ２（＋）Ｄ３（＋）Ｄ４の結果に等しい値を有し、ここにおいて（＋）は論理用語における「排他的論理和」を意味する。図２において、前記論理演算を実行する装置２００の前記要素は、メモリ・コントローラ２３０の一部またはメモリ・コントローラ２３０の全部、および／または、１または複数のメモリユニット２１０ないし２１４の少なくとも一部を含む。前記要素は、ハードウエア回路（論理ゲート
のような）、ソフトウエア、またはこれらの双方を含む。本明細書における説明は、加算または減算のような機能を実行するための一例として排他的論理和を使用する。しかし、前記排他的論理和以外の他の同等の演算が前記加算及び減算機能を実行するために使用されることは、当業者が認識していることである。
【００２５】
以下の説明は、データＤ１に生じたエラーが発見された後に元のデータＤ１を復元するために装置２００が復元操作を実行する一例を示す。この例では、メモリ・コントローラ２３０が、データＤ１がエラーを有することを示す通知を受け取る。例えば、メモリユニット２１０が、それ自体のエラー検出要素を用いて、それがメモリ・コントローラ２３０からの読み込み要求に基づいて又は他の要求に基づいてデータＤ１を読み込むとき、エラーを発見する。メモリユニット２１０はエラーを示す通知をメモリ・コントローラ２３０に送る。前記通知を受け取った後、メモリ・コントローラ２３０は復元操作を実行するためにデータＤ１に関連する対応エラー訂正情報を読み出す。この例では、データＤ１を保存する記憶場所に関連するアドレスである、アドレスＡ０に基づいて、メモリ・コントローラ２３０がダイ２２４から同一のアドレスＡ０に関連する記憶場所におけるエラー訂正情報ＥＣ０を読み出す。また、メモリ・コントローラ２３０は、他のダイ２２１、２２２および２２３のそれぞれにおけるアドレスＡ０に関連する記憶場所から他のデータを読み出す。データＤ２、Ｄ３およびＤ４を読み出した後、装置２００は、元のデータＤ１を復元するためにＥＣ０＝Ｄ１＋Ｄ２＋Ｄ３＋Ｄ４の値からデータＤ２、Ｄ３およびＤ４の値を、Ｄ１＝ＥＣ０−（Ｄ２＋Ｄ３＋Ｄ４）のように差し引く。
【００２６】
装置２００はＤ１＝ＥＣ０−（Ｄ２＋Ｄ３＋Ｄ４）を得るための操作を実行する複数の要素を含む。例えば、装置２００は、元のデータＤ１を得るために複数ビットのＥＣ０とＤ２、Ｄ３およびＤ４とに対してビット排他的論理和演算ＥＣ０（＋）Ｄ２（＋）Ｄ３（＋）Ｄ４のような減算機能に相当する論理演算を実行するための複数の要素を含む。
【００２７】
前述したように、装置２００は、データおよびエラー訂正情報を保存するために使用される記憶場所を同一の初期値、例えば零に初期化する。したがって、ＥＣ０を保存するための加算機能が、ＥＣ０＝ＥＣ０＋Ｄ１＋Ｄ２＋Ｄ３＋Ｄ４のように書き込むことができる（ＥＣ０は当初零に等しい）。Ｄ１のようなデータが復元状態におかれると、Ｄ１を復元するための前記減算機能がＤ１＝ＥＣ０−０−Ｄ２−Ｄ３−Ｄ４のように書き込まれ得る。ここにおいて、「０」は、Ｄ１の値（エラーデータ値）が前記式において合計されないことを示す。ビット単位の加算及び減算は同一（同一の排他的論理和）であるため、ＥＣ０＋Ｄ１＋Ｄ２＋Ｄ３＋Ｄ４は、ブロックされている（データ復元の間に「０」であるように設定される）Ｄ１の値を有する、ＥＣ０−０−Ｄ２−Ｄ３−Ｄ４と同一である。したがって、同一の実行はエラー訂正情報を保存するための加算機能およびデータを復元するための減算機能の双方で用いられる。
【００２８】
例えば、前記説明において、加算機能ＥＣ０＝ＥＣ０＋Ｄ１＋Ｄ２＋Ｄ３＋Ｄ４（ＥＣ０が当初零に等しいとき）を実行するためのビット排他的論理和演算Ｄ１（＋）Ｄ２（＋）Ｄ３（＋）Ｄ４は、第１のビット排他的論理和演算と称される。Ｄ１を復元するために減算操作Ｄ１＝ＥＣ０−０−Ｄ２−Ｄ３−Ｄ４を実行するためのビット排他的論理和演算ＥＣ０（＋）Ｄ２（＋）Ｄ３（＋）Ｄ４は、第２のビット排他的論理和演算と称される。前記第１および第２のビット排他的論理和演算を比較すると、前記第１のビット排他的論理和演算のデータＤ１の値が、前記第２のビット排他的論理和演算のＥＣ０の値に置き換えられている。したがって、装置２００は、いくつかの変化を有する前記第１および第２のビット排他論的論理和演算の双方を実行するために同一の要素を用いる。例えば、メモリユニット２１０ないし２１４は、ビット排他的論理和演算を実行する前記要素（例えば、論理回路）にデータとエラー訂正情報とを移動させるための共通のパスを含む。しかし、装置２００は、前記操作を実行しかつデータＤ１の移動をＥＣ０の移動に置き換える前
記要素へのデータＤ１の移動をブロックするため、前記第１のビット排他的論理和演算の間の１の位置から前記第２のビット排他的論理和演算の間の他の位置へ切り替えられる得る複数のエレメント（例えば、トランジスタのようなスイッチ）をも含む。
【００２９】
装置２００は、元のデータＤ２、Ｄ３またはＤ４の１つにエラーが生じた場合、元のデータＤ２、Ｄ３またはＤ４を復元するための同様の動作を有する。例えば、装置２００は、データＤ２にエラーが生じた場合、元のデータＤ２を復元するためにＥＣ０＝Ｄ１＋Ｄ２＋Ｄ３＋Ｄ４の値からＤ１、Ｄ３およびＤ４の値を差し引く。
【００３０】
図２を参照して前述した説明は、データおよびエラー訂正情報の双方を保存するための複数の半導体メモリユニット（Ｍ＝Ｎ＋１）の総数が２よりも大きい（Ｍ＞２）と仮定したとき、Ｎは２に等しいかまたはこれより大きいことを意味する。したがって、前述したように、前記エラー訂正情報は、２つのデータ値より大きい合計に等しい値、例えばＥＣ０＝Ｄ１＋Ｄ２＋Ｄ３＋Ｄ４を有する。しかし、メモリユニットの総数が２（Ｍ＝Ｎ＋１＝２）である実施形態において、２つのユニットのうちの１つは、前記２つのユニットのうちの他のユニットに保存されたデータに関連するエラー訂正情報のみを保存するように用いられる。これらの実施形態（Ｍ＝Ｎ＋１＝２）において、エラー訂正情報とデータとは等しい値を有する。例えば、図２の装置２００がメモリユニット２１０および２１４のみを含むようなＭ＝Ｎ＋１＝２の場合、メモリユニット２１４のＥＣ０はメモリユニット２１０のデータＤ１のみに等しい（ＥＣ０＝Ｄ１）。この例では、データ復元の間、Ｄ１はＤ１＝ＥＣ０のようなＥＣ０の値を読み出すことにより復元される。同じ例において、メモリユニット２１４のＥＣＭはメモリユニット２１０のＤＷ（ＥＣＭ＝ＤＷ）のみに等しい。データ復元の間、ＤＷは、ＤＷ＝ＥＣＭのようなＥＣＭの値を読み出すことにより復元される。２つの異なるメモリユニットに同一のデータを保存する効果は、１つのメモリユニットに保存されたデータがエラーを有する場合、他のメモリユニットに保存されたデータ（同一のデータ）がなお読み込まれ（例えば、復元され）得ることである。
【００３１】
図３は、データＤ９がダイ２２０内のアドレスＡ０に関連する記憶場所２４０における先のデータＤ１と置き換わった後、アドレスＡ０に関連する記憶場所２４４におけるエラー訂正情報ＥＣ０の他の値を示す装置２００のブロック図である。図３に示すように、ＥＣ０＝Ｄ２＋Ｄ３＋Ｄ４＋Ｄ９であり、これは、ダイ２２０、２２１、２２２および２２３内のアドレスＡ０に関連する記憶場所に保存されたデータの合計である。装置２００は、データＤ９がデータＤ１を置き換えた後、ＥＣ０＝Ｄ２＋Ｄ３＋Ｄ４＋Ｄ９であるようにＥＣ０を更新する以下の動作を行う。
【００３２】
データＤ９が保存される前、図２に示すように、ＥＣ０＝Ｄ１＋Ｄ２＋Ｄ３＋Ｄ４である。ダイ２２０が、アドレスＡ０に関連する記憶場所２４０に保存されるデータＤ９を受け取ると、それはデータＤ１を読み出し、次いで、データＤ１が読み出された後にデータＤ９を保存する。装置２００は、ＥＣ０を更新するために更新情報ＵＰＤＡＴＥのための値を取得する。この例では、ＵＰＤＡＴＥ＝Ｄ９−Ｄ１であり、これは保存されるデータＤ９と先のデータＤ１との間の差である。
【００３３】
ＥＣ０の更新の間、装置２００はＵＰＤＡＴＥ＝Ｄ９−Ｄ１の値をＥＣ０の値に加える。したがって、ＥＣ０＝ＥＣ０＋（Ｄ９−Ｄ１）＝（Ｄ１＋Ｄ２＋Ｄ３＋Ｄ４）＋（Ｄ９−Ｄ１）＝Ｄ２＋Ｄ３＋Ｄ４＋Ｄ９である。したがって、データＤ９がダイ２２０に保存された後、ＥＣ０＝Ｄ２＋Ｄ３＋Ｄ４＋Ｄ９がダイ２２４に保存（または更新）される。
【００３４】
前述したように、データＤ９がダイ２２０に保存される前にデータＤ９とデータＤ１との間の差（Ｄ９−Ｄ１）よりＥＣ０を更新することに代えて、Ｄ９がダイ２２０に保存された後にデータＤ９、データＤ２、データＤ３およびデータＤ４を用いてＥＣ０が計算さ
れる。
【００３５】
装置２００は、ＵＰＤＡＴＥ＝Ｄ９−Ｄ１の結果を得るためにビット排他的論理和演算のような論理操作を行うための複数の要素を含む。例えば、装置２００は、ＵＰＤＡＴＥの値を得るために複数ビットのデータＤ９およびデータＤ１に対するビット排他的論理和演算、Ｄ９（＋）Ｄ１を実行するための複数の要素を含む。したがって、差ＵＰＤＡＴＥ＝Ｄ９−Ｄ１の計算は、複数ビットのデータＤ９およびデータＤ１に対するビット排他的論理和演算により行われる。また、装置２００は、ＥＣ０＝ＥＣ０＋ＵＰＤＡＴＥを得るための操作を実行するための複数の要素を含む。例えば、装置２００はＥＣ０を更新するために複数ビットのＥＣ０と複数ビットのＵＰＤＡＴＥとに対するビット排他的論理和演算ＥＣ０（＋）ＵＰＤＡＴＥのような論理操作を実行するための複数の要素を含む。
【００３６】
前記した例は、装置２００が、情報の２つの移動に代えてダイ２２４に対する情報（Ｄ９−Ｄ１）の１つの移動を用いてＥＣ０を更新することを示す。例えば、ＥＣ０＝ＥＣ０−Ｄ１（またはＤ１＋Ｄ２＋Ｄ３＋Ｄ４−Ｄ１＝Ｄ２＋Ｄ３＋Ｄ４）を得るための操作を実行するためにダイ２２４にデータＤ１（Ｄ１が読み出された後）を送るための第１の移動を用い、次いでＥＣ０＝ＥＣ０＋Ｄ９＝Ｄ２＋Ｄ３＋Ｄ４＋Ｄ９を実行するためにダイ２２４にデータＤ９を送るための第２の移動を用いることに代えて、装置２００は、同一の結果すなわちＥＣ０＝（Ｄ１＋Ｄ２＋Ｄ３＋Ｄ４）＋（Ｄ９−Ｄ１）＝Ｄ２＋Ｄ３＋Ｄ４＋Ｄ９を達成してＥＣ０を更新するためにダイ２２４に更新情報（ＵＰＤＡＴＥ＝Ｄ９−Ｄ１）を送るための１つの移動のみを用いる。
【００３７】
装置２００は、特定のデータにエラーが生じた場合、前記特定のデータの元の値を復元するために図２を参照して前述した動作と同様の動作を用いる。例えば、データＤ９にエラーが生じた場合、装置２００は元のデータＤ９を復元するために復元操作を実行する。この例では、Ｄ９＝ＥＣ０−（Ｄ２＋Ｄ３＋Ｄ４）＝（Ｄ２＋Ｄ３＋Ｄ４＋Ｄ９）−（Ｄ２＋Ｄ３＋Ｄ４）またはＤ９＝ＥＣ０（＋）Ｄ２（＋）Ｄ３（＋）Ｄ４である。
【００３８】
図４は、図２および図３の装置２００に使用されるデータおよびエラー訂正情報のためのアドレス・マッピングの一例を示す図である。図４は、アドレスビットＢ０、Ｂ１、Ｂ２およびＢ３ないしＢＺを有するアドレス４５０を示す。装置２００は、メモリユニット２１０、２１１、２１２および２１３中のどのユニットがデータ（例えば、図２のＤ１）を保存するために選択されるかを特定するためにアドレス４５０のビットＢ０およびＢ１を有する一部分４５１を用いる。図４において、例えば、ビットＢ０およびＢ１が００、０１または１１の２進値を有するとき、装置２００は、データを、メモリユニット２１０、２１１、２１２および２１３のそれぞれに、アドレス４５０の値に基づいて記憶場所に保存する。また、装置２００は、メモリユニット２１４内の同一アドレスに関連する記憶場所にエラー訂正情報を保存する。装置２００はエラー訂正情報ＥＣを保存するために１つのメモリユニットのみを用いるため、装置２００は、それが他のメモリユニット（例えば、装置２１０、２１１、２１２および２１３）にデータを保存するたびに、前記エラー訂正情報を保存するための１つのメモリユニット（例えば、図４に示すようなユニット２１４）を指定する。装置２００は、データおよびエラー訂正情報を保存するためにメモリユニット２１０ないし１４内の記憶場所を選択すべくアドレス４５０のビットＢ２およびＢ３ないしＢＺを用いる。
【００３９】
図５は、本発明のさまざまな実施形態に係る、半導体メモリユニット５１０、５１１、５１２、５１３および５１４を含む装置５００のブロック図であり、２つ以上のメモリユニットに保存されたエラー訂正情報を有する。図５に示すように、装置５００は、２つ以上のメモリユニット５１０ないし５１４にエラー訂正情報ＥＣ０およびＥＣ１ないしＥＣＭを保存する。例えば、装置５００は、メモリユニット５１０内のダイ５２０にＥＣ０＝
Ｄ１＋Ｄ２＋Ｄ３＋Ｄ４およびＥＣＭ＝ＤＷ＋ＤＸ＋ＤＹを保存し、また、メモリユニット５１１内のダイ５２１にＥＣ1＝Ｄ５＋Ｄ６＋Ｄ７＋Ｄ８を保存する。図５は、装置５
００が２つのメモリユニット５１０および５１１に訂正情報ＥＣ０ないしＥＣＭを保存する例を示す。しかし、装置５００は、３つ以上のメモリユニットにエラー訂正情報ＥＣ０ないしＥＣＭを保存することがある。
【００４０】
図５に示すように、装置５００は、また、デバイス５２０ないし５２４内のさまざまな記憶場所に、データＤ１、Ｄ２、Ｄ３、Ｄ４、Ｄ５、Ｄ５、Ｄ６、Ｄ７、Ｄ８、ＤＷ、ＤＸおよびＤＹのようなデータを保存する。また、装置５００は、ダイ５２０ないし５２４の対応する記憶場所に関連するアドレスＡ０およびＡ１ないしＡＭを含む。図５は、一例として、１つのメモリユニット内の１つの特定のダイ（例えば、ダイ５２０）の１つの対応する記憶場所に関連する１つのアドレス（例えば、Ａ０）を示す。しかし、前記アドレスは前記メモリユニット内の任意のダイの１つの対応する記憶場所に関連する。また、図５は、メモリユニット５１０、５１１、５１２および５１３のうちの１つにおける１つの特定の記憶場所、例えばダイ５２４内のアドレスＡＭに関連する記憶場所５４４が保存データを有しない、例えば空である例を示す。したがって、対応するエラー訂正情報、例えばＥＣＭ＝ＤＷ＋ＤＸ＋ＤＹは、前記特定の記憶場所のデータの値を含まない値を有する。いくつかの実施形態において、装置５００は、同一の初期値、例えば零またはいくつかの他の値を有するメモリユニット５１０ないし５１４内の全ての記憶場所（エラー訂正情報を保存するために用いられる記憶場所を含む）を初期化する。
【００４１】
装置５００は、データおよび情報を、パス５３５を通して、メモリユニット５１０ないし５１４におよび該メモリユニットから移動させるためのメモリ・コントローラ５３０を含む。また、メモリ・コントローラ５３０は、コンピュータまたは他の電子製品内のプロセッサのような他の外部装置と通信するためのパス５３６を含む。装置５００がメモリユニット５１０ないし５１４中の１つのメモリユニットにデータを保存するたびに、装置５００は他のメモリユニット内の対応するエラー訂正情報を更新する。装置５００は、特定のデータにエラーが生じた場合、前記特定のデータの元の値を復元するためにエラー訂正情報ＥＣ０ないしＥＣＭを用いる。装置５００は、データを復元するための図１および図３を参照して説明した動作と同様のまたは同一の動作を含む。
【００４２】
図６は、図５の装置５００に使用されるデータおよびエラー訂正情報のためのアドレス・マッピングの一例を示すチャートである。図６は、アドレスビットＢ０、Ｂ１、Ｂ２およびＢ３ないしＢＺを有するアドレス６５０を示す。装置５００は、メモリユニット５１０、５１１、５１２および５１３中のどのユニットがエラー訂正情報を保存するために選択されるかを特定するためにビットＢ２およびＢ３を含むアドレス６５０の一部分６５２を用いる。例えば、図６に示すように、ビットＢ２およびＢ３が００、０１、１０または１１の２進値を有するとき、装置５００は、エラー訂正情報ＥＣを、メモリユニット５１０、５１１、５１２および５１３にそれぞれ保存する。
【００４３】
装置５００は、ビットＢ２およびＢ３により表わされた値がビットＢ０およびＢ１により表わされた値に等しいかまたは等しくないかに応じて、メモリユニット５１０、５１１、５１２および５１３中のどの装置がデータを保存するために選択されるかを特定するために一部分６５１（ビットＢ０およびＢ１を含む）を一部分６５２（ビットＢ２およびＢ３を含む）と組み合わせて用いる。
【００４４】
ビットＢ０およびＢ１により表わされた値がビットＢ２およびＢ３により表わされた値に等しい場合、装置５００はデータをメモリユニット５１４に保存する。図６に示すように、行６６１、６６２、６６３および６６４において、ビットＢ０およびＢ１の値がビットＢ２およびＢ３の値に等しい（００＝００、０１＝０１、１０＝１０、および１１＝１
１）。したがって、図６に示すように、メモリユニット５１４はデータを保存するために用いられる。
【００４５】
ビットＢ０およびＢ１により表わされた値がビットＢ２およびＢ３により表わされた値に等しくない場合、装置５００は、ビットＢ０およびＢ１の値に基づいてデータをメモリユニットに保存する。図６に示すように、ビットＢ０およびＢ１が００、０１、１０または１１の２進値を有しかつビットＢ２およびＢ３の値に等しくない場合、装置５００は、ビットＢ０およびＢ１の値００、０１、１０または１１に基づいてメモリユニット５１０、５１１、５１２および５１３にそれぞれデータを保存する。
【００４６】
前述の説明において、装置５００は、メモリユニット５１０、５１１、５１２、５１３および５１４中のどの装置がデータを保存し、またどの装置がエラー訂正情報を保存するために選択されるかを特定するためにビットＢ０およびＢ１の値とビットＢ２およびＢ３の値とを用いる。装置５００は、データまたはエラー訂正情報を保存するための特定されたメモリユニットの記憶場所を選択するためにアドレス６５０のビットＢ２およびＢ３ないしＢＺの値を用いる。
【００４７】
図６は、一例として、アドレス６５０のビットＢ０、Ｂ１、Ｂ２およびＢ３を含む一部分６５１および６５２を示す。しかし、一部分６５１および６５２のそれぞれは、アドレス６５０の異なる一部分の異なるビットを含んでもよい。
【００４８】
図７は、図５の装置５００に使用されるデータおよびエラー訂正情報のためのアドレス・マッピングの他の一例を示すチャートである。図７は、アドレスビットＢ０、Ｂ１、Ｂ２およびＢ３ないしＢＺを有するアドレス７５０を示す。
【００４９】
装置５００は、メモリユニット５１０、５１１、５１２および５１３中のどのユニットがデータおよびエラー訂正情報を保存するために選択されるかを特定するためにビットＢ２およびＢ３を有する一部分７５２を用いる。例えば、図７に示すように、ビットＢ２およびＢ３が００、０１、１０または１１の２進値を有するとき、装置５００は、エラー訂正情報を、メモリユニット５１４、５１０、５１１および５１２にそれぞれ保存する。
【００５０】
装置５００は、メモリユニット５１０、５１１、５１２および５１３中のどのユニットがデータを保存するために選択されるかを特定するために一部分７５１（ビットＢ０およびＢ１を含む）を一部分７５２（ビットＢ２およびＢ３を含む）と組み合わせて用いる。例えば、図５に示すように、装置５００は、データを保存するために選択されるメモリユニットを特定するためにＮ＋１を法とする操作（Ｂ１Ｂ０＋（Ｂ３Ｂ２））により計算される値を用い、ここにおいて、Ｂ０Ｂ１はビットＢ０よびＢ１の値であり、Ｂ３Ｂ２はビットＢ２よびＢ３の値であり、また、Ｎ＋１は装置５００のメモリユニットの総数に等しい。
【００５１】
前述の説明において、装置７００は、メモリユニット７１０、７１１、７１２、７１３および７１４中のどのユニットがデータを保存し、またどのユニットがエラー訂正情報を保存するかを特定するためにビットＢ０およびＢ１並びにビットＢ２およびＢ３の値を用いる。装置７００は、データまたはエラー訂正情報を保存するための特定されたメモリユニットの記憶場所を選択するためにアドレス６５０のビットＢ２およびＢ３ないしＢＺの値を用いる。
【００５２】
装置５００は、メモリユニット５１０ないし５１４にデータおよびエラー訂正情報を保存するための記憶場所を選択するためにアドレス７５０のビットＢ２およびＢ３ないしＢＺの値を用いる。
【００５３】
図７は、一例として、アドレス７５０のビットＢ０、Ｂ１、Ｂ２およびＢ３を含む一部分６５１および７５２を示す。しかし、一部分７５１および７５２のそれぞれは、アドレス７５０の異なる一部分の異なるビットを含んでもよい。
【００５４】
図５ないし図７を参照した前述の説明は、データおよびエラー訂正情報の双方を保存するための半導体メモリユニット（Ｍ＝Ｎ＋１）の総数が２よりも大きい（Ｍ＞２）ことを仮定し、Ｎが２に等しいかまたはこれより大きいことを意味する。しかし、メモリユニットの総数が２（Ｍ＝Ｎ＋１＝２）である実施形態においては、前記エラー訂正情報および前記データは等しい値を有する。例えば、図５の装置５００がメモリユニット５１０および５１１のみを含むようなＭ＝Ｎ＋１＝２の場合、メモリユニット５１０のＥＣ０はメモリユニット５１１のデータＤ２のみに等しい（ＥＣ０＝Ｄ２）。この例では、データ復元の間、Ｄ２はＤ２＝ＥＣ０のようなＥＣ０の値を読み出すことにより復元される。同じ例において、メモリユニット５１１のＥＣ１はメモリユニット５１０のＤ５（ＥＣ１＝Ｄ５）のみに等しい。データ復元の間、Ｄ５は、Ｄ５＝ＥＣ１のようなＥＣ１の値を読み出すことにより読み出される。
【００５５】
さらに、図５の装置５００におけるメモリユニットの総数が２（Ｍ＝Ｎ＋１＝２）である実施形態において、エラー訂正情報およびデータはある所定の条件に基づいて２つのメモリユニットに分離して保存される。例えば、図５において、保存されるデータ（例えば、Ｄ２）のアドレスが１つの条件を満足する場合、前記データは１つの装置（例えば、装置５１１）に保存され、また、エラー訂正情報（例えば、ＥＣ０＝Ｄ２）は他の装置（例えば、装置５１０）に保存される。前記条件は、前記データのアドレスの１つの選択されたビット（または複数のビット）の値、またはいくつかの他の条件に基づく。例えば、図５において（Ｍ＝２の場合）、データＤ２のアドレスは偶数値を有する。したがって、Ｄ２はメモリユニット５１１に保存され、また、エラー訂正情報ＥＣ０＝Ｄ２はメモリユニット５１０に保存される。他の実施形態では、図５において（Ｍ＝２の場合）、データ５のアドレスは奇数値を有する。したがって、Ｄ５はメモリユニット５１０に保存され、また、エラー訂正情報ＥＣ１＝Ｄ５はメモリユニット５１１に保存される。
【００５６】
図８は、本発明のさまざまな実施形態に係る、メモリユニットの操作方法を示すフローチャートである。方法８００は、図１の装置１００、図２の装置２００または図５の装置５００のような装置に用いられる。したがって、方法８００で使用される前記装置の特徴は、図１の装置１００、図２の装置２００または図５の装置５００の特徴を含む。
【００５７】
方法８００の動作８１０は、第１のメモリユニット内の第１のダイに第１のデータを保存することを含む。動作８２０は、第２のメモリユニット内の第２のダイに第２のデータを保存することを含む。動作８３０は、前記第１のデータおよび前記第２のデータの値の一部に基づく値を有するエラー訂正情報を保存することを含む。動作８４０は、選択されたデータにエラーが生じた場合、エラー訂正情報の値と前記第２の値とに基づいて前記第１のデータを復元することを含む。方法８００は、図１ないし図７を参照して前述した動作と同様のまたは同一の他の動作を含むことがある。本明細書に記載されたさまざまな実施形態は、図８に示す動作よりも多いか、あるいは少ない動作を有する。
【００５８】
図９は、本発明のさまざまな実施形態に係る、積み重ね状態９５０で配列された複数のダイ９２０を有する半導体メモリユニット９１０を含むＩＣパッケージ９００の部分断面を示す。ＩＣパッケージ９００はＩＣチップとも呼ばれ、ＩＣチップ９００の内部にダイ９２０を含むメモリユニット９１０が存在する。メモリユニット９１０は、図１のメモリユニット１１０ないし１１４のうちの１つ、図２および図３のメモリユニット２１０ないし２１４のうちの１つ、または図５のメモリユニット５１０ないし５１４のうちの１つと
同様であるかまたは同一である１つのメモリユニットを含む。したがって、図９におけるダイ９２０のそれぞれは図１ないし図８を参照して前述したデータまたはエラー訂正情報を保存するための複数の回路要素を有する電気回路を含む。簡単にするため、図９は、ダイ９２０内の電気回路および回路要素の詳細を省略している。
【００５９】
ＩＣパッケージ９００は、メモリユニット９１０に結合されたサポート９４０を含む。サポート９４０は、セラミック又は有機のパッケージ基板を含む。図１、図３および図５のそれぞれのメモリ・コントローラ１３０、２３０および５３０と同様であるかまたは同一であるメモリ・コントローラのような他の装置とメモリユニット９１０とが通信をすることができるようにするため、複数の接点９３５がサポート９４０に結合されている。図９において、ＩＣパッケージ９００は、少なくともサポート９４０の一部と内部９６２のメモリユニット９１０とを覆う、囲い９６０を含む。内部９６２は、充填剤、気体、液体またはこれらの組み合わせにより満たされる。前記充填剤は高分子材料を含む。
【００６０】
図９に示すように、メモリユニット９１０は、ダイ９２０を通り抜ける多数の導電性パス９７１、９７２、９７３、９７４および９７５を含む。導電性パス９７１ないし９７５のそれぞれは、ダイ９２０のそれぞれの少なくとも一部または全体を経て延在するビア９７８の内部に導電性材料９７７を含む。導電性パス９７１ないし９７５は、ダイ９２０間に形成された接合部９８１を含む。接合部９８１は、半田、銅または導電性接着剤を含む。メモリユニット９１０は、「フリップチップ」のような技術または他の技術を用いて形成される。
【００６１】
図１０は、本発明のさまざまな実施形態に係る、システム１０００を示す。システム１０００は、プロセッサ１００２と、メモリ装置１００３と、画像センサ・デバイス１０２０と、システム・メモリ・コントローラ１０３２と、グラフィックス・コントローラ１０４０と、入出力（Ｉ／Ｏ）コントローラ１０５０と、ディスプレイ１０５２と、キーボード１０５４と、ポインティング・デバイス１０５６と、周辺機器１０５８と、システム送受信機１０５９と、システム１０００へおよびシステム１０００から情報を無線で送受信するためのアンテナ１０７０と、システム１０００の前記複数の要素間で情報を移動させるためのバス１０６１と、システム１０００の前記要素のいくつかが取り付けられる回路基板１００５（例えば、マザーボード）とを含む。システム１０００は、図１０に示された前記要素のいくつかを省略している。
【００６２】
プロセッサ１００２は、汎用プロセッサ、特定用途向け集積回路（ＡＳＩＣ）、または他のタイプのプロセッサを含む。プロセッサ１００２は、シングルコア・プロセッサまたはマルチコア・プロセッサを含む。プロセッサ１００２は、情報を処理するための１つまたは複数のプログラミング・コマンドを実行する。前記情報は、メモリ装置１００３または画像センサ・デバイス１０２０のようなシステム１０００の他の要素により提供される情報を含む。画像センサ・デバイス１０２０は、相補型金属酸化膜半導体（ＣＭＯＳ）画素配列を有するＣＭＯＳ画像センサまたは電荷結合素子（ＣＣＤ）画素配列を有するＣＣＤ画像センサを含む。
【００６３】
メモリ装置１００３は、図１の装置１００、図２または図３の装置２００、および図５の装置５００のさまざまな実施形態を含む。例えば、メモリ装置１００３は、メモリユニット１０１０、１０１１及び１０１２と、デバイス・メモリ・コントローラ１０３０とを含む。メモリユニット１０１０、１０１１及び１０１２は、図９のＩＣパッケージ９００のような分離ＩＣパッケージ内に封入されている。図１０は、一例として、３つのメモリユニット１０１０、１０１１及び１０１２を有するメモリ装置１００３を示す。しかし、メモリ装置１００３のメモリユニットの数は変化してもよい。図１０は、メモリ・コントローラ１０３０とメモリユニット１０１０、１０１１及び１０１２とが同一の基板１００
７（例えば、デュアル・インライン・メモリ・モジュール「ＤＩＭＭ」の基板）に配置されている一例を示す。しかし、メモリ・コントローラ１０３０とメモリユニット１０１０、１０１１及び１０１２とは、異なる基板に、例えば基板１００７と回路基板１００５とに配置されても、あるいはシステム１０００内の異なる場所に散在されてもよい。
【００６４】
メモリ装置１００３は、揮発性メモリ装置、不揮発性メモリ装置、またはこれらの組み合わせを含む。例えば、メモリ装置１００３は、ダイナミック・ランダム・アクセス・メモリ（ＤＲＡＭ）装置、スタティック・ランダム・アクセス・メモリ（ＳＲＡＭ）装置、フラッシュメモリ装置、相変化メモリ装置、またはこれらのメモリ装置の組み合わせを含む。
【００６５】
装置（例えば、装置１００、２００、５００）およびシステム（例えば、システム１０００）の図は、さまざまな実施形態の構造の一般的理解の提供を意図するものであり、本明細書に記載された構造を用いる装置およびシステムの全ての要素と特徴との完全な記述の提供を意図するものではない。
【００６６】
前述した任意の要素は、ソフトウエアを介したシミュレーションを含む、さまざまな方法で実施に供される。したがって、前述した（例えば、装置１００、２００、５００）およびシステム（例えば、システム１０００）は、全て、本明細書において「複数のモジュール」（または「単一のモジュール」）として特徴付けられる。このようなモジュールは、装置（例えば、装置１００、２００および５００）およびシステム（例えば、システム１０００）の設計者により所望されるように、またさまざまな実施形態の特定の実施に適するように、ハードウエア回路、シングルおよび／またはマルチプロセッサ回路、メモリ回路、ソフトウエア・プログラム・モジュールおよびオブジェクトおよび／またはファームウエア、およびこれらの組み合わせを含む。例えば、このようなモジュールは、ソフトウエア電気信号シミュレーションパッケージ、電力の使用および配分シミュレーションパッケージ、キャパシタンス‐インダクタンス・シミュレーションパッケージ、電力／熱放散シミュレーションパッケージ、信号送受信シミュレーションパッケージ、および／または、さまざまな可能性のある実施形態の実施を実行しまたはシミュレートするために用いられるソフトウエアおよびハードウエアの組み合わせのようなシステム・オペレーション・シミュレーション・パッケージに含まれる。
【００６７】
さまざまな実施形態の前記装置およびシステムは、高速コンピュータに使用される電子回路、通信および信号処理回路、シングルまたはマルチ・プロセッサ・モジュール、シングルまたはマルチ組み込みプロセッサ、マルチコア・プロセッサ、データスイッチ、および、多層、マルチ・チップ・モジュールを含む特定用途向けモジュールを含み、あるいはこれらに含まれる。このような装置およびシステムは、さらに、テレビ、携帯電話、パーソナル・コンピュータ（例えば、ラップトップ型コンピュータ、デスクトップ型コンピュータ、ハンドヘルド・コンピュータ、タブレット型コンピュータ等）、ワークステーション、ラジオ、ビデオプレーヤ、オーディオプレーヤ（例えば、ＭＰ３（動画専門家集団、オーディオ・レイヤー・スリー）プレーヤ）、車両、医療機器（心拍数モニタ、血圧計等）、セットトップボックス等のようなさまざまな電子システム内にサブコンポーネントとして含まれる。
【００６８】
本明細書に記載された１または複数の実施形態は、第１の半導体メモリユニットにデータを保存し、また、前記データを復元するために第２の半導体メモリユニットにエラー訂正情報を保存するための装置および方法を含む。前記エラー訂正情報は、前記第１のメモリユニットに保存された少なくとも前記データの値に等しい値を有する。追加の装置、システムおよび方法を含む他の実施形態は、図１ないし図１０を参照して前述した。
【００６９】
いくつかの実施形態において、装置１００は、図１に示された設定と異なる代わりに設定を有する。例えば、第１の代わりの設定では、装置１００はユニット１１１ないし１１４を省略し、残りのユニット１１０において、各ダイ１２０それ自体が、図１、図２、図３および図５を参照して前述したメモリユニットのような本明細書に記載されたメモリユニットの機能と同様のまたは同一の機能を有する半導体メモリユニット１２０を形成する。したがって、図１の装置１００の第１の代わりの設定では、複数のダイ１２０のうちの１つ（この代わりの設定におけるメモリユニット）のみが、図２および図３の装置２００のメモリユニットにエラー訂正情報およびデータを保存するように、他の複数のダイ１２０に保存された全てのデータに関連するエラー訂正情報を保存する。前記第１の代わりの設定において、エラー訂正情報を保存する１つのみのダイ１２０に代えて、複数のダイ１２０のそれぞれも、図５の装置５００の複数のメモリユニットにエラー訂正情報およびデータを保存するように、データと、他の複数のダイに保存されるデータに関連するエラー訂正情報とを保存する。前記第１の代わりの設定において、図１の装置１００の複数のダイ１２０は、図９のＩＣパッケージと同様、複数の分離ＩＣパッケージまたは同一のＩＣパッケージ内に封入される。
【００７０】
図１の装置１００の第２の代わりの設定において、半導体メモリユニット１１０ないし１４は、異なる複数のユニットからの複数の要素（例えば、複数のダイ）が半導体メモリユニットを形成するように、異なる組織を有する。例えば、図１の複数のダイの最上方の横列において、ダイ１２０、ダイ１２１、ダイ１２２およびダイ１２４は、装置１００の第１の半導体メモリユニットを形成する。装置１００の複数のダイの他の横列において、ダイ１２０、ダイ１２１、ダイ１２２およびダイ１２４は第２の半導体メモリユニットを形成する。同様に、装置１００の他の横列の複数のダイは、装置１００の他の半導体メモリユニットを形成する。前記第２の代わりの設定において、前記半導体メモリユニットの機能は、図１、図２、図３および図５を参照して説明されたメモリユニットのように、本明細書に記載されたメモリユニットのそれと同様であるかまたは同一である。
【００７１】
さらなる複数の実施形態において、図９のＩＣパッケージ９００の複数のダイ９２０は複数の半導体メモリユニットを形成する。例えば、各ダイ９２０の第１の部分がＩＣパッケージ９００の第１の半導体メモリユニットを形成するように組み合わされ、各ダイ９２０の第２の部分がＩＣパッケージ９００の第２の半導体メモリユニットを形成するように組み合わされる。同様に、各ダイの他の部分がＩＣパッケージ９００の他の半導体メモリユニットを形成するように組み合わされる。ＩＣパッケージ９００内の複数の分離ダイの異なる部分から形成された前記半導体メモリユニットの機能は、図１、図２、図３および図５を参照して前述したメモリユニットのような、本明細書に記載されたメモリユニットのそれらと同様であるかまたは同一である。複数のダイ９２０が各ダイの異なる部分から複数の半導体メモリユニットを形成するとき、複数のダイ９２０は、ＩＣパッケージ９００のような、同一のＩＣパッケージ内に封入されなければならないのではなく、複数のダイ９２０は複数の分離ＩＣパッケージ９００内に封入される。
【００７２】
前記した説明および図面は、当業者が本発明の実施形態を実施することを可能にするために本発明のいくつかの実施形態を示す。他の実施形態は、構造的、論理的、電気的、プロセスおよび他の変更を包含する。図面では、同様の特徴または同様の符号がいくつかの図を通して実質的に同様の特徴を説明している。複数の例が可能なバリエーションの典型である。いくつかの実施形態の一部および特徴は、他の実施形態のそれらに含まれ、または代替される。他の多くの実施形態は、前述の説明を読みまた理解することにより当業者に明らかであろう。
【００７３】
読み手が技術的開示の本質及び骨子を迅速に解明することを可能にする概要を要求する連邦規則集セクション１．７２（ｂ）に従って、要約が提供される。この要約は、それが
特許請求の範囲を解釈しまたは限定するように使用されないという了解をもって提出される。
【図１】
2015201221.tif 000003
【図２】
2015201221.tif 000004
【図３】
2015201221.tif 000005
【図４】
2015201221.tif 000006
【図５】
2015201221.tif 000007
【図６】
2015201221.tif 000008
【図７】
2015201221.tif 000009
【図８】
2015201221.tif 000010
【図９】
2015201221.tif 000011
【図１０】
2015201221.tif 000012