Xilinx社区
首页 > 技术文章 > 基于Xilinx-Spartan6 FPGA的MultiBoot设计的实现
技术文章
基于Xilinx-Spartan6 FPGA的MultiBoot设计的实现
来源:网络  时间:2012-04-25  浏览量:10149

寄存器功能介绍:
1)命令寄存器CMD。命令寄存器CMD存储配置控制命令,以产生全局信号执行其配置功能。在MultiBoot操作中,常用的CMD命令如表5所示。

f.JPG


2)General寄存器。触发IPROG命令后,General1、General2中存放用于对FPGA进行重配置的下一个bit流文件的地址,其中General1存放地址的低16位,General2的高8位存放SPI操作码,低8位存放地址的高8位。General3、General4存放FMlback时的配置文件地址,其中Gener al3存放低16位地址,General4的高8位存放SPI操作码,低8位存放地址的高8位。General5中存放MultiBoot或Fallback时的用户自定义数据。
3)模式寄存器MODE_REG。MODE_REG模式寄存器主要用于重配置时的一些模式设置,如SPI总线的位宽。模式寄存器中各位的功能如表6所示。MultiBoot和Fallback操作需对[13:8]进行相应设置。

g.JPG


4)控制寄存器CTL、配置选项寄存器COR2。因CRC校验错误也可能触发Fallback操作,因此为安全起见,如果可能发生CRC校验错误,需将CTL寄存器的CRC_EXTSTAT位清零,使能CRC校验,并将COR2寄存器的RESET_ON_ERROR置1,使能CRC错误时的Fallback操作。但如果能确定不发生CRC错误,可不设置这两位。

3 MultiBoot原理
如上所述,Spartan-6 FPGA内置有专用的MultiBoot逻辑控制模块,来实现MultiBoot(IPROG)和Fallback操作。当触发Fallback或IPROG时,片内会产生一个复位脉冲,使片内配置逻辑复位,但不会使专用的MultiBoot逻辑和BOOTSTS、MODE、G1-G5复位。
实现MultiBoot特性时,存储器中的配置文件组织模式如图1所示。

h.JPG


如图1所示,第一部分是Header,这个小的bit文件中包含同步字、下一个配置文件的地址以及IPROG命令。此段必须位于Flash存储器中的0地址处。该部分可由命令文件生成。第二部分是MultiBootBitstream,由用户的多个bit流配置文件组成,其地址可在生成mcs文件时指定到符合Flash操作要求的任何地方。进行MultiBoot操作时只需通过ICAP向MuhiBoot逻辑控制模块发送IPROG命令,之后控制模块就会根据Gene ral1、General2指定的地址,加载下一个需要的配置文件。第三部分是Fallback或Golden配置文件,地址可由General3、General4指定。
Header、MultiBoot配置文件、Fallback配置文件在加载过程中,如果出错,FPGA会根据相应寄存器的值,从配置文件的起始地址重新加载3次,加载次数的计数保存在BOOTSTS寄存器的[15:12]位,名称为strike。
Header在加载过程中分配有3个strike计数值:6、7、8。当检测到CRC错误,且RESET_ON_ERROR为1、strike9,则strike计数器加1,并重新开始配置过程。若看门狗计时器超时也会触发相同操作,但此时会忽略RESE_ON_ERROR的状态。若strike等于9,则停止配置,且将INIT和DONE引脚拉低。
MultiBoot配置文件在加载过程也分配有3个strike计数值:0、1、2。当在加载过程检测到错误时,如果strike3且RESET_ON_ERROR为1,则strike计数器加1,且从General1、General2指定的地址处重新加载配置文件。若strike计数器等于3,则触发Fallback操作。
Fallback或Golden配置文件在加载过程也分配有3个计数值:3、4、5。当在加载工程中检测到错误时,若strike计数器值6,则strike计数器加1,并从General3和General4指定的配置文件地址处重新加载配置文件。若strike计数器为6,则从0地址处加载Header配置文件。此时,FPGA会执行循环加载过程:Header→MultiBoot→Fallback(或Golden)→Header,每次循环都会使strike计数器加1,最多3次。若其间某
个配置文件加载成功,则停止循环,否则直到strike计数为9,停止加载过程。Strike计数器只能通过复位或重启系统清零。
Fallback是一种出于安全性考虑的操作。一旦该操作被触发且加载Golden成功,若再想退出Golden加载其他用户配置文件,只能复位FP GA或重启系统。

热点文章
精选视频
推荐资源

中国授权培训机构

北京 电话:(010)82757632
      (010) 62192881
深圳 电话:(0755)86186715
武汉 电话:(027)61389792
成都 电话:(028)80821007
南京 电话:(025)66022032
西安 电话:(029)82230498
邮箱:sales@e-elements.com

中国授权经销商

香港 电话:(852)22127848
北京 电话:(010)84148118
成都 电话:(028)86528262
上海 电话:(021)33678387
深圳 电话:(0755)26584925
武汉 电话:(027)87322806
邮箱:china@avent.com
深圳 电话:(0755)26743210
上海 电话:(021)51696680
北京 电话:(010)51726678
成都 电话:(028)85139576
武汉 电话:(027)87690155
邮箱:
xilinx_enquiry@comtech.com.cn

社区主办


《电子产品世界》杂志社

内容提供


    赛灵思公司

Copyright ©2000-2015 ELECTRONIC ENGINEERING & PRODUCT WORLD. All rights reserved.
京ICP备12027778号-2 北京市公安局备案:1101082052