一种sram型fpga故障在线容错方法

文档序号:1903507 发布日期:2021-11-30 浏览:8次 >En<

阅读说明:本技术 一种sram型fpga故障在线容错方法 (SRAM type FPGA fault online fault tolerance method ) 是由 毛志明 张颖 姚嘉祺 华屹峰 杨济中 陈鑫 于 2021-07-22 设计创作,主要内容包括:本发明公开一种SRAM型FPGA故障在线容错方法,属于基本电子电路的技术领域。在已经知晓电路故障所在位置的前提下,将电路中故障导致的错误映射到后续连接的逻辑资源上,然后对受影响的逻辑资源进行基于slice的细粒度双模冗余复制。在完成冗余复制之后,对冗余复制资源进行纠错容错处理。将复制后的资源输出和故障连接到的原始逻辑资源输出进行第一次异或,用以判断电路所存在的故障导致原始逻辑资源的输出发生改变,从而实现了故障的在线监控。再将第一次异或后的输出和故障连接到的原始逻辑资源的输出进行第二次异或,使输出发生错误的原始逻辑资源的输出恢复正常,从而实现电路在线容错,以较少的资源消耗实现故障的在线监测和直接纠正。(The invention discloses an SRAM type FPGA fault online fault tolerance method, and belongs to the technical field of basic electronic circuits. Under the premise that the position of the circuit fault is known, mapping the error caused by the fault in the circuit to the logic resource connected subsequently, and then carrying out fine-grained dual-mode redundancy replication on the affected logic resource based on slice. And after the redundant copying is finished, carrying out error correction and fault tolerance processing on the redundant copying resources. And carrying out first exclusive OR on the copied resource output and the original logic resource output connected with the fault to judge that the output of the original logic resource is changed due to the fault of the circuit, thereby realizing the online monitoring of the fault. And performing second XOR on the output after the first XOR and the output of the original logic resource connected with the fault, so that the output of the original logic resource with the output error is recovered to be normal, thereby realizing online fault tolerance of the circuit and realizing online monitoring and direct correction of the fault with less resource consumption.)

一种SRAM型FPGA故障在线容错方法

技术领域

本发明涉及集成电路故障容忍技术,特别涉及一种SRAM型FPGA故障在线容错方法,属于基本电子电路的技术领域。

背景技术

SRAM型现场可编程门阵列(FPGA,Field Programmable Gate Array)因具有可多次编程、结构灵活和开发周期短等优点受到越来越广泛的应用,器件本身的可靠性要求也随着广泛应用不断提高,所以对SRAM型FPGA测试的研究也越来越受重视。为保证实现FPGA上用户设计的正确性,需要对用户设计所使用的FPGA资源进行应用相关测试、故障定位及容错等一系列处理。而在完成故障测试及定位后,如何对故障进行容错便是决定整个方案的成败之举。

在完成故障测试及诊断定位之后,即在已知电路故障所在位置的前提下,常见的SRAM型FPGA容错方法使用冗余资源对故障资源或故障输出进行替换。硬件级的冗余容错在发生故障时保持功能不变,大多是基于行/列移位将电路的故障部分重新映射到另一部分,从而实现容错;配置级的冗余容错在发生故障时,通过复杂的路由算法对电路重新布局布线以使电路避开故障资源进行工作;电路级的冗余容错通过在电路设计时对电路中的关键模块进行双模或三模冗余并结合多数表决器选择正确输出,冗余粒度主要是基于模块,所消耗的资源较多,在容错策略上是结合多数表决器进行表决,忽略错误输出,选择正确输出,实现在线容错。上述使用冗余资源进行替换的故障容错方法虽然能够实现对故障的容错,使电路恢复正常运行,但是这些方法存在较大的资源面积消耗,并且在出现故障时只能不断地对故障进行一个避开措施,并没有对已出现的故障进行纠错。

发明内容

本发明的发明目的是针对上述背景技术的不足,提供一种SRAM型FPGA故障在线容错方法,根据故障类型以及故障直接影响的逻辑资源对用于故障监控和纠错的逻辑资源进行细粒度复制,采用两次异或运算对故障在线监测和纠正后传输异或结果至后续电路,既能对故障资源进行处理,提高电路的可靠性,又能减少资源的消耗,降低对电路性能的影响,实现消耗较少资源对故障进行在线监测和纠正的发明目的,解决SRAM型FPGA容错方法消耗资源面积且仅能实现容错但不能对故障进行有效纠错的技术问题。

