(57)【要約】【課題】各セルの動作周波数に応じて真の遷移時間エラーのみを検出して修正することによりチップサイズや作業工数の増加を抑制する半導体集積回路装置の設計支援プログラム等を提供すること。【解決手段】本発明の設計支援プログラムは、遷移時間計算手段１２と、遷移時間規格値設定手段１４と、遷移時間エラー検出手段１６としてコンピュータを機能させる。遷移時間計算手段１２は、複数のセルの接続情報を含むネットリストに基づいて、各セルの入力信号の遷移時間を計算する。遷移時間規格値設定手段１４は、動作周波数と遷移時間の規格値についてあらかじめ定義された対応関係に基づいて、各セルの入力信号の遷移時間の規格値を設定する。遷移時間エラー検出手段１６は、各セルについて、遷移時間計算手段１２が計算した遷移時間と遷移時間規格値設定手段１４が設定した規格値に基づいて、遷移時間のエラーを検出する。【選択図】図１
2009070325.tif 000002
【特許請求の範囲】
【請求項１】
異なる動作周波数で動作する複数のセルを含む半導体集積回路装置の設計を支援する設計支援プログラムであって、
前記複数のセルの接続情報を含むネットリストに基づいて、前記複数のセルの各々について、当該セルの入力信号の遷移時間を計算する遷移時間計算手段と、
前記複数のセルの各々について、前記動作周波数と遷移時間の規格値についてあらかじめ定義された対応関係に基づいて、当該セルの入力信号の遷移時間の規格値を設定する遷移時間規格値設定手段と、
前記複数のセルの各々について、前記遷移時間計算手段が計算した前記遷移時間と前記遷移時間規格値設定手段が設定した前記規格値に基づいて、前記遷移時間のエラーを検出する遷移時間エラー検出手段としてコンピュータを機能させることを特徴とする半導体集積回路装置の設計支援プログラム。
【請求項２】
請求項１において、
前記遷移時間エラー検出手段の検出結果に基づいて、前記遷移時間のエラーを修正するように前記ネットリスト又は配線レイアウトを変更する遷移時間エラー修正手段としてコンピュータを機能させることを特徴とする半導体集積回路装置の設計支援プログラム。
【請求項３】
請求項１又は２において、
前記遷移時間規格値設定手段は、
前記複数のセルの各々について、前記複数のセルの各々と前記動作周波数の対応関係を規定した対応表から動作周波数を選択し、前記動作周波数と遷移時間の規格値の前記対応関係から、当該選択した動作周波数に対応する前記規格値を選択し、当該規格値を設定することを特徴とする半導体集積回路装置の設計支援プログラム。
【請求項４】
請求項１又は２において、
前記遷移時間規格値設定手段は、
前記複数のセルの各々について、前記ネットリストに基づいて動作周波数を判別し、前記動作周波数と遷移時間の規格値の前記対応関係から、前記判別した動作周波数に対応する前記規格値を選択し、当該規格値を設定することを特徴とする半導体集積回路装置の設計支援プログラム。
【請求項５】
請求項４において、
前記遷移時間規格値設定手段は、
前記複数のセルの各々について、当該セルの出力方向に所定の記憶素子又は外部出力端子に到達するまで前記ネットリストを探索し、到達した前記記憶素子又は前記外部出力端子について定義された動作周波数を当該セルの動作周波数として判別することを特徴とする半導体集積回路装置の設計支援プログラム。
【請求項６】
請求項１乃至５のいずれかにおいて、
前記複数のセルの各々について、前記遷移時間計算手段が計算した前記遷移時間が、前記動作周波数と遷移時間の規格値の前記対応関係において定義された最小の前記規格値よりも大きいか否かの判断を行い、前記遷移時間が当該最小の前記規格値よりも大きい場合には前記遷移時間の暫定的なエラーとして検出する遷移時間暫定エラー検出手段としてコンピュータを機能させ、
前記遷移時間規格値設定手段は、
前記遷移時間の暫定的なエラーを有するセルの各々について前記規格値を設定し、
前記遷移時間エラー検出手段は、
前記遷移時間の暫定的なエラーを有するセルの各々について前記遷移時間のエラーを検出することを特徴とする半導体集積回路装置の設計支援プログラム。
【請求項７】
請求項１乃至６のいずれかにおいて、
指定した外部入力端子又は指定した内部ノードから所定の外部出力端子又は所定の内部ノードに至る経路上に存在するセルを抽出する遷移時間エラー除外セル抽出手段としてコンピュータを機能させ、
前記遷移時間エラー検出手段は、
前記遷移時間エラー除外セル抽出手段が抽出したセルについては、前記遷移時間のエラーを検出しないことを特徴とする半導体集積回路装置の設計支援プログラム。
【請求項８】
異なる動作周波数で動作する複数のセルを含む半導体集積回路装置の設計を支援する設計支援システムであって、
前記複数のセルの接続情報を含むネットリストに基づいて、前記複数のセルの各々について、当該セルの入力信号の遷移時間を計算する遷移時間計算手段と、
前記複数のセルの各々について、前記動作周波数と遷移時間の規格値についてあらかじめ定義された対応関係に基づいて、当該セルの入力信号の遷移時間の規格値を設定する遷移時間規格値設定手段と、
前記複数のセルの各々について、前記遷移時間計算手段が計算した前記遷移時間と前記遷移時間規格値設定手段が設定した前記規格値に基づいて、前記遷移時間のエラーを検出する遷移時間エラー検出手段と、を含むことを特徴とする半導体集積回路装置の設計支援システム。
【請求項９】
異なる動作周波数で動作する複数のセルを含む半導体集積回路装置の設計方法であって、
前記複数のセルの接続情報を含むネットリストに基づいて、前記複数のセルの各々について、当該セルの入力信号の遷移時間を計算する遷移時間計算ステップと、
前記複数のセルの各々について、前記動作周波数と遷移時間の規格値についてあらかじめ定義された対応関係に基づいて、当該セルの入力信号の遷移時間の規格値を設定する遷移時間規格値設定ステップと、
前記複数のセルの各々について、前記遷移時間計算ステップにおいて計算した前記遷移時間と前記遷移時間規格値設定ステップにおいて設定した前記規格値に基づいて、前記遷移時間のエラーを検出する遷移時間エラー検出ステップと、を含むことを特徴とする半導体集積回路装置の設計方法。
【請求項１０】
請求項１乃至７のいずれかに記載された半導体集積回路装置の設計支援プログラム、請求項８に記載された半導体集積回路装置の設計支援システム又は請求項９に記載された半導体集積回路装置の設計方法を用いて設計製造されたことを特徴とする半導体集積回路装置。
【請求項１１】
請求項１０に記載された半導体集積回路装置と、
前記半導体集積回路装置の処理対象となるデータの入力手段と、
前記半導体集積回路装置により処理されたデータを出力するための出力手段とを含むことを特徴とする電子機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路装置の設計プログラム、半導体集積回路装置の設計支援システム、半導体集積回路装置の設計方法、半導体集積回路装置及び電子機器に関する。
【背景技術】
【０００２】
ＬＳＩのプロセス微細化に伴い、高周波クロックで動作する大規模多機能なＬＳＩが開発されるようになっている。クロックがある程度高周波になるとクロック１周期以内での動作が要求される演算回路等の動作タイミングの制約が厳しくなり、設計マージンを小さくせざるを得なくなる。従って、設計段階でのタイミング検証の精度を向上させることが重要である。従来、タイミング検証の精度を向上させるために遅延時間の計算精度を向上させる様々な手法が提案されている。
【特許文献１】特開２００１−１４７９４８号公報
【特許文献２】特開２００２−１２３５６８号公報
【特許文献３】特開２００６−３１２４７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし、遅延時間の計算精度が向上しても、プロセスばらつきによるスイッチングトランジスタのしきい値ばらつきに伴って生じる論理セルの遅延時間のばらつきを正確に考慮したタイミング検証を行うことは極めて困難である。すなわち、論理セルの入力信号の遷移時間が大きいほど（入力信号波形の傾き（スルーレート）が大きいほど）、スイッチングトランジスタのしきい値ばらつきの影響が大きくなり、論理セルの出力信号の変化点のばらつき（論理セルの遅延時間のばらつき）が大きくなるため正確なタイミング検証の妨げとなる。そこで、スイッチングトランジスタのしきい値ばらつきの影響を無視できる程度に小さくする目的で、タイミング検証に加えて、各論理セルの入力信号の遷移時間が所定の規格値以下となるか否かの検証も行われている。従来、周波数の異なる複数のクロックで動作するＬＳＩにおいては、高速動作する論理セルにあわせてすべての論理セルに同一の規格値を設定して上記検証を行い、遷移時間のエラーが発生した箇所のネットリストや配線レイアウトを修正していた。
【０００４】
しかし、比較的低速で動作する論理セルについては遅延時間のばらつきが多少大きくなっても動作タイミングに問題がないため、遷移時間のエラーが発生しても疑似エラーに過ぎない場合もあるが、ネットリストやレイアウトを修正しているケースもあった。そのため、不要なチップサイズの増加や修正時間の増大を招いていた。また、人手により、真のエラーか疑似エラーかを判断して真のエラーに対してのみ修正を行うことも考えられるが、真のエラーか疑似エラーかの判断に時間がかかるため作業工数の増大を招くだけでなく、判断ミスも発生し得る。さらに、低速動作しか要求されないために動作タイミングのマージンが非常に大きいテスト回路等を構成する論理セルについては、そもそも入力信号の遷移時間の検証を行う必要がない。それにもかかわらず、疑似エラーとして修正対象や人手による判断対象になり、極めて無駄な作業工数等を費やすことになっていた。
【０００５】
本発明は、以上のような問題点に鑑みてなされたものであり、各セルの動作周波数に応じて真の遷移時間エラーのみを検出して修正することによりチップサイズや作業工数の増加を抑制する半導体集積回路装置の設計支援プログラム等を提供することを目的とする。
【課題を解決するための手段】
【０００６】
（１）本発明は、
異なる動作周波数で動作する複数のセルを含む半導体集積回路装置の設計を支援する設計支援プログラムであって、
前記複数のセルの接続情報を含むネットリストに基づいて、前記複数のセルの各々について、当該セルの入力信号の遷移時間を計算する遷移時間計算手段と、
前記複数のセルの各々について、前記動作周波数と遷移時間の規格値についてあらかじめ定義された対応関係に基づいて、当該セルの入力信号の遷移時間の規格値を設定する遷移時間規格値設定手段と、
前記複数のセルの各々について、前記遷移時間計算手段が計算した前記遷移時間と前記遷移時間規格値設定手段が設定した前記規格値に基づいて、前記遷移時間のエラーを検出する遷移時間エラー検出手段としてコンピュータを機能させることを特徴とする。
【０００７】
フリップフロップやラッチ等の所定のクロックで動作するセルの動作周波数は当該クロックの周波数であってもよい。また、任意のフリップフロップ（又はラッチ等）のデータ入力端子にデータ信号を供給する組み合わせ論理回路を構成するバッファセル、インバータセル、ＡＮＤセル、ＯＲセル等の論理セルの動作周波数は、当該フリップフロップ（又はラッチ等）の動作周波数であってもよい。また、外部出力端子に外部出力信号を供給する組み合わせ論理回路を構成するバッファセル、インバータセル、ＡＮＤセル、ＯＲセル等の論理セルの動作周波数は、当該外部出力端子に外部接続されるフリップフロップ（又はラッチ等）の動作周波数であってもよい。
【０００８】
入力信号の遷移時間は、当該入力信号がＬレベルの電圧からＨレベルの電圧に変化するまでの時間（立ち上がり遷移時間）であってもよいし、Ｈレベルの電圧からＬレベルの電圧に変化するまでの時間（立ち下がり遷移時間）であってもよい。各セルについて立ち上がり遷移時間と立ち下がり遷移時間をそれぞれ別個に計算するのがより好ましい。
【０００９】
各セルの入力信号の遷移時間は、当該セルの入力端子に接続されるネットの仮想配線長に基づく配線容量及び配線抵抗や当該ネットに接続される他のセルの入力端子のゲート容量を考慮して、仮想的に計算してもよい。例えば、設計初期においてネットリストに対応するレイアウトデータが存在しない場合等には、スルーレート（信号の傾き）が大きいネットを早期に発見することができる。また、精度の高い計算を行うためには、ネットリストに対応するレイアウトデータから抽出した各ネットの寄生抵抗や寄生容量等の情報をさらに読み込んで、各セルの入力信号の遷移時間を計算するのがより好ましい。
【００１０】
遷移時間の規格値は許容される遷移時間の目安となる値であり、動作周波数と遷移時間の規格値の対応関係は実験データ等に基づいて決定してもよい。動作周波数と遷移時間の規格値の対応関係は、対応表であってもよいし、関数であってもよい。また、動作周波数と遷移時間の規格値の対応関係は、プロセス毎に作成してライブラリ情報として登録しておいて汎用的に使用するようにしてもよい。
【００１１】
遷移時間エラー検出手段は、前記複数のセルの各々について、前記遷移時間計算手段が計算した前記遷移時間が、前記遷移時間規格値設定手段が設定した前記規格値よりも大きいか否かの判断を行い、当該遷移時間が当該規格値よりも大きい場合には前記遷移時間のエラーとして検出するようにしてもよい。
【００１２】
また、遷移時間エラー検出手段は、前記複数のセルの各々について、前記遷移時間計算手段が計算した前記遷移時間と前記遷移時間規格値設定手段が設定した前記規格値の差が所定の値よりも大きいか否かの判断を行い、当該遷移時間と当該規格値の差が前記所定の値よりも大きい場合には前記遷移時間のエラーとして検出するようにしてもよい。
【００１３】
本発明によれば、動作周波数と遷移時間の規格値の対応関係に基づいて、各セルの入力信号の遷移時間の規格値を設定し、各セルの遷移時間のエラーの有無を判断する。従って、動作周波数に応じてセル毎に異なる規格値を設定することができるので、遷移時間の疑似エラーを排除し、真の遷移時間エラーのみを検出することができる。その結果、真のエラーのみを修正することができるので、エラー修正に伴うチップサイズの増加を抑制することができる。
【００１４】
また、本発明によれば、各セルの動作周波数に対応して遷移時間の規格値を設定する。従って、ネットリストに基づいて各セルの動作周波数を解析することにより、各セルの入力信号の遷移時間の規格値を自動的に選択することができる。そのため、人手による規格値の設定ミスに伴う遷移時間エラーの検出漏れを防止するとともに、遷移時間エラー検出の工数を削減することができる。
【００１５】
（２）本発明の半導体集積回路装置の設計支援プログラムは、
前記遷移時間エラー検出手段の検出結果に基づいて、前記遷移時間のエラーを修正するように前記ネットリスト又は配線レイアウトを変更する遷移時間エラー修正手段としてコンピュータを機能させることを特徴とする。
【００１６】
遷移時間エラー修正手段は、例えば、遷移時間のエラーが存在するネットにバッファを挿入したり、遷移時間のエラーが存在するネットを駆動するセルを駆動能力のより大きいバッファに置き換えてネットリストを変更してもよい。また、遷移時間エラー修正手段は、例えば、遷移時間のエラーが存在するネットの配線長がより短くなるようにレイアウトデータの配線レイアウトを変更してもよい。
【００１７】
本発明によれば、遷移時間のエラーを自動的に修正するので、人手による修正ミスを防止するとともに、遷移時間エラーの修正に要する工数を削減することができる。
【００１８】
（３）本発明の半導体集積回路装置の設計支援プログラムは、
前記遷移時間規格値設定手段は、
前記複数のセルの各々について、前記複数のセルの各々と前記動作周波数の対応関係を規定した対応表から動作周波数を選択し、前記動作周波数と遷移時間の規格値の前記対応関係から、当該選択した動作周波数に対応する前記規格値を選択し、当該規格値を設定することを特徴とする。
【００１９】
各セルと動作周波数の対応関係を規定した対応表は、例えば、各セルが属するブロックの動作周波数を指定し、各セルと当該セルが属するブロックの動作周波数を対応づけることにより作成されたものであってもよい。
【００２０】
本発明によれば、各セルと動作周波数の対応関係を規定した対応表と、動作周波数と遷移時間の規格値の対応関係に基づいて、各セルの入力信号の遷移時間の規格値を自動的に設定することができる。従って、遷移時間の疑似エラーを排除し、真の遷移時間エラーのみを検出することができる。その結果、真のエラーのみを修正することができるので、エラー修正に伴うチップサイズの増加を抑制することができる。また、人手による規格値の設定ミスに伴う遷移時間エラーの検出漏れを防止するとともに、遷移時間エラー検出の工数を削減することができる。
【００２１】
（４）本発明の半導体集積回路装置の設計支援プログラムは、
前記遷移時間規格値設定手段は、
前記複数のセルの各々について、前記ネットリストに基づいて動作周波数を判別し、前記動作周波数と遷移時間の規格値の前記対応関係から、前記判別した動作周波数に対応する前記規格値を選択し、当該規格値を設定することを特徴とする。
【００２２】
本発明によれば、ネットリストに記述されたセルの接続情報に基づいて各セルの動作周波数を判別し、判別した動作周波数と遷移時間の規格値の対応関係に基づいて、各セルの入力信号の遷移時間の規格値を自動的に設定することができる。従って、遷移時間の疑似エラーを排除し、真の遷移時間エラーのみを検出することができる。その結果、真のエラーのみを修正することができるので、エラー修正に伴うチップサイズの増加を抑制することができる。また、人手による規格値の設定ミスに伴う遷移時間エラーの検出漏れを防止するとともに、遷移時間エラー検出の工数を削減することができる。
【００２３】
（５）本発明の半導体集積回路装置の設計支援プログラムは、
前記遷移時間規格値設定手段は、
前記複数のセルの各々について、当該セルの出力方向に所定の記憶素子又は外部出力端子に到達するまで前記ネットリストを探索し、到達した前記記憶素子又は前記外部出力端子について定義された動作周波数を当該セルの動作周波数として判別することを特徴とする。
【００２４】
所定の記憶素子は、各種のフリップフロップであってもよいし、各種のラッチであってもよい。
【００２５】
記憶素子の動作周波数は、例えば、スタティックタイミング解析の結果やクロックツリー作成の結果から自動的に抽出するようにしてもよい。
【００２６】
各セルの出力方向にネットリストを探索し、複数の記憶素子又は外部出力端子に到達した場合は、任意の一つの記憶素子又は外部出力端子について定義された動作周波数を当該セルの動作周波数として判別するようにしてもよいし、到達した複数の記憶素子又は外部出力端子について定義された動作周波数のうちの最大の動作周波数を当該セルの動作周波数として判別するようにしてもよい。
【００２７】
本発明によれば、各セルの出力からネットリストを後方探索（後方トレース）することにより当該セルの動作周波数を判別し、動作周波数と遷移時間の規格値の対応関係に基づいて、各セルの入力信号の遷移時間の規格値を自動的に設定することができる。従って、遷移時間の疑似エラーを排除し、真の遷移時間エラーのみを検出することができる。その結果、真のエラーのみを修正することができるので、エラー修正に伴うチップサイズの増加を抑制することができる。また、人手による規格値の設定ミスに伴う遷移時間エラーの検出漏れを防止するとともに、遷移時間エラー検出の工数を削減することができる。
【００２８】
（６）本発明の半導体集積回路装置の設計支援プログラムは、
前記複数のセルの各々について、前記遷移時間計算手段が計算した前記遷移時間が、前記動作周波数と遷移時間の規格値の前記対応関係において定義された最小の前記規格値よりも大きいか否かの判断を行い、前記遷移時間が当該最小の前記規格値よりも大きい場合には前記遷移時間の暫定的なエラーとして検出する遷移時間暫定エラー検出手段としてコンピュータを機能させ、
前記遷移時間規格値設定手段は、
前記遷移時間の暫定的なエラーを有するセルの各々について前記規格値を設定し、
前記遷移時間エラー検出手段は、
前記遷移時間の暫定的なエラーを有するセルの各々について前記遷移時間のエラーを検出することを特徴とする。
【００２９】
本発明によれば、まず、動作周波数と遷移時間の規格値の対応関係において定義された最小の規格値により各セルの遷移時間エラー（暫定エラー）を検出する。すなわち、各セルについて最も厳しい条件で遷移時間エラーを検出するため疑似エラーが発生する可能性があるが、少なくとも真の遷移時間エラーを見逃すことを確実に防止することができる。また、疑似エラーが発生したセルについても、動作周波数に対応した適切な規格値により再度遷移時間エラーが検出されるので、最終的に疑似エラーが残存することを防止することができる。すなわち、本発明によれば、遷移時間の疑似エラーを排除し、真の遷移時間エラーのみを検出することができる。その結果、真のエラーのみを修正することができるので、エラー修正に伴うチップサイズの増加を抑制することができる。
【００３０】
また、本発明によれば、遷移時間エラー又は疑似エラーが検出されたセルに対してのみ、各セルの動作周波数に対応する遷移時間の規格値を設定して真の遷移時間エラーを検出する。そのため、動作周波数に対応する遷移時間の規格値を設定するセルの数を大幅に削減することができる。従って、ネットリストの後方トレースにより各セルの動作周波数を自動的に判別する場合においても、後方トレースの対象となるセルの数を大幅に削減することができるので、遷移時間エラー検出の工数を削減することができる。
【００３１】
（７）本発明の半導体集積回路装置の設計支援プログラムは、
指定した外部入力端子又は指定した内部ノードから所定の外部出力端子又は所定の内部ノードに至る経路上に存在するセルを抽出する遷移時間エラー除外セル抽出手段としてコンピュータを機能させ、
前記遷移時間エラー検出手段は、
前記遷移時間エラー除外セル抽出手段が抽出したセルについては、前記遷移時間のエラーを検出しないことを特徴とする。
【００３２】
所定の外部端子又は前記所定の内部ノードは、明示的に指定してもよいし、
遷移時間エラー除外セル抽出手段は、指定した外部入力端子又は指定した内部ノードから所定の外部出力端子又は所定の内部ノードに到達するまで前記ネットリストを出力方向に探索し、前記所定の外部端子又は前記所定の内部ノードに到達するまでに通過したセルを抽出するようにしてもよい。
【００３３】
本発明によれば、指定した外部入力端子又は指定した内部ノードから所定の外部出力端子又は所定の内部ノードに至る経路上に存在するセルを遷移時間エラーの検出対象から除外することができる。従って、遷移時間エラーの検出対象をより柔軟に選択することができる。
【００３４】
例えば、低速動作しかしないテスト回路中のセルについての遷移時間エラーは修正する必要がない。従って、テスト回路のテストモードを設定するための外部入力端子や内部ノードを指定し、テスト回路の出力ノードに至る経路上に存在するセル（すなわち、テスト回路中のすべてのセル）を遷移時間エラーの検出対象から除外してもよい。このように、本発明によれば、遷移時間エラーの修正が不要なセルを遷移時間エラーの検出対象から除外することができるので、真のエラーのみを修正することができる。従って、エラー修正に伴うチップサイズの増加を抑制することができる。
【００３５】
（８）本発明は、
異なる動作周波数で動作する複数のセルを含む半導体集積回路装置の設計を支援する設計支援システムであって、
前記複数のセルの接続情報を含むネットリストに基づいて、前記複数のセルの各々について、当該セルの入力信号の遷移時間を計算する遷移時間計算手段と、
前記複数のセルの各々について、前記動作周波数と遷移時間の規格値についてあらかじめ定義された対応関係に基づいて、当該セルの入力信号の遷移時間の規格値を設定する遷移時間規格値設定手段と、
前記複数のセルの各々について、前記遷移時間計算手段が計算した前記遷移時間と前記遷移時間規格値設定手段が設定した前記規格値に基づいて、前記遷移時間のエラーを検出する遷移時間エラー検出手段と、を含むことを特徴とする。
【００３６】
（９）本発明は、
異なる動作周波数で動作する複数のセルを含む半導体集積回路装置の設計方法であって、
前記複数のセルの接続情報を含むネットリストに基づいて、前記複数のセルの各々について、当該セルの入力信号の遷移時間を計算する遷移時間計算ステップと、
前記複数のセルの各々について、前記動作周波数と遷移時間の規格値についてあらかじめ定義された対応関係に基づいて、当該セルの入力信号の遷移時間の規格値を設定する遷移時間規格値設定ステップと、
前記複数のセルの各々について、前記遷移時間計算ステップにおいて計算した前記遷移時間と前記遷移時間規格値設定ステップにおいて設定した前記規格値に基づいて、前記遷移時間のエラーを検出する遷移時間エラー検出ステップと、を含むことを特徴とする。
【００３７】
（１０）本発明は、
上記のいずれかに記載された半導体集積回路装置の設計支援プログラム、上記に記載された半導体集積回路装置の設計支援システム又は上記に記載された半導体集積回路装置の設計方法を用いて設計製造されたことを特徴とする半導体集積回路装置である。
【００３８】
（１１）本発明は、
上記に記載された半導体集積回路装置と、
前記半導体集積回路装置の処理対象となるデータの入力手段と、
前記半導体集積回路装置により処理されたデータを出力するための出力手段とを含むことを特徴とする電子機器である。
【発明を実施するための最良の形態】
【００３９】
以下、本発明の好適な実施形態について図面を用いて詳細に説明する。なお、以下に説明する実施の形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また以下で説明される構成の全てが本発明の必須構成要件であるとは限らない。
【００４０】
１．半導体集積回路装置の設計支援システム、半導体集積回路装置の設計支援プログラム
図１は、本実施形態の半導体集積回路装置の設計支援システム及び設計プログラムについて説明するための図である。本実施形態の半導体集積回路装置の設計支援システム１は、当該構成要素（各部）の一部を省略した構成としてもよい。
【００４１】
本実施形態の半導体集積回路装置の設計支援システム１は、異なる動作周波数で動作する複数のセルを含む半導体集積回路装置の設計を支援する設計支援システムである。
【００４２】
操作部３０は、ユーザーの操作等をデータとして入力するためのものであり、その機能は、例えばキーボードやマウス等のハードウェアにより実現できる。
【００４３】
記憶部４０は、処理部１０や通信部８０などのワーク領域となるもので、その機能はＲＡＭなどのハードウェアにより実現できる。
【００４４】
記憶部４０は、ライブラリ情報記憶部４２を含む。
【００４５】
ライブラリ情報記憶部４２は、設計データにより得られたライブラリ情報（論理回路情報、レイアウト情報、接続情報）や、生成されたネットリストの情報、動作周波数と遷移時間の規格値の対応関係情報等が記憶されている。
【００４６】
情報記憶媒体５０（コンピュータにより読み取り可能な媒体）は、プログラムやデータなどを格納するものであり、その機能は、光ディスク（ＣＤ、ＤＶＤ等）、光磁気ディスク（ＭＯ）、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ（ＲＯＭ）などのハードウェアにより実現できる。
【００４７】
また情報記憶媒体５０には、本実施形態の各手段としてコンピュータを機能させるプログラムや補助データ（付加データ）が記憶される。
【００４８】
処理部１０は、この情報記憶媒体５０に格納されるプログラム（設計支援プログラム）や情報記憶媒体５０から読み出されたデータなどに基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体５０には、本実施形態の各手段としてコンピュータを機能させるためのプログラム（各手段の処理をコンピュータに実行させるためのプログラム）が記憶される。
【００４９】
表示部６０は、本実施形態により生成された画像を出力するものであり、その機能は、ＣＲＴディスプレイ、ＬＣＤ（液晶ディスプレイ）、ＯＥＬＤ（有機ＥＬディスプレイ）、ＰＤＰ（プラズマディスプレイパネル）、タッチパネル型ディスプレイなどのハードウェアにより実現できる。
【００５０】
音出力部７０は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどのハードウェアにより実現できる。
【００５１】
通信部８０は、外部（例えばサーバ装置や他の端末機）との間で通信を行うための各種の制御を行うものであり、その機能は、各種プロセッサ又は通信用ＡＳＩＣなどのハードウェアや、プログラムなどにより実現できる。
【００５２】
処理部１０（プロセッサ）は、操作部３０からの操作データやプログラムなどに基づいて、各種処理などを行う。この処理部１０は記憶部４０をワーク領域として各種処理を行う。処理部１０の機能は各種プロセッサ（ＣＰＵ、ＤＳＰ等）、ＡＳＩＣ（ゲートアレイ等）などのハードウェアや、アプリケーションプログラム、ＯＳ（例えば汎用ＯＳ等）により実現できる。
【００５３】
処理部１０は、遷移時間計算手段１２、遷移時間規格値設定手段１４、遷移時間エラー検出手段１６を含む。処理部１０は、さらに、遷移時間エラー修正手段１８、遷移時間暫定エラー検出手段２０、遷移時間エラー除外セル抽出手段２２を含んでもよい。
【００５４】
遷移時間計算手段１２は、複数のセルの接続情報を含むネットリストに基づいて、複数のセルの各々について、当該セルの入力信号の遷移時間を計算する処理を行う。
【００５５】
遷移時間規格値設定手段１４は、複数のセルの各々について、動作周波数と遷移時間の規格値についてあらかじめ定義された対応関係に基づいて、当該セルの入力信号の遷移時間の規格値を設定する処理を行う。
【００５６】
また、遷移時間規格値設定手段１４は、複数のセルの各々について、複数のセルの各々と動作周波数の対応関係を規定した対応表から動作周波数を選択し、動作周波数と遷移時間の規格値の対応関係から、当該選択した動作周波数に対応する規格値を選択し、当該規格値を設定するようにしてもよい。
【００５７】
また、遷移時間規格値設定手段１４は、複数のセルの各々について、ネットリストに基づいて動作周波数を判別し、動作周波数と遷移時間の規格値の対応関係から、判別した動作周波数に対応する規格値を選択し、当該規格値を設定するようにしてもよい。例えば、遷移時間規格値設定手段１４は、複数のセルの各々について、当該セルの出力方向に所定の記憶素子又は外部出力端子に到達するまでネットリストを探索し、到達した記憶素子又は外部出力端子について定義された動作周波数を当該セルの動作周波数として判別するようにしてもよい。
【００５８】
また、遷移時間規格値設定手段１４は、遷移時間暫定エラー検出手段２０が検出した遷移時間の暫定的なエラーを有するセルの各々について規格値を設定するようにしてもよい。
【００５９】
遷移時間エラー検出手段１６は、複数のセルの各々について、遷移時間計算手段１２が計算した遷移時間と遷移時間規格値設定手段１４が設定した規格値に基づいて、遷移時間のエラーを検出する処理を行う。
【００６０】
また、遷移時間エラー検出手段１６は、複数のセルの各々について、遷移時間計算手段１２が計算した遷移時間が、遷移時間規格値設定手段１４が設定した規格値よりも大きいか否かの判断を行い、当該遷移時間が当該規格値よりも大きい場合には遷移時間のエラーとして検出するようにしてもよい。
【００６１】
また、遷移時間エラー検出手段１６は、複数のセルの各々について、遷移時間計算手段１２が計算した遷移時間と遷移時間規格値設定手段１４が設定した規格値の差が所定の値よりも大きいか否かの判断を行い、当該遷移時間と当該規格値の差が所定の値よりも大きい場合には遷移時間のエラーとして検出するようにしてもよい。
【００６２】
また、遷移時間エラー検出手段１６は、遷移時間エラー除外セル抽出手段２２が抽出したセルについては、遷移時間のエラーを検出しないようにしてもよい。
【００６３】
また、遷移時間エラー検出手段１６は、遷移時間暫定エラー検出手段２０が検出した遷移時間の暫定的なエラーを有するセルの各々について遷移時間のエラーを検出するようにしてもよい。
【００６４】
遷移時間エラー修正手段１８は、遷移時間エラー検出手段１６の検出結果に基づいて、遷移時間のエラーを修正するようにネットリスト又は配線レイアウトを変更する処理を行う。
【００６５】
遷移時間暫定エラー検出手段２０は、複数のセルの各々について、遷移時間計算手段１２が計算した遷移時間が、動作周波数と遷移時間の規格値の対応関係において定義された最小の規格値よりも大きいか否かの判断を行い、遷移時間が当該最小の規格値よりも大きい場合には遷移時間の暫定的なエラーとして検出する処理を行う。
【００６６】
遷移時間エラー除外セル抽出手段２２は、指定した外部入力端子又は指定した内部ノードから所定の外部出力端子又は所定の内部ノードに至る経路上に存在するセルを抽出する処理を行う。
【００６７】
本実施形態の半導体集積回路装置の設計支援システム又は設計支援プログラムによれば、動作周波数と遷移時間の規格値の対応関係（ライブラリ情報）に基づいて、各セルの入力信号の遷移時間の規格値を設定し、各セルの遷移時間のエラーの有無を判断する。従って、動作周波数に応じてセル毎に異なる規格値を設定することができるので、遷移時間の疑似エラーを排除し、真の遷移時間エラーのみを検出することができる。その結果、真のエラーのみを修正することができるので、エラー修正に伴うチップサイズの増加を抑制することができる。
【００６８】
また、本実施形態の半導体集積回路装置の設計支援システム又は設計支援プログラムによれば、各セルの動作周波数に対応して遷移時間の規格値を設定する。従って、ネットリストに基づいて各セルの動作周波数を解析することにより、各セルの入力信号の遷移時間の規格値を自動的に選択することができる。そのため、人手による規格値の設定ミスに伴う遷移時間のエラーの検出漏れを防止するとともに、遷移時間エラー検出の工数を削減することができる。
【００６９】
また、本実施形態の半導体集積回路装置の設計支援システム又は設計支援プログラムによれば、遷移時間のエラーを自動的に修正するので、人手による修正ミスを防止するとともに、遷移時間エラーの修正に要する工数を削減することができる。
【００７０】
なお、本実施形態の各手段としてコンピュータを機能させるためのプログラム（設計支援プログラム）は、ホスト装置（サーバー）が有する情報記憶媒体からネットワーク及び通信部８０を介して情報記憶媒体５０（記憶部４０）に配信してもよい。このようなホスト装置（サーバー）の情報記憶媒体の使用も本発明の範囲内に含めることができる。
【００７１】
２．半導体集積回路装置の設計方法、半導体集積回路装置の設計支援プログラムの処理手順
２．１  第１の実施例
図２は、本実施の形態の半導体集積回路装置の設計方法（設計支援プログラムの処理手順）の第１の実施例を説明するためのフローチャートである。以下、図２のフローチャートについて説明する。
【００７２】
まず、半導体集積回路装置のネットリスト（一部のネットリストでもよい）を読み込み、各セルの入力信号の遷移時間を計算する(遷移時間計算ステップ（ステップＳ１０）)。例えば、スタティックタイミング解析や回路シミュレーションを実行して、各セルの入力信号の遷移時間を計算する。入力信号の遷移時間（以下、Ｔｓｌｅｗという）は、当該入力信号がＬレベルの電圧からＨレベルの電圧に変化するまでの時間（立ち上がり遷移時間）であってもよいし、Ｈレベルの電圧からＬレベルの電圧に変化するまでの時間（立ち下がり遷移時間）であってもよい。各セルについて立ち上がり遷移時間と立ち下がり遷移時間をそれぞれ別個に計算するのがより好ましい。各セルのＴｓｌｅｗは、当該セルの入力端子に接続されるネットの仮想配線長に基づく配線容量及び配線抵抗や当該ネットに接続される他のセルの入力端子のゲート容量を考慮して、仮想的に計算してもよい。例えば、設計初期においてネットリストに対応するレイアウトデータが存在しない場合等には、スルーレート（信号の傾き）が大きいネットを早期に発見することができる。また、精度の高い計算を行うためには、ネットリストに対応するレイアウトデータから抽出した各ネットの寄生抵抗や寄生容量等の情報（ＲＣ抽出結果）をさらに読み込んで、各セルのＴｓｌｅｗを計算するのがより好ましい。各セルのＴｓｌｅｗの計算値（Ｔｓｌｅｗ計算値）をリストしてファイルに出力してもよいし、当該計算値を中間データとして記憶部４０（図１参照）等に記憶しておいてもよい。
【００７３】
次に、ライブラリ情報を読み込んで、各セルのＴｓｌｅｗの規格値（Ｔｓｌｅｗ規格値）を設定する(遷移時間規格値設定ステップ（ステップＳ１２）)。ライブラリ情報には、動作周波数とＴｓｌｅｗ規格値の対応関係を規定したデータ（対応表でもよいし、関数でもよい）が含まれている。例えば、動作周波数とＴｓｌｅｗ規格値の対応関係を規定した対応表をプロセス毎に作成してライブラリ情報（Ｔｓｌｅｗ規格値ライブラリ情報）として登録しておいて汎用的に使用するようにしてもよい。図３にＴｓｌｅｗ規格値ライブラリ情報の一例を示す。Ｔｓｌｅｗ規格値ライブラリ情報１０２は、例えば、動作周波数が０〜５０ＭＨｚのセルのＴｓｌｅｗ規格値はＴｓｌｅｗ１（ｎｓ）であることを示している。すなわち、動作周波数が０〜５０ＭＨｚのセルの入力遷移時間はＴｓｌｅｗ１（ｎｓ）以下であれば許容され、Ｔｓｌｅｗエラーにならない。同様に、動作周波数が５０ＭＨｚ、１００ＭＨｚ、１５０ＭＨｚ、２００ＭＨｚ、２５０ＭＨｚ、３００ＭＨｚのセルのＴｓｌｅｗ規格値はそれぞれＴｓｌｅｗ２（ｎｓ）〜Ｔｓｌｅｗ７（ｎｓ）である。例えば、セル毎に、当該セルの動作周波数に対応するＴｓｌｅｗ規格値をＴｓｌｅｗ規格値ライブラリ情報１０２から選択して、Ｔｓｌｅｗ規格値を設定するようにしてもよい。なお、一般的には、動作周波数が高いほど動作タイミングが厳しくなるので、動作周波数が高いほどＴｓｌｅｗ規格値は小さく設定される（上記の例では、Ｔｓｌｅｗ７が最小値となる）。
【００７４】
次に、ステップＳ１０でセル毎に計算したＴｓｌｅｗ計算値とステップＳ１２でセル毎に設定したＴｓｌｅｗ規格値に基づいて、Ｔｓｌｅｗエラーを検出する(遷移時間エラー検出ステップ（ステップＳ１４）)。例えば、Ｔｓｌｅｗ計算値がＴｓｌｅｗ規格値よりも大きい場合にはＴｓｌｅｗエラーとして検出する。
【００７５】
最後に、ステップＳ１４の検出結果に基づいて、Ｔｓｌｅｗエラーを修正する(遷移時間エラー修正ステップ（ステップＳ１６）)。例えば、Ｔｓｌｅｗエラーが存在するネットにバッファを挿入したり、Ｔｓｌｅｗエラーが存在するネットを駆動するセルを駆動能力のより大きいバッファに置き換えてネットリストを変更してもよい。また、例えば、Ｔｓｌｅｗエラーが存在するネットの配線長がより短くなるようにレイアウトデータの配線レイアウトを変更してもよい。
【００７６】
図４は、遷移時間規格値設定ステップ（図２のフローチャートのステップＳ１２）の処理手順の一例を示すフローチャートである。以下、図４のフローチャートについて説明する。
【００７７】
まず、ネットリストに含まれるＮ個のブロックＢｋ(ｋ＝１〜Ｎ)に対して動作周波数ｆｋを指定する（ステップＳ１２０）。例えば、図５において、半導体集積回路装置（ネットリスト）１００は３個のブロックＢ１、Ｂ２、Ｂ３を含んでいる。ここで、ブロックＢ１はＬ個のセルＩ１１〜Ｉ１Ｌを含み、５０ＭＨｚ又は１５０ＭＨｚの周波数で動作するものとする。また、ブロックＢ２はＭ個のセルＩ２１〜Ｉ２Ｍを含み、常時５０ＭＨｚで動作し、ブロックＢ３はＮ個のセルＩ３１〜Ｉ３Ｎを含み、５０ＭＨｚ又は１００ＭＨｚの周波数で動作するものとする。このような場合、例えば、ブロックＢ２に対して５０ＭＨｚの動作周波数を指定し、ブロックＢ１、Ｂ３に対してはそれぞれ高い方の周波数である１５０ＭＨｚ、１００ＭＨｚを選択して動作周波数として指定するようにしてもよい。Ｔｓｌｅｗ規格値ライブラリ情報において動作周波数が高いほどＴｓｌｅｗ規格値が小さく設定されているものと仮定すると、ブロックＢ１、Ｂ２、Ｂ３に対して最高周波数を選択することにより、後述のステップＳ１２４の処理においてより小さいＴｓｌｅｗ規格値が選択されることになる。
【００７８】
次に、各セルがどのブロックに属するかを判別し、各セルと動作周波数の対応関係を規定した対応表（動作周波数対応表）を作成する（ステップＳ１２２）。図５のネットリスト１００において、セルＩ１１〜Ｉ１ＬはブロックＢ１に属し、セルＩ２１〜Ｉ２ＭはブロックＢ２に属し、セルＩ３１〜Ｉ３ＮはブロックＢ３に属すると判別される。ステップＳ１２０でブロックＢ１に対して１５０ＭＨｚの動作周波数を指定したので、セルＩ１１〜Ｉ１Ｌの動作周波数は１５０ＭＨｚに設定される。また、ステップＳ１２０でブロックＢ２に対して５０ＭＨｚの動作周波数を指定したので、セルＩ２１〜Ｉ２Ｍの動作周波数は５０ＭＨｚに設定される。また、ステップＳ１２０でブロックＢ３に対して１００ＭＨｚの動作周波数を指定したので、セルＩ３１〜Ｉ３Ｎの動作周波数は１００ＭＨｚに設定される。このようにして作成された動作周波数対応表１０４の例を図６（Ａ）に示す。
【００７９】
次に、Ｔｓｌｅｗ規格値ライブラリ情報から各セルが属するブロックに指定された動作周波数に対応するＴｓｌｅｗ規格値を選択する（ステップＳ１２４）。例えば、図５において、セルＩ１１〜Ｉ１Ｌについては、ステップＳ１２２の処理でブロックＢ１に属するとものと判別されたので、ステップＳ１２０の処理でブロックＢ１に指定された動作周波数の１５０ＭＨｚに対応するＴｓｌｅｗ規格値が選択される。図３のＴｓｌｅｗ規格値ライブラリ情報１０２に従うものとすると、動作周波数１５０ＭＨｚに対応するＴｓｌｅｗ規格値であるＴｓｌｅｗ４が選択される。また、セルＩ２１〜Ｉ２Ｍについては、ステップＳ１２２の処理でブロックＢ２に属するとものと判別されたので、ステップＳ１２０の処理でブロックＢ２に指定された動作周波数の５０ＭＨｚに対応するＴｓｌｅｗ規格値であるＴｓｌｅｗ２が選択される。同様に、セルＩ３１〜Ｉ３Ｎについては、ステップＳ１２２の処理でブロックＢ３に属するとものと判別されたので、ステップＳ１２０の処理でブロックＢ３に指定された動作周波数の１００ＭＨｚに対応するＴｓｌｅｗ規格値であるＴｓｌｅｗ３が選択される。
【００８０】
最後に、ステップＳ１２４で各セルについて選択したＴｓｌｅｗ規格値から各セルと動作周波数の対応関係を規定した対応表（Ｔｓｌｅｗ規格値対応表）を作成する（ステップＳ１２６）。Ｔｓｌｅｗ規格値対応表１０６の例を図６（Ｂ）に示す。
【００８１】
図７は、遷移時間エラー検出ステップ（図２のフローチャートのステップＳ１４）の処理手順の一例を示すフローチャートである。以下、図７のフローチャートについて説明する。
【００８２】
まず、図２のフローチャートのステップＳ１０のＴｓｌｅｗ計算結果から各セルＩｊについてＴｓｌｅｗ計算値Ｔｊを選択する（ステップＳ１４０）。
【００８３】
次に、図４のフローチャートのステップＳ１２６で作成したＴｓｌｅｗ規格値対応表から各セルＩｊについてＴｓｌｅｗ規格値Ｔｓｌｅｗｊを選択する（ステップＳ１４２）。
【００８４】
次に、ステップＳ１４０で選択したＴｓｌｅｗ計算値ＴｊがステップＳ１４２で選択したＴｓｌｅｗ規格値Ｔｓｌｅｗｊよりも大きいか否かを判断する（ステップＳ１４４）。Ｔｓｌｅｗ計算値ＴｊがＴｓｌｅｗ規格値Ｔｓｌｅｗｊよりも大きい場合（ステップＳ１４４でＹｅｓの場合）には、セルＩｊの入力信号にＴｓｌｅｗエラーが存在するので、セルＩｊのＴｓｌｅｗエラーをＴｓｌｅｗエラーリストに追加する（ステップＳ１４６）。
【００８５】
最後に、Ｔｓｌｅｗ規格値対応表に含まれるすべてのセルについてステップＳ１４０〜Ｓ１４６の処理が終了したか否かを判断する（ステップＳ１４８）。すべてのセルに対するステップＳ１４０〜Ｓ１４６の処理が終了すれば、ＴｓｌｅｗエラーがリストアップされたＴｓｌｅｗエラーリストが得られる。
【００８６】
そして、前述した通り、遷移時間エラー修正ステップ（図２のフローチャートのステップＳ１６）において、ＴｓｌｅｗエラーリストにリストアップされたＴｓｌｅｗエラーが修正される。
【００８７】
本実施形態の半導体集積回路装置の設計方法（設計支援プログラム）によれば、各セルと動作周波数の対応関係を規定した対応表（動作周波数対応表）と、動作周波数とＴｓｌｅｗ規格値の対応関係（ライブラリ情報）に基づいて、各セルのＴｓｌｅｗ規格値を自動的に設定することができる。従って、Ｔｓｌｅｗの疑似エラーを排除し、真のＴｓｌｅｗエラーのみを検出することができる。その結果、真のＴｓｌｅｗエラーのみを修正することができるので、エラー修正に伴うチップサイズの増加を抑制することができる。また、人手によるＴｓｌｅｗ規格値の設定ミスに伴うＴｓｌｅｗエラーの検出漏れを防止するとともに、Ｔｓｌｅｗエラー検出の工数を削減することができる。
【００８８】
２．２  第２の実施例
図８は、本実施の形態の半導体集積回路装置の設計方法の第２の実施例（設計支援プログラムの処理手順）を説明するためのフローチャートである。以下、図８のフローチャートについて説明する。なお、図８のフローチャートのステップＳ２０、Ｓ２２、Ｓ２４、Ｓ２６の処理は、図２のフローチャートのステップＳ１０、Ｓ１２、Ｓ１４、Ｓ１６の処理と同様であり、具体的な処理の説明は省略する。
【００８９】
まず、半導体集積回路装置のネットリスト、ＲＣ抽出結果を読み込み、各セルの入力信号の遷移時間を計算する(遷移時間計算ステップ（ステップＳ２０）)。
【００９０】
次に、すべてのセルのＴｓｌｅｗ規格値として、Ｔｓｌｅｗ規格値ライブラリ情報における最小のＴｓｌｅｗ規格値を設定し、Ｔｓｌｅｗエラー（暫定エラー）を検出する(遷移時間暫定エラー検出ステップ（ステップＳ２１）)。例えば、図３のＴｓｌｅｗ規格値ライブラリ情報１０２におけるＴｓｌｅｗ規格値Ｔｓｌｅｗ１〜Ｔｓｌｅｗ７のうち、最小のＴｓｌｅｗ規格値がＴｓｌｅｗ７であるとすると、図５におけるすべてのセルＩ１１〜Ｉ１Ｌ、Ｉ２１〜Ｉ２Ｍ、Ｉ３１〜Ｉ３ＮのＴｓｌｅｗ規格値としてＴｓｌｅｗ７を設定してＴｓｌｅｗエラーを検出する。ここで、すべてのセルのＴｓｌｅｗ規格値として、Ｔｓｌｅｗ規格値ライブラリ情報における最小のＴｓｌｅｗ規格値を設定するので、真のＴｓｌｅｗエラーではない疑似エラーも検出される。そこで、後述するステップＳ２２及びステップＳ２４において、真のＴｓｌｅｗエラーのみを検出する処理が行われる。
【００９１】
次に、ステップＳ２１で検出した各セルに対して、周波数定義ファイルに基づいて動作周波数を判別し、Ｔｓｌｅｗ規格値ライブラリ情報に定義されたＴｓｌｅｗ規格値を設定する(遷移時間規格値設定ステップ（ステップＳ２２）)。周波数定義ファイルは、各フリップフロップ（ＦＦ）や外部出力端子の接続先のＦＦのクロック入力端子に供給されるクロック信号の周波数（各ＦＦ又は外部出力端子の動作周波数）を定義するファイルであってもよい。例えば、ステップＳ２１で検出した暫定エラーを有する各セルを出力方向にトレースして到達したＦＦや外部出力端子の動作周波数を周波数定義ファイルから判別して当該セルの動作周波数とし、Ｔｓｌｅｗ規格値ライブラリ情報から対応するＴｓｌｅｗ規格値を選択して設定するようにしてもよい。なお、周波数定義ファイルは、例えば、スタティックタイミング解析の結果やクロックツリー作成時に指定したクロックルートの情報から作成するようにしてもよい。
【００９２】
次に、ステップＳ２０でセル毎に計算したＴｓｌｅｗ計算値とステップＳ２２でセル毎に設定したＴｓｌｅｗ規格値に基づいて、Ｔｓｌｅｗエラー（真のＴｓｌｅｗエラー）を検出する(遷移時間エラー検出ステップ（ステップＳ２４）)。
【００９３】
最後に、ステップＳ２４の検出結果に基づいて、真のＴｓｌｅｗエラーのみを修正する(遷移時間エラー修正ステップ（ステップＳ２６）)。
【００９４】
図９は、遷移時間暫定エラー検出ステップ（図８のフローチャートのステップＳ２１）の処理手順の一例を示すフローチャートである。以下、図９のフローチャートについて説明する。
【００９５】
まず、図８のフローチャートのステップＳ２０のＴｓｌｅｗ計算結果から各セルＩｊについてＴｓｌｅｗ計算値Ｔｊを選択する（ステップＳ２１０）。
【００９６】
次に、すべてのセルのＴｓｌｅｗ規格値として、Ｔｓｌｅｗ規格値ライブラリ情報における最小のＴｓｌｅｗ規格値Ｔｓｌｅｗｍｉｎを設定する（ステップＳ２１２）。
【００９７】
次に、ステップＳ２１０で選択したＴｓｌｅｗ計算値ＴｊがステップＳ２１２で設定したＴｓｌｅｗ規格値Ｔｓｌｅｗｍｉｎよりも大きいか否かを判断する（ステップＳ２１４）。Ｔｓｌｅｗ計算値ＴｊがＴｓｌｅｗ規格値Ｔｓｌｅｗｍｉｎよりも大きい場合（ステップＳ２１４でＹｅｓの場合）には、セルＩｊの入力信号に真のＴｓｌｅｗエラー又は疑似エラーが存在するので、セルＩｊのＴｓｌｅｗエラー又は疑似エラーをＴｓｌｅｗ暫定エラーリストに追加する（ステップＳ２１６）。
【００９８】
最後に、すべてのセルについてステップＳ２１０〜Ｓ２１６の処理が終了したか否かを判断する（ステップＳ２１８）。すべてのセルに対するステップＳ２１０〜Ｓ２１６の処理が終了すれば、真のＴｓｌｅｗエラー及び疑似エラーがリストアップされたＴｓｌｅｗ暫定エラーリストが得られる。
【００９９】
図１０は、遷移時間規格値設定ステップ（図８のフローチャートのステップＳ２２）の処理手順の一例を示すフローチャートである。以下、図１０のフローチャートについて説明する。
【０１００】
まず、図９のフローチャートのステップＳ２１６で作成したＴｓｌｅｗ暫定エラーリストにリストアップされた真のＴｓｌｅｗエラー又は疑似エラーを有する各セルＩｊについて、セルＩｊの出力から外部出力の方向にネットリストを後方トレースする（ステップＳ２２０）。
【０１０１】
次に、ＦＦのデータ入力端子又は外部出力端子に到達したか否かを判断する（ステップＳ２２２）。ＦＦのデータ入力端子又は外部出力端子に到達していない場合（ステップＳ２２２でＮｏの場合）は、到達するまで後方トレースを行う。図１１は、後方トレースについて説明するための図である。図１１に示される回路は半導体集積回路装置（ネットリスト）に含まれる一部の回路であり、４つのバッファセル（２００、２０２、２１０、２１２）、２つのＡＮＤセル（２０４、２１６）、１つのＯＲセル（２０６）、２つのＦＦセル（２０８、２１８）及び１つの外部出力端子（２１４）によって構成されている。例えば、バッファセル２０２、２１０、ＡＮＤセル２１６の入力に接続されたネット２２０のＴｓｌｅｗエラー又は疑似エラーが存在する場合、Ｔｓｌｅｗ暫定エラーリストにはバッファセル２０２、２１０、ＡＮＤセル２１６のＴｓｌｅｗエラー又は疑似エラーがリストアップされている。バッファセル２０２についてその出力から後方トレースすると、ＡＮＤセル２０４、ＯＲセル２０６を通過してＦＦセル２０８のデータ入力端子（Ｄ端子）に到達する。また、バッファセル２１０についてその出力から後方トレースすると、バッファ２１２を通過して外部出力端子２１４に到達する。また、ＡＮＤセル２１６についてその出力から後方トレースすると、ＦＦセル２１８のデータ入力端子（Ｄ端子）に到達する。
【０１０２】
次に、ＦＦのデータ入力端子又は外部出力端子に到達した場合（ステップＳ２２２でＮｏの場合）は、到達したＦＦ又は外部出力端子の動作周波数を周波数定義ファイルから判別する（ステップＳ２２３）。ここで、周波数定義ファイルには、各ＦＦ又は外部出力端子の動作周波数が定義されている。例えば、図１１のケースでは、ＦＦセル２０８のクロック入力端子（Ｃ端子）には１５０ＭＨｚのクロック信号ＣＬＫ１が供給されており、ＦＦセル２１８のクロック入力端子（Ｃ端子）には１００ＭＨｚのクロック信号ＣＬＫ２が供給されている。また、外部出力端子２１４の接続先のＦＦのクロック入力信号ＣＬＫ３の周波数は５０ＭＨｚである。従って、周波数定義ファイルには、ＦＦセル２０８、ＦＦセル２１８及び外部出力端子２１４の動作周波数としてそれぞれ１５０ＭＨｚ、１００ＭＨｚ及び５０ＭＨｚが定義されている。
【０１０３】
次に、各セルＩｊのＴｓｌｅｗ規格値として、Ｔｓｌｅｗ規格値ライブラリ情報からステップＳ２２３で判別したＦＦ又は外部出力端子の動作周波数に対応するＴｓｌｅｗ規格値を選択する（ステップＳ２２４）。例えば、図１１のケースでは、バッファセル２０２から後方トレースして到達したＦＦセル２０８の動作周波数は１５０ＭＨｚであるので、図３のＴｓｌｅｗ規格値ライブラリ情報１０２に従うものとすると、バッファセル２０２のＴｓｌｅｗ規格値としてＴｓｌｅｗ４が選択される。また、バッファセル２１０から後方トレースして到達した外部出力端子２１４の動作周波数は５０ＭＨｚであるので、バッファセル２１０のＴｓｌｅｗ規格値としてＴｓｌｅｗ２が選択される。また、ＡＮＤセル２１６から後方トレースして到達したＦＦセル２１８の動作周波数は１００ＭＨｚであるので、ＡＮＤセル２１６のＴｓｌｅｗ規格値としてＴｓｌｅｗ３が選択される。
【０１０４】
最後に、ステップＳ２２４で各セルについて選択したＴｓｌｅｗ規格値からＴｓｌｅｗ規格値対応表を作成する（ステップＳ２２６）。すなわち、Ｔｓｌｅｗ暫定エラーリストにリストアップされたＴｓｌｅｗエラー又は疑似エラーを有するセルのみのＴｓｌｅｗ規格値対応表が作成される。
【０１０５】
なお、ステップＳ２２２の処理において、例えば図１１のケースでバッファセル２００がＴｓｌｅｗエラー又は疑似エラーを有する場合、バッファセル２００の出力から後方トレースするとそれぞれ動作周波数の異なるＦＦセル２０８、２１８及び外部出力端子２１４に到達する。このような場合は、それぞれの動作周波数（１５０ＭＨｚ、５０ＭＨｚ、１００ＭＨｚ）に対応するＴｓｌｅｗ規格値Ｔｓｌｅｗ４、Ｔｓｌｅｗ２、Ｔｓｌｅｗ３のうちいずれか１つを選択するようにしてもよいし、最小のＴｓｌｅｗ規格値（例えば、Ｔｓｌｅｗ４）を選択するようにしてもよい。
【０１０６】
図１２は、遷移時間エラー検出ステップ（図８のフローチャートのステップＳ２４）の処理手順の一例を示すフローチャートである。以下、図１２のフローチャートについて説明する。
【０１０７】
まず、図８のフローチャートのステップＳ２０のＴｓｌｅｗ計算結果から各セルＩｊについてＴｓｌｅｗ計算値Ｔｊを選択する（ステップＳ２４０）。
【０１０８】
次に、図１０のフローチャートのステップＳ２２６で作成したＴｓｌｅｗ規格値対応表から各セルＩｊについてＴｓｌｅｗ規格値Ｔｓｌｅｗｊを選択する（ステップＳ２４２）。
【０１０９】
次に、ステップＳ２４０で選択したＴｓｌｅｗ計算値ＴｊがステップＳ２４２で選択したＴｓｌｅｗ規格値Ｔｓｌｅｗｊよりも大きいか否かを判断する（ステップＳ２４４）。Ｔｓｌｅｗ計算値ＴｊがＴｓｌｅｗ規格値Ｔｓｌｅｗｊよりも大きい場合（ステップＳ２４４でＹｅｓの場合）には、セルＩｊの入力信号に真のＴｓｌｅｗエラーが存在するので、セルＩｊのＴｓｌｅｗエラーをＴｓｌｅｗエラーリストに追加する（ステップＳ２４６）。
【０１１０】
最後に、Ｔｓｌｅｗ規格値対応表に含まれるすべてのセル（図９のフローチャートのステップＳ２１６で作成したＴｓｌｅｗ暫定エラーリストにリストアップされたＴｓｌｅｗエラー又は疑似エラーを有するすべてのセル）についてステップＳ２４０〜Ｓ２４６の処理が終了したか否かを判断する（ステップＳ２４８）。すべてのセルに対するステップＳ２４０〜Ｓ２４６の処理が終了すれば、真のＴｓｌｅｗエラーのみがリストアップされたＴｓｌｅｗエラーリストが得られる。
【０１１１】
そして、前述した通り、遷移時間エラー修正ステップ（図８のフローチャートのステップＳ２６）において、Ｔｓｌｅｗエラーリストにリストアップされた真のＴｓｌｅｗエラーのみが修正される。
【０１１２】
本実施形態の半導体集積回路装置の設計方法（設計支援プログラム）によれば、各セルの出力からネットリストを後方トレースすることにより当該セルの動作周波数を判別し、Ｔｓｌｅｗ規格値ライブラリ情報に基づいて、各セルのＴｓｌｅｗ規格値を自動的に設定することができる。従って、Ｔｓｌｅｗの疑似エラーを排除し、真のＴｓｌｅｗエラーのみを検出することができる。その結果、真のＴｓｌｅｗエラーのみを修正することができるので、エラー修正に伴うチップサイズの増加を抑制することができる。また、人手によるＴｓｌｅｗ規格値の設定ミスに伴うＴｓｌｅｗエラーの検出漏れを防止するとともに、Ｔｓｌｅｗエラー検出の工数を削減することができる。
【０１１３】
また、本実施形態の半導体集積回路装置の設計方法（設計支援プログラム）によれば、まず、Ｔｓｌｅｗ規格値ライブラリ情報において定義された最小のＴｓｌｅｗ規格値により各セルのＴｓｌｅｗエラー（暫定エラー）を検出する。すなわち、各セルについて最も厳しい条件でＴｓｌｅｗエラーを検出するため疑似エラーが発生する可能性があるが、少なくとも真のＴｓｌｅｗエラーを見逃すことを確実に防止することができる。また、疑似エラーが発生したセルについても、動作周波数に対応した適切なＴｓｌｅｗ規格値により再度Ｔｓｌｅｗエラーが検出されるので、最終的に疑似エラーが残存することを防止することができる。すなわち、本実施形態によれば、Ｔｓｌｅｗの疑似エラーを排除し、真のＴｓｌｅｗエラーのみを検出することができる。その結果、真のＴｓｌｅｗエラーのみを修正することができるので、エラー修正に伴うチップサイズの増加を抑制することができる。
【０１１４】
また、本実施形態の半導体集積回路装置の設計方法（設計支援プログラム）によれば、Ｔｓｌｅｗエラー又は疑似エラーが検出されたセルに対してのみ、各セルの動作周波数に対応するＴｓｌｅｗ規格値を設定して真のＴｓｌｅｗエラーを検出する。そのため、動作周波数に対応するＴｓｌｅｗ規格値を設定するセルの数を大幅に削減することができる。従って、ネットリストの後方トレースにより各セルの動作周波数を自動的に判別する場合においても、後方トレースの対象となるセルの数を大幅に削減することができるので、Ｔｓｌｅｗエラー検出の工数を削減することができる。
【０１１５】
２．３  第３の実施例
図１３は、本実施の形態の半導体集積回路装置の設計方法（設計支援プログラムの処理手順）の第３の実施例を説明するためのフローチャートである。以下、図１３のフローチャートについて説明する。なお、図１３のフローチャートのステップＳ３０、Ｓ３２、Ｓ３４、Ｓ３６の処理は、図２のフローチャートのステップＳ１０、Ｓ１２、Ｓ１４、Ｓ１６の処理と同様であり、具体的な処理の説明は省略する。
【０１１６】
まず、半導体集積回路装置のネットリスト、ＲＣ抽出結果を読み込み、各セルの入力信号の遷移時間を計算する(遷移時間計算ステップ（ステップＳ３０）)。
【０１１７】
次に、ライブラリ情報を読み込んで、各セルのＴｓｌｅｗ規格値を設定する(遷移時間規格値設定ステップ（ステップＳ３２）)。
【０１１８】
次に、抽出条件指定ファイルに基づいてネットリストを探索し、ステップＳ３２でＴｓｌｅｗ規格値を設定したセルのうち後続のステップＳ３４においてＴｓｌｅｗエラーの検出対象から除外するセルを抽出する(遷移時間エラー除外セル抽出ステップ（ステップＳ３３）)。抽出条件指定ファイルは、ネットリストにおいてＴｓｌｅｗエラー検出対象外のセルの抽出開始ポイント（外部入力端子や内部ノード）及び抽出終了ポイント（外部出力端子や内部ノード）を指定するファイルであってもよい。例えば、低速動作しかしないテスト回路中のセルについてのＴｓｌｅｗエラーは修正する必要がないので、Ｔｓｌｅｗエラーの修正対象とならないようにＴｓｌｅｗエラーの検出対象から除外してもよい。このような場合、抽出条件指定ファイルにおいて、例えば、テスト回路のテストモードを設定するための外部入力端子や内部ノードが抽出開始ポイントとして指定され、テスト回路の出力ノードが抽出終了ポイントとして指定されるようにしてもよい。そして、抽出開始ポイントとして指定された外部入力端子や内部ノードから後方トレースして抽出終了ポイントとして指定された外部出力端子や内部ノードに到達するまでに通過したセルをＴｓｌｅｗエラーの検出対象から除外するセルとして抽出してもよい。
【０１１９】
次に、ステップＳ３０でセル毎に計算したＴｓｌｅｗ計算値とステップＳ３２でセル毎に設定したＴｓｌｅｗ規格値に基づいて、Ｔｓｌｅｗエラーを検出する(遷移時間エラー検出ステップ（ステップＳ３４）)。ここで、例えば、ステップＳ３３において抽出したセル（Ｔｓｌｅｗエラーの検出対象から除外するセル）については、Ｔｓｌｅｗエラー検出を行わない。
【０１２０】
最後に、ステップＳ３４の検出結果に基づいて、Ｔｓｌｅｗエラーを修正する(遷移時間エラー修正ステップ（ステップＳ３６）)。
【０１２１】
図１４は、遷移時間規格値設定ステップ（図１３のフローチャートのステップＳ３２）の処理手順の一例を示すフローチャートである。以下、図１４のフローチャートについて説明する。なお、図１４のフローチャートのステップＳ３２０、Ｓ３２２、Ｓ３２４、Ｓ３２６の処理は、図４のフローチャートのステップＳ１２０、Ｓ１２２、Ｓ１２４、Ｓ１２６の処理と同様であり、具体的な処理の説明は省略する。
【０１２２】
まず、ネットリストに含まれるＮ個のブロックＢｋ(ｋ＝１〜Ｎ)に対して動作周波数ｆｋを指定する（ステップＳ３２０）。
【０１２３】
次に、各セルがどのブロックに属するかを判別し、動作周波数対応表を作成する（ステップＳ３２２）。
【０１２４】
次に、Ｔｓｌｅｗ規格値ライブラリ情報から各セルが属するブロックに指定された動作周波数に対応するＴｓｌｅｗ規格値を選択する（ステップＳ３２４）。
【０１２５】
最後に、ステップＳ３２４で各セルについて選択したＴｓｌｅｗ規格値からＴｓｌｅｗ規格値対応表を作成する（ステップＳ３２６）。
【０１２６】
なお、遷移時間規格値設定ステップ（図１３のフローチャートのステップＳ３２）として、図１４のフローチャートの代わりに図１０のフローチャートを適用することもできる。
【０１２７】
図１５は、遷移時間エラー除外セル抽出ステップ（図１３のフローチャートのステップＳ３３）の処理手順の一例を示すフローチャートである。以下、図１５のフローチャートについて説明する。
【０１２８】
まず、ネットリストにおいて、抽出条件指定ファイルに抽出開始ポイントとして指定された外部入力端子又は内部ノードから外部出力の方向に後方トレースする（ステップＳ３３０）。
【０１２９】
次に、何らかのセルに到達したか否かを判断する（ステップＳ３３２）。セルに到達していない場合（ステップＳ３３２でＮｏの場合）は、抽出条件指定ファイルに抽出終了ポイントとして指定された外部出力端子又は内部ノードに到達したか否かを判断し（ステップＳ３３６）、これらの外部出力端子又は内部ノードに到達していなければ（ステップＳ３３６でＮｏの場合）さらに後方トレースを行う。セルに到達した場合（ステップＳ３３２でＹｅｓの場合）は、到達したセルをＴｓｌｅｗエラー除外リストに追加する（ステップＳ３３４）。さらに後方トレースを行い、抽出終了ポイントとして指定された外部出力端子又は内部ノードに到達するまで（ステップＳ３３６でＹｅｓの場合）同様の処理を行う。
【０１３０】
図１６（Ａ）は、Ｔｓｌｅｗエラーの検出対象から除外するセルを抽出する処理の具体例について説明するための図である。図１６（Ａ）に示される回路は半導体集積回路装置（ネットリスト）に含まれる一部の回路であり、バッファセル３００（インスタンス名Ｉ１）、バッファセル３０２（インスタンス名Ｉ２）、マルチプレクサセル３０４（インスタンス名Ｉ３）、外部入力端子３０６、３１６、テスト回路３３０、外部出力端子３２８によって構成されている。テスト回路３３０は、バッファセル３０８（インスタンス名Ｉ４）、ＡＮＤセル３１０（インスタンス名Ｉ５）、バッファセル３１２（インスタンス名Ｉ６）、バッファセル３１４（インスタンス名Ｉ７）、バッファセル３１８（インスタンス名Ｉ８）、バッファセル３２０（インスタンス名Ｉ９）等によって構成されている。バッファセル３１２、３１４及び３２０はテスト回路３３０の出力信号を生成し、外部出力端子３２８にはテスト回路３３０の内部信号が直接出力される。テスト回路３３０は、外部入力端子３０６及び３１６からＨレベルの信号が入力された時にマルチプレクサセル３０４がＴＥＳＴＣＬＫ信号を選択し、外部入力端子３０６又は３１６からＬレベルの信号が入力された時にマルチプレクサセル３０４がＣＬＫＡ信号を選択するような制御信号を内部ノード３２２に出力する。また、テスト回路３３０は、外部入力端子３０６及び３１６から入力される信号の組み合わせに応じて内部ノード３２４、３２６にテストモード時の制御信号を出力する。ここで、外部入力端子３０６及び３１６から入力される信号が一定であれば、内部ノード３２２、３２４、３２６に出力される制御信号も一定である。従って、テスト回路３３０においてＴｓｌｅｗエラーがあっても問題にならない。このような場合、抽出条件指定ファイルに、抽出開始ポイントとして外部入力端子３０６及び３１６（例えば、端子名ＴＥＳＴ１、ＴＥＳＴ２）を指定し、抽出終了ポイントとして内部ノード３２２、３２４、３２６及び外部出力端子３２８を指定することができる。そうすると、抽出開始ポイントとして指定された外部入力端子３０６、３１６から後方トレースを行い、抽出終了ポイントとして指定された内部ノード３２２、３２４、３２６及び外部出力端子３２８に到達するまでに通過する、バッファセル３０８（インスタンス名Ｉ４）、ＡＮＤセル３１０（インスタンス名Ｉ５）、バッファセル３１２（インスタンス名Ｉ６）、バッファセル３１４（インスタンス名Ｉ７）、バッファセル３１８（インスタンス名Ｉ８）、バッファセル３２０（インスタンス名Ｉ９）、・・・が抽出される。図１６（Ｂ）は、このようにして抽出されたセルがリストアップされたＴｓｌｅｗエラー除外リストの例を示している。すなわち、テスト回路３３０に含まれるすべてのセルがＴｓｌｅｗエラー除外リスト１０８にリストアップされる。
【０１３１】
図１７は、遷移時間エラー検出ステップ（図１３のフローチャートのステップＳ３４）の処理手順の一例を示すフローチャートである。以下、図１７のフローチャートについて説明する。
【０１３２】
まず、図１３のフローチャートのステップＳ３０のＴｓｌｅｗ計算結果から各セルＩｊについてＴｓｌｅｗ計算値Ｔｊを選択する（ステップＳ３４０）。
【０１３３】
次に、図１４のフローチャートのステップＳ３２６で作成したＴｓｌｅｗ規格値対応表から各セルＩｊについてＴｓｌｅｗ規格値Ｔｓｌｅｗｊを選択する（ステップＳ３４２）。
【０１３４】
次に、図１５のフローチャートのステップＳ３３４で作成したＴｓｌｅｗエラー除外リスト中にセルＩｊがリストアップされているか否かを判断する（ステップＳ３４３）。セルＩｊがＴｓｌｅｗエラー除外リストにリストアップされている場合（ステップＳ３４３でＹｅｓの場合）は、次のセルについてステップＳ３４０〜Ｓ３４３の処理を行う。
【０１３５】
セルＩｊがＴｓｌｅｗエラー除外リストにリストアップされていない場合（ステップＳ３４３でＮｏの場合）は、ステップＳ３４０で選択したＴｓｌｅｗ計算値ＴｊがステップＳ３４２で選択したＴｓｌｅｗ規格値Ｔｓｌｅｗｊよりも大きいか否かを判断する（ステップＳ３４４）。Ｔｓｌｅｗ計算値ＴｊがＴｓｌｅｗ規格値Ｔｓｌｅｗｊよりも大きい場合（ステップＳ３４４でＹｅｓの場合）には、セルＩｊの入力信号にＴｓｌｅｗエラーが存在するので、セルＩｊのＴｓｌｅｗエラーをＴｓｌｅｗエラーリストに追加する（ステップＳ３４６）。
【０１３６】
最後に、Ｔｓｌｅｗ規格値対応表に含まれるすべてのセルについてステップＳ３４０〜Ｓ３４６の処理が終了したか否かを判断する（ステップＳ３４８）。すべてのセルに対するステップＳ３４０〜Ｓ３４６の処理が終了すれば、Ｔｓｌｅｗエラー除外リストに含まれるセルを除いた各セルのＴｓｌｅｗエラーがリストアップされたＴｓｌｅｗエラーリストが得られる。
【０１３７】
そして、前述した通り、遷移時間エラー修正ステップ（図１３のフローチャートのステップＳ３６）において、ＴｓｌｅｗエラーリストにリストアップされたＴｓｌｅｗエラーが修正される。
【０１３８】
本実施形態の半導体集積回路装置の設計方法（設計支援プログラム）によれば、指定した外部入力端子又は指定した内部ノードから所定の外部出力端子又は所定の内部ノードに至る経路上に存在するセルをＴｓｌｅｗエラーの検出対象から除外することができる。従って、Ｔｓｌｅｗエラーの検出対象をより柔軟に選択することができる。
【０１３９】
また、本実施形態の半導体集積回路装置の設計方法（設計支援プログラム）によれば、Ｔｓｌｅｗエラーの修正が不要なセルをＴｓｌｅｗエラーの検出対象から除外することができるので、真のエラーのみを修正することができる。従って、エラー修正に伴うチップサイズの増加を抑制することができる。
【０１４０】
３．半導体集積回路装置
図１８は、本実施の形態の半導体集積回路装置のブロック図の一例である。
【０１４１】
マイクロコンピュータ７００は、ＣＰＵ５１０、キャッシュメモリ５２０、ＲＯＭ７１０、ＲＡＭ７２０、ＭＭＵ７３０、ＬＣＤコントローラ５３０、リセット回路５４０、プログラマブルタイマ５５０、リアルタイムクロック（ＲＴＣ）５６０、ＤＭＡコントローラ５７０、割り込みコントローラ５８０、通信制御回路５９０、バスコントローラ６００、Ａ／Ｄ変換器６１０、Ｄ／Ａ変換器６２０、入力ポート６３０、出力ポート６４０、Ｉ／Ｏポート６５０、クロック発生装置６６０、プリスケーラ６７０、クロック停止制御回路７４０及びそれらを接続する汎用バス６８０、専用バス７５０等、各種ピン６９０等を含む。
【０１４２】
マイクロコンピュータ７００は、本実施の形態の設計支援プログラム、設計支援システム又は設計方法を用いて設計製造された半導体集積回路装置である。
【０１４３】
４．電子機器
図１９に、本実施の形態の電子機器のブロック図の一例を示す。本電子機器８００は、マイクロコンピュータ（半導体集積回路装置）８１０、入力部８２０、メモリ８３０、電源生成部８４０、ＬＣＤ８５０、音出力部８６０を含む。
【０１４４】
ここで、入力部８２０は、種々のデータを入力するためのものである。マイクロコンピュータ８１０は、この入力部８２０により入力されたデータに基づいて種々の処理を行うことになる。メモリ８３０は、マイクロコンピュータ８１０などの作業領域となるものである。電源生成部８４０は、電子機器８００で使用される各種電源を生成するためのものである。ＬＣＤ８５０は、電子機器が表示する各種の画像（文字、アイコン、グラフィック等）を出力するためのものである。
【０１４５】
音出力部８６０は、電子機器８００が出力する各種の音（音声、ゲーム音等）を出力するためのものであり、その機能は、スピーカなどのハードウェアにより実現できる。
【０１４６】
図２０（Ａ）に、電子機器の１つである携帯電話９５０の外観図の例を示す。この携帯電話９５０は、入力部として機能するダイヤルボタン９５２や、電話番号や名前やアイコンなどを表示するＬＣＤ９５４や、音出力部として機能し音声を出力するスピーカ９５６を備える。
【０１４７】
図２０（Ｂ）に、電子機器の１つである携帯型ゲーム装置９６０の外観図の例を示す。この携帯型ゲーム装置９６０は、入力部として機能する操作ボタン９６２、十字キー９６４や、ゲーム画像を表示するＬＣＤ９６６や、音出力部として機能しゲーム音を出力するスピーカ９６８を備える。
【０１４８】
図２０（Ｃ）に、電子機器の１つであるパーソナルコンピュータ９７０の外観図の例を示す。このパーソナルコンピュータ９７０は、入力部として機能するキーボード９７２や、文字、数字、グラフィックなどを表示するＬＣＤ９７４、音出力部９７６を備える。
【０１４９】
本実施の形態の半導体集積回路装置を図２０（Ａ）〜図２０（Ｃ）の電子機器に組みむことにより、コストパフォーマンスの高い電子機器を短期間で提供することができる。
【０１５０】
なお、本実施形態を利用できる電子機器としては、図２０（Ａ）〜図２０（Ｃ）に示すもの以外にも、携帯型情報端末、ページャー、電子卓上計算機、タッチパネルを備えた装置、プロジェクタ、ワードプロセッサ、ビューファインダ型又はモニタ直視型のビデオテープレコーダ、カーナビゲーション装置等の種々の電子機器を考えることができる
なお、本発明は本実施形態に限定されず、本発明の要旨の範囲内で種々の変形実施が可能である。
【０１５１】
例えば、図２のフローチャートにおいて、ステップＳ１０の処理とステップＳ１２の処理の順番は逆であってもよい。また、例えば、セルＩ１について、Ｔｓｌｅｗ計算値の計算（ステップＳ１０の処理）及びＴｓｌｅｗ規格値の設定（ステップＳ１２の処理）を行い、両者を比較してＴｓｌｅｗエラーが検出された場合はＴｓｌｅｗエラーリストに追加する処理（ステップＳ１４の処理）を行った後、セルＩ2、Ｉ３、・・・について、順番に同様の処理を行うようにしてもよい。
【０１５２】
同様に、図８のフローチャートにおいて、ステップＳ２０の処理とステップＳ２２の処理の順番は逆であってもよい。また、例えば、セルＩ１について、Ｔｓｌｅｗ計算値の計算（ステップＳ２０の処理）及びＴｓｌｅｗ規格値の設定（ステップＳ２２の処理）を行い、両者を比較してＴｓｌｅｗエラーが検出された場合はＴｓｌｅｗエラーリストに追加する処理（ステップＳ２４の処理）を行った後、セルＩ2、Ｉ３、・・・について、順番に同様の処理を行うようにしてもよい。
【０１５３】
同様に、図１３のフローチャートにおいて、ステップＳ３０の処理とステップＳ３２の処理の順番は逆であってもよい。また、例えば、セルＩ１について、Ｔｓｌｅｗ計算値の計算（ステップＳ３０の処理）及びＴｓｌｅｗ規格値の設定（ステップＳ３２の処理）を行い、両者を比較してＴｓｌｅｗエラーが検出された場合はＴｓｌｅｗエラーリストに追加する処理（ステップＳ３４の処理）を行った後、セルＩ2、Ｉ３、・・・について、順番に同様の処理を行うようにしてもよい。
【０１５４】
本発明は、実施の形態で説明した構成と実質的に同一の構成（例えば、機能、方法及び結果が同一の構成、あるいは目的及び効果が同一の構成）を含む。また、本発明は、実施の形態で説明した構成の本質的でない部分を置き換えた構成を含む。また、本発明は、実施の形態で説明した構成と同一の作用効果を奏する構成又は同一の目的を達成することができる構成を含む。また、本発明は、実施の形態で説明した構成に公知技術を付加した構成を含む。
【図面の簡単な説明】
【０１５５】
【図１】本実施形態の半導体集積回路装置の設計支援システム及び設計プログラムについて説明するための図。
【図２】本実施の形態の半導体集積回路装置の設計方法（設計支援プログラムの処理手順）の第１の実施例を説明するためのフローチャート。
【図３】Ｔｓｌｅｗ規格値ライブラリ情報の一例を示す図。
【図４】遷移時間規格値設定ステップの処理手順の一例を示すフローチャート。
【図５】本実施の形態の半導体集積回路装置の設計方法が適用されるネットリストの構成例を示す図。
【図６】図６（Ａ）は動作周波数対応表の例を示す図であり、図６（Ｂ）はＴｓｌｅｗ規格値対応表の例を示す図である。
【図７】遷移時間エラー検出ステップの処理手順の一例を示すフローチャート。
【図８】本実施の形態の半導体集積回路装置の設計方法（設計支援プログラムの処理手順）の第２の実施例を説明するためのフローチャート。
【図９】遷移時間暫定エラー検出ステップの処理手順の一例を示すフローチャート。
【図１０】遷移時間規格値設定ステップの処理手順の一例を示すフローチャート。
【図１１】遷移時間規格値設定ステップの処理における後方トレースについて説明するための図。
【図１２】遷移時間エラー検出ステップの処理手順の一例を示すフローチャート。
【図１３】本実施の形態の半導体集積回路装置の設計方法（設計支援プログラムの処理手順）の第３の実施例を説明するためのフローチャート。
【図１４】遷移時間規格値設定ステップの処理手順の一例を示すフローチャート。
【図１５】遷移時間エラー除外セル抽出ステップの処理手順の一例を示すフローチャート。
【図１６】図１６（Ａ）はＴｓｌｅｗエラーの検出対象から除外するセルを抽出する処理の具体例について説明するための図であり、図１６（Ｂ）はＴｓｌｅｗエラー除外リストの例を示す図である。
【図１７】遷移時間エラー検出ステップの処理手順の一例を示すフローチャート。
【図１８】本実施の形態の半導体集積回路装置のブロック図の一例。
【図１９】半導体集積回路装置を含む電子機器のブロック図の一例。
【図２０】図２０（Ａ）〜図２０（Ｃ）は、種々の電子機器の外観図の例。
【符号の説明】
【０１５６】
１  設計支援システム、１０  処理部、１２  遷移時間計算手段、１４  遷移時間規格値設定手段、１６  遷移時間エラー検出手段、１８  遷移時間エラー修正手段、２０  遷移時間暫定エラー検出手段、２２  遷移時間エラー除外セル抽出手段、３０  操作部、４０  記憶部、４２  ライブラリ情報記憶部、５０  情報記憶媒体、６０  表示部、７０  音出力部、８０  通信部、１００  ネットリスト、１０２  Ｔｓｌｅｗ規格値ライブラリ情報、１０４  動作周波数対応表、１０６  Ｔｓｌｅｗ規格値対応表、１０８  Ｔｓｌｅｗエラー除外リスト、２００  バッファセル、２０２  バッファセル、２０４  ＡＮＤセル、２０６  ＯＲセル、２０８  ＦＦセル、２１０  バッファセル、２１２  バッファセル、２１４  外部出力端子、２１６  ＡＮＤセル、２１８  ＦＦセル、２２０  ネット、３００  バッファセル、３０２  バッファセル、３０４  マルチプレクサセル、３０６  外部入力端子、３０８  バッファセル、３１０  ＡＮＤセル、３１２  バッファセル、３１４  バッファセル、３１６  外部入力端子、３１８  バッファセル、３２０  バッファセル、３２２  内部ノード、３２４  内部ノード、３２６  内部ノード、３２８  外部出力端子、３３０  テスト回路、５１０  ＣＰＵ、５２０  キャッシュメモリ、５３０  ＬＣＤコントローラ、５４０  リセット回路、５５０  プログラマブルタイマ、５６０  リアルタイムクロック（ＲＴＣ）、５７０  ＤＭＡコントローラ、５８０  割り込みコントローラ、５９０  通信制御回路、６００  バスコントローラ、６１０  Ａ／Ｄ変換器、６２０  Ｄ／Ａ変換器、６３０  入力ポート、６４０  出力ポート、６５０  Ｉ／Ｏポート、６６０  クロック発生装置、６７０  プリスケーラ、６８０  汎用バス、６９０  各種ピン、７００  マイクロコンピュータ（半導体集積回路装置）、７１０  ＲＯＭ、７２０  ＲＡＭ、７３０  ＭＭＵ、７４０  クロック停止制御回路、７５０  専用バス、８００  電子機器、８１０  マイクロコンピュータ（半導体集積回路装置）、８２０  入力部、８３０  メモリ、８４０  電源生成部、８５０  ＬＣＤ、８６０  音出力部、９５０  携帯電話、９５２  ダイヤルボタン、９５４  ＬＣＤ、９５６  スピーカ、９６０  携帯型ゲーム装置、９６２  操作ボタン、９６４  十字キー、９６６  ＬＣＤ、９６８  スピーカ、９７０  パーソナルコンピュータ、９７２  キーボード、９７４  ＬＣＤ、９７６  音出力部
【図１】
2009070325.tif 000003
【図２】
2009070325.tif 000004
【図３】
2009070325.tif 000005
【図４】
2009070325.tif 000006
【図５】
2009070325.tif 000007
【図６】
2009070325.tif 000008
【図７】
2009070325.tif 000009
【図８】
2009070325.tif 000010
【図９】
2009070325.tif 000011
【図１０】
2009070325.tif 000012
【図１１】
2009070325.tif 000013
【図１２】
2009070325.tif 000014
【図１３】
2009070325.tif 000015
【図１４】
2009070325.tif 000016
【図１５】
2009070325.tif 000017
【図１６】
2009070325.tif 000018
【図１７】
2009070325.tif 000019
【図１８】
2009070325.tif 000020
【図１９】
2009070325.tif 000021
【図２０】
2009070325.tif 000022