Intel® High Level Synthesis Compiler Pro Edition: 用户指南

ID 683456
日期 12/04/2023
Public
文档目录

2. Intel® High Level Synthesis (HLS) Compiler Pro Edition概述

Intel® High Level Synthesis (HLS) Compiler可对您的设计进行解析,并将其编译成一个x86-64对象或者针对 Intel® FPGA器件系列进行优化的RTL代码。它还能创建一个可执行的测试台。您可以使用x86-64对象快速测试并调试设计的功能。

当您的设计被编译成x86-64指令或者RTL时,您可以使用同一测试平台来验证您的设计。

Intel® HLS Compiler Pro Edition是兼容于g++的命令行,并支持大多数的g++编译器标志。请参见 Intel® High Level Synthesis Compiler Reference Manual来了解编译器标志的完整列表。

Intel® HLS Compiler Pro Edition可识别与g++相同的文件扩展名,即.c.C.cc.cpp.CPP.c++.cp.cxx。编译器将所有这些文件类型都视为C++。除了作为C++的子集之外,编译器并不明确支持C。

重要: Intel® HLS Compiler Pro Edition将所有的输入文件都视为C++17。编译器不支持那些符合更新的C++标准的文件。
当您将编译目标是一个FPGA时, Intel® HLS Compiler会输出一个可执行文件和一个工程目录。在Linux上,默认的可执行文件是a.out,在Windows上,默认的可执行文件是a.exe。默认的工程目录是a.prj,此目录包含以下输出:
  • 生成的IP
  • 高级设计报告(report.html)
  • 验证测试台文件
  • Quartus工程,您可以使用该Quartus工程准确地评估设计的区域要求和fMAX

若要指定编译器输出的名称,请将-o <result> 选项包含在您的i++命令中,其中 <result> 是可执行文件的名称。此命令会创建一个名为 <result>.prj的工程目录。

运行该可执行文件会运行您的测试台。当您的编译目标是一个x86-64架构时,输出可执行文件会像一般的C++程序一样在CPU上运行您的设计。与运行组件RTL的仿真相比,输出可执行文件运行速度非常快。当您的编译目标是一个FPGA架构时,输出可执行文件会仿真您的组件RTL。此仿真的运行时间可能会很长。