(57)【要約】【課題】基板論理検証装置において、論理シミュレ−ションの効率化、及びFPGAと基板の品質向上、を図る。【解決手段】プログラマブルデバイス（以下、便宜上「FPGA」と略記する）を搭載する基板の論理シミュレ−ションを行って当該基板の論理検証を行う基板論理検証装置１であって、FPGA単体論理シミュレ−ション部２による前記FPGA単体の論理シミュレ−ションで使用の論理テストデ-タを使用して、前記基板の論理シミュレ−ションを行うための基板論理テストデ−タを基板テストデ−タ生成部４により生成すると共に、テストデ−タ正当性検証部５により前記FPGAの論理テストデ−タの正当性を検証する。【選択図】図１
2005241542.tif 000002
【特許請求の範囲】
【請求項１】
プログラマブルデバイスを搭載する基板の論理シミュレ−ションを行って当該基板の論理検証を行う基板論理検証装置であって、プログラマブルデバイス単体論理シミュレ−ション部による前記プログラマブルデバイス単体の論理シミュレ−ションで使用の論理テストデ-タを使用して、前記基板の論理シミュレ−ションを行うための基板論理テストデ−タを基板テストデ−タ生成部により生成すると共に、テストデ−タ正当性検証部により前記プログラマブルデバイスの論理テストデ−タの正当性を検証する基板論理検証装置。
【請求項２】
請求項１に記載の基板論理検証装置において、前記プログラマブルデバイスの単体論理シミュレ−ションにおけるプログラマブルデバイスの入力デ−タと前記プログラマブルデバイスの出力デ-タとを使用して前記基板の論理テストデ−タを前記基板テストデ−タ生成部により生成することを特徴とする基板論理検証装置。
【請求項３】
請求項１に記載の基板論理検証装置において、前記プログラマブルデバイスの入力デ-タと前記プログラマブルデバイスの出力デ−タが、前記基板および前記基板に搭載の他のプログラマブルデバイスの少なくとも一と論理的矛盾が無いことを前記テストデ−タ正当性検証部により検証することを特徴とする基板論理検証装置。
【請求項４】
請求項１に記載の基板論理検証装置において、前記プログラマブルデバイスの入力デ-タが、前記基板の入力部から印加可能な論理組み合わせに対して、漏れが無いことを前記テストデ−タ正当性検証部により検証することを特徴とする基板論理検証装置。
【請求項５】
請求項４に記載の基板論理検証装置において、前記漏れがあった場合は、制約事項を与えることにより、無効な論理組み合わせを排除し、有効な論理組み合わせの論理テストデ−タを自動生成することを特徴とする基板論理検証装置。
【請求項６】
請求項１に記載の基板論理検証装置において、前記基板に搭載される複数のプログラマブルデバイスのそれぞれの論理テストデ−タ間で矛盾が無いことを前記テストデ−タ正当性検証部により検証することを特徴とする基板論理検証装置。
【請求項７】
請求項１に記載の基板論理検証装置において、前記基板に搭載される複数のプログラマブルデバイスのそれぞれの論理テストデ−タ間で漏れが無いことを前記テストデ−タ正当性検証部により検証することを特徴とする基板論理検証装置。
【請求項８】
請求項７に記載の基板論理検証装置において、前記漏れがあった場合は、前記プログラマブルデバイスの論理テストデ−タを自動生成することを特徴とする基板論理検証装置。
【請求項９】
請求項１に記載の基板論理検証装置において、前記基板の回路情報から、論理シミュレ−ション対象回路を自動抽出することを特徴とする基板論理検証装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、利用者側で機能を設定できるFPGA（Field  Programmable  Gate  Array）等の所謂プログラマブルデバイス（以下、便宜上「FPGA」と略記する）を搭載する基板の論理シミュレ−ションを実施する基板論理検証装置に関するものである。
【背景技術】
【０００２】
近年、例えば制御盤等の分野においては、利用者側で機能を設定できる前記FPGAをプリント基板等の基板に搭載する傾向があり、その場合、製品設計時点で基板の論理シミュレ−ションを実施して基板の論理検証が行われる。
【０００３】
また、一般的なＩＣやプリント基板の基板論理検証装置においては、例えば、特開平９−２６５４８９号公報（特許文献１）に見られるように、シミュレ-ション時間の短縮を目的として、シミュレ−ション対象回路を人手で複数のグル−プに分け、それぞれのI/Fと時間デ-タを持つ仮想モデルを作成することで、全体でのシミュレ-ションを短時間で行うことを可能にするものは案出されている。
【０００４】
【特許文献１】特開平９−２６５４８９号公報（図１及びその説明）
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来、例えば制御盤等の分野においては、利用者側で機能を設定できる前記FPGAを搭載したプリント基板等の基板の論理検証においては、前記FPGAの単体論理シミュレ−ションは実施している場合においても、基板自体の論理シミュレ−ションを実施するには、別途基板論理シミュレ−ション用テストデ−タを作成することが必要である。また、基板レベルでの論理シミュレ−ションを実施する場合においては、FPGA単体論理シミュレ−ションのテストデ−タの正当性は評価されないため、当該FPGA単体論理シミュレ−ション用テストデ−タの品質はその設計者に委ねられている。また、このように、前記FPGAの単体論理シミュレ−ションと、前記基板自体の論理シミュレ−ションとを実施しても、前記基板自体に前記FPGAを搭載し、前記基板自体と前記FPGAとをコネクタ等のI/Fで接続した所謂基板ユニットのレベルでは、前記基板自体と前記FPGAとの整合がとれない場合が生じることが発明者等の実験で確認された。
【０００６】
この発明は、前述のような実情に鑑みてなされたもので、プログラマブルデバイスを搭載する基板の論理シミュレ−ションを行って当該基板の論理検証を行う基板論理検証装置において、論理シミュレ−ションの効率化、及びFPGAと基板の品質向上、を図ることを目的とするものである。
【課題を解決するための手段】
【０００７】
この発明に係る基板論理検証装置は、前記FPGAを搭載する基板の論理シミュレ−ションを行って当該基板の論理検証を行う基板論理検証装置であって、FPGA単体論理シミュレ−ション部による前記FPGA単体の論理シミュレ−ションで使用の論理テストデ-タを使用して、前記基板の論理シミュレ−ションを行うための基板論理テストデ−タを基板テストデ−タ生成部により生成すると共に、テストデ−タ正当性検証部により前記FPGAの論理テストデ−タの正当性を検証するものである。
【発明の効果】
【０００８】
この発明は、前記FPGAを搭載する基板の論理シミュレ−ションを行って当該基板の論理検証を行う基板論理検証装置であって、FPGA単体論理シミュレ−ション部による前記FPGA単体の論理シミュレ−ションで使用の論理テストデ-タを使用して、前記基板の論理シミュレ−ションを行うための基板論理テストデ−タを基板テストデ−タ生成部により生成すると共に、テストデ−タ正当性検証部により前記FPGAの論理テストデ−タの正当性を検証するので、プログラマブルデバイスを搭載する基板の論理シミュレ−ションを行って当該基板の論理検証を行う基板論理検証装置において、論理シミュレ−ションの効率化、及びFPGAと基板の品質向上、を図ることができる効果がある。
【発明を実施するための最良の形態】
【０００９】
実施の形態１．
以下この発明の実施の形態１を図１及び図２により説明する。図１は基板論理検証装置の基本概念を示す構成図、図２はFPGA単体のシミュレ−ションフロ−を示す図である。
【００１０】
FPGAを搭載する基板の論理シミュレ−ションを行って当該基板の論理検証を行う場合、従来では、前述のように、一般的に基板に搭載するFPGAの単体論理検証と、基板自体の論理検証は、各々独立して個別に実施してのが実情であり、また、FPGAの単体論理シミュレ−ション用テストデ−タの正当性は検証されず、その質はその設計者に委ねられているのであるが、この発明の実施の形態１では、図１に示すように、前記FPGA単体論理シミュレ−ションのテストデ−タを、基板の論理検証に利用することで、基板自体の論理シミュレ−ションを効率化し、更に、前記FPGA単体論理シミュレ−ションのテストデ−タの正当性を検証することで、品質向上を図ることができる構成としてある。
【００１１】
図１において、基板論理検証装置１は、FPGAの単体論理シミュレ−ション部２と、基板論理シミュレ−ション部３と、基板テストデ−タ生成部４と、テストデ−タ正当性検証部５と、基板論理シミュレ−ション対象回路抽出部６とを備えている。
【００１２】
前記FPGAの単体論理シミュレ−ション部２は、前記FPGAの単体論理検証を行うものであり、当該FPGAの単体論理検証を行うために実施するシミュレ−ション（以下「FPGA単体論理シミュレ−ション」と記す）のフロ−は、図２に示してあり、後述する。
【００１３】
前記基板テストデ−タ生成部４は、前記基板論理シミュレ−ション部３による基板自体の論理検証を行うために実施するシミュレ−ション（以下「基板論理シミュレ−ション」と記す）で使用するテストデ−タ（以下「基板論理テストデ−タ」と記す）を、前記FPGAの単体論理シミュレ−ション部２によるシミュレ−ションの実施による前記FPGA単体検証の出力デ−タ（以下「FPGA出力デ−タ」と記す）から、生成するものであり、その具体的事例は、この発明の実施の形態２として図３〜図７により後述する。
【００１４】
前記テストデ−タ正当性検証部５は、前記FPGAの単体論理シミュレ−ション部２による前記FPGA単体論理シミュレ−ションで使用のテストデ−タ（以下「FPGA単体論理テストデ−タ」と記す）の正当性や漏れ等の不備が無いかを検証するものであり、その具体的事例は、この発明の実施の形態３として図８及び９により後述する。
【００１５】
次に、動作を説明する。
【００１６】
先ず、前記FPGAの単体論理シミュレ−ション部２により、図２に示す前記FPGA単体論理シミュレ−ションのフロ−に沿って、前記FPGA単体論理シミュレ−ションが行われる。通常、設計者は、FPGA上に当該FPGAに必要な機能をHDL（ハ−ドウェア記述言語）または回路図を用いて設計（ステップＳ１０１）すると共に、FPGAの動作を想定して前記FPGA単体論理シミュレ−ションの入力デ−タ（論理テストデ-タ）を作成（ステップＳ１０２）し、前記ステップＳ１０１で設計したFPGA設計デ−タと、前記ステップＳ１０２で作成した入力デ−タ（前記FPGAの単体論理テストデ−タ）とにより、前記FPGA単体論理シミュレ−ションを行う（ステップＳ１０３）。
【００１７】
また、前記FPGA単体の論理検証に対する期待値であるデ−タ（以下「FPGA期待値デ−タ」と記す）を別途作成する（ステップＳ１０４）。
【００１８】
しかる後、前記ステップＳ１０３での前記FPGA単体論理シミュレ−ションの実施による前記FPGA単体の論理検証において生成された前記FPGA出力デ−タと、前記ステップＳ１０４で別途作成されたFPGA期待値デ−タとの比較を行う（ステップＳ１０５）。
【００１９】
前記ステップＳ１０５において、前記ステップＳ１０３での前記FPGA単体論理シミュレ−ションの実施による前記FPGA単体の論理検証において生成された前記FPGA出力デ−タと、前記ステップＳ１０４で別途作成されたFPGA期待値デ−タとが一致すれば終了し、一致しなければ、前記ステップＳ１０１に戻り、FPGA上に設計した機能を修正し、前述のステップＳ１０３及びステップＳ１０５を再実行する。
【００２０】
図１の前記FPGAの単体論理シミュレ−ション部２による前述のFPGA単体論理シミュレ−ションで使用した前記FPGAの入力テストデ−タ（即ち前記ステップＳ１０２で作成した入力テストデ−タ）と前記FPGA単体論理シミュレ−ションの結果のデ−タ（即ち前記ステップＳ１０３で実施した前記FPGA単体論理シミュレ−ションの前記FPGA出力デ−タ）は、前記基板テストデ−タ生成部４（図１参照）での基板論理検証用の前記基板論理テストデ−タの生成に使われる。前記基板テストデ−タ生成部４（図１参照）での基板論理検証用の前記基板論理テストデ−タの生成についての具体的事例は、この発明の実施の形態２として図３〜図７により後述する。
【００２１】
また、それらの前記FPGA単体論理テストデ−タと前記基板論理テストデ−タとは、前記テストデ−タ正当性検証部５において、相互の矛盾や漏れ等の不備が無いか検証される。前記テストデ−タ正当性検証部５の具体的事例は、この発明の実施の形態２として図３〜図７により後述する。
【００２２】
一方、実際の基板の設計デ−タには、論理シミュレ−ションの対象となるデジタル回路部品以外に、論理シミュレ−ションの対象外となるアナログ部品等が含まれているため、前記基板論理シミュレ−ションを行う前には、図１における前記基板論理シミュレ−ション対象回路抽出部６によって基板論理シミュレ−ションの対象となる回路（以下「基板論理シミュレ−ション対象回路」と記す）を抽出する。前記基板論理シミュレ−ション対象回路抽出部６の具体的事例は、この発明の実施の形態８として図１６及び図１７により後述する。
【００２３】
図１における前記基板論理シミュレ−ション部３では、前記基板論理シミュレ−ション対象回路抽出部６で抽出された前記基板論理シミュレ−ション対象回路と、前記基板テストデ−タ生成部４で生成された前記基板論理テストデ−タとを用いて、前記基板論理シミュレ−ションが行われ、前記基板テストデ−タ生成部４で生成された前記基板論理テストデ−タに漏れがあった場合は、再度、前記基板テストデ−タ生成部４により前記基板論理テストデ−タが自動生成され、併せて前記基板論理シミュレ−ションが行われる。
【００２４】
このように構成すれば、前記基板論理シミュレ−ションの実施後に前記基板テストデ−タ生成部４で生成された前記基板論理テストデ−タ内の基板期待値デ−タを使用することで、基板論理の正当性を確認することが可能となる。
【００２５】
実施の形態２．
以下この発明の実施の形態２を図３〜図７により説明する。図３は前記基板テストデ−タ生成部４の事例を示す図、図４は前記基板論理テストデ−タの生成方法の事例を示す図、図５は前記基板期待値デ−タの生成方法の事例を示す図、図６は前記基板論理テストデ−タを生成するためのバックトレ−スの事例をフロ−で示す図、図７は前記基板期待値デ−タを生成するためのフォワ−ドトレ−スの事例をフロ−で示す図である。なお、この発明の実施の形態２は、請求項２に対応する一実施の形態例で、前記FPGAの単体論理シミュレ−ション結果であるFPGAの入力デ−タ（FPGA単体論理テストデ−タ）と前記FPGAの出力（前記FPGAの出力期待値を含む）デ-タとから、前記基板自体の論理テストデ−タを前記基板テストデ−タ生成部４により生成する一事例を示すものである。
【００２６】
図３において、前記FPGA単体論理シミュレ−ションで使用した前記FPGA単体論理テストデ−タ１１を基に、基板上の論理をバックトレ−スすることによって、前記基板論理テストデ−タ１３を生成する。前記バックトレ−スの終点となるのは、前記基板論理検証対象回路の入力I/F（コネクタ等）となる部分である。前記バックトレ−スは、図４に示すように、前記基板上の論理を構成する部品に持たせた真理値表形式のバックトレ−ス用ライブラリと、前記FPGA単体論理テストデ−タとを、バックトレ−スプログラムに入力し、バックトレ−スプログラムがバックトレ−スすることにより実現する。
【００２７】
また、前記FPGA単体検証の出力デ−タ、即ち前記FPGA出力デ−タ１２を基に、前記基板上の論理をフォワ−ドトレ−スすることによって、前記基板期待値デ−タ１４を生成する。前記フォワ−ドトレ−スの終点となるのは、前記基板論理検証対象回路の出力I/F（コネクタ等）となる部分である。前記フォワ−ドトレ−スは、図５に示すように、前記基板上の論理を構成する部品に持たせた真理値表形式のフォワ−ドトレ−ス用ライブラリと、前記FPGA単体論理テストデ−タとを、フォワ−ドトレ−スプログラムに入力し、フォワ−ドトレ−スプログラムがフォワ−ドトレ−スすることにより実現する。
【００２８】
前記バックトレ−スプログラムのバックトレ−ス時の動作は、図６に示すように、先ず、前記FPGA単体論理シミュレ−ション用の入力デ−タ、即ち前記FPGA単体論理テストデ−タ１１、を起点デ−タとして取得し（ステップＳ２０１）、次いで前記基板上の論理をバックトレ−スし（ステップＳ２０２）、前記終点出なければ、得られた部品情報から該当する部品のバックトレ−ス用ライブラリを取得し（ステップＳ２０３）、バックトレ−ス後のテストデ−タを生成する（ステップＳ２０４）。前記ステップＳ２０２においてバックトレ−スした結果が終点の場合にはテストデ−タ生成を終了し、当該終了時のテストデ−タを前記基板論理テストデ−タとする。
【００２９】
前記フォワ−ドトレ−スプログラムのフォワ−ドトレ−ス時の動作は、図７に示すように、先ず、前記FPGA単体論理シミュレ−ションの出力デ−タ、即ち前記FPGA出力デ−タ１２を起点デ−タとして取得し（ステップＳ２０５）、次いで前記基板上の論理をフォワ−ドトレ−スし（ステップＳ２０６）、前記終点出なければ、得られた部品情報から該当する部品のフォワ−ドトレ−ス用ライブラリを取得し（ステップＳ２０７）、フォワ−ドトレ−ス後のテストデ−タを生成する（ステップＳ２０８）。前記ステップＳ２０５においてバックトレ−スした結果が終点の場合にはテストデ−タ生成を終了し、当該終了時のテストデ−タを前記基板期待値デ−タとする。
【００３０】
実施の形態３．
以下この発明の実施の形態３を図８及び図９により説明する。図８は前記テストデ−タ正当性検証部５でのFPGA論理テストデ−タの正当性を検証するフロ−を示す図、図９は前記テストデ−タ正当性検証部５での検証事例を説明する図である。なお、この発明の実施の形態３は、請求項３に対応する一実施の形態例で、前記FPGAの入力デ-タ（FPGA単体論理テストデ−タ）と前記FPGAの出力デ−タ（前記FPGAの出力期待値を含む）が、前記基板自体および前記基板に搭載の他のFPGAの少なくとも一と論理的矛盾が無いことを前記テストデ−タ正当性検証部により検証する一事例を示すものである。
【００３１】
図８において、前記基板テストデ−タ生成部４で生成された論理テストデ−タについて、別の信号からもバックトレ−スされていないか（換言すれば複数箇所からバックトレ−スされていないか）を確認する（ステップＳ３０１）。対象となる信号が複数信号からバックトレ−スされる場合、生成された基板論理テストデ−タの比較を行い（ステップＳ３０２）、不一致であれば、FPGA単体論理シミュレ−ション用入力信号、即ちFPGA単体論理テストデ−タ、に矛盾があるということで終了となる。不一致が無い場合は、当該デ−タを格納し（ステップＳ３０３）、当該デ−タは最終的に漏れが無いか確認する際のベ−スデ−タとなる。前記漏れがあった場合（ステップＳ３０４）の論理テストデ−タ自動生成（ステップＳ３０５）については後述する。このように構成することで、実現性の無い論理組み合わせ、漏れ等を検出することが可能となっている。
【００３２】
例えば、図９において、FPGA入力ピン1N1が１、1N2が１というFPGA入力デ−タ（FPGA単体論理テストデ−タ）があった場合、各入力ピン1N1，1N2からバックトレ−スしていくと、基板（基板論理検証対象回路）上の入力I/F（コネクタ等）であるBIN1，BIN2に辿り着くが、この場合、図９における基板論理から、前記FPGA入力ピン1N1，1N2が同時に１または０になる論理組み合わせが無い（後述の図１１参照）ことが判明する。従って、この場合のFPGA入力デ−タ（FPGA単体論理テストデ−タ）に前記FPGA入力ピン1N1が１、1N2が１という論理組み合わせが存在すれば、その論理組み合わせは矛盾があるということが検証される。即ち、FPGA論理テストデ−タの正当性が検証される。
【００３３】
実施の形態４．
以下この発明の実施の形態４を図１０及び図１１により説明する。図１０は前記テストデ−タ正当性検証部５でのテストデ−タの漏れを検証するフロ−を示す図、図１１は図９における基板論理での前記基板（基板論理検証対象回路）上の入力I/F（コネクタ等）であるBIN1，BIN2の論理組み合わせと、その場合の前記FPGA入力ピン1N1，1N2の入力値を示す図である。なお、この発明の実施の形態４は、請求項４に対応する一実施の形態例で、前記FPGAの入力デ-タ（FPGA単体論理テストデ−タ）が、前記基板自体の入力部である前記基板（基板論理検証対象回路）上の入力I/F（コネクタ等）から印加可能な論理組み合わせ（前記基板論理テストデ−タ）に対して、漏れが無いことを前記テストデ−タ正当性検証部５により検証する一事例を示すものである。
【００３４】
図１０において、前記テストデ−タの漏れを検出する際には、テストデ−タ生成において前述の図８のステップＳ３０３で格納されたデ−タを取得し（ステップＳ４０１）、組み合わせ可能な全論理デ−タを作成し（ステップＳ４０２）、前記ステップＳ４０１で取得したデ−タと組み合わせ可能なデ−タの比較を行い、取得したデ−タが不足している場合には漏れとして検出する（ステップＳ４０３）。前記漏れがあった場合のテストデ−タ自動生成（ステップＳ３０４）については後述する。このように構成することで、論理組み合わせに対する漏れデ−タのみを検出することが可能となっている。
【００３５】
例えば、図１１は図９における基板論理での基板（基板論理検証対象回路）上の入力I/F（コネクタ等）であるBIN1，BIN2の論理組み合わせと、その場合のFPGA入力ピン1N1が１、1N2の入力値を示してあり、図９において、FPGA入力ピン1N1が１、1N2が１というFPGA入力デ−タ（FPGA単体論理テストデ−タ）があった場合、各入力ピン1N1，1N2からバックトレ−スしていくと、基板（基板論理検証対象回路）上の入力I/F（コネクタ等）であるBIN1，BIN2に辿り着くが、この場合、図９における基板論理から、前記FPGA入力ピン1N1，1N2が同時に１または０になる論理組み合わせが無い（後述の図１１参照）ことが判明する。従って、この場合のFPGA入力デ−タ（FPGA単体論理テストデ−タ）に前記FPGA入力ピン1N1が１、1N2が１という論理組み合わせが存在すれば、その論理組み合わせは矛盾があるということが検証される。即ち、FPGA論理テストデ−タの正当性が検証される。
【００３６】
実施の形態５．
以下この発明の実施の形態５を図１２及び図１３により説明する。図１２は前記漏れがあった場合のテストデ−タ自動生成のフロ−を示す図、図１３は図９の事例での論理組み合わせに対する制約を与えた場合の例を示す図である。なお、この発明の実施の形態５は、請求項５に対応する一実施の形態例で、前記漏れがあった場合は、制約事項を与えることにより、無効な論理組み合わせを排除し、有効な論理組み合わせのテストデ−タのみを自動生成する一事例を示すものである。
【００３７】
図１２において、先ず、前記入力（論理テストデ−タ）に漏れが存在する場合の漏れ情報を取得し（ステップＳ５０１）、外部から別途与えられた基板に対する制約条件を取得し（ステップＳ５０２）、それらの情報から無効な論理組み合わせ情報を作成し（ステップＳ５０３）、有効な論理組み合わせのテストデ−タのみを自動生成する（ステップＳ５０４）。このように構成すれば、実際には起こり得ないテストデ−タを排除することが可能であり、無駄なシミュレ−ション行わないで済み、シミュレ−ション時間の増加を抑えることが可能である。
【００３８】
図１３は図９の事例での論理組み合わせに対する制約を与えた場合の例を示す図であり、
前記入力（論理テストデ−タ）に漏れが存在した場合、通常、基板入力I/Fの組み合わせは２のＮ乗（Ｎは基板入力I/F数）存在するため、図１３の（１）〜（３）の論理組み合わせ自動生成され追加されることになる。この発明の実施の形態５では、図１３に示す通り、基板入力I/F制約条件を与え、例えば、「BIN1とBIN2とは同じ入力値にならない」という制約条件を与えた場合、先に生成された（４）の論理組み合わせ以外に、（１）の論理組み合わせのみが生成されることになる。
【００３９】
実施の形態６．
以下この発明の実施の形態６を図１４により説明する。図１４は基板（基板論理検証対象回路）上に複数のFPGA1，FPGA2が直列に接続されている場合の事例を示す図である。なお、この発明の実施の形態６は、請求項６〜８に対応する一実施の形態例で、前記基板に搭載される複数のFPGAのそれぞれのテストデ−タ間で矛盾（有り得ない組み合わせ等）が無いことを前記テストデ−タ正当性検証部により検証する一事例、前記基板に搭載される複数のFPGAのそれぞれのテストデ−タ間で漏れが無いことを前記テストデ−タ正当性検証部により検証する一事例、及び前記漏れがあった場合は、前記FPGAの論理テストデ−タのみを自動生成する一事例を示すものである。
【００４０】
前述のこの発明の実施の形態２〜５は、基板（基板論理検証対象回路）上にFPGAが1つしかない場合について例示したが、この発明の実施の形態６によれば、基板（基板論理検証対象回路）上に複数のFPGAが存在する場合においても、前記FPGA単体論理テストデ−タの正当性検証、前記漏れ検出、不足テストデ−タの自動生成が可能となる。
【００４１】
図１４のFPGA1，FPGA2の関係において、この発明の実施の形態６によれば、FPGA1の出力デ−タとFPGA2の入力デ−タの前述の正当性検証が可能である。このように構成すれば、前記FPGA1の出力デ−タを前記FPGA2の入力デ−タの入力ピンまでフォワ−ドトレ−スした場合と、前記FPGA2の入力デ−タを前記FPGA1の出力ピンまでバックトレ−スした場合との前述の矛盾を検出ことが可能である。
【００４２】
このように構成すれば、前述のこの発明の実施の形態５で例示したテストデ−タ自動生成方法により、FPGA間のテストデ−タを自動生成し、更に前述の図５に例示する基板期待値生成方法により、前述の基板論理シミュレ−ションにおける期待値を自動生成することが可能である。
【００４３】
実施の形態７．
以下この発明の実施の形態７を図１５により説明する。図１５は基板（基板論理検証対象回路）上に複数のFPGA1，FPGA2が並列に接続されている場合の事例を示す図である。なお、この発明の実施の形態７は、請求項６〜８に対応する一実施の形態例で、前記基板に搭載される複数のFPGAのそれぞれのテストデ−タ間で矛盾（有り得ない組み合わせ等）が無いことを前記テストデ−タ正当性検証部により検証する一事例、前記基板に搭載される複数のFPGAのそれぞれのテストデ−タ間で漏れが無いことを前記テストデ−タ正当性検証部により検証する一事例、及び前記漏れがあった場合は、前記FPGAの論理テストデ−タのみを自動生成する一事例を示すものである。
【００４４】
図１５のFPGA1，FPGA2の関係において、この発明の実施の形態７によれば、FPGA1の入力デ−タとFPGA2の入力デ−タの前述の正当性検証が可能である。このように構成すれば、前記FPGA1の入力デ−タを前記基板の入力I/Fまでバックトレ−スした場合と、前記FPGA2の入力デ−タを前記基板の入力I/Fまでバックトレ−スした場合との前述の矛盾を検出ことが可能である。
【００４５】
このように構成すれば、FPGAが並列に並んでいる場合においても、前述のこの発明の実施の形態５で例示したテストデ−タ自動生成方法により、FPGA間のテストデ−タを自動生成し、更に前述の図５に例示する基板期待値生成方法により、前述の基板論理シミュレ−ションにおける期待値を自動生成することが可能である。
【００４６】
実施の形態８．
以下この発明の実施の形態８を図１６及び図１７により説明する。図１６は基板のシミュレ−ション対象回路（論理検証対象回路）を抽出するフロ−を示す図、図１７は基板の回路情報からの論理検証対象回路抽出の事例を示す図である。なお、この発明の実施の形態７は、請求項９に対応する一実施の形態例で、前記基板自体の回路情報から、基板の論理シミュレ−ション対象回路（論理検証対象回路）を自動抽出する一事例を示すものである。
【００４７】
図１６において、先ず、基板論理設計から基板設計デ−タを取得し（ステップＳ８０１）、基板I/F情報（基板上の外部インタ−フェイス情報）を取得し（ステップＳ８０２）、基板論理シミュレ−ションの非対象である部品情報を取得する（ステップＳ８０３）。
【００４８】
前記ステップＳ８０２において取得した前記基板I/F情報から入力ピンを選択し（ステップＳ８０４）、前記フォワ−ドトレ−スを行い（ステップＳ８０５）、基板論理シミュレ−ション非対象部品であれば削除し（ステップＳ８０６）、基板論理シミュレ−ション対象部品であれば入力I/Fを作成する（ステップＳ８０７）。
【００４９】
前記ステップＳ８０７において、入力I/Fの作成が完了したら出力ピンを選択し（ステップＳ８０８）、フォワ−ドトレ−スを行い（ステップＳ８０９）、基板論理シミュレ−ション非対象部品であれば削除し（ステップＳ８１０）、基板論理シミュレ−ション対象部品であれば出力I/Fを作成する（ステップＳ８１１）。
【００５０】
最後に基板論理シミュレ−ション対象として抽出された回路のシミュレ−ション用デ−タを作成する（ステップＳ８１２）。このようにすれば、オリジナルの基板論理設計デ−タから、基板論理シミュレ−ション対象回路の自動抽出が可能となる。
【００５１】
図１７において、８１は基板の回路情報の例を示したものである。この例によると、基板上には、外部I/FであるコネクタCON1〜CON4、FPGA、IC、発振器CLK、スイッチSW、LED、AD変換器A/D、DA変換器D/Aが搭載されていることが示されている。基板論理シミュレ−ションの対象となるのはデジタル部であるので、この回路情報から基板論理シミュレ−ションの対象部を抽出する。
【００５２】
前記ICは、デジタル部品であるので、その外側にあるコネクタCON1が基板上の外部I/Fとなる。同様にコネクタCON2も基板上の外部I/Fとなる。AD変換器A/Dは、デジタル部品への入力I/Fとなるため、AD変換器A/Dの内側（FPGA側）が基板上の外部I/Fとなる。逆にDA変換器D/Aは、デジタル部品からの出力I/Fとなるため、DA変換器D/Aの内側（FPGA側）が基板上の外部I/Fとなる。スイッチSWは外部から操作するためのものであるので、基板上の外部入力I/Fとなる。LEDは外部へ表示する為のものであるので、基板上の外部出力I/Fとなる。
【００５３】
このように構成すれば、前記基板回路情報８１から基板の外部入出力I/Fを定義可能であり、基板論理シミュレ−ション対象回路８２を抽出することが可能となる。
【図面の簡単な説明】
【００５４】
【図１】この発明の実施の形態１を示す図で、基板論理検証装置の基本概念を示す構成図である。
【図２】この発明の実施の形態１を示す図で、FPGA単体のシミュレ−ションフロ−を示す図である。
【図３】この発明の実施の形態２を示す図で、基板テストデ−タ生成部の事例を示す図である。
【図４】この発明の実施の形態２を示す図で、基板論理テストデ−タの生成方法の事例を示す図である。
【図５】この発明の実施の形態２を示す図で、基板期待値デ−タの生成方法の事例を示す図である。
【図６】この発明の実施の形態２を示す図で、基板論理テストデ−タを生成するためのバックトレ−スの事例をフロ−で示す図である。
【図７】この発明の実施の形態２を示す図で、基板期待値デ−タを生成するためのフォワ−ドトレ−スの事例をフロ−で示す図である。
【図８】この発明の実施の形態３を示す図で、テストデ−タ正当性検証部でのFPGA論理テストデ−タの正当性を検証するフロ−を示す図である。
【図９】この発明の実施の形態３を示す図で、テストデ−タ正当性検証部での検証事例を説明する図である。
【図１０】この発明の実施の形態４を示す図で、テストデ−タ正当性検証部でのテストデ−タの漏れを検証するフロ−を示す図である。
【図１１】この発明の実施の形態４を示す図で、図９における基板論理での前記基板（基板論理検証対象回路）上の入力I/F（コネクタ等）であるBIN1，BIN2の論理組み合わせと、その場合の前記FPGA入力ピン1N1，1N2の入力値を示す図である。
【図１２】この発明の実施の形態５を示す図で、漏れがあった場合のテストデ−タ自動生成のフロ−を示す図である。
【図１３】この発明の実施の形態５を示す図で、図９の事例での論理組み合わせに対する制約を与えた場合の例を示す図である。
【図１４】この発明の実施の形態６を示す図で、基板（基板論理検証対象回路）上に複数のFPGA1，FPGA2が直列に接続されている場合の事例を示す図である。
【図１５】この発明の実施の形態７を示す図で、基板（基板論理検証対象回路）上に複数のFPGA1，FPGA2が並列に接続されている場合の事例を示す図である。
【図１６】この発明の実施の形態８を示す図で、基板のシミュレ−ション対象回路（論理検証対象回路）を抽出するフロ−を示す図である。
【図１７】この発明の実施の形態８を示す図で、基板の回路情報からの論理検証対象回路抽出の事例を示す図である。
【符号の説明】
【００５５】
１    基板論理検証装置、
２    FPGA（プログラマブルデバイス）単体論理シミュレ−ション部、
３    基板論理シミュレ−ション部、
４    基板テストデ−タ生成部、
５    テストデ−タ正当性検証部、
６    シミュレ−ション対象回路抽出部、
８１    基板の回路情報、
８２    基板論理シミュレ−ション対象回路。
【図１】
2005241542.tif 000003
【図２】
2005241542.tif 000004
【図３】
2005241542.tif 000005
【図４】
2005241542.tif 000006
【図５】
2005241542.tif 000007
【図６】
2005241542.tif 000008
【図７】
2005241542.tif 000009
【図８】
2005241542.tif 000010
【図９】
2005241542.tif 000011
【図１０】
2005241542.tif 000012
【図１１】
2005241542.tif 000013
【図１２】
2005241542.tif 000014
【図１３】
2005241542.tif 000015
【図１４】
2005241542.tif 000016
【図１５】
2005241542.tif 000017
【図１６】
2005241542.tif 000018
【図１７】
2005241542.tif 000019