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

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

4. 验证设计的功能性

通过将您的组件和测试台编译成一个x86-64可执行文件(可使用本地C++调试程序进行调试)来验证您设计的功能性。此过程有时称为通过仿真进行调试(debugging through emulation)

将您的设计编译成一个x86-64可执行文件比生成和仿真RTL更快。更快的编译时间使您能够在了解组件在硬件中的实现情况之前,快速调试和完善组件算法。

您可以通过以下任一方法将组件和测试平台编译成一个x86-64可执行文件,以便进行功能验证:
  • 使用i++ -march=x86-64命令。
  • 在Linux系统上,使用g++命令。
  • 在Windows系统上,使用Microsoft Visual Studio。
若要通过测试台和组件的x86-64仿真验证设计的功能性,您可以使用典型的调试技术,例如:
  • 运行程序,查看是否产生预期输出。
  • 在您的代码中使用printf语句在代码中的某些点输出变量值。
  • 使用调试程序逐步检查代码。

如果您想使用调试程序逐步检查代码,那么请确保将编译器命令设置为包含调试信息并生成未优化的二进制文件。i++命令默认生成调试信息,而-march=x86-64命令选项则生成未优化的二进制文件。

在Linux系统上,您可以使用GDB调试您的组件和测试台,即便您使用了i++命令编译用于功能验证的代码。

在Windows系统上,您可以使用Microsoft Visual Studio调试您的组件和测试台,即便您使用了i++命令编译用于功能验证的代码。

使用g++命令或者Microsoft Visual Studio可能需要额外的配置来编译您的 Intel® HLS Compiler Pro Edition代码。关于详细信息,请参考 Intel® High Level Synthesis Compiler Pro Edition Reference Manual中的Compiler Interoperability

您可以使用makefile或批处理脚本自动完成这一操作。请将 Intel® HLS Compiler Pro Edition示例设计和教程中提供的makefile和脚本用作创建您自己的makefile 或批处理脚本的指南。