最近在 Vivado 中生成并导出硬件描述时,有时候会在 .sdk 文件夹下产生新的 hw_platform,例如原来的是 hw_platform_0,现在又产生了一个 hw_platform_1。
最新的硬件描述文件 .hdf 在 hw_platform_1 里,而以前创建的 SDK 工程 BSP 的 Hardware Specification 为 hw_platform_0。这时,需要将 BSP 的 Hardware Specification 重定向为 hw_platform_1。
Xilinx 官方教程
在 Xilinx 官网上找到了 BSP 重定向 Hardware Platform 的说明:
Re-Targeting A BSP for a New Hardware Platform

但是,按照上述教程更改,并未解决。后又在 Xilinx 官方问答平台上找到相关提问:
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 文件打不开。
扫码关注尚为网微信公众号

原创文章,作者:sunev,如若转载,请注明出处:https://www.sunev.cn/embedded/1293.html