(57)【特許請求の範囲】
【請求項１】
第１のロジックブロックと、第２のロジックブロックと、プログラマブルスイッチと、を有し、
前記第１のロジックブロックは、前記第２のロジックブロックと、前記プログラマブルスイッチによって接続可能であり、
前記プログラマブルスイッチは、パストランジスタと、第１のトランジスタと、第２のトランジスタと、第３のトランジスタと、を有し、
前記第１のトランジスタ、前記パストランジスタ、及び前記第２のトランジスタは、この順に直列に接続され、
前記第１のトランジスタと前記第２のトランジスタの双方のソースとドレインとは、回路図において、前記第１のロジックブロックと前記第２のロジックブロックとの間に設けられ、
前記第１のトランジスタと前記第２のトランジスタとの双方がオフ状態であるときに、前記第３のトランジスタを介して前記パストランジスタのソースとドレインの一方にローレベル電位が供給されることを特徴とする半導体装置。
【請求項２】
さらに、書き込みトランジスタと、ビット線と、を有し、
前記書き込みトランジスタのソースとドレインとは、回路図において、前記ビット線と前記パストランジスタのゲートの間に設けられることを特徴とする請求項１記載の半導体装置。
【請求項３】
前記書き込みトランジスタが、活性層として酸化物半導体膜を有することを特徴とする請求項２記載の半導体装置。
【請求項４】
さらに、ワード線を有し、
前記書き込みトランジスタは、前記ワード線の信号により制御されることを特徴とする請求項２または３記載の半導体装置。
【請求項５】
前記書き込みトランジスタがオフ状態であるとき、前記パストランジスタのゲートが実質的に電気的に分離されることを特徴とする請求項２乃至４のいずれか一項に記載の半導体装置。
【請求項６】
前記書き込みトランジスタがオフ状態であるとき、前記パストランジスタのゲートが浮遊状態となることを特徴とする請求項２乃至４のいずれか一項に記載の半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この開示物は半導体装置に関する。
【背景技術】
【０００２】
フィールドプログラマブルゲートアレイ（ＦＰＧＡ）のルーティングスイッチは２つのロジックブロック（ＬＢ）間、あるいは、ＬＢと出入力回路間の接続を決定するスイッチとして作用する。ルーティングスイッチはパスゲート（パストランジスタ）に接続するコンフィギュレーションメモリに接続の情報を保持する。
【０００３】
最近、酸化物半導体をトランジスタのチャネルに使用するＦＰＧＡが提案されている（特許文献１および２）。酸化物半導体ベースのＦＰＧＡは消費電力を低減し、微細化で有利である。さらに、１より多い設定を有するマルチコンテキストＦＰＧＡも提案されている（非特許文献１）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】米国特許第８，５４７，７５３号明細書
【特許文献２】米国特許第８，６７５，３８２号明細書
【非特許文献】
【０００５】
【非特許文献１】Ｙ．  Ｏｋａｍｏｔｏ  ｅｔ  ａｌ．  ”Ｎｏｖｅｌ  ａｐｐｌｉｃａｔｉｏｎ  ｏｆ  ｃｒｙｓｔａｌｌｉｎｅ  ｉｎｄｉｕｍ−ｇａｌｌｉｕｍ−ｚｉｎｃ−ｏｘｉｄｅ  ｔｅｃｈｎｏｌｏｇｙ  ｔｏ  ＬＳＩ：  Ｄｙｎａｍｉｃａｌｌｙ  ｒｅｃｏｎｆｉｇｕｒａｂｌｅ  ｐｒｏｇｒａｍｍａｂｌｅ  ｌｏｇｉｃ  ｄｅｖｉｃｅ  ｂａｓｅｄ  ｏｎ  ｍｕｌｔｉ−ｃｏｎｔｅｘｔ  ａｒｃｈｉｔｅｃｔｕｒｅ．”，  Ｉｎ  ２０１３  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ  Ｔｅｃｈｎｏｌｏｇｙ  ｆｏｒ  Ｕｌｔｒａ  Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔｓ  ａｎｄ  Ｔｈｉｎ  Ｆｉｌｍ  Ｔｒａｎｓｉｓｔｏｒｓ  （ＵＬＳＩＣ  ｖｓ．  ＴＦＴ  ４）．
【発明の概要】
【発明が解決しようとする課題】
【０００６】
この開示物では、半導体装置に関する新規な回路、アーキテクチャー、駆動方法、装置のいずれかが提供される。
【課題を解決するための手段】
【０００７】
例えば、第１のロジックブロック、第２のロジックブロックとプログラム可能なスイッチ（プログラマブルスイッチ）とを有する半導体装置が提供される。第１のロジックブロックと第２のロジックブロックはプログラマブルスイッチにより接続可能であり、プログラマブルスイッチは、パストランジスタ、第１のトランジスタ、第２のトランジスタ、第３のトランジスタを有し、第１のトランジスタ、パストランジスタ、第２のトランジスタはこの順に直列に接続され、回路図において、第１のトランジスタと第２のトランジスタのソースとドレインは第１のロジックブロックと第２のロジックブロックの間に位置し、半導体装置は、第１のトランジスタと第２のトランジスタがともにオフ状態のときに、パストランジスタのソースとドレインの一方に、第３のトランジスタを介して、ある電位が供給されるように設計されている。
【０００８】
例えば、２つのロジックブロックと、パストランジスタと２つの選択トランジスタとプリチャージトランジスタを有する半導体装置が提供される。２つの選択トランジスタはパストランジスタを挟むように配置され、パストランジスタは２つの選択トランジスタのソースの間に位置する。２つの選択トランジスタのソースとドレインは２つのロジックブロック間に位置する。２つの選択トランジスタがオフ状態であるとき、パストランジスタのソースあるいはドレインに、オン状態であるプリチャージトランジスタを経由してある電位が与えられ、さらに、電気的導通によって、あるコンテキストのための他の電位が、パストランジスタのゲートに与えられる。コンテキストを実行するとき、パストランジスタのゲートは実質的に電気的に分離されていて（浮遊状態で）、２つの選択トランジスタはオン状態で、プリチャージトランジスタはオフ状態である。
【発明の効果】
【０００９】
上記半導体装置は新規であり、消費電力を低減すること、処理速度を向上すること、安定性、信頼性あるいは以下に記載されることのいずれかを得ることの一つ以上に対して優位性を有する。
【図面の簡単な説明】
【００１０】
【図１】マルチコンテキストＦＰＧＡを説明する例を示す。
【図２】パストランジスタの動作を説明する例を示す。
【図３】パストランジスタの動作を説明する例を示す。
【図４】プログラマブルスイッチの例を示す。
【図５】プログラマブルスイッチの例を示す。
【図６】プログラマブルスイッチの例を示す。
【図７】プログラマブルスイッチの例を示す。
【図８】ルーティングスイッチの例を示す。
【図９】ルーティングスイッチの例を示す。
【図１０】ルーティングスイッチの例を示す。
【図１１】プログラマブルスイッチの動作を説明する例を示す。
【図１２】半導体装置の作製工程の断面図の例を示す。
【図１３】半導体装置の作製工程の断面図の例を示す。
【図１４】ＦＰＧＡの例を示す。
【図１５】ロジックブロックの例を示す。
【図１６】実施例で設定された回路、（Ａ）シフタ回路、と（Ｂ）リングオシレータを示す。
【図１７】実施例の入出力回路の電位の概略を示す。
【図１８】実施例のリングオシレータのシミュレーションされた特性を示す。
【図１９】実施例のリングオシレータのシミュレーションされた特性を示す。
【図２０】実施例のリングオシレータのシミュレーションされた特性を示す。
【図２１】実施例の半導体装置の配線、半導体膜、コンタクトホールのレイアウトを示す。
【図２２】実施例の半導体装置のシミュレーションされた特性を示す。
【図２３】実施例の半導体装置のシミュレーションされた特性を示す。
【発明を実施するための形態】
【００１１】
以下、図面を参照して実施の形態が記述される。しかしながら、実施の形態は多くの異なる態様で実施することができる。精神および範囲から逸脱することなく形態と詳細を様々に変更することは当業者には容易に理解されよう。
【００１２】
（実施の形態１）
図１（Ａ）はマルチコンテキストＦＰＧＡの一部のブロック図を示す。マルチコンテキストＦＰＧＡは、ルーティングスイッチ１００、ロジックブロック１０２ａ、ロジックブロック１０２ｂを有する。ロジックブロック１０２ａ、ロジックブロック１０２ｂは、ルーティングスイッチ１００を介して接続可能である。
【００１３】
例えば、ルーティングスイッチ１００がオン状態のとき、ロジックブロック１０２ａの出力信号は、ロジックブロック１０２ｂに入力され、また、ルーティングスイッチ１００がオフ状態のとき、ロジックブロック１０２ａとロジックブロック１０２ｂは電気的に分離される。ここで、ルーティングスイッチ１００とロジックブロック１０２ａの間のノードを「ＩＮ」、ルーティングスイッチ１００とロジックブロック１０２ｂの間のノードを「ＯＵＴ」と呼ぶ。
【００１４】
ルーティングスイッチ１００は２以上のプログラマブルスイッチを有する。例えば、ルーティングスイッチ１００は、プログラマブルスイッチ１０１ａ、プログラマブルスイッチ１０１ｂ、プログラマブルスイッチ１０１ｃを有し、それぞれ、独立にコンフィギュレーションデータを有する。コンフィギュレーションデータは、ビット線ＢＬより、それぞれのプログラマブルスイッチに供給される。なお、コンフィギュレーションデータを書き込むことやプログラマブルスイッチを選択すること等のために他の配線が追加されてもよい。
【００１５】
図１（Ｂ）はプログラマブルスイッチを有するルーティングスイッチ１００の例を示す。例えば、プログラマブルスイッチ１０１ａは、書き込みトランジスタ１０３ａ、パストランジスタ１０４ａ、容量素子１０５ａ、選択トランジスタ１０６ａを有する。
【００１６】
本実施の形態では、書き込みトランジスタ１０３ａ、パストランジスタ１０４ａ、選択トランジスタ１０６ａはｎ型である。しかし、それらのいくつか、あるいは全てがｐ型であってもよい。
【００１７】
容量素子１０５ａの一方の電極は、パストランジスタ１０４ａのゲートに接続していてもよい。あるいは、書き込みトランジスタ１０３ａのソースとドレインは、容量素子１０５ａの一方の電極とビット線ＢＬの間に設けられてもよい。
【００１８】
さらに、書き込みトランジスタ１０３ａ、パストランジスタ１０４ａ、選択トランジスタ１０６ａは、トランスミッションゲートのような他のスイッチングエレメントでもよい。トランスミッションゲートを用いれば、信号電位の低下がないので、速度、消費電力を低減する点、駆動電圧を下げる点で有利である。
【００１９】
同様に、プログラマブルスイッチ１０１ｂ、プログラマブルスイッチ１０１ｃは、それぞれ、書き込みトランジスタ１０３ｂ、パストランジスタ１０４ｂ、容量素子１０５ｂ、選択トランジスタ１０６ｂと、書き込みトランジスタ１０３ｃ、パストランジスタ１０４ｃ、容量素子１０５ｃ、選択トランジスタ１０６ｃを有する。
【００２０】
書き込みトランジスタ１０３ａ、書き込みトランジスタ１０３ｂ、書き込みトランジスタ１０３ｃは、それぞれ、ワード線ＷＬａ、ワード線ＷＬｂ、ワード線ＷＬｃによって制御される。プログラマブルスイッチ１０１ａへのコンフィギュレーションデータの書き込みは、書き込みトランジスタ１０３ａがオン状態のときにおこなわれる。パストランジスタ１０４ａのゲート（メモリノードＭＮ）の電位は、書き込みトランジスタ１０３ａがオン状態のとき、コンフィギュレーションデータ（あるいはビット線ＢＬの電位）に応じたものとなる。
【００２１】
メモリノードＭＮは、実質的に、かつ、電気的に、書き込みトランジスタ１０３ａを介してのみ、他の配線と接続可能であることに注意が必要である。したがって、書き込みトランジスタ１０３ａがオフ状態のときには、メモリノードＭＮは電気的に分離される。もちろん、２以上のトランジスタのソース電極やドレイン電極がメモリノードＭＮに接続されてもよい。その場合には、全てのトランジスタがオフ状態のときに、メモリノードＭＮは電気的に分離される。
【００２２】
一例では、十分な期間、メモリノードＭＮに電荷を保持するためには、書き込みトランジスタ１０３ａがオフ状態のときのソースドレイン電流は、１ｚＡ（１×１０−２１Ａ）未満である。メモリノードＭＮが十分な電荷を保持できる期間はオフ状態のソースドレイン電流（オフ状態電流）と、メモリノードＭＮの容量に依存する。他の経路（例えば、ゲートとメモリノードＭＮ間（いわゆるゲートリーク））を介するメモリノードからのリークも１ｚＡ未満とするとよい。
【００２３】
特許文献１、２および非特許文献１に記載されているように、酸化物半導体系トランジスタはこの目的には理想的であり、メモリノードＭＮは実質的に不揮発メモリの一部として機能する。
【００２４】
酸化物半導体系トランジスタは、酸化物半導体薄膜を活性層として有するので、２つのゲートが間に酸化物半導体膜を挟んで互いに向かいあうように設けられてもよい。
【００２５】
一例では、酸化物半導体系トランジスタは酸化物半導体膜の一表面に向かう一つのゲート電極を有する。他の例では、酸化物半導体系トランジスタは、そのようなゲート電極に加えて、酸化物半導体膜の他の表面に向かう他のゲート電極を有する。
【００２６】
パストランジスタ１０４ａの状態（オンあるいはオフ）は、主として、メモリノードＭＮの電位に依存する。例えば、メモリノードＭＮとパストランジスタ１０４ａ間の電位差が、パストランジスタ１０４ａのしきい値より大きければ、パストランジスタ１０４ａはオン状態である。
【００２７】
選択トランジスタ１０６ａは、コンテキストを選択するための信号（コンテキスト信号）が伝送するコンテキスト線ＣＸａによって制御される。ノードＩＮとノードＯＵＴが接続されるには（あるいは、選択トランジスタ１０６ａとパストランジスタ１０４ａを通って、ノードＩＮからノードＯＵＴに信号が通るには）、選択トランジスタ１０６ａとパストランジスタ１０４ａの双方がオン状態であることが必要である。同様に、選択トランジスタ１０６ｂ、選択トランジスタ１０６ｃは、それぞれ、コンテキスト線ＣＸｂ、コンテキスト線ＣＸｃによって制御される。
【００２８】
図１（Ｂ）に示されるように、選択トランジスタ１０６ａ、選択トランジスタ１０６ｂ、選択トランジスタ１０６ｃは、独立して制御できるので、それらのいずれかを選択することにより、選択されたプログラマブルスイッチに格納されていたコンテキストが実行できる。例えば、選択トランジスタ１０６ｂを選択することにより、プログラマブルスイッチ１０１ｂに格納されていたコンテキストが実行可能となる。
【００２９】
上記の例では、ルーティングスイッチ１００には３つのプログラマブルスイッチがあるので、最大３つのコンテキストが実行可能である。しかし、さらにプログラマブルスイッチを追加することで、より多くのコンテキストが実行可能である。あるいは、ルーティングスイッチ１００にはプログラマブルスイッチが２以下しかなくてもよい。
【００３０】
書き込みトランジスタ１０３ａ、書き込みトランジスタ１０３ｂ、書き込みトランジスタ１０３ｃは独立して制御できるので、コンフィギュレーションデータは、プログラマブルスイッチ１０１ａ、プログラマブルスイッチ１０１ｂ、プログラマブルスイッチ１０１ｃに独立して書き込める。
【００３１】
さらに、プログラマブルスイッチ１０１ｂが使用中であっても、（使用中でない）プログラマブルスイッチ１０１ａにコンフィギュレーションデータを書き込むこともできる。この操作はダイナミック・リコンフィギュレーション（動的再構成）と呼ばれる。例えば、プログラマブルスイッチ１０１ｂに格納されている第１のコンテキストに基づいて第１のタスクが実行されているときに、プログラマブルスイッチ１０１ａに新しいコンフィギュレーションデータが書き込める。
【００３２】
パストランジスタ１０４ａのソース電極（あるいはドレイン電極）の電位は、コンフィギュレーションデータを書き込むときに重要な役割を果たす。図２と図３でその理由を説明する。
【００３３】
図２（Ａ）は、コンフィギュレーションデータ「Ｈ」（ハイレベル電位、例えば、０．８Ｖ）がプログラマブルスイッチに書き込まれるのを示す。ここで、ビット線ＢＬの電位は「Ｈ」であり、したがって、メモリノードＭＮの電位は（実質的に）「Ｈ」となる。一方で、ノードＩＮの電位は、パストランジスタ１０４ａのしきい値以上だけ、ビット線ＢＬの電位より低い「Ｌ」（ローレベル電位、例えば、０Ｖ）となるように設定されている。したがって、パストランジスタ１０４ａはオン状態であり、メモリノードＭＮは、パストランジスタ１０４ａのチャネルを介して、ノードＩＮ（そしてソースノードＳＮ）と容量的に結合する。
【００３４】
書き込みトランジスタ１０３ａがオフになった後、ノードＩＮの電位が、「Ｌ」から「Ｈ」に上がると、メモリノードＭＮの電位は、容量結合により「Ｈ＋ΔＶ」に上昇する（図２（Ｂ））。これはブースティング効果と呼ばれる。ΔＶがＶｔｈ（パストランジスタ１０４ａのしきい値）より大きければ、ノードＯＵＴの電位は「Ｌ」から「Ｈ」となる。ΔＶがＶｔｈ（パストランジスタ１０４ａのしきい値）より小さければ、ノードＯＵＴの電位は「Ｈ」に届かないかもしれない。しかしながら、パストランジスタ１０４ａのオン抵抗が低下するので、パストランジスタ１０４ａによる信号遅延は減少する。
【００３５】
ノードＩＮの電位が「Ｌ」に低下すると、メモリノードＭＮの電位は容量結合により、「Ｈ」に戻る（図２（Ｃ））。
【００３６】
図３（Ａ）も、コンフィギュレーションデータ「Ｈ」がプログラマブルスイッチに書き込まれるのを示すが、ノードＩＮの電位が「Ｈ」に設定された条件でのものである。ここで、ノードＯＵＴの電位は、「Ｈ−Ｖｔｈ」であるが、パストランジスタ１０４ａはオン状態のままであると仮定する。したがって、メモリノードＭＮは、パストランジスタ１０４ａのチャネルを介して、ノードＩＮ（そしてソースノードＳＮ）と容量的に結合する。
【００３７】
書き込みトランジスタ１０３ａがオフになった後、ノードＩＮの電位が、「Ｈ」から「Ｌ」に下がると、メモリノードＭＮのポテンシャルは、容量結合により「Ｈ−ΔＶ」あるいは「Ｈ−Ｖｔｈ」のいずれか高いほうに低下する（図３（Ｂ））。これは逆ブースティング効果と呼ばれる。上述のように、ノードＯＵＴの電位が「Ｈ−Ｖｔｈ」であったとすると、その電位が「Ｌ」に低下するには、ゲート電位が低いために、パストランジスタ１０４ａのオン抵抗が高くなり、より多くの時間がかかる。
【００３８】
ノードＩＮの電位が「Ｈ」に上昇すると、メモリノードＭＮの電位は容量結合により、「Ｈ」に戻る、しかし、ノードＯＵＴの電位は「Ｈ−Ｖｔｈ」を超えることはない（図３（Ｃ））。
【００３９】
図３（Ｂ）および図３（Ｃ）に示されるように、コンフィギュレーションデータを書き込む際に、ソースノードＳＮの電位を「Ｈ」にすることは問題となることがある。結論として、コンフィギュレーションデータを書き込む際に、ソースノードＳＮの電位は、メモリノードＭＮで可能な最高電位より、Ｖｔｈを超えるだけ低いことが望ましい。例えば、コンフィギュレーションデータを書き込む際に、ノードＩＮの電位は、「Ｌ」に設定される。
【００４０】
図１（Ｂ）に示される回路では、ロジックブロック１０２ａの出力に応じて、ソースノードＳＮは「Ｈ」あるいは「Ｌ」となる。したがって、プログラマブルスイッチ１０１ａのパフォーマンスはロジックブロック１０２ａの出力とコンフィギュレーションのタイミングに依存する。すなわち、コンフィギュレーションデータの書き込みのときロジックブロック１０２ａの出力が「Ｌ」であれば、図２に示すようにブースティング効果により優れたパフォーマンスを示すが、そうでなければ、図３に示すように逆ブースティング効果により不十分なパフォーマンスとなる。このように、プログラマブルスイッチ（およびＦＰＧＡ）は、不安定であり、うまく動作しない。
【００４１】
また、回路の動作は、もっとも遅い信号を元におこなうため、条件によって信号が早くなったり遅くなったりする場合には、遅くなった場合を基準にクロック等が設定される。つまり、図２のように動作が速い場合と、図３のように動作が遅い場合があれば、クロックは図３の場合を想定して設定される。結果、回路動作は遅くなる。
【００４２】
図１（Ｂ）に示されるプログラマブルスイッチでは、ソースノードＳＮは無防備であり、その電位は、実質的にノードＩＮの電位と同じである。したがって、逆ブースティング効果は不可避である。図４（Ａ）に示される回路はそのような困難を克服する。
【００４３】
図４（Ａ）に示されるプログラマブルスイッチ１０１ａは、図１（Ｂ）に示されるプログラマブルスイッチと同様、書き込みトランジスタ１０３ａ、パストランジスタ１０４ａ、容量素子１０５ａ、選択トランジスタ１０６ａを有する。加えて、図４（Ａ）に示されるプログラマブルスイッチ１０１ａは、選択トランジスタ１０７ａとプリチャージトランジスタ１０８ａを有する。
【００４４】
選択トランジスタ１０７ａ、パストランジスタ１０４ａ、選択トランジスタ１０６ａは、この順に、ノードＩＮとノードＯＵＴの間に直列に接続される。選択トランジスタ１０６ａと選択トランジスタ１０７ａは、それぞれ、コンテキスト線ＣＸａ、コンテキスト線ＣＹａによって制御される。選択トランジスタ１０６ａと選択トランジスタ１０７ａをオフとすることで、パストランジスタ１０４ａのソースとドレインはノードＩＮとノードＯＵＴから電気的に分離される。
【００４５】
プリチャージトランジスタ１０８ａのソースとドレインの一方はパストランジスタ１０４ａのソースとドレインの一方に接続される。この例では、プリチャージトランジスタ１０８ａのソースとドレインの他方にある電位が供給される。その電位は、例えば、「Ｌ」であるが、メモリノードＭＮで可能なもっとも高い電位より少なくともＶｔｈだけ低いもの（例えば、「Ｈ−Ｖｔｈ」より低いもの）であれば利用できる。一例では、電位は、「Ｌ−Ｖｔｈ」より高くてもよい。
【００４６】
なお、プリチャージトランジスタ１０８ａがオフ状態のときは、プリチャージトランジスタ１０８ａのソースとドレインの他方の電位は「Ｈ」でも、その他の電位でもよい。したがって、プリチャージトランジスタ１０８ａのソースとドレインの他方の電位は一定であっても、変動していてもよい。なお、例えば、容量素子１０５ａの他方の電極の電位を用いてもよい。
【００４７】
プリチャージトランジスタ１０８ａはプリチャージ線ＰＣａによって制御され、選択トランジスタ１０６ａと選択トランジスタ１０７ａをオフとし、プリチャージトランジスタ１０８ａをオンとすることで、例えば、ソースノードＳＮの電位は「Ｌ」とできる。
【００４８】
上記のとおり、ダイナミックリコンフィギュレーションでは、プログラマブルスイッチへのコンフィギュレーションデータの書き込みは、そのプログラマブルスイッチに格納されているコンテキストが実行されていないときにおこなわれる。したがって、プログラマブルスイッチへコンフィギュレーションデータを書き込むとき、選択トランジスタ１０６ａと選択トランジスタ１０７ａはオフ状態にできる。
【００４９】
一例では、プリチャージトランジスタ１０８ａは、選択トランジスタ１０６ａと選択トランジスタ１０７ａ双方がオフ状態である全てあるいは一部の期間において、オン状態とできる。一例では、プリチャージトランジスタ１０８ａは、書き込みトランジスタ１０３ａがオフとされたとき、あるいは、その前においてオン状態である。
【００５０】
選択トランジスタ１０６ａと選択トランジスタ１０７ａを互いに同期してオンあるいはオフにしてもよい。図４（Ｂ）に示されるプログラマブルスイッチ１０１ａでは、選択トランジスタ１０６ａと選択トランジスタ１０７ａ双方は、単一のコンテキスト線ＣＸａによって制御される。
【００５１】
上記のように、プリチャージトランジスタ１０８ａは、選択トランジスタ１０６ａと選択トランジスタ１０７ａ双方がオフ状態であるときにオン状態となる。したがって、プリチャージトランジスタ１０８ａを、選択トランジスタ１０６ａと選択トランジスタ１０７ａと逆にオンあるいはオフとすることもできる。図５（Ａ）に示されるプログラマブルスイッチ１０１ａでは、プリチャージトランジスタ１０８ａは、反コンテキスト信号（コンテキスト信号の反転信号）を伝送する反コンテキスト線／ＣＸａによって制御される。
【００５２】
プログラマブルスイッチ１０１ａが、図５（Ｂ）に示されるようなトランスミッションゲートを有していれば、反コンテキスト線と反コンテキスト信号は、ｐ型トランジスタ（選択トランジスタ１０９ａと選択トランジスタ１１０ａ）を制御することに使用できる。
【００５３】
図６（Ａ）はプログラマブルスイッチ１０１ａの別の例を示す。この例では、プリチャージトランジスタ１０８ａは、書き込みトランジスタ１０３ａと同様にワード線ＷＬａによって制御される。すなわち、プリチャージトランジスタ１０８ａを、書き込みトランジスタ１０３ａと同期させて、オンあるいはオフとする。
【００５４】
図６（Ｂ）はプログラマブルスイッチ１０１ａの別の例を示す。この例では、図６（Ａ）に示されたプログラマブルスイッチ１０１ａを改変して、ソースノードＳＮがパストランジスタ１０４ａと選択トランジスタ１０６ａの間に設けられる。このような改変は、図４および図５に示されるプログラマブルスイッチにおいても適用できる。
【００５５】
図７（Ａ）はプログラマブルスイッチ１０１ａの別の例を示す。この例では、図６（Ａ）に示されたプログラマブルスイッチ１０１ａが改変されて、プリチャージトランジスタ１０８ａがソースノードＳＮとコンテキスト線ＣＸａの間に設けられる。
【００５６】
選択トランジスタ１０６ａと選択トランジスタ１０７ａをオンとするために、コンテキスト線ＣＸａの電位が上昇するとき、プリチャージトランジスタ１０８ａは、書き込みトランジスタ１０３ａと同様に、オフ状態である。選択トランジスタ１０６ａと選択トランジスタ１０７ａをオフとするために、コンテキスト線ＣＸａの電位が低下している間に、プリチャージトランジスタ１０８ａと書き込みトランジスタ１０３ａがオンになると、ソースノードＳＮは、その低下した電位（例えば、「Ｌ」）でプリチャージされる。
【００５７】
このような改変は、図４および図５に示されるプログラマブルスイッチにおいても適用できる。図７（Ｂ）は図５（Ａ）のプログラマブルスイッチ１０１ａをもとにしたものである。
【００５８】
図８は、複数のプログラマブルスイッチ１０１（プログラマブルスイッチ１０１［０］、プログラマブルスイッチ１０１［１］、プログラマブルスイッチ１０１［２］、・・）を有するルーティングスイッチ１００の例である。個々のプログラマブルスイッチ１０１は図６（Ａ）に示される回路構成を有する。この例では、ルーティングスイッチ１００は、ビット線ＢＬ、ワード線ＷＬ［０］、ワード線ＷＬ［１］、ワード線ＷＬ［２］、・・、コンテキスト線ＣＸ［０］、コンテキスト線ＣＸ［１］、コンテキスト線ＣＸ［２］、・・によって制御される。ノードＩＮとノードＯＵＴの接続は、選択されたコンテキストによって決定される。
【００５９】
図９はルーティングスイッチ１００の例である。図９のルーティングスイッチ１００は、図８のものに似ているが、プログラマブルスイッチ１０１［０］のソースノードにプリチャージトランジスタを介してワード線ＷＬ［１］の電位が供給される点で異なる。
【００６０】
プログラマブルスイッチ１０１［０］の書き込みトランジスタとプリチャージトランジスタがオン状態のとき、ワード線ＷＬ［１］の電位は「Ｌ」である（あるいはそれより低い）。したがって、プログラマブルスイッチ１０１［０］のソースノードの電位は「Ｌ」となる（あるいはそれより低くなる）。
【００６１】
この構造は、書き込みトランジスタとプリチャージトランジスタが同じ構造である場合、特に、書き込みトランジスタとプリチャージトランジスタが同じ層の配線や膜を使用する場合に有利である。
【００６２】
図１０はルーティングスイッチ１００の例である。図１０のルーティングスイッチ１００は、図８のものに似ているが、プログラマブルスイッチ１０１［０］のプリチャージトランジスタがコンテキスト線ＣＸ［１］によって制御される点で異なる。したがって、プログラマブルスイッチ１０１［０］のプリチャージトランジスタは、プログラマブルスイッチ１０１［１］のコンテキストが実行されている間のみオン状態となる。
【００６３】
プログラマブルスイッチ１０１［１］のコンテキストが実行されるとき、プログラマブルスイッチ１０１［０］の選択トランジスタはオフ状態であり、プログラマブルスイッチ１０１［０］のプリチャージトランジスタはオン状態である。したがって、この期間がプログラマブルスイッチ１０１［０］にコンフィギュレーションデータを書き込むのに利用できる。ルーティングスイッチ１００がプログラマブルスイッチ１０１を多く有するほどこの構造は有利となる。
【００６４】
図１１（Ａ）は図４（Ｂ）に示されたプログラマブルスイッチ１０１ａの駆動方法を説明する例である。この例では、メモリノードＭＮの電位は、当初、「Ｌ」に設定されていると仮定する。さらに、この例では、ノードＩＮの電位は、周期的に上昇下降する。
【００６５】
Ｔ１において、選択トランジスタ１０６ａと選択トランジスタ１０７ａがオフとなる。Ｔ８において、選択トランジスタ１０６ａと選択トランジスタ１０７ａがオンとなる。したがって、パストランジスタ１０４ａのソースとドレインは、Ｔ１からＴ８の間は、ノードＩＮとノードＯＵＴから電気的に分離される。したがって、この期間はコンフィギュレーションデータを書き込むのに使用できる。
【００６６】
なお、Ｔ１からＴ８の期間は、他のプログラマブルスイッチが使用されていて、他のコンテキスト（タスク）が実行されている。
【００６７】
Ｔ３において、書き込みトランジスタ１０３ａがオンとなる。Ｔ５において、書き込みトランジスタ１０３ａがオフとなる。Ｔ３からＴ５の操作によって、コンフィギュレーションデータの書き込みが完了する。この例では、ビット線ＢＬの電位はＴ４からＴ６の間、「Ｈ」である。したがって、メモリノードＭＮの電位はＴ４において「Ｈ」となる。
【００６８】
Ｔ５においてワード線ＷＬａの電位が低下する際、メモリノードＭＮの電位は、書き込みトランジスタ１０３ａ（およびワード線ＷＬａ）とメモリノードＭＮとの間にある容量（主として寄生容量）によって生じる容量結合により、若干低下することがある。
【００６９】
Ｔ５の後、メモリノードＭＮは、全ての配線から電気的に分離される。この状態を（電気的に）浮遊であるという。しかしながら、メモリノードＭＮは、配線や導体によって容量的に影響を受ける。
【００７０】
一方、プリチャージ線ＰＣａの電位は、Ｔ２に上昇し、Ｔ７に下降する。したがって、プリチャージトランジスタ１０８ａは、Ｔ２にオンとなり、Ｔ７にオフとなる。結果、ソースノードＳＮの電位は、書き込みトランジスタ１０３ａがオフとなる前に「Ｌ」に設定される。
【００７１】
Ｔ８の後、ソースノードＳＮのポテンシャルは、選択トランジスタ１０７ａがオン状態なので、周期的に上昇下降する。さらに、メモリノードＭＮの電位も、ブースティング効果により、ソースノードＳＮの電位に同期して変化する。
【００７２】
図１１（Ａ）には示されていないが、もし、メモリノードＭＮの最高電位が「Ｈ＋Ｖｔｈ」より高ければ、ノードＯＵＴの電位は、ノードＩＮの電位と同じ高さとなる。
【００７３】
図１１（Ｂ）は別の例を示す。この例でも、Ｔ１１からＴ１８の期間が、コンフィギュレーションデータの書き込みに使用できる。この例では、ビット線ＢＬとプリチャージ線ＰＣａの信号は、それぞれ、図１１（Ａ）の例におけるプリチャージ線ＰＣａとビット線ＢＬの信号と同じである。したがって、メモリノードＭＮとソースノードＳＮの電位のタイミングチャートは図１１（Ａ）のものとは異なる。
【００７４】
これらの例では、書き込みトランジスタ１０３ａがオンとなる前にプリチャージトランジスタ１０８ａがオンとなる場合（図１１（Ａ））あるいは、書き込みトランジスタ１０３ａがオンとなっている間にプリチャージトランジスタ１０８ａがオンとなる場合（図１１（Ｂ））で、書き込みトランジスタ１０３ａがオフとなった後にプリチャージトランジスタ１０８ａがオフとなる。
【００７５】
しかしながら、他の駆動方法も利用できる。例えば、図１１（Ａ）のＴ１からＴ５あるいは図１１（Ｂ）のＴ１１からＴ１５の間の任意の期間が、プリチャージトランジスタ１０８ａをオン状態とする期間に使用できる。
【００７６】
（実施の形態２）
本実施の形態では、断面図を用いて、実施の形態１の半導体装置を製造するステップを説明する。図１２および図１３は断面図を示す。なお、図１２および図１３は半導体装置の層構造を理解するためだけのものであり、図１２および図１３は特定の実在する断面ではない。
【００７７】
（図１２（Ａ））
素子分離領域２０１が半導体基板２００に形成される。半導体基板２００は、例えば、単結晶シリコン基板あるいはシリコン・オン・インシュレータ（ＳＯＩ）基板でもよい。半導体基板２００はｎ型ドーパントで軽くドーピングされていてもよいし、真性でもよい。素子分離領域２０１は、例えば、シャロー・トレインチ・アイソレーション（ＳＴＩ）技術によって形成されてもよい。
【００７８】
次に、素子分離領域２０１が設けられていない領域にｐ型領域２０２が形成される。
【００７９】
（図１２（Ｂ））
素子分離領域２０１とｐ型領域２０２の上にゲート絶縁物２０３が形成される。ゲート絶縁物２０３はｐ型領域２０２の上のみに形成されてもよい。ゲート絶縁物２０３は、例えば、酸化シリコン、酸化ハフニウム、その他の酸化物でできていてもよい。
【００８０】
配線２０４ａ、配線２０４ｂがゲート絶縁物２０３の上に形成される。この図では、配線２０４ａ（および配線２０４ｂ）の２つの断面が示されている。これは、この面では、配線２０４ａが２つの断面を有し、それぞれの断面は単一の物体のものを示していることを意味している。
【００８１】
配線２０４ａと配線２０４ｂは金属やドーピングされたシリコンでできていてもよい。一例では、配線２０４ａと配線２０４ｂは、単層あるいは多層の導電膜の選択的なエッチングにより形成されてもよい。この例では、配線２０４ａと配線２０４ｂは互いに分離されている（互いに接触しない）。
【００８２】
配線２０４ａと配線２０４ｂは、図４（Ｂ）、図５、図６あるいは図７の、それぞれ、コンテキスト線ＣＸａ（の一部）とメモリノードＭＮ（の一部）に相当することがある。
【００８３】
ｎ型領域２０５ａ、ｎ型領域２０５ｂ、ｎ型領域２０５ｃ、ｎ型領域２０５ｄを、配線２０４ａと配線２０４ｂをドーピングマスクとして用いて形成する。ｎ型領域２０５ｃは図４（Ｂ）、図５、図６あるいは図７のソースノードＳＮ（の一部）に相当することがある。このステップの前後にゲート絶縁物２０３の一部の領域がエッチングされてもよい。
【００８４】
（図１２（Ｃ））
層間絶縁物２０６が、ゲート絶縁物２０３、配線２０４ａ、配線２０４ｂの上に形成される。層間絶縁物２０６は、例えば、酸化シリコン、酸化炭化シリコンあるいはその他の金属酸化物からできていてもよい。層間絶縁物２０６は誘電率を減らすためにボイドを有してもよい。
【００８５】
層間絶縁物２０６の表面は研磨平坦化される。層間絶縁物２０６にコンタクトホールを形成した後、配線２０７ａ、配線２０７ｂが形成される。配線２０７ａと配線２０７ｂは、図４（Ｂ）、図５、図６あるいは図７の、それぞれ、ノードＯＵＴ（の一部）とメモリノードＭＮ（の一部）に相当することがある。
【００８６】
（図１２（Ｄ））
層間絶縁物２０６、配線２０７ａ、配線２０７ｂの上に層間絶縁物２０８が形成される。層間絶縁物２０８の表面は研磨平坦化される。配線２０９が、層間絶縁物２０８の上に形成される。さらに、層間絶縁物２１０が、層間絶縁物２０８と配線２０９の上に形成される。層間絶縁物２１０の表面は研磨平坦化される。
【００８７】
酸化物半導体膜２１１ａと酸化物半導体膜２１１ｂが層間絶縁物２１０の上に形成される。酸化物半導体膜２１１ａは配線２０９と重なる。酸化物半導体膜２１１ａと酸化物半導体膜２１１ｂはＩｎ−Ｇａ−Ｚｎ酸化物でできていてもよい。層間絶縁物２０８と層間絶縁物２１０をエッチングして、配線２０７ａへのコンタクトホール２１２ａと、配線２０７ｂへのコンタクトホール２１２ｂが形成される。
【００８８】
（図１３（Ａ））
単層あるいは多層の導電層２１３を、層間絶縁物２１０、酸化物半導体膜２１１ａ、酸化物半導体膜２１１ｂの上に、それらを覆い、コンタクトホール２１２ａとコンタクトホール２１２ｂを埋めるように形成する。導電層２１３の表面は研磨平坦化される。さらに、単層あるいは多層の絶縁体２１４を導電層２１３の上に形成する。絶縁体２１４の表面は研磨平坦化される。
【００８９】
（図１３（Ｂ））
一回のリソグラフィーにより、導電層２１３と絶縁体２１４を選択的にエッチングし、配線２１５ａ、配線２１５ｂ、配線２１５ｃ、配線２１５ａ上のパターン化された絶縁体２１６ａ、配線２１５ｂ上のパターン化された絶縁体２１６ｂ、配線２１５ｃ上のパターン化された絶縁体２１６ｃを形成する。配線２１５ａ、配線２１５ｂ、配線２１５ｃは、図４（Ｂ）、図５、図６あるいは図７の、それぞれ、ノードＯＵＴ（の一部）、ビット線ＢＬ（の一部）、メモリノードＭＮ（の一部）に相当することがある。
【００９０】
配線２１５ａ、配線２１５ｂ、配線２１５ｃの形状は、それぞれ、パターン化された絶縁体２１６ａ、パターン化された絶縁体２１６ｂ、パターン化された絶縁体２１６ｃと実質的に同一である。このエッチングにより、酸化物半導体膜２１１ａと酸化物半導体膜２１１ｂが露出する。
【００９１】
層間絶縁物２１０、酸化物半導体膜２１１ａ、酸化物半導体膜２１１ｂ、配線２１５ａ、配線２１５ｂ、配線２１５ｃ、パターン化された絶縁体２１６ａ、パターン化された絶縁体２１６ｂ、パターン化された絶縁体２１６ｃの上にゲート絶縁体２１７を形成する。
【００９２】
そして、配線２１８ａと配線２１８ｂを、それぞれ、酸化物半導体膜２１１ａと酸化物半導体膜２１１ｂを覆って形成する。配線２１８ａは、図４（Ｂ）、図５、図６あるいは図７のワード線ＷＬａ（の一部）に相当することがある。
【００９３】
かくして、図４（Ｂ）、図５、図６あるいは図７の書き込みトランジスタ１０３ａ、パストランジスタ１０４ａ、容量素子１０５ａ、選択トランジスタ１０６ａ、選択トランジスタ１０７ａを形成できる。これらの断面には示されていないが、プリチャージトランジスタ１０８ａも同じ方法で形成できる。プリチャージトランジスタ１０８ａは、書き込みトランジスタ１０３ａのような構造あるいはパストランジスタ１０４ａのような構造を有してもよい。
【００９４】
この例では、容量素子１０５ａは金属−絶縁体−半導体（ＭＩＳ）構造を有するが、金属−絶縁体−金属（ＭＩＭ）構造を用いて形成してもよい。メモリノードＭＮの電位に関わらず十分な容量を得るためには、配線２１８ｂの電位は、「Ｈ」に容量素子１０５ａのしきい値を足したものより高くするとよい。しきい値が０Ｖ未満であれば、配線２１８ｂに与えられる電位は「Ｈ」とでき、しきい値が「Ｌ−Ｈ」未満であれば、配線２１８ｂに与えられる電位は「Ｌ」でよい。
【００９５】
配線２１８ｂに高い電位が不要であるので、そのような低いしきい値は、酸化物半導体からゲート絶縁体２１７への電子注入を防止する上で有利である。電子注入は、しきい値上昇が生じ、容量減少をもたらす。
【００９６】
低い電位を印加することによるホール注入に関しては、酸化物半導体、特に、インジウム（Ｉｎ）、ガリウム（Ｇａ）あるいは亜鉛（Ｚｎ）を有する酸化物半導体は、ホールの有効質量が重いのでホールを放出しない。したがって、ホール注入による劣化は無視できる。
【００９７】
上記の特性は容量素子には好ましいものであるが、トランジスタにはそうではない。容量素子１０５ａのしきい値が低いということは、構造が似ていることから、書き込みトランジスタ１０３ａのしきい値の低いことを意味する。したがって、（後述する）バックゲートあるいはワード線ＷＬａに低い電位を印加することが必要となる。
【００９８】
書き込みトランジスタ１０３ａにおいては、パターン化された絶縁体２１６ｂ／パターン化された絶縁体２１６ｃが配線２１８ａと配線２１５ｂ／配線２１５ｃの間に設けられている。したがって、配線２１８ａと配線２１５ｂ／配線２１５ｃの間の寄生容量が低減できる。
【００９９】
書き込みトランジスタ１０３ａは２つのゲート電極、すなわち、配線２０９と配線２１８ａを有する。配線２０９は書き込みトランジスタ１０３ａのしきい値を制御するためのバックゲートとして使用されてもよい。
【０１００】
配線２０９に、「Ｌ」より低い（固定された）電位を印加することで、書き込みトランジスタ１０３ａのしきい値を高めることができる。したがって、ワード線ＷＬａ（配線２１８ａ）に「Ｌ」が印加されているときのソースドレイン電流を１ｚＡ未満に低減できる。同様な効果は、バックゲート無しでも、ワード線ＷＬａに「Ｌ」より低い電位を印加することで得られる。
【０１０１】
他の配線や層間絶縁物が形成されてもよい。
【０１０２】
（実施の形態３）
本実施の形態ではプログラマブルスイッチを有する半導体装置（ＦＰＧＡ）の例を説明する。
【０１０３】
図１４はスイッチアレイ３０１、ロジックアレイ３０２、Ｉ／Ｏアレイ３０３を有するＦＰＧＡの例を示すブロック図である。
【０１０４】
それぞれのスイッチアレイ３０１はマトリクス状に配置された複数のルーティングスイッチ（ＳＷａ、ＳＷｂ、ＳＷｃ）を含む回路ブロックである。それぞれのルーティングスイッチは、複数のコンテキストを格納するため、図８に示すように複数のプログラマブルスイッチを含む。
【０１０５】
それぞれのロジックアレイ３０２は、列状に配置された複数のロジックブロックを有する。図１４の例では、それぞれのロジックアレイ３０２は、一列に配置された１０個のロジックブロック（ＬＢ００乃至ＬＢ０９）を有する。それぞれのロジックブロックはコンフィギュレーションデータを保持するメモリを有する。
【０１０６】
Ｉ／Ｏアレイ３０３は、ＦＰＧＡの両端に設けられ、それぞれ、列状に配置された１０個の入出力回路（Ｉ／Ｏ００乃至Ｉ／Ｏ０９およびＩ／Ｏ１０乃至Ｉ／Ｏ１９）を有する。
【０１０７】
ルーティングスイッチＳＷａはロジックブロック間の接続を制御する。例えば、「ＳＷａ０＊−００」は、ロジックブロックＬＢ００乃至ＬＢ０９のいずれかの出力とロジックブロックＬＢ００の入力が、このルーティングスイッチにより接続あるいは切断されることを意味する。
【０１０８】
ルーティングスイッチＳＷｂはロジックブロックの入力端子と入出力回路の間の接続を制御する。例えば、「ＳＷｂ０＊−００」は、入出力回路Ｉ／Ｏ００乃至Ｉ／Ｏ０９のいずれかとロジックブロックＬＢ００の入力が、このルーティングスイッチにより接続あるいは切断されることを意味する。
【０１０９】
ルーティングスイッチＳＷｃはロジックブロックの出力端子と入出力回路の間の接続を制御する。例えば、「ＳＷｃ０＊−００」は、入出力回路Ｉ／Ｏ００乃至Ｉ／Ｏ０９のいずれかとロジックブロックＬＢ００の出力が、このルーティングスイッチにより接続あるいは切断されることを意味する。
【０１１０】
一般的に、ロジックブロックは１以上のルックアップテーブル（ＬＵＴ）、１以上のフリップフロップ（ＦＦ）、１以上のマルチプレクサ（ＭＵＸ）を有する。図１５（Ａ）はロジックブロック３１１の構成例を描写するブロック図である。ロジックブロック３１１は、ルックアップテーブル３１２、フリップフロップ３１３、マルチプレクサ３１４を有する。
【０１１１】
ルックアップテーブル３１２をロジックゲートとして機能を特定させるための情報を含むコンフィギュレーションデータ３１８ａは、ルックアップテーブル３１２に入力される。換言すれば、ルックアップテーブル３１２から出力される信号のロジックレベル（例えば「１／０」あるいは「Ｈ／Ｌ」）は、コンフィギュレーションデータ３１８ａと入力端子３１６からルックアップテーブル３１２へ入力される信号のロジックレベルに応じて決定される。
【０１１２】
ルックアップテーブル３１２から出力される信号はフリップフロップ３１３に入力される。ロジックブロック３１１に含まれているフリップフロップ３１３から出力される信号は、他のロジックブロック３１１に含まれているフリップフロップ３１３に入力されることがある。フリップフロップ３１３はこれらの入力信号を保持する機能を有する。
【０１１３】
マルチプレクサ３１４の駆動を制御する情報を有するコンフィギュレーションデータ３１８ｂはマルチプレクサ３１４に入力される。マルチプレクサ３１４は、コンフィギュレーションデータ３１８ｂに応じて、ルックアップテーブル３１２あるいはフリップフロップ３１３から出力される信号のいずれかを選択する機能を有する。マルチプレクサ３１４によって選択された信号はロジックブロック３１１の出力端子３１７から出力される。
【０１１４】
図１５（Ｂ）は図１５（Ａ）のロジックブロック３１１の具体的な構成例を示す。図１５（Ｂ）のロジックブロック３１１は、ルックアップテーブル３１２、フリップフロップ３１３、マルチプレクサ３１４、ルックアップテーブル３１２のためのコンフィギュレーションデータ３１８ａを格納するコンフィギュレーションメモリ３１５ａ、マルチプレクサ３１４のためのコンフィギュレーションデータ３１８ｂを格納するコンフィギュレーションメモリ３１５ｂを有する。
【０１１５】
ルックアップテーブル３１２で実行される論理動作は、コンフィギュレーションメモリ３１５ａに格納されているコンフィギュレーションデータ３１８ａに応じて変わる。ルックアップテーブル３１２で実行される論理動作がコンフィギュレーションデータ３１８ａによって決定されるとき、ルックアップテーブル３１２は、入力端子３１６に供給される複数の入力信号に対応した出力信号を生成する。フリップフロップ３１３は、ルックアップテーブル３１２で生成された出力信号を保持し、クロック信号ＣＫに同期してルックアップテーブル３１２の出力信号に対応する出力信号を出力する。
【０１１６】
ルックアップテーブル３１２およびフリップフロップ３１３から出力される信号はマルチプレクサ３１４に入力される。マルチプレクサ３１４は、コンフィギュレーションメモリ３１５ｂに格納されているコンフィギュレーションデータ３１８ｂに応じてこれら２つの出力信号のうちの一つを選択し、出力する機能を有する。マルチプレクサ３１４から出力される信号は出力端子３１７に供給される。
【０１１７】
図１５（Ｃ）は、図１５（Ａ）のロジックブロック３１１の別の具体的な構成例を示す。図１５（Ｃ）のロジックブロック３１１は、図１５（Ｂ）のロジックブロック３１１とマルチプレクサ３１９とマルチプレクサ３１９のためのコンフィギュレーションデータを格納するコンフィギュレーションメモリ３１５ｃを有する点で異なる。
【０１１８】
ルックアップテーブル３１２から出力される信号と他のロジックブロック３１１にあるフリップフロップ３１３から出力される信号がマルチプレクサ３１９に入力される。他のロジックブロック３１１にあるフリップフロップ３１３から出力される信号は入力端子３２０から入力される。マルチプレクサ３１９は、コンフィギュレーションメモリ３１５ｃに格納されているコンフィギュレーションデータに応じてこれら２つの出力信号のうちの一つを選択し、出力する機能を有する。
【０１１９】
図１５（Ｃ）のロジックブロック３１１では、フリップフロップ３１３は、マルチプレクサ３１９から出力された信号を保持し、クロック信号ＣＫに同期してマルチプレクサ３１９から出力された信号に対応する出力信号を出力する。
【０１２０】
なお、図１５（Ｂ）あるいは図１５（Ｃ）で示されるロジックブロック３１１では、コンフィギュレーションデータによって使用可能なフリップフロップ３１３の型が決定される。特に、フリップフロップ３１３は、コンフィギュレーションデータにもよるが、Ｄ−フリップフロップ、Ｔ−フリップフロップ、ＪＫ−フリップフロップ、ＲＳ−フリップフロップのいずれかである。
【実施例】
【０１２１】
実施の形態３で示されたＦＰＧＡのパフォーマンスを、ＳＰＩＣＥシミュレータとしてシノプシスＸＡ（登録商標）を使用して、シミュレーションした。このシミュレーションでは、２種類のプログラマブルスイッチを検証した。１つは図１（Ｂ）で示されるもので、他の１つは図６（Ａ）で示されるものである。
【０１２２】
ＦＰＧＡは、２０個のロジックブロックと２０個の入出力端子（Ｉ／Ｏ［０］乃至Ｉ／Ｏ［１９］）、２つのコンテキスト（Ｃｏｎｔｅｘｔ［１］とＣｏｎｔｅｘｔ［２］を有するものとした。また、さまざまなタスク（Ｔａｓｋ［０］、Ｔａｓｋ［１］等）を実行できるものとした。シミュレーションでは、グローバルクロック周波数が２．５Ｖで３３ＭＨｚとした。
【０１２３】
シミュレーションでは、初期化の後、ＦＰＧＡの一部をシフタ回路に対応した構成に設定した。すなわち、シフタ回路を実行するためのＣｏｎｔｅｘｔ［０］に対応したコンフィギュレーションデータをＦＰＧＡに書き込み、Ｔａｓｋ［０］として動作させた。シフタ回路は図１６（Ａ）に示される。Ｔａｓｋ［０］の間に、ＦＰＧＡの一部をリングオシレータの構成に設定した。すなわち、リングオシレータを実行するＣｏｎｔｅｘｔ［１］に対応したコンフィギュレーションデータをＦＰＧＡに書き込み、Ｔａｓｋ［０］の後で、Ｔａｓｋ［１］として動作させた。（７段）リングオシレータは図１６（Ｂ）に示される。リングオシレータの構成への設定をＴａｓｋ［０］を中断することなく実行した。
【０１２４】
図１５（Ｂ）に示されるロジックブロックを想定すれば、シフタ回路に対応した構成に設定するために、ルックアップテーブル３１２は特定の入力信号のみに応じて信号をフリップフロップ３１３に出力するように設定し、マルチプレクサ３１４はフリップフロップの出力のみを通過させるように設定した。
【０１２５】
同様に、リングオシレータに対応した構成に設定するために、ルックアップテーブル３１２は特定の入力信号のみに応じて反転信号をマルチプレクサ３１４に出力するように設定し、マルチプレクサ３１４はルックアップテーブル３１２の出力のみを通過させるように設定した。
【０１２６】
Ｃｏｎｔｅｘｔ［１］に対応したコンフィギュレーションデータは、Ｔａｓｋ［０］の間にそれぞれのルーティングスイッチの対応するプログラマブルスイッチに書き込んだ。
【０１２７】
Ｔａｓｋ［０］の間、シフタ回路は、Ｉ／Ｏ００からの入力信号に応じて、図１７（Ａ）で示されるパルス信号、あるいは図１７（Ｂ）で示されるステップ信号を出力した。したがって、リングオシレータへの再設定において、プログラマブルスイッチのソースノードの電位は、シフタ回路の出力に応じて変わった。
【０１２８】
図１７（Ａ）および図１７（Ｂ）に示されるように、再設定はＴ０に開始された。Ｔ０では、個々のロジックブロックの出力電位は、シフタ回路がパルス信号を出力したときは、「Ｌ」であり、シフタ回路がステップ信号を出力したときは、「Ｈ」であった。
【０１２９】
図１８（Ａ）と図１８（Ｃ）は、図１（Ｂ）に示されるプログラマブルスイッチを使用した場合の、Ｉ／Ｏ０６のシミュレーションされた出力、すなわち、Ｔａｓｋ［１］の間のリングオシレータの発振波形である。図１８（Ａ）は、図１７（Ａ）のＴ０、すなわち、ソースノードの電位が「Ｌ」であるときに設定されたものであり、図１８（Ｃ）は、図１７（Ｂ）のＴ０、すなわち、ソースノードの電位が「Ｈ」でのものである。
【０１３０】
図１８（Ａ）と図１８（Ｃ）より、発振周波数は、それぞれ２１ＭＨｚと１３ＭＨｚであった。これはオン抵抗の差によって生じた。このように何らかの要因によって信号の応答速度が変動する場合、回路の動作は遅い信号に基づいて設定される。この場合は、１３ＭＨｚを前提に回路の動作が設定される。
【０１３１】
図１８（Ｂ）と図１８（Ｄ）は、図１（Ｂ）に示されるルーティングスイッチ１００を使用した場合の、Ｔａｓｋ［１］の間の対応するプログラマブルスイッチのメモリノードのシミュレーションされた出力である。図１８（Ｂ）と図１８（Ｄ）は、それぞれ、図１８（Ａ）と図１８（Ｃ）に対応する。見てわかるように、ブースティング効果と逆ブースティング効果によって両者に差が生じ、ソースノードの電位がＬという条件で設定されたものの電位（図１８（Ｂ））は他方より高い。
【０１３２】
図１９は、図６（Ａ）で示されるプログラマブルスイッチを有するＦＰＧＡのパフォーマンスを示す。図１９（Ａ）と図１９（Ｃ）は、Ｔａｓｋ［１］の間のＩ／Ｏ０６のシミュレーションされた出力である。図１９（Ａ）は、パルス信号で設定されたものであり、図１９（Ｃ）は、ステップ信号でのものである。いずれの場合も発振周波数は１８ＭＨｚであった。
【０１３３】
これは、図１８（Ａ）のものよりは低いものの、図１８（Ｃ）のものよりは高い。図１（Ｂ）の回路では、図１８（Ｃ）に示されるリングオシレータの発振周波数（１３ＭＨｚ）より定まる応答速度を前提として、回路の動作が設定されるのに対し、図６（Ａ）の回路では、図１９（Ａ）と図１９（Ｃ）に示されるリングオシレータの発振周波数（１８ＭＨｚ）より定まる応答速度を前提として、回路の動作が設定される。したがって、より高速な動作が実現できる。
【０１３４】
図１９（Ｂ）と図１９（Ｄ）は、Ｔａｓｋ［１］の間の、対応するプログラマブルスイッチのメモリノードのシミュレーションされた出力である。図１９（Ｂ）と図１９（Ｄ）は、それぞれ、図１９（Ａ）と図１９（Ｃ）に対応し、実質的な差異はなかった。
【０１３５】
図１（Ｂ）と図６（Ａ）を比較すれば、後者は、追加のトランジスタ、選択トランジスタ１０７ａを必要とするので、動作速度や信号の強度で不利である。出力信号の強度と伝送遅延を改善するためのコンテキスト信号のオーバードライブをシミュレーションした。
【０１３６】
図２０は、Ｔａｓｋ［１］の間の７段リングオシレータで、コンテキスト信号がオーバードライブされたときに、図１（Ｂ）のプログラマブルスイッチと図６（Ａ）のプログラマブルスイッチに関して周期がどのように変わるかシミュレーションした結果を示す。見てわかるように、図６（Ａ）のプログラマブルスイッチ（曲線Ｘ）は、コンフィギュレーションが「Ｌ」でおこなわれた図１（Ｂ）のプログラマブルスイッチ（曲線Ｙ）より長い周期となるが、コンフィギュレーションが「Ｈ」でおこなわれた図１（Ｂ）のプログラマブルスイッチ（曲線Ｚ）よりはるかに短い周期となる。
【０１３７】
次に、３つの異なるプログラムをＦＰＧＡからロードする場合についてシミュレーションをおこなった。すなわち、Ｉ／Ｏ［０］からＩ／Ｏ［１９］に、信号をシフトさせる増加シフタ（Ｔａｓｋ［０］）と、Ｉ／Ｏ［１９］からＩ／Ｏ［０］に、信号をシフトさせる減少シフタ（Ｔａｓｋ［１］）と、Ｉ／Ｏ［ｉ］の周波数をＩ／Ｏ［ｉ−１］の半分に変換する分周回路（Ｔａｓｋ［２］）である。
【０１３８】
最初に、第１の構成に対応したタスクが、実行される。このとき、Ｃｏｎｔｅｘｔ［０］にはＴａｓｋ［０］が、Ｃｏｎｔｅｘｔ［１］にはＴａｓｋ［１］が保存されていた。Ｃｏｎｔｅｘｔ［０］が実行された後、Ｃｏｎｔｅｘｔ［１］が続いた。その後、Ｃｏｎｔｅｘｔ［１］がＴａｓｋ［２］を保持するように再構成されている間に、Ｃｏｎｔｅｘｔ［０］をもう一度実行した。再構成が終わると、最後にＣｏｎｔｅｘｔ［１］を実行した。シミュレーションの結果を図２２に示す。図から、コンテキストの切り替えが明瞭におこなえること、および、Ｃｏｎｔｅｘｔ［０］がＦＰＧＡで実行されている間に、Ｃｏｎｔｅｘｔ［１］が、最初のシフタの構成から分周回路の構成にどのように変化することがわかる。
【０１３９】
次に、図４（Ｂ）に示されるプログラマブルスイッチ１０１ａを含むＦＰＧＡと、ＳＲＡＭベースのＦＰＧＡとの特性の比較をおこなった。市販されているリコンフィギャラブルなＦＰＧＡのほとんどはＳＲＡＭベースである。評価はそれぞれのタイプのルーティングスイッチで５３段リングオシレータを構成することでおこなった。ここで、容量素子１０５ａの容量は４ｆＦとした。
【０１４０】
図２３は、オーバードライブ信号がコンテキスト線ＣＸａに印加されている場合の、それぞれのルーティングスイッチでの発振周波数の電圧依存性である。図から明らかなように、図４（Ｂ）に示されるプログラマブルスイッチ１０１ａを含むルーティングスイッチ（Ｎｅｗ  ＲＳ）は、高い電圧域では、ＳＲＡＭベースのルーティングスイッチ（ＳＲＡＭ  ＲＳ）に劣るものの、１．８Ｖ未満では、優れていることがわかった。例えば、電圧１．５Ｖでは、ＳＲＡＭベースのルーティングスイッチより３７％高速となった。
【０１４１】
次に消費電力について検討した。ＳＲＡＭベースのＦＰＧＡのコンフィギュレーションメモリのスタティック消費電力は、微細化とともに増加し、全消費電力の３８％を占めていると推定されている。ＳＰＩＣＥを用いたシミュレーションでは、図４（Ｂ）に示されるプログラマブルスイッチ１０１ａを含むルーティングスイッチを再構成する際の全エネルギーは３３４ｆＪであると計算された。うち、１８７ｆＪはデータを書き換えるために用いられ、１４７ｆＪが、ソースノードＳＮの電位を電位”Ｌ”（接地電位）とするために用いられる。
【０１４２】
上記でシミュレーションに用いたものと同等な半導体装置の構造を以下に説明する。図２１は半導体装置の配線、半導体膜、コンタクトホールのレイアウトを示す。なお、各図の右端の十字（＋）はマーカーとして機能する。したがって、２以上の図を、それらの全ての十字が完全に重なるように重ねると、異なる層の間の正確な関係が理解できよう。
【０１４３】
半導体装置は、単結晶シリコンウェハー上の酸化シリコン上の単結晶シリコン膜（厚さ５０ｎｍ）、単結晶シリコン膜を酸化して形成された第１のゲート絶縁物（厚さ１５ｎｍ）、第１のゲート絶縁物上の第１の配線（厚さ３０ｎｍの窒化タンタルとその上の厚さ１７０ｎｍのＷの多層構造）、第１の層間絶縁物（厚さ５０ｎｍのＳｉＯＮと厚さ２８０ｎｍのＳｉＮＯと厚さ３００ｎｍのＳｉＯｘの多層構造）、第２の配線（厚さ１５０ｎｍのＷ）、第２の層間絶縁物（厚さ４００ｎｍ乃至５００ｎｍのＴＥＯＳ−ＳｉＯｘ）、第３の配線（厚さ１５０ｎｍのＷ）、第３の層間絶縁物（厚さ５０ｎｍのＡｌＯｘと厚さ３００ｎｍのＳｉＯｘの多層構造）、厚さ１５ｎｍのＩｎ−Ｇａ−Ｚｎ酸化物膜、第４の配線（厚さ１００ｎｍのＷ）、第２のゲート絶縁物（厚さ１５ｎｍのＳｉＯＮ）、第５の配線（厚さ３０ｎｍの窒化タンタルとその上の厚さ１３５ｎｍのＷの多層構造）、第４の層間絶縁物（厚さ７０ｎｍのＡｌＯｘと厚さ３００ｎｍのＳｉＯＮの多層構造）、第６の配線（厚さ５０ｎｍのＴｉと厚さ２００ｎｍのＡｌと厚さ５０ｎｍのＴｉの多層構造）、第５の層間絶縁物（厚さ１５００ｎｍのポリイミド）、第７の配線（厚さ５０ｎｍのＴｉと厚さ３００ｎｍのＡｌと厚さ５０ｎｍのＴｉの多層構造）、第６の層間絶縁物（厚さ１５００ｎｍのポリイミド）を有した。
【０１４４】
第１の配線のいくつかはシリコンベースのトランジスタのゲート電極として機能した。第２の配線のいくつかはシリコンベースのトランジスタのソースあるいはドレイン電極として機能した。第３の配線のいくつかは酸化物半導体ベースのトランジスタのバックゲート電極として機能した。第４の配線のいくつかは酸化物半導体ベースのトランジスタのソースあるいはドレイン電極として機能した。第５の配線のいくつかは酸化物半導体ベースのトランジスタのゲート電極として機能した。
【０１４５】
第１の層間絶縁物、第２の層間絶縁物、第３の層間絶縁物、第２のゲート絶縁物、第４の層間絶縁物、第５の層間絶縁物には、異なる層の間の接続のためのコンタクトホールが形成された。
【０１４６】
図２１（Ａ）は単結晶シリコン膜と第１の配線２０４のレイアウトを示す。単結晶シリコン膜は、ｎ型領域２０５を有した。なお、第１の配線２０４と重なった単結晶シリコン膜の部分は、弱くｐ型にドープされた。
【０１４７】
図２１（Ｂ）は第２の配線（ハッチングされた部分）と、第１の層間絶縁物に設けられた、ｎ型領域２０５へのコンタクトホールのレイアウトを示す。コンタクトホールは、  ハッチングされた部分中の長方形として示されている。
【０１４８】
図２１（Ｃ）は第３の配線（ハッチングされた部分）と、第２の層間絶縁物に設けられた、第２の配線へのコンタクトホールのレイアウトを示す。コンタクトホールは、  ハッチングされた部分中の長方形として示されている。
【０１４９】
図２１（Ｄ）はＩｎ−Ｇａ−Ｚｎ酸化物膜のレイアウトを示す。
【０１５０】
図２１（Ｅ）は第４の配線（ハッチングされた部分）と、第３の層間絶縁物に設けられた、第３の配線へのコンタクトホールのレイアウトを示す。コンタクトホールは、  ハッチングされた部分中の長方形として示されている。
【０１５１】
図２１（Ｆ）は第５の配線（ハッチングされた部分）のレイアウトを示す。
【０１５２】
図２１（Ｇ）は第６の配線（ハッチングされた部分）と、第２のゲート絶縁物および第４の層間絶縁物に設けられた、第４の配線および第５の配線へのコンタクトホールのレイアウトを示す。コンタクトホールは、ハッチングされた部分中の長方形として示されている。
【０１５３】
図２１（Ｈ）は第７の配線（ハッチングされた部分）と、第５の層間絶縁物に設けられた、第６の配線へのコンタクトホールのレイアウトを示す。コンタクトホールは、ハッチングされた部分中の長方形として示されている。
【０１５４】
なお、酸化物半導体トランジスタは、１．０μｍの、単結晶シリコントランジスタは０．５μｍの設計ルールを用いた。上記のレイアウトでは、同様な設計ルールを用いたＳＲＡＭベースのルーティングスイッチより、面積が３８％減少する。
【符号の説明】
【０１５５】
１００  ルーティングスイッチ
１０１  プログラマブルスイッチ
１０１ａ  プログラマブルスイッチ
１０１ｂ  プログラマブルスイッチ
１０１ｃ  プログラマブルスイッチ
１０２ａ  ロジックブロック
１０２ｂ  ロジックブロック
１０３ａ  書き込みトランジスタ
１０３ｂ  書き込みトランジスタ
１０３ｃ  書き込みトランジスタ
１０４ａ  パストランジスタ
１０４ｂ  パストランジスタ
１０４ｃ  パストランジスタ
１０５ａ  容量素子
１０５ｂ  容量素子
１０５ｃ  容量素子
１０６ａ  選択トランジスタ
１０６ｂ  選択トランジスタ
１０６ｃ  選択トランジスタ
１０７ａ  選択トランジスタ
１０８ａ  プリチャージトランジスタ
１０９ａ  選択トランジスタ
１１０ａ  選択トランジスタ
２００  半導体基板
２０１  素子分離領域
２０２  ｐ型領域
２０３  ゲート絶縁物
２０４  配線
２０４ａ  配線
２０４ｂ  配線
２０５  ｎ型領域
２０５ａ  ｎ型領域
２０５ｂ  ｎ型領域
２０５ｃ  ｎ型領域
２０５ｄ  ｎ型領域
２０６  層間絶縁物
２０７ａ  配線
２０７ｂ  配線
２０８  層間絶縁物
２０９  配線
２１０  層間絶縁物
２１１ａ  酸化物半導体膜
２１１ｂ  酸化物半導体膜
２１２ａ  コンタクトホール
２１２ｂ  コンタクトホール
２１３  導電層
２１４  絶縁体
２１５ａ  配線
２１５ｂ  配線
２１５ｃ  配線
２１６ａ  パターン化された絶縁体
２１６ｂ  パターン化された絶縁体
２１６ｃ  パターン化された絶縁体
２１７  ゲート絶縁体
２１８ａ  配線
２１８ｂ  配線
３０１  スイッチアレイ
３０２  ロジックアレイ
３０３  Ｉ／Ｏアレイ
３１１  ロジックブロック
３１２  ルックアップテーブル
３１３  フリップフロップ
３１４  マルチプレクサ
３１５ａ  コンフィギュレーションメモリ
３１５ｂ  コンフィギュレーションメモリ
３１５ｃ  コンフィギュレーションメモリ
３１６  入力端子
３１７  出力端子
３１８ａ  コンフィギュレーションデータ
３１８ｂ  コンフィギュレーションデータ
３１９  マルチプレクサ
３２０  入力端子
ＢＬ  ビット線
ＣＸ  コンテキスト線
ＣＸａ  コンテキスト線
ＣＸｂ  コンテキスト線
ＣＸｃ  コンテキスト線
ＣＹａ  コンテキスト線
ＩＮ  ノード
Ｉ／Ｏ  入出力回路
ＬＢ  ロジックブロック
ＭＮ  メモリノード
ＯＵＴ  ノード
ＳＮ  ソースノード
ＳＷａ  ルーティングスイッチ
ＳＷｂ  ルーティングスイッチ
ＳＷｃ  ルーティングスイッチ
ＷＬ  ワード線
ＷＬａ  ワード線
ＷＬｂ  ワード線
ＷＬｃ  ワード線
【図１】
0006480248.tif 000002
【図２】
0006480248.tif 000003
【図３】
0006480248.tif 000004
【図４】
0006480248.tif 000005
【図５】
0006480248.tif 000006
【図６】
0006480248.tif 000007
【図７】
0006480248.tif 000008
【図８】
0006480248.tif 000009
【図９】
0006480248.tif 000010
【図１０】
0006480248.tif 000011
【図１１】
0006480248.tif 000012
【図１２】
0006480248.tif 000013
【図１３】
0006480248.tif 000014
【図１４】
0006480248.tif 000015
【図１５】
0006480248.tif 000016
【図１６】
0006480248.tif 000017
【図１７】
0006480248.tif 000018
【図１８】
0006480248.tif 000019
【図１９】
0006480248.tif 000020
【図２０】
0006480248.tif 000021
【図２１】
0006480248.tif 000022
【図２２】
0006480248.tif 000023
【図２３】
0006480248.tif 000024