问题描述
使用Vivado HLS过程中点击Export RTL报错 Failed to generate IP
具体错误如下,213-28似乎是错误代码
ERROR: [IMPL 213-28] Failed to generate IP.
解决方案
上 Xilinx官网支持社区 搜索错误代码213-28,可以看到官方已经给出了解决方案
点击第一个链接 Export IP Invalid Argument / Revision Number Overflow Issue (Y2K22).
机翻一下链接内的Solution
下载最后给出的补丁包,解压到Xilinx安装位置,我这里是D:\Xilinx,然后删去压缩包,只留y2k22_patch文件夹
最后D:\Xilinx目录下的文件夹如下
进入y2k222_patch文件夹,可以找到一个Readme文件,用Vscode打开,关键内容如下
* Applying patch with Python installed separately
If you have python installed on your system, you can run the patch.py as following (given python is in your path)
python y2k22_patch/patch.py
* 2014 - 2018 (inclusive)
You must have python version 2.7.5 or later installed.
Assuming python is in the path, this patch can be applied to both Windows and Linux by running:
python y2k22_patch\patch.py
* 2019.1
On Windows run:
Vivado\2019.1\tps\win64\python-2.7.5\python.exe y2k22_patch\patch.py
On Linux run:
export LD_LIBRARY_PATH=$PWD/Vivado/2019.1/tps/lnx64/python-2.7.5/lib/
Vivado/2019.1/tps/lnx64/python-2.7.5/bin/python2.7 y2k22_patch/patch.py
2019.2
On Windows run:
Vivado\2019.2\tps\win64\python-2.7.5\python.exe y2k22_patch\patch.py
On Linux run:
export LD_LIBRARY_PATH=$PWD/Vivado/2019.2/tps/lnx64/python-2.7.5/lib/
Vivado/2019.2/tps/lnx64/python-2.7.5/bin/python y2k22_patch/patch.py
* 2020.1
On Windows run:
Vivado\2020.1\tps\win64\python-2.7.16\python.exe y2k22_patch\patch.py
On Linux run:
export LD_LIBRARY_PATH=$PWD/Vivado/2020.1/tps/lnx64/python-2.7.16/lib/
Vivado/2020.1/tps/lnx64/python-2.7.16/bin/python y2k22_patch/patch.py
* 2020.2
On Windows run:
Vivado\2020.2\tps\win64\python-3.8.3\python.exe y2k22_patch\patch.py
On Linux run:
export LD_LIBRARY_PATH=$PWD/Vivado/2020.2/tps/lnx64/python-3.8.3/lib/
Vivado/2020.2/tps/lnx64/python-3.8.3/bin/python y2k22_patch/patch.py
* 2020.3
On Windows run:
Vivado\2020.3\tps\win64\python-3.8.3\python.exe y2k22_patch\patch.py
On Linux run:
export LD_LIBRARY_PATH=$PWD/Vivado/2020.3/tps/lnx64/python-3.8.3/lib/
Vivado/2020.3/tps/lnx64/python-3.8.3/bin/python3 y2k22_patch/patch.py
* 2021.1
On all Linux Flavors (Centos, RHEL, Ubuntu 18,… ) where python version 3.8.3 used, follow the instructions below
export LD_LIBRARY_PATH=$PWD/Vivado/2021.1/tps/lnx64/python-3.8.3/lib/
Vivado/2021.1/tps/lnx64/python-3.8.3/bin/python3 y2k22_patch/patch.py
On Windows run:
Vivado\2021.1\tps\win64\python-3.8.3\python.exe y2k22_patch\patch.py
* 2021.2
On all Linux Flavors (Centos, RHEL, Ubuntu 18,… ) where python version 3.8.3 used, follow the instructions below
export LD_LIBRARY_PATH=$PWD/Vivado/2021.2/tps/lnx64/python-3.8.3/lib/
Vivado/2021.2/tps/lnx64/python-3.8.3/bin/python3 y2k22_patch/patch.py
On Windows run:
Vivado\2021.2\tps\win64\python-3.8.3\python.exe y2k22_patch\patch.py
简单来说,就是首先确保本机有python环境,python版本高于2.7.5
然后根据Vivado版本号执行对应的脚本命令即可
由于我的Vivado是2018.3版本的
所以进入D:\Xilinx目录,打开cmd命令行,执行以下命令即可
python y2k22_patch\patch.py
运行结果如图所示,和官网上给出的成功输出相同,即成功解决这个问题
最后重启Vivado HLS,试试重新导出IP核,不再报错,说明这个问题已经解决了