基于ASPICE流程标准的车载电控单元正向开发研究

2020-07-27 15:51曾备
汽车实用技术 2020年13期
关键词:架构设计软件开发需求分析

曾备

摘 要:ASPICE是汽车行业软件开发的流程标准,可用于提高车载电控单元的研发质量;文章基于ASPICE流程框架,结合实际研发项目及ASPICE L2等级认证过程的经验,阐述了正向开发过程中各层级交付物的界定及追溯关系,并给出设计实例,说明了正向开发过程中软、硬件设计交付物的承接关系。

关键词:ASPICE;正向开发;软件开发;需求分析;架构设计;追溯关系

中图分类号:U463.6  文献标识码:A  文章编号:1671-7988(2020)13-46-04

Research on Forward Development of Vehicle Electronic Control Unit Based

on ASPICE Process Standard

Zeng Bei

( Automotive Engineering Research Institute of Guangzhou Automobile Group Co., Ltd.,

Guangdong Guangzhou 202004 )

Abstract: ASPICE is the process standard of software development in automobile industry, which can be used to improve the quality of vehicle electronic control unit (Ecu). This paper expounds the definition and traceability of each level of deliverables in the process of forward development, and gives some design examples to illustrate the relation between software and hardware design deliverables in the process of forward development.

Keywords: ASPICE; Forward development; Software development; Requirement analysis; Architectural design; Traceability

CLC NO.: U463.6  Document Code: A  Article ID: 1671-7988(2020)13-46-04

前言

隨着我国汽车自主品牌的发展,车载电控单元的自主研发成为主机厂的关键技术之一。为确保电控单元软、硬件产品的设计质量,产品的正向开发流程越来越受到国内厂商的重视。ASPICE作为汽车行业内软件开发的流程标准,较CMMI更适合汽车行业的软件开发[1],难点在于研发实践中,如何对不同层级的交付物进行界定,如何建立需求与设计的追溯关系,以及如何梳理软件设计与硬件设计的承接关系。

另一方面,在正向开发过程中,如何将整车功能需求分解到零部件的设计要求中,也是业内探讨的热点,有研究人员指出:零件之间构成的整车系统的功能实现、场景描述有限,更缺少部分性能指标的定义[2]。

1 ASPICE流程要求

以ASPICE 3.0版本为例,标准中共定义了32项流程,其中与车载电控单元软件设计相关的核心流程组包括系统工程(SYS)及软件工程流程组(SWE),共11项流程,并给出了相关交付物的追溯关系要求。本文基于以上11项流程及其交付物的追溯关系,阐述了系统开发流程与软件开发流程中交付物的实施案例,并补充了硬件开发流程与前两者的承接关系。

2 整车系统架构层级

架构就是对系统中的实体以及实体之间的关系所进行的抽象描述[3]。行业内通常将整车系统架构划分为7个层级,如图1所示:

其中,ASPICE标准中定义的系统开发流程(SYS)与软件开发流程(SWE),可以分别对应到零件级别(L3)及组件级别(L4),而SYS.2流程中要求的客户需求则可以对应到总成级别(L2)进行设计需求的统筹。本文就零件级别(L3)以下的设计过程及其示例进行分析阐述。

3 车载电控“钥匙电唤性”功能

3.1 总体流程

以车载电控单元“钥匙电唤醒”功能为例,详细阐述了其主要开发任务、设计产出,以及软、硬件设计的承接关系。以零部件系统需求分析(L3 SysRS)为起点的设计过程如图2所示。

由上图可以看出,按照正向开发流程,应先制定系统需求,然后通过系统架构设计,将系统需求分解到软、硬件设计需求上;根据硬件设计需求,逐步开展硬件架构设计及硬件详细设计;软件设计需求的制定依赖硬件架构设计(主要是芯片选型及电路设计),在进行软件架构设计之后,软件的详细设计也需要引用硬件的详细设计(主要是硬件引脚和资源的分配);整体上看,软件的设计过程要较硬件的设计过程滞后。

3.2 系统架构

以车载电控单元中与电源管理相关的原理图为例(注:只含功能示意)阐述各研究对象的层级关系,电源管理原理图绘制了电控单元内部主芯片、电源芯片、CAN收发器的基本连接关系,以及各芯片与电控单元外部接口的连接关系,是Lv4 硬件架构设计的产物,用以指导Lv4软件需求的编制。

根据系统分层(参见图2),并结合硬件架构设计,可知不同层级的交付物关注的设计对象不同,每一层级的设计需求应围绕该层级的系统接口(边界)进行表述,以区分不同层级的设计要点(对应于测试用例的验证标准),如图3所示。

4 设计过程

4.1 系统需求分析

系统需求分析以零部件外围接口(如电压、电流、总线信号等)为分析对象,提取系统行为的设计需求。设计示例:以“钥匙电唤醒功能”为例,Lv3系统需求表述如下:

