HDL Coder

パルス検出アルゴリズムのハードウェア アーキテクチャの図。

高位ハードウェア設計

300 以上の HDL 対応 Simulink ブロックMATLAB 関数から選択してサブシステムを設計し、Stateflow チャート、Simscape モデル、ディープラーニング ネットワークを追加できます。設計のハードウェア動作のシミュレーション、代替アーキテクチャの検討、固定小数点または浮動小数点データ型、あるいはその両方を組み合わせて、合成可能な VHDL または Verilog の生成を行います。

合成可能な HDL から FPGA および ASIC までのワークフローを説明する図。

ベンダーに依存しないターゲティング

主要なベンダーの FPGA をターゲットに最適化された論理合成可能な RTL を生成し、ASIC でも使用できます。プロトタイプ量産コードの生成に同じモデルを再利用します。

さまざまな実装オプションの速度対面積のプロット。FIR フィルター用の完全並列アーキテクチャおよび完全パイプライン アーキテクチャ。

設計の最適化

RTL 実装にコミットする前に、さまざまなハードウェア アーキテクチャと固定小数点の量子化オプションを検討します。リソース共有、パイプライン化、遅延の均衡化などの高位合成の最適化を使用して、ロジック、DSP、RAM などのデバイスリソースに効率的にマッピングします。

Xilinx、Microchip、および Intel FPGA を使用した開発ボード。

FPGA ベースのデバイス

AMDIntel、および Microchip FPGA および SoC デバイスに効率的にマッピングする RTL を生成します。汎用ボード向けハードウェア サポート パッケージを使用して入出力をデバイスレベルの I/O および AXI レジスタにマッピングするか、独自のカスタムリファレンス設計を定義します。

ASIC をターゲットとする MATLAB および Simulink アルゴリズム展開の処理手順。

ASIC ワークフロー

アナログ、デジタル、およびソフトウェアが混在するシステムのコンテキストにおいて、アーキテクチャと高位のハードウェア機能の設計および検証を行います。高い結果品質 (QoR) を持つ RTL や、Cadence® Stratus HLS で使用する合成可能な SystemC を生成します。

ダッシュボードカメラからの静止画とともに表示された動画処理用の Simulink モデルおよびロジックアナライザー。

アプリケーション開発

Wireless HDL Toolbox により、サブシステムやブロックを使用した通信アルゴリズムを設計します。また、Vision HDL Toolbox を使用して、画像処理アルゴリズムのストリーミング実装を開発します。複雑な低レイテンシのモーター制御システムを実装します。

フレームからサンプルへの自動変換を行うための高水準のワークフロー図。

ハードウェアの設計

ストリーミングデータに対して効率的に機能するアルゴリズムを開発します。HDL 対応の Simulink ブロック、カスタムの MATLAB Function ブロック、および Stateflow チャートを使用してハードウェア アーキテクチャの詳細を設計します。

FPGA ブロックを表示する Simulink モデルの上に重ねられた Speedgoat FPGA I/O ボード。

リアルタイム シミュレーションおよびテスト

HDL ワークフロー アドバイザーを使用して Speedgoat のプログラム可能な FPGA I/O モジュールをターゲットとし、Simulink Real-Time を使用してシミュレーションするか、dSPACE および NI の FPGA I/O モジュールを追加して使用します。ネイティブ浮動小数点 HDL コードを生成し、高精度プロトタイピングのワークフローを簡略化します。

早期検証

HDL Verifier とともに使用することで、生成した RTL がそのシステムコンテキストで必要に応じて機能することを確認します。主要な HDL シミュレーターとのコシミュレーションを使用して、生成された HDL を MATLAB および Simulink のテストベンチで検証します。FPGA インザループ テストを使用して、FPGA 開発ボードへの設計の実装を検証します。

「Simulink を使用することで、システムアーキテクトとハードウェア設計者の間のコミュニケーションがスムーズになります。Simulink という共通言語のおかげで、私たちは知識、アイデア、設計を交換することができます。Simulink と HDL Coder により、VHDL 構文とコーディングルールのチェックに時間をかけることなく、アルゴリズムの開発と、シミュレーションを介した設計の微調整に注力することができます。」