Vivado HLS - 不要在顶级模块端口上使用__SYNTHESIS__。

描述

如果 __SYNTHESIS__用于保护或屏蔽C函数的某些顶级端口 ,仿真和协同仿真可能不匹配。


执行综合时,Vivado HLS会自动定义__SYNTHESIS__宏。

该宏在高级综合期间定义,并且将相应地生成端口。

但是,在C仿真期间未定义宏,因此您可能无法正确测试设计。

仿真和协同仿真可能不匹配因为生成的软件和硬件可能在端口,数字和名称方面不匹配。

无论是否有消息,它都可能导致协同仿真崩溃。

结果,优选不使用顶级端口上的__SYNTHESIS__。



编辑 重设标签(回车键确认) 标为违禁 关闭 合并 删除

提问于 2018-07-31 12:52:58 +0800

这个帖子被标记为一个社区wiki

这个帖子是一个wiki(维基). 任何一个积分 >500的人都可以完善它