入力サンプルが間隔 T で均一に分布する、図 3 に示す信号波形を考えます。1 つの望ましい出力サンプルが xn-3 と xn-2 の間にあり、 タイミング オフセット u は 0 と 1 の間の任意の実数です。すべての有限インパルス応答 (FIR) フィルターの出力は、入力サンプルの線形結合として次のように記述できます。
図 1. FIR の出力は入力サンプルの線形結合
ここで、L はタップの数、{ck} は係数の集合です。ARF の場合、出力サンプルの動的タイミング オフセットを考慮に入れると、ck はタイミング オフセット u の関数になります。
ここで、f(·) は、ローパス フィルターの離散係数を実数ドメイン内の連続関数に一般化します。連続関数 f(·) をインプリメントする 1 つの方法は、配列 {Fk } をメモリに事前に格納することです。ここで、
ここで、f(·) は、ローパス フィルターの離散係数を実数ドメイン内の連続関数に一般化します。連続関数 f(·) をインプリメントする 1 つの方法は、配列 {Fk } をメモリに事前に格納することです。ここで、
次に、2 つの最も近い事前格納値の線形補間により、ck(u) を近似的に示します。
図 2. 2 つの最も近い事前格納値の線形補間
ここで、[x] は、x より小さいか等しい最大の整数を与える床関数であり、次の関係が成り立ちます。
{Fk } と {Gk } は、s でアドレス指定される 2 つのルックアップ テーブルによってインプリメントできます。次の図の例では、 L = 6 およびP = 4です。
図 3. 任意リサンプリング フィルター (L = 6、P = 4)
最大補間比 K の ARF の場合、1 つの入力から最大 K 個の新しい出力サンプルを計算できます。次の図は、K = 2 で、新しい入力サンプルごとに 1 つまたは 2 つの出力が計算される場合を示しています。
図 4. 最大 K = 2 の補間比での出力数
ARF の複雑さは、図 1 と 図 2 の計算に大きな影響を受けます。前者では各出力サンプルにつき L 個の実数×実数乗算が 2 回必要であり、後者では L 個の実数×実数乗算が追加で 1 回必要です。出力サンプル レートは入力サンプル レートの K 倍であるため、実数×実数乗算の総数は 3·L·K·Input_Sample_Rateです。
これにより、ARF に必要な最小限の AI エンジン の数の見積もりが得られます。