一种spartan6系列FPGA多镜像程序远程刷新方法技术

技术编号:28870840 阅读:18 留言:0更新日期:2021-06-15 23:03
本发明专利技术提供了一种spartan6系列FPGA多镜像程序远程刷新方法。本发明专利技术更新的时候只更新U镜像,更新后直接使用U镜像。当出现U镜像更新出现错误的时候,则启动G镜像。通过G镜像中的设计来重新更新Flash中U镜像部分的数据。由于G镜像从来没有被更新过,这样出现错误的概率也就非常小。这样即使U镜像出现错误,可以通过G镜像来完成一些工作(例如Flash读写操作),从而来保证设计一直可以使用。由此,相比与现有技术方案本发明专利技术的使用将大大降低系统刷新失败的风险,从而降低维护成本,间接的提升了产品的竞争力。

【技术实现步骤摘要】
一种spartan6系列FPGA多镜像程序远程刷新方法
本专利技术涉及一种应用于xilinxspartan6系列FPGA(现场可编程门阵列)程序远程刷新方法,用于风电变流器的程序刷新。
技术介绍
由于风机运行的特殊性,风机之间必须保持一定的间距,并且大多数风机安装在交通不便的高山与海洋中。很多陆上风场路况比较恶劣,而海上风场维护成本更加高。当前风机远程程序刷新失败后,需要人员到机位刷新程序,所以增加远程刷新的可靠性对于降低维护成本至关重要。Xilinxspartan6平台下需要自定义编写Flash读写控制器,当无法提供JTAG等其他连接时,Flash的更新就只有远程刷新一种方案。如果写入Flash的数据出现错误,这样会导致FPGA无法加载成功。当FPGA无法加载成功或者工作不正常的时候,整个系统无法正常工作。要解决这个问题,此时必须重新通过远程更新FPGA片外Flash,纠正之前的错误。如果Flash直接由FPGA控制,当远程更新出现错误时,很可能导致远程更新彻底失效,只能安排现场更新来修复。
技术实现思路
本专利技术的目的是:提高风电变流器程序远程刷新的可靠性。为了达到上述目的,本专利技术的技术方案是提供了一种spartan6系列FPGA多镜像程序远程刷新方法,其特征在于,包括以下步骤:步骤1、在spartan6系列FPGA中设置快速检查模块,并在spartan6系列FPGA片外FLASH中设置G镜像区域、U镜像区域及M镜像区域;将初始程序烧录在G镜像区域、U镜像区域形成G镜像文件及U镜像文件;M镜像为启动镜像,M镜像区域用于存储镜像跳转关键字,通过镜像跳转关键字状态标记加载G镜像文件还是加载U镜像文件,镜像跳转关键字状态初始化为标记加载U镜像文件;步骤2、当远程刷新spartan6系列FPGA的片外FLASH时,spartan6系列FPGA的MultiBootFlashprogrammer将最新的程序写入片外FLASH的U镜像区域,从而更新U镜像文件;在数据传输过程中,若出现镜像数据校验失效时,将片外FLASH中M镜像区域存储的镜像跳转关键字状态更新为标记加载G镜像文件;步骤3、设备上电启动后,spartan6系列FPGA通过快速检查模块检查跳转关键字状态,若镜像跳转关键字状态标记为加载U镜像文件,则spartan6系列FPGA加载片外FLASH中更新后的U镜像文件,若镜像跳转关键字状态标记为加载G镜像文件,则spartan6系列FPGA加载片外FLASH中的G镜像文件。优选地,若镜像跳转关键字状态为ON,则加载U镜像文件,若镜像跳转关键字状态为OFF,则加载G镜像文件。优选地,步骤3中,若spartan6系列FPGA加载片外FLASH中的G镜像文件,则spartan6系列FPGA将故障上传到上位机。本专利技术更新的时候只更新U镜像,更新后直接使用U镜像。当出现U镜像更新出现错误的时候,则启动G镜像。通过G镜像中的设计来重新更新Flash中U镜像部分的数据。由于G镜像从来没有被更新过,这样出现错误的概率也就非常小。这样即使U镜像出现错误,可以通过G镜像来完成一些工作(例如Flash读写操作),从而来保证设计一直可以使用。由此,相比与现有技术方案本专利技术的使用将大大降低系统刷新失败的风险,从而降低维护成本,间接的提升了产品的竞争力。附图说明图1为远程程序更新系统图;图2为本专利技术的流程图。具体实施方式下面结合具体实施例,进一步阐述本专利技术。应理解,这些实施例仅用于说明本专利技术而不用于限制本专利技术的范围。此外应理解,在阅读了本专利技术讲授的内容之后,本领域技术人员可以对本专利技术作各种改动或修改,这些等价形式同样落于本申请所附权利要求书所限定的范围。如图2所示,本专利技术提供的一种spartan6系列FPGA多镜像程序远程刷新方法包括以下步骤:步骤1、在spartan6系列FPGA中设置快速检查模块,并在spartan6系列FPGA片外FLASH中设置G镜像区域、U镜像区域及M镜像区域。将初始程序烧录在G镜像区域、U镜像区域形成G镜像文件及U镜像文件。M镜像为启动镜像,M镜像区域用于存储镜像跳转关键字,通过镜像跳转关键字状态标记加载G镜像文件还是加载U镜像文件,本实施例中,若镜像跳转关键字状态为ON,则加载U镜像文件;若镜像跳转关键字状态为OFF,则加载G镜像文件。将镜像跳转关键字状态初始化为ON。步骤2、当远程刷新spartan6系列FPGA的片外FLASH时,spartan6系列FPGA的MultiBootFlashprogrammer将最新的程序写入片外FLASH的U镜像区域,从而更新U镜像文件。在数据传输过程中,若出现镜像数据校验失效时,将片外FLASH中M镜像区域存储的镜像跳转关键字状态更新为OFF。上电完成之后,spartan6系列FPGA就会按照设置进行加载操作。在主动模式下,spartan6系列FPGA会开始对Flash的操作,尝试读取Flash中存储的配置镜像数据。需要注意的是,主动模式下这一系列操作都是spartan6系列FPGA自动完成的,用户无法控制。当数据传输过程中出现概率极低的镜像数据校验失效时,此时需要更新的程序是存在问题的,不能在系统中运行的,此时如果错误地加载了U镜像,系统将会死机从而无法自恢复。通过本方法中的M镜像区域及快速检查模块可以实现退回到G镜像文件,并将故障上传到上位机,具体而言:步骤3、设备上电启动后,spartan6系列FPGA通过快速检查模块检查跳转关键字状态,若镜像跳转关键字状态为ON,则spartan6系列FPGA加载片外FLASH中更新后的U镜像文件,从而完成程序更新。若镜像跳转关键字状态为OFF,则spartan6系列FPGA加载片外FLASH中的G镜像文件,程序更新失败,随后spartan6系列FPGA将故障上传到上位机。本文档来自技高网...

