JP2021536151A - Low power, high bandwidth, low latency data bus - Google Patents

Low power, high bandwidth, low latency data bus Download PDF

Info

Publication number
JP2021536151A
JP2021536151A JP2020565787A JP2020565787A JP2021536151A JP 2021536151 A JP2021536151 A JP 2021536151A JP 2020565787 A JP2020565787 A JP 2020565787A JP 2020565787 A JP2020565787 A JP 2020565787A JP 2021536151 A JP2021536151 A JP 2021536151A
Authority
JP
Japan
Prior art keywords
bus
data
master
slave
slave device
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
JP2020565787A
Other languages
Japanese (ja)
Other versions
JP7293257B2 (en
Inventor
ポールセン、イェンス・クリスチャン
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.)
Google LLC
Original Assignee
Google LLC
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
Priority claimed from US16/125,617 external-priority patent/US10734012B2/en
Application filed by Google LLC filed Critical Google LLC
Publication of JP2021536151A publication Critical patent/JP2021536151A/en
Priority to JP2023094095A priority Critical patent/JP2023123529A/en
Application granted granted Critical
Publication of JP7293257B2 publication Critical patent/JP7293257B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/162Interface to dedicated audio devices, e.g. audio drivers, interface to CODECs

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Dc Digital Transmission (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Information Transfer Systems (AREA)

Abstract

データバスが、第1通信プロトコルを用いるデジタル通信のための第1インターフェースに結合され、第2通信プロトコルを用いるマルチドロップバスを制御するマスターバスコントローラを備えているデバイスコントローラと、マルチドロップバスに結合され、第2通信プロトコルを用いて前記デバイスコントローラとのデジタル通信を送受信するように構成されたスレーブデバイスとを備えている。伝送線路の各端は、伝送線路の一端に取り付けられたデバイスと、他端に取り付けられた他のデバイスとによって終端されている。第2通信プロトコルは、固定のフレームフォーマットを用いながら複数データレートをサポートしている。安全な同期が、有効な候補を探索する代わりに全ての偽の位置をシステマチックに消滅させることで確立されてもよい。音声帯域におけるノイズは、擬似乱数生成器を用いてデータをスクランブルすることで低減されてもよい。【選択図】図1AThe data bus is coupled to the first interface for digital communication using the first communication protocol, and to the device controller having a master bus controller to control the multi-drop bus using the second communication protocol, and to the multi-drop bus. It includes a slave device configured to transmit and receive digital communication with the device controller using a second communication protocol. Each end of the transmission line is terminated by a device attached to one end of the transmission line and another device attached to the other end of the transmission line. The second communication protocol supports multiple data rates while using a fixed frame format. Secure synchronization may be established by systematically extinguishing all false positions instead of searching for valid candidates. Noise in the voice band may be reduced by scrambling the data using a pseudo-random number generator. [Selection diagram] FIG. 1A

Description

この出願は、2018年5月31日に出願された米国仮特許出願第62/678,993号及び2018年8月22日に出願された米国仮特許出願第62/721,412の優先権及び利益を主張するものであり、それらの出願のそれぞれは、参照することにより、その全体がそのまま本願に組み込まれる。 This application is the priority of US Provisional Patent Application No. 62 / 678,993 filed May 31, 2018 and US Provisional Patent Application No. 62 / 721,412 filed August 22, 2018. Claiming interests, each of those applications is incorporated herein by reference in its entirety.

この出願は、2018年9月7日に出願された米国特許出願第16/125,617号の部分継続出願であり、当該出願は、参照することにより、その全体がそのまま本願に組み込まれる。 This application is a partial continuation of US Patent Application No. 16 / 125,617 filed on September 7, 2018, which is incorporated herein by reference in its entirety.

本願は、全体としてはデータ通信に関しており、より具体的には、例えば、デバイス間のデジタルデータの通信のためのシステム及び方法に関する。 The present application relates to data communication as a whole, and more specifically to, for example, a system and method for communication of digital data between devices.

電子デバイスの間でデジタルデータを送受信するための様々なインターフェースが本技術では知られている。しかしながら、既存のインターフェースは、多くの近代的なシステムの全ての要求に合致しているわけではない。信頼性と良好な信号品質を維持し、低コスト、低電力デバイスへの要求に合致しながら、様々な接続デバイスのために高帯域幅の通信を可能にすることが望ましい場合がしばしばある。例えば、動的ノイズキャンセレーション(ANC)ヘッドセットは、複雑で高価な装備を要求することがあり、ANCヘッドセットとホストデバイスの間で高帯域幅の通信を行うことは、ホストデバイス上でノイズキャンセレーション信号を処理する等のある種のアプリケーションにとって望ましい場合がある。 Various interfaces for sending and receiving digital data between electronic devices are known in this technology. However, existing interfaces do not meet all the requirements of many modern systems. It is often desirable to enable high bandwidth communication for a variety of connected devices while maintaining reliability and good signal quality to meet the demands of low cost, low power devices. For example, dynamic noise canceling (ANC) headsets can require complex and expensive equipment, and high bandwidth communication between an ANC headset and a host device can be noise on the host device. It may be desirable for certain applications such as processing cancellation signals.

いくつかのアプローチでは、高帯域幅の通信は、レシーバで終端するデジタル通信リンクを介して行われる。これらのアプローチは、ある種の構成について満足のいく信号インテグリティを提供することがあるが、同時に低電力消費の要求がある場合には、レシーバ終端における固定的な電力消費は好ましくない場合がある。更に、これらのアプローチの多くは、低遅延データ転送のために最適化されていない。なぜなら、データ通信は、デジタル通信リンクを介して転送するのにサンプル期間を丸々要することがあるからである。一部のシステムには、しばしば、複数デバイスへの接続をサポートしたり、特定の長さの要求(例えば、1〜2メートル)を満たす物理的リンクをサポートしたりするような追加の要求がある。追加の要求は、接続デバイス間の通信、異なるデバイス種類をサポートし、適合することへの柔軟性、及び、データがシリアル化されたフォーマットで輸送されるシステムにおいてバルクデータ転送を含む様々なデータ転送実装をサポートすることを含むことがある。 In some approaches, high bandwidth communication is done over a digital communication link that terminates at the receiver. While these approaches may provide satisfactory signal integrity for certain configurations, fixed power consumption at the receiver termination may not be preferred if there is a demand for low power consumption at the same time. Moreover, many of these approaches are not optimized for low latency data transfer. This is because data communication can take an entire sample period to transfer over a digital communication link. Some systems often have additional requirements, such as supporting connections to multiple devices or supporting physical links that meet specific length requirements (eg 1-2 meters). .. Additional requirements include communication between connected devices, support for different device types, flexibility to fit, and various data transfers, including bulk data transfers in systems where data is transported in serialized format. May include supporting implementation.

上記の点からみて、本技術においては、デジタルデータ通信システム及び方法の向上に対する継続した要求がある。 In view of the above, there is a continuous demand for improvements in digital data communication systems and methods in this technology.

本開示は、物理的に接続されたデバイス間でのデジタルデータ通信の向上という本技術における要求に対応するシステム及び方法を提供する。様々な実施形態において、データバスシステム及び方法は、第1通信プロトコルに従ってデジタル音声データ通信を行うための第1インターフェースに接続されたデバイスコントローラを備えている。デバイスコントローラは、第2通信プロトコルに従ってマルチドロップバスを制御するマスターバスコントローラを備えている。第1スレーブデバイスは、マルチドロップバスに接続されており、第2通信プロトコルに従ってデバイスコントローラとのデジタル音声データ通信を送受信するように構成されている。各伝送線路は該伝送線路の一端に取り付けられたデバイスを用い、他端に取り付けられた他のデバイスによって終端されている。中間シグナリングノードを含むことによるインピーダンス不整合による反射は、マルチドロップデバイスへの対応及び高速な信号伝送が可能であるように制御される。第2通信プロトコルは、固定のフレームフォーマットを用いながら複数の音声データレートをサポートしていてもよい。 The present disclosure provides systems and methods that meet the demands of the art for improving digital data communication between physically connected devices. In various embodiments, the data bus system and method comprises a device controller connected to a first interface for performing digital voice data communication according to a first communication protocol. The device controller includes a master bus controller that controls the multi-drop bus according to the second communication protocol. The first slave device is connected to the multi-drop bus and is configured to send and receive digital voice data communication with the device controller according to the second communication protocol. Each transmission line uses a device attached to one end of the transmission line and is terminated by another device attached to the other end. Reflections due to impedance mismatch due to the inclusion of intermediate signaling nodes are controlled to accommodate multi-drop devices and enable high speed signal transmission. The second communication protocol may support multiple voice data rates while using a fixed frame format.

いくつかの実施形態では、第1スレーブデバイスとバスに接続された第2スレーブデバイスとは、送信されたメッセージが、一連の前進又は後進伝搬波として送られるようにタイミングが取られ、これにより、終端された伝送線路を用いたマルチドロップ高速双方向通信が可能になる。一実施形態では、差動シグナリングが通信に用いられ、コモンモード干渉を低減するために、一の線路が論理ハイに終端され、一の線路が論理ローに終端される。一実施形態では、差動シグナリングがEMIを低減するために用いられ、データが伝送されずバスが空いているときに、終端レベルに従ってハイレベルとローレベルのうちの一に出力ドライバを設定することによって各伝送線路の終端が処理される。これにより、伝送終点による電力消費の低減が可能になる。 In some embodiments, the first slave device and the second slave device connected to the bus are timed so that the transmitted message is sent as a series of forward or backward propagating waves, thereby. Multi-drop high-speed bidirectional communication using a terminated transmission line becomes possible. In one embodiment, differential signaling is used for communication, one line is terminated to logical high and one line is terminated to logical low to reduce common mode interference. In one embodiment, differential signaling is used to reduce EMI and set the output driver to one of high and low levels according to the termination level when no data is transmitted and the bus is free. Processes the termination of each transmission line. This makes it possible to reduce the power consumption due to the transmission end point.

いくつかの実施形態では、伝送線路上の中間ノードが、伝搬波に短い中断を生じさせるように、かつ、スタブ及び/又は伝送線路の途絶が信号伝送に用いられる最短波長よりも極めて短い(例えば、最短波長の1/50未満)という要請と共に、伝送線路に接続される。出力終端レベルが最終的な出力状態レベル(休止レベル)に等しいという条件で、電力消費が、最小の要求信号伝送レートよりも高い信号伝送レートを用い、各クロックサイクル又は各フレームの一部でバスを休止しておくことで低減され、これにより、終端における電力ロスを低減する。信号伝送のために必要な電力が容量型又は誘導型降下レギュレータによって得られ、これにより、レギュレータにおける電力ロスを最小にしてもよい。バスにおける伝送電圧を低減することにより、電力消費が更に限定されることがあり、差動シグナリングが、システムが外部ノイズ及びEMIに対して頑強でありながら低電圧信号伝送を可能にするように用いられてもよい。 In some embodiments, the intermediate node on the transmission line causes a short interruption in the propagated wave, and the stub and / or transmission line interruption is much shorter than the shortest wavelength used for signal transmission (eg,). , Less than 1/50 of the shortest wavelength), connected to the transmission line. Bus at each clock cycle or part of each frame, with a signal transmission rate whose power consumption is higher than the minimum required signal transmission rate, provided that the output termination level is equal to the final output state level (pause level). Is reduced by pausing, thereby reducing power loss at the end. The power required for signal transmission is obtained by a capacitive or inductive descent regulator, which may minimize power loss in the regulator. Power consumption may be further limited by reducing the transmission voltage on the bus, and differential signaling is used to allow the system to transmit low voltage signals while being robust against external noise and EMI. May be done.

いくつかの実施形態では、コンポーネント間の遅延が、バスを既知の値にチャージし、バスがフローティングになり測定の間に終端されないことを保証するために、伝送線路の始点及び終点にあるドライバを無効にし、デバイスがバスにおけるレベルを変化させるのを待ち、遷移遅延を測定することで測定される。伝送線路の各端のドライバは、複数のドライバに現在のバス状態を変更することを許可することにより、バスに接続されたコンポーネントの計数の間、無効にされてもよい。現在のバス状態は、コントローラによって設定されてもよく、デバイスの計数を許可する所定の時間ウィンドウにおいて、一以上のデバイスが反対の値に伝送線路を変化することがある。デバイスコントローラは、更に、第1通信プロトコルによる通信を同期するための第1クロック信号と、第2通信プロトコルによる通信を同期するための第2クロック信号と、音声データ処理に用いられる第3クロック信号とを提供する位相同期ループ(PLL)又は遅延同期ループを更に備えていてもよい。 In some embodiments, the delay between the components charges the bus to a known value, and the drivers at the start and end of the transmission line are used to ensure that the bus floats and is not terminated during the measurement. It is measured by disabling it, waiting for the device to change levels on the bus, and measuring the transition delay. Drivers at each end of the transmission line may be disabled during the counting of components connected to the bus by allowing multiple drivers to change the current bus state. The current bus state may be set by the controller, and one or more devices may change transmission lines to opposite values in a given time window that allows device counting. The device controller further includes a first clock signal for synchronizing communication according to the first communication protocol, a second clock signal for synchronizing communication according to the second communication protocol, and a third clock signal used for voice data processing. It may further include a phase-locked loop (PLL) or a delayed synchronization loop that provides.

様々な実施形態において、第2通信プロトコルは、固定のフレーム構造を用いながら異なる通信帯域幅をサポートしている。いくつかの実施形態では、データポートまたは各同期信号に続くデータが高周波搬送波又は擬似乱数生成器によって変調され、これにより、音声システムにおける干渉の低減のために音声帯域幅における電流変調を低減する。デバイスコントローラ、第1スレーブデバイス及び第2スレーブデバイスは、音声ヘッドセット又は他の音声聴取装置を備えていてもよい。いくつかの実施形態では、電力消費の低減のために、トランスミッタの活性化の間、伝送線路の端における終端が一時的に無効にされる。 In various embodiments, the second communication protocol supports different communication bandwidths while using a fixed frame structure. In some embodiments, the data following the data port or each sync signal is modulated by a high frequency carrier or pseudo-random number generator, thereby reducing current modulation in the voice bandwidth to reduce interference in the voice system. The device controller, the first slave device and the second slave device may be equipped with a voice headset or other voice listening device. In some embodiments, terminations at the ends of the transmission line are temporarily disabled during transmitter activation to reduce power consumption.

様々な実施形態において、方法が、第1通信プロトコルに従って第1インターフェースを通じてデジタル音声データを送受信することと、第2通信プロトコルに従ってデバイスコントローラを用いてマルチドロップバスを制御することと、マルチドロップバスに接続された第1スレーブデバイスを用いることと、第2通信プロトコルに従ってデバイスコントローラを用いてデジタル音声データを送受信することと、任意の信号の終端を可能にするために、伝送線路の各端のトランスミッタを既知の状態に設定することとを含む。いくつかの実施形態では、第2通信プロトコルは、固定のフレームフォーマットを用いながら複数の音声データレートをサポートしていてもよい。 In various embodiments, the method is to send and receive digital voice data through the first interface according to the first communication protocol, to control the multi-drop bus using a device controller according to the second communication protocol, and to the multi-drop bus. Transmitters at each end of the transmission line to allow the use of connected first slave devices, the transmission and reception of digital audio data using the device controller according to the second communication protocol, and the termination of arbitrary signals. Includes setting to a known state. In some embodiments, the second communication protocol may support multiple voice data rates while using a fixed frame format.

当該方法は、更に、位相同期又は遅延同期ループを用いて、第1通信プロトコルに従った通信を同期するための第1クロック信号と、第2通信プロトコルに従った通信を同期するための第2クロック信号と、音声データ処理に用いられる第3クロック信号とを、生成することを含んでいてもよい。いくつかの実施形態では、第2通信プロトコルが、固定のフレーム構造を用いながら異なる通信帯域幅をサポートしている。スペクトル拡散によって放射されるEMIを低減するためにPLL又はDLLにディザが加えられてもよい。バス上を伝送されるデータは、音声帯域におけるスペクトル成分を低減するために、送信時にスクランブルされ、受信時にデスクランブルされてもよい。 The method further uses a phase synchronization or delay synchronization loop to synchronize the first clock signal for synchronizing the communication according to the first communication protocol with the second communication for synchronizing the communication according to the second communication protocol. It may include generating a clock signal and a third clock signal used for audio data processing. In some embodiments, the second communication protocol supports different communication bandwidths while using a fixed frame structure. Dither may be added to the PLL or DLL to reduce the EMI emitted by spectral diffusion. The data transmitted over the bus may be scrambled at the time of transmission and descrambled at the time of reception in order to reduce the spectral components in the voice band.

発明の範囲は、特許請求の範囲によって規定され、特許請求の記載は、参照することで本項に組み込まれる。発明の実施形態のより完全な理解は、以下に記載した、一以上の実施形態の詳細な説明を考慮することで、その追加の利点の実現と共に当業者に与えられるであろう。以下では、最初に簡潔に説明する図面の添付シートが参照される。 The scope of the invention is defined by the scope of claims, and the description of the claims is incorporated herein by reference. A more complete understanding of the embodiments of the invention will be given to those skilled in the art by considering the detailed description of one or more embodiments described below, along with the realization of its additional benefits. In the following, the attached sheet of the drawing, which is briefly described at the beginning, is referred to.

図1Aは、一以上の実施形態による、例示的なバスインターフェースシステムである。FIG. 1A is an exemplary bus interface system according to one or more embodiments.

図1Bは、一以上の実施形態による例示的なヘッドセットを図示している。FIG. 1B illustrates an exemplary headset with one or more embodiments. 図1Cは、一以上の実施形態による例示的なヘッドセットを図示している。FIG. 1C illustrates an exemplary headset with one or more embodiments.

図2Aは、一以上の実施形態による例示的なバスインターフェースシステムである。FIG. 2A is an exemplary bus interface system according to one or more embodiments.

図2Bは、一以上の実施形態による例示的なヘッドセットを図示している。FIG. 2B illustrates an exemplary headset with one or more embodiments.

図3は、一以上の実施形態による例示的なタイミングシーケンスを図示している。FIG. 3 illustrates an exemplary timing sequence according to one or more embodiments.

図4は、一以上の実施形態による、時間ゲーティングが行われる例示的な位相同期ループ(PLL)を図示している。FIG. 4 illustrates an exemplary phase-locked loop (PLL) in which time gating is performed according to one or more embodiments.

図5Aは、一以上の実施形態による例示的なクロックソルーションを図示している。FIG. 5A illustrates an exemplary clock solution according to one or more embodiments. 図5Bは、一以上の実施形態による例示的なクロックソルーションを図示している。FIG. 5B illustrates an exemplary clock solution according to one or more embodiments.

図6Aは、一以上の実施形態による例示的なクロックソルーションを図示している。FIG. 6A illustrates an exemplary clock solution according to one or more embodiments. 図6Bは、一以上の実施形態による例示的なクロックソルーションを図示している。FIG. 6B illustrates an exemplary clock solution according to one or more embodiments.

図7は、一以上の実施形態による例示的なクロックソルーションを図示している。FIG. 7 illustrates an exemplary clock solution according to one or more embodiments.

図8Aは、一以上の実施形態による例示的なクロックソルーションを図示している。FIG. 8A illustrates an exemplary clock solution according to one or more embodiments. 図8Bは、一以上の実施形態による例示的なクロックソルーションを図示している。FIG. 8B illustrates an exemplary clock solution according to one or more embodiments.

図9Aは、一以上の実施形態による例示的なフレーム構造を図示している。FIG. 9A illustrates an exemplary frame structure according to one or more embodiments. 図9Bは、一以上の実施形態による例示的なフレーム構造を図示している。FIG. 9B illustrates an exemplary frame structure according to one or more embodiments. 図9Cは、一以上の実施形態による例示的なフレーム構造を図示している。FIG. 9C illustrates an exemplary frame structure according to one or more embodiments. 図9Dは、一以上の実施形態による例示的なフレーム構造を図示している。FIG. 9D illustrates an exemplary frame structure according to one or more embodiments. 図9Eは、一以上の実施形態による例示的なフレーム構造を図示している。FIG. 9E illustrates an exemplary frame structure according to one or more embodiments. 図9Fは、一以上の実施形態による例示的なフレーム構造を図示している。FIG. 9F illustrates an exemplary frame structure according to one or more embodiments.

図10Aは、一以上の実施形態による、接続されたデバイスの遅延測定のための方法を図示している。FIG. 10A illustrates a method for measuring the delay of a connected device according to one or more embodiments.

図10Bは、一以上の実施形態による、接続されたデバイスの計数のための方法を図示している。FIG. 10B illustrates a method for counting connected devices according to one or more embodiments.

図11Aは、一以上の実施形態による例示的な双方向通信配置を図示している。FIG. 11A illustrates an exemplary bidirectional communication arrangement according to one or more embodiments.

図11Bは、一以上の実施形態による、差動シグナリング、同期、及びデジタルデータ通信の例を図示している。FIG. 11B illustrates examples of differential signaling, synchronization, and digital data communication according to one or more embodiments.

図11Cは、一以上の実施形態による差動シグナリングシステムの例を図示している。FIG. 11C illustrates an example of a differential signaling system according to one or more embodiments.

図11Dは、一以上の実施形態による差動シグナリングシステムの他の例を図示している。FIG. 11D illustrates another example of a differential signaling system according to one or more embodiments.

図12は、一以上の実施形態による例示的なPLLロックシーケンスを図示している。FIG. 12 illustrates an exemplary PLL lock sequence according to one or more embodiments.

図13は、一以上の実施形態による例示的なPLL同期イネーブル回路である。FIG. 13 is an exemplary PLL synchronization enable circuit according to one or more embodiments.

図14は、一以上の実施形態による例示的な同期シグナリングを図示している。FIG. 14 illustrates exemplary synchronous signaling according to one or more embodiments.

図15は、一以上の実施形態によるデジタルデータ通信システムの例示的な動作を図示している。FIG. 15 illustrates an exemplary operation of a digital data communication system according to one or more embodiments.

図16Aは、一以上の実施形態において用いられ得る例示的なフレーム構造を図示している。FIG. 16A illustrates an exemplary frame structure that can be used in one or more embodiments. 図16Bは、一以上の実施形態において用いられ得る例示的なフレーム構造を図示している。FIG. 16B illustrates an exemplary frame structure that can be used in one or more embodiments. 図16Cは、一以上の実施形態において用いられ得る例示的なフレーム構造を図示している。FIG. 16C illustrates an exemplary frame structure that can be used in one or more embodiments.

図17は、一以上の実施形態による例示的なフレームを図示している。FIG. 17 illustrates an exemplary frame according to one or more embodiments.

図18Aは、一以上の実施形態による、バルク転送を含む読み出し及び書き込み動作のための例示的なフレーム構成を図示している。FIG. 18A illustrates an exemplary frame configuration for read and write operations, including bulk transfer, according to one or more embodiments. 図18Bは、一以上の実施形態による、バルク転送を含む読み出し及び書き込み動作のための例示的なフレーム構成を図示している。FIG. 18B illustrates an exemplary frame configuration for read and write operations, including bulk transfer, according to one or more embodiments. 図18Cは、一以上の実施形態による、バルク転送を含む読み出し及び書き込み動作のための例示的なフレーム構成を図示している。FIG. 18C illustrates an exemplary frame configuration for read and write operations, including bulk transfer, according to one or more embodiments.

図19は、一以上の実施形態による例示的なフレーム同期アルゴリズムを図示している。FIG. 19 illustrates an exemplary frame synchronization algorithm according to one or more embodiments.

含まれている図面は、説明のための目的であり、前後関係に応じた音声処理を提供するための開示された方法及びシステムのための可能なシステム及び方法の例を提供するのみの役割をするものである。これらの図面は、決して、本開示の要旨及び範囲から離れることなく当業者によって開示されたものに対し、形態及び詳細における如何なる変更を制限するものではない。 The drawings included are for illustration purposes only and serve only to provide examples of disclosed methods and possible systems and methods for providing contextual audio processing. It is something to do. These drawings by no means limit any changes in form and detail to those disclosed by one of ordinary skill in the art without departing from the gist and scope of this disclosure.

本開示は、本技術における、電子デバイス間のデジタルデータ通信の向上の要求に対応する。様々な実施形態において、物理的データリンクを介して接続されたマスターデバイス及び一以上のスレーブデバイスの間で低電力、高帯域幅、マルチドロップ及び/又は低遅延通信を提供するためのシステム及び方法が開示される。本開示は、低電力消費、高帯域幅と長いリンク長の組み合わせ、低くより制御された遅延、ポイントツーポイント接続に加えてマルチドロップトポロジーのサポート、及び、簡単なデバイス間同期を含む、従来のシステム及び方法に対しての多くの利点を提供する。 The present disclosure addresses the demand for improved digital data communication between electronic devices in the present technology. In various embodiments, systems and methods for providing low power, high bandwidth, multi-drop and / or low latency communication between a master device and one or more slave devices connected via a physical data link. Will be disclosed. The present disclosure includes conventional low power consumption, a combination of high bandwidth and long link length, lower and more controlled latency, support for multi-drop topologies in addition to point-to-point connectivity, and easy device-to-device synchronization. It provides many advantages over the system and method.

様々な実施形態において、ビットを早く伝送し、その後、クロックサイクルの残り又はフレームの期間の残りの間はバスを休止しておくプロセスを通じて、終端されたデバイスについてさえも低電力が得られる。反対の極性で終端された差動データバスは、低電力動作及び低電磁妨害(EMI)を容易にする。本開示は、また、終端されていない端を有する構成における低電力消費を容易にする。ここで、高周波クロック又はタイミング要素が、データが1以上の時間単位において受信可能であることを確実にするために用いられ、これにより、物理システムを変更することなく、高い信号−ノイズ比(SNR)と高いデータレートの間の選択が可能になる。例えば、複数のタイムスロットが、帯域幅と信号インテグリティの間の折衷を可能にするために各シンボルを規定するために用いられてもよい。 In various embodiments, low power is obtained even for terminated devices through the process of transmitting bits faster and then suspending the bus for the rest of the clock cycle or the rest of the frame period. Differential data buses terminated with opposite polarities facilitate low power operation and low electromagnetic interference (EMI). The present disclosure also facilitates low power consumption in configurations with unterminated ends. Here, a high frequency clock or timing element is used to ensure that the data is receivable in one or more time units, thereby resulting in a high signal-to-noise ratio (SNR) without altering the physical system. ) And a high data rate can be selected. For example, multiple time slots may be used to define each symbol to allow a compromise between bandwidth and signal integrity.

本開示は、更に、低EMIのためのコモンシグナリングの低減を確保するために、マルチドロップ差動長線路長バスに、端部トランスミッタを実際の終端として用い、逆の終端極性を用いる複数のデバイスを設ける。接続デバイスの同期のためのアルゴリズムは、期待されたパターンに従って変化しないタイムスロットを発見することと、安全な同期のために無効な位置を全てシステマチックに消滅させることとを含む。このようにして、ある種のシステムの実装は、任意のランダムデータを用いてもなお安全な同期を保証可能にする。探索は、単一の同期候補しか残っていないときに最初に終了されるであろうし、よって、如何なるランダムデータも、偽同期を引き起こさない。また、バストラフィックと独立してメモリモジュール間の転送を容易化するために、バルクデータ転送のためのアルゴリズムが提供される。いくつかの実施形態では、EMIの低減が、システムクロックにディザを加えることで達成される。音声帯域における干渉は、送信の前にデータシンボルをスクランブルし、(元の値を得るために)受信後に値をデスクランブルすることによって低減されてもよい。本開示のこれら及び他の特徴及び利点は、下記の開示を参照することで理解されるであろう。 The present disclosure further discloses a plurality of devices using an end transmitter as the actual termination and the opposite termination polarity in a multi-drop differential long line length bus to ensure reduction of common signaling for low EMI. Is provided. Algorithms for synchronizing connected devices include finding time slots that do not change according to the expected pattern and systematically eliminating all invalid positions for secure synchronization. In this way, some system implementations can still guarantee secure synchronization with arbitrary random data. The search will be terminated first when only a single synchronization candidate remains, so no random data will cause false synchronization. Also, algorithms for bulk data transfer are provided to facilitate transfer between memory modules independently of bus traffic. In some embodiments, the reduction of EMI is achieved by adding dither to the system clock. Interference in the voice band may be reduced by scrambling the data symbol prior to transmission and descramble the value after reception (to obtain the original value). These and other features and advantages of this disclosure will be understood by reference to the disclosure below.

本明細書には、様々な実施形態が開示されている。一実施形態では、システムが、複数のタイムスロットを備える通信プロトコルを用いてデジタル通信を行うためのマルチドロップバスに結合されたマスターデバイスと、該マルチドロップバスに結合され、該通信プロトコルに従ってマスターデバイスとのデジタル通信を送受信するように構成された第1スレーブデバイスとを備えている。タイムスロットの少なくとも一つは、動的に帯域幅及び/又は信号インテグリティを最適化するために第1スレーブデバイスのための通信設定を規定するために用いられる。マルチドロップバスは、2つの信号線上で異なる電圧レベルに終端された差動データバスであり、これにより、低電力動作及び低電磁妨害を容易化する。一態様では、該マルチドロップバスは、端部トランスミッタを用いて複数のスレーブデバイスを受信するように構成されたマルチドロップ差動長線路長バスである。必要とされる信号伝送レートよりも高い信号伝送レートで動作し、該マルチドロップバスを各サイクルの一部で休止しておくことで、電力消費が低減される。 Various embodiments are disclosed herein. In one embodiment, a master device coupled to a multi-drop bus for performing digital communication using a communication protocol having a plurality of time slots and a master device coupled to the multi-drop bus according to the communication protocol. It includes a first slave device configured to send and receive digital communication. At least one of the time slots is used to define the communication settings for the first slave device to dynamically optimize bandwidth and / or signal integrity. The multi-drop bus is a differential data bus terminated at different voltage levels on the two signal lines, thereby facilitating low power operation and low electromagnetic interference. In one aspect, the multi-drop bus is a multi-drop differential length line length bus configured to receive multiple slave devices using end transmitters. Power consumption is reduced by operating at a signal transmission rate higher than the required signal transmission rate and suspending the multi-drop bus as part of each cycle.

