JP2023549799A - マイクロフォンアレイ較正のためのシステム及び技法 - Google Patents

マイクロフォンアレイ較正のためのシステム及び技法 Download PDF

Info

Publication number
JP2023549799A
JP2023549799A JP2023528315A JP2023528315A JP2023549799A JP 2023549799 A JP2023549799 A JP 2023549799A JP 2023528315 A JP2023528315 A JP 2023528315A JP 2023528315 A JP2023528315 A JP 2023528315A JP 2023549799 A JP2023549799 A JP 2023549799A
Authority
JP
Japan
Prior art keywords
microphone
data
subnode
calibration
signal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2023528315A
Other languages
English (en)
Inventor
ディートマー・ルウィシュ
エリック・ゾルナー
マーティン・ケスラー
Original Assignee
アナログ・ディヴァイシス・インターナショナル・アンリミテッド・カンパニー
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by アナログ・ディヴァイシス・インターナショナル・アンリミテッド・カンパニー filed Critical アナログ・ディヴァイシス・インターナショナル・アンリミテッド・カンパニー
Publication of JP2023549799A publication Critical patent/JP2023549799A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R3/00Circuits for transducers, loudspeakers or microphones
    • H04R3/005Circuits for transducers, loudspeakers or microphones for combining the signals of two or more microphones
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4247Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/403Bus networks with centralised control, e.g. polling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R1/00Details of transducers, loudspeakers or microphones
    • H04R1/005Details of transducers, loudspeakers or microphones using digitally weighted transducing elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R1/00Details of transducers, loudspeakers or microphones
    • H04R1/20Arrangements for obtaining desired frequency or directional characteristics
    • H04R1/32Arrangements for obtaining desired frequency or directional characteristics for obtaining desired directional characteristic only
    • H04R1/326Arrangements for obtaining desired frequency or directional characteristics for obtaining desired directional characteristic only for microphones
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R1/00Details of transducers, loudspeakers or microphones
    • H04R1/20Arrangements for obtaining desired frequency or directional characteristics
    • H04R1/32Arrangements for obtaining desired frequency or directional characteristics for obtaining desired directional characteristic only
    • H04R1/40Arrangements for obtaining desired frequency or directional characteristics for obtaining desired directional characteristic only by combining a number of identical transducers
    • H04R1/406Arrangements for obtaining desired frequency or directional characteristics for obtaining desired directional characteristic only by combining a number of identical transducers microphones
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R29/00Monitoring arrangements; Testing arrangements
    • H04R29/004Monitoring arrangements; Testing arrangements for microphones
    • H04R29/005Microphone arrays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S7/00Indicating arrangements; Control arrangements, e.g. balance control
    • H04S7/30Control circuits for electronic adaptation of the sound field
    • H04S7/301Automatic calibration of stereophonic sound system, e.g. with test microphone
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R2201/00Details of transducers, loudspeakers or microphones covered by H04R1/00 but not provided for in any of its subgroups
    • H04R2201/40Details of arrangements for obtaining desired directional characteristic by combining a number of identical transducers covered by H04R1/40 but not provided for in any of its subgroups
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R2499/00Aspects covered by H04R or H04S not otherwise provided for in their subgroups
    • H04R2499/10General applications
    • H04R2499/13Acoustic transducers and sound field adaptation in vehicles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/40Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]

Abstract

Figure 2023549799000001
本明細書には、マイクロフォンアレイ較正のためのシステム及び技法、並びに、較正されたマイクロフォンを使用することができる通信システムが開示されている。本明細書に開示されたシステム及び技法は、マイクロフォンアレイの位相較正及び大きさ較正の両方を提供し得、ビーム形成及び他の用途の性能を向上させる。更に、(例えば、製造及び較正の時点の)マイクロフォンアレイへの較正係数のローカル記憶のための、様々なシステム及び方法が本明細書で開示される。更に、本明細書に開示された様々なシステム及び方法は、マイクロフォンアレイの較正の中央適用(例えば、動作時のエッジプロセッサ内)を含み、未較正のマイクロフォン信号を、信号チェーンの下にある較正マイクロフォン信号に置き換えることができる。

Description

