デシメーション|ローパス後の間引きで折返し防止

デシメーション

デシメーションとは、離散信号の標本化周波数を整数比で低減する処理であり、単なる間引き(ダウンサンプリング)に先立ってアンチエイリアスのための低域通過フィルタ(LPF)を設計・適用する一連の工程を含む概念である。サンプリング周波数を元のf_sからf_s/Mへ落とすとき、帯域外成分が折り返し雑音としてベースバンドに混入しないよう、通過帯域と阻止帯域を所望のスペックで分離する必要がある。特にΔΣ(シグマデルタ)型ADCやオーバーサンプリングDSPでは、デシメーションは信号品質と計算量の両面で中心的な役割を担う。

基本概念と数式

離散時間信号x[n]を間引き率Mでダウンサンプリングするとy[n]=x[nM]となるが、そのままではπ/Mを超える離散時間角周波数のスペクトルがエイリアシングを起こす。したがって理想的には、デシメーション前に理想LPFの周波数応答H(e^{j\omega})を、通過帯域|\omega|<\pi/M、阻止帯域|\omega|>\pi/Mで十分に減衰させる形に近似する。現実には有限長FIRIIRで近似し、通過帯域リップルδ_p、阻止帯域減衰量A_s、遷移帯幅Δfを設計指標とする。これにより、デシメーション後の新しいサンプリング系でも情報落ちや折返しのない再構成が可能になる。

実装手順と設計指標

  • アンチエイリアスLPFの仕様決定:信号帯域f_b、ガード帯域、期待SNRからA_sΔfを決める。一般にフィルタ次数は1/Δfに反比例するため、デシメーションを一段で大きく取るより段階的に分割する方が計算量低減に有利である。
  • 数値実装:固定小数点の量子化誤差、丸め・飽和、係数スケーリング、内部ワード長成長を管理する。
  • 遅延管理:位相特性(特にFIRの線形位相)と群遅延、リアルタイム処理のバッファ設計を考慮する。

半帯域(half-band)FIRは係数の半分近くがゼロとなり、M=2の段階で有効である。多段化により各段の遷移帯を緩めることで総演算量を抑えられ、デシメーション全体の効率が向上する。ポリフェーズ分解を用いれば、保持する位相枝のみを計算でき、無駄な乗算を避けられる。

ポリフェーズと多段構成

有限長FIRH(z)=\sum_{k=0}^{L-1}h_k z^{-k}とすると、M分解のポリフェーズ表現H(z)=\sum_{m=0}^{M-1}z^{-m}E_m(z^M)により、デシメーション時には必要な位相枝E_0のみ計算すればよい。Mが大きい場合は多段化(例:64=2×2×2×2×2×2)し、初段は高レートで重くなりがちなため乗算器不要のCICを用い、後段の低レートで補償FIRや半帯域FIRで平坦化・急峻化するのが定石である。この構成はパイプライン化やハードウェア資源節約にも適する。

CICフィルタの活用

CIC(Cascaded Integrator-Comb)は積分器と差分器の直列で構成され、係数乗算を要さない。大きな整数比のデシメーションに有効で、ΔΣADCの初段で広く使われる。ただし通過帯域にドロップ(振幅の周波数依存)が生じるため、後段で補償FIRを挿入する。語長はB_out = B_in + N·log2(R)(段数N、率R)程度に増大するため、オーバーフロー回避のスケーリング計画が不可欠である。

シグマデルタADCにおける役割

ΔΣADCは高レート・1bitに近いビットストリームを出力し、量子化雑音を高周波へシェーピングする。デシメーション段はCIC→半帯域FIR→一般FIRなどで構成し、帯域外雑音を除去しながら所望のOSRに応じて目的サンプリング周波数へ落とす。設計では、所望SNR・歪特性(THD+N)を満たすための阻止帯域減衰と、位相特性および遅延のバランスを取る。

周波数領域での挙動

デシメーションにより周波数軸は圧縮され、ベースバンド外の成分は等間隔のイメージとして折り返す。アンチエイリアスLPFのA_sが不足すると折返し雑音が有意となるため、通信や音響では60–100 dB級の阻止帯域減衰がしばしば要求される。遷移帯はガード帯域の確保度合いに依存し、システムの帯域計画(チャンネル間隔、IF設計、ローパス余裕)と同時最適化する。

固定小数点実装の注意点

係数量子化や丸めモード(round-to-nearest、floor)によりパスバンドリップルや阻止帯域漏れが悪化し得る。デシメーションの各段で利得が変化するため、段間スケーリングとゲイン正規化を明確に定義し、通しSNRとダイナミックレンジを保証する。リアルタイム実装ではメモリアクセスパターン、キャッシュ効率、パイプライン深さ、割り込み遅延などの非理想性にも配慮する。

用語の整理

“ダウンサンプリング”はサンプルを間引く操作そのものであり、デシメーションは「間引き+事前LPF」を含む設計プロセスを指す用法が一般的である。前者のみではエイリアシングを防げず、後者により信号劣化を抑制できる。

代表的な設計例

  1. 音声処理:f_s=96 kHzM=248 kHzへ。半帯域FIR(実効係数半減)を用いて演算量を節約し、必要に応じて微小補償IIRを併用する。
  2. 無線IF:チャネル帯域を厳密に守るため、M=5デシメーションし、A_s=80 dB級のLPFを設計。多段化で係数数とMIPSを抑える。
  3. 計測・制御:ΔΣ出力をR=64で落とす際、CIC3段+補償FIRで平坦化し、固定小数点の語長成長を段ごとにクリップ回避しつつ管理する。

以上のように、デシメーションは信号品質を守りつつサンプリングレートを適正化するための体系的な技術であり、フィルタ設計、ポリフェーズ実装、多段戦略、数値誤差制御を総合的に最適化することで、高効率かつ高忠実度のマルチレート信号処理が実現できる。