当系统需要升级时,中心控制系统需要将新的FPGA比特映像文件直接发布到远程子系统,由远程子系统将比特文件更新到非易失存储器。然后由FPGA内部控制逻辑重新启动。比特映像文件更新后,下次上电启动将从新的比特映像文件。如图 1FPGA远程更新系统
多重启动 FPGA 介绍
a)多重启动介绍
VIRTEX6可以支持2套配置文件,第一个版本为安全版本存放在起始位置(spi起始地址为0),第二个版本为最终启动版本。当FPGA启动时,加载控制器会从地址0开始读取加载指令。当读到WBSTAR和IPROG指令时,控制器就跳转到WBSTAR指定的地址读取新的加载指令。在第二个配置文件中不再发IPROG指令,控制其将顺序执行以直到配置文件结束。配置顺序如图所示。
b)多重启动模块
i) 配置存储器访问接口
在FPGA配置过程中,FPGA通过指定的配置管脚访问外部非易失存储器,当配置结束后,部分管脚被释放可以用作普通逻辑管脚,但部分FPGA配置管脚是配置专用,在用户应用中是不可见的,需要例化专用模块STARTUP_VIRTEX6才能允许用户逻辑访问这些专用管脚。
VIRTEX6访问外部存储器逻辑框图和STARTUP_VIRTEX6管脚定义
在配置芯片外接一片MCU,网上也有MCU写配置芯片的程序,最好先用一片别的EEP把要配置的程序保存下来,然后再从EEP读后写道配置芯片里,然后把FPGA的复位引脚复位一下,就完成在线升级了,不过中间要做好防止掉电和其他保证及手段.我们现在做的就是MCU在接收配置程序时把FPGA复位掉,然后进行配置,防止FPGA的中断或者信号什么的影响.欢迎分享,转载请注明来源:内存溢出
评论列表(0条)