STM32 SIL功能安全设计包
对于产品需要过SIL2/SIL3认证的客户,每个STM32 MCU系列都提供一个独立的STM32 SIL功能安全设计包,其中包括:安全手册和自检库。 结合STM32提供的硬件功能,利用安全手册和自检库,用户就可以继续开发满足安全认证要求的自己的代码了。
关于自检库,这里需要说明的是,ST提供的SIL自检库只是实现功能安全所需的安全机制的子集。用户可以将自检库压缩包中的库文件添加到实际工程中,该自检库已经包括了对CPU,FLASH和SRAM这些与具体应用无关部分的检测。然后用户还要再根据实际工程的需要,参考安全手册中列出的安全检测机制,自己通过代码实现其他的检测。比如,如果用到了中断或者I2C,而且跟安全功能相关,就要根据安全手册中这两部分的内容,添加检测代码。
STM32 SIL功能安全设计包的目的,就是帮助STM32的客户在开发需要获得IEC 61508 工业安全标准认证的产品的过程中,降低项目成本和复杂度,简化认证评估过程,缩短认证需要的时间。
STM32 SIL功能安全设计包的安全文档,有两大类:一类是前面提到过的安全手册,里面详细列出了在硬件层面,软件层面和应用层面可以采取的安全机制,来指导STM32用户设计出达到符合IEC61508标准的安全完整性等级的产品。每个STM32系列对应一份独立的安全手册,可以从ST官网(www.st.com/x-cube-stl)免费下载。 还有一类安全文档,包括FMEA和FMEDA。这两个文档是需要用户签NDA后才能拿到的。FMEA里列出了MCU失效模式和相关可以采取的检测方法。FMEDA里列出整个MCU和各个基本功能模块的失效率数据,它里面提供的失效数据与具体MCU的型号对应。在FMEDA文档中列出了适用的MCU型号,以及计算的条件假设。
SIL功能安全设计包中的X-CUBE-STL 自检库,检测了STM32内核的关键安全部件(CPU+SRAM+Flash)的随机硬件失效。该部分检测与应用无关,可以用在任何终端用户应用中。这里再强调一下,自检库只是产品获得认证最终需要实现的全部安全机制的子集,客户还需要根据实际情况,参考安全手册的说明自行开发其他部分的代码。 并且该自检库是通过库文件形式提供,独立于编译器,这意味着你可以选择你想要的编译环境。 X-CUBE-STL符合IEC 61508 SIL3 标准,所声称达到的诊断覆盖率都经过了ST独有的故障注入机制验证,并已经取得TÜV 莱茵认证,证书随自检库的压缩包提供。随自检库一起还提供了STL安全手册和用户指南,给用户提供在具体应用中使用该STL库的说明。 该X-CUBE-STL 自检库也需要签NDA才能获得。 使用X-CUBE-STL 自检库,单个STM32最高可以满足SIL2的要求,要达到SIL3系统必须是两颗STM32的1OO2架构,保证当一颗MCU出现故障后,系统还可以正常工作。
STM32系列基本都可以提供对应的安全文档(安全手册,FMEA,FMEDA)。除了少数的几个系列,大多数STM32系列都提供对应的X-CUBE-STL库。后续我们会陆续推出其他系列的X-CUBE-STL库并不断完善相关文档。 前面我们多次提到安全手册,FMEA等文档。这里以STM32F0为例,再为大家梳理一下STM32 SIL功能安全设计包中包含的五种文档: - STM32F0系列安全手册,描述了如何在安全相关系统的背景下使用STM32F0系列微控制器,并说明了为达到目标安全完整性等级,可以实施的安全机制,以及如何去符合其他的安全标准的说明 - STM32F0自检库安全手册,包含了用户在安全相关系统里使用STL自检库的相关说明 - STM32F0自检库用户手册,介绍X-CUBE-STL-F0自检库的结构及API使用等 - FMEA,提供针对STM32F0系列的失效模式与影响分析 - FMEDA,提供对具体MCU型号进行的,在已经实施给定安全机制的条件下得到的失效率数据 这五个文档除了第一个STM32F0系列安全手册以外,其他的都需要联系MCU市场人员申请。
|