(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-07-05
(45)【発行日】2024-07-16
(54)【発明の名称】時間インタリーブ・デジタル・アナログ・コンバータ・システム及びそのための前置処理フィルタを校正する方法
(51)【国際特許分類】
H03M 1/10 20060101AFI20240708BHJP
H03M 1/66 20060101ALI20240708BHJP
H03L 7/00 20060101ALI20240708BHJP
【FI】
H03M1/10 B
H03M1/66
H03L7/00
【外国語出願】
(21)【出願番号】P 2019135629
(22)【出願日】2019-07-23
【審査請求日】2022-07-05
(32)【優先日】2018-07-23
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】391002340
【氏名又は名称】テクトロニクス・インコーポレイテッド
【氏名又は名称原語表記】TEKTRONIX,INC.
(74)【代理人】
【識別番号】100090033
【氏名又は名称】荒船 博司
(74)【代理人】
【識別番号】100093045
【氏名又は名称】荒船 良男
(74)【代理人】
【識別番号】110001209
【氏名又は名称】特許業務法人山口国際特許事務所
(72)【発明者】
【氏名】カレン・ホウバキミヤン
【審査官】竹内 亨
(56)【参考文献】
【文献】米国特許第09007250(US,B1)
【文献】特開2007-150640(JP,A)
【文献】米国特許第06473011(US,B1)
【文献】米国特許出願公開第2017/0077945(US,A1)
【文献】特開2016-206201(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H03M 1/00-1/88
H03L 7/00-7/26
(57)【特許請求の範囲】
【請求項1】
時間インタリーブ・デジタル・アナログ・コンバータ(TIDAC)システムのための前置処理フィルタを校正する方法であって、
第1周波数の第1離散波形を上記TIDACシステムの第1デジタル・アナログ・コンバータ(DAC)
で第1アナログ信号に変換する
と共に上記TIDACシステムの第2DAC
で第2アナログ信号に変換する処理と、
第2周波数の第2離散波形を上記TIDACシステムの第1デジタル・アナログ・コンバータ(DAC)で第3アナログ信号に変換すると共に上記TIDACシステムの第2DACで第4アナログ信号に変換する処理と、
上記第1アナログ信号と上記第2アナログ信号を
第1合成アナログ信号に合成する
と共に上記第3アナログ信号と上記第4アナログ信号を第2合成アナログ信号に合成する処理と、
アナログ・デジタル・コンバータ(ADC)によって上記
第1合成アナログ信号を
第1デジタル信号に変換
すると共に上記第2合成アナログ信号を第2デジタル信号に変換する処理と、
離散フーリエ変換によって上記第1デジタル信号及び上記第2デジタル信号を夫々対応する第1周波数応答信号及び第2周波数応答信号に変換し、上記第1周波数応答信号及び上記第2周波数応答信号に基づいて実際の周波数応答行列を生成することによって、上記TIDACシステムの実際の周波数応答を求める処理と、
上記TIDACシステムの所望の周波数応答
行列を受ける処理と、
上記TIDACシステムの上記実際の周波数応答
行列及び上記TIDACシステムの上記所望の周波数応答
行列に基づいて、上記第1DAC及び上記第2DACの少なくとも1つのための前置処理フィルタを生成する処理と
を具える前置処理フィルタを校正する方法。
【請求項2】
上記第1DAC及び上記第2DACの少なくとも1つのための上記前置処理フィルタを求める処理が、上記所望の周波数応答
行列と、上記前置処理フィルタで前置処理された入力信号を受けた上記DACの周波数応答
行列との差を低減する上記前置処理フィルタに関するフィルタ係数を選択する処理を含む請求項1の前置処理フィルタを校正する方法。
【請求項3】
上記ADCのサンプリング・レートが、上記第1DAC及び上記第2DACのサンプリング・レートの整数倍ではない請求項1の前置処理フィルタを校正する方法。
【請求項4】
上記合成アナログ信号が妥当な周波数であるかを判断する処理を更に具え、上記合成アナログ信号が妥当な周波数でない場合、上記ADCの出力信号夫々のサンプルを、夫々対応する上記DACのサンプリング・レートに基づいて補間することによって、上記実際の周波数応答
行列を求める請求項3の前置処理フィルタを校正する方法。
【請求項5】
請求項1の方法であって、上記実際の周波数応答
行列は、第1実際周波数応答
行列であり、上記方法は、更に、
上記
第1実
際周波数応答
行列に基づいて上記TIDACシステムの第2実際周波数応答
行列を補間することによって上記第2実際周波数応答
行列を生成する処理を具え、
上記第1DAC及び上記第2DACの少なくとも1つのための上記前置処理フィルタを生成する処理は、上記TIDACシステムの上記第1実際周波数応答
行列、上記TIDACシステムの上記第2実際周波数応答
行列及び上記TIDACシステムの上記所望の周波数応答
行列に基づいて上記前置処理フィルタを生成する処理を含む請求項1の方法。
【請求項6】
時間インタリーブ・デジタル・アナログ・コンバータ(DAC)システムであって
フィルタ処理デジタル信号をアナログ信号に変換するよう構成される複数の時間インタリーブDACと、
複数の上記時間インタリーブDACの対応する1つと夫々関連する複数の前置処理フィルタであって、夫々がデジタル信号を受けて上記フィルタ処理デジタル信号を出力するよう構成され、複数の上記時間インタリーブDAC間に測定される不整合に基づいて決定される複数の上記前置処理フィルタと、
複数の上記DACの夫々が出力する上記アナログ信号を合成して合成アナログ信号を出力するよう構成される合成部と
、
前置処理フィルタ・プロセッサであって、
第1周波数の第1離散波形を上記TIDACシステムの第1デジタル・アナログ・コンバータ(DAC)で第1アナログ信号に変換すると共に上記TIDACシステムの第2DACで第2アナログ信号に変換する処理と、
第2周波数の第2離散波形を上記TIDACシステムの第1デジタル・アナログ・コンバータ(DAC)で第3アナログ信号に変換すると共に上記TIDACシステムの第2DACで第4アナログ信号に変換する処理と、
上記第1アナログ信号と上記第2アナログ信号を第1合成アナログ信号に合成すると共に上記第3アナログ信号と上記第4アナログ信号を第2合成アナログ信号に合成する処理と、
アナログ・デジタル・コンバータ(ADC)によって上記第1合成アナログ信号を第1デジタル信号に変換すると共に上記第2合成アナログ信号を第2デジタル信号に変換する処理と、
離散フーリエ変換によって上記第1デジタル信号及び上記第2デジタル信号を夫々対応する第1周波数応答信号及び第2周波数応答信号に変換し、上記第1周波数応答信号及び上記第2周波数応答信号に基づいて実際の周波数応答行列を生成することによって、上記TIDACシステムの実際の周波数応答を求める処理と、
上記TIDACシステムの所望の周波数応答行列を受ける処理と、
上記TIDACシステムの上記実際の周波数応答行列及び上記TIDACシステムの上記所望の周波数応答行列に基づいて、上記第1DAC及び上記第2DACの少なくとも1つのための上記前置処理フィルタを生成する処理と
を行うよう構成される上記前置処理フィルタ・プロセッサと
を具える時間インタリーブ・デジタル・アナログ・コンバータ(DAC)システム。
【請求項7】
校正システムのプロセッサによって実行されたときに、上記校正システムに請求項1から5のいずれかの方法を実行させるコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、時間インタリーブ・デジタル・アナログ・コンバータ(DAC)に関係するシステム及び方法に関し、特に、時間インタリーブDAC(TIDAC)用の前置処理デジタル・シグナル・プロセッシング(DSP)フィルタの校正処理に関する。
【背景技術】
【0002】
DACは、デジタル信号をアナログ信号に変換するのに使用される。しかし、DACの帯域幅は、DACのアナログ帯域幅又はサンプル・レートのいずれかで制限されることがある。実効上、DACのより高いサンプル・レートを実現するには、単一のDACの代わりに、多数の時間インタリーブDACチャンネルを有するTIDACシステムを使っても良い。DACチャンネルの夫々は、入力信号を受けて、1つのDACサンプリング期間内で、時間的にオフセットされたアナログ信号を出力する。これらアナログ信号は、合算されて、DACシステム全体のサンプリング・レートを、事実上、増加させることができる。
【先行技術文献】
【特許文献】
【0003】
【文献】特許第4423454号公報
【文献】米国特許第7562246号明細書
【文献】米国特許第7941686号明細書
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、TIDACシステムでは、TIDACシステムの別々のチャンネル間で、周波数に依存した振幅と位相のミスマッチ(不整合)が存在することがあり、結果として、アナログ出力信号が正確ではないことがある。
【0005】
本発明の実施形態は、従来技術のこれらやその他の欠点を解決しようとするものである。
【課題を解決するための手段】
【0006】
本願で開示されるのは、フィルタ処理されたデジタル信号をアナログ信号に変換するよう構成される複数の時間インタリーブDACと、複数の前置処理フィルタとを有する時間インタリーブ・デジタル・アナログ・コンバータ(DAC)システムであり、前置処理フィルタの夫々は、複数の時間インタリーブDACの中の対応する1つと関連している。前置処理フィルタの夫々は、デジタル信号を受けて、フィルタ処理されたデジタル信号を出力するよう構成される。前置処理フィルタは、複数の時間インタリーブDAC間の不整合(ミスマッチ)を低減するよう校正される。時間インタリーブDACシステムには、複数の上記DACの夫々が出力するアナログ信号を合成して、合成アナログ信号を出力するよう構成される合成部(コンバイナ:combiner)もある。
【0007】
加えて、本願で開示されるのは、複数の時間インタリーブDAC間のあらゆる不整合又は歪みを補正するように複数の前置処理フィルタの夫々を校正する校正動作である。これら前置処理フィルタは、実際のDAC周波数応答に加えて、所望のDAC周波数応答に基づいて校正される。より詳細には以下で説明するように、これら周波数応答に基づき、複数の時間インタリーブDAC間の不整合を補正するように前置処理フィルタを決定できる。
【0008】
本発明の実施形態の態様、特徴及び効果は、添付の図面を参照し、以下の実施形態の説明を読むことで明らかとなろう。
【図面の簡単な説明】
【0009】
【
図1】
図1は、本発明の実施形態による時間インタリーブ・デジタル・アナログ・コンバータ・システムのブロック図を示す。
【
図2】
図2は、
図1の時間インタリーブ・デジタル・アナログ・コンバータ・システムをマルチレート・フィルタ・バンクで表したものを示す。
【
図3】
図3は、
図1の時間インタリーブ・デジタル・アナログ・コンバータ・システムを、一般化したマルチレート・フィルタ・バンクで表したものを示す。
【
図4】
図4は、AC行列を用いて線形周期的時間変動システムを表したものを示す。
【
図5】
図5は、本発明の実施形態による校正動作を説明するブロック図を示す。
【
図6】
図6は、本発明のいくつかの実施形態による例示的な校正システムを示す。
【
図7】
図7は、前置処理フィルタのない、
図1の時間インタリーブ・デジタル・アナログ・コンバータ・システムに関する測定された周波数からなるAC行列を示す。
【発明を実施するための形態】
【0010】
図1は、本発明の実施形態によるデジタル・シグナル・プロセッサ(DSP)補正を用いる時間インタリーブDAC(TIDAC)システム100のブロック図を示す。TIDACシステム100には、DSP102があっても良く、これは、補正フィルタ又は前置処理補正フィルタとも呼ばれる複数の前置処理(Pre-processing:プリ処理)フィルタ104を更に有していても良く、加えて、複数のダウン・サンプラ106、離散/連続時間領域コンバータ(Discrete to continuous time domain converter)108、複数の時間インタリーブDAC112を有するTIDAC110を備えていても良い。実施形態によっては、前置処理フィルタ104は、例えば、有限インパルス応答(finite impulse response:FIR)フィルタであっても良い。
図1に示したものでは、M個の並列なDAC110があり、インデックスm=0,1,…,M-1が付いている。このため、m番目のDAC110は、その入力データを、nMT+mTの時点で受ける。そのデジタル信号は、前置処理フィルタ104の夫々で予め補正(プリ補正)される。補正が必要となるのは、複数のDACチャンネルが、線形歪み(linear distortions)及びミスマッチ(不整合)をもたらすことがあるからである。
【0011】
図1に示すように、DSP102中の複数の前置処理フィルタの夫々がデジタル信号U(e
jω)を受ける。以下で更に詳細に説明するように、前置処理フィルタ104は、デジタル信号を前置処理(pre-process)及びフィルタ処理し、複数のTIDAC110間のあらゆる不整合(ミスマッチ)又は線形歪みを補正するように校正される。これら前置処理フィルタ104からの複数の出力信号は、各ダウン・サンプラ106において、係数Mでダウン・サンプルされるが、このとき、ダウン・サンプラ106の夫々は、互いに位相シフトされている。
【0012】
離散/連続時間領域コンバータ108は、ダウン・サンプラ106の夫々から、夫々に対応するダウン・サンプルされたデータを受けて、このダウン・サンプル・データを連続時間領域に変換する。DAC112は、信号を処理して、アナログ周波数応答を決定する。全てのDAC112からのアナログ周波数応答は、次いで、合成部(combiner:コンバイナ)114によって1つに合成されて、アナログ信号Y(jΩ)として出力される。合成部114は、
図1に示すように、加算器であっても良いし、信号を1つの信号のアナログ信号Y(jΩ)に合成するその他のコンポーネントであっても良い。
【0013】
複数の前置処理フィルタ104を有するDSP102を図示し、先に説明したが、本発明の実施形態は、DSP102に限定されず、当業者には明らかなように、更に詳細には後述の如く、複数のDAC112間の不整合を補正する任意の処理コンポーネント及び前置処理フィルタ104を、TIDACシステム100において利用しても良い。
【0014】
前置処理フィルタ104を求める説明を容易にするため、TIDACシステム100を、
図2に示すように、TIDACシステム100の離散時間モデルとしてモデル化できる。出力アナログ信号Y(jΩ)がTIDAC入力レートF
Dよりもl(エル)/2倍大きい帯域幅を占めるとすれば、DAC112夫々の出力端子におけるアナログ信号は、F
Dlのレート、つまり、等価的にF
DK/Mのレートの離散時間信号で表すことができる。これは、DAC112夫々のl(エル)個のナイキスト・ゾーンを考慮に入れている。結果として得られるマルチレート・フィルタ・バンクが
図2に示されており、これは、最大限に間引きされたフィルタ・バンクであり、このとき、アップ・サンプリング係数Kは、必ずしもダウン・サンプリング係数Mと同じではない。
【0015】
図3は、より一般化したマルチレート・フィルタ・バンクを示し、このとき、ダウン・サンプリング係数がMで、アップ・サンプリング係数がKである。しかし、
図2及び3の入力信号及び出力信号を表すのに、周波数領域の表記法(記数法:notation)U(e
jω)及びY(e
jω)が使用されており、入力信号と出力信号の間に1次元の伝達関数の関係はない。即ち、次のようなH(e
jω)はない。
【0016】
Y(ejω)=H(ejω)U(ejω) (1)
【0017】
これは、
図1のTIDACシステムは、線形周期的時間変動(linear periodic time varying:LPTV)システムであって、数式(1)で特性が表される線形時間不変(linear time invariant:LTI)システムとは異なるからである。LPTVシステムを分析するためには、エイリアス成分(alias component:AC)行列法を用いても良い。AC行列は、LTIシステムの周波数応答関数の一般化と考えることもできる。LTIシステムにおいて、周波数応答関数H(e
jω)は、周波数ωにおける単一の入力信号の指数関数に対するシステムの出力信号を表す一方で、M個の周期性(M-periodic)LPTVシステムに関するAC行列は、M個の指数関数からなる入力信号/出力信号の関係を表し、不変部分空間(invariant subspace)、例えば、固有空間(eigen-space)を構成する。
【0018】
具体的には、もしLPTVシステムの入力信号U(e
jω)が、M個の指数関数e
jω~,e
j(ω~+2π/M),…,e
j(ω~+(2π(M-1))/M)の加重和から構成されるならば、出力信号も、同じ複数の指数関数から構成され、このとき、振幅は、それらの入力信号の指数関数の線形結合から形成されるであろう。この関係は、
図4に示されており、例えば、次のように、M×MのAC行列H(e
jω)によって、ベクトル形式で表すことができる。
【0019】
y(ejωo)=H(ejωo)u(ejωo) (2)
【0020】
ここで、M×1の入力信号及び出力信号ベクトルu及びyは、周波数に関して、次のように規定される。
【0021】
ωp=ωo+p(2π/M), p=0,1,…,M-1 (3)
【0022】
ここで、
【0023】
0≦ωo<2π/M (4)
【0024】
このとき、
【0025】
u(ejωo)=[U(ejωo),U(ejω1),…,U(ejωM-1)]T (5)
【0026】
y(ejωo)=[Y(ejωo),Y(ejω1),…,Y(ejωM-1)]T (6)
【0027】
式(2)~(6)からわかるように、AC行列H(ejωo)の(k,p)番の成分は、周波数ωpの単位振幅の複素指数関数が、LPTVシステムの入力端子に印可された場合における、LPTVシステムの出力信号の周波数ωkにおける離散時間フーリエ変換(discrete time Fourier transform:DTFT)である。
【0028】
上述のAC行列では、正方のM×Mの行列について説明してきたが、AC行列は、
図2及び3に示されるTIDACモデルに適した、K×Mの矩形の行列へと一般化できる。この一般化では、入力信号ベクトルu(e
jωo)がMの次元を有する一方、出力信号ベクトルy(e
jω'o)はKの次元を有し、そして、出力信号の正規化した周波数ω'は、入力信号の正規化した周波数ωと、次に従った関係がある。
【0029】
ω'o=ωoM/K (7)
【0030】
そして、
【0031】
ω'k=ω'o +k(2π/K),k=0, 1, …, K-1 (8)
【0032】
これは、出力信号が、入力信号よりK/Mだけ高いレートでサンプルされるからである。ラジアン単位の正規化された周波数ωの、Hz単位の周波数fに対する関係は、次の通りである。
【0033】
f'k=(FDK/M)(ω'k/2π),k=0, 1, …, K-1 (9)
【0034】
fp=FDωp/2π,p=0, 1, …, M-1 (10)
【0035】
よって、周波数領域における入力信号/出力信号関係は、次で与えられる。
【0036】
y(ejω'o)=H(ejω'o,ejωo)u(ejωo) (11)
【0037】
ここで、u(ejωo)及びωpは、式(3)~(5)で規定され、そして
【0038】
y(ejω'o)=[Y(ejω'o),Y(ejω'1),…,Y(ejω'K-1)]T (12)
【0039】
即ち、
図3のマルチレート・フィルタ・バンクのAC行列は、次のように示すことができる。
【0040】
H(ejω'o,ejωo)=B(ejω'o)A(ejωo) (13)
【0041】
このとき、行列B(ejω'o)及びA(ejωo)の成分は、次で与えられる。
【0042】
Bk,m(ejω'o)=Bm(ejω'k),m=0,1,…,M-1;k=0,1,…,K-1 (14)
【0043】
Am,p(ejωo)=Am(ejωp),m=0,1,…,M-1;p=0,1,…,M-1 (15)
【0044】
システムの入力及び出力端子における、複素指数関数ではなく、実数値(Real)の正弦波の場合、LPTVシステムを上述の式(11)で表すのは依然として有効であるが、式(3)、(4)、(5)及び(12)は、それぞれ以下のように置き換えられる。
【0045】
【0046】
0≦ωo<π/M (17)
【0047】
【0048】
0≦ω'o<π/K (19)
【0049】
及び
【0050】
【0051】
【0052】
AC行列H(ejω'o,ejωo)の(k,p)番の成分は、単位振幅の正弦波がωpにおいてLPTVシステムの入力端子に印可された場合には周波数ω'kにおけるLPTVシステムの出力信号のDTFTであるし(Kが偶数の場合)、又は、DTFT測定値の複素共役である(Kが奇数の場合)。これの根拠を示すと、周波数ωの実数値(Real:リアル、実際)の正弦波は、周波数が正反対(ω及び-ω)の2つの複素指数関数の和であり、リアルな(実数値の)信号のスペクトラムは、複素共役対称(complex-conjugate symmetric)である。式(16)~(19)で与えられる周波数のグループは、そのグループの初期(代表的)周波数であるωoと関連する周波数のグループと呼ぶことにする。
【0053】
本発明の実施形態は、
図2及び3のLPTVシステムが、所望のLTIシステムに近似するように、前置処理フィルタ104を校正する。これは、TIDACシステム100の出力信号中のエイリアス歪み成分を補償するように前置処理フィルタ104を校正することによって実現できる。
図5は、前置処理フィルタ104がTIDACシステム100の出力信号中のエイリアス歪み成分を補償するために、どのように設計されているかを説明するブロック図を示す。ブロック500は、所望のDACシステムD(e
jω',e
jω)を表し、出力信号r(e
jω')は、結果として生じる近似(approximation:推定)エラーを表している。
【0054】
式(13)で示されたように、補正を伴う複数のTIDAC112から構成されるLPTVシステム(例えば、AC行列)は、2つのシステムに分解できる。即ち、ブロック502及びAC行列G(e
jω)で表されるLPTV前置処理システムと、ブロック504及びAC行列R(e
jω')で表される前置処理を有するTIDACシステム100とである。これは、
図5の下側の分岐に配置されている。前置処理フィルタ104の校正処理の目標(ゴール)は、結果として生じる近似エラーr(e
jω')を得ることで、これは、ブロック500からなる上側分岐と、ブロック502及び504からなる下側分岐との間の差分であって、可能な限りゼロに近くなるべきものである。
【0055】
図5に示す図では、所望の周波数応答行列D(e
jω',e
jω)が、例えば、ユーザによって指定されてもよく、そして、TIDAC周波数応答が前置処理フィルタ104なしに測定されてAC行列R(e
jω')が生成されても良く、結果としてブロック500及び504の両方が既知となる。詳細は後述するように、2つのAC行列D(e
jω',e
jω)及びR(e
jω')に基づいて、結果として生じる近似エラーr(e
jω')が、ある正規化処理の下で最小化されるように、前置処理AC行列G(e
jω)を決定でき、次いで、この決定した前置処理AC行列G(e
jω)に基づいて前置処理フィルタ104を生成できる。
【0056】
図6は、前置処理フィルタ104を校正したり、求めたりするのに利用される種々のコンポーネントを示す図である。
図6の例では、補正フィルタ・プロセッサ600が用意され、TIDACシステム100の出力信号(これは、アナログ・デジタル・コンバータ(ADC)604でデジタル信号に変換される)に加えて、所望の周波数応答602に基づいて、前置処理フィルタ104を求める。
【0057】
図5の上側分岐から始めると、所望のDAC周波数応答は、不整合がなく、所望のLTI周波数応答を有しているべきで、これは、D
o(e
jω'k)として指定される。実施形態によっては、所望のLTI周波数応答が、ある周波数でプリエンファシスを有していてもよく、また、別の実施形態では、複数のDAC112の中の1つ、例えば、周波数応答R
o(e
jω')で記述されるDAC112が、所望のシステムについてのプロトタイプとして利用されても良く、このとき、D
o(e
jω'k)=R
o(e
jω'k)である。
【0058】
これに代えて、実施形態によっては、TIDAC110夫々の周波数応答R
m(e
jω')を平均して所望の周波数応答602を求めても良い。この実施形態では、前置符号化器(precoder:プリコーダ)の周波数応答をG
m(e
jω)=1と設定し、
図2に従って調整されるA及びB行列とともに式(13)~(15)を用いることによって、TIDAC110の周波数応答R
m(e
jω')を算出できることが要点である。プロトタイプのDAC112の応答が選択され、D
o(e
jω'k)と指定されたとすると、所望のAC行列は、
図2において、全てのm(m=0,1,…,M-1)について、R
m(e
jω')=D
o(e
jω')及びG
m(e
jω)=1と設定することにより、補正フィルタ・プロセッサ600によって求められる。すると、こうしたシステムが、AC行列の成分を有するLTIシステムとなることが、次のように示される。
【0059】
【0060】
ここで、前置処理段において起こり得る遅延を割り当てるために、係数e-jωpd(又は、等価的にe-jω'kd)が導入されている。リアルな(実数値の)信号の場合では、式(22)で示される準対角行列(quasi-diagonal matrix)中の偶数行(1から数えた場合)を、それらの複素共役値で置き換えても良い。
【0061】
次に、TIDACのAC行列R(e
jω')を測定しても良い。
図2を基準として用いると、DSP102で実行されるデータの前置処理なしでTIDACシステム100のモデルを得るために、複数のフィルタG
m(e
jω)を複数のユニティ(unity:単位)フィルタに置き換えても良い。もし
図3を基準として用いると、複数の分析フィルタA
m(e
jω)は、「時間要素における進み」e
jωmに変換される。
【0062】
図3のブロック図のAC行列を測定するために、上記式(16)及び(17)で与えられるようなM個の周波数において、F
Dのサンプル・レートを有する複数の離散時間正弦波信号が順次印可される。離散フーリエ変換(DFT)が、上記式(18)及び(19)で与えられる複数の周波数の夫々において測定される。これは、上述のユニティ・フィルタを有するTIDACシステム100のアナログ出力信号を、F
DK/Mのサンプリング・レートでADC604によって処理することで行われる。
【0063】
測定された周波数応答の(p,k)番の成分は、p番目の周波数を有する正弦波がDAC112の夫々に加えられたときの、k番目の周波数において測定されたDFT値であろう。初期周波数の要素ωoを変化させることによって、測定される複数の周波数応答行列(夫々サイズはM×K)を、将来の処理のために求めることができる。測定される複数の周波数応答行列の中の1つをB(ejω'o,ejωo)によって指定することにより、対応するAC行列R(ejω'o)を式(13)から求めることができる。
【0064】
R(ejω'o)=B(ejω'o,ejωo)E(ejωo)-1 (23)
【0065】
ここで、行列Eの成分は、次で与えられる上述の「時間要素における進み」である。
【0066】
Em,p(ejωo)=ejωpm; m, p=0, 1, …, M-1 (24)
【0067】
即ち、補正フィルタ・プロセッサ600は、式(23)及び(24)並びに測定された複数の周波数行列B(ejω'o,ejωo)を用いて、AC行列R(ejω'o)を求める。
【0068】
しかし、測定される周波数行列B(ejω'o,ejωo)を求めるために、複数の周波数のフルセット(一式)を測定するのは、TIDACシステム100の測定としては、実現が難しいかもしれない。このような場合には、測定される周波数行列B(ejω'o,ejωo)が空の箇所を含有するようにし、空の箇所は、取得可能な測定値に基づいて補間しても良い。
【0069】
図7は、測定される周波数行列B(e
jω'o,e
jωo)の例を示し、このとき、システムには、4つのTIDAC112があり、フルのAC行列の絶対値を有している。
図7に示されるように、折り返しのある準対角線に沿って補間を実行するのが良い。
【0070】
即ち、4つの補間の中の1つは、AC行列の成分(1, 1)で始まり、成分(8, 8)へと右下へ進み、次いで、成分(9, 8)から折り返して成分(16, 1)へと左下に進む対角線に沿って行うのが良い。
図7に示す他の3つの対角線についても、同様の補間方法を実行しても良い。
【0071】
AC行列B(ejω'o,ejωo)の成分は複素数なので、周波数領域での補間は、絶対値についてと、位相値について実行する必要がある。位相の曖昧さに関係した不正確さを避けるために、実施形態によっては、測定された複素AC値を、DAC112と測定するADC604とによってもたらされる共通の遅延を考慮した指数因子(exponential factor)で割り算することにより、位相測定値から線形なトレンドを除去しても良い。この遅延量は、ADC604が、DACのデータに対して常に同じ遅延を有しながら波形を捕捉するというように、ADC112にトリガをかけて、DAC112によって生成された波形を捕捉することが可能であるという前提の下に、測定値から判断するか又は推定しても良い。例えば、TIDAC110が正弦波データの供給を受け、このとき、位相ゼロのデータが第1サブDAC112に供給され、DAC112の出力信号がADC604で捕捉される。次いで、この動作が新たな正弦波周波数で繰り返され、再度、位相ゼロのデータが第1サブDAC112に供給され、ADC604の出力信号が最初の場合と同じ遅延で捕捉される。
【0072】
代替の実施形態では、TIDAC110の入力データにマーカを配置し、遅延を追跡しても良い。しかし、マーカは、デジタル・アナログ変換と、その次のアナログ・デジタル変換によって処理された場合に、消散してしまうことがあり、マーカをつけるのは、上述の動作にほど信頼性の高いものではない。
【0073】
AC行列B(ejω'o,ejωo)の必要な値が補間されたら、補正フィルタ・プロセッサ600は、上記式(23)を用いて、AC行列R(ejω'o)を算出する。
【0074】
所望の周波数応答行列D(ejω',ejω)及びTIDACの周波数応答行列R(ejω'o)が特定されたら、TIADCのデジタル前置処理部分に対応するAC行列G^を以下の式で求めることができる。
【0075】
【0076】
ここで、ユークリッド・ノルム(又は、行列の場合には、フロベニウス・ノルムとも呼ばれる)が、近似エラーを最小化するのに利用される。式(25)から、以下の式(26)が生じる。
【0077】
図1のTIDACシステム100は、もしK=M、R
m(e
jω)=1であり、そして、行列Tが以下の式(27)で定義され、前置符号化器(precoder:プリコーダ)の周波数応答G
m(e
jωp)に対応する成分を有するなら、
図2の離散時間モデルと整合する。
【0078】
【0079】
Tm,p(ejωo)=Gm(ejωp)ejωpm (27)
【0080】
次いで、式(13)を用いて、これは、次のように書き直すことができる。
【0081】
【0082】
行列Eは、次のように、式(24)で規定される。
【0083】
【0084】
すると、Tm,p(ejωo)中の成分から、次のように、式(27)を用いて、前置処理フィルタ104の周波数応答Gm(ejω)が得られる。
【0085】
Gm(ejωp)=Tm,p(ejωo)e-jωpm;m,p=0,1,…,M-1 (30)
【0086】
上記の式は、補正フィルタ・プロセッサ600によって、異なる周波数グループについて繰り返すことができる。必要な全ての周波数グループについて求めることができたら、補正フィルタ・プロセッサ600は、これらの求めた応答を近似するDSPフィルタ104を求めることができる。
【0087】
最初に、異なる周波数グループを区別するために、表記ωp
(n),ω'k
(n)を導入する(このとき、nは、周波数グループ番号を示す)。下付きインデックスp,kは、上述のように、グループ内の周波数インデックスを示す。周波数ωp
(n),ω'k
(n)は、式(16)~(19)で規定されるように、グループの初期周波数ω0
(n),ω'0
(n)と関係する。
【0088】
周波数応答Gm(ejω)を考えると、補正フィルタ・プロセッサ600は、Gm(ejω),m=0,1,…,Mを近似する周波数応答を有するM個の前置処理フィルタ104を求める。もしqm,m=0,1,…,M-1の指定を用いて、複数のFIRフィルタを用いるなら、m番目のFIRフィルタについて係数qm(s),s=0,1,…,s-1を有するとして、m番目のFIRフィルタは、次の通りである。
【0089】
【0090】
m番目のFIRの係数は、式(32)に示される、加重最小2乗平均(weighted least mean square:WLMS)演算によって得ることができる。
【0091】
【0092】
補正フィルタ・プロセッサ600によって式(32)を解いてFIRの係数を求めるために、成分e-jωp(n)sを有する行列表記Fを導入し、このとき、sは、Fの列インデックスであり、n+pNは、Fの行インデックスであり、列ベクトルgmは、Fの行インデックスと同じ配置を用いる成分Gm(ejωp(n))を有し、対角行列Wは、周波数ωp
(n)に関する重み付け係数である対角の成分w(n+pN)を有する。すると、WLMSの解は、式(33)で与えられる。
【0093】
【0094】
式(33)を用いて、補正フィルタ・プロセッサ600は、TIDACシステム100の複数のDACチャンネルの夫々に関するFIRフィルタの係数を求めることができる。
【0095】
上述のこれら式は、これまでのところ、TIDACシステム100の出力信号を捕捉するのに利用されるADC604が、DACのサンプリング・レートの倍数に等しいサンプリング・レートを有するという前提の下で与えられてきている。しかし、実施形態によっては、この状態ではないこともある。こうした実施形態では、ADC604のサンプリング・レートFAとTIDACシステム100のサンプリング・レートFDとの関係は、式(34)で示されるように関係づけても良く、このとき、P1及びP2は、何らかの整数である。
【0096】
FA/FD=P1/P2 (34)
【0097】
もしADC604のナイキスト・レートFA/2が、DAC112の帯域幅よりも高い場合には、DAC112の出力レートの倍数におけるサンプルを、上述の周波数補間ではなく、タイミング(時間)補間を用いて補間しても良い。しかし、ADC604のサンプリング・レートを考慮してDACの校正周波数を選択している場合、実施形態によっては、補間を必要としないこともある。
【0098】
最初に、ADCで捕捉されたデータに関するDFT処理長(DFT processing length)NAが選択される。次いで、DACで捕捉されたデータに関する処理長が、次のように指定される。
【0099】
ND=NAP2/P1 (35)
【0100】
ヘルツ(Hz)を単位とする校正周波数は、式(36)に示すように選択でき、このとき、整数n、校正インデックスは、校正周波数fcal(n)が、上述の式(3)及び(10)を満たすように選択される。
【0101】
fcal(n)=nFD/ND=nFA/NA (36)
【0102】
これは、DACの校正DFTビンFD/NDをADC604のDFTビンFA/NAと等しいものにし、そして、補正フィルタ・プロセッサ600が、ADC604の出力するDFT値に基づいて、DACのAC行列R(ejω')の値を算出するのを可能にする。
【0103】
なお、本明細書では、ω~は、以下のような意味となることに留意されたい。
【0104】
【0105】
本発明の態様は、特別に作成されたハードウェア、ファームウェア、デジタル・シグナル・プロセッサ又はプログラムされた命令に従って動作するプロセッサを含む特別にプログラムされた汎用コンピュータ上で動作できる。本願におけるコントローラ又はプロセッサという用語は、マイクロプロセッサ、マイクロコンピュータ、ASIC及び専用ハードウェア・コントローラ等を意図する。本発明の態様は、1つ又は複数のコンピュータ(モニタリング・モジュールを含む)その他のデバイスによって実行される、1つ又は複数のプログラム・モジュールなどのコンピュータ利用可能なデータ及びコンピュータ実行可能な命令で実現できる。概して、プログラム・モジュールとしては、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含み、これらは、コンピュータその他のデバイス内のプロセッサによって実行されると、特定のタスクを実行するか、又は、特定の抽象データ形式を実現する。コンピュータ実行可能命令は、ハードディスク、光ディスク、リムーバブル記憶媒体、ソリッド・ステート・メモリ、RAMなどのコンピュータ可読記憶媒体に記憶しても良い。当業者には理解されるように、プログラム・モジュールの機能は、様々な実施例において必要に応じて組み合わせられるか又は分散されても良い。更に、こうした機能は、集積回路、フィールド・プログラマブル・ゲート・アレイ(FPGA)などのようなファームウェア又はハードウェア同等物において全体又は一部を具体化できる。特定のデータ構造を使用して、本発明の1つ以上の態様をより効果的に実施することができ、そのようなデータ構造は、本願に記載されたコンピュータ実行可能命令及びコンピュータ使用可能データの範囲内と考えられる。
【0106】
開示された態様は、場合によっては、ハードウェア、ファームウェア、ソフトウェア又はそれらの任意の組み合わせで実現されても良い。開示された態様は、1つ以上のプロセッサによって読み取られ、実行され得る1つ又は複数のコンピュータ可読媒体によって運搬されるか又は記憶される命令として実現されても良い。そのような命令は、コンピュータ・プログラム・プロダクトと呼ぶことができる。本願で説明するコンピュータ可読媒体は、コンピューティング装置によってアクセス可能な任意の媒体を意味する。限定するものではないが、一例としては、コンピュータ可読媒体は、コンピュータ記憶媒体及び通信媒体を含むことができる。
【0107】
コンピュータ記憶媒体は、コンピュータ読み取り可能な情報を記憶するために使用することができる任意の媒体を意味する。限定するものではないが、例としては、コンピュータ記憶媒体としては、ランダム・アクセス・メモリ(RAM)、読み出し専用メモリ(ROM)、電気消去可能プログラマブル読み出し専用メモリ(EEPROM)、フラッシュメモリやその他のメモリ技術、コンパクト・ディスク読み出し専用メモリ(CD-ROM)、DVD(Digital Video Disc)やその他の光ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置やその他の磁気記憶装置、及び任意の技術で実装された任意の他の揮発性又は不揮発性の取り外し可能又は取り外し不能の媒体を含んでいても良い。コンピュータ記憶媒体としては、信号そのもの及び信号伝送の一時的な形態は排除される。
【0108】
通信媒体は、コンピュータ可読情報の通信に利用できる任意の媒体を意味する。限定するものではないが、例としては、通信媒体には、電気、光、無線周波数(RF)、赤外線、音又はその他の形式の信号の通信に適した同軸ケーブル、光ファイバ・ケーブル、空気又は任意の他の媒体を含むことができる。
実施例
【0109】
以下では、本願で開示される技術の理解に有益な実施例が提示される。この技術の実施形態は、以下で記述する実施例の1つ以上及び任意の組み合わせを含んでいても良い。
【0110】
実施例1は、時間インタリーブ・デジタル・アナログ・コンバータ(TIDAC)システムのための前置処理フィルタを校正する方法であって、上記TIDACシステムの第1デジタル・アナログ・コンバータ(DAC)で離散波形を第1アナログ信号に変換する処理と、第2DACで上記離散波形を上記TIDACシステムの第2アナログ信号に変換する処理と、上記第1アナログ信号と上記第2アナログ信号を合成アナログ信号に合成する処理と、アナログ・デジタル・コンバータ(ADC)によって上記合成アナログ信号をデジタル信号に変換し、上記TIDACシステムの実際の周波数応答を求める処理と、上記TIDACシステムの所望の周波数応答を受ける処理と、上記TIDACシステムの上記実際の周波数応答及び上記TIDACシステムの上記所望の周波数応答に基づいて、上記第1DAC及び上記第2DACの少なくとも1つのための前置処理フィルタを生成する処理とを具えている。
【0111】
実施例2は、実施例1の方法であって、このとき、上記第1DAC及び上記第2DACの少なくとも1つのための上記前置処理フィルタを求める処理は、上記所望の周波数応答と、上記前置処理フィルタで前置処理された入力信号を受けた上記DACの周波数応答との差を低減する上記前置処理フィルタに関するフィルタ係数を選択する処理を含む。
【0112】
実施例3は、実施例1又は2の方法であって、このとき、上記前置処理フィルタは、有限インパルス応答(FIR)フィルタである。
【0113】
実施例4は、実施例3の方法であって、このとき、上記FIRフィルタを求める処理は、加重最小2乗平均演算(weighted least mean square operation)によるFIRフィルタ係数を求める処理を含む。
【0114】
実施例5は、実施例1~4のいずれかの方法であって、このとき、上記ADCのサンプリング・レートは、上記第1DAC及び上記第2DACのサンプリング・レートの整数倍ではない。
【0115】
実施例6は、実施例5の方法であって、上記ADCのサンプリング・レートに基づいて、上記第1DAC及び上記第2DACの少なくとも1つのための上記前置処理フィルタを求める処理を更に具えている。
【0116】
実施例7は、実施例5の方法であって、このとき、上記合成アナログ信号が妥当な(valid:有効な)周波数であるかを判断する処理を更に具え、上記合成アナログ信号が妥当な周波数でない場合、上記ADCの出力信号夫々のサンプルを、夫々対応する上記DACのサンプリング・レートに基づいて補間することによって、上記実際の周波数応答を求める。
【0117】
実施例8は、実施例1~7のいずれかの方法であって、このとき、上記実際の周波数応答は、第1実際周波数応答であって、上記方法は、上記実際の周波数応答に基づいて上記TIDACシステムの第2実際周波数応答を補間することによって上記第2実際周波数応答を生成する処理を更に具え、上記第1DAC及び上記第2DACの少なくとも1つのための上記前置処理フィルタを生成する処理は、上記TIDACシステムの上記第1実際周波数応答、上記TIDACシステムの上記第2実際周波数応答及び上記TIDACシステムの上記所望の周波数応答に基づいて上記前置処理フィルタを生成する処理を含む。
【0118】
実施例9は、時間インタリーブ・デジタル・アナログ・コンバータ(DAC)システムであって、フィルタ処理デジタル信号をアナログ信号に変換するよう構成される複数の時間インタリーブDACと、複数の上記時間インタリーブDACの対応する1つと夫々関連する複数の前置処理フィルタであって、夫々がデジタル信号を受けて上記フィルタ処理デジタル信号を出力するよう構成され、複数の上記時間インタリーブDAC間に測定される不整合(ミスマッチ)に基づいて決定される複数の上記前置処理フィルタと、複数の上記DACの夫々が出力する上記アナログ信号を合成して合成アナログ信号を出力するよう構成される合成部とを具えている。
【0119】
実施例10は、実施例9の時間インタリーブDACシステムであって、このとき、上記前置処理フィルタの夫々は、有限インパルス応答フィルタである。
【0120】
実施例11は、実施例9又は10の時間インタリーブDACシステムであって、このとき、上記前置処理フィルタは、夫々、複数の上記時間インタリーブDAC間の不整合を補正するように、上記デジタル信号を前置処理(pre-process:プリ処理)する。
【0121】
実施例12は、実施例1~11のいずれかの時間インタリーブDACシステムであって、このとき、上記前置処理フィルタの夫々は、夫々に対応する時間インタリーブDACの実際の周波数応答と、夫々に対応する上記時間インタリーブDACの所望の周波数応答とに基づいて決定される。
【0122】
実施例13は、実施例12の時間インタリーブDACシステムであって、このとき、上記前置処理フィルタの夫々は、夫々に対応する上記時間インタリーブDACの所望の周波数応答と、夫々に対応する上記前置処理フィルタの上記周波数応答及び夫々に対応する上記時間インタリーブDACの実際の周波数応答の積との間の差を最小化することによって決定される。
【0123】
実施例14は、実施例9~13のいずれかの時間インタリーブDACシステムであって、夫々対応する上記フィルタ処理デジタル信号を受けて、該フィルタ処理デジタル信号をダウン・サンプルするよう構成されるダウン・サンプラを更に具えている。
【0124】
実施例15は、校正システムのプロセッサで実行された場合に、上記校正システムに、時間インタリーブ・デジタル・アナログ・コンバータ(TIDAC)システムの第1デジタル・アナログ・コンバータ(DAC)で離散波形(discrete waveform)を第1アナログ信号に変換させ、第2DACで上記離散波形を上記TIDACシステムの第2アナログ信号に変換させ、上記第1アナログ信号と上記第2アナログ信号を合成アナログ信号に合成させ、アナログ・デジタル・コンバータ(ADC)によって上記合成アナログ信号をデジタル信号に変換させて上記TIDACシステムの実際の周波数応答を決定させ、上記TIDACシステムの所望の周波数応答を受けさせ、上記TIDACシステムの上記実際の周波数応答及び上記TIDACシステムの上記所望の周波数応答に基づいて、上記第1DAC及び上記第2DACの少なくとも1つのための前置処理フィルタを生成させる命令を有する1つ以上のコンピュータ可読媒体である。
【0125】
実施例16は、実施例15の1つ以上のコンピュータ可読媒体であって、このとき、上記命令が、上記校正システムに、更に、上記所望の周波数応答と、上記前置処理フィルタで前置処理された入力信号を受けた上記DACの周波数応答との差を低減する上記前置処理フィルタに関するフィルタ係数を選択させることによって、上記第1DAC及び上記第2DACの少なくとも1つのための上記前置処理フィルタを決定させる。
【0126】
実施例17は、実施例15又は16の1つ以上のコンピュータ可読媒体であって、このとき、上記前置処理フィルタは、有限インパルス応答(FIR)フィルタである。
【0127】
実施例18は、実施例17の1つ以上のコンピュータ可読媒体であって、このとき、上記命令は、上記校正システムに、更に、加重最小2乗平均演算(weighted least mean square operation)によってFIRフィルタ係数を決定させることにより、上記FIRフィルタを決定させる。
【0128】
実施例19は、実施例1~18のいずれかの1つ以上のコンピュータ可読媒体であって、このとき、上記ADCのサンプリング・レートは、上記第1DAC及び上記第2DACのサンプリング・レートの整数倍ではない。
【0129】
実施例20は、実施例19の1つ以上のコンピュータ可読媒体であって、上記ADCのサンプリング・レートに基づいて、上記第1DAC及び上記第2DACの少なくとも1つのための上記前置処理フィルタを求める処理を更に具えている。
【0130】
開示された主題の上述のバージョンは、記述したか又は当業者には明らかであろう多くの効果を有する。それでも、開示された装置、システム又は方法のすべてのバージョンにおいて、これらの効果又は特徴のすべてが要求されるわけではない。
【0131】
加えて、本願の記述は、特定の特徴に言及している。本明細書における開示には、これらの特定の特徴の全ての可能な組み合わせが含まれると理解すべきである。ある特定の特徴が特定の態様又は実施例の状況において開示される場合、その特徴は、可能である限り、他の態様及び実施例の状況においても利用できる。
【0132】
また、本願において、2つ以上の定義されたステップ又は工程を有する方法に言及する場合、これら定義されたステップ又は工程は、状況的にそれらの可能性を排除しない限り、任意の順序で又は同時に実行しても良い。
【0133】
説明の都合上、本発明の具体的な実施例を図示し、説明してきたが、本発明の要旨と範囲から離れることなく、種々の変更が可能なことが理解できよう。従って、本発明は、添付の特許請求の範囲を除いて限定されるべきではない。
【符号の説明】
【0134】
100 時間インタリーブDAC(TIDAC)システム
102 デジタル・シグナル・プロセッサ
104 前置処理フィルタ
106 ダウン・サンプラ
108 離散/連続時間領域コンバータ
110 時間インタリーブDAC(TIDAC)
112 DAC
114 合成部(Combiner)
500 所望のDAC周波数応答行列
502 前置処理AC行列
504 TIDAC周波数応答行列
600 補正フィルタ・プロセッサ
602 所望の周波数応答
604 アナログ・デジタル・コンバータ(ADC)