(57)【特許請求の範囲】
【請求項１】
アレイの中で配列される多数のスピン・トランスファ・トルク磁気トンネル接合（ＭＴＪ）デバイスと、
各々のＭＴＪデバイスの自由層の極性を変化させるために、対応するＭＴＪデバイスに結合される多数のプログラマブル・ソースと、
書込み部及び読出し部を備え、書き込み動作を可能にするために動作可能とされたＭＵＸドライバであって、前記読出し部は、書込み動作の間中、高インピーダンス状態に設定されるように構成される、ＭＵＸドライバと、を具備し、
前記ＭＴＪデバイスの第１のグループは、入力プレーンに配列され、
前記ＭＴＪデバイスの第２のグループは、出力プレーンに配列され、
前記入力プレーンおよび前記出力プレーンは、各々のＭＴＪデバイスの自由層の相対的な極性に基づいた論理関数を形成するために組み合わせられるプログラマブル・論理アレイ。
【請求項２】
各々のＭＴＪデバイスは、低抵抗状態又は高抵抗状態に電気的にプログラムされることができる磁気トンネル接合（ＭＴＪ）記憶素子を含む請求項１記載のプログラマブル・論理アレイ。
【請求項３】
前記アレイの中の各々の行が、前記多数のＭＴＪデバイスのうちの一つを介して入力列に結合される請求項２記載のプログラマブル・論理アレイ。
【請求項４】
第１の入力列は、第１の行を第１の列に結合する第１のＭＴＪを低抵抗状態に設定することによって、第１の行において選択される請求項３記載のプログラマブル・論理アレイ。
【請求項５】
第２の入力列は、第１の行を第２の列に結合する第２のＭＴＪを高抵抗状態に設定することによって、第１の行において選択されない請求項４記載のプログラマブル・論理アレイ。
【請求項６】
多数のプログラマブル・ソースからの第１のプログラマブル・ソースが、前記第１のＭＴＪに結合されたとつないだ列に結合され、前記多数のプログラマブル・ソースからの第２のプログラマブル・ソースが、前記第１のＭＴＪに結合された行に結合される請求項４記載のプログラマブル・論理アレイ。
【請求項７】
前記第１のプログラマブル・ソースおよび第２のプログラマブル・ソースは、書き込み動作の間に、前記第１のＭＴＪに対してプログラミング電流を供給するように構成される請求項６記載のプログラマブル・論理アレイ。
【請求項８】
前記第２のプログラマブル・ソースは、読み出し動作の間に、電圧シンクを供給するように構成される請求項７記載のプログラマブル・論理アレイ。
【請求項９】
前記入力プレーンがＮＯＲプレーンであり、出力プレーンがＮＯＲプレーンである請求項１記載のプログラマブル・論理アレイ。
【請求項１０】
前記入力プレーンがＡＮＤプレーンであり、出力プレーンがＯＲプレーンである請求項１記載のプログラマブル・論理アレイ。
【請求項１１】
前記ＭＵＸドライバは前記入力プレーンおよび前記出力プレーンの間に結合されるように構成され、
前記ＭＵＸドライバは前記入力プレーンの第１の行から前記出力プレーンのＭＴＪに読み出し信号を供給するように構成される請求項１記載のプログラマブル・論理アレイ。
【請求項１２】
前記ＭＵＸドライバは、前記第１の行の電圧レベルを検出する、および前記第１の行の電圧レベルと閾値電圧との比較に基づいてバイナリ出力電圧を生成するように構成されるセンスアンプを具備する請求項１１記載のプログラマブル・論理アレイ。
【請求項１３】
前記書込み部は、前記出力プレーンに関連した多数のプログラマブル・ソースのうちの一つに、前記出力プレーンの中の前記ＭＴＪを結合するように構成される、請求項１１記載のプログラマブル・論理アレイ。
【請求項１４】
多数のプログラマブル・ソースの一つが、前記出力プレーンの中のＭＴＪに結合された列に結合される請求項１３記載のプログラマブル・論理アレイ。
【請求項１５】
前記出力プレーンに結合され、前記出力プレーンの列の電圧レベルを検出する、および前記出力プレーンの列の電圧レベルと閾値電圧との比較に基づいてバイナリ出力電圧を生成するように構成される出力センスアンプを更に具備する請求項１記載のプログラマブル・論理アレイ。
【請求項１６】
多数のスピン・トランスファ・トルク磁気トンネル接合（ＭＴＪ）デバイスのそれぞれを高抵抗状態又は低抵抗状態のどちらか一方にプログラムすること、ここで、各々のＭＴＪデバイスは選択されたＭＴＪデバイスの自由層側に結合された第１のプログラマブル・ソース及び前記選択されたＭＴＪデバイスの固定層側に結合されたプログラマブル・ソースによりプログラムされ、各ＭＴＪデバイスはＭＵＸドライバによってプログラムされる、ここで、前記ＭＵＸドライバは、書き込み動作を可能とするように動作可能とされ、書込み部及び読出し部を備え、前記読出し部は、書込み動作の間中、高インピーダンス状態に設定されるように構成される、と、
入力プレーンの列および行の中へ前記ＭＴＪの第１のグループを配列することと、
出力プレーンの中の少なくとも一つの列へ前記ＭＴＪデバイスの第２のグループを配列すること、ここで、各々の行の出力が少なくとも一つの列でＭＴＪデバイスに結合され、
と、
各々のＭＴＪデバイスの相対的な抵抗に基づいて論理関数を決定することとを
具備する論理アレイを実装する方法。
【請求項１７】
各々が前記入力プレーンの中の対応する入力列中の少なくとも一つのＭＴＪデバイスに結合される多数の入力を結合することと、
異なる入力列からの多数のＭＴＪデバイスを入力プレーンの中の第１の行へ結合することと、ここで、前記プログラマブル・ソースからの第１のプログラマブル・ソースが行に結合され、と、
多数の入力を動作可能にすることおよび第１のプログラマブル・ソースを低電圧状態に設定することにより第１の行の電圧を生成することと、
前記第１の行の電圧と閾値電圧との比較に基づいてバイナリ出力電圧を生成することと、を更に具備する請求項１６記載の方法。
【請求項１８】
前記入力プレーンの行の出力電圧を前記出力プレーンの第１列の対応するＭＴＪデバイスに結合することと、
第１の出力列の電圧を生成するために出力プレーンの第１列に結合されたプログラマブル・ソースを低電圧状態に設定することと、
前記出力プレーンの第１の列の電圧と閾値電圧との比較に基づいて前記出力プレーンのためのバイナリ出力電圧を生成することと、を
更に具備する請求項１６記載の方法。
【請求項１９】
前記出力プレーン又は前記入力プレーンのうちの一つの前記多数のスピン・トランスファ・トルク磁気トンネル接合（ＭＴＪ）デバイスのそれぞれを再プログラムすることによって、前記出力プレーン又は前記入力プレーンの少なくとも一つにより実現した論理関数を再構成することを具備する請求項１６の方法。
【請求項２０】
前記論理関数を再構成することは、前記出力プレーン又は前記入力プレーンのうちの一つの前記多数のスピン・トランスファ・トルク磁気トンネル接合（ＭＴＪ）デバイスのそれぞれの前記抵抗状態を変化させることを具備する請求項１９記載の方法。
【発明の詳細な説明】
【優先権の主張】
【０００１】
本願は、本願の譲受人に譲渡され、参照によって本願に明確に組み込まれた２００７年３月２９日出願の「スピン・トランスファ・トルク磁気抵抗ランダムアクセスメモリを用いるソフトウェア・プログラマブル・論理」と題された、米国特許仮出願第６０／９０８，９６１号に対する優先権を主張する。
【技術分野】
【０００２】
本発明の実施形態は、プログラマブル・論理アレイ（ＰＬＡ）又はフィールド・プログラマブル・ゲートアレイ（ＦＰＧＡ）に関連する。特に、本発明の実施形態は、ＰＬＡ、ＦＰＧＡ、又はスピン・トンラスファ・トルク磁気抵抗ランダムアクセスメモリ（ＳＴＴ−ＭＲＡＭ）技術を用いるソフトウェア・プログラマブル・論理に関連する。
【背景技術】
【０００３】
フィールド−プログラマブル・ゲート・アレイは、「論理ブロック（ｌｏｇｉｃ  ｂｌｏｃｋ）」と称されるプログラマブル・論理素子およびプログラマブル・インターコネクトを含む、半導体素子である。論理ブロックは、例えばＡＮＤおよびＸＯＲのような基本的な論理ゲートの関数、又は、例えば、復号器又は単純な数理的な関数のような複雑な組み合わせ関数を実行するためにプログラムされることが出来る。大抵のＦＰＧＡでは、論理ブロックもまた、単純なフリップ−フロップ又はメモリのより完全なブロックとなってもよい記憶素子を含む。プログラマブル・インターコネクトの階層は、システム設計者によって必要に応じて論理ブロックが相互に連結されることを可能にする。ＦＰＧＡが製造された後、システム設計者は多くの異なる論理関数を実装するためのプログラミングを用いてもよく、それによりそのデバイスを「フィールド−プログラマブル」とする。
【０００４】
ＰＬＡは、一つ又は二つのマスクの変更によって集積回路の製作段階でＰＬＡが修正されること、又は「プログラムされる」こと以外はＦＰＧＡと類似している。U.S. Patent 5,959,465に記述されるように、フラッシュＥＰＲＯＭメモリ素子を有するＰＬＡは、一般的に二つの論理プレーン、入力プレーンおよび出力プレーンからなる。各々のプレーンは、論理プレーン内のトランジスタのゲート端子に加えられる入力を受け取り、出力ノードに出力を供給する。入力プレーンへの入力は、ＰＬＡへの入力である。入力プレーンの出力は、中間ノードである。出力プレーンへの入力は、中間ノードに接続される。出力プレーンの出力は、ＰＬＡの出力である。入力プレーンはＡＮＤ関数を供給してもよいし、出力プレーンはＯＲ関数を供給してもよい。あるいは、双方のプレーンが、ＮＯＲ関数を供給してもよい。これらの関数は、用いられたトランジスタの型および接続性と、それらのゲートに加えられる信号とによって定義される。ＮＯＲ−ＮＯＲ構成は、ＣＭＯＳ論理で実現することが最も簡単であるという、特有の長所を有する。ＮＯＲステージは、並列に接続した入力の数と等しいトランジスタの数を有する。さらなる入力に適応させるためのさらなる並列トランジスタの追加は、そのステージの操作速度に影響しない。
【０００５】
U.S. Patent 6,876,228は、磁気抵抗ランダムアクセスメモリ（ＭＲＡＭ）として知られるメモリセルあるいは磁気記憶素子を備えるＦＰＧＡについて記述する。結線情報は、磁気記憶素子に書き込まれる。結線情報は、直列に入力され、磁気記憶素子に相当するシフトレジスタに蓄積される。電源がスイッチオンされる時、磁気記憶素子に蓄積された結線情報は、ラッチ素子によってラッチされ、ＦＰＧＡの論理ブロックを相互に連結するためのスイッチング回路へ出力される。
【０００６】
磁気抵抗ランダムアクセスメモリ（ＭＲＡＭ）は、揮発性メモリに匹敵する応答（読み出し／書き込み）時間を有する不揮発性メモリ技術である。電荷又は電流フローとしてデータを蓄積する従来のＲＡＭ技術と比べて、ＭＲＡＭは磁気素子を用いる。図１Ａおよび図１Ｂに例証されるように、磁気トンネル接合（ＭＴＪ）記憶素子１０５は、絶縁（トンネルバリア）層２０によって分けられ、それぞれ磁界を保つことが出来る二つの磁気層１０および３０から形成することが出来る。二つの層の一つは（例えば、固定層１０）、特定の極性に設定される。その他の層の（例えば、自由層３０）極性３２は、加えられることが出来る外部磁界の極性と一致させるために自由に変化することが出来る。自由層３０の極性３２の変化は、ＭＴＪ記憶素子１０５の抵抗を変化させるだろう。例えば、図１Ａのように、極性が揃っている場合、低抵抗状態が存在する。図１Ｂのように、極性が揃っていない場合、高抵抗状態が存在する。ＭＴＪ１０５の例証は単純化され、当業者は、当技術で知られているように、例証された各々の層が、一又はそれ以上の物質の層からなってもよいことを認識するだろう。
【発明の概要】
【０００７】
典型的な本発明の実施形態は、スピン・トランスファ・トルク磁気抵抗技術を用いるソフトウェア・プログラマブル・論理のためのシステム、回路、および方法に向けられる。
【０００８】
本発明の実施形態は、アレイの中で配列される多くのスピン・トランスファ・トルク磁気トンネル接合（ＭＴＪ）デバイスと、各々のＭＴＪデバイスの自由層の極性を変化させるために、対応するＭＴＪデバイスに結合される多数のプログラマブル・ソースとを具備するプログラマブル・論理アレイを含むことができ、ＭＴＪデバイスの第１のグループは、入力プレーンの中に配列され、ＭＴＪデバイスの第２のグループは、出力プレーンの中に配列され、入力プレーンおよび出力プレーンは、各々のＭＴＪデバイスの自由層に相対的な極性に基づいた論理関数を形成するために組み合わせられる。
【０００９】
もう一つの実施形態は、アレイの中で配列される多数のスピン・トランスファ・トルク磁気トンネル接合（ＭＴＪ）デバイスのそれぞれを高抵抗状態又は低抵抗状態のどちらか一方にプログラムすること、ここで、各々のＭＴＪデバイスは選択されたＭＴＪデバイスの自由層側に結合された第１のプログラマブル・ソース及び選択されたＭＴＪデバイスの固定層側に結合されたプログラマブル・ソースによりプログラムされる、と
入力プレーンの列および行へＭＴＪの第１のグループを配列することと、出力プレーンの少なくとも一つの列へＭＴＪの第２のグループを配列すること、ここで、各々の行の出力が少なくとも一つの列でＭＴＪデバイスに結合され、と、各々のＭＴＪデバイスの相対的な抵抗に基づいた論理関数を決定することとを具備するアレイの中に論理を実装する方法を含むことができる。
【図面の簡単な説明】
【００１０】
添付図面は、本発明の実施形態の記述を援助するために示され、単に実施形態の例証のために提供され、それについて限定しない。
【図１Ａ】図１Ａは、磁気トンネル接合（ＭＴＪ）記憶素子およびそれらに関連した状態の例証である。
【図１Ｂ】図１Ｂは、磁気トンネル接合（ＭＴＪ）記憶素子およびそれらに関連した状態の例証である。
【図１Ｃ】図１Ｃは、スピン・トランスファ・トルク磁気抵抗ランダムアクセスメモリ（ＳＴＴ−ＭＲＡＭ）ビットセルの例証である。
【図１Ｄ】図１Ｄは、スピン・トランスファ・トルク磁気抵抗ランダムアクセスメモリ（ＳＴＴ−ＭＲＡＭ）ビットセルの例証である。
【図２】図２は、スピン・トランスファ・トルク磁気抵抗技術を用いるＡＮＤ入力プレーンおよびＯＲ入力プレーンを有するソフトウェア・プログラマブル論理の例証である。
【図３Ａ】図３Ａは、ＮＯＲ入力プレーンおよびＮＯＲ出力プレーンを有するソフトウェア・プログラマブル論理の例証である。
【図３Ｂ】図３Ｂは、ＮＯＲ−ＮＯＲプログラマブル・論理のゲートレベルの実装の例証である。
【図４Ａ】図４Ａは、スピン・トランスファ・トルク磁気抵抗技術を用いる、図３のアレイの行の概要の例証である。
【図４Ｂ】図４Ｂは、図４Ａの等価回路の例証である。
【図５】図５は、論理アレイの中の、個々のメモリセルをプログラミングすることの例証である。
【図６Ａ】図６Ａは、スピン・トランスファ・トルク磁気抵抗技術を用いるプログラマブルおよび再構成可能な論理アレイのための入力回路の一例を、例証する。
【図６Ｂ】図６Ｂは、図６Ａの回路で用いられた切替え可能な電源の一例を、例証する。
【図７】図７は、ＡＮＤ構成のための信号の様々な電圧レベルを、例証する図である。
【発明を実施するための形態】
【００１１】
本発明の実施形態の態様は、本発明の特定の実施形態に向けられた、以下の関連した図面および記述に開示される。代わりの実施形態は、本発明の意図から逸脱することなく、考案されてもよい。その上、よく知られている本発明の素子については、詳細に記述されないだろう。又は、関連した本発明の実施形態の詳細を不明瞭にしないように省略されるだろう。
【００１２】
「典型的」という用語は、本明細書においてもっぱら、「例、実例、又は例証を提供する」ことを意味するように用いられる。本明細書において「典型的」として説明された任意の例は、必ずしも他の例に対して好適又は有利であるとは解釈されない。同様に、「本発明の実施形態」という言い方は、本発明の全ての実施形態が、議論した特性、利点、又は操作の様式を含むことを必要としない。
【００１３】
本発明の実施形態は、論理アレイの一部を形成するために、スピン・トランスファ・トルク磁気抵抗ランダムアクセスメモリ（ＳＴＴ−ＭＲＡＭ）素子を用いる。ＳＴＴ−ＭＲＡＭは、薄いフィルタ（スピンフィルタ）を通過する時、スピン偏極される電子を用いる。ＳＴＴ−ＭＲＡＭは、スピン・トランスファ・トルクＲＡＭ（ＳＴＴ−ＲＡＭ）、スピン・トランスファ・トルク磁性切替えＲＡＭ（スピン−ＲＡＭ）、およびスピン運動量トランスファ（ＳＭＴ−ＲＡＭ）としてもまた知られている。書き込み動作の間に、スピン偏極電子は、自由層上で、自由層の極性を切替えることが出来るトルクを働かせる。読み出し動作は、前述で論じたように、電流がＭＴＪ記憶素子の抵抗／論理状態を検知するために使用される点で、従来のＭＲＡＭと類似している。
【００１４】
図１Ｃを参照して、ＳＴＴ−ＭＲＡＭビットセル１００の一例が、ＭＴＪ１０５をプログラムすることの説明を援助するために例証される。ＳＴＴ−ＭＲＡＭビットセル１００は、ＭＴＪ１０５、トランジスタ１１０、ビットライン１２０、およびワードライン１３０を含む。トランジスタ１１０は、ＭＴＪ１０５を通じて電流が流れることを可能とするために読み出し動作および書き込み動作の両方でスイッチオンされる。そのため、論理状態は読み出し又は書き込みされることができる。ＳＴＴ−ＭＲＡＭの中のＭＴＪ１０５の論理状態は、従来のＭＲＡＭの磁気書き込みとは対照的に電気的に書き込まれる。
【００１５】
図１Ｄを参照して、ＳＴＴ−ＭＲＡＭセル１０１のより詳細な図が、読み出し／書き込み動作のさらなる考察のために例証される。例えば、ＭＴＪ１０５、トランジスタ１１０、ビットライン１２０、およびワードライン１３０のような以前に論じた素子に加えて、ソースライン１４０、センスアンプ１５０、読み出し／書き込み回路１６０、およびビットライン基準１７０が例証される。ＭＲＡＭとは対照的に、ＳＴＴ−ＭＲＡＭでの書き込み動作は、電気的である。読み出し／書き込み回路１６０は、ビットライン１２０およびソースライン１４０の間の書き込み電圧を生成する。ビットライン１２０およびソースライン１４０の間の電圧の極性によって、ＭＴＪ１０５の自由層の極性は変えることが出来る。同様に、論理状態は、セル１０１に書き込むことができる。同様に、読み出し動作の間に、ＭＴＪ１０５を通じてビットライン１２０およびソースライン１４０の間に流れる、読み出し電流は生成される。電流がトランジスタ１１０を通じて流れることが許可されている時は、ＭＴＪ１０５の抵抗（論理状態）はビットライン１２０とソースライン１４０の間の電圧差の極性に基づいて決定することができる。電圧差は基準１７０と比較され、その後センスアンプ１５０により増幅される。メモリセル１０１の構成および動作は、当技術の中で知られている。追加の詳細は、例えば、Ｍ．Ｈｏｓｏｍｉおよびその他の者によって提供される。スピン・トランスファ・トルク磁気抵抗切替えを備える新しい不揮発性メモリ：スピン−ＲＡＭ、ＩＥＤＭ会議の議事録（２００５）は参照により本願明細書に完全に組み込まれる。
【００１６】
他の態様において、本発明の実施形態は、上記で論じた、低消費電力、スタティックメモリ、およびＳＴＴ技術の電気的な読み出し／書き込み特徴を利用する。本発明の実施形態は、拡張可能なハードウェア、プロセス生成を通じてのスケーラビリティ、再構成可能性、初期化不要、ロー・スタンバイ・リークエイジおよび状態／プログラム保持力、小容積、および高速を含む多くの特徴を提供する。
【００１７】
例えば、図２に例証される実行は、個々のメモリおよび論理素子から得られた複素関数の実現を可能とする。図２に例証されるように、ソフトウェア・プログラマブル関数生成は、ＣＭＯＳゲートと縦一列に並ぶＭＴＪ（例えば、２１０）ＳＴＴ−ＭＲＡＭセルと、「ＡＮＤ」（２２０）および「ＯＲ」（２４０）プレーンを書き込み可能および読み出し可能とするための切り替え可能電源とを用いて完成させることが出来る。ＡＮＤおよびＯＲプレーントポロジは、十分な論理構成を促進する。例えば、例証されるように、関数Ｆ０＿Ｂ＝Ｘ０＿Ｂ＋Ｘ１＿Ｂは、実現することが出来る（ここで、＿Ｂが、与えられた論理信号の補数を表示する）。出力Ｆ０＿Ｂ（２５０）は、ＯＲプレーン２４０に対してＭＵＸドライバ２３０およびＭＴＪ２１０記憶素子を通じて結合されるＡＮＤプレーン２２０に接続された個々のＭＴＪ２１０記憶素子から信号を受け取る。ＡＮＤプレーン２２０は、個々のＭＴＪ記憶素子２１０と結合された、一又はそれ以上のＡＮＤビットライン２２２を含むことが出来る。多数のＡＮＤビットライン２２２の多くは、任意のビットサイズの語（ｗｏｒｄ）を形成するために組み合わせることが出来る。同様に、ＯＲプレーン２４０は、ＭＴＪ記憶素子２１０と結合された一又はそれ以上のＯＲビットライン２４２を含むことができ、多数のＯＲビットライン２４２は、任意のビットサイズの語を組み合わせることが出来る。典型的な構成およびトポロジのより詳細な記述は、以下の部分節でより詳細に提供されるだろう。
【数１】
0005579794.tif 000002
【００１８】
さらに、論理ゲート３００Ｂ内のＰＬＡ論理と同等の描写は、図３Ｂにより提供される。ＮＯＲ−ＮＯＲ構成は、実現されるＡＮＤおよびＯＲ演算の両方を可能にする。例えば、例証した関数は、Ｆ０＝Ｘ１・Ｘ２＋Ｘ３・Ｘ４の論理関数もまた実行する。従って、本明細書に記述されるように、複雑な正論理および負論理は、基本的なインバータ、基本的なゲート、およびＰＬＡの中の等価プレーンを用いて実行することが出来る。
【００１９】
図４Ａを参照して、ＮＯＲ−ＮＯＲ論理構成３００は、関数Ｆ０＝Ｘ１・Ｘ２＋Ｘ３・Ｘ４を実現する目的でＳＴＴ技術を用いて実装することが出来る。例えば、ＮＯＲ−ＮＯＲ構成３００で、多数のＳＴＴ−ＭＴＪｓ（例えば、図４Ａで例証される３０１）は、行Ｏから行Ｎにおいて相互に結合されることが出来る。行０から行Ｎへの入力において評価回路３０２があり、評価回路は論理構成３００（例えば、図５に示す）の出力に配置することが出来る。各々の評価回路は、読み出し動作の間に最小電圧に設定することが出来る、ソフトウェア・プログラマブル正／負（＋／−）ソースを含む。（＋／−）ソースは、ＭＴＪ３０１に書き込まれる状態によって、書き込み／プログラミング動作のどちらか一方の状態に、構成することが出来る。図５に関して、書き込み／プログラミング動作は、以下により詳細に記述される。
【００２０】
ＭＴＪ３０１に関連した各々の列は、ラインＸ０、Ｘ０＿Ｂ、Ｘ１、Ｘ１＿Ｂ、…、ＸＮ、ＸＮ＿Ｂを介して加えられる入力を含む。行０−Ｎで最後のＳＴＴ−ＭＲＡＭセル３０１の入力より前に結合されたドライバ、およびそれらの出力に反転センスアンプ３１０がある。反転センスアンプ３１０の出力は、各々の行によって実現した関数を提供する。従って、行の出力は反転される（例えば、高い信号は、低出力となる）だろう。それは、より詳細に以下に記述されるだろう。
【数２】
0005579794.tif 000003
【００２１】
残りの列は、「１」をプログラミングすること又は反並列磁化状態にＭＴＪを設定することによって、高抵抗状態に設定することが出来る。それによって、Ｘ１＿Ｂ又はＸ２＿Ｂの一方又は両方で高論理値は、行０上で高論理状態となるだろう。本明細書に用いられた値は、単に例証のためであり、その他の構成は、“０”について高抵抗状態にする、および“０”について低抵抗状態にすることを可能にするかもしれないことは認識されるだろう。従って、本発明の実施形態は、例証された構成又は関連した値に限られない。
【００２２】
概略的に例証されるように、ＭＴＪｓ３０１は、プログラマブル抵抗とみなすことが出来る。与えられた行に沿った全てのＭＴＪ３０１の抵抗は等価抵抗ＲＴをもたらすと実質的にみなすことができる。等価抵抗ＲＴは評価回路の実効抵抗（Ｒｅｖａｌ）と組み合わせて図４Ｂの分圧器４０１として表されることができる。分圧器４０１は入力（例えば、Ｘ１＿Ｂ又はＸ１＿Ｂ等）での、あるいは入力列からの等価電流からの、与えられた入力電圧に対する行で電圧Ｖｔｒｉｐ（又は、トリガ電圧）を生ずるだろう。電圧Ｖｔｒｉｐは、４０２に例証されるように、インバータ３１０のトリップポイントによって、高いおよび低い両方の範囲を持つことが出来る。従って、回路設計考察は、アクティブ入力（例えば、Ｘ１＿Ｂ又はＸ１＿Ｂ）での一つの高論理状態は高として検出され、反転センスアンプ３１０の出力を低になるようにトリップポイントを充分に低く調整することを含む。同様に、未使用の入力（例えば、Ｘ３、Ｘ４など）からのいかなる漏洩電流も擬正論理状態が活性化されることがないようにトリップポイントが調整され得る。
【数３】
0005579794.tif 000004
【００２３】
同様に、その他の関数は、その他の行について実現させることができ、これらの論理的な関数は、より複雑な論理関数と組み合わせることが出来る。
【数４】
0005579794.tif 000005
【００２４】
さらに、ＭＴＪ３０１は、高抵抗又は低抵抗のどちらか一方をプログラムすることが出来るので、各々のプレーンの関数論理は再構成可能となる。
【００２５】
図５を参照して、個々のＭＴＪ２１０をプログラムする例証が、提供される。上述で論じたように、ＭＴＪ２１０は、それぞれ反並列磁化状態又は並列磁化状態にＭＴＪ２１０を設定することによって、比較的高抵抗状態又は比較的低抵抗状態のどちらか一方に“プログラム”することが出来る。それに応じて、例証の目的のために、高抵抗な状態は論理状態１として表されるだろうし、低抵抗な状態は論理状態０として表されるだろう。図５のプログラマブル・アレイは、図２で例証した事項と類似している。それゆえ、同様の参照番号が用いられるだろうし、素子の詳細な議論は提供されないだろう。例証されるように、各々のＭＴＪ２１０は、ソフトウェア・プログラマブル・正／負ソース５１２および５１４の間に、書き込み経路（例えば、５１０）を確立することにより、プログラムすることができる。
【数５】
0005579794.tif 000006
【００２６】
このプログラミング過程がＡＮＤプレーン２２０の中の全てのＭＴＪで繰り返され得ることは認識されるだろう。
【００２７】
同様に、書き込み経路５２０に沿ったＭＴＪ２１０は、（＋／−）ソース５２２および５２４によって、プログラムすることができる。具体的に言うと、書き込み電流は、高インピーダンス状態へＯＲプレーン２４０の中の残りの論理経路を設置することおよび選択されたＭＴＪに「１」又は「０」状態を書き込むための望ましい極性に（＋／−）ソース５２２および５２４を設定することによって、電源５２２および５２４の間で生成することができる。例証されるように、ＭＵＸドライバ２３０の一部（例えば、（ａ））は、書き込み動作を可能にするために動作可能とされ、読み出し部（例えば、（ｂ））は、書き込み動作の間に、高インピーダンス状態に設定することが出来る。２３０の書き込み部（ａ）は、双方向性の電流フローを可能にすることができる。そのため、両者の状態は、選択されたＭＴＪの中にプログラムすることができる。その上、ＭＵＸドライバ２３０の機能性は、独立したデバイスとして実装することができ、本発明の実施形態は例証されたデバイス又はトポロジに限られないことが、認識されるだろう。従って、上述で論じた機能性を実行させることが可能などんなデバイス又はデバイスの組み合わせでも、ＭＵＸドライバ２３０の代わりに用いることができる。
【００２８】
図６Ａは、ＳＴＴプログラマブル・論理回路のための入力回路の一例を例証する。
【数６】
0005579794.tif 000007
【００２９】
例証された例において、入力ＡはＰＭＯＳトランジスタ６１４に供給され、インバータ６２２によって反転され、それぞれＮＡＮＤゲート６１８および６２８を経てＰＭＯＳトランジスタ６１４に供給される。同様に、入力ＢはＰＭＯＳトランジスタ６３４に供給され、インバータ６４２によって転位され、それぞれＮＡＮＤゲート６３８および６４８を経てＰＭＯＳトランジスタ６４４に供給される。
【００３０】
ＮＡＮＤゲート６１８，６２８，６３８および６４８もまた、ＲＥＡＤ信号から入力を受け取る。それに応じて、読み出し動作が活性化されていない場合、ＮＡＮＤゲートは、読み出し論理経路６１０，６２０，６３０および６４０を高インピーダンス状態に設置するために作用する。これは、例えば、図５に関連して論じたように、ＭＴＪ６１１，６２１，６３１，６４１の独立したプログラミングを可能にする。しかしながら、ＮＡＮＤゲート構成が単なる一例として提供され、いかなる適当なデバイスもまた類似の機能性を達成するために用いることが出来ることは、認識されるだろう。
【００３１】
従って、入力Ａが高い電圧レベルを有し、ＲＥＡＤ信号が高い場合、ＰＭＯＳトランジスタ６１４は活性化されるだろう。上述したように、入力Ａもまた、インバータ６２２を経て、６１０の経路の逆の論理状態で活性化される（例えば、入力Ａの低電圧上で活性化される）ＰＭＯＳトランジスタ６２４に供給される。そのため、入力Ａについての補数が提供される。ＲＥＡＤ信号が高い場合、同様の手法で、入力ＢはＰＭＯＳトランジスタ６３４に供給されるほか、インバータ６４２を経て、経路６３０および６４０にＢおよびその補数の両方を提供するためのＰＭＯＳトランジスタ６４４にもまたそれぞれ供給される。
【００３２】
上述したように、ＳＴＴ磁気抵抗デバイス（ＳＴＴ ＭＴＪ又はＭＴＪ）の論理状態「１」又は「０」（例えば、高抵抗状態又は低抵抗状態）は、上述で論じたように、関連したソフトウェア・プログラマブル・正／負（＋／−）ソース６８０および６８８を用いて、各々のＳＴＴ ＭＴＪ（例えば、６１１，６２１，６３１，６４１）の中にプログラムすることができる。このプログラム可能な事項は、以下により詳細に議論されるだろう各々のプレーンの論理関数に関して、再構成可能な論理アレイを提供する。その上、上述したように、プログラミング動作の間に、読み出し経路は、各々のＭＴＪのプログラミングおよび選択を可能にするために、高インピーダンス状態に設置される。図６Ｂは、（＋／−）ソース６８０の一例を例証する。例証されるように、プログラマブル・電源６８２は、プログラマブル・パワー・ソース６８０が個々に動作可能となる又は動作不能とされることを可能にするＥｖａｌ回路６８４と結合されることができる。Ｅｖａｌ回路６８４は、例えば、電源６８２との個別的な接続を可能にするトランスミッションゲートあるいはその他のデバイスのようなＣＭＯＳデバイスとしてもよい。Ｅｖａｌ回路６８４の活性化は、ＷＲＩＴＥ Ｘ信号によって制御することができる。前記Ｘは、各々のプログラマブル・ソース６８０が一又はそれ以上のＭＴＪセル（例えば、図５に示す）の列と結合されることができる時に書き込まれる列である。プログラマブル・ソース６８８は、図６Ｂで例証されるように類似した構成とすることができる。しかしながらＥｖａｌ回路は、それぞれの選択された行に関して読み出しおよび書き込み動作の両方において活性化するであろう。読み出し動作の間に、電源６８２は低電圧（グランド又は負電圧としてもよい）に設定されるだろう。その結果、結果回路は図４Ａおよび図４Ｂの読み出し例証と類似するであろう。あるいは、プログラマブル・ソース６８８は、読み出しおよび書き込みのために、別々の回路を有することができる。例えば、書き込み部は、図６Ｂで例証されるように構成することができ、読み出し部はグランドに直接結合され、ＲＥＡＤ信号によって制御されるＥｖａｌ回路を有することができる。従って、前述の回路の例は、単に例証の目的のためにあり、本発明の実施形態の範囲を制限することを意図していないことは認識されるだろう。
【００３３】
例えば図５で例証されたような、プログラマブル・論理アレイのトポロジを検討すると、類似の論理構成が出力プレーン（例えば、２４０）のために用いることができることは認識されるだろう。出力プレーンで各々のＭＴＪは、低抵抗状態又は高抵抗状態のどちらにもプログラムすることができ、各々の行の出力は、類似のＭＴＪに入力として供給される。同様に、プログラマブル・ソースは、出力プレーンで各々のＭＴＪにプログラミングすることに類似しており、ＭＵＸの書き込み部は、書き込まれる各々のＭＴＪを選択するために用いることができる。あるいは、個々のプログラマブル・ソースは各々のＭＴＪに供給することができ、対応するＭＵＸは、読み出し機能を供給することだけに単純化することができる。読み出し動作の間に、出力プレーンの中のＭＴＪからの信号の結果は、センスアンプ（例えば、２５０）によって検知することができ、各々の行のための読み出し動作に関して上述で論じたように、閾値に基づいて論理的な「１」又は「０」のどちらにも設定することができる。
【００３４】
様々な論理構成の動作の理解を助けるために、関連したＭＴＪ６１１および６２１の与えられた状態に対する入力Ａについて真理値表を以下に提供する。具体的に言うと、示されるように、入力Ａが高い状態（１）となる場合、ノードａ１およびノードａ２の両方での値は論理的な０となる。それゆえに、出力Ｆは論理的な０となるだろうし、Ｆの補数は論理的な１となるだろう。これとは対照的に、入力Ａが論理的な０の場合、ノードａ１での値は０のままであるが、ノードａ２での値は、論理的な１となり、それは論理的な１のまま出力Ｆとなるだろうし、Ｆの補数は論理的な０となるだろう。
【表１】
0005579794.tif 000008
【００３５】
例証されるように、与えられた閾値又はトリップ／トリガレベル（例えば、Ｖｔｒｉｐ）に達すると、高レベルから低レベルに切替えるために作用するセンスアンプ６５０で、Ｓｉｇの電圧をバッファすることによりＦは提供される。同様に、Ｆの補数はインバータ６５２の出力から提供される。しかしながら、本発明の実施形態がこの構成に限られないことは認識されるだろう。例えば、センスアンプは反転出力を有することができ、その上、反転論理の補数およびＳｉｇの電圧に関する転位論理を提供するために用いることができるもう一つのインバータと直列に結合することもできる。例えば０のような論理値の使用は、ノードａ１又はノードａ２に零電圧があることを意味するものではないが、Ｓｉｇの電圧レベルが出力Ｆで検知されるような論理的な１を引き起こすのに十分でないことを単に意味することは、さらに認識されるだろう。この説明の目的のために、経路６３０および６４０は、高インピーダンス状態となり、Ｓｉｇの電圧に寄与しないことが想定される。様々な論理レベルの影響は、図７に関して、以下により詳細に論じられる。
【００３６】
図７は、例えば、図６で例証したような論理構成のためのシミュレーションを例証する。グラフは、入力ＡおよびＢのためのそれぞれの電圧レベルを示し、入力の４つのバイナリ状態の組み合わせ（例えば、１０，１１，０１，００）を写像する４つの象限を有するとみなすことが出来る。さらに、トリガ／トリップポイント値７３２は、センスアンプに給電する行のＳｉｇ電圧７３０に基づいたアレイの行の最終的な出力状態を決定するために設定することができる。出力電圧７４０は、様々な入力条件に対して作用する論理を示すために表示される。出力電圧７４０のためのセンスアンプが、例証したグラフのための転位出力になると想定されることは、注意すべきことである。例えば、もしＳｉｇ電圧７３０がトリガポイント電圧７３２未満であるならば、その時は、出力電圧７４０は高くなる。同様に、もしＳｉｇ電圧７３０がトリガポイント電圧７３２以上であるならば、その時は、出力電圧７４０は低くなる。
【００３７】
入力Ａが高く、入力Ｂが低い場合、ＳＴＴ ＭＴＪデバイスの中に漏洩経路が未だあるだろうし、Ｓｉｇ７３０の電圧は、図７のグラフの第１象限に示されるように、ある一定のレベルまで上昇するだろう。このＳｉｇの値は、入力Ａが低く、入力Ｂが高い第３象限で本質的に繰り返される。入力ＡおよびＢの両方が高い場合、Ｓｉｇ７３０のための最小電圧が第２象限に生じる。例えば図６Ａに例証されるような論理アレイの構成により、入力ＡおよびＢの両方が高い場合、それらはＳＴＴデバイス６１１および６１３を通じて高抵抗経路にそれぞれ結合される。対照的に、第４象限においてＡおよびＢの両方が低い場合、Ｓｉｇ７３０について最高電圧レベルが生じる。なぜならば、低抵抗状態に設定されるＭＴＪ６２１および６４１を有する経路６２０および６４０の両方が活性化されるからである。それゆえに、Ｓｉｇ７３０はトリガポイント７３２よりずっと高くなり、出力７４０はこの条件のために低くなる。非転位出力についてのグラフは、逆の状態を有している出力グラフになるであろうことは認識されるだろう。図７のグラフのための真理値表は以下の表２により提供される。
【表２】
0005579794.tif 000009
【００３８】
上述で論じたように、論理プレーンは、ＭＴＪの値を再プログラミングすることにより再構成可能になりえることもまた、認識されるだろう。例えば、もしＭＴＪ６１１，６２１，６３１および６４１の値が反転されるならば、図６Ａで例証された行によって実現した論理は、ＯＲ関数に変更することが出来る。例えば、もしＭＴＪ６１１および６３１が「０」又は低抵抗状態にプログラムされるならば、入力Ａ又はＢのどちらか一方が高い場合は、Ｓｉｇ上での電圧は高められた状態となるだろうし、両方が高い場合は、Ｓｉｇ上での電圧は最も高い状態となるだろう。前記電圧は、入力ＡおよびＢの両方が低い場合、最も低い状態にあるだろう。従って、行の出力は、以下の表３に示される真理値表で例証されるようにＯＲ関数を実現できる。
【表３】
0005579794.tif 000010
【００３９】
従って、本発明の実施形態が、論理アレイにＳＴＴ ＭＴＪデバイスを用いることで、プログラム可能な態様および再構成可能な態様の両方を含むことは、認識されるだろう。さらに、本発明の実施形態が例証された構成に限られないことは、認識されるだろう。本発明の実施形態は、トポロジおよび配列によってソフトウェア・プログラマブルになりえるし、プログラマブル復号関数、拡張可能な命令セット、およびソフトウェアプログラミングによるｏｎ−ｔｈｅ−ｆｌｙハードウェア論理の追加／操作を含む。さらに、本発明の実施形態は、データ転送を同期させるためのクロックを必要とせずに、並列に実行可能となる設計を含むことができる。従って、構築物としてＳＴＴ  ＭＴＪデバイス、入力プレーンおよび出力プレーン，及び関連するドライバを用いることで、本発明の実施形態は、複雑な機能性を達成するための構成とすることができる。
【００４０】
前述の開示は、例証となる本発明の実施形態を示すけれども、様々な変更および修正が、添えられた請求項によって定義される本発明の実施形態の範囲から逸脱することなく本明細書を作成することができるということは、注意されるべきである。本明細書に記述された本発明の実施形態と一致する方法の機能、手段および／又はアクションは、特定の手順で行う必要はない。さらに、本発明の素子は、単数で記述される又は主張されてもよいが、単数への制限が明白に言明されていない限り、複数は考慮される。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
［Ｃ１］
アレイの中で配列される多数のスピン・トランスファ・トルク磁気トンネル接合（ＭＴＪ）デバイスと、
各々のＭＴＪデバイスの自由層の極性を変化させるために、対応するＭＴＪデバイスに結合される多数のプログラマブル・ソースと、を具備し、
前記ＭＴＪデバイスの第１のグループは、入力プレーンに配列され、
前記ＭＴＪデバイスの第２のグループは、出力プレーンに配列され、
前記入力プレーンおよび前記出力プレーンは、各々のＭＴＪデバイスの自由層の相対的な極性に基づいた論理関数を形成するために組み合わせられるプログラマブル・論理アレイ。
［Ｃ２］
各々のＭＴＪデバイスは、低抵抗状態又は高抵抗状態に電気的にプログラムされることができる磁気トンネル接合（ＭＴＪ）記憶素子を含むＣ１記載のプログラマブル・論理アレイ。
［Ｃ３］
前記アレイの中の各々の行が、前記多数のＭＴＪデバイスのうちの一つを介して入力列に結合されるＣ２記載のプログラマブル・論理アレイ。
［Ｃ４］
第１の入力列は、第１の行を第１の列に結合する第１のＭＴＪを低抵抗状態に設定することによって、第１の行において選択されるＣ３記載のプログラマブル・論理アレイ。
［Ｃ５］
第２の入力列は、第１の行を第２の列に結合する第２のＭＴＪを高抵抗状態に設定することによって、第１の行において選択されないＣ４記載のプログラマブル・論理アレイ。
［Ｃ６］
多数のプログラマブル・ソースからの第１のプログラマブル・ソースが、前記第１のＭＴＪに結合されたとつないだ列に結合され、前記多数のプログラマブル・ソースからの第２のプログラマブル・ソースが、前記第１のＭＴＪに結合された行に結合されるＣ４記載のプログラマブル・論理アレイ。
［Ｃ７］
前記第１のプログラマブル・ソースおよび第２のプログラマブル・ソースは、書き込み動作の間に、前記第１のＭＴＪに対してプログラミング電流を供給するように構成されるＣ６記載のプログラマブル・論理アレイ。
［Ｃ８］
前記第２のプログラマブル・ソースは、読み出し動作の間に、電圧シンクを供給するように構成されるＣ７記載のプログラマブル・論理アレイ。
［Ｃ９］
前記入力プレーンがＮＯＲプレーンであり、出力プレーンがＮＯＲプレーンであるＣ１記載のプログラマブル・論理アレイ。
［Ｃ１０］
前記入力プレーンがＡＮＤプレーンであり、出力プレーンがＯＲプレーンであるＣ１記載のプログラマブル・論理アレイ。
［Ｃ１１］
前記入力プレーンおよび前記出力プレーンの間に結合されるＭＵＸドライバを更に具備し、
前記ＭＵＸドライバは前記入力プレーンの第１の行から前記出力プレーンのＭＴＪに読み出し信号を供給するように構成されるＣ１記載のプログラマブル・論理アレイ。
［Ｃ１２］
前記ＭＵＸドライバは、前記第１の行の電圧レベルを検出する、および前記第１の行の電圧レベルと閾値電圧との比較に基づいてバイナリ出力電圧を生成するように構成されるセンスアンプを具備するＣ１１記載のプログラマブル・論理アレイ。
［Ｃ１３］
前記ＭＵＸドライバは、前記出力プレーンに関連した多数のプログラマブル・ソースのうちの一つに、前記出力プレーンの中の前記ＭＴＪを結合するように構成される書き込み部を具備するＣ１１記載のプログラマブル・論理アレイ。
［Ｃ１４］
多数のプログラマブル・ソースの一つが、前記出力プレーンの中のＭＴＪに結合された列に結合されるＣ１３記載のプログラマブル・論理アレイ。
［Ｃ１５］
前記出力プレーンに結合され、前記出力プレーンの列の電圧レベルを検出する、および前記出力プレーンの列の電圧レベルと閾値電圧との比較に基づいてバイナリ出力電圧を生成するように構成される出力センスアンプを更に具備するＣ１記載のプログラマブル・論理アレイ。
［Ｃ１６］
多数のスピン・トランスファ・トルク磁気トンネル接合（ＭＴＪ）デバイスのそれぞれを高抵抗状態又は低抵抗状態のどちらか一方にプログラムすること、ここで、各々のＭＴＪデバイスは選択されたＭＴＪデバイスの自由層側に結合された第１のプログラマブル・ソース及び前記選択されたＭＴＪデバイスの固定層側に結合されたプログラマブル・ソースによりプログラムされる、と、
入力プレーンの列および行の中へ前記ＭＴＪの第１のグループを配列することと、
出力プレーンの中の少なくとも一つの列へ前記ＭＴＪデバイスの第２のグループを配列すること、ここで、各々の行の出力が少なくとも一つの列でＭＴＪデバイスに結合され、と、
各々のＭＴＪデバイスの相対的な抵抗に基づいて論理関数を決定することとを
具備する論理アレイを実装する方法。
［Ｃ１７］
各々が前記入力プレーンの中の対応する入力列中の少なくとも一つのＭＴＪデバイスに結合される多数の入力を結合することと、
異なる入力列からの多数のＭＴＪデバイスを入力プレーンの中の第１の行へ結合することと、ここで、前記プログラマブル・ソースからの第１のプログラマブル・ソースが行に結合され、と、
多数の入力を動作可能にすることおよび第１のプログラマブル・ソースを低電圧状態に設定することにより第１の行の電圧を生成することと、
前記第１の行の電圧と閾値電圧との比較に基づいてバイナリ出力電圧を生成することと、を更に具備するＣ１６記載の方法。
［Ｃ１８］
前記入力プレーンの行の出力電圧を前記出力プレーンの第１列の対応するＭＴＪデバイスに結合することと、
第１の出力列の電圧を生成するために出力プレーンの第１列に結合されたプログラマブル・ソースを低電圧状態に設定することと、
前記出力プレーンの第１の列の電圧と閾値電圧との比較に基づいて前記出力プレーンのためのバイナリ出力電圧を生成することと、を
更に具備するＣ１６記載の方法。
［Ｃ１９］
前記出力プレーン又は前記入力プレーンのうちの一つの前記多数のスピン・トランスファ・トルク磁気トンネル接合（ＭＴＪ）デバイスのそれぞれを再プログラムすることによって、前記出力プレーン又は前記入力プレーンの少なくとも一つにより実現した論理関数を再構成することを具備するＣ１６の方法。
［Ｃ２０］
前記論理関数を再構成することは、前記出力プレーン又は前記入力プレーンのうちの一つの前記多数のスピン・トランスファ・トルク磁気トンネル接合（ＭＴＪ）デバイスのそれぞれの前記抵抗状態を変化させることを具備するＣ１９記載の方法。
【図１Ａ】
0005579794.tif 000011
【図１Ｂ】
0005579794.tif 000012
【図１Ｃ】
0005579794.tif 000013
【図１Ｄ】
0005579794.tif 000014
【図２】
0005579794.tif 000015
【図３Ａ】
0005579794.tif 000016
【図３Ｂ】
0005579794.tif 000017
【図４Ａ】
0005579794.tif 000018
【図４Ｂ】
0005579794.tif 000019
【図５】
0005579794.tif 000020
【図６Ａ】
0005579794.tif 000021
【図６Ｂ】
0005579794.tif 000022
【図７】
0005579794.tif 000023