(57)【要約】【課題】プログラマブル素子を用いて被検証回路の動作検証を行う場合に、コンパイルを再度行うことなく、また、コンパイル後の回路構成情報を直接的に変更することなく、プログラマブル素子から出力する被検証回路の内部信号を変更可能な回路検証システム、回路検証方法、回路構成情報生成装置、制御装置、回路構成情報生成プログラム及び制御プログラムを提供する。【解決手段】被検証回路の回路構成が記載されたＲＴＬソースファイルと、観測信号名及び出力ビット位置が記された観測信号設定ファイルとを取得し、指定された内部信号を被検証回路の最上位階層の回路ブロックから出力し、ＭＵＸ０〜ＭＵＸ１２７及び制御レジスタ１１０を追加して、複数の観測信号からいくつかを選択して出力する回路構成の検証用ＲＴＬソースファイルを生成する。この回路をＦＰＧＡに構成し、制御レジスタ１１０のレジスタ値を更新して、出力する信号を変更する。【選択図】図５
2008097131.tif 000002
【特許請求の範囲】
【請求項１】
回路動作を検証する被検証回路の回路構成情報を取得する回路構成情報取得手段と、取得した前記被検証回路の回路構成情報を基に、論理回路を構成することが可能なプログラマブル素子に前記被検証回路を構成するための検証用回路の回路構成情報を生成する生成手段とを備え、プログラマブル素子及び該プログラマブル素子に構成された論理回路の内部信号を該プログラマブル素子の外部に出力する出力手段を有する回路検証装置にて、前記被検証回路を前記プログラマブル素子に構成して回路動作の検証を行うための回路構成情報を生成する回路構成情報生成装置において、
前記出力手段は、前記プログラマブル素子に構成された前記被検証回路の一又は複数の内部信号を出力することができるようにしてあり、
前記プログラマブル素子の外部に出力する前記被検証回路の内部信号の識別子、及び前記出力手段による出力位置が対応付けられた対応情報を取得する対応情報取得手段を備え、
前記生成手段は、
前記プログラマブル素子の外部に出力する前記被検証回路の内部信号の信号数が、前記出力手段の出力する信号数より多い場合に、
前記被検証回路の複数の内部信号から前記出力手段が出力する信号数の信号を選択する選択回路と、
該選択回路の選択を規定する規定情報を記憶する規定情報記憶部と
を前記被検証回路と共に含む検証用回路の回路構成情報を生成するようにしてあること
を特徴とする回路構成情報生成装置。
【請求項２】
前記回路構成情報取得手段が取得した回路構成情報に含まれる被検証回路が、階層的に複数の回路ブロックが設けられた回路構造であり、且つ、前記対応情報に含まれる識別子に係る内部信号が、前記被検証回路の最上位階層でない回路ブロックの内部信号である場合に、
前記生成手段は、前記内部信号を最上位階層の回路ブロックから出力して前記選択回路に入力する構成の検証用回路の回路構成情報を生成する請求項１に記載の回路構成情報生成装置。
【請求項３】
前記回路構成情報取得手段が取得した回路構成情報に含まれる被検証回路が、階層的に複数の回路ブロックが設けられた回路構造であり、且つ、前記対応情報に含まれる識別子に係る内部信号が、前記被検証回路の最上位階層でない回路ブロックの内部信号である場合に、
前記対応情報に含まれる内部信号の識別子は、
各回路ブロックを一意的に識別することができ、最上位階層の回路ブロックから前記内部信号を有する回路ブロックまでの各回路ブロックにそれぞれ付された複数の識別子と、
前記内部信号を有する回路ブロック内にて前記内部信号を識別する識別子と
の組み合わせで識別するようにしてある請求項１又は請求項２に記載の回路構成情報生成装置。
【請求項４】
前記出力手段は、前記選択回路が選択した複数の内部信号を前記プログラマブル素子に設けられた複数の出力端子からパラレル出力するようにしてあり、
前記対応情報に含まれる前記出力位置は、複数の前記出力端子にそれぞれ対応付けられた番号である請求項１乃至請求項３のいずれか１つに記載の回路構成情報生成装置。
【請求項５】
前記出力手段は、前記選択回路が選択した複数の内部信号を前記プログラマブル素子に設けられた出力端子からシリアル出力するようにしてあり、
前記対応情報に含まれる前記出力位置は、シリアル出力を行う際の出力順位に対応付けられた番号である請求項１乃至請求項３のいずれか１つに記載の回路構成情報生成装置。
【請求項６】
前記生成手段は、前記選択回路が選択した信号を記憶する選択信号記憶部を更に含む検証用回路の回路構成情報を生成するようにしてあり、
前記出力手段は、前記選択信号記憶部に記憶された信号を出力するようにしてある請求項１乃至請求項５のいずれか１つに記載の回路構成情報生成装置。
【請求項７】
請求項１乃至請求項６のいずれか１つに記載の回路構成情報生成装置が生成した回路構成情報の回路が前記プログラマブル素子に構成された回路検証装置の動作を制御する制御装置であって、
前記回路検証装置との間で通信を行う通信手段と、
前記プログラマブル素子に構成された被検証回路の複数の内部信号から、外部に出力する内部信号の選択を受け付ける受付手段と、
該受付手段が受け付けた選択に応じて、前記プログラマブル素子に構成された規定情報記憶部に記憶された規定情報を前記通信手段を介して更新する更新手段と
を備えることを特徴とする制御装置。
【請求項８】
前記出力手段が出力した内部信号を、前記通信手段を介して取得する内部信号取得手段を備える請求項７に記載の制御装置。
【請求項９】
前記回路構成情報生成装置が取得した前記対応情報に含まれる被検証回路の内部信号の識別子を表示する表示手段を備え、
前記受付手段は、前記表示手段により表示された識別子から一又は複数の内部信号の選択を受け付けるようにしてある請求項７又は請求項８に記載の制御装置。
【請求項１０】
論理回路を構成することが可能なプログラマブル素子、及び該プログラマブル素子に構成された論理回路の内部信号を該プログラマブル素子の外部に出力する出力手段を有する回路検証装置と、
請求項１乃至請求項６のいずれか１つに記載の回路構成情報生成装置と、
請求項７乃至請求項９のいずれか１つに記載の制御装置と
を備え、
前記回路構成情報生成装置が生成した回路構成情報に係る回路を、前記回路検証装置の前記プログラマブル素子に構成し、前記制御装置により前記回路検証装置の動作を制御して回路の動作検証を行うようにしてあることを特徴とする回路検証システム。
【請求項１１】
論理回路を構成することが可能なプログラマブル素子と、該プログラマブル素子に構成された回路の内部信号を該プログラマブル素子の外部に出力する出力手段とを備える回路検証装置を用いて、被検証回路を前記プログラマブル素子に構成し、該被検証回路の回路動作を検証する回路検証方法において、
前記出力手段は、前記プログラマブル素子に構成された前記被検証回路の一又は複数の内部信号を出力することができるようにしてあり、
前記被検証回路の回路構成情報を取得し、
前記出力手段により前記プログラマブル素子の外部に出力させる前記被検証回路の内部信号の識別子、及び前記出力手段による出力位置が対応付けられた対応情報を取得し、
前記プログラマブル素子の外部に出力する前記被検証回路の内部信号の信号数が、前記出力手段の出力する信号数より多い場合に、
前記被検証回路の複数の内部信号から前記出力手段が出力する信号数の信号を選択する選択回路と、該選択回路の選択を規定する規定情報を記憶する規定情報記憶部とを前記被検証回路と共に含む検証用回路の回路構成情報を生成し、
該検証用回路を前記プログラマブル素子に構成して、前記被検証回路の回路動作を検証すること
を特徴とする回路検証方法。
【請求項１２】
前記被検証回路が階層的に複数の回路ブロックが設けられた回路構造であり、且つ、前記対応情報に含まれる識別子に係る内部信号が最上位階層でない回路ブロックの内部信号の場合に、
前記内部信号を最上位階層の回路ブロックから出力して前記選択回路に入力する構成の検証用回路の回路構成情報を生成する請求項１１に記載の回路検証方法。
【請求項１３】
前記対応情報に含まれる内部信号の識別子から、外部に出力する内部信号の選択を受け付け、
受け付けた選択に応じて、前記プログラマブル素子に構成された前記規定情報記憶部に記憶された規定情報を更新して、
受け付けた選択に応じた内部信号を前記出力手段により出力させる請求項１１又は請求項１２に記載の回路検証方法。
【請求項１４】
コンピュータに、回路動作を検証する被検証回路の回路構成情報を基に、論理回路を構成することが可能なプログラマブル素子に前記被検証回路を構成するための検証用回路の回路構成情報を生成させるステップを含み、プログラマブル素子及び該プログラマブル素子に構成された論理回路の内部信号を該プログラマブル素子の外部に出力する出力手段を有する回路検証装置にて、前記被検証回路を前記プログラマブル素子に構成して回路動作の検証を行うための回路構成情報を生成させる回路構成情報生成プログラムにおいて、
前記出力手段は、前記プログラマブル素子に構成された前記被検証回路の一又は複数の内部信号を出力することができるようにしてあり、
前記プログラマブル素子の外部に出力する前記被検証回路の内部信号の識別子、及び前記出力手段による出力位置が対応付けられた対応情報を取得させるステップを含み、
前記検証用回路の回路構成情報を生成させるステップにて、前記プログラマブル素子の外部に出力する前記被検証回路の内部信号の信号数が、前記出力手段の出力する信号数より多い場合に、前記被検証回路の複数の内部信号から前記出力手段が出力する信号数の信号を選択する選択回路と、該選択回路の選択を規定する規定情報を記憶する規定情報記憶部とを前記被検証回路と共に含む検証用回路の回路構成情報を生成させること
を特徴とする回路構成情報生成プログラム。
【請求項１５】
請求項１４に記載の回路構成情報生成プログラムがコンピュータに生成させた回路構成情報の回路を前記プログラマブル素子に構成した回路検証装置の動作を、コンピュータに制御させる制御プログラムであって、
コンピュータに、
前記プログラマブル素子に構成された被検証回路の複数の内部信号から、外部に出力する内部信号の選択を受け付けさせるステップと、
受け付けた選択に応じて、前記プログラマブル素子に構成された規定情報記憶部に記憶された規定情報を更新させるステップと
を含むことを特徴とする制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）又はＣＰＬＤ（Ｃｏｍｐｌｅｘ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ）等の論理回路を構成することができるプログラマブル素子を備える回路検証装置を用いて回路動作の検証を行う回路検証システム及び回路検証方法、並びに回路の検証を行う際に回路検証装置と共に用いる回路構成情報生成装置、制御装置、回路構成情報生成プログラム及び制御プログラムに関する。
【背景技術】
【０００２】
従来、デジタル回路の設計者は、ＶＨＤＬ又はＶｅｒｉｌｏｇ−ＨＤＬ等のＨＤＬ（Ｈａｒｄｗａｒｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ、ハードウェア記述言語）を用いてデジタル回路の設計を行っている。設計者がＨＤＬにより記述したデジタル回路はＲＴＬ（Ｒｅｇｉｓｔｅｒ  Ｔｒａｎｓｆｅｒ  Ｌｅｖｅｌ）の回路と呼ばれ、ＲＴＬの回路を論理合成ツールを用いて論理合成することによりゲートレベルの回路を生成し、ゲートレベルの回路を基に自動配置配線ツールを用いて回路のレイアウトを作成することができる。このレイアウトを基に半導体ＩＣの製造を行うことができるため、上述の方法により回路の設計から半導体ＩＣの製造までの期間を短縮できるという利点がある。
【０００３】
また、設計者はＲＴＬの回路及びゲートレベルの回路を作成した後、これらの回路の動作検証をシミュレータを用いて行う必要がある。しかし、回路規模の増大に伴ってシミュレーション時間が増大し、限られた設計期間の中で十分な回路検証を行うことができないという問題があった。そこで、近年ではＦＰＧＡ又はＣＰＬＤ等のプログラマブル素子を備える回路検証装置を用いて回路の動作検証を行うことが必須となっている。この場合、設計者は、設計したＲＴＬの回路をプログラマブル素子に構成して入力信号を与えることにより、回路を動作させて動作検証を行うことができ、プログラマブル素子に構成した回路は実時間で動作させることが可能であるため、動作検証の時間を短縮することができる。また、回路の動作は、プログラマブル素子の出力端子から出力される信号をロジックアナライザなどの観測装置を用いて観測することで確認することができる。
【０００４】
しかし、シミュレータを用いて回路の動作検証を行う場合には、回路の内部信号を容易にディスプレイなどに表示して動作を確認することができるが、プログラマブル素子に構成した回路の内部信号を観測することは容易でなく、設計者はプログラマブル素子の出力端子から回路の内部信号を出力するようにＲＴＬの回路の記述を若干変更する必要がある。プログラマブル素子の出力端子の数は限られているため、観測する内部信号を変更する場合にはＲＴＬの回路の記述を再度変更する必要があり、変更後には論理合成及び配置・配線を行ってプログラマブル素子に回路を再構成する必要がある。よって、回路規模の増大に伴って論理合成及び配置・配線に必要な時間が増大するため、回路の動作検証時間が増大するという問題がある。なお、以後の記載においては、論理合成及び配置・配線を行ってプログラマブル素子に構成するための回路情報（ネットリスト）を作成する処理をコンパイルと呼称する。
【０００５】
この問題に対し、プログラマブル素子内のメモリを利用して内部信号の値を記憶し、記憶した複数の内部信号の値をプログラマブル素子の出力端子からシリアル出力する内部信号観測ツールがある（非特許文献１参照）。この内部信号観測ツールでは、内部信号の値をシリアル出力するため、プログラマブル素子の出力端子数以上の内部信号を観測することができるという利点がある。なお、この内部信号観測ツールを利用する場合、トリガ条件に応じてメモリに内部信号を記憶させる処理及びメモリに記憶した値をシリアルデータとして出力する処理等を行うための専用回路をプログラマブル素子内に追加する必要がある。また、この内部信号観測ツールでは、プログラマブル素子へ与えるコンパイル後の回路データを直接的に設計者が変更することによって、観測する内部信号を変更することができるようにしてある。これにより、コンパイルを再度行うことなく観測する内部信号を変更することができる。
【非特許文献１】”ＦＰＧＡ内部信号観測ツールを活用する”、デザイン  ウエブ  マガジン（Design Wave Magazine）、2003 March、p.51-59
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、プログラマブル素子内のメモリの容量には限界があるため、非特許文献１の内部信号観測ツールの場合、メモリに値を記憶することができる内部信号の数にも限度がある。設計者が検証を行う回路の規模が大きいほど内部信号の数も多く、観測する必要がある内部信号の数が増大するため、プログラマブル素子内のメモリのみでこれらの内部信号を全て記憶しておくことは不可能である。このため、いくつかの内部信号を選択的にメモリに記憶させることしかできず、メモリに記憶していない内部信号を観測するためには設定を変更して再度コンパイルを行うか、又はコンパイル後の回路データを設計者が直接的に変更して出力する内部信号を変更する必要がある。コンパイルを再度行う場合、上述のようにコンパイルには回路規模に応じた時間を必要とするため、回路の動作検証に費やす時間が増大する。また、設計者がコンパイル後の回路データを直接的に変更する場合、コンパイルを再度行う時間と比較すると少ない時間であるが、回路データを変更するための時間及び変更した回路データをプログラマブル素子へ与えて回路を構成する時間等の時間が必要となり、また、設計者がコンパイル後の回路データを直接的に変更することは容易な作業ではない。
【０００７】
また、非特許文献１の内部信号観測ツールでは、プログラマブル素子の出力端子からシリアル出力された信号をＰＣ（パーソナルコンピュータ）にて取得し、取得したシリアルの信号をパラレルの信号に変換して、ＰＣのディスプレイ上に波形として表示することができるが、表示された各波形に信号名として付されるラベルは、例えばＳｉｇｎａｌ＿００１、Ｓｉｇｎａｌ＿００２…のように、ＰＣが自動的に作成した名称であり、設計者が回路の設計時に付した名称ではない。このため、設計者は表示された波形がどの内部信号に対応するものであるかを判別し難く、検証が行い難いという問題がある。設計者が手動で各波形に付されたラベルを変更することもできるが、観測する信号の数が多い場合には非常に手間のかかる作業である。
【０００８】
本発明は、斯かる事情に鑑みてなされたものであって、その目的とするところは、設計者が検証を行う被検証回路の構成に関する情報を有する例えばＲＴＬのソースファイルなどの回路構成情報を取得すると共に、外部に出力させて観測を行う内部信号の例えば信号名などの識別子、及びこの内部信号を出力する例えばプログラマブル素子の出力端子番号などの出力位置の対応関係が記された対応情報を取得して、観測を行う複数の内部信号から出力可能な数の信号を選択するマルチプレクサなどの選択回路と、この選択回路の選択を規定する規定情報を記憶するレジスタなどの規定情報記憶部とを被検証回路に自動的に付与し、被検証回路、選択回路及び規定情報記憶部を含む検証用回路の回路構成情報を生成して出力する構成とすることにより、検証用回路の回路構成情報を基にプログラマブル素子に回路を構成して回路検証を行って、規定情報記憶部の規定情報を変更するのみで出力する内部信号を変更でき、コンパイルを再度行うことなく、また、コンパイル後の回路構成情報を直接的に変更することなく、観測する内部信号を変更することが可能な回路構成情報を生成できる回路構成情報生成装置を提供することにある。
【０００９】
また本発明の他の目的とするところは、被検証回路が階層的に複数の回路ブロックが設けられた構造であり、観測を行う内部信号が最上位階層ではない下位階層の回路ブロックの内部信号である場合に、この内部信号を下位階層の回路ブロックから順に上位階層の回路ブロックへ出力し、最上位階層の回路ブロックから出力して選択回路へ入力する構成の検証用回路の回路構成情報を生成する構成とすることにより、下位階層の回路ブロック内の内部信号であっても、確実に外部へ出力して観測を行うことが可能な回路構成情報を生成できる回路構成情報生成装置を提供することにある。
【００１０】
また本発明の他の目的とするところは、取得する対応情報に含まれる内部信号の識別子を、最上位階層の回路ブロックからこの内部信号を有する回路ブロックまでの各回路ブロックに付されたインスタンス名などの識別子と、内部信号の信号名などの識別子との組み合わせで構成された識別子とすることにより、設計者が被検証回路を設計した際に各回路ブロック及び内部信号に付した識別子を用いて、観測を行う内部信号を指定することができる回路構成情報生成装置を提供することにある。
【００１１】
また本発明の他の目的とするところは、選択回路が選択した内部信号をプログラマブル素子の複数の出力端子からパラレル出力する場合、取得する対応情報に含まれる内部信号の出力位置を、内部信号を出力する出力端子にそれぞれ対応付けられた番号とすることにより、観測する内部信号が出力される出力端子を設計者が容易に指定することができ、パラレル出力される内部信号の観測をより確実に行うことができる回路構成情報生成装置を提供することにある。
【００１２】
また本発明の他の目的とするところは、選択回路が選択した内部信号をプログラマブル素子の出力端子からシリアル出力する場合、取得する対応情報に含まれる内部信号の出力位置を、シリアル出力の出力順位に対応付けられた番号とすることにより、観測する内部信号が出力される順位を設計者が容易に指定することができ、シリアル出力される内部信号の観測をより確実に行うことができる回路構成情報生成装置を提供することにある。
【００１３】
また本発明の他の目的とするところは、選択回路が選択した信号を記憶する選択信号記憶部を更に含む検証用回路の回路構成情報を生成する構成とすることにより、選択信号記憶部に被検証回路の内部信号の値をまず蓄積し、その後に蓄積した内部信号の値をプログラマブル素子の外部に出力して検証を行うことができる検証用回路の回路構成情報を生成する回路構成情報生成装置を提供することにある。
【００１４】
また本発明の他の目的とするところは、上述の回路構成情報生成装置が生成した回路構成情報の回路をプログラマブル素子に構成した回路検証装置の動作を制御する場合に、回路検証装置との間で通信を行う通信手段を設けて、プログラマブル素子の外部に出力する内部信号の選択を受け付け、受け付けた選択に応じてプログラマブル素子内の規定情報記憶部に記憶された規定情報を通信手段を介して更新する構成とすることにより、プログラマブル素子内の選択回路の選択を切り替えて、選択された内部信号を出力させることができる制御装置を提供することにある。
【００１５】
また本発明の他の目的とするところは、プログラマブル素子から出力された内部信号を通信手段を介して取得する構成とすることにより、取得した内部信号を波形として表示する又はファイルに記録してシミュレーション結果と比較する等の処理を容易に行うことができる制御装置を提供することにある。
【００１６】
また本発明の他の目的とするところは、回路構成情報生成装置が取得した対応情報に含まれる被検証回路の内部信号の識別子を表示し、表示した識別子から一又は複数の内部信号の選択を受け付ける構成とすることにより、設計者が多数の内部信号から観測する信号を容易に選択して出力させることができる制御装置を提供することにある。
【００１７】
また本発明の他の目的とするところは、プログラマブル素子を有する回路検証装置と、上述の回路構成情報生成装置及び制御装置とを備えて、回路構成情報生成装置が生成した回路構成情報に係る回路をプログラマブル素子に構成し、制御装置を用いて回路検証装置の動作を制御してプログラマブル素子に構成された回路の動作検証を行う構成とすることにより、コンパイルを再度行うことなく、また、コンパイル後の回路構成情報を直接的に変更することなく、観測する被検証回路の内部信号を設計者が容易に切り替えて動作検証を行うことができる回路検証システムを提供することにある。
【００１８】
また本発明の他の目的とするところは、被検証回路の構成に関する情報を有する回路構成情報を取得すると共に、外部に出力させて観測を行う内部信号の識別子及び出力位置の対応関係が記された対応情報を取得して、観測を行う複数の内部信号から出力可能な数の信号を選択する選択回路と、この選択回路の選択を規定する規定情報を記憶するレジスタなどの規定情報記憶部とを被検証回路に自動的に付与した検証用回路の回路構成情報を生成し、生成した回路構成情報に係る回路をプログラマブル素子に構成して被検証回路の動作検証を行うことにより、規定情報記憶部の規定情報を変更するのみで出力する内部信号を変更でき、コンパイルを再度行うことなく、また、コンパイル後の回路構成情報を直接的に変更することなく、観測する内部信号を変更することができる回路検証方法を提供することにある。
【００１９】
また本発明の他の目的とするところは、被検証回路が階層的に複数の回路ブロックが設けられた構造であり、観測を行う内部信号が最上位階層ではない下位階層の回路ブロックの内部信号である場合に、この内部信号を下位階層の回路ブロックから順に上位階層の回路ブロックへ出力し、最上位階層の回路ブロックから出力して選択回路へ入力する構成の検証用回路の回路構成情報を生成することにより、下位階層の回路ブロック内の内部信号であっても、確実に外部へ出力して観測を行うことができる回路検証方法を提供することにある。
【００２０】
また本発明の他の目的とするところは、取得した対応情報に含まれる内部信号の識別子から、外部に出力して観測を行う内部信号の選択を受け付け、受け付けた選択に応じてプログラマブル素子内の規定情報記憶部に記憶された規定情報を更新して、選択に応じた内部信号を出力させることにより、観測する内部信号を設計者が容易に切り替えて出力させることができる回路検証方法を提供することにある。
【００２１】
また本発明の他の目的とするところは、観測を行う内部信号の識別子及び出力位置の対応関係が記された対応情報を取得し、観測を行う複数の内部信号から出力可能な数の信号を選択するマルチプレクサなどの選択回路と、この選択回路の選択を規定する規定情報を記憶するレジスタなどの規定情報記憶部とを、取得した回路構成情報に係る被検証回路に自動的に付与し、被検証回路、選択回路及び規定情報記憶部を含む検証用回路の回路構成情報を生成する構成とすることにより、生成した検証用回路の回路構成情報を基にプログラマブル素子に回路を構成して回路検証を行うことで、規定情報記憶部の規定情報を変更するのみで出力する内部信号を変更でき、コンパイルを再度行うことなく、また、コンパイル後の回路構成情報を直接的に変更することなく、観測する内部信号を変更することが可能な回路構成情報を生成できる回路構成情報生成プログラムを提供することにある。
【００２２】
また本発明の他の目的とするところは、上述の回路構成情報生成プログラムにより生成された回路構成情報の回路をプログラマブル素子に構成した回路検証装置の動作を制御する場合に、プログラマブル素子の外部に出力する内部信号の選択を受け付け、受け付けた選択に応じてプログラマブル素子内の規定情報記憶部に記憶された規定情報を通信手段を介して更新する構成とすることにより、プログラマブル素子内の選択回路の選択を切り替えて、選択された内部信号を出力させることができる制御プログラムを提供することにある。
【課題を解決するための手段】
【００２３】
第１発明に係る回路構成情報生成装置は、回路動作を検証する被検証回路の回路構成情報を取得する回路構成情報取得手段と、取得した前記被検証回路の回路構成情報を基に、論理回路を構成することが可能なプログラマブル素子に前記被検証回路を構成するための検証用回路の回路構成情報を生成する生成手段とを備え、プログラマブル素子及び該プログラマブル素子に構成された論理回路の内部信号を該プログラマブル素子の外部に出力する出力手段を有する回路検証装置にて、前記被検証回路を前記プログラマブル素子に構成して回路動作の検証を行うための回路構成情報を生成する回路構成情報生成装置において、前記出力手段は、前記プログラマブル素子に構成された前記被検証回路の一又は複数の内部信号を出力することができるようにしてあり、前記プログラマブル素子の外部に出力する前記被検証回路の内部信号の識別子、及び前記出力手段による出力位置が対応付けられた対応情報を取得する対応情報取得手段を備え、前記生成手段は、前記プログラマブル素子の外部に出力する前記被検証回路の内部信号の信号数が、前記出力手段の出力する信号数より多い場合に、前記被検証回路の複数の内部信号から前記出力手段が出力する信号数の信号を選択する選択回路と、該選択回路の選択を規定する規定情報を記憶する規定情報記憶部とを前記被検証回路と共に含む検証用回路の回路構成情報を生成するようにしてあることを特徴とする。
【００２４】
本発明においては、回路構成情報生成装置が、まず、検証を行う被検証回路の構成に関する回路構成情報と、外部に出力させて観測を行う内部信号の識別子及び出力位置の対応情報とを取得する。被検証回路の回路構成情報は、例えばＨＤＬにより記述されたＲＴＬの回路のソースファイルを用いることができるが、Ｃ言語で記述された回路又は実際の回路図等であってもよく、設計者が設計した開発ターゲットとなる回路の構成に関する情報を有するものである。対応情報は、識別子として例えば被検証回路の内部信号の信号名と、出力位置として例えばプログラマブル素子が３２ビットの信号を出力することができる場合に内部信号を出力するビット位置を０〜３１の番号で指定したものとを対応付けて、これを設計者が予めテキストファイルなどに記述したものを用いることができる。回路構成情報生成装置はこれらを取得して、指定された複数の内部信号から、プログラマブル素子が出力可能な信号数の内部信号を選択するマルチプレクサなどの選択回路と、選択回路の選択を規定する規定情報を記憶するための規定情報記憶部とを被検証回路に追加し、被検証回路、選択回路及び規定情報記憶部を有する検証用回路の回路構成情報を生成して出力する。生成した回路構成情報を基に、被検証回路、選択回路及び規定情報記憶部をプログラマブル素子に構成することによって、規定情報記憶部に記憶された規定情報を変更するのみの簡単な処理で、被検証回路の内部信号を選択回路で選択して外部に出力し、観測することができる。出力する内部信号を変更する際に、コンパイルを再度行う必要はなく、また、コンパイル後の回路構成情報を直接的に変更する必要もない。
【００２５】
また、第２発明に係る回路構成情報生成装置は、前記回路構成情報取得手段が取得した回路構成情報に含まれる被検証回路が、階層的に複数の回路ブロックが設けられた回路構造であり、且つ、前記対応情報に含まれる識別子に係る内部信号が、前記被検証回路の最上位階層でない回路ブロックの内部信号である場合に、前記生成手段は、前記内部信号を最上位階層の回路ブロックから出力して前記選択回路に入力する構成の検証用回路の回路構成情報を生成することを特徴とする。
【００２６】
本発明においては、取得した回路構成情報に係る被検証回路が階層的に複数の回路ブロックが設けられた回路構造であり、取得した対応情報により観測する信号として指定された内部信号が最上位階層でない下位階層の回路ブロックの内部信号である場合、この内部信号を下位階層の回路ブロックから上位階層の回路ブロックへ順に出力し、最上位階層の回路ブロックから出力して選択回路へ入力する。回路構成情報生成装置は、この構成の検証用回路に係る回路構成情報を生成して出力する。出力された検証用回路の回路構成情報を基にコンパイルを行ってプログラマブル素子に構成することによって、下位階層の回路ブロック内の内部信号であっても外部へ出力して観測することができる。
【００２７】
また、第３発明に係る回路構成情報生成装置は、前記回路構成情報取得手段が取得した回路構成情報に含まれる被検証回路が、階層的に複数の回路ブロックが設けられた回路構造であり、且つ、前記対応情報に含まれる識別子に係る内部信号が、前記被検証回路の最上位階層でない回路ブロックの内部信号である場合に、前記対応情報に含まれる内部信号の識別子は、各回路ブロックを一意的に識別することができ、最上位階層の回路ブロックから前記内部信号を有する回路ブロックまでの各回路ブロックにそれぞれ付された複数の識別子と、前記内部信号を有する回路ブロック内にて前記内部信号を識別する識別子との組み合わせで識別するようにしてあることを特徴とする。
【００２８】
本発明においては、回路構成情報生成装置が取得する対応情報に含まれる内部信号の識別子を、最上位階層の回路ブロックからこの内部信号を有する回路ブロックまでの各回路ブロックに付されたインスタンス名など、各回路ブロックを一意に特定することができる識別子と、内部信号の信号名など、回路ブロック内で信号を一意に特定することができる識別子とを組み合わせた構成とする。回路ブロックのインスタンス名などの識別子は設計者が自ら付すものであり、また、回路ブロック内の信号名は設計者が自ら付すものであるため、設計者は容易に観測する信号を指定することができる。
【００２９】
また、第４発明に係る回路構成情報生成装置は、前記出力手段が、前記選択回路が選択した複数の内部信号を前記プログラマブル素子に設けられた複数の出力端子からパラレル出力するようにしてあり、前記対応情報に含まれる前記出力位置は、複数の前記出力端子にそれぞれ対応付けられた番号であることを特徴とする。
【００３０】
本発明においては、選択回路が選択した内部信号がプログラマブル素子の複数の出力端子からパラレル出力される構成の場合、対応情報に含まれる内部信号の出力位置を、内部信号を出力する出力端子にそれぞれ対応付けられた番号とする。例えばプログラマブル素子が内部信号の出力に利用可能な出力端子を３２個有しており、３２の内部信号を３２ビットのパラレル信号として出力することができる場合、内部信号の出力位置としてパラレル信号のビット位置を０〜３１の番号で指定する。これにより、設計者は出力位置を容易に指定することが可能となる。
【００３１】
また、第５発明に係る回路構成情報生成装置は、前記出力手段が、前記選択回路が選択した複数の内部信号を前記プログラマブル素子に設けられた出力端子からシリアル出力するようにしてあり、前記対応情報に含まれる前記出力位置は、シリアル出力を行う際の出力順位に対応付けられた番号であることを特徴とする。
【００３２】
本発明においては、選択回路が選択した内部信号がプログラマブル素子の出力端子からシリアル出力される構成の場合、対応情報に含まれる内部信号の出力位置を、シリアル出力される出力信号の出力順位に対応付けられた番号とする。例えばプログラマブル素子が１つの出力端子から３２ビット幅の出力信号を０ビット目から順に３１ビット目まで出力する場合、観測する内部信号を何ビット目に出力させるかを０〜３１の番号で指定する。これにより、設計者は出力位置を容易に指定することが可能となる。
【００３３】
また、第６発明に係る回路構成情報生成装置は、前記生成手段は、前記選択回路が選択した信号を記憶する選択信号記憶部を更に含む検証用回路の回路構成情報を生成するようにしてあり、前記出力手段は、前記選択信号記憶部に記憶された信号を出力するようにしてあることを特徴とする。
【００３４】
本発明においては、選択回路が選択した信号を記憶する選択信号記憶部を更に含む検証用回路の回路構成情報を生成する。これにより、被検証回路の内部信号の値を選択信号記憶部にまず蓄積して、その後に蓄積した内部信号の値をプログラマブル素子の外部に出力することが可能となる。例えば、プログラマブル素子の内部の回路と外部の回路とでは動作速度が異なる場合などであっても、プログラマブル素子の外部の回路が被検証回路の内部信号を確実に取得することができる。
【００３５】
また、第７発明に係る制御装置は、上述のいずれか１つの回路構成情報生成装置が生成した回路構成情報の回路が前記プログラマブル素子に構成された回路検証装置の動作を制御する制御装置であって、前記回路検証装置との間で通信を行う通信手段と、前記プログラマブル素子に構成された被検証回路の複数の内部信号から、外部に出力する内部信号の選択を受け付ける受付手段と、該受付手段が受け付けた選択に応じて、前記プログラマブル素子に構成された規定情報記憶部に記憶された規定情報を前記通信手段を介して更新する更新手段とを備えることを特徴とする。
【００３６】
本発明においては、上述の回路構成情報生成装置が生成した回路構成情報の回路を、回路検証装置のプログラマブル素子に構成し、回路検証装置との間で通信を行うことができる制御装置を用いて被検証回路の動作検証を行う。制御装置は、プログラマブル素子の外部にいずれの内部信号を出力するかに係る選択を設計者から受け付けて、受け付けた選択に応じてプログラマブル素子内の規定情報記憶部に記憶された規定情報を更新する。これにより、プログラマブル素子内の選択回路の選択が切り替わり、出力される内部信号が切り替わる。よって、出力する内部信号を変更するためにコンパイルを再度行う必要はなく、また、コンパイル後の回路構成情報を直接的に変更する必要もない。
【００３７】
また、第８発明に係る制御装置は、前記出力手段が出力した内部信号を、前記通信手段を介して取得する内部信号取得手段を備えることを特徴とする。
【００３８】
本発明においては、制御装置がプログラマブル素子から出力された内部信号を通信手段を介して取得する。制御装置は、取得した内部信号をシミュレーション結果と比較して誤りを検出したり、又は取得した内部信号を波形として表示したりすることが可能となる。これにより、設計者は回路の動作検証を容易に行うことが可能となる。
【００３９】
また、第９発明に係る制御装置は、前記回路構成情報生成装置が取得した前記対応情報に含まれる被検証回路の内部信号の識別子を表示する表示手段を備え、前記受付手段は、前記表示手段により表示された識別子から一又は複数の内部信号の選択を受け付けるようにしてあることを特徴とする。
【００４０】
本発明においては、回路構成情報生成装置は設計者から対応情報を取得し、これに応じて選択回路及び規定情報記憶部等を追加する。制御装置は、出力可能な内部信号と選択回路及び規定情報記憶部が記憶する規定情報との対応関係を、回路構成情報生成装置から取得するか、又は回路構成情報生成装置が出力した検証用回路の回路構成情報を解析するかして得ることができ、これにより対応情報にて指定された出力可能な内部信号の識別子を表示することができる。出力可能な内部信号の識別子を表示することによって、設計者はプログラマブル素子から出力させる内部信号を容易に選択することが可能となる。制御装置は、表示した内部信号の識別子から一又は複数の内部信号の選択を設計者から受け付けて、規定情報記憶部に記憶された規定情報を更新する。
【００４１】
また、第１０発明に係る回路検証システムは、論理回路を構成することが可能なプログラマブル素子、及び該プログラマブル素子に構成された論理回路の内部信号を該プログラマブル素子の外部に出力する出力手段を有する回路検証装置と、上述のいずれか１つの回路構成情報生成装置と、上述のいずれか１つの制御装置とを備え、前記回路構成情報生成装置が生成した回路構成情報に係る回路を、前記回路検証装置の前記プログラマブル素子に構成し、前記制御装置により前記回路検証装置の動作を制御して回路の動作検証を行うようにしてあることを特徴とする。
【００４２】
本発明においては、プログラマブル素子を有する回路検証装置と、上述の回路構成情報生成装置及び制御装置とを備えて、回路構成情報生成装置が生成した回路構成情報に係る回路をプログラマブル素子に構成し、制御装置を用いて回路検証装置の動作を制御してプログラマブル素子内の規定情報記憶部に記憶された規定情報を更新することによって、プログラマブル素子から外部へ出力する被検証回路の内部信号の切り替えを行う。これらの３つの装置を用いることによって、コンパイルを繰り返し行うことなく、また、コンパイル後の回路構成情報を直接的に変更することなく、被検証回路の内部信号を切り替えて出力させて観測し、回路の動作検証を行うことができる。
【００４３】
また、第１１発明に係る回路検証方法は、論理回路を構成することが可能なプログラマブル素子と、該プログラマブル素子に構成された回路の内部信号を該プログラマブル素子の外部に出力する出力手段とを備える回路検証装置を用いて、被検証回路を前記プログラマブル素子に構成し、該被検証回路の回路動作を検証する回路検証方法において、前記出力手段は、前記プログラマブル素子に構成された前記被検証回路の一又は複数の内部信号を出力することができるようにしてあり、前記被検証回路の回路構成情報を取得し、前記出力手段により前記プログラマブル素子の外部に出力させる前記被検証回路の内部信号の識別子、及び前記出力手段による出力位置が対応付けられた対応情報を取得し、前記プログラマブル素子の外部に出力する前記被検証回路の内部信号の信号数が、前記出力手段の出力する信号数より多い場合に、前記被検証回路の複数の内部信号から前記出力手段が出力する信号数の信号を選択する選択回路と、該選択回路の選択を規定する規定情報を記憶する規定情報記憶部とを前記被検証回路と共に含む検証用回路の回路構成情報を生成し、該検証用回路を前記プログラマブル素子に構成して、前記被検証回路の回路動作を検証することを特徴とする。
【００４４】
本発明においては、まず、検証を行う被検証回路の構成に関する情報を有する回路構成情報と、外部に出力させて観測を行う内部信号の識別子及び出力位置の対応情報とを取得する。取得したこれらの情報を基に、複数の内部信号からプログラマブル素子が出力可能な信号数の内部信号を選択する選択回路と、選択回路の選択を規定する規定情報を記憶するための規定情報記憶部とを被検証回路に追加し、被検証回路、選択回路及び規定情報記憶部の回路構成に関する情報を含む検証用回路の回路構成情報を生成して出力する。検証用回路の回路構成情報を基に、被検証回路、選択回路及び規定情報記憶部をプログラマブル素子に構成して回路の動作検証を行うことにより、規定情報記憶部に記憶された規定情報を変更するのみの簡単な処理で、被検証回路の内部信号を選択回路で選択して外部に出力し、観測することができる。出力する内部信号を変更する際に、コンパイルを再度行う必要はなく、また、コンパイル後の回路構成情報を直接的に変更する必要もない。
【００４５】
また、第１２発明に係る回路検証方法は、前記被検証回路が階層的に複数の回路ブロックが設けられた回路構造であり、且つ、前記対応情報に含まれる識別子に係る内部信号が最上位階層でない回路ブロックの内部信号の場合に、前記内部信号を最上位階層の回路ブロックから出力して前記選択回路に入力する構成の検証用回路の回路構成情報を生成することを特徴とする。
【００４６】
本発明においては、取得した回路構成情報に係る被検証回路が階層的に複数の回路ブロックが設けられた回路構造であり、取得した対応情報により観測する信号として指定された内部信号が最上位階層でない下位階層の回路ブロックの内部信号である場合、この内部信号を下位階層の回路ブロックから上位階層の回路ブロックへ順に出力し、最上位階層の回路ブロックから出力して選択回路へ入力した回路構成の検証用回路の回路構成情報を生成する。検証用回路の回路構成情報を基にコンパイルを行ってプログラマブル素子に構成することによって、下位階層の回路ブロック内の内部信号であっても外部へ出力して観測することができる。
【００４７】
また、第１３発明に係る回路検証方法は、前記対応情報に含まれる内部信号の識別子から、外部に出力する内部信号の選択を受け付け、受け付けた選択に応じて、前記プログラマブル素子に構成された前記規定情報記憶部に記憶された規定情報を更新して、受け付けた選択に応じた内部信号を前記出力手段により出力させることを特徴とする。
【００４８】
本発明においては、プログラマブル素子の外部にいずれの内部信号を出力するかに係る選択を設計者から受け付けて、受け付けた選択に応じてプログラマブル素子内の規定情報記憶部に記憶された規定情報を更新する。これにより、プログラマブル素子内の選択回路の選択が切り替わり、出力される内部信号を切り替えることができる。よって、出力する内部信号を変更するためにコンパイルを再度行う必要はなく、また、コンパイル後の回路構成情報を直接的に変更する必要もない。
【００４９】
また、第１４発明に係る回路構成情報生成プログラムは、コンピュータに、回路動作を検証する被検証回路の回路構成情報を基に、論理回路を構成することが可能なプログラマブル素子に前記被検証回路を構成するための検証用回路の回路構成情報を生成させるステップを含み、プログラマブル素子及び該プログラマブル素子に構成された論理回路の内部信号を該プログラマブル素子の外部に出力する出力手段を有する回路検証装置にて、前記被検証回路を前記プログラマブル素子に構成して回路動作の検証を行うための回路構成情報を生成させる回路構成情報生成プログラムにおいて、前記出力手段は、前記プログラマブル素子に構成された前記被検証回路の一又は複数の内部信号を出力することができるようにしてあり、前記プログラマブル素子の外部に出力する前記被検証回路の内部信号の識別子、及び前記出力手段による出力位置が対応付けられた対応情報を取得させるステップを含み、前記検証用回路の回路構成情報を生成させるステップにて、前記プログラマブル素子の外部に出力する前記被検証回路の内部信号の信号数が、前記出力手段の出力する信号数より多い場合に、前記被検証回路の複数の内部信号から前記出力手段が出力する信号数の信号を選択する選択回路と、該選択回路の選択を規定する規定情報を記憶する規定情報記憶部とを前記被検証回路と共に含む検証用回路の回路構成情報を生成させることを特徴とする。
【００５０】
本発明においては、プログラマブル素子の外部に出力させて観測を行う内部信号の識別子及び出力位置の対応情報を取得する。対応情報にて指定された複数の内部信号から、プログラマブル素子が出力可能な信号数の内部信号を選択するマルチプレクサなどの選択回路と、選択回路の選択を規定する規定情報を記憶するための規定情報記憶部とを被検証回路に自動的に付与し、この被検証回路、選択回路及び規定情報記憶部を含む検証用回路の回路構成情報を生成する。生成した回路構成情報を基に、被検証回路、選択回路及び規定情報記憶部をプログラマブル素子に構成することによって、規定情報記憶部に記憶された規定情報を変更するのみの簡単な処理で、被検証回路の内部信号を選択回路で選択して外部に出力し、観測することができる。出力する内部信号を変更する際に、コンパイルを再度行う必要はなく、また、コンパイル後の回路構成情報を直接的に変更する必要もない。
【００５１】
また、第１５発明に係る制御プログラムは、上述の回路構成情報生成プログラムがコンピュータに生成させた回路構成情報の回路を前記プログラマブル素子に構成した回路検証装置の動作を、コンピュータに制御させる制御プログラムであって、コンピュータに、前記プログラマブル素子に構成された被検証回路の複数の内部信号から、外部に出力する内部信号の選択を受け付けさせるステップと、受け付けた選択に応じて、前記プログラマブル素子に構成された規定情報記憶部に記憶された規定情報を更新させるステップとを含むことを特徴とする。
【００５２】
本発明においては、上述の回路構成情報生成プログラムにより生成された回路構成情報の回路を、回路検証装置のプログラマブル素子に構成し、制御プログラムにより回路検証装置を制御して被検証回路の動作検証を行う。制御プログラムは、プログラマブル素子の外部にいずれの内部信号を出力するかに係る選択を設計者から受け付けて、受け付けた選択に応じてプログラマブル素子内の規定情報記憶部に記憶された規定情報を更新する。これにより、プログラマブル素子内の選択回路の選択が切り替わり、出力される内部信号が切り替わる。よって、出力する内部信号を変更するためにコンパイルを再度行う必要はなく、また、コンパイル後の回路構成情報を直接的に変更する必要もない。
【発明の効果】
【００５３】
第１発明による場合は、設計者が検証を行う被検証回路の回路構成情報を取得すると共に、観測を行う内部信号の識別子及び出力位置の対応関係が記された対応情報を取得して、観測を行う複数の内部信号から出力可能な数の信号を選択する選択回路と、この選択回路の選択を規定する規定情報を記憶する規定情報記憶部とを被検証回路に自動的に付与し、被検証回路、選択回路及び規定情報記憶部を含む検証用回路の回路構成情報を生成して出力する構成とすることにより、検証用回路の回路構成情報を基に、被検証回路、選択回路及び規定情報記憶部をプログラマブル素子に構成し、規定情報記憶部に記憶された規定情報を変更するのみの簡単な処理で、被検証回路の内部信号を選択回路で選択して外部に出力し、観測することができる。出力する内部信号を変更する際にコンパイルを再度行う必要がなく、また、コンパイル後の回路構成情報を直接的に変更する必要もないため、被検証回路の検証に費やす期間を短縮することができ、より多くのテストパタンで検証を行うことが可能となる。よって、検証の精度を高めることができると共に、被検証回路の信頼性を高めることができる。
【００５４】
また、第２発明による場合は、被検証回路が階層的に複数の回路ブロックが設けられた構造であり、観測を行う内部信号が最上位階層でない下位階層の回路ブロックの内部信号である場合に、この内部信号を下位階層の回路ブロックから順に上位階層の回路ブロックへ出力し、最上位階層の回路ブロックから出力して選択回路へ入力する構成の検証用回路の回路構成情報を生成する構成とすることにより、生成された検証用回路の回路構成情報を基にコンパイルを行ってプログラマブル素子に構成することによって、下位階層の回路ブロック内の内部信号であっても確実に外部へ出力して観測することができる。よって、確実に且つ容易に被検証回路の動作検証を行うことができる。
【００５５】
また、第３発明による場合は、回路構成情報生成装置が取得する対応情報に含まれる内部信号の識別子を、最上位階層の回路ブロックからこの内部信号を有する回路ブロックまでの各回路ブロックを一意に特定することができる識別子と、回路ブロック内で信号を一意に特定することができる識別子とを組み合わせた構成とすることにより、設計者が被検証回路を設計した際に各回路ブロック及び内部信号に付した識別子を用いて観測を行う内部信号を指定することができるため、回路構成情報生成装置の利便性を高めることができ、被検証回路の動作検証を容易に行うことができる。
【００５６】
また、第４発明による場合は、選択回路が選択した内部信号をプログラマブル素子の複数の出力端子からパラレル出力する場合、取得する対応情報に含まれる内部信号の出力位置を、内部信号を出力する出力端子にそれぞれ対応付けられた番号とすることにより、観測する内部信号の出力位置を設計者が容易に指定することができるため、回路構成情報生成装置の利便性を高めることができ、被検証回路の動作検証を容易に行うことができる。
【００５７】
また、第５発明による場合は、選択回路が選択した内部信号をプログラマブル素子の出力端子からシリアル出力する場合、取得する対応情報に含まれる内部信号の出力位置を、シリアル出力の出力順位に対応付けられた番号とすることにより、観測する内部信号の出力位置を設計者が容易に指定することができるため、回路構成情報生成装置の利便性を高めることができ、被検証回路の動作検証を容易に行うことができる。
【００５８】
また、第６発明による場合は、選択回路が選択した信号を記憶する選択信号記憶部を更に含む検証用回路の回路構成情報を生成する構成とすることにより、被検証回路の内部信号の値を選択信号記憶部にまず蓄積して、その後に蓄積した内部信号の値をプログラマブル素子の外部に出力することができ、例えば、プログラマブル素子の内部の回路と外部の回路とでは動作速度が異なる場合などであっても、プログラマブル素子の外部の回路が被検証回路の内部信号を確実に取得することができるため、回路検証装置を用いた被検証回路の動作検証を容易に且つ確実に行うことができる。
【００５９】
また、第７発明による場合は、上述の回路構成情報生成装置が生成した回路構成情報の回路を回路検証装置のプログラマブル素子に構成し、回路検証装置との間で通信を行うことができる制御装置を用いてプログラマブル素子の外部に出力する内部信号の選択を受け付け、受け付けた選択に応じてプログラマブル素子内の規定情報記憶部に記憶された規定情報を更新する構成とすることにより、コンパイルを再度行うことなく、また、コンパイル後の回路構成情報を直接的に変更する必要もないため、観測する被検証回路の内部信号を変更することができるため、被検証回路の検証に費やす期間を短縮することができ、より多くのテストパタンで検証を行うことが可能となる。よって、検証の精度を高めることができると共に、被検証回路の信頼性を高めることができる。
【００６０】
また、第８発明による場合は、プログラマブル素子から出力された内部信号を通信手段を介して取得する構成とすることにより、取得した内部信号をシミュレーション結果と比較して誤りを検出する又は取得した内部信号を波形として表示する等の処理を制御装置が行うことができるため、制御装置の利便性を向上することができ、被検証回路の動作検証を容易に行うことができる。
【００６１】
また、第９発明による場合は、回路構成情報生成装置が取得した対応情報に含まれる被検証回路の内部信号の識別子を表示し、表示した識別子から一又は複数の内部信号の選択を受け付ける構成とすることにより、設計者がプログラマブル素子から出力させる内部信号を容易に選択することが可能となるため、制御装置の利便性をより向上することができ、被検証回路の動作検証をより容易に行うことができる。
【００６２】
また、第１０発明による場合は、プログラマブル素子を有する回路検証装置と、上述の回路構成情報生成装置及び制御装置とを備えて、回路構成情報生成装置が生成した回路構成情報に係る回路をプログラマブル素子に構成し、制御装置を用いて回路検証装置の動作を制御してプログラマブル素子に構成された被検証回路の動作検証を行う構成とすることにより、コンパイルを繰り返し行うことなく、また、コンパイル後の回路構成情報を直接的に変更することなく、被検証回路の内部信号を切り替えて出力させて観測し、回路の動作検証を行うことができるため、被検証回路の検証に費やす期間を短縮することができ、より多くのテストパタンで検証を行うことが可能となる。よって、検証の精度を高めることができると共に、被検証回路の信頼性を高めることができる。
【００６３】
また、第１１発明による場合は、被検証回路の回路構成情報を取得すると共に、外部に出力させて観測を行う内部信号の識別子及び出力位置の対応関係が記された対応情報を取得して、観測を行う複数の内部信号から出力可能な数の信号を選択する選択回路と、この選択回路の選択を規定する規定情報を記憶するレジスタなどの規定情報記憶部とを被検証回路に自動的に付与した構成の検証用回路の回路構成情報を生成し、生成した回路構成情報に係る回路をプログラマブル素子に構成して被検証回路の動作検証を行うことにより、規定情報記憶部に記憶された規定情報を変更するのみの簡単な処理で、コンパイルを再度行うことなく、また、コンパイル後の回路構成情報を直接的に変更することなく、被検証回路の内部信号を選択回路で選択して外部に出力して観測することができるため、被検証回路の検証に費やす期間を短縮することができ、より多くのテストパタンで検証を行うことが可能となる。よって、検証の精度を高めることができると共に、被検証回路の信頼性を高めることができる。
【００６４】
また、第１２発明による場合は、被検証回路が階層的に複数の回路ブロックが設けられた構造であり、観測を行う内部信号が最上位階層でない下位階層の回路ブロックの内部信号である場合に、この内部信号を下位階層の回路ブロックから順に上位階層の回路ブロックへ出力し、最上位階層の回路ブロックから出力して選択回路へ入力する構成の検証用回路の回路構成情報を生成することにより、この回路構成情報を基にコンパイルを行ってプログラマブル素子に構成することによって、下位階層の回路ブロック内の内部信号であっても外部へ出力して観測することができるため、確実に且つ容易に被検証回路の動作検証を行うことができる。
【００６５】
また、第１３発明による場合は、取得した対応情報に含まれる内部信号の識別子から外部に出力して観測を行う内部信号の選択を受け付けて、受け付けた選択に応じてプログラマブル素子内の規定情報記憶部に記憶された規定情報を更新し、選択に応じた内部信号を出力させることにより、コンパイルを再度行うことなく、また、コンパイル後の回路構成情報を直接的に変更することなく、観測する被検証回路の内部信号を変更することができるため、被検証回路の検証に費やす期間を短縮することができ、より多くのテストパタンで検証を行うことが可能となる。よって、検証の精度を高めることができると共に、被検証回路の信頼性を高めることができる。
【００６６】
また、第１４発明による場合は、観測を行う内部信号の識別子及び出力位置の対応関係が記された対応情報を取得し、観測を行う複数の内部信号から出力可能な数の信号を選択するマルチプレクサなどの選択回路と、この選択回路の選択を規定する規定情報を記憶するレジスタなどの規定情報記憶部とを、取得した回路構成情報に係る被検証回路に自動的に付与し、被検証回路、選択回路及び規定情報記憶部を含む検証用回路の回路構成情報を生成する構成とすることにより、検証用回路の回路構成情報を基に、被検証回路、選択回路及び規定情報記憶部をプログラマブル素子に構成し、規定情報記憶部に記憶された規定情報を変更するのみの簡単な処理で、被検証回路の内部信号を選択回路で選択して外部に出力し、観測することができる。よって、出力する内部信号を変更する際にコンパイルを再度行う必要はなく、また、コンパイル後の回路構成情報を直接的に変更する必要もないため、被検証回路の検証に費やす期間を短縮することがでる。
【００６７】
また、第１５発明による場合は、上述の回路構成情報生成プログラムにより生成された回路構成情報の回路をプログラマブル素子に構成した回路検証装置の動作を制御する場合に、プログラマブル素子の外部に出力する内部信号の選択を受け付け、受け付けた選択に応じてプログラマブル素子内の規定情報記憶部に記憶された規定情報を通信手段を介して更新する構成とすることにより、コンパイルを再度行うことなく、また、コンパイル後の回路構成情報を直接的に変更することなく、観測する被検証回路の内部信号を変更することができるため、被検証回路の検証に費やす期間を短縮することができ、より多くのテストパタンで検証を行うことが可能となる。よって、検証の精度を高めることができると共に、被検証回路の信頼性を高めることができる。
【発明を実施するための最良の形態】
【００６８】
（実施の形態１）
以下、本発明をその実施の形態を示す図面に基づき具体的に説明する。図１は、本発明に係る回路検証システムの構成を示すブロック図である。図において１は、設計者が設計した論理回路（被検証回路）を構成することができるＦＰＧＡ２が搭載された回路検証装置であり、設計者が操作するＰＣ２０に通信ケーブルを介して接続され、設計者の操作によりＰＣ２０から与えられる命令に応じてＦＰＧＡ２内に構成された被検証回路を動作させるものである。回路検証装置１にて動作した被検証回路の動作結果はＰＣ２０へ送信するようにしてあり、設計者はＰＣ２０にて被検証回路の動作が正しいか否かを検証することができるようにしてある。
【００６９】
回路検証装置１は、回路基板上に配設されたＦＰＧＡ２、メモリ３、メモリ４、ＣＰＵ５及び通信用デバイス６等を有し、これらはバスを介して相互にデータの授受を行うことができるように接続されている。ＦＰＧＡ２、メモリ３、メモリ４及び通信用デバイス６等は、１つのアドレス空間内の資源としてＣＰＵ５又はＣＰＵ５にて実行されるプログラムからアクセスすることが可能となるように管理されている。
【００７０】
メモリ３は、ＦＰＧＡ２へ入力する入力データを一時的に蓄えるためのバッファとして用いられ、入力データはＰＣ２０から通信用デバイス６を介して与えられるようにしてある。メモリ４は、ＦＰＧＡ２から出力された出力データを一時的に蓄えるためのバッファとして用いられ、出力データは通信用デバイス６を介してＰＣ２０へ与えるようにしてある。なお、図１においてはメモリ３及びメモリ４の２つのメモリを設けてあるが、メモリ３及びメモリ４を１つのメモリで代用することも可能である。
【００７１】
通信用デバイス６は、ＵＳＢケーブル又はＬＡＮケーブル等の通信ケーブルに接続され、通信規約に基づいてＰＣ２０との間でデータの送受信を行うものである。ＰＣ２０から受信したデータはメモリ３へ蓄えるようにしてあり、ＰＣ２０へデータを送信する場合はメモリ４に蓄えられたデータを読み出して送信するようにしてある。
【００７２】
ＦＰＧＡ２は、ＳＲＡＭ技術を利用した記憶素子を備えるプログラマブル素子であり、記憶素子に記憶された回路構成情報を変更することにより、ＦＰＧＡ２の内部に構成される回路を変更することが可能にしてある。ＳＲＡＭ技術を用いているため、回路検証装置１の電源投入直後のＦＰＧＡ２内には論理回路は構成されておらず、電源投入後にＰＣ２０から回路構成情報を回路検証装置１へ送信することによって、ＦＰＧＡ２内に論理回路が構成されるようにしてある。なお、回路構成情報を記憶したＲＯＭを回路検証装置１内に配設し、電源投入後にこのＲＯＭから回路構成情報を読み出す構成とすることもできる。また、ＦＰＧＡ２は、内部に構成した論理回路の内部信号を出力する出力手段として、一又は複数の出力端子を有しており、この出力端子から出力された内部信号がメモリ４にデータとして蓄えられるようにしてある。
【００７３】
ＰＣ２０は、回路検証装置１を制御する制御装置として動作すると共に、回路検証装置１のＦＰＧＡ２へ与える回路構成情報を生成する回路構成情報生成装置として動作するものである。ＰＣ２０は、メモリ２１、ＣＰＵ２２、通信Ｉ／Ｆ（インタフェース）２３及びハードディスク２４等がバスを介して相互に接続された構成であり、所謂、汎用のコンピュータの構成である。また、図示は省略するが、ＰＣ２０は液晶ディスプレイ又はＣＲＴディスプレイ等の表示装置と、キーボード及びマウス等の入力装置とを備えている。また、通信Ｉ／Ｆ２３は、ＵＳＢケーブル又はＬＡＮケーブル等の通信ケーブルを接続する接続ポートを有しており、回路検証装置１の通信用デバイス６と通信ケーブルを介して接続し、データの送受信を行うことができるようにしてある。
【００７４】
ハードディスク２４は、図示しないオペレーティングシステム及びデバイスドライバ等のソフトウェアプログラムが記憶してあると共に、回路検証装置１を用いて被検証回路の検証を行う際に用いる変換ツール２５、コンパイルツール２６及び検証ツール２７のソフトウェアプログラムが記憶してある。変換ツール２５及びコンパイルツール２６は、回路検証装置１のＦＰＧＡ２へ与える回路構成情報を生成するためのソフトウェアプログラムであり、これらのソフトウェアプログラムがＣＰＵ２２にて実行されることによって、ＰＣ２０は回路構成情報生成装置として動作する。また、検証ツール２７は、ＦＰＧＡ２に被検証回路を構成した後、回路検証装置１へ動作命令及び入力データ等を与えると共に、被検証回路の動作結果を回路検証装置１から受信するなど、回路検証装置１の動作を制御するソフトウェアプログラムであり、このソフトウェアプログラムがＣＰＵ２２にて実行されることによって、ＰＣ２０は制御装置として動作する。
【００７５】
図２は、本発明に係る回路検証システムにおいてＦＰＧＡ２へ与える回路構成情報を生成する手順を説明するための模式図である。ＰＣ２０にて動作する変換ツール２５は、ＲＴＬソースファイル４０及び観測信号設定ファイル４１の２つの情報を読み込んで取得するようにしてある。ＲＴＬソースファイル４０は、設計者が設計し、回路検証装置１を用いて検証を行う被検証回路の回路構成情報がＨＤＬにより記述されたファイルである。ＲＴＬソースファイル４０に回路構成情報が記述された被検証回路は、設計者がシミュレーションにて動作検証を十分に行ったものであることが好ましい。
【００７６】
図３は、ＲＴＬソースファイル４０に回路構成情報が記述された被検証回路の一例を示す模式図である。設計者が設計する被検証回路は、複数の回路ブロックが階層構造をなしている場合が多い。図３に示す例においては、被検証回路が３階層の階層構造を有する場合を図示してある。なお、設計者が回路をＨＤＬ（特に、Ｖｅｒｉｌｏｇ−ＨＤＬ）により設計した場合、各回路ブロックにはモジュール名及びインスタンス名が付されている。以降の図において、回路ブロックのモジュール名をＭ？（？＝Ａ、Ｂ、Ｃ、Ｄ…）で示し、回路ブロックのインスタンス名をＩ？（？＝０、１、２、３、４…）で示す。また、モジュール名がＭ？であり、インスタンス名がＩ？である回路ブロックを「回路ブロックＭ？：Ｉ？」と表記する。モジュール名は回路ブロックの回路構成に対して付される名称であり、被検証回路内に同じモジュール名の回路ブロックが複数含まれている場合には、同じ構成の回路が複数存在している。これに対してインスタンス名は、回路ブロックの実体に対して付される名称であり、回路ブロックを一意に識別することが可能な名称であるため、同一のインスタンス名を有する回路ブロックが同じ階層の回路ブロック内に存在することはない。
【００７７】
図３に例示した被検証回路は、最上位階層の回路ブロックＭＡ：Ｉ０が回路ブロックＭＢ：Ｉ１及びＭＣ：Ｉ２の２つの回路ブロックを有し、更に回路ブロックＭＢ：Ｉ１が同一構成の２つの回路ブロックＭＤ：Ｉ３及びＭＤ：Ｉ４を有する３階層の階層構造を有する回路である。回路ブロックＭＤ：Ｉ３及びＭＤ：Ｉ４は回路構成は同じであるため、信号名が”ｘ”の内部信号を共に有している。
【００７８】
図４は、観測信号設定ファイル４１に記載される観測信号名の一例を示す模式図である。なお、以降の図及び説明における回路検証システムは、ＦＰＧＡ２が１２８本の観測用の信号をパラレル出力することが可能であり、設計者は１０２４本の内部信号を観測する信号として指定することができる構成とする。また、設計者は、ＦＰＧＡ２が１２８本の観測用の信号をパラレル出力するために有する１２８個の出力端子のうち、指定した内部信号をいずれの出力端子から出力させるか、即ち指定した内部信号と出力されるパラレル信号のビット位置との対応を指定することができる。このとき、１つの出力端子に最大で８本の内部信号を割り当てることができるものとする。ただし、本発明に係る回路検証システムの構成がこれらの構成に限られるものではない。
【００７９】
設計者は、観測信号設定ファイル４１に、被検証回路に含まれる内部信号の信号名を”観測信号名”として記載し、この内部信号を出力する出力ビット位置を”出力ビット位置”として０〜１２７の番号で指定することによって、変換ツール２５に対する設定を行うことができる。”観測信号名”は、被検証回路の最上位階層の回路ブロックのインスタンス名から、観測を行う内部信号が存在する回路ブロックのインスタンス名までを順に”.”などの記号を用いて連結し、最後に信号名を連結したものを用いることができる。インスタンス名は回路ブロックを一意に識別することができる識別子であるため、これにより被検証回路内の信号を一意に識別することが可能である。例えば、図３に示す被検証回路の回路ブロックＭＤ：Ｉ３内に存在する内部信号ｘは、”I0.I1.I3.x”のように指定することができ、回路ブロックＭＤ：Ｉ４内に存在する内部信号ｘと区別することが可能である。なお、図４においては、”観測信号名”及び”出力ビット位置”を表として示してあるが、観測信号設定ファイル４１がテキストファイルの場合、例えばテキストファイルの１行に１つの”観測信号名”と”出力ビット位置”とをスペース又は”、”等の記号で隔てて記載するのみなどの簡単な構成でよい。なお、本実施の形態においては、観測を行う被検証回路の内部信号を指定するために、観測信号設定ファイル４１に“観測信号名”として内部信号を記載する方法を用いているが、これに限るものではなく、例えば被検証回路の回路図を表示するツールを利用して、観測を行う信号を回路図上で指定するなどの他の方法を用いてもよい。
【００８０】
変換ツール２５は、上述のようなＲＴＬソースファイル４０及び観測信号設定ファイル４１を読み取って取得し、観測信号設定ファイル４１に設定された内部信号が外部にて観測可能となるように被検証回路の変更及びその他の回路の追加等を行って、検証用ＲＴＬソースファイル４２を生成し、出力するようにしてある。図５は、検証用ＲＴＬソースファイル４２に回路構成情報が記述された検証用回路の一例を示す模式図である。
【００８１】
変換ツール２５は、観測信号設定ファイル４１に”観測信号名”として設定された内部信号を、被検証回路の最上位階層の回路ブロックから出力信号として出力するように、被検証回路の変更を行う。図示の例では、回路ブロックＭＤ：Ｉ３の内部信号ｘが観測信号として指定された場合、まず、回路ブロックＭＤ：Ｉ３に内部信号ｘを出力する出力端子１０１を設けて内部信号ｘを出力する。次いで、回路ブロックＭＤ：Ｉ３を有する回路ブロックＭＢ：Ｉ１に出力端子１０２を設けて、回路ブロックＭＤ：Ｉ３の出力端子１０１から出力された信号を出力端子１０２から出力する。更に、同様にして回路ブロックＭＢ：Ｉ１を有する最上位階層の回路ブロックＭＡ：Ｉ０に出力端子１０３を設けて、回路ブロックＭＢ：Ｉ１の出力端子１０２から出力された信号を出力端子１０３から出力する。このとき、信号名が重複することがないように、内部信号ｘの信号名を被検証回路内の他の信号の名称とは異なる名称、例えば”ｄｂｇ＿Ｉ０＿Ｉ１＿Ｉ３＿ｘ”のような名称に変更する。図示は省略するが、変換ツール２５は、観測信号設定ファイル４１に設定された全ての内部信号に関して同様の処理を行い、被検証回路の最上位階層の回路ブロックＭＡ：Ｉ０から設定された全ての内部信号を出力するように、被検証回路を変更する。
【００８２】
被検証回路の変更が終了した後、変換ツール２５は、ＦＰＧＡ２から観測する信号として出力可能な信号数（本図の例では１２８）のマルチプレクサ（以下、ＭＵＸ？（？＝０、１…１２７）と表記する）を追加する。ＭＵＸ０〜ＭＵＸ１２７はそれぞれ８本の入力信号から１本の信号を選択して出力するものであり、ＭＵＸ０〜ＭＵＸ１２７の各出力信号がＦＰＧＡ２の出力端子から出力される信号となる。変換ツール２５は、観測信号設定ファイル４１に記載された”出力ビット位置”を基にして、被検証回路から出力した内部信号をＭＵＸ０〜ＭＵＸ１２７の入力端子に接続するようにしてあり、ＭＵＸ０〜ＭＵＸ１２７の出力信号を検証用回路の出力信号として出力手段をなすＦＰＧＡ２の対応する出力端子からそれぞれ出力できるように接続する。また、ＭＵＸ０〜ＭＵＸ１２７は３ビットの制御信号（ｓｅｌ）が与えられており、この制御信号に応じて信号の選択を行うようにしてある。
【００８３】
このため、変換ツール２５は、ＭＵＸ０〜ＭＵＸ１２７の選択を制御する制御信号を出力する制御レジスタ１１０を回路に追加する。制御レジスタ１１０は、３ビット幅のレジスタが１２８個並べられたものであり、１２８個のレジスタに記憶された３ビットのレジスタ値がＭＵＸ０〜ＭＵＸ１２７へそれぞれ制御信号として与えられるように、変換ツール２５は制御レジスタ１１０とＭＵＸ０〜ＭＵＸ１２７とを接続するようにしてある。制御レジスタ１１０のレジスタ値は回路検証装置１のＣＰＵ５が直接的に更新することができるようにしてある。
【００８４】
このように、変換ツール２５は、被検証回路の変更を行って、ＭＵＸ０〜ＭＵＸ１２７及び制御レジスタ１１０を追加し、回路検証装置１を用いて検証を行うための検証用ＲＴＬソースファイル４２を生成して出力する。また、変換ツール２５は、追加したＭＵＸ０〜ＭＵＸ１２７及び制御レジスタ１１０を制御するための制御情報を有する制御情報ファイル４３を出力するようにしてある。図６は、制御情報ファイル４３に含まれる制御情報の一例を示す模式図である。
【００８５】
制御情報ファイル４３の制御情報に含まれる”観測信号名”及び”出力ビット位置”に係る情報は、観測信号設定ファイル４１に含まれる”観測信号名”及び”出力ビット位置”と同じものである。更に、制御情報ファイル４３は、ＭＵＸ０〜ＭＵＸ１２７による内部信号の選択を規定する”選択規定値”に関する情報を有している。”選択規定値”は、ＭＵＸ０〜ＭＵＸ１２７に制御信号（ｓｅｌ）としてそれぞれ与えられる３ビットの値であり、制御レジスタ１１０に記憶させる値である。よって、”観測信号名”に対応する”選択規定値”を対応する制御レジスタ１１０に記憶させることによって、ＭＵＸ０〜ＭＵＸ１２７の選択を切り替え、”観測信号名”に対応する内部信号をＦＰＧＡ２の外部に出力させて観測することが可能となる。
【００８６】
変換ツール２５が出力した検証用ＲＴＬソースファイル４２は、回路検証装置１のＦＰＧＡ２に回路として構成するため、ＦＰＧＡ２のハードウェア構成に適した回路構成情報に変換する必要がある。よって、設計者はコンパイルツール２６を用いてこの変換、即ちコンパイルを行う。コンパイルツール２６は、検証用ＲＴＬソースファイル４２を読み取って取得すると共に、図示しないＦＰＧＡ２のハードウェア構成に係る情報を取得してコンパイルを行い、ＦＰＧＡ用ネットリスト４４を生成して出力するようにしてある。
【００８７】
図７は、ＦＰＧＡ用ネットリスト４４に回路構成情報が記述された検証用回路の一例を示す模式図である。被検証回路とＭＵＸ０〜ＭＵＸ１２７及び制御レジスタ１１０等を含む検証用回路は、コンパイルツール２６によりコンパイルされた場合、図示のように階層構造を有しない、即ち１階層の回路構成に変換されて、論理回路を構成するためのＦＰＧＡ２内の回路要素を配線で接続した回路構成となる。
【００８８】
設計者は、コンパイルツール２６が生成したＦＰＧＡ用ネットリスト４４をＰＣ２０から回路検証装置１へ送信してＦＰＧＡ２へ与え、ＦＰＧＡ２に図７に示した検証用の回路を構成させる。その後、ＰＣ２０にて検証ツール２７を起動し、検証ツール２７を用いてＦＰＧＡ２に構成された被検証回路への入力信号の入力及び出力信号の取得等を行い、被検証回路の動作が正しいか否かを検証することができるようにしてある。
【００８９】
検証ツール２７は、例えば、予め設計者が作成した入力信号のテストパタンをＰＣ２０から回路検証装置１のメモリ３へ送信し、メモリ３からＦＰＧＡ２内に構成された被検証回路へテストパタンを入力することができる。また、ＦＰＧＡ２から出力されてメモリ４に記憶された被検証回路の出力信号及び内部信号を通信用デバイス６を介して取得し、ＰＣ２０にてテキストファイル又はバイナリファイル等に保存して設計者が予め用意した期待値ファイルとの比較を行う、又は取得した内部信号を波形として表示する等の処理を行うことができる。また、設計者は、検証ツール２７を用いてＦＰＧＡ２から出力される被検証回路の内部信号、即ち観測信号の切り替えを行うことができる。
【００９０】
図８は、検証ツール２７による観測信号の選択画面の一例を示す模式図であり、検証ツール２７がＰＣ２０のディスプレイ上に表示する選択画面である。設計者は、観測信号を選択して切り替える場合には、検証ツール２７に図示のような観測信号選択ウィンドウを表示させ、このウィンドウに一覧表示される観測信号名から所望の信号を選択することにより観測信号を切り替えることができるようにしてある。検証ツール２７は、変換ツール２５が出力した制御情報ファイル４３を読み込んで取得することにより、制御情報ファイル４３の”観測信号名”及び”出力ビット位置”を観測信号選択ウィンドウに一覧として表示すると共に、一覧表示した信号毎にトグル的に選択／非選択を行うことができるチェックボックスを”選択フラグ”として表示するようにしてある。
【００９１】
設計者はチェックボックスをチェックすることで観測信号を選択できるようにしてあり、検証ツール２７は、設計者が一のチェックボックスをチェックして観測信号を選択した場合、選択された信号の“出力ビット位置”の値を調べて、この値と“出力ビット位置”が同じ値の他の信号全てについてチェックボックスのチェックを外して、他の信号を非選択とするようにしてある。
【００９２】
設計者はチェックボックスをチェックした後、観測信号選択ウィンドウの更新ボタンを操作することにより選択を確定させることができ、検証ツール２７は設計者の選択に応じて、制御情報ファイル４３の対応する”選択規定値”を取得し、回路検証装置１のＦＰＧＡ２内の制御レジスタ１１０へ”選択規定値”を記憶させることにより、ＭＵＸ０〜ＭＵＸ１２７による信号の選択を切り替え、設計者が選択した被検証回路の内部信号をＦＰＧＡ２外へ出力させるようにしてある。
【００９３】
図９は、検証ツール２７による観測信号の切り替え処理の手順を示すフローチャートであり、設計者が観測信号選択ウィンドウを表示させた後からの処理について図示してある。検証ツール２７は、観測信号選択ウィンドウに設けられた更新ボタンが操作されたか否かを調べ（ステップＳ１）、更新ボタンが操作されていない場合には（Ｓ１：ＮＯ）、更新ボタンが操作されるまで待機する。
【００９４】
更新ボタンが操作された場合（Ｓ１：ＹＥＳ）、制御情報ファイル４３から制御情報を読み出して（ステップＳ２）、選択された信号に対応する”選択規定値”を調べることにより、制御レジスタ１１０に記憶させるレジスタ値を決定し（ステップＳ３）、決定したレジスタ値を回路検証装置１へ送信する（ステップＳ４）。これにより、回路検証装置１では受信したレジスタ値をＦＰＧＡ２内の制御レジスタ１１０に記憶させるため、ＭＵＸ０〜ＭＵＸ１２７による信号の選択がレジスタ値に応じて切り替わり、出力される内部信号が切り替わる。
【００９５】
以上の構成の回路検証システムにおいては、設計者が設計した被検証回路に、変換ツール２５がＭＵＸ０〜ＭＵＸ１２７及び制御レジスタ１１０を自動的に追加して検証用ＲＴＬソースファイル４２を出力するため、設計者は設計した被検証回路の回路構成情報を有するＲＴＬソースファイル４０と、観測する内部信号の信号名を記述した観測信号設定ファイル４１とを用意するのみでよいため、回路検証を容易に行うことができる。また、ＭＵＸ０〜ＭＵＸ１２７及び制御レジスタ１１０を用いることにより、コンパイルを繰り返し行うことなく、外部で観測する信号を切り替えることができるため、検証期間を短縮することができる。また、観測信号設定ファイル４１に被検証回路の回路ブロックのインスタンス名及び信号名を連ねた識別子を”観測信号名”として記述することができ、検証ツール２７にて同じ”観測信号名”を表示して設計者に信号の選択を行わせることができるため、設計者にとって使い勝手のよい回路検証システムを提供することができる。
【００９６】
なお、本実施の形態においては、１つのＰＣ２０内に変換ツール２５、コンパイルツール２６及び検証ツール２７等のソフトウェアプログラムが記憶してある構成としたが、これに限るものではなく、それぞれが別のＰＣにて動作する構成としてもよい。また、変換ツール２５及びコンパイルツール２６を別のソフトウェアプログラムとしたが、これに限るものではなく、変換ツール２５の機能をコンパイルツール２６が備える（又はコンパイルツール２６の機能を変換ツール２５が備える）構成として、１つのソフトウェアプログラムとしてもよい。この場合、検証用ＲＴＬソースファイル４２を生成する必要はなく、ＲＴＬソースファイル４０から直接的にＦＰＧＡ用ネットリスト４４を作成してもよい。また、図３に示した被検証回路の構成は一例であって、これに限るものではない。また、被検証回路の内部信号をＭＵＸ０〜ＭＵＸ１２７にて選択し、ＦＰＧＡ２の出力端子から出力してメモリ４に記憶させる構成としたが、これに限るものではなく、ＦＰＧＡ２内にメモリを設けてＭＵＸ０〜ＭＵＸ１２７の出力信号を記憶する構成としてもよく、ＦＰＧＡ２の出力端子から出力された信号を通信用デバイス６から直接的にＰＣ２０へ送信し、ＰＣ２０のメモリに記憶する構成としてもよく、その他の構成であってもよい。
【００９７】
（実施の形態２）
図１０は、本発明の実施の形態２に係る回路検証システムの変換ツール２５が生成した検証用ＲＴＬソースファイル４２に回路構成情報が記述された検証用回路の一例を示す模式図である。実施の形態１の場合、ＭＵＸ０〜ＭＵＸ１２７は８本の信号から１本の信号を選択する同じ構成のマルチプレクサとしたが（図５参照）、実施の形態２はＭＵＸ０〜ＭＵＸ１２７がそれぞれ異なる構成のマルチプレクサを含む場合である。
【００９８】
例えば、図示の例では、ＭＵＸ１２７は８本の信号から１本の信号を選択するマルチプレクサであり、ＭＵＸ１２６は４本の信号から１本の信号を選択するマルチプレクサであり、ＭＵＸ１２５は５本の信号から１本の信号を選択するマルチプレクサであり、ＭＵＸ１２４は１１本の信号から１本の信号を選択するマルチプレクサであり、ＭＵＸ０は６本の信号から１本の信号を選択するマルチプレクサである。よって、各ＭＵＸ０〜ＭＵＸ１２７の選択を規定する制御信号のビット幅は、ＭＵＸ０〜ＭＵＸ１２７毎に異なるため、制御レジスタ１１０のレジスタ長もこれに合わせて可変長とするか、又は最大長のものに合わせて固定長とする。
【００９９】
このように、各ＭＵＸの大きさを可変とすることにより、設計者は出力ビット位置に割り当てる観測信号の信号数を意識することなく観測信号設定ファイル４１の”出力ビット位置”に番号を記述することができるため、回路検証システムの利便性を向上することができると共に、ＦＰＧＡ２内の資源を効率よく利用することができる。
【０１００】
なお、実施の形態２に係る回路検証システムのその他の構成は、実施の形態１に係る回路検証システムの構成と同様であるため、対応する箇所には同じ符号を付して詳細な説明を省略する。
【０１０１】
（実施の形態３）
図１１は、本発明の実施の形態３に係る回路検証システムの変換ツール２５が生成した検証用ＲＴＬソースファイル４２に回路構成情報が記述された検証用回路の一例を示す模式図である。実施の形態１及び実施の形態２の場合、ＭＵＸ０〜ＭＵＸ１２７により選択された１２８本の信号をＦＰＧＡ２の１２８個の出力端子から出力する構成としたが、実施の形態３の場合は、ＭＵＸ０〜ＭＵＸ１２７により選択された１２８本の信号をＦＰＧＡ２の１個の出力端子からシリアル出力する構成である。
【０１０２】
変換ツール２５は、設計者が予め用意したＲＴＬソースファイル４０及び観測信号設定ファイル４１を読み込んで取得し、ＲＴＬソースファイル４０に回路構成情報が記載された被検証回路にＭＵＸ０〜ＭＵＸ１２７及び制御レジスタ１１０を追加すると共に、パラレル−シリアル変換回路３１５を追加するようにしてある。パラレル−シリアル変換回路３１５は、ＦＰＧＡ２の出力端子と共に被検証回路の内部信号を外部に出力するための本発明の出力手段をなし、ＭＵＸ０〜ＭＵＸ１２７が出力する１２８本の出力信号をサンプリングして、例えばＭＵＸ１２７の出力信号の値からＭＵＸ０の出力信号の値までを順にＦＰＧＡ２の出力端子から出力するものである。この場合、観測信号設定ファイル４１に記載された”出力ビット位置”は、シリアル信号として順に出力される１２８個の値のうちの何番目に出力される値であるか、即ち出力順位に相当する。
【０１０３】
このように、ＭＵＸ０〜ＭＵＸ１２７が選択して出力した１２８本の出力信号をシリアル信号に変換して出力する構成とすることにより、ＦＰＧＡ２の出力端子の数が少ない場合であっても、被検証回路の内部信号をより多く観測することができる。なお、パラレル−シリアル変換回路３１５が出力するシリアル信号は０〜１２７の出力信号の値をＭＳＢ（Ｍｏｓｔ  Ｓｉｇｎｉｆｉｃａｎｔ  Ｂｉｔ、最上位ビット）から出力してもよく、ＬＳＢ（Ｌｅａｓｔ  Ｓｉｇｎｉｆｉｃａｎｔ  Ｂｉｔ、最下位ビット）から出力してもよく、又は設計者が予め定めた順序で出力してもよい。また、パラレル−シリアル変換回路３１５は１２８本の出力信号を１本のシリアル信号に変換する構成としたが、これに限るものではなく、２本以上のシリアル信号に変換する構成としてもよい。この場合、設計者が観測信号設定ファイル４１の出力ビット位置として何本目のシリアル信号の何番目のビットに出力するかを指定するようにすればよい。
【０１０４】
なお、実施の形態３係る回路検証システムのその他の構成は、実施の形態１に係る回路検証システムの構成と同様であるため、対応する箇所には同じ符号を付して詳細な説明を省略する。
【０１０５】
（実施の形態４）
図１２は、本発明の実施の形態４に係る回路検証システムの変換ツール２５が生成した検証用ＲＴＬソースファイル４２に回路構成情報が記述された検証用回路の一例を示す模式図である。実施の形態１及び実施の形態２の場合、ＭＵＸ０〜ＭＵＸ１２７により選択された１２８本の信号を直接的にＦＰＧＡ２の１２８個の出力端子から出力する構成としたが、実施の形態４の場合は、ＭＵＸ０〜１２７により選択された信号を一時的にメモリ４１５に記憶する構成である。
【０１０６】
変換ツール２５は、設計者が予め用意したＲＴＬソースファイル４０及び観測信号設定ファイル４１を読み込んで取得し、ＲＴＬソースファイル４０に回路構成情報が記載された被検証回路にＭＵＸ０〜ＭＵＸ１２７及び制御レジスタ１１０を追加すると共に、メモリ４１５を追加するようにしてある。メモリ４１５は、ＦＰＧＡ２の出力端子と共に被検証回路の内部信号を外部に出力するための本発明の出力手段をなし、ＭＵＸ０〜ＭＵＸ１２７が出力する１２８本の出力信号の値を記憶するようにしてある。メモリ４１５に記憶された値は、回路検証装置１のＣＰＵ５から読み出すことができるようにしてあり、ＣＰＵ５は読み出した値をメモリ４に記憶するか、又は通信用デバイス６を介してＰＣ２０へ送信するようにしてある。
【０１０７】
なお、ＣＰＵ５がメモリ４１５から一度に読み出すデータサイズ、即ちメモリ４１５がＦＰＧＡ２から出力する出力信号の数は、ＭＵＸの数である１２８に等しくする必要はなく、これ以上であっても以下であってもよい。また、実施の形態３のようにパラレル−シリアル変換回路３１５を用いる場合には、メモリ４１５をＭＵＸ０〜ＭＵＸ１２７とパラレル−シリアル変換回路３１５との間、又はパラレル−シリアル変換回路３１５と出力端子との間に設ければよい。
【０１０８】
なお、実施の形態４係る回路検証システムのその他の構成は、実施の形態１に係る回路検証システムの構成と同様であるため、対応する箇所には同じ符号を付して詳細な説明を省略する。
【図面の簡単な説明】
【０１０９】
【図１】本発明に係る回路検証システムの構成を示すブロック図である。
【図２】本発明に係る回路検証システムにおいてＦＰＧＡへ与える回路構成情報を生成する手順を説明するための模式図である。
【図３】ＲＴＬソースファイルに回路構成情報が記述された被検証回路の一例を示す模式図である。
【図４】観測信号設定ファイルに記載される観測信号名の一例を示す模式図である。
【図５】検証用ＲＴＬソースファイルに回路構成情報が記述された検証用回路の一例を示す模式図である。
【図６】制御情報ファイルに含まれる制御情報の一例を示す模式図である。
【図７】ＦＰＧＡ用ネットリストに回路構成情報が記述された検証用回路の一例を示す模式図である。
【図８】検証ツールによる観測信号の選択画面の一例を示す模式図であり
【図９】検証ツールによる観測信号の切り替え処理の手順を示すフローチャートである。
【図１０】本発明の実施の形態２に係る回路検証システムの変換ツールが生成した検証用ＲＴＬソースファイルに回路構成情報が記述された検証用回路の一例を示す模式図である。
【図１１】本発明の実施の形態３に係る回路検証システムの変換ツールが生成した検証用ＲＴＬソースファイルに回路構成情報が記述された検証用回路の一例を示す模式図である。
【図１２】本発明の実施の形態４に係る回路検証システムの変換ツールが生成した検証用ＲＴＬソースファイルに回路構成情報が記述された検証用回路の一例を示す模式図である。
【符号の説明】
【０１１０】
１  回路検証装置
２  ＦＰＧＡ（プログラマブル素子）
３、４  メモリ
５  ＣＰＵ
６  通信用デバイス
２０  ＰＣ（回路構成情報生成装置、回路構成情報取得手段、生成手段、対応情報取得手段、制御装置、受付手段、更新手段、内部信号取得手段、表示手段）
２１  メモリ
２２  ＣＰＵ
２３  通信Ｉ／Ｆ（通信手段）
２４  ハードディスク
２５  変換ツール（回路構成情報生成プログラム）
２６  コンパイルツール
２７  検証ツール（制御プログラム）
４０  ＲＴＬソースファイル（被検証回路の回路構成情報）
４１  観測信号設定ファイル（対応情報）
４２  検証用ＲＴＬソースファイル（検証用回路の回路構成情報）
４３  制御情報ファイル
４４  ＦＰＧＡ用ネットリスト
１０１、１０２、１０３  出力端子
１１０  制御レジスタ（規定情報記憶部）
３１５  パラレル−シリアル変換回路
４１５  メモリ
ＭＵＸ０〜ＭＵＸ１２７  マルチプレクサ（選択回路）
【図１】
2008097131.tif 000003
【図２】
2008097131.tif 000004
【図３】
2008097131.tif 000005
【図４】
2008097131.tif 000006
【図５】
2008097131.tif 000007
【図６】
2008097131.tif 000008
【図７】
2008097131.tif 000009
【図８】
2008097131.tif 000010
【図９】
2008097131.tif 000011
【図１０】
2008097131.tif 000012
【図１１】
2008097131.tif 000013
【図１２】
2008097131.tif 000014