IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ グーグル インコーポレイテッドの特許一覧

(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-02-17
(45)【発行日】2025-02-26
(54)【発明の名称】低パワー、高帯域幅、低遅延データバス
(51)【国際特許分類】
   H04L 7/00 20060101AFI20250218BHJP
   H04L 25/02 20060101ALI20250218BHJP
   G06F 3/00 20060101ALI20250218BHJP
【FI】
H04L7/00 160
H04L25/02 V
G06F3/00 R
【請求項の数】 16
【外国語出願】
(21)【出願番号】P 2023094095
(22)【出願日】2023-06-07
(62)【分割の表示】P 2020565787の分割
【原出願日】2019-05-31
(65)【公開番号】P2023123529
(43)【公開日】2023-09-05
【審査請求日】2023-07-06
(31)【優先権主張番号】62/678,993
(32)【優先日】2018-05-31
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】62/721,412
(32)【優先日】2018-08-22
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】16/125,617
(32)【優先日】2018-09-07
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】502208397
【氏名又は名称】グーグル エルエルシー
【氏名又は名称原語表記】Google LLC
【住所又は居所原語表記】1600 Amphitheatre Parkway 94043 Mountain View, CA U.S.A.
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】ポールセン、イェンス・クリスチャン
【審査官】阿部 弘
(56)【参考文献】
【文献】国際公開第2016/182802(WO,A1)
【文献】特開2001-333115(JP,A)
【文献】国際公開第2017/034769(WO,A1)
【文献】特開2006-005931(JP,A)
【文献】特開平01-012633(JP,A)
【文献】特開平08-023354(JP,A)
【文献】米国特許出願公開第2018/0018296(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 7/00
H04L 25/02
G06F 3/00
(57)【特許請求の範囲】
【請求項1】
システムであって、
第1の通信プロトコルに従ってデジタル音声データ通信を行うための第1のインターフェイスに結合されたデバイスコントローラを備え、前記デバイスコントローラは、第2の通信プロトコルに従ってマルチドロップバスを制御するためのマスターバスコントローラを含み、
前記マルチドロップバスに結合され、前記第2の通信プロトコルに従って前記デバイスコントローラを用いてデジタル音声データ通信を受信するように構成された第1のスレーブデバイスを備え、
前記マルチドロップバスの各伝送ラインは、前記伝送ラインの一端に取り付けられた前記第1のスレーブデバイスおよび前記伝送ラインの他端に取り付けられた前記デバイスコントローラを用いて終端され、
前記マルチドロップバス上のシグナリングのために必要な電力は、容量型または誘導型降下レギュレータによって得られ、これにより、前記レギュレータにおける電力損失を最小化する、システム。
【請求項2】
システムであって、
第1の通信プロトコルに従ってデジタル音声データ通信を行うための第1のインターフェイスに結合されたデバイスコントローラを備え、前記デバイスコントローラは、第2の通信プロトコルに従ってマルチドロップバスを制御するためのマスターバスコントローラを含み、
前記マルチドロップバスに結合され、前記第2の通信プロトコルに従って前記デバイスコントローラを用いてデジタル音声データ通信を受信するように構成された第1のスレーブデバイスを備え、
前記マルチドロップバスの各伝送ラインは、前記伝送ラインの一端に取り付けられた前記第1のスレーブデバイスおよび前記伝送ラインの他端に取り付けられた前記デバイスコントローラを用いて終端され、
コンポーネント間の遅延は、前記マルチドロップバスを既知の値に充電すること、測定中に前記マルチドロップバスがフローティングであり且つ終端されないことを保証するように、前記伝送ラインの始端と終端に位置するドライバを無効にすること、前記デバイスコントローラが前記マルチドロップバス上でレベルを変更するのを待つこと、および遷移遅延を測定することによって、測定され、
前記伝送ラインの両端の前記ドライバは、複数のドライバが現在のバス状態を変更することを可能にすることにより、前記マルチドロップバスに接続されたコンポーネントを計数する間に無効化され、
前記現在のバス状態は、コントローラによって設定され、
1つ以上のデバイスは、デバイスの計数を可能にする所定の時間ウィンドウにおいて、前記伝送ラインを反対の値に変更することができる、システム。
【請求項3】
システムであって、
第1の通信プロトコルに従ってデジタル音声データ通信を行うための第1のインターフェイスに結合されたデバイスコントローラを備え、前記デバイスコントローラは、第2の通信プロトコルに従ってマルチドロップバスを制御するためのマスターバスコントローラを含み、
前記マルチドロップバスに結合され、前記第2の通信プロトコルに従って前記デバイスコントローラを用いてデジタル音声データ通信を受信するように構成された第1のスレーブデバイスを備え、
前記マルチドロップバスの各伝送ラインは、前記伝送ラインの一端に取り付けられた前記第1のスレーブデバイスおよび前記伝送ラインの他端に取り付けられた前記デバイスコントローラを用いて終端され、
各データポートまたは各同期信号に続くデータは、高周波搬送波によって変調され、音声システムにおいて干渉を低減するための音声帯域の電流変調を低減する、システム。
【請求項4】
システムであって、
第1の通信プロトコルに従ってデジタル音声データ通信を行うための第1のインターフェイスに結合されたデバイスコントローラを備え、前記デバイスコントローラは、第2の通信プロトコルに従ってマルチドロップバスを制御するためのマスターバスコントローラを含み、
前記マルチドロップバスに結合され、前記第2の通信プロトコルに従って前記デバイスコントローラを用いてデジタル音声データ通信を受信するように構成された第1のスレーブデバイスを備え、
前記マルチドロップバスの各伝送ラインは、前記伝送ラインの一端に取り付けられた前記第1のスレーブデバイスおよび前記伝送ラインの他端に取り付けられた前記デバイスコントローラを用いて終端され、
位相同期ループ(PLL)または遅延同期ループ(DLL)が、前記バス上の別のデバイスによって提供された計時情報に基づいてタイミング情報を提供し、
タイムゲートを用いて、クロック遷移の周囲に位置する時間ウィンドウに基づいて前記PLLまたはDLLを別のデバイスに同期することによって、データトラフィックを無視し、前記データトラフィックがタイミングロックの取得および維持を妨げることを防止する、システム。
【請求項5】
前記第2の通信プロトコルは、固定フレームフォーマットを用いて複数の音声データレートをサポートする、請求項1~4のいずれか1項に記載のシステム。
【請求項6】
前記第1のスレーブデバイスと前記マルチドロップバスに接続された第2のスレーブデバイスは、送信メッセージが一連の順方向または逆方向伝搬波として送信され、前記終端された伝送ラインを使用したマルチドロップ高速双方向通信を可能にするように時間的に合わせられる、請求項1~5のいずれか1項に記載のシステム。
【請求項7】
前記第2の通信プロトコルは、差動シグナリングを用いて電磁干渉を低減し、
第1のラインが論理ハイに終端され、第2のラインが論理ローに終端され、コモンモード干渉を低減する、請求項1~6のいずれか1項に記載のシステム。
【請求項8】
差動シグナリングを用いて電磁干渉を低減し、
各伝送ラインの終端は、データが転送されておらず且つ前記マルチドロップバスがアイドル状態であるときに、終端レベルに従って出力ドライバをハイレベルとローレベルのいずれかに設定することによって処理され、これにより、伝送端点による消費電力を低減する、請求項1~7のいずれか1項に記載のシステム。
【請求項9】
各サイクルの一部において、要求された最小のシグナリングレートより大きいシグナリングレートを使用し、前記マルチドロップバスをアイドル状態にすることによって、電力消費を低減し、これにより、終端の電力損失を低減する、請求項1~8のいずれか1項に記載のシステム。
【請求項10】
前記デバイスコントローラは、前記第1の通信プロトコルに従って通信を同期させるための第1のクロック信号と、前記第2の通信プロトコルに従って通信を同期させるための第2のクロック信号と、音声データ処理に使用される第3のクロック信号とを提供する位相同期ループをさらに含む、請求項1~9のいずれか1項に記載のシステム。
【請求項11】
前記第2の通信プロトコルは、異なる通信帯域幅をサポートする、請求項1~10のいずれか1項に記載のシステム。
【請求項12】
前記第2の通信プロトコルは、固定フレーム構造を用いて異なる通信帯域幅をサポートする、請求項1~11のいずれか1項に記載のシステム。
【請求項13】
前記伝送ラインの両端の終端は、デバイストランスミッタの起動中に一時的に無効化され、消費電力を低減する、請求項1~12のいずれか1項に記載のシステム。
【請求項14】
方法であって、
デバイスコントローラが、第1の通信プロトコルに従って、第1のインターフェイスを介してデジタル音声データを送受信することと、
前記デバイスコントローラが、第2の通信プロトコルに従って、複数の伝送ラインを含むマルチドロップバスを制御することと、
前記マルチドロップバスに結合された第1のスレーブデバイスが、前記第2の通信プロトコルに従って前記デバイスコントローラを用いて前記デジタル音声データを受信することとを含み、前記伝送ラインは、前記デバイスコントローラと前記第1のスレーブデバイスで終端し、
位相同期ループまたは遅延同期ループを用いて、前記第1の通信プロトコルに従って通信を同期させるための第1のクロック信号と、前記第2の通信プロトコルに従って通信を同期させるための第2のクロック信号と、音声データ処理に使用される第3のクロック信号とを生成し、
前記位相同期ループまたは前記遅延同期ループは、オンクロック遷移を同期し、データトラフィックを無視するために使用される入力時間ゲートを含む、方法。
【請求項15】
前記第2の通信プロトコルは、固定フレームフォーマットを用いて複数の音声データレートをサポートする、請求項14に記載の方法。
【請求項16】
前記デバイスコントローラ、前記第1のスレーブデバイス、および第2のスレーブデバイスは、音声ヘッドセットを含む、請求項14または15に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
この出願は、2018年5月31日に出願された米国仮特許出願第62/678,99
3号及び2018年8月22日に出願された米国仮特許出願第62/721,412の優
先権及び利益を主張するものであり、それらの出願のそれぞれは、参照することにより、
その全体がそのまま本願に組み込まれる。
【0002】
この出願は、2018年9月7日に出願された米国特許出願第16/125,617号
の部分継続出願であり、当該出願は、参照することにより、その全体がそのまま本願に組
み込まれる。
【0003】
本願は、全体としてはデータ通信に関しており、より具体的には、例えば、デバイス間
のデジタルデータの通信のためのシステム及び方法に関する。
【背景技術】
【0004】
電子デバイスの間でデジタルデータを送受信するための様々なインターフェースが本技
術では知られている。しかしながら、既存のインターフェースは、多くの近代的なシステ
ムの全ての要求に合致しているわけではない。信頼性と良好な信号品質を維持し、低コス
ト、低電力デバイスへの要求に合致しながら、様々な接続デバイスのために高帯域幅の通
信を可能にすることが望ましい場合がしばしばある。例えば、動的ノイズキャンセレーシ
ョン(ANC)ヘッドセットは、複雑で高価な装備を要求することがあり、ANCヘッド
セットとホストデバイスの間で高帯域幅の通信を行うことは、ホストデバイス上でノイズ
キャンセレーション信号を処理する等のある種のアプリケーションにとって望ましい場合
がある。
【0005】
いくつかのアプローチでは、高帯域幅の通信は、レシーバで終端するデジタル通信リン
クを介して行われる。これらのアプローチは、ある種の構成について満足のいく信号イン
テグリティを提供することがあるが、同時に低電力消費の要求がある場合には、レシーバ
終端における固定的な電力消費は好ましくない場合がある。更に、これらのアプローチの
多くは、低遅延データ転送のために最適化されていない。なぜなら、データ通信は、デジ
タル通信リンクを介して転送するのにサンプル期間を丸々要することがあるからである。
一部のシステムには、しばしば、複数デバイスへの接続をサポートしたり、特定の長さの
要求(例えば、1~2メートル)を満たす物理的リンクをサポートしたりするような追加
の要求がある。追加の要求は、接続デバイス間の通信、異なるデバイス種類をサポートし
、適合することへの柔軟性、及び、データがシリアル化されたフォーマットで輸送される
システムにおいてバルクデータ転送を含む様々なデータ転送実装をサポートすることを含
むことがある。
【0006】
上記の点からみて、本技術においては、デジタルデータ通信システム及び方法の向上に
対する継続した要求がある。
【発明の概要】
【0007】
本開示は、物理的に接続されたデバイス間でのデジタルデータ通信の向上という本技術
における要求に対応するシステム及び方法を提供する。様々な実施形態において、データ
バスシステム及び方法は、第1通信プロトコルに従ってデジタル音声データ通信を行うた
めの第1インターフェースに接続されたデバイスコントローラを備えている。デバイスコ
ントローラは、第2通信プロトコルに従ってマルチドロップバスを制御するマスターバス
コントローラを備えている。第1スレーブデバイスは、マルチドロップバスに接続されて
おり、第2通信プロトコルに従ってデバイスコントローラとのデジタル音声データ通信を
送受信するように構成されている。各伝送線路は該伝送線路の一端に取り付けられたデバ
イスを用い、他端に取り付けられた他のデバイスによって終端されている。中間シグナリ
ングノードを含むことによるインピーダンス不整合による反射は、マルチドロップデバイ
スへの対応及び高速な信号伝送が可能であるように制御される。第2通信プロトコルは、
固定のフレームフォーマットを用いながら複数の音声データレートをサポートしていても
よい。
【0008】
いくつかの実施形態では、第1スレーブデバイスとバスに接続された第2スレーブデバ
イスとは、送信されたメッセージが、一連の前進又は後進伝搬波として送られるようにタ
イミングが取られ、これにより、終端された伝送線路を用いたマルチドロップ高速双方向
通信が可能になる。一実施形態では、差動シグナリングが通信に用いられ、コモンモード
干渉を低減するために、一の線路が論理ハイに終端され、一の線路が論理ローに終端され
る。一実施形態では、差動シグナリングがEMIを低減するために用いられ、データが伝
送されずバスが空いているときに、終端レベルに従ってハイレベルとローレベルのうちの
一に出力ドライバを設定することによって各伝送線路の終端が処理される。これにより、
伝送終点による電力消費の低減が可能になる。
【0009】
いくつかの実施形態では、伝送線路上の中間ノードが、伝搬波に短い中断を生じさせる
ように、かつ、スタブ及び/又は伝送線路の途絶が信号伝送に用いられる最短波長よりも
極めて短い(例えば、最短波長の1/50未満)という要請と共に、伝送線路に接続され
る。出力終端レベルが最終的な出力状態レベル(休止レベル)に等しいという条件で、電
力消費が、最小の要求信号伝送レートよりも高い信号伝送レートを用い、各クロックサイ
クル又は各フレームの一部でバスを休止しておくことで低減され、これにより、終端にお
ける電力ロスを低減する。信号伝送のために必要な電力が容量型又は誘導型降下レギュレ
ータによって得られ、これにより、レギュレータにおける電力ロスを最小にしてもよい。
バスにおける伝送電圧を低減することにより、電力消費が更に限定されることがあり、差
動シグナリングが、システムが外部ノイズ及びEMIに対して頑強でありながら低電圧信
号伝送を可能にするように用いられてもよい。
【0010】
いくつかの実施形態では、コンポーネント間の遅延が、バスを既知の値にチャージし、
バスがフローティングになり測定の間に終端されないことを保証するために、伝送線路の
始点及び終点にあるドライバを無効にし、デバイスがバスにおけるレベルを変化させるの
を待ち、遷移遅延を測定することで測定される。伝送線路の各端のドライバは、複数のド
ライバに現在のバス状態を変更することを許可することにより、バスに接続されたコンポ
ーネントの計数の間、無効にされてもよい。現在のバス状態は、コントローラによって設
定されてもよく、デバイスの計数を許可する所定の時間ウィンドウにおいて、一以上のデ
バイスが反対の値に伝送線路を変化することがある。デバイスコントローラは、更に、第
1通信プロトコルによる通信を同期するための第1クロック信号と、第2通信プロトコル
による通信を同期するための第2クロック信号と、音声データ処理に用いられる第3クロ
ック信号とを提供する位相同期ループ(PLL)又は遅延同期ループを更に備えていても
よい。
【0011】
様々な実施形態において、第2通信プロトコルは、固定のフレーム構造を用いながら異
なる通信帯域幅をサポートしている。いくつかの実施形態では、データポートまたは各同
期信号に続くデータが高周波搬送波又は擬似乱数生成器によって変調され、これにより、
音声システムにおける干渉の低減のために音声帯域幅における電流変調を低減する。デバ
イスコントローラ、第1スレーブデバイス及び第2スレーブデバイスは、音声ヘッドセッ
ト又は他の音声聴取装置を備えていてもよい。いくつかの実施形態では、電力消費の低減
のために、トランスミッタの活性化の間、伝送線路の端における終端が一時的に無効にさ
れる。
【0012】
様々な実施形態において、方法が、第1通信プロトコルに従って第1インターフェース
を通じてデジタル音声データを送受信することと、第2通信プロトコルに従ってデバイス
コントローラを用いてマルチドロップバスを制御することと、マルチドロップバスに接続
された第1スレーブデバイスを用いることと、第2通信プロトコルに従ってデバイスコン
トローラを用いてデジタル音声データを送受信することと、任意の信号の終端を可能にす
るために、伝送線路の各端のトランスミッタを既知の状態に設定することとを含む。いく
つかの実施形態では、第2通信プロトコルは、固定のフレームフォーマットを用いながら
複数の音声データレートをサポートしていてもよい。
【0013】
当該方法は、更に、位相同期又は遅延同期ループを用いて、第1通信プロトコルに従っ
た通信を同期するための第1クロック信号と、第2通信プロトコルに従った通信を同期す
るための第2クロック信号と、音声データ処理に用いられる第3クロック信号とを、生成
することを含んでいてもよい。いくつかの実施形態では、第2通信プロトコルが、固定の
フレーム構造を用いながら異なる通信帯域幅をサポートしている。スペクトル拡散によっ
て放射されるEMIを低減するためにPLL又はDLLにディザが加えられてもよい。バ
ス上を伝送されるデータは、音声帯域におけるスペクトル成分を低減するために、送信時
にスクランブルされ、受信時にデスクランブルされてもよい。
【0014】
発明の範囲は、特許請求の範囲によって規定され、特許請求の記載は、参照することで
本項に組み込まれる。発明の実施形態のより完全な理解は、以下に記載した、一以上の実
施形態の詳細な説明を考慮することで、その追加の利点の実現と共に当業者に与えられる
であろう。以下では、最初に簡潔に説明する図面の添付シートが参照される。
【図面の簡単な説明】
【0015】
図1A図1Aは、一以上の実施形態による、例示的なバスインターフェースシステムである。
【0016】
図1B図1Bは、一以上の実施形態による例示的なヘッドセットを図示している。
図1C図1Cは、一以上の実施形態による例示的なヘッドセットを図示している。
【0017】
図2A図2Aは、一以上の実施形態による例示的なバスインターフェースシステムである。
【0018】
図2B図2Bは、一以上の実施形態による例示的なヘッドセットを図示している。
【0019】
図3図3は、一以上の実施形態による例示的なタイミングシーケンスを図示している。
【0020】
図4図4は、一以上の実施形態による、時間ゲーティングが行われる例示的な位相同期ループ(PLL)を図示している。
【0021】
図5A図5Aは、一以上の実施形態による例示的なクロックソルーションを図示している。
図5B図5Bは、一以上の実施形態による例示的なクロックソルーションを図示している。
【0022】
図6A図6Aは、一以上の実施形態による例示的なクロックソルーションを図示している。
図6B図6Bは、一以上の実施形態による例示的なクロックソルーションを図示している。
【0023】
図7図7は、一以上の実施形態による例示的なクロックソルーションを図示している。
【0024】
図8A図8Aは、一以上の実施形態による例示的なクロックソルーションを図示している。
図8B図8Bは、一以上の実施形態による例示的なクロックソルーションを図示している。
【0025】
図9A図9Aは、一以上の実施形態による例示的なフレーム構造を図示している。
図9B図9Bは、一以上の実施形態による例示的なフレーム構造を図示している。
図9C図9Cは、一以上の実施形態による例示的なフレーム構造を図示している。
図9D図9Dは、一以上の実施形態による例示的なフレーム構造を図示している。
図9E図9Eは、一以上の実施形態による例示的なフレーム構造を図示している。
図9F図9Fは、一以上の実施形態による例示的なフレーム構造を図示している。
【0026】
図10A図10Aは、一以上の実施形態による、接続されたデバイスの遅延測定のための方法を図示している。
【0027】
図10B図10Bは、一以上の実施形態による、接続されたデバイスの計数のための方法を図示している。
【0028】
図11A図11Aは、一以上の実施形態による例示的な双方向通信配置を図示している。
【0029】
図11B図11Bは、一以上の実施形態による、差動シグナリング、同期、及びデジタルデータ通信の例を図示している。
【0030】
図11C図11Cは、一以上の実施形態による差動シグナリングシステムの例を図示している。
【0031】
図11D図11Dは、一以上の実施形態による差動シグナリングシステムの他の例を図示している。
【0032】
図12図12は、一以上の実施形態による例示的なPLLロックシーケンスを図示している。
【0033】
図13図13は、一以上の実施形態による例示的なPLL同期イネーブル回路である。
【0034】
図14図14は、一以上の実施形態による例示的な同期シグナリングを図示している。
【0035】
図15図15は、一以上の実施形態によるデジタルデータ通信システムの例示的な動作を図示している。
【0036】
図16A図16Aは、一以上の実施形態において用いられ得る例示的なフレーム構造を図示している。
図16B図16Bは、一以上の実施形態において用いられ得る例示的なフレーム構造を図示している。
図16C図16Cは、一以上の実施形態において用いられ得る例示的なフレーム構造を図示している。
【0037】
図17図17は、一以上の実施形態による例示的なフレームを図示している。
【0038】
図18A図18Aは、一以上の実施形態による、バルク転送を含む読み出し及び書き込み動作のための例示的なフレーム構成を図示している。
図18B図18Bは、一以上の実施形態による、バルク転送を含む読み出し及び書き込み動作のための例示的なフレーム構成を図示している。
図18C図18Cは、一以上の実施形態による、バルク転送を含む読み出し及び書き込み動作のための例示的なフレーム構成を図示している。
【0039】
図19図19は、一以上の実施形態による例示的なフレーム同期アルゴリズムを図示している。
【0040】
含まれている図面は、説明のための目的であり、前後関係に応じた音声処理を提供する
ための開示された方法及びシステムのための可能なシステム及び方法の例を提供するのみ
の役割をするものである。これらの図面は、決して、本開示の要旨及び範囲から離れるこ
となく当業者によって開示されたものに対し、形態及び詳細における如何なる変更を制限
するものではない。
【発明を実施するための形態】
【0041】
本開示は、本技術における、電子デバイス間のデジタルデータ通信の向上の要求に対応
する。様々な実施形態において、物理的データリンクを介して接続されたマスターデバイ
ス及び一以上のスレーブデバイスの間で低電力、高帯域幅、マルチドロップ及び/又は低
遅延通信を提供するためのシステム及び方法が開示される。本開示は、低電力消費、高帯
域幅と長いリンク長の組み合わせ、低くより制御された遅延、ポイントツーポイント接続
に加えてマルチドロップトポロジーのサポート、及び、簡単なデバイス間同期を含む、従
来のシステム及び方法に対しての多くの利点を提供する。
【0042】
様々な実施形態において、ビットを早く伝送し、その後、クロックサイクルの残り又は
フレームの期間の残りの間はバスを休止しておくプロセスを通じて、終端されたデバイス
についてさえも低電力が得られる。反対の極性で終端された差動データバスは、低電力動
作及び低電磁妨害(EMI)を容易にする。本開示は、また、終端されていない端を有す
る構成における低電力消費を容易にする。ここで、高周波クロック又はタイミング要素が
、データが1以上の時間単位において受信可能であることを確実にするために用いられ、
これにより、物理システムを変更することなく、高い信号-ノイズ比(SNR)と高いデ
ータレートの間の選択が可能になる。例えば、複数のタイムスロットが、帯域幅と信号イ
ンテグリティの間の折衷を可能にするために各シンボルを規定するために用いられてもよ
い。
【0043】
本開示は、更に、低EMIのためのコモンシグナリングの低減を確保するために、マル
チドロップ差動長線路長バスに、端部トランスミッタを実際の終端として用い、逆の終端
極性を用いる複数のデバイスを設ける。接続デバイスの同期のためのアルゴリズムは、期
待されたパターンに従って変化しないタイムスロットを発見することと、安全な同期のた
めに無効な位置を全てシステマチックに消滅させることとを含む。このようにして、ある
種のシステムの実装は、任意のランダムデータを用いてもなお安全な同期を保証可能にす
る。探索は、単一の同期候補しか残っていないときに最初に終了されるであろうし、よっ
て、如何なるランダムデータも、偽同期を引き起こさない。また、バストラフィックと独
立してメモリモジュール間の転送を容易化するために、バルクデータ転送のためのアルゴ
リズムが提供される。いくつかの実施形態では、EMIの低減が、システムクロックにデ
ィザを加えることで達成される。音声帯域における干渉は、送信の前にデータシンボルを
スクランブルし、(元の値を得るために)受信後に値をデスクランブルすることによって
低減されてもよい。本開示のこれら及び他の特徴及び利点は、下記の開示を参照すること
で理解されるであろう。
【0044】
本明細書には、様々な実施形態が開示されている。一実施形態では、システムが、複数
のタイムスロットを備える通信プロトコルを用いてデジタル通信を行うためのマルチドロ
ップバスに結合されたマスターデバイスと、該マルチドロップバスに結合され、該通信プ
ロトコルに従ってマスターデバイスとのデジタル通信を送受信するように構成された第1
スレーブデバイスとを備えている。タイムスロットの少なくとも一つは、動的に帯域幅及
び/又は信号インテグリティを最適化するために第1スレーブデバイスのための通信設定
を規定するために用いられる。マルチドロップバスは、2つの信号線上で異なる電圧レベ
ルに終端された差動データバスであり、これにより、低電力動作及び低電磁妨害を容易化
する。一態様では、該マルチドロップバスは、端部トランスミッタを用いて複数のスレー
ブデバイスを受信するように構成されたマルチドロップ差動長線路長バスである。必要と
される信号伝送レートよりも高い信号伝送レートで動作し、該マルチドロップバスを各サ
イクルの一部で休止しておくことで、電力消費が低減される。
【0045】
一実施形態では、システムが、更に、期待された固定パターンに従って変化していない
タイムスロットを特定し、安全な同期のために無効な位置を消滅させることを含みながら
、2以上の接続デバイスを同期するように構成されている。該システムは、更に、マルチ
ドロップバスのデジタル通信トラフィックと無関係にバルクデータ転送を容易化するよう
に構成されている。他の態様では、第1スレーブデバイスと該バスに接続された第2スレ
ーブデバイスとが、送信されたメッセージが一連の前進又は後進伝搬波として送られるよ
うにタイミングが取られ、これにより、終端された伝送線路を用いたマルチドロップ高速
双方向通信を可能にする。マルチドロップバス上の中間ノードが、伝搬波に短い中断を生
じさせるようにマルチドロップバスに接続され、中間ノードに起因する伝送線路への途絶
の物理的な長さが、信号伝送に用いられる最短波長よりも短い。
【0046】
いくつかの実施形態では、デバイス間の遅延が、バスを既知の値にチャージし、バスを
フローティングにして測定の間、終端されないようにバスの始点及び終点のドライバを無
効にし、デバイスがバス上のレベルを変化させることを待ち、遷移遅延を測定することに
より測定される。PLL又はDLLが、マスターデバイスと第1スレーブデバイスの間の
ロックを得るために用いられる。システムタイミングが、マスターデバイス及び/又は第
1スレーブデバイスに設けられたフラクショナルPLLから得られ、擬似乱数生成器から
の出力を分数加算器に加えることによりPLLがディザリングされ、これによりEMIを
低減する。一実施形態では、擬似乱数生成器が、一以上のデータポートの出力をスクラン
ブルするように構成され、これにより、出力スペクトルを白色化することでEMIの低減
を可能にする。PLL及び/又はDLLは、PLLがランダムなバストラフィックにロッ
クすることを避けるために、PLLの初期ロックの間に有効にされ、その後、同期情報を
通過させるのみになる時間ゲートを備えていてもよい。
【0047】
様々な実施形態において、方法が、複数のタイムスロットを備える通信プロトコルを用
いたデジタル通信のためのマルチドロップバスに結合されたマスターデバイスを提供する
ことと、第1スレーブデバイスをマルチドロップバスに結合して、該通信プロトコルに従
ってマスターデバイスとのデジタル通信を送受信するように該スレーブデバイスを設定す
ることと、タイムスロットの少なくとも一つを用いて、動的に帯域幅及び/又は信号イン
テグリティを最適化するように第1スレーブデバイスの通信設定を規定することとを含む
。当該方法は、更に、マルチドロップデータバスを逆極性に終端された差動データバスと
して動作させることを含んでいてもよく、これにより、低電力動作及び低電磁妨害を容易
化し、及び/又は期待された固定パターンに従って変化しないタイムスロットを特定し、
安全な同期に無効な位置を消滅させることを含む2以上の接続デバイスの同期を行っても
よい。当該方法のいくつかの実施形態では、第1スレーブデバイスとバスに接続された第
2スレーブデバイスとが、送信されたメッセージが、一連の前進又は後進伝搬波として送
られるようにタイミングが取られ、これにより、終端された伝送線路を用いたマルチドロ
ップ高速双方向通信が可能になる。
【0048】
図1Aを参照して、本開示の一以上の実施形態による、例示的な音声システム100を
説明する。システム100は、ホストデバイス110と少なくとも一の接続デバイス13
0とを備えている。ホストデバイス110は、音声データを接続デバイス130に送信し
又は接続デバイス130から受信するように構成されている任意の電子デバイス、例えば
、スマートフォン、タブレットコンピューター、ラップトップコンピューター、自動車用
音声インターフェース、音声会議システム、音声再生システム又は他の電子デバイスであ
ってもよい。接続デバイス130は、音声データを送信し、受信し、及び/又は処理する
ように構成された1以上の電子デバイスを備えていてもよく、例えば、一以上のマイクロ
ホン、ラウドスピーカー又は音声処理システムを備えていてもよい。本実施形態では、音
声通信を参照して議論されるが、本明細書に記述されているシステム及び方法は、本開示
に従って他の電子デバイス及びデータ種類について実施されてもよいと理解されよう。
【0049】
図示されている実施形態では、ホストデバイス110は、アプリケーションプロセッサ
112と、音声コーデック114と、インターフェースコンポーネント116とを備えて
いる。アプリケーションプロセッサ112は、ホストデバイス110と接続デバイス13
0との間のデジタル音声データ通信を制御する。音声コーデック114は、ホストデバイ
ス110の要求に従って音声入力処理及び/又は音声出力処理を行う。インターフェース
コンポーネント116は、ケーブル120及び互換コネクタを介してホストデバイス11
0と接続デバイス130との間の物理的接続を容易化する。様々な実施形態において、イ
ンターフェースコンポーネント116は、コネクタを受け入れるポートと、それに対応す
る、通信プロトコルを実施するためのインターフェースコントローラとを備えていてもよ
い。本明細書で説明する実施形態では、ユニバーサルシリアルバス(USB)コネクタ及
びインターフェースを説明する。しかしながら、他のケーブル、コネクタ及びプロトコル
が本明細書で説明した実施形態に従って用いられてもよいと理解されよう。
【0050】
一以上の実施形態では、アプリケーションプロセッサ112は、例えば、SoundWire規
格又はUSB規格によって規定されているようなクロック及びデータラインを備える多線
バスプロトコルを用いてホストデバイス110及び接続デバイス130の間の通信を容易
化する。アプリケーションプロセッサ112は、SoundWire又は他のデジタルインターフ
ェースのような音声インターフェースを用いて、マスター-スレーブの関係で音声コーデ
ック114と通信してもよい。音声コーデック114は、当該2つのインターフェースプ
ロトコルの間で音声データを変換しながらアプリケーションプロセッサ112とインター
フェースコンポーネント116との間の通信を容易化する。音声データは、インターフェ
ースコンポーネント116と、ケーブル120上のデータ送信を処理するように構成され
ているデバイスコントローラ140との間で送信される。デバイスコントローラ140は
、更に、接続デバイス130のインターフェースバスを介する、音声コンポーネント14
2及び音声コンポーネント144のような一以上のスレーブデバイスとの通信のためのマ
スターデバイスとして動作し、ユーザインターフェースコンポーネント146を介するユ
ーザ入力の処理のような他のデバイス機能を容易化することに対応している。一実施形態
では、バスラインは、電源バス(VBUS)と、データ送信のための差動対D+、D-と
、接地と、デバイスIDとを備えている。本開示の教示に従って、他のバスライン構成が
用いられてもよいことが当業者には理解されよう。システム100の様々なデバイス及び
コンポーネントの間の通信は、本明細書に開示されているデジタルデータ通信システム及
び方法に従って容易化され得る。
【0051】
図1Bを参照して、図1Aの例示的な接続デバイス130は、ホストデバイス110の
インターフェースコンポーネント116に接続するためのUSBコネクタ152と、コネ
クタ152に収容されたデバイスコントローラと、(例えばボタンのような)ユーザイン
ターフェース157と、デバイスコントローラ152を音声コンポーネント160及び1
70と接続する有線データバス158とを備えるUSBヘッドセット150として実施さ
れ得る。一実施形態では、ヘッドセット150は、動的ノイズキャンセレーション(AN
C)ヘッドセットである。図1Cを参照して、ANCヘッドセットにおける使用のための
音声コンポーネント160、170の例示的な実施形態が図示されている。音声コンポー
ネント160/170は、ヘッドセット150のデータバス158上にあるスレーブデバ
イスとして実装されている。音声コンポーネント160/170のそれぞれは、スレーブ
コンポーネントから音声データを受け取り、1以上のスピーカー186を駆動してユーザ
のために音声データを再生するための音声出力回路182と、一以上のマイクロホン18
4からセンサーデータを受け取り、受け取ったデータをデジタル化し、データバス158
を介してマスターに送信するために、デジタル化した音声データをスレーブに提供するた
めの音声入力回路180とを備えている。
【0052】
接続デバイスの他の実施形態が図2Aに図示されている。接続デバイス230は、コネ
クタ216と、ケーブル220と、デバイスコントローラ240と、ユーザインターフェ
ース246と、音声コンポーネント242、244とを備えている。コネクタ216は、
(例えば、図1Aのインターフェースコンポーネント116のような)ホストデバイスの
インターフェースコンポーネントに結合することに対応している。ケーブル220は、コ
ネクタ216を、ホストデバイスと通信するために用いられる通信プロトコルと接続デバ
イス230のバスプロトコルとの間のインターフェースを提供するデバイスコントローラ
240に結合する。デバイスコントローラ240は、音声コンポーネント242及び音声
コンポーネント244のような一以上のスレーブデバイスを結合する通信バスのマスター
として動作する。ユーザインターフェース246は、デバイスコントローラ240に結合
されて(音量調節やイアフォンセットのミュートのような)ユーザによる調節を提供する
【0053】
図2Bを参照して、図2Aの例示的な接続デバイス230は、ホストデバイス110の
インターフェースコンポーネント116に接続するためのUSBコネクタ252と、US
Bケーブル254と、デバイスコントローラ256と、(例えばボタンのような)ユーザ
インターフェース257と、音声コンポーネント260、270をデバイスコントローラ
256に接続する有線データバス258とを備えるUSBヘッドセット250(例えば、
USBイアフォン)として実装され得る。
【0054】
本開示のシステム及び方法は、長い有線リンク、低電力実装及び高帯域幅通信をサポー
トしている。様々な実施形態において、低デューティサイクルが信号に用いられ、これに
より終端されたリンクに関連する固定的な電力消費が低減される。本開示の様々な態様に
おいて、低デューティサイクルは、シンボル毎をベースとして(例えば、短いシンボルを
用いることにより)、及び/又は、データパケットを送信し、その後速やかにバスを短期
間休止させることで達成される。これらのアプローチの一つの利点は、データパケットが
素早く送信された後でバスを休止させることが可能になるので低遅延リンクがサポートさ
れると共に、該低遅延リンクが少ない電力しか又は全く電力を消費しないことである。一
以上の実施形態では、各受信装置に内部位相同期ループ(PLL)又はDLL(遅延同期
ループ)を組み込んで定期的に送られる同期シンボルに基づいて高速内部クロックを生成
することにより、一層に高いデータレートがサポートされる。シンボルに低デューティサ
イクルを用いることの一つの利点は、中間の伝送レートについて低電力消費が可能になる
ことである。なぜなら、終端されたリンクの使用による固定的な電力消費は、低デューテ
ィサイクルにより低減されるからである。言い換えれば、終端された伝送線路を用いなが
ら高ボーレートが可能なリンクは、低から中速の信号伝送について低電力消費を得るため
に使用されることがある。なぜなら、本明細書に開示されている様々な実施形態の電力消
費は、使用される帯域幅に線形的に増減する(データを受信するために用いられる受信P
LLからの電力消費は一定であろうが、全体の電力割当量の小さな割合にすることができ
る)。このように、本明細書に開示されているデータリンクの実装は、中から低帯域幅を
用いる場合に低電力消費が可能でありながら、なおも、やや高い電力消費を使って大量の
データを転送することもできる。両方の場合において、PLLクロック周波数又はDLL
遅延は、一定であってもよく、システム要求に合わせて変動してもよい。
【0055】
本開示は、更に、従来のシステムでは信号インテグリティを劣悪にするであろう中間ノ
ードでのインピーダンス不整合がある場合でもなお、高品質信号が得られるようにする制
御を中間ノードにおいて提供することで、マルチドロップバス構成をサポートしている。
多くの従来のシステムでは、これは、伝送線路の端において終端することを避け、その代
わりに信号のスルーレートを制御することで解決されているが、このようにすると、反射
を避けることができる最大スルーレートの制約により、システムが低速になる。本明細書
に開示された様々なシステム及び方法は、このような制約を受けない。
【0056】
本明細書に開示されている実施形態は、信号インテグリティの劣化を最小にしながら頑
強で信頼性が高いデータリンクを提供する。いくつかの実施形態では、トランスミッタは
、更に電力消費を低減するために、送信の間、それ自身の並列終端抵抗を無効にしてもよ
い。いくつかの実施形態では、バス伝送線路の各端のトランスミッタは、送信していない
とき出力レベルを固定値に設定することで終端を行ってもよい。この電圧レベルをシステ
ムの固定休止値に設定し、直列出力インピーダンスをバスインピーダンスに整合させる(
即ち、各端の出力トランスミッタが送信していないときに終端として用いられる)ことで
、低電力消費が実現されるであろう(例えば、送信データが無い場合には内部クロックの
生成以外に電力消費が無いなど)。従来のシステムでは、伝送線路におけるインピーダン
スの変化は、送信される信号における反射を引き起こし得る。この事実の結果、従来のシ
ステムは、顕著に送信信号を歪ませることなく伝送線路上の中間ノードに複数のコンポー
ネントを設置することは容易にはできないという注釈に基づく設計の制約に固執している
【0057】
しかしながら、本開示では、関連する最短の波長と比較して比較的短い距離に渡ってし
かインピーダンスの変化が起こらなければ、信号の妨害は非常に少ないであろうし、実用
的なシステムが実施され得ると認識されている。例として、50Ω伝送線路を用いる実験
用システムが、複数の中間ノードを備えていた。中間ノードのそれぞれは、小さなスタブ
(1~2cmの長さ)を備えており、これは、スルーレートを4.7nsから4.8ns
に(又は、約100psの増大)変化させ、各ノードについて約6%振幅を減少させる結
果となった。このように、スルーレートが僅かに増加し、振幅が少し減少しても、信号の
変化は最小であったし、良好なアイダイアグラムが得られたし、頑強なデータ伝送が達成
された。従って、従来の理論では、反射を避けるために伝送線路に沿ったインピーダンス
の変化を禁止するシステム要求につながっていたが、これらの擾乱体の長さが関連する最
高速の信号の波長よりも非常に短い限り、実用的に機能するシステムに有害でないような
小さな強度を有するように、これらの反射は制御可能である。
【0058】
実験用のシステムは、2cmのスタブ長を有していたが、これは、空気中では0.1n
sよりも短い伝送時間に等しく、立ち上がり時間(5ns)よりも非常に短い。この場合
、立ち上がり時間とスタブによる遅延との間の比は50以上であり、システムにおいて最
小の遅延と擾乱しか起こさなかった。もし、遅延が5ns(シールドなしの150cmの
ケーブルに等価)であったなら、システムにおける立ち上がり時間と遅延とは、対比可能
な程度であり、ケーブルは、端が開放されているように見えたであろう。このように、本
明細書に開示されているように寸法が決められた場合には、本開示の一以上のシステムは
、伝送線路の端で適切に終端された非常に高速な信号の伝送を可能にすると同時に複数の
コンポーネントを同じ伝送線路に設けることが可能になり、これにより、なおも高速伝送
を可能にするマルチドロップバスシステムを得るという問題を解決する。更に、前進波又
は後進波が制御されているように信号の伝送のシーケンスのタイミングを取ることにより
、伝送線路上の中間ノードにあり伝搬波を擾乱するアクティブなトランスミッタに関連す
る問題を避けることが可能になる。
【0059】
ここでは、図3を参照しながら、一以上の実施形態によるタイミングシーケンスの例を
説明する。図3は、マスターデバイスと3つのスレーブデバイスの間の情報の伝搬を示し
ている。データ転送の方向に関連するタイミングを最適化することで、より高い帯域幅を
得ることができる。様々な実施形態において、全てのデータパッケージは、それらが吸収
される場所である線端の終端に到達すると消滅する。マスターM1が、伝送線路の端に、
同一の伝送線路上にある複数のスレーブデバイス(S1、S2、S3)と共に設けられて
いるとしよう。スレーブデバイスは、数字1、2、3等でラベル付けされており、各スレ
ーブデバイスは、マスターデバイスから更に離れている。
【0060】
マスターM1から前進伝搬波を送信するとき、マスターM1は、最初にメッセージを送
る(時間A)。その後、すぐ、前進波がちょうどスレーブデバイスS1を通過したとき(
時間C)にスレーブデバイスS1が続き、そして、スレーブデバイスS1からのメッセー
ジの終わりが完結したときに(時間E)、スレーブデバイスS2がその前進伝搬波メッセ
ージを送る。スレーブデバイスS3は、スレーブデバイスS2からのメッセージが完結し
たときに前進伝搬波メッセージを送る。全ての前進伝搬波メッセージが完結し、伝送線路
の他端での終端によって吸収されると、伝送線路にある最後のデバイス(例えば、時間F
におけるスレーブデバイスS3)が、マスターM1に向けて後進伝搬波を送信し始める。
この後進伝搬波に続き、該最後のデバイスからのメッセージがちょうど通過した後、伝送
線路にある最後から二番目のデバイス(例えば、時間GにおけるスレーブデバイスS2)
からの後進伝搬波が送信されるなどする。全ての後進伝搬波メッセージが完結し、マスタ
ーデバイスにおける終端によって吸収されると、マスターM1は、再び、上述のように、
前進伝搬波を用いたメッセージの送信を開始するであろう。
【0061】
いくつかの実施形態では、2つのデバイスは、もし、これらのデバイスが伝送線路の反
対の端に位置しており、自身が送信する波の影響が、測定した波(前進及び後進伝搬波の
重畳)から差し引かれるのであれば、同時にメッセージを送信してもよい。いくつかの実
施形態では、これは、伝送線の中間点に設けられたデバイスについてさえも行われてもよ
い。しかしながら、いくつかの実施形態では、中間点に設けられたデバイスは、一般的に
は、受信と同時に送信すべきではない。なぜなら、これは、前進又は後進伝搬波の反射を
引き起こし得るからである。
【0062】
様々な実施形態において、音声ヘッドセットのような音声デバイスと共に用いられるた
めの通信バスは、高帯域幅及び低電力消費を可能にするために、差動インピーダンス整合
シグナリングを用いたマルチドロップバスを備えている。当該バスは、高制御と音声帯域
幅を有しており、10メートルを超えるまでのリンクをサポートしている。一以上の実施
形態では、全バスリンク長は、2メートル又はそれよりも小さい。図1Aを参照すると、
リンク長は、2つの終端端点ZENDの間の信号線の長さであり、コネクタに集積化され
ることがあるデバイスコントローラ140からユーザインターフェースコンポーネント1
46までのケーブル120の長さ(長さA)、ユーザインターフェースコンポーネント1
46から中間ノードまでの信号線の長さ(長さB1及び長さB2)、及び、中間ノードか
ら終端端点までの信号線の長さ(長さC1、長さC2)を含む。一実施形態では、リンク
は、終端端点からの全長が0~200cmであり、次の範囲を含んでいる:長さA、0~
80cm;長さB、0~60cm;及び長さC、0~60cm。一実施形態では、スタブ
B2及びC2は、信号インテグリティへの影響を最小にするために可能な限り短く維持さ
れるべきである。
【0063】
図2Aを参照して、一実施形態では、USBケーブルの長さは0~200cmであり、
各終端端点とデバイスコントローラ240との間のリンク長は、それぞれ、0~100c
mである。図示されている実施形態では、ヘッドセットの端子端と最も遠いスピーカー又
はマイクロホンの間のリンクは、200cm未満であるが、他の距離も用いられ得る。
【0064】
様々な実施形態において、リンクは、標準のクロックレート、例えば、12.288M
Hz及び19.200MHzをサポートしており、これにより、標準的な遠隔通信及び音
声システムとの互換性がある。一実施形態では、12.288MHzの動作モードにおい
ては、信号伝搬の方向を切り替えるときのターンアラウンド遅延を増加することにより、
10mの結合距離がサポートされる。
【0065】
様々な実施形態において、PLLのロックイン範囲が狭く、各同期シンボルの間に一定
数のビットを維持することが望ましい。更に、様々な実施形態において、複数のクロック
システムと48kHzの互換性を維持することが望ましい。
本開示は、簡単で頑強な、スレーブデバイスとマスターデバイスの間の初期的な同期を提
供し、更に、様々な実施形態では、一定のフレームサイズを用いる。一定のフレームサイ
ズの使用は、複数のクロックシステムとの互換性を確保するために複数のフレームサイズ
を可能にするSoundWire及び類似のプロトコルとは対照的である。一以上の実施形態では
、異なるサンプリング周波数を用いる複数の音声ポートのような複数のソース間での同期
を維持するために、一以上のビーコンビットがフレームにおいて信号として送られる。
【0066】
本開示の一以上の実施形態による例示的な動作モードが、下のテーブルに図示されてい
る:
【表1】
【0067】
本明細書に開示されたシステム及び方法は、エネルギー効率が高い設計であり、フレー
ムサイズに干渉する同期シンボルに関する問題のいくつかを解決し、同期カラムをコマン
ドに混ぜることで効率的な帯域幅使用手法を含み、簡単な刻時手法を有し、単一のクロッ
ク源を用い、最適な信号インテグリティのための遅延の精密な調整を可能にし、12.2
88、19.200、及び12.000MHzのシステムをサポートし、広い帯域でのP
LL追尾が要求されておらず(即ち、PLLが比較的狭いロックイン範囲しかサポートす
る必要がない)、複数のクロックシステムをサポートするための可変のデータフォーマッ
トでも一定のフレームサイズが使用可能であり、データ受信の間、アイダイアグラムの最
適化のためのサンプル間隔の細かい段階化を用いたスレーブ遅延の正確な測定を含む、追
加の利点を提供する。様々な実施形態において、例えば、一定のフレーム長を維持しなが
ら、マルチドロップバスが、遠隔通信、USB、音声動作モードのような複数のクロック
システムに用いられ得る。場合によっては、768kHzのような低い同期周波数が、よ
り長いバス径のために用いられてもよい。
【0068】
マスターが同期シンボル(典型的には、0から1への遷移)を完了した後のタイムスロ
ットがコマンドの信号伝送に用いられ得るように、又は、このタイムスロットを未駆動に
しておき、複数のデバイスが電流レベルを変更することを許容するが(ワイヤード-オア
構成と同様に)電流レベルの駆動を許容しないようにすることにより、複数のデバイスが
同じタイムスロットに応答することを許容するために、同期シンボルが、スレーブ遅延の
注意深いタイミング取りによってコマンドの信号伝送にマージされてもよい。
【0069】
クロックのサポート
前に議論したように、従来のバストポロジーが遭遇する一つの問題は、所望の基本周波
数を得るために必要とされる逓倍器又は分周器を含む、異なるクロック周波数へのサポー
トに関連している。一つの例として、48kHzは、19.200MHzを400(4×
5×5)で分周する、又は、12.288MHzを256(4×4×4×4)で分周する
ことにより得ることができる。本明細書に開示された様々な実施形態において、バスで伝
送されるコマンドは、音声フローを妨げない。一以上の実施形態では、コマンドは、音声
データと同じケイデンス(又は、その約数)で発行される。いくつかの実施形態では、デ
ータラインにクロックを組み込んで、これにより信号線と電力消費を節約するためのPL
L又はDLLクロック同期の制約がある。差動シグナリングを用いることで、電磁妨害(
EMI)を制約可能である。
【0070】
一実施形態では、付加ビットを追加して通信フレームに同期とコマンドのための余地を
与えることを含むソリューションが提供される。当該システムは、様々なクロック周波数
をサポート可能であり、フレーム構造は、長いバス径の制約が与えられた帯域幅の使用に
関して最適化され得る。本実施形態の構造は、デコードに対して確定的で簡単であり、例
えば、各同期フレーム間のクロックパルスの数を一定にする等、正確なクロック周波数を
特定するために複雑なアナログ回路を必要としない。
【0071】
SoundWireのような既存のシステムは、例えば、全部で152の組み合わせに対して8
の列サイズと19の可能な行の値のような、様々な既定のフレームフォーマットを含んで
いる。一つの難題は、それぞれが異なる逓倍器を有しているので(19200/48=4
00及び12288/48=256)、特別なアナログシステムを必要とせずに12.2
88MHzと19.200MHzの両方の動作をサポートするシステムを設計することで
ある。本明細書に開示された様々な実施形態では、12.288MHz、19.200M
Hzの両方、そして、12.000MHzのシステムでさえもサポート可能な単一フレー
ムサイズが使用され得る。
【0072】
本明細書に開示されたPLL及び刻時ソルーションは、従来のシステムに関連する様々
な問題を解決する。終端されていない伝送線路がある場合、反射が存在し、これは信号品
質を阻害することがある。一つのソルーションは、データ送信を低速にすることである。
しかしながら、多くのシステムでは高速送信が求められ、よって、所望でない反射を消滅
するために終端された信号線が好まれる。(各シンボルに対して、または、各サイクル/
ラインの終わりの休止スペースとして)データに対して高速なクロック速度と低いデュー
ティサイクルを用いることにより、送信ビット当たりの固定的な電力消費を低減し、これ
により、中程度の速度のリンクについて低減された電力消費を得ることができる。
【0073】
2つのデバイスしかない場合には、交差するトラフィックが無いため、デバイス間の同
期は簡単になる。更に、この2つのデバイスは伝送線路の端に位置しているから半電圧を
被ることはないであろうから、このようなシステムは、各端に終端が必要でない場合があ
る。複数のデバイスを用いる場合、スレーブデバイスがマスターデバイスとのロックを失
う可能性がある。一つの解決は、バスを再起動することであるが、システムがある期間音
声を失うので、それは多くの実装では望ましくない。本開示の様々な実施形態は、バス上
の他のデバイスが動作を継続している間にクロック同期を解決することで同期を失ったス
レーブデバイスの問題に対処する。
【0074】
図4を参照して、ここでは、図1Aのデバイスコントローラ140に含まれることがあ
る例示的な位相同期ループ(PLL)300と、図2Aのデバイスコントローラ240と
図1Aのスレーブデバイス142、144と、図2Aの242、244を説明する。P
LL300は、複数のスレーブデバイスからの、主同期信号と時間多重化された信号が存
在しても当該回路がロックを維持することを可能にする。
【0075】
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個
のタイムスロットができ、これは、高解像度に関する簡単な解決法を与える。
【0076】
様々な実施形態において、時間ゲート302が初期の起動の間、常に有効にされ、その
後は、マスターデバイスから参照同期パルスを受け取っている間のみ有効にされる。これ
は、複数のスレーブデバイスもバス上で信号伝送を行い、これらが時間においてマスター
とずれている場合でも、当該回路をマスターにロックさせることを可能にする。更に、も
し、PLL/DLLがマスター同期とのロックを失っても、デバイスは、出力ドライバを
無効にしてバス衝突を避け、同期パルスの広範囲の探索を再び有効にするであろう。いく
つかの実施形態では、(例えば十分に狭い時間ウィンドウを用いることで)時間ゲートを
位相検出器として用いることにより、位相検出器を全く除去し得る。これは、タイミング
ジッタを低減するために用いられ得る(時間ゲートは、分周器を介するVCOからの出力
により、なおも制御されるであろう)。いくつかの実施形態では、位相検出器は、周波数
と位相の両方の差に鋭敏であり、これにより正しい状態を初期的に安全に得ることを確実
にするように、位相-周波数タイプ(タイプIII-IV位相検出器)のものであろう。
【0077】
ここでは、本開示の実施形態と共に使用するための例示的なクロック分周ソリューショ
ンを説明する。一実施形態では、図5A図5Bに図示されているように、あるクロック
ソリューションは、音声入力及び出力処理に用いられる音声クロック402と、ホストデ
バイスと接続デバイスの間のUSB通信に用いられるUSBクロック404と、本開示の
低遅延データバスにおいて使用するためのデータバス及びDSPクロック406の3つの
同期クロック信号を生成する周波数同期ループ(FLL)400の実装である。USBプ
ロトコルに存在する同期パルスが、タイミング参照として用いられてもよい。
【0078】
図示されている実施形態では、同期検出器410がFLL400の入力に結合されてい
る。同期検出器410は、適切なバス通信を可能にするようにクロック信号がシステムク
ロック(USBクロック参照)と同期しているかを判定する。もし、同期シンボルが同期
から外れて到達する場合、同期検出器410は、FLL400に、クロックサイクルをマ
スタークロックと同期させるようにクロックサイクルを修正させるであろう。FLL40
0は、図示されているように、デジタルフィルタ及び予測器412と、デルタ-シグマD
ACのようなデジタル-アナログコンバータ(DAC)410と、電圧制御発振器(VC
O)417と、分周器424と、周波数カウンタ418と、結果を参照周波数408とを
比較する減算器ブロック414とを備えて実装され得る。図示されている他の態様は、参
照周波数整数値48384(符号408参照)を用いることであり、参照周波数整数値は
、分周器420、分周器422、及び、分数分周器426を用いてFLL400に所望の
分周周波数を生成させるために用いられ得る。クロック信号を分数値で分周するために用
いられ得る分数分周器430の実施形態が、図5Bに図示されている。分数分周器430
は、位相加算器432と分周器434とを用いて実装されている。ここでは、ある位相値
が各クロックサイクルの位相和に加算され、現在の位相和が、ある最大位相値を超えると
、他の位相値が現在の和から減じられ、出力が活性化される。2の補数による加算器が用
いられる場合、位相値は2段階にとられてもよく、2の補数演算において発生する自動
ラップアラウンドにより、減算が必要でない。いくつかの実施形態では、デルタ-シグマ
コンバータが、位相加算器の代わりに積算を行い、これにより、分数分周に起因するスパ
ーを消滅させてもよい。これは、出力スペクトルを拡散することにより出力クロック信号
のEMIを低減するためにも用いられ得る。
【0079】
本開示の様々な実施形態のための例示的なクロックソリューションが、下記のテーブル
に図示されている。ここに用いられているように、「イアーリンク」という用語は、本開
示の音声バスシステム及び方法を参照している。
【表2】
【0080】
第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倍で周波数を出力するPLL
540とを用いて所望の分周周波数を生成する。PLL540の実施形態が図6Bに図示
されており、分周器520の出力からの1/128参照入力と、位相検出器544と、ル
ープフィルタ546と、VCO548と、1/125分周器550とを備えている。
【0081】
第3のクロックソリューションの例示的な実施形態が図7に図示されている。第3のク
ロックソリューションは、音声入力及び出力処理に用いられる音声クロック602と、ホ
ストデバイスと接続デバイスとの間のUSB通信に用いられるUSBクロック604と、
本開示の低遅延データバスにおいて用いられるデータバス及びDSPクロック606の3
つの同期クロック信号を生成する周波数同期ループ(FLL)600の実装である。FL
L600は、ここに説明するようなことを除き、図5A図5B図6の対応するコンポ
ーネントと同様に実装され得る、同期検出器610と、フィルタ及び予測器612と、デ
ルタ-シグマDAC616と、VCO617と、分周器624と、周波数カウンタ618
と、減算器ブロック614とを備えている。FLL600は、分周器620と、分周器6
22と、音声クロック周波数の21倍で周波数を出力するPLL630を用いて所望の分
周周波数を生成する。
【0082】
第4のクロックソリューションの例示的な実施形態が図8A及び図8Bに図示されてい
る。第4のクロックソリューションは、音声入力及び出力処理に用いられる12.288
MHzの音声クロック信号702と、ホストデバイスと接続デバイスとの間のUSB通信
に用いられる12MHzのUSBクロック信号704と、本開示の低遅延データバスに用
いられる258.058MHzのデータバス及びDSPクロック信号706の3つの同期
クロック信号を生成する周波数同期ループ(FLL)700の実装である。FLL700
は、ここで説明するようなことを除き、図5図7の対応するコンポーネントと同様に実
装され得る同期検出器710と、フィルタ及び予測器712と、デルタ-シグマDAC7
16と、VCO717と、分周器724と、周波数カウンタ718と、減算器ブロック7
14とを備えている。FLL700は、分数分周器720と、分周器722と、音声クロ
ック信号702の21倍で周波数を出力する分数分周器730とを用いて所望の分周周波
数を生成する。データバス及びDSPクロック信号706を生成するために用いられ得る
分数分周器720の実施形態が図8Bに図示されている。分数分周器720は、位相加算
器732と分周器734とを用いて実装される。分数分周器720では、ある位相値が各
クロックサイクルについて位相和に加算され、現在の位相和がある最大位相値を超えたと
き、他の位相値が位相和から減算されて出力が活性化される。場合によっては、ディザ生
成器736が、クロックを分数値で分周するだけでなく、ディザ値を更に中間位相値に加
算するように位相加算器のディザリングを行う。これはクロックのジッタを増加させるで
あろうが、加算されるディザの量を制御することでシステムクロックのEMIを低減する
ために使用可能である。典型的には、放射されるEMIは、この動作により、15~20
dBだけ低減されるであろう。ディザ生成器736は、デジタル擬似乱数生成器や乱数を
生成する他のデジタル回路を用いて実装され得る。もし、擬似乱数生成器がゼロと異なる
平均値を位相加算シーケンスに加えるのであれば、このことが、位相加算器を更新すると
きに考慮に入れられるべきである。
【0083】
フレーム構造
本開示の様々な実施形態によれば、サポートされている複数の周波数に渡って単一のフ
レーム構造が使用されることがある。ここでは、開示された実施形態と共に用いられる例
示的なフレーム構造を説明する。
【0084】
図9Aの実施形態を参照して、フレーム構造が、42ビットの一定サイズのフレームを
備えており、同期パターンが1フレーム当たり1回の頻度で繰り返す。一実施形態では、
1メッセージ当たりのコマンドビットの数は32ビットであり、メッセージ同期ビットは
、48kHz毎に1回繰り返す。各フレームは、1以上のサブフレーム、例えば4のサブ
フレームを備えていてもよく、各サブフレームは、同一構成を有しており、同期に関して
は同じに見える。コマンドビットの例示的な編成が下記に図示されている。ここで、SC
MDは、コマンドの開始であり、S48は、48kHzビーコンであり、RESは保留の
フィールドであり、OP2-OP0は、3ビットオペコードであり、DEV3-0は、4
ビットのデバイス番号であり、DATは、コマンドの一部として転送されるべきデータで
あり、PARはセキュリティのためのパリティビットであり、ACKは、承認ビットであ
る。
【表3】
【0085】
ビットSは、各48kHz時間ティック、又は、各64番目のフレーム、又は256個
のサブフレーム(9.600MHzシステムについては、24kHz時間ティック又は5
12個のサブフレーム)について、最初のサブフレームの開始時に1に等しくなる。該S
ビットは、フレームの開始を発見し、複数の音声ソースを48kHzに同期する(例えば
、最初のフレームの開始は、サンプルイベントであるべきである等)ために用いられ得る
【0086】
データ編成の詳細は、更に、図9Aに図示されている。0から1への遷移が、マスター
に内部タイミングを同期するためにスレーブデバイスのPLLによって用いられ、コマン
ドビットCMDが続く。次に、16ビットの音声がマスターデバイスからスレーブデバイ
スに転送されてもよく、その後、マスターデバイスからスレーブデバイスへのハンドオー
バー(読み出し、Rコマンドを含む)の間、(信号方向を変更させるために)1以上のタ
イムスロットの遅延が続く。次に、16ビットの音声がスレーブデバイスからマスターデ
バイスに転送されてもよく、その後、1以上のタイムスロットの遅延が続く。
【0087】
9.600MHz、12.000MHz、16.000MHzのシステムの実施形態が
図9B及び図9Cに図示されている。これらのフォーマットは、遠隔通信クロックのサ
ポートを可能にするであろうし、マスターとスレーブの間で用いられる帯域幅を、マスタ
ーによって又はスレーブによって用いられる帯域幅の約1/3から2/3に変化すること
が可能である。これらのフォーマットは、19.200MHzに相応するクロック周波数
でのより効率的な転送のために、一行当たりのビット数が10、又は、それよりやや多い
という利点を有している。この周波数、又は、38.40MHz(=2×19.20MH
z)は、しばしば、移動電話や携帯デバイスのような遠隔通信アプリケーションにおいて
用いられる。
【0088】
図9D及び図9Eを参照して、追加のフレーム構造を説明する。様々な実施形態によれ
ば、各同期パルスの間の各フレームに、同一数のビットが存在する。しかしながら、例え
ばコマンドに用いられる帯域幅の量を変更することにより、ビット数は、変更され得る。
フレーム構造は、行および列の数も変化され得るが、それでもビットの数を同一に維持し
得る。例えば、図9D及び図9Eの両方が、1フレーム当たり同一のビット数を備えてい
る。様々な約数に分解可能な1フレーム当たりのより大きなビット数(例えば、80又は
144ビット)で除算することで、より高い帯域幅による受信アイ開口における高ジッタ
という犠牲を払うが、PLL逓倍係数を変更することなくフレーム編成を変更可能である
【0089】
例示的なメッセージフィールドの編成が、下記に図示されている。
【表4】
【0090】
多くのコマンドが従来のものである(何もしない、レジスタの読み出し及び書き込み)
かもしれないが、DELAYコマンドは、伝送線路に接続されたデバイス間での最適なタ
イミング取りのための遅延を見出すことに用いられ得ることが理解されるであろう。これ
は、マスターが最初に線路をある値にチャージし、その後、バスホルダーでこの値を保持
し、又は、フローティングバスを用い、その後、主ドライバを開放し、その後は、バスに
接続された任意のデバイスがこの値をトグル可能であるようにすることで達成され得る。
マスターに最も近く位置しているデバイスが、バスラインのトグルに最初に影響を与える
であろうし、これは、高速に刻時されてタイミングイベントを検出するカウンタを用いて
、又は、複数の遅延回路を用いて高い信頼度で測定され得る。測定の間、タイミングに影
響を及ぼさないようにバスは終端されないであろう。測定は、(スレーブ送信タイミング
を最適化するために)マスターの内部で行うことができ、(スレーブ-スレーブ間通信タ
イミングを最適化するために)スレーブデバイスの内部で行うこともできる。
【0091】
図9Fは、様々な実施形態による、例示的なプロトコルシンボルを図示している。例示
的なコマンドのもう一つのセットが、更に、下記のテーブルに図示されている。
【表5】
【0092】
ここでは、「レジスタ読み出し動作」の実施形態を説明する。レジスタ読み出し動作を
実行するために、下記のシーケンスが実行されてもよい:(i)アドレス書き込み動作を
用いて正しいアドレス値を書き込む。(ii)レジスタ読み出し動作を行う(データフィ
ールドは、読み出し値を含むであろう)。もし、ある範囲のレジスタを読み出す必要があ
るなら、これは、各読み出し動作間でアドレスレジスタを更新することなく実行可能であ
る。これは、アドレスカウンタが各読み出し動作で1だけインクリメントされ得るため可
能となっている。
【0093】
ここでは、「レジスタ書き込み動作」の実施形態を説明する。レジスタ書き込み動作を
行うために、下記のシーケンスが実行されてもよい:(i)アドレス書き込み動作を用い
て正しいアドレス値を書き込む。(ii)レジスタ書き込み動作を行う(データフィール
ドは、読み出し値を含むであろう)。もし、ある範囲のレジスタが書き込まれるべきであ
るなら、これは、各書き込み動作間でアドレスレジスタを更新することなく実行可能であ
る。これは、アドレスカウンタが各書き込み動作で1だけインクリメントされ得るため可
能となっている。
【0094】
ここでは、「アドレスレジスタ書き込み動作」の実施形態を説明する。レジスタアクセ
スは、アドレスレジスタによって制御される。レジスタ操作を行う前に、まず、アドレス
レジスタの値が規定される。これは、アドレスレジスタ書き込み動作で引き起こされる。
アドレスレジスタは、宛先のスレーブデバイス内の現在アクティブであるレジスタを示し
ている。続くアクセス(読み出し又は書き込み動作)は、アドレスレジスタをインクリメ
ントすることがある。これは、複数のレジスタへのより高速なアクセスを可能にする。様
々な実施形態において、読み出し及び書き込み動作の両方を制御する単一のレジスタしか
存在せず、如何なる読み出し又は書き込み動作でも、このアドレスレジスタの値をインク
リメントすることがある。インクリメントは、アドレスレジスタの値が、読み出し又は書
き込み動作において、最初に一度用いられた後に行われる。アドレスレジスタの現在値は
、テーブルに図示されているコマンドを用いては読み返すことはできない。
【0095】
ここでは、「ビーコン」コマンドの実施形態を説明する。このコマンドは、48kHz
の繰り返し周期でマスターによって送出されることがある。それは、全音声ソースが同期
されるように音声タイミングをフレームの開始に同期するためにスレーブによって用いら
れることがある。
【0096】
ここでは、「デバイスループ遅延」コマンドの実施形態を説明する。このコマンドは、
スレーブデバイスによって開始されマスターに伝搬する遷移を測定することで、スレーブ
デバイスからマスターへのターンアラウンド遅延を測定する。この実施形態では、2経路
遅延を測定するための機構が提供される。ここでは、遅延測定のための方法800の実施
形態を、図10Aを参照しながら説明する。まず、マスターが、デバイスにコマンドを送
り、遅延測定が開始することを指示する(ステップ802)。次に、両端で終端が無効に
され(ステップ804)、伝送線路が既知のシンボルでチャージされる(ステップ806
)。既知のデバイスが、ステップ808において伝送線路をディスチャージすることで応
答する。チャージイベントからディスチャージイベントまでの遅延が、ステップ810に
おいて測定される。ステップ812において、もしシステムが端部終端を備えているなら
、伝送線路の両端において終端が有効にされる。
【0097】
一の実装では、マスターがデバイスループ遅延コマンドを送出し、その後、問い合わせ
るべきデバイス番号が続く。次に、マスターは、データフィールドにおいてデバイスID
値を送出する。もし、デバイスIDがデータフィールドと同一であれば、内部フラグ(“
device_update_ready”)がセットされるであろう。もし、デバイスIDがデータフィー
ルドと同一でない場合、内部フラグはリセットされるであろう。次に、バスが、マスター
により既知の状態に設定される(即ち、バスが、既知の論理値、0に初期化される)。マ
スターは、弱いバスホルダーで、又は、フローティングバスを用いてこの状態を維持し、
バスを既知の状態に駆動した後でそのトランスミッタを無効にし、測定の間、両端におけ
る終端が無効にされることを確実にするであろう。例として、マスターは、同期のために
0-1信号を用い、バスを“1”状態にしておいてもよい。
【0098】
その後、スレーブデバイスは、スレーブデバイス内部の強い内部ドライバを用いて、こ
の状態を異なる値に駆動することができる。一実施形態では、スレーブデバイスは、次の
シーケンス-ZZZZ-00-ZZZZ-を出力する。ここで、Zが無効にされたドライバであり、0
は、ロー信号を駆動する。該2つの0は、全ての遅延状態の下で0を正しく読むことを確
実にするであろう。マスターのレシーバが、1以上のスレーブから遷移信号を受け取ると
、マスターは、タイミングから遅延を知るであろう。このイベントのタイミングは、最近
接するデバイスへの双方向遅延を見出し、送信または受信タイミング遅延を制御すること
によってレシーバのアイダイアグラムを最適化するために用いられるであろう。遅延値は
、マスターデバイス内部の内部オーバーサンプルドクロックに基づいて測定されてもよく
、マスターデバイス内部の遅延線又は遅延サンプルの使用に基づいて測定されてもよい。
重大な量のノイズ又はクロックジッタがバスに存在しているような場合には、良い遅延読
み出しを得るためには、この過程を複数回繰り返す必要があるかもしれない。これは、複
数タイムスロットから高分解能、例えば、2nsで得られ、その後、複数、例えば、64
の読み出し値に渡って平均化がなされた返し値の読み出しを含んでいてもよい。もし、返
し値が0~36nsの任意の位置で発生し得るのであれば、全ての場合に遅延を正確に決
定するためには、それぞれがスレーブデバイスから帰られた複数の測定結果に基づいてい
る全部で19の値が必要になるであろうし、それぞれの場合に、良い平均値が返されるよ
うにするためには、複数の(例えば、64の)読み出しを実施する必要があるかもしれな
い。中間の遅延位置から探索を開始することにより、探索時間を顕著に短縮することがで
きる。更に、最後に返された値は、遅延が長すぎるか短すぎるかの指標を与えるから、最
後に返された値が何であるかに依存して探索方向を変えることで、探索時間を短縮するこ
とも可能である。この限定的な場合では、ちょうど遷移において、スレーブから返される
概ね50%の0と1とを測定するであろう。これに加え、最善のサンプリング点を得るた
めには、1/2データスロットを追加する必要があろう。
【0099】
他の実装では、マスターは、スレーブから読み出した値を書き返し、そしてスレーブデ
バイス自らに内部遅延を調整させてもよい。これは、スレーブからマスターへの通信を最
適化する、即ち、調節に必要な帯域幅を低減するために使用され得る。同様に、1つのス
レーブデバイスが他のスレーブデバイスから読み出した値を書き込み、当該他のスレーブ
デバイスに自らに内部送信タイミングを調整させてもよい。
【0100】
バスに残存する電荷は、マスターがバスを既知の値に設定し、これにより伝送線路に如
何なる以前の情報もない状態にするとき、マスターによって吸収されるであろう。もし、
複数のスレーブが存在するのであれば、複数のスレーブは、そのデバイスID(16ビッ
トで一定)を用いて、一度に一つずつ消滅可能である。マスターに最も近いスレーブは、
得られた遅延値に対応するであろう。言い換えれば、デバイス遅延の測定又はバスに接続
されたデバイスの計数の間、最初に伝送線路に接続されたデバイス(典型的にはマスター
)と最後にバスに接続されたデバイス(典型的にはスレーブデバイス)は、両方が、この
過程の間、そのドライバを無効化して、伝送線路内部の固有の電荷によって状態を維持す
るフローティングバスを有効にするであろう。
【0101】
様々な実施形態において、番号DEVとデータフィールド値以上のデバイスIDを有す
るデバイスのみが、出力を活性化するであろう。バスに現在接続されている最も高いアド
レスを有するデバイスを発見し、異なるデバイスID(帯域幅を節約するために典型的に
は3ビット)を割り当てることによってサーチからこのデバイスを削除し、バスに接続さ
れた2番目に高いデバイスのアドレスを発見し続ける、等を行うために、その後、2分探
索が使用可能である。言い換えれば、デバイスIDのMSBが最初に読み出され、低いデ
バイスIDを有するすべてのスレーブが離脱するように、調停手続きが最初に用いられる
必要があろう。この手順は、唯一のデバイスのみが応答するまで継続されるであろう(注
:この手続きはIC多マスター及びSoundWireアドレス調停と類似している)。
【0102】
一実施形態では、測定を阻害しないことを確実にするために、遅延コマンドが用いられ
るときに全てのデバイスがフレームの最後の行において通常のデータトラフィックを止め
るであろう。いくつかの実施形態では、スレーブデバイスは、ある幾何学的構成に対応す
る特定の遅延を用いるようにプログラムされ、これにより、このコンポーネントとのやり
取りの前に物理的遅延を見出す必要をなくし、不揮発性メモリまたは内部回路に遅延値を
運ぶための他の手段を含む必要をなくしてもよい。
【0103】
図10Bを参照して、内部デバイス番号を保持しているがバスに適したデバイス番号を
保持していない接続デバイスの計数のための方法850が図示されている。ステップ85
2において、マスターは、コマンドを送信して計数が開始することを指示する。ステップ
854において両端における終端が無効にされ、ステップ856において、マスターが、
伝送線路を既知のシンボルでチャージするように進める。もし、デバイス番号からのビッ
トがハイであれば、バス上の未知のデバイスが、伝送線路をディスチャージすることで応
答する(ステップ858)。既知の遅延の後、この位置についてデバイス番号にロービッ
トがある全てのデバイスが停止するであろう(ステップ860)。もし、複数のデバイス
がとどまっているならば(ステップ862)、次のデバイスビットがチェックされ、ステ
ップ864においてデバイス調停が継続する。もし、単一のデバイスのみが残存している
なら、ステップ866において該デバイスにアドレスが割り当てられる。もし、マスター
が、事前に、全ての接続されたデバイスの長いID(例えば、16ビット)を知っている
ならば、マスターは、単に、これらに一つずつ呼びかけ、起動の直後に、アドレス調停を
実行する必要なしに、各デバイスに新しい短いID(3ビット)を再割り当てすることが
できる。
【0104】
ここでは、「デバイスアドレス設定」コマンドの実施形態を説明する。パワーオンリセ
ットの後、スレーブデバイスはデバイスアドレス値0が割り当てられる。このコマンドを
実行すると、宛先のデバイスは、新しいアドレス(0~7)を得るであろう。なお、アド
レス7(111)は、ブロードキャストのために含まれている。一実施形態では、device
_update_ready セットを有するデバイスのみが更新される。
【0105】
二重動作
ここでは、図11Aを参照して二重動作の実施形態を説明する。様々な実施形態におい
て、バス900は、単信又は二重動作モードで動作し得る。この配置では、I/Oポート
は、出力ドライバの設計により、同時に信号の送受信を行うように構成されることがある
。該配置は、家庭用のオーディオシステムに用いられることがあるように、バス長が25
メートルを超えることを可能にするために用いられてもよい。
【0106】
この実施形態では、前進及び後進伝搬波の過渡応答が、2つのドライバが同時に存在し
ているときに何が起こるかを評価するために用いられる。任意の点の電圧は、前進及び後
進伝搬波の和によって決定される。従って、出力ドライバのインピーダンスと伝送線路の
インピーダンスを考慮に入れることにより、むしろ簡単に、任意のノードにおける点を測
定し、2つのドライバからの影響を差し引くことができる。
【0107】
簡単のために、まず、伝送線路の各端に位置する2つのドライバ902及び904のみ
がある状況を評価しよう。リンクを適切に終端するために、ドライバ902及び904が
、伝送線路のインピーダンスZに等しい値の直列終端を用いるとも仮定しよう。これは
、前進及び後進伝搬波の両方が、初期のドライバ電圧の半分であろうということを意味し
ている。任意の点の電圧は、前進及び後進伝搬波の和から見出すことが可能であるので、
測定した電圧からドライバ電圧の半分を差し引くことで正しい受信電圧を見出すことがで
きる。これは、差動の場合には、単に、反転した送信電圧の半分を受信電圧に加える、例
えば、キャパシタを用いて差動送信電圧の半分を交換して加える等で行うことができる。
このアプローチでは、多くの構成でトランスミッタ方向のターンアラウンドの間の双方向
遅延は必要なく、ターンアラウンド遅延が無いことにより、継続動作を行い、データスト
リームに休止を入れることなく、非常により長いリンク(例えば、25メートル)が可能
であり、極めて高速での全二重動作(0.1~5Gbps)が可能である。なお、この構
成は、各線端にある一つのノードに動作が留められ、少なくとも一のノードが定期的に同
期パルスを送出する限り、如何なるタイミング調整も必要としない。
【0108】
複数スレーブ
ここでは、複数のスレーブの様々な実施形態を説明する。二重動作は、単一のマスター
と単一のスレーブデバイスしかないときには比較的簡単であるが、複数のスレーブデバイ
スがある場合には状況がより複雑になる。一つの問題は、中継ノードが、いずれの方向か
らの波も反射するであろうということである。なぜなら、中継ノードは、(マルチドロッ
プ接続を可能にするために)終端を提供しないからである。従って、伝統的な二重動作は
、ある実装については実用的ではないかもしれない。しかしながら、適切に信号のタイミ
ングを取ることで、スループットを増大させることができる。様々な実施形態において、
信号は、最初にマスターからスレーブデバイスに向かうであろう。他のスレーブデバイス
は、それらが送信を開始できるようになる前に、マスターからの前進波がこれらのデバイ
スを通り過ぎるまで待つ必要があるかもしれない。従って、如何なるハンドオーバー遅延
を必要とせずにこの状況に対処する例示的なタイミングダイアグラムは、次の送信シーケ
ンス{M, S1, S2, S3, S4, S5}であり、その後、方向を変えるときにこのパターンを反対{
S5, S4, S3, S2, S1, M}で繰り返すことであろう。ここで、Mはマスターを表しており、S
1は、マスターに最も近いスレーブデバイスであり、S5は、マスターから最も遠いスレー
ブデバイスである。言い換えれば、バスに接続されたデバイスは、シーケンスを前進又は
後進波について送信し、そのようにして伝送線路上の中間点からの反射の問題を当然に回
避するであろう。バスに接続されたデバイスのタイミング遅延は、この手法を試みる前に
、当然に特定され訂正されるであろう。
【0109】
すべての通信について差動シグナリング手法が用いられることを確保することで、放出
及び受け取るEMIが、顕著に低減されるであろう。図11Bは、休止期間で始まり、同
期信号が続き、そしてデータが続き、そして再度休止になる差動シグナリング920の例
を示している。休止期間は、コモンモードノイズを避けるためには差動の性質を有してい
るべきであり、これは、休止時間の間の固定的な電力消費を避け、これにより控え目な帯
域幅の要求について非常に低い電力消費を可能にするために、一の信号線における終端が
、ハイレベルで終わり、他方がローレベルで終わるべきであることを意味している。
【0110】
図11Cは、休止モードにおいて可能な最低のEMIと可能な最低の電力消費を確保す
るためにハイ及びローシグナリング電圧に終端する差動シグナリングシステム930の例
を示している。図11Dは、各端のトランスミッタ942、944、946及び948が
バスの直列終端として用いられ、これにより、終端負荷が無いことで端のノードにおける
電力消費を低減し、実装を簡単にする、差動シグナリングシステム940の類似の例を示
している。各端のバスドライバは、データを送っていないときに休止状態になり、デフォ
ルトの終端電圧を送り、これにより、休止状態での電力消費を低減する。いくつかの実施
形態では、2本の伝送線路の一方が、遮蔽のための接地の代わりに電力線を使用し、これ
により、電力の伝送も可能にする。いくつかの実施形態は、シールドされた同軸ケーブル
の代わりに、例えば、低EMIの要求のために4線のツイストペア構成になっているDATA
+、DATA-、接地及び電源のような4本のツイスト線を用いてもよい。接地及び電源線は、
更にEMIを低減する。他の実施形態では、単一のシールドが使用され、電力と差動デー
タがシールドの内部の3本のケーブルに位置している。
【0111】
いくつかの応用では、バスで発生しているランダムな信号伝送によって誘起される音声
ノイズを最小化することが重要である。これは、バス上の様々なソースのシグナリングレ
ベルを変化させる、例えば、データポートのトランスミッタ及びレシーバで擬似乱数生成
器を用い、これによりバストラフィックをランダムにし、これにより音声帯域におけるス
ペクトル成分を低減することで行われてもよい。場合によっては、ランダム化は、音声帯
域のスペクトル成分がデータ信号を高周波成分で乗じることにより、例えば、各行をある
ランダムな又は事前に定義された値で乗じることによって一層に低くなるように、スペク
トル先鋭化によって行われてもよい。場合によっては、ランダム化は、単に行を可聴帯域
幅の外部の搬送波で乗算することによって行われてもよい。いくつかの実施形態では、各
ポートは、エラーテスター(例えば、検証とテストのための8ビット擬似乱数生成器)を
備えている。このポートテスタは、音声データのスクランブル及びデスクランブルにも用
いられ得る。デジタル領域における乗算は、XOR又はXNORゲートによって実行され
得る。例えば、ほとんど同一の擬似乱数生成器が、元の一連のデータを復元するために用
いられ得る。擬似乱数生成器と、レシーバ/テスターの例については、例えば、SoundWir
e規格を参照されたい。以前には、類似の技術が、例えば無線モデムにおいて送信データ
ストリームからDC成分を低減し又は除去するために用いられてきた。ここでスクランブ
ルを用いることは、同一値の複数のシンボルの伝送を伴う状況を避けることすらせず、こ
れは、同期を失わせる事態になり得るが、出力スペクトルの低周波成分を低減し、例えば
音声帯域における干渉を避けるように用いられる。
【0112】
場合によっては、ランダム化は、例えば、様々なトランスミッタからの出力をランダム
化し、これにより如何なる音声への擾乱を低減するのみならず、更に、変調器のノイズ伝
達関数を意図的に制御することによってノイズの出力スペクトルをノイズシェーピングす
ら行うように、既知のパターンを用いるデルタ-シグマ変調器を用いて実行され得る。
【0113】
ケーブル仕様
ここでは、様々な実施形態による例示的なケーブル仕様を説明する。イン-イアーヘッ
ドセットについては、例えば、細いAWG30又はAWG34ワイヤを用いるシールドさ
れた構成のようなユーザ要求を満足するために、細いケーブルが使用されることがある。
長いリンク、又は、大型のヘッドセット及びヘッドホンについては、太いケーブルが使用
可能であることがあり、これは、少し減衰を低減もする。8本ではなく4本のワイヤのみ
が必要であることを除き、一例は、CAT5要求(ワイヤ種類AWG24)に似た、二重
撚りケーブル対であろう。例えば、標準の100BASE-TXケーブルが使用可能であ
る。15メータのリンクの減衰は、66db/100m×15m=9.9dB又は3.1
倍である。このように、システムを設計する際には、送信電圧と最大レシーバヒステリシ
スの間の相違を考慮に入れるべきである。
【0114】
中間ノード
ここでは、中間ノードの例示的な実施形態を説明する。様々な実施形態において、端の
ノードは、伝送線路と整合するために、Zの直列出力インピーダンスを有しているが、
中間ノードから見ると、1/2Zのインピーダンスになるであろう(なぜなら、中間ノ
ードには、本質的に、それぞれがインピーダンスZを有する2本の伝送線路が見えるで
あろうからである)。全てのノードが同一の性能を有することがしばしば望ましい。様々
な実施形態において、(i)各ノードが、U0の出力電圧を有し、(ii)各端のノード
がZの出力インピーダンスを有している。中間ノードのインピーダンスは、もし、中間
ノードが当該ノードに伝搬波が到達している間にアクティブであるならば、反射波を生じ
させるであろう。この状況は、信号のタイミングを適切にする、即ち、前に伝送された情
報を有する信号波が通過した後に、各ノードが最初に信号を送信することで回避可能であ
る。伝搬波は、最終的には、伝送線路の端で吸収されるであろう。差動シグナリングが用
いられる場合、例示的な伝送線路インピーダンス及び信号電圧は、Z=75Ω、U
250mVを含んでいてもよい。
【0115】
加えて、伝送線路上の中間ノードは、2つの線路入力に対面するであろうし、もし、そ
れらの出力インピーダンスが、伝送線路の遠く端に位置するノードと同一であるならば、
出力信号電圧は、低くなるであろう。これは、中間ノードについてより低い出力インピー
ダンスを用いたり、中間ノードの出力駆動電圧を高くしたり、又は、伝送線路上のレシー
バをより低い閾値電圧に調節したりすることで訂正可能である。
【0116】
起動シーケンス
ここでは、例示的な起動シーケンスを説明する。様々な実施形態において、通常のシグ
ナリングは、差動2レベルシグナリングである。しかしながら、あり得るスレーブ故障の
後、又は、電源がダウンした状態の後での起動状態又は再同期のための固有のパターンを
得るために、マスターは、第3の、又は、より高い、相違する電圧レベルを送出するよう
に構成されてもよい。このレベルは、データ伝送には用いられず、スレーブデバイスの再
同期又は起動状態(低電力スタンバイからのウェークアップ)のためにのみ使用されるで
あろう。これは、放射されるEMIには影響しないであろう。なぜなら、この、より高い
レベルは、初期同期の間(例えば、最初の1ms)の間しか用いられないからである。一
実施形態では、起動シーケンスは、通常の信号伝送レベルの2倍の電圧レベルの12ビッ
トスロットからなる。様々な実施形態において、起動シーケンスの直後にPLLによって
用いられる同期エッジが続くであろう。EMIを低減し、使用可能な帯域幅を増加するた
めに、起動シーケンスは、通常動作の間には伝送されないであろう。図示の実施形態では
、起動又は再同期の間、マスターは、おおよそ、(12.288MHzのクロック周波数
を用いた場合)元の帯域幅の62.5%を残しており、9.60MHz動作モードでは、
通常の帯域幅の40%を残している。簡単な実装では、DCオフセットが、ある数のタイ
ムスロット、例えば、12のタイムスロットに追加され、レシーバが差動であるため、追
加のオフセットはデータに影響せず、しかしながら電源投入状態を検出するために使用可
能である。初期及び起動状態のためのみの更に簡単な実装においては、1.0Vのような
ロジック電圧が、ウェークアップ検出のために用いられ、これにより、差動レシーバを低
電力状態にする必要をなくしてもよい。
【0117】
例示的な差動シグナリング電圧が、下のテーブルに図示されている。
【表6】
【0118】
様々な実施形態において、スレーブデバイスの安全な起動機構を確保するために、スレ
ーブデバイスが再び同期に復帰する必要があるときに、より高い電圧レベルがバスライン
において用いられる。この、より高い電圧は、通常のデータトラフィックとリセット状態
とを区別するために使用されるであろう。それは、バスが動作している間に、低電力ウェ
ークアップのための電源投入回路(例えばウェークアップワード)に用いられてもよい。
この、より高いバス電圧は、ウェークアップ回路をトリガし、電力消費を低減するように
、バス上のランダムノイズを避けるために、通常のデータシンボルよりも長時間オンにさ
れ得る。合理的な耐性と、良好なノイズ耐性と、低電力消費を得るために、ウェークアッ
プイベントが、一連の12ビットスロットからなるであろうことが示唆される。これは、
134.400MHzの最高ビットクロックで、約89nsの最小オン時間に等価である
【0119】
図12を参照して、ステップ1002においてシステムが電源オンされ、ロックフラグ
とドライバが無効にされ(ステップ1004)、位相検出器が無効にされる(ステップ1
006)。ステップ1008では、デバイスを検出するために広範囲サーチが有効にされ
る。もし、ステップ1010で、あるデバイスについて特別なシーケンスが検知されたな
ら、ステップ1012において同期パルスが検出される。もし、デバイスについて特別な
シーケンスが検出されない場合、このステップは、それが検出されるまで繰り返される。
ステップ1014において、もし、PLLがロックされているなら、広範囲サーチが無効
にされ(ステップ1016)、ドライバが有効にされる(ステップ1018)。同期シー
ケンス(ステップ1012~1018)は、時間ゲートが開かれると(ステップ1020
)、繰り返される。もし、PLLがロックされておらず(ステップ1014)、狭帯域が
有効にされているなら(ステップ1022)、ステップ1024においてドライバが無効
にされ、高電力での広範囲サーチを繰り返すように制御がステップ1008に移る。
【0120】
ここでは、図13を参照して、特別な起動回路1100の動作を説明する。通常動作の
間には、起動シーケンスは存在せず、この回路からの出力はゼロであろう。この回路から
の出力は、PLLがロックされるまで使用される。動作時に、この回路は、バスからの入
力をフィルタし、もし、バスが、ある時間、あるハイ閾値を超えているならば、次のハイ
からローヘの遷移を検知するようにPLLを有効にする。バスレベルがローであるとき、
当該回路は、如何なる蓄積された電荷をも排出し、再び、中断されないハイ値のシーケン
スを探し始める。
【表7】
この一連の論理1の長さは、クロック周波数とハイ値同期パルスの長さに依存するであ
ろう。これは、アナログ回路により、エラー状態において同期の開始をチェックするため
に用いられてもよい。
【0121】
位相検出器からの出力は、50ns(多くても120ns)後、又は、複数の論理1の
後に論理0になった後に有効にされる。これは、図示された実施形態では、多くとも4の
連続するタイムスロットに渡る障害の間でさえ音声転送を可能にする。障害状態の間、最
初の4列が音声転送のために用意される一方で、各5番目の列が論理0を送信するために
用いられ、その後、同期パルスの開始まで更なる音声が続く。0から1への遷移の後、位
相検出器の出力は、再び無効にされる。一実施形態では、スレーブデバイスは、ロックを
得た後、現在のロック位置によって決まる狭いウィンドウにおいて同期遷移を探し、他の
全てのバストラフィックを無視する。
ロックオン検出器
【表8】
【0122】
ここでは、例示的な信号伝送ソルーションを説明する。第1の信号伝送シーケンスソル
ーションでは、
3レベルシグナリングが用いられる:CAT5シグナリングと同様に、EMI低減のた
めに、{-1,0,+1}が{ロー,ゼロ,ハイ}によって信号化される。
論理0:前と同一レベル。
(4つの0の後、逆のシーケンスからの値が続くことがある。即ち、安全な開始検出を確
保するために、いくつかの0の後、逆方向に行く)。
論理1:3値のシーケンスにおける隣の値、例えば、複数の1が、シーケンス{ゼロ,
ハイ,ゼロ,ロー,ゼロ,ハイ,ロー等}として信号化される。そして、同期とデータと
を区別するために、同期値は、正当なデータ値によって可能なものと異なるシーケンス、
例えば、{ハイ,ロー,ハイ,ロー}又は{ゼロ,ハイ,ゼロ,ハイ}を用いるであろう
。言い換えれば、3値エンコーディングは、生成された高調波を低減することでEMIの
低減を可能にしながら、レシーバが同期とデータを確実に区別することができるようにす
る。
【0123】
第2の信号伝送シーケンスソルーションでは、2レベルシグナリングが用いられる。一
実施形態では、マスター以外のデバイスは、1行において4個を超えるタイムスロットを
所有することはできず、パケット間にゼロが挿入されるであろう。もし、複数デバイスが
データを互いに相互に送る場合、各4ビットの間に間隔が設けられ、ゼロが挿入される。
もし、アナログ遅延回路が、上述よりも更に狭い耐性で作られ得るのであれば、より多く
のビットが順次に輸送可能である。これは、如何なる正当なデータ値と異なる同期シンボ
ルの特別なエンコーディングを可能にするために、帯域幅がトレードオフになる例である
。8/10Bエンコーディングのような他のエンコーディング手法が、同期とデータとを
区別するために使用され得る。
【0124】
第3の信号伝送シーケンスソルーションでは、DCオフセットがマスターからの全ての
信号に加えられる一方で、スレーブはDCオフセットを用いないであろう。差動信号は、
フレームの開始を指示するために、マスターによりコモンモード信号で変調されてもよい
。これは、いくらかEMIを増加させるであろうが、これは、初期の同期の間の短い期間
でしか発生しないであろう。このDCオフセットの変更は、スレーブによって確実に検出
可能であり、これにより、バス上の現在のシグナリングパターン及び如何なるスレーブデ
バイス内の如何なる以前に遭遇した状態に無関係に、同期を常に得ることができる。図1
4(3)は、このソルーションの例を図示している。
【0125】
高速遷移
図15を参照して、本開示の動作の実施形態を説明する。このソルーションは、音声が
未だ動作している間でさえも同期レートを変更することを可能にする。一実施形態では、
250mVシグナリングが低速及び高速モードの両方で用いられてもよく、ゲーティング
された時間ウィンドウにおける受信信号の同期エッジが、音声のサンプリングに用いられ
る。低速モードでは、もしタイムスロットが駆動されていなければバスでの追加の電力消
費は無く、高速で動作する内部PLLからの少しの追加の電力消費しか存在しない。従っ
て、低消費電力モードとして用いられる低速モードのためのより高い周波数が、選択され
てもよい。低速モードでは、 デバイスは、比較的容易に同期をチェックできる(例えば
、12スロットのうちの2スロットが同期に用いられる)。一実施形態では、全デバイス
が、常に同期に維持される。他の実施形態では、デバイスは、スリープモードに入り、特
別なVDDウェークアップ信号を待つことがある。これは、デバイスが機能する前に遅延
(例えば、1ms)を誘発することがある。
【0126】
一以上の実施形態では、高速への遷移が、低速モードにおいて遅い同期(例えば、76
8kHz)で開始される。追加の同期シンボルが高速モードに備えて挿入され、タイムス
ロットが短くされるが、元の768kHzの遷移は維持される。シンボルは、伝送期間の
中央で読まれると想定される。追加の同期シンボルは、低速モードデバイスには見えない
。各トランスミッタは、より短いシンボルを挿入するために、元のタイムスロットのクロ
ックの少なくとも二倍で動作する内部クロックを備えている。高速モードになった今では
、より多くのタイムスロットが存在する。様々な実施形態において、低速のデバイスが、
高速モードで読み出しを行う。このソルーションは、音声の動作を維持し、かつ、低速及
び高速のデバイスの両方を同時にバスに接続させながら、帯域幅及び同期繰り返しレート
を変化させることを可能にする。それは基本的には、既存のタイミングでサブ期間を挿入
し、これらのサブ期間を既存の転送プロトコルに帯域幅を追加するために用いられる。こ
のアプローチは、SoundWireのような既存のインターフェースとの上位互換のために使用
され得るし、また、元のインターフェースが提供できないであろう高帯域幅をサポートす
ることを可能にし得る。
【0127】
フレーム同期とバルク転送
当業者は、本明細書で開示されているシステム及び方法の多くの利点を認識するであろ
う。様々な実施形態において、複数のアップストリーム接続インターフェース装置(スレ
ーブ装置)が、様々な地点でバスに取り付けられることがあり、部分的には、正確なタイ
ミング施策により、互いにフルスピードで通信することがある。異なるデバイスからの信
号伝送は、タイミング制御と伝送線路を介して伝搬される前進及び後進波を区別すること
により、緊密に積み重ねられ得る。これは、EMIを低減する穏やかなスルーレートを用
いてさえ、高帯域幅を可能にする。これは、FCCクラスA及びBデバイス、パート15
のようなEMI規格への認証及び遵守のために有益である。
【0128】
本明細書に記載したシステムは、2本のワイヤによる低電力データ通信を容易化するた
めに用いられ得る。このインターフェースは、一つのマスターと一以上のスレーブ装置を
有するマルチドロップ動作をサポートしており、従来の時間多重化低遅延システムよりも
長い距離に渡ってフルスピードでスレーブ間のポイントツーポイントの通信を可能にする
。低電磁干渉(EMI)が、差動低電圧動作及びスルーレートの制御によって達成される
。各スレーブデバイスは、PLL又はDLLを備えており、システムは、終端された、マ
ルチドロップ、かつ、複数デバイスのシステム配置をサポートしている。
【0129】
当該システム及び方法は、従来のアプローチに対する多くの利点を提供する簡単なフレ
ーム構造及び初期同期シーケンスを含んでいる。様々な実施形態において、スレーブ及び
マスターデバイスの間の初期同期は、簡単かつ頑強であり、一定のフレームサイズを用い
る。複数のクロックシステムとの互換性を確保するために従来のシステムにおいては可変
フレームサイズが用いられてきたが、本開示では、異なるアプローチが取られている。本
開示は、柔軟かつ有効なソルーションを提供するために、ここに開示したようなオーバー
サンプリングされたクロックシステムにより提供される追加の自由度を用いている。いく
つかの実施形態では、実際のクロック周波数は、フレームの一部を構成するビーコン信号
から推論されてもよい。
【0130】
いくつかの実施形態では、クロック周波数及び動作モードに関係なく、一ラインのデー
タが80タイムスロットを備えている。個々のフィールドは同一シーケンスに存在するで
あろうが、これらのタイムスロットの解釈は、選択された構成に依存し得る。起動時に、
デフォルトのデータフォーマットが、最長のバス径(最低スピード)に合わせて設定され
る。図16Aを参照して、各ラインのデータの異なるフィールドが図示されている。個々
のタイムスロットの解釈を変更することにより、ボーレートとバス径の間で様々な折衷案
が選択可能である。同期パターンは、各ラインのデータ当たり1つの頻度で繰り返す(例
えば、図に示すように、同期レートは3.072MHzである)。各ラインは、0から1
への遷移で開始する。この遷移は、ビットが受信可能であるように、内部のデルタ-シグ
マコンバータのために、そして、バス上のPLL/DLLをロックするためのサンプルイ
ベントとして用いられる。図16Aは、同期パターンと簡単化されたラインの説明を図示
している。0から1への遷移のイベントをデルタ-シグマコンバータのためのサンプリン
グイベントとして用いることの一つの利点は、それが、マスタークロックからのジッタの
みを含み、スレーブデバイスのクロック再生に関連する追加のジッタを含まないことであ
る。よって、このソルーションは、PLL/DLLの低電流消費の要求によりスレーブデ
バイスのクロック再生ユニットの内部に高ジッタが存在してもなお、音声サンプリングに
ついてジッタを低減することができる。
【0131】
各ラインは、同期フィールド(当該フレームは論理1で開始し論路0で終わる)と、コ
マンドフィールド(Cは、マスターからのコマンド)と、前方(典型的には、マスターか
らスレーブ)への音声の輸送のためのフィールドと、シグナリング方向を変えることを可
能にするための2方向遅延「ターンアラウンド」(T)と、スレーブデバイスからの応
答フィールド“R”(スレーブデバイスからの読み出し時にしか用いられない)と、後方
(典型的にはスレーブからマスター)への音声の輸送のためのフィールドと、同期パター
ンの開始を完了させる、可能な空きフィールドとを有している。当該ラインは、更に、前
方コマンド(マスターからスレーブ)と、フレーミング(ビーコン)フィールド(F)と
、データフィールドD~Dを含んでいることがある。これらのフィールドのそれぞれ
に割り当てられるスロットの数は、アプリケーションによって変更し得るが、ライン内の
タイムスロットの総数は、固定した数、例えば、80である。ラインにおける列の数を変
更するためには、図15の技法(例えば、同期レートを768から3072kHzに変更
する)が使用可能である。図16は、起動時のデフォルトの構成を表しており、ここでは
、下に示されているインデックスは、各フィールドの開始時のタイムスロットの数である
【0132】
データの輸送が、伝送線路上で発生するであろう。複数のデバイスからのデータパケッ
トの間の衝突を避けるために、前進波と後進波とを区別しよう。前進波は、マスターで開
始し、マスターから離れるように向けられる。後進又は反転波は、スレーブデバイスから
送出されたデータであり、マスターに向かう方向に伝搬する。ターンアラウンド期間の間
は、デバイスは如何なる情報も転送せず、そのドライバは、(そのようなシステムのため
の動的終端の可能性は別として)無効にされる。
【0133】
音声データは、リンクにおいて、両方向、即ち、マスターデバイスからスレーブデバイ
スに向かう前方、及び、スレーブデバイスからマスターデバイスに向かう後方に伝搬可能
である。もしスレーブデバイスが、当該スレーブデバイスよりもマスターから離れて位置
している他のスレーブデバイスにデータを転送したい場合、それは、図16Bに図示され
ているように、前方に、すなわち、D~Dとラベリングされているフィールドにおい
てデータを送信する。様々な実施形態において、システムは、制御データ(レジスタ読み
出し及び書き込み)、等時性音声(PDM及びPCM)、異時性音声(PCM)、及び、
バルク転送動作に対応していてもよい。
【0134】
下のテーブルは、信号インテグリティ決定に対して様々な帯域幅の要求に適合するため
のインターフェースの微調整を可能にするレジスタを列挙している。いくつかの実施形態
では、インターフェースは、リセットが適用された後、デフォルト値で起動するであろう
。この実施形態では、TX遅延は、マルチドロップ構成との互換性を確保するために符号
あり2の補数の値として格納され、RX遅延は、符号あり2の補数の値として格納される
。PLL/DLLにおける遅延により、負のオフセットが存在し得る。もし、レジスタF
の値がレジスタGの値と同一であれば、ブロックデータは転送されないであろう。もし、
レジスタJの値がレジスタKの値と同一であれば、ブロックデータは転送されないであろ
う。本実施形態では、全てのレジスタ値は、半クロックの増分でカウントされ、TX及び
RX遅延レジスタを除いては、全てのレジスタ値は正(単一バイト)である。
【0135】
下記のテーブルを参照して、マルチドロップ構成との互換性を確保するために、TX遅
延が符号あり2の補数の値として格納される。RX遅延は符号あり2の補数の値として格
納され、PLLにおける遅延により、負のオフセットが存在し得る。もし、レジスタFの
値がレジスタGの値と同一であれば、ブロックデータは転送されないであろう。もし、レ
ジスタJの値がレジスタKの値と同一であれば、ブロックデータは転送されないであろう
。全レジスタ値は、半クロックの増分でカウントされる。TX及びRX遅延レジスタを除
いては、全てのレジスタ値は正(単一バイト)である。
【表9】
【0136】
フレームの要約が図17に図示されている。最初の列と最後の列の箱は、マスターによ
って3.072MHzのレートで駆動された同期である。次の2行の特定の箱(例えば、
OP,ID,##,C,FA,SA)は、マスターによって駆動されるコマンドフィール
ドを表している。Mとラベルされた箱は、マスターからスレーブへの音声データを表して
おり、Sとラベルされた箱は、スレーブからマスターへの音声データ又は応答を含んでい
ることがある。2番目の列の1とラベルされた箱は、ターンアラウンド遅延または論理1
を含んでいることがあり、Tとラベルされた箱は、マスターからスレーブへのターンアラ
ウンド遅延である。図示された実施形態では、1列が、マルチドロップ、多書き込みアプ
リケーション(調停/計数)に割り当てられている。殆どの列が、単一のデバイス専用だ
が、本明細書に記載されているように注意深いタイミング制御を用いて共有も可能である
【0137】
帯域幅を節約するために、レジスタ読み出し及び書き込み動作は、最初にスレーブデバ
イスの内部のアドレスレジスタを更新し、その後、実際の読み出し又は書き込み動作を起
こすことで行われてもよい。このようにすれば、読み出し及び書き込み動作を繰り返して
行うときに、コマンドごとにアドレスを転送する必要がなくなるであろう。
【0138】
コマンドは、少なくとも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}
【0139】
もし、あるコマンドにおいて、何らかの不適正なシンボルに遭遇した場合、このコマン
ドは無視されてもよく、意図されたレシーバは、このフレームの終了時にリクエストアテ
ンション(Request Attention)で応答可能である。如何なる現在進行中のブロック動作
も中断されるべきであり、非ブロック動作のみが継続されるであろう。
【0140】
コマンドは、オペコードフィールドによって定義される。このフィールドは、3又は6
ビットで構成可能である。メモリからの24ビットの読み出しのみが、オペコードの短縮
形態を用いるであろう。言い換えれば、「24ビット読み出し」のための特定のオペコー
ドに遭遇した場合、このフレームは、全ての6つのオペコードビットを読む前ですら、読
み出しフレームとして即刻認識されるべきである。
【0141】
ブロック動作は、レジスタへの及びレジスタからの大量のデータ転送に適している。こ
れらの転送は、ラインの特別なフィールドをこれらの種類の転送にあてることで、それら
が如何なる音声転送と干渉しないように保護されてきた。このように、音声転送は、ブロ
ック転送と干渉し得ないし、逆も同じである。これは、最下位のハードウェア層によって
取り扱われる。これは、単純なプログラミングエラーがバスをクラッシュしないようにす
ることを保証する。ブロック動作に割り当てられるタイムスロットをゼロに低減すること
が可能である。これは、いくつものエラーがフレームに発生した場合であってもブロック
動作が行われないようにすることを保証するであろう。
【0142】
一実施形態では、全てのブロック動作はシンボルAで始まり、その後、第2シンボルと
して、これらのうちの一つの値が続く:(i)“A”(ブロック動作を停止)-このブロ
ックは、一連のブロック動作の最後から2番目のブロックになり、次のフレームは、ブロ
ックデータを含む最後のブロックになる、即ち、ブロック転送が1フレーム遅れて停止す
るであろう。(ii)“B”(連続書き込み動作のために開始アドレスを定義)-定義さ
れた開始アドレスから始めてデータがメモリに保存され、次のデータワードのそれぞれが
、隣のメモリセルの内容を格納し、現フレームから3番目のフレームがブロック転送を用
いる、即ち、ブロック転送が2フレーム遅れで開始するであろう。(iii)“C”(連
続読み出し動作のために開始アドレスを定義)-定義された開始アドレスから始めてデー
タがメモリに保存され、次のデータワードのそれぞれが、隣のメモリセルの内容を格納し
、現フレームから3番目のフレームがブロック転送を用いる、即ち、ブロック転送が2フ
レーム遅れで開始するであろう。
【0143】
他の実施形態では、「ブロック動作の停止」を用いる代わりに、バルク転送の間にコピ
ーされるべき要素の数が、最初に、スタートアドレスと共に定義されるであろう。バルク
動作が開始された後、宛先のデバイスそれ自身がすべての動作を行い、バルク転送の終わ
りに、IRQ(”Request Attention”)がマスターに知らせるために生成され、転送が
完了する。マスターは、その後、バルク転送が成功したかを調べ、CRC値が正しいかを
チェックするためにスレーブデバイスの状態にアクセスすることができるようになってい
てもよい。
【0144】
単一の読み出し及び書き込み動作は、最初にレジスタ操作の開始アドレスを定義し、そ
の後、任意の後動作が、その前に定義されたアドレス値を用いてI/O動作を行うことで
機能する。その後に続くレジスタ操作のためのアドレスの定義は、シンボルDを送り、そ
の後にシンボルBを続けることで定義される。
【0145】
アドレスのインクリメントを伴う読み出し及び書き込み動作は、最初にレジスタ操作の
開始アドレスを定義し、その後、任意の後動作が、その前に定義されたアドレス値を用い
てI/O動作を行うことで機能する。この動作を用いる場合、各読み出し又は書き込み動
作が完了した後、デバイス内部で、その後の読み出し又は書き込み動作が、アドレス値を
後付けでインクリメントするであろう。アドレスのインクリメントを伴う、その後のレジ
スタ操作のためのアドレスの定義は、シンボルDを送り、その後にシンボルCを続けるこ
とで定義される。
【0146】
単一の書き込み動作は、シンボルDを送り、その後シンボルAを続けることで実行され
る。用いられるアドレスは、この動作を用いる前に定義する必要があろう。
【0147】
単一の読み出し動作を行う場合、バスのタイミングの詳細が複雑であるため、該読み出
し動作は、2番目のシンボルの全てのビットをブロックするであろう。従って、読み出し
動作は、最初のシンボルによって完全に定義される一方で、2番目のシンボルが無視され
る(この場合、マスターはバスを駆動しないだろう)。更に、読み出し動作は、最初のシ
ンボル(フレームの最初の3行)が読み出され解釈された直後に開始すべきである。読み
出し動作は、シンボルCによって定義される。
【0148】
もし、デバイスID番号が7であるならば、これは状態読み出し動作を行い、バスに接
続された全てのデバイス(マスターを除く)は、その状態を返すであろう。各デバイスか
ら返される3ビットは、下記のとおりである(MSBが最初に返され、LSBが最後に返
される):
【表10】
【0149】
もし、デバイスID番号が7であるならば、これは状態読み出し動作を行い、バスに接
続された全てのデバイス(マスターを除く)は、その状態を返すであろう。各デバイスか
ら返される3ビットは、下記のとおりである(MSBが最初に返され、LSBが最後に返
される)。
【0150】
デバイス0-6は、対応するA-Gフィールドにおいて、関連するデバイス状態データ
(バスに接続、IRQレベル)を用いて応答してもよい。バス上の直前の値が1であるた
め、全ての変化は、負論理を用いて(アクティブのイベントがゼロ)信号化される必要が
あろう。この動作には、可能な24ビットのうちの最後の21ビットのみが用いられる。
デバイスは、この3ビットアドレスを得るために動的アドレス割り当てを用いてもよいし
、又は(例えば、ピンによるプログラムでの)固定のデバイスアドレスを用いてもよい。
もし、動的アドレス割り当てを用いるのであれば、デバイスは、初期値としてアドレス0
を用いてもよい。もし、読み出しの間、マスターがIDを0に設定するのであれば、それ
は、最後にアクセスされたバルク転送ポートから24ビットのCRC値を読み出すことを
表しているであろう。これは、もしデバイス状態が読み出されているのであれば最初のオ
ペコードは“C”であり、2番目のオペコードは送られていないことを意味している。
【0151】
バスに接続された全てのデバイスから状態を返すために、確認フラグ及び注目フラグを
含む様々な状態フラグが提供されている。確認フラグは、トランザクションが成功したこ
と(例えば、3ビットCRC値によって確認された読み出し又は書き込み)を確認する。
複数のデバイスが異なる値でバスを駆動しようとすることで発生する可能性があるバス衝
突を回避するために、これは、論理ローがアクティブの信号で定義された。デバイスが注
目を要求する場合、該デバイスは、このタイムスロットをローに駆動すべきであり、そう
でなければ、該デバイスは、このタイムスロットにおいて如何なる値も駆動すべきでない
。これは共有されているビットなので、全てのデバイスは、このタイムスロットに応答で
きる。注目フラグ(例えば、AT)は、バスに接続された任意のデバイスから注目される
ことの要求を信号として送る。複数のデバイスが異なる値でバスを駆動しようとすること
で発生する可能性があるバス衝突を回避するために、これは、論理ローがアクティブの信
号で定義された。デバイスが注目を要求する場合、該デバイスは、このタイムスロットを
ローに駆動すべきであり、そうでなければ、該デバイスは、このタイムスロットにおいて
如何なる値も駆動すべきでない。
単一エラーがブロック転送動作を引き起こすことを避けるために、ブロック転送は、そ
の前のフレームにおいて完全に定義されるであろう。1行当たりのコマンドビットの数を
変更することにより、例えばDSPプログラムのアップロードのために、レジスタに又は
レジスタから大量のデータを非常に速く転送できる。ブロック転送は、列がこの動作に割
り当てられた場合にのみ発生するであろう。これは、ブロック転送の開始を定義するレジ
スタへの書き込みによって発生する。もし、ブロック転送レジスタが、タイミングにおい
てそれに続くターンアラウンドレジスタと同じ又は大きい場合には、ブロック転送コマン
ドが発行されている場合であってもブロックデータは転送されないであろう。これは、ブ
ロックデータが偶発的に音声データを書き換えないようにすることを確実にする。コマン
ドのエンコーディングを行う例示的なコマンドテーブルが、以下に提示される:
【表11】
【0152】
図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においてレジスタデータをバッファする必要があろうことを意味
している。
【0153】
図18Bのフレーム1814は、32ビットブロック書き込み転送動作の開始を示して
いる。データの書き込みは、2フレーム後に(即ち、このフレームではなく、次のフレー
ムでもなく)初めて開始するであろう。3番目のフレームが開始するまで、フレームレイ
アウトは同一であろう。フレーム1816は、書き込みバルクデータの転送(連続)を図
示している。フレーム1818は、32ビットブロックバルク読み出し転送動作の開始を
図示している。レジスタデータの読み出しは、3番目のフレームで初めて開始するであろ
う。3番目のフレームが開始するまで、フレームレイアウトは、その前のフレームと同じ
であろう(即ち、バルク転送はまだ開始していない)。D0~D23がデバイス0-7に
マッピングされる。各デバイスは、多くとも3つのバルク転送ポートしか有していなくて
もよい。0の値は、ポートが2フレームで活性化されることを示している。各デバイスに
は3ビットが割り当てられる(例えば、デバイス1がビットD3-D5に割り当てられ、
それぞれが、内部バルク転送ポートに対応している)。フレーム1820は、読み出しバ
ルクデータ(連続)の転送を図示している。
【0154】
フレーム同期アルゴリズム
マスターは、ある期間の後にスレーブが同期(PLL/DLLロック)を得るであろう
ことを前提としている。スレーブデバイスは、任意のサポートされている速度でバスに接
続し、その機能についてフィードバックを提供する。通信を開始する前にスレーブがメッ
セージ同期を得ているかをチェックするための実施形態が提供される。いくつかの実施形
態では、単一フレームメッセージが用いられる。ビーコンがフレームの開始を指示するた
めに使用可能であり、また、同期に使用可能である。
【0155】
図19を参照して、ここでは、フレーム同期アルゴリズム1900の実施形態を説明す
る。ステップ1902では、プロセスは、PLL又はDLLがマスターとロックするのを
待つ。ステップ1904では、シフトレジスタ(SHIFT1)が0xFFFF.FFF
Fに設定される。ステップ1906では、最初の値が第1ラインから読み出されて第2シ
フトレジスタに入れられる。この処理は、サーチレジスタを初期化するために32ライン
に渡って繰り返される。いくつかの実施形態では、各ラインは3.072MHzで繰り返
され、これは、PDM及び高音質音声のためのサンプリング点を提供することがある。各
フレームが32ラインに渡って繰り返され、96kHzのフレーム繰り返し周波数を与え
る。いくつかの実施形態では、フレームの終了を示すビーコンが各第2フレームに(48
kHzの繰り返しレートで)送られる。
【0156】
そして、次のステップが64フレームに渡って繰り返される。ステップ1908では、
シフトレジスタ2から値が読み出される。当該値は、新しい読み出し値の反対の値である
べきである(ステップ1920で比較される)。もしそうでなければ、第1シフトレジス
タのこのビットは、ステップ1902においてリセットされる。そうでなければ、プロセ
スは第2シフトレジスタ、SHIFT2を更新するためにステップ1912に進む。ステ
ップ1908では両方のレジスタをシフトし、続けて32ラインを完成させる。このプロ
セスは、その後、64フレームに渡って繰り返される。交互パターンをチェックすること
により、64フレームの後、フレーム同期が実現可能である。言い換えれば、実際の同期
位置をチェックする代わりに、このアルゴリズムは、唯一の有効な位置が残されるまで全
ての無効な位置を消去する。この方法は、ランダムデータがコマンド列に発生していても
、スレーブデバイスが常にロックされていることを保証する。もし、32ビットレジスタ
が、64フレーム後にもなお、複数のセットされているビットを含んでいる場合、当該方
法は、無効な位置が消去されるまで繰り返される。
【0157】
図示された実施形態では、第1シフトレジスタの1である唯一のビットが、フレーム同
期位置を示している。いくつかの実施形態では、もし、第1シフトレジスタの1の値であ
るビットが2以上ある場合、エラーが発生し、アルゴリズムは、再起動されるべきである
。これは、通常の状況では発生しない(ランダムデータについては、これが起こる確率は
、2-64<10-20である)ことが予期される。
【0158】
一の実装では、全てのフィールドがマスタークロックを用いてオーバーサンプリングさ
れる。1ラインのデータが80のタイムスロットに分割され、複数のタイムスロットがバ
ス上でデータを定義するために用いられる。全てのフィールドがマスタークロックを用い
てオーバーサンプリングされてもよい。この実施形態では、デフォルトのクロック周波数
が245.76MHzに設定されるが、他の周波数も用いられ得る。スレーブデバイス及
びマスターデバイスについて初期のPLL同期周波数が3.072MHzに設定されるが
、ここに説明しているように、他の周波数も用いられ得る。
【0159】
これらのタイムスロットの解釈は、個々のフィールドは同じ順序であろうが、選択され
た構成に依存するであろう。起動時に、デフォルトのデータフォーマットが、最大のバス
径に合わせて(最も遅い速度)設定される。図16Cを参照して、例示的なフレーム構成
が、各ラインのデータにおいて異なるフィールドを示しながら図示されている。個々のタ
イムスロットの解釈を変更することで、ボーレートとバス径の間での様々な折衷案を選択
することができる。同期パターンは、1ラインのデータ当たり1回の頻度で繰り返す。同
期パターンは、0から1への遷移である。
【0160】
図示された実施形態では、一のラインが、同期フィールド(0-1)、ターンアラウン
ド期間T(マスターデバイスも如何なるスレーブデバイスも方向の変更を許可するよう
にアクティブになっていない期間であり、このタイムスロットも、前方コマンド(マスタ
ー制御)とフレーム作成情報Fを含んでいる)と、コマンドフィールド(CMD又は応答
R)と、前方に(典型的には、マスターからスレーブに)音声を輸送するためのフィール
ドと、マスターからスレーブにバルクレジスタデータを輸送するためのフィールドB
、信号伝搬方向の変更を可能にするためのターンアラウンド期間Tと、後方に(典型的
には、スレーブからマスターに)音声を輸送するためのフィールドと、スレーブからマス
ターにバルクデータを輸送するためのフィールドBと、次のラインが開始するまでのデ
ータの整列のための空フィールドとを含んでいる。
【0161】
マスターがコマンドフィールドにコマンドを発行すると、良好なタイミングマージンを
確保するために、マスターは、隣接するTフィールドも同じ値で駆動するであろう。し
かしながら、マスターがスレーブデバイスからの応答を期待しているときには、マスター
は、T及びCMDフィールドを駆動しないであろう。Tフィールドは、如何なるデバ
イスによっても駆動されず、データのターンアラウンドに割り当てられている。スレーブ
デバイスがコマンドフィールドに応答を発行する場合、それは“CMD”フィールドのみ
を駆動し、隣接するTフィールドは駆動されずに信号のターンアラウンドのために用い
られる。スレーブデバイスからマスターデバイスまでの実際の距離は、未知である場合が
ある。従って、コマンドが発行されると、スレーブデバイスからマスターデバイスへの実
際の遅延を測定することになろう。実際の遅延は、タイミングを最適化する、例えば、受
信アイダイアグラムを最適化するために用いられよう。
【0162】
これらのフィールドのそれぞれに割り当てられるタイムスロットの数は、応用によって
異なり得るが、図示された実施形態では、1ラインのタイムスロットの総数は80である
。起動時のデフォルト設定は、各フィールドの開始時のタイムスロットの数を示している
。起動時にはバルク転送にはタイムスロットは割り当てられていない。
【0163】
と印がつけられたタイムスロットは、ターンアラウンド遅延のためのものである。
これらのタイムスロットの内部には実際のデータ値は定義されない。ターンアラウンド遅
延T-Tは、データ方向を変更(即ち、前進波から後進波へ、及び、その逆に)でき
るように割り当てられている。マスター及びスレーブデバイスから送信されるビット数は
変化することがあり、そして、如何なる送信が開始する前にもプログラムされるべきであ
る。上記に示した例では、マスターは、スレーブに各ラインにおいて6ビットを送信し、
スレーブは、マスターに各ラインにおいて4ビットを送信する。この例はデフォルト設定
を示しており、マスター及びスレーブに割り当てられる帯域幅は、他の設定にプログラム
され得る。同期パターンは、データ構成に関わらず固定されたままである。コマンドター
ンアラウンド等のためにデータビット当たりに割り当てられたタイムスロットの数をプロ
グラミングすることにより、典型的には高いジッタ要求と短い最大バス径を犠牲にしなが
ら、帯域幅を相当に増加することができる。このプログラム可能な性質は、システムデザ
イナが、各方向にどれだけの帯域幅が同期、コマンド及びデータに使用可能かを決定する
ことによって、高いシグナルインテグリティのために帯域幅をトレードオフの関係にする
ことを可能にする。また、スルーレートと出力伝送電圧をプログラミングすることにより
、システムがEMIについての要求をパスできるようにしながら信号インテグリティを最
適化できる。
【0164】
マスターがコマンドフィールドにおいてコマンドを発行するとき、マスターは、より良
いタイミングマージンを確保するために隣接するT及びTフィールドを同一値で駆動
するであろう。しかしながら、マスターがスレーブデバイスからの応答を期待していると
きには、マスターはT、CMD及びTフィールドを駆動しないであろう。スレーブデ
バイスがコマンドフィールドにおいて応答を発行するとき、スレーブデバイスは“CMD
”フィールドのみを駆動し、隣接するT及びTフィールドは駆動されず、信号のター
ンアラウンドのために用いられるであろう。スレーブデバイスからマスターデバイスへの
実際の距離は未知である場合がある。従って、コマンドが発行されると、スレーブデバイ
スからマスターデバイスへの実際の遅延を測定することになろう。実際の遅延は、タイミ
ングの最適化、例えば、受信アイダイアグラムの最適化に用いられるであろう。高いデー
タインテグリティのために用いられる値が、各データ単位の中央に位置している一方で、
マスターは、遅延最適化のために、通常のサンプリングの前に1/2データ単位で、即ち
、2つデータ値の間のエッジでスレーブ遅延をサンプリングするであろう。
【0165】
クロックの両方のエッジを用いることで2回のオーバーサンプリングが達成可能である
。マスターがコマンドフィールドにおいてコマンドを発行する場合、マスターは、隣接す
る“T”フィールドを同一値で駆動するであろう。スレーブデバイスがコマンドフィール
ドにおいて応答を発行する場合、スレーブデバイスは、“R”フィールドのみを駆動し、
隣接する“T”フィールドは駆動されずに信号のターンアラウンドのために用いられるで
あろう。バス径が短く、バス周波数が低い場合、
遅延測定が実行可能になる前に、漏れ電流がバス値を変更し得る。この場合、漏れ電流が
遅延測定に全く影響を与えないことを確実にするためにシステムにバスホルダーを設ける
ことが最適である。このようなバスホルダーの出力インピーダンスは、典型的には1~2
kΩの範囲であろう。
【0166】
スレーブデバイスは、それが一旦ロックされたなら、デバイス状態を伝えることによっ
て応答すべきである。スレーブPLL回路は、1ms以内にマスターとのロックを得るこ
とができるべきであり、他の制御回路部によって用いられるように「PLLロック」信号
を出力できるべきである。更に、PLLは、スレーブコマンドコントローラから論理信号
(「メッセージ同期」信号)を予期すべきである。「メッセージ同期」信号がハイであり
、スレーブPLLが、自身がロック状態にあると判断したなら、スレーブPLLは、狭帯
域幅モードに変化すべきである。狭帯域幅モードでは、時間ゲートは、同期エッジの周辺
の狭い時間ウィンドウにおいてのみ位相検出器からの出力を許容するであろう。もしこれ
らの信号のいずれかがアクティブ(ハイ)ではないならば、PLLは、広い帯域の位相検
出に変化すべきであり、スレーブデバイスは、バスへの書き込みができないようになるべ
きである(これがなされたら、他のデバイスの上書きができなくなる)。
【0167】
音声データは、リンク上を双方向で、即ち、マスターデバイスからスレーブデバイスへ
の前方及びスレーブデバイスからマスターデバイスへの後方に伝搬可能である。もしスレ
ーブデバイスが、自身よりもマスターから離れて位置する他のスレーブデバイスにデータ
を転送したい場合、該スレーブデバイスは、前方に、即ち、「マスター音声」とラベルさ
れたフィールドにおいてデータを送信する。
【0168】
ポートプログラミング
様々な実施形態において、データ転送は、ポートプログラミングによって取り扱われる
。任意の送信ポートから任意の受信ポートにデータを転送可能にするために、データはモ
ノラルチャネルのように扱われてもよい。このアプローチを用いて、ステレオチャンネル
及び多チャンネルシステムは、チャネルがグループとして扱われる状況と比較して、より
長いプログラミングシーケンスを用いることになろう。しかしながら、このアプローチは
、より簡単であり、任意のデータ転送についてより高い柔軟性を与える。
【0169】
あるポートに対応する全てのレジスタは、バンク(シャドー)レジスタを有するであろ
う。主及びシャドーレジスタの選択は、バンク選択レジスタに書き込むことで達成される
。一以上のエラーによるバンクレジスタ値の変化に起因する、バスの振る舞いへの破滅的
な変化を避けるために、このレジスタは、特別に保護されていた。言い換えれば、バンク
値を変更するためには、バンク番号1を選択するために特定のレジスタに特定の8ビット
値を書き込む必要があり、バンク番号0を選択するために、これら2つのワードの間に長
いハミング距離がある異なる8ビット値を書き込む必要がある。一つのシナリオから他の
シナリオに変更するときに不調や歪に遭遇することなく、2以上の再生モードの間で変更
をシームレスに行うためにバンクレジスタが用いられる。なお、如何なる音声の不調をも
避けるためには、適切なバッファリングによってフィルタ構成を変更する際に、群遅延に
注意を払う必要もあるかもしれない。
【0170】
任意のデータを任意の送信ポートから任意の受信ポートに自在に転送できるようにする
ために、送信及び受信ポートの両方が、フレーム内のデータの位置を自在にプログラム可
能である。例えば、ある行変数は、書き込まれるべき最初のデータの行の選択を許容する
ことがあり、行増分は、隣接するアクティブな行への間隔を選択するために使用可能であ
る。列変数は、書き込まれるべき最初の列を選択するために使用され得、“最終列”変数
は、データが書き込まれ又は読み出されている最後の列を選択するために使用され得る。
所与のデータポートからのデータ長(例えば、データ語長)もプログラムされ得る。いく
つかの実施形態では、データ値は、1以上のフレームに渡って延伸することがあり、スト
リームの同期がプログラムされることがある。これは、典型的には、この同期を達成する
ためのビーコンビットを用いて達成されている。
【0171】
バルク転送は、バルク転送が有効にされる前に、開始行、行増分、開始列及び列停止レ
ジスタが、定義される必要がある場合がある。バルク制御ビットがバルク転送コマンドを
有効に及び無効にするために使用され得る。バルク転送をサポートしているポートのみが
このビットを使用し、そうでなければ値が無視される。バルク転送は、ポートによって実
行される最後のバルク動作の間に転送される全ビットの24ビットCRCチェック値を保
持する追加のレジスタを有していることがある。各デバイスは、同時に動作するバルク転
送ポートを一つしか持つことはできず、通常は2以上のバルク転送ポートを持つことはな
いであろう。バルク制御レジスタは、(例えば、32ビットアドレスの)開始レジスタと
、(例えば、32ビットアドレスの)終了レジスタと、(例えば、32ビットの)長さレ
ジスタと、単一又は連続転送を示すフラグと、読み出し/書き込み方向フラグとを含んで
いてもよい。なお、ポートは、バルク転送開始コマンドに反応するために最初に有効され
る必要がある。ポート転送の間に有効にされるポートは、マスターによって書き込まれる
24ビットワードによって与えられる。バルク転送動作の開始の間、24ビットワードが
マスターによって書き込まれる。各デバイスは、内部的にこれらのビットを(もし、いず
れかが実装されているのであれば)バルク転送ポートに割り当てる。
【0172】
電力消費
帯域幅の要求が穏やかである簡潔なシステムについては、リンクの終端を避けることで
顕著に電力消費を低減可能である。その代わりに、トランスミッタは、ラインインピーダ
ンスで直列終端されるであろう。トランスミッタ側からの如何なる反射をも避けるために
、トランスミッタの出力インピーダンスは、出力レベルの変化の間でも比較的安定である
べきである。これは、出力インピーダンスが突然非常に高くなる時間ゾーンが無いように
、順次に、同時には一つだけ活性化される複数のドライバを持つことで達成可能である。
また、もし伝送線路の各端に位置している2つのデバイスしか無ければ、反射の問題は消
え去り、リンクの端が終端されずに直列終端トランスミッタを用いて高速及び低電力が達
成可能である。
【0173】
並列終端を避けることにより、電力消費は、(250mVのシグナリング、50pFの
負荷、及び、40Mbitの信号伝送に基づけば)容量的に充電するだけによる、2×1
25μW=250μWまでに減少するであろう。実使用では、受信PLL(例えば、25
0μW)の電力消費と制御オーバヘッドのためのいくらかの追加の帯域幅を追加する必要
があろうし、しかしながら、1mWを下回るような電力割当量は、非現実的である。
【0174】
様々な実施形態において、マスターは、スレーブをウェークアップ可能であるべきであ
り、スレーブは、マスターをウェークアップ可能であるべきである。よい信号インテグリ
ティと全ての他の回路の電力消費量の低下を確保するために、最も簡単なゼロ電力ウェー
クアップ(<1μA)モードでは、より高い信号電圧(約1V)を用いる。より複雑なソ
ルーションでは、全てのモードで同一の信号電圧を維持可能であろうが、これは、より複
雑な回路と受信回路が常にオンにされる必要がある(100μA)。マスターは、全スレ
ーブに書き込みを行い、次のフレームにバス停止が開始することを伝えるであろう。マル
チドロップバスについては、これは、端点にあるノードが、フレームの終わりに終端を無
効にすることを必要とするであろう。次のフレームにおいて、マスターは、弱いドライバ
(約5kΩ)を用いてD+をVDDに駆動するであろう。遷移の間の如何なるEMIをも
低減するためにハイインピーダンスが使用され得る。D+がVDDである限り、これは、
低電力状態がまだアクティブであることを示すものである。スレーブは、中間の強さのド
ライバ(約600Ω)を用いてウェークアップエベントを伝えるためにD+ラインをプル
ダウンすることがある。これは、少なくとも7ns(15pF以上の負荷)の遷移を確保
する。(もし、標準の32.768kHz低電力ウェークアップクロックがマスターで用
いられていても)マスターがイベントを登録したことを確実にするためには、このライン
は、少なくとも50μsの間、ローにプルダウンされている必要がある。多くとも100
μsの後、スレーブはプルダウンイベントを無効にし、マスターは、イベントが登録され
てバスが再起動した後で、少なくとも100μsの間バスを起動し始めるであろう。
【0175】
PLL同期
システムの電源が投入されるとき、スレーブデバイスは、マスターデバイスと同期を確
立する必要があろう。これは、次のようにして達成される:(i)マスターが、各ライン
において固定の同期パターン(0から1への遷移)を送出する。(ii)マスターが、コ
マンド応答及びターンアラウンドに割り当てられたタイムスロットを除くフレームの全ビ
ットを定義する。(iii)スレーブデバイスのPLL/DLLがマスターにロックされ
ると、それは、「スレーブロック状態」ビット(EarLinkコマンドのセクション参
照)を活性化して応答する。(iv)これでマスターデバイスがスレーブデバイスをプロ
グラム可能である。
【0176】
一実施形態では、1ラインが、クロック周波数及び電力モードに関わらず、80個のタ
イムスロットを含んでいる。同期パターンは、1ライン当たりに1回の頻度で繰り返す。
同期パターンは、0から1への遷移である。ライン/周期の最初の0から1への遷移のみ
がスレーブデバイスのPLL/DLLによって使用される。コマンドタイムスロットが、
同期タイムスロットの直後に続くので、これは、初期的には、1ラインには単一の0から
1への遷移しかないことを意味しており、従って、PLLの同期イベントは、一意に定義
されるであろう。立ち上がりクロックエッジが同期に用いられている限り、スレーブのP
LL/DLL回路は、1ms以内にマスターとのロックを得ることができるべきであり、
他の制御回路に使用されるであろう内部“PLL/DLLロック”信号を出力可能である
べきである。更に、PLL/DLLは、スレーブコマンドコントローラからの論理信号(
「メッセージ同期」信号)を予期すべきである。「メッセージ同期」信号がハイであり、
スレーブPLL/DLLが、自身がロックされていると特定した場合、狭帯域幅モードに
変更すべきである。狭帯域幅モードでは、時間ゲートは、位相検出器からの出力を、同期
エッジの周辺の狭い時間ウィンドウにおいてのみ許容するであろう。もし、これらの信号
のいずれかがアクティブ(ハイ)でない場合、PLL/DLLは、広い帯域の位相検出に
変化する(即ち、位相/遅延検出器ウィンドウのゲーティング論理を無効にし、バス衝突
を避けるためにスレーブ出力トランスミッタを無効にする)べきである。マスターは、デ
バイス状態を読み出し、これにより、スレーブがロックを得たときに検出すべきである。
更に、このメッセージは、スレーブデバイスの遅延タイミングを最適化するために使用さ
れることがあり、ポート転送が開始される前に完了されるべきである。
【0177】
同期が得られた後、遷移の周辺のウィンドウ(例えば、+/-3タイムスロット、即ち
、6タイムスロットからなる同期タイムスロットの半分)がPLL/DLLのために開放
される。PLLに狭い時間ウィンドウが用いられる理由は、PLLによって統合されるべ
き位相検出器からの出力は、バス上の如何なるデータ通信によっても混乱されてはならな
いからである。このように、PLLを、広い、即ち、時間領域で広い受信帯域幅で始動し
、その後、PLL統合ユニットへの入力を時間ゲーティングする必要がある。時間ゲート
ウィンドウの幅は、タイムスロットの幅に依存しており、一のタイムスロットは、スレー
ブPLLの1クロック周期によって決定される。約294.912MHz(3.072M
Hz×96)の内部クロック周波数については、1つの同期ビットを送信するのに6タイ
ムスロットを使用するシステムでは、これは、約+/-10.2nsにあたる。この構成
は、(10-12のビットエラーレートについて)この値の約14倍であるピークジッタ
については約727psRMSまでのジッタを受け入れるであろう。
【0178】
適用可能である場合、本開示で提供されている様々な実施形態は、ハードウェア、ソフ
トウェア、又は、ハードウェアとソフトウェアとの組み合わせを用いて実施され得る。ま
た、適用可能である場合、本明細書に提示されている様々なハードウェアコンポーネント
及び/又はソフトウェアコンポーネントは、本開示の要旨から離れることなく、ソフトウ
ェア、ハードウェア及び/又はその両方を備える複合コンポーネントに組み合わされ得る
。適用可能である場合、本明細書に提示されている様々なハードウェアコンポーネント及
び/又はソフトウェアコンポーネントは、本開示の範囲から離れることなく、ソフトウェ
ア、ハードウェア及び/又はその両方を備えるサブコンポーネントに分離され得る。加え
て、適用可能である場合、ソフトウェアコンポーネントは、ハードウェアコンポーネント
として実装され得るし、また、逆も同じであると考えられる。
【0179】
前述の開示は、本開示を正確な形式に限定し、又は、開示されている特定の使用領域に
限定する意図はない。従って、様々な代替的な実施形態及び/又は本開示への変更が、こ
こにおいて明示的に説明されていようと暗示されていようと、開示に即して可能であると
考えられる。本開示の上記の実施形態をもってすれば、当業者は、本開示の範囲を離れる
ことなく、形態及び詳細に変更がなされ得ると利認識するであろう。従って、本開示は、
クレームによってのみ限定される。
図1A
図1B
図1C
図2A
図2B
図3
図4
図5A
図5B
図6A
図6B
図7
図8A
図8B
図9A
図9B
図9C
図9D
図9E
図9F
図10A
図10B
図11A
図11B
図11C
図11D
図12
図13
図14
図15
図16A
図16B
図16C
図17
図18A
図18B
図18C
図19