一実施形態では、システムが、更に、期待された固定パターンに従って変化していないタイムスロットを特定し、安全な同期のために無効な位置を消滅させることを含みながら、2以上の接続デバイスを同期するように構成されている。該システムは、更に、マルチドロップバスのデジタル通信トラフィックと無関係にバルクデータ転送を容易化するように構成されている。他の態様では、第1スレーブデバイスと該バスに接続された第2スレーブデバイスとが、送信されたメッセージが一連の前進又は後進伝搬波として送られるようにタイミングが取られ、これにより、終端された伝送線路を用いたマルチドロップ高速双方向通信を可能にする。マルチドロップバス上の中間ノードが、伝搬波に短い中断を生じさせるようにマルチドロップバスに接続され、中間ノードに起因する伝送線路への途絶の物理的な長さが、信号伝送に用いられる最短波長よりも短い。 In one embodiment, the system further synchronizes two or more connected devices, including identifying time slots that have not changed according to the expected fixed pattern and eliminating invalid positions for secure synchronization. It is configured to do. The system is further configured to facilitate bulk data transfer independent of multi-drop bus digital communication traffic. In another aspect, the first slave device and the second slave device connected to the bus are timed so that the transmitted message is sent as a series of forward or backward propagating waves, thereby terminating. Enables multi-drop high-speed bidirectional communication using a transmission line. An intermediate node on the multi-drop bus is connected to the multi-drop bus so as to cause a short interruption in the propagating wave, and the physical length of the interruption to the transmission line due to the intermediate node is the shortest used for signal transmission. Shorter than the wavelength.

いくつかの実施形態では、デバイス間の遅延が、バスを既知の値にチャージし、バスをフローティングにして測定の間、終端されないようにバスの始点及び終点のドライバを無効にし、デバイスがバス上のレベルを変化させることを待ち、遷移遅延を測定することにより測定される。PLL又はDLLが、マスターデバイスと第1スレーブデバイスの間のロックを得るために用いられる。システムタイミングが、マスターデバイス及び/又は第1スレーブデバイスに設けられたフラクショナルPLLから得られ、擬似乱数生成器からの出力を分数加算器に加えることによりPLLがディザリングされ、これによりEMIを低減する。一実施形態では、擬似乱数生成器が、一以上のデータポートの出力をスクランブルするように構成され、これにより、出力スペクトルを白色化することでEMIの低減を可能にする。PLL及び/又はDLLは、PLLがランダムなバストラフィックにロックすることを避けるために、PLLの初期ロックの間に有効にされ、その後、同期情報を通過させるのみになる時間ゲートを備えていてもよい。 In some embodiments, delays between devices charge the bus to known values, float the bus and disable drivers at the start and end points of the bus so that they are not terminated during the measurement, and the device is on the bus. It is measured by waiting for the level to change and measuring the transition delay. A PLL or DLL is used to obtain a lock between the master device and the first slave device. The system timing is obtained from the fractional PLL provided on the master device and / or the first slave device, and the PLL is dithered by adding the output from the pseudo-random number generator to the fractional adder, thereby reducing the EMI. In one embodiment, the pseudo-random number generator is configured to scramble the outputs of one or more data ports, thereby whitening the output spectrum and enabling reduction of EMI. Even if the PLL and / or DLL has a time gate that is enabled during the initial lock of the PLL to prevent the PLL from locking to random bus traffic and then only passes synchronization information. good.

様々な実施形態において、方法が、複数のタイムスロットを備える通信プロトコルを用いたデジタル通信のためのマルチドロップバスに結合されたマスターデバイスを提供することと、第1スレーブデバイスをマルチドロップバスに結合して、該通信プロトコルに従ってマスターデバイスとのデジタル通信を送受信するように該スレーブデバイスを設定することと、タイムスロットの少なくとも一つを用いて、動的に帯域幅及び/又は信号インテグリティを最適化するように第1スレーブデバイスの通信設定を規定することとを含む。当該方法は、更に、マルチドロップデータバスを逆極性に終端された差動データバスとして動作させることを含んでいてもよく、これにより、低電力動作及び低電磁妨害を容易化し、及び/又は期待された固定パターンに従って変化しないタイムスロットを特定し、安全な同期に無効な位置を消滅させることを含む2以上の接続デバイスの同期を行ってもよい。当該方法のいくつかの実施形態では、第1スレーブデバイスとバスに接続された第2スレーブデバイスとが、送信されたメッセージが、一連の前進又は後進伝搬波として送られるようにタイミングが取られ、これにより、終端された伝送線路を用いたマルチドロップ高速双方向通信が可能になる。 In various embodiments, the method provides a master device coupled to a multi-drop bus for digital communication using a communication protocol with multiple time slots, and a first slave device coupled to the multi-drop bus. The slave device is configured to send and receive digital communication with the master device according to the communication protocol, and at least one of the time slots is used to dynamically optimize bandwidth and / or signal integrity. Includes specifying the communication settings of the first slave device. The method may further include operating the multi-drop data bus as a differentially terminated differential data bus, thereby facilitating and / or expecting low power operation and low electromagnetic interference. Two or more connected devices may be synchronized, including identifying a time slot that does not change according to a fixed pattern and eliminating invalid positions for secure synchronization. In some embodiments of the method, the first slave device and the second slave device connected to the bus are timed so that the transmitted message is sent as a series of forward or backward propagating waves. This enables multi-drop high-speed bidirectional communication using a terminated transmission line.

図1Aを参照して、本開示の一以上の実施形態による、例示的な音声システム100を説明する。システム100は、ホストデバイス110と少なくとも一の接続デバイス130とを備えている。ホストデバイス110は、音声データを接続デバイス130に送信し又は接続デバイス130から受信するように構成されている任意の電子デバイス、例えば、スマートフォン、タブレットコンピューター、ラップトップコンピューター、自動車用音声インターフェース、音声会議システム、音声再生システム又は他の電子デバイスであってもよい。接続デバイス130は、音声データを送信し、受信し、及び/又は処理するように構成された1以上の電子デバイスを備えていてもよく、例えば、一以上のマイクロホン、ラウドスピーカー又は音声処理システムを備えていてもよい。本実施形態では、音声通信を参照して議論されるが、本明細書に記述されているシステム及び方法は、本開示に従って他の電子デバイス及びデータ種類について実施されてもよいと理解されよう。 An exemplary voice system 100 according to one or more embodiments of the present disclosure will be described with reference to FIG. 1A. The system 100 includes a host device 110 and at least one connecting device 130. The host device 110 is any electronic device configured to send or receive audio data to or receive from the connected device 130, such as a smartphone, tablet computer, laptop computer, automotive voice interface, voice conferencing. It may be a system, audio reproduction system or other electronic device. The connected device 130 may include one or more electronic devices configured to transmit, receive, and / or process audio data, eg, one or more microphones, loudspeakers, or audio processing systems. You may be prepared. Although discussed with reference to voice communications in this embodiment, it will be appreciated that the systems and methods described herein may be implemented for other electronic devices and data types in accordance with the present disclosure.

図示されている実施形態では、ホストデバイス110は、アプリケーションプロセッサ112と、音声コーデック114と、インターフェースコンポーネント116とを備えている。アプリケーションプロセッサ112は、ホストデバイス110と接続デバイス130との間のデジタル音声データ通信を制御する。音声コーデック114は、ホストデバイス110の要求に従って音声入力処理及び/又は音声出力処理を行う。インターフェースコンポーネント116は、ケーブル120及び互換コネクタを介してホストデバイス110と接続デバイス130との間の物理的接続を容易化する。様々な実施形態において、インターフェースコンポーネント116は、コネクタを受け入れるポートと、それに対応する、通信プロトコルを実施するためのインターフェースコントローラとを備えていてもよい。本明細書で説明する実施形態では、ユニバーサルシリアルバス(USB)コネクタ及びインターフェースを説明する。しかしながら、他のケーブル、コネクタ及びプロトコルが本明細書で説明した実施形態に従って用いられてもよいと理解されよう。 In the illustrated embodiment, the host device 110 comprises an application processor 112, an audio codec 114, and an interface component 116. The application processor 112 controls digital voice data communication between the host device 110 and the connected device 130. The voice codec 114 performs voice input processing and / or voice output processing according to the request of the host device 110. The interface component 116 facilitates the physical connection between the host device 110 and the connecting device 130 via the cable 120 and the compatible connector. In various embodiments, the interface component 116 may include a port that accepts the connector and a corresponding interface controller for implementing a communication protocol. In the embodiments described herein, universal serial bus (USB) connectors and interfaces will be described. However, it will be appreciated that other cables, connectors and protocols may be used according to the embodiments described herein.

一以上の実施形態では、アプリケーションプロセッサ112は、例えば、SoundWire規格又はUSB規格によって規定されているようなクロック及びデータラインを備える多線バスプロトコルを用いてホストデバイス110及び接続デバイス130の間の通信を容易化する。アプリケーションプロセッサ112は、SoundWire又は他のデジタルインターフェースのような音声インターフェースを用いて、マスター−スレーブの関係で音声コーデック114と通信してもよい。音声コーデック114は、当該2つのインターフェースプロトコルの間で音声データを変換しながらアプリケーションプロセッサ112とインターフェースコンポーネント116との間の通信を容易化する。音声データは、インターフェースコンポーネント116と、ケーブル120上のデータ送信を処理するように構成されているデバイスコントローラ140との間で送信される。デバイスコントローラ140は、更に、接続デバイス130のインターフェースバスを介する、音声コンポーネント142及び音声コンポーネント144のような一以上のスレーブデバイスとの通信のためのマスターデバイスとして動作し、ユーザインターフェースコンポーネント146を介するユーザ入力の処理のような他のデバイス機能を容易化することに対応している。一実施形態では、バスラインは、電源バス(VBUS)と、データ送信のための差動対D+、D−と、接地と、デバイスIDとを備えている。本開示の教示に従って、他のバスライン構成が用いられてもよいことが当業者には理解されよう。システム100の様々なデバイス及びコンポーネントの間の通信は、本明細書に開示されているデジタルデータ通信システム及び方法に従って容易化され得る。 In one or more embodiments, the application processor 112 communicates between the host device 110 and the connected device 130 using, for example, a multi-wire bus protocol with clocks and data lines as specified by the SoundWire standard or the USB standard. To facilitate. The application processor 112 may communicate with the voice codec 114 in a master-slave relationship using a voice interface such as SoundWire or other digital interface. The voice codec 114 facilitates communication between the application processor 112 and the interface component 116 while converting voice data between the two interface protocols. Audio data is transmitted between the interface component 116 and the device controller 140 configured to handle the data transmission over the cable 120. The device controller 140 further operates as a master device for communication with one or more slave devices such as the voice component 142 and the voice component 144 via the interface bus of the connecting device 130, and the user input via the user interface component 146. It supports facilitating other device functions such as processing. In one embodiment, the bus line comprises a power bus (VBUS), differential pairs D +, D− for data transmission, grounding, and a device ID. Those skilled in the art will appreciate that other bus line configurations may be used in accordance with the teachings of the present disclosure. Communication between various devices and components of the system 100 can be facilitated according to the digital data communication systems and methods disclosed herein.

図1Bを参照して、図1Aの例示的な接続デバイス130は、ホストデバイス110のインターフェースコンポーネント116に接続するためのUSBコネクタ152と、コネクタ152に収容されたデバイスコントローラと、(例えばボタンのような)ユーザインターフェース157と、デバイスコントローラ152を音声コンポーネント160及び170と接続する有線データバス158とを備えるUSBヘッドセット150として実施され得る。一実施形態では、ヘッドセット150は、動的ノイズキャンセレーション(ANC)ヘッドセットである。図1Cを参照して、ANCヘッドセットにおける使用のための音声コンポーネント160、170の例示的な実施形態が図示されている。音声コンポーネント160/170は、ヘッドセット150のデータバス158上にあるスレーブデバイスとして実装されている。音声コンポーネント160/170のそれぞれは、スレーブコンポーネントから音声データを受け取り、1以上のスピーカー186を駆動してユーザのために音声データを再生するための音声出力回路182と、一以上のマイクロホン184からセンサーデータを受け取り、受け取ったデータをデジタル化し、データバス158を介してマスターに送信するために、デジタル化した音声データをスレーブに提供するための音声入力回路180とを備えている。 With reference to FIG. 1B, the exemplary connector 130 of FIG. 1A includes a USB connector 152 for connecting to the interface component 116 of the host device 110, a device controller housed in the connector 152, and (eg, a button). It can be implemented as a USB headset 150 with a user interface 157 and a wired data bus 158 connecting the device controller 152 to the voice components 160 and 170. In one embodiment, the headset 150 is a dynamic noise canceling (ANC) headset. With reference to FIG. 1C, exemplary embodiments of audio components 160, 170 for use in ANC headsets are illustrated. The audio component 160/170 is implemented as a slave device on the data bus 158 of the headset 150. Each of the voice components 160/170 receives voice data from the slave component, drives one or more speakers 186 to play voice data for the user, and a sensor from one or more microphones 184. It includes a voice input circuit 180 for providing digitized voice data to a slave in order to receive data, digitize the received data, and transmit it to the master via the data bus 158.

接続デバイスの他の実施形態が図2Aに図示されている。接続デバイス230は、コネクタ216と、ケーブル220と、デバイスコントローラ240と、ユーザインターフェース246と、音声コンポーネント242、244とを備えている。コネクタ216は、(例えば、図1Aのインターフェースコンポーネント116のような)ホストデバイスのインターフェースコンポーネントに結合することに対応している。ケーブル220は、コネクタ216を、ホストデバイスと通信するために用いられる通信プロトコルと接続デバイス230のバスプロトコルとの間のインターフェースを提供するデバイスコントローラ240に結合する。デバイスコントローラ240は、音声コンポーネント242及び音声コンポーネント244のような一以上のスレーブデバイスを結合する通信バスのマスターとして動作する。ユーザインターフェース246は、デバイスコントローラ240に結合されて(音量調節やイアフォンセットのミュートのような)ユーザによる調節を提供する。 Other embodiments of the connected device are illustrated in FIG. 2A. The connection device 230 includes a connector 216, a cable 220, a device controller 240, a user interface 246, and audio components 242 and 244. Connector 216 corresponds to coupling to an interface component of the host device (eg, interface component 116 of FIG. 1A). The cable 220 couples the connector 216 to a device controller 240 that provides an interface between the communication protocol used to communicate with the host device and the bus protocol of the connecting device 230. The device controller 240 operates as a master of a communication bus that connects one or more slave devices such as the voice component 242 and the voice component 244. The user interface 246 is coupled to the device controller 240 to provide user adjustments (such as volume control and earphone set mute).

図2Bを参照して、図2Aの例示的な接続デバイス230は、ホストデバイス110のインターフェースコンポーネント116に接続するためのUSBコネクタ252と、USBケーブル254と、デバイスコントローラ256と、(例えばボタンのような)ユーザインターフェース257と、音声コンポーネント260、270をデバイスコントローラ256に接続する有線データバス258とを備えるUSBヘッドセット250(例えば、USBイアフォン)として実装され得る。 With reference to FIG. 2B, the exemplary connection device 230 of FIG. 2A includes a USB connector 252 for connecting to the interface component 116 of the host device 110, a USB cable 254, and a device controller 256 (eg, like a button). It can be implemented as a USB headset 250 (eg, a USB earphone) with a user interface 257 and a wired data bus 258 connecting the voice components 260 and 270 to the device controller 256.

本開示のシステム及び方法は、長い有線リンク、低電力実装及び高帯域幅通信をサポートしている。様々な実施形態において、低デューティサイクルが信号に用いられ、これにより終端されたリンクに関連する固定的な電力消費が低減される。本開示の様々な態様において、低デューティサイクルは、シンボル毎をベースとして(例えば、短いシンボルを用いることにより)、及び/又は、データパケットを送信し、その後速やかにバスを短期間休止させることで達成される。これらのアプローチの一つの利点は、データパケットが素早く送信された後でバスを休止させることが可能になるので低遅延リンクがサポートされると共に、該低遅延リンクが少ない電力しか又は全く電力を消費しないことである。一以上の実施形態では、各受信装置に内部位相同期ループ(PLL)又はDLL(遅延同期ループ)を組み込んで定期的に送られる同期シンボルに基づいて高速内部クロックを生成することにより、一層に高いデータレートがサポートされる。シンボルに低デューティサイクルを用いることの一つの利点は、中間の伝送レートについて低電力消費が可能になることである。なぜなら、終端されたリンクの使用による固定的な電力消費は、低デューティサイクルにより低減されるからである。言い換えれば、終端された伝送線路を用いながら高ボーレートが可能なリンクは、低から中速の信号伝送について低電力消費を得るために使用されることがある。なぜなら、本明細書に開示されている様々な実施形態の電力消費は、使用される帯域幅に線形的に増減する(データを受信するために用いられる受信PLLからの電力消費は一定であろうが、全体の電力割当量の小さな割合にすることができる)。このように、本明細書に開示されているデータリンクの実装は、中から低帯域幅を用いる場合に低電力消費が可能でありながら、なおも、やや高い電力消費を使って大量のデータを転送することもできる。両方の場合において、PLLクロック周波数又はDLL遅延は、一定であってもよく、システム要求に合わせて変動してもよい。 The systems and methods of the present disclosure support long wired links, low power implementations and high bandwidth communications. In various embodiments, low duty cycles are used for the signal, thereby reducing the fixed power consumption associated with the terminated link. In various embodiments of the present disclosure, a low duty cycle is symbolically based (eg, by using short symbols) and / or by transmitting a data packet and then promptly suspending the bus for a short period of time. Achieved. One advantage of these approaches is that low latency links are supported because the bus can be deactivated after the data packets are sent quickly, and the low latency links consume less or no power. Do not do it. In one or more embodiments, each receiver incorporates an internal phase-locked loop (PLL) or DLL (delayed-locked loop) to generate a high-speed internal clock based on the synchronization symbols sent periodically. Data rates are supported. One advantage of using a low duty cycle for the symbol is that it allows for low power consumption for intermediate transmission rates. This is because the fixed power consumption due to the use of terminated links is reduced by the low duty cycle. In other words, links capable of high baud rates while using terminated transmission lines may be used to obtain low power consumption for low to medium speed signal transmission. Because the power consumption of the various embodiments disclosed herein will increase or decrease linearly with the bandwidth used (the power consumption from the receiving PLL used to receive the data will be constant. However, it can be a small percentage of the total power allocation). Thus, the implementation of the data link disclosed herein is capable of low power consumption when using medium to low bandwidth, but still uses a slightly higher power consumption to generate large amounts of data. It can also be transferred. In both cases, the PLL clock frequency or DLL delay may be constant or may vary according to system requirements.

本開示は、更に、従来のシステムでは信号インテグリティを劣悪にするであろう中間ノードでのインピーダンス不整合がある場合でもなお、高品質信号が得られるようにする制御を中間ノードにおいて提供することで、マルチドロップバス構成をサポートしている。多くの従来のシステムでは、これは、伝送線路の端において終端することを避け、その代わりに信号のスルーレートを制御することで解決されているが、このようにすると、反射を避けることができる最大スルーレートの制約により、システムが低速になる。本明細書に開示された様々なシステム及び方法は、このような制約を受けない。 The present disclosure further provides control at the intermediate node to ensure that a high quality signal is obtained even in the presence of impedance mismatch at the intermediate node, which would compromise signal integrity in conventional systems. , Supports multi-drop bus configurations. In many traditional systems, this is solved by avoiding termination at the end of the transmission line and instead controlling the slew rate of the signal, but in this way reflections can be avoided. Maximum slew rate constraints slow down the system. The various systems and methods disclosed herein are not subject to such restrictions.

本明細書に開示されている実施形態は、信号インテグリティの劣化を最小にしながら頑強で信頼性が高いデータリンクを提供する。いくつかの実施形態では、トランスミッタは、更に電力消費を低減するために、送信の間、それ自身の並列終端抵抗を無効にしてもよい。いくつかの実施形態では、バス伝送線路の各端のトランスミッタは、送信していないとき出力レベルを固定値に設定することで終端を行ってもよい。この電圧レベルをシステムの固定休止値に設定し、直列出力インピーダンスをバスインピーダンスに整合させる(即ち、各端の出力トランスミッタが送信していないときに終端として用いられる)ことで、低電力消費が実現されるであろう(例えば、送信データが無い場合には内部クロックの生成以外に電力消費が無いなど)。従来のシステムでは、伝送線路におけるインピーダンスの変化は、送信される信号における反射を引き起こし得る。この事実の結果、従来のシステムは、顕著に送信信号を歪ませることなく伝送線路上の中間ノードに複数のコンポーネントを設置することは容易にはできないという注釈に基づく設計の制約に固執している。 The embodiments disclosed herein provide robust and reliable data links while minimizing signal integrity degradation. In some embodiments, the transmitter may disable its own parallel termination resistor during transmission to further reduce power consumption. In some embodiments, the transmitters at each end of the bus transmission line may be terminated by setting the output level to a fixed value when not transmitting. Low power consumption is achieved by setting this voltage level to a fixed pause value in the system and matching the series output impedance to the bus impedance (ie, used as a termination when the output transmitters at each end are not transmitting). (For example, if there is no transmission data, there is no power consumption other than the generation of the internal clock). In conventional systems, changes in impedance in the transmission line can cause reflections in the transmitted signal. As a result of this fact, traditional systems adhere to the annotation-based design constraints that it is not easy to install multiple components on intermediate nodes on a transmission line without significantly distorting the transmitted signal. ..

しかしながら、本開示では、関連する最短の波長と比較して比較的短い距離に渡ってしかインピーダンスの変化が起こらなければ、信号の妨害は非常に少ないであろうし、実用的なシステムが実施され得ると認識されている。例として、50Ω伝送線路を用いる実験用システムが、複数の中間ノードを備えていた。中間ノードのそれぞれは、小さなスタブ(1〜2cmの長さ)を備えており、これは、スルーレートを4.7nsから4.8nsに(又は、約100psの増大)変化させ、各ノードについて約6%振幅を減少させる結果となった。このように、スルーレートが僅かに増加し、振幅が少し減少しても、信号の変化は最小であったし、良好なアイダイアグラムが得られたし、頑強なデータ伝送が達成された。従って、従来の理論では、反射を避けるために伝送線路に沿ったインピーダンスの変化を禁止するシステム要求につながっていたが、これらの擾乱体の長さが関連する最高速の信号の波長よりも非常に短い限り、実用的に機能するシステムに有害でないような小さな強度を有するように、これらの反射は制御可能である。 However, in the present disclosure, if the impedance changes occur only over a relatively short distance compared to the shortest wavelength involved, signal interference will be very small and a practical system can be implemented. Is recognized. As an example, an experimental system using a 50Ω transmission line was equipped with multiple intermediate nodes. Each of the intermediate nodes has a small stub (1 to 2 cm long), which changes the slew rate from 4.7 ns to 4.8 ns (or an increase of about 100 ps) and about for each node. The result was a 6% reduction in amplitude. Thus, even with a slight increase in slew rate and a slight decrease in amplitude, signal changes were minimal, good eye diagrams were obtained, and robust data transmission was achieved. Therefore, conventional theory has led to system requirements that prohibit changes in impedance along the transmission line to avoid reflections, but the length of these disturbances is much higher than the wavelength of the fastest signal associated with them. These reflections are controllable so that they have a small intensity that is not harmful to a practically functioning system as long as they are short.

実験用のシステムは、2cmのスタブ長を有していたが、これは、空気中では0.1nsよりも短い伝送時間に等しく、立ち上がり時間(5ns)よりも非常に短い。この場合、立ち上がり時間とスタブによる遅延との間の比は50以上であり、システムにおいて最小の遅延と擾乱しか起こさなかった。もし、遅延が5ns(シールドなしの150cmのケーブルに等価)であったなら、システムにおける立ち上がり時間と遅延とは、対比可能な程度であり、ケーブルは、端が開放されているように見えたであろう。このように、本明細書に開示されているように寸法が決められた場合には、本開示の一以上のシステムは、伝送線路の端で適切に終端された非常に高速な信号の伝送を可能にすると同時に複数のコンポーネントを同じ伝送線路に設けることが可能になり、これにより、なおも高速伝送を可能にするマルチドロップバスシステムを得るという問題を解決する。更に、前進波又は後進波が制御されているように信号の伝送のシーケンスのタイミングを取ることにより、伝送線路上の中間ノードにあり伝搬波を擾乱するアクティブなトランスミッタに関連する問題を避けることが可能になる。 The experimental system had a stub length of 2 cm, which is equal to a transmission time shorter than 0.1 ns in air and much shorter than a rise time (5 ns). In this case, the ratio between the rise time to the delay due to the stub was greater than or equal to 50, causing minimal delay and disturbance in the system. If the delay was 5 ns (equivalent to an unshielded 150 cm cable), the rise time and delay in the system were comparable and the cable appeared to have an open end. There will be. Thus, when sized as disclosed herein, one or more systems of the present disclosure will transmit very fast signals properly terminated at the end of a transmission line. At the same time, it is possible to provide multiple components on the same transmission line, which solves the problem of obtaining a multi-drop bus system that still enables high-speed transmission. In addition, by timing the sequence of signal transmission so that the forward or reverse wave is controlled, problems associated with active transmitters at intermediate nodes on the transmission line that disturb the propagating wave can be avoided. It will be possible.

ここでは、図3を参照しながら、一以上の実施形態によるタイミングシーケンスの例を説明する。図3は、マスターデバイスと3つのスレーブデバイスの間の情報の伝搬を示している。データ転送の方向に関連するタイミングを最適化することで、より高い帯域幅を得ることができる。様々な実施形態において、全てのデータパッケージは、それらが吸収される場所である線端の終端に到達すると消滅する。マスターM1が、伝送線路の端に、同一の伝送線路上にある複数のスレーブデバイス(S1、S2、S3)と共に設けられているとしよう。スレーブデバイスは、数字1、2、3等でラベル付けされており、各スレーブデバイスは、マスターデバイスから更に離れている。 Here, an example of a timing sequence according to one or more embodiments will be described with reference to FIG. FIG. 3 shows the propagation of information between a master device and three slave devices. Higher bandwidth can be obtained by optimizing the timing associated with the direction of data transfer. In various embodiments, all data packages disappear when they reach the end of the line end where they are absorbed. It is assumed that the master M1 is provided at the end of a transmission line together with a plurality of slave devices (S1, S2, S3) on the same transmission line. The slave devices are labeled with the numbers 1, 2, 3, etc., and each slave device is further away from the master device.

マスターM1から前進伝搬波を送信するとき、マスターM1は、最初にメッセージを送る(時間A)。その後、すぐ、前進波がちょうどスレーブデバイスS1を通過したとき(時間C)にスレーブデバイスS1が続き、そして、スレーブデバイスS1からのメッセージの終わりが完結したときに(時間E)、スレーブデバイスS2がその前進伝搬波メッセージを送る。スレーブデバイスS3は、スレーブデバイスS2からのメッセージが完結したときに前進伝搬波メッセージを送る。全ての前進伝搬波メッセージが完結し、伝送線路の他端での終端によって吸収されると、伝送線路にある最後のデバイス(例えば、時間FにおけるスレーブデバイスS3)が、マスターM1に向けて後進伝搬波を送信し始める。この後進伝搬波に続き、該最後のデバイスからのメッセージがちょうど通過した後、伝送線路にある最後から二番目のデバイス(例えば、時間GにおけるスレーブデバイスS2)からの後進伝搬波が送信されるなどする。全ての後進伝搬波メッセージが完結し、マスターデバイスにおける終端によって吸収されると、マスターM1は、再び、上述のように、前進伝搬波を用いたメッセージの送信を開始するであろう。 When transmitting a forward propagating wave from the master M1, the master M1 first sends a message (time A). Immediately thereafter, when the forward wave just passes through the slave device S1 (time C), the slave device S1 continues, and when the end of the message from the slave device S1 is completed (time E), the slave device S2 Send the forward propagating wave message. The slave device S3 sends a forward propagation wave message when the message from the slave device S2 is completed. When all forward propagating wave messages are complete and absorbed by the termination at the other end of the transmission line, the last device on the transmission line (eg, slave device S3 at time F) propagates backward toward the master M1. Start sending waves. Following this backward propagating wave, after the message from the last device has just passed, the backward propagating wave from the penultimate device on the transmission line (eg, slave device S2 at time G) is transmitted, etc. do. Once all the backward propagating wave messages have been completed and absorbed by the termination in the master device, the master M1 will again begin transmitting the message using the forward propagating wave, as described above.

