can控制器的软错误传播和影响分析.docx
2页1、 故障注入的方法Ø 基于硬件的故障注入或者物理故障注入,这种方法要求被测设备(DUT)是硬件形式的而且是在极端的故障可能性下Ø 软件实现故障注入(SWIFI),这种方法下DUT要求在实时硬件(常常是FPGA),预定义的故障向量在合适的时间内被注入到DUT位流Ø 基于仿真的故障注入,这种方法最常见,整个处理在仿真环境下完成,故障信号在仿真中的某些先期决定的时间里使用故障注入信号(FIS)激活发送该方法的优势如下:l 它需要较少的付出(但是可能要更多地时间)完成故障注入实验l 实验室可重复的,可以让其他人按步骤重做该实验l 该方法能够在实现硬件设计之前完成可靠性的评估2、 SINJECT 故障注入工具SINJECT故障注射器,是Sharif科技大学于2003年发明的,是在不同的抽象层对某些故障用Verilog或者VHDL语言建模的工具该工具的第一步是,编辑要被注射的模块,并将FIS信号加入到模块中这个多位信号将引起某些故障到预定义的寄存器,模块,门,输入/输出和内部信号 该实验中主要应用的模型是bit flip,因为它代表最近更关心的SEU,它包含如下步骤:A. 故障注入可靠性评估的第一步是故障注入,该步骤由在应用中产生所需的故障地点和它们的FIS信号完成,然后由该模型代替无故障的模型。
仿真器使得故障地址在仿真过程中的某些时间点激活故障B. 创建宏文件宏文件包括用于仿真整个工程的合适代码,在某些时间注入预定义的故障,之后将这些故障注射每次迭代的结果写到单独的清单文件中这些文件在接下来的评估中有用C. golden run一个无故障的运行(常常称作golden run)需要作为故障注入的参考,以用来判断一个故障是否导致了一次error(或失败) ,如果产生了error,那么error在一定数量的时间后能否恢复D. 失败条目为了决定一个事件在故障仿真过程中是否会导致错误或者失败,鉴定机需要知道系统的失败点因此,需要创建一个配置文件来决定整个系统的失败点然后鉴定机用该文件来决定一个错误对系统是否至关重要E. 仿真F. 评估故障注入仿真清单文件与golden run进行比较,在故障条目的帮助下,文件将被评估以决定系统中的故障信号或者错误仿真的结果将被写入任何一次单独的迭代,整个过程的平均结果也将被计算,结果包括故障信号,出现的时间,持续的时长,故障的传播,以及故障的评估延迟和可能的恢复3、 CAN错误注入本实现的目的是在评估Opencores网站上的基本CAN核心设计的故障容忍。
这一核心由几个模块组成,这些模块被在基本模块内部的CAN Top实例化,CAN Top本身被另一叫做CAN Testbench的代码测试这一代码中,几个任务,例如CAN FIFO的操作,缓冲区,手动和自动接收与传输 模块CAN Testbench实例化一个CAN Top,并且和它一起作为一个CAN核工作CAN Top自身实例化三个独立的模块叫做寄存器,位定时逻辑(BTL)以及位流处理器(BSP)结果显示CAN 中最脆弱的是BTP几乎所有的注入故障都能够导致系统失败相反的是,寄存器模块是故障最不敏感的,只有1.0%左右的故障在该模块中未被检测到,引起延迟错误。





