(57)【要約】【課題】  新規の磁気デバイスを提供する。【解決手段】実施形態の磁気デバイスは、導電層２０に配置され、制御端子１９を有する磁気抵抗効果素子１０と、第１の方向の第１の電流Ｉｗｒ１を導電層２０内に供給し、第１の制御端子１９に制御電圧ＣＮＴを印加する第１の回路と、を含み、第１の電流Ｉｗｒ１が導電層２０に供給された場合、磁気抵抗効果素子１０は、磁気抵抗効果素子１０内の第１のデータＭＤの第１の値と第２のデータに対応する制御電圧ＣＮＴの第２の値との論理和に対応する値ＰＲを保持する。【選択図】      図７
2019164870.tif 000002
【特許請求の範囲】
【請求項１】
第１の導電層と、
前記第１の導電層に配置され、第１の制御端子を有する第１の磁気抵抗効果素子と、
第１の方向の第１の電流を前記第１の導電層内に供給し、且つ、前記第１の磁気抵抗効果素子の前記第１の制御端子に第１の制御電圧を印加する第１の回路と、
を具備し、
前記第１の電流が前記第１の導電層に供給された場合、前記第１の磁気抵抗効果素子は、前記第１の磁気抵抗効果素子内の第１のデータの第１の値と第２のデータに対応する前記第１の制御電圧の第２の値との論理和に対応する値を保持する、
磁気デバイス。
【請求項２】
前記第１の回路は、前記第１の方向に対して反対の第２の方向の第２の電流を前記第１の導電層内に供給し、
前記第２の電流が前記第１の導電層に供給された場合、前記第１の磁気抵抗効果素子は、前記第１のデータの前記第１の値と前記第１の制御電圧の前記第２の値の負論理との論理積に対応する値を保持する、
請求項１に記載の磁気デバイス。
【請求項３】
前記第１の導電層に配置され、第２の制御端子を有する第２の磁気抵抗効果素子を、
さらに具備し、
前記第１及び前記第２の磁気抵抗効果素子は、前記第１の導電層の延在方向において配列され、
前記第１の回路は、前記第２の磁気抵抗効果素子の前記第２の制御端子に、第２の制御電圧を印加し、
前記第１の電流の供給時に、前記第２の磁気抵抗効果素子は、前記第２の磁気抵抗効果素子内の第３のデータの第３の値と第４のデータに対応する前記第２の制御電圧の第４の値との論理和に対応する値を保持する、
請求項１又は２に記載の磁気デバイス。
【請求項４】
第１の導電層と、
前記第１の導電層に配置され、第１の制御端子を有する第１の磁気抵抗効果素子と、
第１の方向の第１の電流を前記第１の導電層内に供給し、且つ、前記第１の磁気抵抗効果素子の前記第１の制御端子に第１の制御電圧を印加する第１の回路と、
を具備し、
前記第１の電流が前記第１の導電層に供給された場合、前記第１の磁気抵抗効果素子は、前記第１の磁気抵抗効果素子内の第１のデータの第１の値と第２のデータに対応する前記第１の制御電圧の第２の値の負論理との論理積に対応する値を保持する、
磁気デバイス。
【請求項５】
前記第１の回路は、前記第１の方向に対して反対の第２の方向の第２の電流を前記第１の導電層内に供給し、
前記第２の電流が前記第１の導電層に供給された場合、前記第１の磁気抵抗効果素子は、前記第１のデータの前記第１の値と前記第１の制御電圧の前記第２の値との論理和に対応する値を保持する、
請求項４に記載の磁気デバイス。
【請求項６】
前記第１の導電層に配置され、第２の制御端子を有する第２の磁気抵抗効果素子を、
さらに具備し、
前記第１及び前記第２の磁気抵抗効果素子は、前記第１の導電層の延在方向において配列され、
前記第１の回路は、前記第２の磁気抵抗効果素子の前記第２の制御端子に、第２の制御電圧を印加し、
前記第１の電流の供給時に、前記第２の磁気抵抗効果素子は、前記第２の磁気抵抗効果素子内の第３のデータの第３の値と第４のデータに対応する前記第２の制御電圧の第４の値の負論理との論理積に対応する値を保持する、
請求項４又は５に記載の磁気デバイス。
【請求項７】
第２の導電層と、
前記第２の導電層に配置され、第３の制御端子を有する第３の磁気抵抗効果素子と、
前記第１の磁気抵抗効果素子の前記第１の制御端子と前記第３の磁気抵抗効果素子の前記第３の制御端子とを接続する第１の配線と、
をさらに具備し、
前記第１の回路は、
前記第１のデータを前記第１の配線に出力し、
前記第１又は第２の電流を前記第２の導電層に流し、前記第１のデータに対応する第５のデータを前記第３の磁気抵抗効果素子に書き込む、
請求項１乃至６のうちいずれか１項に記載の磁気デバイス。
【請求項８】
前記第１の磁気抵抗効果素子は、
固定の磁化を有する第１の磁性層と、
前記第１の導電層と前記第１の磁性層との間に配置され、可変な磁化を有する第２の磁性層と、
前記第１の磁性層と前記第２の磁性層との間に配置された非磁性層と、
を含む、
請求項１乃至７のうちいずれか１項に記載の磁気デバイス。
【請求項９】
第１の導電層と、
第２の導電層と、
前記第１の導電層に配置され、第１の制御端子を有する第１の磁気抵抗効果素子と、
前記第２の導電層に配置され、第２の制御端子を有する第２の磁気抵抗効果素子と、
第１の方向の第１の電流又は前記第１の方向に対して反対の第２の方向の第２の電流を供給し、前記第１の制御端子の電位及び前記第２の制御端子の電位を制御する第１の回路と、
を具備し、
前記第１の回路は、
前記第１及び第２の磁気抵抗効果素子に、第１のデータを書き込み、
前記第１の制御端子の前記電位を第２のデータに対応する値に設定し、前記第１の電流を前記第１の導電層に供給し、前記第１の磁気抵抗効果素子は、前記第１のデータと前記第２のデータの論理和に対応する第１の値を保持し、
前記第２の制御端子の前記電位を前記第２のデータの反転データに対応する値に設定し、前記第２の電流を前記第２の導電層に供給し、前記第２の磁気抵抗効果素子は、前記第１のデータと前記第２のデータとの論理積に対応する第２の値を保持し、
前記第１の制御端子の前記電位を前記第２の値に設定し、前記第２の電流を前記第１の導電層に供給し、前記第１の磁気抵抗効果素子は、前記第１のデータと前記第２のデータとの排他的論理和に対応する第３の値を保持する、
磁気デバイス。
【請求項１０】
前記第３の値は、前記第１のデータと前記第２のデータとの加算結果を示す、
請求項９に記載の磁気デバイス。
【請求項１１】
前記第２の値は、前記加算結果における前記第３の値の桁の桁上がりの有無を示す、
請求項１０に記載の磁気デバイス。
【請求項１２】
第３の導電層と、
前記第３の導電層に配置され、第３の制御端子を有する第３の磁気抵抗効果素子と、
前記第１の制御端子、前記第２の制御端子及び前記第３の制御端子に接続された第１の配線と、
をさらに具備し、
前記第１の回路は、
前記第３の磁気抵抗効果素子に保持された第３のデータを、前記第１の配線に出力し、
前記第１又は第２の電流を前記第１及び第２の導電層に供給し、前記第３のデータに対応する前記第１のデータを前記第１及び第２の磁気抵抗効果素子に書き込む、
請求項９乃至１１のうちいずれか１項に記載の磁気デバイス。
【請求項１３】
前記第２のデータは、前記第１及び第２の磁気抵抗効果素子の外部からのデータである、
請求項９乃至１２のうちいずれか１項に記載の磁気デバイス。
【請求項１４】
前記第１の磁気抵抗効果素子は、
前記第１の制御端子に接続され、固定の磁化を有する第１の磁性層と、
前記第１の導電層と前記第１の磁性層との間に配置され、可変な磁化を有する第２の磁性層と、
前記第１の磁性層と前記第２の磁性層との間に配置された非磁性層と、
を含む、
請求項９乃至１３のうちいずれか１項に記載の磁気デバイス。
【請求項１５】
第１の端子及び第２の端子を有する第１の導電層と、固定の磁化を有する第１の磁性層と、前記第１の導電層と前記第１の磁性層との間に配置され、磁化の向きが可変な第２の磁性層と、前記第１の磁性層と前記第２の磁性層との間に配置された非磁性層と、前記第１の磁性層に接続された制御端子と、を含む磁気抵抗効果素子と、
前記制御端子に接続されたインバータ回路と、
を具備する磁気デバイス。
【請求項１６】
前記インバータ回路を含む第１の経路と、
インバータ回路を含まない第２の経路と、
前記第１の経路と前記第２の経路とを切り替えるスイッチ回路と、
をさらに具備する請求項１５記載の磁気デバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、磁気デバイスに関する。
【背景技術】
【０００２】
磁気抵抗効果素子を用いた磁気デバイスが、開発及び研究されている。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Luqiao Liu et al., “Spin-torque switching with the giant spin hall effect of tantalum”, Science Vol 336(2012), 555-558
【発明の概要】
【発明が解決しようとする課題】
【０００４】
新規の磁気デバイスを提供する。
【課題を解決するための手段】
【０００５】
実施形態の磁気デバイスは、第１の導電層と、前記第１の導電層に配置され、第１の制御端子を有する第１の磁気抵抗効果素子と、第１の方向の第１の電流を前記第１の導電層内に供給し、且つ、前記第１の磁気抵抗効果素子の前記第１の制御端子に第１の制御電圧を印加する第１の回路と、を含み、前記第１の電流が前記第１の導電層に供給された場合、前記第１の磁気抵抗効果素子は、前記第１の磁気抵抗効果素子内の第１のデータの第１の値と第２のデータに対応する前記第１の制御電圧の第２の値との論理和に対応する値を保持する。
【図面の簡単な説明】
【０００６】
【図１】実施形態の磁気デバイスの構成例を示すブロック図。
【図２】実施形態の磁気デバイスの構成例を示すブロック図。
【図３】実施形態の磁気デバイスの構成例を示す鳥瞰図。
【図４】実施形態の磁気デバイスの構成例を示す等価回路図。
【図５】実施形態の磁気デバイスの動作原理を説明するための図。
【図６】実施形態の磁気デバイスの動作原理を説明するための図。
【図７】実施形態の磁気デバイスの動作原理を説明するための図。
【図８】実施形態の磁気デバイスの動作原理を説明するための図。
【図９】実施形態の磁気デバイスの動作例を説明するための図。
【図１０】実施形態の磁気デバイスの動作例を説明するための図。
【図１１】実施形態の磁気デバイスの動作例を説明するための図。
【図１２】実施形態の磁気デバイスの動作例を説明するための図。
【図１３】実施形態の磁気デバイスの動作例を説明するための図。
【図１４】実施形態の磁気デバイスの動作例を説明するための図。
【図１５】実施形態の磁気デバイスの動作例を説明するための図。
【図１６】実施形態の磁気デバイスの動作例を説明するための図。
【図１７】実施形態の磁気デバイスの動作例を説明するための図。
【図１８】実施形態の磁気デバイスの動作例を説明するための図。
【図１９】実施形態の磁気デバイスの動作例を説明するための図。
【図２０】実施形態の磁気デバイスの動作例を説明するための図。
【図２１】実施形態の磁気デバイスの動作例を説明するための図。
【図２２】実施形態の磁気デバイスの動作例を説明するための図。
【図２３】実施形態の磁気デバイスの動作例を説明するための図。
【図２４】実施形態の磁気デバイスの動作例を説明するための図。
【図２５】実施形態の磁気デバイスの動作例を説明するための図。
【図２６】実施形態の磁気デバイスの動作例を説明するための図。
【図２７】実施形態の磁気デバイスの動作例を説明するための図。
【図２８】実施形態の磁気デバイスの動作例を説明するための図。
【図２９】実施形態の磁気デバイスの動作例を説明するための図。
【図３０】実施形態の磁気デバイスの動作例を説明するための図。
【図３１】実施形態の磁気デバイスの動作例を説明するための図。
【図３２】実施形態の磁気デバイスの動作例を説明するための図。
【図３３】実施形態の磁気デバイスの動作例を説明するための図。
【図３４】実施形態の磁気デバイスの動作例を説明するための図。
【図３５】実施形態の磁気デバイスの動作例を説明するための図。
【図３６】実施形態の磁気デバイスの動作例を説明するための図。
【図３７】実施形態の磁気デバイスの動作例を説明するための図。
【図３８】実施形態の磁気デバイスの動作例を説明するための図。
【図３９】実施形態の磁気デバイスの動作例を説明するための図。
【図４０】実施形態の磁気デバイスの動作例を説明するための図。
【図４１】実施形態の磁気デバイスの動作例を説明するための図。
【図４２】実施形態の磁気デバイスの動作例を説明するための図。
【図４３】実施形態の磁気デバイスの動作例を説明するための図。
【図４４】実施形態の磁気デバイスの動作例を説明するための図。
【図４５】実施形態の磁気デバイスの変形例を説明するための図。
【図４６】実施形態の磁気デバイスの変形例を説明するための図。
【図４７】実施形態の磁気デバイスの変形例を説明するための図。
【図４８】実施形態の磁気デバイスの変形例を説明するための図。
【発明を実施するための形態】
【０００７】
図１乃至図４８を参照して、実施形態の磁気デバイスについて説明する。
【０００８】
以下、図面を参照しながら、本実施形態について詳細に説明する。以下の説明において、同一の機能及び構成を有する要素については、同一符号を付す。  
また、以下の各実施形態において、末尾に区別化のための数字／英字を伴った参照符号（例えば、ワード線ＷＬやビット線ＢＬ、各種の電圧及び信号など）を付された構成要素が、相互に区別されなくとも良い場合、末尾の数字／英字が省略された記載（参照符号）が用いられる。
【０００９】
［実施形態］  
図１乃至図４４を参照して、実施形態の磁気デバイスの実施例について、説明する。
【００１０】
（１）  基本構成  
図１は、本実施形態の磁気デバイスを説明するための模式図である。
【００１１】
図１において、本実施形態の磁気デバイスの基本素子の鳥瞰図が、示されている。
【００１２】
図１に示されるように、磁気デバイスの基本素子（論理素子）は、磁気抵抗効果素子１０と、配線（電極）２０と、を少なくとも含む。
【００１３】
磁気抵抗効果素子１０は、配線２０上に設けられている。
【００１４】
磁気抵抗効果素子１０は、２つの磁性層１１，１２と、非磁性層１３と、を少なくとも含む。
【００１５】
２つの磁性層１１，１２のそれぞれは、磁化を有する。磁性層１１の磁化の向きは、可変である。磁性層１２の磁化の向きは、不変（固定状態）である。本実施形態において、磁化の向きが可変な磁性層１１は、記憶層１１とよばれ、磁化の向きが不変な磁性層１２は、参照層１２とよばれる。
【００１６】
尚、本実施形態において、“参照層の磁化の向きが不変である”又は“参照層の磁化の向きが固定状態である（例えば、固定されている）”とは、記憶層の磁化の向きを変えるための電流、電圧又はスピン流が磁気抵抗効果素子に供給された場合において、参照層の磁化の向きは、供給された電流、電圧又はスピン流によって変化しないことを、意味する。
【００１７】
例えば、磁性層１１，１２は、面内磁気異方性（平行磁気異方性）を有している。  
磁性層１１，１２の磁化容易軸方向は、層面に対して平行である。磁性層１１，１２の磁化容易軸方向は、磁性層１１，１２の積層方向（図１のＺ方向）に対して垂直である。例えば、磁性層１１，１２の磁化容易軸方向は、磁性層１１，１２の長手方向（図１のＹ方向）に設定されている。
【００１８】
非磁性層１３は、２つの磁性層１１，１２間に設けられている。非磁性層１３は、トンネルバリア層１３として機能する。トンネルバリア層１３は、トンネル電流が流れる非常に薄い絶縁膜である。例えば、トンネルバリア層１３は、酸化マグネシウムを含む絶縁層である。
【００１９】
記憶層１１が、配線２０上に設けられている。参照層１２は、トンネルバリア層１３を介して、記憶層１１上方に積層されている。
【００２０】
例えば、２つの磁性層１１，１２及びトンネルバリア層１３によって、磁気トンネル接合が、形成される。本実施形態において、磁気トンネル接合を有する磁気抵抗効果素子１０は、ＭＴＪ素子１０とよばれる。
【００２１】
ＭＴＪ素子１０の抵抗値（抵抗状態）は、記憶層１１の磁化の向きと参照層１２の磁化の向きとの相対的な関係（磁化配列）に応じて、変わる。例えば、ＭＴＪ素子１０は、第１の抵抗状態又は第２の抵抗状態を取り得る。
【００２２】
例えば、ＭＴＪ素子１０は、直方体の構造を有し、長方形状の平面形状を有する。尚、ＭＴＪ素子１０は、楕円形、円形、又は、四角形（例えば、正方形）の平面形状を有する立体構造でもよい。ＭＴＪ素子１０の平面形状は、四角形の角が欠けた又は丸くなった形状でもよい。
【００２３】
配線２０は、Ｘ方向に延在する。
【００２４】
後述のように、本実施形態において、ＭＴＪ素子１０の記憶層１１の磁化反転のために、スピンホール効果が用いられる。  
スピンホール効果の発生のために、スピン軌道相互作用を有する材料が、配線２０に用いられる。配線２０は、銅（Ｃｕ）、ロジウム（Ｒｈ）、パラジウム（Ｐｄ）、銀（Ａｇ）、ハフニウム（Ｈｆ）、タンタル（Ｔａ）、タングステン（Ｗ）、レニウム（Ｒｅ）、オスミウム（Ｏｓ）、イリジウム（Ｉｒ）、白金（Ｐｔ）、金（Ａｕ）、ビスマス（Ｂｉ）などの金属、これらの金属の１以上を含む酸化物、及び、これらの金属の１以上を含む窒化物の中から選択される少なくとも１つの材料から形成された層でもよい。但し、配線２０は、大きいスピン相互作用を有する材料であれば、これらの材料に限定されない。  
以下において、配線２０は、スピン軌道相互作用層２０ともよばれる。
【００２５】
配線２０のＸ方向における一方の端子（一端）は、トランジスタＴ１を介して、配線（以下では、ソース線とよばれる）ＳＬに接続されている。配線２０のＸ方向における他方の端子（他端）は、配線（以下では、アクセス線とよばれる）ＡＬに接続されている。  
尚、配線２０のＸ方向における他方の端子とアクセス線ＡＬとの間に、トランジスタが接続されてもよい。
【００２６】
ＭＴＪ素子１０は、Ｘ方向における配線２０の２つの端子間において、配線２０上に配置されている。配線２０は、例えば、記憶層１１に直接接触する。
【００２７】
ソース線ＳＬ及びアクセス線ＡＬが制御されることによって、電流が、配線２０内に流される。
【００２８】
配線（以下では、ビット線とよばれる）ＢＬは、例えばトランジスタ（図示せず）を介して、ＭＴＪ素子１０の上部電極（制御端子）１９に接続されている。ビット線ＢＬの電位が制御されることによって、ある電圧値の制御電圧ＶＣＮＴが、ＭＴＪ素子１０の参照層１２に印加される。
【００２９】
各配線ＡＬ，ＢＬ，ＳＬの制御によって、ＭＴＪ素子１０の記憶層１１の磁化反転が制御される。  
これによって、本実施形態の磁気デバイスにおいて、配線２０上のＭＴＪ素子１０が、論理素子及びメモリ素子として動作する。
【００３０】
以下において、ＭＴＪ素子１０と配線２０とを含む構成は、論理セル又はメモリセル（又は、単に、セル）とよばれる。
【００３１】
（２）  原理  
図２乃至図７を参照して、本実施形態の磁気デバイスにおける磁気抵抗効果素子（ＭＴＪ素子）の動作原理について、説明する。
【００３２】
＜磁気抵抗効果＞  
図２を用いて、本実施形態の磁気デバイスに用いられる磁気抵抗効果について、説明する。
【００３３】
図２は、本実施形態の磁気デバイスにおけるＭＴＪ素子の磁気抵抗効果を説明するための図である。
【００３４】
図２の（ａ）は、ＭＴＪ素子が第１の抵抗状態を有する場合におけるＭＴＪ素子の磁化配列状態を模式的に示す図である。図２の（ｂ）は、ＭＴＪ素子が第２の抵抗状態を有する場合におけるＭＴＪ素子の磁化配列状態を模式的に示す図である。
【００３５】
上述のように、磁性層１１，１２は、面内磁気異方性（平行磁気異方性）を有している。磁性層１１，１２の磁化方向（磁化容易軸方向）は、磁性層の層面に対して、実質的に平行である。磁性層１１，１２の磁化方向は、複数の層１１，１２，１３の積層方向に対して、実質的に垂直である。例えば、磁性層１１，１２の面内磁気異方性は、磁性層の形状磁気異方性などによって生じる。以下において、磁性層の面内磁気異方性を利用したＭＴＪ素子は、面内磁化型ＭＴＪ素子とよばれる。
【００３６】
ＭＴＪ素子１０の抵抗状態は、記憶層１１の磁化の向きと参照層１２の磁化の向きとの相対的な関係に応じて、変わる。
【００３７】
図２の（ａ）に示されるように、記憶層１１の磁化の向きが、参照層１２の磁化の向きと同じである場合、ＭＴＪ素子１０は、第１の抵抗状態（第１の磁化配列状態）を有する。第１の抵抗状態を有するＭＴＪ素子１０は、抵抗値Ｒｐを有する。
【００３８】
図２の（ｂ）に示されるように、記憶層１１の磁化の向きが、参照層１２の磁化の向きと反対である場合、ＭＴＪ素子１０は、第２の抵抗状態（第２の磁化配列状態）を有する。第２の抵抗状態を有するＭＴＪ素子１０は、抵抗値Ｒａｐを有する。一般に、抵抗値Ｒａｐは、抵抗値Ｒｐより高い。但し、ＭＴＪ素子に用いられる磁性層の材料の組合せに応じて、抵抗値Ｒａｐが、抵抗値Ｒｐより低くなる場合もある。
【００３９】
このように、ＭＴＪ素子１０は、２つの磁性層１１，１２の磁化配列に応じて、低抵抗状態及び高抵抗状態のうちいずれか１つの状態を取り得る。
【００４０】
磁気抵抗効果は、このような２つの磁性層１１，１２の磁化の向きの相対的な関係によって抵抗値（磁気抵抗）が変化する現象である。
【００４１】
例えば、ＭＴＪ素子１０は、ＭＴＪ素子１０の抵抗状態とデータとの関連付けによって、１ビットのデータ（“０”データ及び“１”データ）を保持できる。この場合において、ＭＴＪ素子１０の抵抗状態が第１の抵抗状態（低抵抗状態）に設定されることによって、ＭＴＪ素子１０は、第１のデータ保持状態（例えば、“０”データ保持状態）に設定される。ＭＴＪ素子１０の抵抗状態が第２の抵抗状態（高抵抗状態）に設定されることによって、ＭＴＪ素子１０は、第２のデータ保持状態（例えば、“１”データ保持状態）に設定される。
【００４２】
本実施形態において、ＭＴＪ素子１０における記憶層１１の磁化の向きと参照層１２の磁化の向きとが同じである磁化配列状態は、平行状態（又はＰ状態）とよばれる。ＭＴＪ素子１０における記憶層１１の磁化の向きと参照層１２の磁化の向きとが反対である磁化配列状態は、反平行状態（又はＡＰ状態）とよばれる。
【００４３】
以下のように、本実施形態の磁気デバイスにおいて、ＭＴＪ素子１０の磁化配列（Ｐ／ＡＰ状態）を制御するために、スピンホール効果及び電圧効果が、用いられる。
【００４４】
＜スピンホール効果＞  
図３を用いて、本実施形態の磁気デバイスに用いられるスピンホール効果について、説明する。
【００４５】
図３の（ａ）及び（ｂ）は、スピンホール効果を説明するための模式図である。
【００４６】
本実施形態の磁気デバイスにおいて、スピンホール効果（又はＳＯＴ：Spin Orbit Torqueともよばれる）が、ＭＴＪ素子１０の記憶層１１の磁化反転に用いられる。
【００４７】
書き込み電流Ｉｗｒ（Ｉｗｒ１，Ｉｗｒ２）が、大きいスピン軌道相互作用を有する配線２０内に供給される。書き込み電流Ｉｗｒは、アップスピンＳＰ１を有する電荷（電子）とダウンスピンＳＰ２を有する電荷とを含む。
【００４８】
書き込み電流（プログラム電流又はスイッチング電流ともよばれる）Ｉｗｒが、配線２０内を流れる場合において、書き込み電流Ｉｗｒが流れる向き（スピンの向き）に応じて、アップスピンＳＰ１とダウンスピンＳＰ２とが、互いに反対方向に散乱される。
【００４９】
スピン（“Ｓ”と表記される）、スピン流（“Ｉｓ”と表記される）及び電子の流れ（“Ｉｅ”と表記される）の関係は、次の（式Ａ）で示される。尚、電子の流れ“Ｉｅ”の向きは、書き込み電流の流れる向きと反対である。“Ｓ”は、ベクトルである。  
Ｉｓ∝Ｓ×Ｉｅ    ・・・（式Ａ）
（式Ａ）で示されるように、スピン流“Ｉｓ”は、スピン“Ｓ”と電子の流れ“Ｉｅ”との外積に比例する。
【００５０】
このように、スピン流Ｉｓが、スピン軌道相互作用を有する配線２０内に発生する。このようなスピン流Ｉｓを発生させる現象が、スピンホール効果である。
【００５１】
例えば、図３の（ａ）に示されるように、電流Ｉｗｒ１が、図中の配線２０の“ＸＡ”側（右側）から“ＸＢ”（左側）に向かって流れる場合において、アップスピンＳＰ１が、配線２０の“ＺＡ”側（配線２０の表面側）に散乱し、ダウンスピンＳＰ２が、配線２０の“ＺＢ”側（配線２０の裏面側）に散乱する。
【００５２】
図３の（ｂ）に示されるように、電流Ｉｗｒ２が、図中の配線２０の“ＸＢ”側から“ＸＡ”側に向かって流れる場合において、アップスピンＳＰ１が配線２０の“ＺＢ”側に散乱し、ダウンスピンＳＰ２が配線２０の“ＺＡ”側に散乱する。
【００５３】
例えば、ＭＴＪ素子１０は、配線２０の“ＺＡ”側の面に設けられている。
【００５４】
図３の（ａ）及び（ｂ）に示されるように、配線２０に通電される電流Ｉｗｒの極性（電流の流れる向き）が反転される。これによって、配線２０上のＭＴＪ素子１０の記憶層１１に作用するスピンの向きが、反転する。
【００５５】
ＭＴＪ素子１０が図３の配線２０上に配置されることによって、スピンホール効果で発生するスピン流に起因するスピン軌道トルク（ＳＯＴ）が、ＭＴＪ素子１０の記憶層１１の磁化に印加される。
【００５６】
スピン軌道トルクとして記憶層１１に作用するスピンの向きは、配線２０内を流れる電流Ｉｗｒの向きに応じて、変わる。
【００５７】
したがって、配線２０内を流れる電流Ｉｗｒの向きを制御することによって、記憶層１１の磁化の向きを、参照層１２の磁化の向きに対して平行の向き又は反平行の向きに、制御できる。
【００５８】
本実施形態において、スピンホール効果によって、ＭＴＪ素子１０の記憶層１１の磁化の向きを、印加されるスピンの向きに応じて、変える（反転させる）ことができる。
【００５９】
スピンホール効果を用いたＭＴＪ素子の磁化反転は、トンネルバリア層１３に直接電流を流さずに、ＭＴＪ素子１０の磁化配列の制御（データの書き込み）を行うことができる。それゆえ、スピンホール効果を用いたＭＴＪ素子の磁化反転において、トンネルバリア層１３の破壊は、抑制できる。
【００６０】
また、スピンホール効果を用いたＭＴＪ素子の磁化反転において、磁化反転動作（書き込み動作）における電流の経路は、ＭＴＪ素子の抵抗状態の判定動作（読み出し動作）時における電流の経路と異なる。それゆえ、スピンホール効果を用いたＭＴＪ素子の磁化反転において、ＭＴＪ素子の抵抗状態の判定時における磁化反転は、実質的に発生しない。
【００６１】
＜電圧効果＞  
図４を用いて、本実施形態の磁気デバイスに用いられる電圧効果について、説明する。
【００６２】
本実施形態において、電圧効果（ＶＣＭＡ：Voltage-Controlled Magnetic Anisotropy）によって、書き込み電流の供給時における配線２０上のＭＴＪ素子１０の記憶層１１の磁化の反転／非反転（データの書き込み／非書き込み）を、制御できる。
【００６３】
電圧効果は、ＭＴＪ素子１０の記憶層１１と参照層１２との間に電圧を印加することにより、記憶層１１の磁気異方性（例えば、垂直磁気異方性）が変化する現象である。
【００６４】
記憶層１１の磁気異方性を変化させることによって、ＭＴＪ素子１０における平行状態（Ｐ状態）と反平行状態（ＡＰ状態）との間のエネルギー障壁が、変化する。
【００６５】
これによって、スピンホール効果によるＭＴＪ素子１０の磁化反転電流（磁化反転しきい値）Ｉｃの増加及び低減を制御できる。
【００６６】
上述のように、ＭＴＪ素子１０に、面内磁化膜が用いられる。面内磁化膜において、記憶層１１及び参照層１２の磁化の向きは、磁性層１１，１２の層面（膜面）に対して平行である。
【００６７】
面内磁化膜を用いたＭＴＪ素子１０において、記憶層１１の垂直磁気異方性エネルギーを増加させる（垂直安定状態に近づける）ように、ＭＴＪ素子１０に電圧ＶＣＮＴが印加される。これによって、記憶層１１の磁化反転しきい値Ｉｃは、低減される。
【００６８】
これとは反対に、電圧ＶＣＮＴの印加によって、記憶層１１の垂直磁気異方性エネルギーを減少させる（面内磁化をより安定化させる）場合、記憶層１１の磁化反転しきい値Ｉｃは、増加する。
【００６９】
尚、垂直磁化膜がＭＴＪ素子に用いられる場合、垂直磁化膜が用いられたＭＴＪ素子における垂直磁気異方性エネルギーと電圧との関係は、面内磁化膜が用いられたＭＴＪ素子における垂直磁気異方性エネルギーと電圧との関係と逆になる。
【００７０】
電圧の印加による磁化反転しきい値Ｉｃの増減は、ＭＴＪ素子に印加される電圧の極性に応じて、決まる。
【００７１】
例えば、一例としての面内磁化型のＭＴＪ素子において、記憶層にＣｏＦｅＢ層が用いられ、トンネルバリア層にＭｇＯ層が用いられる。
【００７２】
図４の（ａ）に示されるように、面内磁化型のＭＴＪ素子１０において、記憶層１１に正の電圧値の電圧が印加され、参照層１２に負の電圧値（又は、０Ｖ）の制御電圧ＶＣＮＴが印加された場合（参照層側の電位が、記憶層側の電位より低い場合）において、垂直磁気異方性エネルギーの増加に伴って、記憶層１１の面内磁気異方性エネルギー（磁化）は相対的に減少する。この結果として、記憶層１１の磁化反転しきい値Ｉｃが減少する。
【００７３】
図４の（ｂ）に示されるように、面内磁化型のＭＴＪ素子１０において、記憶層１１に負の電圧値（又は、０Ｖ）の電圧が印加され、参照層１２に正の電圧値の制御電圧ＶＣＮＴが印加された場合（参照層側の電位が、記憶層側の電位より高い場合）において、垂直磁気異方性エネルギーの減少に伴って、記憶層１１の面内磁気異方性エネルギーは相対的に増加する。この結果として、記憶層１１の磁化反転しきい値Ｉｃが増加する。
【００７４】
このように、ＭＴＪ素子に対する制御電圧の印加による電圧効果によって、記憶層１１の磁化反転しきい値Ｉｃの大きさを制御できる。
【００７５】
この結果として、実施形態の磁気デバイスは、電圧効果による記憶層１１の磁化反転しきい値Ｉｃの変化を考慮して書き込み電流の電流値を設定することによって、書き込み電流の供給時におけるＭＴＪ素子の磁化反転／非反転を、制御電圧ＶＣＮＴの印加によって制御できる。
【００７６】
＜磁化反転動作＞  
上述の図２乃至図４を用いて説明された現象／原理に基づいて、本実施形態の磁気デバイスにおいて、磁気抵抗効果素子の磁化反転動作（書き込み動作、スイッチング動作）を実行できる。
【００７７】
図５は、本実施形態の磁気論理回路の磁化反転動作の基本例を説明するための模式図である。
【００７８】
図５の（ａ）及び（ｂ）に示されるように、ＭＴＪ素子１０の記憶層１１の磁化が反転される場合、記憶層１１の磁化反転しきい値Ｉｃが電圧効果によって減少するように、所定の極性及び電圧値の制御電圧ＶＣＮＴが、ＭＴＪ素子１０に印加される。
【００７９】
図５の（ａ）に示されるように、ＭＴＪ素子１０の磁化配列が、Ｐ状態からＡＰ状態に変更される場合、ＭＴＪ素子１０の参照層１２側の電位が記憶層１１側の電位より低くなるように、負の電圧値Ｖａの制御電圧ＶＣＮＴが、ＭＴＪ素子１０の参照層１２に、印加される。
【００８０】
例えば、書き込み電流Ｉｗｒ１が配線２０の一端ＸＡ側から他端ＸＢ側に向かって流れるように、書き込み電流Ｉｗｒ１が、配線２０に供給される。
【００８１】
書き込み電流Ｉｗｒ１によって配線２０内で発生したスピン流によって、記憶層１１の磁化の向きは、反転する。
【００８２】
これによって、配線２０上のＭＴＪ素子１０に対して、ＭＴＪ素子１０の磁化配列は、ＡＰ状態に設定される。
【００８３】
尚、ＡＰ状態の磁化配列を有するＭＴＪ素子１０に、書き込み電流Ｉｗｒ１が供給されても、ＭＴＪ素子１０は、ＡＰ状態の磁化配列を維持する。
【００８４】
図５の（ｂ）に示されるように、ＭＴＪ素子１０の磁化配列が、ＡＰ状態からＰ状態に変更される場合、ＭＴＪ素子１０の参照層１２側の電位が記憶層１１側の電位より低くなるように、負の電圧値Ｖａの制御電圧ＶＣＮＴが、ＭＴＪ素子１０の参照層１２に、印加される。
【００８５】
例えば、書き込み電流Ｉｗｒ２が配線２０の他端ＸＢ側から一端ＸＡ側に向かって流れるように、書き込み電流Ｉｗｒ２が、配線２０に供給される。  
書き込み電流Ｉｗｒ２によって配線２０内で発生したスピン流によって、記憶層１１の磁化の向きは、反転する。
【００８６】
これによって、配線２０上のＭＴＪ素子１０に対して、ＭＴＪ素子１０の磁化配列は、Ｐ状態に設定される。
【００８７】
尚、Ｐ状態の磁化配列を有するＭＴＪ素子１０に、書き込み電流Ｉｗｒ２が供給されても、ＭＴＪ素子１０は、Ｐ状態の磁化配列を維持する。
【００８８】
図５の（ｃ）に示されるように、書き込み電流Ｉｗｒが配線２０に供給された場合において、ＭＴＪ素子１０に対する制御電圧ＶＣＮＴの印加によって、ＭＴＪ素子１０における記憶層１１の磁化反転を防止できる。
【００８９】
記憶層１１の磁化反転しきい値Ｉｃが電圧効果によって増加するように、所定の極性及び電圧値の制御電圧ＶＣＮＴが、ＭＴＪ素子１０に印加される。
【００９０】
書き込み電流Ｉｗｒの供給時にＭＴＪ素子１０の記憶層１１の磁化の向きを反転させない場合、ＭＴＪ素子１０の参照層１２側の電位が記憶層１１側の電位より高くなるように、正の電圧値（又は０Ｖ）Ｖｄの制御電圧ＶＣＮＴが、ＭＴＪ素子１０の参照層１２に、印加される。
【００９１】
これによって、書き込み電流Ｉｗｒに起因するスピン流が配線２０内に発生したとしても、ＭＴＪ素子１０において、記憶層１１の磁化反転は、生じない。
【００９２】
このように、書き込み電流が流れる向き及び制御電圧の印加によって、ＭＴＪ素子の磁化配列の変化（データの書き込み）が、制御される。
【００９３】
例えば、ＭＴＪ素子１０の磁化配列がＡＰ状態である場合、ＭＴＪ素子１０は、“１”データ保持状態であると定義される。ＭＴＪ素子の磁化配列がＰ状態である場合、ＭＴＪ素子１０は、“０”データ保持状態であると定義される。
【００９４】
以下において、ＭＴＪ素子１０を“１”データ保持状態に設定するための書き込み電流は、“１”プログラム電流とよばれる。ＭＴＪ素子１０を“０”データ保持状態に設定するための書き込み電流は、“０”プログラム電流とよばれる。
【００９５】
以下において、書き込み電流の供給時においてＭＴＪ素子の磁化反転を生じさせるための電圧値を有する制御電圧は、選択電圧とよばれる。書き込み電流の供給時においてＭＴＪ素子の磁化反転を抑制するための電圧値を有する制御電圧は、非選択電圧とよばれる。
【００９６】
以下において、ＭＴＪ素子の磁化反転動作の結果は、プログラム結果ともよばれる。
【００９７】
（３）  論理素子  
図６及び図７を用いて、本実施形態の磁気デバイスにおける、磁気抵抗効果素子（ＭＴＪ素子）を用いた論理素子について、説明する。
【００９８】
配線２０上のＭＴＪ素子１０は、２入力の論理素子として、機能する。
【００９９】
２入力の論理素子に関して、書き込み電流の供給前のＭＴＪ素子が保持しているデータ（以下では、保持データとよぶ）が一方の入力信号とみなされ、制御電圧ＶＣＮＴが他方の入力信号とみなされる。
【０１００】
図６及び図７において、一方の入力信号としての保持データは、“ＭＤ”と表記され、他方の入力信号としての制御電圧ＶＣＮＴの電圧値は、“ＣＮＴ”と表記される。
【０１０１】
本実施形態において、制御電圧ＶＣＮＴの負の電圧値（選択電圧）Ｖａは、“１”の信号ＣＮＴに対応し、制御電圧ＶＣＮＴの正の電圧値又は０Ｖ（非選択電圧）Ｖｄは、“０”の信号ＣＮＴに相当する。制御電圧ＶＣＮＴの電圧値において、電圧値Ｖａと電圧値Ｖｄとは、互いに相補の関係を有する。
【０１０２】
図６は、本実施形態の磁気デバイスにおける、ＭＴＪ素子を用いた論理素子の動作（論理演算）を説明するための図である。
【０１０３】
図６の（ａ）は、論理素子における複数の信号を説明するための模式図である。
【０１０４】
図６の（ａ）に示されるように、あるデータＭＤを保持するＭＴＪ素子１０において、制御電圧ＶＣＮＴの電圧値ＣＮＴが制御されると共に、書き込み電流Ｉｗｒ０が、配線２０内に供給される。
【０１０５】
書き込み電流Ｉｗｒ０は、“０”プログラム電流である。“０”プログラム電流は、配線２０の端子ＸＢから端子ＸＡへ向かう方向に流れる。
【０１０６】
“０”プログラム電流Ｉｗｒ０が配線２０に供給された場合において、制御電圧ＶＣＮＴ及び保持データＭＤに応じた記憶層１１の磁化の向きが、プログラム結果ＰＲとなる。
【０１０７】
図６の（ｂ）は、“０”プログラム電流Ｉｗｒ０がＭＴＪ素子１０に供給された場合における２つの信号ＭＤ，ＣＮＴとプログラム結果ＰＲとの関係を示している。
【０１０８】
図６の（ｂ）に示されるように、“０”プログラム電流Ｉｗｒ０が供給されたＭＴＪ素子１０において、保持データＭＤが“０”（Ｐ状態）であり、制御電圧ＶＣＮＴの電圧値ＣＮＴが“０”（非選択電圧Ｖｄ）である場合、プログラム結果ＰＲは“０”となる。  
保持データＭＤが“０”であり、制御電圧ＶＣＮＴの電圧値ＣＮＴが“１”（選択電圧Ｖａ）である場合、プログラム結果ＰＲは“０”となる。  
保持データＭＤが“１”（ＡＰ状態）であり、制御電圧ＣＮＴの電圧値が“０”である場合、プログラム結果ＰＲは“１”となる。  
保持データＭＤが“１”であり、制御電圧ＣＮＴの電圧値が“１”である場合、プログラム結果ＰＲは“０”となる。
【０１０９】
図６の（ｃ）は、図６の（ｂ）における２つの入力に対するプログラム結果（真理値表）を得ることが可能な論理回路の一例を示す等価回路図である。
【０１１０】
“０”プログラム電流Ｉｗｒ０が供給された場合、図６の（ｂ）のプログラム結果ＰＲは、制御電圧ＶＣＮＴの電圧値ＣＮＴの反転電位ｂＣＮＴと保持データＭＤとの論理積（ＡＮＤ演算）の計算結果に相当する。
【０１１１】
図６の（ｃ）に示されるように、保持データＭＤが、ＡＮＤゲート５０の一方の入力端子に供給された信号とみなされる。制御電圧ＶＣＮＴの電圧値（信号）ＣＮＴが、インバータ５１を介して、ＡＮＤゲート５０の他方の入力端子に供給された信号とみなされる。
【０１１２】
ＡＮＤゲート５０は、保持データＭＤと信号ｂＣＮＴとを用いた論理積演算を、実行する。  
ＡＮＤゲート５０は、２つの信号ＭＤ，ｂＣＮＴに対する計算結果を示す信号（プログラム結果）ＰＲを、出力する。
【０１１３】
このように、図６の（ｃ）の論理回路は、図６の（ａ）及び（ｂ）の磁化反転動作の結果ＰＲと実質的に同じ計算結果を得ることができる。
【０１１４】
したがって、配線２０上のＭＴＪ素子１０を含むセルＬＣに対する“０”プログラム電流Ｉｗｒ０の供給によって、ＡＮＤ演算を実行できる。
【０１１５】
図７の（ａ）は、論理素子における複数の信号を説明するための模式図である。
【０１１６】
図７の（ａ）に示されるように、あるデータＭＤを保持するＭＴＪ素子１０において、制御電圧ＶＣＮＴの電圧値ＣＮＴが制御されると共に、書き込み電流Ｉｗｒ１が、配線２０内に供給される。
【０１１７】
書き込み電流Ｉｗｒ１は、“１”プログラム電流である。“１”プログラム電流は、配線２０の端子ＸＡから端子ＸＢへ向かう方向に流れる。
【０１１８】
“０”プログラム電流Ｉｗｒ０が配線２０に供給された場合において、制御電圧ＶＣＮＴ及び保持データＭＤに応じた記憶層１１の磁化の向きが、プログラム結果ＰＲとなる。
【０１１９】
図７の（ｂ）は、“１”プログラム電流Ｉｗｒ１がＭＴＪ素子１０に供給された場合における２つの信号ＭＤ，ＣＮＴとプログラム結果ＰＲとの関係を示している。
【０１２０】
図７の（ｂ）に示されるように、保持データＭＤが“０”（Ｐ状態）であり、制御電圧の電圧値ＣＮＴが“０”（非選択電圧Ｖｄ）である場合、プログラム結果ＰＲは、“０”となる。  
保持データＭＤが“０”であり、制御電圧ＣＮＴが“１”（選択電圧Ｖａ）である場合、プログラム結果ＰＲは、“１”となる。  
保持データＭＤが“１”（ＡＰ状態）であり、制御電圧ＣＮＴが“０”である場合、プログラム結果ＰＲは、“１”となる。  
保持データＭＤが“１”であり、制御電圧ＣＮＴが“１”である場合、プログラム結果ＰＲは、“１”となる。
【０１２１】
図７の（ｃ）は、図７の（ｂ）における２つの入力に対するプログラム結果（真理値表）を得ることが可能な論理回路の一例を示す等価回路図である。
【０１２２】
“１”プログラム電流Ｉｗｒ１が、配線２０に供給された場合、図７の（ｂ）のプログラム結果ＰＲは、制御電圧ＶＣＮＴの電圧値（信号）ＣＮＴと保持データＭＤとの論理和（ＯＲ演算）の計算結果に相当する。
【０１２３】
図７の（ｃ）に示されるように、保持データＭＤが、ＯＲゲート５０の一方の入力端子に供給される。制御電圧ＶＣＮＴの電位ＣＮＴが、ＯＲゲート５５の他方の入力端子に供給される。
【０１２４】
ＯＲゲート５５は、保持データＭＤと信号ｂＣＮＴとを用いた論理和演算を、実行する。  
これによって、ＯＲゲート５５は、２つの信号ＭＤ，ＣＮＴに対する計算結果を示す信号ＰＲを、出力する。
【０１２５】
このように、図７の（ｃ）の論理回路は、図７の（ｂ）の計算処理を実行できる。
【０１２６】
したがって、配線２０上のＭＴＪ素子１０を含むセルに対する“１”プログラム電流Ｉｗｒ１の供給によって、ＯＲ演算を実行できる。
【０１２７】
図６及び図７に示されるように、本実施形態において、磁気抵抗効果素子（ＭＴＪ素子）を用いて、論理回路を形成できる。
【０１２８】
（４）  効果  
本実施形態の磁気デバイスにおいて、配線上のＭＴＪ素子の磁化反転動作は、電圧効果のための制御電圧が参照層に印加された状態で、配線内のスピンホール効果に起因するスピン流を記憶層に供給するによって、実行される。
【０１２９】
このような動作原理を適用することによって、ＭＴＪ素子１０は、メモリ素子としての機能と共に、論理素子としての機能を実現できる。
【０１３０】
この結果として、本実施形態の磁気デバイスは、システムの論理演算を高速化できる。
【０１３１】
（５）  適用例  
図８乃至図４４を参照して、本実施形態の磁気デバイス（スピントロニクスデバイス）の適用例について、説明する。
【０１３２】
（ａ）  構成例  
図８乃至図９を用いて、本実施形態の磁気デバイスの構成例について説明する。
【０１３３】
図８は、本実施形態の磁気デバイスを含むシステムの一例を示すブロック図である。
【０１３４】
図８に示されるように、システムＳＹＳは、例えば、本実施形態の磁気デバイス１、コントローラ５及びホストデバイス９００を含む。例えば、システムＳＹＳは、計算機システムである。
【０１３５】
本実施形態の磁気デバイス１は、複数の磁気抵抗効果素子（ＭＴＪ素子）１０を含む。本実施形態の磁気デバイス１は、データを用いた計算処理を実行する回路（又はその機能ユニット）Ａ１、及び、データ及び／又はデータに対する計算処理の結果を記憶する回路（又はその機能ユニット）Ａ２を含む。ＭＴＪ素子１０は、回路Ａ１及び回路Ａ２内に設けられている。
【０１３６】
本実施形態の磁気デバイス１は、メモリ機能を有する磁気論理演算回路、又は、論理演算機能を有する磁気メモリである。
【０１３７】
本実施形態の磁気デバイス１は、コントローラ５に直接的又は間接的に接続されている。コントローラ５は、接続端子、コネクタ、ケーブル又は無線通信を介して、ホストデバイス９００に直接的又は間接的に結合されている。
【０１３８】
ホストデバイス９００は、コントローラ５を介して、データの書き込み（記憶）、データの読み出し、及びデータの計算処理などの各種の動作を、磁気デバイス１に要求できる。
【０１３９】
コントローラ５は、磁気デバイス１の動作を制御できる。コントローラ５は、処理回路、内蔵メモリ及びＥＣＣ回路などを含む。
【０１４０】
コントローラ５は、ホストデバイス９００からの要求に基づいて、コマンドを生成する。コントローラ５は、生成したコマンドを、磁気デバイス１に送信する。  
磁気デバイス１は、コントローラ５からのコマンドに対応する動作を実行する。
【０１４１】
例えば、コントローラ５は、ホストデバイス９００からの要求がデータの書き込みである場合において、書き込みコマンドを磁気デバイスに送信する。
【０１４２】
コントローラ５は、書き込みコマンドと共に、データを書き込むべきアドレス（メモリセルのアドレス）、書き込むべきデータ、及び、制御信号を送信する。磁気デバイス１は、書き込みコマンド及び制御信号に基づいて、書き込むべきデータを、回路Ａ２内の選択されたアドレスに書き込む。
【０１４３】
例えば、コントローラ５は、ホストデバイス９００からの要求がデータの読み出しである場合において、読み出しコマンドを磁気デバイス１に送信する。コントローラ５は、読み出しコマンドと共に、データを読み出すべきアドレス及び制御信号を送信する。磁気デバイス１は、読み出しコマンド及び制御信号に基づいて、回路Ａ２内の選択されたアドレスから、データを読み出す。磁気デバイス１は、読み出されたデータを、コントローラ５に送信する。コントローラ５は、磁気デバイス１からのデータを受信する。コントローラ５は、磁気デバイス１からのデータを、ホストデバイス９００に送信する。
【０１４４】
例えば、コントローラ５は、ホストデバイス９００からの要求が計算処理である場合において、計算コマンドを磁気デバイス１に送信する。コントローラ５は、計算コマンドと共に、計算すべきデータと、回路Ａ２内における計算対象のデータが記憶されたアドレス、及び、制御信号を送信する。磁気デバイス１は、計算コマンド及び制御信号に基づいて、回路Ａ１を用いて、データに対する計算処理を実行する。磁気デバイス１は、計算結果（データ）を記憶する、及び／又は、コントローラ５に送信する。コントローラ５は、計算結果を受信する。コントローラ５は、磁気デバイス１からの計算結果を、ホストデバイス９００に送信する。
【０１４５】
このように、磁気デバイス１は、計算機システムＳＹＳ内において、他のデバイス９００，５からの要求及びコマンドによって、所定の動作を実行する。
【０１４６】
例えば、磁気デバイス１及びコントローラ５は、プロセッサ５００内に設けられている。プロセッサ５００は、ホストデバイス９００に電気的に結合されている。複数の磁気デバイス１が、プロセッサ５００内に設けられてもよい。以下において、コントローラ５及びホストデバイス９００の少なくとも一方は、外部デバイスとよばれる。
【０１４７】
例えば、ホストデバイス９００は、携帯端末、スマートフォン、ゲーム機器、プロセッサ、サーバ、及び、パーソナルコンピュータなどから選択される少なくとも１つのデバイスである。
【０１４８】
尚、本実施形態の磁気デバイス１は、コントローラ５内又はホストデバイス９００内のデバイスでもよい。この場合において、磁気デバイス１は、コントローラ５内のＣＰＵ、又は、ホストデバイス９００内のＣＰＵによって、制御される。コントローラ５は、ホストデバイス９００内に設けられてもよい。プロセッサ５００は、ホストデバイス９００内に設けられてもよい。
【０１４９】
図９は、本実施形態の磁気デバイスの内部構成を示すブロック図である。  
図９に示されるように、本実施形態の磁気デバイス１は、セルアレイ１００、ロウ制御回路１１０、カラム制御回路１２０、デコード回路１３０、書き込み回路１４０、読み出し回路１５０、Ｉ／Ｏ回路１６０、計算制御回路１７０、電圧生成回路１８０、及び、制御回路１９０などを含む。
【０１５０】
本実施形態において、セルアレイ１００は、メモリ領域１０１と、計算処理領域１０２とを含む。
【０１５１】
セルアレイ１００の各領域１０１，１０２において、複数のセルストリング（複数の制御単位）ＭＳが、配置される。
【０１５２】
各セルストリングＭＳは、複数のＭＴＪ素子１０を含む。セルストリングＭＳにおいて、複数のＭＴＪ素子１０は、共通の配線２０に接続されている。セルストリングＭＳにおいて、複数のＭＴＪ素子１０は、例えば、互いに異なるビット線ＢＬに接続されている。  
セルストリングＭＳの構成の詳細は、後述される。
【０１５３】
メモリ領域１０１内のＭＴＪ素子１０は、データの記憶のために用いられる。  
計算処理領域（又は、レジスタ領域ともよばれる）１０２内のＭＴＪ素子１０は、論理素子として用いられる。論理素子としてのＭＴＪ素子１０は、メモリ領域１０１内のデータ及び外部からのデータの少なくとも一方の計算処理のために、用いられる。
【０１５４】
ロウ制御回路１１０は、セルアレイ１００の複数のロウを制御する。ロウ制御回路１１０に、デコード回路１３０からのアドレスＡＤＲのロウアドレスのデコード結果が供給される。ロウ制御回路１１０は、ロウアドレスのデコード結果に基づいたロウ（例えば、配線２０）を、選択状態に設定する。以下において、選択状態に設定されたロウは、選択ロウとよばれる。選択ロウ以外のロウは、非選択ロウとよばれる。
【０１５５】
カラム制御回路１２０は、セルアレイ１００の複数のカラムを制御する。カラム制御回路１２０に、デコード回路１３０からのアドレスＡＤＲのカラムアドレスのデコード結果が供給される。カラム制御回路１２０は、カラムアドレスのデコード結果に基づいたカラム（例えば、ビット線ＢＬ）を、選択状態に設定する。以下において、選択状態に設定されたカラムは、選択カラムとよばれる。選択カラム以外のカラムは、非選択カラムとよばれる。
【０１５６】
デコード回路１３０は、Ｉ／Ｏ回路１６０からのアドレスＡＤＲをデコードする。デコード回路１３０は、アドレスＡＤＲのデコード結果を、ロウ制御回路１１０及びカラム制御回路１２０にそれぞれ供給する。アドレスＡＤＲは、選択されるロウアドレス及び選択されるカラムアドレスを、含む。
【０１５７】
書き込み回路（書き込み制御回路又は書き込みドライバともばれる）１４０は、書き込み動作（データの書き込み）のための各種の制御を行う。書き込み回路１４０は、書き込み動作時において、書き込み電流（プログラム電流）を、セルストリングＭＳに供給する。書き込み回路１４０は、書き込み動作時において、ビット線ＢＬの電位（制御電圧ＶＣＮＴの電圧値）を制御する。これによって、書き込み回路１４０は、領域１０１内のＭＴＪ素子１０にデータを書き込む。  
書き込み回路１４０は、計算動作時において、書き込み動作と実質的に同様に、ビット線ＢＬの電位を制御し、計算動作のための電流を、領域１０２内のセルストリングＭＳに供給する。
【０１５８】
例えば、書き込み回路１４０は、電圧源（又は電流源）、ラッチ回路などを有する。
【０１５９】
読み出し回路（読み出し制御回路又は読み出しドライバともよばれる）１５０は、読み出し動作（データの読み出し）のための各種の制御を行う。読み出し回路１５０は、読み出し動作時において、ビット線ＢＬの電位又は電流を制御する。これによって、読み出し回路１５０は、領域１０１内のＭＴＪ素子１０内のデータを読み出す。  
読み出し回路１５０は、計算動作時において、読み出し動作と実質的に同様に、ビット線ＢＬの電位又は電流を制御することによって、領域１０１，１０２内のセルストリングＭＳのデータを、読み出す。
【０１６０】
例えば、読み出し回路１５０は、電圧源（又は電流源）、ラッチ回路、センスアンプ回路などを有する。
【０１６１】
尚、書き込み回路１４０及び読み出し回路１５０は、互いに独立な回路に限定されない。例えば、書き込み回路１４０と読み出し回路１５０とは、相互に利用可能な共通な構成要素を有し、１つの統合的な回路として提供されてもよい。
【０１６２】
Ｉ／Ｏ回路（入出力回路）１６０は、磁気デバイス１内における各種の信号の送受信のためのインターフェイス回路である。
【０１６３】
Ｉ／Ｏ回路１６０は、書き込み動作時において、外部デバイス（例えば、コントローラ５）からの書き込みデータＤＴを、書き込み回路１４０に転送する。Ｉ／Ｏ回路１６０は、読み出し動作時において、セルアレイ１００から読み出し回路１５０へ出力されたデータＤＴを、読み出しデータとして、外部デバイスへ転送する。Ｉ／Ｏ回路１６０は、計算処理動作において、計算処理のためのデータＤＴを、計算制御回路１７０に転送する。Ｉ／Ｏ回路１６０は、計算結果のデータＤＴを、外部デバイスへ転送する。
【０１６４】
Ｉ／Ｏ回路１６０は、外部デバイスからのアドレスＡＤＲを、デコード回路１３０に転送する。Ｉ／Ｏ回路１６０は、外部デバイスからのコマンドＣＭＤを、制御回路１９０に転送する。Ｉ／Ｏ回路１６０は、様々な制御信号ＣＳを、制御回路１９０と外部デバイスとの間で送受信する。
【０１６５】
計算制御回路１７０は、計算処理を実行するための様々な回路を含む。計算制御回路１７０は、インバータ回路、センスアンプ回路、及び、ビットシフト回路（シフトレジスタ）などを含む。例えば、本実施形態の磁気デバイス１は、後述のように、計算制御回路１７０の制御によって、加算処理、減算処理、乗算処理及び除算処理などを実行できる。
【０１６６】
電圧生成回路１８０は、外部デバイスから供給された電源電圧を用いて、セルアレイ１００の各種の動作のための電圧を生成する。
【０１６７】
電圧生成回路１８０は、書き込み動作／読み出し動作／計算動作時において、生成された様々な電圧を、書き込み回路１４０、読み出し回路１５０及び計算制御回路１７０に出力する。
【０１６８】
制御回路（ステートマシーン、シーケンサまたは内部コントローラともよばれる）１９０は、制御信号ＣＳ及びコマンドＣＭＤに基づいて、磁気デバイス１内の各回路の動作を制御する。
【０１６９】
例えば、コマンドＣＭＤは、磁気デバイス１が実行すべき動作を示す信号である。例えば、制御信号ＣＳは、外部デバイスと磁気デバイス１との間の動作タイミング及び磁気デバイス１の内部の動作タイミングを制御するための信号である。
【０１７０】
例えば、メモリ領域１０１が、回路Ａ１に対応する。計算処理領域１０２及び計算制御回路１７０が、回路Ａ２に対応する。
【０１７１】
＜セルストリングの構成例＞  
図１０及び図１１を参照して、本実施形態の磁気デバイスのセルストリングの内部構成について説明する。
【０１７２】
図１０は、本実施形態の磁気デバイスのセルストリングの基本的な構成を説明するための鳥瞰図である。
【０１７３】
図１０に示されるように、セルストリングＭＳにおいて、複数のＭＴＪ素子１０が、共通の配線２０上に、Ｘ方向に配列されている。配線２０は、Ｘ方向に延在する。複数のＭＴＪ素子１０は、共通の配線２０に電気的に接続されている。以下では、配線２０は、共通配線２０ともよばれる。
【０１７４】
Ｘ方向における配線２０の一端に、端子ＸＡが設けられ、Ｘ方向における配線２０の他端に、端子ＸＢが設けられている。
【０１７５】
セルストリングＭＳに対する動作の制御のために、複数のトランジスタＴＡ，ＴＢ，ＴＣが、セルストリングＭＳに接続されている。
【０１７６】
例えば、トランジスタＴＡの電流経路の一方の端子（ソース／ドレインの一方）は、配線２０の端子ＸＡに接続されている。  
トランジスタＴＢの電流経路の一方の端子は、配線２０の端子ＸＢに接続されている。
【０１７７】
複数のトランジスタＴＣは、複数のＭＴＪ素子１０に１対１で対応するように、設けられている。１つのトランジスタＴＣの電流経路の一方の端子は、対応する１つのＭＴＪ素子１０の参照層１２に接続されている。１つのトランジスタＴＣの電流経路の他方の端子（ソース／ドレインの他方）は、対応する１つのビット線ＢＬに接続されている。
【０１７８】
各トランジスタＴＡのゲートに、トランジスタＴＡのオン／オフを制御するために、ある電圧値のゲート電圧（制御信号）が、印加される。  
各トランジスタＴＢのゲートに、トランジスタＴＢのオン／オフを制御するために、ある電圧値のゲート電圧が、印加される。  
各トランジスタＴＣのゲートに、トランジスタＴＣのオン／オフを制御するために、ある電圧値のゲート電圧が、印加される。
【０１７９】
トランジスタＴＡ，ＴＢ，ＴＣは、セルストリングＭＳ及びＭＴＪ素子（メモリセル）１０を活性化（選択）するための素子として機能する。
【０１８０】
計算処理領域１０２内のセルストリングＭＳは、メモリ領域１０１内のセルストリングＭＳと実質的に同じ構成を有している。
【０１８１】
図１１は、本実施形態の磁気デバイスのセルストリングを含むセルアレイの一例を示す等価回路図である。
【０１８２】
図１１に示されるように、複数のセルストリングＭＳが、セルアレイ１００のメモリ領域１０１及び計算処理領域１０２内に設けられている。複数のセルストリングＭＳは、Ｙ方向に配列されている。
【０１８３】
セルアレイ１００内に、複数の配線２０（２０−１,・・・，２０−ｍ）が配置されている。複数の配線２０は、セルストリングＭＳごとに分離されている。
【０１８４】
セルアレイ１００内に、複数の配線ＢＬ（ＢＬ−１，ＢＬ−２，・・・，ＢＬ−ｎ），２９（２９−１，２９−２，・・・，２９−ｎ）が配置されている。配線ＢＬ，２９は、メモリ領域１０１及び計算処理領域１０２内のＹ方向に配列された複数のセルストリングＭＳに共有に接続されている。セルアレイ１００内に、複数のＭＴＪ素子１０に対応するように、複数のトランジスタＴＣ（ＴＡ−１，ＴＣ−２・・・，ＴＡ−ｎ）が、配置されている。ｎは、１以上の整数である。
【０１８５】
複数のＭＴＪ素子１０は、Ｘ方向及びＹ方向に配列されている。
【０１８６】
各セルストリングＭＳにおいて、Ｘ方向に配列された複数のＭＴＪ素子１０（１０−１，１０−２，・・・，１０−ｎ）は、配線２０（２０−１，・・・，２０−ｍ）に接続されている。ｍは、１以上の整数である。
【０１８７】
ＭＴＪ素子１０の一端は、配線２０に接続されている。ＭＴＪ素子１０の他端は、対応するトランジスタＴＣの電流経路を介して、複数の配線（ビット線）ＢＬのうち対応する１つに接続されている。トランジスタＴＣのゲートは、複数の配線（制御線）２９のうち対応する１つに接続されている。
【０１８８】
Ｙ方向に配列された複数のＭＴＪ素子１０は、ビット線ＢＬに共通に接続される。
【０１８９】
セルアレイ１００内に、配線ＳＬ，ＡＬが、配置されている。セルアレイ１００内に、複数のセルストリングＭＳに対応するように、複数のトランジスタＴＡ（ＴＡ−１，・・・，ＴＡ−ｍ）が、配置されている。セルアレイ１００は、複数のセルストリングＭＳに対応するように、複数のトランジスタＴＢ（ＴＢ−１，・・・，ＴＢ−ｍ）を含む。
【０１９０】
配線ＳＬ，ＡＬは、メモリ領域１０１及び計算処理領域１０２の複数のセルストリングＭＳに共通に接続されている。配線（ソース線）ＳＬは、トランジスタＴＢの電流経路を介して、配線２０の端子ＸＢに接続されている。配線（アクセス線）ＡＬは、トランジスタＴＡの電流経路を介して、配線２０の端子ＸＡに接続されている。
【０１９１】
セルアレイ１００内に、複数の配線２１（２１−１，・・・，２１−ｍ）が配置されている。配線２１は、セルストリングＭＳごとに設けられている。配線２１は、対応するセルストリングＭＳのトランジスタＴＡ，ＴＢのゲートに接続されている。
【０１９２】
配線２１の電位（ゲート電圧の電圧値）が制御されることによって、トランジスタＴＡ，ＴＢがオン又はオフされる。これによって、複数のセルストリングＭＳのうち少なくとも１つ（例えば、１以上のロウ）が、選択される。
【０１９３】
配線２９の電位が制御されることによって、トランジスタＴＣがオン又はオフされる。これによって、セルアレイ１００のカラム（１つ又は複数のカラム）が、選択される。
【０１９４】
書き込み動作時において、配線ＳＬ，ＡＬの電位（電流のソース／シンク）が制御されることによって、配線２０に対する電流（又は電圧）の供給が、制御される。例えば、配線２０に流す電流の向きに応じて、２つの配線ＳＬ，ＡＬのうち、一方の配線が、高電位（例えば、正の電位、電流ソース側）に設定され、他方の配線が低電位（例えば、グランド電圧、電流シンク側）に設定される。読み出し動作時において、配線ＳＬ，ＡＬは、０Ｖの印加状態、又は、フローティング状態に設定される。
【０１９５】
書き込み動作時において、配線ＢＬの電位が制御されることによって、所定の極性及び電圧値を有する電圧が、ＭＴＪ素子１０の参照層１２に印加される。読み出し動作時において、選択された配線ＢＬを流れる電流、又は、選択された配線ＢＬの電位が、センスされることによって、ＭＴＪ素子１０内のデータが、判別される。
【０１９６】
各配線ＢＬ，ＳＬ，ＡＬ，２０，２１，２９の制御は、実行すべき動作に応じて、ロウ制御回路１１０、カラム制御回路１２０、書き込み回路１４０、読み出し回路１５０及び計算制御回路１７０によって、行われる。
【０１９７】
尚、セルストリングＭＳを用いたセルアレイ１００の回路構成は、図１１に示される例に限定されない。
【０１９８】
図１０及び図１１のような複数のＭＴＪ素子１０が１つの配線２０上に配置された構造において、配線２０に供給された書き込み電流Ｉｗｒによるスピンホール効果によって、書き込み動作及び計算動作が、複数のＭＴＪ素子１０に一括に実行できる。
【０１９９】
図１０のセルストリングにおいて、書き込み電流Ｉｗｒが配線２０内に流される場合、メモリ領域１０１内の配線２０上の複数のＭＴＪ素子１０において、記憶層１１の磁化を反転させる素子（選択素子）と記憶層１１の磁化を反転させない素子（非選択素子）とが存在する場合がある。
【０２００】
本実施形態の磁気デバイス１において、上述の図５のように、制御電圧ＶＣＮＴの印加（電圧効果）による記憶層１１の磁化反転しきい値の変化によって、記憶層１１の磁化の反転／非反転が、制御される。同じ配線２０上に配列された複数のＭＴＪ素子１０のうち、選択素子の記憶層１１の磁化反転しきい値Ｉｃが、図５の（ａ）の電位状態によって書き込み電流Ｉｗｒの電流値以下の値に設定され、非選択素子の記憶層１１の磁化反転しきい値Ｉｃが、図５の（ｂ）の電位状態によって書き込み電流Ｉｗｒの電流値よりも大きな値に設定される。
【０２０１】
書き込み電流Ｉｗｒの電流値が、電圧効果による記憶層１１の磁化反転しきい値の変動を考慮して設定されることによって、本実施形態の磁気デバイスは、同じ配線２０上に配列された複数のＭＴＪ素子１０に対して、選択的に、記憶層１１の磁化を反転させることができる。
【０２０２】
これによって、本実施形態の磁気デバイス１において、１ビット当たりの消費エネルギー（例えば、消費電力）の低減とセルサイズの微細化とが、実現できる。
【０２０３】
本実施形態のようなスピンホール効果及び電圧効果を利用した磁気デバイス（スピントロニクスデバイス）において、磁気メモリ（スピンメモリ）は、Voltage Control Spintronics Memory（ＶｏＣＳＭ）とよばれる。また、本実施形態において、スピンホール効果及び電圧効果を利用した磁気論理回路は、Voltage Control Spintronics Logic（ＶｏＣＳＬ）とよばれる。
【０２０４】
＜計算制御回路の構成例＞  
図１２は、本実施形態の磁気デバイスにおける、計算制御回路の構成例を示す等価回路図である。
【０２０５】
図１２に示されるように、計算制御回路１７０は、センスアンプ回路１７１、ビットシフト回路１７２、及び、インバータ回路１７３を含む。
【０２０６】
各回路１７１，１７２，１７３は、ビット線ＢＬを介して、メモリ領域１０１内のセルストリングＭＳ及び計算処理領域１０２のセルストリングＭＳ−Ｒに、共通に接続される。
【０２０７】
例えば、セルストリングに対する実行すべき動作に応じて、スイッチ回路（図示せず）が、複数の回路１７１，１７２，１７３のうちいずれか１つをビット線ＢＬに接続するように、計算制御回路１７０が構成されてもよい。また、計算制御回路１７０は、カラム制御回路１２０を介して、セルアレイ１００に接続されてもよい。
【０２０８】
センスアンプ回路１７１は、複数のセンスアンプユニットＳＵを含む。
【０２０９】
センスアンプユニットＳＵは、ビット線ＢＬに１対１で対応する。１つのセンスアンプユニットＳＵが、１つのビット線ＢＬに接続される。
【０２１０】
センスアンプユニットＳＵは、ビット線ＢＬの電位、及び／又は、ビット線ＢＬに発生した電流を、センスできる。センスアンプユニットＳＵは、センスした信号を増幅できる。センスアンプユニットＳＵは、ビット線ＢＬを充電及び放電できる。
【０２１１】
センスアンプ回路１７１の動作は、制御回路１９０からの制御信号ＳＥＮによって制御される。
【０２１２】
なお、センスアンプ回路１７１は、計算制御回路１７０と読み出し回路１５０とによって共通化されてもよい。
【０２１３】
ビットシフト回路１７２は、各ビット線ＢＬから受信した信号を、左側（配線２０のＸＢ側）又は右側（配線２０のＸＡ側）にシフトさせる。ビットシフト回路１７２は、シフトされた信号をビット線ＢＬに出力する。ビットシフト回路１７２は、２進数のデータのビットシフトにおいて、上位ビットへのｋ回のシフト（左シフト）によって、データの値を２ｋ倍にできる。ビットシフト回路１７２は、２進数のデータのビットシフトにおいて、下位ビットへのｋ回のシフト（右シフト）によって、データの値を１／２ｋ倍にできる。
【０２１４】
ビットシフト回路１７２の動作は、制御回路１９０からの制御信号ＢＳによって制御される。ビットシフト回路１７２は、例えば、シフトレジスタである。
【０２１５】
インバータ回路１７３は、ビット線ＢＬの電位（信号レベル）を反転できる。インバータ回路１７３は、ビット線ＢＬに出力された信号（ＭＴＪ素子のデータ及び外部からのデータ）に対して否定演算（ＮＯＴ演算）を実行する。
【０２１６】
インバータ回路１７３の動作は、制御回路１９０からの制御信号ＩＮＶによって制御される。
【０２１７】
これらの回路１７１，１７２，１７３による制御によって、データに対する計算処理が、実行される。
【０２１８】
なお、計算制御回路１７０は、書き込み回路１４０及び読み出し回路１５０と相互に利用可能な共通な構成要素を有し、これらの回路１４０，１５０，１７０は１つの統合的な回路として提供されてもよい。
【０２１９】
（ｂ）動作例  
図１３乃至図４４を参照して、本実施形態の磁気デバイスの動作例について、説明する。
【０２２０】
（ｂ−１）  セルストリングに対するデータの書き込み  
図１３及び図１４は、本実施形態の磁気デバイスにおけるメモリ領域に対するデータの書き込みを説明するための図である。
【０２２１】
例えば、本実施形態において、セルストリングＭＳに対するデータの書き込み動作（磁化反転動作）は、２サイクルのプログラム（プログラムステップ）によって実行される。
【０２２２】
本実施形態において、１ビットのデータ（“０”データ及び“１”データ）をセルストリングＭＳ内の各ＭＴＪ素子１０に書き込む場合、書き込み動作は、１回目のプログラムと２回目のプログラムとを含む。１回目のプログラムにおいて、“０”及び“１”のうち一方のデータの書き込みが実行され、２回目のプログラムにおいて、“０”及び“１”のうち他方のデータの書き込みが実行される。
【０２２３】
上述の図１３の例のように、８つ（８ビット）のＭＴＪ素子１０が１つの配線２０上に配置された場合において、１回目のプログラムで、セルストリングＭＳのデータ保持状態が、初期化される。例えば、以下のように、セルストリングＭＳの初期化によって、８つの全てのＭＴＪ素子１０の磁化配列状態が、Ｐ状態に設定される。
【０２２４】
配線２０上の全てのＭＴＪ素子１０の記憶層の磁化反転しきい値Ｉｃを減少させるように、所定の極性及び電圧値を有する制御電圧（ここでは、負の電圧値Ｖａの制御電圧ＶＣＮＴ）が、８つのＭＴＪ素子１０の参照層１２に、オン状態のトランジスタＴＣを介して、印加される。
【０２２５】
配線２０上の全てのＭＴＪ素子１０が選択素子に設定された状態で、“０”プログラム電流Ｉｗｒ０が、オン状態のトランジスタＴＡ，ＴＢを介して、配線２０に供給される。
【０２２６】
記憶層１１の磁化反転しきい値Ｉｃが減少された状態で、スピンホール効果によるスピン流が、配線２０上のＭＴＪ素子１０に対して、供給される。  
これによって、１回目のプログラムにおいて、配線２０上の全てのＭＴＪ素子１０は、“０”データを保持する。
【０２２７】
１回目のプログラム後の２回目のプログラムにおいて、書き込むべき８ビットのデータ（例えば、“１０１０１１００”）が、ＭＴＪ素子１０に書き込まれる。以下では、複数のビットを含むデータは、データセットともよばれる。
【０２２８】
図１４に示されるように、１回目のプログラムにおいてＰ状態に対応するデータ（“０”データ）の書き込みが実行された場合、ＡＰ状態に対応するデータ（“１”データ）が書き込まれるべきＭＴＪ素子１０は選択素子に設定され、Ｐ状態に対応するデータが書き込まれるべきＭＴＪ素子（Ｐ状態を維持するＭＴＪ素子）１０は非選択素子に設定される。
【０２２９】
選択素子のＭＴＪ素子１０の参照層１２に対して、オン状態のトランジスタＴＣを介して、負の電圧値Ｖａの電圧（選択電圧）ＶＣＮＴが、印加される。  
非選択素子のＭＴＪ素子１０の参照層１２に対して、オン状態のトランジスタＴＣを介して、正の電圧値Ｖｄの電圧（非選択電圧）ＶＣＮＴが、印加される。
【０２３０】
２回目のプログラムにおいて、選択電圧Ｖａ又は非選択電圧ＶｄがＭＴＪ素子１０に印加された状態で、“１”プログラム電流Ｉｗｒ１が、オン状態のトランジスタＴＡ，ＴＢを介して、配線２０に供給される。
【０２３１】
このように、２回目のプログラムにおいて、スピンホール効果及び電圧効果によって、配線２０上の複数のＭＴＪ素子１０のうち、選択素子のＭＴＪ素子１０の磁化配列が、選択的にＰ状態からＡＰ状態へ変化され、非選択素子のＭＴＪ素子１０の磁化配列は、Ｐ状態に維持される。
【０２３２】
これによって、選択素子のＭＴＪ素子１０は“１”データを保持し、非選択素子のＭＴＪ素子１０は“０”データを保持する。
【０２３３】
この結果として、本実施形態において、２回のプログラムのステップを含む書き込み方式により、複数のＭＴＪ素子によって形成される得る全ての“１／０”の配列パターンのデータの書き込みを、実現できる。
【０２３４】
なお、セルストリングＭＳに対する書き込み動作において、１回目のプログラムにおいて、“１”データがセルストリングＭＳに書き込まれ、２回目のプログラムにおいて、“０データがセルストリングＭＳに書き込まれてもよい。
【０２３５】
以上のように、データが、メモリ領域１０１内のセルストリングＭＳに、書き込まれる。
【０２３６】
このように、本実施形態の磁気デバイス１において、セルアレイ１００のメモリ領域１０１内に、データを記憶できる。
【０２３７】
（ｂ−２）  計算処理領域に対するデータのロード  
図１５は、本実施形態の磁気デバイスの動作例におけるメモリ領域１０１から計算処理領域１０２へのデータのロードについて、説明するための模式図である。
【０２３８】
計算動作の実行時において、メモリ領域１０１内の計算対象のデータが、メモリ領域１０１から計算処理領域１０２へロード（コピー）される。
【０２３９】
上述の図１３及び図１４の書き込み動作と実質的に同じ動作によって、データのロードの前に、計算処理領域１０２内の１以上のセルストリングＭＳが、初期化される。１以上のセルストリングＭＳの初期化のために、“０”データが、計算処理領域１０２内のＭＴＪ素子（論理セル）１０に書き込まれる。
【０２４０】
計算処理領域１０２の初期化動作において、選択電圧Ｖａが、ビット線ＢＬを介して、１以上の選択されたセルストリング（以下では、選択ストリングとよばれる）ＭＳの全てのＭＴＪ素子１０の参照層１２に印加される。  
選択電圧Ｖａが印加された状態で、“０”プログラム電流Ｉｗｒ０が、配線２０内に流される。
【０２４１】
これによって、計算処理領域１０２において、“０”データが、選択ストリングＭＳ内の全てのＭＴＪ素子１０に、書き込まれる。このように、計算処理領域１０２の選択ストリングＭＳが、初期状態に設定される。
【０２４２】
図１５に示されるように、計算対象のデータＭＤ（例えば、“１０１０１１００”データ）が、メモリ領域１０１内のＭＴＪ素子１０から、ビット線ＢＬに読み出される。例えば、データＭＤは、“１０１０１１００”データである。  
データの読み出しのために、計算対象のデータＭＤを保持するセルストリングＭＳが、選択される。センスアンプ回路１７１は、ビット線ＢＬの電位を、“Ｈ”レベルに設定する。
【０２４３】
ソース線ＳＬ及びアクセス線ＡＬが、オン状態のトランジスタＴＡ，ＴＢを介して、配線２０に電気的に接続される。
【０２４４】
トランジスタＴＡがオン状態に設定され、“Ｈ”レベルのビット線ＢＬが、ＭＴＪ素子１０に電気的に接続される。ＭＴＪ素子１０の保持データ（抵抗状態）に応じて、ビット線ＢＬの電位が、変動する。
【０２４５】
これによって、ＭＴＪ素子１０の保持データＭＤが、ビット線ＢＬの電位に反映される。データＭＤが、ビット線ＢＬの電位変動に基づいて、読み出される。
【０２４６】
読み出されたデータＭＤが、計算処理領域１０２内の１以上のセルストリング（例えば、２つのセルストリング）ＭＳに、書き込まれる。
【０２４７】
計算処理領域１０２に対する初期化動作によって、セルストリングＭＳの全てのＭＴＪ素子１０は、“０”データを保持している。それゆえ、“１”データの書き込みが、セルストリングＭＳのＭＴＪ素子１０に対して、実行される。
【０２４８】
読み出されたデータ（計算対象のデータ）に基づいて、ビット線ＢＬの電位が、制御される。“１”データの書き込み時において、選択電圧Ｖａが選択素子１０に印加され、非選択電圧Ｖｄが、非選択素子１０に印加される。
【０２４９】
上述の図１４を用いて説明したように、選択電圧Ｖａ及び非選択電圧ＶｄがＭＴＪ素子１０に印加された状態で、“１”プログラム電流Ｉｗｒ１が、配線２０に流される。
【０２５０】
計算処理領域１０２の選択ストリングＭＳにおいて、“１”データが、選択されたＭＴＪ素子１０に、書き込まれる。非選択のＭＴＪ素子１０は、“０”データの保持状態を維持する。
【０２５１】
これによって、計算処理領域１０２において、セルストリングＭＳ内の各ＭＴＪ素子１０は、メモリ領域１０１のセルストリングＭＳのＭＴＪ素子１０のデータを保持する。メモリ領域１０１のセルストリングＭＳのデータが、計算処理領域１０２内のセルストリングＭＳ内に、コピーされる。
【０２５２】
このように、メモリ領域１０１内のセルストリングＭＳのデータＭＤが、計算処理領域１０２内のセルストリングＭＳに、ロードされる。
【０２５３】
なお、同じデータＭＤが、複数のセルストリングに書き込まれる場合、複数のセルストリングＭＳに対して、データのロードのための書き込み動作が、実質的に同時に実行可能である。
【０２５４】
以下では、説明の明確化のための、計算処理領域１０２内のセルストリング（ＭＴＪ素子）のデータは、レジスタデータともよばれる。
【０２５５】
（ｂ−３）  論理演算  
図１６乃至図２４を参照して、本実施形態の磁気デバイスが実行可能な複数の論理演算について、説明する。
【０２５６】
＜ＡＮＤ演算＞  
図１６乃至図１９は、本実施形態の磁気デバイスにおけるＭＴＪ素子を用いたＡＮＤ演算を説明するための模式図である。
【０２５７】
メモリ領域１０１内のセルストリングＭＳ内のメモリデータＭＤと入力データＺＤとのＡＮＤ演算が、実行される。ここで、セルストリングＭＳ内のデータ（８ビットのデータ）ＭＤは、例えば、“１０１０１０１１”である。例えば、外部からの８ビットの入力データＺＤは、“１１１１１１１１”である。
【０２５８】
図１６に示されるように、選択されたセルストリングＭＳ内のデータＭＤが、上述の図１５を用いて説明したように、計算処理領域１０２内のセルストリングＭＳ−Ｒに、ロード（コピー）される。  
これによって、メモリデータＭＤが、計算処理領域１０２内のセルストリングＭＳ−Ｒに、書き込まれる。
【０２５９】
入力データＺＤが、ビット線ＢＬに転送される。各ビット線ＢＬの電位は、１ビットのデータに対応する電位に、設定される。入力データＺＤに対応したビット線ＢＬの電位が、センスアンプ回路１７１によって、制御電圧ＶＣＮＴの電位ＣＮＴとして、ＭＴＪ素子１０の制御端子１９を介して、ＭＴＪ素子１０の参照層１２に印加される。例えば、電圧値Ｖａは“１”データに対応し、電圧値Ｖｄは“０”データに対応する。
【０２６０】
上述の図６のように、本実施形態の磁気デバイス１において、ＭＴＪ素子１０を用いたデータＺＤとメモリデータＭＤとのＡＮＤ演算は、データＺＤの反転データｂＺＤを制御電圧ＶＣＮＴの電位ＣＮＴの反転電位ｂＣＮＴとしてＭＴＪ素子１０に印加した状態で、“０”プログラム電流Ｉｗｒ０に起因するスピン流を、データ（メモリデータ）ＭＤを保持するＭＴＪ素子１０に供給する動作に相当する。
【０２６１】
それゆえ、メモリデータＭＤと入力データＺＤとのＡＮＤ演算を行う場合、ビット線ＢＬ上の入力データＺＤに対応した電位は、反転される。
【０２６２】
図１７に示されるように、ＡＮＤ演算を実行する場合、インバータ回路１７３は、ビット線ＢＬの電位を、反転させる。これによって、電圧値Ｖｄが、ＭＴＪ素子１０に印加される。
【０２６３】
図１８に示されるように、書き込み回路１４０は、“０”プログラム電流Ｉｗｒ０を、配線２０の端子ＸＢ側から配線２０の端子ＸＡ側へ流す。
【０２６４】
この結果として、図１９に示されるように、非選択電圧（“０”データ）ＶｄがＭＴＪ素子１０に印加された状態で、“０”プログラム電流Ｉｗｒ０が配線２０に供給された場合、ＭＴＪ素子１０の記憶層１１の磁化は、反転しない。それゆえ、ＭＴＪ素子１０は、“０”プログラム電流Ｉｗｒ０の供給前のデータと同じデータを保持する。
【０２６５】
選択電圧（“１”データ）ＶａがＭＴＪ素子１０に印加された状態で、“０”プログラム電流Ｉｗｒ０が配線２０に供給された場合、“１”データ保持状態のＭＴＪ素子１０の記憶層１１の磁化は、反転する。これによって、ＭＴＪ素子１０のデータは、“１”データから“０”データに変わる。
【０２６６】
選択電圧ＶａがＭＴＪ素子１０に印加された状態で、“０”プログラム電流Ｉｗｒ０が配線２０に供給された場合、“０”データ保持状態のＭＴＪ素子１０の記憶層１１の磁化は、反転しない。これによって、ＭＴＪ素子１０のデータは、“０”データに維持される。
【０２６７】
このように“０”プログラム電流Ｉｗｒ０が供給された計算処理領域１０２内のセルストリングＭＳ−Ｒにおいて、プログラム電流Ｉｗｒ０の供給後の各ＭＴＪ素子１０のデータ保持状態（記憶層１１の磁化の向き）は、ビット線（ゲート）ＢＬの電位ｂＣＮＴ及びＭＴＪ素子１０にロード（コピー）されたデータＭＤに応じた値に、設定される。
【０２６８】
したがって、メモリデータＭＤと入力データＺＤとのＡＮＤ演算の結果に相当する値が、セルストリングＭＳ内の各ＭＴＪ素子１０に保持される。
【０２６９】
以上のように、本実施形態の磁気デバイスにおいて、ＭＴＪ素子を用いたＡＮＤ演算が実行される。
【０２７０】
＜ＯＲ演算＞  
図２０及び図２１は、本実施形態の磁気デバイスにおけるＭＴＪ素子を用いたＯＲ演算を説明するための模式図である。
【０２７１】
図２０に示されるように、上述の図１６の例と同様に、メモリ領域１０１内の選択ストリングＭＳ内のデータＭＤが、計算処理領域１０２内のセルストリングＭＳ−Ｒ内に、ロードされる。上述の図１７の例と同様に、外部からの入力データＺＤ（ここでは、“１１１１１１１１”データ）が、ビット線ＢＬに転送される。
【０２７２】
上述の図７のように、本実施形態の磁気デバイス１において、ＭＴＪ素子１０を用いたデータＺＤとメモリデータＭＤとのＯＲ演算は、データＺＤを制御電圧ＶＣＮＴの電位ＣＮＴとしてＭＴＪ素子１０に印加した状態で、“１”プログラム電流Ｉｗｒ１に起因するスピン流を、メモリデータＭＤを保持するＭＴＪ素子１０に供給する動作に相当する。
【０２７３】
書き込み回路１４０は、“１”プログラム電流Ｉｗｒ１を、配線２０の端子ＸＡ側から配線２０の端子ＸＢ側へ流す。
【０２７４】
この結果として、図２１に示されるように、選択電圧（“１”データ）ＶａがＭＴＪ素子１０に印加された状態で、“１”プログラム電流Ｉｗｒ１が配線２０に供給された場合、“０”データ保持状態のＭＴＪ素子１０の記憶層１１の磁化は、反転する。これによって、ＭＴＪ素子１０のデータは、“０”データから“１”データに変わる。
【０２７５】
選択電圧ＶａがＭＴＪ素子１０に印加された状態で、“１”プログラム電流Ｉｗｒ１が配線２０に供給された場合、“１”データ保持状態のＭＴＪ素子１０の記憶層１１の磁化は、反転しない。これによって、ＭＴＪ素子１０のデータは、“１”データに維持される。
【０２７６】
非選択電圧（“０”データ）ＶｄがＭＴＪ素子１０に印加された状態で、“１”プログラム電流Ｉｗｒ１が配線２０に供給された場合、ＭＴＪ素子１０の記憶層１１の磁化は、反転しない。それゆえ、ＭＴＪ素子１０は、“１”プログラム電流Ｉｗｒ１の供給前のデータと同じデータを保持する。
【０２７７】
このように、“１”プログラム電流Ｉｗｒ１が供給された計算処理領域１０２内のセルストリングＭＳにおいて、各ＭＴＪ素子１０のデータ保持状態（記憶層の磁化の向き）は、ビット線（制御ゲート）ＢＬの電位ＣＮＴ及びＭＴＪ素子１０にロード（コピー）されたデータＭＤに応じた値に設定される。
【０２７８】
したがって、メモリデータＭＤと入力データＺＤとのＯＲ演算の結果に相当する値が、セルストリングＭＳ内のＭＴＪ素子１０に保持される。
【０２７９】
以上のように、本実施形態の磁気デバイスにおいて、ＭＴＪ素子を用いたＡＮＤ演算が実行される。
【０２８０】
＜ＸＯＲ演算＞  
図２２及び図２３は、本実施形態の磁気デバイスにおけるＭＴＪ素子を用いた排他的論理和（ＸＯＲ）演算を説明するための模式図である。
【０２８１】
本実施形態において、ＭＴＪ素子を用いたＸＯＲ演算の結果は、ＯＲ演算の結果とＡＮＤ演算の結果とを用いて、得られる。
【０２８２】
図２２に示されるように、ＸＯＲ演算の実行時において、メモリ領域１０１内のストリングＭＳ内のデータＭＤ（ここでは、“１０１０１１００”）が、計算処理領域１０２内の２つのセルストリングＭＳ−Ｒ１，ＭＳ−Ｒ２に、ロードされる。
【０２８３】
上述の図２０及び図２１に示されるように、外部からの入力データＺＤ（ここでは、“１１１１１１１１”）が、各ビット線ＢＬに転送される。セルストリングＭＳ−Ｒ１のデータに対してＯＲ演算を実行するために、“１”プログラム電流が、セルストリングＭＳ−Ｒ１の配線２０内に供給される。
【０２８４】
これによって、データＭＤとデータＺＤとのＯＲ演算の結果ＯＤ１が、セルストリングＭＳ−Ｒ１内に、保持される。
【０２８５】
上述の図１６乃至図１８に示されるように、セルストリングＭＳ−Ｒ２のデータＭＤに対してＡＮＤ演算を実行するために、ビット線ＢＬの電位が、インバータ回路１７３によって、反転される。この後、“０”プログラム電流Ｉｗｒ０が、セルストリングＭＳ−Ｒ２の配線２０内に供給される。
【０２８６】
これによって、データＭＤとデータＺＤとのＡＮＤ演算の結果ＡＤ１が、セルストリングＭＳ−Ｒ２内に、保持される。
【０２８７】
図２３に示されるように、ＡＮＤ演算の結果ＡＤ１が、センスアンプ回路１７１によって、ビット線ＢＬに読み出される。
【０２８８】
データＭＤとデータＺＤとにおけるＡＮＤ演算の結果ＡＤ１の負論理とＯＲ演算の結果ＯＤ１とのＡＮＤ演算を実行するために、各ビット線ＢＬの電位ＣＮＴがＡＮＤ演算の結果ＡＤ１の各ビットの値に相当する値に設定された状態で、“０”プログラム電流Ｉｗｒ０が、ＯＲ演算の結果ＯＤ１を保持するセルストリングＭＳ−Ｒ１の配線２０内に供給される。
【０２８９】
図２３の動作は、データＡＤ１の負論理（データＡＤ１の反転データ）とデータＯＤ１とのＡＮＤ演算である。データＭＤとデータＺＤとのＸＯＲ演算は、データＭＤとデータＺＤとのＡＮＤ演算の結果の負論理とデータＭＤとデータＺＤとのＯＲ演算の結果とのＡＮＤ演算と、等価である。  
それゆえ、図２３の動作は、２つのデータＭＤ，ＺＤのＸＯＲ演算を行った結果と等価となる。
【０２９０】
したがって、図２４に示されるように、セルストリングＭＳ−Ｒ１の保持データＸＤは、メモリデータＭＤと入力データＺＤとのＸＯＲ演算に相当する値になる。
【０２９１】
このように、メモリデータＭＤと入力データＺＤとのＸＯＲ演算の結果に相当する値が、セルストリングＭＳ−ＲＳ１内のＭＴＪ素子１０に保持される。
【０２９２】
以上のように、本実施形態の磁気デバイスにおいて、ＭＴＪ素子を用いたＸＯＲ演算が実行される。
【０２９３】
（ｂ−４）  計算動作  
図２５乃至図４４を参照して、本実施形態の磁気デバイスの計算動作について説明する。  
図２５乃至図４４は、本実施形態の磁気デバイスの計算動作の一例を説明するための模式図である。
【０２９４】
例えば、本実施形態の磁気デバイスは、図１３乃至図２４の動作によって、加算回路を実現できる。  
以下では、本実施形態の磁気デバイスを用いた加算回路（加算処理）の動作について、説明される。
【０２９５】
本実施形態の磁気デバイスの加算回路において、８ビットのデータの加算処理が実行される場合において、８サイクルの処理が実行される。
【０２９６】
＜１サイクル目＞  
外部（例えば、ホストデバイス９００）からの入力データＺＤを用いた計算処理が、計算処理領域１０２内のセルストリングＭＳ−ＲのＭＴＪ素子１０（論理セルＬＳ）にロードされたデータを用いて、実行される。
【０２９７】
図２５に示されるように、図１５を用いて説明されたロード動作によって、メモリ領域１０１内の選択されたセルストリングＭＳのデータＭＤが、計算処理領域１０２内の複数のセルストリングＭＳ−Ｒ１，ＭＳ−Ｒ２に、ロード（コピー）される。  
なお、計算処理領域１０２のセルストリングＭＳ−Ｒ１，ＭＳ−Ｒ２は、データＭＤのロード前に、消去状態に設定されている。
【０２９８】
図２６に示されるように、入力データＺＤは、センスアンプ回路１７１によって、ビット線ＢＬ上に転送される。入力データＺＤは、制御電圧ＶＣＮＴの電圧値ＣＮＴとして、ビット線ＢＬの電位に反映される。
【０２９９】
図２０及び図２１を用いて説明された動作によって、ＯＲ演算が、入力データＺＤとセルストリングＭＳ−Ｒ２のデータＭＤとを用いて、実行される。
【０３００】
上述のように、ＭＴＪ素子１０に対する“１”プログラムは、制御電圧ＶＣＮＴの電圧値ＣＮＴ（ビット線ＢＬの電位）とＭＴＪ素子１０の保持データＭＲとのＯＲ演算に相当する。
【０３０１】
それゆえ、入力データＺＤの“１”又は“０”に対応するビット線ＢＬの電位が、センスアンプ回路１７１によって、制御電圧ＶＣＮＴの電位ＣＮＴとして、セルストリングＭＳ−Ｒ２のＭＴＪ素子１０の参照層１２に印加される。
【０３０２】
入力データＺＤに応じた電圧値ＣＮＴの制御電圧ＶＣＮＴが対応するＭＴＪ素子１０の参照層１２に印加された状態で、“１”プログラム電流Ｉｗｒ１が、書き込み回路１４０によって、セルストリングＭＳ−Ｒ２の配線２０に供給される。
【０３０３】
これによって、入力データＺＤとデータＭＤとのＯＲ演算の結果ＯＤ１が、セルストリングＭＳ−Ｒ２内のＭＴＪ素子１０に保持される。例えば、セルストリングＭＳ−Ｒ２において、データＺＤ，ＭＤのＯＲ演算の結果に対応するデータＯＤ１は、“１１１１１１１１”である。
【０３０４】
図２７に示されるように、図１６乃至図１９を用いて説明された動作によって、ＡＮＤ演算が、入力データＺＤとセルストリングＭＳ−Ｒ１のデータＭＤとを用いて、実行される。
【０３０５】
上述のように、ＭＴＪ素子１０に対する“０”プログラム電流Ｉｗｒ０の供給は、制御電圧ＶＣＮＴの電圧値ＣＮＴの反転値ｂＣＮＴとＭＴＪ素子１０の保持データＭＤとのＡＮＤ演算に相当する。
【０３０６】
それゆえ、インバータ回路１７３は、ビット線ＢＬの電位を反転する。  
これによって、入力データＺＤの反転データｂＺＤに対応するビット線ＢＬの電位が、制御電圧ＶＣＮＴの電圧値として、セルストリングＭＳ−Ｒ１のＭＴＪ素子１０の参照層１２に印加される。この後、“０”プログラム電流Ｉｗｒ０が、書き込み回路１４０によって、セルストリングＭＳ−Ｒ１の配線２０に供給される。
【０３０７】
この結果として、入力データＺＤとデータＭＤとのＡＮＤ演算の結果ＡＤ１が、セルストリングＭＳ−Ｒ１内のＭＴＪ素子１０に保持される。例えば、セルストリングＭＳ−Ｒ１において、データＺＤ，ＭＤのＡＮＤ演算の結果に対応するデータＡＤ１は、“１０１０１１００”である。
【０３０８】
以上のように、メモリデータＭＤと入力データＺＤとのＯＲ演算の結果が、保持データ（レジスタデータ）ＯＤ１として、セルストリングＭＳ−Ｒ２に格納される。メモリデータＭＤと入力データＺＤとのＡＮＤ演算の結果が、保持データ（レジスタデータ）ＡＤ１として、セルストリングＭＳ−Ｒ１に格納される。
【０３０９】
図２８に示されるように、ＯＲ演算の結果ＯＤ１とＡＮＤ演算の結果ＡＤ１とを用いて、メモリデータＭＤと入力データＺＤとのＸＯＲ演算が、実行される。
【０３１０】
図２２乃至図２５を用いて説明された動作によって、メモリデータＭＤと入力データＺＤとのＸＯＲ演算の結果が、得られる。
【０３１１】
セルストリングＭＳ−Ｒ１内の各ＭＴＪ素子１０の保持データ（ＡＮＤ演算の結果）ＡＤ１が、センスアンプ回路１７１によるセルストリングＭＳ−Ｒ１に対する読み出しによって、ビット線ＢＬにそれぞれ出力される。
【０３１２】
ＯＲ演算の結果ＯＤ１を保持するセルストリングＭＳ−Ｒ２において、書き込み回路１４０は、ＡＮＤ演算の結果に対応する電位がビット線ＢＬに保持された状態で、“０”プログラム電流Ｉｗｒ０を、セルストリングＭＳ−Ｒ２の配線２０に流す。
【０３１３】
これによって、ビット線ＢＬ上のデータ（すなわち、セルストリングＭＳ−Ｒ１のデータＡＤ１）の負論理とＭＴＪ素子１０のデータＯＤ１とのＡＮＤ演算の結果が、セルストリングＭＳ−Ｒ２内のＭＴＪ素子１０に書き込まれる。
【０３１４】
この結果として、図２９に示されるように、セルストリングＭＳ−Ｒ２内のＭＴＪ素子１０は、メモリデータＭＤと入力データＺＤとのＸＯＲ演算の結果ＸＤ１を保持する。  
例えば、ＸＯＲ演算の結果に対応するデータＸＤ１は、“０１０１００１１”である。
【０３１５】
セルストリングＭＳ−Ｒ２に保持されたＸＯＲ演算の結果ＸＤ１は、８ビットのメモリデータＭＤと入力データＺＤとの各桁における加算の結果に対応する。
【０３１６】
セルストリングＭＳ−Ｒ１に保持されたＡＮＤ演算の結果ＡＤ１は、８ビットのメモリデータＭＤと入力データＺＤとの各桁における桁上がりの有無を示す。桁上がりが発生する桁において、“１”データが、セルストリングＭＳ−Ｒ１内の対応するＭＴＪ素子１０に書き込まれる。桁上がりが発生しない桁において、“０”データが、セルストリングＭＳ−Ｒ１内の対応するＭＴＪ素子１０に書き込まれる。
【０３１７】
図３０に示されるように、データＡＤ１がビットシフトされたデータＣＤ１が、セルストリングＭＳ−Ｒ０内に格納される。
【０３１８】
例えば、セルストリングＭＳ−Ｒ１の８ビットのデータ（桁上がりデータ）が、ビット線ＢＬに出力される。ビットシフト回路１７２は、各ビット線ＢＬの１ビットのデータを、取り込む。ビットシフト回路１７２は、取り込んだデータの各ビット（桁）を、１ビット分上位側（図中の左側）にシフトする。ビットシフト回路１７２によってビットシフトされたデータＣＤ１が、ビット線ＢＬに出力される。
【０３１９】
ビットシフトされたデータＣＤ１は、セルストリングＭＳ−Ｒ０内に書き込まれる。  
例えば、計算処理領域１０２内のセルストリングＭＳ−Ｒ０において、ＭＴＪ素子１０は、初期化動作によって、“０”データを保持する。書き込み回路１４０（又は計算制御回路１７０）による“１”データのプログラムによって、ビットシフトされたデータＣＤ１が、セルストリングＭＳ−Ｒ０内のＭＴＪ素子１０に書き込まれる。
【０３２０】
このように、ＡＮＤ演算の結果ＡＤ１のビットシフトデータＣＤ１が、セルストリングＭＳ−Ｒ０に、格納される。
【０３２１】
ビットシフトされたデータは、桁上がり（繰り上げ）の値を示すデータである。以下では、ビットシフトされたデータ（ここでは、セルストリングＭＳ−Ｒ０内のデータ）は、キャリーデータＣＤ１ともよばれる。
【０３２２】
上述のメモリデータＭＤ及び入力データＺＤの１回目のサイクルにおいて、キャリーデータＣＤ１は、“０１０１１０００”である。
【０３２３】
＜２サイクル目＞  
例えば、キャリーデータＣＤ１がセルストリングＭＳ−Ｒ０に書き込まれた後、初期化動作のために、セルストリングＭＳ−Ｒ１のデータが、消去される。これによって、“０”データが、セルストリングＭＳ−Ｒ１の全てのＭＴＪ素子１０に書き込まれる。
【０３２４】
図３１に示されるように、セルストリングＭＳ−Ｒ２内のデータＸＤ１が、セルストリングＭＳ−Ｒ１にコピーされる。
【０３２５】
セルストリングＭＳ−Ｒ２のデータＸＤ１が、ビット線ＢＬに出力される。  
セルストリングＭＳ−Ｒ２内のデータＸＤ１に応じてビット線ＢＬの電位（制御電圧ＶＣＮＴの電圧値）が制御された状態で、“１”プログラム電流Ｉｗｒ１が、セルストリングＭＳ−Ｒ１の配線２０に供給される。
【０３２６】
これによって、セルストリングＭＳ−Ｒ２の各ＭＴＪ素子１０のデータＸＤ１が、セルストリングＭＳ−Ｒ１内の各ＭＴＪ素子１０にコピーされる。セルストリングＭＳ−Ｒ１は、セルストリングＭＳ−Ｒ２内のデータＸＤ１と同じデータを保持する。
【０３２７】
図３２に示されるように、キャリーデータＣＤ１が、ビット線ＢＬに出力される。これによって、キャリーデータＣＤ１に基づいて、ビット線ＢＬの電位が制御される。
【０３２８】
上述の図２６の動作と実質的に同様に、セルストリングＭＳ−Ｒ２のデータＸＤ１とキャリーデータＣＤ１とのＯＲ演算が実行される。これによって、ＯＲ演算の結果に対応するデータＯＤ２が、セルストリングＭＳ−Ｒ２内に書き込まれる。例えば、データＯＤ２は、“０１０１１０１１”である。
【０３２９】
図３３に示されるように、図２７の動作と実質的に同様に、セルストリングＭＳ−Ｒ１のデータＸＤ１とキャリーデータＣＤ１とのＡＮＤ演算が実行される。ビット線ＢＬ上に出力されたキャリーデータＣＤ１は、インバータ回路１７３によって、反転される。
【０３３０】
ビット線ＢＬの電位が、キャリーデータＣＤ１の反転データｂＣＤ１に応じた電位に設定された状態で、“０”プログラム電流Ｉｗｒ０が、配線２０に供給される。
【０３３１】
これによって、ＡＮＤ演算の結果に対応するデータＡＤ２が、セルストリングＭＳ−Ｒ１内に書き込まれる。例えば、データＡＤ２は、“０１０１００００”である。
【０３３２】
図３４に示されるように、ＯＲ演算の結果（データＯＤ２）とＡＮＤ演算の結果（データＡＤ２）とを用いて、ＸＯＲ演算が実行される。  
上述の図２８及び図２９のＸＯＲ演算と実質的に同様に、ＡＮＤ演算の結果を示すデータＡＤ２が、ビット線ＢＬに出力される。
【０３３３】
データＡＤ２とセルストリングＭＳ−Ｒ２内のデータ（ＯＲ演算の結果）ＯＤ２とからＸＯＲ演算の結果を得るために、ビット線ＢＬの電位がデータＡＤ２に対応する値に設定された状態で、書き込み回路１４０が、“０”プログラム電流Ｉｗｒ０を、配線２０に供給する。データＡＤ２の負論理（反転データｂＡＤ２）とデータＯＤ２とのＡＮＤ演算が、実行される。  
これによって、データＸＤ１とキャリーデータＣＤ１とのＸＯＲ演算の結果ＸＤ２が、得られる。
【０３３４】
セルストリングＭＳ−Ｒ２は、このＸＯＲ演算の結果を、データＸＤ２として保持する。例えば、データＸＤ２は、“００００１０１１”である。
【０３３５】
図３５に示されるように、セルストリングＭＳ−Ｒ１が保持する８ビットのデータＡＤ２において、各ビットが、ビットシフト回路１７２によって、１桁上位にビットシフトされる。セルストリングＭＳ−Ｒ０に対して初期化動作が実行された後、ビットシフトされたデータ（キャリーデータ）ＣＤ２は、初期化されたセルストリングＭＳ−Ｒ０に格納される。これによって、セルストリングＭＳ−Ｒ０内のキャリーデータが、更新される。  
キャリーデータＣＤ２は、“１０１０００００”となる。
【０３３６】
＜３サイクル目＞  
図３６に示されるように、セルストリングＭＳ−Ｒ１のデータが消去された後、セルストリングＭＳ−Ｒ２のデータＸＤ２が、セルストリングＭＳ−Ｒ１にコピーされる。
【０３３７】
図３７に示されるように、キャリーデータＣＤ２とセルストリングＭＳ−Ｒ２のデータとを用いたＯＲ演算のために、キャリーデータＣＤ２に対応する電圧値がビット線ＢＬに印加された状態で、“１”プログラム電流Ｉｗｒ１が、セルストリングＭＳ−Ｒ２に供給される。
【０３３８】
これによって、セルストリングＭＳ−Ｒ２内に、ＯＲ演算の結果（データ）ＯＤ３が、格納される。データＯＤ３は、“１０１０１０１１”となる。
【０３３９】
図３８に示されるように、キャリーデータＣＤ２とセルストリングＭＳ−Ｒ１のデータＸＤ２とを用いたＡＮＤ演算のため、キャリーデータＣＤ２の反転データｂＣＤ２が、インバータ回路１７３によって生成される。反転データｂＣＤ２に対応する電圧値がビット線ＢＬに印加された状態で、“０”プログラム電流Ｉｗｒ０が、セルストリングＭＳ−Ｒ１に供給される。
【０３４０】
これによって、セルストリングＭＳ−Ｒ１内に、ＡＮＤ演算の結果（データ）ＡＤ３が格納される。データＡＤ３は、“００００００００”となる。
【０３４１】
図３９に示されるように、データＡＤ３とデータＯＤ３とを用いて、キャリーデータＣＤ２とデータＸＤ２とのＸＯＲ演算の結果が、得られる。
【０３４２】
上述のように、データＡＤ３が、ビット線ＢＬに出力される。  
ビット線ＢＬの電位（制御端子１９及び参照層１２の電位）がデータＡＤ３に対応する値に設定された状態で、“０”プログラム電流Ｉｗｒ０が、セルストリングＭＳ−Ｒ２に、供給される。
【０３４３】
これによって、キャリーデータＣＤ２とデータＸＤ２とのＸＯＲ演算の結果が、データＸＤ３として、セルストリングＭＳ−Ｒ２内に保持される。
【０３４４】
図４０に示されるように、データＡＤ３の各ビットは、ビットシフト回路１７２によって、１桁上位にビットシフトされる。  
ビットシフトされたデータは、キャリーデータＣＤ３として、セルストリングＭＳ−Ｒ０内に格納される。
【０３４５】
これによって、セルストリングＭＳ−Ｒ０内のキャリーデータが、更新される。キャリーデータＣＤ３は、“００００００００”となる。
【０３４６】
＜４サイクル目＞  
図４１に示されるように、セルストリングＭＳ−Ｒ１内のデータが消去された後、セルストリングＭＳ−Ｒ２内のデータＸＤ３が、セルストリングＭＳ−Ｒ１にコピーされる。
【０３４７】
図４２に示されるように、キャリーデータＣＤ３とデータＸＤ３とのＯＲ演算が、実行される。ここで、キャリーデータＣＤ３が“００００００００”であるため、ＯＲ演算の結果に対応するデータＯＤ４は、データＸＤ３の各ビットの値の変更なしに、“１０１０１０１１”となる。
【０３４８】
図４３に示されるように、キャリーデータＣＤ３とデータＸＤ３とのＡＮＤ演算が、実行される。ここで、キャリーデータＣＤ３が“００００００００”であるため、ＡＮＤ演算の結果に対応するデータＡＤ４は、“００００００００”となる。
【０３４９】
図４４に示されるように、データＡＤ４とデータＯＤ４とを用いて、ＸＯＲ演算が、実行される。
【０３５０】
上述のように、セルストリングＭＳ−Ｒ１のデータＡＤ４がビット線ＢＬに出力された状態で、“０”プログラム電流Ｉｗｒ０が、セルストリングＭＳ−Ｒ２に供給される。
【０３５１】
これによって、キャリーデータＣＤ３とデータＸＤ３とのＸＯＲ演算の結果が、データＸＤ４として、セルストリングＭＳ−Ｒ２内に、保持される。  
このように、キャリーデータＣＤ３とデータＸＤ３とのＸＯＲ演算の結果が、得られる。
【０３５２】
セルストリングＭＳ−Ｒ２は、このＸＯＲ演算の結果を、データＸＤ４として保持する。
【０３５３】
例えば、ＸＯＲ演算の結果に対応するデータＸＤ４は、キャリーデータＣＤ３が“００００００００”であるため、“１０１０１０１１”に維持される。
【０３５４】
図４５に示されるように、セルストリングＭＳ−Ｒ１が保持するデータＡＤ４の各ビットは、ビットシフト回路１７２によって、１桁上位にビットシフトされる。ビットシフトされたデータ（キャリーデータ）ＣＤ４は、セルストリングＭＳ−Ｒ３に格納される。
【０３５５】
キャリーデータＣＤ４は、“００００００００”となる。
【０３５６】
＜５〜８サイクル目＞  
加算処理の５サイクル目において、“００００００００”のキャリーデータＣＤ４を用いた動作が、図４１乃至図４５を用いて説明した動作と同様に、実行される。この場合において、５サイクル目の計算結果の各データは、４サイクル目の計算結果のデータと同じなる。
【０３５７】
キャリーデータの値の変化が無いため、６サイクル目から８サイクル目における各計算結果のデータも、４サイクル目及び５サイクル目の計算結果と同じになる。
【０３５８】
このように、キャリーデータが“００００００００”であると、８ビットのデータにおける各桁の値は、変化しない。
【０３５９】
以上の８サイクルの計算処理の結果として、“１０１０１１００”データＭＤと“１１１１１１１１”データＺＤとの加算処理の結果は、“１０１０１０１１”で示される８ビットのデータとなる。
【０３６０】
制御回路１９０は、加算処理の結果を、コントローラ５に送信する。加算処理の結果は、メモリ領域１０１内のセルストリングＭＳに、書き込まれてもよい。
【０３６１】
尚、最上位ビットで生じた桁上がりのデータ（９ビット目以上の桁の値）は、オーバーフロー値として、加算処理の結果のデータとは別途に、磁気デバイス１内のレジスタ回路（図示せず）又はセルアレイ１００内に格納されてもよい。これによって、オーバーフロー値のデータが、コントローラ５に提供され得る。
【０３６２】
本実施形態のように、キャリーデータＣＤの全ての桁の値が“０”となった場合（ここでは、“００００００００”）において、制御回路１９０（又はコントローラ５）がキャリーデータの全ての桁が“０”であることを検知することによって、加算処理が終了されてもよい。
【０３６３】
この場合において、キャリーデータＣＤが“００００００００”となった時点でのセルストリングＭＳ−Ｒ２内のデータＸＤが、加算処理の結果（ここでは、８ビットのデータ）として確定され、コントローラ５に送信される。
【０３６４】
以上のように、本実施形態の磁気論理回路は、加算回路を実現できる。
【０３６５】
なお、本実施形態の磁気デバイスは、加算回路以外の計算回路を実現できる。
【０３６６】
例えば、本実施形態の磁気デバイスは、乗算回路を提供できる。乗算処理は、データのビットシフトと加算処理とによって、実行できる。
【０３６７】
入力データＺＤがメモリデータＭＤに乗算される場合、入力データＺＤの各桁の“０”又は“１”の値が、メモリデータＭＤに乗算される。この時、入力データＺＤの乗算される値の桁に応じて、メモリデータＭＤを上位ビット側にシフトさせる。これによって、入力データＺＤの各桁とメモリデータＭＤとの乗算結果が得られる。各桁の乗算結果は、例えば、計算処理領域１０２内のセルストリングＭＳに、格納される。
【０３６８】
これらの乗算結果（シフトされたデータ）の加算処理が、実行される。上述の加算処理と実質的に同様に、セルストリングＭＳのデータのビット線への出力、及び、配線への電流の供給によって、各桁の乗算結果が、加算される。
【０３６９】
これによって、入力データＺＤとメモリデータＭＤとの乗算結果が、計算処理領域１０２内のセルストリングＭＳ内に格納される。入力データＺＤとメモリデータＭＤとの乗算結果が、コントローラ５に送信される。
【０３７０】
本実施形態の磁気デバイスは、減算回路及び除算回路も、上述の加算回路及び乗算回路と同様に、実現できる。
【０３７１】
以上のように、本実施形態の磁気デバイスは、四則演算を実行する計算回路（論理演算回路）を実現できる。
【０３７２】
（６）まとめ  
本実施形態の磁気デバイスは、論理素子、及び、論理素子を用いた計算回路を実現できる。
【０３７３】
一般的な不揮発性メモリを利用した計算機システムにおいて、演算処理の実行時において、メモリデバイス／ストレージデバイス内のデータが、データバスを介してＣＰＵ（中央演算装置）に転送され、ＣＰＵが、転送されたデータを用いた計算処理を行う。その演算結果は、ＣＰＵからメモリデバイス／ストレージデバイスに転送され、メモリデバイス／ストレージデバイス内に書き戻される。
【０３７４】
この場合、一般的な不揮発性メモリを利用した計算機システムにおける全体の処理速度は、メモリデバイス／ストレージデバイス単体のアクセススピードだけでなく、データバスの転送速度及びＣＰＵの並列度に起因する制限を受ける。
【０３７５】
そのため、一般的な不揮発性メモリを利用した計算機システムにおいて、大規模なデータ演算が実行される場合、計算処理の時間が飛躍的に増加する可能性がある。また、一般的な不揮発性メモリを利用した計算機システムにおいて、データバスで発生する消費電力が増大する可能性がある。
【０３７６】
本実施形態の磁気デバイスは、論理素子及び計算回路を、メモリ回路と同じ半導体基板（半導体チップ）上に、配置できる。これによって、本実施形態の磁気デバイスは、１つのメモリ回路と同じチップ内で、メモリ回路内に記憶されるデータを用いた計算処理を実行できる。
【０３７７】
それゆえ、本実施形態の磁気デバイスは、互いに異なる半導体チップを用いた計算回路（ＣＰＵチップ）とメモリ回路（メモリチップ）との間のデータバスを介したデータ転送が実行されるデバイスに比較して、計算機システム内におけるデータ転送の時間を短縮できる。
【０３７８】
本実施形態の磁気デバイスは、計算処理領域内のセルストリング／セルの数に応じた計算の並列処理を実行できる。  
これによって、本実施形態の磁気デバイスは、計算機システムの計算処理能力及び計算速度を向上できる。
【０３７９】
この結果として、本実施形態の磁気デバイスは、計算処理のための全体的な時間を短縮できる。
【０３８０】
本実施形態の磁気デバイスは、計算機システム内のデータバスを介したデータ転送を削減できる。この結果として、本実施形態の磁気デバイスは、計算機システムにおけるデータ転送に起因する消費電力の増大を、抑制できる。
【０３８１】
以上のように、本実施形態の磁気デバイスは、デバイス内部の磁気抵抗効果素子を用いて計算処理を実行可能な磁気デバイスを提供できる。
【０３８２】
［変形例］  
図４５乃至図４８を参照して、実施形態の磁気デバイスの変形例について、説明する。
【０３８３】
（１）変形例１
図４５を参照して、実施形態の磁気デバイスの変形例の一例について、説明する。  
図４５は、実施形態の磁気デバイスの変形例を説明するための模式図である。
【０３８４】
図４５に示されるように、複数のセルアレイ１００−１，１００−Ｎ及び複数の計算制御回路１７０−１，１７０−Ｎが、１つの磁気デバイス１内に設けられてもよい。この場合、磁気デバイス１は、多数決処理回路９９を含む。
【０３８５】
例えば、複数の計算制御回路１７０−１，１７０−Ｎが、対応するセルアレイ１００−１，１００−Ｎの計算処理領域１０２を用いて、同一の計算処理を実行する。
【０３８６】
得られた複数の計算結果（解）が、多数決処理回路９９に供給される。
【０３８７】
多数決処理回路９９は、複数の計算結果のうちどの結果が多いか、比較及び判定する。
【０３８８】
多数決処理回路９９は、多数決処理の結果に基づいて、複数の計算結果のうち最も多い結果を、実行された計算処理の解に決定し、出力する。
【０３８９】
尚、複数の計算結果の全てが一致する場合、多数決処理回路９９は、一致した計算結果を、実行された計算処理の解として、出力する。
【０３９０】
このように、本実施形態において、同一の計算処理及び多数決処理を実行することによって、計算処理のエラーを低減できる。
【０３９１】
また、本実施形態の磁気デバイスは、回路の複雑化を抑制しつつ、計算処理の系統の多重化を実現できる。
【０３９２】
尚、本実施形態において、複数の計算制御回路１７０−１，１７０−Ｎが、１つのセルアレイ１００に共通に接続されてもよい。また、本実施形態の複数の磁気デバイスが、同一の計算処理を実行し、多数決処理に基づいて、計算処理の解が決定されてもよい。
【０３９３】
以上のように、本変形例の磁気デバイスは、計算処理の信頼性を向上できる。
【０３９４】
（２）変形例２  
図４６及び図４７を参照して、実施形態の磁気デバイスの変形例の一例について、説明する。  
図４６及び図４７は、実施形態の磁気デバイスの変形例を説明するための模式図である。
【０３９５】
本実施形態の磁気デバイスにおいて、ＡＮＤ演算を計算するためのセルストリング（セルアレイ）と、ＯＲ演算をするためのセルストリング（セルアレイ）とが、異なる領域に分割されていてもよい。
【０３９６】
図４６に示されるように、第１のセルアレイ１００Ａは、ＡＮＤ演算を計算するための領域１０２Ａを有する。第２のセルアレイ１００Ｂは、ＯＲ演算をするための領域１０２Ｂを有する。例えば、セルアレイ１００Ａ内のメモリ領域１０１Ａは、セルアレイ１００Ｂ内のメモリ領域１０１Ｂと同じデータを記憶する。但し、メモリ領域１０１Ａ内のデータは、メモリ領域１０１Ｂ内のデータと異なってもよい。
【０３９７】
計算制御回路１７０Ａは、領域１０２Ａ内の１以上のセルストリングを用いて、ＡＮＤ演算を実行する。計算制御回路１７０Ａは、インバータ回路１７３を含む。
【０３９８】
計算制御回路１７０Ｂは、領域１０２Ｂ内の１以上のセルストリングを用いて、ＯＲ演算を実行する。計算制御回路１７０Ｂは、インバータ回路を含まない。  
各計算制御回路１７０Ａ，１７０Ｂは、センスアンプ回路１７１及びビットシフト回路１７２を有する。
【０３９９】
本変形例のように、本実施形態の磁気デバイスにおいて、ＶｏＣＳＭ（ＭＴＪ素子）を用いたＡＮＤ演算及びＯＲ演算が、それぞれ異なるセルアレイ１００Ａ，１００Ｂ内で実行されてもよい。
【０４００】
図４７に示されるように、スイッチ回路１７９を介して、異なる内部構成の複数の計算制御回路１７０Ａ，１７０Ｂが、１つのセルアレイ１００内の計算処理領域１０２に接続されてもよい。
【０４０１】
スイッチ回路１７９が、セルアレイ１００と計算制御回路１７０Ａ，１７０Ｂとの間に配置されている。制御信号ＳＷが、スイッチ回路１７９に供給される。スイッチ回路１７９は、制御信号ＳＷに基づいて、２つの計算制御回路１７０Ａ，１７０Ｂのうち一方を、セルアレイ１００に電気的に接続する。図４６の例と同様に、ＡＮＤ演算を実行するための計算制御回路１７０Ａは、インバータ回路１７３を含み、ＯＲ演算を実行するための計算制御回路１７０Ｂは、インバータ回路を含まない。
【０４０２】
例えば、制御信号ＳＷは、カラム制御回路１２０に供給される。カラム制御回路１２０は、制御信号ＳＷに基づいて、２つの計算制御回路１７０Ａ，１７０Ｂのうち一方に電気的に接続される。
【０４０３】
本変形例のように、本実施形態の磁気デバイスにおいて、１つのセルアレイ１００に対して、複数の計算制御回路１７０Ａ，１７０Ｂを用いて、ＶｏＣＳＭ（ＭＴＪ素子）を用いたＡＮＤ演算及びＯＲ演算がそれぞれ実行されてもよい。
【０４０４】
以上のように、図４６及び図４７の例に示される磁気デバイスは、計算処理領域１０２（１０２Ａ，１０２Ｂ）を含むセルアレイ１００と他の回路（周辺回路）との間に、インバータ回路１７３を含む信号経路とインバータ回路を含まない信号経路とを有する。
【０４０５】
尚、本実施形態の磁気デバイスにおいて、１つのセルアレイ１００が、ＡＮＤ演算の実行のための領域１０２ＡとＯＲ演算の実行のための領域１０２Ｂを、有していてもよい。
【０４０６】
また、本実施形態の磁気デバイスにおいて、データの記憶専用のセルアレイ１００と論理演算専用のセルアレイ１００とが、互いに分離されていてもよい。
【０４０７】
（３）  変形例３  
図４８を参照して、実施形態の磁気デバイスの変形例の一例について、説明する。  
図４８は、実施形態の磁気デバイスの変形例を説明するための模式図である。
【０４０８】
図４８に示されるように、導電層（スピン軌道相互作用層）２０が、Ｚ方向において複数のビット線ＢＬの上方に配置されてもよい。この場合において、記憶層１１が、Ｚ方向において参照層１２の上方に配置される。
【０４０９】
本変形例のように、セルストリングＭＳにおいて、ＭＴＪ素子１０が導電層２０の下方に配置されていても、本実施形態の磁気デバイスは、上述の様々な計算処理を実行できる。
【０４１０】
［その他］  
本実施形態の磁気デバイスにおいて、磁気抵抗効果素子に、面内磁化型のＭＴＪ素子が用いられている。しかし、本実施形態の磁気デバイスのメモリ素子に、垂直磁化型のＭＴＪ素子が用いられてもよい。垂直磁化型のＭＴＪ素子は、磁性層（記憶層及び参照層）の磁化が、磁性層の層面に対して垂直方向を向く。垂直磁化型のＭＴＪ素子において、磁性層の磁化方向は、記憶層及び参照層の積層方向に対して、実質的に平行である。
【０４１１】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０４１２】
１：磁気デバイス、ＭＳ：セルストリング、１０：ＭＴＪ素子、２０：配線、１００：セルアレイ、１０１：メモリ領域、１０２：計算処理領域、１７０：計算制御回路、１７１：センスアンプ回路、１７２：ビットシフト回路、１７３：インバータ回路。
【図１】
2019164870.tif 000003
【図２】
2019164870.tif 000004
【図３】
2019164870.tif 000005
【図４】
2019164870.tif 000006
【図５】
2019164870.tif 000007
【図６】
2019164870.tif 000008
【図７】
2019164870.tif 000009
【図８】
2019164870.tif 000010
【図９】
2019164870.tif 000011
【図１０】
2019164870.tif 000012
【図１１】
2019164870.tif 000013
【図１２】
2019164870.tif 000014
【図１３】
2019164870.tif 000015
【図１４】
2019164870.tif 000016
【図１５】
2019164870.tif 000017
【図１６】
2019164870.tif 000018
【図１７】
2019164870.tif 000019
【図１８】
2019164870.tif 000020
【図１９】
2019164870.tif 000021
【図２０】
2019164870.tif 000022
【図２１】
2019164870.tif 000023
【図２２】
2019164870.tif 000024
【図２３】
2019164870.tif 000025
【図２４】
2019164870.tif 000026
【図２５】
2019164870.tif 000027
【図２６】
2019164870.tif 000028
【図２７】
2019164870.tif 000029
【図２８】
2019164870.tif 000030
【図２９】
2019164870.tif 000031
【図３０】
2019164870.tif 000032
【図３１】
2019164870.tif 000033
【図３２】
2019164870.tif 000034
【図３３】
2019164870.tif 000035
【図３４】
2019164870.tif 000036
【図３５】
2019164870.tif 000037
【図３６】
2019164870.tif 000038
【図３７】
2019164870.tif 000039
【図３８】
2019164870.tif 000040
【図３９】
2019164870.tif 000041
【図４０】
2019164870.tif 000042
【図４１】
2019164870.tif 000043
【図４２】
2019164870.tif 000044
【図４３】
2019164870.tif 000045
【図４４】
2019164870.tif 000046
【図４５】
2019164870.tif 000047
【図４６】
2019164870.tif 000048
【図４７】
2019164870.tif 000049
【図４８】
2019164870.tif 000050
【手続補正書】
【提出日】平成31年4月26日(2019.4.26)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
第１の導電層と、
前記第１の導電層に配置され、第１の制御端子を有する第１の磁気抵抗効果素子と、
第１の方向の第１の電流を前記第１の導電層内に供給し、且つ、前記第１の磁気抵抗効果素子の前記第１の制御端子に第１の制御電圧を印加する第１の回路と、
を具備し、
前記第１の電流が前記第１の導電層に供給された場合、前記第１の磁気抵抗効果素子は、前記第１の磁気抵抗効果素子内の第１のデータの第１の値と第２のデータに対応する前記第１の制御電圧の第２の値との論理和に対応する値を保持する、
磁気デバイス。
【請求項２】
前記第１の回路は、前記第１の方向に対して反対の第２の方向の第２の電流を前記第１の導電層内に供給し、
前記第２の電流が前記第１の導電層に供給された場合、前記第１の磁気抵抗効果素子は、前記第１のデータの前記第１の値と前記第１の制御電圧の前記第２の値の負論理との論理積に対応する値を保持する、
請求項１に記載の磁気デバイス。
【請求項３】
前記第１の導電層に配置され、第２の制御端子を有する第２の磁気抵抗効果素子を、
さらに具備し、
前記第１及び前記第２の磁気抵抗効果素子は、前記第１の導電層の延在方向において配列され、
前記第１の回路は、前記第２の磁気抵抗効果素子の前記第２の制御端子に、第２の制御電圧を印加し、
前記第１の電流の供給時に、前記第２の磁気抵抗効果素子は、前記第２の磁気抵抗効果素子内の第３のデータの第３の値と第４のデータに対応する前記第２の制御電圧の第４の値との論理和に対応する値を保持する、
請求項１又は２に記載の磁気デバイス。
【請求項４】
第１の導電層と、
前記第１の導電層に配置され、第１の制御端子を有する第１の磁気抵抗効果素子と、
第１の方向の第１の電流を前記第１の導電層内に供給し、且つ、前記第１の磁気抵抗効果素子の前記第１の制御端子に第１の制御電圧を印加する第１の回路と、
を具備し、
前記第１の電流が前記第１の導電層に供給された場合、前記第１の磁気抵抗効果素子は、前記第１の磁気抵抗効果素子内の第１のデータの第１の値と第２のデータに対応する前記第１の制御電圧の第２の値の負論理との論理積に対応する値を保持する、
磁気デバイス。
【請求項５】
前記第１の回路は、前記第１の方向に対して反対の第２の方向の第２の電流を前記第１の導電層内に供給し、
前記第２の電流が前記第１の導電層に供給された場合、前記第１の磁気抵抗効果素子は、前記第１のデータの前記第１の値と前記第１の制御電圧の前記第２の値との論理和に対応する値を保持する、
請求項４に記載の磁気デバイス。
【請求項６】
前記第１の導電層に配置され、第２の制御端子を有する第２の磁気抵抗効果素子を、
さらに具備し、
前記第１及び前記第２の磁気抵抗効果素子は、前記第１の導電層の延在方向において配列され、
前記第１の回路は、前記第２の磁気抵抗効果素子の前記第２の制御端子に、第２の制御電圧を印加し、
前記第１の電流の供給時に、前記第２の磁気抵抗効果素子は、前記第２の磁気抵抗効果素子内の第３のデータの第３の値と第４のデータに対応する前記第２の制御電圧の第４の値の負論理との論理積に対応する値を保持する、
請求項４又は５に記載の磁気デバイス。
【請求項７】
第２の導電層と、
前記第２の導電層に配置され、第３の制御端子を有する第３の磁気抵抗効果素子と、
前記第１の磁気抵抗効果素子の前記第１の制御端子と前記第３の磁気抵抗効果素子の前記第３の制御端子とを接続する第１の配線と、
をさらに具備し、
前記第１の回路は、
前記第１のデータを前記第１の配線に出力し、
前記第１又は第２の電流を前記第２の導電層に流し、前記第１のデータに対応する第５のデータを前記第３の磁気抵抗効果素子に書き込む、
請求項１乃至６のうちいずれか１項に記載の磁気デバイス。
【請求項８】
前記第１の磁気抵抗効果素子は、
固定の磁化を有する第１の磁性層と、
前記第１の導電層と前記第１の磁性層との間に配置され、可変な磁化を有する第２の磁性層と、
前記第１の磁性層と前記第２の磁性層との間に配置された非磁性層と、
を含む、
請求項１乃至７のうちいずれか１項に記載の磁気デバイス。
【請求項９】
第１の導電層と、
第２の導電層と、
前記第１の導電層に配置され、第１の制御端子を有する第１の磁気抵抗効果素子と、
前記第２の導電層に配置され、第２の制御端子を有する第２の磁気抵抗効果素子と、
第１の方向の第１の電流又は前記第１の方向に対して反対の第２の方向の第２の電流を供給し、前記第１の制御端子の電位及び前記第２の制御端子の電位を制御する第１の回路と、
を具備し、
前記第１の回路は、
前記第１及び第２の磁気抵抗効果素子に、第１のデータを書き込み、
前記第１の制御端子の前記電位を第２のデータに対応する値に設定し、前記第１の電流を前記第１の導電層に供給し、前記第１の磁気抵抗効果素子は、前記第１のデータと前記第２のデータの論理和に対応する第１の値を保持し、
前記第２の制御端子の前記電位を前記第２のデータの反転データに対応する値に設定し、前記第２の電流を前記第２の導電層に供給し、前記第２の磁気抵抗効果素子は、前記第１のデータと前記第２のデータとの論理積に対応する第２の値を保持し、
前記第１の制御端子の前記電位を前記第２の値に設定し、前記第２の電流を前記第１の導電層に供給し、前記第１の磁気抵抗効果素子は、前記第１のデータと前記第２のデータとの排他的論理和に対応する第３の値を保持する、
磁気デバイス。
【請求項１０】
前記第３の値は、前記第１のデータと前記第２のデータとの加算結果を示す、
請求項９に記載の磁気デバイス。
【請求項１１】
前記第２の値は、前記加算結果における前記第３の値の桁の桁上がりの有無を示す、
請求項１０に記載の磁気デバイス。
【請求項１２】
第３の導電層と、
前記第３の導電層に配置され、第３の制御端子を有する第３の磁気抵抗効果素子と、
前記第１の制御端子、前記第２の制御端子及び前記第３の制御端子に接続された第１の配線と、
をさらに具備し、
前記第１の回路は、
前記第３の磁気抵抗効果素子に保持された第３のデータを、前記第１の配線に出力し、
前記第１又は第２の電流を前記第１及び第２の導電層に供給し、前記第３のデータに対応する前記第１のデータを前記第１及び第２の磁気抵抗効果素子に書き込む、
請求項９乃至１１のうちいずれか１項に記載の磁気デバイス。
【請求項１３】
前記第２のデータは、前記第１及び第２の磁気抵抗効果素子の外部からのデータである、
請求項９乃至１２のうちいずれか１項に記載の磁気デバイス。
【請求項１４】
前記第１の磁気抵抗効果素子は、
前記第１の制御端子に接続され、固定の磁化を有する第１の磁性層と、
前記第１の導電層と前記第１の磁性層との間に配置され、可変な磁化を有する第２の磁性層と、
前記第１の磁性層と前記第２の磁性層との間に配置された非磁性層と、
を含む、
請求項９乃至１３のうちいずれか１項に記載の磁気デバイス。
【請求項１５】
第１の端子及び第２の端子を有する第１の導電層と、固定の磁化を有する第１の磁性層と、前記第１の導電層と前記第１の磁性層との間に配置され、磁化の向きが可変な第２の磁性層と、前記第１の磁性層と前記第２の磁性層との間に配置された非磁性層と、前記第１の磁性層に接続された制御端子と、を含む磁気抵抗効果素子と、
前記制御端子に接続されたインバータ回路と、
前記インバータ回路を含む第１の経路と、
インバータ回路を含まない第２の経路と、
前記第１の経路と前記第２の経路とを切り替えるスイッチ回路と、
を具備する磁気デバイス。