いくつかの実施形態では、2つのデバイスは、もし、これらのデバイスが伝送線路の反対の端に位置しており、自身が送信する波の影響が、測定した波(前進及び後進伝搬波の重畳)から差し引かれるのであれば、同時にメッセージを送信してもよい。いくつかの実施形態では、これは、伝送線の中間点に設けられたデバイスについてさえも行われてもよい。しかしながら、いくつかの実施形態では、中間点に設けられたデバイスは、一般的には、受信と同時に送信すべきではない。なぜなら、これは、前進又は後進伝搬波の反射を引き起こし得るからである。 In some embodiments, the two devices are such that if these devices are located at opposite ends of the transmission line, the effect of the wave they transmit is the superimposed wave of the measured wave (forward and backward propagating waves). ), You may send a message at the same time. In some embodiments, this may even be done for a device provided at the midpoint of the transmission line. However, in some embodiments, the device provided at the midpoint should generally not be transmitted at the same time as it is received. This is because it can cause reflection of forward or backward propagating waves.

様々な実施形態において、音声ヘッドセットのような音声デバイスと共に用いられるための通信バスは、高帯域幅及び低電力消費を可能にするために、差動インピーダンス整合シグナリングを用いたマルチドロップバスを備えている。当該バスは、高制御と音声帯域幅を有しており、10メートルを超えるまでのリンクをサポートしている。一以上の実施形態では、全バスリンク長は、2メートル又はそれよりも小さい。図1Aを参照すると、リンク長は、2つの終端端点ZENDの間の信号線の長さであり、コネクタに集積化されることがあるデバイスコントローラ140からユーザインターフェースコンポーネント146までのケーブル120の長さ(長さA)、ユーザインターフェースコンポーネント146から中間ノードまでの信号線の長さ(長さB1及び長さB2)、及び、中間ノードから終端端点までの信号線の長さ(長さC1、長さC2)を含む。一実施形態では、リンクは、終端端点からの全長が0〜200cmであり、次の範囲を含んでいる:長さA、0〜80cm;長さB、0〜60cm;及び長さC、0〜60cm。一実施形態では、スタブB2及びC2は、信号インテグリティへの影響を最小にするために可能な限り短く維持されるべきである。 In various embodiments, the communication bus for use with voice devices such as voice headsets comprises a multi-drop bus with differential impedance matching signaling to enable high bandwidth and low power consumption. ing. The bus has high control and voice bandwidth and supports links up to over 10 meters. In one or more embodiments, the total bus link length is 2 meters or less. Referring to FIG. 1A, the link length is the length of the signal line between the two end points ZEND and the length of the cable 120 from the device controller 140 to the user interface component 146, which may be integrated into the connector. (Length A), the length of the signal line from the user interface component 146 to the intermediate node (length B1 and length B2), and the length of the signal line from the intermediate node to the end point (length C1, Includes length C2). In one embodiment, the link has a total length of 0-200 cm from the end point and includes the following ranges: length A, 0-80 cm; length B, 0-60 cm; and length C, 0. ~ 60 cm. In one embodiment, the stubs B2 and C2 should be kept as short as possible to minimize their impact on signal integrity.

図2Aを参照して、一実施形態では、USBケーブルの長さは0〜200cmであり、各終端端点とデバイスコントローラ240との間のリンク長は、それぞれ、0〜100cmである。図示されている実施形態では、ヘッドセットの端子端と最も遠いスピーカー又はマイクロホンの間のリンクは、200cm未満であるが、他の距離も用いられ得る。 With reference to FIG. 2A, in one embodiment, the length of the USB cable is 0 to 200 cm, and the link length between each end point and the device controller 240 is 0 to 100 cm, respectively. In the illustrated embodiment, the link between the terminal end of the headset and the furthest speaker or microphone is less than 200 cm, but other distances may be used.

様々な実施形態において、リンクは、標準のクロックレート、例えば、12.288MHz及び19.200MHzをサポートしており、これにより、標準的な遠隔通信及び音声システムとの互換性がある。一実施形態では、12.288MHzの動作モードにおいては、信号伝搬の方向を切り替えるときのターンアラウンド遅延を増加することにより、10mの結合距離がサポートされる。 In various embodiments, the link supports standard clock rates such as 12.288 MHz and 19.200 MHz, which are compatible with standard telecommunications and voice systems. In one embodiment, in the 12.288 MHz operating mode, a bond length of 10 m is supported by increasing the turnaround delay when switching the direction of signal propagation.

様々な実施形態において、PLLのロックイン範囲が狭く、各同期シンボルの間に一定数のビットを維持することが望ましい。更に、様々な実施形態において、複数のクロックシステムと48kHzの互換性を維持することが望ましい。
本開示は、簡単で頑強な、スレーブデバイスとマスターデバイスの間の初期的な同期を提供し、更に、様々な実施形態では、一定のフレームサイズを用いる。一定のフレームサイズの使用は、複数のクロックシステムとの互換性を確保するために複数のフレームサイズを可能にするSoundWire及び類似のプロトコルとは対照的である。一以上の実施形態では、異なるサンプリング周波数を用いる複数の音声ポートのような複数のソース間での同期を維持するために、一以上のビーコンビットがフレームにおいて信号として送られる。
In various embodiments, it is desirable that the lock-in range of the PLL is narrow and a fixed number of bits be maintained between each synchronization symbol. Further, in various embodiments, it is desirable to maintain 48 kHz compatibility with multiple clock systems.
The present disclosure provides simple and robust initial synchronization between slave and master devices, and in various embodiments, constant frame size is used. The use of a fixed frame size is in contrast to SoundWire and similar protocols, which allow multiple frame sizes to ensure compatibility with multiple clock systems. In one or more embodiments, one or more beacon bits are sent as signals in the frame to maintain synchronization between multiple sources, such as multiple voice ports with different sampling frequencies.

本開示の一以上の実施形態による例示的な動作モードが、下のテーブルに図示されている:

Figure 2021536151
Illustrative modes of operation according to one or more embodiments of the present disclosure are illustrated in the table below:
Figure 2021536151

本明細書に開示されたシステム及び方法は、エネルギー効率が高い設計であり、フレームサイズに干渉する同期シンボルに関する問題のいくつかを解決し、同期カラムをコマンドに混ぜることで効率的な帯域幅使用手法を含み、簡単な刻時手法を有し、単一のクロック源を用い、最適な信号インテグリティのための遅延の精密な調整を可能にし、12.288、19.200、及び12.000MHzのシステムをサポートし、広い帯域でのPLL追尾が要求されておらず(即ち、PLLが比較的狭いロックイン範囲しかサポートする必要がない)、複数のクロックシステムをサポートするための可変のデータフォーマットでも一定のフレームサイズが使用可能であり、データ受信の間、アイダイアグラムの最適化のためのサンプル間隔の細かい段階化を用いたスレーブ遅延の正確な測定を含む、追加の利点を提供する。様々な実施形態において、例えば、一定のフレーム長を維持しながら、マルチドロップバスが、遠隔通信、USB、音声動作モードのような複数のクロックシステムに用いられ得る。場合によっては、768kHzのような低い同期周波数が、より長いバス径のために用いられてもよい。 The systems and methods disclosed herein are energy efficient designs that solve some of the problems with sync symbols that interfere with frame size and use efficient bandwidth by mixing sync columns into the command. Including techniques, with simple ticking techniques, using a single clock source, allowing precise adjustment of delay for optimal signal integrity, 12.288, 19.200, and 12.000 MHz. It supports systems, does not require wide band PLL tracking (ie, PLL only needs to support a relatively narrow lock-in range), and even in a variable data format to support multiple clock systems. A constant frame size is available and provides additional benefits, including accurate measurement of slave delay with fine stepping of sample spacing for eye diagram optimization during data reception. In various embodiments, the multi-drop bus can be used for multiple clock systems such as remote communication, USB, voice operating modes, for example, while maintaining a constant frame length. In some cases, lower sync frequencies, such as 768 kHz, may be used for longer bus diameters.

マスターが同期シンボル(典型的には、0から1への遷移)を完了した後のタイムスロットがコマンドの信号伝送に用いられ得るように、又は、このタイムスロットを未駆動にしておき、複数のデバイスが電流レベルを変更することを許容するが(ワイヤード−オア構成と同様に)電流レベルの駆動を許容しないようにすることにより、複数のデバイスが同じタイムスロットに応答することを許容するために、同期シンボルが、スレーブ遅延の注意深いタイミング取りによってコマンドの信号伝送にマージされてもよい。 Multiple times so that the time slot after the master completes the synchronization symbol (typically the transition from 0 to 1) can be used for command signal transmission, or this time slot is left undriven. To allow multiple devices to respond to the same time slot by allowing the device to change the current level but not driving the current level (similar to a wired-or configuration). , The synchronization symbol may be merged into the signal transmission of the command by careful timing of the slave delay.

クロックのサポート
前に議論したように、従来のバストポロジーが遭遇する一つの問題は、所望の基本周波数を得るために必要とされる逓倍器又は分周器を含む、異なるクロック周波数へのサポートに関連している。一つの例として、48kHzは、19.200MHzを400(4×5×5)で分周する、又は、12.288MHzを256(4×4×4×4)で分周することにより得ることができる。本明細書に開示された様々な実施形態において、バスで伝送されるコマンドは、音声フローを妨げない。一以上の実施形態では、コマンドは、音声データと同じケイデンス(又は、その約数)で発行される。いくつかの実施形態では、データラインにクロックを組み込んで、これにより信号線と電力消費を節約するためのPLL又はDLLクロック同期の制約がある。差動シグナリングを用いることで、電磁妨害(EMI)を制約可能である。
Clock Support As discussed earlier, one problem encountered with traditional bus topologies is support for different clock frequencies, including multipliers or dividers needed to obtain the desired fundamental frequency. It is related. As an example, 48 kHz can be obtained by dividing 19.200 MHz by 400 (4 x 5 x 5) or by dividing 12.288 MHz by 256 (4 x 4 x 4 x 4). can. In the various embodiments disclosed herein, the commands transmitted by bus do not interfere with voice flow. In one or more embodiments, the command is issued with the same cadence (or a divisor thereof) as the voice data. In some embodiments, the data line incorporates a clock, which has PLL or DLL clock synchronization constraints to save signal lines and power consumption. Electromagnetic interference (EMI) can be constrained by using differential signaling.

一実施形態では、付加ビットを追加して通信フレームに同期とコマンドのための余地を与えることを含むソリューションが提供される。当該システムは、様々なクロック周波数をサポート可能であり、フレーム構造は、長いバス径の制約が与えられた帯域幅の使用に関して最適化され得る。本実施形態の構造は、デコードに対して確定的で簡単であり、例えば、各同期フレーム間のクロックパルスの数を一定にする等、正確なクロック周波数を特定するために複雑なアナログ回路を必要としない。 In one embodiment, a solution is provided that includes adding additional bits to give the communication frame room for synchronization and commands. The system can support a variety of clock frequencies and the frame structure can be optimized for bandwidth usage with long bus diameter constraints. The structure of this embodiment is deterministic and simple for decoding, and requires a complex analog circuit to specify the exact clock frequency, for example, to keep the number of clock pulses constant between each synchronization frame. Do not.

SoundWireのような既存のシステムは、例えば、全部で152の組み合わせに対して8の列サイズと19の可能な行の値のような、様々な既定のフレームフォーマットを含んでいる。一つの難題は、それぞれが異なる逓倍器を有しているので(19200/48=400及び12288/48=256)、特別なアナログシステムを必要とせずに12.288MHzと19.200MHzの両方の動作をサポートするシステムを設計することである。本明細書に開示された様々な実施形態では、12.288MHz、19.200MHzの両方、そして、12.000MHzのシステムでさえもサポート可能な単一フレームサイズが使用され得る。 Existing systems such as SoundWire include various default frame formats, such as 8 column sizes and 19 possible row values for a total of 152 combinations. One challenge is the operation of both 12.288MHz and 19.200MHz without the need for a special analog system, as each has a different multiplier (19200/48 = 400 and 12288/48 = 256). Is to design a system that supports. In various embodiments disclosed herein, a single frame size that can support both 12.288 MHz, 19.200 MHz, and even 12.000 MHz systems can be used.

本明細書に開示されたPLL及び刻時ソルーションは、従来のシステムに関連する様々な問題を解決する。終端されていない伝送線路がある場合、反射が存在し、これは信号品質を阻害することがある。一つのソルーションは、データ送信を低速にすることである。しかしながら、多くのシステムでは高速送信が求められ、よって、所望でない反射を消滅するために終端された信号線が好まれる。(各シンボルに対して、または、各サイクル/ラインの終わりの休止スペースとして)データに対して高速なクロック速度と低いデューティサイクルを用いることにより、送信ビット当たりの固定的な電力消費を低減し、これにより、中程度の速度のリンクについて低減された電力消費を得ることができる。 The PLLs and timed solutions disclosed herein solve various problems associated with conventional systems. If there are unterminated transmission lines, there will be reflections, which can impair signal quality. One solution is to slow down data transmission. However, many systems require high speed transmissions, and therefore terminated signal lines are preferred to eliminate unwanted reflections. By using fast clock rates and low duty cycles for the data (for each symbol or as pause space at the end of each cycle / line), it reduces the fixed power consumption per transmit bit. This can result in reduced power consumption for medium speed links.

2つのデバイスしかない場合には、交差するトラフィックが無いため、デバイス間の同期は簡単になる。更に、この2つのデバイスは伝送線路の端に位置しているから半電圧を被ることはないであろうから、このようなシステムは、各端に終端が必要でない場合がある。複数のデバイスを用いる場合、スレーブデバイスがマスターデバイスとのロックを失う可能性がある。一つの解決は、バスを再起動することであるが、システムがある期間音声を失うので、それは多くの実装では望ましくない。本開示の様々な実施形態は、バス上の他のデバイスが動作を継続している間にクロック同期を解決することで同期を失ったスレーブデバイスの問題に対処する。 If there are only two devices, there is no crossing traffic and synchronization between the devices is easy. Moreover, since the two devices are located at the ends of the transmission line, they will not incur half voltage, so such systems may not require termination at each end. When using multiple devices, the slave device may lose its lock with the master device. One solution is to restart the bus, which is not desirable in many implementations as the system loses audio for a period of time. Various embodiments of the present disclosure address the problem of slave devices that have lost synchronization by resolving clock synchronization while other devices on the bus continue to operate.

図4を参照して、ここでは、図1Aのデバイスコントローラ140に含まれることがある例示的な位相同期ループ(PLL)300と、図2Aのデバイスコントローラ240と、図1Aのスレーブデバイス142、144と、図2Aの242、244を説明する。PLL300は、複数のスレーブデバイスからの、主同期信号と時間多重化された信号が存在しても当該回路がロックを維持することを可能にする。 With reference to FIG. 4, here, an exemplary phase-locked loop (PLL) 300 that may be included in the device controller 140 of FIG. 1A, the device controller 240 of FIG. 2A, and the slave devices 142, 144 of FIG. 1A. 242 and 244 of FIG. 2A will be described. The PLL 300 allows the circuit to remain locked in the presence of main sync signals and time-multiplexed signals from multiple slave devices.

PLL(又はDLL)300は、入力参照クロックの位相及び周波数に相応する位相及び周波数を有する出力クロック信号を生成する。動作の間、参照クロック信号が、時間ゲート302を介して、及び、分周器310からのフィードバック信号が位相検出器304に入力される。位相検出器304は、入力参照クロック信号とフィードバック信号の位相及び周波数を比較して制御信号を出力し、フィードバック信号が参照クロック信号の位相及び周波数と同期した位相及び周波数を有するように、しかるべくフィードバック信号を調節する。位相検出器304は、参照クロック信号及びフィードバック信号の立ち上がり(又は立ち下がり)エッジの位相を揃える。位相検出器304の出力は、電圧制御発振器(VCO)308の電圧と周波数を調節するためにループフィルタ306に供給される。VCO308から出力された信号は、分周器310を通り抜けてフィードバック信号を生成する。出力クロック信号は、本明細書に記載された様々なシステムコンポーネントに供給される。図示された実施形態では、分周器は、144ビットのフレームサイズの倍数であるように構成されるが、他の整数値(例えば、M=16、M=42、M=48、又はM=80)が選択され得る。M=4を用いると直接的に4個のタイムスロットができ、バス信号のデータ取り込みにクロックの両方の位相を用いると8個のタイムスロットができる。M=8を用いると直接的に8つのタイムスロットができ、両方の位相を用いると16個のタイムスロットができ、これは、高解像度に関する簡単な解決法を与える。 The PLL (or DLL) 300 produces an output clock signal having a phase and frequency corresponding to the phase and frequency of the input reference clock. During operation, a reference clock signal is input through the time gate 302 and a feedback signal from the frequency divider 310 is input to the phase detector 304. The phase detector 304 compares the phase and frequency of the input reference clock signal with the feedback signal and outputs a control signal so that the feedback signal has a phase and frequency synchronized with the phase and frequency of the reference clock signal. Adjust the feedback signal. The phase detector 304 aligns the rising (or falling) edges of the reference clock signal and the feedback signal. The output of the phase detector 304 is supplied to the loop filter 306 to regulate the voltage and frequency of the voltage controlled oscillator (VCO) 308. The signal output from the VCO 308 passes through the divider 310 to generate a feedback signal. The output clock signal is supplied to the various system components described herein. In the illustrated embodiment, the frequency divider is configured to be a multiple of the 144-bit frame size, but with other integer values (eg, M = 16, M = 42, M = 48, or M =). 80) can be selected. When M = 4, 4 time slots are directly created, and when both phases of the clock are used for data acquisition of the bus signal, 8 time slots are created. Using M = 8 directly creates 8 time slots, and using both phases creates 16 time slots, which provides a simple solution for high resolution.

様々な実施形態において、時間ゲート302が初期の起動の間、常に有効にされ、その後は、マスターデバイスから参照同期パルスを受け取っている間のみ有効にされる。これは、複数のスレーブデバイスもバス上で信号伝送を行い、これらが時間においてマスターとずれている場合でも、当該回路をマスターにロックさせることを可能にする。更に、もし、PLL/DLLがマスター同期とのロックを失っても、デバイスは、出力ドライバを無効にしてバス衝突を避け、同期パルスの広範囲の探索を再び有効にするであろう。いくつかの実施形態では、(例えば十分に狭い時間ウィンドウを用いることで)時間ゲートを位相検出器として用いることにより、位相検出器を全く除去し得る。これは、タイミングジッタを低減するために用いられ得る(時間ゲートは、分周器を介するVCOからの出力により、なおも制御されるであろう)。いくつかの実施形態では、位相検出器は、周波数と位相の両方の差に鋭敏であり、これにより正しい状態を初期的に安全に得ることを確実にするように、位相−周波数タイプ(タイプIII−IV位相検出器)のものであろう。 In various embodiments, the time gate 302 is always enabled during the initial boot and then only enabled while receiving a reference sync pulse from the master device. This allows multiple slave devices to also transmit signals on the bus and lock the circuit to the master even if they are out of sync with the master over time. Furthermore, if the PLL / DLL loses its lock with the master sync, the device will disable the output driver to avoid bus collisions and re-enable extensive search for sync pulses. In some embodiments, the phase detector can be removed altogether by using the time gate as the phase detector (eg, by using a sufficiently narrow time window). It can be used to reduce timing jitter (the time gate will still be controlled by the output from the VCO via the divider). In some embodiments, the phase detector is sensitive to both frequency and phase differences, thereby ensuring that the correct state is initially safely obtained in a phase-frequency type (Type III). -IV phase detector).

ここでは、本開示の実施形態と共に使用するための例示的なクロック分周ソリューションを説明する。一実施形態では、図5A、図5Bに図示されているように、あるクロックソリューションは、音声入力及び出力処理に用いられる音声クロック402と、ホストデバイスと接続デバイスの間のUSB通信に用いられるUSBクロック404と、本開示の低遅延データバスにおいて使用するためのデータバス及びDSPクロック406の3つの同期クロック信号を生成する周波数同期ループ(FLL)400の実装である。USBプロトコルに存在する同期パルスが、タイミング参照として用いられてもよい。 Here, an exemplary clock frequency divider solution for use with the embodiments of the present disclosure will be described. In one embodiment, as illustrated in FIGS. 5A and 5B, one clock solution is an audio clock 402 used for audio input and output processing and a USB used for USB communication between a host device and a connected device. It is an implementation of a frequency synchronization loop (FLL) 400 that produces three synchronization clock signals: a clock 404 and a data bus and a DSP clock 406 for use in the low latency data bus of the present disclosure. Synchronous pulses present in the USB protocol may be used as timing references.

図示されている実施形態では、同期検出器410がFLL400の入力に結合されている。同期検出器410は、適切なバス通信を可能にするようにクロック信号がシステムクロック(USBクロック参照)と同期しているかを判定する。もし、同期シンボルが同期から外れて到達する場合、同期検出器410は、FLL400に、クロックサイクルをマスタークロックと同期させるようにクロックサイクルを修正させるであろう。FLL400は、図示されているように、デジタルフィルタ及び予測器412と、デルタ−シグマDACのようなデジタル−アナログコンバータ(DAC)410と、電圧制御発振器(VCO)417と、分周器424と、周波数カウンタ418と、結果を参照周波数408とを比較する減算器ブロック414とを備えて実装され得る。図示されている他の態様は、参照周波数整数値48384(符号408参照)を用いることであり、参照周波数整数値は、分周器420、分周器422、及び、分数分周器426を用いてFLL400に所望の分周周波数を生成させるために用いられ得る。クロック信号を分数値で分周するために用いられ得る分数分周器430の実施形態が、図5Bに図示されている。分数分周器430は、位相加算器432と分周器434とを用いて実装されている。ここでは、ある位相値が各クロックサイクルの位相和に加算され、現在の位相和が、ある最大位相値を超えると、他の位相値が現在の和から減じられ、出力が活性化される。2の補数による加算器が用いられる場合、位相値は2段階にとられてもよく、2の補数演算において発生する自動ラップアラウンドにより、減算が必要でない。いくつかの実施形態では、デルタ−シグマコンバータが、位相加算器の代わりに積算を行い、これにより、分数分周に起因するスパーを消滅させてもよい。これは、出力スペクトルを拡散することにより出力クロック信号のEMIを低減するためにも用いられ得る。 In the illustrated embodiment, a synchroscope 410 is coupled to the input of the FLL400. The synchronization detector 410 determines whether the clock signal is synchronized with the system clock (see USB clock) to enable proper bus communication. If the sync symbol arrives out of sync, the sync detector 410 will cause the FLL400 to modify the clock cycle to synchronize the clock cycle with the master clock. The FLL400 includes a digital filter and predictor 412, a digital-to-analog converter (DAC) 410 such as a delta-sigma DAC, a voltage controlled oscillator (VCO) 417, a frequency divider 424, as shown. It may be implemented with a frequency counter 418 and a subtractor block 414 comparing the results with the reference frequency 408. Another aspect illustrated is to use the reference frequency integer value 48384 (see reference numeral 408), where the reference frequency integer value is a frequency divider 420, a divider 422, and a fractional divider 426. Can be used to cause the FLL400 to generate the desired frequency division frequency. An embodiment of a fractional divider 430 that can be used to divide a clock signal by a fractional value is illustrated in FIG. 5B. The fractional divider 430 is implemented using a phase adder 432 and a frequency divider 434. Here, a certain phase value is added to the phase sum of each clock cycle, and when the current phase sum exceeds a certain maximum phase value, the other phase values are subtracted from the current sum and the output is activated. When a 2's complement adder is used, the phase value may be taken in 2N steps and no subtraction is required due to the automatic wraparound that occurs in the 2's complement operation. In some embodiments, the delta-sigma converter may perform integration instead of a phase adder, thereby eliminating spar due to fractional division. It can also be used to reduce the EMI of the output clock signal by diffusing the output spectrum.

本開示の様々な実施形態のための例示的なクロックソリューションが、下記のテーブルに図示されている。ここに用いられているように、「イアーリンク」という用語は、本開示の音声バスシステム及び方法を参照している。

Figure 2021536151
Illustrative clock solutions for the various embodiments of the present disclosure are illustrated in the table below. As used herein, the term "earlink" refers to the voice bus systems and methods of the present disclosure.
Figure 2021536151

第2のクロックソリューションの例示的な実施形態が、図6A、図6Bに図示されている。第2のクロックソリューションは、音声入力及び出力処理に用いられる音声クロック502と、ホストデバイスと接続デバイスの間のUSB通信に用いられるUSBクロック504と、本開示の低遅延データバスにおいて使用するためのデータバス及びDSPクロック506の3つの同期クロック信号を生成する周波数同期ループ(FLL)500の実装である。FLL500は、ここに説明しているようなことを除き、図5Aと図5Bの対応するコンポーネントと同様に実装され得る、同期検出器510と、フィルタ及び予測器512と、デルタ−シグマDAC516と、VCO517と、分周器524と、周波数カウンタ518と、減算器ブロック514とを備えている。FLL400は、分周器520と、分周器522と、音声クロック周波数の125/128倍で周波数を出力するPLL540とを用いて所望の分周周波数を生成する。PLL540の実施形態が図6Bに図示されており、分周器520の出力からの1/128参照入力と、位相検出器544と、ループフィルタ546と、VCO548と、1/125分周器550とを備えている。 An exemplary embodiment of the second clock solution is illustrated in FIGS. 6A and 6B. The second clock solution is for use in the voice clock 502 used for voice input and output processing, the USB clock 504 used for USB communication between the host device and the connected device, and the low latency data bus of the present disclosure. It is an implementation of a frequency synchronization loop (FLL) 500 that produces three synchronization clock signals for the data bus and DSP clock 506. The FLL 500 includes a sync detector 510, a filter and predictor 512, and a delta-sigma DAC 516, which may be implemented similarly to the corresponding components of FIGS. 5A and 5B, except as described herein. It includes a VCO 517, a frequency divider 524, a frequency counter 518, and a subtractor block 514. The FLL 400 uses a frequency divider 520, a frequency divider 522, and a PLL 540 that outputs a frequency at 125/128 times the audio clock frequency to generate a desired frequency divider frequency. An embodiment of PLL 540 is illustrated in FIG. 6B with a 1/128 reference input from the output of the divider 520, a phase detector 544, a loop filter 546, a VCO 548, and a 1/125 divider 550. It is equipped with.

第3のクロックソリューションの例示的な実施形態が図7に図示されている。第3のクロックソリューションは、音声入力及び出力処理に用いられる音声クロック602と、ホストデバイスと接続デバイスとの間のUSB通信に用いられるUSBクロック604と、本開示の低遅延データバスにおいて用いられるデータバス及びDSPクロック606の3つの同期クロック信号を生成する周波数同期ループ(FLL)600の実装である。FLL600は、ここに説明するようなことを除き、図5A、図5B、図6の対応するコンポーネントと同様に実装され得る、同期検出器610と、フィルタ及び予測器612と、デルタ−シグマDAC616と、VCO617と、分周器624と、周波数カウンタ618と、減算器ブロック614とを備えている。FLL600は、分周器620と、分周器622と、音声クロック周波数の21倍で周波数を出力するPLL630を用いて所望の分周周波数を生成する。 An exemplary embodiment of the third clock solution is illustrated in FIG. A third clock solution includes a voice clock 602 used for voice input and output processing, a USB clock 604 used for USB communication between a host device and a connected device, and data used in the low latency data bus of the present disclosure. It is an implementation of a frequency synchronization loop (FLL) 600 that produces three synchronization clock signals for the bus and DSP clock 606. The FLL 600 includes a sync detector 610, a filter and predictor 612, and a delta-sigma DAC 616 that can be implemented similarly to the corresponding components of FIGS. 5A, 5B, 6 except as described herein. , VCO 617, frequency divider 624, frequency counter 618, and subtractor block 614. The FLL 600 uses a frequency divider 620, a frequency divider 622, and a PLL 630 that outputs a frequency 21 times the audio clock frequency to generate a desired frequency divider frequency.

