JP7059255B2 - 適応終端インピーダンスを有する高速ドライバ - Google Patents

適応終端インピーダンスを有する高速ドライバ Download PDF

Info

Publication number
JP7059255B2
JP7059255B2 JP2019507106A JP2019507106A JP7059255B2 JP 7059255 B2 JP7059255 B2 JP 7059255B2 JP 2019507106 A JP2019507106 A JP 2019507106A JP 2019507106 A JP2019507106 A JP 2019507106A JP 7059255 B2 JP7059255 B2 JP 7059255B2
Authority
JP
Japan
Prior art keywords
data
driver
impedance
threshold voltage
logic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019507106A
Other languages
English (en)
Other versions
JP2019531003A (ja
Inventor
ユソフ,シティ ソヘイラ モド
クマール スリヴァスタヴァ,アミット
ホック クー,レイ
ブーン ティア,チン
Original Assignee
インテル コーポレイション
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by インテル コーポレイション filed Critical インテル コーポレイション
Publication of JP2019531003A publication Critical patent/JP2019531003A/ja
Application granted granted Critical
Publication of JP7059255B2 publication Critical patent/JP7059255B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/0005Modifications of input or output impedance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/06Clock generators producing several clock signals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/28Supervision thereof, e.g. detecting power-supply failure by out of limits supervision
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/003Modifications for increasing the reliability for protection
    • H03K19/00369Modifications for compensating variations of temperature, supply voltage or other physical parameters

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Logic Circuits (AREA)
  • Dc Digital Transmission (AREA)

Description

[優先権の主張]
本願は、あらゆる目的で参照により全体が組み込まれる米国出願第15/279,273号、2016年9月28日出願、名称「HIGH SPEED DRIVER WITH ADAPTIVE TERMINATION IMPEDANCE」の優先権を主張する。
広範なプラットフォーム損失の要求に応じる必要のある高速ドライバを良好にインピーダンス整合するプラグアンドプレイ能力を提供するために、ドライバの直流(DC)インピーダンス整合設定(例えば45Ω)は、シリコンプロセス、パッケージ不整合、及びプラットフォームにおける交流(AC)インピーダンス変動に適合できない。入力-出力(I/O)システムのアイマスクに適合する目的で、ドライバにおいてプリエンファシスが一般的に使用される。これは、ハイからロー論理レベルへのデータの遷移中に、ドライバの出力における差動データリンギングを悪化させる。このリンギングは、例えば、単位間隔(unit interval:UI)の半分まで長引いて、アイダイアグラムのマージンを減少させる。多くの場合、このリンギングのピーク値は高いので、上位レベルのアイダイアグラムを仕様外にしてしまう。
本開示の実施形態は、以下の詳細な説明から及び本開示の種々の実施形態の添付の図面からより完全に理解されるだろう。しかしながら、これらは、本開示を特定の実施形態に限定するものではなく、単に説明及び理解のためである。
本開示の幾つかの実施形態による、ドライバの出力を監視することにより補償インピーダンスを適応的に調整するシステムを示す。
本開示の幾つかの実施形態による、補償済みインピーダンスの適応的調整の前後のドライバの出力を示すグラフを示す。
本開示の幾つかの実施形態による、機器の動作を示すグラフを示す。
本開示の幾つかの実施形態による、ドライバの出力を監視することにより補償済みインピーダンスを適応的に調整する機器を示す。
本開示の幾つかの実施形態による、ドライバの出力を監視することにより補償済みインピーダンスを適応的に調整する有限状態機械(FSM)を示す。
本開示の幾つかの実施形態による、データがハイを駆動しているとき、ドライバの出力を監視することにより補償済みプルアップインピーダンスを適応的に調整する方法のフローチャートを示す。
本開示の幾つかの実施形態による、データがローを駆動しているとき、ドライバの出力を監視することにより補償済みプルダウンインピーダンスを適応的に調整する方法のフローチャートを示す。
幾つかの実施形態による、ドライバの出力を監視することにより補償済みインピーダンスを適応的に調整する機器を有するスマートデバイス又はコンピュータシステム又はSoC(System-on-Chip)を示す。
幾つかの実施形態は、ドライバの出力を監視することにより、インピーダンスを適応的に調整し及び補償する機器を記載する。幾つかの実施形態では、リンギングを緩和するために又はリンギングに含まれるACインピーダンス不整合を補正するために、ソリューションを提供するために、デジタル技術が機器により使用される。幾つかの実施形態では、機器は、データの立ち上がりエッジの間に多相クロックを用いてドライバの出力におけるデータをサンプリングし、該データを所定基準(例えば、Vrefhi及びVrefLow)と比較する。幾つかの実施形態では、補償されたサンプリングされたデータ情報は、格納され、決定ロジックにロードされる。幾つかの実施形態では、決定ロジックは、ドライバの補償済み出力インピーダンス(例えば、ドライバのプルアップ及び/又はプルダウンインピーダンス)を適応的に調整するための、増大、減少、及び/又は固定コードを送信する。このように、ドライバの出力においてACインピーダンス不整合により生じるリンギング、オーバーシュート、及び/又はアンダーシュートが低減される。
種々の実施形態の多くの技術的効果がある。例えば、種々の実施形態の機器は、パワーに影響を与えずに及び少ない面積増大(例えば、約1%)により、ドライバ出力インピーダンスの自動訂正を提供する。種々の実施形態の機器は、電源ノイズレベルに反応しにくく且つ他の処理技術ノードに拡張可能なデジタル方式である。種々の実施形態の機器は、(例えば、データアイを広げることにより)追加タイミングマージンを提供する。これは、より広いプラットフォーム損失及び範囲に対応する際に有用である。種々の実施形態の機器は、ドライバのトレーニング期間中に実行され得る。したがって、機器の動作は、ドライバの機能的動作に影響しない。他の技術的効果は、種々の実施形態の記載及び図面から明らかである。
以下の記載では、本開示の実施形態のより完全な説明を提供するために多くの詳細事項が議論される。しかしながら、当業者は、本開示がそのような特定の詳細事項を有しないで実施できることを理解するだろう。他の例では、良く知られた構造及び装置が、本開示の実施形態を不明瞭することを回避するために、詳細にではなく、ブロック図で示される。
留意すべきことに、実施形態の対応する図面では、信号は線で表される。幾つかの線は、より多くの構成要素の信号経路を示すために太く、及び/又は主な情報フロー方向を示すために1又は複数の端子で矢印を有し得る。このような指示は、限定を意図しない。むしろ、線は、回路又は論理ユニットの容易な理解を助けるために、1又は複数の例示的な実施形態と組み合わせて用いられる。表された信号は、設計の必要又は選好により決定されるように、実際には、いずれかの方向に伝搬し得る1又は複数の信号を有しても良く、任意の適切な種類の信号スキームで実装されても良い。
明細書を通じて、及び請求の範囲の中で、用語「接続される(connected)」は、中間装置を有しない、接続される物の間の直接電気的、機械的、又は磁気的接続を意味する。用語「結合される(coupled)」は、接続される要素間の直接的な電気的、機械的、又は磁気的接続、又は1又は複数の受動的若しくは能動的中間装置を通じた間接的な接続を意味する。用語「回路(circuit)」又は「モジュール(module)」は、所望の機能を提供するために互いに協働するよう配置される1又は複数の受動的及び/又は能動的コンポーネントを表し得る。用語「信号」は、少なくとも1つの電流信号、電圧信号、磁気信号、又はデータ/クロック信号を表し得る。単数を表す語(a、an、the)の意味は、複数の参照も含む。「中に(in)」の意味は、「中に(in)」及び「上に(on)」を含む。
用語「実質的に(substantially)」、「近い、約、ほぼ(close、approximately、near、about)」は、通常、(特に指定されない限り)目標値の+/-10%の範囲内にあることを表す。特に断らない限り、序数の形容詞「第1の」、「第2の」、「第3の」、等の共通の目的語を記述するための使用は、単に、同様の物の異なる存在が言及されていることを示し、記載されている物が時間的又は空間的に所与の順序に、順位付けに、又は任意の他の方法で存在しなければならないことを意味するものではない。
本開示の目的のために、フレーズ「A及び/又はB」及び「A又はB」は、(A)、(B)、又は(A及びB)を意味する。本開示の目的のために、フレーズ「A、B及び/又はC」は、(A)、(B)、(C)、(A及びB)、(A及びC)、(B及びC)又は(A、B及びC)を意味する。
実施形態の目的のために、種々の回路、モジュール、及びロジックブロックの中のトランジスタは、ドレイン、ソース、ゲート及びバルク端子を有する金属酸化物半導体(MOS)トランジスタである。トランジスタは、トリゲート及びFinFETトランジスタ、円筒形全周ゲートトランジスタ、トンネリングFET(TFET)、正方形ワイヤ、又は方形リボントランジスタ、又はカーボンナノチューブ若しくはスピントロニック素子のようなトランジスタ機能を実装する他の素子も含む。MOSFETの対照的なソース及びドレイン端子は、つまり、同一の端子であり、本願明細書では同義的に使用される。他方で、TFET素子は、非対称のソース及びドレイン端子を有する。当業者は、他のトランジスタ、例えば、バイポーラ接合トランジスタ、BJT PNP/NPN、BiCMOS、CMOS、eFET、等が本開示の範囲から逸脱することなく使用されて良いことを理解する。
図1は、本開示の幾つかの実施形態による、ドライバの出力を監視することにより補償済みインピーダンスを適応的に調整するシステム100を示す。幾つかの実施形態では、システム100は、インピーダンス校正ロジック(RCOMP校正ロジック)101、補償済みインピーダンスを適応的に調整する機器102、ドライバ103(例えば、プレドライバを有する高速ドライバ)、バイアス生成器104、伝送線105、及び受信機終端抵抗器(例えば45オーム抵抗器)を有する。本例では、伝送線105のインピーダンスは、受信機終端抵抗器のインピーダンスと整合するために、40オームから50オームであると仮定される。しかしながら、他のインピーダンス値も使用され、ドライバ103及び受信機のインピーダンスと整合されて良い。本例では、伝送線105の他端にある受信機は、受信機終端抵抗器によりモデル化される。
幾つかの実施形態では、インピーダンス校正ロジック101は、プルアップ及びプルダウン補償済みインピーダンスコード(例えば、それぞれRcomp_Rpull[5:0]及びRcomp_Rpd[5:0]コード)を機器102に提供する。幾つかの実施形態では、プルアップ及びプルダウン補償済みインピーダンスコードは、DC(又は低周波数)に基づくプロセス、電圧、及び温度(process, voltage, and temperature:PVT)変動を補償するためにこれらのコードを決定する補償ドライバから取得される。しかしながら、これらの補償済みコードは、ドライバ103により見られるインピーダンスに対するAC変化を補償されない。例えば、ドライバ103が、ドライバ103のインピーダンスと異なるインピーダンスを有する集積回路(IC)にパッケージされるとき、リンギング、オーバーシュート、アンダーシュート、等が、ドライバ103の出力において生じ得る。幾つかの実施形態では、機器102は、ドライバ103の出力において、インピーダンスに対するこれらのAC変化を補償する。
幾つかの実施形態では、機器102は、検出器102a、クロック生成器102b、決定ロジック102c、及び増大/減少/バイパスロジック102dを含む。幾つかの実施形態では、検出器102aは、ドライバ103の出力に結合される。幾つかの実施形態では、検出器102aは、多相クロック(例えば、4ビットクロックCLK[3:0])、第1基準電圧(例えば、VrefHi_1)、及び第2基準電圧(例えば、VrefLow_1)を受信する。幾つかの実施形態では、検出器102aは、多相クロックを用いてドライバ103の出力における信号レベルを検知し、該信号レベルを第1及び第2基準電圧と比較して、Up及び/又はDown指示子(例えば、4ビットUpコードUP[3:0]及び/又は4ビットDownコードDN[3:0])を生成する。幾つかの実施形態では、検出器102aは、1又は複数のストロングアームラッチ又はクロック供給される比較ラッチを用いて実装される。図4を参照して、1つのこのような実施形態が説明される。
図1に戻ると、幾つかの実施形態では、クロック生成器102bは、第1クロック(例えばCLK0)を提供し及び多相クロック出力(例えば、4ビットクロックCLK[3:0])を生成する多相信号生成器(図示せず)を含む。幾つかの実施形態では、多相信号生成器(図示せず)は、基準クロック(図示せず)から多相クロック出力を生成する複数の遅延段を有する。幾つかの実施形態では、複数の遅延段は、直列に一緒に結合されたフリップフロップを有する。ここで、基準クロックは、第1フリップフロップへのデータ入力として受信され、より早いクロックが全てのフリップフロップのデータをサンプリングするために使用される。任意の他の適切な回路が、クロック生成器102bのための多相信号生成器を実装するために使用されて良い。幾つかの実施形態では、第1クロックCLK0は、インピーダンス校正ロジック101にCalib_Clockとして提供される。
幾つかの実施形態では、決定ロジック102cは、検出器102a及び増大/減少/バイパスロジック102dに結合される。幾つかの実施形態では、決定ロジック102cは、Up/Down指示(例えば、コードUP[3:0]及びDN[3:0])を検出器102から取得し、増大/減少/バイパスロジック102dのためにコードセットを生成する。幾つかの実施形態では、これらのコードセットは、上方増加量(INCR_UP)、下方増加量(INCR_DN)、上方減少量(DEC_UP)、下方減少量(DEC_DN)、固定プルアップインピーダンスコード(Lock_UP)、及びプルダウンインピーダンスコード(Lock_DN)を含む。幾つかの実施形態では、決定ロジック102cは、検出器102aの出力をフィルタリングする。
幾つかの実施形態では、Down指示子が存在するとき(例えば、DN[3:0]が少なくとも1つのハイビットを有するとき)、INCR_UPが生成される。これは、プルアップインピーダンス脚が通常、p型素子として実装されるからであり、より少ないプルアップインピーダンス脚がオンにされることを要求されるとき(例えば、下降の場合)、INCR_UPビットはハイである。しかしながら、当業者は、ロジックを切り替えるために論理パスにインバータを追加することにより、機能的制御を変更でき、Down指示子が、INCR_UPをハイにする代わりに、INCR_DNをハイにするようにできる。幾つかの実施形態では、Up指示子が存在するとき(例えば、UP[3:0]が少なくとも1つのハイビットを有するとき)、DEC_UPが生成される(例えば、論理ハイにアサートされる)。単にINCR_UPを生成するロジックが反転されるとき、DEC_UPのロジックも反転できる。幾つかの実施形態では、増大/減少/バイパスロジック102dは自身をバイパスできる。このような場合には、RCOMP校正ロジック101からのインピーダンスコードは、ドライバ103に直接提供される。図5を参照して、増大、減少、及び固定信号を生成する状態機械の一実施形態が説明される。
図1に戻ると、増大/減少/バイパスロジック102dは、制御信号(例えば、INCR_UP、INCR_DN、DEC_UP、DEC_DN、Lock_UP、Lock_DN)を受信し、これらの制御信号に基づき補償済みプルアップインピーダンスコード(例えばRcomp_Rpull[5:0])及び/又は補償済みプルダウンインピーダンスコード(例えばRcomp_Rpd[5:0])を調整し、それらをプルアップインピーダンスコード(例えばRpull[5:0])及び/又はプルダウンインピーダンスコード(例えばRpd[4:0])としてドライバ103に提供する。幾つかの実施形態では、増大/減少/バイパスロジック102dは、固定信号(例えばLock_UP又はLock_DN)を受信すると、プルアップ及び/又はプルダウンインピーダンスコードを凍結する(又はロックする)。
例えば、増大/減少/バイパスロジック102dがLock_UPを受信すると(例えば、Lock_UPがアサートされると)、Rpull[5:0]は少なくとも1クロック周期の間、凍結される。別の例では、増大/減少/バイパスロジック102dがLock_DNを受信すると(例えば、Lock_DNがアサートされると)、Rpd[5:0]は少なくとも1クロック周期の間、凍結される。幾つかの実施形態によると、ロックされたコードは、次に、ドライバ103へ送信される。幾つかの実施形態では、ロックされた後のプルアップ及びプルダウンインピーダンスコードは、ドライバ102に提供される。
幾つかの実施形態では、バイアス生成器104は、検出器102aのために第1及び第2基準電圧(例えば、VrefHi_1及びVrefLow_1)を生成する。幾つかの実施形態では、バイアス生成器104は、また、RCOMP校正ロジック101のためにバイアス電圧Vref_compを生成する。幾つかの実施形態では、第1及び第2基準電圧(例えば、VrefHi_1及びVrefLow_1)は、ドライバ103により駆動されるデータの論理ハイレベルに、より近い(例えば、20%~5%)。したがって、第1基準電圧VrefHi_1の電圧レベルは、第2基準電圧VrefLow_1の電圧レベルより高い。幾つかの実施形態では、データがハイレベルに上昇しているとき又はハイレベルであるとき、VrefHi_1及びVrefLow_1の間の差は、オーバーシュート又はリンギングレベル閾を決定する。幾つかの実施形態では、ドライバ103により駆動されるデータがVrefHi_1より高く上昇し、又はVrefLow_1より下がるとき、検出器102aは、リンギング又はオーバーシュート状態を検出し、プルアップインピーダンスコード(例えば、Rpull[5:0]コード)を調整するために適切なUP/DNコードを生成する。
幾つかの実施形態では、バイアス生成器104は、検出器102aのために第3及び第4基準電圧(例えば、VrefHi_0及びVrefLow_0)を生成する。幾つかの実施形態では、第3及び第4基準電圧(例えば、VrefHi_0及びVrefLow_0)は、ドライバ103により駆動されるデータの論理ローレベルに、より近い(例えば、20%~5%)。したがって、第3基準電圧VrefHi_0の電圧レベルは、第4基準電圧VrefLow_0の電圧レベルより高い。幾つかの実施形態では、データがローレベルに下降しているとき又はローレベルであるとき、VrefHi_0及びVrefLow_0の間の差は、オーバーシュート又はリンギングレベル閾を決定する。幾つかの実施形態では、ドライバ103により駆動されるデータがVrefHi_0より高く上昇し、又はVrefLow_0より下がるとき、検出器102aは、リンギング又はオーバーシュート状態を検出し、プルダウンインピーダンスコード(例えば、Rpd[5:0]コード)を調整するために適切なUP/DNコードを生成する。
図2は、本開示の幾つかの実施形態による、補償済みインピーダンスの適応的調整の前後のドライバ103の出力を示すグラフ200を示す。ここで、x軸は時間であり、y軸は電圧である。グラフ200は、ドライバ103の出力における2つの波形201及び202、多相クロックCLK0、CLK1、CLK2、及びCLK4を含む制御信号、並びに、Up/Down信号UP0、UP1、UP2、UP3、UP4、DN0、DN1、DN2、DN3、及びDN4、を示す。本例では、多相信号はそれぞれ266ピコ秒(ps)だけ離れている。ここで、波形201(灰色影付き)は、補償済みインピーダンスの適応調整前のドライバ103の出力である。一方、波形202(黒)は、補償済みインピーダンスの適応調整後のドライバ103の出力である。幾つかの実施形態によると、波形201及び202は互いに重なり合っているが、波形202は、クロック周期(単位間隔)の後に達成される。この場合、幾つかの実施形態によると、コードの変化が検出された後に、調整されたコードが少なくとも1周期に適用される。
幾つかの実施形態では、データの各単位間隔(UI)は、複数の位相クロックを用いてサンプリングされ、第1、第2、第3、及び第4基準電圧(それぞれVrefHi_1、VrefLow_1、VrefHi_0、VrefLow_0)と比較される。比較に応じて、Up/Down指示子が生成される。本例では、オーバーシュート又はリンギングは、CLK1及びCLK3のエッジでサンプリングされる。したがって、UP1及びUP3のエッジはアサートされ、その間、UP(例えば、UP0及びUP4)及びDN(例えば、DN0、DN1、DN2、DN3、及びDN4)の他のエッジは非アサートのままである。
図3は、本開示の幾つかの実施形態による、機器102の動作を示すグラフ300を示す。グラフ300は、「N」個のクロック周期(Cycle-1、Cycle-2、Cycle-3、...、Cycle-N)301、検出器102aの状態302、決定更新クロックCLK0(又はCalib_Clock)、及び増大/減少/バイパスロジック102dの状態304を示す。状態302は、ドライバ103の出力からのデータのサンプリング、及び次に基準電圧に対する該データの比較を示す。幾つかの実施形態によると、このサンプリング及び比較は、各クロック周期の後に行われる。状態303は、有限状態機械(例えば、図5を参照して議論される)の更新状態のクロックを示す。図3に戻ると、状態304は、決定ロジック102cのクロック周期の間の有限状態機械の種々の可能な状態を示す。幾つかの実施形態では、決定更新クロック303の間、コードの出力304は、サンプリングされ比較された出力に基づき、利用可能である(例えば、増加/減少/変化無し)。幾つかの実施形態では、各決定更新クロック303の後に、コード304は、サンプリングされ比較された出力302に依存して変化する。
図4は、本開示の幾つかの実施形態による、ドライバの出力を監視することにより補償済みインピーダンスを適応的に調整する機器400を示す。任意の他の図の要素と同じ参照符号(又は名称)を有する図4のこれらの要素は、記載されたものと同様の方法で動作し又は機能できるが、そのように限定されないことが指摘される。機器400は、図1の種々のシステムコンポーネントの詳細を含む。機器400は、RCOMPロジック101、増大/減少/固定ロジック102d、ロジック401、ドライバ402/103、検出器403/102a、バイアス生成器404/104、及び決定ブロック405/102cを含む。幾つかの実施形態では、ロジック401は、Data及びDatab(例えば、Dataの反転)を提供する任意の適切なロジックである。
幾つかの実施形態では、ドライバ402/103は、データを伝搬するロジック及びその関連するインピーダンスコードを含む。幾つかの実施形態では、ANDゲート402a(又はその均等物)が設けられ、Data及びプルアップインピーダンスコードRpull[5:0]を受信し、プレドライバ402cに出力を提供する。幾つかの実施形態では、ANDゲート402b(又はその均等物)が設けられ、Datab及びプルダウンインピーダンスコードRpd[5:0]を受信し、プレドライバ402dに出力を提供する。プレドライバ402c/dは、任意の適切なプレドライバ設計により実装できる。本例では、プレドライバ402c/dの入力及び出力は、5ビットバスである。幾つかの実施形態では、ドライバ402eは、供給ノードVdd(例えば、電力)及びVss(例えば、グランド)の間に結合されるプルアップ及びプルダウンドライバを有する。幾つかの実施形態では、ドライバ402eは、USB(Universal Serial Bus)準拠ドライバである。ドライバ402eの出力は、USBDP及びUSBDMである。ここで、ノード名称及び信号名称の参照は、同義的に使用される。例えば、クロック「CLK0」は、文脈に依存してノードCLK0又はクロック信号CLK0を表して良い。
幾つかの実施形態では、検出器403/102aは、出力USBDP及びUSBDMに及び基準電圧VrefHi_1及びVrefLow_1に結合される複数の比較ラッチ(例えば、Strong Arm Latches:SAL、クロック供給される比較器、等)を含む。実施形態を不明瞭にしないために、ノードUSBDP及びUSBDM上のデータがハイレベルに上昇するとき、オーバーシュート/リンギングを検出するための基準電圧が開示される。ノードUSBDP及びUSBDM上のデータがローレベルに降下するとき、オーバーシュート/リンギングを検出するための基準電圧も、別の比較ラッチセット(図示しない)に追加できる。幾つかの実施形態では、検出器403/102aは、高速受信機(RX)の部分である。
幾つかの実施形態では、比較ラッチ403aは、入力USBDP及びUSBDMを受信し、それらを基準電圧VrefHi_1及びVrefLow_1と比較し、クロックCLK0を用いて入力USBDP及びUSBDMをサンプリングする。幾つかの実施形態によると、比較ラッチ403aのサンプリングされた出力は、UP0及びDN0であり、ロジック405/102cに提供される。幾つかの実施形態では、比較ラッチ403bは、入力USBDP及びUSBDMを受信し、それらを基準電圧VrefHi_1及びVrefLow_1と比較し、クロックCLK1を用いて入力USBDP及びUSBDMをサンプリングする。幾つかの実施形態によると、比較ラッチ403bのサンプリングされた出力は、UP1及びDN1であり、ロジック405/102cに提供される。幾つかの実施形態では、比較ラッチ403cは、入力USBDP及びUSBDMを受信し、それらを基準電圧VrefHi_1及びVrefLow_1と比較し、クロックCLK2を用いて入力USBDP及びUSBDMをサンプリングする。幾つかの実施形態によると、比較ラッチ403cのサンプリングされた出力は、UP2及びDN2であり、ロジック405/102cに提供される。幾つかの実施形態では、比較ラッチ403dは、入力USBDP及びUSBDMを受信し、それらを基準電圧VrefHi_1及びVrefLow_1と比較し、クロックCLK3を用いて入力USBDP及びUSBDMをサンプリングする。幾つかの実施形態によると、比較ラッチ403dのサンプリングされた出力は、UP3及びDN3であり、ロジック405/102cに提供される。
実施形態は、4個の多相クロックを用いてデータをサンプリングし及び比較する4個の比較ラッチを示すが、他の数の比較ラッチ及び多相クロックが、データをサンプリングし基準電圧に対して比較するために使用されて、所望のレベルのACインピーダンス校正を達成して良い。
幾つかの実施形態では、バイアス生成器404/104は、分圧器として(例えば抵抗ラダーを用いて)実装される。他の実施形態では、バイアス生成器404/104の他の適切な実装が使用されて良い。幾つかの実施形態では、バイアス生成器404/104は、検出器403/102a及びRCOMP101により共有される。幾つかの実施形態では、異なるバイアス生成器が、検出器403/102a及びRCOMP101のために使用される。
幾つかの実施形態では、ロジック405/102cは、Up及びDown信号(例えば、UP0、DN0、UP1、DN1、UP2、DN2、並びにUP3、DN3)をサンプリングする複数の順序ロジック(例えば、フリップフロップ)を有する。複数の順序ロジックの1つの目的は、インピーダンスコードが決定ロジック102c及び増大/減少/固定ロジック102dにより調整される前に、Up及びDown信号の中の任意の可能なノイズをフィルタリングすることである。図5は、インピーダンスコードを生成する1つの可能な決定処理を示す。
図5は、本開示の幾つかの実施形態による、ドライバの出力を監視することにより補償済みインピーダンスを適応的に調整する有限状態機械(FSM)500を示す。任意の他の図の要素と同じ参照符号(又は名称)を有する図5のこれらの要素は、記載されたものと同様の方法で動作し又は機能できるが、そのように限定されないことが指摘される。本例では、4個の状態FSMが示される。他の実施形態では、FSM500の能力を拡張するために、より多くの状態が追加され得る。4個の状態は、開始状態501、減少(DEC)状態502、固定状態503、及び増大(INC)状態504である。
幾つかの実施形態では、FSM500は開始状態501で開始する。検出器102aがUp又はDownの場合を示すとき(例えば、UP=1、DN=0のとき、又はUP=0、DN=1のとき)、FSM500は、次のクロック周期で、DEC状態502又はINC状態504のうちの1つに移行する。FSM500は、次に、Up及びDown信号の指示子が同じ限り、その状態に留まる。例えば、UP=1且つDN=0のとき、FSM500はDEC状態502であり、次にFSM500はDEC状態502に留まる。同様に、UP=0且つDN=1のとき、FSM500はINC状態504であり、次にFSM500はINC状態504に留まる。
幾つかの実施形態では、FSM500がDEC状態502であり、Up及びDown指示子の状態が変化して、指示子のうちの1つがアサート状態であるとき、FSM500は開始状態501に戻る。例えば、UPが1から0に変化し、DNが0から1に変化し、その間、FSM500がDEC状態502であるとき、FSM500は開始状態501に移行する。幾つかの実施形態では、FSM500がINC状態504であり、Up及びDown指示子の状態が変化して、指示子のうちの1つがアサート状態であるとき、FSM500は開始状態501に戻る。例えば、UPが0から1に変化し、DNが1から0に変化し、その間、FSM500がINC状態504であるとき、FSM500は開始状態501に移行する。
幾つかの実施形態では、FSM500が開始状態501、DEC状態502、又はINC状態504のうちの1つであり、Up/Down指示子がゼロになると(例えば、インピーダンスコードの更なる変化が必要ないことを示す)、FSM500は固定状態503に移行する。この状態では、インピーダンスコード(例えば、Rpull[5:0]及びRpd[5:0])は、Resetbがアサートされるまで固定又は凍結される。例えば、固定状態503であり且つResetbがアサートされると、FSMは固定状態503から開始状態501に移行する。
幾つかの実施形態によると、FSM500は、増大/減少コードを生成して、ACインピーダンス不整合に応じる。幾つかの実施形態では、FSM500は、インピーダンス不整合に応じるために、クロック周期毎に1つのコードだけ増大又は減少する。幾つかの実施形態によると、正しいコードを見付けることは、UP/DN指示が00になるときまで続く。幾つかの実施形態では、実際のデータ送信のために、固定されたインピーダンスコードが使用される。幾つかの実施形態では、FSM500は、データのトレーニングシーケンス(例えば、シーケンス101010)の間、動作する。幾つかの実施形態では、インピーダンスコードが固定されると、該コードは、実際のデータ送信の間、使用される。当業者は、機械を実装するためのロジックが反転される場合又は反対の極性制御信号(Up及びDown)が使用される場合、INC及びDECロジックのための状態機械ロジックが変化し得ることを理解する。幾つかの場合には、INC及びDECロジックが変えられると、UP/DNのためのロジックも変化し得る。
図6は、本開示の幾つかの実施形態による、データがハイを駆動しているとき、ドライバの出力を監視することにより補償済みプルアップインピーダンスを適応的に調整する方法のフローチャート600を示す。任意の他の図の要素と同じ参照符号(又は名称)を有する図6のこれらの要素は、記載されたものと同様の方法で動作し又は機能できるが、そのように限定されないことが指摘される。
フローチャート600は、「Start」ブロックで開始し、次にブロック601に進む。ブロック601で、ドライバ103の出力のデータがHighかLowかが決定される。DataがHighである場合、処理はブロック602へ進み、その他の場合、処理は図7を参照して記載されるブロック702に進む。図6に戻ると、ブロック602で、検出器102aは、多相クロック信号を用いてデータをサンプリングし、基準電圧VrefHi_1及びVrefLow_1と比較する。このブロックの出力は、オーバーシュート/リンギングに関連付けられるUp及びDown指示子である。
ブロック603で、連続するUP及びDownデータがハイであるか否かが決定される。(検出器102aにより生成される)連続するUP及びDownデータを調べることの1つの理由は、インピーダンスコードが調整される前に、UP及びDownデータにある任意のノイズをフィルタリングするためである。連続サンプリングされたデータがハイであると決定された場合(例えば、オーバーシュート条件が実際にキャプチャされた)、ブロック605でプルアップインピーダンスコードが増大される(例えば、Rup=Rup-1)。次に、処理はブロック601に進む。ブロック603で、連続サンプリングされたデータがハイではないと決定された場合、処理はブロック606に進み、プルアップインピーダンスコードが固定される(例えば、Rupが定められる)。処理は次にブロック608に進み、ACインピーダンス不整合を解決するためのインピーダンスコードを調整するために、プルアップインピーダンスコードがドライバ103にロードされる。
ブロック604で、連続するUp及びDownデータがローであるか否かが決定される。(検出器102aにより生成される)連続するUp及びDownデータを調べることの1つの理由は、インピーダンスコードが調整される前に、Up及びDownデータにある任意のノイズをフィルタリングするためである。連続サンプリングされたデータがローであると決定された場合、ブロック607で、プルアップインピーダンスコードは減少される(例えば、Rup=Rup+1)次に、処理はブロック601に進む。ブロック604で、連続サンプリングされたデータがローではないと決定された場合、処理はブロック606に進み、プルアップインピーダンスコードが固定される(例えば、Rupが定められる)。処理は次にブロック608に進み、ACインピーダンス不整合を解決するためのインピーダンスコードを調整するために、プルアップインピーダンスコードがドライバ103にロードされる。
図7は、本開示の幾つかの実施形態による、データがローを駆動しているとき、ドライバの出力を監視することにより補償済みプルダウンインピーダンスを適応的に調整する方法のフローチャート700を示す。任意の他の図の要素と同じ参照符号(又は名称)を有する図7のこれらの要素は、記載されたものと同様の方法で動作し又は機能できるが、そのように限定されないことが指摘される。
フローチャート700は、「Start」ブロックで開始し、次にブロック701に進む。ブロック701で、ドライバ103の出力のデータがHighかLowかが決定される。DataがHighである場合、処理は図6のブロック602へ進み、その他の場合、処理はブロック702に進む。図7に戻ると、ブロック702で、検出器102aは、多相クロック信号を用いてデータをサンプリングし、基準電圧VrefHi_0及びVrefLow_0と比較する。このブロックの出力は、アンダーシュート/リンギングに関連付けられるUp及びDown指示子である。
ブロック703で、連続するUp及びDownデータがハイであるか否かが決定される。(検出器102aにより生成される)連続するUp及びDownデータを調べることの1つの理由は、インピーダンスコードが調整される前に、Up及びDownデータにある任意のノイズをフィルタリングするためである。連続サンプリングされたデータがローであると決定された場合(例えば、アンダーシュート条件が実際にキャプチャされた)、ブロック705でプルダウンインピーダンスコードが増大される(例えば、Rdn=Rdn-1)。次に、処理はブロック701に進む。ブロック703で、連続サンプリングされたデータがハイではないと決定された場合、処理はブロック706に進み、プルダウンインピーダンスコードが固定される(例えば、Rdnが定められる)。処理は次にブロック708に進み、ACインピーダンス不整合を解決するためのインピーダンスコードを調整するために、プルダウンインピーダンスコードがドライバ103にロードされる。
ブロック704で、連続するUp及びDownデータがローであるか否かが決定される。(検出器102aにより生成される)連続するUp及びDownデータを調べることの1つの理由は、インピーダンスコードが調整される前に、Up及びDownデータにある任意のノイズをフィルタリングするためである。連続サンプリングされたデータがハイであると決定された場合、ブロック707で、プルダウンインピーダンスコードは減少される(例えば、Rdn=Rdn+1)次に、処理はブロック701に進む。ブロック704で、連続サンプリングされたデータがローではないと決定された場合、処理はブロック706に進み、プルダウンインピーダンスコードが固定される(例えば、Rdnが定められる)。処理は次にブロック708に進み、ACインピーダンス不整合を解決するためのインピーダンスコードを調整するために、プルダウンインピーダンスコードがドライバ103にロードされる。
図6-7を参照するとフローチャート内のブロックは特定順序で示されるが、動作の順序は変更できる。したがって、図示の実施形態は異なる順序で実行でき、幾つかの動作/ブロックは並列に実行されて良い。図6-7に列挙されたブロック及び/又は動作のうちの幾つかは、特定の実施形態によると任意である。提示のブロックの番号付けは、明確さのためであり、種々のブロックが生じなければならない動作順序を記述するものではない。さらに、種々のフローからの動作は、種々の組み合わせで利用されて良い。
図8は、幾つかの実施形態による、ドライバの出力を監視することにより補償済みインピーダンスを適応的に調整する機器を有するスマートデバイス又はコンピュータシステム又はSoC(System-on-Chip)を示す。任意の他の図の要素と同じ参照符号(又は名称)を有する図8のこれらの要素は、記載されたものと同様の方法で動作し又は機能できるが、そのように限定されないことが指摘される。
図8は、平面インタフェースコネクタが用いられ得るモバイル装置の一実施形態のブロック図を示す。幾つかの実施形態では、コンピューティング装置2100は、コンピューティングタブレット、携帯電話機若しくはスマートフォン、無線可能読み取り機、又は他の無線モバイル装置のようなモバイルコンピューティング装置を表す。コンポーネントが一般的に示されること、及びこのような装置の全てのコンポーネントがコンピューティング装置2100内に示されないことが理解されるだろう。
幾つかの実施形態では、コンピューティング装置2100は、幾つかの実施形態による、ドライバの出力を監視することにより補償済みインピーダンスを適応的に調整する機器を備える第1プロセッサを含む。コンピューティング装置2100の他のブロックも、幾つかの実施形態による、ドライバの出力を監視することにより補償済みインピーダンスを適応的に調整する機器を含んで良い。本開示の種々の実施形態は、無線インタフェースのような2170内のネットワークインタフェースを有して良い。したがって、システムの実施形態は、無線装置、例えば携帯電話機又はパーソナルデジタルアシスタントに組み込まれて良い。
一実施形態では、プロセッサ2110(及び/又はプロセッサ2190)は、マイクロプロセッサ、アプリケーションプロセッサ、マイクロコントローラ、プログラマブル論理装置、又は他の処理手段のような1又は複数の物理装置を含み得る。プロセッサ2110により実行される処理動作は、アプリケーション及び/又は装置機能が実行されるオペレーティングプラットフォーム又はオペレーティングシステムの実行を含む。処理動作は、人間のユーザと又は他の装置とのI/O(入力/出力)に関連する動作、電力管理に関連する動作、及び/又はコンピューティング装置2100の別の装置への接続に関連する動作を含む。処理動作は、オーディオI/O及び/又はディスプレイI/Oに関連する動作も含んで良い。
一実施形態では、コンピューティング装置2100は、コンピューティング装置へのオーディオ機能の提供に関連するハードウェア(例えば、オーディオハードウェア及びオーディオ回路)及びソフトウェア(例えば、ドライバ、コーデック)コンポーネントを表すオーディオサブシステム2120を含む。オーディオ機能は、スピーカ及び/又はヘッドフォン出力、並びにマイクロフォン入力を含み得る。このような機能のための装置は、コンピューティング装置2100に統合されるか、又はコンピューティング装置2100に接続できる。一実施形態では、ユーザは、プロセッサ2100により受信され処理されるオーディオコマンドを提供することによりコンピューティング装置2110と相互作用する。
ディスプレイサブシステム2130は、コンピューティング装置2100と相互作用するために視覚及び/又は触覚ディスプレイをユーザに提供するハードウェア(例えば、ディスプレイ装置)及びソフトウェア(例えば、ドライバ)コンポーネントを表す。ディスプレイサブシステム2130は、ディスプレイインタフェース2132を含み、ユーザにディスプレイを提供するために用いられる特定のスクリーン又はハードウェア装置を含む。一実施形態では、ディスプレイインタフェース2132は、ディスプレイに関連する少なくとも特定の処理を実行するために、プロセッサ2110とは別個のロジックを含む。一実施形態では、ディスプレイサブシステム2130は、ユーザに出力及び入力の両方を提供するタッチスクリーン(又はタッチパッド)装置を含む。
I/O制御部2140は、ユーザとの相互作用に関連するハードウェア装置及びソフトウェアコンポーネントを表す。I/O制御部2140は、オーディオサブシステム2120及び/又はディスプレイサブシステム2130の一部であるハードウェアを管理するよう動作する。追加で、I/O制御部2140は、装置2100に接続する追加装置の接続点を示す。この接続点を通じてユーザはシステムと相互作用し得る。例えば、コンピューティング装置2100に取り付けることができる装置は、マイクロフォン装置、スピーカ若しくはステレオシステム、ビデオシステム若しくは他のディスプレイ装置、キーボード若しくはキーパッド装置、又はカードリーダ若しくは他の装置のような特定アプリケーションと共に使用する他のI/O装置を含み得る。
上述のように、I/O制御部2140は、オーディオサブシステム2120及び/又はディスプレイサブシステム2130と相互作用できる。例えば、マイクロフォン又は他のオーディオ装置を通じた入力は、コンピューティング装置2100の1又は複数のアプリケーション又は機能の入力又はコマンドを提供できる。追加で、オーディオ出力は、ディスプレイ出力の代わりに又はそれに追加で提供され得る。別の例では、ディスプレイサブシステム2130がタッチスクリーンを含む場合、ディスプレイ装置は、入力装置としても動作し、I/O制御部2140により少なくとも部分的に管理され得る。I/O制御部2140により管理されるI/O機能を提供するために、コンピューティング装置2100に追加ボタン又はスイッチが存在して良い。
一実施形態では、I/O制御部2140は、加速度計、カメラ、光センサ若しくは他の環境センサ、又はコンピューティング装置2100に含まれ得る他のハードウェアのような装置を管理する。入力は、(ノイズのフィルタリング、明るさ検出のためのディスプレイ調整、カメラのフラッシュの適用、又は他の機能のような)システムの動作に影響を与えるために環境入力をシステムに提供すると共に、直接ユーザ相互作用の一部であり得る。
一実施形態では、コンピューティング装置2100は、バッテリ電力使用、バッテリ充電、及び省電力動作に関連する機能を管理する電力管理2150を含む。メモリサブシステム2160は、コンピューティング装置2100に情報を格納するメモリ装置を有する。メモリは、不揮発性(メモリ装置への電力が中断された場合に状態が変化しない)及び/又は揮発性(メモリ装置への電力が中断された場合に状態が変化する)メモリ装置を含み得る。メモリサブシステム2160は、アプリケーションデータ、ユーザデータ、音楽、写真、文書又は他のデータ、並びにアプリケーション及びコンピューティング装置2100の機能の実行に関連するシステムデータ(長期間又は一時的にかかわらず)を格納できる。
実施形態の要素は、コンピュータ実行可能命令(例えば、本願明細書で議論する任意の他の処理を実施する命令)を格納する機械可読媒体(例えば、メモリ2160)として提供される。機械可読媒体(例えば、メモリ2160)は、限定ではないが、フラッシュメモリ、光ディスク、CD-ROM、DVD-ROM、RAM、EPROM、EEPROM、磁気若しくは光カード、相変化メモリ(phase change memory:PCM)又は電子若しくはコンピュータ実行可能命令を格納するのに適する他の種類の機械可読媒体を含み得る。例えば、本開示の実施形態は、リモートコンピュータ(例えば、サーバ)から要求側コンピュータ(例えば、クライアント)へ、通信リンク(例えば、モデム又はネットワーク接続)を介したデータ信号により転送され得るコンピュータプログラム(例えば、BIOS)としてダウンロードされて良い。
接続2170は、コンピューティング装置2100が外部装置と通信するのを可能にするハードウェア装置(例えば、無線及び/又は有線コネクタ、並びに通信ハードウェア)及びソフトウェアコンポーネント(例えば、ドライバ、プロトコルスタック)を含む。コンピューティング装置2100は、他のコンピューティング装置、無線アクセスポイント若しくは基地局、並びにヘッドセット、プリンタ又は他の装置のような周辺機器のような別個の装置であり得る。
接続2170は、複数の異なる種類の接続を含むことができる。一般化するため、コンピューティング装置2100は、セルラ接続2172及び無線接続2174とともに示される。セルラ接続2172は、概して、GSM(登録商標)(global system for mobile communications)若しくは変形若しくは波生物、CDMA(code division multiple access)若しくは変形若しくは波生物、TDMA(time division multiplexing)若しくは変形若しくは波生物、又は他のセルラサービス標準を介して提供されるような無線通信事業者により提供されるセルラネットワーク接続を表す。無線接続(又は無線インタフェース)2174は、セルラではない無線接続を表し、(Bluetooth(登録商標)、Near Field、等のような)個人域ネットワーク、(Wi-Fiのような)ローカルエリアネットワーク、及び/又は(WiMaxのような)広域ネットワーク、又は他の無線通信を含み得る。
幾つかの実施形態では、周辺機器接続2180は、ハードウェアインタフェース及びコネクタ、並びに周辺機器接続を生成するソフトウェアコンポーネント(例えば、ドライバ、プロトコルスタック)を含む。コンピューティング装置2100は他のコンピューティング装置に対する周辺装置(2182「へ」)であり、並びに自身に接続される周辺装置(2184「から」)の両方であり得ることが理解される。コンピューティング装置2100は、通常、コンピューティング装置2100のコンテンツを管理する(例えば、ダウンロードし及び/又はアップロードし、変更し、同期化する)ような目的で他のコンピューティング装置に接続するための「ドッキング」コネクタを有する。追加で、ドッキングコネクタは、コンピューティング装置2100を、コンピューティング装置2100に例えばオーディオビジュアル若しくは他のシステムへのコンテンツ出力を制御させる特定の周辺機器に接続できるようにする。
独自仕様のドッキングコネクタ又は他の独自仕様の接続ハードウェアに加えて、コンピューティング装置2100は、共通若しくは標準に基づくコネクタを介して周辺機器接続2180を生成できる。一般的な種類は、(任意の数の異なるハードウェアインタフェースを含むことができる)USB(Universal Serial Bus)コネクタ、MDP(MiniDisplayPort)を含むDisplayPort、HDMI(登録商標)(High Definition Multimedia Interface)、Fire wire、又は他の種類を含み得る。
本願明細書において本発明の「一実施形態」又は「ある実施形態」、「幾つかの実施形態」、又は「他の実施形態」への言及は、実施形態と関連して記載された特定の機能、構造又は特徴が、必ずしも全部の実施形態ではなく少なくとも幾つかの実施形態に含まれることを意味する。「一実施形態」、「ある実施形態」、又は「幾つかの実施形態」の種々の表現は、必ずしも全て同じ実施形態を参照しない。本願明細書は、コンポーネント、機能、構造又は特徴が「しても良い」、「し得る」(may、might又はcould)と記述する場合、その特定のコンポーネント、機能、構造、又は特徴が含まれることを要求しない。本願明細書又は請求項は、単数(a又はan)の要素を参照する場合、複数の要素のうちの1つのみが存在することを意味しない。本願明細書又は請求項は、「追加の」(additional)要素に言及する場合、1より多い追加要素の存在を排除しない。
さらに、特定の特徴、構造、機能又は特性は、1又は複数の実施形態において、任意の適切な方法で結合されて良い。例えば、2つの実施形態に関連する特定の特徴、構造、機能又は特性が相互に排他的でない限り、第1の実施形態は第2の実施形態と結合されて良い。
本開示は本開示の特定の実施形態と関連して記載されたが、そのような実施形態の多くの代替、変更及び変形が、前述の記載を考慮に入れて当業者に明らかである。例えば、他のメモリアーキテクチャ、例えばダイナミックRAM(Dynamic RAM)は議論した実施形態を使用して良い。本開示の実施形態は、全てのこのような代替、変更及び変形が添付の請求の範囲の広範な範囲内に包含されることを意図する。
さらに、集積回路(IC)チップ及び他のコンポーネントとのよく知られている電力/グランド接続は、提示された図に示される場合もあり、説明及び議論を簡単にするため及び本開示を不明確にしないために図示されない場合がある。さらに、配置は、本開示を不明確にするのを回避するために、及びこのようなブロック図配置の実装に関する詳細が本開示が実施されるプラットフォームに大きく依存する、つまりこのような詳細は当業者の範囲内であるという事実の観点からブロック図の形式で示され得る。本開示の例示的な実施形態を説明するために固有の詳細(例えば、回路)が説明される場合、当業者には、本開示がこれら固有の詳細を有しないで又はそれらの変形を有して実施できることが明らかである。したがって、説明は、限定ではなく説明のためとして考えられるべきである。
以下の例は、更なる実施形態に関連する。これらの例における詳細は、1又は複数の実施形態のどこでも使用できる。本願明細書に記載の装置の全ての任意的機能は、方法又は処理に関して実装されて良い。
例えば、ドライバの出力に結合されるデータサンプラであって、前記データサンプラは、データをサンプリングして、該データを第1閾電圧及び第2閾電圧と比較し、前記データサンプラは、前記データの前記第1閾電圧及び第2閾電圧との比較に従い、Up又はDown指示子を生成する、データサンプラと、前記データサンプラに結合されるロジックであって、前記ロジックは、前記Up又はDown指示を受信し、前記Up又はDown指示に従い、前記ドライバのDC補償済みインピーダンス脚の数を増大又は減少させる、ロジックと、を含む機器が提供される。幾つかの実施形態では、前記第2閾電圧は、前記第1閾電圧より低い。幾つかの実施形態では、前記機器は、前記第1及び第2閾電圧を生成するためにバイアス生成器を含む。幾つかの実施形態では、前記第1及び第2閾電圧は、前記データの論理ローレベルより前記データの論理ハイレベルに近い。幾つかの実施形態では、前記第1及び第2閾電圧は、前記データの論理ハイレベルより前記データの論理ローレベルに近い。
幾つかの実施形態では、前記機器は、サンプリングクロックのセットによりデータをサンプリングするために、前記データサンプラに、異なる位相を有する前記サンプリングクロックのセットを提供するためにクロック生成器を含む。幾つかの実施形態では、前記データサンプラはストロングアームラッチを有する。幾つかの実施形態では、前記Up指示子は、少なくとも2ビットを有するバスであり、前記Down指示子は少なくとも2ビットを有するバスである。幾つかの実施形態では、前記ロジックは、アクティブなインピーダンス脚が増大又は減少された後に、DC補償済みインピーダンス脚の数を固定する。幾つかの実施形態では、ドライバは伝送線に結合される。幾つかの実施形態では、ドライバは差動ドライバである。
別の例では、システムであって、メモリと、前記メモリに結合されるプロセッサであって、前記プロセッサは上述の機器による機器を備えるプロセッサと、前記プロセッサが別の装置と通信できるようにする無線インタフェースと、を有するシステムが提供される。
別の例では、プルアップインピーダンス脚を有するドライバであって、アクティブなプルアップインピーダンス脚の数は、前記ドライバのプルアップ出力インピーダンスを決定する、ドライバと、前記ドライバの出力に結合される検出器であって、前記検出器は、遅延分だけ間隔の空いた少なくとも2つのクロックエッジで前記出力におけるデータをサンプリングする、検出器と、前記検出器に結合されるカウンタであって、前記カウンタは、基本数のプロセス、電圧、及び温度(PVT)補償済みのアクティブなプルアップインピーダンス脚の数を受信し、前記カウンタは、前記基本数に渡り1又は複数のプルアップインピーダンス脚をオンに切り替え又はオフに切り替えて、前記サンプリングされたデータに従い前記アクティブなプルアップインピーダンス脚の数を変化させる、カウンタと、を含む機器が提供される。幾つかの実施形態では、前記データサンプラは、前記データをサンプリングし、該データを第1閾電圧及び第2閾電圧と比較する。幾つかの実施形態では、前記第2閾電圧は、前記第1閾電圧より低い。幾つかの実施形態では、前記機器は、前記第1及び第2閾電圧を生成するためにバイアス生成器を含む。幾つかの実施形態では、前記第1及び第2閾電圧は、前記データの論理ローレベルより前記データの論理ハイレベルに近い。幾つかの実施形態では、前記第1及び第2閾電圧は、前記データの論理ハイレベルより前記データの論理ローレベルに近い。
別の例では、システムであって、メモリと、前記メモリに結合されるプロセッサであって、前記プロセッサは上述の機器による機器を備えるプロセッサと、前記プロセッサが別の装置と通信できるようにする無線インタフェースと、を有するシステムが提供される。
幾つかの実施形態では、方法であって、データをサンプリングするステップと、前記データを第1閾電圧及び第2閾電圧と比較するステップと、前記データの前記第1及び第2閾電圧との比較に従い、Up又はDown指示子を生成するステップと、前記Up又はDown指示子を受信するステップと、前記Up又はDown指示子に従い、ドライバのDC補償済みインピーダンス脚の数を増大又は減少させるステップと、を含む方法が提供される。幾つかの実施形態では、前記第2閾電圧は、前記第1閾電圧より低い。幾つかの実施形態では、前記方法は、前記第1及び第2閾電圧を生成するステップを有する。幾つかの実施形態では、前記第1及び第2閾電圧は、前記データの論理ローレベルより前記データの論理ハイレベルに近い。幾つかの実施形態では、前記第1及び第2閾電圧は、前記データの論理ハイレベルより前記データの論理ローレベルに近い。幾つかの実施形態では、前記方法は、サンプリングクロックのセットによりデータをサンプリングするために、前記データサンプラに、異なる位相を有する前記サンプリングクロックのセットを提供するステップを含む。幾つかの実施形態では、前記Up指示子は、少なくとも2ビットを有するバスであり、前記Down指示子は少なくとも2ビットを有するバスである。幾つかの実施形態では、前記方法は、アクティブなインピーダンス脚が増大又は減少された後に、DC補償済みインピーダンス脚の数を固定するステップを含む。
幾つかの実施形態では、機器であって、データをサンプリングする手段と、前記データを第1閾電圧及び第2閾電圧と比較する手段と、前記データの前記第1及び第2閾電圧との比較に従い、Up又はDown指示子を生成する手段と、前記Up又はDown指示子を受信する手段と、前記Up又はDown指示子に従い、ドライバのDC補償済みインピーダンス脚の数を増大又は減少させる手段と、を含む機器が提供される。幾つかの実施形態では、前記第2閾電圧は、前記第1閾電圧より低い。幾つかの実施形態では、前記機器は、前記第1及び第2閾電圧を生成する手段を有する。幾つかの実施形態では、前記第1及び第2閾電圧は、前記データの論理ローレベルより前記データの論理ハイレベルに近い。幾つかの実施形態では、前記第1及び第2閾電圧は、前記データの論理ハイレベルより前記データの論理ローレベルに近い。幾つかの実施形態では、前記機器は、サンプリングクロックのセットによりデータをサンプリングするために、前記データサンプラに、異なる位相を有する前記サンプリングクロックのセットを提供する手段を含む。幾つかの実施形態では、前記Up指示子は、少なくとも2ビットを有するバスであり、前記Down指示子は少なくとも2ビットを有するバスである。幾つかの実施形態では、前記機器は、アクティブなインピーダンス脚が増大又は減少された後に、DC補償済みインピーダンス脚の数を固定する手段を含む。
別の例では、システムであって、メモリと、前記メモリに結合されるプロセッサであって、前記プロセッサは上述の機器による機器を備えるプロセッサと、前記プロセッサが別の装置と通信できるようにする無線インタフェースと、を有するシステムが提供される。
読者が技術的開示の特性及び主旨を解明できるように、要約が提供される。要旨は請求項の範囲又は意味を限定するために用いられるべきでないことが理解される。ここで、添付の請求項は、各請求項が別個の実施形態として存在するとして、詳細な説明に組み込まれる。

Claims (15)

  1. ドライバの出力に結合されるデータサンプラであって、前記データサンプラは、データをサンプリングして、該データを第1閾電圧及び第2閾電圧と比較し、前記データサンプラは、前記データの前記第1閾電圧及び第2閾電圧との比較に従い、Up又はDown指示子を生成する、データサンプラと、
    前記データサンプラに結合されるロジックであって、前記ロジックは、前記Up又はDown指示を受信し、前記Up又はDown指示に従い、前記ドライバのDC補償済みインピーダンス脚の数を増大又は減少させる、ロジックと、
    を含み、
    前記第1及び第2閾電圧は、前記データの論理ローレベルより前記データの論理ハイレベルに近い、又は、前記第1及び第2閾電圧は、前記データの論理ハイレベルより前記データの論理ローレベルに近い、機器。
  2. 前記第2閾電圧は前記第1閾電圧より低い、請求項1に記載の機器。
  3. 前記第1及び第2閾電圧を生成するためにバイアス生成器を含む請求項1に記載の機器。
  4. サンプリングクロックのセットによりデータをサンプリングするために、前記データサンプラに、異なる位相を有する前記サンプリングクロックのセットを提供するためにクロック生成器を含む請求項1に記載の機器。
  5. 前記データサンプラはストロングアームラッチを含む、請求項1に記載の機器。
  6. 前記Up指示子は、少なくとも2ビットを有、前記Down指示子は少なくとも2ビットを有する、請求項1に記載の機器。
  7. 前記ロジックは、アクティブなインピーダンス脚が増大又は減少された後に、DC補償済みインピーダンス脚の数を固定する、請求項1に記載の機器。
  8. 前記ドライバは伝送線に結合される、請求項1に記載の機器。
  9. 前記ドライバは差動ドライバである、請求項1に記載の機器。
  10. メモリと、
    前記メモリに結合される、請求項1乃至のいずれか一項に記載の機器と
    前記機器が別の装置と通信することを可能にする無線インタフェースと、
    を有するシステム。
  11. データをサンプリングするステップと、
    前記データを第1閾電圧及び第2閾電圧と比較するステップと、
    前記データの前記第1及び第2閾電圧との比較に従い、Up又はDown指示子を生成するステップと、
    前記Up又はDown指示子を受信するステップと、前記Up又はDown指示子に従い、ドライバのDC補償済みインピーダンス脚の数を増大又は減少させるステップと、
    を含
    み、
    前記第1及び第2閾電圧は、前記データの論理ローレベルより前記データの論理ハイレベルに近い、又は、前記第1及び第2閾電圧は、前記データの論理ハイレベルより前記データの論理ローレベルに近い、方法。
  12. 前記第2閾電圧は前記第1閾電圧より低い、請求項11に記載の方法。
  13. 前記第1及び第2閾電圧を生成するステップと、
    サンプリングクロックのセットによりデータをサンプリングするために、データサンプラに、異なる位相を有する前記サンプリングクロックのセットを提供するステップと、
    アクティブなインピーダンス脚が増大又は減少された後に、前記DC補償済みインピーダンス脚の数を固定するステップと、
    を含む請求項11に記載の方法。
  14. 前記Up指示子は、少なくとも2ビットを有、前記Down指示子は少なくとも2ビットを有する、請求項11に記載の方法。
  15. 請求項11乃至14のいずれか一項に記載の方法を実行する手段を含む機器。
JP2019507106A 2016-09-28 2017-08-09 適応終端インピーダンスを有する高速ドライバ Active JP7059255B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/279,273 US10355690B2 (en) 2016-09-28 2016-09-28 High speed driver with adaptive termination impedance
US15/279,273 2016-09-28
PCT/US2017/046140 WO2018063517A1 (en) 2016-09-28 2017-08-09 High speed driver with adaptive termination impedance

Publications (2)

Publication Number Publication Date
JP2019531003A JP2019531003A (ja) 2019-10-24
JP7059255B2 true JP7059255B2 (ja) 2022-04-25

Family

ID=61685781

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019507106A Active JP7059255B2 (ja) 2016-09-28 2017-08-09 適応終端インピーダンスを有する高速ドライバ

Country Status (5)

Country Link
US (1) US10355690B2 (ja)
EP (1) EP3520219A4 (ja)
JP (1) JP7059255B2 (ja)
CN (1) CN109643998A (ja)
WO (1) WO2018063517A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7151260B2 (ja) * 2018-08-08 2022-10-12 株式会社デンソー A/d変換回路
CN109729295B (zh) * 2018-12-19 2021-07-16 芯原微电子(上海)股份有限公司 发送端驱动电路及方法
US11190188B2 (en) * 2019-12-12 2021-11-30 Electronics And Telecommunications Research Institute Memory interface circuit including output impedance monitor and method of calibrating output impedance thereof
US11626934B1 (en) * 2021-06-23 2023-04-11 Amazon Technologies, Inc. Probability-based capture of an eye diagram on a high-speed digital interface

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5621335A (en) 1995-04-03 1997-04-15 Texas Instruments Incorporated Digitally controlled output buffer to incrementally match line impedance and maintain slew rate independent of capacitive output loading
JPH10261948A (ja) * 1997-03-17 1998-09-29 Nec Corp 出力インピーダンス自己補正回路付半導体集積回路
US6326806B1 (en) * 2000-03-29 2001-12-04 Xilinx, Inc. FPGA-based communications access point and system for reconfiguration
US6356105B1 (en) * 2000-06-28 2002-03-12 Intel Corporation Impedance control system for a center tapped termination bus
US6639423B2 (en) * 2002-03-12 2003-10-28 Intel Corporation Current mode driver with variable termination
US6922077B2 (en) 2003-06-27 2005-07-26 Intel Corporation Hybrid compensated buffer design
JP2005217999A (ja) 2004-02-02 2005-08-11 Hitachi Ltd デジタルデータ伝送回路
US7196567B2 (en) 2004-12-20 2007-03-27 Rambus Inc. Systems and methods for controlling termination resistance values for a plurality of communication channels
US8111564B2 (en) * 2009-01-29 2012-02-07 International Business Machines Corporation Setting controller termination in a memory controller and memory device interface in a communication bus
US8159262B1 (en) * 2011-02-18 2012-04-17 Dipankar Bhattacharya Impedance compensation in a buffer circuit
US8446169B1 (en) * 2011-08-26 2013-05-21 Xilinx, Inc. Impedance tuning for termination
US9753479B2 (en) 2012-08-01 2017-09-05 Qualcomm Incorporated Multi-standard, automatic impedance controlled driver with supply regulation
US9048824B2 (en) * 2012-12-12 2015-06-02 Intel Corporation Programmable equalization with compensated impedance
US9152257B2 (en) * 2012-12-28 2015-10-06 Intel Corporation Low swing voltage mode driver
KR102001693B1 (ko) * 2014-11-20 2019-07-18 에스케이하이닉스 주식회사 데이터 송신 장치

Also Published As

Publication number Publication date
US20180091148A1 (en) 2018-03-29
CN109643998A (zh) 2019-04-16
WO2018063517A1 (en) 2018-04-05
EP3520219A1 (en) 2019-08-07
US10355690B2 (en) 2019-07-16
JP2019531003A (ja) 2019-10-24
EP3520219A4 (en) 2020-05-13

Similar Documents

Publication Publication Date Title
JP7059255B2 (ja) 適応終端インピーダンスを有する高速ドライバ
US10396834B2 (en) Apparatus and method for adaptive common mode noise decomposition and tuning
US10686582B1 (en) Clock phase compensation apparatus and method
US10707878B2 (en) Apparatus and system for digitally controlled oscillator
US9209821B2 (en) Apparatus for generating quadrature clock phases from a single-ended odd-stage ring oscillator
US20160315642A1 (en) Method and apparatus for signal edge boosting
US7876857B2 (en) Data receiving apparatus
WO2018038838A1 (en) Apparatus and method for calibrating high speed serial receiver analog front end and phase detector
US10333689B2 (en) High speed sense amplifier latch with low power rail-to-rail input common mode range
US8008947B2 (en) Balanced phase detector
WO2014209378A1 (en) Voltage regulator with feed-forward and feedback control
US10320430B2 (en) Transmitter with power supply rejection
US10672438B2 (en) Dynamic reconfigurable dual power I/O receiver
US10069658B2 (en) Pulsed decision feedback equalization circuit
CN112740559A (zh) 具有反馈控制的发送器
US10333504B2 (en) Low power clamp for electrical overstress protection
US10361705B2 (en) Strobe centering apparatus and method
US8928380B2 (en) Current-mode D latch with reset function and associated circuit
KR20140026181A (ko) 리플리카 및 이를 이용한 반도체 메모리 장치

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200805

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210715

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210824

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211116

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220315

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220413

R150 Certificate of patent or registration of utility model

Ref document number: 7059255

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150