(57)【要約】【課題】製造ばらつき及び環境変動等のパラメータの条件の変動に対して、耐性の強い信号パスの回路設計を支援すること。【解決手段】本発明にかかる回路設計支援装置は、信号パスに配置される複数の回路の配置情報を決定するものであって、信号パスに配置される前段回路と後段回路の間を接続する配線の取り得る複数の配線長ごとに、複数のパラメータの所定の条件における信号パスの遅延時間から、複数のパラメータの個別の条件の変動が遅延時間に与える影響の度合いである影響度合を算出する算出手段と、算出された影響度合に基づいて信号パスの配置情報を決定する決定手段と、を備える。【選択図】図６
2011008410.tif 000002
【特許請求の範囲】
【請求項１】
信号パスに配置される複数の回路の配置情報を決定する回路設計支援装置であって、
前記信号パスに配置される前段回路と後段回路の間を接続する配線の取り得る複数の配線長ごとに、複数のパラメータの所定の条件における前記信号パスの遅延時間から、前記複数のパラメータの個別の条件の変動が前記遅延時間に与える影響の度合いである影響度合を算出する算出手段と、
前記算出された影響度合に基づいて前記信号パスの配置情報を決定する決定手段と、
を備える回路設計支援装置。
【請求項２】
前記決定手段は、前記複数のパラメータの内、前記配線長の増加に応じて前記影響度合が増加するパラメータにおける影響度合と、前記配線長の増加に応じて前記影響度合が減少するパラメータにおける影響度合との割合に応じて前記信号パスの配置情報を決定することを特徴とする請求項１に記載の回路設計支援装置。
【請求項３】
前記算出手段は、前記信号パスにおける前記複数の配線長の内、前記複数のパラメータの全ての条件の変動における前記信号パスの全体の遅延時間のばらつきが最小となる配線長を選択することを特徴とする請求項１又は２に記載の回路設計支援装置。
【請求項４】
影響度合の調整幅を入力する入力手段をさらに備え、
前記決定手段は、前記選択した配線長における影響度合から前記入力された調整幅分を変化させて影響度合を調整し、当該調整した影響度合となるように前記信号パスの配置情報を決定することを特徴とする請求項３に記載の回路設計支援装置。
【請求項５】
前記入力手段は、前記複数のパラメータの内、少なくとも一部のパラメータの指定を受け付け、
前記決定手段は、前記選択した配線長における影響度合の内、前記指定されたパラメータにおける影響度合から前記入力された調整幅分を変化させて影響度合を調整し、当該調整した影響度合となるように前記信号パスの配置情報を決定することを特徴とする請求項４に記載の回路設計支援装置。
【請求項６】
前記算出手段は、前記信号パスとは異なる他の信号パスにおける前記影響度合をさらに算出し、
前記決定手段は、前記他の信号パスにおける前記影響度合に基づいて、前記信号パスの配置情報を決定することを特徴とする請求項１又は２に記載の回路設計支援装置。
【請求項７】
影響度合の目標値を入力する入力手段をさらに備え、
前記決定手段は、前記信号パスにおける前記影響度合と、前記他の信号パスにおける前記影響度合と、を前記入力された目標値に近づけるように影響度合を調整し、当該調整した影響度合となるように前記信号パス及び前記他の信号パスの配置情報を決定することを特徴とする請求項６に記載の回路設計支援装置。
【請求項８】
前記算出手段は、回路プロセス、配線プロセス、電源電圧及び温度を含む前記複数のパラメータにおける前記影響度合を算出し、
前記決定手段は、前記配線プロセス及び前記温度における影響度合と、前記回路プロセス及び前記電源電圧における影響度合との割合に応じて前記信号パスの配置情報を決定することを特徴とする請求項１乃至７のいずれか１項に記載の回路設計支援装置。
【請求項９】
前記決定手段は、前記信号パスにおける前記配線長又は前記信号パスに配置される回路数を前記配置情報として決定することを特徴とする請求項１乃至８のいずれか１項に記載の回路設計支援装置。
【請求項１０】
信号パスに配置される複数の回路の配置情報を決定する制御手段を備えた回路設計支援装置の制御方法であって、
前記制御手段は、
前記信号パスに配置される前段回路と後段回路の間を接続する配線の取り得る複数の配線長ごとに、複数のパラメータの所定の条件における前記信号パスの遅延時間から、前記複数のパラメータの個別の条件の変動が前記遅延時間に与える影響の度合いである影響度合を算出する算出ステップと、
前記算出された影響度合に基づいて前記信号パスの配置情報を決定する決定ステップと、
を実行する制御方法。
【請求項１１】
前記決定ステップは、前記複数のパラメータの内、前記配線長の増加に応じて前記影響度合が増加するパラメータにおける影響度合と、前記配線長の増加に応じて前記影響度合が減少するパラメータにおける影響度合との割合に応じて前記信号パスの配置情報を決定することを特徴とする請求項１０に記載の制御方法。
【請求項１２】
前記制御手段は、
前記信号パスにおける前記複数の配線長の内、前記複数のパラメータの全ての条件の変動における前記信号パスの全体の遅延時間のばらつきが最小となる配線長を選択するステップと、
前記選択した配線長と、当該選択した配線長における前記複数のパラメータのそれぞれの影響度合とを出力するステップと、
をさらに実行する請求項１０又は１１に記載の制御方法。
【請求項１３】
前記制御手段は、前記複数のパラメータの内、少なくとも一部のパラメータの指定と、前記出力された影響度合についての調整幅との入力を受け付けるステップをさらに実行し、
前記決定ステップは、前記選択した配線長における影響度合の内、前記指定されたパラメータにおける影響度合から前記入力された調整幅分を変化させて影響度合を調整し、当該調整した影響度合となるように前記信号パスの配置情報を決定することを特徴とする請求項１２に記載の制御方法。
【請求項１４】
前記制御手段は、影響度合の目標値を入力する入力ステップをさらに実行し、
前記算出ステップは、前記信号パスとは異なる他の信号パスにおける前記影響度合をさらに算出し、
前記決定ステップは、前記信号パスにおける前記影響度合と、前記他の信号パスにおける前記影響度合と、を前記入力された目標値に近づけるように影響度合を調整し、当該調整した影響度合となるように前記信号パス及び前記他の信号パスの配置情報を決定することを特徴とする請求項１０又は１１に記載の制御方法。
【請求項１５】
前記決定ステップは、前記信号パスにおける前記配線長又は前記信号パスに配置される回路数を前記配置情報として決定することを特徴とする請求項１０乃至１４のいずれか１項に記載の制御方法。
【請求項１６】
信号パスに配置される複数の回路の配置情報を決定する処理をコンピュータに実行させる回路設計支援プログラムであって、
前記信号パスに配置される前段回路と後段回路の間を接続する配線の取り得る複数の配線長ごとに、複数のパラメータの所定の条件における前記信号パスの遅延時間から、前記複数のパラメータの個別の条件の変動が前記遅延時間に与える影響の度合いである影響度合を算出する算出処理と、
前記算出された影響度合に基づいて前記信号パスの配置情報を決定する決定処理と、
を含む回路設計支援プログラム。
【請求項１７】
前記決定処理は、前記複数のパラメータの内、前記配線長の増加に応じて前記影響度合が増加するパラメータにおける影響度合と、前記配線長の増加に応じて前記影響度合が減少するパラメータにおける影響度合との割合に応じて前記信号パスの配置情報を決定することを特徴とする請求項１６に記載の回路設計支援プログラム。
【請求項１８】
前記信号パスにおける前記複数の配線長の内、前記複数のパラメータの全ての条件の変動における前記信号パスの全体の遅延時間のばらつきが最小となる配線長を選択する処理と、
前記選択した配線長と、当該選択した配線長における前記複数のパラメータのそれぞれの影響度合とを出力する処理と、
をさらに含む請求項１６又は１７に記載の回路設計支援プログラム。
【請求項１９】
前記複数のパラメータの内、少なくとも一部のパラメータの指定と、前記出力された影響度合についての調整幅との入力を受け付ける処理をさらに含み、
前記決定処理は、前記選択した配線長における影響度合の内、前記指定されたパラメータにおける影響度合から前記入力された調整幅分を変化させて影響度合を調整し、当該調整した影響度合となるように前記信号パスの配置情報を決定することを特徴とする請求項１８に記載の回路設計支援プログラム。
【請求項２０】
影響度合の目標値を入力する入力手段をさらに含み、
前記算出処理は、前記信号パスとは異なる他の信号パスにおける前記影響度合をさらに算出し、
前記決定処理は、前記信号パスにおける前記影響度合と、前記他の信号パスにおける前記影響度合と、を前記入力された目標値に近づけるように影響度合を調整し、当該調整した影響度合となるように前記信号パス及び前記他の信号パスの配置情報を決定することを特徴とする請求項１６又は１７に記載の回路設計支援プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、回路設計支援装置、回路設計支援装置の制御方法及び回路設計支援プログラムに関し、特に、製造ばらつき及び環境変動を考慮したタイミング最適化を行うための回路設計支援装置、回路設計支援装置の制御方法及び回路設計支援プログラムに関する。
【背景技術】
【０００２】
近年、半導体集積回路等の製造プロセスの微細化及び低電圧化に伴い、製造ばらつき及び環境変動が半導体集積回路等の動作タイミングに大きな影響を与えている。ここで、製造ばらつきとは、例えば、トランジスタプロセス（Process）又は配線プロセス（Wire）等におけるばらつきである。また、環境変動とは、例えば、電源電圧（Vdd）、温度（Temperature）等における変動である。
【０００３】
半導体集積回路等の動作タイミングの検証に関連する技術を以下に挙げる。特許文献１には、コーナー条件の全組み合わせを考慮した高精度のタイミング検証が可能となる集積回路のタイミング検証システムに関する技術が開示されている。特許文献１にかかるタイミング検証システムは、タイミング検証において考慮すべき複数のコーナー条件の全組み合わせのうち、コーナー条件に対するセル遅延値と配線遅延値の遅延変動係数の類似性を元に、遅延差の最大値を包含できるような選択変動係数を選択し、当該選択変動係数による補正を他のコーナー条件のセル遅延と配線遅延に対して行うことにより、ワーストタイミング条件を生成する。このように、特許文献１では、擬似的なワーストタイミング条件を生成し、当該ワーストタイミング条件にのみタイミング検証を行うことで、他の複数の条件におけるタイミング検証を省くことができる。
【０００４】
尚、特許文献１では、コーナー条件として、トランジスタプロセス、配線プロセス、電源電圧及び温度に関する条件（以下、ＰＷＶＴ条件とする）を扱う。そして、ＰＷＶＴ条件の内、一つの条件の変動により遅延最小となる場合を当該条件が"ｆａｓｔ"であると呼ぶ。また、ＰＷＶＴ条件の内、一つの条件の変動により遅延最大となる場合を"ｓｌｏｗ"と呼ぶ。
【０００５】
特許文献２には、半導体集積回路のタイミング検証時間を短縮しながら、タイミングエラーを解消し得るレイアウト修正を可能とするタイミング検証方法に関する技術が開示されている。特許文献２にかかるタイミング検証方法は、ｂｅｓｔ条件（上述した"ｆａｓｔ"に相当）とｗｏｒｓｔ条件（上述した"ｓｌｏｗ"に相当）を含む複数のコーナー条件でマルチコーナー検証を行うものである。特に、当該タイミング検証方法は、ｂｅｓｔ条件及びｗｏｒｓｔ条件の温度を逆ふりした各コーナー条件における温度特性係数を温度特性係数テーブルに格納する。そして、当該タイミング検証方法は、ｂｅｓｔ条件とｗｏｒｓｔ条件で算出されたゲート遅延及び配線遅延と、温度特性係数とに基づいてｂｅｓｔ条件とｗｏｒｓｔ条件以外の各コーナー条件のタイミング検証を行う。
【０００６】
非特許文献１には、複数因子について条件の１組み合わせを任意に選択し、選択した条件の組み合わせにおけるホールド時間、セットアップ時間を確認する手法が開示されている。非特許文献２には、ＰＷＶＴの１条件のみによりリピータ間隔を最適化する手法が開示されている。非特許文献３には、基本的なスキュー最適化のアルゴリズムが開示されている。非特許文献４及び５には、非特許文献３を拡張させて、ＰＷＶＴ条件を考慮してスキューを最適化する手法が開示されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００５−１４１４３４号公報
【特許文献２】特開２００７−２７２６８７号公報
【非特許文献】
【０００８】
【非特許文献１】Neil Weste and David Harris, "CMOS VLSI Design: A Circuits and Systems Perspective, 3rd edition," Addison-Wesley, 2005.
【非特許文献２】G. Chen and E. G. Friedman, "Low-Power Repeaters Driving RC and RLC Interconnects With Delay and Bandwidth Constraints," IEEE Trans. Very Large Integr.(VLSI)Syst., vol. 14, no. 2, pp. 161-172, Feb. 2006.
【非特許文献３】J. P. Fishburn, "Clock Skew Optimization," IEEE Trans. On Computers, vol. 39, no. 7, pp. 945-951, Jul. 1990.
【非特許文献４】X. Wei, Y. Cai, and X. Hong, "Clock Skew Scheduling Under Process Variations," International Symposium on Quality Electronic Design, 2006.
【非特許文献５】V. Nawale and T. W. Chen, "Optimal Useful Clock Skew Scheduling In the Presence of Variations Using Robust ILP Formulations," International Conference on Computer Aided Design, 2006.
【発明の概要】
【発明が解決しようとする課題】
【０００９】
上述した特許文献１及び２並びに非特許文献１乃至５には、製造ばらつき及び環境変動等のパラメータ条件の変動に対して、耐性の強い信号パスの回路設計を行うことができるとは限らないという問題点がある。その理由は、タイミング検証によりエラーを検出したとしても、回路設計の修正が適切であるか否かの確証が得られないからである。そのため、それぞれの条件について、都度、タイミング検証の再実施が必要となり、回路設計の作業効率が悪い。
【課題を解決するための手段】
【００１０】
本発明の第１の態様にかかる回路設計支援装置は、信号パスに配置される複数の回路の配置情報を決定するものであって、前記信号パスに配置される前段回路と後段回路の間を接続する配線の取り得る複数の配線長ごとに、複数のパラメータの所定の条件における前記信号パスの遅延時間から、前記複数のパラメータの個別の条件の変動が前記遅延時間に与える影響の度合いである影響度合を算出する算出手段と、前記算出された影響度合に基づいて前記信号パスの配置情報を決定する決定手段と、を備える。
【００１１】
本発明の第２の態様にかかる回路設計支援装置の制御方法は、信号パスに配置される複数の回路の配置情報を決定する制御手段を備えた回路設計支援装置の制御方法であって、前記制御手段は、前記信号パスに配置される前段回路と後段回路の間を接続する配線の取り得る複数の配線長ごとに、複数のパラメータの所定の条件における前記信号パスの遅延時間から、前記複数のパラメータの個別の条件の変動が前記遅延時間に与える影響の度合いである影響度合を算出する算出ステップと、前記算出された影響度合に基づいて前記信号パスの配置情報を決定する決定ステップと、を実行する。
【００１２】
本発明の第３の態様にかかる回路設計支援装置プログラムは、信号パスに配置される複数の回路の配置情報を決定する処理をコンピュータに実行させるものであって、前記信号パスに配置される前段回路と後段回路の間を接続する配線の取り得る複数の配線長ごとに、複数のパラメータの所定の条件における前記信号パスの遅延時間から、前記複数のパラメータの個別の条件の変動が前記遅延時間に与える影響の度合いである影響度合を算出する算出処理と、前記算出された影響度合に基づいて前記信号パスの配置情報を決定する決定処理と、を含む。
【００１３】
上述した本発明の第１乃至第３の態様にかかる回路設計支援装置、回路設計支援装置の制御方法及び回路設計支援プログラムでは、上述した影響度合を用いることにより、配置情報を決定する。そのため、複数のパラメータの条件を考慮した定量的な指標により回路の遅延時間の変動を捉えることができ、適切な回路設計を支援することができる。
【発明の効果】
【００１４】
本発明により、製造ばらつき及び環境変動等のパラメータの条件の変動に対して、耐性の強い信号パスの回路設計を支援する回路設計支援装置、回路設計支援装置の制御方法及び回路設計支援プログラムを提供することができる。
【図面の簡単な説明】
【００１５】
【図１】パラメータ条件の組み合わせにおける遅延時間の例を示す図である。
【図２】平方和と寄与率を説明する図である。
【図３】分散分析表の例を示す図である。
【図４】クロックパスの例を示す図である。
【図５】配線長と寄与率の関係を示す図である。
【図６】本発明の実施の形態１にかかる回路設計支援装置の構成を示すブロック図である。
【図７】本発明の実施の形態１にかかる回路設計支援装置のハードウェア構成を示すブロック図である。
【図８】本発明の実施の形態１にかかる配置情報決定処理の流れを示すフローチャート図である。
【図９】クロックパスの例を示す図である。
【図１０】配線長と寄与率の関係を示す図である。
【図１１】本発明の実施例１にかかる回路設計対象の例を示す図である。
【図１２】パラメータ条件の組み合わせにおける配線長と遅延時間の関係を示す図である。
【図１３】本発明の実施例１にかかる配置情報決定処理の流れを示すフローチャート図である。
【図１４】本発明の実施例１にかかるパラメータ条件全体のばらつきが最小となる配線長を選択する例を示す図である。
【図１５】本発明の実施例１にかかる一部のパラメータのばらつきの削減に着目した場合の配線長を決定する例を示す図である。
【図１６】本発明の実施例２にかかる回路設計対象の例を示す図である。
【図１７】本発明の実施例２にかかる配置情報決定処理の流れを示すフローチャート図である。
【図１８】本発明の実施例２にかかる２つのクロックパスにおける寄与率を目標値に近づける例を示す図である。
【図１９】本発明の実施例２にかかる回路設計対象の他の例を示す図である。
【図２０】設計対象の回路の例を示す図である。
【図２１】製造ばらつき及び環境変動の例を説明する図である。
【図２２】製造ばらつき及び環境変動のタイミングへの影響を説明する図である。
【発明を実施するための形態】
【００１６】
以下では、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。各図面において、同一要素には同一の符号が付されており、説明の明確化のため、必要に応じて重複説明は省略する。
【００１７】
＜発明の実施の形態１＞
以下では、まず、上述した複数のパラメータ条件の変動による半導体集積回路等の動作タイミングへの影響について説明する。前提として、半導体集積回路等の回路設計においては、製造される半導体集積回路等が複数のパラメータ条件の変動に関わらず、一定の動作タイミングを保証するように回路設計を行う必要がある。そのため、複数のパラメータ条件の変動の範囲として、遅延時間として保証する範囲である動作保証範囲が定められている。例えば、パラメータ条件が電源電圧の場合、動作保証範囲は、０．９Ｖ〜１．１Ｖの間などとなる。このとき、電源電圧が０．９Ｖである場合、動作保証範囲内では最も回路の遅延時間の変動が大きくなるため、パラメータＶの条件を"ｓｌｏｗ"とする。逆に、電源電圧が１．１Ｖである場合、動作保証範囲内では最も回路の遅延時間の変動が小さくなるため、パラメータＶの条件を"ｆａｓｔ"とする。
【００１８】
図２０は、タイミング検証対象の回路の例を示す図である。フリップフロップ１１とフリップフロップ１２との間は、データパス１３により接続されている。クロックパスＣＬＫ＿Ｓは、フリップフロップ１１へ同期信号を入力する信号パスである。また、クロックパスＣＬＫ＿Ｔは、フリップフロップ１２へ同期信号を入力する信号パスである。クロックパスＣＬＫ＿Ｓ及びＣＬＫ＿Ｔは、それぞれ複数のセル（バッファ又はインバータ等）の回路を有し、各回路間は任意の配線長で接続されている。但し、クロックパスＣＬＫ＿ＳとクロックパスＣＬＫ＿Ｔとは、信号パスに配置される複数の回路の配置情報が異なる。ここでは、クロックパスＣＬＫ＿Ｓは、セル遅延が支配的なクロックパスである。すなわち、Ｐ条件の変動による遅延時間の変動が大きい。また、クロックパスＣＬＫ＿Ｔは、配線遅延が支配的なクロックパスである。すなわち、Ｗ条件の変動による遅延時間の変動が大きい。
【００１９】
図２１は、製造ばらつき及び環境変動の例を説明する図である。まず、ＰＷＶＴ条件が条件（Ａ）及び（Ｂ）である場合について考える。ここでは、条件（Ａ）において、図２０のクロックパスＣＬＫ＿Ｓ及びＣＬＫ＿Ｔは、動作タイミングが一致しているものとする。また、条件（Ｂ）は、条件（Ａ）に比べてパラメータＷが"ｓｌｏｗ"であり、パラメータＴが"ｓｌｏｗ"である。そのため、図２０のクロックパスＣＬＫ＿Ｓ及びＣＬＫ＿Ｔについて、条件（Ａ）から条件（Ｂ）へ変動した場合、配線抵抗が増加する。すなわち、パラメータＷにおいては、配線の幅が細くなる等により配線抵抗が増加し、パラメータＴにおいては、温度増加により配線抵抗が増加する。このとき、クロックパスＣＬＫ＿Ｓは、セル遅延が支配的なため配線遅延の増加はない。しかし、クロックパスＣＬＫ＿Ｔは、配線遅延が支配的なため配線遅延の増加がある。
【００２０】
図２２は、製造ばらつき及び環境変動のタイミングへの影響を説明する図である。図２２のタイミングチャートに示すように、条件（Ａ）においては、クロックパスＣＬＫ＿Ｓ及びＣＬＫ＿Ｔの立ち上がりタイミングは一致する。また、条件（Ａ）においては、クロックパスＣＬＫ＿Ｔのホールド時間ＴＡ内にデータの信号が変化しないために、"ＨＯＬＤ  ＯＫ"となる。しかし、条件（Ｂ）においては、クロックパスＣＬＫ＿Ｔの立ち上がりタイミングが遅れるため、クロックパスＣＬＫ＿Ｔのホールド時間ＴＢ内にデータの信号が変化することとなり、"ＨＯＬＤ  ＮＧ"となる。これは、クロックパスＣＬＫ＿Ｓ及びＣＬＫ＿Ｔの間で、セル遅延と配線遅延の割合が異なるためである。
【００２１】
そこで、本発明の実施の形態１では、ＰＷＶＴの各条件が信号パスの遅延時間に与える影響の影響度合を用いて、信号パスにおける回路の配置情報を決定する。ここで、影響度合は、複数のパラメータの所定の条件における信号パスの遅延時間から、複数のパラメータの個別の条件の変動が遅延時間に与える影響の度合いである。また、影響度合は、ＰＷＶＴの各条件が信号パスの遅延時間に与える影響を定量化した指標であり、遅延に対する感度とも言える。定量化は、例えば、遅延時間の平方和の比率、正規化又は寄与率等で表すことができる。ここでは、影響度合の一例として分散分析法の寄与率について説明する。
【００２２】
図１は、ある配置情報における信号パスについて、パラメータ条件の組み合わせにおける遅延時間の例を示す図である。図１では、ＰＷＶＴ条件の各パラメータについてそれぞれ"ｆａｓｔ"又は"ｓｌｏｗ"の２通りとし、これらと他のパラメータとの組み合わせで１６通りについての信号パスの遅延時間を示す。
【００２３】
図２は、平方和と寄与率を説明する図である。例えば、ＰＷＶＴ条件全体の変動である平方和Ｓｔｏｔは、図２の各遅延時間と平均値との差の二乗和により算出される。また、パラメータＰに起因した変動である平方和ＳＰは、図２の内、パラメータＰが"ｆａｓｔ"である遅延時間についての平均値と、パラメータＰが"ｓｌｏｗ"である遅延時間についての平均値とを用いて算出される。パラメータＷ、Ｖ及びＴに起因した変動である平方和ＳＷ、ＳＶ及びＳＴは、平方和ＳＰと同様に算出される。誤差に起因した変動である平方和Ｓｅは、ＳｔｏｔとＳＰ、ＳＷ、ＳＶ及びＳＴの合計値との差である。
【００２４】
また、図２に示す寄与率は、信号パスの遅延時間全体の変動に対して、ＰＷＶＴの各条件の変動がどのように貢献しているかを百分率で表した指標である。尚、寄与率は、百分率に限定されず、少なくとも、平方和Ｓｔｏｔにおける比率であるとよい。
【００２５】
図３は、分散分析表の例を示す図である。ここでは、配線プロセスの寄与率が４３．８％、温度の寄与率が３９．５％であるため、信号パスの遅延時間全体の変動に寄与したのは配線プロセスと温度ということになる。
【００２６】
ここで、異なる配置情報により回路設計された複数の信号パスについて、寄与率の比較を行う。図４は、複数の回路が等間隔に配置された等配線長のクロックパスの例を示す図である。図４に示すクロックパスＣ１、Ｃ２及びＣ３は、等配線長の信号パスである。但し、クロックパスＣ１、Ｃ２及びＣ３は、回路間の配線長がそれぞれ他の信号パスの回路間の配線長とは異なる。また、クロックパスＣ１、Ｃ２及びＣ３は、全体の配線長が同じ場合、配置される回路数が異なる。図５は、回路間の配線長と寄与率の関係を示す図である。図５では、信号パスに配置される前段回路と後段回路の間を接続する配線の取り得る複数の配線長ごとに、複数のパラメータの個別の条件ごとの寄与率の分布を示す。図５における寄与率は、等配線長であるクロックパスについて、回路間の配線長が０．１ｍｍ〜２ｍｍの間で０．１ｍｍ刻みである場合に、それぞれの回路間の配線長における図１に示すような１６通りの遅延時間のデータから算出されたものである。
【００２７】
図５において、寄与率集合Ｒ１は、クロックパスＣ１の回路間の配線長における各パラメータ、すなわち、パラメータＰ，Ｗ，Ｖ及びＴの寄与率の集合である。同様に、寄与率集合Ｒ２及びＲ３は、クロックパスＣ２及びＣ３の回路間の配線長における各パラメータの寄与率の集合である。そして、図５から、ＰＶ条件とＷＴ条件の寄与率には負の相関があることがわかる。これは、クロックパスＣ３のように回路間の配線長が相対的に長ければ、配線遅延の割合が大きいため、セル遅延に起因するＰＶ条件の寄与率が減少し、配線遅延に起因するＷＴ条件の寄与率が増加するためである。このように、寄与率などの指標を影響度合として用いることにより、複数のパラメータ条件の変動に対する各信号パスの遅延時間への影響を数値により定量的に判断することができる。
【００２８】
尚、本発明の回路設計対象の信号パスは、各回路が均等配置されることに限定されない。回路が均等に配置されない信号パスは、回路間の配線長の平均値である平均配線長を各回路が均等配置された場合の配線長である等配線長に置き換えることにより、同等の寄与率を特定することができる。または、回路が均等に配置されない信号パスは、当該信号パスにおける複数のパラメータの条件ごとの遅延時間から寄与率を算出することで、同等の性能を有する等配線長の信号パスを特定することができる。
【００２９】
図６は、本発明の実施の形態１にかかる回路設計支援装置の構成を示すブロック図である。回路設計支援装置１００は、信号パスに配置される複数の回路の配置情報を決定するものであり、例えば、コンピュータシステムにより実現される。回路設計支援装置１００は、算出手段１１０と、決定手段１２０と、遅延時間記憶部１３０と、寄与率記憶部１４０と、配置情報記憶部１５０とを備える。
【００３０】
遅延時間記憶部１３０は、回路設計対象の信号パスにおける遅延時間を、複数のパラメータ条件と平均配線長との組み合わせごとに格納する記憶装置である。遅延時間記憶部１３０は、例えば、図１に示したＰＷＶＴ条件ごとの遅延時間の集合を配線長に対応付けて格納する。寄与率記憶部１４０は、後述する算出手段１１０により算出された寄与率を格納する記憶装置である。寄与率記憶部１４０は、平均配線長とパラメータの種別の組み合わせに対応付けて寄与率を格納する。配置情報記憶部１５０は、信号パスに配置される複数の回路の配置情報を格納する記憶装置である。配置情報記憶部１５０は、回路設計対象の信号パスにおける配置情報及び後述する決定手段１２０により決定された配置情報を格納する。配置情報は、回路設計対象の信号パスにおける平均配線長又は当該信号パスに配置される回路数であるとよい。尚、遅延時間記憶部１３０、寄与率記憶部１４０及び配置情報記憶部１５０は、例えば、ハードディスクドライブ、フラッシュメモリ等の不揮発性の記憶装置でもよいし、ＤＲＡＭ（Dynamic Random Access Memory）等の揮発性の記憶装置であってもよい。
【００３１】
算出手段１１０は、平均配線長ごとに信号パスの遅延時間から影響度合を算出する。具体的には、まず、算出手段１１０は、遅延時間記憶部１３０から遅延時間を取得する。次に、算出手段１１０は、任意の平均配線長において、取得した遅延時間からパラメータごとの寄与率を算出する。例えば、算出手段１１０は、図２に示すように平方和及び寄与率を算出する。そして、算出手段１１０は、遅延時間記憶部１３０に格納された全ての平均配線長について寄与率を算出する。また、算出手段１１０は、算出した寄与率を寄与率記憶部１４０に平均配線長とパラメータの種別の組み合わせに対応付けて格納する。例えば、算出手段１１０は、回路プロセス、配線プロセス、電源電圧及び温度を含む複数のパラメータにおける影響度合を算出する。
【００３２】
決定手段１２０は、算出手段１１０により算出された影響度合に基づいて前記信号パスの配置情報を決定する。具体的には、まず、決定手段１２０は、寄与率記憶部１４０から寄与率を取得する。次に、決定手段１２０は、取得した寄与率に所定の修正を行い、修正した寄与率に対応する等配線長を配置情報として決定する。その後、決定手段１２０は、決定した配置情報を配置情報記憶部１５０に格納する。ここで、所定の修正の例を挙げる。例えば、決定手段１２０は、取得した寄与率の内、ＰＶ条件における寄与率をより高くなるように修正する。または、決定手段１２０は、取得した寄与率について、ＰＷＶＴ条件の各寄与率が同等となるように修正する。さらに、決定手段１２０は、取得した寄与率の内、ＰＶ条件における寄与率をより低くなるように修正する。または、決定手段１２０は、取得した寄与率の内、一部の寄与率を特定の寄与率に近づけるように修正する。尚、決定手段１２０は、上述した所定の修正のいずれかについて、予め定められているか又は、都度、外部から指定されるものとするとよい。
【００３３】
また、決定手段１２０は、複数のパラメータの内、平均配線長の増加に応じて影響度合が増加するパラメータにおける影響度合と、平均配線長の増加に応じて影響度合が減少するパラメータにおける影響度合との割合に応じて信号パスの配置情報を決定するとよい。例えば、決定手段１２０は、平均配線長の増加に応じて寄与率が増加するパラメータＷ及びＴにおける寄与率をまとめて一つのパラメータの寄与率とし、同様に、平均配線長の増加に応じて寄与率が減少するパラメータＰ及びＶにおける寄与率をまとめて一つのパラメータの寄与率としてもよい。これにより、遅延時間への影響度合の傾向が近いパラメータについて、複合的に影響を考慮することができる。そのため、信号パスの性能の評価をより精度の高く行うことができ、より適切な回路設計を行うことができる。また、決定手段１２０は、信号パスにおける平均配線長又は当該信号パスに配置される回路数のいずれかを配置情報として決定するとよい。
【００３４】
さらに、決定手段１２０は、配線プロセス及び温度における影響度合と、回路プロセス及び電源電圧における影響度合との割合に応じて信号パスの配置情報を決定するとよい。例えば、決定手段１２０は、ＷＴ条件の寄与率とＰＶ条件の寄与率とが一定の割合となるように修正する。
【００３５】
図７は、本発明の実施の形態１にかかる回路設計支援装置のハードウェア構成を示すブロック図である。回路設計支援装置１００は、ＣＰＵ（Central Processing Unit）１６１と、ＲＡＭ（Random Access Memory）１６２と、ＲＯＭ（Read Only Memory）１６３と、ＩＦ（InterFace）部１６４と、ハードディスク１６５とを備える。また、ハードディスク１６５は、不揮発性記憶装置であり、ＯＳ（Operating System）１７１、回路設計支援プログラム１７２、パラメータ１７３、遅延時間１７４、配線長１７５、寄与率１７６、配置情報１７７を格納する。つまり、ハードディスク１６５は、図６における遅延時間記憶部１３０、寄与率記憶部１４０及び配置情報記憶部１５０を含むものである。回路設計支援プログラム１７２は、図６の算出手段１１０及び決定手段１２０を実現する処理が実装されたプログラムである。パラメータ１７３は、ＰＷＶＴといった複数のパラメータ条件の種別や"ｆａｓｔ"又は"ｓｌｏｗ"を示す情報である。遅延時間１７４は、例えば、図１に示したＰＷＶＴ条件ごとの遅延時間である。配線長１７５は、回路設計対象の信号パスにおける回路間の平均配線長であり、例えば、上述したように０．１ｍｍ〜２ｍｍの間で０．１ｍｍ刻みのデータである。寄与率１７６は、算出手段１１０により算出された寄与率である。配置情報１７７は、配置情報記憶部１５０に格納される配置情報である。尚、パラメータ１７３、遅延時間１７４、配線長１７５、寄与率１７６及び配置情報１７７は、必ずしもハードディスク１６５内に格納される必要はなく、ＲＡＭ１６２内に格納されてもよい。
【００３６】
ＣＰＵ１６１は、回路設計支援装置１００における各種処理、ＲＡＭ１６２、ＲＯＭ１６３、ＩＦ部１６４及びハードディスク１６５へのアクセス等を制御する制御手段である。ＩＦ部１６４は、回路設計支援装置１００の外部とのデータの入出力を行う。回路設計支援装置１００は、ＣＰＵ１６１が、ＲＡＭ１６２、ＲＯＭ１６３又はハードディスク１６５に格納されたＯＳ１７１、回路設計支援プログラム１７２を読み込み、実行する。これにより、算出手段１１０及び決定手段１２０として機能する。
【００３７】
図８は、本発明の実施の形態１にかかる配置情報を決定する処理の流れを示すフローチャート図である。まず、算出手段１１０は、影響度合を算出する（Ｓ１１）。具体的には、まず、ＣＰＵ１６１は、ハードディスク１６５から配線長１７５ごと、パラメータ１７３ごとに遅延時間１７４を読み出す。次に、ＣＰＵ１６１は、配線長ごとに読み出した遅延時間について平方和及び寄与率を算出する。その後、ＣＰＵ１６１は、ハードディスク１６５に算出した寄与率を平均配線長及びパラメータごとに対応付けて格納する。
【００３８】
次に、決定手段１２０は、信号パスの配置情報を決定する（Ｓ１２）。具体的には、まず、ＣＰＵ１６１は、ハードディスク１６５から寄与率１７６を読み出す。次に、ＣＰＵ１６１は、読み出した寄与率に所定の修正を行い、修正した寄与率に対応する平均配線長を配置情報として決定する。その後、ＣＰＵ１６１は、決定した配置情報をハードディスク１６５に格納する。
【００３９】
ここで、ある平均配線長における信号パスを寄与率に基づいて配置情報を決定する例を説明する。図９は、クロックパスの例を示す図である。ここでは、図９に示すクロックパスＣＯを回路設計対象の信号パスとする。また、クロックパスＣＡは、クロックパスＣＯに比べて回路数を変更せずに、回路間の平均配線長を延長させた信号パスである。クロックパスＣＢは、クロックパスＣＯに比べて信号パス全体の配線長を変更せずに、回路を削除した、つまり、結果的に回路間の平均配線長を延長させた信号パスである。クロックパスＣＣは、クロックパスＣＯに比べて回路数を変更せずに、回路間の平均配線長を短縮させた信号パスである。クロックパスＣＤは、クロックパスＣＯに比べて信号パス全体の配線長を変更せずに、回路を挿入した、つまり、結果的に回路間の平均配線長を短縮させた信号パスである。
【００４０】
図１０は、配線長と寄与率の関係を示す図である。ここで、寄与率集合ＲＯは、回路設計支援装置１００により算出されたクロックパスＣＯの平均配線長における寄与率の集合である。そのため、クロックパスＣＯからクロックパスＣＡ又はＣＢの配置情報へ変更した場合、クロックパスＣＡ又はＣＢは、平均配線長がより長い信号パスと同等の性能を有することがわかる。または、寄与率集合ＲＯに比べてＰＶ条件の寄与率をより低くする又はＷＴ条件の寄与率をより高くする必要がある場合、配置情報をクロックパスＣＡ又はＣＢに近づければよいことがわかる。このように、本発明の実施の形態１によりＰＷＶＴ条件が与える遅延時間への影響を寄与率という指標を用いることで、製造ばらつき及び環境変動等のパラメータの条件の変動に対して、耐性の強い信号パスの回路設計を支援することができる。
【００４１】
また、本発明の実施の形態１により、等配線長の信号パスの遅延時間を回路間の配線長で関数化することが可能となる。また、信号パスの動作タイミング最適化の際に、ＰＷＶＴ条件のどの条件を変更すればよいか数値により設計者が判断可能となる。そのため、設計者は、回路設計の修正が適切であるか否かの確証を得ることができる。その理由は、遅延時間全体の変動に対して、各パラメータ条件の変動がどのように寄与しているかを寄与率等の影響度合で表したためである。
【００４２】
上述したように複数のパラメータ条件は、製造プロセスの微細化により複合的に影響し合うという特徴がある。本発明の実施の形態１では、寄与率と平均配線長との関係からバッファの挿入又は削除によりＰＶ条件の寄与率が変動し、平均配線長の増減でＷＴ条件の寄与率が変動することが明確となる。そのため、複数のパラメータ条件を複合的に考慮して、定量的な尺度により配置情報を修正することができ、修正の妥当性を証明できる。そのため、ＰＷＶＴ条件の各パターンについて、都度、動作タイミングを検証して"ＨＯＬＤＮＧ"が発生しないことを確認する必要がない。
【００４３】
さらに、寄与率の指標の下で、任意の回路間の平均配線長のパスを等配線長のパスで代用して、平均配線長の増減、バッファの挿入又は削除の影響を迅速に見積もることが可能となる。その理由は、同じ寄与率を持つ信号パスであれば、遅延時間の全体の変動に対して各条件の変動の寄与が同じためである。また、等配線長の信号パスの遅延時間を平均配線長で関数化することが可能なためである。
【００４４】
＜実施例１＞
以下に、本発明の実施の形態１をＤＤＲ（Double Data Rate）方式によりＬＳＩ（Large Scale Integration）からＤＲＡＭへのデータ転送を行う場合に適用した実施例１について説明する。
【００４５】
図１１は、本発明の実施例１にかかる回路設計対象の例を示す図である。ＬＳＩ２０は、ＤＤＲ方式によりＤＲＡＭ３０へデータ転送を行う。ＬＳＩ２０は、ＰＬＬ（Phase Locked Loop）２１と、Ｉ／Ｏ（Input/Output）バッファ２２と、クロックパス２３とを備える。ＰＬＬ２１とＩ／Ｏバッファ２２との間は、クロックパス２３により接続されている。ここでは、クロックパス２３が回路設計対象の信号パスである。
【００４６】
ここで、ＤＤＲ方式において生じる課題を説明する。ＤＤＲ方式においては、ＬＳＩ２０からＤＲＡＭ３０の信号パスにジッタが乗る。より具体的には、ＰＬＬ２１からＤＲＡＭ３０へクロックを供給する際には、ＬＳＩ２０内部でクロックパス２３が有する複数のバッファにより波形を維持する必要がある。ここで、波形を維持するとは、波形を急峻にし、信号強度を保持することである。しかし、ＬＳＩ２０に電源が入ることにより波形が不安定になる。つまり、クロック遅延及びジッタが発生する。そのため、若干遅延が発生したとしても、クロックパス２３のノイズ耐性を強くする必要がある。ここで、クロックパス２３は、電圧の影響が低い場合には、ノイズの影響を受け難いという特性がある。
【００４７】
また、図１２は、ＰＷＶＴ条件の組み合わせにおけるバッファ間の平均配線長と遅延時間の関係を示す図である。上述した非特許文献２では、ＰＷＶＴ条件の内、１条件のみで遅延時間が最小となる平均配線長を選択している。しかし、図１２に示すように、"ｆｆｆｆ"において遅延時間が最小となる平均配線長と、"ｆｆｆｆ"以外の条件において遅延時間が最小となる平均配線長とは異なる。そのため、複数のパラメータ条件を総合的に考慮して遅延時間が最小となる平均配線長を選択する必要がある。
【００４８】
そこで、本発明の実施例１では、複数のパラメータ条件を総合的に考慮して遅延時間が最小となる平均配線長を選択すると共に、ノイズ耐性を強くするために、若干、遅延時間を増やす調整を行うことを可能とした。尚、本発明の実施例１における回路設計支援装置１００の構成は、図６の構成にキーボード及びマウス等の入力装置（不図示）及びディスプレイ等の出力装置（不図示）をさらに加えたものである。それ以外の構成は、図６と同様であるため、図示及び説明は省略する。
【００４９】
図１３は、本発明の実施例１にかかる配置情報を決定する処理の流れを示すフローチャート図である。まず、算出手段１１０は、等配線長における寄与率を算出する（Ｓ２１）。すなわち、算出手段１１０は、遅延時間記憶部１３０から遅延時間を取得する。そして、算出手段１１０は、クロックパス２３においてバッファが均等に配置されていた場合における取り得る複数の平均配線長ごとに、取得した遅延時間から寄与率を算出する。
【００５０】
次に、算出手段１１０は、条件変動における遅延時間のばらつきが最小となる平均配線長を選択する（Ｓ２２）。具体的には、まず、算出手段１１０は、取得した遅延時間から平均配線長ごとに平方和を算出する。ここで算出される平方和は、例えば、図２における平方和Ｓｔｏｔのように全てのパラメータ条件を含めたものである。そして、算出手段１１０は、算出した平方和の内、最小となる平方和における平均配線長を選択する。すなわち、算出手段１１０は、クロックパス２３における複数の平均配線長の内、複数のパラメータの全ての条件の変動におけるクロックパス２３の全体の遅延時間のばらつきが最小となる平均配線長を選択する。図１４は、本発明の実施例１にかかるパラメータ条件全体のばらつきが最小となる平均配線長を選択する例を示す図である。図１４では、平方和Ｓｍｉｎが最小であるため、平均配線長として０．５ｍｍが選択される。これにより、全てのパラメータ条件を考慮して、回路間の配線長の理想値を求めることができる。
【００５１】
そして、算出手段１１０は、選択した平均配線長と選択した平均配線長における寄与率とを出力する（Ｓ２３）。すなわち、算出手段１１０は、回路設計支援装置１００の出力装置に対して出力する。このとき併せて、算出手段１１０は、ステップＳ２１で算出した全ての平均配線長における複数のパラメータ条件ごとの寄与率を出力するとよい。その際、算出手段１１０は、寄与率の分布をグラフ表示として出力してもよい。これにより、クロックパス２３の設計者は、クロックパス２３における回路間の配線長の理想値に問題があるか否かを判定することができる。その後、回路設計支援装置１００の入力装置は、クロックパス２３の設計者から当該選択した平均配線長における寄与率に問題があるか否かの判定結果を受け付ける。
【００５２】
そして、決定手段１２０は、選択した平均配線長における寄与率に問題があるか否かを判定する（Ｓ２４）。選択した平均配線長における寄与率に問題があると判定された場合、決定手段１２０は、クロックパス２３の設計者からパラメータの指定及び寄与率の調整幅の入力を受け付ける（Ｓ２５）。寄与率の調整幅とは、例えば、Ｐ条件の寄与率の減少幅等である。または、寄与率の調整幅に限定されず、指定されたパラメータにおける寄与率の目標値であってもよい。そして、決定手段１２０は、入力された調整幅に基づき寄与率を変化させて、対応する平均配線長を配置情報として決定する（Ｓ２６）。また、ステップＳ２４において、選択した平均配線長における寄与率に問題ないと判定された場合、決定手段１２０は、選択した平均配線長を配置情報として決定する（Ｓ２７）。
【００５３】
ここで、上述した入力装置は、少なくとも影響度合の調整幅を入力するとよい。その場合、決定手段１２０は、選択した平均配線長における影響度合から入力された調整幅分を変化させて影響度合を調整する。そして、決定手段１２０は、当該調整した影響度合となるようにクロックパス２３の配置情報を決定する。これにより、影響度合という指標に基づいてクロックパス２３の回路設計をどのように変更すべきかを決定することができる。
【００５４】
さらに、上述した入力装置は、複数のパラメータの内、少なくとも一部のパラメータの指定を受け付けるとよい。その場合、決定手段１２０は、選択した平均配線長における影響度合の内、指定されたパラメータにおける影響度合から入力された調整幅分を変化させて影響度合を調整する。そして、決定手段１２０は、当該調整した影響度合となるように前記信号パスの配置情報を決定する。これにより、例えば、回路間の配線長の理想値に対して、実際の動作環境において変動の割合の大きいパラメータ条件における寄与率を優先させた平均配線長を求めることができる。
【００５５】
図１５は、本発明の実施例１にかかる一部のパラメータのばらつきの削減に着目した場合の回路間の平均配線長を決定する例を示す図である。寄与率集合Ｒｍｉｎは、ステップＳ２２において選択された平均配線長における各パラメータの寄与率の集合である。これにより、クロックパス２３の設計者は、クロックパス２３の全体の遅延時間のばらつきが最小となる平均配線長と、当該平均配線長におけるそれぞれのパラメータ条件についての寄与率とから、当該平均配線長が適切であるか否かを検討することができる。このとき、クロックパス２３の実際の利用状態では、電源電圧とトランジスタプロセスのばらつきの影響が多いものとする。そのため、クロックパス２３の設計者は、ＰＶ条件の変動の影響を避ける必要があるものと判断する。その場合、クロックパス２３の設計者は、ＰＶ条件の寄与率を下げるように調整幅を入力する。そのため、決定手段１２０は、調整幅に基づいて、ＰＶ条件の寄与率を寄与率集合Ｒｍｉｎから寄与率集合Ｒａｄｊに変化させる。そして、決定手段１２０は、寄与率集合Ｒａｄｊに対応する平均配線長である１．０ｍｍをクロックパス２３の配置情報として決定する。
【００５６】
上述したように、ＰＷＶＴの全条件を考慮して最適な平均配線長を選択した場合、ＰＶ条件の寄与率が高い場合がある。その場合、電源ノイズに起因するジッタ耐性の強い信号パスおよびトランジスタプロセスのばらつきの耐性の強い信号パスの構築が困難となる。そこで、本発明の実施例１では、平均配線長における分布との比較により調整することで、利用状況に応じた耐性の強い信号パスの構築が可能となる。
【００５７】
本発明の実施例１により、ＰＬＬからＤＬＬまでのクロックパスなどにおいて、ジッタ耐性の強いパスの構築が可能である。その理由は、平均配線長の増加及びバッファの削除によってＰＶ条件の寄与率を減らすことで、電源電圧起因の信号パスの遅延時間の変動を削除可能なためである。
【００５８】
また、本発明の実施例１により、トランジスタの電源電圧特性のばらつきが大きいトランジスタが使用された信号パスにおいて、トランジスタのプロセスばらつき耐性の強い信号パスの構築が可能である。その理由は、平均配線長の増加及びバッファの削除によってＰＶ条件の寄与率を減らすことで、トランジスタプロセスのばらつき起因の信号パスの遅延時間の変動を削除可能なためである。
【００５９】
このように、本発明の実施例１により、例えば、ＤＤＲ方式においてもノイズ耐性が強い信号パスの回路設計を行うことを支援することができる。
【００６０】
＜実施例２＞
以下に、本発明の実施の形態１を２つの信号パスのスキュー調整を行う場合に適用した実施例２について説明する。２つの信号パスにおいて、複数のパラメータ条件が変動した場合に動作タイミングに変化が生じないように、つまりスキューを０にするには、信号パス全体の配線長及びバッファ数を揃えることが理想である。しかし、実際は、２つの信号パス全体の配線長及びバッファ数を揃えることは困難である。その理由は、例えば、信号パスの接続元からの長さや配置等が異なるためである。そこで、本発明の実施例２では、２つの信号パスにおいて、寄与率を近づけることでスキューを０に近づけるものである。尚、本発明の実施例２における回路設計支援装置１００の構成は、図６の構成にキーボード及びマウス等の入力装置（不図示）及びディスプレイ等の出力装置（不図示）をさらに加えたものである。それ以外の構成は、図６と同様であるため、図示及び説明は省略する。
【００６１】
図１６は、本発明の実施例２にかかる回路設計対象の例を示す図である。フリップフロップ３２とフリップフロップ３３との間は、データパス３６により接続されている。ＰＬＬ３１は、クロックパス３４及び３５へ同期信号を入力する。クロックパス３４は、フリップフロップ３２へ同期信号を入力する信号パスである。また、クロックパス３５は、フリップフロップ３３へ同期信号を入力する信号パスである。但し、クロックパス３４とクロックパス３５とは、信号パスに配置される複数の回路の配置情報が異なる。また、クロックパス３４とクロックパス３５とは、ＰＬＬ３１からの長さや配置等が異なる。
【００６２】
図１７は、本発明の実施例２にかかる配置情報決定処理の流れを示すフローチャート図である。以下では、クロックパス３４を第１の信号パス、クロックパス３５を第２の信号パスとするが、これに限定されない。また、クロックパス３４を回路設計対象の信号パス、クロックパス３５を他の信号パスとして、一方の寄与率を基準として、他方の寄与率に近づけても構わない。
【００６３】
まず、算出手段１１０は、第１の信号パスについて等配線長における寄与率を算出する（Ｓ３１）。すなわち、算出手段１１０は、クロックパス３４について取り得る複数の平均配線長における複数のパラメータ条件ごとの遅延時間から寄与率を算出する。次に、算出手段１１０は、第１の信号パスの平均配線長における寄与率Ｘを算出する（Ｓ３２）。すなわち、算出手段１１０は、クロックパス３４について現状の配置情報における寄与率Ｘを算出する。尚、算出手段１１０は、ステップＳ３１により算出された寄与率の集合の中から、現状の配置情報における平均配線長に対応する寄与率Ｘを選択してもよい。そして、算出手段１１０は、第２の信号パスの平均配線長における寄与率Ｙを算出する（Ｓ３３）。すなわち、算出手段１１０は、クロックパス３４とは異なる他の信号パスであるクロックパス３５について現状の配置情報における寄与率Ｙをさらに算出する。
【００６４】
ここで、決定手段１２０は、寄与率Ｘと寄与率Ｙとの差が所定の閾値の範囲内であるか否かを判定する（Ｓ３４）。すなわち、決定手段１２０は、クロックパス３４とクロックパス３５との性能を寄与率により比較する。尚、所定の閾値は予め与えられており、回路設計支援装置１００のハードディスク１６５等に格納されているものとする。尚、ステップＳ３４において、回路設計支援装置１００の出力装置は、ステップＳ３１乃至Ｓ３３において算出された寄与率の分布をグラフ表示として出力してもよい。
【００６５】
ステップＳ３４において、所定の閾値の範囲内でないと判定された場合、決定手段１２０は、寄与率Ｘ及びＹを調整し、第１の信号パス及び第２の信号パスの平均配線長を算出する（Ｓ３５）。例えば、決定手段１２０は、ＰＷＶＴ条件の内、一部のパラメータ条件について寄与率Ｘを寄与率Ｙに近づけるように変化させて寄与率を調整する。つまり、決定手段１２０は、他の信号パスにおける影響度合に基づいて、信号パスの配置情報を決定する。または、決定手段１２０は、各パラメータ条件の寄与率Ｘと寄与率Ｙとが一致するように変化させて寄与率を調整する。そして、決定手段１２０は、調整された寄与率に対応する平均配線長から、再度クロックパス３４及び３５をバッファ間の実際の配線長及びバッファ数に修正して、再度、クロックパス３４及び３５の平均配線長を算出する。その後、ステップＳ３２乃至Ｓ３５を繰り返す。
【００６６】
ステップＳ３４において、所定の閾値の範囲内であると判定された場合、決定手段１２０は、寄与率Ｘ及びＹに対応する平均配線長を決定する（Ｓ３６）。これにより、クロックパス３４及び３５は、スキューを０に近付けるためのそれぞれの配置情報を決定することができる。
【００６７】
尚、ステップＳ３４において、回路設計支援装置１００の入力装置は、クロックパス３４及び３５の設計者から影響度合の目標値の入力を受け付けるとよい。その場合、ステップＳ３５において、決定手段１２０は、第１の信号パスにおける影響度合と、第２の信号パスにおける影響度合と、を入力された目標値に近づけるように影響度合を調整し、当該調整した影響度合となるように信号パス及び他の信号パスの配置情報を決定することで実現できる。これにより、クロックパス３４及び３５の利用状態に応じて適切な性能とすることができる。尚、入力装置に入力される目標値は、寄与率の差分であってもよい。
【００６８】
図１８は、本発明の実施例２にかかる２つのクロックパスにおける寄与率を目標値に近づける例を示す図である。寄与率集合Ｒｘは、ステップＳ３２において算出された第１の信号パスにおける各パラメータの寄与率の集合である。寄与率集合Ｒｙは、ステップＳ３３において算出された第２の信号パスにおける各パラメータの寄与率の集合である。寄与率集合Ｒｔａｒｇｅｔは、入力装置に入力された寄与率の目標値の集合である。そして、上述したように決定手段１２０は、各パラメータの寄与率が寄与率集合Ｒｔａｒｇｅｔに近づくように寄与率集合Ｒｘ及びＲｙを変化させて調整する。その後、決定手段１２０は、調整された寄与率に対応する平均配線長から第１の信号パス及び第２の信号パスのバッファ間の配線長を算出する。
【００６９】
このように、本発明の実施例２では、２つの信号パスにおいて寄与率を近づけることで、複数のパラメータ条件の変動における遅延時間の増減の度合いを近づけることができる。そのため、パラメータ条件の変動によるホールドエラーが起き難くなる。
【００７０】
図１９は、本発明の実施例２にかかる回路設計対象の他の例を示す図である。図１９では、図１６に比べて、２つの信号パスが異なる供給元から同期信号を入力されている場合を示す。例えば、クロックドメイン間のデータ転送におけるスキュー調整に適用可能である。
【００７１】
ここでは、図１６の違いについて具体的に説明する。ＰＬＬ３１ａは、クロックパス３４ａへ同期信号を入力する。クロックパス３４ａは、フリップフロップ３２へ同期信号を入力する信号パスである。ＰＬＬ３１ｂは、クロックパス３５ａへ同期信号を入力する。クロックパス３５ａは、フリップフロップ３３へ同期信号を入力する信号パスである。但し、クロックパス３４ａとクロックパス３５ａとは、信号パスに配置される複数の回路の配置情報が異なる。また、クロックパス３４ａとクロックパス３５ａとは、ＰＬＬ３１ａ及びＰＬＬ３１ｂからの長さや配置等が異なる。このとき、クロックパス３４ａを第１の信号パス、クロックパス３５ａを第２の信号パスとすることにより、本発明の実施例２が適用可能である。
【００７２】
本発明の実施例２により、クロックスキューがプロセスばらつき、環境変動からの影響を受けにくくするクロックパスの構築が可能である。その理由は、２つのクロックパスにおいて、平均配線長の増減及びバッファの挿入または削除をして、２つのパスの寄与率を近い値に調整するためである。この調整によって、ＰＷＶＴ条件が与える信号パスの遅延時間への影響を２つのパスで同等にでき、クロックスキューがプロセスばらつき、環境変動の影響を受け難くなる。
【００７３】
＜その他の実施の形態＞
さらに、本発明は上述した実施の形態のみに限定されるものではなく、既に述べた本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。例えば、上述の実施の形態にかかるコンピュータプログラムは、記録媒体に記録して提供することも可能であり、また、インターネットその他の伝送媒体を介して伝送することにより提供することも可能である。また、記憶媒体には、例えば、フレキシブルディスク、ハードディスク、磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ（Compact Disk Read Only Memory）、ＤＶＤ（Digital Versatile Disk）、ＲＯＭ（Read Only Memory）カートリッジ、バッテリバックアップ付きＲＡＭ（Random Access Memory）メモリカートリッジ、フラッシュメモリカートリッジ、不揮発性ＲＡＭカートリッジ等が含まれる。また、通信媒体には、電話回線等の有線通信媒体、マイクロ波回線等の無線通信媒体等が含まれる。
【符号の説明】
【００７４】
１１  フリップフロップ
１２  フリップフロップ
１３  データパス
１００  回路設計支援装置
１１０  算出手段
１２０  決定手段
１３０  遅延時間記憶部
１４０  寄与率記憶部
１５０  配置情報記憶部
１６１  ＣＰＵ
１６２  ＲＡＭ
１６３  ＲＯＭ
１６４  ＩＦ部
１６５  ハードディスク
１７１  ＯＳ
１７２  回路設計支援プログラム
１７３  パラメータ
１７４  遅延時間
１７５  配線長
１７６  寄与率
１７７  配置情報
２０  ＬＳＩ
２１  ＰＬＬ
２２  Ｉ／Ｏバッファ
２３  クロックパス
３０  ＤＲＡＭ
３１  ＰＬＬ
３１ａ  ＰＬＬ
３１ｂ  ＰＬＬ
３２  フリップフロップ
３３  フリップフロップ
３４  クロックパス
３４ａ  クロックパス
３５  クロックパス
３５ａ  クロックパス
３６  データパス
ＣＬＫ＿Ｓ  クロックパス
ＣＬＫ＿Ｔ  クロックパス
Ｃ１  クロックパス
Ｃ２  クロックパス
Ｃ３  クロックパス
ＣＯ  クロックパス
ＣＡ  クロックパス
ＣＢ  クロックパス
ＣＣ  クロックパス
ＣＤ  クロックパス
Ｒ１  寄与率集合
Ｒ２  寄与率集合
Ｒ３  寄与率集合
ＲＯ  寄与率集合
Ｒｍｉｎ  寄与率集合
Ｒａｄｊ  寄与率集合
Ｒｔａｒｇｅｔ  寄与率集合
Ｒｘ  寄与率集合
Ｒｙ  寄与率集合
Ｓｔｏｔ  平方和
ＳＰ  平方和
ＳＷ  平方和
ＳＶ  平方和
ＳＴ  平方和
Ｓｅ  平方和
Ｓｍｉｎ  平方和
ＴＡ  ホールド時間
ＴＢ  ホールド時間
【図１】
2011008410.tif 000003
【図２】
2011008410.tif 000004
【図３】
2011008410.tif 000005
【図４】
2011008410.tif 000006
【図５】
2011008410.tif 000007
【図６】
2011008410.tif 000008
【図７】
2011008410.tif 000009
【図８】
2011008410.tif 000010
【図９】
2011008410.tif 000011
【図１０】
2011008410.tif 000012
【図１１】
2011008410.tif 000013
【図１２】
2011008410.tif 000014
【図１３】
2011008410.tif 000015
【図１４】
2011008410.tif 000016
【図１５】
2011008410.tif 000017
【図１６】
2011008410.tif 000018
【図１７】
2011008410.tif 000019
【図１８】
2011008410.tif 000020
【図１９】
2011008410.tif 000021
【図２０】
2011008410.tif 000022
【図２１】
2011008410.tif 000023
【図２２】
2011008410.tif 000024