(57)【特許請求の範囲】
【請求項１】
検証対象回路が分割して割り当てられ、各々が、内部で実現する論理を変更できる複数の可変論理手段と、
前記検証対象回路を分割して割り当てられる回路の情報に従って、前記可変論理手段の相互間を接続する可変配線手段と、を備え、
前記可変配線手段は、
複数の前記可変論理手段に対応して設けられ、各々が、複数の端子を含む複数の第１の端子群と、
予め定められた複数の前記可変論理手段に対応して設けられ、複数の端子を含む第２の端子群と、を含み、
前記第１の端子群の各々の前記各端子は、対応する前記可変論理手段に配線される対応する信号線と接続され、
前記第２の端子群の前記各端子は、予め定められた前記複数の可変論理手段の相互間での対応する複数の信号線と接続される、ことを特徴とする論理エミュレーション装置。
【請求項２】
前記第２の端子群の前記複数の端子に対応して設けられ、各々が、前記第２の端子群の対応する前記端子に接続される複数のスイッチング手段、をさらに備え、
前記スイッチング手段の各々は、予め定められた前記複数の可変論理手段の相互間での対応する前記複数の信号線から、一本の信号線を選択して、前記第２の端子群の対応する前記端子に接続する、ことを特徴とする請求項１記載の論理エミュレーション装置。
【請求項３】
検証対象回路が分割して割り当てられ、各々が、内部で実現する論理を変更できる複数の可変論理手段と、
前記複数の可変論理手段に対応して設けられ、各々が、対応する前記可変論理手段に前記検証対象回路を分割して割り当てられる回路の内部信号が表す情報を、格納する複数のメモリと、を備え、
前記可変論理手段の各々は、
前記検証対象回路を分割して割り当てられる前記回路より引き出したソース情報を基に、対応する前記メモリへの、前記内部信号が表す情報の格納を指示する格納指示手段と、
前記格納指示手段の指示に従って、対応する前記メモリへの、前記内部信号が表す情報の格納を制御するメモリ制御手段と、を含む、ことを特徴とする論理エミュレーション装置。
【請求項４】
前記検証対象回路を分割して割り当てられる前記回路の前記内部信号が表す情報の、対応する前記メモリへの格納のための条件を、任意に設定することができる条件設定手段、をさらに備え、
前記格納指示手段の各々は、前記格納のための条件に従って、前記検証対象回路を分割して割り当てられる前記回路より引き出した前記ソース情報を基に、対応する前記メモリへの、前記内部信号が表す情報の格納を指示する、ことを特徴とする請求項３記載の論理エミュレーション装置。
【請求項５】
前記格納指示手段の各々は、前記検証対象回路を分割して割り当てられる前記回路より引き出した前記ソース情報を基に、対応する前記メモリへの、前記内部信号が表す情報の格納の指示を制御する格納指示制御信号を生成し、
前記格納指示手段の各々が生成した前記格納指示制御信号により、共通する配線の電位を制御して、ワイヤード論理を構成し、その共通する配線の電位に従って、前記メモリ制御手段の各々は、対応する前記メモリへの、前記内部信号が表す情報の格納を制御する、ことを特徴とする請求項３記載の論理エミュレーション装置。
【請求項６】
前記検証対象回路を分割して割り当てられる前記回路の前記内部信号が表す情報の、対応する前記メモリへの格納のための条件を、任意に設定することができる条件設定手段、をさらに備え、
前記格納指示手段の各々は、前記格納のための条件に従って、前記検証対象回路を分割して割り当てられる前記回路より引き出した前記ソース情報を基に、前記格納指示制御信号を生成する、ことを特徴とする請求項５記載の論理エミュレーション装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、検証対象回路の検証を行う論理エミュレーション装置に関する。
【０００２】
【従来の技術】
近年、大規模ＬＳＩ（ｌａｒｇｅ  ｓｃａｌｅ  ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ）の開発において、その大規模ＬＳＩ（検証対象回路）の動作を検証する為の装置として、論理エミュレーション装置が使用されている。
【０００３】
論理エミュレーション装置は、一般に、検証対象回路を分割して、複数の可変論理素子に割り当て、実際に動作させる事により高速に検証できるようにした装置である。
【０００４】
論理エミュレーション装置は、その装置の性格上、検証対象回路のデバッグのために、検証対象回路を分割して可変論理素子に割り当てた回路（検証対象分割回路）内の、ユーザが選んだ任意の信号（検証対象内部信号）を観測するための機能を持つのが普通である。この点を図面を用いて具体的に説明する。
【０００５】
図１８は、従来の論理エミュレーション装置のブロック図である。図１８に示すように、従来の論理エミュレーション装置は、可変論理素子２０２〜２０４、可変配線素子２０５、トレース制御回路２０６、トレースメモリ２０７、ホストインタフェース回路２０８、及び、ホストワークステーション２０９、を具備する。
【０００６】
この従来の論理エミュレーション装置２０１は、外部装置２００と接続して使用される。
【０００７】
次に接続関係を説明する。
【０００８】
可変論理素子２０２と外部装置２００とは、配線２１０により接続される。可変論理素子２０３と外部装置２００とは、配線２１１により接続される。配線２１０及び配線２１１の各々は、複数の信号線を含む。
【０００９】
可変論理素子２０２と可変配線素子２０５とは、配線２１２により接続される。可変論理素子２０３と可変配線素子２０５とは、配線２１３により接続される。可変論理素子２０４と可変配線素子２０５とは、配線２１４により接続される。
【００１０】
より具体的には、次の通りである。配線２１２〜２１４の各々は、複数の信号線を含む。可変論理素子２０２〜２０４の各々は、複数の端子を含む。（図示せず）。可変配線素子２０５は、複数の端子を含む（図示せず）。
【００１１】
そして、可変論理素子２０２〜２０４の各端子と、可変配線素子２０５の各端子と、が１対１に対応して、配線２１２〜２１４の信号線により接続される。
【００１２】
さて、可変配線素子２０５とトレース制御回路２０６とは、配線２１５により接続される。可変配線素子２０５とトレースメモリ２０７とは、配線２１６により接続される。
【００１３】
トレース制御回路２０６とトレースメモリ２０７とは、配線２１７により接続される。トレース制御回路２０６とホストインタフェース回路２０８とは、配線２２０により接続される。
【００１４】
トレースメモリ２０７とホストインタフェース回路２０８とは、配線２１８により接続される。ホストインタフェース回路２０８とホストワークステーション２０９とは、配線２１９により接続される。
【００１５】
次に、各構成の機能・動作を説明する。
【００１６】
外部装置２００の１つの例を説明する。外部装置２００には、論理エミュレーション装置２０１の各可変論理素子２０２〜２０４に分割して割り当てられる検証対象回路と実際に組み合わせて使用されるＬＳＩなどの様々な回路や部品が実装される。
【００１７】
そして、この外部装置２００は、論理エミュレーション装置２０１を接続することによって、検証対象回路を実際の使用状態に近い状態で検証できるようにする。
【００１８】
外部装置２００の他の例を説明する。外部装置２００は、論理エミュレーション装置２０１の各可変論理素子２０２〜２０４に割り当てられる検証対象分割回路２３０〜２３２の入力に対して検証用のテストパターンを与える。
【００１９】
そして、この外部装置２００は、検証対象分割回路２３０〜２３２の出力を観測する。
【００２０】
さて、論理エミュレーション装置２０１の可変論理素子２０２〜２０４は、内部で実現する論理を外部から変更できる素子であって、設定された論理に基づく機能を実現する。
【００２１】
可変配線素子２０５は、各可変論理素子２０２〜２０４間の接続を実現する素子であり、内部で実現される接続を外部から変更できる素子である。
【００２２】
トレースメモリ２０７は、可変論理素子２０２〜２０４の検証対象内部信号が表す情報を、一定の時間間隔で格納する。
【００２３】
この場合、可変論理素子２０２〜２０４の検証対象内部信号は、配線２１２〜２１４、可変配線素子２０５、及び、配線２１６を経由して、トレースメモリ２０７に与えられる。
【００２４】
トレース制御回路２０６は、可変論理素子２０２〜２０４の検証対象内部信号を、配線２１２〜２１４、可変配線素子２０５、及び、配線２１５を経由して取得し、トレースメモリ２０７の制御に利用する。
【００２５】
具体的には、トレース制御回路２０６は、可変論理素子２０２〜２０４の検証対象内部信号を監視し、検証対象内部信号が表す情報が、ホストワークステーション２０９が設定した条件と一致したときに、トレースメモリ２０７へのデータの書込みの開始を指示したり、あるいは、書き込みの停止を指示する。
【００２６】
ホストワークステーション２０９は、ホストインタフェース回路２０８を介して、トレースメモリ２０７に格納された可変論理素子２０２〜２０４の被検証内部信号を取得し、可変論理素子２０２〜２０４に分割され割り当てられた検証対象回路の動作の解析を行う。
【００２７】
【発明が解決しようとする課題】
上記した従来の論理エミュレーション装置２０１の問題点を説明する。まず、可変配線素子２０５を中心にした問題点について説明する。
【００２８】
従来の論理エミュレーション装置２０１では、可変配線素子２０５の端子の数は有限である。
【００２９】
従って、各可変論理素子２０２〜２０４と可変配線素子２０５と間の信号線の本数には限りがある。
【００３０】
可変配線素子の数を増やしたとしても、このような制限があることに変わりはない。
【００３１】
また、可変配線素子を増やせば、論理エミュレーション装置のコストアップにつながってしまう問題がある。
【００３２】
以上の点をふまえて、図１８を参照しながら、可変配線素子２０５を中心にした問題点について、具体例を挙げながら説明する。
【００３３】
可変論理素子２０２〜２０４と可変配線素子２０５との接続に使用可能な端子の数が、Ｎ本であるとする。
【００３４】
この場合、配線２１２〜２１４の各々の信号線の本数Ｍは、配線２１２〜２１４の信号線の合計本数がＮ本となる様に、設計時に定められる。例えば、Ｍ＝Ｎ／３本、という具合に設計時に定められた数となる。
【００３５】
一方、検証対象回路を分割して、個々の可変論理素子２０２〜２０４に割り当てる場合、検証対象回路の分割結果によっては、各可変論理素子２０２〜２０４と可変配線素子２０５と間で、必要な信号線の本数にばらつき発生することがある。
【００３６】
例えば、配線２１２〜２１４の各々が全て等しいＭ（＝Ｎ／３）本の信号線からなるとしたとき、可変論理素子２０２と可変配線素子２０５との間では、配線２１２のＭ本の信号線よりも多いＬ本の信号線により信号を伝える必要がある反面、可変論理素子２０３と可変配線素子２０５と間では、配線２１３のＭ本の信号線より少ないＲ本の信号線により信号を伝えればよい場合などがある。
【００３７】
このような場合、配線２１２のＭ本の信号線で、Ｍ本よりも多いＬ本の信号を伝えるためには、時分割多重で信号を伝える必要がある。
【００３８】
このため、各可変論理素子２０２〜２０４間の信号伝達の遅延を増大させるという問題が発生する。一方、配線２１３においては、（Ｍ−Ｒ）本の信号線の余りがでて、信号線の無駄が発生するという問題が生じる。
【００３９】
このような信号線の無駄をなくすため、各可変論理素子２０２〜２０４に割り当てる各検証対象分割回路２３０〜２３２間の接続に必要な信号線の数が、各可変論理素子２０２〜２０４と可変配線素子２０５との間の信号線の数に合致するように検証対象回路を分割しようとすると、制約条件が増えてしまう。
【００４０】
このため、検証対象回路を分割するためのプログラムの処理時間が長くなるという問題が発生する。また、可変論理素子２０２〜２０４ごとに、その内部回路の使用率にばらつきが出て、可変論理素子２０２〜２０４自体の内部回路の使用率の面で無駄が発生するという問題が生じる。
【００４１】
以上が、可変配線素子２０５を中心にした問題点である。
【００４２】
次に、各可変論理素子２０２〜２０４を中心にした問題点について説明する。
【００４３】
図１８に示す従来の論理エミュレーション装置２０１では、各可変論理素子２０２〜２０４からトレース制御回路２０６へ、検証対象内部信号を与えるために、各可変配線素子２０２〜２０４と可変配線素子２０５と間の信号線を消費してしまう。
【００４４】
このため、各可変論理素子２０２〜２０４に割り当てられる各検証対象分割回路２３０〜２３２間を接続するための信号線が不足するという問題が発生する。
【００４５】
また、個々の可変論理素子２０２〜２０４においては、各可変論理素子２０２〜２０４に割り当てられる各検証対象分割回路２３０〜２３２間の信号、トレースメモリ２０７に格納される検証対象内部信号、及び、トレース制御回路２０６へ与える検証対象内部信号、の全てが、可変論理素子２０２〜２０４の端子を介して、出力又は入力されることになる。
【００４６】
このため、可変論理素子２０２〜２０４の入出力端子数が不足するという問題が生ずる。
【００４７】
以上が、各可変論理素子２０２〜２０４を中心にした問題点である。
【００４８】
本発明は、検証対象回路の分割処理の処理時間の増大及び可変論理素子の内部回路の無駄、を生じさせることなく、信号線を効率的に利用できる論理エミュレーション装置を提供することを目的とする。
【００４９】
また、本発明は、各可変論理素子間の信号の伝達のために利用する、信号線及び可変論理素子の端子、の不足を極力解消できる論理エミュレーション装置を提供することを目的とする。
【００５０】
【課題を解決するための手段】
本発明に係る論理エミュレーション装置では、検証対象回路が分割して割り当てられ、各々が、内部で実現する論理を変更できる複数の可変論理手段と、検証対象回路を分割して割り当てられる回路の情報に従って、可変論理手段の相互間を接続する可変配線手段と、を備え、可変配線手段は、複数の可変論理手段に対応して設けられ、各々が、複数の端子を含む複数の第１の端子群と、予め定められた複数の可変論理手段に対応して設けられ、複数の端子を含む第２の端子群と、を含み、第１の端子群の各々の各端子は、対応する可変論理手段に配線される対応する信号線と接続され、第２の端子群の各端子は、予め定められた複数の可変論理手段の相互間での対応する複数の信号線と接続される。
【００５１】
この構成により、第２の端子群の各端子に接続される信号線については、予め定められた複数の可変論理手段であれば、どの可変論理手段でも使用できる。つまり、可変論理手段が使用可能な信号線の本数を可変としている。
【００５２】
このため、検証対象回路を分割した結果に基づき定まる各可変論理手段が使用する信号線の本数に応じて、信号線を選択して利用できるため、可変配線手段の増加を伴うことなく、各可変論理手段に対する信号線の過不足を極力抑制できて、信号線を効率的に利用できる。
【００５３】
その結果、可変配線手段の増加に伴うコストの増加、信号線の不足のために行う過剰な時分割多重に起因する各可変論理手段間の信号伝達の遅延、及び、そのような信号伝達の遅延に起因する各可変論理手段に割り当てる回路（検証対象分割回路）の動作速度の低下、を極力抑制できる。
【００５４】
しかも、各可変論理手段に割り当てる各検証対象分割回路間の接続に必要な信号線の本数が、各可変論理手段と可変配線手段との間の信号線の本数に合致するように検証対象回路を分割する、というような煩雑な処理が不要となる。
【００５５】
その結果、検証対象回路の分割処理の処理時間の増大を極力抑制できるとともに、可変論理手段ごとの内部回路の使用率のばらつきの発生による無駄を極力抑制できる。
【００５６】
また、本発明に係る論理エミュレーション装置では、検証対象回路が分割して割り当てられ、各々が、内部で実現する論理を変更できる複数の可変論理手段と、複数の可変論理手段に対応して設けられ、各々が、対応する可変論理手段に検証対象回路を分割して割り当てられる回路の内部信号が表す情報を、格納する複数のメモリと、を備え、可変論理手段の各々は、検証対象回路を分割して割り当てられる回路より引き出したソース情報を基に、対応するメモリへの、内部信号が表す情報の格納を指示する格納指示手段と、格納指示手段の指示に従って、対応するメモリへの、内部信号が表す情報の格納を制御するメモリ制御手段と、を含む。
【００５７】
この構成により、可変論理手段に割り当てられる回路（検証対象分割回路）より引き出したソース情報を基に、対応するメモリへの、検証対象分割回路の内部信号が表す情報の格納を指示する格納指示手段が、可変論理手段の内部に設けられる。
【００５８】
従って、検証対象分割回路の内部信号が表す情報の格納を指示する基になるソース情報を、可変論理手段の外部へ出力することなく、また、格納の指示を外部から入力することなく、検証対象分割回路の内部信号が表す情報の格納を制御することが可能となる。
【００５９】
このため、論理エミュレーション装置は、可変論理手段の外部において、ソース情報、及び、格納の指示、のために、信号線を消費することがなく、また、可変論理手段は、ソース情報の出力、及び、格納の指示の入力、のために、端子を消費することがない。
【００６０】
その結果、各可変論理手段間の信号の伝達のために利用する、信号線及び可変論理手段の端子の不足を極力解消できる。
【００６１】
【発明の実施の形態】
請求項１記載の論理エミュレーション装置では、検証対象回路が分割して割り当てられ、各々が、内部で実現する論理を変更できる複数の可変論理手段と、検証対象回路を分割して割り当てられる回路の情報に従って、可変論理手段の相互間を接続する可変配線手段と、を備え、可変配線手段は、複数の可変論理手段に対応して設けられ、各々が、複数の端子を含む複数の第１の端子群と、予め定められた複数の可変論理手段に対応して設けられ、複数の端子を含む第２の端子群と、を含み、第１の端子群の各々の各端子は、対応する可変論理手段に配線される対応する信号線と接続され、第２の端子群の各端子は、予め定められた複数の可変論理手段の相互間での対応する複数の信号線と接続される。
【００６２】
この構成により、第２の端子群の各端子に接続される信号線については、予め定められた複数の可変論理手段であれば、どの可変論理手段でも使用できる。つまり、可変論理手段が使用可能な信号線の本数を可変としている。
【００６３】
このため、検証対象回路を分割した結果に基づき定まる各可変論理手段が使用する信号線の本数に応じて、信号線を選択して利用できるため、可変配線手段の増加を伴うことなく、各可変論理手段に対する信号線の過不足を極力抑制できて、信号線を効率的に利用できる。
【００６４】
その結果、可変配線手段の増加に伴うコストの増加、信号線の不足のために行う過剰な時分割多重に起因する各可変論理手段間の信号伝達の遅延、及び、そのような信号伝達の遅延に起因する各可変論理手段に割り当てる回路（検証対象分割回路）の動作速度の低下、を極力抑制できる。
【００６５】
しかも、各可変論理手段に割り当てる各検証対象分割回路間の接続に必要な信号線の本数が、各可変論理手段と可変配線手段との間の信号線の本数に合致するように検証対象回路を分割する、というような煩雑な処理が不要となる。
【００６６】
その結果、検証対象回路の分割処理の処理時間の増大を極力抑制できるとともに、可変論理手段ごとの内部回路の使用率のばらつきの発生による無駄を極力抑制できる。  請求項２記載の論理エミュレーション装置では、第２の端子群の複数の端子に対応して設けられ、各々が、第２の端子群の対応する端子に接続される複数のスイッチング手段、をさらに備え、スイッチング手段の各々は、予め定められた複数の可変論理手段の相互間での対応する複数の信号線から、一本の信号線を選択して、第２の端子群の対応する端子に接続する。
【００６７】
この構成により、スイッチング手段によって選択されなかった可変論理手段からの信号線は、可変配線手段の第２の端子群の端子から切り離される。
【００６８】
その結果、余分な信号線が接続されることによって生ずる信号の乱れ、及び、余分な信号線の浮遊容量を原因とした装置の消費電力の増加、を抑制できる。
【００６９】
請求項３記載の論理エミュレーション装置では、検証対象回路が分割して割り当てられ、各々が、内部で実現する論理を変更できる複数の可変論理手段と、複数の可変論理手段に対応して設けられ、各々が、対応する可変論理手段に検証対象回路を分割して割り当てられる回路の内部信号が表す情報を、格納する複数のメモリと、を備え、可変論理手段の各々は、検証対象回路を分割して割り当てられる回路より引き出したソース情報を基に、対応するメモリへの、内部信号が表す情報の格納を指示する格納指示手段と、格納指示手段の指示に従って、対応するメモリへの、内部信号が表す情報の格納を制御するメモリ制御手段と、を含む。
【００７０】
この構成により、可変論理手段に割り当てられる回路（検証対象分割回路）より引き出したソース情報を基に、対応するメモリへの、検証対象分割回路の内部信号が表す情報の格納を指示する格納指示手段が、可変論理手段の内部に設けられる。
【００７１】
従って、検証対象分割回路の内部信号が表す情報の格納を指示する基になるソース情報を、可変論理手段の外部へ出力することなく、また、格納の指示を外部から入力することなく、検証対象分割回路の内部信号が表す情報の格納を制御することが可能となる。
【００７２】
このため、論理エミュレーション装置は、可変論理手段の外部において、ソース情報、及び、格納の指示、のために、信号線を消費することがなく、また、可変論理手段は、ソース情報の出力、及び、格納の指示の入力、のために、端子を消費することがない。
【００７３】
その結果、各可変論理手段間の信号の伝達のために利用する、信号線及び可変論理手段の端子の不足を極力解消できる。
【００７４】
請求項４記載の論理エミュレーション装置では、検証対象回路を分割して割り当てられる回路の内部信号が表す情報の、対応するメモリへの格納のための条件を、任意に設定することができる条件設定手段、をさらに備え、格納指示手段の各々は、格納のための条件に従って、検証対象回路を分割して割り当てられる回路より引き出したソース情報を基に、対応するメモリへの、内部信号が表す情報の格納を指示する。
【００７５】
この構成により、格納のための条件を任意に設定することが可能となり、可変論理手段のコンパイル、及び、可変論理手段に回路データを書き込む作業、が格納のための条件を変更するたびに発生することを大幅に減らすことが可能となる。
【００７６】
その結果、検証対象回路の検証作業を円滑かつ迅速に進めることができる。
【００７７】
請求項５記載の論理エミュレーション装置では、格納指示手段の各々は、検証対象回路を分割して割り当てられる回路より引き出したソース情報を基に、対応するメモリへの、内部信号が表す情報の格納の指示を制御する格納指示制御信号を生成し、格納指示手段の各々が生成した格納指示制御信号により、共通する配線の電位を制御して、ワイヤード論理を構成し、その共通する配線の電位に従って、メモリ制御手段の各々は、対応するメモリへの、内部信号が表す情報の格納を制御する。
【００７８】
この構成により、全ての格納指示手段からの全ての格納指示制御信号の論理が「真」のときにのみ、格納の指示を出すという処理を、各可変論理手段間の極めてわずかな配線で実現することができる。
【００７９】
請求項６記載の論理エミュレーション装置では、検証対象回路を分割して割り当てられる回路の内部信号が表す情報の、対応するメモリへの格納のための条件を、任意に設定することができる条件設定手段、をさらに備え、格納指示手段の各々は、格納のための条件に従って、検証対象回路を分割して割り当てられる回路より引き出したソース情報を基に、格納指示制御信号を生成する。
【００８０】
この構成により、格納のための条件を任意に設定することが可能となり、可変論理手段のコンパイル、及び、可変論理手段に回路データを書き込む作業、が格納のための条件を変更するたびに発生することを大幅に減らすことが可能となる。
【００８１】
その結果、検証対象回路の検証作業を円滑かつ迅速に進めることができる。
【００８２】
以下、図面を参照して本発明の実施の形態を説明する。
【００８３】
（実施の形態１）
【００８４】
図１は、本発明の実施の形態１における論理エミュレーション装置のブロック図である。
【００８５】
図１に示すように、この論理エミュレーション装置１は、可変論理素子１０、２０、３０、及び、可変配線素子４０、を具備する。
【００８６】
可変配線素子４０は、端子群４１〜４４を含む。端子群４１〜４３の各々は、ｍ個の端子（図示せず）を含む。端子群４４は、ｎ個の端子を含む。
【００８７】
可変論理素子１０は、端子群１５、１６を含む。可変論理素子２０は、端子群２５、２６を含む。可変論理素子３０は、端子群３５、３６を含む。
【００８８】
端子群１５、２５、３５の各々は、ｍ個の端子（図示せず）を含む。端子群１６、２６、３６の各々は、ｎ個の端子（図示せず）を含む。
【００８９】
可変論理素子１０、２０、３０の各々には、論理エミュレーション装置１による検証の対象となる回路（以下、実施の形態では、「検証対象回路」と呼ぶ。）が分割して割り当てられる。
【００９０】
具体的には、可変論理素子１０には、検証対象回路を分割した回路（以下、実施の形態では、「検証対象分割回路」と呼ぶ。）Ａが割り当てられる。可変論理素子２０には、検証対象分割回路Ｂが割り当てられる。可変論理素子３０には、検証対象分割回路Ｃが割り当てられる。
【００９１】
なお、検証対象回路の一例として、大規模ＬＳＩなどがある。実施の形態では、検証対象回路として、ＬＳＩを例にとる。
【００９２】
次に、各構成の機能・動作について説明する。
【００９３】
可変論理素子１０、２０、３０は、内部で実現する論理を外部から変更できる素子であって、設定された論理に基づく機能を実現する。
【００９４】
具体的には、可変論理素子１０、２０、３０は、機能をプログラムできる回路（論理セル）、結線状態をプログラムできる信号線（プログラム配線）、及び、プログラムできる入出力回路（プログラムＩ／Ｏ）、を組み合わせたものである。
【００９５】
例えば、可変論理素子１０、２０、３０は、ＦＰＧＡ（ｆｉｅｌｄ  ｐｒｏｇｒａｍｍａｂｌｅ  ｇａｔｅ  ａｒｒａｙ）である。
【００９６】
可変配線素子４０は、各可変論理素子１０、２０、３０間の接続を実現する素子であり、内部で実現される接続を外部から変更できる素子である。
【００９７】
可変配線素子４０は、例えば、ＦＰＩＤ（ｆｉｅｌｄ  ｐｒｏｇｒａｍｍａｂｌｅ  ｉｎｔｅｒｃｏｎｎｅｃｔ  ｄｅｖｉｃｅ）である。
【００９８】
このような論理エミュレーション装置１は、図１８の外部装置２００と同様の外部装置と接続して、様々な検証対象回路の検証を行う。
【００９９】
次に、接続関係を説明する。
【０１００】
可変論理素子１０と可変配線素子４０とは、配線１１により接続される。配線１１は、ｍ本の信号線を含む。
【０１０１】
より具体的には、可変論理素子１０の端子群１５のｍ個の端子と、可変配線素子４０の端子群４１のｍ個の端子と、がｍ本の信号線（配線１１）により、１対１に接続される。
【０１０２】
可変論理素子２０と可変配線素子４０とは、配線２１により接続される。配線２１は、ｍ本の信号線を含む。
【０１０３】
より具体的には、可変論理素子２０の端子群２５のｍ個の端子と、可変配線素子４０の端子群４２のｍ個の端子と、がｍ本の信号線（配線２１）により、１対１に接続される。
【０１０４】
可変論理素子３０と可変配線素子４０とは、配線３１により接続される。配線３１は、ｍ本の信号線を含む。
【０１０５】
より具体的には、可変論理素子３０の端子群３５のｍ個の端子と、可変配線素子４０の端子群４３のｍ個の端子と、がｍ本の信号線（配線３１）により、１対１に接続される。
【０１０６】
可変論理素子１０、２０、３０と可変配線素子４０とは、配線１２、２２、３２により接続される。配線１２、２２、３２の各々は、ｎ本の信号線を含む。
【０１０７】
より具体的には、可変配線素子４０の端子群４４の１個の端子に、可変論理素子１０の端子群１６の対応する１個の端子が、配線１２の対応する１本の信号線により、可変論理素子２０の端子群２６の対応する１個の端子が、配線２２の対応する１本の信号線により、可変論理素子３０の端子群３６の対応する１個の端子が、配線３２の対応する１本の信号線により、１対３に接続される。
【０１０８】
このようにして、可変配線素子４０の端子群４４のｎ個の端子の各々に、可変論理素子１０、２０、３０からの３本の信号線が接続される。この点を詳細に説明する。
【０１０９】
図２は、図１の配線の詳細な説明図である。なお、図２において、図１と同一の部分については、同一の符号を付している。また、図２では、図１の端子群１５、２５、３５、４１〜４３の記載は省略している。
【０１１０】
図２に示すように、可変配線素子４０の端子群４４は、ｎ個の端子４４−１〜４４−ｎを含む。可変論理素子１０の端子群１６は、ｎ個の端子１６−１〜１６−ｎを含む。可変論理素子２０の端子群２６は、ｎ個の端子２６−１〜２６−ｎを含む。可変論理素子３０の端子群３６は、ｎ個の端子３６−１〜３６−ｎを含む。
【０１１１】
配線１２は、ｎ本の信号線１２−１〜１２−ｎを含む。配線２２は、ｎ本の信号線２２−１〜２２−ｎを含む。配線３２は、ｎ本の信号線３２−１〜３２−ｎを含む。
【０１１２】
可変配線素子４０の１個の端子４４−１には、可変論理素子１０の対応する１個の端子１６−１が、対応する信号線１２−１により、可変論理素子２０の対応する１個の端子２６−１が、対応する信号線２２−１により、可変論理素子３０の対応する１個の端子３６−１が、対応する信号線３２−１により、１対３に接続される。
【０１１３】
同様にして、可変配線素子４０の端子４４−２〜４４−ｎの各々には、可変論理素子１０、２０、３０の対応する３個の端子１６−２〜１６−ｎ、２６−２〜２６−ｎ、３６−２〜３６−ｎが、対応する３本の信号線１２−２〜１２−ｎ、２２−２〜２２−ｎ、３２−２〜３２−ｎにより、１対３に接続される。
【０１１４】
このため、本実施の形態では、検証対象回路を分割した結果、可変論理素子１０と可変配線素子４０との間の信号線の数と、可変論理素子２０と可変配線素子４０との間の信号線の数と、可変論理素子３０と可変配線素子４０との間の信号線の数と、が異なった場合、次のような接続を実現できる。
【０１１５】
即ち、各可変論理素子１０、２０、３０と可変配線素子４０との間の必要な信号線の数に応じて、信号線１２−１〜１２−ｎ、２２−１〜２２−ｎ、３２−１〜３２−ｎの中から、必要な信号線を選択して使用できる。
【０１１６】
そして、信号線１２−１〜１２−ｎ、２２−１〜２２−ｎ、３２−１〜３２−ｎのうち、使用しない信号線は、可変論理素子１０、２０、３０と電気的に切り離す。つまり、使用しない信号線と接続される可変論理素子１０、２０、３０の端子からの出力をハイインピーダンス状態とする。
【０１１７】
このようにすることで、各可変論理素子１０、２０、３０と可変配線素子４０とを接続する際に、検証対象回路を分割した結果に適した効率的な、信号線の利用が可能となる。
【０１１８】
これらの点を具体例を挙げながら説明する。まず、第１の使用例について説明する。
【０１１９】
図３、図４、及び、図５は、本実施の形態における論理エミュレーション装置１の第１の使用例の説明図である。なお、図３、図４、及び図５において、図１と同一の部分については同一の符号を付しているが、省略している部分もある。
【０１２０】
さて、第１の使用例では、図１に示す配線１１、２１、３１の各々の信号線の本数ｍが、１００本とする。
【０１２１】
また、第１の使用例では、図１に示す配線１２、２２、３２の各々の信号線の本数ｎが、６０本とする。
【０１２２】
つまり、計３６０本の信号線が、可変配線素子４０による可変配線に使用可能な信号線の最大値である。
【０１２３】
言い換えると、可変配線素子４０の端子群４１、４２、４３の各々は、１００個の端子を含み、端子群４４は、６０個の端子４４−１〜４４−６０を含み（図２参照）、可変配線素子４０は、最大で、計３６０個の端子を可変配線に使用することができる。
【０１２４】
なお、可変論理素子１０の端子群１５は、１００個の端子を含み、端子群１６は、６０個の端子１６−１〜１６−６０を含む（図２参照）。可変論理素子２０の端子群２５は、１００個の端子を含み、端子群２６は、６０個の端子２６−１〜２６−６０を含む（図２参照）。可変論理素子３０の端子群３５は、１００個の端子を含み、端子群３６は、６０個の端子３６−１〜３６−６０を含む（図２参照）。
【０１２５】
一方、第１の使用例では、図３に示すように、検証対象回路を分割した結果、可変論理素子１０と可変論理素子３０との間の必要な信号線の本数が７０本、可変論理素子１０と可変論理素子２０との間の必要な信号線の本数が７０本、可変論理素子２０と可変論理素子３０との間の必要な信号線の本数が４０本であるとする。
【０１２６】
こうした場合、これらの信号線は、図４に示すように、可変配線素子４０を介して接続する必要がある。
【０１２７】
従って、各可変論理素子１０、２０、３０と可変配線素子４０との間で必要な信号線の本数は、それぞれ、１４０本、１１０本、１１０本となる。
【０１２８】
この場合、図５に示すように、配線１１の１００本の信号線と、配線１２の４０本の信号線１２−１〜１２−４０と、を可変論理素子１０が使用し、かつ、配線２１の１００本の信号線と、配線２２の１０本の信号線２２−４１〜２２−５０と、を可変論理素子２０が使用し、かつ、配線３１の１００本の信号線と、配線３２の１０本の信号線３２−５１〜３２−６０と、を可変論理素子３０が使用するようにする。
【０１２９】
まず、図５に示すように、配線１１の１００本の信号線と、配線１２の４０本の信号線１２−１〜１２−４０と、を可変論理素子１０が使用する点について説明する。
【０１３０】
つまり、この場合、可変論理素子１０は、可変配線素子４０の端子群４１の１００個の端子と、可変論理素子１０の端子群１５の１００個の端子と、を１対１に接続する配線１１の１００本の信号線を使用する。
【０１３１】
さらに、可変論理素子１０は、可変配線素子４０の端子群４４の４０個の端子４４−１〜４４−４０と、可変論理素子１０の端子群１６の４０個の端子１６−１〜１６−４０と、を１対１に接続する配線１２の４０本の信号線１２−１〜１２−４０を使用する（図２、図５参照）。
【０１３２】
そして、可変配線素子４０の４０個の端子４４−１〜４４−４０に接続される他の信号線２２−１〜２２−４０、３２−１〜３２−４０は、可変論理素子２０、３０と電気的に切り離す（図２、図５参照）。
【０１３３】
つまり、可変論理素子１０のみが使用し、可変論理素子２０が使用しない可変配線素子４０の端子４４−１〜４４−４０と接続される可変論理素子２０の端子群２６の４０個の端子２６−１〜２６−４０からの出力をハイインピーダンス状態とし、かつ、可変論理素子１０のみが使用し、可変論理素子３０が使用しない可変配線素子４０の端子４４−１〜４４−４０と接続される可変論理素子３０の端子群３６の４０個の端子３６−１〜３６−４０からの出力をハイインピーダンス状態とする（図２、図５参照）。
【０１３４】
さて、次に、図５に示すように、配線２１の１００本の信号線と、配線２２の１０本の信号線２２−４１〜２２−５０と、を可変論理素子２０が使用する点について説明する。
【０１３５】
つまり、この場合、可変論理素子２０は、可変配線素子４０の端子群４２の１００個の端子と、可変論理素子２０の端子群２５の１００個の端子と、を１対１に接続する配線２１の１００本の信号線を使用する。
【０１３６】
さらに、可変論理素子２０は、可変配線素子４０の端子群４４の１０個の端子４４−４１〜４４−５０と、可変論理素子２０の端子群２６の１０個の端子２６−４１〜２６−５０と、を１対１に接続する配線２２の１０本の信号線２２−４１〜２２−５０を使用する（図２、図５参照）。
【０１３７】
そして、可変配線素子４０の１０個の端子４４−４１〜４４−５０に接続される他の信号線１２−４１〜１２−５０、３２−４１〜３２−５０は、可変論理素子１０、３０と電気的に切り離す（図２、図５参照）。
【０１３８】
つまり、可変論理素子２０のみが使用し、可変論理素子１０が使用しない可変配線素子４０の端子４４−４１〜４４−５０と接続される可変論理素子１０の端子群１６の１０個の端子１６−４１〜１６−５０からの出力をハイインピーダンス状態とし、かつ、可変論理素子２０のみが使用し、可変論理素子３０が使用しない可変配線素子４０の端子４４−４１〜４４−５０と接続される可変論理素子３０の端子群３６の１０個の端子３６−４１〜３６−５０からの出力をハイインピーダンス状態とする（図２、図５参照）。
【０１３９】
さて、次に、図５に示すように、配線３１の１００本の信号線と、配線３２の１０本の信号線３２−５１〜３２−６０と、を可変論理素子３０が使用する点について説明する。
【０１４０】
つまり、この場合、可変論理素子３０は、可変配線素子４０の端子群４３の１００個の端子と、可変論理素子３０の端子群３５の１００個の端子と、を１対１に接続する配線３１の１００本の信号線を使用する。
【０１４１】
さらに、可変論理素子３０は、可変配線素子４０の端子群４４の１０個の端子４４−５１〜４４−６０と、可変論理素子３０の端子群３６の１０個の端子３６−５１〜３６−６０と、を１対１に接続する配線３２の１０本の信号線３２−５１〜３２−６０を使用する（図２、図５参照）。
【０１４２】
そして、可変配線素子４０の１０個の端子４４−５１〜４４−６０に接続される他の信号線１２−５１〜１２−６０、２２−５１〜２２−６０は、可変論理素子１０、２０と電気的に切り離す（図２、図５参照）。
【０１４３】
つまり、可変論理素子３０のみが使用し、可変論理素子１０が使用しない可変配線素子４０の端子４４−５１〜４４−６０と接続される可変論理素子１０の端子群１６の１０個の端子１６−５１〜１６−６０からの出力をハイインピーダンス状態とし、かつ、可変論理素子３０のみが使用し、可変論理素子２０が使用しない可変配線素子４０の端子４４−５１〜４４−６０と接続される可変論理素子２０の端子群２６の１０個の端子２６−５１〜２６−６０からの出力をハイインピーダンス状態とする（図２、図５参照）。
【０１４４】
以上のようにすることで、可変配線素子４０を介した各可変論理素子１０、２０、３０間の接続を適切なものとすることが可能である。また、全ての可変論理素子１０、２０、３０間の接続は可変配線素子４０を通過するので、各配線１１、１２、２１、２２、３１、３２間の信号の遅延のばらつきも小さくなる。
【０１４５】
以上が、第１の使用例である。次に第２の使用例を説明する。
【０１４６】
図６、図７、及び図８は、本実施の形態における論理エミュレーション装置１の第２の使用例の説明図である。なお、図６、図７、及び図８において、図１と同一の部分については同一の符号を付しているが、省略している部分もある。
【０１４７】
さて、第２の使用例では、図１に示す配線１１、２１、３１の各々の信号線の本数ｍが、１００本とする。
【０１４８】
また、第２の使用例では、図１に示す配線１２、２２、３２の各々の信号線の本数ｎが、６０本とする。
【０１４９】
つまり、計３６０本の信号線が、可変配線素子４０による可変配線に使用可能な信号線の本数の最大値である。
【０１５０】
言い換えると、可変配線素子４０の端子群４１、４２、４３の各々は、１００個の端子を含み、端子群４４は、６０個の端子４４−１〜４４−６０を含み（図２参照）、可変配線素子４０は、最大で、計３６０個の端子を可変配線に使用することができる。
【０１５１】
以上の前提条件は、第１の使用例と同様である。一方、第２の使用例では、図６に示すように、検証対象回路を分割した結果、可変論理素子１０と可変論理素子３０との間の必要な信号線の本数が２００本、可変論理素子１０と可変論理素子２０との間の必要な信号線の本数が１００本、可変論理素子２０と可変論理素子３０との間の必要な信号線の本数が３００本であるとする。
【０１５２】
こうした場合、これらの信号線は、図７に示すように、可変配線素子４０を介して接続する必要がある。
【０１５３】
従って、各可変論理素子１０、２０、３０と可変配線素子４０との間で必要な信号線の本数は、それぞれ、３００本、４００本、５００本となる。
【０１５４】
この場合、物理的な信号線の本数が足りないので、各可変論理素子１０、２０、３０と可変配線素子４０との間の信号線を時分割多重で用いて、各可変論理素子１０、２０、３０間の接続を行う必要がある。
【０１５５】
時分割多重で物理的な信号線の本数以上の信号を各可変論理素子１０、２０、３０間で伝達する具体的な方法については後述する。
【０１５６】
時分割多重することによって１本の信号線で複数の信号を伝達する場合、１本の信号線で伝達する信号の数が少ない方が、論理エミュレーション装置１の可変論理素子１０、２０、３０に割り当てられた検証対象分割回路Ａ、Ｂ、Ｃの動作速度を向上させる点で有利なことは明らかである。
【０１５７】
そこで、図８に示すように、可変論理素子１０が、配線１１に含まれる１００本の信号線１１−１〜１１−１００のうち、７５本の信号線１１−１〜１１−７５を使用し、かつ、可変論理素子２０が、配線２１の１００本の信号線を使用し、かつ、可変論理素子３０が、配線３１の１００本の信号線と、配線３２の２５本の信号線３２−１〜３２−２５を使用するようにする。
【０１５８】
従って、可変論理素子１０が使用しない信号線１１−７６〜１１−１００、１２−１〜１２−６０は、可変論理素子１０と電気的に切り離す。
【０１５９】
つまり、可変論理素子１０が使用しない信号線１１−７６〜１１−１００、１２−１〜１２−６０と接続される可変論理素子１０の端子群１５、１６の計８５個の端子からの出力をハイインピーダンス状態とする。
【０１６０】
また、可変論理素子２０が使用しない信号線２２−１〜２２−６０は、可変論理素子２０と電気的に切り離す。
【０１６１】
つまり、可変論理素子２０が使用しない信号線２２−１〜２２−６０と接続される可変論理素子２０の端子群２６の６０個の端子からの出力をハイインピーダンス状態とする。
【０１６２】
さらに、可変論理素子３０が使用しない信号線３２−２６〜３２−６０は、可変論理素子３０と電気的に切り離す。
【０１６３】
つまり、可変論理素子３０が使用しない信号線３２−２６〜３２−６０と接続される可変論理素子３０の端子群３６の３５個の端子からの出力をハイインピーダンス状態とする。
【０１６４】
なお、上記のことから、可変論理素子３０のみが使用し、可変論理素子１０が使用しない可変配線素子４０の端子４４−１〜４４−２５と接続される可変論理素子１０の端子群１６の２５個の端子１６−１〜１６−２５からの出力はハイインピーダンス状態とされ、かつ、可変論理素子３０のみが使用し、可変論理素子２０が使用しない可変配線素子４０の端子４４−１〜４４−２５と接続される可変論理素子２０の端子群２６の２５個の端子２６−１〜２６−２５からの出力はハイインピーダンス状態とされていることが分かる（図２、図８参照）。
【０１６５】
各可変論理素子１０、２０、３０が使用する信号線を上記のように決定することによって、１本の信号線で、信号線４本分の信号を時分割多重で伝達することが可能となる。
【０１６６】
ここで、各可変論理素子１０、２０、３０と可変配線素子４０との間の信号線線の本数が、可変配線素子４０の可変配線用の端子の数の最大値の３分の１、即ち、１２０本で固定されていたと仮定する。
【０１６７】
このように仮定すると、可変論理素子３０と可変配線素子４０との間においては、１本の信号線で、信号線５本分の信号を時分割多重で伝達することが必要となる。
【０１６８】
以上の説明により、本実施の形態によって、各可変論理素子１０、２０、３０と可変配線素子４０との間で使用可能な信号線の本数が可変となることにより、適切な時分割多重を行うことができ、論理エミュレーション装置１の各可変論理素子１０、２０、３０に割り当てられた検証対象分割回路Ａ、Ｂ、Ｃの動作速度の向上を図ることが可能となることが理解できる。
【０１６９】
さて、次に、信号を時分割多重するための具体的な方法を説明する。この場合、図１の可変論理素子１０を用いて、信号線４本分の信号（以下、この例では、「パラレルデータ」と呼ぶ。）を時分割多重して、１本の信号線で伝達する例を挙げる。また、この例では、可変論理素子１０が、図８に示す信号線１１−１〜１１−２５を使用するとする。
【０１７０】
図９は、パラレルデータを時分割多重するための機能を実現するときの可変論理素子１０のブロック図である。なお、図９において、図１及び図８と同一の部分については、同一の符号を付している。
【０１７１】
図９に示すように、パラレルデータの時分割多重を行うために、可変論理素子１０では、パラレル／シリアル変換回路（以下、「Ｐ／Ｓ変換回路」と呼ぶ。）１３−１〜１３−２５、を構成できる論理を設定する。
【０１７２】
そうすると、Ｐ／Ｓ変換回路１３−１は、検証対象分割回路Ａからの、対応するパラレルデータをパラレル／シリアル変換して、シリアルデータとし、一定周期で順次対応する１本の信号線１１−１へ出力する。
【０１７３】
同様に、Ｐ／Ｓ変換回路１３−２〜１３−２５の各々は、検証対象分割回路Ａからの、対応するパラレルデータをパラレル／シリアル変換して、シリアルデータとし、一定周期で順次対応する１本の信号線１１−２〜１１−２５へ出力する。
【０１７４】
以上のようにして、時分割多重で物理的な信号線の本数以上の信号を各可変論理素子１０、２０、３０間で伝達することができる。
【０１７５】
さて、次に、時分割多重された信号を元の信号に戻すための具体的な方法を説明する。
【０１７６】
この場合、信号線４本分の信号を時分割多重した信号（以下、この例では、「シリアルデータ」と呼ぶ。）を１本の信号線で受け取り、元の信号線４本分の信号（以下、この例では、「パラレルデータ」と呼ぶ。）にする例を、図１の可変論理素子１０を用いて説明する。また、この例では、可変論理素子１０が、図８に示す信号線１１−２６〜１１−７５を使用するとする。
【０１７７】
図１０は、シリアルデータを元のパラレルデータにするための機能を実現するときの可変論理素子１０のブロック図である。なお、図１０において、図１及び図８と同一の部分については、同一の符号を付している。
【０１７８】
図１０に示すように、シリアルデータを元のパラレルデータにするために、可変論理素子１０では、シリアル／パラレル変換回路（以下、「Ｓ／Ｐ変換回路」と呼ぶ。）１７−１〜１７−５０、を構成できる論理を設定する。
【０１７９】
そうすると、Ｓ／Ｐ変換回路１７−１は、対応する信号線１１−２６からの、シリアルデータをシリアル／パラレル変換して、元のパラレルデータにし、検証対象分割回路Ａへ出力する。
【０１８０】
同様に、Ｓ／Ｐ変換回路１７−２〜１７−５０の各々は、対応する信号線１１−２７〜１１−７５からの、シリアルデータをシリアル／パラレル変換して、元のパラレルデータにし、検証対象分割回路Ａへ出力する。
【０１８１】
以上のようにして、時分割多重された信号を元の信号に変換することができる。
【０１８２】
さて、以上のように、本実施の形態では、可変配線素子４０の端子群４４の各端子４４−１〜４４−ｎは、３つの可変論理素子１０、２０、３０の相互間での対応する３本の信号線１２−１〜１２−ｎ、２２−１〜２２−ｎ、３２−１〜３２−ｎと接続される。
【０１８３】
これにより、可変配線素子４０の端子群４４の各端子４４−１〜４４−ｎに接続される信号線１２−１〜１２−ｎ、２２−１〜２２−ｎ、３２−１〜３２−ｎについては、どの可変論理素子１０、２０、３０でも使用できる。つまり、可変論理素子１０、２０、３０が使用可能な信号線の本数を可変としている。  このため、検証対象回路を分割した結果に基づき定まる各可変論理素子１０、２０、３０が使用する信号線の本数に応じて、信号線を選択して利用できるため、可変配線素子の増加を伴うことなく、各可変論理素子１０、２０、３０に対する信号線の過不足を極力抑制できて、信号線を効率的に利用できる。
【０１８４】
その結果、可変配線素子の増加に伴うコストの増加、信号線の不足のために行う過剰な時分割多重に起因する各可変論理素子１０、２０、３０間の信号伝達の遅延、及び、そのような信号伝達の遅延に起因する検証対象分割回路Ａ、Ｂ、Ｃの動作速度の低下、を極力抑制できる。
【０１８５】
しかも、各可変論理素子１０、２０、３０に割り当てる各検証対象分割回路Ａ、Ｂ、Ｃ間の接続に必要な信号線の本数が、各可変論理素子１０、２０、３０と可変配線素子４０との間の信号線の本数に合致するように検証対象回路を分割する、というような煩雑な処理が不要となる。
【０１８６】
その結果、検証対象回路の分割処理の処理時間の増大を極力抑制できるとともに、可変論理素子１０、２０、３０ごとの内部回路の使用率のばらつきの発生による無駄を極力抑制できる。
【０１８７】
なお、可変論理素子の数は、３つに限られるものではなく、任意の数であっても、本実施の形態を適用できる。
【０１８８】
また、可変配線素子の数は、１つに限られるものではなく、任意の数であっても、本実施の形態を適用できる。
【０１８９】
（実施の形態２）
【０１９０】
図１１は、本発明の実施の形態２における論理エミュレーション装置２のブロック図である。なお、図１１において、図１と同様の部分については、同一の符号を付して、適宜説明を省略する。
【０１９１】
図１１に示すように、実施の形態２における論理エミュレーション装置２は、図１の論理エミュレーション装置１の構成に、選択ユニット５０を加えたものである。
【０１９２】
従って、実施の形態２における論理エミュレーション装置２では、各可変論理素子１０、２０、３０からの配線１２、２２、３２は、可変配線素子４０の端子群４４と、選択ユニット５０を介して接続される。この点を、詳細に説明する。
【０１９３】
図１２は、図１１の配線の詳細な説明図である。なお、図１２において、図１１と同一の部分については、同一の符号を付している。また、図１２では、図１１の端子群１５、２５、３５、４１〜４３の記載は省略している。また、図１２において、図２と同様の部分については、同一の符号を付して説明を適宜省略する。
【０１９４】
図１２に示すように、選択ユニット５０は、端子群４４の端子４４−１〜４４−ｎに対応して、スイッチ５０−１〜５０−ｎを含む。
【０１９５】
スイッチ５０−１には、可変論理素子１０の対応する１個の端子１６−１が、対応する信号線１２−１により、可変論理素子２０の対応する１個の端子２６−１が、対応する信号線２２−１により、可変論理素子３０の対応する１個の端子３６−１が、対応する信号線３２−１により、１対３に接続される。
【０１９６】
そして、スイッチ５０−１は、可変配線素子４０の対応する１個の端子４４−１に接続される。
【０１９７】
同様にして、スイッチ５０−２〜５０−ｎの各々には、可変論理素子１０、２０、３０の対応する３個の端子１６−２〜１６−ｎ、２６−２〜２６−ｎ、３６−２〜３６−ｎが、対応する３本の信号線１２−２〜１２−ｎ、２２−２〜２２−ｎ、３２−２〜３２−ｎにより、１対３に接続される。
【０１９８】
そして、スイッチ５０−２〜５０−ｎの各々は、可変配線素子４０の対応する１個の端子４４−２〜４４−ｎに接続される。
【０１９９】
なお、スイッチ５０−１〜５０−ｎの各々は、３本の信号線のうち、可変論理素子１０、２０、３０が使用する信号線を選択して、可変配線素子４０の対応する端子に接続する。
【０２００】
さて、次に、スイッチ５０−１〜５０−ｎの機能・動作を説明する。
【０２０１】
スイッチ５０−１は、信号線１２−１、信号線２２−１、又は、信号線３２−１、のいずれか１つを選択して、選択した信号線と対応する端子４４−１と、を接続する。
【０２０２】
同様に、スイッチ５０−２〜５０−ｎの各々は、信号線１２−２〜１２−ｎ、信号線２２−２〜２２−ｎ、又は、信号線３２−２〜３２−ｎ、の対応する３本の信号線のうちのいずれか１つを選択して、選択した信号線と対応する端子４４−２〜４４−ｎと、を接続する。
【０２０３】
このようにすることで、論理エミュレーション装置２の回路の誤動作を防止できるとともに、消費電力を低減することができる。この点を、具体例を挙げて説明する。
【０２０４】
スイッチ５０−１が、可変論理素子１０に接続される信号線１２−１を選択して、可変配線素子４０の端子４４−１に接続した場合、他の可変論理素子２０、３０に接続される信号線２２−１、３２−１は、信号線１２−１、スイッチ５０−１、及び、可変配線素子４０の端子４４−１、によって形成される信号伝達経路と電気的に切り離される。
【０２０５】
このため、信号線１２−１、スイッチ５０−１、及び、可変配線素子４０の端子４４−１、によって形成される信号伝達経路には、信号線２２−１、３２−１が電気的に切り離されていなかった場合に生じる信号の反射による影響を極力軽減できる。
【０２０６】
その結果、回路の誤動作を防止することが可能となる。また、信号線２２−１、３２−１が、信号伝達経路と電気的に切り離されるため、信号伝達経路の負荷が減るので動作時の消費電力を低減できる。
【０２０７】
さて、以上のように、信号線１２−１〜１２−ｎ、２２−１〜２２−ｎ、３２−１〜３２−ｎのうち、使用しない信号線は、スイッチ５０−１〜５０−ｎにより、可変配線素子４０の端子４４−〜４４−ｎとは接続されず、使用する信号線のみが、スイッチ５０−１〜５０−ｎにより、可変配線素子４０の端子４４−〜４４−ｎと接続される。
【０２０８】
さらに、実施の形態１と同様に、信号線１２−１〜１２−ｎ、２２−１〜２２−ｎ、３２−１〜３２−ｎのうち、使用しない信号線は、可変論理素子１０、２０、３０と電気的に切り離される。
【０２０９】
つまり、実施の形態１と同様に、可変論理素子１０、２０、３０の端子１６−１〜１−ｎ、２６−１〜２６−ｎ、３６−１〜３６−ｎのうち、使用しない信号線に接続される端子からの出力は、ハイインピーダンス状態にされる。
【０２１０】
なお、実施の形態１と同様に、図１１の配線１１、２１、３１の各々の信号線についても、使用しない信号線は、可変論理素子１０、２０、３０と電気的に切り離される。
【０２１１】
つまり、実施の形態１と同様に、可変論理素子１０、２０、３０の端子群１５、２５、３５の端子のうち、使用しない信号線に接続される端子からの出力は、ハイインピーダンス状態にされる。
【０２１２】
さて、以上のように、本実施の形態では、スイッチ５０−１〜５０−ｎの各々は、３つの可変論理素子１０、２０、３０の相互間での対応する３本の信号線１２−１〜１２−ｎ、２２−１〜２２−ｎ、３２−１〜３２−ｎから、一本の信号線を選択して、可変配線素子４０の端子群４４の対応する端子４４−１〜４４−ｎに接続する。
【０２１３】
これにより、スイッチ５０−１〜５０−ｎによって選択されなかった可変論理素子からの信号線は、可変配線素子４０の端子群４４の端子４４−１〜４４−ｎから切り離される。
【０２１４】
その結果、余分な信号線が接続されることによって生ずる信号の乱れ、及び、余分な信号線の浮遊容量を原因とした装置の消費電力の増加、を抑制できる。
【０２１５】
また、本実施の形態による論理エミュレーション装置２は、実施の形態１による論理エミュレーション装置１の構成を全て含んでいる。このため、本実施の形態では、実施の形態１と同様の効果をも奏する。
【０２１６】
なお、可変論理素子の数は、３つに限られるものではなく、任意の数であっても、本実施の形態を適用できる。
【０２１７】
また、可変配線素子の数は、１つに限られるものではなく、任意の数であっても、本実施の形態を適用できる。
【０２１８】
（実施の形態３）
【０２１９】
図１３は、本発明の実施の形態３における論理エミュレーション装置のブロック図である。
【０２２０】
図１３に示すように、この論理エミュレーション装置３は、トレースメモリ６１、７１、可変論理素子６０、７０、及び、解析ユニット８０、を具備する。この２つのトレースメモリ６１、７１は、２つの可変論理素子６０、７０に対応して設けられる。
【０２２１】
可変論理素子６０は、トレースメモリ制御回路６２、及び、トレース制御回路６３、を含む。
【０２２２】
可変論理素子７０は、トレースメモリ制御回路７２、及び、トレース制御回路７３、を含む。
【０２２３】
可変論理素子６０には、検証対象回路を分割した検証対象分割回路Ａが割り当てられる。可変論理素子７０には、検証対象回路を分割した検証対象分割回路Ｂが割り当てられる。
【０２２４】
解析ユニット８０と、可変論理素子６０、７０のトレースメモリ制御回路６２、７２と、は配線８１により接続される。この配線８１は、複数の信号線を含む。
【０２２５】
この配線８１は、解析ユニット８０から、各可変論理素子６０、７０のトレースメモリ制御回路６２、７２へ、アクセスするためのものである。
【０２２６】
また、可変論理素子６０に割り当てられた検証対象分割回路Ａと、可変論理素子７０に割り当てられた検証対象分割回路Ｂと、は配線８２により接続される。この配線８２は、複数の信号線を含む。
【０２２７】
さて、次に、各構成の機能・動作を説明する。
【０２２８】
可変論理素子６０、７０は、内部で実現する論理を外部から変更できる素子であって、設定された論理に基づく機能を実現する。つまり、可変論理素子６０、７０は、図１の可変論理素子１０、２０、３０と同様のものである。
【０２２９】
トレースメモリ６１、７１は、対応する可変論理素子６０、７０に割り当てられた検証対象分割回路Ａ、Ｂの内部の指定された信号（以下、実施の形態では、「観測対象内部信号」と呼ぶ。）Ｓ−ｊ、Ｓ−Ｊが表す情報を一定の時間間隔で格納するものであり、対応する可変論理素子６０、７０と直接接続される。
【０２３０】
なお、観測対象内部信号Ｓ−ｊは、検証対象分割回路Ａからの複数の観測対象内部信号Ｓ−１、Ｓ−２、…、を総括して表現したものである。観測対象内部信号Ｓ−Ｊは、検証対象分割回路Ｂからの複数の観測対象内部信号Ｓ−１、Ｓ−２、…、を総括して表現したものである。
【０２３１】
トレースメモリ６１、７１として、例えば、ＳＲＡＭ（ｓｔａｔｉｃ  ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ）を利用できる。
【０２３２】
トレースメモリ制御回路６２、７２は、検証対象分割回路Ａ、Ｂの観測対象内部信号が表す情報を、対応するトレースメモリ６１、７１に格納するために、対応するトレースメモリ６１、７１に対して、アドレス、データ（観測対象内部信号Ｓ−ｊ、Ｓ−Ｊ）、及び、リード／ライト信号、などを出力する。
【０２３３】
トレース制御回路６３、７３は、トリガ条件を記憶している。そして、トレース制御回路６３、７３は、検証対象分割回路Ａ、Ｂの内部の、トリガ条件と比較するための信号（以下、実施の形態において、「トリガソース信号」と呼ぶ。）Ｘ−ｉ、Ｘ−Ｉの状態を監視し、記憶しているトリガ条件と比較した結果、トリガ条件が成立した場合に、トレースメモリ制御回路６２、７２に対して、対応するトレースメモリ６１、７１への観測対象内部信号Ｓ−ｊ、Ｓ−Ｊが表す情報の格納の開始又は終了、を指示するための信号（以下、本実施の形態では、「トリガ信号」と呼ぶ。）Ｙ１、Ｙ２を生成する。
【０２３４】
そして、トレースメモリ制御回路６２、７２は、トレース制御回路６３、７３が生成したトリガ信号Ｙ１、Ｙ２に従って、対応するトレースメモリ６１、７１への観測対象内部信号Ｓ−ｊ、Ｓ−Ｊが表す情報の格納の開始及び終了を制御する。
【０２３５】
なお、トリガソース信号Ｘ−ｉは、検証対象分割回路Ａからの複数のトリガソース信号Ｘ−１、Ｘ−２、…、を総括して表現したものである。また、トリガソース信号Ｘ−Ｉは、検証対象分割回路Ｂからの複数のトリガソース信号Ｘ−１、Ｘ−２、…、を総括して表現したものである。
【０２３６】
解析ユニット８０は、トレースメモリ制御回路６２、７２及び配線８１を介して、トレースメモリ６１、７１に格納された観測対象内部信号Ｓ−ｊ、Ｓ−Ｊが表す情報を読み出して、解析する。解析ユニット８０は、例えば、ワークステーションで構成できる。
【０２３７】
さて、場合によっては、１つの可変論理素子に対して、トリガソース信号の本数が数十本に及ぶことがある。
【０２３８】
このとき、例えば、トレース制御回路を、可変論理素子の外部に設けていると、可変論理素子の外部に、この数十本のトリガソース信号を引き出さなければならない。
【０２３９】
そうすると、可変論理素子の端子の数には限りがあるので、各可変論理素子間の検証対象分割回路を接続するための端子の数及び信号線の本数がその分少なくなり、場合によっては不足することもある。
【０２４０】
一方、本実施の形態では、トレース制御回路６３、７３を可変論理素子６０、７０の内部に設けて、各可変論理素子６０、７０の内部でトリガー条件の判定を行っているので、各可変論理素子６０、７０間の検証対象分割回路Ａ、Ｂを接続するための端子の数及び配線８２の信号線の本数が、トリガソース信号のために不足することはない。
【０２４１】
さて、次に、本実施の形態による論理エミュレーション装置３の動作をより詳細に説明する。
【０２４２】
本実施の形態において、検証対象回路は、２つの可変論理素子６０、７０に分割されて実現される。
【０２４３】
検証対象回路のデバッグのために観測される観測対象内部信号Ｓ−ｊ、Ｓ−Ｊは、可変論理素子６０、７０の内部のトレースメモリ制御回路６２、７２を介して、対応するトレースメモリ６１、７１へ与えられ、格納される。
【０２４４】
トレースメモリ６１、７１への観測対象内部信号Ｓ−ｊ、Ｓ−Ｊが表す情報の格納開始と格納終了と、は対応するトレース制御回路６３、７３が、トレースメモリ制御回路６２、７２に対して指示する。
【０２４５】
より具体的には、トレース制御回路６３、７３は、入力されるトリガソース信号Ｘ−ｉ、Ｘ−Ｉの状態と、トレース制御回路６３、７３に予め設定された格納開始のトリガ条件と、を比較し、それらが一致したときは（格納開始のトリガ条件成立）、トレースメモリ制御回路６２、７２に対して、対応するトレースメモリ６１、７１への観測対象内部信号Ｓ−ｊ、Ｓ−Ｊが表す情報の格納の開始を指示するトリガ信号Ｙ１、Ｙ２を生成する。
【０２４６】
トレース制御回路６３、７３から、観測対象内部信号Ｓ−ｊ、Ｓ−Ｊの格納開始のトリガ信号Ｙ１、Ｙ２を受けたトレースメモリ制御回路６２、７２は、一定の時間間隔で観測対象内部信号Ｓ−ｊ、Ｓ−Ｊをサンプリングし、対応するトレースメモリ６１、７１へ出力する。
【０２４７】
そして、トレースメモリ６１、６２は、対応するトレースメモリ制御回路６２、７２から与えられた観測対象内部信号Ｓ−ｊ、Ｓ−Ｊが表す情報を格納する。
【０２４８】
なお、可変論理素子６０に割り当てられた検証対象分割回路Ａの観測対象内部信号Ｓ−ｊは、可変論理素子６０に接続される対応するトレースメモリ６１に格納され、可変論理素子７０に割り当てられた検証対象分割回路Ｂの観測対象内部信号Ｓ−Ｊは、可変論理素子７０に接続される対応するトレースメモリ７１に格納される。
【０２４９】
従って、トレースメモリには、対応する可変論理素子以外の可変論理素子からの観測対象内部信号が格納されることはない。
【０２５０】
一方、トレース制御回路６３、７３は、入力されるトリガソース信号Ｘ−ｉ、Ｘ−Ｉの状態と、トレース制御回路６３、７３に予め設定された格納終了のトリガ条件と、を比較し、それらが一致したときは（格納終了のトリガ条件成立）、トレースメモリ制御回路６２、７２に対して、対応するトレースメモリ６１、７１への観測対象内部信号Ｓ−ｊ、Ｓ−Ｊが表す情報の格納の終了を指示するトリガ信号Ｙ１、Ｙ２を生成する。
【０２５１】
トレース制御回路６３、７３から、観測対象内部信号Ｓ−ｊ、Ｓ−Ｊの格納終了のトリガ信号Ｙ１、Ｙ２を受けたトレースメモリ制御回路６２、７２は観測対象内部信号Ｓ−ｊ、Ｓ−Ｊのサンプリング終了し、対応するトレースメモリ６１、７１への出力を停止する。つまり、観測対象内部信号Ｓ−ｊ、Ｓ−Ｊが表す情報の格納を終了する。
【０２５２】
さて、トレースメモリ６１、７１に格納された観測対象内部信号Ｓ−ｊ、Ｓ−Ｊが表す情報は、配線８１を介して、解析ユニット８０に読み込まれ、検証対象回路の動作が解析される。
【０２５３】
さて、以上のように、本実施の形態では、可変論理素子６０、７０の各々は、検証対象分割回路Ａ、Ｂが出力するトリガソース信号Ｘ−ｉ、Ｘ−Ｉを基に、対応するトレースメモリ６１、７１への、観測対象内部信号Ｓ−ｊ、Ｓ−Ｊが表す情報の格納（格納開始又は格納終了）を指示するトレース制御回路６３、７３と、トレース制御回路６３、７３の指示に従って、対応するトレースメモリ６１、７１への、観測対象内部信号Ｓ−ｊ、Ｓ−Ｊが表す情報の格納（格納開始又は格納終了）を制御するトレースメモリ制御回路６２、７２と、を内部に設けている。
【０２５４】
従って、検証対象分割回路Ａ、Ｂの観測対象内部信号Ｓ−ｊ、Ｓ−Ｊが表す情報の格納を指示する基になるトリガソース信号Ｘ−ｉ、Ｘ−Ｉを、可変論理素子６０、７０の外部へ出力することなく、また、格納を指示するトリガ信号Ｙ１、Ｙ２を外部から入力することなく、検証対象分割回路Ａ、Ｂの観測対象内部信号Ｓ−ｊ、Ｓ−Ｊが表す情報の格納を制御することが可能となる。
【０２５５】
このため、論理エミュレーション装置３は、可変論理素子６０、７０の外部において、トリガソース信号Ｘ−ｉ、Ｘ−Ｉ、及び、格納を指示するトリガ信号Ｙ１、Ｙ２、のために、信号線を消費することがなく、また、可変論理素子６０、７０は、トリガソース信号Ｘ−ｉ、Ｘ−Ｉの出力、及び、格納を指示するトリガ信号Ｙ１、Ｙ２の入力、のために、端子を消費することがない。
【０２５６】
その結果、各可変論理素子６０、７０間（各検証対象分割回路Ａ、Ｂ間）の信号の伝達のために利用する、信号線及び可変論理素子６０、７０の端子の不足を極力解消できる。
【０２５７】
ここで、トレース制御回路６３、７３は、検証対象分割回路Ａ、Ｂが出力するトリガソース信号Ｘ−ｉ、Ｘ−Ｉを基に、対応するトレースメモリ６１、７１への、観測対象内部信号Ｓ−ｊ、Ｓ−Ｊが表す情報の格納を指示する点で、「格納指示回路」、の概念に含まれる。
【０２５８】
なお、可変論理素子の数は、２つに限られるものではなく、任意の数であっても、本実施の形態を適用できる。
【０２５９】
また、各可変論理素子間の接続を、専用の可変配線素子を用いて実現した場合であっても、本実施の形態を適用できる。
【０２６０】
（実施の形態４）
【０２６１】
図１４は、本発明の実施の形態４における論理エミュレーション装置のブロック図である。なお、図１４において、図１３と同様の部分については、同一の符号を付して、適宜説明を省略する。
【０２６２】
図１４に示すように、実施の形態４による論理エミュレーション装置４は、図１３の論理エミュレーション装置３の構成に、トリガ条件設定ユニット９０を加えたものである。
【０２６３】
トリガ条件設定ユニット９０は、配線９１により、トレース制御回路６４、７４と接続される。この配線９１は、複数の信号線を含む。
【０２６４】
そして、トリガ条件設定ユニット９０は、配線９１を介して、トレース制御回路６３、７３のトリガ条件を任意に設定する。
【０２６５】
このトレース制御回路６３、７３は、実施の形態３のトレース制御回路６３、７３と同様のものであり、検証対象分割回路Ａ、Ｂからのトリガソース信号Ｘ−ｉ、Ｘ−Ｉの状態を監視し、記憶しているトリガ条件と比較した結果、トリガ条件が成立した場合に、トレースメモリ制御回路６２、７２に対して、対応するトレースメモリ６１、７１への観測対象内部信号Ｓ−ｊ、Ｓ−Ｊが表す情報の格納の開始又は終了、を指示するためのトリガ信号Ｙ１、Ｙ２を生成する。
【０２６６】
なお、トリガ条件設定ユニット９０及び解析ユニット８０は、ワークステーションで構成できる。
【０２６７】
以下、上記の点を詳細に説明する。
【０２６８】
図１５は、図１４のトレース制御回路６３のブロック図である。なお、図１５において、図１４と同一の部分については、同一の符号を付している。また、図１５の説明では、トリガソース信号Ｘ−ｉを、トリガソース信号Ｘ−１、…、Ｘ−ｐ、とする。
【０２６９】
図１５に示すように、このトレース制御回路６３は、トリガ条件記憶回路６５、及び、トリガ条件比較回路６６、を含む。
【０２７０】
トリガ条件記憶回路６５は、配線９１により、図１４のトリガ条件設定ユニット９０と接続される。
【０２７１】
このトリガ条件記憶回路６５は、トリガ条件を記憶する。このトリガ条件は、複数のトリガソース信号Ｘ−１〜Ｘ−ｐに対応した複数の条件からなる。
【０２７２】
つまり、トリガソース信号Ｘ−１〜Ｘ−ｐごとに、トリガソース信号が表す情報が「１」のときに、そのトリガソース信号の論理を「真」（条件成立）とするか、トリガソース信号が表す情報が「０」のときに、そのトリガソース信号の論理を「真」（条件成立）とするか、あるいは、そのトリガソース信号の論理を常に「真」（条件成立）とするか、が定められており、全てのトリガソース信号Ｘ−１〜Ｘ−ｐの論理が「真」のときに、トリガ条件が成立するとする。
【０２７３】
つまり、トリガ条件は、トリガソース信号Ｘ−１〜Ｘ−ｐごとの条件（以下、「個別条件」と呼ぶことがある。）の組み合わせである。
【０２７４】
このトリガ条件は、トリガ条件設定ユニット９０により設定され、配線９１を介して、トリガ条件記憶回路６５に与えられ記憶される。
【０２７５】
そして、トリガ条件比較回路６６は、トリガ条件記憶回路６５から、トリガ条件を表す信号ｘ−１〜ｘ−ｐを取得する。
【０２７６】
なお、トリガ条件設定ユニット９０は、格納開始のトリガ条件と、格納終了のトリガ条件と、を設定し、これらがトリガ条件記憶回路６５に記憶される。
【０２７７】
一方、トリガソース信号Ｘ−１〜Ｘ−ｐは、検証対象分割回路Ａから、トリガ条件比較回路６６に与えられる。
【０２７８】
そして、トリガ条件比較回路６６は、トリガ条件を表す信号ｘ−１〜ｘ−ｐと、対応するトリガソース信号Ｘ−１〜Ｘ−ｐと、を比較する。
【０２７９】
トリガ条件比較回路６６は、比較の結果、全てのトリガソース信号Ｘ−１〜Ｘ−ｐについて、個別条件が成立したときに、トリガ条件が成立したとして、論理が「真」のトリガ信号Ｙ１を生成し、図１４のトレースメモリ制御回路６２対して出力する。
【０２８０】
なお、格納開始のトリガ条件が成立し、論理が「真」のトリガ信号Ｙ１を、トレースメモリ制御回路６２へ与えたときは、トレースメモリ制御回路６２は、観測対象内部信号Ｓ−ｊの格納を開始する制御を行う。
【０２８１】
また、格納終了のトリガ条件が成立し、論理が「真」のトリガ信号Ｙ１を、トレースメモリ制御回路６２へ与えたときは、トレースメモリ制御回路６２は、観測対象内部信号Ｓ−ｊの格納を終了する制御を行う。
【０２８２】
さて、次に、具体例を挙げて、トリガ条件の設定について説明する。
【０２８３】
トリガ条件設定ユニット９０は、例えば、トリガソース信号Ｘ−１が表す情報が「１」のとき個別条件成立、トリガソース信号Ｘ−２が表す情報が「０」のとき個別条件成立、トリガソース信号Ｘ−３〜Ｘ−ｐに関しては常に個別条件成立、というトリガ条件を設定することができ、トリガー条件記憶回路６５に記憶させることができる。
【０２８４】
これは、一例であり、トリガ条件設定ユニット９０は、様々な個別条件を組み合わせた様々なトリガ条件を設定することができる。
【０２８５】
あらかじめトリガソース信号Ｘ−ｊとしてトレース制御回路６４に入力されている検証対象分割回路Ａの信号の範囲内であれば、このように、トリガ条件設定ユニット９０によって、トリガ条件記憶回路６５に記憶されるトリガ条件を任意に書き換えることが可能である。
【０２８６】
図１４のトレース制御回路７３の構成及び機能も、図１５のトレース制御回路６３の構成及び機能と同様であり、トリガ条件設定ユニット９０によって、トリガ条件を任意に書き換えることが可能である。
【０２８７】
以上のように、本実施の形態では、検証対象分割回路Ａ、Ｂの観測対象内部信号Ｓ−ｊ、Ｓ−Ｊが表す情報の、対応するトレースメモリ６１、７１への格納（格納開始又は格納終了）のためのトリガ条件を、トリガ条件設定ユニット９０によって、任意に設定することができる。
【０２８８】
このため、トリガ条件を変更するたびに、可変論理素子６０、７０の内部回路の論理及び配置配線を決定する作業（コンパイル）を行ったり、可変論理素子６０、７０に回路データを書き込む作業を行ったり、という作業が発生する頻度を大幅に減らすことが可能となり、検証対象回路の検証の円滑化及び迅速化が可能となる。
【０２８９】
また、本実施の形態による論理エミュレーション装置４は、実施の形態３による論理エミュレーション装置３の構成及び機能を全て具備している。このため、本実施の形態による論理エミュレーション装置４は、実施の形態３による論理エミュレーション装置３と同様の効果をも奏する。
【０２９０】
なお、可変論理素子の数は、２つに限られるものではなく、任意の数であっても、本実施の形態を適用できる。
【０２９１】
また、各可変論理素子間の接続を、専用の可変配線素子を用いて実現した場合であっても、本実施の形態を適用できる。
【０２９２】
また、解析ユニット８０とトリガ条件設定ユニット９０とを、例えば、１つののワークステーションで一体として構成して、配線８１及び配線９１の全てを同一の配線としたり、あるいは、これらの配線の一部を同一の配線とすることもできる。
【０２９３】
（実施の形態５）
【０２９４】
図１６は、本発明の実施の形態５における論理エミュレーション装置のブロック図である。なお、図１６において、図１４と同様の部分については、同一の符号を付して、適宜説明を省略する。
【０２９５】
図１６に示すように、実施の形態５による論理エミュレーション装置５は、図１４の論理エミュレーション装置４のトレース制御回路６３、７３に代えて、トレース制御回路６７、７７を設け、さらに、プルアップ抵抗１０１を加えたものである。
【０２９６】
そして、トレース制御回路６７、７７のオープンコレクタ出力が、共通の配線１０２に与えられる。
【０２９７】
この共通の配線１０２は、プルアップ抵抗１０１に接続され、このプルアップ抵抗１０１は、電源１００に接続される。
【０２９８】
また、配線１０２の電位は、トレースメモリ制御回路６２、７２に与えられ、この配線１０２の電位により、一括してトレースメモリ制御回路６２、７２が制御される。
【０２９９】
以上のように、ワイヤード論理（ｗｉｒｅｄ  ｌｏｇｉｃ）を形成して、トレース制御回路６７、７７のオープンコレクタ出力により、トレースメモリ制御回路６２、７２を制御する。以下、詳細を説明する。
【０３００】
図１７は、図１６のトレース制御回路６７のブロック図である。なお、図１７において、図１５と同様の部分については、同一の符号を付して、説明を適宜省略する。また、図１７において、図１６と同一の部分については、同一の符号を付している。
【０３０１】
図１７に示すように、このトレース制御回路６７は、図１５のトレース制御回路６３の構成に、インバータ６８、及び、トランジスタ６９、を加えたものである。
【０３０２】
トリガ条件比較回路６６の出力信号（以下、本実施の形態において、「トリガ制御信号」と呼ぶ。）Ｚ１は、インバータ６８に入力され、反転された後、トランジスタ６９のベース電極に入力される。
【０３０３】
トランジスタ６９のコレクタ電極は、配線１０２に接続され、エミッタ電極は、接地される。つまり、トランジスタ６９のオープンコレクタ出力が、配線１０２に与えられる。
【０３０４】
ここで、図１６のトレース制御回路７７の構成は、図１７のトレース制御回路６７の構成と同様である。従って、トレース制御回路７７のトリガ条件記憶回路、トリガ条件比較回路、インバータ、及び、トランジスタ、には、トレース制御回路６７のトリガ条件記憶回路６５、トリガ条件比較回路６６、インバータ６８、及び、トランジスタ６９と同一の符号を付して説明する。ただし、トレース制御回路７７のトリガ条件比較回路６６のトリガ制御信号は、トリガ制御信号Ｚ２とする。
【０３０５】
このトレース制御回路７７のトランジスタ６９のコレクタ電極も、配線１０２に接続される。つまり、トレース制御回路７７のトランジスタ６９のオープンコレクタ出力も、配線１０２に与えられる。
【０３０６】
以上のように、２つのトレース制御回路６７、７７の２つのトランジスタ６９のオープンコレクタ出力が、プルアップ抵抗１０１によりプルアップされた共通の配線１０２に与えられ、さらに、この配線１０２を、トレースメモリ制御回路６２、７２に接続し、ワイヤード論理を形成して、トレースメモリ制御回路６２、７２を制御する。
【０３０７】
このワイヤード論理によるトレースメモリ制御回路６２、７２の制御の詳細を説明する。
【０３０８】
まず、可変論理素子６０のトレース制御回路６７、あるいは、可変論理素子７０のトレース制御回路７７、のいずれか一方、又は、双方において、トリガ条件が不成立の場合について説明する。
【０３０９】
この場合、可変論理素子６０のトレース制御回路６７でトリガ条件が成立し、可変論理素子７０のトレース制御回路７７でトリガ条件が不成立の場合を例にとる。
【０３１０】
そうすると、トレース制御回路６７のトリガ条件比較回路６６は、Ｈ（ハイ）レベルのトリガ制御信号Ｚ１（論理が「真」のトリガ制御信号Ｚ１）をインバータに与える。よって、トレース制御回路６７のトランジスタ６９は、オフする。
【０３１１】
一方、トレース制御回路７７のトリガ条件比較回路６６は、Ｌ（ロー）レベルのトリガ制御信号Ｚ２（論理が「真」でない「偽」のトリガ制御信号Ｚ２）をインバータに与える。よって、トレース制御回路７７のトランジスタ６９は、オンする。
【０３１２】
従って、配線１０２の電位状態は、Ｌレベルになる。同様に、可変論理素子７０のトレース制御回路７７でトリガ条件が成立し、可変論理素子６０のトレース制御回路６７でトリガ条件が不成立の場合も、配線１０２の電位状態は、Ｌレベルである。同様に、可変論理素子７０のトレース制御回路７７、及び、可変論理素子６０のトレース制御回路６７、の双方でトリガ条件が不成立の場合も、配線１０２の電位状態は、Ｌレベルである。
【０３１３】
以上のように、ワイヤード論理では、トレース制御回路６７、７７のいずれかにおいて、トリガ条件が成立せず、トランジスタ６９のオープンコレクタ出力がＬレベルになると、配線１０２の電位状態がＬレベルになり、論理は「真」でない「偽」となる。
【０３１４】
従って、配線１０２に接続される可変論理素子６０、７０のトレースメモリ制御回路６２、７２は、対応する検証対象分割回路Ａ、Ｂの観測対象内部信号Ｓ−ｊ、Ｓ−Ｊの格納開始又は格納終了の制御を行わない。
【０３１５】
さて、次に、可変論理素子６０のトレース制御回路６７、及び、可変論理素子７０のトレース制御回路７７、の双方において、トリガ条件が成立した場合について説明する。
【０３１６】
この場合、トレース制御回路６７のトリガ条件比較回路６６は、Ｈ（ハイ）レベルのトリガ制御信号Ｚ１（論理が「真」のトリガ制御信号Ｚ１）をインバータに与える。よって、トレース制御回路６７のトランジスタ６９は、オフする。
【０３１７】
一方、トレース制御回路７７のトリガ条件比較回路７６は、Ｈ（ハイ）レベルのトリガ制御信号Ｚ２（論理が「真」のトリガ制御信号Ｚ２）をインバータに与える。よって、トレース制御回路７７のトランジスタ６９は、オフする。
【０３１８】
従って、配線１０２の電位状態は、Ｈレベルになる。このように、ワイヤード論理では、トレース制御回路６７、７７の双方において、トリガ条件が成立し、双方のトランジスタ６９のオープンコレクタ出力がＨレベルになるときのみ、配線１０２の電位状態がＨレベルになり、論理は「真」となる。
【０３１９】
これにより、配線１０２に接続される可変論理素子６０、７０のトレースメモリ制御回路６２、７２は、対応する検証対象分割回路Ａ、Ｂの観測対象内部信号Ｓ−ｊ、Ｓ−Ｊの格納開始又は格納終了の制御を行う。
【０３２０】
このように、本実施の形態では、トレース制御回路６７、７７の双方において、トリガ条件が成立したときにのみ、配線１０２の電位状態がＨレベルになり、論理が「真」となって、検証対象分割回路Ａ、Ｂの観測対象内部信号Ｓ−ｊ、Ｓ−Ｊの格納開始又は格納終了の指示が出される。
【０３２１】
このため、本実施の形態では、トレース制御回路６７、７７のトリガ条件記憶回路６５の各々が記憶している各トリガ条件を組み合わせた条件が、実質的なトリガ条件と言える。
【０３２２】
本実施の形態では、この実質的なトリガ条件の判定をワイヤード論理を形成して行っている。
【０３２３】
このため、この実質的なトリガ条件の判定を、各可変論理素子６０、７０間の極めてわずかな配線で実現することができる。
【０３２４】
また、本実施の形態では、観測対象内部信号Ｓ−ｊ、Ｓ−Ｊの格納開始又は格納終了を指示する配線１０２の電位が、トリガ信号となっている。
【０３２５】
この点、トリガ条件比較回路６６の出力信号が、トリガ信号そのものとなっている実施の形態４と異なっている。
【０３２６】
さて、以上のように、本実施の形態では、トレース制御回路６７、７７の各々は、検証対象分割回路Ａ、Ｂが出力するトリガソース信号Ｘ−ｉ、Ｘ−Ｉを基に、対応するトレースメモリ６１、７１への、観測対象内部信号Ｓ−ｊ、Ｓ−Ｊが表す情報の格納（格納開始又は格納終了）の指示を制御するトリガ制御信号Ｚ１、Ｚ２を生成し、トレース制御回路６７、７７の各々が生成したトリガ制御信号Ｚ１、Ｚ２により、共通する配線１０２の電位を制御して、ワイヤード論理を構成し、トレースメモリ制御回路６２、７２の各々は、その共通する配線１０２の電位に従って、対応するトレースメモリ６１、７１への、観測対象内部信号Ｓ−ｊ、Ｓ−Ｊが表す情報の格納を制御する。
【０３２７】
これにより、全てのトレース制御回路６７、７７からの全てのトリガ制御信号Ｚ１、Ｚ２の論理が「真」のときにのみ、観測対象内部信号Ｓ−ｊ、Ｓ−Ｊが表す情報の格納の指示を出すという処理を、各可変論理素子６０、７０間の極めてわずかな配線１０２で実現することができる。
【０３２８】
つまり、複数の可変論理素子６０、７０にまたがる実質的なトリガ条件の成立又は不成立の判定を、各可変論理素子６０、７０間の極めてわずかな１本の配線１０２で実現することができる。
【０３２９】
また、本実施の形態による論理エミュレーション装置５は、実施の形態４による論理エミュレーション装置４の構成及び機能を全て具備している。このため、本実施の形態による論理エミュレーション装置５は、実施の形態４による論理エミュレーション装置４と同様の効果をも奏する。
【０３３０】
ここで、トリガ条件比較回路６６が生成するトリガ制御信号Ｚ１、Ｚ２は、観測対象内部信号Ｓ−ｊ、Ｓ−Ｊが表す情報の格納（格納開始又は格納終了）の指示を制御する点で、「格納指示制御信号」、の概念に含まれる。
【０３３１】
なお、上記では、配線１０２をプルアップして、「ワイヤードＡＮＤ」により、トレースメモリ制御回路６２、７２を制御しているが、配線１０２をプルダウンして、「ワイヤードＯＲ」により、トレースメモリ制御回路６２、７２を制御することもできる。
【０３３２】
また、可変論理素子の数は、２つに限られるものではなく、任意の数であっても、本実施の形態を適用できる。
【０３３３】
また、各可変論理素子間の接続を、専用の可変配線素子を用いて実現した場合であっても、本実施の形態を適用できる。
【０３３４】
【発明の効果】
請求項１記載の論理エミュレーション装置では、第２の端子群の各端子に接続される信号線については、予め定められた複数の可変論理手段であれば、どの可変論理手段でも使用できる。つまり、可変論理手段が使用可能な信号線の本数を可変としている。
【０３３５】
このため、検証対象回路を分割した結果に基づき定まる各可変論理手段が使用する信号線の本数に応じて、信号線を選択して利用できるため、可変配線手段の増加を伴うことなく、各可変論理手段に対する信号線の過不足を極力抑制できて、信号線を効率的に利用できる。
【０３３６】
その結果、可変配線手段の増加に伴うコストの増加、信号線の不足のために行う過剰な時分割多重に起因する各可変論理手段間の信号伝達の遅延、及び、そのような信号伝達の遅延に起因する各可変論理手段に割り当てる回路（検証対象分割回路）の動作速度の低下、を極力抑制できる。
【０３３７】
しかも、各可変論理手段に割り当てる各検証対象分割回路間の接続に必要な信号線の本数が、各可変論理手段と可変配線手段との間の信号線の本数に合致するように検証対象回路を分割する、というような煩雑な処理が不要となる。
【０３３８】
その結果、検証対象回路の分割処理の処理時間の増大を極力抑制できるとともに、可変論理手段ごとの内部回路の使用率のばらつきの発生による無駄を極力抑制できる。
【０３３９】
請求項２記載の論理エミュレーション装置では、スイッチング手段によって選択されなかった可変論理手段からの信号線は、可変配線手段の第２の端子群の端子から切り離される。
【０３４０】
その結果、余分な信号線が接続されることによって生ずる信号の乱れ、及び、余分な信号線の浮遊容量を原因とした装置の消費電力の増加、を抑制できる。
【０３４１】
請求項３記載の論理エミュレーション装置では、可変論理手段に割り当てられる回路（検証対象分割回路）より引き出したソース情報を基に、対応するメモリへの、検証対象分割回路の内部信号が表す情報の格納を指示する格納指示手段が、可変論理手段の内部に設けられる。
【０３４２】
従って、検証対象分割回路の内部信号が表す情報の格納を指示する基になるソース情報を、可変論理手段の外部へ出力することなく、また、格納の指示を外部から入力することなく、検証対象分割回路の内部信号が表す情報の格納を制御することが可能となる。
【０３４３】
このため、論理エミュレーション装置は、可変論理手段の外部において、ソース情報、及び、格納の指示、のために、信号線を消費することがなく、また、可変論理手段は、ソース情報の出力、及び、格納の指示の入力、のために、端子を消費することがない。
【０３４４】
その結果、各可変論理手段間の信号の伝達のために利用する、信号線及び可変論理手段の端子の不足を極力解消できる。
【０３４５】
請求項４記載の論理エミュレーション装置では、格納のための条件を任意に設定することが可能となり、可変論理手段のコンパイル、及び、可変論理手段に回路データを書き込む作業、が格納のための条件を変更するたびに発生することを大幅に減らすことが可能となる。
【０３４６】
その結果、検証対象回路の検証作業を円滑かつ迅速に進めることができる。
【０３４７】
請求項５記載の論理エミュレーション装置では、全ての格納指示手段からの全ての格納指示制御信号の論理が「真」のときにのみ、格納の指示を出すという処理を、各可変論理手段間の極めてわずかな配線で実現することができる。
【０３４８】
請求項６記載の論理エミュレーション装置では、格納のための条件を任意に設定することが可能となり、可変論理手段のコンパイル、及び、可変論理手段に回路データを書き込む作業、が格納のための条件を変更するたびに発生することを大幅に減らすことが可能となる。
【０３４９】
その結果、検証対象回路の検証作業を円滑かつ迅速に進めることができる。
【図面の簡単な説明】
【図１】本発明の実施の形態１における論理エミュレーション装置のブロック図
【図２】同論理エミュレーション装置の詳細な説明図
【図３】同論理エミュレーション装置の第１の使用例の説明図
【図４】同論理エミュレーション装置の第１の使用例の説明図
【図５】同論理エミュレーション装置の第１の使用例の説明図
【図６】同論理エミュレーション装置の第２の使用例の説明図
【図７】同論理エミュレーション装置の第２の使用例の説明図
【図８】同論理エミュレーション装置の第２の使用例の説明図
【図９】同論理エミュレーション装置におけるパラレル／シリアル変換の説明図
【図１０】同論理エミュレーション装置におけるシリアル／パラレル変換の説明図
【図１１】本発明の実施の形態２における論理エミュレーション装置のブロック図
【図１２】同論理エミュレーション装置の詳細な説明図
【図１３】本発明の実施の形態３における論理エミュレーション装置のブロック図
【図１４】本発明の実施の形態４における論理エミュレーション装置のブロック図
【図１５】同論理エミュレーション装置のトレース制御回路のブロック図
【図１６】本発明の実施の形態５における論理エミュレーション装置のブロック図
【図１７】同論理エミュレーション装置のトレース制御回路のブロック図
【図１８】従来の論理エミュレーション装置のブロック図
【符号の説明】
１、２、３、４、５、２０１  論理エミュレーション装置
１０、２０、３０、６０、７０、２０２〜２０４  可変論理素子
１１、１２、２１、２２、３１、３２、８１、８２、９１、１０２、２１０〜２２０  配線
１１−１〜１１−１００、１２−１〜１２−ｎ、２２−１〜２２−ｎ、３２−１〜３２−ｎ  信号線
１３−１〜１３−２５  パラレル／シリアル変換回路（Ｐ／Ｓ変換回路）
１５、１６、２５、２６、３５、３６、４１〜４４  端子群
１７−１〜１７−５０  シリアル／パラレル変換回路（Ｓ／Ｐ変換回路）
４０、２０５  可変配線素子
１６−１〜１６−ｎ、２６−１〜２６−ｎ、３６−１〜３６−ｎ、４４−１〜４４−ｎ  端子
５０  選択ユニット
５０−１〜５０−ｎ  スイッチ
６１、７１、２０７  トレースメモリ
６２、７２  トレースメモリ制御回路
６３、６７、７３、７７、２０６  トレース制御回路
６５  トリガ条件記憶回路
６６  トリガ条件比較回路
６８  インバータ
６９  トランジスタ
８０  解析ユニット
９０  トリガ条件設定ユニット
１００  電源
１０１  プルアップ抵抗
２００  外部装置
２０８  ホストインタフェース回路
２０９  ホストワークステーション
Ａ、Ｂ、Ｃ、２３０〜２３２  検証対象分割回路
Ｓ−ｊ、Ｓ−Ｊ  観測対象内部信号
Ｘ−ｉ、Ｘ−Ｉ  トリガソース信号
Ｙ１、Ｙ２  トリガ信号
Ｚ１、Ｚ２  トリガ制御信号
【図１】
0003544540.tif 000002
【図２】
0003544540.tif 000003
【図３】
0003544540.tif 000004
【図４】
0003544540.tif 000005
【図５】
0003544540.tif 000006
【図６】
0003544540.tif 000007
【図７】
0003544540.tif 000008
【図８】
0003544540.tif 000009
【図９】
0003544540.tif 000010
【図１０】
0003544540.tif 000011
【図１１】
0003544540.tif 000012
【図１２】
0003544540.tif 000013
【図１３】
0003544540.tif 000014
【図１４】
0003544540.tif 000015
【図１５】
0003544540.tif 000016
【図１６】
0003544540.tif 000017
【図１７】
0003544540.tif 000018
【図１８】
0003544540.tif 000019