SRAM型FPGA故障检测中关键帧地址范围定位方法技术

技术编号:26377476 阅读:24 留言:0更新日期:2020-11-19 23:46
本发明专利技术公开了SRAM型FPGA故障检测中关键帧地址范围定位方法,涉及抗SRAM型FPGA单粒子翻转容错技术领域。该方法能够减少回读检测的配置帧数目,提高故障检测速度的方法。包括如下步骤:步骤一、对SRAM型FPGA芯片的帧结构进行解析。步骤二、对SRAM型FPGA芯片生成的调试比特流进行解析,推导出SRAM型FPGA的配置帧结构,获得所有配置帧的地址。步骤三、使用布局约束技术将用户设计约束在配置存储器上的预设位置范围内,依据配置帧的地址,在预设位置范围内的配置帧中查找确定关键帧地址范围;关键帧为包含关健位的配置帧,关键位为实现用户逻辑电路的配置位。步骤四、利用确定的关键帧地址范围执行故障检测。

【技术实现步骤摘要】
SRAM型FPGA故障检测中关键帧地址范围定位方法
本专利技术涉及抗SRAM型FPGA单粒子翻转容错
,具体涉及SRAM型FPGA故障检测中关键帧地址范围定位方法。
技术介绍
随着航天事业的蓬勃发展,SRAM型FPGA凭借低成本、高性能及可重构特性在卫星等航天器上得到了广泛应用。然而工作于太空中的SARM型FPGA易发生单粒子翻转,降低了航天器的可靠性和使用寿命。近年来,随着器件特征尺寸的减小和工作频率的提升,又增加了SRAM型FPGA对单粒子翻转的敏感性。因为配置存储器是SRAM型FPGA中数量最多的存储单元,且配置存储器中存放着决定用户电路功能的配置文件,一旦配置存储器发生单粒子翻转,就会破坏配置文件,从而改变用户电路功能,带来灾难性的影响。因此,针对SRAM型FPGA进行容错设计是目前空间应用的一个难点和热点。目前针对SRAM型FPGA主要的容错设计方法是回读刷新。回读刷新指的是在SARM型FPGA正常工作时通过配置访问接口读出配置存储器中的配置数据,与存储在外部存储器中的黄金副本进行逐位对比。如果两者不同,说明配置存储器发生了单粒子翻转。检测到SEU后,回读刷新控制器被触发,进而对配置存储器进行刷新以纠正SEU。但是回读刷新需要回读全部的配置数据来检测故障,其故障检测时间长、故障检测效率不高。因此目前亟需一种能够减少回读检测的配置帧数目,提高故障检测速度的方法。
技术实现思路
有鉴于此,本专利技术提供了SRAM型FPGA故障检测中关键帧地址范围定位方法,能够减少回读检测的配置帧数目,提高故障检测速度的方法。为达到上述目的,本专利技术的技术方案包括如下步骤:步骤一、对SRAM型FPGA芯片的帧结构进行解析。步骤二、对SRAM型FPGA芯片生成的调试比特流进行解析,推导出SRAM型FPGA的配置帧结构,获得所有配置帧的地址。步骤三、使用布局约束技术将用户设计约束在配置存储器上的预设位置范围内,依据配置帧的地址,在预设位置范围内的配置帧中查找确定关键帧地址范围;关键帧为包含关健位的配置帧,关键位为实现用户逻辑电路的配置位。步骤四、利用确定的关键帧地址范围执行故障检测。进一步地,步骤一、对SRAM型FPGA芯片的帧结构进行解析,具体为:每个配置帧中包含次地址字段、列地址字段、行地址字段、半区选择字段、资源类型字段以及保留字段。其中帧地址的[31:26]为保留字段;[25:23]为资源类型字段,共有3位,资源类型字段为“000”时代表选择的资源类型是CLB、IOB、CLK、BRAM和DSP资源;资源类型字段为“001”时,代表的资源类型是BRAM的内容;资源类型字段为“010”代表的资源类型是CFG_CLB;[22]为半区选择字段;[21:17]为行地址字段;[16:7]为列地址字段;[7:0]为次地址字段。进一步地,步骤二、对SRAM型FPGA芯片生成的调试比特流文件进行解析,推导出SRAM型FPGA的配置帧结构,获得所有配置帧的地址;具体为:SRAM型FPGA芯片生成的调试比特流文件结构包括文件头、配置寄存器操作指令以及帧内容。文件头为SRAM型FPGA芯片的型号信息。配置寄存器操作指令包括读写操作,检测标志位、提取标志位以及其他寄存器操作指令。帧内容包括第0帧~第n帧数据信息;第i帧数据信息包括第i帧数据长度、第i帧数据内容以及第i帧的帧地址;其中第i帧数据长度和第i帧数据内容写入FDRI寄存器,即帧数据输入寄存器;第i帧的帧地址写入LOUT寄存器。解析调试比特流文件,提取帧内容中的每一帧的帧地址,提取得到的帧地址按照顺序进行排列即可得到所有配置帧的地址。有益效果:本专利技术通过解析配置存储器结构和调试比特流结构,确定SRAM型FPGA关键帧的地址范围,可以大大减少回读检测的配置帧数目,提高了故障检测速度,因而大幅地减少了故障检测时间。附图说明图1为本专利技术实施例中SRAM型FPGA配置存储器结构示意图;图2为本专利技术实施例中帧地址寄存器的组成示意图;图3为本专利技术实施例中调试比特流文件结构示意图;图4为本专利技术实施例中调试比特流内容举例示意图。图5为本专利技术实施例提供的SRAM型FPGA故障检测中关键帧地址范围定位方法流程图。具体实施方式下面结合附图并举实施例,对本专利技术进行详细描述。本专利技术实施例中,用于实现用户逻辑电路的配置位为关键位,反之为非关键位,同时称包含关键位的配置帧为关键帧,不包含关键位的配置帧为非关键帧。关键帧中的配置位并不一定全部用于实现用户逻辑,因此关键帧中既有关键位又有非关键位,但非关键帧中一定只有非关键位。如果单粒子翻转发生在配置存储器中的关键位,则用户的电路结构就会遭到破坏,导致用户电路出错。因此在SRAM型FPGA故障检测中如何快速、准确地定位关键帧地址范围是提高故障检测速度的有效途径。本专利技术实施例提供的SRAM型FPGA故障检测中关键帧地址范围定位方法,其主要流程如图5所示,包括如下步骤:步骤一、对SRAM型FPGA芯片的帧结构进行解析。对SRAM型FPGA芯片的帧结构进行初步解析,得出SRAM型FPGA大致的帧结构,如图1所示。SRAM型FPGA的配置存储器结构被划分为上下两个半区,上半区的编号是0,下半区的编号是1,每一个半区又可以分成不同数目的行,这由具体的器件型号决定。行的编号从0开始,从中间分别向器件的两端递增,从某种意义上来说上下半区互为镜像。每个半区的行都被分为相同数量的列,上半区和下半区具有的列的数量有可能相同,也有可能不同,这由具体的器件型号决定的。这些资源列都具有特定的功能,对于不同的器件其资源的类型也不同,常见的资源列有IOB列、GCLK列、CLB列、BRAM列、DSP列和GTX列。资源列的编号也是从零开始,从左到右依次递增。配置帧是配置存储器最小的可寻址的单元,其高度为一个时钟域(一行),对配置存储器的读/写操作都必须以配置帧为单位,Xilinx7系列FPGA中每一帧都由101个32位的字组成。在配置存储器中每种类型的资源列均包含一定数量的配置帧,其包含的配置帧数目由资源列的类型决定,并且不同系列的器件即使资源列的类型相同,其包含的配置帧数目也不一定相同。每个配置帧都有一个唯一的地址,称之为物理帧地址,该地址可以分为5部分,分别是资源类型、半区选择、行地址、列地址和次地址,其组成结构如图2所示。帧地址的[31:26]为保留字段。[25:23]为资源类型字段,共有3位,资源类型字段为“000”时代表选择的资源类型是CLB、IOB、CLK、BRAM和DSP资源;资源类型字段为“001”时,代表的资源类型是BRAM的内容;资源类型字段为“010”代表的资源类型是CFG_CLB,若为混合粒度刷新容错系统,没有涉及到BRAM内容和CFG_CLB的刷新,可不考虑资源类型为“001”和“010”的配置帧。[22]为半本文档来自技高网...

