(57)【特許請求の範囲】
【請求項１】
保持する値に応じて論理値が変化する第１の端子および前記第１の端子の保持する論理値と逆の論理値を保持する第２の端子を有するラッチ回路と、
書き込み信号に応じて前記第１の端子および前記第２の端子が保持する値を記憶し、読み出し信号に応じて前記第１の端子および前記第２の端子が保持する値を、記憶した値に設定する記憶回路と、を備え、
前記記憶回路は、前記第１の端子および前記第２の端子間に、直列に互いに逆方向に接続される２個のＭＴＪ素子と、前記２個のＭＴＪ素子の接続ノードにおける電位のレベルが第１のレベルになると、前記書き込み信号を停止する書き込み制御回路を有する書き込み回路とを備え、
前記書き込み回路は、前記書き込み信号に応じて、前記第１の端子と前記第２の端子の内の高電位側の端子から前記２個のＭＴＪ素子を介して前記第１の端子と前記第２の端子の内の低電位側の端子に書き込み電流を流し、前記２個のＭＴＪ素子を前記書き込み電流の方向に応じた状態にする、ことを特徴とするデータ保持回路。
【請求項２】
前記記憶回路は、
前記読み出し信号に応じて、前記第１の端子から前記２個のＭＴＪ素子の一方に至る第１経路および前記第２の端子から前記２個のＭＴＪ素子の他方に至る第２経路に電流を流し、前記２個のＭＴＪ素子の状態の違いによる抵抗値の差に応じて前記第１の端子と前記第２の端子の論理値を設定する読み出し回路を更に備える請求項１に記載のデータ保持回路。
【請求項３】
前記ラッチ回路は、フリップフロップ回路を形成する２個のラッチ回路の後段のラッチ回路である請求項１に記載のデータ保持回路。
【請求項４】
データ保持回路を含む半導体装置であって、
前記データ保持回路は、
保持する値に応じて論理値が変化する第１の端子および前記第１の端子の保持する論理値と逆の論理値を保持する第２の端子を有するラッチ回路と、
書き込み信号に応じて前記第１の端子および前記第２の端子が保持する値を記憶し、読み出し信号に応じて前記第１の端子および前記第２の端子が保持する値を、記憶した値に設定する記憶回路と、を備え、
前記記憶回路は、前記第１の端子および前記第２の端子間に、直列に互いに逆方向に接続される２個のＭＴＪ素子と、前記２個のＭＴＪ素子の接続ノードにおける電位のレベルが第１のレベルになると、前記書き込み信号を停止する書き込み制御回路を有する書き込み回路とを備え、
前記書き込み回路は、前記書き込み信号に応じて、前記第１の端子と前記第２の端子の内の高電位側の端子から前記２個のＭＴＪ素子を介して前記第１の端子と前記第２の端子の内の低電位側の端子に書き込み電流を流し、前記２個のＭＴＪ素子を前記書き込み電流の方向に応じた状態にする、ことを特徴とする半導体装置。
【請求項５】
第１の端子および前記第１の端子の保持する論理値と逆の論理値を保持する第２の端子を有するラッチ回路が保持する値を電源切断前に記憶し、電源再投入時に記憶した値を前記ラッチ回路に保持させる保持データ復元方法であって、
電源切断前に、前記書き込み信号に応じて、前記第１の端子と前記第２の端子の内の高電位側の端子から低電位側の端子に、前記第１の端子および前記第２の端子間に直列に互いに逆方向に接続された２個のＭＴＪ素子を介して書き込み電流を流し、前記２個のＭＴＪ素子を前記書き込み電流の方向に応じた状態にし、
電源再投入時に、前記読み出し信号に応じて、前記第１の端子から前記２個のＭＴＪ素子の一方に至る第１経路および前記第２の端子から前記２個のＭＴＪ素子の他方に至る第２経路に電流を流し、前記２個のＭＴＪ素子の状態の違いによる抵抗値の差に応じて前記第１の端子と前記第２の端子の論理値を設定する、ことを含み、
前記２個のＭＴＪ素子を電流の方向に応じた状態にする時に、
前記２個のＭＴＪ素子の接続ノードにおける電位が第１のレベルになると、書き込み信号を停止する、ことを特徴とする保持データ復元方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ保持回路および保持データ復元方法に関する。
【背景技術】
【０００２】
半導体装置では低消費電力化が求められ、システム動作中でも必要な構成要素以外の電源を積極的に遮断して待機電力を削減することが求められる。このような電源遮断を実施する場合、通常の回路動作でデータを保持する動作を行うデータ保持回路を含む構成要素において、電源を再投入した後、電源遮断前にデータ保持回路に保持していたデータを利用して処理を開始することが求められる場合がある。
【０００３】
このような場合、電源遮断前に、電源再投入後にデータ保持回路の設定に必要なデータをメモリセルに一時的に記憶し、電源再投入後に記憶したデータに基づいてデータ保持回路の設定を行っていた。このような設定が必要なデータ保持回路は、電源を遮断する構成要素の一部であり、一部のデータ保持回路のデータが設定できればよい。
【０００４】
しかし、この構成では、構成要素を含む通常の動作回路の他に、別途メモリセルを設ける必要がある。もしメモリセルの電源も遮断する場合には、メモリセルは不揮発性であることが求められる。さらに、電源遮断時には、データ保持回路のデータを取得した後、取得したデータのメモリセルへの記憶を順に行う必要がある。また、電源再投入時には、メモリセルからの記憶したデータの読み出しおよび読み出したデータのデータ保持回路への設定動作を順に行う必要がある。
【０００５】
電源を遮断してもデータ保持できる不揮発性メモリ素子として各種のメモリが知られており、その１つにＭＴＪ(Magnetic Tunnel Junction)素子を搭載した集積回路技術がある。ＭＴＪ素子を利用した半導体装置として、複数のワード線と複数のビット線の交差部にＭＴＪ素子を含むメモリセルを配置した不揮発性メモリが各種提案されているが、いずれもＮＡＮＤ型フラッシュメモリなどを置き換えるメモリである。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−２６３８２号公報
【特許文献２】特開２００４−２３４７０７号公報
【特許文献３】特開２０１２−８９１８７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
電源遮断前に保持していたデータを記憶し、電源再開後に電源遮断前に保持していたデータを利用するデータ保持回路で、上記のＭＴＪ素子を利用した半導体装置を利用する場合、別途設けるメモリセルを形成する不揮発性メモリとして利用することになる。そのため、データのＭＴＪ素子を有する不揮発性メモリへの記憶動作および電源再投入後の不揮発性メモリからのデータの読み出しおよび回路への設定動作を行う必要がある。この記憶動作および設定動作は、１つのデータ保持回路のデータについて１回行う必要があり、記憶動作および設定動作が必要なデータ保持回路が複数ある場合には、データ保持回路の個数分の動作を繰り返すことになる。そのため、データの復元が必要なデータ保持回路の個数が多くなると、記憶動作および設定動作に要する時間が長くなり、処理速度が低下するという問題が発生する。
【０００８】
実施形態によれば、メモリセルを使用せず、電源遮断時の状態を記憶して電源再開後に元の状態を復元するデータ保持回路が実現される。
【課題を解決するための手段】
【０００９】
本発明の第１の態様は、ラッチ回路と、記憶回路と、を有するデータ保持回路である。ラッチ回路は、保持する値に応じて論理値が変化する第１の端子、および第１の端子の保持する論理値と逆の論理値を保持する第２の端子を有する。記憶回路は、書き込み信号に応じて第１の端子および第２の端子が保持する値を記憶し、読み出し信号に応じて第１の端子および第２の端子が保持する値を、記憶した値に設定し、第１の端子および第２の端子間に、直列に互いに逆方向に接続される２個のＭＴＪ素子を有する。
【００１０】
本発明の第２の態様は、第１の端子および第１の端子の保持する論理値と逆の論理値を保持する第２の端子を有するラッチ回路が保持する値を電源切断前に記憶し、電源再投入時に記憶した値をラッチ回路に保持させる保持データ復元方法である。電源切断前に、書き込み信号に応じて、第１の端子と第２の端子の内の高電位側の端子から低電位側の端子に、第１の端子および第２の端子間に直列に互いに逆方向に接続された２個のＭＴＪ素子を介して書き込み電流を流し、２個のＭＴＪ素子を書き込み電流の方向に応じた状態にする。電源再投入時に、読み出し信号に応じて、第１の端子から２個のＭＴＪ素子の一方に至る第１経路および第２の端子から２個のＭＴＪ素子の他方に至る第２経路に電流を流す。そして、２個のＭＴＪ素子の状態の違いによる抵抗値の差に応じて第１の端子と第２の端子の論理値を設定する。
【発明の効果】
【００１１】
実施形態によれば、電源再開後にデータを復元するデータ保持回路に、２個のＭＴＪ素子を含む記憶回路が付属され、電源遮断前の元のデータを復元できる。これにより、データ復元を要するデータ保持回路が複数個あっても、並列にデータの保持および設定が可能であり、電源遮断時および電源再開時の処理速度を向上できる。
【図面の簡単な説明】
【００１２】
【図１】図１は、データ保持回路として広く使用されているクロック同期型のフリップフロップ（ＦＦ）の回路例を示す図である。
【図２】図２は、図１のＦＦで電源を遮断した後、再投入した時の動作を示すタイムチャートである。
【図３】図３は、第１実施形態のデータ保持回路の回路図である。
【図４】図４は、ＭＴＪ素子の概略構造と、その表示記号を示す図である。
【図５】図５は、第１実施形態のデータ保持回路で電源を遮断した後、再投入した時の動作を示すタイムチャートである。
【図６】図６は、第１実施形態のデータ保持回路の後段のラッチ回路における書き込み処理および読み出し処理を示す図である。
【図７】図７は、第２実施形態のデータ保持回路の回路図である。
【図８】図８は、書き込み処理における２個のＭＴＪ素子の接続ノードの電位レベルを説明する図である。
【図９】図９は、第２実施形態における書き込み処理時の、書き込み信号、２個のＭＴＪ素子の接続ノードの電位、および書き込み制御信号の変化を示すタイムチャートである。
【発明を実施するための形態】
【００１３】
実施形態のデータ保持回路を説明する前に、一般的なデータ保持回路について説明する。
【００１４】
図１は、データ保持回路として広く使用されているクロック同期型のフリップフロップ（ＦＦ）の回路例を示す図である。
【００１５】
図示のように、２段に接続されたインバータにより、クロックＣＬＫから正相クロックＣＬＫ０と逆相ＣＬＫＢが生成され、クロック同期型ＦＦは、ＣＬＫ０とＣＬＫＢで動作する。
クロック同期型ＦＦは、入力ゲートと、フリップフロップ部と、出力インバータと、を有する。
【００１６】
入力ゲートは、電源ＶＤＤとＶＳＳ間に直列に接続した２個のＰｃｈトランジスタＰ１およびＰ２と２個のＮｃｈトランジスタＮ１およびＮ２を有する。Ｐ１とＮ１のゲートには入力データＤＡＴＡが印加され、Ｐ２のゲートにはＣＬＫ０が印加され、Ｎ２のゲートにはＣＬＫＢが印加される。入力ゲートは、ＣＬＫが低レベルのクロック周期の前半で、入力データＤＡＴＡの反転データをフリップフロップ部に出力し、ＣＬＫが高レベルのクロック周期の後半で、出力をハイインピーダンス状態にする。
【００１７】
フリップフロップ部は、前段１１と、トランスファーゲートＴＧ１と、後段１２と、を有する。前段および後段は、ラッチ回路である。前段は、入力と出力を相互に接続したインバータＩｎｖ１およびクロック同期インバータＧＩｎｖ１をする。入力ゲートの出力が前段の入力（Ｉｎｖ１の入力、ＧＩｎｖ１の出力）に接続され、前段の出力（Ｉｎｖ１の出力、ＧＩｎｖ１の入力）がＴＧ１に接続される。後段は、入力と出力を相互に接続したインバータＩｎｖ２およびクロック同期インバータＧＩｎｖ２をする。ＴＧ１の出力が前段の入力ノードＵＳ２（Ｉｎｖ２の入力、ＧＩｎｖ２の出力）に接続され、後段の出力ノードＵＳ１（Ｉｎｖ２の出力、ＧＩｎｖ２の入力）が出力インバータＩＮｖ３に接続される。ＩＮｖ３の出力が、ＦＦのＱ出力となる。
【００１８】
ＧＩｎｖ１は、クロックの前半では出力がハイインピーダンスになり、後半で出力がアクティブになるのに対して、ＧＩｎｖ２は、クロックの前半では出力がアクティブになり、後半で出力がハイインピーダンスになる。言い換えれば、ＧＩｎｖ１とＧＩｎｖ２は、逆相で動作する。ＴＧ１は、クロックの前半では出力がハイインピーダンスになり、後半で導通する。
【００１９】
図１のＦＦの回路構成と動作は広く知られているので、これ以上の説明は省略する。
同期型動作回路は、各部に遅延があっても、全体としてクロックＣＬＫに同期して正常に動作するために、図１のＦＦを多数有している。図１のＦＦは、クロックＣＬＫが停止すると、その時点のデータを保持し続ける。
【００２０】
図１のＦＦは、電源が供給される間、クロックＣＬＫが停止すると、データを保持し続けるが、電源遮断に対してデータ保持機能を有していない。このため電源が遮断されると回路内部の各ノードは不定状態となり、それまでのデータは保持されない。このため電源再投入後に、電源遮断前のデータを復元するためには、データ保持回路の外部に別途データ保持用のメモリセル等を設け、電源再投時にメモリセル等から保持データを入力して設定する必要がある。
【００２１】
図２は、図１のＦＦで電源を遮断した後、再投入した時の動作を示すタイムチャートである。
Ｘで示す時点で電源をオン（ｏｎ）からオフ（ｏｆｆ）に変化させる（電源遮断する）と、Ｑ出力は不定になる。図２では、電源遮断時には、入力データＤＡＴＡも不定となり、ＣＬＫも入力されないとして示している。後述するように、元のデータを復元するには、電源遮断する前に、Ｑ出力（または入力データＤＡＴＡ）をメモリセルに記憶しておく。
【００２２】
電源をオフからオンに変化させ（電源再投入する）、Ｙで示す時点で、ＣＬＫを入力すると、その時点の不定な入力データＤＡＴＡがＱ出力となる。どのようなデータになるかは、回路の状態により異なり、不定である。そこで、電源遮断前の元のＱデータを出力するには、メモリセルに記憶していた入力データＤＡＴＡまたはＱ出力を入力データＤＡＴＡとして入力すると、次のＣＬＫの立ち上りで元のデータが復元される。
【００２３】
このように元のデータを復元するには、電源遮断前に各ＦＦからＱ出力をメモリセルに記憶し、電源再投時にメモリセルから保持データを入力して設定する必要がある。言い換えれば、ＦＦからメモリセルへのデータの転送およびメモリセルからＦＦへのデータ転送が必要である。このデータ転送は、ＦＦごとに行う必要があるため、データを復元するＦＦが複数個ある場合には、電源遮断前と電源再投時に、それぞれ複数回のデータ転送を行うことになる。そのため、データを復元するＦＦの個数が大きいと、電源遮断前と電源再投時に行うデータ転送に要する時間が長くなる。
【００２４】
一方、不揮発性のメモリセルとしてＭＴＪ素子を利用することが知られている。ＭＴＪ素子は、方向性を有し、書込み電流を流す方向を変えると抵抗が変化する抵抗変化素子である。書込み時に、書込む値に応じて流す方向を異ならせてＭＴＪ素子に書込み電流を流すと、ＭＴＪ素子の抵抗が異なる。読出し時に、書込み電流より小さいＭＴＪ素子を変化させない読出し電流を流して抵抗の差に応じた電圧差または電流差を検出することにより、ＭＴＪ素子に書込まれた値を検出できる。
【００２５】
ＭＴＪ素子を利用した半導体装置として、複数のワード線と複数のビット線の交差部にＭＴＪ素子を含むメモリセルを配置した不揮発性メモリが各種提案されているが、いずれもＮＡＮＤ型フラッシュメモリなどを置き換えるメモリである。そのため、ＭＴＪ素子を有する不揮発性メモリを使用する場合には、電源遮断前に各ＦＦから取得したＱ出力を記憶するメモリセルとして利用することになり、電源遮断前および電源再投時のデータ転送が必要であり、処理時間が長いという問題がある。
【００２６】
以下に説明する実施形態のデータ保持回路は、データ保持回路に、２個のＭＴＪ素子を含む記憶回路が付属され、電源遮断前の元のデータを復元でき、データ復元を要するデータ保持回路が複数個あっても、並列にデータの保持および設定が可能である。
【００２７】
図３は、第１実施形態のデータ保持回路の回路図である。第１実施形態のデータ保持回路は、図１に示したクロック同期型のフリップフロップ（ＦＦ）の回路である。
【００２８】
図３に示すように、２段に接続されたインバータにより、クロックＣＬＫから正相クロックＣＬＫ０と逆相ＣＬＫＢが生成され、１個のインバータにより、書き込み信号ＭＳから反転書き込み信号ＭＳＢが生成される。第１実施形態のデータ保持回路は、ＣＬＫ０、ＣＬＫＢ、ＭＳ、ＭＳＢおよび読み出し信号ＭＲに応じて動作する。
第１実施形態のデータ保持回路は、入力ゲートと、フリップフロップ部と、出力インバータＩｎｖ３と、を有する。フリップフロップ部は、前段と、トランスファーゲートＴＧ１と、後段と、を有する。入力ゲート、フリップフロップ部の前段とトランスファーゲートＴＧ１および出力インバータＩｎｖ３は、図１のものと同じである。したがって、第１実施形態のデータ保持回路は、フリップフロップ部の後段が図１のＦＦと異なり、他は同じである。以下、異なる部分についてのみ説明する。
【００２９】
第１実施形態のデータ保持回路のフリップフロップ部の後段は、図１のフリップフロップ部の後段のラッチ回路に、記憶回路を付加した構成を有する。
【００３０】
記憶回路は、２個のＭＴＪ素子ＭＴＪ１およびＭＴＪ２と、書き込み回路と、読み出し回路と、を有する。書き込み回路は、電源遮断前に、信号ＭＳおよびＭＳＢに応じて、ＭＴＪ１およびＭＴＪ２を、後段のラッチ回路のノードＵＳ１およびＵＳ２の論理値に応じた状態にする。読み出し回路は、電源再投入時に、後段のラッチ回路のノードＵＳ１およびＵＳ２の論理値を、ＭＴＪ１およびＭＴＪ２の状態に応じた状態に設定する。後段のノードＵＳ１は、Ｉｎｖ２の出力とＧＩｎｖ２の入力を接続したノードで、Ｉｎｖ３に接続される。ノードＵＳ２は、Ｉｎｖ２の入力とＧＩｎｖ２の出力を接続したノードで、ＴＧ１に接続される。
【００３１】
書き込み回路は、ＵＳ１とＭＴＪ１の間に直列に接続されたインバータＩｎｖ１２およびトランスファーゲートＴＧ１１と、ＵＳ２とＭＴＪ２の間に直列に接続されたインバータＩｎｖ１３およびトランスファーゲートＴＧ１２と、を有する。
【００３２】
読み出し回路は、ＵＳ１とＵＳ２間を接続するＰｃｈトランジスタＰ１１と、ＭＲを反転してＰ１１のゲートに印加するインバータＩｎｖ１１と、を有する。読み出し回路は、ＵＳ１とＭＴＪ１の間に接続されたＮｃｈトランジスタＮ１１と、ＵＳ２とＭＴＪ２の間に接続されたＮｃｈトランジスタＮ１２と、ＭＴＪ１とＭＴＪ２の接続ノードと低電位源ＶＳＳ間に接続されたＮｃｈトランジスタＮ１３と、を有する。
【００３３】
図４は、ＭＴＪ素子の概略構造と、その表示記号を示す図である。
図４の（Ａ）に示すように、ＭＴＪ素子は、ＭｇＯ絶縁膜２２と、ＭｇＯ絶縁膜２２の一方の側に設けたＣｏＦｅＢ２２の磁化方向非固定層２１と、ＭｇＯ絶縁膜２２の他方の側に設けたＣｏＦｅＢ２２の磁化方向固定層２３と、を有する。ＭＴＪ素子は、書き込み電流を、磁化方向非固定層２１から磁化方向固定層２３の方向に流した場合と、その逆の方向に流した場合で、抵抗値が異なる。この書き込み電流の方向による抵抗値の違いを利用して論理値（データ）を記憶する。記憶したデータを読み出す場合には、書き込み電流より小さな状態を変化させない読み出し電流を流して、抵抗値の差に応じた電圧差または電流差を検出する。言い換えれば、ＭＴＪ素子は、方向性を有する。ここでは、磁化方向非固定層（ＴＥＬ）２１から磁化方向固定層（ＢＥＬ）２３の方向（逆方向）に流した場合に高抵抗に、磁化方向固定層（ＢＥＬ）２３から磁化方向非固定層（ＴＥＬ）２１の方向（順方向）に流した場合に低抵抗になるとする。
【００３４】
ＭＴＪ素子は、図４の（Ｂ）のような記号で表す。
図３において、ＭＴＪ１とＭＴＪ２は、その接続ノードに同じ磁化層が向き合うように配置する。ここでは、ＭＴＪ１は、Ｎ１１側がＢＥＬで、Ｎ１３側がＴＥＬであるように接続される。ＭＴＪ２は、Ｎ１２側がＢＥＬで、Ｎ１３側がＴＥＬであるように接続される。したがって、ＭＴＪ１は、Ｎ１１側からＮ１３側に至る経路が順方向で、ＭＴＪ２は、Ｎ１２側からＮ１３側に至る経路が順方向である。
【００３５】
図５は、第１実施形態のデータ保持回路で電源を遮断した後、再投入した時の動作を示すタイムチャートである。
【００３６】
電源をオン（ｏｎ）からオフ（ｏｆｆ）に変化させる（電源遮断する）前に、Ｓで示す時点で書き込み信号ＭＳを立ち上げる。ＭＳの立ち上りに応答して、ＭＴＪ１およびＭＴＪ２は、ノードＵＳ１およびＵＳ２の論理値に応じた状態になる。この動作を書き込み処理と称する。書込み処理が終了した後、ＭＳを立ち下げ、電源を遮断する。
【００３７】
電源を遮断すると、Ｑ出力は不定になるが、ＭＴＪ１およびＭＴＪ２は、電源が遮断されても状態を維持するので、書込み処理により設定された状態を維持している。
【００３８】
電源をオン（ｏｎ）からオフ（ｏｆｆ）、さらにオン（ｏｎ）に変化させる（電源再投入する）と、Ｑ出力は不定の状態を維持する。この状態で、Ｒで示す時点で読み出し信号ＭＲを立ち上げる。ＭＲの立ち上りに応答して、（Ｌ）レベルとなる。その後、ＭＲを立ち下げると、ノードＵＳ１およびＵＳ２の論理値は、ＭＴＪ１およびＭＴＪ２に設定された論理値に応じた状態に変化し、Ｑ出力は電源遮断前の論理値に変化する。この動作を読み出し処理と称する。データ保持回路は、電源遮断前の状態に復元され、通常のクロックＣＬＫに応じて動作する状態になる。
【００３９】
図６は、第１実施形態のデータ保持回路の後段のラッチ回路における書き込み処理および読み出し処理を示す図である。図６の（Ａ）は、後段のラッチ回路で、Ｑ出力が低（Ｌ）レベルで、ノードＵＳ１が高（Ｈ）レベル、ノードＵＳ２が低（Ｌ）レベルである時に書き込み処理を行う場合の電流経路を示している。図６の（Ｂ）は、ＭＴＪ１が高抵抗、ＭＴＪ２が低抵抗である時に読み出し処理を行う場合の電流経路を示している。
【００４０】
書き込み処理では、書き込み信号ＭＳを高（Ｈ）レベルにし、読み出し信号ＭＲは低（Ｌ）レベルを維持する。この時、クロックＣＬＫは入力しない、すなわち、ＣＬＫはＬレベルに維持される。従って、図６の（Ａ）に示すように、書き込み処理の間、Ｐ１１、Ｎ１１、Ｎ１２およびＮ１３はオフ状態である。
【００４１】
書き込み信号ＭＳをＨレベルにすると、ＴＧ１１およびＴＧ１２が導通する。図６の（Ａ）では、ノードＵＳ１はＨであるから、Ｉｎｖ１２の出力はＬであり、ノードＵＳ２はＬであるから、Ｉｎｖ１３の出力はＨである。したがって、ＨレベルのＩｎｖ１３の出力から、ＴＧ１２、ＭＴＪ２、ＭＴＪ１、ＴＧ１１、そしてＩｎｖ１２の低レベルの出力に至る電流経路が形成され、この方向に電流が流れる。したがって、ＭＴＪ１では、電流は逆方向に流れ、ＭＴＪ２では、電流は順方向に流れ、ＭＴＪ１を高抵抗に、ＭＴＪ２を低抵抗に設定する書き込みが行われる。
【００４２】
もし、Ｑ出力がＨレベルで、ノードＵＳ１がＬレベル、ノードＵＳ２がＨレベルである時には、電流は、ＨレベルのＩｎｖ１２の出力から、ＴＧ１１、ＭＴＪ１、ＭＴＪ２、ＴＧ１２、そしてＩｎｖ１３の低レベルの出力に至る経路で流れる。これにより、ＭＴＪ１を低抵抗に、ＭＴＪ２を高抵抗に設定する書き込みが行われる。
【００４３】
以上のようにして、後段のラッチ回路、すなわちデータ保持回路の保持するデータに応じて、ＭＴＪ１およびＭＴＪ２の状態を設定する書き込み処理が行われ、ＭＴＪ１およびＭＴＪ２に、ラッチ回路の保持するデータが記憶される。書き込み処理が終了すると、書き込み信号ＭＳがＬレベルに戻される。実際には、ＭＴＪ１およびＭＴＪ２の状態を十分に変化させることができる期間を決めておき、ＭＳをその期間Ｈレベルにする。
【００４４】
読み出し処理では、書き込み信号ＭＳをＬレベルに維持し、読み出し信号ＭＲをＨレベルにする。この時、クロックＣＬＫは入力しない、すなわち、ＣＬＫはＬレベルに維持される。従って、図６の（Ｂ）に示すように、読み出し処理の間、ＴＧ１１およびＴＧ１２はオフ状態である。
【００４５】
読み出し信号ＭＲをＨレベルにすると、図３のＰ１１が導通し、ＵＳ１とＵＳ２が短絡され、Ｎ１１、Ｎ１２およびＮ１３が導通する。これにより、ＵＳ１，ＵＳ２が（Ｌ）レベルとなる。その後ＭＲをＬレベルに戻すことで、Ｐ１１，Ｎ１１，Ｎ１２，Ｎ１３が非導通となり、ＵＳ１，ＵＳ２の一方が（Ｈ）レベルとなる。このときＵＳ１からＮ１１、ＭＴＪ１およびＮ１３に至る経路と、ＵＳ２からＮ１２、ＭＴＪ２およびＮ１３に至る経路で、電流が流れ、上記のように、ＭＴＪ１の抵抗値とＭＴＪ２の抵抗値が異なるので電流差が発生する。この電流差によってラッチ回路は、書き込み処理時の状態に復元される。
【００４６】
図６の（Ｂ）では、ＭＴＪ１が高抵抗、ＭＴＪ２が低抵抗であり、ＭＴＪ１に流れる電流は、ＭＴＪ２に流れる電流に比べて小さい。このため、ＵＳ１が高レベルに、ＵＳ２が低レベルになり、Ｑ出力は低レベルになる。
【００４７】
ＭＴＪ１が低抵抗、ＭＴＪ２が高抵抗である場合には、ＭＴＪ１に流れる電流は、ＭＴＪ２に流れる電流に比べて大きく、ＵＳ１が低レベルに、ＵＳ２が高レベルになり、Ｑ出力は高レベルになる。
【００４８】
以上のようにして、後段のラッチ回路、すなわちデータ保持回路の保持するデータを、ＭＴＪ１およびＭＴＪ２の状態に応じた状態に設定する読み出し処理が行われる。読み出し処理が終了すると、読み出し信号ＭＲがＬレベルに戻される。
【００４９】
図７は、第２実施形態のデータ保持回路の回路図である。
第２実施形態のデータ保持回路は、第１実施形態のデータ保持回路に、書き込み処理時の消費電流を削減する回路を設けたことが第１実施形態と異なり、他は同じである。以下、異なる事項について説明する。
【００５０】
第２実施形態のデータ保持回路は、第１実施形態のデータ保持回路に、書き込み処理時に２個のＭＴＪ素子ＭＴＪ１およびＭＴＪ２の接続ノードＵＳ１０における電位がＨレベルになると、書き込み信号を停止する書き込み制御回路を設けた回路である。
【００５１】
書き込み制御回路は、ＮｃｈトランジスタＮ２１と、ＰｃｈトランジスタＰ２１と、インバータＩｎｖ２１〜Ｉｎｖ２３と、ゲートＮＡＮＤ１と、を有する。Ｎ２１は、一端がノードＵＳ１０に接続され、他端がＩｎｖ２１の入力に接続され、ゲートに書き込み信号ＭＳが印加される。Ｐ２１は、高電源線ＶＤＤと、Ｎ２１とＩｎｖ２１の接続ノードと、の間に接続され、ゲートに書き込み信号ＭＳが印加される。Ｉｎｖ２１は、入力がＮ２１とＰ２１の接続ノードに接続され、出力がＮＡＮＤ１に入力する。ＮＡＮＤ１は、書き込み信号ＭＳとＩｎｖ２１の出力を入力とする。Ｉｎｖ２２は、ＮＡＮＤ１の出力を反転して書き込み制御信号ＭＳＢＢを出力する。Ｉｎｖ２３は、書き込み制御信号ＭＳＢＢを反転して反転書き込み制御信号ＭＳＢを出力する。ＴＧ１１およびＴＧ１２のゲートには、ＭＳＢおよびＭＳＢＢが印加される。
【００５２】
第１実施形態では、ＴＧ１１およびＴＧ１２のゲートには、書き込み信号ＭＳおよびその反転信号ＭＳＢが印加され、ＭＳがＨレベルの間ＴＧ１１およびＴＧ１２が導通し、書き込み電流が流れる。前述のように、ＭＳをＨレベルにする期間は、プロセス、温度、電源電圧などのバラツキを考慮して、ＭＴＪ１およびＭＴＪ２の状態を確実に変化させることができる期間に定められる。この場合、ＭＴＪ１およびＭＴＪ２が、ラッチ回路の保持するデータに応じた状態になった後も書き込み電流を流し続けることになり、無駄に電流を消費することになる。特に、ＭＴＪ１およびＭＴＪ２が、すでにラッチ回路の保持するデータに応じた状態になっていた場合には、ほとんどの書き込み電流は無駄になることになる。
【００５３】
第２実施形態では、ＭＴＪ１およびＭＴＪ２がラッチ回路の保持するデータに応じた状態になって場合には、ＭＴＪ１とＭＴＪ２の接続ノードＵＳ１０の電位が、かならず所定のレベル以上になることに着目した。
図８は、書き込み処理におけるＭＴＪ１とＭＴＪ２の接続ノードの電位レベルを説明する図である。
【００５４】
図８の（Ａ）は、Ｑ出力がＬレベルで、ノードＮ１１がＨレベルで、ノードＮ１２がＬレベルで、ある状態、すなわち“Ｌ”を書き込む場合に、ＭＴＪ１およびＭＴＪ２に流れる電流を示す図である。ノードＮ１１の電位は、Ｑ出力の反転レベルなので／Ｑで表し、ノードＮ１２の電位は、Ｑ出力と同じレベルなのでＱ’で表す。Ｉｎｖ１２のゲートには／Ｑ、すなわちＨレベルが印加されるので、Ｉｎｖ１２のＮｃｈＴｒがオンする。Ｉｎｖ１３のゲートにはＱ’、すなわちＬレベルが印加されるので、Ｉｎｖ１３のＰｃｈＴｒがオンする。ＴＧ１１およびＴＧ１２は導通しているので、Ｉｎｖ１３のＰｃｈＴｒから、ＴＧ１２、ＭＴＪ２、ＭＴＪ１、ＴＧ１１、さらにＩｎｖ１２のＮｃｈＴｒに至る電流経路が形成される。これにより、ＭＴＪ１は、逆方向に電流が流れるので高抵抗に、ＭＴＪ２は、順方向に電流が流れるので低抵抗に設定される。言い換えれば、ＭＴＪ１が高抵抗に、ＭＴＪ２が低抵抗に設定されれば、書き込み処理は終了したといえる。
【００５５】
例えば、書き込み処理を開始する時点で、ＭＴＪ１が低抵抗、ＭＴＪ２が高抵抗であった場合、図８の（Ａ）のように書き込み電流が流れる最初の段階では、ノードＵＳ１０の電位は、抵抗分割により、ＶＤＤとＶＳＳの中間レベルよりも低いレベルとなる。そして、書き込み電流により、ＭＴＪ１が高抵抗に、ＭＴＪ２が低抵抗に変化すると、ノードＵＳ１０の電位は、ＶＤＤとＶＳＳの中間レベルよりも高いレベルとなる。また、書き込み処理を開始する時点で、ＭＴＪ１が高抵抗、ＭＴＪ２が低抵抗であった場合、最初の段階で、ノードＵＳ１０の電位は、ＶＤＤとＶＳＳの中間レベルよりも高いレベルであり、書き込み処理を行ってもそのままである。言い換えれば、前の状態にかかわらず、ノードＵＳ１０の電位がＶＤＤとＶＳＳの中間レベルよりも高いレベルであれば、書き込み処理が終了した状態である。
【００５６】
図８の（Ｂ）は、Ｑ出力がＨレベルで、ノードＮ１１がＬレベルで、ノードＮ１２がＨレベルで、ある状態、すなわち“Ｈ”を書き込む場合に、ＭＴＪ１およびＭＴＪ２に流れる電流を示す図である。Ｉｎｖ１２のＰｃｈＴｒから、ＴＧ１１、ＭＴＪ１、ＭＴＪ１、ＴＧ１２、さらにＩｎｖ１３のＮｃｈＴｒに至る電流経路が形成され、ＭＴＪ１は、順方向に電流が流れるので低抵抗に、ＭＴＪ２は、逆方向に電流が流れるので高抵抗に設定される。この場合も、前の状態にかかわらず、ノードＵＳ１０の電位がＶＤＤとＶＳＳの中間レベルよりも高いレベルであれば、書き込み処理が終了した状態である。
【００５７】
したがって、ノードＵＳ１０の電位が所定レベル（ＶＤＤとＶＳＳの中間レベル）より高ければ、書き込みが終了した状態である。
【００５８】
第２実施形態では、書き込み処理時に、Ｐ２１は非導通となり、Ｎ２１が導通し、ＶＤＤとＵＳ１０の電位の中間レベルがｍｓ＿ｓに出現する。ｍｓ＿ｓの電位は、ＵＳ１０の電位に応じて変化する。ここで、Ｉｎｖ２１の閾値レベルを、ＵＳ１０の電位が所定レベルである時のｍｓ＿ｓの電位に設定する。これにより、ＵＳ１０の電位が所定レベルより高くなると、Ｉｎｖ２１の出力がＬレベルに変化し、ＭＳＢＢはＬレベルに、ＭＳＢはＨレベルになる。これは書き込み信号ＭＳがＬレベルになったことに相当し、ＭＳＢおよびＭＳＢＢが印加されるＴＧ１１およびＴＧ１２は遮断状態になり、書き込み処理が終了した状態になる。このように、第２実施形態では、ノードＵＳ１０の電位が、ＭＴＪ１およびＭＴＪ２がラッチ回路に保持されたデータに対応する状態になると、書き込み信号が停止し、書き込み処理が終了する。
【００５９】
図９は、第２実施形態における書き込み処理時の、書き込み信号ＭＳ、ノードＵＳ１０の電位、および書き込み制御信号ＭＳＢＢの変化を示すタイムチャートである。左側は、ＭＴＪ１およびＭＴＪ２の状態（値）が、データ保持回路（ラッチ回路）の保持している値と異なる場合を、すなわちＭＴＪ１およびＭＴＪ２の状態を変化させる場合を、右側はＭＴＪ１およびＭＴＪ２の状態を変化させない場合である。
【００６０】
書き込み信号ＭＳは、所定の期間Ｈレベルになる信号である。ＭＴＪ１およびＭＴＪ２の状態を変化させる場合に、書き込み信号ＭＳがＨレベルである期間書き込み電流を流すと、ＵＳ１０の電位は、左側に示すように、中間レベルから一旦低側に振れた後、上昇して高側のレベルで安定する。ＵＳ１０の電位が高側のレベルになったということは、ＭＴＪ１およびＭＴＪ２の状態の書き込み処理による変化が完了したことを意味するが、書き込み信号ＭＳがＨレベルの間は書き込み電流が流れ、この電流は無駄な電流である。
【００６１】
ＭＴＪ１およびＭＴＪ２の状態を変化させない場合、ＵＳ１０の電位は、右側に示すように、中間レベルから一旦すぐに上昇して高側のレベルで安定する。この場合は、書き込み信号ＭＳがＨレベルの間ほとんど無駄な電流を流すことになる。
【００６２】
第２実施形態では、図９に示すように、書き込み制御信号ＭＳＢＢは、ＵＳ１０の電位が所定レベルを超えるとＬレベルに戻るため、書き込み処理は終了し、書き込み電流は流れない。したがって、図９において矢印で示す期間、書き込み電流を流さないので、書き込み処理に要する電力を削減できる。
【００６３】
以上、実施形態を説明したが、ここに記載したすべての例や条件は、発明および技術に適用する発明の概念の理解を助ける目的で記載されたものである。特に記載された例や条件は発明の範囲を制限することを意図するものではなく、明細書のそのような例の構成は発明の利点および欠点を示すものではない。発明の実施形態を詳細に記載したが、各種の変更、置き換え、変形が発明の精神および範囲を逸脱することなく行えることが理解されるべきである。
【符号の説明】
【００６４】
１１    フリップフロップの前段
１２    フリップフロップの後段
２１    磁化方向非固定層
２２    トンネル絶縁膜
２３    磁化方向固定層
Ｉｎｖ１−Ｉｎｖ３、Ｉｎｖ１１−Ｉｎｖ１３    インバータ
ＧＩｎｖ１，Ｇｉｎｖ２    クロック同期インバータ
Ｎ１１−Ｎ１３    Ｎｃｈトランジスタ
Ｐ１１    Ｐｃｈトランジスタ
ＴＧ１，ＴＧ１１，ＴＧ１２    トランスファーゲート
ＭＴＪ１，ＭＴＪ２    ＭＴＪ素子
【図１】
0006372203.tif 000002
【図２】
0006372203.tif 000003
【図３】
0006372203.tif 000004
【図４】
0006372203.tif 000005
【図５】
0006372203.tif 000006
【図６】
0006372203.tif 000007
【図７】
0006372203.tif 000008
【図８】
0006372203.tif 000009
【図９】
0006372203.tif 000010