(57)【要約】【課題】動作中のメモリの誤書き換えを防ぐことのできるプログラマブルロジックデバイスを提供する。【解決手段】本実施形態のプログラマブルロジックデバイスは、第１配線に接続される第１電極と、第２電極と、前記第１電極と前記第２電極との間に設けられた第１抵抗変化層と、を備え、前記第１電極に印加する電圧よりも大きな電圧を前記第２電極に印加することにより、前記第１電極と前記第２電極との間の抵抗が低抵抗状態から高抵抗状態に変化する第１メモリ素子と、前記第２電極に接続される第３電極と、第２配線に接続される第４電極と、前記第３電極と前記第４電極との間に設けられた第２抵抗変化層と、を備え、前記第３電極に印加する電圧よりも大きな電圧を前記第４電極に印加することにより、前記第３電極と前記第４電極との間の抵抗が低抵抗状態から高抵抗状態に変化する第２メモリ素子と、前記第２電極および前記第３電極にゲートが接続される第１トランジスタと、を備えている。【選択図】図４
2015173224.tif 000002
【特許請求の範囲】
【請求項１】
第１配線に接続される第１電極と、第２電極と、前記第１電極と前記第２電極との間に設けられた第１抵抗変化層と、を備え、前記第１電極に印加する電圧よりも大きな電圧を前記第２電極に印加することにより、前記第１電極と前記第２電極との間の抵抗が低抵抗状態から高抵抗状態に変化する第１メモリ素子と、
前記第２電極に接続される第３電極と、第２配線に接続される第４電極と、前記第３電極と前記第４電極との間に設けられた第２抵抗変化層と、を備え、前記第３電極に印加する電圧よりも大きな電圧を前記第４電極に印加することにより、前記第３電極と前記第４電極との間の抵抗が低抵抗状態から高抵抗状態に変化する第２メモリ素子と、
前記第２電極および前記第３電極にゲートが接続される第１トランジスタと、
を備えたプログラマブルロジックデバイス。
【請求項２】
前記第１メモリ素子および前記第２メモリ素子のうちの一方が低抵抗状態でかつ他方が高抵抗状態である場合に、前記第１配線に第１電圧を印加し、前記第２配線に前記第１電圧よりも小さい第２電圧を印加することで、前記第１トランジスタの状態を制御する請求項１に記載のプログラマブルロジックデバイス。
【請求項３】
前記第２電極および前記第３電極にソースおよびドレインの一方が接続され、前記ソースおよびドレインの他方が第３配線に接続される第２トランジスタと、
前記第１および第２配線と、前記第２トランジスタのゲートと、前記第３配線と、に電圧を供給することにより前記第１メモリ素子および前記第２メモリ素子のうちの一方を低抵抗状態とし、他方を高抵抗状態とする制御回路と、
を更に備えた請求項１または２記載のプログラマブルロジックデバイス。
【請求項４】
前記制御回路は、
前記第１配線に第３電圧を印加し、前記第３配線に前記第３電圧よりも大きな第４電圧を印加するとともに前記第２トランジスタをオン状態にすることで、前記第１メモリ素子を高抵抗状態から低抵抗状態へと切り替え、
前記第１配線に第５電圧を印加し、前記第３配線に前記第５電圧よりも大きな第６電圧を印加するとともに前記第２トランジスタをオン状態にすることで、前記第１メモリ素子を低抵抗状態から高抵抗状態へと切り替え、
前記第３配線に第７電圧を印加し、前記第２配線に前記第７電圧よりも大きな第８電圧を印加するとともに前記第２トランジスタをオン状態にすることで、前記第２メモリ素子を高抵抗状態から低抵抗状態へと切り替え、
前記第３配線に第９電圧を印加し、前記第２配線に前記第９電圧よりも大きな第１０電圧を印加するとともに前記第２トランジスタをオン状態にすることで、前記第２メモリ素子を低抵抗状態から高抵抗状態へと切り替える請求項３記載のプログラマブルロジックデバイス。
【請求項５】
前記制御回路は、
前記第１メモリ素子を高抵抗状態から低抵抗状態へと切り替える際に、前記第２配線に前記第４電圧を印加し、
前記第１メモリ素子を低抵抗状態から高抵抗状態へと切り替える際に、前記第２配線に前記第６電圧を印加し、
前記第２メモリ素子を高抵抗状態から低抵抗状態へと切り替える際に、前記第１配線に前記第７電圧を印加し、
前記第２メモリ素子を低抵抗状態から高抵抗状態へと切り替える際に、前記第１配線に前記第９電圧を印加する請求項４記載のプログラマブルロジックデバイス。
【請求項６】
前記制御回路は、
前記第１配線に第３電圧を印加し、前記第３配線に前記第３電圧よりも小さな第４電圧を印加するとともに前記第２トランジスタをオン状態にすることで、前記第１メモリ素子を高抵抗状態から低抵抗状態へと切り替え、
前記第１配線に第５電圧を印加し、前記第３配線に前記第５電圧よりも大きな第６電圧を印加するとともに前記第２トランジスタをオン状態にすることで、前記第１メモリ素子を低抵抗状態から高抵抗状態へと切り替え、
前記第３配線に第７電圧を印加し、前記第２配線に前記第７電圧よりも小さな第８電圧を印加するとともに前記第２トランジスタをオン状態にすることで、前記第２メモリ素子を高抵抗状態から低抵抗状態へと切り替え、
前記第３配線に第９電圧を印加し、前記第２配線に前記第９電圧よりも大きな第１０電圧を印加するとともに前記第２トランジスタをオン状態にすることで、前記第２メモリ素子を高抵抗状態から低抵抗状態へと切り替える請求項３記載のプログラマブルロジックデバイス。
【請求項７】
前記制御回路は、
前記第１メモリ素子を高抵抗状態から低抵抗状態へと切り替える際に、前記第２配線に前記第４
電圧を印加し、
前記第１メモリ素子を低抵抗状態から高抵抗状態へと切り替える際に、前記第２配線に前記第６
電圧を印加し、
前記第２メモリ素子を高抵抗状態から低抵抗状態へと切り替える際に、前記第１配線に前記第７電圧を印加し、
前記第２メモリ素子を低抵抗状態から高抵抗状態へと切り替える際に、前記第１配線に前記第９電圧を印加する請求項６記載のプログラマブルロジックデバイス。
【請求項８】
前記制御回路は、
前記第２トランジスタをオン状態にし、その後、前記第１配線および前記第２配線の少なくとも一方に電圧を印加することで、前記第１あるいは第２メモリ素子の抵抗状態を変化させる請求項３乃至７のいずれかに記載のプログラマブルロジックデバイス。
【請求項９】
前記第１電極と前記第２電極は異なる材料であって、前記第３電極と前記第４電極は異なる材料である請求項１乃至８のいずれかに記載のプログラマブルロジックデバイス。
【請求項１０】
前記第１電極と前記第３電極は同じ材料であって、前記第２電極と前記第４電極は同じ材料である請求項１乃至９のいずれかに記載のプログラマブルロジックデバイス。
【請求項１１】
前記第１および第２抵抗変化層は、シリコン酸化物、ハフニウム酸化物、アルミ酸化物、チタン酸化物、およびタンタル酸化物のいずれかの材料を含む請求項１乃至１０のいずれかに記載のプログラマブルロジックデバイス。
【請求項１２】
前記第１電極はチタンあるいは窒化チタンを含む請求項１乃至１１のいずれかに記載のプログラマブルロジックデバイス。
【請求項１３】
前記第２電極はニッケルを含む請求項１乃至１２のいずれかに記載のプログラマブルロジックデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、プログラマブルロジックデバイスに関する。
【背景技術】
【０００２】
プログラマブルロジックデバイスは、チップ製造後に回路を書き換えることができる半導体集積回路である。プログラマブルロジックデバイスは複数の配線を有し、これらの配線のうち選択された２本の配線どうしを電気的に接続状態または非接続状態にする。選択された２本の配線が接続状態または非接続状態となるように制御するためにいくつかの手法が存在する。
【０００３】
１つの手法は、トランジスタとメモリを用いるものである。メモリは電気的にプログラム可能であり、プログラムされた情報に基づいてトランジスタのオン／オフが切り替わる。また、上記メモリとして、２端子の抵抗変化メモリを用いたものが知られている。この抵抗変化メモリは、２つの電極と、これら２つの電極の間に設けられた抵抗変化層を有する。上記２つの電極間に所定の電圧を印加することにより、抵抗変化層の抵抗状態を変化させ、２つの電極間の電気抵抗を低抵抗状態あるいは高抵抗状態に切り替えることができる。
【０００４】
このような抵抗変化メモリを用いたプログラマブルロジックデバイスは、知られている。このプログラマブルロジックデバイスには、以下のような問題点がある。このプログラマブルロジックデバイスを動作させるとき、抵抗変化メモリの電極には電源電圧（例えば、１．５Ｖ）が印加される。しかし、もし抵抗変化メモリの状態変化が起こる電圧がこの電源電圧よりも小さい場合、抵抗変化メモリに記憶されたデータが電源電圧の印加によって書き換わってしまう可能性がある。これは回路の誤動作を発生させる原因となる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第５０３２６１１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本実施形態は、動作中のメモリの誤書き換えを防ぐことのできるプログラマブルロジックデバイスを提供する。
【課題を解決するための手段】
【０００７】
本実施形態によるプログラマブルロジックデバイスは、第１配線に接続される第１電極と、第２電極と、前記第１電極と前記第２電極との間に設けられた第１抵抗変化層と、を備え、前記第１電極に印加する電圧よりも大きな電圧を前記第２電極に印加することにより、前記第１電極と前記第２電極との間の抵抗が低抵抗状態から高抵抗状態に変化する第１メモリ素子と、前記第２電極に接続される第３電極と、第２配線に接続される第４電極と、前記第３電極と前記第４電極との間に設けられた第２抵抗変化層と、を備え、前記第３電極に印加する電圧よりも大きな電圧を前記第４電極に印加することにより、前記第３電極と前記第４電極との間の抵抗が低抵抗状態から高抵抗状態に変化する第２メモリ素子と、前記第２電極および前記第３電極にゲートが接続される第１トランジスタと、を備えている。
【図面の簡単な説明】
【０００８】
【図１】抵抗変化メモリ素子を示す断面図。
【図２】一般的なＦＰＧＡの構成を示す図。
【図３】第１実施形態のプログマブルロジックデバイスのメモリセルを示す回路図。
【図４】図３に示すメモリセルを動作させるときの電圧印加条件を説明する図。
【図５】第１実施形態のプログマブルロジックデバイスの他のメモリセルを示す回路図。
【図６】図６（ａ）乃至６（ｄ）は、メモリ素子がユニポーラ型の場合のプログラム条件の一例を示す図。
【図７】図７（ａ）乃至７（ｄ）は、メモリ素子がバイポーラ型の場合のプログラム条件の一例を示す図。
【図８】図５に示すメモリセルを動作させるときの電圧印加条件を説明する図。
【図９】第２実施形態のプログマブルロジックデバイスを示すブロック図。
【発明を実施するための形態】
【０００９】
以下、実施形態について図面を参照して説明する。
【００１０】
実施形態を説明する前に、実施形態で用いられる抵抗変化メモリ素子について説明する。
【００１１】
図１は抵抗変化メモリ素子（以下では単にメモリ素子と称する）の構造の一例を示したものである。メモリ素子１０は電極１１と、抵抗変化層１２と、電極１３とを有する。抵抗変化層１２は、例えば、チタン酸化物、ハフニウム酸化物、タンタル酸化物、アルミ酸化物、またはシリコン酸化物といった金属酸化物、半導体酸化物が用いられる。また、抵抗変化層１２として、アモルファスシリコン等の半導体材料を用いてもよいし、金属酸化物、半導体酸化物、または半導体材料が積層された積層構造の積層膜でもよい。
【００１２】
電極１１、１３に所定の電圧を印加することによって、電極１１、１３間の電気抵抗を変化させることができる。ここでは、メモリ素子１０の抵抗を高抵抗状態から低抵抗状態に変化させることをセットと称し、メモリ素子１０の抵抗を低抵抗状態から高抵抗状態に変化させることをリセットと称する。また、メモリ素子１０をセットするために必要な電圧をセット電圧と称し、メモリ素子をリセットするために必要な電圧をリセット電圧と称する。
【００１３】
メモリ素子１０には、ユニポーラ型のメモリ素子と、バイポーラ型のメモリ素子がある。ユニポーラ型のメモリ素子では、セット電圧とリセット電圧との極性が同じである。例えば、メモリ素子１０をセットする場合に電極１１に印加する電圧よりも大きい電圧を電極１３に印加すると、リセットする場合にも電極１１に印加する電圧よりも大きい電圧を電極１３に印加する。
【００１４】
これに対して、バイポーラ型のメモリ素子では、セット電圧とリセット電圧の極性が逆である。例えば、メモリ素子をセットする場合に電極１１に印加する電圧よりも大きい電圧を電極１３に印加すると、リセットする場合には電極１１に印加する電圧よりも小さい電圧を電極１３に印加する。
【００１５】
あるメモリ素子がユニポーラ型のメモリ素子であるかバイポーラ型のメモリ素子であるかは、電極や抵抗変化層を構成する材料、あるいはフォーミング時における電圧印加条件、すなわち製造後にメモリ素子の電極間に所定の電圧を印加することで、メモリ機能を活性化させることの電圧印加条件等で決まる。同様に、セット電圧やリセット電圧の極性も、電極や抵抗変化層を構成する材料、あるいはフォーミングの電圧印加条件等で決まる。
【００１６】
メモリ素子の型、セット電圧、リセット電圧の極性が一端決まってしまうと、それ以後これらが変わることはない。したがって、メモリ素子１０のセット、リセットを正しく行うためには、電極１１と電極１３は明確に区別される必要がある。本明細書では、電極１１と電極１３のうち、メモリ素子１０をリセットする際に大きい電圧が印加されるほうをアノードと称し、他方をカソードと称する。もしメモリ素子１０がバイポーラ型のメモリ素子ならば、アノードよりもカソードに大きな電圧を印加することでセットを行う。逆にメモリ素子がユニポーラ型のメモリ素子ならば、カソードよりもアノードに大きな電圧を印加することでセットを行う。
【００１７】
（第１実施形態）
まず、第１実施形態によるプログラマブルロジックデバイスについて説明する前に、このプログラマブルロジックデバイスが用いられる一般的なＦＰＧＡ（Field Programmable Gate Array）の構成について説明する。図２に示すように、一般に、ＦＰＧＡ１００は、アレイ状に配置された複数の基本ブロック１１０を有している。各基本ブロック１１０は、隣接する基本ブロック１１０と配線で接続される。各基本ブロック１１０は、論理ブロック１２０と、スイッチブロック１３０と、を備えている。論理ブロック１２０は論理演算を行うブロックであり、その基本構成は真理値表を実装したルックアップテーブルを用いて行う。各スイッチブロック１３０は、隣接する基本ブロック１１０に接続される配線の接続／非接続を制御し、任意の方向へ信号を伝達することを可能にする。また、各スイッチブロック１３０は、このスイッチブロック１３０が含まれる基本ブロック１１０に属する論理ブロック１２０との接続も行う。論理ブロック１２０およびスイッチブロック１３０はともにプログラマブルロジックデバイス、すなわちコンフィグレーションメモリに記憶されたデータに基づいて接続の制御を行うことができる。
【００１８】
第１実施形態によるプログラマブルロジックデバイスについて図３を参照して説明する。第１実施形態のプログラマブルロジックデバイスは少なくとも１個のメモリセルを備えており、このメモリセルを図３に示す。このメモリセルは、メモリ素子に記憶されたデータに応じてトランジスタのオン／オフが切り替わる。この実施形態のメモリセルは、図１に示した構造を有する２つのメモリ素子１０ａ、１０ｂと、１つのトランジスタ２０と、を備えている。ここではトランジスタ２０はｎチャネルトランジスタとする。図３およびこれ以降の図に記載のメモリ素子において、「＋」と付した端子（電極）は上記のアノードを示しており、「−」と付した端子（電極）は上記のカソードを示している。メモリ素子１０ａのアノードはメモリ１０ｂのカソードに接続されており、その接続点１５にはトランジスタ２０のゲートも接続されている。メモリ素子１０ａのカソードは配線３０ａに接続されており、メモリ素子１０ｂのアノードは配線３０ｂに接続されている。
【００１９】
図３に示す第１実施形態のメモリセルを動作させるときの電圧印加条件を図４に示す。配線３０ａに第１の動作電圧（例えば、１．５Ｖ）を印加し、配線３０ｂに第１の動作電圧よりも小さい第２の動作電圧（例えば、０Ｖ）を印加する。メモリ素子１０ａおよびメモリ素子１０ｂは、状態が互いに逆になるようにプログラムされる。例えば、メモリ素子１０ａが低抵抗状態でメモリ素子１０ｂが高抵抗状態の場合、メモリ素子１０ａを介して第１の動作電圧がトランジスタ２０のゲートに印加される。このときトランジスタ２０はオン状態となる。逆にメモリ素子１０ａが高抵抗状態でメモリ素子１０ｂが低抵抗状態の場合、メモリ素子１０ｂを介して第２の動作電圧がトランジスタ２０のゲートに印加される。このときトランジスタ２０はオフ状態となる。図４に示す電圧条件において、メモリ素子１０ａ、１０ｂにおいてはアノードの電位よりもカソードの電位のほうが高くなる。
【００２０】
ここで、上記の第１、第２の動作電圧の印加により、メモリ素子に記憶されたデータが書き換わってしまう問題について考える。上記の第１、第２の動作電圧はメモリセルを動作させるための電圧であり、これらの電圧によってメモリのデータが書き換わってしまうと、プログラマブルロジックデバイスを含む回路が誤動作してしまう恐れがある。ところで、一般のメモリ素子において、セット電圧とリセット電圧を比較すると、リセット電圧のほうが小さい場合が多い。また、電圧の大きさのばらつきも、リセット電圧のほうが大きいことが多い。したがって、上記の動作電圧によってメモリ素子が誤ってセットされてしまう確率よりも、メモリ素子が誤ってリセットされてしまう確率のほうが大きい。
【００２１】
本実施形態では、図３に示すように、２つのメモリ素子１０ａ、１０ｂのうちの一方のメモリ素子１０ａのアノードを他方のメモリ素子１０ｂのカソードに接続している。したがって、メモリセルの動作中におけるメモリ素子１０ａ、１０ｂの電極の電位は、いずれのメモリ素子の場合もアノードの電位よりもカソードの電位のほうが大きくなる。メモリ素子の誤リセットは、アノードにカソードよりも大きい電圧が印加されるときに発生するため、本実施形態においてはメモリ素子の誤リセットを防ぐことができる。
【００２２】
一方、特許文献１に記載のプログラマブルロジックデバイスでは、２つのメモリ素子のアノード同士、あるいはカソード同士が接続されている。この場合、プログラマブルロジックデバイスの動作中にはいずれかのメモリ素子のアノードの電位はカソードの電位よりも大きくなってしまうため、動作中の誤リセットが発生する可能性がある。
【００２３】
次に、本実施形態のプログラマブルロジックデバイスにおいて、メモリ素子１０ａ、１０ｂをプログラムするための条件について述べる。ここでは図５に示すように、メモリ素子１０ａ、１０ｂの接続点１５にドレインが接続されたトランジスタ２２を更に有するメモリセルを備えたプログラマブルロジックデバイスについて考える。図５に示すトランジスタ２２はｎチャネルトランジスタであるが、ｐチャネルトランジスタを用いてもよい。
【００２４】
図６（ａ）乃至６（ｄ）は、メモリ素子１０ａ、１０ｂがユニポーラ型の場合のプログラム条件の一例を示す図である。前述のように、ユニポーラ型のメモリ素子をセットするときにはアノードにカソードよりも大きい電圧を印加し、同様にリセットするときにも、アノードにカソードよりも大きい電圧を印加する。
【００２５】
ここで、例えば予めメモリ素子１０ａ、１０ｂがそれぞれ低抵抗状態、高抵抗状態である場合から、メモリ素子１０ａ、１０ｂがそれぞれ高抵抗状態、低抵抗状態である場合に変化させるときを考える。このときは最初にメモリ素子１０ａを低抵抗状態から高抵抗状態に変化させ、その後にメモリ素子１０ｂを高抵抗状態から低抵抗状態に変化させることが好ましい。もし先にメモリ素子１０ｂを高抵抗状態から低抵抗状態に変化させた場合、メモリ素子１０ａ、１０ｂがともに低抵抗状態となってしまい、第１の配線と第２の配線の間に大きな電流が流れてしまう可能性がある。しかし上記の好ましいプログラム方法の場合、第１の配線と第２の配線の間に少なくとも１つの高抵抗状態のメモリ素子が存在するため、これらの配線の間に大きな電流が流れることが防止できる。同様に、予めメモリ素子１０ａ、１０ｂがそれぞれ高抵抗状態、低抵抗状態である場合から、メモリ素子１０ａ、１０ｂがそれぞれ低抵抗状態、高抵抗状態である場合に変化させる場合は、最初にメモリ素子１０ｂを低抵抗状態から高抵抗状態に変化させ、その後にメモリ素子１０ａを高抵抗状態から低抵抗状態に変化させることが好ましい。
【００２６】
図６（ａ）に、メモリ素子１０ａ、１０ｂがいずれも高抵抗状態である場合にメモリ素子１０ａをセットするための電圧の一例を示す。配線３０ａに第１の電圧（例えば、０Ｖ）を印加し、配線３４に上記第１の電圧よりも大きい第２の電圧（例えば、３Ｖ）を印加するとともにトランジスタ２２のゲートに第２の電圧よりも大きな電圧を印加して、トランジスタ２２をオン状態とする。なお、トランジスタ２２がｐチャネルトランジスタである場合には、トランジスタ２２のゲートには第２の電圧よりも小さい電圧を印加する。これによりメモリ素子１０ａは低抵抗状態に変化する。トランジスタ２２がオンした状態のとき、配線３０ｂには上記第２の電圧を超えない電圧を印加してもよいし、浮遊状態にしてもよい。しかし、配線３０ｂには好ましくは第２の電圧と同じ電圧を印加する。これによりメモリ素子１０ｂは高抵抗状態に維持される。
【００２７】
図６（ｂ）に、メモリ素子１０ａ、１０ｂがそれぞれ低抵抗状態、高抵抗状態である場合にメモリ素子１０ａをリセットするための電圧の一例を示す。配線３０ａに第３の電圧（例えば、０Ｖ）を印加し、配線３４に第３の電圧よりも大きい第４の電圧（例えば、２Ｖ）を印加するとともにトランジスタ２２のゲートに第４の電圧よりも大きい電圧を印加し、トランジスタ２２をオン状態とする。なお、トランジスタ２２がｐチャネルトランジスタである場合には、トランジスタ２２のゲートに第４の電圧よりも小さい電圧を印加する。これによりメモリ素子１０ａは高抵抗状態に変化する。トランジスタ２２がオンした状態のとき、配線３０ｂには第４の電圧を超えない電圧を印加してもよいし、浮遊状態にしてもよい。しかし、配線３０ｂには好ましくは第４の電圧と同じ電圧を印加する。これによりメモリ素子１０ｂは高抵抗状態に維持される。
【００２８】
図６（ｃ）に、メモリ素子１０ａ、１０ｂがいずれも高抵抗状態である場合にメモリ素子１０ｂをセットするための電圧の一例を示す。配線３４に第１の電圧（例えば、０Ｖ）を印加し、配線３０ｂに第１の電圧よりも大きい第２の電圧（例えば、３Ｖ）を印加するとともにトランジスタ２２のゲートに第１の電圧よりも大きな電圧を印加して、トランジスタ２２をオン状態とする。なお、トランジスタ２２がｐチャネルトランジスタである場合には、トランジスタ２２のゲートには第１の電圧よりも小さい電圧を印加する。これによりメモリ素子１０ｂは低抵抗状態に変化する。トランジスタ２２がオンした状態のとき、配線３０ａには第１の電圧を下回らない電圧を印加してもよいし、浮遊状態にしてもよい。しかし、配線３０ａには好ましくは第１の電圧と同じ電圧を印加する。これによりメモリ素子１０ａは高抵抗状態に維持される。
【００２９】
図６（ｄ）に、メモリ素子１０ａ、１０ｂがそれぞれ高抵抗状態、低抵抗状態である場合にメモリ素子１０ｂをリセットするための電圧の一例を示す。配線３４に第３の電圧（例えば、０Ｖ）を印加し、配線３０ｂに第３の電圧よりも大きい第４の電圧（例えば、２Ｖ）を印加するとともにトランジスタ２２のゲートに第３の電圧よりも大きい電圧を印加し、トランジスタ２２をオン状態とする。なお、トランジスタ２２がｐチャネルトランジスタである場合には、トランジスタ２２のゲートには第３の電圧よりも小さい電圧を印加する。これによりメモリ素子１０ｂは高抵抗状態に変化する。トランジスタ２２がオンした状態のとき、配線３０ａには第３の電圧を下回らない電圧を印加してもよいし、浮遊状態にしてもよい。しかし、配線３０ａには好ましくは第３の電圧と同じ電圧を印加する。これによりメモリ素子１０ａは高抵抗状態に維持される。
【００３０】
ところで、上記に示したプログラム条件では、配線３４に電圧を印加しかつトランジスタ２２をオン状態にすることで、配線１５の電位を所定の値に制御している。もしトランジスタ２２がオフ状態の場合、配線１５は浮遊状態となる。この状態で配線３０ａまたは配線３０ｂに電圧が印加されてしまうと、メモリ素子１０ａ、１０ｂの端子間の電位差を正確に制御することができず、誤ったプログラムが発生する可能性がある。例えば、メモリ素子１０ａ、１０ｂが共に高抵抗状態のときにおいて、図６（ａ）に示すようにメモリ素子１０ａをセットさせる場合を考える。トランジスタ２２がオフ状態であり配線１５が浮遊状態になっていて、この状態で配線３０ａに第１の電圧（例えば、０Ｖ）、配線３０ｂに第２の電圧（例えば、３Ｖ）を印加すると、配線１５の電位はメモリ素子１０ａとメモリ素子１０ｂの抵抗比によって決定される。そのため、もしメモリ素子１０ａ、１０ｂの特性のばらつき等の影響でメモリ素子１０ａの抵抗よりもメモリ素子１０ｂの抵抗のほうが高くなっている場合、配線１５の電位は配線３０ａの電位とほぼ等しくなり、メモリ素子１０ｂが誤ってセットされてしまう可能性がある。
【００３１】
上記の誤ったプログラムを防ぐためには、配線３４に電圧を印加しかつトランジスタ２２をオン状態にするタイミングを、配線３０ａあるいは配線３０ｂに電圧を印加するタイミングよりも先にすることが有効である。このことは図６（ａ）乃至図６（ｄ）のいずれのプログラム条件においても有効である。
【００３２】
またメモリ素子１０ａ、１０ｂがユニポーラ型のメモリの場合、セット電圧よりもリセット電圧のほうが小さくなることが多い。したがって、前記第２の電圧よりも前記第４の電圧は小さくなる。
【００３３】
図７（ａ）乃至図７（ｄ）に、メモリ素子がバイポーラ型の場合のプログラム条件を示す。前述のように、バイポーラ型のメモリ素子をセットするときにはカソードにアノードよりも大きい電圧を印加し、逆にリセットするときには、アノードにカソードよりも大きい電圧を印加する。
【００３４】
この場合も、例えば予めメモリ素子１０ａ、１０ｂがそれぞれ低抵抗状態、高抵抗状態である場合から、メモリ素子１０ａ、１０ｂがそれぞれ高抵抗状態、低抵抗状態である場合に変化させる場合は、最初にメモリ素子１０ａを低抵抗状態から高抵抗状態に変化させ、その後にメモリ素子１０ｂを高抵抗状態から低抵抗状態に変化させることが好ましい。同様に、予めメモリ素子１０ａ、１０ｂがそれぞれ高抵抗状態、低抵抗状態である場合から、メモリ素子１０ａ、１０ｂがそれぞれ低抵抗状態、高抵抗状態である場合に変化させる場合は、最初にメモリ素子１０ｂを低抵抗状態から高抵抗状態に変化させ、その後にメモリ素子１０ａを高抵抗状態から低抵抗状態に変化させることが好ましい。
【００３５】
図７（ａ）に、メモリ素子１０ａ、１０ｂがいずれも高抵抗状態である場合にメモリ素子１０ａをセットするための電圧の一例を示す。配線３４に第５の電圧（例えば、０Ｖ）を印加し、配線３０ａに第５の電圧よりも大きい第６の電圧（例えば、３Ｖ）を印加するとともに、トランジスタ２２のゲートに第５の電圧よりも大きい電圧を印加し、トランジスタ２２をオン状態とする。なお、トランジスタ２２がｐチャネルトランジスタである場合には、トランジスタ２２のゲートには第５の電圧よりも小さい電圧を印加する。これによりメモリ素子１０ａは低抵抗状態に変化する。トランジスタ２２がオン状態となっているときに、配線３０ｂには第５の電圧を下回らない電圧を印加してもよいし、浮遊状態にしてもよい。しかし、配線３０ｂには好ましくは第５の電圧と同じ電圧を印加する。これによりメモリ素子１０ｂは高抵抗状態に維持される。
【００３６】
図７（ｂ）に、メモリ素子１０ａ、１０ｂがそれぞれ低抵抗状態、高抵抗状態である場合にメモリ素子１０ａをリセットするための電圧の一例を示す。配線３０ａに第７の電圧（例えば、０Ｖ）を印加し、配線３４に第７の電圧よりも大きい第８の電圧（例えば、３Ｖ）を印加するとともにトランジスタ２２のゲートに第８の電圧よりも大きい電圧を印加し、トランジスタ２２をオン状態とする。なお、トランジスタ２２がｐチャネルトランジスタである場合には、トランジスタ２２のゲートには第８の電圧よりも小さい電圧を印加する。これによりメモリ素子１０ａは高抵抗状態に変化する。トランジスタ２２がオン状態となっているときに、配線３０ｂには第８の電圧を下回らない電圧を印加してもよいし、浮遊状態にしてもよい。しかし、配線３０ｂには好ましくは第８の電圧と同じ電圧を印加する。これによりメモリ素子１０ｂは高抵抗状態に維持される。
【００３７】
図７（ｃ）に、メモリ素子１０ａ、１０ｂがいずれも高抵抗状態である場合にメモリ素子１０ｂをセットするための電圧の一例を示す。配線３０ｂに第５の電圧（例えば、０Ｖ）を印加し、配線３４に第５の電圧よりも大きい第６の電圧（例えば、３Ｖ）を印加するとともに、トランジスタ２２のゲートに第６の電圧よりも大きい電圧を印加して、トランジスタ２２をオン状態とする。なお、トランジスタ２２がｐチャネルトランジスタの場合にはトランジスタ２２のゲートには第６の電圧よりも小さな電圧を印加する。これによりメモリ素子１０ｂは低抵抗状態に変化する。トランジスタ２２がオン状態になっているときに、配線３０ａには第６の電圧を超えない電圧を印加してもよいし、浮遊状態にしてもよい。しかし、配線３０ａには好ましくは第６の電圧と同じ電圧を印加する。これによりメモリ素子１０ａは高抵抗状態に維持される。
【００３８】
図７（ｄ）に、メモリ素子１０ａ、１０ｂがそれぞれ高抵抗状態、低抵抗状態である場合にメモリ素子１０ｂをリセットするための電圧の一例を示す。配線３４に第７の電圧（例えば、０Ｖ）を印加し、配線３０ｂに第７の電圧よりも大きい第８の電圧（例えば、３Ｖ）を印加するとともにトランジスタ２２のゲートに第７の電圧よりも大きい電圧を印加して、トランジスタ２２をオン状態とする。なお、トランジスタ２２がｐチャンネルトランジスタの場合にはトランジスタ２２のゲートには第７の電圧よりも小さい電圧を印加する。これによりメモリ素子１０ｂは高抵抗状態に変化する。トランジスタ２２がオン状態になっているときに、配線３０ａには第７の電圧を超えない電圧を印加してもよいし、浮遊状態にしてもよい。しかし配線３０ａには好ましくは第７の電圧と同じ電圧を印加する。これによりメモリ素子１０ａは高抵抗状態に維持される。
【００３９】
図７（ａ）乃至図７（ｄ）に示したプログラム条件においても、配線３４に電圧を印加しかつトランジスタ２２をオン状態にするタイミングを、配線３０ａあるいは配線３０ｂに電圧を印加するタイミングよりも先にすることが有効である。これにより、意図したメモリ素子と異なるメモリ素子が誤ってプログラムされることを防ぐことができる。
【００４０】
図８に、図５に示すメモリセルを動作させるときの電圧印加条件の一例を示す。メモリ素子の型がバイポーラ型およびユニポーラ型のいずれの場合でも同様であり、配線３０ａに第１の動作電圧（例えば、１．５Ｖ）を印加し、配線３０ｂに第１の動作電圧よりも小さい第２の動作電圧（例えば、０Ｖ）を印加するとともにトランジスタ２２をオフ状態とする。
【００４１】
前述したように、メモリ素子の電極や抵抗変化層を構成する材料を変えることにより、電極１１、１３のうちの一方が、アノードになったりカソードになったりする。同様に、メモリ素子の電極や抵抗変化層を構成する材料を変えると、メモリ素子の型も変わる。例えば、抵抗変化層１２としてチタン酸化物やハフニウム酸化物、タンタル酸化物、アルミ酸化物、シリコン酸化物といった金属酸化物や半導体酸化物を用い、電極１１としてチタンあるいは窒化チタンを用い、電極１３にニッケルを用いた場合、メモリ素子はユニポーラ型になる。このとき電極１１がカソードとなり、電極１３がアノードとなる。すなわち、電極１３に電極１１よりも大きな電圧を印加することによりメモリ素子はセットされ、同様に電極１３に電極１１よりも大きな電圧を印加することでメモリ素子はリセットされる。
【００４２】
上記の例では電極１１と電極１３は異なる材料であったが、これらは同じ材料を用いてもよい。この場合は、メモリ素子の製造後のフォーミングをどのような電圧条件で行うかによって、電極１１と電極１３のいずれがアノードまたはカソードとなるかが決まる。
【００４３】
以上説明したように、第１実施形態によれば、動作中のメモリの誤書き換えを防ぐことのできるプログラマブルロジックデバイスを提供することができる。
【００４４】
（第２実施形態）
第２実施形態によるプログラマブルロジックデバイスを図９に示す。この第２実施形態のプログラマブルロジックデバイスは、例えば、図５に示すメモリセルがアレイ状に配置されたメモリセルアレイ２００と、選択回路２１０と、選択回路２２０と、選択回路２１０および選択回路２２０を制御する制御回路６００と、を備えている。
【００４５】
選択回路２１０は、各列方向に配置された図５に示す複数のメモリセルの配線３０ａ、３０ｂに接続され、アレイ状に配置されたメモリセルのうちの列方向に配置されたメモリセルを選択する。
【００４６】
選択回路２２０は、各行方向に配置された図５に示す複数のメモリセルのトランジスタ２２のゲートに接続され、アレイ状に配置されたメモリセルのうちの行方向に配置されたメモリセルを選択する。
【００４７】
書き込み時に制御回路６００から送られてくる書き込み電圧を、選択回路２１０は選択されたメモリセルの配線３０ａ、３０ｂに印加し、選択回路２２０は選択されたメモリセルのトランジスタ２２のゲートに印加する。これにより、選択されたメモリセル内のメモリ素子１０ａ、１０ｂに書き込みが行われる。また、書き込み時に配線３４には選択回路２１０あるいは選択回路２２０を介して制御回路６００から送られてくる書き込み電圧を印加してもよいし、図示していない別の選択回路を介して制御回路６００から送られてくる書き込み電圧を印加してもよい。
【００４８】
プログラマブルロジックデバイスの動作時に、選択されたメモリセル内のメモリ素子１０ａ、１０ｂに記憶された情報に基づいてトランジスタ２０がオン状態またはオフ状態となり、このトランジスタ２０の状態に基づいて、トランジスタ２０のソースに接続された配線とトランジスタ２０のドレインに接続された配線とが接続または非接続状態となる。
【００４９】
第２実施形態も第１実施形態と同様に、動作中のメモリの誤書き換えを防ぐことのできるプログラマブルロジックデバイスを提供することができる。
【００５０】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これらの実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これらの実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【００５１】
１０、１０ａ、１０ｂ  メモリ素子（抵抗変化メモリ素子）
１１  電極
１２  抵抗変化層
１３  電極
１５  配線
２０  トランジスタ
２２  トランジスタ
３０ａ、３０ｂ  配線
３４  配線
２００  メモリセルアレイ
２１０  選択回路
２２０  選択回路
６００  制御回路
【図１】
2015173224.tif 000003
【図２】
2015173224.tif 000004
【図３】
2015173224.tif 000005
【図４】
2015173224.tif 000006
【図５】
2015173224.tif 000007
【図６】
2015173224.tif 000008
【図７】
2015173224.tif 000009
【図８】
2015173224.tif 000010
【図９】
2015173224.tif 000011