20180621-ISO26262功能安全基础

        嵌入式安全分类:1,系统外部的攻击,主要包括软件中的逻辑攻击,入侵硬件系统的入侵攻击以及错误注入类的非入侵攻击这三大类。2,系统本身的安全功能方面,如功能安全。功能安全,指在设计过程中规定性考虑产品安全,并在整个开发过程中有序管理的一套系统。

         嵌入式系统的功能安全标准为IEC61508,将安全生命周期分为16个阶段。目前汽车上用的最多的是基于ISO26262进行功能安全开发及分析,该标准源于欧洲,是对IEC61508在汽车道路安全上的扩展,主要对电子电气和软件系统的安全研究,并定义了汽车中电子器件故障,安全性需要达到的等级。该标准基于V模型开发流程进行相应的功能安全规定及建议,V模型开发将软件开发与软件测试同步化,组件模块的开发及系统的开发都有与之对应的功能测试和非功能测试。如下图所示:

                            20180621-ISO26262功能安全基础

Figure1 V模型结构图(转自文献)

       ISO26262主要集中于错误操作电子电气安全相关的系统,或者这些系统交互导致的风险,这些风险不包括电击,高温,耐腐蚀性等相关的风险。ISO26262主要包括内容:概念,系统级产品开发,硬件产品开发,软件产品开发,产品化及经营,支持阶段,面向汽车安全等级(ASIL)和面向安全的分析等。对每个阶段,ISO26262规定了具体的安全管理要求和技术要求,包括:目标,范围,输入需求和输出等。

     ISO26262的几个阶段具体内容:

1,  功能安全管理,设计整个软件开发和开发后与安全相关的管理问题。包括复杂安全生命周期的组织,产品开发阶段的管理角色和职责,产品开发的安全管理需求,安全活动的计划协调,安全周期进展以及产品发布后负责功能安全的组织和人的职责。

ISO26262功能安全管理的系统完善,需要从公司层面实现安全管理体系,如下图所示。管理层对实施的策略进行决策,并对相关问题回顾。协调团队负责向管理层汇报相应问题及内部解释,内外部的协调沟通及审核。安全团队包括技术和产品质量的技术专家,负责各自开发过程中的功能安全实现。

20180621-ISO26262功能安全基础

Figure2 功能安全管理(转自文献)

2,  概念阶段,设计安全活动及文化。

3,  产品开发系统级阶段,考虑产品整体对外的接口,需求,开发和集成测试等。

20180621-ISO26262功能安全基础

Figure3 安全相关产品开发流程(转自文献)

4,  产品开发硬件阶段,制定计划 并规定相应的功能安全活动,安全需求规格及硬件设计,评估由于随机硬件错误引起的安全目标不符,硬件集成与测试。

5,  产品软件阶段,启动软件开发(制定计划);定义软件需求,验证软件需求与硬件需求与系统规定一致性;软件架构设计并验证软件架构需求;软件单元设计及实现;软件单元测试,说明软件单元完成其设计规格,不包含多余功能;软件集成与测试;验证软件安全需求。

6,  产品化及运营。


    汽车电池管理系统(BMS)对应的软件架构如下图所示:

                                                    20180621-ISO26262功能安全基础

Figure4 BMU软件架构(转自文献)

     在软件设计过程中需要有专门的功能安全保障模块,从软件的角度出发保障电池包及整车的功能安全。根据ISO26262的理念,其功能安全实现流程可以概括为以下几个步骤:

1,  从系统角度对电池管理系统进行风险分析,根据风险分析结果确定出功能安全的需求概念。

2,  区分软硬件功能安全设计,对软件而言,定义功能安全计划,评估功能安全工作量,对安全需求进行管理。

3,  开发过程中,采用模块验证,错误树(FTA)分析,设计失效(DFMEA)分析等方法对软件设计过程中的建模,单元测试,软件集成以及系统验证等针对功能安全单独分析。

(即基于可能的失效模式对现有设计产品进行安全性分析。)