PolarFireFPGAアルゴリズム開発用のC ++合成スイート

更新日: 6 年 2023 月 XNUMX 日
PolarFireFPGAアルゴリズム開発用のC ++合成スイート

「エッジコンピューティング、コンピュータービジョン、および産業用制御アルゴリズムの大部分は、基盤となる知識がほとんどまたはまったくない開発者によってC ++でネイティブに開発されています。 FPGA ハードウェア」と同社は述べています。

SmartHLSと呼ばれるこのツールを使用すると、C ++アルゴリズムをFPGAに最適化されたRTL(レジスタ転送レベル)コードに直接変換できます。

これは、オープンソースのEclipse統合開発環境に基づいており、C ++ソフトウェアコードを使用して、MicrochipのLiberoSmartDesignプロジェクトに統合するためのHDLIP(ハードウェア設計言語の知的財産)コンポーネントを生成します。

詳細には、ユーザーはC ++ソフトウェアで設計を実装し、ソフトウェアテストで機能を検証します。 次に、LegUpはC ++プログラムを機能的に同等のVerilogハードウェアモジュールにコンパイルします。

SmartHLSは、Modelsimとの協調シミュレーションを実行して、サイクル精度の動作ハードウェア動作を検証し、ハードウェア機能がソフトウェアと一致することを確認できます。また、SmartDesignによって大規模システムに統合するためのハードウェアIPコアを生成できます。 LegUpは、生成されたVerilogでLibero合成を実行して、FPGAエリアとFmaxを決定することもできます。 PolarFireだけでなく、このツールはSmartFusion2FPGAをサポートしています。

「C ++ソフトウェアコードの記述は、RTLで設計するよりもエンジニアにとって簡単です。これは、ソフトウェアコードがより簡潔であり、RTLよりも必要なC ++の行数が5〜10倍少ないためです」とMicrochip氏は述べています。 「ソフトウェアは、RTLと比較して、将来の改善やメンテナンスのために理解および変更することも簡単です。 ソフトウェアの簡潔さと読みやすさは、FPGAデザインのバグが少ないことを意味します。」

SmartHLS製品ページはこちら