インテル® HLS コンパイラー

概要

インテル® HLS コンパイラーは、アンタイムド (untimed) C++ による入力をもとに、インテル® FPGA に最適化された製品レベル品質の Register Transfer Level (RTL) コードを生成する、高位合成 (HLS) ツールです。FPGA ハードウェア・デザインの抽象化レベルを RTL から引き上げることで、検証の時間を短縮します。一般に、C++ で開発されたモデルは RTL よりもはるかに検証が高速になります。

インテル® HLS コンパイラーはインテル® Quartus® Prime 開発ソフトウェアのインストールに含まれています。

今すぐダウンロード

インテル® HLS コンパイラーの導入事例

Horizon Robotics ではインテルと連携して AI アプリケーションを開発しています。3D セマンティック・モデリングと位置推定のピクセルレベルのリアルタイム・セグメンテーションにおいて、インテル® Arria® 10 FPGA とインテル® HLS コンパイラーがどのように活用されているかを紹介します。

機能

インテル® Quartus® Prime 開発ソフトウェア向けインテル® HLS コンパイラー v19.3 には、ハードウェア・プログラマーが C++ を使用して FPGA 開発プロセスを迅速化するための多彩な機能が用意されています。

  • ゴールデン・デザイン・ソースとしてアンタイムド (untimed) ANSI C++ を使用
  • 高位のディレクティブにより複数のアーキテクチャーを素早く探索可能
  • 高位の制約から設計の意図を推察することで、ツールの使用方法を簡素化
  • オリジナルの C++ ソースモデルとの比較による RTL の検証をサポート
  • プラットフォーム・デザイナー (旧 Qsys) を使用したシステム・インテグレーションに対応した、再利用可能な Intellectual Property (IP) を生成
  • ストリーミング、メモリーのマッピング、またはケーブルのインターフェイスの推定をサポート
  • インテル® FPGA 向けのデバイス固有のタイミングによるスケジュール最適化およびテクノロジー・マッピングを実行
  • ソフトウェア・コンパイラー使用モデルと ac_int データ型を含む業界標準をサポート
  • 全体像を把握できる詳細なレポート機能: シミュレーション段階で概要設計の HTML レポートを自動生成、設計内のボトルネックの確認が可能
  • 領域使用率、ループ構造、メモリー使用率、システムのデータフロー、クラスター、周辺ロジックの表示と分析
  • システムに IP を組み込む複数のフローに対応: HLS コードの組込みに、直接 HLD をインスタンス化する方法、プラットフォーム・デザイナーによる方法、インテル® プログラマブル・アクセラレーション・カード (インテル® PAC) に統合する方法を使用可能

19.3 の新機能


アプリケーション固有のコントロール機能

v19.3 では、インテル® HLS コンパイラー・デザインの微調整を行うための新しい hls_float コントロール機能が含まれているため、デザインから最高のパフォーマンスを引き出すことができます。hls_float では、指定する仮数と指数の幅に基づいて特定のタイプをテンプレート化し、これを通常の浮動小数点タイプとして HLS コードで使用できます。

スタートガイド


ドキュメントとサポート


インテル® HLS コンパイラーに関する技術ドキュメント、ビデオ、トレーニング・コースを用意しています。