CN116579293A - 电路的可靠性验证方法及验证工具、存储介质、验证装置 - Google Patents

电路的可靠性验证方法及验证工具、存储介质、验证装置 Download PDF

Info

Publication number
CN116579293A
CN116579293A CN202310545676.8A CN202310545676A CN116579293A CN 116579293 A CN116579293 A CN 116579293A CN 202310545676 A CN202310545676 A CN 202310545676A CN 116579293 A CN116579293 A CN 116579293A
Authority
CN
China
Prior art keywords
fault
propagation model
circuit
gate
effect propagation
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.)
Pending
Application number
CN202310545676.8A
Other languages
English (en)
Inventor
张喆
慕德俊
张茜歌
朱嘉诚
孙玉峰
沈利香
马俊
刘俊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Northwestern Polytechnical University
Beijing Smartchip Microelectronics Technology Co Ltd
Original Assignee
Northwestern Polytechnical University
Beijing Smartchip Microelectronics Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Northwestern Polytechnical University, Beijing Smartchip Microelectronics Technology Co Ltd filed Critical Northwestern Polytechnical University
Priority to CN202310545676.8A priority Critical patent/CN116579293A/zh
Publication of CN116579293A publication Critical patent/CN116579293A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/398Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/76Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in application-specific integrated circuits [ASIC] or field-programmable devices, e.g. field-programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/02Reliability analysis or reliability optimisation; Failure analysis, e.g. worst case scenario performance, failure mode and effects analysis [FMEA]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Mathematical Physics (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

本发明公开了一种电路的可靠性验证方法及验证工具、存储介质、验证装置,其中,方法包括:对电路的输入信号和输出信号添加故障属性标签;针对多个故障类型中的任意故障类型,基于输入信号、输出信号和故障属性标签,构建任意故障类型对应的基本逻辑门的故障效应传播模型;其中,多个故障类型包括位翻转故障类型、随机故障类型和固定故障类型中的一种或多种;基于任意故障类型对应的基本逻辑门的故障效应传播模型,构建任意故障类型对应的电路的故障效应传播模型;基于电路的安全属性,对任意故障类型对应的电路的故障效应传播模型进行形式化断言,以确定电路的可靠性漏洞。本方法能够实现对电路的高效、全面的可靠性验证功能。

Description

电路的可靠性验证方法及验证工具、存储介质、验证装置
技术领域
本发明涉及电路可靠性验证领域,尤其涉及一种电路的可靠性验证方法及验证工具、存储介质、验证装置。
背景技术
在计算机系统中,硬件电路安全是计算机系统的安全根据,如果无法确保硬件电路的安全,那么计算机系统上运行的软件安全便无从谈起,且由于硬件电路漏洞更难发现,一旦被恶意利用,其造成的影响会更加广泛和严重,因此,需要开发有效的安全与可靠性验证工具以验证硬件电路设计在安全性和可靠性方面符合预期的设计约束和特性,以确保硬件电路安全。
目前,相关技术中的安全和可靠性验证方法主要关注于应用污染传播模型进行安全验证,验证功能覆盖率相对不高,因此会产生验证不充分的问题,导致方法的有效性较低,无法满当今电路设计对安全和可靠性验证的需求。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本发明的第一个目的在于提出一种电路的可靠性验证方法,通过对电路的输入信号和输出信号添加故障属性标签,并基于输入信号、输出信号和故障属性标签构建多种故障类型对应的基本逻辑门的故障效应传播模型,随后,根据基本逻辑门的故障效应传播模型生成电路的故障效应传播模型,最后根据该故障效应传播模型对电路进行形式化断言,确定电路的可靠性漏洞,从而能够检测出电路中潜在的安全性和可靠性隐患,实现对电路设计的充分、有效的可靠性验证。
本发明的第二个目的在于提出一种计算机可读存储介质。
本发明的第三个目的在于提出一种验证工具。
本发明的第四个目的在于提出一种电路的可靠性验证装置。
为达到上述目的,本发明第一方面实施例提出了一种电路的可靠性验证方法,方法包括:对电路的输入信号和输出信号添加故障属性标签;其中,故障属性标签用于指示输入信号和输出信号是否存在故障;针对多个故障类型中的任意故障类型,基于输入信号、输出信号和故障属性标签,构建任意故障类型对应的基本逻辑门的故障效应传播模型;其中,多个故障类型包括位翻转故障类型、随机故障类型和固定故障类型中的一种或多种;基于任意故障类型对应的基本逻辑门的故障效应传播模型,构建任意故障类型对应的电路的故障效应传播模型;基于电路的安全属性,对任意故障类型对应的电路的故障效应传播模型进行形式化断言,以确定电路的可靠性漏洞。
根据本发明实施例的可靠性验证方法,通过对电路的输入信号和输出信号添加故障属性标签,并基于输入信号、输出信号和故障属性标签构建多种故障类型对应的基本逻辑门的故障效应传播模型,随后,根据基本逻辑门的故障效应传播模型生成电路的故障效应传播模型,最后根据该故障效应传播模型对电路进行形式化断言,确定电路的可靠性漏洞,从而能够检测出电路中潜在的安全性和可靠性隐患,实现对电路设计的充分、有效的可靠性验证。
根据本发明的一个实施例,基于输入信号、输出信号和故障属性标签,构建任意故障类型对应的基本逻辑门的故障效应传播模型,包括:针对任意故障类型,基于输入信号、输出信号和故障属性标签,构建基本逻辑门的故障效应传播真值表;基于故障效应传播真值表,生成基本逻辑门的故障效应传播模型。
根据本发明的一个实施例,在基于故障效应传播真值表,生成基本逻辑门的故障效应传播模型之后,方法还包括:对基本逻辑门的故障效应传播模型进行简化、仿真和形式化验证,并在形式化验证通过后,得到最终的基本逻辑门的故障效应传播模型。
根据本发明的一个实施例,在任意故障类型为位翻转故障类型时,非门的故障效应传播模型为Oe=Ae;与门的故障效应传播模型为或门和或非门的故障效应传播模型为/>异或门和同或门的故障效应传播模型为/>其中,Oe为输出信号的故障属性标签,Ae为输入信号A的故障属性标签,/>为与输入信号A相反的信号,/>为与故障属性标签Ae相反的信号,Be为输入信号B的故障属性标签,/>为与输入信号B相反的信号,/>为与故障属性标签Be相反的信号。
根据本发明的一个实施例,在任意故障类型为随机故障类型时,非门的故障效应传播模型为Oe=Ae;与门的故障效应传播模型为Oe=ABe+AeB+AeBe;或门和或非门的故障效应传播模型为异或门和同或门的故障效应传播模型为Oe=Ae+Be;其中,Oe为输出信号的故障属性标签,Ae为输入信号A的故障属性标签,/>为与输入信号A相反的信号,Be为输入信号B的故障属性标签,/>为与输入信号B相反的信号。
根据本发明的一个实施例,在任意故障类型为Stuck-At-0故障类型时,非门的故障效应传播模型为Oe=AAe;与门的故障效应传播模型为Oe=AB(Ae+Be);或门的故障效应传播模型为异或门的故障效应传播模型为其中,Oe为输出信号的故障属性标签,Ae为输入信号A的故障属性标签,/>为与输入信号A相反的信号,Be为输入信号B的故障属性标签,/>为与输入信号B相反的信号,/>为与故障属性标签Be相反的信号。
根据本发明的一个实施例,在任意故障类型为Stuck-At-1故障类型时,非门的故障效应传播模型为Oe=AAe;与门的故障效应传播模型为或门的故障效应传播模型为/>异或门的故障效应传播模型为其中,Oe为输出信号的故障属性标签,Ae为输入信号A的故障属性标签,/>为与输入信号A相反的信号,/>为与故障属性标签Ae相反的信号,Be为输入信号B的故障属性标签,/>为与输入信号B相反的信号,/>为与故障属性标签Be相反的信号。
根据本发明的一个实施例,基于任意故障类型对应的基本逻辑门的故障效应传播模型,构建任意故障类型对应的电路的故障效应传播模型,包括:基于基本逻辑门构建电路的门极网表;针对任意故障类型,基于门极网表和任意故障类型对应的基本逻辑门的故障效应传播模型,构建得到任意故障类型对应的电路的故障效应传播模型。
根据本发明的一个实施例,方法还包括:采用二元决策图算法,对任意故障类型对应的电路的故障效应传播模型进行精确化处理。
根据本发明的一个实施例,基于电路的安全属性,对任意故障类型对应的电路的故障效应传播模型进行形式化断言,以确定电路的可靠性漏洞,包括:基于安全属性确定电路的故障效应传播模型的安全断言;将输入信号和输入信号对应的故障属性标签输入至电路的故障效应传播模型,以使电路的故障效应传播模型运行,并生成运行参数;基于运行参数验证安全断言,得到安全验证结果;基于安全验证结果确定电路的可靠性漏洞。
根据本发明的一个实施例,安全属性基于电路的信号正确性属性扩展得到,安全属性包括机密性和完整性。
为达到上述目的,本发明第二方面实施例提出了一种计算机可读存储介质,其上存储有电路的可靠性验证程序,该可靠性验证被处理器执行时实现前述的电路的可靠性验证方法。
根据本发明实施例的计算机可读存储介质,通过前述的电路可靠性验证方法,能够检测出电路中潜在的安全性和可靠性隐患,从而实现对电路设计的充分、有效的可靠性验证。
为达到上述目的,本发明第三方面实施例提出了一种验证工具,包括存储器、处理器及存储在存储器上并可在处理器上运行的电路的可靠性验证程序,处理器执行电路的可靠性验证程序时,实现前述的电路的可靠性验证方法。
根据本发明实施例的验证工具,通过前述的电路可靠性验证方法,能够检测出电路中潜在的安全性和可靠性隐患,实现对电路设计的充分、有效的可靠性验证,从而提高验证工具的可靠性验证性能。
为达到上述目的,本发明第四方面实施例提出了一种电路的可靠性验证装置,包括前述的验证工具。
根据本发明实施例的验证装置,通过前述的验证工具,能够检测出电路中潜在的安全性和可靠性隐患,实现对电路设计的充分、有效的可靠性验证,从而能够提高装置的可靠性验证性能。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
图1为根据本发明一个实施例的电路的可靠性验证方法的流程图;
图2为根据本发明一个实施例的电路的故障效应传播模型的结构框图;
图3为根据本发明一个实施例的验证工具的结构示意图;
图4为根据本发明一个实施例的电路的可靠性验证装置的结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
下面参考附图描述本发明实施例提出的电路的可靠性验证方法及验证工具、存储介质、验证装置。
图1为根据本发明一个实施例的电路的可靠性验证方法的流程图,参考图1所示,该方法包括:
S11,对电路的输入信号和输出信号添加故障属性标签;其中,故障属性标签用于指示输入信号和输出信号是否存在故障。
具体来说,在需要对电路进行可靠性验证时,可首先在电路的每个输入信号和输出信号上均添加故障标签,例如,参考图2所示,原始电路包括三个输入信号(I1,I2ΛI3),可对应添加三个故障属性标签(I1e,I2e,I3e),电路包括一个输出信号O,可为其添加一个故障属性标签Oe,其中,故障标签可设置为布尔变量,当信号存在故障时,信号的故障标签为逻辑1,当信号无故障时,故障标签为逻辑0。以分别标识这些信号的故障状态。可在电路运行前,通过对各个信号故障标签赋值的方式模拟电路的不同故障情况,也可在电路运行后,通过检测信号故障标签值确定此时电路信号的故障状态,以便实现后续的可靠性验证步骤。
需要说明的是,上述实施例中的原始电路中可包括多个输入信号和输出信号,原始电路包括的三个输入信号和一个输出信号是示例性的,不作为对本申请的限制。
S12,针对多个故障类型中的任意故障类型,基于输入信号、输出信号和故障属性标签,构建任意故障类型对应的基本逻辑门的故障效应传播模型;其中,多个故障类型包括位翻转故障类型、随机故障类型和固定故障类型中的一种或多种。
具体来说,故障效应传播模型是一种评估电路中故障的传播路径和影响范围的模型工具,该模型的基本结构如图2所示,该模型能够基于输入信号和对应的故障标签进行运行计算,以获得输出信号和对应的故障标签,从而实现评估故障效应传播路径的功能。在电路设计中,由于逻辑电路通常较为复杂,一次性对逻辑电路进行建模工程量较大,且存在大量重复运算,因此,可先建立针对基本逻辑门的故障效应传播模型,作为基础的故障效应传播模型库,在建立逻辑电路的故障效应传播模型时,从模型库选择模型组合成电路的故障效应传播模型,从而能够减少重复运算,从而降低电路故障效应传播模型的建模时间,提高方法的可靠性验证效率。
同时,由于位翻转故障类型、随机故障类型和固定故障类型对应的故障效应传播模型各不相同,而在电路设计中,对这些故障类型的安全和可靠性的约束性能要求也不全相同,因此,可按照实际需求,针对这些故障类型中的一种或多种进行基本逻辑门的故障效应传播模型的建模,以便进一步降低后续电路的故障效应传播模型的建模时间,从而提高方法的可靠性验证效率。
在一些实施例中,基于输入信号、输出信号和故障属性标签,构建任意故障类型对应的基本逻辑门的故障效应传播模型,包括:针对任意故障类型,基于输入信号、输出信号和故障属性标签,构建基本逻辑门的故障效应传播真值表;基于故障效应传播真值表,生成基本逻辑门的故障效应传播模型。
进一步的,在基于故障效应传播真值表,生成基本逻辑门的故障效应传播模型之后,方法还包括:对基本逻辑门的故障效应传播模型进行简化、仿真和形式化验证,并在形式化验证通过后,得到最终的基本逻辑门的故障效应传播模型。
具体来说,本发明实施例的基本逻辑门包括与门、非门、或门、与非门、或非门、同或门、异或门,在建立故障效应传播模型时,需要首选确定传播模型对应的故障类型和基本逻辑门,随后基于选定的故障类型的故障影响分析方法和基本逻辑门的运算逻辑,确定该基本逻辑门的故障效应传播真值表,该真值表包括输入信号、输出信号和故障属性标签,例如,当故障类型为位翻转故障,逻辑门为二输入与门时,此时的部分故障效应传播真值表如表1所示:
表1位翻转故障下的二输入与门的故障效应传播真值表
A B Ae Be A′ B′ AB A′B′ Oe
0 0 0 0 0 0 0 0 0
0 0 0 1 0 1 0 0 0
0 0 1 0 1 0 0 0 0
0 0 1 1 1 1 0 1 1
0 1 0 0 0 1 0 0 0
0 1 0 1 0 0 0 0 0
0 1 1 0 1 1 0 1 1
0 1 1 1 1 0 0 0 0
1 0 0 0 1 0 0 0 0
1 0 0 1 1 1 0 1 1
1 0 1 0 0 0 0 0 0
1 0 1 1 0 1 0 0 0
1 1 0 0 1 1 1 1 0
1 1 0 1 1 0 1 0 1
1 1 1 0 0 1 1 0 1
1 1 1 1 0 0 1 0 1
其中,A、B为两个输入信号,0为输出信号,Ae、Be、Oe分别为输入信号和输出信号对应的故障属性标签、A`、B`分别为A、B两个输入信号发生故障后的输入值;随后,使用真值表分析法,基于该真值表推导出对应的布尔函数,该布尔函数即表示基本逻辑门的故障效应传播模型;之后,可基于德摩根定律对该故障效应传播模型进行简化,再基于简化后的故障效应传播模型进行仿真和形式化验证,其中,形式化验证指基于仿真的故障效应传播模型,以穷尽搜索系统状态空间的方式判断该模型是否满足性质;当形式化验证通过时,即可确定简化后的故障效应传播模型是正确的,此时该简化后的模型即可为最终的基本逻辑门的故障效应传播模型。
由此,实现了基本逻辑门的故障效应传播模型的生成功能,且生成的故障效应传播模型经过简化、仿真和形式化验证,因此实用性和准确率较高,从而能够提高方法的可靠性验证效率和准确率。
需要说明的是,本发明实施例的故障效应传播模型能够使用标准硬件描述语言(HDL,Hardware Description Language)进行描述,因此能够支持模拟、形式化验证以及安全性与可靠性在安全验证方面的硬件原型和仿真,相比于相关技术中的X-传播模型仅能支持仿真和形式化验证,不支持硬件原型和仿真,本发明实施例的故障效应传播模型显示具有适用性上的优势。
在一些实施例中,在任意故障类型为位翻转故障类型时,非门的故障效应传播模型为下述公式(1):
Oe=Ae;(1)
与门的故障效应传播模型为下述公式(2):
或门和或非门的故障效应传播模型为下述公式(3):
异或门和同或门的故障效应传播模型为下述公式(4):
其中,Oe为输出信号的故障属性标签,Ae为输入信号A的故障属性标签,为与输入信号A相反的信号,/>为与故障属性标签Ae相反的信号,Be为输入信号B的故障属性标签,/>为与输入信号B相反的信号,/>为与故障属性标签Be相反的信号。
具体来说,位翻转故障是指一种状态翻转现象,产生该故障的数据位会暂时或永久采用与预期正确值的相反值或互补。因此,基于以上位翻转故障的传播特性,结合基本逻辑门的运算逻辑,确定位翻转故障下多种基本逻辑门的真值表,进而能够以较为简单的方式确定对应的故障效应传播模型;另外,本申请中的基本逻辑门中,非门为单输入逻辑门,其他为二输入逻辑门,这些基本逻辑门的通用性更高,有利于后续的电路的建模。
当基本逻辑门为非门时,由于反相器对故障很敏感,因为输入线路中任何故障都会反映在输出中,因此,可得出非门的故障效应传播模型为上述公式(1);当基本逻辑门为与门时,此时可基于与门逻辑真值表和故障分析法,得到的故障效应传播真值表,如前述表1所示:通过真值表分析法对表1进行分析,即可得到最后故障效应传播模型为上述公式(2),真值表转换为布尔函数过程在此不做展开。
当基本逻辑门为或门以及或非门时,由于或门的布尔函数为下述公式(5):
O=A+B(5)
另外根据德摩根定律,公式(3)也可转化为下述公式(6):
其中,表示与输出信号O相反的信号,由于O和/>的故障属性标签均为Oe,同时,输入信号A、B和与他们相反的信号/>也具有相同的故障属性标签Ae、Be,因此,或门和或非门具有相同的故障效应传播模型,与前述的与门的故障效应传播模型生成方法类似,通过对位翻转故障下或门的故障效应传播模型真值表进行分析,可得到或门的故障效应传播模型为上述公式(3)。
当基本逻辑门为异或门和同或门,可先对异或门进行分析,异或门的布尔函数为下述公式(6):
对上述公式(6)分析可知,异或门对单输入信号翻转敏感,而两个输入信号均产生位翻转时,异或门输出信号不变,因此,可得到异或门的故障效应传播模型为上述公式(4);同时,基于前述关于或门和或非门的故障效应传播模型的分析可知,异或门和同或门也具有相同的传播模型,以此,可确定同或门的故障效应传播模型也为上述公式(4)。
进一步的,在任意故障类型为随机故障类型时,非门的故障效应传播模型为下述公式(7):
Oe=Ae(7)
与门的故障效应传播模型为下述公式(8):
Oe=ABe+AeB+AeBe(8)
或门和或非门的故障效应传播模型为下述公式(9):
异或门和同或门的故障效应传播模型为下述公式(10):
Oe=Ae+Be(10)
其中,Oe为输出信号的故障属性标签,Ae为输入信号A的故障属性标签,为与输入信号A相反的信号,Be为输入信号B的故障属性标签,/>为与输入信号B相反的信号。
具体来说,随机故障是指输入信号变为不确定状态的故障,发生随机故障的输入信号会变为不确定信号,使输出信号既不为逻辑1也不为逻辑0。基于上述随机故障的传播特性以及基本逻辑门的逻辑真值表,即可确定随机故障下的基本逻辑门的故障效应传播模型,确定方法如下:
当基本逻辑门为非门时,由于反相器对故障很敏感,因为输入线路中任何故障都会反映在输出中,因此,可得出非门的故障效应传播模型可为上述公式(7);当基本逻辑门为与门时,此时可基于与门逻辑真值表和故障分析法,得到表2所示的故障效应传播真值表:
表2:随机故障下的二输入与门的故障效应传播真值表
A B O Ae Be O` Oe
0 0 0 0 1 0 0
0 0 0 1 0 0 0
0 0 0 1 1 x 1
0 1 0 0 1 0 0
0 1 0 1 0 x 1
0 1 0 1 1 x 1
1 0 0 0 1 x 1
1 0 0 1 0 0 0
1 0 0 1 1 x 1
1 1 1 0 1 x 1
1 1 1 1 0 x 1
1 1 1 1 1 x 1
其中,X表示输出信号的不确定状态,再通过真值表分析法对表2所示真值表进行分析,即可得到故障效应传播模型为上述公式(8),真值表转换为布尔函数过程在此不做展开。
需要说明的是,随机故障下或门、或非门、异或门和同或门的故障效应传播模型的获取方法与前述的非门类似,即基于与门逻辑真值表和故障分析法,获取对应的故障效应传播真值表,随后基于故障效应传播真值表得到对应的故障效应传播模型,同时由上述可知或门和或非门的故障效应传播模型相同,且异或门和同或门的故障效应传播模型相同,因此可得到或门和或非门的故障效应传播模型为上述公式(9),异或门和同或门的故障效应传播模型为上述公式(10),这些基本逻辑门的故障效应传播真值表及转换为布尔函数的具体过程在此不做赘述。
进一步的,在任意故障类型为Stuck-At-0故障类型时,非门的故障效应传播模型为下述公式(11):
Oe=AAe (11)
与门的故障效应传播模型为下述公式(12):
Oe=AB(Ae+Be) (12)
或门的故障效应传播模型为下述公式(13):
异或门的故障效应传播模型为下述公式(14):
其中,Oe为输出信号的故障属性标签,Ae为输入信号A的故障属性标签,为与输入信号A相反的信号,Be为输入信号B的故障属性标签,/>为与输入信号B相反的信号,/>为与故障属性标签Be相反的信号。
进一步的,在任意故障类型为Stuck-At-1故障类型时,非门的故障效应传播模型为下述公式(15):
Oe=AAe(15)
与门的故障效应传播模型为下述公式(16):
或门的故障效应传播模型为下述公式(17):
异或门的故障效应传播模型为下述公式(18):
其中,Oe为输出信号的故障属性标签,Ae为输入信号A的故障属性标签,为与输入信号A相反的信号,/>为与故障属性标签Ae相反的信号,Be为输入信号B的故障属性标签,/>为与输入信号B相反的信号,/>为与故障属性标签Be相反的信号。
具体来说,固定故障类型表示发生该故障的数据位锁死在某个状态,可基于锁死的状态将固定故障分为Stuck-At-0故障和Stuck-At-1故障,其中,为Stuck-At-0故障表示数据位锁死在逻辑0上,Stuck-At-1故障表示数据位锁死在逻辑1上。基于这两种故障类型,可通过故障效应传播特性分析和生成故障效应传播真值表结合的方法,获取对应的基本逻辑门的故障效应传播模型。
例如,在故障类型为Stuck-At-0故障的情况下,当基本逻辑门为非门时,由于该故障仅在非门的输入为逻辑1时传播至输出信号,因此,Stuck-At-0故障下,非门的故障效应传播模型可为上述公式(11);当基本逻辑门为与门时,当且仅当两个输入信号均为逻辑1时,在输出端会观察到stuck-at-0故障,因此,与门的故障效应传播模型可为上述公式(12);当基本逻辑门为或门时,基于德摩根定律,或门的布尔函数可为下述公式(19),:
或门的故障效应传播模型可基于与门和或门的布尔函数推导,即如下述公式(20)所示:
由此,即可得到或门的故障效应传播模型为前述的公式(13);当基本逻辑门为异或门时,则可根据stuck-at-0故障效应传播逻辑和异或门的运算逻辑,列写此时的故障效应传播真值表,再根据该真值表确定此时的故障效应传播模型,即可确定在stuck-at-0故障下的故障效应传播模型为上述公式(14)。
相似的,在故障类型为Stuck-At-1故障的情况下,当基本逻辑门为非门时,该故障仅在非门的输入为逻辑0时传播至输出信号,因此可得到非门的故障效应传播模型为上述公式(15);基本逻辑门为与门时,仅当输入信号为逻辑0的一条输入线路存在故障,而另一条输入为无故障逻辑1或也存在故障时,Stuck-At-1故障会传播到输出信号,因此,与门的故障效应传播模型可为上述公式(16),当基本逻辑门为或门时,根据德摩根定律,可得到下述公式(21):
由上述公式(21)可以确定或门的故障效应传播模型为上述公式(17);当基本逻辑门为或异或门时,由于Stuck-At-1故障下的异或门故障效应传播模型与Stuck-At-0故障下的异或门故障效应传播模型时对偶模型,因此,根据布尔函数的对偶运算规则对上述Stuck-At-0故障下的异或门故障效应传播模型进行转换后,即可得到Stuck-At-1故障下的异或门故障效应传播模型为上述公式(18)。
由此,通过结合故障效应传播方式和基本逻辑门的运算逻辑,在故障效应传播方式简单时直接推导出对应的故障效应传播模型,在故障效应传播方式复杂时,通过生成故障效应传播真值表,基于真值表推导布尔函数,生成对应的故障效应传播模型,从而实现了位翻转故障类型、随机故障类型和固定故障类型情况下,多种基本逻辑门的故障效应传播模型的生成功能,在面对上述多种故障类型中的一种或多种的形式化验证时,这些故障效应传播模型可直接应用,从而能够提高形式化验证的验证效率。
S13,基于任意故障类型对应的基本逻辑门的故障效应传播模型,构建任意故障类型对应的电路的故障效应传播模型;
在一些实施例中,基于任意故障类型对应的基本逻辑门的故障效应传播模型,构建任意故障类型对应的电路的故障效应传播模型,包括:基于基本逻辑门构建电路的门极网表;针对任意故障类型,基于门极网表和任意故障类型对应的基本逻辑门的故障效应传播模型,构建得到任意故障类型对应的电路的故障效应传播模型。
具体来说,当确定了基本逻辑门的故障效应传播模型后,此时可首先基于上述的基本逻辑门对电路进行逻辑综合,例如,可使用SDC(Synopsys Design Compiler,synopsys设计编译器)软件处理电路的Verilog(一种硬件描述语言)代码,以生成对应的门极网表来描述电路中各种基本逻辑门的关系;随后,在多种故障类型中选中任意类型,根据前述步骤中构建的各种针对不同故障类型的基本逻辑门的故障效应传播模型库中,按照门极网表的基本逻辑门及其连接关系,选择对应的故障效应传播模型构建得到选中故障类型对应的电路故障效应传播模型,该模型可以反映电路中,不同的输入信号出现选中故障后,输出信号的变化情况,以用于进行后续的可靠性验证。
进一步的,方法还包括:采用二元决策图算法,对任意故障类型对应的电路的故障效应传播模型进行精确化处理。
具体来说,二元决策图(binary decision diagram,BDD)是一种基于香农分解的有向无环图,二元决策图算法能够将消除电路的故障效应传播模型中的不确定性,从而能够实现了对电路的故障效应传播模型的精确化处理,提高模型的准确率,该算法的具体原理在此不做展开。
S14,基于电路的安全属性,对任意故障类型对应的电路的故障效应传播模型进行形式化断言,以确定电路的可靠性漏洞。
在一些实施例中,基于电路的安全属性,对任意故障类型对应的电路的故障效应传播模型进行形式化断言,以确定电路的可靠性漏洞,包括:基于安全属性确定电路的故障效应传播模型的安全断言;将输入信号和输入信号对应的故障属性标签输入至电路的故障效应传播模型,以使电路的故障效应传播模型运行,并生成运行参数;基于运行参数验证安全断言,得到安全验证结果;基于安全验证结果确定电路的可靠性漏洞。
具体来说,形式化断言是安全和可靠性验证的基本方法之一,其中安全和可靠性验证是指一种在流片前对硬件知识产权(IP,Intellectual Property)核进行基于算法的逻辑验证。安全验证能够穷尽的证明一些定义好的安全属性在一个硬件设计中是否始终被遵守,相比于其他类型的安全验证方法,形式化断言能够完全断定设计的正确性,对指定描述的所有可能情况进行验证,因此具有完备性高的特性,同时,形式化断言能够更早发现和改正设计缺陷,从而缩短电路开发周期和降低电路开发成本。因此,通过使用形式化断言对电路进行可靠性验证,能够使可靠性验证更加充分。
本发明实施例的形式化断言方法包括:基于某种定义好的安全属性对电路的故障效应传播模型进行安全断言,其中安全断言是指,假设目标电路具有某种安全属性,则该电路的故障效应传播模型地输出结果应当满足对应的预期条件,安全断言中,包括输入信号值、输入信号的故障属性标签值、安全属性和预期地输出结果;随后将输入信号和对应的故障属性标签输入电路的故障效应传播模型进行运行,并生成多组运行参数;最后,检测运行参数以得到安全验证结果,其中安全验证结果指运行参数是否均满足安全断言中的预期输出结果,如果满足,则表示本次安全验证结果为通过,电路不存在可靠性漏洞;同时,如果这些运行参数存在至少一组不满足预计地输出结果,则此次安全验证结果为未通过,此时,可基于未满足输出结果的运行参数生成一个不满足形式化断言的反例,以用于分析和确定电路的可靠性漏洞,由此,实现了对电路的安全和可靠性验证。
需要说明的是,形式化断言对电路的安全和可靠性验证的准确率依赖于故障效应传播模型的准确性,而本发明实施例中,通过前述的电路故障效应传播模型的建模,以及使用二元决策图算法对电路故障效应传播模型的精确化处理,能够有效提高电路故障效应传播模型的准确性,因此,本发明实施例的形式化断言对电路的可靠性验证的有效性较高;另外,形式化断言能够在电路未通过安全验证时,生成一个不满足形式化断言的反例,以便快速的确定电路的可靠性漏洞,从而能够提高方法的有效性和实用性。
进一步的,安全属性基于电路的信号正确性属性扩展得到,安全属性包括机密性和完整性。
具体来说,除了基础的信号正确性,安全属性还包括基于电路的信号正确性为前提扩展得到的不同属性,例如机密性、完整性、隔离特性等,这些安全属性在电路的信号正确性的前提下,还具有其他方面的特殊要求,例如,机密性在电路信号正确性的前提下,还要确保被保护的机密信息不发生泄露等,可基于这些安全属性的特殊要求,预先确定对电路的安全属性的验证方法,并组成安全属性库,例如,可事先编辑好安全属性的验证语句,并列入安全属性库中,在实际的电路可靠性验证时,直接从安全属性库中选取对应的验证语句添加到电路的可靠性验证语句中,以实现对应的安全属性验证,从而能够提高方法对电路可靠性的验证覆盖面和验证效率。
综上所述,根据本发明实施例的可靠性验证方法,通过对电路的输入信号和输出信号添加故障属性标签,并基于输入信号、输出信号和故障属性标签构建多种故障类型对应的基本逻辑门的故障效应传播模型,随后,根据基本逻辑门的故障效应传播模型生成电路的故障效应传播模型,最后根据该故障效应传播模型对电路进行形式化断言,确定电路的可靠性漏洞,从而能够检测出电路中潜在的安全性和可靠性隐患,实现对电路设计的充分、有效的可靠性验证;同时,通过在建立电路的故障效应传播模型后,通过二元决策图算法对故障效应传播模型进行精确化处理,从而提高了故障效应传播模型的精确度,进一步提高了方法对电路可靠性验证的有效性;最后,本发明实施例的故障效应传播模型均可通过硬件描述语言描述,从而使模型能够支持模拟、形式化验证以及安全性与可靠性在安全验证方面的硬件原型和仿真,从而提高了方法的适用性。
对应上述实施例,本发明实施例还提供了一种计算机可读存储介质,其上存储有电路的可靠性验证程序,该可靠性验证被处理器执行时实现前述的电路的可靠性验证方法。
根据本发明实施例的计算机可读存储介质,通过前述的电路可靠性验证方法,能够检测出电路中潜在的安全性和可靠性隐患,从而实现对电路设计的充分、有效的可靠性验证。
对应上述实施例,本发明实施例还提供了一种验证工具,参考图3所示,该验证工具100包括:存储器110、处理器120及存储在存储器110上并可在处理器120上运行的电路的可靠性验证程序,处理器120执行电路的可靠性验证程序时,实现前述的电路的可靠性验证方法。
根据本发明实施例的验证工具,通过前述的电路可靠性验证方法,能够检测出电路中潜在的安全性和可靠性隐患,实现对电路设计的充分、有效的可靠性验证,从而提高验证工具的可靠性验证性能。
对应上述实施例,本发明实施例还提供了一种电路的可靠性验证装置,参考图4所示,该验证装置1000包括前述的验证工具100。
根据本发明实施例的验证装置,通过前述的验证工具,能够检测出电路中潜在的安全性和可靠性隐患,实现对电路设计的充分、有效的可靠性验证,从而能够提高验证装置的可靠性验证性能和适用性。
需要说明的是,在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系,除非另有明确的限定。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (14)

1.一种电路的可靠性验证方法,其特征在于,所述方法包括:
对所述电路的输入信号和输出信号添加故障属性标签;其中,所述故障属性标签用于指示所述输入信号和所述输出信号是否存在故障;
针对多个故障类型中的任意故障类型,基于所述输入信号、所述输出信号和所述故障属性标签,构建所述任意故障类型对应的基本逻辑门的故障效应传播模型;其中,所述多个故障类型包括位翻转故障类型、随机故障类型和固定故障类型中的一种或多种;
基于所述任意故障类型对应的所述基本逻辑门的故障效应传播模型,构建所述任意故障类型对应的所述电路的故障效应传播模型;
基于所述电路的安全属性,对所述任意故障类型对应的所述电路的故障效应传播模型进行形式化断言,以确定所述电路的可靠性漏洞。
2.根据权利要求1所述的方法,其特征在于,所述基于所述输入信号、所述输出信号和所述故障属性标签,构建所述任意故障类型对应的基本逻辑门的故障效应传播模型,包括:
针对所述任意故障类型,基于所述输入信号、所述输出信号和所述故障属性标签,构建所述基本逻辑门的故障效应传播真值表;
基于所述故障效应传播真值表,生成所述基本逻辑门的故障效应传播模型。
3.根据权利要求2所述的方法,其特征在于,在基于所述故障效应传播真值表,生成所述基本逻辑门的故障效应传播模型之后,所述方法还包括:
对所述基本逻辑门的故障效应传播模型进行简化、仿真和形式化验证,并在形式化验证通过后,得到最终的基本逻辑门的故障效应传播模型。
4.根据权利要求1-3任一项所述的方法,其特征在于,在所述任意故障类型为所述位翻转故障类型时,
非门的故障效应传播模型为Oe=Ae
与门的故障效应传播模型为
或门和或非门的故障效应传播模型为
异或门和同或门的故障效应传播模型为
其中,Oe为所述输出信号的故障属性标签,Ae为输入信号A的故障属性标签,A为与所述输入信号A相反的信号,为与故障属性标签Ae相反的信号,Be为输入信号B的故障属性标签,/>为与所述输入信号B相反的信号,/>为与故障属性标签Be相反的信号。
5.根据权利要求1-3任一项所述的方法,其特征在于,在所述任意故障类型为所述随机故障类型时,
非门的故障效应传播模型为Oe=Ae
与门的故障效应传播模型为Oe=ABe+AeB+AeBe
或门和或非门的故障效应传播模型为
异或门和同或门的故障效应传播模型为Oe=Ae+Be
其中,Oe为所述输出信号的故障属性标签,Ae为输入信号A的故障属性标签,为与所述输入信号A相反的信号,Be为输入信号B的故障属性标签,/>为与所述输入信号B相反的信号。
6.根据权利要求1-3任一项所述的方法,其特征在于,在所述任意故障类型为Stuck-At-0故障类型时,
非门的故障效应传播模型为Oe=AAe
与门的故障效应传播模型为Oe=AB(Ae+Be);
或门的故障效应传播模型为
异或门的故障效应传播模型为
其中,Oe为所述输出信号的故障属性标签,Ae为输入信号A的故障属性标签,为与所述输入信号A相反的信号,Be为输入信号B的故障属性标签,/>为与所述输入信号B相反的信号,/>为与故障属性标签Be相反的信号。
7.根据权利要求1-3任一项所述的方法,其特征在于,在所述任意故障类型为Stuck-At-1故障类型时,
非门的故障效应传播模型为Oe=AAe
与门的故障效应传播模型为
或门的故障效应传播模型为
异或门的故障效应传播模型为
其中,Oe为所述输出信号的故障属性标签,Ae为输入信号A的故障属性标签,为与所述输入信号A相反的信号,/>为与故障属性标签Ae相反的信号,Be为输入信号B的故障属性标签,/>为与所述输入信号B相反的信号,/>为与故障属性标签Be相反的信号。
8.根据权利要求1-3任一项所述的方法,其特征在于,所述基于所述任意故障类型对应的所述基本逻辑门的故障效应传播模型,构建所述任意故障类型对应的所述电路的故障效应传播模型,包括:
基于所述基本逻辑门构建所述电路的门极网表;
针对所述任意故障类型,基于所述门极网表和所述任意故障类型对应的所述基本逻辑门的故障效应传播模型,构建得到所述任意故障类型对应的所述电路的故障效应传播模型。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
采用二元决策图算法,对所述任意故障类型对应的所述电路的故障效应传播模型进行精确化处理。
10.根据权利要求1-3任一项所述的方法,其特征在于,所述基于所述电路的安全属性,对所述任意故障类型对应的所述电路的故障效应传播模型进行形式化断言,以确定所述电路的可靠性漏洞,包括:
基于所述安全属性确定所述电路的故障效应传播模型的安全断言;
将所述输入信号和所述输入信号对应的故障属性标签输入至所述电路的故障效应传播模型,以使所述电路的故障效应传播模型运行,并生成运行参数;
基于所述运行参数验证所述安全断言,得到安全验证结果;
基于所述安全验证结果确定所述电路的可靠性漏洞。
11.根据权利要求10所述的方法,其特征在于,所述安全属性基于所述电路的信号正确性属性扩展得到,所述安全属性包括机密性和完整性。
12.一种计算机可读存储介质,其特征在于,其上存储有电路的可靠性验证程序,该可靠性验证被处理器执行时实现根据权利要求1-11中任一项所述的电路的可靠性验证方法。
13.一种验证工具,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的电路的可靠性验证程序,所述处理器执行所述电路的可靠性验证程序时,实现根据权利要求1-11中任一项所述的电路的可靠性验证方法。
14.一种电路的可靠性验证装置,其特征在于,包括根据权利要求13所述的验证工具。
CN202310545676.8A 2023-05-15 2023-05-15 电路的可靠性验证方法及验证工具、存储介质、验证装置 Pending CN116579293A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310545676.8A CN116579293A (zh) 2023-05-15 2023-05-15 电路的可靠性验证方法及验证工具、存储介质、验证装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310545676.8A CN116579293A (zh) 2023-05-15 2023-05-15 电路的可靠性验证方法及验证工具、存储介质、验证装置

Publications (1)

Publication Number Publication Date
CN116579293A true CN116579293A (zh) 2023-08-11

Family

ID=87539114

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310545676.8A Pending CN116579293A (zh) 2023-05-15 2023-05-15 电路的可靠性验证方法及验证工具、存储介质、验证装置

Country Status (1)

Country Link
CN (1) CN116579293A (zh)

Similar Documents

Publication Publication Date Title
Biere et al. Symbolic model checking without BDDs
Guo et al. Pre-silicon security verification and validation: A formal perspective
Van Eijk Sequential equivalence checking based on structural similarities
Guo et al. Scalable SoC trust verification using integrated theorem proving and model checking
Morin-Allory et al. Proven correct monitors from PSL specifications
CN110096907B (zh) 一种基于信息流安全验证的硬件木马检测方法
US9483595B2 (en) Method for scalable liveness verification via abstraction refinement
Plaza et al. Node mergers in the presence of don't cares
Letychevskyi et al. Modeling method for development of digital system algorithms based on programmable logic devices
US8453082B2 (en) Soft error verification in hardware designs
Chen et al. A two-variable model for SAT-based ATPG
Fedeli et al. Properties incompleteness evaluation by functional verification
US10515169B1 (en) System, method, and computer program product for computing formal coverage data compatible with dynamic verification
Eggersglüß et al. Robust algorithms for high quality test pattern generation using Boolean satisfiability
Mirzaei et al. A new approach for automatic test pattern generation in register transfer level circuits
Brayton et al. A toolbox for counter-example analysis and optimization
CN116579293A (zh) 电路的可靠性验证方法及验证工具、存储介质、验证装置
Chockler et al. Easier and more informative vacuity checks
US8104002B2 (en) Performing logic optimization and state-space reduction for hybrid verification
Frehse et al. A better-than-worst-case robustness measure
Tehranipoor et al. Hardware trojan detection: Untrusted third-party ip cores
US10546083B1 (en) System, method, and computer program product for improving coverage accuracy in formal verification
JP4899927B2 (ja) テストパターン自動生成方法およびテストパターン自動生成プログラム
Behnam Validation of Hardware Security and Trust: A Survey
Nešković et al. SystemC Model of Power Side-Channel Attacks Against AI Accelerators: Superstition or not?

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