值得注意的是,BPI模式与Watchdog有一定相似性,它们都在一段时间内监测加载进度。若进度未达预期,则地址和计时器会逐步增加,超过范围后即触发Fallback。此之外,Vivado中的设置也对于Multiboot的功能实现至关重要。从Vivado中的设置可以看出,Multiboot的主要配置项仅有六个。当Fallback发生后,工程会回退至0地址并...
所以说MultiBoot Image里面运行的就是我们要实现的具体业务功能,可以是多个Multiboot Image。 Golden Image设计要求主要包含下面几点: 1、WBSTAR里面的值要指向MultiBoot存储位置; 2、Watchdog Timer功能要bitstream options里面使能; 3、代码里面可以通过IPROG命令去运行ICAPE3来跳转想要运行其他的MultiBoot Image。 Multi...
Watchdog超时是一种保证加载失败时一定会触发的机制。 FPGA内部的配置寄存器会记录加载状态。当发生Fallback时,会自动忽略IPROG命令,直接加载G镜像的后续部分。 优点 多功能性:Multiboot允许将多个bitstream存储在配置Flash中,实现多个 bitstream之间的动态切换。这使得FPGA可以用于多种任务。 灵活性:在一个工程中实现多个...
重点是2和3,当存在Multiboot镜像的时候,如M镜像的内容出现问题,则会触发CRC校验错误,这样可以保证镜像加载成功之后,数据是没有问题的。 但是如果没有Multiboot镜像,则CRC校验无法进行,或者加载到一半就挂死了。这个时候就需要Watchdog来触发Fallback。只要一定时间内加载没有完成,就一定会触发Watchdog超时。 所以CRC是...
M镜像加载不成功,需要回退到G镜像的操作,Multiboot方案称这一步骤为Fallback。 Fallback在四种条件下会被触发: 1. ID Code错误 2. CRC错误 3. Watchdog超时 4. BPI地址越界 ID Code错误是指配置文件中的器件型号和当前器件不匹配。CRC校验是指配置数据送入FPGA之后会进行校验,如果数据不一样则会提示CRC错误。
1、WBSTAR里面的值要指向MultiBoot存储位置; 2、Watchdog Timer功能要bitstream options里面使能; 3、代码里面可以通过IPROG命令去运行ICAPE3来跳转想要运行其他的MultiBoot Image。 MultiBoot加载流程如图所示: 在配置过程中遇到IDCODE error、CRC error、Watchdog timer timeout error、BPI address wraparound error情况...
在配置过程中,Multiboot需要处理两个关键任务:正常情况下加载M镜像,出错时回退到G镜像。这涉及到FPGA的启动、加载命令的处理以及错误检测机制,如ID Code错误、CRC校验、Watchdog超时和BPI地址溢出等。Watchdog机制尤其重要,它确保了即使M镜像加载失败,也能触发回退,提供最终的错误保障。双镜像方案的...
1、WBSTAR里面的值要指向MultiBoot存储位置;2、Watchdog Timer功能要bitstream options里面使能;3、代码...
Multiboot功能可实现多个bitstream之间的动态切换,从而实现多种任务;Multiboot和Fallback可以支持实现FPGA远程在线升级,当升级bit有错误可以触发Fallback来返回到Golden Image正常运行。Golden Image通常包含FPGA实现的基本功能,例如外设配置和初始化、远程升级等基本功能。
答案是肯定的,FPGA厂商也考虑到了这个问题,Xilinx 6和7系列FPGA上都提供了双镜像方案,即:Golden镜像和Multiboot镜像,简称为G镜像和M镜像,可以简单理解为单片机的Bootloader和Application程序。 M镜像就是用户程序,G镜像就是为了防止变砖而存在的备用固件,无论出现任何异常情况,都不会破坏G镜像的数据内容,从而可以实现即...