関連出願の相互参照
本出願は、「Systems and Techniques for Microphone Array Calibration」という表題の米国仮出願第63/112,967号の利益及び優先権を主張し、その全体が参照により本明細書に組み込まれる。
本開示は、デイジーチェーン接続されたネットワーク内のシステム及び装置に関する。
電子部品が小型化し、かつ性能に対する期待が高まるにつれて、以前は機器を備えていなかったデバイス、又はそれほど機器を備えていなかったデバイスに、より多くの部品が含まれている。いくつかの設定では、(例えば、車両内の)このような部品間で信号を交換するために使用される通信基盤は、太くて重いケーブル束を必要としてきた。
本開示は、本特許出願の主題の概要を提供することを意図している。本発明の排他的又は徹底的な説明を提供することは意図していない。従来のアプローチ及び伝統的なアプローチの更なる限定及び欠点は、そのようなシステムを、図面を参照しながら本出願のこれ以降で記載されるような、本発明のいくつかの態様と比較することによって、当業者に明らかになるであろう。
本明細書には、マイクロフォンアレイ較正のためのシステム及び技法、並びに、較正されたマイクロフォンが使用され得る通信システムが開示されている。マイクロフォンのアレイが、(例えば、雑音除去用の)ビーム形成のために使用されるとき、アレイ内の異なるマイクロフォン間の製造公差は、特定のビーム形成アルゴリズムの性能劣化を引き起こす可能性がある。一般に、マイクロフォンは配布及び/又は設置されると、それ以上の較正は不可能である。マイクロフォンの使用中に利用するために、マイクロフォンに較正係数を保存するためのシステム及び方法が開示される。
一態様によれば、マイクロフォンアレイ較正のためのシステムは、テスト信号を再生するように構成された、ラウドスピーカと、テスト信号を受信し、複数のマイクロフォンアレイ信号を生成するように構成された、マイクロフォンアレイと、ラウドスピーカとマイクロフォンアレイとの間に位置決めされた、基準マイクロフォンであって、テスト信号を受信し、基準信号を生成するように構成されている、基準マイクロフォンと、複数のマイクロフォンアレイ信号及び基準信号を処理し、フィルタ係数のセットを生成し、フィルタ係数のセットをマイクロフォンアレイに送信するように構成された、較正計算機と、を備える。
いくつかの実施態様によれば、本システムは、フィルタ係数のセットを記憶するように構成されたマイクロフォンアレイに関連付けられた、メモリを更に備える。いくつかの実施態様では、メモリは、マイクロフォンアレイとともにマイクロフォンアレイモジュール上に位置決めされている。いくつかの実施態様では、メモリは、マイクロフォンアレイによってアクセス可能な、クラウドベースのメモリである。いくつかの実施態様では、メモリは、ベンダ情報、製品情報、バージョン情報、モデル情報、能力情報、シリアル番号、製造情報、構成情報、ルーティング情報、及び認証情報のうちの少なくとも1つを含む、マイクロフォン情報を記憶するように更に構成されている。
いくつかの実施態様によれば、本システムは、複数のメモリモジュールを更に備え、複数のメモリモジュールの各々が、マイクロフォンアレイのそれぞれのマイクロフォンに関連付けられている。いくつかの実施態様では、フィルタ係数は、位相較正、周波数較正、及び大きさ較正を含む。いくつかの実施態様では、本システムは、2線式インタフェースを更に備え、マイクロフォンアレイへのフィルタ係数の送信が、2線式インタフェース経由で発生する。いくつかの実施態様では、複数のマイクロフォンアレイ信号の各々は一意であり、マイクロフォンアレイの各それぞれのマイクロフォンは、フィルタ係数のセットのそれぞれのサブセットに関連付けられている。
別の態様によれば、マイクロフォンアレイ較正のための方法は、ラウドスピーカでテスト信号を再生することと、マイクロフォンアレイでテスト信号をサンプリングすることと、マイクロフォンアレイで複数のマイクロフォンアレイ信号を生成することと、基準マイクロフォンでテスト信号をサンプリングすることと、基準マイクロフォンで基準信号を生成することと、複数のマイクロフォンアレイ信号及び基準信号に基づいて、フィルタ係数のセットを生成することと、フィルタ係数のセットをマイクロフォンアレイに送信することと、を含む。
いくつかの実施態様によれば、マイクロフォンアレイでテスト信号をサンプリングすることは、マイクロフォンアレイの各それぞれのマイクロフォンでテスト信号をサンプリングすることを含む。いくつかの実施態様では、フィルタ係数のセットを生成することは、各それぞれのマイクロフォンに対するフィルタ係数のそれぞれのサブセットを生成することを含む。いくつかの実施態様によれば、本方法は、フィルタ係数のそれぞれのサブセットを各それぞれのマイクロフォンに記憶することを更に含む。いくつかの実施態様によれば、本方法は、マイクロフォンアレイ上にフィルタ係数のセットを記憶することを更に含む。いくつかの実施態様では、フィルタ係数のセットを送信することは、2線式バス経由でフィルタ係数のセットを送信することを含む。いくつかの実施態様によれば、本方法は、基準マイクロフォンを使用して、ラウドスピーカを事前較正することを更に含む。
別の態様によれば、自己較正マイクロフォンシステムは、マイクロフォンモジュールであって、音声入力信号を受信し、生のマイクロフォン出力信号を出力するように構成されたマイクロフォンであって、事前較正されている、マイクロフォンと、マイクロフォンのマイクロフォン較正係数を記憶するように構成された不揮発性メモリと、を含む、マイクロフォンモジュールと、生のマイクロフォン信号及びマイクロフォン較正係数を受信し、較正マイクロフォン信号を生成するように構成された、プロセッサと、プロセッサから較正マイクロフォン信号を受信し、較正マイクロフォン信号を出力するように構成された、マイクロフォン信号シンクと、を備える。
いくつかの実施態様によれば、フィルタ係数は、位相較正、周波数較正、及び大きさ較正のうちの少なくとも1つを提供するように構成されている。いくつかの実施態様では、本システムは、2線式バスを更に備え、プロセッサ及びマイクロフォン信号シンクは、2線式バス経由で通信する。いくつかの実施態様では、プロセッサは、較正マイクロフォン信号を生成するために、生のマイクロフォン信号及びマイクロフォン較正係数の畳み込みを実行するように更に構成されている。
本開示は、添付の図面と併せて、以下の詳細な説明から最もよく理解される。業界における標準的な慣行に従い、様々な特徴部は、必ずしも縮尺通りに描画されるわけではなく、例示の目的でのみ使用されることが強調される。縮尺が明示的又は暗示的に示されている場合、例示としての一例のみを提供する。他の実施形態では、様々な特徴部の寸法は、議論の明確さのために、任意に増大又は縮小されてもよい。この説明を容易にするために、同様の参照番号は、同様の構造要素を指定する。実施形態は、添付の図面の図において例として図示されており、限定するものとしてではない。
本発明の性質及び利点をより完全に理解するために、以下の添付の図面に関連して、好ましい実施形態の以下の詳細な説明が参照される。
図1は、様々な実施形態による、例示的な2線式通信システムのブロック図である。 図2は、様々な実施形態による、図1のシステムのノードに含まれ得る、ノードトランシーバのブロック図である。 図3は、様々な実施形態による、図1のシステム内の通信のために使用される、同期制御フレームの一部分の図である。 図4は、様々な実施形態による、図1のシステム内の通信のために使用される、スーパーフレームの図である。 図5は、様々な実施形態による、図1のシステムの異なる動作モードにおける、同期制御フレーム用の例示的なフォーマットを図示する。 図6は、様々な実施形態による、図1のシステムの異なる動作モードでの、同期応答フレーム用の例示的なフォーマットを図示する。 図7は、様々な実施形態による、図2のバスプロトコル回路の様々な構成要素のブロック図である。 図8~11は、本明細書に記載のバスプロトコルの様々な実施形態による、2線式バスに沿った情報交換の例を図示する。 図8~11は、本明細書に記載のバスプロトコルの様々な実施形態による、2線式バスに沿った情報交換の例を図示する。 図8~11は、本明細書に記載のバスプロトコルの様々な実施形態による、2線式バスに沿った情報交換の例を図示する。 図8~11は、本明細書に記載のバスプロトコルの様々な実施形態による、2線式バスに沿った情報交換の例を図示する。 図12は、様々な実施形態による、2線式バスのリングトポロジ、及びバス上の一方向通信スキームを図示する。 図13は、様々な実施形態による、図1のシステムにおけるノード又はホストとして機能し得る、デバイスのブロック図である。 図14は、様々な実施形態による、マイクロフォンアレイ較正システムのブロック図である。 図15~17は、様々な実施形態による、マイクロフォンアレイ較正のための方法のフロー図である。 図15~17は、様々な実施形態による、マイクロフォンアレイ較正のための方法のフロー図である。 図15~17は、様々な実施形態による、マイクロフォンアレイ較正のための方法のフロー図である。 図18は、様々な実施形態による、本明細書に開示される較正が適用され得る、マイクロフォンシステムのブロック図である。 図19は、様々な実施形態による、マイクロフォンアレイ較正を適用する方法のフロー図である。 図20は、様々な実施形態による、本明細書に開示されるマイクロフォンアレイ較正が適用され得る、2線式通信システムのブロック図である。 図21~22は、様々な実施形態による、マイクロフォンを較正し、マイクロフォンアレイ較正をそれぞれ適用する方法のフロー図である。 図21~22は、様々な実施形態による、マイクロフォンを較正し、マイクロフォンアレイ較正をそれぞれ適用する方法のフロー図である。
本明細書には、マイクロフォンアレイ較正のためのシステム及び技法、並びに較正されたマイクロフォンが使用され得る通信システムが開示されている。マイクロフォンのアレイが、(例えば、道路騒音除去、他の雑音除去、又は選択的なブロードキャスト用途の一部として)ビーム形成のために使用されるとき、アレイ内の異なるマイクロフォン間の製造公差は、特定のビーム形成アルゴリズムの性能劣化を引き起こし得る。いくつかの従来の較正手順は、マイクロフォンの周波数応答の大きさの差を均等化するために、マイクロフォンのフィルタ係数を生成することによって、この劣化に対処しようと試みる。しかしながら、従来の較正手順は、アレイ内のマイクロフォン全体にわたる、位相公差の影響を考慮することを怠っている。
本明細書に開示されるシステム及び技法は、マイクロフォンアレイの位相較正及び大きさ較正の両方を提供し得、ビーム形成及び他の用途の性能を向上させる。更に、(例えば、製造及び較正の時点の)マイクロフォンアレイへの較正係数のローカル記憶のための、様々なシステム及び方法が本明細書で開示される。更に、本明細書に開示される様々なシステム及び方法は、マイクロフォンアレイの較正の中央適用(例えば、動作時のエッジプロセッサ内)を含み、未較正のマイクロフォン信号を、信号チェーンの下にある較正マイクロフォン信号に置き換えることができる。本明細書に開示されるマイクロフォンアレイ較正システム及び方法ののうちのいずれかは、本明細書に開示される通信システム(例えば、システム100)によって実装され得る。
以下の詳細な説明では、本明細書の一部を形成する添付の図面が参照され、同様の数字は全体を通して同様の部分を指定し、例解として、実施され得る実施形態が示される。本開示の範囲から逸脱することなく、他の実施形態が利用され得、構造的又は論理的変更が行われ得ることを理解されたい。したがって、以下の詳細な説明は、限定的な意味で解釈されるべきではない。
様々な動作は、特許請求される主題の理解に最も役立つ方式で、複数の別個のアクション又は動作として、順番に説明され得る。しかしながら、説明の順序は、これらの動作が必然的に順序に依存することを意味するものとして解釈されるべきではない。特に、これらの動作は、提示の順序で実行されない場合がある。説明される動作は、説明される実施形態とは異なる順序で実行されてもよい。様々な追加の動作が実行されてもよく、かつ/又は、説明される動作は、追加の実施形態では省略されてもよい。
本開示の目的のために、「A及び/又はB」という言い回しは、(A)、(B)、又は(A及びB)を意味する。本開示の目的のために、「A、B、及び/又はC」という言い回しは、(A)、(B)、(C)、(A及びB)、(A及びC)、(B及びC)、又は(A、B、及びC)を意味する。
本明細書では様々な構成要素を単数形で(例えば、「プロセッサ(a processor)」、「周辺デバイス(a peripheral device)」など)言及又は例示されることがあるが、これは単に議論を容易にするためのものであり、単数形で言及されたいかなる要素も、本明細書の教示による複数のそのような要素を含み得る。
本説明では、「一実施形態では(in an embodiment)」又は「実施形態では(in embodiments)」という言い回しを使用するが、これらは各々、同じ実施形態又は異なる実施形態のうちの1つ以上に言及してもよい。更に、本開示の実施形態に関して使用される場合、「備える(comprising)」、「含む(including)」、「有する(having)」などの用語は同義語である。本明細書で使用される場合、「回路」という用語は、特定用途向け集積回路(ASIC)、電子回路、及び光学回路、1つ以上のソフトウェアプログラム若しくはファームウェアプログラムを実行する(共有、専用、若しくはグループ)プロセッサ及び/又は(共有、専用、若しくはグループ)メモリ、記載された機能を提供する組み合わせ論理回路、及び/又は他の好適なハードウェアを指してもよく、その一部であってもよく、又はそれらを含んでもよい。
図1は、様々な実施形態による、例示的な半二重2線式通信システム100のブロック図である。システム100は、ホスト110、メインノード102-1、及び少なくとも1つのサブノード102-2を含む。図1では、3つのサブノード(0、1、及び2)が例示されている。図1における3つのサブノード102-2の描写は単純に例示的であり、システム100は、所望に応じて、1つ、2つ、又はそれ以上のサブノード102-2を含み得る。
メインノード102-1は、2線式バス106経由でサブノード102-2と通信し得る。バス106は、バス106に沿ったノードをデイジーチェーン様式で接続するために、バス106に沿って隣接するノード間に異なる2線式バスリンクを含み得る。例えば、図1に示すように、バス106は、メインノード102-1をサブノード0に結合させるリンクと、サブノード0をサブノード1に結合させるリンクと、サブノード1をサブノード2に結合させるリンクと、を含み得る。いくつかの実施形態では、バス106のリンクは各々、単一の撚線対(例えば、非シールドツイストペア)から形成されてもよい。いくつかの実施形態では、バス106のリンクは各々、(例えば、「正側」ラインを提供するコアと、「負側」ラインを提供するシールドと、を有するか、又はその逆を有する)同軸ケーブルから形成されてもよい。2線式バスリンクは、追加の接地又は電圧源ラインを使用する必要がないように、完全な電気経路(例えば、往路電流経路及び復路電流経路)を併せて提供する。
ホスト110は、メインノード102-1をプログラムし、バス106に沿って送信された様々なペイロードの発信者及び受信者として機能する、プロセッサを含み得る。いくつかの実施形態では、ホスト110は、例えば,マイクロコントローラであり得るか、又はそれを含み得る。具体的には、ホスト110は、バス106に沿って発生する集積回路間サウンド(I2S)通信のマスタであり得る。ホスト110は、I2S/時分割多重(TDM)プロトコル、シリアル周辺インタフェース(SPI)プロトコル、及び/又は集積回路間(I2C)プロトコルを介して、メインノード102-1と通信し得る。いくつかの実施形態では、メインノード102-1は、ホスト110と同じハウジング内に位置する、トランシーバ(例えば、図2を参照して以下で論じる、ノードトランシーバ120)であってもよい。メインノード102-1は、構成及び読み取りのために、I2Cバス経由でホスト110によってプログラム可能であり得、全てのサブノード102-2のクロック、同期、及びフレーミングを生成するように構成され得る。いくつかの実施形態では、ホスト110とメインノード102-1との間のI2C制御バスの拡張は、バス106経由で送信されるデータストリームに埋め込まれ得、1つ以上のサブノード102-2用のレジスタ及びステータス情報にホスト110が直接アクセスすることを可能にし得、並びに、遠距離にわたるI2C対I2C通信を有効にして、ホスト110が周辺デバイス108を制御することを可能にし得る。いくつかの実施形態では、ホスト110とメインノード102-1との間のSPI制御バスの拡張は、バス106経由で送信されるデータストリームに埋め込まれ得、1つ以上のサブノード102-2用のレジスタ及びステータス情報にホスト110が直接アクセスすることを可能にし得、並びに、遠距離にわたるSPI対SPI通信又はSPI対I2C通信を有効にして、ホスト110が周辺デバイス108を制御することを可能にし得る。システム100が車両に含まれる実施形態では、ホスト110及び/又はメインノード102-1は、車両のヘッドエンドに含まれ得る。
メインノード102-1は、「下流」信号(例えば、バス106に沿ってメインノード102-1から離れて送信されるデータ信号、電力信号など)を生成し得、(例えば、バス106に沿ってメインノード102-1に向けて送信された)「上流」信号を受信し得る。メインノード102-1は、バス106経由で同期データ送信用のクロック信号を提供し得る。本明細書で使用される場合、「同期データ」は、バス106に沿った同じノードへの/からの2つの連続した送信の間に、一定の時間間隔で連続的にストリーミングされるデータ(例えば、音声信号)を含み得る。いくつかの実施形態では、メインノード102-1によって提供されるクロック信号は、ホスト110によってメインノード102-1に提供されるI2S入力から導出され得る。サブノード102-2は、バス106上で下流に送信されるか、又はバス106上で上流に送信されるデータフレームの可能な送信先を表す、アドレス可能なネットワーク接続点であってもよい。サブノード102-2はまた、下流データフレーム又は上流データフレームの可能な送信元を表してもよい。システム100は、制御情報及び他のデータが、バス106経由で1つのノードから次のノードに両方向に送信されることを可能にし得る。サブノード102-2のうちの1つ以上はまた、バス106経由で送信される信号によって電力供給されてもよい。
具体的には、メインノード102-1及びサブノード102-2の各々は、(「AP」として示される)正の上流端子、(「AN」として示される)負の上流端子、(「BP」として示される)正の下流端子、及び(「BN」として示される)負の下流端子を含み得る。ノードの正の下流端子及び負の下流端子は、隣接する下流ノードの正の上流端子及び負の上流端子にそれぞれ結合され得る。図1に示すように、メインノード102-1は、正の上流端子及び負の上流端子を含み得るが、これらの端子は使用されない場合があり、他の実施形態では、メインノード102-1は、正の上流端子を及び負の上流端子を含まない場合がある。バス106に沿った最後のサブノード102-2(図1のサブノード2)は、正の下流端子及び負の下流端子を含み得るが、これらの端子は使用されない場合があり、他の実施形態では、バスに沿った最後のサブノード102-2は、正の下流端子及び負の下流端子を含まない場合がある。
以下に詳細に論じられるように、メインノード102-1は、任意選択的に、サブノード102-2のうちの1つ以上に向けたデータとともに、周期的に同期制御フレームを下流に送出し得る。例えば、メインノード102-1は、同期制御フレームを、1024ビット(スーパーフレームを表す)毎に周波数48kHzで送信し得、バス106上の実効ビットレート49.152Mbpsをもたらす。例えば44.1kHzを含む、他のレートがサポートされ得る。同期制御フレームは、サブノード102-2が各スーパーフレームの始めを識別することを可能にし得、また、物理層符号化/信号伝達と組み合わせて、各サブノード102-2が、その内部動作クロックをバス106から導出することを可能にし得る。同期制御フレームは、同期の開始を信号伝達するためのプリアンブル、並びに、様々なアドレス指定モード(例えば、通常、ブロードキャスト、発見動作)を可能にする制御フィールド、構成情報(例えば、サブノード102-2のレジスタへの書き込み)、I2C情報の伝達、SPI情報の伝達、サブノード102-2における特定の汎用入出力(GPIO)ピンの遠隔制御、及び他のサービスを含み得る。プリアンブル及びペイロードデータに続く同期制御フレームの一部分は、同期制御フレーム内の情報が新しいプリアンブルと間違えられる可能性を低下させ、関連する電磁放射のスペクトルを平坦化するために、スクランブルされ得る。
同期制御フレームは、メインノード102-1によって最後のサブノード102-2として構成されたか、又はそれ自体を最後のサブノード102-2として自己識別した、最後のサブノード102-2(すなわち、図1のサブノード2)に到達するまで、(任意選択的に、メインノード102-1から到来し得るが、追加的又は代替的に、1つ以上の上流サブノード102-2から、又はサブノード102-2自体から到来し得る、他のデータとともに)サブノード102-2間を通され得る。同期制御フレームを受信すると、最後のサブノード102-2は、同期応答フレームを送信し得、続いて、送信が許可されている任意のデータ(例えば、指定されたタイムスロット内の24ビットの音声サンプル)を送信し得る。同期応答フレームは、(任意選択的に、下流のサブノード102-2からのデータとともに)サブノード102-2間で上流に通され得、同期応答フレームに基づいて、各サブノード102-2は、もしあれば、サブノード102-2が送信を許可されている、タイムスロットを識別することができ得る。
いくつかの実施形態では、システム100内のサブノード102-2のうちの1つ以上は、周辺デバイス108に結合され得、それと通信し得る。例えば、サブノード102-2は、以下に論じられるように、I2Sプロトコル、パルス密度変調(PDM)プロトコル、TDMプロトコル、SPIプロトコル、及び/又はI2Cプロトコルを使用して、関連付けられた周辺デバイス108からデータを読み取り、及び/又はデータを書き込むように構成され得る。本明細書では「周辺デバイス108」は単数形で言及されることがあるが、これは単に議論を容易にするためのものであり、単一のサブノード102-2は、0個、1個、又は2個以上の周辺デバイスと結合され得る。周辺デバイス108に含まれ得る周辺デバイスの例としては、デジタル信号プロセッサ(DSP)、フィールドプログラマブルゲートアレイ(FPGA)、ASIC、アナログデジタル変換器(ADC)、デジタルアナログ変換器(DAC)、コーデック、マイクロフォン、マイクロフォンアレイ、スピーカ、音声アンプ、プロトコルアナライザ、加速度計若しくは他の動きセンサ、環境状態センサ(例えば、温度センサ、湿度センサ、及び/若しくはガスセンサ)、有線通信トランシーバ若しくは無線通信トランシーバ、表示デバイス(例えば、タッチスクリーンディスプレイ)、ユーザインタフェース構成要素(例えば、ボタン、ダイヤル、若しくは他のコントロールキー)、カメラ(例えば、ビデオカメラ)、メモリデバイス、又は、データを送信及び/若しくは受信する任意の他の好適なデバイスが挙げられ得る。本明細書では、異なる周辺デバイス構成のいくつかの例を詳細に論じる。
いくつかの実施形態では、周辺デバイス108は、I2S通信用に構成された任意のデバイスを含み得、周辺デバイス108は、I2Sプロトコルを介して、関連付けられたサブノード102-2と通信し得る。いくつかの実施形態では、周辺デバイス108は、I2C通信用に構成された任意のデバイスを含み得、周辺デバイス108は、I2Cプロトコルを介して、関連付けられたサブノード102-2と通信し得る。いくつかの実施形態では、周辺デバイス108は、SPI通信用に構成された任意のデバイスを含み得、周辺デバイス108は、SPIプロトコルを介して、関連付けられたサブノード102-2と通信し得る。いくつかの実施形態では、サブノード102-2は、いかなる周辺デバイス108にも結合されない場合がある。
サブノード102-2及びそれに関連付けられた周辺デバイス108は、別個のハウジングに収容され得、有線通信接続若しくは無線通信接続を通して結合され得、又は、共通のハウジングに収容され得る。例えば、周辺デバイス108として接続されたスピーカは、関連付けられたサブノード102-2用のハードウェアが、他のスピーカ部品を含むハウジング内に収容されるように、関連付けられたサブノード102-2(例えば、図2を参照して以下で論じる、ノードトランシーバ120)用のハードウェアとともにパッケージ化され得る。同じことは、任意の種類の周辺デバイス108にも当てはまり得る。
上記で論じたように、ホスト110は、マルチチャネルのI2S通信プロトコル、SPI通信プロトコル、及び/又はI2C通信プロトコルを使用して、メインノード102-1と通信し得、それを制御し得る。例えば、ホスト110は、I2Sを介して、メインノード102-1内のフレームバッファ(図示せず)にデータを送信し得、メインノード102-1は、フレームバッファからデータを読み取り、バス106に沿ってデータを送信し得る。類似的に、メインノード102-1は、バス106を介して受信したデータを、フレームバッファ内に記憶し得、次に、I2Sを介してホスト110にデータを送信し得る。
各サブノード102-2は、メインノード102-1からの通信によって構成され得る、内部制御レジスタを有し得る。いくつかのそのようなレジスタを、以下で詳細に論じる。各サブノード102-2は、下流データを受信し得、データを更に下流に再送信し得る。各サブノード102-2は、上流データを受信及び/若しくは生成し得、並びに/又は、データを上流に再送信し得、並びに/又は、データを上流トランザクションに追加し得る。
バス106に沿った通信は,周期的スーパーフレームで発生し得る。各スーパーフレームは、下流同期制御フレームで開始し得、(「下流部分」とも呼ばれる)下流送信の期間、(「上流部分」とも呼ばれる)上流送信の期間、及び(バス106が駆動されていない)無送信の期間に分割され得、別の下流同期制御フレームの送信直前に終了し得る。メインノード102-1は、サブノード102-2のうちの1つ以上に送信するためのいくつかの下流部分と、サブノード102-2のうちの1つ以上から受信するためのいくつかの上流部分とで、(ホスト110によって)プログラムされ得る。各サブノード102-2は、バス106を下って再送信するためのいくつかの下流部分と、消費するためのいくつかの下流部分と、バス106を上って再送信するためのいくつかの上流部分と、サブノード102-2が、サブノード102-2から受信したデータを、関連付けられた周辺デバイス108から送信し得る、いくつかの上流部分とで、(メインノード102-1によって)プログラムされ得る。バス106に沿った通信は、図2~図12を参照して以下で更に詳細に論じられる。
本明細書に開示される通信システム100の実施形態は、全てのサブノード102-2が、同一のスーパーフレーム内のバス106経由で出力データを受信し得る(例えば、全てのサブノード102-2は、ノード102間のサンプル遅延なしに、同一の音声サンプルを受信し得る)という点で、従来の通信システムの中にあって独特の存在である。従来の通信システムでは、データは、次のフレームの下流で次のノードに渡される前に、各ノード内でバッファリングされ、処理される。その結果として、これらの従来の通信システムでは、データ送信のレイテンシは、ノードの数に依存する(各ノードは、音声サンプル1つ分の遅延を追加する)。本明細書に開示される通信システム100では、バス106は、データを受信するのが第1のサブノードか最後のサブノード102-2かに関わらず、1サイクルのレイテンシのみを追加し得る。同じことは、上流の通信にも当てはまり、データは、どのサブノード102-2がデータを提供したかに関わらず、次のスーパーフレームの上流ノード102で利用可能であり得る。
更に、本明細書に開示される通信システム100の実施形態では、下流データ(例えば、下流音声データ)は、メインノード102-1によって、又は、受信サブノード102-2の上流にあるサブノード102-2のうちのいずれかによって、バス106上に乗せられてもよく、同様に、上流データ(例えば、上流音声データ)は、受信ノード102(すなわち、メインノード102-1又はサブノード102-2)の下流にあるサブノード102-2のうちのいずれかによって、バス106上に乗せられてもよい。そのような能力は、サブノード102-2が、特定の時間(例えば、特定の音声サンプル時間)に、上流データ及び下流データの両方を提供することを可能にする。音声データの場合、このデータは、(スーパーフレーム境界内に入るわずかな理遅延の他に)更なる遅延なしに、任意の下流ノード102又は上流ノード102の次の音声サンプルで受信することができる。本明細書で更に論じられるように、(例えば、同期制御フレーム(SCF)の)制御メッセージは、(特定のノード102又はブロードキャストをアドレス指定する)最後のノード102に移動し得、(例えば、同期応答フレーム(SRF)の)上流応答は、同じスーパーフレーム内の最後の下流ノード102によって作成され得る。SCFによってアドレス指定されたノード102は、自身の応答で、上流SRFの内容を変更する。その結果として、同じ音声サンプル内で、制御及び応答は、複数のノード102にわたって完全に実行され得る。これはまた、(一方のノードから他方のノードにメッセージを中継するための)ノード間でサンプルレイテンシが生じる、従来の通信システムとは対照的である。
メインノード102-1及びサブノード102-2の各々は、システム100の構成要素間の通信を管理するためのトランシーバを含み得る。図2は、様々な実施形態による、図1のシステム100のノード(例えば、メインノード102-1又はサブノード102-2)に含まれ得る、ノードトランシーバ120のブロック図である。いくつかの実施形態では、ノードトランシーバ120は、システム100のノードの各々に含まれ得、制御信号は、ノードトランシーバ120が、(例えば、メイン(MAIN)ピンが高のときに)メインノードとして機能するか、又は(例えば、メインピンが低のときに)サブノードとして作用するかを示すために、メインピンを介してノードトランシーバ120に提供され得る。
ノードトランシーバ120は、上流差動信号(DS)トランシーバ122及び下流DSトランシーバ124を含み得る。上流DSトランシーバ122は、図1を参照して上記で論じた正の上流端子及び負の上流端子に結合され得、下流DSトランシーバ124は、図1を参照して上記で論じた正の下流端子及び負の下流端子に結合され得る。いくつかの実施形態では、上流DSトランシーバ122は、低電圧DS(LVDS)トランシーバであってもよく、下流DSトランシーバ124は、LVDSトランシーバであってもよい。システム100の各ノードは、バス106にAC結合され得、データ信号は、バス106経由でタイミング情報を提供するための適切な符号化(例えば、差動マンチェスタ符号化、ニ相マーク符号化、マンチェスタ符号化、非ゼロ復帰、ラン長制限を伴う非ゼロ復帰反転(NRZI)符号化、又は任意の他の好適な符号化)を伴う、所定の形態のDS(例えば、LVDS又はマルチポイントLVDS(MLVDS)又は同様の信号伝達)を使用して、(例えば、上流DSトランシーバ122及び/又は下流DSトランシーバ124を介して)バス106に沿って伝達され得る。
上流DSトランシーバ122及び下流DSトランシーバ124は、バスプロトコル回路126と通信し得、バスプロトコル回路126は、他の構成要素の中でも、位相ロックループ(PLL)128及び電圧レギュレータ回路130と通信し得る。ノードトランシーバ120が電源投入されると、電圧レギュレータ回路130が、PLL128によって電源投入リセットとして使用される、「電源良好」信号を立ち上げ得る。
上述のように、システム100のサブノード102-2のうちの1つ以上は、データと同時にバス106経由で送信される電力を受信し得る。(サブノード102-2の一部は、それら専用に提供されるローカル電源を有するように構成され得るので、任意選択である)配電のため、(例えば、ローパスフィルタを通して、下流端子の一方を、電圧レギュレータによって提供される電圧源に接続し、他方の下流端子を接地することによって)メインノード102-1は、メインノード102-1とサブノード0との間のバスリンクにDCバイアスをかけてもよい。DCバイアスは、5ボルト、8ボルト、自動車バッテリの電圧、又はより高い電圧などの、所定の電圧であってもよい。連続した各サブノード102-2は、(例えば、電圧レギュレータ回路130を使用して)電力を回復するために、各サブノードの上流バスリンクを選択的にタップすることができる。この電力を使用して、サブノード102-2自体(及び、任意選択的に、サブノード102-2に結合された、1つ以上の周辺デバイス108)に給電し得る。サブノード102-2はまた、上流バスリンクから回復された電力、又はローカル電源から回復された電力のいずれかで、次の順番のサブノード102-2用の下流バスリンクにも選択的にバイアスをかけ得る。例えば、サブノード0は、バス106の上流リンク上のDCバイアスを使用して、サブノード0自体及び/若しくは関連付けられた1つ以上の周辺デバイス108のための電力を回復し得、並びに/又は、サブノード0は、バス106の下流リンクにバイアスをかけるために、バス106の上流リンクから電力を回復し得る。
したがって、いくつかの実施形態では、システム100の各ノードは、下流バスリンク経由で、次の下流ノードに電力を供給し得る。ノードの給電は、順序立てて実行されてもよい。例えば、バス106を介してサブノード0を発見及び構成した後、メインノード102-1は、サブノード1に電力を供給するために、サブノード0に、バス106のその下流リンクに電力を供給するよう指示し得、サブノード1が発見及び構成された後、メインノード102-1は、サブノード2に電力を供給するために、サブノード1に、バス106のその下流リンクに電力を供給するよう指示し得る(バス106に結合された追加のサブノード102-2についても同様である)。いくつかの実施形態では、サブノード102-2のうちの1つ以上は、その上流バスリンクから電力供給される代わりに、又はそれに追加して、ローカルで給電されてもよい。いくつかのそのような実施形態では、所与のサブノード102-2のためのローカル電源を使用して、1つ以上の下流サブノードに電力を供給してもよい。
いくつかの実施形態では、上流バスインタフェース回路132は、上流DSトランシーバ122と電圧レギュレータ回路130との間に配設され得、下流バスインタフェース回路131は、下流DSトランシーバ124と電圧レギュレータ回路130との間に配設され得る。バス106の各リンクは、AC(信号)成分及びDC(電力)成分を搬送し得るので、上流バスインタフェース回路132及び下流バスインタフェース回路131はAC成分及びDC成分を分離し、AC成分を上流DSトランシーバ122及び下流DSトランシーバ124に提供し、DC成分を電圧レギュレータ回路130に提供し得る。上流DSトランシーバ122及び下流DSトランシーバ124のライン側のAC結合は、高速双方向通信を可能にするために、トランシーバ122及び124を、ライン上のDC成分から実質的に切り離す。上記で論じたように、DC成分は、給電のためにタップされてもよく、上流バスインタフェース回路132及び下流バスインタフェース回路131は、例えば、電圧レギュレータ回路130に提供されるAC成分を低減するために、フェライト、コモンモードチョーク、又はインダクタを含んでもよい。いくつかの実施形態では、上流バスインタフェース回路132は、上流DSトランシーバ122に含まれてもよく、及び/又は、下流バスインタフェース回路131は、下流DSトランシーバ124に含まれてもよく、他の実施形態では、フィルタリング回路は、トランシーバ122及び124の外部であってもよい。
ノードトランシーバ120は、ノードトランシーバ120と外部デバイス155との間に、I2S通信、TDM通信、及びPDM通信用のトランシーバ127を含み得る。本明細書では「外部デバイス155」は単数形で言及されることがあるが、これは単に例示を容易にするためであり、複数の外部デバイスが、I2S/TDM/PDMトランシーバ127を介してノードトランシーバ120と通信し得る。当技術分野で周知のように、I2Sプロトコルは、(例えば、プリント回路基板(PCB)上の音声チップ間で)パルス符号変調(PCM)情報を搬送するためのものである。本明細書で使用される場合、「I2S/TDM」は、TDMを使用する複数のチャネルへのI2Sステレオ(2チャネル)コンテンツの拡張を指し得る。当技術分野で周知のように、PDMは、シグマデルタ変換器で使用され得、具体的には、PDMフォーマットは、間引き前の、オーバーサンプリングされた1ビットのシグマデルタADC信号を表し得る。PDMフォーマットは、デジタルマイクロフォンの出力フォーマットとしてしばしば使用される。I2S/TDM/PDMトランシーバ127は、バスプロトコル回路126、及び外部デバイス155との通信用のピンと通信し得る。6本のピン(BCLK、SYNC、DTX[1:0]、及びDRX[1:0])が図2に示され、BCLKピンは、I2Sビットクロックのために使用され得、SYNCピンは、I2Sフレーム同期信号のために使用され得、DTX[1:0]ピン及びDRX[1:0]ピンは、それぞれ送信データチャネル及び受信データチャネルのために使用される。2本の送信ピン(DTX[1:0])及び2つの受信ピン(DRX[1:0])が図2に示されているが、任意の所望の数の受信ピン及び/又は送信ピンが使用され得る。
ノードトランシーバ120がメインノード102-1に含まれる場合、外部デバイス155は、ホスト110を含み得、I2S/TDM/PDMトランシーバ127は、ホスト110からデータを受信し、ホスト110のI2Sインタフェースクロックと同期してデータをホスト110に送出することができる、(BCLK及びSYNCに関する)I2Sスレーブを提供し得る。具体的には、I2Sフレーム同期信号は、ホスト110からの入力としてSYNCピンで受信され得、PLL128は、その信号を使用してクロックを生成し得る。ノードトランシーバ120がサブノード102-2に含まれる場合、外部デバイス155は、1つ以上の周辺デバイス108を含み得、I2S/TDM/PDMトランシーバ127は、周辺デバイス108とのI2S通信を制御することができる、(BCLK及びSYNC用の)I2Sクロックマスタを提供し得る。具体的には、I2S/TDM/PDMトランシーバ127は、I2Sフレーム同期信号を出力としてSYNCピンで提供し得る。ノードトランシーバ120のレジスタは、バス106経由でデータスロットとして、どのI2S/TDMチャネルかつどれだけの数のI2S/TDMチャネルが送信されているかを判定し得る。ノードトランシーバ120のTDMモード(TDMMODE)レジスタは、TDM送信ピン又はTDM受信ピン上の連続SYNCパルス間で適合する、TDMチャネル数の値を記憶し得る。チャネルサイズの知識とともに、ノードトランシーバ120は、サンプリング時間(例えば、48kHz)内のビット数と一致するように、BCLKレートを自動的に設定し得る。
ノードトランシーバ120は、ノードトランシーバ120と外部デバイス157との間に、I2C通信用のトランシーバ129を含み得る。本明細書では「外部デバイス157」は単数形で言及されることがあるが、これは単に例示を容易にするためであり、複数の外部デバイスが、I2Cトランシーバ129を介してノードトランシーバ120と通信し得る。当技術分野で周知のように、I2Cプロトコルは、クロック(SCL)ライン及びデータ(SDA)ラインを使用して、データ転送を提供する。I2Cトランシーバ129は、バスプロトコル回路126、及び外部デバイス157との通信用のピンと通信し得る。4本のピン(ADR1、ADR2、SDA、及びSCL)が図2に示され、ADR1及びADR2は、ノードトランシーバ120がI2Cスレーブとして機能するとき(例えば、それがメインノード102-1に含まれるとき)、ノードトランシーバ120によって使用されるI2Cアドレスを修正するために使用され得、SDA及びSCLは、それぞれI2Cシリアルデータ及びシリアルクロック信号のために使用される。ノードトランシーバ120がメインノード102-1に含まれる場合、外部デバイス157は、ホスト110を含んでもよく、I2Cトランシーバ129は、ホスト110からプログラミング命令を受け取ることができる、I2Cスレーブを提供してもよい。具体的には、I2Cシリアルクロック信号は、レジスタアクセスのためのホスト110からの入力としてSCLピンで受信されてもよい。ノードトランシーバ120がサブノード102-2に含まれる場合、外部デバイス157は、周辺デバイス108を含んでもよく、I2Cトランシーバ129は、ホスト110によって提供され、かつバス106を介してノードトランシーバ120に送信される命令に従って、I2Cトランシーバが1つ以上の周辺デバイスをプログラムすることを可能にするために、I2Cマスタを提供してもよい。具体的には、I2Cトランシーバ129は、I2Cシリアルクロック信号を出力としてSCLピンで提供し得る。
ノードトランシーバ120は、ノードトランシーバ120と外部デバイス138との間に、SPI通信用のトランシーバ136を含み得る。本明細書では「外部デバイス138」は単数形で言及されることがあるが、これは単に例示を容易にするためであり、複数の外部デバイスが、SPIトランシーバ136を介してノードトランシーバ120と通信し得る。当技術分野で周知のように、SPIプロトコルは、データ転送を提供するために、スレーブ選択(SS)データライン、クロック(BCLK)データライン、マスタアウトスレーブイン(MOSI)データライン、及びマスタインスレーブアウト(MISO)データラインを使用し、これら4本のラインに対応するピンを図2に示す。SPIトランシーバ136は、バスプロトコル回路126、及び外部デバイス138との通信用のピンと通信し得る。ノードトランシーバ120がメインノード102-1に含まれる場合、外部デバイス138は、ホスト110又は別の外部デバイスを含んでもよく、SPIトランシーバ136は、ホスト110又は他の外部デバイスからのコマンドを受け取って応答することができる、SPIスレーブを提供してもよい。ノードトランシーバ120がサブノード102-2に含まれる場合、外部デバイス138は、周辺デバイス108を含んでもよく、SPIトランシーバ136は、SPIトランシーバ136が、1つ以上の周辺デバイス108にコマンドを送出することを可能にするために、SPIホストを提供してもよい。SPIトランシーバ136は、読み取りデータ先入れ先出し(FIFO)バッファ、及び書き込みデータFIFOバッファを含んでもよい。読み取りデータFIFOバッファは、他のノード102から読み取られたデータを収集するために使用され得、外部デバイス138が適切な読み取りコマンドを送信するとき、外部デバイス138によって読み取られ得る。書き込みデータFIFOバッファは、書き込みデータが別のデバイスに送信される前に、外部デバイス138から書き込みデータを収集するために使用され得る。
ノードトランシーバ120は、バスプロトコル回路126と通信する割り込み要求(IRQ)ピンを含み得る。ノードトランシーバ120がメインノード102-1に含まれる場合、バスプロトコル回路126は、IRQピンを介して、ホスト110に向けてイベント駆動型割り込み要求を提供し得る。ノードトランシーバ120がサブノード102-2に含まれる場合(例えば、MSTRピンが低の場合)、IRQピンは、割り込み要求能力を有するGPIOピンとして機能し得る。ノードトランシーバ120は、図2に示されたものに加えて(例えば、以下に論じられるように)他のピンを含み得る。
システム100は、いくつかの異なる動作モードのうちのいずれかで動作し得る。バス106上のノードは各々、どの動作モードが現在有効にされているかを示す、レジスタを有し得る。実施され得る様々な動作モードの例を、以下で説明する。スタンバイ動作モードでは、バスの活動は、包括的な電力節約を可能にするために抑制され、必要とされる唯一のトラフィックは、各ノードのPLL(例えば、PLL128)の同期を維持するための、最小の下流プリアンブルである。スタンバイ動作モードでは、バス106全体にわたる読み取り及び書き込みはサポートされない。発見動作モードでは、メインノード102-1は、バス106に沿って所定の信号を送付して、バス106に沿って分布するサブノード102-2のトポロジを描くための、好適な応答を待ち得る。通常動作モードでは、バス106経由での周辺デバイス108へのアクセス、及び周辺デバイス108からのアクセスと同様に、サブノード102-2へのフルレジスタアクセス、及びサブノード102-2からのフルレジスタアクセスが利用可能であり得る。通常モードは、同期上流データの有無に関わらず、かつ同期下流データの有無に関わらず、ホスト110によって包括的に構成され得る。
図3は、様々な実施形態による、システム100内の通信のために使用される、同期制御フレーム180の一部分の図である。具体的には、同期制御フレーム180は、以下に論じられるように、データクロック修復及びPLL同期のために使用され得る。上述のように、バス106経由での通信は、両方向で発生し得るため、通信は、下流部分と上流部分とに時分割され得る。下流部分では、同期制御フレーム及び下流データが、メインノード102-1から送信され得、一方、上流部分では、同期応答フレーム及び上流データが、サブノード102-2の各々からメインノード102-1に送信され得る。同期制御フレーム180は、プリアンブル182及び制御データ184を含み得る。各サブノード102-2は、受信した同期制御フレーム180のプリアンブル182を、PLL128に入力するためのタイムベースとして使用するように構成され得る。これを容易にするために、プリアンブル182は、有効な制御データ184の「規則」に従わず、したがって、制御データ184から簡単に区別され得る。
例えば、いくつかの実施形態では、バス106に沿った通信は、最初にクロック、ゼロで遷移の差動マンチェスタ符号化スキームを使用して、符号化され得る。そのような符号化スキームによれば、各ビット時間はクロック遷移で開始する。データ値がゼロである場合、符号化信号は、ビット時間の中間で、再び遷移する。データ値が1である場合、符号化信号は、再び遷移しない。図5に示されたプリアンブル182は、(例えば、ビット時間5、7、及び8の開始時に発生しない、クロック遷移を有することによって)符号化プロトコルに違反し得、これは、プリアンブル182が、制御データ184に対する正当な(例えば、正しく符号化された)パターンのいずれとも一致しなくてもよいことを意味する。加えて、プリアンブル182は、制御データ184に対して正当なパターンを取り、かつ単一のビット時間の期間又は複数のビット時間の期間、バス106を強制的に高又は低にすることによって、複製することができない。図5に示されたプリアンブル182は単純に例示的であり、同期制御フレーム180は、任意の好適な方式で、制御データ184によって使用される符号化に違反し得る、異なるプリアンブル182を含み得る。
バスプロトコル回路126は、バス106から回復されたクロックで動作し、かつ、同期制御フレーム180を検出してPLL128にフレーム同期インジケータを送出する、差動マンチェスタ復号器回路を含み得る。このようにして、同期制御フレーム180は、システムクロック又はより高速なオーバーサンプリングクロックを使用せずに、検出され得る。その結果として、サブノード102-2は、サブノード102-2に水晶クロック源を必要とせずに、バス106からPLL同期信号を受信することができる。
上述のように、バス106に沿った通信は,周期的スーパーフレームで発生し得る。図4は、様々な実施形態による、スーパーフレーム190の図である。図6に示すように、スーパーフレームは、同期制御フレーム180で開始し得る。同期制御フレーム180が、PLL128のタイミング源として使用される場合、スーパーフレームが通信される頻度(「スーパーフレーム周波数」)は、同期信号周波数と同じであり得る。音声データがバス106に沿って送信されるいくつかの実施形態では、スーパーフレーム周波数は、システム100で使用される音声サンプリング周波数と同じ(例えば、48kHz又は44.1kHzのいずれか)であり得るが、任意の好適なスーパーフレーム周波数を使用してもよい。各スーパーフレーム190は、下流送信の期間192、上流送信の期間194、及び無送信の期間196(例えば、バス106が駆動されていないとき)に分割され得る。
図4では、スーパーフレーム190は、初期の下流送信の期間192及び後期の上流送信の期間194で示されている。下流送信の期間192は、同期制御フレーム180及びX個の下流データスロット198を含み得、ここで、Xはゼロの可能性がある。バス106上の実質的に全ての信号は、ライン符号化され得、同期信号は、上記で論じたように、同期制御フレーム180内の同期プリアンブル182の形態で、メインノード102-1から最後のサブノード102-2(例えば、サブノード102-2C)へ、下流に転送され得る。下流データ、TDMデータ、同期データは、同期制御フレーム180の後のX個の下流データスロット198に含まれてもよい。下流データスロット198は、等しい幅を有してもよい。上記で論じたように、PLL128は、バス106経由での通信を計時するためにノードが使用する、クロックを提供し得る。音声データを送信するためにバス106が使用されるいくつかの実施形態では、PLL128は、音声サンプリング周波数の倍数(例えば、音声サンプリング周波数の1024倍、各スーパーフレームに1024のビットクロックをもたらす)で動作し得る。
上流送信の期間194は、同期応答フレーム197及びY個の上流データスロット199を含み得、ここで、Yはゼロの可能性がある。いくつかの実施形態では、各サブノード102-2は、下流データスロット198の一部分を消費し得る。最後のサブノード(例えば、図1のサブノード2)は、(最後のサブノードのレジスタに記憶された、所定の応答時間の後に)同期応答フレーム197で応答し得る。上流データ、TDMデータ、同期データは、同期応答フレーム197の直後に、上流データスロット199に各サブノード102-2によって追加されてもよい。上流データスロット199は、等しい幅を有してもよい。最後のサブノードではないサブノード102-2(例えば、図1のサブノード0及び1)は、そのレジスタのうちの1つの読み取りが、スーパーフレーム190の同期制御フレーム180において要求された場合、又は、遠隔I2C読み取りが、スーパーフレーム190の同期制御フレーム180において要求された場合、受信した同期応答フレーム197を、それ自体の上流応答と置き換え得る。
上記で論じたように、同期制御フレーム180は、各下流送信を開始し得る。いくつかの実施形態では、同期制御フレーム180は、64ビット長でもよいが、任意の他の好適な長さが使用されてもよい。同期制御フレーム180は、上述のように、プリアンブル182で開始し得る。いくつかの実施形態では、同期制御フレーム180が、サブノード102-2によって下流のサブノード102-2に再送信されるとき、プリアンブル182は、再送信されるのではなく、送信サブノード102-2によって生成されてもよい。
同期制御フレーム180の制御データ184は、バス106経由でトランザクションを制御するために使用されるデータを含む、フィールドを含み得る。これらのフィールドの例を以下で論じ、いくつかの実施形態を図5に示す。具体的には、図5は、様々な実施形態による、通常モード、I2Cモード、及び発見モードにおける同期制御フレーム180用の例示的フォーマットを示す。いくつかの実施形態では、異なるプリアンブル182又は同期制御フレーム180は、通常モードへの移行が送出されるまで、サブノード102-2が同期制御フレーム180の全てを受信する必要がないように、全てスタンバイモードで使用されてもよい。
いくつかの実施形態では、同期制御フレーム180は、カウント(CNT)フィールドを含み得る。CNTフィールドは、任意の好適な長さ(例えば、2ビット)を有し得、前のスーパーフレームで使用された値から増やし得る(フィールド長を法とする)。予期しないCNT値を受信するサブノード102-2は、割り込みを返すようにプログラムされ得る。
いくつかの実施形態では、同期制御フレーム180は、ノードアドレス指定(NAM)フィールドを含み得る。NAMフィールドは、任意の好適な長さ(例えば、2ビット)を有し得、バス106経由で、サブノード102-2のレジスタへのアクセスを制御するために使用され得る。通常モードでは、サブノード102-2のレジスタは、サブノード102-2のID及びレジスタのアドレスに基づいて、読み取られ及び/又は書き込まれ得る。ブロードキャストトランザクションは、全てのサブノード102-2が引き受けるべき書き込みである。いくつかの実施形態では、NAMフィールドは、「無」(例えば、どんな特定のサブノード102-2にもアドレス指定されていないデータ)、「通常」(例えば、下記で論じるアドレスフィールドに特定された特定のサブノード102-2へのデータユニキャスト)、「ブロードキャスト」(例えば、全てのサブノード102-2にアドレス指定された)、及び「発見」を含む、4つのノードアドレス指定モードを提供し得る。
いくつかの実施形態では、同期制御フレーム180は、I2Cフィールドを含み得る。I2Cフィールドは、任意の好適な長さ(例えば、1ビット)を有し得、下流送信の期間192がI2Cトランザクションを含むことを示すために、使用され得る。I2Cフィールドは、ホスト110が、関連付けられたサブノード102-2に対してI2Cスレーブとして機能する周辺デバイス108に遠隔アクセスするための命令を提供したことを示し得る。
いくつかの実施形態では、同期制御フレーム180は、ノードフィールドを含み得る。ノードフィールドは、任意の好適な長さ(例えば、4ビット)を有し得、どのサブノードが、通常アクセス及びI2Cアクセスのためにアドレス指定されているかを示すために、使用され得る。発見モードでは、このフィールドは、サブノード102-2のノードIDレジスタで新たに発見されたサブノード102-2の識別子をプログラムするために、使用され得る。システム100の各サブノード102-2は、以下に論じられるように、サブノード102-2がメインノード102-1によって発見されたとき、一意のIDが割り当てられ得る。いくつかの実施形態では、メインノード102-1はノードIDを有さず、一方、他の実施形態では、メインノード102-1はノードIDを有し得る。いくつかの実施形態では、バス106上でメインノード102-1に取り付けられたサブノード102-2(例えば、図1のサブノード0)は、サブノード0であり、連続した各サブノード102-2は、前のサブノードよりも1高い数を有する。しかしながら、これは単純に例示的であり、任意の好適なサブノード識別システムが使用され得る。
いくつかの実施形態では、同期制御フレーム180は、読み取り/書き込み(RW)フィールドを含み得る。RWフィールドは、任意の好適な長さ(例えば、1ビット)を有し得、通常アクセスが読み取り(例えば、RW==1)であるか、書き込み(例えば、RW==0)であるかを制御するために使用され得る。
いくつかの実施形態では、同期制御フレーム180は、アドレスフィールドを含み得る。アドレスフィールドは、任意の好適な長さ(例えば、8ビット)を有し得、バス106を通して、サブノード102-2の特定のレジスタをアドレス指定するために使用され得る。I2Cトランザクションの場合、アドレスフィールドは、開始/停止、待機、RW、及びデータVLDなどのI2C制御値に置き換えられ得る。発見トランザクションの場合、アドレスフィールドは、(例えば、図5に示すような)所定の値を有し得る。
いくつかの実施形態では、同期制御フレーム180は、データフィールドを含み得る。データフィールドは、任意の好適な長さ(例えば、8ビット)を有し得、通常書き込み、I2C書き込み、及びブロードキャスト書き込みのために使用され得る。(4を乗じた)RESPCYCS値は、受信されている同期制御フレーム180の開始と、送信されている同期応答フレーム197の開始との間に、新たに発見されたノードが許容すべき経過サイクル数を決定するために使用され得る。NAMフィールドが発見モードを示す場合、下記で論じるノードアドレスフィールド及びデータフィールドは、好適な任意選択の乗数(例えば、4)を乗じたときに、同期制御フレーム180の終わりから同期応答フレーム197の開始までの時間をビットで示す、RESPCYCS値として符号化されてもよい。このことは、新たに発見されたサブノード102-2が、上流送信用の適切なタイムスロットを決定することを可能にする。
いくつかの実施形態では、同期制御フレーム180は、巡回冗長検査(CRC)フィールドを含み得る。CRCフィールドは、任意の好適な長さ(例えば、16ビット)を有し得、プリアンブル182に続く、同期制御フレーム180の制御データ184のCRC値を送信するために、使用され得る。いくつかの実施形態では、CRCは、CCITT-CRCエラー検出スキームに従って計算され得る。
いくつかの実施形態では、プリアンブル182とCRCフィールドとの間の同期制御フレーム180の少なくとも一部分は、この間隔におけるビットのシーケンスがプリアンブル182と周期的に一致する(したがって、新しいスーパーフレーム190の開始時に、サブノード102-2によって誤って解釈され得る)可能性を低下させるために、及び、上述のように電磁放射を低減するために、スクランブルされ得る。いくつかのそのような実施形態では、同期制御フレーム180のCNTフィールドは、スクランブルされたフィールドが、1つのスーパーフレームから次のスーパーフレームへと異なるようにスクランブルされることを確実にするために、スクランブル論理によって使用され得る。本明細書に記載のシステム100の様々な実施形態は、スクランブルを省略し得る。
上記で論じたように、スクランブル及び/若しくはエラー符号化などの技法に加えて、又はその代わりに、他の技法を使用して、サブノード102-2によってプリアンブル182を一意に識別できることを確実にし得るか、又は、同期制御フレーム180の他の場所にプリアンブル182が現れる可能性を低下し得る。例えば、同期制御フレーム180の残りの部分の特定の符号化が、それに一致する可能性を低下させるように、より長い同期シーケンスが使用されてもよい。追加的又は代替的に、同期制御フレームの残りの部分は、「0」又は「1」の固定値を適切なビットに設定することなどによって、同期シーケンスが発生し得ないように、構造化され得る。
メインノード102-1は、バス106上の通信に特有の要求と、I2C要求との両方を含む、読み取り要求及び書き込み要求をサブノード102-2に送出し得る。例えば、メインノード102-1は、(RWフィールドを使用して示された)読み取り要求及び書き込み要求を、(NAMフィールド及びノードフィールドを使用して)1つ以上の指定されたサブノード102-2に送出し得、要求が、バス106に特有のサブノード102-2に対する要求か、サブノード102-2に対するI2C要求か、それとも、サブノード102-2の1つ以上のI2Cポートでサブノード102-2に結合されたI2C対応の周辺デバイス108に渡される、I2C要求かを示すことができる。
上流の通信については、同期応答フレーム197は、各上流送信を開始し得る。いくつかの実施形態では、同期応答フレーム197は、64ビット長でもよいが、任意の他の好適な長さが使用されてもよい。同期応答フレーム197はまた、同期制御フレーム180のプリアンブル182に関して上記で論じたように、プリアンブルと、それに続くデータ部分と、をも含み得る。下流送信の終わりに、バス106上の最後のサブノード102-2は、RESPCYCSカウンタが満了するまで待ち得、次に、同期応答フレーム197を上流に送信し始め得る。上流のサブノード102-2が、通常の読み取りトランザクション又は書き込みトランザクションによって標的となっている場合、サブノード102-2は、それ自体の同期応答フレーム197を生成し得、下流から受信したものを置き換え得る。任意のサブノード102-2で、予期した時間に下流のサブノード102-2からの同期応答フレーム197が見つからない場合、サブノード102-2は、それ自体の同期応答フレーム197を生成し、それを上流に送信し始める。
同期応答フレーム197のデータ部分は、応答情報をメインノード102-1に返信するために使用されるデータを含む、フィールドを含み得る。これらのフィールドの例を以下で論じ、いくつかの実施形態を図6に示す。具体的には、図6は、様々な実施形態による、通常モード、I2Cモード、及び発見モードにおける同期応答フレーム197用の例示的フォーマットを示す。
いくつかの実施形態では、同期応答フレーム197は、カウント(CNT)フィールドを含み得る。CNTフィールドは、任意の好適な長さ(例えば、2ビット)を有し得、先に受信した同期制御フレーム180のCNTフィールドの値を送信するために、使用され得る。
いくつかの実施形態では、同期応答フレーム197は、肯定応答(ACK)フィールドを含み得る。ACKフィールドは,任意の好適な長さ(例えば、2ビット)を有し得、サブノード102-2が同期応答フレーム197を生成するとき、前の同期制御フレーム180で受信したコマンドを肯定応答するために、そのサブノード102-2によって挿入され得る。ACKフィールドで通信され得る例示的なインジケータは、待機、肯定応答、否定応答(NACK)、及び再試行を含む。いくつかの実施形態では、ACKフィールドは、ブロードキャストメッセージを受信して処理したことを、(例えば、ブロードキャスト肯定応答をメインノード102-1に送信することによって)サブノード102-2によって肯定応答を送信するようにサイズ設定され得る。いくつかのそのような実施形態では、サブノード102-2はまた、(例えば、キーパッド又はタッチスクリーンからの非TDM入力などの、要求ベースの上流送信のために、又は、サブノード102-2がエラー又は緊急状態を報告したいときなどの、優先された上流送信のために使用することができる)送信するデータを、サブノード102-2が有するかどうかも示し得る。
いくつかの実施形態では、同期応答フレーム197は、I2Cフィールドを含み得る。I2Cフィールドは、任意の好適な長さ(例えば、1ビット)を有し得、先に受信した同期制御フレーム180のI2Cフィールドの値を送信するために、使用され得る。
いくつかの実施形態では、同期応答フレーム197は、ノードフィールドを含み得る。ノードフィールドは、任意の好適な長さ(例えば、4ビット)を有し得、同期応答フレーム197を生成するサブノード102-2のIDを送信するために、使用され得る。
いくつかの実施形態では、同期応答フレーム197は、データフィールドを含み得る。データフィールドは、任意の好適な長さ(例えば、8ビット)を有し得、その値は、トランザクションの種類と、同期応答フレーム197を生成するサブノード102-2のACK応答と、に依存し得る。発見トランザクションの場合、データフィールドは、先に受信した同期制御フレーム180のRESPCYCSフィールドの値を含み得る。ACKフィールドがNACKを示すときか、又は同期応答フレーム197がブロードキャストトランザクションに応答しているとき、データフィールドは、(最後のサブノード102-2が、ブロードキャスト書き込みがエラーなしに受信されたかどうかを示し得る)ブロードキャスト肯定応答(BA)インジケータと、(発見トランザクションで新たに発見されたサブノード102-2が、既存のサブノード102-2と一致するかどうかを示す)発見エラー(DER)インジケータと、(NACKが、CRCエラーによって引き起こされたかどうかを示す)CRCエラー(CER)インジケータと、を含み得る。
いくつかの実施形態では、同期応答フレーム197は、CRCフィールドを含み得る。CRCフィールドは、任意の好適な長さ(例えば、16ビット)を有し得、プリアンブルとCRCフィールドとの間の同期応答フレーム197の部分のCRC値を送信するために、使用され得る。
いくつかの実施形態では、同期応答フレーム197は、割り込み要求(IRQ)フィールドを含み得る。IRQフィールドは、任意の好適な長さ(例えば、1ビット)を有し得、サブノード102-2から割り込みが信号で送られたことを示すために、使用され得る。
いくつかの実施形態では、同期応答フレーム197は、IRQノード(IRQNODE)フィールドを含み得る。IRQNODEフィールドは、任意の好適な長さ(例えば、4ビット)を有し得、IRQフィールドによって示される割り込みを信号で送ったサブノード102-2のIDを送信するために、使用され得る。いくつかの実施形態では、IRQフィールドを生成するためのサブノード102-2は、それ自体のIDをIRQNODEフィールド内に挿入する。
いくつかの実施形態では、同期応答フレーム197は、第2のCRC(CRC-4)フィールドを含み得る。CRC-4フィールドは、任意の好適な長さ(例えば、4ビット)を有し得、IRQフィールド及びIRQNODEフィールドのCRC値を送信するために、使用され得る。
いくつかの実施形態では、同期応答フレーム197は、同期応答フレーム197の最後のビット(例えば、最後の10ビット)として、IRQフィールド、IRQNODEフィールド、及びCRC-4フィールドを含み得る。上記で論じたように、これらの割り込み関連フィールドは、CRC-4の形態で、それら自体のCRC保護を有し得る(したがって、前のCRCフィールドによって保護されない)。メインノード102-1に割り込みを信号で送る必要がある、任意のサブノード102-2は、その割り込み情報をこれらのフィールド内に挿入する。いくつかの実施形態では、割り込み待ちを有するサブノード102-2は、同じく割り込み待ちを有する更に下流の任意のサブノード102-2よりも、高い優先度を有し得る。バス106に沿った最後のサブノード102-2(例えば、図1のサブノード2)は、常にこれらの割り込みフィールドを投入し得る。最後のサブノード102-2が割り込み待ちを有さない場合、最後のサブノード102-2は、IRQビットを0に設定し得、IRQNODEフィールドをそのノードIDに設定し得、正しいCRC-4値を提供し得る。便宜上、割り込みを伝達する同期応答フレーム197は、本明細書では「割り込みフレーム」と呼ばれることがある。
いくつかの実施形態では、プリアンブル182とCRCフィールドとの間の同期応答フレーム197の少なくとも一部分は、放射を低減するためにスクランブルされ得る。いくつかのそのような実施形態では、同期応答フレーム197のCNTフィールドは、スクランブルされたフィールドが、1つのスーパーフレームから次のスーパーフレームへと異なるようにスクランブルされることを確実にするために、スクランブル論理によって使用され得る。本明細書に記載のシステム100の様々な実施形態は、スクランブルを省略し得る。
上記で論じたように、スクランブル及び/若しくはエラー符号化などの技法に加えて、又はその代わりに、他の技法を使用して、サブノード102-2によってプリアンブル182を一意に識別できることを確実にし得るか、又は、同期応答フレーム197の他の場所にプリアンブル182が現れる可能性を低下し得る。例えば、同期応答フレーム197の残りの部分の特定の符号化が、それに一致する可能性を低下させるように、より長い同期シーケンスが使用されてもよい。追加的又は代替的に、同期応答フレームの残りの部分は、「0」又は「1」の固定値を適切なビットに設定することなどによって、同期シーケンスが発生し得ないように、構造化され得る。
図7は、様々な実施形態による、図2のバスプロトコル回路126のブロック図である。バスプロトコル回路126は、本明細書に記載のバス106のプロトコルに従ってノードトランシーバ120の動作を制御するための、制御回路154を含み得る。具体的には、制御回路154は、送信用の同期フレーム(例えば、上記で論じたような、同期制御フレーム又は同期応答フレーム)の生成と、受信した同期フレームの処理と、受信した同期制御フレームで特定された制御動作の実行と、を制御し得る。制御回路154は、以下に論じられるように、プログラム可能なレジスタを含み得る。制御回路154は、同期制御フレームを作成及び受信し得、受信メッセージに適切に反応し(例えば、バスプロトコル回路126がサブノード102-2に含まれるときは、同期制御フレームに関連付けられ、あるいは、バスプロトコル回路126がメインノード102-1に含まれるときは、I2Cデバイスから)、及び、異なる動作モード(例えば、通常、発見、スタンバイなど)に対するフレーミングを調整し得る。
ノードトランシーバ120が、バス106に沿った送信に備えてデータを準備している場合、プリアンブル回路156は、送信用の同期フレーム用のプリアンブルを生成し、受信した同期フレームからプリアンブルを受信するように構成され得る。いくつかの実施形態では、下流同期制御フレームのプリアンブルは、1024ビット毎に、メインノード102-1によって送出され得る。上記で論じたように、1つ以上のサブノード102-2は、下流同期制御フレームのプリアンブルに同期し、ローカルの、位相の揃ったメインクロックをプリアンブルから生成し得る。
CRC挿入回路158は、送信用同期フレーム用の1つ以上のCRCを生成するように構成され得る。フレーム/圧縮回路160は、I2S/TDM/PDMトランシーバ127(例えば、トランシーバ127に関連付けられたフレームバッファ)、I2Cトランシーバ129、及び/又はSPIトランシーバ136からの入力データを取り、任意選択的に、データを圧縮し、かつ、任意選択的に、データのパリティ検査ビット又はエラー訂正符号(ECC)を生成するように構成し得る。マルチプレクサ(MUX)162は、プリアンブル回路156からのプリアンブルと、同期フレームと、データとを、送信用のストリームに多重化し得る。いくつかの実施形態では、送信ストリームは、スクランブル回路164によって、送信前にスクランブルされ得る。
例えば、いくつかの実施形態では、フレーム/圧縮回路160は浮動小数点圧縮スキームを適用し得る。そのような実施形態では、制御回路154は、繰り返し符号ビットの数を示す3ビット、それに続く符号ビット及びN-4ビットのデータを送信し得、ここで、Nは、バス106経由で送信されるデータのサイズである。データ圧縮の使用は、所望の場合、メインノード102-1によって構成され得る。
いくつかの実施形態では、ノードトランシーバ120に入る受信ストリームは、デスクランブル回路166によってデスクランブルされ得る。デマルチプレクサ(DEMUX)168は、受信ストリームからのプリアンブルと、同期フレームと、データとを、逆多重化し得る。受信側のCRC検査回路159は、受信した同期フレームを、正しいCRCについて検査し得る。CRC検査回路159が、着信同期制御フレーム180のCRC不具合を識別すると、制御回路154は、不具合について通知され得、同期制御フレーム180の制御データ184のいずれの制御コマンドも実行しない。CRC検査回路159が、着信同期応答フレーム197のCRC不具合を識別すると、制御回路154は、不具合について通知され得、ホスト110への送信用の割り込みを割り込みフレームに生成し得る。フレーム解除/復元回路170は、受信データを受け入れ得、任意選択的にそのパリティを検査し得、任意選択的にエラー検出及び訂正(例えば、単一エラー訂正、二重エラー検出(SECDED))を実行し得、任意選択的にデータを復元し得、I2S/TDM/PDMトランシーバ127(例えば、トランシーバ127に関連付けられたフレームバッファ)、I2Cトランシーバ129、及び/又はSPIトランシーバ136に受信データを書き込み得る。
上記で論じたように、上流データ及び下流データは、スーパーフレーム190内のTDMデータスロットにおいて、バス106に沿って送信され得る。制御回路154は、バス106上のこれらのデータスロットの管理専用のレジスタを含んでもよく、そのいくつかの例を以下で論じる。制御回路154がメインノード102-1に含まれるとき、これらのレジスタの値は、ホスト110によって制御回路154内にプログラムされ得る。制御回路154がサブノード102-2に含まれるとき、これらのレジスタの値は、メインノード102-1によって制御回路154内にプログラムされ得る。
いくつかの実施形態では、制御回路154は、下流スロット(DNSLOTS)レジスタを含み得る。ノードトランシーバ120がメインノード102-1に含まれるとき、このレジスタは、下流データスロットの総数の値を保持し得る。このレジスタはまた、メインノード102-1のI2S/TDM/PDMトランシーバ127によるI2S/TDM/PDMの組み合わせ受信のために使用される、データスロットの数も定義し得る。サブノード102-2では、LDNSLOTSに関して以下で更に詳しく論じられるように、このレジスタは、ローカルで生成された下流スロットの追加前又は追加後に、次のサブノード102-2へ下流に渡される、データスロットの数を定義し得る。
いくつかの実施形態では、制御回路154は、ローカル下流スロット(LDNSLOTS)レジスタを含み得る。このレジスタは、メインノード102-1で未使用であってもよい。サブノード102-2では、このレジスタは、サブノード102-2が使用し、再送信しないデータスロットの数を定義し得る。代替的に、このレジスタは、バス106の下流リンクにサブノード102-2が寄与し得る、スロットの数を定義し得る。
いくつかの実施形態では、制御回路154は、上流スロット(UPSLOTS)レジスタを含み得る。メインノード102-1では、このレジスタは、上流データスロットの総数の値を保持し得る。このレジスタはまた、メインノード102-1のI2S/TDM/PDMトランシーバ127によるI2S/TDM送信のために使用される、スロットの数も定義し得る。サブノード102-2では、このレジスタは、サブノード102-2がそれ自体のデータを追加し始める前に上流に渡される、データスロットの数を定義し得る。
いくつかの実施形態では、制御回路154は、ローカル上流スロット(LUPSLOTS)レジスタを含み得る。このレジスタは、メインノード102-1で未使用であってもよい。サブノード102-2では、このレジスタは、下流から受信したデータが上流に送出される前に、サブノード102-2がそのデータに追加するデータスロットの数を定義し得る。このレジスタはまた、サブノード102-2のI2S/TDM/PDMトランシーバ127によるI2S/TDM/PDMの組み合わせ受信のために使用される、データスロットの数も定義し得る。
いくつかの実施形態では、制御回路154は、ブロードキャスト下流スロット(BCDNSLOTS)レジスタを含み得る。このレジスタは、メインノード102-1で未使用であってもよい。サブノード102-2では、このレジスタは、ブロードキャストデータスロットの数を定義し得る。いくつかの実施形態では、ブロードキャストデータスロットは、常にデータフィールドの始めに発生し得る。ブロードキャストデータスロットのデータは、複数のサブノード102-2によって使用され得、それらが使用されるか否かに関わらず、全てのサブノード102-2によって下流に渡され得る。
いくつかの実施形態では、制御回路154は、スロットフォーマット(SLOTFMT)レジスタを含み得る。このレジスタは、上流送信用又は下流送信用のデータのフォーマットを定義し得る。I2S/TDM/PDMトランシーバ127のデータサイズはまた、このレジスタによっても決定され得る。いくつかの実施形態では、有効なデータサイズには、8ビット、12ビット、16ビット、20ビット、24ビット、28ビット、及び32ビットが含まれる。このレジスタはまた、下流トラフィック又は上流トラフィック用に浮動小数点圧縮を有効にするビットを含んでもよい。浮動小数点圧縮が有効にされると、I2S/TDMデータサイズは、バス106経由のデータサイズよりも、4ビット大きくなり得る。システム100の全てのノードは、データスロットが有効にされるとき、SLOTFMTに対して同じ値を有し得、これらのノードは、全てのノードが同じ値で更新されるように、ブロードキャスト書き込みによってプログラムされ得る。
図8~11は、本明細書に記載のバスプロトコルの様々な実施形態による、バス106に沿った情報交換の例を図示する。具体的には、図8~11は、各サブノード102-2が、周辺デバイス108として1つ以上のスピーカ及び/又は1つ以上のマイクロフォンに結合されている、実施形態を図示する。周辺デバイス108の任意の所望の配置は、本明細書に記載の技法に従って、任意の特定のサブノード102-2に結合され得るので、これは単純に例示的なものである。
始めに、図8は、様々な実施形態による、バス106上の双方向通信の信号伝達及びタイミングの考察を図示する。図8に示されているサブノード102-2は、様々な数のセンサ/アクチュエータ素子を有し、そのため、異なる量のデータが、様々なサブノード102-2に送出され得るか、又はそこから受信され得る。具体的には、サブノード1は2つの素子を有し、サブノード4は4つの素子を有し、サブノード5は3つの素子を有し、そのため、メインノード102-1によって送信されるデータは、サブノード1用に2つのタイムスロット、サブノード4用に4つのタイムスロット、及びサブノード5用に3つのタイムスロットを含む。同様に、サブノード0は3つの素子を有し、サブノード2は3つの素子を有し、サブノード3は3つの素子を有し、サブノード6は1つの素子を有し、サブノード7は4つの素子を有し、そのため、それらのサブノード102-2によって上流に送信されるデータは、対応する数のタイムスロットを含む。素子とタイムスロットとの間に、1対1の相関が存在しなくてもよいことに留意されたい。例えば、周辺デバイス108に含まれる、3つのマイクロフォンを有するマイクロフォンアレイは、3つのマイクロフォンからの信号を(及び、場合によってはメインノード102-1又は他のサブノード102-2から受信した情報も)組み合わせて、処理の種類に応じて、単一のタイムスロット又は複数のタイムスロットに対応し得る、単一のデータサンプルを作り出す、DSPを含み得る。
図8では、メインノード102-1は、SCFと、それに続いて、特定のサブノード102-2(SD)に結合されたスピーカ用のデータとを送信する。連続した各サブノード102-2は、SCFを転送し、下流サブノード102-2宛ての少なくともいずれかのデータもまた転送する。特定のサブノード102-2は、全てのデータを転送し得るか、又は、そのサブノード102-2宛てのデータを削除し得る。最後のサブノード102-2がSCFを受信すると、そのサブノード102-2は、SRFを送信し、任意選択的にそれに続いて、サブノード102-2が送信することが許可されている、任意のデータを送信する。連続した各サブノード102-2は、下流のサブノード102-2からの任意のデータとともにSRFを転送し、任意選択的に、特定のサブノード102-2(MD)に結合された1つ以上のマイクロフォンからのデータを挿入する。図8の例では、メインノード102-1は、(図8にアクティブスピーカとして示されている)サブノード1、4、及び5にデータを送出し、(図8にマイクロフォンアレイとして示されている)サブノード7、6、3、2、及び0からデータを受信する。
図9は、様々な実施形態による、下流DSトランシーバ124の視点からの、下流送信からのデータの動的削除及び上流送信へのデータの挿入を概略的に図示する。図9では、図8と同様に、メインノード102-1は、SCFと、それに続いて、サブノード1、4、及び5(SD)用のデータを逆の順序で送信する(例えば、サブノード5のデータの後にサブノード4のデータが続き、その後にサブノード1のデータが続くなど)(メインとラベル表示された行を参照のこと)。この送信をサブノード1が受信すると、サブノード1は、それ自体のデータを削除し、SCFと、それに続く、サブノード5及びサブノード4用のデータと、のみをサブノード2に転送する。サブノード2及びサブノード3は、サブノード1によって転送されたデータが、サブノード4によって受信されるように(サブ3とラベル表示された行を参照のこと)、データを変更せずに転送する(サブ2と表示された行を参照のこと)。サブノード4は、それ自体のデータを削除し、SCFと、それに続く、サブノード5用のデータと、のみをサブノード5に転送し、同様に、サブノード5はそれ自体のデータを削除し、SCFのみをサブノード6に転送する。サブノード6は、SCFをサブノード7に転送する(サブ6と表示された行を参照のこと)。
この時点で、サブノード7は、SRFと、それに続くそれ自体のデータとを、サブノード6に送信する(サブ6と表示された行を参照のこと)。サブノード6は、SRFを、サブノード7からのデータ及びそれ自体のデータとともにサブノード5に転送し、次に、サブノード5は、SRFを、サブノード7及びサブノード6からのデータとともにサブノード4に転送する。サブノード4は、追加すべきデータを有さず、そのため単純にデータをサブノード3に転送し(サブ3と表示された行を参照のこと)、サブノード3は、データを、それ自体のデータとともにサブノード2に転送し(サブ2と表示された行を参照のこと)、次に、サブノード2は、データを、それ自体のデータとともにサブノード1に転送する。サブノード1は、追加すべきデータを有さず、そのためデータをサブノード0に転送し、サブノード0は、データを、それ自体のデータとともに転送する。結果として、メインノード102-1は、SRFと、それに続く、サブノード7、6、3、2、及び0からのデータと、を受信する(メインと表示された行を参照のこと)。
図10は、図9と同様に、下流DSトランシーバ124の視点からの、下流送信からのデータの動的削除及び上流送信へのデータの挿入の別の例を図示するが、図10では、サブノード102-2は、メインノード102-1が下流のサブノード102-2の全てにデータを送出し、サブノード102-2の全てから戻るデータを受信するように、周辺デバイス108としてセンサ及びアクチュエータの両方に結合されている。また、図10では、データは、その送信先のノードアドレス又はその送信元のノードアドレスに基づいて、順序付けられている。「Y」と表示されたデータスロットは、データの完全性検査又はデータ訂正のために使用され得る。
図11は、図9と同様に、下流DSトランシーバ124の視点からの、下流送信からのデータの動的削除及び上流送信へのデータの挿入の別の例を図示するが、図11では、データは、逆の順序ではなく、順次に下流及び上流に伝達される。各サブノード102-2におけるバッファリングは、データを選択的に追加、削除、及び/又は転送することを可能にする。
上記で論じたように、各サブノード102-2は、下流送信若しくは上流送信からデータを削除し得、及び/又は、下流送信若しくは上流送信にデータを追加し得る。したがって、例えば、メインノード102-1は、別個のデータサンプルを、いくつかのサブノード102-2の各々に送信し得、そのような各サブノード102-2は、それ自体のデータサンプルを削除し得、下流のサブノード102-2に向けたデータのみを転送し得る。その一方で、サブノード102-2は、下流のサブノード102-2からデータを受信し得、そのデータを追加のデータとともに転送し得る。必要なだけの少ない情報を送信することの1つの利点は、システム100によって全体として消費される電力量を低減することである。
システム100はまた、具体的には、サブノード102-2の下流スロット使用の構成を通して、メインノード102-1からサブノード102-2へのブロードキャスト送信(及びマルチキャスト送信)もサポートし得る。各サブノード102-2は、ブロードキャスト送信を処理し得、それを次のサブノード102-2に伝え得るが、特定のサブノード102-2は、ブロードキャストメッセージを「消費」し得る(すなわち、ブロードキャスト送信を次のサブノード102-2に伝えない)。
システム100はまた、(例えば、特定のサブノード102-2から、1つ以上の他のサブノード102-2への)上流送信もサポートし得る。そのような上流送信は、ユニキャスト上流送信、マルチキャスト上流送信、及び/又はブロードキャスト上流送信を含んでもよい。下流送信に関して上記で論じたように、上流アドレス指定によって、サブノード102-2は、サブノード102-2の上流スロット使用の構成に基づいて、上流送信からデータを削除するか否か、及び/又は、次の上流のサブノード102-2に上流送信を伝えるか否かを判定し得る。したがって、例えば、データは、特定のサブノード102-2によって、メインノード102-1にデータを伝えることに加えて、又はその代わりに、1つ以上の他のサブノード102-2に伝えられ得る。そのようなサブ-サブ間の関係は、例えば、メインノード102-1を介して構成され得る。
したがって、様々な実施形態では、サブノード102-2は、情報を選択的に転送、削除、及び追加する能力を有する、アクティブ/インテリジェント中継ノードとして動作し得る。各サブノード102-2が、内部でデータを受信/送信する、関連するタイムスロットを分かっているので、サブノード102-2は、一般に、必ずしもデータの全てを復号/検討せずに、そのような機能を実行し得、したがって、タイムスロットからデータを削除するか、又はタイムスロットにデータを追加することができる。サブノード102-2は、全てのデータを復号/検討する必要がなくてもよいにも関わらず、サブノード102-2は、典型的に、送信/転送するデータを再クロックし得る。このことは、システム100の堅牢性を高め得る。
いくつかの実施形態では、バス106は、リングトポロジにおける一方向通信のために構成され得る。例えば、図12は、リングトポロジにおけるメインノード102-1及び4つのサブノード102-2の配置1200を図示し、様々な実施形態による、配置1200における一方向通信のための信号伝達及びタイミングの考察を図示する。そのような実施形態では、ノード内のノードトランシーバ120は、上流通信及び下流通信用の2つの双方向トランシーバではなく、受信専用トランシーバ(メイン入力)及び送信専用トランシーバ(メイン出力)を含み得る。図12に示されるリンク層同期スキームでは、メインノード102-1は、SCF180と、任意選択的にそれに続いて、様々なサブノード102-2に結合された3つのスピーカ用の「下流」データ1202と、を送信し(図8~11を参照して上記で論じたように、異なるスピーカ用のデータは、任意の好適な順序で配置され得る)、連続した各サブノード102-2は、前のサブノード102-2からの任意の「上流」データ及びそれ自体の「上流」データとともに、同期制御フレーム180を転送して、「上流」データ1204を提供する(例えば、図8~11を参照して上記で論じたように、8つの異なるマイクロフォンからのデータは、任意の好適な順序で配置され得る)。
本明細書に記載のように、データは、システム100の素子間で、いくつかのやり方のうちのいずれかで通信され得る。いくつかの実施形態では、データは、(例えば、データスロット199を使用して)サブノード102-2によって上流に、又は、(例えば、データスロット198を使用して)サブノード102-2又はメインノード102-1によって下流に、同期データスロットのセットの一部として送出され得る。そのようなデータの量は、データスロット内のビット数を変更することによって、又は、追加のデータスロットを含めることによって、調整され得る。システム100では、データはまた、同期制御フレーム180又は同期応答フレーム197に含めることによっても、通信され得る。このように通信されるデータは、(サブノード102-2に関連付けられた周辺デバイス108からの応答を伴う)ホスト110からのI2C制御データと、ホスト110/メインノード102-1からサブノード102-2への書き込みアクセス、及びサブノード102-2からホスト110/メインノード102-1への読み取りアクセスを含み得る、(例えば、スロット及びインタフェースの発見及び構成のための)サブノード102-2のレジスタへのアクセスと、周辺デバイス108からホスト110への割り込みを介したイベント信号伝達と、を含み得る。いくつかの実施形態では、GPIOピンが、(例えば、メインノード102-1にI2C経由でGPIOピンをポーリングさせることによって、又は、サブノード102-2のノードトランシーバ120に、割り込み要求ピンで割り込みを生成させることによって)サブノード102-2からメインノード102-1へ情報を伝達するために使用され得る。例えば、いくつかのそのような実施形態では、ホスト110は、I2Cを介してメインノード102-1に情報を送出し得、次に、メインノード102-1は、その情報をGPIOピンを介してサブノード102-2に送出し得る。バス106経由で送信されるものとして本明細書で論じられる種類のデータのうちのいずれかは、これらの通信経路のうちの任意の1つ以上を使用して、送信され得る。システム100内の他の種類のデータ及びデータ通信技法が、本明細書で開示され得る。
本開示の実施形態は、所望のように構成するために、任意の好適なハードウェア及び/又はソフトウェアを使用して、システム内に実装され得る。図13は、様々な実施形態による、システム100においてホスト又はノード(例えば、ホスト110、メインノード102-1、又はサブノード102-2)として機能し得る、デバイス1300を概略的に図示する。いくつかの構成要素が、デバイス1300に含まれるものとして図13に示されているが、これらの構成要素のうちの任意の1つ以上は、用途に適するように、省略又は複製され得る。
加えて、様々な実施形態では、デバイス1300は、図13に示された構成要素のうちの1つ以上を含まないことがあるが、デバイス1300は、その1つ以上の構成要素に結合するためのインタフェース回路を含んでもよい。例えば、デバイス1300は、表示デバイス1306を含まないことがあるが、表示デバイス1306が結合され得る、表示デバイスインタフェース回路(例えば、コネクタ及びドライバ回路)を含み得る。別のセットの例では、デバイス1300は、音声入力デバイス1324又は音声出力デバイス1308を含まないことがあるが、音声入力デバイス1324又は音声出力デバイス1308が結合され得る、音声入力又は出力デバイスインタフェース回路(例えば、コネクタ及び支援回路)を含み得る。
本明細書に開示される実施形態のうちのいずれかによる、デバイス1300は、デバイス1300がバス106に結合されるとき、バス106に沿った通信を管理するための、ノードトランシーバ120を含み得る。デバイス1300は、ノードトランシーバ120に含まれ得るか、又はノードトランシーバ120とは別個であり得る、処理デバイス1302(例えば、1つ以上の処理デバイス)を含み得る。本明細書で使用される場合、「処理デバイス」という用語は、レジスタ及び/又はメモリからの電子データを処理し、その電子データを、レジスタ及び/又はメモリに記憶され得る他の電子データに変換する、任意のデバイス又はデバイスの一部分を指し得る。処理デバイス1302は、1つ以上のDSP、ASIC、中央処理ユニット(CPU)、グラフィック処理ユニット(GPU)、暗号プロセッサ、又は任意の他の好適な処理デバイスを含み得る。デバイス1300は、メモリ1304を含み得、それ自体は、揮発性メモリ(例えば、ダイナミックランダムアクセスメモリ(DRAM))、不揮発性メモリ(例えば、読み取り専用メモリ(ROM))、フラッシュメモリ、固体メモリ、及び/又はハードディスクドライブなどの、1つ以上のメモリデバイスを含み得る。
いくつかの実施形態では、メモリ1304は、本明細書に開示される技法のうちの任意の好適なものをデバイス1300に実行させる、プログラミング命令の作業コピー及び永久コピーを記憶するために、用いられ得る。いくつかの実施形態では、上記の技法を実行するための(非一時的コンピュータ可読記憶媒体を含む)機械アクセス可能媒体、方法、システム、及びデバイスは、2線式バス経由の通信用の、本明細書に開示される実施形態の例示としての例である。例えば、コンピュータ可読媒体(例えば、メモリ1304)は、処理デバイス1302に含まれる処理デバイスのうちの1つ以上によって実行されるとき、本明細書に開示される技法のうちのいずれかをデバイス1300に実行させる、記憶された命令を有し得る。
いくつかの実施形態では、デバイス1300は、別の通信チップ1312(例えば、1つ以上の他の通信チップ)を含み得る。例えば、通信チップ1312は、デバイス1300へのデータ転送及びデバイス1300からのデータ転送のための無線通信を管理するために構成され得る。「無線」という用語及びその派生語は、非固体媒体を通した変調電磁放射を用いてデータを通信し得る回路、デバイス、システム、方法、技法、通信チャネルなどを説明するために、使用され得る。その用語は、関連付けられたデバイスがいかなる配線も含まないことを意味しないが、いくつかの実施形態では、含まないことがある。
通信チップ1312は、Wi-Fi(IEEE802.11ファミリ)、IEEE802.16規格(例えば、IEEE802.16-2005修正)を含む米国電気電子学会(IEEE)規格、任意の修正、更新、及び/又は改訂(例えば、アドバンストLTEプロジェクト、ウルトラモバイルブロードバンド(UMB)プロジェクト(「3GPP2」とも呼ばれるなど)を伴う、ロングタームエボリューション(LTE)プロジェクトを含むが、これらに限定されない、いくつかの無線規格又はプロトコルのうちのいずれかを実施し得る。IEEE802.16互換広帯域無線アクセス(BWA)ネットワークは、一般に、WiMAXネットワークと呼ばれ、これは、IEEE802.16規格の適合性試験及び相互運用性試験に合格する製品に対する認証マークである、Worldwide Interoperability for Microwave Accessを表す頭字語である。1つ以上の通信チップ1312は、グローバルシステムフォーモバイルコミュニケーション(GSM)、汎用パケット無線サービス(GPRS)、ユニバーサル移動体通信システム(UMTS)、高速パケットアクセス(HSPA)、発展型HSPA(E-HSPA)、又はLTEネットワークに従って、動作し得る。1つ以上の通信チップ1312は、GSM革新のための強化データ(EDGE)、GSM EDGE無線アクセスネットワーク(GERAN)、ユニバーサル地上無線接続ネットワーク(UTRAN)、又は発展型UTRAN(E-UTRAN)に従って、動作し得る。1つ以上の通信チップ1312は、符号分割多重アクセス(CDMA)、時分割多重アクセス(TDMA)、デジタル強化無線電気通信(DECT)、発展型データ最適化(EV-DO)、及びそれらの派生物、並びに、3G、4G、5G、及びそれ以降として指定された任意の他の無線プロトコルに従って、動作し得る。他の実施形態では、通信チップ1312は、他の無線プロトコルに従って動作し得る。デバイス1300は、無線通信を容易にし、及び/又は、(AM無線送信若しくはFM無線送信などの)他の無線通信を受信する、アンテナ1322を含み得る。
いくつかの実施形態では、通信チップ1312は、本明細書に記載のバス106用のプロトコル以外のプロトコルを使用して、有線通信を管理してもよい。有線通信は、電気通信プロトコル、光通信プロトコル、又は任意の他の好適な通信プロトコルを含み得る。通信チップ1312によって有効にされ得る有線通信プロトコルの例としては、イーサネット、コントローラエリアネットワーク(CAN)、I2C、media-oriented systems transport(MOST)、又は任意の他の好適な有線通信プロトコルが挙げられる。
上述のように、通信チップ1312は、複数の通信チップを含んでもよい。例えば、第1の通信チップ1312は、Wi-Fi又はブルートゥース(登録商標)などの短距離無線通信専用であってもよく、第2の通信チップ1312は、グローバルポジショニングシステム(GPS)、EDGE、GPRS、CDMA、WiMAX、LTE、EV-DO、又はその他の長距離無線通信専用であってもよい。いくつかの実施形態では、第1の通信チップ1312は、無線通信専用であってもよく、第2の通信チップ1312は、有線通信専用であってもよい。
デバイス1300は、バッテリ/電力回路1314を含み得る。バッテリ/電源回路1314は、1つ以上のエネルギー蓄積デバイス(例えば、バッテリ又はコンデンサ)、及び/又は、デバイス1300の構成要素を、デバイス1300とは別個のエネルギー源(例えば、ACライン電源、自動車バッテリによって提供される電圧など)に結合するための回路を含み得る。例えば、バッテリ/電源回路1314は、図2を参照して上記で論じた上流バスインタフェース回路132及び下流バスインタフェース回路131を含み得、バス106上のバイアスによって充電され得る。
デバイス1300は、表示デバイス1306(又は、上記で論じたような対応するインタフェース回路)を含み得る。表示デバイス1306は、例えば、ヘッドアップディスプレイ、コンピュータ用モニタ、プロジェクタ、タッチスクリーンディスプレイ、液晶ディスプレイ(LCD)、発光ダイオードディスプレイ、又はフラットパネルディスプレイなどの、任意の視覚的インジケータを含み得る。
デバイス1300は、音声出力デバイス1308(又は、上記で論じたような対応するインタフェース回路)を含み得る。音声出力デバイス1308は、例えば、スピーカ、ヘッドホン、又はイヤホンなどの、可聴インジケータを生成する任意のデバイスを含み得る。
デバイス1300は、音声入力デバイス1324(又は、上記で論じたような対応するインタフェース回路)を含み得る。音声入力デバイス1324は、マイクロフォン、マイクロフォンアレイ、又はデジタル機器(例えば、ミディ(MIDI)出力を有する機器)などの、音を表す信号を生成する任意のデバイスを含み得る。
デバイス1300は、GPSデバイス1318(又は、上記で論じたような対応するインタフェース回路)を含み得る。GPSデバイス1318は、当技術分野で周知のように、衛星を利用したシステムと通信し得、デバイス1300の場所を受信し得る。
デバイス1300は、別の出力デバイス1310(又は、上記で論じたような対応するインタフェース回路)を含み得る。別の出力デバイス1310の例としては、音声コーデック、映像コーデック、プリンタ、他のデバイスに情報を提供するための有線送信機若しくは無線送信機、又は追加の記憶デバイスが挙げられ得る。加えて、本明細書で論じられる周辺デバイス108のうちの任意の好適なものが、別の出力デバイス1310に含まれてもよい。
デバイス1300は、別の入力デバイス1320(又は、上記で論じたような対応するインタフェース回路)を含み得る。別の入力デバイス1320の例としては、加速度計、ジャイロスコープ、画像取込デバイス、キーボード、(マウス、タッチペン、タッチパッドなどの)カーソル制御デバイス、バーコードリーダ、クイックレスポンス(QR)コードリーダ、又は無線自動識別(RFID)リーダが挙げられ得る。加えて、本明細書で論じられるセンサ又は周辺デバイス108のうちの任意の好適なものが、別の入力デバイス1320に含まれてもよい。
デバイス1300に関して上記に記載した表示デバイス、入力デバイス、出力デバイス、通信デバイス、又はメモリデバイスのうちの任意の好適なものが、システム100の周辺デバイス108として機能してもよい。代替的又は追加的に、デバイス1300に関して上記に記載した表示デバイス、入力デバイス、出力デバイス、通信デバイス、又はメモリデバイスのうちの好適なものが、ホスト(例えば、ホスト110 )又はノード(例えば、メインノード102-1又はサブノード102-2)に含まれてもよい。
システム100の素子は、バス106経由で音声制御及び/又は光制御を提供するように、選択及び構成されて得る。いくつかの実施形態では、システム100は、バス106に沿ったノード102と通信する周辺デバイス108として機能する照明デバイス(例えば、ストリップライン発光ダイオード(LED)又は他のLED配置)を備えた、車両又は他の環境で光制御システムとして機能するように構成されてもよく、データは、照明デバイスの色、強度、デューティサイクル、及び/又は他のパラメータを制御するために、バス106経由で通信されてもよい。いくつかの実施形態では、システム100は、バス106に沿ったノード102と通信する周辺デバイス108として機能し得る加速度計を含むマイクロフォン又は他のデバイスを備えた、車両又は他の環境で音声制御システムとして機能するように構成されてもよく、加速度計からのデータは、バス106に沿った他の周辺デバイス108を制御するために、バス106経由で通信されてもよい。例えば、加速度データ又は他の所定の加速度データパターンの大きなスパイクを使用して、ノード102に結合された処理デバイスによる、カウベル又はドラムヒットなどの音響効果の生成を引き起こし得、その音響効果は、処理デバイスに結合されたスピーカ、及び/又は、バス106に沿って別のノード102に結合されたスピーカによって、出力され得る。システム100のいくつかの実施形態は、本明細書に開示された照明制御技術及び/又は音声制御技術のうちのいずれかを組み合わせてもよい。
上記で論じた実施形態の様々なものは、車両設定でシステム100を説明するが、これは単純に例示的であり、システム100は、任意の所望の設定で実装され得る。例えば、いくつかの実施形態では、システム100の「持ち運び可能な」実装例は、システム100の所望の構成要素を含むポータブルハウジングを含み得、そのような実装例は、ポータブルカラオケ又は娯楽システムなどの携帯用途に特に適し得る。
上述のように、(例えば、周辺デバイス108のうちの1つ以上がマイクロフォンを含むシステム100の実施形態では)アレイ内のマイクロフォンの較正は、効果的なビーム形成及び他の動作にとって重要であり得る。図14~22は、較正のための例示的なシステム及び技法、並びにランタイム中の較正のアプリケーションを図示する。
図14は、様々な実施形態による、製造後の完成品性能テスト中のマイクロフォンモジュールの較正システムを図示する。図14のシステムでは、ラウドスピーカ2120は、較正中のマイクロフォンモジュール2140に対してテスト信号s(t)を再生し得る。マイクロフォンモジュール2140は、1つのマイクロフォンを含み得るか、又はn個のマイクロフォンM...M 2141...2142のアレイを含み得る。いくつかの例では、n=1であり、マイクロフォンアレイは、1つのマイクロフォンからなるアレイである。基準マイクロフォンM 2130は、ラウドスピーカ2120とマイクロフォンモジュール2140との間に設置され得るか、又は、ラウドスピーカ2120及びマイクロフォンモジュール2140に対して任意の好適な既知の場所に設置され得る。マイクロフォンM...Mは、それぞれ信号m(t)...m(t)を生成し得、これらの信号及び基準マイクロフォン信号m(t)は、較正計算機2110で処理され得る。較正計算機2110は、任意の好適な処理デバイスを含んでもよく、例えば、パーソナルコンピュータであってもよい。較正計算機2110は、(本明細書では「較正係数」とも呼ばれる)フィルタ係数のセットK...Kを生成し得、較正中のマイクロフォンモジュール2140にフィルタ係数を送信し得る。係数は、マイクロフォンモジュール2140に関連付けられた不揮発性メモリ2143(例えば、プログラマブル読み取り専用メモリ(PROM))に記憶されてもよい。
マイクロフォンモジュールは、一般に、製造中又は製造後にテストされる。いくつかの例では、スピーカ2120は、基準マイクロフォン2130、及びマイクロフォンモジュール2140のマイクロフォン2141、2142の各々で受信される、トーン、チャープ、又は周波数レンジの掃引を発する。次に、マイクロフォン2141、2142の各々が仕様に合格するかどうかを判定する。受信トーンに対するマイクロフォン2141、2142の応答は、周波数測定値、大きさ測定値、及び位相測定値を含む。受信した周波数測定値、大きさ測定値、及び位相測定値が、選択されたマイクロフォン2141、2142でどのようであるかが判定されると、較正係数は、それぞれのマイクロフォン、又はマイクロフォンモジュール全体として決定され得る。様々な例では、大きさ測定値は、振幅測定値である。いくつかの例では、いくつかのマイクロフォンモジュールはテストに合格せず、廃棄される。
テストに合格するマイクロフォンモジュールは、テストトーン(又は、テストチャープ、テスト周波数掃引など)応答測定値を使用して較正され得、周波数及び位相プロットは、各マイクロフォン2141、2142用に生成され得る。周波数プロット及び位相プロットは、今後のマイクロフォン2141、2142の較正のために使用され得る。例えば、較正情報は、各マイクロフォン又はマイクロフォンモジュール全体用に生成され、今後のマイクロフォンの較正及び/又は補償のために保存され得る。いくつかの例では、変換は、各マイクロフォン2141、2142に対して生成され、これは、その後のマイクロフォンの補償及び/又は較正のために記憶され、使用され得る。いくつかの例では、較正データは、読み取り専用メモリ、プログラマブル読み取り専用メモリ(PROM)、消去可能なPROM(EPROM)、及び電気的消去可能プログラマブル読み取り専用メモリ(EEPROM)などの、マイクロフォンモジュール自体上のメモリに記憶される。いくつかの例では、マイクロフォンの較正データは、マイクロフォンの外側に記憶される。例えば、較正データは、マイクロフォンの使用前及び使用中に較正するために、クラウドストレージに記憶され得、デジタル信号プロセッサ(DSP)にアクセス可能にされ得る。いくつかの例では、デジタルバスネットワーク形成機能を使用して、各マイクロフォン用に特定のマイクロフォン較正データを取り込むことができる。
いくつかの例では、マイクロフォン2141、2142の較正は、基準マイクロフォン2130を使用して遂行される。例えば、基準マイクロフォン2130は、既知の応答を有する。マイクロフォンの較正は、マイクロフォンの較正係数を生成する。較正係数は、マイクロフォンモジュールが据え付けられている場所に関係なく、較正係数がマイクロフォンに残るように、マイクロフォンモジュール上に記憶され得る。
いくつかの実施態様によれば、各マイクロフォンのために保存される較正係数は、位相データを含み、いくつかの例では、較正係数は、位相公差を含む。いくつかの実施態様では、較正係数は、複素数を含む。いくつかの例では、較正係数は、インパルス応答を含む。いくつかの例では、較正係数は、伝達関数を含む。
様々な実施態様によれば、基準マイクロフォン2130は、空間の基準点であり、基準マイクロフォン2130は、スピーカ2120の不確実性の主な原因となる、スピーカ2120から受信した音を較正する。様々な例では、基準マイクロフォン2130は、事前較正されている。いくつかの例では、基準マイクロフォン2130の周波数応答は、事前較正されている。いくつかの例では、基準マイクロフォン2130の周波数応答は、マイクロフォンモジュール2140のために使用され得る。いくつかの実施態様では、位相情報が較正に含まれ、マイクロフォンメモリ2143などのマイクロフォンモジュールに保存される。いくつかの例では、計算デバイスは、マイクロフォンモジュール2140に記憶された較正係数データを取り込み、データをマイクロフォン2141、2142に適用して、マイクロフォン2141、2142を較正する。
様々な実施態様では、マイクロフォンモジュール2143上のメモリは、EPROMである。いくつかの例では、メモリモジュール2143は、EEPROMである。いくつかの例では、メモリモジュール2143は、ワンタイムプログラマブル(OTP)EPROMである。いくつかの実施態様では、メモリモジュール2143は、ベンダ情報、製品情報、バージョン情報、シリアル番号、デバイス機能、及び任意の他のマイクロフォン情報などの、追加のマイクロフォン情報を含む。いくつかの実施態様では、メモリは、マイクロフォンモジュール上のMCU又はデジタルネットワーキングチップ上に統合される。
様々な実施態様によれば、マイクロフォンモジュール自体に記憶されている較正データは、周波数データ、大きさデータ、及び位相データを含む。様々な例では、大きさデータは、振幅データを含む。いくつかの例では、較正データは、2線式インタフェース経由で通信される。いくつかの例では、較正データは、デジタルネットワーキングバスのような音声通信ネットワーク経由で通信される。
様々な実施態様によれば、較正係数は、単一のマイクロフォン用に記憶され得、較正係数は、マイクロフォンアレイ用に記憶され得る。いくつかの例では、単一の較正が、マイクロフォンアレイ用に記憶されている。例えば、マイクロフォンが中心から外れており、マイクロフォンの中心から外れた位置が較正中に発見された場合、同じ較正データを使用して、マイクロフォンの各々の中心から外れた状態を較正することができる。マイクロフォンアレイ及びマイクロフォンモジュール2140の特性は、一緒に較正することができる。いくつかの例では、各マイクロフォンは、個々の較正データを有する。
いくつかの例では、利得補正及び位相補正は、シフトされたマイクロフォンのように見えることがある。信号が着信時にどのように現れるかを知ることができ、信号の位置が間違っている場合は、調整を行うことができる。様々な例では、シフトは、マイクロフォンの不整合、又はマイクロフォンの設置の不整合のいずれかであり得る。両方は見分けがつかず、同じ最終結果で同時に処理することができる。
いくつかの実施態様では、モジュール2140のマイクロフォンは、選択された方向に対して較正され、センサ毎の較正の後、マイクロフォンモジュール2140のアレイのマイクロフォンは、マイクロフォン2141、2142が同一の周波数応答及び位相応答を有するように較正される。一般に、マイクロフォンが較正されると、較正係数は、マイクロフォンにとどまり、したがって、マイクロフォンが最終的に据え付けられる場所で使用され得る。
いくつかの例では、メモリ2143は、個々のマイクロフォンに特有のいくつかの較正データと、マイクロフォンモジュール2140に適用されるいくつかの較正データと、を含む。例えば、マイクロフォンアレイのマイクロフォン間の間隔などのマイクロフォンモジュール2140の物理的特性は、メモリ2143に記憶され得る。いくつかの例では、ビーム形成を運転者に適用できるように、車両ヘッドユニットに取り付けられたマイクロフォンアレイに係数が提供される。例えば、ヘッドユニットは、どの角度及び/又は方向に焦点を合わせるべきかを知り得るが、ヘッドユニットは、どのような種類のマイクロフォンアレイが据え付けられているかを知らないことがある。マイクロフォンアレイ情報をヘッドユニットが利用可能である場合、ヘッドユニットは、ビーム形成特性を計算することができる。メモリ2143に記憶され得るマイクロフォンモジュールに関する情報は、アレイのマイクロフォンの数、マイクロフォンの利得範囲、及びマイクロフォンの物理的特性を含む。
図14を参照して上記で論じた較正方法のいくつかの特定の実施形態では、短時間フーリエ変換を使用して、対応する信号の周波数領域表示S(f)、M(f)、M(f)...M(f)を計算し得る。
いくつかの実施態様では、システムの複数のマイクロフォンモジュール用のマイクロフォンデータは、サブノードの1つのメモリデバイス上に記憶される。いくつかの実施態様では、システムの全てのマイクロフォンモジュール用のマイクロフォンデータは、サブノードの1つのメモリデバイス上に記憶される。例えば、較正データは、オンボード処理なしで、データストレージで、サブノードに記憶され得る。いくつかの例では、データは、据え付け後のシナリオテストの後に記憶され、利用可能でオープンなメモリデバイスを有するネットワークバスノードに記憶される。
図15は、本発明の様々な実施形態による、図14のもののようなシステムを使用して較正中に実行され得る動作を示す、方法2200である。ステップ2202では、テスト信号s(t)は、ラウドスピーカを通して再生される。例えば、テスト信号s(t)は、ラウドスピーカ2120を通して再生され得る。テスト信号s(t)は、テストトーン、チャープ、周波数掃引、又は任意の他の種類の信号であり得る。ステップ2204では、マイクロフォンの音声信号m(t)、m(t)、…m(t)は、マイクロフォンアレイの基準マイクロフォン及びマイクロフォン(例えば、基準マイクロフォン2130からの基準マイクロフォンの音声信号m(t)、及びマイクロフォンモジュール2140のマイクロフォンアレイからのマイクロフォンの音声信号m(t)、…m(t))からサンプリングされる。
ステップ2206では、周波数領域信号S(f)、M(f)、M(f)、…、M(f)は、各時間領域信号s(t)、m(t)、m(t)、…、m(t)のN個の音声サンプルのフレームに基づいて決定される。いくつかの例では、各時間領域信号s(t)、m(t)、m(t)、…、m(t)のN個の音声サンプルのフレームのフーリエ変換は、周波数領域信号S(f)、M(f)、M(f)、…、M(f)を計算するために使用される。ステップ2208では、較正係数K(t)、…、K(t)は、各マイクロフォンM、…、M(例えば、マイクロフォンモジュール2140のマイクロフォンアレイのマイクロフォン2141、2142)に対して計算される。いくつかの例では、較正係数を計算するために、スペクトル領域信号M(f)、…、M(f)及びS(f)又はM(f)が使用される。いくつかの例では、ステップ2206で計算された周波数領域信号を使用して、ステップ2208で較正係数を決定する。いくつかの例では、基準マイクロフォンの音声信号m(t)を使用して、マイクロフォンモジュール2140のマイクロフォンアレイのマイクロフォン2141、2142の較正係数を決定する。ステップ2210では、較正係数K(t)、…、K(t)は、マイクロフォンアレイに関連付けられた不揮発性メモリに記憶される(例えば、較正係数K()、…、K()は、マイクロフォンモジュール2140のメモリ2143に記憶される)。
図16は、本発明の様々な実施形態による、較正係数を決定する際に実行され得る、特定の動作を示す方法2220である。具体的には、いくつかの例では、方法2220のステップ2222及びステップ2224は、図15の方法2200のステップ2208に取って代わる。いくつかの例では、方法2220は、図15の方法2200のステップ2206の後に開始する。ステップ2222では、較正伝達関数H…Hは、マイクロフォンモジュール2140の各マイクロフォン2141、2142に対して計算される。具体的には、較正伝達関数H(f)が計算され(x=1….n)、式中、
いくつかの例では、較正伝達関数は、サンプリングされたマイクロフォン音声信号m(t)、m(t)、…m(t)を使用して計算される。ステップ2224では、H(f)の逆フーリエ変換を使用して、較正伝達関数H…Hを使用して、較正係数K()、…K()を計算する。ステップ2226では、較正係数は、マイクロフォンモジュールの不揮発性メモリ(例えば、マイクロフォンモジュール2140のメモリ2143)に記憶される。
図16の実施形態では、M~Mをマッピングする伝達関数(ここで、xは、マイクロフォン1...nのうちのいずれかを示す)は、(1)(分母である)マイクロフォンM及び基準マイクロフォンM 2130の時間平均相互相関積、及び(2)(分子である)Mの自己相関積の商として計算され得る。図16に示された較正伝達関数は、この伝達関数の逆数であり、位相シフト項expは、MとMとの間の時間遅延を反映し、より短いフィルタをもたらす。(i2πfd/c)有限インパルス応答(FIR)フィルタ係数Kは、較正伝達関数H 2312の逆フーリエ変換を適用することによって、計算され得る。
図17は、本発明の様々な実施形態による、較正係数を決定する際に実行され得る、特定の動作を示す方法2240である。具体的には、いくつかの実施例では、方法2240は、図15のステップ2204の後に開始する。図17に示すように、方法2240は、複数ステップの手順である。ステップ2242では、テスト信号ラウドスピーカは事前較正されている。具体的には、伝達関数H(f)は、ラウドスピーカ信号S(f)を基準マイクロフォン信号M(f)に対応させるために、計算され得る。一例では:
ステップ2244では、較正伝達関数H(f)が計算される(x=1…n)。具体的には:
いくつかの例では、次に、基準マイクロフォンMは、ステップ2244での較正伝達関数Hの計算に使用されない。例えば、基準マイクロフォン信号は、H(f)及びS(f)の積として計算され得る。次に、フィルタ係数の計算は、上記のように実行され得る。具体的には、ステップ2246では、較正係数K(t)(x=1…n)は、H(f)(x=1…n)の逆フーリエ変換によって決定される。ステップ2248では、較正係数は、マイクロフォンアレイのメモリに記憶される。更に別の実施形態では、方法2240における較正の第1のステップは省略され得、ラウドスピーカは、テスト信号s(t)(例えば、平坦な周波数応答を有する点光源)を出力するために利用され得、H(f)は、全ての周波数について1に設定され得る。
図18は、様々な実施形態による、複数のマイクロフォンモジュールA...A 2410...2420を含むシステム2400を図示する。システム2400は、動作時のマイクロフォンモジュールA...A 2410...2420を示す。具体的には、マイクロフォンモジュールA...A 2410...2420は、使用のために選択された場所に据え付けられ得る。マイクロフォンモジュールA...A 2410...2420は、図14~17に関して上述したように、先に較正されていてもよい。システム2400での動作中、先に実行された較正を使用して、モジュールA...A 2410...2420のマイクロフォン用のマイクロフォン信号をフィルタにかけてもよい。具体的には、較正は、マイクロフォンモジュールA...A 2410...2420の各々に対して先に実行されていてもよく、較正係数は、各マイクロフォンモジュールA...A 2410...2420のメモリ2413、2423に記憶されてもよい。図18のシステムでは、マイクロフォン信号処理ユニット2430は、マイクロフォン信号シンク2440への(例えば、本明細書に開示されたバス106の実施形態のうちのいずれかであり得る)データインタフェース2450上のエッジプロセッサとして動作し得る。
図19は、様々な実施形態による、ランタイム中に較正係数を適用する方法2500を示す図である。いくつかの実装態様では、方法2500は、図18のマイクロフォン信号処理ユニット2430によって実行されてもよい。ステップ2502では、較正係数Kxy()(x=1…n、y=1…m)は、データインタフェース2510を介して、メモリ2413、2423からマイクロフォンモジュールA...A 2410...2420に対して、マイクロフォン信号処理ユニット2430によって取り出される。ステップ2504では、それぞれの較正係数Kxy()を有するマイクロフォン信号mxy(t)の離散畳み込みが実行され、較正マイクロフォン信号nxy(t)を生成する。
式中、x=1…n、y=1…mである。
いくつかの例では、較正係数Kは、FIRフィルタとして適用される。ステップ2506では、元のマイクロフォン信号mxy(t)は、マイクロフォン信号処理ユニット2430における較正マイクロフォン信号nxy(t)に置き換えられる。いくつかの例では、元のマイクロフォン信号は、データインタフェースの下にある較正マイクロフォン信号に置き換えられる。ステップ2508では、較正マイクロフォン信号nxy(t)は、元のマイクロフォン信号mxy(t)、x=1…n、y=1…mの代わりに、データインタフェース2450上のマイクロフォンシンク2440に転送される。
図20は、本開示の様々な実施形態による、本明細書に開示された技法に従って較正されたマイクロフォンモジュールが使用され得る、例示的な設定を示す図2600である。具体的には、図20は、メインノード2602、第1のサブノード2604、第2のサブノード2606、及び第3のサブノード2606を含む車両を示す。メインノード2602は、バス106を介して第1のサブノード2604に接続され、第1のサブノード2604は、バス106を介して第2のサブノード2606に接続され、第2のサブノード2606は、バス106を介して第3のサブノード2608に接続される。したがって、メインノード2602、第1のサブノード2604、第2のサブノード2606、及び第3のサブノード2608は、本明細書に記載のように、デイジーチェーン構成で接続されている。
いくつかの例では、メインノード2602はヘッドユニットである。いくつかの例では、第2のサブノード2606及び第3のサブノード2608からのデジタル音声信号が、第1のサブノード2604に送出される。様々な例では、第1のサブノード2604、第2のサブノード2606、及び第3のサブノード2608のうちのいずれかは、音声処理ノードを含むことができる。同様に、メインノード2602は、音声処理ノードを含むことができる。様々な例では、音声処理ノードは、メインノード、マイクロフォンノード、アンプノード、緊急呼び出しノード、又は、他の多くの種類のノードであり得る。図20の設定は車両であるが、本明細書に開示されたシステム及び技法は、任意の好適な設定で使用され得る。いくつかの実施形態では、バス106は、撚線対(例えば、非シールドツイストペア)を含み得る。
いくつかの実施形態では、マイクロフォンモジュールの較正は、製造時に工場で行われないことがあるが、マイクロフォンがそれぞれの意図された設定に据え付けられたときに行われてもよい。例えば、図21は、本開示の様々な実施形態による、マイクロフォンモジュールをそれぞれの動作設定で較正するためにシステム100によって実行され得る、マイクロフォンモジュール較正のための方法2700を示す図である。例えば、方法2700は、図20に示された車両などの車両で実行され得る。しかしながら、図21の較正手順は、所望のように、動作設定の代わりに、工場設定でシステム100によって実行され得る。本明細書に開示された技法のうちの任意の適切なものを使用して、図21の手順の較正係数を計算し得る。
ステップ2702では、バスシステムが発見され、構成される。バスシステムは、本明細書に記載されるものなど、任意の種類のバスシステムであり得る。ステップ2704では、基準スピーカからテスト信号が再生される。いくつかの例では、テスト信号はチャープである。基準スピーカは、バスシステムに接続され得る。いくつかの例では、基準スピーカは、バスシステムに接続されていないが、別様に、マイクロフォンシステムに接続されている。ステップ2706では、テスト信号が印加されている間、マイクロフォンノードがサンプリングされる。加えて、測定マイクロフォン及び/又は基準マイクロフォンが存在する場合、ステップ2706では、測定マイクロフォン及び/又は基準マイクロフォンがサンプリングされる。ステップ2708では、任意の他の較正データとともに、各マイクロフォンノードの較正係数が計算される。ステップ2710では、各マイクロフォンノードについての較正情報は、各マイクロフォンノードに記憶される。
図22は、様々な実施形態による、マイクロフォンモジュールの動作手順のための方法2750を示す図である。方法2750は、本明細書に開示されたマイクロフォンモジュールの較正技法のうちのいずれかによって生成された、較正係数を抽出して使用するために、システム100によって実行され得る。ステップ2752では、バスシステムが発見され、構成される。バスシステムは、本明細書に記載されるものなど、任意の種類のバスシステムであり得る。ステップ2754では、マイクロフォンノードから、予め記憶された情報が読み取られる。いくつかの例では、予め記憶された情報は、各マイクロフォンノードの不揮発性メモリに記憶され、予め記憶された情報は、較正情報と、ベンダ、製品、モデル番号、シリアル番号、バージョンなどの一般的なマイクロフォン情報と、を含むことができる。ステップ2756では、較正情報は、音声信号プロセッサを含むノードに転送される。ステップ2758では、マイクロフォンからの較正情報が、音声信号処理ノードに適用される。ステップ2760では、音声出力が再生される。音声出力は、アナログ音声出力又はデジタル音声出力であり得、スピーカ、アンプ、電話、又は任意の他の音声出力デバイスに出力され得る。
選択実施例
実施例1は、マイクロフォンモジュール較正のためのシステムであって、テスト信号を再生するように構成された、ラウドスピーカと、テスト信号を受信し、複数のマイクロフォンアレイ信号を生成するように構成された、マイクロフォンモジュールと、ラウドスピーカとマイクロフォンモジュールとの間に位置決めされた、基準マイクロフォンであって、テスト信号を受信し、基準信号を生成するように構成されている、基準マイクロフォンと、複数のマイクロフォンアレイ信号及び基準信号を処理し、フィルタ係数のセットを生成し、フィルタ係数のセットをマイクロフォンアレイに送信するように構成された、較正計算機と、を備える、システムを提供する。
実施例2は、フィルタ係数のセットを記憶するように構成されたマイクアレイに関連付けられた、メモリを更に備える、先行の実施例及び/又は後続の実施例のいずれかによるシステムを提供する。
実施例3は、メモリが、マイクロフォンアレイとともにマイクロフォンアレイモジュール上に位置決めされている、先行の実施例及び/又は後続の実施例のいずれかによるシステムを提供する。
実施例4は、メモリが、マイクロフォンアレイによってアクセス可能な、クラウドベースのメモリである、先行の実施例及び/又は後続の実施例のいずれかによるシステムを提供する。
実施例5は、メモリが、ベンダ情報、製品情報、バージョン情報、モデル情報、能力情報、シリアル番号、製造情報、構成情報、ルーティング情報、及び認証情報のうちの少なくとも1つを含む、マイクロフォン情報を記憶するように更に構成されている、先行の実施例及び/又は後続の実施例のいずれかによるシステムを提供する。
実施例6は、複数のメモリモジュールを更に備え、複数のメモリモジュールの各々が、マイクロフォンアレイのそれぞれのマイクロフォンに関連付けられている、先行の実施例及び/又は後続の実施例のいずれかによるシステムを提供する。
実施例7は、フィルタ係数が、位相較正、周波数較正、及び大きさ較正を含む、先行の実施例及び/又は後続の実施例のいずれかによるシステムを提供する。
実施例8は、2線式インタフェースを更に備え、マイクロフォンアレイへのフィルタ係数の送信が、2線式インタフェース経由で発生する、先行の実施例及び/又は後続の実施例のいずれかによるシステムを提供する。
実施例9は、複数のマイクロフォンアレイ信号の各々が一意であり、マイクロフォンアレイの各それぞれのマイクロフォンが、フィルタ係数のセットのそれぞれのサブセットに関連付けられている、先行の実施例及び/又は後続の実施例のいずれかによるシステムを提供する。
実施例10は、マイクロフォンアレイ較正のための方法であって、ラウドスピーカでテスト信号を再生することと、マイクロフォンアレイでテスト信号をサンプリングすることと、マイクロフォンアレイで複数のマイクロフォンアレイ信号を生成することと、基準マイクロフォンでテスト信号をサンプリングすることと、基準マイクロフォンで基準信号を生成することと、複数のマイクロフォンアレイ信号及び基準信号に基づいて、フィルタ係数のセットを生成することと、フィルタ係数のセットをマイクロフォンアレイに送信することと、を含む、方法を提供する。
実施例11は、マイクロフォンアレイでテストをサンプリングすることが、マイクロフォンアレイの各それぞれのマイクロフォンでテスト信号をサンプリングすることを含む、先行の実施例及び/又は後続の実施例のいずれかによる方法を提供する。
実施例12は、フィルタ係数のセットを生成することが、各それぞれのマイクロフォンに対するフィルタ係数のそれぞれのサブセットを生成することを含む、先行の実施例及び/又は後続の実施例のいずれかによる方法を提供する。
実施例13は、フィルタ係数のそれぞれのサブセットを各それぞれのマイクロフォンに記憶することを更に含む、先行の実施例及び/又は後続の実施例のいずれかによる方法を提供する。
実施例14は、マイクロフォンアレイ上にフィルタ係数のセットを記憶することを更に含む、先行の実施例及び/又は後続の実施例のいずれかによる方法を提供する。
実施例15は、フィルタ係数のセットを送信することが、2線式バス経由でフィルタ係数のセットを送信することを含む、先行の実施例及び/又は後続の実施例のいずれかによる方法を提供する。
実施例16は、基準マイクロフォンを使用して、ラウドスピーカを事前較正することを更に含む、先行及び/又は以下の実施例のいずれか一項に記載の方法を提供する。
実施例17は、自己較正マイクロフォンシステムであって、マイクロフォンモジュールであって、音声入力信号を受信し、生のマイクロフォン出力信号を出力するように構成されたマイクロフォンであって、事前較正されている、マイクロフォンと、マイクロフォンのマイクロフォン較正係数を記憶するように構成された不揮発性メモリと、を含む、マイクロフォンモジュールと、生のマイクロフォン信号及びマイクロフォン較正係数を受信し、較正マイクロフォン信号を生成するように構成された、プロセッサと、プロセッサから較正マイクロフォン信号を受信し、較正マイクロフォン信号を出力するように構成された、マイクロフォン信号シンクと、を備える、システムを提供する。
実施例18は、マイクロフォン較正係数が、位相較正、周波数較正、及び大きさ較正のうちの少なくとも1つのために構成されている、先行の実施例及び/又は後続の実施例のいずれかによるシステムを提供する。
実施例19は、プロセッサが、生のマイクロフォン信号の位相較正のためにマイクロフォン較正係数を使用するように更に構成されている、先行の実施例及び/又は後続の実施例のいずれかによるシステムを提供する。
実施例20は、2線式バスを更に備え、プロセッサ及びマイクロフォン信号シンクは、2線式バス経由で通信する、先行の実施例及び/又は後続の実施例のいずれかによるシステムを提供する。
実施例21は、プロセッサが、較正マイクロフォン信号を生成するために、生のマイクロフォン信号及びマイクロフォン較正係数の畳み込みを実行するように更に構成されている、先行の実施例及び/又は後続の実施例のいずれかによるシステムを提供する。
実施例22は、本明細書に開示された、位相及び周波数応答較正システム及び技法のうちのいずれかを含む。
実施例23は、先行の実施例及び/又は後続の実施例のいずれかによる主題を含み、マイクロフォンアレイ固有の較正係数の記憶を更に含む。
実施例24は、先行の実施例及び/又は後続の実施例のいずれかによる主題を含み、複数のマイクロフォンアレイから、未較正のマイクロフォンデータへの、較正係数の中央適用を更に含む。
実施例25は、先行の実施例及び/又は後続の実施例のいずれかによる主題を含み、元のマイクロフォン信号を較正マイクロフォン信号に置き換えることを更に含む。
実施例26は、先行の実施例及び/又は後続の実施例のいずれかによる主題を含み、マイクロフォンアレイが、本明細書に開示された2線式通信システムのいずれかにおける周辺デバイスであることを更に特定する。
実施例27は、マイクロフォンアレイが単一のマイクロフォンを含む、先行及び/又は以下の実施例のいずれか一項に記載の方法を提供する。
実施例28は、マイクロフォンアレイが単一のマイクロフォンを含む、先行の実施例及び/又は後続の実施例のいずれかによるシステムを提供する。
実施例29は、2線式バスを更に備え、メモリが、ネットワークバスのサブノード上に位置決めされている、先行の実施例及び/又は後続の実施例のいずれかによるシステムを提供する。
変形形態及び実施態様
このように、本出願の技術のいくつかの態様及び実施形態が説明してきたが、当業者には、様々な変更、修正、及び改良が容易に生じるであろうことを理解されたい。そのような変更、修正、及び改良は、本出願に記載される技術の趣旨及び範囲内であることが意図されている。例えば、当業者は、機能を実行するため、並びに/又は、本明細書に記載される結果及び/若しくは、利点のうちの1つ以上を得るための様々な他の手段及び/又は構造を容易に想定し、そのような変形及び/又は修正の各々は、本明細書に記載される実施形態の範囲内であるとみなされる。
当業者は、本明細書に記載される特定の実施形態に対する多くの等価物を認識するか、又は単なる日常的な実験を使用して確認することができるであろう。したがって、前述の実施形態は単なる例として示されており、添付の特許請求の範囲及びそれの等価物の範囲内で、発明的実施形態が、具体的に記載された以外の方法で実施され得ることを理解されたい。加えて、本明細書に記載される2つ以上の特徴、システム、物品、材料、キット、及び/又は方法の任意の組み合わせは、そのような特徴、システム、物品、材料、キット、及び/又は方法が相互に矛盾していない場合、本開示の範囲内に含まれる。
前述は、本明細書に開示された主題の1つ以上の実施形態の特徴を概説する。これらの実施形態は、当業者(PHOSITA)が本開示の様々な態様をよりよく理解することを可能にするために提供される。特定の十分に理解された用語、並びに基礎技術及び/又は標準は、詳細に説明されることなく参照され得る。PHOSITAは、本開示の教示を実施するのに十分なこれらの技術及び基準における背景知識又は情報を有するか、又はそれらへのアクセスを有することが予想される。
PHOSITAは、本明細書で紹介された実施形態と同じ目的を実行するため及び/又は同じ利点を達成するために他のプロセス、構造、又は変形を設計又は修正するための基礎として、本開示を容易に使用することができることを理解するであろう。PHOSITAはまた、そのような等価な構造が本開示の趣旨及び範囲から逸脱しないこと、並びに本開示の趣旨及び範囲から逸脱することなく、本明細書で様々な変更、置換、及び改変を行い得ることを認識するであろう。
上記の実施形態は、多くのやり方のうちのいずれかで実装されてもよい。プロセス又は方法の性能を伴う本出願の1つ以上の態様及び実施形態は、プロセス又は方法を実行又はそれらの性能を制御するために、デバイス(例えば、コンピュータ、プロセッサ、又は他のデバイス)によって実行可能なプログラム命令を利用し得る。
この点で、様々な発明概念は、1つ以上のプログラムで符号化されたコンピュータ可読記憶媒体(又は、複数のコンピュータ可読記憶媒体)(例えば、コンピュータメモリ、1つ以上のフロッピーディスク、コンパクトディスク、光学ディスク、磁気テープ、フラッシュメモリ、フィールドプログラマブルゲートアレイ若しくは他の半導体デバイスの回路構成、又は他の有形コンピュータ記憶媒体)として具現化され得、1つ以上のプログラムが、1つ以上のコンピュータ又は他のプロセッサ上で実行されると、上記に記載した様々な実施形態のうちの1つ以上を実装する方法を実行する。
コンピュータ可読媒体は、それに格納されたプログラムが、上記に記載した態様の様々なものを実装するために、1つ以上の異なるコンピュータ又は他のプロセッサにロードされ得るように、搬送可能であり得る。いくつかの実施形態では、コンピュータ可読媒体は、非一時的媒体であり得る。
信号処理(例えば、ジェスチャ信号処理、映像信号処理、音声信号処理、アナログデジタル変換、デジタルアナログ変換)を伴う任意の集積回路に適用可能である、図面を参照して上記で論じた活動、特に専門のソフトウェアプログラム又はアルゴリズムを実行することができ、そのうちのいくつかは、デジタル化されたリアルタイムデータの処理に関連付けられ得るものであることに留意されたい。
場合によっては、本開示の教示は、実行されると、(プロセッサ又はDSPなどの)プログラマブルデバイスに、本明細書に開示された方法又は機能を実行するように指示する実行可能命令を格納した、1つ以上の有形の非一時的コンピュータ可読媒体に符号化され得る。本明細書の教示が少なくとも部分的に(ASIC、IPブロック、又はSoCなどの)ハードウェアデバイスで具現化される場合、非一時的媒体は、本明細書に開示された方法又は機能を実行するための論理でハードウェアプログラムされた、ハードウェアデバイスを含み得る。教示はまた、開示されたハードウェア素子を作り出すための製造プロセスをプログラムするために使用することができる、レジスタ転送レベル(RTL)、又はVHDLやVerilogなどの他のハードウェア記述言語の形態で実施することができる。
例示的な実装態様では、本明細書で概説された処理活動の少なくともいくつかの部分はまた、ソフトウェアで実装され得る。いくつかの実施形態では、これらの特徴のうちの1つ以上は、開示された図の要素の外部に提供されるハードウェアで実装され得、又は意図された機能を達成するための任意の適切な方式で統合され得る。様々な構成要素は、本明細書で概説されたような動作を達成するために連係することができる、ソフトウェア(又は、相互連係ソフトウェア)を含み得る。更に他の実施形態では、これらの要素は、それらの動作を容易にする任意の好適なアルゴリズム、ハードウェア、ソフトウェア、コンポーネント、モジュール、インタフェース、又はオブジェクトを含み得る。
任意の適切に構成されたプロセッサ構成要素は、データに関連付けられた任意の種類の命令を実行して、本明細書に詳述された動作を達成することができる。本明細書に開示された任意のプロセッサは、要素又は物品(例えば、データ)を1つの状態又は物から、別の状態又は物に変換することができる。別の例では、本明細書で概説されたいくつかの活動は、固定論理又はプログラマブル論理(例えば、プロセッサによって実行されるソフトウェア及び/又はコンピュータ命令)で実装され得、本明細書で特定された要素は、いくつかの種類のプログラマブルプロセッサ、プログラマブルデジタル論理(例えば、FPGA、消去可能プログラマブル読み取り専用メモリ(EPROM)、電気的消去可能プログラマブル読み取り専用メモリ(EEPROM))、デジタル論理、ソフトウェア、コード、電子命令、フラッシュメモリ、光学ディスク、CD-ROM、DVD ROM、磁気カード若しくは光学カード、電子命令を記憶するのに好適な他の種類の機械可読媒体、又はそれらの任意の好適な組み合わせを含むASICであり得る。
動作中、プロセッサは、任意の好適な種類の非一時的記憶媒体(例えば、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、FPGA、EPROM、電気的消去可能プログラマブルROM(EEPROM)など)、ソフトウェア、ハードウェアに、又は、必要に応じて及び特定のニーズに基づいて、他の任意の好適なコンポーネント、デバイス、要素、若しくはオブジェクトに、情報を記憶し得る。更に、追跡される、送出される、受信される、又はプロセッサに記憶される情報は、特定のニーズ及び実装例に基づいて、任意のデータベース、レジスタ、テーブル、キャッシュ、待ち行列、制御リスト、又は記憶構造で提供され得、これらの全ては、任意の好適な時間枠で参照され得る。
本明細書で論じられるメモリ項目のうちのいずれかは、広義の「メモリ」に包含されるものとして解釈されるべきである。同様に、本明細書に記載される潜在的な処理要素、モジュール、及び機械のうちのいずれかは、広義の「マイクロプロセッサ」又は「プロセッサ」に包含されるものとして解釈されるべきである。更に、様々な実施形態では、本明細書に記載されるプロセッサ、メモリ、ネットワークカード、バス、記憶デバイス、関連周辺装置、及び他のハードウェア素子は、それらのハードウェア素子の機能をエミュレート又は仮想化するためのソフトウェア又はファームウェアによって構成されるプロセッサ、メモリ、及び他の関連デバイスによって実現され得る。
更に、コンピュータは、非限定的な例として、ラックマウント型コンピュータ、デスクトップコンピュータ、ラップトップコンピュータ、又はタブレットコンピュータなどの、いくつかの形態のうちのいずれかで具現化され得ることを理解されたい。加えて、コンピュータは、一般的にコンピュータとはみなされないが、パーソナルデジタルアシスタント(PDA)、スマートフォン、携帯電話、iPad(登録商標)、又は任意の他の好適なポータブル電子デバイス又は固定電子デバイスを含む、好適な処理能力を有するデバイスに埋設され得る。
また、コンピュータは、1つ以上の入力デバイス及び出力デバイスを有し得る。これらのデバイスは、とりわけ、ユーザインタフェースを提示するために使用され得る。ユーザインタフェースを提供するために使用され得る出力デバイスの例としては、出力の視覚提示のためのプリンタ又は表示スクリーン、及び、出力の可聴提示のためのスピーカ又は他の音声生成デバイスが挙げられる。ユーザインタフェースに使用され得る入力デバイスの例としては、キーボード、並びに、マウス、タッチパッド、及びデジタイジングタブレットなどのポインティングデバイスが挙げられる。別の例として、コンピュータは、音声認識を通して、又は他の可聴フォーマットで、入力情報を受信し得る。
そのようなコンピュータは、エンタープライズネットワークなどのローカルエリアネットワーク又は広域ネットワーク、及びインテリジェントネットワーク(IN)又はインターネットを含む、任意の好適な形態の、1つ以上のネットワークによって相互接続され得る。そのようなネットワークは、任意の好適な技術に基づいてもよく、任意の好適なプロトコルに従って動作してもよく、無線ネットワーク又は有線ネットワークを含んでもよい。
コンピュータ実行可能命令は、1つ以上のコンピュータ又は他のデバイスによって実行される、プログラムモジュールなどの多くの形態であってもよい。一般に、プログラムモジュールは、特定のタスクを実行するか、又は特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。典型的には、プログラムモジュールの機能は、様々な実施形態において、所望のように組み合わせるか、又は分散されてもよい。
「プログラム」又は「ソフトウェア」という用語は、本明細書では、一般的な意味で使用され、上述したような実施形態の様々な態様を実施するためにコンピュータ又は他のプロセッサをプログラムするために採用される、任意のタイプのコンピュータコード又はコンピュータ実行可能命令のセットを指す。加えて、一態様によれば、実行されると本出願の方法を実施する1つ以上のコンピュータプログラムは、単一のコンピュータ又はプロセッサ上に存在する必要はないが、本出願の様々な態様を実施するため、いくつかの異なるコンピュータ又はプロセッサ間でモジュール方式により配布され得ることを理解されたい。
また、データ構造は、任意の好適な形態でコンピュータ可読媒体に記憶され得る。説明を簡単にするために、データ構造は、データ構造内の場所を通して関連付けられたフィールドを有することが示され得る。そのような関係は、同様に、フィールド間の関係を伝達するコンピュータ可読媒体内の場所を有するフィールドのための記憶装置を割り当てることによって達成されてもよい。しかしながら、任意の好適なメカニズムを使用して、ポインタ、タグ、又は、データ要素間の関係を確立する他のメカニズムの使用を含む、データ構造のフィールド内の情報間の関係を確立し得る。
ソフトウェアで実装される場合、ソフトウェアコードは、単一のコンピュータで提供されるか、又は複数のコンピュータ間で分散されるかに関わらず、任意の好適なプロセッサ又はプロセッサの集合上で実行され得る。
本明細書に記載される機能の全部又は一部を実施するコンピュータプログラム論理は、ソースコード形態、コンピュータ実行可能形態、ハードウェア記述形態、及び様々な中間形態(例えば、マスクワーク、又はアセンブラ、コンパイラ、リンカー、若しくはロケータによって生成される形態)を含むが、これらに限定されない、様々な形態で具現化される。一例では、ソースコードは、様々なオペレーティングシステム又は動作環境とともに使用するために、オブジェクトコード、アセンブリ言語、又はOpenCL、RTL、Verilog、VHDL、Fortran、C、C++、JAVA(登録商標)、若しくはHTMLなどの高水準言語など、様々なプログラミング言語で実施される、一連のコンピュータプログラム命令を含む。ソースコードは、様々なデータ構造及び通信メッセージを定義及び使用し得る。ソースコードは、(例えば、解釈プログラムを介した)コンピュータ実行可能形態であり得、又はソースコードは、(例えば、変換装置、アセンブラ、又はコンパイラを介して)コンピュータ実行可能形態に変換され得る。
いくつかの実施形態では、図面の任意の数の電気回路が、関連付けられた電子デバイスの基板上に実装されてもよい。基板は、電子デバイスの内部電子システムの様々な構成要素を収容することができ、また更に、他の周辺装置用のコネクタを提供することができる、一般的な回路基板であり得る。より具体的には、基板は、システムの他の構成要素を電気的に通信可能にする電気接続を提供できる。(デジタル信号プロセッサ、マイクロプロセッサ、サポートチップセットなどを含む)任意の好適なプロセッサ、メモリ素子などは、特定の構成ニーズ、処理要求、コンピュータ設計などに基づいて、基板に適切に結合され得る。
外部ストレージ、追加のセンサ、音声/映像表示用コントローラ、及び周辺デバイスなどの他の構成要素は、プラグインカードとして、ケーブルを介して基板に取り付けられてもよく、又は基板自体に組み込まれてもよい。別の例示的な実施形態では、図面の電気回路は、スタンドアロンモジュール(例えば、特定のアプリケーション又は機能を実行するように構成された、関連付けられた構成要素及び回路を有するデバイス)として実装されてもよく、又はプラグインモジュールとして、電子デバイスの特定用途向けハードウェアに実装されてもよい。
本明細書で提供される多くの例では、相互作用は、2つ、3つ、4つ、又はそれ以上の電気部品に関して記述され得ることに留意されたい。ただし、これは明確化及び例示のみを目的として行われている。システムは、任意の好適な方式で確立され得ることを理解されたい。同様の設計代替案に沿って、図面に示された構成要素、モジュール、及び要素のうちのいずれかは、様々な可能な構成で組み合わされてもよく、それらの全ては、明らかに本開示の広範な範囲内にある。
場合によっては、限られた数の電気素子のみを参照することによって、所与のフローセットのうちの1つ以上の機能をより簡単に説明し得る。図面の電気回路及びその教示は、容易に拡張可能であり、より多くの構成要素、並びに、より複雑な/洗練された配置及び構成に対応できることを理解されたい。したがって、提供される例は、範囲を制限したり、無数の他のアーキテクチャに潜在的に適用されるときの、電気回路の広範な教示を阻害したりするものではない。
また、記載のように、いくつかの態様は、1つ以上の方法として具現化され得る。方法の一部として実行される動作は、任意の好適な方法で順序付けられてもよい。したがって、例示的な実施形態では順次行為として示されているが、いくつかの動作を同時に実行することを含み得る、図示されたものと異なる順序で行為が実行される実施形態が構築され得る。
用語の解釈
本明細書で定義及び使用される全ての定義は、辞書の定義、参照により組み込まれる文書中の定義、及び/又は定義された用語の通常の意味を支配すると理解されるべきである。文脈が明確に他に要求されない限り、本明細書及び特許請求の範囲を通して、
「備える(comprise)」、「備える(comprising)」などは、排他的な意味又は網羅的な意味とは対照的に、包括的な意味で解釈されるべきであり、すなわち、「を含むが、これらに限定されない」という意味で解釈されるべきである。
「接続された(connected)」、「結合された(coupled)」、又はそれらの任意の変形は、2つ以上の要素間の直接的又は間接的いずれかの任意の接続又は結合を意味し、要素間の結合又は接続は、物理的、論理的、又はそれらの組み合わせであり得る。
本明細書を説明するために使用される場合、「本明細書」、「上記」、「下記」、及び同様の意味の単語は、本明細書全体を指し、本明細書の任意の特定の部分を指すものではない。
2つ以上の項目のリストに関連する「又は」は、単語の以下の解釈の全て、リスト内の項目のうちのいずれか、リスト内の項目の全て、及びリスト内の項目の任意の組み合わせを網羅する。
単数形の「a」、「an」、及び「the」はまた、任意の適切な複数形の意味を含む。
本明細書で使用される「垂直(vertical)」、「横(transverse)」、「水平(horizontal)」、「上向き(upward)」、「下向き(downward)」、「前方(forward)」、「後方(backward)」、「内向き(inward)」、「外向き(outward)」、「垂直(vertical)」、「横(transverse)」、「左(left)」、「右(right)」、「前(front)」、「後ろ(back)」、「上部(top)」、「下部(bottom)」、「下(below)」、「上(above)」、「下(under)」などの方向を示す単語は、説明及び図示された装置の特定の方向に依存する。本明細書に記載される主題は、様々な別の方向を仮定し得る。したがって、これらの方向用語は厳密に定義されておらず、狭義に解釈されるべきではない。
本明細書及び特許請求の範囲において本明細書で使用される不定冠詞「a」及び「an」は、明確に反対に示されない限り、「少なくとも1つ」を意味すると理解されるべきである。
本明細書及び特許請求の範囲において本明細書で使用される「及び/又は(and/or)」という句は、そのように結合された要素、すなわち、ある場合には結合的に存在し、他の場合には分離的に存在する要素の「いずれか一方又は両方(either or both)」を意味すると理解されるべきである。「及び/又は」を用いてリストされた複数の要素は、同じ形式で解釈する必要があり、すなわち、そのように結合された要素の「1つ以上(one or more)」である。
「及び/又は」節によって具体的に特定されたもの以外の要素は、具体的に特定されたこれらの要素に関連しているかどうかに関わらず、任意選択で存在してもよい。したがって、非限定的な例として、「A及び/又はB」への言及は、「含む(comprising)」などの制限のない言語と組み合わせて使用される場合、一実施形態では、Aのみ(任意選択的にB以外の要素を含む)についての言及、別の実施形態では、Bのみ(任意選択的にA以外の要素を含む)についての言及、更に別の実施形態では、AとBの両方(任意選択的に他の要素を含む)についての言及などであり得る。
本明細書の明細書及び特許請求の範囲において使用される場合、1つ以上の要素のリストに関連する「少なくとも1つ」という句は、要素のリスト内の要素のうちの任意の1つ以上から選択される少なくとも1つの要素を意味すると理解されるべきであり、要素のリスト内に具体的にリストされている各要素及び全ての要素の少なくとも1つを含む必要はなく、要素のリスト内の要素の任意の組み合わせを除外するものでもない。この定義はまた、「少なくとも1つの」という句が言及する要素のリスト内で具体的に特定される要素以外の要素が、具体的に特定されたこれらの要素に関連するか関連しないに関わらず、任意選択的に存在し得ることを可能にする。
したがって、非限定的な例として、「A及びBのうちの少なくとも1つ」(又は等価に、「A又はBのうちの少なくとも1つ」、又は等価に、「A及び/又はBのうちの少なくとも1つ」)は、一実施形態では、少なくとも1つの、任意選択的に複数を含む、Bが存在しない(及び、B以外の要素を任意選択的に含む)Aを指してもよく、別の実施形態では、少なくとも1つの、任意選択的に複数を含む、Aが存在しない(及び、A以外の要素を任意選択的に含む)Bを指してもよく、更に別の実施形態では、少なくとも1つの、任意選択的に複数を含む、Aを指してもよく、少なくとも1つ、任意選択的に複数を含む、B(及び、任意選択的に他の要素を含む)などを指してもよい。
本明細書で使用される場合、「間(between)」という用語は、別段の指示がない限り、包括的であるべきである。例えば、「AとBとの間(between A and B)」は、別段の指示がない限り、A及びBを含む。
また、本明細書で使用される語法及び専門用語は、説明目的のためであって、限定とみなされるべきではない。本明細書における「含む(including)」、「備える(comprising)」、又は「有する(having)」、「含む(containing)」、「含む(involving)」、及びそれらの変形の使用は、その後にリストされる項目及びその等価物、並びに追加の項目を包含することを意味する。
特許請求の範囲及び上記の明細書において、「備える(comprising)」、「含む(including)」、「搬送する(carrying)」、「有する(having)」、「含む(containing)」、「含む(involving)」、「保持する(holding)」、「構成される(composed of)」などの全ての移行句は、オープンエンドであると理解されるべきであり、すなわち、を含むがこれらに限定されないことを意味する。「からなる(consisting of)」及び「から本質的になる(consisting essentially of)」という移行句のみが、それぞれ閉じた移行句又は半分閉じた移行句とする。
数々の他の変更、置換、変形、改変及び修正が、当業者に確認され得、本開示は、全てのそのような変更、置換、変形、改変及び修正を、添付の特許請求の範囲内に含まれるものとして包含することが意図される。
米国特許商標庁(USPTO)、及び追加的に、本明細書に添付の特許請求の範囲を解釈する際、本出願に関して発行された任意の特許の任意の読者を支援するために、出願人は、出願人が、(a)「~のための手段」又は「~のためのステップ」という語が特定の特許請求項において具体的に使用されない限り、添付の特許請求の範囲のいずれも、本明細書の出願の日に存在する米国特許法第112条(f)を行使することを意図せず、かつ(b)本開示のいかなる記述によっても、添付の特許請求の範囲に別様に反映されないいかなるやり方においても、本開示を制限することを意図しないものとみなすことを望む。
したがって、本発明は、上記の特定の実施形態に限定されるものではないと考えるべきである。様々な修正プロセス、等価プロセス、及び、本発明が適用可能であり得る多くの構造は、本開示のレビューにより、本発明が対象とする当業者に容易に明らかとなるであろう。
100 システム
102 ノード
102-1 メインノード
102-2 サブノード
106 バス
108 及び周辺デバイス
110 ホスト
120 ノードトランシーバ
122 トランシーバ
124 トランシーバ
126 バスプロトコル回路
127 トランシーバ
128 位相ロックループ(PLL)
129 トランシーバ
130 電圧レギュレータ回路
131 下流バスインタフェース回路
132 上流バスインタフェース回路
136 トランシーバ
138 外部デバイス
154 制御回路
155 外部デバイス
156 プリアンブル回路
157 外部デバイス
158 挿入回路
159 検査回路
160 圧縮回路
162 マルチプレクサ(MUX)
164 スクランブル回路
166 デスクランブル回路
168 デマルチプレクサ(DEMUX)
170 復元回路
180 同期制御フレーム
182 プリアンブル
184 制御データ
190 スーパーフレーム
192 下流送信の期間
194 上流送信の期間
196 無送信の期間
197 同期応答フレーム
198 データスロット
199 データスロット
1200 配置
1202 データ
1204 データ
1300 デバイス
1302 処理デバイス
1304 メモリ
1306 表示デバイス
1308 音声出力デバイス
1310 別の出力デバイス
1312 通信チップ
1314 電源回路
1318 デバイス
1320 別の入力デバイス
1322 アンテナ
1324 音声入力デバイス
2110 較正計算機
2120 スピーカ
2130 基準マイクロフォン
2140 モジュール
2140 マイクロフォンモジュール
2141 マイクロフォン
2142 マイクロフォン
2143 メモリ
2143 マイクロフォンモジュール
2200 方法
2202 ステップ
2204 ステップ
2206 ステップ
2208 ステップ
2210 ステップ
2220 方法
2222 ステップ
2224 ステップ
2226 ステップ
2240 方法
2242 ステップ
2244 ステップ
2246 ステップ
2248 ステップ
2400 システム
2413 メモリ
2423 メモリ
2430 マイクロフォン信号処理ユニット
2440 マイクロフォン信号シンク
2450 データインタフェース
2500 方法
2502 ステップ
2504 ステップ
2506 ステップ
2508 ステップ
2510 データインタフェース
2602 メインノード
2604 第1のサブノード
2606 第2のサブノード
2608 第3のサブノード
2700 方法
2702 ステップ
2704 ステップ
2706 ステップ
2708 ステップ
2710 ステップ
2750 方法
2752 ステップ
2754 ステップ
2756 ステップ
2758 ステップ
2760 ステップ

Claims (20)

  1. マイクロフォン較正のためのシステムであって、
    テスト信号を再生するように構成された、ラウドスピーカと、
    前記テスト信号を受信し、複数のマイクロフォンアレイ信号を生成するように構成された、マイクロフォンアレイと、
    前記ラウドスピーカと前記マイクロフォンアレイとの間に位置決めされた、基準マイクロフォンであって、前記テスト信号を受信し、基準信号を生成するように構成されている、基準マイクロフォンと、
    前記複数のマイクロフォンアレイ信号及び前記基準信号を処理し、フィルタ係数のセットを生成し、フィルタ係数の前記セットを前記マイクロフォンアレイに送信するように構成された、較正計算機と、
    を備える、システム。
  2. フィルタ係数の前記セットを記憶するように構成された、前記マイクロフォンアレイに関連付けられた、メモリを更に備える、請求項1に記載のシステム。
  3. 前記メモリが、前記マイクロフォンアレイとともにマイクロフォンアレイモジュール上に位置決めされている、請求項2に記載のシステム。
  4. 前記メモリが、前記マイクロフォンアレイによってアクセス可能なクラウドベースのメモリである、請求項2に記載のシステム。
  5. 前記メモリが、ベンダ情報、製品情報、バージョン情報、モデル情報、能力情報、シリアル番号、製造情報、構成情報、ルーティング情報、及び認証情報のうちの少なくとも1つを含む、マイクロフォン情報を記憶するように更に構成されている、請求項2に記載のシステム。
  6. 複数のメモリモジュールを更に備え、前記複数のメモリモジュールの各々が、前記マイクロフォンアレイのそれぞれのマイクロフォンに関連付けられている、請求項1に記載のシステム。
  7. 前記フィルタ係数が、位相較正及び大きさ較正を提供する、請求項1に記載のシステム。
  8. 2線式インタフェースを更に備え、前記マイクロフォンアレイへの前記フィルタ係数の送信が、前記2線式インタフェース経由で発生する、請求項1に記載のシステム。
  9. 前記複数のマイクロフォンアレイ信号の各々が一意であり、前記マイクロフォンアレイの各それぞれのマイクロフォンが、フィルタ係数の前記セットのそれぞれのサブセットに関連付けられている、請求項1に記載のシステム。
  10. マイクロフォンアレイ較正のための方法であって、
    ラウドスピーカでテスト信号を再生することと、
    マイクロフォンアレイで前記テスト信号をサンプリングすることと、
    前記マイクロフォンアレイで複数のマイクロフォンアレイ信号を生成することと、
    基準マイクロフォンで前記テスト信号をサンプリングすることと、
    前記基準マイクロフォンで基準信号を生成することと、
    前記複数のマイクロフォンアレイ信号及び前記基準信号に基づいて、フィルタ係数のセットを生成することと、
    フィルタ係数の前記セットを前記マイクロフォンアレイに送信することと、
    を含む、方法。
  11. 前記マイクロフォンアレイで前記テスト信号をサンプリングすることが、前記マイクロフォンアレイの各それぞれのマイクロフォンで前記テスト信号をサンプリングすることを含む、請求項10に記載の方法。
  12. フィルタ係数のセットを生成することが、各それぞれのマイクロフォンに対するフィルタ係数のそれぞれのサブセットを生成することを含む、請求項11に記載の方法。
  13. フィルタ係数の前記それぞれのサブセットを各それぞれのマイクロフォンに記憶することを更に含む、請求項12に記載の方法。
  14. 前記マイクロフォンアレイ上にフィルタ係数の前記セットを記憶することを更に含む、請求項10に記載の方法。
  15. フィルタ係数の前記セットを送信することが、2線式バス経由でフィルタ係数の前記セットを送信することを含む、請求項10に記載の方法。
  16. 前記基準マイクロフォンを使用して、前記ラウドスピーカを事前較正することを更に含む、請求項10に記載の方法。
  17. 自己較正マイクロフォンシステムであって、
    マイクロフォンモジュールであって、
    音声入力信号を受信し、生のマイクロフォン出力信号を出力するように構成されたマイクロフォンであって、事前較正されている、マイクロフォンと、
    前記マイクロフォンのマイクロフォン較正係数を記憶するように構成された不揮発性メモリと、を含む、マイクロフォンモジュールと、
    前記生のマイクロフォン信号及び前記マイクロフォン較正係数を受信し、較正マイクロフォン信号を生成するように構成された、プロセッサと、
    前記プロセッサから前記較正マイクロフォン信号を受信し、前記較正マイクロフォン信号を出力するように構成された、マイクロフォン信号シンクと、
    を備える、マイクロフォンシステム。
  18. 前記マイクロフォン較正係数が、位相較正及び大きさ較正用に構成されている、請求項17に記載のマイクロフォンシステム。
  19. 2線式バスを更に備え、前記プロセッサ及び前記マイクロフォン信号シンクが、前記2線式バス経由で通信する、請求項17に記載のマイクロフォンシステム。
  20. 前記プロセッサが、前記較正マイクロフォン信号を生成するために、前記生のマイクロフォン信号及び前記マイクロフォン較正係数の畳み込みを実行するように更に構成されている、請求項17に記載のマイクロフォンシステム。
JP2023528315A 2020-11-12 2021-11-12 マイクロフォンアレイ較正のためのシステム及び技法 Pending JP2023549799A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202063112967P 2020-11-12 2020-11-12
US63/112,967 2020-11-12
PCT/EP2021/081514 WO2022101407A1 (en) 2020-11-12 2021-11-12 Systems and techniques for microphone array calibration

Publications (1)

Publication Number Publication Date
JP2023549799A true JP2023549799A (ja) 2023-11-29

Family

ID=78770609

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023528315A Pending JP2023549799A (ja) 2020-11-12 2021-11-12 マイクロフォンアレイ較正のためのシステム及び技法

Country Status (5)

Country Link
US (1) US20230421950A1 (ja)
JP (1) JP2023549799A (ja)
CN (1) CN116711328A (ja)
DE (1) DE112021005897T5 (ja)
WO (1) WO2022101407A1 (ja)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7809145B2 (en) * 2006-05-04 2010-10-05 Sony Computer Entertainment Inc. Ultra small microphone array
US9241228B2 (en) * 2011-12-29 2016-01-19 Stmicroelectronics Asia Pacific Pte. Ltd. Adaptive self-calibration of small microphone array by soundfield approximation and frequency domain magnitude equalization

Also Published As

Publication number Publication date
WO2022101407A1 (en) 2022-05-19
DE112021005897T5 (de) 2023-08-31
CN116711328A (zh) 2023-09-05
US20230421950A1 (en) 2023-12-28

Similar Documents

Publication Publication Date Title
US9851938B2 (en) Microphone arrays and communication systems for directional reception
KR102535076B1 (ko) 원격 버스 활성화를 위한 시스템들 및 기술들
US9946680B2 (en) Peripheral device diagnostics and control over a two-wire communication bus
KR101932686B1 (ko) 다중 노드 데이지-체인 네트워크 상에서 gpio 대 gpio 통신
US10649945B1 (en) Non-native digital interface support over a two-wire communication bus
JP2020010395A (ja) スレーブ対スレーブ同期通信
CN110347627B (zh) 动态迟滞电路
US10856199B2 (en) Communication systems with auxiliary master and auxiliary call support functionality
US11411607B2 (en) Audio and lighting control via a communication bus
US20190018467A1 (en) Adaptive use of multiple power supplies in communication systems
KR20200130140A (ko) 직렬 주변장치 인터페이스 기능을 가진 통신 시스템
US20230396504A1 (en) Node discovery and configuration in a daisy-chained network
US20230344673A1 (en) Asynchronous data networking over a network bus
US20230375610A1 (en) Systems and techniques for line diagnostics
JP2023549799A (ja) マイクロフォンアレイ較正のためのシステム及び技法
US20230370311A1 (en) Auxiliary communication over a pulse density modulated interface
US20240004825A1 (en) Serial daisy-chained bus power for serial daisy-chained communication system
US20240004446A1 (en) Synchronous audio communication and bus power over multi-pair cables and connectors