(57)【特許請求の範囲】
【請求項１】
不等式（２ｗ＋ｔ＋１）≦ｎを満足する一定重みコードワードの集合を割り当てるステップを含んでおり、ここで、ｗが該コードワードの重みであり、ｎがアドレスラインの数であり、ｔが欠陥アドレスラインの最大許容可能数であり、いずれの２つのメモリラインにも同じアドレス構成が割当てられず、いずれの２つのアドレスラインにも同じアドレス構成が割当てられておらず、いずれのメモリラインにおいても大型のアドレス素子が隣接していないように、前記メモリラインおよび前記アドレスラインのアドレス構成をアドレス要素の集合に割り当てる方法。
【請求項２】
アドレス構成が、前記集合からランダムに選択されて前記アドレス要素に割り当てられている請求項１に記載の方法。
【請求項３】
不等式（２ｗ＋ｔ＋１）≦ｎを満足する一定重みコードワードの集合からアドレス構成が取得されるよう、固体メモリデバイス用のアドレス構成を形成するステップであって、ここで、ｗが該コードワードの重みであり、ｎがアドレスラインの数であり、ｔが欠陥アドレスラインの最大許容可能数であり、
各アドレス構成がメモリラインに対応し、メモリラインのアドレス要素が対応する前記アドレス構成に従って形成されるように、メモリラインと該メモリラインに接続されたアドレス要素とを形成するステップであって、いずれの２つの前記メモリラインにも同じアドレス構成が割当てられず、いずれの２つの前記アドレスラインにも同じアドレス構成が割当てられていないものであり、いずれのメモリラインにおいても大型のアドレス素子が隣接していないように、アドレス要素を形成するステップと
を含んでなる方法。
【請求項４】
アドレス構成が、前記集合からランダムに選択されて前記アドレス要素に割り当てられている請求項３に記載の方法。
【請求項５】
前記アドレス要素の通電能力が、前記コードワードのビット値によって決定される請求項３に記載の方法。
【請求項６】
前記アドレス要素に電流を与えることによって前記アドレス要素をプログラミングするステップをさらに含み、該電流によって、いくつかの電荷運搬能力の低い要素に抵抗状態を変化させ、電荷運搬能力の高い要素を不変のままにする請求項５に記載のアドレスロジック。
【請求項７】
前記高通電能力素子は、前記低通電能力素子より３倍大きい請求項５に記載のアドレスロジック。
【請求項８】
前記アドレス素子は間隔が空けられた２つの集合へと分離され、各集合が前記コードワードの前記第１のコードワードビット値と前記第２のコードワードビット値とに対応するアドレス素子を有する請求項５に記載のアドレスロジック。
【請求項９】
前記高通電能力素子が、前記低通電能力素子より５倍大きい請求項８に記載のアドレスロジック。
【請求項１０】
不等式（２ｗ＋ｔ＋１）≦ｎを満足する一定重みコードワードの集合に従って構成された複数のアドレス素子を含み、ここで、ｗがコードワードの重みであり、ｎがアドレスラインの数であり、ｔが欠陥アドレスラインの最大許容可能数であり、前記アドレス素子は、いずれの２つのメモリラインにも同じアドレス構成が割当てられず、いずれの２つのアドレスラインにも同じアドレス構成が割当てられておらず、いずれのメモリラインにおいても大型のアドレス素子が隣接していないものである固体メモリデバイス用アドレスロジック。
【請求項１１】
前記アドレス素子がダイオードを含む請求項１０に記載のアドレスロジック。
【請求項１２】
プログラミング後に、前記アドレス素子がワイヤード組合せロジックを提供する請求項１０に記載のアドレスロジック。
【請求項１３】
プログラミング後に、不変のアドレス素子が第１のコードワードビット値に対応し、可変のアドレス素子が第２のコードワードビット値に対応する請求項１０に記載のアドレスロジック。
【請求項１４】
プログラミング前に、第１のコードワードビット値に対応するアドレス素子が、第２のコードワードビット値に対応するアドレス素子より大きい通電能力を有する請求項１０に記載のアドレスロジック。
【請求項１５】
前記第１のコードワードビット値に対応する前記アドレス素子は、前記第２のコードワードビット値に対応する前記アドレス素子より３倍大きい請求項１４に記載のアドレスロジック。
【請求項１６】
前記アドレス素子は間隔が空けられた２つの集合へと分離され、各集合が前記コードワードの前記第１の集合と第２の集合とに対応するアドレス素子を有する請求項１４に記載のアドレスロジック。
【請求項１７】
前記第１のビット値に対応する前記素子が、前記第２のビット値に対応する前記素子より５倍大きい請求項１６に記載のアドレスロジック。
【請求項１８】
各レベルが、
メインメモリと、
ｗがコードワードの重みであり、ｎがアドレスラインの数であり、ｔが欠陥アドレスラインの最大許容可能数である不等式（２ｗ＋ｔ＋１）≦ｎを満足する一定重みコードワードの集合に従って構成され、前記メインメモリ用のいずれの２つのメモリラインにも同じアドレス構成が割当てられておらず、いずれの２つの前記アドレスラインにも同じアドレス構成が割当てられていないものであり、いずれのメモリラインにおいても大型のアドレス素子が隣接していないものである、前記メインメモリ用のアドレスロジックと
を含んでなる、少なくとも１つのレベルを含む固体メモリデバイス。
【請求項１９】
前記アドレス素子がダイオードを含む請求項１８に記載の固体メモリデバイス。
【請求項２０】
プログラミング後に、前記アドレス素子がワイヤード組合せロジックを提供する請求項１８に記載の固体メモリデバイス。
【請求項２１】
プログラミング後に、不変のアドレス素子が第１のコードワードビット値に対応し、可変のアドレス素子が第２のコードワードビット値に対応する請求項１８に記載の固体メモリデバイス。
【請求項２２】
プログラミング前に、第１のコードワードビット値に対応するアドレス素子が、第２のコードワードビット値に対応するアドレス素子より大きい通電能力を有する請求項１８に記載の固体メモリデバイス。
【請求項２３】
前記第１のコードワードビット値に対応する前記アドレス素子が、前記第２のコードワードビット値に対応する前記アドレス素子より３倍大きい請求項１８に記載の固体メモリデバイス。
【請求項２４】
前記アドレス素子は間隔が空けられた２つの集合へと分離され、各集合が前記コードワードの前記第１の集合と第２の集合とに対応するアドレス素子を有する請求項１８に記載の固体メモリデバイス。
【請求項２５】
前記第１のビット値に対応する前記素子は、前記第２のビット値に対応する前記素子より５倍大きい請求項２４に記載の固体メモリデバイス。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、情報記憶装置に関する。より詳細には、本発明は、固体メモリのためのアドレスロジックに関する。
【０００２】
【従来の技術】
ＰＤＡやハンドヘルドコンピュータやデジタルカメラやデジタルミュージックプレイヤ等の携帯機器は、データや、デジタルイメージ、ＭＰ３ファイルを格納するためのメモリを有する。これら携帯機器に対して異なるタイプのメモリが入手可能である。従来のメモリタイプは、フラッシュメモリと小型ハードドライブと小型コンパクトディスクと磁気テープとを含む。しかしながら、これらメモリタイプの各々には以下の限界のうちの１つ以上がある。すなわち、物理サイズが大きいこと、記憶能力が低いことと、コストが比較的に高いことと、頑強性に乏しいことと、アクセス時間が低速であることと、消費電力が大きいこととである。
【０００３】
固体ダイオードベースのＯＴＰメモリが、２００１年６月５日に出願された本出願と同一の譲受人に譲渡された米国特許出願第０９／８７５，３５６号に開示されている。従来のメモリと比較して、ダイオードベースのメモリは、耐衝撃性が高く、消費電力が低く、アクセス時間が高速であり、転送速度が適度であり、記憶能力が十分である。ダイオードベースのメモリは、携帯機器の標準携帯インタフェース（例えば、ＰＣＭＣＩＡ、ＣＦ）に適合することができる。
【０００４】
複数レベルを有するダイオードベースのメモリデバイスでは、各レベルが（ＤＲＡＭ等の従来の固体メモリとは異なる）メインメモリとアドレスロジックとを有する。ダイオードベースのメモリデバイスのアドレスロジックは、プログラム可能である。アドレスロジックは、各レベルが製作された後にプログラムされることが可能である。いかなるマスキングも必要でないため、物理的処理は簡略化される。
【０００５】
【発明が解決しようとする課題】
フォールトトレラント（fault-tolerant）なアドレスロジックが望ましい。アドレスラインが使用不可能である場合には、フォールトトレラントなアドレスロジックがまだメインメモリに対してアドレス指定することができる。
【０００６】
隣接排反(neighborhood-disjoint)アドレスロジックは、２００１年６月２４日に出願された本願と同一の譲受人に譲渡された米国特許出願第０９／９１１，９１９号に開示されたタイプのアドレスロジックに対しても望ましい。隣接排反アドレスロジックによって、メモリをより高分解能で形成することができる。
【０００７】
【課題を解決するための手段】
本発明の一態様によれば、アドレス素子の集合が、ｗがコードワードの重みであり、ｎがアドレスラインの数であり、ｔが欠陥アドレスラインの最大許容可能数である場合に、不等式（２ｗ＋ｔ＋１）≦ｎを満足する一定重み(constant weight)コードワードの集合を割当てることによって構成される。
【０００８】
本発明の他の態様および利点は、例として本発明の原理を例示している添付図面に関連して、以下の詳細な説明から明らかとなろう。
【０００９】
【発明の実施の形態】
例示の目的のために図面に示すように、本発明は、ダイオードベースのＯＴＰメモリデバイスにおいて具体化される。以下の段落では、ＯＴＰメモリデバイスの構造を説明し、その後２つのアドレスプロトコルを説明する。アドレスプロトコルのうちの一方は、フォールトトレラントなアドレス構成を提供することができる。他方のアドレスプロトコルは、フォールトトレラントなアドレス構成とともに隣接排反(neighborhood-disjoint)アドレス構成を提供することができる。フォールトトレラントなアドレスロジックは、製造歩留まりを向上させることができ、隣接排反アドレスロジックは、メモリデバイスをより高い分解能で形成することができる。
【００１０】
図１は、マルチレベル固体メモリデバイス１１０を示す。複数のレベル１１２は、互いの上に積重ねられている。各レベル１１２は、メインメモリとアドレスロジックとを有する。レベル１１２は、メモリシステムインタフェース１１６によって制御／インタフェース回路１１４に接続される。制御／インタフェース回路１１４は基板に形成される。制御／インタフェース回路１１４は、装置１１０を動作させるための機能とともに、誤り符号訂正（error code correction、以下、「ＥＣＣ」とよぶ）と欠陥管理機能とを実行する。これらの機能は、書込み電圧を設定することと、書込みイネーブルラインを設定しパワーセンスストライピングを制御することと、論理アドレスを物理メモリロケーションにアクセスするために必要なアドレスラインパターンに変換することによってメモリに対してアドレス指定することと、センスライン出力のデータを読出し処理することとを含む。
【００１１】
システムインタフェース１１６は、アドレスラインを含む。各レベル１１２のアドレスロジックは、同じアドレスラインを共有する。データが装置１１０に書込まれるときに、ビットは隣接するメモリ素子には格納されない。代わりに、１ワードの複数ビットが異なるレベル１１２に格納される。
【００１２】
アドレスロジックがフォールトトレラントである場合には、１つのレベルで１つのアドレスラインに欠陥がある可能性があり、別のレベルで別のアドレスラインに欠陥がある可能性があるが、各レベルは独立して欠陥に対して耐性がある。
【００１３】
ここで、図２を参照するが、この図は、固体メモリデバイスレベル２０８を示す。レベル２０８は、メインメモリ２１０とプログラマブルアドレスロジック２１２、２１４とを有する。メインメモリ２１０は、ＯＴＰメモリ素子２１６と、メモリ素子２１６の行に沿って延在するワードライン２１８と、メモリ素子２１６の列に沿って延在するビットライン２２０とを含む交点抵抗アレイを有する。メモリ素子２１６の各行に対して１つのワードライン２１８と、メモリ素子２１６の各列に対して１つのビットライン２２０とがありうる。各メモリ素子２１６は、ワードライン２１８とビットライン２２０との交点に配置される。レベル２０８の図を簡略化するために、比較的に少ない数のメモリ素子２１６のみが示されている。実際には、いかなるサイズのアレイを使用することができる。
【００１４】
メモリラインは、ワードライン２１８またはビットライン２２０のいずれを指すことができる。
【００１５】
アドレスロジック２１２、２１４は、組合せダイオードロジック（combinatorial diode logic）を使用して読出しおよび書込み動作中にメモリ素子２１６をアドレス指定する。アドレスロジック２１２、２１４は、ワードライン２１８を選択するＯＴＰ行デコーダ(row decoder)２１２を含む。行デコーダ２１２は、行アドレスライン２２２に供給されるアドレスを復号化することによってワードライン２１８を選択する（外部行アドレスドライバ２２４によってアドレスを供給することができる）。行デコーダ２１２は、複数のＯＴＰアドレス素子２２６を含む。行デコーダ２１２の各アドレス素子２２６は、ワードライン２１８と行アドレスライン２２２との交点にある。
【００１６】
アドレスロジック２１２、２１４は、ビットライン２２０を選択するＯＴＰ列デコーダ(column decoder)２１４も含む。列デコーダ２１４は、列アドレスライン２２８に供給されるアドレスを復号化することによりビットライン２２０を選択する（外部列アドレスドライバ２３０によってアドレスを供給することができる）。列デコーダ２１４は、複数のＯＴＰアドレス素子２２６も含む。列デコーダ２１４の各アドレス素子２２６は、ビットライン２２０と列アドレスライン２２８との交点にある。
【００１７】
各ワードライン２１８の一端は、行センスロジック２３４で終端する。行センスロジック２３４は、複数のセンス抵抗器２３６を含み、各センス抵抗器２３６は行パワーライン２３８とワードライン２１８の端部との間に接続される。行センスライン２４０は、ワードライン２１８と交差する。行センスロジック２３４は、複数のセンス素子２４２も含み、各センス素子２４２は、行センスライン２４０とワードライン２１８との間に接続される。
【００１８】
各ビットライン２２０の一端は、列センスロジック２４４で終端する。列センスロジック２４４は、複数のセンス抵抗器２３６を有し、各センス抵抗器２３６は、列パワーライン２４６とビットライン２２０の端部との間に接続される。列センスライン２４８は、ビットライン２２０と交差する。列センスロジック２４４は、複数のセンス素子２４２も含み、各センス素子２４２は、列センスライン２４８とビットライン２２０との間に接続される。
【００１９】
メインメモリ２１０と行デコーダ２１２との間の行プログラミングライン２５０は、ワードライン２１８と交差する。プログラミング素子２５２は、行プログラミングライン２５０とワードライン２１８との間に接続される。
【００２０】
メインメモリ２１０と列デコーダ２１４との間の列プログラミングライン２５４は、ビットライン２２０と交差する。プログラミング素子２５２は、列プログラミングライン２５４とワードライン２２０との間に接続される。
【００２１】
メモリ素子２１６とアドレス素子２２６とセンス素子２４２とプログラミング素子２５２とは、すべてダイオードベースでありうる。これによって、レベル２０８の製作が容易になる。
【００２２】
図３ａから図３ｃに、異なるタイプのプログラマブル素子２１６／２２６／２４２／２５２を示す。図３ａのプログラマブル素子は、ダイオード３１２と直列に連結されたヒューズ３１０を含む。プログラミングの前は、かかる素子の抵抗状態はローであり、ヒューズ３１０は不変（intact）である。プログラミング中に素子の抵抗状態は、ヒューズ３１０の「飛び(blowing)」によってローからハイに変化することができる。
【００２３】
図３ｂのプログラマブル素子は、ダイオード３２２に直列に連結された抵抗器３２０を含む。プログラミングの前は、かかる素子の抵抗状態はローであり、抵抗器３２０は不変である。プログラミング中に、素子の抵抗状態は、抵抗器３２０の「飛び(blowing)」によりローからハイに変化することができる。
【００２４】
図３ｃのプログラマブル素子は、ダイオード３３２のみを含む。プログラミングの前は、ダイオード３２２は不変であるため、その抵抗状態はローである。プログラミング中に、ダイオード３３２は、その抵抗状態をローからハイに変化させるように開状態となることが可能である。このようなダイオードは、ヒューズとして機能する。代替的に、ダイオード３３２は、プログラミング中に高抵抗状態から低抵抗状態になるアンチヒューズとして機能することができる。
【００２５】
プログラマブル素子２１６／２２６／２４２／２５２は、図３ａから図３ｃに示すタイプに限定されない。例えば、プログラマブル素子２１６／２２６／２４２／２５２は、ダイオードの代りにトランジスタを含みうる。
【００２６】
図２に戻ると、レベル２０８は以下のように製作することができる。基板上に列ライン２２０が形成され、列ライン２２０上にシリコンの多層膜が形成され、膜の上にワードライン２１８が形成される。２つの交差トレース（Ｔ）（図４を参照のこと）間において膜（Ｆ）の一部分として各プログラマブル素子２１６／２２６／２４２／２５２を形成することができる。プログラマブル素子２１６／２２６／２４２／２５２のサイズは、交差するライン間のオーバラップ領域と膜の厚さとによって確定される。例えば、メインメモリ２１０のダイオードは、交差するワードライン２１８とビットライン２２０との間において膜の一部分として形成される。
【００２７】
膜の異なる層は、ダイオード３１２、３２２、３３２を形成するために適当なドーピング（および／または結晶およびアモルファスシリコンの組合せ）を有する。抵抗器３２０、ヒューズ３１０、またはアンチヒューズを形成するために、適当なドーピングを含む更なる層を追加することができる。ワードライン２１８とビットライン２２０との端部を変更することによってセンス抵抗器２３６を形成することができる。行アドレスドライバ２２４と列アドレスドライバ２３０とを、基板上に制御／インタフェース回路１１４の一部として形成することができえる。
【００２８】
データは、行アドレスおよび列アドレスを行デコーダ２１２および列デコーダ２１４に供給することによって、メインメモリ２１０に書込むことができる。書込み電流は、選択されたワードライン２１８と選択されたビットライン２２０とを流れ、したがって選択されたワードライン２１８とビットライン２２０との交点においてメモリ素子２１６を流れる。書込み電流の大きさは、選択された要素の抵抗状態を変更するためには十分である（例えば、図３ａのヒューズ３１０を開放することや、図３ｂの抵抗器３２０を開放することや、図３ｃのダイオード３３２を開放することや、アンチヒューズを短絡させることによる）。
【００２９】
メモリ素子２１６の抵抗状態は、行デコーダ２１２と列デコーダ２１４に行アドレスと列アドレスとを供給することによって感知することができる。行センスライン２４０に電圧が印加され、列センスライン２４８には反対の極性の電圧が印加される。センス電流は、選択されたワードライン２１８と選択されたビットライン２２０とに流れ、したがって、選択されたワードライン２１８とビットライン２２０との交点においてメモリ素子２１６を流れる。センス電流の大きさは、選択されたメモリ素子２１６の抵抗状態を示す。
【００３０】
ここで、図５を参照する。行デコーダ２１２と列デコーダ２１４とを装置製作（４１２）前に構成することができ（４１０）、レベル２０８が製作された後に行デコーダ２１２と列デコーダ２１４とがプログラムされる（４１４）。デコーダ２１２および２１４を、メモリラインにアドレス構成を割当てることによって構成することができる。各アドレス構成は、論理１と論理０とのビットパターンを含む。アドレス構成の各ビットは、メモリラインに接続されたプログラマブルアドレス素子２２６に対応する。アドレス素子２２６は、アドレス構成にしたがって製作される。例えば、「０」のアドレス構成ビット値に対応するアドレス素子２２６は、「１」のアドレス構成ビットに対応するアドレス素子２２６とは異なる通電能力を有する。ここで、アドレス素子の製作およびプログラミングをより詳細に説明する。アドレス構成を生成するアドレスプロトコルについては後述する。
【００３１】
図６を参照する。中黒の丸（●）によって示される高通電能力素子は、アドレス構成ビットの第１の論理値に対応する。バツ印（×）によって示される低通電能力素子は、アドレス構成ビット状態の第２の論理値に対応する。中黒の丸によって示されるアドレス素子２２６は、プログラミング中に抵抗状態が変化しない。バツ印によって示されるアドレス素子は、プログラミング中抵抗状態が変化する。単に例示の目的のために、バツ印によって示される素子は論理「０」に対応し、中黒の丸によって示される素子は論理「１」に対応する。論理「１」は、必ずしも高電圧に対応しない。
【００３２】
行デコーダ２１２のプログラミング中に、行プログラミングライン２５０の前後に電圧（−Ｖ）が印加され、行センスライン２４０に反対の極性（＋Ｖ）の電圧が印加される。（列デコーダ２１４のプログラミング中に、列プログラミングライン２５４の前後に電圧が印加され、列センスライン２４８に反対の極性の電圧が印加される。）これによって、背合せに接続された２つのダイオードの前後に有効に電圧が印加される。すべてのアドレス素子が逆方向バイアスされセンス素子が順方向バイアスされるように、電圧が印加される。したがって、電流はアドレス素子２２６を流れる。この電流により、バツ印によって示されるアドレス素子２２６のリンクは断絶するが、中黒の丸によって示されるアドレス素子２２６のリンクは断絶しない。このように、中黒の丸によって示されるアドレス素子２２６は不変状態を維持する。行デコーダ２１２のメモリラインＭ１〜Ｍ９は、不変のアドレス素子と変化したアドレス素子２２６とを含む異なるパターンに接続され、それによってアドレスラインの集合がメモリラインのうちの１つを除くすべてを除外することになる。
【００３３】
さらに、（プログラミング後の）メモリラインのダイオードパターンを示す図７ａを参照する。アドレス素子２２６のダイオードは、ワイヤードロジック素子を形成するアクティブな素子である。アドレスラインＡ０〜Ａ５にアドレスａ0ａ1ａ2ａ3ａ4ａ5＝１１０１１０が与えられると、アドレスラインＡ０とＡ１とＡ３とＡ４とに接続されたダイオードは逆方向バイアスされる。その結果、（矢印で示す）電流は、メモリラインからメインメモリ２１０に流れることができるようになる。
【００３４】
同じアドレスａ0ａ1ａ2ａ3ａ4ａ5＝１１０１１０が、図７ｂに示すメモリラインを除外する。例えば、アドレスラインＡ２に論理「０」を与えると、アドレスラインＡ２とメモリラインとの間に接続されたダイオードが順方向バイアスされることになる。その結果、電流は順方向バイアスされたダイオードに分流し、メインメモリ２１０に流れなくなる。
【００３５】
ここで図８から図９ｃを参照する。高通電能力を有するアドレス素子２２６ｂを、低通電能力を有するアドレス素子２２６ａより物理的に大型に作製することができる。アドレスプロトコルが、いずれの列にも大型のアドレス素子２２６ｂが隣接していないことを保証することができる場合には、アドレスロジックは、図８に示す構成を有することができる。図８は、列がいかなる隣接する大型のアドレス素子２２６ｂも含まない行デコーダ２１２を示す。そのようには図示していないが、アドレス素子２２６ａおよび２２６ｂをフルコンタクトピッチで形成することができる。
【００３６】
アドレスプロトコルがかかる保証を提供することができない場合には、それによってアドレスロジックは列において隣接する大型のアドレス素子を含む可能性があるため、ワードライン１８間の距離が増大する可能性がある。しかしながら、これによって、メインメモリのデータ記憶密度が低減する。
【００３７】
代りに、図９ｂに示すように、間隔が空けられた２つの集合２１２ａおよび２１２ｂに行デコーダ２１２を分割することができる。奇数のワードライン２１８ａは偶数のワードライン２１８ｂと交互に噛合う（interdigitate）ように配置される。アドレスラインの第１の集合２２２ａは、奇数ワードライン２１８ａと交差し、アドレスラインの第２の集合２２２ｂは、偶数ワードライン２１８ｂと交差する。アドレスラインの第１の集合２２２ａと第２の集合２２２ｂとは、同じアドレス信号を受取る。
【００３８】
この方法によって、隣接するアドレス素子２２６ｂのサイズは３倍に拡大されるが、それでもなお他のアドレス素子２２６ａを高分解能で製作することができる。アドレスプロトコルが、いずれの列にも大型のアドレス素子２２６ｂが隣接していないことを保証することができる場合には、隣接しない大型のメモリ素子２２６ｂのサイズを５倍に拡大することができる（図９ｃを参照のこと）。
【００３９】
図８から図９ｃでは、行デコーダ２１２に関連して説明した。しかしながら、同じ原理を列デコーダ２１４に適用することができる。
【００４０】
アドレスプロトコルは、ｎビットアドレス構成をＬ個のメモリライン（例えばＬ行またはＬ列）の各々に１：１にマップすることを含み、それにより、いずれの２つの行にも同じアドレス構成が割当てられず、いずれの２つの列にも同じアドレス構成が割当てられない。
【００４１】
表１に示すアドレス構成を考慮する。６つのメモリラインＭ１〜Ｍ６と４つのアドレスラインＡ０〜Ａ３とがある。アドレスラインに割当てられる論理「０」は、不変の素子によってそのアドレスラインに接続されるすべてのメモリラインを除外する。アドレスラインＡ０とＡ１とＡ２とＡ３とにアドレスａ0ａ1ａ2ａ3＝１１００が供給される場合には、第１のメモリラインＭ１を除くすべてのメモリラインＭ２〜Ｍ６が除外される（第１のメモリラインＭ１の第１のアドレス素子と第２のアドレス素子とは不変のままであり、第１のメモリラインの第３のアドレス素子と第４のアドレス素子とは変化する）。
【００４２】
【表１】
0004121825.tif 000002
【００４３】
アドレスラインは、層のすべての対応するアドレス素子に物理的に電気的に接続されるため、層のいずかにおける単一の欠陥接続によって使用不可能となる場合がある。アドレスラインは、経年変化または環境プロセスにより長い間に発生する欠陥によって使用不可能となる可能性がある。アドレスラインＡ０、Ａ１、Ａ２またはＡ３のうちの１つが使用不可能となった場合には、そのアドレスラインは特定のメモリラインを除外することができなくなる。アドレスラインＡ３に欠陥が生じると、それは、メモリラインＭ２とＭ４とＭ６とを除外することができなくなる。
【００４４】
この問題は、フォールトトレラントなアドレス構成を提供するアドレスプロトコルを使用することによって回避することができる。フォールトトレランスは、欠陥が発生した場合であってもメモリデバイスが正確に機能することができるようにする組込み冗長性を有する。このため、フォールトトレランスは製造歩留まりを向上させることができる。代価はアドレスラインの増大である。
【００４５】
図１０を参照する。フォールトトレランスは、ｔが欠陥のあるアドレスラインの最大許容可能数である場合、少なくともｔ＋１の対称距離を有する非包含的なアドレス構成の集合を割当てることによって達成されてよい（７１０）。
【００４６】
ここで、特定の条件を説明する。ｕ1，ｕ2∈｛０，１｝nとする。単方向距離ｄU（ｕ1，ｕ2）は、ｕ1が１を有しｕ2が０を有する位置の数である。対称距離は、ｄS（ｕ1，ｕ2）＝ｍｉｎ｛ｄU（ｕ1，ｕ2），ｄU（ｕ2，ｕ1）｝である。ハミング距離は、ｄH（ｕ1，ｕ2）＝ｄU（ｕ1，ｕ2）＋ｄU（ｕ2，ｕ1）である。ハミング距離は、対称距離の少なくとも２倍である。すなわち、ｄH（ｕ1，ｕ2）≧２ｄS（ｕ1，ｕ2）である。例えば、ｕ1＝１１１０およびｕ2＝１００１である場合には、ｄU（ｕ1，ｕ2）＝２およびｄU（ｕ2，ｕ1）＝１であり、ｄH（ｕ1，ｕ2）＝３であり、ｄS（ｕ1，ｕ2）＝１である。少なくとも２つのｎビットワードの集合Ｕの場合には、対称距離ｄS（Ｕ）は、集合Ｕにおける任意の２つの別個のワードの間における最小の対称距離であり、ハミング距離ｄH（Ｕ）は、集合Ｕにおける任意の２つの別個のワードの間における最小ハミング距離である。
【００４７】
ｄU（ｕ1，ｕ2）＝０である場合には、ｕ2はｕ1を包含する。したがって、ｕ2がｕ1を包含するか、またはｕ1がｕ2を包含するときにその場合に限り、ｄS（ｕ1，ｕ2）＝０である。いずれのアドレス構成においても他のアドレス構成を包含しないように、メモリラインにアドレス構成が割当てられる。この制約により、単一アドレスが複数のメモリラインを選択することが無くなる。
【００４８】
したがって、ある集合におけるｎビットワードが非包含的である場合には、ｎ個のアドレスラインに対するアドレス構成としてワードの集合を割当てることができる。
【００４９】
これら制約を満足するワードの１つの集合は、ｔ−Ｓｐｅｒｎｅｒ（ｎ，Ｌ）コードワードである。ｔ−Ｓｐｅｒｎｅｒ（ｎ，Ｌ）コードは、ｄS（Ｕ）≧ｔ＋１であるように、Ｌ個のｎビットワードからなる集合Ｕである。１−Ｓｐｅｒｎｅｒ（７，６）コードの例は、Ｕ＝｛１１００１００，１０１００１０，１００１１０１，０１１０００１，０１０１０１０，００１１１００｝である。ハミング距離は、ｄH（Ｕ）＝４である。アドレスラインのｔ＝１に欠陥が生じる場合であっても、いずれのワードも他のワードを包含しない。
【００５０】
アドレスワードは、ｔ−Ｓｐｅｒｎｅｒワードのタイプである一定重みコード（constant wait chord（以下、「ＣＷＣ」とよぶ））ワードでありうる。ｎビットワードの集合Ｃは、集合Ｃの各ワードがハミング重み（ｗ）を有しｄH（Ｃ）≧２ｔ＋２である場合には、ＣＷＣ（ｎ，２ｔ＋２，ｗ）である。これら条件は、Ｃがｔ−Ｓｐｅｒｎｅｒ（ｎ，Ｌ）コードであることを意味する。
【００５１】
表２のアドレス構成を考慮する。さらなる３つのアドレスライン（Ａ４、Ａ５およびＡ６）が追加されている。いかなるｔ＝１アドレスラインが使用不可能である場合であっても、いずれのアドレス構成も他のアドレス構成を包含しない。このため、欠陥のあるアドレスラインの最大許容可能数はｔ＝１である。
【００５２】
【表２】
0004121825.tif 000003
【００５３】
アドレスラインＡ１が使用不可能となった場合には、残りの６つのアドレスラインＡ０とＡ２〜Ａ６とは、６つのメモリラインＭ１〜Ｍ６の各々を明白に選択することができるようになる。アドレスａ0ａ2ａ3ａ4ａ5ａ6＝１００１００が、第１のメモリラインＭ１を除くすべてのメモリラインＭ２〜Ｍ６をなお除外する。
【００５４】
メモリデバイスは、隣接排反(neighborhood-disjoint)アドレス構成を生成するアドレスプロトコルを使用することによって、より高い分解能で製作することができる。かかるアドレスプロトコルは、いずれの列においても大型のアドレス素子２２６ｂが隣接していないことを保証する。
【００５５】
ここで図１１を参照すると、隣接排反アドレス構成は、ｗがコードワードの重みであり、ｎがアドレスラインの数であり、ｔが欠陥アドレスラインの最大許容可能数である場合に、不等式（２ｗ＋ｔ＋１）≦ｎを満足する一定重みコードワードの集合を割当てる（８１０）ことによって生成される。
【００５６】
メモリラインＭｂのアドレスをＴ（ｂ）とする。アドレス指定が隣接排反である場合には、Ｔ（ｂ）とＴ（ｂ＋１）とはすべてのｂに対して排反（disjoint）する。すなわち、すべてのｂに対してＴ（ｂ）∧Ｔ（ｂ＋１）＝０である場合には、アドレス指定は隣接排反である。オペレータ∧は、ビットの「ＡＮＤ」を表す。
【００５７】
表３に示すアドレス構成を考慮する。ハミング重みはｗ＝３であり、アドレスラインの数はｎ＝９であり、欠陥アドレスラインの最大許容可能数はｔ＝１である。いずれの列においても大型のダイオード（中黒の丸で表される）が隣接していない。したがって、アドレス構成は隣接排反である。さらに、いずれか１つのアドレスラインが使用不可能である可能性があるが、それでもまだ残りのアドレスラインはメモリラインを明確に選択することができる。フォールトトレランスと隣接排反性との代価は、アドレスラインの数が４から９に増大するということである。
【００５８】
【表３】
0004121825.tif 000004
【００５９】
表３のアドレス構成は、この例ではｔ＝１とｎ＝９とＬ＝６とである場合には、ｔ−Ｓｐｅｒｎｅｒ（ｎ，Ｌ）コードから選択される。この隣接排反特性を満足させるために、ｋ番目のメモリライン（Ｍｋ）に割当てられるアドレス構成は、ｋ−１番目のメモリラインに割当てられる構成と隣接排反である残りのコードワードから無作為に選択される。残りのコードワード間に隣接排反コードワードを見つけることができない場合には、ｋ−１番目のアドレス構成は削除され、ｋ−１番目のアドレス構成に対する別の選択が行われる。そして、ｋ番目のアドレス構成が選択される。
【００６０】
上述したアドレスプロトコルは、上述したメモリデバイスに限定されない。組合せのアドレスロジックを使用していかなる装置にそれらを適用することができる。
【００６１】
本発明は、上に説明し例示した特定の実施形態に限定されない。代わりに、本発明は、特許請求の範囲にしたがって解釈される。
【図面の簡単な説明】
【図１】マルチレベル固体メモリデバイスの概略図である。
【図２】アドレスロジックを含む、固体メモリデバイスのレベルの概略図である。
【図３】ａとｂとｃとは、レベルにおける異なるタイプのプログラマブル素子の概略図である。
【図４】プログラマブル素子の他の概略図である。
【図５】アドレスロジックを形成する方法の流れ図である。
【図６】メモリラインのアドレスパターンの概略図である。
【図７】ａおよびｂは、メモリラインのダイオードパターンの概略図である。
【図８】アドレスロジックのアドレス素子の異なるレイアウトを示す概略図である。
【図９】ｂおよびｃは、アドレスロジックのアドレス素子の異なるレイアウトを示す概略図である。
【図１０】アドレスロジックのためのアドレス構成を生成する方法のブロック図である。
【図１１】アドレスロジックのためのアドレス構成を生成する第２の方法のブロック図である。
【図１】
0004121825.tif 000005
【図２】
0004121825.tif 000006
【図３】
0004121825.tif 000007
【図４】
0004121825.tif 000008
【図５】
0004121825.tif 000009
【図６】
0004121825.tif 000010
【図７】
0004121825.tif 000011
【図８】
0004121825.tif 000012
【図９】
0004121825.tif 000013
【図１０】
0004121825.tif 000014
【図１１】
0004121825.tif 000015