(57)【要約】【課題】ダウンロード時間やアップロード時間を短くしてより効率的な検証を可能とすること。【解決手段】ホストコンピュータ２０ａは、論理エミュレーション装置１０ａにダウンロードする回路データを圧縮するソフトウェア２１ａを備え、回路データを予め圧縮しデータサイズを小さくしてから論理エミュレーション装置１０ａにダウンロードする。論理エミュレーション装置１０ａが備える回路データ復元回路１３は、圧縮された回路データ３０を復元してプログラマブル論理ＬＳＩ１１および配線専用ＩＣ１２に転送する。【選択図】        図１
2005275569.tif 000002
【特許請求の範囲】
【請求項１】
プログラマブル論理ＬＳＩを用いた論理エミュレーション装置において、
外部から入力される圧縮された回路データを復元し前記プログラマブル論理ＬＳＩに転送する復元回路、 
を備えたことを特徴とする論理エミュレーション装置。
【請求項２】
プログラマブル論理ＬＳＩを用いた論理エミュレーション装置において、
外部から入力される圧縮された入力パターンファイルを復元し前記プログラマブル論理ＬＳＩに転送する復元回路と、
前記プログラマブル論理ＬＳＩからの出力パターンファイルを外部に出力する際にその出力パターンファイルを圧縮する圧縮回路と、
を備えたことを特徴とする論理エミュレーション装置。
【請求項３】
プログラマブル論理ＬＳＩを用いた論理エミュレーション装置とホストコンピュータとで構成され、
前記ホストコンピュータは、前記論理エミュレーション装置に対してダウンロードする回路データを圧縮するソフトウェアを備え、
前記論理エミュレーション装置は、前記ホストコンピュータからダウンロードされる圧縮された回路データを復元し前記プログラマブル論理ＬＳＩに転送する復元回路を備える、
ことを特徴とする論理エミュレーションシステム。
【請求項４】
プログラマブル論理ＬＳＩを用いた論理エミュレーション装置とホストコンピュータとで構成され、
前記ホストコンピュータは、前記論理エミュレーション装置に対してダウンロードする入力パターンファイルを圧縮するソフトウェア、および前記論理エミュレーション装置からアップロードされる圧縮された出力パターンファイルを復元するソフトウェアを備え、
前記論理エミュレーション装置は、ホストコンピュータからダウンロードされる圧縮された入力パターンファイルを復元し前記プログラマブル論理ＬＳＩに転送する復元回路、および前記プログラマブル論理ＬＳＩからの出力パターンファイルを前記ホストコンピュータにアップロードする際にその出力パターンファイルを圧縮する圧縮回路を備える、
ことを特徴とする論理エミュレーションシステム。
【請求項５】
プログラマブル論理ＬＳＩを用いた論理エミュレーション装置とホストコンピュータとで構成され、
前記論理エミュレーション装置は、前記ホストコンピュータからダウンロードされる圧縮された入力パターンを復元し前記プログラマブル論理ＬＳＩに転送する復元回路、および前記プログラマブル論理ＬＳＩからの出力パターンを前記ホストコンピュータにアップロードする際にその出力パターンを圧縮する圧縮回路を備え、
前記ホストコンピュータは、入力パターンの生成と出力パターンの検証とを行うシミュレーションソフトウェア、前記論理エミュレーション装置に対してダウンロードする前記入力パターンを圧縮するソフトウェア、前記論理エミュレーション装置からアップロードされる圧縮された出力パターンを復元し前記シミュレーションソフトウェアに与えるソフトウェア、および前記圧縮回路および復元回路と前記圧縮・復元ソフトウェアとをそれぞれ前記シミュレーションソフトウェアに同期して動作させる制御手段を備える、
ことを特徴とする論理エミュレーションシステム。
【請求項６】
ホストコンピュータ上で動作する圧縮ソフトウェアを用いて回路データを圧縮し、プログラマブル論理ＬＳＩを用いた論理エミュレーション装置にダウンロードする工程と、
前記論理エミュレーション装置においてダウンロードされる圧縮された回路データを復元し、前記プログラマブル論理ＬＳＩに転送する工程と、
を含むことを特徴とする論理エミュレーション方法。
【請求項７】
ホストコンピュータ上で動作する圧縮ソフトウェアを用いて入力パターンファイルを圧縮し、プログラマブル論理ＬＳＩを用いた論理エミュレーション装置にダウンロードする工程と、
前記論理エミュレーション装置においてダウンロードされる圧縮された入力パターンファイルを復元し、前記プログラマブル論理ＬＳＩに転送する工程と、
前記論理エミュレーション装置において前記プログラマブル論理ＬＳＩからの出力パターンファイルを圧縮し、前記ホストコンピュータにアップロードする工程と、
前記ホストコンピュータ上で動作する復元ソフトウェアを用いて前記アップロードされる圧縮された出力パターンファイルを復元する工程と、
を含むことを特徴とする論理エミュレーション方法。
【請求項８】
ホストコンピュータ上で動作するシミュレーションソフトウェアを用いて入力パターンを生成する工程と、
前記ホストコンピュータ上で動作する圧縮ソフトウェアを用いて前記入力パターンを圧縮し、プログラマブル論理ＬＳＩを用いた論理エミュレーション装置にダウンロードする工程と、
前記論理エミュレーション装置においてダウンロードされる圧縮された入力パターンを復元し、前記プログラマブル論理ＬＳＩに転送する工程と、
前記論理エミュレーション装置において前記プログラマブル論理ＬＳＩからの出力パターンを圧縮し、前記ホストコンピュータにアップロードする工程と、
前記ホストコンピュータ上で動作する復元ソフトウェアを用いて前記アップロードされる圧縮された出力パターンを復元し、前記シミュレーションソフトウェアに入力して検証する工程と、を含み、
前記ホストコンピュータ上で動作する圧縮・復元ソフトウェアによる圧縮・復元および前記論理エミュレーション装置における圧縮・復元工程は、前記ホストコンピュータ上で動作するシミュレーションソフトウェアと同期して実施される、
ことを特徴とする論理エミュレーション方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ＬＳＩ設計時の検証に使用する論理エミュレーション装置、システムおよび方法に関し、特にプログラマブル論理ＬＳＩを用いた論理エミュレーション装置、システムおよび方法に関するものである。
【背景技術】
【０００２】
ＬＳＩ設計時にその設計した論理回路を検証する方法としては、ソフトウェアシミュレータによる方法とハードウェアエミュレータによる方法とがある。ソフトウェアシミュレータは、ＨＤＬで記述された論理情報をコンピュータプログラムとして実行する方法である。ハードウェアエミュレータは、ＦＰＧＡ（Field Programmable Gate Array）などのプログラマブル論理ＬＳＩを用い、外部からの入力信号に基づいて論理構造を構成させる方法である。
【０００３】
例えば、特許文献１では、複数のプログラマブル論理ＬＳＩと動的に信号の流れが変更可能な結線専用ＩＣとを有した論理エミュレーション装置に対し、ワークステーションなどのホストコンピュータにて回路データ（回路情報および結線情報）を作成してダウンロードし、実際の動作速度に近い速度で動作させ検証を行うようにした論理シミュレーションシステムが開示されている。
【０００４】
また、特許文献２では、ホストコンピュータにて論理シミュレーションを実行し、論理エミュレーション装置との協調検証を行う論理検証装置が開示されている。
【０００５】
また、特許文献３では、エミュレーションモデルと共にテストベンチおよびテストパターンも一緒に論理エミュレーション装置にプログラムする論理エミュレーションシステムが開示されている。
【０００６】
【特許文献１】特開平８−７７２１６号公報
【特許文献２】特開２０００−２１５２２６号公報
【特許文献３】特開平９−１４６７８８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、プログラマブル論理ＬＳＩを用いた論理エミュレーション装置では、ホストコンピュータにて回路データを作成し、論理エミュレーション装置にダウンロードするが、設計規模が大きくなるのに伴ってダウンロード時間が長くなるという問題がある。
【０００８】
また、論理エミュレーション装置に回路データと共にテストベンチ、入力パターンをダウンロードする場合は、入力パターンが長大になるにつれて、ダウンロード時間も長くなるという問題がある。
【０００９】
さらに、エミュレータで発生した出力パターンをホストコンピュータにアップロードする場合にも、出力パターンが長大であれば、アップロードの時間が長くなるという問題がある。
【００１０】
この発明は、上記に鑑みてなされたものであり、ダウンロード時間やアップロード時間を短くしてより効率的な検証を可能とする論理エミュレーション装置、システムおよび方法を得ることを目的とする。
【課題を解決するための手段】
【００１１】
上述した目的を達成するために、この発明は、プログラマブル論理ＬＳＩを用いた論理エミュレーション装置において、ホストコンピュータからダウンロードされる圧縮された回路データを復元し前記プログラマブル論理ＬＳＩに転送する復元回路を備えたことを特徴とする。
【００１２】
この発明によれば、外部の例えばホストコンピュータでは、回路データを予め圧縮しデータサイズを小さくしてから論理エミュレーション装置にダウンロードするので、論理エミュレーション装置では、短時間にダウンロードを終了させることができ、より効率的に検証を実行することができるようになる。
【発明の効果】
【００１３】
この発明によれば、ダウンロード時間やアップロード時間を短くしてより効率的な検証を可能とするという効果を奏する。
【発明を実施するための最良の形態】
【００１４】
以下に図面を参照して、この発明にかかる論理エミュレーション装置、システムおよび方法の好適な実施の形態を詳細に説明する。
【００１５】
実施の形態１．
図１は、この発明の実施の形態１である論理エミュレーションシステムの構成を示すブロック図である。図１において、論理エミュレーション装置１０ａは、多数のプログラマブル論理ＬＳＩ１１および配線専用ＩＣ１２に加えて回路データ復元回路１３が設けられている。
【００１６】
多数のプログラマブル論理ＬＳＩ１１および配線専用ＩＣ１２は、回路データ復元回路１３に接続されている。また、多数のプログラマブル論理ＬＳＩ１１は、配線専用ＩＣ１２を介して互いに接続されている。
【００１７】
この論理エミュレーション装置１０ａに対して回路データをダウンロードするホストコンピュータ２０ａ上で動作するソフトウェア２１ａには、論理エミュレーション装置１０ａにダウンロードする回路データを圧縮するソフトウェアが含まれ、回路データを予め圧縮しデータサイズを小さくしてから論理エミュレーション装置１０ａにダウンロードするようになっている。
【００１８】
このようにホストコンピュータ２０ａにて圧縮された回路データ３０は、回路データ復元回路１３に入力される。回路データ復元回路１３は、圧縮された回路データ３０を復元してプログラマブル論理ＬＳＩ１１および配線専用ＩＣ１２に転送する。ダウンロードされる回路データはデータサイズが小さいので、短時間にダウンロードは終了する。
【００１９】
これによって、プログラマブル論理ＬＳＩ１１では、エミュレーションモデルおよびテストベンチモデルが形成され（実施の形態２）、あるいは、エミュレーションモデルが形成される（実施の形態３）ので、より効率的に検証を実行することができる。
【００２０】
ここで、回路データ復元回路１３は、ホストコンピュータ２０ａ上のソフトウェア２１ａにて実行される圧縮方法に対応する方法で回路データの復元を行うようになっている。その実現方法としては、例えばＬＺ法を用いることができる。
【００２１】
ＬＺ法とは、１６進数のコードの集まりとして表される回路データにおいて、以前に現れた文字列を＜位置、長さ＞のペアで置き換える方法である。例えば、ＣＢＡ９８ＣＢＡ７６（それぞれ１６進数）では、２回目に現れた“ＣＢＡ”は、５文字前の３文字と一致するので、ＣＢＡ９８＜５，３＞７６と符号化する。
【００２２】
そのとき、両文字は重なっていても良い。例えばＣＢＣＢＣＢＣは、ＣＢ＜２，５＞となり圧縮される。上記の復元アルゴリズムを実現する具体的な方法としては、メモリとデジタル回路とを用いて実現する方法や、メモリとＣＰＵとソフトウェアとを用いて実現する方法があり、いずれで実現してもよい。
【００２３】
なお、図１では、論理エミュレーション装置１０ａは、プログラマブル論理ＬＳＩ１１と配線専用ＩＣ１２と回路データ復元回路１３とで構成されているが、以上の説明から理解できるように、１以上のプログラマブル論理ＬＳＩとそれらに回路データを分配する回路データ復元回路１３とで構成するようにしても良い。
【００２４】
このように、実施の形態１によれば、論理エミュレーション装置に対して回路データをダウンロードするホストコンピュータは、回路データを予め圧縮しデータサイズを小さくしてから論理エミュレーション装置にダウンロードするようになっているので、論理エミュレーション装置では、短時間にダウンロードを終了させることができ、より効率的に検証を実行することができるようになる。
【００２５】
実施の形態２．
図２は、この発明の実施の形態２である論理エミュレーションシステムの構成を示すブロック図である。この実施の形態２では、ホストコンピュータからダウンロードされた回路データによって論理エミュレーション装置にエミュレーションモデルおよびテストベンチモデルを生成さして検証を実行し、検証結果をホストコンピュータにアップロードする場合の構成例が示されている。
【００２６】
すなわち、図２に示すように、論理エミュレーション装置１０ｂでは、実施の形態１（図１）にて説明した方法で復元された回路データに基づき、実施の形態１（図１）にて示したプログラマブル論理ＬＳＩにエミュレーションモデル１５の機能ブロックと、テストベンチモデル１６の機能ブロックとが形成されている。
【００２７】
この実施の形態２では、その後の検証を実現するために、圧縮してダウンロードされた入力パターンファイル３１を記憶する記憶回路と、記憶された入力パターンファイル３１を復元し、テストベンチモデル１６に与える入力パターン復元回路１３と、テストベンチモデル１６から出力される出力パターンを圧縮する出力パターン圧縮回路１４と、圧縮された出力パターンをアップロードするための出力パターンファイル３２として記憶する記憶回路とを備えている。
【００２８】
対するホストコンピュータ２０ｂが備えるソフトウェア２１ｂは、ダウンロードする入力パターンファイル３１を圧縮する機能と、圧縮してアップロードされた出力パターンファイル３２を復元する機能とを備えている。
【００２９】
一般的に、論理回路の検証では、長大な入力パターンをエミュレーションモデルの入力端子に印加し、その結果としてエミュレーションモデルから出力される出力パターンをチェックする。このような論理回路の検証では、入力パターンファイルとして、“０”もしく“１”を羅列したファイルを作成する。そして、テストベンチモデルでは、入力パターンファイルを一定時間毎に読み込むことや、出力パターンのファイルへの書き込みなどを行う場合がある。
【００３０】
図３は、入力パターンファイルの例である。図３に示すように、入力パターンファイルは、エミュレーションモデルのポート名４１と、“０”もしく“１”が羅列されている入力パターン４２とで構成される。この入力パターン４１が、一定時間毎に一行ずつテストベンチに読み込まれ、エミュレーションモデルの各ポートに印加される。なお、図示省略したが、出力パターンファイルも同様の形式で一定時間毎に出力パターンがテストベンチモデルに取り込まれファイル化される。
【００３１】
この実施の形態２による論理エミュレーションシステムでは、このような入力パターンファイルや出力パターンファイルを作成する検証手法を実現するものである。
【００３２】
図２において、まず、ホストコンピュータ２０ｂ上のソフトウェア２１ｂが持つ圧縮機能によって圧縮された入力パターンファイル３１が論理エミュレーション装置１０ｂにダウンロードされる。論理エミュレーション装置１０ｂでは、入力パターン復元回路１３にて復元されたテストパターンファイルがテストベンチ１６を経由してエミュレーションモデル１５に印加され、論理回路の検証が実行される。
【００３３】
次に、エミュレーションモデル１５から出力された出力パターンは、テストベンチ１６を経由して出力パターン圧縮回路１４に入力され、圧縮された出力パターンファイル３２がホストコンピュータ２０ｂにアップロードされる。ホストコンピュータ２０ｂでは、圧縮された出力パターンファイル３２がソフトウェア２１ｂの持つ復元機能によって復元される。
【００３４】
なお、入力パターン復元回路１３が用いる復元方法は、ホストコンピュータ２０ｂ上で実行される圧縮方法に対応した方法である。具体的な実現手段としては、例えば入力パターンファイルの多ビットを文字データに対応させ、その文字データに対し、実施の形態１にて説明したＬＺ法を用いることができる。また、出力パターン圧縮回路１４が用いる圧縮方法もホストコンピュータ２０ｂ上で実行される復元方法に対応する方法であり、実現手段としては、同様にＬＺ法を用いることができる。
【００３５】
このように、実施の形態２によれば、エミュレーション装置とホストコンピュータとの間では、入出力パターンファイルを圧縮してデータサイズを小さくしてから授受するようにしたので、転送速度の高速化と通信トラヒックの低減とが図れる。
【００３６】
実施の形態３．
図４は、この発明の実施の形態３である論理エミュレーションシステムの構成を示すブロック図である。この実施の形態３では、ホストコンピュータからダウンロードされた回路データによって論理エミュレーション装置にエミュレーションモデルを生成しておき、ホストコンピュータ上でシミュレーションソフトウェアにテストベンチを実行させ、入力パターンを論理エミュレーション装置にダウンロードして検証を実行し、検証結果をホストコンピュータにアップロードする場合の構成例が示されている。
【００３７】
すなわち、図４に示すように、論理エミュレーション装置１０ｃでは、実施の形態１（図１）にて説明した方法で復元された回路データに基づき、実施の形態１（図１）にて示したプログラマブル論理ＬＳＩにエミュレーションモデル１５の機能ブロックが形成されている。
【００３８】
この実施の形態３では、その後の検証を実現するために、圧縮してダウンロードされた入力パターン３３を記憶する記憶回路と、記憶された入力パターン３３を復元し、エミュレーションモデル１５に与える入力パターン復元回路１３と、エミュレーションモデル１５から出力される出力パターンを圧縮する出力パターン圧縮回路１４と、圧縮された出力パターンをアップロードするための出力パターン３４として記憶する記憶回路とを備えている。
【００３９】
対するホストコンピュータ２０ｃが備えるソフトウェア２１ｃは、テストベンチを実行して入力パターンを生成するシミュレーションソフトウェアと、ダウンロードする入力パターンを圧縮する機能と、圧縮してアップロードされた出力パターンを復元する機能とを備えている。さらに、ホストコンピュータ２０ｃでは、論理エミュレーション装置１０ｃが備える入力パターン復元回路１３および出力パターン復元回路１４とソフトウェア２１ｃが持つ圧縮機能・復元機能とをソフトウェア２１ｃが持つシミュレーションソフトウェアに同期して動作させる制御手段を備えている。
【００４０】
一般的に、論理回路の検証では、実施の形態２にて説明した入力テストパターンファイルや出力パターンファイルを作成する場合と、そのような入力テストパターンファイルや出力パターンファイルを作成しない場合とがある。この実施の形態３では、後者の方法が実現される。
【００４１】
すなわち、この実施の形態３では、テストベンチをＶｅｒｉｌｏｇ−ＨＤＬやＶＨＤＬのようなシミュレーション用の言語で機能的に記述し、シミュレーションソフトウェアを用いて、シミュレーション対象の回路モデルと同時にテストベンチを動作させ、逐次入力パターンを発生させ、同時に逐次出力パターンをテストベンチで評価し検証を行う方法を実現するようになっている。
【００４２】
この場合には、テストベンチは複雑になり、出力パターンを評価するためエミュレーション装置にダウンロードできるモデルにすることは困難になる。そのため、テストベンチはシミュレーションソフトウェアで実行しなければならないので、まず、検証対象回路モデル（エミュレーションモデル）をエミュレーション装置にダウンロードし、その後、ホストコンピュータ上のシミュレーションソフトウェアを用いてテストベンチを実行し、ホストコンピュータから入力パターンをエミュレーション装置に転送しながらエミュレーションを実行することになる。
【００４３】
この場合、入力パターンと出力パターンは、一定時間毎に同期を取って逐次ホストコンピュータとエミュレーション装置間を転送する必要があるので、この転送速度がエミュレーション速度を決定することになる。
【００４４】
図４において、まず、ホストコンピュータ２０ｃ上のソフトウェア２１ｃにて、シミュレーションソフトウエアによるテストベンチ実行によって入力パターンを発生し、その入力パターンを圧縮する。その圧縮された入力パターンデータ３３がエミュレーション装置１０ｃに転送される。
【００４５】
論理エミュレーション装置１０ｃでは、圧縮された入力パターン３３が入力パターン復元回路１３にて復元され、論理エミュレーション装置１０ｂにダウンロードしたエミュレーションモデル１５に印加され、論理回路の検証が実行される。
【００４６】
次に、エミュレーションモデル１５から出力された出力パターンは、出力パターン圧縮回路１４に入力され、圧縮された出力パターン３４がホストコンピュータ２０ｃにアップロードされる。ホストコンピュータ２０ｃ上のソフトウェア２１ｃでは、圧縮された出力パターン３４が復元され、シミュレーションソフトウェアにて検証結果についてテストベンチが実行される。
【００４７】
このように、実施の形態３によれば、エミュレーション装置とホストコンピュータとの間では、入出力パターンをファイル圧縮してデータサイズを小さくしてから授受するようにしたので、転送速度の高速化と通信トラヒックの低減とが図れるのに加えて、ホストコンピュータ上でテストベンチを実行するので、エミュレーション装置でのエミュレーション速度の高速化が図れる。
【産業上の利用可能性】
【００４８】
以上のように、この発明にかかるエミュレーション装置、システムおよび方法は、ダウンロード時間やアップロード時間を短くしてより効率的な検証を可能とするエミュレーション装置、システムおよび方法として有用である。
【図面の簡単な説明】
【００４９】
【図１】この発明の実施の形態１である論理エミュレーションシステムの構成を示すブロック図である。
【図２】この発明の実施の形態２である論理エミュレーションシステムの構成を示すブロック図である。
【図３】図２に示すテストベンチが操作する入力パターンファイルの一例を示す図である。
【図４】この発明の実施の形態３である論理エミュレーションシステムの構成を示すブロック図である。
【符号の説明】
【００５０】
１０ａ，１０ｂ，１０ｃ  論理エミュレーション装置、
１１  プログラマブル論理ＬＳＩ、
１２  配線専用ＩＣ、
１３  回路データ復元回路、
１４  入力パターン復元回路、
１５  出力パターン復元回路、
１６  エミュレーションモデル
１７  テストベンチモデル、
２０ａ，２０ｂ，２０ｃ  ホストコンピュータ、
２１ａ，２１ｂ，２１ｃ  ホストコンピュータ上のソフトウェア、
３０  圧縮された回路データ、
３１  圧縮された入力パターンファイル、
３２  圧縮された出力パターンファイル、
３３  圧縮された入力パターン、
３４  圧縮された出力パターン
４１  ポート名、
４２  入力パターン。
【図１】
2005275569.tif 000003
【図２】
2005275569.tif 000004
【図３】
2005275569.tif 000005
【図４】
2005275569.tif 000006