(57)【要約】【課題】  本発明の課題は、デカップリング容量効果を最適化した回路設計を行うことを目的とする。【解決手段】  上記課題は、回路を構成する複数のセル間のネット毎の高電位電源側及び低電位電源側の配線容量と、各入力ピンの該高電位電源側及び該低電位電源側の容量とを記憶する記憶部と、前記記憶部に記憶された前記各ネットの配線容量と、前記各入力ピンの容量とを参照して、前記構成における非動作パスに対して、セルの置換前の該セルの組み合せと、セルを置換する際の制約に従った置換後のセルの組み合せのうち、該非動作パスの信号値の遷移状態に応じた、各ネット及び各入力ピンの前記高電位電源側又は前記低電位電源側の容量を加算した総容量に基づいて、該総容量が最大となるセルに置換することによって、デカップリング容量効果を最適化する最適化処理部と、を有する回路設計装置により達成される。【選択図】  図５
2013069080.tif 000002
【特許請求の範囲】
【請求項１】
回路を構成する複数のセル間のネット毎の高電位電源側及び低電位電源側の配線容量と、各入力ピンの該高電位電源側及び該低電位電源側の容量とを記憶する記憶部と、
前記記憶部に記憶された前記各ネットの配線容量と、前記各入力ピンの容量とを参照して、前記構成における非動作パスに対して、セルの置換前の該セルの組み合せと、セルを置換する際の制約に従った置換後のセルの組み合せのうち、該非動作パスの信号値の遷移状態に応じた、各ネット及び各入力ピンの前記高電位電源側又は前記低電位電源側の容量を加算した総容量に基づいて、該総容量が最大となるセルに置換することによって、デカップリング容量効果を最適化する最適化処理部と、
を有することを特徴とする回路設計装置。
【請求項２】
前記最適化処理部は、
セル置換前の前記非動作パスに対して、前記記憶部に格納された前記各ネットの配線容量と、前記各入力ピンの容量とを参照して、該非動作パスの信号値の遷移状態に応じた各ネット及び各入力ピンの前記高電位電源側又は前記低電位電源側の容量を合計することによってセル置換前の総容量を算出する第１総容量算出処理部と、
前記セル置換の制約に基づいて、前記非動作パスのセルを置換するセル置換処理部と、
前記セル置換処理部による前記セルの組み合せ毎に、前記各ネットの配線容量と、前記各入力ピンの容量とを参照して、前記非動作パスの信号値の遷移状態に応じた各ネット及び各入力ピンの前記高電位電源側又は前記低電位電源側の容量を合計することによってセル置換後の総容量を算出する第２総容量算出処理部と、
前記第１総容量算出処理部によって得られた前記セル置換前の総容量と、前記第２総容量算出処理部によって得られた前記セルの組み合せ毎の前記セル置換後の総容量のうち、該総容量が最大となるセルの組み合せによるパスを検出する最大容量パス検出部と、
を有することを特徴とする請求項１記載の回路設計装置。
【請求項３】
前記最大容量パス検出部によって検出されたパスの前記セルの組み合せを含めて信号配線を行う信号配線処理部と、
前記セルの組み合せを含めた前記信号配線処理部による配置配線結果データを用いて、寄生抵抗及び寄生容量を抽出した後、電圧降下を解析する解析処理部と、
前記解析処理部の結果が前記電圧降下を示す場合、デカップリング容量セルを挿入するセル挿入部と、
を有することを特徴とする請求項２記載の回路設計装置。
【請求項４】
前記各ネットの配線容量は、前記信号配線処理部によって得られたネット毎の配置配線後に抽出された寄生抵抗及び寄生容量を含む寄生情報を対応付けたデータファイルから抽出されることを特徴とする請求項３記載の回路設計装置。
【請求項５】
コンピュータによって実行されるデカップリング容量効果最適化方法であって、
記憶部に格納された、回路を構成する複数のセル間のネット毎の高電位電源側及び低電位電源側の配線容量と、各入力ピンの該高電位電源側及び該低電位電源側の容量とを参照し、
前記構成における非動作パスに対して、セルの置換前の該セルの組み合せと、セルを置換する際の制約に従った置換後のセルの組み合せのうち、該非動作パスの信号値の遷移状態に応じた、各ネット及び各入力ピンの前記高電位電源側又は前記低電位電源側の容量を加算した総容量に基づいて、該総容量が最大となるセルに置換することによって、デカップリング容量効果を最適化するデカップリング容量効果最適化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デカップリング容量の効果を最適化した回路設計を行うことに関する。
【背景技術】
【０００２】
集積回路の設計において、電源配線に生じる電圧降下を抑制するために、デカップリング容量を持つセル（以下、デカップリング容量セルと言う）を挿入することによって、Dynamic Voltage Drop（ＤｖＤ）を低減することが行われている。
【０００３】
セルの活性度を動的に考慮し、活性化率をパラメータとして非動作トランジスタの容量としての影響を考慮することによって、容量をより適切な位置に配置して、必要総容量の最適化を行う技術、実際の動作時に各ノードが有する論理値の出現確率を求め、オフ状態となる可能性が高い場合にはオフリーク電流を効果的に減らす素子を選定し、オン状態となる可能性が高い場合にはゲートリーク電流を効果的に減らす素子を選定するように、出現確率を求めたノードを入力とする論理セルの種類を決定する技術等が提案されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−１８５３２３号公報
【特許文献２】特開２００６−２５３２１９号公報
【特許文献３】特開２００５−２３３８４０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
出力負荷容量（loading capacitance）はセル出力が非動作時に、デカップリング容量セルと同様の効果、すなわち、デカップリング容量（Decap）効果を持つことが知られている。また、出力負荷容量は、チップ内の全電源容量に占める割合が高いため、ＤｖＤを低減させる効果がある。しかしながら、出力負荷容量のデカップリング容量効果はセルによって異なっている。
【０００６】
上述した従来技術では、このような出力負荷容量の特性に基づいて、出力負荷容量を持つセルのデカップリング容量効果の大きさを考慮して、その効果を有効に得るための回路設計を行うことができていなかった。従って、更にＤｖＤの低減を図るには、結果として、多くの場合、デカップリング容量セルを挿入しなければならず、挿入するデカップリング容量セルが多ければ、チップ面積の増大、リーク電流の増大等を招くと言った問題があった。
【０００７】
よって、本発明の目的は、デカップリング容量効果を最適化した回路設計を行うことである。
【課題を解決するための手段】
【０００８】
開示の回路設計装置は、回路を構成する複数のセル間のネット毎の高電位電源側及び低電位電源側の配線容量と、各入力ピンの該高電位電源側及び該低電位電源側の容量とを記憶する記憶部と、前記記憶部に記憶された前記各ネットの配線容量と、前記各入力ピンの容量とを参照して、前記構成における非動作パスに対して、セルの置換前の該セルの組み合せと、セルを置換する際の制約に従った置換後のセルの組み合せのうち、該非動作パスの信号値の遷移状態に応じた、各ネット及び各入力ピンの前記高電位電源側又は前記低電位電源側の容量を加算した総容量に基づいて、該総容量が最大となるセルに置換することによって、デカップリング容量効果を最適化する最適化処理部と、を有する。
【０００９】
また、上記課題を解決するための手段として、デカップリング容量効果最適化方法、コンピュータに上記回路設計装置として機能させるためのプログラム、及び、そのプログラムを記憶した記憶媒体とすることもできる。
【発明の効果】
【００１０】
開示の技術では、デカップリング容量効果を最適化した回路設計を行うことができる。
【図面の簡単な説明】
【００１１】
【図１】本実施例に係るデカップリング容量最適化処理の概要を説明するための図である。
【図２】入力側容量とデカップリング容量効果との関係を説明するための図である。
【図３】回路設計装置のハードウェア構成を示す図である。
【図４】回路設計装置による処理概要を説明するためのフローチャート図である。
【図５】図４のデカップリング容量最適化処理（ステップＳ７）を説明するためのフローチャート図である。
【図６】非動作パスの回路構成の一例を示す図である。
【図７】図４の信号配線処理（ステップＳ２）によって生成される配置配線結果データの例を示す図である。
【図８】図４のＲＣ抽出処理（ステップＳ３）によって生成される寄生情報ファイルのデータ例を示す図である。
【図９】図５の配線容量抽出処理（ステップＳ７０）によって生成される配線容量リストのデータ例を示す図である。
【図１０】図５の入力ピン容量抽出処理（ステップＳ７１）の例を説明するための図である。
【図１１】図５の非動作パス検出処理（ステップＳ７２）の例を説明するための図である。
【図１２】図５の非動作パスのセル置換処理（ステップＳ７４）の例を説明するための図である。
【図１３】配置配線データの変更例を示す図である。
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態を図面に基づいて説明する。本実施例では、ブロック等の所定の機能単位で、セル毎に、高電位電源のＶＤＤ側及び低電位電源のＶＳＳ側の出力負荷容量のデカップリング容量効果の大小を判断し、ＶＤＤ側又はＶＳＳ側のいずれかデカップリング容量効果の大きい側の容量へ電流が流れるようにセルを置換することによって、ブロック毎に最大のデカップリング容量効果を得られるように回路設計を行う。
【００１３】
図１は、本実施例に係るデカップリング容量最適化処理の概要を説明するための図である。図１（Ａ）及び図１（Ｂ）において、１のブロック１０の回路構成例が示される。ブロック１０へ信号線４からhigh（Ｈ）の信号が入力されると、ブロック１０からhigh（Ｈ）の信号が出力される。
【００１４】
図１（Ａ）では、セル置換によるデカップリング容量最適化処理が未実施の回路構成例を示している。図１（Ｂ）では、デカップリング容量最適化処理の実施後のセルが置き換えられた回路構成例を示している。
【００１５】
図１（Ａ）に示すブロック１０はバッファセル１ａ、２ａ、及び３ａを有する。また、ブロック１０において、バッファセル１ａに対して、高電位電源であるＶＤＤ５ａ側に出力負荷容量のＣｌｏａｄ６ａ、及び、低電位電源であるＶＳＳ５ｂ側に出力負荷容量のＣｌｏａｄ６ｂが与えられている。Ｃｌｏａｄ６ａとＣｌｏａｄ６ｂでは、ＶＤＤ５ａ側であるＣｌｏａｄ６ａの方がＣｌｏａｄ６ｂより出力負荷容量値が大きい。
【００１６】
バッファセル２ａに対して、ＶＤＤ５ａ側に出力負荷容量のＣｌｏａｄ７ａ、及び、ＶＳＳ５ｂ側に出力負荷容量のＣｌｏａｄ７ｂが与えられている。Ｃｌｏａｄ７ａとＣｌｏａｄ７ｂでは、ＶＤＤ５ａ側であるＣｌｏａｄ７ａの方がＣｌｏａｄ７ｂより出力負荷容量値が大きい。
【００１７】
バッファセル３ａに対して、ＶＤＤ５ａ側に出力負荷容量のＣｌｏａｄ８ａ、及び、ＶＳＳ５ｂ側に出力負荷容量のＣｌｏａｄ８ｂが与えられている。Ｃｌｏａｄ８ａとＣｌｏａｄ８ｂでは、ＶＳＳ５ｂ側であるＣｌｏａｄ８ｂの方がＣｌｏａｄ８ａより出力負荷容量値が大きい。
【００１８】
図１（Ａ）では、各バッファセル１ａ（１段目）、２ａ（２段目）、及び３ａ（３段目）はhigh（Ｈ）で信号を入力して、high（Ｈ）で信号を出力する。よって、バッファセル１ａへの電流ｉ１は、ＶＤＤ５ａからバッファセル１ａへ供給され、出力負荷容量値の小さいＣｌｏａｄ６ｂを介してＶＳＳ５ｂへと流れる。バッファセル２ａへの電流ｉ２は、ＶＤＤ５ａからバッファセル２ａへ供給され、出力負荷容量値の小さいＣｌｏａｄ７ｂを介してＶＳＳ５ｂへと流れる。そして、バッファセル３ａへの電流ｉ３は、ＶＤＤ５ａからバッファセル３ａへ供給され、出力負荷容量値の大きいＣｌｏａｄ８ｂを介してＶＳＳ５ｂへと流れる。
【００１９】
従って、１段目及び２段目ではデカップリング容量効果は小さく、デカップリング容量効果が大きいのは３段目のみである。このブロック１０に関して、デカップリング容量効果を最大限に得られていないことが示される。
【００２０】
本実施例では、ブロック１０への信号の状態を変えることなく、出力負荷容量によるデカップリング容量効果が大となるようにセルを置換する。図１（Ｂ）に示すブロック１０は、本実施例に係るセル置換によって、図１（Ａ）におけるバッファセル１ａがインバータセル１ａ−２へ置き換えられ、また、バッファセル３ａがインバータセル３ａ−２へ置き換えられる。
【００２１】
このようなセルの置き換えによって、インバータセル１ａ−２へ入力されたhigh（Ｈ）の信号はlow（Ｌ）で出力される。よって、インバータセル１ａ−２への電流ｉ１−２は、ＶＤＤ５ａ側の出力負荷容量値の大きいＣｌｏａｄ６ａからインバータセル１ａ−２へ供給され、ＶＳＳ５ｂへと流れる。
【００２２】
インバータセル１ａ−２によって反転されたlow（Ｌ）の信号がバッファセル２ａに入力され、バッファセル２ａはlow（Ｌ）で信号を出力する。よって、バッファセル２ａへの電流ｉ２−２は、ＶＤＤ５ａ側の出力負荷容量値の大きいＣｌｏａｄ７ａからバッファセル２ａへ供給され、ＶＳＳ５ｂへと流れる。
【００２３】
バッファセル２ａからlow（Ｌ）の信号を入力されたインバータセル３ａ−２は、high（Ｈ）の信号を出力する。インバータセル３ａ−２への電流ｉ３に変化はなく、ＶＤＤ５ａからインバータセル３ａ−２へ供給され、出力負荷容量値の大きいＣｌｏａｄ８ｂを介してＶＳＳ５ｂへと流れる。
【００２４】
１段目、２段目、３段目の全てにおいて、デカップリング容量効果が大となっている。また、ブロック１０からの出力信号の状態に変化はない。また、パス上で同様の遅延となるようにインバータセルが選択される。
【００２５】
更に、セル出力が非動作となる、バッファセル、インバータセル等の非スイッチングセルの場合、セルには図２に示すような容量とデカップリング容量効果との関係がある。図２は、入力側容量とデカップリング容量効果との関係を説明するための図である。図２に示すように、非スイッチングセル９１には、ＶＤＤ５ａ側の容量Ｃｌｏａｄ９ａとＶＳＳ５ｂ側の容量Ｃｌｏａｄ９ｂとがある。また、非スイッチングセル９２には、ＶＤＤ５ａ側の容量Ｃｌｏａｄ１０ａとＶＳＳ５ｂ側の容量Ｃｌｏａｄ１０ｂとがある。
【００２６】
図２において、入力がlow固定の非スイッチングセル９１では、電流ｉ４はＶＤＤ５ａから非スイッチングセル９１へ供給され、ＶＳＳ５ｂ側のＣｌｏａｄ９ｂへと流れる。従って、非スイッチングセル９１の入力側の容量はＣｌｏａｄ９ｂとなる。この場合、Ｃｌｏａｄ９ａではなく、Ｃｌｏａｄ９ｂによるデカップリング容量効果を得る。
【００２７】
入力がhigh固定の非スイッチングセル９２では、電流ｉ５はＶＤＤ５ａ側のＣｌｏａｄ１０ａから非スイッチングセル９２へ供給され、ＶＳＳ５ｂへと流れる。従って、非スイッチングセル９２の入力側の容量はＣｌｏａｄ１０ａとなる。この場合、Ｃｌｏａｄ１０ｂではなく、Ｃｌｏａｄ１０ａによるデカップリング容量効果を得る。
【００２８】
本実施例では、非動作パスにおいて、セル間の配線容量に係るデカップリング容量効果のみならず、各セルの入力側の容量に係るデカップリング容量効果をも考慮することによって、非動作パス内の全出力負荷容量に係るデカップリング容量効果を適切に最大限に利用したデカップリング容量最適化処理を行う。上述した入力側の容量は、セルの入力ピンの容量として与えられる。
【００２９】
本実施例に係るデカップリング容量最適化処理を行う回路設計装置は、図３に示すようなハードウェア構成を有する。図３は、回路設計装置のハードウェア構成を示す図である。図３において、回路設計装置１００は、コンピュータによって制御される端末であって、ＣＰＵ（Central Processing Unit）１１と、メモリユニット１２と、表示ユニット１３と、出力ユニット１４と、入力ユニット１５と、通信ユニット１６と、記憶装置１７と、ドライブ１８とを有し、システムバスＢに接続される。
【００３０】
ＣＰＵ１１は、メモリユニット１２に格納されたプログラムに従って回路設計装置１００を制御する。メモリユニット１２には、ＲＡＭ（Random Access Memory）及びＲＯＭ（Read-Only Memory）等が用いられ、ＣＰＵ１１にて実行されるプログラム、ＣＰＵ１１での処理に必要なデータ、ＣＰＵ１１での処理にて得られたデータ等を格納する。また、メモリユニット１２の一部の領域が、ＣＰＵ１１での処理に利用されるワークエリアとして割り付けられている。
【００３１】
表示ユニット１３は、ＣＰＵ１１の制御のもとに必要な各種情報を表示する。出力ユニット１４は、プリンタ等を有し、利用者からの指示に応じて各種情報を出力するために用いられる。入力ユニット１５は、マウス、キーボード等を有し、利用者が回路設計装置１００が処理を行なうための必要な各種情報を入力するために用いられる。通信ユニット１６は、例えばインターネット、ＬＡＮ（Local Area Network）等に接続し、外部装置との間の通信制御をするための装置である。記憶装置１７には、例えば、ハードディスクユニットが用いられ、各種処理を実行するプログラム等のデータを格納する。
【００３２】
回路設計装置１００によって行われる処理を実現するプログラムは、例えば、ＣＤ−ＲＯＭ（Compact Disc Read-Only Memory）等の記憶媒体１９によって回路設計装置１００に提供される。即ち、プログラムが保存された記憶媒体１９がドライブ１８にセットされると、ドライブ１８が記憶媒体１９からプログラムを読み出し、その読み出されたプログラムがシステムバスＢを介して記憶装置１７にインストールされる。そして、プログラムが起動されると、記憶装置１７にインストールされたプログラムに従ってＣＰＵ１１がその処理を開始する。尚、プログラムを格納する媒体としてＣＤ−ＲＯＭに限定するものではなく、コンピュータが読み取り可能な媒体であればよい。コンピュータ読取可能な記憶媒体として、ＣＤ−ＲＯＭの他に、ＤＶＤディスク、ＵＳＢメモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリであっても良い。
【００３３】
また、回路設計装置１００によって行われる処理を実現するプログラムが、通信ユニット１６を介して外部装置から提供されてもよい。或いは、外部装置へ該プログラムを提供し、後述される各処理は外部装置で実現されるように構成してもよい。通信ユニット１６による通信は無線又は有線に限定されるものではない。
【００３４】
記憶部５０は、メモリユニット１２及び／又は記憶装置１７等を有し、更に、通信ユニット１６又はドライブ１８を介してアクセス可能な外部記憶装置を含んでもよい。
【００３５】
図４は、回路設計装置による処理概要を説明するためのフローチャート図である。図４に示す処理は、回路設計装置１００のＣＰＵ１１が対応するプログラムを実行することによって成される処理によって実現する。
【００３６】
図４中、処理Ａの部分は、本実施例に係るセル置換によるデカップリング容量最適化処理が行われない処理フローを示している。図１（Ａ）に相当する。処理Ｂの部分は、ＤｖＤ解析処理の前に、本実施例に係るセル置換によるデカップリング容量最適化処理が行われる部分を示している。図１（Ｂ）に相当する。
【００３７】
図４を参照し、先ず、処理Ａについて説明する。処理Ａに関して、回路設計装置１００は、主に、初期配置処理Ｓ１と、信号配線処理Ｓ２と、ＲＣ抽出処理Ｓ３と、ＤｖＤ解析処理Ｓ４と、ＤｖＤ解析結果の判断処理Ｓ４−２と、ＥＣＯ（Engineering Change Order）処理Ｓ５とを含む。各処理Ｓ１からＳ５は、対応するプログラムがＣＰＵ１１によって実行されることにより実現される。
【００３８】
処理Ａにおいて、ＣＰＵ１１は、回路データ５１及びセルライブラリ５２を用いて、セル配置領域に初期配置処理を行うことによって、必要箇所にデカップリング容量セルを挿入する（ステップＳ１）。初期配置処理によって、レイアウトデータ５３が記憶部５０に格納される。そして、ＣＰＵ１１は、レイアウトデータ５３に基づいて、配置したセルへ信号線を配線する信号配線処理を行うことによって、信号配線処理によって得られた配置配線結果を含む配置配線結果データ５４を記憶部５０に格納する（ステップＳ２）。
【００３９】
次に、ＣＰＵ１１は、配置配線結果データ５４を参照することによってＲＣ抽出処理を行うことによって、抽出されたセル間の接続情報（ネット）毎の配線のＲＣ（寄生抵抗及び寄生容量）を含む寄生情報ファイル５５を記憶部５０に格納する（ステップＳ３）。
【００４０】
そして、ＣＰＵ１１は、ＤｖＤ解析処理を行うことによって（ステップＳ４）、ＤｖＤ解析処理によるＤｖＤ解析結果がＩＲドロップの発生を示すか（ＮＧ）否か（ＯＫ）を判断する（ステップＳ４−２）。ＤｖＤ解析結果がＮＧの場合、ＣＰＵ１１は、デカップリング容量ＥＣＯファイル５６を参照して、ＤｖＤ解析によって発見されたＩＲドロップの発生等のエラーを修正するためのＥＣＯ処理を行うことによって、デカップリング容量セルを挿入する（ステップＳ５）。一方、ＤｖＤ解析結果がＯＫの場合、ＣＰＵ１１は、処理Ａを終了する。
【００４１】
次に、処理Ｂについて説明する。本実施例に係るセル置換によるデカップリング容量最適化処理に係る処理Ｂにおいて、ＣＰＵ１１は、寄生情報ファイル５５と、タイミングライブラリ６１と、非動作パスリスト６２とを参照することによって、後で詳述されるデカップリング容量最適化処理を行うことによって、ブロック毎に、デカップリング容量効果を最大限に得られるように、また、そのブロック単位で、ブロックからの出力値、非動作パスに係る遅延及びタイミング等に変化が無いようにセルを選択して置換する（ステップＳ７）。配置配線結果データ５４は、デカップリング容量最適化処理の実行によって更新される。
【００４２】
ステップＳ７でのデカップリング容量最適化処理の後、更新された配置配線結果データ５４は、信号配線処理（ステップＳ２）に与えられる。信号配線処理（ステップＳ２）が再度行われ、配置配線が検証される。以下、上述した同様の処理が行われることによって、ＲＣ抽出処理（ステップＳ３）及びＤｖＤ解析処理（ステップＳ４）では、デカップリング容量最適化処理（ステップＳ７）された配置配線結果データ５４を用いて行われる。
【００４３】
回路データ５１は、ブロック毎に機能を記述したデータファイルである。セルライブラリ５２は、セル毎にデバイス特性を含む情報を対応づけたライブラリである。レイアウトデータ５３は、セルが配置された位置情報を含むデータファイルである。
【００４４】
配置配線結果データ５４は、セルの配置、セル間の信号線の配線、配線によって得られたセル間の接続情報（ネット）毎の寄生抵抗及び寄生容量等の信号線特性を含む情報を対応付けた、ＤＥＦ（Design Exchange Format）等の形式によるデータファイルである。
【００４５】
寄生情報ファイル５５は、接続情報（ネット）毎に、配置配線後に抽出された寄生抵抗及び寄生容量を含む寄生情報を対応付けたデータファイルである。
【００４６】
デカップリング容量ＥＣＯファイル５６は、デカップリング容量セルの挿入位置、挿入するためのデカップリング容量セルの容量値等の条件などを含むデータファイルである。
【００４７】
タイミングライブラリ６１は、liberty形式等によるライブラリであり、各セルのタイミングは非線形遅延モデル(ＮＬＤＭ：Non-Linear Delay Model)で定義される。タイミングライブラリ６１には、各セルの入力ピンの高電位電源側及び低電位電源側の容量を示す情報が含まれている。非動作パスリスト６２は、ブロック毎に抽出された非動作パス毎の経路情報を含むデータファイルである。
【００４８】
以下、図４のデカップリング容量最適化処理（ステップＳ７）について詳述する。図５は、図４のデカップリング容量最適化処理（ステップＳ７）を説明するためのフローチャート図である。図５に示すデカップリング容量最適化処理は、ネット毎の対ＶＤＤ及び対ＶＳＳに係る配線容量抽出処理Ｓ７０と、入力ピン容量抽出処理Ｓ７１と、非動作パス検出処理Ｓ７２と、非動作パスの総容量算出処理Ｓ７３と、非動作パスのセル置換処理Ｓ７４と、セル置換後パスの総容量算出処理Ｓ７５と、最大容量のパス検出処理Ｓ７６と、ＥＣＯ処理Ｓ７７と、を有する。
【００４９】
デカップリング容量最適化処理において、ＣＰＵ１１は、寄生情報ファイル５５を参照して、ネット毎の対ＶＤＤ及び対ＶＳＳに係る配線容量抽出処理を行う（ステップＳ７０）。この配線容量抽出処理によって、寄生情報ファイル５５から抽出された各ネットの対ＶＤＤ及び対ＶＳＳの配線容量をネット名と対応づけた情報を含む配線容量リスト５５−２が、記憶部５０に格納される。
【００５０】
ＣＰＵ１１は、タイミングライブラリ６１を参照して、各セルの入力ピンの容量を抽出する入力ピン容量抽出処理を行う（ステップＳ７１）。この入力ピン容量抽出処理によって、タイミングライブラリ６１から抽出された各セルの入力ピンの容量とセル名（後述されるインスタンスセル名）と対応付けた情報を含む入力ピン容量リスト６１−２が、記憶部５０に格納される。
【００５１】
また、ＣＰＵ１１は、タイミング解析ツールを用いて、非動作パスを検出する非動作パス検出処理を行う（ステップＳ７２）。この非動作パス検出処理によって検出された非動作パスが２以上の経路を有する場合、スタートポイントからエンドポイントまでの一の経路を単一パスとする。検出された非動作パスに関して、単一パス毎に経路情報と単一パス識別情報とを対応づけた非動作パスリスト６２が、記憶部５０に格納される。
【００５２】
上述において、ステップＳ７０からＳ７２の処理順番を特定するものではない。ステップＳ７０からＳ７２の処理の終了後、ＣＰＵ１１は、非動作パスリスト６２を参照し、配線容量リスト５５−２及び入力ピン容量リスト６１−２を用いて、非動作パスの総容量算出処理を行う（ステップＳ７３）。この非動作パスの総容量算出処理によって、セル置換前の非動作パスの総容量が算出される。算出された非動作パスの総容量を示すセル置換前パスの総容量データ６３が、記憶部５０に格納される。非動作パスの総容量は、各単一パスの総容量を合計することによって得られる。
【００５３】
また、ＣＰＵ１１は、非動作パスリスト６２を参照して、非動作パスにおける各単一パスに対して、セル置換前とスタートポイントとエンドポイントの論理が変えることなく置換可能なセルの組み合せを取得する非動作パスのセル置換処理を行う（ステップＳ７４）。この非動作パスのセル置換処理によって取得した置換可能なセルの各組み合せを示すセル置換パターンを一覧で示すセル置換パターンリスト６４が、記憶部５０に格納される。
【００５４】
ステップＳ７４での非動作パスのセル置換処理を行った後、ＣＰＵ１１は、セル置換パターンリスト６４を参照して、セル置換パターンでの非動作パスの総容量を、配線容量リスト５５−２を用いて算出するセル置換後パスの総容量算出処理を行う（ステップＳ７５）。このセル置換後パスの総容量算出処理によって算出された各セル置換パターンの総容量がパターン識別情報と対応付けられたセル置換後パスの総容量データ６５が、記憶部５０に格納される。
【００５５】
上述において、ステップＳ７５の後に、ステップＳ７３での非動作パスの総容量算出処理を行ってもよい。ステップＳ７３からＳ７５の処理の終了後、ＣＰＵ１１は、セル置換前パスの総容量データ６３とセル置換後パスの総容量データ６５とを用いて、セル置換前セルの組み合せによる非動作パスの総容量と、セル置換パターン毎のセルの組み合せによる非動作パスの総容量のうち、最大容量となるセルの組み合せによる非動作パスを検出する最大容量のパス検出処理を行う（ステップＳ７６）。この最大容量のパス検出処理によって検出された最大容量となるセルの組み合せによる非動作パスのセル置換情報を含むＥＣＯファイル６６が、記憶部５０に格納される。セル置換情報は、少なくとも、置換するセルの位置を示す位置情報と、置換後のセルに係るセル情報とを含む。
【００５６】
その後、ＣＰＵ１１は、配置配線（Ｐ＆Ｒ）ツールを用いて、ＥＣＯファイル６６に示されるセル置換情報に基づくＥＣＯ処理を行う（ステップＳ７７）。このＥＣＯ処理によって、記憶部５０に格納されているレイアウトデータ５３が、最大容量となるセルの組み合せによって変更される。その後、図４の処理Ａ内のステップＳ２における信号配線処理へと進む。
【００５７】
以下に、図６に例示される非動作パスの回路構成を用いて、本実施例に係るデカップリング容量最適化処理を詳述する。図６は、非動作パスの回路構成の一例を示す図である。図６に例示される非動作パス３０の回路構成において、ＩＮ＿Ａは入力ポートを示し、Ｕ１からＵ６はインスタンスセル名を示し、ｎｅｔ１からｎｅｔ５はネット名を示している。
【００５８】
図６に例示される非動作パス３０に関して、図４の信号配線処理（ステップＳ２）によって、図７に示されるような配置配線結果データ５４ａが生成される。図７は、図４の信号配線処理（ステップＳ２）によって生成される配置配線結果データの例を示す図である。図７に例示される配置配線結果データ５４ａは、ＤＥＦ形式のデータファイルである。配置配線結果データ５４ａは、非動作パス３０に係る、配置情報５４１、配線情報５４３等を含む。
【００５９】
配置情報５４１では、各インスタンスセル名「Ｕ１」、「Ｕ２」、「Ｕ３」、「Ｕ４」、「Ｕ５」、及び「Ｕ６」に対応付けて、セル情報と配置情報とが示される。インスタンスセル「Ｕ１」は、バッファセル「ＢＵＦＸ１」とその配置情報とを示し、インスタンスセル「Ｕ２」は、インバータセル「ＩＮＶＸ１」とその配置情報とを示し、インスタンスセル「Ｕ３」は、インバータセル「ＩＮＶＸ１」とその配置情報とを示し、インスタンスセル「Ｕ４」は、ＤＦＦセル「ＤＦＦＸ１」とその配置情報とを示し、インスタンスセル「Ｕ５」は、バッファセル「ＢＵＦＸ１」とその配置情報とを示し、そして、インスタンスセル「Ｕ６」は、バッファセル「ＢＵＦＸ１」とその配置情報とを示す。
【００６０】
配線情報５４３では、各ネット名「ｎｅｔ１」、「ｎｅｔ２」、「ｎｅｔ３」、「ｎｅｔ４」、及び「ｎｅｔ５」に対応付けて、セル間の接続関係を示す接続関係情報と、配線情報とが示される。ネット「ｎｅｔ１」は、入力ピン「ＰＩＮ」の入力ポート「ＩＮ＿Ａ」とインスタンスセル「Ｕ１」のピン「Ａ」との接続を示し、ネット「ｎｅｔ２」は、インスタンスセル「Ｕ１」のピン「Ｘ」とインスタンスセル「Ｕ２」のピン「Ａ」との接続及びインスタンスセル「Ｕ５」とピン「Ａ」との接続を示し、ネット「ｎｅｔ３」は、インスタンスセル「Ｕ２」のピン「Ｘ」とインスタンスセル「Ｕ３」のピン「A」との接続を示し、ネット「ｎｅｔ４」は、インスタンスセル「Ｕ３」のピン「Ｘ」とインスタンスセル「Ｕ４」のピン「ＣＬＫ」との接続を示し、そして、ネット「ｎｅｔ５」は、インスタンスセル「Ｕ５」のピン「Ｘ」とインスタンスセル「Ｕ６」のピン「ＣＬＫ」との接続を示している。
【００６１】
図６に例示される非動作パス３０に関して、図４のＲＣ抽出処理（ステップＳ３）によって寄生情報ファイル５５が生成される。図８は、図４のＲＣ抽出処理（ステップＳ３）によって生成される寄生情報ファイルのデータ例を示す図である。寄生情報ファイル５５ａは、例えば、ＲＣ−Ｅｘｔｒａｃｔｉｏｎツール等を用いることにより抽出された対ＶＤＤ及び対ＶＳＳ配線容量に係るデータファイルである。図８に示す寄生情報ファイル５５ａでは、図６のネット「ｎｅｔ２」に対する容量情報の例を示す。
【００６２】
寄生情報ファイル５５ａにおいて、記述５５ｂはネット「ｎｅｔ２」の総容量「１．１ｅ−１４」を示し、記述５５ｃはネット「ｎｅｔ２」に繋がるインスタンスセル名及びピン名を示し、そして、記述５５ｄはネット「ｎｅｔ２」の容量Ｃ１からＣ６で各インスタンスセルの対ＶＤＤ及び対ＶＳＳの各々の配線容量について示している。
【００６３】
記述５５ｄにおいて、容量Ｃ１は、インスタンスセル「Ｕ２」のピン「Ａ」に関する対ＶＤＤ配線容量が「１．０ｅ−１５」であることを示し、容量Ｃ２は、インスタンスセル「Ｕ２」のピン「Ａ」に関する対ＶＳＳ配線容量が「２．０ｅ−１５」であることを示す。
【００６４】
同様に、容量Ｃ３及びＣ４は、インスタンスセル「Ｕ５」のピン「Ａ」に関して、対ＶＤＤ配線容量が「１．０ｅ−１５」、及び、対ＶＳＳ配線容量が「３．０ｅ−１５」であることを示す。
【００６５】
また、容量Ｃ５及びＣ６は、インスタンスセル「Ｕ１」のピン「Ｘ」に関して、対ＶＤＤ配線容量が「２．０ｅ−１５」、及び、対ＶＳＳ配線容量が「２．０ｅ−１５」であることを示す。
【００６６】
このように、図６に例示される非動作パス３０に関して、寄生情報ファイル５５ａによって、ネット毎に各インスタンスセルの対ＶＤＤ及び対ＶＳＳ配線容量が示される。そして、ネット毎の寄生情報ファイル５５ａを用いることにより、図５のネット毎の対ＶＤＤ及び対ＶＳＳに係る配線容量抽出処理（ステップＳ７０）によって、図９に示されるような配線容量リスト５５ａ−２が生成される。
【００６７】
図９は、図５の配線容量抽出処理（ステップＳ７０）によって生成される配線容量リストのデータ例を示す図である。配線容量リスト５５ａ−２は、図６の非動作パス３０における各ネット「ｎｅｔ１」から「ｎｅｔ５」の対ＶＤＤ及び対ＶＳＳ配線容量の各々の総和を示すデータファイルである。
【００６８】
図９において、配線容量リスト５５ａ−２は、ネット「ｎｅｔ２」に関して、対ＶＤＤ配線容量の総和は「４．０ｅ−１５」であり、対ＶＳＳ配線容量の総和は「７．０ｅ−１５」であることを示している。また、ネット「ｎｅｔ３」に関して、対ＶＤＤ配線容量の総和は「５．０ｅ−１５」であり、対ＶＳＳ配線容量の総和は「４．０ｅ−１５」であることを示している。
【００６９】
このような対ＶＤＤ及び対ＶＳＳ配線容量の各々の総和は、以下のようにして算出される。ここでは、図８に示す寄生情報ファイル５５ａに基づいてネット「ｎｅｔ２」に関して説明するが、他ネットについても同様に算出される。
【００７０】
寄生情報ファイル５５ａを参照することによって、ネット「ｎｅｔ２」の対ＶＤＤ配線容量Ｃｎｅｔ２（ＶＤＤ）は、各容量Ｃ１、Ｃ３、及びＣ５の合計することによって得られる。
【００７１】
Ｃｎｅｔ２（ＶＤＤ）＝Ｃ１＋Ｃ３＋Ｃ５
＝１．０ｅ−１５＋１．０ｅ−１５＋２．０ｅ−１５
＝４．０ｅ−１５［Ｆ］
同様に、ネット「ｎｅｔ２」の対ＶＳＳ配線容量Ｃｎｅｔ２（ＶＳＳ）は、各容量Ｃ２、Ｃ４、及びＣ６の合計することによって得られる。
【００７２】
Ｃｎｅｔ２（ＶＳＳ）＝Ｃ２＋Ｃ４＋Ｃ６
＝２．０ｅ−１５＋３．０ｅ−１５＋２．０ｅ−１５
＝７．０ｅ−１５［Ｆ］
このようにして得られたネット「ｎｅｔ２」の対ＶＤＤ配線容量Ｃｎｅｔ２（ＶＤＤ）及び対ＶＳＳ配線容量Ｃｎｅｔ２（ＶＳＳ）が、ネットに対応付けられて配線容量リスト５５ａ−２に格納される。
【００７３】
図５のタイミングライブラリ６１を用いた入力ピン容量抽出処理（ステップＳ７１）によって、セル毎の入力ピン容量を示す入力ピン容量リスト６１−２が生成される。図１０は、図５の入力ピン容量抽出処理（ステップＳ７１）の例を説明するための図である。図１０に例示されるタイミングライブラリ６１ａでは、バッファセル「ＢＵＦＸ１」の入力ピン「Ａ」の容量が示されている。rise_capacitanceによって入力ピン「Ａ」がhigh時のピン容量「１．０ｅ−１６」を示し、また、fall_capacitanceによって入力ピン「Ａ」がlow時のピン容量「１．１ｅ−１６」を示している。
【００７４】
このようなタイミングライブラリ６１ａを用いて生成された入力ピン容量リスト６１ａ−２では、バッファセル「ＢＵＦＸ１」の入力ピン「Ａ」に対応させて、対ＶＤＤ配線容量に入力ピン「Ａ」がhigh時のピン容量「１．０ｅ−１６」が示され、対ＶＳＳ配線容量に入力ピン「Ａ」がlow時のピン容量「１．１ｅ−１６」が示される。
【００７５】
他セルについても同様の抽出が行われることにより、入力ピン容量リスト６１ａ−２が生成される。
【００７６】
次に、図６に例示される非動作パス３０に関する、図５の非動作パス検出処理（ステップＳ７２）について詳述する。図１１は、図５の非動作パス検出処理（ステップＳ７２）の例を説明するための図である。図１１（Ａ）では、図６に例示される非動作パス３０にいて、入力ポート「ＩＮ＿Ａ」をlow固定とした場合の固定値伝搬による信号値の遷移状態を示している。
【００７７】
経路は、タイミング解析ツール等を用いて、ツールコマンド又はツールスクリプトの組み合せにより、非動作パス毎のピン名、固定値情報等を抽出することにより特定できる。この例では、単一パスＰ１と単一パスＰ２とが特定される。
【００７８】
図１１（Ｂ）では、特定された単一パス毎に経路情報が対応付けられた非動作パスリスト６２ａの例が示される。図１１（Ｂ）において、単一パスＰ１は、図１１（Ａ）で示されるように、「IN_A(L) -U1/A(L) -U1/X(L) -U2/A(L) -U2/X(H) -U3/A(H) -U3/X(L) -U4/CLK(L)」で伝搬する経路であることが示されている。また、単一パスＰ２は、「IN_A(L) -U1/A(L) -U1/X(L) -U5/A(L) -U5/X(L) -U6/CLK(L)」で伝搬する経路であることが示されている。（  ）内は、入力ポート「ＩＮ＿Ａ」をlow固定とした場合の各インスタンスセルの入力ピン及び出力ピンでの信号値を示している。
【００７９】
この例に基づいて、図５の非動作パスの総容量算出処理（ステップＳ７３）について説明する。図９の配線容量リスト５５ａ−２と、図１０の入力ピン容量リスト６１ａ−２とを参照することにより、図６の非動作パス３０の総容量値を算出する。総容量値は、非動作パスの信号値の遷移状態に応じた、対ＶＤＤ及又は対ＶＳＳ配線容量と、入力ピンの対ＶＤＤ及又は対ＶＳＳ容量の合計値である。
【００８０】
先ず、各単一パスＰ１及びＰ２の容量値Ｃ１及びＣ２を算出する。ネット「ｎｅｔ１」、「ｎｅｔ２」、「ｎｅｔ３」、「ｎｅｔ４」、及び「ｎｅｔ５」の配線容量をＣｎｅｔ１、Ｃｎｅｔ２、Ｃｎｅｔ３、Ｃｎｅｔ４、及びＣｎｅｔ５で示す。また、入力がlowであるインスタンスセル「Ｕ１」、「Ｕ２」、「Ｕ４」、「Ｕ５」、及び「Ｕ６」の入力ピン容量をＣｐｉｎ＿ｕ１（ｖｓｓ）、Ｃｐｉｎ＿ｕ２（ｖｓｓ）、Ｃｐｉｎ＿ｕ４（ｖｓｓ）、Ｃｐｉｎ＿ｕ５（ｖｓｓ）、及びＣｐｉｎ＿ｕ６（ｖｓｓ）で示す。入力がhighであるインスタンスセル「Ｕ３」の入力ピン容量をＣｐｉｎ＿ｕ３（ｖｄｄ）で示す。
【００８１】
単一パスＰ１の容量Ｃ１ = Cnet1 + Cnet2 + Cnet3 + Cnet4 + Cpin_u1(vss) + 
Cpin_u2(vss) + Cpin_u3(vdd) + Cpin_u4(vss)
単一パスＰ2の容量Ｃ２ = Cnet1 + Cnet2 + Cnet5 + Cpin_u1(vss) + 
Cpin_u5(vss) + Cpin_u6(vss)
【００８２】
図６の非動作パス３０の総容量は、下記数１式で表されるように、各単一パスの容量値を排他的に（重複する容量を除いて）加算することによって得られる。
【００８３】
【数１】
2013069080.tif 000003
【００８４】
このようにして算出された非動作パス３０の総容量は、セル置換前パスの総容量データ６３に格納される。複数の非動作パスがある場合は、各非動作パスを特定する非動作パス名に総容量が対応付けられて総容量データ６３に格納される。
【００８５】
次に、図６に例示される非動作パス３０における、図５の非動作パスのセル置換処理（ステップＳ７４）について詳述する。図１２は、図５の非動作パスのセル置換処理（ステップＳ７４）の例を説明するための図である。
【００８６】
入力ピン容量リスト６１ａ−２と非動作パスリスト６２とを参照し、非動作パス３０に対して検出された、スタートポイントとエンドポイントの論理が変わらない、セル置換の組み合せが、図１２（Ａ）、図１２（Ｂ）、及び図１２（Ｃ）で示されている。置換するセルは、セルライブラリ５２から選択される。
【００８７】
図１２（Ａ）では、セル置換パターン１が示されている。インスタンスセル「Ｕ２」及び「Ｕ３」のインバータセルをバッファセルに置き換える例を示している。図１２（Ｂ）では、セル置換パターン２が示されている。インスタンスセル「Ｕ１」及び「Ｕ５」のバッファセルをインバータセルに、そして、インスタンスセル「Ｕ２」のインバータセルをバッファセルに置き換える例を示している。図１２（Ｃ）では、セル置換パターン３が示されている。インスタンスセル「Ｕ１」及び「Ｕ５」のバッファセルをインバータセルに、そして、インスタンスセル「Ｕ３」のインバータセルをバッファセルに置き換える例を示している。
【００８８】
セル置換の制約は、
・置換するセル（置換後のセル）によって、スタートポイントとエンドポイントの理論が変わらないこと、
・置換するセル（置換後のセル）は、置換されるセル（置換前のセル）と同様のドライブ能力を持ち、スタートポイントからエンドポイントまでの到達時間に影響を与えないこと、消費電力が同様であること
である。このように検出されたセル置換パターン１、２、及び３が、セル置換後パスの総容量データ６５に格納される。
【００８９】
図９の配線容量リスト５５ａ−２と、図１２のセル置換パターン１、２、及び３に係るセル置換後パスの総容量データ６５とを参照して行われる、セル置換後パスの総容量算出処理（ステップＳ７５）について説明する。
【００９０】
図５の非動作パスの総容量算出処理（ステップＳ７３）と同様に、セル置換後の非動作パス３０の総容量値は、対ＶＤＤ及び対ＶＳＳ配線容量と、入力ピン容量の合計値で求めることができる。
【００９１】
先ず、図１２のセル置換パターン１に関して、単一パス毎の容量値を算出し、各単一パスの容量値を排他的に（重複する容量を除いて）加算することによって、セル置換パターン１での非動作パス３０の総容量値を求める。同様に、セル置換パターン２及び３についても、各々のパターンにおける非動作パス３０の総容量値を求める。求めたパターン毎の総容量値がセル置換後パスの総容量データ６５に格納される。
【００９２】
そして、非動作パスの総容量算出処理（ステップＳ７３）によって得られたセル置換前パスの総容量データ６３と、セル置換後パスの総容量算出処理（ステップＳ７５）によって得られたセル置換後パスの総容量データ６５とを用いて、図５の最大容量のパス検出処理（ステップＳ７６）が行われる。
【００９３】
最大容量のパス検出処理（ステップＳ７６）では、セル置換前パスの総容量データ６３とセル置換後パスの総容量データ６５とを参照することによって、非動作パス３０の総容量が最大となるセルの組み合せを特定する。この最大容量のパス検出処理（ステップＳ７６）によって、例えば、図１２（Ｃ）に示すセル置換パターン３が特定された場合、セル置換パターン３のセルの組み合せとなるようにレイアウトデータ５３が変更される。
【００９４】
変更されたレイアウトデータ５３を用いて、図４の信号配線処理（ステップＳ２）が行われることにより、図７の配置配線結果データ５４ａは、図１３に示すように変更される。図１３は、配置配線データの変更例を示す図である。図１３に示す配置配線データ５４ｂにおいて、図１２（Ｃ）示すセル置換パターン３が選択されたことにより、変更セル５４ｅ、５４ｆ、及び５４ｇで示されるように、配置情報５４１内のインスタンスセル「Ｕ１」のバッファセル「ＢＵＦＸ１」がインバータセル「ＩＮＶＸ１」に置き換えられ、インスタンスセル「Ｕ３」のインバータセル「ＩＮＶＸ１」がバッファセル「ＢＵＦＸ１」に置き換えられ、また、インスタンスセル「Ｕ５」のバッファセル「ＢＵＦＸ１」がインバータセル「ＩＮＶＸ１」に置き換えられる。
【００９５】
上述したように、本実施例では、ネットの配線容量及び入力ピンの容量をＶＤＤ側とＶＳＳ側とで夫々求めておくことで、非動作パス内の出力負荷容量（loading capacitance）が最大となる、即ち、デカップリング容量効果が最大となるセル置換パターンを選択することができる。
【００９６】
従って、設計した集積回路が規定の機能及び性能を満たしているかを検証するサインオフ解析後の前工程への後戻りを防止することができる。また、非動作パスの出力負荷容量をデカップリング容量効果が最大となるように利用するため、挿入されるデカップリング容量セルの数を削減でき、集積回路の面積の増大及びリーク電流の増大を抑制することができる。
【００９７】
本発明は、具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【００９８】
以上の実施例を含む実施形態に関し、更に以下の付記を開示する。
（付記１）
回路を構成する複数のセル間のネット毎の高電位電源側及び低電位電源側の配線容量と、各入力ピンの該高電位電源側及び該低電位電源側の容量とを記憶する記憶部と、
前記記憶部に記憶された前記各ネットの配線容量と、前記各入力ピンの容量とを参照して、前記構成における非動作パスに対して、セルの置換前の該セルの組み合せと、セルを置換する際の制約に従った置換後のセルの組み合せのうち、該非動作パスの信号値の遷移状態に応じた、各ネット及び各入力ピンの前記高電位電源側又は前記低電位電源側の容量を加算した総容量に基づいて、該総容量が最大となるセルに置換することによって、デカップリング容量効果を最適化する最適化処理部と、
を有することを特徴とする回路設計装置。
（付記２）
前記最適化処理部は、
セル置換前の前記非動作パスに対して、前記記憶部に格納された前記各ネットの配線容量と、前記各入力ピンの容量とを参照して、該非動作パスの信号値の遷移状態に応じた各ネット及び各入力ピンの前記高電位電源側又は前記低電位電源側の容量を合計することによってセル置換前の総容量を算出する第１総容量算出処理部と、
前記セル置換の制約に基づいて、前記非動作パスのセルを置換するセル置換処理部と、
前記セル置換処理部による前記セルの組み合せ毎に、前記各ネットの配線容量と、前記各入力ピンの容量とを参照して、前記非動作パスの信号値の遷移状態に応じた各ネット及び各入力ピンの前記高電位電源側又は前記低電位電源側の容量を合計することによってセル置換後の総容量を算出する第２総容量算出処理部と、
前記第１総容量算出処理部によって得られた前記セル置換前の総容量と、前記第２総容量算出処理部によって得られた前記セルの組み合せ毎の前記セル置換後の総容量のうち、該総容量が最大となるセルの組み合せによるパスを検出する最大容量パス検出部と、
を有することを特徴とする付記１記載の回路設計装置。
（付記３）
前記最大容量パス検出部によって検出されたパスの前記セルの組み合せを含めて信号配線を行う信号配線処理部と、
前記セルの組み合せを含めた前記信号配線処理部による配置配線結果データを用いて、寄生抵抗及び寄生容量を抽出した後、電圧降下を解析する解析処理部と、
前記解析処理部の結果が前記電圧降下を示す場合、デカップリング容量セルを挿入するセル挿入部と、
を有することを特徴とする付記２記載の回路設計装置。
（付記４）
前記各ネットの配線容量は、前記信号配線処理部によって得られたネット毎の配置配線後に抽出された寄生抵抗及び寄生容量を含む寄生情報を対応付けたデータファイルから抽出されることを特徴とする付記３記載の回路設計装置。
（付記５）
前記入力ピンの容量は、各セルのタイミングに係るタイミングライブラリに含まれる該入力ピンのhigh時のピン容量を示す情報とlow時のピン容量を示す情報を参照することによって抽出されることを特徴とする付記１乃至４のいずれか一記載の回路設計装置。
（付記６）
前記セルを置換する際の制約は、セル出力が非動作の非動作パスに対して、スタートポイントとエンドポイントの論理が変わらない、かつ、該スタートポイントから該エンドポイントまでの到達時間に影響を与えないことと、消費電力が同様であることを特徴とする付記１乃至５のいずれか一項記載の回路設計装置。
（付記７）
コンピュータによって実行されるデカップリング容量効果最適化方法であって、
記憶部に格納された、回路を構成する複数のセル間のネット毎の高電位電源側及び低電位電源側の配線容量と、各入力ピンの該高電位電源側及び該低電位電源側の容量とを参照し、
前記構成における非動作パスに対して、セルの置換前の該セルの組み合せと、セルを置換する際の制約に従った置換後のセルの組み合せのうち、該非動作パスの信号値の遷移状態に応じた、各ネット及び各入力ピンの前記高電位電源側又は前記低電位電源側の容量を加算した総容量に基づいて、該総容量が最大となるセルに置換することによって、デカップリング容量効果を最適化するデカップリング容量効果最適化方法。
（付記８）
記憶部に格納された、回路を構成する複数のセル間のネット毎の高電位電源側及び低電位電源側の配線容量と、各入力ピンの該高電位電源側及び該低電位電源側の容量とを参照し、
前記構成における非動作パスに対して、セルの置換前の該セルの組み合せと、セルを置換する際の制約に従った置換後のセルの組み合せのうち、該非動作パスの信号値の遷移状態に応じた、各ネット及び各入力ピンの前記高電位電源側又は前記低電位電源側の容量を加算した総容量に基づいて、該総容量が最大となるセルに置換することによって、デカップリング容量効果を最適化する
処理をコンピュータに実行させるプログラム。
【符号の説明】
【００９９】
１ａ、２ａ、３ａ    バッファセル
１ａ−２、３ａ−２  インバータセル
４            信号線
５ａ          ＶＤＤ
５ｂ          ＶＳＳ
６ａ、６ｂ    Ｃｌｏａｄ
７ａ、７ｂ    Ｃｌｏａｄ
８ａ、８ｂ    Ｃｌｏａｄ
９ａ、９ｂ    Ｃｌｏａｄ
１０ａ、１０ｂ    Ｃｌｏａｄ
１１          ＣＰＵ
１２          メモリユニット
１３          表示ユニット
１４          出力ユニット
１５          入力ユニット
１６          通信ユニット
１７          記憶装置
１８          ドライバ
１９          記憶媒体
３０          非動作パス
５０          記憶部
５１          回路データ
５２          セルライブラリ
５３          レイアウトデータ
５４          配置配線結果データ
５４ａ        配置配線結果データ
５５          寄生情報ファイル
５５−２      配線容量リスト
５６          デカップリング容量ＥＣＯファイル
６１          タイミングライブラリ
６１−２      入力ピン容量リスト
６２          非動作パスリスト
６３          セル置換前パスの総容量データ
６４          セル置換パターンリスト
６５          セル置換後パスの総容量データ
ｉ１、ｉ１−２、ｉ２、ｉ２−２、ｉ３  電流
【図１】
2013069080.tif 000004
【図２】
2013069080.tif 000005
【図３】
2013069080.tif 000006
【図４】
2013069080.tif 000007
【図５】
2013069080.tif 000008
【図６】
2013069080.tif 000009
【図７】
2013069080.tif 000010
【図８】
2013069080.tif 000011
【図９】
2013069080.tif 000012
【図１０】
2013069080.tif 000013
【図１１】
2013069080.tif 000014
【図１２】
2013069080.tif 000015
【図１３】
2013069080.tif 000016