(58)【調査した分野】(Int.Cl.,DB名)
【背景技術】
【0002】
LSIでは、トランジスタの微細化が進むにつれ、サブスレッショルドリーク電流だけではなく、ゲートリークも増加する傾向となってきている。また、これらのリーク電流は、LSIの高密度化が進むに連れて増加する。従って、LSI全体の消費電流が増加することとなる。そこで、消費電流を下げるために低電圧化、ゲーティッドクロック化などさまざまな消費電流削減策が行われてきた。さらなる低消費電力化を目指すには、動作しないブロックの電源遮断を行い、必要な時に電源を入れるといった方法が考えられている。しかしながら、LSIに用いられているラッチやフリップフロップ等の記憶素子は、揮発性の記憶素子であり、電源を遮断すると記憶情報が消えてしまう問題がある。
【0003】
そこで、ラッチやフリップフロップ等に強誘電体キャパシタからなる不揮発性記憶素子を追加した集積回路が提案されている(例えば特許文献1参照)。しかし、不揮発性記憶素子として強誘電体キャパシタを用いると、微細化により読み出しマージンが低下する問題がある。
【0004】
不揮発性記憶素子としては、強誘電体キャパシタの他に抵抗変化型素子がある。
図26(a)および(b)は、抵抗変化型素子として代表的なMTJ(Magnetic Tunnel Junction;磁気トンネル接合)素子を利用したメモリセルの構成と動作を示す図である。
図26(a)および(b)に示すように、MTJ素子は、磁気の方向が一定のピン層と、トンネルバリア膜と、磁気の方向が変化するフリー層とからなる。
図26(a)に示すように、フリー層からピン層に向かう方向の電流を流すと、フリー層の磁化方向がピン層と同一となり、MTJ素子は低抵抗となり、データ“0”を記憶した状態となる。逆に、
図26(b)に示すように、ピン層からフリー層に向かう方向の電流を流すと、フリー層の磁化方向がピン層と反対になり、MTJ素子は高抵抗となり、データ“1”を記憶した状態になる。このようなMTJ素子によりメモリセルを構成する場合には、
図26(a)および(b)に例示するように、MTJ素子を選択するためのスイッチとして、トランジスタTsがMTJ素子に直列接続される。
【0005】
図27は、
図26(a)および(b)に示すようなメモリセルにより構成されたメモリアレイの断面構造を例示する図である。
図27に示す例では、半導体基板に
図26(a)および(b)に示す選択用のトランジスタTsが形成されている。各トランジスタTsのゲートには選択電圧WLが与えられる。また、トランジスタTsのソースは、スルーホールと第1層メタル配線1Mとを介して書込電圧BLを供給するための第2層メタル配線2Mに接続されている。また、トランジスタTsのドレインは、スルーホールを介してMTJ素子のピン層に接続され、このMTJ素子のフリー層はスルーホールを介してソース電圧SLを供給するための第2層メタル配線2Mに接続されている。
【0006】
そして、特許文献2には、このようなMTJ素子を用いて、書き換え可能な不揮発性ラッチおよびフリップフロップを構成する提案がある。
図28は、この特許文献2の
図1に示された不揮発性ラッチを示す回路図である。
図28では、トランスファゲートTMG1およびTMG2とNORゲート10および20とにより周知のラッチが構成されている。そして、NORゲート10のPチャネルトランジスタ11のソースにMTJ素子R1の一端が、NORゲート20のPチャネルトランジスタ21のソースにMTJ素子R2の一端が接続されており、このMTJ素子R1およびR2の他端同士の接続点と電源Vddとの間にPチャネルトランジスタTr1が介挿されている。また、Pチャネルトランジスタ11とMTJ素子R1との接続点にはトランスファゲートTMG3を介してデータDが与えられるようになっており、Pチャネルトランジスタ21とMTJ素子R2との接続点にはトランスファゲートTMG4を介してデータDBが与えられるようになっている。さらにPチャネルトランジスタ11およびMTJ素子R1の接続点と電源Vddとの間にはPチャネルトランジスタTr2が介挿され、Pチャネルトランジスタ21およびMTJ素子R2の接続点と電源Vddとの間にはPチャネルトランジスタTr3が介挿されている。
【0007】
以上の構成において、入力データDおよびDBをMTJ素子R1およびR2に書き込む場合、PチャネルトランジスタTr1、Tr2、Tr3、12、22をOFFとし、Nチャネルトランジスタ13、23をONにする。これにより、入力データDおよびDBの値に応じてMTJ素子R1およびR2にそれぞれ反対方向の電流が流れ、MTJ素子R1およびR2はそれぞれ異なった抵抗値へと変化する。この抵抗値はMTJ素子の不揮発性により保持されるため、このラッチの電源を遮断してもデータが失われることはない。
【0008】
記憶させたデータを読み出す操作は、電源を投入した後、1)プリチャージ動作、2)読み出し動作の2段階で行う。
【0009】
まず1)プリチャージする場合は、PチャネルトランジスタTr1、Tr2、Tr3、12、22をOFF、Nチャネルトランジスタ13、23をONにする。これにより、NORゲート10、20の出力信号は“0”となりクロスカップルされたNORゲート10および20の両方のノードA、Bはどちらも等しく、“0”にプリチャージされる。
【0010】
続いて2)読み出し動作として、制御信号NV_RWだけ“1”から“0”へと状態変化させる。するとクロスカップルされたNORゲート10、20はクロスカップルされたインバータの動作をし、MTJ素子R1、R2の抵抗値に応じた遅延の差によりクロスカップルされたNORゲート10、20のノードA、Bの値が“1”かまたは“0”に決定される。このノードA、Bの値が記憶させた状態Q、QBに相当することになる。
【発明を実施するための形態】
【0022】
以下、図面を参照し、この発明の実施形態について説明する。なお、以下の実施形態において、トランジスタはMOSFET(Metal Oxide Semiconductor Field Effect Transistor;金属−酸化膜−半導体構造の電界効果トランジスタ)を指す。
【0023】
<不揮発性メモリ素子の構成および動作>
図1はこの発明の各実施形態において使用する不揮発性メモリ素子の構成を示す回路図である。
図1に示すように、不揮発性メモリ素子は、互いに逆並列接続されたダイオードD1およびD2からなる双方向の閾素子と抵抗変化型素子RとをノードDSよびSL間に直列接続してなるものである。抵抗変化型素子Rとしては、MRAM、PRAM、ReRAM等に用いられるものと同様なバイポーラ型抵抗変化型素子を使用することができる。図示の例において、抵抗変化型素子RはMRAMに使用されるMTJ素子である。そして、抵抗変化型素子RであるMTJ素子のピン層はダイオードD1のアノードおよびダイオードD2のカソードの共通接続点に接続され、フリー層はノードSLに接続されている。
【0024】
図2はダイオードD1およびD2からなる閾素子の電圧−電流特性を示す図である。この
図2において、横軸は抵抗変化型素子Rおよび閾素子間のノードVNとノードSLとの間の電圧VN−SLを示しており、縦軸はノードVNからノードSLに向けて流れる電流を示している。この例では、ダイオードD1およびD2の順方向電圧が閾素子の閾値電圧となる。ノードVNおよびSL間の電圧の絶対値がこの閾値電圧(図示の例では約0.5V)以下の領域では、電流Iは0である。しかし、電圧VN−SLが正であり、かつ、閾値電圧(この場合、ダイオードD2の順方向電圧)よりも大きい領域では、閾素子にダイオードD2の順方向電流が流れる。また、電圧VN−SLが負であり、かつ、その絶対値が閾値電圧(この場合、ダイオードD1の順方向電圧)よりも大きい領域では、閾素子にダイオードD1の順方向電流が流れる。
【0025】
図3は不揮発性メモリ素子の動作条件を示す図である。
図3に示すように、“1”書き込みの場合は、ノードDSに1.0V、ノードSLに0Vを印加する。この場合、ダイオードD2がONし、ノードDSおよびVN間に略0.5Vの電圧が印加され、ノードVNおよびSL間の抵抗変化型素子Rには略0.5Vの電圧が印加される。この結果、抵抗変化型素子Rにピン層からフリー層に向かう逆方向の電流が流れて高抵抗となり、“1”が書き込まれた状態となる。一方、“0”書き込みの場合は、ノードDSに0V、ノードSLに1.0Vを印加する。この場合、ダイオードD1がONし、ノードDSおよびVN間に略−0.5Vの電圧が印加され、ノードVNおよびSL間の抵抗変化型素子Rに略−0.5Vの電圧が印加される。この結果、抵抗変化型素子Rにフリー層からピン層に向かう順方向の電流が流れ、低抵抗化し、“0”が書き込まれた状態となる。
【0026】
データ読み出し動作では、例えばノードDSに0.5V、ノードSLに0Vが印加される。この場合、ダイオードD2がONし、ノードVNおよびSL間の抵抗変化型素子Rに正の微小電圧が印加される。このとき抵抗変化型素子Rに記憶されたデータに応じた電流がノードDSおよびSL間に流れる。すなわち、抵抗変化型素子Rがデータ“0”を記憶しており、抵抗値が低い場合は、ノードDSおよびSL間に流れる電流が大きくなり、抵抗変化型素子Rがデータ“1”を記憶しており、抵抗値が高い場合は、ノードDSおよびSL間に流れる電流が小さくなる。不揮発性メモリ素子を不揮発性メモリに利用した場合には、この点を利用して抵抗変化型素子Rに記憶されたデータが読み出される。
【0027】
図4は不揮発性メモリ素子の他の構成例を示す回路図である。
図1に示す例では、ダイオードD1およびD2を逆並列接続したものにより閾素子を構成したが、この構成例ではツェナーダイオードDZにより閾素子を構成した。この構成例においても、ツェナーダイオードDZの降伏電圧をダイオードの順方向電圧である0.5V程度にすることにより
図1に示すものと同様な効果が得られる。
【0028】
<不揮発性ラッチの構成および動作>
図5はこの発明の各実施形態において使用する不揮発性ラッチの構成を示す回路図である。不揮発性ラッチは、揮発性ラッチ部10に対し、上述した不揮発性メモリ素子(
図1)を2個用いた不揮発性記憶部20を接続してなるものである。
【0029】
揮発性ラッチ部10は、互いの出力信号を各々に対する入力信号とするクロックトインバータCKINV1およびCKINV2を有する。図示の例では、クロックトインバータCKINV1およびCKINV2は両方とも出力イネーブル状態となっており、データを保持している。
【0030】
不揮発性記憶部20において、逆並列接続されたダイオードD1およびD2からなる第1の閾値素子と第1の抵抗変化型素子R1は、クロックトインバータCKINV1の出力ノードDSとノードSLとの間に直列に介挿されている。また、逆並列接続されたダイオードD3およびD4からなる第2の閾値素子と第2の抵抗変化型素子R2は、クロックトインバータCKINV2の出力ノードDSnとノードSLとの間に直列に介挿されている。
【0031】
不揮発性ラッチに対する電源電圧VDDを切断するときは、それに先立って揮発性ラッチ部10の記憶データを不揮発性記憶部20に書き込むストア動作が行われる。このストア動作では、揮発性ラッチ部10の電源電圧VDDを通常よりも高くして揮発性ラッチ部10の記憶データを不揮発性記憶部20に書き込む。また、電源投入時は、まず、不揮発性記憶部20に記憶されたデータを揮発性ラッチ部10に転送するリコール動作を行った後、揮発性ラッチ部10を通常のラッチとして動作させる。
【0032】
図6は
図5に示す不揮発性ラッチの動作例を示す図である。この例では、不揮発性ラッチを通常のラッチとして動作させるために、電源電圧VDDを1.0V、ノードSLの基準電圧を0.5Vとする。この場合、不揮発性記憶部20は、DS=1.0V、DSn=0Vという状態またはDS=0V、DSn=1.0Vという状態のいずれかの状態になるが、いずれの状態においても、ダイオードD1およびD2からなる第1の閾素子とダイオードD3およびD4からなる第2の閾素子の両方がOFFとなり、不揮発性記憶部20が揮発性ラッチ部10から切り離される。この状態において、揮発性ラッチ部10は通常のラッチとして動作する。
【0033】
不揮発性ラッチにストア動作を行わせる場合、電源電圧VDDを2.0V、ノードSLの基準電圧を1.0Vとする。この場合において、揮発性ラッチ部10がデータ“1”を保持しており、ノードDSが2.0V、ノードDSnが0Vであると、ノードDSおよびSL間には1.0Vが印加され、ノードDSnおよびSL間には−1.0Vが印加され、第1および第2の閾素子の両方がONとなる。そして、抵抗変化型素子R1にはピン層からフリー層に向かう逆方向電流が流れるため、抵抗変化型素子R1は“1”書き込みとなり、高抵抗となる。一方、抵抗変化型素子R2にはフリー層からピン層に向かう順方向電流が流れ、抵抗変化型素子R2は“0”書き込みとなり、低抵抗となる。
【0034】
揮発性ラッチ部10がデータ“0”を保持しており、ノードDSが0V、ノードDSnが2.0Vであると、抵抗変化型素子R1にはフリー層からピン層に向かう順方向電流が流れ、抵抗変化型素子R1は、低抵抗で“0”が書き込まれた状態となる。また、抵抗変化型素子R2にはピン層からフリー層に向かう逆方向電流が流れ、抵抗変化型素子R2は、高抵抗で“1”が書き込まれた状態となる。
【0035】
次に、不揮発性記憶部20から揮発性ラッチ部10へデータ転送を行うリコール動作について説明する。
図6に示す例では、リコール動作を行わせるために、ノードSLに対する基準電圧を−0.3V〜−0.5Vの範囲の電圧とし、電源電圧VDDを0Vから1.0Vまで立ち上げる。ノードSLに負電圧を与えるのは、次の理由による。
【0036】
まず、電源電圧VDDが立ち上がって、ノードDSおよびDSnの電圧が上昇するときに、このノードDSおよびDSnの電圧がクロックトインバータCKINV1およびCKINV2を構成するNチャネルトランジスタの閾値電圧を越えると、NチャネルトランジスタがONし始める。
【0037】
ここで、クロックトインバータCKINV1およびCKINV2の各NチャネルトランジスタがONすると、クロックトインバータCKINV1およびCKINV2の各Pチャネルトランジスタから出力される各電流が抵抗変化型素子R1およびR2に流れず、各Nチャネルトランジスタに流れるため、抵抗変化型素子R1およびR2の抵抗値の大小関係の影響がクロックトインバータCKINV1およびCKINV2の出力ノードDSおよびDSnの電圧の変化となって現れず、リコール動作に支障が生じる。
【0038】
そこで、ノードDSおよびDSnの電圧が各Nチャネルトランジスタの閾値電圧VthNを越える前に、ノードDSおよびSL間の電圧とノードDSnおよびSL間の電圧が閾素子の閾値電圧VF(=0.5V)を越えてダイオードD2、D4がONするように、ノードSLに−0.3V〜―0.5V程度の負電圧を与えるのである。
【0039】
不揮発性記憶部20が“1”を記憶しており、抵抗変化型素子R1が高抵抗、抵抗変化型素子R2が低抵抗となっている場合、電源電圧VDDが0Vから1.0Vに徐々に変化すると、クロックトインバータCKINV1およびCKINV2の各NチャネルトランジスタはOFFしているので、ノードDSおよびDSnがクロックトインバータCKINV1およびCKINV2の各Pチャネルトランジスタを介して充電される。
【0040】
ここで、ノードSLの電圧SLが、VthN−VF=0.3V−0.5V=−0.2Vより低い負電圧であると、クロックトインバータCKINV1およびCKINV2の各NチャネルトランジスタがONする前に、抵抗変化型素子R1およびR2に電流が流れる。そして、この例では、SL=−0.3Vとしている。従って、電源電圧VDDを0Vから徐々に立ち上げると、出力ノードDS、DSnが0.2Vまで充電されたときに、ダイオードD2、D4がONして抵抗変化型素子R1、R2に電流が流れる。このとき、抵抗変化型素子R1が高抵抗、抵抗変化型素子R2が低抵抗になっていると、ノードDSおよびDSnの電圧の関係がDS>DSnとなり、その後、電源電圧VDDがさらに高くなったときに、揮発性ラッチ部10のノードDSがHレベル(1.0V)、ノードDSnがLレベル(0V)となり、揮発性ラッチ部10に“1”がラッチされる。
【0041】
電源電圧VDDが1.0Vに立ち上がった後は、速やかにノードSLの基準電圧が0.5Vとされ、リコール動作が終了する。
【0042】
このようにリコール動作が終了したら速やかにノードSLを0.5Vとするのが好ましいが、もし、比較的長い時間、ノードSLを−0.3Vのままにすると、抵抗変化型素子R1に電流が流れ続けて、抵抗変化型素子R1が“1”書き込み状態になる。しかしながら、この場合、もともと抵抗変化型素子R1は“1”書き込み状態であって高抵抗であったので、再書き込みがされることになり、特に問題はない。一方、低抵抗の抵抗変化型素子R2については、その接続先であるノードDSnが0Vなので、誤書き込みは起きない。
【0043】
不揮発性記憶部20が“0”を記憶しており、抵抗変化型素子R1が低抵抗、抵抗変化型素子R2が高抵抗となっている場合のリコール動作は次のようになる。すなわち、この場合には揮発性ラッチ部10のノードDSに低抵抗の抵抗変化型素子R1が接続され、ノードDSnに高抵抗の抵抗変化型素子R2が接続されて電源電圧VDDが立ち上げられるので、リコール動作後、揮発性ラッチ部10のノードDSはLレベル、ノードDSnはHレベルとなり、揮発性ラッチ部10に“0”がラッチされる。
【0044】
図7は
図5に示す不揮発性ラッチの他の動作例を示す図である。この例では、不揮発性ラッチを通常のラッチとして動作させるために、電源電圧VDDを0.5V、ノードSLの基準電圧を0Vとする。これにより、ダイオードD1およびD2からなる閾素子がOFFとなり、不揮発性記憶部20が揮発性ラッチ部10から切り離される。この状態において、揮発性ラッチ部10は通常のラッチとして動作する。ストア動作は、前掲
図6と同様である。リコール動作では、ノードSLに対する基準電圧を−0.3V〜−0.5Vの範囲の電圧とし、電源電圧VDDを0Vから0.5Vまで立ち上げる。
図6の動作例と異なり、このリコール動作では、通常動作時の電圧に電源電圧VDDを立ち上げるため、立ち上げ後に電源電圧VDDを変更する必要がない。
【0045】
<第1実施形態>
図8は、この発明の第1実施形態である不揮発性フリップフロップ200の構成を示す回路図である。また、
図9は、通常のフリップフロップの構成例を示す回路図である。本実施形態による不揮発性フリップフロップの特徴の理解を容易にするため、まず、
図9を参照し、通常のフリップフロップについて説明する。
【0046】
図9に示すフリップフロップは、マスターラッチ部100Mと、スレーブラッチ部100Sと、クロックドライバ100Cとを有する。ここで、クロックドライバ100Cは、2段のインバータ111および112からなり、入力されるクロックCLKと同じ論理値の内部クロックCKと、クロックCLKを反転した内部クロック/CKを出力する。マスターラッチ部100Mは、クロックトインバータ101および103と、インバータ102により構成されている。スレーブラッチ部100Sは、クロックトインバータ104および106と、インバータ105、107および108により構成されている。
【0047】
このような構成において、クロック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がインバータ108および107から各々出力される。
【0048】
本実施形態による不揮発性フリップフロップ200は、
図8に示すように、揮発性フリップフロップ部1_1と、不揮発性記憶部2_1と、制御ロジック部3_1とを有する。ここで、揮発性フリップフロップ部1_1は、マスターラッチ部1M_1と、スレーブラッチ部1S_1とにより構成されている。
【0049】
マスターラッチ部1M_1は、
図9のフリップフロップのマスターラッチ部100Mと同様な構成を有しており、入力データDが入力されるクロックトインバータ201と、このクロックトインバータ201の出力信号を反転して出力するインバータ202と、出力イネーブル状態においてインバータ202の出力信号を反転してクロックトインバータ201の出力ノードとインバータ202の入力ノードとの接続点に出力するクロックトインバータ203とにより構成されている。
【0050】
スレーブラッチ部1S_1の構成は、
図9のフリップフロップのスレーブラッチ部100Sの構成と異なっている。このスレーブラッチ部1S_1は、クロックトインバータ204、205および206と、NANDゲート207と、インバータ208とを有している。
【0051】
クロックトインバータ204および206には、2相の内部クロックCKSおよび/CKSが与えられる。また、クロックトインバータ205は、常に出力イネーブル状態となっており、クロックトインバータ204および206の各出力ノードの共通接続点の信号を反転してデータDSとして出力する。ここで、内部クロックCKSがHレベル、内部クロック/CKSがLレベルの場合、クロックトインバータ204が出力イネーブル状態、クロックトインバータ206は出力ディセーブル状態となる。この状態では、マスターラッチ部100Mのインバータ202から出力されるデータDMがクロックトインバータ204により反転されてデータDSnとなり、このデータDSnがクロックトインバータ205により反転されてデータDSとなる。
【0052】
また、内部クロックCKSがLレベル、内部クロック/CKSがHレベルの場合、クロックトインバータ204が出力ディセーブル状態、クロックトインバータ206が出力イネーブル状態となる。この状態では、クロックトインバータ205および206は、マスターラッチ部1M_1から切り離されてラッチを構成し、このラッチはマスターラッチ部1M_1から切り離される前に書き込まれたデータを保持する。
【0053】
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の構成の詳細である。
【0054】
図9におけるスレーブラッチ部100Sでは、マスターラッチ部100Mから取り込んだデータを保持するためのラッチがインバータ105とクロックトインバータ106とにより構成されていた。これに対し、本実施形態におけるスレーブラッチ部1S_1では、マスターラッチ部1M_1から取り込んだデータDMを保持するためのラッチがクロックトインバータ205および206により構成されている。ここで、クロックトインバータ205および206は、出力インピーダンスや出力電流特性が互いに同じである。この点が
図9におけるスレーブラッチ部100Sと本実施形態におけるスレーブラッチ部1S_1との相違点である。
【0055】
次に不揮発性記憶部2_1について説明する。不揮発性記憶部2_1は、逆並列接続されたダイオードD1およびD2からなる第1の閾素子と第1の抵抗変化型素子210とを直列接続した第1の不揮発性メモリ素子を有する。また、不揮発性記憶部2_1は、逆並列接続されたダイオードD3およびD4からなる第2の閾素子と第2の抵抗変化型素子209とを直列接続した第2の不揮発性メモリ素子を有する。第1の不揮発性メモリ素子において、ダイオードD1のカソードおよびダイオードD2のアノードは、クロックトインバータ205の出力ノードDSに接続されている。また、ダイオードD1のアノードおよびダイオードD2のカソードが共通接続されたノードSLAには抵抗変化型素子210のピン層が接続され、抵抗変化型素子210のフリー層はノードSLに接続されている。また、第2の不揮発性メモリ素子において、ダイオードD3のカソードおよびダイオードD4のアノードは、クロックトインバータ206の出力ノードDSnに接続されている。また、ダイオードD3のアノードおよびダイオードD4のカソードが共通接続されたノードSLBには抵抗変化型素子209のピン層が接続され、抵抗変化型素子209のフリー層はノードSLに接続されている。図示の例において、第1および第2の抵抗変化型素子210および209は、MTJ素子である。なお、抵抗変化型素子210および209として、このようなMTJ素子の他に、ReRAMのメモリセルに用いられるCER(Colossal Electro−Resistance;電界誘起巨大抵抗変化)抵抗素子を利用してもよい。
【0056】
次に制御ロジック部3_1について説明する。NANDゲート212およびインバータ213は、クロックCLKおよびイネーブル信号SREBに基づいて内部クロックCKおよび/CKを発生する回路を構成している。この回路は、イネーブル信号SREBがHレベルである場合に、クロックCLKと同一論理値の内部クロックCKSとクロックCLKを反転した内部クロック/CKSを発生し、信号SREBがLレベルである場合に、内部クロックCKSをHレベルに、内部クロック/CKSをLレベルに固定する。
【0057】
内部クロック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は前データ保持状態となる。
【0058】
図10は本実施形態による不揮発性フリップフロップ200の動作条件を示す図である。また、
図11および
図12は本実施形態においてスレーブラッチ部1S_1の記憶データを不揮発性記憶部2_1に書き込むストア動作を示す図である。また、
図13は通常動作およびストア動作における各部の波形を示すタイムチャートである。また、
図14は本実施形態において不揮発性記憶部2_1の記憶データを読み出してスレーブラッチ部1S_1に書き込むリコール動作が行われる場合の各部の波形を示すタイムチャートである。
【0059】
不揮発性フリップフロップ200を通常のフリップフロップとして動作させる場合、
図10および
図13に示すように、イネーブル信号SREBをHレベルとする。また、
図13に示すように電源電圧VDDを1.0V、ノードSLの基準電圧を0.5Vとする。これによりダイオードD1〜D4がOFFとなり、不揮発性記憶部2_1がスレーブラッチ部1S_1から切り離される。そして、イネーブル信号SREBをHレベルであることから、クロックCLKと同一論理の内部クロックCKSと、クロックCLKを反転させた内部クロック/CKSが発生する。この結果、不揮発性フリップフロップ200は通常のフリップフロップとして動作する。
【0060】
スレーブラッチ部1S_1の記憶データDSを不揮発性記憶部2_1に書き込むストアを行う場合には、
図13に示すように、イネーブル信号SREBをLレベル(“0”)とし、電源電圧VDDを2.0V、ノードSLの基準電圧を1.0Vとする。この結果、内部クロックCKSがLレベル、内部クロック/CKSがHレベルとなり、クロックトインバータ201は出力イネーブル状態、クロックトインバータ203は出力ディセーブル状態となり、マスターラッチ部1M_1はスルー状態となる。また、クロックトインバータ204は出力ディセーブル状態、クロックトインバータ206は出力イネーブル状態となり、スレーブラッチ部1S_1は前データ保持状態となる。
【0061】
そして、不揮発性記憶部2_1では、スレーブラッチ部1S_1の記憶データを記憶するストア動作が行われる。ここで、スレーブラッチ部1S_1がデータ“0”を記憶しており、クロックトインバータ205の出力データDSがLレベル=0V(“0”)、クロックトインバータ206の出力データDSnがHレベル=2.0(“1”)である場合、ダイオードD4およびD1がONとなる。そして、
図11に示すように、クロックトインバータ206の出力ノード(2.0V)→ダイオードD4→抵抗変化型素子209→ノードSLという経路を通って電流が流れる。また、ノードSL→抵抗変化型素子210→ダイオードD1→クロックトインバータ205の出力ノードDSという経路を通って電流が流れる。この場合、抵抗変化型素子209は、ピン層からフリー層に向かう電流が流れるので高抵抗となり、抵抗変化型素子210は、フリー層からピン層に向かう電流が流れるので低抵抗となる。
【0062】
一方、スレーブラッチ部1S_1がデータ“1”を記憶しており、クロックトインバータ205の出力データDSがHレベル=2.0V(“1”)、クロックトインバータ206の出力データDSnがLレベル=0V(“0”)である場合、ダイオードD3およびD2がONとなる。そして、
図12に示すように、クロックトインバータ205の出力ノード(2.0V)→ダイオードD2→抵抗変化型素子210→ノードSLという経路を通って電流が流れる。また、ノードSL→抵抗変化型素子209→ダイオードD3→クロックトインバータ206の出力ノードDSnという経路を通って電流が流れる。この場合、抵抗変化型素子210は、ピン層からフリー層に向かう電流が流れるので高抵抗となり、抵抗変化型素子209は、フリー層からピン層に向かう電流が流れるので低抵抗となる。
【0063】
このようにしてスレーブラッチ部1S_1の記憶データが不揮発性記憶部2_1に書き込まれる。この場合、抵抗変化型素子210および209の抵抗値の大小関係が不揮発性記憶部2_1の記憶データを表す。すなわち、抵抗変化型素子209の抵抗値が抵抗変化型素子210の抵抗値よりも大きければ不揮発性記憶部2_1の記憶データは“0”であり、抵抗変化型素子210の抵抗値が抵抗変化型素子209の抵抗値よりも大きければ不揮発性記憶部2_1の記憶データは“1”である。
【0064】
図13に示す動作例では、通常のフリップフロップとしての動作が行われた後、スレーブラッチ部1S_1から不揮発性記憶部2_1にデータ“0”を書き込む“0”ストアが行われ、その後、再び通常のフリップフロップとしての動作が行われた後、スレーブラッチ部1S_1から不揮発性記憶部2_1にデータ“1”を書き込む“1”ストアが行われている。
【0065】
なお、ストア動作においては、クロックトインバータ205および206により抵抗変化型素子210および209に電流を流すので、クロックトインバータ205の出力電圧にIRドロップが生じる。ここで、インバータ205の出力電圧(データDS)はNANDゲート207に入力されるので、何ら策を講じないと、この出力電圧に現われるIRドロップの影響によりNANDゲート207にリーク電流が流れる。しかしながら、本実施形態では、ストア動作の際に、信号SREBをLレベルとすることによりNANDゲート207における1つのNチャネルトランジスタをOFFとしている。従って、そのようなリーク電流の発生が防止される。
【0066】
ストア動作が完了した後は、不揮発性フリップフロップ200に対する電源電圧VDDを遮断してよい。この電源電圧VDDが遮断された状態においても、不揮発性記憶部2_1では、抵抗変化型素子210および209がストア動作により設定された抵抗値を維持する。
【0067】
次にリコール動作について説明する。不揮発性フリップフロップ200にリコール動作を行わせる場合、
図10および
図14に示すように、イネーブル信号SREBをLレベル(“0”)、ノードSLを−0.3V〜−0.5Vの範囲の電圧とし、不揮発性フリップフロップ200の電源電圧VDDが立ち上げられる。
【0068】
この場合、信号SREBがLレベルであることから、内部クロックCKSがLレベル、内部クロック/CKSがHレベルとなる。このため、電源電圧VDDが立ち上がるとき、マスターラッチ部1M_1ではクロックトインバータ201は出力イネーブル状態、クロックトインバータ203は出力ディセーブル状態となり(すなわち、スルー状態)、スレーブラッチ部1S_1ではクロックトインバータ204が出力ディセーブル状態、クロックトインバータ206が出力イネーブル状態となる(すなわち、前データ保持状態)。
【0069】
そして、本実施形態では、クロックトインバータ205の出力ノードDSとノードSLとの間にダイオードD2および抵抗変化型素子210が直列接続され、クロックトインバータ206の出力ノードDSnとノードSLとの間にダイオードD4および抵抗変化型素子209が直列接続されている。従って、電源電圧VDDが0Vから0.5Vに上昇すると、ダイオードD2およびD4がONし、クロックトインバータ205の出力ノードDSから抵抗変化型素子210を介してノードSLに電流が供給され、クロックトインバータ206の出力ノードDSnから抵抗変化型素子209を介してノードSLに電流が供給される。
【0070】
ここで、不揮発性記憶部2_1がデータ“0”を記憶している場合、抵抗変化型素子209の抵抗値が抵抗変化型素子210の抵抗値よりも大きい。この場合、クロックトインバータ206の出力ノードDSnから抵抗変化型素子209を介してノードSLに向けて流れる電流よりもクロックトインバータ205の出力ノードDSから抵抗変化型素子210を介してノードSLに向けて流れる電流の方が大きくなるので、クロックトインバータ206の出力ノードDSnの電圧DSnの方がクロックトインバータ205の出力ノードDSの電圧DSより高くなる。この結果、スレーブラッチ部1S_1は、クロックトインバータ206の出力ノードの電圧(データDSn)がHレベル、クロックトインバータ205の出力ノードの電圧(データDS)がLレベルとなり、この状態を保持する。このようにしてデータ“0”が不揮発性記憶部2_1から読み出されてスレーブラッチ部1S_1に記憶され、データ“0”のリコールが完了する。
【0071】
一方、不揮発性記憶部2_1がデータ“1”を記憶している場合、抵抗変化型素子210の抵抗値が抵抗変化型素子209の抵抗値よりも大きい。この状態で、電源電圧VDDが0Vから0.5Vに上昇すると、クロックトインバータ205の出力ノードDSnから抵抗変化型素子210に流れる電流よりもクロックトインバータ206の出力ノードDSから抵抗変化型素子209に流れる電流の方が大きくなるので、クロックトインバータ205の出力ノードDSの電圧DSの方がクロックトインバータ206の出力ノードDSの電圧DSnより高くなる。この結果、スレーブラッチ部1S_1は、クロックトインバータ205の出力ノードDSの電圧DSがHレベル、クロックトインバータ206の出力ノードDSnの電圧DSnがLレベルとなり、この状態を保持する。このようにしてデータ“1”が不揮発性記憶部2_1から読み出されてスレーブラッチ部1S_1に記憶され、データ“1”のリコールが完了する。
【0072】
図14に示す例では、電源電圧VDD=0.5Vで通常動作を行わせることを前提としているため、電源電圧VDDを0Vから0.5Vまで立ち上げた。しかし、電源電圧VDD=1.0Vで通常動作を行わせる場合には、電源電圧VDDを0Vから1.0Vまで立ち上げ、リコール動作完了後にノードSLの基準電圧を0.5Vとしてもよい。
【0073】
本実施形態による不揮発性フリップフロップ200は、下記の34個のトランジスタと2個の抵抗変化型素子と4個のダイオードにより実現可能である。
<不揮発性フリップフロップ200のトランジスタ数>
インバータ 3個 トランジスタ数 6個
クロックトインバータ 5個 トランジスタ数 20個
2入力NANDゲート 2個 トランジスタ数 8個
合計 34個
【0074】
一方、従来のフリップフロップ(
図9)は、28個のトランジスタにより実現される。従って、不揮発性フリップフロップ200の所要面積は、従来のフリップフロップの所要面積の約2倍となる。このように本実施形態によれば、所要面積を過度に増大させることなく、不揮発性フリップフロップ200を実現することができる。
以上のように、本実施形態によれば、揮発性フリップフロップ部1_1から不揮発性記憶部2_1へ記憶データを書き込むストアと、不揮発性記憶部2_1の記憶データを読み出して揮発性フリップフロップ部1_1に記憶させるリコールの動作を容易かつ安定に行わせることができる。また、本実施形態によれば、不揮発性フリップフロップ200において、素子の特性ばらつきの影響により誤書き込み、誤読み出しが発生するのを防止することができる。また、本実施形態によれば、不揮発性記憶部2_1にスイッチを設ける必要がなく、また、このスイッチのON/OFF制御を行うための信号線を配線する必要もない。従って、本実施形態によれば、少ない素子数(あるいは少ない所要面積)により高速かつ高性能の不揮発性フリップフロップを実現することができる。
【0075】
<第2実施形態>
図15はこの発明の第2実施形態である不揮発性フリップフロップ200Aの構成を示す回路図である。この不揮発性フリップフロップ200Aは、マスターラッチ部1M_2およびスレーブラッチ部1S_2からなる揮発性フリップフロップ部1_2と、不揮発性記憶部2_2と、制御ロジック部3_2とを有する。
【0076】
不揮発性記憶部2_2の構成は、上記第1実施形態(
図8)の不揮発性記憶部2_1の構成と同様である。しかし、揮発性フリップフロップ部1_2および制御ロジック部3_2では、上記第1実施形態の揮発性フリップフロップ部1_1を構成する各要素201〜208と、制御ロジック部3_1を構成する要素212および213が、要素201C〜208C、212C、213Cに置き換えられている。これらの各要素201C〜208C、212C、213Cは、他の回路とは電源が分離されており、LSIの電源電圧VDDとは独立に制御可能な電源電圧VDDCが供給される。
【0077】
図16は本実施形態の動作を示す図である。
図16に示すように、電源電圧VDDCとして、システム全体の電源電圧VDDが揮発性フリップフロップ部1_2に供給されている状況では、上記第1実施形態と同様な通常のフリップフロップとしての動作およびストア動作が可能である。また、揮発性フリップフロップ部1_2に対する電源電圧VDDCをシステム全体の電源電圧VDDまで上昇させることにより、上記第1実施形態と同様なリコール動作を不揮発性フリップフロップ200Aに行わせることができる。それに加えて、本実施形態では、不揮発性フリップフロップ200Aに対する電源電圧VDDCを単独で遮断することができる。
以上が本実施形態の詳細である。
【0078】
本実施形態においても上記第1実施形態と同様な効果が得られる。それに加えて、本実施形態では、システム全体の電源電圧とは独立に、不揮発性フリップフロップ200Aに対する電源電圧VDDCを単独で遮断し、あるいは立ち上げることが可能である。従って、不揮発性フリップフロップ200Aを搭載したシステムにおいて多彩な動作を実現することができる。
【0079】
なお、本実施形態には次のような変形例が考えられる。すなわち、複数の不揮発性フリップフロップに対して独立に電源供給系統を設けて、所望の不揮発性フリップフロップを選択し、この選択した不揮発性フリップフロップに対する電源電圧VDDCのみを遮断して、リーク電流を低減するのである。あるいは複数の不揮発性フリップフロップを1または複数の不揮発性フリップフロップのグループに分け、グループ単位で電源電圧VDCの供給を遮断するのである。この態様によればきめ細かな省電力制御が可能となる。
【0080】
<第3実施形態>
図17はこの発明の第3実施形態である不揮発性ラッチ600の構成を示す回路図である。この不揮発性ラッチ600は、揮発性ラッチ部1L_3と、不揮発性記憶部2_3と、制御ロジック部3_3とにより構成されている。
【0081】
揮発性ラッチ部1L_3は、クロックトインバータ601、602および603と、NANDゲート604およびインバータ605とにより構成されている。この揮発性ラッチ部1L_3の構成は、上記第1実施形態におけるスレーブラッチ部1S_1と同様である。
【0082】
不揮発性記憶部2_3は、抵抗変化型素子610および609と、ダイオードD1およびD2からなる閾素子と、ダイオードD3およびD4からなる閾素子により構成されている。この不揮発性記憶部2_3の構成は、上記第1実施形態(
図8)の不揮発性記憶部2_1と同様である。
【0083】
制御ロジック部3_3は、NANDゲート612と、インバータ613とにより構成されている。この制御ロジック部3_3の構成は上記第1実施形態の制御ロジック部3_1と同様である。
【0084】
以上のように、本実施形態による不揮発性ラッチ600は、上記第1実施形態による不揮発性フリップフロップ200からマスターラッチ部1M_1を取り除いた構成となっている。
【0085】
本実施形態によれば、通常のラッチとしての動作の他、上記第1実施形態と同様、ストア動作、リコール動作を安定して行わせることができる。
【0086】
<第4実施形態>
図18はこの発明の第4実施形態である不揮発性ラッチ600Aの構成を示す回路図である。この不揮発性ラッチ600Aは、揮発性ラッチ部1L_4と、不揮発性記憶部2_4と、制御ロジック部3_4とを有する。不揮発性記憶部2_4の構成は、上記第3実施形態(
図17)の不揮発性記憶部2_3の構成と同様である。しかし、揮発性ラッチ部1L_4および制御ロジック部3_4では、上記第3実施形態の揮発性ラッチ部1L_3を構成する各要素601〜605および制御ロジック部3_3を構成する要素612、613が、要素601C〜605C、612C、613Cに置き換えられている。これらの各要素601C〜605C、612C、613Cは、他の回路とは電源が分離されており、LSIの電源電圧VDDとは独立に制御可能な電源電圧VDDCが供給される。
【0087】
従って、電源電圧VDDCとして、システム全体の電源電圧VDDが供給されている状況では、不揮発性ラッチ600Aは通常のラッチとしての動作およびストア動作が可能である。また、不揮発性ラッチ600Aに対する電源電圧VDDCをシステム全体の電源電圧VDDまで上昇させることにより、リコール動作を不揮発性ラッチ600Aに行わせることができる。
【0088】
<第5実施形態>
図19はこの発明の第5実施形態である不揮発性シフトレジスタの構成を示すブロック図である。この例では、上記第1実施形態による不揮発性フリップフロップ200を4個使用し、入力データDをクロックCLKに同期して順次シフトする4ビットのシフトレジスタを構成している。
【0089】
イネーブル信号SREBおよび基準電圧SLは、4個の不揮発性フリップフロップ200に並列に供給される。従って、4個の不揮発性フリップフロップ200に同時にストア動作およびリコール動作を行わせることが可能である。
なお、シフトレジスタを構成する不揮発性フリップフロップとして、上記第1実施形態のものの他、上記第2実施形態のものを採用してもよい。
本実施形態によれば上記第1実施形態と同様な効果が得られる。
【0090】
<第6実施形態>
図20はこの発明の第6実施形態である不揮発性レジスタの構成を示すブロック図である。この例では、上記第1実施形態による不揮発性フリップフロップ200を4個使用し、4ビットのレジスタを構成している。
【0091】
イネーブル信号SREBおよび基準電圧SLは、4個の不揮発性フリップフロップ200に並列に供給される。従って、4個の不揮発性フリップフロップ200に同時にストア動作およびリコール動作を行わせることが可能である。
【0092】
なお、レジスタを構成する不揮発性フリップフロップとして、上記第1実施形態のものの他、上記第2実施形態のものを採用してもよい。また、不揮発性フリップフロップではなく、上記第3〜第4実施形態の不揮発性ラッチによりレジスタを構成してもよい。
本実施形態によれば上記第1実施形態と同様な効果が得られる。
【0093】
<第7実施形態>
図21はこの発明の第7実施形態である不揮発性カウンタの構成を示すブロック図である。本実施形態では、4個のフリップフロップ200と、図示のXORゲートおよびANDゲートにより4ビットのアップカウンタが構成されている。なお、このカウンタ自体は周知の構成であるので説明を省略する。
【0094】
各フリップフロプ200は、上記第1実施形態による不揮発性フリップフロップ200である。これらのフリップフロップ200にはクロックCLK、イネーブル信号SREBおよび基準電圧SLが与えられる。
【0095】
本実施形態では、
図21に示すカウンタを通常のカウンタとして動作させる他、次のような動作をさせることが可能である。
【0096】
まず、
図21に示すカウンタにカウント動作を行わせている過程において、電源を遮断する必要が生じた場合、カウンタを構成する各フリップフロップ200にストア動作を行わせ、その後、電源を遮断する。
【0097】
その後、電源を投入する際に、カウンタを構成する各フリップフロップ200にリコール動作を行わせる。これにより電源遮断前のカウント値が復元され、電源遮断前のカウント値からカウント動作を再開することができる。
【0098】
なお、
図21に示す例では、複数の不揮発性フリップフロップ200により同期カウンタを構成したが、非同期カウンタを構成してもよい。また、カウンタを構成するフリップフロップを上記第2実施形態の不揮発性フリップフロップとしてもよい。
本実施形態によれば上記第1実施形態と同様な効果が得られる。
【0099】
<不揮発性メモリ素子の断面構造>
図22は第1〜第7実施形態において使用する不揮発性メモリ素子の断面構造を示す図である。この図では、前掲
図8のダイオードD1、D2、D3、D4、抵抗変化型素子210、209の断面構造が示されている。
【0100】
図22においてNチャネルトランジスタTRは、
図8におけるクロックトインバータ205を構成するNチャネルトランジスタである。このNチャネルトランジスタTRのドレインであるノードDSは、コンタクトCSを介して第1メタル層1Mに接続されており、この第1メタル層1M上にダイオードD1のカソードおよびダイオードD2のアノードが配置されている。そして、ダイオードD1のアノードとダイオードD2のカソードは、第1ビアコンタクトV1を各々介して、
図8のノードSLAに相当する第2メタル層2M(SLA)に接続されている。この第2メタル層2M(SLA)の上に抵抗変化型素子210のピン層が配置されている。そして、この抵抗変化型素子210のフリー層は第2ビアコンタクトV2を介して
図8のノードSLに相当する第3メタル層3M(SL)に接続されている。
【0101】
一方、
図22において、第1メタル層1M(DSn)は、図示しない配線を介して
図8のノードDSnに接続されている。この第1メタル層1M(DSn)の上には、ダイオードD3のカソードおよびダイオードD4のアノードが配置されている。そして、ダイオードD3のアノードとダイオードD4のカソードは、第1ビアコンタクトV1を各々介して、
図8のノードSLBに相当する第2メタル層2M(SLB)に接続されている。この第2メタル層2M(SLB)の上に抵抗変化型素子209のピン層が配置されている。そして、この抵抗変化型素子209のフリー層は第2ビアコンタクトV2を介して
図8のノードSLに相当する第3メタル層3M(SL)に接続されている。
【0102】
この不揮発性メモリ素子の製造工程では、高温の熱工程の必要なダイオードD1、D2、D3、D4を先に製造したのち、抵抗変化型素子209、210を製造するので、抵抗変化型素子209、210は熱の影響を受けず、安定した素子特性が得られるが、メタル層1M、2M間でダイオード素子を構成するので、配線の自由度が少なくなる欠点がある。
【0103】
図23は、不揮発性メモリ素子の別の断面構造を示す。この不揮発性メモリ素子では、ダイオードD1およびD2からなる閾素子と抵抗変化型素子210との位置関係と、ダイオードD3およびD4からなる閾素子と抵抗変化型素子209との位置関係が
図8および
図23に示すものと逆になっている。しかし、この不揮発性メモリ素子においても、閾素子は印加電圧の絶対値が所定の閾値以下になるとOFFする。従って、
図23に示す不揮発性メモリ素子は上記第1〜第7実施形態に使用可能である。
【0104】
図23に示す不揮発性メモリ素子の製造工程では、先に抵抗変化型素子209、210を構成し、次にダイオードD1、D2、D3、D4を構成する。このように抵抗変化型素子201、210を構成したあとで、ダイオードD1、D2、D3、D4を構成するので、余分な熱工程が抵抗変化型素子209、210に加わり、特性がばらつき易いという欠点がある。しかし、
図23に示す不揮発性メモリ素子は、4つのダイオードD1、D2、D3、D4を接続する第3メタル層3Mが共通に配線するソース線SLなので、レイアウト上の自由度が広がる利点がある。
【0105】
以上説明した
図22、
図23の構成では、チップ(半導体基板)の深さ方向に沿ったP、N拡散層の並び方向が互いに逆方向であるダイオードD1(D3)およびダイオードD2(D4)を同時に製造する必要があるため、複雑な製造工程が必要である。
【0106】
図24(a)、(b)および(c)は、
図8においてダイオードD1およびD2からなる閾素子と抵抗変化型素子210とにより構成される不揮発性メモリ素子の構成を示す図である。なお、ダイオードD3よびD4からなる閾素子と抵抗変化型素子209とにより構成される不揮発性メモリ素子も、これと同様に構成することが可能である。図示の例では、チップ(半導体基板)の深さ方向に沿ってP、N拡散層が同一方向に並んだダイオードD1、D2を同時に構成する。
図24(a)は不揮発性メモリ素子の平面図、
図24(b)は
図24(a)のIa−Ia’線断面図、
図24(c)は
図24(a)のIb−Ib’線断面図である。
【0107】
この例では、互いに分離された第1メタル層1M(SLA)、1M(DS)上に、チップ(半導体基板)の深さ方向に沿ったP、N拡散層の並び方向が同一方向であるダイオードD1、D2の各アノードが各々配置される(
図24(a)〜(c)参照)。ここで、第1メタル層1M(SLA)、1M(DS)は、前掲
図8のノードSLA、DSに各々対応している。そして、第1メタル層1M(DS)上のダイオードD2のカソードはビアV1を介してノードSLAに相当する第2メタル層2M(SLA)に接続され(
図24(b)参照)、第1メタル層1M(SLA)上のダイオードD1のカソードはビアV1を介してノードDSに相当する第2メタル層2M(DS)に接続される(
図24(c)参照)。また、第1メタル層1M(SLA)はビアV1を介してノードSLAに相当する第2メタル層2M(SLA)に接続される(
図24(c)参照)。また、第1メタル層1M(DS)はビアV1を介してノードDSに相当する第2メタル層2M(DS)に接続される(
図24(b)参照)。第2メタル層2M(SLA)上には抵抗変化型素子210のピン層が配置され、この抵抗変化型素子210のフリー層はビアV2を介してノードSLに相当する第3メタル層3M(SL)に接続されている。
【0108】
このように配置すれば、チップ深さ方向に沿ったダイオードD1、D2の断面構造が同じになるので、製造工程を容易にすることができ、
図24(a)に示すように、不揮発性メモリ素子のレイアウト面積を小さくすることができる。
【0109】
図25(a)、(b)および(c)は、
図8においてダイオードD1およびD2からなる閾素子と抵抗変化型素子210とにより構成される不揮発性メモリ素子の他の構成例を示すものである。
図25(a)は不揮発性メモリ素子の平面図、
図25(b)は
図25(a)のIa−Ia’線断面図、
図25(c)は
図25(a)のIb−Ib’線断面図である。
図24に示す例では、第1メタル層〜第3メタル層を使用したが、この例ではメタル配線層として第1メタル層および第2メタル層のみを使用して不揮発性メモリ素子を構成している。
【0110】
この例においても、互いに分離された第1メタル層1M(SLA)、1M(DS)上に、深さ方向に沿ったP、N拡散層の並び方向が同一方向であるダイオードD1、D2の各アノードが各々配置される(
図25(a)〜(c)参照)。そして、第1メタル層1M(SLA)上のダイオードD1のカソードはビアV1を介して第2メタル層2M(DS)に接続され(
図25(b)参照)、第1メタル層1M(SLA)上のダイオードD2のカソードはビアV1を介して第2メタル層2M(SLA)に接続される(
図25(c)参照)。また、第1メタル層1M(SLA)はビアV1を介して第2メタル層2M(SLA)に接続される(
図25(b)参照)。この第1メタル層1M(SLA)および第2メタル層2M(SLA)は、前掲
図8においてダイオードD1のアノードとダイオードD2のカソードが共通接続されたノードSLAに対応する。また、第1メタル層1M(DS)はビアV1を介して第2メタル層2M(DS)に接続される(
図25(c)参照)。この第2メタル層2M(DS)および第1メタル層1M(DS)は、前掲
図8においてダイオードD1のカソードとダイオードD2のアノードが共通接続されたノードDSに対応する。そして、第1メタル層1M(SLA)上には抵抗変化型素子210のピン層が配置され、この抵抗変化型素子210のフリー層はビアV1を介して前掲
図8のノードSLに相当する第2メタル層2M(SL)に接続される。
【0111】
このような構成にすれば、小さい面積で、第2メタル層までの配線にて不揮発性メモリ素子を構成することができる。