(57)【特許請求の範囲】
【請求項１】
複数の第一の信号線と、それに交差するｎ本の第二の信号線と、該第一及び第二の信号線の交差部分に設けられるプログラム可能なスイッチ手段を有する接続部を有する集積回路装置において、
前記接続部内のスイッチ手段の配置が、第一の信号線のうちｎ本を少なくともいずれかの該ｎ本の第二の信号線に接続できる位置であって、更に前記複数の第一の信号線のうち任意のｍ本（ｍ＜ｎ）を同時にいずれかの第二の信号線に接続できる位置に置かれてなり、
前記第一の信号線に接続されたスイッチ手段の数の最大値と最小値とが高々１個の差しか有していないことを特徴とするプログラム可能な接続部を有する集積回路装置。
【請求項２】
請求項１において、 前記第二の信号線に接続されたスイッチ手段の数の最大値と最小値とが高々１個の差しか有していないことを特徴とするプログラム可能な接続部を有する集積回路装置。
【請求項３】
複数の第一の信号線と、それに交差するｎ本の第二の信号線と、該第一及び第二の信号線の交差部分に設けられるプログラム可能なスイッチ手段を有する接続部を有する集積回路装置において、
前記接続部内のスイッチ手段の配置が、第一の信号線のうちｎ本を少なくともいずれかの該ｎ本の第二の信号線に接続できる位置であって、更に前記複数の第一の信号線のうち任意のｍ本（ｍ＜ｎ）を同時にいずれかの第二の信号線に接続できる位置に置かれてなり、
前記第二の信号線に接続されたスイッチ手段の数の最大値と最小値とが高々１個の差しか有していないことを特徴とするプログラム可能な接続部を有する集積回路装置。
【請求項４】
マトリクス上に配置されたｎ本の入力端子を有する複数の論理セルと、
該論理セルの領域の間に配置され、複数の論理セル間信号線を有する論理セル間バスと、
前記論理セルの領域に周辺に設けられ、前記の複数の論理セル間信号線と、それに交差し前記入力端子に接続されるｎ本の入力端子線と、該論理セル間信号線と入力端子線との交差部分に設けられるプログラム可能なスイッチ手段を含む接続部とを有するフィールド・プログラマブル・ゲート・アレイ装置において、
前記接続部内のスイッチ手段の配置が、論理セル間信号線のうちｎ本を少なくともいずれかの該ｎ本の入力端子線に接続できる位置であって、更に前記複数の論理セル間信号線のうち任意のｍ本（ｍ＜ｎ）を同時にいずれかの入力端子線に接続できる位置に置かれてなり、
前記論理セル間信号線に接続されたスイッチ手段の数の最大値と最小値とが高々１個の差しか有していないことを特徴とするプログラム可能な接続部を有する集積回路装置。
【請求項５】
請求項４において、前記入力端子線に接続されたスイッチ手段の数の最大値と最小値とが高々１個の差しか有していないことを特徴とするプログラム可能な接続部を有する集積回路装置。
【請求項６】
マトリクス上に配置されたｎ本の入力端子を有する複数の論理セルと、
該論理セルの領域の間に配置され、複数の論理セル間信号線を有する論理セル間バスと、
前記論理セルの領域に周辺に設けられ、前記の複数の論理セル間信号線と、それに交差し前記入力端子に接続されるｎ本の入力端子線と、該論理セル間信号線と入力端子線との交差部分に設けられるプログラム可能なスイッチ手段を含む接続部とを有するフィールド・プログラマブル・ゲート・アレイ装置において、
前記接続部内のスイッチ手段の配置が、論理セル間信号線のうちｎ本を少なくともいずれかの該ｎ本の入力端子線に接続できる位置であって、更に前記複数の論理セル間信号線のうち任意のｍ本（ｍ＜ｎ）を同時にいずれかの入力端子線に接続できる位置に置かれてなり、
前記入力端子線に接続されたスイッチ手段の数の最大値と最小値とが高々１個の差しか有していないことを特徴とするプログラム可能な接続部を有する集積回路装置。
【請求項７】
請求項４乃至６のいずれかの請求項において、前記入力端子の少なくとも一部に、入力値を交換しても当該論理セルの出力に変化がない可換な入力端子対を含むことを特徴とするプログラム可能な接続部を有する集積回路装置。
【請求項８】
請求項１乃至７のいずれかの請求項において、前記スイッチ手段は、状態信号により導通、非導通となる受動形のスイッチ手段であることを特徴とする集積回路装置。
【請求項９】
請求項１乃至７のいずれかの請求項において、前記スイッチ手段は、状態信号により入力を出力に伝える能動型のスイッチ手段であることを特徴とする集積回路装置。
【請求項１０】
複数の第一の信号線と、それに交差するｎ本の第二の信号線と、該第一及び第二の信号線の交差部分に設けられるプログラム可能なスイッチ手段を有する接続部を有する集積回路装置において、 該接続部において、
該ｎ本の第一の信号線とｎ本の第二の信号線との交差部分に、該第一及び第二の信号線に接続される個数がそれぞれ１個になる様に前記スイッチ手段を該接続部の第一の領域内に配置する工程と、
該接続部内であって、前記第一の領域外の第二の領域内にある第一の信号線それぞれにｍ個（ｍ＜ｎ）の前記スイッチ手段を配置する工程と、
前記第二の領域内において、該第二の信号線に接続されるスイッチ手段の数が均等化される様に、前記第一の信号線上に配置されたスイッチ手段を当該第一の信号線に沿って移動させる工程と、
上記移動済の第二の領域と前記第一の領域内において、前記第一の信号線上に接続されるスイッチ手段の数が均等化される様に、前記第二の領域内の第二の信号線上に配置されたスイッチ手段を当該第二の信号線に沿って移動させる工程とを有することを特徴とする接続部を有する集積回路装置の設計方法。
【請求項１１】
マトリクス上に配置されたｎ本の入力端子を有する複数の論理セルと、
該論理セルの領域の間に配置され、複数の論理セル間信号線を有する論理セル間バスと、
前記論理セルの領域に周辺に設けられ、前記の複数の論理セル間信号線と、それに交差し前記入力端子に接続されるｎ本の入力端子線と、該論理セル間信号線と入力端子線との交差部分に設けられるプログラム可能なスイッチ手段を含む接続部とを有するフィールド・プログラマブル・ゲート・アレイ装置において、
該接続部において、該ｎ本の論理セル間信号線とｎ本の入力端子線との交差部分に、該論理セル間信号線及び入力端子線に接続される個数がそれぞれ１個になる様に前記スイッチ手段を該接続部の第一の領域内に配置する工程と、
該接続部内であって、前記第一の領域外の第二の領域内にある論理セル間信号線それぞれにｍ個（ｍ＜ｎ）の前記スイッチ手段を配置する工程と、
前記第二の領域内において、該入力端子線に接続されるスイッチ手段の数が均等化される様に、前記論理セル間信号線上に配置されたスイッチ手段を当該論理セル間信号線に沿って移動させる工程と、
上記移動済の第二の領域と前記第一の領域内において、前記論理セル間信号線上に接続されるスイッチ手段の数が均等化される様に、前記第二の領域内の入力端子線上に配置されたスイッチ手段を当該入力端子線に沿って移動させる工程とを有することを特徴とする接続部を有する集積回路装置の設計方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、プログラム可能な接続部を有する集積回路装置に関し、特に、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）のプログラム可能な接続部やマルチプロセッサのプログラム可能な入力接続部の構造及びその設計方法に関する。
【０００２】
【従来の技術】
ＦＰＧＡは、様々な論理を実現できる複数個の論理セルを、マトリクス状に配置する。その論理セル間に配置された複数本の論理セル間信号線を、論理セルの入出力端子と適宜接続可能にすることで、複数の論理セルを任意の組み合わせで接続して所望の論理回路を実現する。従って、論理セル間信号線と論理セルの入出力端子との間の接続部は、プログラム可能な構造を有する。即ち、この接続部は、プログラムスイッチの集合で構成される。
【０００３】
複数の論理セル間の接続により高いフレキシビリティを持たせる為には、単純には、そのプログラムスイッチの総数を出来るだけ多くすることが必要である。従って、従来から提供されていたＦＰＧＡの接続部には、論理セルの交換可能な（以下、可換と称する）入力端子の全てが自由に論理セル間信号線に接続できる様にプログラムスイッチが配置されている。或いは、それに準じる程度にプログラムスイッチが配置されている。
【０００４】
【発明が解決しようとする課題】
しかしながら、かかるＦＰＧＡのチップは、上記した通り、マトリクス配置された論理セルの領域と、複数本の論理セル間信号線を有する論理セル間バスの領域と、複数のプログラムスイッチで構成される接続部、そして水平方向と垂直方向の論理セル間信号線を接続するスイッチブロックを有する。ＦＰＧＡの論理回路密度は、接続部のプログラムスイッチの総数、及びプログラムスイッチそれぞれの面積に略逆比例する。その理由は、面積的には、ＦＰＧＡチップの面積の大部分はプログラムスイッチを有する接続部で占められているからである。
【０００５】
従って、単位面積当たりの実現可能な論理回路のゲート数を多くして面積効率を高くする為には、このプログラムスイッチの総数を少なくして接続部の面積を小さくすることが必要である。
【０００６】
ところが、従来のＦＰＧＡでは、前述の通り論理セルの可換な入力端子の全てが自由に論理セル間信号線に接続できる様にプログラムスイッチが設けられているので、論理回路の面積効率が低くなりがちである。この問題点は、マルチプロセッサを任意に接続可能にしたマルチプロセッサシステムにおける接続部でも同様のことがいえる。
【０００７】
そこで、本発明の目的は、接続部のプログラムスイッチの数と配置を最適化して、接続の効率を低下させることなく面積効率を向上したプログラム可能な接続部を有する集積回路装置を提供することにある。
【０００８】
また、本発明の別の目的は、接続部のプログラムスイッチの数と配置を最適化して、接続の効率を低下させることなく面積効率を向上し、さらに回路スピードを上げたプログラム可能な接続部を有する集積回路装置を提供することにある。
【０００９】
更に、本発明の別の目的は、接続の効率を低下させることなく面積効率を向上することができる接続部のプログラムスイッチの配置の方法を有する接続部を有する集積回路装置の設計方法を提供することにある。
【００１０】
【課題を解決するための手段】
上記の目的を達成する本発明は、マトリクス上に配置されたｎ本の入力端子を有する複数の論理セルと、該論理セルの領域の間に配置され、複数の論理セル間信号線を有する論理セル間バスと、前記論理セルの領域に周辺に設けられ、前記の複数の論理セル間信号線と、それに交差し前記入力端子に接続されるｎ本の入力端子線と、該論理セル間信号線と入力端子線との交差部分に設けられるプログラム可能なスイッチ手段を含む接続部とを有するフィールド・プログラマブル・ゲート・アレイ装置において、適用される時に最もその特徴点を利用することができる。本発明がかかるＦＰＧＡに適用される場合は、前記接続部内のスイッチ手段の配置が、論理セル間信号線のうちｎ本を少なくともいずれかの該ｎ本の入力端子線に接続できる位置であって、更に前記複数の論理セル間信号線のうち任意のｍ本（ｍ＜ｎ）を同時にいずれかの入力端子線に接続できる位置に置かれてなることを特徴とする。
【００１１】
かかる構成の接続部を最小数のスイッチ手段で構成することにより、接続部の面積をできるだけ小さくすることができる。
【００１２】
更に、本発明の別の態様では、上記のＦＰＧＡに適用される時、前記論理セル間信号線に接続されたスイッチ手段の数の最大値と最小値とが高々１個の差しか有していないことを特徴とする。或いは、前記入力端子線に接続されたスイッチ手段の数の最大値と最小値とが高々１個の差しか有していないことを特徴とする。かかる構成にすることで、論理セル間信号線や入力端子線に接続されるスイッチ手段の負荷を出来るだけ均等化することができる。その結果、論理回路全体の動作速度を向上させることができる。
【００１３】
上記の目的は、本発明の設計方法によっても達成される。本発明の設計方法では、例えばＦＰＧＡに適用される場合は、該接続部において、該ｎ本の論理セル間信号線とｎ本の入力端子線との交差部分に、該論理セル間信号線及び入力端子線に接続される個数がそれぞれ１個になる様に前記スイッチ手段を該接続部の第一の領域内に配置する工程と、
該接続部内であって、前記第一の領域外の第二の領域内にある論理セル間信号線それぞれにｍ個（ｍ＜ｎ）の前記スイッチ手段を配置する工程と、
前記第二の領域内において、該入力端子線に接続されるスイッチ手段の数が均等化される様に、前記論理セル間信号線上に配置されたスイッチ手段を当該論理セル間信号線に沿って移動させる工程と、
上記移動済の第二の領域と前記第一の領域内において、前記論理セル間信号線上に接続されるスイッチ手段の数が均等化される様に、前記第二の領域内の入力端子線上に配置されたスイッチ手段を当該入力端子線に沿って移動させる工程とを有する。
【００１４】
これらの工程を経ることにより、最小数のスイッチ手段を最適の位置に接続部に配置することができる。
【００１５】
本発明がＦＰＧＡに限定されないことは自明である。例えば、マルチプロセッサシステムの様に、複数のマイクロプロセッサが配置され、その入力端子の線に複数の信号線が交差部分に配置されたプログラム可能なスイッチ手段により適宜接続される集積回路装置においても、適用される。
【００１６】
【発明の実施の形態】
以下、本発明の実施の形態について図面に従って説明する。しかしながら、本発明の技術的範囲がその実施の形態に限定されるものではない。本発明は、ＦＰＧＡに限定されずに、プログラムスイッチを複数有する接続部をもつ集積回路装置であれば、例えばマルチプロセッサ装置等にも適用できる。以下、その一例としてＦＰＧＡの例で本発明の実施の形態を説明する。
【００１７】
図１は、一般的なＦＰＧＡの構成図である。論理セルＬは、内部に種々の論理を実現する論理回路ブロックを有し、チップ上にマトリクス状に配置される。その論理セルＬの間に、水平方向と垂直方向に複数の論理セル間信号線を有する論理セル間バスＢが設けられる。この論理セル間バスＢ内の論理セル間信号線Ｗは、論理セルＬから導出される入出力端子と接続部Ｃにてプログラムスイッチにより接続される。プログラムスイッチは、後述するが、例えばパストランジスタやヒューズ等の導通状態をプログラムで制御可能な素子で構成される。このタイプのスイッチは受動型の回路といわれる。或いは、ＡＮＤゲート等のプログラム端子に与える状態信号によって信号の伝達を可能にする能動型の回路で構成されることもある。
【００１８】
スイッチングブロックＳＢは、垂直方向の論理セル間バスＢと水平方向の論理セル間バスＢとを任意に接続可能にする。従って、このスイッチングブロックＳもプログラム可能である。
【００１９】
本発明は、論理セルから導出される入力端子と、論理セル間信号線とを比較的自由に接続可能にする接続部のプログラムスイッチの数と配置に関する。図２は、その接続部の一例を示す回路図である。論理セルＬからは、ｎ本の入力端子Ｎ０  〜Ｎｎ−１  が水平方向に導出される。（図中のＮ０  〜Ｎｎ−１  は実際には入力端子から導出された入力端子先であるが、以下の説明では便宜的に入力端子と称する。）垂直方向には論理セル間バスＷが配置される。この論理セル間バスＢは、ｗ本（ｗ＞ｎ）の論理セル間信号線Ｗ０  〜Ｗｗ−１  で構成される。そして、論理セル間信号線Ｗと入力端子Ｎとの交差点に、プログラム可能なスイッチＳが最適の個数で最適の配置で設けられる。即ち、図中の１０がプログラムスイッチが配置される平面であり、この平面１０が接続部Ｃを構成する。
【００２０】
この例では、入力端子Ｎが全て可換である場合であるが、必ずしも全ての入力端子が可換である必要はない。例えば、一部の入力端子が可換であってもよい。尚、本明細書内において、論理セル間信号線Ｗや入力端子Ｎ、更にプログラムスイッチＳと大文字で表記した場合は、多くの場合はその集合を意味する。
【００２１】
本発明者がＦＰＧＡを含むプログラム可能な接続部のプログラムスイッチを有する集積回路装置について検討したところ、論理セルやマイクロプロセッサの入力端子の内、可換な入力端子の全てが同時に使用されて異なる論理セル間信号線に接続されることは統計上稀であることが判明した。従って、本発明の原理は、論理セル等の可換入力群の全てが同時に異なる論理セル間信号線に接続できなくても良いという考えにもとづく。
【００２２】
従って、本発明の実施の形態例による接続部は、以下の条件を満たす様に構成される。即ち、ｗ本の論理セル間信号線Ｗを有する論理セル間バスとｎ（ｗ＞ｎ）個の可換な入力端子Ｎを有する論理セルに対する接続部において、最小のプログラムスイッチ数で、
（１）条件１＝論理セル間バスを構成するｗ本の論理セル間信号線のうちｎ本を、ｎ本の論理セルの入力端子に接続でき、
（２）条件２＝ｗ本の論理セル間信号線の任意のｍ本（ｍ＜ｎ）を同時にｎ本ある入力端子のいずれかに接続でき、
（３）条件３＝それぞれの論理セル間信号線及び入力端子に接続されるプログラムスイッチの数の差が最小である
という条件である。
【００２３】
条件１は、ｗ本の論理セル間信号線のうちｎ本は最低でも一通りの組み合わせでｎ本の入力端子に接続されることを意味する。この条件は言い換えると、ｎ本の入力端子全ては必ずどれかの論理セル間信号線Ｗに接続することで、利用可能になることである。従って、この条件はｎ本の入力端子をもつ論理セルを使用する場合に最低限必要な条件といえる。
【００２４】
条件２は、ｎより少ないｍ本の論理セル間信号線の全てがｎ本の入力端子のいずれかに同時に接続可能であることを意味する。即ち，ｍ本の論理セル間信号線が同時にいずれかの組み合わせのｍ本の入力端子に接続される。ｗ本の論理セル間信号線の任意のｎ本がｎ本の入力端子のいずれかに接続可能にすることが最も自由度が高い接続部であるが、現実的にはｎ本の入力端子全てが異なる論理セル間信号線に接続される確率は非常に低いので、面積効率を向上させる為にｎより少ないｍ本の論理セル間信号線がｎ本の入力端子のいずれかのｍ本に同時に接続可能であることにする。入力端子は可換であるので、ｗ本のうち任意に選択されたｍ本の論理セル間信号線はいずれかの入力端子に接続すれば良い。その分、条件１を付加することで、最低でもｎ本の入力端子全てが論理セル間信号線に接続する組み合わせを可能にしておく。従って、条件２により後述する補題に従って、ｍ本の入力端子が同時に異なるｍ本の論理セル間信号線に接続させることが可能になる。
【００２５】
条件３は、信号のスキューを少なくして、論理回路全体のスピードを確率的に高くする為の配置の条件である。即ち、１本の論理セル間信号線に接続されるプログラムスイッチの個数が増えると、その論理セル間信号線の負荷抵抗が大きくなる。同様に、１本の入力端子に接続されるプログラムスイッチの個数が増えると、その入力端子の負荷抵抗が大きくなる。従って、できるだけこの個数を均等化することで、最悪の負荷抵抗値を小さくしスキューを少なくすることで、論理回路全体の動作速度を高くすることができる。
【００２６】
さて、上記の３つの条件を満足するプログラムスイッチを接続部内の配置平面１０内の論理セル間信号線Ｗと入力端子線Ｎとの格子点にどのように配置するかについて、以下にて説明する。説明にあたり、予めいくつかの定義を行う。
【００２７】
定義１：可換入力対（Ｃｏｍｍｕｔａｂｌｅ  ｉｎｐｕｔ  ｐａｉｒ）
今、ある論理回路が関数ｆ（．．．，  ｘｉ  ，．．．，  ｘｊ  ，．．．）  を実現しているとする。また、ａｉ  ，  ａｊ  が０と１からなる集合｛０１｝の要素とする。この場合、因数において、
ｆ（．．．，  ａｉ  ，．．．，  ａｊ  ，．．．）  ＝ｆ（．．．，  ａｊ  ，．．．，  ａｉ  ，．．．）
であるならば、引数対｛ｘｉ  ｘｊ  ｝に対応した論理回路の入力端子対を可換入力対と言う。
【００２８】
この定義１から導かれる補題１としては、可換入力の特徴として、ａ，ｂ，ｃを論理回路の入力端子とした時、ａとｂが可換入力対で且つｂとｃが可換入力対ならば、ａとｃも可換入力対であることが言える。これは、理由を示すまでもなく自明である。
【００２９】
定義２：可換入力群
今、集合Ｘを論理関数ｆの引数集合とし、Ｘ０  をその部分集合とする。この時、部分集合Ｘ０  の任意の２つの要素ｘｉ  ｘｊ  が可換入力対になるとすると、引数群Ｘ０  に対応した論理回路の入力端子群を可換入力群という。
【００３０】
更に、図２に示される通り、論理セル間バスを構成する論理セル間信号線Ｗが｛Ｗ０  Ｗ１．．  Ｗｗ−１  ｝、入力端子Ｎが｛Ｎ０  Ｎ１  ．．Ｎｎ−１  ｝とすると、論理セル間信号線Ｗ６  と入力端子Ｎ３  の交点にあるプログラムスイッチはＳ３６と示すことにする。その場合に、更に以下を定義する。
【００３１】
定義３：引数に与えられた論理セルの入力端子の集合に接続されているプログラムスイッチの集合を返す関数を、ＳＨ  とする。例えば、
ＳＨ  （｛Ｎ２  ｝）＝｛Ｓ２５Ｓ２３Ｓ２２｝
である。
【００３２】
定義４：引数に与えられた論理セル間信号線の集合に接続されているプログラムスイッチの集合を返す関数を、ＳＶ  とする。例えば、
ＳＶ  （｛Ｗ２  ｝）＝｛Ｓ２５Ｓ２３Ｓ２２｝
である。
【００３３】
定義５：引数に与えられたプログラムスイッチの集合に接続されている論理セル間信号線の集合を返す関数を、ＷＶ  とする。例えば、
ＷＶ  （｛Ｓ１６｝）＝｛Ｗ６  ｝
である。
【００３４】
定義６：引数に与えられたプログラムスイッチの集合に接続されている論理セルの入力端子の集合を返す関数を、ＷＨ  とする。例えば、
ＷＨ  （｛Ｓ１６｝）＝｛Ｎ１  ｝
である。
【００３５】
［プログラムスイッチの配置方法］
最初に条件１を満足するプログラムスイッチの配置方法を説明する。条件１は、最小数のプログラムスイッチで、論理セル間バスを構成するｗ本の論理セル間信号線のうちｎ本を、ｍ本の論理セルの入力端子に接続できることである。即ち、ｗ本の論理セル間信号線のうちｎ本は最低でも一通りの組み合わせでｎ本の入力端子に接続されることを意味する。
【００３６】
その為には、論理セル間信号線Ｗの部分集合であってｎ本の要素を持つ部分集合Ｗ０  を考えた場合、Ｗ０  を構成する任意の論理セル間信号線を高々１本の入力端子に接続することができ、且つ、Ｗ０  を構成する全ての論理セル間信号線を全て異なった入力端子に接続できる様にすれば良い。このことを言い換えると、Ｗ０  の要素である論理セル間信号線のうち任意の論理セル間信号線（∀Ｗｉ  ∈Ｗ０  ）は高々１つのプログラムスイッチが接続され、且つ任意の入力端子Ｎｉ  （∀Ｎｉ  ∈Ｎ）は高々１つのプログラムスイッチが接続されれば良い。これが、条件１の補題（Ｌｅｍｍａ  ）である。
【００３７】
この補題の条件は、より具体的な例で示すと、図３に示したｗ＝１０，ｎ＝６の時のプログラムスイッチの配置平面の図の如くなる。即ち、１０本の論理セル間信号線Ｗのうちの部分集合であるＷ０  と、６本の入力端子Ｎとの交点に斜めに一列に配置される。斜めに一列に配置されることは、特に重要な点ではなく、上記した通り、最も少ないプログラムスイッチ数で、部分集合Ｗ０  の要素である論理セル間信号線は１個のプログラムスイッチを有し、入力端子Ｎの各要素のｎ本の入力端子Ｎ０  〜Ｎ５  も１個のプログラムスイッチを有することが条件である。その典型的な例が、図３に示された斜めに１列に配置する例である。
【００３８】
そこで、図３の部分集合Ｗ０  が属する平面を平面Ｐ０  とし、残りの平面を平面Ｐ１  とする。そして、平面Ｐ１  内の論理セル間信号線の部分集合をＷ１  とする。
【００３９】
さて、次に条件２を満足するプログラムスイッチの配置方法を説明する。条件２は、最小数のプログラムスイッチで、ｗ本の論理セル間信号線の任意のｍ本（ｍ＜ｎ）を同時にｎ本ある入力端子のいずれかに接続できることである。このことは、ｎより少ないｍ本の論理セル間信号線の全てがｎ本の入力端子のいずれかのｍ本に接続可能であることを意味する。
【００４０】
この条件２を満たす前提として、条件１を満たすプログラムスイッチが配置されていることが必要であることは自明である。そこで、上記の図３の平面Ｐ０  内では条件１を満たす様に斜めに１列にプログラムスイッチが配置されているとする。この様な状況の下で、条件２は、集合Ｗを構成するｗ本のうち任意のｍ本の論理セル間信号線が異なるｍ本の入力端子に同時に接続できる様にすることが必要である。従って、部分集合Ｗ１  の要素である論理セル間信号線のうち任意の論理セル間信号線（∀Ｗｊ  ∈Ｗ１  ）に少なくともｍ個のプログラムスイッチが接続されていることを必要とする。これが、条件２の補題である。
【００４１】
上記の条件２の補題を、以下にて立証する。条件１によれば、部分集合Ｗ０  のｎ本の論理セル間信号線が入力端子に接続できる。従って、ｎより小さいｍ本の論理セル間信号線は必ず異なった入力端子に接続できる。そこで、集合Ｗ０  のうちｍ０  本、集合Ｗ１  のうちｍ１  （ｍ０  ＋ｍ１  ＝ｍ）本を同時に入力端子に接続するものとする。
【００４２】
すると、（１）ｍ１  ＝０且つｍ０  ＝ｍのケースは、上記の条件１の補題に含まれる。即ち、図３に示される通り、平面Ｐ０  側の任意のｍ本の論理セル間信号線は同時に入力端子に接続可能である。
【００４３】
また、（２）ｎ＞ｍ１  ＞０且つｎ＞ｍ０  ＞０のケースでは、ＳＶ  （Ｗ０  ）の接続状態はＳＶ  （Ｗ１  ）の接続状態と無関係であるので、集合Ｗ１  内のそれぞれの論理セル間信号線には少なくともｍ個のプログラムスイッチを接続することが必要である。即ち，Ｓｖ  （Ｗ０  ）の接続状態により、最悪でもＳｖ  （Ｗ１  ）が接続される一部の入力端子がＷ０  のいずれかに接続されたとしても、Ｗ１  内にはそれぞれｍ個のプログラムスイッチが配置されているので、ｍ１  本を同時に入力端子に接続できるのである。
【００４４】
更に、（３）ｍ１  ＝ｍ且つｍ０  ＝０のケースは上記ケース（２）に含まれる。即ち、Ｗ１  内のｍ個のプログラムスイッチを利用して、異なるｍ本の入力端子に接続可能である。Ｐ１  内でプログラムスイッチのない入力端子は、それと可換なスイッチを持つ入力端子により論理セル間信号線に接続されうる。
【００４５】
これらの３つのケースを検討すると、上記の補題が正しいことが理解される。即ち、上記補題のもとでプログラムスイッチ数を最小にする為には、ＳＶ  （Ｗ１  ）をｍ個にすればよい。
【００４６】
かかる結論に基づき、図４に、図３のｗ＝１０，ｎ＝６の配置平面において、ｍ＝４とした時のプログラムスイッチの配置例を示す。この例では、平面Ｐ１  側にｍ本の入力端子Ｎ０  〜Ｎ３  と論理セル間信号線Ｗ１  との交点にプログラムスイッチが設けられる。従って、図４に示したプログラムスイッチの配置例が、最小の個数のプログラムスイッチで条件１と２を同時に満たす例である。
【００４７】
平面Ｐ１  内の入力端子Ｎ４  Ｎ５  と論理セル間信号線との交点にプログラムスイッチが設けられないことが、本発明の特徴的な点として注目される。即ち、可換な入力端子Ｎ０  〜Ｎ５  のうちｎ本全てが異なる論理セル間信号線に接続されることは希であるので、ｍ本に対してのみプログラムスイッチが接続される。最も少ないプログラムスイッチ数で、条件２を満たす様に配置した結果、かかる交点にはプログラムスイッチが設けられない。
【００４８】
次に、条件３を満たす為に、図４の例に示されたプログラムスイッチの位置を移動させる方法について説明する。条件３は、それぞれの論理セル間信号線及び入力端子に接続されるプログラムスイッチの数の差が最小であることである。この条件は、既に説明した通り、各論理セル間信号線や入力端子に接続されるプログラムスイッチの数のバラツキを最小限にして、スキューを少なくし、最悪ケースでの負荷の数を最小限にし、論理回路全体の速度を高くすることを意味する。通常、論理回路の速度は、最悪ケースでの速度に拘束されるからである。
【００４９】
従って、条件３が満たされるべき補題は、
｜ＳＶ  （｛Ｗｉ  ｝）の個数−ＳＶ  （｛Ｗｊ｝）の個数｜≦１
であり、
｜ＳＨ  （｛Ｗｋ  ｝）の個数−ＳＨ  （｛Ｗｌ  ｝）の個数｜≦１
である。
【００５０】
即ち、任意の論理セル間信号線に接続されるプログラムスイッチの個数が高々１個しか異ならないことであり、任意の入力端子に接続されるプログラムスイッチの個数が高々１個しか異ならないことである。そこで、図４に示した２２個のプログラムスイッチを、上記した条件１と２またはそれらの補題に違反しない範囲で移動させることで、上記の補題を満たすプログラムスイッチの配列の移動手続きを以下に説明する。
【００５１】
最初の移動手続きは、部分平面Ｐ１  におけるプログラムスイッチの移動手続きである。この移動手続きを、条件２あるいはその補題に違反しない範囲で行う為の補題は、部分平面Ｐ１  における論理セル間信号線に沿ったプログラムスイッチの縦方向の移動は条件に違反しないという点である。このことは、非常に単純な理由による。即ち、条件２の補題は、ＳＶ  （Ｗ１  ）をｍ個にすることであるので、論理セル間信号線に沿った縦方向のプログラムスイッチの移動は、それに違反しない。つまり、かかる移動はその論理セル間信号線に接続されるプログラムスイッチの数を変化させない。そして、入力端子は可換であるので、同じ論理セル間信号線上であれば、どこに位置しても条件２に反することはない。
【００５２】
図５は、部分平面Ｐ１  内の１６個のプログラムスイッチの移動手続きを説明する図である。手続きＰＲ１〜ＰＲ８に従って１６個のプログラムスイッチが部分平面Ｐ１  内に配置される。
【００５３】
手続きＰＲ１に示される通り、最初に部分平面Ｐ１  を用意する。この部分平面Ｐ１  の例には、図３、４で示した通り４本の論理セル間信号線Ｗ１  と、６本の入力端子Ｎとが設けられる。そして、ＰＲ２の様に、論理セル間信号線と入力端子の一端に目標のプログラムスイッチの数を記入する四角１２、１４を準備する。この四角１２には、平面Ｐ１  内のプログラムスイッチの集合Ｓ１  の要素数（＝１６）を論理セル間信号線Ｗ１  の要素数（＝４）で減算して得られた切り捨て値（＝１６／４＝４）を記入する。ＰＲ３に示す通りである。また、四角１４側にも、同様に平面Ｐ１  内のプログラムスイッチの集合Ｓ１  の要素数（＝１６）を入力端子Ｎの要素数（＝６）で減算して得られた切り捨て値（＝１６／６＝２（余り４））を記入する。これもＰＲ３に示される。そして、余りを持つなら、その余り値（＝４）の個数の四角１４に１を加算する。即ち、ＰＲ４の如くである。その結果、それぞれの四角１２、１４に記入された数値は、それぞれの論理セル間信号線若しくは入力端子に接続される最大のプログラムスイッチ数を表すことになる。これらの数値は、高々１の違いしかないことに注目すべきである。
【００５４】
次に、手続きＰＲ５に示される通り、平面の左上および右下から斜め方向にプログラムスイッチを配置する。この例では、４個づつ斜めに配置される。そして、同時に四角１２、１４から配置した数だけ減算する。次に、ＰＲ６の通り、論理セル間信号線もしくは入力端子のうち最もプログラムスイッチ数が少ない部分に、図中二重丸を付した新たなプログラムスイッチＳｎｅｗ  を配置する。同時に、その新たに配置したプログラムスイッチＳｎｅｗ  に対し平面の中心ｃｅｎｔｒｅから対象の位置にもプログラムスイッチＳｎｅｗ  を配置する。そして、同様に四角１２、１４から配置した数だけ減算する。
【００５５】
同様の手続きを繰り返し、手続きＰＲ７では更に２個のプログラムスイッチＳｎｅｗ  ，ＰＲ８では４個のプログラムスイッチＳｎｅｗ  が追加されて、全ての四角１２、１４が０になる。ＰＲ８に示された配置が、１６個のプログラムスイッチＳを、条件３を満たす位置に配置した状態である。図４の状態では、４本の論理セル間信号線が入力端子Ｎ０  〜Ｎ３  に対して同時に接続可能となる。しかし、入力端子Ｎ０  〜Ｎ５  は可換であるので、図５のＰＲ８の様に、論理セル間信号線Ｗ６  に対しては入力端子Ｎ０  Ｎ１  Ｎ２  Ｎ４  が同時に、論理セル間信号線Ｗ７  に対しては入力端子Ｎ０  Ｎ１  Ｎ２  Ｎ３  が同時に、論理セル間信号線Ｗ８  に対しては入力端子Ｎ２  Ｎ３  Ｎ４  Ｎ５  が同時に、そして論理セル間信号線Ｗ９  に対しては入力端子Ｎ１  Ｎ３  Ｎ４  Ｎ５  が同時に接続可能となっても条件２に違反しない。つまり、この状態は、条件２を満たすものである。
【００５６】
尚、条件３を満足するための手続きは、図４の平面Ｐ１  内のプログラムスイッチを論理セル間信号線に沿って移動させて資格４内の数値に一致させても良い。また、図５の手続きはあくまでも一例である。
【００５７】
図６は、上記の移動手続きに従って、部分平面Ｐ１  側を再配置した後の平面Ｐ０  とＰ１  の状態を示す図である。論理セル間信号線Ｗ０  〜Ｗ９  及び入力端子Ｎ０  〜Ｎ５  に対して付記した四角１２、１４にそれぞれのプログラムスイッチの数を示した。即ち、この状態では既に入力端子側では条件３を満たしている。そこで、次は、平面Ｐ０  とＰ１  の全体の平面内で、入力端子Ｎに沿って水平方向にプログラムスイッチＳを移動させれば、四角１２内の個数が高々１しか異ならないという条件３を満たす配置にすることができる。
【００５８】
ここで、同様に水平方向の移動に際して、条件１と２に違反しない範囲で移動させることが必要である。図６の四角１２内の数値にある通り、条件３のための入力端子方向の移動は、平面Ｐ１  から平面Ｐ０  への移動に限られる（但しｍ＞１）。したがって、条件１を満たす平面Ｐ０  側のプログラムスイッチを移動させない場合、条件１を満たす範囲で平面Ｐ０  側のプログラムスイッチを平面Ｐ０  側に移動させれば良い。
【００５９】
そして、かかる移動は、入力端子Ｎ０  〜Ｎ１  が可換入力群であることが大切なポイントとなる。即ち、可換入力群とは、上記定義にある通り、例えば入力端子Ｎ３  とＮ２  に入力される値が交換されても、その論理回路の出力は変わらないことである。
【００６０】
そこで、図６において、プログラムスイッチＳ３７を水平方向に移動させる場合を考える。例えば入力端子Ｎ３  とＮ２  は可換入力対であるので、破線の通り、プログラムスイッチＳ３７が接続される論理セル間信号線Ｗ７  に接続される他のプログラムスイッチＳ２７に注目する。そのプログラムスイッチＳ２７に接続される入力端子Ｎ２  に接続される他のプログラムスイッチＳ２２を経由して、当該プログラムスイッチＳ２２に接続される論理セル間信号線Ｗ２  と入力端子Ｎ３  との交点（破線）に、プログラムスイッチＳ３２として、Ｓ３７を移動させることができる。
【００６１】
即ち、入力端子Ｎ３  に対しては、論理セル間信号線Ｗ７  がスイッチＳ３７を介して入力される。その時に、入力端子Ｎ２  に対しては、論理セル間信号線Ｗ２  がスイッチＳ２２を介して入力される。Ｗ７  は既に入力端子Ｎ３  に入力されているからである。即ち、Ｗ２  とＷ７  とがＮ２  とＮ３  に同時に接続可能になっている。そこで、プログラムスイッチＳ３７をＳ３２の位置に移動しても、入力端子Ｎ３  にはプログラムスイッチＳ３２を介して論理セル間信号線Ｗ２  が、入力端子Ｎ２  にはプログラムスイッチＳ２７を介して論理セル間信号線Ｗ７  がそれぞれ入力可能である。従って、単に入力端子Ｎ２  ，Ｎ３  に対して論理セル間信号線Ｗ７  とＷ２  とが交換されただけであり、依然としてＷ２  とＷ７  とは同時に入力端子に接続可能である。しかも、入力端子Ｎ２  、Ｎ３  は可換可能入力である。
【００６２】
同様にして、プログラムスイッチＳ３７は、Ｓ３１とＳ３０の位置に移動可能である。
【００６３】
かかる水平方向の移動のルールをまとめると、以下の通りである。
【００６４】
ルール：Ｗｉ  ∈Ｗ１  ，Ｓｗｉ＝Ｓｖ  （Ｗｉ  ），Ｓｊ  ∈Ｓ１  （平面Ｐ１  内のプログラムスイッチ）とする。この時、プログラムスイッチＳｊ  を、
次の論理セル間信号線の集合
ＷＶ  （ＳＨ  （ＷＨ  （ＳＷｉ＼｛Ｓｊ  ｝））∩Ｓ０  ）            （１）
と、次の入力端子の集合
ＷＨ  （｛Ｓｊ  ｝）                            （２）
（但し、ＳＷｉ＼｛Ｓｊ  ｝は集合ＳＷｉからプログラムスイッチＳｊ  を除いた差集合であり、ＳＨ  ∩Ｓ０  は積集合である。）との交点集合に移動しても良い。
【００６５】
図６の例で説明すると、Ｓｊ  ＝Ｓ３７の場合に、集合（１）は論理セル間信号線Ｗ０  Ｗ１  Ｗ２  であり、集合（２）は入力端子Ｎ３  である。従って、論理セル間信号線Ｗ０  Ｗ１  Ｗ２  と入力端子Ｎ３  との交点に移動可能になる。
【００６６】
それでは、上記のルールに従う水平方向のプログラムスイッチの移動の具体的手続きについて説明する。図７は、平面全体の中で水平方向に移動させる具体的な手続きを説明する図である。
【００６７】
最初に、論理セル間信号線１０本と入力端子６本の平面Ｐを用意する（手続きＰＲ１）。そして、それぞれの線の一端に四角１２、１４を付加する（手続きＰＲ２）。そこで、図６の平面Ｐ１  の左から半分の２本の論理セル間信号線Ｗ６  Ｗ７  に設けられたプログラムスイッチを新しい平面の左から順にコピーする。同様に、平面Ｐ１  の右から半分の２本の論理セル間信号線Ｗ８  Ｗ９  を、新しい平面の右から順にコピーする。そして、新しい平面の中央に平面Ｐ０  をコピーする。この状態がＰＲ３に示される。平面Ｐ１  を左右に分割したのは、平面全体をできるだけ対称にするためであり、特に必要な条件ではない。
【００６８】
そこで、ＰＲ４の如く、四角１２、１４に目標とするプログラムスイッチの個数を記入する。この個数は、全プログラムスイッチ数をそれぞれの本数で除算した値または、余り値の数の四角にそれぞれ＋１をした値とする。従って、四角１２には、３２２．．２３が、四角１４には３４４４４３がそれぞれ記入される。これが目標値である。
【００６９】
この状態から、上記したルールに従って、論理セル間信号線上のプログラムスイッチの個数が目標値よりも多い線上のプログラムスイッチを水平方向に移動させる。
【００７０】
手続きＰＲ５に示される様に、プログラムスイッチＳ３７はＳ３２の位置に移動可能であり、プログラムスイッチＳ３２が移動後のプログラムスイッチＳｍｏｖ  となる。その結果、論理セル間信号線Ｗ２  は目標値の２個に達する。次に、ＰＲ６に示される通り、プログラムスイッチＳ３７の移動に続いて、それと対象位置にあるプログラムスイッチＳ２８を同様にＳ２３＝Ｓｍｏｖ  の位置に移動する。その結果、論理セル間信号線Ｗ３  も目標値に達する。
【００７１】
同様の移動を、目標値よりも多い論理セル間信号線Ｗ６  Ｗ７  Ｗ８  Ｗ９  のプログラムスイッチに対しても実施する。ＰＲ７に示される通り、この例では、プログラムスイッチＳ４６、Ｓ２７、Ｓ３８、Ｓ１９がそれぞれ２重丸を付したＳｍｏｖ  に移動する。これで、全ての論理セル間信号線、入力端子に接続されるプログラムスイッチの数がそれらの目標値と一致する。
【００７２】
このＰＲ７に示されるプログラムスイッチの個数と配置が、条件１と条件２及び条件３を満足する配置例の一つである。
【００７３】
図８と図９は、上記の条件３を満足させるための入力端子方向のプログラムスイッチの移動であるが、条件２に違反する例を示す図である。
【００７４】
図８では、破線で示したプログラムスイッチ１５と１６を図示される位置に移動した例である。移動前は、１９に示される２本の論理セル間信号線は、同時に異なる２本の入力端子に接続可能である。しかし、スイッチ１６の移動が上記のルールに違反しているので、移動後は、上記１９の２本の論理セル間信号線が同時に２本の入力端子に接続できなくなる。即ち、２本の論理セル間信号線１９がスイッチ１７でコンフリクト（競合）を起こしてしまう。
【００７５】
図９では、破線で示したプログラムスイッチ１５と１６を図示される位置に移動した例である。移動前は、２本の論理セル間信号線１９が同時に２本の入力端子に接続可能であるが、移動後は、それが不可能になる。この例では、スイッチ１５と１６の個々の移動はそれぞれ上記ルールに反していない。しかし、両方とも移動することは、条件２に反する。そして、そもそも、論理セル間信号線１８上のプログラムスイッチの数が多くなりすぎているので、条件３にも反する。
【００７６】
図１０は、上記したプログラムスイッチの個数と配置を行うフローチャート図である。そして、図１１乃至図１４にて、別の例におけるプログラムスイッチの配置方法の各ステップ毎の図を示す。図１１乃至図１４を参照しながらフローチャートを説明する。
【００７７】
先ず、接続部のプログラムスイッチの配置の方法は、論理セル間信号線Ｗ、入力端子Ｎ、及び条件２のｍを設定して、ｗ本の論理セル間信号線とｎ本の入力端子線を有する平面を準備する（ステップＳ１）。図１１乃至図１４の例は、ｗ＝１２，ｎ＝６，ｍ＝３である。ｍの本数は、ＦＰＧＡの使用内容により決定される。よりフレキシビリティを高くしたいときはｍはｎに近い値となり、フレキシビリティを低くしても論理回路の面積効率を高くしたい場合は、ｍは小さい値となる。
【００７８】
次に、図１１に示される通り、平面Ｐ０  において、斜め方向にプログラムスイッチを並べる。即ち、論理セル間信号線に１個づつのプログラムスイッチが接続され、入力端子線に１個づつのプログラムスイッチが接続される（ステップＳ２）。これは、条件１を満たす配置である。
【００７９】
更に、図１１に示される通り、残りの平面Ｐ１  において、論理セル間信号線にそれぞれｍ個のプログラムスイッチを並べる（ステップＳ３）。これは、条件２を満たす配置である。
【００８０】
この状態で、ｗ＝１２本の論理セル間信号線のうち任意に選択されたｍ＝３本の信号線が、同時にいずれかのｍ＝３本の入力端子に接続可能となる。このことは、逆に言えば、ｍ＝３本の入力端子が同時に異なる論理セル間信号線に接続可能であることを意味する。
【００８１】
そして、ステップＳ４では、条件３の入力端子線に沿ったプログラムスイッチの個数を平均化する為に、平面Ｐ１  内にて論理セル間信号線に沿った移動を行う。図１２に示される通り、平面Ｐ１  内に最初に黒丸を付したプログラムスイッチを並べ、平面Ｐ１  の中心に対称にさらに白丸のプログラムスイッチを並べる。その結果、論理セル間信号線にそって３個づつ、入力端子線にそって３個づつプログラムスイッチが並べられる。
【００８２】
次に、ステップ４において、条件３の論理セル間信号線に沿ったプログラムスイッチの個数を平均化する移動工程が行われる。図１３に示される様に、全体の平面内に、右側に平面Ｐ１  の右側半分が、左側に平面Ｐ１  の左半分がコピーされ、その中央に平面Ｐ０  がコピーされる。この状態から、それぞれの四角に記入した目標値になる様に、平面Ｐ１  内のプログラムスイッチの内、二重丸をつけたプログラムを、上記したルールに従って移動する。図１３中に矢印で示した位置に水平移動される。その結果、図１４に二重丸で示される位置に破線の位置にあったプログラムスイッチが移動し、論理セル間信号線上のプログラムスイッチの個数は平均化される。
【００８３】
図１４に示された接続部内のプログラムスイッチの配置によれば、論理セル間信号線のうちｎ（＝６）本を入力端子に接続でき（条件１）、任意のｍ（＝３）本をいずれかの入力端子に接続でき（条件２）、そして、論理セル間信号線及び入力端子に接続されるプログラムスイッチの数の差が、１以下になる（条件３）。
【００８４】
図１５は、プログラムスイッチの１例を示す図である。この例では、論理セル間信号線Ｗと入力端子の線Ｎとの間にＣＭＯＳのトランスファースイッチが設けられる。そして、プログラムされた状態信号２０によりこのスイッチが導通状態にされて論理セル間信号線Ｗと入力端子Ｎとを接続する。この様に、単に導通、非導通のスイッチによるものを受動型のプログラムスイッチと称する。他には、例えば、溶融により非導通になるヒューズ型のプログラムスイッチ、電極の溶融により接合を破壊して導通状態になるＰＮＰ型のプログラムスイッチ、そして、容量や抵抗等により構成される受動型のプログラムスイッチでも良い。
【００８５】
図１６は、さらにプログラムスイッチの別の例を示す図である。この例では、ＡＮＤゲートの一方の入力に論理セル間信号線Ｗを、その出力に入力端子Ｎを接続し、ＡＮＤゲートの他方の入力に状態信号３０が与えられる。状態信号３０がＨレベルの場合は、論理セル間信号線ＷのＨ，Ｌレベルがそのまま入力端子Ｎ側に伝えられる。それに対して、状態信号３０がＬレベルの時は、論理セル間信号線Ｗの状態にかかわらず入力端子Ｎには常にＬレベルが与えられる。従って、状態信号３０がＨレベルの時にプログラムスイッチが導通状態になるということができる。
【００８６】
このようなゲート回路を利用すると、論理セル間信号線Ｗの信号を再度増幅して入力端子Ｎに伝えることができる。かかるプログラムスイッチを能動型のプログラムスイッチと称する。
【００８７】
【発明の効果】
以上説明した通り、本発明によれば、最小の数のプログラムスイッチを最適の位置に配置することができるので、接続部の構成を簡単にしその占有面積を小さくすることができる。そして、かかる接続部を有する論理回路、例えばＦＰＧＡや、マルチマイクロプロセッサシステムにおいて、論理回路の面積効率（ゲート当たりのチップ面積）をあげることができる。
【００８８】
更に、本発明の接続部の設計方法によれば、最小の数のプログラムを最適の位置に非常に簡単な工程で設計することができる。
【図面の簡単な説明】
【図１】一般的なＦＰＧＡの構成図である。
【図２】接続部の一例を示す回路図である。
【図３】ｗ＝１０，ｎ＝６の時のプログラムスイッチの配置平面の例の図である。
【図４】ｗ＝１０，ｎ＝６の配置平面において、ｍ＝４とした時のプログラムスイッチの配置例を示す図である。
【図５】部分平面Ｐ１  内の１６個のプログラムスイッチの移動手続きを説明する図である。
【図６】部分平面Ｐ１  側を再配置した後の平面Ｐ０  とＰ１  の状態を示す図である。
【図７】平面全体の中で水平方向に移動させる具体的な手続きを説明する図である。
【図８】条件３を満足させるための入力端子方向のプログラムスイッチの移動であるが、条件２に違反する例を示す図である。
【図９】条件３を満足させるための入力端子方向のプログラムスイッチの移動であるが、条件２に違反する例を示す図である。
【図１０】プログラムスイッチの個数と配置を行うフローチャート図である。
【図１１】別の例におけるプログラムスイッチの配置方法を示す図である。
【図１２】別の例におけるプログラムスイッチの配置方法を示す図である。
【図１３】別の例におけるプログラムスイッチの配置方法を示す図である。
【図１４】別の例におけるプログラムスイッチの配置方法を示す図である。
【図１５】プログラムスイッチの１例を示す図である。
【図１６】プログラムスイッチの別の例を示す図である。
【符号の説明】
Ｗ        論理セル間信号線、第一の信号線
Ｎ        入力端子線、第二の信号線
Ｓ        スイッチ手段、プログラムスイッチ
Ｌ        論理セル
Ｃ        接続領域
Ｐ０      第一の領域
Ｐ１      第二の領域
【図１】
0003614264.tif 000002
【図２】
0003614264.tif 000003
【図３】
0003614264.tif 000004
【図４】
0003614264.tif 000005
【図５】
0003614264.tif 000006
【図６】
0003614264.tif 000007
【図７】
0003614264.tif 000008
【図８】
0003614264.tif 000009
【図９】
0003614264.tif 000010
【図１０】
0003614264.tif 000011
【図１１】
0003614264.tif 000012
【図１２】
0003614264.tif 000013
【図１３】
0003614264.tif 000014
【図１４】
0003614264.tif 000015
【図１５】
0003614264.tif 000016
【図１６】
0003614264.tif 000017