JP4367281B2 - 演算回路 - Google Patents
演算回路 Download PDFInfo
- Publication number
- JP4367281B2 JP4367281B2 JP2004226970A JP2004226970A JP4367281B2 JP 4367281 B2 JP4367281 B2 JP 4367281B2 JP 2004226970 A JP2004226970 A JP 2004226970A JP 2004226970 A JP2004226970 A JP 2004226970A JP 4367281 B2 JP4367281 B2 JP 4367281B2
- Authority
- JP
- Japan
- Prior art keywords
- variable resistance
- voltage
- external input
- calculation
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/22—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using ferroelectric elements
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/02—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using elements whose operation depends upon chemical change
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C15/00—Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores
- G11C15/04—Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores using semiconductor elements
- G11C15/046—Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores using semiconductor elements using non-volatile storage elements
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/22—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using ferroelectric elements
- G11C11/223—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using ferroelectric elements using MOS with ferroelectric gate insulating film
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0004—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements comprising amorphous/crystalline phase transition cells
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Memory System (AREA)
- Semiconductor Memories (AREA)
Description
このコンパクトで高性能な回路が実現できる理由を、以下に説明する。
この回路は、双安定であるため、高速動作に向いており、静的消費電流も少ないというメリットがある。
しかし、6素子で1ビットのメモリを構成するため高集積化には向いていない。
しかし、この回路は、単安定で破壊読み出しであるため、再書き込み(リフレッシュ)や小信号増幅のためのプリチャージが必要となり、高速動作の障害になると共に消費電流も増加することになる。
このように、ダイナミック回路を採用した場合には、リフレッシュ等の処理をしないと高速で動作させることができないので、一般には採用されていない。
これにより、コンパクトで高性能な論理回路が実現できることになる。
ダイナミック回路を用いた論理回路では、論理演算を行う回路として、機能パスゲート(FPG: Functional PassGate)と呼ばれる構成を採用する。この機能パスゲートとは、演算素子とメモリ素子とパスゲートトランジスタとを有する構成であり、メモリ素子に演算用の記憶データを記憶させ、この記憶データを用いて演算素子により演算を行い、演算素子による演算結果がパスゲートトランジスタのゲートに入力されて、演算結果に応じてパスゲートトランジスタがオン・オフされるものである。
書き込み動作では、メモリ素子に、例えば書き込み用の電圧又は電流を加えて、記憶データを書き込む。
演算・読み出し動作では、マッチラインをプリチャージする過程と、外部入力と記憶データとの演算を行う過程との順に実行される。具体的には、まず、プリチャージトランジスタをオンにしてマッチラインに電荷をプリチャージする。その後、プリチャージトランジスタをオフにして演算を行う。このとき、マッチラインにプリチャージされた電荷が、パスゲートトランジスタとEvaluationトランジスタを通ってグランド電位に抜けるか否かが、演算結果に応じて変わるため、これにより出力が1であるか0であるかが決定される。
なお、出力は、次回のプリチャージが始まるまでは保持されるので、機能パスゲートは出力がラッチされる機能を有する。
まず、不揮発性デバイスを使ったロジック・イン・メモリの例として、強誘電体メモリ(FeRAM)素子を使った場合を説明する(非特許文献1参照)。
強誘電体メモリ素子には、MFS(Metal Ferroelectric Semiconductor )FETと呼ばれる強誘電体デバイスが用いられている。このMFSFETは、電極・強誘電体薄膜・半導体の3層からなり、通常のMOSFET(MOS電界効果トランジスタ)におけるSiO2層を強誘電体薄膜に置き換えた構造をしている。
従って、残留分極状態によって変化する閾値電圧を、記憶データの1と0とに対応させることができる。
(1)フラッシュ・メモリ等に使われているフローティングゲートMOSトランジスタと比較して、書き込み電圧が低く、±6V程度である。
(2)記憶データを破壊せずに読み出すことができる。
(3)強誘電体内における分極変化が高速であることから、高速書き込みが可能である。
具体的には、例えば、MFSFETの一方の端子Aを接地し、他方の端子Bをマッチライン(電位Vm)に接続すると共に、他方の端子Bにプリチャージ用のトランジスタを接続して、上述した機能パスゲートを構成する(非特許文献1参照)。
そして、MFSFETのゲート電位Vgに入力データs=1,0を当てはめると共に、MFSFETの閾値電圧Vthに記憶データb=1,0を当てはめると、機能パスゲートのスイッチング特性f(s,b)を次のように定義することができる。
f(s,b)=1(AとBは接続)
f(s,b)=0(AとBは非接続)
これは、マッチラインの電位Vmが接地電位(GND)に落ちていればf(s,b)=1であり、それ以外であればf(s,b)=0であることを示している。
2種類の電圧閾値Vth0,Vth1が、Vth1>Vth0であるとき、3種類のゲート電圧Vg0,Vg1,Vg2を、Vg2>Vth1>Vg1>Vth0>Vg0となるように定義する。
このとき、Vg0をb=0に、Vg1をb=1に当てはめれば、S=1,b=0のときだけf(s,b)=1になるので、f(s,b)=s&~bとなって、sと~bの論理積が得られる。一方、Vg1をb=0 に、Vg2をb=1に当てはめれば、s=0,b=1のときだけf(s、b)=0になるので、f(s,b)=s|~bとなって、sと~bの論理和が得られる。
このように、入力データsの1/0に対応するゲート電圧を3値にすれば、記憶データbとのOR/AND演算を行うことができる。
ビット単位の一致を検出するのはEXOR演算であり、このEXOR演算は論理積を計算するFPGを2つ並列に接続すれば実行することができる。このFPGを2つ並列に接続した構成を、1ワード分並べて、どれかひとつでも不一致があったら出力が「0」になるように組み合わせることにより、一致検索回路を構成することができる。
そして、このようにMFSFETで回路を組むことにより、例えば16ビットの一致検出回路を、SRAMベースのスタティック回路では160個のトランジスタを要するのに対して、MFSFETベースのダイナミック回路では64個のトランジスタで実現することができる(非特許文献1参照)。
強誘電体キャパシタは、通常のキャパシタの絶縁膜を強誘電体薄膜に置き換えた構造を有するものであり、強誘電体キャパシタの両端に異なる電圧がかかると分極が生じる。そして、強誘電体キャパシタの残留分極の状態が、電圧を印加する前の残留分極の状態及び電圧印加時の電位差によって決まる。
そこで、強誘電体キャパシタの両端に印加する電圧Vy1,Vy2を2つの入力データy1,y2に当てはめ、残留分極状態を記憶データSに当てはめることにより、2つの入力データy1、y2による演算結果を、残留分極状態として保存することができる。
この演算結果は、電源をオフにしても保存される。
また、外部入力データy1又はy2と記憶データSとの間のAND演算やOR演算を行うこともできる。
そして、強誘電体キャパシタとパスゲートトランジスタとを接続して、前述した機能パスゲートを構成することができる。
さらに、この機能パスゲートをオン・オフするダイナミック回路を構成することにより、通常のCMOSスタティック回路による論理ゲート及びメモリで構成された基本回路が、1つの機能パスゲートだけで実現できる。例えば、CMOSスタティック回路であれば14個のトランジスタを必要とした論理演算とラッチの回路を、わずか5個のトランジスタで実現することができる(非特許文献3参照)。
このように、強誘電体キャパシタによるダイナミック回路による論理回路を構成すれば、同様機能を有するスタティックなCMOS回路による論理回路と比較して、論理回路をコンパクトに構成することができる。
TMR素子とは、外部磁界により磁化方向が変化する強磁性層(磁化自由層)と、極薄い絶縁層と、外部磁界に依存せず磁化方向が一定の強磁性層(磁化固定層)の3層が積層された構造である。
このTMR素子は、外部磁界により磁化自由層の磁化の向きが変化することによって、電気抵抗が増減する性質を有する。即ち、磁化自由層と磁化固定層の磁化の向きが平行であるときに抵抗が小さくなり、反平行であるときに抵抗が大きくなる。
従って、このTMR素子の抵抗値を、記憶データとして記憶させることができる。
そして、TMR素子にデータを書き込む際には、ビット線と書き込み線にそれぞれ電流を流すことにより、これらの電流による磁界の合成磁界の向きに応じて、TMR素子に「1」「0」のデータが書き込まれる。より正確には、磁化自由層の強磁性体の磁化困難軸の方向に沿って書き込み線による磁界が発生し、これにより磁化自由層の強磁性体の抗磁力を小さくする。同時に、磁化自由層の磁性体の磁化容易軸の方向に沿ってビット線による磁界が発生し、この向きによって 「1」「0」のデータが書き込まれる。
一方、TMR素子に書き込まれたデータを読み出す際には、ビット線からTMR素子に電流を流して、流れる電流の大小によって、データ「1」「0」を判別する。
2つのTMR素子Rs,Rs´のそれぞれに対応してビット線BL1,BL2を配置している。
そして、記憶データを書き込む際には、ビット線と書き込み線が発生する磁界により、記憶データを書き込む。
書き込まれたデータを読み出す際には、読み出し用トランジスタをオンにして、TMR素子に電流を流す。
演算を行う際には、一方のビット線BL1に外部入力に対応する電圧を印加する。外部入力と記憶データとの演算結果に応じて、パスゲートトランジスタのゲート電圧が変化して、パスゲートトランジスタのオン・オフ状態が変化する。
このような構成とすることにより、外部入力と記憶データ間のAND(論理積)演算を行うことができる。
第1に、フローティングゲートMOSトランジスタと比較して、書き込み電圧が低くなるが、それでもまだ通常のCMOS回路の電源電圧に比べれば大き過ぎるので、別電源または昇圧回路が必要になる。
第2に、AND演算とOR演算とを切り替えるのに、外部入力データにオフセットを与えているので、ゲート電圧が3値になり、周辺回路が複雑になる。
第3に、外部入力データと記憶データとの間の演算は可能であるが、2つの外部入力データ間の演算をできる構成にはなっていない。
しかし、強誘電体キャパシタを使ったものでは、次に挙げる問題点が残る。
第1に、演算の結果、記憶データの内容が変化するため、セット動作又はリセット動作が必要になる。
第2に、強誘電体キャパシタの占有面積が大きいため、高集積化には向いていない。
第1に、外部入力データと記憶データとの間のAND(論理積)演算はできるが、OR(論理和)演算ができない。
第2に、2つの外部入力データ間の演算をできる構成にはなっていない。
第1に、高電圧を必要とせず、CMOS回路の電源電圧程度の電圧で動作すること。
第2に、外部入力データと記憶データとのAND演算及びOR演算が共に可能であり、これらの演算の切り替えが可能であること。
第3に、2つの外部入力データ間のAND演算及びOR演算が共に可能であり、記憶データに応じてAND演算とOR演算とが切り替えられること。
第4に、記憶データを破壊せずに演算する場合と、演算結果を記憶データとして残す場合と、使い方に応じて切り替えられること。
また、メモリ素子の両端に供給される電位を制御することにより、演算後もメモリ素子に記憶されたデータが変更されない非破壊演算と、演算によりメモリ素子に記憶されたデータが変更される破壊演算とを、それぞれ行うことが可能である。
従って、メモリ素子の両端に供給される電位を制御することによって、外部データとメモリ素子に記憶されたデータとの演算や、外部データ同士の演算を、それぞれ行うことが可能である。
さらに、メモリ素子の両端に供給される電位等を変更することにより、非破壊演算及び破壊演算において、それぞれAND(論理積)演算とOR(論理和)演算とを切り替えることが可能である。
このような構成としたことにより、メモリ素子において、2つの可変抵抗素子の一方の電極が共通端子であるので、2つの可変抵抗素子の他方の電極の間に2つの可変抵抗素子が直列に接続されることになる。そして、これら他方の電極間に電圧を印加すると、その電圧が2つの可変抵抗素子の一方の可変抵抗素子に対しては高抵抗状態から低抵抗状態に変化させるように作用し、他方の可変抵抗素子に対しては低抵抗状態から高抵抗状態に変化させるように、即ち相補的に作用する。これにより、一方の可変抵抗素子を低抵抗状態に、他方の可変抵抗素子を高抵抗状態に、それぞれ変化させ、その変化した後の状態を安定して保持することができる。
また、他方の電極間に上述した電圧と逆極性の電圧を印加すると、一方の可変抵抗素子を高抵抗状態に、他方の可変抵抗素子を低抵抗状態に、それぞれ変化させて、これにより、第1の可変抵抗素子及び第2の可変抵抗素子の抵抗状態の組み合わせを変えることができる。
このことを利用して、第1の可変抵抗素子及び第2の可変抵抗素子の抵抗状態の組み合わせが、高抵抗状態・低抵抗状態である場合と、低抵抗状態・高抵抗状態である場合とにより、データをメモリ素子に記憶することが可能になる。
そして、中間状態となる時間は短く、それ以外は2つの可変抵抗素子のうち一方が高抵抗状態にあるため、メモリ素子全体の合成抵抗が高く一定となり、メモリ素子に流れる電流は小さくなる。これにより、情報の記録・消去や情報の読み出しの際に、メモリ素子に電圧を印加して流れる電流を低減することができる。
さらに、メモリ素子の記憶されたデータの内容である、第1の可変抵抗素子及び第2の可変抵抗素子の抵抗状態の組み合わせによって、メモリ素子の共通端子即ち出力端子の電位が大きく変化するため、演算の結果が出力される出力端子において充分な電位差が得られる。また、出力端子の電圧の値を2値とすることが可能になる。
第1に、高電圧を必要とせず、CMOS回路の電源電圧程度の電圧で動作すること。
第2に、外部入力データと記憶データとのAND(論理積)演算及びOR(論理和)演算が共に可能であり、これらの演算の切り替えが可能であること。
第3に、2つの外部入力データ間のAND演算及びOR演算が共に可能であり、記憶データに応じてAND演算とOR演算とが切り替えられること。
第4に、記憶データを破壊せずに演算する場合と、演算結果を記憶データとして残す場合とを、使い方に応じて切り替えられること。
また、出力端子の電圧の値を2値とすることができるので、出力の閾値電圧を1種類とすることができることから、演算回路の次段の構成を簡略化することができる。
そして、閾値電圧を変更しなくても、ソフト的な対応で、論理積と論理和の演算を切り替えることが可能である。
また、安定状態での合成抵抗が高抵抗で一定であるため、可変抵抗素子を流れる電流が小さくなり、消費電力を抑制することができる。
この演算回路は、前述したロジック・イン・メモリを構成するものであり、1個の不揮発性デバイスと、4個の制御用のMOSトランジスタとにより構成されている。
MOSトランジスタMRDは、ソースが端子Z1に接続され、ドレインが外部入力Xの端子に接続され、ゲートにクロックCKXの端子が接続されている。
MOSトランジスタMRSは、ソースが端子Z2に接続され、ドレインが外部入力Wの端子に接続され、ゲートにクロックCKWの端子が接続されている。
MOSトランジスタMW1は、ソースが端子Z1に接続され、ドレインが外部入力Y1の端子に接続され、ゲートにクロックCKYの端子が接続されている。
MOSトランジスタMW2は、ソースが端子Z2に接続され、ドレインが外部入力Y2の端子に接続され、ゲートにクロックCKYの端子が接続されている。
なお、ここでは、ドレインとソースとを区別して接続しているように説明したが、MOSトランジスタではこれらを入れ替えることが可能なため、どちらを外部入力側に接続しても構わない。
図2Aに示す可変抵抗素子Rは、2つの電極1,2の間に導体膜3と絶縁体膜4が挟まれた膜構成になっている。導体膜3から絶縁体膜4に向かって電流Iが流れるように電圧をかけると、可変抵抗素子Rが低抵抗に変化してデータが書き込まれ、絶縁体膜4から導体膜3に向かって電流が流れるように電圧をかけると、可変抵抗素子Rが高抵抗に変化してデータが消去される。
また、この可変抵抗素子Rは、例えば、図2Bに示すように、一般の可変抵抗器の回路記号と同様の回路記号で記載することができると共に、矢印の向きを図2Aに示す書き込み時の電流Iの向きと等しくなるようにしている。
また、絶縁体膜4としては、例えば、アモルファスGd2O3や、SiO2等の絶縁体が挙げられる。
従って、可変抵抗素子Rの上下の電極1,2間に、絶縁体膜4側の電極2が低電位になるように電圧を加えると、金属元素のイオンが電極2に引き寄せられて、絶縁体膜4内に入っていく。そして、イオンが電極2まで到達すると、上下の電極1,2間が導通して抵抗値が下がることになる。
一方、可変抵抗素子Rの上下の電極1,2間に、導体膜3側の電極1が低電位になるように電圧を加えると、金属元素がイオン化して電極1に引き寄せられて、絶縁体膜4から抜けていくため、上下の電極1,2間の絶縁性が増して、抵抗値が上がることになる。
このような変化を繰り返すことにより、可変抵抗素子Rの抵抗値を、高抵抗状態と低抵抗状態との間で可逆的に変化させることができる。
また、抵抗変化によるデータ書き込み速度を例えば5ナノ秒程度と速くすることができ、また低電圧(例えば1V程度)かつ低電流(例えば20μA程度)で動作させることができるという利点を有する。
また、ここでは、可変抵抗素子Rが高抵抗のときの抵抗値を100kΩとし、低抵抗のときの抵抗値を100Ωとしている。
さらに、簡単のためにMOSトランジスタのオン抵抗を100Ωとしている。
これらは、必ずしもこの通りの値になるわけではないが、概ね妥当な値である。
0.3V<Ver<1.0V,0.3V<Vwr<1.0V (1)
が成立するものと仮定している。ここで用いている数値も必ずしも正しくないが、概ね妥当な数値になっている。
外部入力Y1は、Y1=0のときに端子電圧Vy1=0Vとし、Y1=1のときに端子電圧Vy1=1Vとする。
外部入力Y2は、Y2=0のときに端子電圧Vy2=0Vとし、Y2=1のときに端子電圧Vy2=1Vとする。
クロックCKXは、CKX=0のときに電圧Vckx=0Vとし、CKX=1のときに電圧Vckx=1Vとする。
クロックCKYは、CKY=0のときに電圧Vcky=0Vとし、CKY=1のときに電圧Vcky=1Vとする。
クロックCKWは、リセット入力となるものであり、CKW=0のときに電圧Vckw=0Vとし、CKW=1のときに電圧Vckw=1Vとする。
外部入力Xは、X=0のときに端子電圧Vx=0.0Vとし、X=1のときにVx=0.3Vとする。
外部入力Wは、W=0のときに端子電圧Vw=0.0Vとし、X=1のときにVw=0.3Vとする。
演算に先立ち、可変抵抗素子Rに記憶データSを書き込む。
具体的には、(Vy1,Vy2)=(1V,0V)又は(0V,1V)に設定した後、CKY=1,CKX=CKW=0とする。
これにより、トランジスタMW1,MW2がオンになり、トランジスタMRD,MRSがオフになるため、R=100Ω又は100kΩとなって、記憶データSとしてS=1又はS=0が書き込まれる。
具体的には、外部入力W又は外部入力Xの値(1又は0)に応じて、電圧Vxと電圧Vwのうち、一方を0.3Vに、他方を0.0Vにそれぞれ設定した後、CKY=0,CKX=CKW=1とする。
これにより、トランジスタMW1,MW2がオフになり、トランジスタMRD,MRSがオンになるため、W,X,Sの各値の組み合わせに応じて、Vz1,Vz2に4通りの電圧0V,0.1V,0.2V,0.3Vが現れる。
そして、0.05V又は0.25Vを閾値Vthとして2値化することにより、外部入力Xと記憶データSの論理演算、又は外部入力Wと記憶データSの論理演算の結果が得られる。
表2は、W=1に固定して、外部入力Xと記憶データS間で非破壊論理和を得る場合を示している。この場合、Vz1の閾値Vth=0.05Vとすることにより、Z1=X|Sの演算結果が得られ、Vz2の閾値Vth=0.25Vとすることにより、Z2=X|~Sの演算結果が得られる。
表3は、X=0に固定して、外部入力Wと記憶データS間で非破壊論理積を得る場合を示している。この場合、Vz1の閾値Vth=0.05Vとすることにより、Z1=W&Sの演算結果が得られ、Vz2の閾値Vth=0.25Vとすることにより、Z2=W&~Sの演算結果が得られる。
表4は、X=1に固定して、外部入力Wと記憶データS間で非破壊論理和を得る場合を示している。この場合、Vz1の閾値Vth=0.25Vとすることにより、Z1=W|~Sの演算結果が得られ、Vz2の閾値Vth=0.05Vとすることにより、Z2=W|Sの演算結果が得られる。
なお、表1〜表4では、Vz1,Vz2に299μVという値が現れているが、これは0.0Vとして取り扱っている。これ以降でも同様に取り扱うものとする。
演算に先立ち、可変抵抗素子Rに記憶データSを書き込む。
具体的には、(Vx,Vw)=(1V,0V)又は(0V,1V)に設定した後、CKY=0,CKX=CKW=1とする。
これにより、トランジスタMW1,MW2がオフになり、トランジスタMRD,MRSがオンになるため、R=100Ω又は100kΩとなって、記憶データSとしてS=1又はS=0が書き込まれる。
具体的には、外部入力Y1及び外部入力Y2を、それぞれ1又は0のいずれか(4通りの組み合わせのいずれか)に設定した後、CKY=1,CKX=CKW=0とする。
これにより、トランジスタMW1,MW2がオンになり、トランジスタMRD,MRSがオフになるため、Y1,Y2の値の組み合わせに応じて、可変抵抗素子Rの両端にかかる電圧が変化する。
そして、4通りの組み合わせのうちの1通りだけ(記憶データSの内容により異なる)で可変抵抗素子Rの抵抗値が変化し、記憶データSの値が書き換えられる。
具体的には、(Vx,Vw)=(0.0V,0.3V)又は(0.3V,0.0V)に設定した後、CKY=0,CKX=CKW=1とする。
これにより、トランジスタMW1,MW2がオフになり、トランジスタMRD,MRSがオンになるため、Y1,Y2,Sの各値の組み合わせに応じて、Vz1,Vz2に4通りの電圧0V,0.1V,0.2V,0.3Vが現れる。
そして、0.05V又は0.25Vをしきい値Vthとして2値化することにより、外部入力Y1,Y2間の論理演算、外部入力Y1と記憶データSの論理演算、外部入力Y2と記憶データSの論理演算の結果が得られる。
表5は、記憶データをS=0にセットして、2つの外部入力Y1,Y2間で演算させて、演算結果をVw=0V,Vx=0.3Vで読み出す場合を示している。この場合、Vz1の閾値Vth=0.25Vとすることにより、Z1=~Y1|Y2の演算結果が得られ、Vz2の閾値Vth=0.05Vとすることにより、Z2=Y1&~Y2の演算結果が得られる。
表6は、記憶データをS=0にセットして、2つの外部入力Y1,Y2間で演算させて、演算結果をVw=0.3V,Vx=0Vで読み出す場合を示している。この場合、Vz1の閾値Vth=0.05Vとすることにより、Z1=Y1&~Y2の演算結果が得られ、Vz2の閾値Vth=0.25Vとすることにより、Z2=~Y1|Y2の演算結果が得られる。
表7は、記憶データをS=1にセットして、2つの外部入力Y1,Y2間で演算させて、演算結果をVw=0V,Vx=0.3Vで読み出す場合を示している。この場合、Vz1の閾値Vth=0.25Vとすることにより、Z1=~Y1&Y2の演算結果が得られ、Vz2の閾値Vth=0.05Vとすることにより、Z2=Y1|~Y2の演算結果が得られる。
表8は、記憶データをS=1にセットして、2つの外部入力Y1,Y2間で演算させて、演算結果をVw=0.3V,Vx=0Vで読み出す場合を示している。この場合、Vz1の閾値Vth=0.05Vとすることにより、Z1=Y1|~Y2の演算結果が得られ、Vz2の閾値Vth=0.25Vとすることにより、Z2=~Y1&Y2の演算結果が得られる。
表9は、Y1=0に固定して、外部入力Y2と記憶データS間で演算させて、演算結果をVw=0V,Vx=0.3Vで読み出す場合を示している。この場合、Vz1の閾値Vth=0.25Vとすることにより、Z1=~S|Y2の演算結果が得られ、Vz2の閾値Vth=0.05Vとすることにより、Z2=S&~Y2の演算結果が得られる。
表10は、Y1=0に固定して、外部入力Y2と記憶データS間で演算させて、演算結果をVw=0.3V,Vx=0Vで読み出す場合を示している。この場合、Vz1の閾値Vth=0.05Vとすることにより、Z1=S&~Y2の演算結果が得られ、Vz2の閾値Vth=0.25Vとすることにより、Z2=~S|Y2の演算結果が得られる。
表11は、Y1=1に固定して、外部入力Y2と記憶データS間で演算させて、演算結果をVw=0V,Vx=0.3Vで読み出す場合を示している。この場合、Vz1の閾値Vth=0.25Vとすることにより、Z1=~S&Y2の演算結果が得られ、Vz2の閾値Vth=0.05Vとすることにより、Z2=S|~Y2の演算結果が得られる。
表12は、Y1=1に固定して、外部入力Y2と記憶データS間で演算させて、演算結果をVw=0.3V,Vx=0Vで読み出す場合を示している。この場合、Vz1の閾値Vth=0.05Vとすることにより、Z1=S|~Y2の演算結果が得られ、Vz2の閾値Vth=0.25Vとすることにより、Z2=~S&Y2の演算結果が得られる。
表13は、Y2=0に固定して、外部入力Y1と記憶データS間で演算させて、演算結果をVw=0V,Vx=0.3Vで読み出す場合を示している。この場合、Vz1の閾値Vth=0.25Vとすることにより、Z1=~(Y1|S)の演算結果が得られ、Vz2の閾値Vth=0.05Vとすることにより、Z2=Y1|Sの演算結果が得られる。
表14は、Y2=0に固定して、外部入力Y1と記憶データS間で演算させて、演算結果をVw=0.3V,Vx=0Vで読み出す場合を示している。この場合、Vz1の閾値Vth=0.05Vとすることにより、Z1=Y1|Sの演算結果が得られ、Vz2の閾値Vth=0.25Vとすることにより、Z2=~(Y1|S)の演算結果が得られる。
表15は、Y2=1に固定して、外部入力Y1と記憶データS間で演算させて、演算結果をVw=0V,Vx=0.3Vで読み出す場合を示している。この場合、Vz1の閾値Vth=0.25Vとすることにより、Z1=~(Y1&S)の演算結果が得られ、Vz2の閾値Vth=0.05Vとすることにより、Z2=Y1&Sの演算結果が得られる。
表16は、Y2=1に固定して、外部入力Y1と記憶データS間で演算させて、演算結果をVw=0.3V,Vx=0Vで読み出す場合を示している。この場合、Vz1の閾値Vth=0.05Vとすることにより、Z1=Y1&Sの演算結果が得られ、Vz2の閾値Vth=0.25Vとすることにより、Z2=~(Y1&S)の演算結果が得られる。
そして、可変抵抗素子Rの特性により、比較的低電圧(例えば2V程度)で可変抵抗素子Rの抵抗値を変化させて記憶データSを書き込むことができる。
さらに、非破壊演算、外部入力同士の演算、外部入力と記憶データの演算がいずれも可能であり、それぞれAND(論理積)演算とOR(論理和)演算を行うことができる。
外部入力同士の演算におけるAND演算とOR演算の切り替えは、例えば、表5と表6のように、読み出し時の電圧(Vx及びVw)と出力端子Z1,Z2の閾値電圧Vthを変更することにより、切り替えが可能である。
外部入力と記憶データの演算におけるAND演算とOR演算の切り替えも、例えば、表9と表10のように、読み出し時の電圧(Vx及びVw)と出力端子Z1,Z2の閾値電圧Vthを変更することにより、切り替えが可能である。
第1に、高電圧を必要とせず、CMOS回路の電源電圧程度の電圧で動作すること。
第2に、外部入力データと記憶データとのAND演算及びOR演算が共に可能であり、これらの演算の切り替えが可能であること。
第3に、2つの外部入力データ間のAND演算及びOR演算が共に可能であり、記憶データに応じてAND演算とOR演算とが切り替えられること。
第4に、記憶データを破壊せずに演算する場合と、演算結果を記憶データとして残す場合と、使い方に応じて切り替えられること。
また、可変抵抗素子Rの高抵抗状態及び低抵抗状態の各抵抗値は、膜構成、特に各層の組成や膜厚により、任意に設定することが可能である。
この相変化記憶素子は、大きな抵抗変化が得られ、また不揮発性デバイスとして用いることが可能である。
しかし、この相変化記憶素子は、記録原理として温度変化を利用しており、例えばアモルファス状態から結晶状態へと遷移する温度(結晶化温度)が200℃程度であるため、外部環境の温度変化やデバイス動作時の温度上昇に伴う温度変化に対して、動作が非常に不安定になる虞がある。
また、結晶状態へと遷移させるためには、ある程度長い時間(少なくとも50ナノ秒以上)にわたり一定温度以上に保つ必要があるため、高速の論理回路用デバイスへの応用には適していない。
また、抵抗変化によるデータ書き込み速度を例えば5ナノ秒程度と速くすることができ、また低電圧(例えば1V程度)かつ低電流(例えば20μA程度)で動作させることができるという利点を有する。
ただし、次の3点で改善の余地を残している。
第1に、可変抵抗素子Rが低抵抗であるS=1状態では、演算回路に大きい電流が流れるため、消費電力が増加する。
第2に、MOSトランジスタのオン抵抗と可変抵抗素子Rの低抵抗の値がほぼ等しくなるため、読み出しの際の端子電圧Vz1,Vz2は、演算回路に印加した電圧Vw,Vzが分圧された値となる。そのため、演算結果が0の場合と1の場合との電圧レベルの差が小さくなってしまう。
第3に、読み出すときの出力電圧の値が4通り(具体例では0V,0.1V,0.2V,0.3V)となり、出力を1と0とで識別するために、電圧の閾値が2種類(具体例では0.05V,0.25V)必要になる。
本発明の他の実施の形態として、演算回路の概略構成図(回路構成図)を図3に示す。
この演算回路は、前述したロジック・イン・メモリを構成するものであり、不揮発性デバイスと、4個の制御用のMOSトランジスタとにより構成されている。
第1の可変抵抗素子11(R1)は、矢印が下向きになっており、下向きに電流が流れるように電圧を印加したときに低抵抗になり、その逆極性の電圧を印加したときに高抵抗になる。
第2の可変抵抗素子12(R2)は、矢印が上向きになっており、上向きに電流が流れるように電圧を印加したときに低抵抗になり、その逆極性の電圧を印加したときに高抵抗になる。
これら第1の可変抵抗素子R1及び第2の可変抵抗素子R2を直列に接続しているので、電圧の極性に対応して、一方の可変抵抗素子が低抵抗になり、他方の可変抵抗素子が高抵抗になる。
そして、2つの可変抵抗素子11,12において、絶縁体膜4側の電極2を接続して共通端子Zとし、導体膜3側の電極1をそれぞれA端子とB端子に接続することで、コンプリメンタリな3端子のメモリ素子10を構成している。このように構成することにより、回路記号では、図4Bに示すように、2つの可変抵抗素子11,12の矢印が向かい合った構成となる。
ここでは、可変抵抗素子R1,R2が高抵抗のときの抵抗値を100kΩとし、低抵抗のときの抵抗値を100Ωとしている。
まず、このメモリ素子10がとり得る4つの状態を、図6A〜図6Dに示す。
そして、図6Aに示すように、端子Aと接続されている第1の可変抵抗素子11が低抵抗(100Ω)で、端子Bと接続されている第2の可変抵抗素子12が高抵抗(100kΩ)である状態を「S=1状態」と定義し、図6Bに示すように、端子Aと接続されている第1の可変抵抗素子11が高抵抗(100kΩ)で、端子Bと接続されている第2の可変抵抗素子12が低抵抗(100Ω)である状態を「S=0状態」と定義することにする。
さらに、図6Cに示すように、2つの可変抵抗素子11,12が共に低抵抗になっている状態を「中間状態」と呼び、図6Dに示すように、2つの可変抵抗素子11,12が共に高抵抗になっている状態を「禁止状態」と呼ぶことにする。
図7では、各状態の円内に可変抵抗素子11,12の抵抗値として(第1の可変抵抗素子11の抵抗値/第2の可変抵抗素子12の抵抗値)を記載し、各状態の推移を矢印で示し、この矢印に対してそれぞれ記憶素子10の各端子A,B,Zに印加される電圧として{Va,Vb}/Vzを記載している。
また、データが書き換えられる場合には、1個の可変抵抗素子Rの動作とは異なり、不安定な「中間状態」を経てから安定な「S=1状態」又は「S=0状態」に推移する点に特徴がある。
このため、メモリ素子10の共通端子Zと両側の端子A,Bとの間にデータ書き込み閾値Vwrよりも大きい電圧を与えることによって、不揮発性の可変抵抗素子11,12を2つとも又は1つだけ低抵抗にするような操作(初期化)を行う必要がある。この操作を行うことにより、メモリ素子10が図7に示した状態推移サイクルの中に入り、データ書き込み及びデータ消去の動作が可能になる。
0.4V<Ver<0.5V,0.4V<Vwr<2.0V (2)
が成立するものと仮定している。さらに、簡単のためにMOSトランジスタのオン抵抗を100Ωとしている。ここで用いている数値も必ずしも正しくないが、概ね妥当な数値になっている。
制御用のMOSトランジスタMRD,MRS,MW1,MW2及び外部入力X,W,Y1,Y2の各端子、クロックCKX,CKW,CKYの各端子の構成は、図1に示した先の実施の形態の演算回路と同様になっている。
そして、MOSトランジスタMRDのソース及びMOSトランジスタMW1のソースが、第1の可変抵抗素子11の一端(図4のA端子)に接続され、MOSトランジスタMRSのソース及びMOSトランジスタMW2のソースが、第2の可変抵抗素子12の一端(図4のB端子)に接続されている。
なお、ここでは、ドレインとソースとを区別して接続しているように説明したが、MOSトランジスタではこれらを入れ替えることが可能なため、どちらを可変抵抗素子11,12側に接続しても構わない。
外部入力Y1は、Y1=0のときに端子電圧Vy1=0Vとし、Y1=1のときに端子電圧Vy1=2Vとする。
外部入力Y2は、Y2=0のときに端子電圧Vy2=0Vとし、Y2=1のときに端子電圧Vy2=2Vとする。
クロックCKXは、CKX=0のときに電圧Vckx=0Vとし、CKX=1のときに電圧Vckx=1Vとする。
クロックCKYは、CKY=0のときに電圧Vcky=0Vとし、CKY=1のときに電圧Vcky=1Vとする。
クロックCKWは、リセット入力となるものであり、CKW=0のときに電圧Vckw=0Vとし、CKW=1のときに電圧Vckw=1Vとする。
外部入力Xは、X=0のときに端子電圧Vx=0.3Vとし、X=1のときにVx=0.7Vとする。
外部入力Wは、W=0のときに端子電圧Vw=0.3Vとし、X=1のときにVw=0.7Vとする。
演算に先立ち、可変抵抗素子11(R1),12(R2)に記憶データSを書き込む。
具体的には、(Vy1,Vy2)=(2V,0V)又は(0V,2V)に設定した後、CKY=1,CKX=CKW=0とする。
これにより、トランジスタMW1,MW2がオンになり、トランジスタMRD,MRSがオフになるため、(R1,R2)=(100Ω,100kΩ)又は(100kΩ,100Ω)となって、記憶データSとしてS=1又はS=0が書き込まれる。
具体的には、外部入力W又は外部入力Xの値(1又は0)に応じて、電圧Vxと電圧Vwのうち、一方を0.7Vに、他方を0.3Vにそれぞれ設定した後、CKY=0,CKX=CKW=1とする。
これにより、トランジスタMW1,MW2がオフになり、トランジスタMRD,MRSがオンになるため、W,X,Sの各値の組み合わせに応じて、Vzに2通りの電圧0.3V,0.7Vが現れる。
そして、0.5Vをしきい値Vthとして2値化することにより、外部入力Xと記憶データSの論理演算、又は外部入力Wと記憶データSの論理演算の結果が得られる。
この演算結果から、W=0に固定してXとSを演算するとAND演算になり、W=1に固定してXとSを演算するとOR演算になり、X=0に固定してWとSを演算するとAND演算になり、X=1に固定してWとSを演算するとOR演算になる。
Z=~W&(X&S)|W&(X|~S)
という論理演算を行うことができるため、先の実施の形態の演算回路と比較して、ずっと取り扱いが簡単になる。
演算に先立ち、可変抵抗素子11(R1),12(R2)に記憶データSを書き込む。
具体的には、(Vx,Vw)=(2V,0V)又は(0V,2V)に設定した後、CKY=0,CKX=CKW=1とする。
これにより、トランジスタMW1,MW2がオフになり、トランジスタMRD,MRSがオンになるため、(R1,R2)=(100Ω,100kΩ)又は(100kΩ,100Ω)となって、記憶データSとしてS=1又はS=0が書き込まれる。
具体的には、外部入力Y1及び外部入力Y2を、それぞれ1又は0のいずれか(4通りの組み合わせのいずれか)に設定した後、CKY=1,CKX=CKW=0とする。
これにより、トランジスタMW1,MW2がオンになり、トランジスタMRD,MRSがオフになるため、Y1,Y2の値の組み合わせに応じて、可変抵抗素子11,12の両端にかかる電圧が変化する。
そして、4通りの組み合わせのうちの1通りだけ(記憶データSの内容により異なる)で可変抵抗素子11,12の抵抗値R1,R2が変化し、記憶データSの値が書き換えられる。
具体的には、(Vx,Vw)=(0.3V,0.7V)又は(0.7V,0.3V)に設定した完、CKY=0,CKX=CKW=1とする。
これにより、トランジスタMW1,MW2がオフになり、トランジスタMRD,MRSがオンになるため、Y1,Y2,Sの各値の組み合わせに応じて、Vzに2通りの電圧0.3V,0.7Vが現れる。
そして、0.5Vをしきい値Vthとして2値化することにより、外部入力Y1,Y2間の論理演算、外部入力Y1と記憶データSの論理演算、外部入力Y2と記憶データSの論理演算の結果が得られる。
表18は、記憶データをS=0にセットして、2つの外部入力Y1,Y2間で演算させて、演算結果をVx=0.7V,Vw=0.3Vで読み出す場合を示している。この場合、Vzの閾値Vth=0.5Vとすることにより、Z=Y1&~Y2の演算結果が得られる。
表19は、記憶データをS=0にセットして、2つの外部入力Y1,Y2間で演算させて、演算結果をVx=0.3V,Vw=0.7Vで読み出す場合を示している。この場合、Vzの閾値Vth=0.5Vとすることにより、Z=~Y1|Y2の演算結果が得られる。
表20は、記憶データをS=1にセットして、2つの外部入力Y1,Y2間で演算させて、演算結果をVx=0.7V,Vw=0.3Vで読み出す場合を示している。この場合、Vzの閾値Vth=0.5Vとすることにより、Z=Y1|~Y2の演算結果が得られる。
表21は、記憶データをS=1にセットして、2つの外部入力Y1,Y2間で演算させて、演算結果をVx=0.3V,Vw=0.7Vで読み出す場合を示している。この場合、Vzの閾値Vth=0.5Vとすることにより、Z=~Y1&Y2の演算結果が得られる。
表22は、Y1=0に固定して、外部入力Y2と記憶データS間で演算させて、演算結果をVx=0.7V,Vw=0.3Vで読み出す場合を示している。この場合、Vzの閾値Vth=0.5Vとすることにより、Z=S&~Y2の演算結果が得られる。
表23は、Y1=0に固定して、外部入力Y2と記憶データS間で演算させて、演算結果をVx=0.3V,Vw=0.7Vで読み出す場合を示している。この場合、Vzの閾値Vth=0.5Vとすることにより、Z=~S|Y2の演算結果が得られる。
表24は、Y1=1に固定して、外部入力Y2と記憶データS間で演算させて、演算結果をVx=0.7V,Vw=0.3Vで読み出す場合を示している。この場合、Vzの閾値Vth=0.5Vとすることにより、Z=S|~Y2の演算結果が得られる。
表25は、Y1=1に固定して、外部入力Y2と記憶データS間で演算させて、演算結果をVx=0.3V,Vw=0.7Vで読み出す場合を示している。この場合、Vzの閾値Vth=0.5Vとすることにより、Z=~S&Y2の演算結果が得られる。
表26は、Y2=1に固定して、外部入力Y1と記憶データS間で演算させて、演算結果をVx=0.7V,Vw=0.3Vで読み出す場合を示している。この場合、Vzの閾値Vth=0.5Vとすることにより、Z=S&Y1の演算結果が得られる。
表27は、Y2=1に固定して、外部入力Y1と記憶データS間で演算させて、演算結果をVx=0.3V,Vw=0.7Vで読み出す場合を示している。この場合、Vzの閾値Vth=0.5Vとすることにより、Z=~S|~Y1の演算結果が得られる。
表28は、Y2=0に固定して、外部入力Y1と記憶データS間で演算させて、演算結果をVx=0.7V,Vw=0.3Vで読み出す場合を示している。この場合、Vzの閾値Vth=0.5Vとすることにより、Z=S|Y1の演算結果が得られる。
表29は、Y2=0に固定して、外部入力Y1と記憶データS間で演算させて、演算結果をVx=0.3V,Vw=0.7Vで読み出す場合を示している。この場合、Vzの閾値Vth=0.5Vとすることにより、Z=~S&~Y1の演算結果が得られる。
そして、可変抵抗素子11,12の特性により、比較的低電圧(例えば2V程度)で可変抵抗素子11,12の抵抗値を変化させて記憶データSを書き込むことができる。
さらに、非破壊演算、外部入力同士の演算、外部入力と記憶データの演算がいずれも可能であり、それぞれAND(論理積)演算とOR(論理和)演算を行うことができる。
外部入力同士の演算におけるAND演算とOR演算の切り替えも、例えば、表18と表19のように、読み出し時の電圧(Vx及びVw)を変更することにより、容易にできる。
外部入力と記憶データの演算におけるAND演算とOR演算の切り替えも、例えば、表22と表23のように、読み出し時の電圧(Vx及びVw)を変更することにより、容易にできる。
本実施の形態の演算回路は、これらの演算におけるAND演算とOR演算の切り替えをするために、出力Zの閾値電圧Vthを変更する必要がないので、切り替えを容易に行うことができる。
第1に、高電圧を必要とせず、CMOS回路の電源電圧程度の電圧で動作すること。
第2に、外部入力データと記憶データとのAND演算及びOR演算が共に可能であり、これらの演算の切り替えが可能であること。
第3に、2つの外部入力データ間のAND演算及びOR演算が共に可能であり、記憶データに応じてAND演算とOR演算とが切り替えられること。
第4に、記憶データを破壊せずに演算する場合と、演算結果を記憶データとして残す場合とを、使い方に応じて切り替えられること。
また、出力電圧Vzの値が2通りであり、演算結果の1と0とを識別するための閾値電圧が1種類(例えば0.5V)で済む。
そして、閾値電圧を変更しなくても、読み出し時の電圧の変更だけで、即ちソフト的な対応で、AND演算とOR演算とを容易に切り替えることができる。
また、可変抵抗素子Rの高抵抗状態及び低抵抗状態の各抵抗値は、膜構成、特に各層の組成や膜厚により、任意に設定することが可能である。
これに対して、制御用のMOSトランジスタを2個に減らして、同様の動作が可能な演算回路を構成することができる。
即ち、上述の各実施の形態の演算回路において、2つのMOSトランジスタMRD,MRSは同時にオン・オフされるので、これらのゲートに入力されるクロックCKX,CKWを共通にすることが可能である。また、MOSトランジスタMRD,MRSとMOSトランジスタMW1,MW2とは、排他的にオン・オフされるため、これらを共通にすることが可能である。
従って、MOSトランジスタMRD,MRSを削除して、2個のMOSトランジスタMW1,MW2だけであり、ゲートへの入力クロックは1つだけである、という構成としても同様の動作を実現することが可能である。
図8に示す演算回路では、図1に示した演算回路から、MOSトランジスタMRD,MRS及びそのゲートやドレインへの入力X,CKX,W,CKWの端子を削除して、制御用のMOSトランジスタを2個のMOSトランジスタMW1,MW2だけとしている。その他の構成は、図1と同様であるので、同一符号を付して重複説明を省略する。
なお、図8では、可変抵抗素子Rのデータ書き込み閾値Vwrと、データ消去閾値をVerは、
0.3V<Ver<1.0V,0.3V<Vwr<1.0V (1)
が成立するものと仮定している。
演算に先立ち、可変抵抗素子Rに記憶データSを書き込む。
具体的には、(Vy1,Vy2)=(1V,0V)又は(0V,1V)に設定した後、CKY=1とする。これにより、トランジスタMW1,MW2がオンになるため、R=100Ω又は100kΩとなって、記憶データSとしてS=1又はS=0が書き込まれる。
具体的には、外部入力Y1又は外部入力Y2の値(1又は0)に応じて、電圧Vy1と電圧Vy2のうち、一方を0.3Vに、他方を0.0Vにそれぞれ設定した後、CKY=1とする。
これにより、トランジスタMW1,MW2がオンになるため、Y1,Y2,Sの各値の組み合わせに応じて、Vz1,Vz2に4通りの電圧0V,0.1V,0.2V,0.3Vが現れる。
そして、0.05V又は0.25Vをしきい値Vthとして2値化することにより、外部入力Y1と記憶データSの論理演算、又は外部入力Y2と記憶データSの論理演算の結果が得られる。
演算に先立ち、可変抵抗素子Rに記憶データSを書き込む。
具体的には、(Vy1,Vy2)=(1V,0V)又は(0V,1V)に設定した後、CKY=1とする。
これにより、トランジスタMW1,MW2がオンになるため、R=100Ω又は100kΩとなって、記憶データSとしてS=1又はS=0が書き込まれる。
具体的には、外部入力Y1及び外部入力Y2を、それぞれ1又は0のいずれか(4通りの組み合わせのいずれか)に設定した後、CKY=1とする。
これにより、トランジスタMW1,MW2がオンになるため、Y1,Y2の値の組み合わせに応じて、可変抵抗素子Rの両端にかかる電圧が変化する。
そして、4通りの組み合わせのうちの1通りだけ(記憶データSの内容により異なる)で可変抵抗素子Rの抵抗値が変化し、記憶データSの値が書き換えられる。
具体的には、(Vy1,Vy2)=(0.0V,0.3V)又は(0.3V,0.0V)に設定した後、CKY=1とする。
これにより、トランジスタMW1,MW2がオンになるため、Y1,Y2,Sの各値の組み合わせに応じて、Vz1,Vz2に4通りの電圧0V,0.1V,0.2V,0.3Vが現れる。
そして、0.05V又は0.25Vをしきい値Vthとして2値化することにより、外部入力Y1,Y2間の論理演算、外部入力Y1と記憶データSの論理演算、外部入力Y2と記憶データSの論理演算の結果が得られる。
第1に、高電圧を必要とせず、CMOS回路の電源電圧程度の電圧で動作すること。
第2に、外部入力データと記憶データとのAND演算及びOR演算が共に可能であり、これらの演算の切り替えが可能であること。
第3に、2つの外部入力データ間のAND演算及びOR演算が共に可能であり、記憶データに応じてAND演算とOR演算とが切り替えられること。
第4に、記憶データを破壊せずに演算する場合と、演算結果を記憶データとして残す場合とを、使い方に応じて切り替えられること。
図1に示した構成では、クロックCKYを反転させたものをクロックCKX,CKWとすれば、MOSトランジスタを2つずつ交互に動作させることが可能であり、外部入力X,W,Y1,Y2の入力タイミングが厳密ではなくて良い。
これに対して、図8に示す構成では、制御用のトランジスタが減って、ゲートのクロックCKYが共通になっていることにより、外部入力Y1,Y2の電圧Vy1,Vy2の変更のタイミングを、クロックCKYの0の期間(MOSトランジスタMW1,MW2がオフの期間)にうまく合わせるように制御する必要がある。
従って、回路構成の簡略化を優先するか、制御の容易さを優先するかによって、いずれの構成を採用するか選択すればよい。
図9に示す演算回路では、図3に示した演算回路から、MOSトランジスタMRD,MRS及びそのゲートやドレインへの入力X,CKX,W,CKWの端子を削除して、制御用のMOSトランジスタを2個のMOSトランジスタMW1,MW2だけとしている。その他の構成は、図3と同様であるので、同一符号を付して重複説明を省略する。
なお、図9では、可変抵抗素子Rのデータ書き込み閾値Vwrと、データ消去閾値をVerは、
0.4V<Ver<0.5V,0.4V<Vwr<2.0V (2)
が成立するものと仮定している。
演算に先立ち、可変抵抗素子11(R1),12(R2)に記憶データSを書き込む。
具体的には、(Vy1,Vy2)=(2V,0V)又は(0V,2V)に設定した後、CKY=1とする。
これにより、トランジスタMW1,MW2がオンになるため、(R1,R2)=(100Ω,100kΩ)又は(100kΩ,100Ω)となって、記憶データSとしてS=1又はS=0が書き込まれる。
具体的には、外部入力Y1又は外部入力Y2の値(1又は0)に応じて、電圧Vy1と電圧Vy2のうち、一方を0.7Vに、他方を0.3Vにそれぞれ設定した後、CKY=1とする。
これにより、トランジスタMW1,MW2がオンになるため、Y1,Y2,Sの各値の組み合わせに応じて、Vzに2通りの電圧0.3V,0.7Vが現れる。
そして、0.5Vをしきい値Vthとして2値化することにより、外部入力Y1と記憶データSの論理演算、又は外部入力Y2と記憶データSの論理演算の結果が得られる。
そして、図9に示す演算回路では、3端子のメモリ素子を用いているため、出力端子電圧Vzの値が2通りであり、Y1,Y2,Sの各値の組み合わせに応じて、
Z=~Y2&(Y1&S)|Y2&(Y1|~S)
という論理演算を行うことができるため、図8に示した演算回路と比較して、ずっと取り扱いが簡単になる。
演算に先立ち、可変抵抗素子11(R1),12(R2)に記憶データSを書き込む。
具体的には、(Vy1,Vy2)=(2V,0V)又は(0V,2V)に設定した後、CKY=1とする。
これにより、トランジスタMW1,MW2がオンになるため、(R1,R2)=(100Ω,100kΩ)又は(100kΩ,100Ω)となって、記憶データSとしてS=1又はS=0が書き込まれる。
具体的には、外部入力Y1及び外部入力Y2を、それぞれ1又は0のいずれか(4通りの組み合わせのいずれか)に設定した後、CKY=1とする。
これにより、トランジスタMW1,MW2がオンになるため、Y1,Y2の値の組み合わせに応じて、可変抵抗素子11(R1),12(R2)の両端にかかる電圧が変化する。
そして、4通りの組み合わせのうちの1通りだけ(記憶データSの内容により異なる)で可変抵抗素子11,12の抵抗値が変化し、記憶データSの値が書き換えられる。
具体的には、(Vy1,Vy2)=(0.3V,0.7V)又は(0.7V,0.3V)に設定した後、CKY=1とする。
これにより、トランジスタMW1,MW2がオンになるため、Y1,Y2,Sの各値の組み合わせに応じて、Vzに2通りの電圧0.3V,0.7Vが現れる。
そして、0.5Vをしきい値Vthとして2値化することにより、外部入力Y1,Y2間の論理演算、外部入力Y1と記憶データSの論理演算、外部入力Y2と記憶データSの論理演算の結果が得られる。
第1に、高電圧を必要とせず、CMOS回路の電源電圧程度の電圧で動作すること。
第2に、外部入力データと記憶データとのAND演算及びOR演算が共に可能であり、これらの演算の切り替えが可能であること。
第3に、2つの外部入力データ間のAND演算及びOR演算が共に可能であり、記憶データに応じてAND演算とOR演算とが切り替えられること。
第4に、記憶データを破壊せずに演算する場合と、演算結果を記憶データとして残す場合とを、使い方に応じて切り替えられること。
また、2つの可変抵抗素子11,12の合成抵抗の大きさと比較して、MOSトランジスタMRD,MRSのオン抵抗(たとえば100Ω程度)が充分に小さくなるため、読み出し電圧がMOSトランジスタMRD,MRSによって分圧されることなく、1と0との出力電圧レベルの差が大きい。
また、読み出し電圧Vzの値が2通りであり、演算結果の1と0とを識別するための閾値電圧が1種類(例えば0.5V)で済む。
従って、回路構成の簡略化を優先するか、制御の容易さを優先するかによって、図3に示した構成か、図9に示した構成か、いずれの構成を採用するか選択すればよい。
この非破壊演算は、記憶データを書き戻すリセットの動作が不要であるというメリットがあるが、その一方で、電源電圧が無くなると演算結果も無くなってしまう揮発性を有している。
この破壊演算は、記憶データを書き戻すリセットの動作が毎回必要になるという面倒はあるが、その一方で、電源電圧が無くなっても演算結果が保存される不揮発性を有しているというメリットがある。
そして、機能パスゲートを直列または並列に2つ以上接続して、非特許文献2や非特許文献4に記載された他の不揮発性デバイスを用いた機能パスゲートと同様に、プリチャージトランジスタ及びEvaluateトランジスタを付加することにより、機能パスゲートの演算結果同士で任意のAND/OR演算を行い、その結果をマッチラインの電圧として出力することができる。
このダイナミック回路の動作については、既に説明したので省略する。
この場合は、ダイナミック回路に限らず、通常のスタティック回路と合わせて用いることも可能になる。
例えば、導体膜の代わりに半導体膜を用いたり、絶縁体膜の代わりに半導体膜や導体膜を用いたりしてもよく、積層順序が逆であったり、単層であってもよい。いずれの構成でも、可変抵抗素子が、電圧を印加することにより高抵抗状態と低抵抗状態との間で変化する特性であり、さらに抵抗状態が変化する電圧の閾値を有していればよい。
Claims (1)
- 一方の電極と他方の電極との間に、異なる極性の電圧を印加することにより、抵抗状態が高抵抗状態と低抵抗状態との間を可逆的に変化する可変抵抗素子を有するメモリ素子と、
前記メモリ素子の両端に、それぞれ1個以上接続されたトランジスタとを備え、
前記トランジスタを通じて、前記メモリ素子の両端にそれぞれ電位が供給されることにより、前記メモリ素子へのデータの記憶や、前記トランジスタのいずれかを介して入力された外部データに対する演算が行われ、
前記演算の結果が、前記メモリ素子から出力され、
前記メモリ素子は、2つの前記可変抵抗素子の各素子の前記一方の電極を接続して共通端子とし、2つの前記可変抵抗素子の各素子の前記他方の電極を独立させてそれぞれ端子を設けて、合計3端子として構成され、前記メモリ素子の各前記他方の電極に設けられた端子に、それぞれ1個以上前記トランジスタが接続され、前記演算の結果が前記共通端子から出力される
演算回路。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004226970A JP4367281B2 (ja) | 2004-08-03 | 2004-08-03 | 演算回路 |
US11/186,207 US7221600B2 (en) | 2004-08-03 | 2005-07-21 | Arithmetic circuit integrated with a variable resistance memory element |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004226970A JP4367281B2 (ja) | 2004-08-03 | 2004-08-03 | 演算回路 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2006048298A JP2006048298A (ja) | 2006-02-16 |
JP4367281B2 true JP4367281B2 (ja) | 2009-11-18 |
Family
ID=35756812
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004226970A Expired - Fee Related JP4367281B2 (ja) | 2004-08-03 | 2004-08-03 | 演算回路 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7221600B2 (ja) |
JP (1) | JP4367281B2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8437177B2 (en) | 2011-01-20 | 2013-05-07 | Panasonic Corporation | Nonvolatile latch circuit and nonvolatile flip-flop circuit |
US8619466B2 (en) | 2011-02-07 | 2013-12-31 | Panasonic Corporation | Nonvolatile latch circuit, nonvolatile flip-flop circuit, and nonvolatile signal processing device |
Families Citing this family (47)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7256622B2 (en) * | 2004-12-08 | 2007-08-14 | Naveen Dronavalli | AND, OR, NAND, and NOR logical gates |
FR2889897B1 (fr) * | 2005-08-18 | 2007-10-12 | Atmel Nantes Sa Sa | Cellule logique a deux sorties redondantes isolees, et circuit integre correspondant. |
JP2007080311A (ja) * | 2005-09-12 | 2007-03-29 | Sony Corp | 記憶装置及び半導体装置 |
US20070195580A1 (en) * | 2006-02-23 | 2007-08-23 | Heinz Hoenigschmid | Memory circuit having a resistive memory cell and method for operating such a memory circuit |
US7522444B2 (en) * | 2006-03-13 | 2009-04-21 | Infineon Technologies Ag | Memory circuit, method for operating a memory circuit, memory device and method for producing a memory device |
DE102006016514A1 (de) * | 2006-04-07 | 2007-10-18 | Infineon Technologies Ag | Schaltung und Verfahren zum Konfigurieren einer Schaltung |
JP2007294592A (ja) * | 2006-04-24 | 2007-11-08 | Sony Corp | 記憶装置の駆動方法 |
US7795910B1 (en) * | 2007-08-21 | 2010-09-14 | Marvell International Ltd. | Field-programmable gate array using charge-based nonvolatile memory |
JP5160304B2 (ja) * | 2008-05-22 | 2013-03-13 | シャープ株式会社 | 抵抗変化型可変抵抗素子を備えた積演算装置、及び積和演算装置、これらの装置を各ニューロン素子に備えるニューラルネットワーク、並びに積演算方法 |
US7782646B2 (en) * | 2008-06-30 | 2010-08-24 | International Business Machines Corporation | High density content addressable memory using phase change devices |
KR101182423B1 (ko) * | 2008-12-17 | 2012-09-12 | 한국전자통신연구원 | 상변화 메모리 소자를 이용한 필드프로그래머블 게이트 어레이(fpga)의 프로그래머블 논리 블록 |
US8130538B2 (en) * | 2009-01-15 | 2012-03-06 | Altera Corporation | Non-volatile memory circuit including voltage divider with phase change memory devices |
JP4720912B2 (ja) * | 2009-01-22 | 2011-07-13 | ソニー株式会社 | 抵抗変化型メモリデバイス |
CN102449702B (zh) | 2009-05-29 | 2015-05-20 | 于利奇研究中心有限公司 | 存储元件、堆叠、存储矩阵和用于运行的方法 |
JP5347806B2 (ja) * | 2009-07-29 | 2013-11-20 | ソニー株式会社 | 抵抗変化型メモリデバイスおよびその動作方法 |
JP5032611B2 (ja) * | 2010-02-19 | 2012-09-26 | 株式会社東芝 | 半導体集積回路 |
US8259485B2 (en) | 2010-08-31 | 2012-09-04 | Hewlett-Packard Development Company, L.P. | Multilayer structures having memory elements with varied resistance of switching layers |
US8373438B2 (en) | 2010-10-29 | 2013-02-12 | Alexander Mikhailovich Shukh | Nonvolatile logic circuit |
US8207757B1 (en) * | 2011-02-07 | 2012-06-26 | GlobalFoundries, Inc. | Nonvolatile CMOS-compatible logic circuits and related operating methods |
US8274312B2 (en) * | 2011-02-25 | 2012-09-25 | The United States Of America As Represented By The Secretary Of The Air Force | Self-reconfigurable memristor-based analog resonant computer |
JP5204868B2 (ja) * | 2011-04-12 | 2013-06-05 | シャープ株式会社 | 半導体記憶装置 |
US9465657B2 (en) | 2011-07-19 | 2016-10-11 | Elwha Llc | Entitlement vector for library usage in managing resource allocation and scheduling based on usage and priority |
US9098608B2 (en) | 2011-10-28 | 2015-08-04 | Elwha Llc | Processor configured to allocate resources using an entitlement vector |
US9298918B2 (en) | 2011-11-30 | 2016-03-29 | Elwha Llc | Taint injection and tracking |
US9575903B2 (en) | 2011-08-04 | 2017-02-21 | Elwha Llc | Security perimeter |
US9471373B2 (en) | 2011-09-24 | 2016-10-18 | Elwha Llc | Entitlement vector for library usage in managing resource allocation and scheduling based on usage and priority |
US9443085B2 (en) | 2011-07-19 | 2016-09-13 | Elwha Llc | Intrusion detection using taint accumulation |
US8955111B2 (en) | 2011-09-24 | 2015-02-10 | Elwha Llc | Instruction set adapted for security risk monitoring |
US9798873B2 (en) | 2011-08-04 | 2017-10-24 | Elwha Llc | Processor operable to ensure code integrity |
US9460290B2 (en) | 2011-07-19 | 2016-10-04 | Elwha Llc | Conditional security response using taint vector monitoring |
US9558034B2 (en) | 2011-07-19 | 2017-01-31 | Elwha Llc | Entitlement vector for managing resource allocation |
US9170843B2 (en) | 2011-09-24 | 2015-10-27 | Elwha Llc | Data handling apparatus adapted for scheduling operations according to resource allocation based on entitlement |
US8943313B2 (en) | 2011-07-19 | 2015-01-27 | Elwha Llc | Fine-grained security in federated data sets |
US8813085B2 (en) | 2011-07-19 | 2014-08-19 | Elwha Llc | Scheduling threads based on priority utilizing entitlement vectors, weight and usage level |
TWI469325B (zh) * | 2012-07-31 | 2015-01-11 | Ind Tech Res Inst | 邏輯閘 |
EP2736044B1 (en) | 2012-11-22 | 2017-11-15 | Technische Universität Wien | Rram implication logic gates |
DE102013200615A1 (de) * | 2013-01-16 | 2014-07-17 | Helmholtz-Zentrum Dresden - Rossendorf E.V. | Komplementärer Widerstandsschalter, dessen Herstellung und Verwendung |
US9583704B2 (en) | 2013-01-16 | 2017-02-28 | Helmholtz-Zentrum Dresden-Rossendorf E.V. | Complementary resistance switch, contact-connected polycrystalline piezo- or ferroelectric thin-film layer, method for encrypting a bit sequence |
US8976569B2 (en) * | 2013-01-30 | 2015-03-10 | Hewlett-Packard Development Company, L.P. | Mitigation of inoperable low resistance elements in programable crossbar arrays |
KR20150135323A (ko) * | 2013-03-27 | 2015-12-02 | 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. | 비휘발성 메모리 기반 동기화 로직 |
CN103794224B (zh) * | 2014-01-27 | 2017-01-11 | 华中科技大学 | 一种基于相变磁性材料的非易失性逻辑器件及逻辑操作方法 |
JP6151203B2 (ja) | 2014-03-04 | 2017-06-21 | 株式会社東芝 | 演算制御装置、それを備えたメモリシステム、および、情報処理装置 |
CN105210297B (zh) * | 2014-04-22 | 2018-02-06 | 华为技术有限公司 | 实现异或运算的电路、实现同或运算的电路以及阵列电路 |
US10516398B2 (en) * | 2016-05-24 | 2019-12-24 | Technion Research & Development Foundation Limited | Logic design with unipolar memristors |
JP2020038950A (ja) | 2018-09-06 | 2020-03-12 | キオクシア株式会社 | 半導体記憶装置及びそのデータ読み出し方法 |
CN111128278B (zh) * | 2018-10-30 | 2021-08-27 | 华为技术有限公司 | 内容寻址存储器、数据处理方法及网络设备 |
CN115019854B (zh) * | 2022-04-28 | 2024-07-05 | 深圳市金和思锐科技有限公司 | 基于忆阻器的存算一体存算单元和存算阵列 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5808929A (en) * | 1995-12-06 | 1998-09-15 | Sheikholeslami; Ali | Nonvolatile content addressable memory |
JPH1117123A (ja) * | 1997-06-23 | 1999-01-22 | Rohm Co Ltd | 不揮発性記憶素子 |
WO2003065583A1 (en) * | 2002-01-28 | 2003-08-07 | Rohm Co., Ltd. | Logical operation circuit and logical operation method |
US6795338B2 (en) * | 2002-12-13 | 2004-09-21 | Intel Corporation | Memory having access devices using phase change material such as chalcogenide |
JP4631090B2 (ja) * | 2004-02-19 | 2011-02-16 | 株式会社 東北テクノアーチ | 磁気抵抗効果素子を用いたロジックインメモリ回路 |
JP4475098B2 (ja) * | 2004-11-02 | 2010-06-09 | ソニー株式会社 | 記憶素子及びその駆動方法 |
-
2004
- 2004-08-03 JP JP2004226970A patent/JP4367281B2/ja not_active Expired - Fee Related
-
2005
- 2005-07-21 US US11/186,207 patent/US7221600B2/en not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8437177B2 (en) | 2011-01-20 | 2013-05-07 | Panasonic Corporation | Nonvolatile latch circuit and nonvolatile flip-flop circuit |
US8619466B2 (en) | 2011-02-07 | 2013-12-31 | Panasonic Corporation | Nonvolatile latch circuit, nonvolatile flip-flop circuit, and nonvolatile signal processing device |
Also Published As
Publication number | Publication date |
---|---|
JP2006048298A (ja) | 2006-02-16 |
US20060028247A1 (en) | 2006-02-09 |
US7221600B2 (en) | 2007-05-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4367281B2 (ja) | 演算回路 | |
Yin et al. | An ultra-dense 2FeFET TCAM design based on a multi-domain FeFET model | |
CN107910032B (zh) | 基于sram的存储器结构及其方法 | |
TWI396198B (zh) | 使用相變材料記憶元件的非揮發性內容可定址記憶體 | |
US7599210B2 (en) | Nonvolatile memory cell, storage device and nonvolatile logic circuit | |
US8315090B2 (en) | Pseudo page mode memory architecture and method | |
JP4475098B2 (ja) | 記憶素子及びその駆動方法 | |
JP2004103104A (ja) | 薄膜磁性体記憶装置 | |
US7130235B2 (en) | Method and apparatus for a sense amplifier | |
WO2004057621A1 (ja) | Cmis型半導体不揮発記憶回路 | |
EP3107105B1 (en) | Memory circuit | |
JPH088408A (ja) | 不揮発性メモリ | |
EP3142121B1 (en) | Static random access memory (sram) with programmable resistive elements | |
JP2006032867A (ja) | 記憶素子及びその駆動方法 | |
JP2002334585A (ja) | 半導体記憶装置 | |
TWI243380B (en) | Ferroelectric resistor non-volatile memory array | |
US9792981B2 (en) | Memory with read circuitry and method of operating | |
JP2005520275A (ja) | 強誘電体メモリにおける読み取り信号の増強 | |
JP6261041B2 (ja) | 不揮発性連想メモリセル及び不揮発性連想メモリ | |
JP3588376B2 (ja) | 強誘電体メモリ | |
US20230013081A1 (en) | Driving method of synapse circuit | |
Yin et al. | Ferroelectric fet based tcam designs for energy efficient computing | |
TW201733078A (zh) | 半導體積體電路 | |
Breyer et al. | Ferroelectric devices for logic in memory | |
JP4483540B2 (ja) | 記憶装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070507 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090317 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090513 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20090804 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090817 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120904 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130904 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |