(57)【要約】【課題】トップダウン設計手法によって設計された回路に含まれる設計マージンを削除し、回路の消費電力を削減する。【解決手段】レイアウト結果から配線の分岐点を検出し（Ｓ１０１）、分岐点より後段側にある配線上にダミーバッファを挿入した（Ｓ１０２）場合と、挿入しない場合の経路の遅延量を求める（Ｓ１０３）。求めた遅延量に基づき負荷分割用バッファの挿入箇所を決定し（Ｓ１０４）、決定した挿入箇所に負荷分割用バッファを挿入するとの条件の下で、タイミング制約を満たすように、挿入箇所の前段に位置する駆動セルの駆動能力を算出する（Ｓ１０５）。決定した挿入箇所に負荷分割用バッファを挿入可能であることを確認した後（Ｓ１０６）、レイアウト結果に対して、負荷分割用バッファを配置する処理と、駆動セルの駆動能力を変更する処理と、配線情報を変更する処理とを行う（Ｓ１０７）。【選択図】        図１
2004327864.tif 000002
【特許請求の範囲】
【請求項１】
半導体集積回路のレイアウト結果を変更する方法であって、
セルの種類とセルの配置情報とセル間の配線情報とを含んだレイアウト結果から、配線の分岐点を検出するステップと、
検出した分岐点より後段側にある配線上の所定の箇所に、所定量の負荷を仮想的に挿入するステップと、
分岐点を経由してセル間を結ぶ経路の遅延量を、前記負荷を挿入した場合と、前記負荷を挿入しない場合とについて求めるステップと、
求めた経路の遅延量に基づき、負荷分割用バッファの挿入箇所を決定するステップと、
決定した挿入箇所に前記負荷分割用バッファを挿入するとの条件の下で、経路のタイミング制約に基づき、前記挿入箇所の前段に位置する駆動セルの駆動能力を求めるステップと、
前記レイアウト結果に基づき、前記挿入箇所に前記負荷分割用バッファを挿入可能か否かを判定するステップと、
前記判定結果に基づき、前記レイアウト結果を変更する処理として、前記挿入箇所に前記負荷分割用バッファを配置する処理と、前記駆動セルを求めた駆動能力を有するセルに変更する処理と、回路変更に伴い配線情報を変更する処理とを行うステップとを備えた、半導体集積回路の設計方法。
【請求項２】
前記負荷分割用バッファの挿入箇所を決定するステップは、ある箇所に前記負荷を仮想的に挿入したときに、所定の判断基準の下でタイミング制約が厳しいと判断される経路の遅延量が所定以上に変化した場合、当該箇所を前記負荷分割用バッファの挿入箇所として決定することを特徴とする、請求項１に記載の半導体集積回路の設計方法。
【請求項３】
前記負荷分割用バッファの挿入箇所を決定するステップは、同じ分岐点を経由してセル間を結ぶ経路のうちでタイミング制約が最も厳しい経路について、タイミング制約が厳しいと判断することを特徴とする、請求項２に記載の半導体集積回路の設計方法。
【請求項４】
前記負荷を仮想的に挿入するステップは、所定の判断基準に従い必要性を判断した上で、検出した分岐点より後段側にある配線上の所定の箇所に、前記負荷を仮想的に挿入することを特徴とする、請求項１に記載の半導体集積回路の設計方法。
【請求項５】
前記負荷を仮想的に挿入するステップは、
分岐点より後段側の全負荷容量を求めるステップと、
前記駆動セルの全負荷容量を求めるステップと、
前記駆動セルの全負荷容量に対する後段側の全負荷容量の割合が所定以上である場合に、分岐点より後段側にある配線上の所定の箇所に、前記負荷を仮想的に挿入するステップとを含むことを特徴とする、請求項４に記載の半導体集積回路の設計方法。
【請求項６】
前記負荷を仮想的に挿入するステップは、
分岐点より後段側にある配線のそれぞれについて、当該配線より後段側の全負荷容量を求めるステップと、
ある分岐点について求めた後段側の全負荷容量が所定以上に不均衡である場合に、求めた後段側の全負荷容量が最も大きくなる配線上の所定の箇所に、前記負荷を仮想的に挿入するステップとを含むことを特徴とする、請求項４に記載の半導体集積回路の設計方法。
【請求項７】
前記負荷を仮想的に挿入するステップは、
分岐点より後段側にある配線のそれぞれについて、当該配線を含む経路のタイミング制約の最悪値を求めるステップと、
ある分岐点について求めたタイミング制約の最悪値が所定以上に不均衡である場合に、求めたタイミング制約の最悪値が最も厳しくなる配線上の所定の箇所に、前記負荷を挿入することを特徴とする、請求項４に記載の半導体集積回路の設計方法。
【請求項８】
経路の遅延量を求めるステップより前に、前記レイアウト結果から、回路の論理的な機能に影響を与えず、かつ、出力端子が分岐点を有する配線に接続される削除可能バッファを検出するステップをさらに備え、
経路の遅延量を求めるステップは、前記削除可能バッファの前段に位置するセルと前記削除可能バッファの次段に位置するセルとを結ぶ経路の遅延量を、前記削除可能バッファを仮想的に削除した場合についても求め、
前記レイアウト結果を変更するステップは、前記レイアウト結果に対して、前記削除可能バッファを削除する処理をさらに行うことを特徴とする、請求項１に記載の半導体集積回路の設計方法。
【請求項９】
半導体集積回路のレイアウト結果に基づき、負荷分割した場合の遅延情報を求める方法であって、
セルの種類とセルの配置情報とセル間の配線情報とを含んだレイアウト結果から、配線の分岐点を検出するステップと、
検出した分岐点より後段側にある配線上の所定の箇所に、所定量の負荷を仮想的に挿入するステップと、
分岐点を経由してセル間を結ぶ経路の遅延量を、前記負荷を挿入した場合と、前記負荷を挿入しない場合とについて求めるステップとを備えた、半導体集積回路の遅延情報算出方法。
【請求項１０】
前記負荷を仮想的に挿入するステップは、所定の判断基準に従い必要性を判断した上で、検出した分岐点より後段側にある配線上の所定の箇所に、前記負荷を仮想的に挿入することを特徴とする、請求項９に記載の半導体集積回路の遅延情報算出方法。
【請求項１１】
経路の遅延量を求めるステップより前に、前記レイアウト結果から、回路の論理的な機能に影響を与えず、かつ、出力端子が分岐点を有する配線に接続される削除可能バッファを検出するステップをさらに備え、
経路の遅延量を求めるステップは、前記削除可能バッファの前段に位置するセルと前記削除可能バッファの次段に位置するセルとを結ぶ経路の遅延量を、前記削除可能バッファを仮想的に削除した場合についても求めることを特徴とする、請求項９に記載の半導体集積回路の遅延情報算出方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、半導体集積回路の低消費電力化設計方法に関し、より特定的には、トップダウン設計手法を用いて得られた回路のレイアウト結果を変更する低消費電力化設計方法に関する。
【０００２】
【従来の技術】
近年、大規模ロジックＬＳＩの多くは、トップダウン設計手法を用いて設計されている。トップダウン設計手法では、機能設計、論理合成、自動レイアウトなどの工程が行われる。機能設計工程では、設計者は、ハードウェア記述言語（ＨＤＬ：Ｈａｒｄｗａｒｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ  ）を用いて、設計すべき回路を機能的に記述する。論理合成工程では、設計者は、論理合成ツールを用いて、機能記述された回路をゲートレベルの回路データに変換する。自動レイアウト工程では、設計者は、自動レイアウトツールを用いて、ゲートレベルの回路データに基づき、回路に含まれるセルの配置やセル間の配線などを行った結果（レイアウト結果）を求める。求めたレイアウト結果に対しては、タイミング検証工程やレイアウト検証工程などが実行され、実際のデバイスは、これらの検証を終えたレイアウト結果を用いて製造される。
【０００３】
最近では、回路の集積度が向上し、回路の動作周波数が高速化したために、回路設計の複雑さが増大し、これに伴い、論理合成から自動レイアウトまでの工程を短時間で完了させることが、非常に難しくなっている。このため、論理合成ツールや自動レイアウトツールについても、回路規模やチップサイズを最適化することよりも、むしろ短時間で工程を完了することに重点を置いた設計ツールが数多く開発されている。このような設計ツールでは、回路の動作に不可欠なタイミングを短時間で実現することが重視されるので、多くの場合、設計マージンを含んだ回路が得られる。ところが、設計マージンを多く含んだ回路は、動作時の消費電力が大きくなってしまう。このため、回路の消費電力を削減するためには、回路設計の段階で過大な設計マージンをいかに削減するかが重要な問題となる。
【０００４】
トップダウン設計手法を用いて設計された回路から、過大な設計マージンを削減する方法としては、従来から、回路シミュレータを用いて消費電力を算出し最適なセルを選定する方法（例えば、特許文献１に記載された装置を用いる）や、回路から変更可能なセルを検出する方法（例えば、特許文献２参照）や、回路の動作を限定し、低消費電力に特化した設計手法で設計する方法などが知られている。
【０００５】
図１９は、回路シミュレータを用いた低消費電力化設計方法の工程図である。図１９に示す方法は、機能設計工程Ｓ９０１と、論理合成工程Ｓ９０２と、自動レイアウト工程Ｓ９０３と、タイミング検証工程Ｓ９０４と、レイアウト検証工程Ｓ９０７と、デバイス製造工程Ｓ９０８とからなる一連の工程に、消費電力シミュレーション工程Ｓ９０５と回路修正工程Ｓ９０６とを追加したものである。消費電力シミュレーション工程Ｓ９０５では、タイミング検証を終えたレイアウト結果に基づき、回路シミュレータを用いて、回路の消費電力が算出される。算出された回路の消費電力が目標値を超えている場合には、回路修正工程Ｓ９０６において回路の修正が行われ、その後、修正の程度に応じて、論理合成工程Ｓ９０２、自動レイアウト工程Ｓ９０３、またはタイミング検証工程Ｓ９０４以降の処理が再び実行される。
【０００６】
【特許文献１】
特開平５−２０５００６号公報
【特許文献２】
特開平１１−３３０２５２号公報
【０００７】
【発明が解決しようとする課題】
しかしながら、上記従来の低消費電力化設計方法には、次のような問題がある。すなわち、回路シミュレータを用いて消費電力を算出し最適なセルを選定する方法では、繰り返し計算によって消費電力が最小となるセルを選定するために、膨大な処理時間が必要となり、開発期間が長くなる。これに加えて、セルの選定を行うだけでは、削減できる消費電力が限られる。また、変更可能なセルを検出する方法は、具体的な手法が存在しないため、実用化のめどが立っていない。また、回路の動作を限定する方法には、アプリケーションに依存して仕様を決定する回路では、設計の初期段階で回路の動作を決定できないため、この方法を用いても効果が上がらない場合が多いという問題がある。
【０００８】
結局のところ、回路の消費電力を削減するためには、製造工程に入る直前の最終設計データから設計マージンを削減する方法が、最も効果的であると考えられる。ところが、最終設計データに基づき、短時間で効果的に回路を低消費電力化する有効な方法は知られていない。このため、実際の開発工程では、最終設計データが得られた時点で、開発期間を犠牲にして試行錯誤的に設計マージンを削除するか、あるいは、消費電力を犠牲にして設計マージンを残したまま製造するか、のいずれが行われているのが現状である。
【０００９】
それ故に、本発明は、トップダウン設計手法を用いて設計された回路のレイアウト結果に含まれる過大な設計マージンを、短時間で効果的に削減する低消費電力化設計方法を提供することを目的とする。
【００１０】
【課題を解決するための手段および発明の効果】
回路に含まれるセル間の遅延量は、入力波形の傾きや負荷容量（次段セルの入力ピン容量と配線容量との合計値）などによって定まる。最近では、プロセスの微細化に伴い、配線容量がセル間の遅延量を定める支配的な要因となっている。特に、分岐する配線は、分岐しない配線よりも長く、大きな負荷容量を有する場合が多い。このため、分岐する配線を駆動するためには、駆動能力の高いセルが使用される。ところが、駆動能力の高いセルは、高速駆動を必要とする次段セルだけでなく、高速駆動を必要としない次段セルも高速で駆動してしまう。このようにトップダウン設計手法を用いて設計された回路では、分岐する配線の後段側に接続される次段セルが必要以上に高速駆動され、これに起因して無駄な電力が消費される。
【００１１】
そこで、本発明では、レイアウト結果に対して、分岐点より後段側にある配線上の所定の箇所に新たに負荷分割用バッファを挿入するとともに、分岐点の前段に位置する駆動セルの駆動能力を低くする。これにより、論理合成工程で生じた過大なマージンを削減し、回路の消費電力を削減する。より詳細には、本願発明は、以下のような構成を有している。
【００１２】
第１の発明は、半導体集積回路のレイアウト結果を変更する方法であって、セルの種類とセルの配置情報とセル間の配線情報とを含んだレイアウト結果から、配線の分岐点を検出するステップと、検出した分岐点より後段側にある配線上の所定の箇所に、所定量の負荷を仮想的に挿入するステップと、分岐点を経由してセル間を結ぶ経路の遅延量を、負荷を挿入した場合と、負荷を挿入しない場合とについて求めるステップと、求めた経路の遅延量に基づき、負荷分割用バッファの挿入箇所を決定するステップと、決定した挿入箇所に負荷分割用バッファを挿入するとの条件の下で、経路のタイミング制約に基づき、挿入箇所の前段に位置する駆動セルの駆動能力を求めるステップと、レイアウト結果に基づき、挿入箇所に負荷分割用バッファを挿入可能か否かを判定するステップと、判定結果に基づき、レイアウト結果を変更する処理として、挿入箇所に負荷分割用バッファを配置する処理と、駆動セルを求めた駆動能力を有するセルに変更する処理と、回路変更に伴い配線情報を変更する処理とを行うステップとを備える。
このような第１の発明によれば、タイミング制約が厳しい次段セルとタイミング制約が厳しくない次段セルとを駆動するために、高い駆動能力を有する駆動セルが使用される場合に、分岐点より後段側にある配線上の所定の箇所に負荷分割用バッファを挿入するとともに、駆動セルの駆動能力を低くすることにより、回路の消費電力を削減することができる。
【００１３】
第２の発明は、第１の発明において、負荷分割用バッファの挿入箇所を決定するステップは、ある箇所に負荷を仮想的に挿入したときに、所定の判断基準の下でタイミング制約が厳しいと判断される経路の遅延量が所定以上に変化した場合、当該箇所を負荷分割用バッファの挿入箇所として決定することを特徴とする。
【００１４】
第３の発明は、第２の発明において、負荷分割用バッファの挿入箇所を決定するステップは、同じ分岐点を経由してセル間を結ぶ経路のうちでタイミング制約が最も厳しい経路について、タイミング制約が厳しいと判断することを特徴とする。
このような第２または３の発明によれば、負荷分割用バッファを挿入することにより、回路の低消費電力化を達成できる箇所に、負荷分割用バッファを挿入することができる。
【００１５】
第４の発明は、第１の発明において、負荷を仮想的に挿入するステップは、所定の判断基準に従い必要性を判断した上で、検出した分岐点より後段側にある配線上の所定の箇所に、負荷を仮想的に挿入することを特徴とする。
【００１６】
第５の発明は、第４の発明において、負荷を仮想的に挿入するステップは、分岐点より後段側の全負荷容量を求めるステップと、駆動セルの全負荷容量を求めるステップと、駆動セルの全負荷容量に対する後段側の全負荷容量の割合が所定以上である場合に、分岐点より後段側にある配線上の所定の箇所に、負荷を仮想的に挿入するステップとを含むことを特徴とする。
【００１７】
第６の発明は、第４の発明において、負荷を仮想的に挿入するステップは、分岐点より後段側にある配線のそれぞれについて、当該配線より後段側の全負荷容量を求めるステップと、ある分岐点について求めた後段側の全負荷容量が所定以上に不均衡である場合に、求めた後段側の全負荷容量が最も大きくなる配線上の所定の箇所に、負荷を仮想的に挿入するステップとを含むことを特徴とする。
【００１８】
第７の発明は、第４の発明において、負荷を仮想的に挿入するステップは、分岐点より後段側にある配線のそれぞれについて、当該配線を含む経路のタイミング制約の最悪値を求めるステップと、ある分岐点について求めたタイミング制約の最悪値が所定以上に不均衡である場合に、求めたタイミング制約の最悪値が最も厳しくなる配線上の所定の箇所に、負荷を挿入することを特徴とする。
このような第４ないし第７の発明によれば、負荷を仮想的に挿入する箇所を制限することにより、負荷を仮想的に挿入した場合について経路の遅延量を算出する回数が減少する。これにより、設計方法全体の処理時間を短縮することができる。
【００１９】
第８の発明は、第１の発明において、経路の遅延量を求めるステップより前に、レイアウト結果から、回路の論理的な機能に影響を与えず、かつ、出力端子が分岐点を有する配線に接続される削除可能バッファを検出するステップをさらに備え、経路の遅延量を求めるステップは、削除可能バッファの前段に位置するセルと削除可能バッファの次段に位置するセルとを結ぶ経路の遅延量を、削除可能バッファを仮想的に削除した場合についても求め、レイアウト結果を変更するステップは、レイアウト結果に対して、削除可能バッファを削除する処理をさらに行うことを特徴とする。
このような第８の発明によれば、バッファの追加による回路の低消費電力化に加えて、バッファの移動による回路の低消費電力化を行うことができ、回路の低消費電力化の効果をさらに高めることができる。
【００２０】
第９の発明は、半導体集積回路のレイアウト結果に基づき、負荷分割した場合の遅延情報を求める方法であって、セルの種類とセルの配置情報とセル間の配線情報とを含んだレイアウト結果から、配線の分岐点を検出するステップと、検出した分岐点より後段側にある配線上の所定の箇所に、所定量の負荷を仮想的に挿入するステップと、分岐点を経由してセル間を結ぶ経路の遅延量を、負荷を挿入した場合と、負荷を挿入しない場合とについて求めるステップとを備える。
このような第９の発明によれば、得られた遅延情報を好適な方法で設計者に提示することにより、設計者は、回路における負荷の分布状況を容易に把握することができる。
【００２１】
第１０の発明は、第９の発明において、負荷を仮想的に挿入するステップは、所定の判断基準に従い必要性を判断した上で、検出した分岐点より後段側にある配線上の所定の箇所に、負荷を仮想的に挿入することを特徴とする。
このような第１０の発明によれば、負荷を仮想的に挿入する箇所を制限することにより、負荷を仮想的に挿入した場合について経路の遅延量を算出する回数が減少する。これにより、遅延量算出方法の処理時間を短縮することができる。
【００２２】
第１１の発明は、第９の発明において、経路の遅延量を求めるステップより前に、レイアウト結果から、回路の論理的な機能に影響を与えず、かつ、出力端子が分岐点を有する配線に接続される削除可能バッファを検出するステップをさらに備え、経路の遅延量を求めるステップは、削除可能バッファの前段に位置するセルと削除可能バッファの次段に位置するセルとを結ぶ経路の遅延量を、削除可能バッファを削除した場合について求めることを特徴とする。
このような第１１の発明によれば、設計者は、バッファを挿入した場合の経路の遅延量に加えて、バッファを削除した場合の経路の遅延量を容易に把握することができる。
【００２３】
【発明の実施の形態】
以下に示す各実施形態では、半導体集積回路の消費電力を削減するために、トップダウン設計手法を用いて設計された回路のレイアウト結果を変更する方法を説明する。より詳細には、各実施形態では、レイアウト結果に含まれる分岐点より後段側の所定の箇所に負荷分割用バッファとして、回路の論理的な機能に影響を与えないバッファを挿入するとともに、分岐点の前段に位置する駆動セルの駆動能力を低くすることにより、回路の消費電力を削減する方法について述べる。
【００２４】
回路のレイアウト結果には、少なくとも、セルの種類と、セルの配置情報と、セル間の配線情報とが含まれる。セルは、論理ゲートやフリップフロップやバッファなどに対応する。配線は、あるセルの出力端子と１または複数のセルの入力端子とを接続する。複数のセルの入力端子に接続される配線は、１以上の分岐点を有し、各分岐点において２方向または３方向に分岐する。
【００２５】
各実施形態に係る方法を実行する主体は、多くの場合、コンピュータが所定のソフトウェアを実行することによって実現される、半導体集積回路用の設計ツールである。設計ツールは、各実施形態に係る方法を実行する機能だけを有していてもよく、あるいは、この機能に加えて、半導体集積回路の設計に関する他の機能を有していてもよい。以下では、各実施形態に係る方法を実行する主体が、このような設計ツールであるとして説明する。
【００２６】
（第１の実施形態）
図１から図８を参照して、本発明の第１の実施形態に係る設計方法を説明する。図１は、本実施形態に係る設計方法の工程図である。この設計方法は、分岐点検出工程Ｓ１１０と、仮想負荷挿入工程Ｓ１２０と、遅延量算出工程Ｓ１３０と、挿入箇所決定工程Ｓ１４０と、駆動能力算出工程Ｓ１５０と、レイアウト可否判定工程Ｓ１６０と、レイアウト変更工程Ｓ１７０とを備える。
【００２７】
設計ツールは、まず分岐点検出工程Ｓ１１０において、処理対象となるレイアウト結果から、配線の分岐点を検出する。次に、設計ツールは、仮想負荷挿入工程Ｓ１２０において、分岐点検出工程Ｓ１１０で検出した分岐点のそれぞれについて、各分岐点より後段側（セルの入力端子に接続される側）にある２本または３本の配線上の所定の箇所に、１度に１つずつ所定量の負荷（以下、ダミーバッファという）を仮想的に挿入する。次に、設計ツールは、遅延量算出工程Ｓ１３０において、分岐点を経由して２つのセル間を結ぶ経路について、仮想負荷挿入工程Ｓ１２０でダミーバッファを仮想的に挿入した場合の遅延量（複数とおりある）と、ダミーバッファを挿入しない場合の遅延量とを算出する。
【００２８】
次に、設計ツールは、挿入箇所決定工程Ｓ１４０において、遅延量算出工程Ｓ１３０で算出した遅延量に基づき、配線上のどの箇所に負荷分割用バッファを挿入すべきかを決定する。本実施形態では、設計ツールは、挿入箇所決定工程Ｓ１４０において、所定の判断基準の下でタイミング制約が厳しいと判断される経路Ｌがあり、かつ、ある箇所Ｐにダミーバッファを挿入したときに経路Ｌの遅延量が所定以上小さくなる場合に、箇所Ｐに負荷分割用バッファを挿入すべきであると判断する。
【００２９】
次に、設計ツールは、駆動能力算出工程Ｓ１５０において、挿入箇所決定工程Ｓ１４０で決定した箇所に負荷分割用バッファを挿入するとの条件の下で、経路のタイミング制約に基づき、挿入箇所の前段に位置する駆動セルの駆動能力を求める。次に、設計ツールは、レイアウト可否判定工程Ｓ１６０において、処理対象のレイアウト結果に基づき、挿入箇所決定工程Ｓ１４０で求めた挿入箇所に現実に負荷分割用バッファを挿入可能か否かを判定する。
【００３０】
次に、設計ツールは、レイアウト変更工程Ｓ１７０において、処理対象のレイアウト結果に対して、レイアウト可否判定工程Ｓ１６０において負荷分割用バッファを挿入可能と判定された挿入箇所について、以下の処理を実行する。すなわち、設計ツールは、挿入可能と判定された挿入箇所に負荷分割用バッファを配置し、当該挿入箇所の前段に位置する駆動セルを、駆動能力算出工程Ｓ１５０で求めた駆動能力を有するセルに変更した上で、上記２つの回路変更に伴い配線情報を変更する。
【００３１】
図２は、図１に示す分岐点検出工程Ｓ１１０から遅延量算出工程Ｓ１３０までを、フローチャート形式で示したものである。なお、図１と図２とを対比すると、分岐点検出工程Ｓ１１０はステップＳ２０２およびＳ２０３に、仮想負荷挿入工程Ｓ１２０はステップＳ２０４およびＳ２０６に、遅延量算出工程Ｓ１３０はステップＳ２０１、Ｓ２０５およびＳ２０７に、それぞれ相当する。
【００３２】
図２に示すように、設計ツールは、まず、ダミーバッファを挿入しない場合について、分岐点を経由して２つのセル間を結ぶすべての経路の遅延量を算出する（ステップＳ２０１）。次に、設計ツールは、処理対象のレイアウト結果に未処理の分岐点があるか否かを判断し（ステップＳ２０２）、未処理の分岐点がある間は、以下に示すステップＳ２０３〜Ｓ２０７の処理を繰り返し実行する。設計ツールは、未処理の分岐点を１つ選択した上で（ステップＳ２０３）、選択した分岐点より後段側にある一方の配線上の所定の箇所にダミーバッファを挿入し（ステップＳ２０４）、その場合の経路の遅延量を算出する（ステップＳ２０５）。次に、設計ツールは、選択した分岐点より後段側にある他方の配線上の所定の箇所にダミーバッファを挿入し（ステップＳ２０６）、その場合の経路の遅延量を算出する（ステップＳ２０７）。設計ツールは、すべての分岐点についてステップＳ２０３〜Ｓ２０７の処理を実行した後に、挿入箇所決定工程Ｓ１４０以降の処理（図６）を実行する。
【００３３】
なお、仮想負荷挿入工程Ｓ１２０におけるダミーバッファの挿入箇所は、分岐点より後段側にある配線上であれば任意の場所でよいが、回路の消費電力をより効果的に削減するためには、分岐点に近い場所がより好ましい。また、ダミーバッファとして挿入される負荷の量は、負荷分割用バッファの入力ピン容量と一致させるものとする。また、ダミーバッファを挿入した場合の経路の遅延量を算出するときには、すべての経路の遅延量を改めて計算する必要はなく、ダミーバッファの挿入に伴い遅延量が変化する経路の遅延量のみを改めて計算すればよい。また、図２は、配線が２方向に分岐する場合の処理を示しているが、配線が３方向に分岐する場合には、ダミーバッファを挿入して経路の遅延量を算出する処理を３回行えばよい。
【００３４】
分岐点検出工程Ｓ１１０から遅延量算出工程Ｓ１３０までの処理の具体例を、図３に示すレイアウト結果について説明する。図３は、ある回路をスタンダードセル方式でレイアウトした結果の一部を示す図である。図３には、レイアウト結果の一部として、駆動セル１０と、駆動セルの後段に位置する３つの次段セル１１〜１３と、配線１９とが示されている。配線１９は、２つの分岐点ａおよびｂを有し、駆動セル１０の出力端子と次段セル１１〜１３の入力端子とを接続する。なお、図３を含めレイアウト結果を示す図面において、図面の理解を助けるために、着目すべきセルにハッチングを付する場合がある。
【００３５】
図３に示すレイアウト結果を処理対象とした場合、分岐点検出工程Ｓ１１０では、配線１９について、２つの分岐点ａおよびｂが検出される。この例では、分岐点より後段側にある配線は、分岐点ａより後段側にある配線Ｎａ１  およびＮａ２  、並びに、分岐点ｂより後段側にある配線Ｎｂ１  およびＮｂ２  の４本である。そこで、仮想負荷挿入工程Ｓ１２０では、上記４本の配線上の所定の箇所に、１度に１つずつダミーバッファが挿入される。すなわち、配線１９には、４とおりの方法でダミーバッファが挿入される。また、分岐点ａまたはｂを経由して２つのセル間を結ぶ経路は、３本（駆動セル１０から次段セル１１までの経路と、駆動セル１０から次段セル１２までの経路と、駆動セル１０から次段セル１３までの経路）存在する。そこで、遅延量算出工程Ｓ１３０では、上記３本の経路について、ダミーバッファを挿入しない場合の遅延量と、配線Ｎａ１  上の所定の箇所にダミーバッファを挿入した場合の遅延量と、配線Ｎａ２  上の所定の箇所にダミーバッファを挿入した場合の遅延量と、配線Ｎｂ１  上の所定の箇所にダミーバッファを挿入した場合の遅延量と、配線Ｎｂ２  上の所定の箇所にダミーバッファを挿入した場合の遅延量とが算出される。すなわち、上記３本の経路について、５とおりの方法で経路の遅延量が算出される。
【００３６】
経路の遅延量は、例えば、次のようにして算出される。ダミーバッファを挿入しない場合の経路の遅延量を算出するためには、図４に示すように、図３に示すレイアウト結果から、配線の抵抗成分（ＲｗＸＸと記載：  Ｘは任意の文字。以下、同じ）と容量成分（ＣｗＸＸと記載）とが抽出される。また、セルの特性データから、次段セルの入力ピン容量（ＣｐｉｎＸ  と記載）が読み出される。その上で、経路の遅延量は、予め定めた遅延計算モデルに従って算出される。この例では、駆動セル１０から次段セル１１〜１３までの経路の遅延量  ｔ０１〜ｔ０３  は、それぞれ、駆動セル１０におけるセル遅延ｔｇ０  と、駆動セル１０から次段セル１１〜１３までの配線遅延ｔｗ０１〜ｔｗ０３との合計値となる。ここで、入力波形の傾きｉｎｐｕｔ＿ｓｌｅｗと出力負荷容量とを入力パラメータとする関数Ｆを用いてセル遅延を求め、Ｅｌｍｏｒｅ法などの配線近似計算を用いて配線遅延を求めるとすると、ダミーバッファを挿入しない場合の各経路の遅延量  ｔ０１〜ｔ０３  は、例えば、次式  （１）〜（６）  を用いて計算される。
2004327864.tif 000003
【００３７】
また、ダミーバッファを挿入した場合の経路の遅延量を求めるためには、ダミーバッファを挿入しない場合の抵抗成分と容量成分とに基づき、ダミーバッファを挿入した場合の抵抗成分と容量成分とが求められる。例えば、図３に示す配線Ｎａ２  上の所定の箇所にダミーバッファを挿入した場合の経路の遅延量を求めるためには、図４に示す抵抗成分と容量成分とに対して、配線抵抗Ｒｗａｂを配線抵抗Ｒｗ８ｂに、配線容量Ｃｗａｂをダミーバッファ１８の入力ピン容量Ｃｐｉｎ８  および配線容量Ｃｗ８ｂにそれぞれ置換することにより、図５に示す抵抗成分と容量成分とが求められる。ダミーバッファ１８を挿入した場合の駆動セル１０から次段セル１１までの経路の遅延量Ｔ０１  は、駆動セル１０におけるセル遅延Ｔｇ０  と、駆動セル１０から次段セル１１までの配線遅延Ｔｗ０１との合計値となる。駆動セル１０から次段セル１２までの経路の遅延量Ｔ０２  は、セル遅延Ｔｇ０  と、駆動セル１０からダミーバッファ１８までの配線遅延Ｔｗ０８と、ダミーバッファ１８におけるセル遅延Ｔｇ８  と、ダミーバッファ１８から次段セル１２までの配線遅延Ｔｗ８２との合計値となる。駆動セル１０から次段セル１３までの経路の遅延量Ｔ０３  も、これと同様である。すなわち、ダミーバッファ１８を挿入した場合の各経路の遅延量  Ｔ０１〜Ｔ０３  は、次式  （７）〜（１３）を用いて計算される。
2004327864.tif 000004
【００３８】
図６は、図１に示す挿入箇所決定工程Ｓ１４０からレイアウト変更工程Ｓ１７０までを、フローチャート形式で示したものである。本実施形態では、設計ツールは、挿入箇所決定工程Ｓ１４０において、同じ分岐点を経由してセル間を結ぶ配線のうちでタイミング制約が最も厳しい経路について、タイミングが厳しいと判断し、タイミング制約が最も厳しい経路の遅延量が所定以上小さくなる箇所に、負荷分割用バッファを挿入すべきと判断する。なお、図１と図６とを対比すると、挿入箇所決定工程Ｓ１４０はステップＳ２０８、Ｓ２０９およびＳ２２０に、駆動能力算出工程Ｓ１５０はステップＳ２１０〜Ｓ２１５に、レイアウト可否判定工程Ｓ１６０はステップＳ２１６に、レイアウト変更工程Ｓ１７０はステップＳ２１７〜Ｓ２１９に、それぞれ相当する。
【００３９】
遅延量算出工程Ｓ１３０を終了した時点で、２つのセル間を結ぶ経路の遅延量が、ダミーバッファを挿入した場合（複数とおりある）と、ダミーバッファを挿入しない場合とについて算出されている。そこで、設計ツールは、ステップＳ２０４またはＳ２０６でダミーバッファを挿入した箇所から、未処理の挿入箇所（以下、挿入箇所Ｐとする）を１つ選択する（ステップＳ２０８）。次に、設計ツールは、挿入箇所Ｐにダミーバッファを挿入した場合に、挿入箇所Ｐの前段に位置する駆動セルから当該駆動セルの次段に位置する次段セルまでの経路のうちで、タイミング制約が最も厳しい経路（以下、最悪経路という）の遅延量が所定以上に変化するか否かを判断する（ステップＳ２０９）。ステップＳ２０９における判断が肯定である場合には、設計ツールは、挿入箇所Ｐが最悪経路上にあるか否かを判断し（ステップＳ２１０）、挿入箇所Ｐが最悪経路上にある場合にはステップＳ２１４へ、それ以外の場合にはステップＳ２１１へ進む。
【００４０】
挿入箇所Ｐが最悪経路上にない場合には（ステップＳ２１０でＮｏ）、設計ツールは、ダミーバッファの駆動能力を、ダミーバッファを経由するすべての経路のタイミング制約を満たす最小の駆動能力にすると仮定する（ステップＳ２１１１）。設計ツールは、仮定した条件の下で、最悪経路のタイミング制約を満たす駆動セルの駆動能力の最小値Ｄを求める（ステップＳ２１２）。次に、設計ツールは、ステップＳ２１２で求めた駆動能力の最小値Ｄと元の回路に含まれる駆動セルの駆動能力とを比較し（ステップＳ２１３）、前者のほうが低い場合にはステップＳ２１６へ進む。
【００４１】
一方、挿入箇所Ｐが最悪経路上にある場合には（ステップＳ２１０でＹｅｓ）、設計ツールは、ダミーバッファを経由しないすべての経路のタイミング制約を満たす駆動セルの駆動能力の最小値Ｄを求める（ステップＳ２１４）。設計ツールは、ステップＳ２１５で求めた駆動能力の最小値Ｄが元の回路に含まれる駆動セルの駆動能力より低く、かつ、ダミーバッファの駆動能力が所定以下であるか否かを判断し（ステップＳ２１５）、２つの条件が満たされる場合にはステップＳ２１６へ進む。
【００４２】
設計ツールの制御がステップＳ２１６に到達した場合には、ステップＳ２０８で選択された挿入箇所に、負荷分割用バッファを挿入すべきと判断されたことになる。そこで、設計ツールは、処理対象のレイアウト結果に基づき、挿入箇所Ｐに現実に負荷分割用バッファを挿入可能か否かを判定する（ステップＳ２１６）。ステップＳ２１６における判定結果が肯定である場合には、設計ツールは、ステップＳ２１７へ進む。この場合、設計ツールは、処理対象のレイアウト結果に対して、以下のレイアウト変更処理を実行する。すなわち、設計ツールは、挿入箇所Ｐに負荷分割用バッファを配置し（ステップＳ２１７）、挿入箇所Ｐの前段に位置する駆動セルを、ステップＳ２１２またはＳ２１４で求めた駆動能力を有するセルに変更し（ステップＳ２１８）、これら２つの回路変更に伴い配線情報を変更する（ステップＳ２１９）。
【００４３】
次に、設計ツールは、所定の判断基準に従い、処理を終了する否かを判断する（ステップＳ２２０）。設計ツールは、例えば、ステップＳ２０３またはＳ２０５においてダミーバッファを挿入したすべての箇所について処理を完了したときに、処理を終了すると判断してもよく、あるいは、所定の回数だけレイアウト変更処理を実行したときに、処理を終了すると判断してもよい。設計ツールは、処理を続行すると判断した場合にはステップＳ２０８へ進み、処理を終了すると判断した場合には処理を終了する。なお、設計ツールは、ステップＳ２０９、Ｓ２１３、Ｓ２１５またはＳ２１６のいずれかにおいて否定と判断した場合には、挿入箇所Ｐに関するレイアウト変更処理を実行せずに、ステップＳ２０８へ進む。
【００４４】
以下、挿入箇所決定工程Ｓ１４０からレイアウト変更工程Ｓ１７０までの処理の具体例を、図７に示すレイアウト結果について説明する。図７は、ある回路をスタンダードセル方式でレイアウトした結果の一部を示す図である。図７には、レイアウト結果の一部として、駆動セル２０と、５つの次段セル２１〜２５と、駆動セル２０の前段に位置する前段セル２６と、配線２９とが示されている。配線２９は、４つの分岐点ａ〜ｄを有し、駆動セル２０の出力端子と次段セル２１〜２５の入力端子とを接続する。
【００４５】
図７に示すレイアウト結果を処理対象とした場合、分岐点検出工程Ｓ１１０では、配線２９について、４つの分岐点ａ〜ｄが検出される。また、仮想負荷挿入工程Ｓ１２０では、４つの分岐点ａ〜ｄのそれぞれについて２箇所ずつ計８箇所に、１度に１つずつダミーバッファが挿入される。ここで、駆動セル２０から次段セル２１〜２５までの５本の経路のうち、駆動セル２０から次段セル２４までの経路（太線で示す経路）がタイミング制約が最も厳しい経路（最悪経路）であると仮定する。また、駆動セル２０から次段セル２４までの経路の遅延量を、分岐点ａ〜ｄの後段側にある配線上の各箇所にダミーバッファを挿入した場合（８とおりある）と、ダミーバッファを挿入しない場合とについて比較すると、分岐点ｂの後段側にある配線Ｎｂ１  上の所定の箇所（図７（ａ）に示す挿入箇所Ｐ）にダミーバッファを挿入した場合に、上記経路の遅延量が最小になるものとする。
【００４６】
図７に示すレイアウト結果について、ステップＳ２０８で挿入箇所Ｐが選択された場合には、ステップＳ２０９では肯定、ステップＳ２１０では否定とそれぞれ判断され、ステップＳ２１２において、駆動セル２０から次段セル２４までの経路のタイミング制約を満たす駆動セル２０の駆動能力の最小値Ｄが求められる。その後、ステップＳ２１３において、求めた最小値Ｄが駆動セル２０の駆動能力より小さいと判断され、かつ、ステップＳ２１６において、負荷分割用バッファを挿入箇所Ｐに挿入可能と判断された場合には、次のレイアウト変更処理が実行される。すなわち、挿入箇所Ｐに負荷分割用バッファ２７が配置され（ステップＳ２１７）、駆動セル２０がより駆動能力の低い駆動セル２０’に変更され（ステップＳ２１８）、負荷分割用バッファ２７および駆動セル２０’に接続される配線に関する配線情報が変更される（ステップＳ２１９）。その結果、図７（ａ）に示すレイアウト結果は、図７（ｂ）に示すように変更される。
【００４７】
変更前のレイアウト結果（図７（ａ））では、配線２９が長いため、駆動セル２０の負荷容量は大きい。そこで、駆動セル２０には、駆動能力の高いセルが使用される。これに対して、変更後のレイアウト結果（図７（ｂ））では、負荷分割用バッファ２７が挿入箇所Ｐに挿入されているので、配線２９に対応した配線２９’は元の長さより短くなり、駆動セル２０の負荷容量も小さくなる。したがって、駆動セル２０に代えて、駆動セル２０よりも駆動能力の低い駆動セル２０’を使用することができる。また、駆動セル２０’の駆動能力は、最悪経路を含め各経路のタイミング制約を満たすように算出されるので、図７に示すようにレイアウト結果を変更しても、タイミング制約違反は生じない。よって、本実施形態に係る設計方法によれば、図７（ａ）に示すレイアウト結果について、各経路のタイミング制約を満たしながら、駆動セル２０の駆動能力を低くすることにより、回路の機能を損なうことなく、回路の消費電力を削減することができる。
【００４８】
以上に示すように、本実施形態に係る設計方法によれば、駆動セルが複数の次段セルを駆動する場合において、タイミング制約が厳しい経路の長さは短いが、配線容量と他の次段セルの入力ピン容量との合計値が大きいために、高い駆動能力を有する駆動セルが使用される場合に、タイミング制約が厳しくない次段セルを駆動する負荷分割用バッファを挿入するとともに、駆動セルの駆動能力を低くすることにより、回路の消費電力を削減することができる。
【００４９】
次に、挿入箇所決定工程Ｓ１４０からレイアウト変更工程Ｓ１７０までの処理の他の具体例を、図８に示すレイアウト結果について説明する。図８におけるセルの配置およびセル間の配線は、図７に示したものと同じである。ただし、図８に示すレイアウト結果では、駆動セル３０から次段セル３１〜３５までの５本の経路のうち、駆動セル３０から次段セル３３までの経路（太線で示す経路）がタイミング制約が最も厳しい経路（最悪経路）であるとする。また、駆動セル３０から次段セル３３までの経路の遅延量を、分岐点ａ〜ｄの後段側にある配線上の各箇所にダミーバッファを挿入した場合（８とおりある）と、ダミーバッファを挿入しない場合とについて比較すると、分岐点ｃの後段側にある配線Ｎｃ２  上の所定の箇所（図８（ａ）に示す挿入箇所Ｑ）にダミーバッファを挿入した場合に、上記経路の遅延量が最小になるものとする。
【００５０】
図８に示すレイアウト結果について、ステップＳ２０８で挿入箇所Ｑが選択された場合には、ステップＳ２０９およびＳ２１０においていずれも肯定と判断され、ステップＳ２１４において、ダミーバッファを経由しないすべての経路のタイミング制約を満たす駆動セル３０の駆動能力の最小値Ｄが求められる。その後、ステップＳ２１５における２つの条件を満たすと判断され、かつ、ステップＳ２１６において、負荷分割用バッファを挿入箇所Ｑに挿入可能と判断された場合には、次のレイアウト変更処理が実行される。すなわち、挿入箇所Ｑに負荷分割用バッファ３７が配置され（ステップＳ２１７）、駆動セル３０が駆動セル３０よりも駆動能力の低い駆動セル３０’に変更され（ステップＳ２１８）、負荷分割用バッファ３７および駆動セル３０’に接続される配線に関する配線情報が変更される（ステップＳ２１９）。その結果、図８（ａ）に示すレイアウト結果は、図８（ｂ）に示すように変更される。このようにレイアウト結果を変更することにより、回路の消費電力を削減することができる理由は、図７に示したレイアウト結果の場合と同じである。
【００５１】
以上に示すように、本実施形態に係る設計方法によれば、駆動セルが、タイミング制約が厳しい少数の次段セルと、タイミング制約が厳しくない多数の次段セルとを駆動する場合において、配線容量と他の次段セルの入力ピン容量との合計値が大きいために、高い駆動能力を有する駆動セルが使用される場合には、タイミング制約が厳しい経路上に新たに負荷分割用バッファを挿入して、当該経路の周辺部分のみを選択的に高速駆動するとともに、駆動セルの駆動能力を低くすることにより、回路の消費電力を削減することができる。
【００５２】
なお、図６に示すフローチャートでは、挿入箇所が最悪経路上にある場合、および挿入箇所が最悪経路上にない場合のいずれの場合にも、レイアウト変更処理を行うこととしたが、レイアウト変更処理を行う場合を、上記いずれか一方の場合に限ることとしてもよい。このような設計方法は、図６に示すステップＳ２１０において肯定（あるいは否定）と判断されたときに、制御をステップＳ２０８へ進めることにより、容易に実現することができる。
【００５３】
（第２の実施形態）
図９および図１０を参照して、本発明の第２の実施形態を説明する。図９は、本実施形態に係る設計方法の工程図である。この設計方法は、第１の実施形態に係る設計方法（図１）に含まれる仮想負荷挿入工程Ｓ１２０を、これとは異なる仮想負荷挿入工程Ｓ１２１に置換して得られたものである。図９に示す工程のうち、図１で示した工程については、同一の参照符号を付して説明を省略する。
【００５４】
設計ツールは、仮想負荷挿入工程Ｓ１２１において、所定の判断基準に従い必要性を判断した上で、分岐点検出工程Ｓ１１０で検出した分岐点より後段側にある配線上の所定の箇所にダミーバッファを挿入する。本実施形態に係る仮想負荷挿入工程Ｓ１２１は、分岐後全負荷容量算出工程Ｓ１８１と、全負荷容量算出工程Ｓ１８２と、条件付き仮想負荷挿入工程Ｓ１８３とを含んでいる。設計ツールは、分岐後全負荷容量算出工程Ｓ１８１において、分岐点検出工程Ｓ１１０で検出した各分岐点について、分岐点より後段側の全負荷容量Ｃｐａｒｔ（分岐点より後段側の配線容量と、分岐点の後段に位置するセルの入力ピン容量との合計値；以下、分岐後全負荷容量という）を算出する。次に、設計ツールは、全負荷容量算出工程Ｓ１８２において、各分岐点について、各分岐点の前段に位置する駆動セルの全負荷容量Ｃａｌｌ  （以下、単に「全負荷容量」という）を算出する。次に、設計ツールは、条件付き仮想負荷挿入工程Ｓ１８３において、ある分岐点について、全負荷容量Ｃａｌｌ    に対する分岐後全負荷容量Ｃｐａｒｔの割合が所定以上である場合には、当該分岐点より後段側にある配線上の所定の箇所にダミーバッファを挿入する。それ以外の場合には、設計ツールは、当該分岐点より後段側にある配線上にダミーバッファを挿入しない。
【００５５】
仮想負荷挿入工程Ｓ１２１における処理の具体例を、図１０に示すレイアウト結果について説明する。分岐後全負荷容量算出工程Ｓ１８１では、例えば分岐点ｂに関する分岐後全負荷容量Ｃｐａｒｔ−ｂとして、分岐点ｂから次段セル４２〜４５までの配線容量と、次段セル４２〜４５の入力ピン容量との合計値が算出される。また、分岐点ｄに関する分岐後全負荷容量Ｃｐａｒｔ−ｄとして、分岐点ｄから次段セル４４および４５までの配線容量と、次段セル４４および４５の入力ピン容量との合計値が算出される。また、全負荷容量算出工程Ｓ１８２では、全負荷容量Ｃａｌｌ    として、駆動セル４０から次段セル４１〜４５までの配線容量と、次段セル４１〜４５の入力ピン容量との合計値が算出される。
【００５６】
図１０に示すレイアウト結果では、全負荷容量Ｃａｌｌ  に対する分岐後全負荷容量Ｃｐａｒｔ−ｂの割合は、比較的大きい。したがって、分岐点ｂより後段側の配線上の所定の箇所にダミーバッファを挿入した場合、タイミング制約が所定以上に厳しい経路の遅延量が所定以上に変化する可能性が高く、ダミーバッファ挿入の効果を期待できる。これに対して、全負荷容量Ｃａｌｌ  に対する分岐後全負荷容量Ｃｐａｒｔ−ｄの割合は、比較的小さい。したがって、分岐点ｄより後段側の配線上の所定の箇所にダミーバッファを挿入しても、タイミング制約が所定以上に厳しい経路の遅延量が所定以上に変化する可能性は低く、ダミーバッファ挿入による効果を期待できない。
【００５７】
そこで、条件付き仮想負荷挿入工程Ｓ１８３では、全負荷容量Ｃａｌｌ  に対する分岐後全負荷容量Ｃｐａｒｔの割合が所定以上である場合には（例えば、図１０に示す分岐点ｂ）、ダミーバッファを挿入し、上記割合が所定以上でない場合には（例えば、図１０に示す分岐点ｄ）、ダミーバッファを挿入しないこととする。これにより、条件付き仮想負荷挿入工程Ｓ１８３では、ダミーバッファは、回路の低消費電力化という効果を期待できる箇所に限定して挿入される。
【００５８】
遅延量算出工程Ｓ１３０では、仮想負荷挿入工程Ｓ１２１においてダミーバッファが挿入された場合について、経路の遅延量が算出される。また、上述したように、仮想負荷挿入工程Ｓ１２１では、ダミーバッファは、回路の低消費電力化という効果を期待できる箇所に限定して挿入される。このため、遅延量算出工程Ｓ１３０では、経路の遅延量を算出する回数が減少し、処理時間が短縮される。
【００５９】
以上に示すように、本実施形態に係る設計方法によれば、ダミーバッファを挿入する箇所を制限することにより、ダミーバッファを挿入した場合について経路の遅延量を算出する回数が減少する。これにより、設計方法全体の処理時間を短縮することができる。
【００６０】
（第３の実施形態）
図１０および図１１を参照して、本発明の第３の実施形態を説明する。図１１は、本実施形態に係る設計方法の工程図である。この設計方法は、第１の実施形態に係る設計方法（図１）に含まれる仮想負荷挿入工程Ｓ１２０を、これとは異なる仮想負荷挿入工程Ｓ１２２に置換して得られたものである。図１１に示す工程のうち、図１で示した工程については、同一の参照番号を付して説明を省略する。
【００６１】
設計ツールは、仮想負荷挿入工程Ｓ１２２において、第２の実施形態に係る仮想負荷挿入工程Ｓ１２１と同様に、所定の判断基準に従い必要性を判断した上で、分岐点検出工程Ｓ１１０で検出した分岐点より後段側にある配線上の所定の箇所にダミーバッファを挿入する。本実施形態に係る仮想負荷挿入工程Ｓ１２２は、系統別全負荷容量算出工程Ｓ１８４と、条件付き仮想負荷挿入工程Ｓ１８５とを含んでいる。設計ツールは、系統別全負荷容量算出工程Ｓ１８４において、分岐点検出工程Ｓ１１０で検出した各分岐点の後段側にある各配線について、各配線より後段側の全負荷容量（以下、系統別全負荷容量という）を算出する。より詳細には、設計ツールは、配線が２方向に分岐する分岐点については、分岐点より後段側にある一方の配線Ｗ１に関する系統別全負荷容量Ｃｗ１として、配線Ｗ１より後段側にある配線容量と、配線Ｗ１に接続されるセルの入力ピン容量との合計値を求める。また、設計ツールは、同様の方法で、分岐点より後段側にある他方の配線Ｗ２に関する系統別全負荷容量Ｃｗ２を求める。
【００６２】
次に、設計ツールは、条件付き仮想負荷挿入工程Ｓ１８５において、配線Ｗ１に関する系統別全負荷容量Ｃｗ１と配線Ｗ２に関する系統別全負荷容量Ｃｗ２とを比較し、両者が所定以上に不均衡である場合に、系統別全負荷容量が大きい側の配線上の所定の箇所にダミーバッファを挿入する。すなわち、系統別全負荷容量Ｃｗ１が系統別全負荷容量Ｃｗ２よりも所定以上に大きい場合には、ダミーバッファは、配線Ｗ１上の所定の箇所に挿入される。逆に、系統別全負荷容量Ｃｗ２が系統別全負荷容量Ｃｗ１よりも所定以上に大きい場合には、ダミーバッファは、配線Ｗ２上の所定の箇所に挿入される。上記２つの場合以外の場合（すなわち、系統別全負荷容量Ｃｗ１とＣｗ２との差が所定以下である場合）には、ダミーバッファは、配線Ｗ１およびＷ２上のいずれにも挿入されない。なお、設計ツールは、配線が３方向に分岐する場合には、系統別全負荷容量を求めて比較する処理を３本の配線について行う。
【００６３】
仮想負荷挿入工程Ｓ１２２における処理の具体例を、図１０に示すレイアウト結果について説明する。図１０に示す配線４９は、４つの分岐点ａ〜ｄを有する。また、分岐点ａより後段側には配線Ｎａ１  およびＮａ２  が存在し、分岐点ｂより後段側には配線Ｎｂ１  およびＮｂ２  が存在する。系統別全負荷容量算出工程Ｓ１８４では、例えば分岐点ａについて、配線Ｎａ１  に関する系統別全負荷容量ＣＮａ１  として、分岐点ａから次段セル４２〜４５までの配線容量と、次段セル４２〜４５の入力ピン容量との合計値が算出される。また、分岐点ａの他方の配線Ｎａ２  に関する系統別全負荷容量ＣＮａ２  として、分岐点ａから次段セル４１までの配線容量と、次段セル４１の入力ピン容量との合計値が算出される。また、分岐点ｂについては、配線Ｎｂ１  に関する系統別全負荷容量ＣＮｂ１  として、分岐点ｂから次段セル４４および４５までの配線容量と、次段セル４４および４５の入力ピン容量との合計値が算出され、配線Ｎｂ２  に関する系統別全負荷容量ＣＮｂ２  として、分岐点ｂから次段セル４２および４３までの配線容量と、次段セル４２および４３の入力ピン容量との合計値が算出される。
【００６４】
図１０に示すレイアウト結果では、配線Ｎａ１  に関する系統別全負荷容量ＣＮａ１  は、配線Ｎａ２  に関する系統別全負荷容量ＣＮａ２  よりかなり大きい。したがって、配線Ｎａ１  上の所定の箇所にダミーバッファを挿入した場合、タイミング制約が所定以上に厳しい経路の遅延量が所定以上に変化する可能性が高く、ダミーバッファ挿入の効果を期待できる。これに対して、配線Ｎｂ１  に関する系統別全負荷容量ＣＮｂ１  と、配線Ｎｂ２  に関する系統別全負荷容量ＣＮｂ２  とはほぼ等しい。したがって、配線Ｎｂ１  およびＮｂ２  上の所定の箇所にダミーバッファを挿入しても、タイミング制約が所定以上に厳しい経路の遅延量が所定以上に変化する可能性は低く、ダミーバッファ挿入の効果を期待できない。
【００６５】
そこで、条件付き仮想負荷挿入工程Ｓ１８５では、ある分岐点の後段側にある各配線に関する系統別全負荷容量Ｃｗ１とＣｗ２とが所定以上に不均衡である場合には（例えば、図１０に示す分岐点ａ）、系統別全負荷容量が大きい側の配線（この例では、配線Ｎａ１  ）上の所定の箇所にダミーバッファを挿入し、両者が所定以上に不均衡でない場合には（例えば、図１０に示す分岐点ｂ）には、ダミーバッファを挿入しないこととする。これにより、条件付き仮想負荷挿入工程Ｓ１８５では、ダミーバッファは、回路の低消費電力化という効果を期待できる箇所に限定して挿入される。このような条件付き仮想負荷挿入工程Ｓ１８５を実行することにより、第２の実施形態と同じ理由により、遅延量算出工程Ｓ１３０における処理時間が短縮される。
【００６６】
以上に示すように、本実施形態に係る設計方法によれば、ダミーバッファを挿入する箇所を制限することにより、ダミーバッファを挿入した場合について経路の遅延量を算出する回数が減少する。これにより、設計方法全体の処理時間を短縮することができる。
【００６７】
（第４の実施形態）
図１０および図１２を参照して、本発明の第４の実施形態を説明する。図１２は、本実施形態に係る設計方法の工程図である。この設計方法は、第１の実施形態に係る設計方法（図１）に含まれる仮想負荷挿入工程Ｓ１２０を、これとは異なる仮想負荷挿入工程Ｓ１２３に置換して得られたものである。図１２に示す工程のうち、図１で示した工程については、同一の参照符号を付して説明を省略する。
【００６８】
設計ツールは、仮想負荷挿入工程Ｓ１２３において、第２および第３の実施形態に係る仮想負荷挿入工程Ｓ１２１およびＳ１２２と同様に、所定の判断基準に従い必要性を判断した上で、分岐点検出工程Ｓ１１０で検出した分岐点より後段側にある配線上の所定の箇所にダミーバッファを挿入する。本実施形態に係る仮想負荷挿入工程Ｓ１２３は、系統別タイミング制約算出工程Ｓ１８６と、条件付き仮想負荷挿入工程Ｓ１８７とを含んでいる。設計ツールは、系統別タイミング制約算出工程Ｓ１８６において、分岐点検出工程Ｓ１１０で検出した各分岐点の後段側にある各配線について、当該配線を含む経路のタイミング制約の最悪値（以下、系統別タイミング制約の最悪値という）を算出する。より詳細には、設計ツールは、配線が２方向に分岐する分岐点については、分岐点より後段側にある一方の配線Ｗ１に関する系統別タイミング制約の最悪値Ｔｗ１として、分岐点から分岐点の後段に位置する次段セルまでの経路であって、配線Ｗ１を含む経路のタイミング制約の最悪値を求める。また、設計ツールは、同様の方法で、分岐点より後段側にある他方の配線Ｗ２に関する系統別タイミング制約の最悪値Ｔｗ２を求める。
【００６９】
次に、設計ツールは、条件付き仮想負荷挿入工程Ｓ１８７において、配線Ｗ１に関する系統別タイミング制約の最悪値Ｔｗ１と、配線Ｗ２に関する系統別タイミング制約の最悪値Ｔｗ２とを比較し、両者が所定以上に不均衡である場合に、系統別タイミング制約が厳しい側の配線上の所定の箇所にダミーバッファを挿入する。すなわち、系統別タイミング制約の最悪値Ｔｗ１が系統別タイミング制約の最悪値Ｔｗ２よりも所定以上に厳しい場合には、ダミーバッファは、配線Ｗ１上の所定の箇所に挿入される。逆に、系統別タイミング制約の最悪値Ｔｗ２が系統別タイミング制約の最悪値Ｔｗ１よりも所定以上に厳しい場合には、ダミーバッファは、配線Ｗ２上の所定の箇所に挿入される。上記２つの場合以外の場合（すなわち、系統別タイミング制約の最悪値Ｔｗ１とＴｗ２との差が所定以下である場合）には、ダミーバッファは、配線Ｗ１およびＷ２上のいずれにも挿入されない。なお、設計ツールは、配線が３方向に分岐する場合には、系統別タイミング制約の最悪値を求めて比較する処理を３本の配線について行う。
【００７０】
仮想負荷挿入工程Ｓ１２３における処理の具体例を、図１０に示すレイアウト結果について説明する。図１０に示す配線４９は、４つの分岐点ａ〜ｄを有し、分岐点ｂより後段側には、配線Ｎｂ１  およびＮｂ２  が存在する。系統別タイミング制約算出工程Ｓ１８６では、例えば分岐点ｂについて、次の処理が実行される。すなわち、まず、分岐点ｂから次段セル４２〜４５までの４本の経路のタイミング制約Ｔ４２〜Ｔ４５が算出される。その上で、分岐点ｂの後段側にある一方の配線Ｎｂ１  に関する系統別タイミング制約の最悪値ＴＮｂ１  として、タイミング制約Ｔ４４およびＴ４５のうち、厳しい側のタイミング制約が選ばれる。同様に、分岐点ｂの後段側にある他方の配線Ｎｂ２  に関する系統別タイミング制約の最悪値ＴＮｂ２  として、タイミング制約Ｔ４２とＴ４３のうち厳しい側のタイミング制約が選ばれる。
【００７１】
このようにして算出された配線Ｎｂ１  に関する系統別タイミング制約の最悪値ＴＮｂ１  が、配線Ｎｂ２  に関する系統別タイミング制約の最悪値ＴＮｂ２  より所定以上に大きいと場合には、配線Ｎｂ１  上の所定の箇所にダミーバッファを挿入すると、タイミング制約が所定以上に厳しい経路の遅延量が所定以上に変化する可能性が高く、ダミーバッファ挿入の効果を期待できる。逆に、系統別タイミング制約の最悪値ＴＮｂ２  が系統別タイミング制約の最悪値ＴＮｂ１  より所定以上大きい場合には、配線Ｎｂ２  上の所定の箇所にダミーバッファを挿入すると、タイミング制約が所定以上に厳しい経路の遅延量が所定以上に変化する可能性が高く、ダミーバッファ挿入の効果を期待できる。上記２つの場合以外の場合（すなわち、系統別タイミング制約の最悪値ＴＮｂ１  とＴＮｂ２  との差が所定以下である場合）には、配線Ｎｂ１  またはＮｂ２  上の所定の箇所にダミーバッファを挿入しても、タイミング制約が所定以上に厳しい経路の遅延量が所定以上に変化する可能性が低く、ダミーバッファ挿入の効果を期待できない。
【００７２】
そこで、条件付き仮想負荷挿入工程Ｓ１８７では、ある分岐点の後段側にある各配線に関する系統別タイミング制約の最悪値Ｔｗ１とＴｗ２とが所定以上に不均衡である場合には、系統別タイミング制約が厳しい側の配線上の所定の箇所にダミーバッファを挿入し、両者が所定以上に不均衡でない場合には、ダミーバッファを挿入しないこととする。これにより、条件付き仮想負荷挿入工程Ｓ１８７では、ダミーバッファは、回路の低消費電力化という効果を期待できる箇所に限定して挿入される。このような条件付き仮想負荷挿入工程Ｓ１８７を実行することにより、第２および第３の実施形態と同じ理由により、遅延量算出工程Ｓ１３０における処理時間が短縮される。
【００７３】
以上に示すように、本実施形態に係る設計方法によれば、ダミーバッファを挿入する箇所を制限することにより、ダミーバッファを挿入した場合について経路の遅延量を算出する回数が減少する。これにより、設計方法全体の処理時間を短縮することができる。
【００７４】
（第２ないし第４の実施形態の変形例）
第２ないし第４の実施形態では、低消費電力化設計方法の処理時間を短縮する３種類の方法を示したが、これらの方法のうち２種類、または３種類を任意に組み合わせることができる。図１３は、上記３種類の処理時間短縮方法を用いた設計方法の工程図である。図１３に示す工程のうち、図１、図９、図１１または図１２で示した工程については、同一の参照符号を付して説明を省略する。
【００７５】
設計ツールは、仮想負荷挿入工程Ｓ１２４において、第２ないし第４の実施形態に係る仮想負荷挿入工程Ｓ１２１〜１２３と同様に、所定の判断基準に従い必要性を判断した上で、分岐点検出工程Ｓ１１０で検出した分岐点より後段側にある配線上の所定の箇所にダミーバッファを挿入する。図１３に示す仮想負荷挿入工程Ｓ１２４は、分岐後全負荷容量算出工程Ｓ１８１と、全負荷容量算出工程Ｓ１８２と、系統別全負荷容量算出工程Ｓ１８４と、系統別タイミング制約算出工程Ｓ１８６と、条件付き仮想負荷挿入工程Ｓ１８８とを含んでいる。
【００７６】
図１４は、条件付き仮想負荷挿入工程Ｓ１８８の詳細を示すフローチャートである。図１４に示す処理は、分岐点検出工程Ｓ１１０で検出された分岐点のそれぞれに対して実行される。この処理では、分岐後全負荷容量算出工程Ｓ１８１で算出された分岐後全負荷容量Ｃｐａｒｔと、全負荷容量算出工程Ｓ１８２で算出された全負荷容量Ｃａｌｌ  と、系統別全負荷容量算出工程Ｓ１８４で算出された系統別全負荷容量Ｃｗ１およびＣｗ２と、系統別タイミング制約算出工程Ｓ１８６で算出された系統別タイミング制約の最悪値Ｔｗ１およびＴｗ２とが参照される。
【００７７】
設計ツールは、条件付き仮想負荷挿入工程Ｓ１８８において、以下の処理を行う。設計ツールは、全負荷容量Ｃａｌｌ  に対する分岐後全負荷容量Ｃｐａｒｔの割合が所定以上であるか否かを判断する（ステップＳ３０１）。全負荷容量Ｃａｌｌ  に対する分岐後全負荷容量Ｃｐａｒｔの割合が所定以上である場合には、設計ツールは、ステップＳ３０２へ進む。この場合、設計ツールは、系統別全負荷容量Ｃｗ１とＣｗ２とが所定以上に不均衡であるか否かを判断する（ステップＳ３０２）。系統別全負荷容量Ｃｗ１とＣｗ２とが所定以上に不均衡である場合には、設計ツールは、系統別全負荷容量が大きい側の配線上の所定の箇所にダミーバッファを挿入する（ステップＳ３０３）。
【００７８】
これに対して、系統別全負荷容量Ｃｗ１およびＣｗ２が所定以上に不均衡でない場合には、設計ツールは、系統別タイミング制約の最悪値Ｔｗ１とＴｗ２とが所定以上に不均衡であるか否かを判断する（ステップＳ３０４）。系統別タイミング制約の最悪値Ｔｗ１とＴｗ２とが所定以上に不均衡である場合には、設計ツールは、系統別タイミング制約が厳しい側の配線上の所定の箇所にダミーバッファを挿入する（ステップＳ３０５）。
【００７９】
なお、設計ツールは、ステップＳ３０１において否定と判断した場合、または、ステップＳ３０２およびＳ３０３の両方で否定と判断した場合には、ダミーバッファを挿入することなく、条件付き仮想負荷挿入工程Ｓ１８８を終了する。
【００８０】
以上に示すように、低消費電力化設計方法の処理時間を短縮する方法を任意に組み合わせて、ダミーバッファを挿入する箇所をさらに制限することにより、ダミーバッファを挿入した場合について経路の遅延量を算出する回数がさらに減少する。これにより、設計方法全体の処理時間をさらに短縮することができる。
【００８１】
（第５の実施形態）
図１５から図１８を参照して、本発明の第５の実施形態を説明する。図１５は、本実施形態に係る設計方法の工程図である。この設計方法は、分岐点検出工程Ｓ１１０と、削除候補検出工程Ｓ１１４と、仮想負荷挿入工程Ｓ１２０と、遅延量算出工程Ｓ１３４と、挿入箇所決定工程Ｓ１４０と、駆動能力算出工程Ｓ１５０と、レイアウト可否判定工程Ｓ１６０と、レイアウト変更工程Ｓ１７４とを備える。図１５に示す工程のうち、図１で示した工程については、同一の参照符号を付して説明を省略する。
【００８２】
設計ツールは、削除候補検出工程Ｓ１１４において、処理対象のレイアウト結果から、回路の論理的な機能に影響を与えず、かつ、出力端子が分岐点を有する配線に接続されるバッファ（以下、削除可能バッファという）を検出する。このような削除可能バッファは、トップダウン設計手法を用いて設計された回路に数多く含まれる。
【００８３】
また、設計ツールは、遅延量算出工程Ｓ１３４において、第１ないし第４の実施形態に係る遅延量算出工程Ｓ１３０と同様に、分岐点を経由して２つのセル間を結ぶ経路について、仮想負荷挿入工程Ｓ１２０でダミーバッファを仮想的に挿入した場合の遅延量（複数とおりある）と、ダミーバッファを挿入しない場合の遅延量とを算出する。これに加えて、設計ツールは、遅延量算出工程Ｓ１３４において、削除候補検出工程Ｓ１１４で検出した削除可能バッファの前段に位置するセルと、削除可能バッファの次段に位置するセルとを結ぶ経路の遅延量を、削除可能バッファを仮想的に削除した場合について算出する。
【００８４】
設計ツールは、挿入箇所決定工程Ｓ１４４において、第１ないし第４の実施形態に係る挿入箇所決定工程Ｓ１４０と同様に、遅延量算出工程Ｓ１３４で算出した遅延量に基づき、配線上のどの箇所に負荷分割用バッファを挿入すべきかを決定する。ただし、本実施形態に係る挿入箇所決定工程Ｓ１４４では、削除可能バッファを削除した場合の経路の遅延量も考慮して、負荷分割用バッファの挿入箇所が決定され、現実に削除すべき削除可能バッファが特定される。
【００８５】
また、設計ツールは、レイアウト変更工程Ｓ１７４において、第１ないし第４の実施形態に係るレイアウト変更工程Ｓ１７０と同様に、処理対象のレイアウト結果に対して、レイアウト可否判定工程Ｓ１６０において負荷分割用バッファを挿入可能と判定された挿入箇所について、レイアウト変更処理を実行する。ただし、本実施形態に係るレイアウト変更工程Ｓ１７４では、処理対象のレイアウト結果に対して、挿入箇所決定工程Ｓ１４４で求めた現実に削除すべき削除可能バッファを削除する処理も行われる。
【００８６】
図１６は、図１５に示す分岐点検出工程Ｓ１１０から遅延量算出工程Ｓ１３４までをフローチャート形式で示したものである。なお、図１５と図１６とを対比すると、分岐点検出工程Ｓ１１０はステップＳ４０２およびＳ４０３に、削除候補検出工程Ｓ１１４はステップＳ４０９〜Ｓ４１１に、仮想負荷挿入工程Ｓ１２０はステップＳ４０４およびＳ４０６に、遅延量算出工程Ｓ１３４はステップＳ４０１、Ｓ４０５およびＳ４０７に、それぞれ相当する。
【００８７】
図１６に示すステップＳ４０１〜Ｓ４０７は、図２に示したステップＳ２０１〜Ｓ２０７と同じであるので、ここでは説明を省略する。設計ツールは、ステップＳ４０７を実行した後、以下の処理を行う。設計ツールは、ステップＳ４０２で選択した分岐点が、その分岐点を有する配線における最初の分岐点であるか否かを判断し（ステップＳ４０８）、分岐点の前段に位置する駆動セルが論理を変更するか否かを判断する（ステップＳ４０９）。設計ツールは、ステップＳ４０８において肯定、かつ、ステップＳ４０９において否定と判断した場合には、分岐点の前段に位置する駆動セルを仮想的に削除し（ステップＳ４１０）、その場合の経路の遅延量を算出した後（ステップＳ４１１）、ステップＳ４０２へ進む。なお、設計ツールは、ステップＳ４０８において否定、または、ステップＳ４０９において肯定と判断した場合には、ステップＳ４１０およびＳ４１１の処理を行うことなく、直ちにステップＳ４０２へ進む。
【００８８】
以下、本実施形態に係る設計方法における処理の具体例を、図１７に示すレイアウト結果について説明する。図１７には、レイアウト結果として、駆動セル５０と、５つの次段セル５１〜５５と、駆動セル５０の前段に位置する前段セル５６と、前段セル５６に接続されるその他のセル５７と、配線５９とが示されている。配線５９は、４つの分岐点ａ〜ｄを有し、駆動セル５０の出力端子と次段セル５１〜５５の入力端子とを接続する。駆動セル５０は、回路の論理的な機能に影響を与えないセルであり、駆動セル５０から次段セル５１〜５５までの５本の経路のうち、駆動セル５０から次段セル５４までの経路（太線で示す経路）のタイミング制約が最も厳しいものとする。
【００８９】
図１７に示すレイアウト結果を処理対象とした場合、分岐点検出工程Ｓ１１０では、配線５９について、４つの分岐点が検出される。また、駆動セル５０は、回路の論理的な機能に影響を与えないセルであり、かつ、その出力端子が分岐点を有する配線５９に接続されている。このため、削除候補検出工程Ｓ１１４では、駆動セル５０が、削除可能バッファとして検出される。遅延量算出工程Ｓ１３４では、分岐点ａ〜ｄの後段側にある各配線上にダミーバッファを仮想的に挿入した場合の経路の遅延量と、ダミーバッファを仮想的に挿入しない場合の経路の遅延量とに加えて、駆動セル５０を仮想的に削除した場合の経路の遅延量が算出される。
【００９０】
挿入箇所決定工程Ｓ１４４では、遅延量算出工程Ｓ１３４で求めた遅延量に基づき、負荷分割用バッファの挿入箇所と、現実に削除すべき削除可能バッファとが求められる。以下では、例として、挿入箇所決定工程Ｓ１４４において、図１７に示す挿入箇所Ｒに負荷分割用バッファを挿入し、駆動セル５０を削除すると決定されたとする。この場合、レイアウト変更工程Ｓ１７４では、挿入箇所Ｒに負荷分割用バッファ５８が配置され、駆動セル５０は削除され、負荷分割用バッファ５８および駆動セル５０に接続される配線に関する配線情報が変更される。その結果、図１７（ａ）に示すレイアウト結果は、図１７（ｂ）に示すように変更される。
【００９１】
以上に示すように、本実施形態に係る設計方法によれば、駆動セルが複数の次段セルを駆動する場合において、タイミング制約が厳しい経路の長さは短いが、配線容量と他の次段セルの入力ピン容量との合計値が大きいために、高い駆動能力を有する駆動セルが使用される場合には、タイミング制約が厳しくない次段セルを駆動するために新たに負荷分割用バッファを挿入するとともに、駆動セルを削除して、駆動セルの前段に位置する前段セルでタイミング制約が厳しい経路を駆動させることにより、回路の消費電力を削減することができる。
【００９２】
また、本実施形態に係る設計方法における処理の他の具体例を、図１８に示すレイアウト結果について説明する。図１８におけるセルの配置およびセル間の配線は、図１７に示したものと同じである。駆動セル６０は、回路の論理的な機能に影響を与えないセルであり、駆動セル６０から次段セル６１〜６５までの５本の経路のうち、駆動セル６０から次段セル６３までの経路（太線で示す経路）のタイミング制約が最も厳しいものとする。
【００９３】
また、挿入箇所決定工程Ｓ１４４において、図１８に示す挿入箇所Ｓに負荷分割用バッファを挿入し、駆動セル６０を削除すると決定されたとする。この場合、レイアウト変更工程Ｓ１７４では、挿入箇所Ｓに負荷分割用バッファ６８が配置され、駆動セル６０は削除され、負荷分割用バッファ６８および駆動セル６０に接続される配線に関する配線情報が変更される。その結果、図１８（ａ）に示すレイアウト結果は、図１８（ｂ）に示すように変更される。
【００９４】
以上に示すように、本実施形態に係る設計方法によれば、駆動セルが、タイミング制約が厳しい少数の次段セルと、タイミング制約が厳しくない多数の次段セルとを駆動する場合において、配線容量と他の次段セルの入力ピン容量との合計値が大きいために、高い駆動能力を有する駆動セルが使用される場合には、タイミング制約が厳しい経路上に新たに負荷分割用バッファを挿入して、当該経路の周辺部分のみを選択的に高速駆動するとともに、駆動セルを削除して、駆動セルの前段に位置する前段セルで他のタイミングが厳しくない経路を駆動することにより、回路の消費電力を削減することができる。
【００９５】
以下、本実施形態に係る設計方法の効果を説明する。上述した第１の実施形態に係る設計方法によれば、分岐点より後段側にある配線上の所定の箇所に負荷分割用バッファを挿入するとともに、駆動セルの駆動能力を低くすることにより、回路の消費電力を削減することができる。本実施形態に係る設計方法は、第１の実施形態に係る方法に、処理対象のレイアウト結果から削除可能バッファを検出する処理と、レイアウト結果に対して、検出した削除可能バッファを削除する処理とを追加したものである。負荷分割用バッファを追加する処理と、削除可能バッファを削除する処理とを行うことは、バッファを移動させる処理を行うことに等しい。したがって、本実施形態に係る設計方法によれば、バッファの追加による回路の低消費電力化に加えて、バッファの移動による回路の低消費電力化を行うことができ、回路の低消費電力化の効果をさらに高めることができる。
【００９６】
（第１ないし第５の実施形態の変形例）
上述した各実施形態に係る設計方法について、各種の変形例を構成することができる。例えば、分岐点検出工程では、処理対象のレイアウト結果に含まれるすべての分岐点を検出してもよく、所定数の分岐点を検出してもよい。また、遅延量算出工程における遅延量の算出方法は、任意でよい。また、第２ないし第４の実施形態で示した、ダミーバッファ挿入箇所の制限による処理時間短縮方法を、第５の実施形態に係る設計方法に適用してもよい。
【００９７】
また、上述した各実施形態に係る設計方法のうち遅延量算出工程までの工程を、遅延情報算出方法として実行することもできる。具体的には、第１ないし第４の実施形態に係る設計方法のうち、分岐点検出工程Ｓ１１０と、仮想負荷挿入工程Ｓ１２０〜１２４と、遅延量算出工程Ｓ１３０とを、半導体集積回路に対して負荷分割を行った場合の遅延情報を算出する方法として実行することができる。また、第５の実施形態に係る設計方法のうち、分岐点検出工程Ｓ１１０と、削除候補検出工程Ｓ１１４と、仮想負荷挿入工程Ｓ１２０と、遅延量算出工程Ｓ１３４とを、遅延情報算出方法として実行することもできる。
【００９８】
このような遅延情報算出方法によれば、分岐点より後段側の配線上にダミーバッファを挿入した場合の遅延情報が得られる。得られた遅延情報を好適な方法で設計者に提示することにより、設計者は、回路における負荷の分布状況を容易に把握することができる。また、設計者は、ダミーバッファの挿入に伴う経路の遅延量の変動状況を把握し、回路のレイアウト結果に含まれる設計マージンを検出することができる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態に係る設計方法の工程図
【図２】本発明の第１の実施形態に係る設計方法の前半部分の工程の詳細を示すフローチャート
【図３】本発明の第１の実施形態に係る設計方法の前半部分の工程を説明するためのレイアウト結果を示す図
【図４】図３に示す回路の抵抗成分と容量成分とを示す図
【図５】図３に示す回路にダミーバッファを挿入した場合の抵抗成分と容量成分とを示す図
【図６】本発明の第１の実施形態に係る設計方法の後半部分の工程の詳細を示すフローチャート
【図７】本発明の第１の実施形態に係る設計方法の後半部分の工程を説明するためのレイアウト結果を示す図
【図８】本発明の第１の実施形態に係る設計方法の後半部分の工程を説明するための他のレイアウト結果を示す図
【図９】本発明の第２の実施形態に係る設計方法の工程図
【図１０】本発明の第２ないし第４の実施形態に係る設計方法による処理時間の短縮を説明するためのレイアウト結果を示す図
【図１１】本発明の第３の実施形態に係る設計方法の工程図
【図１２】本発明の第４の実施形態に係る設計方法の工程図
【図１３】本発明の第２ないし第４の実施形態の変形例に係る設計方法の工程図
【図１４】図１３に示す設計方法における条件付き仮想負荷挿入工程の詳細を示すフローチャート
【図１５】本発明の第５の実施形態に係る設計方法の工程図
【図１６】本発明の第５の実施形態に係る設計方法の前半部分の工程の詳細を示すフローチャート
【図１７】本発明の第５の実施形態に係る設計方法を説明するためのレイアウト結果を示す図
【図１８】本発明の第５の実施形態に係る設計方法を説明するための他のレイアウト結果を示す図
【図１９】従来の半導体集積回路の低消費電力化設計方法の工程図
【符号の説明】
１０、２０、３０、４０、５０、６０…駆動セル
１１〜１３、２１〜２５、３１〜３５、４１〜４５、５１〜５５、６１〜６５…次段セル
２６、３６、５６、６６…前段セル
５７、６７…他のセル
１８…ダミーバッファ
２７、３７、５８、６８…負荷分割用バッファ
１９、２９、３９、４９、５９、６９…配線
Ｓ１１０…分岐点検出工程
Ｓ１１４…削除候補検出工程
Ｓ１２０〜Ｓ１２４…仮想負荷挿入工程
Ｓ１３０、Ｓ１３４…遅延量算出工程
Ｓ１４０、Ｓ１４４…挿入箇所決定工程
Ｓ１５０…駆動能力算出工程
Ｓ１６０…レイアウト可否判定工程
Ｓ１７０、１７４…レイアウト変更工程
Ｓ１８１…分岐後全負荷容量算出工程
Ｓ１８２…全負荷容量算出工程
Ｓ１８３、Ｓ１８５、Ｓ１８７、Ｓ１８８…条件付き仮想負荷挿入工程
Ｓ１８４…系統別全負荷容量算出工程
Ｓ１８６…系統別タイミング制約算出工程
ａ〜ｄ…分岐点
Ｎａ１、Ｎａ２…分岐点ａより後段側の配線
【図１】
2004327864.tif 000005
【図２】
2004327864.tif 000006
【図３】
2004327864.tif 000007
【図４】
2004327864.tif 000008
【図５】
2004327864.tif 000009
【図６】
2004327864.tif 000010
【図７】
2004327864.tif 000011
【図８】
2004327864.tif 000012
【図９】
2004327864.tif 000013
【図１０】
2004327864.tif 000014
【図１１】
2004327864.tif 000015
【図１２】
2004327864.tif 000016
【図１３】
2004327864.tif 000017
【図１４】
2004327864.tif 000018
【図１５】
2004327864.tif 000019
【図１６】
2004327864.tif 000020
【図１７】
2004327864.tif 000021
【図１８】
2004327864.tif 000022
【図１９】
2004327864.tif 000023