5-1. 非線形信号処理

アナログデータが一旦ディジタルデータになってしまえば、 DSP内部で様々に処理することができます。特に、実習で使用している DSPボードには、様々な数学関数がC言語のライブラリとして用意されて いますので、通常の数値計算のプログラムを組み上げるのと同じ感覚で、 入力信号に対して計算処理を行うことができます。

単なる信号の足し算、引き算や定数倍は線形計算と呼ばれます。それに対して、 実習 3-3-2で行ったような、2乗や絶対値をとる演算は、入力に対して出力が 単純な比例(線形)関係で表されないため「非線形な」計算と呼ばれます。 2次関数や高次関数のようなべき乗多項式や、対数関数で表される計算などは、 非線形計算です。非線形な信号処理を行うと、入力成分に含まれる周波数を 変化させることも可能です。


【実習 5-1】

  1. 入力信号を2乗して出力するDSPプログラムを作成してください。SGから 正弦波を入力して、出力信号の周波数を調べてみてください。マイクで音声を 入力すると、どうなるでしょうか。
  2. 入力信号を3乗して出力するDSPプログラムを作成してください。この場合は 出力信号の周波数はどうなるでしょうか。
  3. 様々な関数を使って非線形信号処理を行うDSPプログラムを作成してみましょう。 入力信号と出力信号の関係を調べてみてください。