線形フィルタは、線形性の制約の下で、時間的に変化する入力信号を処理して出力信号を生成します。ほとんどの場合、これらの線形フィルタは時間不変(またはシフト不変)でもあり、その場合は、LTI(「線形時不変」)システム理論を使用して正確に解析し、周波数領域での伝達関数と時間領域でのインパルス応答を明らかにすることができます。時間領域でのこのような線形信号処理フィルタのリアルタイム実装は必然的に因果的であり、伝達関数に対する追加の制約となります。線形コンポーネント(抵抗器、コンデンサ、インダクタ、線形増幅器)のみで構成されるアナログ電子回路は、必然的にこのカテゴリに分類され、線形要素のみを含む同等の機械システムやデジタル信号処理システムも同様です。線形時不変フィルタは、異なる周波数の正弦波に対する応答(周波数応答)によって完全に特徴付けることができるため、周波数フィルタと呼ばれることもあります。
線形時不変フィルタの非リアルタイム実装は、因果関係に基づく必要はありません。画像処理などでは、1次元以上のフィルタも使用されています。線形フィルタリングの一般的な概念は、統計学、データ分析、機械工学など、他の分野や技術にも応用されています。
線形時不変(LTI)フィルタは、そのインパルス応答hによって一意に指定でき、任意のフィルタの出力は、入力とインパルス応答の畳み込みとして数学的に表現されます。フィルタの伝達関数によって与えられる周波数応答は、は、フィルタの別の特性表現です。典型的なフィルタ設計の目標は、特定の周波数応答、つまり伝達関数の振幅を実現することです。伝達関数の位相の重要性は、用途によって異なる。なぜなら、周波数領域で所望の(振幅)応答を実現する過程で、波形の形状が多かれ少なかれ歪む可能性があるからである。周波数応答は、例えば、入力信号から不要な周波数成分を除去したり、増幅器を特定の周波数帯域内の信号に限定したりするために調整することができる。
線形時不変因果フィルタのインパルス応答 hは、フィルタが時刻 0 で単一のインパルスからなる入力を受け取った場合に生成する出力を指定します。連続時間フィルタにおける「インパルス」とはディラックのデルタ関数を意味し、離散時間フィルタではクロネッカーのデルタ関数が適用されます。インパルス応答は、あらゆる入力信号を重み付きデルタ関数の(場合によっては無限の)組み合わせとして表現できるため、そのようなフィルタの応答を完全に特徴付けます。これらのデルタ関数のそれぞれが到着する時刻に応じて時間的にシフトされたインパルス応答に、各デルタ関数の振幅を乗じ、これらの応答を(すべての線形システムに適用可能な重ね合わせの原理に従って)合計すると、出力波形が得られます。
数学的には、これは時間変化する入力信号x(t)とフィルタのインパルス応答hの畳み込みとして表され、次のように定義されます。
最初の形式は連続時間形式で、例えば機械システムやアナログ電子システムを記述します。2番目の式は離散時間バージョンで、例えばソフトウェアで実装されたデジタルフィルタ、いわゆるデジタル信号処理で使用されます。インパルス応答hは、任意の線形時不変フィルタ(または離散時間の場合はシフト不変フィルタ)を完全に特徴付けます。入力xは、時間T(またはNサンプリング周期)の(場合によっては無限の)持続時間を持つインパルス応答hと「畳み込み」されると言われます。
フィルタ設計は、技術やシステムの望ましい複雑さによって規定される特定の実際的な制約内で実現可能な伝達関数を見つけ出し、次に選択した技術を用いてその伝達関数を実現する実用的な設計を行うことから成ります。フィルタの複雑さは、フィルタの次数によって指定できます。
ここで検討する時間領域フィルタには、所望の周波数応答を近似できるフィルタ伝達関数の一般的なクラスが2つあります。機械式およびアナログ電子システムに特徴的な無限インパルス応答(IIR)フィルタと呼ばれるフィルタと、コンピュータなどの離散時間システム(デジタル信号処理と呼ばれる)で実装できる有限インパルス応答(FIR)フィルタの設計には、全く異なる数学的処理が適用されます。
古典的なアナログフィルタはIIRフィルタであり、古典的なフィルタ理論は、同じ少数のリアクティブコンポーネントを使用して合成できる低次の有理関数によって与えられる伝達関数の決定を中心としています。 [ 1 ]一方、デジタルコンピュータを使用すると、FIRフィルタとIIRフィルタの両方をソフトウェアで簡単に実装できます。
デジタルIIRフィルタは一般的にFIRフィルタよりも少ない計算能力で目的のフィルタ応答を近似できますが、デジタルプロセッサの性能向上に伴い、この利点は不要になることが多くなっています。FIRフィルタは設計と特性評価が容易なため、十分な計算能力が利用可能な場合はフィルタ設計者(プログラマ)にとって好ましい選択肢となります。FIRフィルタのもう1つの利点は、インパルス応答を対称にできることです。これは、周波数領域においてすべての周波数で位相がゼロになる応答(有限遅延を考慮しない場合)を意味し、これはIIRフィルタでは絶対に不可能です。[ 2 ]
周波数応答または伝達関数フィルタの周波数応答は、インパルス応答が既知であれば取得できます。あるいは、ラプラス変換を用いた解析、または離散時間システムの場合はZ変換を用いて直接取得することもできます。周波数応答には周波数の関数としての位相も含まれますが、多くの場合、位相応答はほとんど、あるいは全く重要ではありません。FIRフィルタは位相をゼロにすることができますが、IIRフィルタでは一般的にそれは不可能です。ほとんどのIIR伝達関数には、振幅は同じだが位相が異なる周波数応答を持つ関連伝達関数が存在します。ほとんどの場合、いわゆる最小位相伝達関数が好まれます。
時間領域におけるフィルタは、多くの場合、特定の周波数応答に従うことが求められます。そこで、数学的な手順によって、(いくつかの制約条件内で)実現可能なフィルタ伝達関数が求められ、所望の応答をある基準値内で近似します。一般的なフィルタ応答仕様は、以下のように記述されます。
FIRフィルタで周波数応答要件を満たすには、比較的簡単な手順を使用します。最も基本的な形式では、目的の周波数応答自体を、そしてフーリエ変換して時間領域にします。これによりフィルタ係数h iが得られ、これはサンプリング周波数で周波数応答に一致するゼロ位相 FIR フィルタを実装します。目的の応答にさらに一致させるには、 短縮する必要がある。ただし、フィルタのインパルス応答の持続時間と、各出力値に対して加算する必要のある項の数(上記の離散時間畳み込みによる)は、次式で与えられる。 ここで、Tは離散時間システムのサンプリング周期(N-1はFIRフィルタの次数とも呼ばれる)である。したがって、デジタルフィルタの複雑さと計算時間は、に反比例して増加する。望ましい動作をより正確に近似するフィルタ関数には、より高いコストがかかります。同様の理由で、重要な応答が(サンプリング周波数1/Tと比較して)低い周波数にあるフィルタ関数は、より高次の、計算負荷の高い FIR フィルタを必要とします。したがって、このような場合には、IIR フィルタの方がはるかに効率的です。
読者は、実用的なFIRフィルタ設計のための設計方法について、他の文献でさらに詳しく学ぶことができる。
古典的なアナログフィルタはIIRフィルタであるため、連続時間システムにおいて、上述の様々な望ましいフィルタ応答を実現する伝達関数の範囲を研究する長い歴史があります。変換を用いることで、これらの連続時間周波数応答を離散時間で実現できるものに変換し、デジタルIIRフィルタで使用することができます。このようなフィルタの複雑さは次数Nによって決まります。次数Nは、周波数応答を記述する有理関数の次数を表します。次数Nはアナログフィルタにおいて特に重要です。なぜなら、N次電子フィルタを実現するにはN個のリアクタンス素子(コンデンサおよび/またはインダクタ)が必要だからです。例えば、オペアンプを用いたバイカッド段でフィルタを実現する場合、N/2段が必要です。デジタル実装では、サンプルあたりの演算回数はNに比例します。したがって、数学的な問題は、より小さなNを用いて、望ましい応答に対する最良の近似(ある意味で)を得ることです。これについては、これから説明します。
以下に、いくつかの基準に基づいて最適化され、所望の応答を近似する標準的なフィルタ関数の周波数応答を示します。これらはすべて、正規化単位でカットオフ周波数が0.5となるように設計された5次ローパスフィルタです。 バターワースフィルタ、チェビシェフフィルタ、逆チェビシェフフィルタ、および楕円フィルタの周波数応答を示します。

