在 Vivado 中生成并导出硬件描述后,复制工程或工程更改有时候会在 .sdk 文件夹下产生新的 hw_platform,例如原来的是 hw_platform_0,现在又产生了一个 hw_platform_1,hw_platform_2等。
尝试重定向bsp的硬件平台,发现并不能解决这个问题。
Change referenced hardware platform of a BSP
Xilinx employee 给出的答案,并不能更改 BSP 的 Hardware Platform。
> How can I change the hardware platform of a BSP?
It’s not possible to change the Hardware Platform of a BSP. Indeed, you could change the HDF file of a Hardware Platform Project:
> Is it possible to have more than one hardware platform?
Yes, you could have as many Hardware Platform Project as you want in your SDK working space.
> if I have more than one hardware platform, do I have to create a BSP for every platform?
Exactly.
> And if it’s possible, can I reference more than one hardware platform in our application project.
No.
Change referenced hardware platform of a BSP
解决办法:
不能通过重定向 BSP 的 hardware platform 来解决,还可以通过以下两种方法解决:
(1)关闭 Xilinx SDK 的情况下,备份 sdk 文件夹中的源文件,清空整个 sdk 文件夹,重新 launch sdk,再将源文件复制到工程目录下;
(2)Launch SDK 后删除 system_wrapper_hw_platform_0 和 system_wrapper_hw_platform_1 工程,删除时勾选 Delete project contents on disk (cannot be undone),然后重新 Launch SDK 即可。
建议按照第一种方法,因为第二种方法会导致 system.mss 文件打不开。