以下、本発明の不揮発ロジック回路を、添付図面を参照して詳細に説明する。
[第1実施形態]
図4は、本発明の第1実施形態に係る不揮発ロジック回路の構成を示す回路ブロック図である。ここでは、不揮発ロジック回路の一つの形態として、データを不揮発に格納する不揮発ラッチ回路1について説明する。不揮発ラッチ回路1は、磁気抵抗回路2と、インバータ回路3と、書込み回路5とを具備する。
磁気抵抗回路2は、直列接続された複数の磁気抵抗素子を備える。複数の磁気抵抗素子の直列接続の一端は、第1電源に接続され、その他端は第1電源よりも低電圧な第2電源に接続されている。この図の例では、複数の磁気抵抗素子として、二つの磁気抵抗素子2a、2bが直列接続されている。直列接続の一端が第1電源としての電源電圧VDDに、他端が第2電源としての接地電圧GNDにそれぞれ接続されている。
磁気抵抗素子は、MTJ(Magnetoresistive Tunneling Junction)素子であることが好ましい。MTJ素子は、磁化方向が固定されたピン層、磁化方向が反転可能なフリー層、及びピン層とフリー層との間に設けられたバリア層を有する。ピン層とフリー層の磁化方向の相対的な関係により、高抵抗及び低抵抗のいずれか一方の抵抗値を示す。例えば、ピン層とフリー層との磁化方向が平行な場合には低抵抗となり、反平行な場合には高抵抗となる。したがって図中では、簡単のために、可変抵抗素子として表現される。以下各図面において同様である。また、以下本明細書において、低抵抗の場合をデータ「0」を記憶した状態、高抵抗の場合をデータ「1」を記憶した状態ともいう。
複数の磁気抵抗素子における、上端と下端以外の直列接続のいずれかの接点である第1接点N1を挟んで、第1電源(VDD)側の磁気抵抗素子(第1磁気抵抗素子)と、第2電源(GND)側の磁気抵抗素子(第2磁気抵抗素子)とは、異なる抵抗値を有している。すなわち、異なるデータを記憶している。この図の例では、磁気抵抗素子2bはデータ「0」を記憶して低抵抗を有し、磁気抵抗素子2aはデータ「1」を記憶して高抵抗を有している。この関係は、書込み回路5(後述)により設定可能であり、逆の関係とすることも可能である。
磁気抵抗素子の材料は、MR比が300%以上となる材料を用いることが好ましい。更に、MR比が500%以上となる材料を用いることがより好ましい。上限は特に無いが、理論的には10000%あれば十分である。そのような材料としては、複数の金属を合金化した半金属が例示される。そのような材料を用いた磁気抵抗素子として、例えば、Co2MnSi/MgO/Co50Fe50の積層構造で形成されたMTJ素子が例示される(S.Tsunegi,et al,Applied Physics Letters 93,112506(2008)。
複数の磁気抵抗素子が第1電源(VDD)と第2電源(GND)との電圧差を電圧分配することを考慮して、第1接点N1の電圧をインバータ回路3のp型トランジスタの閾値電圧よりも高く、及びn型トランジスタの閾値電圧よりも低くするように設定する。本実施形態では、上記の高MR比の磁気抵抗素子を用いているので、少ない数の磁気抵抗素子(この図の例では2個)でそれが容易に可能となる。例えば、磁気抵抗素子2aの抵抗をR0、磁気抵抗素子2bの抵抗をR1とすると、第1接点N1からの出力電圧Voutは、
Vout=VDD×R0/(R0+R1) (1)
となる。したがって、第1接点N1に接続される次段のp型トランジスタの閾値電圧Vth−Pは、
Vout>VDD−Vth−P (2)
を満たすように、磁気抵抗素子の抵抗R0、R1を設定する。一方、第1接点N1に接続される次段のn型トランジスタの閾値電圧Vth−Nは、
Vout<GND+Vth−N (3)
を満たすように、磁気抵抗素子の抵抗R0、R1を設定する。このような磁気抵抗素子を用いることで、インバータ回路3の両トランジスタを確実にオフにすることができ、インバータ回路3でのリーク電流を極めて小さくすることができる。
磁気抵抗素子2bがデータ「1」を記憶してR1が高抵抗を有し、磁気抵抗素子2aがデータ「0」を記憶してR0が低抵抗を有している場合、電源電圧VDDはほとんど磁気抵抗素子2bに分配されるので、第1接点N1の電圧は極めて接地電圧GNDに近くなる。したがって、第1接点N1の電圧をn型トランジスタの閾値電圧よりも低くすることができる。これにより、不揮発ラッチ回路1は、第1接点N1に、設定データ「0」を記憶することができる。
逆に、磁気抵抗素子2bがデータ「0」を記憶してR1が低抵抗を有し、磁気抵抗素子2aがデータ「1」を記憶してR0が高抵抗を有している場合、電源電圧VDDはほとんど磁気抵抗素子2aに分配されるので、第1接点N1の電圧は極めて電源電圧VDDに近くなる。したがって、第1接点N1の電圧をp型トランジスタの閾値電圧よりも高くすることができる。これにより、不揮発ラッチ回路1は、第1接点N1に、設定データ「1」を記憶することができる。
また、磁気抵抗素子の高抵抗の場合の抵抗値を高く設定することが好ましい。例えば、100メガオーム以上である。最近のトランジスタでは1個あたり、1ナノアンペア程度のリーク電流を流すものもあるので、そのリーク電流に充分対抗できる抵抗素子電流が必要となる。このため、印加電圧が1Vのときに、その10%となる100メガオームが目安となる。その場合、第1電源(VDD)と直列接続の磁気抵抗素子2a、2bと第2電源(GND)との経路、すなわち、磁気抵抗素子2a、2bを流れる電流を著しく小さくすることができる。その電流の小ささにより、その経路中に電流遮断用のスイッチを設ける必要がなくなる。例えば、素子の構成の変更(例示:電流貫通方向の断面積の縮小、バリア層の厚膜化など)により抵抗値を高くすることができる。こうして、電流遮断用のスイッチを省略することができるので、設定データを常時出力することができる。その結果、図2におけるDフリップフロップのようなラッチ回路が不要となり、不揮発ラッチ回路1の面積を削減することができる。
また、設定データ「0」を記憶したときは第1接点N1の電圧をn型トランジスタの閾値電圧よりも低くでき、設定データ「1」を記憶したときは第1接点N1の電圧をp型トランジスタの閾値電圧よりも高くできるので、インバータ回路3の両トランジスタを確実にオフにすることができ、インバータ回路3でのリーク電流(貫通電流)を極めて小さくすることができる。
インバータ回路3は、配線4を介して、第1接点N1に、その入力端子で接続されている。第1接点N1の電圧が入力信号として配線4を介してインバータに入力される。その第1接点N1の電圧に基づいて、所定の振幅を有するHighレベル信号又はLowレベル信号が出力信号として出力される。すなわち、インバータ回路3は、第1接点N1の電圧の振幅を、第1電源(VDD)又は第2電源(GND)までの振幅に十分に広げる。
書込み回路5は、第1接点N1の近傍(磁気抵抗素子の一部)を通過するように書き込み電流を供給する。書込み回路5は、第1電流端子31と、第2電流端子32とを備える。書込み回路5は、第1スイッチTr1を介して第1電流端子31から第1接点N1の近傍に電圧WDを印加する。同時に、第2スイッチTr2を介して第2電流端子32から第1接点N1の他の近傍に電圧/WDを供給する。それにより、第1電流端子31から第2電流端子32へ、及び、第2電流端子32から第1電流端子31へのいずれかの向きで、磁気抵抗素子2a、2bの一部に書き込み電流が流れる。この図の例では、第1電流端子31から第2電流端子32へ書き込み電流が流れる。詳細は後述する。第1スイッチTr1及び第2スイッチTr2は、同一の書込み信号WRITEによりオン又はオフされる。
図5Aは、本発明の第1実施形態に係る不揮発ロジック回路における磁気抵抗素子の構成を示す断面図である。この図の例では、図4の不揮発ラッチ回路1に用いられる、二つの磁気抵抗素子2a、2bが組み合わされた構成を示している。この磁気抵抗素子2aは、ピン層21aと、フリー層としての磁化反転領域13と、ピン層21aと磁化反転領域13との間に設けられたバリア層22aとを備える。一方、この磁気抵抗素子2bは、ピン層21bと、フリー層としての磁化反転領域13と、ピン層21bと磁化反転領域13との間に設けられたバリア層22bとを備える。ここで、ピン層21aとバリア層22aと磁化反転領域13とは一つのMTJ素子を構成し、ピン層21bとバリア層22bと磁化反転領域13とは一つのMTJ素子を構成している。
ピン層21a、21bは、磁化の向きが固定された強磁性層である。ピン層21a、21bは、垂直磁気異方性(perpendicular magnetic anisotropy)を有することが好ましい。ここで、垂直磁気異方性とは、この図の例において、xy平面に対して垂直なz方向の磁気異方性を有することをいう。以下、本明細書において同じである。ピン層21a、21bの磁化の向きは、第1方向(例示:+z方向)及び第2方向(例示:−z方向)のいずれか一方に固定されている。この図の例では、ピン層21a、21bは、それぞれ+z方向、及び−z方向に固定されている。ピン層21a、21bは、磁化を強固に固定するために、積層フェリ結合を有する複数の強磁性層から構成されていてもよいし(図示されず)、反強磁性層を隣接させてもよい(図示されず)。
また、二つの磁気抵抗素子2a、2bにおいて、磁化反転領域13を含む磁化記録層10は共通である。その共通である磁化記録層10は、垂直磁気異方性を有する強磁性層であることが好ましい。垂直磁気異方性を有する強磁性層である場合、層厚が薄いほど、熱安定性を保ちつつ、書き込み電流を低減することが可能となるので、より素子の小型化、ひいては不揮発ロジック回路の低面積化に資することが可能となる。
磁化記録層10は、第1磁化固定領域11と第2磁化固定領域12と磁化反転領域13とを有する。第1磁化固定領域11は、磁化方向が第1方向(例示:+z方向)に固定されている。第2磁化固定領域12は、磁化方向が第1方向と反対の第2方向(例示:−z方向)に固定されている。磁化反転領域13は、第1磁化固定領域11と第2磁化固定領域12との間に設けられている。磁化反転領域13の磁化方向は、第1磁化固定領域11と第2磁化固定領域12との間を流れる電流によって駆動される磁壁移動DWにより、第1方向及び第2方向いずれかの向きに反転可能である。また、バリア層22a、22bは、それぞれピン層21a、21bと磁化反転領域13との間に設けられた非磁性膜である。
磁化記録層10の磁化反転領域13に書き込み電流を流す第1電流端子31、第2電流端子32は、それぞれ第1磁化固定領域11及び第2磁化固定領域12に接続されている。書き込み回路5は、第1電流端子31と第2電流端子32との間に書き込み電流を流すことにより、磁化反転領域13の磁化の向きを反転させることができる。書き込み電流の向きは、磁化反転領域13に設定する磁化の向きに応じて設定される。詳細は後述される。また、ピン層21bは電源電圧VDDと、ピン層21aは接地電圧GNDとそれぞれ接続されている。配線4は、磁化反転領域13に接続されている。第1接点N1は、配線4と磁化反転領域13との接続点に対応する。配線4は、実質的には、磁化記録層10のどこに接続されていてもよい。なお、配線4は、第1電流端子31、第2電流端子32のいずれかの配線と共用することも可能である。
垂直磁気異方性を有するピン層21a、21b及び磁化記録層10は、Fe、Co、Niのうちから選択される少なくとも一つの材料を含むことが好ましい。さらにPtやPdを含むことで垂直磁気異方性を安定化することができる。これに加えて、B、C、N、O、Al、Si、P、Ti、V、Cr、Mn、Cu、Zn、Zr、Nb、Mo、Tc、Ru、Rh、Ag、Hf、Ta、W、Re、Os、Ir、Au、Smなどを添加することによって所望の磁気特性が発現されるように調整することができる。具体的にはCo、Co−Pt、Co−Pd、Co−Cr、Co−Pt−Cr、Co−Cr−Ta、Co−Cr−B、Co−Cr−Pt−B、Co−Cr−Ta−B、Co−V、Co−Mo、Co−W、Co−Ti、Co−Ru、Co−Rh、Fe−Pt、Fe−Pd、Fe−Co−Pt、Fe−Co−Pd、Sm−Co、Gd−Fe−Co、Tb−Fe−Co、Gd−Tb−Fe−Coなどが例示される。この他、Fe、Co、Niのうちから選択されるいずれか一つの材料を含む層と、異なる層とを交互に積層させることにより垂直方向の磁気異方性を発現させることもできる。具体的にはCo/Pd、Co/Pt、Co/Ni、Fe/Auを交互に積層させた積層膜などが例示される。また、ピン層21a、21bは、上記の強磁性材料や、PtMn、NiMn、FeMnのような反強磁性材料を用いることができる。バリア層22a、22bは、絶縁性の材料により形成されることが好ましい。具体的な材料としては、Mg−O、Al−O、Al−N、Ni−O、Hf−Oなどが例示される。ただし、半導体や金属を材料として用いることも可能である。
なお、図5Aの例では、ピン層21a、21b及び磁化記録層10として、垂直磁気異方性を有する強磁性層を用いているが、本発明は、他の実施形態も含めて、その例に限定されるものではない。図5Bは、本発明の第1実施形態に係る不揮発ロジック回路における磁気抵抗素子の他の構成を示す断面図である。この図の例では、不揮発ラッチ回路1のピン層21a、21b及び磁化記録層10として、面内磁気異方性(in−plane magnetic anisotropy)を有する強磁性層を用いている点で、図5Aの例とは異なる。ここで、面内磁気異方性とは、この図の例において、xy面に対して平行な方向の磁気異方性を有していることをいう。以下、本明細書において同じである。
ピン層21a、第1磁化固定領域11の磁化の向きは、この図の例では−x方向に固定されている。ピン21b、第2磁化固定領域12の磁化の向きは、この図の例では+x方向に固定されている。磁化反転領域13の磁化の向きは+x方向及び−x方向のいずれかを取ることができる。
面内磁気異方性を有するピン層21a、21b及び磁化記録層10は、Fe、Co、Niのうちから選択される少なくとも一つの材料を含む強磁性体で形成される。これに加えて、B、C、N、O、Al、Si、P、Ti、V、Cr、Mn、Cu、Zn、Zr、Nb、Mo、Tc、Ru、Rh、Ag、Hf、Ta、W、Re、Os、Ir、Auなどを添加することにより、所望の磁気特性が発現されるように調整することができる。具体的にはNi−Fe、Co−Fe、Fe−Co−Ni、Ni−Fe−Zr、Co−Fe−B、Co−Fe−Zr−Bなどが例示される。また、リファレンス層21、ピン層51は、上記の強磁性材料や、PtMn、NiMn、FeMnのような反強磁性材料を用いることができる。
その他の構成に関しては、図5Aの例と同様のであるのでその説明を省略する。
図6A及び図6Bは、本発明の第1実施形態に係る不揮発ロジック回路における磁気抵抗素子の状態を示す断面図である。不揮発ラッチ回路1において、図6Aに示す状態では、磁化記録層10の磁化反転領域13の磁化方向は−z方向の向きである。この場合、第1磁化固定領域11と磁化反転領域13との間の境界近傍に、磁壁DWが形成される。この磁化状態は、第1磁化状態MS1と参照される。また、磁気抵抗素子2a、2bのピン層21a、21bの磁化方向は、それぞれ+z方向、−z方向である。その結果、磁気抵抗素子2aのピン層21aと磁化反転領域13とは磁化が反平行となる。従って、磁気抵抗素子2aはデータ「1」を記憶して高抵抗となる。一方、磁気抵抗素子2bのピン層21bと磁化反転領域13とは磁化が平行となる。従って、磁気抵抗素子2bはデータ「0」を記憶して低抵抗となる。
図6Bに示す状態では、磁化反転領域13の磁化方向は+z方向の向きである。この場合、第2磁化固定領域12と磁化反転領域13との間の境界近傍に、磁壁DWが形成される。この磁化状態は、第2磁化状態MS2と参照される。その結果、磁気抵抗素子2aのピン層21aと磁化反転領域13とは磁化が平行となる。従って、磁気抵抗素子2aは「0」を記憶して低抵抗となる。一方、磁気抵抗素子2bのピン層21bと磁化反転領域13とは磁化が反平行となる。従って、磁気抵抗素子2bは「1」を記憶して高抵抗となる。
次に、磁化記録層10における磁化反転領域13の磁化方向の反転方法について説明する。図7は、本発明の第1実施形態に係る磁化記録層10の構成及び動作を示す断面図である。磁化反転領域13の磁化方向は、書込み回路5により書き込み電流をy方向に流すことにより変化させることができる。書き込み電流は、第1磁化固定領域11に接続された第1電流端子31と、第2磁化固定領域12に接続された第2電流端子32との間に流す。
具体的には、例えば、磁化状態を第1磁化状態MS1から第2磁化状態MS2に変化させるために、第1書き込み電流IW1が、第2電流端子32から第1電流端子31に流される。この場合、+z方向のスピン偏極電子が、第1磁化固定領域11から磁化反転領域13に供給される。スピントルク効果により、磁壁DWが駆動され、第1磁化固定領域11側から第2磁化固定領域12側に移動する。その結果、磁化反転領域13の磁化方向が+z方向に反転し、第2磁化状態MS2が得られる。一方、磁化状態を第2磁化状態MS2から第1磁化状態MS1に変化させるために、第2書き込み電流IW2が、第1電流端子31から第2電流端子32に流される。この場合、−z方向のスピン偏極電子が、第2磁化固定領域12から磁化反転領域13に供給される。スピントルク効果により、磁壁DWが駆動され、第2磁化固定領域12側から第1磁化固定領域11側に移動する。その結果、磁化反転領域13の磁化方向が−z方向に反転し、第1磁化状態MS1が得られる。
このように、第1磁化固定領域11と第2磁化固定領域12との間を流れる書き込み電流により、磁壁DWが移動する。これにより、磁化反転領域13の磁化方向が反転し、磁気抵抗素子2a、2bの磁気抵抗の抵抗値がそれぞれ変化する。すなわち、二つの磁気抵抗素子2a、2bに対して、一度の書込みでその磁化状態を変化させることができる。第1磁化状態MS1と第2磁化状態MS2のいずれが得られるかは、その書き込み電流の方向に依存する。言い換えれば、書込み回路9を用いて書き込み電流の方向を制御することにより、磁気抵抗素子2a、2bの磁気抵抗の抵抗値を設定することができる。
次に、本発明の第1実施形態に係る不揮発ロジック回路としての不揮発ラッチ回路1の動作について説明する。図8は、本発明の第1実施形態に係る不揮発ロジック回路の動作の一例を説明する波形図である。縦軸は電圧を示し、横軸は時刻を示す。“N1”は第1接点N1の電圧変化を示し、“WRITE”は第1スイッチTr1及び第2スイッチTr2のゲートに入力される書込み信号WRITEの電圧変化をそれぞれ示している。ただし、Vth−Pはインバータ回路3の入力側のp型トランジスタの閾値電圧を示し、Vth−Nは入力側のn型トランジスタの閾値をそれぞれ示している。
ここでは、不揮発ラッチ回路1において、磁気抵抗素子2aにデータ「1」が記憶されて高抵抗となり、磁気抵抗素子2bにデータ「0」が記憶されて低抵抗となっている状態を考える。すなわち、このとき、磁化記録層10の磁化状態は、第1磁化状態MS1である(図7の<MS1>)。電源電圧VDDと接地電圧GNDとの間には、極めて高抵抗な磁気抵抗素子2aと低抵抗な磁気抵抗素子2bとの電流経路を通り極めて微弱な電流が流れる。電源電圧VDDは、磁気抵抗素子2aと磁気抵抗素子2bとにより電圧分配され、磁気抵抗素子2aに大部分の電圧が印加されている。このため、第1接点N1の電圧は、VDDとVDD−Vth−Pとの範囲内になっている(時刻t=t0)。すなわち、不揮発ラッチ回路1の第1接点N1にデータ「1」(Highレベルの電圧)が記憶されている。高抵抗な磁気抵抗素子2aと低抵抗な磁気抵抗素子2bとの抵抗比の設定により、当該電圧をその範囲内にすることができる。
次に、書込み回路5が、第1スイッチTr1及び第2スイッチTr2のゲートに書込み信号WRITEを印加する(時刻t=t1〜t2)。それにより、第1スイッチTr1及び第2スイッチTr2がオンとなる。書込み回路5は、第1書き込み電流IW1を第2電流端子32から第1電流端子31に流す。この場合、+z方向のスピン偏極電子が、第1磁化固定領域11から磁化反転領域13に供給される。スピントルク効果により、磁壁DWが駆動され、第1磁化固定領域11側から第2磁化固定領域12側に移動する。その結果、磁化反転領域13の磁化方向が+z方向に反転し、磁化記録層10は第2磁化状態MS2となる(図7の<MS2>)。それにより、磁気抵抗素子2aにデータ「0」が記憶されて低抵抗となり、磁気抵抗素子2bにデータ「1」が記憶されて高抵抗となる。その結果、電圧分配により、磁気抵抗素子2bに大部分の電圧が印加される。そのため、第1接点N1の電圧は、GNDとGND+Vth−Nとの範囲内になる(時刻t=t3)。すなわち、不揮発ラッチ回路1の第1接点N1にデータ「0」(Lowレベルの電圧)が記憶される。これも、高抵抗な磁気抵抗素子2aと低抵抗な磁気抵抗素子2bとの抵抗比の設定により、当該電圧をその範囲内にすることができる。
インバータ回路3は、第1接点N1の電圧は、入力信号として配線4を介してインバータに入力され、その第1接点N1の電圧に基づいて、所定の振幅を有するHighレベル信号(VDD)又はLowレベル信号(GND)が出力信号として出力される。
なお、上記の例では、磁気抵抗素子2aがデータ「1」の高抵抗、磁気抵抗素子2bがデータ「0」の低抵抗の状態(図6A)から、磁気抵抗素子2aがデータ「0」の低抵抗、磁気抵抗素子2bがデータ「1」の高抵抗の状態(図6B)への変換を示している。すなわち、不揮発ラッチ回路1において、第1接点N1に記憶されたデータ「1」かデータ「0」に書き換えられている。しかし、逆に、磁気抵抗素子2aがデータ「0」の低抵抗、磁気抵抗素子2bがデータ「1」の高抵抗の状態(図6B)から、磁気抵抗素子2aがデータ「1」の高抵抗、磁気抵抗素子2bがデータ「0」の低抵抗の状態(図6A)への変換についても、同様に実施することができる。すなわち、不揮発ラッチ回路1において、第1接点N1に記憶されたデータ「0」をデータ「1」に書き換えることも、同様に実施することができる。その場合、書込み回路5による書込み電流の向きを逆にすれば良い。なお、上記の磁気抵抗素子への書き込み原理から、図6Aの状態から同じ図6Aの状態への上書き、及び、図6Bの状態から同じ図6Bの状態への上書きも同様に行うことが可能である。
本実施形態では、磁気抵抗素子のMR比を高くすることにより、少ない数の磁気抵抗素子で、第1接点N1の出力電圧Voutを、Vout>VDD−Vth−P、及び、Vout<GND+Vth−Nを満たすように設定することができる。それにより、次段のトランジスタを確実にオフにすることができ、トランジスタのリーク電流を著しく減少させることが可能となる。また、磁気抵抗素子の数を少なく抑えることができるので、不揮発ラッチ回路1の面積を削減することができる。
また、磁気抵抗素子の高抵抗での抵抗値を高くすることにより、磁気抵抗素子2a、2bを流れる電流を著しく小さくすることができる。その場合、第1電源(VDD)と直列接続の磁気抵抗素子2a、2bと第2電源(GND)との経路に電流遮断用のスイッチを設ける必要がなくなるので、第1接点N1の設定データを常時出力することができる。その結果、図2におけるDフリップフロップのようなラッチ回路が不要となり、不揮発ラッチ回路1の面積を削減することができる。
更に、図5Aや図5Bに示される構成を採用することにより、磁気抵抗素子2a、2bをコンパクトに構成することができる。それにより、磁気抵抗素子2a、2bの占有する面積を削減することが可能となる。その結果、不揮発ラッチ回路1の面積を削減することができる。
[第2実施形態]
図9は、本発明の第2実施形態に係る不揮発ロジック回路の構成を示す回路ブロック図である。ここでは、不揮発ロジック回路の一つの形態として、データを不揮発に格納する不揮発ラッチ回路1aについて説明する。不揮発ラッチ回路1aは、磁気抵抗回路2と、インバータ回路3と、書込み回路5とを具備する。
本実施形態では、磁気抵抗回路2は、直列接続された四つの磁気抵抗素子2a、2b、2c、2dを有し、第1接点N1が磁気抵抗素子2aと磁気抵抗素子2bとの間であって接地電圧GND側に寄っている点、及び第1電源が電源電圧VBOOT(>電源電圧VDD)である点で第1実施形態と異なる。この場合において、例えば、磁気抵抗素子2aと磁気抵抗素子2bとの間の第1接点N1に対して、第1電源側の磁気抵抗素子2b〜2d(第1磁気抵抗素子)は全て同じデータ「0」を記憶して低抵抗を有し、第2電源側の磁気抵抗素子2a(第2磁気抵抗素子)はデータ「1」を記憶して高抵抗を有している。この関係は、書込み回路5により設定可能であり、逆の関係とすることも可能である。
複数の磁気抵抗素子が第1電源(VBOOT)と第2電源(GND)との電圧差を電圧分配することを考慮して、第1接点N1の電圧をインバータ回路3のp型トランジスタの閾値電圧よりも高く、及びn型トランジスタの閾値電圧よりも低くするように設定する。本実施形態では、高MR比の磁気抵抗素子を用いているので、少ない数の磁気抵抗素子(この図の例では4個)を用いてそれが容易に可能となる。
例えば、磁気抵抗素子2aの抵抗をR0、磁気抵抗素子2b〜2dの抵抗をR1とすると、第1接点N1からの出力電圧Voutは、
Vout=VBOOT×R0/(3・R1+R0) (1’)
となる。したがって、第1接点N1に接続される次段のp型トランジスタの閾値電圧Vth−Pは、
Vout>VDD−Vth−P (2)
を満たすように、磁気抵抗素子の抵抗R0、R1を設定する。一方、第1接点N1に接続される次段のn型トランジスタの閾値電圧Vth−Nは、
Vout<GND+Vth−N (3)
を満たすように、磁気抵抗素子の抵抗R0、R1を設定する。このような磁気抵抗素子を用いることで、インバータ回路3の両トランジスタを確実にオフにすることができ、インバータ回路3でのリーク電流を極めて小さくすることができる。
磁気抵抗素子2b〜2dがデータ「1」を記憶してR1が高抵抗を有し、磁気抵抗素子2aがデータ「0」を記憶してR0が低抵抗を有している場合、電源電圧VBOOTはほとんど磁気抵抗素子2b〜2dに分配されるので、第1接点N1の電圧は極めて接地電圧GNDに近くなる。したがって、第1接点N1の電圧をn型トランジスタの閾値電圧よりも低くすることができる。これにより、不揮発ラッチ回路1aは、第1接点N1に、設定データ「0」を記憶することができる。
逆に、磁気抵抗素子2b〜2dがデータ「0」を記憶して低抵抗を有し、磁気抵抗素子2aがデータ「1」を記憶して高抵抗を有している場合、電源電圧VBOOTはほとんど磁気抵抗素子2aに分配されるので、第1接点N1の電圧は極めて電源電圧VDDに近くなる。電源電圧VBOOTの大きさや、一つの磁気抵抗素子における高抵抗の値の大きさを調整することにより、第1接点N1の電圧を電源電圧VDDよりも高くすることが出来る。したがって、第1接点N1の電圧をp型トランジスタの閾値電圧よりもより高くすることができる。これにより、不揮発ラッチ回路1は、第1接点N1に、設定データ「1」を記憶することができる。
磁気抵抗回路2(複数の磁気抵抗素子)のその他の構成及び効果、及びインバータ回路3に関しては、第1実施形態と同様であるのでその説明を省略する。
書込み回路5は、第1接点N1の近傍(磁気抵抗素子の一部)を通過するように書き込み電流を供給すると共に、磁気抵抗素子2cと磁気抵抗素子2dとの間の第2接点N2の近傍(磁気抵抗素子の一部)を通過するように書き込み電流を供給する。書込み回路5は、第1接点N1の近傍に第1電流端子31aと第2電流端子32aとを備え、第2接点N2の近傍に第1電流端子31bと第2電流端子32bとを備える。書込み回路5は、第1スイッチTr1aを介して第1電流端子31a及び第2電流端子32aのいずれか一方から第1接点N1の近傍に電圧WDを印加する。同時に、第2スイッチTr2を介して他方から第1接点N1の他の近傍に電圧/WDを供給する。それにより、第1電流端子31aから第2電流端子32aへ、及び、第2電流端子32aから第1電流端子31aへのいずれかの向きで、磁気抵抗素子2a、2bの一部に書き込み電流が流れる。同様に、書込み回路5は、第1スイッチTr1bを介して第1電流端子31b及び第2電流端子32bのいずれか一方から第2接点N2の近傍に電圧WDを印加する。同時に、第2スイッチTr2bを介して他方から第2接点N2の他の近傍に電圧/WDを供給する。それにより、第1電流端子31bから第2電流端子32bへ、及び、第2電流端子32bから第1電流端子31bへのいずれかの向きで、磁気抵抗素子2c、2dの一部に書き込み電流が流れる。この図の例では、第1電流端子31aから第2電流端子32a、及び第1電流端子31bから第2電流端子32bへ書き込み電流が流れる。詳細は後述する。第1スイッチTr1a、Tr1b及び第2スイッチTr2a、Tr2bは、同一の書込み信号WRITEによりオン又はオフされる。
図10は、本発明の第2実施形態に係る不揮発ロジック回路における磁気抵抗素子の構成を示す断面図である。この図の例では、図10の不揮発ラッチ回路1aに用いられる、四つの磁気抵抗素子2a〜2dのうち、二つの磁気抵抗素子2a、2b、及び、二つの磁気抵抗素子2c、2dがそれぞれ組み合わされた構成を示している。図5Aの場合と同様に、磁気抵抗素子2aは、ピン層21aと、磁化反転領域13aと、バリア層22aとを備える。一方、磁気抵抗素子2bは、ピン層21bと、磁化反転領域13aと、ピバリア層22bとを備える。ここで、ピン層21aとバリア層22aと磁化反転領域13a、及び、ピン層21bとバリア層22bと磁化反転領域13a、はそれぞれ一つのMTJ素子を構成している。同様に、磁気抵抗素子2cは、ピン層21cと、磁化反転領域13bと、バリア層22cとを備える。一方、磁気抵抗素子2dは、ピン層21dと、磁化反転領域13bと、バリア層22dとを備える。ここで、ピン層21cとバリア層22cと磁化反転領域13b、及び、ピン層21dとバリア層22dと磁化反転領域13b、はそれぞれ一つのMTJ素子を構成している。
ピン層21a〜ピン層21dは、第1実施形態と同様に、垂直磁気異方性を有し、磁化の向きが固定された強磁性層であることが好ましい。ピン層21a〜21dの磁化の向きは、第1方向(例示:+z方向)及び第2方向(例示:−z方向)のいずれか一方に固定されている。この図の例では、ピン層21a、21b、21c、21dは、それぞれ+z方向、−z方向、−z方向、−z方向に固定されている。ピン層21a〜21dは、磁化を強固に固定するために、積層フェリ結合を有する複数の強磁性層から構成されていてもよいし(図示されず)、反強磁性層を隣接させてもよい(図示されず)。
また、二つの磁気抵抗素子2a、2bにおいて、磁化反転領域13aを含む磁化記録層10aは共通である。その共通である磁化記録層10aは第1実施形態(図5A)の磁化記録層10と同様である。ただし、図5Aにおける第1磁化固定領域11と第2磁化固定領域12と磁化反転領域13が、本図における第1磁化固定領域11aと第2磁化固定領域12aと磁化反転領域13aに対応する。一方、二つの磁気抵抗素子2c、2dにおいて、磁化反転領域13bを含む磁化記録層10bは共通である。同様に、その共通である磁化記録層10bは図5Aの磁化記録層10と同様である。ただし、図5Aにおける第1磁化固定領域11と第2磁化固定領域12と磁化反転領域13が、本図における第1磁化固定領域11bと第2磁化固定領域12bと磁化反転領域13bに対応する。
磁化記録層10aの磁化反転領域13aに書き込み電流を流す第1電流端子31a、第2電流端子32aは、それぞれ第1磁化固定領域11a及び第2磁化固定領域12aに接続されている。書き込み回路5は、第1電流端子31aと第2電流端子32aとの間に書き込み電流を流すことにより、磁化反転領域13aの磁化の向きを反転させることができる。書き込み電流の向きは、磁化反転領域13aに設定する磁化の向きに応じて設定される。また、ピン層21bはピン層21cと、ピン層21aは接地電圧GNDとそれぞれ接続されている。配線4は、磁化反転領域13aに接続されている。第1接点N1は、配線4と磁化反転領域13aとの接続点に対応する。配線4は実質的には、磁化記録層10aのどこに接続されていてもよい。なお、配線4は、第1電流端子31a、第2電流端子32aのいずれかの配線と共用することも可能である。
同様に、磁化記録層10bの磁化反転領域13bに書き込み電流を流す第1電流端子31b、第2電流端子32bは、それぞれ第1磁化固定領域11b及び第2磁化固定領域12bに接続されている。書き込み回路5は、第1電流端子31bと第2電流端子32bとの間に書き込み電流を流すことにより、磁化反転領域13bの磁化の向きを反転させることができる。書き込み電流の向きは、磁化反転領域13bに設定する磁化の向きに応じて設定される。また、ピン層21dは電源電圧VBOOTと、ピン層21cはピン層21bとそれぞれ接続されている。
垂直磁気異方性を有するピン層21a〜21d及び磁化記録層10a、10bの材料は、第1実施形態と同様であるのでその説明を省略する。
なお、図10の例では、ピン層21a〜21d及び磁化記録層10a、10bとして、垂直磁気異方性を有する強磁性層を用いているが、本発明はその例に限定されるものではない。第1実施形態における図5Bの場合と同様に、ピン層21a〜21d及び磁化記録層10a、10bとして、面内磁気異方性を有する強磁性層を用いることも可能である。その場合、図5Bの場合と同様であるので、その説明を省略する。
本発明の実施形態に係る不揮発ロジック回路における磁気抵抗素子の状態、及び、磁化反転領域の磁化方向の反転方法については、磁気抵抗素子2c、2dが、ピン層21c、21dの磁化が同じ−z方向に固定されているので、常に同じ抵抗値(高抵抗又は低抵抗)を示す他は、第1実施形態と同様である(6Aと図6B、及び、図7)。従って、それら気抵抗素子の状態、及び、磁化反転領域の磁化方向の反転方法の説明を省略する。ただし、本実施形態では、磁気抵抗素子2a、2b、2c、2dに書き込まれるデータは、[「0」、「1」、「1」、「1」]又は[「1」、「0」、「0」、「0」]である。
次に、本発明の第2実施形態に係る不揮発ロジック回路としての不揮発ラッチ回路1aの動作について説明する。図11は、本発明の第2実施形態に係る不揮発ロジック回路の動作の一例を説明する波形図である。縦軸は電圧を示し、横軸は時刻を示す。“N1”は第1接点N1の電圧変化を示し、“WRITE”は第1スイッチTr1a、Tr1b及び第2スイッチTr2a、Tr2bのゲートに入力される書込み信号WRITEの電圧変化をそれぞれ示している。ただし、Vth−Pはインバータ回路3の入力側のp型トランジスタの閾値電圧を示し、Vth−Nは入力側のn型トランジスタの閾値をそれぞれ示している。
ここでは、不揮発ラッチ回路1aにおいて、磁気抵抗素子2aにデータ「1」が記憶されて高抵抗となり、磁気抵抗素子2b〜2dにデータ「0」が記憶されて低抵抗となっている状態を考える。すなわち、このとき、磁化記録層10a及び磁化記録層10bの磁化状態は、第1磁化状態MS1である(図7の<MS1>)。電源電圧VBOOTと接地電圧GNDとの間には、極めて高抵抗な磁気抵抗素子2aと低抵抗な磁気抵抗素子2b〜2d(直列接続)との電流経路を通り極めて微弱な電流が流れる。電源電圧VBOOTは、磁気抵抗素子2aと磁気抵抗素子2b〜2dとにより電圧分配され、磁気抵抗素子2aに大部分の電圧が印加されている。第1接点N1の電圧は、VBOOTとVDD−Vth−Pとの範囲内になっている(時刻t=t0)。すなわち、不揮発ラッチ回路1aの第1接点N1にデータ「1」(Highレベルの電圧)が記憶されている。この図の例では、その電圧は、各磁気抵抗素子の低抵抗及び高抵抗の値(抵抗比)の設定値、及びVBOOTの設定値により、電源電圧VDDよりも高くなるように設定することが出来る。
次に、書込み回路5が、第1スイッチTr1a、Tr1b及び第2スイッチTr2a、Tr2bのゲートに書込み信号WRITEを印加する(時刻t=t1〜t2)。それにより、第1スイッチTr1a、Tr1b及び第2スイッチTr2a、Tr2bがオンとなる。書込み回路5は、第1書き込み電流IW1aを第2電流端子32aから第1電流端子31aに流す。この場合、+z方向のスピン偏極電子が、第1磁化固定領域11aから磁化反転領域13aに供給される。スピントルク効果により、磁壁DWが駆動され、第1磁化固定領域11a側から第2磁化固定領域12a側に移動する。その結果、磁化反転領域13aの磁化方向が+z方向に反転し、磁化記録層10aは第2磁化状態MS2(図7の<MS2>)となる。それにより、磁気抵抗素子2aにデータ「0」が記憶されて低抵抗となり、磁気抵抗素子2bにデータ「1」が記憶されて高抵抗となる。それと同時に、書込み回路5は、第1書き込み電流IW1bを第2電流端子32bから第1電流端子31bに流す。この場合、+z方向のスピン偏極電子が、第1磁化固定領域11bから磁化反転領域13bに供給される。スピントルク効果により、磁壁DWが駆動され、第1磁化固定領域11b側から第2磁化固定領域12b側に移動する。その結果、磁化反転領域13bの磁化方向が+z方向に反転し、磁化記録層10bは第2磁化状態MS2となる(図7の<MS2>)。それにより、磁気抵抗素子2c、2dにデータ「1」が記憶されて高抵抗となる。その結果、電圧分配により、磁気抵抗素子2b〜2dに大部分の電圧が印加される。そして、第1接点N1の電圧は、GNDとGND+Vth−Nとの範囲内になる(時刻t=t3)。すなわち、不揮発ラッチ回路1の第1接点N1にデータ「0」(Lowレベルの電圧)が記憶される。この場合も、その電圧は、各磁気抵抗素子の低抵抗及び高抵抗の値(抵抗比)の設定値、及びVBOOTの設定値により、当該電圧をその範囲内にすることができる。
インバータ回路3は、第1接点N1の電圧としての入力信号を配線4を介して受信し、その第1接点N1の電圧に基づいて、所定の振幅を有するHighレベル信号(VDD)又はLowレベル信号(GND)を出力信号として出力する。
なお、上記の例では、磁気抵抗素子2aがデータ「1」の高抵抗、磁気抵抗素子2b〜2dがデータ「0」の低抵抗の状態(第1状態)から、磁気抵抗素子2aがデータ「0」の低抵抗、磁気抵抗素子2b〜2dがデータ「1」の高抵抗の状態(第2状態)への変換を示している。すなわち、不揮発ラッチ回路1aにおいて、第1接点N1に記憶されたデータ「1」かデータ「0」に書き換えられている。逆に、磁気抵抗素子2aがデータ「0」の低抵抗、磁気抵抗素子2b〜2dがデータ「1」の高抵抗の状態(第2状態)から、磁気抵抗素子2aがデータ「1」の高抵抗、磁気抵抗素子2b〜2dがデータ「0」の低抵抗の状態(第1状態)への変換についても、同様に実施することができる。すなわち、不揮発ラッチ回路1aにおいて、第1接点N1に記憶されたデータ「0」をデータ「1」に書き換えることも、同様に実施することができる。その場合、書込み回路5による書込み電流の向きを逆にすれば良い。なお、上記の磁気抵抗素子への書き込み原理から、第1状態から同じ第1状態への上書き、及び、第2状態から同じ第2状態への上書きも同様に行うことが可能である。
また、図9の不揮発ラッチ回路1aにおいて、第1接点N1をインバータ回路3に配線4を介して接続するのではなく、第2接点N2をインバータ回路3に配線4を介して接続しても良い。その場合、例えば、高電位側には電源電圧VDDを接続し、低電圧側にはマイナス側に電圧を高めた電源電圧GBOOT(<0)を接続する。そして、ピン層21a〜ピン層21cの磁化を同じ向きの+z方向に固定し、ピン層21dの磁化をそれらと逆の向きの−z方向に固定する。この場合にも、図9の場合と同様の動作を行うことが可能である。このように構成することにより、インバータ回路3の両トランジスタを確実にオフにすることができ、特に、n型トランジスタをより確実にオフすることが出来る。その結果、インバータ回路3でのリーク電流(貫通電流)を更に極めて小さくすることができる。
また、図9の不揮発ラッチ回路1aにおいて、磁気抵抗素子2aと接地電圧GNDとの間に、図5Aに示すような二つの磁気抵抗素子を追加し、更に、高電位側には電源電圧VBOOT(>VDD)を接続し、低電圧側には電源電圧GBOOT(<0)を接続する構成としてもよい。その場合、新たに追加する二つの磁気抵抗素子のピン層はいずれも+z方向(磁気抵抗素子2aと同じ)とする。これにより、インバータ回路3のn型、p型いずれのトランジスタについてもより確実にオフすることが出来る。その結果、インバータ回路3でのリーク電流(貫通電流)を更に極めて小さくすることができる。
更に、第1実施形態及び第2実施形態において、磁気抵抗素子の高抵抗での抵抗値を極めて大きくした場合、高電位側から低電位側へのリーク電流を極めて小さくすることが出来る。従って、その場合、電源電圧VDD又はVBOOTと接地電圧GNDとの間にスイッチを設ける必要がなくなる。それにより、インバータ回路3を用いて第1接点N1の電圧をデータとしてラッチしなくても、そのデータを低消費電力で常時出力することが出来る。すなわち、ラッチ用のインバータ回路3を省略することが出来る。
本実施形態においても、第1実施形態と同様の効果を得ることが出来る。また、それに加えて、高電圧側の電源電圧をVBOOT(>GND)とし、磁気抵抗素子2c、2dを加えているので、設定データ「1」を格納した場合の第1接点N1の電圧を更に高くすることができる。それにより、次段のp型トランジスタのリーク電流を更に少なくすることができる。
[第3実施形態]
次に、本発明の第3実施形態に係る不揮発ロジック回路について説明する。図12は、本発明の第3実施形態に係る不揮発ロジック回路を示す回路ブロック図である。ここでは、不揮発ロジック回路の他の一つの形態として、上記第1実施形態や第2実施形態に係る不揮発ラッチ回路1、1aを用いたLUT回路41について説明する。LUT回路41は、例えば図1BのようなCLBに用いられるLUTであり、複数の設定用ラッチ1−i(iは1〜nの自然数、nは設定用ラッチの個数)と、スイッチ部8とを具備する。
設定用ラッチ1−iは、例えば、図4で示される不揮発ラッチ回路1や図9で示される不揮発ラッチ回路1aである。予め設定された設定データ(「1」又は「0」)を格納している。具体的な構成及び動作については、上記各実施形態に記載の通りである。ここでは、四つの設定用ラッチ1−1〜1−4を用いている。本実施形態における不揮発ラッチ回路1(図4:第1実施形態)や不揮発ラッチ回路1a(図9:第2実施形態)を用いているので、各設定用ラッチ1−iの磁気抵抗素子2a、2bや磁気抵抗素子2a、2b、2c、2dを書き換えることにより、その設定データを容易に変更することが出来る。ただし、設定用ラッチ1−iの数nは、この例に限定されるものではない。
スイッチ部8は、入力データに基づいて複数のスイッチをオン/オフする。そのオン/オフの組み合わせに基づいて、複数の設定用ラッチ1−iに格納されたデータの一つを選択して出力する。この図の例では、スイッチ部8は、複数のスイッチとして、p型のトランジスタTr3,Tr4,n型のトランジスタTr5〜Tr8を備える。トランジスタTr3、Tr6には入力データAが、トランジスタTr4,Tr8には入力データ/Aが、トランジスタTr5には入力データBが、トランジスタTr7には入力データ/Bが、それぞれそれらのゲートに入力される。スイッチ部8は、その入力データA、/A、B、/Bに基づいて、複数のトランジスタTr3〜Tr8をオン/オフして、四つの設定用ラッチ1−1〜1−4に格納されたデータの一つを選択して、出力データXとして出力する。ただし、スイッチ部8のスイッチの種類及び数は、この例に限定されるものではない。例えば、トランジスタを全てn型としてインバータなどを導入してスイッチ部8を同様に構成することが出来る。
次に、本発明の第3実施形態に係る不揮発ロジック回路としてのLUT回路の動作について説明する。ここでは、図12に示される構成のLUT回路41について説明する。入力データ(A、/A、B、/B)として、入力データ(0、1、0、1)が入力された場合、トランジスタTr3,Tr8,Tr7がオン、トランジスタTr4、Tr5,Tr6がオフになる。その結果、これらトランジスタTr3〜Tr8のオン/オフの組み合わせにより、設定ラッチ1−4に格納されたデータが出力データXとなる。入力データ(1、0、0、1)が入力された場合、トランジスタTr6,Tr4,Tr7がオン、トランジスタTr3,Tr8、Tr5がオフになる。その結果、これらトランジスタのオン/オフの組み合わせにより、設定ラッチ1−3に格納されたデータが出力データXとなる。入力データ(0、1、1、0)が入力された場合、トランジスタTr3,Tr8,Tr5がオン、トランジスタTr6、Tr4,Tr7がオフになる。その結果、これらトランジスタのオン/オフの組み合わせにより、設定ラッチ1−1に格納されたデータが出力データXとなる。入力データ(1、0、1、0)が入力された場合、トランジスタTr6,Tr4,Tr5がオン、トランジスタTr3、Tr8,Tr7がオフになる。その結果、これらトランジスタのオン/オフの組み合わせにより、設定ラッチ1−2に格納されたデータが出力データXとなる。
第1実施形態又は第2実施形態で説明された不揮発ラッチ回路を設定用ラッチとして用いているので、小面積のLUT回路を実現することができる。なお、ここでは、2入力のLUT回路について説明したが、本発明は更に多入力のLUT回路に対しても同様に適用可能である。
[第4実施形態]
次に、本発明の第4の実施形態に係る不揮発ロジック回路について説明する。図13は、本発明の第4の実施形態に係る不揮発ロジック回路を示す回路ブロック図である。ここでは、不揮発ロジック回路の他の一つの形態として、上記第1実施形態や第2実施形態に係る不揮発ラッチ回路1、1aを用いたセレクタ回路42について説明する。セレクタ回路42は、例えば図1BのようなCLBに用いられるセレクタであり、複数の設定用ラッチ1−j(jは1〜mの自然数、mは設定用ラッチの個数)と、スイッチ部9とを具備する。
設定用ラッチ1−jは、例えば、図4で示される不揮発ラッチ回路1や図9で示される不揮発ラッチ回路1aである。予め設定された設定データ(「1」又は「0」)を格納している。具体的な構成及び動作については、上記各実施形態に記載の通りである。ここでは、二つの設定用ラッチ1−1〜1−2を用いている。本実施形態における不揮発ラッチ回路1、1aを用いているので、各設定用ラッチ1−jの磁気抵抗素子2a、2b(図4:第1実施形態)や磁気抵抗素子2a、2b、2c、2d(図9:第2実施形態)を書き換えることにより、その設定データを容易に変更することが出来る。ただし、設定用ラッチ1−jの数mは、この例に限定されるものではない。
スイッチ部9は、設定データに基づいて複数のスイッチをオン/オフする。そのオン/オフの組み合わせに基づいて、複数の入力データの一つを選択して出力する。この図の例では、スイッチ部9は、複数のスイッチとして、n型のトランジスタTr9,Tr10を備える。トランジスタTr9のゲートには設定用ラッチ1−1が、トランジスタTr10のゲートには設定用ラッチ1−2がそれぞれ接続されている。そして、スイッチ部8は、それら設定用ラッチ1−1、1−2の設定データに基づいて、複数のトランジスタTr9、Tr10をオン/オフして、二つの入力データX、Yの一つを選択して、出力データAとして出力する。ただし、スイッチ部9のスイッチの種類及び数は、この例に限定されるものではない。
次に、本発明の第4実施形態に係る不揮発ロジック回路としてのセレクタ回路の動作について説明する。ここでは、図13で示す構成のセレクタ回路42について説明する。ここで、設定用ラッチ1−1が設定データとして「1」を、設定用ラッチ1−2が設定データとして「0」をそれぞれ格納している場合を考える。この場合、設定用ラッチ1−1、1−2の設定データにより、トランジスタTr9がオン、トランジスタTr10がオフである。このとき、入力データ(X、Y)として、入力データ(1、0)又は(1、1)が入力された場合、これらトランジスタTr9、Tr10のオン/オフの組み合わせにより、入力データX=1が出力データAとなる。入力データ(0、1)又は(0、0)が入力された場合、これらトランジスタTr9、Tr10のオン/オフの組み合わせにより、入力データX=0が出力データAとなる。
ただし、スイッチ部9の設定用ラッチ1−1、1−2の設定データの組み合わせは、この例に限定されるものではない。すなわち、設定用ラッチ1−1、1−2の設定データは、(1、0)だけでなく、(0、1)、(1、1)、(0、0)のいずれであってもよい。
第1実施形態又は第2実施形態で説明された不揮発ラッチ回路を設定用ラッチとして用いているので、小面積のセレクタ回路を実現することができる。なお、ここでは、2入力のセレクタ回路について説明したが、本発明は更に多入力のセレクタ回路に対しても同様に適用可能である。
[第5の実施形態]
次に、本発明の第5の実施形態に係る不揮発ロジック回路について説明する。図14は、本発明の第5実施形態に係る不揮発ロジック回路を示す回路ブロック図である。この不揮発ロジック回路としてのセレクタ回路43は、第4の実施形態(図13)に示すセレクタ回路42と基本的に同じである。すなわち、セレクタ回路43は、例えば図1BのようなCLBに用いられるセレクタであり、設定用ラッチ1−jと、スイッチ部9とを具備する。この図の例では、設定用ラッチ1−jとして用いる不揮発ロジック回路は、インバータ回路3を有していない。
設定用ラッチ1−jは、図9の不揮発ラッチ回路1aにおいて、第1接点N1に配線4を接続するのではなく、第2接点N2に配線4を接続する。磁気抵抗回路2の高電位側には電源電圧VDDを接続し、低電圧側にはマイナス側に電圧を高めた電源電圧GBOOT(<0)を接続する。そして、ピン層21a〜ピン層21cの磁化を同じ向きの+z方向に固定し、ピン層21dの磁化をそれらと逆の向きの−z方向に固定する。このように構成することにより、配線4にゲートを接続されたn型トランジスタをより確実にオフすることが出来る。その結果、そのn型トランジスタのリーク電流を著しく小さくすることができる。なお、この図において、設定用ラッチ1−jにおける書込み回路5については、その記載を省略している。
複数の磁気抵抗素子が第1電源(VDD)と第2電源(GBOOT)との電圧差を電圧分配することを考慮して、第2接点N2の電圧をスイッチ部9のn型トランジスタの閾値電圧よりも低くするように設定する。本実施形態では、高MR比の磁気抵抗素子を用いているので、少ない数の磁気抵抗素子(この図の例では4個)を用いてそれが容易に可能となる。
例えば、磁気抵抗素子2a〜2cの抵抗をR0、磁気抵抗素子2dの抵抗をR1とすると、第1接点N1からの出力電圧Voutは、
Vout=(VDD−GBOOT)×3・R0/(3・R0+R1)+GBOOT (1’’)
となる。したがって、第2接点N2に接続される次段のn型トランジスタの閾値電圧Vth−Nは、
Vout<GND+Vth−N (3)
を満たすように、磁気抵抗素子の抵抗R0、R1を設定する。一方、第2接点N2の次段にp型トランジスタが接続される場合には、閾値電圧Vth−Pは、
Vout>VDD−Vth−P (2)
を満たすように、磁気抵抗素子の抵抗R0、R1を設定することが好ましい。このような磁気抵抗素子を用いることで、スイッチ部9のn型トランジスタTr9、Tr10を確実にオフにすることができ、トランジスタTr9、Tr10でのリーク電流を極めて小さくすることができる。
この図の例では、磁気抵抗素子2a〜2cがデータ「0」を記憶してR0が低抵抗を有し、磁気抵抗素子2dがデータ「1」を記憶してR1が高抵抗を有している場合、電源電圧(VDD−GBOOT)はほとんど磁気抵抗素子2dに分配されるので、第2接点N2の電圧は極めて接地電圧GNDに近くなる。したがって、第2接点N2の電圧をn型トランジスタの閾値電圧よりも低くし、この場合には更に接地電圧GNDよりも低くすることができる。これにより、設定用ラッチ1−j(不揮発ラッチ回路)は、第2接点N2に、設定データ「0」を記憶することができる。
本実施形態の設定用ラッチ1−j(不揮発ラッチ回路)は、インバータ回路3を用いていない。すなわち、配線4の先をn型トランジスタであるスイッチ部9のトランジスタTr9、Tr10に直接接続している。これは、第2接点N2の電圧を接地電圧GNDよりも低くすることができるので、インバータ回路3で電圧振幅の調整を行う必要がないからである。
同様に考えると、スイッチ部9のトランジスタTr9、Tr10がp型トランジスタであって、図9の不揮発ラッチ回路1aを用いる場合、その不揮発ラッチ回路1aにおけるインバータ回路3を省略することが出来る。これは、第1接点N1の電圧を電源電圧VDDよりも高くすることができるので、インバータ回路3で電圧振幅の調整を行う必要がなくなるからである。
設定用ラッチ1−jに関するその他の構成、及びスイッチ部9については、第4の実施形態と同様であるのでその説明を省略する。
次に、本発明の第5の実施形態に係る不揮発ロジック回路としてのセレクタ回路の動作について説明する。まず、設定用ラッチ1−1、1−2の動作について説明する。ただし、設定用ラッチ1−1、1−2の動作は基本的に同じなので、設定用ラッチ1−1の動作について説明する。
図15は、本発明の第5の実施形態に係る不揮発ロジック回路の動作の一例を説明する波形図である。縦軸は電圧を示し、横軸は時刻を示す。“N1”は第1接点N1の電圧変化を示し、“WRITE”は第1スイッチTr1a、Tr1b及び第2スイッチTr2a、Tr2bのゲートに入力される書込み信号WRITEの電圧変化をそれぞれ示している。ただし、Vth−Pは配線4の先の次段のp型トランジスタの閾値電圧を示し、Vth−Nは配線4の先の次段のn型トランジスタの閾値をそれぞれ示している。
ここでは、設定用ラッチ1−1(不揮発ロジック回路1aの変形)において、磁気抵抗素子2a〜2cにデータ「1」が記憶されて高抵抗となり、磁気抵抗素子2dにデータ「0」が記憶されて低抵抗となっている状態を考える。すなわち、このとき、磁化記録層10a及び磁化記録層10bの磁化状態は、第1磁化状態MS1である(図7の<MS1>)。電源電圧VDDと電源電圧GBOOTとの間には、極めて高抵抗な磁気抵抗素子2a〜2cと低抵抗な磁気抵抗素子2d(直列接続)との電流経路を通り極めて微弱な電流が流れる。電源電圧VDDと電源電圧GBOOTとの差の電圧は、磁気抵抗素子2a〜2cと磁気抵抗素子2dとにより電圧分配され、磁気抵抗素子2a〜2cに大部分の電圧が印加されている。そして、第2接点N2の電圧は、VDDとVDD−Vth−Pとの範囲内になっている(時刻t=t0)。すなわち、設定用ラッチ1−1の第2接点N2にデータ「1」(Highレベルの電圧)が記憶されている。この図の例では、その電圧は、各磁気抵抗素子の低抵抗及び高抵抗の値(抵抗比)の設定値、及びGBOOTの設定値により、当該範囲内になるように設定することが出来る。
次に、書込み回路5が、第1スイッチTr1a、Tr1b及び第2スイッチTr2a、Tr2bのゲートに書込み信号WRITEを印加する(時刻t=t1〜t2)。それにより、第1スイッチTr1a、Tr1b及び第2スイッチTr2a、Tr2bがオンとなる。書込み回路5は、第1書き込み電流IW1aを第2電流端子32aから第1電流端子31aに流す。この場合、+z方向のスピン偏極電子が、第1磁化固定領域11aから磁化反転領域13aに供給される。スピントルク効果により、磁壁DWが駆動され、第1磁化固定領域11a側から第2磁化固定領域12a側に移動する。その結果、磁化反転領域13aの磁化方向が+z方向に反転し、磁化記録層10aは第2磁化状態MS2となる(図7の<MS2>)。それにより、磁気抵抗素子2a、2bにデータ「0」が記憶されて低抵抗となる。それと同時に、書込み回路5は、第1書き込み電流IW1bを第2電流端子32bから第1電流端子31bに流す。この場合、+z方向のスピン偏極電子が、第1磁化固定領域11bから磁化反転領域13bに供給される。スピントルク効果により、磁壁DWが駆動され、第1磁化固定領域11b側から第2磁化固定領域12b側に移動する。その結果、磁化反転領域13bの磁化方向が+z方向に反転し、磁化記録層10bは第2磁化状態MS2となる(図7の<MS2>)。それにより、磁気抵抗素子2cにデータ「0」が記憶されて低抵抗となり、磁気抵抗素子2dにデータ「1」が記憶されて高抵抗となる。その結果、電圧分配により、磁気抵抗素子2dに大部分の電圧が印加される。そして、第2接点N2の電圧は、GBOOTとGND+Vth−Nとの範囲内になる(時刻t=t3)。すなわち、設定用ラッチ1−1の第2接点N2にデータ「0」(Lowレベルの電圧)が記憶される。この場合も、その電圧は、各磁気抵抗素子の低抵抗及び高抵抗の値(抵抗比)の設定値、及びGBOOTの設定値により、当該電圧をその範囲内に、特に、GBOOTとGNDとの範囲内にすることができる。
以上のようにして、設定ラッチ1−1、1−2の設定データを書き込む(変更する)ことができる。
なお、上記の例では、磁気抵抗素子2a〜2cがデータ「1」の高抵抗、磁気抵抗素子2dがデータ「0」の低抵抗の状態(第1状態)から、磁気抵抗素子2a〜2cがデータ「0」の低抵抗、磁気抵抗素子2dがデータ「1」の高抵抗の状態(第2状態)への変換を示している。すなわち、設定ラッチにおいて、第2接点N2に記憶されたデータ「1」かデータ「0」に書き換えられている。しかし、既述のようにデータを逆に書き込む変換(設定ラッチの第2接点N2に記憶されたデータ「0」をデータ「1」へ書き換え)や、データを上書きすることについても同様に可能である。
設定ラッチ1−1、1−2の設定データに対応した、スイッチ部9の動作については、第4実施形態の通りであるので、その説明を省略する。
第1実施形態又は第2実施形態で説明された不揮発ラッチ回路とほぼ同じ設定用ラッチを用いているので、小面積のセレクタ回路を実現することができる。なお、ここでは、2入力のセレクタ回路について説明したが、本発明は更に多入力のセレクタ回路に対しても同様に適用可能である。
[第6実施形態]
次に、本発明の第6実施形態に係る不揮発ロジック回路について説明する。図16は、本発明の第6実施形態に係る不揮発ロジック回路を示す回路図である。この不揮発ロジック回路としてのLUT回路44は、第1実施形態(図4)に示す複数の不揮発ラッチ回路からの複数の出力をNAND演算して出力する回路である。ただし、不揮発ラッチ回路に関し、高圧側電源を入力データの論理に対応してオン/オフする点で、第1実施形態の不揮発ラッチ回路1と異なる。このLUT回路44は、例えば図1BのようなCLBに用いられるLUT回路であり、設定用ラッチ1−k(kは1〜qの自然数、qは設定用ラッチの個数)と、NAND回路7とを具備する。
設定用ラッチ1−kは、不揮発ラッチ回路1と、電源回路50を備えている。
不揮発ラッチ回路1は、第1実施形態(図4)の不揮発ラッチ回路1である。ただし、本実施形態は、その不揮発ラッチ回路1に限定されるものではなく、第2実施形態〜第5実施形態に説明された不揮発ラッチ回路又は設定用ラッチのいずれかを用いることも可能である。
電源回路50は、電源電圧VDDの代わりに、磁気抵抗素子2bの高電圧側に、入力データに対応した信号(Highレベル又はLowレベル)を供給する。電源回路50は、NAND回路51とインバータ回路52とを含む。NAND回路51は、複数の入力データの数に対応した入力数を有し、それら入力データを論理演算した結果を出力する。この図の例では、二つの入力データ(例示:A,B)に対して、NAND演算して、その結果を出力する。インバータ回路52は、NAND回路52からの出力を反転させる。したがって、電源回路50としてAND回路を用いることも可能である。なお、この図において、設定用ラッチ1−kにおける書込み回路5については、その記載を省略している。
各設定用ラッチ1−kへ供給される入力データは、相互に異なるものにする。この図の例では、設定用ラッチとして、四つの設定用ラッチ1−1〜1−4を用い、各電源回路50は2入力のNAND回路51が用いられている。そして、設定用ラッチ1−1の入力データは(A、B)、設定用ラッチ1−2の入力データは(/A、B)、設定用ラッチ1−3の入力データは(A、/B)、設定用ラッチ1−4の入力データは(/A、/B)である。
各設定用ラッチ1−kにおけるその他の構成は、第1実施形態の不揮発ラッチ回路1(図4)と同様であるのでその説明を省略する。
NAND回路7は、各設定用ラッチ1−kの出力の少なくとも一つがHighレベルの場合、Highレベルの出力データXを出力する。また、各設定用ラッチ1−kの出力のいずれもHighレベルの場合、Lowレベルの出力データXを出力する。NAND回路7は、所望の出力データXを出力可能とするように、他の論理演算を行う論理演算回路であってもよい。
次に、本発明の第6実施形態に係る不揮発ロジック回路としてのLUT回路の動作について説明する。ここでは、図16で示す構成のLUT回路44について説明する。
設定用ラッチ1−1〜1−4は、第1実施形態における不揮発ラッチ回路の動作により、磁気抵抗素子2a、2bに所定の設定データを予め書き込まれている。ここでは、設定用ラッチ1−1、1−2において、磁気抵抗素子2aにデータ「0」が記憶されて低抵抗、磁気抵抗素子2bにデータ「1」が記憶されて高抵抗とする。また、設定用ラッチ1−3、1−4において、磁気抵抗素子2aにデータ「1」が記憶されて高抵抗、磁気抵抗素子2bにデータ「0」が記憶されて低抵抗とする。なお、これらの設定データは一例であり、既述のように他の設定データに変更可能である。
ここで、入力データ(A、B)が(0、0)の場合を考える。
設定用ラッチ1−1(の電源回路50)には、入力データ(A、B)=(0、0)が入力され、電源回路50の出力は「0」となる。したがって、第1接点N1の電圧はLowレベルになるので、インバータ回路3の出力は「1」となる。
そのとき、設定用ラッチ1−2(の電源回路50)には、入力データ(/A、B)=(1、0)が入力され、電源回路50の出力は「0」となる。したがって、第1接点N1の電圧はLowレベルになるので、インバータ回路3の出力は「1」となる。
そのとき、設定用ラッチ1−3(の電源回路50)には、入力データ(A、/B)=(0、1)が入力され、電源回路50の出力は「0」となる。したがって、第1接点N1の電圧はLowレベルになるので、インバータ回路3の出力は「1」となる。
そのとき、設定用ラッチ1−4(の電源回路50)には、入力データ(/A、/B)=(1、1)が入力され、電源回路50の出力は「1」となる。このとき、磁気抵抗素子2aにデータ「1」が記憶されて高抵抗、磁気抵抗素子2bにデータ「0」が記憶されて低抵抗なので、第1接点N1の電圧はHighレベルになる。それにより、インバータ回路3の出力は「0」となる。
NAND回路7は、設定用ラッチ1−1〜1−4より、「1」、「1」、「1」、「0」を入力される。そして、そのNAND演算した結果である「1」を出力データXとして出力する。
同様にすれば、入力データ(A、B)が(1、0)の場合、設定用ラッチ1−1〜1−4より、「1」、「1」、「0」、「1」が出力される。それにより、NAND回路7は、そのNAND演算した結果である「1」を出力データXとして出力する。
同様にすれば、入力データ(A、B)が(0、1)の場合、設定用ラッチ1−1〜1−4より、「1」、「1」、「1」、「1」が出力される。それにより、NAND回路7は、そのNAND演算した結果である「0」を出力データXとして出力する。
同様にすれば、入力データ(A、B)が(1、1)の場合、設定用ラッチ1−1〜1−4より、「1」、「1」、「1」、「1」が出力される。それにより、NAND回路7は、そのNAND演算した結果である「0」を出力データXとして出力する。
上記のLUT回路44の動作の例では、設定用ラッチ1−1、1−2において、磁気抵抗素子2aがデータ「0」の低抵抗、磁気抵抗素子2bがデータ「1」の高抵抗であり、設定用ラッチ1−3、1−4において、磁気抵抗素子2aがデータ「1」の高抵抗、磁気抵抗素子2bがデータ「0」の低抵抗の場合を説明した。すなわち、設定用ラッチ1−1、1−2、1−3、1−4のそれぞれについて、磁気抵抗素子2a、2bの設定データが[(0、1)、(0、1)、(1、0)、(1、0)]の場合である。ただし、設定用ラッチ1−1〜1−4における各磁気抵抗素子を他の設定データに変更した場合にも、同様に実施することができる。
ここで、設定用ラッチ1−1、1−2、1−3、1−4における磁気抵抗素子2a、2bの他の設定データは、例えば[(0、1)、(0、1)、(0、1)、(0、1)]の組や、[(0、1)、(0、1)、(0、1)、(1、0)]の組や、[(0、1)、(0、1)、(1、0)、(0、1)]の組や、[(0、1)、(1、0)、(0、1)、(0、1)]の組や、[(1、0)、(0、1)、(0、1)、(0、1)]の組や、[(0、1)、(0、1)、(1、0)、(1、0)]の組や、[(0、1)、(1、0)、(0、1)、(1、0)]の組や、[(1、0)、(0、1)、(0、1)、(1、0)]の組や、[(1、0)、(0、1)、(1、0)、(0、1)]の組や、[(1、0)、(1、0)、(0、1)、(0、1)]の組や、[(1、0)、(1、0)、(1、0)、(0、1)]の組や、[(1、0)、(1、0)、(0、1)、(1、0)]の組や、[(1、0)、(0、1)、(1、0)、(1、0)]の組や、[(0、1)、(1、0)、(1、0)、(1、0)]の組や、[(1、0)、(1、0)、(1、0)、(1、0)]の組である。
第1実施形態又は第2実施形態で説明された不揮発ラッチ回路とほぼ同じ設定用ラッチを用いているので、小面積のLUT回路を実現することができる。なお、ここでは、2入力のLUT回路について説明したが、本発明は更に多入力のセレクタ回路に対しても同様に適用可能である。
なお、上記不揮発ラッチ回路や不揮発ラッチ回路を用いたセレクタ回路やLUT回路は、不揮発ロジック回路と見ることができる。
本発明は上記各実施形態に限定されず、本発明の技術思想の範囲内において、各実施形態は適宜変形又は変更され得ることは明らかである。また、各実施形態に用いられる技術は、技術的矛盾の発生しない限り互いに利用することが可能である。
本出願は、2009年1月28日に出願された日本国特許出願2009−017178を基礎とする優先権を主張し、その開示の全てをここに取り込む。