特許第6372203号(P6372203)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社ソシオネクストの特許一覧

特許6372203データ保持回路および保持データ復元方法
<>
  • 特許6372203-データ保持回路および保持データ復元方法 図000002
  • 特許6372203-データ保持回路および保持データ復元方法 図000003
  • 特許6372203-データ保持回路および保持データ復元方法 図000004
  • 特許6372203-データ保持回路および保持データ復元方法 図000005
  • 特許6372203-データ保持回路および保持データ復元方法 図000006
  • 特許6372203-データ保持回路および保持データ復元方法 図000007
  • 特許6372203-データ保持回路および保持データ復元方法 図000008
  • 特許6372203-データ保持回路および保持データ復元方法 図000009
  • 特許6372203-データ保持回路および保持データ復元方法 図000010
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6372203
(24)【登録日】2018年7月27日
(45)【発行日】2018年8月15日
(54)【発明の名称】データ保持回路および保持データ復元方法
(51)【国際特許分類】
   G11C 14/00 20060101AFI20180806BHJP
   H03K 3/3562 20060101ALI20180806BHJP
【FI】
   G11C14/00 230
   H03K3/3562 625
【請求項の数】5
【全頁数】14
(21)【出願番号】特願2014-139960(P2014-139960)
(22)【出願日】2014年7月7日
(65)【公開番号】特開2016-18573(P2016-18573A)
(43)【公開日】2016年2月1日
【審査請求日】2017年6月9日
(73)【特許権者】
【識別番号】514315159
【氏名又は名称】株式会社ソシオネクスト
(74)【代理人】
【識別番号】100099759
【弁理士】
【氏名又は名称】青木 篤
(74)【代理人】
【識別番号】100119987
【弁理士】
【氏名又は名称】伊坪 公一
(74)【代理人】
【識別番号】100133835
【弁理士】
【氏名又は名称】河野 努
(74)【代理人】
【識別番号】100135976
【弁理士】
【氏名又は名称】宮本 哲夫
(72)【発明者】
【氏名】武野 紘宜
(72)【発明者】
【氏名】山本 暁生
【審査官】 後藤 彰
(56)【参考文献】
【文献】 国際公開第2009/028298(WO,A1)
【文献】 国際公開第2013/172065(WO,A1)
【文献】 米国特許出願公開第2013/0286721(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G11C 14/00
H03K 3/3562
(57)【特許請求の範囲】
【請求項1】
保持する値に応じて論理値が変化する第1の端子および前記第1の端子の保持する論理値と逆の論理値を保持する第2の端子を有するラッチ回路と、
書き込み信号に応じて前記第1の端子および前記第2の端子が保持する値を記憶し、読み出し信号に応じて前記第1の端子および前記第2の端子が保持する値を、記憶した値に設定する記憶回路と、を備え、
前記記憶回路は、前記第1の端子および前記第2の端子間に、直列に互いに逆方向に接続される2個のMTJ素子と、前記2個のMTJ素子の接続ノードにおける電位のレベルが第1のレベルになると、前記書き込み信号を停止する書き込み制御回路を有する書き込み回路とを備え
前記書き込み回路は、前記書き込み信号に応じて、前記第1の端子と前記第2の端子の内の高電位側の端子から前記2個のMTJ素子を介して前記第1の端子と前記第2の端子の内の低電位側の端子に書き込み電流を流し、前記2個のMTJ素子を前記書き込み電流の方向に応じた状態にする、ことを特徴とするデータ保持回路。
【請求項2】
前記記憶回路は、
前記読み出し信号に応じて、前記第1の端子から前記2個のMTJ素子の一方に至る第1経路および前記第2の端子から前記2個のMTJ素子の他方に至る第2経路に電流を流し、前記2個のMTJ素子の状態の違いによる抵抗値の差に応じて前記第1の端子と前記第2の端子の論理値を設定する読み出し回路を更に備える請求項1に記載のデータ保持回路。
【請求項3】
前記ラッチ回路は、フリップフロップ回路を形成する2個のラッチ回路の後段のラッチ回路である請求項1に記載のデータ保持回路。
【請求項4】
データ保持回路を含む半導体装置であって、
前記データ保持回路は、
保持する値に応じて論理値が変化する第1の端子および前記第1の端子の保持する論理値と逆の論理値を保持する第2の端子を有するラッチ回路と、
書き込み信号に応じて前記第1の端子および前記第2の端子が保持する値を記憶し、読み出し信号に応じて前記第1の端子および前記第2の端子が保持する値を、記憶した値に設定する記憶回路と、を備え、
前記記憶回路は、前記第1の端子および前記第2の端子間に、直列に互いに逆方向に接続される2個のMTJ素子と、前記2個のMTJ素子の接続ノードにおける電位のレベルが第1のレベルになると、前記書き込み信号を停止する書き込み制御回路を有する書き込み回路とを備え
前記書き込み回路は、前記書き込み信号に応じて、前記第1の端子と前記第2の端子の内の高電位側の端子から前記2個のMTJ素子を介して前記第1の端子と前記第2の端子の内の低電位側の端子に書き込み電流を流し、前記2個のMTJ素子を前記書き込み電流の方向に応じた状態にする、ことを特徴とする半導体装置。
【請求項5】
第1の端子および前記第1の端子の保持する論理値と逆の論理値を保持する第2の端子を有するラッチ回路が保持する値を電源切断前に記憶し、電源再投入時に記憶した値を前記ラッチ回路に保持させる保持データ復元方法であって、
電源切断前に、前記書き込み信号に応じて、前記第1の端子と前記第2の端子の内の高電位側の端子から低電位側の端子に、前記第1の端子および前記第2の端子間に直列に互いに逆方向に接続された2個のMTJ素子を介して書き込み電流を流し、前記2個のMTJ素子を前記書き込み電流の方向に応じた状態にし、
電源再投入時に、前記読み出し信号に応じて、前記第1の端子から前記2個のMTJ素子の一方に至る第1経路および前記第2の端子から前記2個のMTJ素子の他方に至る第2経路に電流を流し、前記2個のMTJ素子の状態の違いによる抵抗値の差に応じて前記第1の端子と前記第2の端子の論理値を設定する、ことを含み、
前記2個のMTJ素子を電流の方向に応じた状態にする時に、
前記2個のMTJ素子の接続ノードにおける電位が第1のレベルになると、書き込み信号を停止する、ことを特徴とする保持データ復元方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データ保持回路および保持データ復元方法に関する。
【背景技術】
【0002】
半導体装置では低消費電力化が求められ、システム動作中でも必要な構成要素以外の電源を積極的に遮断して待機電力を削減することが求められる。このような電源遮断を実施する場合、通常の回路動作でデータを保持する動作を行うデータ保持回路を含む構成要素において、電源を再投入した後、電源遮断前にデータ保持回路に保持していたデータを利用して処理を開始することが求められる場合がある。
【0003】
このような場合、電源遮断前に、電源再投入後にデータ保持回路の設定に必要なデータをメモリセルに一時的に記憶し、電源再投入後に記憶したデータに基づいてデータ保持回路の設定を行っていた。このような設定が必要なデータ保持回路は、電源を遮断する構成要素の一部であり、一部のデータ保持回路のデータが設定できればよい。
【0004】
しかし、この構成では、構成要素を含む通常の動作回路の他に、別途メモリセルを設ける必要がある。もしメモリセルの電源も遮断する場合には、メモリセルは不揮発性であることが求められる。さらに、電源遮断時には、データ保持回路のデータを取得した後、取得したデータのメモリセルへの記憶を順に行う必要がある。また、電源再投入時には、メモリセルからの記憶したデータの読み出しおよび読み出したデータのデータ保持回路への設定動作を順に行う必要がある。
【0005】
電源を遮断してもデータ保持できる不揮発性メモリ素子として各種のメモリが知られており、その1つにMTJ(Magnetic Tunnel Junction)素子を搭載した集積回路技術がある。MTJ素子を利用した半導体装置として、複数のワード線と複数のビット線の交差部にMTJ素子を含むメモリセルを配置した不揮発性メモリが各種提案されているが、いずれもNAND型フラッシュメモリなどを置き換えるメモリである。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2009−26382号公報
【特許文献2】特開2004−234707号公報
【特許文献3】特開2012−89187号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
電源遮断前に保持していたデータを記憶し、電源再開後に電源遮断前に保持していたデータを利用するデータ保持回路で、上記のMTJ素子を利用した半導体装置を利用する場合、別途設けるメモリセルを形成する不揮発性メモリとして利用することになる。そのため、データのMTJ素子を有する不揮発性メモリへの記憶動作および電源再投入後の不揮発性メモリからのデータの読み出しおよび回路への設定動作を行う必要がある。この記憶動作および設定動作は、1つのデータ保持回路のデータについて1回行う必要があり、記憶動作および設定動作が必要なデータ保持回路が複数ある場合には、データ保持回路の個数分の動作を繰り返すことになる。そのため、データの復元が必要なデータ保持回路の個数が多くなると、記憶動作および設定動作に要する時間が長くなり、処理速度が低下するという問題が発生する。
【0008】
実施形態によれば、メモリセルを使用せず、電源遮断時の状態を記憶して電源再開後に元の状態を復元するデータ保持回路が実現される。
【課題を解決するための手段】
【0009】
本発明の第1の態様は、ラッチ回路と、記憶回路と、を有するデータ保持回路である。ラッチ回路は、保持する値に応じて論理値が変化する第1の端子、および第1の端子の保持する論理値と逆の論理値を保持する第2の端子を有する。記憶回路は、書き込み信号に応じて第1の端子および第2の端子が保持する値を記憶し、読み出し信号に応じて第1の端子および第2の端子が保持する値を、記憶した値に設定し、第1の端子および第2の端子間に、直列に互いに逆方向に接続される2個のMTJ素子を有する。
【0010】
本発明の第2の態様は、第1の端子および第1の端子の保持する論理値と逆の論理値を保持する第2の端子を有するラッチ回路が保持する値を電源切断前に記憶し、電源再投入時に記憶した値をラッチ回路に保持させる保持データ復元方法である。電源切断前に、書き込み信号に応じて、第1の端子と第2の端子の内の高電位側の端子から低電位側の端子に、第1の端子および第2の端子間に直列に互いに逆方向に接続された2個のMTJ素子を介して書き込み電流を流し、2個のMTJ素子を書き込み電流の方向に応じた状態にする。電源再投入時に、読み出し信号に応じて、第1の端子から2個のMTJ素子の一方に至る第1経路および第2の端子から2個のMTJ素子の他方に至る第2経路に電流を流す。そして、2個のMTJ素子の状態の違いによる抵抗値の差に応じて第1の端子と第2の端子の論理値を設定する。
【発明の効果】
【0011】
実施形態によれば、電源再開後にデータを復元するデータ保持回路に、2個のMTJ素子を含む記憶回路が付属され、電源遮断前の元のデータを復元できる。これにより、データ復元を要するデータ保持回路が複数個あっても、並列にデータの保持および設定が可能であり、電源遮断時および電源再開時の処理速度を向上できる。
【図面の簡単な説明】
【0012】
図1図1は、データ保持回路として広く使用されているクロック同期型のフリップフロップ(FF)の回路例を示す図である。
図2図2は、図1のFFで電源を遮断した後、再投入した時の動作を示すタイムチャートである。
図3図3は、第1実施形態のデータ保持回路の回路図である。
図4図4は、MTJ素子の概略構造と、その表示記号を示す図である。
図5図5は、第1実施形態のデータ保持回路で電源を遮断した後、再投入した時の動作を示すタイムチャートである。
図6図6は、第1実施形態のデータ保持回路の後段のラッチ回路における書き込み処理および読み出し処理を示す図である。
図7図7は、第2実施形態のデータ保持回路の回路図である。
図8図8は、書き込み処理における2個のMTJ素子の接続ノードの電位レベルを説明する図である。
図9図9は、第2実施形態における書き込み処理時の、書き込み信号、2個のMTJ素子の接続ノードの電位、および書き込み制御信号の変化を示すタイムチャートである。
【発明を実施するための形態】
【0013】
実施形態のデータ保持回路を説明する前に、一般的なデータ保持回路について説明する。
【0014】
図1は、データ保持回路として広く使用されているクロック同期型のフリップフロップ(FF)の回路例を示す図である。
【0015】
図示のように、2段に接続されたインバータにより、クロックCLKから正相クロックCLK0と逆相CLKBが生成され、クロック同期型FFは、CLK0とCLKBで動作する。
クロック同期型FFは、入力ゲートと、フリップフロップ部と、出力インバータと、を有する。
【0016】
入力ゲートは、電源VDDとVSS間に直列に接続した2個のPchトランジスタP1およびP2と2個のNchトランジスタN1およびN2を有する。P1とN1のゲートには入力データDATAが印加され、P2のゲートにはCLK0が印加され、N2のゲートにはCLKBが印加される。入力ゲートは、CLKが低レベルのクロック周期の前半で、入力データDATAの反転データをフリップフロップ部に出力し、CLKが高レベルのクロック周期の後半で、出力をハイインピーダンス状態にする。
【0017】
フリップフロップ部は、前段11と、トランスファーゲートTG1と、後段12と、を有する。前段および後段は、ラッチ回路である。前段は、入力と出力を相互に接続したインバータInv1およびクロック同期インバータGInv1をする。入力ゲートの出力が前段の入力(Inv1の入力、GInv1の出力)に接続され、前段の出力(Inv1の出力、GInv1の入力)がTG1に接続される。後段は、入力と出力を相互に接続したインバータInv2およびクロック同期インバータGInv2をする。TG1の出力が前段の入力ノードUS2(Inv2の入力、GInv2の出力)に接続され、後段の出力ノードUS1(Inv2の出力、GInv2の入力)が出力インバータINv3に接続される。INv3の出力が、FFのQ出力となる。
【0018】
GInv1は、クロックの前半では出力がハイインピーダンスになり、後半で出力がアクティブになるのに対して、GInv2は、クロックの前半では出力がアクティブになり、後半で出力がハイインピーダンスになる。言い換えれば、GInv1とGInv2は、逆相で動作する。TG1は、クロックの前半では出力がハイインピーダンスになり、後半で導通する。
【0019】
図1のFFの回路構成と動作は広く知られているので、これ以上の説明は省略する。
同期型動作回路は、各部に遅延があっても、全体としてクロックCLKに同期して正常に動作するために、図1のFFを多数有している。図1のFFは、クロックCLKが停止すると、その時点のデータを保持し続ける。
【0020】
図1のFFは、電源が供給される間、クロックCLKが停止すると、データを保持し続けるが、電源遮断に対してデータ保持機能を有していない。このため電源が遮断されると回路内部の各ノードは不定状態となり、それまでのデータは保持されない。このため電源再投入後に、電源遮断前のデータを復元するためには、データ保持回路の外部に別途データ保持用のメモリセル等を設け、電源再投時にメモリセル等から保持データを入力して設定する必要がある。
【0021】
図2は、図1のFFで電源を遮断した後、再投入した時の動作を示すタイムチャートである。
Xで示す時点で電源をオン(on)からオフ(off)に変化させる(電源遮断する)と、Q出力は不定になる。図2では、電源遮断時には、入力データDATAも不定となり、CLKも入力されないとして示している。後述するように、元のデータを復元するには、電源遮断する前に、Q出力(または入力データDATA)をメモリセルに記憶しておく。
【0022】
電源をオフからオンに変化させ(電源再投入する)、Yで示す時点で、CLKを入力すると、その時点の不定な入力データDATAがQ出力となる。どのようなデータになるかは、回路の状態により異なり、不定である。そこで、電源遮断前の元のQデータを出力するには、メモリセルに記憶していた入力データDATAまたはQ出力を入力データDATAとして入力すると、次のCLKの立ち上りで元のデータが復元される。
【0023】
このように元のデータを復元するには、電源遮断前に各FFからQ出力をメモリセルに記憶し、電源再投時にメモリセルから保持データを入力して設定する必要がある。言い換えれば、FFからメモリセルへのデータの転送およびメモリセルからFFへのデータ転送が必要である。このデータ転送は、FFごとに行う必要があるため、データを復元するFFが複数個ある場合には、電源遮断前と電源再投時に、それぞれ複数回のデータ転送を行うことになる。そのため、データを復元するFFの個数が大きいと、電源遮断前と電源再投時に行うデータ転送に要する時間が長くなる。
【0024】
一方、不揮発性のメモリセルとしてMTJ素子を利用することが知られている。MTJ素子は、方向性を有し、書込み電流を流す方向を変えると抵抗が変化する抵抗変化素子である。書込み時に、書込む値に応じて流す方向を異ならせてMTJ素子に書込み電流を流すと、MTJ素子の抵抗が異なる。読出し時に、書込み電流より小さいMTJ素子を変化させない読出し電流を流して抵抗の差に応じた電圧差または電流差を検出することにより、MTJ素子に書込まれた値を検出できる。
【0025】
MTJ素子を利用した半導体装置として、複数のワード線と複数のビット線の交差部にMTJ素子を含むメモリセルを配置した不揮発性メモリが各種提案されているが、いずれもNAND型フラッシュメモリなどを置き換えるメモリである。そのため、MTJ素子を有する不揮発性メモリを使用する場合には、電源遮断前に各FFから取得したQ出力を記憶するメモリセルとして利用することになり、電源遮断前および電源再投時のデータ転送が必要であり、処理時間が長いという問題がある。
【0026】
以下に説明する実施形態のデータ保持回路は、データ保持回路に、2個のMTJ素子を含む記憶回路が付属され、電源遮断前の元のデータを復元でき、データ復元を要するデータ保持回路が複数個あっても、並列にデータの保持および設定が可能である。
【0027】
図3は、第1実施形態のデータ保持回路の回路図である。第1実施形態のデータ保持回路は、図1に示したクロック同期型のフリップフロップ(FF)の回路である。
【0028】
図3に示すように、2段に接続されたインバータにより、クロックCLKから正相クロックCLK0と逆相CLKBが生成され、1個のインバータにより、書き込み信号MSから反転書き込み信号MSBが生成される。第1実施形態のデータ保持回路は、CLK0、CLKB、MS、MSBおよび読み出し信号MRに応じて動作する。
第1実施形態のデータ保持回路は、入力ゲートと、フリップフロップ部と、出力インバータInv3と、を有する。フリップフロップ部は、前段と、トランスファーゲートTG1と、後段と、を有する。入力ゲート、フリップフロップ部の前段とトランスファーゲートTG1および出力インバータInv3は、図1のものと同じである。したがって、第1実施形態のデータ保持回路は、フリップフロップ部の後段が図1のFFと異なり、他は同じである。以下、異なる部分についてのみ説明する。
【0029】
第1実施形態のデータ保持回路のフリップフロップ部の後段は、図1のフリップフロップ部の後段のラッチ回路に、記憶回路を付加した構成を有する。
【0030】
記憶回路は、2個のMTJ素子MTJ1およびMTJ2と、書き込み回路と、読み出し回路と、を有する。書き込み回路は、電源遮断前に、信号MSおよびMSBに応じて、MTJ1およびMTJ2を、後段のラッチ回路のノードUS1およびUS2の論理値に応じた状態にする。読み出し回路は、電源再投入時に、後段のラッチ回路のノードUS1およびUS2の論理値を、MTJ1およびMTJ2の状態に応じた状態に設定する。後段のノードUS1は、Inv2の出力とGInv2の入力を接続したノードで、Inv3に接続される。ノードUS2は、Inv2の入力とGInv2の出力を接続したノードで、TG1に接続される。
【0031】
書き込み回路は、US1とMTJ1の間に直列に接続されたインバータInv12およびトランスファーゲートTG11と、US2とMTJ2の間に直列に接続されたインバータInv13およびトランスファーゲートTG12と、を有する。
【0032】
読み出し回路は、US1とUS2間を接続するPchトランジスタP11と、MRを反転してP11のゲートに印加するインバータInv11と、を有する。読み出し回路は、US1とMTJ1の間に接続されたNchトランジスタN11と、US2とMTJ2の間に接続されたNchトランジスタN12と、MTJ1とMTJ2の接続ノードと低電位源VSS間に接続されたNchトランジスタN13と、を有する。
【0033】
図4は、MTJ素子の概略構造と、その表示記号を示す図である。
図4の(A)に示すように、MTJ素子は、MgO絶縁膜22と、MgO絶縁膜22の一方の側に設けたCoFeB22の磁化方向非固定層21と、MgO絶縁膜22の他方の側に設けたCoFeB22の磁化方向固定層23と、を有する。MTJ素子は、書き込み電流を、磁化方向非固定層21から磁化方向固定層23の方向に流した場合と、その逆の方向に流した場合で、抵抗値が異なる。この書き込み電流の方向による抵抗値の違いを利用して論理値(データ)を記憶する。記憶したデータを読み出す場合には、書き込み電流より小さな状態を変化させない読み出し電流を流して、抵抗値の差に応じた電圧差または電流差を検出する。言い換えれば、MTJ素子は、方向性を有する。ここでは、磁化方向非固定層(TEL)21から磁化方向固定層(BEL)23の方向(逆方向)に流した場合に高抵抗に、磁化方向固定層(BEL)23から磁化方向非固定層(TEL)21の方向(順方向)に流した場合に低抵抗になるとする。
【0034】
MTJ素子は、図4の(B)のような記号で表す。
図3において、MTJ1とMTJ2は、その接続ノードに同じ磁化層が向き合うように配置する。ここでは、MTJ1は、N11側がBELで、N13側がTELであるように接続される。MTJ2は、N12側がBELで、N13側がTELであるように接続される。したがって、MTJ1は、N11側からN13側に至る経路が順方向で、MTJ2は、N12側からN13側に至る経路が順方向である。
【0035】
図5は、第1実施形態のデータ保持回路で電源を遮断した後、再投入した時の動作を示すタイムチャートである。
【0036】
電源をオン(on)からオフ(off)に変化させる(電源遮断する)前に、Sで示す時点で書き込み信号MSを立ち上げる。MSの立ち上りに応答して、MTJ1およびMTJ2は、ノードUS1およびUS2の論理値に応じた状態になる。この動作を書き込み処理と称する。書込み処理が終了した後、MSを立ち下げ、電源を遮断する。
【0037】
電源を遮断すると、Q出力は不定になるが、MTJ1およびMTJ2は、電源が遮断されても状態を維持するので、書込み処理により設定された状態を維持している。
【0038】
電源をオン(on)からオフ(off)、さらにオン(on)に変化させる(電源再投入する)と、Q出力は不定の状態を維持する。この状態で、Rで示す時点で読み出し信号MRを立ち上げる。MRの立ち上りに応答して、(L)レベルとなる。その後、MRを立ち下げると、ノードUS1およびUS2の論理値は、MTJ1およびMTJ2に設定された論理値に応じた状態に変化し、Q出力は電源遮断前の論理値に変化する。この動作を読み出し処理と称する。データ保持回路は、電源遮断前の状態に復元され、通常のクロックCLKに応じて動作する状態になる。
【0039】
図6は、第1実施形態のデータ保持回路の後段のラッチ回路における書き込み処理および読み出し処理を示す図である。図6の(A)は、後段のラッチ回路で、Q出力が低(L)レベルで、ノードUS1が高(H)レベル、ノードUS2が低(L)レベルである時に書き込み処理を行う場合の電流経路を示している。図6の(B)は、MTJ1が高抵抗、MTJ2が低抵抗である時に読み出し処理を行う場合の電流経路を示している。
【0040】
書き込み処理では、書き込み信号MSを高(H)レベルにし、読み出し信号MRは低(L)レベルを維持する。この時、クロックCLKは入力しない、すなわち、CLKはLレベルに維持される。従って、図6の(A)に示すように、書き込み処理の間、P11、N11、N12およびN13はオフ状態である。
【0041】
書き込み信号MSをHレベルにすると、TG11およびTG12が導通する。図6の(A)では、ノードUS1はHであるから、Inv12の出力はLであり、ノードUS2はLであるから、Inv13の出力はHである。したがって、HレベルのInv13の出力から、TG12、MTJ2、MTJ1、TG11、そしてInv12の低レベルの出力に至る電流経路が形成され、この方向に電流が流れる。したがって、MTJ1では、電流は逆方向に流れ、MTJ2では、電流は順方向に流れ、MTJ1を高抵抗に、MTJ2を低抵抗に設定する書き込みが行われる。
【0042】
もし、Q出力がHレベルで、ノードUS1がLレベル、ノードUS2がHレベルである時には、電流は、HレベルのInv12の出力から、TG11、MTJ1、MTJ2、TG12、そしてInv13の低レベルの出力に至る経路で流れる。これにより、MTJ1を低抵抗に、MTJ2を高抵抗に設定する書き込みが行われる。
【0043】
以上のようにして、後段のラッチ回路、すなわちデータ保持回路の保持するデータに応じて、MTJ1およびMTJ2の状態を設定する書き込み処理が行われ、MTJ1およびMTJ2に、ラッチ回路の保持するデータが記憶される。書き込み処理が終了すると、書き込み信号MSがLレベルに戻される。実際には、MTJ1およびMTJ2の状態を十分に変化させることができる期間を決めておき、MSをその期間Hレベルにする。
【0044】
読み出し処理では、書き込み信号MSをLレベルに維持し、読み出し信号MRをHレベルにする。この時、クロックCLKは入力しない、すなわち、CLKはLレベルに維持される。従って、図6の(B)に示すように、読み出し処理の間、TG11およびTG12はオフ状態である。
【0045】
読み出し信号MRをHレベルにすると、図3のP11が導通し、US1とUS2が短絡され、N11、N12およびN13が導通する。これにより、US1,US2が(L)レベルとなる。その後MRをLレベルに戻すことで、P11,N11,N12,N13が非導通となり、US1,US2の一方が(H)レベルとなる。このときUS1からN11、MTJ1およびN13に至る経路と、US2からN12、MTJ2およびN13に至る経路で、電流が流れ、上記のように、MTJ1の抵抗値とMTJ2の抵抗値が異なるので電流差が発生する。この電流差によってラッチ回路は、書き込み処理時の状態に復元される。
【0046】
図6の(B)では、MTJ1が高抵抗、MTJ2が低抵抗であり、MTJ1に流れる電流は、MTJ2に流れる電流に比べて小さい。このため、US1が高レベルに、US2が低レベルになり、Q出力は低レベルになる。
【0047】
MTJ1が低抵抗、MTJ2が高抵抗である場合には、MTJ1に流れる電流は、MTJ2に流れる電流に比べて大きく、US1が低レベルに、US2が高レベルになり、Q出力は高レベルになる。
【0048】
以上のようにして、後段のラッチ回路、すなわちデータ保持回路の保持するデータを、MTJ1およびMTJ2の状態に応じた状態に設定する読み出し処理が行われる。読み出し処理が終了すると、読み出し信号MRがLレベルに戻される。
【0049】
図7は、第2実施形態のデータ保持回路の回路図である。
第2実施形態のデータ保持回路は、第1実施形態のデータ保持回路に、書き込み処理時の消費電流を削減する回路を設けたことが第1実施形態と異なり、他は同じである。以下、異なる事項について説明する。
【0050】
第2実施形態のデータ保持回路は、第1実施形態のデータ保持回路に、書き込み処理時に2個のMTJ素子MTJ1およびMTJ2の接続ノードUS10における電位がHレベルになると、書き込み信号を停止する書き込み制御回路を設けた回路である。
【0051】
書き込み制御回路は、NchトランジスタN21と、PchトランジスタP21と、インバータInv21〜Inv23と、ゲートNAND1と、を有する。N21は、一端がノードUS10に接続され、他端がInv21の入力に接続され、ゲートに書き込み信号MSが印加される。P21は、高電源線VDDと、N21とInv21の接続ノードと、の間に接続され、ゲートに書き込み信号MSが印加される。Inv21は、入力がN21とP21の接続ノードに接続され、出力がNAND1に入力する。NAND1は、書き込み信号MSとInv21の出力を入力とする。Inv22は、NAND1の出力を反転して書き込み制御信号MSBBを出力する。Inv23は、書き込み制御信号MSBBを反転して反転書き込み制御信号MSBを出力する。TG11およびTG12のゲートには、MSBおよびMSBBが印加される。
【0052】
第1実施形態では、TG11およびTG12のゲートには、書き込み信号MSおよびその反転信号MSBが印加され、MSがHレベルの間TG11およびTG12が導通し、書き込み電流が流れる。前述のように、MSをHレベルにする期間は、プロセス、温度、電源電圧などのバラツキを考慮して、MTJ1およびMTJ2の状態を確実に変化させることができる期間に定められる。この場合、MTJ1およびMTJ2が、ラッチ回路の保持するデータに応じた状態になった後も書き込み電流を流し続けることになり、無駄に電流を消費することになる。特に、MTJ1およびMTJ2が、すでにラッチ回路の保持するデータに応じた状態になっていた場合には、ほとんどの書き込み電流は無駄になることになる。
【0053】
第2実施形態では、MTJ1およびMTJ2がラッチ回路の保持するデータに応じた状態になって場合には、MTJ1とMTJ2の接続ノードUS10の電位が、かならず所定のレベル以上になることに着目した。
図8は、書き込み処理におけるMTJ1とMTJ2の接続ノードの電位レベルを説明する図である。
【0054】
図8の(A)は、Q出力がLレベルで、ノードN11がHレベルで、ノードN12がLレベルで、ある状態、すなわち“L”を書き込む場合に、MTJ1およびMTJ2に流れる電流を示す図である。ノードN11の電位は、Q出力の反転レベルなので/Qで表し、ノードN12の電位は、Q出力と同じレベルなのでQ’で表す。Inv12のゲートには/Q、すなわちHレベルが印加されるので、Inv12のNchTrがオンする。Inv13のゲートにはQ’、すなわちLレベルが印加されるので、Inv13のPchTrがオンする。TG11およびTG12は導通しているので、Inv13のPchTrから、TG12、MTJ2、MTJ1、TG11、さらにInv12のNchTrに至る電流経路が形成される。これにより、MTJ1は、逆方向に電流が流れるので高抵抗に、MTJ2は、順方向に電流が流れるので低抵抗に設定される。言い換えれば、MTJ1が高抵抗に、MTJ2が低抵抗に設定されれば、書き込み処理は終了したといえる。
【0055】
例えば、書き込み処理を開始する時点で、MTJ1が低抵抗、MTJ2が高抵抗であった場合、図8の(A)のように書き込み電流が流れる最初の段階では、ノードUS10の電位は、抵抗分割により、VDDとVSSの中間レベルよりも低いレベルとなる。そして、書き込み電流により、MTJ1が高抵抗に、MTJ2が低抵抗に変化すると、ノードUS10の電位は、VDDとVSSの中間レベルよりも高いレベルとなる。また、書き込み処理を開始する時点で、MTJ1が高抵抗、MTJ2が低抵抗であった場合、最初の段階で、ノードUS10の電位は、VDDとVSSの中間レベルよりも高いレベルであり、書き込み処理を行ってもそのままである。言い換えれば、前の状態にかかわらず、ノードUS10の電位がVDDとVSSの中間レベルよりも高いレベルであれば、書き込み処理が終了した状態である。
【0056】
図8の(B)は、Q出力がHレベルで、ノードN11がLレベルで、ノードN12がHレベルで、ある状態、すなわち“H”を書き込む場合に、MTJ1およびMTJ2に流れる電流を示す図である。Inv12のPchTrから、TG11、MTJ1、MTJ1、TG12、さらにInv13のNchTrに至る電流経路が形成され、MTJ1は、順方向に電流が流れるので低抵抗に、MTJ2は、逆方向に電流が流れるので高抵抗に設定される。この場合も、前の状態にかかわらず、ノードUS10の電位がVDDとVSSの中間レベルよりも高いレベルであれば、書き込み処理が終了した状態である。
【0057】
したがって、ノードUS10の電位が所定レベル(VDDとVSSの中間レベル)より高ければ、書き込みが終了した状態である。
【0058】
第2実施形態では、書き込み処理時に、P21は非導通となり、N21が導通し、VDDとUS10の電位の中間レベルがms_sに出現する。ms_sの電位は、US10の電位に応じて変化する。ここで、Inv21の閾値レベルを、US10の電位が所定レベルである時のms_sの電位に設定する。これにより、US10の電位が所定レベルより高くなると、Inv21の出力がLレベルに変化し、MSBBはLレベルに、MSBはHレベルになる。これは書き込み信号MSがLレベルになったことに相当し、MSBおよびMSBBが印加されるTG11およびTG12は遮断状態になり、書き込み処理が終了した状態になる。このように、第2実施形態では、ノードUS10の電位が、MTJ1およびMTJ2がラッチ回路に保持されたデータに対応する状態になると、書き込み信号が停止し、書き込み処理が終了する。
【0059】
図9は、第2実施形態における書き込み処理時の、書き込み信号MS、ノードUS10の電位、および書き込み制御信号MSBBの変化を示すタイムチャートである。左側は、MTJ1およびMTJ2の状態(値)が、データ保持回路(ラッチ回路)の保持している値と異なる場合を、すなわちMTJ1およびMTJ2の状態を変化させる場合を、右側はMTJ1およびMTJ2の状態を変化させない場合である。
【0060】
書き込み信号MSは、所定の期間Hレベルになる信号である。MTJ1およびMTJ2の状態を変化させる場合に、書き込み信号MSがHレベルである期間書き込み電流を流すと、US10の電位は、左側に示すように、中間レベルから一旦低側に振れた後、上昇して高側のレベルで安定する。US10の電位が高側のレベルになったということは、MTJ1およびMTJ2の状態の書き込み処理による変化が完了したことを意味するが、書き込み信号MSがHレベルの間は書き込み電流が流れ、この電流は無駄な電流である。
【0061】
MTJ1およびMTJ2の状態を変化させない場合、US10の電位は、右側に示すように、中間レベルから一旦すぐに上昇して高側のレベルで安定する。この場合は、書き込み信号MSがHレベルの間ほとんど無駄な電流を流すことになる。
【0062】
第2実施形態では、図9に示すように、書き込み制御信号MSBBは、US10の電位が所定レベルを超えるとLレベルに戻るため、書き込み処理は終了し、書き込み電流は流れない。したがって、図9において矢印で示す期間、書き込み電流を流さないので、書き込み処理に要する電力を削減できる。
【0063】
以上、実施形態を説明したが、ここに記載したすべての例や条件は、発明および技術に適用する発明の概念の理解を助ける目的で記載されたものである。特に記載された例や条件は発明の範囲を制限することを意図するものではなく、明細書のそのような例の構成は発明の利点および欠点を示すものではない。発明の実施形態を詳細に記載したが、各種の変更、置き換え、変形が発明の精神および範囲を逸脱することなく行えることが理解されるべきである。
【符号の説明】
【0064】
11 フリップフロップの前段
12 フリップフロップの後段
21 磁化方向非固定層
22 トンネル絶縁膜
23 磁化方向固定層
Inv1−Inv3、Inv11−Inv13 インバータ
GInv1,Ginv2 クロック同期インバータ
N11−N13 Nchトランジスタ
P11 Pchトランジスタ
TG1,TG11,TG12 トランスファーゲート
MTJ1,MTJ2 MTJ素子
図1
図2
図3
図4
図5
図6
図7
図8
図9