(57)【要約】  本発明のコンフィギュラブル回路は、複数のロジックブロック４と複数のロジックブロック４の接続をプログラム可能なプログラマブルバスとを有する。プログラマブルバスは、複数のロジックブロック４に対応して信号伝送範囲毎に設けられた複数の配線１１＿ｘと、隣接する信号伝送範囲の配線同士を直接に接続するか遮断するかをプログラム可能な配線直結スイッチ７１１＿ｘと、複数の配線のうちいずれか一つの配線との接続がプログラム可能で、接続される配線の信号をロジックブロック４に供給する入力選択器３０＿ｘと、信号伝送範囲毎に設けられ、複数の配線のそれぞれについて隣接する信号伝送範囲に対応する配線とバッファを介して接続するか遮断するかをプログラム可能なプログラマブルスイッチ４０＿ｘとを含み、複数のロジックブロック４のうち少なくとも一つに対してプログラマブルスイッチ４０＿ｘが複数設けられている。
2008111406.tif 000002
【特許請求の範囲】
【請求項１】
複数のロジックブロックと該複数のロジックブロックの接続をプログラム可能なプログラマブルバスとを有するコンフィギュラブル回路であって、
前記プログラマブルバスは、
前記複数のロジックブロックに対応して区分けされた信号伝送範囲毎に設けられ、隣接するロジックブロック同士を接続するための複数の配線と、
隣接する前記信号伝送範囲の配線同士を直接に接続するか遮断するかをプログラム可能な配線直結スイッチと、
前記複数のロジックブロックのそれぞれに対応して設けられ、前記複数の配線のうちいずれか一つの配線との接続がプログラム可能で、接続される配線の信号を前記ロジックブロックに供給する入力選択器と、
前記信号伝送範囲毎に設けられ、前記複数の配線のそれぞれについて隣接する前記信号伝送範囲に対応する配線とバッファを介して接続するか遮断するかをプログラム可能なプログラマブルスイッチとを含み、
前記複数のロジックブロックのうち少なくとも一つに対して前記プログラマブルスイッチが複数設けられている、ことを特徴とするコンフィギュラブル回路。
【請求項２】
請求の範囲１に記載のコンフィギュラブル回路であって、
前記プログラマブルスイッチは、前記ロジックブロックの出力と、隣接する前記信号伝送範囲の複数の配線のうちいずれか一つの配線とを接続することをプログラム可能に構成されていることを特徴とするコンフィギュラブル回路。
【請求項３】
請求の範囲１または２に記載のコンフィギュラブル回路であって、
前記複数の配線のうちの一つ、または前記ロジックブロックに接続される前記プログラマブルスイッチの数は、信号伝送方向に前記信号伝送範囲を越えて直結される前記配線の数に対応していることを特徴とするコンフィギュラブル回路。
【請求項４】
請求の範囲１から３のいずれか１項に記載のコンフィギュラブル回路であって、
複数の前記プログラマブルスイッチは、前記複数の配線のうち共通の配線に接続される端子を複数有することを特徴とするコンフィギュラブル回路。
【請求項５】
請求の範囲１から４のいずれか１項に記載のコンフィギュラブル回路であって、
前記入力選択器は、前記複数の配線のそれぞれに接続される配線直結スイッチが設けられ、前記複数の配線のいずれか一つの配線が複数の前記配線直結スイッチのうちいずれか一つを介して前記ロジックブロックに接続されることを特徴とするコンフィギュラブル回路。
【請求項６】
請求の範囲１から５のいずれか１項に記載のコンフィギュラブル回路であって、
前記プログラマブルスイッチは、複数の端子からなる第１の端子群のうち選択された一つの端子の信号を出力する入力選択器と、該入力選択器の出力信号をバッファリングするバッファと、該バッファの出力信号を複数の端子からなる第２の端子群のうちいずれか１つの端子に出力するか遮断するかをプログラム可能な出力選択器とを備え、
前記入力選択器は、前記第１の端子群のそれぞれの端子に接続される配線直結スイッチが設けられ、前記第１の端子群のいずれか一つの端子を複数の前記配線直結スイッチのうちいずれか一つを介して前記バッファに接続し、
前記出力選択器は、前記第２の端子群のそれぞれの端子に接続される配線直結スイッチが設けられ、前記バッファに対して複数の前記配線直結スイッチのいずれか一つを介して前記第２の端子群のうちのいずれか一つの端子と接続するか、または、いずれとも接続を遮断し、
前記第２の端子群が前記第１の端子群に含まれる、ことを特徴とするコンフィギュラブル回路。
【請求項７】
請求の範囲１から６のいずれか１項に記載のコンフィギュラブル回路であって、
前記複数のロジックブロックは同一の回路で、かつ、プログラマブルに論理機能が設定可能であり、アレイ状に配列されていることを特徴とするコンフィギュラブル回路。
【請求項８】
請求の範囲１から７のいずれか１項に記載のコンフィギュラブル回路であって、
前記複数のロジックブロックは互いに異なる回路で、かつ、それぞれ機能が固定された専用回路であることを特徴とするコンフィギュラブル回路。
【請求項９】
請求の範囲８に記載のコンフィギュラブル回路であって、
前記複数のロジックブロックの一部は、半導体集積回路の周辺部に配置された入出力回路のブロックであることを特徴とするコンフィギュラブル回路。
【請求項１０】
請求の範囲１から９のいずれか１項に記載のコンフィギュラブル回路であって、
前記配線直結スイッチは、プログラムされた抵抗状態を不揮発に記憶し、かつ、同じ占有面積のＭＯＳトランジスタに比べて導通状態の抵抗が小さい、ことを特徴とするコンフィギュラブル回路。
【請求項１１】
複数のロジックブロックと、該複数のロジックブロックに対応して区分けされた信号伝送範囲毎に設けられた第１の配線と、隣接する信号伝送範囲の前記第１の配線同士の接続または遮断をプログラム可能な配線直結スイッチとを含むコンフィギュラブル回路のコンフィギュレーション方法であって、
隣接する前記第１の配線を前記配線直結スイッチを介して接続して第２の配線を形成し、
前記第１の配線の駆動に適した小駆動力バッファを配線直結スイッチによってプログラマブルに複数並列に接続することで、前記第２の配線の駆動に適した大駆動力バッファを形成する、ことを特徴とするコンフィギュレーション方法。
【請求項１２】
請求の範囲１１に記載のコンフィギュレーション方法であって、
複数の前記小駆動力バッファへの入力が、該複数の前記小駆動力バッファが設けられた信号伝送範囲以外の信号伝送範囲における前記第１の配線からの出力であることを特徴とするコンフィギュレーション方法。
【請求項１３】
請求の範囲１１に記載のコンフィギュレーション方法であって、
複数の前記小駆動力バッファへの入力が前記ロジックブロックからの出力であることを特徴とするコンフィギュレーション方法。
【請求項１４】
請求の範囲１１から１３のいずれか１項に記載のコンフィギュレーション方法であって、
前記配線直結スイッチは、プログラムされた抵抗状態を不揮発に記憶し、かつ、同じ占有面積のＭＯＳトランジスタに比べて導通状態の抵抗が小さい、ことを特徴とするコンフィギュレーション方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のロジックブロックの接続をプログラム可能なコンフィギュラブル回路およびコンフィギュレーション方法に関する。
【背景技術】
【０００２】
ＦＰＧＡ（Field  Programmable  Gate  Array）やＰＬＤ（Programmable  Logic  Device）など、複数のロジックブロックをプログラマブルな配線構造で繋いだコンフィギュラブル回路は広く使われている。【０００３】
図１は関連するＦＰＧＡの一構成例を示すブロック図である。ＦＰＧＡはプログラマブルセル201＿x（xは整数）の配列から成る。通常、配列は２次元であるが図１ではその一部として一次元配列のみの場合を示している。【０００４】
各プログラマブルセルは、例えば、プログラマブルセル201＿1に示すように、プログラマブルロジックブロック4と、配線群10と、プログラマブルスイッチ2x＿y（x,  yは整数）と、入力選択器3＿x（xは整数）とを含む。プログラマブルセル201＿1では、図１に示すように、プログラマブルスイッチ21＿1,  21＿2,  22＿2、および入力選択器3＿1,  3＿2を含む。プログラマブルロジックブロック4は複数の入力端子（図１に示すAとB）と出力端子Cを有し、コンフィギュレーションメモリ（不図示）に書き込まれたデータ（コンフィギュレーションデータ）にもとづいて多様な論理機能を実現する。【０００５】
配線群10は、異なるプログラマブルセルの間でデータを伝送するためのものである。プログラマブルスイッチ2x＿yは、配線1x＿yやプログラマブルロジックブロック4の出力端子Cを隣接する配線に接続したり、隣接する配線間を遮断したりする（x,  yは整数）。入力選択器3＿x（xは整数）は配線群10のうち一つの配線で伝送される信号を選択し、選択した信号をプログラマブルロジックブロックの入力端子(図１に示すA,  B)に供給する。【０００６】
図２は関連するプログラマブルスイッチ2x＿y（x,  yは整数）の一構成例を示すブロック図である。このスイッチはコンフィギュレーションデータに応じて、以下の３つの機能のうちいずれかの機能を実行する。
(1)端子T0,Tのいずれかに入力される信号を選択器3＿4で選択し、トライステートバッファ5＿2を介して端子T1に出力する。
(2)端子T1,Tのいずれかに入力される信号を選択器3＿3で選択し、トライステートバッファ5＿1を介して端子T0に出力する。
(3)端子T0,T1間を遮断する。【０００７】
一般に、ＦＰＧＡでは配線群10は多数の種類の配線で構成される。図１では、配線群10が、短距離配線群11と長距離配線群12から成る例を示している。短距離配線群11は、プログラマブルセルの幅一つ分の長さで、隣り合うプログラマブルセル間の信号伝送に適する。長距離配線群12はプログラマブルセルの幅２つ分の長さで、２セル以上離れたプログラマブルセル間の信号伝送に適する。【０００８】
実際、「短距離配線の遅延＜長距離配線の遅延」が成り立つため、隣接セル同士の接続では短距離配線を使用したほうが速い信号伝送ができる。他方、「短距離配線の遅延×２＞長距離配線の遅延」が成り立つため、２セル以上離れたセルの接続では、短距離配線を接続して使うより長距離配線を使用したほうが信号伝送は速い。【０００９】
このように、高速な信号伝送を実現するためには複数の種類の配線を用意しなければならない。図１では、簡単のため２種類の配線しか示していないが、実際にははるかに多種類の配線を必要とする。このため、配線数が多くなりプログラマブルセルの面積が大きくなる。【００１０】
また、配線の数だけプログラマブルスイッチ2x＿yが必要なため、それに占められる面積も大きくなる。特に、長距離配線の場合、それに付随するプログラマブルスイッチ2x＿y内のトライステートバッファ（図２に示す符号5＿1,  5＿2）は大駆動力が必要なため、大きな面積を占める。【００１１】
最近、高抵抗状態と低抵抗状態をプログラマブルに設定でき、かつ設定した状態を不揮発に記憶し、同一占有面積のMOSトランジスタに比べてオン抵抗が大幅に低いスイッチ素子（以下、記憶型低抵抗スイッチ素子と称する）が開発されている。その一例が、特開２００５−１０１５３５号公報に開示されている。図３にそのスイッチ素子の構成例を示す。【００１２】
図３に示すように、記憶型低抵抗スイッチ素子は、イオン化されにくい金属電極60、イオン化されやすい金属電極62、および電解質61を有する構成である。イオン化されにくい金属電極60とイオン化されやすい金属電極61との間への電圧印加方法に応じて、両金属電極間が接続されたり、遮断されたりする。接続時の抵抗は同じ占有面積のMOSトランジスタに比べて大幅に低い（一桁以上低い）ため、小さな面積で高性能のスイッチを実現できる。しかも、一度形成された接続／遮断状態は一定期間保持されるため、記憶保持のためのメモリを別途用意する必要がなく、記憶型低抵抗スイッチ素子を用いない回路に比べて小面積化が可能である。【００１３】
なお、記憶型低抵抗スイッチ素子としては、ここで挙げた例とは別の種類のものもある。別の種類のスイッチ素子の一例が特開２００５−３１７９７８号公報に開示されている。
【発明の開示】
【００１４】
上述したように、記憶型低抵抗スイッチ素子の優れた性能のため、スイッチを大量に使うコンフィギュラブル回路に記憶型低抵抗スイッチ素子を適用することが期待されている。しかし、図１に示したコンフィギュラブル回路で、MOSトランジスタで作製していたスイッチ（例えば、選択器、トライステートバッファ）を、記憶型低抵抗スイッチ素子で作製しただけでは回路全体の面積はあまり小さくならない。それは、図１のＦＰＧＡで説明したように、一般にコンフィギュラブル回路では多数の配線と大きなバッファが存在するため、それによって大きな面積を占有してしまい、スイッチ部分を小さくしただけでは回路全体の面積を縮小する効果が充分ではないからである。
【００１５】
本発明の目的は、回路面積をより小さくしたコンフィギュラブル回路およびコンフィギュレーション方法を提供することである。
【００１６】
本発明のコンフィギュラブル回路は、複数のロジックブロックと複数のロジックブロックの接続をプログラム可能なプログラマブルバスとを有するコンフィギュラブル回路であって、プログラマブルバスは、複数のロジックブロックに対応して区分けされた信号伝送範囲毎に設けられ、隣接するロジックブロック同士を接続するための複数の配線と、隣接する信号伝送範囲の配線同士を直接に接続するか遮断するかをプログラム可能な配線直結スイッチと、複数のロジックブロックのそれぞれに対応して設けられ、複数の配線のうちいずれか一つの配線との接続がプログラム可能で、接続される配線の信号をロジックブロックに供給する入力選択器と、信号伝送範囲毎に設けられ、複数の配線のそれぞれについて隣接する信号伝送範囲に対応する配線とバッファを介して接続するか遮断するかをプログラム可能なプログラマブルスイッチとを含み、複数のロジックブロックのうち少なくとも一つに対してプログラマブルスイッチが複数設けられている。
【００１７】
本発明によれば、関連するコンフィギュラブル回路と比べて、配線数が少なく、バッファの占める面積が小さくなるため、回路全体の面積を小さくすることができる。
【図面の簡単な説明】
【００１８】
【図１】図１は関連するＦＰＧＡの一構成例を示すブロック図である。
【図２】図２は関連するプログラマブルスイッチの一構成例を示すブロック図である。
【図３】図３は記憶型低抵抗スイッチ素子の一構成例を示す断面模式図である。
【図４】図４は第１の実施形態のコンフィギュラブル回路の一構成例を示すブロック図である。
【図５】図５は図４に示すプログラマブルスイッチの構成例を示すブロック図である。
【図６】図６は図５に示す入力選択器の構成例を示す回路図である。
【図７】図７は図５に示す出力選択器の構成例を示す回路図である。
【図８】図８は第１の実施形態のコンフィギュラブル回路の第１の動作例を示す図である。
【図９】図９は第１の実施形態のコンフィギュラブル回路の第２の動作例を示す図である。
【図１０】図１０は第１の実施形態のコンフィギュラブル回路の第３の動作例を示す図である。
【図１１】図１１は第１の実施形態のコンフィギュラブル回路における実施例１のプログラマブルセルの構成例を示すブロック図である。
【図１２】図１２は第１の実施形態のコンフィギュラブル回路における実施例２のプログラマブルセルの構成例を示すブロック図である。
【図１３】図１３は図１２に示したプログラマブルセルの使用例を示すレイアウト図である。
【図１４】図１４は第２の実施形態のコンフィギュラブル回路の一構成例を示すブロック図である。
【図１５】図１５は図１４に示したコンフィギュラブル回路の他の使用例を示すチップレイアウト図である。
【符号の説明】
【００１９】
１、１ａ、１ｂ、１＿ｘ、２０１＿ｘ    プログラマブルセル
３＿ｘ、３０、３０＿ｘ    入力選択器
４    プログラマブルロジックブロック
５＿ｘ    トライステートバッファ
１０    配線群
１１    短距離配線群
１１ｂ    水平短距離配線群
１１＿ｘ    短距離配線
１１＿ｘｂ    水平短距離配線
１２    長距離配線群
１２＿ｘ    長距離配線
１５    垂直短距離配線群
１５＿ｘ    垂直短距離配線
２ｘ＿ｙ、４０＿ｘ    プログラマブルスイッチ
７１１＿ｘ、７１５＿ｘ    配線直結スイッチ
７３０＿ｘ、７３１＿ｘ    記憶型低抵抗スイッチ素子
３１    出力選択器
５０    バッファ
６０    イオン化されにくい金属電極
６１    電解質
６２    イオン化されやすい金属電極
９０    Ｉ／Ｏセル
１００    チップ
３０５、３０６、３０７、３０８    ロジックブロック
Ａ、Ｂ    入力端子
Ｃ    出力端子
Ｔ０、Ｔ１、Ｔ２、Ｔ３、Ｔ４、Ｔ５、Ｔ６、Ｔ７、Ｔ    端子
ｔ０、ｔ１、ｔ２、ｔ３、ｔ４、ｔ    端子
【発明を実施するための最良の形態】
【００２０】
（第１の実施形態）
本発明の第１の実施形態について説明する。図４は本実施形態のコンフィギュラブル回路の一構成例を示すブロック図である。【００２１】
図４に示すように、本実施形態のコンフィギュラブル回路は、複数のプログラマブルセル1＿x（xは整数）の配列から成る。各プログラマブルセルは、例えば、プログラマブルセル1＿1に示すように、プログラマブルロジックブロック4と、短距離配線群11と、配線直結スイッチ711＿yと、プログラマブルスイッチ40＿yと、入力選択器30＿yとを含む（yは整数）。複数のプログラマブルロジックブロック4間に設けられるプログラマブルバスは、短距離配線群11、配線直結スイッチ711＿y、プログラマブルスイッチ40＿y、および入力選択器30＿yを含む。【００２２】
プログラマブルロジックブロック4は複数の入力端子（図４に示すAとB）と出力端子Cを有し、コンフィギュレーションメモリ（不図示）に書き込まれたデータにもとづいて多様な論理機能を実現する。【００２３】
短距離配線群11は異なるプログラマブルセルの間でデータを伝送するためのもので、図４の例ではプログラマブルセルの幅の一つ分の長さを持つ複数の短距離配線11＿y（yは整数）から成る。複数のプログラマブルロジックブロック4を結ぶ複数の配線のうち、配線直結スイッチ711＿y間の複数の短距離配線11＿yの区分が本発明の信号伝送範囲に相当する。【００２４】
配線直結スイッチ711＿yは、隣接する短距離配線11＿y同士をプログラマブルに接続したり遮断したりする記憶型低抵抗スイッチ素子である。この記憶型低抵抗スイッチ素子は、図３で説明したのと同様な構成である。イオン化されにくい金属電極60がプログラマブルセル1＿k（kは任意の整数）の短距離配線11＿yに接続され、イオン化されやすい金属電極62がプログラマブルセル1＿k+1の短距離配線11＿yに接続されている。なお、これら異なる種類の金属電極の配置は逆であってもよい。このように、イオン化されにくい金属電極60とイオン化されやすい金属電極62のそれぞれに、隣接するプログラマブルセルの短距離配線11＿yのそれぞれが接続されている。【００２５】
プログラマブルスイッチ40＿z（zは整数）は、プログラマブルに、端子T0,  T1,  T2,  T3,  Tのいずれかの信号を端子T0,  T1,  T2,  T3の少なくとも一つに出力したり（ただし、この場合、入力と出力は異なる端子となる）、または、端子間を遮断したりするものである。【００２６】
ここで、端子T0,  T1,  T,  T2,  T3と短距離配線群11との接続を説明する。端子T0はプログラマブルセル1＿1の短距離配線11＿2に接続され、端子T1はプログラマブルセル1＿2の短距離配線11＿2に接続されている。端子T2はプログラマブルセル1＿1の短距離配線11＿1に接続され、端子T3はプログラマブルセル1＿2の短距離配線11＿1に接続されている。端子Tは同じプログラマブルセル内の他のプログラマブルスイッチの端子Tと接続されている。プログラマブルセル1＿1では、図４に示すように、プログラマブルスイッチ40＿1,  40＿2の端子T同士が接続されている。そして、２つの端子Tが接続される配線にプログラマブルロジックブロック4の出力端子Cが接続されている。【００２７】
図５はプログラマブルスイッチ40＿zの構成例を示すブロック図である。図５に示すように、端子T0,  T1,  T,  T2,  T3のそれぞれは入力選択器30の入力端子t1,  t3,  t2,  t0,  t4のそれぞれに接続されている。入力選択器30は入力端子のいずれかの信号を出力端子tに出力するか、もしくはどの信号も出力しないかをプログラマブルに設定するものである。入力選択器30の出力信号はバッファ50を介して出力選択器31の入力端子tに与えられる。端子T0,  T1,  T2,  T3のそれぞれは出力選択器31の出力端子t1,  t2,  t0,  t3のそれぞれに接続されている。出力選択器31は、出力端子t0,  t1,  t2,  t3のそれぞれについて、入力端子tの信号を出力するかまたは出力しないかをプログラマブルに設定するものである。【００２８】
図６は入力選択器30の構成例を示す回路図である。入力端子t0,  t1,  t2,  t3,  t4のそれぞれは記憶型低抵抗スイッチ素子730＿0,  730＿1,  730＿2,  730＿3,  730＿4のそれぞれの２つの金属電極の一方の金属電極に接続されている。そして、記憶型低抵抗スイッチ素子730＿0,  730＿1,  730＿2,  730＿3,  730＿4の他方の金属電極は一つに接続されて出力端子tになっている。【００２９】
図７は出力選択器31の構成例を示す回路図である。出力端子t0,  t1,  t2,  t3のそれぞれは記憶型低抵抗スイッチ素子731＿0,  731＿1,  731＿2,  731＿3のそれぞれの２つの金属電極の一方の金属電極に接続されている。そして、記憶型低抵抗スイッチ素子731＿0,  731＿1,  731＿2,  731＿3の他方の金属電極は一つに接続されて入力端子tになっている。【００３０】
既に述べたように記憶型低抵抗スイッチ素子の金属電極間はプログラマブルに“接続”あるいは“遮断”できるため、図５に示したプログラマブルスイッチは、端子T0,  T1,  T2,  T3,  Tのいずれかの信号を端子T0,  T1,  T2,  T3の少なくとも一つに出力したり（ただし、この場合、入力と出力は異なる端子となる）、あるいは端子間を遮断したりすることができる。上述の配線直結スイッチとは異なり、プログラマブルスイッチでは、図５に示したように、入力と出力との間にバッファが設けられているのが特徴である。このバッファは、１本の短距離配線（例えば、図４に示す短距離配線11＿1、または短距離配線11＿2）を駆動するのに必要十分な駆動力を備えている。【００３１】
続いて、図４に示す入力選択器30＿1,  30＿2について説明する。入力選択器30＿1の２つの入力端子のそれぞれは短距離配線11＿1,  11＿2のそれぞれに接続され、出力端子がプログラマブルロジックブロック４の入力端子Bに接続されている。入力選択器30＿2の２つの入力端子のそれぞれは短距離配線11＿1,  11＿2のそれぞれに接続され、出力端子がプログラマブルロジックブロック４の入力端子Aに接続されている。【００３２】
図４に示す入力選択器30＿1,  30＿2のそれぞれは、短距離配線群11から一つの信号を選択し、選択した信号をプログラマブルロジックブロック4の入力端子B,  Aのそれぞれに供給するものである。これらの選択器は、図６に示した入力選択器30と基本的に同様な構成であり、図６に示す構成と入力端子の数が異なるだけである。これらの入力選択器は、関連するプログラマブルセルではMOSトランジスタで作られていたが、図６に示したように記憶型低抵抗スイッチ素子で作った方がはるかに面積も負荷容量も小さくなるという利点がある。【００３３】
次に、本実施形態のコンフィギュラブル回路の動作と効果について説明する。【００３４】
図８は本実施形態のコンフィギュラブル回路の第１の動作例を示す図である。太線矢印は信号の経路を示し、配線直結スイッチ711＿y、プログラマブルスイッチ40＿y、入力選択器30＿y（yは整数）の端子間を貫く太線は、該当する端子間を接続することを意味する。【００３５】
ここでは、プログラマブルセル1＿0内の配線直結スイッチ711＿1,  711＿2、プログラマブルセル1＿1内の配線直結スイッチ711＿1とプログラマブルスイッチ40＿1、プログラマブルセル1＿2内の配線直結スイッチ711＿1,  711＿2とプログラマブルスイッチ40＿1,  40＿2は、いずれも遮断状態に設定されている。【００３６】
図８に示すように、プログラマブルセル1＿1内のプログラマブルロジックブロック4の出力端子Cは、プログラマブルスイッチ40＿2を介して、隣接するプログラマブルセル1＿2に付随する短距離配線11＿1に信号を出力する。この信号はプログラマブルセル1＿2内の入力選択器30＿2を通じてプログラマブルロジック4の入力端子Aに供給される。【００３７】
また、プログラマブルセル1＿0内のプログラマブルロジックブロック4の出力端子Cは、プログラマブルスイッチ40＿1と40＿2の両方を介して、隣接するプログラマブルセル1＿1に付随する短距離配線11＿2に信号を出力する。この信号はプログラマブルセル1＿1内の配線直結スイッチ711＿2を通してプログラマブルセル1＿2に付随する短距離配線11＿2に伝達され、プログラマブルセル1＿2内の入力選択器30＿1を通じてプログラマブルロジック4の入力端子Bに供給される。【００３８】
続いて、図８に示した第１の動作例の作用と効果を説明する。【００３９】
図８に示すプログラマブルセル1＿2に付随する短距離配線11＿1は、他の短距離配線と遮断された単セグメントの短距離配線となっている。このため、それを駆動するバッファは短距離配線用一つでよく、図８ではプログラマブルセル1＿1内のプログラマブルスイッチ40＿2のみで駆動している。【００４０】
他方、プログラマブルセル1＿0内のプログラマブルロジックブロック4の出力端子Cの信号を２つ先のプログラマブルセル1＿2に伝送するため、図８ではプログラマブルセル1＿1に付随する短距離配線11＿2とプログラマブルセル1＿2に付随する短距離配線11＿2とをプログラマブルセル1＿1内の配線直結スイッチ711＿2を通じて接続し、長距離配線を形成している。配線直結スイッチによる接続はバッファを介さない直接接続であるため、このようにして形成された長距離配線は、プログラマブルセルの幅２つ分のセグメント長を持つ配線と同じ負荷容量を持つ。したがって、これを駆動するために、図８のプログラマブルセル1＿0のように、同じ信号（プログラマブルロジックブロック4の出力端子Cからの出力）をプログラマブルスイッチ40＿1と40＿2の両方を介して同じ短距離配線（プログラマブルセル1＿1に付随する短距離配線11＿2）に出力している。このように二つのプログラマブルスイッチを併せて使うことで駆動力が２倍になり、長距離配線を高速に駆動できるようになる。【００４１】
上述したように、一つのプログラマブルスイッチ内のバッファは短距離配線一つを駆動するのに必要十分な駆動力しか持たないため、これ一つのみで長距離配線を駆動すると信号伝送が遅くなり性能が劣化する。しかし、図８に示す例のように、二つのプログラマブルスイッチを併せて使うことで長距離配線を駆動するのに充分な駆動力を確保することが可能となる。また、記憶型低抵抗スイッチのON抵抗はトランジスタに比べて非常に小さい。このため、それを使った配線直結スイッチによる２つの短距離配線の接続は、繋ぎ目のない１本の長距離配線に近く、高速な信号伝送が可能である。【００４２】
配線直結スイッチをトランジスタで作った場合（例えば、パストランジスタやトランスミッションゲート）、抵抗も容量も非常に大きくなるため、たとえどんなに大きな駆動力のバッファで駆動したとしても、１本の長距離配線に比べて大幅に劣った性能しか得られない。さらに、プログラマブルスイッチの出力選択器（図５の出力選択器31に相当する部位）を構成するスイッチ（図７のスイッチ素子731＿xに相当する部位）も、バッファ後の大きな駆動力を伝達するため低抵抗でなければならない。この部位のスイッチに記憶型低抵抗スイッチを使えば、小さい面積でその要求を十分達成することができるが、トランジスタで作ると非常に大きな面積を占有しかつ駆動力の大幅な低下は免れない。【００４３】
本発明の第１の実施形態では、長距離配線を短距離配線のプログラマブルな接続で実現し、かつ短距離配線用バッファをプログラマブルに結合して長距離配線用バッファを形成する。これを、実用的な性能でかつ小面積で実現するためには記憶型低抵抗スイッチが必要不可欠であり、トランジスタによるスイッチでは実現が困難である。【００４４】
なお、図８に示した第１の動作例は、本発実施形態において、隣接プログラマブルセルへの信号伝送と、プログラマブルセル２つ以上離れた距離の信号伝送に相当する長距離信号伝送とを重ね合わせた例である。【００４５】
次に、本実施形態のコンフィギュラブル回路の第２の動作例として、２つの長距離信号伝送を重ね合わせた場合を説明する。図９は本実施形態のコンフィギュラブル回路の第２の動作例を示す図である。太線矢印の意味は第１の動作例で説明したのと同様である。【００４６】
ここでは、プログラマブルセル1＿0内の配線直結スイッチ711＿1,  711＿2とプログラマブルスイッチ40＿2、プログラマブルセル1＿1内の配線直結スイッチ711＿1,  711＿2、プログラマブルセル1＿2内の配線直結スイッチ711＿1,  711＿2、プログラマブルセル1＿3内の配線直結スイッチ711＿1,  711＿2とプログラマブルスイッチ40＿1,  40＿2は、いずれも遮断状態に設定されている。【００４７】
図９に示すように、プログラマブルセル1＿0内のプログラマブルロジックブロック4の出力端子Cは、プログラマブルスイッチ40＿1を介して、隣接するプログラマブルセル1＿1に付随する短距離配線11＿2に信号を出力する。この信号はプログラマブルセル1＿1内のプログラマブルスイッチ40＿1を介してプログラマブルセル1＿2に付随する短距離配線11＿2に出力される。さらに、その信号は、プログラマブルセル1＿2内のプログラマブルスイッチ40＿1を介して、プログラマブルセル1＿3に付随する短距離配線11＿2に出力され、入力選択器30＿2を通じてプログラマブルロジックブロック4の入力端子Aに供給される。すなわちこの経路は、プログラマブルセル1＿0から1＿3への信号伝送の際に、経路上のプログラマブルセル毎にプログラマブルスイッチによるバッファリングを行いながら信号を伝送するものである。【００４８】
また、図９において、プログラマブルセル1＿1内のプログラマブルロジックブロック4の出力端子Cは、プログラマブルスイッチ40＿2を介して、隣接するプログラマブルセル1＿2に付随する短距離配線11＿1に信号を出力する。この信号は、プログラマブルセル1＿2内のプログラマブルスイッチ40＿2を介して、プログラマブルセル1＿3に付随する短距離配線11＿1に出力され、入力選択器30＿1を通じてプログラマブルロジック4の入力端子Bに供給される。すなわちこの経路は、プログラマブルセル1＿1から1＿3への信号伝送の際に、経路上のプログラマブルセル毎にプログラマブルスイッチによるバッファリングを行いながら信号を伝送するものである。【００４９】
続いて、図９に示した第２の動作例の作用と効果を説明する。【００５０】
図９に示した動作例では、２つの長距離信号伝送が重ね合わさっている。この場合、各信号路では、プログラマブルセル毎にプログラマブルスイッチを介したバッファリングを行う必要がある。すなわち、配線直結スイッチ711＿y（ｙは整数）を使った長距離配線は使わない。そのような長距離配線を使うと、あるプログラマブルセルで２つ以上のプログラマブルスイッチを占有したバッファリングが必要となり、もう一本の信号路用のプログラマブルスイッチを確保できなくなるからである。配線直結スイッチ711＿y（ｙは整数）を使った長距離配線は、高速に長距離信号伝送できるメリットがあるが、多くのプログラマブルスイッチを消費するため少数しか使えない。他方、短距離配線をプログラマブルスイッチで結合して同じような長距離伝送を行うと、速度は遅くなるものの、多くの信号伝送を重ね合わせることができるメリットがある。両者は、配線の使用状況や要求性能によって適宜使い分けられる。【００５１】
次に、本実施形態のコンフィギュラブル回路の第３の動作例として、配線直結スイッチを使って形成した長距離配線を複数接続した信号経路の場合を説明する。図１０は本実施形態のコンフィギュラブル回路の第３の動作例を示す図である。太線矢印の意味は第１の動作例で説明したのと同様である。【００５２】
ここでは、プログラマブルセル1＿0内の配線直結スイッチ711＿1,  711＿2、プログラマブルセル1＿1内の配線直結スイッチ711＿2とプログラマブルスイッチ40＿1,  40＿2、プログラマブルセル1＿2内の配線直結スイッチ711＿1,  711＿2、プログラマブルセル1＿3内の配線直結スイッチ711＿2とプログラマブルスイッチ40＿1,  40＿2は、いずれも遮断状態に設定されている。【００５３】
プログラマブルセル1＿0に付随する短距離配線11＿1は、プログラマブルスイッチ40＿1と40＿2の両方を介して、隣接するプログラマブルセル1＿1に付随する短距離配線11＿1に信号を出力する。プログラマブルセル1＿1と1＿2に付随する短距離配線11＿1は、プログラマブルセル1＿1内の配線直結スイッチ711＿1で接続されて長距離配線を形成しており、前述の信号は高速にプログラマブルセル1＿2に付随する短距離配線11＿1に伝送される。さらに、その信号は、プログラマブルセル1＿2のプログラマブルスイッチ40＿1と40＿2の両方を介して、隣接する長距離配線に出力される。【００５４】
この例のように、配線直結スイッチを使って形成した長距離配線を複数接続する場合、中継バッファとして複数のプログラマブルスイッチを使う。これによって高速な長距離信号伝送が可能となるため、他の用途にプログラマブルスイッチを使う必要がない場合はこの方法は有用である。【００５５】
本発明の第１の実施形態として、これまで図４のように、プログラマブルセル１つ当たり短距離配線が２本の例を示してきた。しかし、本実施形態において、短距離配線の数はこれに限定されるものではなく、任意である。
【実施例１】
【００５６】
本実施例は、プログラマブルセルに付随する短距離配線の数を追加した場合である。図１１は本実施例のプログラマブルセルの構成例を示すブロック図である。【００５７】
図１１に示すように、一つのプログラマブルセル1aに対して短距離配線11＿1,  11＿2,  11＿3,  11＿4の４本が設けられている。この場合、隣接する短距離配線同士を結合する配線直結スイッチについても、配線直結スイッチ711＿1,  711＿2,  711＿3,  711＿4の４つが設けられている。さらに、プログラマブルスイッチ40＿1,  40＿2,  40＿3,  40＿4の４つが設けられ、各プログラマブルスイッチはT0,  T1,  T2,  T3,  T4,  T5,  T6,  T7,  Tの９個の端子を持つ。【００５８】
このプログラマブルスイッチは、図５に示した入力選択器30と出力選択器31の端子がそれぞれ４つ増えたものであり、T0,  T1,  T2,  T3,  T4,  T5,  T6,  T7,  Tのうち一つを選択してTと自身以外の端子に出力したり、端子間を遮断したりするものである。この例の場合、次のいずれかの配線構成を設定することが可能となる。
(1)４つの短距離配線
(2)２つの２セル長配線（短距離配線２本を配線直結スイッチで結合したもの）
(3)１つの２セル長配線と２つの短距離配線
(4)１つの３セル長配線（短距離配線３本を配線直結スイッチで結合したもの）と１つの短距離配線
(5)１つの４セル長配線（短距離配線４本を配線直結スイッチで結合したもの）
短距離配線はプログラマブルスイッチ１つで、２セル長配線はプログラマブルスイッチ２つで、３セル長配線はプログラマブルスイッチ３つで、４セル長配線はプログラマブルスイッチ４つで、それぞれ駆動する。このように、配線とプログラマブルスイッチの数を増やすことで、多様な配線構成を設定することができる。【００５９】
関連するコンフィギュラブル回路と同じ性能を得るためには、本実施形態は、関連するコンフィギュラブル回路に比べて大幅に少ない配線数とプログラマブルスイッチ数（あるいはバッファ数）でよい。関連するコンフィギュラブル回路では、図１で説明したように、高速な長距離伝送を行うために、専用の長距離配線とそれを十分駆動できるプログラマブルスイッチを備える必要があった。それに対し、本発明の第１の実施形態ではそのような専用の長距離伝送路はなく、短距離配線とそれを駆動するに足るプログラマブルスイッチを備えるのみである。高速な長距離伝送は、短距離配線を使ってプログラマブルに形成できる。【００６０】
また、関連するコンフィギュラブル回路は多数の種類の配線資源を持っているが、個々のアプリケーション回路で使うのはそのうちほんの一部分である。多様な要求に対応するためそれぞれの用途に適した配線資源を備えているものの、各々のアプリケーション回路ではその一部しか使わず、大部分は未使用となる。関連するコンフィギュラブル回路の面積が大きいのは、このように多様な回路に対応するための無駄があるからである。【００６１】
他方、本発明の第１の実施形態では、必要に応じていろいろな長さの最適伝送路をプログラマブルに形成できるため、あらかじめ多様な専用伝送路を持つ必要がない。関連するコンフィギュラブル回路に比べて配線やプログラマブルスイッチ（バッファを含む）の数は少なくても、必要に応じて多様な伝送路として融通しあって使えるので不足することはない。【００６２】
このように、本発明の第１の実施形態によれば、関連するコンフィギュラブル回路で大きな面積を占めていた配線やバッファを減らすことができ、小さい面積のコンフィギュラブル回路を実現できる。さらには、配線数が減ると、入力選択器（図４や図１１に示した入力選択器30＿1,  30＿2）の入力数も少なくなり、この面積も小さくなるメリットがある。
【実施例２】
【００６３】
本実施例は、プログラマブルセルに付随する短距離配線群を水平方向だけでなく、垂直方向にも設けた場合である。図１２は本実施例のプログラマブルセルの構成例を示すブロック図である。【００６４】
本実施例のプログラマブルセル1bでは、図４で示した、水平方向の短距離配線群11に加えて、図１２に示すように、垂直方向の短距離配線が複数配置された垂直短距離配線群15が設けられている。隣接する垂直短距離配線15＿xは、配線直結スイッチ715＿xを介してプログラマブルに接続される（xは整数）。また、垂直短距離配線15＿xは、プログラマブルスイッチ40＿xを介して水平短距離配線11＿xbや、プログラマブルロジックブロック4の出力端子Cとプログラマブルに接続される。さらに、入力選択器30＿xには、垂直短距離配線により伝送される信号も入力される。【００６５】
図１３は本実施例のプログラマブルセルの使用例を示すレイアウト図である。図１２に示すプログラマブルセル1bは、図１３に示すように２次元アレイ状に並べられ、水平方向は水平短距離配線群11bで、垂直方向は垂直短距離配線群15で接続される。コンフィギュラブル回路の典型であるＦＰＧＡやＰＬＤは、図１３に示したように、同じプログラマブルセルがアレイ状に配列されている。【００６６】
（第２の実施形態）
次に、本発明の第２の実施形態について説明する。なお、第１の実施形態と同様な構成については同一の符号を付し、その詳細な説明を省略する。【００６７】
図１４は本実施形態のコンフィギュラブル回路の一構成例を示すブロック図である。図１４に示すように、第１の実施形態と同様に、複数のプログラマブルセル1＿xが短距離配線11＿xで結合されている（xは整数）。ただし、第１の実施形態とは異なり、本実施形態では、各々のプログラマブルセルは一般に同じではない。図１４において、ロジックブロック305,  306,  307,  308は同じ回路とは限らず、またプログラマブルでなくともよい。ロジックブロックの例としては、たとえば加算器、乗算器、メモリユニットなどの専用回路が挙げられる。【００６８】
また、本実施形態においては、入力選択器30＿x（xは整数）の個数も端子数もプログラマブルセル毎に異なってよい。図１４に示す例では、入力選択器として、プログラマブルセル1＿6,  1＿8のそれぞれには２個の入力選択器30＿1,  30＿2が設けられ、プログラマブルセル1＿5には１個の入力選択器30＿1が設けられているが、プログラマブルセル1＿7には入力選択器が設けられていない場合を示している。さらに、プログラマブルセル1＿8に示すように、ロジックブロック308の出力がプログラマブルスイッチ40＿xに接続されていない場合があってもよい。【００６９】
本実施形態では、短距離配線群11と配線直結スイッチ711＿xとプログラマブルスイッチ40＿xとがコンフィギュラブルバスを形成しており、それを通じて、任意のロジックブロック同士が結合している（ロジックブロックはプログラマブルとは限らない）。関連するコンフィギュラブル回路の専用バスと異なり、このようなコンフィギュラブルバスは、チップ製造後に構成を変えることができるため、同一チップで複数の用途に対応することが可能である。また、製造後のバグ修正にも役立つ。【００７０】
ＦＰＧＡのように、チップ全体をコンフィギュラブルな回路で作った場合、多様性は大きいが、専用回路に比べて面積がかなり大きくなる問題がある。これに対して、本実施形態のように、バスのみをコンフィギュラブルにすることで適度な多様性を確保する方が、コストパフォーマンスの観点から望ましい場合も多々ある。【００７１】
図１５は図１４に示したコンフィギュラブル回路の他の使用例を示すチップレイアウト図である。チップ100の周辺部にはＩ／Ｏセル90が複数設けられ、チップ100の内部にはプログラマブルセル1＿x（xは整数）が複数設けられている。これらのセルは短距離配線群11で接続されている。Ｉ／Ｏセル90は、図１４に示したようなプログラマブルセルの一種で、ロジックブロックとしてＩ／Ｏバッファなどチップ外とのデータをやり取りするための回路を有している。Ｉ／Ｏの位置や数など多少の仕様の違いで別の種類のチップとして製造しなければならない例は多い。図１５に示した回路を使えば、関連するコンフィギュラブル回路では別の種類で製造されていた複数のチップを一つの種類のチップにまとめることができ、コスト低減になる。【００７２】
第１および第２の実施形態で説明したように、本実施形態のコンフィギュラブル回路では、隣接する配線同士は、プログラマブルスイッチを介して接続されるか、配線直結スイッチで接続される。隣接する配線がプログラマブルスイッチを介して接続される場合には、信号伝送範囲内の配線の駆動力はプログラマブルスイッチに含まれるバッファにより供給される。また、隣接する配線が配線直結スイッチで接続される場合には、長距離配線が構成され、複数のプログラマブルスイッチから駆動力が供給される。長距離用と短距離用の配線をそれぞれ設ける必要がなく、関連するコンフィギュラブル回路に比べて、余分な配線を設ける必要がない。【００７３】
本発明のコンフィギュラブル回路では、複数の短距離配線を記憶型低抵抗スイッチ素子で接続することで長距離配線を形成している。さらに、このとき、複数の短距離配線用駆動バッファを記憶型低抵抗スイッチ素子で結合することで、大駆動力の長距離配線用バッファを形成している。このような方法で、専用の長距離配線に匹敵する性能を持った長距離配線をプログラマブルに構成することができる。それに伴い、関連するコンフィギュラブル回路のような専用長距離配線が不要になり、配線もバッファも大幅に減らすことができる。したがって、関連するコンフィギュラブル回路よりも小さい面積でコンフィギュラブル回路を実現できる。【００７４】
以上、実施形態および実施例を参照して本願発明を説明したが、本願発明は上記実施形態および実施例に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。【００７５】
この出願は、２００７年３月９日に出願された日本出願の特願２００７−０６０３５３の内容が全て取り込まれており、この日本出願を基礎として優先権を主張するものである。
【図１】
2008111406.tif 000003
【図２】
2008111406.tif 000004
【図３】
2008111406.tif 000005
【図４】
2008111406.tif 000006
【図５】
2008111406.tif 000007
【図６】
2008111406.tif 000008
【図７】
2008111406.tif 000009
【図８】
2008111406.tif 000010
【図９】
2008111406.tif 000011
【図１０】
2008111406.tif 000012
【図１１】
2008111406.tif 000013
【図１２】
2008111406.tif 000014
【図１３】
2008111406.tif 000015
【図１４】
2008111406.tif 000016
【図１５】
2008111406.tif 000017
【国際調査報告】
2008111406.tif 000018
2008111406.tif 000019