【技术保护点】
1.SRAM型FPGA故障检测中关键帧地址范围定位方法,其特征在于,包括如下步骤:/n步骤一、对所述SRAM型FPGA芯片的帧结构进行解析;/n步骤二、对所述SRAM型FPGA芯片生成的调试比特流进行解析,推导出所述SRAM型FPGA的配置帧结构,获得所有配置帧的地址;/n步骤三、使用布局约束技术将用户设计约束在配置存储器上的预设位置范围内,依据配置帧的地址,在所述预设位置范围内的配置帧中查找确定关键帧地址范围;所述关键帧为包含关健位的配置帧,所述关键位为实现用户逻辑电路的配置位;/n步骤四、利用确定的关键帧地址范围执行故障检测。/n

【技术特征摘要】
1.SRAM型FPGA故障检测中关键帧地址范围定位方法,其特征在于,包括如下步骤:
步骤一、对所述SRAM型FPGA芯片的帧结构进行解析;
步骤二、对所述SRAM型FPGA芯片生成的调试比特流进行解析,推导出所述SRAM型FPGA的配置帧结构,获得所有配置帧的地址;
步骤三、使用布局约束技术将用户设计约束在配置存储器上的预设位置范围内,依据配置帧的地址,在所述预设位置范围内的配置帧中查找确定关键帧地址范围;所述关键帧为包含关健位的配置帧,所述关键位为实现用户逻辑电路的配置位;
步骤四、利用确定的关键帧地址范围执行故障检测。


2.如权利要求1所述的方法,其特征在于,所述步骤一、对所述SRAM型FPGA芯片的帧结构进行解析,具体为:
每个配置帧中包含次地址字段、列地址字段、行地址字段、半区选择字段、资源类型字段以及保留字段;
其中帧地址的[31:26]为保留字段;[25:23]为资源类型字段,共有3位,资源类型字段为“000”时代表选择的资源类型是CLB、IOB、CLK、BRAM和DSP资源;资源类型字段为“001”时,代表的资源...

【专利技术属性】
技术研发人员:陈禾谢愚谢宜壮毛创安陈亮龙腾
申请(专利权)人:北京理工大学
类型:发明
国别省市:北京;11

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

1