CN106777719A - 双模冗余的故障检测装置和方法及其设计方法 - Google Patents
双模冗余的故障检测装置和方法及其设计方法 Download PDFInfo
- Publication number
- CN106777719A CN106777719A CN201611207129.5A CN201611207129A CN106777719A CN 106777719 A CN106777719 A CN 106777719A CN 201611207129 A CN201611207129 A CN 201611207129A CN 106777719 A CN106777719 A CN 106777719A
- Authority
- CN
- China
- Prior art keywords
- circuit
- detector
- output end
- input
- output
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/392—Floor-planning or layout, e.g. partitioning or placement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/398—Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
Abstract
本发明涉及故障检测技术领域,提供了一种双模冗余的故障检测装置和方法及其设计方法。该故障检测装置包括功能电路、双模冗余电路和检测器,功能电路、双模冗余电路和检测器均包括胚胎电子细胞阵列中的多个胚胎电子细胞;功能电路的输入端和双模冗余电路的输入端均与信号输入端相连;功能电路的输出端与功能输出端相连;双模冗余电路的输出端与检测器的输入端和功能电路的输出端相连;检测器的输出端与检测信号输出端相连;检测器检测功能电路的输出信号和双模冗余电路的输出信号是否相同:若不同,则检测器输出故障信息;否则,检测器输出正常信息。该故障检测装置能够有效利用胚胎电子细胞阵列中的空闲细胞,可实时检测故障,故障检测率高。
Description
技术领域
本发明涉及故障检测技术领域,特别是涉及一种双模冗余的故障检测装置和方法及其设计方法。
背景技术
胚胎电子细胞阵列是一种新型的具有故障自检测和自修复能力的高可靠性硬件。在环境恶劣,人工维修难以开展以及对任务要求严苛,需要电子设备长时间连续可靠运行的领域,如深海、深空、强辐射、金融等领域,具有广阔的应用前景。
自胚胎电子细胞阵列的概念提出以来,阵列内故障的实时在线检测问题一直是一个亟待解决的关键性问题。国内外众多学者针对这个问题开展了大量的研究,总结目前已有的故障检测方法,主要的设计思路可分为四类:第一类设计思路是细胞内或细胞间特定模块的局部检测;第二类设计思路是采用外部检测资源对电子细胞阵列的输入输出进行实时检测;第三类设计思路是在阵列内设计在线BIST(Built-in Self-Test,BIST)结构;第四类设计思路与以上三种方法有很大不同,它充分利用电子细胞阵列内的空闲资源,在电路映射阶段,自动生成一种在线故障检测结构,实现阵列内故障的实时在线检测。
但是第四类设计思路目前仅针对组合电路进行了研究,没有研究时序电路的情况,所采用的奇偶校验码(Parity Code)与波格码(Berger Code),故障覆盖率有待提高,而且逻辑综合的过程并不能保证电路的全自检(Totally Self-Checking,TSC)特性100%实现。
发明内容
本发明要解决的技术问题是针对上述现有技术的不足,提供一种故障检测率高的双模冗余的故障检测装置和方法及其设计方法。
本发明实施例的第一方面,提供一种故障检测装置,用于检测胚胎电子细胞阵列的故障,包括输入端、功能输出端和检测信号输出端,还包括功能电路、双模冗余电路和检测器;所述功能电路、双模冗余电路和检测器均包括所述胚胎电子细胞阵列中的多个胚胎电子细胞;
所述功能电路的输入端和所述双模冗余电路的输入端均与所述信号输入端相连;所述功能电路的输出端与所述功能输出端相连;
所述双模冗余电路的输出端与所述检测器的输入端相连;
所述检测器的输入端还与所述功能电路的输出端相连;所述检测器的输出端与所述检测信号输出端相连;
所述检测器用于检测所述功能电路的输出信号和所述双模冗余电路的输出信号是否相同:若不同,则所述检测器输出故障信息;否则,所述检测器输出正常信息。
优选的,所述检测器包括多个并行的查找表单元;
所述查找表单元,用于检测所述功能电路的两路输出信号与所述双模冗余电路的两路输出信号是否对应相同:若全相同,所述查找表单元输出正常信息;否则,所述查找表单元输出故障信息;
且所有的所述查找表单元均输出正常信息时,表示所述检测器没有检测到故障;否则,表示检测器检测到故障。
优选的,所述检测器包括N个所述查找表单元,每个所述查找表单元具有两个逻辑相邻的查找表单元;N大于等于2;
对于第i个查找表单元,所述功能电路的两路输出信号分别为Ii和Ii+1,所述双模冗余电路的两路输出信号分别为I'i和I'i+1,第i个查找表单元的输出值记为Yi;且Ii和I'i的比较结果为Xi,Ii+1和I'i+1的比较结果为Xi+1;
则第i个查找表单元的输入和输出之间的逻辑关系为:
所述检测器的输入和输出的关系为:
则通过输出值Y1,Y2,…,YN求解X1,X2,…,XN时,若X1,X2,…,XN都有解,则所述检测器无故障;否则,所述检测器存在故障。
本发明实施例的第二方面,提供一种故障检测装置的设计方法,包括:
输入需要进行双模冗余的功能电路的描述文件;
从所述描述文件中提取目标电路,并将所提取出的目标电路生成电路网表结构;
将所述电路网表结构映射到电子胚胎细胞阵列中,生成包括查找表和D触发器的电路网表。
优选的,所述将所述电路网表结构映射到电子胚胎细胞阵列中包括:
通过逻辑综合优化过程,将所述电路网表结构进行优化;
将经过优化后的所述电路网表结构映射到电子胚胎细胞阵列中。
本发明实施例的第三方面,提供一种故障检测装置的故障检测方法,包括:根据待测电路生成待验证电路;
对所述待验证电路中的所有节点依次进行单固定型故障注入;
将故障注入后的所述待验证电路与故障注入前的所述待验证电路进行等价性验证,并记录等价性验证结果;
在所述待验证电路的所有节点均完成故障注入和等价验证后,根据所述等价验证结果得出所述待测电路的故障检测率。
优选的,所述待测电路包括第一功能电路和第一错误检测电路,所述第一错误检测电路包括第一双模冗余电路和第一检测器;所述根据待测电路生成待验证电路具体为:
复制所述待测电路;复制所述待测电路生成的电路包括第二功能电路和第二错误检测电路,所述第二错误检测电路包括第二双模冗余电路和第二检测器;所述待验证电路包括所述待测电路和复制所述待测电路生成的电路;所述待验证电路的输入端与所述第一功能电路的输入端、第一错误检测电路的输入端、第二功能电路的输入端和第二错误检测电路的输入端相连;
在所述第一错误检测电路的输出端串联第一附加检测器,以及在所述第二错误检测电路的输出端串联第二附加检测器;其中,所述第一附加检测器具有第一特征信号输出端和第一自检信号输出端;所述第二附加检测器具有第二特征信号输出端和第二自检信号输出端;
将所述第一功能电路和所述第二功能电路连接成为miter电路;
将所述第一附加检测器的特征信号输出端和所述第二附加检测器的特征信号输出端异或相连,形成第一异或输出端;
将所述miter电路和所述第一异或输出端异或连接,形成第二异或输出端;所述第一附加检测器的自检信号输出端和所述第二附加检测器的自检信号输出端同或相连,形成第一同或输出端;
将所述第二异或输出端和所述第一同或输出端与连接,形成第一与输出端,且所述第一与输出端与所述待验证电路的输出端相连。
优选的,所述第一附加检测器和所述第二附加检测器均包括N个与门、一个N输入的第一或门和一个N输入的第二或门;
所述第一或门的输入端与所述错误检测电路的各个输出端相连;所述第一或门的输出端与所述特征信号输出端相连;
各个所述与门的输入端与所述检测器的相邻三个输出端相连,各个所述与门的输出端与所述第二或门的输入端相连;所述第二或门的输出端与所述自检信号输出端相连。
采用上述技术方案所产生的有益效果在于:本发明实施例,包括功能电路、双模冗余电路和检测器,功能电路、双模冗余电路和检测器均包括胚胎电子细胞阵列中的多个胚胎电子细胞,检测器检测功能电路的输出信号和双模冗余电路的输出信号是否相同:若不同,则检测器输出故障信息;否则,检测器输出正常信息,相对于现有技术有效利用胚胎电子细胞阵列中的空闲细胞,可实时检测故障,故障检测率高。
附图说明
图1是本发明实施例一中故障检测装置的结构示意图;
图2是本发明实施例一中故障检测装置的胚胎电子细胞阵列示意图;
图3是本发明实施例一中检测器的结构示意图;
图4是本发明实施例二中故障检测装置的设计方法的流程图;
图5是本发明实施例三中故障检测装置的故障检测方法的流程图;
图6是本发明实施例三中等价性验证电路的结构示意图;
图7是本发明实施例三中附加检测器的结构示意图;
图8是本发明实施例中双模冗余电路的面积增长率示意图;
图9是本发明实施例中双模冗余电路的时延增长率示意图。
具体实施方式
下面结合附图和具体实施方式对本发明作进一步详细的说明。
实施例一
参见图1和图2,该故障检测装置,用于检测胚胎电子细胞阵列的故障,可以包括输入端、功能输出端和检测信号输出端,以及功能电路101、双模冗余电路102和检测器103。所述功能电路101、双模冗余电路102和检测器103均包括所述胚胎电子细胞阵列中的多个胚胎电子细胞。
所述功能电路101的输入端和所述双模冗余电路102的输入端均与所述信号输入端相连。所述功能电路101的输出端与所述功能输出端相连。所述双模冗余电路102的输出端与所述检测器103的输入端相连。所述检测器103的输入端还与所述功能电路101的输出端相连。所述检测器103的输出端与所述检测信号输出端相连。
所述检测器103用于检测所述功能电路101的输出信号和所述双模冗余电路102的输出信号是否相同:若不同,则所述检测器103输出故障信息;否则,所述检测器103输出正常信息。
图2为将功能电路101、双模冗余电路102和检测器103映射在胚胎电子细胞阵列的示意图。深色背景的电子细胞是工作细胞,构成电子细胞阵列的功能电路101,实现胚胎电子细胞阵列的逻辑功能。浅色背景的电子细胞是空闲细胞,被配置成为双模冗余检测电路104;双模冗余检测电路104包括双模冗余电路102和检测器103,实现对被测电路的实时检测。白色背景的电子细胞是未被利用的空闲细胞。胚胎电子细胞阵列的输出包括功能电路的功能输出,以及双模冗余检测电路输出的故障信号或正常信号。
上述故障检测装置,与传统的在线故障检测结构,比如三模冗余(Triple ModularRedundancy,TMR),基于错误检测码的故障检测(Error Detecing Codes,EDC)等方法以及在胚胎电子阵列中常用的局部检测(Local Detection,LD),人工免疫系统(ArtificialImmune System,AIS)和Roving STARs等检测方法相比,在故障检测率、检测速度、适用范围和设计难度等方面都具有一定的优势。具体的,本发明实施例的故障检测装置的主要优势如下:
1)故障检测率高:对于单显性故障的故障检测率可达100%,不仅可以检测电子细胞内的故障而且可以检测细胞间的连线故障;
2)检测时间快:能够实现实时在线检测,而且检测不影响被测电路正常工作;
3)适用范围广:对待测电路没有特殊限制,可用于组合电路和时序电路,也可用于大规模电路,可扩展性强;
4)设计难度低:设计时不需要被测电路的先验知识,也不需要考虑双模冗余的具体结构,只需要设计好功能电路,相应的双模冗余电路即可自动生成;
5)资源利用率高:充分利用了胚胎电子阵列中的空闲细胞,在正常工作时,将原本空闲不用的空余细胞变成检测细胞,最大限度了利用了硬件资源;
6)与电子细胞阵列结构无关:经逻辑综合映射生成的双模冗余检测结构可应用于各种结构的电子细胞阵列(如Mesh型,Tree型等等),对后端布局布线过程没有影响,给后端的设计者提供了更大的设计空间。
一个实施例中,所述检测器103可以包括多个并行的查找表(Look Up Table,LUT)单元。所述查找表单元,用于检测所述功能电路101的两路输出信号与所述双模冗余电路102的两路输出信号是否对应相同:若全相同,则所述查找表单元输出正常信息;否则,所述查找表单元输出故障信息。且所有的所述查找表单元均输出正常信息时,表示所述检测器103没有检测到故障;否则,表示检测器103检测到故障。
具体的,参见图3,目前,胚胎电子细胞中多采用查找表(Look Up Table,LUT)作为功能单元,因此本文针对LUT型功能单元,设计专门的检测器,如图3所示。其中I1~IN为功能电路101的输出,I'1~I'N为双模冗余电路102的输出,N为大于等于2的整数。检测器103中的每一个查找表单元实现两对输入的比较,当两对输入都相同时,输出0,否则输出1。O1~ON为检测器103的输出,当输出为全零时表示检测器103没有检测到故障;否则,表示检测器103检测到故障。
例如,查找表单元i将Ii与I'i、Ii+1与I'i+1分别进行比较。在Ii与I'i相同,且Ii+1与I'i+1也相同时,查找表单元i输出Oi零;否则,查找表单元1输出1。其中,1<i<N。在各个查找表单元的输出均为零时,表示检测器103没有检测到故障;否则,表示检测器103检测到故障。
进一步的,检测器103不仅能够检测到故障,而且可以根据输出值,实现检测器103自检。具体的,所述检测器103包括N个所述查找表单元,每个所述查找表单元具有两个逻辑相邻的查找表单元。N大于等于2的整数。例如,查找表单元i,具有两个逻辑相邻的查找表单元i-1和查找表单元i+1;其中,2<i<N-1。特别的,对于查找表单元1,逻辑相邻的查找表单元为查找表单元N和查找表单元2。对于查找表单元N,逻辑相邻的查找表单元为查找表单元N-1和查找表单元1。
对于第i个查找表单元,所述功能电路101的两路输出信号分别为Ii和Ii+1,所述双模冗余电路102的两路输出信号分别为I'i和I'i+1,第i个查找表单元的输出值记为Yi,且Ii和I'i的比较结果为Xi,Ii+1和I'i+1的比较结果为Xi+1,则第i个查找表单元的输入和输出之间的逻辑关系为:
所述检测器103的输入和输出的关系为:
则通过输出值Y1,Y2,…,YN求解X1,X2,…,XN时,若X1,X2,…,XN都有解,则所述检测器103无故障;否则,所述检测器103存在故障。
具体的,通过检测器103的输出值判断检测器103本身是否存在故障,即自检的过程,实际上是通过输出值Y1,Y2,…,YN,求解变量X1~XN的过程,当X1~XN都有解时,则检测器103无故障;否则,检测器103存在故障。
当变量Xi=0时,表示输入端Ii,I'i相同;当变量Xi=1时,表示输入端Ii,I'i不同,即输入端Ii或I'i发生故障。假设Y1,Y2,…,YN中仅Yi=0,其余输出为1,则方程(2)至少有一组解{Xi=0,Xi+1=0,Xj=1(j≠i且j≠i+1)}。假设Y1,Y2,…,YN中有M个值为0,M≥2,则Y1,Y2,…,YN可被分为逻辑相邻的M段,假设其中自变量个数最少的一段为Yj~Yk,如式(3):
式(3)中,k>j,当k=j+1时,有解{Xk=0,Xj=0,Xj+1=0}。当k=j+2时,无解。当k>j+2时,至少有一组解{Xk=0,Xk+1=0,Xj=0,Xj+1=0,Xp=1(p≠k,k+1,j,j+1)}。因此,在Y1,Y2,…,YN中,如果两个零之间1的个数不为1时,则自变量{Xj,…,Xk+1}有解,式(2)所示的整个检测器方程组也有解。如果在Y1,Y2,…,YN中,存在两个零之间1的个数为1的情况,则无解。在检测器103正常工作时,这种情况是不可能发生的,如果发生,则说明检测器103自身出现故障。
上述故障检测装置,包括功能电路101、双模冗余电路102和检测器103,功能电路101、双模冗余电路102和检测器103均包括胚胎电子细胞阵列中的多个胚胎电子细胞,检测器103检测功能电路101的输出信号和双模冗余电路102的输出信号是否相同:若不同,则检测器103输出故障信息;否则,检测器103输出正常信息,相对于现有技术具有故障检测率高、检测时间快等优点。
实施例二
对应于上文实施例所述的故障检测装置,图4示出了本发明实施例提供的故障检测装置的设计方法的流程图。为了便于说明,仅示出了与本实施例相关的部分。
参见图4,一个实施例中,故障检测装置的设计方法可以包括以下过程:
步骤S401,输入需要进行双模冗余的功能电路的描述文件。
其中,描述文件包括但不限于Verilog、VHDL、.blif、.aig、.net、.bench等多种格式。
步骤S402,从所述描述文件中提取目标电路,并将所提取出的目标电路生成电路网表结构。
步骤S403,将所述电路网表结构映射到电子胚胎细胞阵列中,生成包括查找表和D触发器的电路网表。
其中,在胚胎电子细胞中,功能模块一般由LUT和D触发器构成,因此,映射过程实际上是将优化的逻辑门网表映射为由胚胎电子细胞构成的电路网表的过程。映射完成后,即可对电路进行双模冗余设计,设计的输出是后端布局布线(Placemant and Routing,P&R)工具能够处理的BLIF格式的电路描述文件。
双模冗余电路生成的伪代码如下所示:
Dual_Function(Network circuit,Filepath filename){
circuit_new=NetworkAlloc(Network);
for(i=0;i<2;i++){
{for each object{
circuit_new->object=ObjCopy(circuit->object);
do{
ObjCreateNames(circuit_new->object);
}while(!Names already exists)};
for each object{
NetworkConnectObj(circuit_new,object);}}}
NetworkInputNames(circuit_new);
NetworkOutputNames(circuit_new);
IOWriteDual(circuit_new,filename,FileType){
NetworkRewriteInputNames(filename,circuit_new);
for(i=0;i<NetworkGetOutputNum(circuit_new)/2;i++){IOWriteFanins(filena me,ObjGetNames(object));
IOWriteChecker(AssignNames(i));
IOWriteCheckerFunction();}
NetworkRewriteOutputNames(filename,circuit_new);}
}
由上述伪代码可知,生成双模冗余检测结构的函数为Dual_Function,函数的主要输入参数是当前待设计的电路网表,生成的双模冗余电路以BLIF格式存储在指定文件路径和文件名的filename文件中。object为电路网表中各元素的统称,包括输入端、输出端、触发器、逻辑节点等等多种类型。程序首先构建一个新的电路网表circuit_new,根据输入的电路网表,将每个元素复制到新的电路网表中,并对每个元素编号命名,然后依次连接各元素,重复执行以上流程一次后,circuit_new中生成两个相互独立的,与输入电路网表完全相同的电路,此时circuit_new中输入端和输出端的数目为输入电路网表的两倍。因此还需要重新对输入端进行命名,使circuit_new中的两个电路网表具有相同的输入。电路网表复制完成后,还需要在电路网表中加入检测器,在本文中,检测器个数与输入电路网表中输出端个数相同,对每一个检测器,首先确定检测器的输入端,然后对检测器命名,并设计具体的逻辑功能。加入检测器后,对circuit_new的输出端进行修改,输出功能输出和错误信号。
优选的,在步骤S403之前,还可以包括:通过逻辑综合优化过程,将所述电路网表结构进行优化,将经过优化后的所述电路网表结构映射到电子胚胎细胞阵列中。具体的,经过一系列逻辑综合优化过程,生成最优化的电路网表。该最优化的电路网表的逻辑门数量最少、延时最小、触发器个数最少。
上述故障检测装置的设计方法,设计者在设计电路时,只需要设计功能电路即可,双模冗余检测结构在逻辑综合中自动生成,而且设计的过程对输入的功能电路没有任何要求,便于设计人员进行设计,能够提高设计人员的工作效率。
实施例三
对应于上文实施例所述的故障检测装置,图5示出了本发明实施例提供的故障检测装置的故障检测方法的流程图。为了便于说明,仅示出了与本实施例相关的部分。
在电子设备正常运行过程中,同一时刻发生两个或多个故障的概率比较小,因此本实施例主要针对单故障进行说明。在数字电路故障检测诊断的研究中,固定型故障是一种非常常用的故障模型,它能够反映电路中由于元件损坏而产生的固定高/低电平故障,也能反映元件之间连线的断路型连线故障和相当一部分短路故障,因此,本实施例主要针对单固定型故障进行说明。单固定型故障可分为单固定型0故障(Stuck At 0,s-a-0)和单固定型1故障(Stuck At 1,s-a-1)。
当电路中发生单固定型故障时,如果对于电路的每一组输入,电路的非正常输出总能被检测器检测出来,则称电路对于此固定型故障可有效检测。本文定义电路的故障检测率如式(4):
式(4)中,FDR表示故障检测率(Fault Detection Rate,FDR),CFN表示可有效检测的故障数量(Checkable Fault Number,CFN),FN表示全部的故障数量(Fault Number,FN)。
当检测电路中发生单固定型故障时,如果至少存在一组输入,使检测器输出错误信号,则称检测电路对于此固定型故障是可自检的。本实施例定义检测电路中的故障可自检率如下:
式(5)中,ST表示可自检率(Self-Testing,ST),STFN表示可自检的故障数量(Self-Testing Fault Number,STFN),FN表示全部的故障数量(Fault Number,FN)。
参见图5,故障检测装置的故障检测方法可以包括以下过程:
步骤S501,根据待测电路生成待验证电路。
其中,所述待测电路可以包括第一功能电路EDC(Error Detecting Circuit,EDC)和第一错误检测电路EDC(Error Detecting Circuit,EDC),所述第一错误检测电路包括第一双模冗余电路和第一检测器。
参见图6,所述根据待测电路生成待验证电路具体可以包括以下过程:
首先,复制所述待测电路。
其中,复制所述待测电路生成的电路包括第二功能电路和第二错误检测电路。所述第二错误检测电路包括第二双模冗余电路和第二检测器。所述待验证电路ECC(Equivalence Checking Circuit,ECC)包括所述待测电路和复制所述待测电路生成的电路。所述待验证电路的输入端与所述第一功能电路的输入端、第一错误检测电路的输入端、第二功能电路的输入端和第二错误检测电路的输入端相连。
其次,在所述第一错误检测电路的输出端串联第一附加检测器,以及在所述第二错误检测电路的输出端串联第二附加检测器。所述第一附加检测器具有第一特征信号输出端和第一自检信号输出端。所述第二附加检测器具有第二特征信号输出端和第二自检信号输出端。
其中,所述第一附加检测器用于对所述第一双模冗余电路的输出进行特征提取,并对所述第一检测器的状态进行判断。所述第二附加检测器用于对所述第二双模冗余电路的输出进行特征提取,并对所述第二检测器的状态进行判断。具体的,附加检测器(Additional Checker,AC)的输入为错误检测电路输出的错误信号,输出包括对输出进行特征提取的特征信号(Function Output,FO)和对错误检测器的自检信号(Error Output,EO)。当错误检测电路输出表示检测到故障时,FO输出为1,否则为0;当附加检测器判断错误检测电路发生故障时,EO输出为1,否则为0。
接着,将所述第一功能电路和所述第二功能电路连接成为miter电路。
然后,将所述第一附加检测器的特征信号输出端和所述第二附加检测器的特征信号输出端异或相连,形成第一异或输出端。
接着,将所述miter电路和所述第一异或输出端异或连接,形成第二异或输出端。
然后,将所述第一附加检测器的自检信号输出端和所述第二附加检测器的自检信号输出端同或相连,形成第一同或输出端。
最后,将所述第二异或输出端和所述第一同或输出端与连接,形成第一与输出端,且所述第一与输出端与所述待验证电路的输出端相连。
参见图7,一个实施例中,所述第一附加检测器和所述第二附加检测器均包括N个与门、一个N输入的第一或门和一个N输入的第二或门,。
所述第一或门的输入端与所述错误检测电路的各个输出端相连;所述第一或门的输出端与所述特征信号输出端相连。其中,所述错误检测电路为所述第一错误检测电路,所述特征信号输出端为所述第一特征信号输出端;或,所述错误检测电路为所述第二错误检测电路,所述特征信号输出端为所述第二特征信号输出端。
各个所述与门的输入端与所述检测器的相邻三个输出端相连,各个所述与门的输出端与所述第二或门的输入端相连;所述第二或门的输出端与所述自检信号输出端相连。其中,所述检测器为所述第一检测器,所述自检信号输出端为所述第一自检信号输出端;或所述检测器为所述第二检测器,所述自检信号输出端为所述第二自检信号输出端。
具体的,在检测器103的输出Y1,Y2,…,YN中,记任意三个逻辑相邻的输出为一组,共N组。对于其中一组为{Yi-1,Yi,Yi+1},则当{Yi-1,Yi,Yi+1}值不为{0,1,0}时,可以认为检测器103无故障;否则,检测器103出现故障。
步骤S502,对所述待验证电路中的所有节点依次进行单固定型故障注入。
步骤S503,将故障注入后的所述待验证电路与故障注入前的所述待验证电路进行等价性验证,并记录等价性验证结果。
步骤S504,在所述待验证电路的所有节点均完成故障注入和等价验证后,根据所述等价验证结果得出所述待测电路的故障检测率。
本实施例中,在故障检测率分析的过程中,除功能电路FC和错误检测电路EDC之外的电路都是正常的,只针对功能电路FC和错误检测电路EDC进行单固定型故障注入。由图6可知,如果等价性验证电路中无故障存在,那么等价性验证电路实际上是一个输出恒为0的电路。当注入单固定型故障时,分两种情况进行考虑。
当故障发生在功能电路FC时,如果在某输入情况下,导致第一功能电路FC输出与正常值第二功能电路FC’不同,此时Miter电路输出为1。如果第一附加检测器AC的FO输出与第二附加检测器AC’的FO输出也不同,那么说明双模冗余检测器检测到故障,电路输出为0。因此,当功能电路FC中存在单固定型故障时,如果对于每一组输入,第一功能电路FC的功能输出或者输出正常值,或者异常输出都能被检测出来,那么电路的输出恒为0,即注入故障的电路与等价性验证电路等价,说明待测电路可以检测此单固定型故障;否则,注入故障的电路与等价性验证电路不等价,说明待测电路不能有效检测此故障。
当故障发生在第一错误检测电路EDC时,此时Miter电路的输出恒为0,即第一功能电路FC不存在故障。当第一附加检测器AC检测到注入故障的第一错误检测电路EDC与正常值第二错误检测电路EDC’输出不同时,特征信号FO输出1。此时,第一附加检测器AC如果能确定第一错误检测电路EDC发生故障,则自检信号EO输出为1,否则输出为0。理想的情况下,每当第一错误检测电路EDC发生故障时,第一附加检测电路AC应该总能确定该故障,此时注入故障的等价验证电路输出恒为0。但是实际上,由于受到第一错误检测电路EDC电路输出端口的限制,第一错误检测电路EDC内部元件的可观性较差,通常仅能通过第一错误检测电路EDC的输出来判断第一错误检测电路EDC自身是否存在故障。
本实施例中,通过第一错误检测电路EDC的输出仅能检测双模冗余结构中检测器是否发生的故障。因此,存在这种情况,即第一附加检测器AC检测到第一错误检测电路EDC与第二错误检测电路EDC’输出不同,但第一附加检测器AC不能确定第一错误检测电路EDC发生故障,此时EO输出为0。如果对于某单固定型故障,导致电路在至少一组输入下发生这种情况,则故障注入电路与等价验证电路不等价,此时,从另一个方面,则说明至少存在一组输入,将发生在第一错误检测电路EDC中的单固定型故障表现出来。
因此,对于发生在等价性验证电路ECC中功能电路或错误检测电路中的某单固定型故障,通过故障注入前后电路的等价性验证,可以得到电路对于该故障的故障检测能力或故障自检能力。当遍历功能电路和错误检测电路中的所有节点,分别注入S-A-0型故障和S-A-1型故障并进行等价性验证后,就可以计算得到电路的故障检测率和可自检率。
以下通过仿真实验,对本发明实施例进行进一步说明。
仿真实验在逻辑综合工具ABC及布局布线工具VPR环境中进行,分别选取标准电路集中常用的8个不同规模的组合电路和时序电路进行仿真。仿真中采用经典的行列移除的胚胎电子细胞阵列结构,并设定每个胚胎电子细胞中的功能模块只包含一个LUT和D触发器单元,根据胚胎电子细胞阵列的特点,对FPGA结构描述文件中逻辑单元块CLB和I/O端口等模块进行修改,但保留连线资源和I/O端口等模块中的面积、时延等信息。具体方法可参考。
本实施例中,主要分析双模冗余电路与原电路相比,在面积及电路延时等方面的变化情况,因此主要针对面积增长率(Area Increase Rate,AIR)和延时增长率(DelayIncrease Rate,DIR)两个指标的变化情况进行分析。分别将不同规模的8个组合电路和8个时序电路映射到胚胎电子细胞阵列中,然后进行布局布线,布线完成后的电路规模、面积和延时增长率情况如表1所示。
表1电路规模、面积增长率和延时增长率
首先将实现电路所需要的胚胎电子细胞阵列的大小定义为该电路的规模。如表1中的c8电路,在电子阵列中实现c8,最少需要的7行7列的胚胎电子细胞,因此定义C8的电路规模为7*7。同理,根据标准电路在胚胎电子细胞阵列中的映射情况,将标准电路划分成8个不同的规模。电路的规模可看做是对电路硬件消耗的近似估计。
从理论模型上分析,双模冗余结构主要由两个相同的电路,加上一个检测器构成,因此经过双模冗余后,电路的面积增加率应如式(6)所示:
其中,AIR为面积增加率,A为原电路的面积,C为检测器的面积,因此,AIR的理论值应该为而检测器的面积与输出端口的个数相关,电路的面积可由电路的规模近似,因此定义电路的输出个数与电路规模的比值,记为输出规模比(Output number Dividingthe crcuit Scale,ODS),那么,由ODS就可以近似估计电路双模冗余后的面积增加率。即式(4):
公式(4)中的OutputNum为电路输出端个数,CircuitScale为电路规模。可见由式(4)估计双模冗余的面积增加率是非常简单方便的。
但是,在实际映射的过程中,电路的面积不仅包括构成电路的各功能模块,还包括模块之间的连接资源以及I/O端口资源,为了得到更详细的数据,记录仿真过程中各标准电路的总面积增长率,逻辑单元面积增长率和连线面积增长率,图8所示。
图8中,电路的总面积包括逻辑资源面积和连线资源面积。其中,逻辑资源面积包括功能模块的电子细胞面积和I/O端口面积。连线资源面积为阵列中开关盒的面积。为了更加清楚直观,将16个标准电路,按照输出规模比ODS,由小到大依次排列,作为横坐标。纵坐标为面积增长率AIR。图8中的理论值曲线即为电路的输出规模比ODS。可以看出,逻辑面积增长率曲线与理论值曲线较为接近,但个别点有较大的偏差,这主要是由两个原因造成的:一是因为在计算逻辑面积增长率时,不仅包含逻辑单元也包含I/O单元,因此在ODS较小时,I/O单元对计算的影响较小,两曲线几乎重合,但当ODS增大时,两曲线的差距越来越大;二是因为ODS在计算时采用的电路规模是估计值,存在误差,比如图中的c8电路,电路的规模为7*7,而实际上,映射过程中,仅需要39个电子细胞即可,存在比较大的误差。图8中的连线面积由于受到电路结构及具体布局布线算法的影响,呈现出较大的波动,无明显规律性。可以看出,电路的总面积增长率由于受到连线资源的影响,也呈现出一定的波动性,但是波动范围在以逻辑面积增长率曲线和连线面积增长率曲线为上下限的空间内,大致随着电路ODS的增大而增大。
由图8可知,虽然受到连线资源的影响,但是电路的实际面积增长率大致随着电路输出规模比ODS的增大而增大,面积增长率大致在200%~300%之间,所以,可以用ODS近似的估计电路的面积增长率。
将标准电路分为8个规模,并在每种规模的标准电路中选择时序电路和组合电路分析双模冗余后电路的延时变化,如图9。可以看到,双模冗余后,电路的延时变化没有明显特征,延时增长率也并不随电路规模的增大而增大。所以双模冗余后电路的延时并不一定大幅增加,也可能变化不大。虽然双模冗余后电路的延时整体呈现增加的趋势,但增加的具体程度难以确定,如ex1电路,双模冗余后延时上升将近2.5倍;但dk14、s1等电路,电路的延时几乎没有变化。从仿真结果看,组合电路的延时增长率相比时序电路更加稳定,其值大致在110%~150%之间,时序电路的延时增长率波动比较大,其值大致在100%~250%之间。因此,双模冗余后电路的延时变化情况并不能简单确定,一般来说,电路的延时变化情况与电路自身结构以及布局布线方法有很大关系,对于具体电路,不能采用固定的方法进行估算,要得到双模冗余后延时比较短,速度比较快的电路,还需要对布局布线算法进行专门的设计。
对16个标准电路依次进行单固定型故障注入实验,并采用等价性验证的方法对故障的检测能力进行分析,仿真结果如表2。
表2标准电路的故障检测率
仿真中分别在电路逻辑节点的输出端和触发器的输出端注入s-a-0型和s-a-1型故障,当故障发生在功能电路时,记录电路的故障检测率FDR,定义如式(1);当故障发生在检测电路时,记录检测器的可自检率ST,定义如式(2)。理想情况下,功能电路的检测率和检测电路的可自检率都应该是100%,但是实际上,检测器由于受到端口数目的限制以及逻辑综合过程中优化算法的影响,可能出现检测器某些内部节点的故障在检测器输出端是不可观的情况。
总体上看,双模冗余检测电路的检测率非常高,可以达到100%,但这只是针对在电路输出端可观测的故障,对于某些在输出端不可观的故障,检测电路将输出正常信号,此时,虽然电路内部可能存在故障,但是并不影响电路的正常功能,这种情况也认为电路是无故障的。此外,双模冗余检测电路中检测电路的可自检率也比较高,大多数故障都可以在输出端表现出来。所以,当双模冗余检测电路工作时,虽然无法准确定位故障,但是却具有很高的故障检测率,当检测到故障后,可以立即启动相应的故障定位机制来完成故障的诊断定位。
本发明实施例,设计实现基于双模冗余的胚胎电子细胞阵列的故障检测装置,并对双模冗余的自动化生成方法、面积、延时、故障检测率等进行了分析,设计方法简单,能够有效利用胚胎电子细胞阵列中的空闲细胞,可实时检测故障,故障检测率高,为解决胚胎电子细胞阵列在线故障检测难题提供一种新的思路。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种双模冗余的故障检测装置,用于检测胚胎电子细胞阵列的故障,包括信号输入端、功能输出端和检测信号输出端,其特征在于,还包括功能电路、双模冗余电路和检测器;所述功能电路、双模冗余电路和检测器均包括所述胚胎电子细胞阵列中的多个胚胎电子细胞;
所述功能电路的输入端和所述双模冗余电路的输入端均与所述信号输入端相连;所述功能电路的输出端与所述功能输出端相连;
所述双模冗余电路的输出端与所述检测器的输入端相连;
所述检测器的输入端还与所述功能电路的输出端相连;所述检测器的输出端与所述检测信号输出端相连;
所述检测器用于检测所述功能电路的输出信号和所述双模冗余电路的输出信号是否相同:若不同,则所述检测器输出故障信息;否则,所述检测器输出正常信息。
2.根据权利要求1所述的双模冗余的故障检测装置,其特征在于,所述检测器包括多个并行的查找表单元;
所述查找表单元,用于检测所述功能电路的两路输出信号与所述双模冗余电路的两路输出信号是否对应相同:若全相同,所述查找表单元输出正常信息;否则,所述查找表单元输出故障信息;
且所有的所述查找表单元均输出正常信息时,表示所述检测器没有检测到故障;否则,表示检测器检测到故障。
3.根据权利要求2所述的双模冗余的故障检测装置,其特征在于,所述检测器包括N个所述查找表单元,每个所述查找表单元具有两个逻辑相邻的查找表单元;N大于等于2的整数;
对于第i个查找表单元,所述功能电路的两路输出信号分别为Ii和Ii+1,所述双模冗余电路的两路输出信号分别为I'i和I'i+1,第i个查找表单元的输出值记为Yi;且Ii和I'i的比较结果为Xi,Ii+1和I'i+1的比较结果为Xi+1;
则第i个查找表单元的输入和输出之间的逻辑关系为:
所述检测器的输入和输出的关系为:
则通过输出值Y1,Y2,…,YN求解X1,X2,…,XN时,若X1,X2,…,XN都有解,则所述检测器无故障;否则,所述检测器存在故障。
4.一种基于权利要求1至3任一项所述的双模冗余的故障检测装置的设计方法,其特征在于,包括:
输入需要进行双模冗余的功能电路的描述文件;
从所述描述文件中提取目标电路,并将所提取出的目标电路生成电路网表结构;
将所述电路网表结构映射到电子胚胎细胞阵列中,生成包括查找表和D触发器的电路网表。
5.根据权利要求4所述的设计方法,其特征在于,所述将所述电路网表结构映射到电子胚胎细胞阵列中包括:
通过逻辑综合优化过程,将所述电路网表结构进行优化;
将经过优化后的所述电路网表结构映射到电子胚胎细胞阵列中。
6.一种基于权利要求1至3任一项所述的双模冗余的故障检测装置的故障检测方法,其特征在于,包括:
根据待测电路生成待验证电路;
对所述待验证电路中的所有节点依次进行单固定型故障注入;
将故障注入后的所述待验证电路与故障注入前的所述待验证电路进行等价性验证,并记录等价性验证结果;
在所述待验证电路的所有节点均完成故障注入和等价验证后,根据所述等价验证结果得出所述待测电路的故障检测率。
7.根据权利要求6所述的故障检测方法,其特征在于,所述待测电路包括第一功能电路和第一错误检测电路,所述第一错误检测电路包括第一双模冗余电路和第一检测器;所述根据待测电路生成待验证电路具体为:
复制所述待测电路;复制所述待测电路生成的电路包括第二功能电路和第二错误检测电路,所述第二错误检测电路包括第二双模冗余电路和第二检测器;所述待验证电路包括所述待测电路和复制所述待测电路生成的电路;所述待验证电路的输入端与所述第一功能电路的输入端、第一错误检测电路的输入端、第二功能电路的输入端和第二错误检测电路的输入端相连;
在所述第一错误检测电路的输出端串联第一附加检测器,以及在所述第二错误检测电路的输出端串联第二附加检测器;其中,所述第一附加检测器具有第一特征信号输出端和第一自检信号输出端;所述第二附加检测器具有第二特征信号输出端和第二自检信号输出端;
将所述第一功能电路和所述第二功能电路连接成为miter电路;
将所述第一附加检测器的特征信号输出端和所述第二附加检测器的特征信号输出端异或相连,形成第一异或输出端;
将所述miter电路和所述第一异或输出端异或连接,形成第二异或输出端;
将所述第一附加检测器的自检信号输出端和所述第二附加检测器的自检信号输出端同或相连,形成第一同或输出端;
将所述第二异或输出端和所述第一同或输出端与连接,形成第一与输出端,且所述第一与输出端与所述待验证电路的输出端相连。
8.根据权利要求7所述的故障检测方法,其特征在于,所述第一附加检测器和所述第二附加检测器均包括N个与门、一个N输入的第一或门和一个N输入的第二或门;
所述第一或门的输入端与所述错误检测电路的各个输出端相连;所述第一或门的输出端与所述特征信号输出端相连;
各个所述与门的输入端与所述检测器的相邻三个输出端相连,各个所述与门的输出端与所述第二或门的输入端相连;所述第二或门的输出端与所述自检信号输出端相连。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611207129.5A CN106777719B (zh) | 2016-12-23 | 2016-12-23 | 双模冗余的故障检测装置的故障检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611207129.5A CN106777719B (zh) | 2016-12-23 | 2016-12-23 | 双模冗余的故障检测装置的故障检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106777719A true CN106777719A (zh) | 2017-05-31 |
CN106777719B CN106777719B (zh) | 2018-05-08 |
Family
ID=58919748
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611207129.5A Active CN106777719B (zh) | 2016-12-23 | 2016-12-23 | 双模冗余的故障检测装置的故障检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106777719B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110879523A (zh) * | 2019-12-11 | 2020-03-13 | 中国人民解放军陆军工程大学 | 一种修复切换控制模块 |
CN111539182A (zh) * | 2020-07-08 | 2020-08-14 | 成都奥卡思微电科技有限公司 | 一种对组合逻辑电路等价验证的分级方法 |
CN114450647A (zh) * | 2019-09-30 | 2022-05-06 | 西门子交通有限公司 | 技术系统的诊断 |
CN115062566A (zh) * | 2022-06-21 | 2022-09-16 | 深圳国微芯科技有限公司 | 含有x值的电路的简化方法、验证方法、存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1402130A (zh) * | 2001-08-24 | 2003-03-12 | 中国科学院计算技术研究所 | 自诊断的多模冗余系统 |
CN102662805A (zh) * | 2012-03-27 | 2012-09-12 | 中国人民解放军国防科学技术大学 | 基于总线结构的胚胎型仿生自修复结构及方法 |
CN105446836A (zh) * | 2015-12-31 | 2016-03-30 | 中国科学院半导体研究所 | 基于生物免疫机制的胚胎阵列故障诊断系统及诊断方法 |
-
2016
- 2016-12-23 CN CN201611207129.5A patent/CN106777719B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1402130A (zh) * | 2001-08-24 | 2003-03-12 | 中国科学院计算技术研究所 | 自诊断的多模冗余系统 |
CN102662805A (zh) * | 2012-03-27 | 2012-09-12 | 中国人民解放军国防科学技术大学 | 基于总线结构的胚胎型仿生自修复结构及方法 |
CN105446836A (zh) * | 2015-12-31 | 2016-03-30 | 中国科学院半导体研究所 | 基于生物免疫机制的胚胎阵列故障诊断系统及诊断方法 |
Non-Patent Citations (2)
Title |
---|
朱赛等: "一种LUT型胚胎电子阵列的功能分化方法", 《电子学报》 * |
王涛等: "一种基于LUT和二模冗余的胚胎数字电路故障检测方法", 《微电子学与计算机》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114450647A (zh) * | 2019-09-30 | 2022-05-06 | 西门子交通有限公司 | 技术系统的诊断 |
CN114450647B (zh) * | 2019-09-30 | 2023-12-15 | 西门子交通有限公司 | 技术系统的诊断 |
CN110879523A (zh) * | 2019-12-11 | 2020-03-13 | 中国人民解放军陆军工程大学 | 一种修复切换控制模块 |
CN110879523B (zh) * | 2019-12-11 | 2023-01-24 | 中国人民解放军陆军工程大学 | 一种修复切换控制模块 |
CN111539182A (zh) * | 2020-07-08 | 2020-08-14 | 成都奥卡思微电科技有限公司 | 一种对组合逻辑电路等价验证的分级方法 |
CN111539182B (zh) * | 2020-07-08 | 2020-10-09 | 成都奥卡思微电科技有限公司 | 一种对组合逻辑电路等价验证的分级方法 |
CN115062566A (zh) * | 2022-06-21 | 2022-09-16 | 深圳国微芯科技有限公司 | 含有x值的电路的简化方法、验证方法、存储介质 |
CN115062566B (zh) * | 2022-06-21 | 2023-06-27 | 深圳国微芯科技有限公司 | 含有x值的电路的简化方法、验证方法、存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN106777719B (zh) | 2018-05-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
De et al. | RSYN: A system for automated synthesis of reliable multilevel circuits | |
Huang et al. | Formal equivalence checking and design debugging | |
Stroud | Reliability of majority voting based VLSI fault-tolerant circuits | |
US7937679B2 (en) | Method for performing failure mode and effects analysis of an integrated circuit and computer program product therefor | |
CN106777719A (zh) | 双模冗余的故障检测装置和方法及其设计方法 | |
CN102955867B (zh) | 生成门级网表和标准延迟文件及检查和纠正伪路径的方法 | |
Kodandapani et al. | Undetectability of bridging faults and validity of stuck-at fault test sets | |
Ghandali et al. | Logic debugging of arithmetic circuits | |
Touba et al. | Logic synthesis techniques for reduced area implementation of multilevel circuits with concurrent error detection | |
Ye et al. | A scalable comparison-based diagnosis algorithm for hypercube-like networks | |
Rogers et al. | Concurrent hierarchical fault simulation: A performance model and two optimizations | |
US10768227B2 (en) | Systems and methods for analyzing failure rates due to soft/hard errors in the design of a digital electronic device | |
Alves et al. | Enhancing online error detection through area-efficient multi-site implications | |
Ehlers et al. | Monitoring realizability | |
US20220269846A1 (en) | Structural analysis for determining fault types in safety related logic | |
Brayton et al. | A toolbox for counter-example analysis and optimization | |
Zhao et al. | Treemerge: Efficient generation of minimal hitting-sets for conflict sets in tree structure for model-based fault diagnosis | |
Farazmand et al. | Online multiple fault detection in reversible circuits | |
Ubar et al. | True path tracing in structurally synthesized BDDs for testability analysis of digital circuits | |
Ubar et al. | Multiple fault diagnosis with BDD based boolean differential equations | |
Erb et al. | Test pattern generation in presence of unknown values based on restricted symbolic logic | |
Lahrach et al. | Master-slave TMR inspired technique for fault tolerance of SRAM-based FPGA | |
Schmidt et al. | The Influence of Implementation Technology on Dependability Parameters | |
Iwata et al. | Post silicon debugging of electrical bugs using trace buffers | |
Nandha Kumar et al. | Single‐configuration fault detection in application‐dependent testing of field programmable gate array interconnects |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 210001 post Camp Road, Qinhuai District, Nanjing, Jiangsu Province, No. 88 Applicant after: PLA Military Engineering University Address before: 050003 Heping West Road, Hebei, Shijiazhuang, No. 97 Applicant before: Ordnance Engineering College of the Chinese People's Liberation Army |
|
GR01 | Patent grant | ||
GR01 | Patent grant |