FPGA远程更新重启系统(2)
ii)FPGA重启模块ICAPICAP_VIRTEX6为用户逻辑提供FPGA加载功能,它的功能与普通上点加载用的SELECTMAP加载功能相同。接口信号见表表2:ICAP_VIRTEX6接口信号
通过ICAP_VIRTEX6,用户逻辑可以发指令让FPGA从指定的位置重新加载配置文件。加载指令的发送顺序为,
1.发同步字
2.将要加载文件的起始地址写道WBSTAR寄存器(Warm Boot Start Address Register)
3.发送IPROG指令
4.FPGA从WBSTAR寄存器指定地址开始读取配置数据。
下面是一个控制ICAP从地址80000重加载例子
4)远程更新的可靠性
在远程更新过程中有多种原因可以造成远端的配置文件出错。比如数据传输错误,所以在跟新完成之后需要回读校验。为了减少传输负载可以采用CRC校验。但是如果在版本更新过程中出现掉电或系统重启,由于非易失存储器中的配置影像文件已经被破坏,远程终端将无法启动。为了避免这种情况的发生,远程终端需要有2套配置文件,当一套配置文件出错时,系统可以回退到备份配置文件启动。这样就可以保证当系统出错时,远程终端仍可以启动,接受控制中心发出的版本更新指令重新进行更新。
内部发重启过程和状态
第1步:第一次FPGA被正确配置,状态如下
在FALLBACK时,配置文件中的IPROG命令不再起作用。
页:
[1]