(57)【特許請求の範囲】
【請求項１】
入力信号を受信するプリバッファ部と、
前記プリバッファ部に提供する電流値を決定し、前記入力信号のスルーレートを自動的にコントロールするスルーレート・コントロール部と、
前記プリバッファ部から前記入力信号を受け取り、前記スルーレート・コントロール部でコントロールされた前記スルーレートで、前記入力信号に基づくインタフェース出力を出力するメイン・バッファ部とを備え、
前記スルーレート・コントロール部が、
外部終端抵抗と、
前記外部終端抵抗による電圧降下が生じた回路内の電圧と、予め設定されている基準電圧とを比較する第１の比較器と、
前記第１の比較器による比較結果に基づいてスルーレートコードを生成し、出力するスルーレート・コントロール・マクロと、
前記スルーレートコードに応じて電気的特性を変更することができる第１のトランジスタとを含むことを特徴とするスルーレート調整回路。
【請求項２】
請求項１において、
前記スルーレート・コントロール・マクロが、生成したコードと、前回生成したコードを比較して、小さい方のコードをスルーレートコードとして出力し、
前記スルーレートコードの出力と、前記スルーレートコードを用いた前記第１のトランジスタの電気的特性の変更を繰り返し行うことによって、前記電圧降下による電圧と基準電圧の両者が等しくなるように、一定の前記電流値を自律的に決定することを特徴とするスルーレート調整回路。
【請求項３】
請求項２において、
前記メイン・バッファ部が、正転出力と反転出力を提供する差動出力インタフェースを構成し、
前記プリバッファ部が、提供されたクロスポイント調整コードに応じて電気的特性を変更することができる第２のトランジスタを含むワンショットパルス部を有し、
前記論理回路が、前記正転出力と前記反転出力とから前記クロスポイント調整コードを生成し、出力するクロスポイント調整部を含むことを特徴とするスルーレート調整回路。
【請求項４】
請求項３において、
前記クロスポイント調整部が、
前記正転出力の電圧と基準電圧を比較する第２の比較器と、
前記反転出力の電圧と基準電圧を比較する第３の比較器と、
前記第２及び第３の比較器による比較結果に基づいてクロスポイント調整コードを生成し、出力するクロスポイント調整マクロとを含むことを特徴とするスルーレート調整回路。
【請求項５】
請求項４において、
前記クロスポイント調整マクロが、生成したコードと、前回生成したコードを比較して、小さい方のコードをクロスポイント調整コードとして出力し、
前記クロスポイント調整コードの出力と、前記クロスポイント調整コードを用いた前記第２のトランジスタの電気的特性の変更を繰り返し行うことによって、前記正転出力と前記反転出力のクロスポイントを調整することを特徴とするスルーレート調整回路。
【請求項６】
プリバッファ部において入力信号を受信するステップと、
前記プリバッファ部に提供する電流値を決定し、前記入力信号のスルーレートを自動的にコントロールするステップと、
前記プリバッファ部から前記入力信号を受け取り、前記コントロールされた前記スルーレートで、前記入力信号に基づくインタフェース出力を出力するステップとを備え、
前記スルーレートをコントロールするステップが更に、
外部終端抵抗による電圧降下が生じた回路内の電圧と、予め設定されている基準電圧とを比較するサブステップと、
前記比較結果に基づいてスルーレートコードを生成し、出力するサブステップと、
前記スルーレートコードに応じて電気的特性を変更することができるトランジスタに、前記スルーレートコードを提供するサブステップとを含むことを特徴とするスルーレート調整方法。
【請求項７】
請求項６において、
前記スルーレートコードを生成し、出力するサブステップが、生成したコードと、前回生成したコードを比較して、小さい方のコードをスルーレートコードとして出力し、
前記スルーレートコードの出力と、前記スルーレートコードを用いた前記トランジスタの電気的特性の変更を繰り返し行うことによって、前記電圧降下による電圧と基準電圧の両者が等しくなるように、一定の前記電流値を自律的に決定することを特徴とするスルーレート調整方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、スルーレートをプロセス条件、その他の条件によらず、外部終端抵抗で設定された所定の値に自動調整することができるインタフェース回路に関する。
【０００２】
【従来の技術】
インタフェース回路の出力におけるスルーレート調整については、信号反射問題と関連して、インタフェース回路内部で対応する必要性があり、こうした技術は日々進歩している。
【０００３】
ＳＯＬＩＤ−ＳＴＡＴＥ  ＣＩＲＣＵＩＴ  ＶＯＬ．３３  ＮＯ．１１  ＮＯＶＥＭＢＥＲ  １９９８の“Ａ  ２．６ＧＢＹＴＥ／ｓ  Ｍｕｌｔｉｐｕｒｐｏｓｅ  Ｃｈｉｐ−ｔｏ−Ｃｈｉｐ  Ｉｎｔｅｒｆａｃｅ”では、インタフェース回路内部でのスルーレート調整を行なうことができる、スルーレート検出回路（ｓｌｅｗ−ｒａｔｅ  ｄｅｔｅｃｔｏｒ）が示されている（図７）。スルーレート検出回路は、スルーレート・コントロール・ロジックに基準クロックを入力して、トリガー信号でプロセス条件、その他環境条件の探知を始める。このスルーレート検出回路は、ＮＭＯＳ  Ｄｅｌａｙ  Ｃｈａｉｎに信号を入力した後２箇所で出力信号を検出し、サンプル・クロックでフリップフロップ回路（ＦＦ）に各信号を取り込み、その信号の遅延差を算出することによってプロセス条件、その他環境条件を探知し、探知条件に応じたスルーレート・コードを作成する。
【０００４】
【発明が解決しようとする課題】
上述したように、従来のインタフェース回路は、プロセス条件その他の環境条件を探知し、その探知条件に応じたスルーレート・コードを作成するため、これらの条件から独立させてスルーレート・コードを決定し、作成することができるインタフェース回路はなかった。換言すれば、インタフェース回路内で能動的にスルーレートを決定することは行われていなかった。
【０００５】
【課題を解決するための手段】
従って、本発明の目的は、プロセス条件その他の環境条件に依存せず、外部終端抵抗によって設定される電流源電流値に応じてスルーレートを決定するインタフェース回路を提供することである。
【０００６】
また、更なる本発明の目的は、インピーダンス、スルーレート調整後にインタフェース出力の初期立ち上がり時間、初期立ち上がり電圧を自動的に微調整することができるインタフェース回路を提供することである。
【０００７】
本発明の第１の態様によれば、入力信号を受信するプリバッファ部と、前記プリバッファ部に提供する電流値を決定し、前記入力信号のスルーレートを自動的にコントロールするスルーレート・コントロール部と、前記プリバッファ部から前記入力信号を受け取り、前記スルーレート・コントロール部でコントロールされた前記スルーレートで、前記入力信号に基づくインタフェース出力を出力するメイン・バッファ部とを備え、前記スルーレート・コントロール部が、外部終端抵抗と、前記外部終端抵抗による電圧降下が生じた回路内の電圧と、予め設定されている基準電圧とを比較する第１の比較器と、前記第１の比較器による比較結果に基づいてスルーレートコードを生成し、出力するスルーレート・コントロール・マクロと、前記スルーレートコードに応じて電気的特性を変更することができる第１のトランジスタとを含むことを特徴とするスルーレート調整回路が得られる。
【０００８】
これによって、前記回路は、プロセス条件その他の環境条件に依存せずに、インタフェース出力のスルーレートを調整することができる。
【００１０】
本発明の第２の態様によれば、プリバッファ部において入力信号を受信するステップと、前記プリバッファ部に提供する電流値を決定し、前記入力信号のスルーレートを自動的にコントロールするステップと、前記プリバッファ部から前記入力信号を受け取り、前記コントロールされた前記スルーレートで、前記入力信号に基づくインタフェース出力を出力するステップとを備え、前記スルーレートをコントロールするステップが更に、外部終端抵抗による電圧降下が生じた回路内の電圧と、予め設定されている基準電圧とを比較するサブステップと、前記比較結果に基づいてスルーレートコードを生成し、出力するサブステップと、前記スルーレートコードに応じて電気的特性を変更することができるトランジスタに、前記スルーレートコードを提供するサブステップとを含むことを特徴とするスルーレート調整方法が得られる。
【００１２】
【発明の実施の形態】
最初に、図５について説明する。図５は、シミュレーションによる、出力バッファの立ち上がり遅延時間（ＴＲ）及び立ち下がり遅延時間（ＴＦ）と、駆動電流値（ｃｏｎｔｒｏｌ  Ｃｕｒｒｅｎｔ）との関係を示したグラフである。
【００１３】
当該グラフの横軸は電流源電流値を表し、縦軸が出力ＴＲ又はＴＦ（スルーレート）を表している。出力立ち上がり（ｒｉｓｅ）及び出力立ち下がり（ｆａｌｌ）の場合のそれぞれで、ｓｌｏｗ条件、ｆａｓｔ条件、ｔｙｐ条件毎にデータがプロットされている。このグラフから、横軸の電流源電流値と縦軸のスルーレートには相関があり、電流源電流値が一定であれば、環境条件に関わらず、ｆａｓｔ条件におけるスルーレートとｓｌｏｗ条件におけるスルーレートの範囲内に、出力のスルーレートが入ることが分かる。即ち、電流源電流値（外部終端抵抗値）が決まれば、出力のスルーレートは１つに決まるのである。
【００１４】
本発明は、このシミュレーション結果を利用するものである。
【００１５】
次に、図１を参照して、本発明の第１の実施の形態について説明する。
【００１６】
図１は、ＧＴＬ＋インタフェースに、本発明のスルーレート自動調整回路（スルーレート・コントロール部１１０）を適用した回路１００を例示したものである。
【００１７】
ＧＴＬ＋（Ｇｕｎｎｉｎｇ  Ｔｒａｎｓｃｅｉｖｅｒ  Ｌｏｇｉｃ  Ｐｌｕｓ）は、半導体デバイス間の入出力インタフェースを実現するテクノロジーであり、高周波数、低電圧で動作するプロセッサ、ＳＭＰ（対称型マルチプロセシング）等を実現する部分で使用されている。
【００１８】
図１に示されたインタフェース回路１００は、スルーレート・コントロール部１１０、プリバッファ部１２０、及びメイン・バッファ部１３０で構成され、外部出力Ｄ０１がスルーレート・コントロール部１１０から出力され、一方、プリバッファ部１２０において外部入力Ｈ０１が入力され、メイン・バッファ部１３０で出力Ｎ０１が提供される。
【００１９】
出力Ｎ０１のスルーレートはプリバッファ部１２０のスルーレートに依存し、前述の図５のシミュレーション結果から、プリバッファ部１２０を電流駆動とした場合に、その電流源電流値をある値に定めれば、スルーレートは、プロセス条件その他の環境条件に左右されることなく、一意に定められる。本実施形態では、プリバッファ部１２０の電流源回路としてミラー回路を備えたスルーレート・コントロール部１１０を有している。
【００２０】
スルーレート・コントロール部１１０は、スルーレートを自動的に調整するためにループ回路を有し、スルーレート・コントロール・マクロ１１１、デコーダ１１２、比較器１１３、Ｎｃｈトランジスタ１１４、外部終端抵抗（Ｒｒｅｆ）１１５、及び基準抵抗（Ｖｒｅｆ）１１６が含まれている。
【００２１】
スルーレート・コントロール部１１０は、初期設定時の任意の電流値を電圧値に変換するため、外部終端抵抗（Ｒｒｅｆ）１１５を用意し、そこで他方の基準電圧（Ｖｒｅｆ）１１６と比較器１１３を用いて比較する。
【００２２】
スルーレート・コントロール・マクロ１１１は、前記比較結果を利用して、スルーレート・コードをインクリメント、又はデクリメントするか判断し、電流源電流を制御するＮｃｈトランジスタ１１４のサイズを選択するためのスルーレート・コードを自動作成する。ここで、このスルーレート・コードは、ＮｃｈトランジスタのＷサイズと１対１に対応したものとなっている。
【００２３】
その後、スルーレート・コントロール・マクロ１１１の出力（４ビットコード）は、デコーダ１１２によって１６ビットコードに出力され、インタフェース回路の電流源を構成しているＮｃｈトランジスタ１１４のゲート入力に与えられる。
【００２４】
上記動作を複数回繰り返すことにより、プロセス条件、その他環境条件に依存せず、比較器の電圧レベルがＶｒｅｆとなるような電流源電流値が得られる。
【００２５】
次に、スルーレート・コントロール・マクロ１１１について、図３を用いて説明する。
【００２６】
スルーレート・コントロール・マクロ１１１は、ＭＣＫから得られるクロック信号を分周し、カウンタでカウントすることにより、４状態を作る。これには、スルーレートの制御を行う状態とそれ以外の状態（コード保持状態）が含まれている。
【００２７】
次に、前述のように、外部終端抵抗（Ｒｒｅｆ）での電圧降下分と基準電圧（Ｖｒｅｆ）とを比較した結果がＣＯＭＰに入力される。このＣＯＭＰと前記カウンタの出力信号に基づいて、現在のスルーレート・コードより大きくするか（４−１マルチプレクサでインクリメントを選択する）、小さくするか（４−１マルチプレクサでデクリメントを選択する）、保持するか（４−１マルチプレクサで、レジスタ・ループバック信号を選択する）の論理を作成する。
【００２８】
スルーレートの制御を行う状態では、４−１マルチプレクサから出力されるコードが、２段の４ビット・レジスタに提供される。従って、現在のコードと１クロック前のコードが保持され、コード選択回路において、より小さいコードが選択され、最終段の４ビットレジスタに格納される。このコードは、再度カウンタに入力され、グリッチノイズの除去が行われる。
【００２９】
この比較は、最終的には、比較器１１３の基準電圧（Ｖｒｅｆ）と、当該マクロ１１１から出力されたスルーレート・コードによって調整されたＮｃｈトランジスタのサイズによる電流値に起因する抵抗電圧との比較になる。従って、所定の電流値になるまで、比較器１１３は、「０」と「１」を繰り返し出力するが、コード選択回路で小さい方のコードを選択し、全てのバッファにコード出力するので、コードの値は、最終的に固定される。
【００３０】
そして、これらの動作を何回か繰り返した後、最終的に内部クロックに同期して、固定されたスルーレート・コードをＣＯＤＥから出力する。この出力は、図１の回路１００のデコーダ１１２に提供される。
【００３１】
こうして設定された電流値と、それに対応するＮｃｈ・Ｐｃｈコントロール電圧は、プリバッファ部１２０のＮｃｈトランジスタ（Ｎｃｈ１）、Ｐｃｈトランジスタ（Ｐｃｈ１）に提供され、外部入力Ｈ０１を受信するインバータの駆動能力を制御する。これによって、メイン・バッファ１３０の入力傾きが制御され、インタフェース出力（Ｎ０１）のスルーレートが制御される。
【００３２】
従って、スルーレート・コントロール部１１０によって電流源電流値が一定に決まれば、メイン・バッファ１３０のゲート入力の立ち上がり、立ち下がりのスルーレートが決まり、インタフェース出力の立ち上がり、立ち下がりのスルーレートが決まる。
【００３３】
また、スルーレート・コードは、出力Ｄ０１から、他のバッファに分配される。図１では、デコーダ１１２によって１６ビットにデコードされたコードが分配されているが、デコード前のコードであってもよい。
【００３４】
このようにして、プロセス条件、その他環境条件に依存せず、外部終端抵抗（Ｒｒｅｆ）１１５により、電流源電流値が設定され、電流値に対応したスルーレートが自動的に得られる。
【００３５】
また、本発明のインタフェース回路では、スルーレートと伝達遅延の相関性をなくすような信号波形設定回路が採用されている。これは、例えば特開平１１−２７４９０９に開示された回路と同様の、階段波形を形成する回路方式である。本発明のインタフェース回路は、電流源によるスルーレート調整動作の前に、ワンショットパルス部１２１で初期立ち上がり論理を作成し、スルーレートにあまり関係しないスイッチング初期動作を設定するという動作も行っている。また、レベル検出部１２２で、Ｎｃｈトランジスタ（Ｎｃｈ２）のゲート電圧をモニタして、ある閾値になると立ち上がり、立ち下がり時に、Ｐｃｈ・Ｎｃｈバッファがドライブを開始する。これによって、スルーレートが大きくても、伝達遅延が必ずしも大きくならないという階段波形が作成できる。
【００３６】
次に、図２を参照して、本発明の第２の実施の形態について説明する。
【００３７】
図２に示されている回路２００は、ＧＴＬ＋インタフェースに本発明のスルーレート自動調整回路（スルーレート・コントロール部）、及びクロスポイント自動調整回路（ワンショットパルス・クロスポイント調整部）を適用した例である。
【００３８】
前記回路２００は、スルーレート・コントロール部２１０、プリバッファ部２２０、メイン・バッファ部２３０、及びクロスポイント調整部２４０で構成され、スルーレート・コントロール部２１０において外部出力Ｄ０１が提供され、プリバッファ部２２０において外部入力Ｈ０１が入力され、メイン・バッファ部２１０において正転出力Ｎ０１、及び反転出力Ｎ０２が提供される。
【００３９】
スルーレート・コントロール部２１０の構成は図１のスルーレート・コントロール部１１０と同じであるため、詳細な説明は省略する。
【００４０】
また、クロスポイント調整部２４０は、クロスポイント調整マクロ２４１、デコーダ２４２、及び２つの比較器２４３、２４４を備えている。
【００４１】
回路２００の正転出力Ｎ０１と反転出力Ｎ０２は、前記比較器２４３、２４４にそれぞれ入力され、その後、比較結果が、クロスポイント調整マクロ２４１に入力される。クロスポイント調整マクロ２４１の出力（クロスポイント・コード）は、デコーダ２４２によって４ビットコードから１６ビットコードにデコードされた後、回路２００のインタフェース出力の初期立ち上がりを制御している、Ｎｃｈトランジスタのゲート入力に提供される。このようにしてループ回路が構成されている。
【００４２】
ここで、反転出力Ｎ０２は、入力Ｈ０１が反転した場合に出力される信号を表しており、クロスポイントとは、正転出力Ｎ０１と反転出力Ｎ０２がクロスする箇所を指す。
【００４３】
差動出力インタフェースの場合、立ち上がり、立ち下がりのスルーレートが対応しており、バランスがとれていても出力変化の時間が違っていれば、クロスポイントはずれることになる。回路２００は、本来遅延回路を挿入し、ワンショットパルスでスルーレート調整前の初期立ち上がり時間と立ち上がり電圧を設定するＮｃｈトランジスタ部に、サイズ可変のＮｃｈトランジスタを直列に挿入し、オン抵抗を変えることで初期立ち上がり時間と立ち上がり電圧を調整し、クロスポイントの微調整を可能としている。
【００４４】
ここで更に、クロスポイント調整部２４０の動作を詳細に説明する。
【００４５】
まず、インピーダンス、スルーレート調整した状態で差動出力を変化させ、それらの出力（Ｎ０１、Ｎ０２）を、基準電圧（Ｖｒｅｆ）、即ちターゲットのクロスポイント電圧値を他方の入力とした比較器（２４３、２４４）にそれぞれ入力する。この際、比較器（２４３、２４４）は、正転出力Ｎ０１用と反転出力Ｎ０２用に２つ用意する必要があり、また比較精度が高く、オフセットが小さく、出力が急峻に変化する回路であることが要求される。
【００４６】
次に、２つの比較器（２４３、２４４）の出力をクロスポイント調整マクロ２４１に入力する。
【００４７】
ここで更に図４を参照しながら、クロスポイント調整マクロ２４１の動作を説明する。前記比較器（２４３、２４４）の出力は、クロスポイント調整マクロ２４１内のＣＯＭＰに入力される。次に、クロスポイント調整マクロ２４１は、内蔵の位相検出器により位相差（クロスポイントのずれ）をパルス信号とし、サンプリング・クロックでパルス幅の間だけフリップフロップ回路（ＦＦ）をアクティブにし、インタフェース出力の立ち上がり側を早くするか遅くするかの論理を作成し、コードをインクリメント、又はデクリメントし、このフィードバックを何回か繰り返す事によって、インタフェース出力の初期立ち上がり時間、及び電圧を制御するＮｃｈトランジスタのサイズを選択するための、固定された４ビットコードが自動作成される。
【００４８】
当該４ビット・コードは、次に、デコーダ２４２に提供され、Ｎｃｈトランジスタのゲート入力用に、１６ビットコードにデコードされる。上記フィードバック動作を複数回繰り返すことにより、クロスポイントの調整が行なわれる。
【００４９】
また、クロスポイント調整マクロ２４１は、今回と１回前のコードをレジスタにより保持しており、その２つを比較して、小さい方のコードを最終的に出力しているので、クロスポイントが調整された後は、当該コードは自動的に固定される。
【００５０】
次に、本発明の第３の実施形態について説明する。
【００５１】
前述した、第１の実施形態では、スルーレート・コントロール部のようなレプリカバッファを使用して、スルーレート・コードを作成し、出力Ｄ０１を介して各バッファにスルーレート・コードを分配していたが、第３の実施形態では、バッファ毎にスルーレート・コントロール部を内蔵する。これは、バッファの動作周波数が異なる場合や装置上動作として、その方が好ましい場合があるからである。
【００５２】
本発明の第４の実施形態は、バッファ毎にスルーレート・コントロール部、及びクロスポイント調整部を内蔵して、スルーレート及びクロスポイントを個別に調整するインタフェース回路である。前述した第２の実施形態では、レプリカバッファを使用して、クロスポイントコードを作成し、各バッファにレジスタ出力のクロスポイントコードを分配していたが、バッファ動作周波数が異なる場合や装置上動作として、第４の実施形態のインタフェース回路のように構成した方が好ましい場合がある。
【００５３】
【発明の効果】
本発明の回路によって、プロセス、その他環境に依存せず、外部終端抵抗により電流源電流値が設定され、またその電流値に対応したスルーレートが得られる。
【００５４】
また、本発明の回路では、インピーダンス、スルーレート調整後にインタフェース出力の初期立ち上がり時間、初期立ち上がり電圧を自動的に微調整することも可能である。
【図面の簡単な説明】
【図１】本発明の第１の実施形態のインタフェース回路１００の構成を示すブロック図である。
【図２】本発明の第２の実施形態のインタフェース回路２００の構成を示すブロック図である。
【図３】スルーレート・コントロール・マクロの構成を示すブロック図である。
【図４】クロスポイント調整マクロの構成を示すブロック図である。
【図５】スルーレートと電流値との関係を示すグラフである。
【符号の説明】
１００、２００  インタフェース回路
１１０、２１０  スルーレート・コントロール部
１１１、２１１  スルーレート・コントロール・マクロ
１１２、２１２  デコーダ
１１３、２１３  比較器
１１４、２１４  Ｎｃｈトランジスタ
１１５、２１５  外部終端抵抗
１１６、２１６  基準抵抗
１２０、２２０  プリバッファ部
１２１、２２１  ワンショットパルス部
１２２、２２２  レベル検出器
１３０、２３０  メイン・バッファ部
２４０  クロスポイント調整部
２４１  クロスポイント調整マクロ
２４２  デコーダ
２４３、２４４  比較器
【図１】
0003597760.tif 000002
【図２】
0003597760.tif 000003
【図３】
0003597760.tif 000004
【図４】
0003597760.tif 000005
【図５】
0003597760.tif 000006