
嵌入式
野生指针
这个作者很懒,什么都没留下…
展开
-
ZYNQ7000软复位后挂死问题的解决
先简单说一下结论:需要使用dsb和isb指令,将对PSS_RST_CTRL寄存器的操作与CPU中的其他操作隔离开,保证复位过程不被其他代码干扰。具体代码如下:__asm( "dsb \n\t" "isb");具体原理和debug过程有空再更。2020-12-22...原创 2020-12-22 18:50:43 · 1445 阅读 · 2 评论 -
Zynq7000 MultiBoot 机制:从Golden IMG软复位不进Boot IMG的BUG开始
背景公司的产品使用了Zynq7000系列的FPGA,我负责公司产品的固件升级功能开发。为了防止写入Flash的过程中发生断电等意外,采取了Golden IMG进行预防。如果写入失败,导致 Boot IMGheader 不完整,BootRom会向后寻找可用的header。因此在后面写入一个具有通信和固件升级功能的GoldenIMG,就能保证固件升级失败后能够启动到Golden firmware,以便再次进行升级。遇到的问题Golden IMG开发完成后,在测试中发现,即使在Golden fw中..原创 2020-10-11 17:16:35 · 1363 阅读 · 0 评论