(57)【特許請求の範囲】
【請求項１】
配線の接続情報及び遅延情報を記録する記録手段と、
前記配線の接続情報及び遅延情報に基づいた信号伝搬の遅延解析により、各配線経路についてタイミング値を算出するタイミング値算出手段と、
前記配線経路の改善目標となる第１の目標値を設定する目標値設定手段と、
前記配線の接続情報、遅延情報及び変動要因に基づいた信号伝搬の遅延解析により、前記各配線経路について第１の分布を算出する分布算出手段と、
前記各配線経路が前記第１の目標値を達成した場合の第２の分布を、前記タイミング値から前記第１の目標値を引いた値を使用して前記第１の分布から予測する予測手段と、
前記第２の分布から集積回路の第１の歩留まりを算出する歩留まり算出手段と、
前記第１の歩留まりが所定値の許容範囲にあるか否かを判定する判定手段と、
前記第１の歩留まりが所定値の許容範囲にある場合には前記第１の目標値を、前記配線経路の改善目標となる第２の目標値として決定する目標値決定手段と、
前記第２の目標値より大きい前記タイミング値を示すエラー配線経路を検出する検出手段と、
前記検出したエラー配線経路が前記第２の目標値より小さいタイミング値を示すように配線の接続を変更する改善手段と、
を備える集積回路のレイアウト装置。
【請求項２】
記録手段に記録された集積回路上の配線の接続情報及び当該配線における遅延情報に基づいた信号伝搬の遅延解析により、各配線経路についての解析値を算出する解析値算出手段と、
前記集積回路上の配線経路に関する解析値の目標となる第１の目標値を設定する設定手段と、
前記配線の接続情報、遅延情報及び変動要因に基づいた信号伝搬の遅延解析により、前記各配線経路について第１の解析値分布を算出する分布算出手段と、
前記各配線経路が前記第１の目標値を達成した場合の第２の解析値分布を、前記解析値から前記第１の目標値を引いた値を使用して前記第１の解析値分布から予測する予測手段と、
前記第２の解析値分布から、集積回路の第１の歩留まりを算出する歩留まり算出手段と
、
前記第１の歩留まりが所定値の許容範囲にあるか否かを判定する判定手段と、
前記第１の歩留まりが所定値の許容範囲にある場合には前記第１の目標値を、前記集積回路上の配線経路に関する解析値の目標となる第２の目標値として決定する決定手段と、
前記第２の目標値より大きい解析値を示す配線経路を検出する検出手段と、
前記検出した配線経路についての解析値が前記第２の目標値より小さい値を示すように、当該配線の接続を変更する変更手段と、
を備える集積回路のレイアウト装置。
【請求項３】
前記記録手段に記録された配線の接続情報及び遅延情報を、前記配線の接続変更後の配線の接続情報及び遅延情報に更新する手段を備え、
前記分布算出手段は、前記更新後の配線の接続情報、遅延情報及び変動要因に基づいた信号伝搬の遅延解析により、前記各配線経路について第３の分布を算出し、
前記歩留まり算出手段は、前記第３の分布から集積回路の第２の歩留まりを算出し、
前記判定手段は、前記第２の歩留まりが所定値の許容範囲にあるか否かを判定し、
前記第２の歩留まりが所定値の許容範囲となるまで、前記各手段の処理を繰り返す請求項１に記載の集積回路のレイアウト装置。
【請求項４】
前記判定手段は、前記第１の歩留まりが所定値の許容範囲にない場合には前記第１の歩留まりが所定値より小さい値を示すかを判定し、
前記目標値設定手段は、前記第１の歩留まりが所定値より小さい値を示す場合には前記第１の目標値より遅延が小さい値を前記第１の目標値として新たに設定し、前記第１の歩留まりが所定値より小さい値を示さない場合には前記第１の目標値より遅延が大きい値を前記第１の目標値として新たに設定し、
前記第１の歩留まりが所定値の許容範囲となるまで、前記歩留まり算出手段と前記判定手段と前記目標値設定手段と前記予測手段とを繰り返し実行するように制御する制御手段と、
を更に備える請求項３に記載の集積回路のレイアウト装置。
【請求項５】
前記配線の接続変更後の配線の接続情報及び遅延情報に基づいて特定の配線経路を決定する手段を備え、
前記分布算出手段は、前記更新後の接続情報、遅延情報及び変動要因に基づいた信号伝搬の遅延解析により前記特定の配線経路について前記第３の分布を算出する請求項３又は４に記載の集積回路のレイアウト装置。
【請求項６】
前記判定手段は、前記第１の歩留まりが所定値の許容範囲にない場合には前記第１の歩留まりが所定値より小さい値を示すかを判定し、
前記目標値設定手段は、前記第１の歩留まりが所定値より小さい値を示す場合には前記第１の目標値より遅延が小さい値を前記第１の目標値として新たに設定し、前記第１の歩留まりが所定値より小さい値を示さない場合には前記第１の目標値より遅延が大きい値を前記第１の目標値として新たに設定し、
前記第１の歩留まりが所定値の許容範囲となるまで、前記歩留まり算出手段と前記判定手段と前記目標値設定手段と前記予測手段とを繰り返し実行するように制御する制御手段と、
を更に備える請求項１に記載の集積回路のレイアウト装置。
【請求項７】
コンピュータが、
記録手段に記録された配線の接続情報及び遅延情報に基づいた信号伝搬の遅延解析により各配線経路についてタイミング値を算出するタイミング値算出ステップと、
前記配線経路の改善目標となる第１の目標値を設定する目標値設定ステップと、
前記配線の接続情報、遅延情報及び変動要因に基づいた信号伝搬の遅延解析により、前記各配線経路について第１の分布を算出する分布算出ステップと、
前記各配線経路が前記第１の目標値を達成した場合の第２の分布を、前記タイミング値から前記第１の目標値を引いた値を使用して前記第１の分布から予測する予測ステップと、
前記第２の分布から集積回路の第１の歩留まりを算出する歩留まり算出ステップと、
前記第１の歩留まりが所定値の許容範囲にあるか否かを判定する判定ステップと、
前記第１の歩留まりが所定値の許容範囲にある場合には前記第１の目標値を、前記配線経路の改善目標となる第２の目標値として決定する目標値決定ステップと、
前記第２の目標値より大きい前記タイミング値を示すエラー配線経路を検出する検出ステップと、
前記検出したエラー配線経路が前記第２の目標値より小さいタイミング値を示すように配線の接続を変更する改善ステップと、
を実行する集積回路のレイアウト方法。
【請求項８】
コンピュータが、
記録手段に記録された集積回路上の配線の接続情報及び遅延情報に基づいた信号伝搬の遅延解析により、各配線経路について解析値を算出する解析値算出ステップと、
前記集積回路上の配線経路に関する解析値の目標となる第１の目標値を設定する設定ステップと、
前記配線の接続情報、遅延情報及び変動要因に基づいた信号伝搬の遅延解析により、前記各配線経路について第１の解析値分布を算出する分布算出ステップと、
前記各配線経路が前記第１の目標値を達成した場合の第２の解析値分布を、前記解析値から前記第１の目標値を引いた値を使用して前記第１の解析値分布から予測する予測ステップと、
前記第２の解析値分布から、集積回路の第１の歩留まりを算出する歩留まり算出ステップと、
前記第１の歩留まりが所定値の許容範囲にあるか否かを判定する判定ステップと、
前記第１の歩留まりが所定値の許容範囲にある場合には前記第１の目標値を、前記集積回路上の配線経路に関する解析値の目標となる第２の目標値として決定する決定ステップと、
前記第２の目標値より大きい解析値を示す配線経路を検出する検出ステップと、
前記検出した配線経路についての解析値が前記第２の目標値より小さい値を示すように、当該配線の接続を変更する変更ステップと、
を実行することを特徴とする、集積回路のレイアウト方法。
【請求項９】
前記コンピュータが、
前記記録手段に記録された配線の接続情報及び遅延情報を、前記配線の接続変更後の配線の接続情報及び遅延情報に更新する更新ステップを実行し、
前記分布算出ステップは、前記更新後の配線の接続情報、遅延情報及び変動要因に基づいた信号伝搬の遅延解析により、前記各配線経路について第３の分布を算出し、
前記歩留まり算出ステップは、前記第３の分布から集積回路の第２の歩留まりを算出し、
前記判定ステップは、前記第２の歩留まりが所定値の許容範囲にあるか否かを判定し、
前記第２の歩留まりが所定値の許容範囲となるまで、前記コンピュータが前記各ステップを繰り返し実行する請求項７に記載の集積回路のレイアウト方法。
【請求項１０】
前記判定ステップは、前記第１の歩留まりが所定値の許容範囲にない場合には前記第１の歩留まりが所定値より小さい値を示すかを判定し、
前記目標値設定ステップは、前記第１の歩留まりが所定値より小さい値を示す場合には
前記第１の目標値より遅延が小さい値を前記第１の目標値として新たに設定し、前記第１の歩留まりが所定値より小さい値を示さない場合には前記第１の目標値より遅延が大きい値を前記第１の目標値として新たに設定し、
前記第１の歩留まりが所定値の許容範囲となるまで、前記歩留まり算出ステップと前記判定ステップと前記目標値設定ステップと前記予測ステップとを繰り返し実行するように制御する制御ステップと、
を前記コンピュータが実行する請求項９に記載の集積回路のレイアウト方法。
【請求項１１】
前記コンピュータが、
前記配線の接続変更後の配線の接続情報及び遅延情報に基づいて特定の配線経路を決定するステップを実行し、
前記分布算出ステップは、前記更新後の接続情報、遅延情報及び変動要因に基づいた信号伝搬の遅延解析により前記特定の配線経路について前記第３の分布を算出する請求項９又は１０に記載の集積回路のレイアウト方法。
【請求項１２】
前記判定ステップは、前記第１の歩留まりが所定値の許容範囲にない場合には前記第１の歩留まりが所定値より小さい値を示すかを判定し、
前記目標値設定ステップは、前記第１の歩留まりが所定値より小さい値を示す場合には前記第１の目標値より遅延が小さい値を前記第１の目標値として新たに設定し、前記第１の歩留まりが所定値より小さい値を示さない場合には前記第１の目標値より遅延が大きい値を前記第１の目標値として新たに設定し、
前記第１の歩留まりが所定値の許容範囲となるまで、前記歩留まり算出ステップと前記判定ステップと前記目標値設定ステップと前記予測ステップとを繰り返し実行するように制御する制御ステップと、
を前記コンピュータが実行する請求項７に記載の集積回路のレイアウト方法。
【請求項１３】
コンピュータに、
記録手段に記録された配線の接続情報及び遅延情報に基づいた信号伝搬の遅延解析により各配線経路についてタイミング値を算出するタイミング値算出ステップと、
前記配線経路の改善目標となる第１の目標値を設定する目標値設定ステップと、
前記配線の接続情報、遅延情報及び変動要因に基づいた信号伝搬の遅延解析により、前記各配線経路について第１の分布を算出する分布算出ステップと、
前記各配線経路が前記第１の目標値を達成した場合の第２の分布を、前記タイミング値から前記第１の目標値を引いた値を使用して前記第１の分布から予測する予測ステップと、
前記第２の分布から集積回路の第１の歩留まりを算出する歩留まり算出ステップと、
前記第１の歩留まりが所定値の許容範囲にあるか否かを判定する判定ステップと、
前記第１の歩留まりが所定値の許容範囲にある場合には前記第１の目標値を、前記配線経路の改善目標となる第２の目標値として決定する目標値決定ステップと、
前記第２の目標値より大きい前記タイミング値を示すエラー配線経路を検出する検出ステップと、
前記検出したエラー配線経路が前記第２の目標値より小さいタイミング値を示すように配線の接続を変更する改善ステップと、
を実行させるための集積回路のレイアウトプログラム。
【請求項１４】
前記コンピュータに、
前記記録手段に記録された配線の接続情報及び遅延情報を、前記配線の接続変更後の配線の接続情報及び遅延情報に更新する更新ステップを実行させ、
前記分布算出ステップは、前記更新後の配線の接続情報、遅延情報及び変動要因に基づいた信号伝搬の遅延解析により、前記各配線経路について第３の分布を算出し、
前記歩留まり算出ステップは、前記第３の分布から集積回路の第２の歩留まりを算出し、
前記判定ステップは、前記第２の歩留まりが所定値の許容範囲にあるか否かを判定し、
前記第２の歩留まりが所定値の許容範囲となるまで、前記コンピュータに前記各ステップを繰り返し実行させる請求項１３に記載の集積回路のレイアウトプログラム。
【請求項１５】
前記判定ステップは、前記第１の歩留まりが所定値の許容範囲にない場合には前記第１の歩留まりが所定値より小さい値を示すかを判定し、
前記目標値設定ステップは、前記第１の歩留まりが所定値より小さい値を示す場合には前記第１の目標値より遅延が小さい値を前記第１の目標値として新たに設定し、前記第１の歩留まりが所定値より小さい値を示さない場合には前記第１の目標値より遅延が大きい値を前記第１の目標値として新たに設定し、
前記第１の歩留まりが所定値の許容範囲となるまで、前記歩留まり算出ステップと前記判定ステップと前記目標値設定ステップと前記予測ステップとを繰り返し実行するように制御する制御ステップと、
を前記コンピュータに実行させる請求項１４に記載の集積回路のレイアウトプログラム。
【請求項１６】
前記コンピュータに、
前記配線の接続変更後の配線の接続情報及び遅延情報に基づいて特定の配線経路を決定するステップを実行させ、
前記分布算出ステップは、前記更新後の接続情報、遅延情報及び変動要因に基づいた信号伝搬の遅延解析により前記特定の配線経路について前記第３の分布を算出する請求項１４又は１５に記載の集積回路のレイアウトプログラム。
【請求項１７】
前記判定ステップは、前記第１の歩留まりが所定値の許容範囲にない場合には前記第１の歩留まりが所定値より小さい値を示すかを判定し、
前記目標値設定ステップは、前記第１の歩留まりが所定値より小さい値を示す場合には前記第１の目標値より遅延が小さい値を前記第１の目標値として新たに設定し、前記第１の歩留まりが所定値より小さい値を示さない場合には前記第１の目標値より遅延が大きい値を前記第１の目標値として新たに設定し、
前記第１の歩留まりが所定値の許容範囲となるまで、前記歩留まり算出ステップと前記判定ステップと前記目標値設定ステップと前記予測ステップとを繰り返し実行するように制御する制御ステップと、
を前記コンピュータに実行させる請求項１３に記載の集積回路のレイアウトプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、集積回路レイアウト装置、その方法及びプログラムに関する。
【背景技術】
【０００２】
集積回路（例えば、ＬＳＩ（Large Scale Integration）、ＩＣ（Integrated Circuit
）等）の設計においては、従来から静的遅延解析（Static Timing Analysis）が行われている。静的遅延解析（以下、ＳＴＡとも称する）は、基本的に順序回路と順序回路とを接続する論理回路を構成する各素子の信号伝搬時間の遅延値の最大値又は最小値の合計で経路の遅延を算出し、タイミング解析を行っている。しかし、現在では各素子のバラツキ（製造バラツキ）が経路の遅延制約値に比べて相対的に大きくなっている。そして、各素子の最大値（あるいは最小値）の合計ではタイミング制約を満たす設計を行なうことが困難となっている。そのため、各素子の遅延値を確率分布とし、経路上の各素子の遅延確率分布より統計的演算を行い、経路の遅延分布を求める統計的遅延解析（Static Statistical
Timing Analysis）が開発されている。
【０００３】
統計的遅延解析（以下、ＳＳＴＡとも称する）では、ＳＴＡでは求めることができなかった集積回路の歩留まりを求めることが可能になる。ここで、集積回路の歩留まりとは、所定の周波数を超える動作周波数をもつ集積回路の割合をいう。しかし、ＳＳＴＡでは、ＳＴＡと比較して処理時間やメモリが数倍必要になるという欠点がある。そのため、タイミング改善のための設計変更（レイアウト変更、論理変更）とＳＳＴＡを使用した集積回路の歩留まりの評価とを繰り返して行うタイミング改善のターンアラウンドタイムが、従来のＳＴＡを使用したタイミング改善のターンアラウンドタイムに比べて長くなる。
【特許文献１】特開２００４−２５２８３１号公報
【特許文献２】特開２００５−１１８９２号公報
【特許文献３】特開２００５−９２８８５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記の技術では、ＳＳＴＡのみを行って経路のタイミングエラーを改善しており、短時間に各経路のタイミングエラーを改善させることができなかった。本発明では、集積回路の各経路についてＳＳＴＡのみを行ってタイミングエラーを改善させる場合よりも短時間に各経路のタイミングエラーを改善させることを目的とする。
【課題を解決するための手段】
【０００５】
本発明は、上記課題を解決するために、以下の手段を採用した。
（１）すなわち、本発明の集積回路のレイアウト装置（本集積回路のレイアウト装置）は、配線の接続情報及び遅延情報を記録する記録手段と、前記配線の接続情報及び遅延情報に基づいた信号伝搬の遅延解析により各配線経路についてタイミング値を算出するタイミング値算出手段と、前記配線経路の改善目標となる第１の目標値を決定する目標値決定手段と、前記第１の目標値より大きい前記タイミング値を示すエラー配線経路を検出する検出手段と、前記検出したエラー配線経路が前記第１の目標値より小さいタイミング値を示すように配線の接続を変更する改善手段と、前記記録手段に記録される配線の接続情報及び遅延情報を接続変更後の配線の接続情報及び遅延情報に更新する手段と、前記更新後の配線の接続情報、遅延情報及び変動要因に基づいた信号伝搬の遅延解析により前記各配線経路について第１の分布を算出する分布算出手段と、前記第１の分布から集積回路の第１の歩留まりを算出する歩留まり算出手段と、前記第１の歩留まりが所定値の許容範囲にあるか否かを判定する判定手段と、を備える。この構成により、ＳＴＡ及びＳＳＴＡにより
、タイミングエラーを改善する目標となる値より大きいタイミング値を示す配線経路のタイミングエラーを改善することができる。そして、配線経路のタイミングエラーを改善した後の集積回路の歩留まりが所定値の許容範囲にあるかを認識することができる。したがって、ＳＳＴＡのみを行って配線経路のタイミングエラーを改善させるよりも短時間に配線経路のタイミングエラーを改善させることができる。
【０００６】
（２）本集積回路のレイアウト装置は、前記第１の目標値を決定するために使用される第２の目標値を設定する目標値設定手段と、前記各配線経路が前記第２の目標値を達成した場合の第２の分布を前記第１の分布から予測する予測手段とを備え、前記歩留まり算出手段が、前記第２の分布から集積回路の第２の歩留まりを算出し、前記目標値決定手段が、前記第２の歩留まりが所定値の許容範囲にある場合には前記第２の目標値を前記第１の目標値として決定するものであってもよい。この構成により、タイミングエラーを改善した後の集積回路の歩留まりが所定値の許容範囲にあるかを認識することができる。したがって、実際にＳＳＴＡを行う必要がなくなり、短時間に配線経路のタイミングエラーを改善させることができる。
【０００７】
（３）本集積回路のレイアウト装置は、前記判定手段が、前記第２の歩留まりが所定値の許容範囲にない場合には前記第１の歩留まりが所定値より小さい値を示すかを判定し、前記目標値設定手段が、前記第２の歩留まりが所定値より小さい値を示す場合には前記第２の目標値より遅延が小さい値を前記第２の目標値として新たに設定し、前記第２の歩留まりが所定値より小さい値を示さない場合には前記第２の目標値より遅延が大きい値を前記第２の目標値として新たに設定し、前記第２の歩留まりが所定値の許容範囲となるまで、前記歩留まり算出手段と前記判定手段と前記目標値決定手段と前記目標値設定手段と前記予測手段とを繰り返し実行するように制御する制御手段とを更に備えるものであってもよい。この構成により、タイミングエラーを改善する目標となる目標値を確実に決定することができる。
【０００８】
（４）本集積回路のレイアウト装置は、前記タイミング値算出手段が、前記配線の接続変更後の配線の接続情報及び遅延情報に基づいた信号伝搬の遅延解析により各配線経路についてタイミング値を算出し、前記タイミング値に基づいて特定の配線経路を決定する手段を備え、前記分布算出手段が、前記更新後の接続情報、遅延情報及び変動要因に基づいた信号伝搬の遅延解析により前記特定の配線経路について前記第１の分布を算出してもよい。この構成により、集積回路の歩留まりに影響するタイミングエラーが大きい配線経路を特定することができる。したがって、特定の配線経路のみに対してＳＳＴＡを行うことにより、ＳＳＴＡの処理時間を短縮することができる。
【０００９】
（５）本集積回路のレイアウト装置は、前記予測手段が、前記タイミング値から前記仮目標値を引いた値を使用して前記第１の分布値から第２の分布値を予測するものであってもよい。この構成により、タイミング値から仮目標値を引いた値を使用して第１の分布値から第２の分布値を予測する。したがって、単に係数を使用して第１の分布値から第２の分布値を予測し、集積回路の歩留まりを算出するよりも精度の高い予測を行うことができる。
【００１０】
また、本発明は、コンピュータその他の装置、機械等が上記いずれかの処理を実行する方法であってもよい。また、本発明は、コンピュータその他の装置、機械等に、以上のいずれかの機能を実現させるプログラムであってもよい。
【発明の効果】
【００１１】
本発明によれば、集積回路の各経路についてＳＳＴＡのみを行ってタイミングエラーを改善させるよりも、短時間に各経路のタイミングエラーを改善させることができる。
【発明を実施するための最良の形態】
【００１２】
以下、図面を参照して本発明の実施をするための最良の形態（以下、実施形態という）に係る設計装置について説明する。以下の実施形態の構成は例示であり、本発明は実施形態の構成に限定されない。
【００１３】
ＳＴＡは、信号が伝搬する時間差により不具合が生じるか否かを確認するためのタイミング解析である。タイミング解析には、フリップフロップやラッチなどにおいて、データを取り込むタイミングが遅すぎるか否かを確認するセットアップタイムチェックや、データを取り込むタイミングが早すぎるか否かを確認するホールドタイムチェックがある。ＳＴＡを行った結果として算出されるタイミングエラーを示した値をタイミングチェック値（以下、チェック値とも称する）という。本実施形態では、セットアップタイムチェックによりタイミング解析を行った結果としてチェック値を算出している。
【００１４】
図１は、チェック値に対する経路数の分布の例を示した図である。図１は、チェック値を基準として、同一のチェック値を有する経路の数量分布を示している。また、図１の曲線Ａは、ＳＴＡ目標値を下回るチェック値を示す経路数の分布を表している。ここで、経路数とは、タイミング解析を行う対象となる集積回路に設けられた経路の数量をいう。
【００１５】
また、ＳＴＡ目標値とは、回路改善を行った後の集積回路の歩留まりを歩留まり目標に対して所定の許容差の範囲に収めるために、集積回路に配置されたすべての経路のタイミングエラーを改善する目標となる値である。したがって、集積回路に配置されたすべての経路のタイミング値をＳＴＡ目標値以下とすれば、タイミングエラーを改善することが見込まれる。
【００１６】
また、歩留まり目標とは、集積回路の歩留まり、例えば所定の周波数で動作する集積回路の割合の目標値をいう。すなわち、回路改善を行うことにより所定の周波数で動作する集積回路の割合を向上させることで、この集積回路の歩留まりを向上させることが可能となる。
【００１７】
経路とは、例えば、順序回路と順序回路との間のタイミングエラーをチェックする単位である。また、経路とは順序回路から論理回路を経て順序回路へ至るタイミングチェック対象となるデータ経路のことである。そして、順序回路と順序回路との間は、組み合わせ論理回路により結ばれている。
【００１８】
タイミング解析では、信号がゲートを通過する際に組み合わせ論理回路で生じるタイミングエラーをチェックする。図１に示される例では、すべての経路のチェック値は、ＳＴＡ目標値を下回っている。従来、ＳＴＡ目標値は経験的に導かれる値を定めていた。そして、すべての経路に対してＳＴＡを行い、チェック値を算出し、すべての経路のチェック値がＳＴＡ目標値を下回るように集積回路の回路設計が行われていた。しかし、ＳＴＡ目標値を任意に設定した場合、すべての経路のチェック値がＳＴＡ目標値を下回っても、集積回路の歩留まりが歩留まり目標を達成しない場合があった。
【００１９】
図２は、集積回路の歩留まりを算出した場合の分布の例を示した図である。図２の曲線Ｂは、特性値に対しての集積回路の歩留まりの分布の例を示している。図２では、特性値の目標値をＸとしている。ここで、特性値とは、集積回路の性能を評価する値である。図２のａは、特性値の目標値Ｘで動作する集積回路の歩留まりの値を示している。図２においては、目標値Ｘで動作する集積回路の歩留まりは２０パーセントである。歩留まり目標を５０パーセントとした場合には、目標値Ｘで動作する集積回路の歩留まりは歩留まり目標を達成していない。これは、集積回路のすべての経路はＳＴＡ目標値を下回っているが
、目標値Ｘで動作する集積回路の歩留まりは歩留まり目標を達成していないことを意味する。図１におけるＳＴＡ目標値では、目標値Ｘで動作する集積回路の歩留まりは歩留まり目標を達成していないので、新たなＳＴＡ目標値を設定する必要がある。
【００２０】
そして、集積回路の歩留まりが歩留まり目標を達成するまで、ＳＴＡとタイミングエラーの改善を繰り返し行う。図３は、新たなＳＴＡ目標値を設定した場合において、チェック値に対する経路数の分布の例を示した図である。図３の曲線Ｃは、新たなＳＴＡ目標値を下回るチェック値を示す経路数の分布を表している。目標値Ｘで動作する集積回路の歩留まりが歩留まり目標を達成していない場合、新たなＳＴＡ目標値を再設定する。そして、その新たな目標値を下回るように回路の改善を行う。次に、各経路に対してＳＴＡを行い、チェック値を算出する。図３では、このように算出したチェック値と新たなＳＴＡ目標値を対比している。
【００２１】
図４は、新たなＳＴＡ目標値を設定した場合における集積回路の歩留まりの分布を予測した例を示した図である。図４の曲線Ｄは、集積回路の歩留まりが歩留まり目標を達成したと予測した場合における集積回路の歩留まりの分布の例を示している。歩留まり目標である５０パーセントの値と目標値Ｘの交点であるｂを曲線Ｄは通っており、目標値Ｘで動作する集積回路の歩留まりが歩留まり目標を達成すると予測している。
【００２２】
本実施形態では、集積回路の歩留まりが曲線Ｄとなるような、すなわち、集積回路の歩留まりが歩留まり目標を達成する新たなＳＴＡ目標値を設定する。そして、経路ごとのチェック値と新たなＳＴＡ目標値との大小関係を判別し、新たなＳＴＡ目標値より大きいチェック値を示す経路のタイミングエラーを改善する操作を行う。さらに、新たなＳＴＡ目標値を設定した場合における集積回路の歩留まりを予測し、集積回路の歩留まりが歩留まり目標を達成するか否かを判断する。そして、集積回路の歩留まりが歩留まり目標を達成するか否かの判断には、ＳＳＴＡを行う。本実施形態では、集積回路の経路のタイミングエラーについてはＳＴＡを行い、集積回路の歩留まりが歩留まり目標を達成しているかの判断にはＳＳＴＡを行う。
【００２３】
このように、本実施形態では、各経路についてＳＳＴＡのみを行ってタイミングエラーをチェックした場合に比較してＳＳＴＡを行う回数が減少する。したがって、ＳＳＴＡのみを行って集積回路の経路のタイミングエラーを改善するより、短期間にタイミング改善を行うことができる。さらに、タイミング改善のための設計変更とＳＳＴＡを使用した集積回路の歩留まりの評価を繰り返して行うタイミング改善のターンアラウンドタイムが短くなる。
【００２４】
〈全体構成〉
図５は、本実施形態による集積回路のレイアウト装置を搭載したＣＡＤ装置の構成図である。ＣＡＤ装置は、例えば、コンピュータにＣＡＤ装置として動作させるためのプログラムをインストールすることで実現できる。図５に示すように、ＣＡＤ装置は、ＣＰＵ（Central Processing Unit）１、ＲＯＭ（Read Only Memory）２、ＲＡＭ（Random Access
Memory）３、外部記憶装置４、操作部５及び表示部６、インターフェース部７で構成さ
れている。これらは、相互にバスを介して接続されている。
【００２５】
ＣＰＵ１は、ＲＯＭ２に記憶されているプログラムに従って各種の処理を実行する。ＲＯＭ２はファイルの入出力、ＣＡＤ装置の制御を実現するためのＯＳ（Operating System）が記憶されている。また、ＲＯＭ２は、ＣＡＤ装置が機能する上で必要なプログラムやパラメータなどが記憶されている。ＲＡＭ３は、ＣＰＵ１の動作上必要なデータや、ＣＰＵ１が実行するアプリケーションのプログラムなどを記憶する。外部記憶装置４に搭載された記憶媒体（例えばハードディスク）には、上述したプログラムや、必要なデータが記
憶されている。また、外部記憶装置４に搭載された記憶媒体には、集積回路の設計に用いるデータベース（ライブラリ）が記憶されている。操作部５は、例えば、キーボードやマウスなどであり、所定のコマンドや必要なデータを入力するときなどに操作される。表示部６は、例えば、ＣＲＴ（Cathode Ray Tube）や液晶ディスプレイ、プラズマディスプレイなどによる表示装置や、スピーカなどの音声出力装置、プリンタ装置などの出力装置を備えている。インターフェース部７は、モデム、ターミナルアダプタなどの通信装置を備えており、ＬＡＮ等のネットワークと信号のやりとりを行う。
【００２６】
図６は、本実施形態に係る集積回路レイアウト装置の構成図である。図６に示すように、本実施形態に係る集積回路レイアウト装置１１は、遅延計算部１２、タイミングチェック部１３、仮定ＳＴＡ目標値設定部１４、ＳＳＴＡ予測部１５、歩留まり算出部１６、歩留まり判定部１７、ＳＴＡ目標値決定部１８、経路検出部１９、タイミング改善部２０、経路特定部２１、制御部２２、記録部２３を有している。そして、記録部２３は、レイアウトデータベース３１、遅延データベース３２、ネットリストデータベース３３、ＳＳＴＡ結果データベース３４、ＳＴＡ結果データベース３５により構成されている。
【００２７】
遅延計算部１２は、歩留まりを改善する対象となる集積回路（以下、対象集積回路とも称する）の配置情報や配線情報を基に、集積回路上の各配線の遅延時間を計算する。タイミングチェック部１３は、遅延計算部１２が計算した遅延時間を利用して、集積回路内のクロックや信号のタイミングが適切であるかを検証する。具体的には、集積回路のネットリスト及び遅延情報を用いて対象集積回路のすべての経路についてＳＴＡを行い、タイミングチェック値を算出する。また、集積回路のネットリスト及び遅延情報対象集積回路のすべての経路についてＳＳＴＡを行う。さらに、ＳＳＴＡは変動要因を考慮してタイミングチェックが行われる。そして、ＳＳＴＡを行った結果として、タイミングチェック値分布（以下、チェック値分布とも称する）を算出する。チェック値分布は、各素子の遅延値を確率分布とし、経路上の各素子の遅延確率分布より統計的演算を行い、経路の遅延分布としたものである。
【００２８】
ＳＳＴＡは、経路に影響を与える変動要因を考慮し、遅延時間を分布として評価したものである。ここで、変動要因には、各素子の寸法精度が変動することによる製造バラツキがある。ゲート長や配線の長さ、配線の幅などの寸法精度が変動する製造バラツキは、ゲートを通過する信号の伝搬時間に変動を生じさせる。また、製造バラツキは、トランジスタの電気的特性の変動を生じさせる。トランジスタの増幅値が変動することにより、トランジスタの駆動能力が変動し、信号の伝搬時間に変動を生じさせる。また、抵抗を構成するポリシリコンや拡散層の不純物濃度が変動することによる抵抗値の変化が信号の伝搬時間の変動を生じさせる。さらに、寄生容量の変動による製造バラツキもある。以下、ＳＳＴＡによるタイミングチェックは、変動要因を考慮してチェック値分布を算出するものとする。
【００２９】
仮定ＳＴＡ目標値設定部１４は、ＳＴＡ目標値を決定するために使用する仮定ＳＴＡ目標値を設定する。ＳＳＴＡ予測部１５は、経路のタイミングチェック値分布からタイミング改善後のチェック値分布を予測・算出する。
【００３０】
歩留まり算出部１６は、対象集積回路についてＳＳＴＡを行った経路のタイミングチェック値分布から集積回路の歩留まりを算出する。歩留まり判定部１７は、集積回路の歩留まりが歩留まり目標に対して所定の許容差の範囲内にあるかを判定する。また、予測後のチェック値分布から算出した集積回路の歩留まりが歩留まり目標より小さいかを判定する。予測後のチェック値分布とは、対象集積回路の各経路のチェック値がＳＴＡ目標値まで改善された後のチェック値分布をいう。
【００３１】
ＳＴＡ目標値決定部１８は、対象集積回路に対してＳＴＡ目標値を１つ決定する。経路検出部１９は、ＳＴＡを行った経路のチェック値がＳＴＡ目標値より大きい値を示す経路を検出する。タイミング改善部２０は、チェック値がＳＴＡ目標値より大きいと判定された経路についてタイミング改善を行う。
【００３２】
経路特定部２１は、集積回路の歩留まりに影響する遅延が大きい経路を予め特定する。制御部２２は、集積回路の歩留まりが歩留まり目標の許容範囲となるまで、仮定ＳＴＡ目標値設定部１４、歩留まり算出部１６、歩留まり判定部１７、ＳＴＡ目標値決定部１８における処理を繰り返し実行するように制御する。
【００３３】
レイアウトデータベース３１には、対象集積回路の配置情報や配線情報が記録されている。遅延データベース３２には、遅延計算を行った結果である遅延情報が記録されている。ネットリストデータベース３３には、対象集積回路のネットリストが記録されている。ここで、ネットリストとは、集積回路の回路素子の構成及び回路素子間の配線に関する回路情報である。
【００３４】
ＳＳＴＡ結果データベース３４には、ＳＳＴＡを行った各経路の結果が記録されている。また、ＳＴＡ結果データベース３５には、ＳＴＡを行った各経路の結果が記録されている。図１１に示すように、ＳＳＴＡ結果データベース３４には、ＳＳＴＡを行った経路の始点ピン及び終点ピン、タイミングチェックの種類を示すチェック属性、ＳＳＴＡを行った経路のチェック値分布が記録されている。ＳＴＡ結果データベース３５には、ＳＴＡを行った経路の始点ピン及び終点ピン、タイミングチェックの種類を示すチェック属性、チェック値が記録されている。また、記録部２３に記録されている情報が更新された場合には、それぞれ更新後の情報が記録される。
【００３５】
〔第１実施例〕
〈集積回路の歩留まりを歩留まり目標の許容範囲に収める処理〉
図７は、集積回路の歩留まりを歩留まり目標の許容範囲に収める処理のフローである。まず、対象集積回路の配置情報や配線情報を基に、遅延計算部１２が、各経路の遅延時間を計算する。対象集積回路の配置情報や配線情報は予めレイアウトデータベース３１に記録されている。そして、遅延計算部１２は、遅延計算を行った結果である遅延情報を遅延データベース３２に記録する（Ｓ７０１）。
【００３６】
次に、ネットリスト及び遅延情報を基に、タイミングチェック部１３は、対象集積回路の各経路についてＳＳＴＡ及びＳＴＡによりタイミングチェックを行う（Ｓ７０２）。ここで、タイミングチェックは、シミュレーションを行ってもよいし、実際に測定を行ってもよい。さらに、タイミングチェック部１３は、ＳＳＴＡによりタイミングチェックを行った結果をＳＳＴＡ結果データベース３４に記録し、ＳＴＡによりタイミングチェックを行った結果をＳＴＡ結果データベース３５に記録する（Ｓ７０３）。
【００３７】
そして、ＳＴＡ目標値決定部１８は、チェック値分布とチェック値を用いてＳＴＡ目標値を決定する（Ｓ７０４）。ＳＴＡ目標値を決定する処理は、まず、ＳＴＡ目標値の初期値に仮定ＳＴＡ目標値を設定し、仮定ＳＴＡ目標値からＳＴＡ目標値として最適な値を決定する。このＳＴＡ目標値を決定する処理についての詳細は後述する。さらに、経路検出部１９は、Ｓ７０２の処理で算出したチェック値がＳＴＡ目標値より大きい値を示す経路を検出する（Ｓ７０５）。そして、タイミング改善部２０は、Ｓ７０５の処理で検出した経路について回路改善のための処理を行う（Ｓ７０６）。ここで、回路改善は、集積回路の経路の配置変更や論理変更を行うことにより実現する。
【００３８】
次に、タイミング改善部２０は、レイアウトデータベース３１を回路改善後の対象集積
回路の配置情報や配線情報に更新する。また、タイミング改善部２０は、ネットリストデータベース３３に記録されているネットリストを回路改善後のネットリストに更新する（Ｓ７０７）。さらに、遅延計算部１２は、回路改善後の対象集積回路の配置情報や配線情報を基に、各配線の遅延時間を改めて計算し、遅延情報を算出する。そして、遅延計算部１２は、遅延データベース３２に記録されている遅延情報を、回路改善後に算出された遅延情報に更新する（Ｓ７０８）。
【００３９】
次に、タイミングチェック部１３は、更新後のネットリスト及び更新後の遅延情報を基に、回路改善を行った各経路についてＳＴＡによりタイミングチェックを行う（Ｓ７０９）。そして、経路検出部１９は、チェック値がＳＴＡ目標値より大きい値を示す経路を検出する（Ｓ７１０）。回路改善を行った後のチェック値がＳＴＡ目標値より大きい値を示す経路がある場合、タイミング改善部２０は、その経路に対して再度回路改善を行う（Ｓ７１１）。回路改善は、回路改善を行った後のチェック値がＳＴＡ目標値より大きい値を示す経路が存在しなくなるまで、Ｓ７０７からＳ７１０の処理を繰り返す。一方、回路改善を行った後のチェック値がＳＴＡ目標値より大きい値を示す経路がない場合、タイミングチェック部１３は、回路改善後のネットリスト及び回路改善後の遅延情報を基に、対象集積回路のすべての経路についてＳＳＴＡによりタイミングチェックを行う。そして、タイミングチェック部１３は、すべての経路についてチェック値分布を算出する（Ｓ７１２）。
【００４０】
次に、歩留まり算出部１６は、対象集積回路のすべての経路についてＳ７１２の処理で算出したチェック値分布を用いて、回路改善後の集積回路の歩留まりを算出する（Ｓ７１３）。そして、歩留まり判定部１７は、回路改善後の集積回路の歩留まりが歩留まり目標の許容範囲にあるかを判定する（Ｓ７１４）。回路改善後の集積回路の歩留まりが歩留まり目標の許容範囲にない場合、Ｓ７０１からＳ７１４の処理を、再度の回路改善後の集積回路の歩留まりが歩留まり目標の許容範囲に収まるまで繰り返し行う。一方、回路改善後の集積回路の歩留まりが歩留まり目標の許容範囲にある場合、集積回路の歩留まりを歩留まり目標の許容範囲に収める処理を終了する。
【００４１】
このように、回路改善後の集積回路の歩留まりが歩留まり目標の許容範囲に収まるまで、回路改善とタイミングチェックの処理を繰り返し行う。また、歩留まり目標の許容範囲は、任意に設定できる。例えば、歩留まり目標が５０パーセントの場合、５０パーセントからプラス、マイナスで１パーセントの範囲内を許容範囲とすることができる。本実施形態によれば、対象集積回路の各経路についてＳＳＴＡのみを行ってタイミングエラーを改善させるよりも短時間に各経路のタイミングエラーを改善させることができる。そして、短時間のタイミングエラーの改善により、回路改善のターンアラウンドタイムの短縮が可能となる。
【００４２】
〈経路特定処理〉
次に経路特定処理について説明する。経路特定処理とは、集積回路の歩留まりを歩留まり目標の許容範囲に収める処理において、ＳＳＴＡを行う経路を特定する処理をいう。経路特定処理は、図７図示のＳ７０１からＳ７１０の処理を行う。
【００４３】
そして、Ｓ７１０の処理において、回路改善を行った後のチェック値がＳＴＡ目標値より大きい値を示す経路がない場合、経路特定部２１は、回路改善後のネットリスト及び回路改善後の遅延情報を基に、対象集積回路の各経路のうちＳＳＴＡを行う経路を特定する。経路の特定は、集積回路の歩留まりに影響する可能性のある遅延の大きな経路を特定する。集積回路の歩留まりに影響する可能性のある遅延の大きな経路は、Ｓ７０２及びＳ７０９の処理でＳＴＡを行った結果から決定する。
【００４４】
次に、上記によって特定した経路に限定して、Ｓ７１２からＳ７１４の処理を行う。このように、経路特定処理を行えば、特定した経路のみについてＳＳＴＡの対象とすることができ、ＳＳＴＡの処理時間を短縮することができる。そして、ＳＳＴＡの処理時間を短縮することにより、回路改善のターンアラウンドタイムを更に短縮することが可能となる。
【００４５】
〈ＳＴＡ目標値の決定処理〉
図８は、ＳＴＡ目標値の決定処理のフローである。タイミング改善を行った後の集積回路の歩留まりを歩留まり目標の許容範囲に収めるためには、ＳＴＡ目標値として最適な値を決定する必要がある。しかし、ＳＴＡ目標値の初期値として任意の値を設定した場合、任意の値がＳＴＡ目標値として最適な値となる可能性が低い。そこで、まずＳＴＡ目標値の初期値に仮定ＳＴＡ目標値を設定し、仮定ＳＴＡ目標値からＳＴＡ目標値として最適な値を決定する処理を行う。
【００４６】
まず、仮定ＳＴＡ目標値設定部１４は、仮定ＳＴＡ目標値として任意の値を設定する（Ｓ８０１）。次に、ＳＳＴＡ予測部１５は、対象集積回路の各経路のチェック値が仮定ＳＴＡ目標値まで改善された場合の各経路のチェック値分布を予測する（Ｓ８０２）。そして、歩留まり算出部１６は、予測後のチェック値分布から集積回路の歩留まりを算出する（Ｓ８０３）。次に、歩留まり判定部１７は、Ｓ８０３の処理で算出した集積回路の歩留まりが歩留まり目標の許容範囲にあるかを判定する（Ｓ８０４）。ＳＴＡ目標値決定部１８は、Ｓ８０３の処理で算出した集積回路の歩留まりが歩留まり目標の許容範囲にある場合、仮定ＳＴＡ目標値の値をＳＴＡ目標値として決定する（Ｓ８０５）。そして、ＳＴＡ目標値が決定された場合、ＳＴＡ目標値の決定処理を終了する。
【００４７】
一方、歩留まり判定部１７は、Ｓ８０３の処理で算出した集積回路の歩留まりが歩留まり目標の許容範囲にない場合、Ｓ８０３の処理で算出した集積回路の歩留まりが歩留まり目標より小さいかを判定する（Ｓ８０６）。Ｓ８０３の処理で算出した集積回路の歩留まりが歩留まり目標より小さい場合、仮定ＳＴＡ目標値設定部１４は、Ｓ８０１で設定した仮定ＳＴＡ目標値より小さい値を新たな仮定ＳＴＡ目標値として設定する（Ｓ８０７）。一方、Ｓ８０３の処理で算出した集積回路の歩留まりが歩留まり目標より大きい場合、仮定ＳＴＡ目標値設定部１４は、Ｓ８０１で設定した仮定ＳＴＡ目標値より大きい値を新たな仮定ＳＴＡ目標値として設定する（Ｓ８０８）。
【００４８】
次に、新たな仮定ＳＴＡ目標値を設定した後に、回路改善の処理を実行する。その後、Ｓ８０２の処理に戻り、ＳＳＴＡ予測部１５は、Ｓ８０７又はＳ８０８の処理で設定した新たな仮定ＳＴＡ目標値まで改善された後の各経路のチェック値分布を予測する。新たな仮定ＳＴＡ目標値を直前に設定した仮定ＳＴＡ目標値より小さい値とすれば、予測後のチェック値分布から算出した集積回路の歩留まりは低い値を示す。また、新たな仮定ＳＴＡ目標値を直前に設定した仮定ＳＴＡ目標値より大きい値とすれば、予測後のチェック値分布から算出した集積回路の歩留まりは高い値を示す。この性質を利用してタイミング改善を行った後の集積回路の歩留まりを歩留まり目標の許容範囲に収めるために最適な値となるＳＴＡ目標値を決定する。例えば、二分法を利用することにより、仮定ＳＴＡ目標値を何度か設定して、タイミング改善を行った後の集積回路の歩留まりと歩留まり目標とが精度的に問題のない差の範囲内になるようなＳＴＡ目標値を決定することができる。このように、ＳＴＡ目標値が決定されるまでＳ８０２からＳ８０８の処理を繰り返す。
【００４９】
また、本実施形態では、セットアップタイムチェックによりタイミング解析を行った結果としてチェック値を算出している。しかし、ホールドタイムチェックによりタイミング解析を行った結果としてチェック値を算出した場合には、新たな仮定ＳＴＡ目標値を設定する値は、上述した値とは逆になる。
【００５０】
〈チェック値分布予測処理〉
次にＳＴＡ目標値の決定処理における各集積回路の各経路のチェック値が仮定ＳＴＡ目標値まで改善された場合の、各経路のチェック値分布を予測する処理について説明する。
【００５１】
図９は、チェック値分布予測処理のフローである。まず、ＳＳＴＡ予測部１５は、対象集積回路のすべての経路について、チェック値が仮定ＳＴＡ目標値より大きいかを判定する（Ｓ９０１）。経路のチェック値が仮定ＳＴＡ目標値より大きい場合、ＳＳＴＡ予測部１５は、その経路のチェック値分布をチェック値が小さい方向へ平行移動する。そして、ＳＳＴＡ予測部１５は、平行移動したチェック値分布を予測後のチェック値分布とする（Ｓ９０２）。チェック値分布をチェック値が小さい方向へ平行移動させる値は、任意の値とすることができる。例えば、対象集積回路の各経路のチェック値から仮定ＳＴＡ目標値を引いた値だけ、チェック値分布をチェック値が小さい方向へ平行移動させることができる。
【００５２】
図１０)は、集積回路の経路のチェック値（図１０のｄ１）から仮定ＳＴＡ目標値（図
１０のｄ０）を引いた値だけチェック値分布（図１０の曲線Ｅ）をチェック値が小さい方向へ平行移動させた場合の図である。図１０における横軸は、経路のチェック値を示している。図１０では、右方向をチェック値が大きい方向とし、左方向をチェック値が小さい方向としている。図１０の曲線Ｅは、経路のチェック値分布を表している。また、図１０の曲線Ｆは、曲線Ｅを平行移動させた曲線であり、経路のチェック値が仮定ＳＴＡ目標値まで改善された場合の予測後のチェック値分布を表している。図１０では、ｄ１は経路のチェック値を示している。また、ｄ０は経路のＳＴＡ目標値を示している。そして、ｄ１−ｄ０の値だけ曲線Ｅで表されるチェック値分布をチェック値の小さい方向（左方向）へ平行移動させている。
【００５３】
一方、経路のチェック値が仮定ＳＴＡ目標値より小さい場合、ＳＳＴＡ予測部１５は、その経路のチェック値分布を予測後のチェック値分布とする（Ｓ９０３）。そして、ＳＳＴＡ予測部１５は、対象集積回路のすべての経路について予測後のチェック値分布を決定する（Ｓ９０４）。対象集積回路のすべての経路について予測後のチェック値分布を決定した場合、チェック値分布予測処理を終了する。
【００５４】
図１０では、ｄ１−ｄ０の値だけ曲線Ｅで表されるチェック値分布をチェック値の小さい方向（左方向）へ平行移動させている。しかし、本実施形態では、これに限定されるものではなく、例えば、ｄ１−ｄ０の値に０．７を掛けた値を使ってチェック値分布を平行移動させてもよい。また、本実施形態では、セットアップタイムチェックによりタイミング解析を行った結果としてチェック値を算出している。しかし、ホールドタイムチェックによりタイミング解析を行った結果としてチェック値を算出した場合には、チェック値分布を平行移動させる方向は逆（右方向）になる。
【００５５】
〈チェック値分布から集積回路の歩留まりを算出する処理〉
次に、対象集積回路の各経路のチェック値分布から集積回路の歩留まりを算出する処理を説明する。まず、タイミングチェック部１３は、対象集積回路のすべての経路についてＳＳＴＡを行い、チェック値分布を算出する。そして、歩留まり算出部１６は、対象集積回路のすべての経路のチェック値分布を累積分布関数に変換する。次に、歩留まり算出部１６は、対象集積回路のすべての経路の累積分布関数を累積的に掛けて算出した値を集積回路の歩留まりとする。
【００５６】
〔第２実施例〕
第１実施例では、チェック値分布予測処理において、対象集積回路の各経路のチェック
値から仮定ＳＴＡ目標値を引いた値だけ、チェック値分布をチェック値が小さい方向へ平行移動させている。第２実施例では、実験的、経験的に求めた係数を使用することにより、平行移動の値を係数で調整する。この場合、経路の分岐、合流などの回路のトポロジーから経路ごとに係数を変化させることもできる。また、チェック値分布予測処理において、チェック値分布を平行移動させるのではなく、チェック値分布の形を変形して予測後のチェック値分布とすることもできる。この場合、経路の分岐、合流などの回路のトポロジーから経路ごとにチェック値分布の形を変形して予測後のチェック値分布とすることもできる。第２実施例において、他の構成及び作用は第１実施例と同様である。
【００５７】
〈コンピュータ読み取り可能な記録媒体〉
コンピュータに上記いずれかの機能を実現させるプログラムをコンピュータが読み取り可能な記録媒体に記録することができる。そして、コンピュータに、この記録媒体のプログラムを読み込ませて実行させることにより、その機能を提供させることができる。ここで、コンピュータ読み取り可能な記録媒体とは、データやプログラム等の情報を電気的、磁気的、光学的、機械的、または化学的作用によって蓄積し、コンピュータから読み取ることができる記録媒体をいう。このような記録媒体のうちコンピュータから取り外し可能なものとしては、例えばフレキシブルディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ／Ｗ、ＤＶＤ、ＤＡＴ、８ｍｍテープ、メモリカード等がある。また、コンピュータに固定された記録媒体としてハードディスクやＲＯＭ（リードオンリーメモリー）等がある。
【図面の簡単な説明】
【００５８】
【図１】目標値を下回るチェック値を示す経路数の分布の例を示した図である。
【図２】集積回路の歩留まりを算出した場合の分布の例を示した図である。
【図３】新たなＳＴＡ目標値を設定した場合において、チェック値に対する経路数の分布の例を示した図である。
【図４】新たなＳＴＡ目標値を設定した場合における集積回路の歩留まりの分布を予測した例を示した図である。
【図５】本実施形態による集積回路のレイアウト装置を搭載したＣＡＤ装置の構成図である。
【図６】本実施形態に係る集積回路レイアウト装置の構成図である。
【図７】集積回路の歩留まりを歩留まり目標の許容範囲に収める処理のフローである。
【図８】ＳＴＡ目標値の決定処理のフローである。
【図９】チェック値分布予測処理のフローである。
【図１０】集積回路の経路のチェック値から仮定ＳＴＡ目標値を引いた値だけチェック値分布をチェック値が小さい方向へ平行移動させた場合の図である。
【図１１】ＳＳＴＡ結果データベース及びＳＴＡ結果データベースに記録されているデータの例を示した図である。
【符号の説明】
【００５９】
１    ＣＰＵ（Central Processing Unit）
２    ＲＯＭ（Read Only Memory）
３    ＲＡＭ（Random Access Memory）
４    外部記憶装置
５    操作部
６    表示部
７    インターフェース部
１１  集積回路レイアウト装置
１２  遅延計算部
１３  タイミングチェック部
１４  仮定ＳＴＡ目標値設定部
１５  ＳＳＴＡ予測部
１６  歩留まり算出部
１７  歩留まり判定部
１８  ＳＴＡ目標値決定部
１９  経路検出部
２０  タイミング改善部
２１  経路特定部
２２  制御部
２３  記録部
３１  レイアウトデータベース
３２  遅延データベース
３３  ネットリストデータベース
３４  ＳＳＴＡ結果データベース
３５  ＳＴＡ結果データベース
【図１】
0004774294.tif 000002
【図２】
0004774294.tif 000003
【図３】
0004774294.tif 000004
【図４】
0004774294.tif 000005
【図５】
0004774294.tif 000006
【図６】
0004774294.tif 000007
【図７】
0004774294.tif 000008
【図８】
0004774294.tif 000009
【図９】
0004774294.tif 000010
【図１０】
0004774294.tif 000011
【図１１】
0004774294.tif 000012