(57)【要約】設計対象の全電子回路（セル）のうち一部の電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、所定の方法により、該ノイズ値が制限値以下となるように電子回路のパラメータ（平行区間長、平行区間隣接距離等）を変更し（簡易ノイズチェック）、全電子回路について、信号伝送のタイミングを解析し、タイミングが解析済みの全電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、簡易ノイズチェックを実行させる。
2005043420.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
設計対象の全電子回路のうち一部の電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、所定の方法により、該ノイズ値が制限値以下となるように前記電子回路のパラメータを変更する簡易ノイズチェック工程と、
全電子回路について、信号伝送のタイミングを解析するタイミング解析工程と、
タイミングが解析済みの全電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、前記簡易ノイズチェック工程を実行させるスタティックノイズチェック工程と、
を実行させるための電子回路設計プログラム。
【請求項２】
前記所定の方法は、電子回路における隣接配線の平行区間長を短くする方法であることを特徴とする請求の範囲第１項に記載の電子回路設計プログラム。
【請求項３】
前記所定の方法は、電子回路における隣接配線の平行区間の距離を伸ばす方法であることを特徴とする請求の範囲第１項に記載の電子回路設計プログラム。
【請求項４】
前記所定の方法は、電子回路における配線幅を狭くする方法であることを特徴とする請求の範囲第１項に記載の電子回路設計プログラム。
【請求項５】
前記所定の方法は、電子回路におけるドライバの駆動能力を小さくする方法であることを特徴とする請求の範囲第１項に記載の電子回路設計プログラム。
【請求項６】
前記所定の方法は、電子回路におけるドライバから、隣接配線の平行区間までの距離を短くする方法であることを特徴とする請求の範囲第１項に記載の電子回路設計プログラム。
【請求項７】
設計対象の全電子回路のうち一部の電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、所定の方法により、該ノイズ値が制限値以下となるように前記電子回路のパラメータを変更する簡易ノイズチェック工程と、
全電子回路について、信号伝送のタイミングを解析するタイミング解析工程と、
タイミングが解析済みの全電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、前記簡易ノイズチェック工程を実行させるスタティックノイズチェック工程と、
を含むことを特徴とする電子回路設計方法。
【請求項８】
前記所定の方法は、電子回路における隣接配線の平行区間長を短くする方法であることを特徴とする請求の範囲第７項に記載の電子回路設計方法。
【請求項９】
前記所定の方法は、電子回路における隣接配線の平行区間の距離を伸ばす方法であることを特徴とする請求の範囲第７項に記載の電子回路設計方法。
【請求項１０】
前記所定の方法は、電子回路における配線幅を狭くする方法であることを特徴とする請求の範囲第７項に記載の電子回路設計方法。
【請求項１１】
前記所定の方法は、電子回路におけるドライバの駆動能力を小さくする方法であることを特徴とする請求の範囲第７項に記載の電子回路設計方法。
【請求項１２】
前記所定の方法は、電子回路におけるドライバから、隣接配線の平行区間までの距離を短くする方法であることを特徴とする請求の範囲第７項に記載の電子回路設計方法。
【請求項１３】
設計対象の全電子回路のうち一部の電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、所定の方法により、該ノイズ値が制限値以下となるように前記電子回路のパラメータを変更する簡易ノイズチェック手段と、
全電子回路について、信号伝送のタイミングを解析するタイミング解析手段と、
タイミングが解析済みの全電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、前記簡易ノイズチェック手段を動作させるスタティックノイズチェック手段と、
を備えたことを特徴とする電子回路設計装置。
【請求項１４】
前記所定の方法は、電子回路における隣接配線の平行区間長を短くする方法であることを特徴とする請求の範囲第１３項に記載の電子回路設計装置。
【請求項１５】
前記所定の方法は、電子回路における隣接配線の平行区間の距離を伸ばす方法であることを特徴とする請求の範囲第１３項に記載の電子回路設計装置。
【請求項１６】
前記所定の方法は、電子回路における配線幅を狭くする方法であることを特徴とする請求の範囲第１３項に記載の電子回路設計装置。
【請求項１７】
前記所定の方法は、電子回路におけるドライバの駆動能力を小さくする方法であることを特徴とする請求の範囲第１３項に記載の電子回路設計装置。
【請求項１８】
前記所定の方法は、電子回路におけるドライバから、隣接配線の平行区間までの距離を短くする方法であることを特徴とする請求の範囲第１３項に記載の電子回路設計装置。
【発明の詳細な説明】
【技術分野】  本発明は、電子回路の設計、ノイズチェックに用いて好適な電子回路設計プログラム、電子回路設計方法および電子回路設計装置に関するものであり、特に、設計時間の短縮化を図ることができる電子回路設計プログラム、電子回路設計方法および電子回路設計装置に関するものである。
【背景技術】  近年、各種電子回路の小型化や高速化に伴い、電子回路を設計する際のノイズ解析とノイズ対策が重要になってきている。従って、従来では、ノイズが制限値となるように電子回路が設計されている。
第１６図は、従来の電子回路設計方法を説明するフローチャートである。
ステップＳＡ１では、ＲＴＬ（Ｒｅｇｉｓｔｅｒ  Ｔｒａｎｓｆｅｒ  Ｌｅｖｅｌ）設計が行われる。ＲＴＬ設計では、論理回路の機能的な動作をデータ信号の流れと制御信号とで記述し、設計対象の電子回路における論理仕様が設計される。
ステップＳＡ２では、ステップＳＡ１で設計された論理仕様を入力とし、テクノロジマッピング、遅延時間や面積等を評価関数とした最適化処理を行い、ゲートレベルのセル（論理回路）を生成するための論理合成処理が実行される。
ステップＳＡ３では、半導体チップのサイズや電気的特性の最適化をめざしながら、半導体チップ上における各セルの概略配置を決定するためのフロアプラン処理が実行される。
ステップＳＡ４では、ステップＳＡ３で決定された概略配置に基づいて、各セルが配置面に配置され、セル間が配線される。ステップＳＡ５では、配置された全セルに信号を入力し、所期のタイミングや周波数で信号が出力されるかというタイミング解析が行われる。このタイミング解析には、全セルが対象となるため、大型計算機を用いても数日を要する。
ステップＳＡ６では、タイミング解析結果にエラーがあるか否かが判断される。ステップＳＡ６の判断結果が「Ｙｅｓ」である場合、すなわち、タイミング解析結果がエラーである場合、ステップＳＡ４では、エラーが発生しないように再設計され、セルの配置や配線が変更される。
ステップＳＡ５では、上述と同様にして、再設計後におけるタイミング解析が行われる。タイミング解析には、大型計算機を用いても数日をさらに要する。ステップＳＡ６では、タイミング解析結果にエラーがあるか否かが判断される。
ここで、再設計のミスに起因して、再度エラーがある場合、ステップＳＡ４では、セルの配置や配線が再度変更される。以後、ステップＳＡ６の判断結果が「Ｎｏ」となるまで、ステップＳＡ４〜ステップＳＡ６が繰り返される。
そして、タイミング解析結果にエラーが無く、ステップＳＡ６の判断結果が「Ｎｏ」になると、ステップＳＡ７では、タイミング解析済みの各セル、配線におけるスタティックノイズ値（以下、単にノイズ値と称する）をチェックするためのスタティックノイズチェックが実行される。
このスタティックノイズチェックにおいては、配線の幅、配線層および長さに応じて容量値および抵抗値が計算され、配線同士の平行区間とセル（ドライバ、レシーバ等）の種類に応じたパラメータに基づいて、ノイズ値が計算される。
ステップＳＡ８では、ノイズ値が制限値（しきい値）以下であるか否かが判断される。ステップＳＡ８の判断結果が「Ｎｏ」である場合、すなわち、ノイズ値が制限値を超えている場合、ステップＳＡ４では、ノイズ値が制限値以下となり、かつタイミング解析結果にエラーが発生しないように再設計され、セルの配置や配線が変更される。
ステップＳＡ５では、上述と同様にして、再設計後におけるタイミング解析が行われる。タイミング解析には、大型計算機を用いても数日をさらに要する。ステップＳＡ６では、タイミング解析結果にエラーがあるか否かが判断される。ここで、ステップＳＡ６の判断結果が「Ｙｅｓ」である場合、ステップＳＡ４では、再び、再設計され、セルの配置や配線が変更される。
また、ステップＳＡ６の判断結果が「Ｎｏ」である場合、ステップＳＡ７では、上述と同様にして、再設計後におけるスタティックノイズチェックが実行される。ステップＳＡ８では、再設計後におけるノイズ値が制限値（しきい値）以下であるか否かが判断される。ステップＳＡ８の判断結果が「Ｎｏ」である場合、すなわち、ノイズ値が制限値を超えている場合、ステップＳＡ４では、ノイズ値が制限値以下となり、かつタイミング解析結果にエラーが発生しないように再設計され、セルの配置や配線が変更される。
以後、ステップＳＡ８の判断結果が「Ｙｅｓ」となるまで、ステップＳＡ４〜ステップＳＡ８が繰り返される。そして、ステップＳＡ８の判断結果が「Ｙｅｓ」、すなわち、タイミング解析結果にエラーが無く、かつノイズ値が制限値以下である場合、ステップＳＡ９では、各セルの配置、配線に基づいて、設計対象の電子回路を製造するための製造データが作成される。
【特許文献１】  特開２００２−２５９４８１号公報
ところで、従来の電子回路設計方法においては、設計者の経験やカンに基づいて、ステップＳＡ４でセル配置・配線の再設計が行われるため、設計の手戻りが多く、設計時間の長時間化を招くという問題があった。また、従来の電子回路設計方法においては、処理対象物が多いため、全てを制限値内に収めることが困難である。
また、従来の電子回路設計方法においては、第１６図に示したステップＳＡ５でタイミング解析が実行された後、ステップＳＡ７でスタティックノイズチェックが実行される。
ここで、タイミング解析には、前述したように膨大な時間を要する。
しかしながら、従来の電子回路設計方法においては、タイミング解析結果がＯＫでも、スタティックノイズチェックでＮＧとなれば、ステップＳＡ４で再び、セル配置・配線を再設計し、再び、膨大な時間をかけて、タイミング解析を実行しなければならず、このことが、設計時間をさらに長時間化させる要因となる。
本発明は、上記に鑑みてなされたもので、設計時間の短縮化を図ることができる電子回路設計プログラム、電子回路設計方法および電子回路設計装置を提供することを目的としている。
【発明の開示】
上記目的を達成するために、本発明は、コンピュータに、設計対象の全電子回路のうち一部の電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、所定の方法により、該ノイズ値が制限値以下となるように前記電子回路のパラメータを変更する簡易ノイズチェック工程と、全電子回路について、信号伝送のタイミングを解析するタイミング解析工程と、タイミングが解析済みの全電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、前記簡易ノイズチェック工程を実行させるスタティックノイズチェック工程と、を実行させるための電子回路設計プログラムである。
また、本発明は、設計対象の全電子回路のうち一部の電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、所定の方法により、該ノイズ値が制限値以下となるように前記電子回路のパラメータを変更する簡易ノイズチェック工程と、全電子回路について、信号伝送のタイミングを解析するタイミング解析工程と、タイミングが解析済みの全電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、前記簡易ノイズチェック工程を実行させるスタティックノイズチェック工程と、を含むことを特徴とする。
また、本発明は、設計対象の全電子回路のうち一部の電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、所定の方法により、該ノイズ値が制限値以下となるように前記電子回路のパラメータを変更する簡易ノイズチェック手段と、全電子回路について、信号伝送のタイミングを解析するタイミング解析手段と、タイミングが解析済みの全電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、前記簡易ノイズチェック手段を動作させるスタティックノイズチェック手段と、を備えたことを特徴とする。
かかる発明によれば、設計対象の全電子回路のうち一部の電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、所定の方法により、該ノイズ値が制限値以下となるように電子回路のパラメータを変更し、信号伝送のタイミングを解析し、全電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、一部の電子回路に関するノイズ値計算、パラメータの変更を行わせることとしたので、設計時間の短縮化を図ることができる。
【図面の簡単な説明】  第１図は、本発明にかかる一実施例の構成を示すブロック図であり、第２図は、同一実施例における簡易スタティックノイズチェックの概要を説明する図であり、第３図は、同一実施例における配線情報ファイルフォーマット３０Ｆを示す図であり、第４図は、第５図（ａ）に示したネット群３１を表す配線情報ファイル３０１を示す図であり、第５図は、同一実施例におけるネット群３１を示す図であり、第６図は、第７図（ａ）に示したネット群３４を表す配線情報ファイル３０２を示す図であり、第７図は、同一実施例におけるネット群３４を示す図であり、第８図は、第９図（ａ）に示したネット群３７を表す配線情報ファイル３０３を示す図であり、第９図は、同一実施例におけるネット群３７を示す図であり、第１０図は、同一実施例におけるチェック結果リスト６０１を示す図であり、第１１図は、同一実施例におけるチェック結果リスト６０３を示す図であり、第１２図は、同一実施例の動作を説明するフローチャートであり、第１３図は、第１２図に示した簡易スタティックノイズチェック処理を説明するフローチャートであり、第１４図は、第１３図に示した配線制約情報ファイル作成処理を説明するフローチャートであり、第１５図は、同一実施例の変形例の構成を示すブロック図であり、第１６図は、従来の電子回路設計方法を説明するフローチャートである。
【発明を実施するための最良の形態】  以下、図面を参照して本発明にかかる一実施例について詳細に説明する。第１図は、本発明にかかる一実施例の構成を示すブロック図である。
同図において、電子回路設計装置１０は、前述したＲＴＬ設計、論理合成、フロアプラン処理、後述する簡易スタティックノイズチェック（第２図参照）、タイミング解析、スタティックノイズチェック、製造データ作成等により電子回路の設計を行う装置である。
制御部１１は、設計に関する制御を行う。この制御部１１の動作の詳細については、後述する。記憶部１２は、制御部１１で用いられるコンピュータプログラム、各種情報、データを記憶する。入力部１３は、キーボード、マウス、外部データ読取部等である。出力部１４は、製造データ等を外部装置へ出力する。表示部１５は、ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）やＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）等である。
テクノロジ情報ファイル格納部２０は、第２図に示したテクノロジ情報ファイル２１を格納している。テクノロジ情報ファイル２１は、セル間を接続する配線に必要なテクノロジ特性を定義するテクノロジ情報のファイルである。
テクノロジ情報は、各配線層で使用可能な配線の幅、ノイズ対策スペース値（ノイズ対策を考慮した場合の配線間隔の最小スペース値）、配線ユニット長、配線層の種類、名称、ノイズ値の制限値等である。
第１図に戻り、配線情報ファイル格納部３０は、配線情報ファイルを格納している。配線情報ファイルは、第３図に示した配線情報ファイルフォーマット３０Ｆに基づいて、スタティックノイズチェック対象の各ネット（電子回路の最小単位）における配線情報を定義するための配線情報のファイルである。
ネットは、送信側のドライバ（セル）と、受信側のレシーバ（セル）と、ドライバとレシーバとを接続する配線とから構成されている。
２つのネットが隣接配置されている場合、両配線の平行区間で一方の配線は、他方の配線へノイズを与える。以下では、ノイズを与える側のネットをａｇｇｒｅｓｓｏｒネットと称する。ノイズを受ける側のネットをｖｉｃｔｉｍネットと称する。
第５図（ａ）には、ネット群３１の平面図が図示されている。ネット群３１は、第５図（ｂ）に示したＡ層、Ｂ層およびＣ層という３つの配線層にまたがって配線されており、ａｇｇｒｅｓｓｏｒネット３２およびｖｉｃｔｉｍネット３３から構成されている。
ａｇｇｒｅｓｓｏｒネット３２は、ドライバ３２ａ（セル）と、レシーバ３２ｂ（セル）と、ドライバ３２ａとレシーバ３２ｂとの間を接続する配線３２ｃとから構成されており、ｖｉｃｔｉｍネット３３に対してノイズを与える。配線３２ｃは、ドライバ３２ａのピン（Ｘ）とレシーバ３２ｂのピン（Ａ）との間であって、第５図（ｂ）に示したＢ層およびＡ層にまたがって配設されている。
第５図（ａ）に示したｖｉｃｔｉｍネット３３は、ドライバ３３ａ（セル）と、レシーバ３３ｂ（セル）と、ドライバ３３ａとレシーバ３３ｂとの間を接続する配線３３ｃとから構成されており、ａｇｇｒｅｓｓｏｒネット３２からノイズを受ける。配線３３ｃは、ドライバ３３ａのピン（Ｘ）とレシーバ３３ｂのピン（Ａ）との間であって、第５図（ｂ）に示したＣ層に配設されている。
第３図に示した配線情報ファイルフォーマット３０Ｆにおいて、ＤＶは、配線情報の開始を表す。ＤＶ＿ＥＮＤは、配線情報の終了を表す。ＡＧＲＳは、上述したａｇｇｒｅｓｓｏｒネットに関する情報を表し、ドライバマクロ名、ドライバピン名、レシーバマクロ名、レシーバピン名、ＫＩＮＤ＝ネット種別の情報である。
ドライバマクロ名は、ドライバに付与された名称であり、例えば、ドライバ３２ａ（第５図（ａ）参照）のＭＣＲＤＶ１である。ドライバピン名は、ドライバのピン名であり、例えば、ドライバ３２ａのピン（Ｘ）である。
レシーバマクロ名は、レシーバに付与された名称であり、例えば、レシーバ３２ｂ（第５図（ａ）参照）のＭＣＲＲＶ１である。レシーバピン名は、レシーバ３２ｂのピン名であり、例えば、レシーバ３２ｂのピン（Ａ）である。ＫＩＮＤ＝ネット種別は、ａｇｇｒｅｓｓｏｒネット３２の種別（ｃｌｏｃｋ信号伝送用、電源用等）を表し、例えば、ｃｌｏｃｋである。
ＶＣＴＭは、上述したｖｉｃｔｉｍネットに関する情報を表し、ドライバマクロ名、ドライバピン名、レシーバマクロ名、レシーバピン名、ＫＩＮＤ＝ネット種別の情報である。
ドライバマクロ名は、ドライバに付与された名称であり、例えば、ドライバ３３ａ（第５図（ａ）参照）のＭＣＲＤＶ２である。ドライバピン名は、ドライバのピン名であり、例えば、ドライバ３３ａのピン（Ｘ）である。
レシーバマクロ名は、レシーバに付与された名称であり、例えば、レシーバ３３ｂ（第５図（ａ）参照）のＭＣＲＲＶ２である。レシーバピン名は、レシーバ３３ｂのピン名であり、例えば、レシーバ３３ｂのピン（Ａ）である。ＫＩＮＤ＝ネット種別は、ｖｉｃｔｉｍネット３３の種別（ｃｌｏｃｋ信号伝送用、電源用等）を表し、例えば、ｃｌｏｃｋである。
ＰＡＲは、ａｇｇｒｅｓｓｏｒネットの配線幅、ａｇｇｒｅｓｓｏｒネットの配線層、ｖｉｃｔｉｍネットの配線幅、ｖｉｃｔｉｍネットの配線層、平行区間長ＰＲ、平行区間隣接距離ＷＤ、ドライバー平行区間距離ＤＬの情報から構成されている。
ａｇｇｒｅｓｓｏｒネットの配線幅は、ａｇｇｒｅｓｓｏｒネットの配線の幅であり、例えば、配線３２ｃ（第５図（ａ）参照）の配線幅（０．８μｍ）である。ａｇｇｒｅｓｓｏｒネットの配線層は、ａｇｇｒｅｓｓｏｒネットが配設された配線層であり、例えば、ａｇｇｒｅｓｓｏｒネット３２のＢ層である。
ｖｉｃｔｉｍネットの配線幅は、ｖｉｃｔｉｍネットの配線の幅であり、例えば、配線３３ｃ（第５図（ａ）参照）の配線幅（１．６μｍ）である。ｖｉｃｔｉｍネットの配線層は、ｖｉｃｔｉｍネットが配設された配線層であり、例えばｖｉｃｔｉｍネット３３のＣ層である。平行区間長ＰＲは、ａｇｇｒｅｓｓｏｒネットの配線とｖｉｃｔｉｍネットの配線とが近接した状態で平行とされている区間（以下、平行区間と称する）の長さであり、第５図（ａ）の場合、３００μｍである。
平行区間隣接距離ＷＤは、上記平行区間における配線間の隣接距離であり、第５図（ａ）の場合、３μｍである。ドライバ−平行区間距離ＤＬは、ａｇｇｒｅｓｓｏｒネットのドライバから平行区間までの配線距離であり、第５図（ａ）の場合、２００μｍである。
第４図には、第５図（ａ）に示したネット群３１を表す配線情報ファイル３０１が図示されている。配線情報ファイル３０１は、配線情報ファイルフォーマット３０Ｆ（第３図参照）に対応しており、配線情報ファイル格納部３０に格納されている。
第６図には、第７図（ａ）に示したネット群３４を表す配線情報ファイル３０２が図示されている。配線情報ファイル３０２は、配線情報ファイルフォーマット３０Ｆ（第３図参照）に対応しており、配線情報ファイル格納部３０に格納されている。
第７図（ａ）には、ネット群３４の平面図が図示されている。ネット群３４は、第７図（ｂ）に示したＡ層、Ｂ層およびＣ層という３つの配線層にまたがって配線されており、ａｇｇｒｅｓｓｏｒネット３５およびｖｉｃｔｉｍネット３６から構成されている。
ａｇｇｒｅｓｓｏｒネット３５は、ドライバ３５ａ（セル）と、レシーバ３５ｂ（セル）と、ドライバ３５ａとレシーバ３５ｂとの間を接続する配線３５ｃとから構成されており、ｖｉｃｔｉｍネット３６に対してノイズを与える。配線３５ｃは、ドライバ３５ａのピン（Ｘ）とレシーバ３５ｂのピン（Ａ）との間であって、第７図（ｂ）に示したＢ層、Ｃ層およびＡ層に亘って配設されている。
第７図（ａ）に示したｖｉｃｔｉｍネット３６は、ドライバ３６ａ（セル）と、レシーバ３６ｂ（セル）と、ドライバ３６ａとレシーバ３６ｂとの間を接続する配線３６ｃとから構成されており、ａｇｇｒｅｓｓｏｒネット３５からノイズを受ける。配線３６ｃは、ドライバ３６ａのピン（Ｘ）とレシーバ３６ｂのピン（Ａ）との間であって、第７図（ｂ）に示したＣ層に配設されている。
配線３６ｃと配線３５ｃとは、２つの平行区間を有している。従って、配線情報ファイル３０２（第６図参照）には、上記２つの平行区間に対応させてＰＡＲが２つ記述されている。
第８図には、第９図（ａ）に示したネット群３７を表す配線情報ファイル３０３が図示されている。配線情報ファイル３０３は、配線情報ファイルフォーマット３０Ｆ（第３図参照）に対応しており、配線情報ファイル格納部３０に格納されている。
第９図（ａ）には、ネット群３７の平面図が図示されている。ネット群３７は、第９図（ｂ）に示したＡ層、Ｂ層およびＣ層という３つの配線層にまたがって配線されており、ａｇｇｒｅｓｓｏｒネット３８、ａｇｇｒｅｓｓｏｒネット３９およびｖｉｃｔｉｍネット４０から構成されている。
ａｇｇｒｅｓｓｏｒネット３８は、ドライバ３８ａ（セル）と、レシーバ３８ｂ（セル）と、ドライバ３８ａとレシーバ３８ｂとの間を接続する配線３８ｃとから構成されており、ｖｉｃｔｉｍネット４０に対してノイズを与える。配線３８ｃは、ドライバ３８ａのピン（Ｘ）とレシーバ３８ｂのピン（Ａ）との間であって、第９図（ｂ）に示したＣ層およびＢ層にまたがって配設されている。
ａｇｇｒｅｓｓｏｒネット３９は、ドライバ３９ａ（セル）と、レシーバ３９ｂ（セル）と、ドライバ３９ａとレシーバ３９ｂとの間を接続する配線３９ｃとから構成されており、ｖｉｃｔｉｍネット４０に対してノイズを与える。配線３９ｃは、ドライバ３９ａのピン（Ｘ）とレシーバ３９ｂのピン（Ａ）との間であって、第９図（ｂ）に示したＢ層およびＡ層にまたがって配設されている。
第９図（ａ）に示したｖｉｃｔｉｍネット４０は、ドライバ４０ａ（セル）と、レシーバ４０ｂ（セル）と、ドライバ４０ａとレシーバ４０ｂとの間を接続する配線４０ｃとから構成されており、ａｇｇｒｅｓｓｏｒネット３８およびａｇｇｒｅｓｓｏｒネット３９の双方からノイズを受ける。配線４０ｃは、ドライバ４０ａのピン（Ｘ）とレシーバ４０ｂのピン（Ａ）との間であって、第９図（ｂ）に示したＣ層に配設されている。
配線４０ｃは、配線３８ｃおよび配線３９ｃとの間にそれぞれ２つの平行区間を有している。従って、配線情報ファイル３０３（第８図参照）には、上記２つの平行区間に対応させてＰＡＲが２つ記述されている。
ここで、一実施例では、全セルを配置、配線し、タイミング解析を実行する前に、第２図に示した簡易スタティックノイズチェックが実行される。
簡易スタティックノイズチェックでは、テクノロジ情報ファイル２１、全セルのうち、一部のセルに対応する配線情報ファイル３０１等を入力として、当該一部のセルのノイズ値が制限値以下であるか否かのチェックが実行される。
ノイズ値が制限値を超えている場合、ノイズ値が制限値以下となるように、配線情報ファイル３０１のパラメータのうちノイズ低減に効果がある平行区間隣接距離ＷＤ、平行区間長ＰＲ等に制約がかけられ、自動的に変更される。
簡易スタティックノイズチェックでは、配線情報ファイル３０１が入力された場合、配線情報ファイル３０１に対応する配線制約情報ファイル５０１と、チェック結果リスト６０１とが出力される。
配線制約情報ファイル５０１は、配線情報ファイル３０１について、ノイズ値が制約値以下となるように平行区間隣接距離ＷＤや平行区間長ＰＲに制約がかけられたファイルであり、配線情報ファイル３０１と同様のフォーマットとされている。
第１０図に示したように、チェック結果リスト６０１は、配線情報ファイル３０１に基づく、簡易スタティックノイズチェックの結果を表すリストであり、配線情報ファイル名、テクノロジ情報ファイル名、ｖｉｃｔｉｍネット名、ａｇｇｒｅｓｓｏｒネット名、パラメータの制限値、ノイズ値等である。
なお、第１１図に示したチェック結果リスト６０３は、配線情報ファイル３０３に対応している。
第１図に戻り、配線制約情報ファイル格納部５０は、上述した配線制約情報ファイル５０１等を格納する。
つぎに、一実施例の動作について、第１２図〜第１４図に示したフローチャートを参照しつつ説明する。
ステップＳＢ１では、電子回路設計装置１０の制御部１１は、ステップＳＡ１と同様にして、ＲＴＬ設計を実行する。ステップＳＢ２では、制御部１１は、ステップＳＢ１で設計された論理仕様を入力とし、テクノロジマッピング、遅延時間や面積等を評価関数とした最適化処理を行い、ゲートレベルのセル（論理回路）を生成するための論理合成処理を実行する。
ステップＳＢ３では、制御部１１は、半導体チップのサイズや電気的特性の最適化をめざしながら、半導体チップ上における各セルの概略配置を決定するためのフロアプラン処理を実行する。
ステップＳＢ４では、制御部１１は、簡易スタティックノイズチェックを実行する。具体的には、第１３図に示したステップＳＣ１では、制御部１１は、全セルのうち一部のセルに対応する例えば、配線情報ファイル３０１（配線情報ファイル３０２（第６図参照）、配線情報ファイル３０３（第８図参照）も同様）を配線情報ファイル格納部３０から読み出し、この配線情報ファイル３０１を解釈する。配線情報ファイル３０１は、例えば、ユーザにより指定される。
ステップＳＣ２では、制御部１１は、テクノロジ情報ファイル格納部２０よりテクノロジ情報ファイル２１（第２図参照）を読み出し、このテクノロジ情報ファイル２１を解釈する。
ステップＳＣ３では、制御部１１は、ステップＳＣ１およびステップＳＣ２の解釈に基づいて、ノイズ値計算に用いられるパラメータを整理する。
ステップＳＣ４では、制御部１１は、配線情報ファイル３０１に対応するネット群３１（第５図参照）におけるノイズ値（Ｎｖ）を以下の（１）式にパラメータを代入して計算する。
Ｎｖ＝ΣＬｎ×Ｋａ×Ｋｂ、ｆ（ΣＣ，Ｌ）×αａｇ×αｖｃ  ・・・（１）
（１）式において、ΣＬｎは、平行区間長の合計である。Ｋａは、ｖｉｃｔｉｍネットにおける係数である。Ｋｂは、ａｇｇｒｅｓｓｏｒネットにおける係数である。ｆ（ΣＣ，Ｌ）は、ａｇｇｒｅｓｓｏｒネットのドライバから平行区間までの配線によるａｇｇｒｅｓｓｏｒネットの波形なまりを考慮した緩和関数であり、距離および容量から求められる。
αａｇは、ａｇｇｒｅｓｓｏｒネットのドライバ係数であり、ドライバの駆動能力により決定される。αｖｃは、ｖｉｃｔｉｍネットのドライバ係数であり、ドライバの駆動能力により決定される。
ステップＳＣ５では、制御部１１は、ステップＳＣ４で計算されたノイズ値（Ｎｖ）が、予め設定された制限値以下であるか否かを判断する。ステップＳＣ５の判断結果が「Ｙｅｓ」である場合、ステップＳＣ６では、制御部１１は、チェック結果リスト６０１を出力する。
一方、ステップＳＣ５の判断結果が「Ｎｏ」である場合、すなわち、ノイズ値が制限値を超えている場合、ステップＳＣ７では、配線制約情報ファイル作成処理を実行する。
この配線制約情報ファイル作成処理では、上記ノイズ値が制限値以下となるように、配線情報ファイルのパラメータ（例えば、平行区間長ＰＲ、平行区間隣接距離ＷＤ）を変更（微調整）し、配線制約情報ファイルを作成するための処理である。パラメータを変更（微調整）する方法としては、例えば、第１の方法、第２の方法、第３の方法がある。
第１の方法は、平行区間隣接距離ＷＤを単位長さ（例えば、１μｍ）ずつ伸ばし、ノイズ値を低減する方法である。第２の方法は、平行区間長ＰＲを単位長さ（例えば、１μｍ）ずつ短くし、ノイズ値を低減する方法である。第３の方法は、平行区間隣接距離ＷＤを単位長さ（例えば、１μｍ）ずつ伸ばすとともに、平行区間長ＰＲを単位長さ（例えば、１μｍ）ずつ短くし、ノイズ値を低減する方法である。
なお、一実施例においては、ノイズ値を低減する方法としては、上記第１〜第３の方法以外に、ａｇｇｒｅｓｓｏｒネットの配線幅を狭くする方法、ｖｉｃｔｉｍネットのドライバ駆動能力を小さくする方法、ａｇｇｒｅｓｓｏｒネットのドライバ駆動能力を小さくする方法、ドライバ−平行区間距離ＤＬを短くする方法、各方法を複数組み合わせる方法を適用してもよい。
配線制約情報ファイル作成処理において、第１４図に示したステップＳＤ１では、制御部１１は、ユーザにより、上述した第１の方法が予め設定されているか否かを判断する。ステップＳＤ１の判断結果が「Ｙｅｓ」である場合、ステップＳＤ２では、制御部１１は、第１の方法を実行することにより、配線情報ファイル３０１における平行区間隣接距離ＷＤを単位長さ伸ばす。ステップＳＤ３では、制御部１１は、ステップＳＣ４（第１３図参照）と同様にして、変更後の平行区間隣接距離ＷＤを考慮して、ノイズ値を計算する。
ステップＳＤ４では、制御部１１は、ステップＳＤ３で計算されたノイズ値が、予め設定された制限値以下であるか否かを判断する。ステップＳＤ４の判断結果が「Ｎｏ」である場合、ステップＳＤ２では、制御部１１は、配線情報ファイル３０１における平行区間隣接距離ＷＤをさらに単位長さ伸ばす。ステップＳＤ３では、制御部１１は、ステップＳＣ４（第１３図参照）と同様にして、変更後の平行区間隣接距離ＷＤを考慮して、ノイズ値を計算する。
以後、ステップＳＤ４の判断結果が「Ｙｅｓ」となるまで、ステップＳＤ２〜ステップＳＤ４が繰り返される。
そして、ステップＳＤ４の判断結果が「Ｙｅｓ」になると、ステップＳＤ５では、制御部１１は、変更後の配線情報ファイル３０１に対応する配線制約情報ファイル５０１を作成する。
第１３図に戻り、ステップＳＣ８では、制御部１１は、配線制約情報ファイル５０１を出力するとともに、配線制約情報ファイル格納部５０に格納する。ステップＳＣ６では、制御部１１は、チェック結果リスト６０１を出力する。
一方、第１４図に示したステップＳＤ１の判断結果が「Ｎｏ」である場合、ステップＳＤ６では、制御部１１は、ユーザにより、上述した第２の方法が予め設定されているか否かを判断する。
ステップＳＤ６の判断結果が「Ｙｅｓ」である場合、ステップＳＤ７では、制御部１１は、第２の方法を実行することにより、配線情報ファイル３０１における平行区間長ＰＲを単位長さ短くする。ステップＳＤ８では、制御部１１は、ステップＳＣ４と同様にして、変更後の平行区間長ＰＲを考慮して、ノイズ値を計算する。
ステップＳＤ９では、制御部１１は、ステップＳＤ８で計算されたノイズ値が、予め設定された制限値以下であるか否かを判断する。ステップＳＤ９の判断結果が「Ｎｏ」である場合、ステップＳＤ７では、制御部１１は、配線情報ファイル３０１における平行区間長ＰＲをさらに単位長さ短くする。ステップＳＤ８では、制御部１１は、変更後の平行区間長ＰＲを考慮して、ノイズ値を計算する。
以後、ステップＳＤ９の判断結果が「Ｙｅｓ」となるまで、ステップＳＤ７〜ステップＳＤ９が繰り返される。
そして、ステップＳＤ９の判断結果が「Ｙｅｓ」になると、ステップＳＤ５では、制御部１１は、変更後の配線情報ファイル３０１に対応する配線制約情報ファイル５０１を作成する。
第１３図に戻り、ステップＳＣ８では、制御部１１は、配線制約情報ファイル５０１を出力するとともに、配線制約情報ファイル格納部５０に格納する。ステップＳＣ６では、制御部１１は、チェック結果リスト６０１を出力する。
一方、第１４図に示したステップＳＤ６の判断結果が「Ｎｏ」であり、第３の方法が設定されている場合、ステップＳＤ１０では、制御部１１は、第３の方法を実行することにより、配線情報ファイル３０１における平行区間隣接距離ＷＤを単位長さのばし、平行区間長ＰＲを単位長さ短くする。ステップＳＤ１１では、制御部１１は、ステップＳＣ４と同様にして、変更後の平行区間隣接距離ＷＤおよび平行区間長ＰＲを考慮して、ノイズ値を計算する。
ステップＳＤ１２では、制御部１１は、ステップＳＤ１１で計算されたノイズ値が、予め設定された制限値以下であるか否かを判断する。ステップＳＤ１２の判断結果が「Ｎｏ」である場合、ステップＳＤ１０では、制御部１１は、配線情報ファイル３０１における平行区間隣接距離ＷＤをさらに単位長さのばすとともに、平行区間長ＰＲをさらに単位長さ短くする。ステップＳＤ１１では、制御部１１は、変更後の平行区間隣接距離ＷＤおよび平行区間長ＰＲを考慮して、ノイズ値を計算する。
以後、ステップＳＤ１２の判断結果が「Ｙｅｓ」となるまで、ステップＳＤ１０〜ステップＳＤ１２が繰り返される。
そして、ステップＳＤ１２の判断結果が「Ｙｅｓ」になると、ステップＳＤ５では、制御部１１は、変更後の配線情報ファイル３０１に対応する配線制約情報ファイル５０１を作成する。
第１３図に戻り、ステップＳＣ８では、制御部１１は、配線制約情報ファイル５０１を出力するとともに、配線制約情報ファイル格納部５０に格納する。ステップＳＣ６では、制御部１１は、チェック結果リスト６０１を出力する。
第１２図に戻り、ステップＳＢ５では、ステップＳＢ３で決定された概略配置およびステップＳＢ４で作成された配線情報ファイル（配線制約情報ファイル）に基づいて、各セルが配置面に配置され、セル間が配線される。
ステップＳＢ６では、配置された全セルに信号入力し、所期のタイミングや周波数で信号が出力されるかというタイミング解析が行われる。このタイミング解析には、全セルが対象となるため、大型計算機を用いても数日を要する。
ステップＳＢ７では、タイミング解析結果にエラーがあるか否かが判断される。ステップＳＢ７の判断結果が「Ｙｅｓ」である場合、すなわち、タイミング解析結果がエラーである場合、ステップＳＢ５では、エラーが発生しないように再設計され、セルの配置や配線が変更される。
ステップＳＢ６では、上述と同様にして、再設計後におけるタイミング解析が行われる。タイミング解析には、大型計算機を用いても数日をさらに要する。ステップＳＢ７では、タイミング解析結果にエラーがあるか否かが判断される。
ここで、再設計のミスに起因して、再度エラーがある場合、ステップＳＢ５では、セルの配置や配線が再度変更される。以後、ステップＳＢ７の判断結果が「Ｎｏ」となるまで、ステップＳＢ５〜ステップＳＢ７が繰り返される。
そして、タイミング解析結果にエラーが無く、ステップＳＢ７の判断結果が「Ｎｏ」になると、ステップＳＢ８では、タイミング解析済みの各セル、配線におけるスタティックノイズ値（以下、単にノイズ値と称する）をチェックするためのスタティックノイズチェックが実行される。
この場合、ステップＳＢ４で簡易スタティックノイズチェックが実行済みであるため、従来に比べて、ノイズが低減される。
このスタティックノイズチェックにおいては、ステップＳＣ４（第１３図参照）と同様であるが、この場合、全ての配線情報ファイル（全セル）を対象とし、ノイズ値が計算される。
ステップＳＢ９では、ノイズ値が制限値（しきい値）以下であるか否かが判断される。ステップＳＢ９の判断結果が「Ｎｏ」である場合、すなわち、ノイズ値が制限値を超えている場合、ステップＳＢ４では、一部の配線情報ファイルに対して、簡易スタティックノイズチェックが実行される。
以後、ステップＳＢ９の判断結果が「Ｙｅｓ」になるまで、ステップＳＢ４〜ステップＳＢ９が繰り返される。
そして、ステップＳＢ９の判断結果が「Ｙｅｓ」、すなわち、タイミング解析結果にエラーが無く、かつノイズ値が制限値以下である場合、ステップＳＢ１０では、各セルの配置、配線に基づいて、設計対象の電子回路を製造するための製造データが作成される。
以上説明したように、一実施例によれば、第１２図に示したステップＳＢ４で、設計対象の全電子回路（セル）のうち一部の電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、所定の方法により、該ノイズ値が制限値以下となるように電子回路のパラメータを変更し、ステップＳＢ６で信号伝送のタイミングを解析し、ステップＳＢ８で全電子回路に関するノイズ値を計算し、ステップＳＢ９で該ノイズ値が制限値を超えた場合、ステップＳＢ４（一部の電子回路に関するノイズ値計算、パラメータの変更）を実行させることとしたので、設計時間の短縮化を図ることができる。
以上本発明にかかる一実施例について図面を参照して詳述してきたが、具体的な構成例はこの一実施例に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等があっても本発明に含まれる。
例えば、前述した一実施例においては、前述した各機能を実現するためのプログラムを第１５図に示したコンピュータ読み取り可能な記録媒体２００に記録して、この記録媒体２００に記録されたプログラムをコンピュータ１００に読み込ませ、実行することにより各機能を実現してもよい。
コンピュータ１００は、上記プログラムを実行するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１０と、キーボード、マウス等の入力装置１２０と、各種データを記憶するＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１３０と、演算パラメータ等を記憶するＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１４０と、記録媒体２００からプログラムを読み取る読取装置１５０と、ディスプレイ、プリンタ等の出力装置１６０とから構成されている。
ＣＰＵ１１０は、読取装置１５０を経由して記録媒体２００に記録されているプログラムを読み込んだ後、プログラムを実行することにより、前述した各機能を実現する。なお、記録媒体２００としては、光ディスク、フレキシブルディスク、ハードディスク等が挙げられる。
以上説明したように、本発明によれば、設計対象の全電子回路のうち一部の電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、所定の方法により、該ノイズ値が制限値以下となるように電子回路のパラメータを変更し、信号伝送のタイミングを解析し、全電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、一部の電子回路に関するノイズ値計算、パラメータの変更を行わせることとしたので、設計時間の短縮化を図ることができるという効果を奏する。
【産業上の利用可能性】  以上のように、本発明にかかる電子回路設計プログラム、電子回路設計方法および電子回路設計装置は、電子回路の設定に対して有用であり、特に、設計時間の短縮に適している。
【図１】
2005043420.tif 000003
【図２】
2005043420.tif 000004
【図３】
2005043420.tif 000005
【図４】
2005043420.tif 000006
【図５】
2005043420.tif 000007
【図６】
2005043420.tif 000008
【図７】
2005043420.tif 000009
【図８】
2005043420.tif 000010
【図９】
2005043420.tif 000011
【図１０】
2005043420.tif 000012
【図１１】
2005043420.tif 000013
【図１２】
2005043420.tif 000014
【図１３】
2005043420.tif 000015
【図１４】
2005043420.tif 000016
【図１５】
2005043420.tif 000017
【図１６】
2005043420.tif 000018
【手続補正書】
【提出日】平成18年8月28日(2006.8.28)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピュータに、
設計対象の全電子回路のうち一部の電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、所定の方法により、該ノイズ値が制限値以下となるように前記電子回路のパラメータを変更する簡易ノイズチェック工程と、
全電子回路について、信号伝送のタイミングを解析するタイミング解析工程と、
タイミングが解析済みの全電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、前記簡易ノイズチェック工程を実行させるスタティックノイズチェック工程と、
を実行させるための電子回路設計プログラム。
【請求項２】
前記所定の方法は、電子回路における隣接配線の平行区間長を短くする方法であることを特徴とする請求の範囲第１項に記載の電子回路設計プログラム。
【請求項３】
前記所定の方法は、電子回路における隣接配線の平行区間の距離を伸ばす方法であることを特徴とする請求の範囲第１項に記載の電子回路設計プログラム。
【請求項４】
前記所定の方法は、電子回路における配線幅を狭くする方法であることを特徴とする請求の範囲第１項に記載の電子回路設計プログラム。
【請求項５】
前記所定の方法は、電子回路におけるドライバの駆動能力を小さくする方法であることを特徴とする請求の範囲第１項に記載の電子回路設計プログラム。
【請求項６】
前記所定の方法は、電子回路におけるドライバから、隣接配線の平行区間までの距離を短くする方法であることを特徴とする請求の範囲第１項に記載の電子回路設計プログラム。
【請求項７】
電子回路設計装置による電子回路設計方法であって、
設計対象の全電子回路のうち一部の電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、所定の方法により、該ノイズ値が制限値以下となるように前記電子回路のパラメータを変更する簡易ノイズチェック工程と、
全電子回路について、信号伝送のタイミングを解析するタイミング解析工程と、
タイミングが解析済みの全電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、前記簡易ノイズチェック工程を実行させるスタティックノイズチェック工程と、
を含むことを特徴とする電子回路設計方法。
【請求項８】
前記所定の方法は、電子回路における隣接配線の平行区間長を短くする方法であることを特徴とする請求の範囲第７項に記載の電子回路設計方法。
【請求項９】
前記所定の方法は、電子回路における隣接配線の平行区間の距離を伸ばす方法であることを特徴とする請求の範囲第７項に記載の電子回路設計方法。
【請求項１０】
前記所定の方法は、電子回路における配線幅を狭くする方法であることを特徴とする請求の範囲第７項に記載の電子回路設計方法。
【請求項１１】
前記所定の方法は、電子回路におけるドライバの駆動能力を小さくする方法であることを特徴とする請求の範囲第７項に記載の電子回路設計方法。
【請求項１２】
前記所定の方法は、電子回路におけるドライバから、隣接配線の平行区間までの距離を短くする方法であることを特徴とする請求の範囲第７項に記載の電子回路設計方法。
【請求項１３】
設計対象の全電子回路のうち一部の電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、所定の方法により、該ノイズ値が制限値以下となるように前記電子回路のパラメータを変更する簡易ノイズチェック手段と、
全電子回路について、信号伝送のタイミングを解析するタイミング解析手段と、
タイミングが解析済みの全電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、前記簡易ノイズチェック手段を動作させるスタティックノイズチェック手段と、
を備えたことを特徴とする電子回路設計装置。
【請求項１４】
前記所定の方法は、電子回路における隣接配線の平行区間長を短くする方法であることを特徴とする請求の範囲第１３項に記載の電子回路設計装置。
【請求項１５】
前記所定の方法は、電子回路における隣接配線の平行区間の距離を伸ばす方法であることを特徴とする請求の範囲第１３項に記載の電子回路設計装置。
【請求項１６】
前記所定の方法は、電子回路における配線幅を狭くする方法であることを特徴とする請求の範囲第１３項に記載の電子回路設計装置。
【請求項１７】
前記所定の方法は、電子回路におけるドライバの駆動能力を小さくする方法であることを特徴とする請求の範囲第１３項に記載の電子回路設計装置。
【請求項１８】
前記所定の方法は、電子回路におけるドライバから、隣接配線の平行区間までの距離を短くする方法であることを特徴とする請求の範囲第１３項に記載の電子回路設計装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【書類名】明細書
【発明の名称】電子回路設計プログラム、電子回路設計方法および電子回路設計装置
【技術分野】
【０００１】
本発明は、電子回路の設計、ノイズチェックに用いて好適な電子回路設計プログラム、電子回路設計方法および電子回路設計装置に関するものであり、特に、設計時間の短縮化を図ることができる電子回路設計プログラム、電子回路設計方法および電子回路設計装置に関するものである。
【背景技術】
【０００２】
近年、各種電子回路の小型化や高速化に伴い、電子回路を設計する際のノイズ解析とノイズ対策が重要になってきている。従って、従来では、ノイズが制限値となるように電子回路が設計されている。
【０００３】
第１６図は、従来の電子回路設計方法を説明するフローチャートである。
ステップＳＡ１では、ＲＴＬ（Register Transfer Level）設計が行われる。ＲＴＬ設計では、論理回路の機能的な動作をデータ信号の流れと制御信号とで記述し、設計対象の電子回路における論理仕様が設計される。
【０００４】
ステップＳＡ２では、ステップＳＡ１で設計された論理仕様を入力とし、テクノロジマッピング、遅延時間や面積等を評価関数とした最適化処理を行い、ゲートレベルのセル（論理回路）を生成するための論理合成処理が実行される。
【０００５】
ステップＳＡ３では、半導体チップのサイズや電気的特性の最適化をめざしながら、半導体チップ上における各セルの概略配置を決定するためのフロアプラン処理が実行される。
【０００６】
ステップＳＡ４では、ステップＳＡ３で決定された概略配置に基づいて、各セルが配置面に配置され、セル間が配線される。ステップＳＡ５では、配置された全セルに信号を入力し、所期のタイミングや周波数で信号が出力されるかというタイミング解析が行われる。このタイミング解析には、全セルが対象となるため、大型計算機を用いても数日を要する。
【０００７】
ステップＳＡ６では、タイミング解析結果にエラーがあるか否かが判断される。ステップＳＡ６の判断結果が「Ｙｅｓ」である場合、すなわち、タイミング解析結果がエラーである場合、ステップＳＡ４では、エラーが発生しないように再設計され、セルの配置や配線が変更される。
【０００８】
ステップＳＡ５では、上述と同様にして、再設計後におけるタイミング解析が行われる。タイミング解析には、大型計算機を用いても数日をさらに要する。ステップＳＡ６では、タイミング解析結果にエラーがあるか否かが判断される。
【０００９】
ここで、再設計のミスに起因して、再度エラーがある場合、ステップＳＡ４では、セルの配置や配線が再度変更される。以後、ステップＳＡ６の判断結果が「Ｎｏ」となるまで、ステップＳＡ４〜ステップＳＡ６が繰り返される。
【００１０】
そして、タイミング解析結果にエラーが無く、ステップＳＡ６の判断結果が「Ｎｏ」になると、ステップＳＡ７では、タイミング解析済みの各セル、配線におけるスタティックノイズ値（以下、単にノイズ値と称する）をチェックするためのスタティックノイズチェックが実行される。
【００１１】
このスタティックノイズチェックにおいては、配線の幅、配線層および長さに応じて容量値および抵抗値が計算され、配線同士の平行区間とセル（ドライバ、レシーバ等）の種類に応じたパラメータに基づいて、ノイズ値が計算される。
【００１２】
ステップＳＡ８では、ノイズ値が制限値（しきい値）以下であるか否かが判断される。ステップＳＡ８の判断結果が「Ｎｏ」である場合、すなわち、ノイズ値が制限値を超えている場合、ステップＳＡ４では、ノイズ値が制限値以下となり、かつタイミング解析結果にエラーが発生しないように再設計され、セルの配置や配線が変更される。
【００１３】
ステップＳＡ５では、上述と同様にして、再設計後におけるタイミング解析が行われる。タイミング解析には、大型計算機を用いても数日をさらに要する。ステップＳＡ６では、タイミング解析結果にエラーがあるか否かが判断される。ここで、ステップＳＡ６の判断結果が「Ｙｅｓ」である場合、ステップＳＡ４では、再び、再設計され、セルの配置や配線が変更される。
【００１４】
また、ステップＳＡ６の判断結果が「Ｎｏ」である場合、ステップＳＡ７では、上述と同様にして、再設計後におけるスタティックノイズチェックが実行される。ステップＳＡ８では、再設計後におけるノイズ値が制限値（しきい値）以下であるか否かが判断される。ステップＳＡ８の判断結果が「Ｎｏ」である場合、すなわち、ノイズ値が制限値を超えている場合、ステップＳＡ４では、ノイズ値が制限値以下となり、かつタイミング解析結果にエラーが発生しないように再設計され、セルの配置や配線が変更される。
【００１５】
以後、ステップＳＡ８の判断結果が「Ｙｅｓ」となるまで、ステップＳＡ４〜ステップＳＡ８が繰り返される。そして、ステップＳＡ８の判断結果が「Ｙｅｓ」、すなわち、タイミング解析結果にエラーが無く、かつノイズ値が制限値以下である場合、ステップＳＡ９では、各セルの配置、配線に基づいて、設計対象の電子回路を製造するための製造データが作成される。
【００１６】
特許文献１  特開２００２−２５９４８１号公報
【発明の開示】
【発明が解決しようとする課題】
【００１７】
ところで、従来の電子回路設計方法においては、設計者の経験やカンに基づいて、ステップＳＡ４でセル配置・配線の再設計が行われるため、設計の手戻りが多く、設計時間の長時間化を招くという問題があった。また、従来の電子回路設計方法においては、処理対象物が多いため、全てを制限値内に収めることが困難である。
【００１８】
また、従来の電子回路設計方法においては、第１６図に示したステップＳＡ５でタイミング解析が実行された後、ステップＳＡ７でスタティックノイズチェックが実行される。
ここで、タイミング解析には、前述したように膨大な時間を要する。
【００１９】
しかしながら、従来の電子回路設計方法においては、タイミング解析結果がＯＫでも、スタティックノイズチェックでＮＧとなれば、ステップＳＡ４で再び、セル配置・配線を再設計し、再び、膨大な時間をかけて、タイミング解析を実行しなければならず、このことが、設計時間をさらに長時間化させる要因となる。
【００２０】
本発明は、上記に鑑みてなされたもので、設計時間の短縮化を図ることができる電子回路設計プログラム、電子回路設計方法および電子回路設計装置を提供することを目的としている。
【課題を解決するための手段】
【００２１】
上記目的を達成するために、本発明は、コンピュータに、設計対象の全電子回路のうち一部の電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、所定の方法により、該ノイズ値が制限値以下となるように前記電子回路のパラメータを変更する簡易ノイズチェック工程と、全電子回路について、信号伝送のタイミングを解析するタイミング解析工程と、タイミングが解析済みの全電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、前記簡易ノイズチェック工程を実行させるスタティックノイズチェック工程と、を実行させるための電子回路設計プログラムである。
【００２２】
また、本発明は、電子回路設計装置による電子回路設計方法であって、設計対象の全電子回路のうち一部の電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、所定の方法により、該ノイズ値が制限値以下となるように前記電子回路のパラメータを変更する簡易ノイズチェック工程と、全電子回路について、信号伝送のタイミングを解析するタイミング解析工程と、タイミングが解析済みの全電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、前記簡易ノイズチェック工程を実行させるスタティックノイズチェック工程と、を含むことを特徴とする。
【００２３】
また、本発明は、設計対象の全電子回路のうち一部の電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、所定の方法により、該ノイズ値が制限値以下となるように前記電子回路のパラメータを変更する簡易ノイズチェック手段と、全電子回路について、信号伝送のタイミングを解析するタイミング解析手段と、タイミングが解析済みの全電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、前記簡易ノイズチェック手段を動作させるスタティックノイズチェック手段と、を備えたことを特徴とする。
【発明の効果】
【００２４】
かかる発明によれば、設計対象の全電子回路のうち一部の電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、所定の方法により、該ノイズ値が制限値以下となるように電子回路のパラメータを変更し、信号伝送のタイミングを解析し、全電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、一部の電子回路に関するノイズ値計算、パラメータの変更を行わせることとしたので、設計時間の短縮化を図ることができる。
【発明を実施するための最良の形態】
【実施例】
【００２５】
以下、図面を参照して本発明にかかる一実施例について詳細に説明する。第１図は、本発明にかかる一実施例の構成を示すブロック図である。
【００２６】
同図において、電子回路設計装置１０は、前述したＲＴＬ設計、論理合成、フロアプラン処理、後述する簡易スタティックノイズチェック（第２図参照）、タイミング解析、スタティックノイズチェック、製造データ作成等により電子回路の設計を行う装置である。
【００２７】
制御部１１は、設計に関する制御を行う。この制御部１１の動作の詳細については、後述する。記憶部１２は、制御部１１で用いられるコンピュータプログラム、各種情報、データを記憶する。入力部１３は、キーボード、マウス、外部データ読取部等である。出力部１４は、製造データ等を外部装置へ出力する。表示部１５は、ＬＣＤ（Liquid  Crystal  Display）やＣＲＴ（Cathode  Ray  Tube）等である。
【００２８】
テクノロジ情報ファイル格納部２０は、第２図に示したテクノロジ情報ファイル２１を格納している。テクノロジ情報ファイル２１は、セル間を接続する配線に必要なテクノロジ特性を定義するテクノロジ情報のファイルである。
【００２９】
テクノロジ情報は、各配線層で使用可能な配線の幅、ノイズ対策スペース値（ノイズ対策を考慮した場合の配線間隔の最小スペース値）、配線ユニット長、配線層の種類、名称、ノイズ値の制限値等である。
【００３０】
第１図に戻り、配線情報ファイル格納部３０は、配線情報ファイルを格納している。配線情報ファイルは、第３図に示した配線情報ファイルフォーマット３０Ｆに基づいて、スタティックノイズチェック対象の各ネット（電子回路の最小単位）における配線情報を定義するための配線情報のファイルである。
【００３１】
ネットは、送信側のドライバ（セル）と、受信側のレシーバ（セル）と、ドライバとレシーバとを接続する配線とから構成されている。
【００３２】
２つのネットが隣接配置されている場合、両配線の平行区間で一方の配線は、他方の配線へノイズを与える。以下では、ノイズを与える側のネットをａｇｇｒｅｓｓｏｒネットと称する。ノイズを受ける側のネットをｖｉｃｔｉｍネットと称する。
【００３３】
第５図（ａ）には、ネット群３１の平面図が図示されている。ネット群３１は、第５図（ｂ）に示したＡ層、Ｂ層およびＣ層という３つの配線層にまたがって配線されており、ａｇｇｒｅｓｓｏｒネット３２およびｖｉｃｔｉｍネット３３から構成されている。
【００３４】
ａｇｇｒｅｓｓｏｒネット３２は、ドライバ３２ａ（セル）と、レシーバ３２ｂ（セル）と、ドライバ３２ａとレシーバ３２ｂとの間を接続する配線３２ｃとから構成されており、ｖｉｃｔｉｍネット３３に対してノイズを与える。配線３２ｃは、ドライバ３２ａのピン（Ｘ）とレシーバ３２ｂのピン（Ａ）との間であって、第５図（ｂ）に示したＢ層およびＡ層にまたがって配設されている。
【００３５】
第５図（ａ）に示したｖｉｃｔｉｍネット３３は、ドライバ３３ａ（セル）と、レシーバ３３ｂ（セル）と、ドライバ３３ａとレシーバ３３ｂとの間を接続する配線３３ｃとから構成されており、ａｇｇｒｅｓｓｏｒネット３２からノイズを受ける。配線３３ｃは、ドライバ３３ａのピン（Ｘ）とレシーバ３３ｂのピン（Ａ）との間であって、第５図（ｂ）に示したＣ層に配設されている。
【００３６】
第３図に示した配線情報ファイルフォーマット３０Ｆにおいて、ＤＶは、配線情報の開始を表す。ＤＶ＿ＥＮＤは、配線情報の終了を表す。ＡＧＲＳは、上述したａｇｇｒｅｓｓｏｒネットに関する情報を表し、ドライバマクロ名、ドライバピン名、レシーバマクロ名、レシーバピン名、ＫＩＮＤ＝ネット種別の情報である。
【００３７】
ドライバマクロ名は、ドライバに付与された名称であり、例えば、ドライバ３２ａ（第５図（ａ）参照）のＭＣＲＤＶ１である。ドライバピン名は、ドライバのピン名であり、例えば、ドライバ３２ａのピン（Ｘ）である。
【００３８】
レシーバマクロ名は、レシーバに付与された名称であり、例えば、レシーバ３２ｂ（第５図（ａ）参照）のＭＣＲＲＶ１である。レシーバピン名は、レシーバ３２ｂのピン名であり、例えば、レシーバ３２ｂのピン（Ａ）である。ＫＩＮＤ＝ネット種別は、ａｇｇｒｅｓｓｏｒネット３２の種別（clock信号伝送用、電源用等）を表し、例えば、clockである。
【００３９】
ＶＣＴＭは、上述したｖｉｃｔｉｍネットに関する情報を表し、ドライバマクロ名、ドライバピン名、レシーバマクロ名、レシーバピン名、ＫＩＮＤ＝ネット種別の情報である。
【００４０】
ドライバマクロ名は、ドライバに付与された名称であり、例えば、ドライバ３３ａ（第５図（ａ）参照）のＭＣＲＤＶ２である。ドライバピン名は、ドライバのピン名であり、例えば、ドライバ３３ａのピン（Ｘ）である。
【００４１】
レシーバマクロ名は、レシーバに付与された名称であり、例えば、レシーバ３３ｂ（第５図（ａ）参照）のＭＣＲＲＶ２である。レシーバピン名は、レシーバ３３ｂのピン名であり、例えば、レシーバ３３ｂのピン（Ａ）である。ＫＩＮＤ＝ネット種別は、ｖｉｃｔｉｍネット３３の種別（clock信号伝送用、電源用等）を表し、例えば、clockである。
【００４２】
ＰＡＲは、ａｇｇｒｅｓｓｏｒネットの配線幅、ａｇｇｒｅｓｓｏｒネットの配線層、ｖｉｃｔｉｍネットの配線幅、ｖｉｃｔｉｍネットの配線層、平行区間長ＰＲ、平行区間隣接距離ＷＤ、ドライバ−平行区間距離ＤＬの情報から構成されている。
【００４３】
ａｇｇｒｅｓｓｏｒネットの配線幅は、ａｇｇｒｅｓｓｏｒネットの配線の幅であり、例えば、配線３２ｃ（第５図（ａ）参照）の配線幅（０．８μｍ）である。ａｇｇｒｅｓｓｏｒネットの配線層は、ａｇｇｒｅｓｓｏｒネットが配設された配線層であり、例えば、ａｇｇｒｅｓｓｏｒネット３２のＢ層である。
【００４４】
ｖｉｃｔｉｍネットの配線幅は、ｖｉｃｔｉｍネットの配線の幅であり、例えば、配線３３ｃ（第５図（ａ）参照）の配線幅（１．６μｍ）である。ｖｉｃｔｉｍネットの配線層は、ｖｉｃｔｉｍネットが配設された配線層であり、例えばｖｉｃｔｉｍネット３３のＣ層である。平行区間長ＰＲは、ａｇｇｒｅｓｓｏｒネットの配線とｖｉｃｔｉｍネットの配線とが近接した状態で平行とされている区間（以下、平行区間と称する）の長さであり、第５図（ａ）の場合、３００μｍである。
【００４５】
平行区間隣接距離ＷＤは、上記平行区間における配線間の隣接距離であり、第５図（ａ）の場合、３μｍである。ドライバ−平行区間距離ＤＬは、ａｇｇｒｅｓｓｏｒネットのドライバから平行区間までの配線距離であり、第５図（ａ）の場合、２００μｍである。  【００４６】
第４図には、第５図（ａ）に示したネット群３１を表す配線情報ファイル３０1が図示されている。配線情報ファイル３０1は、配線情報ファイルフォーマット３０Ｆ（第３図参照）に対応しており、配線情報ファイル格納部３０に格納されている。
【００４７】
第６図には、第７図（ａ）に示したネット群３４を表す配線情報ファイル３０2が図示されている。配線情報ファイル３０2は、配線情報ファイルフォーマット３０Ｆ（第３図参照）に対応しており、配線情報ファイル格納部３０に格納されている。
【００４８】
第７図（ａ）には、ネット群３４の平面図が図示されている。ネット群３４は、第７図（ｂ）に示したＡ層、Ｂ層およびＣ層という３つの配線層にまたがって配線されており、ａｇｇｒｅｓｓｏｒネット３５およびｖｉｃｔｉｍネット３６から構成されている。
【００４９】
ａｇｇｒｅｓｓｏｒネット３５は、ドライバ３５ａ（セル）と、レシーバ３５ｂ（セル）と、ドライバ３５ａとレシーバ３５ｂとの間を接続する配線３５ｃとから構成されており、ｖｉｃｔｉｍネット３６に対してノイズを与える。配線３５ｃは、ドライバ３５ａのピン（Ｘ）とレシーバ３５ｂのピン（Ａ）との間であって、第７図（ｂ）に示したＢ層、Ｃ層およびＡ層に亘って配設されている。
【００５０】
第７図（ａ）に示したｖｉｃｔｉｍネット３６は、ドライバ３６ａ（セル）と、レシーバ３６ｂ（セル）と、ドライバ３６ａとレシーバ３６ｂとの間を接続する配線３６ｃとから構成されており、ａｇｇｒｅｓｓｏｒネット３５からノイズを受ける。配線３６ｃは、ドライバ３６ａのピン（Ｘ）とレシーバ３６ｂのピン（Ａ）との間であって、第７図（ｂ）に示したＣ層に配設されている。
【００５１】
配線３６ｃと配線３５ｃとは、２つの平行区間を有している。従って、配線情報ファイル３０2（第６図参照）には、上記２つの平行区間に対応させてＰＡＲが２つ記述されて
いる。
【００５２】
第８図には、第９図（ａ）に示したネット群３７を表す配線情報ファイル３０3が図示されている。配線情報ファイル３０3は、配線情報ファイルフォーマット３０Ｆ（第３図参照）に対応しており、配線情報ファイル格納部３０に格納されている。
【００５３】
第９図（ａ）には、ネット群３７の平面図が図示されている。ネット群３７は、第９図（ｂ）に示したＡ層、Ｂ層およびＣ層という３つの配線層にまたがって配線されており、ａｇｇｒｅｓｓｏｒネット３８、ａｇｇｒｅｓｓｏｒネット３９およびｖｉｃｔｉｍネット４０から構成されている。
【００５４】
ａｇｇｒｅｓｓｏｒネット３８は、ドライバ３８ａ（セル）と、レシーバ３８ｂ（セル）と、ドライバ３８ａとレシーバ３８ｂとの間を接続する配線３８ｃとから構成されており、ｖｉｃｔｉｍネット４０に対してノイズを与える。配線３８ｃは、ドライバ３８ａのピン（Ｘ）とレシーバ３８ｂのピン（Ａ）との間であって、第９図（ｂ）に示したＣ層およびＢ層にまたがって配設されている。
【００５５】
ａｇｇｒｅｓｓｏｒネット３９は、ドライバ３９ａ（セル）と、レシーバ３９ｂ（セル）と、ドライバ３９ａとレシーバ３９ｂとの間を接続する配線３９ｃとから構成されており、ｖｉｃｔｉｍネット４０に対してノイズを与える。配線３９ｃは、ドライバ３９ａのピン（Ｘ）とレシーバ３９ｂのピン（Ａ）との間であって、第９図（ｂ）に示したＢ層およびＡ層にまたがって配設されている。
【００５６】
第９図（ａ）に示したｖｉｃｔｉｍネット４０は、ドライバ４０ａ（セル）と、レシーバ４０ｂ（セル）と、ドライバ４０ａとレシーバ４０ｂとの間を接続する配線４０ｃとから構成されており、ａｇｇｒｅｓｓｏｒネット３８およびａｇｇｒｅｓｓｏｒネット３９の双方からノイズを受ける。配線４０ｃは、ドライバ４０ａのピン（Ｘ）とレシーバ４０ｂのピン（Ａ）との間であって、第９図（ｂ）に示したＣ層に配設されている。
【００５７】
配線４０ｃは、配線３８ｃおよび配線３９ｃとの間にそれぞれ２つの平行区間を有している。従って、配線情報ファイル３０3（第８図参照）には、上記２つの平行区間に対応させてＰＡＲが２つ記述されている。
【００５８】
ここで、一実施例では、全セルを配置、配線し、タイミング解析を実行する前に、第２図に示した簡易スタティックノイズチェックが実行される。
【００５９】
簡易スタティックノイズチェックでは、テクノロジ情報ファイル２１、全セルのうち、一部のセルに対応する配線情報ファイル３０1等を入力として、当該一部のセルのノイズ値が制限値以下であるか否かのチェックが実行される。
【００６０】
ノイズ値が制限値を超えている場合、ノイズ値が制限値以下となるように、配線情報ファイル３０1のパラメータのうちノイズ低減に効果がある平行区間隣接距離ＷＤ、平行区間長ＰＲ等に制約がかけられ、自動的に変更される。
【００６１】
簡易スタティックノイズチェックでは、配線情報ファイル３０1が入力された場合、配線情報ファイル３０1に対応する配線制約情報ファイル５０1と、チェック結果リスト６０1とが出力される。
【００６２】
配線制約情報ファイル５０1は、配線情報ファイル３０1について、ノイズ値が制約値以下となるように平行区間隣接距離ＷＤや平行区間長ＰＲに制約がかけられたファイルであり、配線情報ファイル３０1と同様のフォーマットとされている。
【００６３】
第１０図に示したように、チェック結果リスト６０1は、配線情報ファイル３０1に基づく、簡易スタティックノイズチェックの結果を表すリストであり、配線情報ファイル名、テクノロジ情報ファイル名、ｖｉｃｔｉｍネット名、ａｇｇｒｅｓｓｏｒネット名、パラメータの制限値、ノイズ値等である。
【００６４】
なお、第１１図に示したチェック結果リスト６０3は、配線情報ファイル３０3に対応している。
【００６５】
第１図に戻り、配線制約情報ファイル格納部５０は、上述した配線制約情報ファイル５０1等を格納する。
【００６６】
つぎに、一実施例の動作について、第１２図〜第１４図に示したフローチャートを参照しつつ説明する。
【００６７】
ステップＳＢ１では、電子回路設計装置１０の制御部１１は、ステップＳＡ１と同様にして、ＲＴＬ設計を実行する。ステップＳＢ２では、制御部１１は、ステップＳＢ１で設計された論理仕様を入力とし、テクノロジマッピング、遅延時間や面積等を評価関数とした最適化処理を行い、ゲートレベルのセル（論理回路）を生成するための論理合成処理を実行する。
【００６８】
ステップＳＢ３では、制御部１１は、半導体チップのサイズや電気的特性の最適化をめざしながら、半導体チップ上における各セルの概略配置を決定するためのフロアプラン処理を実行する。
【００６９】
ステップＳＢ４では、制御部１１は、簡易スタティックノイズチェックを実行する。具体的には、第１３図に示したステップＳＣ１では、制御部１１は、全セルのうち一部のセルに対応する例えば、配線情報ファイル３０1（配線情報ファイル３０2（第６図参照）、配線情報ファイル３０3（第８図参照）も同様）を配線情報ファイル格納部３０から読み出し、この配線情報ファイル３０1を解釈する。配線情報ファイル３０1は、例えば、ユーザにより指定される。
【００７０】
ステップＳＣ２では、制御部１１は、テクノロジ情報ファイル格納部２０よりテクノロジ情報ファイル２１（第２図参照）を読み出し、このテクノロジ情報ファイル２１を解釈する。
【００７１】
ステップＳＣ３では、制御部１１は、ステップＳＣ１およびステップＳＣ２の解釈に基づいて、ノイズ値計算に用いられるパラメータを整理する。
【００７２】
ステップＳＣ４では、制御部１１は、配線情報ファイル３０1に対応するネット群３１（第５図参照）におけるノイズ値（Ｎｖ）を以下の（１）式にパラメータを代入して計算する。
Ｎｖ＝ΣＬn×Ｋa×Ｋb、ｆ（ΣＣ，Ｌ）×αag×αvc  ・・・（１）
【００７３】
（１）式において、ΣＬnは、平行区間長の合計である。Ｋaは、ｖｉｃｔｉｍネットにおける係数である。Ｋbは、ａｇｇｒｅｓｓｏｒネットにおける係数である。ｆ（ΣＣ，Ｌ）は、ａｇｇｒｅｓｓｏｒネットのドライバから平行区間までの配線によるａｇｇｒｅｓｓｏｒネットの波形なまりを考慮した緩和関数であり、距離および容量から求められる。
【００７４】
αagは、ａｇｇｒｅｓｓｏｒネットのドライバ係数であり、ドライバの駆動能力により決定される。αvcは、ｖｉｃｔｉｍネットのドライバ係数であり、ドライバの駆動能力により決定される。
【００７５】
ステップＳＣ５では、制御部１１は、ステップＳＣ４で計算されたノイズ値（Ｎｖ）が、予め設定された制限値以下であるか否かを判断する。ステップＳＣ５の判断結果が「Ｙｅｓ」である場合、ステップＳＣ６では、制御部１１は、チェック結果リスト６０1を出力する。
【００７６】
一方、ステップＳＣ５の判断結果が「Ｎｏ」である場合、すなわち、ノイズ値が制限値を超えている場合、ステップＳＣ７では、配線制約情報ファイル作成処理を実行する。
【００７７】
この配線制約情報ファイル作成処理では、上記ノイズ値が制限値以下となるように、配線情報ファイルのパラメータ（例えば、平行区間長ＰＲ、平行区間隣接距離ＷＤ）を変更（微調整）し、配線制約情報ファイルを作成するための処理である。パラメータを変更（微調整）する方法としては、例えば、第１の方法、第２の方法、第３の方法がある。
【００７８】
第１の方法は、平行区間隣接距離ＷＤを単位長さ（例えば、１μｍ）ずつ伸ばし、ノイズ値を低減する方法である。第２の方法は、平行区間長ＰＲを単位長さ（例えば、１μｍ）ずつ短くし、ノイズ値を低減する方法である。第３の方法は、平行区間隣接距離ＷＤを単位長さ（例えば、１μｍ）ずつ伸ばすとともに、平行区間長ＰＲを単位長さ（例えば、１μｍ）ずつ短くし、ノイズ値を低減する方法である。
【００７９】
なお、一実施例においては、ノイズ値を低減する方法としては、上記第１〜第３の方法以外に、ａｇｇｒｅｓｓｏｒネットの配線幅を狭くする方法、ｖｉｃｔｉｍネットのドライバ駆動能力を小さくする方法、ａｇｇｒｅｓｓｏｒネットのドライバ駆動能力を小さくする方法、ドライバ−平行区間距離ＤＬを短くする方法、各方法を複数組み合わせる方法を適用してもよい。
【００８０】
配線制約情報ファイル作成処理において、第１４図に示したステップＳＤ１では、制御部１１は、ユーザにより、上述した第１の方法が予め設定されているか否かを判断する。ステップＳＤ１の判断結果が「Ｙｅｓ」である場合、ステップＳＤ２では、制御部１１は、第１の方法を実行することにより、配線情報ファイル３０1における平行区間隣接距離ＷＤを単位長さ伸ばす。ステップＳＤ３では、制御部１１は、ステップＳＣ４（第１３図参照）と同様にして、変更後の平行区間隣接距離ＷＤを考慮して、ノイズ値を計算する。  【００８１】
ステップＳＤ４では、制御部１１は、ステップＳＤ３で計算されたノイズ値が、予め設定された制限値以下であるか否かを判断する。ステップＳＤ４の判断結果が「Ｎｏ」である場合、ステップＳＤ２では、制御部１１は、配線情報ファイル３０1における平行区間隣接距離ＷＤをさらに単位長さ伸ばす。ステップＳＤ３では、制御部１１は、ステップＳＣ４（第１３図参照）と同様にして、変更後の平行区間隣接距離ＷＤを考慮して、ノイズ値を計算する。
【００８２】
以後、ステップＳＤ４の判断結果が「Ｙｅｓ」となるまで、ステップＳＤ２〜ステップＳＤ４が繰り返される。
【００８３】
そして、ステップＳＤ４の判断結果が「Ｙｅｓ」になると、ステップＳＤ５では、制御部１１は、変更後の配線情報ファイル３０1に対応する配線制約情報ファイル５０1を作成する。
【００８４】
第１３図に戻り、ステップＳＣ８では、制御部１１は、配線制約情報ファイル５０1を出力するとともに、配線制約情報ファイル格納部５０に格納する。ステップＳＣ６では、制御部１１は、チェック結果リスト６０1を出力する。
【００８５】
一方、第１４図に示したステップＳＤ１の判断結果が「Ｎｏ」である場合、ステップＳＤ６では、制御部１１は、ユーザにより、上述した第２の方法が予め設定されているか否かを判断する。
【００８６】
ステップＳＤ６の判断結果が「Ｙｅｓ」である場合、ステップＳＤ７では、制御部１１は、第２の方法を実行することにより、配線情報ファイル３０1における平行区間長ＰＲを単位長さ短くする。ステップＳＤ８では、制御部１１は、ステップＳＣ４と同様にして、変更後の平行区間長ＰＲを考慮して、ノイズ値を計算する。
【００８７】
ステップＳＤ９では、制御部１１は、ステップＳＤ８で計算されたノイズ値が、予め設定された制限値以下であるか否かを判断する。ステップＳＤ９の判断結果が「Ｎｏ」である場合、ステップＳＤ７では、制御部１１は、配線情報ファイル３０1における平行区間長ＰＲをさらに単位長さ短くする。ステップＳＤ８では、制御部１１は、変更後の平行区間長ＰＲを考慮して、ノイズ値を計算する。
【００８８】
以後、ステップＳＤ９の判断結果が「Ｙｅｓ」となるまで、ステップＳＤ７〜ステップＳＤ９が繰り返される。
【００８９】
そして、ステップＳＤ９の判断結果が「Ｙｅｓ」になると、ステップＳＤ５では、制御部１１は、変更後の配線情報ファイル３０1に対応する配線制約情報ファイル５０1を作成する。
【００９０】
第１３図に戻り、ステップＳＣ８では、制御部１１は、配線制約情報ファイル５０1を出力するとともに、配線制約情報ファイル格納部５０に格納する。ステップＳＣ６では、制御部１１は、チェック結果リスト６０1を出力する。
【００９１】
一方、第１４図に示したステップＳＤ６の判断結果が「Ｎｏ」であり、第３の方法が設定されている場合、ステップＳＤ１０では、制御部１１は、第３の方法を実行することにより、配線情報ファイル３０1における平行区間隣接距離ＷＤを単位長さのばし、平行区間長ＰＲを単位長さ短くする。ステップＳＤ１１では、制御部１１は、ステップＳＣ４と同様にして、変更後の平行区間隣接距離ＷＤおよび平行区間長ＰＲを考慮して、ノイズ値を計算する。
【００９２】
ステップＳＤ１２では、制御部１１は、ステップＳＤ１１で計算されたノイズ値が、予め設定された制限値以下であるか否かを判断する。ステップＳＤ１２の判断結果が「Ｎｏ」である場合、ステップＳＤ１０では、制御部１１は、配線情報ファイル３０1における平行区間隣接距離ＷＤをさらに単位長さのばすとともに、平行区間長ＰＲをさらに単位長さ短くする。ステップＳＤ１１では、制御部１１は、変更後の平行区間隣接距離ＷＤおよび平行区間長ＰＲを考慮して、ノイズ値を計算する。
【００９３】
以後、ステップＳＤ１２の判断結果が「Ｙｅｓ」となるまで、ステップＳＤ１０〜ステップＳＤ１２が繰り返される。
【００９４】
そして、ステップＳＤ１２の判断結果が「Ｙｅｓ」になると、ステップＳＤ５では、制御部１１は、変更後の配線情報ファイル３０1に対応する配線制約情報ファイル５０1を作成する。
【００９５】
第１３図に戻り、ステップＳＣ８では、制御部１１は、配線制約情報ファイル５０1を出力するとともに、配線制約情報ファイル格納部５０に格納する。ステップＳＣ６では、制御部１１は、チェック結果リスト６０1を出力する。
【００９６】
第１２図に戻り、ステップＳＢ５では、ステップＳＢ３で決定された概略配置およびステップＳＢ４で作成された配線情報ファイル（配線制約情報ファイル）に基づいて、各セルが配置面に配置され、セル間が配線される。
【００９７】
ステップＳＢ６では、配置された全セルに信号入力し、所期のタイミングや周波数で信号が出力されるかというタイミング解析が行われる。このタイミング解析には、全セルが対象となるため、大型計算機を用いても数日を要する。
【００９８】
ステップＳＢ７では、タイミング解析結果にエラーがあるか否かが判断される。ステップＳＢ７の判断結果が「Ｙｅｓ」である場合、すなわち、タイミング解析結果がエラーである場合、ステップＳＢ５では、エラーが発生しないように再設計され、セルの配置や配線が変更される。
【００９９】
ステップＳＢ６では、上述と同様にして、再設計後におけるタイミング解析が行われる。タイミング解析には、大型計算機を用いても数日をさらに要する。ステップＳＢ７では、タイミング解析結果にエラーがあるか否かが判断される。
【０１００】
ここで、再設計のミスに起因して、再度エラーがある場合、ステップＳＢ５では、セルの配置や配線が再度変更される。以後、ステップＳＢ７の判断結果が「Ｎｏ」となるまで、ステップＳＢ５〜ステップＳＢ７が繰り返される。
【０１０１】
そして、タイミング解析結果にエラーが無く、ステップＳＢ７の判断結果が「Ｎｏ」になると、ステップＳＢ８では、タイミング解析済みの各セル、配線におけるスタティックノイズ値（以下、単にノイズ値と称する）をチェックするためのスタティックノイズチェックが実行される。
【０１０２】
この場合、ステップＳＢ４で簡易スタティックノイズチェックが実行済みであるため、従来に比べて、ノイズが低減される。
【０１０３】
このスタティックノイズチェックにおいては、ステップＳＣ４（第１３図参照）と同様であるが、この場合、全ての配線情報ファイル（全セル）を対象とし、ノイズ値が計算される。
【０１０４】
ステップＳＢ９では、ノイズ値が制限値（しきい値）以下であるか否かが判断される。ステップＳＢ９の判断結果が「Ｎｏ」である場合、すなわち、ノイズ値が制限値を超えている場合、ステップＳＢ４では、一部の配線情報ファイルに対して、簡易スタティックノイズチェックが実行される。
【０１０５】
以後、ステップＳＢ９の判断結果が「Ｙｅｓ」になるまで、ステップＳＢ４〜ステップＳＢ９が繰り返される。
【０１０６】
そして、ステップＳＢ９の判断結果が「Ｙｅｓ」、すなわち、タイミング解析結果にエラーが無く、かつノイズ値が制限値以下である場合、ステップＳＢ１０では、各セルの配置、配線に基づいて、設計対象の電子回路を製造するための製造データが作成される。
【０１０７】
以上説明したように、一実施例によれば、第１２図に示したステップＳＢ４で、設計対象の全電子回路（セル）のうち一部の電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、所定の方法により、該ノイズ値が制限値以下となるように電子回路のパラメータを変更し、ステップＳＢ６で信号伝送のタイミングを解析し、ステップＳＢ８で全電子回路に関するノイズ値を計算し、ステップＳＢ９で該ノイズ値が制限値を超えた場合、ステップＳＢ４（一部の電子回路に関するノイズ値計算、パラメータの変更）を実行させることとしたので、設計時間の短縮化を図ることができる。
【０１０８】
以上本発明にかかる一実施例について図面を参照して詳述してきたが、具体的な構成例はこの一実施例に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等があっても本発明に含まれる。
【０１０９】
例えば、前述した一実施例においては、前述した各機能を実現するためのプログラムを第１５図に示したコンピュータ読み取り可能な記録媒体２００に記録して、この記録媒体２００に記録されたプログラムをコンピュータ１００に読み込ませ、実行することにより各機能を実現してもよい。
【０１１０】
コンピュータ１００は、上記プログラムを実行するＣＰＵ（Central  Processing  Unit）１１０と、キーボード、マウス等の入力装置１２０と、各種データを記憶するＲＯＭ（Read  Only  Memory）１３０と、演算パラメータ等を記憶するＲＡＭ（Random  Access  Memory）１４０と、記録媒体２００からプログラムを読み取る読取装置１５０と、ディスプレイ、プリンタ等の出力装置１６０とから構成されている。
【０１１１】
ＣＰＵ１１０は、読取装置１５０を経由して記録媒体２００に記録されているプログラムを読み込んだ後、プログラムを実行することにより、前述した各機能を実現する。なお、記録媒体２００としては、光ディスク、フレキシブルディスク、ハードディスク等が挙げられる。
【０１１２】
以上説明したように、本発明によれば、設計対象の全電子回路のうち一部の電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、所定の方法により、該ノイズ値が制限値以下となるように電子回路のパラメータを変更し、信号伝送のタイミングを解析し、全電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、一部の電子回路に関するノイズ値計算、パラメータの変更を行わせることとしたので、設計時間の短縮化を図ることができるという効果を奏する。
【産業上の利用可能性】
【０１１３】
以上のように、本発明にかかる電子回路設計プログラム、電子回路設計方法および電子回路設計装置は、電子回路の設定に対して有用であり、特に、設計時間の短縮に適している。
【図面の簡単な説明】
【０１１４】
【図１】第１図は、本発明にかかる一実施例の構成を示すブロック図である。
【図２】第２図は、同一実施例における簡易スタティックノイズチェックの概要を説明する図である。
【図３】第３図は、同一実施例における配線情報ファイルフォーマット３０Ｆを示す図である。
【図４】第４図は、第５図（ａ）に示したネット群３１を表す配線情報ファイル３０1を示す図である。
【図５】第５図は、同一実施例におけるネット群３１を示す図である。
【図６】第６図は、第７図（ａ）に示したネット群３４を表す配線情報ファイル３０2を示す図である。
【図７】第７図は、同一実施例におけるネット群３４を示す図である。
【図８】第８図は、第９図（ａ）に示したネット群３７を表す配線情報ファイル３０3を示す図である。
【図９】第９図は、同一実施例におけるネット群３７を示す図である。
【図１０】第１０図は、同一実施例におけるチェック結果リスト６０1を示す図である。
【図１１】第１１図は、同一実施例におけるチェック結果リスト６０3を示す図である。
【図１２】第１２図は、同一実施例の動作を説明するフローチャートである。
【図１３】第１３図は、第１２図に示した簡易スタティックノイズチェック処理を説明するフローチャートである。
【図１４】第１４図は、第１３図に示した配線制約情報ファイル作成処理を説明するフローチャートである。
【図１５】第１５図は、同一実施例の変形例の構成を示すブロック図である。
【図１６】第１６図は、従来の電子回路設計方法を説明するフローチャートである。
【手続補正書】
【提出日】平成18年11月22日(2006.11.22)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピュータに、
設計対象の全電子回路のうち一部の電子回路に関するテキスト記述による配線モデルを使ってノイズ値を計算し、該ノイズ値が制限値を超えた場合、所定の方法により、該ノイズ値が制限値以下となるような配線制約情報を出力する簡易ノイズチェック工程と、
全電子回路について、信号伝送のタイミングを解析するタイミング解析工程と、
タイミングが解析済みの全電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、前記簡易ノイズチェック工程を実行させるスタティックノイズチェック工程と、
を実行させるための電子回路設計プログラム。
【請求項２】
前記所定の方法は、電子回路における隣接配線の平行区間長を短くする方法であることを特徴とする請求の範囲第１項に記載の電子回路設計プログラム。
【請求項３】
前記所定の方法は、電子回路における隣接配線の平行区間の距離を伸ばす方法であることを特徴とする請求の範囲第１項に記載の電子回路設計プログラム。
【請求項４】
前記所定の方法は、電子回路における配線幅を狭くする方法であることを特徴とする請求の範囲第１項に記載の電子回路設計プログラム。
【請求項５】
前記所定の方法は、電子回路におけるドライバの駆動能力を小さくする方法であることを特徴とする請求の範囲第１項に記載の電子回路設計プログラム。
【請求項６】
前記所定の方法は、電子回路におけるドライバから、隣接配線の平行区間までの距離を短くする方法であることを特徴とする請求の範囲第１項に記載の電子回路設計プログラム。
【請求項７】
電子回路設計装置による電子回路設計方法であって、
前記回路設計装置の簡易ノイズチェック手段が、設計対象の全電子回路のうち一部の電子回路に関するテキスト記述による配線モデルを使ってノイズ値を計算し、該ノイズ値が制限値を超えた場合、所定の方法により、該ノイズ値が制限値以下となるような配線制約情報を出力する簡易ノイズチェック工程と、
前記回路設計装置のタイミング解析手段が、全電子回路について、信号伝送のタイミングを解析するタイミング解析工程と、
前記回路設計装置のスタティックノイズチェック手段が、タイミングが解析済みの全電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、前記簡易ノイズチェック工程を実行させるスタティックノイズチェック工程と、
を含むことを特徴とする電子回路設計方法。
【請求項８】
前記所定の方法は、電子回路における隣接配線の平行区間長を短くする方法であることを特徴とする請求の範囲第７項に記載の電子回路設計方法。
【請求項９】
前記所定の方法は、電子回路における隣接配線の平行区間の距離を伸ばす方法であることを特徴とする請求の範囲第７項に記載の電子回路設計方法。
【請求項１０】
前記所定の方法は、電子回路における配線幅を狭くする方法であることを特徴とする請求の範囲第７項に記載の電子回路設計方法。
【請求項１１】
前記所定の方法は、電子回路におけるドライバの駆動能力を小さくする方法であることを特徴とする請求の範囲第７項に記載の電子回路設計方法。
【請求項１２】
前記所定の方法は、電子回路におけるドライバから、隣接配線の平行区間までの距離を短くする方法であることを特徴とする請求の範囲第７項に記載の電子回路設計方法。
【請求項１３】
設計対象の全電子回路のうち一部の電子回路に関するテキスト記述による配線モデルを使ってノイズ値を計算し、該ノイズ値が制限値を超えた場合、所定の方法により、該ノイズ値が制限値以下となるような配線制約情報を出力する簡易ノイズチェック手段と、
全電子回路について、信号伝送のタイミングを解析するタイミング解析手段と、
タイミングが解析済みの全電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、前記簡易ノイズチェック手段を動作させるスタティックノイズチェック手段と、
を備えたことを特徴とする電子回路設計装置。
【請求項１４】
前記所定の方法は、電子回路における隣接配線の平行区間長を短くする方法であることを特徴とする請求の範囲第１３項に記載の電子回路設計装置。
【請求項１５】
前記所定の方法は、電子回路における隣接配線の平行区間の距離を伸ばす方法であることを特徴とする請求の範囲第１３項に記載の電子回路設計装置。
【請求項１６】
前記所定の方法は、電子回路における配線幅を狭くする方法であることを特徴とする請求の範囲第１３項に記載の電子回路設計装置。
【請求項１７】
前記所定の方法は、電子回路におけるドライバの駆動能力を小さくする方法であることを特徴とする請求の範囲第１３項に記載の電子回路設計装置。
【請求項１８】
前記所定の方法は、電子回路におけるドライバから、隣接配線の平行区間までの距離を短くする方法であることを特徴とする請求の範囲第１３項に記載の電子回路設計装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００２１
【補正方法】変更
【補正の内容】
【００２１】
上記目的を達成するために、本発明は、コンピュータに、設計対象の全電子回路のうち一部の電子回路に関するテキスト記述による配線モデルを使ってノイズ値を計算し、該ノイズ値が制限値を超えた場合、所定の方法により、該ノイズ値が制限値以下となるような配線制約情報を出力する簡易ノイズチェック工程と、全電子回路について、信号伝送のタイミングを解析するタイミング解析工程と、タイミングが解析済みの全電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、前記簡易ノイズチェック工程を実行させるスタティックノイズチェック工程と、を実行させるための電子回路設計プログラムである。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００２２
【補正方法】変更
【補正の内容】
【００２２】
また、本発明は、電子回路設計装置による電子回路設計方法であって、前記回路設計装置の簡易ノイズチェック手段が、設計対象の全電子回路のうち一部の電子回路に関するテキスト記述による配線モデルを使ってノイズ値を計算し、該ノイズ値が制限値を超えた場合、所定の方法により、該ノイズ値が制限値以下となるような配線制約情報を出力する簡易ノイズチェック工程と、前記回路設計装置のタイミング解析手段が、全電子回路について、信号伝送のタイミングを解析するタイミング解析工程と、前記回路設計装置のスタティックノイズチェック手段が、タイミングが解析済みの全電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、前記簡易ノイズチェック工程を実行させるスタティックノイズチェック工程と、を含むことを特徴とする。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００２３
【補正方法】変更
【補正の内容】
【００２３】
また、本発明は、設計対象の全電子回路のうち一部の電子回路に関するテキスト記述による配線モデルを使ってノイズ値を計算し、該ノイズ値が制限値を超えた場合、所定の方法により、該ノイズ値が制限値以下となるような配線制約情報を出力する簡易ノイズチェック手段と、全電子回路について、信号伝送のタイミングを解析するタイミング解析手段と、タイミングが解析済みの全電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、前記簡易ノイズチェック手段を動作させるスタティックノイズチェック手段と、を備えたことを特徴とする。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００２４
【補正方法】変更
【補正の内容】
【００２４】
かかる発明によれば、設計対象の全電子回路のうち一部の電子回路に関するテキスト記述による配線モデルを使ってノイズ値を計算し、該ノイズ値が制限値を超えた場合、所定の方法により、該ノイズ値が制限値以下となるような配線制約情報を出力し、信号伝送のタイミングを解析し、全電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、一部の電子回路に関するノイズ値計算、配線制約情報の出力を行わせることとしたので、設計時間の短縮化を図ることができる。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】０１１２
【補正方法】変更
【補正の内容】
【０１１２】
以上説明したように、本発明によれば、設計対象の全電子回路のうち一部の電子回路に関するテキスト記述による配線モデルを使ってノイズ値を計算し、該ノイズ値が制限値を超えた場合、所定の方法により、該ノイズ値が制限値以下となるような配線制約情報を出力し、信号伝送のタイミングを解析し、全電子回路に関するノイズ値を計算し、該ノイズ値が制限値を超えた場合、一部の電子回路に関するノイズ値計算、配線制約情報の出力を行わせることとしたので、設計時間の短縮化を図ることができるという効果を奏する。
【国際調査報告】
2005043420.tif 000019
2005043420.tif 000020
2005043420.tif 000021
2005043420.tif 000022