(57)【特許請求の範囲】
【請求項１】
磁気メモリセルアレイを有する設定自在構成の(configurable)ＭＲＡＭデバイスであって、
前記磁気メモリセルアレイは、縦列および横列方向に配置された複数の磁気メモリセルを備えた複数の磁気メモリセルブロックを備え、各磁気メモリセルブロックは、第１のアレイ部分と第２のアレイ部分を有し、
前記第１のアレイ部分は、ノーマル動作時にノーマル横列デコーダを用いて縦列デコーダを介して読出アクセスおよび書込アクセスが可能な磁気メモリセルを含み、
前記第２のアレイ部分は、電源投入初期化の際にのみ読出アクセスが可能な磁気メモリセルを含み、前記磁気メモリセルアレイの物理的動作の変更(altering the physical operation)に用いる設定データ(configuration data)を記憶するのに使用され、
電源投入初期化の際にアクティブにされ、前記第２のアレイ部分のみをイネーブルとして選択し、前記第２のアレイ部分の横列デコーダとして機能し、ワード線選択信号を供給する設定値選択部と、
外部電源初期化信号を受信し、前記第２のアレイ部分の選択された全ての横列の前記設定データを読み出すために前記第２のアレイ部分と前記縦列デコーダを介して通信しつつ電源投入初期化を開始する状態機構部と、
前記設定データを受信しラッチするために前記第２のアレイ部分と通信する設定データラッチ部と、
磁気メモリセルに、情報を書き込むための書込用ビット線電流および書込用ワード線電流を供給する、プログラム可能な電流源と、
書込動作時において、磁気メモリセルに前記書込用ワード線電流を供給するタイミングと前記書込用ビット線電流を供給するタイミングとの間の遅延時間を調整する、プログラム可能なタイミング制御部と
を備え、
前記書込用ビット線電流および前記書込用ワード線電流の電流値は、前記設定データラッチ部から読み出された前記設定データにより制御され、
前記タイミング制御部における遅延ファクターは、前記設定データラッチ部から読み出された前記設定データにより制御され、
前記設定データは、固定領域と可変領域とに分割され、
前記固定領域は、前記プログラム可能な電流源における電流値、およびプログラム可能なタイミング制御部における遅延ファクターを設定するための設定データを含み、
前記可変領域は、冗長横列への置換のために設定データに書き込まれた欠陥アドレスの横列の数を示すヘッダデータを含む
ＭＲＡＭデバイス。
【請求項２】
前記電流源が、磁気メモリセルから情報を読み出すための読出ビット線電流をも供給するものである
請求項１に記載のＭＲＡＭデバイス。
【請求項３】
テストモード時においては、前記電流源の動作が外部からの入力によって制御される
請求項１に記載のＭＲＡＭデバイス。
【請求項４】
前記タイミング制御部は、読出動作時において、磁気メモリセルアレイから検出されたラッチデータのタイミングを制御する
請求項１に記載のＭＲＡＭデバイス。
【請求項５】
テストモード時においては、前記タイミング制御部の動作が外部からの入力によって制御される
請求項１に記載のＭＲＡＭデバイス。
【請求項６】
各磁気メモリセルブロックは、ノーマル動作時に読出アクセスおよび書込アクセスが可能に構成されると共に前記設定データにより前記第１のアレイ部分の磁気メモリセルに欠陥ありと判断されたときに活性化される冗長セル(redundant cells)としてのみ機能する磁気メモリセルを含む第３のアレイ部分をさらに有する
請求項１に記載のＭＲＡＭデバイス。
【請求項７】
電源投入時の初期化の際に前記設定データを読み出す処理が行われるようになっており、この初期化時読出処理が、所定バイト数の設定データを読み出して、前記冗長セルのアドレスによって置き換えられた欠陥セルのアドレス数を判定するステップと、すべての欠陥セルアドレスを読み出すステップとを含む
請求項６に記載のＭＲＡＭデバイス。
【請求項８】
前記第３のアレイ部分における前記冗長セルからなる冗長列(redundant row)がイネーブル状態のときには、前記第１のアレイ部分におけるノーマル列(normal row)がディスエーブル状態である
請求項６に記載のＭＲＡＭデバイス。
【請求項９】
前記第２のアレイ部分は、読出動作時のビット線基準値(bit line reference values)を与えるものである
請求項１に記載のＭＲＡＭデバイス。
【請求項１０】
前記タイミング制御部は、磁気メモリセルに対して、前記書込用ワード線電流を供給している期間に、前記書込用ビット線電流を供給するように前記遅延時間を設定する
請求項１に記載のＭＲＡＭデバイス。
【請求項１１】
前記タイミング制御部は、磁気メモリセルに対して、前記書込用ワード線電流を供給し終えた後に、前記書込用ビット線電流を供給し終えるように前記遅延時間を設定する
請求項１０に記載のＭＲＡＭデバイス。
【請求項１２】
縦列および横列方向に配置された複数の磁気メモリセルを備えた複数の磁気メモリセルブロックを備え、各磁気メモリセルブロックは、第１のアレイ部分と第２のアレイ部分を有し、第１のアレイ部分は、ノーマル動作時にノーマル横列デコーダを用いて縦列デコーダを介して読出アクセスおよび書込アクセスが可能な磁気メモリセルを含むものであり、第２のアレイ部分は、電源投入時の初期化の際にのみ読出アクセスが可能な磁気メモリセルを含み、磁気メモリセルアレイの物理的動作の変更に用いる設定データを記憶するのに使用されるものであり、電源投入初期化の際にアクティブにされ、前記第２のアレイ部分のみをイネーブルとして選択し、前記第２の部分の横列デコーダとして機能し、ワード線選択信号を供給する設定値選択部と、外部電源初期化信号を受信し、前記第２のアレイ部分の選択された全ての横列の前記設定データを読み出すために前記第２のアレイ部分と前記縦列デコーダを介して通信しつつ電源投入初期化を開始する状態機構部と、前記設定データを受信しラッチするために前記第２のアレイ部分と通信する設定データラッチ部と、磁気メモリセルに、情報を書き込むための書込用ビット線電流および書込用ワード線電流を供給する、プログラム可能な電流源と、書込動作時において、磁気メモリセルに前記書込用ワード線電流を供給するタイミングと前記書込用ビット線電流を供給するタイミングとの間の遅延時間を調整する、プログラム可能なタイミング制御部とを備えたＭＲＡＭデバイスの制御方法であって、
前記第２のアレイ部分に前記設定データを記憶するステップと、
前記外部電源初期化信号を受信し、ＭＲＡＭデバイスの電源投入初期化を行うステップと、
前記磁気メモリセルアレイの物理的動作の設定および可変の設定データの横列の数の決定のために、前記第２のアレイ部分から前記設定データラッチ部に固定の設定データを読み出すステップと、
前記設定データラッチ部から読み出された前記固定の設定データにより前記書込用ビット線電流および前記書込用ワード線電流の電流値を調整するステップと、
前記設定データラッチ部から読み出された前記固定の設定データにより前記遅延時間を調整するステップと、
冗長横列への置換のために設定データに書き込まれた欠陥アドレスの横列の数を示すヘッダデータを含む可変の設定データを読み出すステップと、
ノーマル横列における欠陥横列を冗長横列に置き換えるために、前記可変の設定データにおける欠陥アドレスから取得した欠陥横列の位置に基づいて、前記磁気メモリセルアレイの冗長横列デコーダをプログラミングするステップと、
電源投入初期化を終了するステップと
を含むＭＲＡＭデバイスの制御方法。
【請求項１３】
前記第２のアレイ部分に前記設定データを記憶するステップに先立ち、テストモードにおいて外部からの入力によって前記電流源を制御することによりこの電流源の動作をテストするステップをさらに含む
請求項１２に記載のＭＲＡＭデバイスの制御方法。
【請求項１４】
前記第２のアレイ部分に前記設定データを記憶するステップに先立ち、テストモードにおいて外部からの入力によって前記タイミング制御部を制御することによりこのタイミング制御部の動作をテストするステップをさらに含む
請求項１２に記載のＭＲＡＭデバイスの制御方法。
【請求項１５】
各磁気メモリセルブロックは、ノーマル動作時に読出アクセスおよび書込アクセスが可能に構成されると共に前記設定データにより前記第１のアレイ部分の磁気メモリセルに欠陥ありと判断されたときに活性化される冗長セルとしてのみ機能する磁気メモリセルを含む第３のアレイ部分をさらに有する
請求項１２に記載のＭＲＡＭデバイスの制御方法。
【請求項１６】
磁気メモリセルに対して、前記書込用ワード線電流を供給している期間に、前記書込用ビット線電流を供給するように前記遅延時間を設定するステップをさらに含む
請求項１２に記載のＭＲＡＭデバイスの制御方法。
【請求項１７】
磁気メモリセルに対して、前記書込用ワード線電流を供給し終えた後に、前記書込用ビット線電流を供給し終えるように前記遅延時間を設定するステップをさらに含む
請求項１６に記載のＭＲＡＭデバイスの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は概して非揮発性メモリデバイスに係わり、特に設定自在構成の(configurable)磁気ランダムアクセスメモリ（ＭＲＡＭ）デバイスおよびその制御方法に関する。
【背景技術】
【０００２】
従来より、磁気メモリデバイスは、電気ベースのメモリを代替する磁気ベースのメモリとして知られている。磁気メモリは一般的に強磁性の材料で形成される。ここで述べられる特定タイプの磁気メモリは、２値のデータ状態（“０”と“１”）を記憶させる強磁性層の磁気的分極に依拠すると共に、記憶状態を読み出すためのトンネル磁気抵抗（ＴＭＲ）効果に依拠する。
【０００３】
図１０は、典型的な磁気メモリセル１０の２つの分極状態を表すものである。磁気メモリ１０は二つの強磁性層で構成される。一方の強磁性層１２は軟磁性材料で形成され、もう一方の強磁性層１６は硬磁性材料で形成されている。以下、強磁性層１２および強磁性層１６を、それぞれ、軟磁性層１２および硬磁性層１６と表記する。軟磁性層１２および硬磁性層１６は、それぞれ、図中で各層に示した矢印のような磁気的分極をとり得る。通常動作時において、軟磁性層層１２をメモリ内で発生した磁界にさらすことにより、その磁気的分極を変化させることができる。しかし、硬磁性層１６の磁気的分極は生産後変えることができない。そのため、硬磁性層１６はピンド層と呼ばれ、軟磁性層１２はフリー層と呼ばれる。以下、軟磁性層１２および硬磁性層１６を、それぞれ、フリー層１２およびピンド層１６とも表記する。
【０００４】
ピンド層１６およびフリー層１２は絶縁層１４で区切られている。したがって、ピンド層１６とフリー層１２との間を流れるあらゆる電流は、絶縁層１４を突き抜けて横切らなければならない。ピンド層１６の磁気的分極の方向に対するフリー層１２の磁気的分極の相対的方向と、メモリスタック１０の実効抵抗値との間には、一定の関係性があることが知られている。図１０（Ａ）に示したように、フリー層１２の分極方向がピンド層１６の分極方向と反対の方向に向いた場合、電流源Ｉc は第１の電圧低下Ｖc ′を生ずる。一方
、図１０（Ｂ）に示したように、フリー層１２の分極方向が逆転すると、電流源ｌc は、
第１の電圧低下とは違った値の第２の電圧低下Ｖｃ″を生ずる。そして、第２の電圧降下Ｖc ″は、第１の電圧降下よりも実質的に小さくなることが知られている。すなわち、フ
リー層１２とピンド層１６の分極方向が互いに逆方向のときは磁気メモリセル１０の実効抵抗値がより高くなり、同方向のときはより低くなる、という２者択一の状態をとる。この現象をトンネル磁気抵抗（ＴＭＲ）効果と呼ぶ。磁気メモリセル１０は一般的に磁気トンネル接合（ＭＴＪ）と呼ばれる。ＴＭＲ効果はＭＴＪデバイスの物理的な二極の状態を区別するために利用可能であるので、これにより２値データを書き込んだり読み出すことが可能である。したがって、磁気メモリセル１０はＭＴＪメモリセル、磁気抵抗セル、または単に磁気メモリセルと呼ばれる。
【０００５】
図１１は、典型的な磁気メモリセル１０の斜視構造を表すものである。一般的な適用例では、無数の磁気メモリセル１０が二次元または三次元アレイとして形成されている。一般的なアレイでは、磁気メモリセル１０は、メモリアレイにおける互いに直交する導電線の交点に形成される。図の例では、導電性のワード線ＷＬ２４は磁気メモリセル１０の下に形成され、導電性のビット線ＢＬ２０は磁気メモリセル１０の上に形成されている。後述の理由によって、ビット線ＢＬ２０は電気的に磁気メモリセル１０に接触している。既に述べたように、磁気メモリセル１０のフリー層の磁気的分極はメモリアレイ内で発生する磁界によって変化させることができる。より具体的には、磁気アレイは、フリー層の分極状態をピンド層と同じ状態および反対の状態に瞬時に変化させることが可能な磁場を発生させる。一般的に、メモリアレイでは、局所的な磁場ＨWLとＨBLを発生させるためにワード線ＷＬ２４とビット線ＢＬ２０を利用する。
【０００６】
電流が何らかの導体に流れるとき、磁界は電荷の移動によって発生する。この磁界は、連続する磁力線が電流方向に垂直となるように導体を取り巻くように発生する。また、磁力線の環状軌道の方向（時計回り、または反時計回り）は導体電流の方向に依存し、磁界の大きさは導体の電流量に比例する。典型的な例では、電流ＩBLがビット線ＢＬ２０に流
れ、ビット線磁界ＨBLを発生させる。同様に、電流ＩWLがワード線ＷＬ２４に流れ、ワー
ド線磁界ＨW を発生させる。図示のように、ビット線とワード線による導体を取り巻く磁力線は、磁気メモリセル１０を横切って２つの方向から交差する。ビット線磁界ＨBLとワード線磁界ＨWLの相互作用を効果的に利用して非選択セルの状態を乱すことなく磁気メモリセル１０のフリー層を特定の方向へ選択的に磁化させ得ることは知られている。これを可能にすべく、ワード線電流ＩWLおよびビット線の電流ＩBLは十分低く保たれるので、選択されたワード線ＷＬ２４およびビット線ＢＬ２０から発生する磁界ＨWLおよびＨBLは、それら自身では磁気メモリセル１０のフリー層の方向を変えるほど強力ではない。ところが、図１１に例示したように磁界がＨWLとＨBLが交点で重なるときには、選択されたセル１０をプログラムする（書き込む）ことができる。
【０００７】
図１２は、多くの磁気メモリアレイで使われている典型的なプログラミング技術を表すものである。このアレイのセクションでは、複数のメモリセルＣ１、Ｃ２、Ｃ３が共通のビット線ＢＬ１に接続されている。各メモリセルに対応してそれぞれワード線ＷＬ１、ＷＬ２、ＷＬ３が設けられている。また、各メモリセルごとに、メモリセルと接地とをつなぐ選択用トランジスタ４４、４６、４８が設けられている。この例では、電流ＩBL1 がビ
ット線ＢＬ１を通って流れると共に電流ＩWLがワード線ＷＬ２を通って流れることによっ
て、メモリセルＣ２が選択的にプログラムされるようになっている。ワード線電流ＩWLの
電流の方向は固定されている。しかし、ビット線電流ＩBL1 の方向性は、メモリセルに書
かれるデータ値（０または１）によって決まる。図示の状態では、スイッチＳＷ１およびＳＷ２により、ビット線電流ＩBL1 （＝プログラミング電流ＩPROG1 ）が左から右へ、そ
して接地へと流れていくことが可能になっている。ビット線電流I BL1 およびワード線電流ＩWLから発生する磁界の組み合わせにより、選択したセルＣ２を第１の２値状態（例え
ば、フリー層の磁化方向がピンド層のそれと逆の状態）にプログラムすることができる。一方、ビット線電流ＩBL1 （＝プログラミング電流ＩPROG2 ）が右から左へ流れるように
スイッチＳＷ１およびＳＷ２がセットされると、セルＣ２は第２の２値状態（例えば、フリー層の磁化方向がピンド層のそれ同方向の状態）にプログラムされる。
【０００８】
上記のプログラミング（書込）方法では、選択されなかったセルを乱すことなく選択されたセルをプログラムすることができる適切な磁界を発生させるのに足る十分な、ビット線電流ＩBL1 とワード線電流ＩWLとの組み合わせ電流量を確保するように注意することが
必要である。プログラミング電流が不十分な場合には、書込速度の低下や書込みの信頼性の低下につながる可能性がある。一方、プログラミング電流が過度の場合には、選択されなかったセルに対して意に反する再書き込みをしてしまう可能性がある。最適な性能を実現させるためには、ビット線のプログラミング電流ＩBL1 とワード線のプログラミング電流ＩWLとの間に適切なバランスが確立されなければならない。また、選択されたセルのプログラミング所要時間に対して必要となる組み合わせ磁界ベクトルを得るために、ビット線電流ＩBL1 とワード線電流ＩWLとの間の相関的なタイミングは重要である。最小限の電力消費で最速の動作を実現させるには、最小の電流ＩBL1 と最小の電流ＩWLとをオーバーラップさせることが望ましい。しかし、電流のオーバーラップが不適切であると、書込み信頼性の低下につながる可能性がある。メモリアレイのプロセスパラメータ（製造要因）はロット間さらにはデバイス間でばらつくことから、製作された膨大な数のメモリアレイを高性能で機能させることは困難である。
【０００９】
図１３は、磁気メモリアレイの典型的なセル読出技術を一般的なアレイ部分について表したものである。読出動作では、読出電流ＩREADがビットラインＢＬ１を通って流れるようにスイッチＳＷ１がセットされる。読出セルを選択するには、セル選択用のトランジスタをオンする。この図では、選択用トランジスタ４４をオンすることにより、セルＣ１の一つの層から接地までの間に低抵抗の電流経路が形成される。これにより、ビット線電流ＩBL1 は、ビット線ＢＬ１からセルＣ１およびトランジスタ４４を通って接地へと流れる。その結果、セルＣ１を通る電流はトンネル磁気抵抗（ＴＭＲ）効果を示し、セルＣ１を横切る方向に生じる電圧降下量がフリー層とピンド層との間の相対磁気方向によって変化する。スイッチＳＷ２がセットされると、選択されたセルＣ１に発生した電圧降下にほぼ相当するビット線ＢＬ１の電圧ＶBL1 は、センスアンプ（センスコンパレータ）５０に入
力され、基準電圧ＲＥＦと比較される。ビット線電圧ＶBL1 が基準電圧ＲＥＦよりも大き
い場合、セルＣ１の読出状態ＤOUT は２値の一方の値ということになる（例えば論理値“０”）。ビット線電圧ＶBL1 が基準電圧ＲＥＦよりも小さい場合、セルＣ１の読出状態Ｄ
OUT は２値のもう一方の値ということになる（例えば論理値“１”）。
【００１０】
上記の読出方法では、選択セルを横切る方向に最適な電圧降下を発生させるのに足る十分な読出電流ＩREADを確保するように注意することが必要である。読出電流が不十分な場合には、電圧降下量が小さすぎることから、磁化方向が同方向のセルと逆方向のセルとの間での十分な電圧差を生み出すことができなくなる可能性がある。このことは読出動作速度の低下や読出信頼性の低下につながる可能性がある。一方、読出電流が過度の場合には、メモリデバイスにおける過度の電力消費を招き、さらには、ビット線近くに過度の磁界を発生させ、不測の（意図しない）書き込みを招く可能性もある。さらに、高い信頼性をもって高速読出動作を実現させるためには、ビット線電流ＩBL1 とセンスアンプ５０の出力ＤOUT のデジタルサンプリングと間の相対的なタイミングが重要である。既に述べたように、メモリアレイのプロセスパラメータはロット間さらにはデバイス間でばらつくことから、製作された膨大な数のメモリアレイを高性能で機能させることは困難である。
【００１１】
以上の点に関連して先行技術を調査したところ、ＭＲＡＭデバイスの構造および非揮発性メモリの構成に関して、以下のような特許文献１〜７が見つかった。
【００１２】
Goglらによる特許文献１には、単独のスイッチングトランジスタが複数のＴＭＲメモリセルに割当てられているＭＲＡＭの構造について記載されている。その結果出来上がったＭＲＡＭアレイの所要スペースは減少する。Bohmらによる特許文献２は、接続ノードを介して２つのメモリセルアレイに単独のラインドライバ回路を割り当てることによりアレイ全体としてドライバ回路の所要スペースを減らすようにしたＭＲＡＭの構造について開示している。
【００１３】
Pochmullerによる特許文献３は、複数のメモリセルブロックにそれぞれ異なる動作電圧を供給することで有効な電圧範囲を最適に活用できるようにしたＭＲＡＭ構造について開示している。Freitag らによる特許文献４には、選択セルの近くにある非選択セルのビット線に補償電流を供給することにより、漂遊磁界（stray magnetic field）の影響を打ち消して、その非選択セルへの不測の（意図しない）書き込みを阻止するようにしたＭＲＡＭデバイスが開示されている。Lammers らによる特許文献５は、冗長セルを有するＭＲＡＭの構造について開示している。主セルアレイおよび冗長アレイは、同じチップ上の複数の面または他の構造に設けられている。
【００１４】
Freitagらによる特許文献６には、各ユニットが、並列接続された選択用トランジスタおよびＭＴＪセルを備えるようにしたＭＲＡＭアレイの構造について記載されている。Hosonoらによる特許文献７は、初期設定機能を有する不揮発性半導体メモリデバイスについて開示している。初期設定データは非揮発性メモリ（ＥＥＰＲＯＭ）に保存され、起動時に読出される。初期設定データは、欠陥アレイアドレス、書込および消去用の制御データ、ならびにチップ識別コードを含むことがある。
【００１５】
【特許文献１】米国特許第６, ４２１, ２７１号
【特許文献２】米国特許第６, ４７３, ３３５号
【特許文献３】米国特許第６, ４８７, １０８号
【特許文献４】米国特許第６, ５７７, ５２７号
【特許文献５】米国特許第６, ７８１, ８９６号
【特許文献６】米国特許第６, ７９１, ８７１号
【特許文献７】米国特許第６, ４６２, ９８５号
【発明の開示】
【発明が解決しようとする課題】
【００１６】
しかしながら、上記の特許文献１〜７には、設定自在構成のＭＲＡＭデバイスについての有効な提案はなされていない。
【００１７】
本発明は係る課題に鑑みてなされたもので、その主目的は、実効性が高く製造適性のあるＭＲＡＭデバイスおよびその制御方法を提供することにある。
【００１８】
本発明の他の目的は、電気的に設定自在な構成を有するＭＲＡＭデバイスおよびその制御方法を提供することにある。
【００１９】
本発明のさらなる目的は、電気的に再設定自在な構成を有するＭＲＡＭデバイスおよびその制御方法を提供することにある。
【００２０】
本発明のさらなる目的は、電気的に設定自在な構成と冗長アドレスの符号化機能とを有するＭＲＡＭデバイスおよびその制御方法を提供することにある。
【００２１】
本発明のさらなる目的は、電気的に設定可能なプログラマブルな電流源を有するＭＲＡＭデバイスおよびその制御方法を提供することにある。
【００２２】
本発明のさらなる目的は、電気的に設定可能なプログラマブルなタイミング遅延回路を有するＭＲＡＭデバイスおよびその制御方法を提供することにある。
【課題を解決するための手段】
【００２３】
上記の目的は、以下のようにして達成される。本発明のＭＲＡＭデバイスは磁気メモリセルのメモリアレイを含む。メモリアレイの第１の部分は、通常動作の書込および読込時にアクセスされるメモリセルを含む。メモリアレイの第２の部分は初期起動時にのみ読込アクセス対象となるメモリセルを含む。メモリアレイの第２の部分は、メモリアレイの物理的動作を変更する設定データを記憶するために使われる。また、設定データによって性能が制御されるプログラミング可能な電流源が含まれる。
【００２４】
本発明のＭＲＡＭデバイスの制御方法は、メモリアレイの第２の部分に設定データを記憶させるステップを含む。ＭＲＡＭデバイスの電源投入時初期化の際には、設定データの固定バイト数を読み込んでメモリアレイの物理的動作の設定をラッチすると共に、設定データのうちの可変設定データ横列の数を判定(判別または決定) する。そして、すべての可変設定データ横列を読み込み、電源投入時初期化を完了する。
【００２５】
より具体的には、以下の各手段により、上記の各目的が達成可能である。
【００２６】
本発明のＭＲＡＭデバイスは、磁気メモリセルアレイを有する設定自在構成の(configurable)ＭＲＡＭデバイスであって、磁気メモリセルアレイは、縦列および横列方向に配置された複数の磁気メモリセルを備えた複数の磁気メモリセルブロックを備え、各磁気メモリセルブロックは、第１のアレイ部分と第２のアレイ部分を有し、第１のアレイ部分は、ノーマル動作時にノーマル横列デコーダを用いて縦列デコーダを介して読出アクセスおよび書込アクセスが可能な磁気メモリセルを含むものであり、第２のアレイ部分は、電源投入初期化の際にのみ読出アクセスが可能な磁気メモリセルを含み、磁気メモリセルアレイの物理的動作の変更(altering the physical operation)に用いる設定データ(configuration data)を記憶するのに使用されるものであり、電源投入初期化の際にアクティブにされ、第２のアレイ部分のみをイネーブルとして選択し、第２のアレイ部分の横列デコーダとして機能し、ワード線選択信号を供給する設定値選択部と、外部電源初期化信号を受信し、第２のアレイ部分の選択された全ての横列の設定データを読み出すために第２のアレイ部分と縦列デコーダを介して通信しつつ電源投入初期化を開始する状態機構部と、設定データを受信しラッチするために第２のアレイ部分と通信する設定データラッチ部と、磁気メモリセルに、情報を書き込むための書込用ビット線電流および書込用ワード線電流を供給する、プログラム可能な電流源と、書込動作時において、磁気メモリセルに書込用ワード線電流を供給するタイミングと書込用ビット線電流を供給するタイミングとの間の遅延時間を調整する、プログラム可能なタイミング制御部とを備えたものである。書込用ビット線電流および書込用ワード線電流の電流値は、設定データラッチ部から読み出された設定データにより制御され、タイミング制御部における遅延ファクターは、設定データラッチ部から読み出された設定データにより制御される。設定データは、固定領域と可変領域とに分割され、固定領域は、プログラム可能な電流源における電流値、およびプログラム可能なタイミング制御部における遅延ファクターを設定するための設定データを含み、可変領域は、冗長横列への置換のために設定データに書き込まれた欠陥アドレスの横列の数を示すヘッダデータを含むものである。第２のアレイ部分は、例えば、読出動作時のビット線基準値を与えるように構成可能である。
【００２７】
本発明のＭＲＡＭデバイスでは、上記電流源は、磁気メモリセルから情報を読み出すための読出ビット線電流をも供給することが好ましい。電流源の動作は、テストモード時においては外部からの入力によって制御されるようにしてもよい。
【００２８】
本発明のＭＲＡＭデバイスでは、上記タイミング制御部は、読出動作時において、磁気メモリセルアレイから検出されたラッチデータのタイミングをも制御することが好ましい。タイミング制御部の動作は、テストモード時においては外部からの入力によって制御されるようにしてもよい。
【００２９】
本発明のＭＲＡＭデバイスでは、第３のアレイ部分をさらに備えることが好ましい。この第３のアレイ部分は、ノーマル動作時に読出アクセスおよび書込アクセスが可能に構成されると共に、設定データにより第１のアレイ部分の磁気メモリセルに欠陥ありと判断されたときに活性化される冗長セル(redundant cells) としてのみ機能する磁気メモリセルを含むものである。この場合、電源投入時の初期化の際に設定データを読み出す処理を行うようにし、かつ、この初期化時読出処理が、所定バイト数の設定データを読み出して冗長セルのアドレスによって置き換えられた欠陥セルのアドレス数を判定するステップと、すべての欠陥セルアドレスを読み出すステップとを含むようにすることが可能である。第３のアレイ部分における冗長セルからなる冗長列(redundant row) がイネーブル状態のときには、第１のアレイ部分におけるノーマル列(normal row)がディスエーブル状態になる。
【００３０】
本発明に係るＭＲＡＭデバイスの制御方法は、各磁気メモリセルブロックは、第１のアレイ部分と第２のアレイ部分を有し、第１のアレイ部分は、ノーマル動作時に読出アクセスおよび書込アクセスが可能な磁気メモリセルを含むものであり、第２のアレイ部分は、電源投入時の初期化の際にのみ読出アクセスが可能な磁気メモリセルを含み、磁気メモリセルアレイの物理的動作の変更に用いる設定データを記憶するのに使用されるものであり、電源投入初期化の際にアクティブにされ、第２のアレイ部分のみをイネーブルとして選択し、第２の部分の横列デコーダとして機能し、ワード線選択信号を供給する設定値選択部と、外部電源初期化信号を受信し、第２のアレイ部分の選択された全ての横列の設定データを読み出すために第２のアレイ部分と縦列デコーダを介して通信しつつ電源投入初期化を開始する状態機構部と、設定データを受信しラッチするために第２のアレイ部分と通信する設定データラッチ部と、磁気メモリセルに、情報を書き込むための書込用ビット線電流および書込用ワード線電流を供給する、プログラム可能な電流源と、書込動作時において、磁気メモリセルに書込用ワード線電流を供給するタイミングと書込用ビット線電流を供給するタイミングとの間の遅延時間を調整する、プログラム可能なタイミング制御部とを備えたＭＲＡＭデバイスの制御方法であって、第２のアレイ部分に設定データを記憶するステップと、外部電源初期化信号を受信し、ＭＲＡＭデバイスの電源投入初期化を行うステップと、磁気メモリセルアレイの物理的動作の設定および可変の設定データの横列の数の決定のために、第２のアレイ部分から設定データラッチ部に固定の設定データを読み出すステップと、設定データラッチ部から読み出された固定の設定データにより書込用ビット線電流および書込用ワード線電流の電流値を調整するステップと、設定データラッチ部から読み出された固定の設定データにより遅延時間を調整するステップと、冗長横列への置換のために設定データに書き込まれた欠陥アドレスの横列の数を示すヘッダデータを含む可変の設定データを読み出すステップと、ノーマル横列における欠陥横列を冗長横列に置き換えるために、可変の設定データにおける欠陥アドレスから取得した欠陥横列の位置に基づいて、磁気メモリセルアレイの冗長横列デコーダをプログラミングするステップと、電源投入初期化を終了するステップとを含むものである。
【００３１】
本発明のＭＲＡＭデバイスの制御方法では、第２のアレイ部分に設定データを記憶するステップに先立ち、テストモードにおいて外部からの入力によって電流源を制御することによりこの電流源の動作をテストするステップをさらに実施するようにしてもよい。
【００３２】
本発明のＭＲＡＭデバイスの制御方法では、第２のアレイ部分に設定データを記憶するステップに先立ち、テストモードにおいて外部からの入力によってタイミング制御部を制御することによりこのタイミング制御部の動作をテストするステップをさらに実施するようにしてもよい。
【００３３】
本発明のＭＲＡＭデバイスの制御方法では、ＭＲＡＭデバイスが第３のアレイ部分をさらに備えるようにしてもよい。この第３のアレイ部分は、ノーマル動作時に読出アクセスおよび書込アクセスが可能に構成されると共に、設定データにより第１のアレイ部分の磁気メモリセルに欠陥ありと判断されたときに活性化される冗長セルとしてのみ機能する磁気メモリセルを含むものである。
【発明の効果】
【００３４】
本発明によれば、ノーマル動作時に読出アクセスおよび書込アクセスが可能な磁気メモリセルを含む第１のアレイ部分と、電源投入初期化の際にのみ読出アクセスが可能な磁気メモリセルを含む第２のアレイ部分と、磁気メモリセルに、情報を書き込むための書込用ビット線電流および書込用ワード線電流を供給する、プログラム可能な電流源と、書込動作時において、磁気メモリセルに書込用ワード線電流を供給するタイミングと書込用ビット線電流を供給するタイミングとの間の遅延時間を調整する、プログラム可能なタイミング制御部とを備えると共に、第２のアレイ部分を、磁気メモリセルアレイの物理的動作の変更に用いる設定データの保存場所として使用し、書込用ビット線電流および書込用ワード線電流の電流値は、第２のアレイ部分から読み出された設定データにより制御され、タイミング制御部における遅延ファクターは、第２のアレイ部分から読み出された設定データにより制御されるようにしたので、電気的な設定や再設定が可能な柔軟で実効性が高く、かつ製造適性のあるＭＲＡＭデバイスを実現することができる。
【００３５】
特に、本発明のＭＲＡＭデバイスの制御方法によれば、第２のアレイ部分に磁気メモリセルアレイの物理的動作の変更に用いる設定データを記憶するステップと、ＭＲＡＭデバイスの電源投入初期化を行うステップと、第２のアレイ部分から読み出された設定データにより書込用ビット線電流および書込用ワード線電流の電流値を調整するステップと、第２のアレイ部分から読み出された設定データにより遅延時間を調整するステップと、所定バイト数の設定データを読み出して磁気メモリセルアレイの物理的動作の設定状態をラッチし、可変設定データ横列の数を判定するステップと、すべての可変設定データ横列を読み出すステップと、電源投入初期化を終了するステップとを含むようにしたので、上記のような設定自在構成のＭＲＡＭデバイスの性能を最大限に発揮させることができる。
【発明を実施するための最良の形態】
【００３６】
以下、本発明を実施するための最良の形態（以下、単に実施の形態という。）について、図面を参照して詳細に説明する。本発明は、いくつかの新規な構成上および動作上の特徴を有する柔軟構成可能な磁気メモリアレイを提供するものである。以下の好適な実施の形態では、特にこれらの新規な特徴に重点をおいて説明する。なお、図面の簡略化のため、本発明のいくつかの個々の特徴を共通の図面中にまとめて図示するが、後述するように、これらの特徴を別々に組み込むようにしてもよい。すなわち、以下に記述する様々な実施の形態は、それぞれ、本発明の特徴群全体のうちの一部を含んでいる。例えば、ある実施の形態の柔軟構成可能なＭＲＡＭデバイスでは、プログラム可能な電流値と冗長修復情報(redundancy repair information) の双方が設定ブロックでエンコードされるようになっているが、他の実施の形態では、プログラム可能な電流値のみが設定ブロックでエンコードされるようになっている。各実施の形態とも、本発明の範囲に入ることを意図した変形例を表している。
【００３７】
図１は本発明の一実施の形態に係る柔軟構成可能なＭＲＡＭデバイス( 以下、単にＭＲＡＭデバイスという。）の概略構成を表すものである。この図は、機能ブロック、制御信号およびデータの流れに重点をおいて図示したブロック図である。このＭＲＡＭデバイス５０のメモリアレイは、ＭＲＡＭセルブロック５２，５４を含んでいる。各ブロックは、従来と同様、縦列(column)座標および横列(row) 座標によってアクセス可能なようにメモリセルをブロック状に配列して構成されている。この図に示した例では、ＭＲＡＭセルブロック５２は、データの書込読出用の格納場所として、ＭＲＡＭブロックＢ１〜ＢＮを含んでいる。
【００３８】
図２は、図１におけるＭＲＡＭブロックの内部構成を表すものである。この図では、図１のＭＲＡＭブロックＢ１〜ＢＮのうちの１つを代表して、ＭＲＡＭブロック１００として図示している。このＭＲＡＭブロック１００は、縦列および横列方向に配列された複数のＭＲＡＭセル１０５を備えている。ＭＲＡＭセル１０５は、例えば図３に示したように、ＭＴＪデバイス１１０と、選択／分離用のトランジスタ１２５とを有する。トランジスタ１２５は、読出動作中にＭＴＪデバイス１１０を接地に接続するように動作する。なお、ＭＲＡＭセル１０５の物理的構造は図１１に示したものと同様であり、また、その動作原理は図１０、図１２および図１３に示したものと同様であるので、ここではそれらの説明を省略する。
【００３９】
図２に示したように、ＭＲＡＭアレイ１０１の各縦列ごとにビット線ＢＬ１，ＢＬ２，…，ＢＬｎ−１，ＢＬｎ（以下、総称する場合はＢＬと表記する。）が設けられている。各ビット線は、交差する各ＭＲＡＭセル１０５のフリー層に接続されている。また、ＭＲＡＭアレイ１０１の各横列ごとにワード線ＷＬ１，ＷＬ２，…，ＷＬｊ−１，ＷＬｊが設けられている。これらのワード線はそれぞれ、交差する各ＭＲＡＭセル１０５に近接して設けられている。ビット線ＢＬ１，ＢＬ２，…，ＢＬｎ−１，ＢＬｎの各一端は、それぞれ、ブロック読出書込選択信号ＢＲＷＳによって制御されるブロック読出書込用のトランジスタ１１０ａ，１１０ｂ，１１０ｎ−１，１１０ｎを介して読出書込線Ｒ／Ｗ＿ＬＩＮＥに接続されている。ビット線ＢＬ１，ＢＬ２，…，ＢＬｎ−１，ＢＬｎの各他端は、それぞれ、ブロック書込選択信号ＢＷＳによって制御されるブロック書込選択用のトランジスタ１１５ａ，１１５ｂ，１１５ｎ−１，１１５ｎを介して書込線ＲＷＴ＿ＬＩＮＥに接続されている。ワード線ＷＬ１，ＷＬ２，…，ＷＬｊ−１，ＷＬｊの各一端は、それぞれ、横列書込選択線ＷＷＬ１〜ＷＷＬｊ（図１ではＷＷＬと表記）によって制御される横列書込選択用のトランジスタ１５５ａ，１５５ｂ，１５５ｊ−１，１５５ｊを介して接地に接続されている。ワード線ＷＬ１，ＷＬ２，…，ＷＬｊ−１，ＷＬｊの各他端には、それぞれ、ブロック選択信号ＢＳによって制御されるブロック選択用のトランジスタ１２０を介して横列用電流源（図示せず）から横列用のプログラム電流（書込電流）ＩR が供給され得るようになっている。また、ＭＲＡＭセル１０５の各横列ごとに、選択／分離用のトランジスタ１２５（図３）を制御するための読出ワード線ＲＷＬ１〜ＲＷＬｊ（図１ではＲＷＬと表記）が設けられている。
【００４０】
書込動作時には、ブロック選択信号ＢＳをアクティブにしてトランジスタ１２０をオンさせると、横列用のプログラム電流ＩR がＭＲＡＭアレイ１０１に流れる。この電流は、横列書込選択線ＷＷＬ１〜ＷＷＬｊのうちのオンされた選択線によって選択された横列（ワード線ＷＬ１，ＷＬ２，…，ＷＬｊ−１，ＷＬｊのいずれか）に向かって流れる。ブロック選択信号ＢＳおよび横列書込選択線ＷＷＬ１〜ＷＷＬｊの信号状態は、ＭＲＡＭブロック１００用の後述のノーマル横列(row) デコーダ６０（図１）によって決定される。次に、ブロック読出書込選択信号ＢＲＷＳおよびブロック書込選択信号ＢＷＳをアクティブにして、ブロック読出書込用のトランジスタ１１０ａ，１１０ｂ，１１０ｎ−１，１１０ｎおよびブロック書込選択用のトランジスタ１１５ａ，１１５ｂ，１１５ｎ−１，１１５ｎをオンさせる。読出ワード線ＲＷＬ１〜ＲＷＬｊの信号はすべてオフとする。すると、ビット線電流が、読出書込線Ｒ／Ｗ＿ＬＩＮＥおよび書込線ＷＲＴ＿ＬＩＮＥを上または下のいずれかの方向に流れる。このときの電流方向は、論理値“１”または“０”のいずれを書き込むか、ということに依存する。ビット線電流の方向は、後述するデータドライバ７２等（図１）によって決定される。本実施の形態によれば、ＭＲＡＭセル１０５の横列全体を一斉にプログラム可能であることがわかる。このようにして、ワード線電流とビット線電流との組み合わせにより生成される合成磁界によってフリー層（図示せず）の磁化方向を変化させ、ＭＴＪ接合の磁気状態（電気抵抗値レベル）をしかるべき状態に変化させることにより、情報（“０”と“１”）が書き込まれる。
【００４１】
典型的な読出動作時には、ブロック選択信号ＢＳをオフ状態とし、ＭＲＡＭアレイ１０１へのプログラム電流を遮断する。次に、ブロック読出書込選択信号ＢＲＷＳおよびブロック書込選択信号ＢＷＳをオンすると、ＭＲＡＭアレイ１０１のすべてのビット線ＢＬ１，ＢＬ２，…，ＢＬｎがオン状態となる。すると、読出電流が各書込線ＷＲＴ＿ＬＩＮＥおよび各ビット線を通って各読出書込線Ｒ／Ｗ＿ＬＩＮＥへと流れる。次に、読出ワード線ＲＷＬ１〜ＲＷＬｊの信号のひとつをアクティブにして、その対応する横列中のＭＲＡＭセル１０５内の選択／分離用のトランジスタ１２５（図３）をオンする。読出ワード線ＲＷＬ１〜ＲＷＬｊの信号は、ＭＲＡＭブロック１００用のノーマル横列デコーダ６０（図１）によって制御される。この結果、ＭＲＡＭアレイ１０１を流れてきたビット線電流は、選択された横列のトランジスタ１２５（図３）を通って接地へと流れる。この際、ビット線電流は、該当するＭＲＡＭセル１０５のＭＴＪデバイス１１０（図３）を横切って流れることから、横列アドレスと縦列アドレスとの組み合わせにより選択されたＭＴＪデバイス１１０のフリー層の磁化方向に応じて、各読出書込線Ｒ／Ｗ＿ＬＩＮＥの信号に電圧降下が生ずる。この電圧降下が読出信号として出力される。
【００４２】
この読出動作時のＭＴＪデバイス１１０の動作をさらに詳細に説明する。読出用の検出電流（ビット線電流）は、上部導電リード層（図示せず）からＭＴＪデバイス１１０の積層構造（図示せず）を貫通して下部導電リード層（図示せず）へと積層面と直交する方向に流れる。もちろん、電流方向は、上記とは逆方向でもよい。フリー層（図示せず）の磁化方向はピンド層（図示せず）の磁化方向と平行または反平行になり得るので、検出電流が絶縁トンネル層をトンネル通過する際の電気抵抗値は、互いに異なる２つの状態をとる。このように、ＭＴＪを流れる検出電流によってそのＭＴＪ接合の磁気状態（電気抵抗値レベル）を検出することで情報（“０”と“１”）が読み出される。
【００４３】
ＭＲＡＭブロック１００を典型例として考えることで、本発明のいくつかの重要な特徴が理解できる。第１に、横列用のプログラム電流ＩR は、ＭＲＡＭアレイ１０１全体に対して唯一（共通）の決まった値である。本実施の形態の場合、図１に示したように、プログラム電流ＩR は、ワード線バスＷＬＢを駆動するワード線ドライバ８２を介して、プログラム可能な電流源７０によって決定されるようになっている。第２に、読出書込線Ｒ／Ｗ＿ＬＩＮＥおよび書込線ＷＲＴ＿ＬＩＮＥに供給される書込ビット線電流は、データドライバ７２およびデータドライバ７４を介してプログラム可能な電流源７０によって決定されるプログラム可能な値をとる。第３に、書込線ＷＲＴ＿ＬＩＮＥに供給される読出ビット線電流は、データドライバ７２を介してプログラム可能な電流源７０によって決定されるプログラム可能な値をとる。本実施の形態では、ＭＲＡＭセルブロック５２（ＭＲＡＭブロックＢ１〜ＢＮ）のすべてまたはいずれかにおける設定用横列群Ｃ＿ＲＯＷＳ（後述，図１）に格納された設定データを用いることにより、電源投入時またはその他の初期化の際に、上記のプログラム可能な電流値を設定するようにしている。なお、これらの電流値として、設定データとは関係なく決められたデフォルト値をもつようにしてもよい。第４に、ＭＲＡＭブロック１００におけるいずれかの横列のうちのいずれかのＭＲＡＭセル１０５に欠陥があったときは、特定の横列用の横列選択信号（読出ワード線ＲＷＬ１〜ＲＷＬｊ，横列書込選択線ＷＷＬ１〜ＷＷＬｊ）をディスエーブル状態にすることにより、そのようなセルを容易にディスエーブル状態にすることが可能である。
【００４４】
再び図１を参照して説明する。本実施の形態では、ＭＲＡＭセルブロック５２の内部がノーマル横列群Ｎ＿ＲＯＷＳ、冗長横列群Ｒ＿ＲＯＷＳおよび設定用横列群Ｃ＿ＲＯＷＳという３つの横列群に分割されている。ノーマル横列群Ｎ＿ＲＯＷＳは、欠陥セルが見い出された横列以外は通常の読出書込アクセスが可能な横列群である。冗長横列群Ｒ＿ＲＯＷＳおよび設定用横列群Ｃ＿ＲＯＷＳは、その名が暗示するように、通常の読出書込アクセスの対象にはならない。しかしながら、ノーマル横列群Ｎ＿ＲＯＷＳのいずれかの横列に欠陥が検出された場合において、その欠陥横列への読出書込要求が行われたときは、その欠陥横列が冗長横列群Ｒ＿ＲＯＷＳ中の１つの横列によって置き換えられる。
【００４５】
本実施の形態のＭＲＡＭデバイス５０は、ノーマル横列デコーダ６０、冗長横列デコーダ６２および設定値選択部６４からなる横列デコーダを備えている。この横列デコーダには、横列アドレス信号Ｒ＿ＡＤＤと、ディスエーブル信号ＤＩＳと、ノーマル横列ディスエーブル信号ＮＲＤとが入力されるようになっている。ノーマル横列デコーダ６０は、横列アドレス信号Ｒ＿ＡＤＤを基に、ノーマル横列群Ｎ＿ＲＯＷＳのうちのいずれかの横列を選択するための選択信号をデコードして出力する。冗長横列デコーダ６２は、基本的には、冗長横列群Ｒ＿ＲＯＷＳのうちのいずれを選択するかを示す選択信号を出力するものである。より具体的には、設定用横列群Ｃ＿ＲＯＷＳから読み出された設定データに基づいて、ノーマル横列群Ｎ＿ＲＯＷＳ中の欠陥横列を冗長横列群Ｒ＿ＲＯＷＳ中の横列と置き換えるようにプログラムされる。設定値選択部６４は、状態機構部６６によってアクティブにされ、対象となる横列上のセルにワード線選択信号を供給することにより、設定用横列群Ｃ＿ＲＯＷＳ用の横列デコーダとして機能するようになっている。なお、ディスエーブル信号ＤＩＳは、横列デコーダ全体をディスエーブル状態にするための信号であり、ノーマル横列ディスエーブル信号ＮＲＤは、ノーマル横列群Ｎ＿ＲＯＷＳをディスエーブル状態にするための信号である。
【００４６】
大規模メモリアレイにおいて、アレイ中に欠陥メモリセルが形成されてしまう確率は低いのが通例である。メモリ動作中にこれらの欠陥セルを特定して置換することができれば、そのデバイスは、お払い箱にならずに使用可能である。一般に、ノーマルセルを冗長セルに置換する処理は、セルアレイ中または横列もしくは縦列デコーダ中に設けられた電気的なヒューズ(electrical fuses)を選択的に遮断することによって行われる。このような電気的なヒューズは、一度切断されると、元の状態には戻らない。本実施の形態の重要な特徴のひとつは、後述するように、ノーマル横列群Ｎ＿ＲＯＷＳのうちの欠陥が検出されたノーマル横列から冗長横列群Ｒ＿ＲＯＷＳのうちの動作可能な冗長横列へのアドレス位置の再割り当てが、ＭＲＡＭセルブロック５２の設定用横列群Ｃ＿ＲＯＷＳの中にプログラムされていることである。
【００４７】
上記したように、磁気メモリセルは、セルを通過する電流によって生ずる電圧降下を基準電圧と比較することで読み出すようになっている。本実施の形態では、基準電圧値は、基準ＭＲＡＭセルブロック５４内の１つの基準セルまたは１組の基準セルを電流が流れることにより生成されるようになっている。製造プロセス、セルの配置や向き、あるいは環境要因等に起因するセル性能のばらつきは、ＭＲＡＭセルブロック５２（ＭＲＡＭブロックＢ１〜ＢＮ）中の選択されたセルと基準ＭＲＡＭセルブロック５４中の基準セルとの間で同程度のものであるから、同程度の読出用基準電圧が生成される。基準ＭＲＡＭセルブロック５４からの基準セル電圧は、基準ビット線ＢＬＲを介して読出書込基準データバスＲ／Ｗ＿ＲＥＦ＿ＤＢに供給され、ＭＲＡＭセルブロック５２（ＭＲＡＭブロックＢ１〜ＢＮ）中の選択されたセル用のビット線ＢＬの電圧と比較される。センスアンプ（ＳＡ）８６は、ＭＲＡＭセルブロック５２（ＭＲＡＭブロックＢ１〜ＢＮ）中の選択されたセルからの読出電圧と基準ＭＲＡＭセルブロック５４からの基準セル電圧とを比較し、センスアンプ出力を生成する。このセンスアンプ出力は、データ出力バッファ８８や設定データラッチ部６８等によってラッチされる。
【００４８】
本実施の形態では、ＭＲＡＭセルブロック５２（Ｂ１〜ＢＮ）および基準ＭＲＡＭセルブロック５４は、ワード線分割法(segmented word line approach)におけるローカルワード線の長さによって規定される。ＭＲＡＭセルブロック５２（Ｂ１〜ＢＮ）および基準ＭＲＡＭセルブロック５４は、それぞれ、ノーマルＭＲＡＭセルと、欠陥のあるノーマルＭＲＡＭセルを置換するための冗長セルと、設定用セルとを含んでいる。ＭＲＡＭセルブロック５２用のビット線ＢＬは、縦列(column)デコーダ５６を介して書込データバスＷ＿ＤＢに接続されると共に、縦列デコーダ５６を介して読出書込データバスＲ／Ｗ＿ＤＢに接続されている。縦列デコーダ５６には、縦列アドレス信号Ｃ＿ＡＤＤが入力されるようになっている。書込データバスＷ＿ＤＢはデータドライバ７２によって駆動され、読出書込データバスＲ／Ｗ＿ＤＢはデータドライバ７４によって駆動されるようになっている。同様に、基準ＭＲＡＭセルブロック５４用の基準ビット線ＢＬＲは、基準縦列デコーダ５８を介して書込データバスＷ＿ＤＢに接続されると共に、基準縦列デコーダ５８を介して読出書込基準データバスＲ／Ｗ＿ＲＤＢに接続されている。読出書込基準データバスＲ／Ｗ＿ＲＤＢはデータドライバ７８によって駆動されるようになっている。ビット線ＢＬには、データドライバ７２，７４によって双方向に電流が供給され、ＭＲＡＭセルがプログラムされる（書込が行われる）ようになっている。ワード線書込電流はワード線ドライバ８２によって生成される。
【００４９】
本実施の形態の重要な特徴は、プログラム可能な電流源７０がデータドライバ７２，７４，７８およびワード線ドライバ８２の電流レベルを決定することである。電流源７０は、後述するように、ＭＲＡＭセルブロック５２（Ｂ１〜ＢＮ）の設定用横列群Ｃ＿ＲＯＷＳに格納された情報（設定データ）に基づいてプログラムされる。好ましくは、各電流源７０が、電源投入時またはその他の初期化時に読み出される個別の設定フィールドまたは設定値に基づいて個別にプログラムされる。但し、すべての電流源７０が、共通の設定フィールドまたは設定値を用いてプログラムされるようにしてもよい。あるいは、いくつかの電流源７０だけを設定フィールドまたは設定値によってコントロールするようにし、他の電流源７０はコントロール対象から除外するようにしてもよい。なお、電流源７０の電流値は、デバイスをテストモードにセットして外部入力データＤINを所望の状態に設定することにより、設定データとは無関係に、外部から選択可能である。このようにして、ＭＲＡＭデバイス５０の動作電流の値は、デバイステスト中に評価して最適化することが可能である。その最適化された電流値は、その後に用いることができるようにするために、設定用横列群Ｃ＿ＲＯＷＳに書き込まれる。
【００５０】
図４は、プログラム可能な電流源７０の好適な一例を表すものである。電流源７０は、マルチプレクサ８４の出力信号であるデータセットＤSET0〜ＤSET ｍの状態によって制御される一連のＮＭＯＳスイッチ１７０〜１７５を備えている。信号ＴＥＳＴがアクティブとなるテストモードのとき、データセットＤSET0〜ＤSET ｍは外部入力データＤINとなる。信号ＴＥＳＴが非アクティブ（非テストモード）のとき、データセットＤSET0〜ＤSET ｍは、図１に示した設定データラッチ部６８によってラッチされた値（設定データＣＯＮＦＩＧ＿ＤＡＴＡ）となる。図４に示したように、電流源７０は、基準電圧ＮＢＩＡＳにバイアスされた他の一連のＮＭＯＳスイッチ１６４〜１６９を備えている。ＮＭＯＳスイッチ１６４〜１６９には、ダイオード接続されたＰＭＯＳ１５２によって電源Ｖccからの電流経路が設けられている。ＮＭＯＳスイッチ１６４〜１６９は、同様のサイズを有するか、あるいは、サイズが２倍ずつ異なるように(sized in binary relative increments) 構成されている。図からわかるように、データセットＤSET0〜ＤSET ｍの番号選択により、連結されたＮＭＯＳ網とＰＭＯＳダイオードとを通って流れる電流の値が決まる。この電流値によって、ＰＭＯＳデバイス１５４，１５６の状態を切り換える(turn-around) ためのＰＢＩＡＳ値が設定される。ＰＭＯＳデバイス１５４を流れる第１の電流タップＩPROG1 は電流流出源(current source)となり、ＰＭＯＳデバイス１５６, １５８，１６０により制御される第２の電流タップＩPROG2 は同じ回路からの電流吸い込み口(current sink)となる。
【００５１】
再び図１に戻る。本実施の形態の他の重要な特徴のひとつは、欠陥のあるセル（またはセル列）の情報（設定データ）がＭＲＡＭセルブロック５２の設定用横列群Ｃ＿ＲＯＷＳに格納されることである。電源投入時またはその他の初期化時に、設定用横列群Ｃ＿ＲＯＷＳ内の設定データが読み出され、ラッチされる。そして、この設定データに基づいて、ノーマル横列群Ｎ＿ＲＯＷＳ中の欠陥横列を冗長横列群Ｒ＿ＲＯＷＳ中の横列と置き換えるように冗長横列デコーダ６２がプログラムされる。のちに、欠陥のある横列のいずれかが読出または書込の対象として選択されると、冗長横列デコーダ６２によってノーマル横列ディスエーブル信号ＮＲＤがアクティブになる。これにより、さもなくばアドレスの組み合わせによって選択されていたであろうところの（欠陥のある）ノーマル横列は選択されなくなる。冗長横列デコーダ６２はまた、それがプログラムされていない（すなわち、冗長設定ラッチデータがまったく設定されていない）場合には、いかなるアドレスの組み合わせによってもいずれの冗長横列も選択されないように構成されている。さらに、複数の冗長横列デコーダのいずれかが選択されているときは、ノーマル横列ディスエーブル信号ＮＲＤがアクティブとなる。これにより、複数のノーマル横列デコーダのすべてがディスエーブル状態になる。ＭＲＡＭセルブロック５２（Ｂ１〜ＢＮ）の冗長横列群Ｒ＿ＲＯＷＳに設けられる横列の数は、当該技術レベルにおける欠陥の密度に依存する。欠陥密度が高い技術レベルの場合は、欠陥密度の低い技術レベルの場合よりも、より多くの冗長横列を必要とする。図１に示した実施の形態では、冗長横列による修復機構を示した。しかしながら、当業者であれば、本発明の構成手法を用いることによって冗長縦列による修復機構も同様に適用できることは明らかであろう。
【００５２】
さらに、本実施の形態における他の重要な特徴のひとつは、ＭＲＡＭセルブロック５２の設定用横列群Ｃ＿ＲＯＷＳに格納された設定データを用いて、内部クロックタイミングおよびクロック遅延量のうちの少なくとも一方がプログラム可能になっていることである。電源投入時またはその他の初期化時に、設定用横列群Ｃ＿ＲＯＷＳ内の設定データが読み出され、内部タイミング制御部７３へとラッチされる。
【００５３】
図７は、内部タイミング制御部７３内に設けられたプログラム可能なタイミング遅延部２４０の一構成例を表すものである。このタイミング遅延部２４０は、入力信号のタイミングｔと出力信号のタイミングｔd との間の遅延時間をプログラムするために、上記で読み出した設定データを用いる。この遅延量は、一連の遅延バッファＤ０〜Ｄｍによって生成される。各遅延バッファは、一対のインバータによって構成されている。これは、タイミングｔにおける入力信号がタイミングｔｄにおいて反転することがないようにするためである。遅延バッファＤ０〜Ｄｍには、それぞれに対応して、選択用トランジスタＴ0 〜Ｔm が設けられている。選択用トランジスタＴ0 〜Ｔm のうちのいずれかがオンすると、入力信号は、その対応する遅延バッファをショート（バイパス）し、その遅延バッファによっては遅延が生じないようになっている。一方、いずれかの選択用トランジスタＴ0 〜Ｔm がオフすると、入力信号は、その対応する遅延バッファによって遅延されるようになっている。選択用トランジスタＴ0 〜Ｔm は、データセットＤSET0〜ＤSET ｍによってそれぞれ制御され、これにより、遅延量が設定データに基づいてプログラムされる。プロセス上のばらつきがあると、ロット間、ウェハ間、あるいは同じウェハから切り出されたダイ(die) 間で、メモリセルの性能にばらつきが生ずる。このばらつきが大きいと、内部タイミングが１箇所だけ遅延しただけで、ばらつきの範囲全体にわたって動作しなくなる、という状況が生ずる。したがって、メモリデバイスから得られたテストデータに基づいて各固有のタイミング遅延量をプログラムできるようになっていることは、回路性能の最適化およびデバイス歩留りを改善するための手段として、極めて有用である。プログラム可能な電流源７０の場合と同様に内部タイミング制御部７３もまた、テストモード時には、マルチプレクサ８４経由で入力される外部入力データＤINによってプログラム可能である。この機能により、設定データを確定する前に、様々なタイミング値をテストして最適化することが可能になる。内部タイミング制御部７３はまた、設定データとは別個に、ディフォルト値をもっている。
【００５４】
図５は、プログラムイベント中にメモリアレイに供給された２種類の書込電流( 横列用のプログラム電流ＩR ，縦列用のプログラム電流ＩC ）間のタイミング関係２００を表すものである。既に述べたように、ワード線電流（横列用のプログラム電流ＩR ）とビット線電流（縦列用のプログラム電流ＩC ）との組み合わせを用いて書込磁界が生成され、これによりメモリセルへの書き込みが行われる。横列用のプログラム電流ＩR および縦列用のプログラム電流ＩC は、両者同時に流れてプログラム( 書込) 磁界を生成する。書込時間を最短にしつつ信頼性の高い書き込みを行うべく、プログラム電流ＩR は、プログラム電流ＩC のオンタイミング２０８よりもセットアップ時間ＤＥＬＡＹ１だけ先行早いタイミング２０４でオンしなければならないことがわかる。また、プログラム電流ＩC は、プログラム電流ＩR がオンしたタイミング２０６から保持時間ＤＥＬＡＹ２だけ経ったタイミング２１０まではオフしてはならない。最適なセットアップ時間ＤＥＬＡＹ１および保持時間ＤＥＬＡＹ２は、回路のプロセスパラメータにも依存する。書込性能の最適化のためには、製作されたデバイスのテストデータに基づいてセットアップ時間ＤＥＬＡＹ１および保持時間ＤＥＬＡＹ２を調整するのが有用である。図７に示したタイミング遅延部２４０は、セットアップ時間ＤＥＬＡＹ１および保持時間ＤＥＬＡＹ２の調整に用いられるが、その際には、電源投入時のテスト中に取得（変更）されてＭＲＡＭセルブロック５２の設定データ領域（設定用横列群Ｃ＿ＲＯＷＳ）に格納されていた設定値が用いられる。
【００５５】
図６は、センスアンプ出力と、これらのセンスアンプ出力をラッチするためのラッチクロック周期信号（クロック遅延信号）とのタイミング関係２２０を表すものである。既に述べたように、ＭＲＡＭアレイ１０１のＭＲＡＭセル１０５（図２）は、既知の電流の流れに応じてセルを横切る方向に生ずる電圧降下を測定することで読み出される。通常は、複数のセルが並行して読み出され、バイトまたはワードの形で取り出される。各セルの電圧降下は、個々のビット線上を伝わり、センスアンプに達する。センスアンプでは、各ビット線上の電圧が基準電圧と比較され、各ビット線ごとにメモリセルの書込状態が判定される。読出時間を最短にしつつ信頼性の高い読み出しを行うべく、センスアンプ出力の状態遷移期間２２４と、出力データ値をラッチするためのクロックエッジ２２８との間に、セットアップ時間ＤＥＬＡＹ３が確保される。セットアップ時間ＤＥＬＡＹ３は、回路のプロセスパラメータにも依存する。読出性能の最適化のためには、製作されたデバイスのテストデータに基づいてセットアップ時間ＤＥＬＡＹ３を調整するのが有用である。図７に示したタイミング遅延部２４０は、セットアップ時間ＤＥＬＡＹ３の調整に用いられるが、その際には、電源投入時のテスト中に取得（変更）されてＭＲＡＭセルブロック５２の設定データ領域（設定用横列群Ｃ＿ＲＯＷＳ）に格納されていた設定値が用いられる。
【００５６】
さらに、本実施の形態における他の重要な特徴のひとつは、メモリ構成の中に状態機構部６６が設けられている点である。パワーオンリセット（ＰＯＲ）時またはその他の初期化時に、状態機構部６６は、横列デコーダの設定値選択部６４をアクティブにするようになっている。設定値選択部６４は、当該横列上のセルにワード線選択信号を供給することにより、設定用横列群Ｃ＿ＲＯＷＳ用の横列デコーダとして機能する。この設定値選択部６４がアクティブになると、ノーマル／冗長横列ディスエーブル信号ＮＲＲＤがアクティブになり、すべてのノーマル横列群Ｎ＿ＲＯＷＳおよび冗長横列群Ｒ＿ＲＯＷＳがディスエーブル状態となって、設定用横列群Ｃ＿ＲＯＷＳのみが選択される。状態機構部６６はまた、選択信号Ｎ(1) 〜Ｎ(n) , Ｎ(R) と適切な縦列アドレスとを生成し、設定用横列群Ｃ＿ＲＯＷＳから読み出すべく縦列選択を行う。設定用横列群Ｃ＿ＲＯＷＳからの読み出しは、ノーマル横列群Ｎ＿ＲＯＷＳからの読み出しの場合と同じセンスアンプ８６が用いられる。状態機構部６６は、センスアンプ出力をラッチするためのラッチ信号を出力して設定データラッチ部６８に入力する。設定用横列群Ｃ＿ＲＯＷＳから選択された横列は、そのすべてまたは一部のビットが、各読出サイクル中またはいくつかの読出サイクル中にラッチされる。このようにして、設定用横列群Ｃ＿ＲＯＷＳにおける横列が次々と読み出されて設定データラッチ部６８へとラッチされる。これは、必要なすべての設定データが読み出されてラッチされるまで行われる。なお、設定用横列群Ｃ＿ＲＯＷＳは、単一セル列から構成されていてもよいが、複数のセル列からなるようにすることが好ましい。
【００５７】
図８は、本発明の一実施の形態に係るＭＲＡＭデバイスを設定する方法の好適な一例を示すフロー２５０を表すものである。ＭＲＡＭデバイスを電源を投入すると（ステップ２６０）、デバイス電源の状態変化を検知する回路によってパワーオンリセット信号ＰＯＲが生成される（ステップ２６５）。これに代えて、デバイスのパワーオンリセットをシミュレートするリセット信号を用いてもよい。パワーオンリセットが開始したのち、電源投入時に特有の短い待ち期間が始まる（ステップ２７０）。パワーオンリセット信号ＰＯＲは、内部または外部のレディー／ビジー信号を必要とせずに、イネーブルになり、それ以降のステップ２７５〜２９０は、通常の電源投入シーケンス期間中に完了する。ＭＲＡＭアレイの設定データはステップ２７５〜２８５において読み出される。
【００５８】
図９は、設定データのメモリマップ３００を簡略化して表したものである。設定データは、固定領域Ｆと可変領域Ｖの２つに分割されている。固定領域Ｆには、プログラム可能な書込電流値をセットするための設定バイト（ワード）と、プログラム可能なタイミング遅延値をセットするための設定バイトとが含まれている。メモリマップ３００では、一例として、６行分の書込電流値と４行分のタイミング遅延値とを示している。ここでは、設計上、固定領域Ｆの行数をＲＯＷ０〜ＲＯＷ９までの１０行に固定した例を示している。可変領域Ｖには、１または複数のヘッダバイトが含まれている。このヘッダバイトは、冗長横列への置換のために設定データに書き込まれた欠陥アドレスの横列番号（バイト番号）である。この図では、冗長ブロックサイズが単一の行ＲＯＷ１０に書き込まれているが、冗長ブロックサイズ用の行数が固定されているのであれば、ブロックサイズ情報を書き込むのに２行以上を使用してもよい。このケースでは、冗長ブロックサイズ行の後ろに、冗長横列によって置換されたアドレス情報が格納されたｎ行分の領域ＲＯＷ１１〜ＲＯＷ（１０＋ｎ）が確保されている。
【００５９】
再び図８を参照して説明する。上記した固定領域の設定データは、ステップ２７５においてラッチされる。次に、可変領域の設定データのバイト数ｎは、ステップ２８０で読み込まれる。最後に、冗長アドレスを含む可変領域の設定データがラッチされ（ステップ２８５）、一例のシーケンスを終了する（ステップ２９０）。このような方法により、状態機構部６６は、パワーオンリセット（ＰＯＲ）後の短い期間内に、ノーマルモードでの読出機構と同様の機構を用いて、設定データにより指定された最終ポイントから設定データブロックの内容を読み出し、ラッチすることができる。
【００６０】
設定データの書き込みは、ワード線の選択に設定データ選択信号を用いることを除けば、実質的に、通常の書込機構と書込動作とによって達成される。上記したように、プログラム可能な電流源７０および内部タイミング制御部７３は、最適値を決めるための初期テスト中に外部入力によってもプログラム可能である。その外部入力の経路は、テストモード中にマルチプレクサ８４によって選択されたＤＩＮバスである。また、プログラム可能な電流源７０および内部タイミング制御部７３は、内部ディフォルト値をもつようにしてもよい。
【００６１】
ここで、本実施の形態の利点を総括する。
（１）製造適性が極めて高い磁気メモリデバイスを実現できる。
（２）電気的な設定や再設定が可能なＭＲＡＭデバイスを実現できる。
（３）電気的に設定可能な冗長アドレスエンコーダを有するＭＲＡＭデバイスを実現できる。
（４）電気的に設定可能なプログラム可能な電流源を有するＭＲＡＭデバイスを実現できる。
（５）電気的に設定可能なプログラム可能なタイミング遅延回路を有するＭＲＡＭデバイスを実現できる。
（６）電気的にＭＲＡＭデバイスを設定するための方法を実現できる。
このように、本実施の形態によれば、従来技術に置き換わる有用かつ製造容易なＭＲＡＭデバイスおよびその制御方法を提供することができる。
【００６２】
以上、好適な実施の形態を挙げて本発明を説明したが、本発明は上記実施の形態に限定されず、種々の変形が可能である。
【図面の簡単な説明】
【００６３】
【図１】本発明の一実施の形態におけるＭＲＡＭデバイスの全体構成を示すブロック図である。
【図２】図１におけるＭＲＡＭセルブロックの内部構成を示す回路図である。
【図３】図２におけるＭＲＡＭセルの等価回路構成を示す回路図である。
【図４】図１におけるプログラミング可能な電流源の構成を示す回路図である。
【図５】ＭＲＡＭアレイにおけるワード線書込電流とビット線書込電流との間の時間関係を示すタイミング図である。
【図６】ＭＲＡＭアレイから読出データを検出しラッチする際の時間関係を示すタイミング図である。
【図７】プログラミング可能なタイミング遅延部の構成を示す回路図である。
【図８】ＭＲＡＭデバイスの設定方法の一例を示す流れ図である。
【図９】設定データの簡単なメモリマップを示す図である。
【図１０】通常のＭＲＡＭセルにおける互いに異なる２つの磁気状態を示す模式図である。
【図１１】通常のＭＲＡＭセルの構造を示す斜視図である。
【図１２】通常のＭＲＡＭセルアレイにおける書込動作を示す模式図である。
【図１３】通常のＭＲＡＭセルアレイにおける読出動作を示す模式図である。
【符号の説明】
【００６４】
５０…ＭＲＡＭデバイス、５２…ＭＲＡＭセルブロック、５４…基準ＭＲＡＭセルブロック、５６…縦列デコーダ、５８…基準縦列デコーダ、６０…ノーマル横列デコーダ、６２…冗長横列デコーダ、６４…設定値選択部、６６…状態機構部、６８…設定データラッチ部、７０…電流源、７２，７４，７８…データドライバ、７３…内部タイミング制御部、８２…ワード線ドライバ、８４…マルチプレクサ、８６…センスアンプ、１００…ＭＲＡＭブロック、１０１…ＭＲＡＭアレイ、１０５…ＭＲＡＭセル、１１０…ＭＴＪデバイス、１１０ａ，１１０ｂ，１１０ｎ−１，１１０ｎ，１１５ａ，１１５ｂ，１１５ｎ−１，１１５ｎ，１２０，１２５…トランジスタ，１５５ａ，１５５ｂ，１５５ｊ−１，１５５ｊ…トランジスタ、１７０〜１７５…ＮＭＯＳスイッチ、２４０…タイミング遅延部、Ｂ１〜Ｂｎ…ＭＲＡＭブロック、ＢＬ…，ＢＬ１，ＢＬ２，ＢＬｎ−１，ＢＬｎ…ビット線、ＢＬＲ…基準ビット線、ＢＳ…ブロック選択信号、ＢＲＷＳ…ブロック読出書込選択信号、ＢＷＳ…ブロック書込選択信号、Ｃ＿ＲＯＷＳ…設定用横列群、ＤIN…外部入力データ、Ｄ０〜Ｄｍ…遅延バッファ、ＤSET0〜ＤSET ｍ…データセット、ＩR …横列用プログラム電流、ＩC …縦列用プログラム電流、Ｎ＿ＲＯＷＳ…ノーマル横列群、ＮＲＤ…ノーマル横列ディスエーブル信号、ＮＲＲＤ…ノーマル／冗長横列ディスエーブル信号、Ｎ(1) 〜Ｎ(n) , Ｎ(R) …選択信号、Ｒ＿ＲＯＷＳ…冗長横列群、Ｒ／Ｗ＿ＤＢ…読出書込データバス、Ｒ／Ｗ＿ＬＩＮＥ…読出書込線、Ｒ／Ｗ＿ＲＤＢ…読出書込基準データバス、ＲＷＬ１〜ＲＷＬｊ…読出ワード線、Ｔ0 〜Ｔm …選択用トランジスタ、ＷＬＢ…ワード線バス、Ｗ＿ＤＢ…書込データバス、ＷＬ１，ＷＬ２，ＷＬｊ−１，ＷＬｊ…ワード線、ＷＲＴ＿ＬＩＮＥ…書込線、ＷＷＬ１〜ＷＷＬｊ…横列書込選択線。
【図１】
0005357387.tif 000002
【図２】
0005357387.tif 000003
【図３】
0005357387.tif 000004
【図４】
0005357387.tif 000005
【図５】
0005357387.tif 000006
【図６】
0005357387.tif 000007
【図７】
0005357387.tif 000008
【図８】
0005357387.tif 000009
【図９】
0005357387.tif 000010
【図１０】
0005357387.tif 000011
【図１１】
0005357387.tif 000012
【図１２】
0005357387.tif 000013
【図１３】
0005357387.tif 000014