デジタルフィルタ|FIR/IIRで周波数特性設計

デジタルフィルタ

デジタルフィルタは、離散時間信号に対して所望の周波数成形や雑音低減、帯域抽出、波形整形などを行うアルゴリズムである。A/D変換後のデータに演算を施すため温度・経年・部品ばらつきの影響が小さく、再現性と可搬性に優れる。線形時不変(LTI)系として設計されることが多く、差分方程式やZ変換の伝達関数で記述できる。実装はCPUやDSP、FPGA上の固定小数点/浮動小数点演算で行い、リアルタイム処理やオフライン処理に適用する。

基本概念と表現

デジタルフィルタは入力列x[n]と出力列y[n]の関係を差分方程式で表す。有限インパルス応答(FIR)はy[n]=∑k=0..M bkx[n−k]であり、無限インパルス応答(IIR)はy[n]=∑ bkx[n−k]−∑ amy[n−m]の帰還項を含む。Z変換によりH(z)=Y(z)/X(z)と書け、安定性は極の領域、位相・群遅延は零と極の配置に依存する。仕様は通過域リップル、阻止域減衰、遷移帯域、サンプリング周波数fsなどで与える。

FIRとIIRの特徴

  • FIR:帰還を持たずBIBO安定が保証される。係数対称化により厳密な線形位相が得られ、音声や計測で位相歪を嫌う用途に適する。遷移帯域を狭めるとタップ数が増え計算量と遅延が増大する。
  • IIR:帰還により少次数で急峻な特性を実現できる。Butterworth/Chebyshev/Ellipticなどのアナログ原型を双一次変換等で離散化する。一方で量子化感度や数値不安定性に注意が必要で、2次セクション(biquad)分割が推奨される。

設計法の代表例

FIRは理想特性のインパルス応答を窓関数で切り出す窓法(Hamming/Blackman/Kaiser)が基本である。等リップル最適化(Parks–McClellanのRemez交換)や最小二乗法も用いられる。IIRはアナログ原型の周波数写像(双一次変換、インパルス不変法)で設計し、サンプル前補正(pre-warp)で周波数歪を抑える。多帯域や非線形位相が許容される場合は最小位相化や複素フィルタも選択肢となる。

周波数特性と仕様設定

ローパス/ハイパス/バンドパス/バンドストップに対し、通過域端周波数、阻止域端周波数、通過域リップルδp、阻止域減衰Asを定める。FIR線形位相はタイプI〜IVに分類され、実現可能な対称条件が異なる。正規化周波数(Ω=2πf/fs)で設計し、実機ではアンチエイリアスや反射スペクトルを踏まえてマージンを確保する。

実装構造と計算量

直接形(Direct Form)、トランスポーズ形、polyphase分解、分割畳み込み(overlap–add/overlap–save)などを使い分ける。長大なFIRはFFT畳み込みが高速で、短いFIRは直接形が有利である。IIRはSOSの直列接続が数値的に安定で、係数スケーリングとガードビットでオーバーフローを防ぐ。固定小数点では量子化誤差と飽和、丸めモードがSN比と歪率に影響する。

代表的な応用

  • 計測・制御:センサ雑音の低減、微分・積分の安定化、整定時間短縮のための帯域整形。
  • 音響・通信:イコライザ、クロスオーバ、チャネルフィルタ、エコー抑圧、サイドローブ抑制。
  • 電力・医用:50/60 Hz除去のノッチ、ECG/EEGの平滑化、電力高調波の帯域抽出。
  • 画像・振動:エッジ強調・平滑化、モード抽出、加速度信号の帯域限定。

性能評価と検証

インパルス応答・ステップ応答で時間領域の過渡、振幅・位相応答と群遅延で周波数領域の歪みを評価する。FFTでパワースペクトル密度を比較し、SNR改善量や阻止域漏れ、通過域波形忠実度を確認する。係数量子化や内部ワード長のばらつきはモンテカルロで感度解析すると堅牢性が把握できる。

設計時の実務上の勘所

仕様は用途の信号帯域とダイナミックレンジから逆算し、遷移帯域とリップル/減衰のトレードオフを先に固定する。FIRはタップ数からレイテンシを概算し、必要ならmulti-rate(decimation/interpolation)で軽量化する。IIRは極配置が実データのダイナミクスと衝突しないよう安定余裕を確保し、SOS単位で正規化とスケーリングを施す。固定小数点では係数量子化の事前評価、丸め誤差の白色化にditherを併用する。

関連フィルタと拡張

デジタルフィルタの応用として適応型(LMS、RLS)、時間変動フィルタ、複素IQフィルタ、最小位相・零位相フィルタがある。等化器や予測器、ウェーブレットベースの多解像度解析も広義のフィルタ設計に属する。広帯域での計算量削減にはpolyphase/FFTを組み合わせたマルチレート処理が有効である。

数学的背景(補足)

サンプリング定理、畳み込み定理、Z変換と極零配置、DFT/FFTの基礎が理解を支える。連続系から離散系への離散化では、双一次変換の周波数写像や零点の安定領域の変換に留意する。

よくある誤り(補足)

遷移帯域を過小に見積もって次数が肥大化する、IIRで直列直接形のまま係数を量子化して不安定化する、FIRの線形位相条件を満たさず群遅延が乱れる、実機fsと設計fsが一致せず仕様を逸脱する、ブロック処理でバッファ境界の整合を取らずリンギングを生む、などは典型である。

コメント(β版)