(57)【要約】【課題】従来のタイミング解析方法では、異なる遅延値が設定される複数の回路セル間の相対的なばらつきを考慮したタイミング解析を行うことができない問題があった。【解決手段】一実施の形態によれば、タイミング解析プログラムは、第１の回路セルの第１の遅延値のばらつき幅を第１のばらつき係数に基づき面した第１の解析条件と、第２の回路セルの第２の遅延値のばらつき幅を第２のばらつき係数に基づきずらした第２の解析条件と、を生成する解析条件生成処理を行う。【選択図】図１
2013222248.tif 000002
【特許請求の範囲】
【請求項１】
演算器において実行され、第１の遅延値を有する第１の回路セルと、前記第１の遅延値とは異なる第２の遅延値を有する第２の回路セルと、を含む設計回路のタイミング解析を演算器に行わせるタイミング解析プログラムであって、
記憶部から、前記第１の回路セルの前記第１の遅延値のばらつき幅と、前記第２の回路セルの前記第２の遅延値のばらつき幅と、を規定したばらつき範囲情報を読み出し、
前記記憶部から、前記第１の遅延値のばらつき幅のずれ量を示す第１のばらつき係数と、前記第２の遅延値のばらつき幅のずれ量を示す第２のばらつき係数と、を含むばらつき係数情報を読み出し、
前記第１の遅延値のばらつき幅を前記第１のばらつき係数に基づきずらした第１の解析条件と、前記第２の遅延値のばらつき幅を前記第２のばらつき係数に基づきずらした第２の解析条件と、を生成する解析条件生成処理を行うタイミング解析プログラム。
【請求項２】
前記第１、第２のばらつき係数は、それぞれ、前記第１の遅延値と前記第２の遅延値とが小さくなる方向にずれる条件を示すアーリー条件と、前記第１の遅延値と前記第２の遅延値とが大きくなる方向にずれる条件を示すレイト条件と、を含む請求項１に記載のタイミング解析プログラム。
【請求項３】
前記第１、第２のばらつき係数の一方は、遅延値のばらつき幅のずれ量をゼロとする係数を有し、
前記第１、第２のばらつき係数の他方は、前記第１の遅延値のばらつき幅のずれ量と、前記第２の遅延値のばらつき幅のずれ量と、を含む係数を含む請求項１に記載のタイミング解析プログラム。
【請求項４】
前記解析条件生成処理では、前記第１、第２のばらつき係数から選択したばらつき係数を用いて前記第１、第２の解析条件を生成する請求項１に記載のタイミング解析プログラム。
【請求項５】
前記第１、第２の遅延値は、信号の遅延時間のばらつき量をパスの端点間の距離と前記パス内の回路セル段数とに基づきテーブル情報としたＯＣＶ（On Chip Variation）テーブルである請求項１に記載のタイミング解析プログラム。
【請求項６】
前記第１の解析条件と、前記第２の解析条件と、を用いて前記設計回路のタイミング解析を行う請求項１に記載のタイミング解析プログラム。
【請求項７】
前記タイミング解析では、前記設計回路の全体に対して予め設定されたパラメータを適用した第１のタイミング解析を行い、前記第１のタイミング解析の解析結果に基づきタイミング余裕度が予め決められた基準値よりも小さな違反候補パスを抽出し、前記違反候補パスに対して前記第１、第２の解析条件を用いた第２のタイミング解析を行う請求項６に記載のタイミング解析プログラム。
【請求項８】
前記違反候補パスは、異なる閾値電圧を有する複数の回路セルが含まれるパスから抽出される請求項７に記載のタイミング解析プログラム。
【請求項９】
前記第２のタイミング解析に基づき違反レポートを生成し、前記違反レポートと前記第１のタイミング解析の解析結果と、前記違反レポートの情報とをマージしてタイミング解析結果を生成する請求項７に記載のタイミング解析プログラム。
【請求項１０】
前記第１の遅延値は前記第１の遅延値のばらつき幅の基準値となる値であって、前記第１の解析条件は前記第１の遅延値を前記第１のばらつき係数に基づきずらした第１の遅延ばらつき値を含み、
前記第２の遅延値は前記第２の遅延値のばらつき幅の基準値となる値であって、前記第２の解析条件は、前記第２の遅延値を前記第２のばらつき係数に基づきずらした第２の遅延ばらつき値を含む請求項１に記載のタイミング解析プログラム。
【請求項１１】
第１の遅延値を有する第１の回路セルと、前記第１の遅延値とは異なる第２の遅延値を有する第２の回路セルと、を含む設計回路のタイミング解析を演算器に行わせるタイミング解析装置であって、
記憶部から、前記第１の回路セルの前記第１の遅延値のばらつき幅と、前記第２の回路セルの前記第２の遅延値のばらつき幅と、を規定したばらつき範囲情報を読み出し、
前記記憶部から、前記第１の遅延値のばらつき幅のずれ量を示す第１のばらつき係数と、前記第２の遅延値のばらつき幅のずれ量を示す第２のばらつき係数と、を含むばらつき係数情報を読み出し、
前記第１の遅延値のばらつき幅を前記第１のばらつき係数に基づきずらした第１の解析条件と、前記第２の遅延値のばらつき幅を前記第２のばらつき係数に基づきずらした第２の解析条件と、を生成する解析条件生成処理を行うタイミング解析装置。
【請求項１２】
前記第１、第２のばらつき係数は、それぞれ、前記第１の遅延値と前記第２の遅延値とが小さくなる方向にずれる条件を示すアーリー条件と、前記第１の遅延値と前記第２の遅延値とが大きくなる方向にずれる条件を示すレイト条件と、を含む請求項１１に記載のタイミング解析装置。
【請求項１３】
前記第１、第２のばらつき係数の一方は、遅延値のばらつき幅のずれ量をゼロとする係数を有し、
前記第１、第２のばらつき係数の他方は、前記第１の遅延値のばらつき幅のずれ量と、第２の遅延値のばらつき幅のずれ量と、を含む係数を含む請求項１１に記載のタイミング解析プログラム。
【請求項１４】
前記解析条件生成処理では、前記第１、第２のばらつき係数から選択したばらつき係数を用いて前記第１、第２のばらつき解析条件を生成する請求項１１に記載のタイミング解析装置。
【請求項１５】
前記第１、第２の遅延値は、信号の遅延時間のばらつき量をパスの端点間の距離と前記パス内の回路セル段数とに基づきテーブル情報としたＯＣＶ（On Chip Variation）テーブルである請求項１１に記載のタイミング解析プログラム。
【請求項１６】
前記第１の解析条件と、前記第２の解析条件と、を用いて前記設計回路のタイミング解析を行う請求項１１に記載のタイミング解析プログラム。
【請求項１７】
前記タイミング解析では、前記設計回路の全体に対して予め設定されたパラメータを適用した第１のタイミング解析を行い、前記第１のタイミング解析の解析結果に基づきタイミング余裕度が予め決められた基準値よりも小さな違反候補パスを抽出し、前記違反候補パスに対して前記第１、第２の解析条件を用いた第２のタイミング解析を行う請求項１６に記載のタイミング解析プログラム。
【請求項１８】
前記第１の遅延値は前記第１の遅延値のばらつき幅の基準値となる値であって、前記第１の解析条件は前記第１の遅延値を前記第１のばらつき係数に基づきずらした第１の遅延ばらつき値を含み、
前記第２の遅延値は前記第２の遅延値のばらつき幅の基準値となる値であって、前記第２の解析条件は、前記第２の遅延値を前記第２のばらつき係数に基づきずらした第２の遅延ばらつき値を含む請求項１１に記載のタイミング解析プログラム。
【請求項１９】
第１の遅延値を有する第１の回路セルと、前記第１の遅延値とは異なる第２の遅延値を有する第２の回路セルと、を含む設計回路のタイミング解析を演算器に行わせるタイミング解析方法であって、前記演算器に、
記憶部から、前記第１の回路セルの前記第１の遅延値のばらつき幅と、前記第２の回路セルの前記第２の遅延値のばらつき幅と、を規定したばらつき範囲情報を読み出し、
前記記憶部から、前記第１の遅延値のばらつき幅のずれ量を示す第１のばらつき係数と、前記第２の遅延値のばらつき幅のずれ量を示す第２のばらつき係数と、を含むばらつき係数情報を読み出し、
前記第１の遅延値のばらつき幅を前記第１のばらつき係数に基づきずらした第１の解析条件と、前記第２の遅延値のばらつき幅を前記第２のばらつき係数に基づきずらした第２の解析条件と、を生成する解析条件生成処理を行わせるタイミング解析方法。
【請求項２０】
前記第１の解析条件と、前記第２の解析条件と、を用いて前記設計回路のタイミング解析を行う請求項１９に記載のタイミング解析方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はタイミング解析プログラム、タイミング解析装置及びタイミング解析方法に関し、例えば、異なる閾値を有する複数の種類のトランジスタにより形成される半導体集積回路のタイミング解析プログラム、タイミング解析装置及びタイミング解析方法に関する。
【背景技術】
【０００２】
近年、半導体装置の高速化が進んでいる。そのため、論理回路に対するセットアップタイム及びホールドタイムのタイミング制約が厳しくなっている。そこで、設計段階においてタイミング制約を検証するタイミング解析が設計の一工程で行われる。このタイミング解析で用いられるパラメータの生成方法の一例が特許文献１に開示されている。
特許文献１では、プロセス感度パラメータのばらつき分布に基づいて、多項式を用いた数学的分析により半導体集積回路の特性分布を抽出する技術が開示されている。特許文献１では、当該手法により、半導体集積回路の特性のばらつき分布を効率的に抽出する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−１３３４９７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
近年の半導体装置では、動作の高速化と合わせて、低消費電力化の要求が高まっている。そのため、２つの特性を満足するために、１つの半導体装置に複数の閾値電圧を有する回路セルを配置することが行われている。例えば、動作速度に対する要求に対しては低い閾値電圧を有する回路セルを配置し、動作速度に対する要求が低い部分については高い閾値電圧を有する回路セルを配置することで、高速動作と低消費電力との２つの仕様を満足させる設計が行われる。
【０００５】
このような設計を行った半導体集積回路では、異なる閾値電圧を有する回路セル毎に異なるばらつき特性を有する。しかしながら、特許文献１に記載の技術を用いて半導体集積回路の特性のばらつき分布を抽出しても、異なる閾値電圧を有する回路セル間のばらつき分布を抽出できない問題がある。その他の課題と新規な特徴は、本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【０００６】
一実施の形態によれば、タイミング解析プログラム、タイミング解析装置及びタイミング解析方法は、第１の回路セルの第１の遅延値のばらつき幅を第１のばらつき係数に基づき面した第１の解析条件と、第２の回路セルの第２の遅延値のばらつき幅を第２のばらつき係数に基づきずらした第２の解析条件と、を生成する解析条件生成処理を行う。
【発明の効果】
【０００７】
一実施の形態によれば、タイミング解析プログラム、タイミング解析装置及びタイミング解析方法は、解析条件にセル間のばらつき成分を考慮した解析条件を生成することができる。
【図面の簡単な説明】
【０００８】
【図１】実施の形態１にかかるタイミング解析装置のブロック図である。
【図２】実施の形態１にかかるＯＣＶテーブルの一例を示す概略図である。
【図３】実施の形態１にかかるばらつき係数情報の一例を示す概略図である。
【図４】実施の形態１にかかる第１の解析条件のうち第１のばらつき方向の解析情報の一例を示す概略図である。
【図５】実施の形態１にかかる第１の解析条件のうち第２のばらつき方向の解析情報の一例を示す概略図である。
【図６】実施の形態１にかかるタイミング解析装置において利用されるＯＣＶテーブルにより規定されるディレイティング値のばらつき範囲を示す概略図である。
【図７】実施の形態１にかかるタイミング装置において利用される解析条件により規定されるディレイティング値のばらつき範囲を示す概略図である。
【図８】実施の形態１にかかるタイミング装置において利用される解析条件により規定されるディレイティング値のばらつき範囲を示す概略図である。
【図９】実施の形態１にかかるタイミング解析装置において解析対象とされる回路の一例を示す回路図である。
【図１０】実施の形態１にかかるタイミング解析装置においてセットアップタイムのタイミング解析を行う場合に用いるＯＣＶテーブルを説明するための図である。
【図１１】実施の形態１にかかるタイミング解析装置においてホールドタイムのタイミング解析を行う場合に用いるＯＣＶテーブルを説明するための図である。
【図１２】実施の形態１にかかるタイミング解析装置におけるタイミング解析の種類を説明するための図である。
【図１３】実施の形態２にかかるタイミング解析装置のブロック図である。
【図１４】実施の形態２にかかるばらつき係数情報の一例を示す概略図である。
【図１５】実施の形態２にかかるタイミング装置において利用される解析条件により規定されるディレイティング値のばらつき範囲を示す概略図である。
【図１６】実施の形態２にかかるタイミング装置において利用される解析条件により規定されるディレイティング値のばらつき範囲を示す概略図である。
【図１７】実施の形態２にかかるタイミング解析装置におけるタイミング解析の種類を説明するための図である。
【図１８】実施の形態３にかかるタイミング解析装置のブロック図である。
【図１９】実施の形態４にかかるタイミング解析装置のブロック図である。
【図２０】実施の形態５にかかるタイミング解析装置のブロック図である。
【図２１】実施の形態５にかかるタイミング解析装置に入力される回路情報に含まれる遅延情報の概略図である。
【図２２】実施の形態５にかかるタイミング解析装置において解析条件として生成される解析回路情報に含まれる遅延情報の概略図である。
【発明を実施するための形態】
【０００９】
実施の形態１
以下、図面を参照して実施の形態について説明する。まず、以下の説明では、タイミング解析装置について説明する。このタイミング解析装置は、演算器にタイミング解析プログラムを実行させることで実現されるものとして説明する。しかし、当該タイミング解析プログラムにより実現される機能をハードウェアにより実現することも可能である。また、タイミング解析プログラムは、タイミング解析装置と共に利用される記憶部に格納され、演算器はこのタイミング解析プログラムを読み出して実行するものとする。
【００１０】
また、タイミング解析プログラムは、様々なタイプの非一時的なコンピュータ可読媒体（non-transitory computer readable medium）を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体（tangible storage medium）を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体（例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（例えば光磁気ディスク）、ＣＤ−ＲＯＭ（Read Only Memory）ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ（Programmable ROM）、ＥＰＲＯＭ（Erasable PROM）、フラッシュＲＯＭ、ＲＡＭ（Random Access Memory））を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体（transitory computer readable medium）によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【００１１】
図１に実施の形態１にかかるタイミング解析装置１のブロック図を示す。図１に示すように、タイミング解析装置１は、演算部１０と記憶部とを有する。演算部１０は、図示しない記憶部からタイミング解析プログラムを読み込み、解析条件生成部１１及びタイミング解析部１２の機能を実現する。演算部１０は、第１の遅延値を有する第１の回路セルと、第１の遅延値とは異なる第２の遅延値を有する第２の回路セルと、を含む設計回路のタイミング解析を行う。
【００１２】
なお、以下の説明では、遅延値が異なる３種類の回路セルを含む設計回路について説明するが、この３つの回路セルのうちの１つが第１の回路セルに相当するものであり、他の２つの遅延値のうちの１つが第２の回路セルに相当するものである。より具体的には、本実施の形態で処理対象とする設計回路は、最も遅延値の絶対値が大きな低閾値セルと、遅延値の絶対値が中程度の中閾値セルと、遅延値の絶対値が最も小さな高閾値セルを含む。そして、低閾値セル、中閾値セル及び高閾値セルのうち１つが第１の回路セルに相当し、他の２つの回路セルのうちの１つが第２の回路セルに相当する。
【００１３】
解析条件生成部１１は、記憶部から、第１の回路セルの第１の遅延値のばらつき幅と、第２の回路セルの第２の遅延値のばらつき幅と、を規定したばらつき範囲情報（例えば、ＯＣＶテーブル）を読み出す。より具体的には、解析条件生成部１１は、記憶部から、低閾値セルＯＣＶ（On Chip Variation）テーブルＦ１１、中閾値セルＯＣＶテーブルＦ１２、高閾値セルＯＣＶテーブルＦ１３を読み出す。
【００１４】
低閾値セルＯＣＶテーブルＦ１１は、低閾値セルについての遅延値のばらつき幅を規定したテーブル情報である。中閾値セルＯＣＶテーブルＦ１２は、中閾値セルについての遅延値のばらつき幅を規定したテーブル情報である。高閾値セルＯＣＶテーブルＦ１３は、高閾値セルについての遅延値のばらつき幅を規定したテーブル情報である。なお、各セルの遅延値のばらつき幅は、低閾値セルが最も狭く、高閾値セルが最も広いという関係を有する。
【００１５】
また、ＯＣＶテーブルにおいて規定される第１、第２の遅延値は、信号の遅延時間のばらつき量をパスの端点間の距離とパス内の回路セル段数とに基づきテーブル情報としたものである。
【００１６】
また、解析条件生成部１１は、記憶部から、第１の遅延値のばらつき幅のずれ量を示す第１のばらつき係数と、第２の遅延値のばらつき幅のずれ量を示す第２のばらつき係数と、を含むばらつき係数情報Ｆ２１を読み出す。ばらつき係数情報Ｆ２１には、閾値電圧の異なる回路セルのそれぞれに対応するばらつき係数が含まれる。より具体的には、ばらつき係数情報Ｆ２１には、低閾値セル（図１ではＬＶＴと表記した）についてのアーリー条件及びレイト条件、中閾値セル（図１ではＭＶＴと表記した）についてのアーリー条件及びレイト条件、高閾値セル（図１ではＨＶＴと表記した）についてのアーリー条件及びレイト条件が含まれる。
【００１７】
ばらつき係数情報Ｆ２１には、３つのばらつき係数が含まれるが、この３つのばらつき係数のうち１つが第１のばらつき係数に相当し、他の２つのばらつき係数の１つが第２のばらつき係数に相当する。より具体的には、低閾値セル、中閾値セル及び高閾値セルのそれぞれに対応したばらつき係数の１つが第１のばらつき係数に相当し、他の２つの回路セルに対応したばらつき係数の１つが第２のばらつき係数に相当する。
【００１８】
また、第１、第２のばらつき係数は、それぞれ、第１の遅延値と第２の遅延値とが小さくなる方向にずれる条件を示すアーリー条件と、第１の遅延値と第２の遅延値とが大きくなる方向にずれる条件を示すレイト条件と、の一方を少なくとも含む。ここで、アーリー条件とは、セルを構成するトランジスタの閾値電圧が低くばらついた時の遅延値の変動率を規定したものでありレイト条件とは、セルを構成するトランジスタの閾値電圧が高くばらついた時の遅延値の変動率を規定したものである。
【００１９】
そして、解析条件生成部１１は、第１のばらつき幅を第１のばらつき係数に基づきずらした第１の解析条件と、第２のばらつき幅を第２のばらつき係数に基づきずらした第２の解析条件と、を生成する解析条件生成処理を行う。ここで、実施の形態１にかかるタイミング解析装置１では、第１の解析条件及び第２の解析条件として、解析条件テーブルを生成する。実施の形態１にかかるタイミング解析装置１では、低閾値セル、中閾値セル及び高閾値セルのそれぞれ対応した複数の解析条件テーブルが生成される。このとき、低閾値セル、中閾値セル及び高閾値セルのそれぞれ対応した複数の解析条件テーブルのうち１つが第１の解析条件に相当し、他の２つの解析条件テーブルの１つが第２の解析条件テーブルが相当する。
【００２０】
また、実施の形態１にかかるタイミング解析装置１では、１つの解析条件は、２つの解析条件テーブルにより構成される。より具体的には、低閾値セルに対応した解析条件には、解析条件テーブルＦ３１及び解析条件テーブルＦ３２を含む。解析条件テーブルＦ３１は、低閾値セルのアーリー条件を規定したばらつき係数に基づき遅延値のばらつき幅（例えば、低閾値セルＯＣＶテーブルＦ１１）をずらしたＯＣＶテーブルである。解析条件テーブルＦ３２は、低閾値セルのレイト条件を規定したばらつき係数に基づき遅延値のばらつき幅（例えば、低閾値セルＯＣＶテーブルＦ１１）をずらしたＯＣＶテーブルである。中閾値セルに対応した解析条件には、解析条件テーブルＦ３３及び解析条件テーブルＦ３４を含む。解析条件テーブルＦ３３は、中閾値セルのアーリー条件を規定したばらつき係数に基づき遅延値のばらつき幅（例えば、中閾値セルＯＣＶテーブルＦ１２）をずらしたＯＣＶテーブルである。解析条件テーブルＦ３４は、中閾値セルのレイト条件を規定したばらつき係数に基づき遅延値のばらつき幅（例えば、中閾値セルＯＣＶテーブルＦ１２）をずらしたＯＣＶテーブルである。高閾値セルに対応した解析条件には、解析条件テーブルＦ３５及び解析条件テーブルＦ３６を含む。解析条件テーブルＦ３５は、高閾値セルのアーリー条件を規定したばらつき係数に基づき遅延値のばらつき幅（例えば、高閾値セルＯＣＶテーブルＦ１３）をずらしたＯＣＶテーブルである。解析条件テーブルＦ３６は、高閾値セルのレイト条件を規定したばらつき係数に基づき遅延値のばらつき幅（例えば高閾値セルＯＣＶテーブルＦ１３）をずらしたＯＣＶテーブルである。
【００２１】
タイミング解析部１２は、第１の解析条件と、第２の解析条件と、を用いて回路情報Ｆ４１に記載された設計回路のタイミング解析を行う。より具体的には、タイミング解析部１２は、記憶部から回路情報Ｆ４１及びタイミング制約情報Ｆ４２を読み込み、さらに、記憶部から解析条件テーブルＦ３１〜Ｆ３６を読み込んで、解析条件テーブルに記載された遅延値を適用した回路情報Ｆ４１のタイミング解析を行う。そして、タイミング解析部１２は、回路情報Ｆ４１に含まれる回路セル間を接続するパスの信号伝達タイミングがタイミング制約情報Ｆ４２に規定されたタイミング制約に違反しているか否かをタイミング解析結果Ｆ４３として出力する。
【００２２】
続いて、実施の形態１にかかるタイミング解析装置１においてばらつき範囲情報として利用されるＯＣＶテーブルの詳細について説明する。図２に、実施の形態１にかかるＯＣＶテーブルの一例を示す概略図を示す。図２に示したＯＣＶテーブルは、中閾値セルＯＣＶテーブルＦ１２をＯＣＶテーブルの一例として示したものである。
【００２３】
図２に示すようにばらつき幅情報として利用されるＯＣＶテーブルは、遅延値のばらつき幅の上限値を示すレイト側ディレイティング値が規定されるテーブル（例えば、MAX-Hold-Late）と、遅延値のばらつき幅の下限値を示すアーリー側ディレイティング値が規定されるテーブル（例えば、MAX-Hold-Early）と、を含む。そして、それぞれのテーブルは、セルの閾値を規定する記載（例えば、Cell MVT）が記述される。また、セルの閾値を規定する記載の次の行に、解析対象のパスに含まれるセルの段数に関する定義が記載される。ＯＣＶテーブルの列方向には、この回路セル段数毎のディレイティング値が記載される。また、セルの段数に関する定義の記載が記載された行の次の行には、解析対象のパスの端点間の距離Ｄに関する定義が記載される。ＯＣＶテーブルの行はこの距離Ｄ毎のディレイティング値が記載される。そして、パスの端点間の距離Ｄの定義が記載された行の次の行からＯＣＶテーブルが記載される。図２に示す例では、ＯＣＶテーブルの１行目には、距離Ｄが０の時のディレイティング値のテーブル情報が記載され、２行目には距離が５００の時のディレイティング値のテーブル情報が記載される。
【００２４】
続いて、実施の形態１にかかるタイミング解析装置１において利用されるばらつき係数情報の詳細について説明する。図３に実施の形態１にかかるばらつき係数情報の一例を示す概略図である。図３に示すように、ばらつき係数情報は、ばらつき係数を与えるセルの種類を識別する記載に続けて、アーリー条件とレイト条件とが記載される。例えば、低閾値セルに対応する記載では、まず、セルの種類を示す記載（例えば、ＬＶＴ）に続けて、アーリー条件として０．９５６が記載され、その次にレイト条件として１．０５０が記載される。
【００２５】
続いて、実施の形態１にかかるタイミング解析装置１において生成される解析条件テーブルの詳細について説明する。図４及び図５に実施の形態１にかかる第１の解析条件のうち第１のばらつき方向の解析情報の一例を示す概略図を示す。図４では、アーリー条件に基づきＯＣＶテーブルを修正した解析条件テーブルの一例として解析条件テーブルＦ３３を示したものである。また、図５では、レイト条件に基づきＯＶＣＶテーブルを修正した解析条件テーブルの一例として解析条件テーブルＦ３４を示した。
【００２６】
図４に示すように解析条件テーブルＦ３３は、図２に示したＯＣＶテーブルのディレイティング値に、図３で示した中閾値セルのアーリー条件の値である０．９４６を乗じた値をディレイティング値として有する。また、図５に示すように解析条件テーブルＦ３４は、図２に示したＯＣＶテーブルのディレイティング値に、図３で示した中閾値セルのレイト条件の値である１．０４３を乗じた値をディレイティング値として有する。
【００２７】
ここで、実施の形態１にかかるタイミング解析装置１に対して入力するＯＣＶテーブルにより与えられる遅延値のばらつき幅と、タイミング解析装置１が生成する解析条件テーブルにより示される遅延値のばらつき幅と、の関係について説明する。
【００２８】
そこで、まず、図６に実施の形態１にかかるタイミング解析装置において利用されるＯＣＶテーブルにより規定されるディレイティング値のばらつき範囲を示す概略図を示す。図６に示した回路セル毎のディレイティング値のばらつき範囲は、各回路セルに対して与えられるばらつき範囲の中心値を正規化したものである。図６に示すように、タイミング解析装置１に入力されるＯＣＶテーブルでは、低閾値セルのばらつき範囲が最も狭く、高閾値セルのばらつき範囲が最も広くなる。
【００２９】
また、図６に示す例では、遅延値のばらつき幅の上限値と下限値にそれぞれ符号を付した。より具体的には、低閾値セルＬＶＴの遅延値のばらつき幅は、下限値ＬＥと上限値ＬＬにより示される範囲を有する。中閾値セルＭＶＴの遅延値のばらつき幅は、下限値ＭＥと上限値ＭＬにより示される範囲を有する。高閾値セルＨＶＴの遅延値のばらつき幅は、下限値ＨＥと上限値ＨＬにより示される範囲を有する。
【００３０】
続いて、実施の形態１にかかるタイミング装置において利用される解析条件により規定されるディレイティング値のばらつき範囲を示す概略図を図７に示す。図７で示す解析条件テーブルは、入力されるＯＣＶテーブルにばらつき係数としてアーリー条件を適用することで生成されるものである。図７に示すように、アーリー条件を適用して生成された解析条件テーブルは、ばらつき係数が１．０（つまり、ばらつき係数を未適用の場合）に比べてばらつき範囲がアーリー側（値が小さくなる側）に更新される。より具体的には、各ばらつき範囲は、上限値と下限値により示されるばらつき幅は図６に示したばらつき幅をほぼ維持しながら、その範囲がアーリー側にずれる。
【００３１】
また、実施の形態１にかかるタイミング装置において利用される解析条件により規定されるディレイティング値のばらつき範囲を示す概略図を図８に示す。図８で示す解析条件テーブルは、入力されるＯＣＶテーブルにばらつき係数としてレイト条件を適用することで生成されるものである。図８に示すように、レイト条件を適用して生成された解析条件テーブルは、ばらつき係数が１．０（つまり、ばらつき係数を未適用の場合）に比べてばらつき範囲がレイト側（値が大きくなる側）に更新される。より具体的には、各ばらつき範囲は、上限値と下限値により示されるばらつき幅は図６に示したばらつき幅をほぼ維持しながら、その範囲がレイト側にずれる。
【００３２】
実施の形態１にかかるタイミング解析装置１では、回路セル毎に解析条件テーブルを参照してタイミング解析を行う。また、実施の形態１にかかるタイミング解析装置１では、アーリー条件を適用して生成された解析条件テーブルと、レイト条件を適用して生成された解析条件テーブルと、の全ての組み合わせについてタイミング解析を行う。そこで、以下では、タイミング解析装置１で行われるタイミング解析処理について詳細に説明する。
【００３３】
まず、実施の形態１にかかるタイミング解析装置において解析対象とされる回路の一例を示す回路図を図９に示す。図９に示す回路例は、フリップフロップＦＦ１、ＦＦ２と、バッファ回路ＢＵＦ１〜ＢＵＦ６を有する。
【００３４】
フリップフロップＦＦ１は、バッファ回路ＢＵＦ１、ＢＵＦ２を介して得たクロック信号ＣＬＫに基づきデータＤＩＮを保持する。フリップフロップＦＦ２は、バッファ回路ＢＵＦ５、ＢＵＦ６を介して得たクロック信号ＣＬＫに基づきフリップフロップＦＦ１が出力したデータを保持する。また、フリップフロップＦＦ１とフリップフロップＦＦ２との間にはバッファ回路ＢＵＦ３及びバッファ回路ＢＵＦ４が挿入される。
【００３５】
ここで、図１０に示した回路例では、バッファ回路ＢＡＦ１、ＢＵＦ３は、中閾値セルで構成され、フリップフロップＦＦ１、ＦＦ２及びバッファ回路ＢＵＦ２、ＢＵＦ４は、高閾値セルにより構成され、バッファ回路ＢＵＦ５、ＢＵＦ６は、低閾値セルにより構成される。クロック信号ＣＬＫを伝達する経路は、ノードＮＤ１において分岐する。フリップフロップＦＦ２のデータ入力端子にはノードＮＤ２が設定され、クロック入力端子にはノードＮＤ３が設定される。また、実施の形態１にかかるタイミング解析装置１では、ノードＮＤ１とノードＮＤ２との間のレイアウトデータ上での距離ＤＳ１、及び、ノードＮＤ１とノードＮＤ２との間のレイアウトデータ上での距離ＤＳ２が規定される。
【００３６】
そして、ノードＮＤ１からノードＮＤ２にいたる経路がタイミング解析の対象となる第１のパスとなり、ノードＮＤ１からノードＮＤ３にいたる経路がタイミング解析の対象となる第２のパスとなる。タイミング解析では、第１のパスと第２のパスとの信号伝達タイミングがセットアップタイム及びホールドタイムを守ることができるか否かが検証される。
【００３７】
より具体的には、第１のパスには、バッファ回路ＢＵＦ１〜ＢＵＦ４及びフリップフロップＦＦ１の５段の回路セルが含まれる。また、第１のパスは距離ＤＳ１を有する。第２のパスには、バッファ回路ＢＵＦ５、ＢＵＦ６の２段の回路セルが含まれる。また、第２のパスは距離ＤＳ２を有する。そこで、タイミング解析装置１は、第１のパスについては、解析条件テーブルＦ３１〜Ｆ３６に定義されるＯＣＶテーブルの距離ＤＳ１に対応する行の中から５段目のディレイティング値を読み出す。また、タイミング解析装置１は、第２のパスについては、解析条件テーブルＦ３１〜Ｆ３６に定義されるＯＣＶテーブルの距離ＤＳ２に対応する行の中から２段目のディレイティング値を読み出す。
【００３８】
より具体的には、タイミング解析装置１は、バッファ回路ＢＵＦ１、ＢＵＦ３については、中閾値セルに対応した解析条件テーブルＦ３３、Ｆ３４の距離ＤＳ１に対応した行の５段目の回路セルに対応したディレイティング値を読み込む。また、タイミング解析装置１は、フリップフロップＦＦ１及びバッファ回路ＢＵＦ２、ＢＵＦ４については、高閾値セルに対応した解析条件テーブルＦ３５、Ｆ３６の距離ＤＳ１に対応した行の５段目の回路セルに対応したディレイティング値を読み込む。また、タイミング解析装置１は、バッファ回路ＢＵＦ５、ＢＵＦ６については、低閾値セルに対応した解析条件テーブルＦ３１、Ｆ３２の距離ＤＳ２に対応した行の２段目の回路セルに対応したディレイティング値を読み込む。
【００３９】
続いて、タイミング解析装置１がタイミング解析を行う際に利用する解析条件テーブルのテーブルの種類について説明する。図４及び図５に示すように、一つの解析条件テーブルには、ＭＡＸ−Ｈｏｌｄ−Ｌａｔｅテーブルと、ＭＡＸ−Ｈｏｌｄ−Ｅａｒｌｙテーブルとが含まれる。タイミング解析装置１は、セットアップタイミング解析とホールドタイミング解析とにおいてそれぞれタイミングが厳しくなる条件を選択してタイミング解析を行う。
【００４０】
図１０に実施の形態１にかかるタイミング解析装置においてセットアップタイムのタイミング解析を行う場合に用いるＯＣＶテーブルを説明するための図を示した。また、図１１に、実施の形態１にかかるタイミング解析装置においてホールドタイムのタイミング解析を行う場合に用いるＯＣＶテーブルを説明するための図に示した。
【００４１】
図１０に示すように、セットアップタイミング解析を行う場合、第１のパスに対してはＭＡＸ−Ｈｏｌｄ−Ｌａｔｅテーブルを選択し、第２のパスに対してはＭＡＸ−Ｈｏｌｄ−Ｅａｒｌｙテーブルを選択する。これは、セットアップタイミングについては、データがフリップフロップＦＦ２に達するタイミングに対して、フリップフロップＦＦ２にクロック信号ＣＬＫが達するタイミングが早まる状態が最も厳しい条件となるためである。
【００４２】
また、図１１に示すように、ホールドタイミング解析を行う場合は、第１のパスに対してはＭＡＸ−Ｈｏｌｄ−Ｅａｒｌｙテーブルを選択し、第２のパスに対してはＭＡＸ−Ｈｏｌｄ−Ｌａｔｅテーブルを選択する。これは、ホールドタイミングについては、データがフリップフロップＦＦ２に達するタイミングに対して、フリップフロップＦＦ２にクロック信号ＣＬＫが達するタイミングが遅れる状態が最も厳しい条件となるためである。
【００４３】
実施の形態１にかかるタイミング解析装置１は、回路セルとばらつき係数との組み合わせのそれぞれに対して解析条件テーブルを生成する。そして、ばらつき係数の組み合わせの全てに対してそれぞれ１回のタイミング解析を実施する。このとき、タイミング解析装置１は、それぞれのタイミング解析を上記のような手順にて行う。そこで、実施の形態１にかかるタイミング解析装置１において実施するばらつき係数の組み合わせについて説明する。
【００４４】
図１２に実施の形態１にかかるタイミング解析装置１におけるタイミング解析の種類を説明するための図を示す。図１２に示すように、実施の形態１にかかるタイミング解析装置１では、３種類の回路セルのそれぞれに対して、２つのばらつき係数を適用した解析条件テーブルを生成する。そのため、タイミング解析に用いる解析条件の組み合わせは、８種類（２の３乗個）になる。
【００４５】
タイミング解析番号１の解析では、タイミング解析装置１は、全ての回路セルに対してアーリー条件を適用した解析条件テーブル（例えば、解析条件テーブルＦ３１、Ｆ３３、Ｆ３５）を用いたタイミング解析を行う。タイミング解析番号２の解析では、タイミング解析装置１は、高閾値セルＨＶＴ及び中閾値セルＭＶＴに対してはアーリー条件を適用した解析条件テーブル（例えば、解析条件テーブルＦ３５、Ｆ３３）を用い、低閾値セルＬＶＴに対してはレイト条件を適用した解析条件テーブル（例えば、解析条件テーブルＦ３２）を用いたタイミング解析を行う。タイミング解析番号３の解析では、タイミング解析装置１は、高閾値セルＨＶＴ及び低閾値セルＬＶＴに対してはアーリー条件を適用した解析条件テーブル（例えば、解析条件テーブルＦ３５、Ｆ３１）を用い、中閾値セルＭＶＴに対してはレイト条件を適用した解析条件テーブル（例えば、解析条件テーブルＦ３４）を用いたタイミング解析を行う。タイミング解析番号４の解析では、タイミング解析装置１は、高閾値セルＨＶＴに対してはアーリー条件を適用した解析条件テーブル（例えば、解析条件テーブルＦ３５）を用い、中閾値セルＭＶＴ及び低閾値セルＬＶＴに対してはレイト条件を適用した解析条件テーブル（例えば、解析条件テーブルＦ３４、Ｆ３２）を用いたタイミング解析を行う。
【００４６】
タイミング解析番号５の解析では、タイミング解析装置１は、高閾値セルＨＶＴに対してはレイト条件を適用した解析条件テーブル（例えば、解析条件テーブルＦ３６）を用い、中閾値セルＭＶＴ及び低閾値セルＬＶＴに対してはアーリー条件を適用した解析条件テーブル（例えば、解析条件テーブルＦ３３、Ｆ３１）を用いたタイミング解析を行う。タイミング解析番号６の解析では、タイミング解析装置１は、高閾値セルＨＶＴ及び低閾値セルＬＶＴに対してはレイト条件を適用した解析条件テーブル（例えば、解析条件テーブルＦ３６、Ｆ３２）を用い、中閾値セルＭＶＴに対してはアーリー条件を適用した解析条件テーブル（例えば、解析条件テーブルＦ３３）を用いたタイミング解析を行う。タイミング解析番号７の解析では、タイミング解析装置１は、高閾値セルＨＶＴ及び中閾値セルＭＶＴに対してはレイト条件を適用した解析条件テーブル（例えば、解析条件テーブルＦ３６、Ｆ３４）を用い、低閾値セルＬＶＴに対してはアーリー条件を適用した解析条件テーブル（例えば、解析条件テーブルＦ３１）を用いたタイミング解析を行う。タイミング解析番号８の解析では、タイミング解析装置１は、全ての回路セルに対してレイト条件を適用した解析条件テーブル（例えば、解析条件テーブルＦ３６、Ｆ３４、Ｆ３２）を用いたタイミング解析を行う。
【００４７】
上記説明より、実施の形態１にかかるタイミング解析装置１では、回路セルの種類毎の遅延値を規定するＯＣＶテーブルにより示される遅延値のばらつき幅を、ばらつき係数を用いて回路セル毎にずらす。これにより、遅延値のばらつきに異なる遅延特性の回路セル間のばらつきを反映した解析条件を容易に生成することができる。
【００４８】
また、このようにして生成した解析条件を用いることで、無駄なタイミングマージンを削減して、半導体集積回路装置の回路規模の削減及び消費電力の低減することができる。より具体的には、例えば、本実施の形態にかかる解析条件生成部１１を用いずに異なる遅延特性を有する回路セル間のばらつきを考慮したタイミング解析を行う場合、例えば、ＯＣＶテーブルＦ１１〜Ｆ１３に規定されたばらつき範囲の上限値に回路セルのばらつき係数のアーリー側の値を乗算し、下限値に回路セルのばらつき係数のレイト側の値を乗算して新たなばらつき範囲を算出する必要がある。そのため、解析条件生成部１１を用いずに、異なる遅延特性の回路セル間のばらつきを考慮したＯＣＶテーブルを生成した場合、そのＯＣＶテーブルにより定義されるばらつき範囲は、図６のばらつき範囲を左右に拡大しものになる。このようなＯＣＶテーブルを利用した場合、例えば、低閾値セルのばらつき係数がアーリー側となり、かつ、中閾値セルのばらつき係数がレイト側となるばらつき条件をタイミング解析等に問題になる。より具体的には、このような場合、低閾値セルの上限側ディレイティング値及び中閾値セルの下限側ディレイティング値に実際の製造ばらつきでは生じ得ない遅延値のオーバーマージンが発生し、当該オーバーマージンを満たすために回路規模及び消費電力が増大する問題が発生する。また、このようなオーバーマージンを考慮した設計を行う場合、タイミング解析を収束させるまでに多くの時間を要する問題も発生する。
【００４９】
しかしながら、実施の形態１にかかるタイミング解析装置１において生成する解析条件テーブルは、異なる遅延特性を有する回路セル間において実際に生じうるばらつき成分のみを含む複数の解析条件テーブルＦ３１〜Ｆ３６を生成することができる。そして、この解析条件テーブルＦ３１〜Ｆ３６を用いることで、オーバーマージンを排除したタイミング解析を行うことができる。また、解析条件テーブルＦ３１〜Ｆ３６を用いたタイミング解析を行うことで、半導体集積回路の回路面積及び消費電力の削減を実現することができる。また、解析条件テーブルＦ３１〜Ｆ３６を用いたタイミング解析を行うことで、半導体集積回路の設計期間を短縮することができる。
【００５０】
実施の形態２
実施の形態２では、ばらつき係数情報の別の例について説明する。そこで、まず、実施の形態２にかかるタイミング解析装置２のブロック図を図１３に示す。図１３に示すように、タイミング解析装置２では、解析条件生成部１１に入力するばらつき係数情報Ｆ２２に含まれるばらつき係数が設計回路に含まれる回路セルの種類よりも少ない。
【００５１】
また、実施の形態２にかかるタイイング解析装置２では、ばらつき係数の数が減少することから、生成する解析条件テーブルの数が減少する。図１３に示す例では、低閾値セルＬＶＴに対応する解析条件テーブルとして、低閾値セルＯＣＶテーブルＦ１１をそのまま用いる。また、実施の形態２にかかるタイミング解析装置２では、解析条件として解析条件テーブルＦ５３〜Ｆ５６が生成される。解析条件テーブルＦ５３は、中閾値セルＭＶＴに対応する中閾値セルＯＣＶテーブルＦ１２にアーリー条件のばらつき係数を適用して生成されるものである。解析条件テーブルＦ５４は、中閾値セルＭＶＴに対応する中閾値セルＯＣＶテーブルＦ１２にレイト条件のばらつき係数を適用して生成されるものである。解析条件テーブルＦ５５は、高閾値セルＨＶＴに対応する高閾値セルＯＣＶテーブルＦ１３にアーリー条件のばらつき係数を適用して生成されるものである。解析条件テーブルＦ５６は、高閾値セルＨＶＴに対応する高閾値セルＯＣＶテーブルＦ１３にレイト条件のばらつき係数を適用して生成されるものである。
【００５２】
実施の形態２では、第１、第２のばらつき係数の一方については、遅延値のばらつき幅のずれ量をゼロとする係数を有し、第１、第２のばらつき係数の他方は、第１の遅延値のばらつき幅のずれ量と、第２の遅延値のばらつき幅のずれ量と、を含む係数を含む。これにより、実施の形態２にかかるタイミング解析装置２では、回路セルの種類よりも少ないばらつき係数に、回路セルの種類と同数のばらつき係数の情報を含ませる。
【００５３】
より具体的には、実施の形態２では、第１、第２のばらつき係数の一方として、低閾値セルＬＶＴに対応するばらつき係数を有する。そして、実施の形態２では、この低閾値セルＬＶＴに対応するばらつき係数は、アーリー条件とレイト条件との値が１．０であるため、値の記載を省略した。また、実施の形態２では、第１、第２のばらつき係数の他方として、中閾値セルＭＶＴに対応するばらつき係数と、高閾値セルＨＶＴに対応するばらつき係数と、を有する。そして、中閾値セルＭＶＴに対応するばらつき係数と、高閾値セルＨＶＴに対応するばらつき係数と、のアーリー条件の値及びレイト条件の値に低閾値セルＬＶＴのばらつき係数のずれ量成分を含める。そこで、実施の形態２にかかるタイミング解析装置２で利用するばらつき係数情報の一例を示す概略図を図１４に示す。そして、図１４を参照して、実施の形態２にかかるタイミング解析装置２で利用されるばらつき係数情報Ｆ２２について説明する。
【００５４】
図１４に示すように、ばらつき係数情報Ｆ２２は、低閾値セルＬＶＴに対しては遅延値のばらつき幅のずれ量をゼロとするために、記載を省略している。なお、低閾値セルＬＶＴのばらつき係数を記載する場合は、アーリー条件の値及びレイト条件の値として１．０を記載すればよい。
【００５５】
また、ばらつき係数情報Ｆ２２では、中閾値セルＭＶＴに対応するばらつき係数と、高閾値セルＨＶＴに対応するばらつき係数に、低閾値セルＬＶＴに対応するばらつき係数のずれ量成分を含める。より具体的には、ばらつき係数情報Ｆ２２では、図３で示した閾値係数を元のばらつき係数とすると、中閾値セルＭＶＴのアーリー条件のばらつき係数ＭＶＴ＿Ｅｅａｒｌｙを（１）式により求める。なお、（１）式において、ＭＶＴ＿Ｅａｒｌｙ＿ｏｒｉｇｉｎａｌは図３に示した中閾値セルＭＶＴのアーリー条件のばらつき係数であり、ＬＶＴ＿Ｌａｔｅ＿ｏｒｉｇｉｎａｌは図３に示した低閾値セルＬＶＴのレイト条件のばらつき係数である。
MVT_Early = MVT_Early_original / LVT_Late_original・・・（１）
【００５６】
また、中閾値セルＭＶＴのレイト条件のばらつき係数ＭＶＴ＿Ｌａｔｅを（２）式により求める。なお、（２）式において、ＭＶＴ＿Ｌａｔｅ＿ｏｒｉｇｉｎａｌは図３に示した中閾値セルＭＶＴのレイト条件のばらつき係数であり、ＬＶＴ＿Ｅａｒｌｙ＿ｏｒｉｇｉｎａｌは図３に示した低閾値セルＬＶＴのアーリー条件のばらつき係数である。
MVT_Late = MVT_Late_original / LVT_Early_original・・・（２）
【００５７】
また、高閾値セルＨＶＴのアーリー条件のばらつき係数ＨＶＴ＿Ｌａｔｅを（３）式により求める。なお、（３）式において、ＨＶＴ＿Ｅａｒｌｙ＿ｏｒｉｇｉｎａｌは図３に示した高閾値セルＨＶＴのアーリー条件のばらつき係数であり、ＬＶＴ＿Ｌａｔｅ＿ｏｒｉｇｉｎａｌは図３に示した低閾値セルＬＶＴのレイト条件のばらつき係数である。
HVT_Early = HVT_Early_original / LVT_Late_original・・・（３）
【００５８】
また、高閾値セルＨＶＴのレイト条件のばらつき係数ＭＶＴ＿Ｌａｔｅを（４）式により求める。なお、（４）式において、ＨＶＴ＿Ｌａｔｅ＿ｏｒｉｇｉｎａｌは図３に示した高閾値セルＨＶＴのレイト条件のばらつき係数であり、ＬＶＴ＿Ｅａｒｌｙ＿ｏｒｉｇｉｎａｌは図３に示した低閾値セルＬＶＴのアーリー条件のばらつき係数である。
HVT_Late = HVT_Late_original / LVT_Early_original・・・（４）
【００５９】
このように中閾値セルＭＶＴ及び高閾値セルＨＶＴのばらつき係数に低閾値セルＬＶＴのばらつき係数の成分を含めることで、ばらつき係数情報Ｆ２２に記載されるばらつき係数に低閾値セルＬＶＴと他の回路セルとの相対的なばらつき係数のバラツキを反映させることができる。
【００６０】
そこで、図１５及び図１６に実施の形態２にかかるタイミング装置において利用される解析条件により規定されるディレイティング値のばらつき範囲を示す概略図を示す。図１５に示す例は、低閾値セルＯＣＶテーブルＦ１１、解析条件テーブルＦ５３及び解析条件テーブルＦ５５により示されるディレイティング値のばらつき範囲を示すものである。図１５に示すように、実施の形態２にかかるタイミング解析装置２により生成される解析条件テーブルＦ５３、Ｆ５５は、ばらつき係数が１．０（つまり、ばらつき係数を未適用の場合）に比べてばらつき範囲がアーリー側（値が小さくなる側）にずれた範囲を有する。より具体的には、中閾値セルＭＶＴ及び高閾値セルＨＶＴのディレイティング値のばらつき範囲は、上限値と下限値により示されるばらつき幅が図６に示したばらつき幅よりも若干広くなり、その範囲がアーリー側にずれる。一方、低閾値セルＬＶＴについては、低閾値セルＯＣＶテーブルＦ１１で示されるバラツキ範囲が維持される。
【００６１】
また、図１６に示す例は、低閾値セルＯＣＶテーブルＦ１１、解析条件テーブルＦ５４及び解析条件テーブルＦ５６により示されるディレイティング値のばらつき範囲を示すものである。図１６に示すように、実施の形態２にかかるタイミング解析装置２により生成される解析条件テーブルＦ５４、Ｆ５６は、ばらつき係数が１．０（つまり、ばらつき係数を未適用の場合）に比べてばらつき範囲がレイト側（値が大きくなる側）にずれた範囲を有する。より具体的には、中閾値セルＭＶＴ及び高閾値セルＨＶＴのディレイティング値のばらつき範囲は、上限値と下限値により示されるばらつき幅が図６に示したばらつき幅よりも若干広くなり、その範囲がレイト側にずれる。一方、低閾値セルＬＶＴについては、低閾値セルＯＣＶテーブルＦ１１で示されるバラツキ範囲が維持される。
【００６２】
実施の形態２にかかるタイミング解析装置１は、回路セルとばらつき係数との組み合わせのそれぞれに対して解析条件テーブルを生成する。そして、ばらつき係数の組み合わせの全てに対してそれぞれ１回のタイミング解析を実施する。このとき、タイミング解析装置２は、実施の形態１にかかるタイミング解析装置１と同様の手順でタイミング解析を行う。そこで、実施の形態２にかかるタイミング解析装置２において実施するばらつき係数の組み合わせについて説明する。
【００６３】
図１７に実施の形態２にかかるタイミング解析装置２におけるタイミング解析の種類を説明するための図を示す。図１７に示すように、実施の形態２にかかるタイミング解析装置２では、低閾値セルに対しては、１つの解析条件（例えば、低閾値セルＯＣＶテーブルＦ１１）が与えられるのみであるため、２種類の回路セルのそれぞれに対して、２つのばらつき係数を適用した解析条件テーブルを生成する。そのため、タイミング解析に用いる解析条件の組み合わせは、４種類（２の２乗個）になる。
【００６４】
タイミング解析番号１の解析では、タイミング解析装置１は、高閾値セルＨＶＴ及び中閾値セルＭＶＴに対してアーリー条件を適用した解析条件テーブル（例えば、解析条件テーブルＦ５５、Ｆ５３）を用いたタイミング解析を行う。タイミング解析番号２の解析では、タイミング解析装置２は、高閾値セルＨＶＴに対してはアーリー条件を適用した解析条件テーブル（例えば、解析条件テーブルＦ５５）を用い、中閾値セルＭＶＴに対してはレイト条件を適用した解析条件テーブル（例えば、解析条件テーブルＦ５４）を用いたタイミング解析を行う。タイミング解析番号３の解析では、タイミング解析装置２は、高閾値セルＨＶＴに対してはレイト条件を適用した解析条件テーブル（例えば、解析条件テーブルＦ５６）を用い、中閾値セルＭＶＴに対してはアーリー条件を適用した解析条件テーブル（例えば、解析条件テーブルＦ５３）を用いたタイミング解析を行う。タイミング解析番号４の解析では、タイミング解析装置２は、高閾値セルＨＶＴ及び中閾値セルＭＶＴに対してレイト条件を適用した解析条件テーブル（例えば、解析条件テーブルＦ５６、Ｆ５４）を用いたタイミング解析を行う。
【００６５】
上記説明より、実施の形態２にかかるタイミング解析装置２では、１つのばらつき係数を基準として、他のばらつき係数に基準となったばらつき係数の元の係数の成分を含ませる。これにより、実施の形態２にかかるタイミング解析装置２では、解析条件の数を削減しながら、ばらつき係数の数よりも多い種類の回路セルに対して、全ての回路セル間の相対的なばらつきを反映させたタイミング解析を行うことができる。また、実施の形態２にかかるタイミング解析装置２によれば、解析条件の数の減少に伴いタイミング解析に要する時間を削減することができる。
【００６６】
上記説明では、１つの回路セル（例えば、低閾値セルＬＶＴ）についてのばらつき係数を基準として、他の回路セル（例えば、中閾値セルＭＶＴ及び高閾値セルＨＶＴ）のばらつき係数を変更する実施の形態を説明した。このばらつき係数は、回路セルの閾値電圧のばらつきに起因して生じる遅延時間のずれを反映した値である。また、回路セルのそれぞれに対して元々設定されていたばらつき係数は、絶対遅延に対するばらつき量に基づき設定されるものである。
【００６７】
そのため、実施の形態２において生成される解析条件では、遅延値のばらつき幅のずれ量を示すばらつき係数情報Ｆ２２において定義されるばらつき係数にオーバーマージンが含まれる可能性がある。そこで、回路セルの閾値電圧のばらつきの絶対値に基づきばらつき係数情報Ｆ２２を設定せずに、閾値電圧のばらつきの相関関係を評価段階で見積もり、当該見積もりに応じてばらつき係数情報Ｆ２２を設定することで、オーバーマージンを小さくすることができる。つまり、閾値電圧のばらつき絶対値のうち相関関係が高い閾値電圧のばらつきがある場合、相関関係が高いばらつき絶対値を基準にばらつき係数情報Ｆ２２の値を設定することで、オーバーマージンを削減することができる。
【００６８】
実施の形態３
実施の形態３では、利用するばらつき係数の削減方法の別の形態について説明する。図１８に実施の形態３にかかるタイミング解析装置３のブロック図を示す。図３に示すように、タイミング解析装置３では、ばらつき係数情報Ｆ２１に代えてばらつき係数情報Ｆ２３を有する。また、タイミング解析装置３では、解析条件テーブルＦ３１〜Ｆ３６のうち解析条件テーブルＦ３１、Ｆ３３、Ｆ３６を有する。
【００６９】
つまり、実施の形態３にかかるタイミング解析装置３では、解析条件生成部１１において行われる解析条件生成処理では、第１、第２のばらつき係数のから選択したばらつき係数を用いて第１、第２の解析条件を生成する。タイミング解析装置３では、第１、第２のばらつき係数のうちアーリー条件とレイト条件のいずれか一方のみを予め選択し、選択したばらつき係数のみをばらつき係数情報Ｆ２３に記載することで、ばらつき係数の選択を行う。
【００７０】
ばらつき係数情報Ｆ２３は、各回路セルに対応するばらつき係数が、それぞれ、アーリー条件のばらつき係数とレイト条件のばらつき係数とのいずれか一方のみを有する。より具体的には、ばらつき係数情報Ｆ２３は、低閾値セルＬＶＴ及び中閾値セルＭＶＴがアーリー条件のばらつき係数のみを有し、高閾値セルＨＶＴがレイト条件のばらつき係数のみを有する。
【００７１】
このばらつき係数情報Ｆ２３において設定されたばらつき係数は、例えば、製造工程上発生しやすいバラツキを反映したものである。製造工程上発生しやすいバラツキは、製造工程毎に統計、或いは、事前評価における統計により求めることができる。また、ばらつき係数情報Ｆ２３は、回路セルの閾値電圧の絶対的なばらつきの最大値ではなく、実際に発生しやすいばらつき量に基づき設定することができる。
【００７２】
そして、実施の形態３にかかるタイミング解析装置３の解析条件生成部１１は、ばらつき係数情報Ｆ２３に定義されたばらつき係数に基づき３つの解析条件テーブルを生成する。より具体的には、タイミング解析装置３では、ばらつき係数情報Ｆ２３に記載されたばらつき係数に応じて、解析条件テーブルＦ３１、Ｆ３３、Ｆ３６を生成する。解析条件テーブルＦ３１は、低閾値セルＬＶＴの遅延時間のばらつき幅（例えば、低閾値セルＯＣＶテーブルＦ１１）にアーリー条件のばらつき係数に適用して生成されるものである。解析条件テーブルＦ３３は、中閾値セルＭＶＴの遅延時間のばらつき幅（例えば、中閾値セルＯＣＶテーブルＦ１２）にアーリー条件のばらつき係数に適用して生成されるものである。解析条件テーブルＦ３６は、高閾値セルＬＶＴの遅延時間のばらつき幅（例えば、高閾値セルＯＣＶテーブルＦ１３）にレイト条件のばらつき係数に適用して生成されるものである。
【００７３】
上記説明より、実施の形態３にかかるタイミング解析装置３では、製造工程上発生しやすい回路セル間の閾値電圧のばらつきに基づき選択したばらつき係数に対してのみ解析条件テーブルを生成する。これにより、タイミング解析装置３は、タイミング解析部１２で行われるタイミング解析処理の回数を削減しながら、製造上大きな問題となるばらつきパターンについての解析を行い、製造上発生する不具合を効率的に削減することができる。
【００７４】
また、上記説明では、製造工程上発生する回路セル間の閾値電圧のばらつきうち発生しやすいばらつき条件に基づき選択するばらつき係数を決定した。しかし、半導体集積回路の製造では、例えば、動作速度、消費電力など諸特性のうち優先される特性に応じて製造工程上のパラメータを操作する場合がある。このような場合、発生しやすい回路セル間の閾値電圧のばらつきをある程度予測することができる。そこで、意図する製造パラメータから得ることができる回路セル間の閾値電圧のばらつきに基づき選択するばらつき係数を決定することもできる。
【００７５】
実施の形態４
実施の形態４では、タイミング解析処理の手順の別の例について説明する。図１９に実施の形態４にかかるタイミング解析装置４のブロック図を示す。図１９に示すように、タイミング解析装置４は、タイミング解析装置１の演算部１０に代えて演算部２０を有する。
【００７６】
この演算部２０は、図示しない記憶部からタイミング解析プログラムを読み出し、実施の形態４にかかるタイミング解析装置４の各種処理機能を実現する。図１９に示す例では、演算部２０の内部に各種機能を実現した処理ブロックを示した。図１９に示すように、演算部２０は、解析条件生成部１１、タイミング解析部２１、違反候補パス抽出部２２、タイミング解析部２３、解析結果マージ処理部２４を有する。また、図１９に示すように、演算部２０は、処理の過程で中間ファイルとして、全体解析結果Ｆ６１、違反候補パス情報Ｆ６２、違反候補パスの違反レポートＦ６３を生成する。なお、以下の説明では、実施の形態１にかかるタイミング解析装置１と同じ構成要素については、実施の形態１と同一の符号を付して説明を省略する。
【００７７】
タイミング解析部２１は、回路情報Ｆ４１に記載された設計回路の全体に対して予め設定されたパラメータ（例えば、低閾値セルＯＣＶテーブルＦ１１、中閾値セルＯＣＶテーブルＦ１２、高閾値セルＯＣＶテーブルＦ１３）を適用した第１のタイミング解析を行う。より具体的には、タイミング解析部２１は、回路情報Ｆ４１、タイミング制約情報Ｆ４２、低閾値セルＯＣＶテーブルＦ１１、中閾値セルＯＣＶテーブルＦ１２、高閾値セルＯＣＶテーブルＦ１３を入力として、回路情報Ｆ４１により示される回路の第１のタイミング解析を行う。このとき、タイミング解析部２１は、回路情報Ｆ４１により与えられた回路の全体に対してタイミング解析を行う。そして、タイミング解析部２１は、全回路についての解析結果（例えば、全体解析結果Ｆ６１）を出力する。
【００７８】
違反候補パス抽出部２２は、予め与えられた違反条件情報Ｆ４４を参照して、解析結果に基づきタイミング余裕度が違反条件情報Ｆ４４により与えられた基準値よりも小さな違反候補パスを抽出する。そして、違反候補パス抽出部２２は、抽出結果を違反候補パス情報Ｆ６２として出力する。なお、違反候補パス抽出部２２が抽出対象とするパスは、１つのパスに異なる閾値電圧を有する複数の回路セルを含むマルチ閾値パスに限る。
【００７９】
タイミング解析部２３は、違反候補パスに対して第１、第２の解析条件（例えば、解析条件テーブルＦ３１〜Ｆ３６）を用いた第２のタイミング解析を行う。つまり、タイミング解析部２３、違反候補パスに対してのみ回路セル間の閾値電圧のばらつきを考慮したタイミング解析を実施する。そして、タイミング解析部２３は、解析した違反候補パスの違反レポートＦ６３を出力する。なお、タイミング解析部２１とタイミング解析部２３は、解析対象とするパスと、入力する遅延情報（例えば、ＯＣＶテーブル）と、が異なるのみであり、解析対象としたパスに対しては同じタイミング解析を行うため、同じ処理部として実装することができる。
【００８０】
解析結果マージ処理部２４は、違反候補パスの違反レポートＦ６３により示される解析結果と全体解析結果Ｆ６１とをマージしてタイミング解析結果Ｆ４３を出力する。
【００８１】
上記説明より、実施の形態４にかかるタイミング解析装置４は、解析対象の回路の全体に対して回路セル間のばらつきを考慮していないＯＣＶテーブルを用いてタイミング解析を実施し、タイミング余裕度が小さな違反候補パスを抽出する。そして、タイミング解析装置４は、違反候補パスに対してのみ回路セル間のばらつきを考慮した解析条件を適用した複数回のタイミング解析を実施する。これにより、タイミング解析装置４では、複数回実施する詳細なタイミング解析により処理するパスの数を削減し、解析時間を短縮することができる。
【００８２】
実施の形態５
上記実施の形態では、回路セルに対して設定される遅延値のばらつき幅を規定するＯＣＶテーブルに対してばらつき係数を適用して回路セルの相対的なばらつきに基づき遅延値のばらつき幅をずらした解析条件を生成した。ここで、回路セルにたいしてせっていされる遅延値は、ＯＣＶテーブルにおいて規定されるばらつき幅の基準となる値である。そこで、実施の形態５では、回路セルに対して設定される遅延値を、回路セル間の相対的なばらつきを規定するばらつき係数に基づきずらした解析条件を生成する実施の形態について説明する。実施の形態５にかかるタイミング解析装置５において生成される解析条件を用いてタイミング解析を行うことで、遅延値のばらつき幅をばらつき係数に基づきずらした解析条件を生成する上記実施の形態と同様のタイミング解析を行うことができる。
【００８３】
実施の形態５にかかるタイミング解析装置５のブロック図を図２０に示す。図２０に示すように、タイミング解析装置５は、演算部３０を有する。演算部３０は、解析条件生成部３１と、タイミング解析部３２と、を有する。演算部３０は、図示しない記憶部からタイミング解析プログラムを読み出して、当該プログラムを実行することで、解析条件生成部３１及びタイミング解析部３２の機能を実現する。
【００８４】
解析条件生成部３１は、記憶部から回路情報Ｆ４１及びばらつき係数情報Ｆ２１を読み出して、解析条件として解析回路情報Ｆ７１〜Ｆ７８を生成する。回路情報Ｆ４１には、第１の回路セルに対して設定される第１の遅延値と、第２の回路セルに対して設定される第２の遅延値と、が規定される遅延情報が含まれる。この遅延情報は、例えば、ＳＤＦ（Standard Delay File）として与えられる。タイミング解析部３２では、第１、第２の遅延値をＯＣＶテーブルで与えられる第１、第２の遅延値のばらつき幅を示す第１、第２のばらつき幅の基準値としてタイミング解析を行う。
【００８５】
解析条件生成部３１は、第１の遅延値を第１のばらつき係数に基づきずらした第１の遅延ばらつき値を含む第１の解析条件と、第２の遅延値を第２のばらつき係数に基づきずらした第２の遅延ばらつき値を含む第２の解析条件と、を生成する。
【００８６】
より具体的には、解析条件生成部３１は、回路情報Ｆ４１から回路セルに関する情報を抽出し、抽出した回路セルを低閾値セルＬＶＴ、中閾値セルＭＶＴ、及び、高閾値セルＨＶＴのいずれかに分類する。そして、解析条件生成部３１は、ばらつき係数情報Ｆ２１から回路セルの種類毎にアーリー条件のばらつき係数とレイト条件のばらつき係数とを読み込み、アーリー条件とレイト条件との組み合わせが異なる８種類の解析回路情報Ｆ７１〜Ｆ７８を生成する。
【００８７】
解析回路情報Ｆ７１は、低閾値セルＬＶＴ、中閾値セルＭＶＴ及び高閾値セルＨＶＴの遅延値を各回路セルのアーリー条件に基づきずらした遅延ばらつき値を有するものである。解析回路情報Ｆ７２は、中閾値セルＭＶＴ及び高閾値セルＨＶＴの遅延値を各回路セルのアーリー条件に基づきずらした遅延ばらつき値と、低閾値セルＬＶＴの遅延値を低閾値セルＬＶＴのレイト条件に基づきずらした遅延ばらつき値と、を有するものである。解析回路情報Ｆ７３は、低閾値セルＬＶＴ及び高閾値セルＨＶＴの遅延値を各回路セルのアーリー条件に基づきずらした遅延ばらつき値と、中閾値セルＭＶＴの遅延値を中閾値セルＭＶＴのレイト条件に基づきずらした遅延ばらつき値と、を有するものである。解析回路情報Ｆ７４は、高閾値セルＨＶＴの遅延値を高閾値セルＨＶＴのアーリー条件に基づきずらした遅延ばらつき値と、低閾値セルＬＶＴ及び中閾値セルＭＶＴの遅延値を各回路セルのレイト条件に基づきずらした遅延ばらつき値と、を有するものである。
【００８８】
解析回路情報Ｆ７５は、高閾値セルＨＶＴの遅延値を高閾値セルＨＶＴのレイト条件に基づきずらした遅延ばらつき値と、低閾値セルＬＶＴ及び中閾値セルＭＶＴの遅延値を各回路セルのアーリー条件を有するものである。解析回路情報Ｆ７６は、低閾値セルＬＶＴ及び高閾値セルＨＶＴの遅延値を各回路セルのレイト条件に基づきずらした遅延ばらつき値と、中閾値セルＭＶＴの遅延値を中閾値セルＭＶＴのアーリー条件に基づきずらした遅延ばらつき値と、を有するものである。解析回路情報Ｆ７７は、中閾値セルＭＶＴ及び高閾値セルＨＶＴの遅延値を各回路セルのレイト条件に基づきずらした遅延ばらつき値と、低閾値セルＬＶＴの遅延値を低閾値セルＬＶＴのアーリー条件に基づきずらした遅延ばらつき値と、を有するものである。解析回路情報Ｆ７８は、低閾値セルＬＶＴ、中閾値セルＭＶＴ及び高閾値セルＨＶＴの遅延値を各セルのレイト条件に基づきずらした遅延ばらつき値を有するものである。
【００８９】
ここで、回路情報Ｆ４１に含まれる遅延情報と、解析回路情報Ｆ７１〜Ｆ７８に含まれる遅延情報とについてさらに詳細に説明する。図２１に実施の形態５にかかるタイミング解析装置５に入力される回路情報Ｆ４１に含まれる遅延情報の概略図を示す。図２１に示した遅延情報は、ＳＤＦ形式で遅延値を定義したものである。図２１に示す例では、回路セル名としてＣＥＬＬ＿１が記載される。また、図２１に示す例では、回路セルＣＥＬＬ＿１の入力端子と出力端子との組み合わせ毎に、入力端子に信号が入力されてから出力端子の信号が立ち上がるまでの時間を示すライズタイムと、入力端子に信号が入力されてから出力端子の信号が立ち上がるまでの時間を示すフォールタイムと、が定義される。
【００９０】
より具体的には、遅延情報では、ＳＤＦのフォーマットに応じてライズタイムの最小値ｒｉｓｅ＿ｍｉｎ及び最大値ｒｉｓｅ＿ｍａｘと、フォールタイムの最小値ｆａｌｌ＿ｍｉｎ及び最大値ｆａｌｌ＿ｍａｘと、が記載される。図２１に示す例では、入力端子Ａと出力端子ＹＢとの間のライズタイムの最小値ｒｉｓｅ＿ｍｉｎは０．０５０である。入力端子Ａと出力端子ＹＢとの間のライズタイムの最大値ｒｉｓｅ＿ｍａｘは０．０５２である。入力端子Ａと出力端子ＹＢとの間のフォールタイムの最小値ｆａｌｌ＿ｍｉｎは０．０５０である。入力端子Ａと出力端子ＹＢとの間のフォールタイムの最大値ｆａｌｌ＿ｍａｘは０．０５２である。回路セルＣＥＬＬ＿１は、入力端子Ａ、Ｂ、Ｃと出力端子ＹＢとを有するため、入力端子の数に応じて３種類の遅延値が記載される。なお、図２１に示す例では、ライズタイムのティピカル値ｒｉｓｅ＿ｔｙｐ及びフォールタイムのティピカル値ｆａｌｌ＿ｔｙｐについてはばらつきを考慮したタイミング解析では使用しないため記載を省略している。
【００９１】
続いて、図２２に実施の形態５にかかるタイミング解析装置５において解析条件として生成される解析回路情報Ｆ７３に含まれる遅延情報の概略図を示す。なお、解析回路情報Ｆ７１〜Ｆ７８に含まれる遅延情報は、遅延ばらつき値として異なる値を有するものの同じフォーマットで記載さるものであるため、ここでは、解析回路情報Ｆ７３に含まれる遅延情報を例にこれら遅延情報について説明する。
【００９２】
図２２に示す遅延情報は、図２１に示した遅延情報により示される遅延値に中閾値セルＭＶＴのアーリー条件のばらつき係数（例えば、図３に示したばらつき係数）を乗算したものである。そのため、解析回路情報Ｆ７３に含まれる遅延情報は、遅延ばらつき値として図２１に示した遅延値に中閾値セルＭＶＴのアーリー条件のばらつき係数である０．９４６を乗算した値を有する。
【００９３】
タイミング解析部３２では、上記において説明した解析回路情報Ｆ７１〜Ｆ７８を順に読み出して、読み出した解析回路情報のそれぞれに対して低閾値セルＯＣＶテーブルＦ１１、中閾値セルＯＣＶテーブルＦ１２及び高閾値セルＯＣＶテーブルＦ１３を適用してタイミング解析を行う。このタイミング解析では、解析回路情報Ｆ７１〜Ｆ７８に含まれる遅延ばらつき値がすでにばらつき係数によるずれ成分を含んでいるため、この解析回路情報に予め準備されたＯＣＶテーブルを適用することで、実施の形態１にかかるタイミング解析装置１と同じ結果を得ることができる。
【００９４】
上記説明より、実施の形態５では、ばらつき係数情報に基づき回路情報に含まれる遅延値をずらして解析条件を生成する。このように、ばらつき係数を回路情報に含めても、タイミング解析の結果としては、実施の形態１と同じ結果を得ることができる。つまり、実施の形態５において説明したタイミング解析装置５は、実施の形態１にかかるタイミング解析装置１とは異なる手順で解析条件を生成しても、実施の形態１と同じ結果を得ることができる例を示すものである。
【００９５】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明はすでに述べた実施の形態に限定されるものではなく、その要旨を逸脱しない範囲において種々の変更が可能であることはいうまでもない。
【符号の説明】
【００９６】
１〜５  タイミング解析装置
１０、２０、３０  演算部
１１  解析条件生成部
１２、２１、２３  タイミング解析部
２２  違反候補パス抽出部
２４  解析結果マージ処理部
３１  解析条件生成部
３２  タイミング解析部
ＢＵＦ１〜ＢＵＦ６    バッファ回路
ＦＦ１、ＦＦ２    フリップフロップ
Ｆ１１  低閾値セルＯＣＶテーブル
Ｆ１２  中閾値セルＯＣＶテーブル
Ｆ１３  高閾値セルＯＣＶテーブル
Ｆ２１〜Ｆ２３  ばらつき係数情報
Ｆ３１〜Ｆ３６  解析条件テーブル
Ｆ４１  回路情報
Ｆ４２  タイミング制約情報
Ｆ４３  タイミング解析結果
Ｆ４４  違反条件情報
Ｆ５３〜Ｆ５６  解析条件テーブル
Ｆ６１  全体解析結果
Ｆ６２  違反候補パス情報
Ｆ６３  違反候補パスの違反レポート
Ｆ７１〜Ｆ７８  解析回路情報
【図１】
2013222248.tif 000003
【図２】
2013222248.tif 000004
【図３】
2013222248.tif 000005
【図４】
2013222248.tif 000006
【図５】
2013222248.tif 000007
【図６】
2013222248.tif 000008
【図７】
2013222248.tif 000009
【図８】
2013222248.tif 000010
【図９】
2013222248.tif 000011
【図１０】
2013222248.tif 000012
【図１１】
2013222248.tif 000013
【図１２】
2013222248.tif 000014
【図１３】
2013222248.tif 000015
【図１４】
2013222248.tif 000016
【図１５】
2013222248.tif 000017
【図１６】
2013222248.tif 000018
【図１７】
2013222248.tif 000019
【図１８】
2013222248.tif 000020
【図１９】
2013222248.tif 000021
【図２０】
2013222248.tif 000022
【図２１】
2013222248.tif 000023
【図２２】
2013222248.tif 000024