(57)【要約】  回路設計システム１０は、複数のスイッチ２を含むセル１のアレイからなる、再構成可能回路の構造記述情報１１ａと、アプリケーションを特定するためのアプリケーション回路ネットリスト情報１１ｂと、を記憶する記憶手段１１と、記憶手段１１に記憶された構造記述情報１１ａと、アプリケーション回路ネットリスト情報１１ｂと、に基づいて、構造記述情報１１ａを生成する回路生成手段１２ａと、回路生成手段１２ａにより生成された構造記述情報１１ａを評価する回路評価手段１２ｂと、を備える回路設計システム１０であって、回路生成手段１２ａは、回路評価手段１２ｂによる評価結果に基づいて、構造記述情報１１ａから少なくとも１個のスイッチ２を削除して、構造記述情報１１ａを生成する。
2009147789.tif 000002
【特許請求の範囲】
【請求項１】
複数のスイッチを含むセルのアレイからなる、再構成可能回路の構造記述情報と、アプリケーションを特定するためのアプリケーション回路情報と、を記憶する記憶手段と、
前記記憶手段に記憶された前記構造記述情報と、前記アプリケーション回路情報と、に基づいて、前記構造記述情報を生成する回路生成手段と、
前記回路生成手段により生成された前記構造記述情報を評価する回路評価手段と、を備え、
前記回路生成手段は、前記回路評価手段による評価結果に基づいて、前記構造記述情報から少なくとも１個の前記スイッチを削除して、前記構造記述情報を生成する、ことを特徴とする回路設計システム。
【請求項２】
請求項１記載の回路設計システムであって、
前記回路生成手段は、生成された前記構造記述情報のうち、前記スイッチの数が最少となる前記構造記述情報を採用する、ことを特徴とする回路設計システム。
【請求項３】
請求項１又は２記載の回路設計システムであって、
前記回路生成手段は、全ての前記セルから同一の前記スイッチを削除する均一スイッチ削除を行い、該均一スイッチ削除後に、前記各セルから異なる前記スイッチを削除する不均一スイッチ削除を行う、ことを特徴とする回路設計システム。
【請求項４】
請求項３記載の回路設計システムであって、
前記不均一スイッチ削除において、前記回路生成手段は、前記セルのアレイにおける偶数列のセルのスイッチと、奇数列のセルのスイッチとを交互に削除する、ことを特徴とする回路設計システム。
【請求項５】
請求項３記載の回路設計システムであって、
前記不均一スイッチ削除において、前記回路生成手段は、前記セルのアレイにおける偶数行のセルのスイッチと、奇数行のセルのスイッチとを交互に削除する、ことを特徴とする回路設計システム。
【請求項６】
請求項４又は５記載の回路設計システムであって、
回路生成手段は、前記回路生成手段により前記列毎に各セルのスイッチが削除され、生成された前記構造記述情報と、前記行毎に各セルのスイッチが削除され、生成された前記構造記述情報と、のうち評価が良好な方を採用する、ことを特徴とする回路設計システム。
【請求項７】
請求項１乃至６のうちいずれか１項記載の回路設計システムであって、
前記記憶手段は、前記回路評価手段による評価結果に基づいて、前記回路生成手段により前記スイッチが削除されたときのスイッチ削除パターンを、禁止リスト情報として記憶し、
前記回路生成手段は、前記スイッチを削除したときの前記スイッチ削除パターンが、前記記憶手段に記憶された前記禁止リスト情報のスイッチ削除パターンと一致するとき、前記構造記述情報を生成しない、ことを特徴とする回路設計システム。
【請求項８】
請求項１乃至７のうちいずれか１項記載の回路設計システムであって、
前記回路生成手段は、前記回路情報の全てのセルから未使用の前記スイッチを削除して、前記構造記述情報を生成する、ことを特徴とする回路設計システム。
【請求項９】
請求項８記載の回路設計システムであって、
前記回路評価手段による、前記未使用のスイッチが削除された前記構造記述情報に対する評価結果が良好でないとき、前記回路生成手段は削除した前記未使用のスイッチの一部を元に戻す、ことを特徴とする回路設計システム。
【請求項１０】
請求項１乃至９のうちいずれか１項記載の回路設計システムであって、
前記回路生成手段は、前記構造記述情報の全てのセルから低使用頻度の前記スイッチを削除して、前記構造記述情報を生成する、ことを特徴とする回路設計システム。
【請求項１１】
請求項１０記載の回路設計システムであって、
前記低使用頻度のスイッチは、前記セルのアレイのうち１、２又は３つの前記セルでのみ使用されているスイッチである、ことを特徴とする回路設計システム。
【請求項１２】
請求項１記載の回路設計システムであって、
前記回路評価手段は、生成された前記構造記述情報における配置及び配線の可否、配線性、回路遅延、消費電力、前記スイッチの数、及び、回路面積のうち少なくとも１つを評価する、ことを特徴とする回路設計システム。
【請求項１３】
複数のスイッチを含むセルのアレイからなる、再構成可能回路の構造記述情報と、アプリケーションを特定するためのアプリケーション回路情報と、を記憶し、
前記記憶された前記構造記述情報と、前記アプリケーション回路情報と、に基づいて、前記構造記述情報を生成し、
前記生成された前記構造記述情報を評価し、
前記評価結果に基づいて、前記構造記述情報から少なくとも１個の前記スイッチを削除して、前記構造記述情報を生成する、ことを特徴とする回路設計方法。
【請求項１４】
請求項１３記載の回路設計方法であって、
前記生成された前記構造記述情報のうち、前記スイッチの数が最少となる前記構造記述情報を採用する、ことを特徴とする回路設計方法。
【請求項１５】
請求項１３又は１４記載の回路設計方法であって、
全ての前記セルから同一の前記スイッチを削除し、
該削除後に、前記各セルから異なる前記スイッチを削除する、ことを特徴とする回路設計方法。
【請求項１６】
請求項１３乃至１５のうちいずれか１項記載の回路設計方法であって、
前記評価結果に基づいて、前記スイッチが削除されたときのスイッチ削除パターンを、禁止リスト情報として記憶し、
前記スイッチを削除したときの前記スイッチ削除パターンが、前記記憶した前記禁止リスト情報のスイッチ削除パターンと一致するとき、前記構造記述情報を生成しない、ことを特徴とする回路設計方法。
【請求項１７】
複数のスイッチを含むセルのアレイからなる、再構成可能回路の構造記述情報と、アプリケーションを特定するためのアプリケーション回路情報と、に基づいて、前記構造記述情報を生成する処理と、
前記生成された前記構造記述情報を評価する処理と、
前記評価結果に基づいて、前記構造記述情報から少なくとも１個の前記スイッチを削除して、前記構造記述情報を生成する処理と、をコンピュータに実行させるプログラムを格納する記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、回路設計システムおよび回路設計方法に関するものであり、より詳細には、複数のスイッチを含むセルのアレイからなる、再構成可能回路の構造記述情報と、アプリケーション回路ネットリスト情報と、に基づいて、構造記述情報を生成する回路設計システムおよび回路設計方法に関するものである。
【背景技術】
【０００２】
近年、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）やプログラマブルロジックデバイス（ＰＬＤ）等の再構成可能回路（プログラマブル論理回路）は、きわめて多様な回路を実現できる柔軟性を有するため、デジタル回路装置等の分野において広範に使用されている。一方で、この再構成可能回路には、高度な柔軟性を実現するために大量のスイッチが使用されているため、その回路面積が大きくなり、コストが高くなるという問題点が生じている。【０００３】
この問題を解決すべく、応用領域（アプリケーション）を限定し、その応用領域をカバーするのに十分なだけの柔軟性を有するように、アプリケーションを特定した再構成可能な回路の適用が考えられる。このアプリケーションを特化した再構成可能回路は、汎用のものに比べて柔軟性は制限されるが、大幅に回路面積を縮小できる利点がある。【０００４】
一方で、プログラマブル論理回路に構成する回路を特定するために、アプリケーションプログラムにより指定される回路情報により、プログラマブル論理回路に指定された回路を構成する情報処理システムが知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０００−１２４３１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記関連する情報処理システムにおいて、特定のアプリケーション回路に特化した、すなわち応用領域を特定した再構成可能な回路を構成することができる。しかしながら、当該情報処理システムにおいて、例えば、記述を簡略化し、かつ、アプリケーションに応じた構造調整を容易にするため、簡単なパラメータ指定で再構成可能回路の構造を記述する、ハイレベルアーキテクチャ記述が用いられる。このため、上記構造調整が大凡となり、回路面積の縮小効果が低下する虞がある。【０００７】
本発明は、このような問題点を解決するためになされたものであり、回路面積を効果的に縮小することができる回路設計システム及び回路設計方法を提供することを主たる目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するための本発明の一態様は、複数のスイッチを含むセルのアレイからなる、再構成可能回路の構造記述情報と、アプリケーションを特定するためのアプリケーション回路情報と、を記憶する記憶手段と、前記記憶手段に記憶された前記構造記述情報と、前記アプリケーション回路情報と、に基づいて、前記構造記述情報を生成する回路生成手段と、前記回路生成手段により生成された前記構造記述情報を評価する回路評価手段と、を備え、前記回路生成手段は、前記回路評価手段による評価結果に基づいて、前記構造記述情報から少なくとも１個の前記スイッチを削除して、前記構造記述情報を生成する、ことを特徴とする回路設計システムである。【０００９】
他方、上記目的を達成するための本発明の一態様は、複数のスイッチを含むセルのアレイからなる、再構成可能回路の構造記述情報と、アプリケーションを特定するためのアプリケーション回路情報と、を記憶する記憶工程と、前記記憶工程で記憶された前記構造記述情報と、前記アプリケーション回路情報と、に基づいて、前記構造記述情報を生成する回路生成工程と、前記回路生成工程で生成された前記構造記述情報を評価する回路評価工程と、を含む回路設計方法であって、前記回路生成工程において、前記回路評価工程による評価結果に基づいて、前記構造記述情報から少なくとも１個の前記スイッチを削除して、前記構造記述情報を生成する、ことを特徴とする回路設計方法である。
また、上記目的を達成するための本発明の一態様は、複数のスイッチを含むセルのアレイからなる、再構成可能回路の構造記述情報と、アプリケーションを特定するためのアプリケーション回路情報と、に基づいて、前記構造記述情報を生成する処理と、
前記生成された前記構造記述情報を評価する処理と、
前記評価結果に基づいて、前記構造記述情報から少なくとも１個の前記スイッチを削除して、前記構造記述情報を生成する処理と、をコンピュータに実行させるプログラムを格納する記憶媒体である。
【発明の効果】
【００１０】
本発明によれば、回路面積を効果的に縮小することができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の第１実施形態に係る回路設計システムの機能を示すブロック図である。
【図２】本発明の第１実施形態に係る回路設計システムのシステム構成の一例を示すブロック図である。
【図３】各セルを２次元アレイ状に配置した、構造記述情報によって表わされる再構成可能回路の一例を示すブロック図である。
【図４】構造記述情報によって表わされる再構成可能回路を構成するセルの一構成例を示すブロック図である。
【図５】構造記述情報によって表わされる再構成可能回路のマルチプレクサの構成の一例を示すブロック図である。
【図６】マルチプレクサのスイッチの一構成例を示すブロック図である。
【図７】第１実施形態に係る回路設計システムの回路設計方法のフローの一例を示すフローチャートである。
【図８】スイッチ削除処理における処理フローの一例を示すフローチャートである。
【図９Ａ】全てのセルから同一のスイッチが削除される均一スイッチ削除の一例を示す図である。
【図９Ｂ】全てのセルから同一のスイッチが削除される均一スイッチ削除の一例を示す図である。
【図１０Ａ】最少均一再構成回路のセルアレイの一例を示す図である。
【図１０Ｂ】最少均一再構成回路のセルアレイのうち奇数列の各セルからスイッチを不均一削除したセルアレイの一例を示す図である。
【図１０Ｃ】最少均一再構成回路のセルアレイのうち奇数列の各セルからスイッチを不均一削除したセルアレイの一例を示す図である。
【図１１】最少均一再構成回路のセルアレイのうち奇数行の各セルからスイッチを不均一削除したセルアレイの一例を示す図である。
【図１２Ａ】スイッチ削除処理が行わる前の再構成可能回路の一例を示す図である。
【図１２Ｂ】再構成可能回路に対して均一スイッチ削除を行って構成した最少均一再構成回路の一例を示す概略図である。
【図１２Ｃ】最少均一構成回路に対して行不均一スイッチ削除を行って構成した最少不均一構成回路の一例を示す図である。
【図１２Ｄ】最少均一構成回路に対して列不均一スイッチ削除を行って構成した最少不均一構成回路の一例を示す図である。
【図１２Ｅ】最少均一構成回路に対して不均一スイッチ削除を行った一構成例であり、チェッカー模様状の不均一スイッチ削除の一例である。
【図１３】本発明の第２実施形態に係る回路設計システムのフローの一例を示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下、本発明を実施するための最良の形態について、添付図面を参照しながら実施形態を挙げて説明する。
（第１実施形態）
【００１３】
図１は、本発明の第１実施形態に係る回路設計システムの機能を示すブロック図である。第１実施形態に係る回路設計システム１０は、再構成可能回路の構造記述情報１１ａと、アプリケーション回路ネットリスト情報１１ｂと、を記憶する記憶手段１１と、構造記述情報１１ａと、アプリケーション回路ネットリスト情報１１ｂと、に基づいて、構造記述情報を生成する回路生成手段１２ａと、生成された構造記述情報１１ａを評価する回路評価手段１２ｂと、を備えている。
【００１４】
上記構造記述情報１１ａは、複数のスイッチを含むセルのアレイからなり、アプリケーション回路ネットリスト情報１１ｂは、再構成可能回路のアプリケーションを特定する。回路生成手段１２ａは、回路評価手段１２ｂによる評価結果に基づいて、構造記述情報１１ａから少なくとも１個のスイッチを削除して、構造記述情報を生成する。これにより、回路面積を効果的に縮小することができる。
【００１５】
図２は、本発明の第１実施形態に係る回路設計システム１０のシステム構成の一例を示すブロック図である。第１実施形態に係る回路設計システム１０は、記憶装置１１と、ＣＡＤ装置１２と、を備えている。
【００１６】
記憶装置１１は、複数のスイッチを含むセル１の配列（セルアレイ）からなる再構成可能回路の構造記述情報（以下、構造記述情報と称す）１１ａと、アプリケーション回路ネットリスト情報１１ｂと、を記憶している。
【００１７】
構造記述情報（アーキテクチャ記述情報）１１ａは、非常に多様なアプリケーション回路をマッピングできるマザーアーキテクチャ記述情報（初期構造記述情報）となっている。この初期構造記述情報は、配線やスイッチ等の配線リソースを多数有する再構成可能回路を、個々のスイッチや配線を指定した配線リソースグラフのような、詳細な構造記述（以下、単に構造記述と称す）で表現したものである。なお、初期構造の構造記述は、記憶装置１１に最初に記憶させるだけで良いため、構造記述のための人的負担が従来に比べてそれほど大きくない。
【００１８】
また、アプリケーション回路ネットリスト情報１１ｂは、再構成可能回路（プログラマブル論理回路）にマッピングするアプリケーション回路を特定するためのネットリスト情報である。
【００１９】
記憶装置１１は、上記構造記述情報１１ａ及びアプリケーション回路ネットリスト情報１１ｂを、単数又は複数、記憶している。また、記憶装置１１としては、例えば、磁気ディスク装置、または光ディスク装置が用いられている。
【００２０】
ＣＡＤ（Computer Aided Design）装置１２は、構造記述情報１１ａを生成する回路生成部１２ａと、生成された構造記述情報１１ａを評価する回路評価部１２ｂと、を備えている。
【００２１】
回路生成部１２ａは、記憶装置１１に記憶された構造記述情報１１ａと、アプリケーション回路ネットリスト情報１１ｂとに基づいて、構造記述情報１１ａを生成する。また、回路生成部１２ａは、例えば、構造記述情報１１ａを取り込んだ配置配線ツールに、アプリケーション回路ネットリスト情報１１ｂをマッピングし、配置及び配線を行う。
【００２２】
回路評価部１２ｂは、回路生成部１２ａにより生成された構造記述情報１１ａを評価する。回路評価部１２ｂは、例えば、構造記述情報１１ａにアプリケーション回路ネットリスト情報１１ｂをマッピングしたときの配置及び配線の可否、配線性（配線の容易度又は難易度）、最大回路遅延（又はクリティカルパス遅延）、消費電力、スイッチの数、及び、回路面積のうち、少なくとも１つを評価する。
【００２３】
より具体的には、回路評価部１２ｂは、構造記述情報１１ａにアプリケーション回路ネットリスト情報１１ｂをマッピングしたときに配置及び配線が可能か否かを評価し、この配置及び配線が可能な場合に、構造記述情報１１ａによって表わされる回路の最大回路遅延及び／又は消費電力を、夫々の合格閾値と比較することで評価を行う。また、回路評価部１２ｂは、構造記述情報１１ａにアプリケーション回路ネットリスト情報１１ｂをマッピングしたときに配置及び配線が可能な場合に、構造記述情報１１ａのスイッチの数及び／又は回路面積を、夫々の合格閾値と比較することで評価を行う。さらに、回路評価部１２ｂは、構造記述情報１１ａにアプリケーション回路ネットリスト情報１１ｂをマッピングしたときに配置及び配線が可能な場合に上記組合せ（例えば、回路面積×回路遅延の値）と合格閾値を比較することで評価を行う。
【００２４】
なお、回路評価部１２ｂによる評価方法は、上記例示に限らず、ユーザにより任意に設定可能である。また、回路生成部１２ａは、回路評価部１２ｂによる評価結果に基づいて、構造記述情報１１ａから少なくとも１つのスイッチを削除して、構造記述情報１１ａを生成する。
【００２５】
また、ＣＡＤ装置１２は、主要なハードウェア構成として、制御処理、演算処理等を行うＣＰＵ（Central Processing Unit）と、ＣＰＵによって実行される制御プログラム、演算プログラム等を格納するＲＯＭ（Read Only Memory）と、処理データを一時的に格納等するＲＡＭ（Random Access Memory）と、を有している。また、上記回路生成部１２ａ及び回路評価部１２ｂは、例えば、上記ＲＯＭに記憶され、ＣＰＵによって実行されるプログラムによって実現されている。この場合、コンピュータプログラムは、記録媒体に記録して提供することも可能であり、また、インターネットその他の通信媒体を介して伝送することにより提供することも可能である。また、記憶媒体には、例えば、フレキシブルディスク、ハードディスク、磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ、ＲＯＭカートリッジ、バッテリバックアップ付きＲＡＭメモリカートリッジ、フラッシュメモリカートリッジ、不揮発性ＲＡＭカートリッジ等が含まれる。また、通信媒体には、電話回線等の有線通信媒体、マイクロ波回線等の無線通信媒体等が含まれる。
【００２６】
図３は、各セル１を２次元アレイ状に配置した、構造記述情報１１ａによって表わされる再構成可能回路の一例を示すブロック図である。図３において、各セル１ｘｙ（ｘはａ〜ｄ、ｙはａ〜ｄ）は、５つのスイッチ２ａ、２ｂ、２ｃ、２ｄ、２ｅを含み、同一の構成となっており、ｘ及びｙは各セル１の位置を表している。なお、図３において、ｘ及びｙが夫々ａ、ｂ、ｃ、及びｄから成る４行４列のセルアレイの例を示しているが、セルアレイの大きさは任意に設定可能である。
【００２７】
また、隣接する各セル１ｘｙは、水平方向に信号を伝送する配線３ａ、３ｂ、および、垂直方向に信号を伝送する配線３ｃ、３ｄを介して、相互に接続されている。さらに、各セル１ｘｙには、５つのスイッチ２ａ、２ｂ、２ｃ、２ｄ、２ｅが設けられているが、設けられるスイッチの数は任意でよい。
【００２８】
図４は、上記構造記述情報１１ａによって表わされる再構成可能回路を構成するセル１ｘｙの一構成例を示すブロック図である。各セル１ｘｙは１つの機能ブロック４と、６つのマルチプレクサ５ａ、５ｂ、５ｃ、５ｄ、５ｅ、５ｆと、を備えている。機能ブロック４は、コンフィギュレーションデータに応じて、多様な機能を設定できる。
【００２９】
マルチプレクサ５ｅ、５ｆは、コンフィギュレーションデータに応じて、配線群３ａ、３ｂ、３ｃ、３ｄから機能ブロック４への入力信号を選択する。一方、マルチプレクサ５ａ、５ｂ、５ｃ、５ｄは、コンフィギュレーションデータに応じて、配線群３ａ、３ｂ、３ｃ、３ｄ間、あるいは機能ブロック４の出力と配線群３ａ、３ｂ、３ｃ、３ｄ間を接続する。なお、マルチプレクサ５ａ〜５ｆおよび機能ブロック４の数、入力線の数、配線の本数、および配線の長さは、図４に示す例示に限定されるものではない。
【００３０】
図５は、構造記述情報１１ａによって表わされる再構成可能回路のマルチプレクサ５の構成の一例を示すブロック図である。マルチプレクサ５は、例えば、５つのスイッチ２ａ〜２ｅと、１つのバッファ６と、を備えている。５つの入力線７の各々は、スイッチ２ａ〜２ｅの一端に接続され、各スイッチ２ａ〜２ｅの他端はバッファ６の入力に接続されている。また、バッファ６の出力８がマルチプレクサ５ａ〜５ｆの出力となる。
【００３１】
なお、マルチプレクサ５には、５つの入力線７及びスイッチ２ａ〜２ｄが設けられているが、設けられる入力線７及びスイッチ２の数は任意でよく、また、異なる数の入力線７及びスイッチ２を備えるマルチプレクサ５が混在する構成でもよい。さらに、マルチプレクサ５は、図５の例示以外の周知の構成でもよく、上記例示に限定されるものではない。
【００３２】
図６は、マルチプレクサ５のスイッチ２の一構成例を示すブロック図である。スイッチ２は、コンフィギュレーションメモリ２１と、トランスミッションゲート２２と、を備えている。トランスミッションゲート２２の両端２２ａ、２２ｂ間が、接続状態あるいは遮断状態になるかは、コンフィギュレーションメモリ２１に保持されたコンフィギュレーションデータに基づいて決定される。また、コンフィギュレーションメモリ２１は、例えば、ＥＥＰＲＯＭ、ＳＲＡＭ等の書き換え可能なメモリ素子で構成されている。
【００３３】
次に、第１実施形態に係る回路設計システム１０の回路設計方法について説明する。図７は、第１実施形態に係る回路設計システム１０の回路設計方法のフローの一例を示すフローチャートである。
【００３４】
ＣＡＤ装置１２の回路生成部１２ａは、記憶装置１１に記憶された構造記述情報１１ａを読み込む（ステップＳ１００）。また、回路生成部１２ａは、記憶装置１１に記憶されたアプリケーション回路ネットリスト情報１１ｂを読み込む（ステップＳ１０１）。
【００３５】
次に、回路生成部１２ａは、例えば、構造記述情報１１ａを取り込んだ配置配線ツールで、構造記述情報１１ａによって表わされる再構成可能回路上に、アプリケーション回路ネットリスト情報１１ｂによって表わされるアプリケーション回路を配置及び配線する（ステップＳ１０２）。
【００３６】
その後、回路評価部１２ｂは、上記配置配線結果を評価する（ステップＳ１０３）。なお、複数の構造記述情報１１ａがある場合、回路評価部１２ｂは、構造記述情報１１ａの夫々に対して、評価を行う。
【００３７】
さらに、回路生成部１２ａは、回路評価部１２ｂの評価結果に基づいて、さらに、構造記述情報１１ａからスイッチ２の削除を行うか否かを判断する（ステップＳ１０４）。例えば、回路評価部１２ｂにより、アプリケーション回路ネットリスト情報１１ｂをマッピングしたときの配置及び配線が不可能であると評価され、あるいは、最大回路遅延、消費電力の改善が見られないと評価されたとき、回路生成部１２ａは、さらに、構造記述情報１１ａからスイッチ削除を行わないと判断する（ステップＳ１０４のＮＯ）。
【００３８】
一方で、回路評価部１２ｂにより、配置及び配線が可能であると評価され、あるいは、最大回路遅延、消費電力の改善が見られると評価されたとき、回路生成部１２ａは構造記述情報１１ａのスイッチ削除を行うと判断する（ステップＳ１０４のＹＥＳ）。なお、上記評価方法は、ユーザにより、任意に設定変更することができる。
【００３９】
回路生成部１２ａは、さらに、構造記述情報１１ａのスイッチ削除を行うと判断したとき（ステップＳ１０４のＹＥＳ）、まず、構造記述情報１１ａから少なくとも１個のスイッチ２を削除した新たな構造記述情報１１ａを生成して（ステップＳ１０５）、上記（ステップＳ１０２）に戻る。
【００４０】
ここで、例えば、ｎ個のスイッチ２を含む各セル１ｘｙから１個のスイッチ２を削除する場合において、スイッチ２を削除したｎ通りの新たな構造記述情報１１ａが生成される。なお、スイッチ削除処理の詳細については、後述する。以下、スイッチ削除処理において、スイッチ２を削除した構造記述情報１１ａを、スイッチ削除構造記述情報１１ａと称す。
【００４１】
一方で、回路生成部１２ａは、さらに、構造記述情報１１ａのスイッチ削除を行わないと判断したとき（ステップＳ１０４のＮＯ）、本処理を終了する。これにより、上記スイッチ削除構造記述情報１１ａのうち、最も評価結果が良好となるものが、最終的な設計回路情報として採用される。
【００４２】
なお、回路評価部１２ｂにより、アプリケーション回路ネットリスト情報１１ｂをマッピングしたときの配置及び配線が不可能であると評価され、回路生成部１２ａにより、さらなるスイッチ削除を行わないと判断されたときは（ステップＳ１０４のＮＯ）、これまで生成され、配置及び配線が可能であると評価されたスイッチ削除構造記述情報１１ａのうち、回路評価部１２ｂによる評価結果が最も良好なものを、最終的な構造記述情報１１ａとして採用する。また、評価結果が最も良好な構造記述情報１１ａとしては、例えば、最大回路遅延、消費電力、スイッチ２の数、及び／又は、回路面積が最小となる回路が含まれる。
【００４３】
次に、上記構造記述情報１１ａからスイッチ２を削除するスイッチ削除処理（ステップＳ１０５）について、詳細に説明する。図８は、スイッチ削除処理における処理フローの一例を示すフローチャートである。
【００４４】
図８に示すように、スイッチ削除処理（ステップＳ１０５）において、まず、各セル１ｘｙからスイッチ２を均一に削除する均一スイッチ削除が行われ（ステップＳ１１０）、更にスイッチ削除が必要な場合には（ステップＳ１１１のＹＥＳ）、この均一スイッチ削除後に、各セル１ｘｙからスイッチ２を不均一に削除する不均一スイッチ削除が行われる（ステップＳ１１２及びＳ１１３）。
【００４５】
この不均一スイッチ削除において、回路生成部１２ａは、スイッチ削除構造記述情報１１ａによって表わされるセルアレイのうち列毎に、各セル１ｘｙからスイッチ２を削除する（ステップＳ１１２）。同時に、回路生成部１２ａは、セルアレイのうち行毎に、各セル１ｘｙからスイッチ２を削除する（ステップＳ１１３）。そして、回路生成部１２ａは、これら列毎及び行毎にスイッチ２が削除されたスイッチ削除構造記述情報１１ａのうち、評価がより良好なスイッチ削除構造記述情報１１ａを採用する（ステップＳ１１４）。
【００４６】
次に、上記均一スイッチ削除について、詳細に説明する。均一スイッチ削除において、例えば、図９Ａに示す如く、図３に示す全てのセル１ｘｙから同一のスイッチ２ａが削除されている。また、均一スイッチ削除において、例えば、図９Ｂに示す如く、図３に示す全てのセル１ｘｙから同一のスイッチ２ｂが削除されている。このように、均一スイッチ削除において、セルアレイの全てのセル１ｘｙから同一のスイッチ２が削除される。
【００４７】
なお、図９Ａ及び図９Ｂにおいて、全てのセル１ｘｙからスイッチ２ａ、２ｂを削除する２通りのスイッチ削除方法を夫々示しているが、一般に、各セル１ｘｙにｎ個のスイッチ２がある場合において、各セル１ｘｙから１個のスイッチ２を削除する方法はｎ通り存在することとなる。したがって、各セル１ｘｙから１個のスイッチ２を削除する場合には、スイッチ削除構造記述情報１１ａは、ｎ通り生成されることとなる。
【００４８】
そして、上述の如く、回路生成部１２ａは、スイッチ削除構造記述情報１１ａを取り込んだ配置配線ツールで、スイッチ削除構造記述情報１１ａによって表わされる再構成可能回路上に、アプリケーション回路ネットリスト情報１１ｂによって表わされるアプリケーション回路を配置及び配線する（ステップＳ１０２）。
【００４９】
また、回路評価部１２ｂは、上記配置配線結果を評価する（ステップＳ１０３）。ここで、回路評価部１２ｂは、ｎ通りのスイッチ削除構造記述情報１１ａに対して夫々評価を行い、回路生成部１２ａはこの評価結果に基づいて、さらに、スイッチ削除構造記述情報１１ａのスイッチ削除を行うか否かを判断する（ステップＳ１０４）。以上のように、スイッチ削除構造記述情報１１ａの各セル１ｘｙからスイッチ２を１個ずつ削除することを繰り返す。
【００５０】
また、回路評価部１２ｂは、アプリケーション回路ネットリスト情報１１ｂをマッピングしたときの配線性（配線の容易度又は難易度）を評価するのが好ましい。さらに、回路生成部１２ａは、配線方法を種々に変更し試行する配線処理を行う。なお、この配線処理における配線試行の上限回数Ｔは、予め設定されている。そして、配線試行の回数が上限回数Ｔとなるまでに配線が完了していない場合、回路評価部１２ｂは、アプリケーション回路ネットリスト情報１１ｂをマッピングしたときの配置及び配線が不可能であると判断する。
【００５１】
このとき、上記配線できずに残った残本数ｒ１、又は、残留コンフリクト数（同じ配線リソースを複数の配線で共用しようとしている箇所の数）ｒ２を、配線の容易度又は難易度の評価値として用いることができる。一方、回路生成部１２ａによるＴ回の配線試行の前に、例えばｔ回（ｔ＜Ｔ）の配線試行で、全ての配線がコンフリクト無く完了した場合、その試行回数ｔを配線の容易度又は難易度の評価値として用いることができる。
【００５２】
例えば、回路生成部１２ａによるＴ回の配線試行後に、配線が完了しなかった場合において、上記残本数ｒ１及び残留コンフリクト数ｒ２が小さいほど、配線が容易で、配線性が良好といえる。同様に、回路生成部１２ａによるＴ回の配線試行後に、配線が完了した場合において、上記試行回数ｔが小さいほど、配線が容易で、配線性が良好といえる。
【００５３】
そして、回路生成部１２ａは、回路評価部１２ｂによる上記残本数ｒ１、残留コンフリクト数ｒ２、試行回数ｔ等の評価値が合格閾値よりも小さく、配線性が良好との評価結果に基づいて、スイッチ削除処理を行う。これにより、スイッチ削除処理の対象となるスイッチ削除構造記述情報１１ａの数を、効率的に絞り込むことができ、当該処理時間を大幅に低減することができる。なお、スイッチ削除処理の対象となるスイッチ削除構造記述情報１１ａが多数存在する場合でも、上記評価値を用い、合格閾値を適切な値に設定することで、十分にスイッチの数を低減しつつ、処理時間も低減することができる。
【００５４】
さらに、スイッチ削除構造記述情報１１ａの数を効果的に絞り込むために、禁止リスト情報１１ｃを用いることが望ましい。禁止リスト情報１１ｃは、評価値がある閾値（以後禁止閾値と呼ぶ）よりも悪いスイッチ削除パターンを記憶しておくリストである。
【００５５】
禁止リスト情報１１ｃに含まれるスイッチ削除パターン、言い換えると禁止リスト情報１１ｃに含まれるスイッチ削除パターンからさらにスイッチを削除したようなスイッチ削除構造記述情報１１ａは、配置配線及び評価の処理をするまでもなく配線性が悪いことが推定される。
【００５６】
なお、上述の配線し易さの評価値は、同じスイッチ数のスイッチ削除構造記述情報１１ａ同士でのみ比較が可能である。したがって、本処理方法を適用するためには、スイッチ削除処理で、各セル１ｘｙから同一のスイッチ数を削除する必要がある。最も好ましい例は、スイッチ削除処理が行われる各スイッチ削除構造記述情報１１ａから、１個のスイッチ２を削除する均一スイッチ削除（すなわち、セルアレイの各セル１ｘｙから、１個のスイッチ２を均一に削除）することである。
【００５７】
上述したように、スイッチ削除構造記述情報１１ａの生成、各スイッチ削除構造記述情報１１ａへのアプリケーション回路の配置及び配線、この配置及び配線結果の評価、更なるスイッチ削除、の一連のプロセスを何度か繰り返し、一回のプロセス毎に、各セル１ｘｙからスイッチ２が、例えば1つずつ削除される。最終的に、回路生成部１２ａは、合格閾値より良好な評価値のスイッチ削除構造記述情報１１ａが無くなれば処理は終了する。そして、回路生成部１２ａは、終了直前の合格閾値より良好な評価値のスイッチ削除構造記述情報１１ａを、最終結果のアーキテクチャとして決定する。これにより、アプリケーション回路を配置及び配線できるスイッチ削除構造記述情報１１ａのうち、スイッチ数が最少となるスイッチ削除構造記述情報１１ａを設計することができる。
【００５８】
さらに、上記評価の別の例としては、アプリケーション回路が配置及び配線できた場合のクリティカルパス遅延や、消費電力、スイッチ削除構造記述情報１１ａの面積、あるいは、それらの数値の積を評価値にしてもよい。また、上述の配線性が合格閾値より良好となるものの中で、さらにクリティカルパス遅延や消費電力等の評価値がある合格閾値より良好となるスイッチ削除構造記述情報１１ａを残すようにしてもよい。どのような評価方法を採用するかは、設計者の目的に応じて決定できる。
【００５９】
以上のようにして、回路生成部１２ａは、均一スイッチ削除により、評価値が合格閾値より良好となるものの中で、最もスイッチ２が少ないスイッチ削除構造記述情報１１ａ（以下、最少均一構成回路情報と称す）を生成する。
【００６０】
次に、不均一スイッチ削除について、詳細に説明する。均一スイッチ削除では十分なスイッチ削除が達成できない場合が、多々存在する。その場合に、回路生成部１２ａは、上記の方法で生成した最少均一構成回路情報に対して、さらに不均一スイッチ削除を行う。
【００６１】
図１０Ａは、最少均一構成回路情報の一例を示している。図１０Ａは、図３の構造記述情報１１ａの各セル１ｘｙから２個のスイッチ２ａ及び２ｅを均一削除した一例が示されている。回路生成部１２ａは、不均一スイッチ削除を行う場合、まず、この最少均一構成回路情報に対して、図７のスイッチ削除処理（ステップＳ１０５）を行う。このスイッチ削除処理において、回路生成部１２ａは、例えば、後述する不均一スイッチ削除を行う。
【００６２】
図１０Ｂは、図１０Ａに示すセルアレイのうち奇数列の各セル（第１列１ａｙ及び第３列１ｃｙ、なお、ｙはａ〜ｄ）から、スイッチ２ｂを削除したものである。同様に、図１０Ｃは、図１０Ａに示すセルアレイのうち奇数列の各セル１ａｙ、１ｃｙから、スイッチ２ｃを削除したものである。
【００６３】
なお、図１０Ｂ及び図１０Ｃにおいて、セルアレイの各セル１ｘｙからスイッチ２ｂ又は２ｃを削除する方法を例示したが、これに限らず、一般に一つのセル１ｘｙにｍ個のスイッチ２がある場合、１個のスイッチ削除の方法はｍ通り存在する。
【００６４】
したがって、セルアレイの奇数列の各セル１ｘｙから１個のスイッチ２を削除する場合において、最少均一構成回路情報から最大ｍ個のスイッチ削除構造記述情報１１ａが生成される。そして、この場合、セルアレイの偶数列はスイッチ削除されない。このように、セルアレイうち、セル１ｘｙの場所によってスイッチ削除の方法が異なる場合、それを不均一スイッチ削除と称する。
【００６５】
そして、回路生成部１２ａは、生成されたスイッチ削除構造記述情報１１ａ（ｍ個のスイッチ削除構造記述情報１１ａの全て、あるいはその一部）に対して、図７に示した次の一連の処理を行う。すなわち、回路生成部１２ａは、各スイッチ削除構造記述情報１１ａを取り込んだ配置配線ツールを使って、アプリケーション回路ネットリスト情報１１ｂによって表わされるアプリケーション回路を配置及び配線し（ステップＳ１０２）、回路評価部１２ｂは、各配置配線結果を評価する（ステップＳ１０３）。回路生成部１２ａは、その評価の結果、合格閾値を満たしたスイッチ削除構造記述情報１１ａに対して、再びスイッチ削除処理を行う（ステップＳ１０５）。
【００６６】
このスイッチ削除処理において、回路生成部１２ａは、今度、セルアレイのうち偶数列の各セル（第２列１ｂｙ及び第４列ｄｙ、なおｙはａ〜ｄ）からスイッチ削除を行う。以後、上記配置配線、評価、及びスイッチ削除の一連の処理が繰り返される。また、スイッチ削除処理において、上記説明したように、回路生成部１２ａは、セルアレイのうち奇数列と偶数列のスイッチ削除を交互に行うのが好ましい。
【００６７】
なお、セルアレイの偶数列と奇数列を同時にスイッチ削除する場合、可能な削除パターンが非常に多くなり処理時間が増加する。一方で、上述したように、回路生成部１２ａが、セルアレイの偶数列と奇数列とに対して交互にスイッチ削除を行った場合、両処理の間に回路評価部１２ｂによる評価が介在することとなる。このため、その評価によって、スイッチ削除構造記述情報１１ａの選別が行われ、効果的にスイッチ削除構造記述情報１１ａの数が絞り込まれる。
【００６８】
ここで、回路生成部１２ａがセルアレイの偶数列と奇数列とに対して同時にスイッチ削除を行った場合、回路評価部１２ｂはその評価を１度だけ行うこととなる。一方で、回路生成部１２ａがセルアレイの偶数列と奇数列とに対して交互にスイッチ削除を行った場合、回路評価部１２ｂはその評価を２度行うこととなる。その場合でも、スイッチ削除構造記述情報１１ａが、処理過程で一旦絞り込まれるメリットの方がより大きい。
【００６９】
また、回路生成部１２ａは、一方の列（例えば、偶数列）のスイッチ２が削除できない場合でも、他方の列（例えば、奇数列）のスイッチ２が削除できれば、スイッチ削除が可能な列だけに対して、スイッチ削除処理を続行する。
【００７０】
したがって、最終的には、セルアレイの偶数列と奇数列で、セル１ｘｙ当たりのスイッチ数が相違する場合ある。また、偶数列と奇数列は、たとえセル１ｘｙ当たりのスイッチ数が同一でも、削除されるスイッチ２は必ずしも同一ではない。  
【００７１】
さらに、回路生成部１２ａは、不均一スイッチ削除を行った場合に、禁止リスト情報１１ｃには評価が悪かったときのスイッチ削除構造記述情報１１ａの偶数列と奇数列のスイッチ削除パターンを、一組で登録する。
【００７２】
そして、あるスイッチ削除構造記述情報１１ａにおける偶数列のスイッチ削除パターンが、禁止リスト情報１１ｃにおける、ある組の偶数列のスイッチ削除パターンを含み、同時にそのスイッチ削除構造記述情報１１ａにおける奇数列のスイッチ削除パターンが、禁止リスト情報１１ｃにおけるその組の奇数列のスイッチ削除パターンを含む場合がある。この場合、回路生成部１２ａは、そのスイッチ削除構造記述情報１１ａを棄却して、上記スイッチ削除構造記述情報１１ａの絞り込みを行う。
【００７３】
以上のようにして、回路生成部１２ａは、不均一スイッチ削除を行い、その評価が合格閾値より良好なものの中でスイッチ数が最少となるスイッチ削除構造記述情報１１ａ（これを、最少不均一構成回路情報と称す）を生成する。
【００７４】
上述したように、セルアレイの各列内のセル１ｘｙは同一（均一）で、異なる列間ではスイッチ削除方法が異なる不均一スイッチ削除を、列不均一スイッチ削除と称す。
【００７５】
なお、上述したように、基本的な列不均一スイッチ削除の一例として、偶数列と奇数列の２種類の異なる列間でスイッチ削除方法が異なる場合について説明したが、異なる列の種類は複数存在してもよい。例えば、ｋ種類の異なる列が存在する場合に、回路生成部１２ａはセルアレイの第１列から第ｋ列までに対して、順次、スイッチ削除を行い、回路評価部１２ｂはそのスイッチ削除構造記述情報１１ａを評価し、この評価が終われば、また第１列から同じ処理を繰り返す。
【００７６】
禁止リスト情報１１ｃには、評価が悪かったときのスイッチ削除記述構造情報１１ａにおける、第１列から第k列のスイッチ削除パターンが、一組にして登録される。そして、回路生成部１２ａは、あるスイッチ削除構造記述情報１１ａにおける第i列（１≦ｉ≦ｋ）のスイッチ削除パターンが、禁止リスト情報１１ｃにおける、ある組の第i列のスイッチ削除パターンを含むとき（ここで、iが1からkまでの全てについて、上記条件が成立するものとする）、そのスイッチ削除構造記述情報１１ａを棄却して、スイッチ削除構造記述情報１１ａの絞り込みを行う。
【００７７】
次に、回路生成部１２ａは、最少均一構成回路情報に対して、行毎の不均一スイッチ削除（以下、行不均一スイッチ削除と称す）を行う。この行不均一スイッチ削除は、セルアレイの各行内のセル１ｘｙは同一（均一）で、異なる行間ではスイッチ削除の方法が異なる不均一スイッチ削除方法である。
【００７８】
また、行不均一スイッチ削除において、回路生成部１２ａは、上述の列不均一スイッチ削除と同様に、セルアレイの偶数行と奇数行に対して、交互にスイッチ削除を行うのが好ましい。
【００７９】
図１１は、図１０Ａに示す最少不均一構成回路情報に対して、セルアレイの奇数行の各セル（第１行１ｘａ及び第３列１ｘｃ、なお、ｙはａ〜ｄ）から、スイッチ２ｂを削除した一例である。
【００８０】
最後に、回路生成部１２ａは、列不均一スイッチ削除による最少不均一構成回路情報の評価と、行不均一スイッチ削除による最少不均一構成回路情報の評価と、を比較して、これら評価が良好な方を、最終的な最少不均一構成回路情報として、採用する。
【００８１】
上述したように、回路生成部１２ａは、まず、構造記述情報１１ａに対して均一スイッチ削除を行い、最少均一構成回路情報を生成する（図８のステップＳ１１０）。次に、回路生成部１２ａは、この最少均一構成回路情報に対して、列不均一スイッチ削除を行い（ステップＳ１１２）、最少不均一構成回路情報を生成する。
【００８２】
また、回路生成部１２ａは、この最少均一構成回路情報に対して、行不均一スイッチ削除を行い（ステップＳ１１３）、最少不均一構成回路情報を生成する。そして、回路生成部１２ａは、生成された両最少不均一構成回路情報のうち、回路評価部１２ｂによる評価がより良好な最少不均一構成回路情報を採用する（ステップＳ１１４）。
【００８３】
図１２Ａ乃至Ｅは、構造記述情報１１ａによって表わされる再構成可能回路のシリコン上における物理的配置を示す概略図である。図１２Ａは、初期構造記述情報１１ａであり、セルアレイの各セル１ｘｙ（ｘ及びｙは、ａ〜ｄ）は規則的に隙間無く、２次元アレイ状に配置されている。
【００８４】
図１２Ｂは、最少均一構成回路の一例を示す概略図である。図１２Ｂに示す如く、全てのセル１ｘｙは、図１２Ａに示すセル１ｘｙと比較して小さくなるが、同一のセル１ｘｙとなっている。すなわち、初期構造記述情報１１ａから全てのセル１ｘｙで同一のスイッチ２を削除している。このため、各セル１ｘｙを隙間無く２次元アレイ状に配置することができる。
【００８５】
図１２Ｃは、行不均一スイッチ削除が行われた最少不均一構成回路の一例を示す図である。なお、図１２Ｃに示すセルアレイにおいて、各セル１ｘｙの高さが奇数行（第１行１ｘａ及び第３行１ｘｃ）と偶数行（第２行１ｘｂ及び第４行１ｘｄ）とで異なっている。
【００８６】
この場合、一般に、セルアレイの行毎に削除されるスイッチ２が異なるため、行毎にセル１ｘｙの面積が異なる。しかしながら、セル１ｘｙの高さを行毎に調整し、セル１ｘｙの幅を全てのセル１ｘｙで同一にすることで、図１２Ｃに示すように、各セル１ｘｙを隙間無く配置することが可能となる。なお、図１２Ｃにおいて、セルアレイの奇数行と偶数行でセル１ｘｙの高さが異なる一例を示している。
【００８７】
図１２Ｄは、列不均一スイッチ削除が行われた最少不均一構成回路の一例を示す図である。この場合、一般にセルアレイの列毎に削除されるスイッチ２が異なるため、列毎にセル１ｘｙの面積が異なる。しかしながら、各セル１ｘｙの幅を列毎に調整し、各セル１ｘｙの高さを全てのセル１ｘｙで同一にすることで、図１２Ｄに示す如く、隙間無くセル１ｘｙを配置することが可能となる。図１２Ｄは、セルアレイの奇数列と偶数列でセル１ｘｙの幅が異なる一例を示している。
【００８８】
このように、行不均一スイッチ削除又は列不均一スイッチ削除を行うことで、セル１ｘｙの物理配置において、各セル１ｘｙを隙間無く２次元アレイ状に配置することができるという利点がある。これは、一般の不均一性では必ずしも可能ではない。
【００８９】
図１２Ｅに、チェッカー模様状となる不均一スイッチ削除の一例を示す図である。図１２Ｅに示す如く、これには、例えば、小さい面積のセル１ａａ、１ａｃ、１ｂｂ、１ｂｄ、１ｃａ、１ｃｃ、１ｄｂ、１ｄｄと、大きい面積のセル１ａｂ、１ａｄ、１ｂａ、１ｂｃ、１ｃｂ、１ｃｄ、１ｄａ、１ｄｃをチェッカー模様状に配置したものである。このとき、小さい面積のセル１ｘｙ周辺には、隣接するセル１ｘｙとの間に隙間が生じている。なお、このような隙間を生じないような不均一スイッチ削除の方法として、上述した行不均一スイッチ削除、若しくは列不均一スイッチ削除を行うのが好ましい。
【００９０】
以上、第１の実施形態に係る回路設計システム１０において、記憶装置１１は、複数のスイッチ２を含むセルアレイからなる、再構成可能回路の構造記述情報１１ａと、アプリケーション回路ネットリスト情報１１ｂと、を記憶し、ＣＡＤ装置１２の回路生成部１２ａは、回路評価部１２ｂによる評価結果に基づいて、構造記述情報１１ａから少なくとも１個のスイッチ２を削除して、構造記述情報１１ａを生成する。これにより、従来のように構造記述情報をパラメータ化すること無く、個々のスイッチ２が記述された構造記述情報１１ａから、各スイッチ２を順次削除する。これにより、アプリケーションに応じた、より詳細なスイッチ削除が可能となるため、回路面積を効果的に縮小することができる。
【００９１】
また、個々のスイッチ２を指定して多様なスイッチ削除パターンを評価し、均一スイッチ削除に加えて行不均一スイッチ削除あるいは列不均一スイッチ削除を行う。これにより、応用領域に特化した小さい面積の再構成可能回路を短い処理時間で生成できる。さらに、評価が悪いスイッチ削除パターンをリスト化した禁止リスト情報１１ｃを使って、有効にスイッチ削除パターンを絞り込むため、処理時間が大幅に短縮される。
【００９２】
なお、一般に詳細なスイッチ削除を行うと処理時間が長くなる傾向がある。これは、同一個数のスイッチ削除でも、どのスイッチ２を削除するかによって、削除パターンが多数存在することによる。可能な全てのスイッチ削除パターンに対して、配置及び配線と評価の試行を繰り返すと、膨大な時間がかかり事実上、実行不可能となる。
【００９３】
そこで、本発明の第１実施形態に係る回路設計システム１０は、所定数（例えば、１個）のスイッチ２を各セル１ｘｙから削除し、配置及び配線と評価とを行い、その評価値が合格閾値より良好なものだけを残すことで、次の処理に移行するスイッチ削除構造記述情報１１ａを絞り込む。
【００９４】
そして、回路生成部１２ａは、それらスイッチ削除構造記述情報１１ａから、再度、所定数のスイッチ２を削除し、スイッチ削除構造記述情報１１ａを生成する際に、禁止リスト情報１１ｃに登録しているスイッチ削除パターンを含むスイッチ削除構造記述情報１１ａを棄却する。この棄却によって、回路生成部１２ａは、次の処理に移行するスイッチ削除構造記述情報１１ａの数を絞り込む。このように、回路生成部１２ａは、一定数のスイッチ２を削除してスイッチ削除構造記述情報１１ａの数を絞り込むという、処理を繰り返す。これにより、スイッチ削除構造記述情報１１ａの数が処理過程で発散するのを回避することができる。したがって、均一スイッチ削除によって、現実的な時間で最少均一構成回路情報を生成できるだけでなく、不均一スイッチ削除によっても、現実的な時間で最少不均一構成回路情報を生成できる。
【００９５】
さらに、回路生成部１２ａは、均一スイッチ削除後に、不均一スイッチ削除を行うことで、多数のスイッチ削除を実現できる。不均一スイッチ削除において、任意の不均一性が許容されると、スイッチ削除パターンの数が膨大となり、現実的ではない。そこで、本発明の第１実施形態に係る回路設計システム１０において、セルアレイの各行内は同一セル１ｘｙとし、行毎にスイッチ削除パターンが異なるような行毎の不均一性、あるいは、セルアレイの各列内は同一セル１ｘｙとし、列毎にスイッチ削除パターンが異なるような列毎の不均一性のみを許容している。これにより、不均一性によるスイッチ削除パターン数の増大を抑制することができる。
（第２実施形態）
【００９６】
次に、本発明の第２実施形態に係る回路設計システム１０の回路設計方法について、説明する。第２実施形態に係る回路設計システム１０の回路設計方法は、各セル１ｘｙの未使用スイッチ２の均一スイッチ削除を行う点、及び、低使用頻度スイッチ２の均一スイッチ削除を行う点で、第１実施形態に係る回路設計システム１０の回路設計方法と、主として相違する。図１３は、本発明の第２実施形態に係る回路設計システム１０のフローの一例を示すフローチャートである。
【００９７】
まず、回路生成部１２ａは、初期構造記述情報１１ａを取り込んだ配置配線ツールで、初期構造記述情報１１ａによって表わされる再構成可能回路上に、アプリケーション回路ネットリスト情報１１ｂによって表わされるアプリケーション回路を配置及び配線する（ステップＳ２００）。
【００９８】
次に、回路生成部１２ａは、上記配置及び配線の結果、全てのセル１ｘｙで使用されていない未使用スイッチ２を、さらに、初期構造記述情報１１ａから均一スイッチ削除し、スイッチ削除構造記述情報１１ａを生成する（ステップＳ２０１）。このとき、全ての未使用スイッチ２が一度に削除される。
その後、回路生成部１２ａは、スイッチ削除構造記述情報１１ａを取り込んだ配置配線ツールで、スイッチ削除構造記述情報１１ａによって表わされる再構成可能回路上に、アプリケーション回路ネットリスト情報１１ｂによって表わされるアプリケーション回路を配置及び配線する（ステップＳ２０２）。そして、回路評価部１２ｂは、上記配置及び配線結果を評価する（ステップＳ２０３）。
【００９９】
回路評価部１２ｂによる評価値が合格閾値よりも悪いとき（ステップＳ２０４のＮＯ）、回路生成部１２ａは、上記削除した未使用スイッチ２の一部を、スイッチ削除構造記述情報１１ａの全てのセル１ｘｙに戻し（ステップＳ２０５）、上記（ステップＳ２０２）に戻る。
【０１００】
ここで、上記未使用スイッチ２の戻し方法（どの未使用スイッチ２を戻すか）は、一般に複数存在する。したがって、回路生成部１２ａが上記（ステップＳ２０５）の処理を行うと、一般に複数のスイッチ削除構造記述情報１１ａが生成される。上記（ステップＳ２０４）の判断処理において、回路生成部１２ａは、合格閾値よりも良好な評価値となるスイッチ削除構造記述情報１１ａが所望数だけ得られたとき、後述の低使用頻度スイッチ２の均一スイッチ削除（ステップＳ２０６）へ移行する。
【０１０１】
なお、回路生成部１２ａは、上記（ステップＳ２０４）における１回目の判断処理で、スイッチ削除構造記述情報１１ａの評価値が合格閾値よりも良好であると判断したとき、後述の低使用頻度スイッチ２の均一スイッチ削除（ステップＳ２０６）へ移行してもよい。上記判断処理（ステップＳ２０４）における判断基準は、設計者の目的に応じて決定できる。
【０１０２】
低使用頻度スイッチ２の均一スイッチ削除（ステップＳ２０６）において、回路生成部１２ａは、上記配置及び配線の結果、セルアレイの中で少数個（例えば、１個）のセル１ｘｙでしか使用されないスイッチ２を、均一スイッチ削除する。
【０１０３】
例えば、１個のセル１ｘｙでしか使用されないスイッチ２がｊ個あった場合に、１個のスイッチ２を削除する方法はｊ通り存在する。したがって、低使用頻度スイッチ２の均一スイッチ削除（ステップＳ２０６）の処理において、回路生成部１２ａは、１個のスイッチ２を削除する場合、ｊ個のスイッチ削除構造記述情報１１ａを生成することとなる。
【０１０４】
以降の処理は、図７に示す第１実施形態に係る処理フローと略同一となる。すなわち、回路生成部１２ａは、上記ｊ個のスイッチ削除構造記述情報１１ａについて夫々、各スイッチ削除構造記述情報１１ａを取り込んだ配置配線ツールで、各スイッチ削除構造記述情報１１ａによって表わされる再構成可能回路上に、アプリケーション回路ネットリスト情報１１ｂによって表わされるアプリケーション回路を配置及び配線する（ステップＳ２０７）。
【０１０５】
次に、回路評価部１２ｂは、上記配置及び配線結果を評価する（ステップＳ２０８）。回路生成部１２ａは、回路評価部１２ｂの評価結果に基づいて、さらに、スイッチ削除構造記述情報１１ａのスイッチ削除を行うか否かを判断する（ステップＳ２０９）。回路生成部１２ａは、スイッチ削除構造記述情報１１ａのスイッチ削除を行うと判断したとき（ステップＳ２０９のＹＥＳ）、上記（ステップＳ２０６）に戻る。一方で、回路生成部１２ａは、スイッチ削除構造記述情報１１ａのスイッチ削除を行わないと判断したとき（ステップＳ２０９のＮＯ）、本処理を終了する。なお、低使用頻度スイッチ２の削除において、行不均一スイッチ削除あるいは列不均一スイッチ削除を容易に適用できる。
【０１０６】
以上、第２実施形態に係る回路設計システム１０によれば、上記配置及び配線後に、図１３に示す（ステップＳ２０１）の処理で、未使用スイッチ２を全て削除している。これにより、第２実施形態に係る回路設計方法は、１個あるいは少数個ずつ、スイッチ２を削除し、配置及び配線とその評価を繰り返す処理方法と比較して、大幅に処理時間を短縮できる利点がある。多くの場合、回路生成部１２ａは、未使用スイッチ２を削除したスイッチ削除構造記述情報１１ａに、アプリケーション回路を配置及び配線できる。したがって、回路生成部１２ａは、図１３の（ステップＳ２０４）の判断処理において、ＹＥＳ（ステップＳ２０６）側へ移行する。
【０１０７】
しかしながら、回路生成部１２ａが上記配置及び配線を行うことができない場合、あるいは、回路評価部１２ｂによる上記配置及び配線の評価が悪い場合がある。この場合に、回路生成部１２ａは、削除した未使用スイッチ２を少数個（典型的には１個）だけ元に戻すことで、上記（ステップＳ２０４）の判断処理において、ＹＥＳ側へ移行するようになる。
【０１０８】
なお、このように、回路生成部１２ａは、一旦、未使用スイッチ２を戻した場合でも、最終的に、この未使用スイッチ２の数よりも多くのスイッチ２を削除できる場合がほとんどである。これには、回路生成部１２ａが、図１３の（ステップＳ２０６）処理およびそれ以降の処理において、未使用スイッチ２以外のスイッチ２を削除するからである。
【０１０９】
さらに、各セル１ｘｙがｎ個のスイッチ２を含む場合に、各セル１ｘｙから１個のスイッチ２を削除する方法は全部でｎ通り存在する。一方で、ｎ個のスイッチ２のうち、低使用頻度スイッチ２はごく一部である。したがって、削除するスイッチ２を、低使用頻度のスイッチ２に限定することで、更にスイッチ２を削除する対象となるスイッチ削除構造記述情報１１ａの数を大幅に絞り込むことができ、全体の処理時間を大幅に短縮することができる。また、回路評価部１２ｂによる評価の悪化を最小限に抑えるために、低使用頻度のスイッチ２を優先して削除していく上記方法は、理にかなっている。このように、本発明の第２実施形態に係る回路設計システム１０によれば、多数個のスイッチ２の削除を短時間で実現できる。
【０１１０】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。また、この出願は、２００８年６月６日に出願された日本出願特願２００８−１４９７０４を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【符号の説明】
【０１１１】
１    セル
２    スイッチ
３    配線
４    機能ブロック
５    マルチプレクサ
６    バッファ
７    入力線
８    出力
１０    回路設計システム
１１    記憶装置
１１ａ  構造記述情報
１１ｂ  アプリケーション回路ネットリスト情報
１１ｃ  禁止リスト情報
１２    ＣＡＤ装置
１２ａ  回路生成部
１２ｂ  回路評価部
【図１】
2009147789.tif 000003
【図２】
2009147789.tif 000004
【図３】
2009147789.tif 000005
【図４】
2009147789.tif 000006
【図５】
2009147789.tif 000007
【図６】
2009147789.tif 000008
【図７】
2009147789.tif 000009
【図８】
2009147789.tif 000010
【図９Ａ】
2009147789.tif 000011
【図９Ｂ】
2009147789.tif 000012
【図１０Ａ】
2009147789.tif 000013
【図１０Ｂ】
2009147789.tif 000014
【図１０Ｃ】
2009147789.tif 000015
【図１１】
2009147789.tif 000016
【図１２Ａ】
2009147789.tif 000017
【図１２Ｂ】
2009147789.tif 000018
【図１２Ｃ】
2009147789.tif 000019
【図１２Ｄ】
2009147789.tif 000020
【図１２Ｅ】
2009147789.tif 000021
【図１３】
2009147789.tif 000022
【手続補正書】
【提出日】平成22年11月30日(2010.11.30)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数のスイッチを含むセルのアレイからなる、再構成可能回路の構造記述情報と、アプリケーションを特定するためのアプリケーション回路情報と、を記憶する記憶手段と、
前記記憶手段に記憶された前記構造記述情報と、前記アプリケーション回路情報と、に基づいて、前記構造記述情報を生成する回路生成手段と、
前記回路生成手段により生成された前記構造記述情報を評価する回路評価手段と、を備え、
前記回路生成手段は、前記回路評価手段による評価結果に基づいて、前記構造記述情報から少なくとも１個の前記スイッチを削除して、前記構造記述情報を生成する、ことを特徴とする回路設計システム。
【請求項２】
請求項１記載の回路設計システムであって、
前記回路生成手段は、生成された前記構造記述情報のうち、前記スイッチの数が最少となる前記構造記述情報を採用する、ことを特徴とする回路設計システム。
【請求項３】
請求項１又は２記載の回路設計システムであって、
前記回路生成手段は、全ての前記セルから同一の前記スイッチを削除する均一スイッチ削除を行い、該均一スイッチ削除後に、前記各セルから異なる前記スイッチを削除する不均一スイッチ削除を行う、ことを特徴とする回路設計システム。
【請求項４】
請求項３記載の回路設計システムであって、
前記不均一スイッチ削除において、前記回路生成手段は、前記セルのアレイにおける偶数列のセルのスイッチと、奇数列のセルのスイッチとを交互に削除する、ことを特徴とする回路設計システム。
【請求項５】
請求項３記載の回路設計システムであって、
前記不均一スイッチ削除において、前記回路生成手段は、前記セルのアレイにおける偶数行のセルのスイッチと、奇数行のセルのスイッチとを交互に削除する、ことを特徴とする回路設計システム。
【請求項６】
請求項４又は５記載の回路設計システムであって、
回路生成手段は、前記回路生成手段により前記列毎に各セルのスイッチが削除され、生成された前記構造記述情報と、前記行毎に各セルのスイッチが削除され、生成された前記構造記述情報と、のうち評価が良好な方を採用する、ことを特徴とする回路設計システム。
【請求項７】
請求項１乃至６のうちいずれか１項記載の回路設計システムであって、
前記記憶手段は、前記回路評価手段による評価結果に基づいて、前記回路生成手段により前記スイッチが削除されたときのスイッチ削除パターンを、禁止リスト情報として記憶し、
前記回路生成手段は、前記スイッチを削除したときの前記スイッチ削除パターンが、前記記憶手段に記憶された前記禁止リスト情報のスイッチ削除パターンと一致するとき、前記構造記述情報を生成しない、ことを特徴とする回路設計システム。
【請求項８】
請求項１乃至７のうちいずれか１項記載の回路設計システムであって、
前記回路生成手段は、前記回路情報の全てのセルから未使用の前記スイッチを削除して、前記構造記述情報を生成する、ことを特徴とする回路設計システム。
【請求項９】
請求項８記載の回路設計システムであって、
前記回路評価手段による、前記未使用のスイッチが削除された前記構造記述情報に対する評価結果が良好でないとき、前記回路生成手段は削除した前記未使用のスイッチの一部を元に戻す、ことを特徴とする回路設計システム。
【請求項１０】
請求項１乃至９のうちいずれか１項記載の回路設計システムであって、
前記回路生成手段は、前記構造記述情報の全てのセルから低使用頻度の前記スイッチを削除して、前記構造記述情報を生成する、ことを特徴とする回路設計システム。
【請求項１１】
請求項１０記載の回路設計システムであって、
前記低使用頻度のスイッチは、前記セルのアレイのうち１、２又は３つの前記セルでのみ使用されているスイッチである、ことを特徴とする回路設計システム。
【請求項１２】
請求項１記載の回路設計システムであって、
前記回路評価手段は、生成された前記構造記述情報における配置及び配線の可否、配線性、回路遅延、消費電力、前記スイッチの数、及び、回路面積のうち少なくとも１つを評価する、ことを特徴とする回路設計システム。
【請求項１３】
複数のスイッチを含むセルのアレイからなる、再構成可能回路の構造記述情報と、アプリケーションを特定するためのアプリケーション回路情報と、を記憶し、
前記記憶された前記構造記述情報と、前記アプリケーション回路情報と、に基づいて、前記構造記述情報を生成し、
前記生成された前記構造記述情報を評価し、
前記評価結果に基づいて、前記構造記述情報から少なくとも１個の前記スイッチを削除して、前記構造記述情報を生成する、ことを特徴とする回路設計方法。
【請求項１４】
請求項１３記載の回路設計方法であって、
前記生成された前記構造記述情報のうち、前記スイッチの数が最少となる前記構造記述情報を採用する、ことを特徴とする回路設計方法。
【請求項１５】
請求項１３又は１４記載の回路設計方法であって、
全ての前記セルから同一の前記スイッチを削除し、
該削除後に、前記各セルから異なる前記スイッチを削除する、ことを特徴とする回路設計方法。
【請求項１６】
請求項１３乃至１５のうちいずれか１項記載の回路設計方法であって、
前記評価結果に基づいて、前記スイッチが削除されたときのスイッチ削除パターンを、禁止リスト情報として記憶し、
前記スイッチを削除したときの前記スイッチ削除パターンが、前記記憶した前記禁止リスト情報のスイッチ削除パターンと一致するとき、前記構造記述情報を生成しない、ことを特徴とする回路設計方法。
【請求項１７】
複数のスイッチを含むセルのアレイからなる、再構成可能回路の構造記述情報と、アプリケーションを特定するためのアプリケーション回路情報と、に基づいて、前記構造記述情報を生成する処理と、
前記生成された前記構造記述情報を評価する処理と、
前記評価結果に基づいて、前記構造記述情報から少なくとも１個の前記スイッチを削除して、前記構造記述情報を生成する処理と、をコンピュータに実行させるプログラム。
【国際調査報告】
2009147789.tif 000023
2009147789.tif 000024