Digital-signal-processing-dsp-discrete-fourier-transform-sectional-convolution
提供:Dev Guides
DSP-DFTセクショナルコンボリューション
長い持続時間の入力シーケンスx(n)が、2つのシーケンスを畳み込むことにより、有限持続時間のインパルス応答を持つシステムで処理されると仮定します。 DFTを介して実行される線形フィルタリングは固定サイズのデータブロックでの操作を伴うため、入力シーケンスは処理前に異なる固定サイズのデータブロックに分割されます。
その後、連続したブロックが1つずつ処理され、結果が組み合わされて最終結果が生成されます。
畳み込みは、長い入力シーケンスを異なる固定サイズのセクションに分割することで実行されるため、セクション化畳み込みと呼ばれます。 FIRフィルター処理の前に、長い入力シーケンスが固定サイズのブロックにセグメント化されます。
2つの方法は、離散畳み込みを評価するために使用されます-
- 重複保存方法
- 重複追加方法
重複保存方法
オーバーラップ保存は、非常に長い信号x(n)と有限インパルス応答(FIR)フィルターh(n)間の離散畳み込みを評価する効率的な方法の伝統的な名前です。 以下は、オーバーラップ保存方法の手順です-
入力データブロックの長さ= N = L + M-1とします。 したがって、DFTおよびIDFTの長さ=N。 各データブロックは、前のブロックのM-1個のデータポイントと、それに続くL個の新しいデータポイントを持ち、長さN = L + M-1のデータシーケンスを形成します。
- まず、各データブロックのNポイントDFTが計算されます。
- (L-1)ゼロを追加することにより、FIRフィルターのインパルス応答の長さが増加し、NポイントDFTが計算されて保存されます。
- 2つのN点DFT H(k)とX〜m〜(k)の乗算:Y '〜m〜(k)= H(k).X〜m〜(k)、ここでK = 0,1,2 、…N-1
- 次に、IDFT [Y ′〜m〜((k)] = y′((n)= [y ′〜m〜(0)、y′〜m〜(1)、y ′〜m〜(2)、 ……. y '〜m〜(M-1)、y'〜m〜(M)、……. y '〜m〜(N-1)] +(ここで、N-1 = L + M-2)
- 最初のM-1ポイントはエイリアシングにより破損しているため、データレコードの長さがNであるため破棄されます。
- 最後のL点は畳み込みの結果とまったく同じなので、 + y ′〜m〜(n)= y〜m〜(n)ここで、n = M、M + 1、….N-1
- エイリアスを回避するために、各データレコードの最後のM-1要素が保存され、これらのポイントは後続のレコードに繰り越され、1 ^ st ^ M-1要素になります。
- エイリアシングを無効にするための最初のM-1ポイントが回避されるIDFTの結果と残りのLポイントは、線形畳み込みの結果として望ましい結果を構成します。
重複追加メソッド
以下は、オーバーラップ法を使用して離散畳み込みを見つける手順です-
入力データブロックサイズをLとします。 したがって、DFTとIDFTのサイズ:N = L + M-1
- 各データブロックには、最後にM-1個のゼロが追加されます。
- N点DFTを計算します。
- 2つのNポイントDFTが乗算されます:Y〜m〜(k)= H(k).X〜m〜(k)、ここでk = 0、、1,2、…。、N-1
- IDFT [Y〜m〜(k)]は、長さNのブロックを生成します。DFTのサイズはN = L + M-1であり、M-1ゼロを追加することでシーケンスの長さをNポイントに増やしているため、エイリアシングの影響を受けません各ブロックに。
- 各ブロックの最後のM-1ポイントをオーバーラップし、後続のブロックの最初のM-1ポイントに追加する必要があります。 (理由:各データブロックはM-1ゼロで終了します)+したがって、この方法はオーバーラップ加算法として知られています。 したがって、- y(n)= \ {y〜1〜(0)、y〜1〜(1)、y〜1〜(2)、… ..、y〜1〜(L-1)、y〜1〜(L)+ y〜2〜(0)、y〜1〜(L + 1)+ y〜2〜(1)、… … ..、y〜1〜(N-1)+ y〜2〜(M-1)、y〜2〜(M)、… … … … … }