(58)【調査した分野】(Int.Cl.,DB名)
前記第1および第2の抵抗変化型素子は、磁気トンネル接合素子または電界誘起巨大抵抗変化の発生する抵抗素子であることを特徴とする請求項1に記載の不揮発性フリップフロップ。
前記スイッチが所定の閾値電圧以上の電圧印加によりONとなる双方向の閾素子であり、前記揮発性フリップフロップ部の電源電圧を高くすることにより前記閾素子をONさせることを特徴とする請求項1または2に記載の不揮発性フリップフロップ。
前記第1および第2のインバータが互いに同じサイズの電界効果トランジスタにより構成されたことを特徴とする請求項1〜8のいずれか1の請求項に記載の不揮発性フリップフロップ。
【発明を実施するための形態】
【0022】
以下、図面を参照し、この発明の実施形態について説明する。なお、以下の実施形態において、トランジスタはMOSFET(Metal Oxide Semiconductor Field Effect Transistor;金属−酸化膜−半導体構造の電界効果トランジスタ)を指す。
【0023】
<第1実施形態>
図1は、この発明の第1実施形態である不揮発性フリップフロップ200の構成を示す回路図である。また、
図2は、通常のフリップフロップの構成例を示す回路図である。本実施形態による不揮発性フリップフロップの特徴の理解を容易にするため、まず、
図2を参照し、通常のフリップフロップについて説明する。
【0024】
図2に示すフリップフロップは、マスターラッチ部100Mと、スレーブラッチ部100Sと、クロックドライバ100Cとを有する。ここで、クロックドライバ100Cは、2段のインバータ107および108からなり、入力されるクロックCLKと同じ論理値の内部クロックCKと、クロックCLKを反転した内部クロック/CKを出力する。マスターラッチ部100Mは、クロックトインバータ101および103と、インバータ102により構成されている。スレーブラッチ部100Sは、クロックトインバータ104および106と、インバータ105、109および110により構成されている。
【0025】
このような構成において、クロックCLKがHレベルからLレベルになると、内部クロックCKがLレベル、内部クロック/CKがHレベルとなる。このため、クロックトインバータ101および106は入力信号を反転して出力する出力イネーブル状態となり、クロックトインバータ103および104は出力インピーダンスがハイインピーダンス(出力端子がフローティング)である出力ディセーブル状態となる。この結果、マスターラッチ部100Mに入力データDが取り込まれ、スレーブラッチ部100Sでは、クロックCLKがLレベルになる前に取り込んだデータが保持される。次にクロックCLKがLレベルからHレベルになると、内部クロックCKがHレベル、内部クロック/CKがLレベルとなる。このため、クロックトインバータ103および104は出力イネーブル状態、クロックトインバータ101および106は出力ディセーブル状態となる。この結果、マスターラッチ部100Mでは、クロックCLKがHレベルになる前に取り込んだデータが保持され、スレーブラッチ部100Sではマスターラッチ部100Mのインバータ102の出力データが取り込まれ、この取り込んだデータと同じ論理値のデータQと、反対の論理値のデータ/Qがインバータ110および109から各々出力される。
【0026】
本実施形態による不揮発性フリップフロップ200は、
図1に示すように、揮発性フリップフロップ部1_1と、不揮発性記憶部2_1と、制御ロジック部3_1とを有する。ここで、揮発性フリップフロップ部1_1は、マスターラッチ部1M_1と、スレーブラッチ部1S_1とにより構成されている。
【0027】
マスターラッチ部1M_1は、
図2のフリップフロップのマスターラッチ部100Mと同様な構成を有しており、入力データDが入力されるクロックトインバータ201と、このクロックトインバータ201の出力信号を反転して出力するインバータ202と、出力イネーブル状態においてインバータ202の出力信号を反転してクロックトインバータ201の出力ノードとインバータ202の入力ノードとの接続点に出力するクロックトインバータ203とにより構成されている。
【0028】
スレーブラッチ部1S_1の構成は、
図2のフリップフロップのスレーブラッチ部100Sの構成と異なっている。このスレーブラッチ部1S_1は、クロックトインバータ204、205および206と、NANDゲート207と、インバータ208とを有している。
【0029】
クロックトインバータ204および206には、2相の内部クロックCKSおよび/CKSが与えられる。また、クロックトインバータ205は、常に出力イネーブル状態となっており、クロックトインバータ204および206の各出力ノードの共通接続点の信号を反転してデータDSとして出力する。ここで、内部クロックCKSがHレベル、内部クロック/CKSがLレベルの場合、クロックトインバータ204が出力イネーブル状態、クロックトインバータ206は出力ディセーブル状態となる。この状態では、マスターラッチ部100Mのインバータ202から出力されるデータDMがクロックトインバータ204により反転されてデータDSnとなり、このデータDSnがクロックトインバータ205により反転されてデータDSとなる。
【0030】
また、内部クロックCKSがLレベル、内部クロック/CKSがHレベルの場合、クロックトインバータ204が出力ディセーブル状態、クロックトインバータ206が出力イネーブル状態となる。この状態では、クロックトインバータ205および206は、マスターラッチ部1M_1から切り離されてラッチを構成し、このラッチはマスターラッチ部1M_1から切り離される前に書き込まれたデータを保持する。
【0031】
NANDゲート207は、信号SREBがHレベルである場合に、クロックトインバータ205の出力データDSを反転し、不揮発性フリップフロップ200の出力信号/Qとして出力する。また、インバータ208は、この信号/Qを反転して、不揮発性フリップフロップ200の出力信号Qとして出力する。一方、信号SREBがLレベルである場合、クロックトインバータ205の出力データDSと無関係に、NANDゲート207は、不揮発性フリップフロップ200の出力信号/QをHレベルとし、インバータ208は、不揮発性フリップフロップ200の出力信号QをLレベルとする。なお、内部クロックCKSおよび/CKS、信号SRBは、制御ロジック部3_1により生成される信号である。
以上が本実施形態におけるスレーブラッチ部1S_1の構成の詳細である。
【0032】
図2におけるスレーブラッチ部100Sでは、マスターラッチ部100Mから取り込んだデータを保持するためのラッチがインバータ105とクロックトインバータ106とにより構成されていた。これに対し、本実施形態におけるスレーブラッチ部1S_1では、マスターラッチ部1M_1から取り込んだデータDMを保持するためのラッチがクロックトインバータ205および206により構成されている。ここで、クロックトインバータ205および206は、出力インピーダンスや出力電流特性が互いに同じである。この点が
図2におけるスレーブラッチ部100Sと本実施形態におけるスレーブラッチ部1S_1との相違点である。
【0033】
次に不揮発性記憶部2_1について説明する。不揮発性記憶部2_1は、クロックトインバータ205および206の各出力ノードに各々の一端が接続された第1および第2の抵抗変化型素子210および209と、この抵抗変化型素子210および209の各々の他端SLAおよびSLB間に介挿されたNチャネルトランジスタ211とを有する。そして、端子SLAおよびSLBと接地GNDとの間にキャパシタC2およびC1が各々介挿されている。ここで、Nチャネルトランジスタ211は、ゲートに信号STEが与えられ、この信号STEがHレベルである場合にON、Lレベルである場合にOFFとなるスイッチである。そして、Nチャネルトランジスタ211がONとされると、インバータ205の出力ノードからインバータ206の出力ノードに向かう電流またはインバータ206の出力ノードからインバータ205の出力ノードに向かう電流が抵抗変化型素子210および209に流れる。前者の電流が流れた場合、第1の抵抗変化型素子210の抵抗値は第1の方向に、第2の抵抗変化型素子209の抵抗値は第1の方向と逆方向の第2の方向に変化する。これに対し、後者の電流が流れた場合、第1の抵抗変化型素子210の抵抗値は第2の方向に、第2の抵抗変化型素子209の抵抗値は第1の方向に変化する。
【0034】
図示の例において、第1および第2の抵抗変化型素子210および209は、MTJ素子である。そして、第1の抵抗変化型素子210のピン層がクロックトインバータ105の出力ノードに接続され、第2の抵抗変化型素子209のピン層がクロックトインバータ106の出力ノードに接続され、第1および第2の抵抗変化型素子210および209の各フリー層間にNチャネルトランジスタ211が介挿されている。
【0035】
抵抗変化型素子224および223として、このようなMTJ素子の他に、ReRAMのメモリセルに用いられるCER(Colossal Electro−Resistance;電界誘起巨大抵抗変化)抵抗素子を利用してもよい。
【0036】
次に制御ロジック部3_1について説明する。不揮発性フリップフロップ200には、入力データD、クロックCLK、ストアイネーブル信号STEおよびリコール要求信号REQが与えられる。NORゲート214は、ストアイネーブル信号STEおよびリコール要求信号REQの両方が非アクティブレベル(Lレベル)である場合に信号SREBをHレベルとし、ストアイネーブル信号STEまたはリコール要求信号REQの少なくとも一方がアクティブレベル(Hレベル)である場合に信号SREBをLレベルとする。NANDゲート212およびインバータ213は、クロックCLKおよび信号SREBに基づいて内部クロックCKおよび/CKを発生する回路を構成している。この回路は、信号SREBがHレベルである場合に、クロックCLKと同一論理値の内部クロックCKSとクロックCLKを反転した内部クロック/CKSを発生し、信号SREBがLレベルである場合に、内部クロックCKSをHレベルに、内部クロック/CKSをLレベルに固定する。
【0037】
内部クロックCKSがHレベル、内部クロック/CKSがLレベルである場合、マスターラッチ部1M_1のクロックトインバータ201は出力ディセーブル状態、クロックトインバータ203は出力イネーブル状態となり、スレーブラッチ部1S_1のクロックトインバータ204は出力イネーブル状態、クロックトインバータ206は出力ディセーブル状態となる。このため、マスターラッチ部1M_1は入力データを取り込むことなくデータを保持する前データ保持状態、スレーブラッチ部1S_1は入力データを取り込むスルー状態となる。一方、内部クロックCKがLレベル、内部クロック/CKがHレベルである場合、マスターラッチ部1M_1のクロックトインバータ201は出力イネーブル状態、クロックトインバータ203は出力ディセーブル状態となり、スレーブラッチ部1S_1のクロックトインバータ204は出力ディセーブル状態、クロックトインバータ206は出力イネーブル状態となる。このため、マスターラッチ部1M_1はスルー状態、スレーブラッチ部1S_1は前データ保持状態となる。
【0038】
図3は本実施形態による不揮発性フリップフロップ200の動作条件を示す図である。また、
図4および
図5は本実施形態においてスレーブラッチ部1S_1の記憶データを不揮発性記憶部2_1に書き込むストア動作を示す図である。また、
図6は通常動作およびストア動作における各部の波形を示すタイムチャートである。また、
図7は本実施形態において不揮発性記憶部2_1の記憶データを読み出してスレーブラッチ部1S_1に書き込むリコール動作が行われる場合の各部の波形を示すタイムチャートである。以下、これらの図を参照し、電源電圧VDDが1.2Vである場合を例に本実施形態の動作を説明する。
【0039】
不揮発性フリップフロップ200を通常のフリップフロップとして動作させる場合、
図3に示すように、ストアイネーブルSTEおよびリコール要求信号REQをLレベル=0Vとする。この場合、ストアイネーブルSTEがLレベルであることから、不揮発性記憶部2_1のNチャネルトランジスタ211がOFFとなり、不揮発性記憶部2_1がスレーブラッチ部1S_1から切り離される。また、クロックCLKと同一論理の内部クロックCKSと、クロックCLKを反転させた内部クロック/CKSが発生する。この結果、不揮発性フリップフロップ200は通常のフリップフロップとして動作する。
【0040】
さらに詳述すると、クロックCLKがLレベルである期間は、マスターラッチ部1M_1に入力データDが書き込まれ、マスターラッチ部1M_1の出力データDMが入力データDに切り換わる。また、スレーブラッチ部1S_1は、クロックCLKがLレベルとなる前に取り込んだ前データを保持する。クロックCLKがHレベルである期間は、マスターラッチ部1M_1ではクロックCLKがHレベルになる前に取り込んだデータが保持される。また、スレーブラッチ部1S_1では、マスターラッチ部1M_1の出力データDMにより出力データQおよび/Qが書き換えられる。
【0041】
スレーブラッチ部1S_1の記憶データDSを不揮発性記憶部2_1に書き込むストアを行う場合には、ストアイネーブル信号STEがHレベル=1.2V(“1”)とされる。この結果、不揮発性記憶部2_1のNチャネルトランジスタ211がONとなる。また、信号SREBがLレベルとなって内部クロックCKSがLレベル、内部クロック/CKSがHレベルとなる。この結果、クロックトインバータ201は出力イネーブル状態、クロックトインバータ203は出力ディセーブル状態となり、マスターラッチ部1M_1はスルー状態となる。また、クロックトインバータ204は出力ディセーブル状態、クロックトインバータ206は出力イネーブル状態となり、スレーブラッチ部1S_1は前データ保持状態となる。
【0042】
そして、不揮発性記憶部2_1では、スレーブラッチ部1S_1の記憶データを記憶するストア動作が行われる。ここで、スレーブラッチ部1S_1がデータ“0”を記憶しており、クロックトインバータ205の出力データDSがLレベル=0V(“0”)、クロックトインバータ206の出力データDSnがHレベル=1.2V(“1”)である場合、
図4に示すように、クロックトインバータ206の出力ノード(1.2V)→抵抗変化型素子209→Nチャネルトランジスタ211→抵抗変化型素子210→Nチャネルトランジスタ205の出力ノード(0V)という経路を通って電流が流れる。この場合、抵抗変化型素子209は、ピン層からフリー層に向かう電流が流れるので抵抗値が上昇し、抵抗変化型素子210は、フリー層からピン層に向かう電流が流れるので抵抗値が低下する。
【0043】
一方、スレーブラッチ部1S_1がデータ“1”を記憶しており、クロックトインバータ205の出力データDSがHレベル=1.2V(“1”)、クロックトインバータ206の出力データDSnがLレベル=0V(“0”)である場合、
図5に示すように、クロックトインバータ205の出力ノード(1.2V)→抵抗変化型素子210→Nチャネルトランジスタ211→抵抗変化型素子209→Nチャネルトランジスタ206の出力ノード(0V)という経路を通って電流が流れる。この場合、抵抗変化型素子210は、ピン層からフリー層に向かう電流が流れるので抵抗値が上昇し、抵抗変化型素子209は、フリー層からピン層に向かう電流が流れるので抵抗値が低下する。
【0044】
このようにしてスレーブラッチ部1S_1の記憶データが不揮発性記憶部2_1に書き込まれる。この場合、抵抗変化型素子210および209の抵抗値の大小関係が不揮発性記憶部2_1の記憶データを表す。すなわち、抵抗変化型素子209の抵抗値が抵抗変化型素子210の抵抗値よりも大きければ不揮発性記憶部2_1の記憶データは“0”であり、抵抗変化型素子210の抵抗値が抵抗変化型素子209の抵抗値よりも大きければ不揮発性記憶部2_1の記憶データは“1”である。
【0045】
特許文献1に記載のMTJ素子は、0.6V程度の電圧印加により49μAの電流を流すことができ、十分な抵抗値の変化が得られる。従って、このMTJ素子を抵抗変化型素子210および209として用いることにより安定したストア動作を実現することができる。
【0046】
図6に示す動作例では、通常のフリップフロップとしての動作が行われた後、スレーブラッチ部1S_1から不揮発性記憶部2_1にデータ“0”を書き込む“0”ストアが行われ、その後、再び通常のフリップフロップとしての動作が行われた後、スレーブラッチ部1S_1から不揮発性記憶部2_1にデータ“1”を書き込む“1”ストアが行われている。
【0047】
なお、ストア動作においては、クロックトインバータ205および206により抵抗変化型素子210および209に電流を流すので、クロックトインバータ205の出力電圧にIRドロップが生じる。ここで、インバータ205の出力電圧(データDS)はNANDゲート207に入力されるので、何ら策を講じないと、この出力電圧に現われるIRドロップの影響によりNANDゲート207にリーク電流が流れる。しかしながら、本実施形態では、ストア動作の際に、信号SREBをLレベルとすることによりNANDゲート207における1つのNチャネルトランジスタをOFFとしている。従って、そのようなリーク電流の発生が防止される。
【0048】
ストア動作が完了した後は、不揮発性フリップフロップ200に対する電源電圧VDDを遮断してよい。この電源電圧VDDが遮断された状態においても、不揮発性記憶部2_1では、抵抗変化型素子210および209がストア動作により設定された抵抗値を維持する。
【0049】
次にリコール動作について説明する。不揮発性フリップフロップ200にリコール動作を行わせる場合、
図7に示すように、ストアイネーブル信号STEをLレベル(“0”)、リコール要求信号REQをHレベル(“1”)とした状態で、不揮発性フリップフロップ200の電源電圧VDDが立ち上げられる。
【0050】
この場合、リコール要求信号REQがHレベル(“0”)であることから、信号SREBがLレベルとなり、内部クロックCKSがLレベル、内部クロック/CKSがHレベルとなる。このため、電源電圧VDDが立ち上がるとき、マスターラッチ部1M_1ではクロックトインバータ201は出力イネーブル状態、クロックトインバータ203は出力ディセーブル状態となり(すなわち、スルー状態)、スレーブラッチ部1S_1ではクロックトインバータ204が出力ディセーブル状態、クロックトインバータ206が出力イネーブル状態となる(すなわち、前データ保持状態)。また、ストアイネーブル信号STEがLレベル(“0”)であることからNチャネルトランジスタ211がOFFとなる。
【0051】
そして、本実施形態では、クロックトインバータ205の出力ノードと接地GNDとの間に抵抗変化型素子210およびキャパシタC2が直列接続され、クロックトインバータ206の出力ノードと接地GNDとの間に抵抗変化型素子209およびキャパシタC1が直列接続されている。従って、電源電圧VDDが0Vから1.2Vに上昇すると、クロックトインバータ205の出力ノードから抵抗変化型素子210を介してキャパシタC2に充電電流が供給され、クロックトインバータ206の出力ノードから抵抗変化型素子209を介してキャパシタC1に充電電流が供給される。ここで、不揮発性記憶部2_1がデータ“0”を記憶している場合、抵抗変化型素子209の抵抗値が抵抗変化型素子210の抵抗値よりも大きい。この場合、抵抗変化型素子209を介してキャパシタC1に供給される充電電流よりもクロックトインバータ205の出力ノードから抵抗変化型素子210を介してキャパシタC2に供給される充電電流の方が大きくなるので、クロックトインバータ206の出力ノードの電圧(データDSn)の方がクロックトインバータ205の出力ノードの電圧(データDS)より高くなる。この結果、スレーブラッチ部1S_1は、クロックトインバータ206の出力ノードの電圧(データDSn)がHレベル、クロックトインバータ205の出力ノードの電圧(データDS)がLレベルとなり、この状態を保持する。このようにしてデータ“0”が不揮発性記憶部2_1から読み出されてスレーブラッチ部1S_1に記憶され、データ“0”のリコールが完了する。
【0052】
一方、不揮発性記憶部2_1がデータ“1”を記憶している場合、抵抗変化型素子210の抵抗値が抵抗変化型素子209の抵抗値よりも大きい。この状態で、電源電圧VDDが0Vから1.2Vに上昇すると、クロックトインバータ205の出力ノードから抵抗変化型素子210を介してキャパシタC2に供給される充電電流よりもクロックトインバータ206の出力ノードから抵抗変化型素子209を介してキャパシタC1に供給される充電電流の方が大きくなるので、クロックトインバータ205の出力ノードの電圧(データDS)の方がクロックトインバータ206の出力ノードの電圧(データDSn)より高くなる。この結果、スレーブラッチ部1S_1は、クロックトインバータ205の出力ノードの電圧(データDS)がHレベル、クロックトインバータ206の出力ノードの電圧(データDSn)がLレベルとなり、この状態を保持する。このようにしてデータ“1”が不揮発性記憶部2_1から読み出されてスレーブラッチ部1S_1に記憶され、データ“1”のリコールが完了する。
【0053】
なお、このリコール動作は、抵抗変化型素子を介してキャパシタを充電する微小な電流(過渡電流)の差を利用しているので、不揮発性フリップフロップ200に対する電源電圧VDDの立ち上げ方に注意を要する。すなわち、電源電圧VDDを過度にゆっくり立ち上げると、データDSおよびDSnの電位差が生じにくくなる場合があるので、抵抗素子とキャパシタからなる時定数回路等を利用して適切な立ち上がり時間で電源電圧VDDを立ち上げることが好ましい。ここで、時定数を大きくするにはキャパシタの容量を大きくすればよいが、レイアウト面積の制約もあるので、電源電圧VDDの立ち上がり時間は例えば10ns〜1μsにするのが好ましい。
【0054】
リコールが終了した後は、リコール要求信号REQがLレベルとされる。これにより通常のフリップフロップとしての動作が開始される。
【0055】
本実施形態による不揮発性フリップフロップ200は、下記の39個のトランジスタと2個の抵抗変化型素子と2個のキャパシタにより実現可能である。
<不揮発性フリップフロップ200のトランジスタ数>
インバータ 3個 トランジスタ数 6個
クロックトインバータ 5個 トランジスタ数 20個
2入力NANDゲート 2個 トランジスタ数 8個
2入力NORゲート 1個 トランジスタ数 4個
Nチャネルトランジスタ 1個
合計 39個
【0056】
一方、従来のフリップフロップ(
図2)は、28個のトランジスタにより実現される。従って、不揮発性フリップフロップ200の所要面積は、従来のフリップフロップの所要面積の約2倍となる。このように本実施形態によれば、所要面積を過度に増大させることなく、不揮発性フリップフロップ200を実現することができる。
【0057】
<第2実施形態>
図8はこの発明の第2実施形態である不揮発性フリップフロップ200Aの構成を示す回路図である。この不揮発性フリップフロップ200Aは、マスターラッチ部1M_2およびスレーブラッチ部1S_2からなる揮発性フリップフロップ部と、不揮発性記憶部2_2と、制御ロジック部3_2とを有する。マスターラッチ部1M_2、スレーブラッチ部1S_2および制御ロジック部3_2の構成は、上記第1実施形態のマスターラッチ部1M_1、スレーブラッチ部1S_1および制御ロジック部3_1と同様である。上記第1実施形態における不揮発性記憶部2_1では、キャパシタC1およびC2が抵抗変化型素子209および210の各フリー層と接地GNDとの間に各々介挿されていた。これに対し、本実施形態における不揮発性記憶部2_2では、キャパシタC1およびC2が抵抗変化型素子209および210の各フリー層と高電位電源VDDとの間に各々介挿されている。本実施形態のそれ以外の構成は上記第1実施形態と同様である。
本実施形態においても上記第1実施形態と同様な効果が得られる。
【0058】
<第3実施形態>
図9はこの発明の第3実施形態である不揮発性フリップフロップ200Cの構成を示す回路図である。この不揮発性フリップフロップ200Cは、揮発性フリップフロップ部1_3と、不揮発性記憶部2_3と、制御ロジック部3_3とにより構成されている。また、揮発性フリップフロップ部1_3は、マスターラッチ部1M_3とスレーブラッチ部1S_3とにより構成されている。
【0059】
不揮発性記憶部2_3および制御ロジック部3_3の構成は、上記第1実施形態(
図1)の不揮発性記憶部2_1および制御ロジック部3_1の構成と同様である。しかし、揮発性フリップフロップ部1_3では、上記第1実施形態の揮発性フリップフロップ部1_1を構成する各要素201〜208が、要素201C〜208Cに置き換えられている。これらの揮発性フリップフロップ部1_3の各要素201C〜208Cは、他の回路とは電源が分離されており、制御ロジック部3_3等に供給される電源電圧VDDとは独立に制御可能な電源電圧VDDCが供給される。
【0060】
図10は本実施形態の動作を示す図である。
図10に示すように、電源電圧VDDCとして、システム全体の電源電圧VDDが揮発性フリップフロップ部1_3に供給されている状況では、上記第1実施形態と同様な通常のフリップフロップとしての動作およびストア動作が可能である。また、揮発性フリップフロップ部1_3に対する電源電圧VDDCをシステム全体の電源電圧VDDまで上昇させることにより、上記第1実施形態と同様なリコール動作を不揮発性フリップフロップ200Cに行わせることができる。それに加えて、本実施形態では、揮発性フリップフロップ部1_3に対する電源電圧VDDCを単独で遮断することができる。
以上が本実施形態の詳細である。
【0061】
本実施形態においても上記第1実施形態と同様な効果が得られる。それに加えて、本実施形態では、システム全体の電源電圧とは独立に、揮発性フリップフロップ部1_3に対する電源電圧VDDCを単独で遮断し、あるいは立ち上げることが可能である。従って、不揮発性フリップフロップ200Cを搭載したシステムにおいて多彩な動作を実現することができる。また、本実施形態では、リコール動作時に、まず、制御ロジック部3_3等、揮発性フリップフロップ部1_3以外の回路に対する電源電圧VDDを立ち上げ、その後、揮発性フリップフロップ部1_3に対する電源電圧VDDCを立ち上げることにより、リコール動作の安定性を高めることが可能である。
【0062】
なお、本実施形態には次のような変形例が考えられる。すなわち、複数の不揮発性フリップフロップに対して独立に電源供給系統を設けて、所望の不揮発性フリップフロップを選択し、この選択した不揮発性フリップフロップに対する電源電圧VDDCのみを遮断して、リーク電流を低減するのである。あるいは複数の不揮発性フリップフロップを1または複数の不揮発性フリップフロップのグループに分け、グループ単位で電源電圧VDCの供給を遮断するのである。この態様によればきめ細かな省電力制御が可能となる。
【0063】
<第4実施形態>
図11はこの発明の第4実施形態である不揮発性フリップフロップ200Dの構成を示す回路図である。この不揮発性フリップフロップ200Dは、マスターラッチ部1M_4およびスレーブラッチ部1S_4からなる揮発性フリップフロップ部と、不揮発性記憶部2_4と、制御ロジック部3_4とを有する。マスターラッチ部1M_4、スレーブラッチ部1S_4および制御ロジック部3_4の構成は、上記第3実施形態のマスターラッチ部1M_3、スレーブラッチ部1S_3および制御ロジック部3_3と同様である。上記第3実施形態における不揮発性記憶部2_3では、キャパシタC1およびC2が抵抗変化型素子209および210の各フリー層と接地GNDとの間に各々介挿されていた。これに対し、本実施形態における不揮発性記憶部2_4では、キャパシタC1およびC2が抵抗変化型素子209および210の各フリー層と高電位電源VDDとの間に各々介挿されている。本実施形態のそれ以外の構成は上記第3実施形態と同様である。
本実施形態においても上記第3実施形態と同様な効果が得られる。
【0064】
<第5実施形態>
図12はこの発明の第5実施形態である不揮発性ラッチ600の構成を示す回路図である。この不揮発性ラッチ600は、揮発性ラッチ部1L_5と、不揮発性記憶部2_5と、制御ロジック部3_5とにより構成されている。
【0065】
揮発性ラッチ部1L_5は、クロックトインバータ601、602および603と、NANDゲート604およびインバータ605とにより構成されている。この揮発性ラッチ部1L_5の構成は、上記第1実施形態におけるスレーブラッチ部1S_1と同様である。
【0066】
不揮発性記憶部2_5は、抵抗変化型素子607および606と、Nチャネルトランジスタ608と、キャパシタC1およびC2とにより構成されている。この不揮発性記憶部2_5の構成は、上記第1実施形態(
図1)の不揮発性記憶部2_1と同様である。
【0067】
制御ロジック部3_5は、NORゲート611と、NANDゲート609と、インバータ610とにより構成されている。この制御ロジック部3_5の構成は上記第1実施形態の制御ロジック部3_1と同様である。
【0068】
以上のように、本実施形態による不揮発性ラッチ650は、上記第1実施形態による不揮発性フリップフロップ200からマスターラッチ部1M_1を取り除いた構成となっている。
【0069】
本実施形態によれば、通常のラッチとしての動作の他、上記第1実施形態と同様、ストア動作、リコール動作を安定して行わせることができる。
【0070】
<第6実施形態>
図13はこの発明の第6実施形態である不揮発性ラッチ600Aの構成を示す回路図である。この不揮発性ラッチ600Aは、揮発性ラッチ部1L_6と、不揮発性記憶部2_6と、制御ロジック部3_6とを有する。揮発性ラッチ部1L_6および制御ロジック部3_6の構成は、上記第5実施形態の揮発性ラッチ部1L_5および制御ロジック部3_5と同様である。上記第5実施形態における不揮発性記憶部2_5では、キャパシタC1およびC2が抵抗変化型素子209および210の各フリー層と接地GNDとの間に各々介挿されていた。これに対し、本実施形態における不揮発性記憶部2_6では、キャパシタC1およびC2が抵抗変化型素子209および210の各フリー層と高電位電源VDDとの間に各々介挿されている。本実施形態のそれ以外の構成は上記第5実施形態と同様である。
本実施形態においても上記第5実施形態と同様な効果が得られる。
【0071】
<第7実施形態>
図14はこの発明の第7実施形態である不揮発性ラッチ600Cの構成を示す回路図である。この不揮発性ラッチ600Cは、揮発性ラッチ部1L_7と、不揮発性記憶部2_7と、制御ロジック部3_7とにより構成されている。
【0072】
不揮発性記憶部2_7および制御ロジック部3_7の構成は、上記第5実施形態(
図12)の不揮発性記憶部2_5および制御ロジック部3_5の構成と同様である。しかし、揮発性ラッチ部1L_7では、上記第5実施形態の揮発性ラッチ部1L_5を構成する各要素601〜605が、要素601C〜605Cに置き換えられている。これらの揮発性ラッチ部1L_7の各要素601C〜605Cは、他の回路とは電源が分離されており、制御ロジック部3_7等に供給される電源電圧VDDとは独立に制御可能な電源電圧VDDCが供給される。
【0073】
従って、電源電圧VDDCとして、システム全体の電源電圧VDDが揮発性ラッチ部1L_7に供給されている状況では、通常のラッチとしての動作およびストア動作が可能である。また、揮発性ラッチ部1L_7に対する電源電圧VDDCをシステム全体の電源電圧VDDまで上昇させることにより、リコール動作を不揮発性ラッチ600Cに行わせることができる。それに加えて、本実施形態では、揮発性ラッチ部1L_7に対する電源電圧VDDCを単独で遮断することができる。
【0074】
<第8実施形態>
図15はこの発明の第8実施形態である不揮発性ラッチ600Dの構成を示す回路図である。この不揮発性ラッチ600Dは、揮発性ラッチ部1L_8と、不揮発性記憶部2_8と、制御ロジック部3_8とを有する。揮発性ラッチ部1L_8および制御ロジック部3_8の構成は、上記第7実施形態の揮発性ラッチ部1L_7および制御ロジック部3_7と同様である。上記第7実施形態における不揮発性記憶部2_7では、キャパシタC1およびC2が抵抗変化型素子209および210の各フリー層と接地GNDとの間に各々介挿されていた。これに対し、本実施形態における不揮発性記憶部2_8では、キャパシタC1およびC2が抵抗変化型素子209および210の各フリー層と高電位電源VDDとの間に各々介挿されている。本実施形態のそれ以外の構成は上記第7実施形態と同様である。
本実施形態においても上記第7実施形態と同様な効果が得られる。
【0075】
<第9実施形態>
図16はこの発明の第9実施形態である不揮発性シフトレジスタの構成を示すブロック図である。この例では、上記第1実施形態による不揮発性フリップフロップ200を4個使用し、入力データDをクロックCLKに同期して順次シフトする4ビットのシフトレジスタを構成している。
【0076】
ストアイネーブル信号STEおよびリコール要求信号REQは、4個の不揮発性フリップフロップ200に並列に供給される。従って、4個の不揮発性フリップフロップ200に同時にストア動作およびリコール動作を行わせることが可能である。
なお、シフトレジスタを構成する不揮発性フリップフロップとして、上記第1実施形態のものの他、上記第2〜第4実施形態のものを採用してもよい。
【0077】
<第10実施形態>
図17はこの発明の第10実施形態である不揮発性レジスタの構成を示すブロック図である。この例では、上記第1実施形態による不揮発性フリップフロップ200を4個使用し、4ビットのレジスタを構成している。
【0078】
ストアイネーブル信号STEおよびリコール要求信号REQは、4個の不揮発性フリップフロップ200に並列に供給される。従って、4個の不揮発性フリップフロップ200に同時にストア動作およびリコール動作を行わせることが可能である。
【0079】
このレジスタは、一般的なレジスタと同様、広範囲の用途があり、例えば何らかの演算処理の過程において発生するデータの記憶に用いられる。演算処理の過程において、電源を遮断する必要が生じた場合、それに先立ってストア動作を各不揮発性フリップフロップ200に行わせ、その後、電源を遮断する。その後、電源を投入する際には、各不揮発性フリップフロップ200にリコール動作を行わせる。これにより電源遮断前のデータをレジスタ内に復活させることができ、演算処理を再開することができる。
【0080】
なお、レジスタを構成する不揮発性フリップフロップとして、上記第1実施形態のものの他、上記第2〜第4実施形態のものを採用してもよい。また、不揮発性フリップフロップではなく、上記第5〜第8実施形態の不揮発性ラッチによりレジスタを構成してもよい。
【0081】
<第11実施形態>
図18はこの発明の第11実施形態である不揮発性カウンタの構成を示すブロック図である。本実施形態では、4個のフリップフロップ200と、図示のXORゲートおよびANDゲートにより4ビットのアップカウンタが構成されている。なお、このカウンタ自体は周知の構成であるので説明を省略する。
【0082】
各フリップフロプ200は、上記第1実施形態による不揮発性フリップフロップ200である。これらのフリップフロップ200にはクロックCLK、ストアイネーブル信号STEおよびリコール要求信号REQが与えられる。
【0083】
本実施形態では、
図18に示すカウンタを通常のカウンタとして動作させる他、次のような動作をさせることが可能である。
【0084】
まず、
図18に示すカウンタにカウント動作を行わせている過程において、電源を遮断する必要が生じた場合、カウンタを構成する各フリップフロップ200にストア動作を行わせ、その後、電源を遮断する。
【0085】
その後、電源を投入する際に、カウンタを構成する各フリップフロップ200にリコール動作を行わせる。これにより電源遮断前のカウント値が復元され、電源遮断前のカウント値からカウント動作を再開することができる。
【0086】
なお、
図18に示す例では、複数の不揮発性フリップフロップ200により同期カウンタを構成したが、非同期カウンタを構成してもよい。また、カウンタを構成するフリップフロップを上記第2〜第4実施形態の不揮発性フリップフロップとしてもよい。
【0087】
<第12実施形以降の実施形態において使用する不揮発性記憶部>
上記第1〜第11実施形態では、不揮発性記憶部のスイッチとして、トランジスタ(例えば
図1ではトランジスタ211、
図12ではトランジスタ608)を使用した。これに対し、第12実施形態以降の各実施形態では、所定の閾値以上の絶対値を持った電圧の印加によりONとなる双方向の閾素子を不揮発性記憶部のスイッチとして使用する。
【0088】
具体的には第12実施形態以降の各実施形態における不揮発性記憶部では、
図19に示す不揮発性メモリ素子を揮発性記憶部のノードDSおよびDSn間に介挿する。この例では、抵抗変化型素子R1のフリー層と、抵抗変化型素子R2のフリー層との間に、閾素子として、互いに逆並列接続されたダイオードD1およびD2が介挿されている。
【0089】
図20はダイオードD1およびD2からなる閾素子の電圧−電流特性を示す図である。
図20において、横軸は抵抗変化型素子R1のフリー層が接続されたノードVNAと抵抗変化型素子R2のフリー層が接続されたノードVNBの間の電圧VNA−VNB、縦軸はノードVNAからノードVNBに向けて流れる電流Iである。この
図20に示すように、電圧VNA−VNBが正であり、その絶対値がダイオードD2の順方向電圧0.5V以上になると閾素子にダイオードD2の順方向電流が急激に流れる。また、電圧VNA−VNBが負であり、その絶対値がダイオードD1の順方向電圧0.5V以上になると閾素子にダイオードD1の順方向電流が急激に流れる。このように逆並列接続されたダイオードD1およびD2は、所定の閾値以上の絶対値を持った電圧が印加されたときにONとなる双方向の閾素子として機能する。
【0090】
図21は、
図19に示す不揮発性メモリ素子の動作条件を示す図である。不揮発性メモリ素子に“1”を書き込む場合、ノードDSnを0Vとし、ノードDSを2.0Vとする。この場合、ノードVNA−VNB間に略0.8Vの電圧が印加され、ダイオードD2がONとなり、ノードDS−VNA間に0.6V、ノードVNB−DSn間に0.6Vの電圧が印加される。このため、抵抗変化型素子R1にピン層からフリー層に向かう電流が流れ、抵抗変化型素子R2にフリー層からピン層に向かう電流が流れる。この結果、抵抗変化型素子R1が高抵抗となり、抵抗変化型素子R2が低抵抗となる。ここで、ダイオードの抵抗は抵抗変化型素子の抵抗より非常に小さいので、簡略化のため電位降下はほぼないと考える。
【0091】
一方、不揮発性メモリ素子に“0”を書き込む場合は、ノードDSに0V、ノードDSnに2.0Vを印加する。この場合、ダイオードD1がONとなり、ノードVNA−VNB間に略−0.8Vの電圧が印加され、抵抗変化型素子R1にはノードDS―VNA間の略−0.6Vの電圧が印加され、抵抗変化型素子R2にはノードVNB−DSn間の略−0.6Vの電圧が印加される。この結果、抵抗変化型素子R1は、フリー層からピン層へ電流が流れて低抵抗化し、抵抗変化型素子R2はピン層からフリー層に電流が流れて高抵抗化する。
【0092】
不揮発性メモリ素子からデータを読み出す動作は、リコール時に行われる。この動作については説明の重複を避けるため、第12実施形態において詳細を明らかにする。
【0093】
図22は、
図19におけるダイオードD1およびD2をツェナーダイオードDZに置き換えたものである。この構成においても、ツェナーダイオードDZのブレークダウン電圧を略0.6Vにしておけば、
図20の特性が得られる。
【0094】
<第12実施形態>
図23はこの発明の第12実施形態である不揮発性フリップフロップ200Eの構成を示す回路図である。この不揮発性フリップフロップ200Eは、マスターラッチ部1M_12およびスレーブラッチ部1S_12からなる揮発性フリップフロップ部1_12と、不揮発性記憶部2_12と、制御ロジック部3_12とを有する。マスターラッチ部1M_12、スレーブラッチ部1S_12の構成は、上記第1実施形態(
図1)のマスターラッチ部1M_1、スレーブラッチ部1S_1と同様である。制御ロジック部3_12は、上記第1実施形態の制御ロジック部3_1からNORゲート214を削除した構成となっている。不揮発性記憶部2_12は、上記第1実施形態における不揮発性記憶部2_1のNチャネルトランジスタ211をダイオードD1およびD2からなる閾素子に置き換えた構成となっている。すなわち、抵抗変化型素子209のフリー層にはダイオードD1のアノードおよびダイオードD2のカソードが接続され、抵抗変化型素子210のフリー層にはダイオードD1のカソードおよびダイオードD2のアノードが接続されている。
【0095】
図24および
図25は本実施形態の動作を示す図である。電源電圧VDDが0.5Vである場合、ダイオードD1およびD2からなる閾素子はOFFとなるため、不揮発性記憶部2_12はスレーブラッチ部1S_12から切り離される。この状態において、SREB=“1”(0.5V)とすることにより、不揮発性フリップフロップは、
図24に示すように通常のフリップフロップとして動作する。
書き込み動作(ストア)および読み出し動作(リコール)では、
図24に示すように、SREB(ストアイネーブル)=“0”(0V)とする。これによりクロックトインバータ204は出力ディセーブル状態となり、クロックトインバータ205および206は出力イネーブル状態となる。
【0096】
そして、書き込み動作(ストア)では、その後、
図25に示すように、電源電圧VDDを0.5Vから2.0Vへ昇圧する。このときDS=“0”(0V)、DSn=“1”(2.0V)であると、ノードSLBが1.4V、ノードSLAが0.6V、ノードSLA−SLB間が−0.8VとなってダイオードD1がONし、
図26に示すように、クロックトインバータ206→抵抗変化型素子209→ダイオードD1→抵抗変化型素子210→クロックトインバータ205というパスを電流が流れる。この場合、抵抗変化型素子209は、ピン層からフリー層に向かう電流が流れるために高抵抗化し、抵抗変化型素子210は、フリー層からピン層に向かう電流が流れるために低抵抗化する。この結果、不揮発性記憶部2_12は、データ“0”を記憶した状態となる。これが“0”ストアの動作である。
【0097】
一方、電源電圧VDDを2.0Vに昇圧したときに、DS=“1”(2.0V)、DSn=“0”(0V)であると、ノードSLAが1.4V、ノードSLBが0.6V、ノードSLA−SLB間が0.8VとなってダイオードD2がONし、
図27に示すように、クロックトインバータ205→抵抗変化型素子210→ダイオードD2→抵抗変化型素子209→クロックトインバータ206というパスを電流が流れる。この場合、抵抗変化型素子209は、フリー層からピン層に向かう電流が流れるために低抵抗化し、抵抗変化型素子210は、ピン層からフリー層に向かう電流が流れるために高抵抗化する。この結果、不揮発性記憶部2_12は、データ“1”を記憶した状態となる。これが“1”ストアの動作である。
以上のストア動作が完了すると、電源VDDを遮断する。
【0098】
リコール動作では、SREB=“0”(0V)として、電源電圧VDDを0Vから0.9Vに立ち上げる。この電源電圧VDDを立ち上げる過程において、クロックトインバータ205の出力ノードから抵抗変化型素子210を介してキャパシタC2に充電電流が流れ、クロックトインバータ206の出力ノードから抵抗変化型素子209を介してキャパシタC1に充電電流が流れる。その際、不揮発性記憶部2_12がデータ“0”を記憶しており、抵抗変化型素子209が高抵抗、抵抗変化型素子210が低抵抗であると、抵抗変化型素子209に流れる充電電流よりも抵抗変化型素子210に流れる充電電流が多くなる。この結果、クロックトインバータ206の出力ノードの電位がクロックトインバータ205の出力ノードの電位よりも早く上昇し、DSn=“1”(0.9V)、DS=“0”(0V)となる。これが“0”リコールの動作である。
【0099】
一方、電源電圧VDDを立ち上げる過程において、不揮発性記憶部2_12がデータ“1”を記憶しており、抵抗変化型素子209が低抵抗、抵抗変化型素子210が高抵抗であると、抵抗変化型素子210に流れる電流よりも抵抗変化型素子209に流れる電流が多くなる。この結果、クロックトインバータ205の出力ノードの電位がクロックトインバータ206の出力ノードの電位よりも早く上昇し、DSn=“0”(0V)、DS=“1”(0.9V)となる。これが“1”リコールの動作である。
【0100】
リコール動作の終了後は、電源電圧VDDをダイオードD1およびD2がONとならない0.5Vに下げ、通常のフリップフロップとしての動作を行わせる。
【0101】
図28は本実施形態による不揮発性フリップフロップのフリップフロップとしての動作およびストア動作を示すタイムチャートである。この例では、電源電圧VDDを0.5Vとし、通常のフリッフフロップとしての動作を行わせ、2回に亙って、電源電圧VDDを0.5Vから2.0Vに昇圧し、ストア動作を行わせている。1回目のストア動作では、DS=“0”、DSn=“1”の状態で行われているので、上述した“0”ストアが行われている。また、2回目のストア動作では、DS=“1”、DSn=“0”の状態で行われているので、上述した“1”ストアが行われている。
【0102】
図29は本実施形態による不揮発性フリップフロップのリコール動作を示すタイムチャートである。リコール動作を行わせる場合、
図29に示すように、SREB=“0”として、電源電圧VDDを緩やかな時間勾配で0Vから0.9Vまで上昇させる。この結果、上述したように、不揮発性記憶部2_12の記憶内容をスレーブラッチ部13_12に格納するリコール動作が行われる。リコール動作終了後は、SREB=“1”とし、電源電圧VDDを0.5Vに下げ、通常のフリップフロップとしての動作を行わせる。
本実施形態においても上記第1実施形態と同様な効果が得られる。また、本実施形態では、上記第1実施形態のNチャネルトランジスタ211が不要であり、このNチャネルトランジスタ211に制御信号STEを供給する配線も不要であるので、回路全体をコンパクトにすることができるという効果がある。
【0103】
<第13実施形態>
図30はこの発明の第13実施形態である不揮発性フリップフロップ200Fの構成を示す回路図である。この不揮発性フリップフロップ200Fは、マスターラッチ部1M_13およびスレーブラッチ部1S_13からなる揮発性フリップフロップ部と、不揮発性記憶部2_13と、制御ロジック部3_13とを有する。マスターラッチ部1M_13、スレーブラッチ部1S_13および制御ロジック部3_13の構成は、上記第12実施形態(
図23)のマスターラッチ部1M_12、スレーブラッチ部1S_12および制御ロジック部3_12の構成と同様である。上記第12実施形態における不揮発性記憶部2_12では、キャパシタC1およびC2の各一端が接地されたが、本実施形態における不揮発性記憶部2_13では、キャパシタC1およびC2の各一端は電源VDDに接続されている。他の構成は上記第12実施形態と同様である。本実施形態においても上記第12実施形態と同様な効果が得られる。
【0104】
<第14実施形態>
図31はこの発明の第14実施形態である不揮発性フリップフロップ200Gの構成を示す回路図である。この不揮発性フリップフロップ200Gは、マスターラッチ部1M_14およびスレーブラッチ部1S_14からなる揮発性フリップフロップ部1_14と、不揮発性記憶部2_14と、制御ロジック部3_14とを有する。マスターラッチ部1M_14、スレーブラッチ部1S_14の構成は、上記第3実施形態(
図9)のマスターラッチ部1M_3、スレーブラッチ部1S_3と同様である。制御ロジック部3_14は、NANDゲート212Cおよびインバータ213Cにより構成されている。この制御ロジック部3_14の機能は上記第12実施形態の制御ロジック部3_12と同様である。不揮発性記憶部2_14は、上記第3実施形態における不揮発性記憶部2_3のNチャネルトランジスタ211をダイオードD1およびD2からなる閾素子に置き換えた構成となっている。本実施形態では、要素201C〜208C、212C、213Cは、他の回路とは電源が分離されており、電源電圧VDDとは独立に制御可能な電源電圧VDDCが供給される。
【0105】
図32は本実施形態による不揮発性フリップフロップ200Gの動作を示す図である。
図32に示すように、電源電圧VDDCとして、システム全体の電源電圧VDDが揮発性フリップフロップ部1_14に供給されている状況では、上記第1実施形態と同様な通常のフリップフロップとしての動作およびストア動作が可能である。また、揮発性フリップフロップ部1_14に対する電源電圧VDDCをシステム全体の電源電圧VDDまで上昇させることにより、上記第1実施形態と同様なリコール動作を不揮発性フリップフロップ200Gに行わせることができる。それに加えて、本実施形態では、不揮発性フリップフロップ200Gに対する電源電圧VDDCを単独で遮断することができる。
従って、本実施形態によれば、上記第3実施形態と同様な効果が得られる。
【0106】
<第15実施形態>
図33はこの発明の第15実施形態である不揮発性フリップフロップ200Hの構成を示す回路図である。この不揮発性フリップフロップ200Hは、マスターラッチ部1M_15およびスレーブラッチ部1S_15からなる揮発性フリップフロップ部と、不揮発性記憶部2_15と、制御ロジック部3_15とを有する。マスターラッチ部1M_15、スレーブラッチ部1S_15および制御ロジック部3_15の構成は、上記第14実施形態(
図31)のマスターラッチ部1M_14、スレーブラッチ部1S_14および制御ロジック部3_14の構成と同様である。上記第14実施形態における不揮発性記憶部2_14では、キャパシタC1およびC2の各一端が接地されたが、本実施形態における不揮発性記憶部2_15では、キャパシタC1およびC2の各一端は電源VDDに接続されている。他の構成は上記第14実施形態と同様である。本実施形態においても上記第14実施形態と同様な効果が得られる。
【0107】
<第16実施形態>
図34はこの発明の第16実施形態である不揮発性ラッチ600Eの構成を示す回路図である。この不揮発性ラッチ600Eは、揮発性ラッチ部1L_16と、不揮発性記憶部2_16と、制御ロジック部3_16とを有する。揮発性ラッチ部1L_16の構成は、上記第5実施形態(
図12)の揮発性ラッチ部1L_15と同様である。制御ロジック部3_16は、上記第5実施形態の制御ロジック部3_5からNORゲート611を削除した構成となっている。不揮発性記憶部2_16は、上記第5実施形態における不揮発性記憶部2_5のNチャネルトランジスタ608がダイオードD1およびD2からなる閾素子に置き換えられている。
【0108】
本実施形態におけるストア動作およびリコール動作は上記第12実施形態と同様である。また、通常のラッチとしての動作は上記第5実施形態と同様である。本実施形態においても上記第12実施形態と同様な効果が得られる。
【0109】
<第17実施形態>
図35はこの発明の第17実施形態である不揮発性ラッチ600Fの構成を示す回路図である。この不揮発性ラッチ600Fは、揮発性ラッチ部1L_17と、不揮発性記憶部2_17と、制御ロジック部3_17とを有する。揮発性ラッチ部1L_17および制御ロジック部3_17の構成は、上記第16実施形態(
図34)の揮発性ラッチ部1L_16および制御ロジック部3_16の構成と同様である。上記第16実施形態における不揮発性記憶部2_16では、キャパシタC1およびC2の各一端が接地されたが、本実施形態における不揮発性記憶部2_17では、キャパシタC1およびC2の各一端は電源VDDに接続されている。他の構成は上記第16実施形態と同様である。本実施形態においても上記第16実施形態と同様な効果が得られる。
【0110】
<第18実施形態>
図36はこの発明の第18実施形態である不揮発性ラッチ600Gの構成を示す回路図である。この不揮発性ラッチ600Gは、揮発性ラッチ部1L_18と、不揮発性記憶部2_18と、制御ロジック部3_18とを有する。揮発性ラッチ部1L_18の構成は、上記第7実施形態(
図14)の揮発性ラッチ部1L_7と同様である。制御ロジック部3_18は、NANDゲート609Cおよびインバータ610Cにより構成されている。この制御ロジック部3_18の機能は上記第16実施形態の制御ロジック部3_16と同様である。不揮発性記憶部2_18は、上記第7実施形態における不揮発性記憶部2_7のNチャネルトランジスタ211をダイオードD1およびD2からなる閾素子に置き換えた構成となっている。本実施形態では、要素601C〜605C、609C、610Cは、他の回路とは電源が分離されており、電源電圧VDDとは独立に制御可能な電源電圧VDDCが供給される。
【0111】
本実施形態では、不揮発性ラッチ600Gに対する電源電圧VDDCを単独で遮断することができる。従って、本実施形態によれば、上記第7実施形態と同様な効果が得られる。
【0112】
<第19実施形態>
図37はこの発明の第19実施形態である不揮発性ラッチ600Hの構成を示す回路図である。この不揮発性ラッチ600Hは、揮発性ラッチ部1L_19と、不揮発性記憶部2_19と、制御ロジック部3_19とを有する。揮発性ラッチ部1L_19および制御ロジック部3_19の構成は、上記第18実施形態(
図36)の揮発性ラッチ部1L_18および制御ロジック部3_18の構成と同様である。上記第18実施形態における不揮発性記憶部2_18では、キャパシタC1およびC2の各一端が接地されたが、本実施形態における不揮発性記憶部2_19では、キャパシタC1およびC2の各一端は電源VDDに接続されている。他の構成は上記第18実施形態と同様である。本実施形態においても上記第18実施形態と同様な効果が得られる。
【0113】
<第20実施形態>
図38はこの発明の第20実施形態である不揮発性シフトレジスタの構成を示すブロック図である。この例では、上記第12実施形態による不揮発性フリップフロップ200Eを4個使用し、入力データDをクロックCLKに同期して順次シフトする4ビットのシフトレジスタを構成している。
【0114】
イネーブル信号SREBは、4個の不揮発性フリップフロップ200Eに並列に供給される。従って、4個の不揮発性フリップフロップ200Eに同時にストア動作およびリコール動作を行わせることが可能である。
なお、シフトレジスタを構成する不揮発性フリップフロップとして、上記第12実施形態のものの他、上記第13〜第15実施形態のものを採用してもよい。
本実施形態によれば上記第9実施形態と同様な効果が得られる。
【0115】
<第21実施形態>
図39はこの発明の第21実施形態である不揮発性レジスタの構成を示すブロック図である。この例では、上記第12実施形態による不揮発性フリップフロップ200Eを4個使用し、4ビットのレジスタを構成している。
【0116】
イネーブル信号SREBは、4個の不揮発性フリップフロップ200Eに並列に供給される。従って、4個の不揮発性フリップフロップ200Eに同時にストア動作およびリコール動作を行わせることが可能である。
【0117】
なお、レジスタを構成する不揮発性フリップフロップとして、上記第12実施形態のものの他、上記第13〜第15実施形態のものを採用してもよい。また、不揮発性フリップフロップではなく、上記第15〜第19実施形態の不揮発性ラッチによりレジスタを構成してもよい。
本実施形態によれば上記第10実施形態と同様な効果が得られる。
【0118】
<第22実施形態>
図40はこの発明の第22実施形態である不揮発性カウンタの構成を示すブロック図である。本実施形態では、4個のフリップフロップ200Eと、図示のXORゲートおよびANDゲートにより4ビットのアップカウンタが構成されている。なお、このカウンタ自体は周知の構成であるので説明を省略する。
【0119】
各フリップフロプ200Eは、上記第12実施形態による不揮発性フリップフロップ200Eである。これらのフリップフロップ200EにはクロックCLK、イネーブル信号SREBが与えられる。
【0120】
本実施形態では、
図40に示すカウンタを通常のカウンタとして動作させる他、次のような動作をさせることが可能である。
【0121】
まず、
図40に示すカウンタにカウント動作を行わせている過程において、電源を遮断する必要が生じた場合、カウンタを構成する各フリップフロップ200Eにストア動作を行わせ、その後、電源を遮断する。
【0122】
その後、電源を投入する際に、カウンタを構成する各フリップフロップ200Eにリコール動作を行わせる。これにより電源遮断前のカウント値が復元され、電源遮断前のカウント値からカウント動作を再開することができる。
【0123】
なお、
図40に示す例では、複数の不揮発性フリップフロップ200Eにより同期カウンタを構成したが、非同期カウンタを構成してもよい。また、カウンタを構成するフリップフロップを上記第2〜第4実施形態の不揮発性フリップフロップとしてもよい。
本実施形態によれば上記第11実施形態と同様な効果が得られる。
【0124】
<不揮発性メモリ素子の断面構造>
図41は第12〜第22実施形態において使用する不揮発性メモリ素子の断面構造を示す図である。この図では、前掲
図23のダイオードD1、D2、抵抗変化型素子209の断面構造が示されている。
図41においてNチャネルトランジスタTRは、
図23におけるクロックトインバータ205を構成するNチャネルトランジスタであってもよいし、クロックトインバータ206を構成するNチャネルトランジスタであってもよい。このNチャネルトランジスタTRの上にノードSLAに相当する第1メタル層1Mが形成されている。この第1メタル層1M(SLA)上にダイオードD1のカソードおよびダイオードD2のアノードが配置されている。そして、ダイオードD1のアノードとダイオードD2のカソードは、第1ビアコンタクトV1を各々介して、ノードSLBに相当する第2メタル層2Mに接続されている。この第2メタル層2M(SLB)の上に抵抗変化型素子209のフリー層が配置されている。そして、この抵抗変化型素子209のピン層は第2ビアコンタクトV2を介してノードDSnに相当する第3メタル層3Mに接続されている。一方、ノードSLAに相当する第1メタル層1Mは、第1ビアコンタクトV1を介して、第2メタル層2Mに接続されている。この第2メタル層2Mの上には抵抗変化型素子210のフリー層が配置されている。そして、抵抗変化型素子210のピン層は、第2ビアコンタクトV2を介してノードDSに相当する第3メタル層3Mに接続されている。
【0125】
この不揮発性メモリ素子の製造工程では、高温の熱工程の必要なダイオード素子D1、D2を先に製造したのち、抵抗変化型素子209、210を製造するので、抵抗変化型素子209、210は熱の影響を受けず、安定した素子特性が得られるが、メタル層1M、2M間でダイオード素子を構成するので、配線の自由度が少なくなる欠点がある。
【0126】
図42は、不揮発性メモリ素子の別の断面構造を示す。
図42に示す不揮発性メモリ素子の製造工程では、先に抵抗変化型素子209、210を構成し、次にダイオードD1、D2を構成する。このように抵抗変化型素子201、210を構成したあとで、ダイオードD1、D2を構成するので、余分な熱工程が抵抗変化型素子209、210に加わり、特性がばらつき易いという欠点がある。しかし、
図42に示す不揮発性メモリ素子は、2つのダイオードD1、D2を接続する第3メタル層3Mが共通に配線するソース線SLなので、レイアウト上の自由度が広がる利点がある。
【0127】
以上説明した
図41、
図42の構成では、チップ(半導体基板)の深さ方向に沿ったP、N拡散層の並び方向が互いに逆方向であるダイオードD1およびD2を同時に製造する必要があるため、複雑な製造工程が必要である。
【0128】
図43(a)、(b)および(c)に示す不揮発性メモリ素子では、チップ(半導体基板)の深さ方向に沿ってP、N拡散層が同一方向に並んだダイオードを同時に構成する。
図43(a)は不揮発性メモリ素子の平面図、
図43(b)は
図43(a)のIa−Ia’線断面図、
図43(c)は
図43(a)のIb−Ib’線断面図である。
【0129】
この例では、互いに分離された第1メタル層1M(SLA)、1M(SLB)上に、チップ(半導体基板)の深さ方向に沿ったP、N拡散層の並び方向が同一方向であるダイオードD1、D2の各アノードが各々配置される(
図43(a)参照)。ここで、第1メタル層1M(SLA)、1M(SLB)は、前掲
図23のノードSLA、SLBに各々対応している。そして、第1メタル層1M(SLA)上のダイオードD1のカソードはビアV1を介してノードSLBに相当する第2メタル層2M(SLB)に接続され(
図43(c)参照)、第1メタル層1M(SLB)上のダイオードD2のカソードはビアV1を介してノードSLBに相当する第2メタル層2M(SLB)に接続される(
図43(b)参照)。また、第1メタル層1M(SLA)はビアV1を介してノードSLAに相当する第2メタル層2M(SLA)に接続される(
図43(c)参照)。また、第1メタル層1M(SLB)はビアV1を介してノードSLBに相当する第2メタル層2M(SLB)に接続される(
図43(b)参照)。この第2メタル層2M(SLA)上には抵抗変化型素子210が構成され、この抵抗変化型素子210はビアV2を介してノードDSに相当する第3メタル層3M(DS)に接続される。また、第2メタル層2M(SLB)上には抵抗変化型素子209が構成され、この抵抗変化型素子209はビアV2を介してノードDSnに相当する第3メタル層3M(DSn)に接続される。
【0130】
このように配置すれば、チップ深さ方向に沿ったダイオードD1、D2の断面構造が同じになるので、製造工程を容易にすることができ、
図43(a)に示すように、不揮発性メモリ素子のレイアウト面積を小さくすることができる。
【0131】
図44(a)、(b)および(c)は、不揮発性メモリ素子の他の構成例を示すものである。
図44(a)は不揮発性メモリ素子の平面図、
図44(b)は
図44(a)のIa−Ia’線断面図、
図44(c)は
図44(a)のIb−Ib’線断面図である。
図43に示す例では、第1メタル層〜第3メタル層を使用したが、この例ではメタル配線層として第1メタル層および第2メタル層のみを使用して不揮発性メモリ素子を構成している。
【0132】
この例においても、互いに分離された第1メタル層1M(SLA)、1M(SLB)上に、深さ方向に沿ったP、N拡散層の並び方向が同一方向であるダイオードD2、D1の各アノードが各々配置される(
図44(a)参照)。そして、第1メタル層1M(SLA)上のダイオードD2のカソードはビアV1を介して第2メタル層2M(SLB)に接続され(
図44(c)参照)、第1メタル層1M(SLB)上のダイオードD1のカソードはビアV1を介して第2メタル層2M(SLA)に接続される(
図44(b)参照)。また、第1メタル層1M(SLA)はビアV1を介して第2メタル層2M(SLA)に接続される(
図44(c)参照)。この第1メタル層1M(SLA)および第2メタル層2M(SLA)は、前掲
図23においてダイオードD1のカソードとダイオードD2のアノードが共通接続されたノードSLAに対応する。また、第1メタル層1M(SLB)はビアV1を介して第2メタル層2M(SLB)に接続される(
図44(b)参照)。この第2メタル層2M(SLB)および第1メタル層1M(SLB)は、前掲
図23においてダイオードD1のアノードとダイオードD2のカソードが共通接続されたノードSLBに対応する。そして、第1メタル層1M(SLB)上には抵抗変化型素子209が構成され、この抵抗変化型素子209はビアV1を介して前掲
図23のノードDSnに相当する第2メタル層2M(DSn)に接続される。また、第1メタル層1M(SLA)上には抵抗変化型素子210が構成され、この抵抗変化型素子210はビアV1を介して前掲
図23のノードDSに相当する第2メタル層2M(DS)に接続される。
【0133】
このような構成にすれば、小さい面積で、第2メタル層までの配線にて不揮発性メモリ素子を構成することができる。