2009年6月13日土曜日

FMトランスミッタ用 入力ローパスフィルタ(3)

4.COEファイルを作成
 XilinxのISEでデジタルフィルタを作成するには、係数をHDLソースにベタ書きするか、CoreGenで作成したROMの初期値として係数を読みこませ、デジタルフィルタ処理を行うモジュールから呼び出すのが王道・・・?ではないかと思います。
 この半月ほど、チャレンジしてきましたが、デジタルフィルタ処理のモジュールでどうやっても所要の速度が得られず挫折。仕方ないのでお勉強にはなりませんが、CoreGenの力を借りることにします。デジタルフィルタは基本的な処理なので、標準で登録されています。




"FIR Compiler v4.0"
オーバサンプリングやダウンサンプリングにも対応しています。今回は、入出力のサンプルレートは同一にしました。










"FIR Compiler"を使うには、フィルタ係数を記録したCOEファイルを作成しておく必要があります。ちなみにCOEファイルはROMを作成するときにも使われますが微妙に中身が異なります。




"FIR Compiler"でのCOEファイルフォーマット
拡張子がCOEでテキストファイル形式です。coefficient_radixは、係数の基数を指定します。係数が2進数、10進数、16進数のとき、それぞれ2、10、16となります。






 設計ツールから書き出した係数データは"TIフォーマット"でしたので、適宜整形します。エディタやエクセルにコピペして手を加えてCOEファイルを作成しました。





COEファイルを作成

0 件のコメント:

コメントを投稿