第4のクロックソリューションの例示的な実施形態が図8A及び図8Bに図示されている。第4のクロックソリューションは、音声入力及び出力処理に用いられる12.288MHzの音声クロック信号702と、ホストデバイスと接続デバイスとの間のUSB通信に用いられる12MHzのUSBクロック信号704と、本開示の低遅延データバスに用いられる258.058MHzのデータバス及びDSPクロック信号706の3つの同期クロック信号を生成する周波数同期ループ(FLL)700の実装である。FLL700は、ここで説明するようなことを除き、図5〜図7の対応するコンポーネントと同様に実装され得る同期検出器710と、フィルタ及び予測器712と、デルタ−シグマDAC716と、VCO717と、分周器724と、周波数カウンタ718と、減算器ブロック714とを備えている。FLL700は、分数分周器720と、分周器722と、音声クロック信号702の21倍で周波数を出力する分数分周器730とを用いて所望の分周周波数を生成する。データバス及びDSPクロック信号706を生成するために用いられ得る分数分周器720の実施形態が図8Bに図示されている。分数分周器720は、位相加算器732と分周器734とを用いて実装される。分数分周器720では、ある位相値が各クロックサイクルについて位相和に加算され、現在の位相和がある最大位相値を超えたとき、他の位相値が位相和から減算されて出力が活性化される。場合によっては、ディザ生成器736が、クロックを分数値で分周するだけでなく、ディザ値を更に中間位相値に加算するように位相加算器のディザリングを行う。これはクロックのジッタを増加させるであろうが、加算されるディザの量を制御することでシステムクロックのEMIを低減するために使用可能である。典型的には、放射されるEMIは、この動作により、15〜20dBだけ低減されるであろう。ディザ生成器736は、デジタル擬似乱数生成器や乱数を生成する他のデジタル回路を用いて実装され得る。もし、擬似乱数生成器がゼロと異なる平均値を位相加算シーケンスに加えるのであれば、このことが、位相加算器を更新するときに考慮に入れられるべきである。 An exemplary embodiment of the fourth clock solution is illustrated in FIGS. 8A and 8B. A fourth clock solution includes a 12.288 MHz audio clock signal 702 used for audio input and output processing, a 12 MHz USB clock signal 704 used for USB communication between a host device and a connected device, and the present disclosure. It is an implementation of a frequency synchronization loop (FLL) 700 that generates three synchronization clock signals of a 258.058 MHz data bus and a DSP clock signal 706 used for a low delay data bus. The FLL 700 comprises a sync detector 710, a filter and predictor 712, a delta-sigma DAC 716, a VCO 717, which can be implemented similarly to the corresponding components of FIGS. 5-7, except as described herein. It includes a frequency divider 724, a frequency counter 718, and a subtractor block 714. The FLL 700 uses a fractional divider 720, a divider 722, and a fractional divider 730 that outputs a frequency 21 times the audio clock signal 702 to generate a desired frequency divider. An embodiment of a fractional divider 720 that can be used to generate the data bus and DSP clock signal 706 is illustrated in FIG. 8B. The fractional divider 720 is implemented using the phase adder 732 and the divider 734. In the fraction divider 720, a certain phase value is added to the phase sum for each clock cycle, and when the current phase sum exceeds a certain maximum phase value, the other phase values are subtracted from the phase sum to activate the output. Will be done. In some cases, the dither generator 736 not only divides the clock by a fractional value, but also dithers the phase adder so that the dither value is further added to the intermediate phase value. This will increase clock jitter, but can be used to reduce the EMI of the system clock by controlling the amount of dither added. Typically, the emitted EMI will be reduced by 15-20 dB by this operation. The dither generator 736 can be implemented using a digital pseudo-random number generator or other digital circuit that generates random numbers. This should be taken into account when updating the phase adder if the pseudo-random number generator adds a non-zero average value to the phase adder sequence.

フレーム構造
本開示の様々な実施形態によれば、サポートされている複数の周波数に渡って単一のフレーム構造が使用されることがある。ここでは、開示された実施形態と共に用いられる例示的なフレーム構造を説明する。
Frame Structure According to various embodiments of the present disclosure, a single frame structure may be used over a plurality of supported frequencies. Here, an exemplary frame structure used with the disclosed embodiments will be described.

図9Aの実施形態を参照して、フレーム構造が、42ビットの一定サイズのフレームを備えており、同期パターンが1フレーム当たり1回の頻度で繰り返す。一実施形態では、1メッセージ当たりのコマンドビットの数は32ビットであり、メッセージ同期ビットは、48kHz毎に1回繰り返す。各フレームは、1以上のサブフレーム、例えば4のサブフレームを備えていてもよく、各サブフレームは、同一構成を有しており、同期に関しては同じに見える。コマンドビットの例示的な編成が下記に図示されている。ここで、SCMDは、コマンドの開始であり、S48は、48kHzビーコンであり、RESは保留のフィールドであり、OP2−OP0は、3ビットオペコードであり、DEV3−0は、4ビットのデバイス番号であり、DATは、コマンドの一部として転送されるべきデータであり、PARはセキュリティのためのパリティビットであり、ACKは、承認ビットである。

Figure 2021536151
With reference to the embodiment of FIG. 9A, the frame structure comprises a 42-bit constant size frame, and the synchronization pattern repeats once per frame. In one embodiment, the number of command bits per message is 32 bits, and the message synchronization bits are repeated once every 48 kHz. Each frame may comprise one or more subframes, eg, four subframes, each subframe having the same configuration and appearing the same in terms of synchronization. An exemplary organization of command bits is illustrated below. Here, SCMD is the start of the command, S48 is the 48 kHz beacon, RES is the pending field, OP2-OP0 is the 3-bit opcode, and DEV3-0 is the 4-bit device number. Yes, DAT is the data to be transferred as part of the command, PAR is the parity bit for security, and ACK is the approval bit.
Figure 2021536151

ビットSは、各48kHz時間ティック、又は、各64番目のフレーム、又は256個のサブフレーム(9.600MHzシステムについては、24kHz時間ティック又は512個のサブフレーム)について、最初のサブフレームの開始時に1に等しくなる。該Sビットは、フレームの開始を発見し、複数の音声ソースを48kHzに同期する(例えば、最初のフレームの開始は、サンプルイベントであるべきである等)ために用いられ得る。 Bit S is at the start of the first subframe for each 48 kHz time tick, or each 64th frame, or 256 subframes (24 kHz time ticks or 512 subframes for 9.600 MHz systems). Equal to 1. The S-bit can be used to discover the start of a frame and synchronize multiple audio sources to 48 kHz (eg, the start of the first frame should be a sample event, etc.).

データ編成の詳細は、更に、図9Aに図示されている。0から1への遷移が、マスターに内部タイミングを同期するためにスレーブデバイスのPLLによって用いられ、コマンドビットCMDが続く。次に、16ビットの音声がマスターデバイスからスレーブデバイスに転送されてもよく、その後、マスターデバイスからスレーブデバイスへのハンドオーバー(読み出し、Rコマンドを含む)の間、(信号方向を変更させるために)1以上のタイムスロットの遅延が続く。次に、16ビットの音声がスレーブデバイスからマスターデバイスに転送されてもよく、その後、1以上のタイムスロットの遅延が続く。 Details of the data organization are further illustrated in FIG. 9A. The 0 to 1 transition is used by the slave device's PLL to synchronize the internal timing to the master, followed by the command bit CMD. The 16-bit audio may then be transferred from the master device to the slave device, and then during the handover (including read, R commands) from the master device to the slave device (to change the signal direction) 1 The above time slot delay continues. The 16-bit audio may then be transferred from the slave device to the master device, followed by a delay of one or more time slots.

9.600MHz、12.000MHz、16.000MHzのシステムの実施形態が、図9B及び図9Cに図示されている。これらのフォーマットは、遠隔通信クロックのサポートを可能にするであろうし、マスターとスレーブの間で用いられる帯域幅を、マスターによって又はスレーブによって用いられる帯域幅の約1/3から2/3に変化することが可能である。これらのフォーマットは、19.200MHzに相応するクロック周波数でのより効率的な転送のために、一行当たりのビット数が10、又は、それよりやや多いという利点を有している。この周波数、又は、38.40MHz(=2×19.20MHz)は、しばしば、移動電話や携帯デバイスのような遠隔通信アプリケーションにおいて用いられる。 Embodiments of 9.600 MHz, 12,000 MHz, and 16.000 MHz systems are illustrated in FIGS. 9B and 9C. These formats will allow support for telecommunications clocks and vary the bandwidth used between the master and slave from about one-third to two-thirds of the bandwidth used by the master or slave. It is possible to do. These formats have the advantage of having 10 or slightly more bits per line for more efficient transfer at a clock frequency corresponding to 19.200 MHz. This frequency, or 38.40 MHz (= 2 × 19.20 MHz), is often used in remote communication applications such as mobile phones and mobile devices.

図9D及び図9Eを参照して、追加のフレーム構造を説明する。様々な実施形態によれば、各同期パルスの間の各フレームに、同一数のビットが存在する。しかしながら、例えばコマンドに用いられる帯域幅の量を変更することにより、ビット数は、変更され得る。フレーム構造は、行および列の数も変化され得るが、それでもビットの数を同一に維持し得る。例えば、図9D及び図9Eの両方が、1フレーム当たり同一のビット数を備えている。様々な約数に分解可能な1フレーム当たりのより大きなビット数(例えば、80又は144ビット)で除算することで、より高い帯域幅による受信アイ開口における高ジッタという犠牲を払うが、PLL逓倍係数を変更することなくフレーム編成を変更可能である。 Additional frame structures will be described with reference to FIGS. 9D and 9E. According to various embodiments, there are the same number of bits in each frame during each synchronization pulse. However, the number of bits can be changed, for example by changing the amount of bandwidth used in the command. The frame structure can vary in the number of rows and columns, but can still keep the number of bits the same. For example, both FIGS. 9D and 9E have the same number of bits per frame. Dividing by a larger number of bits per frame that can be decomposed into various divisors (eg, 80 or 144 bits) at the expense of high jitter in the receive eye aperture with higher bandwidth, but with a PLL multiplication factor. The frame organization can be changed without changing.

例示的なメッセージフィールドの編成が、下記に図示されている。

Figure 2021536151
An exemplary message field organization is illustrated below.
Figure 2021536151

多くのコマンドが従来のものである(何もしない、レジスタの読み出し及び書き込み)かもしれないが、DELAYコマンドは、伝送線路に接続されたデバイス間での最適なタイミング取りのための遅延を見出すことに用いられ得ることが理解されるであろう。これは、マスターが最初に線路をある値にチャージし、その後、バスホルダーでこの値を保持し、又は、フローティングバスを用い、その後、主ドライバを開放し、その後は、バスに接続された任意のデバイスがこの値をトグル可能であるようにすることで達成され得る。マスターに最も近く位置しているデバイスが、バスラインのトグルに最初に影響を与えるであろうし、これは、高速に刻時されてタイミングイベントを検出するカウンタを用いて、又は、複数の遅延回路を用いて高い信頼度で測定され得る。測定の間、タイミングに影響を及ぼさないようにバスは終端されないであろう。測定は、(スレーブ送信タイミングを最適化するために)マスターの内部で行うことができ、(スレーブ−スレーブ間通信タイミングを最適化するために)スレーブデバイスの内部で行うこともできる。 While many commands may be conventional (do nothing, read and write registers), the DELAY command finds a delay for optimal timing between devices connected to the transmission line. It will be understood that it can be used in. This means that the master first charges the track to a value, then holds this value in the bus holder, or uses a floating bus, then releases the main driver, and then any connected to the bus. This can be achieved by allowing the device to toggle this value. The device closest to the master will first affect the toggle of the bus line, using a counter that is timed at high speed to detect timing events, or multiple delay circuits. Can be measured with high reliability using. During the measurement, the bus will not be terminated so as not to affect timing. The measurement can be done inside the master (to optimize slave-slave transmission timing) or inside the slave device (to optimize slave-slave communication timing).

図9Fは、様々な実施形態による、例示的なプロトコルシンボルを図示している。例示的なコマンドのもう一つのセットが、更に、下記のテーブルに図示されている。

Figure 2021536151
FIG. 9F illustrates exemplary protocol symbols according to various embodiments. Another set of exemplary commands is further illustrated in the table below.
Figure 2021536151

ここでは、「レジスタ読み出し動作」の実施形態を説明する。レジスタ読み出し動作を実行するために、下記のシーケンスが実行されてもよい:(i)アドレス書き込み動作を用いて正しいアドレス値を書き込む。(ii)レジスタ読み出し動作を行う(データフィールドは、読み出し値を含むであろう)。もし、ある範囲のレジスタを読み出す必要があるなら、これは、各読み出し動作間でアドレスレジスタを更新することなく実行可能である。これは、アドレスカウンタが各読み出し動作で1だけインクリメントされ得るため可能となっている。 Here, an embodiment of the "register read operation" will be described. In order to perform the register read operation, the following sequence may be executed: (i) Write the correct address value using the address write operation. (Ii) Perform a register read operation (the data field will contain the read value). If a range of registers needs to be read, this can be done without updating the address registers between each read operation. This is possible because the address counter can be incremented by 1 for each read operation.

ここでは、「レジスタ書き込み動作」の実施形態を説明する。レジスタ書き込み動作を行うために、下記のシーケンスが実行されてもよい:(i)アドレス書き込み動作を用いて正しいアドレス値を書き込む。(ii)レジスタ書き込み動作を行う(データフィールドは、読み出し値を含むであろう)。もし、ある範囲のレジスタが書き込まれるべきであるなら、これは、各書き込み動作間でアドレスレジスタを更新することなく実行可能である。これは、アドレスカウンタが各書き込み動作で1だけインクリメントされ得るため可能となっている。 Here, an embodiment of the "register write operation" will be described. The following sequence may be executed to perform the register write operation: (i) Write the correct address value using the address write operation. (Ii) Perform a register write operation (data field will contain read value). If a range of registers should be written, this can be done without updating the address registers between each write operation. This is possible because the address counter can be incremented by 1 for each write operation.

ここでは、「アドレスレジスタ書き込み動作」の実施形態を説明する。レジスタアクセスは、アドレスレジスタによって制御される。レジスタ操作を行う前に、まず、アドレスレジスタの値が規定される。これは、アドレスレジスタ書き込み動作で引き起こされる。アドレスレジスタは、宛先のスレーブデバイス内の現在アクティブであるレジスタを示している。続くアクセス(読み出し又は書き込み動作)は、アドレスレジスタをインクリメントすることがある。これは、複数のレジスタへのより高速なアクセスを可能にする。様々な実施形態において、読み出し及び書き込み動作の両方を制御する単一のレジスタしか存在せず、如何なる読み出し又は書き込み動作でも、このアドレスレジスタの値をインクリメントすることがある。インクリメントは、アドレスレジスタの値が、読み出し又は書き込み動作において、最初に一度用いられた後に行われる。アドレスレジスタの現在値は、テーブルに図示されているコマンドを用いては読み返すことはできない。 Here, an embodiment of the "address register write operation" will be described. Register access is controlled by the address register. Before performing a register operation, the value of the address register is first specified. This is caused by the address register write operation. The address register indicates the currently active register in the destination slave device. Subsequent access (read or write operation) may increment the address register. This allows faster access to multiple registers. In various embodiments, there is only a single register that controls both read and write operations, and any read or write operation may increment the value of this address register. The increment is performed after the value of the address register is first used once in the read or write operation. The current value of the address register cannot be read back using the commands shown in the table.

ここでは、「ビーコン」コマンドの実施形態を説明する。このコマンドは、48kHzの繰り返し周期でマスターによって送出されることがある。それは、全音声ソースが同期されるように音声タイミングをフレームの開始に同期するためにスレーブによって用いられることがある。 Here, an embodiment of the "beacon" command will be described. This command may be sent by the master with a repeating cycle of 48 kHz. It may be used by the slave to synchronize the audio timing to the start of the frame so that all audio sources are synchronized.

ここでは、「デバイスループ遅延」コマンドの実施形態を説明する。このコマンドは、スレーブデバイスによって開始されマスターに伝搬する遷移を測定することで、スレーブデバイスからマスターへのターンアラウンド遅延を測定する。この実施形態では、2経路遅延を測定するための機構が提供される。ここでは、遅延測定のための方法800の実施形態を、図10Aを参照しながら説明する。まず、マスターが、デバイスにコマンドを送り、遅延測定が開始することを指示する(ステップ802)。次に、両端で終端が無効にされ(ステップ804)、伝送線路が既知のシンボルでチャージされる(ステップ806)。既知のデバイスが、ステップ808において伝送線路をディスチャージすることで応答する。チャージイベントからディスチャージイベントまでの遅延が、ステップ810において測定される。ステップ812において、もしシステムが端部終端を備えているなら、伝送線路の両端において終端が有効にされる。 Here, an embodiment of the "device loop delay" command will be described. This command measures the turnaround delay from the slave device to the master by measuring the transition initiated by the slave device and propagating to the master. In this embodiment, a mechanism for measuring a two-path delay is provided. Here, an embodiment of the method 800 for delay measurement will be described with reference to FIG. 10A. First, the master sends a command to the device instructing the delay measurement to start (step 802). The termination is then disabled at both ends (step 804) and the transmission line is charged with a known symbol (step 806). A known device responds by discharging the transmission line in step 808. The delay from the charge event to the discharge event is measured in step 810. At step 812, if the system has end terminations, terminations are enabled at both ends of the transmission line.

一の実装では、マスターがデバイスループ遅延コマンドを送出し、その後、問い合わせるべきデバイス番号が続く。次に、マスターは、データフィールドにおいてデバイスID値を送出する。もし、デバイスIDがデータフィールドと同一であれば、内部フラグ(“device_update_ready”)がセットされるであろう。もし、デバイスIDがデータフィールドと同一でない場合、内部フラグはリセットされるであろう。次に、バスが、マスターにより既知の状態に設定される(即ち、バスが、既知の論理値、0に初期化される)。マスターは、弱いバスホルダーで、又は、フローティングバスを用いてこの状態を維持し、バスを既知の状態に駆動した後でそのトランスミッタを無効にし、測定の間、両端における終端が無効にされることを確実にするであろう。例として、マスターは、同期のために0−1信号を用い、バスを“1”状態にしておいてもよい。 In one implementation, the master sends a device loop delay command, followed by the device number to query. The master then sends the device ID value in the data field. If the device ID is the same as the data field, the internal flag (“device_update_ready”) will be set. If the device ID is not the same as the data field, the internal flag will be reset. The bus is then set to a known state by the master (ie, the bus is initialized to a known logical value of 0). The master shall maintain this state with a weak bus holder or with a floating bus, disable the transmitter after driving the bus to a known state, and disable terminations at both ends during the measurement. Will ensure. As an example, the master may use the 0-1 signal for synchronization and leave the bus in the "1" state.

その後、スレーブデバイスは、スレーブデバイス内部の強い内部ドライバを用いて、この状態を異なる値に駆動することができる。一実施形態では、スレーブデバイスは、次のシーケンス−ZZZZ-00-ZZZZ−を出力する。ここで、Zが無効にされたドライバであり、0は、ロー信号を駆動する。該2つの0は、全ての遅延状態の下で0を正しく読むことを確実にするであろう。マスターのレシーバが、1以上のスレーブから遷移信号を受け取ると、マスターは、タイミングから遅延を知るであろう。このイベントのタイミングは、最近接するデバイスへの双方向遅延を見出し、送信または受信タイミング遅延を制御することによってレシーバのアイダイアグラムを最適化するために用いられるであろう。遅延値は、マスターデバイス内部の内部オーバーサンプルドクロックに基づいて測定されてもよく、マスターデバイス内部の遅延線又は遅延サンプルの使用に基づいて測定されてもよい。重大な量のノイズ又はクロックジッタがバスに存在しているような場合には、良い遅延読み出しを得るためには、この過程を複数回繰り返す必要があるかもしれない。これは、複数タイムスロットから高分解能、例えば、2nsで得られ、その後、複数、例えば、64の読み出し値に渡って平均化がなされた返し値の読み出しを含んでいてもよい。もし、返し値が0〜36nsの任意の位置で発生し得るのであれば、全ての場合に遅延を正確に決定するためには、それぞれがスレーブデバイスから帰られた複数の測定結果に基づいている全部で19の値が必要になるであろうし、それぞれの場合に、良い平均値が返されるようにするためには、複数の(例えば、64の)読み出しを実施する必要があるかもしれない。中間の遅延位置から探索を開始することにより、探索時間を顕著に短縮することができる。更に、最後に返された値は、遅延が長すぎるか短すぎるかの指標を与えるから、最後に返された値が何であるかに依存して探索方向を変えることで、探索時間を短縮することも可能である。この限定的な場合では、ちょうど遷移において、スレーブから返される概ね50%の0と1とを測定するであろう。これに加え、最善のサンプリング点を得るためには、1/2データスロットを追加する必要があろう。 The slave device can then drive this state to a different value using a strong internal driver inside the slave device. In one embodiment, the slave device outputs the next sequence-ZZZZ-00-ZZZZ-. Here, Z is the disabled driver, and 0 drives the low signal. The two zeros will ensure that the zeros are read correctly under all delay conditions. When the master's receiver receives a transition signal from one or more slaves, the master will know the delay from the timing. The timing of this event will be used to find bidirectional delays to the closest device and optimize the receiver's eye diagram by controlling the transmit or receive timing delays. The delay value may be measured based on the internal oversampled clock inside the master device, or may be measured based on the delay line inside the master device or the use of a delayed sample. If a significant amount of noise or clock jitter is present on the bus, this process may need to be repeated multiple times to get a good delayed read. This may include reading the return value obtained from multiple time slots with high resolution, eg, 2ns, and then averaging over multiple readings, eg 64. If the return value can occur at any position between 0 and 36 ns, each is based on multiple measurements returned from the slave device in order to accurately determine the delay in all cases. A total of 19 values will be needed, and in each case multiple reads (eg 64) may need to be performed to ensure a good average value is returned. By starting the search from an intermediate delay position, the search time can be significantly shortened. In addition, the last returned value gives an indicator of whether the delay is too long or too short, so the search time is shortened by changing the search direction depending on what the last returned value is. It is also possible. In this limited case, just at the transition, we would measure approximately 50% of the 0s and 1s returned by the slave. In addition to this, it may be necessary to add 1/2 data slots to get the best sampling points.

他の実装では、マスターは、スレーブから読み出した値を書き返し、そしてスレーブデバイス自らに内部遅延を調整させてもよい。これは、スレーブからマスターへの通信を最適化する、即ち、調節に必要な帯域幅を低減するために使用され得る。同様に、1つのスレーブデバイスが他のスレーブデバイスから読み出した値を書き込み、当該他のスレーブデバイスに自らに内部送信タイミングを調整させてもよい。 In other implementations, the master may write back the values read from the slave and let the slave device itself adjust the internal delay. It can be used to optimize slave-to-master communication, i.e. reduce the bandwidth required for tuning. Similarly, one slave device may write a value read from another slave device and cause the other slave device to adjust the internal transmission timing by itself.

バスに残存する電荷は、マスターがバスを既知の値に設定し、これにより伝送線路に如何なる以前の情報もない状態にするとき、マスターによって吸収されるであろう。もし、複数のスレーブが存在するのであれば、複数のスレーブは、そのデバイスID(16ビットで一定)を用いて、一度に一つずつ消滅可能である。マスターに最も近いスレーブは、得られた遅延値に対応するであろう。言い換えれば、デバイス遅延の測定又はバスに接続されたデバイスの計数の間、最初に伝送線路に接続されたデバイス(典型的にはマスター)と最後にバスに接続されたデバイス(典型的にはスレーブデバイス)は、両方が、この過程の間、そのドライバを無効化して、伝送線路内部の固有の電荷によって状態を維持するフローティングバスを有効にするであろう。 The charge remaining on the bus will be absorbed by the master when the master sets the bus to a known value, thereby leaving no previous information on the transmission line. If there are a plurality of slaves, the plurality of slaves can be extinguished one at a time by using the device ID (constant at 16 bits). The slave closest to the master will correspond to the delay value obtained. In other words, during device delay measurement or counting of devices connected to the bus, the device first connected to the transmission line (typically the master) and the last device connected to the bus (typically the slave). The device) will both disable the driver during this process and enable a floating bus that maintains its state by the inherent charge inside the transmission line.

様々な実施形態において、番号DEVとデータフィールド値以上のデバイスIDを有するデバイスのみが、出力を活性化するであろう。バスに現在接続されている最も高いアドレスを有するデバイスを発見し、異なるデバイスID(帯域幅を節約するために典型的には3ビット)を割り当てることによってサーチからこのデバイスを削除し、バスに接続された2番目に高いデバイスのアドレスを発見し続ける、等を行うために、その後、2分探索が使用可能である。言い換えれば、デバイスIDのMSBが最初に読み出され、低いデバイスIDを有するすべてのスレーブが離脱するように、調停手続きが最初に用いられる必要があろう。この手順は、唯一のデバイスのみが応答するまで継続されるであろう(注:この手続きはIC多マスター及びSoundWireアドレス調停と類似している)。 In various embodiments, only devices with a device ID greater than or equal to the number DEV and data field value will activate the output. Find the device with the highest address currently connected to the bus, remove this device from the search by assigning a different device ID (typically 3 bits to save bandwidth), and connect to the bus A two-minute search can then be used to continue finding the address of the second highest device, and so on. In other words, the arbitration procedure would need to be used first so that the MSB of the device ID is read first and all slaves with the lower device ID leave. This procedure is only a single device will be continued until the response (Note: This procedure is similar to I 2 C multi master and SoundWire address arbitration).

一実施形態では、測定を阻害しないことを確実にするために、遅延コマンドが用いられるときに全てのデバイスがフレームの最後の行において通常のデータトラフィックを止めるであろう。いくつかの実施形態では、スレーブデバイスは、ある幾何学的構成に対応する特定の遅延を用いるようにプログラムされ、これにより、このコンポーネントとのやり取りの前に物理的遅延を見出す必要をなくし、不揮発性メモリまたは内部回路に遅延値を運ぶための他の手段を含む必要をなくしてもよい。 In one embodiment, all devices will stop normal data traffic on the last line of the frame when the delay command is used to ensure that it does not interfere with the measurement. In some embodiments, the slave device is programmed to use a specific delay corresponding to a geometry, which eliminates the need to find a physical delay before interacting with this component and is non-volatile. It may not be necessary to include other means for carrying the delay value to the sex memory or the internal circuit.

図10Bを参照して、内部デバイス番号を保持しているがバスに適したデバイス番号を保持していない接続デバイスの計数のための方法850が図示されている。ステップ852において、マスターは、コマンドを送信して計数が開始することを指示する。ステップ854において両端における終端が無効にされ、ステップ856において、マスターが、伝送線路を既知のシンボルでチャージするように進める。もし、デバイス番号からのビットがハイであれば、バス上の未知のデバイスが、伝送線路をディスチャージすることで応答する(ステップ858)。既知の遅延の後、この位置についてデバイス番号にロービットがある全てのデバイスが停止するであろう(ステップ860)。もし、複数のデバイスがとどまっているならば(ステップ862)、次のデバイスビットがチェックされ、ステップ864においてデバイス調停が継続する。もし、単一のデバイスのみが残存しているなら、ステップ866において該デバイスにアドレスが割り当てられる。もし、マスターが、事前に、全ての接続されたデバイスの長いID(例えば、16ビット)を知っているならば、マスターは、単に、これらに一つずつ呼びかけ、起動の直後に、アドレス調停を実行する必要なしに、各デバイスに新しい短いID(3ビット)を再割り当てすることができる。 With reference to FIG. 10B, a method 850 for counting connected devices that retains an internal device number but does not retain a device number suitable for the bus is illustrated. At step 852, the master sends a command instructing the start of counting. Terminations at both ends are disabled in step 854 and in step 856 the master proceeds to charge the transmission line with a known symbol. If the bit from the device number is high, an unknown device on the bus responds by discharging the transmission line (step 858). After a known delay, all devices with a low bit in the device number for this location will be shut down (step 860). If a plurality of devices remain (step 862), the next device bit is checked and device arbitration continues in step 864. If only a single device remains, an address is assigned to that device in step 866. If the master knows in advance the long IDs (eg 16 bits) of all connected devices, the master simply calls them one at a time and immediately after booting, address arbitration. Each device can be reassigned a new short ID (3 bits) without the need to do so.

ここでは、「デバイスアドレス設定」コマンドの実施形態を説明する。パワーオンリセットの後、スレーブデバイスはデバイスアドレス値0が割り当てられる。このコマンドを実行すると、宛先のデバイスは、新しいアドレス(0〜7)を得るであろう。なお、アドレス7(111)は、ブロードキャストのために含まれている。一実施形態では、device_update_ready セットを有するデバイスのみが更新される。 Here, an embodiment of the "device address setting" command will be described. After the power-on reset, the slave device is assigned the device address value 0. When this command is executed, the destination device will get a new address (0-7). The address 7 (111) is included for broadcasting. In one embodiment, only devices with the device_update_ready set are updated.

二重動作
ここでは、図11Aを参照して二重動作の実施形態を説明する。様々な実施形態において、バス900は、単信又は二重動作モードで動作し得る。この配置では、I/Oポートは、出力ドライバの設計により、同時に信号の送受信を行うように構成されることがある。該配置は、家庭用のオーディオシステムに用いられることがあるように、バス長が25メートルを超えることを可能にするために用いられてもよい。
Dual operation Here, an embodiment of the dual operation will be described with reference to FIG. 11A. In various embodiments, the bus 900 may operate in simplex or dual mode of operation. In this arrangement, the I / O ports may be configured to send and receive signals simultaneously, depending on the design of the output driver. The arrangement may be used to allow bus lengths to exceed 25 meters, as may be used in home audio systems.

この実施形態では、前進及び後進伝搬波の過渡応答が、2つのドライバが同時に存在しているときに何が起こるかを評価するために用いられる。任意の点の電圧は、前進及び後進伝搬波の和によって決定される。従って、出力ドライバのインピーダンスと伝送線路のインピーダンスを考慮に入れることにより、むしろ簡単に、任意のノードにおける点を測定し、2つのドライバからの影響を差し引くことができる。 In this embodiment, the transient response of forward and backward propagating waves is used to evaluate what happens when two drivers are present at the same time. The voltage at any point is determined by the sum of the forward and backward propagating waves. Therefore, by taking into account the impedance of the output driver and the impedance of the transmission line, it is rather easy to measure the points at any node and subtract the influence from the two drivers.

