使用软件版本:vivado

硬件:zedboard开发板

问题现象:

最近调试验证zynq自带的软核microblaze,发现把microblaze的local memory设置成16KB以上时,在sdk里将bit文件和应用程序elf文件生成新的download.bit文件下载到板子上,microblaze的程序没有运行起来。

另外,把local memory设置成16K以下,以上两种操作都可以让microblaze程序运行起来。

但是直接将FPGA编程到bootloop中,并使用Run-> Run-As-> Launch on Hardware(System Debugger)手动运行应用程序,则microblaze可以正常工作。

解决问题:

网上查了好多资料终于发现解决方案,类似问题见https://forums.xilinx.com/t5/Processor-System-Design-and-AXI/Vivado-SDK-2018-3-download-bit-not-running-Microblaze/td-p/926788

原来是vivado2018.3的一个bug导致的!!!下载补丁之后重建工程导出到sdk可以正常运行microblaze的程序,不再受local memory影响。至此问题解决!真是很烦碰到这种因为软件bug导致的问题,排查起来太费精力了!

附上补丁链接:https://www.xilinx.com/support/answers/71948.html

 

如果觉得我的文章对你有用,请随意赞赏