(57)【要約】【課題】配線のしやすさを損なうことなく、ビアの不良による歩留まりの低下を抑制可能な半導体回路の設計装置および設計方法を提供する。【解決手段】半導体回路の設計方法は、論理回路を構成するセルの配置およびセル間の配線を行い、複数箇所にビアが設けられる配線を含むレイアウトパターンを生成するステップ（ステップＳ１、Ｓ２）と、ビアから、配線上の信号を受信するレシーバセルまでの負荷容量をビア毎に算出するステップ（ステップＳ４）と、ビアごとの、負荷容量に基づいて、負荷容量が大きいビアを優先的に低抵抗のビアに置換するステップ（ステップＳ６、Ｓ７）を備える。【選択図】図２
2011199128.tif 000002
【特許請求の範囲】
【請求項１】
論理回路を構成するセルの配置および前記セル間の配線を行い、複数箇所にビアが設けられる配線を含むレイアウトパターンを生成するステップと、
前記ビアから、前記配線上の信号を受信するレシーバセルまでの負荷容量を前記ビア毎に算出するステップと、
前記ビアごとの、前記負荷容量に基づいて、前記負荷容量が大きい前記ビアを優先的に低抵抗のビアに置換するステップと、を備えることを特徴とする半導体回路の設計方法。
【請求項２】
前記負荷容量を算出するステップは、前記配線ごとのタイミング余裕および前記配線上に信号を出力するドライバセルのドライバ抵抗をさらに算出し、
前記低抵抗のビアに置換するステップは、前記負荷容量、前記タイミング余裕および前記ドライバ抵抗に基づいて、前記ビアを優先的に低抵抗ビアに置換することを特徴とする請求項１に記載の半導体回路の設計方法。
【請求項３】
論理回路を構成するセルの配置および前記セル間の配線を行い、複数箇所にビアが設けられる配線を含むレイアウトパターンを生成するステップと、
前記配線上の信号を受信するレシーバセルから前記ビアまでの距離を算出するステップと、
前記ビアごとの、前記距離に基づき、前記距離が長い前記ビアを優先的に低抵抗のビアに置換するステップと、を備えることを特徴とする半導体回路の設計方法。
【請求項４】
前記レイアウトパターンを生成するステップは、前記配線を複数の配線部分に分割し、前記ドライバセルに近い前記配線部分ほど、他の配線との距離を大きく確保して前記レイアウトパターンを生成することを特徴とする請求項１乃至３のいずれかに記載の半導体回路の設計方法。
【請求項５】
前記レイアウトパターンを生成するステップは、前記ドライバセルのファンアウト数が多いほど、かつ、前記レシーバセルの負荷容量が大きいほど、他の配線との距離を大きく確保して前記レイアウトパターンを生成することを特徴とする請求項４に記載の半導体回路の設計方法。
【請求項６】
論理回路を構成するセルの配置および前記セル間の配線を行い、複数箇所にビアが設けられる配線を含むレイアウトパターンを生成するとともに、前記ビアから、前記配線上の信号を受信するレシーバセルまでの負荷容量を前記ビア毎に算出する配置配線部と、
前記ビアごとの、前記負荷容量に基づいて、前記負荷容量が大きい前記ビアを優先的に低抵抗のビアに置換するビア置換部と、を備えることを特徴とする半導体回路の設計装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、多層配線構造の半導体回路を設計する半導体回路の設計装置および設計方法に関する。
【背景技術】
【０００２】
近年、半導体回路における製造プロセスの微細化および多層化に伴い、異なる配線層の配線同士を接続するビアの断線や高抵抗化により、配線不良が生じることが多くなってきている。具体的には、ビアが断線して正常に回路が動作しなくなるＤＣ動作不良や、ビアが高抵抗となって信号が遅延してしまうタイミング不良およびファンクション不良を生じることがある。その結果、半導体回路の製造歩留まりが低下することが問題になっている。
【０００３】
この対策として、ビアを１つでなく複数個設けることが考えられる。これにより、ビアが低抵抗化する。また、仮に１つのビアが断線しても他のビアで配線間は導通する。よって、上記の歩留まり低下を抑制できる。しかしながら、複数のビアを設けるためには、大きな面積が必要であり、全ての配線接続箇所に複数のビアを設けるのは困難である。
【０００４】
特許文献１には、クリティカルパスを抽出し、クリティカルパス上のビアを拡大してビアを低抵抗化する手法が開示されている。しかしながら、特許文献１は、クリティカルパス上のビアにも、配線不良を生じる可能性が高いビアと、そうでないビアがあることを考慮していない。そのため、拡大する必要性が低いビアをも拡大してしまい、配線が困難になるという問題がある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−２５３４０９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明は、配線のしやすさを損なうことなく、配線不良による半導体回路の歩留まり低下を抑制可能な半導体回路の設計装置および設計方法を提供するものである。
【課題を解決するための手段】
【０００７】
本発明の一態様によれば、論理回路を構成するセルの配置および前記セル間の配線を行い、複数箇所にビアが設けられる配線を含むレイアウトパターンを生成するステップと、前記ビアから、前記配線上の信号を受信するレシーバセルまでの負荷容量を前記ビア毎に算出するステップと、前記ビアごとの、前記負荷容量に基づいて、前記負荷容量が大きい前記ビアを優先的に低抵抗のビアに置換するステップと、を備えることを特徴とする半導体回路の設計方法が提供される。
【０００８】
また、本発明の一態様によれば、論理回路を構成するセルの配置および前記セル間の配線を行い、複数箇所にビアが設けられる配線を含むレイアウトパターンを生成するステップと、前記配線上の信号を受信するレシーバセルから前記ビアまでの距離を算出するステップと、前記ビアごとの、前記距離に基づき、前記距離が長い前記ビアを優先的に低抵抗のビアに置換するステップと、を備えることを特徴とする半導体回路の設計方法が提供される。
【０００９】
また、本発明の一態様によれば、論理回路を構成するセルの配置および前記セル間の配線を行い、複数箇所にビアが設けられる配線を含むレイアウトパターンを生成するとともに、前記ビアから、前記配線上の信号を受信するレシーバセルまでの負荷容量を前記ビア毎に算出する配置配線部と、前記ビアごとの、前記負荷容量に基づいて、前記負荷容量が大きい前記ビアを優先的に低抵抗のビアに置換するビア置換部と、を備えることを特徴とする半導体回路の設計装置が提供される。
【発明の効果】
【００１０】
本発明によれば、配線のしやすさを損なうことなく、配線不良による歩留まりの低下を抑制可能な半導体回路を設計することができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の第１の実施形態に係る半導体回路の設計装置１０の概略ブロック図。
【図２】図１の設計装置１０の処理動作を示すフローチャート。
【図３】配置および配線を行って得られるレイアウトパターンの一例を示す図。
【図４】優先順位算出部３が生成するテーブルの一例を示す図。
【図５】図３のビアを複数ビアに置換したレイアウトパターンの一例を示す図。
【図６】本発明の第２の実施形態における図１の配置配線部２の処理動作の一例を示すフローチャート。
【図７】配置結果を示すレイアウトパターンの一例を示す図。
【図８】仮配線の結果を示すレイアウトパターンの一例を示す図。
【図９】図８のレイアウトパターンに対してグリッドの設定を行った結果の一例を示す図。
【図１０】各Ｇセルの配線コストを算出した結果の一例を示す図。
【発明を実施するための形態】
【００１２】
以下、本発明に係る半導体回路の設計装置および設計方法の実施形態について、図面を参照しながら具体的に説明する。
【００１３】
（第１の実施形態）
図１は、本発明の第１の実施形態に係る半導体回路の設計装置（以下、設計装置）１０の概略ブロック図である。図１の設計装置１０は、合成部１と、配置配線部２と、優先順位算出部３と、ビア置換部４と、メモリ５とを備えている。図１の設計装置１０は、例えば１台のコンピュータにより実現することもできるし、２台以上のコンピュータ等で実現することも可能である。図１の設計装置１０のうち、必須の構成部は、配置配線部２と、優先順位算出部３と、ビア置換部４であり、その他は必須ではなく、設計装置１０とは異なる別個の装置内に設けてもよい。例えば、合成部１は別個の装置内に設け、合成部１の出力結果を配置配線部２に入力することにしてもよい。
【００１４】
この設計装置１０はＶｅｒｉｌｏｇまたはＶＨＤＬ等のハードウェア記述言語で記述されたＲＴＬ（Register Transfer Level）が入力され、半導体回路のマスク生成等を行うためのレイアウトパターンを出力する。
【００１５】
合成部１は外部から入力されるＲＴＬを論理合成して、ネットリスト等のセルが割り当てられた論理回路を生成する。このネットリスト等のセルが割り当てられた論理回路で使用可能なセル（ＡＮＤゲートやＯＲゲートなど、論理回路を構成する最小単位）はメモリ５に内蔵されるセルライブラリに登録されている。
【００１６】
配置配線部２は、メモリ５に記憶されたデザインルールに則り、ネットリスト等のセルが割り当てられた論理回路を構成するセルを配置し、セル間を電気的に接続する配線を行う。配置配線部２は配置および配線の結果をビア置換部４に出力する。なお、この配置配線部２の出力では、異なる配線層の配線同士を接続するビアは、各接続箇所につき、１つずつ設けられるものとする。また、配置配線部２は、セル同士を接続する配線のタイミング余裕（スラック）ｔと、ドライバセル（配線上に信号を出力するセル）のドライバ抵抗Ｒと、配線上に設けられるビアからレシーバセル（ドライバセルから出力される信号を受信するセル）までの負荷容量Ｃとをそれぞれ算出し、優先順位算出部３に出力する。タイミング余裕ｔ、ドライバ抵抗Ｒおよび負荷容量Ｃについては、後に詳しく説明する。
【００１７】
優先順位算出部３は、配置配線部２から入力されるタイミング余裕ｔ、ドライバ抵抗Ｒおよび負荷容量Ｃに基づいて各ビアの歩留まりに対する影響度を算出する。
【００１８】
ビア置換部４は、歩留まりに対する影響度が大きいビアを優先して、少なくとも１箇所に設けられたビアを、歩留まり対策ビアとして、複数個のビア（複数ビア）に置換する。複数ビアに置換することにより、ビアの高抵抗化およびビアの断線を防ぐことができ、配線不良による歩留まり低下を抑制できる。なお、複数個のビアに置換する代わりに、断面積の大きいビアに置換してもよい。
【００１９】
このように、本実施形態の設計装置１０は、配置配線部２からの出力情報に基づいて、歩留まりに対する影響が大きいビアを優先して複数ビアに置換することにより、歩留まりの向上を図るものである。
【００２０】
図２は、図１の設計装置１０の処理動作を示すフローチャートである。
【００２１】
合成部１は、ＲＴＬを論理合成してネットリスト等のセルが割り当てられた論理回路を生成し（ステップＳ１）、配置配線部２は、ネットリスト等のセルが割り当てられた論理回路を構成するセルの配置およびセル間の配線を行う（ステップＳ２）。この段階では、ビアは各箇所に１個ずつ設けられるものとする。
【００２２】
図３は、配置および配線を行って得られるレイアウトパターンの一例を示す図である。同図の例では、ドライバセルＤ１と、レシーバセルＲ１と、ビアＶ１１，Ｖ１２を経由してドライバセルＤ１とレシーバセルＲ１とを電気的に接続する配線Ｗ１が生成されている。また、ドライバセルＤ２と、レシーバセルＲ２と、ビアＶ２１〜Ｖ２４を経由してドライバセルＤ２とレシーバセルＲ２とを電気的に接続する配線Ｗ２が生成されている。このようにして、セル間の配線と、複数の配線層に跨って配線するためのビアが複数箇所に設けられるレイアウトパターンが生成される。
【００２３】
続いて、配置配線部２は、生成された各配線Ｗ１，Ｗ２のタイミング余裕ｔおよびドライバ抵抗Ｒを算出し、ビア置換部４に出力する（ステップＳ３）。また、配置配線部２は配線上の各ビアＶ１１，Ｖ１２からレシーバセルＲ１までの各負荷容量ＣおよびビアＶ２１〜Ｖ２４からレシーバセルＲ２までの各負荷容量Ｃを算出し、ビア置換部４に出力する（ステップＳ４）。なお、以下ではビアＶ１１からレシーバセルＲ１までの負荷容量Ｃ等を、単にビアＶ１１等の負荷容量Ｃと表記する。
【００２４】
タイミング余裕ｔは、クロック同期回路の終端順序回路のタイミング余裕tを、そのクロック同期回路に含まれるビアのタイミング余裕tとして割り当てる。仮にビアが複数の経路に属する場合、タイミング余裕tを複数持つことになるが、タイミング余裕tが小さい程、タイミング不良が生じる可能性が高いので、その場合、最も小さいタイミング余裕tをビアに割り当てる。したがって、タイミング余裕ｔが小さいほど、タイミング不良を生じる可能性が高い。
【００２５】
ドライバ抵抗Ｒはドライバセルの駆動能力を示す値であり、ドライバ抵抗Ｒが大きいほど、駆動能力が小さいことを表す。したがって、ドライバ抵抗Ｒが大きいほど、配線不良を生じる可能性が高い。ドライバ抵抗Ｒはセルの種類や大きさ等に応じて異なるが、その情報はメモリ５に記憶されている。
【００２６】
ビアの負荷容量Ｃはそのビアからレシーバセル側の容量を表す。そのため、同一の配線上のビアでは、信号の伝播方向において、レシーバセルから遠いほど、すなわち、ドライバセルに近いビアほど負荷容量Ｃが大きくなる。この負荷容量Ｃが大きいビアほど信号遅延に与える影響が大きいため、回路の性能歩留まりに与える影響が大きい。この負荷容量Ｃは、配線の長さ、隣接する配線や基板との距離等に応じて算出できる。
【００２７】
次に、優先順位算出部３は、タイミング余裕ｔ、ドライバ抵抗Ｒおよびビアの負荷容量Ｃについて、ビア置換の優先順位を算出するためのテーブルを生成する（ステップＳ５）。図４は、優先順位算出部３が生成するテーブルの一例を示す図である。なお、同図の単位は任意である。ステップＳ５では、優先順位算出部３は、配線毎のタイミング余裕ｔおよびドライバ抵抗Ｒと、ビア毎の負荷容量Ｃとを、配置配線部２からそれぞれ取得して、テーブルを生成する。
【００２８】
続いて、優先順位算出部３は、タイミング余裕ｔ、ドライバ抵抗Ｒおよび負荷容量Ｃに基づいて、歩留まりに対する影響度を定量的に算出し、置換するビアの優先順位を決定する（ステップＳ６）。優先順位算出部３は、例えば下記（１）式に基づいて、ビア余裕度Ｍを算出する。
【００２９】
Ｍ＝ｔ−α＊Ｒ＊Ｃ  ・・・（１）
ここで、αは予め定めた定数であり、図４ではα＝１としている。上記（１）式では、タイミング余裕ｔが小さいほど、また、ドライバ抵抗Ｒおよびビアの負荷容量Ｃが大きいほど、ビア余裕度Ｍは小さくなく。このビア余裕度Ｍが小さいほど回路のタイミングに与える影響が大きく、性能歩留まりに影響を与える可能性が高い。よって、優先順位算出部３は、このビア余裕度Ｍが小さい順に優先順位を定める。図４の例では、優先順位は、Ｖ２１，Ｖ１１，Ｖ２２，Ｖ２３，Ｖ１２，Ｖ２４の順である。
【００３０】
ここで、仮に、全てのビアＶ１１〜Ｖ２４を複数ビアに置換することにすると、配線が困難になってしまう。例えば、図３のレイアウトパターンにおいて、ビアＶ２１およびビアＶ１２は近接しており、デザインルール上、両方のビアを複数ビアに置換することはできないとする。この場合、図２のステップＳ２に戻って、再度配置および配線をやり直す必要がある。その結果、最終的なレイアウトパターンを出力するまでに、極めて長い時間を要してしまう。また、面積的に置換可能な任意のビアを複数ビアに置換することにすると、図３のビアＶ１２は置換され、ビアＶ２１は置換されない可能性がある。この場合、優先順位が最も高いビアＶ２１が置換されないため、歩留まりが低下してしまう。
【００３１】
そこで、本実施形態では、ビア置換部４は優先順位に従って各ビアを複数ビアに置換するか否かを判断し、優先順位が高いビアを優先して複数ビアへの置換を行う（図２のステップＳ７）。
【００３２】
図５は、図３のビアを複数ビアに置換したレイアウトパターンの一例を示す図である。例えば、図３において、上述のように、ビアＶ２１とビアＶ１２のうちのいずれか一方しか複数ビアに置換できない。図４のテーブルによると、ビアＶ２１の優先順位はビアＶ１２の優先順位より高い。よって、ビア置換部４はビアＶ２１を複数ビアＶ２１’に置換し、優先順位が低いビアＶ１２は置換しない。同様に、ビアＶ１１とビアＶ２４は近接しているため、ビア置換部４は優先順位が高いビアＶ１１のみを複数ビアＶ１１’に置換する。また、ビアＶ２２およびビアＶ２３は、面積に余裕があるため、優先順位に関わらず、複数ビアＶ２２’，Ｖ２３’にそれぞれ置換する。以上のようにして、図５に示すレイアウトパターンが得られる。
【００３３】
このように、第１の実施形態では、タイミング余裕ｔ、ドライバ抵抗Ｒおよび負荷容量Ｃに基づいて、歩留まりに対する影響が大きいビアを算出し、優先的に複数ビアに置換する。これにより、配線のしやすさを損なうことなく、配線不良による歩留まり低下を抑制できる。
【００３４】
なお、本実施形態では、タイミング余裕ｔ、ドライバ抵抗Ｒおよび負荷容量Ｃに基づいて優先順位を定めたが、優先順位算出部は、これらのうち少なくとも負荷容量Ｃを考慮して、ビア毎に優先順位を定めればよい良い。負荷容量Ｃを考慮して、ビア毎に優先順位を定める場合には、図４において、負荷容量Ｃの大きいビア程、優先順位が高く定められる。
【００３５】
また、上記の負荷容量Ｃ、タイミング余裕ｔ、ドライバ抵抗Ｒに基づく優先順位の定める方法以外に、レシーバセルからビアまでの距離により、ビア毎の優先順位を定めてもよい。レシーバセルからビアまでの距離が大きいほど負荷容量Ｃが大きくなるため、レシーバセルからの距離が長いほど優先順位が高く定められる。この場合、図２のステップＳ４では、レシーバセルからビアまでの距離を算出すればよい。
【００３６】
例えば、図３において、レシーバセルＲ１からの距離に基づき、ビアＶ１１は、ビアＶ１２より優先順位が高く定められる。また、レシーバセルＲ１、レシーバセルＲ２からの距離に基づき、ビアＶ１１は、ビアＶ２４より優先順位が高く定められる。また、ドライバセルからビアまでの距離により、ビア毎の優先順位を定めてもよい。ドライバセルからの距離が短いほど優先順位が高く定められる。
【００３７】
（第２の実施形態）
以下に説明する第２の実施形態は配置配線部２の処理動作に関するものであり、ビアの置換をさらに行いやすくするものである。
【００３８】
図６は、本発明の第２の実施形態における図１の配置配線部２の処理動作の一例を示すフローチャートであり、図２のステップＳ２に対応する。
【００３９】
まず、配置配線部２は、論理回路を構成するセルを配置する（ステップＳ１１）。図７は、配置結果を示すレイアウトパターンの一例を示す図である。同図では、ドライバセルＤ１１からの出力信号がレシーバセルＲ１１およびＲ１２の両方に入力されるが、そのための配線はまだ生成されない。なお、実際にはセルＤ１１，Ｒ１１およびＲ１２以外にも多数のセルが配置されるが、図示していない。
【００４０】
次に、配置配線部２は、各セル間を接続する仮配線を行う（図６のステップＳ１２）。種々の配線パターンが考えられるが、そのうちの任意の１つを仮配線とする。図８は、仮配線の結果を示すレイアウトパターンの一例を示す図である。
【００４１】
続いて、配置配線部２は、図８に示す仮配線の通りに実際に配線できるか否かを、以下のようにして判定する（ステップＳ１３〜Ｓ１７）
まず、配置配線部２は、レイアウトパターンに対してグリッドを設定する（ステップＳ１３）。図９は、図８のレイアウトパターンに対してグリッドの設定を行った結果の一例を示す図である。同図では、配線が設けられる領域を９つに分割する例を示している。分割された各領域をＧセルと呼び、左下のＧセルを原点とする座標を付して表記する。
【００４２】
次に、各Ｇセルの配線コストを算出する（図６のステップＳ１４）。配線コストとは、Ｇセルに生成する必要がある配線の量を示す値である。すなわち、Ｇセルの配線コストが小さいほど、配線面積に余裕があることを示す。通常は、Ｇセルの配線数を配線コストとする。例えば、仮配線でＧセルに３本の配線を生成する必要がある場合、そのＧセルの配線コストは３である。
【００４３】
これに対し、本実施形態では、ドライバセルに近い配線ほど、配線コストを大きく設定する。例えば、レシーバセル直前のＧセルの配線コストを１とし、レシーバセルからＧセル１つ分遠ざかる毎に配線コストを０．１ずつ増加させる。また、配線が分岐しているＧセルは、すべての配線コストの増加分を合計する。言い換えると、そのＧセルから全てのレシーバセルまでに経由するＧセル数が１つ増える度に、配線コストを０．１ずつ大きく設定する。
【００４４】
図１０は、各Ｇセルの配線コストを算出した結果の一例を示す図である。例えば、Ｇセル（０，０）は、レシーバセルＲ１１，Ｒ１２までに、Ｇセル（１，０），Ｇセル（２，０），Ｇセル（１，１），Ｇセル（１，２），Ｇセル（２，２）の５つのＧセルを経由する。よって、Ｇセル（０，０）の配線コストは１．５に設定される。また、Ｇセル（１，０）は、レシーバセルＲ１１，Ｒ１２までに、Ｇセル（２，０），Ｇセル（１，１），Ｇセル（１，２），Ｇセル（２，２）の４つのＧセルを経由する。よって、Ｇセル（０，０）の配線コストは１．４に設定される。同様にして、全Ｇセルの配線コストを設定すると、図１０のようになる。
【００４５】
図１０では、セルＤ１１，Ｒ１１およびＲ１２間の配線のみについて、配線コストを算出しているが、他のセル間の配線が存在する場合は、その配線コストも算出し、各Ｇセル内の全ての配線についての配線コストを加算する。
【００４６】
そして、配置配線部２は、全てのＧセルの配線コストが所定値以下であれば（図６のステップＳ１５がＹＥＳ）、配線可能と判定し（ステップＳ１６）、所定値を超えるＧセルが存在する場合は（ステップＳ１５がＮＯ）、配線不可と判定する（ステップＳ１７）。
【００４７】
配線不可の場合（ステップＳ１７）、配置配線部２は配置（ステップＳ１１）および仮配線（ステップＳ１２）の少なくとも一方を再度行い、配線可能と判定されるまで、ステップＳ１３〜Ｓ１５の処理を行う。配線可能と判定されると（ステップＳ１６）、配置配線部２はその仮配線に従って配線を行ったレイアウトパターンを生成する（ステップＳ１８）。
【００４８】
このように、分割された配線のうち、ドライバセルＤ１に近いほど、配線コストが大きく見積もられる。その結果、ドライバセルＤ１に近いＧセル内の配線部分ほど、面積的な余裕をもってレイアウトパターンが生成され、他の配線との距離を大きく確保できる。
【００４９】
その後、第１の実施形態と同様に、図２のステップＳ３〜Ｓ７の処理が行われる。ステップＳ７の処理では、第１の実施形態で説明したように、ドライバセルに近い箇所に設けられるビアは負荷容量Ｃが大きいため、複数ビアに置換する優先順位が高く設定される。このとき、本実施形態では、ドライバセルに近い配線部分は面積的な余裕を持ってレイアウトパターンが生成されているため、負荷容量Ｃが大きいビアを複数ビアに置換しやすくなる。
【００５０】
このように、第２の実施形態では、配線を分割し、ドライバセルに近い配線部分ほど配線コストを大きく設定する。通常のビアを複数ビアに置換するには大きな面積が必要となるが、本実施形態の配置配線部２は、ドライバセルに近い配線部分ほど、面積的な余裕を持ってのレイアウトパターンを生成する。よって、ビア置換部４は、ドライバセルの近くに設けられる負荷容量Ｃが大きいビアを複数ビアに置換しやすくなる。結果として、第１の実施形態より多くのビアを複数ビアに置換でき、さらに歩留まりを向上ができる。
【００５１】
なお、本実施形態では、配置配線部２は、全てのレシーバセルまでに経由するＧセル数、言い換えると、ドライバセルからの距離およびレシーバセルの数（ファンアウト数）に基づいて、配線コストを算出したが、ドライバセルからの距離のみを考慮して配線コストを算出してもよい。また、レシーバセルの負荷容量をさらに考慮してもよい。例えば、レシーバセルの負荷容量が大きい場合、レシーバセル直前の配線コストが１より大きくなるようにしてもよい。レシーバセルの負荷容量が大きいほど、レシーバセルの駆動に長い時間を要するため、タイミング余裕ｔが小さくなるからである。
【００５２】
上述した各実施形態では、ビアを複数ビアに置換する例を示したが、ビア径の拡大や、低抵抗材料の採用等の他の手法で、通常のビアより抵抗が低い歩留まり対策ビアに置換することにより、歩留まりを向上させてもよい。
【００５３】
上述した実施形態で説明した半導体回路の設計装置の少なくとも一部は、ハードウェアで構成してもよいし、ソフトウェアで構成してもよい。ソフトウェアで構成する場合には、半導体回路の設計装置の少なくとも一部の機能を実現するプログラムをフレキシブルディスクやＣＤ−ＲＯＭ等の記録媒体に収納し、コンピュータに読み込ませて実行させてもよい。記録媒体は、磁気ディスクや光ディスク等の着脱可能なものに限定されず、ハードディスク装置やメモリなどの固定型の記録媒体でもよい。
【００５４】
また、半導体回路の設計装置の少なくとも一部の機能を実現するプログラムを、インターネット等の通信回線（無線通信も含む）を介して頒布してもよい。さらに、同プログラムを暗号化したり、変調をかけたり、圧縮した状態で、インターネット等の有線回線や無線回線を介して、あるいは記録媒体に収納して頒布してもよい。
【００５５】
上記の記載に基づいて、当業者であれば、本発明の追加の効果や種々の変形を想到できるかもしれないが、本発明の態様は、上述した個々の実施形態には限定されるものではない。特許請求の範囲に規定された内容およびその均等物から導き出される本発明の概念的な思想と趣旨を逸脱しない範囲で種々の追加、変更および部分的削除が可能である。
【符号の説明】
【００５６】
２  配置配線部
３  優先順位算出部
４  ビア置換部
１０  半導体回路の設計装置
【図１】
2011199128.tif 000003
【図２】
2011199128.tif 000004
【図３】
2011199128.tif 000005
【図４】
2011199128.tif 000006
【図５】
2011199128.tif 000007
【図６】
2011199128.tif 000008
【図７】
2011199128.tif 000009
【図８】
2011199128.tif 000010
【図９】
2011199128.tif 000011
【図１０】
2011199128.tif 000012