簡単のために、まず、伝送線路の各端に位置する2つのドライバ902及び904のみがある状況を評価しよう。リンクを適切に終端するために、ドライバ902及び904が、伝送線路のインピーダンスZに等しい値の直列終端を用いるとも仮定しよう。これは、前進及び後進伝搬波の両方が、初期のドライバ電圧の半分であろうということを意味している。任意の点の電圧は、前進及び後進伝搬波の和から見出すことが可能であるので、測定した電圧からドライバ電圧の半分を差し引くことで正しい受信電圧を見出すことができる。これは、差動の場合には、単に、反転した送信電圧の半分を受信電圧に加える、例えば、キャパシタを用いて差動送信電圧の半分を交換して加える等で行うことができる。このアプローチでは、多くの構成でトランスミッタ方向のターンアラウンドの間の双方向遅延は必要なく、ターンアラウンド遅延が無いことにより、継続動作を行い、データストリームに休止を入れることなく、非常により長いリンク(例えば、25メートル)が可能であり、極めて高速での全二重動作(0.1〜5Gbps)が可能である。なお、この構成は、各線端にある一つのノードに動作が留められ、少なくとも一のノードが定期的に同期パルスを送出する限り、如何なるタイミング調整も必要としない。 For simplicity, let us first evaluate the situation where there are only two drivers 902 and 904 located at each end of the transmission line. To properly terminate the link, the driver 902 and 904, will also assume that using a series termination value equal to the impedance Z 0 of the transmission line. This means that both forward and backward propagating waves will be half the initial driver voltage. Since the voltage at any point can be found from the sum of the forward and backward propagating waves, the correct received voltage can be found by subtracting half of the driver voltage from the measured voltage. In the case of differential, this can be done by simply adding half of the inverted transmit voltage to the receive voltage, for example, by exchanging and adding half of the differential transmit voltage using a capacitor. This approach does not require bidirectional delay between turnarounds in the transmitter direction in many configurations, and the lack of turnaround delay allows for continuous operation and a much longer link (without pausing the data stream). For example, 25 meters) is possible, and full-duplex operation (0.1 to 5 Gbps) at extremely high speed is possible. It should be noted that this configuration does not require any timing adjustment as long as the operation is limited to one node at each line end and at least one node periodically sends out a synchronization pulse.

複数スレーブ
ここでは、複数のスレーブの様々な実施形態を説明する。二重動作は、単一のマスターと単一のスレーブデバイスしかないときには比較的簡単であるが、複数のスレーブデバイスがある場合には状況がより複雑になる。一つの問題は、中継ノードが、いずれの方向からの波も反射するであろうということである。なぜなら、中継ノードは、(マルチドロップ接続を可能にするために)終端を提供しないからである。従って、伝統的な二重動作は、ある実装については実用的ではないかもしれない。しかしながら、適切に信号のタイミングを取ることで、スループットを増大させることができる。様々な実施形態において、信号は、最初にマスターからスレーブデバイスに向かうであろう。他のスレーブデバイスは、それらが送信を開始できるようになる前に、マスターからの前進波がこれらのデバイスを通り過ぎるまで待つ必要があるかもしれない。従って、如何なるハンドオーバー遅延を必要とせずにこの状況に対処する例示的なタイミングダイアグラムは、次の送信シーケンス{M, S1, S2, S3, S4, S5}であり、その後、方向を変えるときにこのパターンを反対{S5, S4, S3, S2, S1, M}で繰り返すことであろう。ここで、Mはマスターを表しており、S1は、マスターに最も近いスレーブデバイスであり、S5は、マスターから最も遠いスレーブデバイスである。言い換えれば、バスに接続されたデバイスは、シーケンスを前進又は後進波について送信し、そのようにして伝送線路上の中間点からの反射の問題を当然に回避するであろう。バスに接続されたデバイスのタイミング遅延は、この手法を試みる前に、当然に特定され訂正されるであろう。
Multiple Slave Here, various embodiments of the plurality of slaves will be described. Dual operation is relatively easy when there is only a single master and a single slave device, but the situation is more complicated when there are multiple slave devices. One problem is that the relay node will reflect waves from either direction. This is because the relay node does not provide termination (to allow multi-drop connections). Therefore, traditional dual behavior may not be practical for some implementations. However, with proper signal timing, throughput can be increased. In various embodiments, the signal will first go from the master to the slave device. Other slave devices may have to wait for the forward wave from the master to pass through these devices before they can start transmitting. Therefore, an exemplary timing diagram to address this situation without the need for any handover delay is the next transmission sequence {M, S1, S2, S3, S4, S5}, and then when changing direction. This pattern would be repeated in the opposite {S5, S4, S3, S2, S1, M}. Here, M represents the master, S1 is the slave device closest to the master, and S5 is the slave device farthest from the master. In other words, the device connected to the bus will transmit the sequence for forward or backward waves, thus naturally avoiding the problem of reflection from the midpoint on the transmission line. Timing delays for devices connected to the bus will naturally be identified and corrected before attempting this technique.

すべての通信について差動シグナリング手法が用いられることを確保することで、放出及び受け取るEMIが、顕著に低減されるであろう。図11Bは、休止期間で始まり、同期信号が続き、そしてデータが続き、そして再度休止になる差動シグナリング920の例を示している。休止期間は、コモンモードノイズを避けるためには差動の性質を有しているべきであり、これは、休止時間の間の固定的な電力消費を避け、これにより控え目な帯域幅の要求について非常に低い電力消費を可能にするために、一の信号線における終端が、ハイレベルで終わり、他方がローレベルで終わるべきであることを意味している。 Ensuring that differential signaling techniques are used for all communications will significantly reduce the EMI emitted and received. FIG. 11B shows an example of differential signaling 920 starting with a pause period, followed by a sync signal, followed by data, and then paused again. The pause period should have a differential nature to avoid common mode noise, which avoids fixed power consumption during the pause time, thereby for conservative bandwidth requirements. It means that the termination in one signal line should end at the high level and the other at the low level to allow very low power consumption.

図11Cは、休止モードにおいて可能な最低のEMIと可能な最低の電力消費を確保するためにハイ及びローシグナリング電圧に終端する差動シグナリングシステム930の例を示している。図11Dは、各端のトランスミッタ942、944、946及び948がバスの直列終端として用いられ、これにより、終端負荷が無いことで端のノードにおける電力消費を低減し、実装を簡単にする、差動シグナリングシステム940の類似の例を示している。各端のバスドライバは、データを送っていないときに休止状態になり、デフォルトの終端電圧を送り、これにより、休止状態での電力消費を低減する。いくつかの実施形態では、2本の伝送線路の一方が、遮蔽のための接地の代わりに電力線を使用し、これにより、電力の伝送も可能にする。いくつかの実施形態は、シールドされた同軸ケーブルの代わりに、例えば、低EMIの要求のために4線のツイストペア構成になっているDATA+、DATA-、接地及び電源のような4本のツイスト線を用いてもよい。接地及び電源線は、更にEMIを低減する。他の実施形態では、単一のシールドが使用され、電力と差動データがシールドの内部の3本のケーブルに位置している。 FIG. 11C shows an example of a differential signaling system 930 terminated to high and low signaling voltages to ensure the lowest possible EMI and the lowest possible power consumption in hibernate mode. In FIG. 11D, transmitters 942, 944, 946 and 948 at each end are used as series terminations for the bus, thereby reducing power consumption at the end nodes and simplifying implementation in the absence of termination loads, differences. A similar example of the dynamic signaling system 940 is shown. The bus driver at each end goes into hibernation when it is not sending data and sends a default termination voltage, which reduces power consumption in hibernation. In some embodiments, one of the two transmission lines uses a power line instead of grounding for shielding, which also allows power transmission. In some embodiments, instead of shielded coaxial cable, four twisted wires such as DATA +, DATA-, ground and power supply are in a four twisted pair configuration due to low EMI requirements, for example. May be used. Grounding and power lines further reduce EMI. In other embodiments, a single shield is used and power and differential data are located on three cables inside the shield.

いくつかの応用では、バスで発生しているランダムな信号伝送によって誘起される音声ノイズを最小化することが重要である。これは、バス上の様々なソースのシグナリングレベルを変化させる、例えば、データポートのトランスミッタ及びレシーバで擬似乱数生成器を用い、これによりバストラフィックをランダムにし、これにより音声帯域におけるスペクトル成分を低減することで行われてもよい。場合によっては、ランダム化は、音声帯域のスペクトル成分がデータ信号を高周波成分で乗じることにより、例えば、各行をあるランダムな又は事前に定義された値で乗じることによって一層に低くなるように、スペクトル先鋭化によって行われてもよい。場合によっては、ランダム化は、単に行を可聴帯域幅の外部の搬送波で乗算することによって行われてもよい。いくつかの実施形態では、各ポートは、エラーテスター(例えば、検証とテストのための8ビット擬似乱数生成器)を備えている。このポートテスタは、音声データのスクランブル及びデスクランブルにも用いられ得る。デジタル領域における乗算は、XOR又はXNORゲートによって実行され得る。例えば、ほとんど同一の擬似乱数生成器が、元の一連のデータを復元するために用いられ得る。擬似乱数生成器と、レシーバ/テスターの例については、例えば、SoundWire規格を参照されたい。以前には、類似の技術が、例えば無線モデムにおいて送信データストリームからDC成分を低減し又は除去するために用いられてきた。ここでスクランブルを用いることは、同一値の複数のシンボルの伝送を伴う状況を避けることすらせず、これは、同期を失わせる事態になり得るが、出力スペクトルの低周波成分を低減し、例えば音声帯域における干渉を避けるように用いられる。 In some applications, it is important to minimize the voice noise induced by the random signal transmission occurring on the bus. It varies the signaling levels of various sources on the bus, eg, uses a pseudo-random number generator at the transmitter and receiver of the data port, which randomizes the bus traffic and thereby reduces the spectral components in the voice band. It may be done by. In some cases, randomization is further reduced so that the spectral component of the audio band is further reduced by multiplying the data signal by a high frequency component, for example, by multiplying each row by some random or predefined value. It may be done by sharpening. In some cases, randomization may be done simply by multiplying the rows by a carrier wave outside the audible bandwidth. In some embodiments, each port comprises an error tester (eg, an 8-bit pseudo-random number generator for verification and testing). This port tester can also be used for scrambling and descrambled audio data. Multiplication in the digital domain can be performed by XOR or XNOR gates. For example, almost identical pseudo-random number generators can be used to restore the original set of data. For examples of pseudo-random number generators and receivers / testers, see, for example, the SoundWire standard. Previously, similar techniques have been used to reduce or remove DC components from transmitted data streams, for example in wireless modems. The use of scrambling here does not even avoid situations involving the transmission of multiple symbols of the same value, which can lead to loss of synchronization but reduce the low frequency components of the output spectrum, eg Used to avoid interference in the audio band.

場合によっては、ランダム化は、例えば、様々なトランスミッタからの出力をランダム化し、これにより如何なる音声への擾乱を低減するのみならず、更に、変調器のノイズ伝達関数を意図的に制御することによってノイズの出力スペクトルをノイズシェーピングすら行うように、既知のパターンを用いるデルタ−シグマ変調器を用いて実行され得る。 In some cases, randomization may, for example, randomize the output from various transmitters, thereby not only reducing disturbances to any voice, but also by deliberately controlling the noise transfer function of the modulator. It can be performed using a delta-sigma modulator with known patterns so that the noise output spectrum is even noise-shaped.

ケーブル仕様
ここでは、様々な実施形態による例示的なケーブル仕様を説明する。イン−イアーヘッドセットについては、例えば、細いAWG30又はAWG34ワイヤを用いるシールドされた構成のようなユーザ要求を満足するために、細いケーブルが使用されることがある。長いリンク、又は、大型のヘッドセット及びヘッドホンについては、太いケーブルが使用可能であることがあり、これは、少し減衰を低減もする。8本ではなく4本のワイヤのみが必要であることを除き、一例は、CAT5要求(ワイヤ種類AWG24)に似た、二重撚りケーブル対であろう。例えば、標準の100BASE−TXケーブルが使用可能である。15メータのリンクの減衰は、66db/100m×15m=9.9dB又は3.1倍である。このように、システムを設計する際には、送信電圧と最大レシーバヒステリシスの間の相違を考慮に入れるべきである。
Cable Specifications Here, exemplary cable specifications according to various embodiments will be described. For in-ear headsets, thin cables may be used to meet user requirements, such as shielded configurations with thin AWG30 or AWG34 wires. For long links, or large headsets and headphones, thick cables may be available, which also reduces attenuation slightly. An example would be a double stranded cable pair similar to the CAT5 requirement (wire type AWG24), except that only 4 wires are needed instead of 8. For example, a standard 100BASE-TX cable can be used. The attenuation of the 15 meter link is 66db / 100m x 15m = 9.9dB or 3.1 times. Thus, when designing the system, the difference between the transmit voltage and the maximum receiver hysteresis should be taken into account.

中間ノード
ここでは、中間ノードの例示的な実施形態を説明する。様々な実施形態において、端のノードは、伝送線路と整合するために、Zの直列出力インピーダンスを有しているが、中間ノードから見ると、1/2Zのインピーダンスになるであろう(なぜなら、中間ノードには、本質的に、それぞれがインピーダンスZを有する2本の伝送線路が見えるであろうからである)。全てのノードが同一の性能を有することがしばしば望ましい。様々な実施形態において、(i)各ノードが、U0の出力電圧を有し、(ii)各端のノードがZの出力インピーダンスを有している。中間ノードのインピーダンスは、もし、中間ノードが当該ノードに伝搬波が到達している間にアクティブであるならば、反射波を生じさせるであろう。この状況は、信号のタイミングを適切にする、即ち、前に伝送された情報を有する信号波が通過した後に、各ノードが最初に信号を送信することで回避可能である。伝搬波は、最終的には、伝送線路の端で吸収されるであろう。差動シグナリングが用いられる場合、例示的な伝送線路インピーダンス及び信号電圧は、Z=75Ω、U=250mVを含んでいてもよい。
Intermediate Nodes Here, exemplary embodiments of intermediate nodes will be described. In various embodiments, the end node has a series output impedance of Z 0 to match the transmission line, but will have an impedance of 1 / 2Z 0 when viewed from the intermediate node (1 / 2Z 0 impedance). This is because the intermediate node will essentially see two transmission lines , each with an impedance of Z 0). It is often desirable for all nodes to have the same performance. In various embodiments, (i) each node has an output voltage of U0, (ii) a node at each end has an output impedance of Z 0. The impedance of the intermediate node will give rise to reflected waves if the intermediate node is active while the propagated wave is reaching the node. This situation can be avoided by properly timing the signal, i.e., each node first transmitting the signal after the signal wave with previously transmitted information has passed. The propagating wave will eventually be absorbed at the end of the transmission line. When differential signaling is used, exemplary transmission line impedances and signal voltages may include Z 0 = 75Ω, U 0 = 250 mV.

加えて、伝送線路上の中間ノードは、2つの線路入力に対面するであろうし、もし、それらの出力インピーダンスが、伝送線路の遠く端に位置するノードと同一であるならば、出力信号電圧は、低くなるであろう。これは、中間ノードについてより低い出力インピーダンスを用いたり、中間ノードの出力駆動電圧を高くしたり、又は、伝送線路上のレシーバをより低い閾値電圧に調節したりすることで訂正可能である。 In addition, intermediate nodes on the transmission line will face the two line inputs, and if their output impedance is the same as the node located at the far end of the transmission line, the output signal voltage will be Will be low. This can be corrected by using a lower output impedance for the intermediate node, increasing the output drive voltage of the intermediate node, or adjusting the receiver on the transmission line to a lower threshold voltage.

起動シーケンス
ここでは、例示的な起動シーケンスを説明する。様々な実施形態において、通常のシグナリングは、差動2レベルシグナリングである。しかしながら、あり得るスレーブ故障の後、又は、電源がダウンした状態の後での起動状態又は再同期のための固有のパターンを得るために、マスターは、第3の、又は、より高い、相違する電圧レベルを送出するように構成されてもよい。このレベルは、データ伝送には用いられず、スレーブデバイスの再同期又は起動状態(低電力スタンバイからのウェークアップ)のためにのみ使用されるであろう。これは、放射されるEMIには影響しないであろう。なぜなら、この、より高いレベルは、初期同期の間(例えば、最初の1ms)の間しか用いられないからである。一実施形態では、起動シーケンスは、通常の信号伝送レベルの2倍の電圧レベルの12ビットスロットからなる。様々な実施形態において、起動シーケンスの直後にPLLによって用いられる同期エッジが続くであろう。EMIを低減し、使用可能な帯域幅を増加するために、起動シーケンスは、通常動作の間には伝送されないであろう。図示の実施形態では、起動又は再同期の間、マスターは、おおよそ、(12.288MHzのクロック周波数を用いた場合)元の帯域幅の62.5%を残しており、9.60MHz動作モードでは、通常の帯域幅の40%を残している。簡単な実装では、DCオフセットが、ある数のタイムスロット、例えば、12のタイムスロットに追加され、レシーバが差動であるため、追加のオフセットはデータに影響せず、しかしながら電源投入状態を検出するために使用可能である。初期及び起動状態のためのみの更に簡単な実装においては、1.0Vのようなロジック電圧が、ウェークアップ検出のために用いられ、これにより、差動レシーバを低電力状態にする必要をなくしてもよい。
Boot Sequence Here, an exemplary boot sequence will be described. In various embodiments, the usual signaling is differential two-level signaling. However, in order to obtain a unique pattern for boot state or resynchronization after a possible slave failure or after a power down state, the master differs from the third or higher. It may be configured to deliver a voltage level. This level will not be used for data transmission and will only be used for slave device resynchronization or boot state (wake up from low power standby). This will not affect the EMI emitted. This is because this higher level is only used during the initial synchronization (eg, the first 1 ms). In one embodiment, the activation sequence consists of a 12-bit slot with a voltage level that is twice the normal signal transmission level. In various embodiments, the activation sequence will be immediately followed by the synchronous edge used by the PLL. To reduce EMI and increase available bandwidth, the boot sequence will not be transmitted during normal operation. In the illustrated embodiment, during boot or resynchronization, the master leaves approximately 62.5% of the original bandwidth (when using a clock frequency of 12.288 MHz) and in 9.60 MHz operating mode. , Remaining 40% of normal bandwidth. In a simple implementation, a DC offset is added to a certain number of time slots, eg, 12 time slots, and the receiver is differential, so the additional offset does not affect the data, but detects the power-on state. Can be used for. In simpler implementations only for the initial and boot states, a logic voltage such as 1.0V is used for wake-up detection, which eliminates the need to put the differential receiver in a low power state. good.

例示的な差動シグナリング電圧が、下のテーブルに図示されている。

Figure 2021536151
An exemplary differential signaling voltage is illustrated in the table below.
Figure 2021536151

様々な実施形態において、スレーブデバイスの安全な起動機構を確保するために、スレーブデバイスが再び同期に復帰する必要があるときに、より高い電圧レベルがバスラインにおいて用いられる。この、より高い電圧は、通常のデータトラフィックとリセット状態とを区別するために使用されるであろう。それは、バスが動作している間に、低電力ウェークアップのための電源投入回路(例えばウェークアップワード)に用いられてもよい。この、より高いバス電圧は、ウェークアップ回路をトリガし、電力消費を低減するように、バス上のランダムノイズを避けるために、通常のデータシンボルよりも長時間オンにされ得る。合理的な耐性と、良好なノイズ耐性と、低電力消費を得るために、ウェークアップイベントが、一連の12ビットスロットからなるであろうことが示唆される。これは、134.400MHzの最高ビットクロックで、約89nsの最小オン時間に等価である。 In various embodiments, higher voltage levels are used in the bus line when the slave device needs to return to synchronization again to ensure a safe boot mechanism for the slave device. This higher voltage will be used to distinguish between normal data traffic and reset conditions. It may be used in a power-on circuit (eg, a wake-up word) for low power wake-up while the bus is operating. This higher bus voltage can be turned on longer than a normal data symbol to avoid random noise on the bus so as to trigger the wake-up circuit and reduce power consumption. It is suggested that the wakeup event will consist of a series of 12-bit slots in order to obtain reasonable immunity, good noise immunity and low power consumption. This is a maximum bit clock of 134.400 MHz, which is equivalent to a minimum on-time of about 89 ns.

図12を参照して、ステップ1002においてシステムが電源オンされ、ロックフラグとドライバが無効にされ(ステップ1004)、位相検出器が無効にされる(ステップ1006)。ステップ1008では、デバイスを検出するために広範囲サーチが有効にされる。もし、ステップ1010で、あるデバイスについて特別なシーケンスが検知されたなら、ステップ1012において同期パルスが検出される。もし、デバイスについて特別なシーケンスが検出されない場合、このステップは、それが検出されるまで繰り返される。ステップ1014において、もし、PLLがロックされているなら、広範囲サーチが無効にされ(ステップ1016)、ドライバが有効にされる(ステップ1018)。同期シーケンス(ステップ1012〜1018)は、時間ゲートが開かれると(ステップ1020)、繰り返される。もし、PLLがロックされておらず(ステップ1014)、狭帯域が有効にされているなら(ステップ1022)、ステップ1024においてドライバが無効にされ、高電力での広範囲サーチを繰り返すように制御がステップ1008に移る。 With reference to FIG. 12, in step 1002 the system is powered on, the lock flag and driver are disabled (step 1004), and the phase detector is disabled (step 1006). In step 1008, a broad search is enabled to detect the device. If a special sequence is detected for a device in step 1010, a synchronous pulse is detected in step 1012. If no special sequence is detected for the device, this step is repeated until it is detected. At step 1014, if the PLL is locked, widespread search is disabled (step 1016) and the driver is enabled (step 1018). The synchronization sequence (steps 1012-1018) is repeated when the time gate is opened (step 1020). If the PLL is not locked (step 1014) and narrowband is enabled (step 1022), the driver is disabled in step 1024 and control steps to repeat a wide range search at high power. Move on to 1008.

ここでは、図13を参照して、特別な起動回路1100の動作を説明する。通常動作の間には、起動シーケンスは存在せず、この回路からの出力はゼロであろう。この回路からの出力は、PLLがロックされるまで使用される。動作時に、この回路は、バスからの入力をフィルタし、もし、バスが、ある時間、あるハイ閾値を超えているならば、次のハイからローヘの遷移を検知するようにPLLを有効にする。バスレベルがローであるとき、当該回路は、如何なる蓄積された電荷をも排出し、再び、中断されないハイ値のシーケンスを探し始める。

Figure 2021536151
この一連の論理1の長さは、クロック周波数とハイ値同期パルスの長さに依存するであろう。これは、アナログ回路により、エラー状態において同期の開始をチェックするために用いられてもよい。 Here, the operation of the special starting circuit 1100 will be described with reference to FIG. During normal operation, there will be no boot sequence and the output from this circuit will be zero. The output from this circuit is used until the PLL is locked. In operation, this circuit filters the input from the bus and enables the PLL to detect the next high-to-low transition if the bus exceeds a certain high threshold for a period of time. .. When the bus level is low, the circuit drains any accumulated charge and again begins looking for an uninterrupted sequence of high values.
Figure 2021536151
The length of this series of logic 1s will depend on the clock frequency and the length of the high value synchronization pulse. It may be used by an analog circuit to check the start of synchronization in an error state.

位相検出器からの出力は、50ns(多くても120ns)後、又は、複数の論理1の後に論理0になった後に有効にされる。これは、図示された実施形態では、多くとも4の連続するタイムスロットに渡る障害の間でさえ音声転送を可能にする。障害状態の間、最初の4列が音声転送のために用意される一方で、各5番目の列が論理0を送信するために用いられ、その後、同期パルスの開始まで更なる音声が続く。0から1への遷移の後、位相検出器の出力は、再び無効にされる。一実施形態では、スレーブデバイスは、ロックを得た後、現在のロック位置によって決まる狭いウィンドウにおいて同期遷移を探し、他の全てのバストラフィックを無視する。
ロックオン検出器

Figure 2021536151
The output from the phase detector is enabled after 50 ns (at most 120 ns) or after multiple logic 1s followed by logic 0. This allows voice transfer even during failures over at most four consecutive time slots in the illustrated embodiment. During the fault condition, the first four columns are prepared for voice transfer, while each fifth column is used to transmit logic 0, followed by further voice until the start of the sync pulse. After the transition from 0 to 1, the output of the phase detector is disabled again. In one embodiment, after obtaining a lock, the slave device looks for synchronous transitions in a narrow window determined by the current lock position and ignores all other bus traffic.
Lock-on detector
Figure 2021536151

ここでは、例示的な信号伝送ソルーションを説明する。第1の信号伝送シーケンスソルーションでは、
3レベルシグナリングが用いられる:CAT5シグナリングと同様に、EMI低減のために、{−1,0,+1}が{ロー,ゼロ,ハイ}によって信号化される。
論理0:前と同一レベル。
(4つの0の後、逆のシーケンスからの値が続くことがある。即ち、安全な開始検出を確保するために、いくつかの0の後、逆方向に行く)。
論理1:3値のシーケンスにおける隣の値、例えば、複数の1が、シーケンス{ゼロ,ハイ,ゼロ,ロー,ゼロ,ハイ,ロー等}として信号化される。そして、同期とデータとを区別するために、同期値は、正当なデータ値によって可能なものと異なるシーケンス、例えば、{ハイ,ロー,ハイ,ロー}又は{ゼロ,ハイ,ゼロ,ハイ}を用いるであろう。言い換えれば、3値エンコーディングは、生成された高調波を低減することでEMIの低減を可能にしながら、レシーバが同期とデータを確実に区別することができるようにする。
Here, an exemplary signal transmission solution will be described. In the first signal transmission sequence solution,
Three-level signaling is used: Similar to CAT5 signaling, {-1,0, + 1} is signaled by {low, zero, high} for EMI reduction.
Logic 0: Same level as before.
(Four 0s may be followed by values from the reverse sequence, i.e., after some 0s, go in the opposite direction to ensure safe start detection).
Logic 1: Adjacent values in a three-value sequence, for example, multiple 1s, are signaled as a sequence {zero, high, zero, low, zero, high, low, etc.}. And to distinguish between synchronization and data, the synchronization value may be a different sequence than possible by a valid data value, eg {high, low, high, low} or {zero, high, zero, high}. Will use. In other words, the ternary encoding allows the receiver to reliably distinguish between synchronization and data, while allowing reduction of EMI by reducing the generated harmonics.

第2の信号伝送シーケンスソルーションでは、2レベルシグナリングが用いられる。一実施形態では、マスター以外のデバイスは、1行において4個を超えるタイムスロットを所有することはできず、パケット間にゼロが挿入されるであろう。もし、複数デバイスがデータを互いに相互に送る場合、各4ビットの間に間隔が設けられ、ゼロが挿入される。もし、アナログ遅延回路が、上述よりも更に狭い耐性で作られ得るのであれば、より多くのビットが順次に輸送可能である。これは、如何なる正当なデータ値と異なる同期シンボルの特別なエンコーディングを可能にするために、帯域幅がトレードオフになる例である。8/10Bエンコーディングのような他のエンコーディング手法が、同期とデータとを区別するために使用され得る。 In the second signal transmission sequence solution, two-level signaling is used. In one embodiment, devices other than the master may not have more than four time slots per line, and zeros will be inserted between packets. If multiple devices send data to each other, there will be an interval between each of the 4 bits and a zero will be inserted. If the analog delay circuit can be made with a narrower tolerance than described above, more bits can be transported sequentially. This is an example of bandwidth trade-offs to allow for special encoding of synchronization symbols that differ from any legitimate data value. Other encoding techniques, such as 8 / 10B encoding, can be used to distinguish between synchronization and data.

第3の信号伝送シーケンスソルーションでは、DCオフセットがマスターからの全ての信号に加えられる一方で、スレーブはDCオフセットを用いないであろう。差動信号は、フレームの開始を指示するために、マスターによりコモンモード信号で変調されてもよい。これは、いくらかEMIを増加させるであろうが、これは、初期の同期の間の短い期間でしか発生しないであろう。このDCオフセットの変更は、スレーブによって確実に検出可能であり、これにより、バス上の現在のシグナリングパターン及び如何なるスレーブデバイス内の如何なる以前に遭遇した状態に無関係に、同期を常に得ることができる。図14(3)は、このソルーションの例を図示している。 In the third signal transmission sequence solution, the DC offset will be applied to all signals from the master, while the slave will not use the DC offset. The differential signal may be modulated with a common mode signal by the master to indicate the start of the frame. This will increase the EMI somewhat, but this will only occur for a short period of time during the initial synchronization. This change in DC offset is reliably detectable by the slave, which ensures that synchronization is always obtained regardless of the current signaling pattern on the bus and any previously encountered state in any slave device. FIG. 14 (3) illustrates an example of this solution.

高速遷移
図15を参照して、本開示の動作の実施形態を説明する。このソルーションは、音声が未だ動作している間でさえも同期レートを変更することを可能にする。一実施形態では、250mVシグナリングが低速及び高速モードの両方で用いられてもよく、ゲーティングされた時間ウィンドウにおける受信信号の同期エッジが、音声のサンプリングに用いられる。低速モードでは、もしタイムスロットが駆動されていなければバスでの追加の電力消費は無く、高速で動作する内部PLLからの少しの追加の電力消費しか存在しない。従って、低消費電力モードとして用いられる低速モードのためのより高い周波数が、選択されてもよい。低速モードでは、 デバイスは、比較的容易に同期をチェックできる(例えば、12スロットのうちの2スロットが同期に用いられる)。一実施形態では、全デバイスが、常に同期に維持される。他の実施形態では、デバイスは、スリープモードに入り、特別なVDDウェークアップ信号を待つことがある。これは、デバイスが機能する前に遅延(例えば、1ms)を誘発することがある。
An embodiment of the operation of the present disclosure will be described with reference to the high-speed transition diagram 15. This solution allows you to change the sync rate even while the audio is still active. In one embodiment, 250 mV signaling may be used in both slow and fast modes, and the synchronized edge of the received signal in the gated time window is used for voice sampling. In low speed mode, if the time slot is not driven, there is no additional power consumption on the bus and there is only a small additional power consumption from the internal PLL operating at high speed. Therefore, a higher frequency may be selected for the slow mode used as the low power mode. In slow mode, the device can check synchronization relatively easily (eg, 2 out of 12 slots are used for synchronization). In one embodiment, all devices are always kept in sync. In other embodiments, the device may enter sleep mode and wait for a special VDD wakeup signal. This can induce a delay (eg, 1 ms) before the device functions.

