"システムであって、被検査音響デバイスに検査信号を供給する検査信号生成器、前記検査信号に対する前記被検査音響デバイス内の信号経路の応答を表すデータを前記被検査音響デバイスから取得するデータ取得デバイス、および周波数応答推定システムであって、前記検査信号と前記データ取得デバイスによって取得された前記データとに基づいて前記信号経路の初期周波数応答を決定し、前記信号経路についてのターゲット周波数応答を選択し、前記信号経路における構成可能な回路の所望の構成を決定し、前記所望の構成が、前記信号経路の前記周波数応答が前記ターゲット周波数応答と実質的に類似するように前記信号経路を改変するように計算され、前記所望の構成から、前記構成可能な回路の少なくとも1つのプログラマブル構成要素についての少なくとも1つのパラメータを決定し、前記少なくとも1つのパラメータが前記少なくとも1つのプログラマブル構成要素にプログラムされるようにする、前記周波数応答推定システム、を含む、システム。請求項1に記載のシステムであって、前記構成可能な回路がアクティブノイズキャンセル集積回路チップの一部である、システム。請求項2に記載のシステムであって、前記ターゲット周波数応答が、予想される周囲ノイズの減衰を含む、方法。請求項1に記載のシステムであって、前記構成可能な回路が、前記被検査デバイスの制御回路と一体化されている、システム。請求項1に記載のシステムであって、前記被検査デバイスが第1の電子デバイスであり、前記少なくとも1つのパラメータが、第2の電子デバイスについての最適解を見つけるための反復計算におけるシード解として用いられる、システム。請求項5に記載のシステムであって、前記反復計算がジェネティックヒューリスティックである、システム。請求項1に記載のシステムであって、前記少なくとも1つのパラメータが、値の選択肢の有限個の群から選択される、システム。請求項1に記載のシステムであって、前記ターゲット周波数応答がユーザ入力に基づいて選択される、システム。請求項1に記載のシステムであって、前記被検査デバイスがヘッドホンである、システム。方法であって、被検査デバイスに検査信号を供給すること、前記検査信号に対する前記被検査デバイス内の信号経路の応答を表すデータを前記被検査デバイスから取得すること、前記検査信号および前記取得されたデータに基づいて前記信号経路の周波数応答を周波数応答推定システムにおいて決定すること、前記信号経路についてのターゲット周波数応答を選択すること、前記信号経路における構成可能な回路の所望の構成を決定することであって、前記所望の構成が、前記信号経路の前記周波数応答が前記ターゲット周波数応答と実質的に類似するように前記信号経路を改変する、前記所望の構成を決定すること、前記所望の構成から、前記構成可能な回路の少なくとも1つのプログラマブル構成要素についての少なくとも1つのパラメータを決定すること、および前記少なくとも1つのパラメータが、前記少なくとも1つのプログラマブル構成要素にプログラムされるようにすること、を含む、方法。請求項10に記載の方法であって、前記構成可能な回路がアクティブノイズキャンセル集積回路チップの一部として実装される、方法。請求項11に記載の方法であって、前記ターゲット周波数応答が、予想される周囲ノイズの減衰を含む、方法。請求項10に記載の方法であって、前記プログラマブル回路が前記被検査デバイスの制御回路と一体化されている、方法。請求項10に記載の方法であって、前記被検査デバイスが第1の電子デバイスであり、前記少なくとも1つのパラメータが、第2の電子デバイスについての最適解を見つけるための反復計算におけるシード解として用いられる、方法。請求項14に記載の方法であって、前記反復計算がジェネティックヒューリスティックである、方法。請求項10に記載の方法であって、前記パラメータが、値の選択肢の有限個の群から選択される、方法。請求項10に記載の方法であって、前記ターゲット周波数応答がユーザ入力に基づいて選択される、方法。電子システムであって、信号経路を含む電子デバイス、および検査システムを含み、前記検査システムが、前記電子デバイスに検査信号を選択的に供給する検査信号生成器と、前記電子デバイスから検査データを選択的に受け取るデータ取得デバイスと、前記信号経路の選択される部分について周波数応答を決定するデータ解析デバイスと、前記信号経路の選択された部分の前記周波数応答から、および前記信号経路について選択されるターゲット周波数応答から、所望の伝達関数を決定する応答整合デバイスであって、前記所望の伝達関数が、前記信号経路の前記周波数応答が前記ターゲット周波数応答と実質的に同等となるように、前記信号経路内のプログラマブル回路の周波数応答を記述する、前記応答整合デバイスと、を含む、電子システム。請求項18に記載のシステムであって、前記所望の伝達関数に基づいて前記プログラマブル回路にプログラムする少なくとも1つのパラメータを決定する、パラメータ決定デバイスをさらに含む、システム。請求項19に記載のシステムであって、前記電子デバイスが、イヤホンまたは聴力増強デバイスのいずれか一方である、システム。電子デバイスは、デバイス出力とデバイス入力の関係を記述する周波数応答の観点で特徴づけることができる。例えば既知の最適でない性能についてデバイスを補償するために、電子デバイスの周波数応答を調節して、予想される環境でデバイスを使用する準備をしたり、または、デバイスの周波数応答をターゲットに整合させたりすることが望ましいことがある。電子デバイスの周波数応答を調節する一方法は、信号経路中の1つまたは複数の回路パラメータを改変することである。1つの例示の周波数応答推定システムでは、電子デバイスについてターゲット周波数応答プロファイルが選択され、電子デバイスの周波数応答がターゲット周波数応答にほぼ等しくなるように回路パラメータが決定され、これらの回路パラメータが回路にプログラムされる。上記のようなシステムは、ノイズ制御またはノイズ消去システムに用いられることがある。図1は、被検査電子デバイスDUT105の周波数応答を識別し、DUT105のターゲット周波数応答を決定し、DUT105の周波数応答をシェーピングする回路構成を決定してターゲット周波数応答に近似させ、回路パラメータを用いてDUT105をプログラムするための例示の検査システム100を示す。検査システム100は、検査信号生成器120、データ取得デバイス130、ユーザインターフェース140、および周波数応答推定システム150を含む。システム100の構成要素を以下に記載する。被検査デバイスDUT105は、少なくとも1つの入力信号を受け取り、少なくとも1つの出力を生成する電子デバイスを表す。DUT105は、例えば、視聴覚デバイスからオーディオ信号を受け取り、スピーカから音響信号を放出するヘッドホンとすることができ、音響信号はヘッドホンを装着している人の外耳道に届く。受け取られた入力信号は信号経路に沿って伝播し、信号経路は、デジタルまたはアナログ構成要素を含み得、送信媒体を含み得、かつ、信号が伝播する閉じた幾何学的空間を含み得る。例えば、信号経路は、回路基板トレースを含む増幅およびフィルタリング回路を含み得、ヘッドホンのスピーカとユーザの外耳道との間の空間も含み得る。このように、信号経路は、設計された要素および固有の要素を含み得る。さらに、設計、構成要素、および製造上の許容差も信号経路の要素である。信号経路中の各要素は、伝播信号を改変するように作用し、信号経路の周波数応答に寄与する。本明細書で用いるヘッドホンという用語は、例えばイヤホンまたは聴力増強デバイスなどのデバイスを含めて、オーバーイヤーデバイス、オンイヤーデバイス、およびインイヤーデバイスを含む。DUT105は、以下に記載するように、DUT105の周波数応答を調節するためのプログラマブル回路190を含み得る。検査信号生成器120は、既知の周波数成分の検査信号でDUT105を刺激する。例えば、検査信号は、第1の周波数で始まり第2の周波数まで一様に増加又は減少する一定振幅のチャープ信号とし得る。別の例として、検査信号は、第1の周波数と第2の周波数の間を繰り返し増加又は減少する一定振幅の信号としてもよい。検査信号はこれらの例に限定されるものではなく、他にも連続単一周波数または周波数のセットあるいは一連の周波数を含んでよく、また、検査信号の振幅または位相は一定としてもよいし、変化してもよい。さらに、検査信号は、白色雑音の周波数成分が少なくとも部分的に未知である疑似ランダム白色雑音を含み得る。検査信号生成器120は、このような装置の製造業者による既製の検査装置とし得る。あるいは、検査信号生成器120は、検査信号を生成し得る任意のデバイスの信号生成機能を表し得る。一例では、DUT105は1組のヘッドホンであり、検査信号生成器120は、スマートホンのヘッドホンインターフェースを表し、スマートホンにロードされるソフトウェアアプリケーションによって制御される。この例では、ユーザは、ソフトウェアアプリケーションを起動し、検査信号を生成するための選択肢を選ぶことができる。複数のデバイスが検査信号生成器120の機能を分担してもよい。分担される機能の一例では、検査信号生成器120は制御機能と生成機能に分けられ、制御機能が、検査信号の内容をDUT105に送信する検査アプリケーションの一部であり、DUT105内の生成機能が、その内容を受け取り検査信号を内部で生成する。検査信号生成器120は、接続125を介してDUT105に検査信号を印加する。接続125は、有線接続または無線接続とすることができ、1つまたは複数の信号経路を表し得る。接続125は、並列および/または直列の通信リンクを表し得る。一例では、接続125は無線であり、検査信号生成器120は、DUT105が受け取るオーディオチャープ信号を生成する。別の例では、接続125は無線であり、検査信号生成器120は、デジタル的に符号化された検査信号をDUT105に送信する。さらなる例では、接続125は有線であり、検査信号生成器120は、その線を介して電気的に検査信号を送信する。検査信号がDUT105に印加されると、DUT105の応答がデータ取得デバイス130によって収集される。取得デバイス130は、電圧および電流を含むデータを取得し得る。ただし、データは、電圧、電流に限定されるものではなく、また、一度にまたはある期間にわたって取得され得る。このデータは、DUT105内の複数の場所から集めてもよく、また、回路構成要素の状態または不良情報も含み得る。データ取得デバイス130は、このような装置の製造業者による既製の検査装置とし得る。あるいは、取得デバイス130は、この機能を可能とする任意のデバイスのデータ取得機能を表し得る。検査信号生成器120をスマートホンで実現する上記の例では、取得デバイス130は、スマートホンのソフトウェアアプリケーションの機能を表し得る。複数のデバイスが取得デバイス130の機能を分担してもよい。分担される機能の一例では、DUT105が、その内部回路についてのデータを収集し、このデータをアプリケーションに提供し、アプリケーションがこのデータをメモリに記憶してその後の解析に用いる。データ取得デバイス130は、接続135を介して情報を受け取る。接続135は、有線接続または無線接続とすることができ、1つまたは複数の信号経路を表し得る。接続135は、並列および/または直列の通信リンクを表し得る。DUT105から取得したデータは、ターゲット応答に近似するようにDUT105の応答をシェーピングする第1のステップとして、DUT105の応答を特徴付けるために用いることができる。ターゲット応答は、あらかじめ定義されていてもよいし、ユーザが選択してもよい。ユーザが選択する場合、ユーザインターフェース140を介してターゲット応答を選択し得る。ユーザインターフェース140は、ユーザにターゲット応答の選択肢を提供して選択させるのに用い得る。連続周波数範囲および/または連続振幅範囲にわたって動作するシステムを意味する非離散システムでは、そのシステムに可能な周波数応答は無限個ある。例えば離散周波数で動作し出力振幅が離散的であるシステムを意味する離散システムでは、有限個の可能な周波数応答があるが、この有限個はかなり大きな数であり得る。いずれの場合でも、ターゲット応答を選択する際の可能な選択肢の数は途方もなく大きいことがある。そのため、限られた数の事前定義されたターゲット応答をユーザに提供し、その中から選択させることが望ましいことがある。例えば、ターゲット応答の選択肢は、1組のヘッドホンでは、ヘッドホンの装着者が聞く飛行機の騒音を最小化するために、200~300Hzの帯域で減衰を最大とし得る。ユーザインターフェース140は、いくつか例を挙げると、グラフィカルユーザインターフェースGUI、プログラミングインターフェース、または、選択スイッチのセットとし得る。周波数応答推定システム150は、ターゲット応答についての情報およびデータ取得デバイス130によって収集されるデータを用いて、DUT105の信号経路の所望の構成を決定する。次いで、推定システム150は、DUT105の周波数応答がターゲット応答に近似するように、プログラマブル回路190の回路パラメータを決定する。プログラマブル回路190は後で記載する。周波数応答推定システム150は、データ解析デバイス155、ターゲット応答整合デバイス160、パラメータ決定デバイス170、およびプログラミングデバイス175を含む。周波数応答推定システム150のデータ解析デバイス155は、データ取得デバイス130によって収集されたデータを解析する。データ解析は、取得されたデータを用いて、例えば、周波数応答、共振、ピーク、およびオーディオスループットを求めることを含み得る。他の解析も行うことができる。このデータはさらに、構成要素の故障の判断など、DUT105の状態を判断する際に用い得る。ターゲット応答整合デバイス160は、選択されたターゲット応答およびデータ解析デバイス155の解析結果を用いて、DUT105のターゲット回路構成を決定する。ターゲット回路構成は、理想的には、DUT105の有効周波数応答をターゲット応答に整合させるものである。ターゲット回路構成を決定するための1つの例示プロセスでは、伝達関数の数学的概念に関してDUT105をモデル化する制御システム理論を用いる。この制御システム解析を以下に詳細に述べる。いくつかの実装形態では、DUT105は、それぞれシェーピングすることが望ましい周波数応答を有する複数の回路を含み得る。例えば、DUT105の中には、ノイズ消去機能とは別に等化機能を含み得るものがある。このような実装形態では、ターゲット応答整合デバイス160は、これら様々な機能に対するターゲット回路構成を決定するための複数のヒューリスティックを含み得る。ターゲット応答整合デバイス160は、連続ドメインにおいて解を生成し得る。例えば、所望の回路構成を記述する式において、各係数は、ターゲット応答整合デバイス160の制約、例えば、ソフトウェアに書き込まれる制約または係数を記憶させるレジスタのサイズにより生じる制約、によってのみ限定される任意の数とし得る。この例でこの式がいくつかの係数を含む場合、膨大な数の可能な式が存在することになる。アナログシステムまたはデジタル信号処理システムの中には広範な処理能力および記憶能力を備えたものがあり、これら連続解の大部分を実施することが可能なことがある。しかし、ある回路構成を実装する方式が有限個しかない場合、これら利用可能な選択肢を用いて所望の回路構成を近似しなければならない。パラメータ決定デバイス170は、DUT105のプログラマブル回路190の制約の下で所望の回路構成を近似する。簡単な例として、プログラマブル回路190が改変し得る3つのパラメータを含み、各パラメータが2つの異なる値の1つであり得る場合、最大で8つの異なる構成選択肢があり得る。この例では、パラメータ決定デバイス170は、これら8つの構成のそれぞれから得られる予想されるシステム応答を比較し、事前定義される基準に従ってターゲット周波数応答に最も近似する応答が得られる構成を選択し得る。パラメータ決定デバイス170は、様々な方式でプログラマブル回路190で利用可能な離散パラメータ選択肢の制約の下で所望の回路構成を近似し得る。先の例では、あらゆる解を比較して最良解を見つけた。しかし、いくつかのパラメータが存在し、それぞれがいくつかの値の選択肢を有する場合、可能な解の数は途方もなく多くなり得、何かの他の方法のほうが妥当な時間量で最適解を見つけるのにより適していることがある。ジェネティックヒューリスティックが用いられる一例では、シード解から始め、ミューテーションを用いて最適解を見つける。回路構成パラメータがターゲット応答から直接決定されるように、ターゲット応答整合デバイス160およびパラメータ決定デバイス170は一緒に実装してもよい。パラメータ決定デバイス170によってプログラマブル回路のパラメータが決定されると、これらのパラメータはプログラマブル回路190にプログラムされる。プログラミングデバイス175は、適切なフォーマットのプログラミング情報を接続180を介してDUT105に提供する。接続180は、有線または無線とすることができ、DUT105との通信に適した任意の並列または直列の通信インターフェースとし得る。プログラミング情報は、異なる環境状態に対して用い得る代替パラメータなど、構成パラメータに付加的な情報を含み得る。プログラマブル回路190は、プログラミングデバイス175から受け取るプログラミング情報で構成され得る。プログラマブル回路190は多くの形態を取り得る。一例では、プログラマブル回路190は複数の回路を含み、これらの回路の様々なパラメータは、パラメータ構成選択肢の中から選択することによって変更し得る。パラメータ構成選択肢から選択する一実装形態では、抵抗性ラダーデジタルアナログコンバータRLDACを用いる。RLDACでは、メモリ位置における構成ビットに従ってRLDACのレジスタが切り替えられる。RLDACの等価抵抗は、どのレジスタが切り替えられたかに応じて変化する。閾電圧、遅延設定、フィルタコーナ周波数などのパラメータの値は、等価抵抗を変更することによって変更し得る。RLDACを用いる例では、これらのパラメータが変化すると、DUT105の周波数応答も変化する。そのため、RLDACのセットを用いて、DUT105の周波数応答がターゲット周波数応答に近似するようにDUT105を構成し得る。他のプログラマブル回路190を付加的にまたは代わりに用いることもできる。プログラマブル回路190の例をいくつか挙げると、デジタルまたはアナログのフィールドプログラマブルゲートアレイFPGA、スイッチドキャパシタ回路、トランスコンダクタキャパシタフィルタ、およびスイッチド電流回路がある。これまでの記載からわかるように、検査システム100およびDUT105内で認識される様々な構成要素は様々な方式で実装され得る。これらの構成要素の機能性は、複数のデバイスにわたって広げてもよいし、1つのデバイスに集約してもよい。これらの構成要素の物理的な実装は、離散回路と集積回路の組み合せを含むことがあり、ファームウェアとソフトウェアの組み合せを含むこともある。例示のシステム100および図示したDUT105の種々の構成要素を記載したが、一例を以下に提示する。図2は、検査システム100を用いてDUT105の周波数応答がターゲット周波数応答に近似するようにプログラマブル回路190を構成するための例示のプロセス200を示す。プロセス200は、検査信号生成器120が検査信号を被検査デバイスDUT105に印加する205で始まり、後続の210でデータ取得デバイス130がDUT105からデータを取得する。取得されたデータは、215でデータ解析デバイス155によって解析されて、DUT105の周波数応答が決定される。220で、ターゲット周波数応答が、所定の選択またはユーザインターフェース140を介するユーザの選択のいずれかとして選択される。225で、ターゲット応答整合デバイス160は、DUT105の周波数応答とターゲット周波数応答とに基づいて所望の回路構成を計算する。230で、パラメータ決定デバイス170は、DUT105の周波数応答がターゲット周波数応答に近似するようにプログラマブル回路の回路パラメータを計算する。235で、プログラミングデバイス175は、プログラマブル回路190の構成のため、230で計算された回路パラメータをDUT105に提供する。235の後、プロセス200が終了する。DUT105の周波数応答を定義しシェーピングするために検査システム100がどのように用いられ得るかを全般的に記載してきたが、次に、周波数応答推定システム150の機能をよりよく理解するための基礎として、いくつかの例示のDUT105の詳細を提示する。例示の音響電子システム図3A、図3Bおよび図4A~図4Cは、音響の分野における例示のDUT105を示すブロック図である。図3Aは、プログラマブル回路190図示せずを備えたコントローラ300と、スピーカ310および内蔵フィードバックマイクロホン315を備えたヘッドホン305とを含む例示の音響デバイスのブロック図を示す。ヘッドホン305は、一対のヘッドホン305の一方であり得る。コントローラ300は、ヘッドホン305内に物理的に位置してもよい。入力信号320がコントローラ300を通ってスピーカ310に伝播する。スピーカ310は、伝播した信号を表す音響信号を放出する。ヘッドホン305内には周囲音響ノイズ325も存在し得る。マイクロホン315は、スピーカ310が放出する音響信号および周囲ノイズ325を受け取り、コントローラ300にフィードバック信号322を供給する。図3Aの例におけるコントローラ300のプログラマブル回路190は、製造時にあるいは開発または検査環境において構成され得る。これに加えて、またはその代わりに、この環境を補償する環境において、フィードバック信号322を既知の入力信号320とともに用いてプログラマブル回路190のプログラマブルパラメータを決定することによって、プログラマブル回路190をプログラムしてもよい。図3Aの例示の閉ループシステムの数学的モデルを図5に示し、後で述べる。図3Bは、図3Aの例におけるDUT105の周波数応答を決定するために検査システム100を用い得る一方法のブロック図を示す。図3Bでは、コントローラ300はヘッドホン305から切り離して示されており、これは、例えば、取外し、迂回、または無効化による、検査中のコントローラ300のバイパスを表している。DUT105は、コントローラ300から離れておりバイパスされない他の回路図示せずを含み得る。検査システム100は、検査信号323をスピーカ310に供給し、マイクロホン315からフィードバック信号322を受け取るように、ヘッドホン305に接続され得る。検査システム100はまた、周囲ノイズ検査信号330をDUT105に供給し得る。検査システム100は、DUT105の周波数応答を決定し、コントローラ300内のプログラマブル回路190の回路パラメータを計算し、回路パラメータは周波数応答をターゲット周波数応答に実質的に類似させ得る。回路パラメータはプログラマブル回路190にプログラムされ得る。図4Aは、プログラマブル回路190図示せずを備えたコントローラ300と、スピーカ410およびフィードフォワードマイクロホン415を備えたヘッドホン405とを含む例示の音響デバイスのブロック図を示す。コントローラ300は、ヘッドホン405内に物理的に配置してもよい。DUT105は、図示しない他の回路を含み得る。図4Aの例では、マイクロホン415は、スピーカ410の背後または隣に物理的に配置し得る。入力信号420が、コントローラ300を含むDUT105を通って伝播し、スピーカ410に供給される。スピーカ410は、伝播した信号を表す音響信号を放出する。マイクロホン415はたいてい環境から周囲ノイズ425を受け取り、対応するフィードフォワード信号431をコントローラ300に供給する。図4Aの例示システムの数学的モデルを図6Aに示し、後で述べる。図4Aの例におけるコントローラ300のプログラマブル回路190は、製造時にあるいは開発または検査環境で構成し得る。これに加えて、またはこの代わりに、環境を補償する環境において、フィードフォワード信号431を既知のヘッドホン405の特性とともに用いてプログラマブル回路190のプログラマブルパラメータを決定することによって、プログラマブル回路190をプログラムしてもよい。図4Bは、図4Aに示すDUT105の検査モードでのブロック図である。検査システム100は、例えば、頭部および胴体シミュレータHATSの、耳の形をした領域にマイクロホンを埋め込んで人間の外耳道におけるノイズ受信をシミュレーションする、HATSに含めてもよい。図4Bでは、コントローラ300はヘッドホン405から切り離して示されており、これは、例えば、取外し、迂回、または無効化による、検査中のプログラマブル回路190のバイパスを表している。検査システム100は、オーディオ検査信号432をDUT105に供給し、マイクロホン415からのフィードフォワード信号431と、検査システム100のマイクロホン340からのフィードバック信号345とを受け取るように、ヘッドホン405に接続され得る。検査システム100はさらに、周囲ノイズ検査信号433をヘッドホン405に供給し得る。検査システム100は、オーディオ検査信号432および周囲検査ノイズ信号433とともにフィードフォワード信号431およびフィードバック信号345を用いて、DUT105の様々な部分の周波数応答を決定する。検査システム100は、上述したようにプログラマブル回路190の回路パラメータを計算し得る。回路パラメータはプログラマブル回路190にプログラムされ得る。図4Bの例示の検査セットアップの数学的モデルを図6Bに示し、後で述べる。図4Cは、ヘッドホン440が、プログラマブル回路190図示せずを備えたコントローラ300、スピーカ410、およびフィードフォワードマイクロホン415を含む、例示の音響デバイスのブロック図を示す。ヘッドホン440の全般的な動作は、図4Aの例におけるヘッドホン405と同じであり、両者の差異は、ヘッドホン440がヘッドホン440内にコントローラ300を含むことである。図4Cの例をここに含めたのは、DUT105の構成要素およびサブ構成要素は様々な異なる方式で物理的に実装し得ることを示すためである。先に述べたように、図3A、図3Bおよび図4A~図4Cは、音響デバイスの例示の実装形態を示す。これらいくつかの例示のDUT105を記載したのは、制御システムの研究において用いられる数学的概念に関連する以下の記載に関する状況を提供するためである。例示の制御システムモデル図5および図6A、図6Bは、プログラマブル回路190の回路パラメータ情報を求めるために周波数応答推定システム150が使用し得る制御システムモデルの例示の実装形態を示す。図5は、図3Aに示すDUT105などのデバイスを表し得る。図6Aは、図4Aに示すDUT105などのデバイスを表し得る。図6Bは、図4Bに示すDUT105などのデバイスを表し得る。図5および図6A、図6Bに示すモデルでは、制御理論の原理に従って、DUT105の物理的な挙動を伝達関数を用いて数学的にモデル化する。図5は、コントローラ300およびヘッドホン305を含む図3Aに示すDUT105をモデル化する閉ループフィードバックデバイスを示す。ヘッドホン305は、Gωで示す伝達関数505および増幅率がKmのマイクロホン増幅器510によってモデル化される。Gωは、スピーカ310の入力から空気を介してマイクロホン315の出力までのヘッドホンの周波数応答のモデルである。マイクロホン315が受け取る音響信号は、外耳道で受け取られる信号を表している。マイクロホンが受け取る信号は、マイクロホン増幅器510によって増幅され、フィードバック信号540として伝達される。コントローラ300のモデルは、G^ωで示す伝達関数520および増幅率がKaの音響増幅器525を含むイコライザ515を含む。G^ωとKaの組み合せは、GωおよびKmで表されるヘッドホンの応答を近似する。コントローラ300のモデルはさらに、増幅率がKsの差動増幅器530と、Hωで示す誤差補償回路伝達関数535とを含む。Hωは、プログラマブル回路190の所望の機能を表し得る。Kmで増幅されたGωの出力540およびKaで増幅されたG^ωの出力541は、増幅器530で差動増幅され、入力542としてHωに供給される。G^ωおよびKaはGωおよびKmと整合するように設計されるので、周囲ノイズ325がない場合の増幅器530の出力は理想的にはゼロに等しい。Hωの出力543は入力信号320に加えられ、結果の信号321はスピーカ310に供給される。Lωは、スピーカ310が放出する音響信号と周囲音響ノイズ325の合成を表す。理想的なDUT105では、スピーカ310によって音に変換される信号321は、周囲ノイズ325を完全に消去し得、そのためLωは入力信号320のみを表し得る。コントローラ300の機能は組み合わせることができる。例えば、構成要素515および535は、個別のプログラマブル回路と、構成要素515および構成要素535について決定されるターゲット周波数応答とで実装することができる。他の構成要素の組み合せも実装することができ、対応するターゲット周波数応答を決定し得る。コントローラ300はさらに、プログラマブル回路の1つのセットとして実施することができ、この場合、ターゲット応答整合デバイス160は、このデバイス全体についての所望の伝達関数を決定し得る。図5のモデルは、以下の例に記載するように使用し得る。望ましくないノイズがDUT105によって受け取られ、ユーザの外耳道に音響的に伝播することがある。場合によっては、幾つかのタイプの望ましくないノイズが存在し得ると予想し得る。例えば、予想されるノイズは飛行機のエンジンノイズであり得、したがってDUT105のターゲット周波数応答は、飛行機のエンジンノイズの最大減衰とし得、これは、200~300ヘルツHzの周波数帯における減衰になる。Gωは、DUT105から取得される検査データに基づいて求めることができる。所望のHωは、Gωおよびターゲット周波数応答から、DUT105の周波数応答が理論的にターゲット周波数応答に近似するように計算し得る。所望のHωを把握した後で、パラメータ決定デバイス170によってプログラマブル回路190のパラメータのセットを決定し得る。所望のHωは、例えば、式1~6によって記述される計算を実施することによって、決定し得る。一実装形態では、Hωは、フィルタカットオフ周波数およびQ値のベクトルとしてパラメータ化される4次のコントローラである。式1に示す伝達関数Lωは、周囲ノイズ325に対する、図5に示すDUT105の開ループ伝達関数として定義される。Lω=Ks×Km×Gω×Hω1閉ループ伝達関数Sωが、出力が人間の耳が受け取る望ましくない周囲ノイズであり、入力がDUT105が受け取るその望ましくない周囲ノイズである場合に定義される。Sωは、式2に示すLωに関連している。Sωを最小化すると、ヘッドホン305の装着者が聞く周囲ノイズ325が最小化される。Sω=1/1Lω2最善のノイズ消去を提供するために、式3に示すようにSωの最小値を計算する。ここでWωは数学的なウィンドウ化関数である。関数Fは、Hωおよびフィードバックシステムが安定であることを前提として計算される。また、Fは、フィードバックシステムの利得マージンGMおよび位相マージンPMに対する制約を前提として計算される。所与のGMおよびPMについて、式4および5を解くことによってパラメータaおよびbが計算される。GM≧1/a4PM≧arccosa/b√1b2-a25関数Fに関する解はさらに、式6に示すように制約される。|bLx,ω|-|b-Lx,ω|≦2a6Fに対する付加的な制約には、Q値に対する上限および下限、ならびにカットオフ周波数に対する上限および下限が含まれる。関数Fに関する最適解は、多くの異なる方式で見つけることができる。その1つは、アクティブセットストラテジーを利用する逐次二次計画法quadraticprogrammingmethodを用いることである。式3に関していくつかの最小値があり得、そのため、関数Fについていくつかの解があり得る。極小値を解に選ばないことが望ましい。真の最小値を見つけるために、選択された最適化法を複数の異なる初期状態に対して複数回実行していくつかの最小値を見つけることができる。これら最小値の1つを、例えば、システムの減衰、帯域幅、最大ピーク、または安定性に関して、最良解として選択する。上記の例では、最適化された関数Fは、プログラマブル回路190についてのフィルタカットオフ周波数およびQ値の解を表し、この解は、パラメータ決定デバイス170によって回路構成パラメータに変換しなければならない。その結果の回路構成パラメータは連続ドメインに存在し得る。ただし、プログラマブル回路190を、各パラメータがそのパラメータについての一群の離散値から選択される複数のパラメータ値で実装することが可能である。そのため、パラメータ決定デバイス170は、実装時に関数Fによって表される連続解を近似し得る回路パラメータのセットを決定しなければならない。例えば、値の各群からの最もありそうな値の制限されたセットを用いる部分線形パラメトリック検索を用いることによるなど、連続解を近似する離散解を見つける方法が多くある。関数Fに関して或る離散解を見つけた後で、この解のパラメータがプログラマブル回路190にプログラムされ得る。図6Aは例示のヘッドホン605を示す。ヘッドホン605は、図4Aの例で示したようなフィードフォワードマイクロホン415を備えたヘッドホン405を表し得る。図6Aの例では、所望のオーディオ信号420がスピーカ410に印加され、外耳道に伝わり、望ましくない周囲ノイズ425がヘッドホン605を通過して外耳道に達する。外耳道で聞かれる望ましくない音響周囲ノイズ425を最小化し得る、プログラマブル回路190を含む制御回路615の伝達関数Hωを決定することが望ましい。望ましくない周囲ノイズ425がそのノイズ源から外耳道に至るまでに取る経路は、伝達関数T1ωによってモデル化される。フィードフォワードマイクロホン610は、望ましくない周囲ノイズ425を検出する。望ましくない周囲ノイズ425のノイズ源からマイクロホン610の出力までの経路は、伝達関数T2ωによってモデル化される。マイクロホン610の出力は制御回路615を通される。制御回路615の出力は、所望のオーディオ信号420とともにスピーカ410に印加される。スピーカ410の入力から外耳道までの経路は、伝達関数T3ωによってモデル化される。このモデルを用いて、外耳道で受け取る周囲ノイズ425を最小化する伝達関数Hωは、まずT1ω、T2ω、およびT3ωを決定し、次いで、T1ω、T2ω、およびT3ωを用いて式7および式8に示すようにHωを計算することによって決定し得る。T1ω=T2ω×Hω×T3ω7Hω=T1ω/T2ω×T3ω8図6Bは、T1ω、T2ω、およびT3ωを測定し、Hωを計算するために構成される検査環境における図6Aのモデルを示す。図6Bでは、検査システム100はスピーカ625を介して検査信号を放出し、検査システム100のマイクロホン620を用いて外耳道で受け取る音を近似する。予想される周囲ノイズを最小化するように制御回路615内のHωおよびプログラマブル回路190の構成を計算するために、制御回路615は検査システム100の周波数応答推定システム150で一時的に置き換えられる。周囲ノイズ検査信号433は、予想される周囲ノイズに類似するように生成される。マイクロホン620からのフィードバック信号およびマイクロホン610からのフィードフォワード信号が周波数応答推定システム150に印加され、システム150の出力がヘッドホン605内のスピーカ410に印加される。伝達関数T2ωは、検査システム100のスピーカ625、ヘッドホン605のマイクロホン610、およびスピーカ625とマイクロホン610の間の音響経路を含むように定義される。伝達関数T3ωは、ヘッドホン605のスピーカ410、検査システム100のマイクロホン620、およびスピーカ410とマイクロホン620の間の音響経路を含むように定義される。伝達関数T1ωは、周波数応答推定システム150だけでなくT2ωおよびT3ωを含むように定義される。このモデルを用いて、T1ωは、検査システム100のマイクロホン出力345を検査システム100のスピーカ625の入力と比較することによって決定され得、T2ωは、ヘッドホン605のマイクロホン出力431を検査システム100のスピーカ625の入力と比較することによって決定され得、T3ωは、検査システム100のマイクロホン出力345を周波数応答推定システム150の出力と比較することによって決定され得る。T1ω、T2ω、およびT3ωを決定した後で、式8からHωを決定し得、Hωからプログラマブル回路190のパラメータを決定し得る。ターゲットT1^ωは、予想される周囲ノイズに対する総合的なシステム応答として選択または定義され得る。例えば、図1に示すようなユーザインターフェース140でターゲット応答が選択され得る。いくつかの実装形態では、測定されたT1ωは、ターゲットT1^ωを選択または定義するための開始点を提供し得る。Hωは、ターゲットT1^ωおよび測定されたT2ωおよびT3ωから式9を用いて決定することができる。Hω=T1^ω/T2ω×T3ω9Hωから、パラメータ決定デバイス170は、離散値群から選択される回路パラメータを決定し得る。例示の開発キット周波数応答推定システム150または検査システム100は、開発キットとして実装し得る。例えば、シリコンサプライヤの顧客は、アクティブノイズキャンセルANC集積回路チップを購入して量産ヘッドホンシステムに使用することがある。ヘッドホンという用語は、オーバーイヤーデバイス、オンイヤーデバイス、およびインイヤーデバイスを含み、また、例えば、物理的なヘッドホン部分、スピーカおよびマイクロホンなどの電子構成要素、制御回路、線、およびロジックを含む。ロジックは、アナログおよびデジタルの構成要素、ファームウェア、およびソフトウェアを含み、基本的なヘッドホンの機能性およびANC機能性を包含する。こうしたヘッドホンシステムが開発中である一方で、顧客は、ヘッドホンシステムの安定のため、予想されるノイズの消去のため、および、ヘッドホンシステムの周波数応答を全般的にシェーピングするためにヘッドホンシステムを調整し得る。周波数応答推定システム150を含む開発キットを用いてANCチップの回路パラメータを、全体的なヘッドホンシステム調整プロセスの一部として決定し得る。一対のヘッドホンにおける左右のヘッドホンは別々に調整し得る。開発キットは、ANCチップシミュレータを備えたプロトタイプボードを含み得る。推定システム150によって決定されるプログラマブル回路190の回路パラメータはこのチップシミュレータにプログラムされ、チップシミュレータはシステムを検査する際に使用される。おそらくは複数セットある回路パラメータを用いる検査を含めて調整プロセスが完了した後、回路パラメータの最終的なセットが保存され、ヘッドホンシステム内のANCチップにプログラムされ得る。回路パラメータの最終的なセットは、ヘッドホン製造中にヘッドホンシステム内の各ANCチップにプログラムされるベースライン設定として、またはデフォルト設定として用いられてもよい。例示の製造検査DUT105の設計および開発プロセスが完了した後、DUT105を大量製造し得る。DUT105がヘッドホンシステムである例では、周波数応答は、例えば、設計または製造における許容差、回路構成要素の許容差、またはデバイスの損傷などによる影響を受ける。そのため、新規のヘッドホンはそれぞれ異なる周波数応答を有し得る。新規のヘッドホンは、望ましくない、許容し得ない、または不安定でさえある周波数応答を有することがある。許容し得ないヘッドホンを廃棄しなければならない状況を回避するために、製造時にヘッドホンを調整することができる。ヘッドホン対を含むヘッドホンシステムは、まず、その対の2つのヘッドホンが利得および位相について整合される、整合を受けることができる。整合により、よりよい知覚音質が得られ、かつ、より効率的にノイズが消去される。整合の後、前述したように周波数応答推定システム150を用いて、選択されるターゲット周波数応答プロファイルを満たすようにヘッドホンシステムを調整し得る。製造時のヘッドホンの調整にかかる時間を最小化するために、ターゲット解に近い解で調整プロセスを開始することが望ましい。ヘッドホンの製造が始まるとき、開発時に決定された回路パラメータを任意選択で各ヘッドホン毎の開始点として使用し得る。あるいは、開始点は、例えば、回路パラメータのランダムシードセット、または他の設計のヘッドホンの製造に有効であった回路パラメータのセットとしてもよい。周波数応答推定システム150は、各ヘッドホンに良好な解を推定システム150に一層迅速に見つけさせる最良開始点が見つかるように、経時的に、複数のヘッドホンの調整から学習することができる。製造学習メカニズムの一例は、最適化基準のための重み付けシステムである。最適化基準は、ヘッドホンの周波数応答のターゲット周波数応答との近似であり得る。近似は複数の方式で決定し得る。実際の周波数応答のターゲット周波数応答との近似を決定する4つの方式を以下に示す。1特定の周波数点でANC深さを比較する、2帯域幅BW1にわたるANC曲線下の面積を比較する、3ANC曲線下の全面積を比較する、4オーバーシュートを比較する。近似を決定するこれら4つの方式はそれぞれ、近似の基準における因子であり得る。これらの因子は重み付けすることができ、重み付けされた因子を用いて近似の基準を計算し得る。近似を含めて複数の基準も重み付けされ得、重み付けされた基準を用いて最適値を計算し得る。この最適値を用いて現在の解が許容可能な解かどうかを決定し得る。周波数応答推定システム150が集めるデータがますます多くなると、先に列記した4つなどの近似の因子が、統計的に一層有益となる。そのため、一実装形態では、より多くのデータが利用可能になるにつれ、近似の基準により大きな重みが与えられることがある。結論周波数応答推定システム150により、DUT105の効果的な自動調整が可能になる。推定システム150は、開発または製造環境においてDUT105の周波数応答をシェーピングするために用いることができ、また、エンドユーザの環境においてDUT105の周波数応答をシェーピングするために用いることもできる。推定システム150は、DUT105の周波数応答をターゲット周波数応答に近似させる、プログラマブル回路190のパラメータを決定する。いくつかの例では、周波数応答推定システム150は、1つまたは複数のコンピューティングデバイス例えば、サーバ、パーソナルコンピュータなどに対するコンピュータ可読命令例えばソフトウェアとして少なくとも部分的に実装し得る。コンピューティングデバイスは、概して、コンピュータが実行し得る命令を含む。一般に、プロセッサ例えばマイクロプロセッサがコンピュータ可読媒体から命令を受け取り、命令を実行し、それによって、本明細書で記載したプロセスの1つまたは複数を含めて、1つまたは複数のプロセスを実施する。このような命令および他のデータは、様々な既知のコンピュータ可読媒体を用いて記憶及び送信され得る。コンピュータ可読媒体プロセッサ可読媒体とも呼ばれるが、コンピュータ例えば、コンピュータのプロセッサが読み取り得るデータ例えば命令の提供に関与する、任意の実体のある媒体を含む。コンピュータ可読媒体の一般的な形態には、例えば、フロッピーディスク、フレキシブルディスク、ハードディスク、磁気テープ、任意の他の磁気媒体、CD-ROM、DVD、任意の他の光学的媒体、パンチカード、紙テープ、穴パターンを有する任意の他の物理媒体、RAM、PROM、EPROM、フラッシュEEPROM、任意の他のメモリチップまたはカートリッジ、あるいはコンピュータが読み取り得る任意の他の媒体が含まれる。命令は、同軸ケーブル、銅線、および光ファイバを含めて、コンピュータのプロセッサに結合されるシステムバスを含む線を含めて、1つまたは複数の送信媒体によって送信され得る。送信媒体は、音響波、光波、および電磁放出、例えば、無線周波数RFや赤外線IRデータ通信時に生成されるものなどを含み得、これらを伝達し得る。コンピュータが実行し得る命令は、様々な周知のプログラミング言語および/または技術を用いて作成されるコンピュータプログラムからコンパイルまたは解釈され得る。これらのプログラミング言語および/または技術には、Java商標、C、C、ビジュアルベーシック、Javaスクリプト、Perl、PL/SQL、Labviewなどが単独または組み合せで含まれるが、これらに限定されるものではない。コンピューティングシステムおよび/またはデバイスは、概して、多くの周知のコンピュータオペレーティングシステムの任意のものを用い得る。これらのオペレーティングシステムには、MicrosoftWindows登録商標オペレーティングシステムの既知のバージョンおよび/またはバリエーション、Unixオペレーティングシステム例えば、カリフォルニア州レッドウッドショアズのオラクル社が販売するSolaris登録商標オペレーティングシステム、ニューヨーク州アーモンクのIBM社が販売するAIXUNIXオペレーティングシステム、およびLinuxオペレーティングシステムが含まれるが、これらに限定されるものではない。コンピューティングデバイスの例には、コンピュータワークステーション、サーバ、デスクトップコンピュータ、ノートブックコンピュータ、ラップトップコンピュータ、ハンドヘルドコンピュータ、あるいは、いくつかの他の既知のコンピューティングシステムおよび/またはデバイスが含まれるが、これらに限定されるものではない。データベース、データ保管場所、または本明細書に記載した他のデータ記憶装置は、階層データベース、ファイルシステム内のファイルのセット、独自仕様フォーマットのアプリケーションデータベース、リレーショナルデータベース管理システムRDBMSなどを含めて、様々な種類のデータを記憶し、データにアクセスし、かつデータを引き出すための様々な種類のメカニズムを含み得る。このようなデータ記憶装置はそれぞれ、概して、既知のように、先に述べたもののうちの1つなどのコンピュータオペレーティングシステムを採用するコンピューティングデバイス内に納められ、様々な方式の1つまたは複数でネットワークを介してアクセスされる。ファイルシステムは、コンピュータオペレーティングシステムからアクセスすることができ、様々なフォーマットで記憶されるファイルを含み得る。RDBMSは、概して、先に述べたPL/SQL言語など、記憶された手順を生成、記憶、編集、実行するための言語に加えて、既知のSQLstructuredquerylanguageを用いる。本明細書に記載したプロセス、システム、方法、ヒューリスティックなどに関して、このようなプロセスなどのステップは或る順序付けられたシーケンスに従って行われるように記載したが、このようなプロセスは本明細書に記載した順序以外の順序で実施される上記ステップで実施し得ることを理解されたい。或る複数のステップを同時に実施することができ、他のステップを追加することができ、また、本明細書に記載した或るステップを省略し得ることも理解されたい。言い換えれば、本明細書のプロセスの記載は或る種の実施形態を示すために提供されたものであり、決して特許請求される発明を限定するように解釈すべきではない。従って、上記の記載は例示を意図しており、限定することは意図していないことを理解されたい。提供した例以外の多くの実施形態および応用例が上記記載を読めば明らかになるであろう。本発明の範囲は、上記記載を参照して定められるのではなく、添付の特許請求の範囲を、このような特許請求の範囲が請求するものの均等物の最大範囲とともに参照して、定められるべきである。本明細書に記載した技術において将来開発が行われることや、ここで開示したシステムおよび方法がこのような将来の実施形態に組み込まれることも予想され、意図されている。要約すれば、本発明は改変および変形が可能であることを理解されたい。特許請求の範囲で用いられる用語はいずれも、本明細書においてそれに反する明示的指示がない限り、本明細書に記載した技術に精通する当業者が理解する最も広範な妥当な解釈および通常の意味が与えられるものとする。特に、或るa、そのthe、前記saidなどの単数冠詞が用いられている場合、特許請求の範囲がそれに反する限定を明示的に示していない限り、これらの単数冠詞で示される要素の1つまたは複数を示していると読むべきである。明細書において一例、ある例、一手法、ある応用例、ある実装形態、または類似の言葉を参照している場合、その例に関連して記載される特定の特徴、構造、または特性がその例に含まれることを意味するが、このような語句が複数用いられている場合、必ずしも同じ例を指さない。明細書においてソフトウェアを参照している場合、ハードウェアに内蔵される命令であるファームウェアも含まれる。"