(57)【要約】【課題】  アナログ信号に起因する動作状態を模擬する。【解決手段】  差動インタフェース回路の差動入力ＤＰと差動入力ＤＭが入力されると、信号変化検出手段１は、差動入力ＤＰと差動入力ＤＭの信号状態を監視してその論理レベルの変化を検出する。たとえば、双方の論理レベルが同相となったり、それぞれの論理レベルが同時に反対極性に移行するなどの論理レベル変化を検出する。そして、信号変化検出手段１によって検出された論理レベルの変化に応じて、信号変換手段２は、論理レベルが変化する前の出力値を反転させ所要の時間幅で出力する反転信号を生成することによって、差動出力にパルス状の反転出力信号区間を発生させ、アナログ過渡応答を模擬する。【選択図】  図１
2006092072.tif 000002
【特許請求の範囲】
【請求項１】
差動入力信号の差分に応じて差動回路出力信号を生成する差動インタフェース回路の動作を模擬し、前記差動インタフェース回路を有する回路の機能を検証する回路機能検証方法において、
差動信号対である、第１の差動入力信号と第２の差動入力信号を入力し、信号変化検出手段で、前記第１の差動入力信号および前記第２の差動入力信号の論理レベルの変化を検出し、
検出された前記第１の差動入力信号および前記第２の差動入力信号の論理レベルの変化に応じて、信号変換手段で、前記差動入力信号変化前の差動回路出力値を所要の時間幅で反転させた反転信号を生成して差動インタフェース回路出力信号とする、
ことを特徴とする回路機能検証方法。
【請求項２】
前記第１の差動入力信号および前記第２の差動入力信号の論理レベルが同相になったことを検出すると、前記第１の差動入力信号と前記第２の差動入力信号が同相状態を継続する間に前記差動入力信号が同相に変化する前の前記差動インタフェース回路の出力値の前記反転信号を生成する、
ことを特徴とする請求項１記載の回路機能検証方法。
【請求項３】
あらかじめ設定された時間パラメータによって、前記第１の差動入力信号および前記第２の差動入力信号が同相状態の間に出力させる前記反転信号の波形変化エッジを遅延させる、
ことを特徴とする請求項２記載の回路機能検証方法。
【請求項４】
前記第１の差動入力信号と前記第２の差動入力信号の論理レベルが同相に変化したことが検出された時点から、前記時間パラメータによってあらかじめ設定された遅延時間経過後に前記反転信号を出力する、
ことを特徴とする請求項３記載の回路機能検証方法。
【請求項５】
前記反転信号の出力が終了した時点から、前記時間パラメータによってあらかじめ設定された遅延時間経過後に、さらに次の前記反転信号を出力する、
ことを特徴とする請求項３記載の回路機能検証方法。
【請求項６】
前記時間パラメータは、前記反転信号の生成時に任意の値が設定されることを特徴とする請求項３記載の回路機能検証方法。
【請求項７】
前記第１の差動入力信号と前記第２の差動入力信号に対して前記差動インタフェース回路の出力信号を所定の時間遅延させる遅延手段を有し、
前記第１の差動入力信号と前記第２の差動入力信号が同相となる状態の開始または同相となる状態が終了となる論理レベルへの移行を検出すると、前記反転信号の信号変化を所要の時間幅で変動させ、前記遅延手段を介して前記差動出力信号として出力する、
ことを特徴とする請求項１記載の回路機能検証方法。
【請求項８】
あらかじめ設定された時間パラメータによって前記反転信号の波形変化エッジを発生させる時間幅を変動させることを特徴とする請求項７記載の回路機能検証方法。
【請求項９】
前記第１の差動入力信号と前記第２の差動入力信号の論理レベルが互いに反対の論理レベルに変化したことを検出すると、前記遅延手段を介して出力される前記第１の差動入力信号と前記第２の差動入力信号が同相であることを示す出力信号が同相状態の終了を出力する前に反対の極性の第１の差動入力信号と第２の差動入力信号に応じた前記差動出力信号を出力することを特徴とする請求項７記載の回路機能検証方法。
【請求項１０】
前記第１の差動入力信号と前記第２の差動入力信号について所定の論理レベル変化を検出すると、第２の信号変換手段で、前記第１の差動入力信号及び前記第２の差動入力信号がレベルが同相であることを示す同相検出信号を所要の頻度で発生させることを特徴とする請求項１記載の回路機能検証方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は回路機能検証方法に関し、特に差動入力信号（以下、差動入力とする）の差分に応じて差動回路出力信号（以下、差動出力とする）を生成する差動インタフェース回路の動作を模擬し、差動インタフェース回路を有する回路の機能を検証する回路機能検証方法に関する。
【背景技術】
【０００２】
従来、大規模集積回路（ＬＳＩ；Large Scale Integrated Circuits）、特にアナログ回路部とデジタル回路部とが混在する回路の機能検証に用いられるシミュレーション技術の向上が望まれてきた。
【０００３】
アナログ回路部とデジタル回路部が混在する例として、たとえばアナログの差動入力を入力してデジタルの差動出力を出力する差動インタフェース回路がある。図１２は、差動インタフェース回路の一例を示した回路図である。差動インタフェース回路は、差動増幅回路Ａ１、シングルエンド回路Ａ２とＡ３、ＡＮＤ回路Ｇ１を有する。差動増幅回路Ａ１は、差動入力ＤＰ、ＤＭの電圧差を検出し、データ信号Ｄとして出力する。シングルエンド回路Ａ２、Ａ３も、基本的には差動回路であるが、信号入力端子と対地間の信号が一定の電圧値より大きいかどうかを比較し、その出力を発生させる。すなわち、シングルエンド回路Ａ２は、差動入力ＤＰが一定電圧値より大きいかどうかを出力し、シングルエンド回路Ａ３は、差動入力ＤＭが一定電圧値より大きいかどうかを出力する。ＡＮＤ回路Ｇ１は、シングルエンド回路Ａ２とＡ３の出力信号の反転信号の論理積をとり、ＥＯＰ信号として出力する。
【０００４】
このようなインタフェース回路を有するＬＳＩの設計検証で論理シミュレーションを行う際には、処理時間の短縮のため論理シミュレーションに適応するように簡略化したインタフェース回路モデルが使われる。図１３は、従来の論理シミュレーション用インタフェース回路モデルの一例を示した回路図である。デジタル論理では差動アナログ信号を扱えないため、アナログ信号をデジタル値（Ｈｉｇｈレベル／Ｌｏｗレベル）に置き換えてインタフェース回路モデルに入力させる。図の例では、入力信号を反転出力するバッファＢ１、Ｂ２で差動回路を置き換え、差動出力Ｄ’として差動入力の正相側のデジタル信号（ＤＰ’）を出力する。同様に、シングルエンド回路Ａ２、Ａ３も正相側のデジタル信号（ＤＰ’）を反転出力するバッファＢ３と、逆相側のデジタル信号（ＤＭ’）を反転出力するバッファＢ４に置き換え、ＡＮＤ回路Ｇ２で論理積をとりＥＯＰ’を出力する。従来の設計検証では、このようなインタフェース回路モデルで生成される差動出力Ｄ’とＥＯＰ’を用いて論理回路の検証が行われていた。
【０００５】
なお、差動入力として逆相側のデジタル信号（ＤＭ’）を用いることもできる。この場合、差動増幅回路を逆相側のデジタル信号（ＤＭ’）を反転出力するバッファで置き換え、差動出力Ｄ’を出力する。
【０００６】
また、アナログ信号で回路シミュレーションを行い、一定の電圧値を超えるとデジタル回路の信号変化が起きたものとしてデジタル論理シミュレーションを進ませることによって、回路シミュレーションから論理シミュレーションへ伝達される信号変化ができるだけ正確な時刻で発生するように調整をとるシミュレーション装置が提案されている（たとえば、特許文献１参照）。
【特許文献１】特開平１０−３４０２８０号公報（段落番号〔００２０〕〜〔００３１〕、図１）
【発明の開示】
【発明が解決しようとする課題】
【０００７】
上記の差動インタフェース回路は、ＩＥＥＥ１３９４、ＵＳＢ（Universal Serial Bus）、Ｅｔｈｅｒｎｅｔ（登録商標）機能における高速データ転送のためのインタフェース信号として用いられる差動入力（アナログ信号）の処理に適用される。図１４は、差動インタフェース回路における差動入力と差動出力の関係を示した図である。図は、差動入力ＤＰ、ＤＭの電圧値の時間変化と、そのときの差動出力Ｄを示している。
【０００８】
差動インタフェース回路における差動入力ＤＰ、ＤＭは、通常はどちらかの論理レベルがＨｉｇｈレベル（以下、Ｈとする）で他方がＬｏｗレベル（以下、Ｌとする）になる。以下、このように双方の論理レベルが異なる状態を差動状態とする。図のａ、ｅの区間が差動状態を示している。ところが、データ転送では、データ転送制御手順における特殊な状態を表すために、差動入力ＤＰ、ＤＭが両方ともＬ、もしくは両方ともＨなどの特殊な入力状態が使用されている。以下、このように双方の論理レベルが同相となる状態を同相状態とする。図のｂ、ｃ、ｄの区間が同相状態を示している。実際に差動インタフェース回路が適用される場合、差動入力ＤＰ、ＤＭは外部のホスト側となるパーソナルコンピュータ（ＰＣ）、またはホスト側との間に挿入される中継器か、接続ケーブルに接続される。このため、差動インタフェース回路に入力する入力信号は、差動インタフェース回路側の動作とは非同期に信号変化し、かつケーブルの影響で波形がなまったり、信号のジッタ、パルス幅の変動など、入力信号波形に微小な変動が発生する。差動入力間の電圧差が大きい差動状態では、入力信号波形が微小に変化しても差動出力Ｄに影響はない。ところが、差動増幅回路は差動入力間の電圧差を増幅して信号電圧を出力するため、差動入力が同相状態の場合には比較的小さな入力信号波形のアンダーシュートなどによっても入力電圧差が逆転し、差動出力が反転してしまうことがある。たとえば、図の例のｂ区間では、差動入力ＤＭのアンダーシュートによって差動出力Ｄが反転している。そして、アンダーシュートが回復したｃ区間で再び、差動出力Ｄが反転し、差動入力ＤＰがＨへ変化する際の振動によりｄ区間で再び差動出力Ｄが反転している。本来このような差動出力は、論理回路においてデータとして無視されなければならない。同様に、２つの差動入力の論理レベルがともに反対極性に変化する際にも、一方もしくは双方の信号の微小な変動で差動出力の変化が発生する場合がある。
【０００９】
同様に、差動入力の論理レベルが同時に反対極性に変化する際のクロスポイントが低下すると、シングルエンド出力（ＥＯＰ）が過渡的にＨになる現象が発生する。図１５は、差動信号波形のクロスポイント低下時の差動入力と差動出力の関係を示した図である。図の例では、差動入力ＤＰの信号波形のなまりにより、差動入力ＤＰとＤＭがクロスするクロスポイントが低下し、これにより、シングルエンド出力ＥＯＰに過渡的な信号変化が発生する。
【００１０】
しかしながら、従来のインタフェース回路モデルでは、アナログ信号をデジタル値に置き換えた信号を入力信号としているため、アナログ信号特有の微小な信号変化による差動出力の変化を模擬することができないという問題点がある。このため、このような波形変化の際の機能検証を行うことができず、設計上の問題があったとしてもこれを検出することができなかった。この結果、実際のＬＳＩにおいてこのような波形変化を内部回路が検出し、信号変化があったと誤認識して回路の誤動作につながる場合があった。
【００１１】
また、上記の説明のアナログ信号で回路シミュレーションを行い、一定の電圧値でデジタル論理シミュレーションを進ませる手法では、たとえば差動入力が同相になるなど、特殊条件下の差動信号の信号変化で新たな信号生成を効率よく行うことが難しいという問題点がある。
【００１２】
以上のように、従来の差動インタフェース回路モデルを用いた回路機能検証方法では、実際の回路におけるアナログ信号に起因する動作状態を模擬して機能検証を行うことが難しいという問題点があった。
【００１３】
本発明はこのような点に鑑みてなされたものであり、アナログ信号に起因する動作状態を論理回路の機能検証で扱えるよう模擬する差動インタフェース回路モデルを用いた回路機能検証方法を提供することを目的とする。
【課題を解決するための手段】
【００１４】
本発明では上記課題を解決するために、図１に示すような差動インタフェース回路モデルを用いた回路機能検証方法が提供される。
本発明の回路機能検証方法に用いる差動インタフェース回路モデルは、差動の信号対である。第１の差動入力ＤＰと、第２の差動入力ＤＭの論理レベルの変化を検出する信号変化検出手段１と、信号変化検出手段１で検出された第１の差動入力ＤＰと第２の差動入力ＤＭの論理レベルの変化に応じて、入力信号変化前の出力値を所要の時間幅で反転させた反転信号を生成して差動出力として出力する信号変換手段２とを有する。なお、回路機能の検証では、第１の差動入力ＤＰおよび第２の差動入力ＤＭは、２値データに置き換えられて、差動インタフェース回路モデルに入力される。
【００１５】
このような差動インタフェース回路モデルを用いた回路機能検証方法によれば、差動インタフェース回路の差動の信号対である、第１の差動入力ＤＰと第２の差動入力ＤＭが入力されると、信号変化検出手段１は、第１の差動入力ＤＰと第２の差動入力ＤＭの信号状態を監視してその論理レベルの所定の変化を検出する。たとえば、双方の論理レベルが同相となったり、それぞれの論理レベルが同時に反対極性に移行するなどの論理レベル変化を検出する。そして、信号変化検出手段１によって検出された論理レベルの変化に応じて、信号変換手段２は、入力信号が変化する前の出力値を反転させ所要の時間幅で出力する反転信号を生成することによって、差動出力にパルス状の反転出力信号区間を発生させる。
【００１６】
これにより、差動入力インタフェース回路の差動入力のアナログ動作に起因する差動出力のアナログ過渡応答を模擬する。
【発明の効果】
【００１７】
本発明の回路機能検証方法では、差動入力の論理レベルの変化を検出すると、論理レベル変化前の出力値を所要の時間幅で反転出力させる差動インタフェース回路モデルを使用してアナログ過渡応答を擬似的に再現し、差動インタフェース回路を有する回路の機能検証を行う。このような差動インタフェース回路モデルを用いた回路機能検証方法によって、設計段階でアナログ信号特有の微小な信号変化による差動出力の変動に応じた影響の論理シミュレーションを行うことが可能となる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明の実施の形態を図面を参照して説明する。まず、実施の形態に適用される発明の概念について説明し、その後、実施の形態の具体的な内容を説明する。
図１は、本発明の実施の形態に適用される発明の概念図である。
【００１９】
差動インタフェース回路モデルは、アナログ信号に相当するＨ、Ｌの２値化データである差動入力ＤＰ、ＤＭを入力する信号変化検出手段１と、信号変化検出手段１の検出した差動入力ＤＰ、ＤＭの論理レベル変化に応じた出力信号を受け、差動出力Ｄと、差動入力ＤＰ、ＤＭの論理レベルが同相であるかどうかを示す同相検出信号ＥＯＰに変換する信号変換手段２を有する。信号変換手段２は、差動出力Ｄを出力する第１の信号変換手段３と、同相検出信号ＥＯＰを出力する第２の信号変換手段４を具備する。
【００２０】
差動入力ＤＰ、ＤＭは、通常状態では、一方の論理レベルがＨのとき他方がＬの差動状態で入力され、所定のデータ値を表す。たとえば、ＤＰ＞ＤＭがＨ、ＤＰ＜ＤＭがＬを表す。そして、伝送における伝送データの終了時点など、特殊な状態を示す際には、双方の論理レベルをともにＨもしくはＬとする同相状態で入力される。ここでの差動入力ＤＰ、ＤＭは、ＨまたはＬの値をとるデジタル信号で入力される。
【００２１】
信号変化検出手段１は、差動入力ＤＰ、ＤＭの論理レベルの所定の変化（ＨからＬ、もしくはＬからＨ）を検出し、所定の変化が発生したことを論理レベルの信号変換手段２へ出力する。図の例では、信号変化検出手段１が差動入力ＤＰ、ＤＭの論理レベルが同相に変化した（ともにＨまたはともにＬ）ことを検出すると、これを第１の信号変換手段３に通知する。また、差動入力ＤＰ、ＤＭの論理レベルが同時に反対極性に変化（一方がＨからＬに変化したとき、もう一方がＬからＨへ変化）したことを検出すると、これを第２の信号変換手段４に通知する。ここで、反転信号とは、差動入力がアナログ信号であることに起因し、差動入力の微小な変動により差動出力に出現する信号変化を模擬する信号である。
【００２２】
第１の信号変換手段３は、信号変化検出手段１によって差動入力ＤＰ、ＤＭの論理レベルが同相となったことが検出されると、これまで出力していた差動出力Ｄの値を反転した反転信号を所要の時間幅で差動出力Ｄとして出力する。反転信号は、差動入力が同相となったことを検出した時点から論理レベルの変化エッジまでの時間、反転信号の出力時間、複数の反転信号を出力する場合は次の論理レベルの変化までの時間を予め設定される時間パラメータによって変動させることができる。これにより、差動入力ＤＰとＤＭの論理レベルが同相状態における差動入力の波形アンダーシュートなどに起因する差動出力の変動を模擬する。
【００２３】
第２の信号変換手段４は、信号変化検出手段１によって差動入力ＤＰ、ＤＭの論理レベルが同時に反対極性へと変化したことが検出されると、ＥＯＰを所要の頻度で発生させる。これにより、差動入力ＤＰとＤＭの論理レベルが同時に反対極性に変化した際の差動入力の波形なまりによるクロスポイント低下などに起因する差動出力の変動を模擬する。
【００２４】
このような差動インタフェース回路モデルでは、信号変化検出手段１によって差動入力ＤＰ、ＤＭが同相に変化したことが検出されると、第１の信号変換手段３は、これまでの差動出力を反転させた反転信号を出力させる。また、信号変化検出手段１によって差動入力の論理レベルが同時に反対極性となったことが検出されると、第２の信号変化検出手段４は、ＥＯＰ信号を所要の信号幅で出力する。
【００２５】
図２は、差動インタフェース回路モデルの差動入力と差動出力の関係を示したタイムチャートである。ここで、ＣＫ１は内部クロックを表す。
差動インタフェース回路モデルでは、差動入力ＤＰ、ＤＭの論理レベルが同相となる区間の差動出力に、反転信号５１が出力される。反転信号の幅や変化エッジは、時間パラメータにより変動される。また、必要に応じて、反転信号５１の後に、次の反転信号５２を出力することもできる。さらに、後述する方法によって、同相状態から差動状態に変化したときに出力される差動出力５３をＥＯＰより前の時点で出力させることもできる。このように、同相状態時、同相状態への変化時および同相状態から差動状態への変化時にアナログ信号に起因するアナログ過渡応答を模擬することができる。
【００２６】
また、差動入力ＤＰ、ＤＭの論理レベルが同時に反対極性に変化したとき、狭いパルス（１クロック分）でＥＯＰ信号５４を発生させる。必要に応じて、所要の頻度でＥＯＰ信号５５を数回発生させることもできる。このように、差動入力ＤＰ、ＤＭの変化に応じて任意のＥＯＰ信号を発生させることができる。
【００２７】
以下、本発明の実施の形態を、差動インタフェース回路モデルをデータパケットの受信回路に適用した場合を例に図面を参照して詳細に説明する。
実際の差動インタフェース回路は、設計対象のＬＳＩチップに差動Ｉ／Ｏセルとして内蔵される。そこで、差動インタフェース回路の動作を模擬するための上記の差動インタフェース回路モデルは、このＬＳＩの設計検証のための論理シミュレーションにおいて、チップモデル内部もしくは外部テストベンチに内蔵される。
【００２８】
チップモデルに内蔵する場合について説明する。図３は、差動インタフェース回路モデルをＩ／Ｏセルでモデル化する構成を示した構成図である。チップモデル内に実装する場合、差動インタフェース回路モデルをＩ／Ｏセルでモデル化した差動Ｉ／Ｏセル７１ａをチップモデル７１に内蔵する。この形態では、テストベンチ６１で生成される入力信号（差動入力）をチップモデル７１に入力してテストを行う。テストベンチ６１で生成された入力信号は、差動Ｉ／Ｏセル７１ａで変換され、以降の論理シミュレーションに使用される。
【００２９】
次に、外部テストベンチに内蔵する場合について説明する。図４は、差動インタフェース回路モデルをテストベンチでモデル化する構成を示した構成図である。外部テストベンチに実装する場合、テストベンチ６２内に上記の差動インタフェース回路モデルに基づいて差動出力を生成するテスト信号生成回路６２ａを組込む。この形態では、テストベンチ６２内のテスト信号生成回路６２ａで生成された差動出力がチップモデル７２に出力され、論理シミュレーションが行われる。
【００３０】
いずれの実現例でも、テストデータとして差動入力ＤＰ、ＤＭについて、Ｈ、Ｌの２値データが与えられれば、論理シミュレーションに適した差動出力が生成される。
以下、実施の形態の差動インタフェース回路モデルについて説明する。図５は、実施の形態の差動インタフェース回路モデルの構成図である。この差動インタフェース回路モデルは、たとえば、Ｉ／Ｏセルとしてチップモデルに内蔵される。
【００３１】
差動インタフェース回路モデルは、差動入力ＤＰ、ＤＭを入力する信号変化検出部１０、差動入力ＤＰと信号変化検出部１０の出力信号を入力して差動出力Ｄを生成する信号変換部３０および差動入力ＤＰ、ＤＭを入力して同相検出信号を出力する同相入力検出部４０を具備する。
【００３２】
信号変化検出部１０は、差動入力ＤＰ、ＤＭの論理レベルが同相に変化したことを検出すると、差動出力Ｄに重畳される反転信号を生成するための各種タイミング信号を信号変換部３０の各遅延回路３２、３３、３４、３５、３６に出力する。具体的には、同相状態への変化を検出すると、反転信号によって差動出力を信号変化させるタイミング（信号変化開始）、反転信号出力を終了して元の差動出力の状態に戻すタイミング（信号変化終了）、次の反転信号変化の開始タイミング（次の信号変化）、同相状態終了後の差動出力開始タイミング（差動出力）、を生成し、信号変換部３０へ送る。
【００３３】
信号変換部３０は、信号変化検出部１０の出力信号を受け、差動出力Ｄを出力する。信号変換部３０は、予め設定された時間パラメータに従って入力信号を遅延させる遅延ｔｄ０（３２）、遅延ｔｄ１（３３）、遅延ｔｄ２（３４）、遅延ｔｄ３（３５）および遅延ｔｄ４（３６）の遅延回路と、各遅延回路の出力信号を合成出力する信号合成部３１を有する。信号合成部３１は、各遅延回路３２、３３、３４、３５、３６の入力信号を受け、差動出力Ｄを生成して出力する。遅延ｔｄ０（３２）は、差動入力ＤＰを入力し、１クロック周期遅延させて信号合成部３１へ出力する。遅延ｔｄ１（３３）は、信号変化検出部１０の信号変化開始タイミングを入力し、予め設定されたｔｄ１時間遅延させた後、信号合成部３１に出力する。遅延ｔｄ２（３４）は、信号変化検出部１０の信号変化終了タイミングを入力し、予め設定されたｔｄ２時間遅延させた後、信号合成部３１に出力する。遅延ｔｄ３（３５）は、信号変化検出部１０の次の信号変化タイミングを入力し、予め設定されたｔｄ３時間遅延させた後、信号合成部３１に出力する。すなわち、遅延ｔｄ１、ｔｄ２、ｔｄ３によって遅延される信号出力は、実際には、遅延ｔｄ０時間が加算されている。遅延ｔｄ４（２７）は、信号変化検出部１０の差動出力タイミングを入力し、予め設定された遅延ｔｄ４を用いて（ｔｄ０−ｔｄ４）時間遅延させた後、信号合成部３１に出力する。これにより、同期状態終了のタイミング信号（ＥＯＰ＝Ｌ）よりも早くに同期状態終了の差動出力Ｄが出力される。遅延ｔｄ０、ｔｄ１、ｔｄ２、ｔｄ３およびｔｄ４は、予め設定されている時間パラメータである。なお、時間パラメータは、任意の周期でランダムな値に設定されてもよい。このように、差動入力が同相に変化したことが検出されると、各遅延回路が指定された時間経過後に信号合成部３１に信号を送る。信号合成部３１は、各遅延回路の出力を受け、差動出力Ｄとして所定の時間、所定のデータ出力変化を生成する。これにより、同相状態における差動入力のアナログ動作に起因する、見逃しやすい信号変化を差動出力Ｄとして生成することができる。
【００３４】
同相入力検出部４０は、差動入力ＤＰ、ＤＭの論理レベルの変化に応じて、所要の頻度で同相状態（Ｈ）／差動状態（Ｌ）の同相検出信号ＥＯＰを発生させる。データパケット伝送の場合、ＥＯＰはパケットの終了（End of Packet）を表す。たとえば、差動入力ＤＰとＤＭが同時に反対方向の極性に変化するときに、信号のなまりによってシングルエンド回路がＥＯＰを発生させる場合がある。同相入力検出部４０では、差動入力の論理レベルに所定の変化を検出すると、所定の間隔でＥＯＰを発生させることによって、このような差動入力の波形なまりによる同相状態検出を模擬する。また、差動入力ＤＰ、ＤＭが同相状態の区間では、ＥＯＰ信号はＨを維持する。
【００３５】
このような構成の差動インタフェース回路モデルの動作について説明する。最初に、差動インタフェース回路モデルの入力信号であるデータパケットについて説明し、続いて、差動インタフェース回路モデルの動作をタイムチャートで説明する。
【００３６】
図６は、差動インタフェース回路モデルに入力されるデータパケットの形式の一例である。データパケット１００は、たとえば、Ｓｙｎｃビット（１バイト長）部１０１、ＰＩＤビット（１バイト長）部１０２、転送データであるＤａｔａ（所要の任意バイト長）部１０３およびＣＲＣビット（２バイト長）部１０４から成る。このようなデータパケット１００とそれに続くデータパケット区切りのＥＯＰビット（２バイト長）部１０５が、所定のデータ転送速度から決る時間周期で差動入力となり、差動インタフェース回路モデルに入力される。データパケット区切りＥＯＰの後は、次のデータパケットのＳｙｎｃ部受信もしくは、アイドル状態（ＩＤＬＥ）になる。
【００３７】
図７は、差動インタフェース回路モデルの動作を示すタイムチャートである。図の例は、差動入力ＤＰ、ＤＭが、ＣＲＣ、ＥＯＰ、ＩＤＬＥを出力する区間における差動出力Ｄの変化を示している。ＣＲＣ区間では、差動入力ＤＰ、ＤＭは、差動状態であり、Ｈ、Ｌの２値化データは、反対極性（ＨまたはＬの異なるデータ値）をとる。そして、データパケットの終了を示すＥＯＰ区間では、差動入力ＤＰ、ＤＭは、同相状態となり、ＨまたはＬの同じデータ値をとる。そして、ＩＤＬＥ区間では、同相状態は解除され、差動入力ＤＰ、ＤＭは、反対極性のデータ値をとる。
【００３８】
差動インタフェース回路モデルでは、ＥＯＰ区間となり差動入力ＤＰ、ＤＭが同じ値となったことを検出すると、時間パラメータである遅延ｔｄ１経過後に、これまでの差動出力値を反転させた反転信号を１パルス出力する。図の例では、差動出力Ｄに短い区間論理レベルがＨとなるパルス信号を発生させる。その時間幅は、時間パラメータである遅延ｔｄ２によって決まる。このとき、ＥＯＰ信号の論理レベルもＨに信号変化する。これにより、ＥＯＰ信号の立ち上がりで、差動出力Ｄにパルス状の短い反転信号が出現する状態を模擬する。
【００３９】
さらに、同相状態が継続し、必要であれば、時間パラメータである遅延ｔｄ３経過後に、次の反転信号を出力させる。この間、ＥＯＰ信号はＨの状態を保持する。これにより、ＥＯＰ信号がＨのとき、差動出力Ｄにパルス状の短い反転信号が出現する状態を模擬する。
【００４０】
そして、ＩＤＬＥの開始を検出すると、ＥＯＰ信号をＬに変化させる前のクロックで、差動出力ＤをＩＤＬＥの状態（図の例ではＨ）に変化させる。この時間幅は、遅延ｔｄ４によって決まる。これにより、ＥＯＰ信号がＨの状態で、差動出力ＤがＩＤＬＥになる状態を模擬する。この構成例では、データ転送速度から決まる時間周期の変動を起こすため、同相状態でない通常のデータ期間も遅延ｔｄ０だけ時間遅延を挿入している。これにより、同相状態からＩＤＬＥ状態（ＤＰ＝Ｈ、ＤＭ＝Ｌ）へ差動入力が変化したことを検出すると、ｔｄ０−ｔｄ４だけの時間遅延を遅延回路で発生させ、ＩＤＬＥの差動出力ＤがＩＤＬＥ状態検出（ＥＯＰ信号＝Ｌ）の前に発生させるようにしている。
【００４１】
なお、差動出力Ｄは、差動インタフェース回路出力となった後、ＬＳＩの内部クロックで同期化される。図８は、内部クロックと差動出力の関係を示した図である。たとえば、データ転送速度が１２Ｍｂｐｓだとすると、６０ＭＨｚなど数倍速い内部クロックでサンプリングされる。このことから、遅延ｔｄ１の時間遅延は連続変化でなくても、先の例の場合では６０ＭＨｚの内部クロックの信号変化エッジに合わせてその前後で遅延ｔｄ１を設定すればよい。図に示したように、サンプリングされるまでの局所的タイミング変動に対応できれば、ＬＳＩ内部回路にデータＤが取り込まれる動作を実現することができる。
【００４２】
以上のように、実施の形態の差動インタフェース回路モデルは、Ｈ、Ｌの２値化データの差動入力を受け、差動出力に擬似的なアナログ過渡応答を生成する。まず、第１に、差動入力が同相状態であるとき、同相状態の開始を検出して差動出力として同相状態に入る前の差動出力データを短期間反転させる。第２に、同相状態の終了を検出して終了直前に差動出力をＩＤＬＥにする。第３に、適当な頻度で同相検出信号（ＥＯＰ）を出力する。このような差動インタフェース回路モデルを用いてＬＳＩの回路機能の検証を行うことにより、アナログ信号に起因する差動出力の変動が発生した場合のＬＳＩの機能検証を行うことができるようになる。この結果、ＬＳＩの検証を十分に行うことが可能となり、特に、これまで設計段階で検出することが難しかったアナログ信号に起因する設計障害を検出することができるようになる。また、差動インタフェース回路モデルの入力信号は、デジタル信号であるため、論理シミュレーションに適している。
【００４３】
なお、遅延回路は、上記の動作を実現する構成であればどのような構成であってもよい。一例として、ＦＰＧＡ（field Programmable Gate Array）などで時間遅延を行う時間制御回路について説明する。図９は、時間遅延を発生させる時間制御回路の一例の構成図である。
【００４４】
時間制御回路は、リング発信回路（リングオシレータ）３００の出力を受けるカウンタ３０１と、カウンタ３０１の出力信号を受けるデコーダ３０２、３０３、３０４、３０５、３０６で構成される。リングオシレータ３００は、同相検出信号ＥＯＰで起動され、カウンタ３０１の計数用クロック信号（ＣＬＫ）を発生させる。カウンタ３０１は、ＥＯＰで起動され、リングオシレータ３００の出力する計数用クロック信号（ＣＬＫ）をカウントし、クロックカウンタを各デコーダ３０２、３０３、３０４、３０５、３０６へ出力する。デコーダ３０２は、所定の遅延ｔｄ０に相当するクロックカウンタ出力を検出すると、遅延時間制御出力を発生させる。同様に、デコーダ３０３は遅延ｔｄ１、デコーダ３０４は遅延ｔｄ２、デコーダ３０５は遅延ｔｄ３、デコーダ３０６は遅延ｔｄ４に相当するクロックカウンタを検出すると、遅延時間制御出力を発生させる。遅延時間制御出力は、信号合成部３１に入力される。このとき、各デコーダに設定される遅延時間は、固定遅延値とするのではなく、所定の範囲でランダムに設定することができる。また、ＥＯＰで起動させることにより、全パケット期間に対してではなく、同相信号入力期間にのみ必要な差動出力を生成することができる。
【００４５】
なお、遅延時間はデータ周期に対して十分短い周期のクロックサイクル単位でよく、モデリング上はリングオシレータを構成し、そのクロックサイクルを計数して遅延時間を生成してもよい。
【００４６】
上記の説明では、差動インタフェース回路モデルをハードウェアで実現する場合について説明したが、ハードウェア記述言語、汎用言語などのソフトウェアで構成することもできる。図１０は、実施の形態の差動出力生成処理のフローチャートである。差動入力として、ＨまたはＬの２値データが入力される。
【００４７】
［ステップＳ１］  あらかじめ設定されている時間パラメータを読込む。時間パラメータとして、あらかじめ遅延ｔｄ０、ｔｄ１、ｔｄ２、ｔｄ３、ｔｄ４の５種類が設定されている。
【００４８】
［ステップＳ２］  入力データの終わりであるかどうかを判定する。終わりであれば、処理を終了する。
［ステップＳ３］  ２つの入力データを比較し、入力データが同相状態（同じ値）であるかどうかを判定する。同相状態であれば、処理をステップＳ７へ進める。
【００４９】
［ステップＳ４］  同相状態でなければ、同相検出信号ＥＯＰ出力を差動状態（＝Ｌ）にする。そして、遅延ｔｄ０後に、差動出力Ｄをそのまま出力する。
［ステップＳ５］  ２つの入力データが反対極性に信号変化しているかどうかを判定する。信号変化していなければステップＳ２に戻って、次のデータ処理を行う。
【００５０】
［ステップＳ６］  ２つの入力データが反対極性に信号変化している場合、同相検出信号ＥＯＰを１パルス出力させ、ステップＳ２に戻って、次のデータ処理を行う。
［ステップＳ７］  ２つの入力データが同相状態の場合、同相検出信号ＥＯＰ出力を同相状態（＝Ｈ）にする。
【００５１】
［ステップＳ８］  ２つの入力データが同相状態における差動出力Ｄの調整処理を行って、差動出力Ｄに短いパルス信号を発生させる。そして、ステップＳ２に戻って、次のデータ処理を行う。
【００５２】
以上の処理手順が実行されることにより、図６に示した差動インタフェース回路モデルの処理機能がソフトウェアによって実現される。
このように、差動インタフェース回路モデルを論理シミュレーション、汎用のエミュレータ、ＦＰＧＡボードなど、さまざまな形態に適用することによって、所望の回路機能の検証を行うことができる。
【００５３】
ここで、論理シミュレーション、エミュレータおよびＦＰＧＡボードの関係について説明する。図１１は、差動インタフェース回路モデルを適用した回路機能検証の実施形態の関係を示した図である。差動インタフェース回路モデルの機能や動作記述は差動インタフェースモデルソース５０１、ＬＳＩチップの機能や動作記述はＬＳＩチップモデル５０２として、ソースライブラリ５００に登録されている。これらのソースデータと、テストデータ５１１、詳細な部品に関する記述がされたライブラリ５１２を論理合成ツール５２１によって合成することによって、論理シミュレータ４０１が作成される。作成された論理シミュレータ４０１を使用して、コンピュータ上でＬＳＩの機能検証を行う。さらに、論理合成ツール５２１で生成される論理シミュレータ用データをエミュレータ用論理変換５２３によって論理変換し、汎用のエミュレータに移植すれば、エミュレータ４０２として機能させることができる。また、論理シミュレータ用データをＦＰＧＡ用のライブラリ５１３を用いてＦＰＧＡ配置配線書込み５２２によって論理をゲートレベルに変換し、ＦＰＧＡボード４０３を作成することができる。ＦＰＧＡボード４０３により、ＬＳＩの機能検証をより高速に実行できるようになる。
【００５４】
また、このように差動インタフェースモデルをライブラリに登録しておけば、他の設計者も利用することが可能となり、製品の短期間開発と開発費削減、その応用製品の早期市場投入ができる。
【００５５】
（付記１）  差動入力信号の差分に応じて差動回路出力信号を生成する差動インタフェース回路の動作を模擬し、前記差動インタフェース回路を有する回路の機能を検証する回路機能検証方法において、
差動信号対である、第１の差動入力信号と第２の差動入力信号を入力し、信号変化検出手段で、前記第１の差動入力信号および前記第２の差動入力信号の論理レベルの変化を検出し、
検出された前記第１の差動入力信号および前記第２の差動入力信号の論理レベルの変化に応じて、信号変換手段で、前記差動入力信号変化前の差動回路出力値を所要の時間幅で反転させた反転信号を生成して差動インタフェース回路出力信号とする、
ことを特徴とする回路機能検証方法。
【００５６】
（付記２）  前記第１の差動入力信号および前記第２の差動入力信号の論理レベルが同相になったことを検出すると、前記第１の差動入力信号と前記第２の差動入力信号が同相状態を継続する間に前記差動入力信号が同相に変化する前の前記差動インタフェース回路の出力値の前記反転信号を生成する、
ことを特徴とする付記１記載の回路機能検証方法。
【００５７】
（付記３）  あらかじめ設定された時間パラメータによって、前記第１の差動入力信号および前記第２の差動入力信号が同相状態の間に出力させる前記反転信号の波形変化エッジを遅延させる、
ことを特徴とする付記２記載の回路機能検証方法。
【００５８】
（付記４）  前記第１の差動入力信号と前記第２の差動入力信号の論理レベルが同相に変化したことが検出された時点から、前記時間パラメータによってあらかじめ設定された遅延時間経過後に前記反転信号を出力する、
ことを特徴とする付記３記載の回路機能検証方法。
【００５９】
（付記５）  前記反転信号の出力が開始された時点から、前記時間パラメータによってあらかじめ設定された時間幅の間前記反転信号を保持する、
ことを特徴とする付記３記載の回路機能検証方法。
【００６０】
（付記６）  前記反転信号の出力が終了した時点から、前記時間パラメータによってあらかじめ設定された遅延時間経過後に、さらに次の前記反転信号を出力する、
ことを特徴とする付記３記載の回路機能検証方法。
【００６１】
（付記７）  前記時間パラメータは、前記反転信号の生成時に任意の値が設定されることを特徴とする付記３記載の回路機能検証方法。
（付記８）  前記第１の差動入力信号と前記第２の差動入力信号に対して前記差動インタフェース回路の出力信号を所定の時間遅延させる遅延手段を有し、
前記第１の差動入力信号と前記第２の差動入力信号が同相となる状態の開始または同相となる状態が終了となる論理レベルへの移行を検出すると、前記反転信号の信号変化を所要の時間幅で変動させ、前記遅延手段を介して前記差動出力信号として出力する、
ことを特徴とする付記１記載の回路機能検証方法。
【００６２】
（付記９）  あらかじめ設定された時間パラメータによって前記反転信号の波形変化エッジを発生させる時間幅を変動させることを特徴とする付記８記載の回路機能検証方法。
（付記１０）  前記第１の差動入力信号と前記第２の差動入力信号の論理レベルが互いに反対の論理レベルに変化したことを検出すると、前記遅延手段を介して出力される前記第１の差動入力信号と前記第２の差動入力信号が同相であることを示す出力信号が同相状態の終了を出力する前に反対の極性の第１の差動入力信号と第２の差動入力信号に応じた前記差動出力信号を出力することを特徴とする付記８記載の回路機能検証方法。
【００６３】
（付記１１）  前記第１の差動入力信号と前記第２の差動入力信号について所定の論理レベル変化を検出すると、第２の信号変換手段で、前記第１の差動入力信号及び前記第２の差動入力信号がレベルが同相であることを示す同相検出信号を所要の頻度で発生させることを特徴とする付記１記載の回路機能検証方法。
【００６４】
（付記１２）  前記同相検出信号は、前記第１の差動入力信号および前記第２の差動入力信号の論理レベルが同時に互いに反対極性の論理レベルに変化したことを検出した場合に発生させることを特徴とする付記１１記載の回路機能検証方法。
【００６５】
（付記１３）  差動入力信号の差分に応じて差動回路出力信号を生成する差動インタフェース回路の動作を模擬し、前記差動インタフェース回路を有する回路の機能を検証する回路機能検証装置において、
差動信号対である、第１の差動入力信号と第２の差動入力信号を入力し、前記第１の差動入力信号および前記第２の差動入力信号の論理レベルの変化を検出する信号変化検出手段と、
検出された前記第１の差動入力信号および前記第２の差動入力信号の論理レベルの変化に応じて、前記差動入力信号変化前の差動回路出力値を所要の時間幅で反転させた反転信号を生成して差動インタフェース回路出力信号とする信号変換手段と、
を具備することを特徴とする回路機能検証装置。
【００６６】
（付記１４）  前記信号変化検出手段および前記信号変換手段は、エミュレータにより構成されることを特徴とする付記１３記載の回路機能検証装置。
（付記１５）  前記信号変化検出手段および前記信号変換手段は、ＦＰＧＡにより構成されることを特徴とする付記１３記載の回路機能検証装置。
【００６７】
（付記１６）  差動入力信号の差分に応じて差動回路出力信号を生成する差動インタフェース回路の動作を模擬する回路シミュレーションプログラムにおいて、
コンピュータに、
差動信号対である、第１の差動入力信号と第２の差動入力信号を入力し、前記第１の差動入力信号および前記第２の差動入力信号の論理レベルの変化を検出し、
検出された前記第１の差動入力信号および前記第２の差動入力信号の論理レベルの変化に応じて、前記差動入力信号変化前の差動回路出力値を所要の時間幅で反転させた反転信号を生成して差動インタフェース回路出力信号とする、
手順を実行させることを特徴とする回路シミュレーションプログラム。
【図面の簡単な説明】
【００６８】
【図１】本発明の実施の形態に適用される発明の概念図である。
【図２】差動インタフェース回路モデルの差動入力と差動出力の関係を示したタイムチャートである。
【図３】差動インタフェース回路モデルをＩ／Ｏセルでモデル化する構成を示した構成図である。
【図４】差動インタフェース回路モデルをテストベンチでモデル化する構成を示した構成図である。
【図５】実施の形態の差動インタフェース回路モデルの構成図である。
【図６】差動インタフェース回路モデルに入力されるデータパケットの形式の一例である。
【図７】差動インタフェース回路モデルの動作を示すタイムチャートである。
【図８】内部クロックと差動出力の関係を示した図である。
【図９】時間遅延を発生させる時間制御回路の一例の構成図である。
【図１０】実施の形態の差動出力生成処理のフローチャートである。
【図１１】差動インタフェース回路モデルを適用した回路機能検証の実施形態の関係を示した図である。
【図１２】差動インタフェース回路の一例を示した回路図である。
【図１３】従来の論理シミュレーション用インタフェース回路モデルの一例を示した回路図である。
【図１４】差動インタフェース回路における差動入力と差動出力の関係を示した図である。
【図１５】差動信号波形のクロスポイント低下時の差動入力と差動出力の関係を示した図である。
【符号の説明】
【００６９】
１  信号変化検出手段
２  信号変換手段
３  第１の信号変換手段
４  第２の信号変換手段
１０  信号変化検出部
３０  信号変換部
３１  信号合成部
３２  遅延ｔｄ０
３３  遅延ｔｄ１
３４  遅延ｔｄ２
３５  遅延ｔｄ３
３６  遅延ｔｄ４
４０  同相入力検出部
【図１】
2006092072.tif 000003
【図２】
2006092072.tif 000004
【図３】
2006092072.tif 000005
【図４】
2006092072.tif 000006
【図５】
2006092072.tif 000007
【図６】
2006092072.tif 000008
【図７】
2006092072.tif 000009
【図８】
2006092072.tif 000010
【図９】
2006092072.tif 000011
【図１０】
2006092072.tif 000012
【図１１】
2006092072.tif 000013
【図１２】
2006092072.tif 000014
【図１３】
2006092072.tif 000015
【図１４】
2006092072.tif 000016
【図１５】
2006092072.tif 000017