デジタル信号処理の基礎
サンプリング周波数48 kHzで、1サンプルごとにFIRフィルタの出力を計算する。クロック200 MHzで1サイクルに1回の積和ができるプロセッサを使い、ほかの処理の時間を無視するとき、実時間で処理できるタップ数の上限に最も近いものはどれか。
- A約2080タップ
- B約4170タップ
- C約8330タップ
答えと解説を見る
正解:B. 約4170タップ
1サンプルあたりに使える時間は 1/48000 ≈ 20.8 µs で、その間のクロック数は 200 MHz ÷ 48 kHz ≈ 4167 サイクルです。1サイクルに1回の積和なら、約4170タップまで計算できます。この時間を超えると、次のサンプルが届くまでに出力が間に合わず実時間の処理が破綻するので、実際には割り込みやデータの転送の分の余裕を残して設計します。
- A. 掛け算と足し算に1サイクルずつかかるとした値(4167 ÷ 2)です。このプロセッサは積和を1サイクルで行います。
- B. 正しい。200 MHz ÷ 48 kHz ≈ 4167 サイクル分です。
- C. サンプリング周波数ではなく、ナイキスト周波数の24 kHz で割った値(200 MHz ÷ 24 kHz)です。