(57)【要約】      （修正有）【課題】低消費電力化とプロセッサの処理性能の向上とを両立させることができるメモリシステムを提供する。【解決手段】メモリシステム１は、アクセス速度を電気的に制御可能な不揮発の単一階層メモリ７と、不揮発メモリ７のメモリ領域の一部である第１領域を選択するＩ／Ｆコントローラ８とを備える。不揮発メモリ７内部に、第１領域のアクセス速度を、メモリ領域内の第１領域以外の第２領域のアクセス速度よりも高くするボディーコントローラ（ブースト回路）を有する。【選択図】図１
2016177689.tif 000002
【特許請求の範囲】
【請求項１】
アクセス速度を電気的に制御可能な不揮発メモリと、
前記不揮発メモリのメモリ領域の一部である第１領域を選択するコントローラと、
前記第１領域のアクセス速度を、前記メモリ領域内の前記第１領域以外の第２領域のアクセス速度よりも高くするブースト回路と、を備えるメモリシステム。
【請求項２】
前記コントローラは、プロセッサのレイテンシ、前記不揮発メモリの耐久性、アクセス頻度、およびアクセス履歴の少なくとも一つに基づいて、前記第１領域を選択する請求項１に記載のメモリシステム。
【請求項３】
前記コントローラは、前記不揮発メモリのアクセス頻度およびアクセス履歴の少なくとも一つに基づいて、プロセッサがアクセスする領域を決定して前記第１領域を選択する請求項２に記載のメモリシステム。
【請求項４】
前記ブースト回路は、前記第１領域のアクセス速度を高くしてから所定期間が経過すると、元のアクセス速度に戻す請求項１乃至３のいずれかに記載のメモリシステム。
【請求項５】
前記コントローラは、前記不揮発メモリのメモリ領域の中で、プロセッサにより近い場所を優先的に前記第１領域として選択する請求項１乃至４のいずれかに記載のメモリシステム。
【請求項６】
前記第１領域は、複数のサブ領域を有し、
前記ブースト回路は、前記複数のサブ領域のアクセス速度を相違させる請求項１乃至５のいずれかに記載のメモリシステム。
【請求項７】
前記複数のサブ領域は、プロセッサからの距離が相違しており、
前記コントローラは、前記プロセッサからの距離が近いサブ領域ほど、アクセス速度をより高くする請求項６に記載のメモリシステム。
【請求項８】
前記複数のサブ領域は、階層化された複数のキャッシュメモリとして用いられ、
前記複数のサブ領域のうち、アクセス速度が高いサブ領域ほど、低次のキャッシュメモリとして用いられる請求項６または７に記載のメモリシステム。
【請求項９】
前記コントローラは、複数の前記第１領域を選択可能であり、
前記ブースト回路は、前記コントローラが前記複数の第１領域を選択した場合には、前記複数の第１領域のそれぞれを、前記第２領域のアクセス速度よりも高くする請求項１乃至８のいずれかに記載のメモリシステム。
【請求項１０】
前記コントローラは、前記複数の第１領域を、互いに異なるプロセッサに対応づけて選択する請求項９に記載のメモリシステム。
【請求項１１】
前記コントローラは、共通の前記第１領域に対して、複数のプロセッサのアクセスを許容する請求項１乃至９のいずれかに記載のメモリシステム。
【請求項１２】
前記不揮発メモリとは別個に設けられ、前記不揮発メモリに記憶されたデータおよび記憶されるべきデータの少なくとも一方を格納する第１記憶部を備える請求項１乃至１１のいずれかに記載のメモリシステム。
【請求項１３】
前記第１記憶部は、１階層以上のキャッシュメモリを有する請求項１２に記載のメモリシステム。
【請求項１４】
前記第１記憶部は、プロセッサの主記憶メモリを有し、
前記不揮発メモリは、前記主記憶メモリに格納されたデータ、および格納されるべきデータの少なくとも一方を格納する請求項１２または１３に記載のメモリシステム。
【請求項１５】
前記ブースト回路は、前記第１領域内の基板電圧を、前記第２領域内の基板電圧よりも高くする請求項１乃至１４のいずれかに記載のメモリシステム。
【請求項１６】
前記ブースト回路は、前記第１領域内にアクセス速度がそれぞれ相違する複数のサブ領域がある場合には、アクセス速度が高いサブ領域ほど、前記基板電圧をより高くする請求項１５に記載のメモリシステム。
【請求項１７】
前記コントローラは、プロセッサが前記第２領域にアクセスを行って処理を行っているときに、割り込み処理が入って、前記プロセッサが前記割り込み処理を優先して処理した場合、前記割り込み処理が入る前に前記プロセッサが行っていた処理で使用するデータを、前記第２領域から前記第１領域に移動させる請求項１乃至１６のいずれかに記載のメモリシステム。
【請求項１８】
前記コントローラは、プロセッサが前記第１領域にアクセスを行って処理を行っているときに、割り込み処理が入って、前記プロセッサが前記割り込み処理を優先して処理した場合、前記割り込み処理が入る前に前記プロセッサが行っていた処理で使用するデータを、前記第１領域から前記第２領域に移動させる請求項１乃至１６のいずれかに記載のメモリシステム。
【請求項１９】
前記不揮発メモリは、ＭＲＡＭ（Magnetoresistive Random Access Memory）である請求項１乃至１８のいずれかに記載のメモリシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、不揮発メモリを備えたメモリシステムに関する。
【背景技術】
【０００２】
既存のメモリシステムでは、キャッシュメモリを階層化して、アクセス頻度の高いデータを高速の低次キャッシュメモリに格納することで、プロセッサのメモリアクセスを高速化している。
【０００３】
ところが、最近では、プロセッサコアを複数設けて並列処理を行うことが一般的になってきた。各プロセッサコアが並行してキャッシュメモリにアクセスすると、既存の階層化したキャッシュメモリでは、キャッシュミスの確率が高くなるおそれがある。
【０００４】
また、既存のキャッシュメモリは、ＳＲＡＭ等の高速な揮発メモリを使用することが多い。ＳＲＡＭは、メインメモリとして汎用的に用いられるＤＲＡＭよりも消費電力が多く、また、ＳＲＡＭは揮発メモリであることから、ＳＲＡＭにアクセスしていないスタンバイ状態でも、データ保持のための電力が必要である。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００３−１０８４３８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明は、低消費電力化とプロセッサの処理性能の向上とを両立させることができるメモリシステムを提供するものである。
【課題を解決するための手段】
【０００７】
本実施形態によれば、アクセス速度を電気的に制御可能な不揮発メモリと、
前記不揮発メモリのメモリ領域の一部である第１領域を選択するコントローラと、
前記第１領域のアクセス速度を、前記メモリ領域内の前記第１領域以外の第２領域のアクセス速度よりも高くするブースト回路と、を備えるメモリシステムが提供される。
【図面の簡単な説明】
【０００８】
【図１】一実施形態によるメモリシステム１を備えたプロセッサシステム２の概略構成を示すブロック図。
【図２】単一階層メモリ７の内部構成の一例を示すブロック図。
【図３】単一階層メモリ７の内部構成をより詳細に示すブロック図。
【図４】単一階層メモリ７を高次のキャッシュメモリとして使用する例を示すブロック図。
【図５】ＭＲＡＭの等価回路図。
【図６】ＭＴＪ素子３１の特定を示すグラフ。
【図７】本実施形態による単一階層メモリ７の状態遷移図。
【図８】プロセッサ３の周囲に単一階層メモリ７を配置した模式図。
【図９】マルチコアのプロセッサシステム２の第１例を示すブロック図。
【図１０】単一階層メモリ７にてＬ１キャッシュメモリ１０を実現する場合のブロック図。
【図１１】Ｌ１データキャッシュ４６、Ｌ１命令キャッシュ４７およびＬ２キャッシュメモリ４８を単一階層メモリ７にて実現するシングルコアの例を示すブロック図。
【図１２】各プロセッサ３ごとにＬ１データキャッシュ４６とＬ１命令キャッシュ４７を設けたマルチコアのブロック図。
【図１３】Ｌ１データキャッシュ４６、Ｌ１命令キャッシュ４７およびＬ２キャッシュメモリ４８を単一階層メモリ７にて実現するマルチコアの例を示すブロック図。
【図１４】多数のコア４を有するプロセッサシステム２の一例を示すブロック図。
【図１５】複数のプロセッサ３が単一階層メモリ７内の共通の第１領域４１にアクセスする例を示す図。
【図１６】各プロセッサ３が単一階層メモリ内の別個の第１領域４１にアクセスする例を示す図。
【図１７】プロセッサ３と単一階層メモリ７とがＴＳＶ等のコンタクト５１で接続されている例を示す模式図。
【図１８】単一階層メモリ７の第３応用例を説明する図。
【図１９】割り込みで中断した処理で使用していた単一階層メモリ７内の領域をプロセッサ３からより遠い場所に移動させる例を示す図。
【図２０】第３応用例の処理手順を示すフローチャート。
【図２１】プロセッサ３に近い順に、より低次のキャッシュメモリを配置する例を示す図。
【図２２】一部の階層のキャッシュメモリの構成を可変する例を示す概念図。
【図２３】プロセッサ３、Ｌ１キャッシュメモリ１０およびＬ２キャッシュメモリ４８を既存の構成とし、ＴＳＶ等のコンタクト５１を介して、単一階層メモリ７を接続した例を示す図。
【図２４】ＳＴＴ−ＭＲＡＭの典型的な動作概念図。
【図２５】ＳＴＴ−ＭＲＡＭの断面構造を示す図。
【図２６】ＳＯＴ−ＭＲＡＭの断面構造を示す図。
【図２７】磁壁移動型メモリの積層体を表す模式図。
【図２８】磁壁移動型メモリの積層体を表す模式図。
【発明を実施するための形態】
【０００９】
以下、図面を参照して本発明の実施形態を説明する。以下の実施形態では、メモリシステムおよびプロセッサシステム内の特徴的な構成および動作を中心に説明するが、メモリシステムおよびプロセッサシステムには以下の説明で省略した構成および動作が存在しうる。ただし、これらの省略した構成および動作も本実施形態の範囲に含まれるものである。
【００１０】
図１は一実施形態によるメモリシステム１を備えたプロセッサシステム２の概略構成を示すブロック図である。図１のプロセッサシステム２は、プロセッサ３と、メモリシステム１とを備えている。
【００１１】
プロセッサ３は、コア４と、演算器（ＡＬＵ：Arithmetic Logic Unit）５と、レジスタ６とを有する。コア４、演算器５およびレジスタ６は、それぞれ複数個ずつ設けられる場合もあるが、図１では、これらを１個ずつ備えた簡易的な構成を図示している。
【００１２】
メモリシステム１は、単一階層メモリ７と、Ｉ／Ｆ（インタフェース）コントローラ８と、メインメモリ（主記憶メモリ）９とを有する。例えば、単一階層メモリ７とＩ／Ｆコントローラ８は一つのチップに統合し、メインメモリ９は別のチップにしてもよいし、メインメモリ９も含めて一つのチップに統合してもよい。また、プロセッサ３、単一階層メモリ７およびＩ／Ｆコントローラ８を一つのチップに統合してもよいし、Ｉ／Ｆコントローラ８をプロセッサ３に統合して、単一階層メモリ７を別のチップにしてもよい。このように、図１のプロセッサシステム２内の各構成部のうち、少なくとも２つを任意に統合してもよい。また、本実施形態によるメモリシステム１は、メインメモリ９を含まないものであってもよい。すなわち、メインメモリ９はユーザ側で必要に応じて取付可能とし、メモリシステム１にはメインメモリ９を含めないようにしてもよい。
【００１３】
単一階層メモリ７は、不揮発メモリである。不揮発メモリの具体的な種類については後述するが、本実施形態による不揮発メモリは、部分領域ごとに、アクセス速度を電気的に制御できることを特徴としている。ここで、部分領域とは、特に限定されるものではなく、例えば、複数のワード線が配置された領域でもよいし、複数のビット線が配置された領域でもよいし、各メモリバンクでもよいし、その他の任意の単位領域でもよい。
【００１４】
本実施形態による不揮発メモリは、例えばＭＲＡＭ（Magnetoresistive Random Access Memory）である。ＭＲＡＭにも種々のタイプがあるため、詳しくは後述する。
【００１５】
Ｉ／Ｆコントローラ８は、不揮発メモリである単一階層メモリ７のメモリ領域の一部である第１領域を選択する。第１領域は、アクセス速度を高くする領域であり、後述するように、単一階層メモリ７のメモリ領域内の任意の領域に割り当ててもよいし、予め設定した領域に割り当ててもよい。Ｉ／Ｆコントローラ８は、例えば、不揮発メモリのアクセス頻度とアクセス履歴との少なくとも一方に基づいて、プロセッサ３がアクセスする可能性の高い領域を投機的に予測して、第１領域を選択する。なお、第１領域の選択をプロセッサ３にて行い、Ｉ／Ｆコントローラ８は、プロセッサ３からの指示に応じて、単一階層メモリ７に対して、第１領域を選択する具体的な処理（例えば、一部の部分領域を高速化するためのコマンドの発行など）を行ってもよい。
【００１６】
図２は単一階層メモリ７の内部構成の一例を示すブロック図である。図２の単一階層メモリ７は、メインメモリ９よりも高速アクセスが可能なキャッシュメモリとして使用することを想定したものである。
【００１７】
図２の単一階層メモリ７は、不揮発メモリからなるメモリアレイ１１と、デコーダ１２と、ビット線駆動回路１３と、書込み制御回路１４と、読出し制御回路１５と、ボディコントローラ（ブースト回路）１６と、内部コントローラ１７と、キャッシュロジック部１８とを有する。
【００１８】
メモリアレイ１１には、不図示の複数のワード線と複数のビット線とが交差するように配置されており、各ワード線と各ビット線との電位に応じてデータを記憶する複数のメモリセルがマトリクス状に配置されている。複数のメモリセルは、二次元平面上に配置されていてもよいし、立体的に配置されていてもよい。メモリセルを立体的に配置する場合、ワード線やビット線も立体的に配置する必要がある。
【００１９】
デコーダ１２は、プロセッサ３からのアクセス要求に応じて、メモリアレイ１１内の複数のワード線を駆動する。より具体的には、デコーダ１２は、プロセッサ３が発行したアドレスをデコードして、デコード結果に応じて特定のワード線を駆動する。
【００２０】
ビット線駆動回路１３は、プロセッサ３からのアクセス要求に応じて、メモリアレイ１１内の複数のビット線を駆動する。また、後述するように、ビット線駆動回路１３は、ビット線のプリチャージおよびディスチャージを行う場合もありうる。
【００２１】
書込み制御回路１４は、プロセッサ３が書込み要求を行った場合には、書込み先のメモリセルにデータを書き込むためのタイミング制御を行う。
【００２２】
読出し制御回路１５は、プロセッサ３が読出し要求を行った場合には、読出し先のメモリセルからデータを読み出すためのタイミング制御を行う。
【００２３】
ボディコントローラ１６は、単一階層メモリ７の第１領域のアクセス速度を、メモリ領域内の第１領域以外の第２領域のアクセス速度よりも高くする制御を行う。単一階層メモリ７がＭＲＡＭのように、基板電圧を変えることでアクセス速度を可変にできる場合は、ボディコントローラ１６は、単一階層メモリ７内の部分領域ごとに基板電圧を制御して、アクセス速度を可変させる。
【００２４】
なお、ボディコントローラ１６は、ＭＲＡＭなどのセルトランジスタを有するメモリセルを高速化するためのものである。通常はＮＭＯＳトランジスタで構成されるセルトランジスタは、基板電圧を高くすることで、動作速度を上げることができる。そこで、ボディコントローラ１６は、単一階層メモリ７の部分領域ごとに、部分領域内のすべてのメモリセルのセルトランジスタの基板電圧を高くする制御を行う。よって、基板電圧を上げても、アクセス速度を向上させることができないメモリセルを用いる場合は、ボディコントローラ１６は設ける必要はなく、ボディコントローラ１６に代わるアクセス速度向上手段が必要となる。その詳細については後述する。
【００２５】
内部コントローラ１７は、キャッシュロジック部１８からの指示を受けて、デコーダ１２、ビット線駆動回路１３、書込み制御回路１４および読出し制御回路１５を制御する。
【００２６】
キャッシュロジック部１８は、上述したＩ／Ｆコントローラ８からのコマンドを解釈して、内部コントローラ１７に指示を与える。また、キャッシュロジック部１８は、Ｉ／Ｆコントローラ８から送られてきたアドレスや制御信号、データを、単一階層メモリ７内の各部に伝送するとともに、読出しと書込みの切替も行う。
【００２７】
図３は単一階層メモリ７の内部構成をより詳細に示すブロック図である。図３において、各メモリセル２１は、ビット線ＢＬ０〜ＢＬ７とソース線ＳＬ０〜ＳＬ７との間に直列接続されたセルトランジスタ２２と磁気抵抗効果素子２３とを有する。複数のビット線の一端側には、ビット線駆動回路１３が接続され、他端側には書込み制御回路１４を構成するカラムデコーダ２４、書込み回路２５およびセンスアンプ２６が接続されている。図３では、読出し制御回路１５は省略している。
【００２８】
図３のメモリアレイ１１は、破線で示す複数の部分領域２７に分かれており、各部分領域２７の基板電圧はボディコントローラ１６により制御可能とされている。これにより、各部分領域２７ごとに、個別に基板電圧ＶＢ０〜ＶＢｎを制御することができる。ＭＲＡＭ等の不揮発メモリでは、一般に、基板電圧を上げるほどメモリセル２１は高速化し、プロセッサ３は、より高速にメモリセル２１に対して読出しと書込みを行うことができる。よって、部分領域２７ごとに、個別に基板電圧を制御すれば、部分領域２７ごとに、アクセス速度をそれぞれ相違させることができる。
【００２９】
したがって、本実施形態によれば、単一階層メモリ７を使いながらも、部分領域２７ごとにアクセス速度が異なる複数のメモリ領域を生成することができる。これらの複数のメモリ領域を、階層化された複数のキャッシュメモリとして使用することも可能である。より具体的な一例としては、メモリアレイ１１が３つの部分領域２７を有し、各部分領域２７にそれぞれ異なる基板電圧を与えた場合、Ｌ１、Ｌ２およびＬ３キャッシュメモリとして使用することができる。
【００３０】
なお、Ｌ１キャッシュメモリ１０は、プロセッサ３に内蔵されている場合も多い。このような場合、図４に示すように、単一階層メモリ７をＬ２キャッシュメモリ以降の高次のキャッシュメモリとして使用することができる。
【００３１】
このように、本実施形態による単一階層メモリ７は、単一階層メモリ７以外に設けられるキャッシュメモリの階層に合わせて、任意の階層のキャッシュメモリとして用いることができる。
【００３２】
また、図１や図４では、単一階層メモリ７とは別個にメインメモリ９を設ける例を示しているが、単一階層メモリ７の少なくとも一部をメインメモリ９として用いてもよい。この場合、部分領域２７ごとに、基板電圧を変えることで、単一階層メモリ７にて、１階層以上のキャッシュメモリとメインメモリ９とを実現することができる。
【００３３】
さらに、単一階層メモリ７内の複数の部分領域２７のサイズは、必ずしも同一である必要はなく、異なっていてもよい。通常の階層化されたキャッシュメモリでは、低次のキャッシュメモリほど容量が小さく高速であるため、それに合わせて、面積が最小の部分領域２７の基板電圧を最大にして、面積が大きい部分領域２７ほど、基板電圧をより小さくしてもよい。これにより、単一階層メモリ７を使用して、低次のキャッシュメモリほど高速かつ小容量の階層化されたキャッシュメモリを構築できる。
【００３４】
ボディコントローラ１６により基板電圧を上げる場合、常に決まった場所の部分領域２７の基板電圧を上げると、その部分領域２７の書換可能回数などの耐久性（エンジュランス）が劣化してしまうおそれがある。よって、基板電圧を上げる場所を固定にするのは好ましいとは言えない。よって、例えば、必要なときだけ、部分領域２７の基板電圧を上げるようにすることが考えられる。あるいは、基板電圧を上げる部分領域２７が固定化しないように、プロセッサ３やＩ／Ｆコントローラ８にて制御を行ってもよい。具体的な制御手法としては、例えば、各部分領域２７の基板電圧を上げた回数を各部分領域２７ごとに計測し、特定の部分領域２７だけ基板電圧を上げることがないように制御を行うことが考えられる。
【００３５】
（アクセス速度を高速化する部分領域２７の決定手法）
プロセッサ３やＩ／Ｆコントローラ８は、単一階層メモリ７内の一部の部分領域２７について、アクセス速度を高速化する際、種々の条件に従って、アクセス速度を高速化する部分領域２７を決定することができる。
【００３６】
（決定手法１）
プロセッサ３が発行する命令は、連続したアドレス領域を順にアクセスする傾向がある。例えば、ある命令で、あるキャッシュラインをアクセスした場合、次の命令で、その隣のキャッシュラインにもアクセスする可能性が高い。キャッシュラインは、数バイトから数ｋバイトのデータサイズを有する。例えば、１つのキャッシュラインが１つの部分領域２７である場合、ある命令でアクセスされたキャッシュラインに隣接するキャッシュラインに対応する部分領域２７の基板電圧を事前に上げておくことが考えられる。あるいは、１つのキャッシュライン内に配置されたビット線と同じビット線が配置された別のキャッシュラインに対応する部分領域２７の基板電圧を事前に上げてもよい。
【００３７】
（決定手法２）
一定のアドレス間隔で連続して複数回のアクセスがあった場合、同じアドレス間隔でのアクセスが続くことが予想される。そこで、プロセッサ３やＩ／Ｆコントローラ８に、アクセスされるアドレス間隔をモニタする機能を設けて、アクセスされるアドレス間隔が一定であることがわかると、次にアクセスされるアドレスを予測して、予め基板電圧を上げることが考えられる。
【００３８】
（決定手法３）
ソフトウェアで管理することが考えられる。例えば、プロセッサ３がループ処理を繰り返し実行する場合、次にアクセスするアドレスを予め予測できるため、そのアドレスに対応した部分領域２７の基板電圧を予め上げることが考えられる。
【００３９】
（決定手法４）
また、単一階層メモリ７内に、例えば部分領域２７ごと、あるいは部分領域２７よりも小さい領域ごとに冗長ビットを設けて、この冗長ビットにてアクセス回数を記録し、ある処理の実行中にアクセス回数が所定の閾値を超えた場合には、そのアクセス回数に対応した部分領域２７の基板電圧を上げることが考えられる。
【００４０】
（決定手法５）
上述した投機的な予測以外に、プロセッサ３やＩ／Ｆコントローラ８は、例えばレイテンシ、単一階層メモリ７の耐久性、アクセス頻度、およびアクセス履歴などに基づいて、基板電圧を上げる部分領域２７を決定してもよい。
【００４１】
レイテンシとは、コア４がアクセスに要する時間である。コア４に近い領域ほど一般に、レイテンシが小さく、アクセス速度が高くなる。よって、コア４に近い領域にアクセス頻度の高いデータを格納するのが望ましい。より具体的には、コア４がある処理を行っている最中の中間データや、頻繁にアクセスされるタグ情報などは、コア４に近い領域に格納し、さらにこの領域の基板電圧を上げれば、より高速にアクセス可能となり、プロセッサ３の処理性能を向上できる。したがって、プロセッサ３やＩ／Ｆコントローラ８は、レイテンシが小さい部分領域２７の基板電圧を予め上げることが考えられる。
【００４２】
また、上述したように、同じ領域の基板電圧を上げ続けると、その領域の耐久性が低下する。このため、プロセッサ３やＩ／Ｆコントローラ８は、書込み回数の少ない部分領域２７の基板電圧を上げることが考えられる。
【００４３】
さらに、アクセス頻度の高いデータは、再度アクセスされる可能性が高い。よって、プロセッサ３やＩ／Ｆコントローラ８は、アクセス頻度が高いデータを含む部分領域２７の基板電圧を上げることが考えられる。
【００４４】
また、ＬＲＵ（Least Recently Used）情報を参照すると、直近にアクセスされたデータを検出することができる。直近にアクセスされたデータは再度アクセスされる可能性が高い。そこで、プロセッサ３やＩ／Ｆコントローラ８は、直近にアクセスされたデータを含む部分領域２７の基板電圧を上げることが考えられる。あるいは、タグ内に、各キャッシュラインがアクセスされた順番を示すビットを付与し、キャッシュミスが発生した場合には、最も古いキャッシュラインのデータをメインメモリ９に追い出して空きラインを作り、この空きラインにメインメモリ９から読み込んだ新しいアドレスのデータを入れる。そして、キャッシュラインの入替の有無にかかわらず、アクセスされたキャッシュラインを最新とし、その他のキャッシュラインの順番を一つ繰り下げて、アクセスの順番を示す情報を更新する。アクセスの順番が高くないキャッシュラインがコア４の近くにあれば、そのキャッシュラインを含む部分領域２７の基板電圧を上げてもよい。
【００４５】
（単一階層メモリ７のアクセス速度向上化手法）
ボディコントローラ１６による基板電圧の制御は、単一階層メモリ７へのアクセスとは独立して行われるが、ビット線駆動回路１３によるビット線のプリチャージやディスチャージを、単一階層メモリ７へのアクセスとは独立して行ってもよい。ＭＲＡＭ等の不揮発メモリでは、ビット線の電圧を高くするほど、磁化反転の速度が高くなり、メモリアクセスが高速化する。よって、上述した基板電圧の制御と同様に、単一階層メモリ７内の一部の部分領域２７内のビット線を予めプリチャージしておくことで、その部分領域２７内のメモリセル２１へのアクセス速度を向上できる。
【００４６】
図５はＭＲＡＭの等価回路である。図５の回路は、ビット線電圧とソース線（接地線）電圧との間に、ＭＴＪ（Magnetic Tunnel Junction）素子３１とセルトランジスタ３２とが直列接続されており、ビット線電圧をＶdd、セルトランジスタ３２のゲート電圧をＶg、ドレイン電圧をＶd'としている。
【００４７】
図６はＭＴＪ素子３１を流れる電流特性を示すグラフである。図６の横軸は図５のセルトランジスタ３２のドレイン電圧Ｖd'、縦軸はＭＴＪ素子３１を流れる電流である。図６のグラフに示すように、セルトランジスタ３２のゲート電圧Ｖgが高くなるほど、ＭＴＪ素子３１を流れる電流が増える。ＭＴＪ素子３１を流れる電流が増えるほど、磁化反転の速度が向上する。
【００４８】
磁化反転の速度を向上させる手法として、図５のビット線電圧Ｖddを上げる手法と、上述した基板電圧を上げる手法と、セルトランジスタ３２のゲート電圧Ｖgすなわちワード線電圧を上げる手法とがあり、これらは、任意に併用してもよい。
【００４９】
ワード線の電圧は、通常、アクセスするときに設定されるため、高速アクセスを行いたいメモリセル２１については、アクセス時にワード線の電圧を通常よりも高くすればよい。また、アクセス時にビット線の電圧をより高くすることも、高速アクセスに寄与する。一方、基板電圧とビット線のプリチャージ電圧の制御は、投機的に予測した部分領域２７のアクセス速度を予め高速化するためにも利用できる。
【００５０】
（単一階層メモリ７の状態遷移）
図７は本実施形態による単一階層メモリ７の状態遷移図である。単一階層メモリ７のメモリ領域は、アクセス速度を高速化する第１領域４１と、通常のアクセス速度の第２領域４２とを有する。第１領域４１は、上述したように、例えば基板電圧を上げることで、アクセス速度を高速化する。図７では、アクセス速度を高速化している状態を便宜上、第２状態４３と呼んでいる。ただし、上述したように、長期間にわたって、同じ部分領域２７の基板電圧を上げるのは、耐久性の点で好ましくない。そこで、基板電圧を上げてから所定期間が経過すると、自動的に基板電圧やビット線電圧を下げるようにしてもよい。あるいは、プロセッサ３のアクセス傾向が変化した時点（例えば、割り込みが入った場合や、不連続のアドレス領域へのアクセスが開始された場合など）で、基板電圧やビット線電圧を下げてもよい。
【００５１】
第２領域４２は、プロセッサ３によりアクセスされていない非選択の第１状態４４と、プロセッサ３が命令を実行したときに初めて選択される第３状態４５とを有する。第１領域４１の第２状態４３でのアクセス速度は、第３状態４５でのアクセス速度よりも高くしている。これにより、プロセッサ３は、単一階層メモリ７に通常のアクセス手法でアクセスするよりも、高速に単一階層メモリ７内の第１領域４１にアクセスできることになる。
【００５２】
なお、ビット線電圧のプリチャージは、第１領域４１で行うのではなく、第２領域４２の第１状態４４で行ってもよい。すなわち、プロセッサ３が第２領域４２のアクセスを行っていない非選択時に、第２領域４２内のビット線をプリチャージしておけば、その後にプロセッサ３がアクセスしたときに移行する第３状態４５でのアクセス速度を向上させることができる。この場合、第１領域４１では、ボディコントローラ１６による基板電圧の制御だけが行われることになり、第１領域４１の第２状態４３での消費電力を低減しつつ、メモリアクセスを高速化できる。
【００５３】
一方、第２領域４２の第３状態４５では、セルトランジスタ３２のスイッチング速度を逆バイアス制御によって低速化してもよい。例えば、ビット線電圧を接地レベルに固定させることで、動作速度は遅くなるが、より低消費電力化を図ることができる。
【００５４】
本実施形態による単一階層メモリ７は、キャッシュメモリとして使用可能である。キャッシュメモリの構成として、任意のアドレスのデータを全キャッシュラインに格納可能としたフルアソシアティブと、各アドレスごとに格納先を１箇所に限定したダイレクトマップと、各アドレスごとに複数のキャッシュラインのいずれかに格納可能としたセットアソシアティブとがある。本実施形態による単一階層メモリ７は、フルアソシアティブ、ダイレクトマップ、およびセットアソシアティブのいずれでキャッシュ管理を行ってもよい。
【００５５】
プロセッサ３がアクセス要求したデータが単一階層メモリ７の第１領域４１内に存在しない場合がありうる。通常のキャッシュメモリでは、データキャッシュの他に、データキャッシュ内のアドレス情報を保持するタグ部を有する。プロセッサ３からアクセス要求のあったアドレスは、このタグ部で検索されて、アクセス要求のあったデータが格納されているか否かと、格納されている場合には格納場所とが特定される。
【００５６】
例えば、単一階層メモリ７内にタグ部を設けて、このタグ部にて、プロセッサ３からアクセス要求のあったデータが第１領域４１ではなく、第２領域４２にあることがわかった場合、第２領域４２は、第３状態４５になる。第３状態４５は、第２状態４３と比べて、メモリアクセスに時間がかかるため、プロセッサ３の処理待ち時間が生じてしまう。よって、タグ部で第２領域４２にデータがあることがわかった段階で、第２領域４２内のアクセス先周辺を第１領域４１および第２状態４３にしてもよい。この場合、新たな第１領域４１の基板電圧を事前に上げることができないため、例えば、この第１領域４１内のビット線電圧を高くしたり、ワード線電圧を高くするなどして、メモリアクセスの高速化を図ってもよい。これにより、プロセッサ３がアクセス要求を行ったデータが第１領域４１でなく、第２領域４２内にあったとしても、プロセッサ３の処理待ち時間の増大を抑制できる。
【００５７】
（単一階層メモリ７の特徴）
本実施形態による単一階層メモリ７の特徴の一つは、プロセッサ３の処理状況に応じて、単一階層メモリ７のアクセス速度を部分的に任意に変更できることである。図８はプロセッサ３の周囲に単一階層メモリ７を配置した模式図である。図８では、簡略化のために、プロセッサ３と単一階層メモリ７の配置領域を円形にしている。本実施形態では、プロセッサ３の処理負荷が大きくなると、単一階層メモリ７内に、アクセス速度を高くした第１領域４１を任意に生成することができる。この第１領域４１の配置場所は、上述したように、例えば、プロセッサ３のアクセス頻度やアクセス履歴などにより、投機的に予測される。プロセッサ３は、この第１領域４１に対して、第１領域４１以外の第２領域４２よりも、高速にアクセスすることができるため、プロセッサ３がこれからアクセスすると思われるアドレス範囲を事前に第１領域４１に設定しておけば、プロセッサ３のメモリアクセス性能を向上させることができる。
【００５８】
プロセッサ３がアクセスするアドレス範囲は、時間とともに変化する場合があり、そのアクセス傾向を事前に掴んで、第１領域４１を移動させれば、継続してプロセッサ３の処理性能を向上させることも可能になる。
【００５９】
通常のプロセッサシステムでは、プロセッサ３が頻繁にアクセスするデータをＬ１キャッシュに格納しているが、Ｌ１キャッシュは高速ではあるものの、メモリ容量が限定されているため、キャッシュミスが頻繁に起こり、キャッシュラインの入替を頻繁に行わなければならないことから、Ｌ１キャッシュの本来の高速性能を生かせないことが多い。これに対して、本実施形態による単一階層メモリ７では、プロセッサ３の処理状況に応じて、高速アクセスが可能なメモリ領域（第１領域４１）を動的に増減できるため、キャッシュミスやキャッシュラインの入替によるメモリアクセス性能の低下という問題が本質的に起きなくなる。また、通常のＬ１キャッシュはＳＲＡＭで構成することが多い。高速ではあるが、リーク電力が大きく、セル面積が大きい（占有面積、チップ面積、フットプリントが大きいとも言える）課題がある。本実施形態では、不揮発メモリからなる単一階層メモリ７を用いて、必要に応じて、部分的にアクセス速度を向上させることができる。リーク電力の課題が改善されるため、メモリシステム１の全体としての消費電力を削減できる。また、ＳＲＡＭと比べてセル面積が小さくできる。セル面積が小さくなることで、配線長が短くできるので配線遅延が改善される結果、レイテンシーが短くなることが期待できる。 
【００６０】
（マルチコアへの適用）
図１や図４では、シングルコアのプロセッサシステム２の構成を図示したが、本実施形態は、マルチコアのプロセッサシステム２にも適用可能である。図９はマルチコアのプロセッサシステム２の第１例を示すブロック図である。図９のプロセッサシステム２は、２つのプロセッサ３で１つの単一階層メモリ７を共有する例を示しているが、３つ以上のプロセッサ３で１つの単一階層メモリ７を共有してもよい。図９の例では、単一階層メモリ７にはインタフェース部３３が接続されており、このインタフェース部３３に、ＳＳＤ（Solid State Disk）等の外部記憶装置３４と、メインメモリ９と、各種のＩ／Ｏ機器３５とが接続されている。このインタフェース部３３は、内部バスと外部バスの少なくとも一方でもよいし、イーサネット（登録商標）やＵＳＢ（Universal Serial Bus）などの通信インタフェースでもよい。
【００６１】
図９の各プロセッサ３は、コア４とＬ１キャッシュメモリ１０を内蔵しているが、Ｌ２キャッシュメモリ以降の高次のキャッシュメモリを各プロセッサ３に内蔵してもよいし、逆に、Ｌ１キャッシュメモリ１０を各プロセッサ３から省略して、単一階層メモリ７にてＬ１キャッシュメモリ１０を実現してもよい。この場合、上述したように、単一階層メモリ７内の一部の部分領域２７の基板電圧を上げることで、Ｌ１キャッシュメモリ１０として利用可能となる。
【００６２】
図１０は単一階層メモリ７にてＬ１キャッシュメモリ１０を実現する場合のブロック図である。この場合、各プロセッサ３の内部にＬ１キャッシュメモリ１０を設ける必要がなくなるため、ハードウェア構成を簡略化でき、コスト低減が図れる。
【００６３】
ところで、Ｌ１キャッシュメモリ１０は、データ格納用のＬ１データキャッシュと、命令格納用のＬ１命令キャッシュとに分けられる場合がある。この場合、Ｌ２キャッシュメモリは、Ｌ１データキャッシュとＬ１命令キャッシュの双方に接続されて、相互にデータの送受を行う。
【００６４】
図１１はＬ１データキャッシュ４６、Ｌ１命令キャッシュ４７およびＬ２キャッシュメモリ４８を単一階層メモリ７にて実現するシングルコアの例を示すブロック図である。
【００６５】
また、図１２は単一階層メモリ７とは別個に、各プロセッサ３ごとにＬ１データキャッシュ４６とＬ１命令キャッシュ４７を設けたマルチコアのブロック図である。さらに、図１３は、Ｌ１データキャッシュ４６、Ｌ１命令キャッシュ４７およびＬ２キャッシュメモリ４８を単一階層メモリ７にて実現するマルチコアの例を示すブロック図である。
【００６６】
最近では、４つ以上のコア４を並列処理させて処理性能を向上させたプロセッサ３も提案されている。図１４は多数のコア４を有するプロセッサシステム２の一例を示すブロック図である。図１４のプロセッサシステム２は、多数のコア４のＬ１キャッシュを含むすべてのキャッシュメモリを２つの単一階層メモリ７で実現するものであり、これら単一階層メモリ７を制御するためのメモリコントローラ５０が設けられている。単一階層メモリ７の数は、コア４の数に応じて増減すればよい。
【００６７】
上述した図９等のマルチコアの構成において、単一階層メモリ７内の共通の第１領域４１を、複数のプロセッサ３がアクセスするようにしてもよい。すなわち、複数のプロセッサ３で、同じ第１領域４１を共有してもよい。例えば、データを並列処理しつつ、その演算結果を別の用途で使用する場合がある。この場合、例えば、２つのプロセッサ３がデータを並列処理し、逐次出力される処理結果を、これら２つ以外のプロセッサ３で処理することが可能である。複数のプロセッサ３で第１領域４１を共有しても、各プロセッサ３の待ち時間が生じないように構成できるため、処理性能が向上し、消費電力も低減できる。図１５は複数のプロセッサ３が単一階層メモリ７内の共通の第１領域４１にアクセスする例を示している。ここでは、プロセッサ３は既存のＳＲＡＭを用いて構成されたＬ１と接続され、本実施形態の単一階層メモリ７とはＴＳＶ（Through Silicon Via）等のコンタクト５１で接続されている。図１５は、図９の例をプロセッサ３と単一階層メモリ７だけ抜き出して簡略化して描いた概念図である。プロセッサ３は複数あってもよいし、１つだけであっても良い。図１５では、単一階層メモリ７内の共通の第１領域４１とがＴＳＶ等のコンタクト５１で接続されている例を示している。
【００６８】
あるいは、単一階層メモリ７内に複数の第１領域４１を設けて、各プロセッサ３が別個の第１領域４１にアクセスできるようにしてもよい。単一階層メモリ７内に複数の第１領域４１を設けるには、例えば、図３に示したボディコントローラ１６が、順次に、あるいは並列的に、複数の部分領域２７の基板電圧を上げればよい。単一階層メモリ７内に複数の第１領域４１を設けることで、各コア４は、個別独立に処理を行えるため、マルチコアの処理性能をより向上させることができる。図１６は各プロセッサ３が単一階層メモリ内の別個の第１領域４１にアクセスする例を示している。
【００６９】
（レイテンシの違い）
プロセッサ３のアクセス時間は、読出しサイクルとアクセスサイクルの和に依存する。読出しサイクルは高速化できるが、アクセスサイクルはプロセッサ３からの距離で決まる。アクセスサイクルは、レイテンシと等価な値である。そこで、レイテンシを考慮に入れて、単一階層メモリ７内の高速化に適した場所にデータを記憶するようにしてもよい。
【００７０】
図１７はプロセッサ３と単一階層メモリ７とがＴＳＶ等のコンタクト５１で接続されている例を示す模式図である。図１７は、図９の例をプロセッサ３と単一階層メモリ７だけ抜き出して簡略化して描いた概念図である。図１７のプロセッサ３は、Ｌ１キャッシュメモリ１０を内蔵している。単一階層メモリ７の中で、プロセッサ３に接続されたコンタクト５１に近いほど、レイテンシが短くなり、高速アクセスが可能となる。よって、例えば、単一階層メモリ７の中で、アクセス頻度が高いデータを、できるだけプロセッサ３に近い場所に移動させてもよい。これにより、アクセス頻度の高いデータのレイテンシを短くでき、プロセッサ３のアクセスを高速化できる。
【００７１】
（単一階層メモリ７の第１応用例）
本実施形態によるプロセッサシステム２は、種々の情報処理プログラムの処理を高速化する目的で利用できる。例えば、音声認識プログラムや画像認識プログラムなどが具体例として挙げられる。これらのプログラムでは、入力データを分析し、処理に必要な特徴を抽出する特徴抽出処理や、同特徴抽出結果より予め設定した判定基準や辞書データを参照することにより入力内容を想定するマッチング処理などが行われる。高い精度を実現するには、抽出特徴を高次元の情報で表現する必要があり、またマッチング処理で用いる辞書データも多くの情報量を含んでいる必要があることから、処理量が大規模になる。こうした大規模化に伴って、処理の遅延が課題となる。遅延の要因の一つにデータの読み込み処理があるが、本実施形態による単一階層メモリ７を用いることで、読み込み遅延を減少させることが可能となる。以下、音声認識プログラムを例に説明する。
【００７２】
まず、音声認識プログラムでは、特徴抽出結果をキャッシュメモリに格納することにより、後段の処理であるマッチング処理時に読み込む必要がなく、高速に処理を行える。しかしながら、特徴抽出処理量は、音声区間の長さに応じて変化するため、データ量が多くなった場合、あるいは、キャッシュメモリが他の用途に占有された場合に、キャッシュメモリからデータが消えるという課題があった。本実施形態による単一階層メモリ７では、特徴抽出結果を単一階層メモリ７に記憶した後、必要に応じて高速に読み出せるため、データ処理の遅延を抑えることができる。
【００７３】
また、音声特徴抽出結果から発声内容を推定するマッチング処理で用いる辞書をキャッシュメモリに格納することで高速に処理することができる。しかしながら、従来は、辞書をキャッシュメモリに読み込む際に、その都度データを参照する必要があり、キャッシュメモリへの読み込み時間による遅延が発生する。本実施形態では、事前に単一階層メモリ７に辞書データを読み込んでおけば、参照する直前に探索する領域のアクセス速度を高速化できるため、読み込み遅延なく、高速な探索処理が実現可能となる。
【００７４】
（単一階層メモリ７の第２応用例）
同一のデータに対して複数の分析処理を実行する場合にも、本実施形態による単一階層メモリ７を活用して処理の高速化が期待できる。たとえば、１つの音声データから抽出した特徴量に対して、話者照合処理と音声認識処理を同時に実行することにより、より高機能な音声応答システムを実現可能となる。すなわち、話者照合処理により、音声応答システムを利用しているユーザーを特定する一方、音声認識処理によりユーザーの要求を理解することにより、利用者の要求を適切に把握し、応答処理を実現することが可能となる。
【００７５】
例えば、音声入力により録画した番組を検索し、検索結果をユーザーに提供する音声応答システムでは、「私が昨日みた映画のタイトルは何？」といったユーザーごとの履歴を参照する必要がある検索条件に対しても、上記処理を行うことにより「Ａさんが昨日みた映画は、映画Ｂですね」といった応答を出力することができる。本処理を、高速かつ高精度に実施するには、特徴抽出した結果を単一階層メモリ７に記憶し、同データを複数プロセッサ３から参照して並列処理を実行することにより、遅延なく高機能な音声応答システムを実現することができる。
【００７６】
（単一階層メモリ７の第３応用例）
図１８は単一階層メモリ７の第３応用例を説明する図である。複数のプログラムを実行するシステム上では、優先度に基づき処理を実行する必要がある。単一階層メモリ７内の第２領域４２を使用して、プロセッサ３があるプログラムＡを実行中に（ｐ１）、別の優先度の高いプログラムＢの実行要求があった際、プロセッサ３は、プログラムＡの実行を一時中断して（ｐ２）、処理結果を格納する第２領域４２を第３状態４５として保存しておき、例えばプログラムＢの実行中にこの第２領域４２内のデータを高速アクセス可能な第１領域４１に移動して第２状態４３にしておく（ｐ３）。これにより、プログラムＢが終了後に、プログラムＡの処理を再開したときに、高速に処理を行うことができる（ｐ４）。
【００７７】
再開するために状態を変化させるタイミングとして、他の処理が終了する見込みが立った時点で状態を変化させるための処理を行うことで、遅滞なく中断中の処理を再開できる。あるいは、事前にレイテンシがわかる場合は、レイテンシの小さい領域にデータを移動しておいてもよい。また、再開を想定して、中断時にレイテンシの小さい領域にデータを移動しておいてもよい。
【００７８】
例えば、音声認識処理を実行しているときに、別のアプリケーションの実行要求があった場合に、作業状態を一時保存しておき、当該アプリケーションが終了した際に上記手順で再開することで、より効率良く音声認識処理を実施できる。中断指示のあった時点でのデータを保持してもよく、プロセスの途中であれば、当該プロセスの冒頭から再開できるようにデータを第３状態４５として保持してもよい。
【００７９】
図１８とは逆に、割り込みで中断した処理で使用していた単一階層メモリ７内の領域を、図１９に示すように、プロセッサ３からより遠い場所に移動させてもよい。図１９では、第１処理用のデータを高速アクセス可能な第１領域４１に格納し、この第１領域４１にプロセッサ３がアクセスして第１処理を行っている最中に（ｐ５）、優先順位の高い第２処理の割り込みが入った場合は、第１処理を中断して、第２処理の実行を開始し（ｐ６）、第１処理で使用していた第１領域４１を第２処理で利用できるように、第１処理が使用していた領域を、第２領域４２に移動させてもよい（ｐ７）。その後、第２処理の実行が完了すると、プロセッサ３は移動後の第２領域４２内にアクセスして第１処理の実行を継続する（ｐ８）。
【００８０】
図２０は上述した第３応用例の処理手順を示すフローチャートである。まず、プロセッサ３は第１処理を実行する（ステップＳ１）。第１処理の実行中に、優先度の高い第２処理の割り込みが入ると、プロセッサ３は第１処理を中断するとともに（ステップＳ２）、第２処理を開始する（ステップＳ３）。
【００８１】
第１処理で使用していた単一階層メモリ７内の領域を移動させる必要があるか否かを判定する（ステップＳ４）。領域を移動させる必要があれば、この領域を単一階層メモリ７内の別の場所に移動させる（ステップＳ５）。移動先は、図１８に示すように、プロセッサ３により近い場所でもよいし、図１９に示すように、プロセッサ３からより遠い場所でもよい。
【００８２】
次に、移動後の領域、または移動させなかった場合は元の領域を第１領域４１または第２領域４２として保持する（ステップＳ６）。よって、第１領域４１は、基板電圧を上げるなどして、高速アクセスが可能な準備をしておく。第２領域４２は、基板電圧を上げる処理は行わない。
【００８３】
その後、プロセッサ３による第２処理が終了すると（ステップＳ７）、第１領域４１または第２領域４２を用いて第１処理を再開する（ステップＳ８）。
【００８４】
また、複数のプログラムを実行するシステム上では、優先度に基づき処理を実行する必要がある。あるプログラムＡをＣＰＵ１で実行中に、別の優先度の高いプログラムＢの実行がＣＰＵ２で行われる際、ＣＰＵ１で用いているキャッシュ領域をＣＰＵ２により多く割り当てることで、効率よいキャッシュ利用を実現できる。また、優先度の高いプログラム用にレイテンシーの少ない領域を優先的に割り当てても良い。
【００８５】
（単一階層メモリ７の第４応用例）
単一階層メモリ７の用途が予め決まっている場合、単一階層メモリ７中の階層化キャッシュメモリとして使用する複数の部分領域２７を固定化して使用してもよい。図２１は単一階層メモリ７の第４応用例の概念図である。図２１は、単一階層メモリ７中で、プロセッサ３に近い順に、より低次のキャッシュメモリを配置する例を示している。図２１では、プロセッサ３に既存のＬ１キャッシュメモリが内蔵されていることを想定しており、プロセッサ３に最も近い部分領域２７をＬ２キャッシュメモリ４８として使用し、その次にプロセッサ３に近い部分領域２７をＬ３キャッシュメモリ４９として使用している。
【００８６】
図２１の場合、例えば、Ｌ２キャッシュメモリ４８用の部分領域２７の基板電圧を、Ｌ３キャッシュメモリ４９用の部分領域２７の基板電圧よりも高くし、Ｌ３キャッシュメモリ４９用の部分領域２７の基板電圧をその外側の部分領域２７の基板電圧よりも高くする。また、Ｌ２キャッシュメモリ４８用の部分領域２７の総面積を、Ｌ３キャッシュメモリ３９用の部分領域２７の総面積より狭くしてもよい。
【００８７】
図２１では、Ｌ２キャッシュメモリ４８用の部分領域２７の基板電圧と、Ｌ３キャッシュメモリ４９用の部分領域２７の基板電圧とは、それぞれ固定の電圧レベルに設定することを想定しているが、プロセッサ３が動作を停止しているときには、これら部分領域２７の基板電圧を下げるようにして、これら部分領域２７の耐久性が低下しないようにするのが望ましい。
【００８８】
また、図２１のようにいったん固定化した階層化キャッシュメモリ中の少なくとも一部の階層のキャッシュメモリの構成を、プロセッサ３の処理動作に応じて任意に可変できるようにしてもよい。
【００８９】
図２２は一部の階層のキャッシュメモリの構成を可変する例を示す概念図である。図２２は、図２１に示す階層化キャッシュメモリのうち、Ｌ２キャッシュメモリ４８のメモリ容量を増やして、Ｌ３キャッシュメモリ４９のメモリ容量を減らす例を示している。例えば、プロセッサ３の計算量が一時的に増大して、計算結果を格納する高速アクセス可能なメモリ領域が必要とされる場合や、膨大なデータの高速検索を行う必要が生じた場合などに、一時的にＬ２キャッシュメモリ４８のメモリ容量を増やすことで、プロセッサ３のメモリアクセスを向上させることができる。
【００９０】
（単一階層メモリ７の第５応用例）
本実施形態による単一階層メモリ７は、既存のキャッシュメモリと併用して用いてもよい。例えば、プロセッサ３が最初に高速アクセスするＬ１キャッシュメモリは、従来と同様にＳＲＡＭで構成し、Ｌ２キャッシュメモリ４８以降の高次のキャッシュメモリを本実施形態による単一階層メモリ７で実現してもよい。その変形例として、Ｌ２キャッシュメモリ４８もＳＲＡＭで構成し、Ｌ３キャッシュメモリ４９以降の高次のキャッシュメモリを本実施形態による単一階層メモリ７で実現してもよい。また、メインメモリ９は、例えばＤＲＡＭで構成してもよいし、場合によっては、メインメモリ９も単一階層メモリ７で実現してもよい。図２３は、プロセッサ３、Ｌ１キャッシュメモリ１０およびＬ２キャッシュメモリ４８を既存の構成とし、ＴＳＶ等のコンタクト５１を介して、単一階層メモリ７を接続した例を示している。単一階層メモリ７は、例えばＬ３キャッシュメモリ４９以降の高次のキャッシュメモリとして使用したり、プロセッサ３が作業用に用いるワークメモリとして使用できる。あるいは、メインメモリ９を単一階層メモリ７と別個に設けてもよい。
【００９１】
さらに、ある階層のキャッシュメモリ中のタグ部をＳＲＡＭで構成し、データキャッシュ部を本実施形態による単一階層メモリ７で実現してもよい。あるいは、タグ部とデータキャッシュ部の両方を本実施形態による単一階層メモリ７で実現し、タグ部については、基板電圧をより高くするなどして、高速アクセスが可能としてもよい。
【００９２】
既存のキャッシュメモリやメインメモリ９と本実施形態による単一階層メモリ７とを併用する場合、同じダイ上にこれらのメモリを実装してもよいし、ＴＳＶなどのコンタクト５１を介して、別のダイ上に各階層のメモリを配置してもよい。また、タグ部とデータキャッシュ部とを別個のダイに配置してもよい。
【００９３】
さらに、従来と同様に構成された例えばＳＲＡＭを用いた階層化キャッシュメモリの他に、本実施形態による単一階層メモリ７を設けてもよい。そして、プロセッサ３がＯＳ（Operating System）の管理下で通常処理を行う場合は、従来の階層化キャッシュメモリを使用し、計算量の多い処理を行う場合に、単一階層メモリ７も併用して処理の迅速化を図るようにしてもよい。この場合、単一階層メモリ７は、上述した第１領域４１と第２領域４２に分かれていてもよいし、第２領域４２だけでもよい。従来の階層キャッシュメモリと本実施形態による単一階層メモリ７とを併用することで、割り算処理などの時間のかかる処理を後回しすることなく、単一階層メモリ７を使用して並列的に実行でき、プロセッサ３の処理速度を向上させることができる。
【００９４】
（単一階層メモリ７の具体例）
１．ＳＴＴ−ＭＲＡＭを用いる例
不揮発メモリは、ＳＴＴ−ＭＲＡＭ（Spin-Transfer Torque Magnetic Tunnel Junction MRAM)である。ＳＴＴ−ＭＲＡＭは動作電流によって磁化反転の速度が変わることが知られている。特に、dynamic領域と呼ばれる、典型的には１０ｎｓ未満で磁化反転するような領域では、反転時間は電流値によって大きく変化する。図２４はＳＴＴ−ＭＲＡＭの書き込み電流とパルス時間の関係を表した典型的な動作概念図である。例えば、直径２０ｎｍのあるＭＴＪ素子３１では、パルス幅３ｎｓの電流では、３０uＡ（マイクロアンペア）の大きさで磁化反転が起きる。パルス幅２ｎｓの電流では、５０uＡの大きさで磁化反転が起きる。パルス幅１ｎｓの電流では、１００uＡの大きさで磁化反転が起きる。
【００９５】
このように、パルス幅が短いほど、磁化反転に必要な電流値が大きくなる。言い換えると、ＭＴＪ素子３１に流れる電流が変わると、磁化反転にかかる速度が変わる。よって、不揮発メモリとしてＭＴＪを利用したセルを構成すると、プロセッサ３がデータを書き出す際の速度が変えられるようになり、処理性能が向上する。ＭＴＪ素子３１は図５に示したようにセルトランジスタ３２のソース、あるいはドレインに接続されている。上述したように、ＭＴＪ素子３１を流れる電流値は、ビット線電圧Ｖddを変える方法、基板バイアスを変える方法、ゲート電圧を変える方法などがある。例えば、セルトランジスタ３２を流れる電流を半分にする場合、ゲート電圧を３０％程度小さくすれば良い。この際、セルトランジスタ３２の特性が飽和領域にあれば、ゲート電圧を変えてトランジスタの抵抗値が変わっても、目的の電流値をＭＴＪ素子３１に流すことが可能である。
【００９６】
図２５はＳＴＴ−ＭＲＡＭの断面構造を示す図である。図２５に示すように、ＳＴＴ−ＭＲＡＭは、第１導電層６１、第１強磁性層６２、第１非磁性層６３、第２強磁性層６４および第２導電層６５を順に積層した構造を有する。第１強磁性層６２とは、磁化の方向が固定された参照層である。第２強磁性層６４とは、磁化の方向が可変である記憶層である。第１強磁性層６２と第２強磁性層６４の間に、第１非磁性層６３（スペーサー層）がある。
【００９７】
第１強磁性層６２と第２強磁性層６４のどちらかは、第１導電層６１に直接、あるいは間接的に接続されている。また、第１強磁性層６２と第２強磁性層６４のどちらかは、第２導電層６５に直接、あるいは間接的に接続されている。
【００９８】
以下では、第１導電層６１、第１強磁性層６２、第１非磁性層６３、第２強磁性層６４、第２導電層６５の積層体を積層体SB1と名付ける。第１強磁性層６２の膜厚は０．５〜１５ｎｍであり、典型的には２〜１０ｎｍである。第２強磁性層６４の膜厚は０．５〜１０ｎｍであり、典型的には０．８〜３ｎｍである。
【００９９】
第１強磁性層６２及び第２強磁性層６４には、例えば、鉄（Ｆｅ）、コバルト（Ｃｏ）、ニッケル（Ｎｉ）、マンガン（Ｍｎ）及びクロム（Ｃｒ）よりなる群から選択された少なくともいずれかの元素を含む金属材料を用いることができる。さらに、上記の群から選択された少なくともいずれかと、白金（Ｐｔ）、パラジウム（Ｐｄ）、イリジウム（Ｉｒ）、ルテニウム（Ｒｕ）及びロジウム（Ｒｈ）、ガリウム（Ｇａ）、ゲルマニウム（Ｇｅ）よりなる群から選択された少なくともいずれかの金属を含む合金を用いることができる。
【０１００】
第１強磁性層６２及び第２強磁性層６４において、含まれる磁性材料の組成や熱処理の条件などを調整する。これにより、第１強磁性層６２及び第２強磁性層６４において、例えば、磁化量や磁気異方性などの特性を調整することができる。例えば、第２強磁性層６４において、第１部分６６と第２部分６７とを形成することができる。また、第１強磁性層６２及び第２強磁性層６４には、例えば、ＴｂＦｅＣｏ及びＧｄＦｅＣｏなどの希土類−遷移金属のアモルファス合金を用いることができる。第１強磁性層６２及び第２強磁性層６４には、例えば、Ｃｏ／Ｐｔ、Ｃｏ／Ｐｄ及びＣｏ／Ｎｉなどの積層構造を用いてもよい。Ｃｏ／Ｒｕ、Ｆｅ／Ａｕ、及び、Ｎｉ／Ｃｕ等は、下地層との組み合わせで垂直磁化膜となる。膜の結晶配向方向を制御することで、Ｃｏ／Ｒｕ、Ｆｅ／Ａｕ、または、Ｎｉ／Ｃｕ等を、第１強磁性層６２及び第２強磁性層６４として用いることができる。第１強磁性層６２及び第２強磁性層６４は、例えば、アルミニウム（Ａｌ）、ゲルマニウム（Ｇｅ）、窒素（Ｎ）、リン（Ｐ）、砒素（Ａｓ）、ボロン（Ｂ）、及び、シリコン（Ｓｉ）などの添加物を含んでもよい。
【０１０１】
第１部分６６及び第２部分６７の少なくともいずれかには、例えば、ホイスラー合金を用いてもよい。ホイスラー合金は、例えば、Ｌ２１構造を有し、Ｘ２ＹＺの様な組成を有する合金である。この場合、第１部分６６第２部分６７の少なくともいずれかは、例えば、Ｃｏ、Ｍｎ、Ｆｅ、Ｎｉ、Ｃｕ、Ｒｈ、Ｒｕ及びＰｄの少なくともいずれか１つを含むホイスラー合金を含む。
【０１０２】
例えば、第１部分６６及び第２部分６７は、第１ホイスラー合金を含む。第１ホイスラー合金は、Ｃｏ２ＦｅＳｉ、Ｃｏ２ＦｅＡｌ、Ｃｏ２ＦｅＧａ、Ｃｏ２ＭｎＧｅ、Ｃｏ２ＭｎＳｎ、Ｃｏ２ＭｎＳｉ、Ｃｏ２ＭｎＧａ、Ｃｏ２ＭｎＡｌ、Ｃｏ２ＭｎＳｂ、Ｃｏ２ＣｒＧａ、Ｎｉ２ＭｎＩｎ、Ｎｉ２ＭｎＧａ、Ｎｉ２ＭｎＳｎ、Ｎｉ２ＭｎＳｂ、Ｎｉ２ＦｅＧａ、Ｐｄ２ＭｎＳｂ、Ｐｄ２ＭｎＳｎ、Ｃｕ２ＭｎＡｌ、Ｃｕ２ＭｎＳｎ、Ｃｕ２ＭｎＩｎ、Ｒｈ２ＭｎＧｅ、Ｒｈ２ＭｎＰｂ、Ｒｈ２ＭｎＳｎ、Ｐｄ２ＭｎＧｅ、Ｒｈ２ＦｅＳｎ、Ｒｕ２ＦｅＳｎ、及びＲｈ２ＦｅＳｂの少なくともいずれか１つを含む。
【０１０３】
第２部分６７に上記の第１ホイスラー合金を用いることで、例えば、第２部分６７の飽和磁化Ｍｓを大きくすることができる。  
【０１０４】
例えば、第１部分６６及び第２部分６７は、第２ホイスラー合金を含んでもよい。第２ホイスラー合金は、Ｃｏ２ＨｆＳｎ、Ｃｏ２ＺｒＳｎ、Ｃｏ２ＨｆＡｌ、Ｃｏ２ＺｒＡｌ、Ｃｏ２ＨｆＧａ、Ｃｏ２ＴｉＳｉ、Ｃｏ２ＴｉＧｅ、Ｃｏ２ＴｉＳｎ、Ｃｏ２ＴｉＧａ、Ｃｏ２ＴｉＡｌ、Ｃｏ２ＶＧａ、Ｃｏ２ＶＡｌ、Ｃｏ２ＴａＡｌ、Ｃｏ２ＮｂＧａ、Ｃｏ２ＮｂＡｌ、Ｃｏ２ＶＳｎ、Ｃｏ２ＮｂＳｎ、Ｃｏ２ＣｒＡｌ、Ｒｈ２ＮｉＳｎ、Ｒｈ２ＮｉＧｅ、Ｍｎ２ＷＳｎ、Ｆｅ２ＭｎＳｉ、及びＦｅ２ＭｎＡｌの少なくともいずれか１つを含む。
【０１０５】
第１部分６６に用いられる上記の第２ホイスラー合金は、比較的飽和磁化Ｍｓが小さい。例えばＭｓ＜４００ｅｍｕ／ｃｃとすることができる。これにより、例えば、隣接する磁気記憶素子への漏洩磁界を低減することができる。
【０１０６】
本実施形態においては、第１部分６６及び第２部分６７のいずれかに、上述のホイスラー合金を用いてもよいし、第１部分６６及び第２部分６７の双方に、上述のホイスラー合金を用いてもよい。第１部分６６には、第２ホイスラー合金を用いることが望ましい。これにより、例えば、周辺素子への漏洩磁界を抑制することができる。第２部分６７には、第１ホイスラー合金を用いることが望ましい。
【０１０７】
第１非磁性層６３には、例えば、非磁性トンネルバリア層として機能する絶縁材料を用いることができる。具体的には、例えば、アルミニウム（Ａｌ）、チタン（Ｔｉ）、亜鉛（Ｚｎ）、ジルコニウム（Ｚｒ）、タンタル（Ｔａ）、コバルト（Ｃｏ）、ニッケル（Ｎｉ）、シリコン（Ｓｉ）、マグネシウム（Ｍｇ）及び鉄（Ｆｅ）よりなる群から選択された少なくともいずれかの元素を含む、酸化物、窒化物又は弗化物を用いることができる。非磁性トンネルバリア層とは、例えば、絶縁体を含み、電圧を印加したときに、トンネル効果による電流（トンネル電流）の流れる非磁性の層である。非磁性トンネルバリア層の厚さは、例えば、２ｎｍ以下である。これにより、電圧を印加したときに、非磁性トンネルバリア層にトンネル電流が流れる。
【０１０８】
第１非磁性層６３には、例えば、Ａｌ２Ｏ３、ＳｉＯ２、ＭｇＯ、ＡｌＮ、Ｔａ−Ｏ、Ａｌ−Ｚｒ−Ｏ、Ｂｉ２Ｏ３、ＭｇＦ２、ＣａＦ２、ＳｒＴｉＯ３、ＡｌＬａＯ３、Ａｌ−Ｎ−Ｏ、または、Ｓｉ−Ｎ−Ｏ等を用いることができる。第１非磁性層６３には、例えば、非磁性半導体（ＺｎＯｘ、ＩｎＭｎ、ＧａＮ、ＧａＡｓ、ＴｉＯｘ、Ｚｎ、Ｔｅ、または、これらに遷移金属がドープされたもの）などを用いることができる。
【０１０９】
第１非磁性層６３の厚さは、約０．２ナノメートル（ｎｍ）以上２．０ｎｍ以下程度の範囲の値とすることが望ましい。これにより、例えば、絶縁膜の均一性を確保しつつ、抵抗が過度に高くなることが抑制される。
【０１１０】
第１導電層６１及び第２導電層６５には、例えば、導電性の磁性材料または導電性の非磁性材料が用いられる。導電性の磁性材料としては、例えば、鉄（Ｆｅ）、コバルト（Ｃｏ）、ニッケル（Ｎｉ）、マンガン（Ｍｎ）及びクロム（Ｃｒ）よりなる群から選択された少なくともいずれかの元素を含む磁性金属を用いることができる。さらに、上記の群から選択された少なくともいずれかと、白金（Ｐｔ）、パラジウム（Ｐｄ）、イリジウム（Ｉｒ）、ルテニウム（Ｒｕ）及びロジウム（Ｒｈ）よりなる群から選択された少なくともいずれかの元素と、を含む合金を用いてもよい。
【０１１１】
第１導電層６１及び第２導電層６５に用いられる導電性の非磁性材料には、例えば、金（Ａｕ）、銅（Ｃｕ）、クロム（Ｃｒ）、亜鉛（Ｚｎ）、ガリウム（Ｇａ）、ニオブ（Ｎｂ）、モリブデン（Ｍｏ）、ルテニウム（Ｒｕ）、パラジウム（Ｐｄ）、銀（Ａｇ）、ハフニウム（Ｈｆ）、タンタル（Ｔａ）、チタン（Ｔｉ）、タングステン（Ｗ）、白金（Ｐｔ）、ビスマス（Ｂｉ）及びアルミニウム（Ａｌ）よりなる群から選択されたいずれかの金属、または、上記の群から選択された２つ以上の金属を含む合金を用いることができる。
【０１１２】
さらに、第１導電層６１及び第２導電層６５に用いられる導電性の非磁性材料は、上記の群から選択された少なくともいずれかの元素を含む、導電性窒化物、導電性酸化物及び導電性弗化物の少なくともいずれかでもよい。第１導電層６１及び第２導電層６５に用いられる導電性の非磁性材料は、カーボンナノチューブ、カーボンナノワイヤ及びグラフェンなどでもよい。
【０１１３】
第１導電層６１及び第２導電層６５に導電性の保護膜を設けてもよい。この場合、保護膜には、例えば、タンタル（Ｔａ）、ルテニウム（Ｒｕ）、銅（Ｃｕ）、金（Ａｕ）、銀（Ａｇ）、アルミニウム（Ａｌ）、銅（Ｃｕ）、金（Ａｕ）、銀（Ａｇ）及びアルミニウム（Ａｌ）よりなる群から選択された少なくともいずれかの元素を含む合金、または、グラフェンなどの材料を用いることができる。エレクトロマグレーション耐性及び低抵抗であることを考慮すると、保護膜には、銅（Ｃｕ）及びアルミニウム（Ａｌ）よりなる群から選択されたいずれかの元素、または、これらを含む合金を用いることが望ましい。
【０１１４】
第１導電層６１及び第２導電層６５の少なくともいずれかに、トランジスタが直接または間接に接続される場合がある。このときには、第１導電層６１及び第２導電層６５の上記の少なくともいずれかには、例えば、そのトランジスタのソース部またはドレイン部が用いられても良い。また、このときには、第１導電層６１及び第２導電層６５の上記の少なくともいずれかには、例えば、そのトランジスタのソース部またはドレイン部に接続されるコンタクト部が用いられても良い。
【０１１５】
積層体ＳＢ１の積層方向ＳＤ１に対して平行な方向をＺ軸方向とする。Ｚ軸に対して垂直な１つの軸をＸ軸とする。Ｘ軸とＺ軸とに対して垂直な軸をＹ軸とする。積層体ＳＢ１に含まれる層の膜面は、Ｘ−Ｙ平面に対して平行である。例えば、主面１０ａは、Ｘ−Ｙ平面に対して平行である。
【０１１６】
ＭＴＪ素子３１においては、積層方向ＳＤ１に積層体ＳＢ１に電流を流すことによりスピン偏極した電子を第２強磁性層６４に作用させる。これにより、第２強磁性層６４の第１部分６６の磁化の方向及び第２部分６７の磁化の方向が、電流の向きに応じた方向に決定される。
【０１１７】
＜垂直磁化ＭＴＪ＞
第１強磁性層６２は、例えば、第１の磁化固定層として機能する。第１強磁性層６２においては、例えば、磁化が膜面に対して略垂直方向に固定されている。第１強磁性層６２の磁化の方向は、積層方向ＳＤ１と略平行である。
【０１１８】
第２強磁性層６４は、例えば、磁気記憶層として機能する。また、第２強磁性層６４が第１部分と第２部分を有する場合においては、例えば、第１部分６６の磁化の方向は、膜面に対して略垂直方向で、積層方向ＳＤ１と略平行である。第１部分は第１非磁性層６３側にある。第１部分６６の磁化は、反転可能である。第１部分６６は、磁化反転の際のスピン注入効率を上げる役割をもつ。第２部分は第２導電層６５側にある。 
【０１１９】
第２強磁性層６４の第２部分６７においては、例えば、第２部分６７の磁化の方向は、膜面に対して略垂直方向で、積層方向ＳＤ１と略平行である。第２部分６７の磁化は、反転可能である。第２部分はデータを記憶する役割をもつ。
【０１２０】
＜面内磁化ＭＴＪ＞
第１強磁性層６２は、例えば、第１の磁化固定層として機能する。第１強磁性層６２においては、例えば、磁化が膜面に対して略平行方向に固定されている。第１強磁性層６２の磁化の方向は、積層方向ＳＤ１と略垂直である。
【０１２１】
第２強磁性層６４は、例えば、磁気記憶層として機能する。また、第２強磁性層６４が第１部分と第２部分を有する場合においては、例えば、第１部分６６の磁化の方向は、膜面に対して略平行方向で、積層方向ＳＤ１と略垂直である。第１部分は第１非磁性層６３側にある。第１部分６６の磁化は、反転可能である。第１部分６６は、磁化反転の際のスピン注入効率を上げる役割をもつ。第２部分は第２導電層６５側にある。
【０１２２】
第２強磁性層６４の第２部分６７においては、例えば、第２部分６７の磁化２２ｍの方向は、膜面に対して略平行方向で、積層方向ＳＤ１と略垂直である。第２部分６７の磁化２２ｍは、反転可能である。第２部分はデータを記憶する役割をもつ。
【０１２３】
＜ＭＴＪの断面形状＞
Ｘ−Ｙ平面に投影したときの積層体ＳＢ１の形状は任意である。Ｘ−Ｙ平面に投影したときの積層体ＳＢ１の形状は、例えば、円形、楕円形、扁平円、及び、多角形などである。多角形とする場合には、四角形や六角形などの３つ以上の角を有することが好ましい。また、多角形は、角丸状でもよい。
【０１２４】
Ｚ軸に対して平行な平面（例えばＺ−Ｘ平面やＺ−Ｙ平面）に投影したときの積層体ＳＢ１の形状は任意である。Ｚ軸に対して平行な平面に投影したときの積層体ＳＢ１の形状（膜面に対して垂直な面で切断した形状）は、例えば、テーパ形状または逆テーパ形状を有することができる。
【０１２５】
＜磁気シールド＞
積層体ＳＢ１の側面ＳＳ１の少なくとも一部が磁気シールドで覆われていても良い。換言すれば、磁気シールドは、積層体ＳＢ１の側面の少なくとも一部と対向する。Ｘ−Ｙ平面に投影した磁気シールドの形状は、例えば、積層体ＳＢ１を囲む環状である。
【０１２６】
磁気記憶素子は、積層体ＳＢ１の側面と磁気シールドとの間に設けられた保護層をさらに含む。保護層の厚さは、例えば、２ｎｍ以上３０ｎｍ以下であることが望ましい。
【０１２７】
例えば、積層体ＳＢ１の側面が、ＳｉＮやＡｌ２Ｏ３などの保護層を介して、パーマロイ（Ｐｙ）などの磁気シールドにより覆われる。これにより、例えば、複数の磁気記憶素子が並べられた場合において、隣の磁気記憶素子からの漏洩磁界が、積層体ＳＢ１の動作に悪影響を与えることが抑制される。例えば、各記憶セル（積層体ＳＢ１）において、積層体ＳＢ１に作用する有効磁界が実質的に同じであるため、ビット間の反転電流のばらつきが抑制される。また、積層体ＳＢ１からの漏洩磁界が、隣の磁気記憶素子に作用することを抑制することができる。その結果、複数の磁気記憶素子どうしを近接して配置することができ、集積度を向上することができる。例えば、不揮発性記憶装置の記憶密度を向上させることができる。
【０１２８】
磁気シールドには、例えば、鉄（Ｆｅ）、コバルト（Ｃｏ）、ニッケル（Ｎｉ）、マンガン（Ｍｎ）及びクロム（Ｃｒ）よりなる群から選択されたいずれかの金属、または、この群から選択された２つ以上の金属を含む合金が用いられる。磁気シールドは、例えば、鉄（Ｆｅ）、コバルト（Ｃｏ）、ニッケル（Ｎｉ）、マンガン（Ｍｎ）及びクロム（Ｃｒ）よりなる群から選択された少なくともいずれかの金属と、白金（Ｐｔ）、パラジウム（Ｐｄ）、イリジウム（Ｉｒ）、ルテニウム（Ｒｕ）及びロジウム（Ｒｈ），ガリウム（Ｇa），ゲルマニウム（Ｇｅ）よりなる群から選択された少なくともいずれかの金属と、を含む合金でもよい。
【０１２９】
磁気シールドに含まれる磁性材料の組成や熱処理の条件を調整することにより、磁気シールドの特性を調整することができる。磁気シールドは、例えば、ＴｂＦｅＣｏ及びＧｄＦｅＣｏなどの希土類−遷移金属のアモルファス合金でもよい。また、磁気シールドには、Ｃｏ／Ｐｔ、Ｃｏ／Ｐｄ及びＣｏ／Ｎｉなどの積層構造を用いてもよい。
【０１３０】
保護層には、例えば、アルミニウム（Ａｌ）、チタン（Ｔｉ）、亜鉛（Ｚｎ）、ジルコニウム（Ｚｒ）、タンタル（Ｔａ）、コバルト（Ｃｏ）、ニッケル（Ｎｉ）、シリコン（Ｓｉ）、マグネシウム（Ｍｇ）及び鉄（Ｆｅ）よりなる群から選択された少なくともいずれかの元素を含む、酸化物、窒化物または弗化物を用いることができる。保護層には、例えば、ＳｉＮが用いられる。
【０１３１】
２．ＳＯＴ−ＭＲＡＭを用いる例
単一階層メモリ７を構成する不揮発メモリは、ＳＯＴ−ＭＲＡＭ（Spin-Orbit Torque Magnetic Tunnel Junction MRAM）でもよい。図２６はＳＯＴ−ＭＲＡＭの断面構造を示す図である。図２６に示すように、ＳＯＴ−ＭＲＡＭは、第１導電層７１、第１強磁性層７２、第１非磁性層７３、第２強磁性層７４および第２導電層７５を順に積層した構造を有する。
【０１３２】
第１強磁性層７２とは、磁化の方向が固定された参照層である。第２強磁性層７４とは、磁化の方向が可変である記憶層である。第１強磁性層７２と第２強磁性層７４の間に、第１非磁性層７３（スペーサー層）がある。
【０１３３】
第１強磁性層７２と第１導電層７１は直接、あるいは間接的に接続されている。また、第２強磁性層７４と第２導電層７５は、直接、あるいは間接的に接続されている。第１導電層７１、第１強磁性層７２、第１非磁性層７３、第２強磁性層７４、第２導電層７５の積層体を積層体SB1と名付ける。
【０１３４】
第２導電層７５に後述するスピン軌道相互作用が強い材料を用いて、電流（JSOT）を流すとスピン軌道フィールドHsoが生成される。スピン軌道フィールドは、第２強磁性層７４の磁化に作用するスピン軌道トルクTsoともなり得る。これを用いると、第２強磁性層７４の磁化方向を直接反転させることができ得る。また、電流（JSOT）を流してスピン軌道フィールドHsoを第２強磁性層７４に作用させつつ、電流（JSTT）を流して第２強磁性層７４の磁化方向を反転させても良い。いずれにしても、電流（JSOT）の大きさを変えると、第２強磁性層７４の磁化反転に要する時間を変えることができる。例えば、ある電流（JSTT）で、第２強磁性層７４の磁化方向を０．５ｎｓ以下の時間で変えることが可能である。またそれより大きい電流（JSTT）では、第２強磁性層７４の磁化方向を０．２ｎｓ以下の時間で変えることが可能である。このように、パルス幅が短いほど、磁化反転に必要な電流値が大きくなる。
【０１３５】
第１強磁性層７２の膜厚は０．５〜１５ｎｍであり、典型的には２〜１０ｎｍである。第２強磁性層７４の膜厚は０．１〜５ｎｍであり、望ましくは２ｎｍ以下が良い。
【０１３６】
第１強磁性層７２及び第２強磁性層７４には、例えば、鉄（Ｆｅ）、コバルト（Ｃｏ）、ニッケル（Ｎｉ）、マンガン（Ｍｎ）及びクロム（Ｃｒ）よりなる群から選択された少なくともいずれかの元素を含む金属材料を用いることができる。さらに、上記の群から選択された少なくともいずれかと、白金（Ｐｔ）、パラジウム（Ｐｄ）、イリジウム（Ｉｒ）、ルテニウム（Ｒｕ）及びロジウム（Ｒｈ），ガリウム（Ｇa），ゲルマニウム（Ｇｅ）よりなる群から選択された少なくともいずれかの金属を含む合金を用いることができる。
【０１３７】
第１強磁性層７２及び第２強磁性層７４において、含まれる磁性材料の組成や熱処理の条件などを調整する。これにより、第１強磁性層７２及び第２強磁性層７４において、例えば、磁化量や磁気異方性などの特性を調整することができる。例えば、第２強磁性層７４は、第１部分と第２部分とに分かれていてもよい。また、第１強磁性層７２及び第２強磁性層７４には、例えば、ＴｂＦｅＣｏ及びＧｄＦｅＣｏなどの希土類−遷移金属のアモルファス合金を用いることができる。第１強磁性層７２及び第２強磁性層７４には、例えば、Ｃｏ／Ｐｔ、Ｃｏ／Ｐｄ及びＣｏ／Ｎｉなどの積層構造を用いてもよい。Ｃｏ／Ｒｕ、Ｆｅ／Ａｕ、及び、Ｎｉ／Ｃｕ等は、下地層との組み合わせで垂直磁化膜となる。膜の結晶配向方向を制御することで、Ｃｏ／Ｒｕ、Ｆｅ／Ａｕ、または、Ｎｉ／Ｃｕ等を、第１強磁性層７２及び第２強磁性層７４として用いることができる。第１強磁性層７２及び第２強磁性層７４は、例えば、アルミニウム（Ａｌ）、ゲルマニウム（Ｇｅ）、窒素（Ｎ）、リン（Ｐ）、砒素（Ａｓ）、ボロン（Ｂ）、及び、シリコン（Ｓｉ）などの添加物を含んでもよい。
【０１３８】
第１強磁性層７２及び第２強磁性層７４は、例えば、ホイスラー合金を用いてもよい。ホイスラー合金は、例えば、Ｌ２１構造を有し、Ｘ２ＹＺの様な組成を有する合金である。この場合、第１部分７６第２部分７７の少なくともいずれかは、例えば、Ｃｏ、Ｍｎ、Ｆｅ、Ｎｉ、Ｃｕ、Ｒｈ、Ｒｕ及びＰｄの少なくともいずれか１つを含むホイスラー合金を含む。
【０１３９】
第１強磁性層７２及び第２強磁性層７４は、例えば、第１ホイスラー合金を含む。第１ホイスラー合金は、Ｃｏ２ＦｅＳｉ、Ｃｏ２ＦｅＡｌ、Ｃｏ２ＦｅＧａ、Ｃｏ２ＭｎＧｅ、Ｃｏ２ＭｎＳｎ、Ｃｏ２ＭｎＳｉ、Ｃｏ２ＭｎＧａ、Ｃｏ２ＭｎＡｌ、Ｃｏ２ＭｎＳｂ、Ｃｏ２ＣｒＧａ、Ｎｉ２ＭｎＩｎ、Ｎｉ２ＭｎＧａ、Ｎｉ２ＭｎＳｎ、Ｎｉ２ＭｎＳｂ、Ｎｉ２ＦｅＧａ、Ｐｄ２ＭｎＳｂ、Ｐｄ２ＭｎＳｎ、Ｃｕ２ＭｎＡｌ、Ｃｕ２ＭｎＳｎ、Ｃｕ２ＭｎＩｎ、Ｒｈ２ＭｎＧｅ、Ｒｈ２ＭｎＰｂ、Ｒｈ２ＭｎＳｎ、Ｐｄ２ＭｎＧｅ、Ｒｈ２ＦｅＳｎ、Ｒｕ２ＦｅＳｎ、及びＲｈ２ＦｅＳｂの少なくともいずれか１つを含む。
【０１４０】
上記の第１ホイスラー合金を用いることで、例えば、第２部分７７の飽和磁化Ｍｓを大きくすることができる。
【０１４１】
第１強磁性層７２及び第２強磁性層７４は、例えば、第２ホイスラー合金を含む。第２ホイスラー合金は、Ｃｏ２ＨｆＳｎ、Ｃｏ２ＺｒＳｎ、Ｃｏ２ＨｆＡｌ、Ｃｏ２ＺｒＡｌ、Ｃｏ２ＨｆＧａ、Ｃｏ２ＴｉＳｉ、Ｃｏ２ＴｉＧｅ、Ｃｏ２ＴｉＳｎ、Ｃｏ２ＴｉＧａ、Ｃｏ２ＴｉＡｌ、Ｃｏ２ＶＧａ、Ｃｏ２ＶＡｌ、Ｃｏ２ＴａＡｌ、Ｃｏ２ＮｂＧａ、Ｃｏ２ＮｂＡｌ、Ｃｏ２ＶＳｎ、Ｃｏ２ＮｂＳｎ、Ｃｏ２ＣｒＡｌ、Ｒｈ２ＮｉＳｎ、Ｒｈ２ＮｉＧｅ、Ｍｎ２ＷＳｎ、Ｆｅ２ＭｎＳｉ、及びＦｅ２ＭｎＡｌの少なくともいずれか１つを含む。
【０１４２】
上記の第２ホイスラー合金は、比較的飽和磁化Ｍｓが小さい。例えばＭｓ＜４００ｅｍｕ／ｃｃとすることができる。これにより、例えば、隣接する磁気記憶素子への漏洩磁界を低減することができる。
【０１４３】
本実施形態においては、第１強磁性層７２及び第２強磁性層７４のいずれかに、上述のホイスラー合金を用いてもよいし、第１強磁性層７２及び第２強磁性層７４の双方に、上述のホイスラー合金を用いてもよい。第２強磁性層７４には、第２ホイスラー合金を用いることが望ましい。これにより、例えば、周辺素子への漏洩磁界を抑制することができる。第２部分７７には、第１ホイスラー合金を用いることが望ましい。
【０１４４】
第１非磁性層７３には、例えば、非磁性トンネルバリア層として機能する絶縁材料を用いることができる。具体的には、例えば、アルミニウム（Ａｌ）、チタン（Ｔｉ）、亜鉛（Ｚｎ）、ジルコニウム（Ｚｒ）、タンタル（Ｔａ）、コバルト（Ｃｏ）、ニッケル（Ｎｉ）、シリコン（Ｓｉ）、マグネシウム（Ｍｇ）及び鉄（Ｆｅ）よりなる群から選択された少なくともいずれかの元素を含む、酸化物、窒化物又は弗化物を用いることができる。非磁性トンネルバリア層とは、例えば、絶縁体を含み、電圧を印加したときに、トンネル効果による電流（トンネル電流）の流れる非磁性の層である。非磁性トンネルバリア層の厚さは、例えば、２ｎｍ以下である。これにより、電圧を印加したときに、非磁性トンネルバリア層にトンネル電流が流れる。
【０１４５】
第１非磁性層７３には、例えば、Ａｌ２Ｏ３、ＳｉＯ２、ＭｇＯ、ＡｌＮ、Ｔａ−Ｏ、Ａｌ−Ｚｒ−Ｏ、Ｂｉ２Ｏ３、ＭｇＦ２、ＣａＦ２、ＳｒＴｉＯ３、ＡｌＬａＯ３、Ａｌ−Ｎ−Ｏ、または、Ｓｉ−Ｎ−Ｏ等を用いることができる。第１非磁性層７３には、例えば、非磁性半導体（ＺｎＯｘ、ＩｎＭｎ、ＧａＮ、ＧａＡｓ、ＴｉＯｘ、Ｚｎ、Ｔｅ、または、これらに遷移金属がドープされたもの）などを用いることができる。
【０１４６】
第１非磁性層７３の厚さは、約０．２ナノメートル（ｎｍ）以上２．０ｎｍ以下程度の範囲の値とすることが望ましい。これにより、例えば、絶縁膜の均一性を確保しつつ、抵抗が過度に高くなることが抑制される。
【０１４７】
第１導電層７１には、例えば、導電性の磁性材料または導電性の非磁性材料が用いられる。導電性の磁性材料としては、例えば、鉄（Ｆｅ）、コバルト（Ｃｏ）、ニッケル（Ｎｉ）、マンガン（Ｍｎ）及びクロム（Ｃｒ）よりなる群から選択された少なくともいずれかの元素を含む磁性金属を用いることができる。さらに、上記の群から選択された少なくともいずれかと、白金（Ｐｔ）、パラジウム（Ｐｄ）、イリジウム（Ｉｒ）、ルテニウム（Ｒｕ）及びロジウム（Ｒｈ）よりなる群から選択された少なくともいずれかの元素と、を含む合金を用いてもよい。
【０１４８】
第１導電層７１に用いられる導電性の非磁性材料には、例えば、金（Ａｕ）、銅（Ｃｕ）、クロム（Ｃｒ）、亜鉛（Ｚｎ）、ガリウム（Ｇａ）、ニオブ（Ｎｂ）、モリブデン（Ｍｏ）、ルテニウム（Ｒｕ）、パラジウム（Ｐｄ）、銀（Ａｇ）、ハフニウム（Ｈｆ）、タンタル（Ｔａ）、チタン（Ｔｉ）、タングステン（Ｗ）、白金（Ｐｔ）、ビスマス（Ｂｉ）及びアルミニウム（Ａｌ）よりなる群から選択されたいずれかの金属、または、上記の群から選択された２つ以上の金属を含む合金を用いることができる。
【０１４９】
さらに、第１導電層７１に用いられる導電性の非磁性材料は、上記の群から選択された少なくともいずれかの元素を含む、導電性窒化物、導電性酸化物及び導電性弗化物の少なくともいずれかでもよい。第１導電層７１に用いられる導電性の非磁性材料は、カーボンナノチューブ、カーボンナノワイヤ及びグラフェンなどでもよい。
【０１５０】
第２導電層７５は、第２強磁性層７４（記憶層）の磁気モーメントをスイッチングするのに使用され得る強いスピン軌道相互作用を有する膜である。第２導電層７５は、スピン軌道フィールドHsoを生成するのに利用され得る。スピン軌道フィールドは、第２強磁性層７４の磁化に作用するスピン軌道トルクTsoともなり得る。本案では、スピン軌道相互作用が強い材料を第２導電層７５に用いる。このような材料において、スピン軌道相互作用はスピンホール効果とラシュバ効果とを両方を包含するが、２つの中で１つが支配的である。結果的に、スピンホール効果とラシュバ効果とは以下に記述される。スピンホール効果は一般的に本体（ｂｕｌｋ）効果として見なす。しばしばスピンホール効果を示す物質は、重い金属又は重い金属がドーピングされた物質を含む。例えば、そのような物質は、Ａ及びＢがドーピングされたＭから選択され得る。ＡはＹ、Ｚｒ、Ｎｂ、Ｍｏ、Ｔｃ、Ｒｕ、Ｒｈ、Ｐｄ、Ｃｄ、Ｉｎ、Ｓｂ、Ｔｅ、Ｈｆ、Ｔａ（高い抵抗性非晶質のβ−Ｔａを含む）、Ｗ、Ｒｅ、Ｏｓ、Ｉｒ、Ｐｔ、Ａｕ、Ｈｇ、Ｔｌ、Ｐｂ、Ｂｉ、Ｐｏ、Ａｔ、及び／又はそれらの組み合わせを含み、ＭはＡｌ、Ｔｉ、Ｖ、Ｃｒ、Ｍｎ、Ｃｕ、Ｚｎ、Ａｇ、Ｈｆ、Ｔａ、Ｗ、Ｒｅ、Ｐｔ、Ａｕ、Ｈｇ、Ｐｂ、Ｓｉ、Ｇａ、ＧａＭｎ、又はＧａＡｓの中の少なくとも１つを含み、ＢはＶ、Ｃｒ、Ｍｎ、Ｆｅ、Ｃｏ、Ｎｉ、Ｐ、Ｓ、Ｚｎ、Ｇａ、Ｇｅ、Ａｓ、Ｓｅ、Ｙ、Ｚｒ、Ｎｂ、Ｍｏ、Ｔｃ、Ｒｕ、Ｒｈ、Ｐｄ、Ａｇ、Ｃｄ、ＩｎＳｂ、Ｔｅ、Ｉ、Ｌｕ、Ｈｆ、Ｔａ、Ｗ、Ｒｅ、Ｏｓ、Ｉｒ、Ｐｔ、Ａｕ、Ｈｇ、Ｔｌ、Ｐｂ、Ｂｉ、Ｐｏ、Ａｔ、Ｌａ、Ｃｅ、Ｐｒ、Ｎｄ、Ｐｍ、Ｓｍ、Ｅｕ、Ｇｄ、Ｔｂ、Ｄｙ、Ｈｏ、Ｅｒ、Ｔｍ、Ｙｂの中の少なくとも１つを含む。例えば、Ta、 Pd、Cd、Cu、Au、Bi、Ir、Ru、Wなどは、そのまま用いられても良い。例えば、ＩｒがドーピングされたＣｕ及び／又はＢｉがドーピングされたＣｕで構成されるか、或いはこれを包含することができる。
【０１５１】
別のスピン軌道相互作用が強い材料として、スピン軌道フィールドHsoが発生する起源は、界面でのスピン軌道相互作用と関連される。界面での強いスピン軌道効果は界面方向と垂直方向への結晶フィールドの勾配（ｇｒａｎｄｉｅｎｔ）と関連され、しばしばラシュバ効果として言及される。ここでは、これに限定されず、ラシュバ効果は界面でのスピン軌道相互作用を言う。少なくとも所定の実施形態で、相当な大きさのラシュバ効果を得るために、第２導電層７５のための界面は異ならなければならない。例えば、第２導電層７５としてPt膜、第２強磁性層７４としてCo膜、第１非磁性層７３としてMgOを用いた場合、ラシュバ効果が発生し得る。第２導電層７５は、合金であっても良い。例えば、Ｃｕ、Ｚｎ、Ｇａ、Ｇｅ、Ａｓ、Ｓｅ、Ｙ、Ｚｒ、Ｎｂ、Ｍｏ、Ｔｃ、Ｒｕ、Ｒｈ、Ｐｄ、Ａｇ、Ｃｄ、Ｉｎ、Ｓｎ、Ｓｂ、Ｔｅ、Ｉ、Ｌｕ、Ｈｆ、Ｔａ、Ｗ、Ｒｅ、Ｏｓ、Ｉｒ、Ｐｔ、Ａｕ、Ｈｇ、Ｔｌ、Ｐｂ、Ｂｉ、Ｐｏ、Ａｔ、Ｌａ、Ｃｅ、Ｐｒ、Ｎｄ、Ｐｍ、Ｓｍ、Ｅｕ、Ｇｄ、Ｔｂ、Ｄｙ、Ｈｏ、Ｅｒ、Ｔｍ、Ｙｂ、及び／又はそれらの組み合わせの中で少なくとも１つを包含することができる。他の実施形態で、第２導電層７５は、Ａ／Ｂの表面合金（例えば、主な物質であるＢの（１１１）表面に配置されたＡの原子）を包含するが、上部の原子層はＡとＢの混合物である。ＡはＣｕ、Ｚｎ、Ｇａ、Ｇｅ、Ａｓ、Ｓｅ、Ｙ、Ｚｒ、Ｎｂ、Ｍｏ、Ｔｃ、Ｒｕ、Ｒｈ、Ｐｄ、Ａｇ、Ｃｄ、Ｉｎ、Ｓｎ、Ｓｂ、Ｔｅ、Ｉ、Ｌｕ、Ｈｆ、Ｔａ、Ｗ、Ｒｅ、Ｏｓ、Ｉｒ、Ｐｔ、Ａｕ、Ｈｇ、Ｔｌ、Ｐｂ、Ｂｉ、Ｐｏ、Ａｔ、Ｌａ、Ｃｅ、Ｐｒ、Ｎｄ、Ｐｍ、Ｓｍ、Ｅｕ、Ｇｄ、Ｔｂ、Ｄｙ、Ｈｏ、Ｅｒ、Ｔｍ、Ｙｂの中の少なくとも１つを含み、ＢはＳｉ、Ｚｎ、Ｃｕ、Ａｇ、Ａｕ、Ｗ、Ｚｎ、Ｃｒ、Ｐｔ、Ｐｄの中の少なくとも１つを含む。多くの実施形態で、Ａは２つ又は３つの他の物質を含む。
【０１５２】
第２導電層７５の膜厚は、０．５〜１００ｎｍであり、典型的には０．５〜１０ｎｍである。望ましくは５ｎｍ以下である。
【０１５３】
第１導電層７１及び第２導電層７５に導電性の保護膜を設けてもよい。この場合、保護膜には、例えば、タンタル（Ｔａ）、ルテニウム（Ｒｕ）、銅（Ｃｕ）、金（Ａｕ）、銀（Ａｇ）、アルミニウム（Ａｌ）、銅（Ｃｕ）、金（Ａｕ）、銀（Ａｇ）及びアルミニウム（Ａｌ）よりなる群から選択された少なくともいずれかの元素を含む合金、または、グラフェンなどの材料を用いることができる。エレクトロマグレーション耐性及び低抵抗であることを考慮すると、保護膜には、銅（Ｃｕ）及びアルミニウム（Ａｌ）よりなる群から選択されたいずれかの元素、または、これらを含む合金を用いることが望ましい。
【０１５４】
第２導電層７５に後述するスピン軌道相互作用が強い材料を用いて、電流（JSOT）を流すとスピン軌道フィールドHsoが生成される。スピン軌道フィールドは、第２強磁性層７４の磁化に作用するスピン軌道トルクTsoともなり得る。これを用いると、第２強磁性層７４の磁化方向を直接反転させることができ得る。また、電流（JSOT）を流してスピン軌道フィールドHsoを第２強磁性層７４に作用させつつ、電流（JSTT）を流して第２強磁性層７４の磁化方向を反転させても良い。いずれにしても、電流（JSOT）の大きさを変えると、第２強磁性層７４の磁化反転に要する時間を変えることができる。JSTT =0の場合、ある電流（JSOT）で、第２強磁性層７４の磁化方向を０．５ｎｓ以下の時間で変えることが可能である。またそれより大きい電流（JSOT）では、第２強磁性層７４の磁化方向を０．２ｎｓ以下の時間で変えることが可能である。また別の例として有限値としてJSOTが与えられた場合、ある電流（JSTT）で、第２強磁性層７４の磁化方向を０．５ｎｓ以下の時間で変えることが可能である。またそれより大きい電流（JSTT）では、第２強磁性層７４の磁化方向を０．２ｎｓ以下の時間で変えることが可能である。このように、パルス幅が短いほど、磁化反転に必要な電流値が大きくなる。
【０１５５】
第１強磁性層７２の膜厚は０．５〜１５ｎｍであり、典型的には２〜１０ｎｍである。第２強磁性層７４の膜厚は０．１〜５ｎｍであり、望ましくは3 nm以下が良い。
【０１５６】
第２導電層７５の膜厚は、０．５〜１００ｎｍであり、典型的には０．５〜１０ｎｍである。望ましくは５ｎｍ以下である。
【０１５７】
第２導電層７５の膜厚が薄いほど、第２強磁性層７４の磁化が反転するために必要な電流が小さくできるため好ましい。
【０１５８】
第１強磁性層７２と第２強磁性層７４を垂直磁化とした場合、微細化に適する。その結果、メモリアレイ１１の集積度を高めることができる。これは配線長が短くなるので、アクセスサイクルが短くなり、処理性能が上がる。処理時間が短くなる恩恵として、L3 modeに戻したり、パワーゲーティング等で電力の供給を遮断する時間を長くすることが出来るようになるため、低消費電力の恩恵が得られやすくなる。
【０１５９】
外部から磁界を印加しても良い。その印加方向は、主成分がxy平面にあることが望ましい。例えば、面内磁界である。
【０１６０】
第１強磁性層７２と第２強磁性層７４を面内磁化とした場合、ＭＴＪの断面形状を扁平にしても良い。これにより、面内磁化状態が保たれやすくなる。面内磁化の場合、スピン軌道フィールドを作用させやすいため、ＭＴＪのサイズをある程度大きくしても磁化反転させることができる。その結果、ＭＴＪは熱擾乱に対して記憶した情報が失われにくくなる。 
【０１６１】
第２強磁性層７４にとってシフト磁界をキャンセルするように，外部から磁界を印加しても良い。その印加方向は、主成分がxy平面にあることが望ましい。例えば、面内磁界である。
【０１６２】
＜垂直磁化ＭＴＪ＞
第１強磁性層７２は、例えば、第１の磁化固定層として機能する。第１強磁性層７２においては、例えば、磁化が膜面に対して略垂直方向に固定されている。第１強磁性層７２の磁化の方向は、積層方向ＳＤ１と略平行である。
【０１６３】
第２強磁性層７４は、例えば、磁気記憶層として機能する。磁化の方向は、膜面に対して略垂直方向で、積層方向ＳＤ１と略平行である。磁化の方向は、反転可能である。
第１強磁性層７２と第２強磁性層７４を垂直磁化とした場合、微細化に適する。その結果、メモリアレイ１１の集積度を高めることができる。これは配線長が短くなるので、アクセスサイクルが短くなり、処理性能が上がる。処理時間が短くなる恩恵として、L3 modeに戻したり、パワーゲーティング等で電力の供給を遮断する時間を長くすることが出来るようになるため、低消費電力の恩恵が得られやすくなる。外部から磁界を印加しても良い。 その場合，主成分をｘｙ平面に有することが望ましい．
【０１６４】
＜面内磁化ＭＴＪ＞
第１強磁性層７２は、例えば、第１の磁化固定層として機能する。第１強磁性層７２においては、例えば、磁化１０ｍが膜面に対して略平行方向に固定されている。第１強磁性層７２の磁化１０ｍの方向は、積層方向ＳＤ１と略垂直である。
【０１６５】
第２強磁性層７４は、例えば、磁気記憶層として機能する。磁化の方向は、膜面に対して略平行方向で、積層方向ＳＤ１と略垂直である。磁化の方向は、反転可能である。
【０１６６】
第１強磁性層７２と第２強磁性層７４を面内磁化とした場合、ＭＴＪの断面形状を扁平にしても良い。これにより、面内磁化状態が保たれやすくなる。面内磁化の場合、スピン軌道フィールドを作用させやすいため、ＭＴＪのサイズをある程度大きくしても磁化反転させることができる。その結果、ＭＴＪは熱擾乱に対して記憶した情報が失われにくくなる。外部から磁界を印加しても良い。その場合，主成分をｘｙ平面に有することが望ましい．
【０１６７】
３．電圧印加による異方性変化型MRAMを用いる例
不揮発メモリとして、磁気抵抗効果型メモリ(電圧印加による異方性変化型MRAM)を用いる場合について説明する。第１強磁性層とは、磁化の方向が固定された参照層である。第２強磁性層とは、磁化の方向が可変である記憶層である。第１強磁性層と第２強磁性層の間に、第１非磁性層（スペーサー層）がある。
【０１６８】
第１強磁性層と第２強磁性層のどちらかは、第１導電層に直接、あるいは間接的に接続されている。また、第１強磁性層と第２強磁性層のどちらかは、第２導電層に直接、あるいは間接的に接続されている。
【０１６９】
第１導電層、第１強磁性層、第１非磁性層、第２強磁性層、第２導電層の積層体を積層体SB1と名付ける。
【０１７０】
ここで、第１強磁性層と第２強磁性層を構成する材料は、前記ＳＴＴ−ＭＲＡＭの場合と同様である。また、第１非磁性層、第１導電層、第２導電層を構成する材料においても、前記ＳＴＴ−ＭＲＡＭの場合と同様である。
【０１７１】
ここで、積層体SB1を含む磁気記憶素子と、積層方向に対して垂直な第１面内方向の成分を含む磁界を前記第２強磁性層に印加する磁界印加部と、を含む記憶部と、前記磁気記憶素子と電気的に接続され、前記磁気記憶素子の前記第１強磁性層と前記第２強磁性層との間の電圧を第１設定電圧から第２設定電圧に変化させる設定動作を実施する制御部と、を備え、前記第１設定電圧から前記第２設定電圧に変化させたときの前記第２強磁性層の異方性磁界の前記積層方向の成分の変化をΔＨ（エルステッド）とし、前記第２強磁性層の異方性磁界の前記積層方向の成分をＨｕ（エルステッド）とし、前記磁界印加部の印加する前記磁界の前記第１面内方向の成分をＨｅｘｔ（エルステッド）とし、前記第２強磁性層の異方性磁界の前記第１面内方向の成分をＨｄｘ（エルステッド）とするとき、前記磁界印加部の印加する前記磁界は、以下の（１）式で表される条件を満足する不揮発性記憶装置である場合、電圧を印加することで第２強磁性層の磁気異方性が変化して磁化反転を起こす。この場合、第２設定電圧の大きさによって、磁化反転の速度が変化するため、電圧でメモリ特性を変更することが可能である。
【０１７２】
【数１】
2016177689.tif 000003
【０１７３】
また、別の例においては下記であっても良い。第１強磁性層とは、磁化の方向が固定された参照層である。第２強磁性層とは、磁化の方向が可変である記憶層である。第１強磁性層と第２強磁性層の間に、第１非磁性層（スペーサー層）がある。
【０１７４】
第１強磁性層と第２強磁性層のどちらかは、第１導電層に直接、あるいは間接的に接続されている。また、第１強磁性層と第２強磁性層のどちらかは、第２導電層に直接、あるいは間接的に接続されている。
【０１７５】
第１導電層、第１強磁性層、第１非磁性層、第２強磁性層、第２導電層の積層体を積層体SB1と名付ける。
【０１７６】
ここで、第１強磁性層と第２強磁性層を構成する材料は、前記ＳＴＴ−ＭＲＡＭの場合と同様である。また、第１非磁性層、第１導電層、第２導電層を構成する材料においても、前記ＳＴＴ−ＭＲＡＭの場合と同様である。
【０１７７】
積層体SB1は、第２強磁性層部分の一部分以上が第三導電層で取り囲まれたような構造である。第三導電層と積層体SB1は、前記ＳＴＴ−ＭＲＡＭで記述した保護層を介して接していて、両者の間に導通はない。第三導電層には電圧を印加することができる。この場合、第２強磁性層に対する書き込み動作を行う際に、第三導電層に対して同時（あるいは先）に電圧を印加すると、第２強磁性層の磁気異方性が変化して、ある電流に対する磁化反転を速めることが可能である。磁化反転の速度が変化するため、電圧でメモリ特性を変更することが可能である。
【０１７８】
４．磁壁移動型メモリを用いる例
不揮発メモリとして、磁壁移動型メモリ（磁壁移動型ＭＲＡＭ）を用いる場合について説明する。第１強磁性層とは、磁化の方向が固定された参照層である。第２強磁性層とは、磁化の方向が可変である記憶層である。第２強磁性層は、磁壁を含む。第１強磁性層と第２強磁性層の間に、第１非磁性層（スペーサー層）がある。
【０１７９】
第１強磁性層と第２強磁性層のどちらかは、第１導電層に直接、あるいは間接的に接続されている。また、第１強磁性層と第２強磁性層のどちらかは、第２導電層に直接、あるいは間接的に接続されている。
【０１８０】
第１導電層、第１強磁性層、第１非磁性層、第２強磁性層、第２導電層の積層体を積層体ＳＢ１と名付ける。図２７は積層体ＳＢ１を表した模式図である。簡略化のため、ここでは第２導電層が描いていない。
【０１８１】
ここで、第１強磁性層と第２強磁性層を構成する材料は、前記ＳＴＴ−ＭＲＡＭの場合と同様である。また、第１非磁性層、第１導電層、第２導電層を構成する材料においても、前記ＳＴＴ−ＭＲＡＭの場合と同様である。ＪＭＤ１は書き込み時の電流を表し、ＪＭＤ２は読み出し時に用いる電流を表す。
【０１８２】
＜垂直磁化ＭＴＪ＞
第１強磁性層６２は、例えば、第１の磁化固定層として機能する。第１強磁性層６２においては、例えば、磁化が膜面に対して略垂直方向に固定されている。第１強磁性層６２の磁化の方向は、積層方向ＳＤ１と略平行である。
【０１８３】
第２強磁性層６４は、例えば、磁気記憶層として機能する。第２強磁性層の磁化の向きは、膜面に対して略垂直方向で、積層方向ＳＤ１と略平行である。
【０１８４】
第２強磁性層は、磁化が上向きの領域と下向きの領域を含む。すなわち、磁壁を含む。磁壁の境界は電流ＪＭＤ１によってｘ方向に移動することが可能である。例えば、図２８のように、第一強磁性層の磁化の向きが下向きであり、図面上、第一強磁性層の下に位置する領域において第２強磁性層の磁化の向きが上向きの場合、積層体ＳＢ１は磁化が反平行状態であることを意味する。この場合、読み出し電流ＪＭＤ２を流すと、高抵抗として観測される。
【０１８５】
図２８において、書き込み電流ＪＭＤ１を流すと、磁壁の位置がｘ方向に移動する。これにより、図面上、第一強磁性層の下に位置する領域において、第２強磁性層の磁化の向きが下向きとなると、積層体ＳＢ１は磁化が平衡状態となる。この場合、読み出し電流ＪＭＤ２を流すと、低抵抗として観察される。
【０１８６】
＜面内磁化ＭＴＪ＞
第１強磁性層６２は、例えば、第１の磁化固定層として機能する。第１強磁性層６２においては、例えば、磁化が膜面に対して略平行方向に固定されている。第１強磁性層６２の磁化の方向は、積層方向ＳＤ１と略垂直である。
【０１８７】
第２強磁性層６４は、例えば、磁気記憶層として機能する。第２強磁性層の磁化の方向は、膜面に対して略平行方向で、積層方向ＳＤ１と略垂直である。第２強磁性層は、磁化が右向きの領域と左向きの領域を含む。すなわち、磁壁を含む。磁壁の移動方法や抵抗状態は、上述した垂直磁化ＭＴＪの場合と同じである。
【０１８８】
特にＭｎＳｉ、ＦｅＧｅ、Ｃｕ２ＯＳｅＯ３、ＢａＦｅ１２−ｘＳｃｘＯ１９、Ｌａ２−ｘＳｒ１＋ｘＭｎ２Ｏ７、Ｆｅ１−ｘＣｏｘＳｉ、Ｍｎ１−ｘＦｅｘＧｅ、Ｍｎ１−ｘＦｅｘＳｉ、Ｂａ（Ｆｅ１-ｘ-０．０５ＳｃｘＭｇ０．０５）１２Ｏ１９などの材料を用いた場合に、磁性体中にスピン渦構造（Ｓｋｙｒｍｉｏｎ、スキルミオン）を作る場合がある。ＭｎＳｉやＦｅＧｅのように、Ｂ２０型構造など反転対称性を持たないカイラルな結晶構造をもつ材料を第２強磁性層６４に用いて薄膜化するとスキルミオンが形成されやすいので、上述した材料に限らずスキルミオンを形成する材料であれば、本案の第２強磁性層６４として用いることができる。スキルミオンは、トポロジカルな安定性に加え、磁壁に比べて低い電流密度で駆動させることができる。例えば、ＪＭＤ１を磁壁の場合よりも小さくすることができる。
【０１８９】
５．抵抗変化型メモリを用いる例
不揮発メモリとして、抵抗変化型メモリを用いる場合について記述する。抵抗変化型メモリは、第１の電極と、第２の電極と、第１及び第２の電極間に接続され、第１及び第２の抵抗状態間を可逆的に変化可能な抵抗変化膜とを備える。第１及び第２の電極の上下関係は、特に限定されない。例えば、第２の電極が第１の電極の上部に存在していてもよいし、第１の電極が第２の電極の上部に存在していてもよい。また、第１及び第２の電極、及び、抵抗変化膜は、それぞれ、単層構造であってもよいし、複数層を備える多層構造であってもよい。さらに、第１及び第２の電極、及び、抵抗変化膜を備える抵抗変化素子に、ダイオードを直列接続してもよい。第１及び第２の電極は、Ｎｉ、Ｐｔ、Ａｕ、Ａｇ、Ｃｕ、Ｒｕ、Ｉｒ、Ｃｏ、Ｔｉ、Ａｌ、Ｒｈ、Ｎｂ、Ｗなどの金属、不純物がドープされたポリシリコンなどの導電性半導体、又は、これら金属と導電性半導体のシリサイドを備える。また、第１及び第２の電極は、ＴｉＡｌＮ、ＳｒＲｕＯ３、ＲｕＮ、ＴｉＮ、ＴａＮ、ＬａＮｉＯｘ、ＰｔＩｒＯｘ、ＰｔＲｈＯｘ、ＴａＡｌＮ、ＩｎＳｎＯｘなどの化合物を備えていてもよい。抵抗変化膜は、ＨｆＯｘ、ＳｉＯｘ、ＴａｘＯｙ、ＺｎＯ、ＴｉＯ２、ＮｉＯ、ＷＯｘ、Ｎｂ２Ｏ５、ＣｕＯ２、ＡｌｘＯｙ、ＣｏＯ、Ｆｅ２Ｏ３、ＳｒＴｉＯ３、ＳｒＺｒＯ３、（ＢａＳｒ）ＴｉＯ３、などの金属酸化物を備える。抵抗変化膜は、少なくとも２つの抵抗状態を可逆的に変化可能である。
【０１９０】
この場合も、メモリに加える電圧値を変えると、状態変化に必要な時間はＳＴＴ−ＭＲＡＭと同様に変化する。
【０１９１】
６．位相変化型メモリを用いる例
不揮発メモリとして、位相変化型メモリを用いる場合について記述する。位相変化型メモリは、第１の電極と、第２の電極と、第１及び第２の電極間に接続され、第１及び第２の抵抗状態間を可逆的に変化可能な抵抗変化膜とを備える。第１及び第２の電極の上下関係は、特に限定されない。例えば、第２の電極が第１の電極の上部に存在していてもよいし、第１の電極が第２の電極の上部に存在していてもよい。また、第１及び第２の電極、及び、抵抗変化膜は、それぞれ、単層構造であってもよいし、複数層を備える多層構造であってもよい。さらに、第１及び第２の電極、及び、抵抗変化膜を備える抵抗変化素子に、ダイオードを直列接続してもよい。第１及び第２の電極は、Ｎｉ、Ｐｔ、Ａｕ、Ａｇ、Ｃｕ、Ｒｕ、Ｉｒ、Ｃｏ、Ｔｉ、Ａｌ、Ｒｈ、Ｎｂ、Ｗなどの金属、不純物がドープされたポリシリコンなどの導電性半導体、又は、これら金属と導電性半導体のシリサイドを備える。また、第１及び第２の電極は、ＴｉＡｌＮ、ＳｒＲｕＯ３、ＲｕＮ、ＴｉＮ、ＴａＮ、ＬａＮｉＯｘ、ＰｔＩｒＯｘ、ＰｔＲｈＯｘ、ＴａＡｌＮ、ＩｎＳｎＯｘなどの化合物を備えていてもよい。抵抗変化膜は、カルコゲナイド（Ｃｈａｌｃｏｇｅｎｉｄｅ）をベースとした材料とその他の材料を含んでいて良い。例えば、カルコゲナイドは、周期表ＶＩＡ族のＯ（ｏｘｙｇｅｎ）、Ｓ（ｓｕｌｆｕｒ）、Ｓｅ（Ｓｅｌｅｎｉｕｍ）、Ｔｅ（ｔｅｌｌｕｒｉｕｍ）などを含んでいても良い。カルコゲナイドはＩＶＡ族のＧｅ（ｇｅｒｍａｎｉｕｍ）、Ｓｎ（ｔｉｎ）などを含んでも良い。カルコゲナイドは、Ｓｂ（ａｎｔｉｍｏｎｙ）、Ｇａ（ｇａｌｌｉｕｍ）、Ｉｎ（ｉｎｄｉｕｍ）、Ａｇ（ｓｉｌｖｅｒ）を含んでも良い。これ以外にも、Ｇａ／Ｓｂ、Ｉｎ／Ｓｂ、Ｉｎ／Ｓｅ、Ｓｂ／Ｔｅ、Ｇｅ／Ｔｅ、Ｇｅ／Ｓｂ／Ｔｅ、Ｉｎ／Ｓｂ／Ｔｅ、Ｇａ／Ｓｅ／Ｔｅ、Ｓｎ／Ｓｂ／Ｔｅ、Ｉｎ／Ｓｂ／Ｇｅ、Ａｇ／Ｉｎ／Ｓｂ／Ｔｅ、Ｇｅ／Ｓｎ／Ｓｂ／Ｔｅ／、Ｇｅ／Ｓｂ／Ｓｅ／Ｔｅ、Ｔｅ／Ｇｅ／Ｓｂ／Ｓなどの化合物で形成されていても良い。例えば、Ｇｅ／Ｓｂ／Ｔｅを例にとると、ＴｅａＧｅｂＳｂ１００−（ａ＋ｂ）という化合物が例に挙げられる。この他の例としては、Ｇｅ２Ｓｂ２Ｔｅ５、ＧｅＳｂ２Ｔｅ４、ＧｅＳｂ４Ｔｅ７などが挙げられる。抵抗変化膜は、Ｃｒ（ｃｈｒｏｍｉｕｍ）、Ｆｅ（ｉｒｏｎ）、Ｎｉ（ｎｉｃｋｅｌ）、Ｎｂ（ｎｉｏｂｉｕｍ）、Ｐｄ（ｐａｌｌａｄｉｕｍ）、Ｐｔ（ｐｌａｔｉｎｕｍ）などの遷移金属を含んでいても良い。これらは、先のＧｅ／Ｓｂ／Ｔｅと混合物や化合物を形成しても良い。
【０１９２】
この場合も、メモリに加える電圧値を変えると、状態変化に必要な時間はＳＴＴ−ＭＲＡＭと同様に変化する。
【０１９３】
このように、本実施形態では、不揮発メモリからなる単一階層メモリ７のメモリ領域のアクセス速度を、必要に応じて、部分領域２７ごとに可変できるようにしたため、単一階層メモリ７でありながら、アクセス速度の異なる階層化されたキャッシュメモリと同様の機能を果たすことができ、プロセッサ３の処理性能を向上できる。特に、本実施形態によれば、アクセス速度の異なる複数種類のキャッシュメモリを設けなくて済むため、メモリシステム１のハードウェア構成を簡略化しつつ、プロセッサ３の処理動作に応じて、単一階層メモリ７の機能を最適化でき、柔軟性のあるメモリシステム１を構築できる。また、本実施形態による単一階層メモリ７では、各部分領域２７ごとに、アクセス速度をどの程度高速化させるかを動的に切り替えることができるため、プロセッサの処理状況に応じて、単一階層メモリ７にて実現される階層化キャッシュの構成を最適化させることができる。さらに、本実施形態による単一階層メモリ７は、既存のキャッシュメモリと併用することもでき、プロセッサ３の処理動作に応じて、種々の目的に単一階層メモリ７を利用できる。
【０１９４】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１９５】
１  メモリシステム、２  プロセッサシステム、３  プロセッサ、４コア、５  演算器、６  レジスタ、７  単一階層メモリ、８  Ｉ／Ｆコントローラ、９  メインメモリ、１１  メモリアレイ、１２  デコーダ、１３  ビット線駆動回路、１４  書込み制御回路、１５  読出し制御回路、１６  ブーストコントローラ、１７  内部コントローラ、１８  キャッシュロジック部、２７  部分領域、４１  第１領域、４２  第２領域、４３  第２状態、４４  第１状態、４５  第３状態
【図１】
2016177689.tif 000004
【図２】
2016177689.tif 000005
【図３】
2016177689.tif 000006
【図４】
2016177689.tif 000007
【図５】
2016177689.tif 000008
【図６】
2016177689.tif 000009
【図７】
2016177689.tif 000010
【図８】
2016177689.tif 000011
【図９】
2016177689.tif 000012
【図１０】
2016177689.tif 000013
【図１１】
2016177689.tif 000014
【図１２】
2016177689.tif 000015
【図１３】
2016177689.tif 000016
【図１４】
2016177689.tif 000017
【図１５】
2016177689.tif 000018
【図１６】
2016177689.tif 000019
【図１７】
2016177689.tif 000020
【図１８】
2016177689.tif 000021
【図１９】
2016177689.tif 000022
【図２０】
2016177689.tif 000023
【図２１】
2016177689.tif 000024
【図２２】
2016177689.tif 000025
【図２３】
2016177689.tif 000026
【図２４】
2016177689.tif 000027
【図２５】
2016177689.tif 000028
【図２６】
2016177689.tif 000029
【図２７】
2016177689.tif 000030
【図２８】
2016177689.tif 000031