(57)【要約】【課題】ホスト転送中のレジスタアクセスなど、通常のデータ転送と異なりまれに発生する現象に対して実チップで評価するＬＳＩ評価装置を提供する。【解決手段】ホストコントローラとＬＳＩ１１との間のインタフェースの制御信号に対し、制御プログラムに記述された制御信号への読み書き込み命令を制御ソフト１４が解読し、ＭＰＵ制御部１０を経由して、インタフェースの制御信号を設定するレジスタのアドレスをアドレスバス２０経由で、また制御信号の値をデータバス２０経由で入出力する。レジスタ制御部１５が制御信号の値を無効にし、選択回路５４が、ホストコントローラの制御信号を無効にしかつレジスタ制御部経由で設定された制御信号の値を有効にすることにより、強制的にインタフェースの制御信号を駆動したり制御信号の状態を取得したりする。【選択図】　　　図１
2004110317.tif 000002
【特許請求の範囲】
【請求項１】
ホストコンピュータと接続される周辺機器に組み込まれるＬＳＩを評価するためのＬＳＩ評価装置であって、
コンピュータ側でデータ送受信を行なうホストコントローラと、
周辺機器側でデータ送受信を行なうＬＳＩと、
前記ホストコントローラとＬＳＩとをインタフェース規格に基づいて接続した信号線の状態を設定するレジスタ制御部と、
レジスタ制御部からインタフェース規格に基づいた信号線でＬＳＩと接続されるとともに、ホストコントローラの信号線とレジスタ制御部の信号線とのいずれか一方を選択する選択回路と、
ＬＳＩとジスタ制御部とに接続され、ＬＳＩへはデータ転送を起動するコマンドを送信するとともに、レジスタ制御部へは、インタフェース規格に基づいた信号線の状態についての情報と選択回路を有効にするか無効にするかを示す情報とを送信するＭＰＵ制御部と、
を備えたＬＳＩ評価装置。
【請求項２】
レジスタ制御部にマッピングされたアドレスにデータを書き込む命令を解読して、アドレスとデータをレジスタ制御部に送信する制御ソフトを有し、
選択回路は、レジスタ制御部が受信したデータにより、ホストコントローラの制御信号とレジスタ制御部の制御信号とを切り替え、レジスタ制御部に設定された制御信号の状態を出力することにより制御信号を駆動するように構成されている、
請求項１記載のＬＳＩ評価装置。
【請求項３】
レジスタ制御部にマッピングされたアドレスからデータを読み出す命令を解読して、アドレスをレジスタ制御部に送信するとともに、レジスタ制御部が受信したアドレスにより、ホストコントローラの制御信号の状態をデータとして読み出す制御ソフトと、
前記制御ソフトが読み出した状態を判別して処理を行なう制御プログラムと、
を備えた請求項１記載のＬＳＩ評価装置。
【請求項４】
ハードウエア記述言語のプログラムを構文解析する構文解析部と、中間コードを生成する中間コード生成部と、前記中間コード生成部が出力した中間コードから、イベント監視処理を意味する中間コードを検出するイベント監視処理検出部と、前記イベント監視処理と逐次処理を分離し中間コードを配置する中間コード交換部と、前記イベント監視処理、逐次処理、イベントが発生した時に実行するサブルーチンの順序でプログラムを出力するコード生成部とで構成された変換部を備えたＬＳＩ評価装置。
【請求項５】
中間コード生成部はイベント監視処理内で閉じたループを形成するプログラムを出力するように構成されている請求項４記載のＬＳＩ評価装置。
【請求項６】
イベント監視処理検出部はハードウエア記述言語のａｌｗａｙｓ文を検出するように構成されている請求項４記載のＬＳＩ評価装置。
【請求項７】
中間コード交換部は、イベント監視処理検出部が検出する中間コードのノードと、このノードに付属する処理の中間コードの実行順序を先頭に設定し、そのノードを含む中間コードを先頭に配置するように構成されている請求項４記載のＬＳＩ評価装置。
【請求項８】
イベント監視処理を前半に、逐次処理を後半に配置された制御プログラムと、
前記制御プログラムを解読する制御ソフトと、
前記イベント監視処理の実行中のアドレスを格納する第１のプログラムカウンタと、
前記逐次処理の実行中のアドレスを格納する第２のプログラムカウンタと、
第１のプログラムカウンタに示すアドレスから取り出した命令と、第２のプログラムカウンタに示すアドレスから取り出した命令とを、同時あるいは交互に実行する解読器と、
を備えたＬＳＩ評価装置。
【請求項９】
イベント監視処理の実行中にホストコントローラのデータ転送状態を示す制御信号を監視する監視手段と、
前記制御信号がデータ転送中を示す状態であることを検出する検出手段と、
前記検出手段がデータ転送中の状態を検出したときにデータ転送を止める制御信号をレジスタ制御部に設定し、選択回路で切り替えて制御信号を駆動する駆動手段と、
前記検出手段がデータ転送停止状態を検出したときにホストコントローラからインタフェースのレジスタにアクセスするアクセス手段と、
割り込みレジスタの値を読み出す手段と、
を備えた請求項８記載のＬＳＩ評価装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はＬＳＩ評価装置に関し、特にホストコンピュータと接続される周辺機器に組み込まれるＬＳＩの設計過程においてチップの動作検証を行なうＬＳＩ評価装置に関するものである。
【０００２】
【従来の技術】
近年、ＬＳＩの大規模集積化に伴い、ＬＳＩの設計検証は次のようにして行われている。すなわち、ハードウエア記述言語たとえばＶｅｒｉｌｏｇＨＤＬで回路設計を行い、このハードウエア記述言語で記述された回路に対し複数のテストパターンをハードウエア記述言語で作成しシミュレーションを行なうことで回路の動作検証を行ない、その後、論理合成やレイアウト設計等を経て、実チップを製作している。その例として、特開２０００−２７６５１３号公報に記載されたＬＳＩ評価装置があげられる。
【０００３】
この特開２０００−２７６５１３号公報のＬＳＩ評価装置においては、ハードウエア記述言語の検査環境部上で動作するＭＰＵプログラムから、評価ボード検証環境部上で動作するＭＰＵプログラムへの変換を行うための、ＭＰＵ変換部が設けられている。このようなＭＰＵ変換部として、図１０に示すような変換部が考えられる。
【０００４】
図１０において、変換部６は、構文解析部６１とコード生成部６２とを有した構成とされている。構文解析部６１は、ハードウエア記述言語で記述されたＭＰＵ＆ホスト動作モデル４を入力として、ハードウエア記述言語の構文に従って解析するものである。コード生成部６２は、構文解析部６１が解析した構文に対して、プログラム言語で記述された制御プログラム１３を出力するものである。
【０００５】
上記の変換部６は特開２０００−２７６５１３号公報のＬＳＩ評価装置の「ＭＰＵ変換部９」に対応し、上記のＭＰＵ＆ホスト動作モデル４は同評価装置の「ＭＰＵ動作モデル６」に対応し、上記の制御プログラム１３は同評価装置の「ＭＰＵプログラム１３」に対応する。
【０００６】
変換部６の入力となるハードウエア記述言語すなわちＭＰＵ＆ホスト動作モデル４は、具体的にはＶＨＤＬ、ＶｅｒｉｌｏｇＨＤＬを含み、ハードウエアを一種のスクリプト言語で表現したプログラム一般にて構成される。
【０００７】
コード生成部６２が出力するプログラム言語すなわち制御プログラム１３は、コンピュータで使用されるプログラム言語全般にて構成され、具体的にはＣ言語、ＦＯＲＴＲＡＮ、ＢＡＳＩＣなどの高級言語、アセンブル言語、機械語や、独自仕様のスクリプト言語も含まれる。
【０００８】
図１１は、図１０に示した従来のＬＳＩ評価装置の変換部６の入力となるハードウエア記述言語すなわちＭＰＵ＆ホスト動作モデル４の例を示した図である。この図１１では、具体的には、ホスト転送中（ＬＳＩ→仮想ホスト）に一時的にＦＩＦＯが空になり、デバイス側からストップをかけてきたにもかかわらず、ホストからレジスタアクセスしにきたときにイリーガルアクセス割り込みが発生するかどうかを検証するテストプログラムを想定している。この図１１において、小文字は信号およびビットを示す。大文字はレジスタを示し、複数ビットにて構成される。
【０００９】
図１１において、ＲＥＡＤＲＥＧ１〜３レジスタは、テンポラリのレジスタを示す。ＨＳＴＰＡＲＡレジスタは、ホストのデータ転送バイト数を設定するレジスタである。ＯＤＣＣＭＤレジスタは、ホストのデータ転送を示すコマンドを設定するレジスタである。ＨＡＤＡＴレジスタは、例えばＡＴＡ規格で示されたＡＴＡレジスタのうちのデータレジスタを示す。
【００１０】
また図１１において、６０１は始まりを示す文である。６０２はｄｍａｃｔｒビットを０に設定する文である。６０３はｉｏｒｄｙ信号をＬｏｗに設定する文である。６０４はｉｏｒｄ信号をＨｉｇｈに設定する文である。６０５はｉｎｔｃ信号を０に設定する文である。６０６はＲＥＡＤＲＥＧ１レジスタに０を設定する文である。６０７はＲＥＡＤＲＥＧ２レジスタに０を設定する文である。６０８はＲＥＡＤＲＥＧ３レジスタに０を設定する文である。６０９はＨＳＴＰＡＲＡレジスタに１を設定する文である。６１０はＯＤＣＣＭＤレジスタに４を設定する文である。この文を実行することによってホスト転送が開始する。またこれと同時にｄｍａｃｔｒビットがＨｉｇｈになり、ｉｏｒｄｙ信号もＨｉｇｈになる。６１１はイベントリスト（ｄｍａｃｔｒビット）の信号を監視し、ｄｍａｃｔｒビットがＨｉｇｈになったとき、すなわちホスト転送が開始したとき、後続のｂｅｇｉｎ〜ｅｎｄを実行するという文である。６１２はＲＥＡＤＲＥＧ１レジスタに１を設定する文である。６１３はｉｏｒｄｙ信号をＬｏｗに設定する文である。これはデバイスからｉｏｒｄｙ信号を落とすことによってストップをかけることを意図している文である。６１４は６１１のｂｅｇｉｎに対する入れ子の終わりを示す文である。６１５は、イベントリスト（ｉｏｒｄｙビット）の信号を監視し、ｉｏｒｄｙビットがＬｏｗになったとき、後続のｂｅｇｉｎ〜ｅｎｄの中を実行するという文である。６１６はＨＡＤＡＴレジスタの値を読み出し、ＲＥＡＤＲＥＧ１レジスタに設定する文である。これはレジスタアクセスを意図している文である。６１７はｉｏｒｄ信号の値をＲＥＡＤＲＥＧ２レジスタに設定する文である。信号がＨｉｇｈならば１、Ｌｏｗならば０が設定される。６１８はｉｎｔｃ信号の値をＲＥＡＤＲＥＧ３レジスタに設定する文である。信号がＨｉｇｈならば１、Ｌｏｗならば０が設定される。６１９は６１４のｂｅｇｉｎに対する終了を示す文である。６２０は６０１のｂｅｇｉｎに対する終了を示す文である。６２１はモジュールの終了を示す文である。
【００１１】
図１２は、図１１のハードウエア記述言語で記述されたテストプログラムに対して、従来のＬＳＩ評価装置の変換部６が出力する制御プログラム１３を示す。ここで、７０１はｄｍａｃｔｒビットを０に設定する文である。７０２はｉｏｒｄｙ信号をＬｏｗに設定する文である。７０３はｉｏｒｄ信号をＨｉｇｈに設定する文である。７０４はｉｎｔｃ信号を０に設定する文である。７０５はＲＥＡＤＲＥＧ１レジスタに０を設定する文である。７０６はＲＥＡＤＲＥＧ２レジスタに０を設定する文である。７０７はＲＥＡＤＲＥＧ３レジスタに０を設定する文である。７０８はＨＳＴＰＡＲＡレジスタに１を設定する文である。７０９はＯＤＣＣＭＤレジスタに４を設定する文である。７１０はｄｍａｃｔｒビットが１になるまでウエイトし、条件成立したら後続の７１１、７１２を実行する文である。７１１はＲＥＡＤＲＥＧ１レジスタに１を設定する文である。７１２はｉｏｒｄｙ信号を０に設定する文である。７１３はｉｏｒｄｙビットが０になるまでウエイトし、条件が成立したら後続の７１４、７１５、７１６、７１７を実行する文である。７１４はＨＡＤＡＴレジスタの値を読み出し、ＲＥＡＤＲＥＧ１レジスタに設定する文である。７１５はｉｏｒｄの値をＲＥＡＤＲＥＧ２レジスタに設定する文である。７１６はｉｎｔｃの値をＲＥＡＤＲＥＧ３レジスタに設定する文である。
【００１２】
【特許文献１】
特開２０００−２７６５１３号公報
【００１３】
【発明が解決しようとする課題】
例えば図１１に示すようなテストプログラムに関して、デバイス（＝ＬＳＩ）からストップをかけるには、データ転送中に一時的にＦＩＦＯが空の状態を作り出すことによってｉｏｒｄｙ信号をＬｏｗにしてやらなければならない。しかしながら、特開２０００−２７６５１３号公報に記載された従来のＬＳＩ評価装置では、タイミング的にこの状態を作り出すのが困難である。また、さらにこの状態でホストからアクセスするようなタイミングを意図的に作り出すのが困難である。
【００１４】
具体的には、図１２に示す制御プログラム１３に対して、制御ソフトからｉｏｒｄｙやｉｏｒｄ、ｉｎｔｃなどのＡＴＡ規格で定められたインターフェースの制御信号を駆動することができない。すなわち、７０２、７０３、７０４、７１２の文は、従来のＬＳＩ評価装置では具体的に実現することはできない。
【００１５】
また、制御ソフトが図１２で示す制御プログラムを１行づつ解釈しながら動作するので、７１０、７１３の信号が変化したかどうかを検出するためのｄｍａｃｔｒが１であることの検出は、７０９行を実行した後でしか行うことができない。例えば、７０９行以前や以後、例えば７０７行目を実行中にｄｍａｃｔｒが変化した時には検出できない。
【００１６】
つまり、ホスト転送中に、デバイス側からストップをかけてきたにもかかわらず、ホストからレジスタアクセスしにきたときにイリーガルアクセス割り込みが発生するかどうかというような検証を行なうことがタイミング的に困難であり、このような転送中のアクセスなど、ある信号を常に監視して、その信号が変化したときに、第１の処理を動作しつつ第２の処理を動作させるような、ホストを制御する処理とＬＳＩを制御する処理とを並列に動作させることが困難である。
【００１７】
また、図１０の変換部６では、ハードウエア記述言語で記述されたＭＰＵ＆ホスト動作モデル４の一文一文に対し、１対１に対応するプログラム言語で記述された制御プログラム１３で出力するので、命令の順序すなわち実行順序は変わらない。つまり、変換部６の変換前のハードウエア記述言語のテストプログラムと、変換後の制御プログラムの実行順序は変わらない。
【００１８】
本発明は、このような問題点を解決して、ホスト転送中のレジスタアクセスなど、通常のデータ転送と異なりまれに発生する現象に対して実チップで評価するＬＳＩ評価装置を提供することを目的とする。
【００１９】
また本発明は、ある信号を常に監視して、その信号が変化したときに第１の処理を動作しつつ第２の処理を動作させるような、ホストを制御する処理とＬＳＩを制御する処理を並列に動作するための実チップ評価を行うためのＬＳＩ評価装置を提供することを目的とする。
【００２０】
【課題を解決するための手段】
この目的を達成するため本発明は、ホストコンピュータと接続される周辺機器に組み込まれるＬＳＩを評価するためのＬＳＩ評価装置が、コンピュータ側でデータ送受信を行なうホストコントローラと、周辺機器側でデータ送受信を行なうＬＳＩと、前記ホストコントローラとＬＳＩとをインタフェース規格に基づいて接続した信号線の状態を設定するレジスタ制御部と、レジスタ制御部からインタフェース規格に基づいた信号線でＬＳＩと接続されるとともに、ホストコントローラの信号線とレジスタ制御部の信号線とのいずれか一方を選択する選択回路と、ＬＳＩとジスタ制御部とに接続され、ＬＳＩへはデータ転送を起動するコマンドを送信するとともに、レジスタ制御部へは、インタフェース規格に基づいた信号線の状態についての情報と選択回路を有効にするか無効にするかを示す情報とを送信するＭＰＵ制御部と、を備えたものである。
【００２１】
このような構成であると、ホストコントローラから制御しているインターフェース規格で定められた信号と切り替えて、レジスタ制御部から信号を制御することができる。
【００２２】
また本発明は、上記において、レジスタ制御部にマッピングされたアドレスにデータを書き込む命令を解読して、アドレスとデータをレジスタ制御部に送信する制御ソフトを有し、選択回路が、レジスタ制御部が受信したデータにより、ホストコントローラの制御信号とレジスタ制御部の制御信号とを切り替え、レジスタ制御部に設定された制御信号の状態を出力する。
【００２３】
このような構成であると、制御ソフトからインターフェース規格で定められた制御信号を駆動することができる。
また本発明は、上記において、レジスタ制御部にマッピングされたアドレスからデータを読み出す命令を解読して、アドレスをレジスタ制御部に送信するとともに、レジスタ制御部が受信したアドレスにより、ホストコントローラの制御信号の状態をデータとして読み出す制御ソフトと、前記制御ソフトが読み出した状態を判別して処理を行なう制御プログラムとを備えたものである。
【００２４】
このような構成であると、ホスト転送中に、デバイス側からストップをかけてきたにもかかわらず、ホストからレジスタアクセスしにきたときにイリーガルアクセス割り込みが発生するかどうかというような検証を行うことができる。このような転送中のアクセスなど、ある信号を常に監視して、その信号が変化したときに、第１の処理を動作しつつ第２の処理を動作させるような、ホストを制御する処理とＬＳＩを制御する処理とを並列に動作させることができる。
【００２５】
また本発明は、ハードウエア記述言語のプログラムを構文解析する構文解析部と、中間コードを生成する中間コード生成部と、前記中間コード生成部が出力した中間コードから、イベント監視処理を意味する中間コードを検出するイベント監視処理検出部と、前記イベント監視処理と逐次処理を分離し中間コードを配置する中間コード交換部と、前記イベント監視処理、逐次処理、イベントが発生した時に実行するサブルーチンの順序でプログラムを出力するコード生成部とで構成された変換部を備えたものである。
【００２６】
このような構成であると、ハードウエア記述言語で記述されたテストプログラムを、イベント監視処理と逐次処理とに分離して実行順序を入れ替えたプログラムを生成することができる。
【００２７】
また本発明は、上記において、中間コード生成部がイベント監視処理内で閉じたループを形成するプログラムを出力するように構成したものである。
このような構成であると、イベント監視処理を常に実行しながら、逐次処理を動作させることができる。
【００２８】
また本発明は、上記において、イベント監視処理検出部がハードウエア記述言語のａｌｗａｙｓ文を検出するように構成したものである。
このような構成であると、例えばＶｅｒｉｌｏｇＨＤＬなどのハードウエア記述言語で記述されたテストプログラムから、実チップで評価するプログラムを生成することができ、プログラム作成工数が削減できる。
【００２９】
また本発明は、上記において、中間コード交換部が、イベント監視処理検出部が検出する中間コードのノードと、このノードに付属する処理の中間コードの実行順序を先頭に設定し、そのノードを含む中間コードを先頭に配置するように構成したものである。
【００３０】
このような構成であると、ハードウエア記述言語で記述されたテストプログラムから、中間コードの段階で、イベント監視処理と逐次処理とに分離して実行順序を入れ替えたプログラムを生成することができる。
【００３１】
また本発明は、イベント監視処理を前半に、逐次処理を後半に配置された制御プログラムと、前記制御プログラムを解読する制御ソフトと、前記イベント監視処理の実行中のアドレスを格納する第１のプログラムカウンタと、前記逐次処理の実行中のアドレスを格納する第２のプログラムカウンタと、第１のプログラムカウンタに示すアドレスから取り出した命令と、第２のプログラムカウンタに示すアドレスから取り出した命令とを、同時あるいは交互に実行する解読器とを備えたものである。
【００３２】
このような構成であると、ある信号を常に監視して、その信号が変化したときに、第１の処理を動作しつつ第２の処理を動作させるような、ホストを制御する処理とＬＳＩを制御する処理とを並列に動作させることができる。
【００３３】
また本発明は、上記において、イベント監視処理の実行中にホストコントローラのデータ転送状態を示す制御信号を監視する監視手段と、前記制御信号がデータ転送中を示す状態であることを検出する検出手段と、前記検出手段がデータ転送中の状態を検出したときにデータ転送を止める制御信号をレジスタ制御部に設定し、選択回路で切り替えて制御信号を駆動する駆動手段と、前記検出手段がデータ転送停止状態を検出したときにホストコントローラからインタフェースのレジスタにアクセスするアクセス手段と、割り込みレジスタの値を読み出す手段とを備えたものである。
【００３４】
このような構成であると、ホスト転送中に、デバイス側からストップをかけてきたにもかかわらず、ホストからレジスタアクセスしにきたときにイリーガルアクセス割り込みが発生するかどうかというような検証をすることができる。
【００３５】
【発明の実施の形態】
本発明を図面にもとづいて具体的に説明する。
本発明においては、具体的には評価対象のＬＳＩは図３で示されるシステムを想定している。図３では、コンピュータ３０１と周辺装置３０３がインタフェースケーブル３０４によって接続され、周辺装置３０３には同装置を制御するコントローラＬＳＩ３０２が搭載されている。このコントローラＬＳＩ３０２を評価する。ここでインタフェースケーブル３０４は、具体的にはＡＴＡＰＩ、ＳＣＳＩ、ＵＳＢ、ＩＥＥＥ１３９４などのインタフェースのケーブルを示し、周辺装置としてはＤＶＤ、ＣＤ、ハードディスク、プリンタ、デジタルビデオカメラ、デジタルカメラ、スキャナなどがある。
【００３６】
図１および図２に示す本発明にもとづくＬＳＩ評価装置は、ＭＰＵ制御部１０から仮想ホスト１２に接続されるバス２０を有する。仮想ホスト１２は、この仮想ホスト１２とＬＳＩ１１との間のインタフェースの信号を、制御ソフト１４、Ｉ／Ｏポート９、ＭＰＵ制御部１０、バス２０を経由して直接制御するレジスタ制御部１５を備えるとともに、図２に示すホストコントローラ２３の信号かレジスタ制御部１５の信号かのどちらかを選択する選択回路５４を備える。
【００３７】
このような構成により、ホストコントローラ２３とＬＳＩ１１との間のインタフェースの制御信号に対し、制御プログラム１３に記述された制御信号への書き込み命令を制御ソフト１４が解読し、ＭＰＵ制御部１０を経由して、インタフェースの制御信号を設定するレジスタのアドレスを図２のアドレスバス４７に出力するとともに、制御信号の設定値をデータバス４８に出力し、この制御信号の設定値によって、選択回路５４がホストコントローラ２３の制御信号を無効にし、レジスタ制御部１５を経由して設定された制御信号の設定値を有効にすることにより、強制的にインタフェースの制御信号を駆動する。これにより、データ転送中の途中中断状態を作り出すことができる。
【００３８】
また、制御プログラム１３に記述された制御信号の読み出し命令を制御ソフト１４が解読し、ＭＰＵ制御部１０を経由して、インタフェースの制御信号を読み出すレジスタのアドレスをアドレスバス４７に出力し、レジスタ制御部１５が制御信号の状態を読み出し、さらにデータバス４７、ＭＰＵ制御部１０、Ｉ／Ｏポート９を経由して制御ソフト１４が読み出す。
【００３９】
これにより、制御信号の状態を判別して処理を行なうような制御プログラムを実行することができる。
また、図４に示すように、変換部６は、中間コード生成部６３が生成した中間コードからイベントを監視する文を意味するノードを検出するイベント監視処理検出部６４と、イベント監視処理検出部６４が検出するノードとノードに付属する処理の実行順序を先頭に設定し、そのノードを含む中間コードを先頭に配置する中間コード交換部６５とを備える。
【００４０】
このような構成により、ハードウエア記述言語で記述されたＭＰＵ＆ホスト動作モデルに対し、イベントを監視する命令を先頭に配置し、逐次処理をその後に配置し、イベントが発生した時に行なう処理を最後に配置するような制御プログラムを生成することができる。
【００４１】
また、図１および図７に示すように、制御プログラム１３と、制御ソフト１４と、コンピュータ８と、Ｉ／Ｏポート９と、イベント監視プログラム領域を示すアドレスの範囲でプログラムカウンタが動作する第１のプログラムカウンタ（ＰＣ１　９２１）と、逐次処理プログラム領域を示すアドレスの範囲でプログラムカウンタが動作する第２のプログラムカウンタ（ＰＣ２　９２２）と、第１のプログラムカウンタが示すアドレスと第２のプログラムカウンタが示すアドレスから命令を読み出し格納される命令バッファ９２３と、命令バッファ９２３の底９２４から命令を取り出し、内容を解読し、解読結果に対応する制御コードをＩ／Ｏポート９に出力する解読器９２８とを備える。
【００４２】
このような構成により、イベント監視処理と、逐次処理を交互に実行することにより、イベントが発生した時に実行する処理を、イベント変化に対してすぐに実行することができる。
【００４３】
以下、本発明の実施の形態について詳細に説明する。
図１は、本発明の実施の形態におけるＬＳＩ評価装置の構成図である。この図１において、１はＨＤＬ検証環境部であり、これはハードウエア記述言語で記述された回路に関してシミュレーションによる動作検証を行なうものであって、ＬＳＩモデル３、ＭＰＵ＆ホスト動作モデル４、ホスト入出力モデル５から構成される。
【００４４】
２はＬＳＩ評価環境部であり、製作した実チップに関して評価を行なうものであって、コンピュータ８、Ｉ／Ｏポート９、ＭＰＵ制御部１０、ＬＳＩ１１、仮想ホスト１２から構成される。６は変換部で、ハードウエア記述言語で記述されたＭＰＵ＆ホスト動作モデル４を、制御プログラム１３に変換するものである。７はホストデータ変換部で、仮想ホスト１２上のＲＡＭ１６からＬＳＩ１１へ転送するデータをハードウエア記述言語から１６進数値データに変換するものである。
【００４５】
次に上記各部の主要なブロックについて説明する。ＨＤＬ検証環境部１におけるＬＳＩモデル３は、設計開発対象であるＬＳＩ１１の回路をハードウエア記述言語で記述したものである。ＭＰＵ＆ホスト動作モデル４は、ＬＳＩモデル３に接続されているマイクロプロセッサおよび仮想ホストの動作を、ハードウエア記述言語で記述したものである。ホスト入出力モデル５は、ホストからの入出力データをＬＳＩモデル３との間で制御するものである。
【００４６】
ＬＳＩ評価環境部２において、コンピュータ８は、パソコン等の汎用のコンピュータで、汎用のＯＳと汎用言語で記述されたプログラムが動作し、汎用ポートであるＩ／Ｏポート９が付属している。Ｉ／Ｏポート９は、コンピュータ８と周辺装置とをつなぐための入出力インタフェースであり、例えばＩＤＥのポートがあげられる。
【００４７】
ＭＰＵ制御部１０は、ターゲットのＬＳＩ１１を制御するコントローラの役割を担うもので、Ｉ／Ｏポート９から送信されるデータを解釈実行する。ＬＳＩ１１は設計評価対象である半導体であり、図３に示すようなシステムに使われるＬＳＩである。また、このＬＳＩは転送データ用のＦＩＦＯ５５を備えている場合がある。
【００４８】
仮想ホスト１２は、ホストコンピュータと同等の動作をするコントローラであり、レジスタ制御部１５を備えている。
コンピュータ８において、制御プログラム１３は、ＭＰＵ制御部１０と仮想ホスト１２との制御をプログラム言語で記述したものである。制御ソフト１４は、制御プログラム１３の記述を解釈し、Ｉ／Ｏポート９を経由してＭＰＵ制御部１０にデータの入出力を行なうものである。
【００４９】
仮想ホスト１２において、レジスタ制御部１５は、ＭＰＵ制御部１０を経由してこのレジスタ制御部１５のレジスタにアクセスされることによって、選択回路５４を制御し、仮想ホスト１２とＬＳＩ１１との間のインタフェースバスの信号状態を取得したり、駆動したりするものである。ＲＡＭ１６は、データを格納しておくメモリで、ＬＳＩ１１からの受信データを格納、あるいはＬＳＩ１１への送信データを格納しておくものである。
【００５０】
ＭＰＵインタフェースレジスタ１７は、ＬＳＩ１１と接続され、ＭＰＵ制御部１０からアクセスされるレジスタである。
１８は、Ｉ／Ｏポート９とＭＰＵ制御部１０とを接続するバスで、汎用のインタフェースケーブルで構成されている。具体的には、例えばＡＴＡＰＩのケーブルがあげられる。１９は、ＭＰＵ制御部１０とＬＳＩ１１とを接続するバスで、具体的にはアドレスバスとデータバスとを持つ。２０は仮想ホスト１２とＭＰＵ制御部１０とを接続するバスで、具体的には図２のアドレスバス４７とデータバス４８で接続されている。２１は、仮想ホスト１２とＬＳＩ１１とを接続する汎用のインタフェースの機能を有したインターフェースバスである。例えば、ＡＴＡＰＩ規格で示された信号線、ＩＯＲＤＹ、ＤＭＡＲＱ（それぞれ、図２の３３、５６に相当する）、ＤＭＡＣＫ、ＩＯＲＤ、ＩＯＷＴ（それぞれ、図２の５７、４４、５８に相当する）などの制御信号と、ＨＤＤ０〜ＨＤＤ１５（図２の４６に相当する）のデータ線にて構成される。２２は、レジスタ制御部１５に接続されている選択回路５４の一部であり、インターフェースバス２１と接続される制御信号である。選択回路５４は、インタフェースバス２１の信号か、レジスタ制御部１５を経由した信号（図２の３５、３６に相当する）かを切り替える回路である。
【００５１】
図２は、図１のＬＳＩ１１、仮想ホスト１２、レジスタ制御部１５、ＲＡＭ１６、選択回路５４と、それぞれに接続されているバス２０、インタフェースバス２１、制御信号２２として示す信号線との関係を詳しくあらわしたものである。
【００５２】
図中の２３はホストコントローラで、コンピュータのインターフェース規格に基づいて、ＬＳＩ１１との間でデータ送受信を行なうものである。
図１のバス２０は、図２のアドレスバス４７、データバス４８に対応し、ＭＰＵ制御部１０から仮想ホスト１２に接続されている。アドレスバス４７の示すアドレスによってＲＡＭ１６、ホストコントローラ２３、レジスタ制御部１５にアクセスし、データバス４８を通じてデータ入出力を行なう。図１のバス２１は、図２のＩＯＲＤＹ３３、ＤＭＡＲＱ５６、ＤＭＡＣＫ５７、ＩＯＲＤ４４、ＩＯＷＴ５８、ＨＤＤ４６の信号線などに対応する。これらの信号線は、例えばＡＴＡＰＩ規格に示される信号線により構成されて、ホストコントローラ２３とＬＳＩ１１との間で接続されるとともに、途中で選択回路５４を経由する。
【００５３】
選択回路５４は、次のものによって構成される。すなわち、ホストコントローラ２３とＬＳＩ１１との間を結ぶ信号線であるＨＤＤ４６、信号線３２、４０、４４を結ぶＩＯＲＤ４４またはＤＭＡＣＫ５７またはＩＯＷＴ５８に関する回路と、信号線３３、４２、４５を結ぶＩＯＲＤＹ３３またはＤＭＡＲＱ５６に関する回路と、ホストコントローラ２３を選択する制御線である制御信号３６、制御信号５３、制御信号３７の経路と、回路３１と、これらを選択する回路２４、回路２５と、レジスタ制御部１５とＬＳＩ１１との間を結ぶ信号線である３４、４１、４４を結ぶ経路および３５、４３、４５を結ぶ経路と、レジスタ制御部１５を選択する制御線である制御信号５２、制御信号３８、制御信号５３、制御信号３９の経路と、回路３０と、これらを選択する回路２６および回路２７と、ホストコントローラ２３またはレジスタ制御部１５からの信号線を入出力する回路２８および回路２９と、信号状態を取得する信号線４９、５０、５１とから構成される。
【００５４】
図１の制御信号２２は、レジスタ制御部１５のレジスタにアクセスすることによって、次の動作をおこなう。
・ＩＯＲＤＹ３３、ＤＭＡＲＱ５６、ＤＭＡＣＫ５７、ＩＯＲＤ４４、ＩＯＷＴ５８、ＨＤＤ４６などのインタフェース規格で示される信号の状態をレジスタ制御部１５を通じて読み出す。
【００５５】
・ＩＯＲＤＹ３３またはＤＭＡＲＱ５６の信号を駆動するためにレジスタ制御部１５に値を設定し、ホストコントローラ２３からの信号である信号線３２を有効にするか、レジスタ制御部１５から出力する信号線３４と４１とを有効にするのかを、制御信号５２、回路３０からの制御信号３８、あるいは制御信号３６を経由して出力される信号がＬｏｗかＨｉｇｈに設定されることによって選択する。
【００５６】
・ＩＯＲＤ４４またはＤＭＡＣＫ５７またはＩＯＷＴ５８の信号を駆動するためにレジスタ制御部１５に値を設定し、デバイスからの信号であるＩＯＲＤＹ３３またはＤＭＡＲＱ５６の信号を有効にするか、レジスタ制御部１５から出力する信号線３５と４３とを有効にするのかを、制御信号５３、回路３１からの制御信号３７、あるいは制御信号３９を経由して出力される信号がＬｏｗかＨｉｇｈに設定されることによって選択する。
【００５７】
従来のＬＳＩ評価装置の仮想ホストで存在する信号線は、ＨＤＤ４６、信号線３２、４０、４４を経由するＩＯＲＤ４４、ＤＭＡＣＫ５７、ＩＯＷＴ５８信号線、信号線３３、４２、４５を経由するＩＯＲＤＹ３３、ＤＭＡＲＱ５６信号線である。
【００５８】
本発明のＬＳＩ評価装置の仮想ホスト１２は、従来のＬＳＩ評価装置に比べ、次の回路が追加されたものである。
・ホストコントローラの信号を有効にする制御信号５２から制御信号３６を経由して回路２４に入力する回路、および、制御信号５３から回路３１、制御信号３７を経由して回路２５に入力する回路。
【００５９】
・レジスタ制御部１５。
・レジスタ制御部１５を経由して入力される３４の信号と、３５の信号。
・３４の信号を有効にする制御信号５２、回路３０、制御信号３８を経由して回路２６に入力する回路。
【００６０】
・３５の信号を有効にする制御信号５３、制御信号３９を経由して回路２７に入力する回路。
・回路２８と、回路２６から出力され回路２８に入力される信号線４１。
【００６１】
・回路２９と、回路２７から出力され回路２９に入力される信号線４３。
・ＨＤＤ４６の値を参照する信号線４９。
・ＩＯＲＤ４４またはＤＭＡＣＫ５７またはＩＯＷＴ５８の値を参照する信号線５０。
【００６２】
・信号線４５（ＤＭＡＲＱまたはＩＯＲＤＹ）の値を参照する信号線５１。
同様に、他のインタフェース規格に示す信号線についても、コンピュータから出力される信号か、レジスタ制御部１５から入出力される信号かを選択する回路、制御回路信号が搭載されている。
【００６３】
図４は、図１における変換部６の詳細を示した図である。この図４において、変換部６は、構文解析部６１、中間コード生成部６３、イベント監視処理検出部６４、中間コード交換部６５、コード生成部６２から構成される。
【００６４】
中間コード生成部６３は、構文解析部６１がハードウエア記述言語を解析した結果に基づいて中間コードを生成するものである。イベント監視処理検出部６４は、中間コード生成部６３が生成した中間コードから、イベントを監視する文を意味するノードを検出するものである。中間コード交換部６５は、イベント監視処理検出部６４が検出するノードとノードに付属する処理の実行順序を先頭に設定し、そのノードを含む中間コードを先頭に配置するものである。
【００６５】
図４の構文解析部６１の入力となるハードウエア記述言語４の例として、前述の図１１に示すものを挙げることができる。具体的には、ホスト転送中（ＬＳＩ１１→仮想ホスト１２）に、一時的にＦＩＦＯ５５が空になり、デバイス側（ＬＳＩ１１）からストップをかけてきたにもかかわらず、仮想ホスト１２からレジスタアクセスしにきたときにイリーガルアクセス割り込みが発生するかどうかを検証するテストプログラムを想定している。
【００６６】
次に図４の構成図で示した変換部６の動作を図５を用いて説明する。
（１０１）構文解析部６１がハードウエア記述言語の１行を読む。
（１０２）読み込んだ１行から、中間コード生成部６３が構文情報８２７に対応するノードと中間コードを出力する。
【００６７】
（１０３）すべての行を読み終わるまで（１０１）から（１０３）までを繰り返す。
（１０４）中間コード生成部６３が中間コードの先頭から実行順序を設定する。その結果、図６の８０１から８１６に示される中間コードを生成する。
【００６８】
（１０５）イベント監視処理検出部６４が、中間コードのノードをサーチし、イベント監視処理を示すノード（ａｌｗａｙｓ）かどうかを判別する。
（１０６）ノードがａｌｗａｙｓのとき、中間コード交換部６５が、そのノードに接続するツリーごと、先頭に移動し、後続のノードを含めて実行順序を付け直す。
【００６９】
（１０７）中間コードの最後の行に達するまでノードがａｌｗａｙのものをサーチする。（１０５から１０７を繰り返す）
この結果、図６の８１６から８３１に示す中間コードとなる。
【００７０】
（１０８）（１０９）コード生成部６２が、中間コードのノードを取り出し、イベント監視処理のノード（ａｌｗａｙｓ）のとき、判定文を示すコードを出力する。
【００７１】
（１１０）中間コードの最後の行まで（１０８）（１０９）を繰り返す。この結果、図６の８１６、８１７に対して、図７の９０１、９０２が出力される。
（１１１）イベント監視処理の先頭にジャンプする無条件分岐のコードを生成する。この結果、図７の９０３が出力される。
【００７２】
（１１２）（１１３）イベント監視処理以外の中間コードのとき、構文情報８２７を参照し、コード出力する。
（１１４）中間コードの最後の行になるまで（１１２）から（１１３）を繰り返す。この結果、図６の８１８から８２６に対し、図７の９０４から９１２が出力される。
【００７３】
（１１５）イベント監視処理以外の先頭にジャンプする無条件分岐のコードを生成する。この結果、図７の９１３が出力される。
（１１６）（１１７）イベント監視処理に付属する中間コードの時、中間コードに対応するコードを生成する。付属する中間コードが複数の時はすべての中間コードに対してコードを生成する。この結果、図６の８２７、８２８に対して、図７の９１４、９１５が出力される。
【００７４】
（１１８）イベント監視処理の先頭にジャンプする無条件分岐のコードを生成する。この結果、図７の９１６が出力される。
（１１９）中間コードの最後の行になるまで（１１６）から（１１８）まで繰り返す。この結果、図６の８２９から８３１に対し、図７の９１７から９２０が出力される。最終的に制御プログラムは図７の９０１から９２０になる。
【００７５】
ここで、上述の従来のＬＳＩ評価装置では、図７における次の文を実行することができない。すなわち、ｉｏｒｄｙ信号を読むこと（９０２）。ｉｏｒｄｙを駆動すること（９０５）、ｉｏｒｄｙを駆動すること（９１５）、ｉｏｒｄ信号を駆動すること（９０６）は、実行することができない。
【００７６】
本発明では、上記の文に対して、図７における解読器９２８は次のような動作をする制御コードをＩ／Ｏポートに出力する。
（９０２）アドレスバス４７にｉｏｒｄｙ信号をアクセスするためのレジスタのアドレスを出力する。レジスタ制御部１５がＩＯＲＤＹ４５、信号線５１を経由してＩＯＲＤＹの信号を取得し、ＨｉｇｈかＬｏｗかをデータバス４８に出力する。この値は、ＭＰＵ制御部１０、バス１８、Ｉ／Ｏポート９を経由して制御ソフト１４に取り込まれる。同様に、ホストの他の信号（例えばＩＯＲＤ、ＨＤＤなど）の信号状態を読み出す場合も、その信号線に対応する同等の回路が動作する。
【００７７】
（９０５）（９１５）アドレスバス４７にｉｏｒｄｙ信号を駆動するためのレジスタのアドレスを出力する。データバス４８に、ｉｏｒｄｙ信号のＨｉｇｈ／Ｌｏｗを示すデータを出力する。レジスタ制御部１５がｉｏｒｄｙ信号のＨｉｇｈ／ＬｏｗをＩＯＲＤＹ３５に出力し、この信号を有効にする制御信号５３、３９を出力し、ｉｏｒｄｙ信号のＨｉｇｈ／Ｌｏｗ状態が信号線４３、ＩＯＲＤＹ４５を経由して出力され、ｉｏｒｄｙ信号が駆動される。
【００７８】
（９０６）アドレスバス４７にｉｏｒｄ信号を駆動するためのレジスタのアドレスを出力する。データバス４８に、ｉｏｒｄ信号のＨｉｇｈ／Ｌｏｗを示すデータを出力する。レジスタ制御部１５がｉｏｒｄ信号のＨｉｇｈ／ＬｏｗをＩＯＲＤ３４に出力し、この信号を有効にする制御信号５２、３８を出力し、ｉｏｒｄ信号のＨｉｇｈ／Ｌｏｗ状態が信号線４１、ＩＯＲＤ４４を経由して出力され、ｉｏｒｄ信号が駆動される。
【００７９】
次に、本発明の実施の形態における制御プログラム１３、制御ソフト１４、コンピュータ８、Ｉ／Ｏポート９を含めた構成要素を、図７を用いて説明する。
図７の９０１〜９２０は、制御ソフト１４の入力となる制御プログラムの例である。図７の９２１〜９２８は、制御ソフトを構成する構成要素である。ここでＰＣ１　９２１はプログラムカウンタ１であり、イベント監視プログラム領域を示すアドレスの範囲でプログラムカウンタが動作する。ＰＣ２　９２２はプログラムカウンタ２であり、逐次処理プログラム領域を示すアドレスの範囲でプログラムカウンタが動作する。ＰＣ１　９２１、ＰＣ２　９２２は、それぞれ独立に、アドレスがインクリメントされ、制御の流れにしたがってアドレスが変化する。イベント監視プログラム領域とは、図７の９０１〜９０３、９１４〜９１６、９１７〜９２０の範囲を示す。逐次処理プログラム領域とは、図７の９０４〜９１３の範囲を示す。
【００８０】
９２３は命令バッファであり、実行順序で命令が読み出され、格納される。９２４〜９２７は具体的に命令が格納されている例を示す。９２８は解読器であり、命令バッファ９２３の底（９２４を示す）から命令を取り出し、内容を解読し、解読結果に対応する制御コードをＩ／Ｏポート９に出力する。すなわち、解読器９２８が命令バッファ９２３から一つ命令を取り出すと、命令バッファ９２３に残っている他の命令が９２７→９２６→９２５→９２４とシフトされる。
【００８１】
次に、上記の図７にもとづく、制御プログラム１３、制御ソフト１４、コンピュータ８、Ｉ／Ｏポート９の動作を、図８を用いて説明する。
（１１０１）ＰＣ１　９２１にイベント監視プログラム領域の先頭アドレスを設定する。この結果、ＰＣ１　９２１に「９０１」が設定される。
【００８２】
（１１０２）ＰＣ２　９２２に逐次処理プログラム領域の先頭アドレスを設定する。この結果、ＰＣ２　９２２に「９０４」が設定される。
（１１０３）ＰＣ１　９２１が指すアドレスから命令を読み出し、命令バッファ９２３に格納する。
【００８３】
（１１０４）ＰＣ１　９２１を１つ進める。
（１１０５）ＰＣ２　９２２が指すアドレスから命令を読み出し、命令バッファ９２３に格納する。
【００８４】
（１１０６）ＰＣ２　９２２を１つ進める。
（１１０７）命令バッファ９２３に命令が存在するか否かを判別し、存在すれば（１１０８）に進む。
【００８５】
（１１０８）命令バッファ９２３に格納されている命令を１つ取り出す。
（１１０９）取り出した命令を解読する。
（１１１０）解読された命令に対する制御コードをＩ／Ｏポート９に出力する。
【００８６】
ここで、これらの動作順序は、（１１０３）−（１１０４）の処理と、（１１０５）−（１１０６）の処理が独立に並列に動作する場合と、（１１０３）、（１１０５）、（１１０４）、（１１０６）の順序で動作する場合と、（１１０３）、（１１０４）、（１１０５）、（１１０６）の順序で動作する場合とがある。また、（１１０７）−（１１１０）の処理は、命令バッファ９２３に命令が存在した時に、割り込み駆動で動作する。
【００８７】
図９は、本発明の実施の形態において、図７の制御プログラムを入力した時のタイミングチャートを示す。データ転送はＡＴＡＰＩのＰＩＯ転送モードでの転送を前提としている。
【００８８】
ここで、ｄｍａｃｔｒ１２０１はＬＳＩ１１と仮想ホスト１２との間でデータ転送が開始されたか終了したかを示す信号線で、Ｈｉｇｈのとき転送開始、Ｌｏｗのとき転送終了状態を示す。この信号は、図１におけるＭＰＵ制御部１０とＭＰＵ　Ｉ／Ｆレジスタ１７との間で接続されており、制御ソフト１４、コンピュータ８、Ｉ／Ｏポート９、ＭＰＵ制御部１０を通じてレジスタの値を読み出すことによって確認できる。
【００８９】
ｉｏｒｄｙ１２０２は、例えばＡＴＡ規格で示される信号で、図１の仮想ホスト１２とＬＳＩ１１との間で接続され、データ転送時にＬＳＩ１１側から出力される信号である。ＰＩＯ転送では、アイドル時、データ転送時にＨｉｇｈになり、転送の一時停止時にＬｏｗになる。
【００９０】
ｉｏｒｄ１２０３は、例えばＡＴＡ規格で示される信号で、図１の仮想ホスト１２とＬＳＩ１１との間で接続され、データ転送時に仮想ホスト１２側から出力される信号である。ＰＩＯ転送では、データ転送時にＨｉｇｈ固定からＬｏｗ／Ｈｉｇｈの繰り返しとなり、終了時にＨｉｇｈ固定になる。転送の一時停止にはＬｏｗのままになる。また、仮想ホスト１２からのレジスタアクセスが発生するとＬｏｗからＨｉｇｈになる。
【００９１】
ｉｎｔｃ１２０４は、図１の仮想ホスト１２から、イリーガルアクセスが発生した時に、ＬＳＩ１１に割り込みが入る信号で、イリーガルアクセスが発生した時にＬｏｗからＨｉｇｈになる。
【００９２】
ＲＥＡＤＲＥＧ１　１２０５、ＲＥＡＤＲＥＧ２　１２０６、ＲＥＡＤＲＥＧ３　１２０７は、テンポラリのレジスタである。ＨＳＴＰＡＲＡは、ホストのデータ転送バイト数を設定するレジスタの値を示す。ＯＤＣＣＭＤは、ホストのデータ転送を示すコマンドを設定するレジスタの値を示す。
【００９３】
ＡＴＡ規格で示されるデータレジスタすなわちＨＡＤＡＲレジスタは、いま、ｆｆという値が設定されているとする。
図９中の縦軸の番号９０１〜９１９は、図７の制御プログラムの実行中の行番号を示し、この図９はそれぞれの行の実行時の信号の変化を示している。
【００９４】
ここで、１２１０の矢印に示すように、ホストのデータ転送を示すコマンドが設定されると、ＬＳＩ１１はデータ転送開始を示すｄｍａｃｔｒビットをＨｉｇｈにし（１２１０に示す）、ｉｏｒｄｙ信号をＨｉｇｈに駆動する。
【００９５】
【発明の効果】
以上で説明したように、本発明のＬＳＩ評価装置によると、ある信号を常に監視して、その信号が変化したときに、第１の処理を動作しつつ第２の処理を動作させるような、ホストを制御する処理とＬＳＩを制御する処理を並列に動作させることが可能になる。
【００９６】
また本発明のＬＳＩ評価装置によると、インタフェースの制御信号を、ホストとＬＳＩとの間とは別の経路で、ＬＳＩ評価装置のコンピュータから直接制御することが可能となる。
【００９７】
また本発明のＬＳＩ評価装置によると、ホスト転送中に、一時的にＦＩＦＯが空になり、デバイス側からストップをかけてきたにもかかわらず、ホストからレジスタアクセスしにきたときにイリーガルアクセス割り込みが発生するかどうかの評価を、安価に行なうことが可能となる。
【００９８】
また本発明のＬＳＩ評価装置によると、ホストの信号とデバイスの信号を制御する記述が混在するハードウエア記述言語で記述されたテストプログラムを利用して、ＬＳＩ評価の制御プログラムとして使用することができ、評価の工数を短縮することが可能となる。
【図面の簡単な説明】
【図１】本発明の実施の形態のＬＳＩ評価装置の概略構成図
【図２】図１における仮想ホストの構成を示す図
【図３】ＬＳＩ評価で想定されるシステムを示す図
【図４】図１における変換部の構成を示す図
【図５】図４の変換部の動作を示すフローチャート
【図６】変換部における構文情報と中間コードの例を示す図
【図７】変換部が出力するプログラム言語と制御ソフトの例を示す図
【図８】図１における制御ソフトを示す図
【図９】図７のプログラムが動作したときのタイミングチャート
【図１０】従来の変換部の構成を示す図
【図１１】図１０の変換部の入力であるハードウエア記述言語の例を示す図
【図１２】図１０の変換部が出力するプログラム言語を示す図
【符号の説明】
１　　ＨＤＬ検証環境部
２　　ＬＳＩ評価環境部
６　　変換部
８　　コンピュータ
９　　Ｉ／Ｏポート
１０　　ＭＰＵ制御部
１１　　ＬＳＩ
１２　　仮想ホスト
１３　　制御プログラム
１４　　制御ソフト
１５　　レジスタ制御部
１９　　バス
２０　　バス
２１　　インターフェースバス
２２　　制御信号
５４　　選択回路
【図１】
2004110317.tif 000003
【図２】
2004110317.tif 000004
【図３】
2004110317.tif 000005
【図４】
2004110317.tif 000006
【図５】
2004110317.tif 000007
【図６】
2004110317.tif 000008
【図７】
2004110317.tif 000009
【図８】
2004110317.tif 000010
【図９】
2004110317.tif 000011
【図１０】
2004110317.tif 000012
【図１１】
2004110317.tif 000013
【図１２】
2004110317.tif 000014