本发明为实现上述发明目的采用如下技术方案:区别于传统的基于行/列移位的大面积冗余资源替换方法,以及为避开故障对电路重新布局布线的方法,提出基于单个片(slice)的细粒度冗余对电路故障进行在线容错的发明构思,将电路中的故障所导致的错误映射到电路中的原始逻辑资源上,然后根据电路中所存在的不同的故障以及故障类型对原始逻辑资源进行基于slice的细粒度复制,并通过对原始逻辑资源和复制逻辑资源进行两次异或处理,实现对故障的纠错容错。第一次异或处理,将复制后的逻辑资源输出和故障连接的原始逻辑资源输出进行异或,可实现对故障的在线监控;第二次异或处理,将第一次异或处理后的输出再和故障连接的原始逻辑资源的输出进行异或,可实现对故障的在线纠错,并将纠正后的输出与后续电路进行连接,使电路恢复正常工作。

本发明采用上述技术方案,具有以下有益效果:

(1)本发明所提出的故障在线容错方法通过将故障所导致的错误映射到后续连接的逻辑资源上,并对该原始逻辑资源进行基于Slice以及一些互连线段的细粒度复制,进而实现冗余策略,相较于通过对整行或整列逻辑进行重配置的硬件级冗余容错策略,本发明在冗余策略上所需要的资源消耗相对较少。

(2)本发明所提出的故障在线容错方法通过后续的两次异或操作实现纠错容错策略,两次异或操作了在空闲的查找表(LUT)上实现,所造成的资源面积消耗相对较少,且第一次异或处理的输出可反映出故障是否导致原始逻辑输出发生错误变化,第二次异或处理可直接对故障导致的原始逻辑错误输出进行在线纠正,并将纠正后的输出传输到后续电路,使电路恢复正常工作,相比于基于复杂路由算法对电路进行重新布局布线以避开故障的配置级容错方法,本发明在容错策略上是通过两个异或逻辑门直接对故障进行处理,操作简便,且在故障未导致逻辑输出发生错误变化时,不会影响电路的正常运行。

(3)本发明所提出的故障在线容错方法在冗余策略上所需要的资源消耗少,大多是基于Slice以及一些互连线段的冗余复制,在纠错容错策略上,本发明是直接对错误输出进行纠错处理,并将纠错后的输出传输给后续电路,避免错误输出影响其它电路的正常工作,相较于忽略错误输出后通过切换冗余模块的实现正确输出的双模/三模冗余容错方法,本发明以较少的资源消耗实现故障的在线监测和纠正。

(4)本发明的纠错容错策略又只在设计的关键路径上插入两个异或门,对设计的时延影响非常小,两个异或逻辑门可以通过LUT实现,所增加的资源消耗相对传统的模块级检错纠错的资源消耗较少。

附图说明

图1为本发明公开的一种SRAM型FPGA故障在线容错方法的整体框图。

图2为无故障的正确示例电路的简化图。

图3为针对逻辑故障进行容错的电路结构示意图。

图4为针对互连故障进行容错的电路结构示意图。

具体实施方式

下面结合附图对发明的技术方案进行详细说明。

如图1所示,本发明提出的一种SRAM型FPGA故障在线容错方法,对已完成故障测试及诊断定位的电路,即在已知电路故障所在位置的前提下,对故障所直接影响到的逻辑资源进行细粒度双模冗余复制,然后再通过两次异或处理,实现对故障进行在线容错。

首先,将电路中存在的故障所导致的错误映射到后续连接的逻辑上,电路中的故障分为逻辑故障和互连故障,针对逻辑故障,不管任何类型,其导致的错误就映射在其所在的slice逻辑资源上,直接对该逻辑故障所在的逻辑资源进行基于slice的细粒度复制冗余;而针对互连故障,需要考虑不同的故障类型,固定故障或开路故障只存在于一条互连线上,将其导致的错误映射到后续的逻辑资源上,即该互连线在故障节点后连接的第一个slice逻辑资源,只需对该逻辑资源进行细粒度的复制即可,而主导桥接互连故障存在于一对互连线上,其两条互连线中的任意一条都可能受到故障的影响,所以需要知道主导方和被主导方,通过将被主导的互连线上受故障影响的错误映射到后续的逻辑资源上,对该逻辑资源进行基于slice的细粒度复制。需要注意的是,不同于逻辑故障,互连故障中复制后的逻辑资源需要避开互连故障点进行路由,保证复制后的逻辑资源不受故障的影响。

