(57)【要約】【課題】高速書き込みが可能であるとともに消費電流が少なくかつ占有面積が小さく、何回でも書き込みが可能なメモリを有するリコンフィギャラブル集積回路装置およびその書き込み方法を提供する。【解決手段】本実施形態のリコンフィギャラブル集積回路装置は、第１乃至第３配線と、ゲートが前記第１配線に接続され、ソースおよびドレインの一方が前記第２配線に接続され、ソースおよびドレインの他方が前記第３配線に接続された第１不揮発性メモリトランジスタと、前記第３配線に接続されたゲートを有するスイッチ回路と、前記第１不揮発性メモリトランジスタに情報を書き込む書き込み電圧、前記第１不揮発性メモリトランジスタから情報を消去する消去電圧、および前記第１不揮発性メモリトランジスタをオンさせる選択電圧のいずれかを選択して前記第１配線に印加する第１電源回路と、前記第３配線に記憶するためのビットデータを前記第２配線に供給するデータ供給回路と、を備えている。【選択図】図２５
2014030110.tif 000002
【特許請求の範囲】
【請求項１】
第１乃至第３配線と、
ゲートが前記第１配線に接続され、ソースおよびドレインの一方が前記第２配線に接続され、ソースおよびドレインの他方が前記第３配線に接続された第１不揮発性メモリトランジスタと、
前記第３配線に接続されたゲートを有するスイッチ回路と、
前記第１不揮発性メモリトランジスタに情報を書き込む書き込み電圧、前記第１不揮発性メモリトランジスタから情報を消去する消去電圧、および前記第１不揮発性メモリトランジスタをオンさせる選択電圧のいずれかを選択して前記第１配線に印加する第１電源回路と、
前記第３配線に記憶するためのビットデータを前記第２配線に供給するデータ供給回路と、
を備えたことを特徴とするリコンフィギャラブル集積回路装置。
【請求項２】
前記データ供給回路は、前記ビットデータを格納するレジスタおよびメモリのいずれかを備えたことを特徴とする請求項１記載のリコンフィギャラブル集積回路装置。
【請求項３】
前記データ供給回路は、前記ビットデータを格納するメモリと、前記メモリに格納されたデータを展開し、前記第２配線に送出するレジスタと、を備えたことを特徴とする請求項１記載のリコンフィギャラブル集積回路装置。
【請求項４】
第４および第５配線と、
ゲートが前記第４配線に接続され、ソースおよびドレインの一方が前記第５配線に接続され、ソースおよびドレインの他方が前記第３配線に接続された第２不揮発性メモリトランジスタと、
を備えたことを特徴とする請求項１乃至３のいずれかに記載のリコンフィギャラブル集積回路装置。
【請求項５】
第４配線と、
ゲートが前記第１配線に接続され、ソースおよびドレインの一方が前記第４配線に接続され、ソースおよびドレインの他方が前記第３配線に接続された第２不揮発性メモリトランジスタと、
を備えたことを特徴とする請求項１乃至３のいずれかに記載のリコンフィギャラブル集積回路装置。
【請求項６】
前記第３配線に接続された容量を更に備えたことを特徴とする請求項１乃至５のいずれかに記載のリコンフィギャラブル集積回路装置。
【請求項７】
前記第３配線に、ソース、ドレインおよびゲートのうちの少なくとも一つが接続されたトランジスタを更に備えたことを特徴とする請求項１乃至５のいずれかに記載のリコンフィギャラブル集積回路装置。
【請求項８】
前記スイッチ回路は、前記第３配線に接続されたゲートを有するパストランジスタを備えたことを特徴とする請求項１乃至７のいずれかに記載のリコンフィギャラブル集積回路装置。
【請求項９】
前記スイッチ回路はインバータを有し、前記インバータは、
ゲートが前記第３配線に接続され、ソースが第１電源に接続されたｐチャネルトランジスタと、
ゲートが前記第３配線に接続され、ソースが第２電源に接続され、ドレインが前記ｐチャネルトランジスタのドレインに接続されたｎチャネルトランジスタと、
を備えたことを特徴とする請求項１乃至７のいずれかに記載のリコンフィギャラブル集積回路装置。
【請求項１０】
前記第２配線に、前記第１不揮発性メモリトランジスタに前記情報を書き込む書き込み電圧および前記第１不揮発性メモリトランジスタに前記情報の書き込みを防止する書き込み防止電圧のいずれかを選択して供給する第２電源回路を、更に備えたことを特徴とする請求項１乃至９のいずれかに記載のリコンフィギャラブル集積回路装置。
【請求項１１】
複数の第１配線と、前記複数の第１配線と交差する複数の第２配線と、前記複数の第１配線と前記複数の第２配線の交差領域に設けられた複数のメモリセルであって、各メモリセルは、ゲートが対応する前記第１配線に接続され、ソースおよびドレインの一方が対応する前記第２配線に接続された第１不揮発性メモリトランジスタと、前記第１不揮発性メモリトランジスタのソースおよびドレインの他方が接続された第３配線と、前記第３配線に接続されたゲートを有するスイッチ回路と、を備えた、複数のメモリセルと、を備えたリコンフィギャラブル集積回路装置の書き込み方法であって、
前記複数の第１配線から一つの第１配線を選択し、この選択された第１配線に接続されたメモリセルの前記第１不揮発性メモリトランジスタをオンさせる選択電圧を前記第１配線に印加するステップと、
前記選択された第１配線に接続されたメモリセルの前記第３配線に記憶するためのビットデータを前記複数の第２配線に供給するステップであって、前記ビットデータの供給は前記選択電圧の印加されている間に行い、前記選択電圧の印加が終了する前に前記データの供給が終了しないようにビットデータを供給するステップと、
を備えたことを特徴とする書き込み方法。
【請求項１２】
前記複数のメモリセルのうちの一つのメモリのそれぞれに対して、一つのメモリセルが対応し、
前記一つのメモリセル内の前記第１不揮発性メモリトランジスタが接続された第１配線および第２配線のそれぞれと、前記対応するメモリセル内の前記第１不揮発性メモリトランジスタが接続された第１配線および第２配線は異なり、
前記一つのメモリセルと前記対応するメモリセルは、前記第３配線および前記スイッチ回路を共有することを特徴とする請求項１１記載の書き込み方法。
【請求項１３】
前記複数のメモリセルのうちの一つのメモリのそれぞれに対して、一つのメモリセルが対応し、
前記一つのメモリセル内の前記第１不揮発性メモリトランジスタが接続された第１配線と前記対応するメモリセル内の前記第１不揮発性メモリトランジスタが接続された第１配線は同一であるとともに前記一つのメモリセル内の前記第１不揮発性メモリトランジスタが接続された第２配線と前記対応するメモリセル内の前記第１不揮発性メモリトランジスタが接続された第２配線は異なり、
前記一つのメモリセルと前記対応するメモリセルは、前記第３配線および前記スイッチ回路を共有することを特徴とする請求項１１記載の書き込み方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、リコンフィギャラブル集積回路装置およびその書き込み方法に関する。
【背景技術】
【０００２】
ＦＰＧＡ(Field Programmable Gate Array)は任意の論理機能を実現することができるＩＣ(Integrated Circuit)である。一般的なＦＰＧＡは、基本的な論理情報を実現するロジックブロック（ＬＢ(Logic Block)）と、各ＬＢを任意に接続するスイッチブロック（ＳＢ(Switch Block)）を含む基本タイルが配置されたものである。これらのブロックは複数のプログラム可能なメモリを備え、そのメモリに書き込むことでＦＰＧＡは書きまれた情報に基づいた論理機能を実現する。これらのメモリには、例えば揮発性のＳＲＡＭ(Static Random Access Memory)が用いられる。
【０００３】
ＳＲＡＭを構成するＳＲＡＭセルはインバータのスイッチング速度とほぼ同等の速度で書き込みされ、電源を与え続けているかぎり格納されたデータを保持する。ＳＲＡＭセルは、例えば６個のトランジスタで構成されており、占有面積が大きい。また、電源を与え続けなければならないため消費電力が大きい。
【０００４】
この電力が大きいという課題を解決する一つの手法として、様々な不揮発性メモリ、例えばフラッシュメモリを使用したＦＰＧＡが知られている。しかし、フラッシュメモリはＳＲＡＭに比べ一般的に書き込みまたは消去に長い時間を必要とする。このため、高速にメモリを書き込みまたは消去しなければならない状況、例えば出荷前のロジック動作テストなどの際には多くの時間コストがかかってしまう。
【０００５】
また、占有面積が大きいという課題を解決する一つの手法として、ＤＲＡＭ(Dynamic Random Access Memory)を用いたＦＰＧＡが知られている。ＤＲＡＭへの書き込みはトランジスタの動作速度と同等であり、ＤＲＡＭはトランジスタ１個とキャパシタ１個で構成されるため、面積も小さい。
【０００６】
しかしながら、ＤＲＡＭはトランジスタのリーク電流などによりデータが失われるため、頻繁なリフレッシュ作業が必要となる。ロジック動作テストなど短時間で書き込みまたは消去を終えなければならない状況では有利であるが、ユーザーが使用する際はメモリの書き換えはそれほど必要ではないため、通常の動作状態ではリフレッシュが不必要なメモリが必要とされる。これに対し、始めはＤＲＡＭとして使用し、その後、ＤＲＡＭを構成するトランジスタのゲート破壊を起こして不揮発性とする手法も考案されている。この手法は破壊的手法であるため、不揮発性ＦＰＧＡにする際には一度しか書き込みを行うことができない。
【０００７】
以上のように、一般的なＳＲＡＭを使用する場合は高速書き込み可能だが、ユーザーが通常使用する際は消費電力が問題になる。ＤＲＡＭを用いて占有面積の削減とともに、最終的には破壊的手法によって不揮発性化することも可能だが、書き込みは１度しかできない。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】米国特許第７，１２９，７４９号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００９】
本実施形態は、高速書き込みが可能であるとともに消費電流が少なくかつ占有面積が小さく、何回でも書き込みが可能なメモリを有するリコンフィギャラブル集積回路装置およびその書き込み方法を提供する。
【課題を解決するための手段】
【００１０】
本実施形態によるリコンフィギャラブル集積回路装置は、第１乃至第３配線と、ゲートが前記第１配線に接続され、ソースおよびドレインの一方が前記第２配線に接続され、ソースおよびドレインの他方が前記第３配線に接続された第１不揮発性メモリトランジスタと、前記第３配線に接続されたゲートを有するスイッチ回路と、前記第１不揮発性メモリトランジスタに情報を書き込む書き込み電圧、前記第１不揮発性メモリトランジスタから情報を消去する消去電圧、および前記第１不揮発性メモリトランジスタをオンさせる選択電圧のいずれかを選択して前記第１配線に印加する第１電源回路と、前記第３配線に記憶するためのビットデータを前記第２配線に供給するデータ供給回路と、を備えたことを特徴とする。
【図面の簡単な説明】
【００１１】
【図１】図１は、一実施形態によるＦＰＧＡを示す図。
【図２】図２（ａ）、２（ｂ）は第１および第２実施例によるメモリのメモリセルを示す回路図。
【図３】図３は、メモリトランジスタの書き込みおよび消去特性を説明する図。
【図４】図４（ａ）、４（ｂ）は第３および第４実施例によるメモリのメモリセルを示す回路図。
【図５】図５は、メモリの書き込み方法を説明する図。
【図６】図６（ａ）、６（ｂ）は第５および第６実施例によるメモリのメモリセルを示す回路図。
【図７】図７（ａ）、７（ｂ）は第７および第８実施例によるメモリのメモリセルを示す回路図。
【図８】図８（ａ）、８（ｂ）は第９および第１０実施例によるメモリのメモリセルを示す回路図。
【図９】図９（ａ）、９（ｂ）は、ＣＨＥを用いた書き込み方法を説明する図。
【図１０】図１０は、メモリトランジスタのドレイン電流のソース−ドレイン電圧依存性を示す図。
【図１１】図１１（ａ）、１１（ｂ）は第１１および第１２実施例によるメモリのメモリセルを示す回路図。
【図１２】図１２（ａ）、１２（ｂ）は第１３および第１４実施例によるメモリのメモリセルを示す回路図。
【図１３】図１３（ａ）、１３（ｂ）は第１５および第１６実施例によるメモリのメモリセルを示す回路図。
【図１４】図１４は、追加回路を設けた場合と設けない場合におけるノードＱの電位の時間依存性を示す図。
【図１５】図１５（ａ）、１５（ｂ）は第１７および第１８実施例によるメモリのメモリセルを示す回路図。
【図１６】図１６（ａ）、１６（ｂ）は第１９および第２０実施例によるメモリのメモリセルを示す回路図。
【図１７】図１７（ａ）、１７（ｂ）は第２１および第２２実施例によるメモリのメモリセルを示す回路図。
【図１８】図１８（ａ）、１８（ｂ）は第２３および第２４実施例によるメモリのメモリセルを示す回路図。
【図１９】図１９（ａ）、１９（ｂ）は第２５および第２６実施例によるメモリのメモリセルを示す回路図。
【図２０】図２０（ａ）、２０（ｂ）は追加回路として用いたメモリトランジスタの書き込みおよび消去を説明する図。
【図２１】図２１（ａ）、２１（ｂ）は第２７および第２８実施例によるメモリのメモリセルを示す回路図。
【図２２】図２２（ａ）、２２（ｂ）は、メモリの書き込み方法の第１例を説明する図。
【図２３】図２３（ａ）、２３（ｂ）は、メモリの書き込み方法の第２例を説明する図。
【図２４】図２４（ａ）、２４（ｂ）は、メモリの書き込み方法の第３例を説明する図。
【図２５】図２５、一実施形態によるＦＰＧＡの第１具体例を示すブロック図。
【図２６】図２６は、一実施形態によるＦＰＧＡの第２具体例を示すブロック図。
【図２７】図２７は、一実施形態によるＦＰＧＡの第３具体例を示すブロック図。
【図２８】図２８は、一実施形態によるＦＰＧＡの第４具体例を示すブロック図。
【図２９】図２９は、第４具体例に用いられるＲＯＭの一例を示す回路図。
【図３０】一実施形態によるＦＰＧＡの第５具体例を示すブロック図。
【図３１】一実施形態によるＦＰＧＡの第６具体例を示すブロック図。
【図３２】一実施形態によるＦＰＧＡの第７具体例を示すブロック図。
【図３３】一実施形態によるＦＰＧＡの第８具体例を示すブロック図。
【図３４】一実施形態によるＦＰＧＡの第９具体例を示すブロック図。
【発明を実施するための形態】
【００１２】
以下に、図を参照しながら実施形態について詳細に説明する。
【００１３】
一実施形態によるリコンフィギャラブル集積回路装置（以下、集積回路装置ともいう）について図１（ａ）乃至図３４を参照して説明する。この一実施形態の集積回路装置は、ＦＰＧＡであり、その概要を図１（ａ）乃至１（ｄ）に示す。図１（ａ）に一実施形態のＦＰＧＡ１００を示す。このＦＰＧＡ１００は、アレイ状に配置された複数の基本タイル１０２と、これらの基本タイル１０２のアレイの周囲に配置された入出力部Ｉ／Ｏを備えている。各基本タイル１０２は、ロジックブロック（以下、ＬＢともいう）１０４と、スイッチブロック（以下、ＳＢともいう）１０６とを備えている。ロジックブロック１０４は図１（ｂ）または図１（ｃ）に示すように、マルチプレクサ１１０またはマルチプレクサ１１２を有し、論理機能を実現する。図１（ｂ）に示すマルチプレクサ１１０は、２つの入力信号ＩＮ１、ＩＮ２に基づいて、複数のメモリの出力信号のうちの少なくとも１つを選択して出力信号とする。図１（ｃ）に示すマルチプレクサ１１２は２つのメモリからの信号に基づいて、複数の入力信号ＩＮ１、ＩＮ２、・・・のうちから少なくとも１つを選択して出力信号とする。スイッチブロック１０６は、図１（ｄ）に示すように、メモリに格納された情報に基づいてオン／オフする複数のスイッチ１１４ａ、１１４ｂを有し、これらのスイッチによって配線の接続の組み合わせを変える機能を有している。このように、ロジックブロック１０４およびスイッチブロック１０６には情報が格納されるメモリが設けられている。これらのメモリに格納される情報を書き換えることで、ＦＰＧＡ全体で任意の論理を実現する。メモリに格納される情報は、入出力部Ｉ／Ｏを介して外部から入力される。
【００１４】
一実施形態のＦＰＧＡに用いられるメモリの第１および第２実施例を図２（ａ）、２（ｂ）に示す。図２（ａ）に示す第１実施例のメモリは、少なくとも１個のメモリセル１０を有し、各メモリセル１０は、不揮発性メモリトランジスタ（以下、メモリトランジスタともいう）１２と、スイッチ回路２０とを備えている。第１実施例においては、スイッチ回路２０はｎチャネルＭＯＳトランジスタであってパストランジスタとも呼ばれる。メモリトランジスタ１２は、フラッシュメモリトランジスタである。フラッシュメモリトランジスタは、半導体層に離間して設けられたソースおよびドレインと、ソース／ドレイン間のチャネルとなる半導体層上に設けられた第１絶縁膜と、第１絶縁膜上に設けられた電荷蓄積膜と、電荷蓄積膜上に設けられた第２絶縁膜と、第２絶縁膜上に設けられた制御ゲートとを備えている。フラッシュメモリトランジスタ１２は、電荷蓄積膜としてフローティングゲートを用いたＦＧ（Floating Gate）型トランジスタでもよいし、絶縁性の窒化シリコン膜を電荷蓄積膜として用いたＭＯＮＯＳ（Metal-Oxide-Nitride-Oxide-Semiconductor）型トランジスタでもよい。なお、ゲート電極がポリシリコンである場合はＳＯＮＯＳ（Silicon-Oxide-Nitride-Oxide-Silicon）型メモリトランジスタと呼ばれることもあるが、今回はこれも含めてＭＯＮＯＳ型メモリトランジスタと呼ぶ。ＭＯＮＯＳ型トランジスタを用いた場合のほうが、パストランジスタ等のスイッチ回路とのプロセスの相性がよく、メモリとロジック回路とをより近接して混載することが可能であり、チップ面積を小さく抑えることが可能である。メモリトランジスタ１２は、ソース／ドレインの一方がビット線ＢＬに接続され、ソース／ドレインの他方がノード（配線）Ｑに接続され、ゲートがワード線ＷＬに接続される。ノードＱは、パストランジスタ２０のゲートに接続される。
【００１５】
図２（ｂ）に示す第２実施例のメモリは、少なくとも１個のメモリセル１０Ａを有し、各メモリセル１０Ａは、図２（ａ）に示す第１実施例のメモリセル１０において、スイッチ回路２０をインバータ２２に置き換えた構成を有している。インバータ２２は、ｐチャネルＭＯＳトランジスタ２２ａおよびｎチャネルＭＯＳトランジスタ２２ｂを備えている。このインバータ２２のゲート、すなわちｐチャネルＭＯＳトランジスタ２２ａのゲートおよびｎチャネルＭＯＳトランジスタ２２ｂのゲートがノードＱに接続される。
【００１６】
第１および第２実施例のいずれも、パストランジスタ２０もしくはインバータ２２のゲートにノードＱを介してメモリトランジスタ１２のソース／ドレインの他方が接続されている。
【００１７】
メモリトランジスタ１２においては、書き込みは電荷蓄積膜に電荷を蓄積させることにより行い、消去は電荷蓄積膜から電荷を引く抜くことにより行う。いずれにしても電荷蓄積膜内の電荷量に応じてメモリトランジスタの閾値電圧が変化する。メモリトランジスタ１２におけるドレイン電流のゲート電圧依存性を図３に示す。
【００１８】
一般的に、書き込みまたは消去には数百ｎｓ〜数μｓの時間を要する。全てのメモリセルが消去状態のときは、選択するメモリセルが接続されているワード線ＷＬに、後述の書き込み電圧よりも低くメモリセルをオン状態にする電圧である選択電圧Ｖｓｅｌｅｃｔを印加し、ビット線ＢＬの電位をＨｉｇｈレベルまたはＬｏｗレベルにし、その後、ワード線ＷＬにオフ電圧（非選択電圧）Ｖｏｆｆを印加することで、メモリトランジスタ１２に接続されたスイッチ回路２０、２２のゲート容量に電荷を蓄積することができる（以下、ＤＲＡＭ動作ともいう）。ここで、スイッチ回路２０、２２のゲート容量とは、スイッチ回路２０、２２のゲートと、このゲートに接続されるメモリトランジスタ１２のソース／ドレインの他方との間におけるノードＱ（配線）の寄生容量を意味する。なお、非選択のメモリセルについてはワード線にオフ信号Ｖｏｆｆを印加し、メモリトランジスタ１２をオフの状態にしておく。電荷の蓄積はメモリトランジスタ１２の動作スピード（ｐｓオーダー）程度の高速に終えることができる。蓄積された電荷がリーク成分によって失われるまで、その電荷による電位によって接続されたパストランジスタ２０やインバータ２２は動作することができる。
【００１９】
このゲート容量は、容量を追加することにより電荷を多く蓄積することができれば、その分長い時間電位を保つことができる。そこで、容量を追加した第３および第４実施例によるメモリのメモリセルを図４（ａ）、４（ｂ）に示す。図４（ａ）に示すメモリセル１０Ｂは、図２（ａ）に示すメモリセル１０のゲート容量に追加回路、例えばキャパシタ１４を設けた構成であり、図４（ｂ）に示すメモリセル１０Ｃは、図２（ｂ）に示すメモリセル１０Ａのゲート容量にキャパシタ１４を設けた構成である。
【００２０】
次に、上記第１乃至第４実施例によるメモリのメモリトランジスタ１２へのデータの書き込み方法について図５を参照して説明する。図５では、上記実施例のメモリのメモリセルがマトリクス状に配列され、各メモリセルについてはメモリトランジスタ１２を表示し、スイッチ回路は図示していない。
【００２１】
各メモリトランジスタ１２はＦＮ（Fowler-Nordheim）トンネル電流による電荷の注入または引き抜きにより書き込みまたは消去を行う。書き込みを行うとするメモリセルに接続されたワード線ＷＬ１に書き込み電圧（例えば、２０Ｖ）を印加し、ビット線ＢＬ１に書き込み電圧（例えば０Ｖ）を与えることで書き込みを行う。そのとき、非選択のメモリセルのビット線ＢＬ２には８Ｖの書き込み防止電圧与える。これにより、書き込みを行うメモリセルとワード線ＷＬ１を共有している非選択のメモリセルにはゲート−ドレイン間に１２Ｖ程度しか電圧が印加されず、ＦＮトンネル電流による書き込みが起きない。
【００２２】
メモリセルから情報を消去するときにはメモリセルが形成されている半導体層に電圧（基板バイアス）を印加するための電極（基板電極）に０Ｖもしくは正電圧（０Ｖ以上の電圧）を与えた状態において選択されたワード線に負の消去電圧を印加することで行う。消去電圧は例えば−２０Ｖである。このとき、同じ選択されたワード線に接続されたメモリセルは一括で消去される。メモリ動作時は全てのビット線にＨｉｇｈレベルを、全てのワード線に選択電圧Ｖｓｅｌｅｃｔを印加することにより、消去状態のメモリセルはメモリトランジスタ１２がオンしているのでスイッチ回路（例えば、パストランジスタ２０）のゲートにＨｉｇｈレベルが印加され、書き込み状態のメモリセルはメモリトランジスタがオフしているのでスイッチ回路のゲートには電圧が印加されない（図３参照）。
【００２３】
図２（ａ）、２（ｂ）、図４（ａ）、４（ｂ）に示す第１乃至第４実施例では、メモリ動作時に書き込み状態のメモリセル（Ｌｏｗレベルがスイッチ回路のゲートに与えられるメモリセル）に接続されたスイッチ回路のゲートはフローティング状態になってしまう。フローティングになってしまうと、リーク電流などによって流れ込んだ電荷により電位が上がってしまう。
【００２４】
この問題は、図６（ａ）、６（ｂ）に示す第５または第６実施例のメモリを用意し、相補的な書き込みを行うことにより解決することができる。図６（ａ）に示す第５実施例のメモリは、ソース／ドレインの一方がビット線ＢＬ１に接続され、ゲートがワード線ＷＬ１に接続されたメモリトランジスタ１２ａと、ソース／ドレインの一方がビット線ＢＬ２に接続され、ゲートがワード線ＷＬ２に接続されたメモリトランジスタ１２ｂと、ゲートがメモリトランジスタ１２ａのソース／ドレインの他方およびメモリトランジスタ１２ｂのソース／ドレインの他方に接続されたパストランジスタ２０と、を備えている。すなわち、第５実施例のメモリにおいては、第１実施例のメモリにおいて、異なるメモリセルのパストランジスタ２０が共有された構成となっている。図６（ｂ）に示す第６実施例のメモリは、図６（ａ）に示す第５実施例において、パストランジスタ２０をインバータ２２に置き換えた構成となっている。すなわち、第６実施例のメモリは、第２実施例のメモリにおいて、異なるメモリセルのインバータ２２が共有された構成となっている。
【００２５】
次に、これらの第５または第６実施例におけるメモリトランジスタ１２ａ、１２ｂに対する相補的な書き込みの効果について説明する。具体的には、ワード線ＷＬ１およびワード線ＷＬ２に選択電圧Ｖｓｅｌｅｃｔを印加し、ビット線ＢＬ１に例えばＨｉｇｈレベルを、ビット線ＢＬ２に例えばＬｏｗレベルの電圧を印加する。このとき、メモリトランジスタ１２ａが書き込み状態、メモリトランジスタ１２ｂが消去状態であれば、スイッチ回路２０、２２のゲートにはＨｉｇｈレベルが印加される。逆にメモリトランジスタ１２ａが消去状態、メモリトランジスタ１２ｂが書き込み状態であればスイッチ回路２０、２２のゲートにＬｏｗレベルが印加される。このように、相補的な書き込みを行うことにより、スイッチ回路２０、２２のゲートがフローティング状態になるのを防止することができ、リーク電流などによって流れ込んだ電荷により電位が上がってしまうことを防止することができる。
【００２６】
これらの図６（ａ）、６（ｂ）に示す第５および第６実施例も、図２（ａ）、２（ｂ）および図４（ａ）、４（ｂ）に示す第１乃至第４実施例のように、全メモリセルを消去状態にしてＤＲＡＭ動作が可能である。具体的には全メモリセルを消去状態にし、ワード線ＷＬ１に電圧Ｖｓｅｌｅｃｔ、ワード線ＷＬ２に電圧Ｖｏｆｆを印加し、ビット線ＢＬ１にＨｉｇｈレベルもしくはＬｏｗレベルの電圧を印加し、その後ワード線ＷＬ１にも電圧Ｖｏｆｆを印加することで、電荷を蓄積する。もしくはワード線ＷＬ１およびワード線ＷＬ２に共に電圧Ｖｓｅｌｅｃｔを印加し、ビット線ＢＬ１およびビット線ＢＬ２に共にＨｉｇｈレベルもしくはＬｏｗレベルの電圧を印加し、その後ワード線ＷＬ１およびワード線ＷＬ２に電圧Ｖｏｆｆを印加することで電荷を蓄積する。
【００２７】
また、図６（ａ）、６（ｂ）に示す第５および第６実施例のメモリにおいて、図４（ａ）、４（ｂ）に示す第３および第４実施例と同様に、追加回路、例えばキャパシタ１４を設けることにより、ゲート容量にキャパシタ１４の容量を追加するように構成してもよい。これを図７（ａ）、７（ｂ）に示す。図７（ａ）、７（ｂ）は、第７および第８実施例のメモリを示す回路図である。このように、キャパシタ１４を設けることによりゲート容量を大きくし、電荷をより長い時間保持することができる。
【００２８】
上記第１乃至第８実施例のメモリにおけるメモリトランジスタ１２、１２ａ、１２ｂへの書き込みはすべてＦＮトンネル電流による電荷の注入もしくは引き抜きを想定している。しかしながら、ＦＮトンネル電流による書き込み方法では、図５に示すように非選択のメモリセルのメモリトランジスタ１２、１２ａ、１２ｂのゲートに８Ｖの電圧が印加されてしまう。これにより、メモリトランジスタ１２、１２ａ、１２ｂに接続するパストランジスタもしくはインバータは８Ｖに耐えうる厚さのゲート酸化膜を有するか、もしくは破壊されないような電圧を基板やソースまたはドレインに印加するなどの施策が必要となる。
【００２９】
これに対し、ＣＨＥ(Channel hot electron)を利用した書き込みではビット線にあまり高い電圧をかけなくても良いため、メモリトランジスタに接続されるパストランジスタもしくはインバータの負担が軽減される。ＣＨＥはきわめて高いエネルギー有している電子で、トランジスタのドレイン電圧がある値よりも大きくなってチャネルがドレイン端でピンチオフを起こしたときに発生する。ソース／ドレイン間の電位差によって発生したＣＨＥをゲート電圧によって電荷蓄積膜に引き込むことによってメモリセルへの書き込みを実現する。ＣＨＥを用いた書き込み方式の場合、ＦＮ電流を用いた書き込み方式に比べて個々の端子に印加する電圧の値が小さいという利点がある。
【００３０】
しかし、一方のメモリトランジスタに選択的な書き込みを実現するためにアクセストランジスタを設けことによりチップ面積が増加してしまう問題がある。書き込みのワード線の電圧は例えば１０Ｖであり、書き込みのビット線の電圧は例えば４Ｖである。
【００３１】
このＣＨＥを用いた書き込み方式に適したメモリについて図８（ａ）、８（ｂ）を参照して説明する。図８（ａ）、８（ｂ）はそれぞれ、第９および第１０実施例によるメモリのメモリセルを示す回路図である。図８（ａ）に示す第９実施例に係るメモリセル１０Ｄは、ソース／ドレインの一方がビット線ＢＬ１に接続され、ソース／ドレインの他方がノードＱに接続され、ゲートがワード線ＷＬに接続されたメモリトランジスタ１２ａと、ソース／ドレインの一方がビット線ＢＬ２に接続され、ソース／ドレインの他方がノードＱに接続され、ゲートがワード線ＷＬに接続されたメモリトランジスタ１２ｂと、ゲートがノードＱに接続されたパストランジスタ２０と、を備えている。すなわち、メモリトランジスタ１２ａ、１２ｂのソース／ドレインの他方と、パストランジスタ２０のゲートが共通のノードＱに接続されている。図８（ｂ）に示す第１０実施例に係るメモリセル１０Ｅは、図８（ａ）に示す第９実施例に係るメモリセル１０Ｄにおいて、パストランジスタ２０をインバータ２２に置き換えた構成となっている。
【００３２】
次に、第９および第１０実施例によるメモリにおけるＣＨＥを用いた書き込み方法について、図９（ａ）、９（ｂ）を参照して説明する。
【００３３】
ワード線ＷＬに第１書き込み電圧（１０Ｖ）を印加すると、両方のメモリトランジスタ１２ａ、１２ｂがオン状態になる。ここで、ＦＮ電流は２０Ｖ程度の電圧が必要なため、この書き込み電圧では両方のメモリトランジスタ１２ａ、１２ｂに書き込みは生じない。この状態でビット線ＢＬ２に第２書き込み電圧（４Ｖ）を印加すると、メモリトランジスタ１２ａとメモリトランジスタ１２ｂでソースに対するゲート電位差（以下、ドライブ電圧とする）に差が生じる。すなわち、メモリトランジスタ１２ａではドライブ電圧が１０  Ｖであるのに対し、メモリトランジスタ１２ｂではドライブ電圧が６Ｖになる（図９（ａ）、９（ｂ））。一般に、トランジスタのチャネル抵抗はドライブ電圧が大きいほど小さくなる。このため、メモリトランジスタ１２ｂよりもメモリトランジスタ１２ａのほうが低抵抗となる。ここでメモリトランジスタ１２ａのチャネル抵抗をＲ１、メモリトランジスタ１２ｂのチャネル抵抗をＲ２とし、ビット線ＢＬ１、ＢＬ２に印加する電圧、すなわち第１および第２電源の電圧をそれぞれＶＢＬ１、ＶＢＬ２とし、ノードＱの電位をＶＱとすると、ＶＱは以下の式で表される。
ＶＱ＝（Ｒ１／（Ｒ１＋Ｒ２））×（ＶＢＬ２−ＶＢＬ１）
ここで、Ｒ１＜Ｒ２であるから、ＶＱは（ＶＢＬ２−ＶＢＬ１）／２よりも小さくなる。すなわち、ノードＱの電位ＶＱはビット線ＢＬ２の電圧ＶＢＬ２よりもビット線ＢＬ１の電圧ＶＢＬ１に近い電位となり、メモリトランジスタ１２ａのソース−ドレイン電圧よりもメモリトランジスタ１２ｂのソース−ドレイン電圧のほうが大きくなる。
【００３４】
前述のようにＣＨＥはトランジスタのチャネルがドレイン端でピンチオフするときに発生する。しかし、ソース−ドレイン電圧を大きくしていくとある電圧（以下、Ｖｄｓａｔと記す）に達したところでピンチオフが生じ、いったんピンチオフが生じるとトランジスタのドレイン電流は飽和する。この様子を様々なドライブ電圧Ｖｄｒｉｖｅに対する特性を図１０に示す。図１０はドライブ電圧Ｖｄｒｉｖｅをパラメータとした場合における、ドレイン電流のソース−ドレイン電圧依存性を示す特性図である。図１０においては、ドライブ電圧Ｖｄｒｉｖｅとして５種類の電圧Ｖ１、Ｖ２、Ｖ３、Ｖ４、Ｖ５を用いた。これらの電圧は、Ｖ１＜Ｖ２＜Ｖ３＜Ｖ４＜Ｖ５を満たす。点線はチャネルがピンチオフする点を表したものであり、一般にドライブ電圧が大きいほど、ドレイン電流が飽和する電圧Ｖｄｓａｔは大きくなる。
【００３５】
第９または第１０実施例において、メモリトランジスタ１２ｂのドライブ電圧よりもメモリトランジスタ１２ａのドライブ電圧のほうが大きいため、ピンチオフに必要なソース−ドレイン電圧もメモリトランジスタ１２ａのほうがメモリトランジスタ１２ｂの場合よりも大きい。しかし、前述したようにメモリトランジスタ１２ａのソース−ドレイン電圧はメモリトランジスタ１２ｂのソース−ドレイン電圧よりも小さい。このため、ピンチオフに必要なソース−ドレイン電圧がメモリトランジスタ１２ａでは得られず、ＣＨＥによる書き込みは生じない。しかし、メモリトランジスタ１２ｂにおいては相対的にドライブ電圧が小さく、ソース−ドレイン電圧が大きいため、チャネルのピンチオフが生じ、ＣＨＥによるメモリの書き込みが生じて選択的に書き込みを行うことができる。
【００３６】
メモリセルから情報を消去するときには基板電極に０Ｖもしくは正電圧（０Ｖ以上の電圧）を与えた状態でワード線ＷＬに負の消去電圧を印加することで行う。消去電圧は例えば−２０Ｖである。このとき、同じワード線に接続されたメモリセルは一括で消去される。
【００３７】
図８（ａ）、８（ｂ）に示す第９および第１０実施例においては、第１乃至第８実施例と同様に、ＤＲＡＭ動作をすることができる。具体的には、全メモリセルを消去状態にし、ワード線に選択電圧Ｖｓｅｌｅｃｔを印加し、ビット線ＢＬ１およびビット線ＢＬ２に共にＨｉｇｈレベルもしくはＬｏｗレベルの電圧を印加し、その後ワード線をオフ電圧Ｖｏｆｆにすることで電荷を蓄積する。非選択のメモリセルにはオフ電圧（非選択電圧）Ｖｏｆｆを印加しておく。
【００３８】
第３実施例、第４実施例、第７実施例、第８実施例のように、第９または第１０実施例のメモリセルのノードＱに一端が接続される、追加回路、例えばキャパシタ１４を設けることにより、ゲート容量を大きくしてもよい。これを図１１（ａ）、１１（ｂ）に示す。図１１（ａ）、１１（ｂ）は、第１１および第１２実施例のメモリを示す回路図である。このように、キャパシタ１４を設けることによりゲート容量を大きくし、電荷をより長い時間保持することができる。
【００３９】
また、図１２（ａ）、１２（ｂ）に示す第１３および第１４実施例のように、キャパシタ１４の他端が電源ＶＰ１に接続されていてもよい。
【００４０】
ＤＲＡＭ動作時に電荷保持時間を長くする方法の例を図１３（ａ）、１３（ｂ）に示す。図１３（ａ）、１３（ｂ）は第１５および第１６実施例に係るメモリセルを示す図である。第１５および第１６実施例は、図１２（ａ）、１２（ｂ）に示す第１３および第１４実施例において、キャパシタ１４の代わりに追加回路としてトランジスタ１５を設けた構成となっている。トランジスタ１５は、ゲートがノードＱに接続され、ソースおよびドレインが電源ＶＰ１に接続された構成となっている。なお、図１３（ａ）、１３（ｂ）において矢印はゲートリークを示す。
【００４１】
この構成により、ノードＱの容量を増加させるとともに、リーク電流によってノードＱの電位がＨｉｇｈレベルとなる保持時間を長くする。第１５および第１６実施例のように、追加回路を設けた場合と、設けない場合におけるノードＱの電位の時間経過をシミュレーションにより求め、その結果を図１４に示す。このシミュレーションでは、ノードＱの初期電位が１．８Ｖと、０Ｖである場合についてそれぞれ計算した。図１４からわかるように、ノードＱの電位は、Ｈｉｇｈレベル（初期電位が１．８Ｖ）の保持時間は長くなっている。しかし、Ｌｏｗレベル（初期電位が０Ｖ）をＤＲＡＭ的に保持したいときはリーク電流によってノードＱの電位が上昇することが分かる。しかしながら、ノードＱの電位が、ノードＱに接続されるパストランジスタ２０の閾値電圧やインバータ２２の反転電圧までであれば上昇しても、メモリセルの動作には影響無いと考えられる。特にインバータ２２、例えば１Ｖの電源で動作するインバータでは、Ｌｏｗレベルは〜０．２Ｖ以下、Ｈｉｇｈレベルは〜０．８Ｖ以上必要である。よって、例えば図１１のような通常の構成では、Ｌｏｗレベルは０Ｖに固定され、Ｈｉｇｈレベルのときだけ、すぐに電位が低下するが、Ｌｏｗレベルが０．２Ｖ程度まで上昇する代わりＨｉｇｈレベルの電位がより保持されるというこの回路構成の方が、より長い時間の動作を可能にすると考えられる。
【００４２】
第１５および第１６実施例の応用として、図１５（ａ）、１５（ｂ）に第１７および第１８実施例によるメモリのメモリセルを示す。第１７および第１８実施例においては、トランジスタ１５のソースおよびドレインの一方を電源ＶＰ１に接続し、ソースおよびドレインの他方を電源ＶＰ２に接続した構成となっている。なお、図１５（ａ）、１５（ｂ）において矢印はゲートリークを示す。電源ＶＰ１および電源ＶＰ２にＨｉｇｈレベルの電位を与えることで、図１３（ａ）、１３（ｂ）に示す第１５および第１６実施例と同様の効果がある。ここで、例えば電源ＶＰ１にＨｉｇｈレベルを、電源ＶＰ２にＬｏｗレベルを印加し、その電流量を計測することでノードＱの電位を予想することができる。これにより、メモリ動作時には、きちんとメモリトランジスタ１２ａ、１２ｂに書き込みが起きているかを確認することができる。
【００４３】
図１３（ａ）、１３（ｂ）に示す第１５、第１６実施例および図１５（ａ）、１５（ｂ）に示す第１７、第１８実施例はゲートリークを利用したメモリである。これらの実施例において、例えばノードＱに接続されているパストランジスタ２０やインバータ２２のゲートリークが多いか、またはメモリトランジスタ１２ａ、１２ｂのオフリークが大きい場合には、ゲートリークでは足りないと考えられる。そこで、図１６（ａ）、１６（ｂ）に示す第１９、第２０実施例のように、追加回路として、ダイオード接続されたトランジスタ１６の逆方向リークを利用することも考えられる。ダイオードのアノードをノードＱに、カソードを電源ＶＰ１に接続する。追加回路としては、ダイオード接続されたトランジスタを用いなくとも、図１７（ａ）、１７（ｂ）に示す第２１、第２２実施例のように、ダイオード１７を用いても良い。
【００４４】
また、トランジスタのオフリーク（抵抗）を利用することも考えられる。これを図１８（ａ）、１８（ｂ）の第２３、第２４実施例に示す。これらの第２３、第２４実施例においては、追加回路であるトランジスタ１８のゲートに接続された電源ＶＰ２としてトランジスタ１８がオフする電圧を印加し、電源ＶＰ１にＨｉｇｈレベルの電圧を印加する。
【００４５】
また、この追加回路のトランジスタとしては、図１９（ａ）、１９（ｂ）に示す第２５、第２６実施例のように、メモリトランジスタ１９であっても良い。これらの第２３および第２４実施例において、ＤＲＡＭ動作時には電源ＶＰ２にメモリトランジスタ１９がオフする電圧を印加し、電源ＶＰ１にＨｉｇｈレベルの電圧を印加することで、図１８（ａ）、１８（ｂ）に示す第２３、第２４実施例と同じ動作をする。
【００４６】
さらに、第２５および第２６実施例において、メモリ動作時にはメモリトランジスタ１９の書き込みまたは消去でも動作することできる。これについて図２０（ａ）、２０（ｂ）を参照して説明する。ゲート電圧に対するメモリトランジスタ１９のドレイン電流の傾きは書き込みまたは消去後に変わらないと仮定する。オン電流Ｉｏｎ（例えば１０μＡ／μｍ）付近の傾きをＬ（Ｖ／ｄｅｃａｄｅ）とする。この傾きはドレイン電流が１桁増加するのに必要なゲート電圧である。消去時の閾地電圧をＥ（Ｖ）とする。メモリトランジスタ１２ａの閾値がＥ＋２Ｌ（Ｖ）になるように書き込み、メモリトランジスタ１２ｂの閾値は十分高くなるように書き込む。メモリトランジスタ１９を消去状態にするか、または閾値電圧がＥ＋４Ｌ（Ｖ）以上になるように書き込む。その後、ワード線ＷＬおよび電源ＶＰ２に読み出し電圧２Ｌ（Ｖ）を印加することで読み出しを行う。このとき例えば、メモリトランジスタ１９が消去状態にあり、ビット線ＢＬ１にＨｉｇｈレベル、電源ＶＰ１にＬｏｗレベルの電圧を印加し、ワード線ＷＬおよび電源ＶＰ２に２Ｌ（Ｖ）印加すると、ノードＱにはＬｏｗレベルの電位が出力される。メモリトランジスタ１９が書き込み状態のときは、逆にノードＱにはＨｉｇｈレベルの電位が出力される。なお、この方法では２つのメモリトランジスタ１２ａ、１９の抵抗比が大きくないためリーク電流が増加する。よって、リーク電流よりもメモリトランジスタ１２ａ、１９の劣化を抑えたい状況などにおいて有効である。また、上記ではメモリトランジスタ１２ａとメモリトランジスタ１９について示したが、メモリトランジスタ１２ａの代わりにメモリトランジスタ１２ｂを同様に使用しても良い。
【００４７】
また、追加回路としては、図１８（ａ）、１８（ｂ）に示すトランジスタ１８でなくともよく、図２１（ａ）、２１（ｂ）に示す第２７、第２８実施例のように、抵抗２５であっても良い。
【００４８】
次に、メモリのＤＲＡＭ動作について図２２（ａ）、２２（ｂ）を参照して説明する。図２２（ａ）はメモリセルアレイを示し、図２２（ｂ）は、ワード線ＷＬ１〜ＷＬ５およびビット線ＢＬに印加される電圧の波形図を示す。なお、図２２（ａ）においては、各メモリセルのスイッチ回路（パストランジスタまたはインバータ）は図示していない。
【００４９】
メモリセルは全て消去状態とする。ワード線ＷＬ１に接続されているメモリに電荷を蓄積するときは、ワード線１に選択電圧Ｖｓｅｌｅｃｔを印加し、ビット線にデータを印加する。このとき、ワード線ＷＬ１に接続され選択電圧Ｖｓｅｌｅｃｔが印加されているメモリセルのビット線ＢＬ１乃至ＢＬ８にデータを全て印加する。その後、ワード線ＷＬ１をオフ電圧Ｖｏｆｆにする。ワード線ＷＬ１がオフ電圧Ｖｏｆｆになってからワード線ＷＬ２への選択電圧Ｖｓｅｌｅｃｔの印加とビット線ＢＬ１乃至ＢＬ８にデータの印加を開始する。重要なことは、ワード線（例えばワード線ＷＬ１）に選択電圧Ｖｓｅｌｅｃｔが印加されている間にビット線のデータを確定させ、その状態で上記ワード線ＷＬ１をオフ電圧Ｖｏｆｆにすることであり、それによりデータをＤＲＡＭ的に保持することができる。ここで、ワード線ＷＬ１に選択電圧Ｖｓｅｌｅｃｔが印加されている間にビット線のデータを確定させることは、ワード線ＷＬ１に印加されている電圧が立ち下がらないうちに、ビット線に印加される電圧が立ち上がることを意味する。
【００５０】
よって、図２３（ａ）、２３（ｂ）に示すように、ビット線のデータの印加時間内にワード線をＶｏｆｆ→Ｖｓｅｌｅｃｔ→Ｖｏｆｆとしても良い。また、図２４（ａ）、２４（ｂ）に示すように、同じ信号波形を用いてワード線とビット線に印加する電圧を遅延させて動作させてもＤＲＡＭ動作は可能である。また、ワード線の印加する順番はランダムでも良い。
【００５１】
一実施形態によるＦＰＧＡの第１具体例を図２５に示す。この第１具体例のＦＰＧＡは、ＤＲＡＭ動作とその後のメモリ動作を行う。第１具体例のＦＰＧＡは、ＦＰＧＡコア１５０と、ロウデコーダ１６０と、アドレスコントローラ１６２と、電源回路１６６と、複数のマルチプレクサ１７０と、カラムデコーダ１８０と、電源回路１８４と、ＤＲＡＭコントローラ１９０と、を備えている。ＦＰＧＡコア１５０は、図１で説明した基本タイル１０２を複数個含み、このため、図１で説明したロジックブロックＬＢおよびスイッチブロックＳＢを有している。
【００５２】
ロウデコーダ１６０は、アドレスコントローラ１６２から送られてくるアドレス信号に基づいて、ＦＰＧＡコア１５０に含まれるメモリのワード線を選択し、選択したワード線に動作モードに応じた電圧を印加する。この電圧は電源回路１６６から供給される。例えば、ＤＲＡＭ動作時には、選択したワード線に選択電圧Ｖｓｅｌｅｃｔを印加し、非選択のワード線に非選択電圧Ｖｏｆｆ（例えば、０Ｖ）を印加する。また、書き込み動作時には選択されたワード線には書き込み電圧（例えば、２０Ｖ）を印加し、消去時には消去電圧（−２０Ｖ）を印加する。
【００５３】
カラムデコーダはアドレスコントローラ１６２から送られてくるアドレス信号に基づいて、ＦＰＧＡコア１５０に含まれるメモリのビット線を選択し、選択したビット線に動作モードに応じた電圧を印加する。この電圧は電源回路１８４から供給される。例えば、書き込み時には、書き込み電圧（例えば、０Ｖ）を印加し、非選択のビット線には非選択電圧（例えば、８Ｖ）を印加する。
【００５４】
また、この第１具体例においては、ＤＲＡＭ動作時はマルチプレクサ１７０によってカラムデコーダ１８０ではなくＤＲＡＭコントローラ１９０からの信号が選択される。このＤＲＡＭコントローラ１９０はＤＲＡＭ動作用のビットデータを制御する。
【００５５】
一実施形態によるＦＰＧＡの第２具体例を図２６に示す。この第２具体例のＦＰＧＡにおいては、第１具体例のＦＰＧＡにおいて、アドレスコントローラ１６２とＤＲＡＭコントローラ１９０の間に遅延素子２００を設けた構成となっている。この構成を用いたことにより、図２４（ｂ）に示す動作ができる上、入力信号をそのまま使用できるので、ＤＲＡＭコントローラ１９０の回路構成を単純にすることができる。
【００５６】
一実施形態によるＦＰＧＡの第３具体例を図２７に示す。この第３具体例のＦＰＧＡは、第１具体例のＦＰＧＡにおいて、ＤＲＡＭコントローラ１９０に供給するビットデータを格納するＲＯＭまたはレジスタからなる内部メモリ２１０を設けた構成となっている。この構成を用いたことにより、ＤＲＡＭ動作では高速にビットデータを入力することができる。また、ワード線を共有するメモリには同時にビットデータを渡さなければならないため、外部からピンを使ってデータを入力するにはビットデータ分のピンが必要となり、現実的ではない。一方で、メモリトランジスタは一度に書き込みまたは消去を行えばデータが消える心配が無いため、外部ピンを使用してシリアルにデータを転送することができる。このように、ＤＲＡＭ動作のための内部メモリ２１０やコントローラ１６２、１９０とメモリ書き込み用のカラムデコーダ１８０を併せ持つことにより、ＤＲＡＭ動作とメモリ動作が行うことできる。なお、内部メモリ２１０としては、ＲＯＭ(Read Only Memory)またはレジスタが用いられる。また、ＲＯＭ内のデータは圧縮されていてもよく、その場合はＤＲＡＭコントローラ１９０において解凍されてデータが供給される。
【００５７】
一実施形態によるＦＰＧＡの第４具体例を図２８に示す。この第４具体例のＦＰＧＡは、第１具体例のＦＰＧＡにおいて、ＤＲＡＭコントローラ１９０の代わりにＲＯＭ２２０およびセレクタ２３０を設けた構成となっている。この第４具体例に用いられるＲＯＭ２２０の一例を図２９に示す。このＲＯＭ２２０は、アレイ状に配列されたトランジスタ２２２のソースおよびドレインの一端が接地電位に接続されているか否かによってデータ「０」または「１」を意味する。セレクタ２３０は予めｐＭＯＳトランジスタ２２４を動作させて出力線をプリチャージしておく。その後、セレクタ２３０によって選択線を選択し、選択されたトランジスタ２２２が接地電位に接続されていれば出力線から電荷が抜け、Ｈｉｇｈレベルが出力される。選択されたトランジスタ２２２が接地電位に接続されていなければ、電位は保持されＬｏｗレベルが出力される。ＲＯＭ２２０は予めデータが決まっているときにしか使用できないが、１ビットを１トランジスタで表現できるため小さな面積で作製することができるメリットがある。例えばロジック動作のテストは予めテストするパターンが決まっているため、ＲＯＭとして面積を小さくして内部で保持することにメリットがある。なお、ＲＯＭ２２０は複数に分かれていても良い。また、例えばロジック動作のテストでは、ブロックが周期的に並んでいるリコンフィギャラブル集積回路装置では同一ワードラインの複数のメモリで同じデータを必要とするときもある。よって、１つのＲＯＭ２２０から複数のメモリにデータを転送しても良い。
【００５８】
一実施形態によるＦＰＧＡの第５具体例を図３０に示す。この第５具体例のＦＰＧＡは、第１具体例のＦＰＧＡにおいて、ＤＲＡＭコントローラ１９０と、マルチプレクサ１７０との間に、ＲＯＭ２２０と、レジスタ２４０とを設けた構成となっている。このような構成としたことにより、安定してビットデータを印加することができる。なお、ＲＯＭ２２０、レジスタ２４０、およびマルチプレクサ１７０を含むブッロク２５０は、複数に分かれていても良い。
【００５９】
一実施形態によるＦＰＧＡの第６具体例を図３１に示す。図３０に示す第５具体例のＦＰＧＡは、ＲＯＭ２２０からのデータは、各レジスタに送られていた。この第６具体例のＦＰＧＡは、第５具体例のＦＰＧＡにおいて、ブロック２５０をブロック２５２に置き換えた構成となっている。このブロック２５２は、レジスタ２４０がシフトレジスタであって、ＲＯＭ２２０からのデータがシフトレジスタ２４０の入力段に送られ、シフトレジスタ２４０によりデータを保持する。これにより、ＲＯＭ２２０から一度に読み出すデータ量を減らすことができる。シフトレジスタを何段で構成するかはシフトレジスタの転送速度とＤＲＡＭ動作時の電荷の保持時間に依存する。前述と同様に、ＲＯＭ２２０、レジスタ２４０、およびマルチプレクサ１７０を含むブロック２５２は複数に分かれてあっても良い。
【００６０】
これまで示した各具体例においては、ロウデコーダ、カラムデコーダの位置や個数は限定されない。例えば、図３２に示す第７具体例のようにＦＰＧＡコア１５０の上下に２つのカラムデコーダ１８０Ａ、１８０Ｂを配置し、左右に２つのロウデコーダ１６０Ａ、１６０Ｂを配置するようにしても良い。この第７具体例においては、第１具体例に示した電源回路１６６および電源回路１８４を含んでいるが、図示していない。
【００６１】
また、図３３に示す第８具体例のように、ＦＰＧＡコアを２つのＦＰＧＡコア１５０Ａ、１５０Ｂに分割して配置しても良い。この第８具体例においては、第１具体例に示した電源回路１６６および電源回路１８４を含んでいるが、図示していない。
【００６２】
また、図３４に示す第９具体例のように、４つに分割されたＦＰＧＡコア１５０Ａ、１５０Ｂ、１５０Ｃ、１５０Ｄに対して、ＦＰＧＡ１５０ＡとＦＰＧＡ１５０Ｂとの間にロウデコーダ１６０Ａを設けるとともに、ＦＰＧＡ１５０ＣとＦＰＧＡ１５０Ｄとの間にロウデコーダ１６０Ｂを設け、更にＦＰＧＡ１５０ＡとＦＰＧＡ１５０Ｃとの間にカラムデコーダ１８０Ａを設けるとともに、ＦＰＧＡ１５０ＢとＦＰＧＡ１５０Ｄとの間にカラムデコーダ１８０Ｂを設けてもよい。この第９具体例においては、第１具体例に示した電源回路１６６および電源回路１８４を含んでいるが、図示していない。
【００６３】
このように第７乃至第９具体例のような構成とすることにより、１つのデコーダが充放電する配線が短くなるため、さらに高速に電圧を印加することができる。
【００６４】
以上説明したように、実施形態によれば、高速書き込みが可能であるとともに消費電流が少なくかつ占有面積が小さく、何回でも書き込みが可能なメモリを有するリコンフィギャラブル集積回路装置およびその書き込み方法を提供することができる。
【００６５】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これらの実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これらの実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【００６６】
１０〜１０Ｅ  メモリセル
１２  メモリトランジスタ
１２ａ、１２ｂ  メモリトランジスタ
２０  パストランジスタ（スイッチ回路）
２２  インバータ（スイッチ回路）
２２ａ  ｐチャネルＭＯＳトランジスタ
２２ｂ  ｎチャネルＭＯＳトランジスタ
１００  ＦＰＧＡ
１０２  基本タイル
１０４  ロジックブロック
１０６  スイッチブロック
１１０  マルチプレクサ
【図１】
2014030110.tif 000003
【図２】
2014030110.tif 000004
【図３】
2014030110.tif 000005
【図４】
2014030110.tif 000006
【図５】
2014030110.tif 000007
【図６】
2014030110.tif 000008
【図７】
2014030110.tif 000009
【図８】
2014030110.tif 000010
【図９】
2014030110.tif 000011
【図１０】
2014030110.tif 000012
【図１１】
2014030110.tif 000013
【図１２】
2014030110.tif 000014
【図１３】
2014030110.tif 000015
【図１４】
2014030110.tif 000016
【図１５】
2014030110.tif 000017
【図１６】
2014030110.tif 000018
【図１７】
2014030110.tif 000019
【図１８】
2014030110.tif 000020
【図１９】
2014030110.tif 000021
【図２０】
2014030110.tif 000022
【図２１】
2014030110.tif 000023
【図２２】
2014030110.tif 000024
【図２３】
2014030110.tif 000025
【図２４】
2014030110.tif 000026
【図２５】
2014030110.tif 000027
【図２６】
2014030110.tif 000028
【図２７】
2014030110.tif 000029
【図２８】
2014030110.tif 000030
【図２９】
2014030110.tif 000031
【図３０】
2014030110.tif 000032
【図３１】
2014030110.tif 000033
【図３２】
2014030110.tif 000034
【図３３】
2014030110.tif 000035
【図３４】
2014030110.tif 000036