(57)【要約】      （修正有）【課題】異なる市場セグメントが、市場のニーズに合った異なる態様のインタコネクトアーキテクチャを要求する。最大限の省電力化で可能な限り高い性能を提供する。【解決手段】マスタデバイスは、電力サプライと、電力サプライのインピーダンスを検出する検出ユニットとを含む。インバータは、クロック信号の第一ステージで電力サプライへの第一経路を提供する。さらにクロック信号の第二ステージで第一グランドラインへの第二経路を提供する。バスインタフェースリンクが、マスタデバイスをスレーブデバイスに結合し、加えて、双方向通信ラインが結合される。ゲーティング構成要素が、第一経路を通じて電力サプライへの第二グランドラインを提供する。さらに、受信器が、マスタデバイスから伝送される複数のクロックデータ信号からビット値を決定する。【選択図】図１
2014183576.tif 000002
【特許請求の範囲】
【請求項１】
電力サプライ、
前記電力サプライのインピーダンスを検出する、検出ユニット、及び
クロック信号の第一ステージで前記電力サプライへの第一経路を提供し、クロック信号の第二ステージで第一グランドラインへの第二経路を提供する、インバータ、
を含む、マスタデバイスと、
前記マスタデバイスをスレーブデバイスに結合するバスインタフェースリンクを備え、
前記スレーブデバイスが、
前記バスインタフェースリンクを通じて前記マスタデバイスから複数の幅の狭いクロックパルスおよび幅の広いクロックパルスを受信する、双方向通信ライン、
前記電力サプライへの前記第一経路から前記双方向通信ラインを通って第二グランドラインへの導電性経路を提供する、ゲーティング構成要素、及び
前記マスタデバイスから伝送される複数の幅の狭いクロックパルスおよび幅の広いクロックパルスに関連付けられたビット値を割り当てる、受信器、
を有するシステム。
【請求項２】
前記マスタデバイスがバスマスタを含む、請求項１に記載のシステム。
【請求項３】
前記スレーブデバイスがデジタルマイクロホンを含む、請求項１又は２に記載のシステム。
【請求項４】
前記インバータがＣＭＯＳインバータを含む、請求項１から３のいずれか１項に記載のシステム。
【請求項５】
前記マスタデバイスがバスクロックをさらに含む、請求項１から４のいずれか１項に記載のシステム。
【請求項６】
前記ゲーティング構成要素がトランジスタを含む、請求項１から５のいずれか１項に記載のシステム。
【請求項７】
前記検出ユニットが前記電力サプライのインピーダンスの変化を検出しうる、請求項１から６のいずれか１項に記載のシステム。
【請求項８】
前記双方向通信ラインが、前記複数の幅の狭いクロックパルスおよび幅の広いクロックパルスならびに前記電力サプライからの電流を同時に伝搬しうる、請求項１から７のいずれか１項に記載のシステム。
【請求項９】
前記割り当てられたビット値の一部分がスレーブデバイスへのコマンドである、請求項１から８のいずれか１項に記載のシステム。
【請求項１０】
グランドラインと電力レールとに結合されるように結合された整流器であり、負のクロック電圧が前記整流器に結合されたときに前記グランドラインが放電することを可能にし、正のクロック電圧が前記整流器に結合されたときに前記電力レールが充電することを可能にする、前記整流器、及び
クロックデータ信号に応答してデータを伝送する、双方向通信ラインのセット、
を含むデバイス。
【請求項１１】
グランドラインと電力レールとをさらに含む、請求項１０に記載のデバイス。
【請求項１２】
前記双方向通信ラインのセットの少なくとも一つが、電力サプライのインピーダンスを変化させることを引き出すことによりデータをアップリンクする、請求項１０又は１１に記載のデバイス。
【請求項１３】
前記双方向通信ラインのセットの少なくとも一つが、電力サプライのインピーダンスを変化させることを控えることによりデータをアップリンクする、請求項１０から１２のいずれか１項に記載のデバイス。
【請求項１４】
各受信クロックデータ信号にビット値を割り当てる受信器をさらに含む、請求項１０から１３のいずれか１項に記載のデバイス。
【請求項１５】
前記整流器がバスインタフェースリンクに結合される、請求項１０から１４のいずれか１項に記載のデバイス。
【請求項１６】
前記双方向通信ラインのセットが、スレーブデバイス内で電源からグランドラインへの経路を提供しうるゲーティングエレメントに結合される、請求項１０から１５のいずれか１項に記載のデバイス。
【請求項１７】
第一電力サプライの第一インピーダンスを検出する、第一検出ユニット、
クロック信号の第一ステージで前記第一電力サプライへの第一経路を提供し、クロック信号の第二ステージで第一グランドラインへの第二経路を提供する、第一インバータ、
第二電力サプライの第二インピーダンスを検出する、第二検出ユニット、
前記クロック信号の前記第二ステージで前記第二電力サプライへの第三経路を提供し、前記クロック信号の前記第一ステージで第二グランドラインへの第四経路を提供する、第二インバータ、及び
前記第一インバータに入力されたクロック信号を反転するために前記第一インバータに結合された、第三インバータを備える、
デバイス。
【請求項１８】
マスタクロックをさらに含む、請求項１７に記載のデバイス。
【請求項１９】
前記第一インバータおよび前記第二インバータが、それぞれ相補的なトランジスタのセットを含む、請求項１７または１８に記載のデバイス。
【請求項２０】
二つのスレーブデバイスにクロックデータ信号を伝送するための第一電気的接続と第二電気的接続とをさらに含む、請求項１７から１９のいずれか１項に記載のデバイス。
【請求項２１】
クロックデータ信号を生成するクロックをさらに含む、請求項１７から２０のいずれか１項に記載のデバイス。
【請求項２２】
受信器、アンテナ、またはエンコーダの少なくとも一つをさらに含む、請求項１７から２１のいずれか１項に記載のデバイス。
【請求項２３】
スレーブデバイスにアクセス可能である電力サプライを含むマスタデバイスと前記スレーブデバイスとの間にバスインタフェースリンクを形成するステップ、
前記スレーブデバイスの双方向通信ラインを前記バスインタフェースリンクに結合するステップ、
前記バスインタフェースリンクおよび前記双方向通信ラインを通じて前記マスタデバイスから前記スレーブデバイスに複数のクロックデータ信号をダウンリンクするステップ、及び、
前記電力サプライから電流を引き出すことで第一ビット値を送信し、前記電力サプライから電流を引き出すことを控えることで第二ビット値を送信することにより、前記スレーブデバイスの前記双方向通信ラインに沿って前記バスインタフェースリンクに沿って前記マスタデバイスに少なくとも一つのデータ信号をアップリンクするステップを含む、
方法。
【請求項２４】
前記スレーブデバイスから伝送されたのが前記第一ビット値か前記第二ビット値かを決定するために前記電力サプライのインピーダンス値をモニタするステップをさらに含む、請求項２３に記載の方法。
【請求項２５】
クロック信号の立ち下がりエッジで前記電力サプライのインピーダンス値をモニタするステップをさらに含む、請求項２３または２４に記載の方法。
【請求項２６】
前記マスタデバイス内のクロック周波数から前記バスインタフェースリンクに沿ったクロック周波数を小さくし、各クロックパルスの所望の幅に対応するクロックサイクル期間にわたり前記バスインタフェースリンクに沿ってクロック電圧を高にセットすることにより、変動幅を有する複数のクロックパルスを生成するステップをさらに含む、請求項２３から２５のいずれか１項に記載の方法。
【請求項２７】
配線に結合されるように構成された集積回路（ＩＣ）を備え、
前記ＩＣは、前記配線との間で情報を伝送および受信する入力／出力（Ｉ／Ｏ）論理を含み、
前記配線に情報を伝送する前記Ｉ／Ｏ論理は、第一データ論理レベルを表現する第一デューティサイクルを有する第一クロック信号を伝送し、第二データ論理レベルを表現する第二デューティサイクルを有する第二クロック信号を伝送し、前記第二デューティサイクルは前記第一デューティサイクルと異なる、前記Ｉ／Ｏ論理を含む、
デバイス。
【請求項２８】
前記配線に情報を伝送する前記Ｉ／Ｏ論理が、８ｂ１０ｂ符号化データを提供する前記Ｉ／Ｏ論理をさらに含み、前記８ｂ１０ｂ符号化データが、前記第一デューティサイクルを有する前記第一クロック信号と、前記第二デューティサイクルを有する前記第二クロック信号とを含む、請求項２７に記載のデバイス。
【請求項２９】
前記ＩＣが、前記配線を通じて受信器デバイスに結合され、前記受信器デバイスが、前記配線から前記第一クロック信号および前記第二クロック信号を受信し、前記第一デューティサイクルに基づいて前記第一クロック信号が前記第一データ論理レベルを表現することを決定し、前記第二デューティサイクルに基づいて前記第二クロック信号が前記第二データ論理レベルを表現することを決定する、受信器Ｉ／Ｏ論理を含む、請求項２７または２８に記載のデバイス。
【請求項３０】
前記受信器デバイスが、第一マイクロホンを含み、前記ＩＣが、第二配線を通じて第二マイクロホンに結合する第二Ｉ／Ｏ論理をさらに含み、前記第二Ｉ／Ｏ論理が、データを表現するために前記第二配線で前記第二マイクロホンに伝送されるクロック信号のデューティサイクルを変動させる、請求項２９に記載のデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、コンピューティングシステム、特にチップ間通信に関する（しかしこれに限らない）。
【図面の簡単な説明】
【０００２】
【図１】マルチコアプロセッサを含むコンピューティングシステムのブロック図の実施形態である。
【図２】低電力コンピューティングプラットフォームの実施形態である。
【図３】いずれも本開示と一致する、受信器に結合されたバスマスタの実施形態である。
【図４】本開示と一致する受信器の実施形態である。
【図５】本開示と一致する受信器内のキャパシタの電圧がクロックパルストレインの様々なクロックパルスの関数として変化する様子を示したグラフである。
【図６】本開示と一致する回路を有する複数のデジタルマイクロホンに結合されたバスマスタである。
【図７】本開示と一致する受信器に結合されたデジタルマイクロホンの実施形態である。
【図８】本開示と一致する方法の実施形態である。
【発明を実施するための形態】
【０００３】
以下の説明では、本開示の完全な理解を提供するために、具体的タイプのプロセッサおよびシステム構成、具体的ハードウェア構造、具体的アーキテクチャおよびマイクロアーキテクチャの詳細、具体的レジスタ構成、具体的命令タイプ、具体的システム構成要素、具体的計測値／高さ、具体的プロセッサパイプラインステージおよび動作などの例等の多数の具体的詳細が記載される。しかし、これらの具体的詳細が本開示を実践するために使用される必要はないことは、当業者に明らかとなるだろう。他の場合には、具体的および代替的なプロセッサアーキテクチャ、記載されたアルゴリズムのための具体的な論理回路／コード、具体的ファームウェアコード、具体的インタコネクト動作、具体的論理構成、具体的製造技術および材料、具体的コンパイラの実装、アルゴリズムのコードでの具体的表示、具体的パワーダウンおよびゲーティング技術／論理、ならびにコンピュータシステムのその他の具体的動作の詳細等の周知の構成要素または方法は、本開示を不必要に不明瞭にすることを回避するために詳述していない。
【０００４】
以下の実施形態は、コンピューティングプラットフォームまたはマイクロプロセッサ等の具体的集積回路におけるエネルギ節約およびエネルギ効率に関して記載されうるが、他の実施形態が他のタイプの集積回路および論理デバイスに適用されうる。本明細書に記載の実施形態の類似の技術および教示は、より良好なエネルギ効率およびエネルギ節約の利益を同様に享受しうる他のタイプの回路または半導体デバイスに適用されうる。例えば、本開示の実施形態は、デスクトップコンピュータシステムまたはＵｌｔｒａｂｏｏｋｓ（商標）に限定されない。また、ハンドヘルドデバイス、タブレット、他の薄型ノートブック、システムオンチップ（ＳＯＣ）デバイス、および埋め込みアプリケーション等の他のデバイスにおいても使用されうる。ハンドヘルドデバイスのいくつかの例には、携帯電話、インターネットプロトコルデバイス、デジタルカメラ、パーソナルデジタルアシスタント（ＰＤＡ）、およびハンドヘルドＰＣが含まれる。埋め込みアプリケーションには、マイクロコントローラ、デジタル信号プロセッサ（ＤＳＰ）、システムオンチップ、ネットワークコンピュータ（ＮｅｔＰＣ）、セットトップボックス、ネットワークハブ、広域ネットワーク（ＷＡＮ）スイッチ、または以下に教示される機能および動作を遂行しうるその他の任意のシステムが典型的に含まれる。さらに、本明細書に記載の装置、方法、およびシステムは、物理的コンピューティングデバイスに限定されず、エネルギ節約および効率のためのソフトウェア最適化にも関係しうる。以下の説明で直ちに明らかになるように、本明細書に記載の方法、装置、およびシステムの実施形態は（ハードウェアに関するものでも、ファームウェアに関するものでも、ソフトウェアに関するものでも、またはその組み合わせに関するものでも）、性能への配慮とのバランスをとった「環境保全技術」の未来に不可欠である。
【０００５】
コンピューティングシステムが進歩するにしたがい、その構成要素もより複雑化している。その結果、最適な構成要素の動作のための帯域幅要件が満たされることを確保するために、構成要素間で結合および通信するインタコネクトアーキテクチャも複雑さが増している。さらに、異なる市場セグメントが、市場のニーズに合った異なる態様のインタコネクトアーキテクチャを要求する。例えば、サーバはより高い性能を必要とする一方で、省電力化のためにモバイルエコシステムが全体の性能を犠牲にすることが可能なこともある。しかし、最大限の省電力化で可能な限り高い性能を提供することが、ほとんどの構造物の一つの目的である。以下では、本明細書に記載される開示の態様から潜在的に利益を受けると考えられるいくつかのインタコネクトについて論ずる。
【０００６】
図１を参照すると、マルチコアプロセッサを含むコンピューティングシステムのブロック図の実施形態が示される。プロセッサ１００は、マイクロプロセッサ、埋め込みプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、ネットワークプロセッサ、ハンドヘルドプロセッサ、アプリケーションプロセッサ、コプロセッサ、システムオンチップ（ＳＯＣ）、またはコードを実行するためのその他のデバイス等の任意のプロセッサまたは処理デバイスを含む。プロセッサ１００は、一実施形態では、少なくとも二つのコア、すなわちコア１０１および１０２を含み、これは非対称コアまたは対称コア（図の実施形態）を含みうる。しかしプロセッサ１００は、対称でも非対称でもよい任意の数の処理エレメントを含みうる。
【０００７】
一実施形態では、処理エレメントは、ソフトウェアスレッドをサポートするハードウェアまたは論理をさす。ハードウェア処理エレメントの例には、スレッドユニット、スレッドスロット、スレッド、プロセスユニット、コンテキスト、コンテキストユニット、論理的プロセッサ、ハードウェアスレッド、コア、および／もしくは実行状態またはアーキテクチャ状態等のプロセッサの状態を保持する能力がある他の任意のエレメントが含まれる。換言すれば、処理エレメントは、一実施形態では、ソフトウェアスレッド、オペレーティングシステム、アプリケーション、または他のコード等のコードと独立して関連付けられる能力がある任意のハードウェアをさす。物理プロセッサ（またはプロセッサソケット）は、コアまたはハードウェアスレッド等の任意の数の他の処理エレメントを潜在的に含む集積回路を典型的にさす。
【０００８】
コアは、独立したアーキテクチャ状態を維持する能力がある集積回路上に位置する論理であり、独立して維持される各アーキテクチャ状態が少なくともいくつかの専用の実行リソースと関連付けられるものをさすことが多い。コアとは対照的に、ハードウェアスレッドは、独立したアーキテクチャ状態を維持する能力がある集積回路上に位置する任意の論理であり、独立して維持されたアーキテクチャ状態が実行リソースへのアクセスを共有するものを典型的にさす。このように、あるリソースは共有され、他のリソースは一アーキテクチャ状態の専用である場合には、ハードウェアスレッドおよびコアの命名法の間の境界線が重なり合う。しかし、コアおよびハードウェアスレッドは、オペレーティングシステムが各論理的プロセッサ上の動作を個々にスケジューリングできる個々の論理的プロセッサとしてオペレーティングシステムにより見なされることが多い。
【０００９】
図１に示されるように、物理プロセッサ１００は、二つのコア、すなわちコア１０１および１０２を含む。ここで、コア１０１および１０２は、対称コア、すなわち同じ構成、機能ユニット、および／または論理を有するコアと考えられる。別の実施形態では、コア１０１は、アウトオブオーダプロセッサコアを含む一方で、コア１０２はインオーダプロセッサコアを含む。しかし、コア１０１および１０２は、ネイティブコア、ソフトウェア管理されたコア、ネイティブ命令セットアーキテクチャ（ＩＳＡ）を実行するように適合されたコア、トランスレートされた命令セットアーキテクチャ（ＩＳＡ）を実行するように適合されたコア、コデザインされたコア、またはその他の周知のコア等の任意のタイプのコアから個々に選択されうる。ヘテロジニアスなコア環境（すなわち非対称コア）では、一方または両方のコアでコードをスケジューリングまたは実行するために、バイナリトランスレーション等の何らかの形のトランスレーションが利用されうる。さらに議論を進めるため、図示の実施形態ではコア１０２のユニットは同様の様式で動作することから、コア１０１に示される機能ユニットを以下にさらに詳述する。
【００１０】
図示のように、コア１０１は、ハードウェアスレッドスロット１０１ａおよび１０１ｂとも呼称されうる二つのハードウェアスレッド１０１ａおよび１０１ｂを含む。したがって一実施形態では、オペレーティングシステム等のソフトウェア実体は、プロセッサ１００を、四つの別々のプロセッサ、すなわち四つのソフトウェアスレッドを同時に実行する能力がある四つの論理的プロセッサまたは処理エレメントとして潜在的に見る。上に暗示されるように、第一スレッドはアーキテクチャ状態レジスタ１０１ａに関連付けられ、第二スレッドはアーキテクチャ状態レジスタ１０１ｂに関連付けられ、第三スレッドはアーキテクチャ状態レジスタ１０２ａに関連付けられ、第四スレッドはアーキテクチャ状態レジスタ１０２ｂに関連付けられうる。ここで、各アーキテクチャ状態レジスタ（１０１ａ、１０１ｂ、１０２ａ、および１０２ｂ）は、上述の通り、処理エレメント、スレッドスロット、またはスレッドユニットと呼称されうる。示されるように、アーキテクチャ状態レジスタ１０１ａは、アーキテクチャ状態レジスタ１０１ｂに複製されるので、個々のアーキテクチャ状態／コンテキストを論理的プロセッサ１０１ａおよび論理的プロセッサ１０１ｂのために格納することができる。コア１０１においては、命令ポインタならびにアロケータおよびリネーマブロック１３０のリネーミング論理等の他のより小さなリソースも、スレッド１０１ａおよび１０１ｂに対して複製されうる。リオーダ／リタイアメントユニット１３５のリオーダバッファ、ＩＬＴＢ１２０、ロード／ストアバッファ、およびキュー等のいくつかのリソースが、パーティショニングを通じて共有されうる。汎用内部レジスタ、ページテーブルベースレジスタ（単数または複数）、低レベルデータキャッシュおよびデータ−ＴＬＢ１１５、実行ユニット（単数または複数）１４０、ならびにアウトオブオーダユニット１３５の部分等の他のリソースが潜在的に完全に共有される。
【００１１】
プロセッサ１００は、処理エレメントにより完全に共有され、パーティショニングを通じて共有され、または処理エレメントの専用でありうる、その他のリソースを含むことが多い。図１には、プロセッサの例示的論理的ユニット／リソースを有する純粋に例示としてのプロセッサの実施形態が示される。プロセッサは、これらの機能ユニットの任意のものを含みまたは省略してもよいとともに、図示されていない他の任意の周知の機能ユニット、論理、またはファームウェアを含んでもよいことに注意されたい。示されるように、コア１０１は、簡単化された、代表的なアウトオブオーダ（ＯＯＯ）プロセッサコアを含む。しかし、異なる実施形態ではインオーダプロセッサが利用されうる。ＯＯＯコアは、実行される／とられる分岐を予測する分岐ターゲットバッファ１２０と、命令についてのアドレストランスレーションエントリを格納する命令トランスレーションバッファ（Ｉ−ＴＬＢ）１２０とを含む。
【００１２】
コア１０１は、フェッチユニット１２０に結合されたデコードモジュール１２５を更に含み、フェッチされたエレメントをデコードする。一実施形態では、フェッチ論理は、スレッドスロット１０１ａ、１０１ｂにそれぞれ関連付けられた個々のシーケンサを含む。通常、コア１０１は、プロセッサ１００上で実行可能な命令を定義／特定する第一ＩＳＡに関連付けられる。第一ＩＳＡの一部である機械コード命令は、遂行されるべき命令または動作を参照／指定する命令の部分（オペコードと呼称される）を含むことが多い。デコード論理１２５は、これらの命令をそのオペコードから認識し、第一ＩＳＡにより定義される処理のためにデコードされた命令をパイプラインで送る回路を含む。例えば、以下にさらに詳述するように、一実施形態では、デコーダ１２５は、トランザクションの命令等の具体的命令を認識するようにデザインまたは適合される論理を含む。デコーダ１２５による認識の結果、アーキテクチャまたはコア１０１は、適切な命令に関連付けられたタスクを遂行するために具体的な予め定義されたアクションを行う。一つまたは複数の命令に応答して、本明細書に記載されるタスク、ブロック、動作、および方法のいずれかが遂行されればよく、命令のいくつかは新しい命令または古い命令でありうることに注意することが重要である。一実施形態では、デコーダ１２６は同じＩＳＡ（またはそのサブセット）を認識することに注意されたい。あるいは、ヘテロジニアスなコア環境では、デコーダ１２６は第二ＩＳＡ（第一ＩＳＡのサブセットまたは別個のＩＳＡ）を認識する。
【００１３】
一例では、アロケータおよびリネーマブロック１３０は、命令処理結果を格納するためのレジスタファイル等のリソースをリザーブするためのアロケータを含む。しかし、スレッド１０１ａおよび１０１ｂは潜在的にアウトオブオーダ実行の能力があり、その場合アロケータおよびリネーマブロック１３０が命令結果を追跡するリオーダバッファ等の他のリソースもリザーブする。ユニット１３０は、プログラム／命令参照レジスタをプロセッサ１００の内部の他のレジスタにリネームするレジスタリネーマも含みうる。リオーダ／リタイアメントユニット１３５は、アウトオブオーダ実行およびアウトオブオーダ実行された命令の後のインオーダリタイアメントをサポートする、上述のリオーダバッファ、ロードバッファ、およびストアバッファ等の構成要素を含む。
【００１４】
一実施形態では、スケジューラおよび実行ユニット（単数または複数）ブロック１４０は、実行ユニットに命令／動作をスケジューリングするスケジューラユニットを含む。例えば、浮動小数点命令が、利用可能な浮動小数点実行ユニットを有する実行ユニットのポートにスケジューリングされる。実行ユニットに関連付けられるレジスタファイルも、情報命令処理結果を格納するために含まれる。例示的な実行ユニットは、浮動小数点実行ユニット、整数実行ユニット、ジャンプ実行ユニット、ロード実行ユニット、ストア実行ユニット、および他の周知の実行ユニットを含む。
【００１５】
低レベルデータキャッシュおよびデータトランスレーションバッファ（Ｄ−ＴＬＢ）１５０が、実行ユニット（単数または複数）１４０に結合される。データキャッシュは、潜在的にメモリコヒーレンシ状態において保持されるデータオペランド等の最近使用された／動作がなされたエレメントを格納するものである。Ｄ−ＴＬＢは、最近の仮想／リニアアドレスから物理アドレスへのトランスレーションを格納するものである。具体的例として、プロセッサは、物理メモリを複数の仮想ページに分割するページテーブル構造を含みうる。
【００１６】
ここでは、コア１０１および１０２は、オンチップインタフェース１１０に関連付けられた第二レベルのキャッシュ等のより高レベルのまたはより遠いキャッシュへのアクセスを共有する。より高レベルのまたはより遠いとは、実行ユニット（単数または複数）から増加するまたはより遠くなるキャッシュレベルをさすことに注意されたい。一実施形態では、より高レベルのキャッシュは、第二または第三レベルのデータキャッシュ等のラストレベルのデータキャッシュ、すなわちメモリ階層またはプロセッサ１００の最後のキャッシュである。しかし、より高レベルのキャッシュはそれに限定されず、命令キャッシュに関連付けられまたはこれを含んでもよい。トレースキャッシュ、すなわちあるタイプの命令キャッシュが、最近デコードされたトレースを格納するためにデコーダ１２５の後に代わりに結合されてもよい。ここでは、命令は、いくつかのマイクロ命令（マイクロ動作）にデコードしうるマクロ命令（すなわちデコーダにより認識される一般的命令）を潜在的にさす。
【００１７】
図示の構成では、プロセッサ１００は、オンチップインタフェースモジュール１１０も含む。歴史的に、以下でさらに詳述するメモリコントローラが、コンピューティングシステムのプロセッサ１００の外部に含まれている。このシナリオでは、オンチップインタフェース１１０が、システムメモリ１７５、チップセット（メモリ１７５に接続するメモリコントローラハブおよび周辺機器を接続するＩ／Ｏコントローラハブを含むことが多い）、メモリコントローラハブ、ノースブリッジ、または他の集積回路等のプロセッサ１００の外部のデバイスと通信することとなる。そしてこのシナリオでは、バス１０５は、マルチドロップバス、ポイントツーポイントインタコネクト、シリアルインタコネクト、パラレルバス、コヒーレント（例えばキャッシュコヒーレント）バス、レイヤードプロトコルアーキテクチャ、差動バス、およびＧＴＬバス等の任意の周知のインタコネクトを含みうる。
【００１８】
メモリ１７５は、プロセッサ１００の専用であってもシステム内の他のデバイスと共有されてもよい。メモリ１７５のタイプの一般的な例は、ＤＲＡＭ、ＳＲＡＭ、不揮発性メモリ（ＮＶメモリ）、および他の周知のストレージデバイスを含む。デバイス１８０は、メモリコントローラハブに結合されたグラフィックアクセラレータ、プロセッサまたはカード、Ｉ／Ｏコントローラハブに結合されたデータストレージ、ワイヤレストランシーバ、フラッシュデバイス、オーディオコントローラ、ネットワークコントローラ、または他の周知のデバイスを含みうることに注意されたい。
【００１９】
しかし、最近ではＳＯＣ等、より多くの論理およびデバイスが一つのダイに集積されるに伴い、これらのデバイスの各々がプロセッサ１００に組み込まれうる。例えば一実施形態では、メモリコントローラハブが、プロセッサ１００と同じパッケージおよび／またはダイ上にある。ここで、コアの一部分（オンコア部分）１１０は、メモリ１７５またはグラフィックデバイス１８０等の他のデバイスとインタフェースするための一つ以上のコントローラ（単数または複数）を含む。このようなデバイスとインタフェースするためのインタコネクトおよびコントローラを含む構成は、オンコア（またはアンコア構成）と呼称されることが多い。一例として、オンチップインタフェース１１０は、オンチップ通信のためのリングインタコネクトおよびオフチップ通信のための高速シリアルポイントツーポイントリンク１０５を含む。しかしＳＯＣ環境においては、高機能性および低電力消費の小型フォームファクタを提供するために、ネットワークインタフェース、コプロセッサ、メモリ１７５、グラフィックプロセッサ１８０、および他の任意の周知のコンピュータデバイス／インタフェース等のさらに多くのデバイスが一つのダイまたは集積回路上に集積されうる。
【００２０】
一実施形態では、プロセッサ１００は、本明細書に記載の装置および方法をサポートするためまたはこれとインタフェースするために、アプリケーションコード１７６をコンパイル、トランスレート、および／または最適化するためにコンパイラ、最適化、および／またはトランスレータコード１７７を実行する能力がある。コンパイラは、ソーステキスト／コードをターゲットテキスト／コードにトランスレートするプログラムまたはプログラムのセットを含むことが多い。通常は、コンパイラによるプログラム／アプリケーションコードのコンパイルは、複数のフェーズおよびパスでなされ、高レベルのプログラミング言語コードが低レベルの機械またはアセンブリ言語コードに変換される。しかし、単純なコンパイルのためにシングルパスのコンパイラがなお利用されうる。コンパイラは、任意の周知のコンパイル技術を利用し、字句解析、前処理、構文解析、意味解析、コード生成、コード変換、およびコード最適化等の任意の周知のコンパイラ動作を遂行しうる。
【００２１】
より大きいコンパイラは複数のフェーズを含むことが多いが、これらのフェーズは、（１）一般に構文処理、意味処理、および一部の変換／最適化が行われるフロントエンドと、（２）一般に解析、変換、最適化、およびコード生成が行われるバックエンドとの二つの一般的フェーズに含まれることがほとんどである。一部のコンパイラはミドルエンドと呼ばれるものを含むが、これはコンパイラのフロントエンドとバックエンドとの間の区別が曖昧であることを示す。その結果、コンパイラの挿入、関連付け、生成、またはその他の動作への言及は、上述したフェーズまたはパスのいずれかで行われうるとともに、コンパイラの他の任意の周知のフェーズまたはパスで行われうる。例示として、コンパイラは、コンパイルの一つ以上のフェーズに動作、呼び出し、関数などを潜在的に挿入し、例えばコンパイルのフロントエンドフェーズに呼び出し／動作を挿入し、その後変換フェーズの間に呼び出し／動作をより低レベルのコードに変換する。動的コンパイル中には、コンパイラコードまたは動的最適化コードがこのような動作／呼び出しを挿入しうるとともに、コードをランタイム中に実行のために最適化しうることに注意されたい。具体的実例として、バイナリコード（コンパイル済みコード）がランタイム中に動的に最適化されうる。ここでは、プログラムコードは、動的最適化コード、バイナリコード、またはその組み合わせを含みうる。
【００２２】
コンパイラと同様に、バイナリトランスレータ等のトランスレータは、コードを最適化および／またはトランスレートするために静的または動的にコードをトランスレートする。したがって、コード、アプリケーションコード、プログラムコード、または他のソフトウェア環境の実行への言及は、（１）プログラムコードをコンパイルするため、ソフトウェア構造を維持するため、他の動作を遂行するため、コードを最適化するため、またはコードをトランスレートするためのコンパイラプログラム（単数または複数）、最適化コードオプティマイザ、またはトランスレータの動的または静的実行；（２）最適化／コンパイルされているアプリケーションコード等の動作／呼び出しを含むメインプログラムコードの実行；（３）ソフトウェア構造を維持するため、他のソフトウェアに関係する動作を遂行するため、またはコードを最適化するためのメインプログラムコードに関連付けられたライブラリ等の他のプログラムコードの実行；または（４）これらの組み合わせをさしうる。
【００２３】
一つのインタコネクトファブリックアーキテクチャは、Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ（ＰＣＩ）Ｅｘｐｒｅｓｓ（ＰＣＩｅ）アーキテクチャを含む。ＰＣＩｅの主な目標は、クライアント（デスクトップおよびモバイル）、サーバ（スタンダードおよびエンタープライズ）、ならびに埋め込みおよび通信デバイスの複数の市場セグメントにわたり、異なるベンダからの構成要素およびデバイスがオープンアーキテクチャにおいて相互動作することを可能にすることである。ＰＣＩ  Ｅｘｐｒｅｓｓは、多様な未来のコンピューティングおよび通信プラットフォームのために定義された高性能、汎用Ｉ／Ｏインタコネクトである。ＰＣＩ使用モデル、ロードストアアーキテクチャ、およびソフトウェアインタフェース等の一部のＰＣＩ属性は、その改訂を通して維持されているが、以前のパラレルバス実装は、高度にスケーラブルな完全シリアルインタフェースに置き換えられている。ＰＣＩ  Ｅｘｐｒｅｓｓのより最近のバージョンは、ポイントツーポイントインタコネクト、スイッチベースの技術、およびパケット化プロトコルの進歩を利用して、新たなレベルの性能および特徴を提供する。電力管理、クオリティオブサービス（ＱｏＳ）、ホットプラグ／ホットスワップサポート、データ保全性、およびエラーハンドリングは、ＰＣＩ  Ｅｘｐｒｅｓｓによりサポートされる高度な特徴の一部である。
【００２４】
図２を参照すると、低電力コンピューティングプラットフォームの実施形態が図示される。一実施形態では、低電力コンピューティングプラットフォーム２００は、電話、スマートフォン、タブレット、超小型軽量ノートブック、ノートブック、デスクトップ、サーバ、伝送デバイス、受信デバイス、または他の任意の周知または利用可能なコンピューティングプラットフォーム等のユーザエンドポイントを含む。図のプラットフォームは、複数の異なるデバイスを結合するいくつかの異なるインタコネクトを図示する。これらのインタコネクトの例示的議論を、実装および包含の選択肢を提供するために以下に提供する。しかし、低電力プラットフォーム２００は、図示されたインタコネクトまたはデバイスを包含または実装することを要しない。さらに、具体的に示されていないその他のデバイスおよびインタコネクト構造が含まれてもよい。
【００２５】
図の中央から開始して、プラットフォーム２００はアプリケーションプロセッサ２０５を含む。これは、本明細書に記載のプロセッサ構成または当産業で周知のプロセッサ構成の一バージョンであればよい低電力プロセッサを含むことが多い。一例として、プロセッサ２００は、システムオンチップ（ＳｏＣ）として実装される。具体的実例として、プロセッサ２００は、カリフォルニア州サンタクララ、Ｉｎｔｅｌ  Ｃｏｒｐｏｒａｔｉｏｎから入手可能なｉ３、ｉ５、ｉ７等のＩｎｔｅｌ（登録商標）Ａｒｃｈｉｔｅｃｔｕｒｅ  Ｃｏｒｅ（商標）−ベースのプロセッサまたは別のそのようなプロセッサを含む。しかし、カリフォルニア州サニーベール、Ａｄｖａｎｃｅｄ  Ｍｉｃｒｏ  Ｄｅｖｉｃｅｓ，Ｉｎｃ．（ＡＭＤ）から入手可能なもの等の他の低電力プロセッサ、カリフォルニア州サニーベール、ＭＩＰＳ  Ｔｅｃｈｎｏｌｏｇｉｅｓ，Ｉｎｃ．からのＭＩＰＳベースのデザイン、ＡＲＭ  Ｈｏｌｄｉｎｇｓ，Ｌｔｄ．もしくはそのカスタマー、またはそのライセンシーもしくは採用者からライセンスされたＡＲＭベースのデザインが、Ａｐｐｌｅ  Ａ５／Ａ６プロセッサ、Ｑｕａｌｃｏｍｍ  Ｓｎａｐｄｒａｇｏｎプロセッサ、またはＴＩ  ＯＭＡＰプロセッサ等の他の実施形態において代わりに存在しうることを理解されたい。
【００２６】
電子機器の集積回路（ＩＣ）およびデバイスの間の制御および通信のために、シリアルインタフェースが用いられる。電子機器の多くの集積回路およびデバイスは、構成要素および回路基板にとっての大きな費用増加原因である高いピン数を有する。例えば従来の携帯電話のＩＣ間のシリアルインタフェースは、インタフェースあたり二本の配線を特徴とする。特に従来の携帯電話はクロックおよび双方向データピンを含み、場合によってチップが追加されて、バス特有の電力サプライピンを可能にする。例えばＭＩＰＩ  ＲＦＦＥおよびＩ２Ｃ規格のプロトコルは、インタフェースあたり二本の配線を提供する。
【００２７】
実際には、いくつかのデジタルマイクロホンインタフェースは、マイクロホンへの四つの接続、すなわち電力接続、グランド接続、クロック接続、およびデータ接続を必要とする。したがって現在のデジタルマイクロホンインタフェース技術は、グランドおよび電力／信号のための二ピン接続を特徴とするアナログインタフェースからの後退である。
【００２８】
本開示は、高いデータビットレート（例えばＭＢ／ｓビットレート）での全二重動作能力がある単線双方向インタフェースを提供する。加えて本開示は、二つの物理ピンを使用してデジタルマイクロホンを実装することを可能にする。さらに本開示は、二つの同一のマイクロホンがノイズ除去のために同じバスインタフェースリンクに取り付けられることを可能にする実施形態を提供する。有利に、本明細書に開示されるマスタデバイスおよび受信器スレーブデバイスが、少なくとも部分的に、デジタルマイクロホン、パーソナルコンピュータ、テレビジョン、トラックパッド、コンピュータマウス、ＧＰＳ受信機、ＳＩＭカードリーダ、ブルートゥースコネクタなど等であるがこれに限定されない他のデバイス内に実装されうる。
【００２９】
図３は、デジタルマイクロホン３５０に結合されたバスマスタ３００の実施形態を示すが、これらはいずれも本開示と一致するものである。しかし、いずれのデバイスもその構成要素も、本開示を実践することを要しない。図のように、バスマスタ３００は、バスインタフェース３２０を介してデジタルマイクロホン３５０に結合される。いくつかの実施形態では、図３に示されるバスマスタ３００およびデジタルマイクロホン３５０は、いずれも携帯電話（いくつかの実施形態では音声通信能力を有するユーザエンドポイント（ＵＥ）とも呼称される）の構成要素である。より具体的には、バスマスタ３００およびデジタルマイクロホン３５０はいずれも、本開示のいくつかの実施形態によるデジタルマイクロホンの構成要素である。
【００３０】
いくつかの実施形態では、本開示と一致するバスマスタ（例えばバスマスタ３００）は、スレーブ受信器デバイス（例えばデジタルマイクロホン３５０）から音声データを受信し、受信データを処理し、音声データを（例えば電波の形で）別のデバイスの受信器に伝送する、受信器およびアンテナ（いずれも図示せず）を含みうる。
【００３１】
いくつかの実施形態では、バスマスタ３００は、各デバイス間の同期を維持するためにクロック信号の形のデータを符号化シンボルの形でデジタルマイクロホン３５０に連続的に伝送（例えばダウンリンク）する。加えて、デジタルマイクロホン３５０が、データ（例えば音声データ）をバスマスタ３００に連続的に送信しうる。
【００３２】
通常の技術を有する当業者は、デジタルマイクロホン３５０が内部のエレメント（例えば振動板等）に当たって振動させうる音声信号を受信しうることを理解しうる。振動がサンプリング周波数にしたがって電気信号に転換されうる。
【００３３】
例えば、本開示と一致するデジタルマイクロホンは、２０ｋＨｚ、４４ｋＨｚ、４８ｋＨｚ、および９６ｋＨｚ等の従来のサンプリング周波数にしたがって音声データ（例えば話し声）をサンプリングしうる。
【００３４】
さらに、本開示と一致するデジタルマイクロホンまたは他のスレーブ受信器デバイスは、デジタルマイクロホンがバスマスタデバイスにデータを送り返すことを要求しうるバスマスタにより発行されたコマンド（単数または複数）にしたがってアクションを遂行しうる。
【００３５】
バスマスタ３００は、ＣＰＵのコマンド下にありうる他の構成要素（例えばスレーブ）との直接の通信を可能にしうる。さらに、バスマスタ３００は、アドレス信号、制御信号、およびデータ信号が流れるバスインタフェースリンク３２０を制御しうる。いくつかの実施形態では、デジタルマイクロホン３５０は、バスマスタ３００のスレーブユニットである。有利に、バスマスタリングは、オペレーティングシステムのデータ転送速度を増加させ、システムリソースを節約し、性能および応答時間を向上させうる。
【００３６】
本開示のいくつかの実施形態では、バスマスタ３００は、幅の広いクロックパルスおよび幅の狭いクロックパルスを作成し、これらのクロックパルスを、バスインタフェースリンク３２０をわたってスレーブデバイスへ、すなわちデジタルマイクロホン３５０へ伝送する。加えて、バスマスタ３００は、バスインタフェースリンク３２０に沿った周波数より高い周波数を有する内部クロックを有しうる。特に、いくつかの実施形態では、バスマスタ３００の内部クロックの周波数は、バスインタフェースリンク３２０に沿った周波数より大きな（例えば１０）整数である。
【００３７】
例えば、バスマスタクロックが１００Ｍｈｚの周波数を有する場合に、バスインタフェースリンク３２０に沿った周波数が１０Ｍｈｚであればよい。したがって、この例によれば、バスマスタクロックは、バスインタフェースリンク３２０に沿って伝搬される各クロックサイクル（例えばＢＵＳＣＬＫ）に対して十クロックサイクルを生成しうる。バスマスタ３００は、伝送するデータに基づいてＢＵＳＣＬＫ信号を生成する内部ステートマシンを含みうる。
【００３８】
いくつかの実施形態では、出力ドライバは、ＢＵＳＣＬＫラインを高および低にそれぞれ駆動しうる。加えて、以下でさらに詳述するように、クロック電圧は高でＶｃｃおよび低でＶｓｓでありうる（図６参照）。
【００３９】
バスマスタ３００は、幅の狭いクロックパルスを作成するために短時間ＢＵＳＣＬＫが高になるように指示した後、より長い時間期間ＢＵＳＣＬＫを低にしうる。例えば、ＢＵＳＣＬＫは、三クロックサイクルの間高になった後、七クロックサイクルの間低になるように指示されうる。
【００４０】
あるいは、幅の広いクロックパルスを作成するために、バスマスタ３００は、ＢＵＳＣＫＬＫに拡張された期間のクロックサイクル（例えば七クロックサイクル）の間高状態となることを指示した後、短期間のクロックサイクル（例えば三クロックサイクル）の間低状態になるように指示しうる。
【００４１】
さらに、いくつかの実施形態では、各十ＢＵＳＣＬＫサイクルにつき、一つの８ｂ／１０ｂシンボルに対応する１０ビットのデータが受信器スレーブユニット（例えばデジタルマイクロホン３５０）に伝送されうる。のちに８ｂ／１０ｂシンボルが、受信器スレーブユニットにおいて８ｂ／１０ｂデコーダによりデコードされうる。伝送される８ｂ／１０ｂシンボルは、８ｂ／１０ｂ符号化プロトコルにしたがってコンマ、データ、またはコマンドシンボルを含みうる。
【００４２】
通常の技術を有する当業者は、本開示が８ｂ／１０ｂ符号化プロトコルに限定されないことを理解しうる。したがって、バスマスタ３００がデータ、コマンドなどをスレーブ受信器（例えばデジタルマイクロホン３５０）に伝送することを可能にする他の符号化プロトコルが利用されてもよい。
【００４３】
図に示されるように、バスマスタ３００は、バスマスタ３００がスレーブデジタルマイクロホン３５０からアップリンク中に受信するのが１か０かを検出する回路を提供する検出ユニット３０２を含む。いくつかの実施形態では、検出ユニット３０２内のクロック周波数は、バスインタフェース３２０に沿った周波数よりはるかに高くなりうる。例えば検出ユニット３０２内のクロック周波数は、バスインタフェース３２０に沿ったクロック周波数より最大およそ十倍大きければよい。バスマスタ３００は、デジタルマイクロホン３５０にアクセス可能な電源３０３をさらに含む。
【００４４】
加えて、バスマスタ３００は、電源３０３およびグランド３０６（Ｖｓｓ）に結合されたＣＭＯＳインバータ３０４を含む。さらに、バスマスタ３００は、バスマスタ３００を含む集積回路が外部デバイスに接続することを可能にするＰＡＤ３０５を含む。
【００４５】
いくつかの実施形態では、ＣＭＯＳインバータ３０４内には、ＰＭＯＳトランジスタ３６５とＮＭＯＳトランジスタ３６６とが含まれる。典型的には、ＣＭＯＳインバータ３０４内のＰＭＯＳおよびＮＭＯＳトランジスタ３６５、３６６は、一方のトランジスタがオンであるときには他方のトランジスタがオフであるように相補的である。
【００４６】
図３にさらに示されるように、ＰＭＯＳトランジスタ３６５は電力サプライ３０３に結合され、電圧または電流がこれに印加されたときには電力が放出されてＰＡＤ３０５を充電する。
【００４７】
あるいは、ＮＭＯＳトランジスタ３６６はグランドに結合され、電圧または電流がこれに印加されたときにはＰＡＤ３０５がグランドに放電される。
【００４８】
いくつかの実施形態では、バスマスタ３００内のクロック信号が高のときには、ＰＭＯＳトランジスタ３６５がＰＡＤ３０５を電力サプライ３０３に接続する一方で、クロック信号が低のときには、ＮＭＯＳトランジスタ３６６がＰＡＤ３０５をグランドライン３０６に接続する。
【００４９】
デジタルマイクロホン３５０は、クロックデータ信号が受信され、データ信号が伝送されることを可能にする、双方向通信線３３５を含みうる。図のように、双方向通信線３３５は、ダウンリンク中にクロックデータ信号を受信し、アップリンク中にデータを伝送する。
【００５０】
ダウンリンク中には、バスマスタ３００がデジタルマイクロホン３５０にクロックデータ信号を伝送しうる。いくつかの実施形態では、データ信号は、クロックパルストレイン３２１により示されるようなクロックパルスの形で伝送される。図のように、クロックパルストレイン３２１は、複数の幅の狭いクロックパルスおよび幅の広いクロックパルス３０１、３０２を含む。
【００５１】
いくつかの実施形態では、以下でさらに詳述するように、デジタルマイクロホン３５０の受信器構成要素３３０が、バスマスタ３００から伝送されるのが１ビット値か０ビット値かを検出しうる。
【００５２】
アップリンク中には、デジタルマイクロホン３５０が、バスマスタ３００の電源３０３から電流を引き出すことまたは引き出すことを控えることによりデータを伝送しうる。いくつかの実施形態では、検出ユニット３０２が、各クロックサイクルの立ち下がりエッジ中にデジタルマイクロホン３５０から電力が引き出されているかを検出する。いくつかの実施形態では、検出ユニット３０２が、電源３０３のインピーダンスの差を検出しうる。
【００５３】
さらに、デジタルマイクロホン３５０は、電源３０３から電流を引き出すことを控えることにより、バスマスタ３００へアップリンク中に１を伝送しうる。したがって、伝送データトレイン３３１は、電源３０３から電力も（例えば低電力）電流も引き出されないことを示唆する低出力信号３１２を示す。
【００５４】
あるいは、デジタルマイクロホン３５０は、電源３０３から電流を引き出すことによりバスマスタ３００へアップリンク中に０を伝送する。いくつかの実施形態では、検出ユニット３０２が、各クロックサイクルの立ち下がりエッジ中にデジタルマイクロホン３５０が電源３０３から電流を引き出しているかを検出する。したがって、伝送データトレイン３３１は、電源から電力または電流が引き出されていることを示唆する高出力信号３１１を示す。
【００５５】
換言すると、デジタルマイクロホン３５０がアップリンク中に０を伝送するときには、トランジスタ３４０がバスマスタ３００の電力サプライ３０３からグランドライン３０６への導管を提供する。いくつかの実施形態では、電力サプライ３０３からデジタルマイクロホン３５０に電流が引き出される間に検出ユニット３０２が低インピーダンスを検出する。
【００５６】
これに対して、デジタルマイクロホン３５０がアップリンク中に１を伝送するときには、トランジスタ３４０が電力サプライ３０３からグランドライン３０６への電気的アクセスをブロックする。したがって、電流が引き出されていないときには検出ユニット３０２が高インピーダンスを検出しうる。
【００５７】
したがって、本明細書に記載されるスレーブ受信器（例えばデジタルマイクロホン３５０）からバスマスタ（例えばバスマスタ３００）へデータをアップリンクするプロセスは、本開示のいくつかの実施形態によれば、インピーダンスまたは振幅シフトキーイングとして特徴付けられうる。加えて、本明細書に記載される様式でのバスマスタからスレーブ受信器へデータをダウンリンクするプロセスは、フェーズシフトキーイングとして特徴付けられうる。
【００５８】
図４は、本開示と一致する受信器４００の実施形態を示す。受信器４００は、図３に示されるデジタルマイクロホン３５０内に実装されうる。いくつかの実施形態では、受信器４００は、バスマスタ等のマスタデバイスから符号化されたデータストリームを受信する。例えば受信されるデータストリームは、８ｂ／１０ｂ符号化されたものであればよい。
【００５９】
図のように、クロックデータ信号が、デジタルマイクロホン４００に入力され、経路（配線）４０１ａ、４０１ｂ、および４０１ｃに伝搬される。例えば、クロックデータ信号は経路４０１ｂに沿って伝搬されて、ＸＯＲゲート４０６への入力４０５および（経路４０８に沿って）ＡＮＤゲート４２５への入力になる。さらに、以下でさらに詳述するように、ＡＮＤゲート４２５の出力４１２がトランジスタ４１６（Ｍ１）に印加される。
【００６０】
加えて、ＸＯＲゲート４０６の出力４０７は、ＡＮＤゲート４２５、４３０に（経路４０９、４１０を介して）入力され、トランジスタ４１６、４１８に印加される各クロックパルスの極性を部分的に決定する。
【００６１】
加えて、受信器４００は、ＸＯＲゲート４０６の第二入力４０４にクロックデータ信号を伝送する経路を提供する。最も注意すべきことには、前述の経路は、二つのインバータ４０３、４１４および遅延エレメント４０２を含む。インバータ４０３、４１４および遅延エレメント４０２は、受信器４００内において伝搬されるクロック信号を遅延させる。
【００６２】
図のように、遅延エレメント４０２は、レジスタ４３５およびキャパシタ４３６を含む。いくつかの実施形態では、遅延量はレジスタ４３５およびキャパシタ４３６のサイズに依存する。
【００６３】
例えばレジスタ４３５は、２００ｋΩの抵抗を有し、キャパシタ４３６は１００Ｘ１０＾−１５（フェムト）ファラドのキャパシタンスを有していればよい。
【００６４】
いくつかの実施形態では、インバータ４０３、４１４および遅延エレメント４０２により、出力４１２から伝搬されるクロックパルス（Ｐ１）が、出力４１３からクロックパルス（Ｐ２）が伝搬される前に生じる。例えば、本開示のいくつかの実施形態によれば、Ｐ１クロックパルスはクロック信号の立ち上がりエッジで発せられうる一方で、Ｐ２クロックパルスはクロックサイクル（または信号）の立ち下がりエッジで発せられうる。
【００６５】
さらに、経路４０１ａはインバータ４１４を通じてクロック信号を伝搬し、インバータ４１４がクロック信号を反転し、ＡＮＤゲート４３０の入力４１１に信号を伝送する。ＡＮＤゲート４３０の出力は、トランジスタ４１８に伝搬される。最後に、経路４０１ｃは、クロック信号が図の受信器回路４００の下半分に伝搬する経路を提供する。
【００６６】
いくつかの実施形態では、クロック信号の立ち上がりエッジで、ＡＮＤゲート４２５の出力４１２が、短いクロックパルス（Ｐ１）をトランジスタ４１６に伝搬し、これがトランジスタ４１６をオンにし、その後Ｃ２キャパシタ４１５を放電する。加えて、短いＰ１パルスが発生すると、Ｃ２キャパシタ４１５がＲ２レジスタ４２９を通じて充電し始める。
【００６７】
いくつかの実施形態では、Ｒ２レジスタ４２９は１０ＭΩの抵抗を有する。さらに、Ｃ２キャパシタ４１５は、１００Ｘ１０＾−１５ファラドのキャパシタンスを有する。同様に、両トランジスタ４１６、４１８は、およそ１８０ｎｍの長さおよびおよそ５００ｎｍの幅を有するＮＭＯＳトランジスタである。
【００６８】
加えて、クロックサイクルの立ち下がりエッジでは、短いＰ２クロックパルスがＣ２キャパシタ４１５の一部分を放電し、Ｃ２キャパシタ４１５の電圧がＣ３キャパシタ４１７にコピーまたはサンプリングされる。したがって、Ｐ２クロックパルスが、Ｃ２キャパシタ４１５およびＣ３キャパシタ４１７に同じ電圧を持たせる。
【００６９】
換言すれば、Ｐ２クロックパルスが高のときには、Ｃ２キャパシタ４１５の電圧がＣ３キャパシタ４１７にコピーされる。これに対して、Ｐ２クロックパルスが低のときには、以下でさらに詳述するように、Ｃ３キャパシタ４１７の電圧が以前のクロックサイクルのＣ３キャパシタ４１７にわたる平均電圧と比較される。
【００７０】
さらに、Ｐ２クロックパルスが低のときには、クロック信号の立ち上がりエッジによりＣ２キャパシタ４１５が再充電するまでＣ２キャパシタ４１５が放電し続ける。いくつかの実施形態では、Ｃ２キャパシタ４１５のサイズは、Ｃ３キャパシタ４１７のサイズよりはるかに大きければよい。例えば、Ｃ２キャパシタ４１５のサイズは、Ｃ３キャパシタ４１７のサイズよりおよそ十倍大きければよい。例えば、Ｃ２キャパシタ４１５のキャパシタンスが１００Ｘ１０＾−１５ファラドである一方で、Ｃ３キャパシタ４１７のキャパシタンスはおよそ１０Ｘ１０＾−１５ファラドである。
【００７１】
さらに、Ｃ３キャパシタ４１７に電圧がコピーされると、この電圧は演算増幅器４１９（オペアンプ４１９）の出力４２８に伝搬されうる。有利に、Ｃ３キャパシタ４１７の電圧がオペアンプ４１９の入力４２７に印加されうる。
【００７２】
いくつかの実施形態では、オペアンプ４１９は、特有の高入力インピーダンスを有しうる。例えば、オペアンプ４１９のレジスタ４４４の抵抗は１ＧΩの大きさでありうる。したがってオペアンプ４１９は、入力４２７に印加されたＣ３電圧（Ｖｉｎ）がオペアンプ４１９の出力４２８（Ｖｏｕｔ）に伝搬されるように、理想的な演算増幅器として機能しうる。
【００７３】
さらに示されるように、出力４２８の電圧は演算増幅器４２０の第一入力４３１に伝搬される。最も注意すべきことには、以前のクロックサイクルの平均Ｃ３電圧が低パスフィルタ４３３のＣ４キャパシタ４２２に格納されうる。
【００７４】
低パスフィルタ４３３に格納される平均電圧は、フィルタ４３３内のレジスタおよびキャパシタ構成要素４２１、４２２のサイズの関数でありうる。したがって、低パスフィルタ４３３は、抵抗構成要素（レジスタ４２１）をわたって容量性構成要素（Ｃ４キャパシタ４２２）をその最終値の約６３％まで充電するために必要な時間量として定義されうるＲＣ時定数にしたがってデザインされうる。したがって、ＲＣ時定数がより大きいほど、より多くのＣ３キャパシタ電圧サイクルが平均Ｃ３キャパシタ電圧（すなわちＣ４キャパシタの電圧）に算入されうる。いくつかの実施形態では、レジスタ４２１は３０、４０、または１００ＭΩでありうる一方で、Ｃ４キャパシタ４２２は１００Ｘ１０＾−１５ファラドでありうる。
【００７５】
したがって、Ｃ３容量性電圧が第一入力４３１に伝搬され、平均電圧（Ｃ４キャパシタ４２２）が第二入力４３２に印加されると、オペアンプ４２０が比較を遂行する。その後、オペアンプ４２０が１または０の出力を生成する。いくつかの実施形態では、現在のＣ３容量性電圧が平均電圧（例えばＣ４容量性電圧）より大きいときには、オペアンプ４２０が１を出力する。これに対して、現在のＣ３容量性電圧が平均電圧より小さいときには、オペアンプがその後０を出力する。
【００７６】
通常の技術を有する当業者は、バスマスタから送信されるコマンド等のメッセージにしたがって様々なコマンドを実施するために一連の１および０が（例えば８ｂ／１０ｂ符号化スキームから）デコードされうることを理解するはずである。例えばデコードされるコマンドには、アップリンク中のデジタルマイクロホンのゲインのプログラミング、またはスレーブデバイスからバスマスタに０を伝送するときに引き出される電流量のセッティングを含みうるがこれに限定されない。
【００７７】
図５は、本開示と一致する受信器内でＣ２キャパシタの電圧がクロックパルストレインの様々なクロックパルス５０１、５０２の関数として変化する様子を表したグラフ５００を示す。
【００７８】
注意すべきことには、各幅の広いクロックパルス５０１は１を表現する一方で、各幅の狭いパルス５０２は０を表現する。各幅の広いクロックパルス５０１は、立ち上がりエッジ５０１ａ、高状態５０１ｂおよび立ち下がりエッジ５０１ｃを含む。同様に、各幅の狭いパルス５０２は、立ち上がりエッジ５０２ａ、高状態５０２ｂおよび立ち下がりエッジ５０２ｃを含む。
【００７９】
ここで図４および図５を参照すると、クロック信号の立ち上がりエッジ（例えば図５の５０１ａまたは５０２ａ）で、短いＰ１クロックパルスがトランジスタ４１６（図４）に印加され、トランジスタ４１６を通じてＣ２キャパシタ４１５を放電する。
【００８０】
加えて、Ｐ１パルスが収まり、クロック信号が高状態（５０１ｂまたは５０２ｂ）でとどまると、レジスタ４２９を通じてＣ２キャパシタ４１５が充電される。あるいは、クロックサイクル（例えば５０１ｃまたは５０２ｃ）の立ち下がりエッジで、短いＰ２クロックパルスがトランジスタ４１８に印加されて、Ｃ２キャパシタ４１５の電圧がＣ３キャパシタ４１７にサンプリングされる。
【００８１】
図５は、クロックパルストレインが幅の広いクロックパルス５０１から幅の狭いクロックパルス５０２へ変動する間などにＣ２キャパシタ４１５の電圧が変化する様子をさらに示す。図のように、時間０．０ではクロック信号は立ち上がりエッジ状態であり、したがってＣ２キャパシタ４１５の電圧はキャパシタが放電されるため０Ｖである。
【００８２】
しかし、クロック信号が高状態（５０１ｂまたは５０２ｂ）に達すると、図の電圧上昇５０３ａ、５０４ａにより示されるように、Ｃ２キャパシタ４１５はレジスタ４２９を通じて充電し始める。やがてクロック信号はその立ち下がりエッジ（５０１ｃまたは５０２ｃ）に達し、Ｃ２キャパシタ４１５の電圧がＣ３キャパシタ４１７にコピーされる。
【００８３】
いくつかの実施形態では、Ｃ２キャパシタ４１５の電圧がＣ３キャパシタ４１７にサンプリングされるとき、両方のキャパシタの電圧はおよそ同じである。したがって、Ｃ２キャパシタ４１５の電圧の減少が、電圧低下５０３ｂ、５０４ｂにより示される。図５に示すように、クロックサイクルが立ち上がりエッジ（５０３ｃ、５０４ｃ）から再び繰り返し、これによりＣ２キャパシタ４１５の放電が生じる。
【００８４】
図をさらに進むと、図６は、本開示に一致する回路を有する複数のデジタルマイクロホン６５０、６６０に結合されたバスマスタ６００を示す。図のように、バスマスタ６００は、二つのデジタルマイクロホン６５０、６６０とのデータ交換をサポートする回路を含む。通常の技術を有する当業者は、電気通信デバイス内の複数のデジタルマイクロホンがノイズ除去に有用でありうることを理解しうる。最も注意すべきことには、図６に示されるシステムは、バスマスタ６００と二つのデジタルマイクロホン６５０、６６０との間に二ピン接続しか必要とされないように構成される。
【００８５】
示されるように、バスマスタ６００は、二つの検出ユニット６０２、６１２を含む。検出ユニット６０２、６１２は、バスマスタ６００がスレーブデジタルマイクロホン６５０、６６０からアップリンク中に受信するのが１か０かを検出する回路を集合的に提供する。いくつかの実施形態では、デジタルマイクロホン６５０、６６０は、そのデータをクロック信号のあるステージでバスマスタ６００にアップリンクする。例えば、デジタルマイクロホン６５０、６６０の一方が、クロック信号の立ち上がりエッジでデータをアップリンクしうる一方で、他方のデジタルマイクロホンはクロックサイクルの立ち下がりエッジでデータをアップリンクしうる。
【００８６】
さらに、検出ユニット６０２、６１２内のクロック周波数は、バスインタフェースリンク６２０ａ、６２２ａに沿った周波数よりはるかに高くなりうる。例えば、検出ユニット６０２、６１２内のクロック周波数は、バスインタフェース６２０ａ、６２２ａに沿ったクロック周波数より最大およそ十倍大きければよい。
【００８７】
加えて、バスマスタ６００は、デジタルマイクロホン６５０、６６０にアクセス可能でありうる二つの電源６０３、６１３をさらに含む。いくつかの実施形態では、デジタルマイクロホン６５０、６６０は、いずれかの電源６０３、６１３から電流を引き出すことで０ビット値を伝送し、いずれかの電源６０３、６１３から電流を引き出すことを控えることで１ビット値を伝送する。
【００８８】
最初に、バスマスタ６００により水晶発振器、ＰＬＬ、またはＤＬＬから複数のクロック信号が受信されうる。これらのクロック信号およびデータに基づいて、バスマスタ６００は、スレーブデバイスにバスマスタ６００内のステートマシンを伝送しなければならず、入力接続部６０１に印加されるＢＵＳＣＬＫ信号を生成しうる。
【００８９】
ＢＵＳＣＬＫ信号は符号化された幅の広いパルスおよび幅の狭いパルスを含めばよく、平均して等しい数の幅の広いパルスおよび幅の狭いパルスが所与の間隔で伝送される。いくつかの実施形態では、符号化は８ｂ／１０ｂ符号化である。しかし、さらに別の実施形態では、符号化はＤＣフリー符号化である。生成されたクロック信号は、経路６０１ａおよび６０１ｂを介してバスマスタ６００の各サブユニットに伝搬されうる。
【００９０】
受信クロック信号は、経路６０１ａおよび６０１ｂを介してバスマスタ６００の各サブユニットに伝搬されうる。特に、クロック信号が経路６０１ａに沿ってＣＭＯＳインバータ６０４に送信されうる一方で、クロック信号が経路６０１ｂに沿ってＣＭＯＳインバータ６１４に送信されうる。図のように、ＣＭＯＳインバータ６０４、６１４は、電源６０３、６１３およびグランド接続６０６、６１６にそれぞれ結合される（Ｖｓｓ）。
【００９１】
いくつかの実施形態では、各ＣＭＯＳインバータ６０４、６１４内には、ＰＭＯＳ（６６５、６６７）およびＮＭＯＳ（６６６、６６８）トランジスタが含まれる。典型的には、ＣＭＯＳインバータ６０４、６１４内のＰＭＯＳおよびＮＭＯＳトランジスタは、一方のトランジスタがオンのときに他方のトランジスタがオフであるように相補的である。
【００９２】
図６にさらに示されるように、ＰＭＯＳトランジスタ６６５、６６７は電力サプライ６０３、６１３に結合され、電圧または電流がこれに印加されたときには電力が放出されてＰＡＤ６０５、６１５を充電する。あるいは、ＮＭＯＳトランジスタ６６６、６６８はグランドに結合され、電圧または電流がこれに印加されたときにはＰＡＤ６０５、６１５がグランドに放電される。
【００９３】
例えば、バスマスタ６００内のクロック信号が高のときには、ＰＭＯＳトランジスタ６６７がＰＡＤ６１５を電力サプライ６１３に接続する一方で、クロック信号が低のときには、ＮＭＯＳトランジスタ６６８がＰＡＤ６１５をグランドライン６１６に接続する。
【００９４】
加えて、バスマスタ６００内のクロック信号が高のときには、ＰＭＯＳトランジスタ６６５がＰＡＤ６０５を電力サプライ６０３に接続するようにインバータ６０７がクロック信号を反転しうる。あるいは、ＮＭＯＳトランジスタ６６６がＰＡＤ６０５をグランドライン６０６に接続するように低のクロック信号が反転される。
【００９５】
したがって、本開示のいくつかの実施形態では、クロック信号の立ち上がりエッジでクロックデータ信号がデジタルマイクロホン６５０に伝送されうる一方で、クロックサイクルの立ち下がりエッジでクロックデータ信号がデジタルマイクロホン６６０に伝送されうる。したがって、ＣＬＫＰ信号が高のとき、ＣＬＫＮ信号は低である。
【００９６】
特に、アップリンク中にはＢＵＳＣＬＫ信号の立ち上がりエッジでＣＬＫＰからＣＬＫＮへ、立ち下がりエッジでＣＬＫＮからＣＬＫＰへ電流が流れうる。さらに、ＢＵＳＣＬＫ信号の立ち上がりエッジ中にデジタルマイクロホン６６０内のトランジスタ（Ｖｄｄに結合）が導通しうる一方で、ＢＵＳＣＬＫ信号の立ち下がりエッジ中にデジタルマイクロホン６５０内のトランジスタ（Ｖｄｄに結合）が導通しうる。さらに、バスマスタ６００のＣＬＫＰのサンプリング回路は早期のＢＵＳＣＬＫサイクル（例えばサイクル１）でサンプリングしうる一方で、ＣＬＫＮのサンプリング回路は後期のＢＵＳＣＬＫサイクル（例えばサイクル８）でサンプリングしうる。
【００９７】
さらに、ＰＡＤ６０５、６１５は、バスマスタ６００およびバスマスタ６００が配置された集積回路が外部デバイスに接続することを可能にする。ＰＡＤ６０５、６１５は、バスインタフェースリンク６２０ａ、６２２ａを介してデジタルマイクロホン６５０、６６０の内の各双方向通信ラインに接続されうる。
【００９８】
加えて、バスインタフェースリンク６２０ａは、デジタルマイクロホン６５０内の双方向通信ライン６５５への経路６２０ｂに沿ってＣＬＫＰの入力を提供しうる。加えて、バスインタフェースリンク６２０ａは、デジタルマイクロホン６６０内の双方向通信ライン６５８への経路６２０ｃに沿ってＣＬＫＮの入力を提供しうる。
【００９９】
加えて、バスインタフェースリンク６２２ａは、デジタルマイクロホン６６０内の双方向通信ライン６５７への経路６２２ｂに沿ってＣＬＫＰの入力、および双方向通信ライン６５６への経路６２２ｃに沿ってＣＬＫＮの入力を提供しうる。
【０１００】
したがって、デジタルマイクロホン６５０、６６０は、クロックデータ信号が受信され、データ信号が伝送されることを可能にする双方向通信線６５５、６６６、６６７、６６８を含みうる。いくつかの実施形態では、双方向通信線６５５、６６６、６６７、６６８はダウンリンク中にクロック信号を受信し、アップリンク中にデータを伝送する。
【０１０１】
アップリンク中には、デジタルマイクロホン６５０、６６０が、バスマスタ６００の電源６０３、６１３から電流を引き出すことによりデータを伝送しうる。いくつかの実施形態では、検出ユニット６０２、６１２が、各デジタルマイクロホン６５０、６６０から電力が引き出されているかを検出する。例えば検出ユニット６０２、６１２は、電源６０３、６１３のインピーダンスの差を検出しうる。
【０１０２】
本開示のいくつかの実施形態では、デジタルマイクロホン６５０、６６０がアップリンク中に０ビット値を伝送するときには、トランジスタ６８２、６９２がバスマスタ６００の電力サプライ６０３、６１３からグランドライン６２５、６３５への導管を提供する。同様に、電力サプライ６０３、６１３からデジタルマイクロホン６５０、６６０に電流が引き出される間には、検出ユニット６０２、６１２が低インピーダンスを検出する。
【０１０３】
これに対して、デジタルマイクロホン６５０、６６０がアップリンク中に１ビット値を伝送するときには、トランジスタ６８２、６９２が電力サプライ６０３、６１３からグランドライン６２５、６３５への電気的アクセスをブロックする。したがって、電流が引き出されていないときには、検出ユニット６０２、６１２が高インピーダンスを検出する。
【０１０４】
したがって、本明細書に記載されるスレーブ受信器（例えばデジタルマイクロホン６５０、６６０）からマスタデバイス（例えばバスマスタ６００）へデータをアップリンクするプロセスは、本開示のいくつかの実施形態によれば、インピーダンスまたは振幅シフトキーイングとして特徴付けられうる。加えて、本明細書に記載される様式でのバスマスタからスレーブ受信器へデータをダウンリンクするプロセスは、フェーズシフトキーイングとして特徴付けられうる。
【０１０５】
いくつかの実施形態では、バスインタフェースリンク６２０ａ、６２２ａは差動バスインタフェースであり、デジタルマイクロホン６５０、６６０は差動受信器である。いくつかの実施形態では、差動デジタルマイクロホン受信器６５０、６６０は、差動クロック信号の極性を自動的に検出しうる。
【０１０６】
加えて、デジタルマイクロホン６５０、６６０は、ＣＬＫＰが一方のデジタルマイクロホンの第一ピンに接続され、ＣＬＫＮが他方のデジタルマイクロホンの第二ピンに接続されるように、それぞれ二つのピンを有する。したがって、二つのデジタルマイクロホン６５０、６６０は、各クロックサイクルの立ち上がりおよび立ち下がりエッジでデータ信号をそれぞれアップリンクしうる。
【０１０７】
いくつかの実施形態では、クロック信号が高のときにそれぞれのデジタルマイクロホン６５０、６６０がデータをアップリンクしうる。しかし、デジタルマイクロホン６５０、６６０がデータを順にアップリンクするように、バスマスタ６００のインバータ６０７がＣＭＯＳインバータ６０４にインバースバスクロック信号を提供する。
【０１０８】
したがって、検出ユニット６０２は、反転クロック信号が高、すなわち低のバスクロック信号のときにデジタルマイクロホン６５０、６６０により何のデータが伝送されるかを決定しうる。あるいは、検出ユニット６１２は、バスマスタクロック信号が高のときにデジタルマイクロホン６５０、６６０により何のデータが伝送されるかを決定しうる。
【０１０９】
いくつかの実施形態では、ＣＬＫＮがデジタルマイクロホン内で最も正の電圧であるときには、（整流器６２３、６３３の）ダイオード６２４、６３４により電流がそれぞれのグランドライン６２３、６３３に流れることが妨げられうるため、Ｖｓｓグランドライン６２５、６３５がオフになる。
【０１１０】
当技術分野の通常の技術を有する当業者は、ＣＬＫＮがデジタルマイクロホン６５０、６６０内で最も正の電圧であるときには、ＣＬＫＰがデジタルマイクロホン内で最も負の電圧となることを理解するはずである。したがって、ＣＬＫＮおよびＣＬＫＰが極性を変化させるため、「仮想グランド」がデジタルマイクロホンの一つのピンから他方のデジタルマイクロホンの他方のピンへと交互する。
【０１１１】
したがって、ＣＬＫＮがデジタルマイクロホン６５０、６６０内で最も正の電圧であるときには、ＣＬＫＮはダイオード６２６、６３６を介してＶｄｄライン６２１、６３１に充電する。いくつかの実施形態では、各デジタルマイクロホン６５０、６６０は、マイクロホン６５０、６６０内の電圧を調整する電圧レギュレータ６２７、６３７を含む。
【０１１２】
あるいは、ＣＬＫＰがデジタルマイクロホン６５０、６６０内で最も正の電圧であるときには、ＣＬＫＮが最も負の電圧となる。ＣＬＫＰが、ダイオード６８１、６９１を介してＶｄｄ電力レール６２１、６３１にそれぞれ充電する。
【０１１３】
ＣＬＫＮ電圧がグランドライン６２５、６３５の電圧より負である場合には、グランドライン６２５、６３５がそれぞれのデジタルマイクロホン６５０、６６０内で最も負の電圧を有するように、グランドライン６２５、６３５からＣＬＫＮに電流が流れうる。
【０１１４】
したがって、整流器６２３、６３３は、最も正の電圧がＶｄｄ電力レール６２１、６３１に結合されるように構成される。整流器６２３、６３３は、最も負の電圧がＶｓｓグランドライン６２５、６３５に結合されるようにも構成される。したがって、Ｖｄｄ電力レール６２１、６３１は常に最も正の電圧の高さになる一方で、Ｖｓｓライン６２５、６３５は常に最も負の電圧の低さになる。
【０１１５】
各双方向通信ラインは、デジタルマイクロホン６５０、６６０内のオペアンプ６２８、６３８の入力に結合される。本開示のいくつかの実施形態によれば、オペアンプ６２８、６３８はＣＬＫＰとＣＬＫＮの電圧を比較し、ＣＬＫＰに関連付けられた電圧を出力する。さらにいくつかの実施形態では、各オペアンプ６２８、６３８は、オペアンプ６２８、６３８の出力６２９、６３９が理想的にＶｄｄ以下またはＶｓｓ以上となるように、高いゲイン（例えば１０ｋ）を有する。
【０１１６】
オペアンプ６２８、６３８は、本開示と一致する受信器６８５、６８６にその出力を伝送するように構成されうる。いくつかの実施形態では、受信器６８５、６８６は、図４に示される受信器４００に一致する。
【０１１７】
図７は、本開示と一致する受信器７７５に結合されたデジタルマイクロホン７５０の実施形態を示す。最も注意すべきことに、演算増幅器７２８の出力は、経路７２９を介してデジタルマイクロホン７５０の構成要素である受信器７７５に伝送される。
【０１１８】
受信器７７５は、バスマスタにより伝送される幅の広いクロックパルスおよび幅の狭いクロックパルスを検出するように構成されうる。いくつかの実施形態では、受信器７７５は、幅の広いクロックパルスにつき１のビット値、幅の狭いパルスにつき０のビット値を出力する。その後、８ｂ／１０ｂ符号化されていればよいビット値が後にデコードされて、バスマスタから伝送されたメッセージ（例えばシンボル）が決定される。例えば、デコードされたシンボルは、マイクロホン７５０内のゲインを増加または減少させるためにデジタルマイクロホン７５０にあるアクションを遂行させるコマンドを含みうる。
【０１１９】
図８は、本開示と一致する方法８００の実施形態を示す。方法８００は、マスタデバイスとスレーブデバイスとの間にバスインタフェースリンクを形成するステップであり、マスタデバイスがスレーブデバイスにアクセス可能な電力サプライを含むステップを提供するブロック８０１から始めうる。マスタデバイスは、バスマスタを含みうる。スレーブデバイスは、デジタルマイクロホン、ＧＰＳ受信器、Ｂｌｕｅｔｏｏｔｈ（登録商標）コネクタ、ＳＩＭカードリーダを含めばよく、パーソナルコンピュータ、テレビジョン、トラックパッド、またはコンピュータマウス内に実装されうる。
【０１２０】
次に、ブロック８０２にしたがい、マスタデバイスから複数のクロック信号を受信し、マスタデバイスと複数のデータ信号を交換するために、スレーブデバイスの双方向通信ライン（単数または複数）をバスインタフェースリンクに結合するステップ。本開示と一致する双方向通信ラインは、スレーブデバイスがマスタデバイスにデータ信号を伝送し返すことを可能にするのに加えて、スレーブデバイスがマスタデバイスからクロックデータ信号を受信することを可能にする。
【０１２１】
さらに、ブロック８０３にしたがい、電力サプライから電流を引き出すことで０ビット値を送信し、電力サプライから電流を引き出すことを控えることで１ビット値を送信することにより、スレーブデバイスの双方向通信ラインに沿ってバスインタフェースリンクに沿ってマスタデバイスに少なくとも一つのデータ信号を伝送するステップ。
【０１２２】
通常の技術を有する当業者は、本開示が前述したビット値の割り当てに限定されないことを理解しうる。例えば、本発明と一致するシステムは、電源から電流を引き出すことが１のビット値を示す一方で、電源から電流を引き出すことを控えることが０のビット値を示すように、マスタおよびスレーブデバイスを構成しうる。
【０１２３】
次に、ブロック８０４により、スレーブデバイスから伝送されたのが１ビット値か０ビット値かを決定するためにクロック信号のあるステージで電力サプライのインピーダンス値をモニタするステップ。本開示のいくつかの実施形態では、インピーダンスまたは振幅シフトキーイング技術の使用が、スレーブデバイスにより伝送されるデータ信号を検出するために利用される。
【０１２４】
以下の例は、さらなる実施形態に関係する。例の詳細は、一つ以上の実施形態のどこででも使用されうる。例えば、本明細書に記載される装置またはシステムの全ての任意の特徴は、本明細書に記載される方法またはプロセスについても実装されうる。
【０１２５】
例１：電力サプライと；電力サプライのインピーダンスを検出する検出ユニットと；クロック信号の第一ステージで電力サプライへの第一経路を提供し、クロック信号の第二ステージで第一グランドラインへの第二経路を提供する、インバータと；を含むマスタデバイスと、該マスタデバイスをスレーブデバイスに結合するバスインタフェースリンクとを含む、システム。さらに、該スレーブデバイスは、該バスインタフェースリンクを通じて該マスタデバイスから複数の幅の狭いクロックパルスおよび幅の広いクロックパルスを受信する双方向通信ラインと；該電力サプライへの該第一経路から該双方向通信ラインを通って第二グランドラインへの導電性経路を提供するゲーティング構成要素と；該マスタデバイスから伝送される複数の幅の狭いクロックパルスおよび幅の広いクロックパルスに関連付けられたビット値を割り当てる受信器とを含む。
【０１２６】
例２：該マスタデバイスには、バスマスタが含まれる。
【０１２７】
例３：該スレーブデバイスには、デジタルマイクロホンが含まれる。
【０１２８】
例４：該インバータには、ＣＭＯＳインバータが含まれる。
【０１２９】
例５：該マスタデバイスには、バスクロックがさらに含まれる。
【０１３０】
例６：該ゲーティング構成要素には、トランジスタが含まれる。
【０１３１】
例７：該検出ユニットは、該電力サプライのインピーダンスの変化を検出しうる。
【０１３２】
例８：該双方向通信ラインは、該複数の幅の狭いクロックパルスおよび幅の広いクロックパルスならびに該電力サプライからの電流を同時に伝搬しうる。
【０１３３】
例９：該割り当てられたビット値の一部分は、スレーブデバイスへのコマンドである。
【０１３４】
例１０：グランドラインと電力レールとに結合されるように結合された整流器であり、負のクロック電圧が該整流器に結合されたときに該グランドラインが放電することを可能にし、正のクロック電圧が該整流器に結合されたときに該電力レールが充電することを可能にする、整流器と；クロックデータ信号に応答してデータを伝送する双方向通信ラインのセットとを含む、デバイス。
【０１３５】
例１１：グランドラインと電力レールとをさらに含む、該デバイス。
【０１３６】
例１２：該双方向通信ラインのセットの少なくとも一つが、電力サプライのインピーダンスを変化させることを引き出すことによりデータをアップリンクする。
【０１３７】
例１３：該双方向通信ラインのセットの少なくとも一つが、電力サプライのインピーダンスを変化させることを控えることによりデータをアップリンクする。
【０１３８】
例１４：各受信クロックデータ信号にビット値を割り当てる受信器。
【０１３９】
例１５：該整流器が、バスインタフェースリンクに結合される。
【０１４０】
例１６：該双方向通信ラインのセットは、該スレーブデバイス内で電源からグランドラインへの経路を提供しうるゲーティングエレメントに結合される。
【０１４１】
例１７：第一電力サプライの第一インピーダンスを検出する第一検出ユニットと；クロック信号の第一ステージで該第一電力サプライへの第一経路を提供し、クロック信号の第二ステージで第一グランドラインへの第二経路を提供する、第一インバータと；第二電力サプライの第二インピーダンスを検出する第二検出ユニットと；該クロック信号の該第二ステージで該第二電力サプライへの第三経路を提供し、該クロック信号の該第一ステージで第二グランドラインへの第四経路を提供する、第二インバータと；該第一インバータに入力されたクロック信号を反転するために該第一インバータに結合された第三インバータとを含む、デバイス。
【０１４２】
例１８：マスタクロックを含む前述のデバイス。
【０１４３】
例１９：該第一インバータおよび該第二インバータが、それぞれ相補的なトランジスタのセットを含む。
【０１４４】
例２０：二つのスレーブデバイスにクロックデータ信号を伝送するための第一電気的接続および第二電気的接続。
【０１４５】
例２１：クロックデータ信号を生成するクロック。
【０１４６】
例２２：受信器、アンテナ、またはエンコーダの少なくとも一つをさらに含む、該デバイス。
【０１４７】
例２３：マスタデバイスとスレーブデバイスとの間にバスインタフェースリンクを形成するステップであり、該マスタデバイスが、該スレーブデバイスにアクセス可能である電力サプライを含むステップと；該スレーブデバイスの双方向通信ラインを該バスインタフェースリンクに結合するステップと；該バスインタフェースリンクおよび該双方向通信ラインを通じて該マスタデバイスから該スレーブデバイスに複数のクロックデータ信号をダウンリンクするステップと；該電力サプライから電流を引き出すことで第一ビット値を送信し、該電力サプライから電流を引き出すことを控えることで第二ビット値を送信することにより、該スレーブデバイスの該双方向通信ラインに沿って該バスインタフェースリンクに沿って該マスタデバイスに少なくとも一つのデータ信号をアップリンクするステップとを含む方法。
【０１４８】
例２４：該スレーブデバイスから伝送されたのが該第一ビット値か該第二ビット値かを決定するために該電力サプライのインピーダンス値をモニタするステップ。
【０１４９】
例２５：クロック信号の立ち下がりエッジで該電力サプライのインピーダンス値をモニタするステップ。
【０１５０】
該マスタデバイス内のクロック周波数から該バスインタフェースリンクに沿ったクロック周波数を小さくし、各クロックパルスの所望の幅に対応するクロックサイクル期間にわたり該バスインタフェースリンクに沿ってクロック電圧を高にセットすることにより、変動幅を有する複数のクロックパルスを生成するステップ。
【０１５１】
該スレーブデバイスが、クロック信号の立ち上がりエッジで該マスタデバイスから電流を引き出すことにより該少なくとも一つのデータ信号を伝送する。
【０１５２】
該マスタデバイスはバスマスタを含み、該スレーブデバイスはデジタルマイクロホンを含む。
【０１５３】
該複数のクロックデータ信号を８ｂ／１０符号化プロトコルにしたがって符号化するステップ。
【０１５４】
該スレーブデバイスは、トランジスタが電力サプライとグランドラインとの間に導電性経路を提供するように該電力サプライと該グランドラインとの間に結合された該トランジスタに閾値電圧を印加することにより、該電力サプライから電流を引き出す。
【０１５５】
配線に結合されるように構成された集積回路（ＩＣ）であり、該ＩＣは、該配線との間で情報を伝送および受信する入力／出力（Ｉ／Ｏ）論理を含み、該配線に情報を伝送する該Ｉ／Ｏ論理が、第一データ論理レベルを表現する第一デューティサイクルを有する第一クロック信号を伝送し、第二データ論理レベルを表現する第二デューティサイクルを有する第二クロック信号を伝送し、該第二デューティサイクルは該第一デューティサイクルと異なる、該Ｉ／Ｏ論理を含む、該ＩＣを含むデバイス。
【０１５６】
該配線に情報を伝送する該Ｉ／Ｏ論理は、８ｂ１０ｂ符号化データを提供するＩ／Ｏ論理をさらに含み、該８ｂ１０ｂ符号化データは、該第一デューティサイクルを有する該第一クロック信号と該第二デューティサイクルを有する該第二クロック信号とを含む。
【０１５７】
該ＩＣは、該配線を通じて受信器デバイスに結合され、該受信器デバイスは、該配線から該第一クロック信号および該第二クロック信号を受信し、該第一デューティサイクルに基づいて該第一クロック信号が該第一データ論理レベルを表現することを決定し、該第二デューティサイクルに基づいて該第二クロック信号が該第二データ論理レベルを表現することを決定する、受信器Ｉ／Ｏ論理を含む。
【０１５８】
該受信器デバイスは、第一マイクロホンを含み、該ＩＣは、第二配線を通じて第二マイクロホンに結合する第二Ｉ／Ｏ論理をさらに含み、該第二Ｉ／Ｏ論理は、データを表現するために該第二配線で該第二マイクロホンに伝送されるクロック信号のデューティサイクルを変動させる。
【０１５９】
本発明を限定数の実施形態に関して記載しているが、当業者はその多数の修正および変更形態を理解するだろう。添付の請求項は、本発明の真の精神および範囲内の全てのそのような修正および変更形態を包摂することを企図する。
【０１６０】
デザインは、創生からシミュレーションから作製まで様々なステージを経うる。デザインを表現するデータは、いくつかの様式でデザインを表現しうる。第一に、シミュレーションにおいて有用であるように、ハードウェア記述言語または別の機能記述言語を使用してハードウェアが表現されうる。加えて、論理および／またはトランジスタゲートを有する回路レベルのモデルが、デザインプロセスのいくつかのステージで生産されうる。さらに、ほとんどのデザインは、あるステージで、ハードウェアモデル内の様々なデバイスの物理的配置を表現するデータのレベルに達する。従来の半導体製造技術が使用される場合には、ハードウェアモデルを表現するデータは、集積回路を生産するために使用されるマスクの異なるマスク層上の様々な特徴の有無を特定したデータでありうる。デザインのいずれの表現においても、データは、任意の形の機械可読媒体に格納されうる。メモリまたはディスク等の磁気または光ストレージが、情報を伝送するために変調または他の方法で生成された光波または電波を介して伝送されるそのような情報を格納する機械可読媒体であればよい。コードまたはデザインを示しまたは伝える電気搬送波が伝送されると、電気信号のコピー、バッファ、または再送が遂行される範囲で新たなコピーが作られる。したがって、本発明の実施形態の技術を具体化して、通信プロバイダまたはネットワークプロバイダは、有形の機械可読媒体に少なくとも一時的に、搬送波に符号化された情報等の物品を格納しうる。
【０１６１】
本明細書で使用されるところのモジュールとは、ハードウェア、ソフトウェア、および／またはファームウェアの任意の組み合わせをいう。例えば、モジュールは、マイクロコントローラにより実行されるように適合されたコードを格納する非一時的媒体に関連付けられたマイクロコントローラ等のハードウェアを含む。したがって、モジュールへの言及は、一実施形態では、非一時的媒体に保持されるコードを認識および／または実行するように特に構成されたハードウェアをいう。さらに、別の実施形態では、モジュールの使用は、所定の動作を遂行するためにマイクロコントローラにより実行されるように特に適合されたコードを含む非一時的媒体をいう。また、推定されうるように、さらに別の実施形態では、（本例での）モジュールという用語は、マイクロコントローラと非一時的媒体との組み合わせをさしうる。分離したものとして示されるモジュール境界は、一般に変動し、潜在的に重なり合うことが多い。例えば、第一および第二モジュールがハードウェア、ソフトウェア、ファームウェア、またはその組み合わせを共有するとともに、潜在的にいくつかの独立のハードウェア、ソフトウェア、またはファームウェアを保持しうる。一実施形態では、論理という用語の使用には、トランジスタ、レジスタ、またはプログラマブルロジックデバイス等のその他のハードウェア等のハードウェアが含まれる。
【０１６２】
「ための」または「ように構成された」というフレーズの使用は、一実施形態では、指定または決定されたタスクを遂行するように装置、ハードウェア、論理、またはエレメントを設置、組み立て、製造、販売提供、輸入および／またはデザインすることをいう。この例では、動作していない装置またはそのエレメントも、指定されたタスクを遂行するようにデザイン、結合、および／またはインタコネクトされている場合には、その指定されたタスクを遂行する「ように構成された」ものである。純粋に例示として、論理ゲートは、動作中に０または１を提供しうる。しかし、クロックにイネーブル信号を提供する「ように構成された」論理ゲートは、１または０を提供しうる全ての潜在的論理ゲートを含むものではない。そうではなく、論理ゲートは、動作中に１または０の出力がクロックをイネーブルにする何らかの様式で結合されたものである。「ように構成された」という用語の使用は動作を必要とせず、代わりに装置、ハードウェア、および／またはエレメントの潜在的状態に着目し、この潜在的状態においては、該装置、ハードウェア、および／またはエレメントが動作しているときに特定のタスクを遂行するように該装置、ハードウェア、および／またはエレメントがデザインされていることにもう一度注意されたい。
【０１６３】
さらに、「の／する能力がある」およびまたは「ために動作可能」というフレーズの使用は、一実施形態では、装置、論理、ハードウェア、および／またはエレメントの特定された様式での使用を可能にするような方法でデザインされた何らかの装置、論理、ハードウェア、および／またはエレメントをさす。上述のように、ための、する能力がある、またはために動作可能の使用は、一実施形態では、装置、論理、ハードウェア、および／またはエレメントの潜在的状態をさし、この潜在的状態においては、該装置、論理、ハードウェア、および／またはエレメントが動作していないが、装置の特定された様式での使用を可能にするような様式でデザインされていることに注意されたい。
【０１６４】
本明細書で用いられるところの値は、数、状態、論理的状態、またはバイナリ論理的状態の任意の周知の表現を含む。論理レベル、論理値、または論理的値の使用は、１および０とも呼称されることが多く、これは単純にバイナリ論理状態を表現する。例えば、１は高論理レベルをさし、０は低論理レベルをさす。一実施形態では、トランジスタまたはフラッシュセル等のストレージセルは、単一の論理的値または複数の論理的値を保持する能力がありうる。しかし、コンピュータシステムにおける他の値の表現が使用されている。例えば、十進数１０は、二進値１０１０および十六進文字Ａでも表現されうる。したがって、値には、コンピュータシステム内に保持される能力がある情報の任意の表現が含まれる。
【０１６５】
さらに、状態は、値または値の部分により表現されうる。一例として、論理的１等の第一値が、デフォルトまたは初期状態を表現しうる一方で、論理的０等の第二値は、非デフォルト状態を表現しうる。加えて、リセットおよびセットという用語は、一実施形態では、それぞれデフォルトおよび更新された値または状態をさす。例えば、デフォルト値は潜在的に高の論理的値、すなわちリセットを含む一方で、更新値は潜在的に低の論理的値、すなわちセットを含む。任意の数の状態を表現するために値の任意の組み合わせが利用されうることに注意されたい。
【０１６６】
上記の方法、ハードウェア、ソフトウェア、ファームウェアまたはコードの実施形態は、処理エレメントにより実行可能な、機械アクセス可能な、機械可読な、コンピュータアクセス可能な、またはコンピュータ可読な媒体に格納された命令またはコードを介して実装されうる。非一時的機械アクセス可能／可読媒体には、コンピュータまたは電子システム等の機械により可読な形の情報を提供（すなわち格納および／または伝送）する任意の機構が含まれる。例えば、非一時的機械アクセス可能媒体には、スタティックＲＡＭ（ＳＲＡＭ）またはダイナミックＲＡＭ（ＤＲＡＭ）等のランダムアクセスメモリ（ＲＡＭ）；ＲＯＭ；磁気または光ストレージ媒体；フラッシュメモリデバイス；電気ストレージデバイス；光ストレージデバイス；音響ストレージデバイス；一時的（伝搬）信号（例えば搬送波、赤外線信号、デジタル信号）から受信された情報を保持するための他の形のストレージデバイス；などが含まれ、これらはここから情報を受信しうる非一時的媒体と区別されるべきものである。
【０１６７】
本発明の実施形態を遂行する論理をプログラムするために使用される命令が、ＤＲＡＭ、キャッシュ、フラッシュメモリ、または他のストレージ等のシステムのメモリに格納されうる。さらに、ネットワークを介して、または他のコンピュータ可読媒体を経由して命令が配信されうる。したがって、機械可読媒体は、機械（例えばコンピュータ）により可読な形の情報を格納または伝送するための任意の機構を含みうるが、電気、光、音響、またはその他の形の伝搬信号（例えば搬送波、赤外線信号、デジタル信号など）を介したインターネットを通じた情報の伝送に使用されるフロッピー（登録商標）ディスケット、光ディスク、コンパクトディスク、リードオンリーメモリ（ＣＤ−ＲＯＭ）、および光磁気ディスク、リードオンリーメモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、消去可能プログラム可能リードオンリーメモリ（ＥＰＲＯＭ）、電気的消去可能プログラム可能リードオンリーメモリ（ＥＥＰＲＯＭ）、磁気もしくは光カード、フラッシュメモリ、または有形の機械可読ストレージに限定されない。したがって、コンピュータ可読媒体には、機械（例えばコンピュータ）により可読な形の電子的命令または情報を格納または伝送することに適した任意のタイプの有形の機械可読媒体が含まれる。
【０１６８】
本明細書の全体での「一実施形態」または「ある実施形態」への言及は、実施形態と関連して記載された特定の特徴、構造、または特性が、本発明の少なくとも一つの実施形態に含まれることを意味する。したがって、本明細書の全体の様々な箇所での「一実施形態では」または「ある実施形態では」というフレーズの使用は、必ずしも全てが同じ実施形態をさすわけではない。さらに、一つ以上の実施形態において、特定の特徴、構造、または特性が任意の適切な方法で組み合わせられてもよい。
【０１６９】
以上の明細書においては、具体的な例示的実施形態に関して詳細な説明が与えられている。しかし、添付の特許請求の範囲に記載される本発明のより広い精神および範囲から逸脱することなく、様々な修正および変化が加えられうることは明らかである。したがって、本明細書および図面は、制限の意味ではなく例示の意味で捉えられなければならない。さらに、前述の実施形態およびその他の例での言葉の使用は、必ずしも同じ実施形態または同じ例をさすものではなく、潜在的に同じ実施形態をさしうるだけでなく、異なる別個の実施形態もさしうる。
【図１】
2014183576.tif 000003
【図２】
2014183576.tif 000004
【図３】
2014183576.tif 000005
【図４】
2014183576.tif 000006
【図５】
2014183576.tif 000007
【図６】
2014183576.tif 000008
【図７】
2014183576.tif 000009
【図８】
2014183576.tif 000010
【外国語明細書】
2014183576000001.pdf