(57)【特許請求の範囲】
【請求項１】
コンピュータを、
設計対象回路の中から、クロストーク解析によりエラーが発生したアグレッサ配線とビクティム配線とからなる１対のエラーセグメントを特定する特定手段、
前記特定手段によって特定されたエラーセグメントの配線構造に基づいて、クロストークエラーが発生する配線構造とクロストークノイズ値とを対応付けて作成されたテーブルの記憶内容を参照することにより、当該配線構造の変更により減少するクロストークノイズ値の減少量を変更後の配線構造ごとに算出する算出手段、
前記算出手段によって算出された算出結果に基づいて、前記エラーセグメントの配線構造を決定する決定手段、
前記エラーセグメントの配線構造を前記決定手段によって決定された配線構造に修正する修正手段、
前記修正手段によって修正された修正結果を出力する出力手段、
として機能させることを特徴とする設計支援プログラム。
【請求項２】
前記算出手段は、
前記特定手段によって特定されたエラーセグメントのビクティム配線の配線構造に基づいて、前記テーブルの記憶内容を参照することにより、当該配線構造の変更により減少するクロストークノイズ値の減少量を変更後の配線構造ごとに算出し、
前記決定手段は、
前記算出手段によって算出された算出結果に基づいて、前記ビクティム配線の配線構造を決定することを特徴とする請求項１に記載の設計支援プログラム。
【請求項３】
前記決定手段は、
予め設定された配線構造の変更に関する変更ルールと、前記算出手段によって算出された算出結果とに基づいて、前記エラーセグメントの配線構造を決定することを特徴とする請求項１または２に記載の設計支援プログラム。
【請求項４】
前記決定手段は、
前記エラーセグメントの配線構造を前記算出手段によって算出されたクロストークノイズ値の減少量が最大となる配線構造に決定することを特徴とする請求項１または２に記載の設計支援プログラム。
【請求項５】
前記算出手段は、
前記特定手段によって特定されたエラーセグメントのビクティム配線の配線構造に基づいて、前記テーブルの記憶内容を参照することにより、前記エラーセグメントのアグレッサ配線およびビクティム配線のうち、配線構造の変更により周囲の配線に与える影響が少ないビクティム配線の配線構造の変更により減少するクロストークノイズ値の減少量を変更後の配線構造ごとに算出し、
前記決定手段は、
前記算出手段によって算出された前記ビクティム配線の配線構造の変更により減少するクロストークノイズ値の減少量に基づいて、前記ビクティム配線の配線構造を決定し、
前記修正手段は、
前記ビクティム配線の配線構造を前記決定手段によって決定された配線構造に修正することを特徴とする請求項１〜４のいずれか一つに記載の設計支援プログラム。
【請求項６】
前記配線構造は、配線幅、配線間隔、並走距離、配線層および駆動セルの少なくともいずれかによって特徴付けられることを特徴とする請求項１〜５のいずれか一つに記載の設計支援プログラム。
【請求項７】
前記特定手段は、
前記設計対象回路の中から、クロストーク解析によりエラーが発生したエラー箇所のうちクロストークノイズ値が予め設定された閾値以上となるエラー箇所の１対のエラーセグメントを特定することを特徴とする請求項１〜６のいずれか一つに記載の設計支援プログラム。
【請求項８】
前記コンピュータを、
前記修正手段によって前記エラーセグメントの配線構造が修正された修正後のエラー箇所のクロストークノイズ値が予め設定された閾値以上か否かを判定する判定手段として機能させ、
前記算出手段は、
前記エラーセグメントの配線構造が修正された修正後のエラーセグメントの配線構造に基づいて、前記テーブルの記憶内容を参照することにより、当該配線構造の変更により減少するクロストークノイズ値の減少量を変更後の配線構造ごとに算出することを特徴とする請求項７に記載の設計支援プログラム。
【請求項９】
設計対象回路の中から、クロストーク解析によりエラーが発生したアグレッサ配線とビクティム配線とからなる１対のエラーセグメントを特定する特定手段と、
前記特定手段によって特定されたエラーセグメントの配線構造に基づいて、クロストークエラーが発生する配線構造とクロストークノイズ値とを対応付けて作成されたテーブルの記憶内容を参照することにより、当該配線構造の変更により減少するクロストークノイズ値の減少量を変更後の配線構造ごとに算出する算出手段と、
前記算出手段によって算出された算出結果に基づいて、前記エラーセグメントの配線構造を決定する決定手段と、
前記エラーセグメントの配線構造を前記決定手段によって決定された配線構造に修正する修正手段と、
前記修正手段によって修正された修正結果を出力する出力手段と、
を備えることを特徴とする設計支援装置。
【請求項１０】
コンピュータが、
設計対象回路の中から、クロストーク解析によりエラーが発生したアグレッサ配線とビクティム配線とからなる１対のエラーセグメントを特定する特定工程と、
前記特定工程によって特定されたエラーセグメントの配線構造に基づいて、クロストークエラーが発生する配線構造とクロストークノイズ値とを対応付けて作成されたテーブルの記憶内容を参照することにより、当該配線構造の変更により減少するクロストークノイズ値の減少量を変更後の配線構造ごとに算出する算出工程と、
前記算出工程によって算出された算出結果に基づいて、前記エラーセグメントの配線構造を決定する決定工程と、
前記エラーセグメントの配線構造を前記決定工程によって決定された配線構造に修正する修正工程と、
前記修正工程によって修正された修正結果を出力する出力工程と、
を実行することを特徴とする設計支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、半導体集積回路のレイアウト設計を支援する設計支援プログラム、該プログラムを記録した記録媒体、設計支援装置、および設計支援方法に関する。
【背景技術】
【０００２】
ＬＳＩ設計では、従来から設計期間の短縮による作業効率化が要求されている。特に、大規模化、高機能化、高速化および低消費電力化が要求されているＬＳＩについては、高品質を維持するためにも設計作業の効率化は重要である。
【０００３】
一方で、ＬＳＩ設計のレイアウト設計においては、遅延、配線間隔、消費電力、クロストークノイズなどに関する設計制約を満たす必要がある。特に、クロストークノイズについては、一方の配線が並走する他方の配線から受けるノイズによって回路の誤動作を引き起こすため注意深く対処する必要がある。
【０００４】
一般に、クロストークノイズを考慮した配線修正の手法としては、バッファを挿入する、配線間隔を広げる、配線層を変更する、駆動セルの種類を変更する、並走距離を短くするなどの手法がある。これら手法のうち、バッファを挿入する手法が最も効果的であり、周辺の配線に対する影響が小さい。
【０００５】
このため、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）などのタイミング制約に余裕のあるチップでは、ほとんどのクロストークエラー対策がバッファ挿入によっておこなわれている。ところが、プロセッサのようなチップでは、バッファ挿入によるクロストークエラー対策をおこなうことができない。
【０００６】
その理由としては、例えば、動作周波数が高いためタイミング制約に余裕がない、また、チップ面積に対するセル密度が高いため新たにバッファを挿入する場所を確保することができないなどが挙げられる。このため、クロストークエラー対策として、バッファ挿入をおこなわない手法が求められており、様々な手法が開示されている。
【０００７】
例えば、下記特許文献１には、配線パターンに基づいて回路動作させた場合に発生するノイズを解析し、その解析結果および配線パターンに基づいて、その配線パターン内のノイズの発生箇所を特定する。そして、そのノイズ発生箇所をディスプレイに表示し、該ノイズ発生箇所の配線パターンが編集される都度、編集後の配線パターンのノイズ値を解析して表示する技術が記載されている。
【０００８】
また、下記特許文献２には、隣接する配線層の間に発生するクロストークエラーを対象として、詳細配線前に、概略配線された配線パターン内のノイズの発生箇所を検出し、その発生箇所のアグレッサ配線に対して斜め配線を使用した事前配線を適用する技術が記載されている。
【０００９】
また、下記特許文献３には、回路内でクロストークエラーの原因となるアグレッサ配線とビクティム配線とのペアを、相対距離を維持したまま他の場所にコピーし、コピー元（アグレッサ配線とビクティム配線とのペア）が形成されていた場所にダミー配線を追加することで、コピー前の配線間の容量を補償する記述が記載されている。
【００１０】
【特許文献１】特開平１０−７４２１６号公報
【特許文献２】特開２００６−１４７８９４号公報
【特許文献３】特開２００６−２１５６８８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、上述した特許文献１〜３の従来技術によれば、クロストークエラーが発生したエラー箇所の配線パターンを修正することで、エラー箇所のクロストークノイズがどの程度解消されるのかを考慮していない。したがって、配線パターンの修正により解消されるクロストークノイズが小さい場合には、結果的に多くの修正回数が必要となり作業工数が増大してしまう。
【００１２】
また、多くのエラー箇所の配線パターンを修正することで、それまでクロストークエラーが発生していなかった箇所に新たなクロストークエラーを発生させ、作業工数の増大化を招く可能性があった。このように、従来の手法では作業工数の増大による作業効率の低下を招き、レイアウト設計にかかる設計期間が増大するという問題があった。
【００１３】
この発明は、上述した従来技術による問題点を解消するため、配線構造の変更によるクロストークノイズ値の減少量を考慮してエラー箇所の配線修正をおこなうことにより、ＬＳＩ設計の作業効率を向上させ、設計期間の短縮化を図ることができる設計支援プログラム、該プログラムを記録した記録媒体、設計支援装置、および設計支援方法を提供することを目的とする。
【課題を解決するための手段】
【００１４】
上述した課題を解決し、目的を達成するため、この設計支援プログラム、該プログラムを記録した記録媒体、設計支援装置、および設計支援方法は、設計対象回路の中から、クロストーク解析によりエラーが発生したアグレッサ配線とビクティム配線とからなる１対のエラーセグメントを特定し、特定されたエラーセグメントの配線構造に基づいて、当該配線構造の変更により減少するクロストークノイズ値の減少量を変更後の配線構造ごとに算出し、算出された算出結果に基づいて、前記エラーセグメントの配線構造を決定し、前記エラーセグメントの配線構造を決定された配線構造に修正し、修正された修正結果を出力することを要件とする。
【００１５】
この設計支援プログラム、該プログラムを記録した記録媒体、設計支援装置、および設計支援方法によれば、１対のエラーセグメントの配線構造を変更することによるクロストークノイズ値の減少量を考慮して配線構造を修正することにより、配線修正によるクロストークノイズ値の削減効果を向上させることができる。
【００１６】
また、この設計支援プログラム、該プログラムを記録した記録媒体、設計支援装置、および設計支援方法において、特定されたエラーセグメントのビクティム配線の配線構造に基づいて、当該配線構造の変更により減少するクロストークノイズ値の減少量を変更後の配線構造ごとに算出し、算出された算出結果に基づいて、前記ビクティム配線の配線構造を決定することとしてもよい。
【００１７】
この設計支援プログラム、該プログラムを記録した記録媒体、設計支援装置、および設計支援方法によれば、１対のエラーセグメントのアグレッサ配線およびビクティム配線のうち、配線構造の変更により周囲の配線に与える影響が少ないビクティム配線の配線構造を優先して修正することができる。
【００１８】
また、この設計支援プログラム、該プログラムを記録した記録媒体、設計支援装置、および設計支援方法において、予め設定された配線構造の変更に関する変更ルールと算出された算出結果とに基づいて、前記エラーセグメントの配線構造を決定することとしてもよい。
【００１９】
この設計支援プログラム、該プログラムを記録した記録媒体、設計支援装置、および設計支援方法によれば、配線構造を特徴付ける配線幅、配線間隔、並走距離、配線層および駆動セルなどの複数の要素のうち、任意の要素を変更対象として設定することができる。
【００２０】
また、この設計支援プログラム、該プログラムを記録した記録媒体、設計支援装置、および設計支援方法において、前記エラーセグメントの配線構造を、算出されたクロストークノイズ値の減少量が最大となる配線構造に決定することとしてもよい。
【００２１】
この設計支援プログラム、該プログラムを記録した記録媒体、設計支援装置、および設計支援方法によれば、１対のエラーセグメントの配線構造を、配線修正によるクロストークノイズ値の削減効果が最大となる配線構造に修正することができる。
【００２２】
また、この設計支援プログラム、該プログラムを記録した記録媒体、設計支援装置、および設計支援方法において、前記エラーセグメントの配線構造を用いて、クロストークエラーが発生する配線構造とクロストークノイズ値とを対応付けて記憶するテーブルを参照することにより、前記減少量を算出することとしてもよい。
【００２３】
この設計支援プログラム、該プログラムを記録した記録媒体、設計支援装置、および設計支援方法によれば、予め作成されたテーブルの記憶内容を用いてクロストークノイズ値の減少量を簡易的に見積もることにより算出処理を簡素化することができる。
【００２４】
また、この設計支援プログラム、該プログラムを記録した記録媒体、設計支援装置、および設計支援方法において、前記設計対象回路の中から、クロストーク解析によりエラーが発生したエラー箇所のうちクロストークノイズ値が予め設定された閾値以上となるエラー箇所の１対のエラーセグメントを特定することとしてもよい。
【００２５】
この設計支援プログラム、該プログラムを記録した記録媒体、設計支援装置、および設計支援方法によれば、修正対象とするエラー箇所を、設計対象回路の誤動作を引き起こす程度のクロストークノイズが発生しているエラー箇所に絞り込むことができる。
【００２６】
また、この設計支援プログラム、該プログラムを記録した記録媒体、設計支援装置、および設計支援方法において、前記エラーセグメントの配線構造が修正された修正後のエラー箇所のクロストークノイズ値が予め設定された閾値以上か否かを判定し、前記エラーセグメントの配線構造が修正された修正後のエラーセグメントの配線構造に基づいて、当該配線構造の変更により減少するクロストークノイズ値の減少量を変更後の配線構造ごとに算出することとしてもよい。
【００２７】
この設計支援プログラム、該プログラムを記録した記録媒体、設計支援装置、および設計支援方法によれば、エラー箇所のクロストークノイズが設計対象回路の誤動作を引き起こさない程度に改善されるまで、算出処理、決定処理および修正処理を繰り返し実行することができる。
【発明の効果】
【００２８】
この設計支援プログラム、該プログラムを記録した記録媒体、設計支援装置、および設計支援方法によれば、配線構造の変更によるクロストークノイズ値の減少量を考慮してエラー箇所の配線修正をおこなうことにより、ＬＳＩ設計の作業効率を向上させ、設計期間の短縮化を図ることができるという効果を奏する。
【発明を実施するための最良の形態】
【００２９】
以下に添付図面を参照して、この設計支援プログラム、該プログラムを記録した記録媒体、設計支援装置、および設計支援方法の好適な実施の形態を詳細に説明する。
【００３０】
（本実施の形態の概要）
まず、本実施の形態の概要について説明する。本実施の形態では、タイミング制約の厳しいプロセッサなどのＬＳＩ設計において、クロストーク解析によるクロストークエラーを効率的に改善する手法を提案する。
【００３１】
図１は、本実施の形態の概要を示す説明図である。図１において、まず、設計対象回路１００の中から、クロストーク解析によりクロストークエラーが発生している任意のエラー箇所Ｅ１〜Ｅｊを特定する。具体的には、例えば、クロストーク解析の解析結果を用いて、複数のエラー箇所Ｅ１〜Ｅｊのうちクロストークノイズ値が最大のエラー箇所Ｅｉを特定する。
【００３２】
つぎに、エラー箇所Ｅｉの中から、クロストークエラーを引き起こしているセグメントの組み合わせからなる１対のエラーセグメントＥｉ−１，Ｅｉ−２を特定する。このとき、セグメントの組み合わせが複数存在する場合には、例えば、クロストークノイズ値が最大の１対のエラーセグメントＥｉ−１を特定する。
【００３３】
このあと、１対のエラーセグメントＥｉ−１の配線構造を変更することで減少するクロストークノイズ値の減少量を見積もる。具体的には、例えば、配線構造を特徴付ける配線幅、配線間隔、並走距離、配線層および駆動セルを変更した場合の変更後の配線構造ごとにクロストークノイズ値の減少量を見積もる。
【００３４】
つぎに、その見積もり結果に基づいて、変更すべき１対のエラーセグメントＥｉ−１の配線構造を決定する。例えば、クロストークノイズ値の減少量が最大となる配線構造に決定する。そして、１対のエラーセグメントＥｉ−１の配線構造を、決定された配線構造に修正する。
【００３５】
このように、クロストークノイズ値の減少量を考慮して配線構造を修正することにより、配線修正によるクロストークノイズ値の削減効果を向上させることができる。さらに、上述の処理を設計対象回路１００内の各エラー箇所Ｅ１〜Ｅｊに施すことで、回路全体のクロストークノイズを効率的かつ効果的に削減することができる。
【００３６】
また、配線修正する都度、設計対象回路１００が誤動作しない程度にクロストークエラーが解消されているのかをクロストーク解析により繰り返し確認する必要がある。上述した手法によれば、１回の修正作業でクロストークノイズが効果的に削減されているため、結果的にクロストーク解析の実行回数が少なくなり、クロストーク対策にかかる作業時間および作業負担の軽減化を図ることができる。
【００３７】
（設計支援装置のハードウェア構成）
つぎに、本実施の形態にかかる設計支援装置のハードウェア構成について説明する。図２は、設計支援装置のハードウェア構成を示す説明図である。図２において、設計支援装置２００は、コンピュータ本体２１０と、入力装置２２０と、出力装置２３０と、から構成されており、不図示のルータやモデムを介してＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ），ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）やインターネットなどのネットワーク２４０に接続可能である。
【００３８】
コンピュータ本体２１０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ），メインメモリ，インターフェースなどを有する。ＣＰＵは、設計支援装置２００の全体の制御を司る。メインメモリには、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）などが用いられる。また、補助記憶装置としてＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ），光ディスク２１１，フラッシュメモリなどが備えられる。ただし、必ずしもコンピュータ本体２１０内に構成する必要はない。メインメモリはＣＰＵのワークエリアとして使用される。
【００３９】
また、ＨＤＤには各種プログラムが格納されており、ＣＰＵからの命令に応じてメインメモリにロードされる。光ディスク２１１は光ディスクドライブによりデータのリード／ライトが制御される。インターフェースは、入力装置２２０からの入力、出力装置２３０への出力、ネットワーク２４０に対する送受信の制御をおこなう。
【００４０】
また、入力装置２２０としては、キーボード２２１、マウス２２２、スキャナ２２３などがある。キーボード２２１は、文字、数字、各種指示などの入力のためのキーを備え、データの入力をおこなう。また、タッチパネル式であってもよい。マウス２２２は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などをおこなう。スキャナ２２３は、画像を光学的に読み取る。読み取られた画像は画像データとして取り込まれ、コンピュータ本体２１０内のメモリに格納される。なお、スキャナ２２３にＯＣＲ機能を持たせてもよい。
【００４１】
また、出力装置２３０としては、ディスプレイ２３１、スピーカ２３２、プリンタ２３３などがある。ディスプレイ２３１は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。また、スピーカ２３２は、効果音や読み上げ音などの音声を出力する。また、プリンタ２３３は、画像データや文書データを印刷する。
【００４２】
（設計対象回路の回路情報）
つぎに、設計支援装置２００に用いられる設計対象回路の回路情報について説明する。ここでは、図１に示した設計対象回路１００の回路情報について説明する。図３は、回路情報の一例を示す説明図である。図３において、回路情報３００は、設計対象回路１００に関する配置情報３１０および配線情報３２０を有している。
【００４３】
具体的には、配置情報３１０は、設計対象回路のレイアウト上に配置されたセルごとに、セル名、セルタイプ、セル座標、端子名および端子座標に関する情報を有している。セル名は、セルを識別する識別子である。セルタイプは、セルの駆動能力などを特定する種類である。
【００４４】
セル座標は、レイアウト上のセルの座標位置である。この座標位置は、セル内の１点（例えば、セルの中心点）を代表して表わしている。端子名は、セルの端子を識別する識別子である。端子座標は、レイアウト上の端子の座標位置である。ここで、セルＣ１を例に挙げると、セルタイプはＴ１、セル座標は（ＸＣ１，ＹＣ１）、端子名はＰ１１，Ｐ１２、端子座標はそれぞれ（ＸＰ１１，ＹＰ１１），（ＸＰ１２，ＹＰ１２）である。
【００４５】
また、配線情報３２０は、設計対象回路のレイアウト上のネットごとに、ネット名、接続端子名、およびネット内のセグメントとビアに関する情報を有している。ネット名は、ネットを識別する識別子である。ネットとは、複数のセルから構成される回路部分である。接続端子名は、ネット内のセル間を接続する端子を識別する識別子である。
【００４６】
セグメントとは、ネット内の配線のうち１つの配線層で真っ直ぐに形成された連続部分である。ここでは、セグメント情報として、セグメント名、配線幅、両端座標、配線層に関する情報を有している。セグメント名は、セグメントを識別する識別子である。配線幅は、セグメントの配線幅である。両端座標は、セグメントの両端の座標位置である。配線層は、セグメントが形成されている配線層である。
【００４７】
また、ビアとは、多層配線における下層の配線と上層の配線を電気的につなぐ接続領域である。ここでは、ビア情報として、ビア座標、配線層に関する情報を有している。ビア座標は、ビアが配置されている座標位置である。配線層は、ビアが配置されている配線層である。
【００４８】
ここで、ネットＮ１を例に挙げると、ネットＮ１はセグメントＳ１１，Ｓ１２，Ｓ１３の区間に分かれている。例えば、セグメントＳ１１の両端座標は（ＸａＳ１１，ＹａＳ１１）−（ＸｂＳ１１，ＹｂＳ１１）、配線層はＬＳ１１であり、また、ビアのビア座標は（ＸＶ１１，ＹＶ１１）、配線層はＬＶ１１である。
【００４９】
（エラー箇所の具体例）
ここで、クロストークエラーが発生したエラー箇所の具体例について説明する。図４は、エラー箇所の具体例を示す回路図である。図４において、図１に示したエラー箇所Ｅｉの回路図が示されている。具体的には、エラー箇所Ｅｉは、ネットＮ７とネットＮ８とネットＮ９とから構成されている。ここでは、ネットＮ８，Ｎ９がネットＮ７に対してクロストークノイズの影響を及ぼしている。
【００５０】
より具体的には、ネットＮ８のセグメントＳ８１がネットＮ７のセグメントＳ７２に対してクロストークノイズの影響を及ぼしている。さらに、ネットＮ９のセグメントＳ９２がネットＮ７のセグメントＳ７２に対してクロストークノイズの影響を及ぼしている。なお、図４中太線は、クロストークエラーが発生しているエラー区間を表わしている。
【００５１】
（クロストーク解析の解析結果）
つぎに、設計支援装置２００に用いられるクロストーク解析の解析結果について説明する。図５は、クロストーク解析の解析結果の一例を示す説明図である。図５において、解析結果５００は、設計対象回路１００のクロストーク解析によりエラーが発生したエラー箇所に関するクロストーク情報５００−１〜５００−ｊを有している。
【００５２】
具体的には、クロストーク情報５００−１〜５００−ｊは、エラー箇所ごとに、エラーＩＤおよびノイズ値を有している。エラーＩＤは、エラー箇所を識別する識別子である。ノイズ値は、エラー箇所のクロストークノイズ値である。
【００５３】
さらに、クロストーク情報５００−１〜５００−ｊは、エラー箇所の１対のエラーセグメントごとに、エラーＩＤ、セグメント、種別、ネット、ノイズ値、エラー区間の両端座標および並走距離に関する情報を有している。エラーＩＤは、１対のエラーセグメントを識別する識別子である。セグメントは、１対のエラーセグメントを構成するセグメントである。
【００５４】
種別は、クロストークノイズの影響を及ぼすアグレッサまたはクロストークノイズの影響を受けるビクティムを識別する識別子である。ネットは、各セグメントが属するネットである。ノイズ値は、１対のエラーセグメントのクロストークノイズ値である。エラー区間の両端座標は、クロストークエラーが発生したアグレッサ配線またはビクティム配線の両端座標である。
【００５５】
アグレッサ配線とは、他の配線に対してクロストークノイズの影響を及ぼす配線である。また、ビクティム配線とは、アグレッサ配線によりクロストークノイズの影響を受ける配線である。また、並走距離は、エラー区間の両端座標から算出されるエラー区間の距離である。
【００５６】
ここで、クロストーク情報５００−ｉ（図４に示したエラー箇所Ｅｉ）を例に挙げると、ノイズ値ＮＺｉのクロストークエラーが発生している。詳細化すると、エラー箇所Ｅｉ内のエラーセグメントＥｉ−１およびエラーセグメントＥｉ−２でクロストークエラーが発生している。なお、エラー箇所Ｅｉのノイズ値ＮＺｉは、エラーセグメントＥｉ−１のノイズ値ＮＺｉ−１と、エラーセグメントＥｉ−２のノイズ値ＮＺｉ−２とを加算した値となる。
【００５７】
例えば、エラーセグメントＥｉ−１では、ネットＮ８のセグメントＳ８１がネットＮ７のセグメントＳ７２に対してクロストークノイズの影響を及ぼしている。また、アグレッサ配線の両端座標は（Ｘａ１１，Ｙａ１１）−（Ｘａ１２，Ｙａ１２）、ビクティム配線の両端座標は（Ｘｖ１１，Ｙｖ１１）−（Ｘｖ１２，Ｙｖ１２）である。また、並走距離はＤｉ１である。
【００５８】
（設計支援装置の機能的構成）
つぎに、設計支援装置２００の機能的構成について説明する。図６は、設計支援装置の機能的構成を示すブロック図である。図６において、設計支援装置２００は、特定部６０１と、取得部６０２と、算出部６０３と、決定部６０４と、修正部６０５と、出力部６０６と、判定部６０７と、を備えている。
【００５９】
これら各機能６０１〜６０７は、設計支援装置２００のＨＤＤに記憶された当該機能６０１〜６０７に関するプログラムをＣＰＵに実行させることにより、または、入出力Ｉ／Ｆを介して、当該機能を実現することができる。また、各機能６０１〜６０７からの出力データは上記ＨＤＤや光ディスク２１１、フラッシュメモリなどの記憶部に保持される。また、図６中矢印で示した接続先の機能は、接続元の機能からの出力データを上記記憶部から読み込んで、当該機能に関するプログラムをＣＰＵに実行させるものとする。
【００６０】
まず、特定部６０１は、設計対象回路の中から、クロストーク解析によりエラーが発生したアグレッサ配線とビクティム配線とからなる１対のエラーセグメントを特定する機能を有する。具体的には、例えば、設計対象回路のクロストーク解析の解析結果を用いて、１対のエラーセグメントを特定する。
【００６１】
より詳細に説明すると、例えば、図５に示した解析結果５００から任意のクロストーク情報５００−１〜５００−ｊを抽出することで、設計対象回路１００の中からクロストーク解析によりエラーが発生した任意のエラー箇所Ｅ１〜Ｅｊを特定する。このとき、クロストークノイズ値が最大のエラー箇所Ｅ１〜Ｅｊ（ここでは、エラー箇所Ｅｉ）を特定することとしてもよい。
【００６２】
例えば、エラー箇所Ｅｉが特定されると、このあと、エラー箇所Ｅｉの中からアグレッサ配線とビクティム配線とからなる１対のエラーセグメントＥｉ−１，Ｅｉ−２を特定する。このとき、クロストークノイズ値が最大の１対のエラーセグメントＥｉ−１，Ｅｉ−２（ここでは、１対のエラーセグメントＥｉ−１）を特定することとしてもよい。
【００６３】
取得部６０２は、設計対象回路の回路情報の中から、特定部６０１によって特定された１対のエラーセグメントに関する配線構造情報を取得する機能を有する。回路情報とは、設計対象回路のレイアウト上に配置されるセルの配置情報および配線情報を含む情報である。
【００６４】
この回路情報は、例えば、設計支援装置２００に直接入力することとしてもよく、また、不図示の外部装置からの取得、不図示のデータベースやライブラリからの抽出によって取得することとしてもよい。例えば、特定部６０１によってエラーセグメントＥｉ−１が特定された場合、取得部６０２は、図３に示した回路情報３００の中から、エラーセグメントＥｉ−１に関する配置情報３１０および配線情報３２０を取得することとなる。
【００６５】
算出部６０３は、特定部６０１によって特定されたエラーセグメントの配線構造に基づいて、当該配線構造の変更により減少するクロストークノイズ値の減少量を変更後の配線構造ごとに算出する機能を有する。配線構造は、例えば、配線幅、配線間隔、並走距離、配線層および駆動セルの少なくともいずれかによって特徴付けられる。
【００６６】
また、エラーセグメントの配線構造とは、１対のエラーセグメントのいずれか一方のセグメントの配線構造であってもよく、また、双方のセグメントの配線構造であってもよい。具体的には、配線幅は、１対のエラーセグメントのアグレッサ配線またはビクティム配線の配線幅である。配線間隔は、アグレッサ配線とビクティム配線との配線間隔である。並走距離は、アグレッサ配線とビクティム配線とが並走するエラー区間の距離である。配線層は、アグレッサ配線またはビクティム配線が属する配線層である。駆動セルは、アグレッサ配線またはビクティム配線を含むセグメントの駆動セルである。
【００６７】
算出部６０３による算出処理の具体例としては、例えば、特定部６０１によって特定されたエラーセグメントの配線構造を用いて、クロストークエラーが発生する配線構造とクロストークノイズ値とを対応付けて記憶するテーブルを参照することにより、変更後の配線構造ごとにクロストークノイズ値の減少量を算出することとしてもよい。
【００６８】
このとき、算出部６０３は、１対のエラーセグメントのビクティム配線の配線構造に基づいて、当該配線構造の変更により減少するクロストークノイズ値の減少量を変更後の配線構造ごとに算出することとしてもよい。一般的に配線構造を変更する場合、クロストークノイズの影響を受ける側を変更するほうが周囲の配線に与える影響が少ないため、ビクティム配線の配線構造を優先して変更することが好ましい。
【００６９】
ここで、算出部６０３による算出処理に用いられるテーブルについて説明する。図７は、テーブルの記憶内容を示す説明図である。なお、図面では、記憶内容の一部を抜粋して表示している。図７において、テーブル７００には、クロストークエラーが発生する配線構造Ｐ１〜Ｐ６ごとに、該配線構造を特徴付ける配線幅、配線間隔、並走距離、配線層、駆動セルおよびノイズ値が記憶されている。
【００７０】
テーブル７００は、例えば、配線構造が「Ｐ１」から「Ｐ２」に変更されると、クロストークノイズ値が「３．００」から「１．３５」になることを表わしている。つまり、配線間隔を１［ｇｒｉｄ］から２［ｇｒｉｄ］に変更することで、クロストークノイズ値を「１．６５」減少させることができる。
【００７１】
なお、テーブル７００に記憶するクロストークノイズ値は、過去のクロストーク解析の解析結果などから簡易的に見積もることとしてもよい。この場合、正確にクロストークノイズ値を計算していないため、実際のクロストークノイズ値との誤差が生じてしまう可能性がある。しかし、ここではクロストークノイズ値の減少量に着目するため、最終的なクロストークノイズ値には大きな誤差は生じない。
【００７２】
また、クロストークノイズ値の減少量は設計対象回路のテクノロジによって決まるものであるため、同じテクノロジであれば、異なる設計対象回路であっても同じテーブル７００を用いることができる。なお、テーブル７００は、ＲＡＭ，ＨＤ，光ディスク２１１（図２参照）などの記憶部を用いてその機能を実現する。
【００７３】
以下、エラーセグメントＥｉ−１のビクティム配線（セグメントＳ７２）を例に挙げてクロストークノイズ値の減少量を算出する。具体的には、算出部６０３は、取得部６０２によって取得されたエラーセグメントＥｉ−１に関する配線構造情報を用いて、テーブル７００を参照することにより、変更後の配線構造ごとにクロストークノイズ値の減少量を算出する。
【００７４】
より具体的には、まず、セグメントＳ７２の配線構造と一致する配線構造を配線構造Ｐ１〜Ｐ６の中から選択する。ここでは、配線構造情報から特定されるセグメントＳ７２の配線幅が２［ｇｒｉｄ］、配線間隔が１［ｇｒｉｄ］、並走距離（クロストーク情報５００−ｉから特定）が５００［μｍ］、配線層がＬＣ、駆動セルがＡとする。この場合、セグメントＳ７２の配線構造は配線構造Ｐ１と一致するため配線構造Ｐ１が選択される。
【００７５】
このあと、配線構造Ｐ１を他の配線構造Ｐ２〜Ｐ６に変更することで減少するクロストークノイズ値の減少量をそれぞれ算出する。例えば、配線構造Ｐ２に変更（配線間隔を２［ｇｒｉｄ］に変更）すると、クロストークノイズ値の減少量は「３．００−１．３５＝１．６５」となる。このように、他の配線構造Ｐ２〜Ｐ６に変更した場合の減少量をそれぞれ算出する。
【００７６】
なお、テーブル７００にセグメントＳ７２の配線構造と一致する配線構造が記憶されていない場合には、その都度、セグメントＳ７２の配線構造に相当する配線構造のノイズ値を算出することとしてもよい。ここで、セグメントＳ７２の並走距離が４００［μｍ］であり、それ以外については配線構造Ｐ１と一致する場合を例に挙げる。
【００７７】
この場合、セグメントＳ７２の配線構造と同一の配線構造のノイズ値として、配線構造Ｐ１のノイズ値「３．００」と、並走距離が３００［μｍ］であり、それ以外については配線構造Ｐ１と一致する配線構造Ｐ３のノイズ値「２．６４」とを加算し、２で除算した値「２．８２」を採用することとしてもよい。このように、予め作成されたテーブル７００の記憶内容を用いてクロストークノイズ値の減少量を簡易的に見積もることにより、算出部６０３による算出処理を簡素化することができる。
【００７８】
図６の説明に戻り、算出部６０３による算出処理の他の具体例としては、例えば、取得部６０２によって取得されたエラーセグメントに関する配線構造情報を用いて、配線構造を特徴付けるパラメータを変更することで、変更後の配線構造ごとにクロストークノイズ値の減少量を算出することとしてもよい。
【００７９】
より詳細に説明すると、例えば、配線構造を特徴付ける配線幅、配線間隔、並走距離をパラメータとしてクロストークノイズ値を求める方程式（例えば、下記式（１））をたてる。ただし、Ｋはクロストークノイズ値、Ｘは配線幅、Ｙは配線間隔、Ｚは並走距離、ａ，ｂ，ｃは定数）である。
【００８０】
Ｋ＝ａＸ＋ｂＹ＋ｃＺ                    …（１）
【００８１】
このあと、例えば、パラメータＹ、Ｚを固定して、パラメータＸを変化させることにより、配線幅が変化したときのクロストークノイズ値を求める。そして、求めたクロストークノイズ値と元のエラーセグメントのクロストークノイズ値とを比較して減少量を算出することとしてもよい。なお、上記式の定数ａ，ｂ，ｃには、例えば、過去のクロストーク解析の解析結果から経験的に求めた数値を採用することができる。
【００８２】
決定部６０４は、算出部６０３によって算出された算出結果に基づいて、特定部６０１によって特定されたエラーセグメントの配線構造を決定する機能を有する。具体的には、例えば、エラーセグメントの配線構造を、算出部６０３によって算出されたクロストークノイズ値の減少量が最大となる配線構造に決定することとしてもよい。これにより、配線修正によるクロストークノイズ値の削減効果が最大となる配線構造に決定することができる。
【００８３】
また、決定部６０４は、上記算出部６０３により、ビクティム配線の配線構造に基づいてクロストークノイズ値の減少量が算出された場合には、その算出結果に基づいてビクティム配線の配線構造を決定することとなる。一方で、アグレッサ配線の配線構造に基づいてクロストークノイズ値の減少量が算出された場合には、その算出結果に基づいてアグレッサ配線の配線構造を決定することとなる。
【００８４】
ここで、テーブル７００を用いて算出されたエラーセグメントＥｉ−１のセグメントＳ７２に関する減少量を例に挙げると、セグメントＳ７２の配線構造（配線構造Ｐ１）を、クロストークノイズ値の減少量が最大（ここでは、「１．９７」）である配線構造Ｐ４（配線層をＬＣからＬＥに変更）に決定することとなる。
【００８５】
また、決定部６０４は、予め設定された配線構造の変更に関する変更ルールと算出部６０３によって算出された算出結果とに基づいて、エラーセグメントの配線構造を決定することとしてもよい。変更ルールは、例えば、変更対象の優先順位を規定するものである。具体的には、例えば、配線構造を特徴付ける配線幅、配線間隔、並走距離、配線層および駆動セルなどの複数の要素のうち、任意の要素を変更対象として設定することができる。
【００８６】
また、デザインルール違反とならない変更のみを許可する変更ルールを設定することとしてもよい。より具体的には、例えば、１対のエラーセグメントの配線構造を、配線間隔または駆動セルを変更する配線構造のうちクロストークノイズ値の減少量が最大となる配線構造に決定することができる。なお、変更ルールは、例えば、図２に示したキーボード２２１やマウス２２２などの入力装置２２０をユーザが操作することで、任意に設定可能である。
【００８７】
修正部６０５は、エラーセグメントの配線構造を、決定部６０４によって決定された配線構造に修正する機能を有する。具体的には、例えば、決定部６０４によって決定された配線構造に従って、取得部６０２によって取得されたエラーセグメントの配線構造情報の内容を修正する。
【００８８】
修正部６０５による修正例としては、例えば、１対のエラーセグメントのビクティム配線またはアグレッサ配線の配線幅、配線層、駆動セルの変更、あるいは、ビクティム配線とアグレッサ配線との配線間隔、並走距離の変更などが挙げられる。
【００８９】
ここで、図１に示したエラーセグメントＥｉ−１を例に挙げて、修正後のエラーセグメントＥｉ−１について説明する。図８は、修正部による修正例を示す説明図である。図８において、エラーセグメントＥｉ−１のセグメントＳ７２とセグメントＳ８１との配線間隔が１［ｇｒｉｄ］から２［ｇｒｉｄ］に修正されている。具体的には、例えば、セグメントＳ８１を動かさずに、セグメントＳ７２を引き離すことにより修正する。
【００９０】
また、セグメントＳ７２を動かさずに、セグメントＳ８１を引き離すことにより修正することとしてもよい。また、セグメントＳ７２およびセグメントＳ８１をともに動かすことにより修正することとしてもよい。このように、セグメントＳ７２とセグメントＳ８１との間隔を広げることにより、クロストークエラーを改善することができる。
【００９１】
出力部６０６は、修正部６０５によって修正された修正結果を出力する機能を有する。具体的には、例えば、修正部６０５による修正が反映された設計対象回路を出力することとしてもよく、また、配線構造が修正された修正後のエラーセグメントを出力することとしてもよい。
【００９２】
より具体的には、例えば、回路情報３００にエラーセグメントＥｉ−１の修正が反映された回路情報を出力することとしてもよく、また、図８に示した修正後のエラーセグメントｉ−１を表わす回路情報を出力することとしてもよい。なお、出力部６０６による出力形式は、ディスプレイ２３１での画面表示、プリンタ２３３での印刷出力、ＨＤＤや光ディスク２１１、フラッシュメモリなどの記憶部へのデータ出力（保存）、外部のコンピュータ装置への送信のいずれであってもよい。
【００９３】
ここで、出力部６０６によって出力される修正結果の具体例について説明する。図９は、修正結果の具体例を示す説明図である。図９において、回路情報９００は、修正部６０５によって配線構造が修正されたエラーセグメントＥｉ−１の修正結果である。なお、図面では、修正された箇所にハッチが形成されている。
【００９４】
ここでは、エラーセグメントＥｉ−１において、セグメントＳ８１を動かさずにセグメントＳ７２を引き離すことにより、セグメントＳ７２とセグメントＳ８１との配線間隔が変更されている。このため、セグメントＳ７２の両端座標（（ＸａＳ７２'，ＹａＳ７２'）−（ＸｂＳ７２'，ＹｂＳ７２'））が変更されている。さらに、セグメントＳ７２の配置位置が変更となることにより、セグメントＳ７１の終点座標（ＸｂＳ７１'，ＹｂＳ７１'）およびセグメントＳ７３の始点座標（ＸａＳ７３'，ＹａＳ７３'）が変更されている。
【００９５】
図６の説明に戻り、特定部６０１は、クロストーク解析によりエラーが発生したエラー箇所のうち、クロストークノイズ値が予め設定された閾値以上となるエラー箇所の１対のエラーセグメントを特定することとしてもよい。これにより、修正対象とするエラー箇所を、設計対象回路の誤動作を引き起こす程度のクロストークノイズが発生しているエラー箇所に絞り込むことができる。
【００９６】
また、上記閾値は、例えば、図２に示したキーボード２２１やマウス２２２などの入力装置２２０をユーザが操作することで、任意に設定可能である。具体的には、例えば、エラーセグメントのクロストークノイズ値が設計対象回路の誤動作を引き起こさない程度の値となるように閾値を設定する。
【００９７】
判定部６０７は、修正部６０５によって１対のエラーセグメントの配線構造が修正された修正後のエラー箇所のクロストークノイズ値が予め設定された閾値以上か否かを判定する機能を有する。具体的には、例えば、算出部６０３によって算出されたエラーセグメントＥｉ−１の減少量が反映されたエラー箇所Ｅｉのクロストークノイズ値が閾値以上か否かを判定する。
【００９８】
また、上記算出部６０３、決定部６０４および修正部６０５は、判定部６０７によって閾値以上と判定された場合、算出処理、決定処理および修正処理を繰り返し実行する機能を有する。すなわち、エラーセグメントのクロストークノイズ値が設計対象回路の誤動作を引き起こさない程度に改善されるまで、各機能部６０３〜６０７による処理を繰り返すこととなる。
【００９９】
（設計支援装置の設計支援処理手順）
つぎに、本実施の形態にかかる設計支援装置２００の設計支援処理手順について説明する。図１０は、設計支援装置の設計支援処理手順の一例を示すフローチャートである。図１０のフローチャートにおいて、まず、設計対象回路の回路情報およびクロストーク解析の解析結果が入力されたか否かを判断する（ステップＳ１００１）。
【０１００】
ここで、回路情報および解析結果が入力されるのを待って（ステップＳ１００１：Ｎｏ）、入力された場合（ステップＳ１００１：Ｙｅｓ）、特定部６０１により、入力された解析結果を用いて、クロストーク解析によりエラーが発生したエラー箇所のうち、クロストークノイズ値が予め設定された閾値以上となる任意のエラー箇所を特定する（ステップＳ１００２）。
【０１０１】
つぎに、特定部６０１により、特定されたエラー箇所内の任意の１対のエラーセグメントを特定し（ステップＳ１００３）、取得部６０２により、ステップＳ１００１において入力された回路情報の中から、特定された１対のエラーセグメントに関する配線構造情報を取得する（ステップＳ１００４）。
【０１０２】
このあと、算出部６０３により、取得された１対のエラーセグメントの配線構造情報に基づいて、配線構造の変更により減少するクロストークノイズ値の減少量を変更後の配線構造ごとに算出する（ステップＳ１００５）。具体的には、例えば、図７に示したテーブル７００を用いて減少量を算出してもよく、また、上記式（１）を用いて減少量を算出してもよい。
【０１０３】
つぎに、決定部６０４により、算出部６０３によって算出された算出結果に基づいて、１対のエラーセグメントの配線構造を決定する（ステップＳ１００６）。このとき、例えば、予め設定された配線構造の変更に関する変更ルールに従って、１対のエラーセグメントの配線構造を決定することとしてもよい。
【０１０４】
そして、修正部６０５により、１対のエラーセグメントの配線構造を、決定部６０４によって決定された配線構造に修正する（ステップＳ１００７）。このあと、判定部６０７により、１対のエラーセグメントの配線構造が修正された修正後のエラー箇所のクロストークノイズ値が予め設定された閾値以上か否かを判定する（ステップＳ１００８）。
【０１０５】
ここで、閾値以上と判定された場合（ステップＳ１００８：Ｙｅｓ）、ステップＳ１００３に戻り一連の処理を繰り返す。このとき、既に配線構造情報が取得された１対のエラーセグメントとは異なる他の１対のエラーセグメントを修正対象としてもよい。また、修正部６０５による修正内容が反映された配線構造情報を取得し、新たに配線構造を修正してもよい。
【０１０６】
一方、閾値未満と判定された場合（ステップＳ１００８：Ｎｏ）、クロストークノイズ値が閾値以上となるエラー箇所のうち未特定のエラー箇所があるか否かを判断する（ステップＳ１００９）。ここで、未特定のエラー箇所がある場合には（ステップＳ１００９：Ｙｅｓ）、ステップＳ１００２に戻り、特定部６０１により、未特定のエラー箇所のうち、任意のエラー箇所を特定する（ステップＳ１００２）。
【０１０７】
一方、未特定のエラー箇所がない場合には（ステップＳ１００９：Ｎｏ）、出力部６０６により、修正部６０５によって修正された修正結果を出力して（ステップＳ１０１０）、本フローチャートによる一連の処理を終了する。
【０１０８】
なお、ステップＳ１００８において、複数回（例えば、５回）連続して閾値以上と判定された場合には、それ以降ステップＳ１００３に戻ることなく強制的にステップＳ１００９に移行することとしてもよい。これにより、１つのエラー箇所に対する処理時間を削減することができるとともに、閾値未満となる修正ができないエラー箇所での無限ループを回避することができる。
【０１０９】
以上説明した本実施の形態によれば、エラー箇所内の１対のエラーセグメントの配線構造を変更することによるクロストークノイズ値の減少量を考慮して配線構造を修正することができる。これにより、配線修正によるクロストークノイズ値の削減効果を向上させることができる。
【０１１０】
また、１対のエラーセグメントのアグレッサ配線およびビクティム配線のうち、配線構造の変更により周囲の配線に与える影響が少ないビクティム配線の配線構造を優先して修正することができる。これにより、配線修正により新たなクロストークエラーが発生するなどの不具合を防ぐことができる。
【０１１１】
また、配線構造の変更に関する変更ルールを、デザインルールなどに合わせて任意に設定することができるため、設計対象回路に要求される制約を満たす配線修正をおこなうことができる。また、１対のエラーセグメントの配線構造を、クロストークノイズ値の減少量が最大となる配線構造に修正することにより、配線修正によるクロストークノイズ値の削減効果が最大となる配線構造に修正することができる。
【０１１２】
また、変更後の配線構造ごとのクロストークノイズ値の減少量を、予め作成されたテーブルの記憶内容を用いて簡易的に見積もることにより算出処理を簡素化することができる。さらに、修正対象とするエラー箇所を、設計対象回路の誤動作を引き起こす程度のクロストークノイズが発生しているエラー箇所に絞り込むことで、修正不要なエラー箇所に対する無駄な処理を削減することができる。
【０１１３】
また、本実施の形態による手法により、エラー箇所のクロストークノイズが効率的かつ効果的に改善されるため、以降におけるクロストーク解析の実行回数を少なくすることができる。この結果、クロストーク対策にかかる作業時間および作業負担の軽減化を図ることができる。さらに、バッファ挿入をおこなうことなくクロストークノイズを効率的かつ効果的に改善することができるため、タイミング制約の厳しいプロセッサにも適用することができる。
【０１１４】
このように、この設計支援プログラム、該プログラムを記録した記録媒体、設計支援装置、および設計支援方法によれば、配線構造の変更によるクロストークノイズ値の減少量を考慮してエラー箇所の配線修正をおこなうことにより、ＬＳＩ設計の作業効率を向上させ、設計期間の短縮化を図ることができる。
【０１１５】
なお、本実施の形態で説明した設計支援方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーションなどのコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネットなどのネットワークを介して配布することが可能な伝送媒体であってもよい。
【０１１６】
また、本実施の形態で説明した設計支援装置２００は、スタンダードセルやストラクチャードＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）などの特定用途向けＩＣ（以下、単に「ＡＳＩＣ」と称す。）やＦＰＧＡなどのＰＬＤ（Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ）によっても実現することができる。具体的には、たとえば、上述した設計支援装置２００の機能６０１〜６０７をＨＤＬ記述によって機能定義し、そのＨＤＬ記述を論理合成してＡＳＩＣやＰＬＤに与えることにより、設計支援装置２００を製造することができる。
【０１１７】
上述した実施の形態に関し、さらに以下の付記を開示する。
【０１１８】
（付記１）コンピュータを、
設計対象回路の中から、クロストーク解析によりエラーが発生したアグレッサ配線とビクティム配線とからなる１対のエラーセグメントを特定する特定手段、
前記特定手段によって特定されたエラーセグメントの配線構造に基づいて、当該配線構造の変更により減少するクロストークノイズ値の減少量を変更後の配線構造ごとに算出する算出手段、
前記算出手段によって算出された算出結果に基づいて、前記エラーセグメントの配線構造を決定する決定手段、
前記エラーセグメントの配線構造を前記決定手段によって決定された配線構造に修正する修正手段、
前記修正手段によって修正された修正結果を出力する出力手段、
として機能させることを特徴とする設計支援プログラム。
【０１１９】
（付記２）前記算出手段は、
前記特定手段によって特定されたエラーセグメントのビクティム配線の配線構造に基づいて、当該配線構造の変更により減少するクロストークノイズ値の減少量を変更後の配線構造ごとに算出し、
前記決定手段は、
前記算出手段によって算出された算出結果に基づいて、前記ビクティム配線の配線構造を決定することを特徴とする付記１に記載の設計支援プログラム。
【０１２０】
（付記３）前記決定手段は、
予め設定された配線構造の変更に関する変更ルールと前記算出手段によって算出された算出結果とに基づいて、前記エラーセグメントの配線構造を決定することを特徴とする付記１または２に記載の設計支援プログラム。
【０１２１】
（付記４）前記決定手段は、
前記エラーセグメントの配線構造を前記算出手段によって算出されたクロストークノイズ値の減少量が最大となる配線構造に決定することを特徴とする付記１または２に記載の設計支援プログラム。
【０１２２】
（付記５）前記算出手段は、
前記エラーセグメントの配線構造を用いて、クロストークエラーが発生する配線構造とクロストークノイズ値とを対応付けて記憶するテーブルを参照することにより、前記減少量を算出することを特徴とする付記１〜４のいずれか一つに記載の設計支援プログラム。
【０１２３】
（付記６）前記配線構造は、配線幅、配線間隔、並走距離、配線層および駆動セルの少なくともいずれかによって特徴付けられることを特徴とする付記１〜５のいずれか一つに記載の設計支援プログラム。
【０１２４】
（付記７）前記特定手段は、
前記設計対象回路の中から、クロストーク解析によりエラーが発生したエラー箇所のうちクロストークノイズ値が予め設定された閾値以上となるエラー箇所の１対のエラーセグメントを特定することを特徴とする付記１〜６のいずれか一つに記載の設計支援プログラム。
【０１２５】
（付記８）前記コンピュータを、
前記修正手段によって前記エラーセグメントの配線構造が修正された修正後のエラー箇所のクロストークノイズ値が予め設定された閾値以上か否かを判定する判定手段として機能させ、
前記算出手段は、
前記エラーセグメントの配線構造が修正された修正後のエラーセグメントの配線構造に基づいて、当該配線構造の変更により減少するクロストークノイズ値の減少量を変更後の配線構造ごとに算出することを特徴とする付記７に記載の設計支援プログラム。
【０１２６】
（付記９）付記１〜８のいずれか一つに記載の設計支援プログラムを記録したコンピュータに読み取り可能な記録媒体。
【０１２７】
（付記１０）設計対象回路の中から、クロストーク解析によりエラーが発生したアグレッサ配線とビクティム配線とからなる１対のエラーセグメントを特定する特定手段と、
前記特定手段によって特定されたエラーセグメントの配線構造に基づいて、当該配線構造の変更により減少するクロストークノイズ値の減少量を変更後の配線構造ごとに算出する算出手段と、
前記算出手段によって算出された算出結果に基づいて、前記エラーセグメントの配線構造を決定する決定手段と、
前記エラーセグメントの配線構造を、前記決定手段によって決定された配線構造に修正する修正手段と、
前記修正手段によって修正された修正結果を出力する出力手段と、
を備えることを特徴とする設計支援装置。
【０１２８】
（付記１１）設計対象回路の中から、クロストーク解析によりエラーが発生したアグレッサ配線とビクティム配線とからなる１対のエラーセグメントを特定する特定工程と、
前記特定工程によって特定されたエラーセグメントの配線構造に基づいて、当該配線構造の変更により減少するクロストークノイズ値の減少量を変更後の配線構造ごとに算出する算出工程と、
前記算出工程によって算出された算出結果に基づいて、前記エラーセグメントの配線構造を決定する決定工程と、
前記エラーセグメントの配線構造を、前記決定工程によって決定された配線構造に修正する修正工程と、
前記修正工程によって修正された修正結果を出力する出力工程と、
を含んだことを特徴とする設計支援方法。
【図面の簡単な説明】
【０１２９】
【図１】本実施の形態の概要を示す説明図である。
【図２】設計支援装置のハードウェア構成を示す説明図である。
【図３】回路情報の一例を示す説明図である。
【図４】エラー箇所の具体例を示す回路図である。
【図５】クロストーク解析の解析結果の一例を示す説明図である。
【図６】設計支援装置の機能的構成を示すブロック図である。
【図７】テーブルの記憶内容を示す説明図である。
【図８】修正部による修正例を示す説明図である。
【図９】修正結果の具体例を示す説明図である。
【図１０】設計支援装置の設計支援処理手順の一例を示すフローチャートである。
【符号の説明】
【０１３０】
２００  設計支援装置
３００，９００  回路情報
３１０  配置情報
３２０  配線情報
５００  解析結果
６０１  特定部
６０２  取得部
６０３  算出部
６０４  決定部
６０５  修正部
６０６  出力部
６０７  判定部
７００  テーブル
【図１】
0005098688.tif 000002
【図２】
0005098688.tif 000003
【図３】
0005098688.tif 000004
【図４】
0005098688.tif 000005
【図５】
0005098688.tif 000006
【図６】
0005098688.tif 000007
【図７】
0005098688.tif 000008
【図８】
0005098688.tif 000009
【図９】
0005098688.tif 000010
【図１０】
0005098688.tif 000011