(57)【特許請求の範囲】
【請求項１】
メモリセルの複数のコラムを含むメモリアレイに冗長性を与える方法（６００）であって、
前記メモリアレイの欠陥コラムを識別し（６１０）、
前記欠陥コラムを含む隣接コラムグループを選択することによって冗長性ウィンドウを定義し（６２０）、
前記グループにおけるコラム数は、前記メモリアレイに結合された冗長性アレイのコラム数に従って判断され、
前記グループは、前記欠陥コラムの一方側に少なくとも第１コラムがあり、前記欠陥コラムの他方側に第２コラムがあるように選択され、かつ、
前記第２コラムのメモリセル及び前記第１コラムのメモリセルをプログラミングする（６３０）、方法。
【請求項２】
前記複数のコラムは、別々の入力／出力（Ｉ／Ｏ）グループ（０，１）に編成され、Ｉ／Ｏグループ内のコラムは対応するＩ／Ｏパッド（４０１，４０２）に結合される、
請求項１記載の方法。
【請求項３】
前記メモリアレイに結合された前記冗長アレイに記録された情報を読出し（８１０）、
前記情報がいずれの前記Ｉ／Ｏグループと関連付けられるかを判断する（８２０）、
請求項２記載の方法。
【請求項４】
前記プログラミングでは、機能メモリセルを前記冗長性ウィンドウにプログラミングする（６３０）、請求項１記載の方法。
【請求項５】
前記冗長性ウィンドウは、前記欠陥コラムが前記隣接コラムグループのおおよそ中間に位置するように定義される、
請求項１記載の方法。
【請求項６】
前記第１コラムは、前記冗長性ウィンドウの一方の境界に配置され、前記第２コラムは前記冗長性ウィンドウの他の境界に配置される、
請求項１記載の方法。
【請求項７】
前記冗長性ウィンドウは、前記冗長性ウィンドウの境界に対応するアドレスを特定することによって定義される、
請求項１記載の方法。
【請求項８】
メモリアレイにおけるメモリロケーションに関するアドレスを受信し（７１０）、
前記アドレスに対応する実際のメモリロケーションを判断し（７２０）、前記実際のメモリロケーションは、前記メモリアレイか、あるいは前記冗長性アレイの何れかに位置する、請求項１記載の方法。
【請求項９】
前記冗長性アレイにおける情報を読出し（７５０）、
前記アドレスに対応する前記メモリロケーションにおいて前記メモリアレイにおける情報を読出し（７６０）、かつ、
前記実際のメモリロケーションに従って、前記冗長性アレイから読出された前記情報と、前記メモリアレイからリードされた情報と、の間で選択を行う（７７０）、
請求項８記載の方法。
【請求項１０】
メモリアレイにメモリ冗長性を与える方法（６００）であって、
前記メモリアレイの欠陥コラムを選択し（６１０）、前記メモリアレイは、メモリセルの複数のコラムを有し、この複数のコラムは、個別の入力／出力（Ｉ／Ｏ）グループとして編成され、Ｉ／Ｏグループにおけるコラムは、対応するＩ／Ｏノードに結合されるものであり、
前記欠陥コラムを含む隣接コラムグループを選択することによって冗長性ウィンドウを確立し（６２０）、前記隣接コラムグループにおけるコラム数は、前記メモリアレイに結合された冗長性アレイにおけるコラム数に従って判断され、前記隣接コラムグループは、前記欠陥コラムの一方側に少なくとも第１コラムがあり、前記欠陥コラムの他方側に第２コラムがあるよう選択され、前記隣接コラムグループは、２つの隣接するI／Ｏグループからのコラムを含むものである、方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、概して、メモリアレイに関する。より具体的には、請求項に請求された本発明は、メモリ冗長性スキームに関する。
【背景技術】
【０００２】
一般的なメモリアレイは、この分野で知られている。メモリアレイは、概して、ロウ及びコラムとして配置された多数の線を含む、アレイのロウは、通常、ワード線と称され、コラムはビット線と称される。
【０００３】
ワード線とビット線は、ノードと称され得る箇所で重なり合う。各ノードにおいてあるいは近接して位置するのが、メモリセルであり、概して、トランジスタの幾つかの形式である。仮想接地アーキテクチャにおいて、ビット線は、トランジスタ（メモリセル）に関してソースあるいはドレイン線の何れかとして利用され得、これはメモリセルが識別あるいはリードされているプログラムに依存する。論考の簡明性を期すために、“リード”が、リードオペレーションあるいはプログラム識別オペレーションの何れかのことを称し得る。
【０００４】
従来技術を表す図１は、メモリアレイ５部分を表示したものである。説明の簡明性を期すために、メモリアレイ５のコラム（ビット線）のみが示される。メモリアレイ５におけうる２つのブロックのみ（ブロック０とブロック１）が示される。従来のメモリアレイにおいて、通常は、ブロック数が２より多いことが理解されよう。これらのブロックグループは、入力／出力（Ｉ／Ｏ）ブロックと称され得るか、あるいは単に“Ｉ／Ｏ”と称され得る。Ｉ／Ｏは、概して、シングルＩ／Ｏパッド又はポートに結合される（例、ゲートされる）幾つかのコラムを含む。従来のメモリアレイの一形式において、ブロック毎又はＩ／Ｏ毎に３２コラム（Ｎ＝３２）が配される。
【０００５】
従来技術の図１に示されるコラムは“金属−２”ビット線である。金属−２ビット線の各々には２つの“金属−１”ビット線が関連付けられている。例えば、Ｎ＝３２とすると、Ｉ／Ｏ毎に６４の金属−１ビット線があり、メモリアレイ５は、Ｉ／Ｏ毎のワード線毎に６４ビットの情報を記録し得る。金属−１ビット線及び金属−２ビット線のような用語の使用は、この技術分野で知られている。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
選択されたメモリセルを読出すとき、コア電圧がこのセルに対応するワード線に印加され、このセルに対応するビット線は、負荷あるいはロード（例えば、カスコードあるいはカスコード増幅器）に接続される。仮想接地アーキテクチャを利用するメモリアレイにおいて、ワード線上の全てのメモリセルは、コア電圧にさらされる。これは、ワード線に沿ったリーク電流、あるいはエラー電流につながる可能性があり、事実上、ワード線上のメモリセル間に好ましからざる干渉を生じ得る。リーク電流が十分な大きさになると、選択されたメモリセルの読出し時にエラーを生じるおそれがある。
【０００７】
ワード線上のメモリセル間の干渉を最小限に抑え、リード中のエラーを減少するために、通常、プレチャージと称される技術が利用される。リードされているメモリセルに対応するコラムに隣接するコラムに荷電すること（負荷を印加する）によって、プレチャージが作用する。ドレインノード及びプレチャージノードがほぼ同じ電圧であれば、プレチャージによってリーク電流が抑えられるという効果が得られる。従来技術の図１を参照すると、コラム１におけるメモリセルをリードするために、例えば、プレチャージ電圧がコラム２に印加される。
【０００８】
従来技術において、メモリアレイ５は、冗長性アレイ（図示されない）に結合され得る。冗長性アレイは、実質的には、メモリアレイ５と同じ数のロウを有するがコラム数は少なくされた、メモリの別のブロックである。冗長性アレイにおけるコラム数は、必ずしも常にというわけではないが、通常、ブロックあるいはＩ／Ｏにおけるコラム数より少ない。
【０００９】
冗長性アレイが如何にして利用されるかの論考を簡潔化するために、冗長性アレイにおけるコラム数がブロックにおけるコラム数より比較的少ない一例が用いられる。メモリアレイ５のテストによって、メモリアレイにおける１コラムに沿ったメモリセルが適格に読出されないことが判明する場合もある。例えば、接地にショートするような欠陥が製造中にコラムに生じ得る。冗長性アレイが、欠陥コラムを含むブロックにおける他のコラムと同様に欠陥コラムの置換として利用される。冗長性アレイを利用して置換されたメモリアレイ５におけるコラムは、“冗長性ウインドウ”と称され得る。冗長性ウインドウ６が、従来技術の図１に例示される。この例においては、冗長性ウインドウ６は、位置が固定され、ブロック１におけるコラム数より少ない幾つかのコラム数を含む。冗長性ウインドウ６におけるコラムのデータをリード及びライトするのではなく、データは冗長性アレイからライト及びリードされる。従って、冗長性ウインドウ６におけるメモリセルはプログラムされない。
【００１０】
上述した冗長性スキームは、メモリアレイ５が繰り返し消去された後に、問題となり得る。メモリセクタが消去されるとき、このセクタにおける全てのメモリセルが消去される。“Ｙ−選択”デコードは、全てのＩ／Ｏに関して共通しているので、ブロック１が消去されるとき、冗長性ウインドウ６におけるメモリセルも消去される。従って、上述した例に続き、これらのメモリセルがプログラムされていないとしても、冗長性ウインドウ６におけるメモリセルは消去される。結果として、冗長性ウインドウ６におけるメモリセルは“過消去”され得る。この過消去によって、冗長性ウインドウ６におけるメモリセルの電気抵抗が減少し、それ故、これらのセルにリーク（エラー）電流を増加する。これは、次に冗長性ウインドウ６におけるメモリセルに隣接するコラムにおけるメモリセル、特定的に冗長性ウインドウ６に直接隣接するメモリセル（例、コラムＮ−１におけるそれらのメモリセル）のリーディング即ち読出しに悪い影響を及ぼし得る。例えば、コラムＮに関連するリーク電流は、大きい可能性があり、コラムＮにプレチャージが印加されたとき、リーク電流を補償するような十分な量であり得ないし、コラムＮ−１をリードするときエラーを生じ得る。
【００１１】
従って、冗長性ウインドウに隣接するメモリセルをリードするとき、エラーを排除し、あるいは減少する冗長性スキームが、従来の冗長性スキームを超えて改善されるだろう。
【課題を解決するための手段】
【００１２】
本発明の実施形態は、メモリ冗長性を与える方法、及びシステムに関し、メモリアレイにおける冗長性ウインドーに隣接するメモリセルをリードするとき、エラーを減少あるいは排除し得る。メモリアレイの特定のコラム（例、欠陥コラム）が識別される。本発明の様々な実施形態に従って、冗長性ウィンドウが、欠陥コラムを含む隣接コラムグループを選択することによって定義される。コラムグループが、欠陥コラムの一方側に少なくとも１コラム、欠陥コラムの他方側にもう１つのコラムが存在するように選択される。通常、欠陥コラムのそれぞれの側に多数のコラムがある。一実施形態において、冗長性ウィンドウが、欠陥コラムが隣接コラムグループのおおよそ中央に位置するように定義される。もう１つの実施形態において、冗長性ウィンドウが、冗長性ウィンドウの境界に対応するアドレスを特定することによって定義される。
【００１３】
一実施形態において、冗長性ウィンドウの境界におけるコラム内のメモリセルのみがプログラムされる。もう１つの実施形態において、冗長性ウィンドウにおける欠陥コラムの双方側における全てのコラムのメモリセルがプログラムされる。いわば、本発明の様々な実施形態に従って、機能化及びプログラムされたコラムのバリアが、欠陥コラムと冗長性ウィンドウに隣接する（外部の）コラム間に位置する。
【００１４】
一実施形態において、メモリアレイにおける複数のコラムが、別々の入力／出力（Ｉ／Ｏ）グループに編成され、Ｉ／Ｏグループ内のコラムが対応するＩ／Ｏパッドに結合される。そのような実施形態において、冗長性ウィンドウは、２つの隣接するＩ／Ｏグループからのコラムを含む。そのような一実施形態において、冗長性アレイにおけるデータを適切なＩ／Ｏパッドに指示することについての方法が記載される。また、特定化されたアドレスが結果として冗長性ウィンドウ（従って冗長性アレイにおいて）内にヒットをもたらすか否かを判断するための方法も記載される。
【発明を実施するための最良の形態】
【００１５】
本発明の完全な理解を提供するために多くの詳細が以下に記載される。しかし、当業者であれば、これらの特定の詳細を読まなくとも、あるいはこれらの均等物で実施され得ることが認識されよう。他の例における周知の方法、手順、コンポーネント、及び回路が、本発明の態様を無駄にあいまいにしないために記載されていない。
【００１６】
以下の詳細な記載の幾つかの部分は、手順、ステップ、論理ブロック、プロセッシング、及びコンピュータメモリ上に実行され得るデータビットのオペレーションの他の象徴的な表示である。これらの記載及び表示は、データプロセッシング技術における当業者によって他の技術者に彼らの仕事の内容を最も効果的に伝えるために利用される手段である。手順、コンピュータ実行ステップ、論理ブロック、プロセス等が本文に記載され、概して、求められる結果をもたらす首尾一貫したステップあるいはインストラクションのシーケンスであることが考えられる。ステップは、それらの求められる物理的な量の物理的な操作である。通常、必ずしもではないが、これらの量は、コンピュータシステムにおいて記録され、伝送され、組み合わされ、比較され、あるいは操作されることが可能な電気的信号あるいは磁気的信号の形式を取る。主に慣用上の理由から、これらの信号をビット、値、エレメント、シンボル、特徴、用語、数等と称することは利便性があるとして証明されている。
【００１７】
しかし、これらの全て及び同様の用語は適切な物理的量に関連付けられ、これらの量に利用される単に利便的な標識であることを心に留めなくてはならない。特定的に記載されない限り、以下に論じられることから明らかなように、本発明中において使用される“識別する”、あるいは“定義する”、あるいは“プログラミングする”、あるいは“特定する”、あるいは“選択する”、あるいは“確立する”、あるいは“受信する”、あるいは“判断する”、あるいは“比較する”、あるいは“リーディングする”のような用語を使用する論考は、コンピュータシステム（例、図６のフローチャート６００，図７のフローチャート７００，７３０及び図８のフローチャート８００）の動作及びプロセス、あるいは同様の電子的コンピューティングデバイスに関して表され、それらはコンピュータシステムのレジスタ及びメモリ内の物理的（電気的）な量として表示されるデータを、同様に表されるコンピュータシステムメモリあるいはレジスタあるいは他のそのような情報ストレージ、伝送あるいはディスプレイデバイス内に操作し、伝送するのである。
【００１８】
図２Ａに、本発明の一実施形態に従って、メモリアレイ部分１００が表示される。図２Ａに論考及び図示の簡潔性を期すために、シングルワード線と幾つかのビット線３０，３１及び３２が表される。しかし、メモリアレイは、実際、異なる数のワード線とビット線を利用し得る。即ち、メモリアレイ１００は、実際上、左右へ、又、横方向及び縦方向にも延びる（左右、横方向及び縦方向の関連する方向）。ワード線は、ロウと称され得るし、ビット線は、コラムと称され得る。しかし、これらは相対的な用語であることが理解されよう。また、メモリアレイのある種のエレメントのみが表され、即ち、メモリアレイが、示された以外のエレメントを実際に含み得ることが理解されよう。例えば、一実施形態において、メモリアレイ１００は、仮想接地アーキテクチャを利用し得る。仮想接地アーキテクチャにおいて、ビット線は、ソースあるいはドレインの何れかとして作用し得、これはリーディングされているメモリセル（あるいは識別されているプログラム）に依存する。
【００１９】
ワード線４０に結合可能なのは、電力供給（電圧ソース６０）である一方で、各ビット線３０〜３２に結合可能なのは、ロードである（図示されない）。ビット線３０〜３２は、実質的に互いに並行的であり、ワード線は、ビット線に実質的に直交である。ワード線４０とビット線３０〜３２は、対応する複数のノード１０，１１及び１２において重なり合う（しかし、接続されない）。これらの各ノードに対応するのは、メモリセル２０，２１及び２２である。即ち、この実施形態において、メモリセル２０はノード１０に対応し、メモリセル２１はノード１１に対応し、及びメモリセル２２はノード１２に対応する。また、メモリセル２３が図示されるが、もう１つのノードが対応する（図示されない）。メモリセル２０〜２３は、実際、ビット線間、及びワード線“下”にある（“下”は相対語である）。このメモリセル２０〜２３は、図３Ａのメモリセル２００のようなシングルビットセル、あるいは図３Ｂのメモリセル２５０ようなミラービットメモリセルであり得る。
【００２０】
図２Ｂは、本発明の一実施形態に従った冗長性アレイ１１０に結合されるメモリアレイ１００を示すブロック図である。分離したエレメントとして表されるが、メモリアレイ１００と冗長性アレイ１１０がシングルエレメントとして統合され得ることが理解されよう。いわば、冗長性アレイ１１０は、メモリアレイ１００と同数のロウ、しかし、比較的少ない数のコラムを有するメモリの必須なもう１つのブロックである。冗長性アレイ１１０は、以下に記載されるように冗長性スキームに利用される。
【００２１】
図３Ａは、本発明の一実施形態に従った例示的なメモリセル３００を表す。この実施形態において、メモリセル３００は、中にソース及びドレイン領域が形成される基板３１０を含むフローティングゲートメモリセルである。一般的に、メモリセル３００は、又、第１酸化層３２０ａ、ストレージエレメント３３０（例、フローティングゲート）、第２酸化層３２０ｂ、及びコントロールゲート３４０を含む。この実施形態において、ストレージエレメント３３０は、シングルビットを記録するために利用される。メモリセル３００のようなメモリセルは、この技術分野で知られる。
【００２２】
図３Ｂは、本発明の一実施形態に従った適切なミラービットメモリセル３５０の表示である。この実施形態において、メモリセル３５０は、基板３６０、第１酸化層３７０ａ、ストレージエレメント３８０（例、フローティングゲートメモリ）、第２酸化層３７０ｂ、及びコントロールゲート３９０を含む。個別のソース及び個別のドレインを備えた非対称のトランジスタに基づく図３Ａのメモリセル３００と違って、メモリセル３５０は同様な（選択可能な）ドレイン及びソースを備えた対称的なトランジスタに基づく。また、ミラービットメモリセル３５０は、ビットがストレージエレメント３８０の一方側（一方のサイド）あるいは双方側（双方のサイド）に記録されることを可能にするように構成される。特に、一端電子がストレージエレメント３８０の一方側にストアされると、そのストアされた側に残存し、ストレージエレメントの他方側（他方のサイド）に移動しない。それ故、この実施形態において、２ビットがメモリセル毎に記録され得る。
【００２３】
図４は、本発明の一実施形態に従ったメモリ冗長性スキームを示すメモリアレイ１００の表示である。図示の簡明性を期すために、メモリアレイ１００のコラム（ビット線）のみが示される。また、メモリアレイ１００の２つの入力／出力（Ｉ／Ｏ）ブロックの（Ｉ／Ｏ０及びＩ／Ｏ１）のみが示されるが、メモリアレイは、通常、２つよりも多い入力／出力（Ｉ／Ｏ）ブロック含むことが理解されよう。加えて、各入力／出力（Ｉ／Ｏ）ブロックは、サブＩ／Ｏに区分され得る（図５参照）。
【００２４】
本文に記載されるように、Ｉ／ＯブロックあるいはＩ／Ｏグループ（あるいは単に“Ｉ／Ｏ”）が、シングルＩ／Ｏパッドあるいはポートに結合される（例、ゲートされる）幾つかのコラムを含む。図４には、Ｉ／Ｏ０がＩ／Ｏパッド４０１に結合され、Ｉ／Ｏ１はＩ／Ｏパッド４０２に結合されることが示される。各Ｉ／Ｏは、既知の方法のＩ／ＯＣＡＭ（アドレス可能なメモリコンテント）を用いて固有に識別可能である。例えば、１６のＩ／Ｏに関して、４つのＣＡＭが各Ｉ／Ｏを固有に識別するために利用される。
【００２５】
一実施形態において、Ｉ／Ｏ毎（Ｎ＝３２）には３２コラムが配されている。図４に示されるコラムは、金属−２ビット線であることが注目されよう。各金属−２ビット線に関連付けられるのは、２金属−１線である。例えば、Ｎ＝３２の場合、Ｉ／Ｏ毎に６４金属−１ビット線がある。図３Ａによって例示されたメモリアーキテクチャにおいて、メモリアレイ１００がＩ／Ｏ毎のワード線毎に６４ビットの情報を記録し得る。図３Ｂによって例示されたメモリアーキテクチャ（ミラービットアーキテクチャ）において、メモリアレイ１００は、Ｉ／Ｏ毎のワード線毎に６４ビットの情報を記録し得る。
【００２６】
図４を参照すると、メモリアレイ１００が、冗長性アレイ１１０と通信を行うのが示される。冗長性アレイ１１０は、幾つかのコラムを含む。冗長性アレイ１１０は、幾つかのエレメントを有し、各エレメントは幾つかのコラムを有するものとして編成され得る。例えば、冗長性アレイ１１０は、５コラムのシングルエレメントを各々含み得るか、あるいは５コラムの２エレメントを各々含み得るかの何れかである。冗長性アレイ１１０は、エレメントの全ての数で編成されるものとしてコラムの全ての数を含み得る。
【００２７】
本発明の様々な実施形態に従って、冗長性ウィンドウ４１０が、冗長性アレイ１１０のエレメントにおけるコラム数と等しいかあるいはより少ない数の隣接コラムグループを選択することによって定義される。論考を容易にするために、冗長性アレイ１１０は５コラムのシングルエレメントを有するように仮定し、冗長性ウィンドウ４１０も５コラムを含むものとして以下に記載される。しかし、冗長性ウィンドウ４１０におけるコラム数は任意であり、これは冗長性アレイ１１０のコラム数に依存する。
【００２８】
本発明の実施形態に従った冗長性ウィンドウ４１０は、特定の（欠陥）コラムの一方側に少なくとも１コラムがあり、欠陥コラムの他方側にもう１つのコラムがあるように選択することによって定義される。通常、冗長性ウィンドウ４１０は、欠陥コラムの各側に１より多いコラムを含む。例えば、コラムＮのようなコラムは、欠陥あるいは故障であると識別され得る（コラムＮは他の幾つかの理由によって選択され得るが）。本発明の実施形態において、冗長性ウィンドウ４１０は、コラムＮ及びコラムＮの双方側に隣接するコラムを含む（例、一方側にコラムＮ−２及びＮ−１、他方側にＮ＋１及びＮ＋２）。一実施形態において、コラムＮが冗長性ウィンドウ４１０において中心となるように、欠陥コラムの一方側に選択されるコラムの数は、欠陥コラムのもう他方側に選択された数と等しい（例、コラムＮ）。冗長性ウィンドウは、Ｉ／Ｏブロック内に全体的に配置され得るし、Ｉ／Ｏブロック全体を含み得るか、あるいは２つの隣接するＩ／Ｏブロックからのコラムを含み得る。この後者の例は、図４に示される。
【００２９】
本発明の実施形態において、冗長性ウィンドウ４１０は、冗長性ウィンドウの境界の１つに対応するアドレスを特定することによって定義される。１スキームは、図５に関連して以下に記載される。他のスキームは、冗長性ウィンドウを定義するために利用され得る。例えば、コラムＮ−２（あるいはＮ＋２）に対応するアドレスは、冗長性ウィンドウの一方の境界を識別するために利用され得る。冗長性ウィンドウ４１０内のコラム数が分かっているので、冗長性ウィンドウに含まれる他のコラムは、コラムＮ−２のアドレスから判断され得る（あるいはコラムＮ＋２）。もう１つの例として、冗長性ウィンドウ４１０における各コラムのアドレスが利用され得るし、あるいは冗長性ウィンドウ４１０における境界の双方のアドレスが利用され得る。欠陥コラム（例、コラムＮ）が冗長性ウィンドウの中心に位置する実施形態において、コラムＮのアドレスが冗長性ウィンドウを定義するために利用され得る。同じ数のコラムがコラムＮの両側にも位置するためである。
【００３０】
上述したように、本発明の実施形態において、図４の冗長性ウィンドウ４１０が欠陥コラムの各側に少なくとも１コラムがあるように定義され得る。そのような場合、冗長性ウィンドウ４１０の境界において機能コラム（欠陥ではないコラム）が位置する。一実施形態において、欠陥コラムの各側にある少なくとも１コラムのメモリセルがプログラムされる。そのような一実施形態において、冗長性ウィンドウ４１０の境界におけるコラム内のメモリセルのみがプログラムされる。もう１つの実施形態において、冗長性ウィンドウ４１０内の全ての機能コラムにおけるメモリセルがプログラムされる。そのような場合、機能及びプログラムコラムのバリアは、欠陥コラムと冗長性ウィンドウ４１０に隣接する（外部の）コラム間に実効的に配置される。
【００３１】
一実施形態において、冗長性ウィンドウ４１０におけるメモリセルのプログラミングは、それらのセルに“０”（ゼロ）をライティングすることによって満たされる。冗長性ウィンドウ４１０におけるコラムをプログラミングすることによって、これらのコラムは、メモリアレイ１００が繰り返し消去されなければならない過消去にさらされない。従って、これらのコラムは、他の、隣接するコラムのリーディング中、的確にプレチャージされる。例えば、コラムＮ−２が、冗長性ウィンドウ４１０内（の端）において位置したとしてもプログラムされるので、コラムＮ−３のリーディング中、十分にプレチャージされるので、コラムＮ−３に関連するメモリセルのリーディング中、生じ得るエラーを排除及び減少する。
【００３２】
図５に本発明の一実施形態に従ってメモリアレイ部分（例、図４のメモリアレイ４００）のビットマップ５００を示す。特定的に、ビットマップ５００は、ミラービットメモリアレイの１つのＩ／Ｏを表す。本発明の実施形態において、ビットマップ５００のＩ／Ｏは、４つのサブＩ／Ｏ、５０１，５０２，５０３及び５０４として編成される。本発明の実施形態は、図３Ｂに例示されることによってミラービットアーキテクチャの本文が以下に記載されるが、本明細書は図３Ａによって例示されたようなアーキテクチャのような他のメモリアーキテクチャまで適用され得ることが理解されよう。
【００３３】
以下の論考において、冗長性ウィンドウを定義するための１スキームが記載される。記載されているスキームにおいて、冗長性ウィンドウの開始点が識別される。冗長性ウィンドウにおけるコラムの数が分かっているので、冗長性ウィンドウは、開始点から定義され得る。上述したように、他のスキームが本発明の実施形態に従って冗長性ウィンドウを定義するために利用され得る。
【００３４】
この実施形態において、図５のビットマップ５００によって表示されるＩ／Ｏは、６４メモリセル（６４金属−１コラムあるいは３２金属−２コラム）に１２８ビットを記録する性能を有する。そのような場合、７アドレス（Ａ０〜Ａ６）が特定のビットを識別するために求められる。各アドレスＡ０〜Ａ６は、論理０あるいは論理１を表す。ビットマップ５００は、７アドレスＡ０〜Ａ６を利用して識別された論理ロケーションと同様に各ビットの実際の（物理的な）ロケーションを示す。
【００３５】
冗長性ウィンドウの開始点を定義するために利用されるアドレスの数は、求められる離散性の度合いに依存する。ビットレベルにおける冗長性ウィンドウの開始を特定することが求められれば、７アドレスが、冗長性ウィンドウの開始点を定義するために利用され得る。一実施形態において、冗長性ウィンドウの開始点は、特定的にアドレスＡ６，Ａ５，Ａ１及びＡ０の４アドレスを利用して特定され得る。図５に示されるように、これら４アドレスを利用して、８ビットの特定のグループが識別される（しかし、このグループにおける８ビットは、これら４アドレスを用いただけでは個々に識別可能ではない）。例えば、アドレスＡ６，Ａ５，Ａ１は、それぞれ０，１，０，０に等しく、物理的なロケーション８〜１５及び論理ロケーション３２，３６，４０，４４，４８，５２，５６及び６０が識別される。冗長性ウィンドウの開始点（“Ａ”）は、それらによって識別された４コラム（８ビット）を含むものとして識別される。また、４アドレスＡ６，Ａ５，Ａ１及びＡ０は、“Ｖ”として識別される、ビットマップ５００における特定のポジションを識別するために用いられ、８ビットのグループの開始点に対応するものとして識別される。
【００３６】
冗長性アレイにおけるコラム数に依存して、冗長性ウィンドウは、隣接するＩ／Ｏ内に延長し得る。例えば、前述した方法と同様に、開始点“Ｂ”を有する冗長性ウィンドウが、Ａ６，Ａ５，Ａ１及びＡ０が等しい、対応する１，０，１，１によって識別され得る。冗長性ウィンドウが、１６コラムを含むものとして定義された場合、開始点“Ｂ”を有する冗長性ウィンドウは、もう１つのＩ／Ｏに延長し得る（図５に示されない）。
【００３７】
本発明の実施形態に従って、冗長性ウィンドウ及びその開始点を選択した直後、定義された冗長性ウィンドウは、冗長性ウィンドウと関連付けられるＣＡＭを特定することによって固定される。これらのＣＡＭは、上述したＩ／ＯＣＡＭと区別するためにＡＤＤＣＡＭとして以下に称される。開始点が、上述したように定義されれば（即ち、４アドレスを用いて）、４ＡＤＤＣＡＭが冗長性ウィンドウを定義するために利用され得る。ＡＤＤＣＡＭの数は、概して、冗長性ウィンドウを特定するときに求められる離散性のレベルに対応する。
【００３８】
メモリアレイからライティング情報あるいはリーディング情報が利用されるとき、メモリアレイにおけるアドレスは、通常、この利用によって特定される。説明の簡明性を期すために、このアドレスは、以下に“ユーザ特定アドレス”と称され得る。本発明の一実施形態に従って、ＡＤＤＣＡＭは、ユーザ特定アドレスが結果として冗長性ウィンドウ（従って、冗長性アレイにおいて）にヒットをもたらすか否かを判断するために利用され得る。冗長性アレイから情報をリーディングするとき、ユーザ特定アドレスの組み合わせ、ＡＤＤＣＡＭ及びＩ／ＯＣＡＭが、冗長性アレイにおけるデータを適切な１／Ｏバッドに向けるために利用され得る。
【００３９】
図６は、本発明の一実施形態に従ったメモリの方法を示すフロー図６００である。フロー図６００に特定的なステップが開示されるが、そのようなステップは、例示のためである。即ち、本発明は、他のステップあるいはフロー図６００に記載されるステップの様々な変化を実行するためにかなり適切である。フロー図６００におけるステップは、表示された順序とは異なる順序で実行され得るし、必ずしも表示されたシーケンスにおいて実行されることが必須ではないことが理解されよう。
【００４０】
本発明の実施形態におけるステップ６１０において、メモリアレイにおける特定のコラムが識別される。例えば、メモリアレイにおける故障あるいは機能しないコラムは、特定のコラムとして識別され得る。図４の実施形態において、コラムＮが、特定のコラム（例、欠陥）として識別される。
【００４１】
本発明の実施形態における図６のステップ６２０において、冗長性ウィンドウが欠陥コラムの各側におけるコラム（特定的に隣接するコラム）を選択することによって定義される。一実施形態において、欠陥コラムの各側において少なくとも１コラムが位置するが、通常、欠陥コラムの各側において１より多いコラムがある。もう１つの実施形態において、欠陥コラムは、冗長性ウィンドウにおいて欠陥コラムのいずれかの側に同数のコラムを有して実質的に中心に位置する。更なるもう１つの実施形態において、冗長性ウィンドウは、Ｉ／Ｏグループあるいはコラムブロックのコラムを含む。
【００４２】
一実施形態におけるステップ６３０において、冗長性ウィンドウのメモリセルの全てがプログラムされる。そのような一実施形態において、欠陥コラムの各側に少なくとも１コラムがプログラムされる。もう１つのそのような実施形態において、冗長性ウィンドウの境界におけるコラムのみがプログラムされる。更なるもう１つの実施形態において、冗長性ウィンドウの全ての機能コラムがプログラムされる。
【００４３】
図７Ａは、本発明の一実施形態に従った、アドレスが冗長性ウィンドウに関連するか否かを判断する方法を示すフロー図７００である。特定のステップがフロー図７００に開示されているが、そのようなステップは、例示である。即ち、本発明は、フロー図７００に記載されたステップの他のステップあるいは変化に富むステップを実行するためにかなり適切である。フロー図７００におけるステップは、表示された順序とは異なる順序で実行され得るし、フロー図７００のステップが必ずしも表示されたシーケンスで実行されることは必須ではないことが理解されよう。
【００４４】
図７Ａにおけるステップ７１０において、リードあるいはライトオペレーション中、（例えば、使用によって特定されたユーザ特定アドレスのような）アドレスが、メモリアレイのメモリロケーションに関して受信される。このアドレスは通常、メモリアレイにおけるロケーションを指摘していることに注目することは重要である。アドレスに関連する情報の実際のアドレスがメモリアレイにおいてあるいは冗長性アレイにおいてかの何れに存在するか、必ず実行されているオペレーションに関して透明である、つまり関連しないことが必須である。
【００４５】
ステップ７２０において、実際のメモリロケーションがステップ７１０に受信されたアドレスに対応するか判断される。上述したように、一実施形態において、冗長性ウィンドウはが求められる離散性のレベルに依存するアドレスの幾つかの数を用いて定義され得る。そのような一実施形態において、ＡＤＤＣＡＭと称される４アドレスは、冗長性ウィンドウの開始点を定義するために利用される。この実施形態において、ステップ７１０において受信されたアドレスは、冗長性ウィンドウ内にヒットがあるか否かを判断するためにＡＤＤＣＡＭと比較され得る。冗長性ウィンドウにおけるヒットは、アドレスに対応する実際のメモリロケーションが冗長性アレイにあることを示し、そうでないとき、実際のメモリロケーションがメモリアレイにあることを示す。
【００４６】
リードオペレーションにおいて、図７Ａのステップ７１０に受信されたアドレスに対応する情報の実際のメモリロケーションは、情報がメモリアレイ及び／あるいは冗長性アレイからリードされた後、判断され得ることに注目されたい。このシナリオは図７Ｂと関連して更に記載される。
【００４７】
図７Ｂは、本発明の一実施形態に従ったメモリアレイあるいは冗長性アレイから情報をリーディングするための方法のフロー図７３０を示す。本発明の実施形態における図７Ｂのステップ７４０に関連して、リードオペレーションに関するアドレスが受信される。しかし、このプロセスにおけるこの点において、アドレスが冗長性ウィンドウ内（従って冗長性アレイに関して）のロケーションに対応する否かに関連する判断は行われない。
【００４８】
本発明の実施形態に従ってステップ７５０において、冗長性アレイにおける情報がリードされる。即ち、一実施形態において、冗長性アレイにおける情報は、常にリードオペレーション中リーディングされる。
【００４９】
本発明の実施形態に従ってステップ７６０で、ステップ７４０において受信されたアドレスによって識別されるメモリアレイ内のロケーションにて情報がリーディングされる。メモリアレイ内のロケーションが欠陥であるコラムに対応すれば、ステップ７６０で情報がリーディングされ得ない。メモリアレイにおけるロケーションが冗長性ウィンドウ内のコラムと対応すれば、情報はリーディングされ得る。しかし、この情報は有効である得るし、あり得ないかの何れかである。例えば、上述されたように冗長性ウィンドウにおける機能コラムが、ゼロのみでプログラムされ得るし、冗長性ウィンドウ内のコラムの幾つかのみがおそらくプログラムされる。これらの事例は、下記のステップ７７０によって解決される。ステップ７５０とステップ７６０は、並行して、必ず同時に実行され得ることに注目されたい。
【００５０】
本発明の実施形態に従ってステップ７７０において、（ステップ７４０からの）アドレスが冗長性ウィンドウ内にあるロケーションに対応するか否かに関しての判断が行われる。アドレスが冗長性ウィンドウ内のロケーションに対応すれば、リードオペレーションにおいて要請された情報が冗長性アレイに配置される。従って、ステップ７７２において、ステップ７５０で冗長アレイからリーディングされた情報がステップ７６０にてメモリアレイからリーディングされた情報の代わりに利用される。アドレスが冗長ウィンドウの外部のメモリロケーションに対応すれば、リードオペレーションに要求された情報がメモリアレイに配置される。従って、ステップ７７４において、ステップ７６０でメモリアレイからリーディングされた情報は、ステップ７５０にて冗長アレイからリーディングされた情報の代わりに利用される。一実施形態において、ステップ７７２及びステップ７７４は、マルチプレックスオペレーションを用いて実現される。
【００５１】
図８Ａは、本発明の実施形態に従って、入力／出力パッドの何れに冗長データが送信されなければならないかを判断するための方法を示すフロー図８００である。図８Ｂは、フロー図８００を実装するための論理回路の一実施形態を示すが、そのようなステップは、例示的なものである。即ち、本発明はフロー図８００に記載以外の他のステップあるいは変化に富むステップを実行するためにかなり適切である。フロー図８００におけるステップが表示された順序とは異なる順序で実行され得るし、フロー図８００におけるステップが必ずしも表されたシーケンスにおいて実行されないことが理解されよう。
【００５２】
図８Ａにおけるステップ８１０において、図７Ａ及び図７Ｂと関連して上記されたプロセスを利用することによって、冗長アレイにおけるメモリロケーションがリードオペレーションにおいて識別され、配置される。上述されたように、冗長性ウィンドウは、１より多い数のＩ／Ｏブロックに延長し得る。そのような場合、このロケーションからリーディングされた情報が適切なＩ／Ｏパッドあるいはポートに向けられ得るように、Ｉ／Ｏブロックの何れが冗長アレイにおいて識別されたロケーションと関連付けられるかを判断することは必須であり得る。
【００５３】
従って、図８Ａのステップ８２０において、適切なＩ／Ｏブロックが判断される。一実施形態において、図８Ｂによって示されるような論理回路を利用して、適切なＩ／Ｏブロックを識別するためにユーザ特定アドレス、様々なＩ／Ｏブロックを定義するＩ／ＯＣＡＭと、冗長性ウィンドウを定義するＡＤＤＣＡＭについての比較が行われ得る。従って、冗長アレイからリーディングされた情報が適切なＩ／Ｏパッドに向けられ得る。
【００５４】
本発明の上述した特定的な実施形態が説明及び記載目的のために表されている。これらは、本発明の開示された形式に正確に徹底及び制限することが意図されていないし、上述した教示から多くの修正、改変が可能であることが明りょうである。これらの実施形態は、本発明の原理及び実際的な利用を最適に説明するために選択され、記載されており、当業者にとって、考えられる特定的な利用に適している多様な改変によって本発明及び様々な実施形態を利用することが可能である。本発明の趣旨は、添付の請求項及びそれらの均等物によって定義されることが意図される。添付の図面は、本明細書に包含され、一部を形成するものであり、本発明の実施形態を説明するものであり、明細書とともに本発明の趣旨を説明するために有用である。
【図面の簡単な説明】
【００５５】
【図１】メモリ冗長性スキームを示すメモリアレイの一部の説明図。
【図２Ａ】本発明の実施形態に従って実装され得るメモリアレイを表す。
【図２Ｂ】本発明の一実施形態に従ったメモリアレイ及び冗長アレイを示すブロック図である。
【図３Ａ】本発明の一実施形態に従った例示的なメモリセルを表す。
【図３Ｂ】本発明の一実施形態に従った例示的なミラービットメモリセルを表す。
【図４】本発明の一実施形態に従った例示的なメモリ冗長性スキームを示すメモリアレイを表す。
【図５】本発明の一実施形態に従ったメモリブロックの例示的な入力／出力ブロックの（物理的及び論理的）ビットマップを表す。
【図６】本発明の一実施形態に従ったメモリ冗長性の方法を示すフロー図である。
【図７Ａ】本発明の一実施形態に従って、メモリが冗長性ウィンドウと関連付けられるか否かを判断するための方法を示すフロー図である。
【図７Ｂ】本発明の一実施形態に従って、メモリアレイあるいは冗長アレイの情報をリーディングするための方法を示すフロー図である。
【図８Ａ】本発明の一実施形態に従って、何れの入力／出力パッドに冗長性データが送信されなければならないかを判断する方法を示すフロー図である。
【図８Ｂ】本発明の一実施形態に従って、何れの入力／出力パッドに冗長性データが送信されなければならないかを判断する論理回路を示す図である。
【図１】
0004461281.tif 000002
【図２Ａ】
0004461281.tif 000003
【図２Ｂ】
0004461281.tif 000004
【図３Ａ】
0004461281.tif 000005
【図３Ｂ】
0004461281.tif 000006
【図４】
0004461281.tif 000007
【図５】
0004461281.tif 000008
【図５−Ｃ】
0004461281.tif 000009
【図６】
0004461281.tif 000010
【図７Ａ】
0004461281.tif 000011
【図７Ｂ】
0004461281.tif 000012
【図８Ａ】
0004461281.tif 000013
【図８Ｂ】
0004461281.tif 000014
【図８Ｂ−Ｃ】
0004461281.tif 000015