検索
連載

サンプリング周波数変換でできる 効率的なFFT分析イチから学ぶDSP基礎の基礎(6)(1/4 ページ)

今回は、DSP入門とは少し離れて、サンプリング周波数変換について解説します。サンプリング周波数変換技術を用いてFFT分析を行うためのヒントについても触れています。

PC用表示 関連情報
Share
Tweet
LINE
Hatena
photo

@IT MONOistで掲載された記事を転載しています



 前回、DSPとFPGAの比較の中で、サンプリング周波数などの条件に応じてうまくDSPとFPGAを使い分ければいいことと、そのためのサンプリング周波数変換処理はデジタル処理(離散時間信号処理)で容易に実現可能であることを説明しました。

 DSP入門の話からは少し離れますが、今回はちょうどいい機会なので特別にトピックとしてサンプリング周波数変換について簡単に紹介します。誤った方法でサンプリング周波数変換を行っている事例がしばしば見受けられますので、そのような間違いを犯さないためにも、皆さんぜひご一読ください。

 数式を使った難しい話ではありませんが、サンプリング周波数変換技術を用いて効率的な信号処理(FFT分析)を行うためのヒントなどにも触れています。

周波数ダウン

(その1)データはそのままでサンプリング周期を2倍、サンプリング周波数を2分の1にする処理(テープレコーダーの遅回し)

 離散時間システムでどのようにサンプリング周波数変換を実現するかを考えてみましょう。まず最初に、サンプリング周波数を2分の1にするにはどうしたらいいか調べてみます。サンプリング周波数を最も簡単に2分の1にする方法は、データはそのままでサンプリング周期を2倍に引き延ばすことです。これはテープレコーダで録音した音を、テープの回転速度を2分の1に落として再生する処理に相当します。この方法ではサンプリング周波数が2分の1になるだけではなく、元の信号の周波数特性まで変わってしまいます。

photo
図1 離散時間システムでのサンプリング周波数変換
photo
図2 変換前後の信号の周波数特性周波数ダウン 元の信号のスペクトルが圧縮されて声の音色が変わる

(その2)データを1個置きに間引いてのサンプリング周波数変換

 テープレコーダの遅回し方式ではうまくいかないことが分かったので、別の処理の仕方を考えてみましょう。データに対する操作を行わずにサンプリング周期を2倍にするのではなく、元のデータを1個置きに間引いて2倍の周期で再生したらどうなるでしょうか?

photo
図3 変換前後の信号の周波数特性 変換後の信号にはエリアジングひずみが発生する(5512〜11025Hzの成分が0〜5512Hzに重畳する)

 この場合、サンプリング周期は2倍になりますが、単位時間内のサンプル数が2分の1になるので信号の継続時間が変わることはありません。

 アナログ信号をサンプリング周波数22050HzでA/D変換して離散時間処理をする場合、サンプリング定理に従えば取り扱える信号の周波数帯域は0〜11025Hzまでです。それをさらにサンプリング周波数11025Hzに変換すると、今度は取り扱える帯域幅は半分の5512Hzになりますから、図4に示したような方法で処理すると元の信号の5512〜11025Hzの周波数成分がエリアジングひずみとして0〜5512Hzの帯域に混入してしまうことになります。

photo
図4 A/D変換した前後のサンプリング周波数

(その3)エリアジング防止のためのLPFとデータの間引きによるサンプリング周波数変換

 エリアジングひずみを発生させずにサンプリング周波数を2分の1に変換するには、間引き処理とフィルタを併用します。A/D変換するときにアンチ・エリアジング・フィルタ(LPF)を使うのと同じです。エリアジングひずみの発生を防止するために、データの間引きをする前にLPF(ローパスフィルター)で高周波成分を除去します。

photophoto 図5 エリアジング防止のためのLPFとデータの間引きによるサンプリング周波数変換システム(左)、図6 信号のスペクトルの変化(右)

Copyright © ITmedia, Inc. All Rights Reserved.

       | 次のページへ
ページトップに戻る