作为来自MCU世界的人,我创建引导加载程序以便客户可以更新固件。
对于FPGA:
由于固件存储在外部闪存中,FPGA图像是否只需写入其外部闪存然后重新启动?但是,如果新文件损坏或连接在更新时断开会发生什么情况?是否有一种方法可以进行默认备份?在MCUs中,引导加载程序永远不会被覆盖,因此应用程序随时可能出错,而引导加载程序仍将正常工作。
是否有一个单独的专用非易失性存储器部分,在上电时不会重新配置,您可以在其中加载引导加载程序?
对于CPLD:
由于图像存储在内部,它们是否有一种自我配置的方式?如何为CPLD制作引导加载程序?
其他想法:
也许您可以放置某种带有GPIO的FTDI芯片,您可以通过USB从PC应用程序控制它。这样,您就可以通过位扰动SPI在外部闪存中加载新图像?有人这样做过吗?这样,即使FPGA图像损坏或丢失,仍然能够加载新图像。
请注意,我假设FPGA或CPLD独自放置在板子上。这意味着板子上没有MCU来完成所有这些操作。
了解行业如何完成此任务的任何见解都将是极好的。