其次,对双模冗余后的资源进行两次异或处理,第一次异或处理,将复制后的逻辑资源的输出和故障连接到的原始逻辑资源的输出进行一次异或;第二次异或,将第一次异或处理后的输出再和故障连接到的原始逻辑资源的输出进行一次异或。最后,将第二次异或后的结果作为故障直接影响的逻辑资源电路的正确输出,即,第二次异或结果传输到后续电路,使整个电路恢复正常运行,从而实现整个电路的在线容错。

本发明中所提出的纠错容错策略是通过两次异或操作实现的,其真值表如表1所示。表1中第三列为第一次异或处理的结果,第一次异或处理为双模冗余资源的输出之间的异或,因为复制的资源与原始逻辑资源功能相同,且输出不受故障的影响,对这两输出进行异或可实现故障的在线监控,当第一次异或结果为“1”时,说明电路中存在的故障导致原始逻辑资源的输出发生错误变化,当第一次异或结果为“0”时,说明电路中存在的故障未影响到原始逻辑资源的输出。

表1中第四列为第二次异或处理的结果,第二次异或处理为第一次异或的结果与原始逻辑资源的输出之间的异或,若电路中的故障未使原始逻辑资源的输出发生改变,即第一次异或结果为“0”,再将第一次异或结果与原始逻辑资源的输出进行异或,由于存在“0”与任何值的异或结果都是该值本身的特性,所以第二次异或的输出结果与原始逻辑资源的正确输出相同,此时将第二次异或的结果连接到后续电路,并不会影响电路的正常运行;若电路中的故障导致原始逻辑资源的输出发生错误改变,即第一次异或结果为“1”,再将第一次异或结果与原始逻辑资源的输出进行异或,利用“1”与任何值的异或结果都是该值的相反值的特性,所以第二次异或后的输出结果与原始逻辑资源的错误输出值相反,从而纠正了故障导致的原始逻辑资源的输出错误,使得输出恢复正确,再将第二次异或的结果连接到后续电路,可恢复电路的正常运行,实现故障的在线容错。

表1

考虑到FPGA逻辑资源的应用相关测试及故障诊断定位的粒度大多精确到CLB,而SRAM型FPGA的CLB内含有2个slice,2个slice之间相互独立,各自分别连接开关矩阵,与通用布线阵列相连,所以本发明考虑将逻辑故障容错粒度精确到slice,降低资源消耗。图2中给出了无故障的正确示例电路,现假设该电路中存在逻辑故障,且定位到CLB2中的SliceX1Y1,使用本发明所提出的方法,对逻辑故障进行细粒度冗余以及容错处理。针对该故障进行容错后的电路图如图3所示。由于故障就存在于CLB2中的Slice X1Y1,故障所导致的错误就直接映射在其所在的逻辑资源上,所以直接在CLB2中使用空闲资源Slice X1Y0对SliceX1Y1中的逻辑功能进行复制,并在CLB4中使用LUT资源实现两次异或容错处理,两次异或电路在图3右下角进行了描述,再将第二次异或的结果作为正确输出传递到后续CLB3中的Slice X2Y1,使电路恢复正常工作,实现逻辑故障在线容错。

考虑到FPGA互连资源的应用相关测试及故障诊断定位的粒度大多精确到可编程开关或互连线段,而在故障节点之后故障所连接的逻辑资源多为LUT,但SRAM型FPGA的slice内包含多个LUT、MUX、DFF以及进位链等资源,在电路中,与互连故障连接的LUT可能还连接着同一个Slice中的MUX、DFF等其它资源,若只针对该Slice中的LUT进行冗余复制,在后续的纠错容错策略中,在保证不改变设计电路功能的情况下,为了恢复电路中LUT的原始连接,可能会造成更多资源的消耗,于是本发明考虑将互连容错粒度同样精确到Slice。同样以图2中的示例电路为例子,现假设示例电路中存在互连开路故障,且定位到AB段,使用本发明所提出的方法对互连故障进行容错,图4为容错后的电路示意图。将AB段上的故障错误映射到后续的逻辑资源上,即CLB2中的Slice X1Y1,所以同样在CLB2中使用空闲资源Slice X1Y0对Slice X1Y1进行细粒度复制,而与逻辑故障容错不同的是,复制的逻辑资源需要避开故障线段或故障可编程点进行路由,即保证复制的逻辑资源不受该互连故障的影响,因此图4中为避开AB故障段,使用CD段连接复制的逻辑资源。后续在CLB4进行两次异或容错处理,两次异或电路在图4右下角进行了描述,将第二次异或后的结果作为正确输出连接到CLB3中的Slice X2Y1,恢复电路的正常运行,实现互连故障在线容错。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

9页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种基于FPGA的同步422接口的测试激励实现系统及方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类