一以上の実施形態では、高速への遷移が、低速モードにおいて遅い同期(例えば、768kHz)で開始される。追加の同期シンボルが高速モードに備えて挿入され、タイムスロットが短くされるが、元の768kHzの遷移は維持される。シンボルは、伝送期間の中央で読まれると想定される。追加の同期シンボルは、低速モードデバイスには見えない。各トランスミッタは、より短いシンボルを挿入するために、元のタイムスロットのクロックの少なくとも二倍で動作する内部クロックを備えている。高速モードになった今では、より多くのタイムスロットが存在する。様々な実施形態において、低速のデバイスが、高速モードで読み出しを行う。このソルーションは、音声の動作を維持し、かつ、低速及び高速のデバイスの両方を同時にバスに接続させながら、帯域幅及び同期繰り返しレートを変化させることを可能にする。それは基本的には、既存のタイミングでサブ期間を挿入し、これらのサブ期間を既存の転送プロトコルに帯域幅を追加するために用いられる。このアプローチは、SoundWireのような既存のインターフェースとの上位互換のために使用され得るし、また、元のインターフェースが提供できないであろう高帯域幅をサポートすることを可能にし得る。 In one or more embodiments, the transition to high speed is initiated in slow mode with slow synchronization (eg, 768 kHz). Additional synchronization symbols are inserted in preparation for high speed mode, shortening the time slot, but maintaining the original 768 kHz transition. The symbol is expected to be read in the middle of the transmission period. Additional sync symbols are not visible to slow mode devices. Each transmitter has an internal clock that operates at least twice the clock in the original time slot to insert shorter symbols. Now that we're in fast mode, there are more time slots. In various embodiments, the slow device performs the read in high speed mode. This solution allows the bandwidth and synchronous repeat rate to vary while maintaining audio operation and connecting both slow and fast devices to the bus at the same time. It is basically used to insert sub-periods at existing timings and add bandwidth to existing transfer protocols with these sub-periods. This approach can be used for upward compatibility with existing interfaces like SoundWire, and can also make it possible to support high bandwidth that the original interface would not be able to provide.

フレーム同期とバルク転送
当業者は、本明細書で開示されているシステム及び方法の多くの利点を認識するであろう。様々な実施形態において、複数のアップストリーム接続インターフェース装置(スレーブ装置)が、様々な地点でバスに取り付けられることがあり、部分的には、正確なタイミング施策により、互いにフルスピードで通信することがある。異なるデバイスからの信号伝送は、タイミング制御と伝送線路を介して伝搬される前進及び後進波を区別することにより、緊密に積み重ねられ得る。これは、EMIを低減する穏やかなスルーレートを用いてさえ、高帯域幅を可能にする。これは、FCCクラスA及びBデバイス、パート15のようなEMI規格への認証及び遵守のために有益である。
Frame synchronization and bulk transfer One of ordinary skill in the art will recognize many of the advantages of the systems and methods disclosed herein. In various embodiments, multiple upstream connection interface devices (slave devices) may be attached to the bus at various points and, in part, may communicate with each other at full speed with precise timing measures. be. Signal transmissions from different devices can be tightly stacked by timing control and distinguishing forward and backward waves propagating over the transmission line. This allows for high bandwidth, even with moderate slew rates that reduce EMI. This is useful for certification and compliance with EMI standards such as FCC Class A and B devices, Part 15.

本明細書に記載したシステムは、2本のワイヤによる低電力データ通信を容易化するために用いられ得る。このインターフェースは、一つのマスターと一以上のスレーブ装置を有するマルチドロップ動作をサポートしており、従来の時間多重化低遅延システムよりも長い距離に渡ってフルスピードでスレーブ間のポイントツーポイントの通信を可能にする。低電磁干渉(EMI)が、差動低電圧動作及びスルーレートの制御によって達成される。各スレーブデバイスは、PLL又はDLLを備えており、システムは、終端された、マルチドロップ、かつ、複数デバイスのシステム配置をサポートしている。 The systems described herein can be used to facilitate low power data communication with two wires. This interface supports multi-drop operation with one master and one or more slave devices, and point-to-point communication between slaves at full speed over longer distances than traditional time-multiplexed low-latency systems. Enables. Low electromagnetic interference (EMI) is achieved by differential low voltage operation and slew rate control. Each slave device comprises a PLL or DLL and the system supports a terminated, multi-drop, multi-device system deployment.

当該システム及び方法は、従来のアプローチに対する多くの利点を提供する簡単なフレーム構造及び初期同期シーケンスを含んでいる。様々な実施形態において、スレーブ及びマスターデバイスの間の初期同期は、簡単かつ頑強であり、一定のフレームサイズを用いる。複数のクロックシステムとの互換性を確保するために従来のシステムにおいては可変フレームサイズが用いられてきたが、本開示では、異なるアプローチが取られている。本開示は、柔軟かつ有効なソルーションを提供するために、ここに開示したようなオーバーサンプリングされたクロックシステムにより提供される追加の自由度を用いている。いくつかの実施形態では、実際のクロック周波数は、フレームの一部を構成するビーコン信号から推論されてもよい。 The system and method include a simple frame structure and initial synchronization sequence that offers many advantages over traditional approaches. In various embodiments, the initial synchronization between the slave and master device is simple and robust, using a constant frame size. Variable frame sizes have been used in conventional systems to ensure compatibility with multiple clock systems, but this disclosure takes a different approach. The present disclosure uses the additional degrees of freedom provided by an oversampled clock system as disclosed herein to provide a flexible and effective solution. In some embodiments, the actual clock frequency may be inferred from the beacon signals that form part of the frame.

いくつかの実施形態では、クロック周波数及び動作モードに関係なく、一ラインのデータが80タイムスロットを備えている。個々のフィールドは同一シーケンスに存在するであろうが、これらのタイムスロットの解釈は、選択された構成に依存し得る。起動時に、デフォルトのデータフォーマットが、最長のバス径(最低スピード)に合わせて設定される。図16Aを参照して、各ラインのデータの異なるフィールドが図示されている。個々のタイムスロットの解釈を変更することにより、ボーレートとバス径の間で様々な折衷案が選択可能である。同期パターンは、各ラインのデータ当たり1つの頻度で繰り返す(例えば、図に示すように、同期レートは3.072MHzである)。各ラインは、0から1への遷移で開始する。この遷移は、ビットが受信可能であるように、内部のデルタ−シグマコンバータのために、そして、バス上のPLL/DLLをロックするためのサンプルイベントとして用いられる。図16Aは、同期パターンと簡単化されたラインの説明を図示している。0から1への遷移のイベントをデルタ−シグマコンバータのためのサンプリングイベントとして用いることの一つの利点は、それが、マスタークロックからのジッタのみを含み、スレーブデバイスのクロック再生に関連する追加のジッタを含まないことである。よって、このソルーションは、PLL/DLLの低電流消費の要求によりスレーブデバイスのクロック再生ユニットの内部に高ジッタが存在してもなお、音声サンプリングについてジッタを低減することができる。 In some embodiments, one line of data comprises 80 time slots, regardless of clock frequency and operating mode. The individual fields will be in the same sequence, but the interpretation of these time slots may depend on the configuration chosen. At startup, the default data format is set to match the longest bus diameter (minimum speed). With reference to FIG. 16A, different fields of data for each line are illustrated. By changing the interpretation of individual time slots, various compromises can be selected between baud rate and bus diameter. The synchronization pattern repeats once for each line of data (eg, the synchronization rate is 3.072 MHz, as shown in the figure). Each line starts with a transition from 0 to 1. This transition is used for the internal delta-sigma converter so that the bits are receivable, and as a sample event to lock the PLL / DLL on the bus. FIG. 16A illustrates a description of synchronization patterns and simplified lines. One advantage of using the 0 to 1 transition event as a sampling event for a delta-sigma converter is that it contains only jitter from the master clock and additional jitter associated with slave device clock recovery. Is not included. Therefore, this solution can reduce the jitter for voice sampling even if high jitter exists inside the clock reproduction unit of the slave device due to the demand for low current consumption of the PLL / DLL.

各ラインは、同期フィールド(当該フレームは論理1で開始し論路0で終わる)と、コマンドフィールド(Cは、マスターからのコマンド)と、前方(典型的には、マスターからスレーブ)への音声の輸送のためのフィールドと、シグナリング方向を変えることを可能にするための2方向遅延「ターンアラウンド」(T)と、スレーブデバイスからの応答フィールド“R”(スレーブデバイスからの読み出し時にしか用いられない)と、後方(典型的にはスレーブからマスター)への音声の輸送のためのフィールドと、同期パターンの開始を完了させる、可能な空きフィールドとを有している。当該ラインは、更に、前方コマンド(マスターからスレーブ)と、フレーミング(ビーコン)フィールド(F)と、データフィールドD〜Dを含んでいることがある。これらのフィールドのそれぞれに割り当てられるスロットの数は、アプリケーションによって変更し得るが、ライン内のタイムスロットの総数は、固定した数、例えば、80である。ラインにおける列の数を変更するためには、図15の技法(例えば、同期レートを768から3072kHzに変更する)が使用可能である。図16は、起動時のデフォルトの構成を表しており、ここでは、下に示されているインデックスは、各フィールドの開始時のタイムスロットの数である。 Each line has a sync field (the frame starts with logic 1 and ends with logic 0), a command field (C is a command from the master), and audio forward (typically from master to slave). Field for transport, two-way delay "turnaround" (T 1 ) to allow the signaling direction to change, and response field "R" from the slave device (used only when reading from the slave device). It has a field for transporting audio backwards (typically from the slave to the master) and a possible free field to complete the start of the synchronization pattern. The line may further include forward commands (master to slave), framing (beacon) fields (F), and data fields D 0 to D 4 . The number of slots assigned to each of these fields can be varied by the application, but the total number of time slots in the line is a fixed number, eg 80. To change the number of columns in the line, the technique of FIG. 15 (eg, changing the synchronization rate from 768 to 3072 kHz) can be used. FIG. 16 represents the default configuration at startup, where the index shown below is the number of time slots at the start of each field.

データの輸送が、伝送線路上で発生するであろう。複数のデバイスからのデータパケットの間の衝突を避けるために、前進波と後進波とを区別しよう。前進波は、マスターで開始し、マスターから離れるように向けられる。後進又は反転波は、スレーブデバイスから送出されたデータであり、マスターに向かう方向に伝搬する。ターンアラウンド期間の間は、デバイスは如何なる情報も転送せず、そのドライバは、(そのようなシステムのための動的終端の可能性は別として)無効にされる。 Data transport will occur on the transmission line. Distinguish between forward and reverse waves to avoid collisions between data packets from multiple devices. The forward wave starts at the master and is directed away from the master. The reverse or inverted wave is data transmitted from the slave device and propagates in the direction toward the master. During the turnaround period, the device does not transfer any information and its driver is disabled (apart from the possibility of dynamic termination for such a system).

音声データは、リンクにおいて、両方向、即ち、マスターデバイスからスレーブデバイスに向かう前方、及び、スレーブデバイスからマスターデバイスに向かう後方に伝搬可能である。もしスレーブデバイスが、当該スレーブデバイスよりもマスターから離れて位置している他のスレーブデバイスにデータを転送したい場合、それは、図16Bに図示されているように、前方に、すなわち、D〜Dとラベリングされているフィールドにおいてデータを送信する。様々な実施形態において、システムは、制御データ(レジスタ読み出し及び書き込み)、等時性音声(PDM及びPCM)、異時性音声(PCM)、及び、バルク転送動作に対応していてもよい。 Audio data can propagate in the link in both directions, i.e., forward from the master device to the slave device and backward from the slave device to the master device. If the slave device wishes to transfer data to other slave devices that are located away from the master than the slave device, which, as illustrated in FIG. 16B, the front, i.e., D 0 to D Data is transmitted in the field labeled as 7. In various embodiments, the system may support control data (register reads and writes), isochronous voices (PDM and PCM), metachronous voices (PCM), and bulk transfer operations.

下のテーブルは、信号インテグリティ決定に対して様々な帯域幅の要求に適合するためのインターフェースの微調整を可能にするレジスタを列挙している。いくつかの実施形態では、インターフェースは、リセットが適用された後、デフォルト値で起動するであろう。この実施形態では、TX遅延は、マルチドロップ構成との互換性を確保するために符号あり2の補数の値として格納され、RX遅延は、符号あり2の補数の値として格納される。PLL/DLLにおける遅延により、負のオフセットが存在し得る。もし、レジスタFの値がレジスタGの値と同一であれば、ブロックデータは転送されないであろう。もし、レジスタJの値がレジスタKの値と同一であれば、ブロックデータは転送されないであろう。本実施形態では、全てのレジスタ値は、半クロックの増分でカウントされ、TX及びRX遅延レジスタを除いては、全てのレジスタ値は正(単一バイト)である。 The table below lists the registers that allow the interface to be fine-tuned to meet different bandwidth requirements for signal integrity determination. In some embodiments, the interface will boot with default values after the reset has been applied. In this embodiment, the TX delay is stored as a signed 2's complement value to ensure compatibility with the multi-drop configuration, and the RX delay is stored as a signed 2's complement value. Negative offsets may exist due to delays in the PLL / DLL. If the value of register F is the same as the value of register G, the block data will not be transferred. If the value of register J is the same as the value of register K, the block data will not be transferred. In this embodiment, all register values are counted in half-clock increments, and all register values are positive (single byte) except for the TX and RX delay registers.

下記のテーブルを参照して、マルチドロップ構成との互換性を確保するために、TX遅延が符号あり2の補数の値として格納される。RX遅延は符号あり2の補数の値として格納され、PLLにおける遅延により、負のオフセットが存在し得る。もし、レジスタFの値がレジスタGの値と同一であれば、ブロックデータは転送されないであろう。もし、レジスタJの値がレジスタKの値と同一であれば、ブロックデータは転送されないであろう。全レジスタ値は、半クロックの増分でカウントされる。TX及びRX遅延レジスタを除いては、全てのレジスタ値は正(単一バイト)である。

Figure 2021536151
With reference to the table below, the TX delay is stored as a signed 2's complement value to ensure compatibility with multi-drop configurations. The RX delay is stored as a signed 2's complement value and there may be a negative offset due to the delay in the PLL. If the value of register F is the same as the value of register G, the block data will not be transferred. If the value of register J is the same as the value of register K, the block data will not be transferred. All register values are counted in half-clock increments. Except for the TX and RX delay registers, all register values are positive (single byte).
Figure 2021536151

フレームの要約が図17に図示されている。最初の列と最後の列の箱は、マスターによって3.072MHzのレートで駆動された同期である。次の2行の特定の箱(例えば、OP,ID,##,C,FA,SA)は、マスターによって駆動されるコマンドフィールドを表している。Mとラベルされた箱は、マスターからスレーブへの音声データを表しており、Sとラベルされた箱は、スレーブからマスターへの音声データ又は応答を含んでいることがある。2番目の列の1とラベルされた箱は、ターンアラウンド遅延または論理1を含んでいることがあり、Tとラベルされた箱は、マスターからスレーブへのターンアラウンド遅延である。図示された実施形態では、1列が、マルチドロップ、多書き込みアプリケーション(調停/計数)に割り当てられている。殆どの列が、単一のデバイス専用だが、本明細書に記載されているように注意深いタイミング制御を用いて共有も可能である。 A summary of the frames is illustrated in FIG. The boxes in the first and last columns are synchronization driven by the master at a rate of 3.072 MHz. The next two lines of specific boxes (eg OP, ID, ##, C, FA, SA) represent the command fields driven by the master. The box labeled M may represent the audio data from the master to the slave, and the box labeled S may contain the audio data or response from the slave to the master. The box labeled 1 in the second column may contain a turnaround delay or logic 1, and the box labeled T is a master-to-slave turnaround delay. In the illustrated embodiment, one column is assigned to a multi-drop, multi-write application (arbitration / counting). Most columns are dedicated to a single device, but can also be shared with careful timing control as described herein.

帯域幅を節約するために、レジスタ読み出し及び書き込み動作は、最初にスレーブデバイスの内部のアドレスレジスタを更新し、その後、実際の読み出し又は書き込み動作を起こすことで行われてもよい。このようにすれば、読み出し及び書き込み動作を繰り返して行うときに、コマンドごとにアドレスを転送する必要がなくなるであろう。 To save bandwidth, register read and write operations may be performed by first updating the internal address register of the slave device and then invoking the actual read or write operation. In this way, it will not be necessary to transfer the address for each command when the read and write operations are repeated.

コマンドは、少なくとも2つのエラーが意図と異なる動作を起こすために必要となるように冗長性を用いてエンコードされるが、通常は、この状況すら発生する前により多くのエラーが必要となる。当該動作は、保守的な動作に留意しながら設計された―可能な誤動作を起こして進もうとするよりも、むしろ、任意の単一のエラーは何の動作も起こさないであろう。コマンドは、下記のシンボル{A,B,C,D}上で構築される。シンボルは、下記のように定義される。
A={D2,D1,D0}={1,0,0}
B={D2,D1,D0}={0,1,0}
C={D2,D1,D0}={0,0,1}
D={D2,D1,D0}={1,1,1}
これらのコマンドは、その2つの間でハミング距離を有している。即ち、一つの正しいシンボルを他の正しいシンボルにマッピングするために2つのエラーが必要となる。下記の値は、障害又は不適正なシンボルと考えられる。
F1={D2,D1,D0}={0,1,1}
F2={D2,D1,D0}={1,0,1}
F3={D2,D1,D0}={1,1,0}
F4={D2,D1,D0}={0,0,0}
The command is encoded with redundancy so that at least two errors are needed to cause unintended behavior, but usually more errors are needed before even this situation occurs. The behavior was designed with conservative behavior in mind-rather than trying to proceed with possible malfunctions, any single error will cause no behavior. The command is constructed on the following symbols {A, B, C, D}. The symbol is defined as follows.
A = {D2, D1, D0} = {1,0,0}
B = {D2, D1, D0} = {0,1,0}
C = {D2, D1, D0} = {0,0,1}
D = {D2, D1, D0} = {1,1,1}
These commands have a Hamming distance between the two. That is, two errors are needed to map one correct symbol to the other correct symbol. The values below are considered faulty or improper symbols.
F1 = {D2, D1, D0} = {0,1,1}
F2 = {D2, D1, D0} = {1,0,1}
F3 = {D2, D1, D0} = {1,1,0}
F4 = {D2, D1, D0} = {0,0,0}

もし、あるコマンドにおいて、何らかの不適正なシンボルに遭遇した場合、このコマンドは無視されてもよく、意図されたレシーバは、このフレームの終了時にリクエストアテンション(Request Attention)で応答可能である。如何なる現在進行中のブロック動作も中断されるべきであり、非ブロック動作のみが継続されるであろう。 If a command encounters any improper symbol, the command may be ignored and the intended receiver can respond with a Request Attention at the end of this frame. Any ongoing blocking operation should be interrupted and only non-blocking operation will continue.

コマンドは、オペコードフィールドによって定義される。このフィールドは、3又は6ビットで構成可能である。メモリからの24ビットの読み出しのみが、オペコードの短縮形態を用いるであろう。言い換えれば、「24ビット読み出し」のための特定のオペコードに遭遇した場合、このフレームは、全ての6つのオペコードビットを読む前ですら、読み出しフレームとして即刻認識されるべきである。 The command is defined by an opcode field. This field can be configured with 3 or 6 bits. Only 24-bit reads from memory will use opcode abbreviations. In other words, if a particular opcode for "24-bit read" is encountered, this frame should be immediately recognized as a read frame, even before reading all 6 opcode bits.

ブロック動作は、レジスタへの及びレジスタからの大量のデータ転送に適している。これらの転送は、ラインの特別なフィールドをこれらの種類の転送にあてることで、それらが如何なる音声転送と干渉しないように保護されてきた。このように、音声転送は、ブロック転送と干渉し得ないし、逆も同じである。これは、最下位のハードウェア層によって取り扱われる。これは、単純なプログラミングエラーがバスをクラッシュしないようにすることを保証する。ブロック動作に割り当てられるタイムスロットをゼロに低減することが可能である。これは、いくつものエラーがフレームに発生した場合であってもブロック動作が行われないようにすることを保証するであろう。 The block operation is suitable for transferring large amounts of data to and from registers. These transfers have been protected from interfering with any voice transfer by devoting special fields of the line to these types of transfers. Thus, voice transfer cannot interfere with block transfer and vice versa. This is handled by the lowest hardware layer. This ensures that simple programming errors do not crash the bus. It is possible to reduce the time slots assigned to block operations to zero. This will ensure that no blocking behavior will occur even if multiple errors occur in the frame.

一実施形態では、全てのブロック動作はシンボルAで始まり、その後、第2シンボルとして、これらのうちの一つの値が続く:(i)“A”(ブロック動作を停止)−このブロックは、一連のブロック動作の最後から2番目のブロックになり、次のフレームは、ブロックデータを含む最後のブロックになる、即ち、ブロック転送が1フレーム遅れて停止するであろう。(ii)“B”(連続書き込み動作のために開始アドレスを定義)−定義された開始アドレスから始めてデータがメモリに保存され、次のデータワードのそれぞれが、隣のメモリセルの内容を格納し、現フレームから3番目のフレームがブロック転送を用いる、即ち、ブロック転送が2フレーム遅れで開始するであろう。(iii)“C”(連続読み出し動作のために開始アドレスを定義)−定義された開始アドレスから始めてデータがメモリに保存され、次のデータワードのそれぞれが、隣のメモリセルの内容を格納し、現フレームから3番目のフレームがブロック転送を用いる、即ち、ブロック転送が2フレーム遅れで開始するであろう。 In one embodiment, all block actions begin with symbol A, followed by the value of one of these as a second symbol: (i) "A" (stop block action) -this block is a series. It will be the penultimate block of the block operation of, and the next frame will be the last block containing the block data, that is, the block transfer will stop with a delay of one frame. (Ii) "B" (define start address for continuous write operation) -Data is stored in memory starting from the defined start address, and each of the following data words stores the contents of the adjacent memory cell. , The third frame from the current frame uses block transfer, i.e., block transfer will start with a delay of 2 frames. (Iii) "C" (define start address for continuous read operation) -Data is stored in memory starting from the defined start address, and each of the following data words stores the contents of the adjacent memory cell. , The third frame from the current frame uses block transfer, i.e., block transfer will start with a delay of 2 frames.

他の実施形態では、「ブロック動作の停止」を用いる代わりに、バルク転送の間にコピーされるべき要素の数が、最初に、スタートアドレスと共に定義されるであろう。バルク動作が開始された後、宛先のデバイスそれ自身がすべての動作を行い、バルク転送の終わりに、IRQ(”Request Attention”)がマスターに知らせるために生成され、転送が完了する。マスターは、その後、バルク転送が成功したかを調べ、CRC値が正しいかをチェックするためにスレーブデバイスの状態にアクセスすることができるようになっていてもよい。 In another embodiment, instead of using "stop block operation", the number of elements to be copied during the bulk transfer will first be defined with the start address. After the bulk operation is started, the destination device itself does all the operations, and at the end of the bulk transfer, an IRQ ("Request Attention") is generated to inform the master and the transfer is complete. The master may then be able to access the state of the slave device to check if the bulk transfer was successful and to check if the CRC value is correct.

単一の読み出し及び書き込み動作は、最初にレジスタ操作の開始アドレスを定義し、その後、任意の後動作が、その前に定義されたアドレス値を用いてI/O動作を行うことで機能する。その後に続くレジスタ操作のためのアドレスの定義は、シンボルDを送り、その後にシンボルBを続けることで定義される。 A single read and write operation works by first defining the start address of the register operation and then any subsequent operation performing an I / O operation with the previously defined address value. The definition of the address for subsequent register operations is defined by sending symbol D, followed by symbol B.

アドレスのインクリメントを伴う読み出し及び書き込み動作は、最初にレジスタ操作の開始アドレスを定義し、その後、任意の後動作が、その前に定義されたアドレス値を用いてI/O動作を行うことで機能する。この動作を用いる場合、各読み出し又は書き込み動作が完了した後、デバイス内部で、その後の読み出し又は書き込み動作が、アドレス値を後付けでインクリメントするであろう。アドレスのインクリメントを伴う、その後のレジスタ操作のためのアドレスの定義は、シンボルDを送り、その後にシンボルCを続けることで定義される。 Read and write operations with address increments function by first defining the start address of the register operation, and then any subsequent operation performing an I / O operation using the previously defined address value. do. When this operation is used, after each read or write operation is completed, the subsequent read or write operation will retrofit the address value within the device. Address definitions for subsequent register operations, accompanied by address increments, are defined by sending symbol D, followed by symbol C.

単一の書き込み動作は、シンボルDを送り、その後シンボルAを続けることで実行される。用いられるアドレスは、この動作を用いる前に定義する必要があろう。 A single write operation is performed by sending symbol D, followed by symbol A. The address used will need to be defined before using this behavior.

単一の読み出し動作を行う場合、バスのタイミングの詳細が複雑であるため、該読み出し動作は、2番目のシンボルの全てのビットをブロックするであろう。従って、読み出し動作は、最初のシンボルによって完全に定義される一方で、2番目のシンボルが無視される(この場合、マスターはバスを駆動しないだろう)。更に、読み出し動作は、最初のシンボル(フレームの最初の3行)が読み出され解釈された直後に開始すべきである。読み出し動作は、シンボルCによって定義される。 When performing a single read operation, the read operation will block all bits of the second symbol due to the complexity of the bus timing details. Therefore, the read operation is completely defined by the first symbol, while the second symbol is ignored (in this case the master will not drive the bus). In addition, the read operation should start immediately after the first symbol (the first three lines of the frame) has been read and interpreted. The read operation is defined by symbol C.

もし、デバイスID番号が7であるならば、これは状態読み出し動作を行い、バスに接続された全てのデバイス(マスターを除く)は、その状態を返すであろう。各デバイスから返される3ビットは、下記のとおりである(MSBが最初に返され、LSBが最後に返される):

Figure 2021536151
If the device ID number is 7, this will perform a state read operation and all devices connected to the bus (except the master) will return that state. The 3 bits returned by each device are as follows (MSB is returned first, LSB is returned last):
Figure 2021536151

もし、デバイスID番号が7であるならば、これは状態読み出し動作を行い、バスに接続された全てのデバイス(マスターを除く)は、その状態を返すであろう。各デバイスから返される3ビットは、下記のとおりである(MSBが最初に返され、LSBが最後に返される)。 If the device ID number is 7, this will perform a state read operation and all devices connected to the bus (except the master) will return that state. The 3 bits returned by each device are as follows (MSB is returned first, LSB is returned last).

デバイス0−6は、対応するA−Gフィールドにおいて、関連するデバイス状態データ(バスに接続、IRQレベル)を用いて応答してもよい。バス上の直前の値が1であるため、全ての変化は、負論理を用いて(アクティブのイベントがゼロ)信号化される必要があろう。この動作には、可能な24ビットのうちの最後の21ビットのみが用いられる。デバイスは、この3ビットアドレスを得るために動的アドレス割り当てを用いてもよいし、又は(例えば、ピンによるプログラムでの)固定のデバイスアドレスを用いてもよい。もし、動的アドレス割り当てを用いるのであれば、デバイスは、初期値としてアドレス0を用いてもよい。もし、読み出しの間、マスターがIDを0に設定するのであれば、それは、最後にアクセスされたバルク転送ポートから24ビットのCRC値を読み出すことを表しているであろう。これは、もしデバイス状態が読み出されているのであれば最初のオペコードは“C”であり、2番目のオペコードは送られていないことを意味している。 Devices 0-6 may respond with relevant device state data (connect to bus, IRQ level) in the corresponding AG field. Since the previous value on the bus is 1, all changes will need to be signaled using negative logic (zero active events). Only the last 21 of the possible 24 bits are used for this operation. The device may use dynamic address allocation to obtain this 3-bit address, or it may use a fixed device address (eg, programmatically with pins). If dynamic address assignment is used, the device may use address 0 as the initial value. If the master sets the ID to 0 during the read, it will represent reading a 24-bit CRC value from the last accessed bulk transfer port. This means that if the device state has been read, the first opcode is "C" and the second opcode has not been sent.

バスに接続された全てのデバイスから状態を返すために、確認フラグ及び注目フラグを含む様々な状態フラグが提供されている。確認フラグは、トランザクションが成功したこと(例えば、3ビットCRC値によって確認された読み出し又は書き込み)を確認する。複数のデバイスが異なる値でバスを駆動しようとすることで発生する可能性があるバス衝突を回避するために、これは、論理ローがアクティブの信号で定義された。デバイスが注目を要求する場合、該デバイスは、このタイムスロットをローに駆動すべきであり、そうでなければ、該デバイスは、このタイムスロットにおいて如何なる値も駆動すべきでない。これは共有されているビットなので、全てのデバイスは、このタイムスロットに応答できる。注目フラグ(例えば、AT)は、バスに接続された任意のデバイスから注目されることの要求を信号として送る。複数のデバイスが異なる値でバスを駆動しようとすることで発生する可能性があるバス衝突を回避するために、これは、論理ローがアクティブの信号で定義された。デバイスが注目を要求する場合、該デバイスは、このタイムスロットをローに駆動すべきであり、そうでなければ、該デバイスは、このタイムスロットにおいて如何なる値も駆動すべきでない。
単一エラーがブロック転送動作を引き起こすことを避けるために、ブロック転送は、その前のフレームにおいて完全に定義されるであろう。1行当たりのコマンドビットの数を変更することにより、例えばDSPプログラムのアップロードのために、レジスタに又はレジスタから大量のデータを非常に速く転送できる。ブロック転送は、列がこの動作に割り当てられた場合にのみ発生するであろう。これは、ブロック転送の開始を定義するレジスタへの書き込みによって発生する。もし、ブロック転送レジスタが、タイミングにおいてそれに続くターンアラウンドレジスタと同じ又は大きい場合には、ブロック転送コマンドが発行されている場合であってもブロックデータは転送されないであろう。これは、ブロックデータが偶発的に音声データを書き換えないようにすることを確実にする。コマンドのエンコーディングを行う例示的なコマンドテーブルが、以下に提示される:

Figure 2021536151
Various status flags are provided, including confirmation and attention flags, to return status from all devices connected to the bus. The confirmation flag confirms that the transaction was successful (eg, read or write confirmed by the 3-bit CRC value). To avoid bus collisions that can occur when multiple devices try to drive a bus with different values, this is defined in the signal where the logic row is active. If the device demands attention, the device should drive this time slot low, otherwise the device should not drive any value in this time slot. Since this is a shared bit, all devices can respond to this time slot. The attention flag (eg, AT) signals a request for attention from any device connected to the bus. To avoid bus collisions that can occur when multiple devices try to drive a bus with different values, this is defined in the signal where the logic row is active. If the device demands attention, the device should drive this time slot low, otherwise the device should not drive any value in this time slot.
To avoid a single error causing a block transfer operation, block transfer will be fully defined in the previous frame. By changing the number of command bits per line, large amounts of data can be transferred very quickly to or from registers, for example for uploading DSP programs. Block transfers will only occur if a column is assigned to this behavior. This is caused by writing to the register that defines the start of the block transfer. If the block transfer register is the same as or greater than the subsequent turnaround register at the timing, the block data will not be transferred even if a block transfer command is issued. This ensures that the block data does not accidentally rewrite the audio data. An exemplary command table for command encoding is presented below:
Figure 2021536151

図18A、18B、18Cを参照して、ここでは、ブロック転送動作を更に詳細に説明する。フレーム1802に図示されているように、32ビットアドレスが、スレーブデバイスに割り当てられる(続く動作ではインクリメントされない)。タイトなタイミングにより、列2におけるデバイスID及び初期値は、これらの値が送られた後にコマンドが最初に完了されるので、バッファされることがある。次に、フレーム1804に図示されているように、32ビットアドレスが、スレーブデバイスに割り当てられる(続く動作でインクリメントされる)。フレーム1806に図示されているように、前に割り当てられたアドレスを用いて24ビット読み出しが得られる(もし、ID=アドレス7であれば、コマンドにおける例外である)。フレーム1808に図示されているように、全ての接続されたデバイスの読み出し状態(もし、ID=アドレス7であれば、到達コマンドにおける例外である)。24ビットの返されたデータの最初の3ビットは使用されず、最後に使用されたバルク転送ポートによって上書きされることがある。フレーム1810は、最後のバルク転送動作からの読み出し状態、例えば、最後に用いられたバルク転送ポートからの24ビットの読み出しCRC値を図示している(もし、ID=アドレス0であれば、読み出しコマンドにおける例外である)。フレーム1812は、前に割り当てられたアドレスを用いた書き込み32ビットを図示している。スレーブデバイスは、ライン6までこれが書き込みコマンドであることを知らないであろう。これは、あり得る書き込みコマンドのためにライン4、5、6においてレジスタデータをバッファする必要があろうことを意味している。 The block transfer operation will be described in more detail here with reference to FIGS. 18A, 18B, and 18C. As illustrated in frame 1802, a 32-bit address is assigned to the slave device (not incremented in subsequent operations). Due to tight timing, the device ID and initial values in column 2 may be buffered because the command is completed first after these values have been sent. A 32-bit address is then assigned to the slave device (incremented in subsequent actions), as illustrated in frame 1804. As illustrated in frame 1806, a 24-bit read is obtained using the previously assigned address (if ID = address 7, it is an exception in the command). As illustrated in frame 1808, the read state of all connected devices (if ID = address 7, it is an exception to the arrival command). The first 3 bits of the 24-bit returned data are unused and may be overwritten by the last used bulk transfer port. Frame 1810 illustrates the read state from the last bulk transfer operation, eg, the 24-bit read CRC value from the last used bulk transfer port (if ID = address 0, the read command). Exception in). Frame 1812 illustrates a 32-bit write using a previously assigned address. The slave device will not know until line 6 that this is a write command. This means that register data will need to be buffered at lines 4, 5 and 6 for possible write commands.

