(57)【要約】【課題】複数の回路部品を接続した集積回路の自動設計を容易にし、ハードウエア記述言語による回路記述の作成にかかる手間と時間を短縮する。【解決手段】自動回路設計装置は、集積回路の複数の回路部品（例えばＩＰ）に関する接続条件とこれらの接続条件に応じた各回路部品の接続関係とを記述した表形式のファイルを解析する解析部１１と、解析部１１の解析結果に基づいて、ＨＤＬによる集積回路の記述を生成する記述生成部１２とを備える。【選択図】        図１
2004213301.tif 000002
【特許請求の範囲】
【請求項１】
集積回路内の複数の回路部品に関する接続条件とこれらの接続条件に応じた各回路部品の接続関係とを記述した表形式のデータ集合を解析する解析部と、
前記解析部の解析結果に基づいて、ハードウエア記述言語による集積回路の記述を生成する記述生成部とを備えた自動回路設計装置。
【請求項２】
解析部の解析結果に基づいて、記述生成部は、接続条件に応じた各回路部品の接続関係を実現するのに適切なセレクタモジュールを選定し、集積回路の記述に前記セレクタモジュールに関する情報を付加することを特徴とする請求項１記載の自動回路設計装置。
【請求項３】
解析部の解析結果に基づいて、記述生成部は、セレクタモジュールを制御する制御信号を生成するのに適切な制御信号生成モジュールに関する情報を集積回路の記述に付加する請求項２記載の自動回路設計装置。
【請求項４】
集積回路を通常使用する通常使用モードと集積回路を副次的に使用する複数の副次的モードのそれぞれを接続条件とした表形式のデータ集合を解析部が解析し、
前記解析部の解析結果に基づいて、記述生成部は、前記通常使用モードで接続される複数の回路部品の間に介在する第１のセレクタモジュールを選定し、前記複数の副次的モードでの各回路部品の接続関係を実現するのに適切な第２のセレクタモジュールを選定し、
前記第２のセレクタモジュールの出力部が前記第１のセレクタモジュールの入力部に接続されるように、前記記述生成部が集積回路の記述に前記第１のセレクタモジュールと前記第２のセレクタモジュールに関する情報を付加することを特徴とする請求項２または請求項３記載の自動回路設計装置。
【請求項５】
集積回路を通常使用する通常使用モードと集積回路を副次的に使用する副次的モードのそれぞれを接続条件とした表形式のデータ集合を解析部が解析し、
前記解析部の解析結果に基づいて、前記副次的モードで接続される複数の回路部品の間に前記副次的モードで信号を有効に伝達するゲートモジュールを記述生成部が選定し、前記記述生成部が集積回路の記述に前記ゲートモジュールに関する情報を付加することを特徴とする請求項１から請求項４のうちのいずれか１項記載の自動回路設計装置。
【請求項６】
接続条件と接続関係に加えて、各回路部品への給電の停止が可能か否かを記述したデータ集合を解析部が解析し、
前記解析部の解析結果に基づいて、給電の停止が可能な回路部品と他の回路部品との間に配置されて、これらの回路部品の間の信号の伝達を制御するゲートモジュールを記述生成部が選定し、前記記述生成部が集積回路の記述に前記ゲートモジュールに関する情報を付加することを特徴とする請求項１から請求項５のうちのいずれか１項記載の自動回路設計装置。
【請求項７】
集積回路内の複数の回路部品に関する接続条件とこれらの接続条件に応じた各回路部品の接続関係とを記述した上位階層の表形式のデータ集合と、各前記回路部品内の内部部品に関する接続条件とこれらの接続条件に応じた各内部部品の接続関係とを記述した下位階層の複数の表形式のデータ集合を解析部が解析し、
前記解析部の解析結果に基づいて、記述生成部は、集積回路全体および前記各回路部品に関する総合的な記述を一度に生成することを特徴とする請求項１から請求項６のうちのいずれか１項記載の自動回路設計装置。
【請求項８】
コンピュータを、
集積回路の複数の回路部品に関する接続条件と前記接続条件に応じた各回路部品の接続関係とを記述した表形式のデータ集合を解析する解析部と、
前記解析部の解析結果に基づいて、ハードウエア記述言語による集積回路の記述を生成する記述生成部として機能させるためのプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、自動回路設計装置およびプログラムに関するものである。
【０００２】
【従来の技術】
近年、大規模集積回路（ＬＳＩ）に対する要求仕様は複雑化し回路規模も増大している。そのため、ゲートレベルネットリストの設計よりも、上位の言語レベルであるハードウエア記述言語（ＨＤＬ）による設計が広く行われるようになってきている。
【０００３】
集積回路（ＬＳＩ）の技術の進展に伴い、システムＬＳＩを構成する機能ブロックが、ＬＳＩを設計するための共有資産であるＩＰ（ｉｎｔｅｌｌｅｃｔｕａｌ  ｐｒｏｐｅｒｔｙ）として流通および再利用されている。複数の既存のＩＰと他の既存の回路部品を組み合わせることにより、ＬＳＩの全体（トップ階層回路）またはモジュールを設計することが可能であり、設計作業が容易になっている。一般に流通しているＩＰは、ＨＤＬのうちレジスタトランスファレベル（ＲＴＬ）で記述されたものが多い。
【０００４】
【発明が解決しようとする課題】
しかし、このような設計でも、ＩＰまたはその他の回路部品を接続するには、集積回路が作動する条件（モード）に応じて各回路部品へ供給される信号の相違を想定しながら、セレクタモジュールやセレクタモジュールを制御する制御信号生成モジュールなどの追加すべき回路部品を適切に配置するなどの複雑な思考が設計者に要求されている。このような諸事情を考慮しながら、設計者は集積回路の記述（ソース）を作成している。通常、ＩＰまたはその他の回路部品を利用し、必要な設計仕様に基づいて実際の集積回路の記述を作成するには、ＨＤＬ、特にレジスタトランスファレベルに関する知識を必要とする。従って、限られた人にしかＬＳＩの設計ができなかった。
【０００５】
現在では各ＩＰの接続ポートの数は増加し、数百を越える接続が必要となることも珍しくない。人手でＨＤＬによる回路記述を書き直していると、かなりの手間と時間をとられ、さらに記述ミスによる接続不具合が発生するおそれも増加する。
【０００６】
この発明は、上記のような課題を解決するためになされたもので、複数の回路部品を接続した集積回路の自動設計を容易にし、ＨＤＬによる回路記述の作成にかかる手間と時間を短縮する自動回路設計装置およびプログラムを得ることを目的とする。
【０００７】
【課題を解決するための手段】
この発明に係る自動回路設計装置は、集積回路の複数の回路部品に関する接続条件と前記接続条件に応じた各回路部品の接続関係とを記述した表形式のデータ集合を解析する解析部と、前記解析部の解析結果に基づいて、ハードウエア記述言語による集積回路の記述を生成する記述生成部とを備えたものである。
【０００８】
【発明の実施の形態】
以下、この発明の実施の一形態を説明する。
実施の形態１．
図１は、この発明の実施の形態１に係る自動回路設計装置を示すブロック図である。この自動回路設計装置は、ソフトウェアに基づいて動作するコンピュータであるプロセッサ１、記憶部２、表示部３および入力部４を有する。
【０００９】
記憶部２は、例えばハードディスクであって、プロセッサ１で使用されるファイル（データ集合）およびプロセッサ１で作成されたファイルを格納する。図示しないが、プロセッサ１はファイルを記憶部２とは別の記憶媒体に格納してもよいし、通信装置により、ファイルを他の装置に送出してもよい。また、プロセッサ１は、これらのファイルに基づいて、表示部３を制御して画像を表示させ、設計者に情報を提示する。設計者は入力部４を用いてプロセッサ１に指示を与えることができる。
【００１０】
プロセッサ１は、機能すなわち実行するプログラムモジュールに応じて、便宜的にスプレッドシート生成部１０、解析部１１および記述生成部１２に分類される。次に、プログラムに従ってプロセッサ１が実行する動作について図２のフローチャートを参照しながら説明する。
【００１１】
まず、ステップＳＴ１では、スプレッドシート生成部１０が一覧表形式（スプレッドシート形式）の画面を表示部３に表示させ、これによって設計者による一覧表への情報記入すなわち一覧表の作成を促す。ここで表示されて設計者に記入された一覧表の例を図３に示す。この一覧表の各行は、ＬＳＩまたはＬＳＩの部品となるモジュールの各ピン（パッドまたは入出力セル）の接続情報を表す。第１列にはそれらのピンの名前が書かれ、他の列には各ピンに接続される要素が列挙されている。この一覧表は、接続が成立する条件（接続条件１〜３）に従って列に区切られていて、各ピンがいかなる接続条件でどの要素に接続されるかを表す。ここでいう接続条件とは、例えばＬＳＩの動作のモードが含まれる。
【００１２】
図３の例は、ピンＰＡ，ＰＢ，ＰＣ，ＰＤが、いかなる接続条件でＩＰ（回路部品）Ａ，Ｂ，ＣのピンＩＰＡ１〜ＩＰＡ４，ＩＰＢ１，ＩＰＢ２，ＩＰＣ１〜ＩＰＣ３のいずれに接続されるのかを表す。具体的には、ピンＰＡは接続条件１ではＩＰＡの第１のピンＩＰＡ１に接続され、接続条件２ではＩＰＢの第１のピンＩＰＢ２に接続され、接続条件３ではＩＰＣの第１のピンＩＰＣ１に接続されることを図３の一覧表は示している。同様に、ピンＢは、どの接続条件でもＩＰＡの第２のピンＩＰＡ２に接続されることが示されている。すなわち、この一覧表は、ＬＳＩの複数の回路部品に関する接続条件（接続条件１〜接続条件３）と、これらの接続条件に応じた各回路部品の接続関係とを記述する。
【００１３】
スプレッドシート生成部１０は、一覧表のフォーマット（各欄が空いているもの）を表示部３に表示させる。設計者は、必要な設計仕様を考慮しつつ入力部４（例えばマウスのようなポインティングデバイスとキーボード）を用いて、グラフィック表示された一覧表の各欄に情報を記入することができる。このようにして一覧表を作成すると、設計者は入力部４を操作して一覧表に対応するスプレッドシートファイルを記憶部２に格納することが可能である。
【００１４】
理解を容易にするため、図３の一覧表に基づいて最終的に設計される目的の回路を図４に示す。図４から明らかなように、ピンＰＡ，ＰＢはＩＰＡ，Ｂ，Ｃに信号を入力する要素であり、ピンＰＣ，ＰＤはＩＰＡ，Ｂ，Ｃから出力される信号を受ける要素である。目的の回路には、接続条件に従ってＩＰＡ，Ｂ，ＣとピンＰＡ，ＰＢの接続関係を変更するためにセレクタモジュールＳＬ１，ＳＬ２およびエンコーダモジュール（制御信号生成モジュール）２０が設けられている。かかるセレクタモジュールＳＬ１，ＳＬ２およびエンコーダモジュール２０は、後述するようにプログラムに従ったプロセッサ１の処理により挿入されたものである。
【００１５】
図２に戻り、一覧表の作成後、解析部１１が一覧表を読み込んで、その内部のデータを解析する（ステップＳＴ２）。ここで解析部１１は、記憶部２からスプレッドシートファイルを読み込んでもよいし、記憶部２に未保存の一覧表を読み込んでもよい。
【００１６】
この後、解析部１１の解析結果に基づいて、記述生成部１２が必要なモジュールおよび信号の記述をＨＤＬによって生成し（ステップＳＴ３〜ＳＴ７）、その結果得られたモジュールおよび信号の記述を組み合わせた回路記述を出力する（ステップＳＴ８）。得られた回路記述は表示部３で確認することができ、設計者は入力部４を操作してＨＤＬによる回路記述ファイルを記憶部２に格納することが可能である。
【００１７】
図５は、図３の一覧表に基づいて作成された回路記述の一部を抜粋して示すリストである。この実施の形態に関する図５およびその他の図面に示される回路記述は、「Ｖｅｒｉｌｏｇ−ＨＤＬ」のＲＴＬに準拠する。一行目は、設計された回路が複数のＩＰを包含するＬＳＩの全体（トップ階層回路すなわちトップ階層モジュール）であって、ピンＰＡ，ＰＢ，ＰＣ，ＰＤを有することを示す。二行目および三行目は、ピンＰＡ，ＰＢが信号を入力する要素であり、ピンＰＣ，ＰＤは出力される信号を受ける要素であることを示す。四行目および五行目は、接続条件１が満たされた（条件１’ｂ１に合致した）場合には、ピンＰＡがＩＰＡの第１のピンＩＰＡ１に接続されることを示す。なお、条件１’ｂ１が接続条件１に対応することは、設計者が指定してある。
【００１８】
図２に示すように、一覧表の解析に基づいてＨＤＬによる必要なモジュールの定義文を生成する工程には、接続条件解析（ステップＳＴ３）、セレクタモジュールの挿入（ステップＳＴ４）、分岐モジュールの挿入（ステップＳＴ５）、特殊モジュールの挿入（ステップＳＴ６）、および各ＩＰの接続設定（ステップＳＴ７）がある。ステップＳＴ４〜ＳＴ７の工程は必ずしも図２のフローチャートに示された順序に従って実行する必要はなく、他の順序で実行してもよいし、複数のステップを並列に実行してもよい。また、ステップＳＴ４〜ＳＴ７の工程のいずれかを任意に省略するようにプログラミングしてもよい。
【００１９】
次に、ＬＳＩの記述を生成する工程の基本的考え方を説明する。図６は、設計者が指定した複数の回路部品とこれらの回路部品を接続するための配線を例示する。図示のように、回路部品相互を接続する配線は、一つ以上のモジュールとして捉えることができる。一覧表に記述された接続条件と接続関係に応じて、記述生成部１２は適切なモジュールを選択する。これらのモジュールは、ステップＳＴ８で最終的な回路記述が出力されるまで、プログラムが使用する固有のオブジェクトとしてプロセッサ１に保持される。プログラムのステップＳＴ３〜ＳＴ７では、図６に例示する各ブロックに適当なセル（回路の最小要素）を配置する。このようなセルの配置は、オブジェクトのメソッドの変更に対応する。
【００２０】
以下、プログラムの各ステップについて、さらに詳細に説明する。
ステップＳＴ２（図２）の一覧表の読み込みでは、解析部１１は、一覧表の各行の接続情報を抽出する。抽出した接続情報は、解析部１１によりプログラムが使用する固有のオブジェクトとして保管される。ここでは二階層のオブジェクトが使用される。一階層は各ピンのピン名、各接続条件での接続先のデータを保持するピンオブジェクトであり、もう一階層はピンオブジェクトを複数個保持しており一つの一覧表全体を表すモジュールオブジェクト（またはＩＰオブジェクト）である。以下の各ステップでは、オブジェクトで使用されたメソッドとしてのモジュールまたは信号の記述を追加または変更する。
【００２１】
ステップＳＴ３（図２）の接続条件解析では、記述生成部１２は、一覧表の各列の接続条件を解析する。具体的には、記述生成部１２は、各接続条件でアクティブとなる信号（この信号をモード識別信号と呼ぶ）を確保し、各接続条件とモード識別番号を関連づける条件定義文を作成する。図３のように接続条件（モード）が三通りあるような一覧表については、三つのモード識別信号が定義され、各接続条件に応じて、いずれかのモード識別信号がアクティブとなり、他のモード識別信号が非アクティブとなる。
【００２２】
図３および図５に示された接続条件は、実際には、ある信号線がローレベル（Ｌ）かハイレベル（Ｈ）かを示す条件論理式で表されたり、あるいはいくつかの信号線の各レベルを示す条件論理式で表されたりする。そのような形式で図３の一覧表に記入された条件論理式を解析部１１はそのまま保持し、接続条件解析で記述生成部１２はこれらの条件論理式とモード識別信号を関連づける条件定義文を作成する。複数のモード識別信号が同時にアクティブになることは避けることが好ましい。従って条件定義文で使用される条件分岐式が互いに排他的である必要がある。最終的には、記述生成部１２は、図７に示す条件分岐式を含んだ条件定義文を意味する記述を生成する。
【００２３】
ステップＳＴ４（図２）のセレクタモジュールの挿入では、記述生成部１２は、接続条件に応じた各回路部品の接続関係を実現するのに適切なセレクタモジュール（例えば図４のセレクタモジュールＳＬ１，ＳＬ２）を選定し、セレクタモジュールに関する定義文を保持する。また、記述生成部１２は、セレクタモジュールを制御する制御信号を生成するのに適切な制御信号生成モジュールに関する情報をＬＳＩの記述に付加する。
【００２４】
具体的には、プログラムに従って記述生成部１２は、各回路部品（例えばＩＰ）の入力ピンに対する接続先を調べるとともに接続先をカウントする。例えば、図３の一覧表では、ＩＰＡ，Ｂ，Ｃと別の回路部品にとっての入力ピンＰＣの接続先は、ピンＩＰＡ３，ＩＰＢ２，ＩＰＣ２の三つであり、ピンＰＤの接続先はピンＩＰＡ４，ＩＰＣ３の二つである（同じ接続先はカウントしない）。このようにして調べた接続先をプログラムで利用する配列として記述生成部１２は保持する。以後、この接続先を表した配列を接続認識配列と呼ぶ。
【００２５】
記述生成部１２は、接続認識配列と接続先の個数に基づいて適切なセレクタモジュールを適切なピンに接続することを記述した接続定義文を生成して、保持する。接続条件の数にかかわらず、各セレクタモジュールは、接続先の個数と同数の入力部と、一つの出力部を有する。例えば、ピンＰＣについては、三つの入力部と一つの出力部を有するセレクタモジュールＳＬ１が選択される。
【００２６】
仮に入力ピンへの接続先が一つのみの場合、記述生成部１２はセレクタモジュールを挿入せずに、単純な接続定義文あるいはバッファのみを記述した文を生成して保持する。例えば、ＩＰＡの入力ピンＩＰＡ１の接続先は一つのピンＰＡだけであるので、ピンＩＰＡ１とピンＰＡを接続する旨だけを規定した定義文か、ピンＩＰＡ１とピンＰＡの間にバッファが介在する旨を規定した文を生成して保持する。
【００２７】
さらに、記述生成部１２は、制御信号生成モジュール（エンコーダモジュール）を定義する。制御信号生成モジュールは、モード識別番号に従ってこれらのセレクタモジュールを制御する制御信号を各セレクタモジュールに供給する。制御信号生成モジュールは、前記の接続条件と接続認識配列に基づいて定義され、記述生成部１２は、制御信号生成モジュールを適切にセレクタモジュールに接続することを記述した接続定義文を生成して保持する。
【００２８】
この制御信号生成モジュールによって、セレクタモジュールは接続条件（例えばＬＳＩの動作モード）に合ったパスを選択することができる。また、複数の接続条件について同じ接続が存在しても、余計なセレクタモジュールを作成せずに、必要最低個数のセレクタモジュールのみで接続条件に合ったパスの選択が可能になる。
【００２９】
実際のＬＳＩでは、ＬＳＩを通常使用する通常使用モードとＬＳＩを副次的に使用する副次的モード（例えばＬＳＩを試験するテストモード）とでは、一般的に性能に対する要求が異なる。重要性が高い通常使用モードでは、要求される処理速度が高く、電力消費も最小限にすべきである。一方、テストモードは、各回路部品が機能的に動作していることを確認することのみを目的とすることが多く、処理速度、容量、抵抗に関する許容度が、通常使用モードより高い。そこで、複数の副次的モードがあるＬＳＩの設計におけるセレクタモジュールの挿入に関しては、以下のように工夫すると好ましい。
【００３０】
まず、図８に例示する一覧表をステップＳＴ１で設計者が完成させる。この一覧表は、ＬＳＩを通常使用する通常使用モードとＬＳＩを副次的に使用する複数の副次的モードのそれぞれを接続条件として記述し、各モードに応じた回路部品の接続関係を記述する。ステップＳＴ３の接続条件解析では、記述生成部１２は、一覧表の各列のモードとモード識別番号を関連づける条件定義文を作成する。
【００３１】
そして、ステップＳＴ４のセレクタモジュールの挿入では、記述生成部１２は、通常使用モードで接続される複数の回路部品（例えばＩＰ）の間に介在する第１のセレクタモジュールを選定する。また記述生成部１２は、複数のテストモードでの各回路部品の接続関係を実現するのに適切な第２のセレクタモジュールを選定し、第２のセレクタモジュールの出力部が第１のセレクタモジュールの入力部に接続されるように、第１のセレクタモジュールと第２のセレクタモジュールに関する記述を生成する。また、記述生成部１２は、制御信号生成モジュールをこれらのセレクタモジュールに接続することを記述した接続定義文を生成する。
【００３２】
図９は図８に例示する一覧表に基づいて最終的に設計される目的の回路を示す。図示の第１のセレクタモジュールＳＬ３の入力部は、通常パスＮＰとテストパスＴＰに接続されており、あるＩＰの入力部にセレクタモジュールＳＬ３の出力部は接続されている。複数のテストモードが利用されることから、複数のテストパスが必要になる。この設計例では、テストパスＴＰに出力部が接続された第２のセレクタモジュールＳＬ４を設けることにより、テストパスＴＰを複数のテストパスＴＰ１〜ＴＰ３に分岐させている。
【００３３】
セレクタモジュールＳＬ３，ＳＬ４を制御するためにエンコーダモジュール（制御信号生成モジュール）２１が設けられている。エンコーダモジュール２１は単一の信号線ＢＡを介して第１のセレクタモジュールＳＬ３に接続されており、通常パスＮＰ上の信号とテストパスＴＰ上の信号のいずれかを選択する制御信号をセレクタモジュールＳＬ３に供給する。また、エンコーダモジュール２１は複数の並列信号線ＢＢを介して第２のセレクタモジュールＳＬ４に接続されており、セレクタモジュールＳＬ３にテストパスＴＰ上の信号を選択させている時に、テストパスＴＰ１〜ＴＰ３のいずれかを選択する制御信号をセレクタモジュールＳＬ４に供給する。
【００３４】
このように通常パスＮＰとテストパスＴＰのために、二つの入力部と一つの出力部を有する第１のセレクタモジュールＳＬ３を設け、テストパスＴＰ１〜ＴＰ３のために、三つの入力部と一つの出力部を有する第２のセレクタモジュールＳＬ４を設けている。従って、一つの通常使用モードと複数のテストモードで動作するＬＳＩにおいて一つの通常パスＮＰと複数のテストパスＴＰが設けられても、第１のセレクタモジュールＳＬ３は、通常パスＮＰとテストパス群の二つの選択肢しか持たないので、その内部構成（例えば内部ゲートの個数や配線パターン）はセレクタのうち最も簡単である。このため通常使用モードでは、高い処理速度と、低い電力消費を達成することが可能である。
【００３５】
図１０は図９に記載の回路に関する各セレクタモジュールの記述を平易化して示すリストであり、図１１は図９に記載の回路に関するエンコーダモジュールの記述を平易化して示すリストである。
【００３６】
図１０の１行目〜５行目は、信号線ＢＡ上の信号が１であると、セレクタモジュールＳＬ３はＩＰの入力部へ通常パスＮＰ上の信号を供給し、それ以外の場合には、セレクタモジュールＳＬ３はＩＰの入力部へセレクタモジュールＳＬ４の出力信号を供給することを示す。また、６行目および７行目は、信号線ＢＢ上の信号が１であると、セレクタモジュールＳＬ４はテストパスＴＰ１上の信号を供給することを示す。８行目および９行目は、他の場合に、信号線ＢＢ上の信号が２であると、セレクタモジュールＳＬ４はテストパスＴＰ２上の信号を供給することを示す。１０行目および１１行目は、他の場合にはセレクタモジュールＳＬ４はテストパスＴＰ３上の信号を供給することを示す。
【００３７】
図１１の１行目〜３行目は、モード識別信号１がオンであると、エンコーダモジュール２１はセレクタモジュールＳＬ３に通常パスＮＰを選択する制御信号を信号線ＢＡに流し、セレクタモジュールＳＬ４に本来不要であるがテストパスＴＰ１を選択する制御信号を信号線ＢＢに流すことを示す。４行目〜６行目は、他の場合に、モード識別信号２がオンであると、エンコーダモジュール２１はセレクタモジュールＳＬ３にテストパスＴＰを選択する制御信号を信号線ＢＡに流し、セレクタモジュールＳＬ４にテストパスＴＰ１を選択する制御信号を信号線ＢＢに流すことを示す。７行目〜９行目は、他の場合に、モード識別信号３がオンであると、エンコーダモジュール２１はセレクタモジュールＳＬ３にテストパスＴＰを選択する制御信号を信号線ＢＡに流し、セレクタモジュールＳＬ４にテストパスＴＰ２を選択する制御信号を信号線ＢＢに流すことを示す。１０行目〜１２行目は、他の場合には、エンコーダモジュール２１はセレクタモジュールＳＬ３にテストパスＴＰを選択する制御信号を信号線ＢＡに流し、セレクタモジュールＳＬ４にテストパスＴＰ３を選択する制御信号を信号線ＢＢに流すことを示す。
【００３８】
ステップＳＴ５（図２）の分岐モジュールの挿入では、記述生成部１２は、解析部１１の解析結果に基づいて、副次的モード（例えばテストモード）で接続される複数の回路部品（例えばＩＰ）の間に副次的モードで信号を有効に伝達するゲートモジュールを選定し、記述生成部１２がゲートモジュールに関する記述を生成して保持する。設計者は図８に示すような通常使用モードと副次的モードを記述した一覧表を完成しておく。ステップＳＴ３の接続条件解析では、記述生成部１２は、一覧表の各列のモードとモード識別番号を関連づける条件定義文を作成する。
【００３９】
図１２は、分岐モジュールを具体的に示す回路図である。設計者が完成した一覧表では、一つのＩＰ３０の出力ピンが、通常使用モードでは回路部品モジュール３１の入力ピンに接続され、テストモードでは回路部品モジュール３２の入力ピンに接続されると一覧表で指定されている。ただし、回路部品モジュール３１，３２は実質的に無内容な単なる接続線である場合もある。
【００４０】
ＩＰ３０と、通常使用モードで使用される回路部品モジュール３１は、単に通常パスＮＰで接続すればよい。しかし、通常使用モードでは、ＩＰ３０から回路部品モジュール３２に信号が伝搬しないようにして消費電力の増大を防止する必要がある場合が多い。そこで、最終的に得られる回路が図１２に示す構造を持つように、記述生成部１２が接続認識配列に基づいてゲートモジュールに関する記述を生成する。この分岐モジュールの挿入のためにも、プログラムに従って記述生成部１２は、接続認識配列を生成して保持するが、分岐モジュールの挿入で作成される接続認識配列は、各回路部品（例えばＩＰ）の入力ピンではなく出力ピンに対する接続先を調査した結果である。
【００４１】
図１２に示すように、最終的に得られる回路にはＡＮＤゲートモジュール３４が設けられており、ＡＮＤゲートモジュール３４の出力部はテストモードで使用される回路部品モジュール３２にテストパスＴＰを介して接続されている。通常パスＮＰの途中から分岐線が分岐しており、これがＡＮＤゲートモジュール３４の一方の入力部に接続されている。このように分岐線とＡＮＤゲートモジュール３４とテストパスＴＰを持つ分岐モジュール３５が設けられている。
【００４２】
ＡＮＤゲートモジュール３４の他方の入力部は、エンコーダモジュール（ゲート制御モジュール）３６に接続されている。エンコーダモジュール３６は、ＬＳＩの通常使用モードでは、ローレベルの電位をＡＮＤゲートモジュール３４に与える。従って、ＬＳＩの通常使用モードでは、テストパスＴＰ上の電位はローレベルに固定され、電力消費が抑えられる。他方、テストモードでは、ハイレベルの電位をエンコーダモジュール３６はＡＮＤゲートモジュール３４に与え、ＩＰ３０から回路部品モジュール３２への実質的な接続を可能にする。エンコーダモジュール３６は、接続条件解析（図２のステップＳＴ３）で得られた前記の接続条件に基づいて定義される。
【００４３】
実際の記述では、ＡＮＤゲートモジュールを指定するには、記述生成部１２は、固定モジュールのインスタンス呼出文を記述する。例えば以下のようにである。
ＴＢＫＴＯ１（．Ａ（ＩＰの出力ピンの出力信号名の指定），．Ｂ（通常モードでローレベルになる信号名の指定），．Ｎ（通常パスノードの指定），．Ｔ（テストパスノードの指定））；
ここでＴＢＫＴＯ１とはゲートモジュールの呼び名の例であり、ゲートモジュールの呼び名はこの表記に限らず設計者が任意に決定できる。
【００４４】
仮に出力ピンへの接続先が一つのみでありその接続が通常使用モードだけで行われる場合、記述生成部１２は分岐モジュールにＡＮＤゲートモジュールを配置するのではなくバッファのみを配置した定義文を生成するか、単純な接続定義文を生成する。また、出力ピンへの接続先が一つのみでありその接続がテストモードだけで行われる場合、その出力ピンには通常パスが接続されずテストパスのみが接続されるが、そのテストパスの途中にはＡＮＤゲートモジュールが配置され、ＡＮＤゲートモジュールの一方の入力端がエンコーダモジュールに接続される。この場合も、エンコーダモジュールは、通常使用モードでは、ローレベルの電位をＡＮＤゲートモジュールに与え、テストモードでは、ハイレベルの電位をＡＮＤゲートモジュールに与える。これにより、テストモードでは、出力ピンからＡＮＤゲートモジュールの出力部への実質的な接続が可能になる一方、通常使用モードではＡＮＤゲートモジュールの出力部の電位はローレベルに固定され、電力消費が抑えられる。
【００４５】
一つの出力ピンに接続されるテストパスが複数ある場合は、このＡＮＤゲートモジュールの出力部を他のＡＮＤゲートモジュールの一方の入力部に接続し、各ＡＮＤゲートモジュールをエンコーダモジュールで制御すればよい。
【００４６】
ステップＳＴ６（図２）の特殊モジュールの挿入では、記述生成部１２は、解析部１１の解析結果に基づいて、給電の停止が可能な回路部品（例えばＩＰ）と他の回路部品（例えばＩＰ）との間に配置されて、これらの回路部品の間の信号の伝達を制御するゲートモジュールを選定し、記述生成部１２がゲートモジュールに関する情報を生成して保持する。この特殊モジュールの挿入は、前述した接続条件と接続関係に加えて、各回路部品への給電の停止が可能か否かを記述したファイルを解析部１１が解析した場合に実行される。従って、各回路部品への給電の停止が可能か否かを記述した一覧表をステップＳＴ１で設計者が完成させていることが、特殊モジュールの挿入の前提条件である。ステップＳＴ２の一覧表の読み込みでは、解析部１１は、各回路部品への給電の停止が可能か否かを示す情報を保持する。
【００４７】
図１３は、特殊モジュールの挿入で付加されたゲートモジュールを具体的に示す回路図である。図に示すように、同一チップにおいて境界ＢＤを間に挟んでブロックＢＬ１，ＢＬ２が存在する。ブロックＢＬ１はＬＳＩの動作中に給電の停止が可能なブロックであり、ブロックＢＬ２はＬＳＩの動作中は常に給電されているブロックである。ブロックＢＬ１の通常使用モードでは、ブロックＢＬ１中のＩＰ４０から通常パスＮＰ１を介してブロックＢＬ２中のＩＰ４１に信号が供給される必要がある。
【００４８】
ブロックＢＬ１には、ブロックＢＬ１のテストモードでの消費電力増大防止のために分岐モジュール４２が設けられている。すなわち、通常パスＮＰ１から分岐したの途中から分岐線が分岐しており、これがＡＮＤゲートモジュール４３の一方の入力部に接続されている。ＡＮＤゲートモジュール４３の他方の入力部にハイレベルの電位が与えられた場合に限って、ＡＮＤゲートモジュール４３はその出力部に接続されたテストパスＴＰ４にＩＰ４０からのテスト信号を供給することができるようになっている。
【００４９】
他方、ブロックＢＬ２には、ブロックＢＬ２の通常使用モードでの動作とテストモードでの信号の流れを区別するためのセレクタモジュールＳＬ５が配置されている。セレクタモジュールＳＬ５は二つの入力部を有しており、これらの入力部はそれぞれ通常パスＮＰ２とテストパスＴＰ５に接続されている。
【００５０】
図示のように、ＬＳＩの動作中に給電の停止が可能なブロックＢＬ１からＬＳＩの動作中に常に給電されている（給電の停止が不可能な）ブロックＢＬ２へ信号が供給されるチップにおいては、ブロックＢＬ１への給電を停止しても、実際には暫くの間、ＩＰ４０からＩＰ４１への信号の電位がローレベルにならず、このため中間電位のリーク電流がＩＰ４１に悪影響を及ぼす可能性がある。そこで、図示の実施の形態では、ＩＰ４０とＩＰ４１との間にＡＮＤゲートモジュール（特殊モジュール）４４が配置されている。
【００５１】
ＡＮＤゲートモジュール４４の一方の入力部は、ＩＰ４０の出力信号が流れる通常パスＮＰ１に接続され、他方の入力部は制御パスＣＰに接続されている。また、ＡＮＤゲートモジュール４４の出力部は、ＩＰ４１に入力される信号が流れる通常パスＮＰ２に接続されている。このような構成の下、制御パスＣＰの電位がハイレベルの場合に限って、ＡＮＤゲートモジュール４４の出力部に接続された通常パスＮＰ２での電位がハイレベルになりうる。従って、ブロックＢＬ１への給電停止と同時に制御パスＣＰでの電位をローレベルとするように制御すれば、ブロックＢＬ１への給電停止後に、通常パスＮＰ２の電位は常にローレベルに固定され、ＩＰ４１に不適切な信号が供給される事態にはならない。
【００５２】
ＬＳＩの構成および動作モードによっては、逆に、ブロックＢＬ１への給電停止の後でも、ブロックＢＬ２のＩＰ４１への入力信号の電位が常にハイレベルである方が望ましい場合も考えられる。このような場合には、ＡＮＤゲートモジュール４４に代えてＯＲゲートモジュール（図示せず）を配置してもよい。この構成では、ブロックＢＬ１への給電停止と同時に制御パスＣＰでの電位をハイレベルとするように制御すれば、ブロックＢＬ１への給電停止後に、通常パスＮＰ２の電位は常にハイレベルに固定され、やはりＩＰ４１に不適切な信号が供給される事態にはならない。
【００５３】
このように、ＬＳＩの動作中に給電の停止が可能な回路部品の出力部と他の回路部品との間に配置されて、給電の停止が可能な回路部品からの信号の伝達を制御する（すなわちその回路部品からの出力電位を固定する）ゲートモジュールを特殊モジュール（首締めブロック）と呼び、このブロックを有する接続を特殊接続と呼ぶ。
【００５４】
また、ＬＳＩの動作中に常に給電されている（給電の停止が不可能な）ブロックから出力されたハイレベルの信号が、給電が停止されているブロックのｐチャネルＭＯＳトランジスタのドレインあるいはソースに供給される場合、接合方向が順方向となるために、ソースとドレイン間にリーク電流が発生する可能性がある。そこで、常に給電されている（給電の停止が不可能な）ブロックと、給電の停止が可能なブロックのｐチャネルＭＯＳトランジスタのドレインあるいはソースの間に、ゲートモジュール（例えばバッファ）を介在させて、ゲート電圧に従ってドレイン電流が正確に制御されるようにしてもよい。このような目的で配置されるゲートモジュールも特殊モジュールと呼ぶ。
【００５５】
図１３に示すように、ＬＳＩの動作中に給電の停止が可能なブロックＢＬ１に分岐モジュール４２が存在し、ＬＳＩの動作中に常に給電されている（給電の停止が不可能な）ブロックＢＬ２にセレクタモジュールＳＬ５が存在する場合には、このような特殊接続は、分岐モジュール４２の分岐線とセレクタモジュールＳＬ５の中間に位置するように配置する。
【００５６】
上述のように、各回路部品（例えばＩＰ）への給電の停止が可能か否かを記述した一覧表をステップＳＴ１で設計者が完成させている。ステップＳＴ２の一覧表の読み込みでは、解析部１１は、一つの一覧表全体を表すＩＰオブジェクトに、各回路部品への給電の停止が可能か否かを示す情報を保持しておく。この情報に基づいて、常に給電されている（給電の停止が不可能な）ブロックと、給電の停止が可能なブロックの境界ＢＤを横切る接続線には、特殊モジュールを挿入することになる。またその場合、給電が停止されるとローレベルまたはハイレベルになる制御パスＣＰ上の信号もＩＰオブジェクトに記憶しておき、ステップＳＴ６の特殊接続の挿入では、この信号と各信号の論理積または論理和を生成するゲートモジュールを選定し、このゲートモジュールに関する記述を生成して保持する。
【００５７】
実際の記述では、特殊モジュールとしてＡＮＤゲートモジュールを指定するには、記述生成部１２は例えば以下のような固定モジュールのインスタンス呼出文を記述する。
ＡＮＤ  ＮＯ１（．Ａ（分岐モジュールの通常パスＮＰ１のノードの指定），．Ｂ（制御パスＣＰ上の信号名の指定），．Ｙ（セレクタモジュールＳＬ５の入力部に接続された通常パスＮＰ２のノードの指定））；
ここでＡＮＤ  ＮＯ１とはゲートモジュールの呼び名の例であり、ゲートモジュールの呼び名はこの表記に限らず設計者が任意に決定できる。
特殊モジュールとしてＯＲゲートモジュールを指定するには、記述生成部１２は以下のような固定モジュールのインスタンス呼出文を記述する。
ＯＲ  Ｎ０２（．Ａ（分岐モジュールの通常パスＮＰ１のノードの指定），．Ｂ（制御パスＣＰ上の信号名の指定），．Ｙ（セレクタモジュールＳＬ５の入力部に接続された通常パスＮＰ２のノードの指定））；
ここでＯＲ  ＮＯ２とはゲートモジュールの呼び名の例であり、ゲートモジュールの呼び名はこの表記に限らず設計者が任意に決定できる。
【００５８】
ＬＳＩの動作中に常に給電されている（給電の停止が不可能な）ブロック同士、または同じタイミングで給電が開始および停止されるブロック同士の接続では、かかる特殊モジュールは必要ない。しかしながら、二つのブロックの境界ＢＤを横切る接続線に必ず特殊モジュールを設けるようにルール付けした場合には、本質的に必要でなくても形式的に特殊モジュールを設ける必要がある。そのような場合には、形式的に設けられた特殊モジュールに単にバッファまたは接続線を設ければよい。記述生成部１２は、特殊モジュールとして、バッファのみを配置した定義文を生成するか、単純な接続定義文を生成する。
【００５９】
ステップＳＴ７（図２）の各ＩＰ接続の設定では、記述生成部１２は、解析部１１の解析結果に基づいて、ＬＳＩ内の複数のＩＰに関する接続条件とこれらの接続条件に応じた各ＩＰの接続に関する記述をＨＤＬで生成する。従って、この実施の形態では、ピン（パッドまたは入出力セル）とＩＰとの間の接続を記述することができるだけでなく、ステップＳＴ７により複数のＩＰの間の接続を記述することが可能である。
【００６０】
従って、図１４に示すように、全体のＬＳＩ内の複数の回路部品（ピンおよびＩＰ）に関する接続条件とこれらの接続条件に応じた各回路部品の接続関係とを記述したトップ階層の一覧表と、各ＩＰ内の内部部品に関する接続条件とこれらの接続条件に応じた各内部部品の接続関係とを記述した下位階層の複数の一覧表とをステップＳＴ１で設計者が完成させていることが、各ＩＰ接続の設定の前提条件である。ステップＳＴ２の一覧表の読み込みでは、解析部１１は、各ピンに対応するピンオブジェクトに加えて、トップ階層の一覧表（ＬＳＩ全体）を表すＩＰオブジェクトと、下位階層の一覧表（各ＩＰ）を表す複数のＩＰオブジェクトを保持しておく。ステップＳＴ３〜ＳＴ６では、上記と同様に、オブジェクトで使用されたメソッドとしてのモジュールまたは信号の記述を追加または変更する。そして、ステップＳＴ７で、各ＩＰの接続に関する記述を生成して保持する。
【００６１】
図３のように一枚の一覧表しか設計者が準備しない場合には、ＩＰとパッドの接続のみしか一覧表に記述できなかったため、複数のＩＰ同士の接続をＨＤＬで記述できないが、各ＩＰ内の内部部品に関する接続条件とこれらの接続条件に応じた各内部部品の接続関係とを記述した下位階層の複数の一覧表を準備して、これらの一覧表に基づいてＩＰ間の接続をＨＤＬで記述することが可能である。これらの一覧表の作成において、内部部品の接続が成立する条件を統一的な規則に従って表記しておけば、この自動回路設計装置でステップＳＴ４で作成する多数のセレクタモジュールの制御信号を生成する制御信号生成モジュール（エンコーダモジュール）を共通に作成できる。すなわち、制御信号生成モジュールの個数を最小限にすることが可能である。
【００６２】
図１５は、複数の一覧表に基づいて各ＩＰ接続の設定を経て自動設計されうるトップ階層回路を示す回路図である。図１５に示すように、ピンＰＡ〜ＰＦがセレクタモジュールＳＬ１〜ＳＬ６を介してＩＰＡ，Ｂに接続されているだけでなく、ＩＰＢの出力ピンがセレクタモジュールＳＬ２を介してＩＰＡの入力ピンに接続され、ＩＰＡの出力ピンがセレクタモジュールＳＬ３，ＳＬ４を介してＩＰＢの入力ピンに接続されている。このようにＩＰ間の接続も存在するかなり複雑な回路を自動設計することができる。複数のセレクタモジュールＳＬ１〜ＳＬ６の全てまたはいずれかは、共通の制御信号生成モジュールによって制御できるように制御信号生成モジュールを設計することができる。
【００６３】
最後の工程としてステップＳＴ８（図２）のＨＤＬによる回路記述出力では、今までのセレクタモジュールの挿入、分岐モジュールの挿入、特殊モジュールの挿入、および各ＩＰの接続の各工程で保持（登録）された記述を、回路言語記述の文法に則って出力する。具体的には、設計対象のＬＳＩ全体で使用される各モジュールを定義し、各モジュール定義の中で各ＩＰおよびピン（パッドまたは入出力セル）の接続を示したインスタンス定義を記述する。また、登録された分岐モジュール、セレクタモジュール、特殊モジュールのインスタンス定義を対象ＬＳＩ全体のモジュール定義の中で行う。その後、対象ＬＳＩ全体のモジュール定義をクロ一ズし、セレクタモジュールのモジュール定義を付加する。さらに、制御信号生成モジュール（エンコーダモジュール）のモジュール定義を付加する。このようにして設計対象のＬＳＩ全体に関するＨＤＬ（ＲＴＬ）による記述が出力され、ＲＴＬのファイルが作成される。
【００６４】
さらに、一覧表を利用して、論理合成ツールに適用する合成スクリプトを自動生成し、これらの合成スクリプトを用いて論理合成を行うようにプログラミングしてもよい。ステップＳＴ８で出力されたＬＳＩ全体に関するＲＴＬによる回路記述は論理合成することができ、これによりネットリストの論理回路が自動的に生成される。合成スクリプトは、ＲＴＬによる回路記述をネットリストに論理合成するための設計制約条件または規則をスクリプト言語で記述した簡単なプログラムである。
【００６５】
プロセッサ１は、一覧表から論理合成するための合成条件または規則を抽出し、これらの合成条件または規則から合成スクリプトを作成することができる。この合成スクリプトを論理合成ツールに読み込ますだけで、論理合成ができるようになる。上述のように接続条件によって各回路部品の接続関係が異なるために、複数の論理回路を作成する必要があり、このため複数の合成スクリプトが必要である。ＲＴＬに指定するインスタンス文が多量にある場合に、多数の合成スクリプトを作成するのは手間がかかるが、自動的に合成スクリプトを生成することによって合成効率を高めることが可能である。
【００６６】
さらに一覧表を利用して、ＬＳＩ内の各回路部品の接続を検証するためのテストパターンを作成し、これらのテストパターンを用いて接続を検証するようにプログラミングしてもよい。各テストパターンは、各ＩＰの出力ノードに強制的かつ仮想的に印加され、その出力ノードの接続先の入力ノードから同じテストパターンが読み取られれば、接続が確認されたことになる。
【００６７】
プロセッサ１は、一覧表から接続確認のためのテストパターンを自動生成できる。テストパターンは簡単ではあるが記述量が多く生成するためにかなりの手間がかかるが、自動的にテストパターンを生成することによって検証効率を高めることが可能である。ここで行う検証は、ＨＤＬによる回路記述に対して行う検証でもよいし、合成されたネットリストに対して行う検証でもよい。
【００６８】
以上のように、この実施の形態１によれば、プログラムによって動作する自動回路設計装置が、ＬＳＩ内の複数の回路部品に関する接続条件とこれらの接続条件に応じた各回路部品の接続関係とを記述した一覧表を解析する解析部１１と、解析部１１の解析結果に基づいて、ＨＤＬによるＬＳＩの記述を生成する記述生成部１２とを備えるので、複数の回路部品を接続した集積回路の自動設計を容易にし、ＨＤＬによる回路記述の作成にかかる手間と時間を短縮することができるという効果がある。設計者が作成する一覧表は、ＨＤＬの文法に関する知識や回路に関する部品配置のノウハウを必要とせず、設計者は、接続が成立する条件とその条件に応じた接続関係のみを一覧表に規定すればよい。設計者は一覧表を単純なフォーマットに従って埋めていくだけでよい。また、一覧表のフォーマットは至って簡単であるため、ＨＤＬに比べて習得が容易であり、特別な技術を有さない設計者でも作成が可能となる。
【００６９】
このような一覧表に基づいた回路設計は、複数のモジュールを接続する回路において有効なので、トップ階層回路の設計だけでなく、比較的上位階層の接続設計に便利である。
【００７０】
特に、この実施の形態１では、解析部１１の解析結果に基づいて、記述生成部１２は、接続条件に応じた各回路部品の接続関係を実現するのに適切なセレクタモジュールを選定し、ＬＳＩの記述にセレクタモジュールに関する情報を付加するので、接続条件に応じてセレクタモジュールを設計者自身が選定する必要がなく、特別な技術を有さない設計者でもＨＤＬによる回路設計が可能である。
【００７１】
また、この実施の形態１では、解析部１１の解析結果に基づいて、記述生成部１２は、セレクタモジュールを制御する制御信号を生成するのに適切な制御信号生成モジュールに関する情報をＬＳＩの記述に付加するので、接続条件に応じて制御信号生成モジュール（エンコーダモジュール）を設計者自身が選定する必要がなく、特別な技術を有さない設計者でもＨＤＬによる回路設計が可能である。
【００７２】
さらに、この実施の形態１では、ＬＳＩを通常使用する通常使用モードとＬＳＩを副次的に使用する複数の副次的モードのそれぞれを接続条件とした一覧表を解析部１１が解析し、解析部１１の解析結果に基づいて、記述生成部１２は、通常使用モードで接続される複数の回路部品の間に介在する第１のセレクタモジュールＳＬ３を選定し、複数の副次的モードでの各回路部品の接続関係を実現するのに適切な第２のセレクタモジュールＳＬ４を選定し、第２のセレクタモジュールＳＬ４の出力部が第１のセレクタモジュールＳＬ３の入力部に接続されるように、記述生成部１２がＬＳＩの記述に第１のセレクタモジュールＳＬ３と第２のセレクタモジュールＳＬ４に関する情報を付加するようにした。従って、設計されたＬＳＩにおいては、一つの通常パスＮＰと複数のテストパスＴＰが設けられても、第１のセレクタモジュールＳＬ３は、通常パスＮＰとテストパス群の二つの選択肢しか持たないので、その内部構成（例えば内部ゲートの個数や配線パターン）はセレクタのうち最も簡単である。このため通常使用モードでは、高い処理速度と、低い電力消費を達成することが可能である。
【００７３】
さらに、この実施の形態１では、ＬＳＩを通常使用する通常使用モードとＬＳＩを副次的に使用する副次的モードのそれぞれを接続条件とした一覧表を解析部１１が解析し、解析部１１の解析結果に基づいて、副次的モードで接続される複数の回路部品の間に副次的モードで信号を有効に伝達するゲートモジュール３４を記述生成部１２が選定し、記述生成部１２がＬＳＩの記述にゲートモジュール３４に関する情報を付加する。従って、通常使用モードではゲートモジュール３４の出力部の電位はローレベルに固定され、電力消費が抑えられる。
【００７４】
さらに、この実施の形態１では、接続条件と接続関係に加えて、各回路部品への給電の停止が可能か否かを記述したデータ集合を解析部１１が解析し、解析部１１の解析結果に基づいて、給電の停止が可能な回路部品と他の回路部品との間に配置されて、これらの回路部品の間の信号の伝達を制御するゲートモジュール４４を記述生成部１２が選定し、記述生成部１２がＬＳＩの記述にゲートモジュール４４に関する情報を付加する。従って、給電の停止が可能な回路部品への給電停止後に、ゲートモジュール４４の出力部の電位はローレベルまたはハイレベルに固定され、不適切な信号が供給される事態を避けることが可能である。
【００７５】
さらに、この実施の形態１では、ＬＳＩ内の複数の回路部品に関する接続条件とこれらの接続条件に応じた各回路部品の接続関係とを記述した上位階層の一覧表と、各回路部品内の内部部品に関する接続条件とこれらの接続条件に応じた各内部部品の接続関係とを記述した下位階層の複数の一覧表を解析部１１が解析し、解析部１１の解析結果に基づいて、記述生成部１２は、ＬＳＩ全体および各回路部品に関する総合的な記述を一度に生成する。従って、これらの一覧表に基づいてＩＰ間の接続も存在するかなり複雑な回路をＨＤＬで自動設計することが可能である。
【００７６】
【実施例】
全体のＬＳＩ内の接続関係を記述したトップ階層の一覧表と、各ＩＰ内の接続関係を記述した下位階層の複数の一覧表とを作成し、実際にＨＤＬによるＬＳＩの記述を生成した。
図１６はトップ階層の一覧表であり、図１７は設計したトップ階層回路の通常使用モードでの回路図であり、図１８〜図２０はそれぞれトップ階層回路内のＩＰＡ〜Ｃの一覧表である。図１７に矩形の箱として示すように、トップ階層回路内には三つのＩＰＡ〜Ｃが存在する。
【００７７】
トップ階層回路の接続を示した図１６の左端の列にはＬＳＩの端子である入出力バッファのピンＡ〜Ｈ，Ｔ１，Ｔ２の名前が記入されている。ピンＡ，Ｅ，Ｄ，Ｔ１，Ｔ２は入力バッファの出力ピンでありその出力信号名がＹであり、ピンＨは出力バッファの入力ピンでありその入力信号名がＡであり、他のピンＢ，Ｃ，Ｆ，Ｇは双方向ピンでありその入力または出力信号名がＡ，Ｙ，Ｃ，ＩＥであることが記入されている。
【００７８】
ＬＳＩの動作モード（接続条件）は５通りある。すなわち通常モード（通常使用モード）と各ＩＰＡ〜Ｃの切り出しモード（各ＩＰＡ〜Ｃを個別に試験するテストモード）であるが、ＩＰＣに関しては２通りの切り出しモードがある。一覧表中の各モードの名前の下には、そのモードの成立条件が記入されている。ここでは、パッドのピンＴ１，Ｔ２，Ｃの信号内容によってモードが設定されること表されている。例えば、ピンＴ１，Ｔ２上の信号が０なら通常モードであり、全てのピンＴ１，Ｔ２，Ｃの信号が１ならＣ切り出しモード２である。
【００７９】
図１６では、各モードにおいて、ピンＡ〜Ｈ，Ｔ１，Ｔ２が、どのＩＰの入力ピンまたは出力ピンとしてのどのピンに接続されるかが記されている。一覧表中のＩＰの列はＩＰを識別し、ＰＩＮ（ＩＰ）の列はＩＰ内のピンを識別し、ＩＯの列は入力ピン（Ｉ）か出力ピン（Ｏ）かを識別する。例えば、図１６に示すように、通常モードで、ピンＡはＩＰＡの入力ピンとしてのピンｂに接続され、ピンＢはＩＰＡの入力ピンとしてのピンａに接続される。
【００８０】
図１８〜図２０では、それぞれＩＰＡ〜Ｃ内のピン名と各モードでのピンの接続先が記入されており、図１６と同様に各モードとモードの成立条件が記入されている。モードの記載事項に関しては全ての一覧表で統一されている。
【００８１】
図１８〜図２０の左端の列にはＩＰＡ〜Ｃ内のピン名が記入され、次の列には各ピンが入力ピン（Ｉ）か出力ピン（Ｏ）か記入される。図１８〜図２０では、各モードにおいて、各ピンが、どのＩＰ（またはパッド）の入力ピンまたは出力ピンとしてどのピンに接続されるかが記されている。一覧表中のＩＰの列はＩＰまたはパッドを識別し、ＰＩＮ（ＩＰ）の列はＩＰまたはパッド内のピンを識別し、ＩＯの列は入力ピン（Ｉ）か出力ピン（Ｏ）かを識別する。
【００８２】
これらの一覧表相互において、接続関係には矛盾がないように記入される。例えば、図１６では、通常モードでピンＡはＩＰＡの入力ピンとしてのピンｂに接続されることが示されているが、図１８では、通常モードでＩＰＡのピンｂは、入力ピンとしてのパッドのピンＡに接続されることが示されている。
【００８３】
また、各一覧表には、トップ階層回路またはＩＰが接続される電源の種類と特性が示されている。図１６および図２０に示すように、トップ階層回路およびＩＰＣの電源はＡであり、これはＬＳＩの動作中は常にオンである。図１８および図１９に示すように、ＩＰＡ，Ｂの電源はＢであり、これはオンにもオフにもなりうる。従って、ＩＰＣはＬＳＩの動作中は常に給電されるが、ＩＰＡ，ＢはＬＳＩの動作中に給電の停止が可能である。
【００８４】
これらの一覧表は、プログラムによって読み込まれ（図２のステップＳＴ２、ステップＳＴ７）、一覧表の各行の接続情報が、各ピンの接続先を格納したピンオブジェクトと、各一覧表ごとに設定され、ピンオブジェクトのデータを含むＩＰオブジェクトに格納される。ピンオブジェクトでは、各一覧表の左端のピンとその接続先を結ぶ信号線が指定されて登録される。また、各一覧表全体を表すＩＰオブジェクトに、各ＩＰへの給電の停止が可能か否かを示す情報を保持しておく。
【００８５】
最初に各モードの成立条件（接続条件）が評価される（図２のステップＳＴ３）。このＬＳＩの場合は、パッドの３本のピンＴ１，Ｔ２，Ｃの信号内容の組合せによってモードが決定される。一覧表に記載されたモードの成立条件（接続条件）に基づいて、例えば以下のようにモードが記述される。
ｆｕｎｃｔｉｏｎ  ＭＯＤＥＳＥ  ｂｅｇｉｎ
ｉｎｐｕｔ  ［２：０］  ｉｎ；
ｏｕｔｐｕｔ  ［４：０］  ｍｏｄｅ；
ｃａｓｅｘ  （ｉｎ）  ｂｅｇｉｎ
３’ｂ００ｘ：  ｍｏｄｅ  ＝  ５’ｂ００００１；
３’ｂ０１ｘ：  ｍｏｄｅ  ＝  ５’ｂ０００１０；
３’ｂ１０ｘ：  ｍｏｄｅ  ＝  ５’ｂ００１００；
３’ｂ１１０：  ｍｏｄｅ  ＝  ５’ｂ０１０００；
３’ｂ１１１：  ｍｏｄｅ  ＝  ５’ｂ１００００；
ｅｎｄ
ｅｎｄ
ａｓｓｉｇｎ  ｛ＬＳＩ＿ＭＯＤＥ＿０４，  ＬＳＩ＿ＭＯＤＥ＿０３，  ＬＳＩ＿ＭＯＤＥ＿０２，  ＬＳＩ＿ＭＯＤＥ＿０１，  ＬＳＩ＿ＭＯＤＥ＿ＯＯ｝  ＝  Ｍ０ＤＥＳＥ（｛ＰＡＤ＿Ｔ１＿Ｘ，  ＰＡＤ＿Ｔ２＿Ｙ，  ＰＡＤ＿Ｃ＿Ｙ｝）；
【００８６】
これにより、パッドのピンＴ１からの信号ＰＡＤ＿Ｔ１＿Ｘ、ピンＴ２からの信号ＰＡＤ＿Ｔ２＿Ｙ、ピンＣからの信号ＰＡＤ＿Ｃ＿Ｙの組み合わせ［００ｘ，０１ｘ，１０ｘ，１１０，１１１］（各一覧表参照）により、動作モードＬＳＩ＿ＭＯＤＥ＿００からＬＳＩ＿ＭＯＤＥ＿０４が決定される。動作モードＬＳＩ＿ＭＯＤＥ＿００は通常モード、動作モードＬＳＩ＿ＭＯＤＥ＿０４はＣ切り出しモード２である。
【００８７】
その後、プロセッサ１は、各出力ピンについては、その出力ピンに対する接続先を調査して、接続認識配列を生成し、これに基づいて分岐モジュールを作成する（図２のステップＳＴ５）。また各入力ピンについては、その入力ピンに対する接続先を調査して、接続認識配列を生成し、これに基づいてセレクタモジュールを生成する（図２のステップＳＴ４）。
【００８８】
例えば、図１６のピンＡは、入力バッファの出力ピンなので出力信号Ｙが各ＩＰに入力される。ピンＡは、通常モードおよびＡ切り出しテストモードでもＩＰＡのピンｂに接続されるが、Ｂ切り出しモードではＩＰＢのピンａに接続され、Ｃ切り出しモードではＩＰＣのピンａに接続される。従って、ピンＡの接続先を表す１，１，２，３，３という接続認識配列が形成され、接続数は３となる。接続認識配列中の１はＩＰＡのピンｂ、２はＩＰＢのピンａ、３はＩＰＣのピンａを表す。接続数が３なので、分岐モジュールが形成され、各分岐モジュールの出力ノードが定義される。例えばピンＡからＩＰＡに向かう通常パスのノード名はＰＡＤ＿Ａ＿Ｎ，ピンＡからＩＰＢとＩＰＣに向かうテストパスのノード名は、ＰＡＤ＿Ａ＿Ｍと定義される。ピンＡの出力信号ＹはＰＡＤ＿Ａ＿Ｙと定義されストックされる。
【００８９】
この情報は、ＨＤＬによる回路記述出力（図２のステップＳＴ８）で例えば以下のようなインスタンス呼出文として出力される。
ＴＫＭ  ＴＯ１（．Ａ（ＰＡＤ＿Ａ＿Ｙ）．，Ｂ（ＬＳＩ＿ＭＯＤＥ＿００＿Ｂ），．Ｎ（ＰＡＤ＿Ａ＿Ｎ），，Ｔ（ＰＡＤ＿Ａ＿Ｍ））；
ここでＴＫＭ  ＴＯ１とはゲートモジュールの呼び名の例であり、ゲートモジュールの呼び名はこの表記に限らず設計者が任意に決定できる。その後のかっこ内の配列は、（．Ａ（ＩＰの出力ピンの出力信号名の指定），．Ｂ（通常モードでローレベルになる信号名の指定），．Ｎ（通常パスノードの指定），．Ｔ（テストパスノードの指定））である。例えば、ＬＳＩ＿ＭＯＤＥ＿００＿Ｂは通常モード時にローレベル、それ以外でハイレベルとなる信号であり、エンコーダモジュール（ゲート制御モジュール）の挿入時に生成され定義される。
【００９０】
一方、図２０に記されたＩＰＣのピンＰＣＡのように、出力ピンでありながらも、接続先が全ての条件で同じ場合（例えばＭＯＤＥモジュールのピンＡｔｏＣに接続されるような場合）、接続数は１であり、接続認識配列が１，１，１，１，１となる。この場合には、分岐モジュールは生成されず、分岐モジュールの入るべきところには接続を示す記述、あるいは単なるバッファのみを示す文が挿入される。単なるバッファの場合は以下のように記述される。
ＴＫＢ  Ｔ１３（．Ａ（Ｃ＿ＰＣＡ＿Ｏ），．Ｙ（Ｃ＿ＰＣＡ＿Ｎ））；
ここでＴＫＢ  Ｔ１３とはバッファモジュールの呼び名の例であり、バッファモジュールの呼び名はこの表記に限らず設計者が任意に決定できる。その後のかっこ内の配列は、（．Ａ（バッファの入力信号線の指定），．Ｙ（バッファの出力信号線の指定））である。つまり、ＭＯＤＥモジュールに向かう信号線は、Ｃ＿ＰＣＡ＿Ｎと定義され、記憶される。
【００９１】
入力ピンについては、複数の接続先がある場合には、セレクタモジュールが挿入される（図２のステップＳＴ４）。この場合もまず接続認識配列が作成され、その接続認識配列に沿ったセレクタモジュールが生成される。
【００９２】
例えば、図１６のピンＨは、出力バッファの入力ピンなので、セレクタモジュールが生成される。ピンＨは、通常モードではＩＰＣのピンｅに接続され、Ａ切り出しモードではＩＰＡのピンｆに接続され、Ｂ切り出しモードではＩＰＢのピンｆに接続され、Ｃ切り出しモードでは、通常モードと同じようにＩＰＣのピンｅに接続される。この場合、接続認識配列は１，２，３，１，１となる。接続認識配列中の１はＩＰＣのピンｅ、２はＩＰＡのピンｆ、３はＩＰＢのピンｆを表す。接続数が３なので、通常パスとテストパスを分ける第１のセレクタモジュールと、テストパス同士を分ける第２のセレクタモジュールが生成される。第１のセレクタモジュールの通常パスが接続される入力端子をＮとすると、入力端子Ｎには、接続先の分岐モジュールの生成のときに通常パスとして生成されているはずであるＣ＿ｅ＿Ｎという信号線が通常パスとして接続されるように登録される。また、第２のセレクタモジュールの一方のテストパスが接続される入力端子には、Ａ切り出しモードでの接続先であるＡ＿ｆ＿Ｍという信号線がテストパスとして接続されるように登録される。信号線Ａ＿ｆ＿Ｍは、ＩＰＡの一覧表である図１８のＩＰＡのピンｆの接続先として分岐モジュールが生成されたときに定義されているはずである。さらに、第２のセレクタモジュールのもう一方のテストパスが接続される入力端子には、Ｂ切り出しモードでの接続先であるＢ＿ｆ＿Ｍという信号線がテストパスとして接続されるように登録される。信号線Ｂ＿ｆ＿Ｍは、ＩＰＢの一覧表である図１９のＩＰＢのピンｆの接続先として分岐モジュールが生成されたときに定義されているはずである。
【００９３】
さらに、セレクタモジュールを制御するために、前述したモード条件（接続条件）の成立信号に応じて、エンコーダモジュールからセレクタモジュール制御信号が各セレクタモジュールに入力されるように設定する。セレクタモジュール制御信号を入力するためのエンコーダモジュールの設定では、接続認識配列（例えば１，２，３，１，１）に基づいて、通常モードの接続先が１ならば、図９の信号線ＢＡ上の信号Ａが通常パスを選択するように、図９の信号線ＢＢ上の信号Ｂがいずれかのパスを選択するようにし、接続先が２なら信号線ＢＡ上の信号Ａがテストパス、信号線ＢＢ上の信号Ｂがテストパス１を進択するようにし、接続先３なら、信号線ＢＡ上の信号Ａがテストパス、信号線ＢＢ上の信号Ｂがテストパス２を選択するように設定する。このエンコーダモジュールは、ＨＤＬ記述の時には、各モード条件の成立信号を条件としたｉｆ文の条件分岐式で例えば次のように定義されることになる。
【００９４】
ｉｆ  （ＰＯ＝＝１’ｂ１）  ｂｅｇｉｎ
Ａ＝１’ｂＯ；    ／／接続先が１の場合のセレクタモジュール制御信号パターン
Ｂ＝１’ｂＯ；
ｅｎｄ
ｅｌｓｅ  ｉｆ  （Ｐ１＝＝１’ｂ１）  ｂｅｇｉｎ
Ａ＝１’ｂ１；    ／／接続先が２の場合のセレクタモジュール制御信号パターン
Ｂ＝１’ｂＯ；
ｅｎｄ
ｅｌｓｅ  ｉｆ  （Ｐ２＝＝１’ｂ１）  ｂｅｇｉｎ
Ａ＝１’ｂ１；    ／／接続先が３の場合のセレクタモジュール制御信号パターン
Ｂ＝１’ｂ１；
ｅｎｄ
ｅｌｓｅ  ｉｆ  （Ｐ３＝＝１’ｂ１）  ｂｅｇｉｎ
Ａ＝１’ｂ０；    ／／接続先が１の場合のセレクタモジュール制御信号パターン
Ｂ＝１’ｂＯ；
ｅｎｄ
ｅｌｓｅ  ｉｆ  （Ｐ４＝＝１’ｂ１）  ｂｅｇｉｎ
Ａ＝１’ｂ０；    ／／接続先が１の場合のセレクタモジュール制御信号パターン
Ｂ＝１’ｂＯ；
ｅｎｄ
【００９５】
ここで、／／  はコメント開始記号であり、コメント開始記号から行末まではコメントである。Ｐ０からＰ４の信号は、モード条件成立信号（ＬＳＩ＿ＭＯＤＥ＿００からＬＳＩ＿ＭＯＤＥ＿０４）が入力されるピンのモジュール内部信号名である。上記の条件分岐式によれば、異なるモード条件成立信号について、複数のテストパスが同時に有効になることはない。
【００９６】
また、二つのセレクタモジュール（第１および第２のセレクタモジュール）は、例えば以下のようなモジュールのインスタンス呼出文として定義される。
ＴＳＥＬ２ＴＯ１（．Ａ（Ｃ＿ｅ＿Ｎ），．Ｂ（ＳＳＴ），．Ｓ（Ａ），．Ｙ（ＰＡＤ＿Ｈ＿Ａ））；    ／／通常パスとテストパス
ＴＳＥＬ２ＧＯ１（．Ａ（Ａ＿ｆ＿Ｍ），．Ｂ（Ｂ＿ｆ＿Ｍ），．Ｓ（Ｂ），．Ｙ（ＳＳＴ））；    ／／テストパス１とテストパス２
ここで、ＴＳＥＬ２は二つのセレクタモジュールの組み合わせのモジュールのモジュール名であり、ＴＯ１は第１のセレクタモジュール、ＧＯ１は第２のセレクタモジュールである。かっこ内のＡ，Ｂはセレクタモジュールへの入力信号を示し、Ｓはセレクタモジュール制御信号を示し、Ｙはセレクタモジュールの出力信号を示す。ＳＳＴは、第２のセレクタモジュールＧ０１から出力され、第１のセレクタモジュールＴ０１へ入力される信号である。
【００９７】
セレクタモジュールは、複数の接続先がある入力ピンについて必要となるのであり、接続認識配列が数字１のみから構成される（接続数が１）入力ピンには、セレクタモジュールが挿入されず、接続を示す定義のみのモジュールか、あるいはバッファのみのモジュールがセレクタモジュールの位置に挿入される。例えば、図２０のピンｔｅｓｔのように入力ピンでありながらも、接続先が全ての条件で同じ場合（例えばＭＯＤＥモジュールのピンＣＴに接続されるような場合）、接続数は１であり、接続認識配列が１，１，１，１，１となる。この場合には、セレクタモジュールは生成されず、セレクタモジュールの入るべきところには接続を示す記述、あるいは単なるバッファのみを示す文が挿入される。接続を示す記述は例えば以下の通りである。
【００９８】
ＣＯＮＮＥ０１  Ｔ０２（．Ａ（ＭＯＤＥ＿ｃＴ＿Ｎ），．Ｙ（Ｃ＿ｔｅｓｔ＿Ｉ））；
ここでＣＯＮＮＥ０１は接続のみを示すモジュールであり、かっこ内のＡ，Ｙは互いに接続されるピンを示す。
【００９９】
各セレクタモジュールの内部回路は、接続先の個数に応じて一意に決定される。従って、設計されるＬＳＩで使用されるセレクタモジュールの種類は、設計されるＬＳＩにありうる接続数の種類の分だけ存在することになる。各セレクタモジュールが登録されるときに接続先の個数が調べられ、新規な個数であれば（調べられた個数が既に使用されたセレクタモジュールの接続先の個数のどれにも一致しなければ）、新規な種類のセレクタモジュールの定義を記述して、これを登録する。過去に接続先の個数が同じセレクタモジュールの定義が登録されていれば、セレクタモジュールの種類の定義はしないようにして、重複した定義をさけ、インスタンス呼出文のみを生成して登録する。
【０１００】
また、複数のセレクタモジュールの組合せからなるモジュール全体の構成は、接続認識配列の種類に応じて異なる。同じＩＰの複数の入力ピン同士のように、接続認識配列が同じ複数の入力ピンは存在しうる。従って、接続認識配列を登録しておき、過去に同じ接続認識配列をもつモジュールが定義されていれば、重複を避けるために、モジュール定義をせず、インスタンス呼出文のみ定義するとよい。新規の接続認識配列の場合は、モジュール定義を記述してこれを登録する。
【０１０１】
上述のように各一覧表には、トップ階層回路またはＩＰが接続される電源の種類と特性が示されている。ＬＳＩの動作中は常に給電されているブロックと、給電の停止が可能なブロックが接続される場合、特殊モジュールが挿入される（図２のステップＳＴ６）。これは給電の停止が可能なブロックの電源がオフしてそのブロックの出力が中間電位になる場合に、常に給電されているブロックのゲートが中間電位のリーク電流を流す可能性を排除するためである。このため、ブロックの相互の間にＡＮＤゲートモジュールを挿入し、給電の停止が可能なブロックの給電が停止になった場合、このＡＮＤゲートモジュールの一方の入力部にローレベルの信号を入れて、このブロックの出力電位をローレベルに固定する。
【０１０２】
図１６および図２０に示すように、トップ階層回路およびＩＰＣの電源はＡであり、これはＬＳＩの動作中は常にオンである。図１８および図１９に示すように、ＩＰＡ，Ｂの電源はＢであり、これはオンにもオフにもなりうる。従って、ＩＰＡの出力ピンと他のＩＰまたはパッドとの間には特殊モジュールが挿入され、ＩＰＢの出力ピンと他のＩＰまたはパッドとの間にも特殊モジュールが挿入される。他のＩＰまたは入力パッドの出力ピンには、特殊モジュールは挿入されず、接続を示す記述、あるいは単なるバッファのみを示す文が挿入される。特殊モジュールとしてのゲートモジュールは上述の通りインスタンス呼出文で記述される。
【０１０３】
最後の工程としてステップＳＴ８（図２）のＨＤＬによる回路記述出力では、今までの各工程で保持（登録）された記述をＲＴＬの文法に則って出力した。さらに、上記の通り、合成スクリプトを自動生成し、これらの合成スクリプトを用いて論理合成した。また、上記の通り、合成されたネットリストに対して、接続を検証するためのテストパターンを作成し、自動検証を行った。
【０１０４】
以下は、生成されたトップ階層回路を表すＲＴＬ記述である。
2004213301.tif 000003
2004213301.tif 000004
2004213301.tif 000005
2004213301.tif 000006
2004213301.tif 000007
2004213301.tif 000008
2004213301.tif 000009
2004213301.tif 000010
2004213301.tif 000011
2004213301.tif 000012
2004213301.tif 000013
2004213301.tif 000014
2004213301.tif 000015
2004213301.tif 000016
2004213301.tif 000017
2004213301.tif 000018
2004213301.tif 000019
2004213301.tif 000020
2004213301.tif 000021
2004213301.tif 000022
2004213301.tif 000023
2004213301.tif 000024
2004213301.tif 000025
2004213301.tif 000026
2004213301.tif 000027
【０１０５】
【発明の効果】
以上説明したように、この発明によれば、集積回路内の複数の回路部品に関する接続条件とこれらの接続条件に応じた各回路部品の接続関係とを記述した表形式のデータ集合を解析する解析部と、解析部の解析結果に基づいて、ハードウエア記述言語による集積回路の記述を生成する記述生成部とを備えることにより、複数の回路部品を接続した集積回路の自動設計を容易にし、ハードウエア記述言語による回路記述の作成にかかる手間と時間を短縮することが可能である。
【図面の簡単な説明】
【図１】この発明の実施の形態１に係る自動回路設計装置を示すブロック図である。
【図２】プログラムに従って実施の形態１に係る自動回路設計装置が実行する動作を示すフローチャートである。
【図３】実施の形態１で使用されうる設計者に記入された一覧表の例である。
【図４】図３の一覧表に基づいて最終的に設計される目的の回路を示す回路図である。
【図５】図３の一覧表に基づいて作成された回路記述の一部を抜粋して示すリストである。
【図６】実施の形態１に従ってＬＳＩの記述を生成する工程の基本的考え方を説明するための図である。
【図７】図３の一覧表の接続条件を規定する条件定義文を平易化して示すリストである。
【図８】実施の形態１で使用されうる一覧表の例である。
【図９】図８に例示する一覧表に基づいて最終的に設計される目的の回路を示す回路図である。
【図１０】図９に記載の回路に関する各セレクタモジュールの記述を平易化して示すリストである。
【図１１】図９に記載の回路に関するエンコーダモジュールの記述を平易化して示すリストである。
【図１２】実施の形態１の動作により挿入された分岐モジュールを示す回路図である。
【図１３】実施の形態１の動作の特殊モジュールの挿入で付加されたゲートモジュールを示す回路図である。
【図１４】実施の形態１で使用されうる複数の一覧表の例である。
【図１５】複数の一覧表に基づいて自動設計されうるトップ階層回路を示す回路図である。
【図１６】実施例で作成した、全体のＬＳＩ内の複数の回路部品（ピンおよびＩＰ）に関する接続条件とこれらの接続条件に応じた各回路部品の接続関係とを記述したトップ階層の一覧表である。
【図１７】実施例で設計したトップ階層回路の回路図である。
【図１８】実施例で作成した、一つのＩＰＡ内の内部部品に関する接続条件とこれらの接続条件に応じた各内部部品の接続関係とを記述した下位階層の一覧表である。
【図１９】実施例で作成した、他のＩＰＢ内の内部部品に関する接続条件とこれらの接続条件に応じた各内部部品の接続関係とを記述した下位階層の一覧表である。
【図２０】実施例で作成した、他のＩＰＣ内の内部部品に関する接続条件とこれらの接続条件に応じた各内部部品の接続関係とを記述した下位階層の一覧表である。
【符号の説明】
１  プロセッサ、２  記憶部、３  表示部、４  入力部、１０  スプレッドシート生成部、１１  解析部、１２  記述生成部、２０，２１  エンコーダモジュール（制御信号生成モジュール）、３１，３２  回路部品モジュール、３４，４３  ＡＮＤゲートモジュール、３６  エンコーダモジュール（ゲート制御モジュール）、３５，４２  分岐モジュール、４４  ＡＮＤゲートモジュール（特殊モジュール）、Ａ，Ｂ，Ｃ，３０，４０，４１  ＩＰ、ＢＡ，ＢＢ  信号線、ＢＤ境界、ＢＬ１，ＢＬ２  ブロック、ＣＰ  制御パス、ＩＰＡ１〜ＩＰＡ４，ＩＰＢ１，ＩＰＢ２，ＩＰＣ１〜ＩＰＣ３  ピン、ＮＰ，ＮＰ１，ＮＰ２  通常パス、ＰＡ〜ＰＦ  ピン、ＳＬ１〜ＳＬ６  セレクタモジュール、ＴＰ，ＴＰ１〜ＴＰ５  テストパス。
【図１】
2004213301.tif 000028
【図２】
2004213301.tif 000029
【図３】
2004213301.tif 000030
【図４】
2004213301.tif 000031
【図５】
2004213301.tif 000032
【図６】
2004213301.tif 000033
【図７】
2004213301.tif 000034
【図８】
2004213301.tif 000035
【図９】
2004213301.tif 000036
【図１０】
2004213301.tif 000037
【図１１】
2004213301.tif 000038
【図１２】
2004213301.tif 000039
【図１３】
2004213301.tif 000040
【図１４】
2004213301.tif 000041
【図１５】
2004213301.tif 000042
【図１６】
2004213301.tif 000043
【図１７】
2004213301.tif 000044
【図１８】
2004213301.tif 000045
【図１９】
2004213301.tif 000046
【図２０】
2004213301.tif 000047