画像から明らかなように、楕円フィルタは他のフィルタよりもシャープですが、通過帯域と阻止帯域の両方にリップルが発生します。バターワースフィルタは遷移特性が最も劣りますが、応答がより均一で、通過帯域と阻止帯域の両方にリップルが発生しません。ベッセルフィルタ(図示せず)は周波数領域での遷移特性がさらに劣りますが、波形の位相忠実度が最も優れています。用途によって設計要件が異なるため、これらの(およびその他の)最適化の中から異なる選択をしたり、より高次のフィルタが必要になったりします。

2次アクティブRCフィルタを実装する一般的な回路として、サレンキー回路があり、その回路図をここに示します。このトポロジーは、ローパスフィルタ、バンドパスフィルタ、ハイパスフィルタの作製に応用できます。

N次FIR フィルタは、入力信号に N 段階の遅延を課すコンピュータ プログラムまたは専用ハードウェアを使用して、離散時間システムで実装できます。フィルタの出力は、添付の信号フロー図に示すように、これらの遅延信号の重み付き和として形成されます。フィルタの応答は、b 0、b 1、...、b Nで表される重み係数に依存します。たとえば、すべての係数が 1 に等しい場合、いわゆるボックスカー関数では、低周波ゲインが N+1 で、周波数応答が sinc関数で与えられるローパスフィルタが実装されます。より高度な設計手順から導出された係数を使用することで、周波数応答のより優れた形状が得られます。
LTIシステム理論は、あらゆる種類の線形時不変(LTI)フィルタを記述します。LTIフィルタは、周波数応答と位相応答によって完全に記述でき、これらの仕様によってインパルス応答が一意に定義され、その逆もまた同様です。数学的な観点から、連続時間IIR LTIフィルタは線形微分方程式で記述でき、そのインパルス応答は方程式のグリーン関数とみなすことができます。連続時間LTIフィルタは、インパルス応答のラプラス変換によっても記述でき、複素平面におけるラプラス変換の零点と極のパターンを考慮することで、フィルタのすべての特性を分析できます。同様に、離散時間LTIフィルタは、インパルス応答のZ変換によって分析できます。
コンピュータによるフィルタ合成ツールが登場する以前は、ボード線図やナイキスト線図などの図解ツールが設計ツールとして広く用いられていました。今日でも、これらはフィルタの動作を理解する上で非常に貴重なツールです。参考書[ 3 ]には、さまざまな次数を持つさまざまな種類のフィルタの周波数応答、位相応答、群遅延、インパルス応答の詳細な図が掲載されていました。また、RLCラダーとしてフィルタを実装する方法を示す値の表も含まれていました。これは、増幅素子が受動部品に比べて高価だった時代には非常に有用でした。このようなラダーは、部品のばらつきに対する感度を最小限に抑えるように設計することもできますが、これはコンピュータツールなしでは評価が難しい特性です。
アナログフィルタには様々な設計があり、それぞれがシステム応答の何らかの特性を最適化しようと試みている。実用的なフィルタの場合、部品点数やコスト、フィルタ応答特性など、様々な設計基準の間で最適なトレードオフを実現できるカスタム設計が望ましい場合もある。
これらの記述は、フィルタの数学的特性(すなわち、周波数応答と位相応答)に関するものです。これらは、アナログ回路(例えば、アクティブフィルタの一種であるサレンキーフィルタ構成を用いるなど)として、あるいはデジタル信号処理システムのアルゴリズムとして実装できます。
デジタルフィルタは、設計上の制約によって使用が制限されるアナログフィルタに比べて、合成や使用の柔軟性がはるかに高い。特に、部品の許容誤差を考慮する必要がなく、非常に高いQ値を得ることができる。
FIRデジタルフィルタは、所望のインパルス応答と入力信号との直接畳み込みによって実現できる。任意のパルス形状に対応する整合フィルタを容易に設計できる。
IIRデジタルフィルタは、ダイナミックレンジの問題、量子化ノイズ、不安定性などの問題があるため、設計がより困難な場合が多い。一般的に、デジタルIIRフィルタは、一連のデジタルバイカッドフィルタとして設計される。
すべてのローパス2次連続時間フィルタの伝達関数は次のように表される。
すべてのバンドパス2次連続時間フィルタの伝達関数は次のように表される。
どこ