図18Bのフレーム1814は、32ビットブロック書き込み転送動作の開始を示している。データの書き込みは、2フレーム後に(即ち、このフレームではなく、次のフレームでもなく)初めて開始するであろう。3番目のフレームが開始するまで、フレームレイアウトは同一であろう。フレーム1816は、書き込みバルクデータの転送(連続)を図示している。フレーム1818は、32ビットブロックバルク読み出し転送動作の開始を図示している。レジスタデータの読み出しは、3番目のフレームで初めて開始するであろう。3番目のフレームが開始するまで、フレームレイアウトは、その前のフレームと同じであろう(即ち、バルク転送はまだ開始していない)。D0〜D23がデバイス0−7にマッピングされる。各デバイスは、多くとも3つのバルク転送ポートしか有していなくてもよい。0の値は、ポートが2フレームで活性化されることを示している。各デバイスには3ビットが割り当てられる(例えば、デバイス1がビットD3−D5に割り当てられ、それぞれが、内部バルク転送ポートに対応している)。フレーム1820は、読み出しバルクデータ(連続)の転送を図示している。 Frame 1814 of FIG. 18B indicates the start of a 32-bit block write transfer operation. Writing of data will only start after two frames (ie, not this frame, not the next). The frame layout will be the same until the third frame starts. Frame 1816 illustrates the transfer (continuous) of write bulk data. Frame 1818 illustrates the start of a 32-bit block bulk read transfer operation. The read of register data will start only in the third frame. Until the third frame starts, the frame layout will be the same as the previous frame (ie, bulk transfer has not started yet). D0 to D23 are mapped to devices 0-7. Each device may have at most three bulk transfer ports. A value of 0 indicates that the port is activated in 2 frames. Each device is assigned 3 bits (eg, device 1 is assigned to bits D3-D5, each corresponding to an internal bulk transfer port). Frame 1820 illustrates the transfer of read bulk data (continuous).

フレーム同期アルゴリズム
マスターは、ある期間の後にスレーブが同期(PLL/DLLロック)を得るであろうことを前提としている。スレーブデバイスは、任意のサポートされている速度でバスに接続し、その機能についてフィードバックを提供する。通信を開始する前にスレーブがメッセージ同期を得ているかをチェックするための実施形態が提供される。いくつかの実施形態では、単一フレームメッセージが用いられる。ビーコンがフレームの開始を指示するために使用可能であり、また、同期に使用可能である。
The frame synchronization algorithm master assumes that the slave will get synchronization (PLL / DLL lock) after a period of time. The slave device connects to the bus at any supported speed and provides feedback on its functionality. An embodiment is provided for checking if the slave is getting message synchronization before starting communication. In some embodiments, single frame messages are used. Beacons can be used to signal the start of a frame and can also be used for synchronization.

図19を参照して、ここでは、フレーム同期アルゴリズム1900の実施形態を説明する。ステップ1902では、プロセスは、PLL又はDLLがマスターとロックするのを待つ。ステップ1904では、シフトレジスタ(SHIFT1)が0xFFFF.FFFFに設定される。ステップ1906では、最初の値が第1ラインから読み出されて第2シフトレジスタに入れられる。この処理は、サーチレジスタを初期化するために32ラインに渡って繰り返される。いくつかの実施形態では、各ラインは3.072MHzで繰り返され、これは、PDM及び高音質音声のためのサンプリング点を提供することがある。各フレームが32ラインに渡って繰り返され、96kHzのフレーム繰り返し周波数を与える。いくつかの実施形態では、フレームの終了を示すビーコンが各第2フレームに(48kHzの繰り返しレートで)送られる。 With reference to FIG. 19, an embodiment of the frame synchronization algorithm 1900 will be described here. In step 1902, the process waits for the PLL or DLL to lock with the master. In step 1904, the shift register (SHIFT1) is set to 0xFFFF. Set to FFFF. In step 1906, the first value is read from the first line and placed in the second shift register. This process is repeated over 32 lines to initialize the search register. In some embodiments, each line is repeated at 3.072 MHz, which may provide sampling points for PDM and high quality audio. Each frame is repeated over 32 lines, giving a frame repetition frequency of 96 kHz. In some embodiments, a beacon indicating the end of the frame is sent to each second frame (at a repeat rate of 48 kHz).

そして、次のステップが64フレームに渡って繰り返される。ステップ1908では、シフトレジスタ2から値が読み出される。当該値は、新しい読み出し値の反対の値であるべきである(ステップ1920で比較される)。もしそうでなければ、第1シフトレジスタのこのビットは、ステップ1902においてリセットされる。そうでなければ、プロセスは第2シフトレジスタ、SHIFT2を更新するためにステップ1912に進む。ステップ1908では両方のレジスタをシフトし、続けて32ラインを完成させる。このプロセスは、その後、64フレームに渡って繰り返される。交互パターンをチェックすることにより、64フレームの後、フレーム同期が実現可能である。言い換えれば、実際の同期位置をチェックする代わりに、このアルゴリズムは、唯一の有効な位置が残されるまで全ての無効な位置を消去する。この方法は、ランダムデータがコマンド列に発生していても、スレーブデバイスが常にロックされていることを保証する。もし、32ビットレジスタが、64フレーム後にもなお、複数のセットされているビットを含んでいる場合、当該方法は、無効な位置が消去されるまで繰り返される。 Then, the next step is repeated over 64 frames. In step 1908, the value is read from the shift register 2. The value should be the opposite of the new read value (compared in step 1920). If not, this bit in the first shift register is reset in step 1902. Otherwise, the process proceeds to step 1912 to update the second shift register, SHIFT2. In step 1908, both registers are shifted in succession to complete 32 lines. This process is then repeated over 64 frames. By checking the alternating pattern, frame synchronization can be achieved after 64 frames. In other words, instead of checking the actual sync position, this algorithm erases all invalid positions until only one valid position remains. This method ensures that the slave device is always locked, even if random data occurs in the command sequence. If the 32-bit register still contains a plurality of set bits after 64 frames, the method is repeated until the invalid position is erased.

図示された実施形態では、第1シフトレジスタの1である唯一のビットが、フレーム同期位置を示している。いくつかの実施形態では、もし、第1シフトレジスタの1の値であるビットが2以上ある場合、エラーが発生し、アルゴリズムは、再起動されるべきである。これは、通常の状況では発生しない(ランダムデータについては、これが起こる確率は、2−64<10−20である)ことが予期される。 In the illustrated embodiment, the only bit, which is one of the first shift registers, indicates the frame sync position. In some embodiments, if there are two or more bits that are the value of 1 in the first shift register, an error occurs and the algorithm should be restarted. This does not occur under normal circumstances (for random data, this probability of occurrence is 2 -64 <10 -20) would be expected.

一の実装では、全てのフィールドがマスタークロックを用いてオーバーサンプリングされる。1ラインのデータが80のタイムスロットに分割され、複数のタイムスロットがバス上でデータを定義するために用いられる。全てのフィールドがマスタークロックを用いてオーバーサンプリングされてもよい。この実施形態では、デフォルトのクロック周波数が245.76MHzに設定されるが、他の周波数も用いられ得る。スレーブデバイス及びマスターデバイスについて初期のPLL同期周波数が3.072MHzに設定されるが、ここに説明しているように、他の周波数も用いられ得る。 In one implementation, all fields are oversampled using the master clock. One line of data is divided into 80 time slots, and multiple time slots are used to define the data on the bus. All fields may be oversampled using the master clock. In this embodiment, the default clock frequency is set to 245.76 MHz, but other frequencies may be used. The initial PLL sync frequency is set to 3.072 MHz for slave and master devices, but other frequencies may be used as described herein.

これらのタイムスロットの解釈は、個々のフィールドは同じ順序であろうが、選択された構成に依存するであろう。起動時に、デフォルトのデータフォーマットが、最大のバス径に合わせて(最も遅い速度)設定される。図16Cを参照して、例示的なフレーム構成が、各ラインのデータにおいて異なるフィールドを示しながら図示されている。個々のタイムスロットの解釈を変更することで、ボーレートとバス径の間での様々な折衷案を選択することができる。同期パターンは、1ラインのデータ当たり1回の頻度で繰り返す。同期パターンは、0から1への遷移である。 The interpretation of these time slots will depend on the configuration selected, although the individual fields will be in the same order. At boot time, the default data format is set to the maximum bus diameter (slowest speed). With reference to FIG. 16C, an exemplary frame configuration is illustrated showing different fields in the data for each line. By changing the interpretation of individual time slots, various compromises between baud rate and bus diameter can be selected. The synchronization pattern is repeated once per line of data. The synchronization pattern is a transition from 0 to 1.

図示された実施形態では、一のラインが、同期フィールド(0−1)、ターンアラウンド期間T(マスターデバイスも如何なるスレーブデバイスも方向の変更を許可するようにアクティブになっていない期間であり、このタイムスロットも、前方コマンド(マスター制御)とフレーム作成情報Fを含んでいる)と、コマンドフィールド(CMD又は応答R)と、前方に(典型的には、マスターからスレーブに)音声を輸送するためのフィールドと、マスターからスレーブにバルクレジスタデータを輸送するためのフィールドBと、信号伝搬方向の変更を可能にするためのターンアラウンド期間Tと、後方に(典型的には、スレーブからマスターに)音声を輸送するためのフィールドと、スレーブからマスターにバルクデータを輸送するためのフィールドBと、次のラインが開始するまでのデータの整列のための空フィールドとを含んでいる。 In the illustrated embodiment, one line is the synchronization field (0-1), the turnaround period T 1 (the period during which neither the master device nor any slave device is active to allow redirection. The time slot also contains forward commands (master control) and frame creation information F), command fields (CMD or response R), and forward (typically from master to slave) to transport voice. and fields, the fields B 1 for transporting bulk register data from the master to the slave, the turnaround time T 2 of the order to allow changes in the signal propagation direction, the rearward (typically, a master from the slave ) and a field for transporting voice, field B 2 for transporting bulk data from the slave to the master, and a empty field for alignment of the data up to the next line is started.

マスターがコマンドフィールドにコマンドを発行すると、良好なタイミングマージンを確保するために、マスターは、隣接するTフィールドも同じ値で駆動するであろう。しかしながら、マスターがスレーブデバイスからの応答を期待しているときには、マスターは、T及びCMDフィールドを駆動しないであろう。Tフィールドは、如何なるデバイスによっても駆動されず、データのターンアラウンドに割り当てられている。スレーブデバイスがコマンドフィールドに応答を発行する場合、それは“CMD”フィールドのみを駆動し、隣接するTフィールドは駆動されずに信号のターンアラウンドのために用いられる。スレーブデバイスからマスターデバイスまでの実際の距離は、未知である場合がある。従って、コマンドが発行されると、スレーブデバイスからマスターデバイスへの実際の遅延を測定することになろう。実際の遅延は、タイミングを最適化する、例えば、受信アイダイアグラムを最適化するために用いられよう。 If the master issues a command in the command field, in order to ensure good timing margin, the master, the adjacent T 1 field will also be driven with the same value. However, when the master is expecting a response from the slave device, the master will not drive the T 1 and CMD field. T 2 field is not driven by any device, allocated to the turnaround of the data. If the slave device issues a response to the command field, it "CMD" field only driven, the adjacent T 1 field is used for turnaround of the signal without being driven. The actual distance from the slave device to the master device may be unknown. Therefore, when the command is issued, it will measure the actual delay from the slave device to the master device. The actual delay may be used to optimize timing, for example, to optimize the received eye diagram.

これらのフィールドのそれぞれに割り当てられるタイムスロットの数は、応用によって異なり得るが、図示された実施形態では、1ラインのタイムスロットの総数は80である。起動時のデフォルト設定は、各フィールドの開始時のタイムスロットの数を示している。起動時にはバルク転送にはタイムスロットは割り当てられていない。 The number of time slots assigned to each of these fields may vary from application to application, but in the illustrated embodiment the total number of time slots per line is 80. The default startup setting indicates the number of time slots at the start of each field. No time slot is assigned to the bulk transfer at startup.

と印がつけられたタイムスロットは、ターンアラウンド遅延のためのものである。これらのタイムスロットの内部には実際のデータ値は定義されない。ターンアラウンド遅延T−Tは、データ方向を変更(即ち、前進波から後進波へ、及び、その逆に)できるように割り当てられている。マスター及びスレーブデバイスから送信されるビット数は変化することがあり、そして、如何なる送信が開始する前にもプログラムされるべきである。上記に示した例では、マスターは、スレーブに各ラインにおいて6ビットを送信し、スレーブは、マスターに各ラインにおいて4ビットを送信する。この例はデフォルト設定を示しており、マスター及びスレーブに割り当てられる帯域幅は、他の設定にプログラムされ得る。同期パターンは、データ構成に関わらず固定されたままである。コマンドターンアラウンド等のためにデータビット当たりに割り当てられたタイムスロットの数をプログラミングすることにより、典型的には高いジッタ要求と短い最大バス径を犠牲にしながら、帯域幅を相当に増加することができる。このプログラム可能な性質は、システムデザイナが、各方向にどれだけの帯域幅が同期、コマンド及びデータに使用可能かを決定することによって、高いシグナルインテグリティのために帯域幅をトレードオフの関係にすることを可能にする。また、スルーレートと出力伝送電圧をプログラミングすることにより、システムがEMIについての要求をパスできるようにしながら信号インテグリティを最適化できる。 Time slots marked TN are for turnaround delays. No actual data value is defined inside these time slots. Turnaround delay T 1 -T 2 is changed the data direction (i.e., the backward wave from the forward wave, and vice versa) are allocated as possible. The number of bits transmitted from the master and slave devices can vary and should be programmed before any transmission begins. In the example shown above, the master sends 6 bits to the slave on each line and the slave sends 4 bits to the master on each line. This example shows the default settings, and the bandwidth allocated to the master and slave can be programmed into other settings. The synchronization pattern remains fixed regardless of the data structure. Programming the number of time slots allocated per data bit for command turnaround etc. can significantly increase bandwidth, typically at the expense of high jitter requirements and short maximum bus diameters. can. This programmable property makes bandwidth a trade-off for high signal integrity by allowing the system designer to determine how much bandwidth is available for synchronization, commands and data in each direction. Make it possible. Also, by programming the slew rate and output transmission voltage, signal integrity can be optimized while allowing the system to pass the requirements for EMI.

マスターがコマンドフィールドにおいてコマンドを発行するとき、マスターは、より良いタイミングマージンを確保するために隣接するT及びTフィールドを同一値で駆動するであろう。しかしながら、マスターがスレーブデバイスからの応答を期待しているときには、マスターはT、CMD及びTフィールドを駆動しないであろう。スレーブデバイスがコマンドフィールドにおいて応答を発行するとき、スレーブデバイスは“CMD”フィールドのみを駆動し、隣接するT及びTフィールドは駆動されず、信号のターンアラウンドのために用いられるであろう。スレーブデバイスからマスターデバイスへの実際の距離は未知である場合がある。従って、コマンドが発行されると、スレーブデバイスからマスターデバイスへの実際の遅延を測定することになろう。実際の遅延は、タイミングの最適化、例えば、受信アイダイアグラムの最適化に用いられるであろう。高いデータインテグリティのために用いられる値が、各データ単位の中央に位置している一方で、マスターは、遅延最適化のために、通常のサンプリングの前に1/2データ単位で、即ち、2つデータ値の間のエッジでスレーブ遅延をサンプリングするであろう。 When the master issues a command in the command field, the master will drive adjacent T 1 and T 2 fields with the same value to ensure a better timing margin. However, when the master is expecting a response from the slave device, the master will not drive the T 1, CMD and T 2 field. When the slave device issues a response in the command field, the slave device drives only "CMD" field, adjacent T 1 and T 2 field is not driven, it will be used for signal turnaround. The actual distance from the slave device to the master device may be unknown. Therefore, when the command is issued, it will measure the actual delay from the slave device to the master device. The actual delay will be used for timing optimization, eg optimization of the received eye diagram. The values used for high data integrity are centered in each data unit, while the master is in 1/2 data units prior to normal sampling for delay optimization, ie, 2 The slave delay will be sampled at the edge between the data values.

クロックの両方のエッジを用いることで2回のオーバーサンプリングが達成可能である。マスターがコマンドフィールドにおいてコマンドを発行する場合、マスターは、隣接する“T”フィールドを同一値で駆動するであろう。スレーブデバイスがコマンドフィールドにおいて応答を発行する場合、スレーブデバイスは、“R”フィールドのみを駆動し、隣接する“T”フィールドは駆動されずに信号のターンアラウンドのために用いられるであろう。バス径が短く、バス周波数が低い場合、
遅延測定が実行可能になる前に、漏れ電流がバス値を変更し得る。この場合、漏れ電流が遅延測定に全く影響を与えないことを確実にするためにシステムにバスホルダーを設けることが最適である。このようなバスホルダーの出力インピーダンスは、典型的には1〜2kΩの範囲であろう。
Two oversamplings can be achieved by using both edges of the clock. If the master issues a command in the command field, the master will drive the adjacent "T" fields with the same value. If the slave device issues a response in the command field, the slave device will only drive the "R" field and the adjacent "T" field will not be driven and will be used for signal turnaround. If the bus diameter is short and the bus frequency is low,
Leakage current can change the bus value before the delay measurement becomes feasible. In this case, it is best to provide a bus holder in the system to ensure that the leakage current does not affect the delay measurement at all. The output impedance of such a bus holder will typically be in the range of 1-2 kΩ.

スレーブデバイスは、それが一旦ロックされたなら、デバイス状態を伝えることによって応答すべきである。スレーブPLL回路は、1ms以内にマスターとのロックを得ることができるべきであり、他の制御回路部によって用いられるように「PLLロック」信号を出力できるべきである。更に、PLLは、スレーブコマンドコントローラから論理信号(「メッセージ同期」信号)を予期すべきである。「メッセージ同期」信号がハイであり、スレーブPLLが、自身がロック状態にあると判断したなら、スレーブPLLは、狭帯域幅モードに変化すべきである。狭帯域幅モードでは、時間ゲートは、同期エッジの周辺の狭い時間ウィンドウにおいてのみ位相検出器からの出力を許容するであろう。もしこれらの信号のいずれかがアクティブ(ハイ)ではないならば、PLLは、広い帯域の位相検出に変化すべきであり、スレーブデバイスは、バスへの書き込みができないようになるべきである(これがなされたら、他のデバイスの上書きができなくなる)。 The slave device should respond by telling the device state once it is locked. The slave PLL circuit should be able to obtain a lock with the master within 1 ms and be able to output a "PLL lock" signal for use by other control circuitry. In addition, the PLL should expect a logical signal (a "message sync" signal) from the slave command controller. If the "message sync" signal is high and the slave PLL determines that it is in the locked state, the slave PLL should change to narrow bandwidth mode. In narrow bandwidth mode, the time gate will only allow output from the phase detector in a narrow time window around the sync edge. If any of these signals are not active (high), the PLL should change to wideband phase detection and the slave device should not be able to write to the bus (this is). Once done, you will not be able to overwrite other devices).

音声データは、リンク上を双方向で、即ち、マスターデバイスからスレーブデバイスへの前方及びスレーブデバイスからマスターデバイスへの後方に伝搬可能である。もしスレーブデバイスが、自身よりもマスターから離れて位置する他のスレーブデバイスにデータを転送したい場合、該スレーブデバイスは、前方に、即ち、「マスター音声」とラベルされたフィールドにおいてデータを送信する。 Audio data can propagate bidirectionally on the link, i.e., forward from master device to slave device and backward from slave device to master device. If the slave device wants to transfer data to another slave device that is located farther from the master than itself, the slave device sends the data forward, i.e., in the field labeled "master voice".

ポートプログラミング
様々な実施形態において、データ転送は、ポートプログラミングによって取り扱われる。任意の送信ポートから任意の受信ポートにデータを転送可能にするために、データはモノラルチャネルのように扱われてもよい。このアプローチを用いて、ステレオチャンネル及び多チャンネルシステムは、チャネルがグループとして扱われる状況と比較して、より長いプログラミングシーケンスを用いることになろう。しかしながら、このアプローチは、より簡単であり、任意のデータ転送についてより高い柔軟性を与える。
Port programming In various embodiments, data transfer is handled by port programming. Data may be treated like a monaural channel so that data can be transferred from any transmit port to any receive port. Using this approach, stereo-channel and multi-channel systems will use longer programming sequences compared to situations where channels are treated as groups. However, this approach is simpler and gives more flexibility for any data transfer.

あるポートに対応する全てのレジスタは、バンク(シャドー)レジスタを有するであろう。主及びシャドーレジスタの選択は、バンク選択レジスタに書き込むことで達成される。一以上のエラーによるバンクレジスタ値の変化に起因する、バスの振る舞いへの破滅的な変化を避けるために、このレジスタは、特別に保護されていた。言い換えれば、バンク値を変更するためには、バンク番号1を選択するために特定のレジスタに特定の8ビット値を書き込む必要があり、バンク番号0を選択するために、これら2つのワードの間に長いハミング距離がある異なる8ビット値を書き込む必要がある。一つのシナリオから他のシナリオに変更するときに不調や歪に遭遇することなく、2以上の再生モードの間で変更をシームレスに行うためにバンクレジスタが用いられる。なお、如何なる音声の不調をも避けるためには、適切なバッファリングによってフィルタ構成を変更する際に、群遅延に注意を払う必要もあるかもしれない。 All registers corresponding to a port will have bank (shadow) registers. The selection of the main and shadow registers is accomplished by writing to the bank selection registers. This register was specially protected to avoid catastrophic changes in bus behavior due to changes in bank register values due to one or more errors. In other words, in order to change the bank value, it is necessary to write a specific 8-bit value to a specific register in order to select bank number 1, and between these two words in order to select bank number 0. You need to write different 8-bit values that have a long Hamming distance to. Bank registers are used to seamlessly make changes between two or more playback modes without encountering upsets or distortions when changing from one scenario to another. It may be necessary to pay attention to group delay when changing the filter configuration by appropriate buffering in order to avoid any audio malfunction.

任意のデータを任意の送信ポートから任意の受信ポートに自在に転送できるようにするために、送信及び受信ポートの両方が、フレーム内のデータの位置を自在にプログラム可能である。例えば、ある行変数は、書き込まれるべき最初のデータの行の選択を許容することがあり、行増分は、隣接するアクティブな行への間隔を選択するために使用可能である。列変数は、書き込まれるべき最初の列を選択するために使用され得、“最終列”変数は、データが書き込まれ又は読み出されている最後の列を選択するために使用され得る。所与のデータポートからのデータ長(例えば、データ語長)もプログラムされ得る。いくつかの実施形態では、データ値は、1以上のフレームに渡って延伸することがあり、ストリームの同期がプログラムされることがある。これは、典型的には、この同期を達成するためのビーコンビットを用いて達成されている。 Both the transmit and receive ports are freely programmable in the position of the data within the frame so that any data can be freely transferred from any transmit port to any receive port. For example, a row variable may allow selection of the first row of data to be written, and row increments can be used to select the spacing between adjacent active rows. Column variables can be used to select the first column to be written, and "last column" variables can be used to select the last column to which data has been written or read. Data lengths from a given data port (eg, data word lengths) can also be programmed. In some embodiments, the data values may be stretched over one or more frames and stream synchronization may be programmed. This is typically achieved using a beacon bit to achieve this synchronization.

バルク転送は、バルク転送が有効にされる前に、開始行、行増分、開始列及び列停止レジスタが、定義される必要がある場合がある。バルク制御ビットがバルク転送コマンドを有効に及び無効にするために使用され得る。バルク転送をサポートしているポートのみがこのビットを使用し、そうでなければ値が無視される。バルク転送は、ポートによって実行される最後のバルク動作の間に転送される全ビットの24ビットCRCチェック値を保持する追加のレジスタを有していることがある。各デバイスは、同時に動作するバルク転送ポートを一つしか持つことはできず、通常は2以上のバルク転送ポートを持つことはないであろう。バルク制御レジスタは、(例えば、32ビットアドレスの)開始レジスタと、(例えば、32ビットアドレスの)終了レジスタと、(例えば、32ビットの)長さレジスタと、単一又は連続転送を示すフラグと、読み出し/書き込み方向フラグとを含んでいてもよい。なお、ポートは、バルク転送開始コマンドに反応するために最初に有効される必要がある。ポート転送の間に有効にされるポートは、マスターによって書き込まれる24ビットワードによって与えられる。バルク転送動作の開始の間、24ビットワードがマスターによって書き込まれる。各デバイスは、内部的にこれらのビットを(もし、いずれかが実装されているのであれば)バルク転送ポートに割り当てる。 Bulk transfers may require the start row, row increment, start column and column stop registers to be defined before the bulk transfer is enabled. Bulk control bits can be used to enable and disable bulk transfer commands. Only ports that support bulk forwarding use this bit, otherwise the value is ignored. Bulk transfers may have additional registers holding 24-bit CRC check values for all bits transferred during the last bulk operation performed by the port. Each device can have only one bulk transfer port operating at the same time and will usually not have more than one bulk transfer port. Bulk control registers include a start register (eg, for a 32-bit address), an end register (for example, for a 32-bit address), a length register (for example, a 32-bit address), and a flag indicating a single or continuous transfer. , Read / write direction flags may be included. Note that the port must first be enabled in order to respond to the bulk transfer start command. The port enabled during port forwarding is given by a 24-bit word written by the master. A 24-bit word is written by the master during the start of the bulk transfer operation. Each device internally assigns these bits (if any are implemented) to the bulk transfer port.

