JP2005109960A - フィールド・プログラマブル・ゲート・アレイ - Google Patents
フィールド・プログラマブル・ゲート・アレイ Download PDFInfo
- Publication number
- JP2005109960A JP2005109960A JP2003341611A JP2003341611A JP2005109960A JP 2005109960 A JP2005109960 A JP 2005109960A JP 2003341611 A JP2003341611 A JP 2003341611A JP 2003341611 A JP2003341611 A JP 2003341611A JP 2005109960 A JP2005109960 A JP 2005109960A
- Authority
- JP
- Japan
- Prior art keywords
- voltage
- feram
- data
- line
- level
- 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.)
- Pending
Links
Images
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
- Logic Circuits (AREA)
Abstract
【課題】 FPGAに内蔵するFeRAMの省スペース化を図るとともに、その実装の高密度化を図るようにFPGAの提供。
【解決手段】 FeRAMは、複数のメモリセルM00〜Mnnからなる。メモリセルM00は、SRAM4と、FeRAM5−0〜5−nとからなる。SRAM4は、インバータ6、7と、MOSトランジスタ8、9とからなる。FeRAM5−0〜5−nは、強誘電体キャパシタC01、C02のみから構成されている。このため、FeRAM5−0〜5−nはトランジスタを含まないので、FeRAMは省スペース化が図れるとともに、その実装の高密度化を実現可能となる。
【選択図】 図2
【解決手段】 FeRAMは、複数のメモリセルM00〜Mnnからなる。メモリセルM00は、SRAM4と、FeRAM5−0〜5−nとからなる。SRAM4は、インバータ6、7と、MOSトランジスタ8、9とからなる。FeRAM5−0〜5−nは、強誘電体キャパシタC01、C02のみから構成されている。このため、FeRAM5−0〜5−nはトランジスタを含まないので、FeRAMは省スペース化が図れるとともに、その実装の高密度化を実現可能となる。
【選択図】 図2
Description
本発明は、論理ゲートまたはマルチプレクサ等からなる各種の論理ブロックを基板上に多数搭載し、これらの論理ブロックの間の配線を、上記の基板上に搭載させたFeRAM(強誘電体メモリ)を使用してプログラムできるフィールド・プログラマブル・ゲート・アレイ(以下、FPGAという)に関するものである。
この種の従来のFPGAとしては、論理回路を決定するプログラムを、外付けのROM(Read Only Memory)に書き込んでおき、FPGAの使用時(電源投入時)にその外付けのROMから読み出して使用するものが知られている。
しかし、このようなFPGAでは、FPGAの他の外付けのROMが必要となる上に、プログラムの変更が必要な場合にはそのROMを交換する必要がある。また、ROMからのプログラムの読み出しには、一般に時間がかかるという不具合がある。さらに、複数のプログラムを持つようにするには、複数のROMが必要になるという不都合がある。
しかし、このようなFPGAでは、FPGAの他の外付けのROMが必要となる上に、プログラムの変更が必要な場合にはそのROMを交換する必要がある。また、ROMからのプログラムの読み出しには、一般に時間がかかるという不具合がある。さらに、複数のプログラムを持つようにするには、複数のROMが必要になるという不都合がある。
また、従来の他のFPGAとしては、論理回路を決定するプログラムを格納するEEPROM(電気的に消去できるリード・オンリ・メモリ)を内蔵するものが知られている。
しかし、このようなFPGAでは、内蔵するEEPROMの内容を書き換えできるが、EEPROMのデータの消去・書き込み時に高い電圧が必要となる。このため、今日のように電源電圧が低電圧の環境下では、別途、電源が必要になるという不具合がある。また、複数のプログラムを持つようにするには、そのプログラムの個数に応じて複数のEEPROMを内蔵する必要があるので、EEPROMの占有面積が大きくなり、論理回路を構築するための面積が小さくなるので、現実的ではない。
しかし、このようなFPGAでは、内蔵するEEPROMの内容を書き換えできるが、EEPROMのデータの消去・書き込み時に高い電圧が必要となる。このため、今日のように電源電圧が低電圧の環境下では、別途、電源が必要になるという不具合がある。また、複数のプログラムを持つようにするには、そのプログラムの個数に応じて複数のEEPROMを内蔵する必要があるので、EEPROMの占有面積が大きくなり、論理回路を構築するための面積が小さくなるので、現実的ではない。
そこで、このような不都合を解決するFPGAとして、論理回路を決定するプログラムを格納するメモリとしてFeRAM(FeRAM)を内蔵し、FPGAの回路構成を動的に変化させるようにしたものが知られている(例えば、非特許文献1参照)。
日経マイクロデバイス 2002年7月号(P126〜P127の記載内容およびP127の図3参照)
日経マイクロデバイス 2002年7月号(P126〜P127の記載内容およびP127の図3参照)
ところが、非特許文献1に記載されるFPGAでは、複数のプログラムを格納すべきFeRAMをFPGAに内蔵する必要がある。しかし、その従来のFPGAでは、FPGAに内蔵(搭載)するFeRAMの省スペース化を図ることができない上に、その実装の高密度化を図ることがきないという不都合が考えられる。
そこで、本発明の目的は、FPGAに内蔵するFeRAMの省スペース化を図るとともに、その実装の高密度化を図るようにしたフィールド・プログラマブル・ゲート・アレイを提供することにある。
そこで、本発明の目的は、FPGAに内蔵するFeRAMの省スペース化を図るとともに、その実装の高密度化を図るようにしたフィールド・プログラマブル・ゲート・アレイを提供することにある。
上記の課題を解決し本発明の目的を達成するために、第1〜第8の各発明は、以下のように構成した。
すなわち、第1の発明は、各種の論理ブロックを基板上に多数搭載し、これらの論理ブロックの間の配線を、前記基板上に搭載させたFeRAMを使用してプログラムできるフィールド・プログラマブル・ゲート・アレイであって、前記FeRAMは、複数のメモリセルと、前記メモリセルを選択するワード線と、前記メモリセルに対してデータの読み出し書き込みを行う一対の第1および第2のビット線とを含み、前記各メモリセルは、1つのSRAMセルと複数のFeRAMセルとを含み、前記SRAMセルは、データを記憶するフリップフロップと、前記フリップフロップに対してデータの読み出し書き込みを行う第1および第2のトランジスタとからなり、前記各FeRAMセルは、データを記憶する2つの強誘電体キャパシタからなり、前記第1および第2のトランジスタは、その制御端子を前記ワード線にそれぞれ接続させ、その第1の端子を前記第1および第2のビット線にそれぞれ接続させ、その第2の端子を前記フリップフロップの入出力端子と一対の第1および第2の出力線とにそれぞれ接続させ、かつ、2つの強誘電体キャパシタは、その一方の電極を前記第1および第2の出力線にそれぞれ接続させ、その他方の電極をポンプ線にそれぞれ共通接続させるようにした。
すなわち、第1の発明は、各種の論理ブロックを基板上に多数搭載し、これらの論理ブロックの間の配線を、前記基板上に搭載させたFeRAMを使用してプログラムできるフィールド・プログラマブル・ゲート・アレイであって、前記FeRAMは、複数のメモリセルと、前記メモリセルを選択するワード線と、前記メモリセルに対してデータの読み出し書き込みを行う一対の第1および第2のビット線とを含み、前記各メモリセルは、1つのSRAMセルと複数のFeRAMセルとを含み、前記SRAMセルは、データを記憶するフリップフロップと、前記フリップフロップに対してデータの読み出し書き込みを行う第1および第2のトランジスタとからなり、前記各FeRAMセルは、データを記憶する2つの強誘電体キャパシタからなり、前記第1および第2のトランジスタは、その制御端子を前記ワード線にそれぞれ接続させ、その第1の端子を前記第1および第2のビット線にそれぞれ接続させ、その第2の端子を前記フリップフロップの入出力端子と一対の第1および第2の出力線とにそれぞれ接続させ、かつ、2つの強誘電体キャパシタは、その一方の電極を前記第1および第2の出力線にそれぞれ接続させ、その他方の電極をポンプ線にそれぞれ共通接続させるようにした。
第2の発明は、第1の発明において、前記2つの強誘電体キャパシタへデータを書き込むときには、前記ポンプ線の電圧を、所定の電圧値からなる第1の電圧とそれよりもレベルの低い所定の電圧値からなる第2の電圧との中間電圧を基準に、前記第1の電圧、前記第2の電圧、および前記中間電圧の順序で変化させ、前記2つの強誘電体キャパシタのデータを前記両出力線に読み出して再書き込みするときには、前記ポンプ線の電圧を、前記中間電圧を基準に、前記第2の電圧および前記第1の電圧の順序で変化させ、次に前記第2の電圧および前記第1の電圧の順序でまたは前記第1の電圧および前記第2の電圧の順序で変化させる過程を経たのち、前記中間電圧に復帰させるようにした。
第3の発明は、第2の発明において、前記第1の電圧は電源電圧であり、前記第2の電圧は接地電圧であり、前記中間電圧は前記電源電圧と前記接地電圧との中間の電圧とした。
第4の発明は、第1、第2または第3の発明において、前記複数のメモリセルは、SRAMセルを構成する各トランジスタを第1の形成層に独立に形成するとともに、前記FeRAMセルを構成する各強誘電体キャパシタを第2の形成層に独立に構成するようにし、前記第1の形成層と前記第2の形成層とは、対応するセル同士が対向する状態となるように上下に重ねて一体に形成するようにし、かつ、前記両層とが一体となったときに、その両層に形成される対応するセル同士が電気的に接続されるようにした。
第4の発明は、第1、第2または第3の発明において、前記複数のメモリセルは、SRAMセルを構成する各トランジスタを第1の形成層に独立に形成するとともに、前記FeRAMセルを構成する各強誘電体キャパシタを第2の形成層に独立に構成するようにし、前記第1の形成層と前記第2の形成層とは、対応するセル同士が対向する状態となるように上下に重ねて一体に形成するようにし、かつ、前記両層とが一体となったときに、その両層に形成される対応するセル同士が電気的に接続されるようにした。
第5の発明は、各種の論理ブロックを基板上に多数搭載し、これらの論理ブロックの間の配線を、前記基板上に搭載させたFeRAMを使用してプログラムできるフィールド・プログラマブル・ゲート・アレイであって、前記FeRAMは、複数のメモリセルと、前記メモリセルを選択するワード線と、前記メモリセルに対してデータの読み出し書き込みを行うビット線とを含み、前記各メモリセルは、1つのSRAMセルと複数のFeRAMセルとを含み、前記SRAMセルは、データを記憶するフリップフロップと、前記フリップフロップに対してデータの読み出し書き込みを行う第1のトランジスタとからなり、前記各FeRAMセルは、データを記憶する2つの強誘電体キャパシタからなり、前記第1のトランジスタは、制御端子を前記ワード線に接続させ、第1の端子をビット線に接続させ、第2の端子を前記フリップフロップの入力端子に接続させ、かつ、前記フリップフロップの入出力端子に一対の第1および第2の出力線をそれぞれ接続させ、さらに、2つの強誘電体キャパシタは、その一方の電極を前記第1および第2の出力線にそれぞれ接続させ、その他方の電極をポンプ線にそれぞれ共通接続させるようにした。
第6の発明は、第5の発明において、前記2つの強誘電体キャパシタへデータを書き込むときには、前記ポンプ線の電圧を、所定の電圧値からなる第1の電圧とそれよりもレベルの低い所定の電圧値からなる第2の電圧との中間電圧を基準に、前記第1の電圧、前記第2の電圧、および前記中間電圧の順序で変化させ、前記2つの強誘電体キャパシタのデータを前記両出力線に読み出して再書き込みするときには、前記ポンプ線の電圧を、前記中間電圧を基準に、前記第2の電圧および前記第1の電圧の順序で変化させ、次に前記第2の電圧および前記第1の電圧の順序でまたは前記第1の電圧および前記第2の電圧の順序で変化させる過程を経たのち、前記中間電圧に復帰させるようにした。
第7の発明は、第6の発明において、前記第1の電圧は電源電圧であり、前記第2の電圧は接地電圧であり、前記中間電圧は前記電源電圧と前記接地電圧との中間の電圧とした。
第8の発明は、第5、第6または第7の発明において、前記複数のメモリセルは、SRAMセルを構成する各トランジスタを第1の形成層に独立に形成するとともに、前記FeRAMセルを構成する各強誘電体キャパシタを第2の形成層に独立に構成するようにし、前記第1の形成層と前記第2の形成層とは、対応するセル同士が対向する状態となるように上下に重ねて一体に形成するようにし、かつ、前記両層とが一体となったときに、その両層に形成される対応するセル同士が電気的に接続されるようにした。
第8の発明は、第5、第6または第7の発明において、前記複数のメモリセルは、SRAMセルを構成する各トランジスタを第1の形成層に独立に形成するとともに、前記FeRAMセルを構成する各強誘電体キャパシタを第2の形成層に独立に構成するようにし、前記第1の形成層と前記第2の形成層とは、対応するセル同士が対向する状態となるように上下に重ねて一体に形成するようにし、かつ、前記両層とが一体となったときに、その両層に形成される対応するセル同士が電気的に接続されるようにした。
このような構成からなる第1〜第8の各発明では、各FeRAMセルを強誘電体キャパシタのみから構成でき、スイッチ素子であるトランジスタを各FeRAMセルから省略できる。このため、FPGAに搭載するFeRAMの省スペース化が図れる上に、その実装の高密度化を図ることが可能となる。
例えば、第4また第8の発明にように構成すれば、その実装の高密度化を実現することができる。
例えば、第4また第8の発明にように構成すれば、その実装の高密度化を実現することができる。
以下、本発明のFPGAの第1実施形態の構成について、図面を参照して説明する。
第1実施形態に係るFPGAは、論理ゲートまたはマルチプレクサ等からなる複数の論理ブロックを基板上に多数搭載し、これらの論理ブロックの間の配線を、基板上に搭載させたFeRAM(強誘電体メモリ)を使用してプログラムできるものであり、そのFeRAMの構成の概要を図1に示す。
第1実施形態に係るFPGAは、論理ゲートまたはマルチプレクサ等からなる複数の論理ブロックを基板上に多数搭載し、これらの論理ブロックの間の配線を、基板上に搭載させたFeRAM(強誘電体メモリ)を使用してプログラムできるものであり、そのFeRAMの構成の概要を図1に示す。
第1実施形態に係るFPGAに搭載されるプログラム用のFeRAM1は、図1に示すように、複数のメモリセルM00〜Mnnが2次元マトリクス状に配置され、そのメモリセルM00〜Mnnに対応して、図中の縦方向にメモリセルM00〜Mnnに対してデータの読み書きを行うためのビット線BL0,XBL0,BL1,XBL1・・・・BLn,XBLnがそれぞれ配置され、かつ、図中の横方向にメモリセルM00〜Mnnを選択するためのワード線WL0〜WLnがそれぞれ配置されている。
一対のビット線BL0,XBL0、ビット線BL1,XBL1、・・・・ビット線BLn,XBLnの各一端側は、対応する差動変換器2−0,2−1,・・・・2−nの各出力側にそれぞれ接続されている。また、一対のビット線BL0,XBL0,ビット線BL1,XBL1、・・・・ビット線BLn,XBLnの各他端側は、対応する差動アンプ3−0,3−1,・・・・3−nの各入力側にそれぞれ接続されている。
従って、差動変換器2−0〜2−nは、書き込みデータDin0〜Dinnを反転させた反転データと非反転データとをそれぞれ出力するようになっており、非反転データがビット線BL0,BL1・・・・BLnに出力され、反転データがビット線XBL0,XBL1・・・・XBLnに出力されるようになっている。
ここで、差動変換器2−0〜2−nは、イネーブル信号ENBAによりその動作が制御されるようになっている。
ここで、差動変換器2−0〜2−nは、イネーブル信号ENBAによりその動作が制御されるようになっている。
また、差動アンプ3−0〜3−nは、ビット線BL0とビット線XBL0の出力差、ビット線BL1とビット線XBL1の出力差、・・・・ビット線BLnとビット線XBLnの出力差をそれぞれ差動増幅し、出力データDout0〜Doutnとして取り出すようになっている。
ビット線BL0,XBL0、ビット線BL1,XBL1、・・・・ビット線BLn,XBLnは、対応するMOSトランジスタQ0,Q0’、MOSトランジスタQ1,Q1’・・・・MOSトランジスタQn、Qn’のオン動作のときに、同時に接地されるようになっている。
ビット線BL0,XBL0、ビット線BL1,XBL1、・・・・ビット線BLn,XBLnは、対応するMOSトランジスタQ0,Q0’、MOSトランジスタQ1,Q1’・・・・MOSトランジスタQn、Qn’のオン動作のときに、同時に接地されるようになっている。
また、MOSトランジスタQ0,Q0,Q1,Q1’・・・・Qn,Qn’の各ゲートには同一の制御信号PREGが供給され、そのオンオフ制御が行われるようになっている。
このように構成されるFeRAM1における複数のメモリセルM00〜Mnnは、FPGA内に設けられている所望の論理回路を形成するための各スイッチ、またはFPGA内に設けられているアンド回路やオア回路を用いて組み合わせ回路を形成するためのルックアップ・テーブル(Look−up Table)の保持データに対応する。
このように構成されるFeRAM1における複数のメモリセルM00〜Mnnは、FPGA内に設けられている所望の論理回路を形成するための各スイッチ、またはFPGA内に設けられているアンド回路やオア回路を用いて組み合わせ回路を形成するためのルックアップ・テーブル(Look−up Table)の保持データに対応する。
次に、図1に示すメモリセルM00〜Mnnは同様に構成されるので、その一例としてメモリセルM00の構成について、図2を参照して説明する。
メモリセルM00は、図2に示すように、一点鎖線で囲まれたSRAMセル4と、複数のFeRAMセル5−0〜5−nとから構成されている。
また、メモリセルM00は、SRAMセル4に外部から1ビットのデータをいったん書き込み、そのデータをFeRAMセル5−0〜5−nのうちの1つに選択的に書き込んで保持できるようになっている。従って、FeRAMセル5−0〜5−nには、FPGAに係るn個またはn種類のプログラムのデータを保持できるようになっている。
メモリセルM00は、図2に示すように、一点鎖線で囲まれたSRAMセル4と、複数のFeRAMセル5−0〜5−nとから構成されている。
また、メモリセルM00は、SRAMセル4に外部から1ビットのデータをいったん書き込み、そのデータをFeRAMセル5−0〜5−nのうちの1つに選択的に書き込んで保持できるようになっている。従って、FeRAMセル5−0〜5−nには、FPGAに係るn個またはn種類のプログラムのデータを保持できるようになっている。
さらに、メモリセルM00は、SRAMセル4に書き込んだデータを外部に読み出したり、またはFeRAMセル5−0〜5−nに保持されるデータのうちの1つを選択的に読み出してSRAMセル4に格納することができるようになっている。
また、メモリセルM00は、出力線OUTHと出力線OUTLとを同電位(接地電位)とするために、上記のようにビットラインBL0がMOSトランジスタQ0を介して接地され、ビットラインXBL0がMOSトランジスタQ0’を介して接地されている。また、MOSトランジスタQ0、Q0’の各ゲートには、制御信号PREGが供給されるようになっている。
また、メモリセルM00は、出力線OUTHと出力線OUTLとを同電位(接地電位)とするために、上記のようにビットラインBL0がMOSトランジスタQ0を介して接地され、ビットラインXBL0がMOSトランジスタQ0’を介して接地されている。また、MOSトランジスタQ0、Q0’の各ゲートには、制御信号PREGが供給されるようになっている。
このような構成により、MOSトランジスタQ0、Q0’をオンにさせ、MOSトランジスタQ8、Q9をオンにすることを条件に、メモリセルM00の出力線OUTHと出力線OUTLの電位を同時に接地電位にできるのみならず、他のメモリセルM10、M20・・・・Mn0の出力線OUTHと出力線OUTLの電位を同時に接地電位にできる(図1参照)。
さらに詳述すると、SRAMセル4は、互いに逆接続されるインバータ6、7から構成され1ビットのデータを記憶するフリップフロップと、このフリップフロップに対してデータを読み書きするための2つのN型のMOSトランジスタ8、9とで構成され、電源がオフにならなければ、フリップフロップに1ビットのデータを保持できるようになっている。
このために、ビット線BL0とビット線XBL0との間に、MOSトランジスタ8、インバータ6、およびMOSトランジスタ9が直列に接続されるとともに、インバー6にインバータ7が逆接続されている。また、MOSトランジスタ8、9の各ゲートは、ワード線WL0にそれぞれ接続されている。さらに、インバータ6、7の一方の共通接続部は出力線OUTHに接続され、その他方の共通接続部は出力線OUTLに接続されている。
インバータ6、7は、電源電圧線PWRHおよび接地電圧線PWRLとで図3に示す電源制御回路10と接続され、電源制御回路10により電源がオンオフ制御されるようになっている。この点については後述する。
次に、FeRAMセル5−0は、2つの強誘電体キャパシタC01、C02により構成され、これらによって1ビットのデータを保持できるようになっている。
次に、FeRAMセル5−0は、2つの強誘電体キャパシタC01、C02により構成され、これらによって1ビットのデータを保持できるようになっている。
また、同様に、FeRAMセル5−1は、強誘電体キャパシタC11、C12により構成され、・・・・FeRAMセル5−nは、強誘電体キャパシタCn1、Cn2により構成されている。
さらに詳述すると、強誘電体キャパシタC01の一方の端子が出力線OUTHに接続され、強誘電体キャパシタC02の一方の端子が出力線OUTLに接続されている。また、強誘電体キャパシタC01,C02の他方の各端子は、ポンプ線(ポンプ線)PUMP1に共通接続されている。
さらに詳述すると、強誘電体キャパシタC01の一方の端子が出力線OUTHに接続され、強誘電体キャパシタC02の一方の端子が出力線OUTLに接続されている。また、強誘電体キャパシタC01,C02の他方の各端子は、ポンプ線(ポンプ線)PUMP1に共通接続されている。
強誘電体キャパシタC11の一方の端子が出力線OUTHに接続され、強誘電体キャパシタC12の一方の端子が出力線OUTLに接続されている。また、強誘電体キャパシタC11,C12の他方の各端子は、ポンプ線PUMP2に共通接続されている。
強誘電体キャパシタCn1の一方の端子が出力線OUTHに接続され、強誘電体キャパシタCn2の一方の端子が出力線OUTLに接続されている。また、強誘電体キャパシタCn1,Cn2の他方の各端子は、ポンプ線PUMPnに共通接続されている。
強誘電体キャパシタCn1の一方の端子が出力線OUTHに接続され、強誘電体キャパシタCn2の一方の端子が出力線OUTLに接続されている。また、強誘電体キャパシタCn1,Cn2の他方の各端子は、ポンプ線PUMPnに共通接続されている。
次に、インバータ6、7の電源を制御する電源制御回路10の構成について、図3を参照して説明する。
この電源制御回路10は、図3に示すように、インバータ11と、P型のMOSトランジスタ12と、N型のMOSトランジスタ13とからなる。そして、この電源制御回路10は、イネーブルパワー信号ENBPにより、MOSトランジスタQ12、13が同時にオンすると、電源電圧線PWRHを介してインバータ6、7に電源電圧VDDが供給され、MOSトランジスタQ12、13が同時にオフすると、電源電圧VDDの供給が停止されるようになっている。
この電源制御回路10は、図3に示すように、インバータ11と、P型のMOSトランジスタ12と、N型のMOSトランジスタ13とからなる。そして、この電源制御回路10は、イネーブルパワー信号ENBPにより、MOSトランジスタQ12、13が同時にオンすると、電源電圧線PWRHを介してインバータ6、7に電源電圧VDDが供給され、MOSトランジスタQ12、13が同時にオフすると、電源電圧VDDの供給が停止されるようになっている。
このように、インバータ6、7の電源のオンオフを制御するのは、後述のように、FeRAMセル5−0〜5−nからデータを読み出すときに、オフにする必要があるからである。
なお、電源制御回路10は、図1に示す複数のメモリセルM00〜Mnnに個別に設けるようにしても良いが、その配置面積を減らすために、複数のメモリセルM00〜Mnnに共通に使用するのが好ましい。
なお、電源制御回路10は、図1に示す複数のメモリセルM00〜Mnnに個別に設けるようにしても良いが、その配置面積を減らすために、複数のメモリセルM00〜Mnnに共通に使用するのが好ましい。
次に、図1に示すFeRAM1の物理的な構造の概要について、図1、図2、および図10〜図12を参照して説明する。
このFeRAM1は、図1に示すようにメモリセルM00〜Mnnからなる。また、その各メモリセルM00〜Mnnは、図2に示すように、MOSトランジスタからなるSRAMセル4の部分と、強誘電体キャパシタからなるFeRAMセル5−0〜5−nの部分と、を含んでいる。
このFeRAM1は、図1に示すようにメモリセルM00〜Mnnからなる。また、その各メモリセルM00〜Mnnは、図2に示すように、MOSトランジスタからなるSRAMセル4の部分と、強誘電体キャパシタからなるFeRAMセル5−0〜5−nの部分と、を含んでいる。
そこで、FeRAM1は、MOSトランジスタからなるSRAMセル4と、強誘電体キャパシタからなるFeRAMセル5−0〜5−nとを異なる層に独立に形成させ、その両者を上下方向に重ねることにより、省スペース化、および実装の高密度化を図るようにした。
すなわち、FeRAM1は、例えば半導体基板(図示せず)上に構成するが、図10に示すように、SRAMセル4を構成するMOSトランジスタをMOS回路構成層31に形成するとともに、FeRAMセル5−0〜5−nを構成する強誘電体キャパシタを強誘電体キャパシタ層32に形成するようにした。そして、その両層は、対応するセル同士が対向する状態になるように上下に重ね合わせるようにし、重ね合わせたときに、その両層に形成される各セル同士を電気的に接続するようにした。
すなわち、FeRAM1は、例えば半導体基板(図示せず)上に構成するが、図10に示すように、SRAMセル4を構成するMOSトランジスタをMOS回路構成層31に形成するとともに、FeRAMセル5−0〜5−nを構成する強誘電体キャパシタを強誘電体キャパシタ層32に形成するようにした。そして、その両層は、対応するセル同士が対向する状態になるように上下に重ね合わせるようにし、重ね合わせたときに、その両層に形成される各セル同士を電気的に接続するようにした。
次に、強誘電体キャパシタ層32に形成されるメモリセルM00〜Mnnの強誘電体キャパシタの構造の概略について、図11、図12を参照して説明する。
図11は、メモリセルM00,M01の強誘電体キャパシタの構造を示す斜視図である。図12は、図11に示すような構造からなるメモリセルM00〜Mnnの強誘電体キャパシタの全体のレイアウトを示す図である。
図11は、メモリセルM00,M01の強誘電体キャパシタの構造を示す斜視図である。図12は、図11に示すような構造からなるメモリセルM00〜Mnnの強誘電体キャパシタの全体のレイアウトを示す図である。
図11に示すように、メモリセルM00,M01の各FeRAMセル5−0〜5−nは、ポンプ線PUMP1,PUMP2・・・PUMPnを形成する平板状の導体33−1,33−2・・・33−nと、ビット線BL0,XBL0,BL1,XBL1を形成する平板状の導体34〜37とから構成される。
すなわち、導体33−1,33−2・・・33−nを、図11に示すように、前後方向に所定間隔ごとに配列するとともに、導体34、35を導体33−1,33−2・・・33−nの長さ方向と立体的に交差するように配列し、導体34、35と導体33−1,33−2・・・33−nとが立体交差する各交差部分に、誘電体キャパシタC01,C11・・・をそれぞれ形成するようにした。
すなわち、導体33−1,33−2・・・33−nを、図11に示すように、前後方向に所定間隔ごとに配列するとともに、導体34、35を導体33−1,33−2・・・33−nの長さ方向と立体的に交差するように配列し、導体34、35と導体33−1,33−2・・・33−nとが立体交差する各交差部分に、誘電体キャパシタC01,C11・・・をそれぞれ形成するようにした。
さらに、図11に示すように、導体36、37を導体34、35と同様に配列し、導体36、37と導体33−1,33−2・・・33−nとが立体交差する各交差部分に、誘電体キャパシタC03,C13・・・をそれぞれ形成するようにした。
そして、メモリセルM00は、ビット線BL0,XBL0を形成する導体34、35の各一端側に、図12に示すような接続端子41、42を設けるようにした。さらに、その接続端子41、42を、MOS回路構成層31に形成されるSRAMセル4の出力線OUTH,OUTLを形成する導体に設けた接続端子(図示せず)と電気的に接続するようにした。他のメモリセルM01〜Mnnについても、図12に示すように、メモリセルM00と同様に接続するようにした。
そして、メモリセルM00は、ビット線BL0,XBL0を形成する導体34、35の各一端側に、図12に示すような接続端子41、42を設けるようにした。さらに、その接続端子41、42を、MOS回路構成層31に形成されるSRAMセル4の出力線OUTH,OUTLを形成する導体に設けた接続端子(図示せず)と電気的に接続するようにした。他のメモリセルM01〜Mnnについても、図12に示すように、メモリセルM00と同様に接続するようにした。
次に、このような構成からなる第1実施形態では、FeRAMセル5−0〜5−nの強誘電体キャパシタC01,C02に供給する供給電圧として、第1の電圧である電源電圧VDDと第2の電圧である接地電圧との中間の電圧である中間電圧VDD/2を利用するようにしたので、この場合の強誘電体キャパシタの印加電圧と電荷の関係について図4および図5を参照して説明する。
ここで、図5(A)に示すように、強誘電体キャパシタの一端側の電圧をVA、その他端側の電圧をVBとする。そして、電圧VAを、図5(B)に示すように、電源電圧VDDと接地電圧(GND)の中間電圧VDD/2、接地電圧、電源電圧VDD、およびVDD/2の順序で変化させるものとする。一方、電圧VBを、図5(B)に示すようにVDD/2に固定したままとする。
この状態で、分極方向として下向きを保持していた場合の動作を、図4のヒステリシス特性を用いて説明する。
図5(B)の期間T1では、強誘電体キャパシタの一端側の電圧VAはVDD/2であり、その他端側の電圧VBはVDD/2である。このため、強誘電体キャパシタの両端には電位差が生じていないので、分極量は残留分極点a1になる。
図5(B)の期間T1では、強誘電体キャパシタの一端側の電圧VAはVDD/2であり、その他端側の電圧VBはVDD/2である。このため、強誘電体キャパシタの両端には電位差が生じていないので、分極量は残留分極点a1になる。
次に、図5(B)の期間T2では、強誘電体キャパシタの一端側の電圧VAは0Vであり、その他端側の電圧VBはVDD/2である。このため、強誘電体キャパシタの両端の電位差(VA−VB)は−VDD/2になるので、分極量は残留分極点a1から点a2に移動する。
次に、図5(B)の期間T3では、強誘電体キャパシタの一端側の電圧VAはVDDであり、その他端側の電圧VBはVDD/2である。このため、強誘電体キャパシタの両端の電位差(VA−VB)はVDD/2になるので、分極量は点a2から点a3に移動する。
次に、図5(B)の期間T3では、強誘電体キャパシタの一端側の電圧VAはVDDであり、その他端側の電圧VBはVDD/2である。このため、強誘電体キャパシタの両端の電位差(VA−VB)はVDD/2になるので、分極量は点a2から点a3に移動する。
次に、図5(B)の期間T4では、強誘電体キャパシタの一端側の電圧VAはVDD/2であり、その他端側の電圧VBはVDD/2である。このため、強誘電体キャパシタの両端に電位差は生じていないので、分極量は点a3から点a1に移動する。
同様に、強誘電体キャパシタの分極方向として上向きを保持していた場合の動作を、図4のヒステリシス特性を用いて説明する。
同様に、強誘電体キャパシタの分極方向として上向きを保持していた場合の動作を、図4のヒステリシス特性を用いて説明する。
図5(B)の期間T1では、強誘電体キャパシタの一端側の電圧VAはVDD/2であり、その他端側の電圧VBはVDD/2である。このため、強誘電体キャパシタの両端には電位差が生じていないので、分極量は残留分極点a4になる。
次に、図5(B)の期間T2では、強誘電体キャパシタの一端側の電圧VAは0Vであり、その他端側の電圧VBはVDD/2である。このため、強誘電体キャパシタの両端の電位差(VA−VB)は−VDD/2になるので、分極量は残留分極点a4から点a5に移動する。
次に、図5(B)の期間T2では、強誘電体キャパシタの一端側の電圧VAは0Vであり、その他端側の電圧VBはVDD/2である。このため、強誘電体キャパシタの両端の電位差(VA−VB)は−VDD/2になるので、分極量は残留分極点a4から点a5に移動する。
次に、図5(B)の期間T3では、強誘電体キャパシタの一端側の電圧VAはVDDであり、その他端側の電圧VBはVDD/2である。このため、強誘電体キャパシタの両端の電位差(VA−VB)はVDD/2になるので、分極量は点a5から点a6に移動する。
次に、図5(B)の期間T4では、強誘電体キャパシタの一端側の電圧VAはVDD/2であり、その他端側の電圧VBはVDD/2である。このため、強誘電体キャパシタの両端に電位差は生じていないので、分極量は点a6から点a4に移動する。
次に、図5(B)の期間T4では、強誘電体キャパシタの一端側の電圧VAはVDD/2であり、その他端側の電圧VBはVDD/2である。このため、強誘電体キャパシタの両端に電位差は生じていないので、分極量は点a6から点a4に移動する。
次に、第1実施形態に係るFPGAに搭載されるプログラム用のFeRAM1の動作例について、図6〜図8を参照して説明する。
まず、図2に示すメモリセルM00のSRAMセル4にデータを書き込み、その書き込んだデータをFeRAMセル5−0に保持する場合の動作について、図6を参照して説明する。
まず、図2に示すメモリセルM00のSRAMセル4にデータを書き込み、その書き込んだデータをFeRAMセル5−0に保持する場合の動作について、図6を参照して説明する。
ここで、電源投入時の各部の初期状態は重要ではないので、図6に示すように、ビット線BL0,XBL0および出力線OUTL、OUTHのデータは不定とし、他の部分の信号はLレベル(ローレベル)にしている。また、この動作では、FeRAMセル5−0からのデータの読み出しも行わないので、制御信号PREGもLレベルとする。
いま、図6に示すように、時刻t1において電源が投入されて、電源電圧VDDが立ち上がると、ポンプ線PUMP1,PUMP2・・・PUMPnの各電圧をVDD/2にする。これは、強誘電体キャパシタにC01,C02・・・に保持した分極方向のデータを破壊しないためである。
いま、図6に示すように、時刻t1において電源が投入されて、電源電圧VDDが立ち上がると、ポンプ線PUMP1,PUMP2・・・PUMPnの各電圧をVDD/2にする。これは、強誘電体キャパシタにC01,C02・・・に保持した分極方向のデータを破壊しないためである。
すなわち、時刻t2において、イネーブルパワー信号ENBPがHレベル(ハイレベル)に立ち上がると、図3に示すMOSトランジスタ12がオンして、電源電圧VDDが電源電圧線PWRHを介してインバータ6、7に供給され、インバータ6、7を動作状態にする。このとき、出力線OUTH,OUTLの出力は不定であるが、HまたはLレベルの電位になる。ここで、ポンプ線PUMP1,PUMP2・・・PUMPnの各電圧がVDD/2でないときには、図4および図5から明らかなように、分極方向のデータの書き込みを行ってしまう。そこで、これを防ぐために、イネーブルパワー信号ENBPをHレベルにする前に、ポンプ線PUMP1,PUMP2・・・PUMPnの各電圧をVDD/2にしておくようにした。
時刻t2では、上記のようにインバータ6、7は動作可能となるが、このときの出力線OUTH,OUTLの出力は不定である。
次に、書き込みデータDin0をSRAMセル4に書き込む。ここでは、書き込みデータDin0としてHレベルを書き込むので、時刻t3において、書き込みデータDin0をHレベルにする。その後、時刻t4において、イネーブル信号ENBAをHレベルにし、差動変換器2−0をアクティブの状態にする。
次に、書き込みデータDin0をSRAMセル4に書き込む。ここでは、書き込みデータDin0としてHレベルを書き込むので、時刻t3において、書き込みデータDin0をHレベルにする。その後、時刻t4において、イネーブル信号ENBAをHレベルにし、差動変換器2−0をアクティブの状態にする。
ここで、差動変換器2−0は、入力としてHレベルが入力されると、+出力端子からはHレベルが出力され、−出力端子からはLレベルが出力されるようになっている。この結果、図6に示すように、ビット線BL0はHレベル、ビット線XBL0はLレベルとなる。
次に、時刻t5において、ワード線WL0をHレベルとするので、MOSトランジスタ8、9がオンとなる。この結果、ビット線BL0と出力線OUTHが接続され、ビット線XBL0と出力線OUTLが接続される。
次に、時刻t5において、ワード線WL0をHレベルとするので、MOSトランジスタ8、9がオンとなる。この結果、ビット線BL0と出力線OUTHが接続され、ビット線XBL0と出力線OUTLが接続される。
ここで、差動変換器2−0は、インバータ6、7のよりも、出力インピーダンスが低い(ドライブ能力が高い)ように設計されている。このため、差動変換器2−0の出力により、出力線OUTH側はHレベル、出力線OUTL側はLレベルとなる(図6参照)。
その後、時刻t6においてワード線WL0をHレベルからLレベルとし、時刻t7においてイネーブル信号ENBAをHレベルからLレベルとする。
その後、時刻t6においてワード線WL0をHレベルからLレベルとし、時刻t7においてイネーブル信号ENBAをHレベルからLレベルとする。
ここで、ワード線WL0をLレベルにさせ、ビット線BL0と出力線OUTHを切断するとともに、ビット線XBL0と出力線OUTLを切断しても、互いに逆接続されるインバータ6、7はデータを保持しているので、出力線OUTHはHレベルを保持し、出力線OUTLはLレベルを保持する。この状態は、SRAMセル4にデータを新たに書き換えるか、または電源がオフとならない限り維持される。
その後、時刻t8において、書き込みデータDin0をHレベルからLレベルに変化させる。
次に、時刻t3から時刻8の期間T1にSRAMセル4に書き込まれたデータを、FeRAMセル5−0に格納(保管)しておくことにより、FPGA内に回路を構築できるので、そのFeRAMセル5−0へのデータの格納動作について以下に説明する。
次に、時刻t3から時刻8の期間T1にSRAMセル4に書き込まれたデータを、FeRAMセル5−0に格納(保管)しておくことにより、FPGA内に回路を構築できるので、そのFeRAMセル5−0へのデータの格納動作について以下に説明する。
この場合には、図6に示すように、ポンプ線PUMP1の電圧を、時刻t9に中間電位(VDD/2)から接地電圧(GND)に変化させ、時刻t10に接地電圧から電源電圧VDDに変化させ、時刻t11に電源電圧VDDから中間電位(VDD/2)に変化させる。
この結果、図2に示す強誘電体キャパシタC01,C02の分極方向は、図6に示すようになってデータが格納されるので、以下にこの分極方向について説明する。
この結果、図2に示す強誘電体キャパシタC01,C02の分極方向は、図6に示すようになってデータが格納されるので、以下にこの分極方向について説明する。
ここで、強誘電体キャパシタC01、C02の分極方向は、図6に示すように矢印で示すものとし、矢印の向きはHレベルからLレベルの方向に一致するものとする。
例えば、図2において、出力線OUTHの出力がHレベルで、ポンプ線PUMP1の電圧がLレベルのときに、強誘電体キャパシタC01の分極方向を下向きの矢印「↓」とし、出力線OUTHの出力がLレベルで、ポンプ線PUMP1の電圧がHレベルのときに、強誘電体キャパシタC01の分極方向を上向きの矢印「↑」とする。
例えば、図2において、出力線OUTHの出力がHレベルで、ポンプ線PUMP1の電圧がLレベルのときに、強誘電体キャパシタC01の分極方向を下向きの矢印「↓」とし、出力線OUTHの出力がLレベルで、ポンプ線PUMP1の電圧がHレベルのときに、強誘電体キャパシタC01の分極方向を上向きの矢印「↑」とする。
また、図2において、出力線OUTLの出力がHレベルで、ポンプ線PUMP1の電圧がLレベルのときに、強誘電体キャパシタC02の分極方向を下向きの矢印「↓」とし、出力線OUTLの出力がLレベルで、ポンプ線PUMP1の電圧がHレベルのときに、強誘電体キャパシタC02の分極方向を上向きの矢印「↑」とする。
以上の条件の下で、図6の期間T2における強誘電体キャパシタC01,C02の分極方向の書き込みを見ていく。
以上の条件の下で、図6の期間T2における強誘電体キャパシタC01,C02の分極方向の書き込みを見ていく。
まず、時刻t9〜時刻t10において、ポンプ線PUMP1の電圧をLレベル(接地電位)にした場合について検討する。
この場合には、出力線OUTHの電圧が電源電圧VDDで、ポンプ線PUMP1の電圧が接地電位であるので、強誘電体キャパシタC01には、「1」のデータとして下向きの分極方向が書き込まれる。また、出力線OUTLの電圧が接地電位で、ポンプ線PUMP1の電圧が接地電位であるので、強誘電体キャパシタC02の分極方向は不定のままである。
この場合には、出力線OUTHの電圧が電源電圧VDDで、ポンプ線PUMP1の電圧が接地電位であるので、強誘電体キャパシタC01には、「1」のデータとして下向きの分極方向が書き込まれる。また、出力線OUTLの電圧が接地電位で、ポンプ線PUMP1の電圧が接地電位であるので、強誘電体キャパシタC02の分極方向は不定のままである。
次に、時刻t10〜時刻t11において、ポンプ線PUMP1の電圧を電源電圧VDD(Hレベル)にした場合について検討する。
この場合には、出力線OUTHの電圧が電源電圧VDDで、ポンプ線PUMP1の電圧が電源電圧VDDであるので、強誘電体キャパシタC01は変化がなく前の状態を維持するので、「1」のデータとして分極方向は下向きのままである。また、出力線OUTLの電圧が接地電位で、ポンプ線PUMP1の電圧が電源電圧VDDであるので、強誘電体キャパシタC02には、「1」のデータとして上向きの分極方向が書き込まれる。
この場合には、出力線OUTHの電圧が電源電圧VDDで、ポンプ線PUMP1の電圧が電源電圧VDDであるので、強誘電体キャパシタC01は変化がなく前の状態を維持するので、「1」のデータとして分極方向は下向きのままである。また、出力線OUTLの電圧が接地電位で、ポンプ線PUMP1の電圧が電源電圧VDDであるので、強誘電体キャパシタC02には、「1」のデータとして上向きの分極方向が書き込まれる。
次に、時刻t11以後においては、ポンプ線PUMP1の電圧を中間電位(VDD/2)にした場合について検討する。
この場合には、強誘電体キャパシタC01にはVDD/2の電圧が印加され、強誘電体キャパシタC02には−VDD/2の電圧が印加される。しかし、図4および図5の説明により明らかのように、各分極方向は変化しない。
この場合には、強誘電体キャパシタC01にはVDD/2の電圧が印加され、強誘電体キャパシタC02には−VDD/2の電圧が印加される。しかし、図4および図5の説明により明らかのように、各分極方向は変化しない。
以上の説明により、ポンプ信号PUMP1を電圧を、中間電圧(VDD/2)から接地電位、電源電圧VDD、および中間電圧(VDD/2)の順序で変化させることにより、強誘電体キャパシタC01,C02に分極方向を書き込むことができる。
このような動作により、強誘電体キャパシタC01、C02に分極が残り、データの保存が完了する。この分極の方向は電源がオフされても残るので、メモリセルM00は、不揮発性RAMとなる。
このような動作により、強誘電体キャパシタC01、C02に分極が残り、データの保存が完了する。この分極の方向は電源がオフされても残るので、メモリセルM00は、不揮発性RAMとなる。
ここで、図6では、FeRAM5−0に「1」のデータを書き込む場合であり、そのデータ「1」は書き込み後には、強誘電体キャパシタC01に下向きの分極方向で保持され、強誘電体キャパシタC02に上向きの分極方向で保持される。
同様に、FeRAM5−0に「0」のデータを書き込む場合には、そのデータ「0」は書き込み後には、強誘電体キャパシタC01に上向きの分極方向で保持され、強誘電体キャパシタC02に下向きの分極方向で保持される。
同様に、FeRAM5−0に「0」のデータを書き込む場合には、そのデータ「0」は書き込み後には、強誘電体キャパシタC01に上向きの分極方向で保持され、強誘電体キャパシタC02に下向きの分極方向で保持される。
なお、以上の説明は、FeRAMセル5−0へのデータの格納動作であるが、他のFeRAMセル5−1〜5−nについても同様な動作により所望のデータを格納することができる。
次に、上記のように、メモリセルM00のSRAMセル4にデータを書き込み、その書き込んだデータをFeRAMセル5−0に保持したのち、SRAMセル4に書き込んだデータを外部に読み出してチェックする場合の動作について、図7を参照して説明する。
次に、上記のように、メモリセルM00のSRAMセル4にデータを書き込み、その書き込んだデータをFeRAMセル5−0に保持したのち、SRAMセル4に書き込んだデータを外部に読み出してチェックする場合の動作について、図7を参照して説明する。
このときには、インバータ6、7からなるフリップフロップにデータが格納されており、出力線OUTHはHレベル、出力線OUTLはLレベルとする。また、メモリセルM00の各部の状態は、図7に示すものとする。
図7に示すように、時刻t1においてワード線WL0をHレベルにすると、MOSトランジスタ8、9がいずれもオンとなる。この結果、ビット線BL0と出力線OUTHが接続され、ビット線XBL0と出力線OUTLが接続されるので、出力線OUTHと出力線OUTLの各電位が、ビット線BL0とビット線XBL0に伝達される。
図7に示すように、時刻t1においてワード線WL0をHレベルにすると、MOSトランジスタ8、9がいずれもオンとなる。この結果、ビット線BL0と出力線OUTHが接続され、ビット線XBL0と出力線OUTLが接続されるので、出力線OUTHと出力線OUTLの各電位が、ビット線BL0とビット線XBL0に伝達される。
このため、時刻t1〜t2の期間T1において、図1に示す差動アンプ3−0は、ビット線BL0とビット線XBL0との電位差を検出し、それに応じた出力データDout0を読み出す。その後、時刻t2にワード線WL0をHレベルからLレベルにすると、読み出し動作を終了する。
ここで、データの高速な読み出しのために、予め制御信号PREGをHレベル、すなわちビット線BL0とビット線XBL0をLレベルにしておき、その後にワード線WL0をHレベルにするようにしても良い。なお、このときには、ワード線WL0をHレベルにする直前に、制御信号PREGをHレベルからLレベルにするようにしてもかまわない。
ここで、データの高速な読み出しのために、予め制御信号PREGをHレベル、すなわちビット線BL0とビット線XBL0をLレベルにしておき、その後にワード線WL0をHレベルにするようにしても良い。なお、このときには、ワード線WL0をHレベルにする直前に、制御信号PREGをHレベルからLレベルにするようにしてもかまわない。
次に、上記のように、メモリセルM00のFeRAMセル5−0に保持させたデータを、出力線OUTH、OUTLに読み出す場合の動作について、図8を参照して説明する。このときの各部の信号の設定と状態は、図8に示す通りである。
ここで、図8に示す制御では、ポンプ線PUMP1の電圧制御については、図示のように「a」、「b」、「c」の場合があり、これらの差異については後述する。
ここで、図8に示す制御では、ポンプ線PUMP1の電圧制御については、図示のように「a」、「b」、「c」の場合があり、これらの差異については後述する。
これらの3つの電圧制御には共通点があるので、以下の説明では「a」の場合について主に説明し、必要に応じて「b」、「c」の場合について説明する。また、上記の3つのポンプ線PUMP1の電圧制御に対応して、強誘電体キャパシタC01,C02の分極方向は図示のように「a」、「b」、「c」のようになる。
図8において、図1に示す差動変換器2−0に供給されるイネーブル信号ENBAはLレベルであるので、差動変換器2−0の出力はオフ(ハイインピーダンス状態)である。また、書き込みデータDin0はLレベルである。
図8において、図1に示す差動変換器2−0に供給されるイネーブル信号ENBAはLレベルであるので、差動変換器2−0の出力はオフ(ハイインピーダンス状態)である。また、書き込みデータDin0はLレベルである。
なお、上記のように差動変換器2−0の出力はオフであり、他の回路に影響を与えることはないので、書き込みデータDin0は、Hレベルであっても良い。
この例では、FeRAMセル5−0の強誘電体キャパシタC01,C02に記憶されるデータの読み出しと再書き込みとを行うので、図8に示すように、ポンプ線PUMP1線の電圧のみを変化させ、他のポンプ線PUMP2〜PUMPnの電圧は中間電圧(VDD/2)に固定させておく。
この例では、FeRAMセル5−0の強誘電体キャパシタC01,C02に記憶されるデータの読み出しと再書き込みとを行うので、図8に示すように、ポンプ線PUMP1線の電圧のみを変化させ、他のポンプ線PUMP2〜PUMPnの電圧は中間電圧(VDD/2)に固定させておく。
まず、期間T1(時刻t1〜時刻t4)に、強誘電体キャパシタC01,C02からのデータ読み出しの準備を行うので、この準備について図8を参照して説明する。
図8に示すように、時刻t1では、イネーブルパワー信号ENBPをHレベルからLレベルにさせるので、電源電圧VDDのインバータ6、7への供給が停止されて、インバータ6、7がオフの状態になる。この状態は、時刻t5まで継続される。
図8に示すように、時刻t1では、イネーブルパワー信号ENBPをHレベルからLレベルにさせるので、電源電圧VDDのインバータ6、7への供給が停止されて、インバータ6、7がオフの状態になる。この状態は、時刻t5まで継続される。
また、時刻t1では、制御信号PREGをLレベルからHレベルに変化させるので、MOSトランジスタQ0、Q0’がいずれもオンになる。この結果、ビット線BL0およびビット線XBL0はいずれも接地され、Lレベルとなる。この状態は、時刻t4まで継続される。
さらに、時刻t1では、ワード線WL0をLレベルとするので、MOSトランジスタ8、9がいずれもオフである。この結果、ビット線BL0と出力線OUTH、およびビット線XBL0と出力線OUTLは、いずれも接続されていない状態となる。この状態は、時刻t2まで継続される。
さらに、時刻t1では、ワード線WL0をLレベルとするので、MOSトランジスタ8、9がいずれもオフである。この結果、ビット線BL0と出力線OUTH、およびビット線XBL0と出力線OUTLは、いずれも接続されていない状態となる。この状態は、時刻t2まで継続される。
また、時刻t1では、ポンプ線PUMP1の電圧を中間電圧(VDD/2)とする。この状態は、時刻t2まで継続される。
次に、時刻t2では、図8に示すように、ワード線WL0をLレベルからHレベルに変化させるので、MOSトランジスタ8、9がいずれもオンとなる。この結果、ビット線BL0と出力線OUTH、およびビット線XBL0と出力線OUTLは、いずれも接続されて、その電位がLレベルとなる。この状態は、時刻t4まで維持される。
次に、時刻t2では、図8に示すように、ワード線WL0をLレベルからHレベルに変化させるので、MOSトランジスタ8、9がいずれもオンとなる。この結果、ビット線BL0と出力線OUTH、およびビット線XBL0と出力線OUTLは、いずれも接続されて、その電位がLレベルとなる。この状態は、時刻t4まで維持される。
また、時刻t2では、ポンプ線PUMP1の電圧が中間電圧(VDD/2)から接地電位(0V)に変化する。この接地電位は、時刻t4まで継続される。
以上説明したように、時刻t1〜時刻t4の期間T1は、強誘電体キャパシタC01,C02からのデータ読み出しのための準備段階である。これは、出力線OUTH,OUTLの各電圧を接地電圧に保った状態とし、この状態でハイインピーダンス(高抵抗)状態にするためであり、さらに、ポンプ線PUMP1の電圧を接地電圧にするためである。
以上説明したように、時刻t1〜時刻t4の期間T1は、強誘電体キャパシタC01,C02からのデータ読み出しのための準備段階である。これは、出力線OUTH,OUTLの各電圧を接地電圧に保った状態とし、この状態でハイインピーダンス(高抵抗)状態にするためであり、さらに、ポンプ線PUMP1の電圧を接地電圧にするためである。
次に、期間T2(時刻t4〜時刻t6)では、強誘電体キャパシタC01,C02からのデータの読み出しを行うので、このデータの読み出し動作について図8を参照して説明する。
図8に示すように、時刻t4では、イネーブルパワー信号ENBPがLレベルであるので、電源電圧VDDのインバータ6、7への供給が停止されて、インバータ6、7がオフの状態にある。
図8に示すように、時刻t4では、イネーブルパワー信号ENBPがLレベルであるので、電源電圧VDDのインバータ6、7への供給が停止されて、インバータ6、7がオフの状態にある。
また、時刻t4では、制御信号PREGがHレベルからLレベルに変化するので、MOSトランジスタQ0、Q0’がいずれもオフになる。この結果、ビット線BL0およびビット線XBL0はいずれも接地されていない状態となる。
ここで、制御信号PREGは、時刻t4においてHレベルのままでも動作上問題はないが、ここではLレベルにさせている。これは、出力線OUTLと出力線OUTに存在する寄生容量を小さくするためであり、図2において、MOSトランジスタ8、9のオフ時における容量を小さくできる。
ここで、制御信号PREGは、時刻t4においてHレベルのままでも動作上問題はないが、ここではLレベルにさせている。これは、出力線OUTLと出力線OUTに存在する寄生容量を小さくするためであり、図2において、MOSトランジスタ8、9のオフ時における容量を小さくできる。
すなわち、制御信号PREGがHレベルのときには、ビット線BL0およびビット線XBL0はいずれも接地電位となり、MOSトランジスタ8、9のオフ時の容量がそのままビット線BL0とビット線XBL0に加わることになる。しかし、制御信号PREGがLレベルのときには、ビット線BL0とビット線XBL0の寄生容量がMOSトランジスタ8、9のオフ時の容量にグランドに対して直列に加わる。このため、ビット線BL0とビット線XBL0に加わる容量は、小さくなるからである。
このように容量が小さくなることによって、強誘電体キャパシタC01,C02から出力される電荷に対する電圧変動幅が大きくなるので、データの検出が容易になる。
また、時刻t4では、ポンプ線PUMP1の電圧が、接地電位(0V)から電源電圧VDDに変化する。このため、出力線OUTL,OUTHの各電圧は、図8のように変化する。
また、時刻t4では、ポンプ線PUMP1の電圧が、接地電位(0V)から電源電圧VDDに変化する。このため、出力線OUTL,OUTHの各電圧は、図8のように変化する。
次に、出力線OUTL,OUTHの各出力電圧の変化について、図9を参照しながら説明する。
図9(a)に示すように、図2の回路の出力線OUTH、出力線OUTLには、各パターンやMOSトランジスタ8、9等による浮遊容量がグランドに対して存在する。また、出力線OUTHの浮遊容量と、出力線OUTLの浮遊容量とが同じ容量値C1になるように設計されている。この浮遊容量C1は、回路動作に最適化された値になっている。
図9(a)に示すように、図2の回路の出力線OUTH、出力線OUTLには、各パターンやMOSトランジスタ8、9等による浮遊容量がグランドに対して存在する。また、出力線OUTHの浮遊容量と、出力線OUTLの浮遊容量とが同じ容量値C1になるように設計されている。この浮遊容量C1は、回路動作に最適化された値になっている。
図9は、図8の時刻t4〜t5の期間のときの強誘電体キャパシタC01,C02のそれぞれの等価回路である。
図8の時刻t4〜t5の期間の動作のときには、強誘電体キャパシタCは図9(a)に示す状態になり、ポンプ線PUMPをHレベルにし、出力線OUTからデータを出力するようにしている。ここで、出力線OUTのレベル(電圧値)は、ポンプ線PUMPの電圧を強誘電体キャパシタCとキャパシタC1の各容量値で分割した値になる。
図8の時刻t4〜t5の期間の動作のときには、強誘電体キャパシタCは図9(a)に示す状態になり、ポンプ線PUMPをHレベルにし、出力線OUTからデータを出力するようにしている。ここで、出力線OUTのレベル(電圧値)は、ポンプ線PUMPの電圧を強誘電体キャパシタCとキャパシタC1の各容量値で分割した値になる。
このときの出力線OUTの電圧レベルの変化ΔVは、強誘電体キャパシタCの分極方向の変化に依存する。これは、分極方向の変化がある場合とない場合では、強誘電体キャパシタCから出力される電荷の量に違いがあるからである。すなわち、強誘電体キャパシタCからの出力される電荷量は、分極方向に大きな変化があるときには多く、その変化がないときに少ない。このため、出力線OUTの電圧レベルは以下のようになる。
図9(b)は強誘電体キャパシタCに分極方向の変化がない場合を示し、このときの時間と出力線OUTの電圧との関係は、強誘電体キャパシタCから出力される電荷の量が少ないので、図9(c)に示すようになる。
図9(d)は強誘電体キャパシタCに分極方向の変化がある場合を示し、このときの時間と出力線OUTの電圧との関係は、強誘電体キャパシタCから出力される電荷の量が多いので、図9(e)に示すようになる。
図9(d)は強誘電体キャパシタCに分極方向の変化がある場合を示し、このときの時間と出力線OUTの電圧との関係は、強誘電体キャパシタCから出力される電荷の量が多いので、図9(e)に示すようになる。
図9(c)(e)からわかるように、強誘電体キャパシタCの分極方向に変化がある場合とない場合では、その出力線OUTには電圧差がΔVあるので、これを利用して、図2のインバータ6とインバータ7により信号を取り出すことができる。
図8に示すように、強誘電体キャパシタC01には下向きの分極方向のデータが、強誘電体キャパシタC02には上向きの分極方向データが書き込まれており、これは、「1」のデータが書き込まれていることになる。
図8に示すように、強誘電体キャパシタC01には下向きの分極方向のデータが、強誘電体キャパシタC02には上向きの分極方向データが書き込まれており、これは、「1」のデータが書き込まれていることになる。
ここで、上記の図9の説明を参考にして、図8の時刻t4〜t5の期間における出力線OUTHと出力線OUTLの各電圧の変化を考える。
その期間では、ポンプ線PUMP1の電圧が電源電圧VDDになるので、強誘電体キャパシタC01,C02は、ポンプ線PUMP1側の電極の電圧が電源電圧VDDとなって、その分極方向はともに上向きとなる。
その期間では、ポンプ線PUMP1の電圧が電源電圧VDDになるので、強誘電体キャパシタC01,C02は、ポンプ線PUMP1側の電極の電圧が電源電圧VDDとなって、その分極方向はともに上向きとなる。
すなわち、強誘電体キャパシタC01の分極方向は下向きから上向きに変化し、その分極方向が逆向きとなるので、図9(d)に示すようになり、出力線OUTHの出力電圧は図9(e)に示すように高い電圧が出力される。
一方、強誘電体キャパシタC02の分極方向は上向きから上向きに変化し、その分極方向に変化がないので、図9(b)に示すようになり、出力線OUTHの出力電圧は図9(c)に示すように低い電圧が出力される。
一方、強誘電体キャパシタC02の分極方向は上向きから上向きに変化し、その分極方向に変化がないので、図9(b)に示すようになり、出力線OUTHの出力電圧は図9(c)に示すように低い電圧が出力される。
従って、時刻t4〜t5の期間では、出力線OUTHと出力線OUTLの各出力電圧は図8に示すようになる。
次に、図8に示すように、時刻t5では、イネーブルパワー信号ENBPがLレベルからHレベルに変化するので、電源電圧VDDがインバータ6、7へ供給されて、インバータ6、7がオンの状態になる。
次に、図8に示すように、時刻t5では、イネーブルパワー信号ENBPがLレベルからHレベルに変化するので、電源電圧VDDがインバータ6、7へ供給されて、インバータ6、7がオンの状態になる。
また、時刻t5では、ポンプ線PUMP1の電圧が、電源電圧VDDから中間電圧(VDD/2)に変化する。
このように、時刻t5では、インバータ6、7が動作状態になり、この互いに逆接続されるインバータ6、7がアンプとして動作し、出力線OUTHの出力電圧と出力線OUTLの出力電圧との差をさらに広げる。このため、図8に示すように、出力線OUTHの出力電圧をHレベルにし、出力線OUTLの出力電圧をLレベルにする。
このように、時刻t5では、インバータ6、7が動作状態になり、この互いに逆接続されるインバータ6、7がアンプとして動作し、出力線OUTHの出力電圧と出力線OUTLの出力電圧との差をさらに広げる。このため、図8に示すように、出力線OUTHの出力電圧をHレベルにし、出力線OUTLの出力電圧をLレベルにする。
以上のように、期間T2では、強誘電体キャパシタC01,C02の分極方向のデータの読み出しを行っていることになる。
次に、期間T3(時刻t6〜時刻t8)では、強誘電体キャパシタC01、強誘電体キャパシタC02の順序でデータの再書き込みを行うので、この再書き込みの動作について説明する。
次に、期間T3(時刻t6〜時刻t8)では、強誘電体キャパシタC01、強誘電体キャパシタC02の順序でデータの再書き込みを行うので、この再書き込みの動作について説明する。
まず、時刻t6〜時刻t7の期間では、強誘電体キャパシタC01に、下向きの分極方向データの再書き込みを行うので、この動作について説明する。
図8に示すように、時刻t6では、ポンプ線PUMP1の電圧を、中間電圧(VDD/2)から接地電圧に変化させる。ここで、時刻t6〜時刻t7の期間には、他の各部の状態は変化させない。
図8に示すように、時刻t6では、ポンプ線PUMP1の電圧を、中間電圧(VDD/2)から接地電圧に変化させる。ここで、時刻t6〜時刻t7の期間には、他の各部の状態は変化させない。
この状態で、強誘電体キャパシタC01,C02の両端の電圧(印加電圧)を考える。まず、強誘電体キャパシタC01は、出力線OUTH側の電圧が電源電圧VDDであり、ポンプ線PUMP1側の電圧が接地電圧であるので、強誘電体キャパシタC01の印加電圧はVDDとなり、分極方向は下向きとなる。一方、強誘電体キャパシタC02は、出力線OUTL側の電圧が接地電圧であり、ポンプ線PUMP1側の電圧が接地電圧であるので、強誘電体キャパシタC02の両端には電位差がなく、分極方向のデータは破壊されたままである。
次に、時刻t7〜時刻t8の期間では、強誘電体キャパシタC02に、上向きの分極方向データの再書き込みを行うので、この動作について説明する。
図8に示すように、時刻t7では、ポンプ線PUMP1の電圧を、接地電圧から電源電圧VDDに変化させる。ここで、時刻t7〜時刻t8の期間には、他の各部の状態は変化させない。
図8に示すように、時刻t7では、ポンプ線PUMP1の電圧を、接地電圧から電源電圧VDDに変化させる。ここで、時刻t7〜時刻t8の期間には、他の各部の状態は変化させない。
この状態で、強誘電体キャパシタC01,C02の印加電圧を考える。まず、強誘電体キャパシタC01は、出力線OUTH側の電圧が電源電圧VDDであり、ポンプ線PUMP1側の電圧が電源電圧VDDであるので、強誘電体キャパシタC01の両端には電位差がなく、分極方向は下向きのままとなる。一方、強誘電体キャパシタC02は、出力線OUTL側の電圧が接地電圧であり、ポンプ線PUMP1側の電圧が電源電圧VDDになるので、強誘電体キャパシタC02の印加電圧は−VDDとなり、その分極方向は上向きとなる。
このように、期間T3では、破壊されたデータの再書き込みを行い、その後は、強誘電体キャパシタC01,C02にその分極方向データが保持された状態になる。
以上の説明は、ポンプ線PUMP1の電圧制御が図8の「a」の場合である。しかし、図8に示す時刻t5では、強誘電体キャパシタC01,C02からデータを読み出した後であるので、ポンプ線PUMP1の電圧は、電源電圧VDD、接地電圧、または中間電圧(VDD/2)のうちのいずれであっても、動作上の問題がない。
以上の説明は、ポンプ線PUMP1の電圧制御が図8の「a」の場合である。しかし、図8に示す時刻t5では、強誘電体キャパシタC01,C02からデータを読み出した後であるので、ポンプ線PUMP1の電圧は、電源電圧VDD、接地電圧、または中間電圧(VDD/2)のうちのいずれであっても、動作上の問題がない。
このため、強誘電体キャパシタC01,C02からデータの読み出し・再書き込みの場合のポンプ線PUMP1の電圧制御としては、上記の「a」の場合の制御の他に、「b」や「c」のような場合の制御が可能となる。
そこで、これらの3種類のポンプ線PUMP1の電圧制御について、図8を参照して説明する。
そこで、これらの3種類のポンプ線PUMP1の電圧制御について、図8を参照して説明する。
「a」の場合には、図8に示すように、ポンプ線PUMP1の電圧を、Lレベル(接地電圧:例えば0V)、Hレベル(電源電圧VDD)、中間電圧(例えばVDD/2)、Lレベル、Hレベル、中間電圧の順序で変化させていく。
「b」の場合には、図8に示すように、ポンプ線PUMP1の電圧を、Lレベル、Hレベル、Lレベル、Hレベル、中間電圧(VDD/2)の順序で変化させていく。
「b」の場合には、図8に示すように、ポンプ線PUMP1の電圧を、Lレベル、Hレベル、Lレベル、Hレベル、中間電圧(VDD/2)の順序で変化させていく。
「c」の場合には、図8に示すように、ポンプ線PUMP1の電圧を、Lレベル、Hレベル、Lレベル、中間電圧(VDD/2)の順序で変化させていく。
これらのポンプ線PUMP1の電圧制御は、時刻t5までは同じである。そこで、ポンプ線PUMP1の電圧制御のうち、時刻t5以後における「b」および「c」の場合の電圧制御について、「a」の場合の電圧制御と比較しながら説明する。
これらのポンプ線PUMP1の電圧制御は、時刻t5までは同じである。そこで、ポンプ線PUMP1の電圧制御のうち、時刻t5以後における「b」および「c」の場合の電圧制御について、「a」の場合の電圧制御と比較しながら説明する。
時刻t5〜時刻t6の期間では、「a」の場合の電圧制御においてはデータの確定を行うが、「b」および「c」の場合の電圧制御では、データの確定と分極方向の読み出しによって破壊された分極方向の再書き込み(片側)を行う。
すなわち、時刻t5〜時刻t6の期間では、「b」の場合の制御では、ポンプ線PUMP1の電圧が接地電圧であるので、強誘電体キャパシタC01に下向きの分極方向データの再書き込みを行う(図8の丸枠で囲んだ部分を参照)。一方、「c」の場合の制御では、ポンプ線PUMP1の電圧が電源電圧VDDであるので、強誘電体キャパシタC02に上向きの分極方向データの再書き込みを行う(図8の丸枠で囲んだ部分を参照)。
すなわち、時刻t5〜時刻t6の期間では、「b」の場合の制御では、ポンプ線PUMP1の電圧が接地電圧であるので、強誘電体キャパシタC01に下向きの分極方向データの再書き込みを行う(図8の丸枠で囲んだ部分を参照)。一方、「c」の場合の制御では、ポンプ線PUMP1の電圧が電源電圧VDDであるので、強誘電体キャパシタC02に上向きの分極方向データの再書き込みを行う(図8の丸枠で囲んだ部分を参照)。
次に、時刻t6〜時刻t7の期間では、「b」の場合の制御では、ポンプ線PUMP1の電圧が電源電圧VDDであるので、強誘電体キャパシタC02に上向きの分極方向データの再書き込みを行う。一方、「c」の場合の制御では、ポンプ線PUMP1の電圧が接地電圧であるので、強誘電体キャパシタC01に下向きの分極方向データの再書き込みを行う。
以上の説明からわかるように、「b」、「c」の場合の電圧制御では、時刻t5〜t7の期間に、破壊されたデータの再書き込みを行い、時刻t7以後は、強誘電体キャパシタC01,C02は分極方向データを保持したままラッチ状態になる。
次に、以上述べた「a」〜「c」の場合の各電圧制御の利点について説明する。
「a」の場合の制御は、ポンプ線PUMP1の電圧を、Lレベル、Hレベル、中間電圧(VDD/2)の順序で変化させ、これは図6の期間T2におけるデータの書き込み動作におけるポンプ線PUMP1の電圧制御に対応する。このため、このような動作をするシーケンス回路を構成すれば、データの書き込み・読み出し・再書き込みを同じ命令により動作させることができる。
次に、以上述べた「a」〜「c」の場合の各電圧制御の利点について説明する。
「a」の場合の制御は、ポンプ線PUMP1の電圧を、Lレベル、Hレベル、中間電圧(VDD/2)の順序で変化させ、これは図6の期間T2におけるデータの書き込み動作におけるポンプ線PUMP1の電圧制御に対応する。このため、このような動作をするシーケンス回路を構成すれば、データの書き込み・読み出し・再書き込みを同じ命令により動作させることができる。
「b」の場合には、時刻t4〜時刻t7の期間で、強誘電体キャパシタからのデータの読み出し・再書き込みの動作を行うので、その動作を短時間で行うことができる。また、上記のように、ポンプ線PUMP1の電圧をLレベル、Hレベルの順序で2回繰り返すので、Lレベル、Hレベルの順序で動作をするシーケンス回路を構成すれば、データの読み出し・再書き込みの際に同じ命令により動作させることができる。
「c」の場合には、時刻t4〜時刻t7の期間で、強誘電体キャパシタからのデータの読み出し・再書き込みの動作を行うので、その動作を短時間で行うことができる。
以上説明したように、第1実施形態によれば、メモリセルM00〜Mnnの各FeRAMセル5−0、5−2・・・5−nを強誘電体キャパシタのみから構成するようにしたので(図2参照)、スイッチ素子であるトランジスタを各FeRAMセルから省略することができる。
以上説明したように、第1実施形態によれば、メモリセルM00〜Mnnの各FeRAMセル5−0、5−2・・・5−nを強誘電体キャパシタのみから構成するようにしたので(図2参照)、スイッチ素子であるトランジスタを各FeRAMセルから省略することができる。
また、第1実施形態では、FeRAM1のメモリセルM00〜Mnnを、MOSトランジスタからなるSRAMセル4と、強誘電体キャパシタのみからなるFeRAMセル5−0〜5−nとを異なる層に独立に形成させ(図10参照)、その両者を上下方向に重ねるようにした。このため、省スペース化、および実装の高密度化を図ることができる。
また、メモリセルM00〜Mnnは、複数のFeRAMセル5−0〜5−nを備えているので、複数のプログラムを書き込むことができ、1つのFPGAで複数の論理回路を構成してその使い分けができる。
また、メモリセルM00〜Mnnは、複数のFeRAMセル5−0〜5−nを備えているので、複数のプログラムを書き込むことができ、1つのFPGAで複数の論理回路を構成してその使い分けができる。
従って、例えばこのFPGAを無線通信に使用する場合には、データの処理方法が違う通信を、1つのFPGAでプログラムを切り替えながらデータの処理をすることができる。また、そのプログラムの切り替えも高速にできる。
さらに、この第1実施形態では、メモリセルM00〜Mnnが、複数のFeRAMセル5−0〜5−nを含むようにしたので、製品の仕様に対して、余分にFeRAMセルを確保しておくようにすれば、不良メモリを良メモリに置き換えて仕様を満足することができる。このため、歩留りの改善となり、製品のコストダウンに寄与できる。
さらに、この第1実施形態では、メモリセルM00〜Mnnが、複数のFeRAMセル5−0〜5−nを含むようにしたので、製品の仕様に対して、余分にFeRAMセルを確保しておくようにすれば、不良メモリを良メモリに置き換えて仕様を満足することができる。このため、歩留りの改善となり、製品のコストダウンに寄与できる。
さらにまた、この第1実施形態では、メモリセルM00〜Mnnが、それぞれ複数のFeRAMセル5−0〜5−nを含むようにしたので、その全てのFeRAMセル5−0〜5−nに同一のデータを書き込み、FeRAMセル群(プログラム)毎にデータを比較し、同じであれば良品、違いがあるときには不良品と判断できる。
次に、第1実施形態に係るFPGAの使用方法の例について説明する。
次に、第1実施形態に係るFPGAの使用方法の例について説明する。
まず、第1実施形態に係るFPGAの第1の使用方法について説明する。
この第1の使用方法は、複数のメモリセルM00〜Mnnに含まれる複数のFeRAMセル5−0〜5−nのうち、例えばFeRAMセル5−0にFPGAのプログラムを予め格納するとともに、FeRAMセル5−1にその同じプログラムをバックアップ用プログラムとして予め格納しておくものとする。
この第1の使用方法は、複数のメモリセルM00〜Mnnに含まれる複数のFeRAMセル5−0〜5−nのうち、例えばFeRAMセル5−0にFPGAのプログラムを予め格納するとともに、FeRAMセル5−1にその同じプログラムをバックアップ用プログラムとして予め格納しておくものとする。
そして、FeRAMセル5−0に格納されるプログラムと、FeRAMセル5−1に格納されるバックアップ用プログラムとを随時または定期的に比較し、両者の内容が正しかい否かを判断する。
このようにすると、その判断の結果により適切処理ができ、FPGAの信頼性を向上できる。
このようにすると、その判断の結果により適切処理ができ、FPGAの信頼性を向上できる。
ここで、FPGAを書き換え可能なハードウエアキーとして使用するような場合には、FeRAMセル5−1、5−2・・・などに2以上のバックアップ用プログラムを予め格納しておくようにする。
そして、FeRAMセル5−0に格納されるプログラムと、FeRAMセル5−1、5−2・・・・に格納される2以上のバックアップ用プログラムとそれぞれ比較し、多数決によりプログラムの内容が正しかい否かを決定する。
そして、FeRAMセル5−0に格納されるプログラムと、FeRAMセル5−1、5−2・・・・に格納される2以上のバックアップ用プログラムとそれぞれ比較し、多数決によりプログラムの内容が正しかい否かを決定する。
このようにすると、FPGAを書き換え可能なハードウエアキーとして使用するような場合に、より高い信頼性を確保できる。
なお、第1の使用例の変形例として、複数のFeRAMセル5−0〜5−nのうち、例えばFeRAMセル5−0、5−1にFPGAの2種類類のプログラムというように、複数種類のプログラムを予め格納するとともに、FeRAMセル5−2、5−3にその同じ複数種類のプログラムを、バックアップ用プログラムとして予め格納しておくようにしてもよい。
なお、第1の使用例の変形例として、複数のFeRAMセル5−0〜5−nのうち、例えばFeRAMセル5−0、5−1にFPGAの2種類類のプログラムというように、複数種類のプログラムを予め格納するとともに、FeRAMセル5−2、5−3にその同じ複数種類のプログラムを、バックアップ用プログラムとして予め格納しておくようにしてもよい。
このようにすると、FPGAで複数種類のプログラムを使用する場合に、上記と同様に使用できる上に、上記と同様な効果が得られる。
次に、第1実施形態に係るFPGAの第2の使用方法について説明する。
この第2の使用方法は、複数のメモリセルM00〜Mnnに含まれる複数のFeRAMセル5−0〜5−nのうち、例えばFeRAMセル5−0にFPGAのプログラムを予め格納するとともに、FeRAMセル5−1にその同じプログラムを予め格納しておくものとする。
次に、第1実施形態に係るFPGAの第2の使用方法について説明する。
この第2の使用方法は、複数のメモリセルM00〜Mnnに含まれる複数のFeRAMセル5−0〜5−nのうち、例えばFeRAMセル5−0にFPGAのプログラムを予め格納するとともに、FeRAMセル5−1にその同じプログラムを予め格納しておくものとする。
そして、FPGAの使用時には、FeRAMセル5−0に格納されるプログラムと、FeRAMセル5−1に格納されるプログラムとを、例えば交互というように、所定の順序で読み出して使用するようにした。
このように、複数のFeRAMセル5−0〜5−nのうちの2以上に、同一のプログラムを格納しておき、FPGAの使用時に、その各プログラムを所定の順番に読み出して使用すれば、FeRAMの寿命を延ばすことができる。それは、強誘電体キャパシタは、その材料の特性上、使用回数とデータの保持時間に制限があるためである。
このように、複数のFeRAMセル5−0〜5−nのうちの2以上に、同一のプログラムを格納しておき、FPGAの使用時に、その各プログラムを所定の順番に読み出して使用すれば、FeRAMの寿命を延ばすことができる。それは、強誘電体キャパシタは、その材料の特性上、使用回数とデータの保持時間に制限があるためである。
なお、第2の使用例の変形例として、複数のFeRAMセル5−0〜5−nのうち、例えばFeRAMセル5−0、5−1にFPGAの2種類類のプログラムというように、複数種類のプログラムを予め格納するとともに、FeRAMセル5−2、5−3にその同じ複数種類のプログラムを予め格納しておくようにしてもよい。
このようにすると、FPGAで複数種類のプログラムを使用する場合に、上記と同様に使用できる上に、上記と同様な効果が得られる。
このようにすると、FPGAで複数種類のプログラムを使用する場合に、上記と同様に使用できる上に、上記と同様な効果が得られる。
次に、本発明のFPGAの第2実施形態の構成について、図13および図14を参照して説明する。
この第2実施形態に係るFPGAは、第1実施形態に係るFPGAに搭載する図1に示すFeRAM1を、図13に示すFeRAM21に置き換えたものである。
第2実施形態に係るFPGAに搭載されるプログラム用のFeRAM21は、図13に示すように、複数のメモリセルME00〜MEnnが2次元マトリクス状に配置され、そのメモリセルME00〜MEnnに対応して、図中の縦方向にメモリセルME00〜MEnnに対するデータの読み書きを行うためのビット線BL00〜BLnが配置され、かつ、図中の横方向にメモリセルME00〜MEnnを選択するためのワード線WL0〜WLnが配置されている。
この第2実施形態に係るFPGAは、第1実施形態に係るFPGAに搭載する図1に示すFeRAM1を、図13に示すFeRAM21に置き換えたものである。
第2実施形態に係るFPGAに搭載されるプログラム用のFeRAM21は、図13に示すように、複数のメモリセルME00〜MEnnが2次元マトリクス状に配置され、そのメモリセルME00〜MEnnに対応して、図中の縦方向にメモリセルME00〜MEnnに対するデータの読み書きを行うためのビット線BL00〜BLnが配置され、かつ、図中の横方向にメモリセルME00〜MEnnを選択するためのワード線WL0〜WLnが配置されている。
ビット線BL00、BL1、・・・・BLnの各一端側は、対応する入力用のバッファ22−0、22−1、・・・・22−nの各出力側にそれぞれ接続されている。また、ビット線BL00、BL1、・・・・BLnの各他端側は、対応する出力用のバッファ23−0、23−1、・・・・23−nの各入力側にそれぞれ接続されている。
ワード線WL0は、メモリセルME00、ME01・・・・ME0nを選択できるようになっている。ワード線WL1は、メモリセルME10、ME11・・・・ME1nを選択できるようになっている。同様に、ワード線WLnは、メモリセルMEn0、MEn1・・・・MEnnを選択できるようになっている。
ワード線WL0は、メモリセルME00、ME01・・・・ME0nを選択できるようになっている。ワード線WL1は、メモリセルME10、ME11・・・・ME1nを選択できるようになっている。同様に、ワード線WLnは、メモリセルMEn0、MEn1・・・・MEnnを選択できるようになっている。
ビット線BL00、BL1、・・・・BLnは、対応するMOSトランジスタQ0、Q1、・・・・Qnを介して接地されるようになっている。すなわち、ビット線BL00、BL1、・・・・BLnは、MOSトランジスタQ0、Q1、・・・・Qnのオン動作により、同時に接地されるようになっている。
このように構成されるFeRAM21における複数のメモリセルME00〜MEnnは、FPGA内に設けられている所望の論理回路を形成するための各スイッチ、またはFPGA内に設けられているアンド回路やオア回路を用いて組み合わせ回路を形成するためのルックアップ・テーブルの保持データに対応する。
このように構成されるFeRAM21における複数のメモリセルME00〜MEnnは、FPGA内に設けられている所望の論理回路を形成するための各スイッチ、またはFPGA内に設けられているアンド回路やオア回路を用いて組み合わせ回路を形成するためのルックアップ・テーブルの保持データに対応する。
次に、図13に示すメモリセルME00〜MEnnは同様に構成されるので、その一例としてメモリセルME00の構成について、図14を参照して説明する。
メモリセルME00は、図14に示すように、一点鎖線で囲まれたSRAMセル24と、複数のFeRAMセル5−0〜5−nとから構成されている。
また、メモリセルME00は、SRAMセル24に外部からデータをいったん書き込み、そのデータをFeRAMセル5−0〜5−nのうちの1つに選択的に書き込んで保持できるようになっている。従って、FeRAMセル5−0〜5−nには、FPGAに係るn個またはn種類のプログラムのデータを保持できるようになっている。
メモリセルME00は、図14に示すように、一点鎖線で囲まれたSRAMセル24と、複数のFeRAMセル5−0〜5−nとから構成されている。
また、メモリセルME00は、SRAMセル24に外部からデータをいったん書き込み、そのデータをFeRAMセル5−0〜5−nのうちの1つに選択的に書き込んで保持できるようになっている。従って、FeRAMセル5−0〜5−nには、FPGAに係るn個またはn種類のプログラムのデータを保持できるようになっている。
さらに、メモリセルME00は、SRAMセル24に書き込んだデータを読み出すことができるとともに、FeRAMセル5−0〜5−nに保持されるデータのうちの1つを選択的に読み出すことができるようになっている。
また、メモリセルME00は、出力線OUTHと出力線OUTLとを同電位(接地電位)とするために、ビットラインBL0がMOSトランジスタQ0を介して接地され、出力線OUTLがMOSトランジスタ25を介して接地されるようになっている。また、MOSトランジスタQ0とMOSトランジスタ25の各ゲートには、制御信号PREGが供給されるようになっている。
また、メモリセルME00は、出力線OUTHと出力線OUTLとを同電位(接地電位)とするために、ビットラインBL0がMOSトランジスタQ0を介して接地され、出力線OUTLがMOSトランジスタ25を介して接地されるようになっている。また、MOSトランジスタQ0とMOSトランジスタ25の各ゲートには、制御信号PREGが供給されるようになっている。
このような構成により、MOSトランジスタQ0とMOSトランジスタ25をオンにさせると、MOSトランジスタ8をオンにさせることを条件に、メモリセルME00の出力線OUTHと出力線OUTLの電位を同時に接地電位にできるのみならず、他のメモリセルME10、ME20・・・・MEn0の出力線OUTHと出力線OUTLの電位を同時に接地電位にできる(図13参照)。
さらに詳述すると、SRAMセル24は、互いに逆接続されるインバータ6、7から構成されるフリップフロップと、このフリップフロップに対して読み書きを行うN型のMOSトランジスタ8とで構成され、電源がオフにならなければ、1ビットのデータを保持できるようになっている。
このために、ビット線BL0にMOSトランジスタ8が接続され、これにインバータ6が直列に接続されるとともに、インバー6にインバータ7が逆接続されている。また、MOSトランジスタ8ゲートは、ワード線WL0に接続されている。さらに、インバータ6、7の一方の共通接続部は出力線OUTHに接続され、その他方の共通接続部は出力線OUTLに接続されている。
このために、ビット線BL0にMOSトランジスタ8が接続され、これにインバータ6が直列に接続されるとともに、インバー6にインバータ7が逆接続されている。また、MOSトランジスタ8ゲートは、ワード線WL0に接続されている。さらに、インバータ6、7の一方の共通接続部は出力線OUTHに接続され、その他方の共通接続部は出力線OUTLに接続されている。
インバータ6、7は、電源電圧線PWRHおよび接地電圧線PWRLとで図3に示す電源制御回路10と接続され、電源制御回路10により電源がオンオフ制御するようになっている。
なお、FeRAMセル5−0〜5−nの構成は、出力線OUTHがMOSトランジスタQ25により接地される点を除けば、図2に示すFeRAMセル5−0〜5−nの構成と同一であるので、その説明は省略する。
なお、FeRAMセル5−0〜5−nの構成は、出力線OUTHがMOSトランジスタQ25により接地される点を除けば、図2に示すFeRAMセル5−0〜5−nの構成と同一であるので、その説明は省略する。
次に、図13に示す第2実施形態に係るFeRAM21の物理的な構造の概要について、図10〜図12を参照して説明する。
このFeRAM21は、図13に示すようにメモリセルME00〜MEnnからなる。また、その各メモリセルME00〜MEnnは、図14に示すように、MOSトランジスタからなるSRAMセル24の部分と、強誘電体キャパシタのみからなるFeRAMセル5−0〜5−nの部分と、を含んでいる。
このFeRAM21は、図13に示すようにメモリセルME00〜MEnnからなる。また、その各メモリセルME00〜MEnnは、図14に示すように、MOSトランジスタからなるSRAMセル24の部分と、強誘電体キャパシタのみからなるFeRAMセル5−0〜5−nの部分と、を含んでいる。
そこで、FeRAM21は、MOSトランジスタからなるSRAMセル24と、強誘電体キャパシタのみからなるFeRAMセル5−0〜5−nとを異なる層に独立に形成させ、その両者を上下方向に重ねることにより、省スペース化、および実装の高密度化を図るようにした。
すなわち、FeRAM21は、例えば半導体基板(図示せず)上に構成するが、図10に示すように、SRAMセル24を構成するMOSトランジスタをMOS回路構成層31に形成するとともに、FeRAMセル5−0〜5−nを構成する強誘電体キャパシタ(図14参照)を強誘電体キャパシタ層32に形成するようにした。そして、その両層は、対応するセル同士が対向する状態となるように上下に重ね合わせるようにし、重ね合わせたときに、その両層に形成される各セル同士を電気的に接続するようにした。
すなわち、FeRAM21は、例えば半導体基板(図示せず)上に構成するが、図10に示すように、SRAMセル24を構成するMOSトランジスタをMOS回路構成層31に形成するとともに、FeRAMセル5−0〜5−nを構成する強誘電体キャパシタ(図14参照)を強誘電体キャパシタ層32に形成するようにした。そして、その両層は、対応するセル同士が対向する状態となるように上下に重ね合わせるようにし、重ね合わせたときに、その両層に形成される各セル同士を電気的に接続するようにした。
次に、強誘電体キャパシタ層32に形成されるメモリセルME00〜MEnnの強誘電体キャパシタの構造は、図11、図12に示す第1実施形態のメモリセルM00〜Mnnの強誘電体キャパシタの構造と同じであるので、その説明は省略する。
そして、メモリセルME00〜MEnnでは、強誘電体キャパシタ層32側に形成されるFeRAMセル5−0〜5−nと、MOS回路構成層31側に形成されるSRAMセル24とを電気的に接続するが、この接続は第1実施形態のメモリセルM00〜Mnnの場合と同様であるので、その説明は省略する。
そして、メモリセルME00〜MEnnでは、強誘電体キャパシタ層32側に形成されるFeRAMセル5−0〜5−nと、MOS回路構成層31側に形成されるSRAMセル24とを電気的に接続するが、この接続は第1実施形態のメモリセルM00〜Mnnの場合と同様であるので、その説明は省略する。
次に、このような構成からなる第2実施形態に係るFPGAに搭載されるプログラム用のFeRAM21の動作例について、図15〜図17を参照して説明する。
まず、図14に示すメモリセルME00のSRAMセル24にデータを書き込み、その書き込んだデータをFeRAMセル5−0に保持する場合の動作について、図15を参照して説明する。
まず、図14に示すメモリセルME00のSRAMセル24にデータを書き込み、その書き込んだデータをFeRAMセル5−0に保持する場合の動作について、図15を参照して説明する。
ここで、電源投入時の各部の初期状態は重要ではないので、図15に示すように、ビット線BL0、XBL0および出力線OUTL、OUTHのデータは不定とし、他の部分の信号はLレベルにしている。また、この動作では、FeRAMセル5−0からのデータの読み出しも行わないので、制御信号PREGもLレベルとする。
いま、図15に示すように、時刻t1において電源が投入されて、電源電圧VDDが立ち上がると、ポンプ線PUMP1,PUMP2・・・PUMPnの各電圧をVDD/2にする。これは、第1実施形態の場合と同様に、強誘電体キャパシタにC01,C02・・・に保持した分極方向のデータを破壊しないためである。
いま、図15に示すように、時刻t1において電源が投入されて、電源電圧VDDが立ち上がると、ポンプ線PUMP1,PUMP2・・・PUMPnの各電圧をVDD/2にする。これは、第1実施形態の場合と同様に、強誘電体キャパシタにC01,C02・・・に保持した分極方向のデータを破壊しないためである。
次に、時刻t2では、イネーブルパワー信号ENBPがHレベルに立ち上がるので、図3に示すMOSトランジスタ12がオンし、電源電圧VDDが電源電圧線PWRHを介してインバータ6、7に供給され、インバータ6、7を動作状態になる。このとき、図15に示すように、出力線OUTH,OUTLの出力は不定である。
次に、書き込みデータDin0をSRAMセル24に書き込む。ここでは、書き込みデータDin0としてHレベルを書き込むので、時刻t3において、書き込みデータDin0をHレベルにする。その後、時刻t4において、イネーブル信号ENBAをHレベルにし、図13に示すバッファ22−0をアクティブの状態にする。
次に、書き込みデータDin0をSRAMセル24に書き込む。ここでは、書き込みデータDin0としてHレベルを書き込むので、時刻t3において、書き込みデータDin0をHレベルにする。その後、時刻t4において、イネーブル信号ENBAをHレベルにし、図13に示すバッファ22−0をアクティブの状態にする。
次に、時刻t5では、ワード線WL0をHレベルとするので、MOSトランジスタ8がオンとなる。この結果、ビット線BL0と出力線OUTHが接続される。
ここで、バッファ22−0は、インバータ7よりも、出力インピーダンスが低い(ドライブ能力が高い)ように設計されているので、出力線OUTH側はHレベル、出力線OUTL側はLレベルとなる(図15参照)。
ここで、バッファ22−0は、インバータ7よりも、出力インピーダンスが低い(ドライブ能力が高い)ように設計されているので、出力線OUTH側はHレベル、出力線OUTL側はLレベルとなる(図15参照)。
その後、時刻t6においてワード線WL0をHレベルからLレベルとし、時刻t7においてイネーブル信号ENBAをHレベルからLレベルとする。
ここで、ワード線WL0をLレベルにさせ、ビット線BL0と出力線OUTHを切断しても、インバータ6、7は互いに逆接続されてデータを保持しているので、出力線OUTHはHレベルを保持し、出力線OUTLはLレベルを保持する。この状態は、SRAMセル24にデータを新たに書き換えるか、または電源がオフとならない限り維持される。
ここで、ワード線WL0をLレベルにさせ、ビット線BL0と出力線OUTHを切断しても、インバータ6、7は互いに逆接続されてデータを保持しているので、出力線OUTHはHレベルを保持し、出力線OUTLはLレベルを保持する。この状態は、SRAMセル24にデータを新たに書き換えるか、または電源がオフとならない限り維持される。
その後、時刻t8において、書き込みデータDin0をHレベルからLレベルに変化させる。
次に、時刻t3から時刻t8までの期間T1にSRAMセル24に書き込まれたデータを、FeRAMセル5−0である強誘電体キャパシタC01,C02に格納しておくことにより、FPGA内に回路を構築できるので、そのFeRAMセル5−0へのデータの格納動作について以下に説明する。
次に、時刻t3から時刻t8までの期間T1にSRAMセル24に書き込まれたデータを、FeRAMセル5−0である強誘電体キャパシタC01,C02に格納しておくことにより、FPGA内に回路を構築できるので、そのFeRAMセル5−0へのデータの格納動作について以下に説明する。
この場合には、図15に示すように、ポンプ線PUMP1の電圧を、時刻t9に中間電位(VDD/2)から接地電位(GND)に変化させ、時刻t10に接地電位から電源電圧VDDに変化させ、時刻t11に電源電圧VDDから中間電位(VDD/2)に変化させる。
この結果、図14に示す強誘電体キャパシタC01,C02の分極方向は、図15に示すようになってデータが格納されるので、以下にこの分極方向について説明する。
この結果、図14に示す強誘電体キャパシタC01,C02の分極方向は、図15に示すようになってデータが格納されるので、以下にこの分極方向について説明する。
まず、時刻t9〜時刻t10では、出力線OUTHの電圧が電源電圧VDDで、ポンプ線PUMP1の電圧が接地電位であるので、強誘電体キャパシタC01には、「1」のデータとして下向きの分極方向が書き込まれる。また、このときには、出力線OUTLの電圧が接地電位で、ポンプ線PUMP1の電圧が接地電位であるので、強誘電体キャパシタC02の分極方向は不定のままである。
次に、時刻t10〜時刻t11では、出力線OUTHの電圧が電源電圧VDDで、ポンプ線PUMP1の電圧が電源電圧VDDであるので、強誘電体キャパシタC01は変化がなく前の状態を維持するので、「1」のデータとして分極方向は下向きのままである。また、このときには、出力線OUTLの電圧が接地電位で、ポンプ線PUMP1の電圧が電源電圧VDDであるので、強誘電体キャパシタC02には、「1」のデータとして上向きの分極方向が書き込まれる。
次に、時刻t11以後では、ポンプ線PUMP1の電圧が中間電位(VDD/2)となる。この場合には、強誘電体キャパシタC01にはVDD/2の電圧が印加され、強誘電体キャパシタC02には−VDD/2の電圧が印加されるが、図4および図5の説明により明らかのように、強誘電体キャパシタC01,C02の各分極方向は変化しない。
以上の説明により、ポンプ信号PUMP1を電圧を、中間電圧(VDD/2)から接地電位、電源電圧VDD、および中間電圧(VDD/2)の順序で変化させることにより、強誘電体キャパシタC01,C02に分極方向を書き込むことができる。
以上の説明により、ポンプ信号PUMP1を電圧を、中間電圧(VDD/2)から接地電位、電源電圧VDD、および中間電圧(VDD/2)の順序で変化させることにより、強誘電体キャパシタC01,C02に分極方向を書き込むことができる。
このような動作により、強誘電体キャパシタC01、C02に分極が残り、データの保存が完了する。この分極の方向は電源がオフされても残るので、メモリセルME00は、不揮発性RAMとなる。
ここで、図15は、FeRAMセル5−0に「1」のデータを書き込む場合であり、そのデータ「1」は書き込み後には、強誘電体キャパシタC01に下向きの分極方向で保持され、強誘電体キャパシタC02に上向きの分極方向で保持される。
ここで、図15は、FeRAMセル5−0に「1」のデータを書き込む場合であり、そのデータ「1」は書き込み後には、強誘電体キャパシタC01に下向きの分極方向で保持され、強誘電体キャパシタC02に上向きの分極方向で保持される。
同様に、FeRAMセル5−0に「0」のデータを書き込む場合には、そのデータ「0」は書き込み後には、強誘電体キャパシタC01に上向きの分極方向で保持され、強誘電体キャパシタC02に下向きの分極方向で保持される。
なお、以上の説明は、FeRAMセル5−0へのデータの格納動作であるが、他のFeRAMセル5−1〜5−nについても同様な動作により所望のデータを格納することができる。
なお、以上の説明は、FeRAMセル5−0へのデータの格納動作であるが、他のFeRAMセル5−1〜5−nについても同様な動作により所望のデータを格納することができる。
次に、上記のように、メモリセルME00のSRAMセル24にデータを書き込み、その書き込んだデータをFeRAMセル5−0に保持したのち、SRAMセル24に書き込んだデータを外部に読み出してチェックする場合の動作について、図16を参照して説明する。
このときには、インバータ6、7からなるフリップフロップにデータが格納されており、出力線OUTHはHレベル、出力線OUTLはLレベルとする。また、メモリセルME00の各部の状態は、図16に示すものとする。
このときには、インバータ6、7からなるフリップフロップにデータが格納されており、出力線OUTHはHレベル、出力線OUTLはLレベルとする。また、メモリセルME00の各部の状態は、図16に示すものとする。
図16に示すように、時刻t1においてワード線WL0をHレベルにすると、MOSトランジスタ8がオンになる。この結果、ビット線BL0と出力線OUTHが接続されるので、出力線OUTHの電位がビット線BL0に伝達される。
このため、時刻t1〜t2の期間T1において、バッファ23−0は出力線OUTHの電位を出力する。その後、時刻t2にワード線WL0をHレベルからLレベルにすると、SRAMセル24からのデータの読み出し動作を終了する。
このため、時刻t1〜t2の期間T1において、バッファ23−0は出力線OUTHの電位を出力する。その後、時刻t2にワード線WL0をHレベルからLレベルにすると、SRAMセル24からのデータの読み出し動作を終了する。
次に、上記のように、メモリセルME00のFeRAMセル5−0に保持させたデータを、出力線OUTH、OUTLに読み出す場合の動作について、図17を参照して説明する。このときの各部の信号の設定と状態は、図17に示す通りである。
ここで、図17に示す制御では、ポンプ線PUMP1の電圧制御については、図示のように「a」、「b」、「c」の場合がある。この点は、第1実施形態のポンプ線PUMP1の電圧制御(図8参照)の場合と同様であり、以下の説明では「a」の場合について主に説明し、必要に応じて「b」、「c」の場合について説明する。
ここで、図17に示す制御では、ポンプ線PUMP1の電圧制御については、図示のように「a」、「b」、「c」の場合がある。この点は、第1実施形態のポンプ線PUMP1の電圧制御(図8参照)の場合と同様であり、以下の説明では「a」の場合について主に説明し、必要に応じて「b」、「c」の場合について説明する。
図17において、図13に示すバッファ22−0に供給されるイネーブル信号ENBAはLレベルであるので、バッファ22−0の出力はオフ(ハイインピーダンス状態)である。また、書き込みデータDin0はLレベルである。
なお、上記のようにバッファ22−0の出力はオフであり、他の回路に影響を与えることはないので、書き込みデータDin0は、Hレベルであっても良い。
なお、上記のようにバッファ22−0の出力はオフであり、他の回路に影響を与えることはないので、書き込みデータDin0は、Hレベルであっても良い。
この例では、図14に示すFeRAMセル5−0の強誘電体キャパシタC01,C02に記憶されるデータの読み出しと再書き込みとを行うので、図17に示すように、ポンプ線PUMP1線の電圧のみを変化させ、他のポンプ線PUMP2〜PUMPnの電圧は中間電圧(VDD/2)に固定させておく。
まず、期間T1(時刻t0〜時刻t4)に、強誘電体キャパシタC01,C02からのデータ読み出しの準備を行うので、この準備について図17を参照して説明する。
まず、期間T1(時刻t0〜時刻t4)に、強誘電体キャパシタC01,C02からのデータ読み出しの準備を行うので、この準備について図17を参照して説明する。
図17に示すように、時刻t0では、イネーブルパワー信号ENBPをHレベルからLレベルにさせるので、電源電圧VDDのインバータ6、7への供給が停止されて、インバータ6、7がオフの状態になる。この状態は、時刻t5まで継続される。
また、時刻t0では、ワード線WL0をLレベルとするので、MOSトランジスタ8がオフである。このため、ビット線BL0と出力線OUTHが切断された状態であり、この状態は時刻t2まで継続される。
また、時刻t0では、ワード線WL0をLレベルとするので、MOSトランジスタ8がオフである。このため、ビット線BL0と出力線OUTHが切断された状態であり、この状態は時刻t2まで継続される。
さらに、時刻t0では、ポンプ線PUMP1の電圧を中間電圧(VDD/2)とし、この状態は時刻t2まで継続される。
次に、時刻t1では、制御信号PREGをLレベルからHレベルに変化させるので、MOSトランジスタQ0およびMOSトランジスタ25がオンになる。この結果、ビット線BL0および出力線OUTLが接地されてLレベルとなり、この状態は時刻t4まで継続される。
次に、時刻t1では、制御信号PREGをLレベルからHレベルに変化させるので、MOSトランジスタQ0およびMOSトランジスタ25がオンになる。この結果、ビット線BL0および出力線OUTLが接地されてLレベルとなり、この状態は時刻t4まで継続される。
その後、時刻t2では、図17に示すように、ワード線WL0をLレベルからHレベルに変化させるので、MOSトランジスタ8がオンとなる。この結果、ビット線BL0と出力線OUTHとが接続されて、その出力線OUTHの電位がLレベルとなり、この状態は時刻t4まで維持される。
また、時刻t2では、ポンプ線PUMP1の電圧を中間電圧(VDD/2)から接地電位(0V)に変化させ、この接地電位は時刻t4まで継続される。
また、時刻t2では、ポンプ線PUMP1の電圧を中間電圧(VDD/2)から接地電位(0V)に変化させ、この接地電位は時刻t4まで継続される。
以上説明したように、時刻t0〜時刻t4の期間T1は、強誘電体キャパシタC01,C02からのデータ読み出しのための準備段階である。これは、出力線OUTH,OUTLの各電圧を接地電位に保った状態とし、この状態でハイインピーダンス(高抵抗)状態にするためであり、さらに、ポンプ線PUMP1の電圧を接地電圧にするためである。
次に、期間T2(時刻t4〜時刻t6)では、強誘電体キャパシタC01,C02からのデータの読み出しを行うので、このデータの読み出し動作について図17を参照して説明する。
次に、期間T2(時刻t4〜時刻t6)では、強誘電体キャパシタC01,C02からのデータの読み出しを行うので、このデータの読み出し動作について図17を参照して説明する。
図17に示すように、時刻t4では、イネーブルパワー信号ENBPがLレベルであるので、電源電圧VDDのインバータ6、7への供給が停止されて、インバータ6、7がオフの状態になる。
また、時刻t4では、制御信号PREGがLレベルであるので、MOSトランジスタQ0がオフである。このため、ビット線BL0は接地されていない状態である。
また、時刻t4では、制御信号PREGがLレベルであるので、MOSトランジスタQ0がオフである。このため、ビット線BL0は接地されていない状態である。
さらに、時刻t4では、ポンプ線PUMP1の電圧が、接地電位(0V)から電源電圧VDDに変化する。このため、時刻t4〜時刻t5の期間では、出力線OUTL,OUTHの各電圧が図17に示すように変化する。これは、図8に示す場合と同様であるので、その詳細な説明は省略する。
次に、図17に示すように、時刻t5では、イネーブルパワー信号ENBPがLレベルからHレベルに変化するので、電源電圧VDDがインバータ6、7へ供給されて、インバータ6、7がオンの状態になる。
次に、図17に示すように、時刻t5では、イネーブルパワー信号ENBPがLレベルからHレベルに変化するので、電源電圧VDDがインバータ6、7へ供給されて、インバータ6、7がオンの状態になる。
また、時刻t5では、ポンプ線PUMP1の電圧が、電源電圧VDDから中間電圧(VDD/2)に変化する。
このように、時刻t5では、インバータ6、7が動作状態になり、このインバータ6、7が互いに逆接続された回路が、アンプとして動作し、出力線OUTHの出力電圧と出力線OUTLの出力電圧との差をさらに広げる。このため、図17に示すように、出力線OUTHの出力電圧をHレベルにし、出力線OUTLの出力電圧をLレベルにする。
このように、時刻t5では、インバータ6、7が動作状態になり、このインバータ6、7が互いに逆接続された回路が、アンプとして動作し、出力線OUTHの出力電圧と出力線OUTLの出力電圧との差をさらに広げる。このため、図17に示すように、出力線OUTHの出力電圧をHレベルにし、出力線OUTLの出力電圧をLレベルにする。
以上のように、期間T2では、強誘電体キャパシタC01,C02の分極方向のデータの読み出しを行っていることになる。
次に、期間T3(時刻t6〜時刻t8)では、強誘電体キャパシタC01、強誘電体キャパシタC02の順序でデータの再書き込みを行うので、この再書き込み動作について説明する。
次に、期間T3(時刻t6〜時刻t8)では、強誘電体キャパシタC01、強誘電体キャパシタC02の順序でデータの再書き込みを行うので、この再書き込み動作について説明する。
まず、時刻t6〜時刻t7の期間では、強誘電体キャパシタC01に、下向きの分極方向データの再書き込みを行う。次に、時刻t7〜時刻t8の期間では、強誘電体キャパシタC02に、上向きの分極方向データの再書き込みを行う。これらの動作は、第1実施形態の図8に示す動作と同様であるので、その説明は省略する。
以上の説明は、ポンプ線PUMP1の電圧制御が図17の「a」の場合である。しかし、図17に示す時刻t5では、強誘電体キャパシタC01,C02からデータを読み出した後であるので、ポンプ線PUMP1の電圧は、電源電圧VDD、接地電圧、または中間電圧(VDD/2)のうちのいずれであっても、動作上の問題がない。
以上の説明は、ポンプ線PUMP1の電圧制御が図17の「a」の場合である。しかし、図17に示す時刻t5では、強誘電体キャパシタC01,C02からデータを読み出した後であるので、ポンプ線PUMP1の電圧は、電源電圧VDD、接地電圧、または中間電圧(VDD/2)のうちのいずれであっても、動作上の問題がない。
このため、強誘電体キャパシタC01,C02からデータの読み出し・再書き込みの場合のポンプ線PUMP1の電圧制御としては、上記の「a」の場合の制御の他に、「b」や「c」のような場合の制御が可能となる。
ここで、「b」や「c」のような制御は、上記の第1実施形態の制御と同様であるので、その説明は省略する。
ここで、「b」や「c」のような制御は、上記の第1実施形態の制御と同様であるので、その説明は省略する。
以上説明したように、第2実施形態によれば、メモリセルME00〜MEnnの各FeRAMセル5−0、5−2・・・5−nを強誘電体キャパシタのみから構成するようにしたので(図14参照)、各FeRAMセル5−0、5−2・・・5−nからスイッチ素子であるトランジスタを省略できる。
また、第2実施形態では、FeRAM21のメモリセルME00〜MEnnを、MOSトランジスタからなるSRAMセル24と、強誘電体キャパシタのみからなるFeRAMセル5−0〜5−nとを異なる層に独立に形成させ、その両者を上下方向に重ねるようにした。このため、省スペース化、および実装の高密度化を図ることができる。
また、第2実施形態では、FeRAM21のメモリセルME00〜MEnnを、MOSトランジスタからなるSRAMセル24と、強誘電体キャパシタのみからなるFeRAMセル5−0〜5−nとを異なる層に独立に形成させ、その両者を上下方向に重ねるようにした。このため、省スペース化、および実装の高密度化を図ることができる。
また、第2実施形態では、メモリセルME00〜MEnnは、複数のFeRAMセル5−0〜5−nを備えているので、複数のプログラムを書き込むことができ、1つのFPGAで複数の論理回路を構成してその使い分けができる。
さらに、この第2実施形態では、メモリセルME00〜MEnnが、複数のFeRAMセル5−0〜5−nを含むようにしたので、製品の仕様に対して、余分にFeRAMセルを確保しておくようにすれば、不良メモリを良メモリに置き換えて仕様を満足することができる。このため、歩留りの改善となり、製品のコストダウンに寄与できる。
さらに、この第2実施形態では、メモリセルME00〜MEnnが、複数のFeRAMセル5−0〜5−nを含むようにしたので、製品の仕様に対して、余分にFeRAMセルを確保しておくようにすれば、不良メモリを良メモリに置き換えて仕様を満足することができる。このため、歩留りの改善となり、製品のコストダウンに寄与できる。
さらにまた、この第2実施形態では、メモリセルME00〜MEnnが、それぞれ複数のFeRAMセル5−0〜5−nを含むようにしたので、その全てのFeRAMセル5−0〜5−nに同一のデータを書き込み、FeRAMセル群(プログラム)毎にデータを比較し、同じであれば良品、違いがあるときには不良品と判断できる。
なお、第2実施形態に係るFPGAは、第1実施形態に係るFPGAの使用方法と同様の使用方法が適用できること勿論であり、その説明は重複するので、ここではその説明は省略する。
なお、第2実施形態に係るFPGAは、第1実施形態に係るFPGAの使用方法と同様の使用方法が適用できること勿論であり、その説明は重複するので、ここではその説明は省略する。
M00〜Mnn、ME00〜MEnn・・・メモリセル、BL0、XBL0、BL1、XBL1・・・・BLn、XBLn・・・ビット線、WL0〜WLn・・・ワード線、Q0、Q0’、Q1、Q1’・・・・Qn、Qn’・・・MOSトランジスタ、1、21・・・FeRAM、4、24・・・SRAMセル、5−1〜5−n・・・FeRAMセル、6、7・・インバータ、8、9・・・MOSトランジスタ、10・・・電源制御回路
Claims (8)
- 各種の論理ブロックを基板上に多数搭載し、これらの論理ブロックの間の配線を、前記基板上に搭載させたFeRAMを使用してプログラムできるフィールド・プログラマブル・ゲート・アレイであって、
前記FeRAMは、複数のメモリセルと、前記メモリセルを選択するワード線と、前記メモリセルに対してデータの読み出し書き込みを行う一対の第1および第2のビット線とを含み、
前記各メモリセルは、1つのSRAMセルと複数のFeRAMセルとを含み、
前記SRAMセルは、データを記憶するフリップフロップと、前記フリップフロップに対してデータの読み出し書き込みを行う第1および第2のトランジスタとからなり、
前記各FeRAMセルは、データを記憶する2つの強誘電体キャパシタからなり、
前記第1および第2のトランジスタは、その制御端子を前記ワード線にそれぞれ接続させ、その第1の端子を前記第1および第2のビット線にそれぞれ接続させ、その第2の端子を前記フリップフロップの入出力端子と一対の第1および第2の出力線とにそれぞれ接続させ、
かつ、2つの強誘電体キャパシタは、その一方の電極を前記第1および第2の出力線にそれぞれ接続させ、その他方の電極をポンプ線にそれぞれ共通接続させていることを特徴とするフィールド・プログラマブル・ゲート・アレイ。 - 前記2つの強誘電体キャパシタへデータを書き込むときには、前記ポンプ線の電圧を、所定の電圧値からなる第1の電圧とそれよりもレベルの低い所定の電圧値からなる第2の電圧との中間電圧を基準に、前記第1の電圧、前記第2の電圧、および前記中間電圧の順序で変化させ、
前記2つの強誘電体キャパシタのデータを前記両出力線に読み出して再書き込みするときには、前記ポンプ線の電圧を、前記中間電圧を基準に、前記第2の電圧および前記第1の電圧の順序で変化させ、次に前記第2の電圧および前記第1の電圧の順序でまたは前記第1の電圧および前記第2の電圧の順序で変化させる過程を経たのち、前記中間電圧に復帰させるようにしたことを特徴とする請求項1に記載のフィールド・プログラマブル・ゲート・アレイ。 - 前記第1の電圧は電源電圧であり、前記第2の電圧は接地電圧であり、前記中間電圧は前記電源電圧と前記接地電圧との中間の電圧であることを特徴とする請求項2に記載のフィールド・プログラマブル・ゲート・アレイ。
- 前記複数のメモリセルは、SRAMセルを構成する各トランジスタを第1の形成層に独立に形成するとともに、前記FeRAMセルを構成する各強誘電体キャパシタを第2の形成層に独立に構成するようにし、
前記第1の形成層と前記第2の形成層とは、対応するセル同士が対向する状態となるように上下に重ねて一体に形成するようにし、
かつ、前記両層とが一体となったときに、その両層に形成される対応するセル同士が電気的に接続されるようになっていることを特徴とする請求項1、請求請2または請求請3に記載のフィールド・プログラマブル・ゲート・アレイ。 - 各種の論理ブロックを基板上に多数搭載し、これらの論理ブロックの間の配線を、前記基板上に搭載させたFeRAMを使用してプログラムできるフィールド・プログラマブル・ゲート・アレイであって、
前記FeRAMは、複数のメモリセルと、前記メモリセルを選択するワード線と、前記メモリセルに対してデータの読み出し書き込みを行うビット線とを含み、
前記各メモリセルは、1つのSRAMセルと複数のFeRAMセルとを含み、
前記SRAMセルは、データを記憶するフリップフロップと、前記フリップフロップに対してデータの読み出し書き込みを行う第1のトランジスタとからなり、
前記各FeRAMセルは、データを記憶する2つの強誘電体キャパシタからなり、
前記第1のトランジスタは、制御端子を前記ワード線に接続させ、第1の端子をビット線に接続させ、第2の端子を前記フリップフロップの入力端子に接続させ、かつ、前記フリップフロップの入出力端子に一対の第1および第2の出力線をそれぞれ接続させ、
さらに、2つの強誘電体キャパシタは、その一方の電極を前記第1および第2の出力線にそれぞれ接続させ、その他方の電極をポンプ線にそれぞれ共通接続させていることを特徴とするフィールド・プログラマブル・ゲート・アレイ。 - 前記2つの強誘電体キャパシタへデータを書き込むときには、前記ポンプ線の電圧を、所定の電圧値からなる第1の電圧とそれよりもレベルの低い所定の電圧値からなる第2の電圧との中間電圧を基準に、前記第1の電圧、前記第2の電圧、および前記中間電圧の順序で変化させ、
前記2つの強誘電体キャパシタのデータを前記両出力線に読み出して再書き込みするときには、前記ポンプ線の電圧を、前記中間電圧を基準に、前記第2の電圧および前記第1の電圧の順序で変化させ、次に前記第2の電圧および前記第1の電圧の順序でまたは前記第1の電圧および前記第2の電圧の順序で変化させる過程を経たのち、前記中間電圧に復帰させるようにしたことを特徴とする請求項5に記載のフィールド・プログラマブル・ゲート・アレイ。 - 前記第1の電圧は電源電圧であり、前記第2の電圧は接地電圧であり、前記中間電圧は前記電源電圧と前記接地電圧との中間の電圧であることを特徴とする請求項6に記載のフィールド・プログラマブル・ゲート・アレイ。
- 前記複数のメモリセルは、SRAMセルを構成する各トランジスタを第1の形成層に独立に形成するとともに、前記FeRAMセルを構成する各強誘電体キャパシタを第2の形成層に独立に構成するようにし、
前記第1の形成層と前記第2の形成層とは、対応するセル同士が対向する状態となるように上下に重ねて一体に形成するようにし、
かつ、前記両層とが一体となったときに、その両層に形成される対応するセル同士が電気的に接続されるようになっていることを特徴とする請求項5、請求請6または請求項7に記載のフィールド・プログラマブル・ゲート・アレイ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003341611A JP2005109960A (ja) | 2003-09-30 | 2003-09-30 | フィールド・プログラマブル・ゲート・アレイ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003341611A JP2005109960A (ja) | 2003-09-30 | 2003-09-30 | フィールド・プログラマブル・ゲート・アレイ |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005109960A true JP2005109960A (ja) | 2005-04-21 |
Family
ID=34536167
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003341611A Pending JP2005109960A (ja) | 2003-09-30 | 2003-09-30 | フィールド・プログラマブル・ゲート・アレイ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005109960A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8445887B2 (en) | 2008-10-01 | 2013-05-21 | Electronics And Telecommunications Research Institute | Nonvolatile programmable switch device using phase-change memory device and method of manufacturing the same |
WO2015037413A1 (ja) * | 2013-09-16 | 2015-03-19 | 太陽誘電株式会社 | 再構成可能な論理デバイス |
-
2003
- 2003-09-30 JP JP2003341611A patent/JP2005109960A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8445887B2 (en) | 2008-10-01 | 2013-05-21 | Electronics And Telecommunications Research Institute | Nonvolatile programmable switch device using phase-change memory device and method of manufacturing the same |
WO2015037413A1 (ja) * | 2013-09-16 | 2015-03-19 | 太陽誘電株式会社 | 再構成可能な論理デバイス |
US9729154B2 (en) | 2013-09-16 | 2017-08-08 | Taiyo Yuden Co., Ltd. | Reconfigurable logic device configured as a logic element or a connection element |
TWI625730B (zh) * | 2013-09-16 | 2018-06-01 | Taiyo Yuden Co Ltd | Reconfigurable logic element, control method of reconfigurable logic element, program product for controlling reconfigurable logic element, and computer readable recording medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4939528B2 (ja) | メモリラインドライバのノンバイナリグループ用のデコーディング回路 | |
JP5642649B2 (ja) | 半導体記憶装置及び半導体装置 | |
US7457158B2 (en) | Flash memory device having single page buffer structure and related programming operations | |
JP5020588B2 (ja) | ページバッファ及びその駆動方法、並びにこれを具備した不揮発性メモリ装置 | |
JP2010113758A (ja) | 不揮発性半導体記憶装置のためのページバッファ回路とその制御方法 | |
US7292475B2 (en) | Nonvolatile memory device and data write method for nonvolatile memory device | |
JP4357351B2 (ja) | 不揮発性半導体記憶装置 | |
JP2004220740A (ja) | 強誘電体記憶装置 | |
US8812777B2 (en) | Nonvolatile memory device | |
US20070041247A1 (en) | Flash memory device having single page buffer structure | |
JP2008097705A (ja) | 半導体記憶装置 | |
US6621734B2 (en) | Nonvolatile semiconductor memory device and electronic information apparatus | |
JP2004153700A (ja) | フィールド・プログラマブル・ゲート・アレイおよびその使用方法 | |
US20120326747A1 (en) | Reconfigurable logic device | |
JP2005109960A (ja) | フィールド・プログラマブル・ゲート・アレイ | |
US7262988B2 (en) | Memory device and semiconductor device | |
JP3760470B2 (ja) | 記憶回路、半導体装置、及び電子機器 | |
JPH11110976A (ja) | 不揮発性半導体記憶装置 | |
JP2008217937A (ja) | 強誘電体記憶装置及びその制御方法 | |
US7596025B2 (en) | Semiconductor memory device and method of controlling semiconductor memory device | |
US20230328977A1 (en) | Active resistor array of semiconductor memory device | |
US20070103962A1 (en) | Programmable memory cell and operation method | |
KR100663213B1 (ko) | 기억 회로, 반도체 장치, 및 전자 기기 | |
JP2011187141A (ja) | 転送回路及びそれを用いた不揮発性半導体記憶装置 | |
JP4370573B2 (ja) | 強誘電体記憶装置及び電子機器 |