デジタル信号処理(DSP )とは、コンピュータやより専門的なデジタル信号プロセッサなどによるデジタル処理を用いて、さまざまな信号処理操作を実行することです。このように処理されるデジタル信号は、時間、空間、周波数などの領域における連続変数のサンプルを表す数値のシーケンスです。デジタルエレクトロニクスでは、デジタル信号はパルス列として表され、[ 1 ] [ 2 ]これは通常、トランジスタのスイッチングによって生成されます。[ 3 ]
デジタル信号処理とアナログ信号処理は、信号処理のサブ分野です。DSPの応用分野には、音声処理、ソナー、レーダー、その他のセンサーアレイ処理、スペクトル密度推定、統計的信号処理、デジタル画像処理、データ圧縮、ビデオ符号化、オーディオ符号化、画像圧縮、電気通信用信号処理、制御システム、生物医学工学、地震学などがあります。
DSPは線形演算または非線形演算を含むことができます。非線形信号処理は非線形システム同定[ 4 ]と密接に関連しており、時間、周波数、および時空間領域で実装できます。
デジタル演算を信号処理に適用することで、伝送におけるエラー検出と訂正やデータ圧縮など、多くのアプリケーションにおいてアナログ処理よりも多くの利点が得られます。[ 5 ]デジタル信号処理は、デジタル通信や無線通信などのデジタル技術の基礎でもあります。[ 6 ] DSPは、ストリーミングデータと静的(保存済み)データの両方に適用できます。
アナログ信号をデジタル的に解析および操作するには、アナログ-デジタル変換器(ADC) を使用してデジタル化する必要があります。[ 7 ]サンプリングは通常、離散化と量子化の2 段階で実行されます。離散化とは、信号を等しい時間間隔に分割し、各間隔を単一の振幅測定値で表すことを意味します。量子化とは、各振幅測定値を有限集合の値で近似することを意味します。実数を整数に丸めることはその一例です。
ナイキスト・シャノン標本化定理によれば、標本化周波数が信号中の最高周波数成分の2倍以上であれば、その標本から信号を正確に再構成できる。実際には、標本化周波数はこれよりもかなり高いことが多い。[ 8 ]標本化定理に従うために信号帯域幅を制限するアンチエイリアシングフィルタを使用するのが一般的だが、再構成された信号は元の(フィルタされていない)信号ではなく、フィルタ処理された信号に不完全な阻止帯域除去による残留エイリアシングを加えたものになるため、このフィルタを慎重に選択する必要がある。
理論的なDSP解析と導出は、通常、サンプリングという抽象的なプロセスによって生じる振幅の不正確さ(量子化誤差)のない離散時間信号モデルに対して行われます。数値的手法では、ADCによって生成されるような量子化された信号が必要です。処理結果は、周波数スペクトルや統計情報のセットになる場合もあります。しかし多くの場合、デジタル-アナログ変換器(DAC)によってアナログ形式に変換される、別の量子化信号となります。
DSPエンジニアは通常、デジタル信号を時間領域(一次元信号)、空間領域(多次元信号)、周波数領域、ウェーブレット領域のいずれかで解析します。信号を処理する領域は、信号とその処理の本質的な特性を最もよく表す領域はどれか、という前提に基づいて(あるいは様々な可能性を試して)選択します。測定装置からのサンプルシーケンスは時間領域または空間領域の表現を生成し、離散フーリエ変換は周波数領域の表現を生成します。
時間領域とは、信号を時間軸に沿って解析することを指します。同様に、空間領域とは、信号を位置軸に沿って解析することを指し、例えば画像処理における画素位置などがこれに該当します。
時間領域または空間領域における最も一般的な処理方法は、フィルタリングと呼ばれる手法による入力信号の強調です。デジタルフィルタリングは一般的に、入力信号または出力信号の現在のサンプルを中心とした複数の周辺サンプルに対して線形変換を行うことで構成されます。周辺サンプルは、時間または空間に関して特定できます。任意の入力に対する線形デジタルフィルタの出力は、入力信号とインパルス応答を畳み込むことで計算できます。
信号は、通常フーリエ変換を用いて、時間領域または空間領域から周波数領域に変換されます。フーリエ変換は、時間情報または空間情報を各周波数の振幅成分と位相成分に変換します。アプリケーションによっては、位相が周波数によってどのように変化するかが重要な考慮事項となる場合があります。位相が重要でない場合は、フーリエ変換をパワースペクトルに変換することがよくあります。パワースペクトルとは、各周波数成分の振幅の二乗です。
周波数領域における信号解析の最も一般的な目的は、信号特性の解析です。エンジニアはスペクトルを調べることで、入力信号に含まれる周波数と含まれていない周波数を特定できます。周波数領域解析は、スペクトル解析とも呼ばれます。
特に非リアルタイム処理においては、フィルタリングは周波数領域で行うことも可能です。つまり、フィルタを適用した後、時間領域に戻すという方法です。これは効率的な実装方法であり、ブリックウォールフィルタの優れた近似値を含め、ほぼあらゆるフィルタ応答を得ることができます。
周波数領域における一般的な変換手法がいくつかあります。例えば、ケプストラムは、フーリエ変換によって信号を周波数領域に変換し、対数を取ってから、さらに別のフーリエ変換を適用します。これにより、元のスペクトルの高調波構造が強調されます。
デジタルフィルタには、無限インパルス応答(IIR)型と有限インパルス応答(FIR)型の2種類があります。FIRフィルタは常に安定していますが、IIRフィルタには不安定になり振動する可能性のあるフィードバックループがあります。Z変換は、デジタルIIRフィルタの安定性の問題を分析するためのツールを提供します。[ 9 ]これは、アナログIIRフィルタの設計と分析に使用されるラプラス変換に類似しています。
信号は、その前のサンプルの線形結合として表されます。結合の係数は自己回帰係数と呼ばれます。この方法は、フーリエ変換と比較して周波数分解能が高く、より短い信号を処理できます。[ 10 ]プロニー法は、信号の成分の位相、振幅、初期位相、および減衰を推定するために使用できます。[ 11 ] [ 10 ]成分は、複素減衰指数であると仮定されます。[ 11 ] [ 10 ]
信号の時間周波数表現は、信号の時間的変化と周波数構造の両方を捉えることができます。時間分解能と周波数分解能は不確定性原理によって制限され、そのトレードオフは解析ウィンドウの幅によって調整されます。短時間フーリエ変換、ウェーブレット変換、フィルタバンクなどの線形手法[ 12 ]、非線形手法(例:ウィグナー・ヴィル変換[ 11 ])、自己回帰手法(例:セグメント化プロニー法)[ 11 ] [ 13 ] [ 14 ]は、時間周波数平面上での信号の表現に使用されます。非線形手法とセグメント化プロニー法はより高い分解能を提供できますが、望ましくないアーティファクトを生成する可能性があります。時間周波数解析は通常、非定常信号の解析に使用されます。たとえば、 RAPTやPEFAC [ 15 ]などの基本周波数推定法は、ウィンドウスペクトル解析に基づいています。

