JP2019186933A - 動的ヒステリシス回路 - Google Patents

動的ヒステリシス回路 Download PDF

Info

Publication number
JP2019186933A
JP2019186933A JP2019069780A JP2019069780A JP2019186933A JP 2019186933 A JP2019186933 A JP 2019186933A JP 2019069780 A JP2019069780 A JP 2019069780A JP 2019069780 A JP2019069780 A JP 2019069780A JP 2019186933 A JP2019186933 A JP 2019186933A
Authority
JP
Japan
Prior art keywords
circuit
data
node
slave node
hysteresis
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.)
Granted
Application number
JP2019069780A
Other languages
English (en)
Other versions
JP6957549B2 (ja
Inventor
ピオトル・オレヤッジュ
Olejarz Piotr
ダニエル・サーリ
Saari Daniel
アラ・アラケリアン
Arakelian Ara
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Analog Devices Inc
Original Assignee
Analog Devices Inc
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 Analog Devices Inc filed Critical Analog Devices Inc
Publication of JP2019186933A publication Critical patent/JP2019186933A/ja
Application granted granted Critical
Publication of JP6957549B2 publication Critical patent/JP6957549B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/02Generators characterised by the type of circuit or by the means used for producing pulses
    • H03K3/023Generators characterised by the type of circuit or by the means used for producing pulses by the use of differential amplifiers or comparators, with internal or external positive feedback
    • H03K3/0233Bistable circuits
    • H03K3/02337Bistables with hysteresis, e.g. Schmitt trigger
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0079Receiver details
    • H04L7/0087Preprocessing of received signal for synchronisation, e.g. by code conversion, pulse generation or edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • G06F13/4072Drivers or receivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4291Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4295Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using an embedded synchronisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/02Generators characterised by the type of circuit or by the means used for producing pulses
    • H03K3/027Generators characterised by the type of circuit or by the means used for producing pulses by the use of logic circuits, with internal or external positive feedback
    • H03K3/037Bistable circuits
    • H03K3/0377Bistables with hysteresis, e.g. Schmitt trigger
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/02Generators characterised by the type of circuit or by the means used for producing pulses
    • H03K3/353Generators characterised by the type of circuit or by the means used for producing pulses by the use, as active elements, of field-effect transistors with internal or external positive feedback
    • H03K3/356Bistable circuits
    • H03K3/3565Bistables with hysteresis, e.g. Schmitt trigger
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/01Shaping pulses
    • H03K5/08Shaping pulses by limiting; by thresholding; by slicing, i.e. combined limiting and thresholding
    • H03K5/082Shaping pulses by limiting; by thresholding; by slicing, i.e. combined limiting and thresholding with an adaptive threshold
    • H03K5/086Shaping pulses by limiting; by thresholding; by slicing, i.e. combined limiting and thresholding with an adaptive threshold generated by feedback
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0647Synchronisation among TDM nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0078Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
    • H04L1/0083Formatting with frames or packets; Protocol or part of protocol for error control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/1607Details of the supervisory signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0008Synchronisation information channels, e.g. clock distribution lines
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0095Arrangements for synchronising receiver with transmitter with mechanical means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0016Inter-integrated circuit (I2C)
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/22Circuits having more than one input and one output for comparing pulses or pulse trains with each other according to input signal characteristics, e.g. slope, integral
    • H03K5/24Circuits having more than one input and one output for comparing pulses or pulse trains with each other according to input signal characteristics, e.g. slope, integral the characteristic being amplitude
    • H03K5/2472Circuits having more than one input and one output for comparing pulses or pulse trains with each other according to input signal characteristics, e.g. slope, integral the characteristic being amplitude using field effect transistors
    • H03K5/2481Circuits having more than one input and one output for comparing pulses or pulse trains with each other according to input signal characteristics, e.g. slope, integral the characteristic being amplitude using field effect transistors with at least one differential stage
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0652Synchronisation among time division multiple access [TDMA] nodes, e.g. time triggered protocol [TTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/02Speed or phase control by the received code signals, the signals containing no special synchronisation information
    • H04L7/033Speed or phase control by the received code signals, the signals containing no special synchronisation information using the transitions of the received signal to control the phase of the synchronising-signal-generating means, e.g. using a phase-locked loop

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Nonlinear Science (AREA)
  • Computer Hardware Design (AREA)
  • Multimedia (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Dc Digital Transmission (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

【課題】受信器におけるヒステリシスを動的に調整する方法を提供する。【解決手段】方法が記載され、一実施形態では、回路において回路が第1のヒステリシスモードにある間に受信されたデータパケットを含むデータ信号の遷移を検出することと、検出後に回路を第2のヒステリシスモードに置くことと、データパケットの受信の完了後に次のデータパケットの受信を待機するように受信器を第1のヒステリシスモードに戻すこととを含む。特定の実施形態では、第1のヒステリシスモードは高ヒステリシスモードであり、第2のヒステリシスモードは標準ヒステリシスモードである。いくつかの実施形態では、第1のヒステリシスモードおよび第2のヒステリシスモードの各々のレベルは動的に調整可能である。【選択図】図1

Description

本発明は、動的ヒステリシス回路に関する。
受信器におけるヒステリシスは、データ通信ライン上の雑音を回避するための閾値として作用し、したがって偽トリガ検出のリスクを最小化する。本明細書で使用するとき、ヒステリシスとは、入力信号の遷移と出力信号の対応する遷移との間の遅延または遅滞である。
本発明は、回路において、前記回路が第1のヒステリシスモードにある間に受信されたデータパケットを含むデータ信号の遷移を検出することと、
検出の後に回路を第2のヒステリシスモードに置くことと、
データパケットの受信の完了後に、次のデータパケットの受信を待機するように受信器を第1のヒステリシスモードに戻すことと、を含む方法である。
動的ヒステリシス(「DH」)能力を有する比較器の実施形態が有利に実装され得る例示的な通信システムのブロック図である。 様々な実施形態による、図1のシステムのノードに含まれ得るノード送受信器のブロック図である。 様々な実施形態による、図1のシステムで通信のために使用される同期制御フレームの一部の図である。 様々な実施形態による、図1のシステムで通信のために使用されるスーパーフレームの図である。 様々な実施形態による、図1のシステムの異なる動作モードにおける同期制御フレームの例示的なフォーマットを示す。 様々な実施形態による、図1のシステムの異なる動作モードにおける同期応答フレームの例示的なフォーマットを集合的に示す。 様々な実施形態による、図1のシステムの異なる動作モードにおける同期応答フレームの例示的なフォーマットを集合的に示す。 様々な実施形態による、図2のバスプロトコル回路の様々な構成要素のブロック図である。 本明細書に記載のバスプロトコルの様々な実施形態による、2線式バスに沿った情報交換の例を示す。 本明細書に記載のバスプロトコルの様々な実施形態による、2線式バスに沿った情報交換の例を示す。 本明細書に記載のバスプロトコルの様々な実施形態による、2線式バスに沿った情報交換の例を示す。 本明細書に記載のバスプロトコルの様々な実施形態による、2線式バスに沿った情報交換の例を示す。 様々な実施形態による、2線式バスのリングトポロジーおよび2線式バス上の一方向通信スキームを示す。 様々な実施形態による、図1のシステムにおいてノードまたはホストとして機能し得るデバイスを概略的に示す。 様々な実施形態による、DH技術を実装するための概略ブロック図回路をそれぞれ示す。 様々な実施形態による、DH技術を実装するための概略ブロック図回路をそれぞれ示す。 様々な実施形態による、高ヒステリシスモードと標準の低ヒステリシスモードとの間の複数の遷移を示す、図14Aの回路の様々な信号のタイミング図を示す。 様々な実施形態による、高ヒステリシスモードと標準の低ヒステリシスモードとの間の複数の遷移を示す、図14Bの回路の様々な信号のタイミング図を示す。 様々な実施形態による、高ヒステリシスモードの動作例を示す図である。 様々な実施形態によるDH技術が実装され得る受信器回路の高レベルブロック図を集合的に示す。 様々な実施形態によるDH技術が実装され得る受信器回路の高レベルブロック図を集合的に示す。 様々な実施形態による、図17A〜17Bの受信器回路の比較器のより詳細な概略ブロック図である。 様々な実施形態による、図17A〜17Bの受信器回路の比較器のより詳細な概略ブロック図である。 様々な実施形態による、図18Aおよび18Bの比較器のコアのより一般的な概略ブロック図をそれぞれ示す。 様々な実施形態による、図18Aおよび18Bの比較器のコアのより一般的な概略ブロック図をそれぞれ示す。 様々な実施形態による、DH技術を回路で実装する方法の流れ図である。
実施形態は、添付図面と併せて、以下の詳細な説明により容易に理解されるであろう。この説明を容易にするために、類似の参照番号は類似の構造要素を指す。実施形態は、添付図面の図において、限定としてではなく例として図示されている。
本明細書に開示するものは、比較器ステージにおける2つ以上の異なるヒステリシス設定に依存する受信器設計である。上述のように、受信器におけるヒステリシスは、ライン上の雑音を回避するための閾値として作用し、したがって偽トリガ検出のリスクを最小化する。本明細書に記載の実施形態は、望ましからざる雑音がデータライン上に存在するときヒステリシスを増大させる方法を含む。これは、例えば受信器がパケットの第1の遷移を検出するためにアイドル待機しているとき、とりわけクロック信号がデータパケット内に符号化され、別個のクロックまたは同期信号が送信されないシステムにおいて、望ましいことがある。
本明細書に記載の実施形態の特徴によれば、第1の縁部または第1のいくつかの縁部は、標準(低)ヒステリシスよりも高い受信器(「RX」)ヒステリシスを使用するより予測可能かつ/またはより厳格な検出スキームを使用して検出され得、それによって内部クロックデータ回復が雑音にロックしないことを確実にする。加えて、高ヒステリシスから低ヒステリシスに遷移することは、準安定性に対する感受性の低下をもたらす。
特定の実施形態では、RXがアイドルでありラインを聴取しているとき、RXは当初高ヒステリシスモードに設定されるので、ケーブルの他方側から送信する送信器(「TX」)は、最初のビットまたは最初の数ビットをより高い振幅で送付するように最適化されてもよい。加えて、ヒステリシスは、0から1もしくは1から0の遷移のうちの一方が高ヒステリシスである非対称的であってもよく、または0から1および1から0の遷移の各々が同じヒステリシスである対称的であってもよい。
以下により詳細に説明するように、本明細書に記載の実施形態による動的ヒステリシス(「DH」)技術は、タイミング依存であるヒステリシス設定の制御を決定することと、ヒステリシスが高いときおよびヒステリシスが低いときを設定することとを含む。DH技術はさらに、複数のヒステリシスモードを有効化するために標準比較器回路に鍵となる要素を追加することを含む。
以下の詳細な説明では、本明細書の一部を構成する添付図面を参照する。添付図面において、類似の数字は全体を通じて類似の部分を指し、実施され得る実施形態が例示として示されている。他の実施形態が利用され得ること、および本開示の範囲から逸脱することなく構造的または論理的変更を行い得ることが理解されるべきである。したがって、以下の詳細な説明は、限定的な意味で解釈されるべきではない。
様々な動作は、請求対象の主題を理解するのに最も役立つ様式で、複数の別々の活動または動作として記載されてもよい。しかしながら、説明の順序は、これらの動作が必ず順序依存であることを含意すると解釈されるべきではない。特に、これらの動作は、呈示の順序で遂行されなくてもよい。記載される動作は、記載の実施形態とは異なる順序で遂行されてもよい。様々な追加の動作が遂行されてもよく、かつ/または記載される動作は追加の実施形態では省略されてもよい。
本開示において、「Aおよび/またはB」という文言は、(A)、(B)、または(AおよびB)を意味する。本開示において、「A、B、および/またはC」という文言は、(A)、(B)、(C)、(AおよびB)、(AおよびC)、(BおよびC)、または(A、B、およびC)を意味する。
本明細書では様々な構成要素は単数形で言及または図示されることがあるが(例えば、「プロセッサ」、「周辺デバイス」など)、これは単に議論を容易にするためであり、単数形で言及されるいかなる要素も、本明細書の教示に従って複数のそのような要素を含み得る。
本明細書は「ある実施形態では」または「実施形態では」という文言を使用しているが、これらは各々、同じまたは異なる実施形態の1つ以上を指し得る。さらに、本開示の実施形態に関して使用される「含む(comprising)」、「含む(including)」、「有する(having)」などの用語は、同義である。本明細書で使用するとき、「回路」という用語は、特定用途向け集積回路(ASIC)、電子回路および光回路、1つ以上のソフトウェアもしくはファームウェアプログラムを実行するプロセッサ(共有、専用、もしくは群)および/もしくはメモリ(共有、専用、もしくは群)、組み合わせ論理回路、ならびに/または記載の機能を提供する他の好適なハードウェアを指し得、その一部であり得、またはそれらを含み得る。マスタノードは、本明細書においてマスタ「デバイス」とも呼ばれることがある。同様に、スレーブノードは、本明細書においてスレーブ「デバイス」とも呼ばれることがある。
図1は、動的ヒステリシス(「DH」)能力を有する比較器の実施形態が有利に実装され得る様々な実施形態による、例示的な半二重2線式通信システム100のブロック図である。システム100は、ホスト110、マスタノード102、および少なくとも1つのスレーブノード104を含む。図1には、3つのスレーブノード(0、1、および2)が示されている。図1における3つのスレーブノード104の描写は単に例示的なものであり、システム100は所望に応じて1つ、または2つ以上のスレーブノード104を含み得る。
マスタノード102は、2線式バス106を介してスレーブノード104と通信し得る。バス106は、バス106沿いのノードをデイジーチェーン方式で接続するように、バス106沿いの隣接ノード間に異なる2線式バスリンクを含み得る。例えば、図1に示すように、バス106は、マスタノード102をスレーブノード0に連結するリンク、スレーブノード0をスレーブノード1に連結するリンク、およびスレーブノード1をスレーブノード2に連結するリンクを含み得る。いくつかの実施形態では、バス106のリンクは各々、単一のツイストペア線(例えば、非シールドのツイストペア)から形成されてもよい。いくつかの実施形態では、バス106のリンクは各々、同軸ケーブルから形成されてもよい(例えば、コアが「正」ラインを提供し、シールドが「負」ラインを提供する、またはその逆)。
ホスト110は、マスタノード102をプログラムし、バス106に沿って送信される様々なペイロードの発信者および受信者として機能するプロセッサを含み得る。いくつかの実施形態では、ホスト110は、例えばマイクロコントローラであってもよく、またはマイクロコントローラを含んでもよい。特に、ホスト110は、バス106に沿って発生するInter−Integrated Circuit Sound(I2S)通信のマスタであってもよい。ホスト110は、I2S/時分割多重(TDM)バスおよび/またはInter−Integrated Circuit(I2C)バスを介してマスタノード102と通信し得る。いくつかの実施形態では、マスタノード102は、ホスト110のハウジング内に位置する送受信器(例えば、図2に関連して以下で論じるノード送受信器120)であってもよい。マスタノード102は、構成および読み出しのためにホスト110によってI2Cバスを介してプログラム可能であってもよく、スレーブノード104の全部のクロック、同期、フレームを生成するように構成され得る。いくつかの実施形態では、マスタノード102内のホスト110間のI2C制御バスの延長部分は、バス106を介して送信されるデータストリームに埋め込まれてもよく、ホスト110が1つ以上のスレーブノード104のレジスタおよびステータス情報に直接アクセスすることを可能にし、ホスト110が周辺機器108を制御することを可能にするように距離を介したI2C対I2C通信を可能にする。
マスタノード102は、「下り」信号(例えば、バス106に沿ってマスタノード102から離れる方向に送信されるデータ信号、電力信号など)を生成し、「上り」信号(例えば、バス106に沿ってマスタノード102に向かって送信される)を受信し得る。マスタノード102は、バス106を介した同期データ送信のためのクロック信号を提供してもよい。本明細書で使用するとき、「同期データ」は、バス106に沿った同じノードへの/同じノードからの2つの相次ぐ送信間の時間間隔が固定されている、連続的に流れるデータを含み得る。いくつかの実施形態では、マスタノード102によって提供されるクロック信号は、ホスト110によってマスタノード102に提供されるI2S入力から導出されてもよい。スレーブノード104は、バス106上で下流に、またはバス106上で上流に送信されるデータフレームの潜在的な宛先を表すアドレス指定可能なネットワーク接続点であってもよい。スレーブノード104はまた、下りデータフレームまたは上りデータフレームの潜在的な出所を表してもよい。システム100は、制御情報および他のデータが、あるノードから次のノードへとバス106上で両方向に送信されることを可能にし得る。スレーブノード104の1つ以上はまた、バス106を介して送信される信号によって動力提供されてもよい。
特に、マスタノード102およびスレーブノード104の各々は、上り正端子(「AP」と表示する)、上り負端子(「AN」と表示する)、下り正端子(「BP」と表示する)、および下り負端子(「BN」と表示する)を含み得る。ノードの下り正端子および下り負端子は、それぞれ、隣接する下流ノードの上り正端子および上り負端子に連結され得る。図1に示すように、マスタノード102は上り正端子および上り負端子を含んでもよいが、これらの端子は使用されなくてもよい。他の実施形態では、マスタノード102は、上り正端子および上り負端子を含まなくてもよい。バス106沿いの最後のスレーブノード104(図1のスレーブノード2)は下り正端子および下り負端子を含んでもよいが、これらの端子は使用されなくてもよい。他の実施形態では、バス沿いの最後のスレーブノード104は、下り正端子および下り負端子を含まなくてもよい。
詳細に後述するように、マスタノード102は、任意追加的にスレーブノード104の1つ以上宛のデータと併せて、同期制御フレームを下流に周期的に送付してもよい。例えば、マスタノード102は、同期制御フレームを1024ビット(スーパーフレームを表す)毎に48kHzの周波数で送信してもよく、49.152Mbpsというバス106上の有効ビットレートが得られる。例えば44.1kHzを含む他のレートがサポートされてもよい。同期制御フレームは、スレーブノード104が各スーパーフレームの始まりを識別することを可能にし得、また物理層の符号化/信号伝達と組み合わせて、各スレーブノード104がその内部動作クロックをバス106から導出することを可能にし得る。同期制御フレームは、同期の開始を信号伝達するためのプリアンブル、ならびに様々なアドレス指定モード(例えば、通常、ブロードキャスト、発見)、構成情報(例えば、スレーブノード104のレジスタへの書き込み)、I2C情報の送配、スレーブノード104の特定の汎用入出力(GPIO)ピンの遠隔制御、および他のサービスを可能にする制御フィールドを含み得る。プリアンブルおよびペイロードデータの後に続く同期制御フレームの部分は、同期制御フレーム内の情報が新しいプリアンブルと誤認される可能性を低減するために、かつ関連する電磁放射のスペクトルを平坦化するために、スクランブルされてもよい。
同期制御フレームは、スレーブノード104間で受け渡されてもよく(任意追加的に、マスタノード102から来てもよいが追加的または代替的に1つ以上の上流スレーブノード104からもしくはスレーブノード104自体から来てもよい他のデータと共に)、遂には同期制御フレームは、マスタノード102によって最後のスレーブノード104として構成されたか、または最後のスレーブノード104としてそれ自身を自己識別した最後のスレーブノード104(すなわち、図1のスレーブノード2)に到達する。同期制御フレームを受信すると、最後のスレーブノード104は、同期応答フレームを送信してもよく、最後のスレーブノード104が送信することを許可されている任意のデータ(例えば、指定タイムスロット内の24ビットのオーディオサンプル)が後に続く。同期応答フレームは、スレーブノード104間で上流に受け渡されてもよく(任意追加的に下流スレーブノード104からのデータと共に)、各スレーブノード104は、同期応答フレームに基づいて、スレーブノード104が送信することを許可されているタイムスロット(もしあれば)を識別することができてもよい。
いくつかの実施形態では、システム100内のスレーブノード104の1つ以上は、周辺デバイス108に連結され、それと通信してもよい。例えば、スレーブノード104は、後述するように、I2S、パルス密度変調(PDM)、TDM、および/またはI2Cプロトコルを使用して、関連付けられた周辺デバイス108からデータを読み出し、かつ/またはデータを書き込むように構成されてもよい。「周辺デバイス108」は本明細書では単数形で言及されることがあるが、これは単に議論を容易にするためであり、単一のスレーブノード104はゼロ個、または1個以上の周辺デバイスに連結され得る。周辺デバイス108に含まれ得る周辺デバイスの例としては、デジタル信号プロセッサ(DSP)、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、アナログ−デジタル変換器(ADC)、デジタル−アナログ変換器(DAC)、コーデック、マイクロフォン、マイクロフォンアレイ、スピーカー、オーディオ増幅器、プロトコルアナライザ、加速度計もしくは他の運動センサ、環境条件センサ(例えば、温度、湿度、および/もしくはガスセンサ)、有線もしくは無線通信送受信器、ディスプレイデバイス(例えば、タッチスクリーンディスプレイ)、ユーザーインターフェース構成要素(例えば、ボタン、ダイヤル、もしくは他の調整つまみ)、カメラ(例えば、ビデオカメラ)、メモリデバイス、またはデータを送信および/または受信する任意の他の好適なデバイスが挙げられる。本明細書では、異なる周辺デバイス構成のいくつかの例を詳細に論じる。
いくつかの実施形態では、周辺デバイス108は、Inter−Integrated Circuit Sound(I2S)通信用に構成された任意のデバイスを含み得る。周辺デバイス108は、I2Sプロトコルを介して関連付けられたスレーブノード104と通信し得る。いくつかの実施形態では、周辺デバイス108は、Inter−Integrated Circuit(I2C)通信用に構成された任意のデバイスを含み得る。周辺デバイス108は、I2Cプロトコルを介して関連付けられたスレーブノード104と通信し得る。いくつかの実施形態では、スレーブノード104は、いかなる周辺デバイス108にも連結されなくてもよい。
スレーブノード104およびそれに関連付けられた周辺デバイス108は、別個のハウジング内に収容され、有線もしくは無線通信接続を通じて連結されてもよく、または共通のハウジング内に収容されていてもよい。例えば、周辺デバイス108として接続されたスピーカーは、関連付けられたスレーブノード104(例えば、図2に関連して後述するノード送受信器120)のためのハードウェアと共に包装されていてもよく、これによって、関連付けられたスレーブノード104のためのハードウェアが他のスピーカー構成要素を含むハウジング内に収容される。同じことは、任意の種類の周辺デバイス108についても当てはまる。
上述のように、ホスト110は、多チャネルI2SおよびI2C通信プロトコルを使用してマスタノード102と通信し、それを制御してもよい。特に、ホスト110は、データをI2Sを介してマスタノード102内のフレームバッファ(図示せず)に送信してもよく、マスタノード102は、データをフレームバッファから読み出し、データをバス106に沿って送信してもよい。同様に、マスタノード102は、バス106を介して受信したデータをフレームバッファ内に記憶してもよく、次いでデータをI2Sを介してホスト110に送信してもよい。
各スレーブノード104は、マスタノード102からの通信によって構成され得る内部制御レジスタを有してもよい。いくつかのそのようなレジスタを以下で詳細に論じる。各スレーブノード104は、下りデータを受信してもよく、そのデータをさらに下流に再送信してもよい。各スレーブノード104は、上りデータを受信および/もしくは生成し、かつ/またはデータを上流に再送信し、かつ/またはデータを上りトランザクションに追加してもよい。
バス106沿いの通信は、周期的なスーパーフレームで発生してもよい。各スーパーフレームは、下り同期制御フレームで始まり、下り送信期間(「下り部分」とも呼ばれる)、上り送信期間(「上り部分」とも呼ばれる)、および無送信期間(バス106は駆動されない)に分割され、別の下り同期制御フレームの送信の直前に終了してもよい。マスタノード102は、スレーブノード104の1つ以上に送信するいくつかの下り部分とスレーブノード104の1つ以上から受信するいくつかの上り部分とを有するように(ホスト110によって)プログラムされてもよい。各スレーブノード104は、バス106に沿って再送信するいくつかの下り部分と、消費するいくつかの下り部分と、バス106まで再送信するいくつかの上り部分と、スレーブノード104が関連付けられた周辺デバイス108からスレーブノード104から受信したデータを送信し得るいくつかの上り部分とを有するように(マスタノード102によって)プログラムされてもよい。バス106沿いの通信は、図2〜12に関連してさらに詳細に後述する。
マスタノード102およびスレーブノード104の各々は、システム100の構成要素間の通信を管理するための送受信器を含んでもよい。図2は、様々な実施形態による、図1のシステム100のノード(例えば、マスタノード102またはスレーブノード104)に含まれ得るノード送受信器120のブロック図である。いくつかの実施形態では、ノード送受信器120がシステム100のノードの各々に含まれてもよく、ノード送受信器120がマスタとして機能すべきか(例えば、MSTRピンがHIGHのとき)またはスレーブとして機能すべきか(例えば、MSTRピンがローのとき)示すように、制御信号がマスタ(MSTR)ピンを介してノード送受信器120に提供されてもよい。
ノード送受信器120は、上り差動信号伝達(DS)送受信器122および下りDS送受信器124を含み得る。上りDS送受信器122は、図1に関連して上述した上り正端子および上り負端子に連結されていてもよく、下りDS送受信器124は、図1に関連して上述した下り正端子および下り負端子に連結されていてもよい。いくつかの実施形態では、上りDS送受信器122は低電圧DS(LVDS)送受信器であってもよく、下りDS送受信器124はLVDS送受信器であってもよい。システム100内の各ノードは、バス106に交流連結されていてもよく、データ信号は、バス106に沿って(例えば、上りDS送受信器122および/または下りDS送受信器124を介して)、所定の形態のDS(例えば、LVDSもしくはマルチポイントLVDS(MLVDS)または同様の信号伝達)を使用して、バス106を介してタイミング情報を提供するために適切な符号化(例えば、差動マンチェスター符号化、バイフェーズマーク符号化、マンチェスター符号化、非ゼロ復帰、ランレングス限定を含む反転(NRZI)符号化、または任意の他の好適な符号化)と共に、送配されてもよい。
上りDS送受信器122および下りDS送受信器124は、バスプロトコル回路126と通信してもよく、バスプロトコル回路126は、他の構成要素のなかでも、位相ロックループ(PLL)128および電圧調整回路130と通信してもよい。ノード送受信器120が電源投入されると、電圧調整回路130は、PLL128によってパワーオンリセットとして使用される「電力良好」信号を発してもよい。
上述のように、システム100内のスレーブノード104の1つ以上は、データと同時に、バス106を介して送信される電力を受信してもよい。この動作モードは、本明細書において「ファントム電源」と呼ばれることがある。配電のために(スレーブノード104のうちのいくつかは、専らローカル電力がそれらに提供されるように構成され得るので、これは任意追加的にある)、マスタノード102は、マスタノード102とスレーブノード0との間のバスリンクに直流バイアスをかけてもよい(例えば、下り端子の一方を電圧調整器によって提供される電圧源に接続し、他方の下り端子をグランドに接続することによって)。直流バイアスは、5V、8V、自動車バッテリーの電圧、またはより高い電圧などの所定の電圧であってもよい。相次ぐ各スレーブノード104は、その上りバスリンクを選択的に用いて電力を回収することができる(例えば、電圧調整回路130を使用して)。この電力を使用して、スレーブノード104自体(および任意追加的に、スレーブノード104に連結された1つ以上の周辺デバイス108)に電力供給してもよい。スレーブノード104はまた、上りバスリンクから回収された電力またはローカル電源のいずれかによって、次のスレーブノード104のために下りバスリンクに選択的にバイアスをかけてもよい。例えば、スレーブノード0は、上りバスリンク106への直流バイアスを使用して、スレーブノード0自体のためのおよび/もしくは1つ以上の関連付けられた周辺デバイス108のための電力を回収してもよく、かつ/またはスレーブノード0は、その上りバスリンク106から電力を回収して、その下りバスリンク106にバイアスをかけてもよい。
したがって、いくつかの実施形態では、システム100内の各ノードは、下りバスリンクを介して後続の下流ノードに電力を提供してもよい。ノードの電力供給は、順序づけされた様式で遂行されてもよい。例えば、バス106を介してスレーブノード0を発見および構成した後、マスタノード102は、スレーブノード1に電力を提供するために、スレーブノード0にその下りバスリンク106に電力を提供するように命令してもよい。スレーブノード1が発見および構成された後、マスタノード102は、スレーブノード2に電力を提供するために、スレーブノード1にその下りバスリンク106に電力を提供するように命令してもよい(バス106に連結された追加のスレーブノード104についても同様である。いくつかの実施形態では、スレーブノード104の1つ以上は、その上りバスリンクから電力供給される代わりに、またはそれに加えて、ローカルで電力供給されてもよい。いくつかのそのような実施形態では、所与のスレーブノード104のためのローカル電源を使用して、1つ以上の下流スレーブノードに電力を提供してもよい。
いくつかの実施形態では、上りフィルタリング回路132が、上りDS送受信器122と電圧調整回路130との間に配設されていてもよく、下りフィルタリング回路131が、下りDS送受信器124と電圧調整回路130との間に配設されていてもよい。バス106の各リンクは交流(信号)成分および直流(電力)成分を運ぶので、上りフィルタリング回路132および下りフィルタリング回路131は、交流成分および直流成分を分離し、交流成分を上りDS送受信器122および下りDS送受信器124に提供し、直流成分を電圧調整器130に提供してもよい。上りDS送受信器122および下りDS送受信器124のライン側の交流結合は、送受信器122および124をライン上の直流成分から実質的に隔離して高速双方向通信を可能にする。上述のように、直流成分から電力を取ってもよく、上りフィルタリング回路132および下りフィルタリング回路131は、例えば電圧調整回路130に提供される交流成分を低減するために、フェライト、コモンモードチョーク、またはインダクタを含んでもよい。いくつかの実施形態では、上りフィルタリング回路132は上りDS送受信器122に含まれてもよく、かつ/または下りフィルタリング回路131は下りDS送受信器124に含まれてもよい。他の実施形態では、フィルタリング回路は、送受信器122および124の外部にあってもよい。
ノード送受信器120は、ノード送受信器120と外部デバイス155との間のI2S、TDM、およびPDM通信のための送受信器127を含んでもよい。「外部デバイス155」は本明細書では単数形で言及されることがあるが、これは単に議論を容易にするためであり、複数の外部デバイスがI2S/TDM/PDM送受信器127を介してノード送受信器120と通信してもよい。当技術分野で知られているように、I2Sプロトコルはパルス符号変調(PCM)情報を運ぶためのものである(例えば、プリント回路基板(PCB)上のオーディオチップ間で)。本明細書で使用するとき、「I2S/TDM」は、TDMを使用してI2Sステレオ(2チャネル)コンテンツを複数のチャネルに広げることを指し得る。当技術分野で知られているように、PDMはシグマデルタ変換器で使用されてもよく、特に、PDMフォーマットは間引き前のオーバーサンプリングされた1ビットシグマデルタADC信号を表し得る。PDMフォーマットは、デジタルマイクロフォンの出力フォーマットとして使用されることが多い。I2S/TDM/PDM送受信器127は、バスプロトコル回路126および外部デバイス155との通信のためのピンと連通していてもよい。図2には6つのピン、BCLK、SYNC、DTX[1:0]、およびDRX[1:0]が示されている。BCLKピンはI2Sビットクロックのために使用されてもよく、SYNCピンはI2Sフレーム同期信号のために使用されてもよく、DTX[1:0]ピンおよびDRX[1:0]ピンはそれぞれ送信データチャネルおよび受信データチャネルのために使用されてもよい。図2には2つの送信ピン(DTX[1:0])および2つの受信ピン(DRX[1:0])が示されているが、任意の所要の数の受信ピンおよび/または送信ピンが使用されてもよい。
ノード送受信器120がマスタノード102に含まれている場合、外部デバイス155はホスト110を含んでもよく、I2S/TDM/PDM送受信器127は、ホスト110のI2Sインターフェースクロックと同期的にホスト110からデータを受信し、ホスト110にデータを送付することができるI2Sスレーブ(BCLKおよびSYNCに対する)を提供してもよい。特に、I2Sフレーム同期信号がホスト110からの入力としてSYNCピンで受信されてもよく、PLL128はその信号を使用してクロックを生成してもよい。ノード送受信器120がスレーブノード104に含まれている場合、外部デバイス155は1つ以上の周辺デバイス108を含んでもよく、I2S/TDM/PDM送受信器127は、周辺デバイス108とのI2S通信を制御することができるI2Sクロックマスタ(BCLKおよびSYNCにとっての)を提供してもよい。特に、I2S/TDM/PDM送受信器127はSYNCピンでI2Sフレーム同期信号を出力として提供してもよい。ノード送受信器120内のレジスタは、どのI2S/TDMチャネルが、およびどのくらい多くのI2S/TDMチャネルがバス106を介してデータスロットとして送信されているかを判定し得る。ノード送受信器120内のTDMモード(TDMMODE)レジスタは、どのくらい多くのTDMチャネルがTDM送信または受信ピン上の連続するSYNCパルス間に収まるかの値を記憶してもよい。チャネルサイズの知識と共に、ノード送受信器120は、サンプリング時間(例えば、48kHz)内のビット数に一致するようにBCLKレートを自動的に設定してもよい。
ノード送受信器120は、ノード送受信器120と外部デバイス157との間のI2C通信のための送受信器129を含んでもよい。「外部デバイス157」は本明細書では単数形で言及されることがあるが、これは単に議論を容易にするためであり、複数の外部デバイスがI2C送受信器129を介してノード送受信器120と通信してもよい。当技術分野で知られているように、I2Cプロトコルは、クロック(SCL)ラインおよびデータ(SDA)ラインを使用してデータ転送を提供する。I2C送受信器129は、バスプロトコル回路126および外部デバイス157と通信するためのピンと連通していてもよい。図2には4つのピン、ADR1、ADR2、SDA、およびSCLが示されている。ADR1およびADR2は、ノード送受信器120がI2Cスレーブとして機能する場合(例えば、ノード送受信器120がマスタノード102に含まれる場合)ノード送受信器120によって使用されるI2Cアドレスを修正するために使用されてもよく、SDAおよびSCLは、それぞれI2Cシリアルデータおよびシリアルクロック信号に使用される。ノード送受信器120がマスタノード102に含まれる場合、外部デバイス157はホスト110を含んでもよく、I2C送受信器129は、ホスト110からプログラミング命令を受信することができるI2Cスレーブを提供してもよい。特に、I2Cシリアルクロック信号は、SCLピンでレジスタアクセスのためのホスト110からの入力として受信され得る。ノード送受信器120がスレーブノード104に含まれる場合、外部デバイス157は周辺デバイス108を含んでもよく、I2C送受信器129は、ホスト110によって提供されバス106を介してノード送受信器120に送信される命令に従ってI2C送受信器が1つ以上の周辺デバイスをプログラムすることを可能にするI2Cマスタを提供してもよい。特に、I2C送受信器129は、SCLピンでI2Cシリアルクロック信号を出力として提供してもよい。
ノード送受信器120は、バスプロトコル回路126と連通する割込み要求(IRQ)ピンを含んでもよい。ノード送受信器120がI2C送受信器129を介してマスタノード102に含まれる場合、バスプロトコル回路126は、イベント駆動型割込み要求をIRQピンを介してホスト110に向かって提供してもよい。ノード送受信器120がスレーブノード104に含まれる場合(例えば、MSTRピンがローの場合)、IRQピンは、割込み要求能力を有するGPIOピンとして機能してもよい。ノード送受信器120は、図2に示すピンに加えて他のピンを含んでもよい(例えば、図14〜28に関連して後述するSENSEピンおよびVSSNピン)。
システム100は、いくつかの異なる動作モードのうちのいずれで動作してもよい。バス106上のノードは各々、どの動作モードが現在有効化されているかを示すレジスタを有してもよい。実装され得る様々な動作モードの例を以下で説明する。スタンバイ動作モードでは、バスの活動はグローバル節電を有効化することに限縮される。必要とされる唯一のトラフィックは、各ノードのPLL(例えば、PLL128)を同期状態に保つための最小限の下りプリアンブルである。スタンバイ動作モードでは、バス106を介した読み出しおよび書き込みはサポートされない。発見動作モードでは、マスタノード102は、バス106に沿って分散したスレーブノード104のトポロジーをマッピングするために、所定の信号をバス106に沿って外方に送付し、好適な応答を待機してもよい。通常動作モードでは、スレーブノード104へのおよびスレーブノード104からのフルレジスタアクセス、ならびにバス106を介した周辺デバイス108へのおよび周辺デバイス108からのアクセスが利用可能であってもよい。通常モードは、同期上りデータによってまたは同期上りデータなしで、かつ同期下りデータによってまたは同期下りデータなしで、ホスト110によってグローバルに構成されてもよい。
図3は、様々な実施形態による、システム100で通信のために使用される同期制御フレーム180の一部の図である。特に、同期制御フレーム180は、後述するように、データクロック回復およびPLL同期のために使用されてもよい。上述のように、バス106を介した通信は両方向で発生し得るため、通信は、下り部分と上り部分とに時間多重化されてもよい。下り部分では、同期制御フレームおよび下りデータがマスタノード102から送信されてもよい一方、上り部分では、同期応答フレームおよび上りデータがスレーブノード104の各々からマスタノード102に送信されてもよい。同期制御フレーム180は、プリアンブル182および制御データ184を含んでもよい。各スレーブノード104は、受信した同期制御フレーム180のプリアンブル182を、PLL128にフィードするための時間ベースとして使用するように構成されていてもよい。これを容易にするために、プリアンブル182は、有効制御データ184の「規則」に従わず、したがって制御データ184から容易に区別することができる。
例えば、いくつかの実施形態では、バス106沿いの通信は、クロックファーストの、ゼロで遷移する差動マンチェスター符号化スキームを使用して符号化されてもよい。このような符号化スキームによれば、各ビットタイムはクロック遷移で始まる。データ値がゼロである場合、符号化された信号は、ビットタイムの中間で再び遷移する。データ値が1である場合、符号化された信号は、再び遷移することはない。図5に示すプリアンブル182は符号化プロトコルに違反してもよいが(例えば、ビットタイム5、7、および8の始まりで発生しないクロック遷移を有することによって)、これは、プリアンブル182が、制御データ184のためのいかなる適法な(例えば、正しく符号化されたた)パターンにも一致しないことがあることを意味する。加えて、プリアンブル182は、制御データ184のための適法なパターンを取り、単一のビットタイムまたは複数のビットタイム期間にわたってバス106にHIGHまたはLOWを強いることによって再現することはできない。図5に示すプリアンブル182は、単に例示的なものであり、同期制御フレーム180は、制御データ184によって使用される符号化に任意の好適な様式で違反し得る異なるプリアンブル182を含んでもよい。
バスプロトコル回路126は、バス106から回復されたクロックに対して動作し、同期制御フレーム180を検出してフレーム同期インジケータをPLL128に送付する差動マンチェスター復号回路を含んでもよい。このようにして、同期制御フレーム180は、システムクロックまたはより高速なオーバーサンプリングクロックを使用することなく検出され得る。その結果、スレーブノード104は、スレーブノード104に水晶クロックソースを必要とすることなく、PLL同期信号をバス106から受信することができる。
上述のように、バス106沿いの通信は、周期的なスーパーフレームで発生してもよい。図4は、様々な実施形態によるスーパーフレーム190の図である。図6A〜6Bに示すように、スーパーフレームは、同期制御フレーム180で始まってもよい。同期制御フレーム180がPLL128のタイミングソースとして使用される場合、スーパーフレームが通信される周波数(「スーパーフレーム周波数」)は同期信号周波数と同じであってもよい。オーディオデータがバス106に沿って送信されるいくつかの実施形態では、スーパーフレーム周波数は、システム100で使用されるオーバーサンプリング周波数(例えば、48kHzまたは44.1kHzのいずれか)と同じであってもよいが、任意の好適なスーパーフレーム周波数が使用され得る。各スーパーフレーム190は、下り送信期間192、上り送信期間194、および無送信期間196(例えば、バス106が駆動されないとき)に分割されてもよい。
図4には、当初の下り送信期間192および後の上り送信期間194を有するスーパーフレーム190が示されている。下り送信期間192は同期制御フレーム180およびX個の下りデータスロット198を含んでもよく、Xはゼロであってもよい。バス106上の実質的に全ての信号はラインコーディングされてもよく、上述のように、同期信号は同期制御フレーム180内の同期プリアンブル182の形でマスタノード102から最後のスレーブノード104(例えば、スレーブノード104C)へと下流に転送されてもよい。下りTDM同期データを、同期制御フレーム180の後のX個の下りデータスロット198内に含めてもよい。下りデータスロット198は等幅を有してもよい。上述のように、PLL128は、バス106を介した通信のタイミングをとるためにノードが使用するクロックを提供してもよい。バス106を使用してオーディオデータを送信するいくつかの実施形態では、PLL128は、オーディオサンプリング周波数の倍数で動作してもよい(例えば、1024×オーディオサンプリング周波数。これにより、各スーパーフレームでは1024ビットのクロックとなる)。
上り送信期間194は同期応答フレーム197およびY個の上りデータスロット199を含んでもよく、Yはゼロであってもよい。いくつかの実施形態では、各スレーブノード104は、下りデータスロット198の一部を消費してもよい。最後のスレーブノード(例えば、図1のスレーブノード2)は、(最後のスレーブノードのレジスタに記憶された所定の応答時間後に)同期応答フレーム197で応答してもよい。上りTDM同期データが、各スレーブノード104によって、同期応答フレーム197の直後の上りデータスロット199に追加されてもよい。上りデータスロット199は等幅を有してもよい。最後のスレーブノードではないスレーブノード104(例えば、図1のスレーブノード0および1)は、そのレジスタのうちの1つの読み出しがスーパーフレーム190の同期制御フレーム180で要求された場合または遠隔I2C読み出しがスーパーフレーム190の同期制御フレーム180で要求された場合、受信した同期応答フレーム197をそれ自身の上り応答で置き換えてもよい。
上述のように、同期制御フレーム180は各下り送信を開始してもよい。いくつかの実施形態では、同期制御フレーム180は長さ64ビットであってもよいが、任意の他の好適な長さが使用されてもよい。同期制御フレーム180は、上述のように、プリアンブル182で始まってもよい。いくつかの実施形態では、同期制御フレーム180がスレーブノード104によって下流スレーブノード104に再送信される場合、プリアンブル182は、再送信されるのではなく、送信するスレーブノード104によって生成されてもよい。
同期制御フレーム180の制御データ184は、バス106を介したトランザクションを制御するために使用されるデータを格納するフィールドを含んでもよい。これらのフィールドの例を後述し、いくつかの実施形態を図5に示す。特に、図5は、様々な実施形態による、通常モード、I2Cモード、および発見モードにおける同期制御フレーム180の例示的なフォーマットを示す。いくつかの実施形態では、通常モードへの遷移が送付されるまでスレーブノード104が同期制御フレーム180の全てを受信する必要がないように、スタンバイモードでは完全に異なるプリアンブル182または同期制御フレーム180が使用されてもよい。
いくつかの実施形態では、同期制御フレーム180はカウント(CNT)フィールドを含んでもよい。CNTフィールドは、任意の好適な長さ(例えば、2ビット)を有してもよく、以前のスーパーフレームで使用された値からインクリメント(フィールドの長さのモジュロ)されてもよい。想定外のCNT値を受信したスレーブノード104は割込みを返すようにプログラムされてもよい。
いくつかの実施形態では、同期制御フレーム180はノードアドレス指定モード(NAM)フィールドを含んでもよい。NAMフィールドは、任意の好適な長さ(例えば、2ビット)を有してもよく、バス106を介したスレーブノード104のレジスタへのアクセスを制御するために使用されてもよい。通常モードでは、スレーブノード104のレジスタは、スレーブノード104のIDおよびレジスタのアドレスに基づいて読み出しおよび/または書き込みされてもよい。ブロードキャストトランザクションは、あらゆるスレーブノード104によって受け取られるべき書き込みである。いくつかの実施形態では、NAMフィールドは、「なし」(例えば、いかなる特定のスレーブノード104にもアドレス指定されていないデータ)、「通常」(例えば、後述するアドレスフィールドで指定された特定のスレーブノード104に対してユニキャストされたデータ)、「ブロードキャスト」(例えば、全てのスレーブノード104にアドレス指定された)、および「発見」を含む、4つのノードアドレス指定モードを提供してもよい。
いくつかの実施形態では、同期制御フレーム180はI2Cフィールドを含んでもよい。I2Cフィールドは、任意の好適な長さ(例えば、1ビット)を有してもよく、下り送信期間192がI2Cトランザクションを含むことを示すために使用されてもよい。I2Cフィールドは、関連付けられたスレーブノード104に対してI2Cスレーブとして機能する周辺デバイス108に遠隔アクセスする命令をホスト110が提供したことを示してもよい。
いくつかの実施形態では、同期制御フレーム180はノードフィールドを含んでもよい。ノードフィールドは、任意の好適な長さ(例えば、4ビット)を有してもよく、どのスレーブノードが通常アクセスおよびI2Cアクセスのためにアドレス指定されているのかを示すために使用されてもよい。発見モードでは、このフィールドは、新たに発見されたスレーブノード104の識別子をスレーブノード104のノードIDレジスタ内にプログラムするために使用されてもよい。後述するように、システム100内の各スレーブノード104には、そのスレーブノード104がマスタノード102によって発見されたとき、一意のIDが割り当てられてもよい。いくつかの実施形態では、マスタノード102はノードIDを有さない一方、他の実施形態では、マスタノード102はノードIDを有してもよい。いくつかの実施形態では、バス106上でマスタノード102に取り付けられたスレーブノード104(例えば、図1のスレーブノード0)はスレーブノード0となり、相次ぐ各スレーブノード104は前のスレーブノードより1高い数を有することになる。しかしながら、これは単に例示的なものであり、任意の好適なスレーブノード識別システムが使用され得る。
いくつかの実施形態では、同期制御フレーム180は読み出し/書き込み(RW)フィールドを含んでもよい。RWフィールドは、任意の好適な長さ(例えば、1ビット)を有してもよく、通常アクセスが読み出し(例えば、RW==1)であるか、または書き込み(例えば、RW==0)であるかを制御するために使用されてもよい。
いくつかの実施形態では、同期制御フレーム180はアドレスフィールドを含んでもよい。アドレスフィールドは、任意の好適な長さ(例えば、8ビット)を有してもよく、バス106を通じてスレーブノード104の特定のレジスタをアドレス指定するために使用されてもよい。I2Cトランザクションの場合、アドレスフィールドは、START/STOP、WAIT、RW、およびDATA VLDなどのI2C制御値で置き換えてもよい。発見トランザクションの場合、アドレスフィールドは所定の値を有してもよい(例えば、図5に示すように)。
いくつかの実施形態では、同期制御フレーム180はデータフィールドを含んでもよい。データフィールドは、任意の好適な長さ(例えば、8ビット)を有してもよく、通常書き込み、I2C書き込み、およびブロードキャスト書き込みのために使用されてもよい。4で乗算したRESPCYCS値は、新たに発見されたノードが、受信される同期制御フレーム180の冒頭と送信される同期応答フレーム197の冒頭との間でどれくらい多くのサイクルを経過させるべきかを判定するために使用されてもよい。NAMフィールドが発見モードを示す場合、ノードアドレスフィールドおよび後述するデータフィールドは、好適な任意選択の乗数(例えば、4)によって乗算されると同期制御フレーム180の終わりから同期応答フレーム197の始まりまでの時間をビットで示すRESPCYCS値として符号化してもよい。これは、新たに発見されたスレーブノード104が、上り送信のための適切なタイムスロットを決定することを可能にする。
いくつかの実施形態では、同期制御フレーム180は巡回冗長検査(CRC)フィールドを含んでもよい。CRCフィールドは、任意の好適な長さ(例えば、16ビット)を有してもよく、プリアンブル182の後に続く同期制御フレーム180の制御データ184のCRC値を送信するために使用されてもよい。いくつかの実施形態では、CRCは、CCITT−CRCエラー検出スキームに従って計算されてもよい。
いくつかの実施形態では、プリアンブル182とCRCフィールドとの間の同期制御フレーム180の少なくとも一部分は、この時間間隔中のビットシーケンスがプリアンブル182に周期的に一致する(かつこのようにしてスレーブノード104によって新しいスーパーフレーム190の始まりとして誤認され得る)可能性を低減するために、および上述のように電磁放射を低減するために、スクランブルされてもよい。いくつかのそのような実施形態では、同期制御フレーム180のCNTフィールドは、あるスーパーフレームと次のスーパーフレームとではスクランブルされるフィールドが異なってスクランブルされることを確実化するために、スクランブル処理ロジックによって使用されてもよい。本明細書に記載のシステム100の様々な実施形態はスクランブル処理を省略してもよい。
スレーブノード104がプリアンブル182を一意的に識別することができることを確実化するように、またはプリアンブル182が同期制御フレーム180内の他所で出現する可能性を低減するために、上述のスクランブル処理および/またはエラー符号化などの技術に加えて、またはそれらに代えて、他の技術が使用されてもよい。例えば、同期制御フレーム180の残部の特定の符号化がそれと一致する可能性を低減するように、より長い同期シーケンスが使用されてもよい。追加的または代替的に、同期制御フレームの残部は、適切なビットに「0」または「1」の固定値を配置することなどによって、同期シーケンスが発生することができないように構造化されてもよい。
マスタノード102は、バス106上の通信に特有の要求およびI2C要求の両方を含む読み出し要求および書き込み要求をスレーブノード104に送付してもよい。例えば、マスタノード102は、読み出し要求および書き込み要求(RWフィールドを使用して示される)を1つ以上の指定されたスレーブノード104に送付してもよく(NAMフィールドおよびノードフィールドを使用して)、その要求が、バス106に特有のスレーブノード104に対する要求であるか、スレーブノード104に対するI2C要求であるか、またはスレーブノード104の1つ以上のI2Cポートでスレーブノード104に連結されたI2C互換周辺デバイス108に受け渡されるべきI2C要求であるかを示すことができる。
上り通信に移ると、同期応答フレーム197が各上り送信を開始してもよい。いくつかの実施形態では、同期応答フレーム197は長さ64ビットでもよいが、任意の他の好適な長さが使用されてもよい。同期応答フレーム197は、同期制御フレーム180のプリアンブル182に関連して上述したように、プリアンブルも含んでもよく、データ部分が後に続く。下り送信の終わりに、バス106上の最後のスレーブノード104は、RESPCYCSカウンタが失効するまで待機し、次いで同期応答フレーム197を上流に送信し始めてもよい。上流スレーブノード104が通常の読み出しトランザクションまたは書き込みトランザクションのターゲットであった場合、スレーブノード104は、それ自身の同期応答フレーム197を生成し、下流から受信した同期応答フレーム197を置き換えてもよい。いずれかのスレーブノード104において予定時刻に下流スレーブノード104からの同期応答フレーム197が見つからない場合、スレーブノード104は、それ自身の同期応答フレーム197を生成し、それを上流に送信し始めることになる。
同期応答フレーム197のデータ部分は、応答情報をマスタノード102に通信し返すために使用されるデータを格納するフィールドを含んでもよい。これらのフィールドの例を後述し、いくつかの実施形態を図6A〜6Bに示す。特に、図6A〜6Bは、様々な実施形態による、通常モード、I2Cモード、および発見モードにおける同期応答フレーム197の例示的なフォーマットを示す。
いくつかの実施形態では、同期応答フレーム197はカウント(CNT)フィールドを含んでもよい。CNTフィールドは、任意の好適な長さ(例えば、2ビット)を有してもよく、以前に受信した同期制御フレーム180内のCNTフィールドの値を送信するために使用されてもよい。
いくつかの実施形態では、同期応答フレーム197は送達確認(ACK)フィールドを含んでもよい。ACKフィールドは、任意の好適な長さ(例えば、2ビット)を有してもよく、スレーブノード104が同期応答フレーム197を生成するとき、以前の同期制御フレーム180で受信されたコマンドの送達確認をするために、そのスレーブノード104によって挿入されてもよい。ACKフィールドで通信されうる例示的なインジケータとしては、待機、送達確認、送達確認失敗(NACK)、および再試行が挙げられる。いくつかの実施形態では、ACKフィールドは、スレーブノード104がブロードキャストメッセージを受信し処理したというスレーブノード104による送達確認を送信するようなサイズにされてもよい(例えば、ブロードキャスト送達確認をマスタノード102に送信することによって)。いくつかのそのような実施形態では、スレーブノード104はまた、スレーブノード104が送信すべきデータを有するかどうかを示してもよい(これは、例えばキーパッドもしくはタッチスクリーンからの非TDM入力などの需要ベースの上り送信のために、またはスレーブノード104がエラーもしくは緊急状態を報告することを希望するときなど優先される上り送信のために、使用することができる)。
いくつかの実施形態では、同期応答フレーム197はI2Cフィールドを含んでもよい。I2Cフィールドは、任意の好適な長さ(例えば、1ビット)を有してもよく、以前に受信した同期制御フレーム180内のI2Cフィールドの値を送信するために使用されてもよい。
いくつかの実施形態では、同期応答フレーム197はノードフィールドを含んでもよい。ノードフィールドは、任意の好適な長さ(例えば、4ビット)を有してもよく、同期応答フレーム197を生成するスレーブノード104のIDを送信するために使用されてもよい。
いくつかの実施形態では、同期応答フレーム197はデータフィールドを含んでもよい。データフィールドは、任意の好適な長さ(例えば、8ビット)を有してもよく、その値は、トランザクションの種類、および同期応答フレーム197を生成するスレーブノード104のACK応答に依存してもよい。発見トランザクションの場合、データフィールドは、以前に受信した同期制御フレーム180内のRESPCYCSフィールドの値を含んでもよい。ACKフィールドがNACKを示す場合、または同期応答フレーム197がブロードキャストトランザクションに応答している場合、データフィールドは、ブロードキャスト送達確認(BA)インジケータ(この中で、最後のスレーブノード104は、ブロードキャスト書き込みがエラーなしに受信されたか示してもよい)、発見エラー(DER)インジケータ(発見トランザクションにおいて新たに発見されたスレーブノード104が既存のスレーブノード104に一致するかどうか示す)、およびCRCエラー(CER)インジケータ(NACKがCRCエラーによって引き起こされたかどうか示す)を含んでもよい。
いくつかの実施形態では、同期応答フレーム197はCRCフィールドを含んでもよい。CRCフィールドは、任意の好適な長さ(例えば、16ビット)を有してもよく、プリアンブルとCRCフィールドとの間の同期応答フレーム197の部分のCRC値を送信するために使用されてもよい。
いくつかの実施形態では、同期応答フレーム197は割込み要求(IRQ)フィールドを含んでもよい。IRQフィールドは、任意の好適な長さ(例えば、1ビット)を有してもよく、割込みがスレーブノード104から信号伝達されたことを示すために使用されてもよい。
いくつかの実施形態では、同期応答フレーム197はIRQノード(IRQNODE)フィールドを含んでもよい。IRQノードフィールドは、任意の好適な長さ(例えば、4ビット)を有してもよく、IRQフィールドによって提示された割込みを信号伝達したスレーブノード104のIDを送信するために使用されてもよい。いくつかの実施形態では、スレーブノード104は、IRQフィールドを生成するために、それ自身のIDをIRQノードフィールドに挿入することになる。
いくつかの実施形態では、同期応答フレーム197は第2のCRC(CRC−4)フィールドを含んでもよい。CRC−4フィールドは、任意の好適な長さ(例えば、4ビット)を有してもよく、IRQフィールドおよびIRQノードフィールドのCRC値を送信するために使用されてもよい。
いくつかの実施形態では、同期応答フレーム197は、同期応答フレーム197の最後のビット(例えば、最後の10ビット)として、IRQフィールド、IRQノードフィールド、およびCRC−4フィールドを含んでもよい。上述のように、これらの割込み関連フィールドは、CRC−4の形でそれ自身のCRC保護を有してもよい(したがって、先行するCRCフィールドによっては保護されない)。割込みをマスタノード102に信号伝達する必要があるいずれのスレーブノード104も、その割込み情報をこれらのフィールドに挿入することになる。いくつかの実施形態では、未決状態の割込みを有するスレーブノード104は、同様に未決状態の割込みを有するさらに下流のいずれのスレーブノード104よりも高い優先順位を有してもよい。バス106沿いの最後のスレーブノード104(例えば、図1のスレーブノード2)は、常にこれらの割込みフィールドに値を事前挿入してもよい。最後のスレーブノード104が未決状態の割込みを有さない場合、最後のスレーブノード104は、IRQビットに0を、IRQノードフィールドにそのノードIDを設定し、正しいCRC−4値を提供してもよい。便宜上、割込みを送配する同期応答フレーム197は、本明細書において「割込みフレーム」と呼ばれることがある。
いくつかの実施形態では、プリアンブル182とCRCフィールドとの間の同期応答フレーム197の少なくとも一部分は、放射を低減するためにスクランブルされてもよい。いくつかのそのような実施形態では、同期応答フレーム197のCNTフィールドは、あるスーパーフレームと次のスーパーフレームとではスクランブルされるフィールドが異なってスクランブルされることを確実化するために、スクランブル処理ロジックによって使用されてもよい。本明細書に記載のシステム100の様々な実施形態はスクランブル処理を省略してもよい。
スレーブノード104がプリアンブル182を一意的に識別することができることを確実化するように、またはプリアンブル182が同期応答フレーム197内の他所で出現する可能性を低減するために、上述のスクランブル処理および/またはエラー符号化などの技術に加えて、またはそれらに代えて、他の技術が使用されてもよい。例えば、同期応答フレーム180の残部の特定の符号化がプリアンブル182に一致する可能性を低減するように、より長い同期シーケンスが使用されてもよい。追加的または代替的に、同期応答フレームの残部は、適切なビットに「0」または「1」の固定値を配置することなどによって、同期シーケンスが発生することができないように構造化されてもよい。
図7は、様々な実施形態による、図2のバスプロトコル回路126のブロック図である。バスプロトコル回路126は、本明細書に記載のバス106のプロトコルに従ってノード送受信器120の動作を制御するための制御回路154を含んでもよい。特に、制御回路154は、送信用の同期フレームの生成(例えば、上述の同期制御フレームまたは同期応答フレーム)、受信した同期フレームの処理、および受信した同期制御フレームに明記された制御動作の遂行を制御してもよい。制御回路154は、後述するように、プログラム可能なレジスタを含んでもよい。制御回路154は、同期制御フレームを作成および受信し、受信したメッセージ(例えば、バスプロトコル回路126がスレーブノード104に含まれる場合は、同期制御フレームに関連付けられたメッセージ、またはバスプロトコル回路126がマスタノード102に含まれる場合は、I2Cデバイスからのメッセージ)に適切に反応し、異なる動作モード(例えば、通常、発見、スタンバイなど)に応じてフレーミングを調節してもよい。
ノード送受信器120がバス106に沿って送信するためのデータを準備しているとき、プリアンブル回路156は、送信用の同期フレームのプリアンブルを生成し、受信した同期フレームからプリアンブルを受信するように構成されてもよい。いくつかの実施形態では、下り同期制御フレームのプリアンブルが、マスタノード102によって1024ビット毎に送付されてもよい。上述のように、1つ以上のスレーブノード104は、下り同期制御フレームのプリアンブルに同期し、このプリアンブルから位相整合したローカルマスタクロックを生成してもよい。
巡回冗長検査(CRC)挿入回路158は、送信用の同期フレームの1つ以上のCRCを生成するように構成されてもよい。フレーム/圧縮回路160は、I2S/TDM/PDM送受信器127(例えば、送受信器127に関連付けられたフレームバッファから)および/またはI2C送受信器129からの着信データを取り上げ、任意追加的にデータを圧縮し、任意追加的にそのデータのパリティチェックビットまたはエラー訂正コード(ECC)を生成するように構成されてもよい。マルチプレクサ(MUX)162は、プリアンブル回路156からのプリアンブル、同期フレーム、およびデータを送信用のストリームへと多重化してもよい。いくつかの実施形態では、送信ストリームは、送信前にスクランブル処理回路164によってスクランブルされてもよい。
例えば、いくつかの実施形態では、フレーム/圧縮回路160は、浮動小数点圧縮スキームを適用してもよい。このようなある実施形態では、制御回路154はどのくらい多くの繰り返し符号ビットが数に含まれるかを示す3ビットを送信してもよく、符号ビットおよびN−4ビットのデータが後に続き、式中、Nはバス106を介して送信されるべきデータのサイズである。データ圧縮の使用は、所望の際にマスタノード102によって構成されてもよい。
いくつかの実施形態では、ノード送受信器120に入る受信ストリームは、スクランブル解除回路166によってスクランブル解除されてもよい。デマルチプレクサ(DEMUX)168は、受信ストリームからプリアンブル、同期フレーム、およびデータを逆多重化してもよい。受信側のCRCチェック回路159は、CRCが正しいか、受信した同期フレームをチェックしてもよい。CRCチェック回路159が着信同期制御フレーム180内のCRC失敗を識別すると、制御回路154にその失敗が通知されてもよく、制御回路154は、同期制御フレーム180の制御データ184内のいずれの制御コマンドも遂行しない。CRCチェック回路159が着信同期応答フレーム197内のCRC失敗を識別すると、制御回路154にその失敗が通知されてもよく、制御回路154は、割込みフレームでホスト110に送信するための割込みを生成してもよい。コマ落とし/伸長回路170は、受信データを受領し、任意追加的にそのパリティをチェックし、任意追加的にエラー検出および訂正(例えば、単一エラー訂正−二重エラー検出(SECDED))を遂行し、任意追加的にデータを伸長してもよく、受信データをI2S/TDM/PDM送受信器127(例えば、送受信器127に関連付けられたフレームバッファ)および/またはI2C送受信器129に書き込んでもよい。
上述のように、上りデータおよび下りデータは、スーパーフレーム190内のTDMデータスロット内のバス106に沿って送信されてもよい。制御回路154は、バス106上のこれらのデータスロットを管理することを専門とするレジスタを含んでもよく、そのいくつかの例を後述する。制御回路154がマスタノード102に含まれる場合、これらのレジスタの値は、ホスト110によって制御回路154内へとプログラムされてもよい。制御回路154がスレーブノード104に含まれる場合、これらのレジスタの値は、マスタノード102によって制御回路154内へとプログラムされてもよい。
いくつかの実施形態では、制御回路154は、下りスロット(DNSLOTS)レジスタを含んでもよい。ノード送受信器120がマスタノード102に含まれる場合、このレジスタは、下りデータスロットの総数の値を保持してもよい。このレジスタはまた、マスタノード102内のI2S/TDM/PDM送受信器127による混合I2S/TDM/PDM受信のために使用されることになるデータスロットの数を定義してもよい。スレーブノード104では、LDNSLOTSに関連してさらに詳細に後述するように、このレジスタは、ローカルで生成された下りスロットの追加前または追加後に次のスレーブノード104へと下流に渡されるデータスロットの数を定義してもよい。
いくつかの実施形態では、制御回路154は、ローカル下りスロット(LDNSLOTS)レジスタを含んでもよい。このレジスタは、マスタノード102では未使用であってもよい。スレーブノード104では、このレジスタは、スレーブノード104が使用するが再送信しないデータスロットの数を定義してもよい。あるいは、このレジスタは、スレーブノード104が下りバスリンク106に与え得るスロットの数を定義してもよい。
いくつかの実施形態では、制御回路154は、上りスロット(UPSLOTS)レジスタを含んでもよい。マスタノード102では、このレジスタは、上りデータスロットの総数の値を保持してもよい。このレジスタはまた、マスタノード102内のI2S/TDM/PDM送受信器127によってI2S/TDM送信のために使用されるスロットの数を定義してもよい。スレーブノード104では、このレジスタは、スレーブノード104がそれ自身のデータを加え始める前に上流に受け渡されたデータスロットの数を定義してもよい。
いくつかの実施形態では、制御回路154は、ローカル上りスロット(LUPSLOTS)レジスタを含んでもよい。このレジスタは、マスタノード102では未使用であってもよい。スレーブノード104では、このレジスタは、スレーブノード104が下流から受信したデータに、そのデータが上流に送信される前に、追加するデータスロットの数を定義してもよい。このレジスタはまた、スレーブノード104内のI2S/TDM/PDM送受信器127による混合I2S/TDM/PDM受信のために使用されることになるデータスロットの数を定義してもよい。
いくつかの実施形態では、制御回路154は、ブロードキャスト下りスロット(BCDNSLOTS)レジスタを含んでもよい。このレジスタは、マスタノード102では未使用であってもよい。スレーブノード104では、このレジスタは、ブロードキャストデータスロットの数を定義してもよい。いくつかの実施形態では、ブロードキャストデータスロットは、常にデータフィールドの始めにあってもよい。ブロードキャストデータスロット内のデータは、複数のスレーブノード104によって使用されてもよく、それが使用されているか否かにかかわらず、全てのスレーブノード104によって下流に受け渡されてもよい。
いくつかの実施形態では、制御回路154は、スロットフォーマット(SLOTFMT)レジスタを含んでもよい。このレジスタは、上り送信および下り送信用のデータのフォーマットを定義してもよい。I2S/TDM/PDM送受信器127のデータサイズも、このレジスタによって決定されてもよい。いくつかの実施形態では、有効データサイズとしては、8、12、16、20、24、28、および32ビットが挙げられる。このレジスタは、下りトラフィックおよび上りトラフィックの浮動小数点圧縮を有効化するためのビットも含んでもよい。浮動小数点圧縮が有効化されている場合、I2S/TDMデータサイズは、バス106上のデータサイズよりも4ビット大きくてもよい。システム100内の全てのノードは、データスロットが有効化されている場合、同じSLOTFMT値を有してもよく、ノードは、全ノードが同じ値によって更新されるように、ブロードキャスト書き込みによってプログラムされてもよい。
図8〜11は、本明細書に記載のバスプロトコルの様々な実施形態による、バス106に沿った情報交換の例を示す。特に、図8〜11は、各スレーブノード104が周辺デバイス108としての1つ以上のスピーカーおよび/または1つ以上のマイクロフォンに連結されている実施形態を示す。本明細書に記載の技術によれば任意の所望の配置の周辺デバイス108を任意の特定のスレーブノード104に連結し得るので、これは単に例示的なものである。
始めに、図8は、様々な実施形態による、バス106上の双方向通信のための信号伝達およびタイミングに関する考慮事項を示す。図8に示すスレーブノード104は、様々な数のセンサ/アクチュエータ要素を有するので、異なる量のデータが、様々なスレーブノード104に対して送付され、または様々なスレーブノード104から受信され得る。具体的には、スレーブノード1は2つの要素を有し、スレーブノード4は4つの要素を有し、スレーブノード5は3つの要素を有するので、マスタノード102によって送信されるデータは、スレーブノード1のための2つのタイムスロット、スレーブノード4のための4つのタイムスロット、およびスレーブノード5のための3つのタイムスロットを含む。同様に、スレーブノード0は3つの要素を有し、スレーブノード2は3つの要素を有し、スレーブノード3は3つの要素を有し、スレーブノード6は1つの要素を有し、スレーブノード7は4つの要素を有するので、それらのスレーブノード104によって上流に送信されるデータは、対応する数のタイムスロットを含む。要素とタイムスロットとの間に1対1の相関関係が存在する必要はないことに留意すべきである。例えば、周辺デバイス108に含まれる3つのマイクロフォンを有するマイクロフォンアレイは、3つのマイクロフォンからの信号を(およびことによるとマスタノード102または他のスレーブノード104から受信した情報も)組み合わせて、処理の種類に応じて単一のタイムスロットまたは複数のタイムスロットに対応し得る単一のデータサンプルを生成するデジタル信号プロセッサを含んでもよい。
図8では、マスタノード102は同期制御フレーム(SCF)を送信し、特定のスレーブノード104に連結されたスピーカーのためのデータ(SD)が後に続く。相次ぐ各スレーブノード104は、同期制御フレームを転送し、少なくとも下流スレーブノード104を宛先とする任意のデータも転送する。特定のスレーブノード104は全てのデータを転送してもよく、またはそのスレーブノード104を宛先とするデータを取り除いてもよい。最後のスレーブノード104が同期制御フレームを受信すると、そのスレーブノード104は同期応答フレーム(SRF)を送信し、任意追加的にスレーブノード104が送信することを許可されている任意のデータが後に続く。相次ぐ各スレーブノード104は、下流スレーブノード104からの任意のデータと共に同期応答フレームを転送し、任意追加的に特定のスレーブノード104に連結された1つ以上のマイクロフォンからのデータ(MD)を挿入する。図8の例では、マスタノード102は、スレーブノード1、4、および5(図8ではアクティブスピーカーとして示す)にデータを送信し、スレーブノード7、6、3、2、および0(図8ではマイクロフォンアレイとして示す)からデータを受信する。
図9は、下りDS送受信器124の観点から、様々な実施形態による、下り送信からのデータの動的除去および上り送信へのデータの挿入を概略的に示す。図9では、図8と同様に、マスタノード102は、同期制御フレーム(SCF)を送信し、スレーブノード1、4、および5のデータ(SD)が逆順に後に続く(例えば、スレーブノード5のデータの後にスレーブノード4のデータが続き、その後にスレーブノード1のデータなどが続く)(MASTERとラベル付けされた列を参照されたい)。スレーブノード1がこの送信を受信すると、スレーブノード1は、それ自身のデータを除去し、同期制御フレームのみをスレーブノード2に転送し、スレーブノード5および4のデータが後に続く。スレーブノード2および3は、スレーブノード1によって転送されたデータがスレーブノード4によって受信されるように(SLAVE3とラベル付けされた列を参照されたい)、データを変更なしに転送する(SLAVE2とラベル付けされた列を参照された)。スレーブノード4は、それ自身のデータを除去し、スレーブノード5に同期制御フレームのみを転送し、スレーブノード5のデータが後に続く。同様に、スレーブノード5はそれ自身のデータを除去し、同期制御フレームのみをスレーブノード6に転送する。スレーブノード6は、同期制御フレームをスレーブノード7に転送する(SLAVE6とラベル付けされた列を参照されたい)。
この時点で、スレーブノード7はスレーブノード6に同期応答フレーム(SRF)を送信し、そのデータが後に続く(SLAVE6とラベル付けされた列を参照されたい)。スレーブノード6は、スレーブノード7からのデータおよびそれ自身のデータと共に同期応答フレームをスレーブノード5に転送し、スレーブノード5は、スレーブノード7および6からのデータと共に同期応答フレームをスレーブノード4に転送する。スレーブノード4は追加すべきデータを有さないので、スレーブノード4は単にデータをスレーブノード3に転送し(SLAVE3とラベル付けされた列を参照されたい)、スレーブノード3はそのデータをそれ自身のデータと共にスレーブノード2に転送し(SLAVE2とラベル付けされた列を参照されたい)、スレーブノード2はそのデータをそれ自身のデータと共にスレーブノード1に転送する。スレーブノード1は追加すべきデータを有さないので、スレーブノード1はデータをスレーブノード0に転送し、スレーブノード0はそのデータをそれ自身のデータと共に転送する。結果として、マスタノード102は同期応答フレームを受信し、スレーブノード7、6、3、2、および0からのデータが後に続く(MASTERとラベル付けされた列を参照されたい)。
図10は、図9と同様に、下りDS送受信器124の観点から、下り送信からのデータの動的除去および上り送信へのデータの挿入の別の例を概略的に示すが、図10では、マスタノード102がスレーブノード104の全てへとデータを下流に送付しスレーブノード104の全てからのデータを受信するように、スレーブノード104は周辺デバイス108としてのセンサおよびアクチュエータの両方と連結されている。また、図10では、データは、データの宛先またはデータの発信元であるノードアドレスに基づいて順序付けられる。「Y」とラベル付けされたデータスロットが、データ整合性確認またはデータ訂正に使用されてもよい。
図11は、図9と同様に、下りDS送受信器124の観点から、下り送信からのデータの動的除去および上り送信へのデータの挿入の別の例を示すが、図11では、データは逆順ではなく順番に下流および上流に送配される。各スレーブノード104におけるバッファリングは、データを選択的に追加、除去、および/または転送することを可能にする。
上述のように、各スレーブノード104は、下り送信もしくは上り送信からデータを取り除いてもよく、かつ/または下り送信もしくは上り送信にデータを追加してもよい。したがって、例えば、マスタノード102は、データの別々のサンプルをいくつかのスレーブノード104の各々に送信してもよく、そのような各スレーブノード104は、そのデータサンプルを除去し、下流スレーブ宛のデータのみを転送してもよい。他方で、スレーブノード104は、下流スレーブノード104からデータを受信し、そのデータを追加のデータと共に転送してもよい。必要とされるできるだけ少ない情報を送信することの1つの利点は、システム100によって集合的に消費される電力量を低減することである。
システム100はまた、特にスレーブノード104の下りスロット使用の構成を通じて、マスタノード102からスレーブノード104へのブロードキャスト送信(およびマルチキャスト送信)をサポートしてもよい。各スレーブノード104は、ブロードキャスト送信を処理し、それを次のスレーブノード104に受け渡してもよいが、特定のスレーブノード104がブロードキャストメッセージを「消費」してもよい(すなわち、そのブロードキャスト送信を次のスレーブノード104に受け渡さない)。
システム100はまた、上り送信(例えば、特定のスレーブノード104から1つ以上の他のスレーブノード104へ)をサポートしてもよい。このような上り送信は、ユニキャスト、マルチキャスト、および/またはブロードキャスト上り送信を含むことができる。上流アドレス指定の場合、下り送信に関連して上述したように、スレーブノード104は、スレーブノード104の上りスロット使用の構成に基づいて、データを上り送信から除去すべきか否か、および/または上り送信を次の上流スレーブノード104に受け渡すべきか否かを決定してもよい。したがって、例えば、データをマスタノード102に受け渡すことに加えて、またはその代わりに、特定のスレーブノード104によってデータを1つ以上の他のスレーブノード104に受け渡してもよい。このようなスレーブ−スレーブ関係は、例えばマスタノード102を介して構成されてもよい。
したがって、様々な実施形態において、スレーブノード104は、情報を選択的に転送、省略、および追加する能力を有する能動的/インテリジェントな中継ノードとして動作してもよい。各スレーブノード104は、各スレーブノード104がデータを受信/送信することになる関連タイムスロット(複数可)を知っており、それゆえタイムスロットからデータを除去し、またはタイムスロットにデータを追加することができるので、スレーブノード104は、一般に必ずしもデータの全てを復号/検査することなしにこのような機能を遂行し得る。スレーブノード104は全てのデータを復号/検査する必要があるわけではないにもかかわらず、スレーブノード104は、典型的にスレーブノード104が送信/転送するデータを再クロックする。これは、システム100の堅牢性を改善し得る。
いくつかの実施形態では、バス106は、リングトポロジー内の一方向通信用に構成されてもよい。例えば、図12は、マスタノード102と4つのスレーブノード104のリングトポロジーにおける配置1200を示し、様々な実施形態による、配置1200における一方向通信のための信号伝達およびタイミングに関する考慮事項を示す。このような実施形態では、ノード内のノード送受信器120は、上り通信用および下り通信用の2つの双方向送受信器ではなく、受信専用の送受信器(MASTER IN)および送信専用の送受信器(MASTER OUT)を含んでもよい。図12に示すリンク層同期スキームでは、マスタノード102は、任意追加的に様々なスレーブノード104に連結された3つのスピーカーのための「下り」データ1202が後に続く同期制御フレーム(SCF)180を送信してもよく(図8〜11に関連して上述したように、異なるスピーカーのためのデータは任意の好適な順序で配置され得る)、相次ぐ各スレーブノード104は、同期制御フレーム180を先行スレーブノード104からの「上り」データおよびそれ自身の「上り」データと共に転送して「上り」データ1204を提供する(例えば、図8〜11に関連して上述したように、8つの異なるマイクロフォンからのデータは任意の好適な順序で配置され得る)。
本明細書に記載のように、データは、システム100の要素間でいくつかの方法のうちのいずれで通信されてもよい。いくつかの実施形態では、データは、一組の同期データスロットの一部としてスレーブノード104によって上流に送付されてもよく(例えば、データスロット199を使用して)、またはスレーブノード104もしくはマスタノード102によって下流に送付されてもよい(例えば、データスロット198を使用して)。このようなデータの量は、データスロット内のビット数を変更することによって、または余分なデータスロットを含めることによって調節されてもよい。データはまた、同期制御フレーム180または同期応答フレーム197に含めることによって、システム100内で通信されてもよい。この方法で通信されるデータとしては、ホスト110からのI2C制御データ(スレーブノード104に関連付けられた周辺デバイス108からの応答と共に)、ホスト110/マスタノード102からスレーブノード104への書き込みアクセスおよびスレーブノード104からホスト110/マスタノード102への読み出しアクセスを含み得るスレーブノード104のレジスタへのアクセス(例えば、スロットおよびインターフェースの発見および構成のための)、ならびに周辺デバイス108からホスト110への割込みを介したイベント信号伝達、が挙げられる。いくつかの実施形態では、GPIOピンを使用して、スレーブノード104からマスタノード102に情報を送配してもよい(例えば、マスタノード102にI2Cを介してGPIOピンをポーリングさせることによって、またはスレーブノード104のノード送受信器120に割込み要求ピンで割込みを生成させることによって)。例えば、いくつかのそのような実施形態では、ホスト110がI2Cを介してマスタノード102に情報を送付してもよく、次いでマスタノード102がGPIOピンを介してスレーブにその情報を送付してもよい。バス106を介して送信されるとして本明細書に記載されている種類のデータのいずれも、これらの通信経路の任意の1つ以上を使用して送信されてもよい。システム100内の他の種類のデータおよびデータ通信技術が本明細書に開示されている場合がある。
本開示の実施形態は、所望のとおりに構成される任意の好適なハードウェアおよび/またはソフトウェアを使用してシステムへと実装されてもよい。図13は、様々な実施形態による、システム100内のホストまたはノード(例えば、ホスト110、マスタノード102、またはスレーブノード104)として機能し得るデバイス1300を概略的に示す。デバイス1300に含まれるとしていくつかの構成要素が図13に示されているが、これらの構成要素のうち任意の1つ以上が、用途に好適であるとして省略または二重化されてもよい。
加えて、様々な実施形態において、デバイス1300は、図13に示す構成要素の1つ以上を含まないことがあるが、デバイス1300は1つ以上の構成要素に連結するためのインターフェース回路を含んでもよい。例えば、デバイス1300は、ディスプレイデバイス1306を含まないことがあるが、ディスプレイデバイス1306が連結され得るディスプレイデバイスインターフェース回路(例えば、コネクタおよびドライバ回路)を含んでもよい。別の一組の例では、デバイス1300は、オーディオ入力デバイス1324またはオーディオ出力デバイス1308を含まないことがあるが、オーディオ入力デバイス1324またはオーディオ出力デバイス1308が連結され得るオーディオ入出力デバイスインターフェース回路(例えば、コネクタまたはサポート回路)を含んでもよい。
デバイス1300は、デバイス1300がバス106に連結されているときバス106沿いの通信を管理するために、本明細書に開示される実施形態のいずれかによるノード送受信器120を含んでもよい。デバイス1300は処理デバイス1302(例えば、1つ以上の処理デバイス)を含んでもよく、処理デバイス1302はノード送受信器120に含まれてもよく、またはノード送受信器120とは別々であってもよい。本明細書で使用するとき、「処理デバイス」という用語は、レジスタおよび/またはメモリからの電子データを処理し、その電子データをレジスタおよび/またはメモリに記憶され得る他の電子データに変換する任意のデバイスまたはデバイスの部分を指し得る。処理デバイス1302としては、1つ以上のデジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、中央処理装置(CPU)、グラフィックスプロセッサ(GPU)、暗号プロセッサ、または任意の他の好適な処理デバイスが挙げられる。デバイス1300はメモリ1304を含んでもよく、メモリ1304はそれ自体、揮発性メモリ(例えば、ダイナミックランダムアクセスメモリ(DRAM))、不揮発性メモリ(例えば、読み出し専用メモリ(ROM))、フラッシュメモリ、ソリッドステートメモリ、および/またはハードドライブなどの1つ以上のメモリデバイスを含んでもよい。
いくつかの実施形態では、メモリ1304は、本明細書に開示される技術のうち任意の好適なものをデバイス1300に遂行させるプログラミング命令の作業用コピーおよび永久コピーを記憶するために用いられてもよい。いくつかの実施形態では、上述の技術を遂行するための機械アクセス可能な媒体(不揮発性コンピュータ可読記憶媒体を含む)、方法、システム、およびデバイスは、2線式バスを介した通信のための本明細書に開示される実施形態の例示的な例である。例えば、コンピュータ可読媒体(例えば、メモリ1304)には、処理デバイス1302に含まれる処理デバイスの1つ以上によって実行されると、本明細書に開示される技術のうち任意のものをデバイス1300に遂行させる命令が記憶されていてもよい。
いくつかの実施形態では、デバイス1300は、別の通信チップ1312(例えば、1つ以上の他の通信チップ)を含んでもよい。例えば、通信チップ1312は、デバイス1300へのおよびデバイス1300からのデータ転送のために無線通信を管理するように構成されてもよい。「無線」という用語およびその派生形は、非固体媒体を通る変調電磁放射の使用を通じてデータを通信し得る回路、デバイス、システム、方法、技術、通信チャネルなどを説明するために使用され得る。この用語は、関連付けられたデバイスがいかなるワイヤも含まないことを暗示するものではないが、いくつかの実施形態では含まないことがある。
通信チップ1312は、Wi−Fi(IEEE802.11ファミリ)、IEEE802.16規格(例えば、IEEE802.16−2005修正版)を含む米国電気電子学会(IEEE)規格、修正版、更新版、および/または改訂版(例えば、LTEアドバンストプロジェクト、ウルトラモバイルブロードバンド(UMB)プロジェクト(「3GPP2」とも呼ばれる)など)を含むLong−Term Evolution(LTE)プロジェクト、を含むがこれらに限定されないいくつかの無線規格またはプロトコルのうちの任意のものを実装してもよい。IEEE802.16互換のBroadband Wireless Access(BWA)ネットワークは一般にWiMAXネットワークと呼ばれ、これはIEEE802.16規格との適合性試験および相互運用性試験に合格した製品に対する認証マークであるWorldwide Interoperability for Microwave Accessを表す頭字語である。1つ以上の通信チップ1312は、Global System for Mobile Communication(GSM(登録商標))、General Packet Radio Service(GPRS)、Universal Mobile Telecommunications System(UMTS)、High Speed Packet Access(HSPA)、Evolved HSPA(E−HSPA)、またはLTEネットワークに従って動作し得る。1つ以上の通信チップ1312は、Enhanced Data for GSM Evolution(EDGE)、GSM EDGE Radio Access Network(GERAN)、Universal Terrestrial Radio Access Network(UTRAN)、またはEvolved UTRAN(E−UTRAN)に従って動作し得る。1つ以上の通信チップ1312は、符号分割多元接続(CDMA)、時分割多元接続(TDMA)、Digital Enhanced Cordless Telecommunications(DECT)、Evolution−Data Optimized(EV−DO)、およびこれらの派生形、ならびに3G、4G、5G、およびそれ以降と指定される任意の他の無線プロトコルに従って動作し得る。通信チップ1312は、他の実施形態では他の無線プロトコルに従って動作してもよい。デバイス1300は、無線通信を促進するため、かつ/または他の無線通信(AMもしくはFM無線送信など)を受信するためのアンテナ1322を含んでもよい。
いくつかの実施形態では、通信チップ1312は、本明細書に記載のバス106のプロトコル以外のプロトコルを使用して有線通信を管理してもよい。有線通信は、電気的、光学的、または任意の他の好適な通信プロトコルを含み得る。通信チップ1312によって有効化され得る有線通信プロトコルの例としては、イーサネット(登録商標)、コントローラエリアネットワーク(CAN)、I2C、media−oriented systems transport(MOST)、または任意の他の好適な有線通信プロトコルが挙げられる。
上述のように、通信チップ1312は、複数の通信チップを含んでもよい。例えば、第1の通信チップ1312はWi−FiまたはBluetooth(登録商標)などの近距離無線通信専用であってもよく、第2の通信チップ1312はGPS、EDGE、GPRS、CDMA、WiMAX、LTE、EV−DOその他などの遠距離無線通信専用であってもよい。いくつかの実施形態では、第1の通信チップ1312は無線通信専用であってもよく、第2の通信チップ1312は有線通信専用であってもよい。
デバイス1300は、バッテリー/電源回路1314を含んでもよい。バッテリー/電源回路1314は、1つ以上のエネルギー貯蔵デバイス(例えば、バッテリーもしくはキャパシタ)、および/またはデバイス1300の構成要素をデバイス1300とは別個のエネルギー源(例えば、交流ライン電源、自動車バッテリーによって提供される電圧など)に連結するための回路を含んでもよい。例えば、バッテリー/電源回路1314は、図2に関連して上述した上りフィルタリング回路132および下りフィルタリング回路131を含んでもよく、バス106に対するバイアスによって充電され得る。
デバイス1300は、ディスプレイデバイス1306(または、上述のように、対応するインターフェース回路)を含んでもよい。ディスプレイデバイス1306は、例えばヘッドアップディスプレイ、コンピュータモニタ、プロジェクタ、タッチスクリーンディスプレイ、液晶ディスプレイ(LCD)、発光ダイオードディスプレイ、または平面パネルディスプレイなどの、任意の視覚的インジケータを含んでもよい。
デバイス1300は、オーディオ出力デバイス1308(または、上述のように、対応するインターフェース回路)を含んでもよい。オーディオ出力デバイス1308は、例えばスピーカー、ヘッドセット、またはイヤホンなどの、可聴式インジケータを生成する任意のデバイスを含んでもよい。
デバイス1300は、オーディオ入力デバイス1324(または、上述のように、対応するインターフェース回路)を含んでもよい。オーディオ入力デバイス1324は、マイクロフォン、マイクロフォンアレイ、またはデジタル楽器(例えば、ミュージカルインストルメントデジタルインターフェイス(MIDI)出力を有する楽器)などの、音を表す信号を生成する任意のデバイスを含んでもよい。
デバイス1300は、全地球測位システム(GPS)デバイス1318(または、上述のように、対応するインターフェース回路)を含んでもよい。GPSデバイス1318は、衛星型システムと連通していてもよく、当技術分野で知られているように、デバイス1300の位置情報を受信してもよい。
デバイス1300は、別の出力デバイス1310(または、上述のように、対応するインターフェース回路)を含んでもよい。他の出力デバイス1310の例としては、オーディオコーデック、ビデオコーデック、印刷機、情報を他のデバイスに提供するための有線もしくは無線送信器、または追加の記憶デバイスが挙げられる。加えて、本明細書に記載の周辺デバイス108のうち任意の好適なものが、他の出力デバイス1310に含まれてもよい。
デバイス1300は、別の入力デバイス1320(または、上述のように、対応するインターフェース回路)を含んでもよい。他の入力デバイス1320の例としては、加速度計、ジャイロスコープ、画像取込みデバイス、キーボード、マウスなどのカーソル制御デバイス、スタイラス、タッチパッド、バーコード読取機、クイックレスポンス(QR)コード読取機、または無線周波数識別(RFID)読取機が挙げられる。加えて、本明細書に記載のセンサまたは周辺デバイス108のうち任意の好適なものが、他の入力デバイス1320に含まれてもよい。
デバイス1300に関連して上述したディスプレイデバイス、入出力デバイス、通信デバイス、またはメモリデバイスのうち任意の好適なものが、システム100において周辺デバイス108として機能してもよい。代替的または追加的に、デバイス1300に関連して上述したディスプレイデバイス、入出力デバイス、通信デバイス、またはメモリデバイスのうち好適なものが、ホスト(例えば、ホスト110)またはノード(例えば、マスタノード102もしくはスレーブノード104)に含まれてもよい。
図14Aは、本明細書に記載の実施形態による、DH技術を実装する際に使用するための回路1400のある実施形態を示す。DH技術は、詳細に上述したシステム100に関連して実装されてもよい。しかしながら、本明細書に記載のDH技術が有利に実装され得る他のシステム実施形態が存在することが認識されるであろう。
全ての比較器はヒステリシスを呈し、ヒステリシスは入力雑音に対する堅牢性を支援するために意図的に追加されることがあることが認識されるであろう。ヒステリシスは、正帰還を通じて比較器の動特性を変化させる。これは、入力信号がヒステリシス電圧のオーダーにある場合にとりわけ観察され得る。これは準安定性と呼ばれ、より高いジッタを引き起こすことが多い。
上述のシステム100などにおける特定のバス通信では、データパケットとデータパケットとの間の期間中、デジタルエンジンにおけるクロックデータ回復(「CDR」)によってリアルデータと誤解されるおそれがあるいかなる雑音も拒絶する上で、より高い受信ヒステリシスが有用であり得る。データパケットの第1ビットが受信されると、CDRは、データクロックにロックし始める(すなわち、予期される0101遷移)。その後、かつパケットの残部にわたって、バスは今や通信しており、CDRはロックされているので、より高い受信器ヒステリシスはもはや必要ではない。より高いヒステリシスの場合、準安定性は、不必要な量のジッタを追加することがある。
回路1400は、受信器回路1401のヒステリシスモードを設定するように受信器回路1401に提供される、「high_hyst」と呼ばれるヒステリシス制御信号を生成する。特定の実施形態では、HIGHのhigh_hyst信号は受信器回路1401を高ヒステリシスモードに置く一方、LOWのhigh_hyst信号は受信器回路を低または標準ヒステリシスモードに置く。以下に詳細に説明するように、動作中、回路1400は、到着データ信号の第1のエッジまたは遷移を検出する。図14Aに示す実施形態では、第1の遷移はLOWからHIGH(0から1)の遷移である。
図14Bに示すものなどの特定の実施形態では、あるヒステリシスモードから別のヒステリシスモードへの遷移が第1の遷移後ではなくN番目に検出された遷移後に発生するようにプログラムすることができるように、本明細書に記載の実施形態による、DH技術を実装する際に使用するための回路1450は、LOWからHIGHの遷移を計数するためのカウンタを含んでもよい。
回路1400はLOWからHIGHの遷移を検出(および計数)するように設計されているものの、回路は、本明細書に記載の実施形態の趣旨および範囲に影響を与えることなく、HIGHからLOWの遷移を検出(および計数)するように修正することができることが認識されるであろう。回路1400の動作を以下の図15Aを参照しながらより詳細に説明する。同様に、回路1450の動作を以下の図15Bを参照しながらより詳細に説明する。
図15Aは、様々な実施形態による、高ヒステリシスモードと標準の低ヒステリシスモードとの間の複数の遷移を示す回路1400の様々な信号の波形の図1500を示す。図14Aおよび15Aに示すように、gate_data信号(図15Aでは波形1502によって表される)およびクロック信号(図15Aでは波形1504によって表される)は、ライン上のデータ(「data_final」)(図15Aでは波形1506によって表される)を生成/モデル化するようにANDゲート1402に入力され、そのうちの2つのパケット1508A、1508Bが図15Aに示されている。図15Aに示すように、data_finalb信号(図15Aでは波形1510によって表される)はdata_final信号の反転バージョンである。data_finalbb信号(図15Aでは波形1512によって表される)は、data_final信号の、キャパシタ1404(図14A)を介して遅延され反転されたバージョンであり、reb信号(図15Aでは波形1514によって表される)は、受信器BAR(アクティブロー)イネーブル信号である。reb信号がローのとき、受信器回路1401はONにされる。rebb信号(図15では波形1516によって表される)は、reb信号の、キャパシタ1406の追加を介して遅延され反転されたバージョンである。上述のように、high_hyst信号(図15Aでは波形1518によって表される)は、ヒステリシスモードを設定する信号である。示されている実施形態では、high_hyst信号がHIGHのとき、受信器回路1401は高ヒステリシスモードにある。high_hyst信号がローのとき、受信器回路1401は低または標準ヒステリシスモードにある。上述のように、2つのヒステリシスモードだけが本明細書に示されているものの、3つ以上のこのようなモードが有利に実装されてもよい。
図14Aの回路1400では、D型フリップフロップまたはラッチ1408は、データの最初のLOWからHIGHの遷移が検出されたことを検証するように、data_finalbb信号によってクロックされる。このような検出は、high_hyst信号がラッチ1408の反転出力(「Qb」)から出力されるので、high_hyst(またはヒステリシス制御)信号をLOWに設定する。ラッチ1408の入力はrebb信号に結合されており、これが発生すると受信器回路1401が有効化されるのでrebb信号はハイである。ヒステリシス制御信号high_hystは、rebがHIGHになると再びHIGHになり(すなわち、リセットされる)、受信器回路1401は、パケット全体が受信された後、無効化または電源オフされる。次の有効なLOWからHIGHのデータ遷移まで、high_hyst信号はHIGHにとどまる(かつ受信器回路1401は高ヒステリシスモードにとどまる)。それゆえ、受信器1401が再び電源オンし(reb信号がLOWになり)次のデータパケットの受信を待機するとき、high_hyst信号はHIGHである(かつ受信器回路1401はhigh_hystモードにある)。結果として、受信器回路1401を有効化するようにreb信号がシステムプロトコルによってLOWにされるたびに、受信器回路は、最初の(またはN番目の)LOWからHIGHのデータ遷移が検出された後まで高ヒステリシスモードにとどまることになる。最初の(またはN番目の)LOWからHIGHのデータ遷移が(回路1400を使用して)検出されると、high_hyst信号は、LOWになり(受信器回路1401を低または通常のヒステリシスモードに置き、reb信号がHIGHになり受信器回路1401が再び無効化されるまでその状態にとどまる。結果として、回路1400は、受信器回路1401が電源オンされた時と着信パケットの最初のデータビットが受信された時との間、ライン上のいかなる雑音もより高いヒステリシスに従うことを確実にし、このようにしてシステムを雑音に対してより影響を受けにくくする。
これより図14Bを参照すると、図14Bに示すように、カウンタ1452は、信号「reb」によって0000にリセットされ(ピンCLR)、着信データビットストリーム信号(「data_finalbb」)によってクロックされる(ピンCLK)。一実施形態では、カウンタ1452は、1nsの遅延を有し、0000から1111の計数を可能にする4ビットのカウンタを含む。例として、カウンタ1452は、4番目の着信データビットを受けると(すなわち、カウンタが0100に到達すると)、検出し、次いでラッチ1408をトリガするために使用される。結果として、ラッチ1408は、data_4thおよびdata_4thbによってクロックされる。リセットから出ると、ラッチ1408は、第4の着信データビットによってトリガされ、回路1400においてよりも後でhigh_hyst_4thをハイに設定する。この信号は、受信器回路1401が受信を完了した後、信号rebが再びハイになるまで、ハイにとどまることになる。回路1450の様々な信号のタイミング図を図15Bに示す。
受信器回路1401内で高ヒステリシスモードおよび標準の低ヒステリシスモードを実装するための様々な技術を、これよりより詳細に説明する。図16は、本明細書に記載の実施形態による、高ヒステリシスモードの動作例を示す。図16に示すように、図16では波形1600によって表されるhystb信号はヒステリシス制御信号high_hystの反転版であり、high_hystがHIGHのときhystbはLOWであり、逆もまた同様である。示されている実施形態では、hystb信号がLOWのとき(すなわち、high_hyst信号がHIGHであり、受信器回路1401(図14)が高ヒステリシスモードにあるとき)、図16では波形1602によって表される出力信号v(out)は、差動入力電圧(すなわち、図16では波形1604Aによって表されるv(ip)と、図16では波形1604Bによって表されるv(in)との差)が何らかの所定の値(例えば、10mV)に到達するまで、トリガされない。hystb信号1600がHIGHのとき(すなわち、回路が標準ヒステリシスモードにあるとき)、出力信号は、差動入力電圧信号がはるかに低くなる(例えば、きっかり0mVではないが0mVに接近する)と、トリガされる。本明細書の以下により詳細に説明するように、準安定性の問題を防止するために、きっかり0mVの標準ヒステリシスは避けるべきである。図16に示すように、ヒステリシスは対称的であり、LOWからHIGHの遷移のヒステリシスがHIGHからLOWの遷移のヒステリシスと同じであることを意味する。しかしながら、本明細書の以下に記載の実施形態の特徴によれば、LOWからHIGHの遷移のヒステリシスがHIGHからLOWの遷移のヒステリシスとは異なる非対称的なヒステリシスが実装されてもよいことに気づくであろう。
図17A〜17Bは、受信器回路1700のより詳細な高レベルブロック図であり、受信器回路1700は、特定の実施形態では、受信器回路1401(図14)と同一である。図17A〜17Bに示すように、受信器回路1700は、抵抗入力ネットワーク1702、比較器セル1704、電流制御トリム回路1706、制御ロジック1708、スイッチ回路1709、およびタイミングスキューセル1710のうち1つ以上を含み得る。図17A〜17Bに示すように、電流制御トリム回路1706は、高ヒステリシス閾値を調整するための複数のスイッチを含む。
図18Aは、図17A〜17Bの比較器セル1704のより詳細な回路ブロック図である。図18Aに示すように、比較器セル1704は、差動スイッチペアを使用して実装された第1の、または前置増幅器(「プリアンプ」)の、ステージ1800と、標準ヒステリシスモードおよび高ヒステリシスモードを設定し得る比較器コア1802とを含む。図18Bは、図18Aの比較器セル1704の変形回路図である。
受信器回路1700などの受信器回路において動的ヒステリシスを実装するための様々な技術が、本明細書に記載の実施形態に従って実装され得る。図18Bを参照すると、1つの技術は、スイッチ(例えば、スイッチ1709)を有効化することを介して、比較器コア1802内の余分の追加的な交差結合デバイスユニットを電源オンすることを含む。追加のデバイスは、次いで、デフォルトの交差結合デバイスと略並列に現れ、それによってより強力な正帰還が必要とされることを確実にし、このようにしてティッピングポイントをより高い閾値に延期する。言い換えれば、追加の交差結合デバイスは、比較器内の交差結合デバイスの総数を増加させ、したがってステアおよび克服するためにより多くの電流を必要とし、それによってトリガ/スイッチングポイントを遅延させ、より高いヒステリシスをもたらす。この選択肢は、単一の高ヒステリシスを実装するために、より粗い粒度の高ヒステリシス設定を可能にする。本明細書に記載の実施形態の特徴によれば、スイッチ1709は事実上可変抵抗器として機能し、スイッチ1709の抵抗はそのゲートに印可される電圧によって制御されるが、これは抵抗器または別のデバイスを通る電流であってもよい。
図19Aを参照すると、典型的な比較器では、交差結合デバイスQ3およびQ4は、標準(低)ヒステリシスに対して正帰還を提供するために使用される。本明細書に記載の実施形態の特徴によれば、追加の交差結合デバイスQ5およびQ6が提供され、電圧Vxを使用して制御される。電圧Vxは動的に変化することができ、その後、調整可能なVxの値に応じて比較器のヒステリシスを増加させる。本明細書に示す実施形態では、電圧Vxの制御は、スイッチ回路1709(図17A〜17B)を介して提供される。有効化されると(すなわち、高ヒステリシス制御信号がHIGHになると)、スイッチ回路1709は、余分なデバイスQ5、Q6をVddに結合し、余分なデバイスQ5、Q6がVddから電流を取り出すことを可能にする。無効化されると(すなわち、高ヒステリシス制御信号がLOWになると)、スイッチ回路1709は、余分なデバイスQ5、Q6をVddから分離する。
受信器回路1700などの受信器回路において動的ヒステリシス制御を実装するための別の技術は、より細かい分解能のヒステリシス設定のために、電流制御された交差結合デバイスを電源オンすることを含む。一実施形態では、交差結合デバイスの電流制御は、電流制御トリム回路1706(図17A〜17B)を介して提供される。図17A〜17Bに示すように、MP1のゲートのノード(これは、図19Aおよび19Bに示すように、Vxに対応する)は、余分なヒステリシスがプロセス/電圧/温度(「PVT」)に応じて微調整され得るように、電流ステア機構によって制御される。これは、スイッチをVddに直接結合する代わりに、いくつかのトリム設定を有する拡張された電流ミラーデバイス1714を使用して交差結合デバイスに入る電流を制御することから得られる、より細かい粒度の高ヒステリシス設定を可能にする。電流をより良好に制御することによって、追加されるヒステリシスのより細かい勾配を達成することができる。
受信器回路1700などの受信器回路において動的ヒステリシス制御を実装するためのさらに別の技術は、電流ミラーレッグ/負荷を動的に追加すること、または利得を変調させるようにプリアンプステージ1800もしくは比較器コア1802沿いの差動ペアに余分なデバイスを追加することを含み、これは、トリガがより低いまたはより高い振幅で発生するようにヒステリシスを変調させることになる。例えば、図19Bに示すように、デバイスペアQ1とQ2、Q9とQ10、およびQ11とQ12は、比較器1802の利得を変更するために、破線によって示すように動的に追加することができる。
上述の技術のいずれも、比較器/受信器/増幅器回路の一方側に制御回路を追加することのみによって非対称的なより高いヒステリシスを達成するように実装され得ることに留意すべきである。これはまた、非対称利得およびしたがって非対称ヒステリシスをもたらすオフセットとして知覚され得る。このような非対称性は、LOWからHIGHまたはHIGHからLOWのデータ遷移(ただし両方ではない)に応え、このようにして非対称的なより高いヒステリシスをもたらす。例えば、図19Aおよび19Bを参照すると、非対称ヒステリシスは、余分なデバイス(Q3〜Q12)をデバイスQ1またはデバイスQ2(ただし両方ではない)に動的に追加することによって実装され得る。対照的に、図示し上述した上記の実施形態は、LOWからHIGHおよびHIGHからLOWの両方の遷移に応え、このようにして対称的なより高いヒステリシス特徴を実装する。
図20は、本明細書に記載の実施形態による、動的ヒステリシスを回路で実装する方法の流れ図である。動作は、受信器回路がオフであり(すなわち、受信器イネーブル信号がLOWである)、ヒステリシス制御信号がHIGHであり、つまり受信器が高ヒステリシスの状態にあり、データ遷移の数Nがゼロに設定されている状態から始まる。ステップ2000では、受信器イネーブル信号がHIGHであるかどうか、つまり受信器が有効化(電源オン)されているかどうかの判定が下される。ステップ2000で否定的判定が下されると、肯定的判定が下されるまで実行はステップ2000にとどまる。ステップ2000で肯定的判定が下されると、実行はステップ2002に進み、対象となるデータ遷移が検出されたかどうかの判定が下される。一実施形態では、対象となるデータ遷移はLOWからHIGHの遷移である。しかしながら、代替的な実施形態では、対象となるデータ遷移はHIGHからLOWの遷移であってもよい。ステップ2002で否定的判定が下されると、実行はステップ2000に戻る。ステップ2002で肯定的判定が下されると、実行はステップ2004に進む。ステップ2004では、Nの値は1だけインクリメントされ、その後、実行はステップ2006に進む。ステップ2006では、Nの値が所定の値に等しいかどうかの判定が下される。一実施形態では、所定の値は1である。しかしながら、代替的な実施形態では、所定の値は1より大きくてもよい。ステップ2006で否定的判定が下されると、実行はステップ2008に進み、受信器イネーブル信号が依然としてハイである(すなわち、受信器が依然としてオンである)かどうかの判定が下される。ステップ2008で肯定的判定が下されると、実行はステップ2000に戻る。ステップ2008で否定的判定が下されると、実行はステップ2009に進み、Nがゼロに設定され、次いでステップ2000に戻る。
ステップ2006で肯定的判定が下されると、実行はステップ2010に進み、ヒステリシス制御信号がLOWにされ、それによって受信器を低(または標準)ヒステリシスモードに遷移させる。次いで、実行はステップ2012に進み、受信器イネーブル信号が依然としてHIGHであるか、つまり受信器が依然としてオンでありデータを受信しているかどうかの判定が下される。実行は、否定的判定が下されるまでステップ2012にとどまり、否定的判定が下された時点で実行はステップ2014に進む。ステップ2014では、ヒステリシス制御信号はHIGHにされ、受信器は高ヒステリシスモードに置かれる。次いで、実行はステップ2000に戻る。
本明細書に概説した仕様、寸法、および関係の全て(例えば、要素、動作、ステップなどの数)は、例示および教示のみのためにのみ提供されていることに留意すべきである。このような情報は、本開示の趣旨、または添付請求項の範囲から逸脱することなく相当に変更され得る。仕様は1つの非限定的な例のみに当てはまり、それゆえに、仕様はそのようなものとして解釈されるべきである。上記の説明では、例示的な実施形態は、具体的な構成要素の配置に関連して説明されてきた。添付請求項の範囲から逸脱することなく、このような実施形態に対して様々な修正および変更を加え得る。それゆえに、本明細書および図面は、制限的な意味ではなく、例示的な意味で考慮されるべきである。
本明細書で提供されている多くの例において、相互作用は2つ、3つ、または4つ以上の電気構成要素に関して説明され得ることに留意されたい。しかしながら、これは明瞭性および例示のみのためになされている。システムは任意の好適な様式で統合することができることが理解されるべきである。同様の設計上の選択肢に沿って、図面に示される構成要素、モジュール、および要素のうちの任意のものが様々な可能な構成で組み合わされてもよく、その全ては明らかに本明細書の広範な範囲内にある。特定の場合には、限られた数の電気要素のみを参照することによって所与の一組のフローの機能のうち1つ以上を説明する方が容易であり得る。図面の電気回路およびその教示事項は容易に拡張可能であり、多数の構成要素、ならびにより複雑な/洗練された配置および構成に適応することができることが理解されるべきである。それゆえに、提供された例は、無数の他のアーキテクチャに潜在的に適用される電気回路の範囲を限定したり、またはその広範な教示を抑制したりすべきではない。
本明細書において「一実施形態」、「例示的な実施形態」、「ある実施形態」、「別の実施形態」、「いくつかの実施形態」、「様々な実施形態」、「他の実施形態」、「代替的な実施形態」などに含まれる様々な特徴(例えば、要素、構造、モジュール、構成要素、ステップ、動作、特性など)に対する言及は、任意のこのような特徴は本開示の1つ以上の実施形態に含まれるが、同じ実施形態で組み合わされてもよく、組み合わされなくてもよいことを意味することを意図することにも留意すべきである。
回路アーキテクチャに関係する機能は、図面に示されるシステムによって、またはその中で実行され得る可能な回路アーキテクチャ機能のうちのいくつかのみを例示していることにも留意すべきである。これらの動作のいくつかは、適宜削除もしくは除去されてもよく、またはこれらの動作は本開示の範囲から逸脱することなく相当に修正もしくは変更されてもよい。加えて、これらの動作のタイミングは相当に改変され得る。上記の動作フローは、例示および議論のために提供されている。本開示の教示から逸脱することなく任意の好適な配置、時間的順序、構成、およびタイミング機構が提供され得るので、本明細書に記載の実施形態によって相当の柔軟性が提供される。
当業者にとって多くの他の変更、置き換え、変形、改変、および修正が確認され得、本開示は全てのこのような変更、置き換え、変形、改変、および修正を添付請求項の範囲内に属するとして包含することが意図される。
上述のデバイスおよびシステムの全ての任意追加的な特徴も本明細書に記載の方法またはプロセスに対して実装されてもよく、例の詳細は1つ以上の実施形態のどこで使用されてもよいことに留意されたい。
(上記の)これらの例中の「〜のための手段」は、本明細書に記載の任意の好適な構成要素を、任意の好適なソフトウェア、回路、ハブ、コンピュータノード、ロジック、アルゴリズム、ハードウェア、コントローラ、インターフェース、リンク、バス、通信経路などと共に使用することを含むことができる(が、これらに限定されない)。
なお、上記で提供された例、および本明細書で提供される多数の他の例の場合、相互作用は、2つ、3つ、または4つのネットワーク要素に関して記載されてもよい。しかしながら、これは明瞭性および例示のみのためになされている。特定の場合には、特定の場合には、限られた数のネットワーク要素のみを参照することによって所与の一組のフローの機能のうち1つ以上を説明する方が容易であり得る。添付図面に例示され、添付図面に関連して説明されるトポロジー(およびそれらの教示)は、容易に拡張可能であり、多数の構成要素、ならびにより複雑な/洗練された配置および構成に適応することができることが理解されるべきである。それゆえに、提供された例は、無数の他のアーキテクチャに潜在的に適用される例示されたトポロジーの範囲を限定したり、またはその広範な教示を抑制したりすべきではない。
上記の流れ図中のステップは図面に示される通信システムによって、またはその中で実行され得る可能な信号伝達シナリオおよびパターンのうちのいくつかのみを例示することに留意することも重要である。これらのステップのいくつかは、適宜削除もしくは除去されてもよく、またはこれらのステップは本開示の範囲から逸脱することなく相当に修正もしくは変更されてもよい。加えて、いくつかのこれらの動作は、1つ以上の追加の動作と同時に、または並行して実行されているとして記載されている。しかしながら、これらの動作のタイミングは相当に改変され得る。上記の動作フローは、例示および説明のために提供されている。本開示の教示から逸脱することなく任意の好適な配置、時間的順序、構成、およびタイミング機構が提供され得るので、図面に示す通信システムによって相当の柔軟性が提供される。
本開示は特定の配置および構成に関連して詳細に説明されていが、これらの例示的な構成および配置は、本開示の範囲から逸脱することなく顕著に変更され得る。例えば、本開示は特定の通信交換に関連して説明されてきたが、本明細書に記載の実施形態は他のアーキテクチャに適用可能であってもよい。
当業者にとって多くの他の変更、置き換え、変形、改変、および修正が確認され得、本開示は全てのこのような変更、置き換え、変形、改変、および修正を添付請求項の範囲内に属するとして包含することが意図される。米国特許商標庁(USPTO)および、追加的に、本出願に基づいて発行される特許の読み手が本出願の添付請求項を解釈するのを助けるために、本出願人は、本出願人が、(a)「のための手段」または「のためのステップ」という文言が特定の請求項で明確に使用されていない限り、添付請求項のいずれかが本出願の出願日に存在する米国特許法第142条の第6段落に訴えることを意図しないこと、および(b)本明細書中のいずれの陳述によっても、添付請求項に別の点で反映されていないいずれかの方法で本開示を限定することを意図しないこと、を付記することを希望する。
100 システム
102 マスタノード
104 スレーブノード
106 バス
108 周辺機器
110 ホスト

Claims (20)

  1. 回路において、前記回路が第1のヒステリシスモードにある間に受信されたデータパケットを含むデータ信号の遷移を検出することと、
    前記検出の後に前記回路を第2のヒステリシスモードに置くことと、
    前記データパケットの受信の完了後に、次のデータパケットの受信を待機するように前記受信器を前記第1のヒステリシスモードに戻すことと、を含む方法。
  2. 前記第1のヒステリシスモードは高ヒステリシスモードであり、前記第2のヒステリシスモードは標準ヒステリシスモードである、請求項1に記載の方法。
  3. 前記第1のヒステリシスモードおよび前記第2のヒステリシスモードの各々のレベルは動的に調整可能である、請求項1に記載の方法。
  4. 前記データパケットの受信の前記完了は受信器イネーブル信号の無効化によって示される、請求項1に記載の方法。
  5. 前記遷移は前記データ信号のLOWからHIGHの遷移を含む、請求項1に記載の方法。
  6. 前記遷移は前記データ信号のHIGHからLOWの遷移を含む、請求項1に記載の方法。
  7. 前記遷移は前記データパケットの第1のエッジを含む、請求項1に記載の方法。
  8. 前記遷移は前記データ信号のN番目の遷移を含む、請求項1に記載の方法。
  9. 前記回路は比較器を含み、前記回路を前記第1のヒステリシスモードに戻すことは、前記比較器の帰還回路を含むデバイスの数を動的に減少させることを含む、請求項1に記載の方法。
  10. 前記回路は比較器を含み、前記回路を前記第2のヒステリシスモードに置くことは、前記比較器の帰還回路を含むデバイスの数を動的に増加させることを含む、請求項1に記載の方法。
  11. 回路において、前記回路が第1のヒステリシスモードにある間に受信されたデータパケットを含むデータ信号の遷移を検出するための回路と、
    前記検出の後に前記回路を第2のヒステリシスモードに置くための回路と、
    前記データパケットの受信の完了後に、次のデータパケットを待機するように前記受信器を前記第1のヒステリシスモードに戻すための回路と、を備える、装置。
  12. 前記第1のヒステリシスモードは高ヒステリシスモードであり、前記第2のヒステリシスモードは標準ヒステリシスモードであり、前記第1のヒステリシスモードおよび前記第2のヒステリシスモードの各々のレベルは動的に調整可能である、請求項11に記載の装置。
  13. 前記遷移は、LOWからHIGHの遷移およびHIGHからLOWの遷移の一方を含む、請求項11に記載の装置。
  14. 前記遷移は前記データパケットの第1のエッジを含む、請求項11に記載の装置。
  15. 前記遷移は前記データ信号のN番目の遷移を含む、請求項11に記載の装置。
  16. 前記回路は比較器を含み、前記回路を前記第1のヒステリシスモードに戻すことは、前記比較器の帰還回路を含むデバイスの数を動的に減少させることを含む、請求項11に記載の装置。
  17. 前記回路は比較器を含み、前記回路を前記第2のヒステリシスモードに置くことは、前記比較器の帰還回路を含むデバイスの数を動的に増加させることを含む、請求項11に記載の装置。
  18. 前置増幅器回路と、
    前置増幅器回路に接続された比較器コアと、
    複数の交差結合デバイスペアであって、前記比較器コアの帰還回路を提供するように接続される交差結合デバイスの数は、比較器回路のヒステリシスレベルを制御するように動的に制御可能である、複数の交差結合デバイスペアと、を備える、比較器回路。
  19. 前記比較器コアの帰還回路を提供するように接続される前記交差結合デバイスの数は、制御電流を介して動的に制御可能である、請求項18に記載の比較器回路。
  20. 前記交差結合デバイスペアの各々の一方のデバイスのみが、前記比較器コアの帰還回路を提供するように結合される、請求項18に記載の比較器回路。
JP2019069780A 2018-04-02 2019-04-01 動的ヒステリシス回路 Active JP6957549B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/943,341 2018-04-02
US15/943,341 US10374583B1 (en) 2018-04-02 2018-04-02 Dynamic hysteresis circuit

Publications (2)

Publication Number Publication Date
JP2019186933A true JP2019186933A (ja) 2019-10-24
JP6957549B2 JP6957549B2 (ja) 2021-11-02

Family

ID=67477666

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019069780A Active JP6957549B2 (ja) 2018-04-02 2019-04-01 動的ヒステリシス回路

Country Status (5)

Country Link
US (1) US10374583B1 (ja)
JP (1) JP6957549B2 (ja)
KR (1) KR102656961B1 (ja)
CN (1) CN110347627B (ja)
DE (1) DE102019107810A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10931476B2 (en) 2018-10-29 2021-02-23 Analog Devices Global Unlimited Company Content protection over synchronous data networks
CN110737625B (zh) * 2019-10-12 2021-03-23 浪潮集团有限公司 实现PXIe测控板卡模块中DAC同步的系统及方法
US11411607B2 (en) 2020-01-07 2022-08-09 Analog Devices, Inc. Audio and lighting control via a communication bus
CN114167783B (zh) * 2021-12-07 2024-06-11 宝星智能科技(上海)有限公司 一种模拟信号传输的二线制传感器网络系统及其测量方法
US11888498B2 (en) 2022-01-18 2024-01-30 Analog Devices International Unlimited Company Elimination of probability of bit errors in successive approximation register (SAR) analog-to-digital converter (ADC) logic

Family Cites Families (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4940907A (en) 1989-01-19 1990-07-10 Ford Motor Company Precision CMOS comparator with hysteresis
US5085224A (en) * 1990-05-25 1992-02-04 Hewlett-Packard Company Portable signalling unit for an ekg
US5155386A (en) 1991-06-03 1992-10-13 Motorola, Inc. Programmable hysteresis comparator
US5819051A (en) 1995-12-29 1998-10-06 Compaq Computer Corporation Low speed serial bus protocol and circuitry
JP2002171159A (ja) * 2000-12-04 2002-06-14 Matsushita Electric Ind Co Ltd コンパレータおよび光受信回路
US7315551B2 (en) 2002-03-15 2008-01-01 Lockheed Martin Corporation Synchronous low voltage differential I/O buss
US7158596B2 (en) 2002-08-14 2007-01-02 Standard Microsystems Corp. Communication system and method for sending and receiving data at a higher or lower sample rate than a network frame rate using a phase locked loop
US7272202B2 (en) 2002-08-14 2007-09-18 Standard Microsystems Corp. Communication system and method for generating slave clocks and sample clocks at the source and destination ports of a synchronous network using the network frame rate
US8667194B2 (en) 2003-12-15 2014-03-04 Finisar Corporation Two-wire interface in which a master component monitors the data line during the preamble generation phase for synchronization with one or more slave components
US7787527B2 (en) * 2005-09-19 2010-08-31 Broadcom Corporation Precise dynamic hysteresis
US7395362B2 (en) 2006-02-03 2008-07-01 Standard Microsystems Corporation Method for a slave device to convey an interrupt and interrupt source information to a master device
JP2007215102A (ja) 2006-02-13 2007-08-23 Denso Corp 通信装置
JP4918866B2 (ja) 2006-03-13 2012-04-18 ミツミ電機株式会社 通信装置、半導体集積回路装置及び通信システム
US7707437B2 (en) 2006-05-03 2010-04-27 Standard Microsystems Corporation Method, system, and apparatus for a plurality of slave devices determining whether to adjust their power state based on broadcasted power state data
US7966379B2 (en) 2006-05-05 2011-06-21 Standard Microsystems Corporation In-band event polling
US7953183B2 (en) * 2006-06-16 2011-05-31 Harman International Industries, Incorporated System for high definition radio blending
US20080048746A1 (en) 2006-08-25 2008-02-28 Microchip Technology Incorporated Hysteresis Comparator with Programmable Hysteresis Width
US7802036B2 (en) 2007-02-06 2010-09-21 Seiko Epson Corporation Serial communication system using an I2C bus as a serial bus
US7679418B2 (en) * 2007-04-27 2010-03-16 Mosaid Technologies Incorporated Voltage level shifter and buffer using same
US8806083B2 (en) 2007-05-15 2014-08-12 Texas Instruments Incorporated Identification address configuration circuit and method without use of dedicated address pins
WO2009008940A1 (en) * 2007-07-06 2009-01-15 Advanced Analogic Technologies, Inc. Boost and up-down switching regulator with synchronous freewheeling mosfet
AU2008221607A1 (en) 2007-09-25 2009-04-09 Acei Ab A gaming network
US8700830B2 (en) 2007-11-20 2014-04-15 Spansion Llc Memory buffering system that improves read/write performance and provides low latency for mobile systems
FR2927308B1 (fr) 2008-02-08 2010-10-22 Airbus France Systeme distribue de commande de vol.
GB2459304B (en) * 2008-04-18 2013-02-20 Nujira Ltd Improved pulse width modulation
US8185759B1 (en) 2008-11-06 2012-05-22 Smsc Holdings S.A.R.L. Methods and systems for interfacing bus powered devices with host devices providing limited power levels
JP4706761B2 (ja) * 2009-01-29 2011-06-22 日本テキサス・インスツルメンツ株式会社 受信回路
US8156274B2 (en) 2009-02-02 2012-04-10 Standard Microsystems Corporation Direct slave-to-slave data transfer on a master-slave bus
US8198920B2 (en) 2009-03-23 2012-06-12 Atmel Corporation Low current comparator with programmable hysteresis
US8615091B2 (en) 2010-09-23 2013-12-24 Bose Corporation System for accomplishing bi-directional audio data and control communications
EP2442587A1 (en) 2010-10-14 2012-04-18 Harman Becker Automotive Systems GmbH Microphone link system
JP5655562B2 (ja) 2010-12-28 2015-01-21 ソニー株式会社 電子機器、電子機器の制御方法、送信装置および受信装置
EP4180981A1 (en) 2011-10-05 2023-05-17 Analog Devices, Inc. Two-wire communication system for high-speed data and power distribution
US9448959B2 (en) 2012-10-05 2016-09-20 Analog Devices, Inc. Two-wire communication protocol engine
US8987933B2 (en) 2012-04-30 2015-03-24 Broadcom Corporation Power over one-pair Ethernet approach
FR2996322A1 (fr) 2012-10-02 2014-04-04 St Microelectronics Rousset Procede de gestion du fonctionnement d'un circuit connecte sur un bus a deux fils, en particulier un bus i²c, et circuit correspondant
US9772665B2 (en) 2012-10-05 2017-09-26 Analog Devices, Inc. Power switching in a two-wire conductor system
US9946680B2 (en) 2012-10-05 2018-04-17 Analog Devices, Inc. Peripheral device diagnostics and control over a two-wire communication bus
US8873659B2 (en) 2012-10-19 2014-10-28 Broadcom Corporation Reduced pair Ethernet transmission system
DE102013001385A1 (de) 2013-01-26 2014-07-31 Audi Ag Kraftfahrzeug und Mikrofon für eine Mikrofonanordnung in dem Kraftfahrzeug
US9514086B2 (en) 2013-03-13 2016-12-06 Atieva, Inc. Configuration switch for a broadcast bus
US9946675B2 (en) 2013-03-13 2018-04-17 Atieva, Inc. Fault-tolerant loop for a communication bus
US9229889B2 (en) 2013-03-13 2016-01-05 Atieva, Inc. Dual voltage communication bus
US9225556B2 (en) 2013-06-07 2015-12-29 Broadcom Corporation Multiplexed packet local area networking using an Ethernet physical layer device
US9059724B2 (en) 2013-07-08 2015-06-16 Analog Devices, Inc. Differential decoder
US9197226B2 (en) 2013-07-08 2015-11-24 Analog Devices, Inc. Digital phase detector
US20150032599A1 (en) 2013-07-23 2015-01-29 Xsolla ( USA) Inc. Computer-based method for sorting payment systems
CN105453169B (zh) 2013-08-12 2020-03-17 美国亚德诺半导体公司 噪声消除的系统和方法
US9225325B2 (en) 2013-08-30 2015-12-29 Brookhaven Science Associates, Llc Method and apparatus for sub-hysteresis discrimination
US8901980B1 (en) 2013-11-01 2014-12-02 Dialog Semiconductor Gmbh Dynamic hysteresis comparator
US9397622B2 (en) 2014-10-31 2016-07-19 Stmicroelectronics International N.V. Programmable hysteresis comparator
US10250376B2 (en) 2016-01-29 2019-04-02 Analog Devices, Inc. Clock sustain in the absence of a reference clock in a communication system
US10397021B2 (en) 2016-01-29 2019-08-27 Analog Devices, Inc. Synchronous slave-to-slave communications
US10872049B2 (en) 2016-01-29 2020-12-22 Analog Devices, Inc. GPIO-to-GPIO communication on a multi-node daisy-chained network
US9851938B2 (en) 2016-04-26 2017-12-26 Analog Devices, Inc. Microphone arrays and communication systems for directional reception
US20180060269A1 (en) 2016-08-25 2018-03-01 Analog Devices, Inc. Systems and techniques for remote bus enable
US10056842B2 (en) * 2016-09-12 2018-08-21 Semiconductor Components Industries, Llc Quasi-resonant valley lockout without feedback reference

Also Published As

Publication number Publication date
US10374583B1 (en) 2019-08-06
KR102656961B1 (ko) 2024-04-11
CN110347627B (zh) 2024-03-19
KR20190115427A (ko) 2019-10-11
DE102019107810A1 (de) 2019-10-02
CN110347627A (zh) 2019-10-18
JP6957549B2 (ja) 2021-11-02

Similar Documents

Publication Publication Date Title
KR102535076B1 (ko) 원격 버스 활성화를 위한 시스템들 및 기술들
US9946680B2 (en) Peripheral device diagnostics and control over a two-wire communication bus
JP6957549B2 (ja) 動的ヒステリシス回路
US9851938B2 (en) Microphone arrays and communication systems for directional reception
US10649945B1 (en) Non-native digital interface support over a two-wire communication bus
JP6345755B2 (ja) 高速データおよび配電のための2線式通信システム
US10852799B2 (en) Adaptive use of multiple power supplies in communication systems
US10856199B2 (en) Communication systems with auxiliary master and auxiliary call support functionality
US10931476B2 (en) Content protection over synchronous data networks
US11411607B2 (en) Audio and lighting control via a communication bus
US10884972B2 (en) Communication systems with serial peripheral interface functionality
CN109257260B (zh) 通信系统中多个电源的适应性应用
JP2023549799A (ja) マイクロフォンアレイ較正のためのシステム及び技法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190530

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190530

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200526

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200727

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201026

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20210308

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210706

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20210706

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20210719

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20210726

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: 20210906

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211006

R150 Certificate of patent or registration of utility model

Ref document number: 6957549

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150