(57)【要約】【課題】  配線混雑度が高い場合でもクロストークエラーを抑制することが可能なクロストークエラー制御装置を提供する。【解決手段】  クロストークエラーを発生しているクロストークエラーネットを検出するクロストーク解析手段（１０５）と、そのクロストーク解析手段（１０５）において検出したクロストークエラーネットのノイズ源となるノイズ源ネットを検出するノイズ源ネット検出手段（１０６）と、そのノイズ源ネット検出手段（１０５）において検出したノイズ源ネットの信号レベルを降下するファンクションブロック仮変更手段（１０７）と、を有し、クロストークエラーネットのクロストークエラーを抑制する。【選択図】  図１
2006251933.tif 000002
【特許請求の範囲】
【請求項１】
クロストークエラーを発生しているクロストークエラーネットを検出するクロストーク解析手段と、
前記検出したクロストークエラーネットのノイズ源となるノイズ源ネットを検出するノイズ源ネット検出手段と、
前記検出したノイズ源ネットの信号レベルを降下する降下手段と、
を有し、前記クロストークエラーネットのクロストークエラーを抑制することを特徴とするクロストークエラー制御装置。
【請求項２】
前記ノイズ源ネット検出手段は、
前記検出したノイズ源ネットの中から、最もノイズ量が高いノイズ源ネットから順に検出することを特徴とする請求項１記載のクロストークエラー制御装置。
【請求項３】
前記降下手段により信号レベルを降下した前記ノイズ源ネット周辺の再配線処理を行う配置配線手段を有することを特徴とする請求項１記載のクロストークエラー制御装置。
【請求項４】
前記降下手段により信号レベルを降下した前記ノイズ源ネットの信号レベルを元の信号レベルに戻す降下解除手段を有することを特徴とする請求項１記載のクロストークエラー制御装置。
【請求項５】
前記ノイズ源ネットの信号レベルの降下により影響を受けることになるネットにおいて、パスの遅延エラーが発生するか否かを判定する遅延解析手段と、
前記信号レベルを降下した前記ノイズ源ネットにおいてクロストークエラーが発生するか否かを判定する解析手段と、
を有し、
前記配置配線手段は、
前記遅延解析手段において前記パスの遅延エラーが発生していないと判定し、且つ、前記解析手段において前記クロストークエラーが発生していないと判定した場合に、前記信号レベルを降下した前記ノイズ源ネット周辺の再配線処理を行うことを特徴とする請求項３記載のクロストークエラー制御装置。
【請求項６】
前記ノイズ源ネットの信号レベルの降下により影響を受けることになるネットにおいて、パスの遅延エラーが発生するか否かを判定する遅延解析手段と、
前記信号レベルを降下した前記ノイズ源ネットにおいてクロストークエラーが発生するか否かを判定する解析手段と、
を有し、
前記降下解除手段は、
前記遅延解析手段において前記パスの遅延エラーが発生していると判定した場合と、前記解析手段において前記クロストークエラーが発生していると判定した場合と、の少なくとも１つの場合に、前記降下手段により信号レベルを降下した前記ノイズ源ネットの信号レベルを元の信号レベルに戻すことを特徴とする請求項４記載のクロストークエラー制御装置。
【請求項７】
前記降下手段は、前記検出したノイズ源ネットのファンクションブロックの仮変更を行い、前記検出したノイズ源ネットの信号レベルを降下することを特徴とする請求項１記載のクロストークエラー制御装置。
【請求項８】
前記遅延解析手段は、
前記ノイズ源ネットの信号レベルの降下により影響を受けるネットにおけるパスの遅延値が所定の遅延制限値を超えているか否かを判断し、前記ネットにおけるパスの遅延値が所定の遅延制限値を超えていると判断した際に、前記ネットにおいて、前記パスの遅延エラーが発生したと判定することを特徴とする請求項５または６記載のクロストークエラー制御装置。
【請求項９】
前記クロストーク解析手段は、
ネットを解析して得られたクロストーク量の値が、所定のクロストーク量制限値を超えていると判定した際に、前記ネットにおいてクロストークエラーが発生していると判定し、前記クロストークエラーを発生しているクロストークエラーネットを検出することを特徴とする請求項１記載のクロストークエラー制御装置。
【請求項１０】
前記解析手段は、
前記ノイズ源ネットを解析して得られたクロストーク量の値が、所定のクロストーク量制限値を超えていないと判定した際に、前記ノイズ源ネットにおいてクロストークエラーが発生していないと判定することを特徴とする請求項５または６記載のクロストークエラー制御装置。
【請求項１１】
クロストークエラーの制御を行う情報処理装置において行うクロストークエラー制御方法であって、
クロストークエラーを発生しているクロストークエラーネットを検出するクロストーク解析工程と、
前記検出したクロストークエラーネットのノイズ源となるノイズ源ネットを検出するノイズ源ネット検出工程と、
前記検出したノイズ源ネットの信号レベルを降下する降下工程と、
を、前記情報処理装置が行い、前記クロストークエラーネットのクロストークエラーを抑制することを特徴とするクロストークエラー制御方法。
【請求項１２】
前記ノイズ源ネット検出工程は、
前記検出したノイズ源ネットの中から、最もノイズ量が高いノイズ源ネットから順に検出することを特徴とする請求項１１記載のクロストークエラー制御方法。
【請求項１３】
前記降下工程により信号レベルを降下した前記ノイズ源ネット周辺の再配線処理を行う配置配線工程を、前記情報処理装置が行うことを特徴とする請求項１１記載のクロストークエラー制御方法。
【請求項１４】
前記降下工程により信号レベルを降下した前記ノイズ源ネットの信号レベルを元の信号レベルに戻す降下解除工程を、前記情報処理装置が行うことを特徴とする請求項１１記載のクロストークエラー制御方法。
【請求項１５】
前記ノイズ源ネットの信号レベルの降下により影響を受けることになるネットにおいて、パスの遅延エラーが発生するか否かを判定する遅延解析工程と、
前記信号レベルを降下した前記ノイズ源ネットにおいてクロストークエラーが発生するか否かを判定する解析工程と、
を、前記情報処理装置が行い、
前記配置配線工程は、
前記遅延解析工程において前記パスの遅延エラーが発生していないと判定し、且つ、前記解析工程において前記クロストークエラーが発生していないと判定した場合に、前記信号レベルを降下した前記ノイズ源ネット周辺の再配線処理を行うことを特徴とする請求項１３記載のクロストークエラー制御方法。
【請求項１６】
前記ノイズ源ネットの信号レベルの降下により影響を受けることになるネットにおいて、パスの遅延エラーが発生するか否かを判定する遅延解析工程と、
前記信号レベルを降下した前記ノイズ源ネットにおいてクロストークエラーが発生するか否かを判定する解析工程と、
を、前記情報処理装置が行い、
前記降下解除工程は、
前記遅延解析工程において前記パスの遅延エラーが発生していると判定した場合と、前記解析工程において前記クロストークエラーが発生していると判定した場合と、の少なくとも１つの場合に、前記降下工程により信号レベルを降下した前記ノイズ源ネットの信号レベルを元の信号レベルに戻すことを特徴とする請求項１４記載のクロストークエラー制御方法。
【請求項１７】
前記降下工程は、前記検出したノイズ源ネットのファンクションブロックの仮変更を行い、前記検出したノイズ源ネットの信号レベルを降下することを特徴とする請求項１１記載のクロストークエラー制御方法。
【請求項１８】
前記遅延解析工程は、
前記ノイズ源ネットの信号レベルの降下により影響を受けるネットにおけるパスの遅延値が所定の遅延制限値を超えているか否かを判断し、前記ネットにおけるパスの遅延値が所定の遅延制限値を超えていると判断した際に、前記ネットにおいて、前記パスの遅延エラーが発生したと判定することを特徴とする請求項１５または１６記載のクロストークエラー制御方法。
【請求項１９】
前記クロストーク解析工程は、
ネットを解析して得られたクロストーク量の値が、所定のクロストーク量制限値を超えていると判定した際に、前記ネットにおいてクロストークエラーが発生していると判定し、前記クロストークエラーを発生しているクロストークエラーネットを検出することを特徴とする請求項１１記載のクロストークエラー制御方法。
【請求項２０】
前記解析工程は、
前記ノイズ源ネットを解析して得られたクロストーク量の値が、所定のクロストーク量制限値を超えていないと判定した際に、前記ノイズ源ネットにおいてクロストークエラーが発生していないと判定することを特徴とする請求項１５または１６記載のクロストークエラー制御方法。
【請求項２１】
クロストークエラーの制御を行う情報処理装置において実行させるクロストークエラー制御プログラムであって、
クロストークエラーを発生しているクロストークエラーネットを検出するクロストーク解析処理と、
前記検出したクロストークエラーネットのノイズ源となるノイズ源ネットを検出するノイズ源ネット検出処理と、
前記検出したノイズ源ネットの信号レベルを降下する降下処理と、
を、前記情報処理装置において実行させ、前記クロストークエラーネットのクロストークエラーを抑制することを特徴とするクロストークエラー制御プログラム。
【請求項２２】
前記ノイズ源ネット検出処理は、
前記検出したノイズ源ネットの中から、最もノイズ量が高いノイズ源ネットから順に検出することを特徴とする請求項２１記載のクロストークエラー制御プログラム。
【請求項２３】
前記降下処理により信号レベルを降下した前記ノイズ源ネット周辺の再配線処理を行う配置配線処理を、前記情報処理装置において実行させることを特徴とする請求項２１記載のクロストークエラー制御プログラム。
【請求項２４】
前記降下処理により信号レベルを降下した前記ノイズ源ネットの信号レベルを元の信号レベルに戻す降下解除処理を、前記情報処理装置において実行させることを特徴とする請求項２１記載のクロストークエラー制御プログラム。
【請求項２５】
前記ノイズ源ネットの信号レベルの降下により影響を受けることになるネットにおいて、パスの遅延エラーが発生するか否かを判定する遅延解析処理と、
前記信号レベルを降下した前記ノイズ源ネットにおいてクロストークエラーが発生するか否かを判定する解析処理と、
を、前記情報処理装置において実行させ、
前記配置配線処理は、
前記遅延解析処理において前記パスの遅延エラーが発生していないと判定し、且つ、前記解析処理において前記クロストークエラーが発生していないと判定した場合に、前記信号レベルを降下した前記ノイズ源ネット周辺の再配線処理を行うことを特徴とする請求項２３記載のクロストークエラー制御プログラム。
【請求項２６】
前記ノイズ源ネットの信号レベルの降下により影響を受けることになるネットにおいて、パスの遅延エラーが発生するか否かを判定する遅延解析処理と、
前記信号レベルを降下したノイズ源ネットにおいてクロストークエラーが発生するか否かを判定する解析処理と、
を、前記情報処理装置において実行させ、
前記降下解除処理は、
前記遅延解析処理において前記パスの遅延エラーが発生していると判定した場合と、前記解析処理において前記クロストークエラーが発生していると判定した場合と、の少なくとも１つの場合に、前記降下処理により信号レベルを降下した前記ノイズ源ネットの信号レベルを元の信号レベルに戻すことを特徴とする請求項２４記載のクロストークエラー制御プログラム。
【請求項２７】
前記降下処理は、前記検出したノイズ源ネットのファンクションブロックの仮変更を行い、前記検出したノイズ源ネットの信号レベルを降下することを特徴とする請求項２１記載のクロストークエラー制御プログラム。
【請求項２８】
前記遅延解析処理は、
前記ノイズ源ネットの信号レベルの降下により影響を受けるネットにおけるパスの遅延値が所定の遅延制限値を超えているか否かを判断し、前記ネットにおけるパスの遅延値が所定の遅延制限値を超えていると判断した際に、前記ネットにおいて、前記パスの遅延エラーが発生したと判定することを特徴とする請求項２５または２６記載のクロストークエラー制御プログラム。
【請求項２９】
前記クロストーク解析処理は、
ネットを解析して得られたクロストーク量の値が、所定のクロストーク量制限値を超えていると判定した際に、前記ネットにおいてクロストークエラーが発生していると判定し、前記クロストークエラーを発生しているクロストークエラーネットを検出することを特徴とする請求項２１記載のクロストークエラー制御プログラム。
【請求項３０】
前記解析処理は、
前記ノイズ源ネットを解析して得られたクロストーク量の値が、所定のクロストーク量制限値を超えていないと判定した際に、前記ノイズ源ネットにおいてクロストークエラーが発生していないと判定することを特徴とする請求項２５または２６記載のクロストークエラー制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＬＳＩ（ＬａｒｇｅＳｃａｌｅ  Ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ）やＰＷＢ（Ｐｒｉｎｔｅｄ  Ｗｉｒｉｎｇ  Ｂｏａｒｄ）等の論理回路（あるいは、論理回路の論理接続関係）のレイアウト設計を行うレイアウト方式に関し、特にクロストークエラーを抑制するククロストークエラー制御装置、クロストークエラー制御方法およびクロストークエラー制御プログラムに関するものである。
【背景技術】
【０００２】
ＬＳＩやＰＷＢ等の論理回路（あるいは、論理回路の論理接続関係）のレイアウト設計において、配線ピッチが大きい場合には、隣接配線によるクロストークの影響を考慮する必要がない。
【０００３】
しかしながら、ＬＳＩやＰＷＢ等の配線パターンの微細化に伴い、配線ピッチが小さくなり、配線ピッチが小さくなると、クロストークの影響を無視することができなくなる。このため、近年では、ＬＳＩやＰＷＢ等の論理回路（あるいは、論理回路の論理接続関係）のレイアウト設計においても、クロストークの影響を考慮する必要があり、以下に示すようなクロストークエラーの抑制制御が行われていた。
【０００４】
例えば、第１のクロストークエラーの抑制制御としては、配線パターンの配置が終了した際に、その配線パターンの配置結果を基にクロストークの解析処理（隣接配線間によるクロストーク量の計算等）を行い、そのクロストークの解析結果を基に、クロストークエラーが発生しているネット、または、クロストークエラーの発生原因となっているネットの配線パターンを修正し、クロストークエラーの発生を抑制する制御が行われていた。
【０００５】
また、第２のクロストークエラーの抑制制御としては、配線パターンの設計において、各ネットの配線経路が、ある一定線長以上直線的に配線されないように線長制御を行い、クロストークエラーの発生を抑制する制御が行われていた。
【０００６】
なお、本発明より先に出願された技術文献として、各々、駆動セルと被駆動セルとがセル間配線により接続されてなる複数のネットを有する半導体集積回路のタイミング検証に当り、相隣る前記配線間において各信号が同時に遷移するときに発生するクロストークを回避するようにしたクロストーク回避方法であって、前記ネットに関する情報を有するネットリストと、前記各駆動セルの出力信号の立上り及び立下り情報を有するタイミング情報と、前記配線同士が隣接するネット間での駆動セルの駆動能力比基準値を有する基準値情報とを入力とし前記タイミング情報に基づき、クロストークが発生するヴィクティム（クロストークが発生しているネット）及びアグレッサ（クロストークを発生させる原因となるネット）の候補ネットワークを前記ネットリストから抽出する抽出ステップと、前記抽出ステップにおいて抽出された前記候補ネットワークのヴィクティム及びアグレッサの各駆動セルの出力信号波形を計算する計算ステップと、前記計算ステップにおいて得られたヴィクティム及びアグレッサの各駆動セルの出力信号波形に基づいて該両駆動セル間の駆動能力比を計算するとともに、該駆動能力比を是正する必要があるか否かを前記基準値との比較により判定する判定ステップと、前記判定ステップにおいて前記駆動能力比の是正が必要であると判定されたときに、前記駆動能力比が前記基準値を満たすように前記ヴィクティム及び前記アグレッサの各駆動セルの駆動能力を決定する是正ステップとを備え、ヴィクティムの駆動セルの駆動能力変更だけでは最適解の得られないような場合でも、最適な駆動能力を自動的に設定してクロストークによる遅延変動を最小限に抑えられるようにするクロストーク回避方法が開示された文献がある（例えば、特許文献１参照）。
【０００７】
また、被検証レイアウトパターンを規定したレイアウトパターンデータを付与する第１の付与手段と、前記被検証レイアウトパターンに関するデザインルールを付与する第２の付与手段と、クロストークの影響を与え易いトランジスタのサイズに関する第１の基準とクロストークの影響を受け易いトランジスタのサイズに関する第２の基準とを記憶する第１の記憶手段と、前記第１，第２の付与手段及び前記第１の記憶手段に接続され、前記デザインルール及び前記第１，第２の基準を参照しつつ前記レイアウトパターンデータを処理することにより、前記被検証レイアウトパターン中のトランジスタのうち前記第１の基準を満たすトランジスタと前記第２の基準を満たすトランジスタの出力配線パターンのデータを前記レイアウトパターンデータから抽出する第１の抽出手段と、クロストークノイズの大きさに関する第３の基準を記憶する第２の記憶手段と、前記第１の抽出手段及び前記第２の記憶手段に接続され、前記出力配線パターンのデータに基づき、前記第１の基準を満たすトランジスタの出力配線と前記第２の基準を満たすトランジスタの出力配線との重なり／平行部分の配線間容量を算出し、該配線間容量に基づき、前記第２の基準を満たすトランジスタの出力信号の立ち上がり時及び立ち下がり時に生じるクロストークノイズの大きさを求め、該クロストークノイズの大きさが前記第３の基準を越えると、前記重なり／平行部分をエラー箇所として抽出する第２の抽出手段と、前記第２の抽出手段に接続され、前記エラー箇所を目視可能に表示する表示手段とを備え、自動的にクロストークの発生危険箇所の有無の検証を行うことができるクロストーク検証装置が開示された文献がある（例えば、特許文献２参照）。
【０００８】
また、半導体集積回路の出力回路において、電源供給端子と接地端子間に内部ロッジクを挿入し、かつこの内部ロジックと並列にＰチャンネルＭＯＳトランジスタおよびＮチャンネルＭＯＳトランジスタを接続し、前記内部ロジックの出力側に前記ＰチャンネルＭＯＳトランジスタおよびＮチャンネルＭＯＳトランジスタの双方のゲート電極を接続し、前記ＰチャンネルＭＯＳトランジスタの電源供給ラインに降圧用の複数のダイオードをそれぞれが順方向で且つ直列に接続し、ＣＭＯＳ  ＩＣの出力回路のハイレベル出力電圧を下げ、放射ノイズ、クロストークノイズの発生を抑制する半導体集積回路が開示された文献がある（例えば、特許文献３参照）。
【特許文献１】特開２００２−２５９４８０号公報
【特許文献２】特開平５−３４２３０５号公報
【特許文献３】特開平７−１５４２３１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、上述した第１のクロストークエラーの抑制制御は、クロストークエラーを発生しているネット、または、そのクロストークエラーを発生しているネットに隣接する隣接ネット（クロストークエラーの発生原因となっているネット）の配線混雑の度合いによっては、配線修正だけではクロストークエラーを除去・抑制しきれない場合がある。また、大幅に配線変更を行う場合には、他配線のクロストークノイズ、パス遅延に影響を与える虞があり、再度、配線を修正しなければいけない場合がある。
【００１０】
また、第２のクロストークエラーの抑制制御は、配線パターンの設計において、各ネットの配線経路がある一定線長以上隣接して直線的に配線されないように線長制御を行う場合には、配線混雑の度合いによっては、クロストークエラーを除去・抑制しきれない場合があり、必要以上に配線の折れ曲がりや迂回を発生させ配線のレイアウトを悪化させてしまう虞がある。
【００１１】
なお、上記特許文献１は、ヴィクティム（クロストークが発生しているネット）及びアグレッサ（クロストークを発生させる原因となるネット）の各駆動セルの駆動能力を是正することで、ヴィクティム側の出力信号波形の波形変動量を低減し、クロストークに起因する遅延変動によるタイミングエラーを回避するものであるが、アグレッサ（クロストークを発生させる原因となるネット）の信号レベルの制御については何ら考慮されたものではない。
【００１２】
また、上記特許文献２は、自動的にクロストークの発生危険箇所の有無の検証を行うことを主眼としたものであるため、クロストークエラーの抑制については何ら考慮されたものではない。
【００１３】
また、上記特許文献３は、出力端子の出力電圧が電源電圧より低下しているＣＭＯＳ  ＩＣがクロストークノイズを抑制するものではあるが、上記特許文献３も特許文献２と同様に、クロストークエラーの抑制については何ら考慮されたものではない。
【００１４】
本発明は上記事情に鑑みてなされたものであり、配線混雑度が高い場合でもクロストークエラーを抑制することが可能なクロストークエラー制御装置、クロストークエラー制御方法およびクロストークエラー制御プログラムを提供することを目的とするものである。
【課題を解決するための手段】
【００１５】
かかる目的を達成するために、本発明は以下の特徴を有することとする。
【００１６】
本発明にかかるクロストークエラー制御装置は、クロストークエラーを発生しているクロストークエラーネットを検出するクロストーク解析手段と、検出したクロストークエラーネットのノイズ源となるノイズ源ネットを検出するノイズ源ネット検出手段と、検出したノイズ源ネットの信号レベルを降下する降下手段と、を有し、クロストークエラーネットのクロストークエラーを抑制することを特徴とするものである。
【００１７】
また、本発明にかかるクロストークエラー制御装置において、ノイズ源ネット検出手段は、検出したノイズ源ネットの中から、最もノイズ量が高いノイズ源ネットから順に検出することを特徴とするものである。
【００１８】
また、本発明にかかるクロストークエラー制御装置は、降下手段により信号レベルを降下したノイズ源ネット周辺の再配線処理を行う配置配線手段を有することを特徴とするものである。
【００１９】
また、本発明にかかるクロストークエラー制御装置は、降下手段により信号レベルを降下したノイズ源ネットの信号レベルを元の信号レベルに戻す降下解除手段を有することを特徴とするものである。
【００２０】
また、本発明にかかるクロストークエラー制御装置は、ノイズ源ネットの信号レベルの降下により影響を受けることになるネットにおいて、パスの遅延エラーが発生するか否かを判定する遅延解析手段と、信号レベルを降下したノイズ源ネットにおいてクロストークエラーが発生するか否かを判定する解析手段と、を有し、配置配線手段は、遅延解析手段においてパスの遅延エラーが発生していないと判定し、且つ、解析手段においてクロストークエラーが発生していないと判定した場合に、信号レベルを降下したノイズ源ネット周辺の再配線処理を行うことを特徴とするものである。
【００２１】
また、本発明にかかるクロストークエラー制御装置は、ノイズ源ネットの信号レベルの降下により影響を受けることになるネットにおいて、パスの遅延エラーが発生するか否かを判定する遅延解析手段と、信号レベルを降下したノイズ源ネットにおいてクロストークエラーが発生するか否かを判定する解析手段と、を有し、降下解除手段は、遅延解析手段においてパスの遅延エラーが発生していると判定した場合と、解析手段においてクロストークエラーが発生していると判定した場合と、の少なくとも１つの場合に、降下手段により信号レベルを降下したノイズ源ネットの信号レベルを元の信号レベルに戻すことを特徴とするものである。
【００２２】
また、本発明にかかるクロストークエラー制御装置において、降下手段は、検出したノイズ源ネットのファンクションブロックの仮変更を行い、検出したノイズ源ネットの信号レベルを降下することを特徴とするものである。
【００２３】
また、本発明にかかるクロストークエラー制御装置において、遅延解析手段は、ノイズ源ネットの信号レベルの降下により影響を受けるネットにおけるパスの遅延値が所定の遅延制限値を超えているか否かを判断し、ネットにおけるパスの遅延値が所定の遅延制限値を超えていると判断した際に、ネットにおいて、パスの遅延エラーが発生したと判定することを特徴とするものである。
【００２４】
また、本発明にかかるクロストークエラー制御装置において、クロストーク解析手段は、ネットを解析して得られたクロストーク量の値が、所定のクロストーク量制限値を超えていると判定した際に、ネットにおいてクロストークエラーが発生していると判定し、クロストークエラーを発生しているクロストークエラーネットを検出することを特徴とするものである。
【００２５】
また、本発明にかかるクロストークエラー制御装置において、解析手段は、ノイズ源ネットを解析して得られたクロストーク量の値が、所定のクロストーク量制限値を超えていないと判定した際に、ノイズ源ネットにおいてクロストークエラーが発生していないと判定することを特徴とするものである。
【００２６】
また、本発明にかかるクロストークエラー制御方法は、クロストークエラーの制御を行う情報処理装置において行うクロストークエラー制御方法であって、クロストークエラーを発生しているクロストークエラーネットを検出するクロストーク解析工程と、検出したクロストークエラーネットのノイズ源となるノイズ源ネットを検出するノイズ源ネット検出工程と、検出したノイズ源ネットの信号レベルを降下する降下工程と、を、情報処理装置が行い、クロストークエラーネットのクロストークエラーを抑制することを特徴とするものである。
【００２７】
また、本発明にかかるクロストークエラー制御方法において、ノイズ源ネット検出工程は、検出したノイズ源ネットの中から、最もノイズ量が高いノイズ源ネットから順に検出することを特徴とするものである。
【００２８】
また、本発明にかかるクロストークエラー制御方法は、降下工程により信号レベルを降下したノイズ源ネット周辺の再配線処理を行う配置配線工程を、情報処理装置が行うことを特徴とするものである。
【００２９】
また、本発明にかかるクロストークエラー制御方法は、降下工程により信号レベルを降下したノイズ源ネットの信号レベルを元の信号レベルに戻す降下解除工程を、情報処理装置が行うことを特徴とするものである。
【００３０】
また、本発明にかかるクロストークエラー制御方法は、ノイズ源ネットの信号レベルの降下により影響を受けることになるネットにおいて、パスの遅延エラーが発生するか否かを判定する遅延解析工程と、信号レベルを降下したノイズ源ネットにおいてクロストークエラーが発生するか否かを判定する解析工程と、を、情報処理装置が行い、配置配線工程は、遅延解析工程においてパスの遅延エラーが発生していないと判定し、且つ、解析工程においてクロストークエラーが発生していないと判定した場合に、信号レベルを降下したノイズ源ネット周辺の再配線処理を行うことを特徴とするものである。
【００３１】
また、本発明にかかるクロストークエラー制御方法は、ノイズ源ネットの信号レベルの降下により影響を受けることになるネットにおいて、パスの遅延エラーが発生するか否かを判定する遅延解析工程と、信号レベルを降下したノイズ源ネットにおいてクロストークエラーが発生するか否かを判定する解析工程と、を、情報処理装置が行い、降下解除工程は、遅延解析工程においてパスの遅延エラーが発生していると判定した場合と、解析工程においてクロストークエラーが発生していると判定した場合と、の少なくとも１つの場合に、降下工程により信号レベルを降下したノイズ源ネットの信号レベルを元の信号レベルに戻すことを特徴とするものである。
【００３２】
また、本発明にかかるクロストークエラー制御方法において、降下工程は、検出したノイズ源ネットのファンクションブロックの仮変更を行い、検出したノイズ源ネットの信号レベルを降下することを特徴とするものである。
【００３３】
また、本発明にかかるクロストークエラー制御方法において、遅延解析工程は、ノイズ源ネットの信号レベルの降下により影響を受けるネットにおけるパスの遅延値が所定の遅延制限値を超えているか否かを判断し、ネットにおけるパスの遅延値が所定の遅延制限値を超えていると判断した際に、ネットにおいて、パスの遅延エラーが発生したと判定することを特徴とするものである。
【００３４】
また、本発明にかかるクロストークエラー制御方法において、クロストーク解析工程は、ネットを解析して得られたクロストーク量の値が、所定のクロストーク量制限値を超えていると判定した際に、ネットにおいてクロストークエラーが発生していると判定し、クロストークエラーを発生しているクロストークエラーネットを検出することを特徴とするものである。
【００３５】
また、本発明にかかるクロストークエラー制御方法において、解析工程は、ノイズ源ネットを解析して得られたクロストーク量の値が、所定のクロストーク量制限値を超えていないと判定した際に、ノイズ源ネットにおいてクロストークエラーが発生していないと判定することを特徴とするものである。
【００３６】
また、本発明にかかるクロストークエラー制御プログラムは、クロストークエラーの制御を行う情報処理装置において実行させるクロストークエラー制御プログラムであって、クロストークエラーを発生しているクロストークエラーネットを検出するクロストーク解析処理と、検出したクロストークエラーネットのノイズ源となるノイズ源ネットを検出するノイズ源ネット検出処理と、検出したノイズ源ネットの信号レベルを降下する降下処理と、を、情報処理装置において実行させ、クロストークエラーネットのクロストークエラーを抑制することを特徴とするものである。
【００３７】
また、本発明にかかるクロストークエラー制御プログラムにおいて、ノイズ源ネット検出処理は、検出したノイズ源ネットの中から、最もノイズ量が高いノイズ源ネットから順に検出することを特徴とするものである。
【００３８】
また、本発明にかかるクロストークエラー制御プログラムは、降下処理により信号レベルを降下したノイズ源ネット周辺の再配線処理を行う配置配線処理を、情報処理装置において実行させることを特徴とするものである。
【００３９】
また、本発明にかかるクロストークエラー制御プログラムは、降下処理により信号レベルを降下したノイズ源ネットの信号レベルを元の信号レベルに戻す降下解除処理を、情報処理装置において実行させることを特徴とするものである。
【００４０】
また、本発明にかかるクロストークエラー制御プログラムは、ノイズ源ネットの信号レベルの降下により影響を受けることになるネットにおいて、パスの遅延エラーが発生するか否かを判定する遅延解析処理と、信号レベルを降下したノイズ源ネットにおいてクロストークエラーが発生するか否かを判定する解析処理と、を、情報処理装置において実行させ、配置配線処理は、遅延解析処理においてパスの遅延エラーが発生していないと判定し、且つ、解析処理においてクロストークエラーが発生していないと判定した場合に、信号レベルを降下したノイズ源ネット周辺の再配線処理を行うことを特徴とするものである。
【００４１】
また、本発明にかかるクロストークエラー制御プログラムは、ノイズ源ネットの信号レベルの降下により影響を受けることになるネットにおいて、パスの遅延エラーが発生するか否かを判定する遅延解析処理と、信号レベルを降下したノイズ源ネットにおいてクロストークエラーが発生するか否かを判定する解析処理と、を、情報処理装置において実行させ、降下解除処理は、遅延解析処理においてパスの遅延エラーが発生していると判定した場合と、解析処理においてクロストークエラーが発生していると判定した場合と、の少なくとも１つの場合に、降下処理により信号レベルを降下したノイズ源ネットの信号レベルを元の信号レベルに戻すことを特徴とするものである。
【００４２】
また、本発明にかかるクロストークエラー制御プログラムにおいて、降下処理は、検出したノイズ源ネットのファンクションブロックの仮変更を行い、検出したノイズ源ネットの信号レベルを降下することを特徴とするものである。
【００４３】
また、本発明にかかるクロストークエラー制御プログラムにおいて、遅延解析処理は、ノイズ源ネットの信号レベルの降下により影響を受けるネットにおけるパスの遅延値が所定の遅延制限値を超えているか否かを判断し、ネットにおけるパスの遅延値が所定の遅延制限値を超えていると判断した際に、ネットにおいて、パスの遅延エラーが発生したと判定することを特徴とするものである。
【００４４】
また、本発明にかかるクロストークエラー制御プログラムにおいて、クロストーク解析処理は、ネットを解析して得られたクロストーク量の値が、所定のクロストーク量制限値を超えていると判定した際に、ネットにおいてクロストークエラーが発生していると判定し、クロストークエラーを発生しているクロストークエラーネットを検出することを特徴とするものである。
【００４５】
また、本発明にかかるクロストークエラー制御プログラムにおいて、解析処理は、ノイズ源ネットを解析して得られたクロストーク量の値が、所定のクロストーク量制限値を超えていないと判定した際に、ノイズ源ネットにおいてクロストークエラーが発生していないと判定することを特徴とするものである。
【発明の効果】
【００４６】
本発明によれば、クロストークエラーを発生しているクロストークエラーネットを検出し、その検出したクロストークエラーネットのノイズ源となるノイズ源ネットを検出し、その検出したノイズ源ネットの信号レベルを降下することで、クロストークエラーネットのクロストークエラーを抑制することを特徴とするものである。これにより、配線混雑度が高い場合でもクロストークエラーを抑制することが可能となる。
【発明を実施するための最良の形態】
【００４７】
まず、図１を参照しながら、本実施形態におけるクロストークエラー制御装置について説明する。
【００４８】
本実施形態におけるクロストークエラー制御装置は、少なくとも、クロストークエラーを発生しているクロストークエラーネットを検出するクロストーク解析手段（１０５）と、そのクロストーク解析手段（１０５）において検出したクロストークエラーネットのノイズ源となるノイズ源ネットを検出するノイズ源ネット検出手段（１０６）と、そのノイズ源ネット検出手段（１０５）において検出したノイズ源ネットの信号レベルを降下するファンクションブロック仮変更手段（降下手段）（１０７）と、を有し、クロストークエラーネットのクロストークエラーを抑制することを特徴とするものである。これにより、配線混雑度が高い場合でもクロストークエラーを抑制することが可能となる。以下、添付図面を参照しながら、本実施形態におけるクロストークエラー制御装置について説明する。
【００４９】
まず、図１を参照しながら、本実施形態におけるクロストークエラー制御装置について説明する。なお、図１は、本実施形態におけるクロストークエラー制御装置の構成を示すブロック図である。
【００５０】
本実施形態におけるクロストークエラー制御装置は、制御手段（１０１）と、論理／ライブラリ／配置配線結果入力手段（１０２）と、クロストーク量制限値入力手段（１０３）と、遅延制限値入力手段（１０４）と、クロストーク解析手段（１０５）と、ノイズ源ネット検出手段（１０６）と、ファンクションブロック仮変更手段（１０７）と、遅延解析手段（１０８）と、ファンクションブロック変更手段（１０９）と、インクリメンタル配置配線手段（１１０）と、配置配線結果出力手段（１１１）と、を有し、論理接続情報（１１２），物理情報（１１３），クロストーク解析用ライブラリ情報（１１４），遅延解析用ライブラリ情報（１１５），クロストーク量制限値情報（１１６），遅延制限値情報（１１７），ファンクションブロック情報（１１８），配置配線結果情報（１１９），を取り扱うことになる。
【００５１】
なお、論理接続情報（１１２）は、ブロック間の論理接続関係を示す情報であり、例えば、図２に示すゲート（２０１）と、ゲート（２０２）と、が接続されることを示す論理接続関係を示す情報である。物理情報（１１５）は、各ゲートの配置位置やゲート接続間の配線位置等を示す情報であり、例えば、図３に示すゲートの配置位置やゲート接続間のネットの配線位置等を示す情報である。クロストーク解析用ライブラリ情報（１１４）は、クロストーク解析処理の際に用いられる情報である。遅延解析用ライブラリ情報（１１５）は、遅延解析処理の際に用いられる情報である。クロストーク量制限値情報（１１６）は、クロストークエラーが発生したネットを検出する際に用いられる情報であり、論理回路の各ネットのクロストーク量制限値を示す情報である。遅延制限値情報（１１７）は、遅延エラーが発生したネットを検出する際に用いられる情報であり、論理回路の各パスの遅延制限値を示す情報である。ファンクションブロック情報（１１８）は、ファンクションブロックの変更を行う際に用いられる情報である。配置配線結果情報（１１９）は、例えば、図３に示すようなレイアウトされた配線の配置結果を示す情報である。
【００５２】
制御手段（１０１）は、論理／ライブラリ／配置配線結果入力手段（１０２）と、クロストーク量制限値入力手段（１０３）と、遅延制限値入力手段（１０４）と、クロストーク解析手段（１０５）と、ノイズ源ネット検出手段（１０６）と、ファンクションブロック仮変更手段（１０７）と、遅延解析手段（１０８）と、ファンクションブロック変更手段（１０９）と、インクリメンタル配置配線手段（１１０）と、配置配線結果出力手段（１１１）と、の各手段の統括的な制御を行うものである。
【００５３】
論理／ライブラリ／配置配線結果入力手段（１０２）は、論理接続情報（１１２）と、物理情報（１１３）と、クロストーク解析用ライブラリ情報（１１４）と、遅延解析用ライブラリ情報（１１５）と、ファンクションブロック情報（１１８）と、配置配置結果情報（１１９）と、を入力するものである。
【００５４】
クロストーク量制限値入力手段（１０３）は、各ネットのクロストーク量制限値を示すクロストーク量制限値情報（１１６）を入力するものである。
【００５５】
遅延制限値入力手段（１０４）は、各パスの遅延制限値を示す遅延制限値情報（１１７）を入力するものである。
【００５６】
クロストーク解析手段（１０５）は、論理／ライブラリ／配置配線結果入力手段（１０２）により入力された配置配線結果情報（１１９）に存在する全ネット、あるいは、特定のネットに対してクロストーク解析用ライブラリ情報（１１４）を用いてクロストーク量を算出し、該算出したクロストーク量と、クロストーク量制限値入力手段（１０３）により入力されたクロストーク量制限値情報（１１６）と、を比較し、クロストークエラーを発生しているネットを検出するものである。
【００５７】
ノイズ源ネット検出手段（１０６）は、クロストーク解析手段（１０５）により解析されたクロストークエラーを発生しているネットに対するノイズ源となっているノイズ源ネットを検出するものである。
【００５８】
ファンクションブロック仮変更手段（１０７）は、ノイズ源ネット検出手段（１０６）により検出されたノイズ源ネットに対してクロストークエラーの抑制に適したレベルシフト付きファンクションブロックを、論理／ライブラリ／配置配線結果入力手段（１０２）により入力されたファンクションブロック情報の中から選択し、該選択したファンクションブロックを、ノイズ源ネットを構成するファンクションブロックとして仮に置き換えるものである。
【００５９】
遅延解析手段（１０８）は、論理／ライブラリ／配置配線結果入力手段（１０２）により入力された遅延解析用ライブラリ情報（１１５）を用いて、論理／ライブラリ／配置配線結果入力手段（１０２）により入力された配置配線結果情報（１１９）に存在する全パス、あるいは、特定のネットを通るパスにおけるパスの遅延値を算出し、該算出したパス遅延値と、遅延値入力手段（１０３）により入力された遅延制限値情報（１１７）と、を比較し、遅延エラーを発生しているパスを検出するものである。
【００６０】
ファンクションブロック変更手段（１０９）は、ファンクションブロック仮変更手段（１０７）により仮に置き換えられたファンクションブロックに変更するか、または、その仮に置き換えられたファンクションブロックを解除するか決定するものである。例えば、ファンクションブロック変更手段（１０９）は、ファンクションブロック仮変更手段（１０７）によりファンクションブロックが仮に置き換えられたノイズ源ネット、および、その仮に置き換えられたノイズ源ネットがクロストークノイズの影響を与えることになる周囲のネットを含むパスや個々のネットに対して、インクリメンタルな遅延解析処理を行った結果、新たな遅延エラーが検出されるか、もしくは、クロストーク解析手段（１０５）によりインクリメンタルなクロストーク解析処理を行った結果、新たなクロストークエラーが検出されたネットがある場合には、ファンクションブロック仮変更手段（１０７）により仮に置き換えられたファンクションブロックを解除することになる。また、ファンクションブロック変更手段（１０９）は、上記遅延解析処理を行った結果、遅延エラーが検出されず、尚且つ、クロストーク解析処理を行った結果、クロストークエラーが検出されるネットが無くなるか、クロストーク量が削減された場合に、ファンクションブロック仮変更手段（１０７）により仮に置き換えられたファンクションブロックに正式に変更する（仮変更から本変更に確定する）ことになる。
【００６１】
インクリメンタル配置配線手段（１１０）は、ファンクションブロック変更手段（１０９）により正式に変更になったファンクションブロックに繋がるネットの配線、および、そのファンクションブロックの変更により影響を受ける他のファンクションブロックの変更やネットの配線について再配線処理を行うものである。
【００６２】
配置配線結果出力手段（１１１）は、ファンクションブロック変更手段（１０９）、および、インクリメンタル配置配線手段（１１０）による再配線処理の結果を反映させて論理／ライブラリ／配置配線結果入力手段（１０２）により入力された配置配線結果情報（１１９）を更新し、その更新した配置配線結果情報（１１９）を外部の出力機器に出力するものである。
【００６３】
次に、図２〜図６を参照しながら、本実施形態のクロストークエラー制御装置における制御動作について説明する。なお、図６は、本実施形態のクロストークエラー制御装置の制御動作を示すフロチャートである。また、図２〜図５は、本実施形態のクロストークエラー制御装置における制御動作を説明するためのレイアウト図である。
【００６４】
本実施形態のクロストークエラー制御装置は、制御手段（１０１）の制御の下で図６に示す制御動作（論理／ライブラリ／配置配線結果入力手段（１０２）と、クロストーク量制限値入力手段（１０３）と、遅延制限値入力手段（１０４）と、クロストーク解析手段（１０５）と、ノイズ源ネット検出手段（１０６）と、ファンクションブロック仮変更手段（１０７）と、遅延解析手段（１０８）と、ファンクションブロック変更手段（１０９）と、インクリメンタル配置配線手段（１１０）と、配置配線結果出力手段（１１１）と、の処理に基づく動作）を実行することになる。
【００６５】
これにより、本実施形態におけるクロストークエラー制御装置は、図６に示すように、論理接続情報（１１２）、物理情報（１１３）、クロストーク解析用ライブラリ情報（１１４）、遅延解析用ライブラリ情報（１１５）、ファンクションブロック情報（１１８）、配置配線結果情報（１１９）等を入力する情報入力工程（Ｓ６０１）と、クロストーク量制限値情報を入力するクロストーク量制限値情報入力工程（Ｓ６０２）と、遅延制限値情報を入力する遅延制限値情報入力工程（Ｓ６０３）と、クロストークエラーを発生しているネットを検出するクロストークエラーネット検出工程（Ｓ６０４）と、クロストークエラーを発生しているネットのノイズ源となるノイズ源ネットを検出するノイズ源ネット検出工程（Ｓ６０５）と、ノイズ源ネットのファンクションブロックの仮変更を行うファンクションブロック仮変更工程（Ｓ６０６）と、ノイズ源ネットのファンクションブロックの変更に伴い影響を受けるネットにおけるパスの遅延エラーを検出するノイズ源ネット遅延エラー検出工程（Ｓ６０７）と、ノイズ源ネット及びノイズ源ネットのファンクションブロックの変更に伴い影響を受けるネットにおけるクロストークエラーの発生を検出するノイズ源ネットクロストークエラー検出工程（Ｓ６０８）と、ノイズ源ネット遅延エラー検出工程においてパスの遅延エラーを検出したか否かを判定する遅延エラー検出判定工程（Ｓ６０９）、ノイズ源ネットクロストークエラー検出工程においてクロストークエラーの発生を検出したか否かを判定するクロストークエラー検出判定工程（Ｓ６１０）と、ノイズ源ネットのファンクションブロックの変更を行うファンクションブロック変更工程（Ｓ６１１）と、ファンクションブロックの変更を行ったノイズ源ネット周辺の配線の再配置を行う変更ブロック周辺ネット再配線工程（Ｓ６１２）と、クロストークエラーの抑制が完了したか否かを判定するクロストークエラー抑制判定工程（Ｓ６１３）と、ノイズ源ネット周辺の配線の再配置を行った配置配線結果情報の更新及び出力を行う配置配線結果情報更新・出力工程（Ｓ６１４）と、を行うことになる。以下、本実施形態におけるクロストークエラー制御装置の制御動作について詳細に説明する。なお、以下に示すクロストークエラー制御装置における制御動作は、図２に示す、ゲート（２０１）のブロックと、ゲート（２０２）のブロックと、ゲート（２０１）〜（２０２）のブロックに接続しているネット（２０３）〜（２０５）と、からなる論理接続関係の一部分に関するクロストークエラーの抑制制御を例にとり説明する。なお、図２に示す論理接続関係は、一部分のみの配線パターンの配置を示しているが、実際の配線パターンの配置処理は、全ての論理接続関係について行うことになる。
【００６６】
まず、論理／ライブラリ／配置配線結果入力手段（１０２）は、ゲート間の論理接続関係を示す論理接続情報（１１２）と、ゲートの配置情報やゲート間接続の配線情報等を示す物理情報（１１３）と、クロストーク解析処理に用いられるクロストーク解析用ライブラリ情報（１１４）と、遅延解析処理に用いられる遅延解析用ライブラリ情報（１１５）と、ファンクションブロックの変更に用いられるファンクションブロック情報（１１８）と、ゲートの配置配線結果を示す配置配線結果情報（例えば、図３に示す配置配線結果を含む情報）（１１９）と、を入力することになる（ステップ６０１）。なお、上記ステップＳ６０１において入力された各情報は、図１に示す各手段（１０１〜１１１）により参照／更新することになる。
【００６７】
次に、制御手段（１０１）は、論理／ライブラリ／配置配線結果入力手段（１０２）により入力された論理接続情報（１１２）と、物理情報（１１３）と、を基に、図２に示すゲート（２０１）のブロックと、ゲート（２０２）のブロックと、に関する配線パターンの配置処理を行い、図３に示すような配線パターンの配置結果を得ることになる。
【００６８】
即ち、制御手段（１０１）は、論理接続情報（１１２）を基に、図３に示すように、ゲート（２０１）と、ゲート（２０２）と、が接続されると判断し、ゲート（３０５）と、ゲート（３０６）と、が接続されると判断し、ゲート（３０７）と、ゲート（３０８）と、が接続されると判断することになる。
【００６９】
また、制御手段（１０１）は、物理接続情報（１１３）を基に、図３に示すように、ネット（２０４、３０２、３０３）がハードマクロ（３０９、３１０）の間に配置されると判断し、ネット（３０１）が、ゲート（２０１）とゲート（２０２）との間を接続し、ネット（３０２）が、ゲート（３０５）とゲート（３０６）との間を接続し、ネット（３０３）が、ゲート（３０７）とゲート（３０８）との間を接続し、ネット（３０４）がゲート（３０５）とゲート（２０１）との間に配置されると判断することになる。
【００７０】
次に、クロストーク量制限値入力手段（１０３）は、各ネットのクロストーク量の制限値を示すクロストーク量制限値情報（１１６）を入力する（ステップ６０２）。
【００７１】
また、遅延制限値入力手段（１０４）は、各ネットのパス遅延制限値を示す遅延制限値情報（１１７）を入力する（ステップ６０３）。
【００７２】
次に、クロストーク解析手段（１０５）は、論理／ライブラリ／配置配線結果入力手段（１０２）により入力されたクロストーク解析用ライブラリ情報（１１４）を用いて全てのネットについてクロストーク解析処理を行い、クロストークエラーを発生しているネットを検出することになる（ステップ６０４）。
【００７３】
例えば、クロストーク解析手段（１０５）は、クロストーク解析用ライブラリ情報（１１４）を基に、図３に示すネットについてクロストーク解析処理を行い、その解析処理を行ったネットのクロストーク量の値が、クロストーク量制限値入力手段（１０３）により入力されたクロストーク量制限値情報（１１６）に示されるクロストーク量制限値を超えているか否かを判断することになる。そして、クロストーク解析手段（１０５）は、クロストーク解析処理を行ったネットのクロストーク量の値がクロストーク量制限値を超えていると判断した場合は、そのクロストーク量制限値を超えているネットにおいてクロストークエラーが発生していると判断することになり、クロストーク解析処理を行ったネットのクロストーク量の値がクロストーク量制限値を超えていないと判断した場合は、そのクロストーク量制限値を超えていないネットにおいてクロストークエラーが発生していないと判断することになる。これにより、クロストーク解析手段（１０５）は、クロストークエラーを発生しているネットを検出することになる。
【００７４】
なお、任意のネット（Ｎ）のクロストーク量（ＶＮ）は、以下の式（１）に示すように、任意のネット（Ｎ）と、その任意のネット（Ｎ）に隣接するネット（ｊ：ｊは複数存在するものとする）と、の間のクロストークノイズ量（Ｚｊ）の総和で表される（但し、総和記号のΣは、全てのｊについての総和を示す）。
【００７５】
ＶＮ＝ΣＺｊ・・・式（１）
【００７６】
ここで、任意のネット（Ｎ）と、その任意のネット（Ｎ）に隣接するネット（ｊ）と、の間のクロストーク量（Ｚｊ）は、以下の式（２）に示すように、任意のネット（Ｎ）と、その任意のネット（Ｎ）に隣接するネット（ｊ）と、の間の配線間容量（Ｃｊ）に対して単調増加し、尚且つ、その隣接するネット（ｊ）の電圧レベル（Ｖｊ）に対して単調増加する関数ｆ（ｘ）となる。
【００７７】
Ｚｊ＝ｆ（Ｖｊ，Ｃｊ）・・・式（２）
【００７８】
さらに、任意のネット（Ｎ）と、その任意のネット（Ｎ）に隣接するネット（ｊ）と、の間の配線間容量（Ｃｊ）は、以下の式（３）に示すように、任意のネット（Ｎ）と、その任意のネット（Ｎ）に隣接するネット（ｊ）と、の隣接間距離（Ｗｊ）に対して単調減少する関数ｇ（ｘ）となる。
【００７９】
Ｃｊ＝ｇ（Ｗｊ）・・・式（３）
【００８０】
従って、ある任意のネット（Ｎ）のクロストーク量を減少させるためには、任意のネット（Ｎ）と、その任意のネット（Ｎ）に隣接するネット（ｊ）と、の隣接間距離（Ｗｊ）を長くすること、または、その任意のネット（Ｎ）に隣接するネット（ｊ）の電圧レベル（Ｖｊ）を低くすることが、必要となる。
【００８１】
なお、図３に示すレイアウトの場合において、ネット（３０１）のクロストークノイズ量を求める場合には、はハードマクロ（３０９）と、ハードマクロ（３１０）と、の間を通すことになるため、配線混雑度が高く、ネット（３０１）のクロストークエラーの発生源となる隣接配線（３０２、３０３）との隣接間距離（Ｗｊ）を長くすることは困難となる。このため、本実施形態におけるクロストークエラー制御装置は、ある任意のネット（Ｎ）のクロストーク量を減少させるために、その任意のネット（Ｎ）に隣接するネット（ｊ）の電圧レベル（Ｖｊ）を低減させることとする。
【００８２】
なお、以下の説明を簡単にするために、式（２）の関数ｆ（ｘ）、および、式（３）の関数ｇ（ｘ）を、以下に示す単純な式で近似することにする。
【００８３】
ｆ（Ｖｊ，Ｃｊ）＝β・Ｖｊ・Ｃｊ（但し、βは、正の係数）
【００８４】
ｇ（Ｗｊ）＝γ／Ｗｊ（但し、γは、正の係数）
【００８５】
すなわち、式（２）は、Ｚｊ＝β・Ｖｊ・Ｃｊ・・・式（４）となり、式（３）は、Ｃｊ＝γ／Ｗｊ・・・式（５）となる。
【００８６】
従って、式（４）より、Ｚｊは、ＶｊとＣｊとに比例することになり、式（５）より、Ｃｊは、Ｗｊに反比例することになる。
【００８７】
これにより、クロストーク量を示すＶＮは、式（１）・・・ＶＮ＝ΣＺｊに、式（４）、式（５）を代入し、以下の式（６）となる。
【００８８】
ＶＮ＝ΣＺｊ＝Σ（β・Ｖｊ・Ｃｊ）＝Σ（β・Ｖｊ・γ／Ｗｊ）＝Σ（β・γ・Ｖｊ／Ｗｊ）＝α・Σ（Ｖｊ／Ｗｊ）・・・式（６）（但し、αはα＝β・γの関係を有する正の係数）
【００８９】
なお、ネット（３０１）が隣接配線（３０２）から被るクロストーク量（Ｖ３０２）を３０αＶ／Ｗとし、ネット（３０１）が隣接配線（３０３）から被るクロストーク量（Ｖ３０３）を２５αＶ／Ｗとすると、ネット（３０１）が被るクロストークノイズ量（Ｖ３０１）は、各隣接配線（３０２）と、（３０３）と、のクロストーク量の総和となり、以下のようになる（但し、Ｖ，Ｗは、電圧レベル（Ｖｊ）と隣接間距離（Ｗｊ）の単位電圧、単位長とする）。
【００９０】
Ｖ３０１＝Ｖ３０２＋Ｖ３０３＝３０αＶ／Ｗ＋２５αＶ／Ｗ＝５５αＶ／Ｗ
【００９１】
ここで、クロストーク量制限値入力手段（１０３）により入力されるクロストーク量制限値情報（１１６）に示されるネット（３０１）のクロストーク量制限値が、５０αＶ/Ｗと仮定すると、ネット（３０１）が被るクロストークノイズ量（Ｖ３０１＝５５αＶ／Ｗ）は、クロストーク量制限値入力手段（１０３）により入力されるクロストーク量制限値情報（１１６）に示されるネット（３０１）のクロストーク量制限値（５０αＶ／Ｗ）より大きくなるため（５５αＶ／Ｗ＞５０αＶ/Ｗ）、クロストーク解析手段（１０５）は、ネット（３０１）においてクロストークエラーが発生していると判断することになる。
【００９２】
このため、クロストーク解析手段（１０５）は、図３に示すレイアウトの場合には、クロストークエラーを発生しているネットとしてネット（３０１）を検出することになる。
【００９３】
次に、ノイズ源ネット検出手段（１０６）は、クロストーク解析手段（１０５）により検出された「クロストークエラーを発生しているネット（３０１）」のノイズ源となっているノイズ源ネット（クロストークエラーの発生源となるネット）のうち、クロストーク量の値が最も高いノイズ源ネットを検出することになる（ステップ６０５）。
【００９４】
例えば、ノイズ源ネット検出手段（１０６）は、図３に示すレイアウトの場合には、クロストーク量の値が３０αＶ／Ｗであるネット（３０２）と、クロストーク量の値が２５αＶ/Ｗであるネット（３０３）と、を、「クロストークエラーを発生しているネット（３０１）」のノイズ源ネットとして検出することになり、クロストーク量が３０αＶ／Ｗ＞２５αＶ／Ｗであるため、ノイズ源ネット検出手段（１０６）は、クロストーク量の値が多いネット（３０２）を、「クロストークエラーを発生しているネット（３０１）のノイズ源となっているノイズ源ネットのうち、クロストーク量の値が最も高いネット」として検出することになる。
【００９５】
次に、ファンクションブロック仮変更手段（１０７）は、ノイズ源ネット検出手段（１０６）により検出された「クロストークエラーを発生しているネット（３０１）のノイズ源ネットのうち、クロストーク量の最も高いネット（３０２）」のドライバとレシーバとに対し、ファンクションブロック情報（１１８）に含まれるファンクションブロック種類（ファンクションブロック種類とは、ファンクションブロックの機能名を示す）を基に、そのファンクションブロック種類の中から電圧レベルを最も降下させるファンクションブロックと、電圧レベルを降下させた後に元の電圧レベルに戻すためのファンクションブロックと、をそれぞれ選択し、該選択した電圧レベルを最も降下させるファンクションブロックを、クロストーク量の最も高いネット（３０２）のドライバとレシーバとのファンクションブロックとして仮変更することになる（ステップ６０６）。なお、ファンクションブロックの一種類として、終端抵抗をドライバに直列挿入することでも電圧レベルを降下させることは可能である。
【００９６】
例えば、ファンクションブロック仮変更手段（１０７）は、図３に示すレイアウトの場合には、クロストークエラーを発生しているネット（３０１）のノイズ源ネットのうち、クロストーク量の最も高いネット（３０２）のドライバとなるゲート（３０５）とレシーバとなるゲート（３０６）と、を、ファンクションブロック情報（１１８）に含まれるファンクション種類の中から選択したファンクションブロックに仮変更し、図４に示すように、ネット（３０２）のドライバとなるゲート（３０５）を２０％だけレベルシフトさせるレベルシフト付きファンクションブロックであるドライバとなるゲート（４０１）と、ネット（３０２）のレシーバとなるゲート（３０６）を２０％だけレベルシフトさせるレベルシフト付きファンクションブロックであるレシーバとなるゲート（４０２）と、に仮変更することになる。
【００９７】
次に、遅延解析手段（１０８）は、「クロストークエラーを発生しているネット（３０１）のノイズ源ネットのうち、クロストーク量の最も高いネット（３０２）」を、ファンクションブロック仮変更手段（１０７）により仮変更を行ったことに伴い影響を受けることになる全てのネットを通るパスについて、遅延解析用ライブラリ情報（１１５）を基に、インクリメンタルに遅延解析処理を行い、ノイズ源ネット（３０２）の仮変更に伴い影響を受けることになる全てのネットを通るパスの遅延値を算出し、該算出したパスの遅延値が、遅延制限値入力手段（１０３）により入力された遅延制限値情報（１１７）に示される遅延制限値を超えているか否かを判断し、その遅延解析処理を行い算出したパスの遅延値が、遅延制限値を超えていると判断した場合には、遅延解析処理を行ったネットにおいて遅延エラーが発生していると判断し、その遅延解析処理を行い算出したパスの遅延値が、遅延制限値を超えていないと判断した場合には、遅延解析処理を行ったネットにおいて遅延エラーが発生していないと判断し、遅延解析手段（１０８）は、ノイズ源ネット（３０２）をファンクションブロック仮変更手段（１０７）により仮変更したことに伴い影響を受けることになる全てのネットの中から遅延エラーを発生しているネットを検出することになる（ステップ６０７）。
【００９８】
次に、クロストーク解析手段（１０５）は、ファンクションブロック仮変更手段（１０７）により仮変更を行ったノイズ源ネット（３０２）、および、ノイズ源ネット（３０２）の仮変更に伴い影響を受けることになる全てのネットにおいてクロストークエラーの検出処理を行うことになる（ステップ６０８）。
【００９９】
まず、クロストーク解析手段（１０５）は、ファンクションブロック仮変更手段（１０７）により仮変更を行ったノイズ源ネット（３０２）、および、ノイズ源ネット（３０２）の仮変更に伴い影響を受けることになる全てのネットに対し、クロストーク解析用ライブラリ情報（１１４）を基に、インクリメンタルにクロストーク解析処理を行い、該解析処理を行ったクロストーク量の値が、クロストーク量制限値入力手段（１０３）により入力されたクロストーク量制限値情報（１１４）により示されるクロストーク量制限値を超えているか否かを判断し、該解析処理を行ったクロストーク量の値が、クロストーク量制限値を超えていると判断した場合には、クロストークエラーが発生したと判断し、該解析処理を行ったクロストーク量の値が、クロストーク量制限値を超えていないと判断した場合には、クロストークエラーが発生しないと判断し、仮変更を行ったノイズ源ネット（３０２）、および、ノイズ源ネット（３０２）の仮変更に伴い影響を受けることになる全てのネットに対し、クロストークエラーの検出処理を行うことになる。
【０１００】
次に、ファンクションブロック変更手段（１０９）は、ステップＳ６０７において、遅延解析手段（１０８）が、ノイズ源ネット（３０２）のファンクションブロック変更に伴い影響を受けることになる全てのネットの中から遅延エラーを発生しているネットを検出したと判断した場合（ステップＳ６０９／Ｙｅｓ）、または、ステップＳ６０８において、クロストーク解析手段（１０５）が、仮変更を行ったノイズ源ネット（３０２）、および、ノイズ源ネット（３０２）の仮変更に伴い影響を受けることになるネットの中からクロストークエラーを発生しているネットを検出したと判断した場合（ステップＳ６１０／Ｙｅｓ）は、ファンクションブロック変更手段（１０９）は、ノイズ源ネット（３０２）に対するファンクションブロックの仮変更を解除することになる。
【０１０１】
そして、ファンクションブロック変更手段（１０９）は、他のファンクションブロック種類の候補があるか否かを判断し（ステップＳ６１５）、他のファンクションブロック種類の候補があると判断した場合は（ステップＳ６１５／Ｙｅｓ）、ファンクションブロック仮変更手段（１０７）が、上記仮変更の解除を行ったファンクションブロック種類を除いた他のファンクションブロック種類の中から、再度、別のファンクションブロック種類を選択し、該選択したファンクションブロック種類を基に、ノイズ源ネット（３０２）に対するファンクションブロックの仮変更を行い（ステップＳ６０６）、上述したステップＳ６０７〜ステップＳ６１０までの処理を再度行うことになる。
【０１０２】
また、ファンクションブロック変更手段（１０９）は、他のファンクションブロック種類の候補が無いと判断した場合には（ステップＳ６１５／Ｎｏ）、クロストークエラーを発生しているネット（３０１）のノイズ源ネットのうち、クロストーク量の最も高いネット（３０２）」以外のノイズ源ネットが存在するか否かを判断し（ステップＳ６１６）、ノイズ源ネット（３０２）以外のノイズ源ネットが存在すると判断した場合には（ステップＳ６１６／Ｙｅｓ）、ノイズ源ネット検出手段（１０６）は、ノイズ源ネット（３０２）以外で最もクロストーク量の高い第２のノイズ源ネットを選択し（ステップＳ６０５）、該選択した第２のノイズ源ネットを基に、上述したステップＳ６０６〜ステップＳ６１０までの処理を再度行うことになる。
【０１０３】
また、ファンクションブロック変更手段（１０９）は、ステップＳ６０７において、遅延解析手段（１０８）が、ノイズ源ネット（３０２）のファンクションブロック変更に伴い影響を受けることになる全てのネットの中から遅延エラーを発生しているネットを検出せず（ステップＳ６０９／Ｎｏ）、尚且つ、ステップＳ６０８において、クロストーク解析手段（１０５）が、仮変更を行ったノイズ源ネット（３０２）、および、ノイズ源ネット（３０２）の仮変更に伴い影響を受けることになるネットの中からクロストークエラーを発生しているネットを検出しなかったと判断した場合は（ステップＳ６１０／Ｎｏ）、ファンクションブロック変更手段（１０９）は、ファンクションブロック仮変更手段（１０７）により仮変更したファンクションブロックを確定変更することになる（ステップ６１１）。
【０１０４】
例えば、ファンクションブロック変更手段（１０９）は、図４に示すレイアウトにおいて、クロストークエラーを発生しているネット（３０１）のノイズ源ネットのうち、クロストーク量の最も高いノイズ源ネット（３０２）のドライバとなるゲート（３０５）と、レシーバとなるゲート（３０６）と、を、ファンクションブロック仮変更手段（１０７）により仮変更を行ったファンクションブロックであるドライバとなるゲート（４０１）とレシーバとなるゲート（４０２）とに確定変更することになる。
【０１０５】
次に、インクリメンタル配線手段（１１０）は、ファンクションブロック変更手段（１０９）によるファンクションブロックの確定変更により影響を受けることになる周辺ネットの再配線処理を行い（ステップＳ６１２）、クロストークエラーが抑制された配線結果を得ることになる。
【０１０６】
例えば、インクリメンタル配線手段（１１０）は、クロストークエラーを発生しているネット（３０１）のノイズ源ネットのうち、クロストーク量の最も高いノイズ源ネット（３０２）をネット（５０１）に修正し、クロストーク量の最も高いネット（３０２）の周辺ネット（３０４）をネット（５０２）に修正することになる。
【０１０７】
このように、インクリメンタル配線手段（１１０）は、初期のレイアウト結果に対するインクリメンタルな配線処理（実際の配置配線結果を基にファンクションブロックの変更と付随するネットの配線処理）を行うことになる。
【０１０８】
次に、クロストークエラーを発生しているネット（３０１）に対するクロストークエラーの抑制が完了したか否かを判定し（ステップＳ６１３）、クロストークエラーを発生しているネット（３０１）に対するクロストークエラーの抑制が完了していないと判定した場合は（ステップＳ６１３／Ｎｏ）、クロストークエラーを発生しているネット（３０１）のノイズ源ネット（３０２）のうち、他のノイズ源ネットが存在するか否かを判断し（ステップＳ６１６）、ノイズ源ネット（３０２）以外のノイズ源ネットが存在すると判断した場合には（ステップＳ６１６／Ｙｅｓ）、ノイズ源ネット検出手段（１０６）は、ノイズ源ネット（３０２）以外で最もクロストーク量の高い第２のノイズ源ネットを選択し（ステップＳ６０５）、該選択した第２のノイズ源ネットを基に、上述したステップＳ６０６〜ステップＳ６１２までの処理を再度行うことになる。
【０１０９】
これにより、ノイズ源ネット（３０２）のファンクションブロックの変更後も、「クロストークエラーを発生しているネット（３０１）」にてクロストークエラーが検出され、クロストークエラーの抑制が完了していないと判定した場合は、クロストークエラーを発生しているネット（３０１）のノイズ源ネットのうち、クロストーク量の最も高いネット（３０２）」以外で最もクロストーク量の高い第２のノイズ源ネット（３０３）を選択し、該選択した第２のノイズ源ネット（３０３）を基に、上記ステップＳ６１０〜ステップＳ６１２までの処理を再度試行することになる。
【０１１０】
以上の処理により、例えば、図５に示すファンクションブロック変更結果である、ネット（３０２）のドライバとなるゲート（３０５）を２０％だけレベルシフトさせるレベルシフト付きファンクションブロックであるドライバとなるゲート（４０１）と、ネット（３０２）のレシーバとなるゲート（３０６）を２０％だけレベルシフトさせるレベルシフト付きファンクションブロックであるレシーバとなるゲート（４０２）と、を用いてノイズ源ネット（３０２）のファンクションブロック変更後のネット（５０１）のクロストーク量（Ｖ５０１）と、ネット（３０１）のクロストーク量（Ｖ３０１）と、を求め直すと以下のようになる。
【０１１１】
Ｖ５０１＝３０・（１−０．２）・Ｖ／Ｗ＝２４・Ｖ／Ｗ
【０１１２】
Ｖ３０１＝Ｖ５０１＋Ｖ３０３＝２４αＶ／Ｗ＋２５αＶ／Ｗ＝４９αＶ／Ｗ
【０１１３】
このように、ノイズ源ネット（３０２）のファンクションブロック変更後のネット（５０１）のクロストーク量（Ｖ５０１）は、ノイズ源ネット（３０２）のクロストーク量（Ｖ３０２）よりも低減された結果、ネット（３０１）のクロストーク量（Ｖ３０１）がクロストーク量制限値５０αＶ／Ｗ未満となり、クロストークエラーが抑制されることになる。また、ノイズ源ネット（３０２）のファンクションブロック変更後のネット（５０１）のクロストーク量（Ｖ５０１）によっても、ネット（３０１）のクロストークエラーが抑制されなかった場合には、ネット（３０３）についてもネット（３０２）と同様な処理を行い、ファンクションブロックの仮変更を行い、ネット（３０３）のクロストーク量（Ｖ３０３）を低減し、ネット（３０１）のクロストーク量（Ｖ３０１）を更に抑制し、クロストーク量制限値未満となるように制御することになる。
【０１１４】
最後に、クロストークエラーを発生しているネット（３０１）に対するクロストークエラーの抑制が完了したと判定した場合は（ステップＳ６１３／Ｙｅｓ）、配置配線結果出力手段（１１１）は、ファンクションブロック変更手段（１０９）によるファンクションブロックの確定変更による再配線処理結果を反映させて（ファンクションブロックの確定変更による再配線処理結果を得るように）、論理／ライブラリ／配置配線結果入力手段（１０２）により入力された配置配線結果情報（１１９）を更新し、その更新した配置配線結果情報（１１９）を外部の出力機器に出力することになる（ステップ６１１）。
【０１１５】
このように、本実施形態におけるクロストークエラー制御装置は、クロストーク解析手段（１０５）がクロストークエラーを発生しているネットを検出し（ステップＳ６０４）、ノイズ源ネット検出手段（１０６）が、クロストーク解析手段（１０５）により検出したクロストークエラーを発生しているネットのノイズ源となるノイズ源ネットを検出し、該検出したノイズ源ネットのうち、最もノイズ量が高いノイズ源ネットを検出し（ステップＳ６０５）、ファンクションブロック仮変更手段（１０７）が、ノイズ源ネット検出手段（１０６）により検出されたノイズ源ネットのファンクションブロックの仮変更を行い、ノイズ源ネットの信号レベルを降下し（ステップＳ６０６）、遅延解析手段（１０８）が、仮変更を行ったノイズ源ネットの信号レベルを降下したことで影響を受けることになるネットを通る全てのパスで遅延エラーが発生しないことを確認し（ステップＳ６０９）、クロストーク解析手段（１０５）が、仮変更を行ったノイズ源ネットにおいてクロストークエラーが発生しないことを確認し（ステップＳ６１０）、ファンクションブロック変更手段（１０９）が、仮変更を行ったノイズ源ネットのファンクションブロックの確定変更を行い（ステップＳ６１１）、インクリメンタル配置配線手段（１１０）が、ファンクションブロックの確定変更に伴う再配線処理の微修正を行うことで（ステップＳ６１２）、クロストークエラーを抑制（望ましくは「除去」）した配線結果を得ることが可能となる。
【０１１６】
また、本実施形態におけるクロストークエラー制御装置は、クロストークエラーを抑制した配線結果を得るために行われる抑制制御が、ノイズ源ネットに対するファンクションブロックの変更処理と、そのファンクションブロックの変更に伴うブロック周辺の微少な再配線処理と、の２つの処理のみとなるため、クロストークエラーを抑制する際の変更量を低減させることが可能となり、配線混雑度が高い場合でもクロストークエラーの抑制制御を行うことが可能となる。
【０１１７】
これは、ネットの配線経路修正のみでクロストークエラーを改善しようとしても、修正するネットの配線長そのものが長い場合には配線混雑の度合いによってはクロストークエラーの除去または抑制が十分でない場合が考えられるのに対し、本実施形態におけるクロストークエラー制御装置は、ドライバとレシーバとのファンクションブロックの変更処理を行うため、配線混雑領域の配線パターンを変えずにクロストークエラーの抑制を行うことが可能となるためである。
【０１１８】
また、本実施形態におけるクロストークエラー制御装置は、初期のレイアウト結果（従来手法によるレイアウト結果）に対するインクリメンタルな再配線処理（実際の配置配線結果情報を基に、ファンクションブロックの変更処理と、そのファンクションブロックの変更に伴う微少な再配線処理）を行うことになるため、クロストークエラーを抑制する際に要する時間を短縮することが可能となる。また、ファンクションブロックの変更処理の際に、クロストークエラーと、遅延エラーと、が発生するか否かを判定しているため、新たなクロストークエラーの発生、もしくは、遅延エラーの発生を低減することが可能となる。
【０１１９】
なお、上述する実施形態は、本発明の好適な実施形態であり、上記実施形態のみに本発明の範囲を限定するものではなく、本発明の要旨を逸脱しない範囲において種々の変更を施した形態での実施が可能である。例えば、上述した実施形態におけるクロストークエラー制御装置における制御処理は、コンピュータプログラムにより実行することも可能であり、また、上記のプログラムは、光記録媒体、磁気記録媒体、光磁気記録媒体、または半導体等の記録媒体に記録し、その記録媒体からプログラムを情報処理装置に読み込ませることで、上述した制御処理を情報処理装置において実行させることも可能である。また、所定のネットワークを介して接続されている外部機器からプログラムを情報処理装置に読み込ませることで、上述した制御処理を情報処理装置において実行させることも可能である。
【産業上の利用可能性】
【０１２０】
本発明にかかるクロストークエラー制御装置は、ＣＡＤ（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｄｅｓｉｇｎ）を用いた、ＬＳＩ（ＬａｒｇｅＳｃａｌｅ  Ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ）やＰＷＢ（Ｐｒｉｎｔｅｄ  Ｗｉｒｉｎｇ  Ｂｏａｒｄ）等の論理回路（あるいは、論理回路の論理接続関係）のレイアウト設計に適用可能である。
【図面の簡単な説明】
【０１２１】
【図１】本実施形態におけるクロストークエラー制御装置の構成を示すブロック図である。
【図２】図１に示すクロストークエラー制御装置の具体的な処理動作を説明するための第１の図である。
【図３】図１に示すクロストークエラー制御装置の具体的な処理動作を説明するための第２の図である。
【図４】図１に示すクロストークエラー制御装置の具体的な処理動作を説明するための第３の図である。
【図５】図１に示すクロストークエラー制御装置の具体的な処理動作を説明するための第４の図である。
【図６】本実施形態におけるクロストークエラー制御装置の制御処理を示すフロチャートである。
【符号の説明】
【０１２２】
１０１    制御手段
１０２    論理／ライブラリ／配置配線結果入力手段
１０３    クロストーク量制限値入力手段
１０４    遅延制限値入力手段
１０５    クロストーク解析手段（全/特定ネット）
１０６    ノイズ源ネット検出手段
１０７    ファンクションブロック仮変更手段
１０８    遅延解析手段
１０９    ファンクションブロック変更手段
１１０    インクリメンタル配置配線手段
１１１    配置配線結果出力手段
１１２    論理接続情報
１１３    物理情報
１１４    クロストーク解析用ライブラリ情報
１１５    遅延解析用ライブラリ情報
１１６    クロストーク量制限値情報
１１７    遅延制限値情報
１１８    ファンクションブロック情報
１１９    配置配線結果情報
【図１】
2006251933.tif 000003
【図２】
2006251933.tif 000004
【図３】
2006251933.tif 000005
【図４】
2006251933.tif 000006
【図５】
2006251933.tif 000007
【図６】
2006251933.tif 000008