本帖最后由 FPGA技术 于 2024-3-6 17:50 编辑
第一章 Xilinx HLS设计导出IP报错的解决办法截至2022年1月1日,Vivado HLS和Vitis HLS使用的export_ip命令将无法导出ip。在后台使用HLS的Vivado和Vitis工具也受到此问题的影响。因为HLS工具将ip_version设置为YYMMDDHHMM格式,该值作为一个有符号整数(32位)被访问,随着2022年1月1日的到来,导致了ip_version的溢出,直接后果是Xilinx HLS工具使用的export_ip命令导出IP失败(或类似错误)。为了安全起见,建议所有用户按照本章操作,应用Xilinx提供的一个补丁文件可以解决这个问题。 本章包括以下几个部分: 1 1.1 XilinxHLS生成IP核报错的解决方案 1.2 Xilinx2019.x之前版本的Vivado软件的解决方案 1.3 Xilinx2019.x版本的Vivado软件或更高版本的Vivado软件的解决方案 1.1 Xilinx HLS生成IP核报错的说明 在使用Xilinx HLS工具点击Export RTL生成IP核时会报如下截图所示错误:
图 13.1.1 Vivado HLS导出IP失败报错截图
图 13.1.2 Vitis HLS导出IP失败报错截图 该链接详细描述了报错原因以及解决方案。为了解决这个问题,Xilinx官方已经生成了一个战术补丁。该补丁在上面链接的最下方可以进行下载,位置如此下图所示:
图 13.1.3 补丁下载位置 参照官方的指导,这里我用自己的Vivado HLS工具操作示范一遍,具体步骤如下所示(在打补丁之前需要关闭所有vivado相关开发软件): 1.将Xilinx官网给的补丁文件下载下来放在Vivado的安装路径下,我的Vivado工具的安装路径D:\Xilinx,补丁文件下载下来是个压缩包,该压缩包解压完成后是如下图所示的y2k22_patch文件夹:
图 13.1.4 y2k22_patch文件夹存放路径 2.打开y2k22_patch文件夹内容如下所示:
图 13.1.5 y2k22_patch文件夹内容 从上面的截图我们可以看出该补丁文件中主要是一个Python运行的脚本文件,我们使用Notepad++工具打开该文件中的README文本文件,阅读可知README内容是指导用户如何使用该补丁文件。README主要内容截图如下所示:
图 13.1.6 下载Python软件 1.2 2019.x之前版本的Vivado软件的解决方案上图中说明如果你使用是2019.x之前版本的Vivado软件需要下载一个2.7.5以上版本的Python软件, 可以去Python官网下载也可以直接使用我下面百度网盘提供的链接下载安装。如果是2019.x版本以及之后的版本可以直接使用Xilinx工具一起安装的python软件,不需要再安装一个python软件。 使用的是2019.x之前版本的Vivado软件,例如以Vivado 2018.3为例: 这里提供了windows 64 python3.7 版本的安装包 : 成功安装好Python软件后进入D:\Xilinx目录,打开cmd命令行,执行以下命令即可 python y2k22_patch\patch.py 运行结果如下图所示,和官网上给出的成功输出相同,即成功解决这个问题。
图 13.2.1 运行补丁文件 最后回到Vivado HLS试试重新导出IP核,不再报错,说明这个问题已经解决了。
图 13.2.2 成功生成ip界面 1.3 Xilinx2019.x版本或更高版本Vivado软件的解决方案如果使用的是Xilinx 2019.x版本或更高版本Vivado软件,则可以使用随Xilinx工具一起安装的python工具运行补丁文件解决报错。以Vivado 2019.2为例: 1.先将y2k22_patch文件解压到Vivado 2019.2安装路径下:
图 13.3.1 解压y2k22_patch文件 然后按照y2k22_patch文件夹里面的README文本中如下指示操作:
进入F:\Vivado2019.2\Xilinx目录,打开cmd命令行,(按住电脑的”shift“按键不放,此时右击F:\Vivado2019.2\Xilinx文件夹下的空白处,选择右击后弹窗中的下图红框中的选项即可打开下图中的PowerShell界面执行补丁程序)按照上面截图执行以下命令即可: Vivado\2019.2\tps\win64\python-2.7.5\python.exey2k22_patch\patch.py 注释:Vivado\2019.2\tps\win64\python-2.7.5\python.exe为Xilinx工具一起安装的python工具的路径。 运行结果如下图所示,和官网上给出的成功输出相同,即成功解决这个问题。
图 13.3.2 运行补丁文件输出信息 最后回到Vivado HLS试试重新导出IP核,不再报错,说明这个问题已经解决了。
图 13.3.3 成功生成ip界面
|