(57)【特許請求の範囲】
【請求項１】
基板に各部品を実装する製造工程の順序および各製造工程で実装される部品に関する実装情報と、各部品を基板に実装する際に確保すべき領域を示す複数の第１の領域情報と、各部品を基板に実装した際に占有する領域を示す第２の領域情報と、部品名、部品の種類、実装区分の何れか毎に適用する前記第１の領域情報を指定する指定情報と、部品名、部品の種類、実装区分の何れの前記第１の領域情報を優先するかの優先順位を示す優先順位情報とを記憶する記憶部と、
前記記憶部に記憶された実装情報に基づき、設計対象の基板上に配置された第１の部品と第２の部品を実装する製造工程の前後関係を判別する判別部と、
前記第１の部品および前記第２の部品のうち前記判別部により製造工程が後と判別された部品については当該部品の部品名、部品の種類、実装区分の何れかが該当する前記指定情報で指定された前記第１の領域情報のうち、前記優先順位情報により示される優先順位の高い前記第１の領域情報を前記記憶部から取得し、製造工程が前と判別された部品については前記第２の領域情報を前記記憶部から取得する取得部と、
前記取得部により取得された前記第１の領域情報と前記第２の領域情報を比較して干渉の有無を判定する判定部と
を有することを特徴とする設計支援装置。 
【請求項２】
前記記憶部は、製造工程別に、当該製造工程で実装可能な各部品についてそれぞれ適用する前記第１の領域情報が指定された指定情報と、基板への部品の実装で実施される製造工程および製造工程の順序を示す製造工程情報とを記憶し、
前記判別部は、前記第１の部品および前記第２の部品について、それぞれ前記指定情報に当該部品に適用する前記第１の領域情報が指定された製造工程のうち前記製造工程情報で実施される順序が最も早い製造工程を当該部品の製造工程として、前記第１の部品と前記第２の部品を実装する製造工程の前後関係を判別する
ことを特徴とする請求項１に記載の設計支援装置。
【請求項３】
コンピュータに、
基板に各部品を実装する製造工程の順序および各製造工程で実装される部品に関する実装情報と、各部品を基板に実装する際に確保すべき領域を示す複数の第１の領域情報と、各部品を基板に実装した際に占有する領域を示す第２の領域情報と、部品名、部品の種類、実装区分の何れか毎に適用する前記第１の領域情報を指定する指定情報と、部品名、部品の種類、実装区分の何れの前記第１の領域情報を優先するかの優先順位を示す優先順位情報とを記憶する記憶部に記憶された前記実装情報に基づき、設計対象の基板上に配置された第１の部品と第２の部品を実装する製造工程の前後関係を判別し、
前記第１の部品および前記第２の部品のうち製造工程が後と判別された部品については当該部品の部品名、部品の種類、実装区分の何れかが該当する前記指定情報で指定された前記第１の領域情報のうち、前記優先順位情報により示される優先順位の高い前記第１の領域情報を前記記憶部から取得し、製造工程が前と判別された部品については当該部品を基板に実装した際に占有する領域を示す第２の領域情報を前記記憶部から取得し、
取得された前記第１の領域情報と前記第２の領域情報を比較して干渉の有無を判定する
各処理を実行させることを特徴とする設計支援プログラム。 
【請求項４】
コンピュータが、
基板に各部品を実装する製造工程の順序および各製造工程で実装される部品に関する実装情報と、各部品を基板に実装する際に確保すべき領域を示す複数の第１の領域情報と、各部品を基板に実装した際に占有する領域を示す第２の領域情報と、部品名、部品の種類、実装区分の何れか毎に適用する前記第１の領域情報を指定する指定情報と、部品名、部品の種類、実装区分の何れの前記第１の領域情報を優先するかの優先順位を示す優先順位情報とを記憶する記憶部に記憶された前記実装情報に基づき、設計対象の基板上に配置された第１の部品と第２の部品を実装する製造工程の前後関係を判別し、
前記第１の部品および前記第２の部品のうち製造工程が後と判別された部品については当該部品の部品名、部品の種類、実装区分の何れかが該当する前記指定情報で指定された前記第１の領域情報のうち、前記優先順位情報により示される優先順位の高い前記第１の領域情報を前記記憶部から取得し、製造工程が前と判別された部品については当該部品を基板に実装した際に占有する領域を示す第２の領域情報を前記記憶部から取得し、
取得された前記第１の領域情報と前記第２の領域情報を比較して干渉の有無を判定する
各処理を実行することを特徴とする設計支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、設計支援装置、設計支援プログラム、および設計支援方法に関する。
【背景技術】
【０００２】
従来より、ＣＡＤ（Computer  Aided  Design）装置などの回路設計を支援する設計支援装置が知られている。設計支援装置では、ユーザが基板に配置する部品の何れかを配置対象部品として選択し、配置対象部品を基板上に配置するステップを繰り返して回路設計が行われる。回路設計では、基板上での部品間の間隔を狭く配置するほど高密度に部品を配置できるが、部品の間隔が狭すぎる場合、製造工程で部品を実装できない場合がある。そこで、設計支援装置では、各部品毎に、当該部品を実装する際に確保すべき領域を干渉チェック領域として、各部品の干渉チェック領域どうしが干渉しないかチェックすることにより、部品の配置の可否を判定する。
【０００３】
また、設計支援装置に関して、次のような技術が提案されている。例えば、基板上の領域のうち、配置位置が決定済みの部品及び配線経路を避けて、部品の配置位置と当該部品間の配線の配線経路を交互に１つずつ決定することにより、高密度な回路設計を行う技術が提案されている。また、基板に配置された各部品間の間隙幅寸法と、入力された各部品間の最小間隙値とをデータ化し、両者の大小をチェックすることで、高密度なプリント基板を設計する技術が提案されている。また、基板の一方の面に部品を配置する候補位置を取り上げ、他方の面にはんだ面の候補位置を取り上げ、両方の候補位置が部品の配置につかわれていない場合、部品の配置位置と決定する技術が提案されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平８−２２７４２８号公報
【特許文献２】特開２０００−２０７４３８号公報
【特許文献３】特開平４−６９７７４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、基板上に配置された各部品は、実装する製造工程が異なる場合があり、それぞれ部品を実装した後の製造工程で基板に部品を実装するための領域まで干渉チェック領域として確保する必要がない。このため、従来の技術のように、部品を実装する際に確保すべき領域を干渉チェック領域として、各部品の干渉チェック領域どうしの干渉チェックを行った場合、部品どうしが不必要に間隔を開けた配置となる場合がある。
【０００６】
なお、先行技術は、何れも各部品の製造工程の違いにより、他の部品との間で確保する必要がある間隔が変化することを考慮しておらず、部品どうしが不必要に間隔を開けた配置となる場合がある。
【０００７】
開示の技術は、上記の事実に鑑みてなされたものであって、高密度な部品の実装設計を行うことができる設計支援装置、設計支援プログラム、および設計支援方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本願の開示する設計支援装置は、一つの態様において、記憶部と、判別部と、取得部と、判定部とを有する。記憶部は、基板に各部品を実装する製造工程の順序および各製造工程で実装される部品に関する実装情報と、各部品を基板に実装する際に確保すべき領域を示す第１の領域情報と、各部品を基板に実装した際に占有する領域を示す第２の領域情報とを記憶する。判別部は、前記記憶部に記憶された実装情報に基づき、設計対象の基板上に配置された第１の部品と第２の部品を実装する製造工程の前後関係を判別する。取得部は、前記第１の部品および前記第２の部品のうち前記判別部により製造工程が後と判別された部品については前記第１の領域情報、製造工程が前と判別された部品については前記第２の領域情報を前記記憶部から取得する。判定部は、前記取得部により取得された前記第１の領域情報と前記第２の領域情報を比較して干渉の有無を判定する。
【発明の効果】
【０００９】
本願の開示する設計支援装置の一つの態様によれば、高密度な部品の実装設計を行うことができる。
【図面の簡単な説明】
【００１０】
【図１】図１は、設計支援装置の全体構成を示す図である。
【図２】図２は、部品の各種の領域の一例を示した図である。
【図３】図３は、部品形状ライブラリのデータ構成の一例を示す図である。
【図４】図４は、製造工程テーブルのデータ構成の一例を示す図である。
【図５】図５は、適用領域テーブルのデータ構成の一例を示す図である。
【図６】図６は、優先順位テーブルのデータ構成の一例を示す図である。
【図７】図７は、回路設計において表示部に表示される回路設計画面の一例を示す図である。
【図８】図８は、回路設計において表示部に表示される回路設計画面の一例を示す図である。
【図９】図９は、回路設計において表示部に表示される回路設計画面の一例を示す図である。
【図１０】図１０は、部品の製造工程および確保すべき領域を特定する流れを説明する図である。
【図１１】図１１は、１つのテーブルに各種の情報を記憶させた場合のテーブルのデータ構成の一例を示す図である。
【図１２】図１２は、基板に各部品を実装する製造工程と配置される部品の一例を示す図である。
【図１３】図１３は、図１２に示す各部品の実装で実施される製造工程および製造工程の順序を記憶した製造工程テーブルを示す図である。
【図１４】図１４は、適用領域テーブルのデータ構成の一例を示す図である。
【図１５】図１５は、各部品の確保すべき領域の一例を示す図である。
【図１６】図１６は、１つのテーブルに各種の情報を記憶させた場合のテーブルのデータ構成の一例を示す図である。
【図１７】図１７は、基板に各部品を実装する製造工程と配置される部品の他の例を示す図である。
【図１８】図１８は、図１７に示す各部品の実装で実施される製造工程および製造工程の順序を記憶した製造工程テーブルを示す図である。
【図１９】図１９は、適用領域テーブルのデータ構成の一例を示す図である。
【図２０】図２０は、各部品の確保すべき領域の一例を示す図である。
【図２１】図２１は、１つのテーブルに各種の情報を記憶させた場合のテーブルのデータ構成の一例を示す図である。
【図２２】図２２は、基板に各部品を実装する製造工程と配置される部品の他の例を示す図である。
【図２３】図２３は、図２２に示す各部品の実装で実施される製造工程および製造工程の順序を記憶した製造工程テーブルを示す図である。
【図２４】図２４は、適用領域テーブルのデータ構成の一例を示す図である。
【図２５】図２５は、優先順位テーブルのデータ構成の一例を示す図である。
【図２６】図２６は、各部品の確保すべき領域の一例を示す図である。
【図２７】図２７は、１つのテーブルに各種の情報を記憶させた場合のテーブルのデータ構成の一例を示す図である。
【図２８】図２８は、回路設計を支援する設計支援処理の手順を示すフローチャートである。
【図２９】図２９は、設計支援プログラムを実行するコンピュータを示す図である。
【発明を実施するための形態】
【００１１】
以下に、本発明にかかる設計支援装置、設計支援プログラム、および設計支援方法の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。そして、各実施例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【実施例１】
【００１２】
実施例１に係る設計支援装置について説明する。図１は、設計支援装置の全体構成を示す図である。設計支援装置１０は、ＣＡＤ装置などのユーザによる回路設計を支援するコンピュータである。図１に示すように、設計支援装置１０は、入力部１１と、表示部１２と、記憶部１３と、メモリ部１４と、制御部１５とを有する。
【００１３】
入力部１１は、各種情報を制御部１５に入力する。例えば、入力部１１は、回路設計において、ユーザから設計対象の基板上に配置する部品や、部品の基板上での配置位置の指定を受け付けて、受け付けた操作内容を示す操作情報を制御部１５に入力する。入力部１１の一例としては、マウスやキーボードなどの操作受付デバイスが挙げられる。
【００１４】
表示部１２は、各種情報を表示する。例えば、表示部１２は、基板上に各種の部品を配置して回路設計を行う設計画面を表示する。この設計画面には、例えば、設計対象の基板や基板に配置する各種部品が表示される。また、設計画面には、配置した部品の間で干渉などのエラーが発生した場合、発生したエラーに関する情報が表示される。表示部１２のデバイスの一例としては、ＬＣＤ（Liquid  Crystal  Display）やＣＲＴ（Cathode  Ray  Tube）などの表示デバイスが挙げられる。
【００１５】
記憶部１３は、各種情報を記憶する。例えば、記憶部１３は、ネット接続テーブル１３ａ、部品配置テーブル１３ｂ、部品属性ライブラリ１３ｃ、部品形状ライブラリ１３ｄ、製造工程テーブル１３ｅ、適用領域テーブル１３ｆ、優先順位テーブル１３ｇを記憶する。記憶部１３のデバイスの一例としては、フラッシュメモリやＮＶＳＲＡＭ（Non  Volatile  Static  Random  Access  Memory）などのデータを書き換え可能な半導体メモリや、ハードディスク、光ディスクなどの記憶装置が挙げられる。
【００１６】
ネット接続テーブル１３ａは、回路設計を行う各種の部品の端子間の接続関係を示す情報を記憶するテーブルである。部品配置テーブル１３ｂは、基板上に配置された各部品の基板上での配置位置を示す情報を記憶するテーブルである。部品属性ライブラリ１３ｃは、回路設計を行う部品の部品名、部品の型格、部品の実装区分など部品に関する各種の属性情報を記憶するテーブルである。部品名は、部品を識別するために付与されるコードや名称などの識別情報である。同じ部品には、同一の識別情報が付与される。型格は、部品の種類を示す情報である。例えば、機能やサイズが同様と分類される部品には、同一の識別情報が付与される。実装区分は、部品を基板に実装するか実装方法に応じて部品を区分けしたものである。実装区分の一例としては、ＩＭＤ（Insertion  mount  Device：挿入実装部品）や、ＳＭＤ（Surface  Mount  Device：表面実装部品）、後付け部品、機構部品などがある。部品形状ライブラリ１３ｄは、各部品に関する各種の領域を示す情報を記憶するテーブルである。
【００１７】
ここで、部品の各種の領域について説明する。図２は、部品の各種の領域の一例を示した図である。図２には、部品の一例として集積回路２０が示されている。図２に示す集積回路２０は、矩形状であり、対向する２つの側面に４個ずつ合計８個の端子２０ａが設けられている。本実施例では、部品の外形領域を部品ボディ領域とする。例えば、図２に示す集積回路２０では、端子２０ａを含む外形領域を部品ボディ領域２２とする。
【００１８】
また、基板２１に部品を配置した場合、基板の部品に覆われた部分は、他の部品を配置できない。また、基板の集積回路２０の周辺には、部品に覆われはいないものの、他の部品の配置が困難な領域が存在する場合がある。このような他の部品の配置が困難な領域を、部品を基板に実装した際に部品が占有する占有領域とする。例えば、図２に示す集積回路２０では、集積回路２０の端子２０ａの間や端子２０ａの近傍が他の部品の配置が困難な領域となるため、端子２０ａを外接するように囲む矩形領域を占有領域２３とする。
【００１９】
また、基板には、部品を配置する際に、部品を実装するために確保すべき領域がある。例えば、人が基板に部品をハンダで手付けする場合、基板に部品を実装するには、基板上の部品の周辺に、はんだごてを当てて手付けするための手付け領域を必要とする。また、治具を用いて基板に部品を実装する場合、基板に治具を配置するための治具領域を必要とする。例えば、図２に示す集積回路２０では、集積回路２０とその周辺のはんだごてを当てるスペースを設けた領域を手付け領域２４とし、集積回路２０と治具を配置するスペースを設けた領域を治具領域２５とする。なお、図２の例では、占有領域２３に部品ボディ領域２２が含まれ、手付け領域２４に部品ボディ領域２２が含まれ、治具領域２５に手付け領域２４が含まれるが、各領域を識別しやすくするため、重複する領域については大きい領域のハッチを省略している。
【００２０】
部品形状ライブラリ１３ｄには、部品毎に、当該部品の部品ボディ領域および占有領域を示す領域情報を記憶する。また、部品形状ライブラリ１３ｄには、部品を基板に実装する際に確保すべき領域を示す領域情報を記憶する。例えば、部品形状ライブラリ１３ｄには、手付け領域や治具領域を示す領域情報を記憶する。また、部品形状ライブラリ１３ｄには、部品の型格、部品の実装区分毎に、手付け領域および治具領域を示す領域情報を記憶する。この手付け領域および治具領域を示す領域情報は、部品の中心からの座標として定義してもよく、部品の占有領域からさらに拡張する範囲を示す座標として定義してもよい。部品形状ライブラリ１３ｄに記憶される各領域情報は、標準の部品については、予め登録されていてもよく、利用者が入力部１１あるいは、設計支援装置１０と通信可能とされたクライアントコンピュータなどの端末装置から登録してもよい。
【００２１】
図３は、部品形状ライブラリのデータ構成の一例を示す図である。図３に示すように、部品形状ライブラリ１３ｄは、識別キー、領域分類、形状の各項目を有する。識別キーの項目は、部品名や、型格、実装区分毎に付された識別情報を記憶する領域である。領域分類の項目は、領域の種類を記憶する領域である。形状の項目は、領域を示す領域情報を記憶する領域である。なお、図３の例では、形状の項目に、領域情報により示された領域を図形として示している。
【００２２】
図３の例では、識別キーが「ＩＭＤ」、領域の種類が「占有領域」として、部品３０の上下２つの側面からそれぞれ所定の距離までの領域が占有領域を示す領域情報として記憶されていることを示す。また、識別キーが「ＩＭＤ」、領域の種類が「手付け領域」として、部品３０の各側面からそれぞれはんだごてを当てることができるスペースを設けた領域が手付け領域示す領域情報として記憶されていることを示す。
【００２３】
製造工程テーブル１３ｅは、基板への部品の実装で実施される製造工程および製造工程の順序を記憶するテーブルである。図４は、製造工程テーブルのデータ構成の一例を示す図である。図４に示すように、製造工程テーブル１３ｅは、順序、製造工程の各項目を有する。順序の項目は、実施される製造工程の順序を記憶する領域である。順序の項目は、実施される製造工程の場合、実施される順番を示す数字が設定され、実施されない製造工程の場合、「−」が設定される。製造工程の項目は、基板に部品を実装する製造工程を記憶する領域である。製造工程テーブル１３ｅには、基板への部品を実装で実施される可能がある製造工程が登録されている。図４の例では、製造工程として「リフロー」、「フロー」、「後付け」、「圧入」、「機構組立」、「検査」、「設定調整」、「試験」、「リワーク」が登録されている。「リフロー」は、リフロー工程により部品のはんだ付けを行って部品を実装する製造工程を示す。「フロー」は、フロー工程により部品のはんだ付けを行って部品を実装する製造工程を示す。「後付け」は、人がはんだごてにより部品のはんだ付けを行って部品を実装する製造工程を示す。「圧入」は、圧入治具を用いて、部品を実装する製造工程を示す。「機構組立」は、ねじなどにより機構部品の取り付けを行って機構部品を実装する製造工程を示す。「検査」は、部品が実装された基板の外観の検査を行う検査工程を示す。「設定調整」は、調整可能な調整部品の調整作業を行う調整工程を示す。「試験」は、基板の総合試験を行う試験工程を示す。「リワーク」は、部品を取り外して、再実装を行う再実装工程を示す。
【００２４】
図４の例では、「リフロー」に順序「１」、「後付け」に順序「２」、「機構組立」に順序「３」が設定されており、「リフロー」、「後付け」、「機構組立」の順に製造工程が実施されることを示す。
【００２５】
適用領域テーブル１３ｆは、製造工程別に、確保すべき領域を指定する指定情報を記憶するテーブルである。図５は、適用領域テーブルのデータ構成の一例を示す図である。図５に示すように、適用領域テーブル１３ｆは、識別フラグ、識別キー、製造工程の各項目を有する。製造工程の項目は、基板への部品の実装で実施される可能がある製造工程に項目が分かれている。図５の例では、製造工程の項目が「リフロー」、「フロー」、「後付け」、「圧入」、「機構組立」の項目に分かれている。識別フラグの項目は、確保すべき領域の指定が部品名、型格、実装区分の何れの単位でなされたものかを示す。識別キーの項目は、部品名や、型格、実装区分毎に付された識別情報を記憶する領域である。製造工程の項目は、それぞれの製造工程で実装可能な各部品についてそれぞれ確保すべき領域として適用する領域を指定する指定情報を記憶する領域である。製造工程の項目は、識別キーで識別される部品が実装可能な製造工程の場合、確保すべき領域として適用する領域が設定され、実装できない製造工程の場合、「未定義」と設定される。
【００２６】
図５の例では、識別キー「ＩＭＤ」は、識別フラグに「実装区分」と設定され、実装区分単位での確保すべき領域の指定であることを示す。また、識別キー「ＩＭＤ」は、製造工程が「フロー」と「後付け」に確保すべき領域が指定され、「フロー」と「後付け」の製造工程で実装が可能であることを示す。また、識別キー「ＩＭＤ」は、「フロー」の製造工程では確保すべき領域が「占有領域」であり、「後付け」の製造工程では確保すべき領域が「手付け領域」であることを示す。
【００２７】
また、図５の例では、識別キー「ＡＢＣ」は、識別フラグに「手配型格」と設定され、型格単位での確保すべき領域の指定であることを示す。また、識別キー「ＡＢＣ」は、製造工程が「フロー」と「後付け」と「圧入」に確保すべき領域が指定され、「フロー」と「後付け」と「圧入」の製造工程で実装が可能であることを示す。また、識別キー「ＡＢＣ」は、「フロー」の製造工程では確保すべき領域が「占有領域」であり、「後付け」の製造工程では確保すべき領域が「手付け領域」であり、「圧入」の製造工程では確保すべき領域が「治具領域」であることを示す。
【００２８】
また、図５の例では、識別キー「ＩＣ１１」は、識別フラグに「部品名」と設定され、部品名単位での確保すべき領域の指定であることを示す。また、識別キー「ＩＣ１１」は、製造工程が「フロー」と「後付け」と「圧入」に確保すべき領域が指定され、「フロー」と「後付け」と「圧入」の製造工程で実装が可能であることを示す。また、識別キー「ＩＣ１１」は、「フロー」の製造工程では確保すべき領域が「占有領域」であり、「後付け」の製造工程では確保すべき領域が「手付け領域」であり、「圧入」の製造工程では確保すべき領域が「治具領域」であることを示す。
【００２９】
優先順位テーブル１３ｇは、部品名、型格、実装区分の何れの確保すべき領域を優先するかを記憶するテーブルである。図６は、優先順位テーブルのデータ構成の一例を示す図である。図６に示すように、優先順位テーブル１３ｇは、順位、識別フラグの各項目を有する。順位の項目は、優先順位を示す番号を記憶する領域である。識別フラグの項目は、優先順位の指定が部品名、型格、実装区分の何れの対するものかを記憶する領域である。
【００３０】
図６の例では、部品名単位の確保すべき領域の優先順位が１位であり、型格単位の確保すべき領域の優先順位が２位であり、実装区分単位の確保すべき領域の優先順位が３位であることを示す。
【００３１】
図１の説明に戻り、メモリ部１４は、データを書き換え可能な揮発性のメモリであり、各種情報を一時的に記憶する。例えば、メモリ部１４は、後述する制御部１５が各種処理を実行する際のワークエリアとして用いられる。メモリ部１４のデバイスの一例としては、ＲＡＭ（Random  Access  Memory）などの半導体メモリが挙げられる。
【００３２】
制御部１５は、例えば、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）などの電子回路であり、設計処理部１５ａと、判別部１５ｂと、取得部１５ｃと、判定部１５ｄとを有する。
【００３３】
設計処理部１５ａは、回路設計に関する各種制御を行う。例えば、設計処理部１５ａは、設計対象の基板、基板に配置する各部品、各部品の端子間の接続関係などの各種情報を表示部１２に表示させる制御を行う。また、設計処理部１５ａは、入力部１１で選択を指示する操作を受け付けた部品を選択状態とし、選択された部品を設計対象の基板上の指定された配置位置に配置する制御を行う。また、設計処理部１５ａは、後述する判定部１５ｄによる部品間の干渉の有無の判定結果に基づき、干渉ありと判定された部品をエラー表示させる表示させる制御を行う。ユーザは、入力部１１から基板に配置する部品の何れかを配置対象部品として選択し、配置対象部品を基板上に配置する指示操作を繰り返して回路設計を行う。
【００３４】
図７〜図９は、回路設計において表示部に表示される回路設計画面の一例を示す図である。図７〜図９の例では、設計対象の基板４０と、部品４１ａ〜４１ｊが表示され、ネット接続テーブル１３ａに基づく部品４１ａ〜４１ｊの端子間の接続関係がネット４２により表示されている。図７の例は、部品４１ｂを選択して基板４０上に配置を行う状態を示す。図８の例は、選択した部品４１ｂを基板４０上に配置した状態を示す。図８の例は、部品４１ａ〜４１ｊを基板４０上に配置した状態を示す。
【００３５】
判別部１５ｂは、設計対象の基板上に配置された各部品間の製造工程の前後関係を判別する。例えば、判別部１５ｂは、基板上に部品が配置された場合、基板に配置された配置部品の周囲の近傍に配置された近傍部品を特定する。判別部１５ｂは、例えば、基板上で配置された配置部品から所定距離以内にある部品を近傍部品と特定する。この所定距離は、固定値としてもよく、設計支援装置１０を利用する者が任意の値に設定してよく、配置部品の大きさや配置部品の干渉チェックを行う領域の大きさに応じて変化してもよい。
【００３６】
判別部１５ｂは、配置部品と特定した近傍部品の製造工程を特定する。部品の製造工程の特定は、以下のように行う。図１０は、部品の製造工程および確保すべき領域を特定する流れを説明する図である。図１０の例は、部品名が「ＩＣ１１」、部品型格が「ＡＢＣ」、実装区分が「ＩＭＤ」である部品５０の製造工程および領域の特定する流れを示す。判別部１５ｂは、適用領域テーブル１３ｆから、製造工程を特定する部品毎に、部品名、型格、実装区分が該当するレコードを求める。図１０の例では、適用領域テーブル１３ｆの識別フラグが「実装区分」かつ識別キーが「ＩＭＤ」のレコード５１を求める。判別部１５ｂは、求めたレコードのうち、優先順位テーブル１３ｇで最も優先順位の高いレコードを特定する。図１０の例では、求めたレコードがレコード５１のみであるため、レコード５１が最も優先順位の高いレコードと特定される。
【００３７】
判別部１５ｂは、適用領域テーブル１３ｆの特定したレコード５１の確保すべき領域が指定された製造工程のうち、製造工程テーブル１３ｅで実施され順序が最も早い製造工程を当該部品の製造工程と特定する。図１０の例では、レコード５１の各製造工程のうち、製造工程「フロー」で「占有領域」、製造工程「後付け」で「手付け領域」と確保すべき領域が指定されているため、製造工程「フロー」と「手付け領域」が部品５０の製造工程の候補となる。そして、図１０の例では、製造工程テーブル１３ｅにおいて「フロー」の製造工程が「後付け」の製造工程よりも前であるため、「フロー」が部品５０の製造工程と特定される。判別部１５ｂは、製造工程の特定と共に、適用領域テーブル１３ｆの特定したレコード５１の特定した製造工程での確保すべき領域として指定された領域も特定する。図１０の例では、製造工程が「フロー」の「占有領域」が部品５０の確保すべき領域と特定される。
【００３８】
判別部１５ｂは、このように基板に配置された配置部品と各近傍部品についての製造工程を特定する。そして、判別部１５ｂは、配置部品と各近傍部品との間で製造工程の前後関係を判別する。
【００３９】
取得部１５ｃは、配置部品と各近傍部品毎に、判別部１５ｂによる製造工程の前後関係の判別結果に基づき、それぞれ干渉チェックに用いる領域情報を部品形状ライブラリ１３ｄから取得する。例えば、取得部１５ｃは、配置部品および近傍部品のうち、製造工程が前と判別された部品については、当該部品の占有する領域を示す領域情報を部品形状ライブラリ１３ｄから取得する。また、取得部１５ｃは、配置部品および近傍部品のうち、製造工程が後と判別された部品については、確保すべき領域として特定された領域を示す領域情報を部品形状ライブラリ１３ｄから取得する。なお、配置部品および近傍部品の製造工程が同じと判別された場合、取得部１５ｃは、配置部品については確保すべき領域として特定された領域を示す領域情報を部品形状ライブラリ１３ｄから取得する。また、取得部１５ｃは、近傍部品については当該部品の占有する領域を示す領域情報を部品形状ライブラリ１３ｄから取得する。
【００４０】
判定部１５ｄは、配置部品と各近傍部品毎に、取得部１５ｃにより取得された配置部品の領域情報と近傍部品の領域情報を比較して干渉の有無を判定する。例えば、判定部１５ｄは、設計対象の基板上での、配置部品および近傍部品のうち、製造工程が前と判別された部品の占有領域と、製造工程が後と判別された部品の確保すべき領域として特定された領域を比較して干渉の有無を判定する。また、判定部１５ｄは、配置部品および近傍部品の製造工程が同じ場合、配置部品の確保すべき領域として特定された領域と、近傍部品の占有領域とを比較して干渉の有無を判定する。例えば、図１０に示す、部品５０の近傍に配置された部品５２は、実装する製造工程が部品５０と同じであるものとする。この場合、部品５０の確保すべき領域として特定された占有領域と、部品５２の占有領域とを比較して干渉の有無を判定する。
【００４１】
ここで、基板に実装する部品は、当該部品を実装する製造工程まで、部品を基板に実装する際に確保すべき領域を他の部品から保つ必要があるが、実装した後の製造工程で基板に実装する際に確保すべき領域を他の部品と保つ必要がない。
【００４２】
そこで、判定部１５ｄは、それぞれの部品について、当該部品が実装される製造工程までは、基板に実装する際に確保すべき領域を用いて干渉チェックを行う。また、判定部１５ｄは、それぞれの部品について、当該部品が実装される製造工程より後の製造工程では、占有領域を用いて干渉チェックを行う。
【００４３】
すなわち、干渉チェック対象の近傍部品の製造工程が配置部品の製造工程以前の工程である場合、配置部品は、近傍部品から手付け領域や治具領域などの占有領域よりも大きい領域を前もって確保する必要がある。一方、干渉チェック相手の近傍部品は、占有領域を確保できればよい。そこで、判定部１５ｄは、配置部品の製造工程が干渉チェック対象の近傍部品の製造工程より後、あるいは同じである場合、設計対象の基板上での配置部品の確保すべき領域と、干渉チェック対象の近傍部品の占有領域とを比較して干渉の有無を判定する。
【００４４】
また、干渉チェック対象の近傍部品の製造工程が配置部品の製造工程よりも後の工程である場合、近傍部品は、配置部品から手付け領域や治具領域などの占有領域よりも大きい領域を前もって確保する必要がある。一方、配置部品は、占有領域を確保できればよい。そこで、判定部１５ｄは、配置部品の製造工程が干渉チェック対象の近傍部品の製造工程より前である場合、設計対象の基板上での配置部品の占有領域と、干渉チェック対象の近傍部品の確保すべき領域とを比較して干渉の有無を判定する。
【００４５】
判定部１５ｄは、判別結果を干渉の有りと判定された場合、干渉の有り判定された部品を設計処理部１５ａへ通知してエラー表示を行わせる。
【００４６】
なお、本実施例では、製造工程テーブル１３ｅ、適用領域テーブル１３ｆ、優先順位テーブル１３ｇに分けて各種の情報を記憶させた場合について説明したが、開示の装置はこれに限定されない。例えば、各種の情報を１つのテーブルに記憶させてもよい。図１１は、１つのテーブルに各種の情報を記憶させた場合のテーブルのデータ構成の一例を示す図である。図１１に示すように、テーブルは、順序、製造工程、優先度、識別フラグ、識別キー、適用領域の各項目を有する。順序の項目は、実施される製造工程の順序を記憶する領域である。製造工程の項目は、基板に部品を実装する製造工程を記憶する領域である。優先度の項目は、適用領域の優先順位を示す番号を記憶する領域である。識別フラグの項目は、確保すべき領域の指定が部品名、型格、実装区分の何れの単位でなされたものかを示す。識別キーの項目は、部品名や、型格、実装区分毎に付された識別情報を記憶する領域である。適用領域の項目は、確保すべき領域として適用する領域を指定する指定情報を記憶する領域である。
【００４７】
図１１の例では、順位「１」の製造工程「リフロー」は、優先度「１」として、識別フラグが「実装区分」、識別キーが「ＳＭＤ」に対して「占有領域」が確保すべき領域が指定されていることを示す。また、順位「１」の製造工程「リフロー」は、優先度「２」として、識別フラグが「部品名」、識別キーが「ＣＮ１００」に対して「治具領域」が確保すべき領域が指定されていることを示す。
【００４８】
次に、部品間の干渉チェックを行う具体例を説明する。図１２は、基板に各部品を実装する製造工程と配置される部品の一例を示す図である。図１２の例では、最初にリフロー工程でＳＭＤの部品６１ａを実装し、その後のフロー工程でＩＭＤの部品６１ｂを実装し、その後の後付け工程で後付け部品６１ｃを実装し、その後の機構組み立て工程で機構部品６１ｄを実装する。図１３は、図１２に示す各部品の実装で実施される製造工程および製造工程の順序を記憶した製造工程テーブルを示す図である。図１３の例では、「リフロー」に順序「１」、「フロー」に順序「２」、「後付け」に順序「３」、「機構組立」に順序「４」が設定されており、「リフロー」、「フロー」、「後付け」、「機構組立」の順に製造工程が実施されることを示す。
【００４９】
また、適用領域テーブル１３ｆは、部品６１ａ〜６１ｄの確保すべき領域に関して、図１４に示す設定がなされているものとする。図１４は、適用領域テーブルのデータ構成の一例を示す図である。図１４の例では、識別キー「ＩＭＤ」は、製造工程が「フロー」と「後付け」に確保すべき領域が指定され、「フロー」と「後付け」の製造工程で実装が可能であることを示す。また、識別キー「ＩＭＤ」は、「フロー」の製造工程で実装する場合、確保すべき領域の指定が「占有領域」であり、「後付け」の製造工程で実装する場合、確保すべき領域の指定が「手付け領域」であることを示す。
【００５０】
また、図１４の例では、識別キー「ＳＭＤ」は、製造工程が「リフロー」と「フロー」に確保すべき領域が指定され、「リフロー」と「フロー」の製造工程で実装が可能であることを示す。また、識別キー「ＩＭＤ」は、「リフロー」および「フロー」の製造工程で実装する場合、確保すべき領域の指定が「占有領域」であることを示す。
【００５１】
また、図１４の例では、識別キー「後付け部品」は、製造工程が「後付け」に確保すべき領域が指定され、「後付け」の製造工程で実装が可能であることを示す。また、識別キー「後付け部品」は、「後付け」の製造工程で実装する場合、確保すべき領域の指定が「手付け領域」であることを示す。
【００５２】
また、図１４の例では、識別キーが「機構部品」の部品は、製造工程が「機構組立」に確保すべき領域が指定され、「機構組立」の製造工程で実装が可能であることを示す。また、識別キーが「機構部品」の部品は、「機構組立」の製造工程で実装する場合、確保すべき領域の指定が「取り付け領域」であることを示す。
【００５３】
判別部１５ｂは、部品６１ａ〜６１ｄについて、それぞれ適用領域テーブル１３ｆに確保すべき領域が指定された製造工程のうち、製造工程テーブル１３ｅで実施され順序が最も早い製造工程を当該部品の製造工程と特定する。また、判別部１５ｂは、特定した製造工程での確保すべき領域として指定された領域を特定する。なお、この例では、適用領域テーブル１３ｆに該当するレコードがそれぞれ１つであるため、優先順位に従いレコードを特定する説明を省略する。例えば、判別部１５ｂは、製造工程テーブル１３ｅで実施される製造工程の順に、適用領域テーブル１３ｆの各製造工程を、図１４の（１）〜（４）の順に参照する。判別部１５ｂは、リフロー工程で識別キー「ＳＭＤ」の占有領域が設定されているため、リフロー工程をＳＭＤの部品６１ａの製造工程と特定する。また、判別部１５ｂは、占有領域をＳＭＤの部品６１ａの確保すべき領域と特定する。一方、判別部１５ｂは、リフロー工程で部品６１ｂ〜６１ｄの確保すべき領域が未定義であるため、次のフロー工程を参照する。判別部１５ｂは、フロー工程で識別キー「ＩＭＤ」の占有領域が設定されているため、フロー工程をＩＭＤの部品６１ｂの製造工程と特定する。また、判別部１５ｂは、占有領域をＩＭＤの部品６１ｂの確保すべき領域と特定する。一方、判別部１５ｂは、フロー工程で部品６１ｃ、６１ｄの確保すべき領域が未定義であるため、次の後付け工程を参照する。判別部１５ｂは、後付け工程で識別キー「後付け部品」に手付け領域が設定されているため、後付け工程を後付け部品６１ｃの製造工程と特定する。また、判別部１５ｂは、手付け領域を後付け部品６１ｃの確保すべき領域と特定する。一方、判別部１５ｂは、フロー工程で部品６１ｄの確保すべき領域が未定義であるため、次の機構組立工程を参照する。判別部１５ｂは、機構組立工程で識別キー「機構部品」に取り付け領域が設定されているため、機構組立工程を機構部品６１ｄの製造工程と特定する。また、判別部１５ｂは、取り付け領域を機構部品６１ｄの確保すべき領域と特定する。図１５は、各部品の確保すべき領域の一例を示す図である。図１５に示すように、「ＳＭＤ」および「ＩＭＤ」は、確保すべき領域が「占有領域」と特定される。また、「後付け部品」および「機構部品」は、確保すべき領域が「手付け領域」と特定される。
【００５４】
判別部１５ｂは、部品６１ａ〜６１ｄについて各部品間の製造工程の前後関係を判別する。そして、判定部１５ｄは、基板６０上での、製造工程が前と判別された部品の占有領域と、製造工程が後と判別された部品の確保すべき領域とを比較して干渉の有無を判定する。例えば、図１２に示す、後付け部品６１ｃに着目して、近傍部品と干渉チェックを行うものとする。後付け部品６１ｃの製造工程は、順番（３）の後付け工程である。近傍部品であるＳＭＤの部品６１ａとＩＭＤの部品６１ｂの製造工程は、順番（１）（２）のリフロー工程、フロー工程である。判定部１５ｄは、後付け部品６１ｃの手付け領域と、ＳＭＤの部品６１ａの占有領域、ＩＭＤの部品６１ｂの占有領域とで干渉チェックを行う。一方、近傍部品である機構部品６１ｄの製造工程は、順番（４）の機構組立工程である。判定部１５ｄは、後付け部品６１ｃの占有領域と、機構部品６１ｄの取り付け領域とで干渉チェックを行う。
【００５５】
なお、上述したように、製造工程テーブル１３ｅ、適用領域テーブル１３ｆ、優先順位テーブル１３ｇに記憶された各種の情報を１つのテーブルに記憶させてもよい。図１６は、１つのテーブルに各種の情報を記憶させた場合のテーブルのデータ構成の一例を示す図である。図１６は、図１１のテーブルから順位を除いたデータ構成としている。図１６の各項目は、図１１と同様であるため、説明を省略する。
【００５６】
図１７は、基板に各部品を実装する製造工程と配置される部品の他の例を示す図である。図１７の例では、最初に表面リフロー工程で基板７０の表面にＳＭＤの部品７１ａを実装し、裏面リフロー工程で基板の裏面にＳＭＤの部品７１ｂを実装し、その後の後付け工程でＩＭＤの部品７１ｃと後付け部品７１ｄを実装する。図１７の例では、基板の裏面に実装するＳＭＤの部品７１ｂを「ＳＭＤ裏面」と示している。図１８は、図１７に示す各部品の実装で実施される製造工程および製造工程の順序を記憶した製造工程テーブルを示す図である。図１８の例では、「リフロー」に順序「１」、「後付け」に順序「２」が設定されており、「リフロー」、「後付け」の順に製造工程が実施されることを示す。
【００５７】
また、適用領域テーブル１３ｆは、部品７１ａ〜７１ｄの確保すべき領域に関して、図１９に示す設定がなされているものとする。図１９は、適用領域テーブルのデータ構成の一例を示す図である。図１９の例では、識別キー「ＩＭＤ」は、製造工程が「フロー」と「後付け」に確保すべき領域が指定され、「フロー」と「後付け」の製造工程で実装が可能であることを示す。また、識別キー「ＩＭＤ」は、「フロー」の製造工程で実装する場合、確保すべき領域の指定が「占有領域」であり、「後付け」の製造工程で実装する場合、確保すべき領域の指定が「手付け領域」であることを示す。
【００５８】
また、図１９の例では、識別キー「ＳＭＤ」は、製造工程が「リフロー」と「フロー」に確保すべき領域が指定され、「リフロー」と「フロー」の製造工程で実装が可能であることを示す。また、識別キー「ＩＭＤ」は、「リフロー」および「フロー」の製造工程で実装する場合、確保すべき領域の指定が「占有領域」であることを示す。
【００５９】
また、図１９の例では、識別キー「後付け部品」は、製造工程が「後付け」に確保すべき領域が指定され、「後付け」の製造工程で実装が可能であることを示す。また、識別キー「後付け部品」は、「後付け」の製造工程で実装する場合、確保すべき領域の指定が「手付け領域」であることを示す。
【００６０】
判別部１５ｂは、部品７１ａ〜７１ｄについて、それぞれ適用領域テーブル１３ｆに確保すべき領域が指定された製造工程のうち、製造工程テーブル１３ｅで実施され順序が最も早い製造工程を当該部品の製造工程と特定する。また、判別部１５ｂは、特定した製造工程での確保すべき領域として指定された領域を特定する。なお、この例では、適用領域テーブル１３ｆに該当するレコードがそれぞれ１つであるため、優先順位に従いレコードを特定する説明を省略する。例えば、判別部１５ｂは、製造工程テーブル１３ｅで実施される製造工程の順に、適用領域テーブル１３ｆの各製造工程を、図１９の（１）、（２）の順に参照する。判別部１５ｂは、リフロー工程で識別キー「ＳＭＤ」に占有領域が設定されているため、リフロー工程をＳＭＤの部品７１ａ、７１ｂの製造工程と特定する。また、判別部１５ｂは、占有領域をＳＭＤの部品７１ａ、７１ｂの確保すべき領域と特定する。一方、判別部１５ｂは、リフロー工程で部品７１ｃ、７１ｄの確保すべき領域が未定義であるため、次の後付け工程を参照する。判別部１５ｂは、後付け工程で識別キー「ＩＭＤ」および「後付け部品」に手付け領域が設定されているため、後付け工程を部品７１ｃ、７１ｄの製造工程と特定する。また、判別部１５ｂは、手付け領域を部品７１ｃ、７１ｄの確保すべき領域と特定する。ここで、判別部１５ｂは、フロー工程でもＩＭＤの部品７１ｃの実装が可能であるが、製造工程テーブル１３ｅにフロー工程が存在しないため、後付け工程ではんだ付けを行うものと特定する。図２０は、各部品の確保すべき領域の一例を示す図である。図２０に示すように、「ＳＭＤ」は、確保すべき領域が「占有領域」と特定される。また、「ＩＭＤ」および「後付け部品」は、確保すべき領域が「手付け領域」と特定される。
【００６１】
判別部１５ｂは、部品７１ａ〜７１ｄについて各部品間の製造工程の前後関係を判別する。そして、判定部１５ｄは、基板７０上での、製造工程が前と判別された部品の占有領域と、製造工程が後と判別された部品の確保すべき領域とを比較して干渉の有無を判定する。例えば、図１７に示す、ＩＭＤの部品７１ｃに着目して、近傍部品と干渉チェックを行うものとする。ＩＭＤの部品７１ｃの製造工程は、順番（２）の後付け工程である。近傍部品であるＳＭＤの部品７１ａ、７１ｂの製造工程は、順番（１）のリフロー工程である。判定部１５ｄは、ＩＭＤの部品７１ｃの手付け領域と、ＳＭＤの部品７１ａ、７１ｂの占有領域とで干渉チェックを行う。一方、近傍部品である後付け部品７１ｄの製造工程は、順番（２）の後付け工程であり、ＩＭＤの部品７１ｃと同じである。判定部１５ｄは、ＩＭＤの部品７１ｃの手付け領域と、後付け部品７１ｄの占有領域とで干渉チェックを行う。
【００６２】
なお、上述したように、製造工程テーブル１３ｅ、適用領域テーブル１３ｆ、優先順位テーブル１３ｇに記憶された各種の情報を１つのテーブルに記憶させてもよい。図２１は、１つのテーブルに各種の情報を記憶させた場合のテーブルのデータ構成の一例を示す図である。図２１は、図１１のテーブルから順位を除いたデータ構成としている。図２１の各項目は、図１１と同様であるため、説明を省略する。
【００６３】
図２２は、基板に各部品を実装する製造工程と配置される部品の他の例を示す図である。図２２の例では、最初にフロー工程で基板８０にＳＭＤの部品８１ａ〜８１ｃ、ＳＭＤコネクタ８１ｄ、８１ｅを実装し、その後のフロー工程でＩＭＤの部品８１ｆ、８１ｇを実装する。ＳＭＤコネクタ８１ｄ、８１ｅは、ＳＭＤの一種であるため、他のＳＭＤの部品８１ａ〜８１ｃと同じく、リフロー工程段階で実装するが、実装に治具を用いる。図２２の例では、ＳＭＤコネクタ８１ｄ、８１ｅ部分に部品名を示している。図２３は、図２２に示す各部品の実装で実施される製造工程および製造工程の順序を記憶した製造工程テーブルを示す図である。図１８の例では、「リフロー」に順序「１」、「フロー」に順序「２」が設定されており、「リフロー」、「フロー」の順に製造工程が実施されることを示す。
【００６４】
また、適用領域テーブル１３ｆは、部品８１ａ〜８１ｇの確保すべき領域に関して、図２４に示す設定がなされているものとする。図２４は、適用領域テーブルのデータ構成の一例を示す図である。図２４の例では、識別キー「ＳＭＤ−ＣＮ１」および「ＳＭＤ−ＣＮ２」は、製造工程が「リフロー」と「後付け」に確保すべき領域が指定され、「リフロー」と「後付け」の製造工程で実装が可能であることを示す。また、識別キー「ＳＭＤ−ＣＮ１」および「ＳＭＤ−ＣＮ２」は、「リフロー」の製造工程で実装する場合、確保すべき領域の指定が「治具領域」であり、「後付け」の製造工程で実装する場合、確保すべき領域の指定が「手付け領域」であることを示す。
【００６５】
また、図２４の例では、識別キー「ＩＭＤ」は、製造工程が「フロー」と「後付け」に確保すべき領域が指定され、「フロー」と「後付け」の製造工程で実装が可能であることを示す。また、識別キー「ＩＭＤ」は、「フロー」の製造工程で実装する場合、確保すべき領域の指定が「占有領域」であり、「後付け」の製造工程で実装する場合、確保すべき領域の指定が「手付け領域」であることを示す。
【００６６】
また、図２４の例では、識別キー「ＳＭＤ」は、製造工程が「リフロー」と「フロー」に確保すべき領域が指定され、「リフロー」と「フロー」の製造工程で実装が可能であることを示す。また、識別キー「ＩＭＤ」は、「リフロー」および「フロー」の製造工程で実装する場合、確保すべき領域の指定が「占有領域」であることを示す。
【００６７】
また、優先順位テーブル１３ｇは、図２５に示す設定がなされているものとする。図２５は、優先順位テーブルのデータ構成の一例を示す図である。図２５に示すように、部品名が「１」、実装区分が「２」と設定がなされているものとする。
【００６８】
判別部１５ｂは、部品８１ａ〜８１ｇについて、適用領域テーブル１３ｆから、製造工程を特定する部品毎に、部品名、部品の種類、製造工程が該当するレコードを求める。判別部１５ｂは、求めたレコードのうち、優先順位テーブル１３ｇで最も優先順位の高いレコードを特定する。図２５の例では、ＳＭＤコネクタ８１ｄは、実装区分が「ＳＭＤ」であり、且つ、部品名が「ＳＭＤ−ＣＮ１」であるため２つのレコードが該当する。また、ＳＭＤコネクタ８１ｅも、実装区分が「ＳＭＤ」であり、且つ、部品名が「ＳＭＤ−ＣＮ２」であるため２つのレコードが該当する。判別部１５ｂは、ＳＭＤコネクタ８１ｄ、８１ｅについて、それぞれ該当した２つのレコードのうち、優先順位テーブル１３ｇで最も優先順位の高いレコードを特定する。一方、判別部１５ｂは、部品８１ａ〜８１ｃについて、実装区分が「ＳＭＤ」のレコードを、該当するレコードと特定する。
【００６９】
判別部１５ｂは、適用領域テーブル１３ｆの特定したレコードの確保すべき領域が指定された製造工程のうち、製造工程テーブル１３ｅで実施され順序が最も早い製造工程を当該部品の製造工程と特定する。例えば、判別部１５ｂは、製造工程テーブル１３ｅで実施される製造工程の順に、適用領域テーブル１３ｆの各製造工程を、図２４の（１）、（２）の順に参照する。判別部１５ｂは、リフロー工程で識別キー「ＳＭＤ−ＣＮ１」および「ＳＭＤ−ＣＮ２」の治具領域が設定されているため、リフロー工程をＳＭＤコネクタ８１ｄ、８１ｅの製造工程と特定する。また、判別部１５ｂは、治具領域をＳＭＤコネクタ８１ｄ、８１ｅの確保すべき領域と特定する。さらに、判別部１５ｂは、リフロー工程で識別キー「ＳＭＤ」に占有領域が設定されているため、リフロー工程をＳＭＤの部品８１ａ〜８１ｃの製造工程と特定する。また、判別部１５ｂは、占有領域をＳＭＤの部品８１ａ〜８１ｃの確保すべき領域と特定する。一方、判別部１５ｂは、リフロー工程でＩＭＤの部品８１ｆ、８１ｇの確保すべき領域が未定義であるため、次のフロー工程を参照する。判別部１５ｂは、フロー工程で識別キー「ＩＭＤ」に占有領域が設定されているため、フロー工程をＩＭＤの部品８１ｆ、８１ｇの製造工程と特定する。また、判別部１５ｂは、占有領域をＩＭＤの部品８１ｆ、８１ｇの確保すべき領域と特定する。図２６は、各部品の確保すべき領域の一例を示す図である。図２６に示すように、「ＳＭＤ−ＣＮ１」および「ＳＭＤ−ＣＮ２」は、確保すべき領域が「治具領域」と特定される。また、「ＩＭＤ」および「後付け部品」は、確保すべき領域が「占有領域」と特定される。
【００７０】
判別部１５ｂは、部品８１ａ〜８１ｇについて各部品間の製造工程の前後関係を判別する。そして、判定部１５ｄは、基板８０上での、製造工程が前と判別された部品の占有領域と、製造工程が後と判別された部品の確保すべき領域とを比較して干渉の有無を判定する。例えば、図２２に示す、ＳＭＤコネクタ８１ｄに着目して、近傍部品と干渉チェックを行うものとする。ＳＭＤコネクタ８１ｄの製造工程は、順番（１）のリフロー工程である。近傍部品であるＳＭＤの部品８１ａ〜８１ｃ、ＳＭＤコネクタ８１ｅの製造工程も順番（１）のリフロー工程である。判定部１５ｄは、ＳＭＤコネクタ８１ｄの治具領域と、ＳＭＤの部品８１ａ〜８１ｃ、ＳＭＤコネクタ８１ｅの占有領域とで干渉チェックを行う。一方、近傍部品であるＩＭＤの部品８１ｆ、８１ｇの製造工程は、順番（２）のフロー工程である。判定部１５ｄは、ＳＭＤコネクタ８１ｅの占有領域と、ＩＭＤの部品８１ｆ、８１ｇの占有領域とで干渉チェックを行う。
【００７１】
なお、上述したように、製造工程テーブル１３ｅ、適用領域テーブル１３ｆ、優先順位テーブル１３ｇに記憶された各種の情報を１つのテーブルに記憶させてもよい。図２７は、１つのテーブルに各種の情報を記憶させた場合のテーブルのデータ構成の一例を示す図である。図２７は、図１１のテーブルから順位を除いたデータ構成としている。図２７の各項目は、図１１と同様であるため、説明を省略する。
【００７２】
次に、本実施例に係る設計支援装置１０による回路設計を行う際の部品間の各部品の干渉をチェックする処理の流れを説明する。図２８は、回路設計を支援する設計支援処理の手順を示すフローチャートである。この設計支援処理は、例えば、入力部１１に対して回路設計開始を指示する所定操作が行われたタイミングで実行される。
【００７３】
図２８に示すように、設計処理部１５ａは、設計対象の基板や基板に配置する各部品、ネット接続テーブル１３ａに基づき各部品の端子間の接続関係を示すネットを表示させた回路設計画面を表示部１２に表示させる（ステップＳ１０）。設計処理部１５ａは、入力部１１から入力する操作情報に基づき、部品を選択する操作が行われたか否かを判定する（ステップＳ１１）。部品を選択する操作が行われていない場合（ステップＳ１１否定）、設計処理部１５ａは、再度ステップＳ１１へ移行して部品の選択待ちを行う。一方、部品を選択する操作が行われた場合（ステップＳ１１肯定）、設計処理部１５ａは、入力部１１から入力される操作情報に基づき、基板上で選択された部品やネットの位置を更新する（ステップＳ１２）。設計処理部１５ａは、入力部１１から入力される操作情報に基づき、選択された部品の配置位置が確定したか否かを判定する（ステップＳ１３）。選択された部品の配置位置が確定していない場合（ステップＳ１３否定）、ステップＳ１２へ移行する。一方、選択された部品の配置位置が確定した場合（ステップＳ１３肯定）、設計処理部１５ａは、配置位置が確定した配置部品と、配置部品の周囲の近傍に配置された近傍部品を特定する（ステップＳ１４）。
【００７４】
判別部１５ｂは、特定した近傍部品の何れか１つを選択する（ステップＳ１５）。判別部１５ｂは、配置部品と選択した近傍部品の製造工程および確保すべき領域の指定を特定し、配置部品と選択した近傍部品間の製造工程の前後関係を判別する（ステップＳ１６）。判別部１５ｂは、選択した近傍部品の製造工程が配置部品の製造工程以前の工程であるか否か判定する（ステップＳ１７）。選択した近傍部品の製造工程が配置部品の製造工程以前の工程である場合（ステップＳ１７肯定）、取得部１５ｃは、配置部品の確保すべき領域の領域情報と、選択した近傍部品の占有領域の領域情報を部品形状ライブラリ１３ｄから取得する（ステップＳ１８）。判定部１５ｄは、設計対象の基板上での、配置部品の領域情報により示される確保すべき領域と、選択した近傍部品の領域情報により示される占有領域とを比較して干渉の有無を判定する（ステップＳ１９）。一方、選択した近傍部品の製造工程が配置部品の製造工程よりも後である場合（ステップＳ１７否定）、取得部１５ｃは、配置部品の占有領域の領域情報と選択した近傍部品の確保すべき領域の領域情報を部品形状ライブラリ１３ｄから取得する（ステップＳ２０）。判定部１５ｄは、設計対象の基板上での、配置部品の領域情報により示される占有領域と、選択した近傍部品の領域情報により示される確保すべき領域とを比較して干渉の有無を判定する（ステップＳ２１）。
【００７５】
判定部１５ｄは、干渉の有無を判定の結果、干渉があるか否かを判定する（ステップＳ２２）。干渉がある場合（ステップＳ２２肯定）、判定部１５ｄは、干渉の有り判定された配置部品および近傍部品を設計処理部１５ａへ通知してエラー表示を行わせる（ステップＳ２３）。干渉がない場合（ステップＳ２２否定）、判別部１５ｂは、特定した近傍部品のすべてを選択したかいなかを判定する（ステップＳ２４）。すべてを選択していない場合（ステップＳ２４否定）、ステップＳ１５に以降して未選択の近傍部品の何れかを選択する。一方、すべてを選択した場合（ステップＳ２４肯定）、設計処理部１５ａは、回路設計の終了を指示する所定操作が行われたか否かを判定する（ステップＳ２５）。終了を指示する所定操作が行われた場合（ステップＳ２５肯定）、設計処理部１５ａは、各部品の配置位置を示す情報を部品配置テーブル１３ｂに記憶させ、処理を終了する。一方、終了を指示する所定操作が行われていない場合（ステップＳ２５否定）、ステップＳ１１へ移行して回路設計を継続する。
【００７６】
このように、設計支援装置１０は、設計対象の基板上に配置された各部品間の部品を実装する製造工程の前後関係を判別する。そして、設計支援装置１０は、各部品間毎に、製造工程が後と判別された部品については確保すべき領域の領域情報、製造工程が前と判別された部品については占有領域の領域情報を記憶部１３から取得する。設計支援装置１０は、製造工程が後と判別された部品の確保すべき領域と製造工程が前と判別された部品の占有領域を比較して干渉の有無を判定する。よって、設計支援装置１０によれば、それぞれの部品について、当該部品を実装する製造工程までは確保すべき領域を確保し、当該部品を実装する製造工程よりも後の工程では占有領域を確保するように干渉チェックが行われる。これにより、設計支援装置１０によれば、部品どうしが不必要に間隔を開けた配置となることを抑制できるため、高密度な部品の実装設計を行うことができる。
【００７７】
また、設計支援装置１０は、適用領域テーブル１３ｆにおいて、製造工程が後と特定された部品の部品名、部品の種類、実装区分のいずれかが該当する確保すべき領域の領域情報うち、優先順位テーブル１３ｇでの優先順位の高い第１の領域情報を取得する。よって、設計支援装置１０によれば、優先順位を定めることにより、部品の部品名、部品の種類、実装区分の確保すべき領域のうち、干渉チェックに用いる確保すべき領域を変えることができる。また、設計支援装置１０によれば、全ての部品について干渉チェックに用いる確保すべき領域を指定しなくても、部品の種類、実装区分の単位で干渉チェックに用いる確保すべき領域を指定することができる。
【００７８】
また、設計支援装置１０は、適用領域テーブル１３ｆに適用する確保すべき領域が指定された製造工程のうち製造工程テーブル１３ｅで実施され順序が最も早い製造工程を当該部品の製造工程として各部品間毎の実装する製造工程の前後関係を判別する。よって、設計支援装置１０によれば、設計の際に各部品の実装する製造を部品毎に指定しなくても、各部品を実装する製造工程を特定して各部品間毎の実装する製造工程の前後関係を判別できる。
【実施例２】
【００７９】
さて、これまで開示の装置に関する実施例について説明したが、開示の技術は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、本発明に含まれる他の実施例を説明する。
【００８０】
例えば、上記の実施例では、配置部品および近傍部品の製造工程が同じと判別された場合、配置部品については確保すべき領域とし、近傍部品については占有領域として干渉チェックを行う場合について説明したが、開示の装置はこれに限定されない。例えば、治具を用いて同時に部品を実装する場合、配置部品および近傍部品が共に治具領域を確保する必要がある。このため、配置部品および近傍部品の製造工程が同じと判別された場合、配置部品および近傍部品を共に確保すべき領域として干渉チェックを行うものとしてもよい。また、配置部品および近傍部品の製造工程が同じ場合、同じとなった製造工程によって近傍部品の干渉チェックに用いる領域を変えてもよい。例えば、圧入や機構組立の製造工程の場合、配置部品および近傍部品を共に確保すべき領域として干渉チェックを行うものとしてもよい。また、配置部品および近傍部品の製造工程が同じ場合、配置部品について確保すべき領域、近傍部品について占有領域として干渉チェックを行うか、配置部品および近傍部品を共に確保すべき領域として干渉チェックを行うかを制御情報により制御してもよい。例えば、記憶部１３に制御情報を記憶させ、取得部１５ｃは、配置部品および近傍部品の製造工程が同じ場合、制御情報に従い、近傍部品について占有領域または確保すべき領域の領域情報を取得するようにしてもよい。
【００８１】
また、上記の実施例では、配置された配置部品と配置部品の近傍の近傍部品との間の干渉チェックを行う場合について説明したが、開示の装置はこれに限定されない。例えば、基板に部品が配置済みの設計データに対して配置された部品を順次選択して、選択された選択部品と選択部品の近傍の近傍部品との間の干渉チェックを行うものとしてもよい。
【００８２】
また、設計支援装置１０をサーバコンピュータとし、ネットワークを介してクライアントコンピュータから回路設計に関する操作情報が入力し、クライアントコンピュータに対して各種情報を出力してクライアントコンピュータの画面で回路設計を行ってもよい。
【００８３】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的状態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、図１に示す設計処理部１５ａと、判別部１５ｂと、取得部１５ｃと、判定部１５ｄの各処理部が適宜統合されてもよい。さらに、各処理部にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００８４】
［設計支援プログラム］
また、上記の実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することもできる。そこで、以下では、上記の実施例と同様の機能を有するプログラムを実行するコンピュータシステムの一例を説明する。図２９は、設計支援プログラムを実行するコンピュータを示す図である。
【００８５】
図２９に示すように、コンピュータ３００は、ＣＰＵ（Central  Processing  Unit）３１０、ＨＤＤ（Hard  Disk  Drive）３２０、ＲＡＭ（Random  Access  Memory）３４０を有する。これら３００〜３４０の各部は、バス４００を介して接続される。ＨＤＤ３２０には、図１に示した各テーブルの各々と同様の機能を有するテーブルが記憶される。
【００８６】
ＨＤＤ３２０には上記の実施例１に示す設計処理部１５ａ、判別部１５ｂ、取得部１５ｃ、判定部１５ｄと同様の機能を発揮する設計支援プログラム３２０ａが予め記憶される。なお、設計支援プログラム３２０ａについては、適宜分離しても良い。
【００８７】
また、ＨＤＤ３２０は、各種情報を記憶する。例えば、ＨＤＤ３２０は、図１に示したネット接続テーブル１３ａ、部品配置テーブル１３ｂ、部品属性ライブラリ１３ｃ、部品形状ライブラリ１３ｄ、製造工程テーブル１３ｅ、適用領域テーブル１３ｆ、優先順位テーブル１３ｇに対応する各種情報を記憶する。
【００８８】
そして、ＣＰＵ３１０が、設計支援プログラム３２０ａをＨＤＤ３２０から読み出してＲＡＭ３４０に展開し、ＨＤＤ３２０に記憶された各種情報を用いて各処理を実行することで、実施例１に示した制御部１５と同様の動作を実行する。すなわち、設計支援プログラム３２０ａは、実施例１に示した設計処理部１５ａ、判別部１５ｂ、取得部１５ｃ、判定部１５ｄと同様の動作を実行する。
【００８９】
なお、上記した設計支援プログラム３２０ａについては、必ずしも最初からＨＤＤ３２０に記憶させることを要しない。
【００９０】
例えば、コンピュータ３００に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」にプログラムを記憶させておく。そして、コンピュータ３００がこれらからプログラムを読み出して実行するようにしてもよい。
【００９１】
さらには、公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータ３００に接続される「他のコンピュータ（またはサーバ）」などにプログラムを記憶させておく。そして、コンピュータ３００がこれらからプログラムを読み出して実行するようにしてもよい。
【００９２】
以上説明した実施形態及びその変形例に関し、更に以下の付記を開示する。
【００９３】
（付記１）基板に各部品を実装する製造工程の順序および各製造工程で実装される部品に関する実装情報と、各部品を基板に実装する際に確保すべき領域を示す第１の領域情報と、各部品を基板に実装した際に占有する領域を示す第２の領域情報とを記憶する記憶部と、
前記記憶部に記憶された実装情報に基づき、設計対象の基板上に配置された第１の部品と第２の部品を実装する製造工程の前後関係を判別する判別部と、
前記第１の部品および前記第２の部品のうち前記判別部により製造工程が後と判別された部品については前記第１の領域情報、製造工程が前と判別された部品については前記第２の領域情報を前記記憶部から取得する取得部と、
前記取得部により取得された前記第１の領域情報と前記第２の領域情報を比較して干渉の有無を判定する判定部と
を有することを特徴とする設計支援装置。
【００９４】
（付記２）前記記憶部は、複数の前記第１の領域情報と、部品名、部品の種類、実装区分の何れか毎に適用する前記第１の領域情報を指定する指定情報と、部品名、部品の種類、実装区分の何れの前記第１の領域情報を優先するかの優先順位を示す優先順位情報とを記憶し、
前記取得部は、前記製造工程が後と特定された部品の部品名、部品の種類、実装区分のいずれかが該当する前記指定情報で指定された第１の領域情報うち、前記優先順位情報により示される優先順位の高い前記第１の領域情報を取得する
ことを特徴とする付記１に記載の設計支援装置。
【００９５】
（付記３）前記記憶部は、製造工程別に、当該製造工程で実装可能な各部品についてそれぞれ適用する前記第１の領域情報が指定された指定情報と、基板への部品の実装で実施される製造工程および製造工程の順序を示す製造工程情報とを記憶し、
前記判別部は、前記第１の部品および前記第２の部品について、それぞれ前記指定情報に当該部品に適用する前記第１の領域情報が指定された製造工程のうち前記製造工程情報で実施され順序が最も早い製造工程を当該部品の製造工程として、前記第１の部品と前記第２の部品を実装する製造工程の前後関係を判別する
ことを特徴とする付記１または２に記載の設計支援装置。
【００９６】
（付記４）コンピュータに、
記憶部に記憶された、基板に各部品を実装する製造工程の順序および各製造工程で実装される部品に関する実装情報に基づき、設計対象の基板上に配置された第１の部品と第２の部品を実装する製造工程の前後関係を判別し、
前記第１の部品および前記第２の部品のうち製造工程が後と判別された部品については当該部品を基板に実装する際に確保すべき領域を示す第１の領域情報、製造工程が前と判別された部品については当該部品を基板に実装した際に占有する領域を示す第２の領域情報を前記記憶部から取得し、
取得された前記第１の領域情報と前記第２の領域情報を比較して干渉の有無を判定する
各処理を実行させることを特徴とする設計支援プログラム。
【００９７】
（付記５）前記第１の領域情報を取得する処理は、部品名、部品の種類、実装区分の何れか毎に複数の前記第１の領域情報から適用する前記第１の領域情報を指定する指定情報において、前記製造工程が後と特定された部品の部品名、部品の種類、実装区分のいずれかが該当する第１の領域情報うち、優先順位情報により示される優先順位の高い前記第１の領域情報を取得する
ことを特徴とする付記４に設計支援プログラム。
【００９８】
（付記６）前記製造工程の前後関係を判別する処理は、前記第１の部品および前記第２の部品について、それぞれ製造工程別に、当該製造工程で実装可能な各部品に適用する前記第１の領域情報が指定された指定情報に当該部品に適用する前記第１の領域情報が指定された製造工程のうち、基板への部品の実装で実施される製造工程および製造工程の順序を示す製造工程情報で実施され順序が最も早い製造工程を当該部品の製造工程として、前記第１の部品と前記第２の部品を実装する製造工程の前後関係を判別する
ことを特徴とする付記４または５に記載の設計支援プログラム。
【００９９】
（付記７）コンピュータが、
記憶部に記憶された、基板に各部品を実装する製造工程の順序および各製造工程で実装される部品に関する実装情報に基づき、設計対象の基板上に配置された第１の部品と第２の部品を実装する製造工程の前後関係を判別し、
前記第１の部品および前記第２の部品のうち製造工程が後と判別された部品については当該部品を基板に実装する際に確保すべき領域を示す第１の領域情報、製造工程が前と判別された部品については当該部品を基板に実装した際に占有する領域を示す第２の領域情報を前記記憶部から取得し、
取得された前記第１の領域情報と前記第２の領域情報を比較して干渉の有無を判定する
各処理を実行することを特徴とする設計支援方法。
【０１００】
（付記８）前記第１の領域情報を取得する処理は、部品名、部品の種類、実装区分の何れか毎に複数の前記第１の領域情報から適用する前記第１の領域情報を指定する指定情報（１３ｆ）において、前記製造工程が後と特定された部品の部品名、部品の種類、実装区分のいずれかが該当する第１の領域情報うち、優先順位情報により示される優先順位の高い前記第１の領域情報を取得する
ことを特徴とする付記７に設計支援方法。
【０１０１】
（付記９）前記製造工程の前後関係を判別する処理は、前記第１の部品および前記第２の部品について、それぞれ製造工程別に、当該製造工程で実装可能な各部品に適用する前記第１の領域情報が指定された指定情報に当該部品に適用する前記第１の領域情報が指定された製造工程のうち、基板への部品の実装で実施される製造工程および製造工程の順序を示す製造工程情報で実施され順序が最も早い製造工程を当該部品の製造工程として、前記第１の部品と前記第２の部品を実装する製造工程の前後関係を判別する
ことを特徴とする付記７または８に記載の設計支援方法。
【符号の説明】
【０１０２】
１０    設計支援装置
１３    記憶部
１３ａ  ネット接続テーブル
１３ｂ  部品配置テーブル
１３ｃ  部品属性ライブラリ
１３ｄ  部品形状ライブラリ
１３ｅ  製造工程テーブル
１３ｆ  適用領域テーブル
１３ｇ  優先順位テーブル
１５    制御部
１５ａ  設計処理部
１５ｂ  判別部
１５ｃ  取得部
１５ｄ  判定部
【図１】
0005895435.tif 000002
【図２】
0005895435.tif 000003
【図３】
0005895435.tif 000004
【図４】
0005895435.tif 000005
【図５】
0005895435.tif 000006
【図６】
0005895435.tif 000007
【図７】
0005895435.tif 000008
【図８】
0005895435.tif 000009
【図９】
0005895435.tif 000010
【図１０】
0005895435.tif 000011
【図１１】
0005895435.tif 000012
【図１２】
0005895435.tif 000013
【図１３】
0005895435.tif 000014
【図１４】
0005895435.tif 000015
【図１５】
0005895435.tif 000016
【図１６】
0005895435.tif 000017
【図１７】
0005895435.tif 000018
【図１８】
0005895435.tif 000019
【図１９】
0005895435.tif 000020
【図２０】
0005895435.tif 000021
【図２１】
0005895435.tif 000022
【図２２】
0005895435.tif 000023
【図２３】
0005895435.tif 000024
【図２４】
0005895435.tif 000025
【図２５】
0005895435.tif 000026
【図２６】
0005895435.tif 000027
【図２７】
0005895435.tif 000028
【図２８】
0005895435.tif 000029
【図２９】
0005895435.tif 000030