電力消費
帯域幅の要求が穏やかである簡潔なシステムについては、リンクの終端を避けることで顕著に電力消費を低減可能である。その代わりに、トランスミッタは、ラインインピーダンスで直列終端されるであろう。トランスミッタ側からの如何なる反射をも避けるために、トランスミッタの出力インピーダンスは、出力レベルの変化の間でも比較的安定であるべきである。これは、出力インピーダンスが突然非常に高くなる時間ゾーンが無いように、順次に、同時には一つだけ活性化される複数のドライバを持つことで達成可能である。また、もし伝送線路の各端に位置している2つのデバイスしか無ければ、反射の問題は消え去り、リンクの端が終端されずに直列終端トランスミッタを用いて高速及び低電力が達成可能である。
For concise systems with mild power consumption bandwidth requirements, avoiding link termination can significantly reduce power consumption. Instead, the transmitter will be serially terminated with line impedance. To avoid any reflection from the transmitter side, the output impedance of the transmitter should be relatively stable during changes in output level. This can be achieved by having multiple drivers that are activated in sequence, only one at a time, so that there is no time zone where the output impedance suddenly becomes very high. Also, if there are only two devices located at each end of the transmission line, the reflection problem disappears and high speed and low power can be achieved using a series terminating transmitter without terminating the end of the link.

並列終端を避けることにより、電力消費は、(250mVのシグナリング、50pFの負荷、及び、40Mbitの信号伝送に基づけば)容量的に充電するだけによる、2×125μW=250μWまでに減少するであろう。実使用では、受信PLL(例えば、250μW)の電力消費と制御オーバヘッドのためのいくらかの追加の帯域幅を追加する必要があろうし、しかしながら、1mWを下回るような電力割当量は、非現実的である。 By avoiding parallel termination, power consumption will be reduced to 2 x 125 μW = 250 μW by only capacitive charging (based on 250 mV signaling, 50 pF load, and 40 Mbit signal transmission). .. In practical use, it would be necessary to add some additional bandwidth for the power consumption and control overhead of the received PLL (eg 250 μW), however, power allocations below 1 mW would be impractical. be.

様々な実施形態において、マスターは、スレーブをウェークアップ可能であるべきであり、スレーブは、マスターをウェークアップ可能であるべきである。よい信号インテグリティと全ての他の回路の電力消費量の低下を確保するために、最も簡単なゼロ電力ウェークアップ(<1μA)モードでは、より高い信号電圧(約1V)を用いる。より複雑なソルーションでは、全てのモードで同一の信号電圧を維持可能であろうが、これは、より複雑な回路と受信回路が常にオンにされる必要がある(100μA)。マスターは、全スレーブに書き込みを行い、次のフレームにバス停止が開始することを伝えるであろう。マルチドロップバスについては、これは、端点にあるノードが、フレームの終わりに終端を無効にすることを必要とするであろう。次のフレームにおいて、マスターは、弱いドライバ(約5kΩ)を用いてD+をVDDに駆動するであろう。遷移の間の如何なるEMIをも低減するためにハイインピーダンスが使用され得る。D+がVDDである限り、これは、低電力状態がまだアクティブであることを示すものである。スレーブは、中間の強さのドライバ(約600Ω)を用いてウェークアップエベントを伝えるためにD+ラインをプルダウンすることがある。これは、少なくとも7ns(15pF以上の負荷)の遷移を確保する。(もし、標準の32.768kHz低電力ウェークアップクロックがマスターで用いられていても)マスターがイベントを登録したことを確実にするためには、このラインは、少なくとも50μsの間、ローにプルダウンされている必要がある。多くとも100μsの後、スレーブはプルダウンイベントを無効にし、マスターは、イベントが登録されてバスが再起動した後で、少なくとも100μsの間バスを起動し始めるであろう。 In various embodiments, the master should be able to wake up the slave and the slave should be able to wake up the master. In order to ensure good signal integrity and reduced power consumption of all other circuits, the simplest Zero Power Wake Up (<1μA) mode uses a higher signal voltage (about 1V). For more complex solutions, the same signal voltage could be maintained in all modes, but this requires the more complex and receiving circuits to be always on (100 μA). The master will write to all slaves and tell them that the bus stop will start in the next frame. For multi-drop buses, this would require the node at the endpoint to invalidate the termination at the end of the frame. In the next frame, the master will drive D + to VDD with a weak driver (about 5 kΩ). High impedance can be used to reduce any EMI during the transition. As long as D + is VDD, this indicates that the low power state is still active. The slave may pull down the D + line to convey the wake-up event using a driver of medium strength (about 600Ω). This ensures a transition of at least 7 ns (load of 15 pF or more). To ensure that the master registered the event (even if a standard 32.768 kHz low power wakeup clock was used on the master), this line was pulled low for at least 50 μs. You need to be. After at most 100 μs, the slave will disable the pull-down event and the master will start booting the bus for at least 100 μs after the event has been registered and the bus has restarted.

PLL同期
システムの電源が投入されるとき、スレーブデバイスは、マスターデバイスと同期を確立する必要があろう。これは、次のようにして達成される:(i)マスターが、各ラインにおいて固定の同期パターン(0から1への遷移)を送出する。(ii)マスターが、コマンド応答及びターンアラウンドに割り当てられたタイムスロットを除くフレームの全ビットを定義する。(iii)スレーブデバイスのPLL/DLLがマスターにロックされると、それは、「スレーブロック状態」ビット(EarLinkコマンドのセクション参照)を活性化して応答する。(iv)これでマスターデバイスがスレーブデバイスをプログラム可能である。
When the PLL synchronization system is powered on, the slave device will need to establish synchronization with the master device. This is achieved as follows: (i) The master sends out a fixed synchronization pattern (0 to 1 transition) at each line. (Ii) The master defines all bits of the frame except the time slots allocated for command response and turnaround. (Iii) When the PLL / DLL of the slave device is locked to the master, it responds by activating the "slave lock state" bit (see section of the EarLink command). (Iv) The master device can now program the slave device.

一実施形態では、1ラインが、クロック周波数及び電力モードに関わらず、80個のタイムスロットを含んでいる。同期パターンは、1ライン当たりに1回の頻度で繰り返す。同期パターンは、0から1への遷移である。ライン/周期の最初の0から1への遷移のみがスレーブデバイスのPLL/DLLによって使用される。コマンドタイムスロットが、同期タイムスロットの直後に続くので、これは、初期的には、1ラインには単一の0から1への遷移しかないことを意味しており、従って、PLLの同期イベントは、一意に定義されるであろう。立ち上がりクロックエッジが同期に用いられている限り、スレーブのPLL/DLL回路は、1ms以内にマスターとのロックを得ることができるべきであり、他の制御回路に使用されるであろう内部“PLL/DLLロック”信号を出力可能であるべきである。更に、PLL/DLLは、スレーブコマンドコントローラからの論理信号(「メッセージ同期」信号)を予期すべきである。「メッセージ同期」信号がハイであり、スレーブPLL/DLLが、自身がロックされていると特定した場合、狭帯域幅モードに変更すべきである。狭帯域幅モードでは、時間ゲートは、位相検出器からの出力を、同期エッジの周辺の狭い時間ウィンドウにおいてのみ許容するであろう。もし、これらの信号のいずれかがアクティブ(ハイ)でない場合、PLL/DLLは、広い帯域の位相検出に変化する(即ち、位相/遅延検出器ウィンドウのゲーティング論理を無効にし、バス衝突を避けるためにスレーブ出力トランスミッタを無効にする)べきである。マスターは、デバイス状態を読み出し、これにより、スレーブがロックを得たときに検出すべきである。更に、このメッセージは、スレーブデバイスの遅延タイミングを最適化するために使用されることがあり、ポート転送が開始される前に完了されるべきである。 In one embodiment, one line contains 80 time slots, regardless of clock frequency and power mode. The synchronization pattern is repeated once per line. The synchronization pattern is a transition from 0 to 1. Only the first 0 to 1 transition of the line / cycle is used by the slave device's PLL / DLL. This initially means that there is only a single 0 to 1 transition per line, as the command time slot immediately follows the sync time slot, and therefore the PLL sync event. Will be uniquely defined. As long as the rising clock edge is used for synchronization, the slave PLL / DLL circuit should be able to obtain a lock with the master within 1ms and an internal “PLL” that would be used for other control circuits. It should be able to output a / DLL lock "signal. In addition, the PLL / DLL should anticipate a logical signal (“message synchronization” signal) from the slave command controller. If the "message sync" signal is high and the slave PLL / DLL determines that it is locked, it should change to narrow bandwidth mode. In narrow bandwidth mode, the time gate will only allow output from the phase detector in a narrow time window around the sync edge. If any of these signals are not active (high), the PLL / DLL changes to wideband phase detection (ie, disables the phase / delay detector window gating logic and avoids bus collisions. Therefore, the slave output transmitter should be disabled). The master should read the device state, thereby detecting when the slave acquires the lock. In addition, this message may be used to optimize delay timing for slave devices and should be completed before port forwarding begins.

同期が得られた後、遷移の周辺のウィンドウ(例えば、+/−3タイムスロット、即ち、6タイムスロットからなる同期タイムスロットの半分)がPLL/DLLのために開放される。PLLに狭い時間ウィンドウが用いられる理由は、PLLによって統合されるべき位相検出器からの出力は、バス上の如何なるデータ通信によっても混乱されてはならないからである。このように、PLLを、広い、即ち、時間領域で広い受信帯域幅で始動し、その後、PLL統合ユニットへの入力を時間ゲーティングする必要がある。時間ゲートウィンドウの幅は、タイムスロットの幅に依存しており、一のタイムスロットは、スレーブPLLの1クロック周期によって決定される。約294.912MHz(3.072MHz×96)の内部クロック周波数については、1つの同期ビットを送信するのに6タイムスロットを使用するシステムでは、これは、約+/−10.2nsにあたる。この構成は、(10−12のビットエラーレートについて)この値の約14倍であるピークジッタについては約727psRMSまでのジッタを受け入れるであろう。 After synchronization is obtained, the windows around the transition (eg, +/- 3 time slots, ie half of the synchronization time slot consisting of 6 time slots) are opened for the PLL / DLL. The reason the narrow time window is used for the PLL is that the output from the phase detector to be integrated by the PLL must not be confused by any data communication on the bus. Thus, it is necessary to start the PLL with a wide, i.e., wide reception bandwidth in the time domain, and then time-gate the input to the PLL integration unit. The width of the time gate window depends on the width of the time slot, and one time slot is determined by one clock period of the slave PLL. For an internal clock frequency of about 294.912 MHz (3.072 MHz x 96), this corresponds to about +/- 10.2 ns in a system that uses 6 time slots to transmit one sync bit. This configuration will accept jitter up to about 727ps RMS for peak jitter, which is about 14 times this value (for a bit error rate of 10-12).

適用可能である場合、本開示で提供されている様々な実施形態は、ハードウェア、ソフトウェア、又は、ハードウェアとソフトウェアとの組み合わせを用いて実施され得る。また、適用可能である場合、本明細書に提示されている様々なハードウェアコンポーネント及び/又はソフトウェアコンポーネントは、本開示の要旨から離れることなく、ソフトウェア、ハードウェア及び/又はその両方を備える複合コンポーネントに組み合わされ得る。適用可能である場合、本明細書に提示されている様々なハードウェアコンポーネント及び/又はソフトウェアコンポーネントは、本開示の範囲から離れることなく、ソフトウェア、ハードウェア及び/又はその両方を備えるサブコンポーネントに分離され得る。加えて、適用可能である場合、ソフトウェアコンポーネントは、ハードウェアコンポーネントとして実装され得るし、また、逆も同じであると考えられる。 Where applicable, the various embodiments provided in the present disclosure may be implemented using hardware, software, or a combination of hardware and software. Also, where applicable, the various hardware and / or software components presented herein are composite components that include software, hardware, and / or both, without leaving the gist of the present disclosure. Can be combined with. Where applicable, the various hardware and / or software components presented herein are separated into subcomponents comprising software, hardware and / or both without leaving the scope of this disclosure. Can be done. In addition, if applicable, software components can be implemented as hardware components and vice versa.

前述の開示は、本開示を正確な形式に限定し、又は、開示されている特定の使用領域に限定する意図はない。従って、様々な代替的な実施形態及び/又は本開示への変更が、ここにおいて明示的に説明されていようと暗示されていようと、開示に即して可能であると考えられる。本開示の上記の実施形態をもってすれば、当業者は、本開示の範囲を離れることなく、形態及び詳細に変更がなされ得ると利認識するであろう。従って、本開示は、クレームによってのみ限定される。 The aforementioned disclosure is not intended to limit this disclosure to the exact form or to the particular areas of use disclosed. Accordingly, it is believed that various alternative embodiments and / or changes to the present disclosure are possible in line with the disclosure, whether expressly described or implied herein. With the above embodiments of the present disclosure, one of ordinary skill in the art will appreciate that changes can be made in the form and details without leaving the scope of the present disclosure. Therefore, this disclosure is limited only by claim.

Claims (19)

複数のタイムスロットを備える通信プロトコルを用いてデジタル通信を行うためのマルチドロップバスに結合されたマスターデバイスと、
前記マルチドロップバスに結合され、前記通信プロトコルに従って前記マスターデバイスとデジタル通信を送受信するように構成された第1スレーブデバイスと、
を備え、
前記複数のタイムスロットの少なくとも一つが、前記第1スレーブデバイスのための通信設定を規定して帯域幅及び/又は信号インテグリティを動的に最適化するために用いられる
システム。
A master device coupled to a multi-drop bus for digital communication using a communication protocol with multiple time slots,
A first slave device coupled to the multi-drop bus and configured to send and receive digital communication to and from the master device according to the communication protocol.
Equipped with
A system in which at least one of the plurality of time slots is used to dynamically optimize bandwidth and / or signal integrity by defining communication settings for the first slave device.
前記マルチドロップバスは、2つの線において異なる電圧レベルで終端され、これにより、低電力動作と低電磁妨害を容易化する差動データバスである
請求項1に記載のシステム。
The system of claim 1, wherein the multi-drop bus is a differential data bus terminated at different voltage levels on two lines, thereby facilitating low power operation and low electromagnetic interference.
要求される信号伝送レートよりも大きい信号伝送レートで動作し、各サイクルの一部でマルチドロップバスを休止したままにしておくことで、電力消費が低減されている
請求項2に記載のシステム。
The system according to claim 2, wherein the system operates at a signal transmission rate higher than the required signal transmission rate, and power consumption is reduced by leaving the multi-drop bus paused as part of each cycle.
前記マルチドロップバスが、端部トランスミッタを用いてスレーブデバイスを受け取るように構成されたマルチドロップ差動長線路長バスである
請求項1に記載のシステム。
The system according to claim 1, wherein the multi-drop bus is a multi-drop differential long line length bus configured to receive a slave device using an end transmitter.
前記マルチドロップバスが、更に、予期された固定パターンに従って変化していないタイムスロットを識別し、安全な同期のために無効な位置を消滅させることを含んで2以上の接続デバイスを同期するように構成された
請求項1に記載のシステム。
The multi-drop bus will further synchronize two or more connected devices, including identifying time slots that have not changed according to the expected fixed pattern and extinguishing invalid positions for secure synchronization. The system according to claim 1.
前記システムが、更に、マルチドロップバスのデジタル通信トラフィックと独立してバルクデータ転送を容易化するように構成されている
請求項1のシステム。
The system of claim 1, wherein the system is further configured to facilitate bulk data transfer independently of the digital communication traffic of the multi-drop bus.
前記第1スレーブデバイスと前記バスに接続されている第2スレーブデバイスとが、送信メッセージが一連の前進又は後進伝搬波として送られるようにタイミングが取られ、これにより、終端された伝送線路を用いたマルチドロップ高速双方向通信が可能になっている
請求項1に記載のシステム。
The first slave device and the second slave device connected to the bus are timed so that the transmitted message is sent as a series of forward or backward propagating waves, thereby using a terminated transmission line. The system according to claim 1, which enables multi-drop high-speed bidirectional communication.
前記マルチドロップバス上の中間ノードが、伝搬波に短い中断を生じさせるように前記マルチドロップバスに接続され、
前記中間ノードに起因する前記伝送線路の途絶の物理的長さが、信号伝送に用いられる最短の波長よりも短い
請求項1に記載のシステム。
An intermediate node on the multi-drop bus is connected to the multi-drop bus so as to cause a short break in the propagating wave.
The system according to claim 1, wherein the physical length of the interruption of the transmission line caused by the intermediate node is shorter than the shortest wavelength used for signal transmission.
デバイス間の遅延が、既知の値にバスをチャージし、前記バスの始点と終点のドライバを無効化して前記バスをフローティングにし、測定の間に終端されないようにし、前記デバイスがバスのレベルを変化させることを待ち、遷移遅延を測定することにより測定される
請求項1に記載のシステム。
Delays between devices charge the bus to known values, disable drivers at the start and end points of the bus to float the bus so that it is not terminated during measurements, and the device changes the level of the bus. The system of claim 1, wherein the system is measured by waiting for it to occur and measuring the transition delay.
システムタイミングが前記マスターデバイス及び/又は前記第1スレーブデバイスに設けられたフラクショナルPLLから得られており、前記PLLが、擬似乱数生成器からの出力を分数加算器に加算することでディザリングされ、これにより、EMIを低減する
請求項1に記載のシステム。
The system timing is obtained from the fractional PLL provided in the master device and / or the first slave device, and the PLL is dithered by adding the output from the pseudo-random number generator to the fractional adder. The system according to claim 1, wherein the EMI is reduced by the method.
擬似乱数生成器が、一以上のデータポートの出力をスクランブルし、これにより出力スペクトルを白色化して低EMIを可能にするように構成された
請求項1に記載のシステム。
The system of claim 1, wherein the pseudo-random number generator is configured to scramble the output of one or more data ports, thereby whitening the output spectrum and enabling low EMI.
PLLが前記マスターデバイスと前記第1スレーブデバイスの間の同期を得るために用いられる
請求項1に記載のシステム。
The system of claim 1, wherein the PLL is used to obtain synchronization between the master device and the first slave device.
前記PLLが、前記PLLの初期ロックの間に有効にされ、その後、前記PLLがランダムなバストラフィックにロックすることを避けるために、同期情報を通過させるのみになる時間ゲートを備えている
請求項12に記載のシステム。
A claim comprising a time gate in which the PLL is enabled during the initial lock of the PLL and then only passes synchronization information to prevent the PLL from locking into random bus traffic. 12. The system according to 12.
DLLがマスターデバイスと1以上のスレーブデバイスの間のロックを得るために用いられる
請求項1に記載のシステム。
The system of claim 1, wherein the DLL is used to obtain a lock between the master device and one or more slave devices.
前記DLLが、前記DLLの初期ロックの間に有効にされ、その後、前記DLLがランダムなバストラフィックにロックすることを避けるために、同期情報を通過させるのみになる時間ゲートを備えている
請求項14に記載のシステム。
A claim comprising a time gate in which the DLL is enabled during the initial lock of the DLL and then only passes synchronization information to prevent the DLL from locking into random bus traffic. 14. The system according to 14.
複数のタイムスロットを備える通信プロトコルを用いるデジタル通信のためのマルチドロップバスに結合されたマスターデバイスを提供することと、
第1スレーブデバイスを前記マルチドロップバスに結合し、前記スレーブデバイスを前記通信プロトコルに従って前記マスターデバイスとのデジタル通信を送受信するように設定することと、
前記複数のタイムスロットの少なくとも一を用いて前記第1スレーブデバイスのための通信設定を規定して動的に帯域幅及び/又は信号インテグリティを最適化することと、
を含む
方法。
To provide a master device coupled to a multi-drop bus for digital communication using a communication protocol with multiple time slots.
The first slave device is coupled to the multi-drop bus, and the slave device is set to send and receive digital communication with the master device according to the communication protocol.
Dynamically optimizing bandwidth and / or signal integrity by defining communication settings for the first slave device using at least one of the plurality of time slots.
How to include.
更に、前記マルチドロップバスを逆極性で終端された差動データバスとして動作させ、これにより低電力動作と低電磁妨害を容易化することを含む
請求項16に記載の方法。
The method of claim 16, further comprising operating the multi-drop bus as a differential data bus terminated with reverse polarity, thereby facilitating low power operation and low electromagnetic interference.
更に、予期された固定パターンに従って変化しないタイムスロットを識別し、安全な同期のために無効な位置を消滅することを含んで2以上の接続デバイスを同期することを含む
請求項16に記載の方法。
The method of claim 16, further comprising synchronizing two or more connected devices, including identifying time slots that do not change according to an expected fixed pattern and extinguishing invalid positions for secure synchronization. ..
前記第1スレーブデバイスと前記バスに接続された第2スレーブデバイスとが、送信メッセージが一連の前進又は後進伝搬波として送られるようにタイミングが取られ、これにより、終端された伝送線路を用いたマルチドロップ高速双方向通信が可能になっている
請求項16に記載の方法。
The first slave device and the second slave device connected to the bus were timed so that the transmitted message was sent as a series of forward or backward propagating waves, thereby using a terminated transmission line. The method according to claim 16, wherein multi-drop high-speed two-way communication is possible.
JP2020565787A 2018-05-31 2019-05-31 Low power, high bandwidth, low latency data bus Active JP7293257B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2023094095A JP2023123529A (en) 2018-05-31 2023-06-07 Low power, high bandwidth, low latency data bus

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201862678993P 2018-05-31 2018-05-31
US62/678,993 2018-05-31
US201862721412P 2018-08-22 2018-08-22
US62/721,412 2018-08-22
US16/125,617 2018-09-07
US16/125,617 US10734012B2 (en) 2017-09-07 2018-09-07 Low power, high bandwidth, low latency data bus
PCT/US2019/035058 WO2019232482A1 (en) 2018-05-31 2019-05-31 Low power, high bandwidth, low latency data bus

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2023094095A Division JP2023123529A (en) 2018-05-31 2023-06-07 Low power, high bandwidth, low latency data bus

Publications (2)

Publication Number Publication Date
JP2021536151A true JP2021536151A (en) 2021-12-23
JP7293257B2 JP7293257B2 (en) 2023-06-19

Family

ID=68697153

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2020565787A Active JP7293257B2 (en) 2018-05-31 2019-05-31 Low power, high bandwidth, low latency data bus
JP2023094095A Pending JP2023123529A (en) 2018-05-31 2023-06-07 Low power, high bandwidth, low latency data bus

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2023094095A Pending JP2023123529A (en) 2018-05-31 2023-06-07 Low power, high bandwidth, low latency data bus

Country Status (3)

Country Link
JP (2) JP7293257B2 (en)
CN (1) CN112154503A (en)
WO (1) WO2019232482A1 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4254211A4 (en) * 2020-11-24 2024-05-01 Panasonic Intellectual Property Management Co., Ltd. Host device, slave device, and data transfer system
CN113985837B (en) * 2021-09-27 2023-10-13 上海钧正网络科技有限公司 Bus control method, device and equipment
WO2023121489A1 (en) * 2021-12-23 2023-06-29 Intel Corporation Control and memory accesses using streaming audio
CN115022212B (en) * 2022-06-01 2024-04-16 海光信息技术股份有限公司 Bandwidth monitoring method, device, circuit and electronic equipment

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0823354A (en) * 1994-07-06 1996-01-23 Hitachi Ltd Signal input output device
JP2006005931A (en) * 2004-06-14 2006-01-05 Samsung Electronics Co Ltd System having structure for stably terminating a pair of differential signals transmitted via a pair of transmission lines
JP2006527549A (en) * 2003-06-13 2006-11-30 インターナショナル・ビジネス・マシーンズ・コーポレーション Serial bus interface and method for interconnecting time-dependent digital devices in series
JP2010532604A (en) * 2007-07-04 2010-10-07 エアバス・オペレーションズ・ゲーエムベーハー Deterministic communication system
JP2011199720A (en) * 2010-03-23 2011-10-06 Renesas Electronics Corp Clock/data recovery circuit, and transmitting/receiving semiconductor integrated circuit
JP2011244388A (en) * 2010-05-21 2011-12-01 Sharp Corp Wired communication system and terminator used for the same
US20150085864A1 (en) * 2010-09-27 2015-03-26 Robert Bosch Gmbh Method for transmitting data
JP2016517581A (en) * 2013-03-13 2016-06-16 アティエヴァ、インコーポレイテッド Fault tolerant loop for communication bus
JP2016526326A (en) * 2013-05-16 2016-09-01 ラティス セミコンダクタ コーポレーションLattice Semiconductor Corporation Coding guardband data for transmission over a communication interface using minimum number of transitions differential signaling (TMDS) coding
CN106850368A (en) * 2016-12-26 2017-06-13 华东理工大学 A kind of control method of repeater and its data transfer

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4744077A (en) * 1986-12-05 1988-05-10 Ncr Corporation Link flow control in time slot protocol data transmission of a data processing network
US6947409B2 (en) * 2003-03-17 2005-09-20 Sony Corporation Bandwidth management of virtual networks on a shared network
DE102005004464A1 (en) * 2005-01-31 2006-10-26 Robert Bosch Gmbh Method for storing messages in a message memory and message memory
US7809872B2 (en) * 2007-12-14 2010-10-05 Infineon Technologies Ag Master and slave device for communicating on a communication link with limited resource
US8775707B2 (en) * 2010-12-02 2014-07-08 Blackberry Limited Single wire bus system
WO2014002716A1 (en) * 2012-06-26 2014-01-03 ソニー株式会社 Information processing device, information processing method, and program
JP5908167B2 (en) * 2013-05-02 2016-04-26 三菱電機株式会社 Master station device, slave station device, optical communication system, control device, and bandwidth allocation method
US9952993B2 (en) * 2014-09-26 2018-04-24 Intel Corporation Single-wire communication with adaptive start-bit condition
US10013229B2 (en) * 2015-04-30 2018-07-03 Intel Corporation Signal synchronization and latency jitter compensation for audio transmission systems

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0823354A (en) * 1994-07-06 1996-01-23 Hitachi Ltd Signal input output device
JP2006527549A (en) * 2003-06-13 2006-11-30 インターナショナル・ビジネス・マシーンズ・コーポレーション Serial bus interface and method for interconnecting time-dependent digital devices in series
JP2006005931A (en) * 2004-06-14 2006-01-05 Samsung Electronics Co Ltd System having structure for stably terminating a pair of differential signals transmitted via a pair of transmission lines
JP2010532604A (en) * 2007-07-04 2010-10-07 エアバス・オペレーションズ・ゲーエムベーハー Deterministic communication system
JP2011199720A (en) * 2010-03-23 2011-10-06 Renesas Electronics Corp Clock/data recovery circuit, and transmitting/receiving semiconductor integrated circuit
JP2011244388A (en) * 2010-05-21 2011-12-01 Sharp Corp Wired communication system and terminator used for the same
US20150085864A1 (en) * 2010-09-27 2015-03-26 Robert Bosch Gmbh Method for transmitting data
JP2016517581A (en) * 2013-03-13 2016-06-16 アティエヴァ、インコーポレイテッド Fault tolerant loop for communication bus
JP2016526326A (en) * 2013-05-16 2016-09-01 ラティス セミコンダクタ コーポレーションLattice Semiconductor Corporation Coding guardband data for transmission over a communication interface using minimum number of transitions differential signaling (TMDS) coding
CN106850368A (en) * 2016-12-26 2017-06-13 华东理工大学 A kind of control method of repeater and its data transfer

Also Published As

Publication number Publication date
CN112154503A (en) 2020-12-29
JP2023123529A (en) 2023-09-05
WO2019232482A1 (en) 2019-12-05
JP7293257B2 (en) 2023-06-19

Similar Documents

Publication Publication Date Title
US11114112B2 (en) Low power, high bandwidth, low latency data bus
JP7293257B2 (en) Low power, high bandwidth, low latency data bus
US10734012B2 (en) Low power, high bandwidth, low latency data bus
CA2874891C (en) A multiformat digital audio interface
CA2874899C (en) Universal synchronization engine based on probabilistic methods for guarantee of lock in multiformat audio systems
TW201719437A (en) Protocol-assisted advanced low-power mode
JP6957549B2 (en) Dynamic hysteresis circuit
US10027514B2 (en) Transmitting signals between modules
CN107852320B (en) Apparatus and method for transmitting and receiving data over a half-duplex wired communication link
US11882420B2 (en) Audio signal synchronization control device and audio device
Xiangyang Implementation and Transmission Error Handling of Multi-channel LVDS

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20210526

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210708

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210708

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220725

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220816

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20221111

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230106

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230607

R150 Certificate of patent or registration of utility model

Ref document number: 7293257

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150