(57)【要約】【課題】解析時間の短縮化を図ること。【解決手段】解析プログラム３３０ａは、コンピュータ３００に、ネット情報などから、構成情報文字列及び比較用構成情報文字列を抽出する処理を実行させる。そして、解析プログラム３３０ａは、コンピュータ３００に、抽出された比較用構成情報文字列に基づいて、ネットをグルーピングする処理を実行させる。続いて、解析プログラム３３０ａは、コンピュータ３００に、グルーピングされたネットのうちの一つのネットを解析対象として選択する処理を実行させる。【選択図】図１９
2014123332.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
プリント基板の信号品質解析の対象である、複数のネットにつき、ネットを構成する要素からトポロジ情報を抽出し、
抽出したトポロジ情報に基づいて、前記ネットをグルーピングし、
グルーピングされたネットのうちの一つのネットを解析対象として選択する
処理を実行させることを特徴とする解析プログラム。
【請求項２】
前記解析対象として選択する処理は、同一グルーピングの中で、ライン長が最も長いネットを解析対象として選択する
ことを特徴とする請求項１に記載の解析プログラム。
【請求項３】
前記トポロジ情報を抽出する処理は、前記複数のネットにつき、前記ネットを構成するラインの線幅及び線長を抽出し、
前記ネットをグルーピングする処理は、前記ネットを構成するラインの線幅及び線長が類似するネット同士をグルーピングする
ことを特徴とする請求項１または２に記載の解析プログラム。
【請求項４】
前記トポロジ情報を抽出する処理は、前記複数のネットにつき、前記ネットを構成する部品の種類を抽出し、
前記ネットをグルーピングする処理は、前記部品の種類が一致するネット同士をグルーピングする
ことを特徴とする請求項１または２に記載の解析プログラム。
【請求項５】
前記トポロジ情報を抽出する処理は、前記複数のネットにつき、前記ネットを構成する能動部品及び受動部品のモデル特性を抽出し、
前記ネットをグルーピングする処理は、前記ネットを構成する前記能動部品及び前記受動部品のモデル特性が一致するネット同士をグルーピングする
ことを特徴とする請求項１または２に記載の解析プログラム。
【請求項６】
前記トポロジ情報を抽出する処理は、前記複数のネットにつき、前記ネットに流れる信号のデータレートを抽出し、
前記ネットをグルーピングする処理は、前記ネットに流れる信号のデータレートが類似するネット同士をグルーピングする
ことを特徴とする請求項１または２に記載の解析プログラム。
【請求項７】
前記トポロジ情報を抽出する処理は、前記複数のネットにつき、前記ネットに対して実行される前記信号品質解析における条件を抽出し、
前記ネットをグルーピングする処理は、前記条件に基づいて、同一の条件で前記信号品質解析が実行されるネット同士をグルーピングする
ことを特徴とする請求項１または２に記載の解析プログラム。
【請求項８】
前記コンピュータに、
前記解析対象として選択されたネットに類似するネットの信号品質解析の結果が、ネットの信号品質解析の結果を記憶する記憶部に記憶されている場合には、前記記憶部に記憶され、かつ、前記解析対象として選択されたネットに類似するネットの信号品質解析の結果を取得し、前記解析対象として選択されたネットに類似するネットの信号品質解析の結果が前記記憶部に記憶されていない場合には、前記選択されたネットの信号品質解析を行い、該信号品質解析の結果を前記記憶部に記憶する
処理を更に実行させることを特徴とする請求項１〜７のいずれか一つに記載の解析プログラム。
【請求項９】
コンピュータが、
プリント基板の信号品質解析の対象である、複数のネットにつき、ネットを構成する要素からトポロジ情報を抽出し、
抽出したトポロジ情報に基づいて、前記ネットをグルーピングし、
グルーピングされたネットのうちの一つのネットを解析対象として選択する
処理を実行することを特徴とする解析方法。
【請求項１０】
プリント基板の信号品質解析の対象である、複数のネットにつき、ネットを構成する要素からトポロジ情報を抽出する抽出部と、
抽出したトポロジ情報に基づいて、前記ネットをグルーピングするグルーピング部と、
グルーピングされたネットのうちの一つのネットを解析対象として選択する選択部と
を有することを特徴とする解析装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、解析プログラム、解析方法及び解析装置に関する。
【背景技術】
【０００２】
プリント基板の信号品質を解析する解析プログラムがある。かかる解析プログラムは、ネットごとに信号品質の解析を行う。かかるネットとは、信号を出力するドライバ、及び、ドライバから出力された信号を配線を介して受信するレシーバ等の能動部品、信号が流れる配線、並びに、配線上に配置される抵抗、コンデンサ、コイルなどの受動部品の機能ごとの組み合わせを指す。
【０００３】
また、回路のパターン設計を行う場合に、同一または類似の回路特性を持つネットを同一グループとして、ネットをグループ化する分類プログラムがある。かかる分類プログラムの一例として、端子の位置情報などのネットの実形状の情報を用いて、ある２つのネットの一方のネットの端子と他方のネットの端子との距離が閾値以下となる場合には、かかる２つのネットを同一グループとする分類プログラムが挙げられる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１１−２２４９０２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述した解析プログラムでは、ネットごとに信号品質の解析が行われるため、プリント基板の規模によっては、数千ネットの信号品質の解析が行われる。この場合、上述した解析プログラムでは、解析に膨大な時間がかかってしまうという問題がある。
【０００６】
また、上述した分類プログラムは、回路のパターン設計を行う場合にネットをグループ化するものである。そのため、分類プログラムによるネットをグループ化する技術を、プリント基板の信号品質を解析する場合に、そのまま援用することはできない。したがって、結局は、ネットごとに信号品質の解析を行うことになるため、解析に膨大な時間がかかってしまう。
【０００７】
１つの側面では、解析時間の短縮化を図ることを目的とする。
【課題を解決するための手段】
【０００８】
本願の開示する解析プログラムは、１つの態様において、コンピュータに、プリント基板の信号品質解析の対象である、複数のネットにつき、ネットを構成する要素からトポロジ情報を抽出する処理を実行させる。また、解析プログラムは、コンピュータに、抽出したトポロジ情報に基づいて、ネットをグルーピングする処理を実行させる。また、解析プログラムは、コンピュータに、グルーピングされたネットのうちの一つのネットを解析対象として選択する処理を実行させる。
【発明の効果】
【０００９】
解析時間の短縮化を図ることができる。
【図面の簡単な説明】
【００１０】
【図１】図１は、実施例に係る解析装置の機能構成の一例を示す図である。
【図２】図２は、プリント基板の一例を示す図である。
【図３】図３は、ネット情報の一例を示す図である。
【図４】図４は、信号情報の一例を示す図である。
【図５】図５は、部品情報の一例を示す図である。
【図６】図６は、ライン情報の一例を示す図である。
【図７】図７は、解析情報テーブルの一例を示す図である。
【図８】図８は、解析条件テーブルの一例を示す図である。
【図９】図９は、モデル情報テーブルの一例を示す図である。
【図１０】図１０は、グルーピングテーブルの一例を示す図である。
【図１１】図１１は、解析結果データベースの一例を示す図である。
【図１２】図１２は、構成情報文字列を生成する処理の一例を説明するための図である。
【図１３】図１３は、比較用構成情報文字列を生成する処理の一例を説明するための図である。
【図１４】図１４は、実施例に係る解析処理の手順を示すフローチャートである。
【図１５】図１５は、実施例に係るグルーピング処理の手順を示すフローチャートである。
【図１６】図１６は、実施例に係る類似判定処理の手順を示すフローチャートである。
【図１７】図１７は、実施例に係る解析実行処理の手順を示すフローチャートである。
【図１８】図１８は、実施例に係る解析判定処理の手順を示すフローチャートである。
【図１９】図１９は、解析プログラムを実行するコンピュータを示す図である。
【発明を実施するための形態】
【００１１】
以下に、本願の開示する解析プログラム、解析方法及び解析装置の実施例を図面に基づいて詳細に説明する。なお、実施例は開示の技術を限定するものではない。
【００１２】
［解析装置の構成］
実施例に係る解析装置について説明する。図１は、実施例に係る解析装置の機能構成の一例を示す図である。図１に示すように、解析装置１０は、入力部１１と、表示部１２と、記憶部１３と、制御部１４とを有する。解析装置１０は、プリント基板の信号の品質を解析する装置である。
【００１３】
解析装置１０が解析を行う対象のプリント基板の一例について説明する。図２は、プリント基板の一例を示す図である。図２は、プリント基板１５の一部を示す。図２の例に示すように、プリント基板１５は、ＡＳＩＣ（Application  Specific  Integrated  Circuit）１６、ＤＲＡＭ（Dynamic  Random  Access  Memory）などのメモリ１７を有する。ＡＳＩＣ１６は、信号が入力される入力ピン、信号を出力する出力ピン、及び、信号が入力されるとともに信号を出力する入出力ピンなどの各種のピン１６ａを有する。また、メモリ１７は、入力ピン、出力ピン及び入出力ピンなどの各種のピン１７ａを有する。図２に示すように、ピン１６ａとピン１７ａとは、信号が流れる配線であるライン１８を介して接続される。また、ライン１８上には、抵抗、コンデンサ、コイルなどの部品１９が、例えば、信号のノイズを抑制するためなどの目的で配置される。以下、信号を出力するピン１６ａ、かかるピン１６ａから出力された信号をライン１８を介して受信するピン１７ａ、かかるピン１６ａ及びピン１７ａに接続されたライン１８、及び、ライン１８上に配置される部品１９の組み合わせを「ネット」と称する。
【００１４】
図１の説明に戻り、入力部１１は、制御部１４に情報を入力する。例えば、入力部１１は、ユーザから後述の解析処理を実行する指示である解析実行指示を受け付けて、受け付けた解析実行指示を制御部１４に入力する。ここで、解析実行指示には、解析処理を実行する際の条件である解析条件の識別子である解析条件名が、解析対象のネットに流れる信号ごとに付加される。ここでいう解析条件名とは、解析条件の名称である。
【００１５】
また、解析実行指示には、解析対象のネットに流れる信号のビットパターンが、「０」と「１」の各ビットが交互に繰り返されるビットパターンである場合には、次のような情報が付加される。すなわち、「０」と「１」の各ビットが交互に繰り返されるビットパターンであることを示す「ＵＰ繰り返し」が付加される。また、解析実行指示には、解析対象のネットに流れる信号のビットパターンが、「０」と「１」の各ビットが交互に繰り返されるビットパターンでない場合には、次のような情報が付加される。すなわち、「０」と「１」の各ビットが交互に繰り返されるビットパターン以外のビットパターンであることを示す「ランダムパターン」が付加される。
【００１６】
また、解析実行指示に「ランダムパターン」が付加された場合には、解析実行指示には、信号のビットパターン、例えば、「１０００１０１０００１０１０」が付加される。
【００１７】
また、解析実行指示に「ＵＰ繰り返し」が付加された場合には、解析実行指示には、信号の周波数、例えば、４００［ＭＨｚ］が付加される。
【００１８】
入力部１１のデバイスの一例としては、キーボードやマウスなどが挙げられる。
【００１９】
表示部１２は、各種の情報を表示する。例えば、表示部１２は、後述の解析部１４ｅの制御によりプリント基板１５の信号の品質を解析した結果である解析結果を表示する。
【００２０】
記憶部１３は、制御部１４で実行される各種プログラムを記憶する。また、記憶部１３は、ネット情報１３ａ、信号情報１３ｂ、部品情報１３ｃ、ライン情報１３ｄ、解析情報テーブル１３ｅ、解析条件テーブル１３ｆ、モデル情報テーブル１３ｇ、グルーピングテーブル１３ｈ及び解析結果データベース１３ｉを記憶する。
【００２１】
ネット情報１３ａについて、説明する。ネット情報１３ａには、プリント基板１５に含まれるネットを構成する構成要素を特定するための情報がネット毎に登録されている。例えば、ネット情報１３ａには、ピン１６ａ、１７ａ、ライン１８、部品１９を特定するための情報がネット毎に登録されている。
【００２２】
図３は、ネット情報の一例を示す図である。図３の例に示すように、ネット情報１３ａは、「ネット番号」及び「構成要素」の各項目を有する。「ネット番号」の項目には、ネットの識別子であるネット番号が登録される。図３の例は、「ネット番号」の項目に、ネット番号「Ｎ１」が登録された場合を示す。
【００２３】
「構成要素」の項目には、「ネット番号」の項目に登録されたネット番号によって特定されるネットを構成する各要素が、信号が流れる順に並べられて登録される。図３の例は、各要素が記号「，」で区切られて並べられている場合を示す。図３の例は、ネット番号「Ｎ１」によって特定されるネットを構成する要素のうち、１番目に信号が流れる要素が、回路部品番号「ＩＣ００１」によって特定されるＡＳＩＣ１６の１４８番ピンであることを示す。また、図３の例は、ＡＳＩＣ１６の１４８番ピンの位置を示す座標が、（Ｘ１，Ｙ１）であることを示す。また、図３の例は、２番目に信号が流れる要素が、後述のライン番号「Ａ１」によって特定されるライン１８であることを示す。また、図３の例は、３番目に信号が流れる要素が、回路部品番号「ＲＤ００１」によって特定される抵抗の部品１９であることを示す。また、図３の例は、回路部品番号「ＲＤ００１」によって特定される抵抗の部品１９の２番ピンに、ライン番号「Ａ１」によって特定されるライン１８が接続され、１番ピンに、ライン番号「Ａ１」によって特定されるライン１８が接続されることを示す。また、図３の例は、回路部品番号「ＲＤ００１」によって特定される抵抗の部品１９の位置を示す座標が、（Ｘ２，Ｙ２）であることを示す。また、図３の例は、４番目に信号が流れる要素が、後述のライン番号「Ａ２」によって特定されるライン１８であることを示す。また、図３の例は、５番目に信号が流れる要素が、回路部品番号「ＩＣ００２」によって特定されるメモリ１７の１３番ピンであることを示す。また、図３の例は、メモリ１７の１３番ピンの位置を示す座標が、（Ｘ３，Ｙ３）であることを示す。
【００２４】
上述したように、図３の例に示すネット情報１３ａは、プリント基板１５のネットを構成する要素の座標を含む。そのため、図３の例に示すネット情報１３ａは、ネットを構成する要素の実形状を示す情報である。
【００２５】
図１に戻り、信号情報１３ｂについて説明する。信号情報１３ｂには、プリント基板１５を流れる信号の特性が信号ごとに登録されている。図４は、信号情報の一例を示す図である。図４の例に示すように、信号情報１３ｂは、「信号名」、「ネット区分」、「信号種別」、「平衡伝送ネット」、「電源電圧［Ｖ］」及び「動作周波数［ＭＨｚ］」の各項目を有する。
【００２６】
「信号名」の項目には、信号の名称である信号名が登録される。かかる信号名は、信号を識別するための識別子である。図４の例は、信号情報１３ｂの１番目のレコードの「信号名」の項目に、信号名「ＧＮＤ」が登録された場合を示す。信号名「ＧＮＤ」によって特定される信号は、アース用のラインまたは領域に流れる信号である。また、図４の例は、信号情報１３ｂの２番目のレコードの「信号名」の項目に、信号名「ＶＣＣ」が登録された場合を示す。信号名「ＶＣＣ」によって特定される信号は、電源に接続されたラインまたは領域に流れる信号である。また、図３の例は、信号情報１３ｂの３番目のレコードの「信号名」の項目に、信号名「Ｄ００」が登録された場合を示す。信号名「Ｄ００」によって特定される信号は、２つのピンを接続するライン１８に流れる信号である。すなわち、ネットを構成するライン１８に流れる信号である。信号名「Ｄ０１」、「Ｄ０２」、「Ｄ０３」、「ＤＱＳ０Ｐ」及び「ＤＱＳ０Ｎ」についても、同様に、ネットを構成するライン１８に流れる信号である。
【００２７】
「ネット区分」の項目には、「信号名」の項目に登録された信号名によって特定される信号が流れるラインが、ネットを構成するライン１８であるか否かを示す情報が登録される。例えば、図４の例は、１番目のレコードの「ネット区分」の項目に、「アース」が登録された場合を示す。「アース」は、信号名「ＧＮＤ」によって特定される信号が流れるアース用のラインまたは領域であることを示す。すなわち、「アース」は、ネットを構成するライン１８ではないことを示す。また、図４の例は、２番目のレコードの「ネット区分」の項目に、「電源」が登録された場合を示す。「電源」は、信号名「ＶＣＣ」によって特定される信号が流れる、電源に接続されたラインまたは領域であることを示す。すなわち、「電源」は、ネットを構成するライン１８ではないことを示す。また、図４の例は、３番目のレコードの「ネット区分」の項目に、「信号」が登録された場合を示す。「信号」は、ネットを構成するライン１８であることを示す。４番目から８番目のレコードについても同様に、「ネット区分」の項目に登録された「信号」は、ネットを構成するライン１８であることを示す。
【００２８】
「信号種別」の項目には、「ネット区分」の項目に「信号」が登録された信号のうち、２本のラインに流れる２つのＰｏｓｉｔｉｖｅ信号とＮｅｇａｔｉｖｅ信号とによって１つの信号を示す差動信号については「差動」が登録される。また、「信号種別」の項目には、「ネット区分」の項目に「信号」が登録された信号のうち、１本のラインを用いて１つの信号が流れるような信号については「一般」が登録される。なお、図４の例に示す「−」は、何も登録されていないことを示す。
【００２９】
「平衡伝送ネット」の項目には、「信号種別」の項目に「差動」が登録された信号に対して対となる信号の信号名が登録される。例えば、作動信号が、信号名「ＤＱＳ０Ｐ」及び「ＤＱＳ０Ｎ」の２つの信号によって１つの信号を示すものである場合には、「ＤＱＳ０Ｐ」が「信号名」の項目に登録されたレコードの「平衡伝送ネット」の項目には、「ＤＱＳ０Ｎ」が登録される。また、「ＤＱＳ０Ｎ」が「信号名」の項目に登録されたレコードの「平衡伝送ネット」の項目には、「ＤＱＳ０Ｐ」が登録される。
【００３０】
「電源電圧［Ｖ］」の項目には、信号名「ＶＣＣ」によって特定される信号が流れるラインを介して電源から供給される電圧の大きさが登録される。図４の例は、信号名「ＶＣＣ」によって特定される信号が流れるラインを介して電源から供給される電圧の大きさが３．３［Ｖ］であることを示す。
【００３１】
「動作周波数［ＭＨｚ］」の項目には、「ネット区分」の項目に「信号」が登録された信号の周波数が登録される。例えば、図４の例は、信号名「Ｄ００」によって特定される信号の周波数が４００［ＭＨｚ］であることを示す。また、図４の例は、信号名「Ｄ０１」〜「Ｄ０３」、「ＤＱＳ０Ｐ」及び「ＤＱＳ０Ｎ」によって特定される各信号の周波数が４００［ＭＨｚ］であることを示す。
【００３２】
図１に戻り、部品情報１３ｃについて説明する。部品情報１３ｃには、ネットを構成する要素である部品に関する情報が部品ごとに登録されている。図５は、部品情報の一例を示す図である。図５の例に示すように、部品情報１３ｃは、「回路部品番号」、「部品仕様名」、「システム品種記号」、「部品ピン数」及び「値」の各項目を有する。
【００３３】
「回路部品番号」の項目には、部品の識別子である部品の番号が登録される。図５の例に示す回路部品番号「ＩＣ００１」は、ＡＳＩＣ１６の番号である。また、回路部品番号「ＩＣ００２」は、メモリ１７の番号である。また、回路部品番号「ＲＤ００１」は、抵抗の部品１９の番号である。また、回路部品番号「Ｃ００１」は、コンデンサの部品１９の番号である。
【００３４】
「部品仕様名」の項目には、「回路部品番号」の項目に登録された番号によって特定される部品の、仕様書などに記述される名称が登録される。かかる名称は、部品を製造するベンダーによって提供される。図５の例に示す「ＡＳＩＣ」は、ＡＳＩＣ１６の名称である。また、「ＭＢ８１Ｆ６４３２４２Ｂ」は、メモリ１７の名称である。また、「Ｒ３３」は、抵抗の部品１９の名称である。また、「Ｃ１０００００」は、コンデンサの部品１９の名称である。
【００３５】
「システム品種記号」の項目には、「回路部品番号」の項目に登録された番号によって特定される部品の種類を示す記号が登録される。図５の例に示す「Ｉ」は、集積回路を示す。すなわち、図５の例は、ＡＳＩＣ１６及びメモリ１７は、集積回路であることを示す。また、「Ｒ」は、抵抗を示す。また、「Ｃ」は、コンデンサを示す。
【００３６】
「部品ピン数」の項目には、「回路部品番号」の項目に登録された番号によって特定される部品が有するピンの数が登録される。図５の例は、ＡＳＩＣ１６が有するピンの数が「２４０」であることを示す。また、図５の例は、メモリ１７が有するピンの数が「８６」であることを示す。また、図５の例は、抵抗の部品１９が有するピンの数が「２」であることを示す。また、図５の例は、コンデンサの部品１９が有するピンの数が「２」であることを示す。
【００３７】
「値」の項目には、「回路部品番号」の項目に登録された番号によって特定される部品が、抵抗の部品１９である場合には、抵抗の抵抗値が登録される。また、「値」の項目には、「回路部品番号」の項目に登録された番号によって特定される部品が、コンデンサの部品１９である場合には、コンデンサの容量が登録される。図５の例は、抵抗の部品１９の抵抗値が３３［Ω］であることを示す。また、図５の例は、コンデンサの部品１９の静電容量が１０００００［ｐＦ］であることを示す。なお、「回路部品番号」の項目に登録された番号によって特定される部品が、コイルである場合には、「値」の項目に、かかるコイルのインダクタンス値が登録される。
【００３８】
図１に戻り、ライン情報１３ｄについて説明する。ライン情報１３ｄには、ラインに関する情報がラインごとに登録されている。図６は、ライン情報の一例を示す図である。図６の例に示すように、ライン情報１３ｄは、「ライン番号」、「信号名」、「層番号」、「線幅」、「始点Ｘ座標［ｍｍ］」、「始点Ｙ座標［ｍｍ］」、「終点Ｘ座標［ｍｍ］」及び「終点Ｙ座標［ｍｍ］」の各項目を有する。
【００３９】
「ライン番号」の項目には、ラインの識別子であるラインの番号であるライン番号が登録される。図６の例は、ライン情報１３ｄの１番目のレコードの「ライン番号」の項目に、ライン番号「Ａ１」が登録された場合を示す。また、図６の例は、ライン情報１３ｄの２番目のレコードの「ライン番号」の項目に、ライン番号「Ａ２」が登録された場合を示す。
【００４０】
「信号名」の項目には、「ライン番号」の項目に登録されたライン番号によって特定されるラインに流れる信号の信号名が登録される。図６の例は、ライン番号「Ａ１」によって特定されるラインに流れる信号の信号名が「Ｄ００」であることを示す。また、図６の例は、ライン番号「Ａ２」によって特定されるラインに流れる信号の信号名が「Ｄ００」であることを示す。
【００４１】
「層番号」の項目には、「ライン番号」の項目に登録されたライン番号によって特定されるラインが配置された層を特定するための層の番号である層番号が登録される。図６の例に示すライン情報１３ｄの１番目のレコードには、ライン番号「Ａ１」と、１番目の層であることを示す「Ｌ１」とが対応付けられて登録されている。そのため、図６の例は、ライン番号「Ａ１」によって特定されるラインが、１番目の層に配置されたことを示す。同様に、図６の例は、ライン番号「Ａ２」によって特定されるラインが、１番目の層に配置されたことを示す。
【００４２】
「線幅［ｍｍ］」の項目には、「ライン番号」の項目に登録されたライン番号によって特定されるラインの線幅が登録される。図６の例は、ライン番号「Ａ１」によって特定されるラインの線幅が、０．１５ｍｍであることを示す。同様に、図６の例は、ライン番号「Ａ２」によって特定されるラインの線幅が、０．１５ｍｍであることを示す。
【００４３】
「始点Ｘ座標［ｍｍ］」の項目には、「ライン番号」の項目に登録されたライン番号によって特定されるラインの始点のＸ座標が登録される。図６の例は、ライン番号「Ａ１」によって特定されるラインの始点のＸ座標が、「Ｘ１」ｍｍであることを示す。同様に、図６の例は、ライン番号「Ａ２」によって特定されるラインの始点のＸ座標が、「Ｘ２」ｍｍであることを示す。
【００４４】
「始点Ｙ座標［ｍｍ］」の項目には、「ライン番号」の項目に登録されたライン番号によって特定されるラインの始点のＹ座標が登録される。図６の例は、ライン番号「Ａ１」によって特定されるラインの始点のＹ座標が、「Ｙ１」ｍｍであることを示す。同様に、図６の例は、ライン番号「Ａ２」によって特定されるラインの始点のＹ座標が、「Ｙ２」ｍｍであることを示す。
【００４５】
「終点Ｘ座標［ｍｍ］」の項目には、「ライン番号」の項目に登録されたライン番号によって特定されるラインの終点のＸ座標が登録される。図６の例は、ライン番号「Ａ１」によって特定されるラインの終点のＸ座標が、「Ｘ２」ｍｍであることを示す。同様に、図６の例は、ライン番号「Ａ２」によって特定されるラインの終点のＸ座標が、「Ｘ３」ｍｍであることを示す。
【００４６】
「終点Ｙ座標［ｍｍ］」の項目には、「ライン番号」の項目に登録されたライン番号によって特定されるラインの終点のＹ座標が登録される。図６の例は、ライン番号「Ａ１」によって特定されるラインの終点のＹ座標が、「Ｙ２」ｍｍであることを示す。同様に、図６の例は、ライン番号「Ａ２」によって特定されるラインの終点のＹ座標が、「Ｙ３」ｍｍであることを示す。
【００４７】
図１に戻り、解析情報テーブル１３ｅについて説明する。解析情報テーブル１３ｅには、解析対象のネットに流れる信号に関する情報が信号ごとに、後述の抽出部１４ｂによって登録される。図７は、解析情報テーブルの一例を示す図である。図７の例に示すように、解析情報テーブル１３ｅは、「信号名」、「パルス種別」、「ビットパターン」、「動作周波数［ＭＨｚ］」、「データレート［Ｍｂｐｓ］」、「解析条件名」、「構成情報文字列」及び「グループ番号」の各項目を有する。
【００４８】
「信号名」の項目には、解析対象のネットに流れる信号の信号名が抽出部１４ｂによって登録される。
【００４９】
「パルス種別」の項目には、「信号名」の項目に登録された信号名に対する信号のビットパターンが、「０」と「１」の各ビットが交互に繰り返されるビットパターンである場合には、次のような情報が登録される。すなわち、「パルス種別」の項目には、「０」と「１」の各ビットが交互に繰り返されるビットパターンであることを示す「ＵＰ繰り返し」が抽出部１４ｂによって登録される。また、「パルス種別」の項目には、「信号名」の項目に登録された信号名に対する信号のビットパターンが、「０」と「１」の各ビットが交互に繰り返されるビットパターンでない場合には、次のような情報が登録される。すなわち、「パルス種別」の項目には、「０」と「１」の各ビットが交互に繰り返されるビットパターン以外のビットパターンであることを示す「ランダムパターン」が抽出部１４ｂによって登録される。
【００５０】
「ビットパターン」の項目には、「パルス種別」の項目に「ランダムパターン」が登録された信号のビットパターンが抽出部１４ｂにより登録される。図７の例は、信号名「Ｄ００」によって特定される信号のビットパターン「１０００１０１０００１０１０」が、「ビットパターン」の項目に抽出部１４ｂにより登録された場合を示す。また、図７の例は、信号名「Ｄ０１」によって特定される信号のビットパターン「１０００１０１０００１０１０」が、「ビットパターン」の項目に抽出部１４ｂにより登録された場合を示す。また、図７の例は、信号名「Ｄ０２」によって特定される信号のビットパターン「１０００１０１０００１０１０」が、「ビットパターン」の項目に抽出部１４ｂにより登録された場合を示す。
【００５１】
「動作周波数［ＭＨｚ］」の項目には、「パルス種別」の項目に「ＵＰ繰り返し」が登録された信号の周波数が抽出部１４ｂにより登録される。図７の例は、信号名「ＤＱＳ０Ｐ」及び「ＤＱＳ０Ｎ」によって特定される２つの信号のそれぞれの周波数が４００［ＭＨｚ］であることを示す。
【００５２】
「データレート［Ｍｂｐｓ］」の項目には、「パルス種別」の項目に「ランダムパターン」が登録された信号のデータレートが抽出部１４ｂにより登録される。図７の例は、信号名「Ｄ００」によって特定される信号のデータレートが８００［Ｍｂｐｓ］であることを示す。また、図７の例は、信号名「Ｄ０１」によって特定される信号のデータレートが８００［Ｍｂｐｓ］であることを示す。また、図７の例は、信号名「Ｄ０２」によって特定される信号のデータレートが８００［Ｍｂｐｓ］であることを示す。
【００５３】
「解析条件名」の項目には、「信号名」の項目に登録された信号名によって特定される信号の品質の解析を行う際の解析条件の識別子である解析条件名が、抽出部１４ｂにより登録される。なお、抽出部１４ｂにより登録される解析条件名は、入力部１１により制御部１４に入力された解析実行指示に付加される。図７の例は、信号名「Ｄ００」〜「Ｄ０２」によって特定される各信号の品質が、解析条件名「条件１」によって特定される解析条件で解析されることを示す。また、図７の例は、信号名「ＤＱＳ０Ｐ」及び「ＤＱＳ０Ｎ」によって特定される２つの信号のそれぞれの品質が、解析条件名「条件２」によって特定される解析条件で解析されることを示す。
【００５４】
「構成情報文字列」の項目には、「信号名」の項目に登録された信号名によって特定される信号が流れるネットの構成要素について、座標等の情報を含む実形状の情報が除かれた、単なる接続関係で表現した構成情報文字列が抽出部１４ｂにより登録される。構成情報文字列については後述する。
【００５５】
「グループ番号」の項目には、「構成情報文字列」の項目に登録された構成情報文字列が示す構成要素が属するグループの識別子であるグループ番号が抽出部１４ｂにより登録される。図７の例に示す１番目のレコードは、「構成情報文字列」の項目に登録された構成情報文字列「ＤＶ［ＩＣ００１．１４８］・・・ＲＶ［ＩＣ００２．１３］」が示す構成要素が、グループ番号「１」が示すグループに属することを示す。また、図７の例に示す２番目のレコードは、「構成情報文字列」の項目に登録された構成情報文字列「ＤＶ［ＩＣ００１．１４９］・・・ＲＶ［ＩＣ００２．１２］」が示す構成要素が、グループ番号「１」が示すグループに属することを示す。また、図７の例に示す３番目のレコードは、「構成情報文字列」の項目に登録された構成情報文字列「ＤＶ［ＩＣ００１．１５０］・・・ＲＶ［ＩＣ００２．１１］」が示す構成要素が、グループ番号「１」が示すグループに属することを示す。また、図７の例に示す４番目のレコードは、次の内容を示す。すなわち、かかるレコードは、「構成情報文字列」の項目に登録された構成情報文字列「ＤＩＦＦ＿ＤＶ［ＩＣ００１．２００／２０１］・・・ＤＩＦＦ＿ＲＶ［ＩＣ００２．５０／５１］」が示す構成要素がグループ番号「２」が示すグループに属することを示す。
【００５６】
図１に戻り、解析条件テーブル１３ｆについて説明する。解析条件テーブル１３ｆには、解析条件に関する情報が解析条件ごとに登録されている。図８は、解析条件テーブルの一例を示す図である。図８の例に示すように、解析条件テーブル１３ｆは、「解析条件名」、「モデリング種別」、「解析時間設定」及び「解析時間［ｎｓ］」の各項目を有する。
【００５７】
「解析条件名」の項目には、解析条件名が登録される。図８の例は、１番目のレコードの「解析条件名」の項目に、解析条件名「条件１」が登録された場合を示す。また、図８の例は、２番目のレコードの「解析条件名」の項目に、解析条件名「条件２」が登録された場合を示す。
【００５８】
「モデリング種別」の項目には、「解析条件名」の項目に登録された解析条件名によって特定される解析条件に含まれる、ネットのモデリングの種別が登録される。図８の例は、解析条件名「条件１」によって特定される解析条件に、Ｗエレメントによってネットをモデリングすることが含まれる場合を示す。また、図８の例は、解析条件名「条件２」によって特定される解析条件に、Ｗエレメントによってネットをモデリングすることが含まれる場合を示す。
【００５９】
「解析時間設定」の項目には、「解析条件名」の項目に登録された解析条件名によって特定される解析条件に含まれる、解析時間が指定された時間であるのか、自動的に設定される時間であるのかを示す情報が登録される。図８の例は、１番目のレコードの「解析時間設定」の項目に、解析時間が自動的に設定される時間であることを示す「自動設定」が登録された場合を示す。また、図８の例は、２番目のレコードの「解析時間設定」の項目に、解析時間が指定された時間であることを示す「時間指定」が登録された場合を示す。
【００６０】
「解析時間」の項目には、解析時間が指定された時間である場合に、かかる時間が登録される。図８の例は、解析条件名「条件２」によって特定される解析条件に含まれる、指定された解析時間が２００［ｎｓ］であることを示す。
【００６１】
図１に戻り、モデル情報テーブル１３ｇについて説明する。モデル情報テーブル１３ｇには、ネットを構成する要素、すなわち、部品に関する情報が部品ごとに登録されている。図９は、モデル情報テーブルの一例を示す図である。図９の例に示すように、モデル情報テーブル１３ｇは、「部品仕様名」、「部品ピン数」及び「部品ピン情報」の各項目を有する。
【００６２】
「部品仕様名」の項目には、仕様書などに記述される部品の名称が登録される。かかる名称は、部品を製造するベンダーによって提供される。
【００６３】
「部品ピン数」の項目には、「部品仕様名」の項目に登録された部品仕様名によって特定される部品が有するピンの数が登録される。図９の例は、部品仕様名「ＡＳＩＣ」によって特定されるＡＳＩＣ１６が有するピンの数が「２４０」であることを示す。また、図９の例は、部品仕様名「ＭＢ８１Ｆ６４３２４２」によって特定されるメモリ１７が有するピンの数が「８６」であることを示す。
【００６４】
「部品ピン情報」の項目には、「部品仕様名」の項目に登録された部品仕様名によって特定される部品が有する各ピンに関する情報が登録される。「部品ピン情報」の項目は、「ピン名」、「信号種別」、「モデル名」及び「モデルタイプ」の各項目を有する。
【００６５】
「ピン名」の項目には、「部品仕様名」の項目に登録された部品仕様名によって特定される部品が有する各ピンの番号が登録される。図９の例は、部品仕様名「ＡＳＩＣ」によって特定されるＡＳＩＣ１６は、１番ピンから２４０番ピンまでのピンを有することを示す。また、図９の例は、部品仕様名「ＭＢ８１Ｆ６４３２４２」によって特定されるメモリ１７は、１番ピンから８６番ピンまでのピンを有することを示す。
【００６６】
「信号種別」の項目には、「ピン名」の項目に登録された番号によって特定されるピンに流れる信号の種別を示す情報が登録される。例えば、「ピン名」の項目に登録された番号によって特定されるピンに流れる信号が、２本のラインに流れる２つの信号によって１つの信号を示す差動信号である場合には、「信号種別」の項目に「差動」が登録される。また、「ピン名」の項目に登録された番号によって特定されるピンに流れる信号が、１本のラインを用いて１つの信号が流れるような信号である場合には、「信号種別」の項目に「一般」が登録される。
【００６７】
「モデル名」の項目には、「ピン名」の項目に登録された番号によって特定されるピンのモデルの名称が登録される。かかる名称は、部品を製造するベンダーによって提供される。図９の例は、ＡＳＩＣ１６の１番ピンのモデルの名称が、「ＩＡＳＩＣ００１＿Ｔｙｐ」であることを示す。また、図９の例は、ＡＳＩＣ１６の２４０番ピンのモデルの名称が、「ＩＡＳＩＣ００２＿Ｔｙｐ」であることを示す。また、図９の例は、メモリ１７の１番ピンのモデルの名称が、「ＩＳＤＲＡＭ００１＿Ｔｙｐ」であることを示す。また、図９の例は、メモリ１７の８６番ピンのモデルの名称が、「ＩＳＤＲＡＭ０１０＿Ｔｙｐ」であることを示す。
【００６８】
「モデルタイプ」の項目には、「モデル名」の項目に登録された名前によって特定されるピンのタイプが登録される。例えば、「モデル名」の項目に登録された名前によって特定されるピンのタイプが、入力ピンである場合には、「モデルタイプ」の項目に、入力ピンであることを示す「入力」が登録される。また、「ピン名」の項目に登録された番号によって特定されるピンのタイプが、入出力ピンである場合には、「モデルタイプ」の項目に、入出力ピンであることを示す「入出力」が登録される。また、「ピン名」の項目に登録された番号によって特定されるピンのタイプが、出力ピンである場合には、「モデルタイプ」の項目に、出力ピンであることを示す「出力」が登録される。
【００６９】
図１に戻り、グルーピングテーブル１３ｈについて説明する。グルーピングテーブル１３ｈには、ネットが属するグループに関する情報がグループごとに後述のグルーピング部１４ｃにより登録される。図１０は、グルーピングテーブルの一例を示す図である。図１０の例に示すように、グルーピングテーブル１３ｈは、「グループ番号」、「パルス種別」、「ビットパターン」、「動作周波数［ＭＨｚ］」、「データレート［Ｍｂｐｓ］」、「解析条件」及び「比較用構成情報文字列」の各項目を有する。
【００７０】
「グループ番号」の項目には、グループ番号がグルーピング部１４ｃにより登録される。
【００７１】
「パルス種別」の項目には、「グループ番号」の項目に登録されたグループ番号によって特定されるグループに属するネットに流れる信号のビットパターンが「０」と「１」の各ビットが交互に繰り返されるビットパターンである場合には、次の情報が登録される。すなわち、「パルス種別」の項目には、「０」と「１」の各ビットが交互に繰り返されるビットパターンであることを示す「ＵＰ繰り返し」がグルーピング部１４ｃによって登録される。また、「グループ番号」の項目に登録されたグループ番号によって特定されるグループに属するネットに流れる信号のビットパターンが「０」と「１」の各ビットが交互に繰り返されるビットパターンでない場合には、次の情報が「パルス種別」の項目に登録される。すなわち、「パルス種別」の項目に、「０」と「１」の各ビットが交互に繰り返されるビットパターン以外のビットパターンであることを示す「ランダムパターン」がグルーピング部１４ｃによって登録される。
【００７２】
「ビットパターン」の項目には、「パルス種別」の項目に「ランダムパターン」が登録されたグループに属するネットを流れる信号のビットパターンがグルーピング部１４ｃにより登録される。図１０の例は、「パルス種別」の項目に「ランダムパターン」が登録されたグループに属するネットを流れる信号のビットパターン「１０００１０１０００１０１０」が、「ビットパターン」の項目にグルーピング部１４ｃにより登録された場合を示す。
【００７３】
「動作周波数［ＭＨｚ］」の項目には、「パルス種別」の項目に「ＵＰ繰り返し」が登録されたグループに属するネットを流れる信号の周波数がグルーピング部１４ｃにより登録される。図１０の例は、「パルス種別」の項目に「ＵＰ繰り返し」が登録されたグループに属するネットを流れる信号の周波数が４００［ＭＨｚ］であることを示す。
【００７４】
「データレート［Ｍｂｐｓ］」の項目には、「パルス種別」の項目に「ランダムパターン」が登録されたグループに属するネットを流れる信号のデータレートがグルーピング部１４ｃにより登録される。図１０の例は、「パルス種別」の項目に「ランダムパターン」が登録されたグループに属するネットを流れる信号のデータレートが、８００［Ｍｂｐｓ］であることを示す。
【００７５】
「解析条件名」の項目には、「グループ番号」の項目に登録されたグループ番号によって特定されるグループに属するネットの解析を行う際の解析条件の識別子である解析条件名が、グルーピング部１４ｃにより登録される。図１０の例は、グループ番号「１」によって特定されるグループに属するネットを流れる信号の品質が、解析条件名「条件１」によって特定される解析条件で解析されることを示す。また、図１０の例は、グループ番号「２」によって特定されるグループに属するネットを流れる信号の品質が、解析条件名「条件２」によって特定される解析条件で解析されることを示す。
【００７６】
「比較用構成情報文字列」の項目には、「グループ番号」の項目に登録されたグループ番号によって特定されるグループに属するネットを文字列で表した比較用構成情報文字列がグルーピング部１４ｃにより登録される。「比較用構成情報文字列」の項目に登録された比較用構成情報文字列は、同一のグループに属するか否かを判定する際にグルーピング部１４ｃによって新たに生成された比較用構成情報文字列と比較される。比較用構成情報文字列については後述する。
【００７７】
図１に戻り、解析結果データベース１３ｉについて説明する。解析結果データベース１３ｉには、ネットが属するグループに関する情報に対応付けて、プリント基板１５を流れる信号の品質の解析の結果がグループごとに後述の解析部１４ｅにより登録される。図１１は、解析結果データベースの一例を示す図である。図１１の例に示すように、解析結果データベース１３ｉは、「グループ番号」、「パルス種別」、「ビットパターン」、「動作周波数［ＭＨｚ］」、「データレート［Ｍｂｐｓ］」、「解析条件」、「比較用構成情報文字列」及び「解析結果」の各項目を有する。
【００７８】
解析結果データベース１３ｉの「グループ番号」、「パルス種別」、「ビットパターン」、「動作周波数［ＭＨｚ］」、「データレート［Ｍｂｐｓ］」、「解析条件」及び「比較用構成情報文字列」の各項目には、解析部１４ｅにより、次の情報が登録される。すなわち、解析部１４ｅにより、先の図１０に示すグルーピングテーブル１３ｈの同一の項目名の項目に登録された内容が全て登録される。
【００７９】
「解析結果」の項目には、解析結果が解析部１４ｅにより登録される。「解析結果」の項目は、「レベル」、「段付き」、「波形割れ」、「ＯＳ（Over  Shoot）／ＵＳ（Under  Shoot）」及び「Ｔｒ／Ｔｆ」の各項目を有する。
【００８０】
「レベル」の項目には、ネットに流れる信号の「１」を示す部分が所定条件を満たすとともに、「０」を示す部分が所定条件を満たす場合には、信号の品質の解析結果が良好であることを示す「ＯＫ」が解析部１４ｅにより登録される。また、「レベル」の項目には、ネットに流れる信号の「１」を示す部分が所定条件を満たさないか、または、「０」を示す部分が所定条件を満たさない場合には、信号の品質の解析結果が不良であることを示す「ＮＧ」が解析部１４ｅにより登録される。例えば、信号の「１」を示す部分の電圧が、所定時間、所定の閾値を超えており、かつ、信号の「０」を示す部分の電圧が、所定時間、所定の閾値を下回っている場合には、「レベル」の項目に解析部１４ｅにより「ＯＫ」が登録される。また、信号の「１」を示す部分の電圧が、所定時間、所定の閾値を超えていないか、または、信号の「０」を示す部分の電圧が、所定時間、所定の閾値を下回っていない場合には、「レベル」の項目に解析部１４ｅにより「ＮＧ」が登録される。
【００８１】
「段付き」の項目には、クロック信号の波形の状態に応じて、解析部１４ｅにより「ＯＫ」または「ＮＧ」が登録される。例えば、ライン１８を流れるクロック信号が階段状になっている場合には、「段付き」の項目に解析部１４ｅにより「ＮＧ」が登録される。一方、ライン１８を流れるクロック信号が階段状になっていない場合には、「段付き」の項目に解析部１４ｅにより「ＯＫ」が登録される。
【００８２】
「波形割れ」の項目には、クロック信号及びデータ信号の少なくとも一方にリンギングが発生して、信号の波形が正常な波形でない場合には、解析部１４ｅにより、「ＮＧ」が登録される。一方、クロック信号及びデータ信号の両信号にリンギングが発生しておらず、信号の波形が正常な波形である場合には、「波形割れ」の項目に、解析部１４ｅにより、「ＯＫ」が登録される。
【００８３】
「ＯＳ／ＵＳ」の項目には、クロック信号及びデータ信号の少なくとも一方にオーバーシュートが発生して電圧が所定の上限値を超えた場合、又は、アンダーシュートが発生して電圧が所定の下限値を下回った場合には、解析部１４ｅにより「ＮＧ」が登録される。一方、クロック信号及びデータ信号の両信号の電圧が、上限値から下限値までの範囲内である場合には、「ＯＳ／ＵＳ」の項目に、解析部１４ｅにより、「ＯＫ」が登録される。
【００８４】
「Ｔｒ／Ｔｆ」の項目には、クロック信号及びデータ信号の少なくとも一方の信号の立ち上がり時間が所定の時間Ｔｒを超えた場合、または、立ち下がり時間が所定の時間Ｔｆを超えた場合には、解析部１４ｅにより、「ＮＧ」が登録される。一方、クロック信号及びデータ信号の両信号の立ち上がり時間が所定の時間Ｔｒ以下であり、かつ、立ち下がり時間が所定の時間Ｔｆ以下である場合には、解析部１４ｅにより、「ＯＫ」が登録される。
【００８５】
図１に戻り、記憶部１３は、例えば、フラッシュメモリなどの半導体メモリ素子、または、ハードディスク、光ディスクなどの記憶装置である。なお、記憶部１３は、上記の種類の記憶装置に限定されるものではなく、ＲＡＭ（Random  Access  Memory)、ＲＯＭ（Read  Only  Memory)であってもよい。
【００８６】
制御部１４は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、これらによって種々の処理を実行する。図１に示すように、制御部１４は、取得部１４ａと、抽出部１４ｂと、グルーピング部１４ｃと、選択部１４ｄと、解析部１４ｅとを有する。
【００８７】
取得部１４ａは、各種の情報を取得する。取得部１４ａの一態様について説明する。例えば、取得部１４ａは、入力部１１から解析実行指示が入力されると、まず、解析実行指示に付加された、解析対象のネットに流れる信号ごとの解析条件名を取得する。そして、取得部１４ａは、取得した解析条件名に対応する解析条件（「モデリング種別」、「解析時間設定」、「解析時間［ｎｓ］」の各項目の登録内容）を解析条件テーブル１３ｆから取得する。
【００８８】
そして、取得部１４ａは、ネット情報１３ａを取得する。続いて、取得部１４ａは、信号情報１３ｂを取得する。続いて、取得部１４ａは、部品情報１３ｃを取得する。その後、取得部１４ａは、ライン情報１３ｄを取得する。
【００８９】
抽出部１４ｂは、プリント基板１５の信号の品質の解析の対象である、複数のネットにつき、ネットを構成する要素を含むネット情報１３ａなどから、次の処理を行う。すなわち、抽出部１４ｂは、ネットを構成する要素の位置情報を含まない、要素の接続関係を示す情報である後述する構成情報文字列及び比較用構成情報文字列を生成する。すなわち、抽出部１４ｂは、ネット情報１３ａなどから、構成情報文字列及び比較用構成情報文字列を抽出する。以下の説明では、構成情報文字列及び比較用構成情報文字列は、要素の接続形態を示す情報であるため、「トポロジ情報」とも称される。
【００９０】
抽出部１４ｂの一態様について説明する。例えば、抽出部１４ｂは、取得部１４ａによりネット情報１３ａ、信号情報１３ｂ、部品情報１３ｃ及びライン情報１３ｄが取得されると、次の処理を行う。すなわち、抽出部１４ｂは、ネット情報１３ａの全レコードのうち、未選択のレコードがあるか否かを判定する。未選択のレコードがある場合には、抽出部１４ｂは、未選択のレコードを１つ選択する。例えば、先の図３に示すネット情報１３ａの全レコードのうち、１番目のレコードが未選択である場合には、抽出部１４ｂは、１番目のレコードを選択する。
【００９１】
そして、抽出部１４ｂは、選択したレコードが示すネットに流れる信号の信号名を特定する。かかる信号名を特定する処理の一例について説明する。抽出部１４ｂは、選択したレコードが示すネットを構成する要素を、選択したレコードの「構成要素」の項目の登録内容から取得する。例えば、図３に示すネット情報１３ａの１番目のレコードを選択した場合には、抽出部１４ｂは、選択したレコードの「構成要素」の項目の登録内容から、次のような要素を取得する。すなわち、抽出部１４ｂは、１番目に信号が流れる要素であるＡＳＩＣ１６の１４８番ピン、２番目に信号が流れる要素であるライン番号「Ａ１」によって特定されるライン１８、３番目に信号が流れる要素である抵抗の部品１９を取得する。これに加えて、抽出部１４ｂは、４番目に信号が流れる要素であるライン番号「Ａ２」によって特定されるライン１８、５番目に信号が流れる要素であるメモリ１７の１３番ピンを取得する。続いて、抽出部１４ｂは、取得した要素のうち、ライン１８のライン番号を特定する。例えば、ライン番号「Ａ１」によって特定されるライン１８、及び、ライン番号「Ａ２」によって特定されるライン１８を取得した場合には、抽出部１４ｂは、ライン番号「Ａ１」及び「Ａ２」を特定する。
【００９２】
そして、特定したライン番号が１つである場合には、抽出部１４ｂは、特定したライン番号が「ライン番号」の項目に登録されたレコードをライン情報１３ｄの全レコードから特定し、特定したレコードの「信号名」の項目に登録された信号名を特定する。一方、特定したライン番号が複数である場合には、抽出部１４ｂは、特定した複数のライン番号のうちいずれかのライン番号が「ライン番号」の項目に登録されたレコードをライン情報１３ｄの全レコードから特定する。そして、抽出部１４ｂは、特定したレコードの「信号名」の項目に登録された信号名を特定する。ここで、特定したライン番号が複数であっても、同一のネットでは、同一の信号が流れるため、いずれのライン番号を用いても特定する信号名は同一となる。例えば、特定したライン番号が「Ａ１」及び「Ａ２」の複数である場合には、抽出部１４ｂは、「Ａ１」が「ライン番号」の項目に登録されたレコードをライン情報１３ｄの全レコードから特定する。そして、抽出部１４ｂは、特定したレコード（図６の例に示す１番目のレコード）の「信号名」の項目に登録された信号名「Ｄ００」を特定する。なお、抽出部１４ｂは、「Ａ２」が「ライン番号」の項目に登録されたレコードをライン情報１３ｄの全レコードから特定した場合であっても、同様に、信号名「Ｄ００」を特定することができる。上述したような処理を行うことで、抽出部１４ｂは、選択したレコードが示すネットに流れる信号の信号名を特定することができる。
【００９３】
続いて、抽出部１４ｂは、特定した信号名が「信号名」の項目に登録されたレコードを信号情報１３ｂの全レコードから特定し、特定したレコードの「ネット区分」の項目に「信号」が登録されているか否かを判定する。これにより、抽出部１４ｂは、特定した信号名によって特定される信号が流れるラインが、ネットを構成するライン１８であるか否かを判定することができる。
【００９４】
特定したレコードの「ネット区分」の項目に「信号」が登録されていない場合には、特定した信号名によって特定される信号が流れるラインが、ネットを構成するライン１８でないため、抽出部１４ｂは、次の処理を行う。すなわち、抽出部１４ｂは、ネット情報１３ａの全レコードのうち未選択のレコードがあるか否かを判定する上述した処理を再び行い、かかる処理以降の処理を再び行う。
【００９５】
一方、特定したレコードの「ネット区分」の項目に「信号」が登録されている場合には、特定した信号名によって特定される信号が流れるラインが、ネットを構成するライン１８であるため、抽出部１４ｂは、解析情報テーブル１３ｅに各種情報を登録する。かかる各種情報を登録する処理の一例について説明する。例えば、抽出部１４ｂは、新しいレコードを解析情報テーブル１３ｅに追加する。そして、抽出部１４ｂは、追加したレコードの「信号名」の項目に、特定した信号名を登録する。また、抽出部１４ｂは、追加したレコードの「パルス種別」の項目に、「信号名」の項目に登録された信号名によって特定される信号のビットパターンに対応する「ＵＰ繰り返し」または「ランダムパターン」を登録する。なお、「ＵＰ繰り返し」及び「ランダムパターン」は、解析実行指示に付加されたものである。また、抽出部１４ｂは、追加したレコードの「パルス種別」の項目に「ランダムパターン」が登録された場合には、「信号名」の項目に登録された信号名によって特定される信号のビットパターンを登録する。なお、かかるビットパターンは、解析実行指示に付加されたものである。また、抽出部１４ｂは、追加したレコードの「パルス種別」の項目に「ＵＰ繰り返し」が登録された場合には、追加したレコードの「動作周波数［ＭＨｚ］」の項目に、「信号名」の項目に登録された信号名によって特定される信号の周波数を登録する。なお、かかる周波数は、解析実行指示に付加されたものである。また、抽出部１４ｂは、追加したレコードの「パルス種別」の項目に「ランダムパターン」が登録された場合には、追加したレコードの「データレート［Ｍｂｐｓ］」の項目に、「信号名」の項目に登録された信号名によって特定される信号のデータレートを登録する。また、抽出部１４ｂは、取得部１４ａにより取得された解析条件名を、追加したレコードの「解析条件名」の項目に登録する。上述したような処理を行うことで、抽出部１４ｂは、解析情報テーブル１３ｅに各種情報を登録することができる。
【００９６】
続いて、抽出部１４ｂは、ネット情報１３ａの選択したレコードが示すネットを構成する構成要素に基づいて、次の処理を行う。すなわち、抽出部１４ｂは、ネットを構成する要素の位置情報を含まない、要素の接続関係を示す情報である構成情報文字列を生成する。ここで、図１２を参照して、構成情報文字列を生成する処理の一例について説明する。図１２は、構成情報文字列を生成する処理の一例を説明するための図である。図１２の例には、選択したレコードの「構成要素」の項目に登録された各要素の接続関係を示す文字列であって、部品の位置情報などのネットの実形状を示す文字列３０が示されている。文字列３０は、先の図３の例に示すネット情報１３ａの１番目のレコードの「構成要素」の項目に登録された内容と同一である。そのため、文字列３０についての詳細については説明を省略する。
【００９７】
図１２の例に示す場合、抽出部１４ｂは、１番目に信号が流れる要素の情報「ＩＣ００１．１４８（Ｘ１，Ｙ１）」から、座標を除いた情報「ＩＣ００１．１４８」を生成する。ここで、１番目に信号が流れる要素は、信号を出力するドライバである。そのため、抽出部１４ｂは、ドライバであることを示す「ＤＶ」と「ＩＣ００１．１４８」を結合して、「ＤＶ［ＩＣ００１．１４８］」という文字列を生成する。
【００９８】
次に、抽出部１４ｂは、２番目に信号が流れる要素の情報「Ａ１」について、ライン情報１３ｄの内容から、「Ａ１」によって特定されるラインが配置された層は、「Ｌ１」によって特定される１番目の層であることを特定する。また、抽出部１４ｂは、「Ａ１」について、ライン情報１３ｄの内容から、「Ａ１」によって特定されるラインの線幅が、０．１５［ｍｍ］であることを特定する。また、抽出部１４ｂは、「Ａ１」について、ライン情報１３ｄの内容から、「Ａ１」によって特定されるラインの長さを算出する。例えば、抽出部１４ｂは、「始点Ｘ座標［ｍｍ］」、「始点Ｙ座標［ｍｍ］」、「終点Ｘ座標［ｍｍ］」及び「終点Ｙ座標［ｍｍ］」の４つの項目に登録された値からラインの長さを算出する。以下、「Ａ１」によって特定されるラインの長さが、８．８６３［ｍｍ］である場合について説明する。そして、抽出部１４ｂは、ラインであることを示す「ＬＮ」と、１番目の層であることを示す「Ｌ１」と、ラインの線幅を示す「０．１５」と、ラインの長さを示す「８．８６３」とを結合して、次の文字列を生成する。すなわち、抽出部１４ｂは、「ＬＮ［Ｌ１（０．１５／８．８６３）］」という文字列を生成する。
【００９９】
そして、抽出部１４ｂは、３番目に信号が流れる要素の情報「ＲＤ００１．２／１（Ｘ２，Ｙ２）」から、座標を除いた情報「ＲＤ００１．２／１」を生成する。ここで、部品情報１３ｃでは、回路部品番号「ＲＤ００１」が、抵抗を示す「Ｒ」と対応付けられて登録されている。そのため、抽出部１４ｂは、部品情報１３ｃの内容から、回路部品番号「ＲＤ００１」が示す部品は、抵抗の部品１９であると特定する。抵抗の部品１９であると特定した場合には、抽出部１４ｂは、部品情報１３ｃの内容から、回路部品番号「ＲＤ００１」に対応する［値］の項目に登録された抵抗値３３［Ω］を特定する。そして、抽出部１４ｂは、抵抗の部品１９であることを示す「Ｒ」と、座標を除いた情報「ＲＤ００１．２／１」と、抵抗値を示す「３３」とを結合して、「Ｒ［ＲＤ００１．２／１（３３）］」という文字列を生成する。
【０１００】
続いて、抽出部１４ｂは、４番目に信号が流れる要素の情報「Ａ２」について、ライン情報１３ｄの内容から、「Ａ２」によって特定されるラインが配置された層は、「Ｌ１」によって特定される１番目の層であることを特定する。また、抽出部１４ｂは、「Ａ２」について、ライン情報１３ｄの内容から、「Ａ２」によって特定されるラインの線幅が、０．１５［ｍｍ］であることを特定する。また、抽出部１４ｂは、「Ａ２」について、ライン情報１３ｄの内容から、「Ａ２」によって特定されるラインの長さを算出する。例えば、抽出部１４ｂは、「始点Ｘ座標［ｍｍ］」、「始点Ｙ座標［ｍｍ］」、「終点Ｘ座標［ｍｍ］」及び「終点Ｙ座標［ｍｍ］」の４つの項目に登録された値からラインの長さを算出する。以下、「Ａ２」によって特定されるラインの長さが、６．９１２［ｍｍ］である場合について説明する。そして、抽出部１４ｂは、ラインであることを示す「ＬＮ」と、１番目の層であることを示す「Ｌ１」と、ラインの線幅を示す「０．１５」と、ラインの長さを示す「６．９１２」とを結合して、次の文字列を生成する。すなわち、抽出部１４ｂは、「ＬＮ［Ｌ１（０．１５／６．９１２）］」という文字列を生成する。
【０１０１】
次に、抽出部１４ｂは、５番目、すなわち、最後に信号が流れる要素の情報「ＩＣ００２．１３（Ｘ３，Ｙ３）」から、座標を除いた情報「ＩＣ００２．１３」を生成する。ここで、最後に信号が流れる要素は、信号を受信するレシーバである。そのため、抽出部１４ｂは、レシーバであることを示す「ＲＶ」と「ＩＣ００２．１３」を結合して、「ＲＶ［ＩＣ００２．１３］」という文字列を生成する。
【０１０２】
そして、抽出部１４ｂは、生成した文字列を信号が流れる順に並べて、構成情報文字列３１を生成する。すなわち、抽出部１４ｂは、「ＤＶ［ＩＣ００１．１４８］ＬＮ［Ｌ１（０．１５／８．８６３）］Ｒ［ＲＤ００１．２／１（３３）］ＬＮ［Ｌ１（０．１５／６．９１２）］ＲＶ［ＩＣ００２．１３］」という構成情報文字列３１を生成する。上述したように処理によって、抽出部１４ｂは、トポロジ情報である構成情報文字列を生成することができる。すなわち、抽出部１４ｂは、ネット情報１３ａなどから、トポロジ情報である構成情報文字列を抽出することができる。
【０１０３】
その後、抽出部１４ｂは、生成した構成情報文字列を解析情報テーブル１３ｅの「構成情報文字列」の項目に登録する。
【０１０４】
そして、抽出部１４ｂは、ネット情報１３ａの全レコードのうち未選択のレコードを１つ選択して、構成情報文字列を生成し、生成した構成情報文字列を解析情報テーブル１３ｅに登録する上述した処理を未選択のレコードがなくなるまで繰り返し行う。これにより、解析情報テーブル１３ｅには、「ネット区分」の項目に「信号」が登録されたネット数分のレコードが登録される。
【０１０５】
一方、ネット情報１３ａの全レコードのうち未選択のレコードがない場合には、抽出部１４ｂは、解析情報テーブル１３ｅの全レコードのうち、未選択のレコードがあるか否かを判定する。未選択のレコードがある場合には、抽出部１４ｂは、未選択のレコードを１つ選択する。例えば、先の図７に示す解析情報テーブル１３ｅの全レコードのうち、１番目のレコードが未選択である場合には、抽出部１４ｂは、１番目のレコードを選択する。また、抽出部１４ｂは、後述のグルーピング部１４ｃによりグルーピングテーブル１３ｈにレコードが追加された場合にも、解析情報テーブル１３ｅの全レコードのうち、未選択のレコードがあるか否かを判定する。また、抽出部１４ｂは、後述のグルーピング部１４ｃによりグルーピングテーブル１３ｈのレコードが更新された場合にも、解析情報テーブル１３ｅの全レコードのうち、未選択のレコードがあるか否かを判定する。更に、抽出部１４ｂは、グルーピングテーブル１３ｈのレコードが示すネットのラインの線長の合計が、解析情報テーブル１３ｅのレコードが示すネットのラインの線長の合計以下であると判定された場合にも、次の処理を行う。すなわち、抽出部１４ｂは、解析情報テーブル１３ｅの全レコードのうち、未選択のレコードがあるか否かを判定する。
【０１０６】
続いて、抽出部１４ｂは、選択したレコードの「パルス種別」、「ビットパターン」、「動作周波数［ＭＨｚ］」、「データレート［Ｍｂｐｓ］」、「解析条件名」及び「構成情報文字列」の各項目の登録内容を取得する。例えば、先の図７に示す場合において、１番目のレコードを選択した場合には、抽出部１４ｂは、「パルス種別」の項目に登録された「ランダムパターン」を取得する。また、抽出部１４ｂは、「ビットパターン」の項目に登録された「１０００１０１０００１０１０」を取得する。また、抽出部１４ｂは、「動作周波数［ＭＨｚ］」の項目には、何も登録されていないので、「動作周波数［ＭＨｚ］」の項目からは何も取得しない。また、抽出部１４ｂは、「データレート［Ｍｂｐｓ］」の項目に登録された８００［Ｍｂｐｓ］を取得する、また、抽出部１４ｂは、「解析条件名」の項目に登録された「条件１」を取得する。また、抽出部１４ｂは、「構成情報文字列」の項目に登録された構成情報文字列を取得する。すなわち、抽出部１４ｂは、「ＤＶ［ＩＣ００１．１４８］ＬＮ［Ｌ１（０．１５／８．８６３）］Ｒ［ＲＤ００１．２／１（３３）］ＬＮ［Ｌ１（０．１５／６．９１２）］ＲＶ［ＩＣ００２．１３］」という構成情報文字列を取得する。
【０１０７】
そして、抽出部１４ｂは、取得した構成情報文字列を比較用構成情報文字列に変換して、比較用構成情報文字列を生成する。例えば、抽出部１４ｂは、要素が集積回路の部品である場合には、かかる要素を示す文字列の一部をモデルの名称に変換する。また、抽出部１４ｂは、要素が抵抗、コンデンサ、コイルなどの部品１９である場合には、要素を示す文字列の一部を抵抗値、静電容量、インダクタンス値に変換する。ここで、図１３を参照して、比較用構成情報文字列を生成する処理の一例について説明する。図１３は、比較用構成情報文字列を生成する処理の一例を説明するための図である。図１３の例には、抽出部１４ｂにより取得された構成情報文字列３２が示されている。構成情報文字列３２は、先の図１２の例に示す構成情報文字列３１と同一である。
【０１０８】
図１３の例に示す構成情報文字列３２を取得した場合、抽出部１４ｂは、次の処理を行う。すなわち、抽出部１４ｂは、１番目に信号が流れる要素の情報「ＤＶ［ＩＣ００１．１４８］」が示すＡＳＩＣ１６を、部品情報１３ｃの内容から集積回路の部品であると特定する。集積回路の部品であると特定した場合には、抽出部１４ｂは、「ＤＶ［ＩＣ００１．１４８］」が示すＡＳＩＣ１６の１４８番ピンに対応するモデルの名称「ＩＡＳＩＣ００３＿Ｔｙｐ」をモデル情報テーブル１３ｇから取得する。そして、抽出部１４ｂは、１番目に信号が流れる要素の情報「ＤＶ［ＩＣ００１．１４８］」の「ＩＣ００１．１４８」の部分を、取得したモデルの名称「ＩＡＳＩＣ００３＿Ｔｙｐ」で変換する。これにより、抽出部１４ｂは、「ＤＶ［ＩＡＳＩＣ００３＿Ｔｙｐ］」という文字列を生成する。また、抽出部１４ｂは、５番目に信号が流れる要素の情報「ＲＶ［ＩＣ００２．１３］」が示すメモリ１７を、部品情報１３ｃの内容から集積回路の部品であると特定する。集積回路の部品であると特定した場合には、抽出部１４ｂは、「ＲＶ［ＩＣ００２．１３］」が示すメモリ１７の１３番ピンに対応するモデルの名称「ＩＳＤＲＡＭ００１＿Ｔｙｐ」をモデル情報テーブル１３ｇから取得する。そして、抽出部１４ｂは、５番目に信号が流れる要素の情報「ＲＶ［ＩＣ００２．１３］」の「ＩＣ００２．１３」の部分を、取得したモデルの名称「ＩＳＤＲＡＭ００１＿Ｔｙｐ」で変換する。これにより、抽出部１４ｂは、「ＲＶ［ＩＳＤＲＡＭ００１＿Ｔｙｐ］」という文字列を生成する。このようにして、抽出部１４ｂは、後述のグルーピング部１４ｃなどで比較を行う場合の比較対象となるモデルの名称を含む文字列を生成することができる。
【０１０９】
次に、抽出部１４ｂは、３番目に信号が流れる要素の情報「Ｒ［ＲＤ００１．２／１（３３）］」が示す部品を、部品情報１３ｃの内容から抵抗の部品１９であると特定する。抵抗の部品１９であると特定した場合には、抽出部１４ｂは、「Ｒ［ＲＤ００１．２／１（３３）］」が示す抵抗の部品１９の抵抗値３３［Ω］を残し、「ＲＤ００１．２／１」を削除して、「Ｒ［３３］」という文字列を生成する。
【０１１０】
そして、抽出部１４ｂは、生成した文字列で構成情報文字列３２を変換して、比較用構成情報文字列３３を生成する。すなわち、抽出部１４ｂは、「ＤＶ［ＩＡＳＩＣ００３＿Ｔｙｐ］ＬＮ［Ｌ１（０．１５／８．８６３）］Ｒ［３３］ＬＮ［Ｌ１（０．１５／６．９１２）］ＲＶ［ＩＳＤＲＡＭ００１＿Ｔｙｐ］」という比較用構成情報文字列３３を生成する。上述したように処理によって、抽出部１４ｂは、後述のグルーピング部１４ｃなどで比較を行う場合に用いられる情報以外の情報が、より除外された比較用構成情報文字列を生成することができる。すなわち、抽出部１４ｂは、より少ない情報量で比較を行うことができる比較用構成情報文字列を生成することができる。
【０１１１】
抽出部１４ｂは、解析情報テーブル１３ｅの全レコードのうち未選択のレコードがなくなるまで、未選択のレコードを選択し、上述した比較用構成情報文字列を生成する処理を繰り返し行う。これにより、「ネット区分」の項目に「信号」が登録されたネット数分の比較用構成情報文字列が生成される。
【０１１２】
図１の説明に戻る。グルーピング部１４ｃは、抽出部１４ｂにより抽出された比較用構成情報文字列に基づいて、ネットをグルーピングする。グルーピング部１４ｃの一態様について説明する。例えば、グルーピング部１４ｃは、抽出部１４ｂにより比較用構成情報文字列が生成されるたびに、次のような処理を行う。すなわち、グルーピング部１４ｃは、グルーピングテーブル１３ｈの全レコードのうち、未選択のレコードがあるか否かを判定する。なお、グルーピングテーブル１３ｈは、グルーピング部１４ｃによりレコードが登録されることでレコード件数が増加するテーブルである。そのため、グルーピングテーブル１３ｈに、グルーピング部１４ｃによりレコードが登録されていない場合には、選択するレコードがない。この場合、グルーピング部１４ｃは、未選択のレコードがないと判定する。
【０１１３】
未選択のレコードがある場合には、グルーピング部１４ｃは、未選択のレコードを１つ選択する。そして、グルーピング部１４ｃは、選択したレコードの「パルス種別」の項目の登録内容と、先の抽出部１４ｂにより取得された「パルス種別」の項目の登録内容とが一致するか否かを判定する。一致しない場合には、グルーピング部１４ｃは、グルーピングテーブル１３ｈの全レコードのうち、未選択のレコードがあるか否かを判定する上述した処理を再び行い、かかる処理以降の処理を再び行う。
【０１１４】
一方、一致する場合には、グルーピング部１４ｃは、次の処理を行う。すなわち、グルーピング部１４ｃは、選択したレコードの「ビットパターン」の項目の登録内容と、抽出部１４ｂにより取得された「ビットパターン」の項目の登録内容とが一致するか否かを判定する。一致しない場合には、グルーピング部１４ｃは、グルーピングテーブル１３ｈの全レコードのうち、未選択のレコードがあるか否かを判定する上述した処理を再び行い、かかる処理以降の処理を再び行う。
【０１１５】
一方、一致する場合には、グルーピング部１４ｃは、次の処理を行う。すなわち、グルーピング部１４ｃは、選択したレコードの「動作周波数［ＭＨｚ］」の項目の登録内容と、抽出部１４ｂにより取得された「動作周波数［ＭＨｚ］」の項目の登録内容とが一致するか否かを判定する。一致しない場合には、グルーピング部１４ｃは、グルーピングテーブル１３ｈの全レコードのうち、未選択のレコードがあるか否かを判定する上述した処理を再び行い、かかる処理以降の処理を再び行う。
【０１１６】
一方、一致する場合には、グルーピング部１４ｃは、次の処理を行う。すなわち、グルーピング部１４ｃは、選択したレコードの「データレート」の項目の登録内容と、抽出部１４ｂにより取得された「データレート」の項目の登録内容との差が所定の閾値内であるか否かを判定する。閾値内でない場合には、グルーピング部１４ｃは、グルーピングテーブル１３ｈの全レコードのうち、未選択のレコードがあるか否かを判定する上述した処理を再び行い、かかる処理以降の処理を再び行う。
【０１１７】
一方、閾値内である場合には、グルーピング部１４ｃは、次の処理を行う。すなわち、グルーピング部１４ｃは、選択したレコードの「解析条件」の項目の登録内容と、抽出部１４ｂにより取得された「解析条件」の項目の登録内容とが一致するか否かを判定する。一致しない場合には、グルーピング部１４ｃは、グルーピングテーブル１３ｈの全レコードのうち、未選択のレコードがあるか否かを判定する上述した処理を再び行い、かかる処理以降の処理を再び行う。
【０１１８】
一方、一致する場合には、グルーピング部１４ｃは、次の処理を行う。すなわち、グルーピング部１４ｃは、選択したレコードの「比較用構成情報文字列」の項目の登録内容が示す部品の構成と、抽出部１４ｂにより生成された比較用構成情報文字列３３が示す部品の構成とが一致するか否かを判定する。ここでいう部品の構成が一致するか否かの判定とは、「ＤＶ」、「ＲＶ」、「Ｒ」、「Ｃ」、「ＬＮ」、「ＤＩＦＦ＿ＤＶ」などの部品を示す記号の組み合わせが一致するか否かを判定することを指す。これにより、グルーピング部１４ｃは、ネットの構成が一致するか否かを判定することができる。なお、グルーピング部１４ｃは、組み合わせが一致しても部品の並び順が一致しない場合しない場合には、部品の構成が一致しないと判定する。一致しない場合には、グルーピング部１４ｃは、グルーピングテーブル１３ｈの全レコードのうち、未選択のレコードがあるか否かを判定する上述した処理を再び行い、かかる処理以降の処理を再び行う。
【０１１９】
一方、一致する場合には、グルーピング部１４ｃは、次の処理を行う。グルーピング部１４ｃは、選択したレコードの「比較用構成情報文字列」の項目の登録内容が示すライン１８の線長の合計と、抽出部１４ｂにより生成された比較用構成情報文字列３３が示すライン１８の線長の合計との差が閾値内であるか否かを判定する。閾値内でない場合には、グルーピング部１４ｃは、グルーピングテーブル１３ｈの全レコードのうち、未選択のレコードがあるか否かを判定する上述した処理を再び行い、かかる処理以降の処理を再び行う。
【０１２０】
一方、閾値内である場合には、グルーピング部１４ｃは、次の処理を行う。すなわち、グルーピング部１４ｃは、選択したレコードの「比較用構成情報文字列」の項目の登録内容が示すライン１８の線幅と、抽出部１４ｂにより生成された比較用構成情報文字列３３が示すライン１８の線幅との差が閾値内であるか否かを判定する。閾値内でない場合には、グルーピング部１４ｃは、グルーピングテーブル１３ｈの全レコードのうち、未選択のレコードがあるか否かを判定する上述した処理を再び行い、かかる処理以降の処理を再び行う。
【０１２１】
一方、閾値内である場合には、グルーピング部１４ｃは、次の処理を行う。グルーピング部１４ｃは、選択したレコードの「比較用構成情報文字列」の項目の登録内容が示す部品１９の値と、抽出部１４ｂにより生成された比較用構成情報文字列３３が示す部品１９の値との差が閾値内であるか否かを判定する。ここでいう値とは、抵抗値、静電容量、インダクタンス値である。例えば、グルーピング部１４ｃは、選択したレコードの「比較用構成情報文字列」の項目の登録内容が示す部品１９の抵抗値と、抽出部１４ｂにより生成された比較用構成情報文字列３３が示す対応する部品１９の抵抗値との差が閾値内であるか否かを判定する。また、グルーピング部１４ｃは、選択したレコードの「比較用構成情報文字列」の項目の登録内容が示す部品１９の静電容量と、抽出部１４ｂにより生成された比較用構成情報文字列３３が示す対応する部品の静電容量との差が閾値内であるか否かを判定する。また、グルーピング部１４ｃは、選択したレコードの「比較用構成情報文字列」の項目の登録内容が示す部品１９のインダクタンスと、次に示すインダクタンスとの差が閾値内であるか否かを判定する。すなわち、グルーピング部１４ｃは、抽出部１４ｂにより生成された比較用構成情報文字列３３が示す対応する部品のインダクタンスとの差が閾値内であるか否かを判定する。複数の部品の値について判定を行った場合には、グルーピング部１４ｃは、全ての判定において閾値内であると判定された場合に、値の差が閾値内であると判定する。また、何れかの判定において閾値内でないと判定された場合には、グルーピング部１４ｃは、値の差が閾値内でないと判定する。値の差が閾値内でない場合には、グルーピング部１４ｃは、グルーピングテーブル１３ｈの全レコードのうち、未選択のレコードがあるか否かを判定する上述した処理を再び行い、かかる処理以降の処理を再び行う。
【０１２２】
一方、値の差が閾値内である場合には、グルーピング部１４ｃは、次の処理を行う。グルーピング部１４ｃは、選択したレコードの「比較用構成情報文字列」の項目の登録内容が示すドライバやレシーバのモデルの名称と、次に示すモデルの名称とが一致するか否かを判定する。すなわち、グルーピング部１４ｃは、抽出部１４ｂにより生成された比較用構成情報文字列３３が示すドライバやレシーバのモデルの名称とが一致するか否かを判定する。一致しない場合には、グルーピング部１４ｃは、グルーピングテーブル１３ｈの全レコードのうち、未選択のレコードがあるか否かを判定する上述した処理を再び行い、かかる処理以降の処理を再び行う。
【０１２３】
一方、一致する場合には、グルーピング部１４ｃは、次の処理を行う。すなわち、グルーピング部１４ｃは、制御部１４の内部メモリの所定の領域を第１のフラグの領域（図示せず）とし、第１のフラグの領域に、第１のフラグがＯＮであることを示す「１」を設定する。
【０１２４】
また、グルーピングテーブル１３ｈの全レコードのうち、未選択のレコードがないと判定した場合には、グルーピング部１４ｃは、第１のフラグの領域に、第１のフラグがＯＦＦであることを示す「０」を設定する。ここで、第１のフラグがＯＮである場合には、抽出部１４ｂにより選択された解析情報テーブル１３ｅのレコードが示すネットと、グルーピング部１４ｃにより選択されたグルーピングテーブル１３ｈのレコードが示すネットとが同一のグループに属することを示す。また、第１のフラグがＯＦＦである場合には、グルーピングテーブル１３ｈの全レコードが示す全ネットに対して、抽出部１４ｂにより選択された解析情報テーブル１３ｅのレコードが示すネットが同一のグループに属さないことを示す。
【０１２５】
第１のフラグの領域に「１」または「０」を設定した場合には、グルーピング部１４ｃは、次の処理を行う。すなわち、グルーピング部１４ｃは、抽出部１４ｂにより選択された解析情報テーブル１３ｅのレコードが示すネットと、グルーピング部１４ｃにより選択されたグルーピングテーブル１３ｈのレコードが示すネットとが同一のグループに属するか否かを判定する。例えば、グルーピング部１４ｃは、第１のフラグがＯＮである場合には、次のように判定する。すなわち、グルーピング部１４ｃは、抽出部１４ｂにより選択された解析情報テーブル１３ｅのレコードが示すネットと、グルーピング部１４ｃにより選択されたグルーピングテーブル１３ｈのレコードが示すネットとが同一のグループに属すると判定する。一方、グルーピング部１４ｃは、第１のフラグがＯＦＦである場合には、次のように判定する。すなわち、グルーピング部１４ｃは、グルーピングテーブル１３ｈの全レコードが示す全ネットに対して、抽出部１４ｂにより選択された解析情報テーブル１３ｅのレコードが示すネットが同一のグループに属さないと判定する。
【０１２６】
グルーピングテーブル１３ｈの全レコードが示す全ネットに対して、抽出部１４ｂにより選択された解析情報テーブル１３ｅのレコードが示すネットが同一のグループに属さない場合には、グルーピング部１４ｃは、次の処理を行う。すなわち、グルーピング部１４ｃは、グルーピングテーブル１３ｈにレコードを追加する。そして、グルーピング部１４ｃは、抽出部１４ｂにより取得された「パルス種別」、「ビットパターン」、「動作周波数［ＭＨｚ］」、「データレート［Ｍｂｐｓ］」及び「解析条件名」の各項目の登録内容を、追加したレコードの対応する項目に登録する。また、グルーピング部１４ｃは、抽出部１４ｂにより生成された比較用構成情報文字列を、追加したレコードの「比較用構成情報文字列」の項目に登録する。
【０１２７】
一方、同一のグループに属すると判定した場合には、グルーピング部１４ｃは、次の処理を行う。すなわち、グルーピング部１４ｃは、選択したグルーピングテーブル１３ｈのレコードの「グループ番号」の項目に登録されたグループ番号を、抽出部１４ｂにより選択された解析情報テーブル１３ｅのレコードの「グループ番号」の項目に登録する。そして、グルーピング部１４ｃは、選択したグルーピングテーブル１３ｈのレコードが示すネットのラインの線長の合計が、抽出部１４ｂにより選択された解析情報テーブル１３ｅのレコードが示すネットのラインの線長の合計より長いか否かを判定する。なお、ラインの線長の合計は、構成情報文字列または比較用構成情報文字列が示すラインの長さの合計から算出することができる。長い場合には、グルーピング部１４ｃは、次の処理を行う。すなわち、グルーピング部１４ｃは、選択したグルーピングテーブル１３ｈのレコードの「比較用構成情報文字列」の項目の登録内容を、抽出部１４ｂが生成した比較用構成情報文字列に置換して、選択したグルーピングテーブル１３ｈのレコードを更新する。これにより、グルーピングテーブル１３ｈに、同一グループに属するネットのうち、ライン長が最も長いネットに関する情報を登録することができる。
【０１２８】
図１の説明に戻り、選択部１４ｄは、グルーピング部１４ｃによりグルーピングされたネットのうちの一つのネットを解析対象として選択する。選択部１４ｄの一態様について説明する。例えば、選択部１４ｄは、抽出部１４ｂにより、解析情報テーブル１３ｅの全レコードのうち未選択のレコードがないと判定された場合に、次の処理を行う。すなわち、選択部１４ｄは、グルーピングテーブル１３ｈの全レコードのうち、未選択のレコードがあるか否かを判定する。未選択のレコードがある場合には、選択部１４ｄは、未選択のレコードを１つ選択する。例えば、先の図１０に示すグルーピングテーブル１３ｈの全レコードのうち、１番目のレコードが未選択である場合には、選択部１４ｄは、１番目のレコードを選択する。このようにして、選択部１４ｄは、グルーピング部１４ｃによりグルーピングされたネットのうちの一つのネットを解析対象として選択する。また、選択部１４ｄは、解析部１４ｅにより解析結果が取得されると、グルーピングテーブル１３ｈの全レコードのうち、未選択のレコードがあるか否かを判定する。
【０１２９】
解析部１４ｅは、プリント基板１５の信号の品質を解析する。解析部１４ｅの一態様について説明する。例えば、解析部１４ｅは、選択部１４ｄによりレコードが選択されると、解析結果データベース１３ｉの全レコードのうち、未選択のレコードがあるか否かを判定する。なお、解析結果データベース１３ｉは、解析部１４ｅによりレコードが登録されることでレコード件数が増加するデータベースである。そのため、解析結果データベース１３ｉに、解析部１４ｅによりレコードが登録されていない場合には、選択するレコードがない。この場合、解析部１４ｅは、未選択のレコードがないと判定する。
【０１３０】
未選択のレコードがある場合には、解析部１４ｅは、未選択のレコードを１つ選択する。そして、解析部１４ｅは、選択したレコードの「パルス種別」の項目の登録内容と、先の選択部１４ｄにより選択されたレコードの「パルス種別」の項目の登録内容とが一致するか否かを判定する。一致しない場合には、解析部１４ｅは、グルーピングテーブル１３ｈの全レコードのうち、未選択のレコードがあるか否かを判定する上述した処理を再び行い、かかる処理以降の処理を再び行う。
【０１３１】
一方、一致する場合には、解析部１４ｅは、次の処理を行う。すなわち、解析部１４ｅは、選択したレコードの「ビットパターン」の項目の登録内容と、選択部１４ｄにより選択されたレコードの「ビットパターン」の項目の登録内容とが一致するか否かを判定する。一致しない場合には、解析部１４ｅは、グルーピングテーブル１３ｈの全レコードのうち、未選択のレコードがあるか否かを判定する上述した処理を再び行い、かかる処理以降の処理を再び行う。
【０１３２】
一方、一致する場合には、解析部１４ｅは、次の処理を行う。すなわち、解析部１４ｅは、選択したレコードの「動作周波数［ＭＨｚ］」の項目の登録内容と、選択部１４ｄにより選択されたレコードの「動作周波数［ＭＨｚ］」の項目の登録内容とが一致するか否かを判定する。一致しない場合には、解析部１４ｅは、グルーピングテーブル１３ｈの全レコードのうち、未選択のレコードがあるか否かを判定する上述した処理を再び行い、かかる処理以降の処理を再び行う。
【０１３３】
一方、一致する場合には、解析部１４ｅは、次の処理を行う。すなわち、解析部１４ｅは、選択したレコードの「データレート」の項目の登録内容と、選択部１４ｄにより選択されたレコードの「データレート」の項目の登録内容との差が所定の閾値内であるか否かを判定する。閾値内でない場合には、解析部１４ｅは、グルーピングテーブル１３ｈの全レコードのうち、未選択のレコードがあるか否かを判定する上述した処理を再び行い、かかる処理以降の処理を再び行う。
【０１３４】
一方、閾値内である場合には、解析部１４ｅは、次の処理を行う。すなわち、解析部１４ｅは、選択したレコードの「解析条件」の項目の登録内容と、選択部１４ｄにより選択されたレコードの「解析条件」の項目の登録内容とが一致するか否かを判定する。一致しない場合には、解析部１４ｅは、グルーピングテーブル１３ｈの全レコードのうち、未選択のレコードがあるか否かを判定する上述した処理を再び行い、かかる処理以降の処理を再び行う。
【０１３５】
一方、一致する場合には、解析部１４ｅは、次の処理を行う。すなわち、解析部１４ｅは、選択したレコードの「比較用構成情報文字列」の項目の登録内容が示す部品の構成と、選択部１４ｄにより選択されたレコードの「比較用構成情報文字列」の項目の登録内容が示す部品の構成とが一致するか否かを判定する。ここでいう部品の構成が一致するか否かの判定とは、「ＤＶ」、「ＲＶ」、「Ｒ」、「Ｃ」、「ＬＮ」、「ＤＩＦＦ＿ＤＶ」などの部品を示す記号の組み合わせが一致するか否かを判定することを指す。これにより、解析部１４ｅは、ネットの構成が一致するか否かを判定することができる。なお、解析部１４ｅは、組み合わせが一致しても部品の並び順が一致しない場合しない場合には、部品の構成が一致しないと判定する。一致しない場合には、解析部１４ｅは、グルーピングテーブル１３ｈの全レコードのうち、未選択のレコードがあるか否かを判定する上述した処理を再び行い、かかる処理以降の処理を再び行う。
【０１３６】
一方、一致する場合には、解析部１４ｅは、選択したレコードの「比較用構成情報文字列」の項目の登録内容が示すライン１８の線長の合計と、次に示す線長の合計との差が閾値内であるか否かを判定する。すなわち、解析部１４ｅは、選択部１４ｄにより選択されたレコードの「比較用構成情報文字列」の項目の登録内容が示すライン１８の線長の合計との差が閾値内であるか否かを判定する。閾値内でない場合には、解析部１４ｅは、グルーピングテーブル１３ｈの全レコードのうち、未選択のレコードがあるか否かを判定する上述した処理を再び行い、かかる処理以降の処理を再び行う。
【０１３７】
一方、一致する場合には、解析部１４ｅは、次の処理を行う。すなわち、解析部１４ｅは、選択したレコードの「比較用構成情報文字列」の項目の登録内容が示すライン１８の線幅と、選択部１４ｄにより選択されたレコードの「比較用構成情報文字列」が示すライン１８の線幅との差が閾値内であるか否かを判定する。閾値内でない場合には、解析部１４ｅは、グルーピングテーブル１３ｈの全レコードのうち、未選択のレコードがあるか否かを判定する上述した処理を再び行い、かかる処理以降の処理を再び行う。
【０１３８】
一方、閾値内である場合には、解析部１４ｅは、次の処理を行う。解析部１４ｅは、選択したレコードの「比較用構成情報文字列」の項目の登録内容が示す部品１９の値と、選択部１４ｄにより選択されたレコードの「比較用構成情報文字列」の項目の登録内容が示す部品１９の値との差が閾値内であるか否かを判定する。ここでいう値とは、抵抗値、静電容量、インダクタンス値である。例えば、解析部１４ｅは、選択したレコードの「比較用構成情報文字列」の項目の登録内容が示す部品１９の抵抗値と、次に示す抵抗値との差が閾値内であるか否かを判定する。すなわち、解析部１４ｅは、選択部１４ｄにより選択されたレコードの「比較用構成情報文字列」の項目の登録内容が示す対応する部品１９の抵抗値との差が閾値内であるか否かを判定する。また、解析部１４ｅは、選択したレコードの「比較用構成情報文字列」の項目の登録内容が示す部品１９の静電容量と、次に示す静電容量との差が閾値内であるか否かを判定する。すなわち、解析部１４ｅは、選択部１４ｄにより選択されたレコードの「比較用構成情報文字列」の項目の登録内容が示す対応する部品の静電容量との差が閾値内であるか否かを判定する。また、解析部１４ｅは、選択したレコードの「比較用構成情報文字列」の項目の登録内容が示す部品１９のインダクタンスと、次に示すインダクタンスとの差が閾値内であるか否かを判定する。すなわち、解析部１４ｅは、選択部１４ｄにより選択されたレコードの「比較用構成情報文字列」の項目の登録内容が示す対応する部品のインダクタンスとの差が閾値内であるか否かを判定する。複数の部品の値について判定を行った場合には、解析部１４ｅは、全ての判定において閾値内であると判定された場合に、値の差が閾値内であると判定する。また、何れかの判定において閾値内でないと判定された場合には、解析部１４ｅは、値の差が閾値内でないと判定する。値の差が閾値内でない場合には、解析部１４ｅは、グルーピングテーブル１３ｈの全レコードのうち、未選択のレコードがあるか否かを判定する上述した処理を再び行い、かかる処理以降の処理を再び行う。
【０１３９】
一方、値の差が閾値内である場合には、解析部１４ｅは、次の処理を行う。解析部１４ｅは、選択したレコードの「比較用構成情報文字列」の項目の登録内容が示すドライバやレシーバのモデルの名称と、次に示すモデルの名称とが一致するか否かを判定する。すなわち、選択部１４ｄにより選択されたレコードの「比較用構成情報文字列」の項目の登録内容が示すドライバやレシーバのモデルの名称とが一致するか否かを判定する。一致しない場合には、解析部１４ｅは、グルーピングテーブル１３ｈの全レコードのうち、未選択のレコードがあるか否かを判定する上述した処理を再び行い、かかる処理以降の処理を再び行う。
【０１４０】
一方、一致する場合には、解析部１４ｅは、次の処理を行う。すなわち、解析部１４ｅは、制御部１４の内部メモリの所定の領域を第２のフラグの領域（図示せず）とし、第２のフラグの領域に、第２のフラグがＯＮであることを示す「１」を設定する。
【０１４１】
また、グルーピングテーブル１３ｈの全レコードのうち、未選択のレコードがないと選択部１４ｄにより判定された場合には、解析部１４ｅは、第２のフラグの領域に、第２のフラグがＯＦＦであることを示す「０」を設定する。ここで、第２のフラグがＯＮである場合には、選択部１４ｄにより選択されたグルーピングテーブル１３ｈのレコードが示すネットと、解析部１４ｅにより選択された解析結果データベース１３ｉのレコードが示すネットとが同一のグループに属することを示す。また、第２のフラグがＯＦＦである場合には、解析結果データベース１３ｉの全レコードが示す全ネットに対して、選択部１４ｄにより選択されたレコードが示すネットが同一のグループに属さないことを示す。
【０１４２】
第２のフラグの領域に「１」または「０」を設定した場合には、解析部１４ｅは、次の処理を行う。すなわち、解析部１４ｅは、選択部１４ｄにより選択されたグルーピングテーブル１３ｈのレコードが示すネットと、解析部１４ｅにより選択された解析結果データベース１３ｉのレコードが示すネットとが同一のグループに属するか否かを判定する。例えば、解析部１４ｅは、第２のフラグがＯＮである場合には、次のように判定する。すなわち、解析部１４ｅは、選択部１４ｄにより選択されたグルーピングテーブル１３ｈのレコードが示すネットと、解析部１４ｅにより選択された解析結果データベース１３ｉのレコードが示すネットとが同一のグループに属すると判定する。一方、解析部１４ｅは、第１のフラグがＯＦＦである場合には、次のように判定する。すなわち、解析部１４ｅは、解析結果データベース１３ｉの全レコードが示す全ネットに対して、選択部１４ｄにより選択されたレコードが示すネットが同一のグループに属さないと判定する。
【０１４３】
選択部１４ｄにより選択されたグルーピングテーブル１３ｈのレコードが示すネットと、選択した解析結果データベース１３ｉのレコードが示すネットとが同一のグループに属する場合には、解析部１４ｅは、次の処理を行う。すなわち、解析部１４ｅは、選択した解析結果データベース１３ｉのレコードの「解析結果」の項目に登録された解析結果を、選択部１４ｄにより選択されたグルーピングテーブル１３ｈのレコードが示すネットの解析結果として取得する。
【０１４４】
また、選択部１４ｄにより選択されたグルーピングテーブル１３ｈのレコードが示すネットと、選択した解析結果データベース１３ｉのレコードが示すネットとが同一のグループに属さない場合には、解析部１４ｅは、次の処理を行う。すなわち、解析部１４ｅは、選択部１４ｄにより選択されたグルーピングテーブル１３ｈのレコードが示すネットに流れる信号の品質の解析を、レコードに登録された登録内容に従って行う。そして、解析部１４ｅは、解析結果データベース１３ｉにレコードを追加して、追加したレコードの「解析結果」の項目が有する各項目に、解析結果「ＯＫ」または「ＮＧ」を登録する。続いて、解析部１４ｅは、追加したレコードの「解析結果」以外の各項目に各種情報を登録する。例えば、解析部１４ｅは、追加したレコードの「グループ番号」の項目に、重複しないグループ番号を登録する。また、解析部１４ｅは、追加したレコードの「パルス種別」の項目に、選択部１４ｄにより選択されたグルーピングテーブル１３ｈのレコードの「パルス種別」の項目の登録内容を登録する。また、解析部１４ｅは、追加したレコードの「ビットパターン」の項目に、選択部１４ｄにより選択されたグルーピングテーブル１３ｈのレコードの「ビットパターン」の項目の登録内容を登録する。また、解析部１４ｅは、追加したレコードの「動作周波数［ＭＨｚ］」の項目に、選択部１４ｄにより選択されたグルーピングテーブル１３ｈのレコードの「動作周波数［ＭＨｚ］」の項目の登録内容を登録する。また、解析部１４ｅは、追加したレコードの「データレート［Ｍｂｐｓ］」の項目に、選択部１４ｄにより選択されたグルーピングテーブル１３ｈのレコードの「データレート［Ｍｂｐｓ］」の項目の登録内容を登録する。また、解析部１４ｅは、追加したレコードの「解析条件名」の項目に、選択部１４ｄにより選択されたグルーピングテーブル１３ｈのレコードの「解析条件名」の項目の登録内容を登録する。また、解析部１４ｅは、追加したレコードの「比較用構成情報文字列」の項目に、選択部１４ｄにより選択されたグルーピングテーブル１３ｈのレコードの「比較用構成情報文字列」の項目の登録内容を登録する。
【０１４５】
また、選択部１４ｄにより、グルーピングテーブル１３ｈの全レコードの中に未選択のレコードがないと判定された場合には、解析部１４ｅは、解析結果データベース１３ｉに登録された解析結果を表示部１２に出力して、表示部１２に解析結果を表示させる。
【０１４６】
制御部１４は、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）などの集積回路またはＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）などの電子回路である。  
【０１４７】
［処理の流れ］
次に、本実施例に係る解析装置１０の処理の流れを説明する。図１４は、実施例に係る解析処理の手順を示すフローチャートである。この解析処理の実行タイミングとしては様々なタイミングが考えられる。例えば、解析処理は、解析処理を実行する解析実行指示が入力部１１から入力された場合に、制御部１４により実行される。
【０１４８】
図１４に示すように、取得部１４ａは、解析実行指示に付加された、解析対象のネットに流れる信号ごとの解析条件名を取得し、取得した解析条件名に対応する解析条件を解析条件テーブル１３ｆから取得する（Ｓ１０１）。そして、取得部１４ａは、ネット情報１３ａを取得する（Ｓ１０２）。続いて、取得部１４ａは、信号情報１３ｂを取得する（Ｓ１０３）。続いて、取得部１４ａは、部品情報１３ｃを取得する（Ｓ１０４）。その後、取得部１４ａは、ライン情報１３ｄを取得する（Ｓ１０５）。
【０１４９】
抽出部１４ｂ及びグルーピング部１４ｃは、グルーピング処理を実行する（Ｓ１０６）。そして、選択部１４ｄ及び解析部１４ｅは、解析実行処理を実行し（Ｓ１０７）、処理を終了する。
【０１５０】
図１５は、実施例に係る解析処理の手順を示すフローチャートである。図１５に示すように、抽出部１４ｂは、ネット情報１３ａの全レコードのうち、未選択のレコードがあるか否かを判定する（Ｓ２０１）。未選択のレコードがある場合（Ｓ２０１肯定）には、抽出部１４ｂは、未選択のレコードを１つ選択する（Ｓ２０２）。
【０１５１】
そして、抽出部１４ｂは、選択したレコードが示すネットに流れる信号の信号名を特定する（Ｓ２０３）。続いて、抽出部１４ｂは、特定した信号名が「信号名」の項目に登録されたレコードを信号情報１３ｂの全レコードから特定し、特定したレコードの「ネット区分」の項目に「信号」が登録されているか否かを判定する（Ｓ２０４）。
【０１５２】
特定したレコードの「ネット区分」の項目に「信号」が登録されていない場合（Ｓ２０４否定）には、抽出部１４ｂは、Ｓ２０１に戻る。一方、特定したレコードの「ネット区分」の項目に「信号」が登録されている場合（Ｓ２０４肯定）には、抽出部１４ｂは、解析情報テーブル１３ｅに各種情報を登録する（Ｓ２０５）。続いて、抽出部１４ｂは、ネット情報１３ａの選択したレコードが示すネットを構成する構成要素に基づいて、次の処理を行う。すなわち、抽出部１４ｂは、ネットを構成する要素の位置情報を含まない、要素の接続関係を示す情報である構成情報文字列を生成する（Ｓ２０６）。
【０１５３】
その後、抽出部１４ｂは、生成した構成情報文字列を解析情報テーブル１３ｅの「構成情報文字列」の項目に登録し（Ｓ２０７）、Ｓ２０１に戻る。
【０１５４】
一方、ネット情報１３ａの全レコードのうち未選択のレコードがない場合（Ｓ２０１否定）には、抽出部１４ｂは、解析情報テーブル１３ｅの全レコードのうち、未選択のレコードがあるか否かを判定する（Ｓ２０８）。未選択のレコードがある場合（Ｓ２０８肯定）には、抽出部１４ｂは、未選択のレコードを１つ選択する（Ｓ２０９）。
【０１５５】
続いて、抽出部１４ｂは、選択したレコードの「パルス種別」、「ビットパターン」、「動作周波数［ＭＨｚ］」、「データレート［Ｍｂｐｓ］」、「解析条件名」及び「構成情報文字列」の各項目の登録内容を取得する（Ｓ２１０）。
【０１５６】
そして、抽出部１４ｂは、取得した構成情報文字列を比較用構成情報文字列に変換して、比較用構成情報文字列を生成する（Ｓ２１１）。そして、グルーピング部１４ｃは、類似判定処理を実行する（Ｓ２１２）。続いて、グルーピング部１４ｃは、選択された解析情報テーブル１３ｅのレコードが示すネットと、選択したグルーピングテーブル１３ｈのレコードが示すネットとが同一のグループに属するか否かを判定する（Ｓ２１３）。
【０１５７】
グルーピングテーブル１３ｈの全レコードが示す全ネットに対して、抽出部１４ｂにより選択された解析情報テーブル１３ｅのレコードが示すネットが同一のグループに属さない場合（Ｓ２１３否定）には、グルーピング部１４ｃは、次の処理を行う。すなわち、グルーピング部１４ｃは、グルーピングテーブル１３ｈにレコードを追加する。そして、グルーピング部１４ｃは、抽出部１４ｂにより取得された「パルス種別」、「ビットパターン」、「動作周波数［ＭＨｚ］」、「データレート［Ｍｂｐｓ］」及び「解析条件名」の各項目の登録内容を、追加したレコードの対応する項目に登録する。また、グルーピング部１４ｃは、抽出部１４ｂにより生成された比較用構成情報文字列を、追加したレコードの「比較用構成情報文字列」の項目に登録し（Ｓ２１４）、Ｓ２０８に戻る。
【０１５８】
一方、同一のグループに属する場合（Ｓ２１３肯定）には、グルーピング部１４ｃは、次の処理を行う。すなわち、グルーピング部１４ｃは、選択したグルーピングテーブル１３ｈのレコードの「グループ番号」の項目に登録されたグループ番号を、抽出部１４ｂにより選択された解析情報テーブル１３ｅのレコードの「グループ番号」の項目に登録する（Ｓ２１５）。そして、グルーピング部１４ｃは、選択したグルーピングテーブル１３ｈのレコードが示すネットのラインの線長の合計が、選択された解析情報テーブル１３ｅのレコードが示すネットのラインの線長の合計より長いか否かを判定する（Ｓ２１６）。長くない場合（Ｓ２１６否定）には、グルーピング部１４ｃは、Ｓ２０８に戻る。長い場合（Ｓ２１６肯定）には、グルーピング部１４ｃは、次の処理を行う。グルーピング部１４ｃは、選択したグルーピングテーブル１３ｈのレコードの「比較用構成情報文字列」の項目の登録内容を、抽出部１４ｂが生成した比較用構成情報文字列に置換して、選択したグルーピングテーブル１３ｈのレコードを更新する（Ｓ２１７）。そして、グルーピング部１４ｃは、Ｓ２０８に戻る。未選択のレコードがない場合（Ｓ２０８否定）には、グルーピング部１４ｃは、処理結果を内部メモリに格納して、リターンする。
【０１５９】
図１６は、実施例に係る類似判定処理の手順を示すフローチャートである。図１６に示すように、グルーピング部１４ｃは、グルーピングテーブル１３ｈの全レコードのうち、未選択のレコードがあるか否かを判定する（Ｓ３０１）。未選択のレコードがある場合（Ｓ３０１肯定）には、グルーピング部１４ｃは、未選択のレコードを１つ選択する（Ｓ３０２）。そして、グルーピング部１４ｃは、選択したレコードの「パルス種別」の項目の登録内容と、先の抽出部１４ｂにより取得された「パルス種別」の項目の登録内容とが一致するか否かを判定する（Ｓ３０３）。一致しない場合（Ｓ３０３否定）には、グルーピング部１４ｃは、Ｓ３０１に戻る。
【０１６０】
一方、一致する場合（Ｓ３０３肯定）には、グルーピング部１４ｃは、次の処理を行う。すなわち、グルーピング部１４ｃは、選択したレコードの「ビットパターン」の項目の登録内容と、抽出部１４ｂにより取得された「ビットパターン」の項目の登録内容とが一致するか否かを判定する（Ｓ３０４）。一致しない場合（Ｓ３０４否定）には、グルーピング部１４ｃは、Ｓ３０１に戻る。
【０１６１】
一方、一致する場合（Ｓ３０４肯定）には、グルーピング部１４ｃは、次の処理を行う。すなわち、グルーピング部１４ｃは、選択したレコードの「動作周波数［ＭＨｚ］」の項目の登録内容と、抽出部１４ｂにより取得された「動作周波数［ＭＨｚ］」の項目の登録内容とが一致するか否かを判定する（Ｓ３０５）。一致しない場合（Ｓ３０５否定）には、グルーピング部１４ｃは、Ｓ３０１に戻る。
【０１６２】
一方、一致する場合（Ｓ３０５肯定）には、グルーピング部１４ｃは、次の処理を行う。すなわち、グルーピング部１４ｃは、選択したレコードの「データレート」の項目の登録内容と、抽出部１４ｂにより取得された「データレート」の項目の登録内容との差が所定の閾値内であるか否かを判定する（Ｓ３０６）。閾値内でない場合（Ｓ３０６否定）には、グルーピング部１４ｃは、Ｓ３０１に戻る。
【０１６３】
一方、閾値内である場合（Ｓ３０６肯定）には、グルーピング部１４ｃは、次の処理を行う。すなわち、グルーピング部１４ｃは、選択したレコードの「解析条件」の項目の登録内容と、抽出部１４ｂにより取得された「解析条件」の項目の登録内容とが一致するか否かを判定する（Ｓ３０７）。一致しない場合（Ｓ３０７否定）には、グルーピング部１４ｃは、Ｓ３０１に戻る。
【０１６４】
一方、一致する場合（Ｓ３０７肯定）には、グルーピング部１４ｃは、次の処理を行う。すなわち、グルーピング部１４ｃは、選択したレコードの「比較用構成情報文字列」の項目の登録内容が示す部品の構成と、抽出部１４ｂにより生成された比較用構成情報文字列３３が示す部品の構成とが一致するか否かを判定する（Ｓ３０８）。一致しない場合（Ｓ３０８否定）には、グルーピング部１４ｃは、Ｓ３０１に戻る。
【０１６５】
一方、一致する場合（Ｓ３０８肯定）には、グルーピング部１４ｃは、次の処理を行う。すなわち、グルーピング部１４ｃは、選択したレコードの「比較用構成情報文字列」の項目の登録内容が示すライン１８の線長の合計と、生成された比較用構成情報文字列３３が示すライン１８の線長の合計との差が閾値内であるか否かを判定する（Ｓ３０９）。閾値内でない場合（Ｓ３０９否定）には、グルーピング部１４ｃは、Ｓ３０１に戻る。
【０１６６】
一方、閾値内である場合（Ｓ３０９肯定）には、グルーピング部１４ｃは、次の処理を行う。グルーピング部１４ｃは、選択したレコードの「比較用構成情報文字列」の項目の登録内容が示すライン１８の線幅と、抽出部１４ｂにより生成された比較用構成情報文字列３３が示すライン１８の線幅との差が閾値内であるか否かを判定する（Ｓ３１０）。閾値内でない場合（Ｓ３１０否定）には、グルーピング部１４ｃは、Ｓ３０１に戻る。
【０１６７】
一方、閾値内である場合（Ｓ３１０肯定）には、グルーピング部１４ｃは、次の処理を行う。グルーピング部１４ｃは、選択したレコードの「比較用構成情報文字列」の項目の登録内容が示す部品１９の値と、抽出部１４ｂにより生成された比較用構成情報文字列３３が示す部品１９の値との差が閾値内であるか否かを判定する（Ｓ３１１）。閾値内でない閾値内である合（Ｓ３１１否定）には、グルーピング部１４ｃは、Ｓ３０１に戻る。
【０１６８】
一方、値の差が閾値内である場合（Ｓ３１１肯定）には、グルーピング部１４ｃは、次の処理を行う。グルーピング部１４ｃは、選択したレコードの「比較用構成情報文字列」の項目の登録内容が示すドライバやレシーバのモデルの名称と、生成された比較用構成情報文字列３３が示すドライバやレシーバのモデルの名称とが一致するか否かを判定する（Ｓ３１２）。一致しない場合（Ｓ３１２否定）には、グルーピング部１４ｃは、Ｓ３０１に戻る。
【０１６９】
一方、一致する場合（Ｓ３１２肯定）には、グルーピング部１４ｃは、次の処理を行う。すなわち、グルーピング部１４ｃは、制御部１４の内部メモリの所定の領域を第１のフラグの領域（図示せず）とし、第１のフラグの領域に、第１のフラグがＯＮであることを示す「１」を設定し（Ｓ３１３）、処理結果を内部メモリに格納し、リターンする。
【０１７０】
また、未選択のレコードがない場合（Ｓ３０１否定）には、グルーピング部１４ｃは、第１のフラグの領域に、第１のフラグがＯＦＦであることを示す「０」を設定する（Ｓ３１４）。そして、グルーピング部１４ｃは、処理結果を内部メモリに格納し、リターンする。
【０１７１】
図１７は、実施例に係る解析実行処理の手順を示すフローチャートである。図１７に示すように、選択部１４ｄは、グルーピングテーブル１３ｈの全レコードのうち、未選択のレコードがあるか否かを判定する（Ｓ４０１）。未選択のレコードがある場合（Ｓ４０１肯定）には、選択部１４ｄは、未選択のレコードを１つ選択する（Ｓ４０２）。そして、解析部１４ｅは、解析判定処理を実行する（Ｓ４０３）。続いて、解析部１４ｅは、選択部１４ｄにより選択されたグルーピングテーブル１３ｈのレコードが示すネットと、解析部１４ｅにより選択された解析結果データベース１３ｉのレコードが示すネットとが同一のグループに属するか否かを判定する（Ｓ４０４）。
【０１７２】
同一のグループに属する場合（Ｓ４０４肯定）には、解析部１４ｅは、次の処理を行う。すなわち、解析部１４ｅは、選択した解析結果データベース１３ｉのレコードの「解析結果」の項目に登録された解析結果を、選択部１４ｄにより選択されたグルーピングテーブル１３ｈのレコードが示すネットの解析結果として取得する（Ｓ４０５）。そして、解析部１４ｅは、Ｓ４０１に戻る。
【０１７３】
また、同一のグループに属さない場合（Ｓ４０４否定）には、解析部１４ｅは、次の処理を行う。すなわち、解析部１４ｅは、選択部１４ｄにより選択されたグルーピングテーブル１３ｈのレコードが示すネットに流れる信号の品質の解析を、レコードに登録された登録内容に従って行う（Ｓ４０６）。そして、解析部１４ｅは、解析結果データベース１３ｉにレコードを追加して、追加したレコードの「解析結果」の項目が有する各項目に、解析結果「ＯＫ」または「ＮＧ」を登録する（Ｓ４０７）。続いて、解析部１４ｅは、追加したレコードの「解析結果」以外の各項目に各種情報を登録し（Ｓ４０８）、Ｓ４０１に戻る。
【０１７４】
また、未選択のレコードがない場合（Ｓ４０１否定）には、解析部１４ｅは、解析結果データベース１３ｉに登録された解析結果を表示部１２に出力して、表示部１２に解析結果を表示させ（Ｓ４０９）、処理結果を内部メモリに格納し、リターンする。
【０１７５】
図１８は、実施例に係る解析判定処理の手順を示すフローチャートである。図１８に示すように、解析部１４ｅは、解析結果データベース１３ｉの全レコードのうち、未選択のレコードがあるか否かを判定する（Ｓ５０１）。
【０１７６】
未選択のレコードがある場合（Ｓ５０１肯定）には、解析部１４ｅは、未選択のレコードを１つ選択する（Ｓ５０２）。そして、解析部１４ｅは、選択したレコードの「パルス種別」の項目の登録内容と、先の選択部１４ｄにより選択されたレコードの「パルス種別」の項目の登録内容とが一致するか否かを判定する（Ｓ５０３）。一致しない場合（Ｓ５０３否定）には、解析部１４ｅは、Ｓ５０１に戻る。
【０１７７】
一方、一致する場合（Ｓ５０３肯定）には、解析部１４ｅは、次の処理を行う。すなわち、解析部１４ｅは、選択したレコードの「ビットパターン」の項目の登録内容と、選択部１４ｄにより選択されたレコードの「ビットパターン」の項目の登録内容とが一致するか否かを判定する（Ｓ５０４）。一致しない場合（Ｓ５０４否定）には、解析部１４ｅは、Ｓ５０１に戻る。
【０１７８】
一方、一致する場合（Ｓ５０４肯定）には、解析部１４ｅは、次の処理を行う。すなわち、解析部１４ｅは、選択したレコードの「動作周波数［ＭＨｚ］」の項目の登録内容と、選択部１４ｄにより選択されたレコードの「動作周波数［ＭＨｚ］」の項目の登録内容とが一致するか否かを判定する（Ｓ５０５）。一致しない場合（Ｓ５０５否定）には、解析部１４ｅは、Ｓ５０１に戻る。
【０１７９】
一方、一致する場合（Ｓ５０５肯定）には、解析部１４ｅは、次の処理を行う。すなわち、解析部１４ｅは、選択したレコードの「データレート」の項目の登録内容と、選択部１４ｄにより選択されたレコードの「データレート」の項目の登録内容との差が所定の閾値内であるか否かを判定する（Ｓ５０６）。閾値内でない場合（Ｓ５０６否定）には、解析部１４ｅは、Ｓ５０１に戻る。
【０１８０】
一方、閾値内である場合（Ｓ５０６肯定）には、解析部１４ｅは、次の処理を行う。すなわち、解析部１４ｅは、選択したレコードの「解析条件」の項目の登録内容と、選択部１４ｄにより選択されたレコードの「解析条件」の項目の登録内容とが一致するか否かを判定する（Ｓ５０７）。一致しない場合（Ｓ５０７否定）には、解析部１４ｅは、Ｓ５０１に戻る。
【０１８１】
一方、一致する場合（Ｓ５０７肯定）には、解析部１４ｅは、次の処理を行う。すなわち、解析部１４ｅは、選択したレコードの「比較用構成情報文字列」の項目の登録内容が示す部品の構成と、選択部１４ｄにより選択されたレコードの「比較用構成情報文字列」の項目の登録内容が示す部品の構成とが一致するか否かを判定する（Ｓ５０８）。一致しない場合（Ｓ５０８否定）には、解析部１４ｅは、Ｓ５０１に戻る。
【０１８２】
一方、一致する場合（Ｓ５０８肯定）には、解析部１４ｅは、選択したレコードの「比較用構成情報文字列」の項目の登録内容が示すライン１８の線長の合計と、次に示す線長の合計との差が閾値内であるか否かを判定する。すなわち、解析部１４ｅは、選択部１４ｄにより選択されたレコードの「比較用構成情報文字列」の項目の登録内容が示すライン１８の線長の合計との差が閾値内であるか否かを判定する（Ｓ５０９）。閾値内でない場合（Ｓ５０９否定）には、解析部１４ｅは、Ｓ５０１に戻る。
【０１８３】
一方、一致する場合（Ｓ５０９肯定）には、解析部１４ｅは、次の処理を行う。解析部１４ｅは、選択したレコードの「比較用構成情報文字列」の項目の登録内容が示すライン１８の線幅と、選択部１４ｄにより選択されたレコードの「比較用構成情報文字列」が示すライン１８の線幅との差が閾値内であるか否かを判定する（Ｓ５１０）。閾値内でない場合（Ｓ５１０否定）には、解析部１４ｅは、Ｓ５０１に戻る。
【０１８４】
一方、閾値内である場合（Ｓ５１０肯定）には、解析部１４ｅは、次の処理を行う。解析部１４ｅは、選択したレコードの「比較用構成情報文字列」の項目の登録内容が示す値と、選択部１４ｄにより選択されたレコードの「比較用構成情報文字列」の項目の登録内容が示す値との差が閾値内であるか否かを判定する（Ｓ５１１）。値の差が閾値内でない場合（Ｓ５１１否定）には、解析部１４ｅは、Ｓ５０１に戻る。
【０１８５】
一方、値の差が閾値内である場合（Ｓ５１１肯定）には、解析部１４ｅは、次の処理を行う。解析部１４ｅは、選択したレコードの「比較用構成情報文字列」の項目の登録内容が示すドライバやレシーバのモデルの名称と、次に示すモデルの名称とが一致するか否かを判定する。すなわち、選択部１４ｄにより選択されたレコードの「比較用構成情報文字列」の項目の登録内容が示すドライバやレシーバのモデルの名称とが一致するか否かを判定する（Ｓ５１２）。一致しない場合（Ｓ５１２否定）には、解析部１４ｅは、Ｓ５０１に戻る。
【０１８６】
一方、一致する場合（Ｓ５１２肯定）には、解析部１４ｅは、次の処理を行う。すなわち、解析部１４ｅは、制御部１４の内部メモリの所定の領域を第２のフラグの領域（図示せず）とし、第２のフラグの領域に、第２のフラグがＯＮであることを示す「１」を設定する（Ｓ５１３）。そして、解析部１４ｅは、処理結果を内部メモリに格納し、リターンする。
【０１８７】
また、未選択のレコードがない場合（Ｓ５０１否定）には、解析部１４ｅは、第２のフラグの領域に、第２のフラグがＯＦＦであることを示す「０」を設定する（Ｓ５１４）。そして、解析部１４ｅは、処理結果を内部メモリに格納し、リターンする。
【０１８８】
上述してきたように、本実施例に係る解析装置１０は、ネット情報１３ａなどから、構成情報文字列及び比較用構成情報文字列を抽出する。そして、解析装置１０は、抽出された比較用構成情報文字列に基づいて、ネットをグルーピングする。続いて、解析装置１０は、グルーピングされたネットのうちの一つのネットを解析対象として選択する。したがって、解析装置１０によれば、全てのネットを解析対象とするのではなく、解析結果が類似するようなグルーピングされたネットのうちの一つのネットを解析対象として選択する。それゆえ、解析装置１０によれば、解析時間の短縮化を図ることができる。
【０１８９】
また、解析装置１０によれば、解析対象のネットの数が減少することから、解析結果の数も減少する。したがって、解析装置１０によれば、人の手によって解析結果を検証する場合には、検証する解析結果の数が減少することから、検証ミスを減少させることができる。
【０１９０】
また、解析装置１０によれば、位置情報などのネットの実形状を表す情報が除外された比較用構成情報文字列を用いて、ネットのグルーピングを行う。したがって、解析装置１０によれば、より少ない情報量の比較用構成情報文字列を用いてグルーピングを行うことができる。
【０１９１】
また、本実施例に係る解析装置１０では、同一グループに属するネットのうち、ライン長が最も長いネットに関する情報が解析に用いられる。そのため、解析装置１０によれば、グルーピングされたネットの中でワーストケースのネットを用いて解析を行うことができる。
【０１９２】
また、本実施例に係る解析装置１０は、過去の解析結果の中から、解析対象のネットに類似するネットの解析結果が記憶部に記憶されている場合には、解析を行わずに、記憶部から解析結果を取得する。したがって、解析装置１０によれば、迅速に解析結果を得ることができる。
【０１９３】
さて、これまで開示の装置に関する実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。
【０１９４】
また、実施例などにおいて説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともできる。
【０１９５】
また、各種の負荷や使用状況などに応じて、実施例などにおいて説明した各処理の各ステップでの処理を任意に細かくわけたり、あるいはまとめたりすることができる。また、ステップを省略することもできる。例えば、開示の装置は、上述したＳ３０３〜Ｓ３１２の処理の順番を入れ替えることができる。また、開示の装置は、上述したＳ３０３〜Ｓ３１２の処理の全ての処理を実行するのではなく、少なくとも一つの処理を実行するように構成することもできる。また、開示の装置は、上述したＳ５０３〜Ｓ５１２の処理の順番を入れ替えることができる。また、開示の装置は、上述したＳ５０３〜Ｓ５１２の処理の全ての処理を実行するのではなく、少なくとも一つの処理を実行するように構成することもできる。
【０１９６】
また、各種の負荷や使用状況などに応じて、実施例などにおいて説明した各処理の各ステップでの処理の順番を変更できる。
【０１９７】
また、図示した装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、装置の分散・統合の具体的状態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【０１９８】
［解析プログラム］
また、上記の解析装置１０の作成処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することもできる。そこで、以下では、図１９を用いて、上記の解析装置１０と同様の機能を有する解析プログラムを実行するコンピュータの一例を説明する。
【０１９９】
図１９は、解析プログラムを実行するコンピュータを示す図である。図１９に示すように、コンピュータ３００は、ＣＰＵ（Central  Processing  Unit）３１０、ＲＯＭ（Read  Only  Memory）３２０、ＨＤＤ（Hard  Disk  Drive）３３０、ＲＡＭ（Random  Access  Memory）３４０を有する。これら３００〜３４０の各部は、バス３５０を介して接続される。
【０２００】
ＨＤＤ３３０には、上記の実施例で示す取得部１４ａと、抽出部１４ｂと、グルーピング部１４ｃと、選択部１４ｄと、解析部１４ｅと同様の機能を発揮する解析プログラム３３０ａが予め記憶される。なお、解析プログラム３３０ａについては、適宜分離しても良い。
【０２０１】
そして、ＣＰＵ３１０が、解析プログラム３３０ａをＨＤＤ３３０から読み出して実行する。
【０２０２】
そして、ＨＤＤ３３０には、図１の例に示す記憶部１３に記憶された各種のデータが設けられる。
【０２０３】
そして、ＣＰＵ３１０は、各種のデータを読み出してＲＡＭ３４０に格納する。さらに、ＣＰＵ３１０は、ＲＡＭ３４０に格納された各種のデータを用いて、解析プログラム３３０ａを実行する。なお、ＲＡＭ３４０に格納される各データは、常に全てのデータがＲＡＭ３４０に格納されなくともよく、全てのデータのうち処理に用いられるデータのみがＲＡＭ３４０に格納されれば良い。
【０２０４】
なお、上記した解析プログラム３３０ａについては、必ずしも最初からＨＤＤ３３０に記憶させなくともよい。
【０２０５】
例えば、コンピュータ３００に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」にプログラムを記憶させておく。そして、コンピュータ３００がこれらからプログラムを読み出して実行するようにしてもよい。  
【０２０６】
さらには、公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータ３００に接続される「他のコンピュータ（またはサーバ）」などにプログラムを記憶させておく。そして、コンピュータ３００がこれらからプログラムを読み出して実行するようにしてもよい。
【符号の説明】
【０２０７】
１０      解析装置
１３      記憶部
１３ａ    ネット情報
１３ｂ    信号情報
１３ｃ    部品情報
１３ｄ    ライン情報
１３ｅ    解析情報テーブル
１３ｆ    解析条件テーブル
１３ｇ    モデル情報テーブル
１３ｈ    グルーピングテーブル
１３ｉ    解析結果データベース
１４      制御部
１４ｂ    抽出部
１４ｃ    グルーピング部
１４ｄ    選択部
【図１】
2014123332.tif 000003
【図２】
2014123332.tif 000004
【図３】
2014123332.tif 000005
【図４】
2014123332.tif 000006
【図５】
2014123332.tif 000007
【図６】
2014123332.tif 000008
【図７】
2014123332.tif 000009
【図８】
2014123332.tif 000010
【図９】
2014123332.tif 000011
【図１０】
2014123332.tif 000012
【図１１】
2014123332.tif 000013
【図１２】
2014123332.tif 000014
【図１３】
2014123332.tif 000015
【図１４】
2014123332.tif 000016
【図１５】
2014123332.tif 000017
【図１６】
2014123332.tif 000018
【図１７】
2014123332.tif 000019
【図１８】
2014123332.tif 000020
【図１９】
2014123332.tif 000021