数値解析および関数解析において、離散ウェーブレット変換とは、ウェーブレットが離散的にサンプリングされるウェーブレット変換のことである。他のウェーブレット変換と同様に、フーリエ変換に対する重要な利点は時間分解能であり、周波数情報と位置情報の両方を捉えることができる。時間周波数同時分解能の精度は、時間周波数不確定性原理によって制限される。
経験的モード分解は、信号を固有モード関数(IMF)に分解することに基づいています。IMFは、信号から抽出される準調和振動です。[ 16 ]
DSPアルゴリズムは、汎用コンピュータ[ 17 ]やデジタル信号プロセッサ[ 18 ]で実行できます。DSPアルゴリズムは、特定用途向け集積回路(ASIC)[ 19 ]などの専用ハードウェアにも実装されています。デジタル信号処理のためのその他の技術には、より高性能な汎用マイクロプロセッサ、グラフィックス処理ユニット、フィールドプログラマブルゲートアレイ(FPGA)、デジタル信号コントローラ(主にモータ制御などの産業用途向け)、ストリームプロセッサ[ 20 ]などがあります。
リアルタイム処理が不要なシステムで、信号データ(入力または出力)がデータファイルに格納されている場合、汎用コンピュータで効率的に処理を行うことができます。これは基本的に他のデータ処理と変わりませんが、DSPの数学的手法( DCTやFFTなど)が用いられ、サンプリングされたデータは通常、時間的または空間的に均一にサンプリングされていると仮定されます。このようなアプリケーションの例としては、Photoshopなどのソフトウェアを用いたデジタル写真の処理が挙げられます。
アプリケーションの要件がリアルタイムである場合、DSP は多くの場合、専用プロセッサまたはマイクロプロセッサを使用して実装され、場合によっては複数のプロセッサまたは複数の処理コアが使用されます。これらは、固定小数点演算または浮動小数点演算を使用してデータを処理する場合があります。より要求の厳しいアプリケーションでは、FPGA が使用される場合があります。[ 21 ]最も要求の厳しいアプリケーションまたは大量生産製品の場合、アプリケーション専用にASIC が設計される場合があります。
マルチコアCPUとメニーコアGPUアーキテクチャを利用したDSPアルゴリズムの並列実装は、これらのアルゴリズムのレイテンシの観点からパフォーマンスを向上させるために開発されている。[ 22 ]
ネイティブ処理は、DSPや外部処理ではなく、コンピュータのCPUによって行われます。外部処理は、拡張カードや外部ハードウェアボックス、ラックに搭載されたサードパーティ製のDSPチップによって行われます。LogicPro、Cubase、Digital Performer、Pro ToolsなどのデジタルオーディオワークステーションはPro ToolsHD、Universal AudioのUAD-1、TC ElectronicのPowercoreなどは、
DSPの一般的な応用分野には以下が含まれます。
具体的な例としては、デジタル携帯電話での音声符号化と伝送、ハイファイや音響強化アプリケーションでの音響の室内補正、工業プロセスの分析と制御、CATスキャンやMRIなどの医用画像処理、オーディオクロスオーバーとイコライゼーション、デジタルシンセサイザー、オーディオエフェクトユニットなどがあります。[ 23 ] DSP は 1996 年以来補聴器技術で使用されており、自動指向性マイク、複雑なデジタルノイズ低減、周波数応答の調整の改善を可能にしています。[ 24 ]
デジタル信号は固定幅のパルスであり、振幅は2つのレベルのうちの1つしか占めません。