特定分野の専門家およびハードウェア エンジニアは、MATLAB および Simulink を使用して、Intel® FPGA、および SoCデバイス上に展開するためのプロトタイプおよび量産アプリケーションを開発します。

MATLAB と Simulink を使用すると、次のことが可能になります。

  • システムレベルでのハードウェア アーキテクチャのモデル化
  • コードを記述しない FPGA または SoC のプログラミング
  • MATLAB および Simulink 製品を使用した FPGA または SoC のシミュレーションおよびデバッグ
  • FPGA または SoC 統合用の量産 HDL および C コードの生成

「当社は専門分野について十分な経験がありますが、FPGA 統合の経験はほとんどありません。Simulink と HDL Coder を使用することで、自社製品のためのインテリジェントなアルゴリズムの設計に注力できるようになり、設計したアルゴリズムを特定の FPGA で簡単に実行できるようになりました。」

Boris Van Amerongen, Orolia

モデリングとシミュレーション

モデルベースデザインに Simulink を使用することにより、ハードウェア実装を高位でモデル化し、システムコンテキストでシミュレーションすることで、Intel FPGA および SoC アプリケーションの開発時間を短縮できます。また、リソースの使用を効率化するためにFPGA プログラミングの固定小数点を簡単に (30:45)に量子化したり、合成可能なFPGA および ASIC ハードウェア用の浮動小数点 HDL の生成 (9:19) HDL を生成して FPGA をより簡単にプログラムしたりすることもできます。

HDL Coder は、信号処理無線通信モーターと電力制御、および画像/動画処理などのアプリケーション用に、HDL 対応の Simulink Function および MATLAB Function ブロックから直接合成可能な VHDL® または Verilog® を生成します。

DSP Builder for Intel FPGA は、システムレベルのシミュレーションとハードウェアへの展開のために Intel 固有のブロックを Simulink に追加します。DSP Builder ブロックをネイティブ Simulink ブロックと統合して、HDL コードを生成できます。

SoC Blockset を使用すると、メモリの使用やスケジューリング/OS の影響など、Intel SoC デバイスのハードウェアとソフトウェアの相互作用のパフォーマンスを分析することができます。

モデリングとシミュレーション

同じ設計に浮動小数点演算と固定小数点演算を混在させます。この三角関数演算は、標準の Intel FPGA リソースを使用して浮動小数点で実装されます。


ディープラーニング ネットワークを MATLAB から Intel SoC プラットフォームに展開し、MATLAB アプリケーションから推論を実行する場合のプロトタイプ。

FPGA ベースおよび SoC ベースのプラットフォームにおけるプロトタイピング

プロトタイピングを開始するには、サポートパッケージをダウンロードして、事前に構成された Intel FPGA および SoCベースの評価プラットフォームをターゲットにします。HDL Coder では、Simulink から直接 FPGA または SoC をプログラミングする手順が用意されています。HDL コードを書く必要はありません。

複数の手法から選択して、MATLAB および Simulink から直接 FPGA プロトタイプをデバッグできます。IP を挿入して AXI レジスタの読み取りまたは書き込みを行い、MATLAB とオンボードメモリ位置の間で大きな信号または画像ファイルを転送するか、MATLAB で解析できるよう、内部の信号から FPGA へデータをキャプチャするか、あるいは、MATLAB または Simulink テストベンチを使用して FPGA インザループ (2:52)を実行している評価キットでアルゴリズムをテストします。


量産統合のための HDL および IP コアの生成

HDL コード生成機能の HDL ブロックプロパティをサポートするほとんどのブロックでは、パイプライン挿入、リソース共有、RAM マッピングなどのカスタムハードウェア実装オプションを指定できます。HDL コード生成の設定を使用すると、最適化、リセットスタイル、クロックイネーブル、命名規則などをグローバルにカスタマイズすることができます。Simulink で実装アーキテクチャを設計する機能とともに、Intel FPGA および SoC デバイスの速度と面積の最適化を完全に制御することができます。

Quartus® の非アルゴリズム コンテンツと統合するために、可読性に優れた論理合成可能な RTL を生成することができます。Intel SoC 用の HDL Coder サポートパッケージをインストールしている場合は、Arm® プロセッサやその他のデバイス コンポーネントと通信するための各種の AXI プロトコルと互換性のある IP コアラッパーを生成することができます。Intel SoC 用の Embedded Coder サポートパッケージを使用して、Arm アプリケーション プロセッサをプログラムするためのドライバーおよびアプリケーション ソフトウェアを生成することができます。

生成された HDL および IP コアのレポート

生成された HDL および IP コアのレポート。IP コアの生成レポートには、AXI レジスタおよびプロトコルへの設計の入出力マッピングが記載されます。


HDL を生成できる I/O マッピングを伴うプレースホルダーを使用して、カスタムリファレンス設計を定義します。

ターゲット プラットフォームのサポートの拡張

MathWorks が提供するサポートパッケージに含まれていない FPGA ベースまたは SoC ベースのプラットフォームに展開する必要がある場合は、リファレンス設計を作成またはダウンロードして、HDL Coder にプラグインすることができます。SoC Blockset または Quartus Prime を使用して、リファレンス設計を開発することができます。