4.2 系统架构设计

系统架构设计以零部件整体为分析对象,划分系统的组成元素(软、硬件),界定组成元素的接口,并通过分析系统行为,将系统需求拆分为对各组成元素的功能需求,为组成元素的并行(相对地)开发奠定基础。设计示例:如图4所示。

Lv3系统架构设计的主要内容是将控制器的下层组件划分为HW/BSW/LLSW/ASW,针对“钥匙电唤醒”功能,将该功能分配给HW及BSW实现,并定义HW与BSW的接口,针对“钥匙电唤醒功能”,是由HW负责检测唤醒源,硬件唤醒后,运行BSW,由BSW判断系统的唤醒条件并控制主继电器控制管脚(MRD)的使能状态。

4.3 硬件需求分析

硬件需求分析以零部件硬件为分析对象,提取硬件相关的的设计需求。通过硬件需求分析,可以获得硬件选型(主要是芯片及外设)的基本依据,主要包括引脚资源、算力、存储资源、电源特性,以及运行环境要求等。设计示例:根据Lv3系统架构设计, Lv4硬件需求应包含2条,如下所示。

4.4 硬件架构设计

根据硬件需求分析,硬件架构设计将完成零部件内部硬件原理图的设计,确定硬件选型,是软件需求分析的重要依据;同时,硬件架构设计还会导致软件功能设计的差异,因此,硬件架构设计要先于软件需求分析完成,示例见图3。

4.5 硬件详细设计

硬件详细设计通常涉及到组件的布置、芯片引脚的选定、线路的排布以及电子元器件的匹配等。硬件的详细设计,会直接影响基础软件(BSW)对驱动程序的参数配置、信号解析等功能,因此,硬件的详细设计要在软件详细设计环节之前完成。示例从略。

4.6 软件需求分析

软件需求分析以零部件软件整体为分析对象,结合硬件选型的初步结果,提取软件相关的设计需求,主要包括从系统需求向下分解的功能要求,以及由硬件選型导致的附加功能要求。设计示例:根据Lv3系统架构设计,Lv4软件需求定义包含1条(从架构设计动态图4中,可以看出BSW只有一个输出动作Enable)。

4.7 软件架构设计

软件架构设计应确定软件的功能模块,确定软件模块之间的接口关系,确保软件模块可以并行开发。设计示例:以“钥匙电唤醒功能”为例,Lv4软件架构设计应划分各模块的功能及接口关系,如图5所示:

驱动代码模块(CDD)的唤醒任务包含了MRD脚的使能指令,该指令通过MSC模块发送并触发电源芯片的写寄存器操作,最终达到使能MRD脚的目的;其中,发送MSC指令还需访问PORT模块获取主芯片引脚的配置。

4.8 软件详细设计

软件模块的详细设计,包含功能逻辑的具体实现,目的是通过软件算法的优化,高效地实现目标输出,并满足软件资源的设计约束。设计示例:根据Lv4软件架构设计,如图4,需在PORT模块配置相关引脚信息,并在MSC模块中执行MSC指令的写寄存器操作,以下是Lv5详细设计文档应包含的内容。

5 结语

综上所述,ASPICE标准中要求的系统开发流程(SYS)及软件开发流程(SWE)可对应到车载电控单元零部件级别(L3)、组件级别(L4)及模块级别(L5)的交付物。各层级的架构设计文档,对上层的设计需求进行了分解,并根据下层的接口关系进行功能的分配,进而建立了上下层级设计需求的追溯关系。

但软、硬件的设计过程不是完全并行的,本文的研究及实践表明,硬件的设计过程要先于软件的设计过程,软件的需求、设计要基于硬件设计方案进行补充完善,内容较系统需求更为丰富且具有针对性,不是简单的形式上的分解。另一方面,基于接口需求的功能分解方法,同样适用于整车的

其它层级。

参考文献

[1] 徐秀华,陈勇等.汽车行业软件开发流程研究[A].中国汽车工程学会.2015中国汽车工程学会年会论文集(V4)[C].中国汽车工程学会:中国汽车工程学会,2015:4.

[2] 曹敬轩.整车电子电器功能开发模式探索[J].上海汽车,2018(6).

[3] Edward Crawley et al.,“The Influence of Architecture in Engineering Systems,”Engineering Systems Monograph (2004).

猜你喜欢
架构设计软件开发需求分析
基于云计算环境下的计算机网络安全存储系统的设计与实现
信息安全环境下的计算机软件开发研究
大学师生需求发展分析
基于UML技术的高校贫困生管理系统建模分析
指挥信息系统模拟训练评估需求分析
应用型本科大学英语后续课程建设之必要性探讨
基于智能终端的照护保险服务管理系统的架构设计
核电厂定期试验管理软件开发
FPGA软件开发过程中编码规范的作用
基于心电远程会诊平台实现医疗资源共享