(57)【要約】【課題】ＦＰＧＡ部品を含む基板の設計において、実装設計ＣＡＤ装置を用いたピン割付検討を早期に行えるようにすること。【解決手段】ＦＰＧＡ設計ＣＡＤ装置１０が作成したピン割付情報をＦＰＧＡ設計ＣＡＤインタフェース部２４０が読み込み、ＦＰＧＡピン情報管理部２５０がＦＰＧＡ設計ＣＡＤインタフェース部２４０によって読み込まれたピン割付情報をＦＰＧＡピン情報として管理し、仮ライブラリ生成部２６０がＦＰＧＡピン情報管理部２５０によって管理されるＦＰＧＡピン情報を用いて仮の部品形状タイプライブラリを生成して実装設計ＣＡＤ装置２０が読み込み可能な形式でファイルに出力するよう構成する。【選択図】        図２０
2008165751.tif 000002
【特許請求の範囲】
【請求項１】
集積回路について集積回路設計ＣＡＤにより作成されたピン割付情報を入力するピン割付情報入力手段と、
前記ピン割付情報入力手段により入力されたピン割付情報を用いて、実装設計ＣＡＤ装置が必要とする部品形状タイプライブラリを代替する仮の部品形状タイプライブラリを仮ライブラリとして集積回路を対象に作成する仮ライブラリ作成手段と、
を備えたことを特徴とする協調設計支援装置。
【請求項２】
前記仮ライブラリ作成手段により作成される仮ライブラリは、集積回路の各ピンについてランド形状タイプライブラリ名、Ｘ座標、Ｙ座標、角度およびピン名を含むことを特徴とする請求項１に記載の協調設計支援装置。
【請求項３】
前記仮ライブラリ作成手段により作成される仮ライブラリは、集積回路のサイズをさらに含むことを特徴とする請求項２に記載の協調設計支援装置。
【請求項４】
実装設計で集積回路に対して行われたピンスワップに関する情報であるピンスワップ情報を入力するピンスワップ情報入力手段と、
前記ピンスワップ情報入力手段により入力されたピンスワップ情報を用いて、集積回路設計への前記ピンスワップの反映に使用される情報を出力するスワップ反映情報出力手段と、
をさらに備えたことを特徴とする請求項１、２または３に記載の協調設計支援装置。
【請求項５】
所定の形式のネットリストを入力し、実装設計ＣＡＤ装置が必要とする形式のネットリストに変換して出力するネットリスト変換手段をさらに備えたことを特徴とする請求項１〜４のいずれか一つに記載の協調設計支援装置。
【請求項６】
前記ネットリスト変換手段が入力する所定の形式のネットリストには、ネットごとの情報が定義され、前記ネットリスト変換手段が出力するネットリストには、ピンごとの情報が定義されることを特徴とする請求項５に記載の協調設計支援装置。
【請求項７】
前記仮ライブラリ作成手段が仮ライブラリの作成に用いるピン間隔の情報を使用者から受け付けるピン間隔情報受付手段をさらに備えたことを特徴とする請求項１〜６のいずれか一つに記載の協調設計支援装置。
【請求項８】
集積回路について集積回路設計ＣＡＤにより作成されたピン割付情報を入力するピン割付情報入力ステップと、
前記ピン割付情報入力ステップにより入力されたピン割付情報を用いて、実装設計ＣＡＤ装置が必要とする部品形状タイプライブラリを代替する仮の部品形状タイプライブラリを仮ライブラリとして集積回路を対象に作成する仮ライブラリ作成ステップと、
を含んだことを特徴とする協調設計支援方法。
【請求項９】
集積回路について集積回路設計ＣＡＤにより作成されたピン割付情報を入力するピン割付情報入力手順と、
前記ピン割付情報入力手順により入力されたピン割付情報を用いて、実装設計ＣＡＤ装置が必要とする部品形状タイプライブラリを代替する仮の部品形状タイプライブラリを仮ライブラリとして集積回路を対象に作成する仮ライブラリ作成手順と、
をコンピュータに実行させることを特徴とする協調設計支援プログラム。
【請求項１０】
プリント基板の実装設計と集積回路設計との協調設計を支援する協調設計支援装置を用いて設計が行われるプリント基板の製造方法であって、
前記協調設計支援装置が、
集積回路について集積回路設計ＣＡＤにより作成されたピン割付情報を入力するピン割付情報入力ステップと、
前記ピン割付情報入力ステップにより入力されたピン割付情報を用いて、実装設計ＣＡＤ装置が必要とする部品形状タイプライブラリを代替する仮の部品形状タイプライブラリを仮ライブラリとして集積回路を対象に作成する仮ライブラリ作成ステップと、
を含んだことを特徴とするプリント基板の製造方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ＰＬＤ部品などの集積回路を含むプリント基板の設計において、実装設計ＣＡＤ装置を用いた早期ピン割付の検討を可能とし、もってプリント基板設計の設計期間を短縮することができる協調設計支援装置、協調設計支援方法、協調設計支援プログラムおよびプリント基板の製造方法に関するものである。
【背景技術】
【０００２】
ＦＰＧＡ(Field  Programmable  Gate  Array)などのＰＬＤ部品を含むプリント基板の設計では、ＰＬＤ設計者、回路設計者および実装設計者がピン割付情報などの設計情報を交換しながら設計が進められる。
【０００３】
ここで、ＰＬＤ設計を支援するＰＬＤ設計ＣＡＤ装置、回路設計を支援する回路設計ＣＡＤ装置および実装設計を支援する実装設計ＣＡＤ装置はそれぞれ設計情報を保持するため、各装置が保持する設計情報間で整合がとれていることが重要となる。したがって、例えば、実装設計でピン割付が変更された場合には、実装設計でのピン割付の変更をＰＬＤ設計情報に反映させる必要がある。
【０００４】
そこで、実装設計でのピンの入れ替えをＰＬＤ設計情報に反映させる技術が開発されている。例えば、特許文献１には、実装設計や回路設計で変更されたピン配列情報をＦＰＧＡの設計情報に反映させるＦＰＧＡ設計支援装置が記載されている。
【０００５】
【特許文献１】特開２００６−７９４４７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、実装設計ＣＡＤ装置を用いて実装検討を行うためには、部品形状タイプライブラリが必要となるが、ＰＬＤ設計者と実装設計者との間で早期にピン割付を検討する場合に、ＰＬＤ部品の部品形状タイプライブラリがないために、実装設計者が実装設計ＣＡＤ装置を用いてピン割付の検討を行うことができないという問題がある。
【０００７】
この発明は、上述した従来技術による問題点を解消するためになされたものであり、実装設計ＣＡＤ装置を用いた早期ピン割付の検討を可能とし、もってプリント基板設計の設計期間を短縮することができる協調設計支援装置、協調設計支援方法、協調設計支援プログラムおよびプリント基板の製造方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するため、協調設計支援装置は、集積回路について集積回路設計ＣＡＤにより作成されたピン割付情報を入力するピン割付情報入力手段と、前記ピン割付情報入力手段により入力されたピン割付情報を用いて、実装設計ＣＡＤ装置が必要とする部品形状タイプライブラリを代替する仮の部品形状タイプライブラリを仮ライブラリとして集積回路を対象に作成する仮ライブラリ作成手段と、を備えたことを特徴とする。
【０００９】
この協調設計支援装置によれば、集積回路について集積回路設計ＣＡＤにより作成されたピン割付情報を入力し、入力したピン割付情報を用いて、実装設計ＣＡＤ装置が必要とする部品形状タイプライブラリを代替する仮の部品形状タイプライブラリを仮ライブラリとして集積回路を対象に作成するよう構成したので、実装設計ＣＡＤ装置を用いた早期のピン割付の検討を可能とすることができる。
【００１０】
また、協調設計支援装置は、上記構成において、前記仮ライブラリ作成手段により作成される仮ライブラリは、集積回路の各ピンについてランド形状タイプライブラリ名、Ｘ座標、Ｙ座標、角度およびピン名を含むことを特徴とする。
【００１１】
この協調設計支援装置によれば、作成する仮ライブラリは、集積回路の各ピンについてランド形状タイプライブラリ名、Ｘ座標、Ｙ座標、角度およびピン名を含むよう構成したので、実装設計ＣＡＤ装置に必要な情報を提供することができる。
【００１２】
また、協調設計支援装置は、上記構成において、前記仮ライブラリ作成手段により作成される仮ライブラリは、集積回路のサイズをさらに含むことを特徴とする。
【００１３】
この協調設計支援装置によれば、作成する仮ライブラリは、集積回路のサイズをさらに含むよう構成したので、実装設計ＣＡＤ装置は部品間の距離を算出することができる。
【００１４】
また、協調設計支援装置は、上記構成において、実装設計で集積回路に対して行われたピンスワップに関する情報であるピンスワップ情報を入力するピンスワップ情報入力手段と、前記ピンスワップ情報入力手段により入力されたピンスワップ情報を用いて、集積回路設計への前記ピンスワップの反映に使用される情報を出力するスワップ反映情報出力手段と、をさらに備えたことを特徴とする。
【００１５】
この協調設計支援装置によれば、ピンスワップ情報を入力し、入力したピンスワップ情報を用いて、集積回路設計へのピンスワップの反映に使用される情報を出力するよう構成したので、ピンスワップを集積回路設計情報に反映させることができる。
【００１６】
また、協調設計支援装置は、上記構成において、所定の形式のネットリストを入力し、実装設計ＣＡＤ装置が必要とする形式のネットリストに変換して出力するネットリスト変換手段をさらに備えたことを特徴とする。
【００１７】
この協調設計支援装置によれば、所定の形式のネットリストを入力し、実装設計ＣＡＤ装置が必要とする形式のネットリストに変換して出力するよう構成したので、実装設計ＣＡＤ装置にネットリストを提供することができる。
【００１８】
また、協調設計支援装置は、上記構成において、前記ネットリスト変換手段が入力する所定の形式のネットリストには、ネットごとの情報が定義され、前記ネットリスト変換手段が出力するネットリストには、ピンごとの情報が定義されることを特徴とする。
【００１９】
この協調設計支援装置によれば、所定の形式のネットリストには、ネットごとの情報が定義され、出力するネットリストには、ピンごとの情報が定義されるよう構成したので、使用者にとって記述が容易なネットリストから実装設計ＣＡＤ装置が必要とするネットリストを生成することができる。
【００２０】
また、協調設計支援装置は、上記構成において、前記仮ライブラリ作成手段が仮ライブラリの作成に用いるピン間隔の情報を使用者から受け付けるピン間隔情報受付手段をさらに備えたことを特徴とする。
【００２１】
この協調設計支援装置によれば、仮ライブラリの作成に用いるピン間隔の情報を使用者から受け付けるよう構成したので、使用者はピン間隔を変えてピン割当の検討を行うことができる。
【００２２】
また、協調設計支援方法は、集積回路について集積回路設計ＣＡＤにより作成されたピン割付情報を入力するピン割付情報入力ステップと、前記ピン割付情報入力ステップにより入力されたピン割付情報を用いて、実装設計ＣＡＤ装置が必要とする部品形状タイプライブラリを代替する仮の部品形状タイプライブラリを仮ライブラリとして集積回路を対象に作成する仮ライブラリ作成ステップと、を含んだことを特徴とする。
【００２３】
この協調設計支援方法によれば、集積回路について集積回路設計ＣＡＤにより作成されたピン割付情報を入力し、入力したピン割付情報を用いて、実装設計ＣＡＤ装置が必要とする部品形状タイプライブラリを代替する仮の部品形状タイプライブラリを仮ライブラリとして集積回路を対象に作成するよう構成したので、実装設計ＣＡＤ装置を用いた早期のピン割付の検討を可能とすることができる。
【００２４】
また、協調設計支援プログラムは、集積回路について集積回路設計ＣＡＤにより作成されたピン割付情報を入力するピン割付情報入力手順と、前記ピン割付情報入力手順により入力されたピン割付情報を用いて、実装設計ＣＡＤ装置が必要とする部品形状タイプライブラリを代替する仮の部品形状タイプライブラリを仮ライブラリとして集積回路を対象に作成する仮ライブラリ作成手順と、をコンピュータに実行させることを特徴とする。
【００２５】
この協調設計支援プログラムによれば、集積回路について集積回路設計ＣＡＤにより作成されたピン割付情報を入力し、入力したピン割付情報を用いて、実装設計ＣＡＤ装置が必要とする部品形状タイプライブラリを代替する仮の部品形状タイプライブラリを仮ライブラリとして集積回路を対象に作成するよう構成したので、実装設計ＣＡＤ装置を用いた早期のピン割付の検討を可能とすることができる。
【００２６】
また、プリント基板の製造方法は、プリント基板の実装設計と集積回路設計との協調設計を支援する協調設計支援装置を用いて設計が行われるプリント基板の製造方法であって、前記協調設計支援装置が、集積回路について集積回路設計ＣＡＤにより作成されたピン割付情報を入力するピン割付情報入力ステップと、前記ピン割付情報入力ステップにより入力されたピン割付情報を用いて、実装設計ＣＡＤ装置が必要とする部品形状タイプライブラリを代替する仮の部品形状タイプライブラリを仮ライブラリとして集積回路を対象に作成する仮ライブラリ作成ステップと、を含んだことを特徴とする。
【００２７】
このプリント基板の製造方法によれば、集積回路について集積回路設計ＣＡＤにより作成されたピン割付情報を入力し、入力したピン割付情報を用いて、実装設計ＣＡＤ装置が必要とする部品形状タイプライブラリを代替する仮の部品形状タイプライブラリを仮ライブラリとして集積回路を対象に作成するよう構成したので、実装設計ＣＡＤ装置を用いた早期のピン割付の検討を可能とすることができる。
【発明の効果】
【００２８】
本発明によれば、実装設計ＣＡＤ装置を用いた早期のピン割付の検討を可能とするので、プリント基板の設計期間を短縮することができるという効果を奏する。
【００２９】
また、本発明によれば、実装設計ＣＡＤ装置に必要な情報を提供するので、実装設計ＣＡＤ装置を用いたピン割付の検討を可能とすることができるという効果を奏する。
【００３０】
また、本発明によれば、実装設計ＣＡＤ装置は、部品間の距離を算出することができるので、部品間の距離に基づくピン割付の検討を可能とすることができるという効果を奏する。
【００３１】
また、本発明によれば、ピンスワップをＰＬＤ設計情報に反映させるので、実装設計情報とＰＬＤ設計情報との間の整合性確保を容易にすることができるという効果を奏する。
【００３２】
また、本発明によれば、実装設計ＣＡＤ装置にネットリストを提供するので、部品ピン間のネットのつながりに基づくピン割付の検討を可能とすることができるという効果を奏する。
【００３３】
また、本発明によれば、使用者にとって記述が容易なネットリストから実装設計ＣＡＤ装置が必要とするネットリストを生成するので、使用者の負担を低減することができるという効果を奏する。
【００３４】
また、本発明によれば、使用者は、ピン間隔を変えてピン割当の検討を行うことができるので、様々なピン割当を検討することができるという効果を奏する。
【発明を実施するための最良の形態】
【００３５】
以下に添付図面を参照して、この発明に係る協調設計支援装置、協調設計支援方法、協調設計支援プログラムおよびプリント基板の製造方法の好適な実施例を詳細に説明する。なお、本実施例では、本発明をＦＰＧＡに適用した場合を中心に説明する。
【実施例１】
【００３６】
まず、本実施例１に係るＦＰＧＡ協調設計の概念について説明する。図１は、本実施例１に係るＦＰＧＡ協調設計の概念を説明するための説明図である。同図に示すように、本実施例１に係るＦＰＧＡ協調設計では、ＦＰＧＡの設計を支援するＦＰＧＡ設計ＣＡＤ装置１０と、プリント基板の実装設計を支援する実装設計ＣＡＤ装置２０と、回路設計を支援する回路設計支援装置としての回路設計ＣＡＤ装置１００が連携して設計者を支援する。
【００３７】
具体的には、回路設計ＣＡＤ装置１００がＦＰＧＡ設計ＣＡＤ装置１０が作成したピン配置等のＦＰＧＡ情報を入力してＦＰＧＡのシンボルライブラリを作成する。また、この回路設計ＣＡＤ装置１００は、ＦＰＧＡのシンボルライブラリを作成する場合に、シンボルライブラリを作成するＦＰＧＡが既に回路図に配置済のとき、すなわちＦＰＧＡの変更にともなってシンボルライブラリを再度作成するときは、ポーション分割やシンボルピンの配置など既存のシンボルの情報をできるだけそのまま利用してシンボルライブラリを作成する。
【００３８】
このように、回路設計ＣＡＤ装置１００がＦＰＧＡ情報を用いてＦＰＧＡのシンボルライブラリを作成することによって、回路設計者はＦＰＧＡのシンボルライブラリを作成する必要がなくなり、回路設計者の負担を軽減することができる。また、回路設計ＣＡＤ装置１００がＦＰＧＡの変更にともなってシンボルライブラリを再度作成する場合に、既存のシンボルの情報をできるだけそのまま利用してシンボルライブラリを作成することによって、回路図の修正を減らすことができ、回路設計の効率を向上させることができる。
【００３９】
また、この回路設計ＣＡＤ装置１００は、ＤＲＣ（デザインルールチェック）を行う場合に、ＦＰＧＡ設計ＣＡＤ装置１０が作成したピン入出力属性などＦＰＧＡ情報を参照してＤＲＣを行う。例えば、この回路設計ＣＡＤ装置１００は、各ネットについて、ＦＰＧＡのピン入出力属性を参照して出力ピンの個数のチェックを行う。このように、回路設計ＣＡＤ装置１００がピン入出力属性などＦＰＧＡ情報を参照してＤＲＣを行うことによって、より正確にＤＲＣを行うことができる。
【００４０】
また、この回路設計ＣＡＤ装置１００は、実装設計でピンスワップが発生した場合に、実装設計ＣＡＤ装置２０からピンスワップ情報を取り込んでシンボルライブラリや回路図などにピンスワップを反映させる。また、この回路設計ＣＡＤ装置１００は、ピン間の配線長などの制約条件にも実装設計でのピンスワップを反映させる。このように、回路設計ＣＡＤ装置１００が実装設計でのピンスワップを制約条件にも反映させることによって、回路設計情報と実装設計情報との間の不整合をなくすことができる。
【００４１】
また、この回路設計ＣＡＤ装置１００は、実装設計でのピンスワップの履歴を記録し、ＦＰＧＡ設計ＣＡＤ装置１０にピンスワップの履歴情報を提供する。このように、回路設計ＣＡＤ装置１００が実装設計でのピンスワップの履歴を記録し、ＦＰＧＡ設計ＣＡＤ装置１０にピンスワップの履歴情報を提供することによって、ＦＰＧＡ設計、回路設計および実装設計の間の整合性を確保することができる。
【００４２】
次に、本実施例１に係るＦＰＧＡ協調設計システムの構成について説明する。図２は、本実施例１に係るＦＰＧＡ協調設計システムの構成を示す機能ブロック図である。同図に示すように、このＦＰＧＡ協調設計システムは、ＦＰＧＡ設計ＣＡＤ装置１０と、実装設計ＣＡＤ装置２０と、回路設計ＣＡＤ装置１００とから構成される。
【００４３】
回路設計ＣＡＤ装置１００は、ＦＰＧＡ設計ＣＡＤ装置１０および実装設計ＣＡＤ装置２０と連携して、ＦＰＧＡを部品として使用する回路設計を支援する。図３は、回路設計を説明するための説明図である。同図に示すように、回路設計者は、部品と関連付けられたシンボルライブラリとして登録されているシンボルを回路図上に配置し、シンボルピン間を接続することで回路の設計を行う。
【００４４】
ただし、ＦＰＧＡの場合、プログラムが書き込まれる前にシンボルライブラリとして登録されているものでは、ピンは入力にも出力にもなりえるため入出力ピンとして定義されている。そのため、登録済のシンボルライブラリを使用した場合には、入力となるピンが右に存在したり、逆に出力となるピンが左に存在したり、あるいは、図４（ａ）に示すように、バスが順序よく並ばないため回路図としてわかりづらくなる。
【００４５】
したがって、ＦＰＧＡについては、プログラムの書き込みごとにシンボルライブラリの作成が必要となる。そこで、ここでは、回路設計ＣＡＤ装置１００がプログラムの書き込みごとにＦＰＧＡのシンボルライブラリを作成することとしている。プログラムの書き込みごとにＦＰＧＡのシンボルライブラリを作成することによって、図４（ｂ）に示すように、入力となるピンを左に配置し、またバスを順序よく並べることができる。
【００４６】
図２に戻って、この回路設計ＣＡＤ装置１００は、ＦＰＧＡ情報管理部１１０と、ＦＰＧＡ情報記憶部１１５と、ライブラリ作成部１２０と、シンボルライブラリ記憶部１２５と、回路図反映部１３０と、回路図記憶部１３５と、ＤＲＣ部１４０と、ピンスワップ処理部１５０と、制約条件記憶部１５５と、履歴出力部１６０と、変更履歴記憶部１６５とを有する。
【００４７】
ＦＰＧＡ情報管理部１１０は、ＦＰＧＡ情報を管理する処理部であり、ＦＰＧＡ設計ＣＡＤ装置１０が出力したファイルから物理ピンと論理ピンの対応、ピンの入出力属性、電圧値、バンク番号などのＦＰＧＡ情報を読み込んでＦＰＧＡ情報記憶部１１５に格納する。
【００４８】
また、このＦＰＧＡ情報管理部１１０は、ＦＰＧＡ情報記憶部１１５にＦＰＧＡ情報を最初に格納した後にＦＰＧＡ情報を読み込んでＦＰＧＡ情報記憶部１１５に再格納した場合には、ＦＰＧＡ情報が変更されたことを示す変更履歴を変更履歴記憶部１６５に格納する。
【００４９】
ＦＰＧＡ情報記憶部１１５は、ＦＰＧＡ情報管理部１１０の管理の下にＦＰＧＡ情報を記憶する記憶部である。図５は、ＦＰＧＡ情報記憶部１１５が記憶するＦＰＧＡ情報の一例を示す図である。同図に示すように、このＦＰＧＡ情報記憶部１１５は、ピンごとに、物理ピン名、論理ピン名、入出力属性、バンク番号、スワップグループ番号、差動属性および電源電圧値を記憶する。
【００５０】
ライブラリ作成部１２０は、ＦＰＧＡ情報記憶部１１５が記憶するＦＰＧＡ情報を用いてＦＰＧＡのシンボルライブラリを作成する処理部であり、作成したシンボルライブラリをシンボルライブラリ記憶部１２５に格納する。このライブラリ作成部１２０は、ポーション分割を行うポーション分割部１２１と、ポーション分割部１２１により分割された各ポーションのシンボルを作成するシンボル作成部１２２とを有する。
【００５１】
ポーション分割部１２１は、使用者によってＧＵＩを用いて指定されたポーション分割ルールでポーション分割を行う。ポーション分割としては、バンク番号毎、バンクグループ毎、論理ピン名による分割などがある。また、このポーション分割部１２１は、シンボル上でのピン位置については、左右の位置は入出力属性により決定し、順序はそれぞれの属性によりソートして決定する。また、このポーション分割部１２１は、使用者がＧＵＩを用いて指定したポーション間のピンの移動を受け付けてピンの移動を行う。
【００５２】
また、ライブラリ作成部１２０は、シンボルライブラリを作成するときに、作成対象のＦＰＧＡのシンボルが回路図に配置済であるか否かを調べ、回路図に配置済である場合には、配置済のシンボルに関する情報を参照してシンボルライブラリを作成する。
【００５３】
具体的には、このライブラリ作成部１２０は、論理ピン名をキーに既存のシンボルライブラリを参照してポーション分割する。また、このライブラリ作成部１２０は、既存のシンボルライブラリと一致する位置にシンボルピンを配置したシンボルライブラリを作成する。すなわち、このライブラリ作成部１２０は、既存のシンボルに含まれる論理ピン名のピンは既存のポーションと同じポーションの同じ位置に割り付け、既存のシンボルに含まれない論理ピン名のピンは、物理ピン名が同じピンのポーションに割り付ける。また、このライブラリ作成部１２０は、シンボルライブラリ上の空いている位置に論理ピン名が一致しなかったピンを配置し、空がない場合には、下方向へシンボルライブラリのサイズを拡張してピンを配置する。
【００５４】
このライブラリ作成部１２０が、作成対象のＦＰＧＡのシンボルが回路図に配置済である場合に、配置済のシンボルに関する情報を参照してシンボルライブラリを作成することによって、ＦＰＧＡの設計変更に起因する回路図の修正を最小限に抑えることができる。
【００５５】
シンボルライブラリ記憶部１２５は、ＦＰＧＡのシンボルライブラリを記憶する記憶部である。図６は、シンボルライブラリ記憶部１２５が記憶するシンボルライブラリの一例を示す図である。同図に示すように、このシンボルライブラリ記憶部１２５は、ライブラリ名称、作成日時、版数、占有領域、図形テーブル数およびシンボルピン数の情報と、シンボルを構成する各図形の情報と、各ピンの情報とを記憶する。
【００５６】
回路図反映部１３０は、ライブラリ作成部１２０によってシンボルライブラリが作成されたＦＰＧＡのシンボルが回路図に配置済であった場合に、配置済のシンボルを新たに作成されたシンボルで置き換える処理部である。また、この回路図反映部１３０は、置き換え前と異なる論理ピン名となるピンにラインが接続されている場合に、そのラインを切断する。
【００５７】
この回路図反映部１３０が、置き換え前と異なる論理ピン名となるピンにラインが接続されている場合に、そのラインを切断することによって、ＦＰＧＡの設計変更に伴う回路図の修正漏れを減らすことができる。
【００５８】
回路図記憶部１３５は、部品が配置された回路図の情報を記憶する記憶部である。この回路図記憶部１３５は、ライブラリ作成部１２０によってシンボルライブラリが作成されたＦＰＧＡのシンボルが回路図に配置済であった場合に、回路図反映部１３０によって更新される。
【００５９】
ＤＲＣ部１４０は、ＤＲＣを行う処理部であり、回路図の情報、部品ライブラリ３０の情報に加えてＦＰＧＡ情報管理部１１０が管理するＦＰＧＡ情報を参照してＤＲＣを行う。具体的には、このＤＲＣ部１４０は、入出力属性チェック、差動信号チェック、電源電圧値チェックなどを行う。このＤＲＣ部１４０が、ＦＰＧＡ情報を参照してＤＲＣを行うことによって、ＦＰＧＡに関連するＤＲＣを正確に行うことができる。
【００６０】
ピンスワップ処理部１５０は、実装設計ＣＡＤ装置２０が出力するピンスワップ情報を入力し、実装設計で行われたピンスワップをＦＰＧＡ情報、シンボルライブラリ、回路図に反映する処理部である。ＦＰＧＡでは、プログラム書き込みで部品内部の動作を変更できるので、実装しやすいピン割付とするため実装設計フェーズでＦＰＧＡ部品のピンの入れ替え（ピンスワップ）が行われる。このため、ピンスワップ処理部１５０は、実装設計で行われたピンスワップを回路設計に反映させる処理を行う。
【００６１】
図７は、ピンスワップの一例を示す図である。同図に示すように、ＦＰＧＡと他の部品との間の配線がクロスするような場合、ＦＰＧＡのピンスワップによって配線のクロスをなくすことができる。図８は、ピンスワップの回路図への反映例を示す図である。同図に示すように、回路図のシンボルで物理ピン名が「Ｄ１」、「Ｅ１」、「Ｆ１」、「Ｇ１」のピンの配置変更が行われている。
【００６２】
また、このピンスワップ処理部１５０は、ピン間の配線距離長などの制約条件にも実装設計でのピンスワップを反映させる。このピンスワップ処理部１５０が制約条件にも実装設計でのピンスワップを反映させことによって、回路設計と実装設計との間で設計情報の整合性を確保することができる。
【００６３】
また、このピンスワップ処理部１５０は、ピンスワップによるＦＰＧＡ情報の変更履歴を記憶するようにＦＰＧＡ情報管理部１１０に指示し、ＦＰＧＡ情報管理部１１０は、変更履歴記憶部１６５に変更履歴を格納する。
【００６４】
制約条件記憶部１５５は、ピン間の配線長などの回路設計に関する制約条件を記憶した記憶部である。図９は、制約条件記憶部１５５が記憶する制約条件の一例を示す図である。同図に示すように、この制約条件記憶部１５５は、ピン間の配線距離長に関する制約条件を記憶する。例えば、部品「ＩＣ１」の物理ピン名が「Ｇ１」のピンと部品「Ｉ１２」の物理ピン名が「２」のピンとの間の配線長は５０ｍｍ以下であることが制約条件として記憶されている。
【００６５】
履歴出力部１６０は、ピンスワップ処理部１５０によるピンスワップ反映処理で変更されたＦＰＧＡ情報の変更履歴を通知情報としてＦＰＧＡ設計ＣＡＤ装置１０が入力可能な形式でファイルに出力する処理部である。
【００６６】
変更履歴記憶部１６５は、ＦＰＧＡ情報の変更履歴を記憶する記憶部であり、ＦＰＧＡ情報管理部１１０によって管理される。図１０は、変更履歴記憶部１６５が記憶する変更履歴の一例を示す図である。同図に示すように、この変更履歴記憶部１６５は、ピンスワップ処理ごとに、処理が行われた日時とスワップが行われたピンに関して変更された情報を記憶する。また、この変更履歴記憶部１６５は、履歴出力部１６０による変更履歴の出力ごと、ＦＰＧＡ情報管理部１１０によるＦＰＧＡ設計ＣＡＤ装置１０からのＦＰＧＡ情報読み込みごとに、処理が行われた日時を記憶する。
【００６７】
図１１は、履歴出力部１６０がＦＰＧＡ設計ＣＡＤ装置１０に対して出力する通知情報の一例を示す図である。同図に示すように、履歴出力部１６０は、スワップが行われたピンごとに物理ピン名と変更後の論理ピン名を通知情報として出力する。図１２は、通知情報の出力フォーマットを示す図である。
【００６８】
このように、変更履歴記憶部１６５がＦＰＧＡ情報の変更履歴を記憶し、履歴出力部１６０が変更履歴をＦＰＧＡ設計ＣＡＤ装置１０が入力可能な形式で通知情報をファイルに出力することによって、実装設計、回路設計およびＦＰＧＡ設計の間での設計情報の整合性を確保することができる。
【００６９】
次に、回路設計ＣＡＤ装置１００によるシンボルライブラリ作成およびシンボル配置処理の処理手順について説明する。図１３は、回路設計ＣＡＤ装置１００によるシンボルライブラリ作成およびシンボル配置処理の処理手順を示すフローチャートである。
【００７０】
同図に示すように、回路設計ＣＡＤ装置１００は、ＦＰＧＡ情報管理部１１０がＦＰＧＡ設計ＣＡＤ装置１０がファイルに出力したピン割付情報および属性情報などのＦＰＧＡ情報を読み込み、ＦＰＧＡ情報記憶部１１５に格納する（ステップＳ１０１）。
【００７１】
そして、ライブラリ作成部１２０が、ＦＰＧＡ情報管理部１１０によって読み込まれたＦＰＧＡ情報に対応するシンボルが回路図に配置済みであるか否かを判定し（ステップＳ１０２）、回路図に配置済みでない場合には、使用者によって指定されたポーション分割ルールを使ってポーション分割を行い（ステップＳ１０３）、入出力属性に基づいて左右に割り振るなど所定のシンボル作成ルールにしたがってシンボルピンの位置を決める（ステップＳ１０４）。
【００７２】
一方、回路図に配置済みである場合には、ライブラリ作成部１２０は、以前に行われたポーション分割を参照し、以前と同じ論理ピン名のピンは以前と同じポーションに割り付ける（ステップＳ１０５）。また、以前に同じ論理ピン名がないピンは、物理ピン名で以前と同じポーションに割り付ける（ステップＳ１０６）。そして、以前と同じ論理ピン名のピンは以前と同じ位置に配置し（ステップＳ１０７）、以前に同じ論理ピン名がないピンはシンボル上の空位置に配置する（ステップＳ１０８）。
【００７３】
そして、ライブラリ作成部１２０は、使用者からＧＵＩによるポーション分割、ピン位置の変更を受け付け、変更が指定された場合には、ポーション分割、ピン位置を変更し（ステップＳ１０９）、シンボリライブラリを作成してシンボルライブラリ記憶部１２５に格納する（ステップＳ１１０）。
【００７４】
そして、回路図反映部１３０が、ライブラリ作成部１２０によってシンボルライブラリが作成されたＦＰＧＡの以前のシンボルが回路図に配置済みであるか否かを判定し（ステップＳ１１１）、回路図に配置済みである場合には、配置済みのシンボルを新たに作成されたシンボルで置き換え（ステップＳ１１２）、以前とは異なる論理ピン名が配置されるピンにラインが接続されている場合には、そのラインを切断する（ステップＳ１１３）。
【００７５】
その後、作成されたシンボルは、部品入力機能によって使用者によって指定されると回路図に配置される（ステップＳ１１４）。
【００７６】
このように、ＦＰＧＡ情報管理部１１０によって読み込まれたＦＰＧＡ情報に対応するシンボルが回路図に配置済みである場合に、ライブラリ作成部１２０が以前に作成したシンボルライブラリを参照してシンボルライブラリを作成し、回路図反映部１３０が配置済みのシンボルを新たにシンボルライブラリが作成されたシンボルで置き換えることによって、ＦＰＧＡの設計変更に伴う回路図の修正を最小限に抑えることができる。
【００７７】
なお、ここでは、ライブラリ作成部１２０は、シンボルライブラリ作成対象のＦＰＧＡが回路図に配置されている場合に、以前に作成したシンボルライブラリを参照することとしたが、シンボルライブラリ作成対象のＦＰＧＡのシンボルライブラリがシンボルライブラリ記憶部１２５に記憶されている場合に、以前に作成したシンボルライブラリを参照するようにすることもできる。
【００７８】
次に、ＤＲＣ部１４０による入出力属性チェック処理の処理手順について説明する。図１４は、ＤＲＣ部１４０による入出力属性チェック処理の処理手順を示すフローチャートである。
【００７９】
同図に示すように、ＤＲＣ部１４０は、ネットすなわち１接続グループの一つに着目し、着目したネットに属する全てのピンの情報を取得する（ステップＳ２０１）。そして、情報を取得したピンの一つに着目し（ステップＳ２０２）、着目したピンはＦＰＧＡ部品のものか否かを判定する（ステップＳ２０３）。
【００８０】
その結果、着目したピンがＦＰＧＡ部品のものである場合には、ＦＰＧＡ情報記憶部１１５に記憶されたＦＰＧＡ情報を参照してピンの入出力属性を調べ（ステップＳ２０４）、着目したピンがＦＰＧＡ部品のものでない場合には、部品ライブラリ３０を参照してピンの入出力属性を調べる（ステップＳ２０５）。そして、全てのピンの入出力属性を調べたか否かを判定し（ステップＳ２０６）、調べていないピンがある場合には、ステップＳ２０２に戻って調べていないピンに着目して入出力属性を調べる。
【００８１】
一方、全てのピンの入出力属性を調べた場合には、着目したネットに出力ピンが２ピン以上あるか否かを判定し（ステップＳ２０７）、出力ピンが２ピン以上ある場合には、ネットが出力ピン間を接続しているエラーとして使用者に通知する（ステップＳ２０８）。また、着目したネットに出力ピンが１ピンも存在しないか否かを判定し（ステップＳ２０９）、出力ピンが１ピンも存在しない場合には、着目したネットに出力ピンが存在しないエラーとして使用者に通知する（ステップＳ２１０）。これに対して、一つのピンだけが出力ピンである場合には、着目したネットは正常として使用者に通知する（ステップＳ２１１）。
【００８２】
そして、全ネットについて出力ピン数をチェックしたか否かを判定し（ステップＳ２１２）、チェックしていないネットがある場合には、ステップＳ２０１に戻って未チェックのネットに着目して出力ピン数をチェックし、全てのネットについて出力ピン数をチェックした場合には、入出力属性チェック処理を終了する。
【００８３】
このように、ＤＲＣ部１４０がＦＰＧＡ部品についてはＦＰＧＡ情報を参照してピンの入出力属性を調べることによって、ＦＰＧＡを含む回路についても正確な入出力属性チェックを行うことができる。
【００８４】
次に、ＤＲＣ部１４０による差動信号チェック処理の処理手順について説明する。図１５は、ＤＲＣ部１４０による差動信号チェック処理の処理手順を示すフローチャートである。
【００８５】
同図に示すように、ＤＲＣ部１４０は、ネットの一つに着目し、着目したネットに属する全てのピンの情報を取得する（ステップＳ３０１）。また、差動属性がポジであるピンの数を示すポジピン数およびネガであるピンの数を示すネガピン数の初期値をゼロクリアする（ステップＳ３０２）。そして、情報を取得したピンの一つに着目し（ステップＳ３０３）、着目したピンはＦＰＧＡ部品のものか否かを判定する（ステップＳ３０４）。
【００８６】
その結果、着目したピンがＦＰＧＡ部品のものである場合には、ＦＰＧＡ情報記憶部１１５に記憶されたＦＰＧＡ情報を参照してピンの差動属性を調べ（ステップＳ３０５）、着目したピンがＦＰＧＡ部品のものでない場合には、部品ライブラリ３０を参照してピンの差動属性を調べる（ステップＳ３０６）。そして、差動属性がポジである場合にはポジピン数に「１」を加え、差動属性がネガである場合にはネガピン数に「１」を加える（ステップＳ３０７）。
【００８７】
そして、全てのピンの差動属性を調べたか否かを判定し（ステップＳ３０８）、調べていないピンがある場合には、ステップＳ３０３に戻って調べていないピンに着目して差動属性を調べる。
【００８８】
一方、全てのピンの差動属性を調べた場合には、ポジピン数が正でかつネガピン数も正であるか否か、すなわち着目したネットにポジ属性のピンとネガ属性のピンがあるか否かを判定し（ステップＳ３０９）、ポジピン数が正でかつネガピン数も正である場合には、ポジ属性のピンとネガ属性のピンを接続しているエラーとして使用者に通知する（ステップＳ３１０）。これに対して、ポジピン数とネガピン数の片方だけが正である場合には、着目したネットは正常として使用者に通知する（ステップＳ３１１）。
【００８９】
そして、全ネットについて差動信号をチェックしたか否かを判定し（ステップＳ３１２）、チェックしていないネットがある場合には、ステップＳ３０１に戻って未チェックのネットに着目して差動信号をチェックし、全てのネットについて差動信号をチェックした場合には、差動信号チェック処理を終了する。
【００９０】
このように、ＤＲＣ部１４０がＦＰＧＡ部品についてはＦＰＧＡ情報を参照してピンの差動属性を調べることによって、ＦＰＧＡを含む回路についても正確な差動信号チェックを行うことができる。
【００９１】
次に、ＤＲＣ部１４０による電源電圧値チェック処理の処理手順について説明する。図１６は、ＤＲＣ部１４０による電源電圧値チェック処理の処理手順を示すフローチャートである。
【００９２】
同図に示すように、ＤＲＣ部１４０は、部品の一つに着目し（ステップＳ４０１）、着目した部品のピンの一つに着目する（ステップＳ４０２）。そして、着目したピンは電源ピンであるか否かを判定し（ステップＳ４０３）、電源ピンでない場合には、ステップＳ４１０へ進む。
【００９３】
一方、着目したピンが電源ピンである場合には、ＦＰＧＡ部品のものか否かを判定し（ステップＳ４０４）、ＦＰＧＡ部品のものである場合には、ＦＰＧＡ情報記憶部１１５に記憶されたＦＰＧＡ情報を参照してピンの電源電圧値を調べ（ステップＳ４０５）、着目したピンがＦＰＧＡ部品のものでない場合には、部品ライブラリ３０を参照してピンの電源電圧値を調べる（ステップＳ４０６）。そして、着目しているピンに接続するネットの電圧値を調べ（ステップＳ４０７）、電圧値が一致するか否かを判定し（ステップＳ４０８）、電圧値が一致しない場合には、電源電圧値が不一致として使用者に通知する（ステップＳ４０９）。
【００９４】
そして、全てのピンを調べたか否かを判定し（ステップＳ４１０）、調べていないピンがある場合には、ステップＳ４０２に戻って調べていないピンに着目して電源ピンの電圧値を調べる。
【００９５】
一方、全てのピンを調べた場合には、全部品について電源電圧値をチェックしたか否かを判定し（ステップＳ４１１）、チェックしていない部品がある場合には、ステップＳ４０１に戻って未チェックの部品に着目して電源電圧値をチェックし、全ての部品について電源電圧値をチェックした場合には、電源電圧値チェック処理を終了する。
【００９６】
このように、ＤＲＣ部１４０がＦＰＧＡ部品についてはＦＰＧＡ情報を参照して電源ピンの電圧値を調べることによって、ＦＰＧＡを含む回路についても正確な電源電圧値チェックを行うことができる。
【００９７】
次に、ピンスワップ処理部１５０によるピンスワップ処理の処理手順について説明する。図１７は、ピンスワップ処理部１５０によるピンスワップ処理の処理手順を示すフローチャートである。
【００９８】
同図に示すように、ピンスワップ処理部１５０は、実装設計ＣＡＤ装置２０が作成したピンスワップ情報を取り込み（ステップＳ５０１）、ピンスワップが行われたＦＰＧＡのシンボルライブラリの物理ピン名を入れ替える（ステップＳ５０２）。
【００９９】
そして、ピンスワップが行われたＦＰＧＡのＦＰＧＡ情報の論理ピン名と論理に関する属性を入れ替え（ステップＳ５０３）、回路図上のシンボルを入れ替え済みのシンボルに更新する（ステップＳ５０４）。そして、制約条件を持つピンについては制約条件をピンスワップにあわせて入れ替える（ステップＳ５０５）。
【０１００】
このように、ピンスワップ処理部１５０が、制約条件を持つピンについては制約条件をピンスワップにあわせて入れ替えることによって、実装設計ＣＡＤでのピンスワップを正確に回路設計情報に反映させることができる。
【０１０１】
次に、履歴出力部１６０による変更履歴出力処理の処理手順について説明する。図１８は、履歴出力部１６０による変更履歴出力処理の処理手順を示すフローチャートである。同図に示すように、履歴出力部１６０は、変更履歴記憶部１６５が記憶する変更履歴から、最新のＦＰＧＡ情報読み込み後、最後に行ったＦＰＧＡ設計ＣＡＤ装置１０への通知情報出力処理を探す（ステップＳ６０１）。
【０１０２】
そして、最後に行った通知情報出力処理から現在までにピンスワップが行われたピンにマークをつけ（ステップＳ６０２）、マークをつけたピンの最新の属性をＦＰＧＡ設計ＣＡＤ装置１０への通知情報として出力する（ステップＳ６０３）。
【０１０３】
すなわち、履歴出力部１６０は、ＦＰＧＡ情報管理部１１０がＦＰＧＡ設計ＣＡＤ装置１０からＦＰＧＡ情報を読み込んでＦＰＧＡ情報記憶部１１５を更新した後で未通知のピンスワップを対象としてピンの最新の属性を通知情報として出力する。
【０１０４】
このように、履歴出力部１６０が、変更履歴記憶部１６５が記憶する変更履歴を用いて、ピンスワップが行われたピンの最新の属性をＦＰＧＡ設計ＣＡＤ装置１０への通知情報として出力することによって、実装設計でのピンスワップをＦＰＧＡ設計情報に反映させることができる。
【０１０５】
また、ＦＰＧＡ情報管理部１１０がＦＰＧＡ設計ＣＡＤ装置１０からＦＰＧＡ情報を読み込んでＦＰＧＡ情報記憶部１１５を更新した後で未通知のピンスワップだけを対象としてピンの最新の属性を通知情報として出力することによって、無駄な通知情報や重複する通知情報の出力をなくし、実装設計でのピンスワップを効率良くＦＰＧＡ設計情報に反映させることができる。
【０１０６】
上述してきたように、本実施例１では、回路設計ＣＡＤ装置１００のＦＰＧＡ情報管理部１１０がＦＰＧＡ設計ＣＡＤ装置１０が作成したピン割付情報や属性情報などのＦＰＧＡ情報を取り込み、ライブラリ作成部１２０がＦＰＧＡ情報を用いてシンボルライブラリを作成することとしたので、回路設計者がＦＰＧＡのシンボルライブラリを作成する必要がなくなり、回路設計者の負担を軽減することができる。
【０１０７】
また、ライブラリ作成部１２０は、シンボルライブラリを作成する場合に作成対象のＦＰＧＡが回路図に配置済みの場合には、回路図に配置されている既存のシンボルライブラリのポーション分割やピン配置をできるだけ変更しないようにし、回路図反映部１３０が新たにシンボルライブラリが作成されたＦＰＧＡのシンボルを回路図に配置する場合に、既存の配置を変更しないように配置することとしたので、ＦＰＧＡの設計変更にともなう回路図の変更を最小限に抑えることができる。
【０１０８】
また、本実施例１では、回路設計ＣＡＤ装置１００のＤＲＣ部１４０がＤＲＣを行う場合に、ＦＰＧＡについてはＦＰＧＡ情報管理部１１０がＦＰＧＡ設計ＣＡＤ装置１０から取り込んでＦＰＧＡ情報記憶部１１５に格納したＦＰＧＡ情報を参照してピンの属性などを調べることとしたので、正確なＤＲＣを行うことができる。
【０１０９】
また、本実施例１では、回路設計ＣＡＤ装置１００のピンスワップ処理部１５０が実装設計ＣＡＤ装置２０からピンスワップ情報を取り込んでシンボルライブラリ、ＦＰＧＡ情報、回路図に加えて制約条件にもピンスワップを反映させることとしたので、回路設計情報と実装設計情報との間の不整合をなくすことができる。
【０１１０】
また、本実施例１では、回路設計ＣＡＤ装置１００の変更履歴記憶部１６５がＦＰＧＡ情報の変更履歴を記憶し、ＦＰＧＡ設計ＣＡＤ装置１０にピンスワップを通知する情報を履歴出力部１６０が変更履歴記憶部１６５に記憶された変更履歴に基づいて出力することとしたので、実装設計と回路設計とＦＰＧＡ設計との間で設計情報の整合性を確保することができる。
【実施例２】
【０１１１】
ところで、上記実施例１では、ＦＰＧＡ部品を使用する回路設計結果に基づいてプリント基板の実装設計を行う場合のＦＰＧＡ協調設計システムについて説明したが、ＦＰＧＡ設計者と実装設計者との間であらかじめ両者にとって望ましいピン割付を検討しておくことは設計期間の短縮に大きく寄与する。そこで、本実施例２では、ＦＰＧＡ設計者と実装設計者との間での協調設計を支援するＦＰＧＡ協調設計システムについて説明する。
【０１１２】
まず、本実施例２に係るＦＰＧＡ協調設計の概念について説明する。図１９は、本実施例２に係るＦＰＧＡ協調設計の概念を説明するための説明図である。同図に示すように、本実施例２に係るＦＰＧＡ協調設計では、協調設計支援装置としての仮ライブラリ作成装置２００がＦＰＧＡ設計ＣＡＤ装置１０が作成したピン割付情報等のＦＰＧＡピン情報を入力してＦＰＧＡの仮ライブラリを作成する。ここで、仮ライブラリとは、実装設計ＣＡＤ装置２０がピン割付を行う場合に必要とする部品形状タイプライブラリであり、ＦＰＧＡについて仮に作成されるライブラリである。
【０１１３】
また、仮ライブラリ作成装置２００は、実装設計ＣＡＤ装置２０からピンスワップ情報を取り込んで自身が管理するＦＰＧＡ情報に反映させるとともに、ピンスワップ情報をＦＰＧＡ設計ＣＡＤ装置１０に通知する。
【０１１４】
このように、本実施例２では、仮ライブラリ作成装置２００がＦＰＧＡ設計ＣＡＤ装置１０が作成したＦＰＧＡピン情報を入力してＦＰＧＡに対して仮の部品形状タイプライブラリを作成することによって、実装設計ＣＡＤ装置２０を用いたピン割付の検討を可能としている。
【０１１５】
次に、本実施例２に係るＦＰＧＡ協調設計システムの構成について説明する。図２０は、本実施例２に係るＦＰＧＡ協調設計システムの構成を示す機能ブロック図である。同図に示すように、このＦＰＧＡ協調設計システムは、ＦＰＧＡ設計ＣＡＤ装置１０と、実装設計ＣＡＤ装置２０と、仮ライブラリ作成装置２００とから構成され、仮ライブラリ作成装置２００は、ネットリスト取込部２１０と、ネットリスト管理部２２０と、ネットリスト変換部２３０と、ＦＰＧＡ設計ＣＡＤインタフェース部２４０と、ＦＰＧＡピン情報管理部２５０と、仮ライブラリ生成部２６０と、ピンスワップ処理部２７０とを有する。
【０１１６】
ネットリスト取込部２１０は、使用者によって作成されたネットリストを読み込んでネットリスト管理部２２０に渡す処理部である。図２１は、ネットリスト取込部２１０により読み込まれるネットリストの一例を示す図である。
【０１１７】
同図に示すように、このネットリストは、部品を定義する部品定義部とネットを定義するネット定義部とから構成される。部品定義部では、検討に使用する部品について、部品名と部品ライブラリ名が記述される。ただし、ＦＰＧＡ部品は、部品ライブラリがないので、「ＦＰＧＡ／」に続けてモジュール名（ＦＰＧＡを区別するための名前）が記述される。
【０１１８】
ネット定義部では、ネット毎にネット名と、接続する部品ピンが記述される。ここで、部品ピンは部品名．部品ピン名の形式で記述される。なお、ＦＰＧＡ部品については、ピン名として論理ピン名または物理ピン名が記述される（物理ピン名のときは％が付けられる）。
【０１１９】
ネットリスト管理部２２０は、ネットリスト取込部２１０によって読み込まれたネットリストを記憶・管理する管理部である。このネットリスト管理部２２０は、使用者からＧＵＩによるネットリストの変更を受け付けてネットリストを変更する。
【０１２０】
ネットリスト変換部２３０は、ネットリスト管理部２２０が管理するネットリストを実装設計ＣＡＤ装置２０が入力できるフォーマットに変換する処理部である。このネットリスト変換部２３０は、ネットリストの変換に際してＦＰＧＡピン情報管理部２５０が管理するＦＰＧＡ情報を参照する。
【０１２１】
図２２は、ネットリスト変換部２３０が出力するネットリストの一例を示す図である。同図に示すように、このネットリストでは、ピン毎に部品名、ライブラリ名、部品端子番号、ピン名、ネット名、スワップグループ番号および差動種別が記載される。ここで、部品端子番号は、ピンに付与される一連番号である。
【０１２２】
ＦＰＧＡ設計ＣＡＤインタフェース部２４０は、ＦＰＧＡ設計ＣＡＤ装置１０とのインタフェースであり、具体的には、ＦＰＧＡ設計ＣＡＤ装置１０からＦＰＧＡピン情報を取り込み、ＦＰＧＡ設計ＣＡＤ装置１０にピンスワップ情報を提供する。
【０１２３】
ＦＰＧＡピン情報管理部２５０は、ＦＰＧＡ設計ＣＡＤインタフェース部２４０が読み込んだＦＰＧＡピン情報を記憶・管理する管理部である。また、このＦＰＧＡピン情報管理部２５０は、ピン間隔やＦＰＧＡピン情報の変更について使用者からＧＵＩによる指定を受け付けてＦＰＧＡ情報を変更する。
【０１２４】
仮ライブラリ生成部２６０は、ＦＰＧＡ部品についてＦＰＧＡピン情報管理部２５０が管理するＦＰＧＡピン情報を用いて仮ライブラリ、すなわち仮の部品形状タイプライブラリを生成する処理部である。
【０１２５】
図２３は、仮ライブラリ生成部２６０が生成する仮ライブラリの一例を示す図である。同図に示すように、この仮ライブラリには、ピン毎にランド形状タイプライブラリ名、座標Ｘ、座標Ｙ、角度、ピン名が記載される。なお、ランド形状タイプライブラリ名については、ＦＰＧＡピン情報管理部２５０が使用者による指定を受け付けて記憶した情報が用いられる。
【０１２６】
また、この仮ライブラリには、部品のサイズを示す領域が記載される。この領域の情報は、実装設計時に部品と部品の距離算出に使用される。なお、部品のサイズはピン間隔から仮ライブラリ作成部２６０によって計算される。
【０１２７】
ライブラリ生成部２６０がＦＰＧＡピン情報に基づいて仮ライブラリを生成することによって、実装設計ＣＡＤでのピン割付の検討を可能とすることができる。
【０１２８】
ピンスワップ処理部２７０は、実装設計ＣＡＤ装置２０からピンスワップ情報を取り込んでＦＰＧＡピン情報管理部２５０にＦＰＧＡピン情報の変更を指示する処理部である。ＦＰＧＡ情報管理部２５０は、ＦＰＧＡピン情報を変更するとともに、ＦＰＧＡ設計ＣＡＤインタフェース部２４０にピンスワップ情報のＦＰＧＡ設計ＣＡＤ装置１０への通知を指示する。また、このピンスワップ処理部２７０は、ピンスワップ情報に基づいてネットリスト管理部２２０にネットリストの変更を指示する。
【０１２９】
次に、仮ライブラリ作成装置２００による実装設計ＣＡＤ用情報出力処理の処理手順について説明する。図２４は、仮ライブラリ作成装置２００による実装設計ＣＡＤ用情報出力処理の処理手順を示すフローチャートである。
【０１３０】
同図に示すように、仮ライブラリ作成装置２００は、ＦＰＧＡ設計ＣＡＤ装置１０が作成したピン割付情報をＦＰＧＡ設計ＣＡＤインタフェース部２４０が読み込んでＦＰＧＡピン情報管理部２５０に渡し、ＦＰＧＡピン情報管理部２５０がＦＰＧＡピン情報を作成する（ステップＳ７０１）。
【０１３１】
また、ネットリスト取込部２１０がネットリストを読み込み（ステップＳ７０２）、ネットリスト管理部２２０に渡す。そして、ネットリスト管理部２２０は、使用者からネットリストの変更指定などを受け付けて、管理するネットリストを変更し、ＦＰＧＡピン情報管理部２５０は、使用者からピン間隔等の指定を受け付けて（ステップＳ７０３）、管理するＦＰＧＡピン情報を変更する。
【０１３２】
そして、仮ライブラリ生成部２６０がＦＰＧＡピン情報からピン座標を求めて仮の部品形状タイプライブラリを生成し（ステップＳ７０４）、ネットリスト変換部２３０がネットリストを変換する（ステップＳ７０５）。そして、ネットリスト変換部２３０が変換したネットリストをファイルに出力し、仮ライブラリ生成部２６０が生成した仮ライブラリをファイルに出力する（ステップＳ７０６）。
【０１３３】
このように、仮ライブラリ作成装置２００が仮ライブラリを作成することによって、実装設計ＣＡＤ装置２０を用いたピン割付の検討を可能とすることができる。また、ＦＰＧＡピン情報管理部２５０が、使用者からピン間隔等の指定を受け付けて、管理するＦＰＧＡピン情報を変更するので、使用者は様々なピン間隔のピン割付を検討することができる。
【０１３４】
次に、仮ライブラリ作成装置２００による実装検討結果反映処理の処理手順について説明する。図２５は、仮ライブラリ作成装置２００による実装検討結果反映処理の処理手順を示すフローチャートである。
【０１３５】
同図に示すように、仮ライブラリ作成装置２００は、実装設計ＣＡＤでのピンスワップ情報をピンスワップ処理部２７０が取り込み（ステップＳ８０１）、ネットリストのピンスワップされたピンのネットを入れ替える（ステップＳ８０２）。
【０１３６】
そして、ピンスワップ処理部２７０がＦＰＧＡピン情報の論理ピン名および論理属性を入れ替え（ステップＳ８０３）、入れ替えたピンの情報をＦＰＧＡ設計ＣＡＤインタフェース部２４０がファイルに出力する（ステップＳ８０４）。
【０１３７】
このように、ピンスワップ処理部２７０が実装設計ＣＡＤでのピンスワップ情報を取り込んでネットリストおよびＦＰＧＡピン情報にピンスワップを反映し、ピンスワップの情報をＦＰＧＡ設計ＣＡＤインタフェース部２４０がファイルに出力することによって、実装設計でのピンスワップをＦＰＧＡ設計情報に反映させることができる。
【０１３８】
上述してきたように、本実施例２では、ＦＰＧＡ設計ＣＡＤ装置１０が作成したピン割付情報をＦＰＧＡ設計ＣＡＤインタフェース部２４０が読み込み、ＦＰＧＡピン情報管理部２５０がＦＰＧＡ設計ＣＡＤインタフェース部２４０によって読み込まれたピン割付情報をＦＰＧＡピン情報として管理し、仮ライブラリ生成部２６０がＦＰＧＡピン情報管理部２５０によって管理されるＦＰＧＡピン情報を用いて仮の部品形状タイプライブラリを生成して実装設計ＣＡＤ装置２０が読み込み可能な形式でファイルに出力することとしたので、実装設計ＣＡＤ装置２０を用いた早期のピン割付の検討を可能とし、プリント基板の設計期間を短縮することができる。
【０１３９】
なお、本実施例１および２では、それぞれ回路設計ＣＡＤ装置および仮ライブラリ作成装置について説明したが、回路設計ＣＡＤ装置および仮ライブラリ作成装置がそれぞれ有する構成をソフトウェアによって実現することで、同様の機能を有する回路設計ＣＡＤプログラムおよび仮ライブラリ作成プログラムを得ることができる。そこで、ここでは、回路設計ＣＡＤプログラムを実行するコンピュータについて説明する。なお、仮ライブラリ作成プログラムについても同様のコンピュータによって実行することができる。
【０１４０】
図２６は、本実施例１に係る回路設計ＣＡＤプログラムを実行するコンピュータの構成を示す機能ブロック図である。同図に示すように、このコンピュータ３００は、ＲＡＭ３１０と、ＣＰＵ３２０と、ＨＤＤ３３０と、ＬＡＮインタフェース３４０と、入出力インタフェース３５０と、ＤＶＤドライブ３６０とを有する。
【０１４１】
ＲＡＭ３１０は、プログラムやプログラムの実行途中結果などを記憶するメモリであり、ＣＰＵ３２０は、ＲＡＭ３１０からプログラムを読み出して実行する中央処理装置である。ＨＤＤ３３０は、プログラムやデータを格納するディスク装置であり、ＬＡＮインタフェース３４０は、コンピュータ３００をＬＡＮ経由で他のコンピュータに接続するためのインタフェースである。入出力インタフェース３５０は、マウスやキーボードなどの入力装置および表示装置を接続するためのインタフェースであり、ＤＶＤドライブ３６０は、ＤＶＤの読み書きを行う装置である。
【０１４２】
そして、このコンピュータ３００において実行される回路設計ＣＡＤプログラム３１１は、ＤＶＤに記憶され、ＤＶＤドライブ３６０によってＤＶＤから読み出されてコンピュータ３００にインストールされる。あるいは、この回路設計ＣＡＤプログラム３１１は、ＬＡＮインタフェース３４０を介して接続された他のコンピュータシステムのデータベースなどに記憶され、これらのデータベースから読み出されてコンピュータ３００にインストールされる。そして、インストールされた回路設計ＣＡＤプログラム３１１は、ＨＤＤ３３０に記憶され、ＲＡＭ３１０に読み出されてＣＰＵ３２０によって実行される。
【０１４３】
また、本実施例では、ＦＰＧＡを部品として使用する場合について説明したが、本発明はこれに限定されるものではなく、一般的にＰＬＤを部品として使用する場合に同様に適用することができる。さらに、本発明は、ＰＬＤ以外にも例えばＡＳＩＣ（Application  Specific  Integrated  Circuit）の設計が回路設計および実装設計と並行して進められる場合などにも適用することができ、集積回路を部品として使用する場合に広く適用することができる。
【０１４４】
（付記１）集積回路について集積回路設計ＣＡＤにより作成されたピン割付情報を入力するピン割付情報入力手段と、
前記ピン割付情報入力手段により入力されたピン割付情報を用いて、実装設計ＣＡＤ装置が必要とする部品形状タイプライブラリを代替する仮の部品形状タイプライブラリを仮ライブラリとして集積回路を対象に作成する仮ライブラリ作成手段と、
を備えたことを特徴とする協調設計支援装置。
【０１４５】
（付記２）前記仮ライブラリ作成手段により作成される仮ライブラリは、集積回路の各ピンについてランド形状タイプライブラリ名、Ｘ座標、Ｙ座標、角度およびピン名を含むことを特徴とする付記１に記載の協調設計支援装置。
【０１４６】
（付記３）前記仮ライブラリ作成手段により作成される仮ライブラリは、集積回路のサイズをさらに含むことを特徴とする付記２に記載の協調設計支援装置。
【０１４７】
（付記４）実装設計で集積回路に対して行われたピンスワップに関する情報であるピンスワップ情報を入力するピンスワップ情報入力手段と、
前記ピンスワップ情報入力手段により入力されたピンスワップ情報を用いて、集積回路設計への前記ピンスワップの反映に使用される情報を出力するスワップ反映情報出力手段と、
をさらに備えたことを特徴とする付記１、２または３に記載の協調設計支援装置。
【０１４８】
（付記５）所定の形式のネットリストを入力し、実装設計ＣＡＤ装置が必要とする形式のネットリストに変換して出力するネットリスト変換手段をさらに備えたことを特徴とする付記１〜４のいずれか一つに記載の協調設計支援装置。
【０１４９】
（付記６）前記ネットリスト変換手段が入力する所定の形式のネットリストには、ネットごとの情報が定義され、前記ネットリスト変換手段が出力するネットリストには、ピンごとの情報が定義されることを特徴とする付記５に記載の協調設計支援装置。
【０１５０】
（付記７）前記仮ライブラリ作成手段が仮ライブラリの作成に用いるピン間隔の情報を使用者から受け付けるピン間隔情報受付手段をさらに備えたことを特徴とする付記１〜６のいずれか一つに記載の協調設計支援装置。
【０１５１】
（付記８）集積回路について集積回路設計ＣＡＤにより作成されたピン割付情報を入力するピン割付情報入力ステップと、
前記ピン割付情報入力ステップにより入力されたピン割付情報を用いて、実装設計ＣＡＤ装置が必要とする部品形状タイプライブラリを代替する仮の部品形状タイプライブラリを仮ライブラリとして集積回路を対象に作成する仮ライブラリ作成ステップと、
を含んだことを特徴とする協調設計支援方法。
【０１５２】
（付記９）前記仮ライブラリ作成ステップにより作成される仮ライブラリは、集積回路の各ピンについてランド形状タイプライブラリ名、Ｘ座標、Ｙ座標、角度およびピン名を含むことを特徴とする付記８に記載の協調設計支援方法。
【０１５３】
（付記１０）前記仮ライブラリ作成ステップにより作成される仮ライブラリは、集積回路のサイズをさらに含むことを特徴とする付記９に記載の協調設計支援方法。
【０１５４】
（付記１１）実装設計で集積回路に対して行われたピンスワップに関する情報であるピンスワップ情報を入力するピンスワップ情報入力ステップと、
前記ピンスワップ情報入力ステップにより入力されたピンスワップ情報を用いて、集積回路設計への前記ピンスワップの反映に使用される情報を出力するスワップ反映情報出力ステップと、
をさらに含んだことを特徴とする付記８、９または１０に記載の協調設計支援方法。
【０１５５】
（付記１２）所定の形式のネットリストを入力し、実装設計ＣＡＤ装置が必要とする形式のネットリストに変換して出力するネットリスト変換ステップをさらに含んだことを特徴とする付記８〜１１のいずれか一つに記載の協調設計支援方法。
【０１５６】
（付記１３）前記ネットリスト変換ステップが入力する所定の形式のネットリストには、ネットごとの情報が定義され、前記ネットリスト変換ステップが出力するネットリストには、ピンごとの情報が定義されることを特徴とする付記１２に記載の協調設計支援方法。
【０１５７】
（付記１４）集積回路について集積回路設計ＣＡＤにより作成されたピン割付情報を入力するピン割付情報入力手順と、
前記ピン割付情報入力手順により入力されたピン割付情報を用いて、実装設計ＣＡＤ装置が必要とする部品形状タイプライブラリを代替する仮の部品形状タイプライブラリを仮ライブラリとして集積回路を対象に作成する仮ライブラリ作成手順と、
をコンピュータに実行させることを特徴とする協調設計支援プログラム。
【０１５８】
（付記１５）前記仮ライブラリ作成手順により作成される仮ライブラリは、集積回路の各ピンについてランド形状タイプライブラリ名、Ｘ座標、Ｙ座標、角度およびピン名を含むことを特徴とする付記１４に記載の協調設計支援プログラム。
【０１５９】
（付記１６）前記仮ライブラリ作成手順により作成される仮ライブラリは、集積回路のサイズをさらに含むことを特徴とする付記１５に記載の協調設計支援プログラム。
【０１６０】
（付記１７）実装設計で集積回路に対して行われたピンスワップに関する情報であるピンスワップ情報を入力するピンスワップ情報入力手順と、
前記ピンスワップ情報入力手順により入力されたピンスワップ情報を用いて、集積回路設計への前記ピンスワップの反映に使用される情報を出力するスワップ反映情報出力手順と、
をさらにコンピュータに実行させることを特徴とする付記１４、１５または１６に記載の協調設計支援プログラム。
【０１６１】
（付記１８）所定の形式のネットリストを入力し、実装設計ＣＡＤ装置が必要とする形式のネットリストに変換して出力するネットリスト変換手順をさらにコンピュータに実行させることを特徴とする付記１４〜１７のいずれか一つに記載の協調設計支援プログラム。
【０１６２】
（付記１９）前記ネットリスト変換手順が入力する所定の形式のネットリストには、ネットごとの情報が定義され、前記ネットリスト変換手順が出力するネットリストには、ピンごとの情報が定義されることを特徴とする付記１８に記載の協調設計支援プログラム。
【０１６３】
（付記２０）プリント基板の実装設計と集積回路設計との協調設計を支援する協調設計支援装置を用いて設計が行われるプリント基板の製造方法であって、
前記協調設計支援装置が、
集積回路について集積回路設計ＣＡＤにより作成されたピン割付情報を入力するピン割付情報入力ステップと、
前記ピン割付情報入力ステップにより入力されたピン割付情報を用いて、実装設計ＣＡＤ装置が必要とする部品形状タイプライブラリを代替する仮の部品形状タイプライブラリを仮ライブラリとして集積回路を対象に作成する仮ライブラリ作成ステップと、
を含んだことを特徴とするプリント基板の製造方法。
【産業上の利用可能性】
【０１６４】
以上のように、本発明に係る協調設計支援装置、協調設計支援方法、協調設計支援プログラムおよびプリント基板の製造方法は、ＰＬＤ部品などの集積回路を含むプリント基板の設計に有用であり、特に、ＰＬＤ設計者と実装設計者との間で早期にピン割付の検討する必要がある場合に適している。
【図面の簡単な説明】
【０１６５】
【図１】本実施例１に係るＦＰＧＡ協調設計の概念を説明するための説明図である。
【図２】本実施例１に係るＦＰＧＡ協調設計システムの構成を示す機能ブロック図である。
【図３】回路設計を説明するための説明図である。
【図４】ＦＰＧＡのシンボルライブラリを説明するための説明図である。
【図５】ＦＰＧＡ情報記憶部が記憶するＦＰＧＡ情報の一例を示す図である。
【図６】シンボルライブラリ記憶部が記憶するシンボルライブラリの一例を示す図である。
【図７】ピンスワップの一例を示す図である。
【図８】ピンスワップの回路図への反映例を示す図である。
【図９】制約条件記憶部が記憶する制約条件の一例を示す図である。
【図１０】変更履歴記憶部が記憶する変更履歴の一例を示す図である。
【図１１】履歴出力部がＦＰＧＡ設計ＣＡＤ装置に対して出力する通知情報の一例を示す図である。
【図１２】通知情報の出力フォーマットを示す図である。
【図１３】回路設計ＣＡＤ装置によるシンボルライブラリ作成およびシンボル配置処理の処理手順を示すフローチャートである。
【図１４】ＤＲＣ部による入出力属性チェック処理の処理手順を示すフローチャートである。
【図１５】ＤＲＣ部による差動信号チェック処理の処理手順を示すフローチャートである。
【図１６】ＤＲＣ部による電源電圧値チェック処理の処理手順を示すフローチャートである。
【図１７】ピンスワップ処理部によるピンスワップ処理の処理手順を示すフローチャートである。
【図１８】履歴出力部による変更履歴出力処理の処理手順を示すフローチャートである。
【図１９】本実施例２に係るＦＰＧＡ協調設計の概念を説明するための説明図である。
【図２０】本実施例２に係るＦＰＧＡ協調設計システムの構成を示す機能ブロック図である。
【図２１】ネットリスト取込部により読み込まれるネットリストの一例を示す図である。
【図２２】ネットリスト変換部が出力するネットリストの一例を示す図である。
【図２３】仮ライブラリ生成部が生成する仮ライブラリの一例を示す図である。
【図２４】仮ライブラリ作成装置による実装設計ＣＡＤ用情報出力処理の処理手順を示すフローチャートである。
【図２５】仮ライブラリ作成装置による実装検討結果反映処理の処理手順を示すフローチャートである。
【図２６】本実施例１に係る回路設計ＣＡＤプログラムを実行するコンピュータの構成を示す機能ブロック図である。
【符号の説明】
【０１６６】
１０    ＦＰＧＡ設計ＣＡＤ装置
２０    実装設計ＣＡＤ装置
１００    回路設計ＣＡＤ装置
１１０    ＦＰＧＡ情報管理部
１１５    ＦＰＧＡ情報記憶部
１２０    ライブラリ作成部
１２１    ポーション分割部
１２２    シンボル作成部
１２５    シンボルライブラリ記憶部
１３０    回路図反映部
１３５    回路図記憶部
１４０    ＤＲＣ部
１５０    ピンスワップ処理部
１５５    制約条件記憶部
１６０    履歴出力部
１６５    変更履歴記憶部
２００    仮ライブラリ作成装置
２１０    ネットリスト取込部
２２０    ネットリスト管理部
２３０    ネットリスト変換部
２４０    ＦＰＧＡ設計ＣＡＤインタフェース部
２５０    ＦＰＧＡピン情報管理部
２６０    仮ライブラリ生成部
２７０    ピンスワップ処理部
３００    コンピュータ
３１０    ＲＡＭ
３１１    回路設計ＣＡＤプログラム
３２０    ＣＰＵ
３３０    ＨＤＤ
３４０    ＬＡＮインタフェース
３５０    入出力インタフェース
３６０    ＤＶＤドライブ
【図１】
2008165751.tif 000003
【図２】
2008165751.tif 000004
【図３】
2008165751.tif 000005
【図４】
2008165751.tif 000006
【図５】
2008165751.tif 000007
【図６】
2008165751.tif 000008
【図７】
2008165751.tif 000009
【図８】
2008165751.tif 000010
【図９】
2008165751.tif 000011
【図１０】
2008165751.tif 000012
【図１１】
2008165751.tif 000013
【図１２】
2008165751.tif 000014
【図１３】
2008165751.tif 000015
【図１４】
2008165751.tif 000016
【図１５】
2008165751.tif 000017
【図１６】
2008165751.tif 000018
【図１７】
2008165751.tif 000019
【図１８】
2008165751.tif 000020
【図１９】
2008165751.tif 000021
【図２０】
2008165751.tif 000022
【図２１】
2008165751.tif 000023
【図２２】
2008165751.tif 000024
【図２３】
2008165751.tif 000025
【図２４】
2008165751.tif 000026
【図２５】
2008165751.tif 000027
【図２６】
2008165751.tif 000028