【0008】
以下、本発明の実施形態を図面に基づいて説明する。
図3は、以下実施形態で説明する既存の不揮発論理ゲートに対して障害耐性を高めた不揮発論理ゲートの機能ブロック図である。このように不揮発性論理ゲート素子は、不揮発抵抗素子で構成された抵抗ネットワークを記憶構造として使用すると共に、記憶構造の耐性を発揮させる値を維持するリファレンス抵抗ネットワークと、個々の不揮発抵抗素子の値を書き換える書き込み部と、記憶構造に保持される論理値を利用する論理回路部とを含む。以下、回路図を用いて詳説する。
(第1の実施形態)
図4は、第1の実施形態における既存の不揮発論理ゲートに対して障害耐性を高めた不揮発論理ゲート1の回路図である。
不揮発論理ゲート1は、図示するように不揮発抵抗ネットワーク集合体11、書き込み部21、NMOS論理回路31、貫通電流制御回路41、及びセンス回路51を含み成るメモリ素子とロジック素子が一体となった集積回路の一部である。
本実施形態におけるNMOS論理回路31、貫通電流制御回路41、及びセンス回路51は、上記説明した特許文献1に記載された回路構成を使用できる。
不揮発抵抗ネットワーク集合体11は、3つの不揮発抵抗素子R1、R2、R3を直列接続した第1の不揮発抵抗ネットワークと、この3つの不揮発抵抗素子R1、R2、R3の抵抗値に対して参照抵抗となるRrefとなるよう値を取る第2の不揮発抵抗ネットワークとから成る。抵抗値Rrefは以下に記載する。
不揮発抵抗素子R1、R2、R3は、直列に接続され、一端がNMOS論理回路に接続され、他端は貫通電流制御回路に接続されている。この不揮発抵抗素子を3つ接続した抵抗ネットワークを1つの記憶構造として用いる。また、第2の不揮発抵抗ネットワークは、その抵抗値がRrefとなるように構成され、一端がNMOS論理回路31に接続され、他端は貫通電流制御回路41に接続されている。
ここで、R1、R2、R3の合成抵抗をRc(R1、R2、R3)と定義する。合成抵抗とは、この場合は、R1、R2、R3の各々を直列接続したときの端子間の抵抗である。本実施形態の不揮発論理ゲート1は、合成抵抗Rc(R1、R2、R3)とRrefを比較して論理演算を行う。ここで、Rref(第2の不揮発抵抗ネットワーク)は複数の不揮発性抵抗素子を組み合わせた合成抵抗によって実現してもよい。また、トランジスタやポリ抵抗など他の抵抗素子で実現してもよい。
書き込み部21は、不揮発抵抗素子R1、R2、R3の個々のデータを書き換える機能を備える。また、必要に応じてRrefを構成する不揮発抵抗素子の値を制御する機能を備える。
貫通電流制御回路41とNMOS論理回路31は、各々、
図2に示す回路を用いることができる。
センス回路51は、クロック信号が与えられるとともに、出力端子Dout、/Doutを備える。センス回路51の一例を
図5の(a)と(b)に示す。
図5(a)は
図1の不揮発論理ゲートのセンス回路と同じである。
図5(b)は、
図5(a)と比較して、2つのNMOSトランジスタN11、N12を追加し、PMOSトランジスタP1、P2、NMOSトランジスタN11、N12を用いてラッチを形成したものである。
ここでは、NMOS論理回路31として
図2に示すSUM回路、貫通電流制御回路41として
図2(a)に示す回路、および、センス回路51として
図5(a)に示す回路を例に説明する。
図6は、第1の実施形態にかかわる個々の不揮発抵抗素子の抵抗値と、それらで表現される不揮発論理ゲートで用いる記憶データとの関係を示す。
図6の第1列に通し番号を示す。第2列から第4列までに、不揮発抵抗素子R1、R2、R3の抵抗値を示す。第5列に合成抵抗値Rc(R1,R2,R3)を示す。第6列にそれら合成抵抗値とリファレンス抵抗値Rrefの差を示す。第7列に各不揮発抵抗素子の状態に対応して定まる不揮発論理ゲートの記憶データDを示す。第8列に、不揮発抵抗素子R1、R2、R3の組み合わせから推定される、記憶構造として誤ったデータを記憶する不揮発抵抗素子の最小の数を示す。
ここで、
図6に記載されている記号について説明する。不揮発抵抗素子の抵抗値として、RLは低抵抗状態での抵抗値、RHは高抵抗状態での抵抗値を表す。それらの抵抗値の差dRは式1で定義される。
RH−RL=dR ・・・(式1)
また、Rrefは、3・RLと3・RHの間の値である。不揮発抵抗素子数をNとして表すとRref=N・RLとN・RHの間となる。より望ましい値は、式2で定義できる。
Rref=3・RL+1.5・dR ・・・(式2−1)
Rref=N・RL+(N・dR/2)・・・(式2−2)
さらに、第7列中の0は論理演算に用いるデータ「0」、1はデータ「1」をあらわす。即ち、記憶構造から読み出されることになる論理値を示す。
本実施形態の不揮発論理ゲートは、データを書き込む際、データが「0」の場合は番号1の行のR1、R2、R3の抵抗値、データが「1」の場合は番号8の行のR1、R2、R3の抵抗値を取るように書き込み部21を制御する。
本実施形態の不揮発論理ゲート1は、NMOS論理回路31による論理演算を行なう際、合成抵抗Rc(R1,R2,R3)とリファレンス抵抗値Rrefを比較し、それらの差Rc(R1,R2,R3)−Rrefが負の場合(番号1、2、3、5)は、データ「0」として機能し、正の場合(番号4、6、7、8)は、データ「1」として機能する。この際、上記のように書き込み部21が動作することで、記憶構造としての障害耐性を発揮する。
図6の一覧から導き出せるように、
図6の第2列から第4列までと第7列を参照すると、誤った抵抗値を記憶している不揮発抵抗素子の数が0個又は1個の場合でも、番号1と番号8で示すように各不揮発抵抗素子のデータを書き換えることによって、データDを論理演算に利用する正常な値として用いる信頼性を確保できている。
例えば、データ「0」を書き込むことを意図させて、
図6の番号1の行のR1、R2、R3の抵抗値の組み合わせ(R1、R2、R3が全てRL)を書き込もうとしたところ、何らかの理由により書き込みエラーが発生して、R3のデータがRLではなく、誤ってRHになってしまったとする。書き込みエラー発生後の抵抗状態は番号2の行のR1、R2、R3の抵抗値となる。このときの合成抵抗の差(第6列参照)は、エラーがない場合(−1.5dR)に比べ小さくなる(−0.5dR)ものの負であり続けている。このため、正常にデータ「0」として論理演算に利用できる。
同様に、R1のデータがRLではなく誤ってRHを書き込んだ場合(
図6の番号5)や、R2のデータがRLではなく誤ってRHを書き込んだ場合(
図6の番号3)でも、正常に動作することがわかる。
すなわち、本実施形態の不揮発論理ゲート1のメモリ構造は、R1、R2、R3の内の1個のデータに誤りが発生してもデータ「0」を正常に出力する。
次に、データ「1」を書き込んだ場合について述べる。データ「1」を書き込むことを意図させて、番号8の行のR1、R2、R3の抵抗値の組み合わせ(R1、R2、R3が全てRL)を書き込もうとしたところ、何らかの理由により書き込みエラーが発生して、R3のデータがRHではなく、誤ってRLになってしまったとする。ソフトエラー発生後の抵抗状態は番号7の行のR1、R2、R3の抵抗値となる。このときの合成抵抗の差(第6列参照)は、エラーがない場合(1.5dR)に比べ小さくなる(0.5dR)ものの正であり続けている。このため、正常にデータ「1」として論理演算に利用できる。
同様に、R1のデータがRHではなく誤ってRLを書き込んだ場合(
図6の番号4)や、R2のデータがRHではなく誤ってRLを書き込んだ場合(
図6の番号6)でも、正常に動作することがわかる。
すなわち、本実施形態の不揮発論理ゲート1のメモリ構造は、R1、R2、R3の内の1個のデータに誤りが発生してもデータ「1」を正常に出力する。
なお、本構造でデータの誤りが2個以上の場合は、誤ってデータを判別してしまい誤動作してしまう。
図6を参照して具体的な例を用いて説明する。例えば、データ「0」を書き込むことを意図して、番号1の行のR1、R2、R3の抵抗値の組み合わせを書き込もうとしたところ、書き込みエラーが発生し、R2とR3のデータがRLではなく、RHを書き込んでしまったとする。書き込みエラー発生後の抵抗状態は番号4の行のR1、R2、R3の抵抗値となる。このときの合成抵抗の差は正になるため、データ「1」として判別されて誤動作の要因となる。しかしながら、0個のエラーが発生する確率および1個のエラーが発生する確率に比べて、2個以上のエラーが発生する確率は大幅に低くなる。
次に本実施形態の不揮発論理ゲートが誤動作する確率Pgateについて説明する。ここでは、ソフトエラーとして書き込みソフトエラーを例にとって説明する。1個の不揮発性抵抗素子の書き込みソフトエラー発生率をPとする。リファレンス抵抗は上記式2にエラーなく設定されているものとする。この条件下で3つの不揮発抵抗素子を利用した本実施形態の不揮発論理ゲートの誤動作する確率Pgateは下記式3−1で表される。
Pgate=3・(P^2)・(1−P)+P^3 ・・・(式3−1)
Pが1より十分小さい場合、Pgateはおおよそ3・P^2に比例する。
一方、特許文献1に記載されている回路構成のように1つの不揮発抵抗素子で1ビットのデータを記憶して、リファレンス抵抗と比較することで論理演算を行う不揮発論理ゲートの場合のPgateは、Pに比例する。
したがって、本実施形態の不揮発論理ゲートが誤動作する確率は十分に小さい値と考えることができる。
上記のように、本実施形態の不揮発抵抗ネットワーク集合体11、及び、それを用いた不揮発論理ゲート1は、個々の記憶素子(不揮発抵抗素子)のデータに誤りが発生した場合の誤動作確率を、大幅に低減できる。
また、障害耐性を同様の構成要素(構造)で実現でき、不揮発論理ゲートの回路面積の増加や消費電力の増加を抑えることができる。
なお、本実施形態の第1の不揮発抵抗ネットワークは、3つの不揮発記憶素子から構成されていたが、不揮発記憶素子の数は3つに限らず、3つ以上のN個の不揮発抵抗素子を利用しても良い。抵抗値の差0.5・dRを判別できると仮定した場合、Nが奇数の場合、誤ったデータを記憶する不揮発記憶素子の数が、(N−1)/2個以下であるならば正常に動作できる。Nが偶数の場合、誤ったデータを記憶する不揮発記憶素子の数が、(N−2)/2個以下であるならば正常に動作できる。
また、本実施形態の第1の不揮発抵抗ネットワークは、偶数個の不揮発記憶素子から構成されるより、奇数個の不揮発記憶素子から構成されていたほうが望ましい。ここで、本実施形態の不揮発論理ゲートが正常に動作できる条件を満たす、誤ったデータを記憶する不揮発記憶素子の数の最大数を、誤りの許容数とする。抵抗値の差0.5・dRを判別できると仮定し、かつ、Nを偶数として、誤りの許容数は、N個の不揮発記憶素子から構成された場合と、N−1個の奇数個の不揮発記憶素子から構成された場合とで同じ数(N−2)/2である。したがって、ある誤りの許容数を満たす、最小の不揮発記憶素子の数は、奇数である。
不揮発記憶素子の数が少ないことは、下記の2つの観点から望ましい。
第1に、不揮発抵抗ネットワークを構成する、不揮発記憶素子の数が少ないことは、不揮発論理ゲートの誤動作する確率Pgateを下げることに寄与する。たとえば、本実施形態の不揮発抵抗ネットワークが3つの不揮発記憶素子から構成された場合と、4つの不揮発抵抗素子から構成された場合を比較する。4つの不揮発抵抗素子から構成された場合、不揮発論理ゲートの誤動作する確率Pgateは下記式3−2で表される。
Pgate=6・(P^2)・((1−P)^2)+4・(P^3)・(1−P)+(P^4) ・・・(式3−2)
Pが1より十分小さい場合、Pgateはおおよそ6・P^2に比例する。式3−1と式3−2を比較すると、不揮発抵抗ネットワークが3つの不揮発抵抗素子から構成された場合のほうが、4つの不揮発抵抗素子から構成された場合より、不揮発論理ゲートの誤動作する確率を低減できることが分かる。
第2に、不揮発抵抗ネットワークを構成する、不揮発記憶素子の数が少ないことは、不揮発論理ゲートの回路面積の増加を抑えることができる。
また、本実施形態の不揮発抵抗ネットワークは、不揮発記憶素子が直列に接続された場合について説明した。不揮発記憶素子の接続方法は、直列以外に、並列、直並列を用いることも可能である。
(第2の実施形態)
図7に、第2の実施形態に係る不揮発抵抗ネットワーク集合体12、及びそれを用いた障害耐性の高い不揮発論理ゲート2の回路図を示す。
本実施形態は、不揮発抵抗ネットワーク集合体12が、複数の不揮発抵抗ネットワークから構成されている。本実施形態の不揮発論理ゲート2は、2入力ルックアップテーブルとして機能する。本実施形態の不揮発抵抗ネットワーク集合体12を構成する、第1の不揮発抵抗ネットワークは3つの不揮発抵抗素子R11、R12、R13を、第2の不揮発抵抗ネットワークは3つの不揮発抵抗素子R21、R22、R23を、第3の不揮発抵抗ネットワークは3つの不揮発抵抗素子R31、R32、R33を、第4の不揮発抵抗ネットワークは3つの不揮発抵抗素子R41、R42、R43を含む。第5の不揮発抵抗ネットワークはその抵抗値がRrefとなるように構成される。即ち、リファレンス抵抗ネットワークたる第5の不揮発抵抗ネットワークを他の不揮発抵抗ネットワークと同様に構成している。
個々の不揮発抵抗ネットワークをnで示すと、それぞれの不揮発抵抗素子Rn1、Rn2、Rn3は直列に接続され、一端がNMOS論理回路に接続され、他端は貫通電流制御回路に接続されている。なお、本実施形態では同一の不揮発抵抗素子で構成する。この場合、全ての記憶構造として利用する不揮発抵抗ネットワークのRn1、Rn2、Rn3による合成抵抗をRc(Rn1、Rn2、Rn3)と定義できる。また、第5の不揮発抵抗ネットワークは、その抵抗値がRrefとなるように構成され、一端がNMOS論理回路に接続され、他端は貫通電流制御回路に接続されている。本実施形態の不揮発論理ゲート2は、それぞれの系統の合成抵抗Rc(Rn1、Rn2、Rn3)とRrefを比較して論理演算を行う。尚、リファレンスの抵抗値Rrefは第1の実施形態と同様に、式2で定義される。
書き込み部22は、不揮発抵抗素子Rn1、Rn2、Rn3のデータを書き換える機能を備える。書き込み部22は、第1の実施形態の書き込み部21と同様に、あるnに対して、Rn1、Rn2、Rn3の3つ全てが高抵抗状態の抵抗値RHもしくは低抵抗状態の抵抗値RLとなるようにデータを書き込む。
NMOS論理回路32は、2入力ルックアップテーブルとして機能できるよう構成されている。図示されたNMOS論理回路32は、10個のNMOSトランジスタN21、N22、N22、N23、N24、N25、N26、N27、N28、N29、N30から成り、データ入力信号として、それぞれ相補の入力信号A、/A、B、/BがNMOSトランジスタN21〜N30のゲートにそれぞれ入力される。NMOS論理回路32では各入力信号に依存して電流パスが形成される。センス回路52の入力端子のうちの一方は、第1から第4の不揮発抵抗ネットワークのうちの一つの不揮発抵抗ネットワークに電気的に接続され、他方は、第5の不揮発抵抗ネットワークに電気的に接続される。この2つの電流パスに流れる電流差を利用して、データ出力Dout、/Doutとなる出力電圧、すなわち論理演算結果(出力結果)が決定される。したがって、2入力ルックアップテーブルとして実現したい真理値表の出力の値を、入力A、Bで選択される不揮発抵抗素子へあらかじめ設定しておけば、2入力ルックアップテーブルとして機能する。
センス回路52は、第1の実施形態と同様の回路を利用できる。また、貫通電流制御回路42は、図示した回路に変えて、第1の実施形態と同様の回路も利用できる。
本実施形態の不揮発論理ゲート2は、第1の実施形態と異なり、複数の不揮発抵抗ネットワークから構成されている。しかしながら、リファレンス(第5)の不揮発抵抗ネットワークは第1の実施形態同様に、1つの不揮発抵抗ネットワークがあればよいため、回路面積の増加を抑えることができる。なお、個々に設けることも可能である。
上記のように、本実施形態の複数の不揮発抵抗ネットワークを備えた不揮発抵抗ネットワーク集合体12、及び、それを用いた不揮発論理ゲート2は、その回路面積の増加を抑えつつ、個々の記憶素子(不揮発抵抗素子)のデータに誤りが発生した場合の誤動作確率を大幅に低減できる。
(第3の実施形態)
図8に、第3の実施形態に係る不揮発抵抗ネットワーク集合体13、及び、それを用いた障害耐性の高い不揮発論理ゲート3の回路図を示す。本実施形態の不揮発抵抗ネットワーク集合体13を構成する、第1の不揮発抵抗ネットワークは3つの不揮発抵抗素子R1、R2、R3を含む。第2の不揮発抵抗ネットワークは、その抵抗値がRrefとなるように構成される。
不揮発抵抗素子R1、R2、R3は、直列に接続され、一端がインバータ回路33の入力端子に接続され、他端はGnd電圧に接地されている。第2の不揮発抵抗ネットワークは、その抵抗値がRrefとなるように構成され、一端がインバータ回路33の入力端子に接続され、他端はACT信号に接続されている。ここで、R1、R2、R3の合成抵抗をRc(R1、R2、R3)と定義する。合成抵抗は、この場合、R1、R2、R3の各々を直列接続したときの端子間の抵抗である。
第1の不揮発抵抗ネットワークは、データが「0」の書き込み時、R1、R2、R3はすべて低抵抗状態の抵抗値RLになるように書き込み部33によって値を管理される。また、第1の不揮発抵抗ネットワークは、データが「1」の書き込み時、R1、R2、R3はすべて高抵抗状態のRHになるように管理される。本実施形態の不揮発論理ゲート3は、合成抵抗Rc(R1、R2、R3)とRrefを比較して値を読み出し、論理演算を行う。
インバータ回路33は、その閾値電圧Vthより高い電圧が入力されるとデータ「0」を、低い電圧が入力されるとデータ「1」を出力するため、論理回路の機能と共にセンス回路としても機能する。ACT端子に「0」データとしてのGnd電圧が与えられた場合は、インバータ回路33の入力電圧は、Gnd電圧であり、その出力Doutはデータ「1」が出力される。他方、ACT端子に「1」データとしての電源電圧Vddが与えられた場合、インバータ回路33の入力電圧Vinは、次の式4で表される。
Vin=Rc(R1、R2、R3)/(Rc(R1、R2、R3)+Rref)・Vdd ・・・(式4)
このVinと閾値であるVthとが比較され、出力Doutが決定される。
Vinとしては、次の電圧が考えられる。
まず、(3・RL)/(3・RL+Rref)・Vddはデータ「0」とする際のインバータ回路33への入力電圧である。
また、(3・RH)/(3・RH+Rref)・Vddはデータ「1」とする際のインバータ回路33への入力電圧である。
また、(2・RL+RH)/((2・RL+RH)+Rref)・Vddは1つの不揮発抵抗素子が誤ったデータを有するときのデータ「0」の入力電圧である。
また、(RL+2・RH)/((RL+2・RH)+Rref)・Vddは1つの不揮発抵抗素子が誤ったデータを有するときのデータ「1」の入力電圧である。
これらの関係により得られる知見から、次の式のように閾値Vthを設定できれば、1つの不揮発抵抗素子のデータに誤りが発生しても、正常に動作することを担保できる。
(3・RL)/(3・RL+Rref)・Vdd<(2・RL+RH)/((2・RL+RH)+Rref)・Vdd<Vth<(RL+2・RH)/((RL+2・RH)+Rref)・Vdd<(3・RH)/(3・RH+Rref)・Vdd ・・・(式5)
上記式5を充たす閾値Vthは、インバータ回路33のNMOSとPMOSのトランジスタのサイズを変更することで所要に設計することができる。
また、不揮発抵抗素子の低抵抗状態の抵抗値RLと高抵抗状態の抵抗値RHとリファレンス抵抗Rrefはトンネル膜の膜厚や大きさによって設計でき、上記式5の条件を満たすことができる。
本実施形態の不揮発論理ゲートは、直列接続した不揮発抵抗ネットワークを利用することで、読み出し時の電流パスを1つにでき、より低消費電力で動作できることが期待される。
上記のように、本実施形態の直列に接続された不揮発抵抗ネットワークを備えた不揮発抵抗ネットワーク集合体13、及び、それを用いた不揮発論理ゲート3は、個々の記憶素子(不揮発抵抗素子)のデータに誤りが発生した場合の誤動作する確率を、大幅に低減できる。
(第4の実施形態)
図9は、第4の実施形態に係る不揮発抵抗ネットワーク集合体14、および、それを用いた障害耐性の高い不揮発論理ゲート4の回路図である。本実施形態の不揮発論理ゲート4は、不揮発抵抗素子の具体的な書き込み部24として、不揮発抵抗素子のスピントルク効果を用いる。また、書き込み部24として、NMOSトランジスタN13、N14、N35、N36、N37、N38とANDゲートと相補のデータ入力信号WD、/WDと書き込みイネーブル信号WE、/WEを含む。
本実施形態の不揮発論理ゲート4の書き込み部24の接続関係について説明する。第1の不揮発抵抗ネットワークを構成する不揮発抵抗素子R1、R2、R3は直列に接続され、その一端はNMOSトランジスタN13と、N35に接続され、他端はNMOSトランジスタN14とN37に接続されている。抵抗値Rrefを有する第2の不揮発抵抗ネットワークの一端は、NMOSトランジスタN36に接続され、その他端はNMOSトランジスタN38に接続されている。
NMOSトランジスタN13の一端は書き込みデータWDに接続され、他端は不揮発抵抗素子R1に接続され、ゲートは書き込みイネーブル信号WEに接続されている。NMOSトランジスタN14の一端は書き込みデータ/WDに接続され、他端は不揮発抵抗素子R3に接続され、ゲートは書き込みイネーブル信号WEに接続されている。
NMOSトランジスタN35のドレインはNMOS論理回路34に接続され、ソースは不揮発抵抗素子R1に接続され、ゲートは着込みディスエーブル信号/WEとクロックCLKを入力に有するANDゲートの出力に接続されている。NMOSトランジスタN36のドレインはNMOS論理回路34に接続され、ソースは抵抗値Rrefを有する第2の不揮発抵抗ネットワークに接続され、ゲートは上記ANDゲートの出力に接続されている。
NMOSトランジスタN37のドレインは不揮発抵抗素子R3に接続され、ソースは接地し、ゲートは書き込みディスエーブル信号/WEに接続されている。NMOSトランジスタN38のドレインは抵抗値Rrefを有する第2の不揮発抵抗ネットワークに接続され、ソースは接地し、ゲートは書き込みディスエーブル信号/WEに接続されている。
本実施形態の不揮発論理ゲート4ではセンス回路54は
図5(b)の回路を利用している。また、NMOS論理回路34は
図2の回路を採用する。
図10は本実施形態の第1の不揮発抵抗ネットワーク近傍の断面図である。
図10には、ANDゲート、NMOSトランジスタN13、N14、N35、N37、不揮発抵抗素子R1、R2、R3が示されている。
図11は本実施形態の第1の不揮発抵抗ネットワーク近傍の平面図であり、不揮発抵抗素子と第1、第2のメタル層を示す。
不揮発抵抗素子R1、R2、R3は、フリー層と絶縁層とリファレンス層を含む。構造の一例としては、フリー層とリファレンス層は垂直磁気異方性を有する磁性薄膜を用いる。フリー層とリファレンス層は面内磁気異方性を有する磁性薄膜であっても良い。フリー層とリファレンス層の具体的な材料は、Fe、Co、Niのうちから選択される少なくとも一つの材料を含むことが望ましい。また、その膜厚は1nm以上20nm以下であることが望ましい。
図10を参照して、本実施形態の不揮発論理ゲート4の断面構造について説明する。断面構造は、基板に近い層から、CMOS回路を形成するトランジスタ層、不揮発抵抗素子R1、R2、R3を成す、第1のメタル層、リファレンス層、絶縁層、フリー層、第2のメタル層を含む。不揮発抵抗素子R1、R2、R3は、基板に近い層から順にフリー層、絶縁層、リファレンス層の順に積層されて記憶構造となっていても良い。書き込み部24による書き込みはスピントルク効果を利用する。フリー層の磁化は書き込み電流Iwの流れる向きによって、Z方向または−Z方向に向けることができる。
本実施形態の不揮発論理ゲートの書き込み電流Iwは、NMOSトランジスタN13とN14を介して、直列に接続された不揮発抵抗素子R1、R2、R3を流れる。この書き込み電流Iwの向きに応じて、フリー層の磁化の向きはZ方向または−Z方向に向けることができる。読み出し電流Isは、センス回路54及びNMOS論理回路34、NMOSトランジスタN35、3つの不揮発抵抗素子R1、R2、R3、NMOSトランジスタN37を順に介してグラウンドに流れる。
次に、
図11を参照して、本実施形態の第1の不揮発抵抗ネットワークの平面構造について説明する。不揮発抵抗素子R1、R2、R3は電気的に直列に接続される。不揮発抵抗素子R1、R2、R3の平面形状は正方形で示しているが、これに限られず他の形状を取ってもよい。例えば、面内磁気異方性を有する磁性薄膜の場合には、長方形の長手方向に磁化の容易軸を有するように不揮発抵抗素子の平面形状を設計しても良い。
本実施形態の不揮発論理ゲート4は、障害耐性を高めるために不揮発抵抗ネットワークを3つの不揮発抵抗素子により構成している。これらの接続した不揮発抵抗素子をシリアルに経由する書き込み電流を供給し、上記複数の不揮発抵抗素子を同時に同一の電流により書き込むことを特徴とするため、書き込み回路の追加がなく、追加回路面積を小さく抑えられる。また、同時に消費電力も低く抑えられる。また、上記不揮発抵抗素子はCMOS回路の上に積層されるため、回路面積の増加を抑えることができる。
このように、本実施形態の不揮発抵抗ネットワーク集合体14、および、それを用いた不揮発論理ゲート4は、回路の面積増加や消費電力増加を抑えつつ、障害耐性を高められる。
(第5の実施形態)
図12は第5の実施形態に係る不揮発抵抗ネットワーク集合体15、および、それを用いた障害耐性の高い不揮発論理ゲート5の回路図である。本実施形態の不揮発論理ゲート5は、不揮発抵抗素子の具体的な書き込み部25として、磁壁移動素子DW1、DW2、DW3を用いる。また、第1の不揮発抵抗ネットワークを構成する不揮発抵抗素子R1、R2、R3としてセンス素子(:磁気抵抗素子)を用いる。第2の不揮発抵抗ネットワークは、その抵抗値がRrefとなるように構成される。
より詳細には、NMOSトランジスタN13、N14と磁壁移動素子DW1、DW2、DW3と相補のデータ入力信号WD、/WDと書き込みイネーブル信号WEを含む。各磁壁移動素子は、漏洩磁界を通じて、各センス素子の抵抗に影響を及ぼす。
本実施形態の書き込み部25の接続関係について説明する。磁壁移動素子DW1、DW2、DW3は直列に接続され、その一端はNMOSトランジスタN13に、その他端はNMOSトランジスタN14に接続されている。NMOSトランジスタN13は書き込みデータ端子WDに接続され、NMOSトランジスタN14は書き込みデータ端子/WDに接続されている。NMOSトランジスタN13、N14のゲートは書き込みイネーブル信号WEに接続されている。
センス回路55は
図5(b)、貫通電流制御回路45は
図2(a)を利用している。また、NMOS論理回路35は
図2の回路を採用する。
図13は本実施形態の第1の不揮発抵抗ネットワーク近傍の断面図であり、NMOSトランジスタN13、N14、磁壁移動素子DW1、DW2、DW3、不揮発抵抗素子R1、R2、R3、貫通電流制御回路45のNMOSトランジスタN1を示す。各層の面内方向で磁壁移動素子の長手方向をX、面内に垂直方向をZとする。
図14は本実施形態の第1の不揮発抵抗ネットワーク近傍の平面図である。磁壁移動素子DW1、DW2、DW3の長手方向をX、その垂直方向をYとする。
磁壁移動素子DW1、DW2、DW3は、フリー層と第1のハード層と第2のハード層を含む。一例として、フリー層および第1、第2のハード層は垂直磁気異方性を有する磁性薄膜を用いる。センス素子は、センス層、絶縁層、リファレンス層を含む。センス層、リファレンス層、は、一例として、面内磁気異方性を有する磁性薄膜を用いる。フリー層、ハード層、センス層とリファレンス層の具体的な材料は、Fe、Co、Niのうちから選択される少なくとも一つの材料を含むことが望ましい。また、その膜厚は1nm以上20nm以下であることが望ましい。
図13を参照して、本実施形態の不揮発論理ゲート5の断面構造について説明する。断面構造は、基板に近い層から、CMOS回路を構成するトランジスタ層、第1のメタル層、第1のハード層または第2のハード層、フリー層、第2のメタル層、リファレンス層、絶縁層、センス層、第3のメタル層を含む。センス素子は、
図13と逆に、基板に近い層から、センス層、絶縁層、リファレンス層の順に積層されていても良い。また、第1のハード層と第2のハード層はフリー層の上部に積層されていても良い。第1のハード層と第2のハード層の磁化の方向は、
図13中に矢印で示すように逆向きに固定されている。書き込みイネーブル信号WEをHighにすることで、書き込み電流Iwをフリー層に供給する。フリー層の磁化は書き込み電流Iwとしてのスピン偏極電流の向きによって、スピントルク効果によって、Z方向に沿って上下に変化できる。センス素子のセンス層はフリー層の上部に位置し、フリー層からの漏洩磁界を感度よくセンスすることができる。また、センス素子は、フリー層の下に配置されていてもよい。
本実施形態の不揮発論理ゲートでは、書き込み電流Iwは、NMOSトランジスタN13を介して、直列に接続されたフリー層を流れる。書き込み電流の向きに応じて、フリー層の磁化の向きはZ方向、または、−Z方向に向けることができる。読み出し電流Isは、センス回路55及びNMOS論理回路35から3つのセンス素子R1、R2、R3、NMOSトランジスタN1を介してグラウンドに流れる。尚、図中では、方向を示すマークを用いて磁化の向きを示す。
次に
図14を参照して、本実施形態の第1の不揮発抵抗ネットワーク近傍の平面構造について説明する。磁壁移動素子DW1、DW2、DW3は電気的に直列に接続される。フリー層の中心軸からY方向にややずらして配置されたセンス素子R1、R2、R3のセンス層の磁化は、フリー層からの漏洩磁界によって、+Y方向または−Y方向を向く。センス素子のリファレンス層の向きが+Y方向に設定され、また、磁壁移動素子のフリー層の磁化が−Z方向を向いている場合、センス素子R1、R2、R3は低抵抗状態RLになる。書き込み電流を逆にすると、フリー層の磁化が逆向きになり、各センス素子の抵抗状態は反転し高抵抗状態RHになる。
本実施形態の不揮発論理ゲート5は、障害耐性を高めるために不揮発抵抗ネットワークが3つの不揮発抵抗素子から構成されている。これらの不揮発抵抗素子をシリアルに経由する書き込み電流を供給し、上記複数の不揮発抵抗素子を同時に同一の電流により書き込むことを特徴とするため、書き込み回路の追加がなく、追加回路面積を小さく抑えられる。また、同時に消費電力も低く抑えられる。また、上記不揮発抵抗素子はCMOS回路の上に積層されるため、回路面積の増加を抑えることができる。
このように、本実施形態の不揮発抵抗ネットワーク集合体15、及び、それを用いた不揮発論理ゲート5は、回路の面積増加や消費電力を抑えつつ、障害耐性を高められる。
(第6の実施形態)
図15は第6の実施形態に係る不揮発抵抗ネットワーク集合体16、及び、それを用いた障害耐性の高い不揮発論理ゲート6の回路図である。本実施形態の不揮発論理ゲート6は、第2の不揮発抵抗ネットワークの抵抗値を固定値にするのではなく、第1の不揮発抵抗ネットワークの記憶データと相補のデータを記憶させる点が第1から第5の実施形態と異なる。本実施形態では、不揮発抵抗素子の書き込み部26として、磁壁移動素子を用いる。また、不揮発性抵抗素子R1、R2、R3、R4、R5、R6としてセンス素子を用いる。
より詳細には、NMOSトランジスタN13、N14、相補のデータ入力信号WD、/WDと書き込みイネーブル信号WEを含む。磁壁移動素子DW1、DW2、DW3は、漏洩磁界を通じて、センス素子の抵抗に影響を及ぼす。
本実施形態の書き込み部26の接続関係は第5の実施形態と同じであるため、説明を省略する。
センス回路56は
図5(b)、貫通電流制御回路46は
図2(a)を利用している。また、NMOS論理回路36は
図2の回路を採用する。
本実施形態の不揮発論理ゲートの不揮発抵抗素子近傍の断面構造は第5の実施形態と同様であるため、説明を省略する。
図16は本実施形態の不揮発抵抗ネットワーク集合体16近傍の平面図である。磁壁移動素子の長手方向をX、その垂直方向をYとする。
磁壁移動素子DW1、DW2、DW3は、フリー層と第1のハード層と第2のハード層を含む。一例として、フリー層及び第1、第2のハード層は垂直磁気異方性を有する磁性薄膜を用いる。センス素子は、センス層、絶縁層、リファレンス層を含む。センス層、リファレンス層は一例として、面内磁気異方性を有する磁性薄膜を用いる。
磁壁移動素子DW1、DW2、DW3は電気的に直列に接続されている。フリー層の中心軸から−Y方向にややずらして配置されたセンス素子R1、R2、R3のセンス層の磁化は、フリー層からの漏洩磁界によって、+Y方向または−Y方向を向く。また、フリー層の中心軸から+Y方向にややずらして配置されたセンス素子R4、R5、R6のセンス層の磁化はフリー層からの漏洩磁界によって、−Y方向または+Y方向を向く。各センス素子のリファレンス層の向きが+Y方向に設定され、また、磁壁移動素子のフリー層の磁化が−Z方向を向いている場合、センス素子R1、R2、R3は低抵抗状態RLになる。一方、センス素子R4、R5、R6は高抵抗状態RHになる。書き込み電流を逆にすると、フリー層の磁化が逆向きになり、各センス素子の抵抗状態は反転する。
本実施形態の不揮発論理ゲート6は、障害耐性を高めるために、第1、第2の不揮発抵抗ネットワークはそれぞれ3つの不揮発抵抗素子から構成され、第1の不揮発ネットワークと第2の不揮発抵抗ネットワークは相補のデータを記憶保持する。また、これらの磁壁移動素子をシリアルに経由する書き込み電流を供給し、上記複数の磁壁移動素子を同時に同一の電流で書き込むことを特徴とするため、書き込み回路の追加がなく、回路面積を小さく抑えられる。また、同時に消費電力も低く抑えられる。また、上記磁壁移動素子はCMOS回路の上に積層されるため、回路面積の増加を抑えることができる。
このように、本実施形態の不揮発抵抗ネットワーク集合体16、及び、それを用いた不揮発論理ゲート6は、回路の面積増加や消費電力を抑えつつ、障害耐性を高められる。
(第7の実施形態)
図17は第7の実施形態に係る不揮発抵抗ネットワーク集合体17、及び、それを用いた障害耐性の高い不揮発論理ゲート7の回路図である。本実施形態の不揮発論理ゲート7は、不揮発抵抗素子のテストを行うことができると同時に、冗長な不揮発抵抗素子を用いてソフトエラーのみならずショートやオープンなどの物理不良があっても正常に動作できる。
図17を参照して本実施形態の不揮発論理ゲート7について説明する。本実施形態の不揮発論理ゲート7は、第6の実施形態と比較してNMOSトランジスタN41、N42、N43、N44、N45、N46が追加されている。
不揮発抵抗素子R1とNMOSトランジスタN41が並列に接続される。同様に、不揮発抵抗素子R2とNMOSトランジスタN42が並列に接続される。不揮発抵抗素子R3とNMOSトランジスタN43が並列に接続される。不揮発抵抗素子R4とNMOSトランジスタN44が並列に接続される。不揮発抵抗素子R5とNMOSトランジスタN45が並列に接続される。不揮発抵抗素子R6とNMOSトランジスタN46が並列に接続される。
さらに、不揮発抵抗素子R1、R2、R3は直列に接続され、一端がNMOS論理回路37に接続され、他端は貫通電流制御回路47に接続されている。また、R4、R5、R6は直列に接続され、一端がNMOS論理回路37に接続され、他端は貫通電流制御回路47に接続されている。
書き込み部27は、例えば第6の実施形態と同様に、磁壁移動素子を用いることができる。センス回路57は
図5(b)、貫通電流制御回路47は
図2(a)を利用している。また、NMOS論理回路37は
図2の回路を採用する。
次に、本実施形態の不揮発論理ゲート7における不揮発抵抗素子のテスト方法について説明する。
本テストは、不揮発論理ゲートを組み込んだ製品を出荷する前に実施して、初期不良をスクリーニングすることを目的としている。本不揮発論理ゲート7は、トランジスタN4n(nは図中の1〜6)がオンしている際に不揮発抵抗素子Rn(nは図中の1〜6)に比べ、インピーダンスが低くなる特徴を有する。この結果、オンしている間には、主に上記トランジスタN4nに読み出し電流が流れる特徴を利用してテストを行う。
換言すれば、個々の不揮発抵抗素子にその不揮発抵抗素子よりも低インピーダンスにできる要素を並列接続した構造を採り、各要素を低インピーダンス化した場合に、読み出し電流が流れる経路を制御できる特徴を利用してテストを行う。
はじめに不揮発論理ゲートにデータ「0」を記憶させてテストする。すなわち、不揮発抵抗素子R1、R2、R3は低抵抗状態の抵抗値RL、不揮発抵抗素子R4、R5、R6は高抵抗状態の抵抗値RHになるように書き込み部27を制御する。
不揮発抵抗素子R1とR4のテスト時、Dinにテストのための信号である、信号S1にロウレベル、信号S2、S3にハイレベルを与え、論理演算動作(回路テスト動作)を行う。この際の各トランジスタ状態は、トランジスタN41とN44はオフ状態、トランジスタN42、N43、N45、N46はオン状態である。このとき、第1の不揮発ネットワークに流れる読み出し電流は主に、センス回路57から、NMOS論理回路37、不揮発抵抗素子R1、トランジスタN42、N43、および貫通電流制御回路47を介してグラウンドに流れる。また、第2の不揮発ネットワークに流れる読み出し電流は主に、センス回路57から、NMOS論理回路37、不揮発抵抗素子R4、トランジスタN45、N46、及び貫通電流制御回路47を介してグラウンドに流れる。したがって、不揮発抵抗素子R1とR4の抵抗差に対応して、第1と第2の不揮発ネットワークに流れる電流差が生じ、その電流差に基づいた回路動作(論理演算)が行われる。テストの結果、想定される所定回路動作と異なった結果を出力した場合、不揮発抵抗素子R1またはR4の抵抗値に起因したエラーの可能性がある。
同様に、不揮発抵抗素子R2とR5のテスト時、Dinにテストのための信号である、信号S2にロウレベル、信号S1、S3にハイレベルを与え、論理演算動作(回路テスト動作)を行う。この際の各トランジスタ状態は、トランジスタN42とN45はオフ状態、トランジスタN41、N43、N44、N46はオン状態である。このとき、第1の不揮発ネットワークに流れる読み出し電流は主に、センス回路57から、NMOS論理回路37、トランジスタN41、不揮発抵抗素子R2、トランジスタN43、および貫通電流制御回路47を介してグラウンドに流れる。また、第2の不揮発ネットワークに流れる読み出し電流は主に、センス回路57から、NMOS論理回路37、トランジスタN44、不揮発抵抗素子R5、トランジスタN46、及び貫通電流制御回路47を介してグラウンドに流れる。したがって、不揮発抵抗素子R2とR5の抵抗差に対応して、第1と第2の不揮発ネットワークに流れる電流差が生じ、その電流差に基づいた回路動作(論理演算)が行われる。テストの結果、想定される所定回路動作と異なった結果を出力した場合、不揮発抵抗素子R2またはR5の抵抗値に起因したエラーの可能性がある。
同様に、不揮発抵抗素子R3とR6のテスト時、Dinにテストのための信号である、信号S3にロウレベル、信号S1、S2にハイレベルを与え、論理演算動作(回路テスト動作)を行う。この際の各トランジスタ状態は、トランジスタN43とN46はオフ状態、トランジスタN41、N42、N44、N45はオン状態である。このとき、第1の不揮発ネットワークに流れる読み出し電流は主に、センス回路57から、NMOS論理回路37、トランジスタN41、N42、不揮発抵抗素子R3、および貫通電流制御回路47を介してグラウンドに流れる。また、第2の不揮発ネットワークに流れる読み出し電流は主に、センス回路57から、NMOS論理回路37、トランジスタN44、N45、不揮発抵抗素子R6、及び貫通電流制御回路47を介してグラウンドに流れる。したがって、不揮発抵抗素子R3とR6の抵抗差に対応して、第1と第2の不揮発ネットワークに流れる電流差が生じ、その電流差に基づいた回路動作(論理演算)が行われる。テストの結果、想定される回路動作と異なった結果を出力した場合、不揮発抵抗素子R3またはR6の抵抗値に起因したエラーの可能性がある。このテスト結果を予め想定される回路動作との比較を人間又は機械によって製品の良否を判別する。
次に不揮発論理ゲートにデータ「1」を記憶させてテストする。すなわち、不揮発抵抗素子R1、R2、R3は高抵抗状態の抵抗値RH、不揮発抵抗素子R4、R5、R6は低抵抗状態の抵抗値RLになるように書き込み部27を制御する。テスト方法はデータ「0」を記憶させたテストと同様の方法で行う。
テストの結果、いずれかの不揮発抵抗素子の抵抗値に不良があると推測された場合、対応したトランジスタをONになるようにヒューズ等を利用して設定すればよい。すなわち、R1またはR4に不良があると推測された場合、信号S1をハイレベルに設定して、トランジスタN41、N44をONにすればよい。R2またはR5に不良があると推測された場合、信号S2をハイレベルに設定して、トランジスタN42、N45をONにすればよい。R3またはR6に不良があると推測された場合、信号S3をハイレベルに設定して、トランジスタN43、N46をONにすればよい。
このことで、本不揮発論理ゲート7は、冗長な不揮発抵抗素子を利用して、正常と推測される不揮発抵抗素子のペアが1つ以上あれば、正常に動作することができる。また、不良と推測される不揮発抵抗素子のペアがない場合、冗長な不揮発抵抗素子を利用して、ソフトエラーが発生しても正常に動作することができる。つまり、本実施形態の不揮発論理ゲートの冗長な不揮発抵抗素子はハードエラーを救済するためにも、ソフトエラーを救済するためにも利用できる。また別の観点でも、ハードエラー救済とソフトエラー救済のために別々に回路を用意する必要がないため、回路面積の増加や消費電力を抑えることができる。
本実施形態の不揮発抵抗ネットワークの不揮発抵抗素子の数は3つ以上でも構わない。たとえば、
図18に示した本実施形態の不揮発論理ゲート7の変形例である不揮発論理ゲート7−2は、不揮発抵抗ネットワークの不揮発抵抗素子の数は4つである。この変形例の場合、1つの不揮発抵抗素子のペアがハード不良であっても、残りの3つのペアを用いてソフトエラーを救済できる。
換言すれば、不揮発論理ゲートとして、不揮発抵抗素子を少なくとも4つ以上接続した抵抗ネットワークを1つの記憶構造として所要数有する構成とすれば、1つのハードエラーの救済と共に、ソフトエラーを救済する構造を維持できる。
また、本実施形態の不揮発抵抗ネットワークの各不揮発抵抗素子は並列接続であっても構わない。例えば、
図19に示した不揮発論理ゲート7−3は、個々の不揮発抵抗ネットワークの不揮発抵抗素子の数は4つで、それらの接続は並列となるように構成している。この変形例の場合、不良があった不揮発抵抗素子に対応した信号Sn(nは1から4の整数)をロウレベルにすることで、不良の不揮発抵抗素子を使用しないようにできる。このため、1つのハードエラーの救済と共に、ソフトエラーを救済する構造を維持できる。
また、2直2並列のように、直列と並列を組み合わせることも可能である。
また、ハードエラーの救済を図った際に、リファレンス抵抗ネットワークの対応箇所の不揮発抵抗素子を使用しないように構成するため、ハードエラーの救済数はリファレンス抵抗ネットワーク数に対応する。このため、集積回路化などの記憶構造の増加に対応して複数のリファレンス抵抗値Rrefを有し得る構造としても良い。リファレンス抵抗ネットワーク数を増やすことによって、異なる位置の不揮発抵抗素子のハード不良に対応できる。なお、この構造は、構造上近傍の(例えば隣接する)不揮発論理ゲートで共用可能に構築することとしても良い。また、不揮発論理ゲートを論理構造や回路構造を適宜テスト後に組み替え得る構造として、抵抗ネットワーク毎にリファレンス抵抗ネットワークを複数有し得る回路構造を設けても良い。
このように、本実施形態の不揮発抵抗ネットワーク集合体17、及び、それを用いた不揮発論理ゲート7は、回路の面積増加や消費電力を抑えつつ、ハードエラーとソフトエラーの両方の障害耐性を高められる。
以上、いくつかの実施の形態に基づき本発明を具体的に説明したが、本発明は上述の実施の形態に限定されるものではない。本発明は、例えば実施形態の趣旨の分離併合の変更などの発明の要旨を逸脱しない範囲で種々の変更を施すことができ、これらの変更例も本発明に含まれることはいうまでもない。
以上説明したように、本発明によれば、回路の面積増加や消費電力増加を抑えつつ、メモリデータに誤りが生じても正常に論理演算できる、障害耐性を高めた不揮発論理ゲート、および不揮発性集積回路を提供可能となる。
この出願は、2012年6月11日に出願された日本出願特願2012−132412号を基礎とする優先権を主張し、その開示の全てをここに取り込む。