(57)【要約】【課題】回路設計時において、実装後の部品の位置関係が適切かを判定すること。【解決手段】部品位置検出プログラムは、コンピュータに、回路図の回路上に始点と対象部品とを設定する処理を実行させる。部品位置検出プログラムは、コンピュータに、始点と対象部品との間にある部品の接続関係からラインをトレースして、ラインの数をカウントする処理を実行させる。部品位置検出プログラムは、コンピュータに、カウントされたラインの数から部品の位置関係を判定する処理を実行させる。部品位置検出プログラムは、コンピュータに、判定の結果、位置関係が不適切である場合、位置関係が不適切である旨を出力する処理を実行させる。【選択図】図７
2018163576.tif 000002
【特許請求の範囲】
【請求項１】
回路図の回路上に始点と対象部品とが設定され、
前記始点と前記対象部品との間にある部品の接続関係からラインをトレースして、ラインの数をカウントし、
カウントされたラインの数から部品の位置関係を判定し、
判定の結果、位置関係が不適切である場合、位置関係が不適切である旨を出力する
処理をコンピュータに実行させることを特徴とする部品位置検出プログラム。
【請求項２】
前記設定する処理は、前記始点と前記対象部品とが設定された後、前記回路図の回路上で前記始点からの信号が流れる部品を対象部品として順に設定し、
前記カウントする処理は、前記対象部品ごとに、前記始点から当該対象部品に至るまでのラインの数をカウントし、
前記判定する処理は、前記対象部品に設定された各部品のラインの数を比較することで、部品の位置関係を判定する
ことを特徴とする請求項１に記載の部品位置検出プログラム。
【請求項３】
前記カウントする処理は、部品間の線、部品と線の分岐ポイントとの間の線、分岐ポイントと分岐ポイントの間の線、分岐ポイントと部品の間の線をそれぞれ１つのラインとして、前記始点から前記対象部品に至るまでのラインの数をカウントする
ことを特徴とする請求項１または２に記載の部品位置検出プログラム。
【請求項４】
前記回路図は、等間隔でポイントが２次元状に配置され、ポイントに合わせて部品の接続関係が示す回路が配置され、
前記カウントする処理は、ポイント間を繋ぐ線を１つのラインとして、前記始点から前記対象部品に至るまでのラインの数をカウントする
ことを特徴とする請求項１または２に記載の部品位置検出プログラム。
【請求項５】
前記判定する処理は、前記始点からの距離が第１部品より近く位置関係が不適切である第２部品について、前記第１部品のライン数と前記第２部品のライン数とが等しい場合も、位置関係が不適切である判定する
ことを特徴とする請求項１〜４の何れか１つに記載の部品位置検出プログラム。
【請求項６】
回路図の回路上に始点と対象部品とが設定され、
前記始点と前記対象部品との間にある部品の接続関係からラインをトレースして、ラインの数をカウントし、
カウントされたラインの数から部品の位置関係を判定し、
判定の結果、位置関係が不適切である場合、位置関係が不適切である旨を出力する
処理をコンピュータが実行することを特徴とする部品位置検出方法。
【請求項７】
回路図の回路上に始点と対象部品とを設定する設定部と、
前記設定部により設定された前記始点と前記対象部品との間にある部品の接続関係からラインをトレースして、ラインの数をカウントするカウント部と、
前記カウント部によりカウントされたラインの数から部品の位置関係を判定する判定部と、
前記判定部による判定の結果、位置関係が不適切である場合、位置関係が不適切である旨を出力する出力部と、
を有することを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、部品位置検出プログラム、部品位置検出方法および情報処理装置に関する。
【背景技術】
【０００２】
電子機器の開発では、回路設計、実装設計、基板への部品実装、検査・評価と段階的に開発作業が行われる。回路設計では、回路設計用のＣＡＤ（Computer  Aided  Design）を用いて、要求される機能を満たすように部品の接続関係を定めた回路図が作成される。実装設計では、回路図を元に、実装設計用のＣＡＤを用いて、部品や配線を基板に実装する際の配置パターンを示す実装図が作成される。このように、電子機器の開発では、回路設計の段階で部品の接続関係が設計され、実装設計の段階で実際の部品の配置関係が定まる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平６−１１９４１５号公報
【特許文献２】特開２０１４−１８６７０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、電子機器では、部品の位置関係によって、不具合を発生する場合がある。電子機器の開発では、実装設計の段階で、実装設計用のＣＡＤを用いて部品の配置を確認し、不具合のチェックが行われる。そして、不具合を生じた場合、回路設計の段階に戻って回路の修正が行われる場合がある。このように、回路設計に戻って回路の修正が行われた場合、開発期間が長くなり、開発費用の増加や、製品化の遅れによる機会損失が発生する。
【０００５】
１つの側面では、回路設計時において、実装後の部品の位置関係が適切かを判定できる部品位置検出プログラム、部品位置検出方法および情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
１つの側面では、部品位置検出プログラムは、コンピュータに、回路図の回路上に始点と対象部品とを設定する処理を実行させる。部品位置検出プログラムは、コンピュータに、始点と対象部品との間にある部品の接続関係からラインをトレースして、ラインの数をカウントする処理を実行させる。部品位置検出プログラムは、コンピュータに、カウントされたラインの数から部品の位置関係を判定する処理を実行させる。部品位置検出プログラムは、コンピュータに、判定の結果、位置関係が不適切である場合、位置関係が不適切である旨を出力する処理を実行させる。
【発明の効果】
【０００７】
一実施態様によれば、回路設計時において、実装後の部品の位置関係が適切かを判定できる。
【図面の簡単な説明】
【０００８】
【図１】図１は、情報処理装置の構成を示す図である。
【図２】図２は、ルール情報の一例を示した図である。
【図３Ａ】図３Ａは、実施例１における回路図の一例を示す図である。
【図３Ｂ】図３Ｂは、実施例１における実装図の一例を示す図である。
【図３Ｃ】図３Ｃは、シミュレーションによって得られる信号の一例を示す図である。
【図４Ａ】図４Ａは、誤動作の発生を説明する図である。
【図４Ｂ】図４Ｂは、ノイズ経路を説明する図である。
【図５Ａ】図５Ａは、実施例１における修正した回路図の一例を示す図である。
【図５Ｂ】図５Ｂは、実施例１における修正した実装図の一例を示す図である。
【図６】図６は、実施例１における回路図の別の一例を示す図である。
【図７】図７は、部品位置検出処理の一例を示すフローチャートである。
【図８】図８は、実施例２における回路図の一例を示す図である。
【図９】図９は、ハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【０００９】
以下に、本願の開示する部品位置検出プログラム、部品位置検出方法および情報処理装置の実施例を図面に基づいて詳細に説明する。なお、本実施例により、開示技術が限定されるものではない。また、以下に示す各実施例は、矛盾を起こさない範囲で適宜組み合わせても良い。
【実施例１】
【００１０】
［情報処理装置の構成］
実施例１に係る情報処理装置１０について説明する。図１は、情報処理装置の構成を示す図である。
【００１１】
情報処理装置１０は、設計者による回路設計を支援する装置であり、例えば、パーソナルコンピュータやサーバコンピュータなどのコンピュータなどである。情報処理装置１０は、１台のコンピュータとして実装してもよく、また、複数台のコンピュータによるクラウドとして実装することもできる。本実施例では、情報処理装置１０を１台のコンピュータとした場合を例として説明する。情報処理装置１０は、開発中の電子機器の回路を設計する設計者が使用するコンピュータである。例えば、情報処理装置１０は、回路設計用のＣＡＤのソフトウェアが動作する設計装置である。なお、情報処理装置１０は、ネットワークを介して設計者が使用する端末装置と通信可能に接続され、端末装置から回路設計に関する各種の操作情報を受け付け、処理結果を端末装置に送信するサーバコンピュータであってもよい。例えば、情報処理装置１０は、クラウドでＣＡＤのサービスを提供するサーバコンピュータであってもよい。
【００１２】
図１に示すように、情報処理装置１０は、入力部２０と、表示部２１と、記憶部２２と、制御部２３とを有する。なお、情報処理装置１０は、図１に示す機能部以外にも既知のコンピュータが有する各種の機能部、例えば、通信インタフェース等の機能部を有してもよい。
【００１３】
入力部２０は、各種の情報を入力する入力デバイスである。入力部２０としては、マウスやキーボードなどの操作の入力を受け付ける入力デバイスが挙げられる。入力部２０は、各種の情報の入力を受付ける。例えば、入力部２０は、回路図への部品の配置や配置した部品の接続関係、部品を接続する配線の種別を指示する各種の操作の入力を受け付ける。入力部２０は、ユーザからの操作入力を受け付け、受け付けた操作内容を示す操作情報を制御部２３に入力する。
【００１４】
表示部２１は、各種情報を表示する表示デバイスである。表示部２１としては、ＬＣＤ（Liquid  Crystal  Display）やＣＲＴ（Cathode  Ray  Tube）などの表示デバイスが挙げられる。表示部２１は、各種情報を表示する。例えば、表示部２１は、回路図や操作画面など各種の画面を表示する。
【００１５】
記憶部２２は、ハードディスク、ＳＳＤ（Solid  State  Drive）、光ディスクなどの記憶装置である。なお、記憶部２２は、ＲＡＭ（Random  Access  Memory）、フラッシュメモリ、ＮＶＳＲＡＭ（Non  Volatile  Static  Random  Access  Memory）などのデータを書き換え可能な半導体メモリであってもよい。
【００１６】
記憶部２２は、制御部２３で実行されるＯＳ（Operating  System）や各種プログラムを記憶する。例えば、記憶部２２は、回路設計用のＣＡＤのソフトウェアのプログラムや後述する部品位置検出処理を実行するプログラムを記憶する。さらに、記憶部２２は、制御部２３で実行されるプログラムで用いられる各種データを記憶する。例えば、記憶部２２は、ＣＡＤマスタデータ３０と、設計データ３１と、ルール情報３２とを記憶する。
【００１７】
ＣＡＤマスタデータ３０は、回路設計用のＣＡＤの動作で使用する各種の情報を記憶したデータである。ＣＡＤマスタデータ３０には、部品データ３０Ａが含まれている。
【００１８】
部品データ３０Ａには、回路設計で使用可能な部品に関する各種の情報が記憶されている。例えば、部品データ３０Ａには、部品の種別や、部品の端子から出力される信号の種別などの情報が記憶されている。
【００１９】
設計データ３１は、回路設計用のＣＡＤにより回路を設計したデータである。設計データ３１には、設計した回路図の情報が記憶されている。例えば、設計データ３１には、部品の配置や、部品の接続関係などに関する情報が記憶されている。
【００２０】
ルール情報３２は、位置関係が不適切な部品の判定に用いるルールに関する情報を記憶したデータである。本実施例では、回路図で配線を示すラインをトレースして、部品が接続される接続点までのラインの数により、部品間の位置関係を判別する。ルール情報３２には、不具合が発生する部品の組み合わせごとに、不具合が発生する位置関係となるラインの数の条件が記憶されている。
【００２１】
図２は、ルール情報の一例を示した図である。ルール情報３２は、「始点」、「対象ライン」、「対象部品１」、「対象部品２」、「判定」の各項目を有する。図２に示すルール情報３２は、一例であり、その他の項目が追加されてもよい。
【００２２】
始点の項目は、ラインの数をカウントする始点を記憶する領域である。始点は、回路部品で指定してもよく、回路部品と配線との接続点で指定してもよく、コネクタで指定してもよい。始点の項目には、例えば、始点とする回路部品を指定する情報が格納される。対象ラインの項目は、部品間の位置関係の判定を行う対象とするラインの種別を記憶する領域である。対象ラインの「電源」は、電源のラインを判定対象のラインとすることを示す。「リセット信号」は、リセット信号が流れるラインを判定対象のラインとすることを示す。「信号」は、信号が流れるラインを判定対象のラインとすることを示す。
【００２３】
対象部品１の項目は、位置関係の判定の対象とする一方の部品の種別を記憶する領域である。対象部品２の項目は、位置関係の判定の対象とする他方の部品の種別を記憶する領域である。判定条件の項目は、不具合を発生する位置関係の条件を記憶する領域である。判定条件の項目には、不具合を発生する位置関係をＮＧとして、ＮＧとする条件が記憶されている。
【００２４】
例えば、図２に示す１行目は、始点がスイッチングレギュレータ、対象ラインが電源ラインの場合、コンデンサと、抵抗について位置関係の判定を行うことを示す。また、始点からコンデンサまでのライン数≧始点から抵抗までのライン数の場合、不具合を発生する位置関係であることを示す。
【００２５】
図１に戻り、制御部２３は、情報処理装置１０を制御するデバイスである。制御部２３としては、ＣＰＵ（Central  Processing  Unit）、ＭＰＵ（Micro  Processing  Unit）等の電子回路や、ＡＳＩＣ（Application  Specific  Integrated  Circuit）、ＦＰＧＡ（Field  Programmable  Gate  Array）等の集積回路を採用できる。制御部２３は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、これらによって種々の処理を実行する。制御部２３は、各種のプログラムが動作することにより各種の処理部として機能する。例えば、制御部２３は、設計制御部４０と、設定部４１と、カウント部４２と、判定部４３と、出力部４４とを有する。なお、制御部２１の内部構成は、図１に示した構成に限られず、後述する部品位置検出処理を行う構成であれば他の構成であってもよい。
【００２６】
設計制御部４０は、回路設計用のＣＡＤのソフトウェアの動作を処理部として示したものあり、回路設計に関する各種の制御を行う。例えば、設計制御部４０は、表示部２１への各種情報の表示させる制御を行う。例えば、設計制御部４０は、表示部２１に回路図や操作画面など各種の画面を表示させる。また、設計制御部４０は、入力部２０を介して、回路設計に関する操作を受け付ける。例えば、設計制御部４０は、回路図への部品の配置や配置した部品の接続関係、部品を接続する配線の種別を指示する各種の操作の入力を受け付ける。設計制御部４０は、受け付けた操作に応じて、表示部２１に表示された回路図や操作画面を変更して表示させる。
【００２７】
設計者は、入力部２０に対して回路設計に関する操作を行い、回路図を作成する。例えば、電子機器の開発では、設計者は、回路図への部品の配置や配置した部品の接続関係、部品を接続する配線の種別を指示する各種の操作の入力を行い、開発中の電子機器についての要求される機能を満たすように回路図を作成する。
【００２８】
ここで、電子機器の開発の流れを説明する。上述のように、電子機器の開発では、回路設計、実装設計、基板への部品実装、検査・評価と段階的に開発作業が行われる。回路設計では、要求される機能を満たすように部品の接続関係を定めた回路図が作成される。
【００２９】
図３Ａは、実施例１における回路図の一例を示す図である。回路図には、回路を構成する各部品と、各部品を接続する配線を示すラインが示されている。図３Ａの例は、負荷部品１０２に所定の電圧の電力を供給する電源回路の回路図１００を示している。回路図１００は、接地されているスイッチングレギュレータＩＣ（Integrated  Circuit）１０１が配置されている。このスイッチングレギュレータＩＣ１０１は、他への電源としてパルス信号を出力する端子１０１Ａにライン１を介してコイルＬの一端が接続されている。コイルＬの他端は、ライン２を介して抵抗Ｒ１の一端に接続されている。抵抗Ｒ１の当該一端は、さらに、ライン３を介してコンデンサＣの一端に接続されている。コンデンサＣの他端は、接地されている。また、コンデンサＣの一端は、さらに、ライン４を介して負荷部品１０２に接続されている。また、抵抗Ｒ１の他端は、抵抗Ｒ２の一端と接続されている。抵抗Ｒ２の他端は、接地されている。また、抵抗Ｒ１と抵抗Ｒ２の接続点は、ライン５を介して、スイッチングレギュレータＩＣ１０１の端子１０１Ｂに接続されている。コイルＬの他端とライン２との接続点は、Ｌ接続点とする。抵抗Ｒ１の一端とライン２との接続点は、Ｒ接続点とする。コンデンサＣの一端とライン３との接続点は、Ｃ接続点とする。
【００３０】
回路図１００は、スイッチングレギュレータＩＣ１０１の端子１０１Ａから出力したパルス信号をコイルＬおよびコンデンサＣにより平滑化して負荷部品１０２に定電圧の電力を供給するよう設計されている。また、回路図１００は、コイルＬの他端の電圧を、抵抗Ｒ１および抵抗Ｒ２で分圧して端子１０１Ｂにフィードバックするよう設計されている。そして、回路図１００は、スイッチングレギュレータＩＣ１０１が端子１０１Ｂの電圧に応じて端子１０１Ａから出力するパルス信号のＰＷＭ（pulse  width  modulation）制御を行うことで、負荷部品１０２に一定の電圧の電力を供給するよう設計されている。
【００３１】
実装設計では、回路図を元に、実装設計用のＣＡＤを用いて、実装図が作成される。例えば、実装設計の実施者は、回路図の部品やラインを、配置効率が良くなるように基板内に順に配置して回路図を実装図に反映させる。一般的に、実装設計の実施者は、回路図のあるラインに接続した部品を、左から右または上から下の順に近い位置に配置して回路図を実装図に反映させる。
【００３２】
図３Ｂは、実施例１における実装図の一例を示す図である。図３Ｂに示す実装図１５０は、図３Ａに示す回路図１００を反映させた配置パターンの一例である。実装図１５０では、図３Ａに示す回路図１００のスイッチングレギュレータＩＣ１０１、負荷部品１０２、コイルＬ、コンデンサＣ、抵抗Ｒ１、抵抗Ｒ２、Ｌ接続点、Ｒ接続点、Ｃ接続点に対応する部分に同じ符号を付している。
【００３３】
ところで、電子機器は、多機能化が進み、ＩＣを駆動させる様々な電源が生成されているが、部品の配置位置によっては、装置の誤動作や電子機器から放射する電磁ノイズが他の電子機器への影響が懸念される。
【００３４】
電子機器の開発では、回路設計の段階で部品の接続関係が設計され、実装設計の段階で実際の部品の配置関係が定まる。このため、従来の電子機器の開発では、実装設計の段階で、部品の配置関係を確認し、電磁ノイズの発生などの不具合のチェックが行われる。
【００３５】
実装設計では、例えば、実装図１５０に対して、電磁ノイズの発生などの不具合のチェックが行われる。例えば、実装設計のチェックでは、実装図１５０の回路に疑似的に信号を流した状態を計算によってシミュレーションし、電磁ノイズの発生などの不具合のチェックが行われる。
【００３６】
図３Ｃは、シミュレーションによって得られる信号の一例を示す図である。図３Ｃは、Ｒ接続点およびＣ接続点を流れる信号の電圧波形が示されている。実装図１５０では、出力電圧を平滑するＣ接続点より、電圧レベルを監視するＲ接続点がコイルＬに近い。このため、図３Ｃに示すように、Ｒ接続点を流れる信号の電圧波形の電圧レベルの変動が大きく、フィードバックの変動が多くなるため、誤動作が発生する虞がある。また、実装図１５０では、変動が大きい信号が流れる経路が大きく、ノイズが発生するノイズ経路が大きくなりノイズ放射も大きくなる。
【００３７】
図４Ａは、誤動作の発生を説明する図である。Ｒ接続点を流れる信号の電圧波形の電圧レベルの変動が大きい場合、ライン５を流れるフィードバックの信号の電圧波形の変動も大きく、誤動作が発生する虞がある。
【００３８】
図４Ｂは、ノイズ経路を説明する図である。実装図１５０では、ノイズが減衰されるＣ接続点までの経路が遠いため、ノイズが発生するノイズ経路が大きくなりノイズ放射も大きくなる。
【００３９】
電子機器の開発では、実装設計の段階で不具合が発見された場合、回路設計に戻って回路の修正が行われる場合がある。しかし、回路設計に戻って回路の修正が行われた場合、開発期間が長くなり、開発費用の増加や、製品化の遅れによる機会損失が発生する。
【００４０】
そこで、本実施例に係る情報処理装置１０は、回路設計時において、実装後の部品の位置関係が適切かを判定できるよう以下のように構成している。
【００４１】
図１に戻る。設定部４１は、各種の設定を行う。例えば、設定部４１は、判定対象とする回路図に位置関係を判定する対象範囲、対象部品を設定する。例えば、設定部４１は、回路図の回路上に始点と対象部品とを設定する。始点と対象部品は、設計者が指定してもよく、自動で設定してもよい。設定部４１は、設計者が指定した始点および対象部品を、始点および対象部品と設定してもよい。
【００４２】
例えば、設計者による回路設計時に、不具合のチェックを行う場合、設定部４１は、設計者が回路図に対して選択を行った際に、選択した対象を始点と設定する。例えば、設定部４１は、回路設計時に、設計者が、回路図の部品や接続点、コネクタを選択した場合、選択した部品や接続点、コネクタを始点と設定する。設定部４１は、選択した始点からの信号が流れるラインをトレースし、選択した始点からの信号が流れる各部品をそれぞれ対象部品と設定する。なお、設定部４１は、信号が流れるラインの途中または末端に対して部品が配置された場合やラインが接続された場合、ラインを流れる信号の出力元を始点と設定してもよい。そして、設定部４１は、始点からの信号が流れるラインをトレースし、選択した始点からの信号が流れる各部品をそれぞれ対象部品と設定する。例えば、設定部４１は、部品データ３０Ａに基づき、始点とされた部品について、信号を出力する端子や、出力される信号の種別を特定し、信号が流れるラインをトレースし、選択した始点からの信号が流れる各部品をそれぞれ対象部品と設定する。すなわち、設定部４１は、始点からの信号が流れる部品と始点の組み合わせを求め、組み合わせごとに、始点と対象部品を順に設定する。
【００４３】
また、例えば、設計済みの回路図に対して不具合のチェックを行う場合、設定部４１は、回路図から信号を出路する部品等を順に始点と選択する。そして、設定部４１は、選択した始点からの信号が流れるラインをトレースし、選択した始点からの信号が流れる各部品をそれぞれ対象部品と設定する。すなわち、設定部４１は、始点を順に変えて、それぞれの始点からの信号が流れるラインをトレースし、それぞれの始点からの信号が流れる各部品をそれぞれ対象部品として、始点と対象部品の組み合わせを求め、組み合わせごとに、始点と対象部品を順に設定する。
【００４４】
カウント部４２は、設定された始点と対象部品ごとに、始点と対象部品との間にある部品の接続関係からラインをトレースして、ラインの数をカウントする。例えば、カウント部４２は、部品間の線、部品と線の分岐ポイントとの間の線、分岐ポイントと分岐ポイントの間の線、分岐ポイントと部品の間の線をそれぞれ１つのラインとして、始点から対象部品に至るまでのラインの数をカウントする。
【００４５】
例えば、図３Ａに示す回路図１００では、Ｒ接続点およびＣ接続点は、線が分岐する分岐ポイントとなっている。カウント部４２は、ラインをトレースして、ラインの数をカウントする際に、分岐ポイントまでを１つのラインとしてカウントする。例えば、カウント部４２は、始点をスイッチングレギュレータＩＣ１０１とし、対象部品を抵抗Ｒ１とした場合、スイッチングレギュレータＩＣ１０１から抵抗Ｒ１へ至るライン１、２をそれぞれ１ラインとしてラインの数を２とカウントする。また、カウント部４２は、始点をスイッチングレギュレータＩＣ１０１とし、対象部品をコンデンサＣとした場合、スイッチングレギュレータＩＣ１０１からコンデンサＣへ至るライン１、２、３をそれぞれ１ラインとしてラインの数を３とカウントする。また、カウント部４２は、始点をスイッチングレギュレータＩＣ１０１とし、対象部品を負荷部品１０２とした場合、スイッチングレギュレータＩＣ１０１から負荷部品１０２へ至るライン１、２、３、４をそれぞれ１ラインとしてラインの数を４とカウントする。
【００４６】
判定部４３は、カウントされたラインの数から部品の位置関係を判定する。例えば、判定部４３は、カウントされたラインの数から、位置関係が不適切の部品があるかを判定する。例えば、判定部４３は、始点から信号が流れる各部品について、各部品のラインの数を比較し、位置関係が不適切の部品があるかを判定する。ここで、ラインの数は、始点からラインに沿った位置関係が遠いほど値が大きくなる。よって、ラインの数を比較することでラインに沿った場合の部品の位置関係を比較できる。
【００４７】
本実施例では、位置関係が不適切な部品の判定に用いるルールをルール情報３２に記憶している。
【００４８】
判定部４３は、ルール情報３２に記憶されたルールを満たす位置関係となる部品があるかを判定する。例えば、判定部４３は、始点された部品について、部品データ３０Ａから、部品の種別や、部品の端子から出力される信号の種別などを特定する。そして、判定部４３は、始点からのラインの数がカウントされた各対象部品のラインの数を比較し、ルール情報３２に記憶されたルールを満たす部品があるかを判定する。例えば、図３Ａに示す回路図１００では、端子１０１Ａが負荷部品１０２へ電力を供給する電源ラインであり、端子１０１Ａに対して抵抗Ｒ１のラインの数が２であり、コンデンサＣのラインの数が３であるため、ルール情報３２の１行目に該当する。この場合、回路図１００では、コンデンサＣと抵抗Ｒ１を位置関係が不適切な部品と判定する。
【００４９】
出力部４４は、各種の出力を行う。例えば、出力部４４は、判定部４３による判定の結果、位置関係が不適切である場合、位置関係が不適切である旨を出力する。例えば、出力部４４は、位置関係が不適切な部品を識別可能に表示する。例えば、出力部４４は、部品および始点から部品に至るラインの色や背景を変えて強調表示させ、エラーメッセージを表示する。例えば、図３Ａに示す回路図１００では、コンデンサＣ、抵抗Ｒ１、ライン１、ライン２およびライン３を強調表示させ、エラーメッセージを表示する。
【００５０】
これにより、設計者は、表示内容から位置関係が不適切な部品があることを把握できる。設計者は、位置関係が不適切な部品を修正する。
【００５１】
図５Ａは、実施例１における修正した回路図の一例を示す図である。回路図２００は、図３Ａに示した回路図１００のコンデンサＣと抵抗Ｒ１の位置関係の修正を行った場合を示している。回路図２００は、コイルＬの他端は、ライン２を介してコンデンサＣの一端に接続されている。コンデンサＣの一端は、さらに、ライン３を介して抵抗Ｒ１の一端に接続されている。抵抗Ｒ１の一端は、さらに、ライン４を介して負荷部品１０２に接続されている。すなわち、回路図２００では、図３Ａに示した回路図１００から、コンデンサＣと抵抗Ｒ１の位置を入れ替える修正が行われている。これにより、回路図２００では、Ｒ接続点を流れる信号の電圧波形の電圧レベルの変動が小さくでき、フィードバックの変動も小さくできるため、誤動作を抑制できる。
【００５２】
図５Ｂは、実施例１における修正した実装図の一例を示す図である。図５Ｂに示す実装図２５０は、図５Ａに示す回路図２００を反映させた配置パターンの一例である。実装図２５０では、図５Ａに示す回路図２００のスイッチングレギュレータＩＣ１０１、負荷部品１０２、コイルＬ、コンデンサＣ、抵抗Ｒ１、抵抗Ｒ２、Ｌ接続点、Ｒ接続点、Ｃ接続点に対応する部分に同じ符号を付している。また、実装図２５０では、変動が大きい信号が流れる経路が小さく、ノイズが発生するノイズ経路が小さくなりノイズ放射も小さくなる。
【００５３】
ここで、例えば、回路図で接続点のＸＹなどの座標を読込み、座標間の距離を算出して位置関係が不適切な部品を判断することが考えられる。しかしながら、回路図上での座標間の距離では、誤認識する場合がある。
【００５４】
図６は、実施例１における回路図の別の一例を示す図である。回路図３００は、位置関係が不適切な部品が無い良好な回路図である。回路図３００は、スイッチングレギュレータＩＣ１０１の端子ＳＷ１から出力したパルス信号をコイルＬ７およびコンデンサＣ１０４により平滑化して、定電圧の電力を供給するよう設計されている。また、回路図３００は、供給する電圧を、抵抗Ｒ２９、抵抗Ｒ３０と抵抗Ｒ３１とで分圧して端子ＶＦＢにフィードバックするよう設計されている。抵抗Ｒ２９の接続点は、Ｒ接続点とする。コンデンサＣ１０４の接続点は、Ｃ接続点とする。回路図３００では、スイッチングレギュレータＩＣ１０１の端子ＳＷ１からＲ接続点へのラインに沿った距離Ｌｒは、端子ＳＷ１からＣ接続点へのラインに沿った距離Ｌｃよりも大きく、電気的に遠い設計とされている。
【００５５】
この回路図３００に対して、座標間の距離を算出した場合、スイッチングレギュレータＩＣ１０１の端子ＳＷ１から抵抗Ｒ２９の距離は、距離Ｌｒｘと算出される。そして、距離Ｌｒｘが距離Ｌｃより近いため、抵抗Ｒ１がコンデンサＣよりも近く、位置関係が不適切な部品と誤判定される場合がある。
【００５６】
一方、本実施形態に係る情報処理装置１０は、始点と対象部品との間にある部品の接続関係からラインをトレースして、ラインの数をカウントすることで、座標的な距離ではなく、電気的な経路での距離を求めることができる。回路図の経路の部品は、経路に沿って順に実装図に反映される。例えば、実装設計の実施者は、回路図のあるラインに接続した部品を、左から右または上から下の順に近い位置に配置して回路図を実装図に反映させる。よって、回路図の電気的な経路での距離から特定される部品の配置関係は、実装図に反映にも反映される。これにより、情報処理装置１０は、回路図の電気的な経路での距離を求めることで、実装した際の位置関係を判別でき、実装後に位置関係が不適切となる部品を適切に判別できる。
【００５７】
［処理の流れ］
次に、情報処理装置１０が、回路図から不具合が発生する位置関係の部品を検出する部品位置検出処理の流れについて説明する。図７は、部品位置検出処理の一例を示すフローチャートである。この部品位置検出処理は、所定のタイミング、例えば、設計者が回路図に対して選択を行ったタイミングで実行される。
【００５８】
設定部４１は、設計者が回路図に対して選択した対象を始点と設定し、部品データ３０Ａから部品に関するデータを収集して、始点とされた部品について、信号を出力する端子や、出力される信号の種別を特定する（ステップＳ１０）。設定部４１は、信号が流れるラインをトレースし、選択した始点からの信号が流れる各部品をそれぞれ対象部品と設定する（ステップＳ１１）。
【００５９】
カウント部４２は、設定された始点と対象部品ごとに、始点と対象部品との間にある部品の接続関係からラインをトレースして、ラインの数をカウントする（ステップＳ１２）。
【００６０】
判定部４３は、ルール情報３２に記憶されたルールを読み込む（ステップＳ１３）。判定部４３は、ルール情報３２に記憶されたルールを満たす位置関係となる部品があるかを判定する（ステップＳ１４）。判定の結果、ルールを満たす位置関係となる部品がない場合（ステップＳ１４：Ｎｏ）、判定部４３は、処理を終了する。
【００６１】
一方、判定の結果、ルールを満たす位置関係となる部品がある場合（ステップＳ１４：Ｙｅｓ）、出力部４４は、位置関係が不適切である旨を出力し（ステップＳ１５）、処理を終了する。これにより、設計者は、位置関係が不適切な部品を修正できる。回路図は、修正が行われた後、再度、部品位置検出処理が行われる構成であってもよい。
【００６２】
このように、本実施例に係る情報処理装置１０は、回路図の回路上に始点と対象部品とを設定する。情報処理装置１０は、始点と前記対象部品との間にある部品の接続関係からラインをトレースして、ラインの数をカウントする。情報処理装置１０は、カウントされたラインの数から部品の位置関係を判定する。情報処理装置１０は、判定の結果、位置関係が不適切である場合、位置関係が不適切である旨を出力する。これにより、情報処理装置１０は、回路設計時において、実装後の部品の位置関係が適切かを判定できる。
【００６３】
また、本実施例に係る情報処理装置１０は、回路図の回路上で始点からの信号が流れる部品を対象部品として順に設定する。情報処理装置１０は、対象部品ごとに、始点から当該対象部品に至るまでのラインの数をカウントする。情報処理装置１０は、対象部品に設定された各部品のラインの数を比較することで、部品の位置関係を判定する。これにより、情報処理装置１０は、始点からの信号が流れる各部品について、実装後の部品の位置関係が適切かを判定できる。
【００６４】
また、本実施例に係る情報処理装置１０は、回部品間の線、部品と線の分岐ポイントとの間の線、分岐ポイントと分岐ポイントの間の線、分岐ポイントと部品の間の線をそれぞれ１つのラインとして、始点から対象部品に至るまでのラインの数をカウントする。これにより、情報処理装置１０は、ラインの数から電気的な経路での距離を求めることができ、位置関係が不適切な部品を適切に判別できる。
【００６５】
また、本実施例に係る情報処理装置１０は、始点からの距離が第１部品より近いと位置関係が不適切である第２部品について、第１部品のライン数と第２部品のライン数とが等しい場合も、位置関係が不適切である判定する。これにより、情報処理装置１０は、第１部品と第２部品の位置関係により、不具合が発生することを抑制できる。
【実施例２】
【００６６】
上記実施例１では、部品間の線、部品と分岐ポイントとの間の線、分岐ポイントと分岐ポイントの間の線、分岐ポイントと部品の間の線をそれぞれ１つのラインとして、ラインの数をカウントする場合を説明した。実施例２では、ラインの数のカウントの別な手法を説明する。
【００６７】
実施例２に係る情報処理装置１０は、図１に示した実施例１に係る情報処理装置１０と同様の構成であるため、同一部分については説明を省略し、主に異なる部分について説明する。
【００６８】
ここで、回路設計用のＣＡＤには、回路図の画面に、等間隔でポイントが２次元状に配置され、ポイントに合わせて部品の接続関係が示す回路が配置されるものがある。
【００６９】
図８は、実施例２における回路図の一例を示す図である。図８には、図３Ａに示した回路図１００が示されている。回路図１００には、等間隔でポイントが２次元状に配置され、ポイントに合わせて部品の接続関係が示す回路が配置されるものがある。
【００７０】
カウント部４２は、設定された始点と対象部品ごとに、始点と対象部品との間にある部品の接続関係からラインをトレースして、ポイント間を繋ぐ線を１つのラインとして、始点から対象部品に至るまでのラインの数をカウントする。例えば、カウント部４２は、ポイント間を繋ぐ線を１つのラインとして、始点から前記対象部品に至るまでのラインの数をカウントする。例えば、カウント部４２は、始点をスイッチングレギュレータＩＣ１０１とし、対象部品を抵抗Ｒ１とした場合、スイッチングレギュレータＩＣ１０１から抵抗Ｒ１へ至るライン１で１ライン、ライン２で１ラインとして、ラインの数を２とカウントする。また、カウント部４２は、スイッチングレギュレータＩＣ１０１からコンデンサＣへ至るライン１で１ライン、ライン２で１ライン、ライン３で２ラインとして、ラインの数を４とカウントする。また、カウント部４２は、スイッチングレギュレータＩＣ１０１から負荷部品１０２へ至るライン１で１ライン、ライン２で１ライン、ライン３で２ライン、ライン４で４ラインとして、ラインの数を８とカウントする。
【００７１】
判定部４３は、ルール情報３２に記憶されたルールを満たす位置関係となる部品があるかを判定する。例えば、図８に示す回路図１００では、端子１０１Ａが負荷部品１０２へ電力を供給する電源ラインであり、端子１０１Ａに対して抵抗Ｒ１のラインの数が２であり、コンデンサＣのラインの数が４であるため、ルール情報３２の１行目に該当する。この場合、回路図１００では、コンデンサＣと抵抗Ｒ１を位置関係が不適切な部品と判定する。
【００７２】
このように、情報処理装置１０は、ポイント間を繋ぐ線を１つのラインとして、始点から対象部品に至るまでのラインの数をカウントしても、位置関係が不適切な部品を同様に判定できる。
【００７３】
このように、情報処理装置１０は、回路図に等間隔でポイントが２次元状に配置され、ポイントに合わせて部品の接続関係が示す回路が配置される場合、ポイント間を繋ぐ線を１つのラインとして、始点から対象部品に至るまでのラインの数をカウントする。これにより、情報処理装置１０は、ラインの数から実装後に近い位置関係を求めることができる。
【実施例３】
【００７４】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。
【００７５】
例えば、上記の実施例では、ルール情報３２に、不具合が発生する部品の組み合わせごとに、不具合が発生する位置関係となるラインの数の条件を記憶させる。判定部４３は、ルール情報３２の条件を満たす場合に、不具合が発生するものと判定する場合を説明したが、これに限定されるものではない。例えば、ルール情報３２に、不具合が発生する部品の組み合わせごとに、不具合が発生しない位置関係となるラインの数の条件を記憶させる。判定部４３は、ルール情報３２の条件を満たさない場合に、不具合が発生するものと判定してもよい。
【００７６】
また、本実施例において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともできる。あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【００７７】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られない。つまり、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。例えば、情報処理装置１０の機能を複数のサーバに分散して実装させるような構成であってもよい。さらに、各装置にて行なわれる各処理機能は、その全部又は任意の一部が、ＣＰＵ及び当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００７８】
［システム］
さて、これまで開示のシステムに関する各実施例について説明したが、各実施例における情報処理装置１０のハードウェア構成の一例について説明する。各装置で行われる各種処理機能は、ＣＰＵ（又はＭＰＵ、ＭＣＵ（Micro  Controller  Unit）等のマイクロ・コンピュータ）上で、その全部又は任意の一部を実行するようにしてもよい。また、各種処理機能は、ＣＰＵ（又はＭＰＵ、ＭＣＵ等のマイクロ・コンピュータ）で解析実行されるプログラム上、又はワイヤードロジックによるハードウェア上で、その全部又は任意の一部を実行するようにしてもよいことは言うまでもない。上記の各実施例で説明した各種の処理は、予め用意されたプログラムをコンピュータで実行することで実現できる。そこで、以下では、ハードウェア構成の一例として、上記の各実施例と同様の機能を有するプログラムを実行するコンピュータの一例を説明する。
【００７９】
図９は、ハードウェア構成の一例を示す図である。情報処理装置１０は、図９に示すコンピュータ７０００と同様のハードウェア構成により実現できる。図９に示すように、コンピュータ７０００は、各種演算処理を実行するプロセッサ７００１と、入出力装置７００２と、通信装置７００３とを有する。また、コンピュータ７０００は、各種情報を一時記憶するＲＡＭ７００４と、ハードディスク装置７００５とを有する。また、各装置７００１〜７００５は、バス７００６に接続される。
【００８０】
ハードディスク装置７００５には、上記各実施例で示した設定部４１、カウント部４２、判定部４３および出力部４４の各処理部と同様の機能を有する部品位置検出プログラムが記憶される。ハードディスク装置７００５には、部品位置検出プログラムを実現するための各種データが記憶される。例えば、ハードディスク装置７００５には、ルール情報３２が記憶される。
【００８１】
プロセッサ７００１は、ハードディスク装置７００５に記憶された各プログラムを読み出して、ＲＡＭ７００４に展開して実行することで、各種の処理を行う。また、これらのプログラムは、コンピュータ７０００を上記各実施例で示した設定部４１、カウント部４２、判定部４３および出力部４４として機能させることができる。なお、上記の各プログラムは、必ずしもハードディスク装置７００５に記憶されている必要はない。例えば、コンピュータ７０００が読み取り可能な記憶媒体に記憶されたプログラムを、コンピュータ７０００が読み出して実行するようにしてもよい。
【符号の説明】
【００８２】
１０  情報処理装置
２０  入力部
２１  表示部
２２  記憶部
２３  制御部
３０  ＣＡＤマスタデータ
３０Ａ  部品データ
３１  設計データ
３２  ルール情報
４０  設計制御部
４１  設定部
４２  カウント部
４３  判定部
４４  出力部
【図１】
2018163576.tif 000003
【図２】
2018163576.tif 000004
【図３Ａ】
2018163576.tif 000005
【図３Ｂ】
2018163576.tif 000006
【図３Ｃ】
2018163576.tif 000007
【図４Ａ】
2018163576.tif 000008
【図４Ｂ】
2018163576.tif 000009
【図５Ａ】
2018163576.tif 000010
【図５Ｂ】
2018163576.tif 000011
【図６】
2018163576.tif 000012
【図７】
2018163576.tif 000013
【図８】
2018163576.tif 000014
【図９】
2018163576.tif 000015