【技术保护点】
1.一种spartan6系列FPGA多镜像程序远程刷新方法,其特征在于,包括以下步骤:/n步骤1、在spartan6系列FPGA中设置快速检查模块,并在spartan6系列FPGA片外FLASH中设置G镜像区域、U镜像区域及M镜像区域;将初始程序烧录在G镜像区域、U镜像区域形成G镜像文件及U镜像文件;M镜像为启动镜像,M镜像区域用于存储镜像跳转关键字,通过镜像跳转关键字状态标记加载G镜像文件还是加载U镜像文件,镜像跳转关键字状态初始化为标记加载U镜像文件;/n步骤2、当远程刷新spartan6系列FPGA的片外FLASH时,spartan6系列FPGA的MultiBootFlashprogrammer将最新的程序写入片外FLASH的U镜像区域,从而更新U镜像文件;/n在数据传输过程中,若出现镜像数据校验失效时,将片外FLASH中M镜像区域存储的镜像跳转关键字状态更新为标记加载G镜像文件;/n步骤3、设备上电启动后,spartan6系列FPGA通过快速检查模块检查跳转关键字状态,若镜像跳转关键字状态标记为加载U镜像文件,则spartan6系列FPGA加载片外FLASH中更新后的U镜像文件,若镜像跳转关键字状态标记为加载G镜像文件,则spartan6系列FPGA加载片外FLASH中的G镜像文件。/n...

【技术特征摘要】
1.一种spartan6系列FPGA多镜像程序远程刷新方法,其特征在于,包括以下步骤:
步骤1、在spartan6系列FPGA中设置快速检查模块,并在spartan6系列FPGA片外FLASH中设置G镜像区域、U镜像区域及M镜像区域;将初始程序烧录在G镜像区域、U镜像区域形成G镜像文件及U镜像文件;M镜像为启动镜像,M镜像区域用于存储镜像跳转关键字,通过镜像跳转关键字状态标记加载G镜像文件还是加载U镜像文件,镜像跳转关键字状态初始化为标记加载U镜像文件;
步骤2、当远程刷新spartan6系列FPGA的片外FLASH时,spartan6系列FPGA的MultiBootFlashprogrammer将最新的程序写入片外FLASH的U镜像区域,从而更新U镜像文件;
在数据传输过程中,若出现镜像数据校验失效时,将片外FLASH中M镜像区域存储的镜像跳转关键字状态...

【专利技术属性】
技术研发人员:胡惠雄陈凯戴云霞李春孙今英陈国栋
申请(专利权)人:上海电气集团股份有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1