ETRI、NI 製 FPGA 上でアルゴリズムを実行してレーダー エミュレーションを加速

新しいワークフローで HDL コード実装の時間と労力を 50% 削減

「MATLAB 関数ブロックを使えば、主要なアルゴリズムコードのほとんどを追加作業なしでそのまま利用できるのは特に助かります。HDL の専門知識がなくても、HDL Coder で簡単にアルゴリズムを HDL コードに変換できました。」

主な成果

  • コード記述などの手作業による設計手法を含む従来のワークフローと比べて、HDL コードの実装にかかる時間と労力を 50% 削減
  • アルゴリズムと生成 HDL コードの動作を比較するコシミュレーションを用いることで検証作業を 50% 削減
  • ターゲット FPGA のリアルタイム信号処理により、システムレベルでの動作検証と性能テストが可能に
信号処理モデルの開発と検証のワークフロー。オフライン シミュレーションと動作モデリングから始まり、オンライン エミュレーションと HDL モデリングへと続きます。コシミュレーション環境に統合される前に、両方のモデルのテストと検証が行われます。

HDL コード生成により、ETRI はアルゴリズム (上) と HDL モデル (下) の設計を一致させることができました。

電子通信研究院 (ETRI) は、韓国の情報通信技術分野をリードする研究機関です。同機関の無線研究部門は、MATLAB®  を用いて低消費電力レーダーのテストベッド向けにリアルタイム送受信信号処理モジュールを開発しました。しかし、サードパーティ製のグラフィカル プログラミング環境を用いて CPU 上で実行した際に、プロジェクト要件を満たすことができませんでした。特に、信号干渉を低減する整合フィルターバンクのような並列処理アルゴリズムにはリアルタイム実行が求められ、直交信号受信機にはパイプライン構造での実装が必要でした。

そのため、ETRI チームは目標を達成するために NI™ FPGA への移行が必要であると判断しました。MATLAB アルゴリズムを直接 HDL に変換することは論外でした。なぜなら、アルゴリズムを変更するたびにコードを手作業で修正する必要があったからです。さらに、アルゴリズムの構造が HDL コードにそのまま反映されないため、デバッグも困難でした。

そこで、同機関の IP と MathWorks が提供する例やサポートを引き続き活用するために、チームはまずアルゴリズムを Simulink® に変換し、次に HDL Coder™ で HDL を生成しました。この方法により、実装方法やハードウェア アーキテクチャ、固定小数点データ型など、さまざまな設計項目のトレードオフを容易に評価できました。アルゴリズムとハードウェアの設計者は、コシミュレーションを通じて連携することで、エンジニア間の反復作業を削減し、繰り返しや人的ミスを最小限に抑えることができました。

さらに、このワークフローにより、ETRI のエンジニアは一貫した設計・検証プロセスが可能になり、Simulink モデルと HDL コードの構造を統一することができました。HDL Verifier™ を使用することで、システムレベルでのリアルタイムの動作検証と性能テストが可能になりました。ワークフローの自動化を通じて、HDL コードの実装とリアルタイムの動作検証の両方で約 50% の時間と労力を削減できました。今後は、機械学習ベースのアルゴリズムを含むプロジェクトでも、HDL Coder によるコード生成の活用が期待されています。