有了具体的安全需求之后, 接下来就是进行系统级开发了。
整体来说目前针对系统开发的主要内容分为系统、硬件和软件方面的三个方面的需求。
在遵循汽车电子电气系统V型开发流程,从系统功能安全出发,在系统层面确定系统的技术安全要求((TSR),由功能安全要求(SFR)得到)),进行系统设计,按需要将系统划分为若干个子系统。在每个子系统之内,重新定义技术安全要求,完成子系统总体设计和详细设计。
- 首先是 “系统级产品开发的启动”,这个环节主要是依据实际情况更新项目计划和安全计划, 还需要创建测试计划、确认计划和评估计划;
- 接下来要明确技术安全需求规范, 技术安全需求规范是从功能安全要求和系统或者单元的架构设计中得到的,在这个规范里主要描述了
识别和控制系统自身故障, 以及其它系统故障的机制、 安全状态的达到或保持措施、 警示和降级方案的措施等。(可以查看术语导读部分)
有了技术安全需求规范之后, 就进入到了系统设计阶段。
系统设计阶段主要完成这几项工作
1、上述各项安全措施如何实现?
2、进一步细化系统架构。。。。
3、借助安全分析的安全设计验证(FMEA,FTA)
4、明确硬件和软件的接口规范等。
3.1系统总体设计
功能安全概念设计己经指出,为了保证电子电器系统的功能安全,所设计系统安全完整性等级须达到某个ASIL等级。
ASIL等级允许被分解,即具有较高ASIL等级的系统可以被分解为两个相互独立的具有较低ASIL等级的系统。通常这两个较低ASIL系统之间形成异构冗余。
举例:对于功能安全目标等级为C的系统,可供选择的分解方案有两种:
方案一:“QM+ASILC(C)(括号中的C即为原始的C)”,即采用安全完整性等级分别为QM和ASILC的两个形成系统异构冗余;
方案二:“ASILA(C)+ASILB(C)”,即采用安全完整性等级分别为ASILA和ASILB的两个形成系统异构冗余。
方案一的优势为:QM系统可以采用实验室己有设计,不足之处在于:ASILC(C)系统功能安全设计难度大
方案二的优势为:单个系统ASIL要求较低,易于实现,不足在于,设计工作量大
目前主流的OEM针对功能安全设计时,主要都是针对ASILC,即上述的方案一进行设计,基于上述选定。其中,主系统主体采用己有的或者是已经验证的系统,ASIL等级为QM;安全系统基于功能安全进行全新设计,设计目标为达到ASILC。
3.1.1技术安全需求
将概念设计阶段的功能安全要求从外部接口、限制条件、系统配置等方面要求进行约束,得到的是技术安全要求。技术安全要求涵盖安全机制,如系统的自身故障诊断、硬件故障和系统失效的探测、故障容错时间、控制措施等。初步得到的各项技术安全要求之间可能有重复,这是因为不同的安全目标分解到了相同的(子)系统。如果它们的ASIL等级不同,在系统设计时应该采用其中等级最高的一个,合并相同项。即可得到技术安全需求。
需要主意的是这其中会有针对软硬件接口的设计
为了顺利开展硬件层面和软件层面的设计,需要在系统设计时将技术安全要求分别分配至软硬件。软硬件接口(HIS)规范包括:硬件装置的运行模式和配置参数、硬件资源的公用和专用、硬件装置的访问机制、时序限制等等。
3.2硬件安全设计
在己经完成系统设计的情况下,对硬件电路及器件进行设计。硬件设计阶段,首先根据系统设计阶段得到的技术安全要求(TSR),制定硬件安全要求(HSR)作为硬件设计的目标,再依据硬件安全要求进行具体的设计,最后完成硬件架构度量的评估、随机硬件失效导致违背安全目标的评估(后续会针对主要的安全评估目标进行展开说明),并完成硬件集成测试。
硬件总体设计主要完成硬件安全要求的制定和硬件架构设计两项工作。
3.2.1硬件安全要求
将系统设计阶段得到的技术安全要求硬件相关部分在硬件层面充分细化,即得到硬件安全要求。对于硬件电路,每一个ASIL等级对应相应的失效率和故障诊断覆盖率,因此,为直观表示,本部分硬件安全要求列出单点故障诊断覆盖率、潜伏故障诊断覆盖率和随机硬件失效率三个量化指标。
3.2.2硬件架构设计
依据硬件安全要求,参考成熟的设计方案,设计硬件架构。细化主要的功能安全硬件电路,后续会在案例中详细展开。
3.3软件设计
在已经完成系统设计和硬件设计的基础上,参照IS026262:2011推荐的软件开发流程,对软件架构进行设计。
在启动软件开发之后,首先要根据技术安全要求制定软件安全要求(SSR),为软件设计提供目标;其次根据SSR完成软件架构设计;接着依次完成软件单元设计和实现、软件单元测试、软件集成和测试,最后进行软件安全要求验证,一般OEM主要进行的重点完成的前三个阶段的工作,包括SSR制定、软件架构设计、软件单元设计。
按照功能安全标准要求,在完成系统和软硬件设计之后,需要对设计阶段的工作进行验证,以确保该阶段制定的技术安全要求(TSR)、硬件安全要求(HSR)、软件安全要求(SSR),以及设计的系统架构、硬件架构、软件架构合理、完整。设计阶段的通常采取模拟、分析、测试等方法进行。验证通过即进入下一阶段的开发,否则返回修改。
小结:
- 制定技术安全要求,完成系统设计。依据功能安全要求,制定术安全要求,并分别分配相应的ASIL等级;在此基础上,设计安全系统。
- 制定硬件安全要求,完成硬件设计。将技术安全要求在硬件层面裁剪和细化,得到硬件安全要求,并为各部分分配相应的ASIL等级;在此基础上,设计详细的硬件系统,同时做必要的冗余设计和故障诊断设计。
- 制定软件安全要求,完成软件设计。将技术安全要求在软件层面裁剪和细化,得到软件安全要求,并为各部分分配相应的ASIL等级;在此基础上,进行系统的软件架构设计、单元设计,绘制各主程序和子程序的流程图,与硬件电路匹配。