新規記事投稿 フォロー記事投稿 記事のキャンセル
From: Akitaka HOSOMI <hosomi@ga2.so-net.ne.jp>
Subject: Re: デジタルフィルタだっちゅうの〜
Date: 1998/07/27 02:01:24
Reference: junge/00111

7月15日に、わたしは書きました。

>わたしゃ、何の因果か、デジタルフィルタの関数なんぞを書かにゃならん
>のだな、これが、また。


このフィルタはクラスとして書いたので、ワリときれいにまとまってしまった。

 FA 関連でも、クラスっちゅうのは、使い道があったんだなぁ ...... 今回、ちょっと
だけ、これの実力を見直した、わたし。



>これらは、
>
>      IIR( Infinite Impulse Response )フィルタ
>      FIR(  Finite  Impulse Response )フィルタ
>
>と呼ばれておるぞよ。


 Borland Delphi 3.1J で記述した 63 次の FIR フィルタのパフォーマンスは、

  実測で、


     実行時間   4.7 マイクロ秒 / 1 サンプリングデータ処理 ( MMX Pentium 200MHz )
     実行時間   2.2 マイクロ秒 / 1 サンプリングデータ処理 ( Pentium II  333MHz )


といったところ。

# 浮動小数点演算の畳み込みなので、結構、CPU クロックをくらってしまったけれど。


以上のパフォーマンスから、音声周波数などを対象とする 22 KHz 程度のサンプリング
周期であれば、このフィルタクラスを使ったパソコンの計算でも、充分、実時間で動作
するイコライザを作れると考えています。


 FIR フィルタは、解析上は、"くし型フィルタを内包したフィルタ"と考えられるので、
急峻なバンドパス特性なども、比較的、簡単に得られます。しかも、位相遅れは、入力
信号の周波数によらず、一定なので、アクティブフィルタに見られるような信号波形の
位相歪みなどもありません。


このようなフィルタが、パソコンのプログラムで簡単に実現できてしまうとは、面白い
時代になったモンだぁ〜。わりと、ウキウキ気分かもね。