(57)【要約】【課題】システムを構成する装置ごとのマニュアル操作を不要にし、検証結果をリアルタイムで抽出して期待値比較を実施し、システムを同期化する。【解決手段】ＬＳＩ検証装置に、ハードウェアエミュレータ１０１と、これを制御するＰＣ１０２と、ハードウェアエミュレータ上にマッピングされた回路を制御するＣＰＵ−ＩＣＥ１０５と、これを制御するＰＣ１０６と、検証環境に付随する周辺装置１０７と、これを制御するＰＣ１０８と、システム制御ＰＣ１０９とを具備し、システム制御ＰＣはＬＳＩ検証における制御手順を記述した複数の検証シナリオを保持し、この検証シナリオに従ってハードウェアエミュレータおよびＣＰＵ−ＩＣＥおよび周辺装置を、それぞれを制御するＰＣを介して制御する。【選択図】　図１
2004070497.tif 000002
【特許請求の範囲】
【請求項１】
ハードウェアエミュレータと、
前記ハードウェアエミュレータを制御するコンピュータと、
前記ハードウェアエミュレータ上にマッピングされた回路を制御するＣＰＵ−ＩＣＥと、
前記ＣＰＵ−ＩＣＥを制御するコンピュータと、
検証環境に付随する周辺装置と、
前記周辺装置を制御するコンピュータと、
前記ハードウェアエミュレータを制御するコンピュータ、前記ＣＰＵ−ＩＣＥを制御するコンピュータおよび前記周辺装置を制御するコンピュータを制御するシステム制御コンピュータと、
を具備することを特徴とするＬＳＩ検証装置。
【請求項２】
前記システム制御コンピュータはＬＳＩ検証における制御手順を記述した複数の検証シナリオを保持し、前記検証シナリオに従って前記ハードウェアエミュレータを制御するコンピュータ、前記ＣＰＵ−ＩＣＥを制御するコンピュータおよび前記周辺装置を制御するコンピュータを制御することを特徴とする請求項１記載のＬＳＩ検証装置。
【請求項３】
前記システム制御コンピュータは前記ハードウェアエミュレータを制御するコンピュータから前記ハードウェアエミュレータの内部メモリデータを抽出し、検証実行中にリアルタイムで前記ハードウェアエミュレータの出力データと期待値の比較を行うことを特徴とする請求項１または２記載のＬＳＩ検証装置。
【請求項４】
前記システム制御コンピュータは前記ハードウェアエミュレータの実行サイクル数を取り込む手段を有し、前記実行サイクル数に基づいて前記ハードウェアエミュレータ、前記ＣＰＵ−ＩＣＥおよび前記周辺装置を同期させて検証を行うことを特徴とする請求項１から３のいずれか一項記載のＬＳＩ検証装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ハードウェアエミュレータを用いてＬＳＩ検証を行うＬＳＩ検証装置に関する。
【０００２】
【従来の技術】
近年、システムＬＳＩの開発においては、回路規模の増大に伴ってシステムＬＳＩの検証項目が増大し検証時間も増加する傾向にある。その対策として、検証時間の短縮と検証の効率化を図るために、ハードウェアエミュレータを用いた検証が利用されるようになってきている。
【０００３】
図４は、従来のハードウェアエミュレータを用いたＬＳＩ検証装置のシステム構成を示す図である。図４において、１０１はハードウェアエミュレータ、１０２はハードウェアエミュレータ１０１を制御するコンピュータ（以下、ＰＣと記す）、１０３は実機評価装置、１０４は実機評価装置１０３を制御するＰＣ、１０５はＣＰＵ−ＩＣＥ、１０６はＣＰＵ−ＩＣＥ１０５を制御するＰＣ、１０７は周辺装置、１０８は周辺装置１０７を制御するＰＣである。
【０００４】
以上のように構成されたＬＳＩ検証装置について、以下にその動作を説明する。まず、ＰＣ１０２よりハードウェアエミュレータ１０１に対して検証対象回路のダウンロードを行う。次に、ハードウェアエミュレータ１０１にマッピングされた検証対象回路を動作させるために、ＰＣ１０６よりＣＰＵ−ＩＣＥ１０５に対してＣＰＵソフトウェアのローディングを行う。次に、ＰＣ１０８より周辺装置１０７に対して検証パターンの入力ファイルの選択、検証結果の保存ファイルの選択を行う。
【０００５】
これらの検証準備がすべて終了した時点で、ＰＣ１０２からハードウェアエミュレータ１０１を起動する。次に、ＰＣ１０８から周辺装置１０７を起動する。次に、ＰＣ１０６からＣＰＵ−ＩＣＥ１０５を起動して検証をスタートさせる。
【０００６】
検証が終了したら、ＰＣ１０６からＣＰＵ−ＩＣＥ１０５を停止させ、次いで、周辺装置１０７、ハードウェアエミュレータ１０１を停止させることでＬＳＩ検証装置を停止させる。最後に、周辺装置１０７より出力した検証結果を期待値と照合することにより検証結果の確認を行う。
【０００７】
【発明が解決しようとする課題】
従来のハードウェアエミュレータを用いたＬＳＩ検証装置では、ハードウェアエミュレータ１０１と、ＣＰＵ−ＩＣＥ１０５と、周辺装置１０７を制御するために、それぞれにＰＣを独立して持っていた。そのため、それぞれを起動／停止するにもマニュアル操作が必要となり、検証パターンごとにそれぞれを再起動し操作する必要があった。
【０００８】
また、検証システムの同期化を図ることが困難なため、周辺装置を含めた検証タイミングを常に同一にすることが困難であった。また、検証パターン終了後に期待値比較を実施していたため、期待値比較で不一致が発生した場合には再度初めから検証を実施する必要があった。
【０００９】
このように従来のＬＳＩ検証装置では、このシステムを構成する装置個別のマニュアル操作が必要となり、期待値比較を検証終了後に実施しているために検証時間が増大し、検証の効率化を図ることが困難であった。また、システムの同期化ができないため、期待値不一致が発生した際に周辺タイミングを含めた再検証を実施することが難しく、原因解析が困難であるという問題があった。
【００１０】
本発明は、上記従来の問題点を解決するもので、ＬＳＩ検証装置システムを構成する装置ごとのマニュアル操作が不要で、検証結果をリアルタイムで抽出して期待値比較を実施することができ、システムを同期化することができるハードウェアエミュレータを用いたＬＳＩ検証装置を提供することを目的とする。
【００１１】
【課題を解決するための手段】
この課題を解決するために、本発明の請求項１に係るＬＳＩ検証装置は、ハードウェアエミュレータと、ハードウェアエミュレータを制御するＰＣと、ハードウェアエミュレータ上にマッピングされた回路を制御するＣＰＵ−ＩＣＥと、ＣＰＵ−ＩＣＥを制御するＰＣと、検証環境に付随する周辺装置と、周辺装置を制御するＰＣと、ハードウェアエミュレータを制御するＰＣ、ＣＰＵ−ＩＣＥを制御するＰＣおよび周辺装置を制御するＰＣを制御するシステム制御ＰＣと、を具備するものである。
【００１２】
上記構成によれば、ハードウェアエミュレータ、ＣＰＵ−ＩＣＥ、周辺装置をそれぞれ制御するＰＣを１つのシステム制御ＰＣにより制御するため、それぞれに対するマニュアル操作が不要となり、システムの同期化を図ること、検証結果をリアルタイムで抽出して期待値比較を実施すること、自動的に複数の検証パターンを連続して検証すること、などを可能にするためのシステム構成が得られる。
【００１３】
本発明の請求項２に係るＬＳＩ検証装置は、請求項１記載のＬＳＩ検証装置において、システム制御ＰＣはＬＳＩ検証における制御手順を記述した複数の検証シナリオを保持し、前記検証シナリオに従ってハードウェアエミュレータを制御するＰＣ、ＣＰＵ−ＩＣＥを制御するＰＣおよび周辺装置を制御するＰＣを制御するものである。
【００１４】
上記構成によれば、システム制御ＰＣが保持する複数の検証シナリオに従ってＬＳＩ検証を実行するため、自動的に複数の検証パターンを連続して検証することが可能となる。
【００１５】
本発明の請求項３に係るＬＳＩ検証装置は、請求項１または２記載のＬＳＩ検証装置において、システム制御ＰＣはハードウェアエミュレータを制御するＰＣからハードウェアエミュレータの内部メモリデータを抽出し、検証実行中にリアルタイムでハードウェアエミュレータの出力データと期待値の比較を行うものである。
【００１６】
上記構成によれば、ハードウェアエミュレータの内部メモリデータを抽出することにより、検証実行中にリアルタイムで前記ハードウェアエミュレータの出力データと期待値の比較を行うため、期待値不一致が発生した際の情報をハードウェアエミュレータの状態とともに保存することができ、周辺タイミングを含めた再検証を実施することが容易になる。
【００１７】
本発明の請求項４に係るＬＳＩ検証装置は、請求項１から３のいずれか一項記載のＬＳＩ検証装置において、システム制御ＰＣはハードウェアエミュレータの実行サイクル数を取り込む手段を有し、前記実行サイクル数に基づいてハードウェアエミュレータおよびＣＰＵ−ＩＣＥおよび周辺装置を同期させて検証を行うものである。
【００１８】
上記構成によれば、ハードウェアエミュレータおよびＣＰＵ−ＩＣＥおよび周辺装置を同期させて検証を行うことができるため、期待値不一致が発生した際に周辺タイミングを含めた再検証を実施することが容易になる。
【００１９】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照しながら説明する。
図１は本発明の一実施の形態に係るハードウェアエミュレータを用いたＬＳＩ検証装置のシステム構成を示す図である。
【００２０】
図１において、１０１はハードウェアエミュレータ、１０２はハードウェアエミュレータ１０１を制御するＰＣ、１０３は実機評価装置、１０４は実機評価装置１０３を制御するＰＣ、１０５はＣＰＵ−ＩＣＥ、１０６はＣＰＵ−ＩＣＥ１０５を制御するＰＣ、１０７は周辺装置、１０８は周辺装置１０７を制御するＰＣ、１０９はシステム制御ＰＣ、１１０はシステム制御ＰＣ１０９のデータベースである。システム制御ＰＣ１０９は通信インタフェース１１１によってＰＣ１０２、ＰＣ１０４、ＰＣ１０６、ＰＣ１０８と接続され、それぞれを制御する。
【００２１】
図２は、上記のように構成されたＬＳＩ検証装置における検証工程を示すフローチャートである。図２において、２０１は検証シナリオを作成する工程、２０２は検証を起動させる工程、２０３はリアルタイムで期待値比較を実施する工程、２０４は検証を停止させる工程、２０５は次の検証を起動させる工程、２０６は期待値比較で不一致が発生した検証を停止させる工程、２０７は検証の実行サイクル数と検証を停止させた時点での回路内部のメモリデータを抽出する工程、２０８は２０７で抽出したデータをテキストファイルとしてＰＣ内部に保存する工程、２０９は期待値比較で不一致が発生した検証の原因解析を実施する工程である。
【００２２】
図３は、図１においてシステム制御ＰＣ１０９に付属させるハードウェアエミュレータの実行サイクル数カウンタに係るシステム構成を示す接続図である。図３において、３０１はハードウェアエミュレータのリセット信号、３０２はハードウェアエミュレータの動作クロック信号、３０３はハードウェアエミュレータの実行サイクル数カウンタである。
【００２３】
ハードウェアエミュレータのリセット信号３０１は、ＣＰＵ−ＩＣＥ１０５からハードウェアエミュレータ１０１、周辺装置、システム制御ＰＣ１０９に供給される。ハードウェアエミュレータの動作クロック信号３０２は、ＣＰＵ−ＩＣＥ１０５、周辺装置１０７、システム制御ＰＣ１０９に供給される。実行サイクル数カウンタ３０３は前記リセット信号と前記クロック信号によって生成される。このような構成により、実行サイクル数を使用してＬＳＩ検証装置におけるシステム内の同期化を図ることができる。
【００２４】
以上のように構成されたＬＳＩ検証装置について、以下その動作について説明する。検証シナリオ作成工程２０１では、システム制御ＰＣ１０９上にて、検証パターンごとに、ＣＰＵ−ＩＣＥ１０５からハードウェアエミュレータ１０１に与える一連の命令をコマンドファイルに生成し、入力ファイルの選択、出力データの保存ファイルの選択、検証の起動／停止を記述して検証シナリオとして作成する。
【００２５】
次に、システム制御ＰＣ１０９上で工程２０１で作成した検証シナリオを実行させる。システム制御ＰＣ１０９は、通信インタフェース１１１を介して最初の検証を起動させる工程２０２を実行させる。工程２０２により、ＣＰＵ−ＩＣＥ１０５からハードウェアエミュレータ１０１へのリセット信号３０１が解除され、コマンドファイルの命令が実行されることで検証シナリオによる検証が実行され、出力データが周辺装置１０７に保存される。
【００２６】
検証が実行されると、システム制御ＰＣ１０９は、周辺装置制御ＰＣ１０８から通信インタフェース１１１を介して出力データを抽出し、システム制御ＰＣ１０９に用意されている期待値とリアルタイムで期待値比較を行う工程２０３を実行する。同時に、システム制御ＰＣ１０９は、ハードウェアエミュレータ１０１の動作クロック３０２により生成された実行サイクル数カウンタ３０３の値を検証起動時に記録し内部に保存する。
【００２７】
期待値比較工程２０３で、比較結果が一致しているときは検証を続行させる。期待値不一致が発生せずに検証パターンが終了すると、システム制御ＰＣ１０９は通信インタフェース１１１を介してＣＰＵ−ＩＣＥ１０５からハードウェアエミュレータ１０１に対してリセットを実行させ、検証を停止させる。検証が停止した時点で、検証シナリオに従い次の検証を起動させる工程２０５へと移行する。
【００２８】
期待値比較工程２０３において、比較結果の不一致が発生した場合は、システム制御ＰＣ１０９は通信インタフェース１１１を介してＣＰＵ−ＩＣＥ１０５からハードウェアエミュレータ１０１に対してリセット信号３０１を出力して、検証を停止させる。
【００２９】
システム制御ＰＣ１０９は、検証を停止した時点のハードウェアエミュレータの実行サイクル数を実行サイクル数カウンタ３０３から抽出し、さらに、通信インタフェース１１１を介してハードウェアエミュレータ１０１上の内部メモリデータを抽出する。システム制御ＰＣ１０９は、これらのデータを検証番号とともにデータとして保存する。
【００３０】
次にシステム制御ＰＣ１０９は、検証シナリオファイルに従って次の検証へと進む。期待値不一致が発生した検証の不具合解析については、前記工程２０１で作成したデータをもとに実行サイクル数の手前まで再度検証を実行し、エラーが発生する時点での内部ノード、メモリデータなどを参照したながら不具合の解析を行っていく。
【００３１】
以上のように本実施の形態によれば、システム制御ＰＣ１０９上から検証シナリオに従って複数の検証を連続して実行することが可能となり、また、リアルタイムで期待値比較を実施するため、検証時間の短縮を実現することができる。
【００３２】
また、システム制御ＰＣ１０９によって、検証装置を構成するシステムの同期化を実現するので、検証の再現性の向上が期待でき、またリアルタイムで検証を実行しながら検証の実行サイクル数やメモリデータの抽出を行うので、回路の不具合原因解析が容易となり、システムＬＳＩの開発期間短縮に大きな効果をもたらす。
【００３３】
【発明の効果】
以上説明したように、本発明によれば、１つのシステム制御ＰＣにより、ハードウェアエミュレータ、ＣＰＵ−ＩＣＥ、周辺装置を制御することにより、それぞれの装置に対するマニュアル操作が不要となり、システムの同期化を図ることができ、また、検証結果をリアルタイムで抽出して期待値比較を実施することができ、さらに、自動的に複数の検証パターンを連続して検証することが可能となるため、検証時間の短縮および効率化と不具合解析時間の短縮を図ることができ、システムＬＳＩ開発期間を短縮することができるという優れた効果が得られる。
【図面の簡単な説明】
【図１】本発明の一実施の形態に係るハードウェアエミュレータを用いたＬＳＩ検証装置のシステム構成を示す図。
【図２】本発明の一実施の形態に係るハードウェアエミュレータを用いたＬＳＩ検証装置における検証工程を示すフローチャート。
【図３】ハードウェアエミュレータの実行サイクル数カウンタに係るシステム構成を示す接続図。
【図４】従来のハードウェアエミュレータを用いたＬＳＩ検証装置のシステム構成を示す図。
【符号の説明】
１０１　ハードウェアエミュレータ
１０２　ハードウェアエミュレータ制御用ＰＣ
１０３　実機評価装置
１０４　実機評価装置制御用ＰＣ
１０５　ＣＰＵ−ＩＣＥ
１０６　ＣＰＵ−ＩＣＥ制御用ＰＣ
１０７　周辺装置
１０８　周辺装置制御用ＰＣ
１０９　検証装置制御用システム制御ＰＣ
１１０　検証装置制御用システム制御ＰＣのデータベース
１１１　通信インタフェース
２０１　検証シナリオを作成する工程
２０２　検証を起動させる工程
２０３　リアルタイムで期待値比較を実施する工程
２０４　検証を停止させる工程
２０５　次の検証を起動させる工程
２０６　検証を停止させる工程
２０７　実行サイクル数とエミュレータのメモリデータを抽出する工程
２０８　エラー情報作成工程
２０９　検証の原因解析を実施する工程
３０１　ハードウェアエミュレータの動作クロック
３０２　ハードウェアエミュレータに対するリセット信号
３０３　実行サイクル数カウンタ
【図１】
2004070497.tif 000003
【図２】
2004070497.tif 000004
【図３】
2004070497.tif 000005
【図４】
2004070497.tif 000006