(57)【要約】【課題】トンネル絶縁膜の厚さによらず、最適なレファレンス電圧を得る。【解決手段】メモリセルＭＣ及びレファレンスセルＲＣは、ＭＴＪ素子から構成される。レファレンスセルＲＣは、メモリセルＭＣのデータを判断する基準を作る。レファレンスセルＲＣに対しては、それぞれ、独立に、データの書き込み／読み出しが可能である。レファレンスセルＲＣは、第１及び第２状態をとることができ、第１状態のレファレンスセルの数と第２状態のレファレンスセルの数は、異なっていてもよい。【選択図】    図１
2005018916.tif 000002
【特許請求の範囲】
【請求項１】
磁気抵抗効果素子から構成されるメモリセルと、前記メモリセルのデータを判断する基準を作るための複数のレファレンスセルとを具備し、前記複数のレファレンスセルに対しては、それぞれ、独立に、データの書き込み／読み出しが可能であることを特徴とする磁気ランダムアクセスメモリ。
【請求項２】
前記複数のレファレンスセルは、それぞれ、磁気抵抗効果素子から構成されることを特徴とする請求項１に記載の磁気ランダムアクセスメモリ。
【請求項３】
前記複数のレファレンスセルは、それぞれ、第１及び第２状態をとることができ、前記第１状態のレファレンスセルの数と前記第２状態のレファレンスセルの数は、異なることを特徴とする請求項１に記載の磁気ランダムアクセスメモリ。
【請求項４】
前記メモリセルを有するメモリセルアレイと前記レファレンスセルを有するレファレンスセルアレイとは、隣接して配置されることを特徴とする請求項１に記載の磁気ランダムアクセスメモリ。
【請求項５】
前記複数のレファレンスセルのうち不良セルを排除又は救済するためのシステムをさらに具備することを特徴とする請求項１に記載の磁気ランダムアクセスメモリ。
【請求項６】
前記不良セルのアドレスを記憶する複数の記憶素子をさらに具備することを特徴とする請求項５に記載の磁気ランダムアクセスメモリ。
【請求項７】
前記メモリセルに並列に接続される複数のダミーセルをさらに具備し、前記メモリセルと前記ダミーセルとを足した数は、前記レファレンスセルの数に等しいことを特徴とする請求項１に記載の磁気ランダムアクセスメモリ。
【請求項８】
前記複数のダミーセルに対しては、それぞれ、独立に、データの書き込み／読み出しが可能であることを特徴とする請求項７に記載の磁気ランダムアクセスメモリ。
【請求項９】
前記複数のダミーセルは、それぞれ、磁気抵抗効果素子から構成されることを特徴とする請求項７に記載の磁気ランダムアクセスメモリ。
【請求項１０】
読み出し時に、前記メモリセルにバイアス電流を与える電流源を具備し、前記電流源は、前記メモリセルを構成する磁気抵抗効果素子と同じ形状の複数の磁気抵抗効果素子から構成されることを特徴とする請求項１に記載の磁気ランダムアクセスメモリ。
【請求項１１】
前記電流源内の磁気抵抗効果素子に対しては、それぞれ、独立に、データの書き込み／読み出しが可能であることを特徴とする請求項１０に記載の磁気ランダムアクセスメモリ。
【請求項１２】
前記電流源内の磁気抵抗効果素子に対するアクセスは、前記メモリセルに対するアクセス以前に始められることを特徴とする請求項１１に記載の磁気ランダムアクセスメモリ。
【請求項１３】
前記メモリセルに流れる電流をモニタするモニタ回路をさらに具備することを特徴とする請求項１に記載の磁気ランダムアクセスメモリ。
【請求項１４】
前記メモリセルに対する書き込み動作中に、書き込み電流波形の変化を制御する書き込み電流制御回路をさらに具備することを特徴とする請求項１に記載の磁気ランダムアクセスメモリ。
【請求項１５】
前記書き込み電流波形の変化を半永久的に記憶する設定回路をさらに具備することを特徴とする請求項１４に記載の磁気ランダムアクセスメモリ。
【請求項１６】
前記書き込み電流波形の変化は、磁気抵抗効果素子により記憶されることを特徴とする請求項１５に記載の磁気ランダムアクセスメモリ。
【請求項１７】
メモリセル及び複数のレファレンスセルを構成する複数の磁気抵抗効果素子の特性を検査し、前記複数の磁気抵抗効果素子の特性に基づいて、前記複数のレファレンスセルの各々に、個別に、データを書き込み、前記メモリセルのデータを読み出す際に、前記複数のレファレンスセルを用いて、前記メモリセルのデータを判断する基準を作ることを特徴とする読み出し方法。
【請求項１８】
前記メモリセルのデータを読み出す際に、前記複数のレファレンスセルの中からアクセスするセルを選択することにより、前記複数の磁気抵抗効果素子の特性に基づいた前記基準を作ることを特徴とする請求項１７に記載の読み出し方法。
【請求項１９】
前記メモリセルのデータを読み出す際に、前記メモリセルに複数のダミーセルのうちの少なくとも１つを並列接続し、前記メモリセルとそれに並列接続されたダミーセルの合計数が、前記複数のレファレンスセルのうちアクセスされるセルの数に等しくなるようにすることを特徴とする請求項１８に記載の読み出し方法。
【請求項２０】
前記メモリセルのデータを読み出す際に、前記複数のダミーセルの中からアクセスするセルを選択することを特徴とする請求項１９に記載の読み出し方法。
【請求項２１】
前記複数のレファレンスセルのうちアクセスされるセルの数に基づいて、前記メモリセルに与える電流値を決定することを特徴とする請求項１８に記載の読み出し方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、磁気抵抗効果（Ｍａｇｎｅｔｏ  Ｒｅｓｉｓｔｉｖｅ）を利用する磁気ランダムアクセスメモリ（ＭＲＡＭ：  Ｍａｇｎｅｔｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）に関する。
【０００２】
【従来の技術】
従来、トンネル磁気抵抗効果（ＴＭＲ：  Ｔｕｎｎｅｌｉｎｇ  Ｍａｇｎｅｔｏ  Ｒｅｓｉｓｔｉｖｅ）を利用する磁気ランダムアクセスメモリが、例えば、Ｒｏｙ  Ｓｃｈｅｕｅｒｌｅｉｎ  ｅｔ．ａｌによって提案されている（非特許文献１参照）。
【０００３】
ＴＭＲを示すＭＴＪ（Ｍａｇｎｅｔｉｃ  Ｔｕｎｎｅｌ  Ｊｕｎｃｔｉｏｎ）素子は、２つの磁性体の間に薄い絶縁体が配置される構造を有する。ここで、ＭＴＪ素子は、２つの状態をとることができる。一つは、２つの磁性体の磁化が互いに同じ方向を向いている場合であり、これを、平行状態と定義する。他の一つは、２つの磁性体の磁化が互いに逆向きである場合であり、これを、反平行状態と定義する。
【０００４】
ＭＴＪ素子の磁化の向きが平行状態である場合、絶縁体にトンネル電流が流れるときのその絶縁体の抵抗値は、最も低くなり、例えば、これを、“１”状態と定義する。また、ＭＴＪ素子の磁化の向きが反平行状態である場合、絶縁体にトンネル電流が流れるときのその絶縁体の抵抗値は、最も高くなり、例えば、これを、“０”状態と定義する。
【０００５】
選択されたワード線と選択されたデータ選択線との交点に配置されるＭＴＪ素子にデータを書き込むときには、例えば、選択されたワード線に、向きが固定された書き込み電流を流し、選択されたデータ選択線に、書き込みデータに応じた向きを有する書き込み電流を流す。
【０００６】
その結果、これらワード線及びデータ選択線に流れる書き込み電流により発生する磁界がＭＴＪ素子に作用し、かつ、その磁界の強さがＭＴＪ素子の記憶層の磁化反転閾値を超え、ＭＴＪ素子にデータが書き込まれる。
【０００７】
一方、ＭＴＪ素子に記憶されたデータを読み出すときには、ＭＴＪ素子に読み出し電流を流し、ＭＴＪ素子の抵抗値を読み取ればよい。
【０００８】
（１）  レファレンス電流／電圧に関して
非特許文献１の磁気ランダムアクセスメモリでは、１ビットデータを２セルで記憶している。これに対し、ダイナミックＲＡＭや、フラッシュメモリなどにおいては、１ビットデータを１セルで記憶している。従って、同一のＣＭＯＳプロセスを使用すれば、後者のメモリは、前者のそれに比べて、大きなメモリ容量を確保できる。
【０００９】
このようなことから、磁気ランダムアクセスメモリの分野においても、１ビットデータを１セルで記憶するための技術が、例えば、Ｐｅｔｅｒ  Ｋ．  Ｎａｊｉ  ｅｔ．ａｌによって提案されている（非特許文献２参照）。
【００１０】
この技術によれば、セルデータを読み出すに当たって、データ値の判定の基準になるレファレンス電流／電圧を生成しなければならない。
【００１１】
まず、バイアス電圧発生器（Ｓｅｌｆ−Ｃａｌｉｂｒａｔｉｎｇ  Ｒｅｆｅｒｅｎｃｅ  Ｂｉａｓ  Ｖｏｌｔａｇｅ  Ｇｅｎｅｒａｔｏｒ）を用いて、元となる電圧Ｖｂｉａｓに基づいて、バイアス電圧Ｖｂｉａｓｒｅｆを生成する。バイアス電圧Ｖｂｉａｓｒｅｆは、抵抗値Ｒｍａｘを有するＭＴＪ素子（“１”状態）と抵抗値Ｒｍｉｎを有するＭＴＪ素子（“０”状態）から生成される。
【００１２】
Ｖｂｉａｓｒｅｆ  ＝  （Ｖｂｉａｓ／２）×（１＋Ｒｍｉｎ／Ｒｍａｘ）
ここで、レファレンスセルが“０”状態（抵抗値Ｒｍｉｎ）であると、レファレンスセルには、次に示すレファレンス電流Ｉｒｅｆが流れる。
Ｉｒｅｆ  ＝  Ｖｂｉａｓｒｅｆ／Ｒｍｉｎ
＝  （Ｖｂｉａｓ／２）×（１／Ｒｍｉｎ＋１／Ｒｍａｘ）
＝  １／２  ×  （Ｖｂｉａｓ／Ｒｍｉｎ＋Ｖｂｉａｓ／Ｒｍａｘ）
一方、メモリセルが“１”状態（抵抗値Ｒｍａｘ）であると、メモリセルには、次に示す電流Ｉｍｉｎが流れる。
Ｉｍｉｎ  ＝  Ｖｂｉａｓ／Ｒｍａｘ
また、メモリセルが“０”状態（抵抗値Ｒｍｉｎ）であると、メモリセルには、次に示す電流Ｉｍａｘが流れる。
Ｉｍａｘ  ＝  Ｖｂｉａｓ／Ｒｍｉｎ
なお、レファレンス電流Ｉｒｅｆの値は、ＩｍａｘとＩｍｉｎの半分となるため、読み出し時におけるデータ判定の基準としての役割を果たす。
【００１３】
ここで、一つ問題がある。ＭＴＪ素子は、トンネル絶縁膜としての絶縁体を介して電流が流れる構造になっているので、その抵抗値は、トンネル絶縁膜の膜厚の変化に対して、指数関数的に変化する。
【００１４】
つまり、非特許文献２に基づいてレファレンス電位を生成したとしても、例えば、ＮＯＲ型フラッシュメモリで採用しているようなレファレンス電位を用いる差動センスアンプ方式による読み出し原理を採用すると、ＭＴＪ素子のトンネル絶縁膜の厚さのばらつきにより、ＭＴＪ素子の抵抗値にばらつきが発生し、データを読み取れなくなる場合がある。
【００１５】
従って、これを防止するため、例えば、ＴＭＲによる磁気抵抗変化率（ＭＲ比：  Ｍａｇｎｅｔｏ  Ｒｅｓｉｓｔｉｖｅ  ｒａｔｉｏ  ）で決まるＭＴＪ素子の抵抗変動分ΔＲの半分（マージン）を、同一状態のレファレンスセルとメモリセルの抵抗値のばらつきよりも大きくしなければならない。
【００１６】
しかし、一般的には、ＭＲ比は、２０〜４０％であるため、量産段階での製造マージン、歩留まりなどを考慮すると、十分なマージンを確保できない可能性がある。
【００１７】
例えば、非特許文献２におけるバイアス電圧発生器（Ｓｅｌｆ−Ｃａｌｉｂｒａｔｉｎｇ  Ｒｅｆｅｒｅｎｃｅ  Ｂｉａｓ  Ｖｏｌｔａｇｅ  Ｇｅｎｅｒａｔｏｒ）内のレファレンスセルの抵抗値Ｒｍｉｎ，Ｒｍａｘと“０”状態のメモリセルの抵抗値Ｒ’ｍｉｎとが互いに異なった場合を想定する。
【００１８】
Ｒ’ｍｉｎ  ＞  １０×Ｒｍａｘ
Ｒ’ｍｉｎ  ＜  １０×Ｒｍｉｎ
となった場合は、一般的には、２０〜４０％程度であるＭＲ比では、レファレンスとしての役割を果たし得ない。
【００１９】
Ｒｍｉｎ  ＜  Ｒ’ｍｉｎ  ＜  Ｒｍａｘ  として、
Ｒ’ｍｉｎ  ＝  Ｒｍｉｎ  ＋δＲｍｉｎ  とすると、
2005018916.tif 000003
【００２０】
ＭＲ比を“ＭＲ”と表すと、
Ｒｍａｘ  ＝  Ｒｍｉｎ  ×  （１＋ＭＲ）  であるから、
2005018916.tif 000004
【００２１】
従って、ＴＭＲによる磁気抵抗変化率（ＭＲ比）で決まるメモリセル（ＭＴＪ素子）の抵抗値の変動量の半分以上、メモリセルとレファレンスセルとの間で抵抗値のばらつきが生じると（ＭＲ／２  ＜  δＲｍｉｎ／Ｒｍｉｎ）、抵抗値がＲｍａｘであるメモリセルとレファレンスセルとの比較ができなくなる。また、かかる場合には、抵抗値がＲｍｉｎであるメモリセルとレファレンスセルとの比較もできなくなる。
【００２２】
具体的には、
2005018916.tif 000005
つまり、
ＭＲ／２  ×  １／（１＋ＭＲ）  ＞  ｜δＲｍｉｎ／Ｒｍｉｎ｜
を満たす必要がある。ＭＲ比が、２０〜４０％の範囲内であれば、抵抗値のばらつきは、ＭＲ比により決まる抵抗値の変動量の８．３〜１４．２％未満である必要がある。
【００２３】
（２）  バイアス電圧に関して
ＭＲ比は、ＭＴＪ素子の両端子間に印加される電位差が増加するに従って減少する特性がある。この特性については、例えば、Ｍ．  Ｄｕｒｌａｍ  ｅｔ．ａｌによって確認されている（非特許文献３参照）。
【００２４】
これを考慮しつつ、ＭＴＪ素子に対するバイアス電圧の最適値を求める。
【００２５】
ＭＴＪ素子に対するバイアス電流を、Ｉｃとし、“０”状態のＭＴＪ素子の抵抗値をＲｃ（０）とし、“１”状態のＭＴＪ素子の抵抗値をＲｃ（１）とし、バイアス電流Ｉｃを与えたときに“０”状態のＭＴＪ素子の両端子間に生じる電位差をＶ（０）とし、バイアス電流Ｉｃを与えたときに“１”状態のＭＴＪ素子の両端子間に生じる電位差をＶ（１）とすると、
Ｖ（１）  ＝  Ｉｃ×Ｒｃ（１）、Ｖ（０）  ＝  Ｉｃ×Ｒｃ（０）
となる。
【００２６】
また、ＭＲ比のバイアス電圧依存性を、
ＭＲ（Ｖ）  ＝  ＭＲ（０）−ｋ×Ｖ
（但し、Ｖ  は、ＭＴＪ素子に印加するバイアス電圧、ＭＲ（Ｖ）は、ＭＴＪ素子にバイアス電圧Ｖを印加したときのＭＲ比、ＭＲ（０）は“０”状態のＭＴＪ素子のＭＲ比、ＭＲ（１）は“１”状態のＭＴＪ素子のＭＲ比、ｋは、定数である。）
と表すと、
2005018916.tif 000006
となる。
【００２７】
従って、
Ｖ（１）  ＝  ｛１＋ＭＲ（０）｝÷［ｋ＋１／｛Ｉｃ×Ｒｃ（０）｝］  より
Ｖ（１）−Ｖ（０）が最大になるＩｃを求めると、
ｄ｛Ｖ（１）−Ｖ（０）｝／ｄＩｃ
＝  ［１＋ＭＲ（０）−｛Ｉｃ×Ｒｃ（０）×ｋ＋１｝２］×Ｒｃ÷｛Ｉｃ×Ｒｃ（０）×ｋ＋１｝２
より、
Ｉｃ  ＝  ［√｛１＋ＭＲ（０）｝−１］／｛Ｒｃ（０）×ｋ｝
となる。
【００２８】
ＭＲ（０）は、現在、０．５を越えたという報告はない。
√｛１＋ＭＲ（０）｝−１  ≒  ＭＲ（０）／２と近似する。また、ＭＲは、ＭＲ（０）の半分になる電圧をＶｈとすると、Ｖｈ  ＝  ＭＲ（０）／（２×ｋ）となる。
【００２９】
つまり、
Ｉｃ  ＝  ［√｛１＋ＭＲ（０）｝−１］／｛Ｒｃ（０）×ｋ｝  ≒  Ｖｈ／Ｒｃ（０）
となる。
【００３０】
従って、バイアス電圧は、Ｖｈ近傍が望ましいことになる。
【００３１】
例えば、非特許文献４に開示される回路において、ＭＯＳトランジスタの抵抗がＭＴＪ素子の抵抗よりも十分に小さいならば、バイアス電圧の値を、Ｖｈに設定することになる。
【００３２】
この回路においては、レファレンスセル（ＭＴＪ素子）とオペアンプを使用してバイアス電圧を生成しているが、このレファレンスセルの抵抗値にばらつきが発生すると、メモリセルに対するバイアス電圧がＶｈにならなくなる。非特許文献４に使用されている記号を使うと、ＳＬ及びｂＳＬの電圧値がＶｈからずれることになる。
【００３３】
例えば、バイアス電圧が高くなると、ＭＲ比が小さくなり、“１”と“０”の信号差も小さくなる。また、バイアス電圧が低くなると、バイアス電圧の差が小さくなるため、読み出しマージンが落ちる。
【００３４】
（３）  バイアス電流に関して
ＭＴＪ素子に対するバイアス電流に関しては、センス回路を、図３２に示すような簡単な構成でモデル化する。即ち、負荷抵抗Ｒ１とメモリセル（ＭＴＪ素子）の抵抗Ｒｃとの差を出力電圧Ｖｏとして読み出す。以下の考察によれば、負荷抵抗Ｒ１をメモリセルの抵抗Ｒｃと同じ程度にすることで、“１”と“０”の信号差を大きくできることが分かる。
【００３５】
非特許文献４における回路では、定電流源がこの負荷抵抗に相当する。ここで、この定電流源をＭＴＪ素子で構成すると面積効率が良くなる。例えば、この定電流源を１つのＭＴＪ素子とカレントミラー回路とにより構成する。
【００３６】
但し、上記議論と同様、この定電流源を１つのＭＴＪ素子から構成すると、この１つのＭＴＪ素子の抵抗値が、メモリセル（ＭＴＪ素子）の抵抗値からずれている場合、信号電圧差は、理想値よりも小さくなる。例えば、この定電流源を、メモリセルアレイが配置される領域とは異なる別の領域にレイアウトした場合、リソグラフィなどの加工バラツキにより、ＭＴＪ素子の抵抗値に差異が生じる可能性が充分にある。
【００３７】
例えば、図３２に示す回路において、Ｖｏ（１）とＶｏ（０）の差が大きくなるようなＲｌの値を求める。
【００３８】
ここで、Ｖｏ（１）  は、ＭＴＪ素子が“１”状態のときの出力電圧、Ｖｏ（０）  は、ＭＴＪ素子が“０”状態のときの出力電圧、Ｒｃ（１）  は、“１”状態のＭＴＪ素子の抵抗値、Ｒｃ（０）  は、“０”状態のＭＴＪ素子の抵抗値とする。
【００３９】
Ｖｏ（１）  ＝  Ｖｃ×Ｒｃ（１）／［Ｒｃ（１）＋Ｒｌ］
Ｖｏ（０）  ＝  Ｖｃ×Ｒｃ（０）／［Ｒｃ（０）＋Ｒｌ］
Ｖｏ（１）−Ｖｏ（０）  ＝  Ｖｃ×｛Ｒｃ（１）／［Ｒｃ（１）＋Ｒｌ］−Ｒｃ（０）／［Ｒｃ（０）＋Ｒｌ］｝
従って、
2005018916.tif 000007
Ｒｃ（１）＞Ｒｃ（０）より、Ｖｏ（１）＞Ｖｏ（０）＞０であり、Ｒｌ＞０の条件から、Ｖｏ（１）−Ｖｏ（０）が最も大きくなるＲｌは、
Ｒｌ  ＝  √（Ｒｃ（１）×Ｒｃ（０）
となる。
【００４０】
この時、
Ｖｏ（１）−Ｖｏ（０）  ＝  Ｖｃ×｛１／［１＋Ｒｌ／Ｒｃ（１）］−１／［１＋Ｒｌ／Ｒｃ（０）］｝
＝  Ｖｃ×｛１／［１＋√｛Ｒｃ（０）／Ｒｃ（１）｝］−１／［１＋√｛Ｒｃ（１）／Ｒｃ（０）｝］｝
＝  Ｖｃ×［Ｒｃ（１）−Ｒｃ（０）］／［√Ｒｃ（１）＋√Ｒｃ（０）］＾２
となる。
【００４１】
Ｒｃ（０）＝Ｒｃ、Ｒｃ（１）＝Ｒｃ＋ΔＲｃを代入して、
Ｒｌ  ＝  √［Ｒｃ×（Ｒｃ＋ΔＲｃ）］
ΔＲｃ＜Ｒｃから、√を近似すると、
Ｒｌ  ＝  Ｒｃ×√（１＋ΔＲｃ／Ｒｃ）
≒  Ｒｃ×（１＋ΔＲｃ／２×Ｒｃ）
＝  Ｒｃ＋ΔＲｃ／２  ⇒  Ｒｃ（１）とＲｃ（０）の中間値
Ｖｏ（１）−Ｖｏ（０）  ＝  Ｖｃ×ΔＲｃ／［２Ｒｃ＋ΔＲｃ＋２Ｒｃ×√（１＋ΔＲｃ／Ｒｃ）］
≒  Ｖｃ×ΔＲｃ／［２×（２×Ｒｃ＋ΔＲｃ）］
となる。
【００４２】
以上のように、レファレンスセル及び定電流源を使用し、かつ、バイアス電圧の値を設定するためにＭＴＪ素子を使用する理由は、ＭＴＪ素子の抵抗及びＭＲ比に温度依存性やバイアス依存性があり、また、ＭＴＪ素子は、ＭＯＳトランジスタに対して、特性が大きく異なるためである。ＭＲ比の温度依存性に関しては、例えば、非特許文献３に記載されている。
【００４３】
（４）  寄生容量に関して
ＭＴＪ素子のトンネル絶縁膜の厚さは、数ｎｍ程度しかない。つまり、トンネル絶縁膜の厚さは、それを構成する物質の分子の大きさの１０倍もなく、たかが数倍程度であり、これ以上のさらなる薄膜化は難しい。微細化技術により、ＭＴＪ素子のサイズは、縮小される方向にあるため、トンネル絶縁膜の薄膜化を実現できないとなると、ＭＴＪ素子の抵抗は、微細化により、増大することになる。
【００４４】
読み出しにより、ビット線には、読み出し電位が現れるが、この電位は、読み出し電流の値とメモリセル（ＭＴＪ素子）の抵抗値とにより決定される。電位が安定するまでの時間は、おおまかには、ＭＴＪ素子の抵抗と、ビット線などの読み出しに関わる配線の寄生容量との積に比例して増大する。
【００４５】
この寄生容量は、微細化により配線間の距離が短くなっているため、配線幅が変わらないとすると、単位長さあたりの容量は、増大する傾向にある。また、微細化により、ビット線の幅が狭くなることが考えられるが、磁気ランダムアクセスメモリの場合には、ビット線には、書き込みのための磁界を発生させるため、数ｍＡ程度の電流を流す必要がある。つまり、エレクトロマイグレーションを考慮すると、線幅を減らした場合、線の厚みを増やす必要がある。
【００４６】
従って、磁気ランダムアクセスメモリでは、微細化により、単位長さあたりの寄生容量は、さらに増大することになる。
【００４７】
【特許文献１】
ＵＳＰ６，０８１，４４５、「Ｍｅｔｈｏｄ  ｔｏ  Ｗｒｉｔｅ／Ｒｅａｄ  ＭＲＡＭ  Ａｒｒａｙｓ」
【００４８】
【非特許文献１】
ＩＳＳＣＣ２０００  Ｔｅｃｈｎｉｃａｌ  Ｄｉｇｅｓｔ  ｐ．１２８，「Ａ  １０ｎｓ  Ｒｅａｄ  ａｎｄ  Ｗｒｉｔｅ  Ｎｏｎ−Ｖｏｌａｔｉｌｅ  Ｍｅｍｏｒｙ  Ａｒｒａｙ  Ｕｓｉｎｇ  ａ  Ｍａｇｎｅｔｉｃ  Ｔｕｎｎｅｌ  Ｊｕｎｃｔｉｏｎ  ａｎｄ  ＦＥＴ  Ｓｗｉｔｃｈ  ｉｎ  ｅａｃｈ  Ｃｅｌｌ」
【００４９】
【非特許文献２】
ＩＳＳＣＣ２００１  Ｔｅｃｈｎｉｃａｌ  Ｄｉｇｅｓｔ  ｐ．１２２，「Ａ  ２５６ｋｂ  ３．０Ｖ  １Ｔ１ＭＴＪ  Ｎｏｎｖｏｌａｔｉｌｅ  Ｍａｇｎｅｔｏｒｅｓｉｓｔｉｖｅ  ＲＡＭ」
【００５０】
【非特許文献３】
ＩＳＳＣＣ２０００  Ｔｅｃｈｎｉｃａｌ  Ｄｉｇｅｓｔ  ｐ．１３０「Ｎｏｎｖｏｌａｔｉｌｅ  ＲＡＭ  ｂａｓｅｄ  ｏｎ  Ｍａｇｎｅｔｉｃ  Ｔｕｎｎｅｌ  Ｊｕｎｃｔｉｏｎ  Ｅｌｅｍｅｎｔｓ」，  Ｓｌｉｄｅ  Ｓｕｐｐｌｅｍｅｎｔ  （ｐ．９６）
【００５１】
【非特許文献４】
Ｒｏｙ  Ｓｃｈｅｕｅｒｌｅｉｎ  ｅｔ．ａｌ，  「Ａ  １０ｎｓ  Ｒｅａｄ  ａｎｄ  Ｗｒｉｔｅ  Ｎｏｎ−Ｖｏｌａｔｉｌｅ  Ｍｅｍｏｒｙ  Ａｒｒａｙ  Ｕｓｉｎｇ  ａ  Ｍａｇｎｅｔｉｃ  Ｔｕｎｎｅｌ  Ｊｕｎｃｔｉｏｎ  ａｎｄ  ＦＥＴ  Ｓｗｉｔｃｈ  ｉｎ  ｅａｃｈ  Ｃｅｌｌ」，Ｆｉｇｕｒｅ  ７．２．５
【００５２】
【発明が解決しようとする課題】
本発明は、上述の問題点を解決するためになされたもので、その目的は、ＭＴＪ素子のトンネル絶縁膜に厚さのばらつきが生じても、最適なレファレンス電圧を生成すること、ＭＴＪ素子の微細化によってその抵抗値が増大しても、読み出し速度の低下を招かないようにすること、さらに、ＭＴＪ素子に対する最適な書き込み電流の値、供給タイミングを見出すことにある。
【００５３】
【課題を解決するための手段】
本発明の例に関わる磁気ランダムアクセスメモリは、磁気抵抗効果素子から構成されるメモリセルと、前記メモリセルのデータを判断する基準を作るための複数のレファレンスセルとを備え、前記複数のレファレンスセルに対しては、それぞれ、独立に、データの書き込み／読み出しが可能となっている。
【００５４】
本発明の例に関わる読み出し方法は、メモリセル及び複数のレファレンスセルを構成する複数の磁気抵抗効果素子の特性を検査し、前記複数の磁気抵抗効果素子の特性に基づいて、前記複数のレファレンスセルの各々に、個別に、データを書き込み、前記メモリセルのデータを読み出す際に、前記複数のレファレンスセルを用いて、前記メモリセルのデータを判断する基準を作る、というものである。
【００５５】
【発明の実施の形態】
以下、図面を参照しながら、本発明の例に関わる磁気ランダムアクセスメモリについて詳細に説明する。
【００５６】
１．  第１実施の形態
図１は、本発明の第１実施の形態に関わる磁気ランダムアクセスメモリの読み出し回路の主要部を示している。
【００５７】
レファレンス電位Ｖｒｅｆを生成するためのレファレンス電位生成回路１０は、メモリセル（ＭＴＪ素子）ＭＣと同じ構造を有する複数のレファレンスセル（ＭＴＪ素子）ＲＣから構成される。複数のレファレンスセルＲＣの各々に対しては、個別に、所定のデータを書き込むことができるように、レファレンス電位生成回路１０内には、書き込みに必要な回路が配置されている。
【００５８】
ＭＴＪ素子に使用されるトンネル絶縁膜は、一般的には、Ａｌ２Ｏ３（アルミナ）である。ここで、このトンネル絶縁膜は、その厚さのばらつきを抑えるために、通常、Ａｌ（アルミ）を自然酸化することにより形成される。しかし、製造プロセス上の理由などから、トンネル絶縁膜の厚さにばらつきが生じない、ということは、現実的にはあり得ない。
【００５９】
従って、データ“１”を読み出すときに生じる電位とデータ“０”を読み出すときに生じる電位とのちょうど中間の値を有するレファレンス電位Ｖｒｅｆを生成するためには、複数のレファレンスセルＲＣのうち、データ“１”のセル数とデータ“０”のセル数を半々（同数）とするだけでは、不十分である。
【００６０】
つまり、トンネル絶縁膜の厚さのばらつきに依存して、複数のレファレンスセルＲＣのうち、データ“１”のセル数とデータ“０”のセル数とを自由に変えられることが要求される。例えば、データ“１”を読み出すときに生じる電位とデータ“０”を読み出すときに生じる電位とのちょうど中間の値を有するレファレンス電位Ｖｒｅｆを生成するためには、データ“１”のセル数とデータ“０”のセル数とを、積極的に異ならせなければならない場合もある。
【００６１】
つまり、
Ｒｍａｘ  ＞  １／ｎ  ×  ΣＲｒｅｆ  ＞  Ｒｍｉｎ  の条件で、
Ｒｍａｘ  −１／ｎ  ×  ΣＲｒｅｆ  ＝  １／ｎ  ×  ΣＲｒｅｆ  −  Ｒｍｉｎ
が実現できるように、ｎ（ｎは、複数）個のレファレンスセルＲＣの抵抗値Ｒｒｅｆを調整する。
【００６２】
レファレンスセルＲＣに与えるバイアス電流は、メモリセルＭＣに与えるバイアス電流のｎ倍（本実施の形態では、ｎ＝８）として、１／ｎを実現する。このために、カレントミラー回路を使用する。通常、“１”状態のレファレンスセル数と“０”状態のレファレンスセル数とは、等しくするが、ここでは、ＭＴＪ素子の抵抗値のばらつきに応じて、例えば、“１”状態のレファレンスセル数を減少させ、“０”状態のレファレンスセル数を増加させるなど、“１”状態のレファレンスセル数と“０”状態のレファレンスセル数とを異ならせる。
【００６３】
トンネル絶縁膜の厚さが理想値から極端にはずれているレファレンスセル（ＭＴＪ素子）ＲＣについては、それをレファレンスセルとして使用しないように排除する。この場合、レファレンスセルＲＣの総数ｎから排除したレファレンスセルの数を引いた数に相当する分だけ、メモリセルＭＣに流すバイアス電流を増やす。
【００６４】
不良のレファレンスセルを排除する方法については、半導体メモリの分野で、良く行われているリダンダンシィ技術を適用する。例えば、レーザカット法により、不良のレファレンスセルのアドレスを記憶素子（フューズ、ＭＴＪ素子など）にプログラミングし、そのプログラミングしたアドレスと指定アドレスが一致した場合、カラムデコーダを非選択とし、かつ、バイアス電流を削減して、レファレンス電流／電位を生成する。
【００６５】
図１の読み出し回路の具体的な構成について説明する。
ビット線ＢＬ＜ｉ＞には、メモリセルＭＣとしてのＭＴＪ素子が接続される。メモリセルＭＣの一端は、読み出し選択トランジスタＲＳＴを経由して、接地点に接続される。
【００６６】
読み出し選択トランジスタＲＳＴのゲートは、読み出しワード線ＷＬｎに接続される。デコーダとしてのアンド回路ＡＤ＜ＷＬｎ＞は、ロウアドレスイネーブル信号ＲＤｅｎａｂｌｅが“Ｈ”のときに、ロウアドレス信号ＲＤ＜ＷＬｎ＞に基づいて、読み出し選択トランジスタＲＳＴのオン／オフを制御する。つまり、ロウアドレスイネーブル信号ＲＤｅｎａｂｌｅが“Ｈ”のときに、ロウアドレス信号ＲＤ＜ＷＬｎ＞の全ビットが“Ｈ”になると、読み出しワード線ＷＬｎが“Ｈ”となり、読み出し選択トランジスタＲＳＴがオンとなる。
【００６７】
ビット線ＢＬ＜ｉ＞の一端は、転送トランジスタＮ＜ＢＬｉ＞を経由して、データ線ＤＬに接続される。転送トランジスタＮ＜ＢＬｉ＞のオン／オフは、デコーダとしてのアンド回路ＡＤ＜ＢＬｉ＞の出力信号により制御される。例えば、カラムアドレスイネーブル信号ＣＤｅｎａｂｌｅが“Ｈ”のときに、カラムアドレス信号ＣＤ＜ＢＬｉ＞の全ビットが“Ｈ”になると、転送トランジスタＮ＜ＢＬｉ＞は、オンとなる。
【００６８】
データ線ＤＬには、ノードＮ１を、所定電位にクランプするためのクランプ回路が接続される。クランプ回路は、プラス側入力端子にクランプ電位Ｖｃｌａｍｐ  が入力され、マイナス側入力端子にノードＮ１の電位が入力されるオペアンプＯＰ１と、ゲートにオペアンプＯＰ１から出力される出力信号ＯＵＴが入力されるＮチャネルＭＯＳトランジスタＱＮ１とから構成される。
【００６９】
センスアンプＳ／Ａは、レファレンス電位生成回路１０から出力されるレファレンス電位Ｖｒｅｆと、データ線ＤＬの電位とを比較し、メモリセルＭＣのデータを判定する。センスアンプＳ／Ａは、メモリセルＭＣのデータを、読み出しデータＳＡＯＵＴとして出力する。
【００７０】
レファレンス電位生成回路１０は、メモリセルＭＣと同じＭＴＪ素子から構成されるｎ（ｎは、複数）個のレファレンスセルＲＣを有している。レファレンスセルＲＣの各々に対しては、個別に、所定のデータを書き込むことができるように、レファレンス電位生成回路１０内には、書き込みに必要な回路が配置されている。
【００７１】
レファレンスセルＲＣの一端は、読み出し選択トランジスタＲＳＴを経由して、接地点に接続される。読み出し選択トランジスタＲＳＴのゲートは、読み出しワード線ＷＬｎに接続される。アンド回路ＡＤ＜ＷＬｎ＞は、ロウアドレスイネーブル信号ＲＤｅｎａｂｌｅが“Ｈ”のとき、ロウアドレス信号ＲＤ＜ＷＬｎ＞に基づいて、読み出し選択トランジスタＲＳＴのオン／オフを制御する。
【００７２】
例えば、ロウアドレスイネーブル信号ＲＤｅｎａｂｌｅが“Ｈ”のとき、ロウアドレス信号ＲＤ＜ＷＬｎ＞の全ビットが“Ｈ”になると、読み出しワード線ＷＬｎが“Ｈ”となり、読み出し選択トランジスタＲＳＴがオンとなる。
【００７３】
レファレンスセルビット線ｒＢＬ＜０＞，ｒＢＬ＜１＞，・・・ｒＢＬ＜７＞の一端は、転送トランジスタＮ＜０＞，Ｎ＜１＞，・・・Ｎ＜７＞を経由して、レファレンスセルデータ線ｒＤＬに接続される。転送トランジスタＮ＜０＞，Ｎ＜１＞，・・・Ｎ＜７＞のオン／オフは、デコーダとしてのアンド回路ＡＤ＜０＞，ＡＤ＜１＞，・・・ＡＤ＜７＞の出力信号により制御される。
【００７４】
例えば、カラムアドレスイネーブル信号ＣＤｅｎａｂｌｅが“Ｈ”のとき、カラムアドレス信号ＣＤ＜０＞，ＣＤ＜１＞，・・・ＣＤ＜７＞の全ビットが“Ｈ”になると、転送トランジスタＮ＜０＞，Ｎ＜１＞，・・・Ｎ＜７＞は、オンとなる。
【００７５】
レファレンスセルデータ線ｒＤＬには、ノードＮ２を、所定電位にクランプするためのクランプ回路が接続される。クランプ回路は、プラス側入力端子にクランプ電位Ｖｃｌａｍｐ  が入力され、マイナス側入力端子にノードＮ２の電位が入力されるオペアンプＯＰ２と、ゲートにオペアンプＯＰ２から出力される出力信号ＯＵＴが入力されるＮチャネルＭＯＳトランジスタＱＮ２とから構成される。
【００７６】
バイアス電流供給回路ＣＳ１は、ＰチャネルＭＯＳトランジスタＱＰ３、ＮチャネルＭＯＳトランジスタＱＮ３，ＱＮ４及び定電流源Ｉ１から構成される。
【００７７】
バイアス電流供給回路ＣＳ１により生成されたバイアス電流Ｉ１は、ＰチャネルＭＯＳトランジスタＱＰ１，ＱＰ３からなるカレントミラー回路により、データ線ＤＬ及びビット線ＢＬ＜ｉ＞を経由して、メモリセルＭＣに供給される。
【００７８】
また、バイアス電流Ｉ１は、ＰチャネルＭＯＳトランジスタＱＰ１，ＱＰ２からなるカレントミラー回路により、レファレンスデータ線ｒＤＬ及びレファレンスビット線ｒＢＬ＜０＞，ｒＢＬ＜１＞，・・・ｒＢＬ＜７＞を経由して、レファレンスセルＲＣに供給される。
【００７９】
図２は、図１の読み出し回路の応用例である。この読み出し回路は、図１の読み出し回路に、不良レファレンスセルを排除するためのシステムを搭載した点に特徴を有する。
【００８０】
アドレスコンパレータ１は、レファレンスセルＲＣの数と同じ数だけ設けられている。本実施の形態では、レファレンスセルＲＣの数は、８個であるため、アドレスコンパレータ１も、レファレンスセルＲＣの各アドレスに対応して、８個だけ設けられている。
【００８１】
アドレスコンパレータ１は、記憶素子（例えば、フューズ、ＭＴＪ素子など）に記憶された不良レファレンスセルのアドレスと、レファレンス電流／電圧を生成するために供給されるレファレンスセルをアクセスするためのアドレスとを比較する。
【００８２】
そして、アドレスコンパレータ１は、両アドレスが一致する場合に、一致信号ＭＡＴＣＨ＜０＞，ＭＡＴＣＨ＜１＞，・・・ＭＡＴＣＨ＜７＞を“Ｈ”にする。
【００８３】
例えば、レファレンスビット線ｒＢＬ＜３＞に接続されるレファレンスセル（ＭＴＪ素子）ＲＣが不良であった場合を考える。この場合、レファレンスビット線ｒＢＬ＜３＞に接続されるレファレンスセルを指定するアドレスが、アドレスコンパレータ＜３＞に対応する記憶素子に記憶される。
【００８４】
アドレスコンパレータ＜３＞は、レファレンス電流／電圧を生成する際に、記憶素子に記憶された不良アドレスと、レファレンス電流／電圧を生成するために供給されるアドレスとを比較する。アドレスコンパレータ＜３＞は、両アドレスが一致すると、一致信号ＭＡＴＣＨ＜３＞を“Ｈ”にする。
【００８５】
この時、ＰチャネルＭＯＳトランジスタＰ３は、オフ状態となる。また、デコーダ＜３＞は、非動作状態となり、その出力は、アドレス信号にかかわらず、常に、“Ｌ”となる。このため、ＮチャネルＭＯＳトランジスタＮ３は、オフ状態となる。
【００８６】
従って、レファレンスビット線ｒＢＬ＜３＞に接続されるレファレンスセル（ＭＴＪ素子）は、排除され、レファレンス電流／電圧を生成する際に使用されることがない。この時、残りのレファレンスビット線ｒＢＬ＜０＞，・・・ｒＢＬ＜２＞，ｒＢＬ＜４＞，・・・ｒＢＬ＜７＞に接続される７個のレファレンスセルにバイアス電流Ｉ１が供給される。
【００８７】
なお、図２の回路は、不良のレファレンスセルを単に排除する場合の例であるが、リダンダンシイ回路のように、別途、冗長のレファレンスセルを設けておいて、不良のレファレンスセルを冗長のレファレンスセルに置き換える、という技術を採用してもよい。
【００８８】
また、１つのレファレンスセルに単独にアクセスできるようなアドレスを割り当てておき、各々のレファレンスセルに流れる電流を外部からモニタできるようなモニタ回路を付加してもよい。
【００８９】
図３は、図２のアドレスコンパレータの回路例を示している。
アドレスコンパレータ＜ｊ＞（ｊ＝０，１，・・・７）は、アドレスのビット数に相当する数のｋ個のエクスクルーシブノア回路Ｅｘ−ＮＯＲ＜０＞，・・・Ｅｘ−ＮＯＲ＜ｋ＞と、アンド回路ＡＤ１とから構成される。
【００９０】
エクスクルーシブノア回路Ｅｘ−ＮＯＲ＜０＞，・・・Ｅｘ−ＮＯＲ＜ｋ＞には、記憶素子に記憶された不良アドレスＡｆｕｓｅ＜０＞，・・・Ａｆｕｓｅ＜ｋ＞及びアクセスのためのアドレスＡｒｅｆ＜０＞，・・・Ａｒｅｆ＜ｋ＞が入力される。
【００９１】
不良アドレスＡｆｕｓｅ＜０＞，・・・Ａｆｕｓｅ＜ｋ＞とアクセスのためのアドレスＡｒｅｆ＜０＞，・・・Ａｒｅｆ＜ｋ＞の全ビットが完全に一致する場合には、全てのエクスクルーシブノア回路Ｅｘ−ＮＯＲ＜０＞，・・・Ｅｘ−ＮＯＲ＜ｋ＞の出力信号が“Ｈ”となるため、アンド回路ＡＤ１から出力される一致信号ＭＡＴＣＨ＜ｊ＞は、“Ｈ”となる。
【００９２】
一方、不良アドレスＡｆｕｓｅ＜０＞，・・・Ａｆｕｓｅ＜ｋ＞とアクセスのためのアドレスＡｒｅｆ＜０＞，・・・Ａｒｅｆ＜ｋ＞の少なくとも１つのビットが不一致である場合には、その不一致のビットが入力されたエクスクルーシブノア回路の出力信号が“Ｌ”となるため、アンド回路ＡＤ１から出力される一致信号ＭＡＴＣＨ＜ｊ＞は、“Ｌ”となる。
【００９３】
図４及び図５は、図２のデコーダの回路例を示している。
デコーダ＜ｊ＞（ｊ＝０，１，・・・７）は、インバータＩ１と、アンド回路ＡＤ２とから構成される。
【００９４】
アンド回路ＡＤ２には、一致信号ＭＡＴＣＨ＜ｊ＞がインバータＩ１を経由した後に入力される。また、アンド回路ＡＤ２には、カラムアドレスイネーブル信号ＣＤｅｎａｂｌｅ及びカラムアドレス信号ＣＤ＜ｊ＞が入力される。
【００９５】
一致信号ＭＡＴＣＨ＜ｊ＞が“Ｌ”のときは、カラムアドレスイネーブル信号ＣＤｅｎａｂｌｅ及びカラムアドレス信号ＣＤ＜ｊ＞に基づいて、デコーダ＜ｊ＞の出力信号の値が決定される。つまり、カラムアドレスイネーブル信号ＣＤｅｎａｂｌｅが“Ｈ”のとき、カラムアドレス信号ＣＤ＜ｊ＞の全てのビットが“Ｈ”であると、デコーダ＜ｊ＞の出力信号は、“Ｈ”になる。
【００９６】
これに対し、一致信号ＭＡＴＣＨ＜ｊ＞が“Ｈ”のときは、カラムアドレスイネーブル信号ＣＤｅｎａｂｌｅ及びカラムアドレス信号ＣＤ＜ｊ＞の値にかかわらず、デコーダ＜ｊ＞の出力信号は、常に“Ｌ”となる。
【００９７】
デコーダ＜ＢＬｉ＞は、アンド回路ＡＤ３から構成される。アンド回路ＡＤ３には、カラムアドレスイネーブル信号ＣＤｅｎａｂｌｅ及びカラムアドレス信号ＣＤ＜ＢＬｉ＞が入力される。
【００９８】
カラムアドレスイネーブル信号ＣＤｅｎａｂｌｅが“Ｈ”のとき、カラムアドレス信号ＣＤ＜ｊ＞の全てのビットが“Ｈ”であると、デコーダ＜ＢＬｉ＞の出力信号は、“Ｈ”になる。これに対し、カラムアドレスイネーブル信号ＣＤｅｎａｂｌｅが“Ｌ”のときは、カラムアドレス信号ＣＤ＜ｊ＞にかかわらず、デコーダ＜ＢＬｉ＞の出力信号は、常に“Ｌ”になる。
【００９９】
図６は、図３のアドレスコンパレータをさらに具体的に示したものである。
【０１００】
本例では、アドレスコンパレータ＜ｊ＞は、不良アドレスを記憶する記憶素子を含んでいる。記憶素子は、例えば、プログラム可能なＭＴＪ素子  ＭＴＪ（Ａｆｕｓｅ＜０＞），  ＭＴＪ（ｂＡｆｕｓｅ＜０＞），  ・・・ＭＴＪ（Ａｆｕｓｅ＜ｋ＞），  ＭＴＪ（ｂＡｆｕｓｅ＜ｋ＞）  から構成される。
【０１０１】
なお、ＭＴＪ素子  ＭＴＪ（Ａｆｕｓｅ＜０＞），  ＭＴＪ（ｂＡｆｕｓｅ＜０＞），  ・・・ＭＴＪ（Ａｆｕｓｅ＜ｋ＞），  ＭＴＪ（ｂＡｆｕｓｅ＜ｋ＞）  に対するプログラムは、磁化状態（平行又は反平行）ではなく、トンネル絶縁膜を破壊するか否かで行う。従って、記憶素子は、レーザ溶断フューズや、電気的にプログラム可能な電気的フューズ  （Ｅ−ｆｕｓｅ）  などであってもよい。
【０１０２】
エクスクルーシブノア回路Ｅｘ−ＮＯＲ＜０＞，・・・Ｅｘ−ＮＯＲ＜ｋ＞は、例えば、１つのレファレンスセルＲＣを選択するために必要なアドレスのビット数に相当するだけの数、本例では、（ｋ＋１）個だけ存在する。
【０１０３】
全てのエクスクルーシブノア回路Ｅｘ−ＮＯＲ＜０＞，・・・Ｅｘ−ＮＯＲ＜ｋ＞の構成は、同じであるため、以下では、例えば、エクスクルーシブノア回路Ｅｘ−ＮＯＲ＜ｋ＞について、その構成を説明する。
【０１０４】
ＭＴＪ素子ＭＴＪ（Ａｆｕｓｅ＜ｋ＞），  ＭＴＪ（ｂＡｆｕｓｅ＜ｋ＞）  の一端は、ＰチャネルＭＯＳトランジスタＱＰ４及びＮチャネルＭＯＳトランジスタＱＮ５’を経由して、電源端子Ｖｄｄに接続される。ＭＯＳトランジスタＱＰ４のゲートには、プログラム信号ＰＲＯＧ＜ｋ＞が与えられ、ＭＯＳトランジスタＱＮ５’のゲートには、クランプ信号Ｖｃｌａｍｐが与えられる。
【０１０５】
また、ＭＴＪ素子ＭＴＪ（Ａｆｕｓｅ＜ｋ＞），  ＭＴＪ（ｂＡｆｕｓｅ＜ｋ＞）  の一端は、ＰチャネルＭＯＳトランジスタＱＰ５を経由して、電源端子Ｖｄｄに接続される。ＭＯＳトランジスタＱＰ５のゲートには、プログラム信号ＰＲＯＧ＜ｋ＞の反転信号ｂＰＲＯＧ＜ｋ＞が与えられる。
【０１０６】
ＭＴＪ素子ＭＴＪ（Ａｆｕｓｅ＜ｋ＞）  の他端は、ＮチャネルＭＯＳトランジスタＱＮ５を経由して、接地端子Ｖｓｓに接続される。ＭＯＳトランジスタＱＮ５のゲートには、レファレンスセルを選択するためのアドレス信号ｂＡｒｅｆ＜ｋ＞が入力される。
【０１０７】
また、ＭＴＪ素子ＭＴＪ（ｂＡｆｕｓｅ＜ｋ＞）  の他端は、ＮチャネルＭＯＳトランジスタＱＮ６を経由して、接地端子Ｖｓｓに接続される。ＭＯＳトランジスタＱＮ６のゲートには、レファレンスセルを選択するためのアドレス信号Ａｒｅｆ＜ｋ＞が入力される。アドレス信号ｂＡｒｅｆ＜ｋ＞は、アドレス信号Ａｒｅｆ＜ｋ＞の反転信号である。
【０１０８】
プログラム信号ｂＰＲＯＧ＜ｋ＞は、不良アドレスをＭＴＪ素子ＭＴＪ（Ａｆｕｓｅ＜ｋ＞），  ＭＴＪ（ｂＡｆｕｓｅ＜ｋ＞）  に書き込むときに“Ｌ”となる信号である。
【０１０９】
なお、ＭＴＪ素子ＭＴＪ（Ａｆｕｓｅ＜ｋ＞），  ＭＴＪ（ｂＡｆｕｓｅ＜ｋ＞）  は、不良アドレスを書き込む以前は、全て、“１”状態、トンネル絶縁膜が破壊されていない状態になっている。
【０１１０】
例えば、ＭＴＪ素子ＭＴＪ（Ａｆｕｓｅ＜ｋ＞）  に“０”、ＭＴＪ素子ＭＴＪ（ｂＡｆｕｓｅ＜ｋ＞）  に“１”を書き込む場合、アドレス信号ｂＡｒｅｆ＜ｋ＞を“Ｈ”、アドレス信号Ａｒｅｆ＜ｋ＞を“Ｌ”にし、かつ、プログラム信号ｂＰＲＯＧ＜ｋ＞を“Ｌ”にする。この時、ＭＴＪ素子ＭＴＪ（Ａｆｕｓｅ＜ｋ＞）  に過大電圧が印加され、そのトンネル絶縁膜が破壊されて、“０”が書き込まれる。
【０１１１】
また、ＭＴＪ素子ＭＴＪ（ｂＡｆｕｓｅ＜ｋ＞）  に“０”、ＭＴＪ素子ＭＴＪ（Ａｆｕｓｅ＜ｋ＞）  に“１”を書き込む場合、アドレス信号Ａｒｅｆ＜ｋ＞を“Ｈ”、アドレス信号ｂＡｒｅｆ＜ｋ＞を“Ｌ”にし、かつ、プログラム信号ｂＰＲＯＧ＜ｋ＞を“Ｌ”にする。この時、ＭＴＪ素子ＭＴＪ（ｂＡｆｕｓｅ＜ｋ＞）  に過大電圧が印加され、そのトンネル絶縁膜が破壊されて、“０”が書き込まれる。
【０１１２】
ＭＴＪ素子ＭＴＪ（Ａｆｕｓｅ＜ｋ＞），  ＭＴＪ（ｂＡｆｕｓｅ＜ｋ＞）  のトンネル絶縁膜の厚さを１〜２ｎｍとすると、このトンネル絶縁膜を破壊するために必要な電圧は、１〜５Ｖである。現在のＭＯＳ型半導体メモリにおいては、電源電圧の値は、約２．５Ｖであるため、この場合、チップ内に、専用の内部昇圧回路を設けることなく、プログラム動作を実行できる。
【０１１３】
インバータＩ２の入力端子は、ＭＴＪ素子ＭＴＪ（Ａｆｕｓｅ＜ｋ＞），  ＭＴＪ（ｂＡｆｕｓｅ＜ｋ＞）  の一端に接続され、その出力端子からは、エクスクルーシブノア回路Ｅｘ−ＮＯＲ＜ｋ＞の出力信号ＯＵＴ＜ｋ＞が得られる。
【０１１４】
そして、エクスクルーシブノア回路Ｅｘ−ＮＯＲ＜０＞，・・・Ｅｘ−ＮＯＲ＜ｋ＞の出力信号ＯＵＴ＜０＞，・・・ＯＵＴ＜ｋ＞は、アンド回路ＡＤ１に入力される。一致信号ＭＡＴＣＨ＜ｊ＞は、アンド回路ＡＤ１から出力される。
【０１１５】
なお、図６の回路は、通常のメモリセルアレイ内における不良セルを救済するためのリダンダンシィ回路に適用することもできる。即ち、図６の回路により、入力アドレスと不良アドレスとが一致するか否かを検出し、両者が一致する場合には、不良セルを冗長セルに置き換える。
【０１１６】
図７は、図１及び図２のオペアンプの回路例を示している。
このオペアンプＯＰ１，ＯＰ２は、入力信号を受けるためのＰチャネルＭＯＳトランジスタＱＰ６，ＱＰ７と、カレントミラー接続されるＮチャネルＭＯＳトランジスタＱＮ７，ＱＮ８と、オペアンプの活性／非活性を決めるイネーブル信号Ｅｎａｂｌｅを受けるためのＮチャネルＭＯＳとトランジスタＱＮ９とから構成される。
【０１１７】
このオペアンプＯＰ１，ＯＰ２は、２つの入力信号（＋，−）の差に応じた出力信号Ｏｕｔを出力する。２つの入力信号（＋，−）の値が等しいとき、オペアンプＯＰ１，ＯＰ２の出力信号は、零になる。
【０１１８】
図８は、図１及び図２のセンスアンプの回路例を示している。
このセンスアンプＳ／Ａは、入力信号を受けるためのＮチャネルＭＯＳトランジスタＱＮ１０，ＱＮ１１と、出力端子に接続されるＰチャネルＭＯＳトランジスタＱＰ８，ＱＰ１０と、クロスカップル接続されるＰチャネルＭＯＳトランジスタＱＰ９，ＱＰ１１と、センスアンプの活性／非活性を決めるイネーブル信号Ｅｎａｂｌｅを受けるためのＮチャネルＭＯＳとトランジスタＱＮ１２とから構成される。
【０１１９】
このセンスアンプＳ／Ａは、２つの入力信号（＋，−）の差を増大し、これを出力信号ＳＡＯＵＴ，ｂＳＡＯＵＴとして出力する。
【０１２０】
２．  第２実施の形態
図２は、本発明の第２実施の形態に関わる磁気ランダムアクセスメモリの読み出し回路の主要部を示している。
【０１２１】
ＭＴＪ素子のトンネル絶縁膜の厚さは、数ｎｍ程度であり、そのトンネル絶縁膜を構成する物質の分子の大きさの数倍程度である。このため、これ以上のトンネル絶縁膜の薄膜化は、難しい状況となっている。
【０１２２】
メモリセルの微細化の進行に併せて、ＭＴＪ素子のサイズも縮小される傾向にあるため、仮に、トンネル絶縁膜を薄膜化できないことになると、メモリセルの微細化に伴って、ＭＴＪ素子の抵抗値が増大することになる。
【０１２３】
ところで、磁気ランダムアクセスメモリでは、読み出し時に、ビット線に読み出し電位が現れる。この読み出し電位は、読み出し電流とＭＴＪ素子の抵抗値とにより生成される。読み出し電位が安定するまでの時間は、大まかに、ＭＴＪ素子の抵抗値と、ビット線などの読み出し動作に関わる配線の寄生容量との積に比例して増大する。
【０１２４】
この寄生容量は、メモリセルの微細化により増大する傾向にある。なぜなら、メモリセルの微細化により、ビット線などの読み出し動作に関わる配線同士の間隔が狭くなるからである。仮に、配線幅が変わらないとすると、配線同士の間隔が狭くなることにより、単位長さ当たりの容量は、増大する。
【０１２５】
メモリセルの微細化により、ビット線などの読み出し動作に関わる配線が短くなることが考えられるが、磁気ランダムアクセスメモリの場合、例えば、ビット線は、書き込み電流を流すための書き込み線としても使用される。つまり、そのビット線には、書き込みのための磁界を発生させるために、数ｍＡの電流を流す必要がある。これを考慮すると、エレクトロマイグレーションの防止などのため、配線の断面積を縮小させることができない。
【０１２６】
従って、例えば、配線幅を減らした場合には、その代わりに、厚さを増やし、配線の断面積を縮小させないことが重要となる。結果として、メモリセルの微細化により、ビット線などの読み出し動作に関わる配線の単位長さあたりの寄生容量は増大する。
【０１２７】
以上のことから、読み出し速度の低下を防ぐため、選択セル（ＭＴＪ素子）ＭＣとは別に、選択セルＭＣと同じ構造の複数のダミーセルＤＣをチップ内に設ける。そして、選択セルＭＣに対して並列に、これら複数のダミーセルＤＣを接続し、読み出し動作時におけるビット線の電流ドライブ能力を上げる。
【０１２８】
このダミーセルＤＣに対しても、レファレンスセルＲＣと同様に、プログラムが可能となるように、書き込みのための回路を付加しておく。このように、選択セルＭＣとダミーセルＤＣとを組み合わせることにより、レファレンスセルＲＣとのバランスを確保できるため、センスアンプＳ／Ａに対する最適な入力電圧を生成できる。
【０１２９】
図９の読み出し回路の具体的な構成について説明する。
ビット線ＢＬ＜ｉ＞には、メモリセルＭＣが接続される。また、データ線ＤＬには、メモリセルＭＣと同じ構成を有する（ｎ−１）個（ｎは、複数）のダミーセルＤＣからなるダミーセル回路３が接続される。ダミーセルＤＣの各々に対しては、個別に、所定のデータを書き込むことができるように、ダミーセル回路３Ａ内には、書き込みに必要な回路が配置される。
【０１３０】
メモリセルＭＣ及びダミーセルＤＣの一端は、それぞれ、読み出し選択トランジスタＲＳＴを経由して、接地点に接続される。
【０１３１】
読み出し選択トランジスタＲＳＴのゲートは、読み出しワード線ＷＬｎに接続される。デコーダとしてのアンド回路ＡＤ＜ＷＬｎ＞は、ロウアドレスイネーブル信号ＲＤｅｎａｂｌｅが“Ｈ”のときに、ロウアドレス信号ＲＤ＜ＷＬｎ＞に基づいて、読み出し選択トランジスタＲＳＴのオン／オフを制御する。つまり、ロウアドレスイネーブル信号ＲＤｅｎａｂｌｅが“Ｈ”のときに、ロウアドレス信号ＲＤ＜ＷＬｎ＞の全ビットが“Ｈ”になると、読み出しワード線ＷＬｎが“Ｈ”となり、読み出し選択トランジスタＲＳＴがオンとなる。
【０１３２】
ビット線ＢＬ＜ｉ＞の一端は、転送トランジスタＮ＜ＢＬｉ＞を経由して、データ線ＤＬに接続される。転送トランジスタＮ＜ＢＬｉ＞のオン／オフは、デコーダとしてのアンド回路ＡＤ＜ＢＬｉ＞の出力信号により制御される。例えば、カラムアドレスイネーブル信号ＣＤｅｎａｂｌｅが“Ｈ”のときに、カラムアドレス信号ＣＤ＜ＢＬｉ＞の全ビットが“Ｈ”になると、転送トランジスタＮ＜ＢＬｉ＞は、オンとなる。
【０１３３】
データ線ＤＬとダミーセルＤＣとの間には、複数の転送トランジスタＮ＜ＤＬ＞が接続される。転送トランジスタＮ＜ＤＬ＞のオン／オフは、カラムアドレスイネーブル信号ＣＤｅｎａｂｌｅにより制御される。カラムアドレスイネーブル信号ＣＤｅｎａｂｌｅが“Ｈ”のとき、転送トランジスタＮ＜ＤＬ＞がオンとなり、メモリセルＭＣに並列に、ダミーセルＤＣが接続される。
【０１３４】
データ線ＤＬには、ノードＮ１を、所定電位にクランプするためのクランプ回路が接続される。クランプ回路は、プラス側入力端子にクランプ電位Ｖｃｌａｍｐ  が入力され、マイナス側入力端子にノードＮ１の電位が入力されるオペアンプＯＰ１と、ゲートにオペアンプＯＰ１から出力される出力信号ｏｕｔが入力されるＮチャネルＭＯＳトランジスタＱＮ１とから構成される。
【０１３５】
センスアンプＳ／Ａは、レファレンス電位生成回路１０から出力されるレファレンス電位Ｖｒｅｆと、データ線ＤＬの電位とを比較し、メモリセルＭＣのデータを判定する。センスアンプＳ／Ａは、メモリセルＭＣのデータを、読み出しデータＳＡＯＵＴとして出力する。
【０１３６】
レファレンス電位生成回路１０は、メモリセルＭＣと同じＭＴＪ素子から構成されるｎ（ｎは、複数）個のレファレンスセルＲＣを有している。レファレンスセルＲＣの各々に対しては、個別に、所定のデータを書き込むことができるように、レファレンス電位生成回路１０内には、書き込みに必要な回路が配置されている。
【０１３７】
レファレンスセルＲＣの一端は、読み出し選択トランジスタＲＳＴを経由して、接地点に接続される。読み出し選択トランジスタＲＳＴのゲートは、読み出しワード線ＷＬｎに接続される。アンド回路ＡＤ＜ＷＬｎ＞は、ロウアドレスイネーブル信号ＲＤｅｎａｂｌｅが“Ｈ”のとき、ロウアドレス信号ＲＤ＜ＷＬｎ＞に基づいて、読み出し選択トランジスタＲＳＴのオン／オフを制御する。
【０１３８】
例えば、ロウアドレスイネーブル信号ＲＤｅｎａｂｌｅが“Ｈ”のとき、ロウアドレス信号ＲＤ＜ＷＬｎ＞の全ビットが“Ｈ”になると、読み出しワード線ＷＬｎが“Ｈ”となり、読み出し選択トランジスタＲＳＴがオンとなる。
【０１３９】
レファレンスセルビット線ｒＢＬ＜０＞，ｒＢＬ＜１＞，・・・ｒＢＬ＜７＞の一端は、転送トランジスタＮ＜０＞，Ｎ＜１＞，・・・Ｎ＜７＞を経由して、レファレンスセルデータ線ｒＤＬに接続される。転送トランジスタＮ＜０＞，Ｎ＜１＞，・・・Ｎ＜７＞のオン／オフは、デコーダとしてのアンド回路ＡＤ＜０＞，ＡＤ＜１＞，・・・ＡＤ＜７＞の出力信号により制御される。
【０１４０】
例えば、カラムアドレスイネーブル信号ＣＤｅｎａｂｌｅが“Ｈ”のとき、カラムアドレス信号ＣＤ＜０＞，ＣＤ＜１＞，・・・ＣＤ＜７＞の全ビットが“Ｈ”になると、転送トランジスタＮ＜０＞，Ｎ＜１＞，・・・Ｎ＜７＞は、オンとなる。
【０１４１】
レファレンスセルデータ線ｒＤＬには、ノードＮ２を、所定電位にクランプするためのクランプ回路が接続される。クランプ回路は、プラス側入力端子にクランプ電位Ｖｃｌａｍｐ  が入力され、マイナス側入力端子にノードＮ２の電位が入力されるオペアンプＯＰ２と、ゲートにオペアンプＯＰ２から出力される出力信号ｏｕｔが入力されるＮチャネルＭＯＳトランジスタＱＮ２とから構成される。
【０１４２】
バイアス電流供給回路ＣＳ１は、ＰチャネルＭＯＳトランジスタＱＰ３、ＮチャネルＭＯＳトランジスタＱＮ３，ＱＮ４及び定電流源Ｉ１から構成される。
【０１４３】
バイアス電流供給回路ＣＳ１により生成された電流Ｉ１は、ＰチャネルＭＯＳトランジスタＱＰ１，ＱＰ３からなるカレントミラー回路により、データ線ＤＬ及びビット線ＢＬ＜ｉ＞を経由して、メモリセルＭＣに供給される。
【０１４４】
また、電流Ｉ１は、ＰチャネルＭＯＳトランジスタＱＰ１，ＱＰ２からなるカレントミラー回路により、レファレンスデータ線ｒＤＬ及びレファレンスビット線ｒＢＬ＜０＞，ｒＢＬ＜１＞，・・・ｒＢＬ＜７＞を経由して、レファレンスセルＲＣに供給される。
【０１４５】
図１０は、図９の読み出し回路の変形例である。
この変形例では、レファレンスセルＲＣと同様に、各々のダミーセルＤＣにアドレスを振り分け、ダミーセル回路３Ａ内の転送トランジスタＮ＜ＤＬ＞のオン／オフを、カラムアドレス信号ＣＤ＜０＞，ＣＤ＜１＞，・・・ＣＤ＜７＞に基づいて個別に制御するようにしたものである。
【０１４６】
なお、図９及び図１０の例では、メモリセルＭＣとダミーセルＤＣの合計数は、レファレンスセルＲＣの数と等しくなっている。
【０１４７】
この場合には、負荷用のＰチャネルＭＯＳトランジスタＱＰ１，ＱＰ２のチャネル幅、及び、クランプ用のＮチャネルＭＯＳトランジスタＮ＜０＞，Ｎ＜１＞，・・・Ｎ＜７＞，Ｎ＜ＢＬｉ＞，Ｎ＜ＤＬ＞のチャネル幅は、全て、等しくてよい。
【０１４８】
これに対し、メモリセルＭＣとダミーセルＤＣの合計数が、レファレンスセルＲＣの数と異なる場合には、負荷用のＰチャネルＭＯＳトランジスタＱＰ１，ＱＰ２のチャネル幅、及び、クランプ用のＮチャネルＭＯＳトランジスタＮ＜０＞，Ｎ＜１＞，・・・Ｎ＜７＞，Ｎ＜ＢＬｉ＞，Ｎ＜ＤＬ＞のチャネル幅を、それらセル数の比に合わせて、変えればよい。
【０１４９】
３．  第３実施の形態
図１１は、本発明の第３実施の形態に関わる磁気ランダムアクセスメモリに使用する定電流源を示している。
【０１５０】
この実施の形態に関わる定電流源Ｉ１は、図１、図２、図９及び図１０における磁気ランダムアクセスメモリに適用できる。
【０１５１】
本実施の形態では、メモリセルやレファレンスセルなどに電流バイアスを与えるための定電流源Ｉ１に関しても、メモリセル（ＭＴＪ素子）と同じ構造の電流源用セル（ＭＴＪ素子）ＲＣ２から構成する。このようにするのは、定電流源Ｉ１を、例えば、ＢＧＲ回路により構成した場合、このＢＧＲ回路は、温度特性を持たないため、メモリセルを構成するＭＯＳトランジスタやＭＴＪ素子などの温度特性を反映しなくなるからである。
【０１５２】
定電流源Ｉ１を構成する電流源用セルＲＣ２は、メモリセルと同じ構造とし、かつ、複数用意する。また、定電流源Ｉ１を構成する電流源用セルＲＣ２に対しては、個別に、プログラムが行えるように、定電流源Ｉ１内には、書き込みのための回路を設けておく。
【０１５３】
電流源用セルＲＣ２は、通常のメモリセルアレイと同じセルアレイ内に配置する。電流値の早期安定を図るため、電流源用セルＲＣ２に対しては、メモリセルに対する読み出し動作前にアクセスするか、又は、書き込みモード、スタンバイモード、低消費電力モードなどのモード時以外においては、常に、アクセス状態とあるようにしておくことが望ましい。
【０１５４】
この場合、書き込みワード線に関しては、通常のメモリセルアレイ内のメモリセルと定電流源Ｉ１を構成する電流源用セルＲＣ２とは、共通化しても構わないが、読み出しワード線に関しては、メモリセルに対するもの、レファレンスセルに対するもの、及び、電流源用セルに対するものとは、それぞれ、分離して設けておく。
【０１５５】
また、例えば、初期設定モードにおいて、各々の電流源用セルが個別に選択可能となるように、アドレスを割り振っておいてもよい。
【０１５６】
４．  第４実施の形態
図１２は、本発明の第４実施の形態に関わる磁気ランダムアクセスメモリの読み出し回路の主要部を示している。
【０１５７】
本実施の形態における磁気ランダムアクセスメモリは、セル電流を直接モニタするモードを備える点に特徴を有する。
【０１５８】
セル電流を直接モニタするモードでは、バイアス電流供給回路ＣＳ１が非活性化される。このために、バイアス電流供給回路ＣＳ１内には、新たに、バイアス電流供給回路ＣＳ１の動作を制御するためのＮチャネルＭＯＳトランジスタＱＮ３’，ＱＮ４’が配置される。セル電流を直接モニタするモードになると、モニタ制御信号Ｉｍｏｎが“Ｈ”、その反転信号ｂＩｍｏｎが“Ｌ”になり、バイアス電流供給回路ＣＳ１は、非動作状態となる。
【０１５９】
また、セル電流を直接モニタするモードにおいて、ＰチャネルＭＯＳトランジスタＱＰ１，ＱＰ２のゲートにバイアス電圧を与え、これらトランジスタをオフ状態にしておくためのＰチャネルＭＯＳトランジスタＱＰ１２が設けられる。ＭＯＳトランジスタＱＰ１２は、電源端子ＶｄｄとＭＯＳトランジスタＱＰ１，ＱＰ２のゲートとの間に接続され、モニタ制御信号Ｉｍｏｎの反転信号ｂＩｍｏｎにより制御される。
【０１６０】
さらに、電源端子ＶｄｄとＭＯＳトランジスタＱＮ１のゲート（オペアンプＯＰ１の出力端子）との間には、ＰチャネルＭＯＳトランジスタＱＮ１３が接続される。ＭＯＳトランジスタＱＰ１３のゲートには、モニタ制御信号Ｉｍｏｎの反転信号ｂＩｍｏｎが入力される。また、センスアンプＳ／Ａのプラス側入力端子は、ＮチャネルＭＯＳトランジスタ（トランスファーゲート）ＱＮ１３を経由して、出力ピンに接続される。ＭＯＳトランジスタＱＮ１３は、モニタ制御信号Ｉｍｏｎにより制御される。
【０１６１】
モニタ制御信号Ｉｍｏｎが“Ｈ”のとき、さらに、ＮチャネルＭＯＳトランジスタＮ＜ＢＬｉ＞，ＲＳＴをオン状態にすれば、ＭＯＳトランジスタＱＮ１３の一端に接続される出力ピンをテスタに繋いで、セル電流をモニタすることができる。
【０１６２】
ここで、パッケージング後にセル電流をモニタする場合には、例えば、ＭＯＳトランジスタＱＮ１３の一端に接続される出力ピンは、独自のものではなく、通常動作時には、所定の機能を有する機能ピンとしても働くように、共用されたものであってもよい。但し、ピン数に余裕がある場合などは、その出力ピンは、当然に、モニタ時のみに使用するピンであってもよい。
【０１６３】
また、パッケージング前にセル電流をモニタするような場合には、センスアンプＳ／Ａのプラス側入力端子は、ＭＯＳトランジスタＱＮ１３を経由して、テスト専用パッドに接続してもよい。この場合には、パッケージング時、そのテスト専用パッドは、出力ピンに接続されない。
【０１６４】
本実施の形態によれば、テストモードにおいて、セル電流の直接モニタや、レファレンスセルなどのメモリセル以外のセルに対するアクセスを可能にする。
【０１６５】
ＮＡＮＤ型フラッシュメモリについて考えると、例えば、図１３及び図１４に示すように、テストコマンドを受けた後に、制御信号ＣＬＥに基づいて、セル電流の直接モニタ動作にエントリーしたり、メモリセル以外のセルに対するアクセスを可能にする。アドレスは、例えば、制御信号ＡＬＥに基づいて、通常のアドレスピンからチップ内部に取り込む。
【０１６６】
なお、図１３において、♯７７（１６進数で７７を意味する）は、セル電流の直接モニタに関するコマンドコードであり、図１４において、♯５５（１６進数で５５を意味する）は、メモリセル以外のセルに対するアドレス取り込み（エクストラアドレスエントリー）のコマンドコードである。
【０１６７】
また、例えば、図１５に示すように、ＲＤＲＡＭのようなインターフェースの場合には、入力パケット内のコマンドコードとして、セル電流の直接モニタや、メモリセル以外のセル（エクストラセル）に対するアクセスなどをエントリーし、パケット内のアドレスコードによりエクストラアドレスを指定する。
【０１６８】
この技術は、メモリセル以外のセル、例えば、レファレンスセルに流れるセル電流をモニタする場合などに応用できる。
【０１６９】
５．  第５実施の形態
Ｍ  Ｄｕｒｌａｍ  ｅｔ．ａｌによって提案された非特許文献３に見られるように、ＭＲ比は、バイアス電圧を上昇させると、低下する。このため、メモリセル（ＭＴＪ素子）に対するバイアス電圧を制御電圧Ｖｃｌａｍｐによって制御し、最適なＭＲ比を得る。
【０１７０】
ところで、例えば、特許文献１に示されているように、ＭＴＪ素子の磁化方向を有利に書き換える方法が存在する。例えば、ＭＴＪ素子の磁化方向を決定する磁界を発生するための書き込み電流に関しては、最適な供給タイミング、電流波形、電流値などが存在し、また、ＭＴＪ素子に関しては、最適な形状などが存在する。
【０１７１】
本実施の形態では、書き込み電流の供給タイミング、電流波形、電流値などを、最適な値に設定（プログラミング）するための書き込み電流制御回路と、実際に、予め決められた条件の下で、ＭＴＪ素子に対する書き込み動作を実行するための書き込みのための回路を提案する。
【０１７２】
図１６は、本発明の第５実施の形態に関わる磁気ランダムアクセスメモリの概要を示している。
【０１７３】
磁気ランダムアクセスメモリ（ＭＲＡＭ）１１は、それ自体で１つのメモリチップを構成していてもよいし、また、特定機能を有するチップ内の１つのブロックであってもよい。
【０１７４】
メモリセルアレイ（データセル）１２及びレファレンスセルアレイ１３は、例えば、図１７に示すような構成を有している。メモリセルアレイ１２は、実際に、データを記憶する機能を有し、レファレンスセルアレイ１３は、読み出し動作時に、読み出しデータの値を判定するための基準を決める機能を有する。
【０１７５】
メモリセルアレイ１２及びレファレンスセルアレイ１３からなるセルアレイのＹ方向（Ｅａｓｙ−Ａｘｉｓ方向）の２つの端部のうちの１つには、ロウデコーダ＆ドライバ（ロウデコーダ＆書き込みワード線ドライバ，ロウデコーダ＆読み出しワード線ドライバ）１４が配置され、他の１つには、書き込みワード線シンカー１５が配置される。
【０１７６】
ロウデコーダ＆ドライバ１４は、書き込み動作時、例えば、ロウアドレス信号に基づいて、複数の書き込みワード線のうちの１つを選択し、かつ、選択された１つの書き込みワード線に、書き込み電流を供給する機能を有する。書き込みワード線シンカー１５は、書き込み動作時、例えば、選択された１つの書き込みワード線に供給された書き込み電流を吸収する機能を有する。
【０１７７】
ロウデコーダ＆ドライバ１４は、読み出し動作時、例えば、ロウアドレス信号に基づいて、複数の読み出しワード線（書き込みワード線と一体化されていてもよい）のうちの１つを選択し、かつ、選択された１つの読み出しワード線に、読み出し電流を流す機能を有する。センスアンプ２０は、例えば、この読み出し電流を検出して、読み出しデータを判定する。
【０１７８】
メモリセルアレイ１２のＸ方向（Ｈａｒｄ−Ａｘｉｓ方向）の２つの端部のうちの１つには、カラムデコーダ＆書き込みビット線ドライバ／シンカー１６Ａが配置され、他の１つには、カラムデコーダ＆書き込みビット線ドライバ／シンカー（カラムトランスファゲート、カラムデコーダを含む）１７Ａが配置される。
【０１７９】
カラムデコーダ＆書き込みビット線ドライバ／シンカー１６Ａ，１７Ａは、書き込み動作時、例えば、カラムアドレス信号に基づいて、複数の書き込みビット線（又はデータ選択線）のうちの１つを選択し、かつ、選択された１つの書き込みビット線に、書き込みデータに応じた向きを有する書き込み電流を流す機能を有する。カラムトランスファゲート及びカラムデコーダは、読み出し動作時、カラムアドレス信号により選択されたデータ選択線をセンスアンプ２０に電気的に接続する機能を有する。
【０１８０】
レファレンスセルアレイ１３のＸ方向の２つの端部のうちの１つには、レファレンスセル用カラムデコーダ＆書き込みビット線ドライバ／シンカー１６Ｂが配置され、他の１つには、レファレンスセル用カラムデコーダ＆書き込みビット線ドライバ／シンカー（カラムトランスファゲート、カラムデコーダを含む）１７Ｂが配置される。
【０１８１】
レファレンスセル用カラムデコーダ＆書き込みビット線ドライバ／シンカー１６Ｂ，１７Ｂは、レファレンスセルアレイ１３にレファレンスデータを記憶させる機能を有する。カラムトランスファゲート及びカラムデコーダは、読み出し動作時、レファレンスデータを読み出し、これをセンスアンプ２０に転送する機能を有する。
【０１８２】
アドレスレシーバ１８は、アドレス信号を受け、例えば、ロウアドレス信号を、ロウデコーダ＆ドライバ１４に転送し、カラムアドレス信号を、カラムデコーダ＆書き込みビット線ドライバ／シンカー１６Ａ，１７Ａに転送する。データ入力レシーバ１９は、書き込みデータを、カラムデコーダ＆書き込みビット線ドライバ／シンカー１６Ａ，１７Ａに転送する。また、出力ドライバ２１は、センスアンプ２０で検出された読み出しデータを、磁気ランダムアクセスメモリ１１の外部へ出力する。
【０１８３】
制御回路２２は、／ＣＥ（Ｃｈｉｐ  Ｅｎａｂｌｅ）信号、／ＷＥ（Ｗｒｉｔｅ  Ｅｎａｂｌｅ）信号及び／ＯＥ（Ｏｕｔｐｕｔ  Ｅｎａｂｌｅ）信号を受け、磁気ランダムアクセスメモリ１１の動作を制御する。
【０１８４】
例えば、制御回路２２は、書き込み動作時、書き込み信号ＷＲＩＴＥを、書き込み電流制御回路２４に与える。書き込み電流制御回路２４は、書き込み信号ＷＲＩＴＥを受けると、書き込みワード線ドライブ信号ＷＷＬＤＲＶ、書き込みワード線シンク信号ＷＷＬＳＮＫ、書き込みビット線ドライブ信号ＷＢＬＤＲＶ及び書き込みビット線シンク信号ＷＢＬＳＮＫを生成する。
【０１８５】
書き込みワード線ドライブ信号ＷＷＬＤＲＶは、ロウデコーダ＆ドライバ１４に供給され、書き込みワード線シンク信号ＷＷＬＳＮＫは、書き込みワード線シンカー１５に供給される。書き込みビット線ドライブ信号ＷＢＬＤＲＶ及び書き込みビット線シンク信号ＷＢＬＳＮＫは、カラムデコーダ＆書き込みビット線ドライバ／シンカー１６Ａ，１７Ａに供給される。
【０１８６】
設定回路２３は、プログラミング素子を有しており、そのプログラミング素子には、書き込みワード／ビット線電流の電流波形を決定するための設定データがプログラムされる。プログラミング素子としては、例えば、レーザ溶断型フューズ、ＭＴＪ素子（ＭＴＪ）や、ＭＴＪ素子のトンネルバリアを破壊するアンチフューズなどを使用することができる。
【０１８７】
設定回路２３は、書き込み動作時、設定データに基づいて、書き込みワード線電流波形信号ＲＰ＜０＞〜ＲＰ＜３＞、及び、書き込みビット線電流波形信号ＣＰ＜０＞〜ＣＰ＜７＞を生成する。
【０１８８】
書き込みワード線電流波形信号ＲＰ＜０＞〜ＲＰ＜３＞は、書き込み電流制御回路２４を経由して（書き込み電流制御回路２４を経由しなくてもよい）、ロウデコーダ＆ドライバ１４に与えられる。
【０１８９】
書き込みビット線電流波形信号ＣＰ＜０＞〜ＣＰ＜３＞は、書き込み電流制御回路２４を経由して、又は、経由しないで、カラムデコーダ＆書き込みビット線ドライバ／シンカー１６Ａに与えられ、書き込みビット線電流波形信号ＣＰ＜４＞〜ＣＰ＜７＞は、書き込み電流制御回路２４を経由して、又は、経由しないで、カラムデコーダ＆書き込みビット線ドライバ／シンカー１７Ａに与えられる。
【０１９０】
ロウデコーダ＆ドライバ１４は、書き込みワード線ドライブ信号ＷＷＬＤＲＶが“Ｈ”、書き込みワード線シンク信号ＷＷＬＳＮＫが“Ｈ”のとき、書き込みワード線電流波形信号ＲＰ＜０＞〜ＲＰ＜３＞に基づいて、ロウアドレス信号により選択された書き込みワード線に流れる書き込み電流の値（大きさ）を決定する。
【０１９１】
同様に、書き込みワード線シンカー１５及びカラムデコーダ＆書き込みビット線ドライバ／シンカー１６Ａ，１７Ａは、書き込みビット線ドライブ信号ＷＢＬＤＲＶが“Ｈ”、書き込みビット線シンク信号ＷＢＬＳＮＫが“Ｈ”のとき、書き込みビット線電流波形信号ＣＰ＜０＞〜ＣＰ＜７＞に基づいて、カラムアドレス信号により選択された書き込みビット線に流れる書き込み電流の値（大きさ）を決定する。
【０１９２】
書き込みビット線電流波形信号ＣＰ＜０＞〜ＣＰ＜３＞は、カラムデコーダ＆書き込みビット線ドライバ／シンカー１６Ａからカラムデコーダ＆書き込みビット線ドライバ／シンカー１７Ａに向かう書き込み電流を流すときに、その書き込みビット線電流の値を決定する。
【０１９３】
書き込みビット線電流波形信号ＣＰ＜４＞〜ＣＰ＜７＞は、カラムデコーダ＆書き込みビット線ドライバ／シンカー１７Ａからカラムデコーダ＆書き込みビット線ドライバ／シンカー１６Ａに向かう書き込み電流を流すときに、その書き込みビット線電流の値を決定する。
【０１９４】
書き込み電流の電流吸収タイミングに関しては、例えば、シンク信号ＷＷＬＳＮＫ，ＷＢＬＳＮＫが“Ｈ”から“Ｌ”になるタイミングを、ドライブ信号ＷＷＬＤＲＶ，ＷＢＬＤＲＶが“Ｈ”から“Ｌ”になるタイミングよりも遅らせることにより、書き込みワード／ビット線の電位を完全に０Ｖにする、といった効果を得ることができる。
【０１９５】
磁気ランダムアクセスメモリのテストモードにおいては、例えば、データ入出力端子から入力される設定データＤ＜ｊ＞に基づいて、ＭＴＪ素子に対する書き込みテストを実施することもできる。この書き込みテストにより、メモリセルアレイ１２内のＭＴＪ素子の書き込み特性を把握し、通常の書き込み動作時における書き込みワード／ビット線電流の値（合成磁界Ｈｘ，Ｈｙの強さ）を決定する。
【０１９６】
なお、このテストモードにおいて、設定データＤ＜ｊ＞は、アドレス端子から入力させるようにしてもよい。
【０１９７】
テストモードの結果を受けて、この後、設定データのプログラミング動作が行われる。このプログラミング動作は、テストモードの結果、即ち、書き込みワード／ビット線電流の値を、設定回路２３内のプログラミング素子にプログラミングする動作のことである。
【０１９８】
プログラミング動作時には、プログラム信号ＰＲＯＧが“Ｈ”になる。そして、データ入出力端子又はアドレス端子から入力される設定データＤ＜ｊ＞の値を制御し、通常の書き込み動作時における書き込みワード／ビット線電流の値を、設定回路２３内のプログラミング素子にプログラミングする。
【０１９９】
▲２▼  ロウデコーダ＆書き込みワード線ドライバ／シンカー
図１８は、ロウデコーダ＆書き込みワード線ドライバ／シンカーの回路例を示している。
【０２００】
ロウデコーダ＆書き込みワード線ドライバ（１ロウ分）１４は、ＡＮＤゲート回路ＡＤ１、ＮＡＮＤゲート回路ＮＤＷＳ０〜ＮＤＷＳ３及びＰチャネルＭＯＳトランジスタＷＳ０〜ＷＳ３から構成される。ＰチャネルＭＯＳトランジスタＷＳｉ（ｉ＝０，１，２，３）のゲートは、ＮＡＮＤゲート回路ＮＤＷＳｉの出力端子に接続され、そのソースは、電源端子ＶＤＤに接続され、そのドレインは、書き込みワード線ＷＷＬｉ（ｉ＝１，・・・）の一端に接続される。
【０２０１】
ＮＡＮＤゲート回路ＮＤＷＳｉの２つの入力端子の一方には、書き込みワード線電流波形信号ＲＰ＜ｉ＞が入力され、他方には、ＡＮＤゲート回路ＡＤ１の出力信号が入力される。ＡＮＤゲート回路ＡＤ１には、書き込みワード線ドライブ信号ＷＷＬＤＲＶ及び複数ビットから構成されるロウアドレス信号（ロウｉごとに異なる）が入力される。
【０２０２】
書き込みワード線シンカー（１ロウ分）１５は、ＮチャネルＭＯＳトランジスタＴＮ１から構成される。ＮチャネルＭＯＳトランジスタＴＮ１のソースは、接地端子ＶＳＳに接続され、そのドレインは、書き込みワード線ＷＷＬｉの他端に接続される。ＮチャネルＭＯＳトランジスタＴＮ１のゲートには、書き込みワード線シンク信号ＷＷＬＳＮＫが入力される。
【０２０３】
書き込み動作時、書き込みワード線ドライブ信号ＷＷＬＤＲＶが“Ｈ”になると共に、選択されたロウｉでは、ロウアドレス信号の全てのビットが“Ｈ”となる。即ち、選択されたロウｉでは、アンド回路ＡＤ１の出力信号が“Ｈ”となるため、書き込みワード線電流波形信号ＲＰ＜０＞〜ＲＰ＜３＞の値に応じて、所定の値（大きさ）を有する書き込みワード線電流が書き込みワード線ＷＷＬｉに供給される。
【０２０４】
書き込みワード線シンク信号ＷＷＬＳＮＫが“Ｈ”になると、ＮチャネルＭＯＳトランジスタＴＮ１がオン状態となるため、書き込みワード線ＷＷＬｉに流れる書き込み電流は、ＮチャネルＭＯＳトランジスタＴＮ１を経由して、接地点ＶＳＳに吸収される。
【０２０５】
このようなロウデコーダ＆書き込みワード線ドライバ／シンカーによれば、書き込みワード線電流波形信号ＲＰ＜０＞〜ＲＰ＜３＞の値を制御することにより、選択されたロウｉ内の書き込みワード線ＷＷＬｉに対する書き込み電流の大きさ（電流波形）を制御することができる。
【０２０６】
また、書き込みワード線ドライブ信号ＷＷＬＤＲＶを“Ｌ”に設定した後、書き込みワード線シンク信号ＷＷＬＳＮＫを“Ｌ”に設定すれば、書き込み動作後の書き込みワード線ＷＷＬｉの電位を完全に０Ｖにすることができ、初期化に好都合である。
【０２０７】
なお、書き込みワード線電流の値（大きさ）を制御するに当たっては、第一に、複数のＰチャネルＭＯＳトランジスタＷＳ０〜ＷＳ３のサイズ（チャネル幅）、即ち、駆動能力を、全て同じ値に設定し、書き込みワード線電流波形信号ＲＰ＜０＞〜ＲＰ＜３＞を用いて、オン状態のＰチャネルＭＯＳトランジスタＷＳ０〜ＷＳ３の数を変える、という制御方法を使用できる。
【０２０８】
第二に、複数のＰチャネルＭＯＳトランジスタＷＳ０〜ＷＳ３のサイズ（チャネル幅）、即ち、駆動能力を、互いに異なる値に設定し、書き込みワード線電流波形信号ＲＰ＜０＞〜ＲＰ＜３＞を用いて、複数のＰチャネルＭＯＳトランジスタＷＳ０〜ＷＳ３のうちの１つを選択的にオン状態にする、という制御方法を使用できる。
【０２０９】
第三に、これら第一及び第二の方法を組み合せた制御方法、即ち、ＰチャネルＭＯＳトランジスタＷＳ０〜ＷＳ３のサイズを変え、かつ、オン状態のＰチャネルＭＯＳトランジスタＷＳ０〜ＷＳ３の数を変えて、書き込み電流の値（大きさ）を制御する、という制御方法を使用できる。
【０２１０】
▲３▼  カラムデコーダ＆書き込みビット線ドライバ／シンカー
図１９は、カラムデコーダ＆書き込みビット線ドライバ／シンカーの回路例を示している。
【０２１１】
カラムデコーダ＆書き込みビット線ドライバ／シンカー（１カラム分）１６Ａは、ＮＡＮＤゲート回路ＮＤＢＳ０〜ＮＤＢＳ３、ＡＮＤゲート回路ＡＤ２，ＡＤ３、ＰチャネルＭＯＳトランジスタＢＳ０〜ＢＳ３及びＮチャネルＭＯＳトランジスタＢＮ０から構成される。
【０２１２】
ＰチャネルＭＯＳトランジスタＢＳｉ（ｉ＝０，１，２，３）のゲートは、ＮＡＮＤゲート回路ＮＤＢＳｉの出力端子に接続され、そのソースは、電源端子ＶＤＤに接続され、そのドレインは、共通に、書き込みビット線ＷＢＬｉ（ｉ＝１，・・・）の一端に接続される。
【０２１３】
ＮＡＮＤゲート回路ＮＤＢＳｉ（ｉ＝０，１，２，３）の２つの入力端子の一方には、書き込みワード線電流波形信号ＣＰ＜ｉ＞が入力され、他方には、ＡＮＤゲート回路ＡＤ２の出力信号が入力される。ＡＮＤゲート回路ＡＤ２には、書き込みビット線ドライブ信号ＷＢＬＤＲＶ、複数ビットから構成されるカラムアドレス信号（カラムｉごとに異なる）及び書き込みデータＤＡＴＡが入力される。
【０２１４】
ＮチャネルＭＯＳトランジスタＢＮ０のゲートは、ＡＮＤゲート回路ＡＤ３の出力端子に接続され、そのソースは、接地端子ＶＳＳに接続され、そのドレインは、書き込みビット線ＷＢＬｉ（ｉ＝１，・・・）の一端に接続される。ＡＮＤゲート回路ＡＤ３には、書き込みビット線シンク信号ＷＢＬＳＮＫ、複数ビットから構成されるカラムアドレス信号（カラムｉごとに異なる）及び書き込みデータの反転信号ｂＤＡＴＡが入力される。
【０２１５】
同様に、カラムデコーダ＆書き込みビット線ドライバ／シンカー（１カラム分）１７Ａは、ＮＡＮＤゲート回路ＮＤＢＳ４〜ＮＤＢＳ７、ＡＮＤゲート回路ＡＤ４，ＡＤ５、ＰチャネルＭＯＳトランジスタＢＳ４〜ＢＳ７及びＮチャネルＭＯＳトランジスタＢＮ１から構成される。
【０２１６】
ＰチャネルＭＯＳトランジスタＢＳｉ（ｉ＝４，５，６，７）のゲートは、ＮＡＮＤゲート回路ＮＤＢＳｉの出力端子に接続され、そのソースは、電源端子ＶＤＤに接続され、そのドレインは、共通に、書き込みビット線ＷＢＬｉ（ｉ＝１，・・・）の他端に接続される。
【０２１７】
ＮＡＮＤゲート回路ＮＤＢＳｉ（ｉ＝４，５，６，７）の２つの入力端子の一方には、書き込みワード線電流波形信号ＣＰ＜ｉ＞が入力され、他方には、ＡＮＤゲート回路ＡＤ４の出力信号が入力される。ＡＮＤゲート回路ＡＤ４には、書き込みビット線ドライブ信号ＷＢＬＤＲＶ、複数ビットから構成されるカラムアドレス信号（カラムｉごとに異なる）及び書き込みデータの反転信号ｂＤＡＴＡが入力される。
【０２１８】
ＮチャネルＭＯＳトランジスタＢＮ１のゲートは、ＡＮＤゲート回路ＡＤ５の出力端子に接続され、そのソースは、接地端子ＶＳＳに接続され、そのドレインは、書き込みビット線ＷＢＬｉ（ｉ＝１，・・・）の他端に接続される。ＡＮＤゲート回路ＡＤ５には、書き込みビット線シンク信号ＷＢＬＳＮＫ、複数ビットから構成されるカラムアドレス信号（カラムｉごとに異なる）及び書き込みデータＤＡＴＡが入力される。
【０２１９】
書き込み動作時、書き込みビット線ドライブ信号ＷＢＬＤＲＶ及び書き込みビット線シンク信号ＷＢＬＳＮＫが共に“Ｈ”となり、かつ、選択されたカラムｉでは、カラムアドレス信号の全てのビットが“Ｈ”となる。
【０２２０】
従って、選択されたカラムｉでは、書き込みビット線電流波形信号ＣＰ＜０＞〜ＣＰ＜３＞により、カラムデコーダ＆書き込みビット線ドライバ／シンカー１６Ａからカラムデコーダ＆書き込みビット線ドライバ／シンカー１７Ａに向かって流れる書き込み電流の値（大きさ）が決定される。
【０２２１】
また、書き込みビット線電流波形信号ＣＰ＜４＞〜ＣＰ＜７＞により、カラムデコーダ＆書き込みビット線ドライバ／シンカー１７Ａからカラムデコーダ＆書き込みビット線ドライバ／シンカー１６Ａに向かって流れる書き込み電流の値（大きさ）が決定される。
【０２２２】
書き込みビット線ＷＢＬｉに流れる書き込み電流の向きは、書き込みデータＤＡＴＡの値により決まる。
【０２２３】
例えば、書き込みデータＤＡＴＡが“１”（＝“Ｈ”）のときには、書き込みビット線電流波形信号ＣＰ＜０＞〜ＣＰ＜３＞により、少なくとも１つのＰチャネルＭＯＳトランジスタＢＳ０〜ＢＳ３がオン状態になり、また、ＮチャネルＭＯＳトランジスタＢＮ１も、オン状態となる。このため、カラムデコーダ＆書き込みビット線ドライバ／シンカー１６Ａからカラムデコーダ＆書き込みビット線ドライバ／シンカー１７Ａに向かう書き込み電流が流れる。
【０２２４】
また、書き込みデータＤＡＴＡが“０”（＝“Ｌ”）のときには、書き込みビット線電流波形信号ＣＰ＜４＞〜ＣＰ＜７＞により、少なくとも１つのＰチャネルＭＯＳトランジスタＢＳ４〜ＢＳ７がオン状態となり、また、ＮチャネルＭＯＳトランジスタＢＮ０がオン状態となる。このため、カラムデコーダ＆書き込みビット線ドライバ／シンカー１７Ａからカラムデコーダ＆書き込みビット線ドライバ／シンカー１６Ａに向かう書き込み電流が流れる。
【０２２５】
このようなカラムデコーダ＆書き込みビット線ドライバ／シンカーによれば、書き込みビット線電流波形信号ＣＰ＜０＞〜ＣＰ＜７＞の値を制御することにより、選択されたカラムｉ内の書き込みビット線ＷＢＬｉに対する書き込み電流の大きさ（電流波形）を制御することができる。
【０２２６】
また、書き込みビット線ドライブ信号ＷＢＬＤＲＶを“Ｌ”に設定した後、書き込みビット線シンク信号ＷＢＬＳＮＫを“Ｌ”に設定すれば、書き込み動作後の書き込みビット線ＷＢＬｉの電位を完全に０Ｖにすることができ、初期化に好都合である。
【０２２７】
なお、書き込みビット線電流の値（大きさ）を制御するに当たっては、第一に、複数のＰチャネルＭＯＳトランジスタＢＳ０〜ＢＳ７のサイズ（チャネル幅）、即ち、駆動能力を、全て同じ値に設定し、書き込みビット線電流波形信号ＣＰ＜０＞〜ＣＰ＜７＞を用いて、オン状態のＰチャネルＭＯＳトランジスタＢＳ０〜ＢＳ７の数を変える、という制御方法を使用できる。
【０２２８】
第二に、複数のＰチャネルＭＯＳトランジスタＢＳ０〜ＢＳ７のサイズ（チャネル幅）、即ち、駆動能力を、互いに異なる値に設定し、書き込みビット線電流波形信号ＣＰ＜０＞〜ＣＰ＜７＞を用いて、複数のＰチャネルＭＯＳトランジスタＢＳ０〜ＢＳ７のうちの１つを選択的にオン状態にする、という制御方法を使用できる。
【０２２９】
第三に、これら第一及び第二の方法を組み合せた制御方法、即ち、ＰチャネルＭＯＳトランジスタＢＳ０〜ＢＳ７のサイズを変え、かつ、オン状態のＰチャネルＭＯＳトランジスタＢＳ０〜ＢＳ７の数を変えて、書き込み電流の値（大きさ）を制御する、という制御方法を使用できる。
【０２３０】
▲４▼  書き込み電流制御回路
次に、書き込みワード線ドライブ信号ＷＷＬＤＲＶ、書き込みワード線シンク信号ＷＷＬＳＮＫ、書き込みビット線ドライブ信号ＷＢＬＤＲＶ及び書き込みビット線シンク信号ＷＢＬＳＮＫを生成する書き込み電流制御回路の例について説明する。
【０２３１】
図２０及び図２１は、書き込み電流制御回路の例を示している。
【０２３２】
書き込み電流制御回路（その１）２４は、書き込み信号ＷＲＩＴＥに基づいて、書き込みワード線ドライブ信号ＷＷＬＤＲＶ及び書き込みワード線シンク信号ＷＷＬＳＮＫを生成する。書き込み電流制御回路（その１）２４は、インバータ回路ＩＶ０，ＩＶ１、ナンド回路ＮＡＮＤ１、遅延回路ＷＤＬ０，・・・ＷＤＬ４及び複数のトランスファゲート回路から構成される。
【０２３３】
複数のトランスファゲート回路の各々は、ＮチャネルＭＯＳトランジスタとＰチャネルＭＯＳトランジスタとから構成され、制御信号ＷＳ＜０＞，・・・ＷＳ＜３＞，／ＷＳ＜０＞，・・・／ＷＳ＜３＞により制御される。制御信号／ＷＳ＜０＞，・・・／ＷＳ＜３＞は、制御信号ＷＳ＜０＞，・・・ＷＳ＜３＞の反転信号である。
【０２３４】
書き込み電流制御回路（その２）２４は、書き込み信号ＷＲＩＴＥに基づいて、書き込みビット線ドライブ信号ＷＢＬＤＲＶ及び書き込みビット線シンク信号ＷＢＬＳＮＫを生成する。書き込み電流制御回路（その２）２４は、インバータ回路ＩＶ２，ＩＶ３、ナンド回路ＮＡＮＤ２、遅延回路ＢＤＬ０，・・・ＢＤＬ４及び複数のトランスファゲート回路から構成される。
【０２３５】
複数のトランスファゲート回路の各々は、ＮチャネルＭＯＳトランジスタとＰチャネルＭＯＳトランジスタとから構成され、制御信号ＢＳ＜０＞，・・・ＢＳ＜３＞，／ＢＳ＜０＞，・・・／ＢＳ＜３＞により制御される。制御信号／ＢＳ＜０＞，・・・／ＢＳ＜３＞は、制御信号ＢＳ＜０＞，・・・ＢＳ＜３＞の反転信号である。
【０２３６】
▲５▼  設定回路
次に、書き込みワード線電流波形信号ＲＰ＜０＞〜ＲＰ＜３＞及び書き込みビット線電流波形信号ＣＰ＜０＞〜ＣＰ＜３＞を生成する設定回路について説明する。
【０２３７】
図２２は、設定回路の例を示している。
設定回路２３は、書き込みワード線電流波形信号ＲＰ＜０＞〜ＲＰ＜３＞を生成する第１部分と、書き込みビット線電流波形信号ＣＰ＜０＞〜ＣＰ＜３＞を生成する第２部分とから構成される。
【０２３８】
第１部分は、書き込みワード線電流の電流波形（大きさ）を決定する設定データがプログラムされるレジスタ＜０＞，＜１＞と、レジスタ＜０＞，＜１＞の出力信号ＴＤ＜０＞，ＴＤ＜１＞，ｂＴＤ＜０＞，ｂＴＤ＜１＞をデコードして、書き込みワード線電流波形信号ＲＰ＜０＞〜ＲＰ＜３＞を出力するデコーダＲＰ＜０＞〜ＲＰ＜３＞とを有している。
【０２３９】
第２部分は、書き込みビット線電流の電流波形（大きさ）を決定する設定データがプログラムされるレジスタ＜２＞〜＜４＞と、レジスタ＜２＞〜＜４＞の出力信号ＴＤ＜２＞〜ＴＤ＜４＞，ｂＴＤ＜２＞〜ｂＴＤ＜４＞をデコードして、書き込みビット線電流波形信号ＣＰ＜０＞〜ＣＰ＜７＞を出力するデコーダＣＰ＜０＞〜ＣＰ＜７＞とを有している。
【０２４０】
本例では、チップごと、又は、セルアレイごとに、書き込みワード線／ビット線電流を設定することを前提とする。チップごとに、書き込みワード線／ビット線電流を設定する場合には、チップ内には、設定回路２３が１個だけ設けられる。チップ内に複数のセルアレイが存在し、セルアレイごとに、書き込みワード線／ビット線電流を設定する場合には、チップ内には、セルアレイの数と同じ数の設定回路２３が設けられる。
【０２４１】
レジスタ＜０＞，＜１＞には、書き込みワード線電流の電流波形を決定する設定データがプログラムされる。書き込みワード線電流の電流波形は、図１８に示すように、書き込みワード線電流波形信号ＲＰ＜０＞〜ＲＰ＜３＞により制御される。本例では、レジスタ＜０＞，＜１＞に登録される２ビットの設定データにより、書き込みワード線電流波形信号ＲＰ＜０＞〜ＲＰ＜３＞のうちの１つが“Ｈ”となる。
【０２４２】
つまり、図１８のＰチャネルＭＯＳトランジスタＷＳ０〜ＷＳ３のサイズを変えることにより、４通りの電流波形を実現できる。
【０２４３】
なお、レジスタ＜０＞，＜１＞に登録される２ビットの設定データにより、“Ｈ”となる書き込みワード線電流波形信号ＲＰ＜０＞〜ＲＰ＜３＞の数を制御するようにしてもよい。この場合、図１８のＰチャネルＭＯＳトランジスタＷＳ０〜ＷＳ３のサイズを同じにしても、４通りの電流波形を実現できる。
【０２４４】
Ｄ＜０＞，Ｄ＜１＞は、テストモード時に、磁気ランダムアクセスメモリ（チップ）の外部から入力される設定データである。テストモード時には、この設定データに基づいて、書き込みワード線電流の電流波形を決定し、ＭＴＪ素子の特性をテストすることができる。
【０２４５】
また、Ｄ＜０＞，Ｄ＜１＞は、設定データの登録時に、磁気ランダムアクセスメモリ（チップ）の外部から入力される設定データでもある。設定データの登録時には、この設定データに基づいて、電気的に、レジスタ＜０＞、＜１＞内の記憶素子に設定データをプログラムすることができる。
【０２４６】
レジスタ＜２＞〜＜４＞には、書き込みビット線電流の電流波形を決定する設定データがプログラムされる。書き込みビット線電流の電流波形は、図１９に示すように、書き込みビット線電流波形信号ＣＰ＜０＞〜ＣＰ＜３＞により制御される。本例では、レジスタ＜２＞〜＜４＞に登録される３ビットの設定データにより、書き込みビット線電流波形信号ＣＰ＜０＞〜ＣＰ＜７＞のうちの１つがＨ”となる。
【０２４７】
つまり、図１９のＰチャネルＭＯＳトランジスタＢＳ０〜ＢＳ３のサイズを変えることにより、書き込みビット線ドライバ１６Ａから書き込みビット線シンカー１７Ａに向かう書き込みビット線電流の電流波形を４通りだけ用意することができる。また、ＰチャネルＭＯＳトランジスタＢＳ４〜ＢＳ７のサイズを変えることにより、書き込みビット線ドライバ１７Ａから書き込みビット線シンカー１６Ａに向かう書き込みビット線電流の電流波形を４通りだけ用意することができる。
【０２４８】
なお、レジスタ＜２＞〜＜４＞に登録される３ビットの設定データにより、“Ｈ”となる書き込みビット線電流波形信号ＣＰ＜０＞〜ＣＰ＜７＞の数を制御するようにしてもよい。この場合、図１９のＰチャネルＭＯＳトランジスタＢＳ０〜ＢＳ７のサイズを同じにしても、書き込みビット線電流の各向きに対して、４通りの電流波形を実現できる。
【０２４９】
Ｄ＜２＞〜Ｄ＜４＞は、テストモード時に、磁気ランダムアクセスメモリ（チップ）の外部から入力される設定データである。テストモード時には、この設定データに基づいて、書き込みビット線電流の電流波形を決定し、ＭＴＪ素子の特性をテストすることができる。
【０２５０】
また、Ｄ＜２＞〜Ｄ＜４＞は、設定データの登録時に、磁気ランダムアクセスメモリ（チップ）の外部から入力される設定データでもある。設定データの登録時には、この設定データに基づいて、電気的に、レジスタ＜２＞〜＜４＞内の記憶素子に設定データをプログラムすることができる。
【０２５１】
▲６▼  レジスタ＜ｊ＞
図２２の設定回路２３内のレジスタ＜ｊ＞の回路例について説明する。
【０２５２】
図２３は、レジスタの回路例を示している。
本例のレジスタ＜ｊ＞では、設定データを記憶するための素子として、ＭＴＪ素子を使用する。
【０２５３】
プログラムデータ出力回路２９は、設定データを記憶するためのＭＴＪ素子ＭＴＪを有している。ここで、ＭＴＪ素子ＭＴＪには、設定データを、ＭＴＪ素子の磁化状態、即ち、固定層の磁化方向と記憶層の磁化方向との関係（平行又は反平行）で記憶することができるが、本例では、そのような方法を用いない。
【０２５４】
なぜなら、設定データの値に関しては、一度、ＭＴＪ素子ＭＴＪに書き込んだ後に、再び、それを書き換えるということがない。
【０２５５】
また、ＭＴＪ素子ＭＴＪのＭＲ比が２０〜４０％であることを考慮すると、パワーオンと同時に、ＭＴＪ素子ＭＴＪのデータを出力する設定回路では、設定データの読み出し時に、ＭＴＪ素子ＭＴＪの両端に大きな電圧が印加され、誤読み出しする可能性があるからである。
【０２５６】
ＭＴＪ素子ＭＴＪは、ＭＴＪ素子ＭＴＪの両端にかかるバイアス電圧が大きくなるにつれて、ＭＲ比が小さくなる、という特性を有している。このため、設定データをＭＴＪ素子の磁化状態で記憶した場合、大きな読み出し信号量を得るために、バイアス電圧を大きくすると、ＭＲ比（“１”データと“０”データの読み出し信号差）が小さくなり、誤読み出しの可能性が大きくなる。
【０２５７】
従って、設定データを記憶するためのＭＴＪ素子ＭＴＪに対しては、固定層の磁化方向と記憶層の磁化方向との関係ではなく、トンネルバリアを絶縁破壊するか否かで、設定データをプログラムする。
【０２５８】
ＭＴＪ素子ＭＴＪの絶縁破壊を利用した設定データのプログラム方法では、半永久的に、設定データを記憶しておくことができる。
【０２５９】
ＭＴＪ素子ＭＴＪの一端は、ＰチャネルＭＯＳトランジスタＰ１及びＮチャネルＭＯＳトランジスタＮ１を経由して電源端子ＶＤＤに接続され、その他端は、ＮチャネルＭＯＳトランジスタＮ２を経由して接地端子ＶＳＳに接続される。
【０２６０】
ＰチャネルＭＯＳトランジスタＰ１のゲートは、接地端子ＶＳＳに接続され、ＮチャネルＭＯＳトランジスタＮ２のゲートは、電源端子ＶＤＤに接続されるため、これらＭＯＳトランジスタＰ１，Ｎ２は、常に、オン状態となっている。
【０２６１】
ＮチャネルＭＯＳトランジスタＮ１のゲートには、クランプ電位Ｖｃｌａｍｐが入力される。クランプ電位Ｖｃｌａｍｐを適切な値に設定することにより、設定データの読み出し時に、ＭＴＪ素子ＭＴＪの電極間に高電圧が印加されるのを防止することができる。
【０２６２】
なお、クランプ電位Ｖｃｌａｍｐを生成するＶｃｌａｍｐ生成回路の例を、図２２に示す。本例のＶｃｌａｍｐ生成回路３１では、クランプ電位Ｖｃｌａｍｐは、ＢＧＲ回路の出力電圧を抵抗分割することにより得ている。クランプ電位Ｖｃｌａｍｐは、０．３〜０．５Ｖとなる。
【０２６３】
ＮＡＮＤゲート回路ＮＤ４及びＰチャネルＭＯＳトランジスタＰ２は、ＭＴＪ素子ＭＴＪの絶縁破壊を利用した設定データのプログラム方法を採用する場合に必要となる要素である。
【０２６４】
設定データのプログラム時には、プログラム信号ＰＲＯＧが“Ｈ”となる。そして、例えば、ＭＴＪ素子ＭＴＪに設定データ“１”を書き込む場合には、外部端子（データ入力端子、アドレス端子、専用端子など）から、設定データＤ＜ｊ＞として、“１”（＝“Ｈ”）を入力する。
【０２６５】
この時、ＮＡＮＤゲート回路ＮＤ４の出力信号は、“Ｌ”となり、ＰチャネルＭＯＳトランジスタＰ２は、オン状態となる。従って、ＭＴＪ素子ＭＴＪの両端には、大きな電圧が印加され、ＭＴＪ素子ＭＴＪのトンネルバリアが破壊され、結果として、ＭＴＪ素子ＭＴＪに、設定データ“１”がプログラムされる。この場合、ＴＤ＜ｊ＞は、“Ｌ”、ｂＴＤ＜ｊ＞は、“Ｈ”となる。
【０２６６】
一方、例えば、ＭＴＪ素子ＭＴＪに設定データ“０”を書き込む場合には、外部端子（データ入力端子、アドレス端子、専用端子など）から、設定データＤ＜ｊ＞として、“０”（＝“Ｌ”）を入力する。
【０２６７】
この時、ＮＡＮＤゲート回路ＮＤ４の出力信号は、“Ｈ”となり、ＰチャネルＭＯＳトランジスタＰ２は、オフ状態となる。従って、ＭＴＪ素子ＭＴＪの両端には、大きな電圧が印加されることがないため、ＭＴＪ素子ＭＴＪのトンネルバリアが破壊されずに、結果として、ＭＴＪ素子ＭＴＪに、設定データ“０”がプログラムされる。この場合、ＴＤ＜ｊ＞は、“Ｈ”、ｂＴＤ＜ｊ＞は、“Ｌ”となる。
【０２６８】
ＰチャネルＭＯＳトランジスタＰ１とＮチャネルＭＯＳトランジスタＮ１の接続点は、インバータＩ９及びトランスファゲートＴＧ４を経由して、インバータＩ７の入力端に接続される。インバータＩ７の出力信号は、ｂＴＤ＜ｊ＞となり、インバータＩ８の出力信号は、ＴＤ＜ｊ＞となる。
【０２６９】
なお、Ｖｃｌａｍｐ生成回路３１の一例を、図２４に示す。本例では、ＢＧＲ回路の出力電圧を抵抗分割することにより、クランプ電位として、Ｖｃｌａｍｐ  ＝  ０．３〜０．５Ｖを得る。
【０２７０】
▲７▼  デコーダＲＰ＜０＞〜ＲＰ＜３＞，ＣＰ＜０＞〜ＣＰ＜７＞
図２２の設定回路２３内のデコーダＲＰ＜０＞〜ＲＰ＜３＞，ＣＰ＜０＞〜ＣＰ＜７＞の回路例について説明する。
【０２７１】
図２５は、デコーダの回路例を示している。
デコーダＲＰ＜０＞〜ＲＰ＜３＞，ＣＰ＜０＞〜ＣＰ＜７＞は、それぞれ、ＮＡＮＤゲート回路ＮＤ３及びインバータＩ１０から構成される。
【０２７２】
ＮＡＮＤゲート回路ＮＤ３には、３つの入力信号Ａ，Ｂ，Ｃが入力され、その出力信号は、インバータＩ１０に入力される。インバータＩ１０の出力信号Ｄは、書き込みワード／ビット線電流波形信号ＲＰ＜０＞〜ＲＰ＜３＞，ＣＰ＜０＞〜ＣＰ＜７＞となる。
【０２７３】
デコーダＲＰ＜０＞〜ＲＰ＜３＞，ＣＰ＜０＞〜ＣＰ＜７＞のデコーディング表（入力信号と出力信号との関係）を、表１に示す。
【０２７４】
【表１】
2005018916.tif 000008
【０２７５】
▲８▼  動作波形例
図２６は、図１８の書き込みワード線ドライバ／シンカーの動作波形例を示している。
【０２７６】
書き込み信号ＷＲＩＴＥが“Ｈ”になると、これを受けて、書き込みワード線ドライブ信号ＷＷＬＤＲＶ及び書き込みワード線シンク信号ＷＷＬＳＮＫが“Ｈ”になる。書き込みワード線ドライブ信号ＷＷＬＤＲＶ及び書き込みワード線シンク信号ＷＷＬＳＮＫを“Ｈ”にするタイミングは、制御信号ＷＳ＜０＞〜ＷＳ＜３＞，／ＷＳ＜０＞〜／ＷＳ＜３＞により制御される。
【０２７７】
書き込み信号ＷＲＩＴＥが“Ｌ”になると、これを受けて、まず、書き込みワード線ドライブ信号ＷＷＬＤＲＶが“Ｌ”になる。そして、それから図２０の遅延回路ＷＤＬ４の遅延時間により決まる一定期間が経過した後、書き込みワード線シンク信号ＷＷＬＳＮＫが“Ｌ”になる。この一定期間は、書き込み動作終了後、書き込みワード線ＷＷＬｉの電位を０Ｖにするための期間である。
【０２７８】
図２７は、図１９の書き込みビット線ドライバ／シンカーの動作波形例を示している。
【０２７９】
書き込み信号ＷＲＩＴＥが“Ｈ”になると、これを受けて、書き込みビット線ドライブ信号ＷＢＬＤＲＶ及び書き込みビット線シンク信号ＷＢＬＳＮＫが“Ｈ”になる。書き込みビット線ドライブ信号ＷＢＬＤＲＶ及び書き込みビット線シンク信号ＷＢＬＳＮＫを“Ｈ”にするタイミングは、制御信号ＢＳ＜０＞〜ＢＳ＜３＞，／ＢＳ＜０＞〜／ＢＳ＜３＞により制御される。
【０２８０】
書き込み信号ＷＲＩＴＥが“Ｌ”になると、これを受けて、まず、書き込みビット線ドライブ信号ＷＢＬＤＲＶが“Ｌ”になる。そして、それから図２１の遅延回路ＢＤＬ４の遅延時間により決まる一定期間が経過した後、書き込みビット線シンク信号ＷＢＬＳＮＫが“Ｌ”になる。この一定期間は、書き込み動作終了後、書き込みビット線ＷＢＬｉの電位を０Ｖにするための期間である。
【０２８１】
▲９▼  まとめ
以上、説明したように、本例の磁気ランダムアクセスメモリによれば、書き込みワード／ビット線に対する書き込み電流の電流波形（大きさ）を、チップごと、又は、メモリセルアレイごとに、プログラミングにより設定できる。また、書き込みワード線電流の電流波形と書き込みビット線電流の電流波形を、互いに独立に、決定できる。さらに、書き込みビット線電流に関しては、書き込みデータの値（書き込み電流の向き）に対しても、個別に、書き込みビット線電流の電流波形を決定できる。
【０２８２】
６．  第６実施の形態
次に、本発明の第６実施の形態に関わるデータ読み出し方法について説明する。
【０２８３】
図２８は、本発明の第１実施の形態に関わる読み出し回路を利用した読み出し方法の例を示している。
【０２８４】
この読み出し方法では、まず、メモリセル及び複数のレファレンスセルを構成する複数のＭＴＪ素子の特性を検査する（ステップＳＴ１）。次に、複数のＭＴＪ素子の特性に基づいて、複数のレファレンスセルの各々に、個別に、“０”データ又は“１”データを書き込む（ステップＳＴ２）。
【０２８５】
ここで、例えば、複数のレファレンスセルのうち、“０”データが書き込まれるセルの数と“１”データが書き込まれるセルの数とは、同数の場合もあるし、異なる場合もある。
【０２８６】
そして、選択されたメモリセルのデータを読み出す際には、これら複数のレファレンスセルを用いてレファレンス電流／電位を生成し、データ値を判定する際の基準とする（ステップＳＴ３）。
【０２８７】
なお、図２９に示すように、メモリセルのデータを読み出す際に、アドレス信号に基づいて、複数のレファレンスセルのうちから少なくとも１つのセル（複数又は全てのセルでもよい）をアクセスし、アクセスされたレファレンスセルに基づいて、レファレンス電流／電位を生成してもよい（ステップＳＴ２’）。
【０２８８】
図３０は、本発明の第２実施の形態に関わる読み出し回路を利用した読み出し方法の例を示している。
【０２８９】
この読み出し方法では、まず、メモリセル、複数のレファレンスセル及び複数のダミーセルを構成する複数のＭＴＪ素子の特性を検査する（ステップＳＴ１）。次に、複数のＭＴＪ素子の特性に基づいて、複数のレファレンスセル及び複数のダミーセルの各々に対して、個別に、“０”データ又は“１”データを書き込む（ステップＳＴ２）。
【０２９０】
この後、アドレス信号に基づいて、複数のレファレンスセルのうちから少なくとも１つのセル（複数又は全てのセルでもよい）をアクセスし、アクセスされたレファレンスセルに基づいて、レファレンス電流／電位を生成する（ステップＳＴ２’）。
【０２９１】
この時、レファレンスセル側の各ＭＴＪ素子に流れる電流とメモリセル側の各ＭＴＪ素子に流れる電流とを合わせるため、ダミーセルに対するアクセス動作を行い、レファレンスセル側の電流駆動力とメモリセル側の電流駆動力との調整を図る（ステップＳＴ２”）。
【０２９２】
そして、このようにして生成されたレファレンス電流／電位を、メモリセルのデータ値を判定する際の基準とする（ステップＳＴ３）。
【０２９３】
なお、本例の読み出し方法の場合、各ＭＴＪ素子に流れる電流値をほぼ等しくするため、メモリセルとそれに並列接続されたダミーセルの合計数が、複数のレファレンスセルのうちアクセスされるセルの数に等しくなるようにする。
【０２９４】
図３１は、本発明の第３実施の形態に関わる読み出し回路を利用した読み出し方法の例を示している。
【０２９５】
この読み出し方法では、まず、メモリセル、複数のレファレンスセル及び複数のダミーセルを構成する複数のＭＴＪ素子の特性を検査する（ステップＳＴ１）。次に、複数のＭＴＪ素子の特性に基づいて、複数のレファレンスセル、複数のダミーセル及び電流源内の複数のＭＴＪ素子の各々に対して、個別に、“０”データ又は“１”データを書き込む（ステップＳＴ２）。
【０２９６】
この後、アドレス信号に基づいて、電流源内の複数のＭＴＪ素子に対するアクセス動作を行う（ステップＳＴ２ａ）。
【０２９７】
また、複数のレファレンスセルのうちから少なくとも１つのセルをアクセスし、アクセスされたレファレンスセルに基づいて、レファレンス電流／電位を生成する（ステップＳＴ２’）。また、ダミーセルに対するアクセス動作を行い、レファレンスセル側の電流駆動力とメモリセル側の電流駆動力との調整を図る（ステップＳＴ２”）。
【０２９８】
そして、このようにして生成されたレファレンス電流／電位を、メモリセルのデータ値を判定する際の基準とする（ステップＳＴ３）。
【０２９９】
７．  その他
このように、本発明の例に関わる磁気ランダムアクセスメモリによれば、アクセス時に、選択されたメモリセル（データセル）以外のセル、例えば、レファレンスセルにもアクセスし、書き込み動作、読み出し動作や、モニタ動作などを行うことができる。
【０３００】
また、読み出し動作時に、データ値の判定の基準となるレファレンス電流／電圧を生成する元となる複数のレファレンスセルについては、“１”状態のものと“０”状態のものとが同数である必要がなく、例えば、ＭＴＪ素子の抵抗値のばらつきに応じて、最適なレファレンス電流／電圧を生成できるように、“１”状態のものと“０”状態のものとの割合を任意に決定できる。
【０３０１】
さらに、素子の微細化により、ＭＴＪ素子の抵抗値が上昇しても、メモリセル（ＭＴＪ素子）とは異なるダミーセル（ＭＴＪ素子）を駆動することにより、ビット線やデータ線に対する駆動能力を上げることができる。
【０３０２】
また、セル電流をモニタするためのモニタ回路を読み出し回路内に設けているため、予め、メモリセルのセル電流をモニタしておくことができる。ＭＴＪ素子に与える読み出し電流を生成する電流源についても、ＭＴＪ素子から構成することができる。電流源内のＭＴＪ素子については、各々、独立に、データ書き込みができる。
【０３０３】
なお、この発明は、上記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で、構成要素を変形して具体化できる。また、上記実施の形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を構成できる。例えば、上記実施の形態に開示される全構成要素から幾つかの構成要素を削除してもよいし、異なる実施の形態の構成要素を適宜組み合わせてもよい。
【０３０４】
【発明の効果】
以上、説明したように、本発明の磁気ランダムアクセスメモリによれば、ＭＴＪ素子のトンネル絶縁膜に厚さのばらつきが生じても、最適なレファレンス電圧を生成でき、また、ＭＴＪ素子の微細化によってその抵抗値が増大しても、読み出し速度の低下がなく、さらに、ＭＴＪ素子に対する最適な書き込み電流の値、供給タイミングを見出すことができる。
【図面の簡単な説明】
【図１】本発明の第１実施の形態に関わる読み出し回路の主要部を示す図。
【図２】図１の読み出し回路の応用例を示す図。
【図３】アドレスコンパレータの例を示す図。
【図４】デコーダ＜ｊ＞の例を示す図。
【図５】デコーダ＜ＢＬｉ＞の例を示す図。
【図６】図３のアドレスコンパレータの回路例を示す図。
【図７】オペアンプの回路例を示す図。
【図８】センスアンプの回路例を示す図。
【図９】本発明の第２実施の形態に関わる読み出し回路の主要部を示す図。
【図１０】図９の読み出し回路の変形例を示す図。
【図１１】本発明の第３実施の形態に関わる電流源を示す図。
【図１２】本発明の第４実施の形態に関わる読み出し回路の主要部を示す図。
【図１３】ＮＡＮＤ型フラッシュメモリの動作例を示す図。
【図１４】ＮＡＮＤ型フラッシュメモリの動作例を示す図。
【図１５】ＲＤＲＡＭの動作例を示す図。
【図１６】本発明の第５実施の形態に関わるＭＲＡＭの概要を示す図。
【図１７】メモリセルアレイの回路例を示す図。
【図１８】書き込みワード線ドライバの回路例を示す図。
【図１９】書き込みビット線ドライバ／シンカーの回路例を示す図。
【図２０】書き込み電流制御回路の回路例その１を示す図。
【図２１】書き込み電流制御回路の回路例その２を示す図。
【図２２】設定回路の回路例を示す図。
【図２３】レジスタ＜ｊ＞の回路例を示す図。
【図２４】Ｖｃｌａｍｐ生成回路の回路例を示す図。
【図２５】デコーダＲＰ＜０＞〜ＲＰ＜３＞，ＣＰ＜０＞〜ＣＰ＜７＞の回路例を示す図。
【図２６】図１６のＭＲＡＭの動作波形の例を示す図。
【図２７】図１６のＭＲＡＭの動作波形の例を示す図。
【図２８】本発明の第６実施の形態に関わる読み出し方法を示す図。
【図２９】本発明の第６実施の形態に関わる読み出し方法を示す図。
【図３０】本発明の第６実施の形態に関わる読み出し方法を示す図。
【図３１】本発明の第６実施の形態に関わる読み出し方法を示す図。
【図３２】センス回路をモデル化した図。
【符号の説明】
１：  アドレスコンパレータ、  ２：  デコーダ、  １０：  レファレンス電位生成回路、  １１：  ＭＲＡＭ、  １２：  メモリセルアレイ、  １３：  レファレンスセルアレイ：  １４：  ロウデコーダ＆ワード線ドライバ、  １５：ロウデコーダ＆ワード線ドライバ／シンカー、  １６Ａ，１６Ｂ，１７Ａ，１７Ｂ：  カラムデコーダ＆ビット線ドライバ／シンカー、  １８：  アドレスレシーバ、  １９：  データ入力レシーバ、  ２０：  センスアンプ、  ２１：  データ出力ドライバ、  ２２：  制御回路、  ２３：  設定回路、  ２４：  書き込み電流制御回路、  ＣＳ１：  バイアス電流供給回路、  ＯＰ１，ＯＰ２：オペアンプ、  Ｓ／Ａ：  センスアンプ、  ＱＰ１，・・・ＱＰ１０：  ＰチャネルＭＯＳトランジスタ、  ＱＮ１，・・・ＱＮ１２：  ＮチャネルＭＯＳトランジスタ、  ＭＣ：  メモリセル、  ＲＣ：  レファレンスセル、  Ｉ１：  電流源、  ＡＤ＜ＢＬｉ＞，ＡＤ＜０＞，・・・ＡＤ＜７＞：  アンド回路、  ＲＳＴ：  読み出し選択トランジスタ。
【図１】
2005018916.tif 000009
【図２】
2005018916.tif 000010
【図３】
2005018916.tif 000011
【図４】
2005018916.tif 000012
【図５】
2005018916.tif 000013
【図６】
2005018916.tif 000014
【図７】
2005018916.tif 000015
【図８】
2005018916.tif 000016
【図９】
2005018916.tif 000017
【図１０】
2005018916.tif 000018
【図１１】
2005018916.tif 000019
【図１２】
2005018916.tif 000020
【図１３】
2005018916.tif 000021
【図１４】
2005018916.tif 000022
【図１５】
2005018916.tif 000023
【図１６】
2005018916.tif 000024
【図１７】
2005018916.tif 000025
【図１８】
2005018916.tif 000026
【図１９】
2005018916.tif 000027
【図２０】
2005018916.tif 000028
【図２１】
2005018916.tif 000029
【図２２】
2005018916.tif 000030
【図２３】
2005018916.tif 000031
【図２４】
2005018916.tif 000032
【図２５】
2005018916.tif 000033
【図２６】
2005018916.tif 000034
【図２７】
2005018916.tif 000035
【図２８】
2005018916.tif 000036
【図２９】
2005018916.tif 000037
【図３０】
2005018916.tif 000038
【図３１】
2005018916.tif 000039
【図３２】
2005018916.tif 000040