適応アルゴリズムはデジタル信号処理(DSP)に不可欠のものです。アコースティック・エコー・キャンセレーション、レーダー・ガイダンス・システムやワイヤレス・チャンネル・エスティメーション等その他多くの様々なアプリケーションに利用されています。
適応アルゴリズムは時間変化信号の算出に使用されます。RLSやカルマンフィルタなど多くの適応アルゴリズムがありますが、最も使用されているのがLMSアルゴリズムです。単純かつ強力なアルゴリズムは、ラティスのFPGAアーキテクチャの利点を活かして具現化出来ます。WindowとHoffにより開発されたアルゴリズムは、時間変化信号の算出に最急降下法を使用します。最急降下法は、存在すれば、最小値を、勾配の負の方向へ進みながら算出します。これはエラーを最小限にすべくフィルタ係数の調整でなされます。
LMS参照設計は2つの機能ブロックである、FIRフィルタとLMSアルゴリズムがあります。FIRフィルタは乗算器とフィードバック付き加算器を利用し直列に実装しています。FIRの結果は飽和を最小とするために標準化されます。LSMアルゴリズムは、繰り返して係数を更新して、FIRフィルタに与えます。FIRフィルタは出力y(n)を生成するために、入力リファレンス信号x(n)と一緒に係数c(n)を用います。出力y(n)は、誤差を生成するために、要求する信号d(n)から減算され、LSMアルゴリズムによって算出する次の係数のセットに用います。

LSMアルゴリズムの具現化
LSM参照設計はどのラティスFPGAをもターゲットとすることが出来、以下のパラメータの設定によりユーザ設計に見合うよう構成可能です。この設計は、ispLEVER6.0(もしくはそれ以上)とHDLコードを生成するMatlab7.1が必要です。
| 構成 | 言語 | SLICE 数 | LUT 数 | 乗算器 36x36 | 乗算器 18x18 | sysMEM EBR 数 | fMAX(MHz) |
|---|---|---|---|---|---|---|---|
| 入力データ・ビット幅=16, 出力データ・ビット幅=24, バイナリ・ポイント=13, タップ・サイズ=64, ステップ・サイズ - U=0.2で最初の シミュレーション、そしてU=1.0 |
Verilog | 204 | 209 | 3 | 1 | 3 | 76 |
![]() |
設計ドキュメンテーションをダウンロード |
![]() |
Matlabモデルをダウンロード |
注:上記の性能と設計サイズはラティスECP33E-5F672Cだけでの試算です。実際の結果は選択したパラメータ、タイミング制約とデバイス具現化で変わる場合があります。詳細は設計のドキュメントをご覧下さい。全てのコーディングと設計は注意書きがない限り、PCプラットフォーム上で行いました。