摘要:新能源汽车的整车控制器(VCU)属于核心单元,负责整车功率、能量控制和网络、安全管理功能。为有效保证国产芯片方案整车控制器的生产质量,文章开展了整车控制器产品生产质量控制的功能测试和整车下线流程(EOL)测试技术研究,并研制了相关测试设备,实现国产芯片方案整车控制器的生产质量控制。
伴随美国对芯片领域的封锁和持续的全球性芯片短缺,我国从国家层面到企业层面都意识到芯片自主可控的重要性。国内的主机厂都纷纷开始启动基于国产芯片的电控零部件的配套工作[1]。
汽车是一个复杂的环境,电子元件必须能够在高温、低温、湿度、振动和其他恶劣条件下正常运行,且长时间稳定运行而不受损坏或衰减。为减少故障和事故的风险,保护驾驶员和乘客的安全,汽车电子的安全和可靠性至关重要。我国汽车芯片设计和工艺研究起步较晚,经验积累严重不足,国产化芯片的不成熟、质量水平波动等问题[2]成为制约其车规应用的障碍。对于目前阶段国产化芯片的质量控制水平,即使芯片出厂进行相对完整的测试和筛选,但是在整车控制器的生产中,芯片出厂后本身的质量缺陷仍会带来控制器产品的质量问题,为有效保证国产芯片方案整车控制器的生产质量,本文开展了国产芯片方案整车控制器的生产质量控制关键技术研究,并研制相关测试设备。
1 生产质量控制关键技术研究及设备研制
车规电控产品在生产过程中,功能测试和下线流程(End Of Line, EOL)测试是保证产品质量的重要环节[3-5]。
1.1 功能测试技术及设备研发
1.1.1功能测试需求
生产现场的功能测试,既要满足功能的覆盖度,又要满足生产节拍的高效性。功能测试设备需要满足不同型号控制器的测试,并且同一控制器也存在不同的配置的版本,因而需要能够通过改变相关的配置文件来快速适应不同控制器的测试。所有的测试记录能够上传到服务器,便于后续的追溯管理。
经过分析国产芯片的失效案例和对产品功能定义,本文定义了覆盖通信测试、模拟量测试、数字量测试、脉宽调制(Pulse Width Modulation, PWM)输出端口测试、高边驱动测试、低边驱动测试等11大项35条测试内容,对国产化整车控制器(Vehicle Controller Unit, VCU)产品的功能测试做了完整覆盖,如表1所示。
表1 功能测试柜测试功能列表
1.1.2功能测试设备研制
为了满足整车控制器的功能测试(Functional Circuit Test, FCT)和刷写程序的工序,整体架构采用工控机+板卡+信号调理板的模式,按钮开关输入以及四色的信号灯显示,设计自动化夹具来实现自动、快速的测试要求,设备整体的框图如图1所示。
图1 功能测试设备整体架构图
测试软件整体分为上层应用软件框架和硬件驱动抽象,硬件驱动抽象主要为板卡的驱动程序、信号调理及继电器矩阵开关驱动程序等,而上位软件主要用于用户的人机界面、微电子机械系统(Micro-Electro-Mechanical Systems, MEMS)接口、记录存储、测试系列代码和配置文件等,图2为功能测试软件软件架构框图。
在配置文件中,主要包含测试系列的配置和硬件的延时时间的配置等。
测试系列的配置:主要是用来配置不同硬件的测试项,以达到柔性化的测试目的,可以通过配置文件来定义所有的测试项和期望的反馈值。
图2 功能测试软件软件架构框图
延时时间配置:在所有测试项里,基本涉及硬件切换及通讯等待,为了压缩测试时间,必须定义一套标准时间延迟规范,降低不必要的等待时间。其中涉及的延时系统包括开关卡切换延时、数字万用表测量延时、电源上电延时、负载卡切换延时、电子负载延时、波形发生器延时、输入输出延时及控制器局域网(Controller Area Network,CAN)总线通信协议延时等。
为了提高效率,使用一拖三的设计方式,功能测试柜实物如图3所示。
1.2 EOL测试技术及设备研发
为了更好地对量产控制器进行质量管控,在生产的最后完全下线需要设计模拟整车环境的测试环节[5]。本文开发的下线自动测试设备,应用于生产现场的最后一道自动化测试工序。
EOL测试设备整体框图如图4所示,包括工控机、板卡、信号调理板、工装和操作按钮等,操作人员通过控制操作按钮来控制测试的启停,测试程序自动导入测试案例运行整车模型与待测控制器进行数据的交互,同时读取各硬线状态,通过反馈信号能判断软硬件执行是否正常,最终通过指示灯反馈测试的结果。
图3 功能测试柜实物图
图4 EOL测试设备整体框图
EOL测试设备系统所用整车模型包含驾驶员操作模型、电池模型、电机模型、车辆模型及电气附件的模型,各个子模型中都包含有丰富的逻辑库,只需要配置简单的参数就能匹配到各种项目和车型上。
EOL下线测试设备集成了自动测试软件组件,能够自动导入测试案例,自动读取测试案例,自动运行相关程序,自动生成测试报告。基于案例中的操作需求模拟驾驶员的启动、挂挡、加速、制动等相关操作,将驾驶员的指令转化为物理信号或者通讯信号发送给执行器,待测设备收到执行器的信号以后触发对应的应用控制程序,发送给测试处理器。测试处理器运行电机、电池及整车动力的相关模型,模拟整车的操作来响应待测设备的应用程序是否正确。基于特定的格式进行待测设备和测试设备之间的配置文件,将二者的硬件和软件映射起来。然后将配置文件导入测试组件中,进行解析,具体过程如图5所示。研制的EOL下线测试设备软件操作界面和设备实物图分别如图6、图7所示。
图5 自动测试案例导入流程
图6 EOL下线测试设备的软件界面
图7 EOL下线测试柜的实物图
2 测试案例的生成
国产MCU在应用的过程中会出现偶发的程序中的某个字段被更改的情况,在电控单元生产过程中,需要设计精确的测试案例来满足测试覆盖度的要求,需要花费大量的人力和时间成本。为此,本文开发了一种基于符号执行自动生成测试案例的方法,来提升案例设计的效率。
图8为符号执行分析流程图。符号执行就是将输入变量由符号表达式代替,使用符号表达式的运算模拟待测软件的执行。在执行过程中会收集各个分支(如if…else…)处与符号变量的约束关系。其实执行过程就是接触程序的形式化语义来分析代码的一种方法,具体的说就是求解霍尔逻辑的最弱前置条件。然后使用可满足性模理论(Satisfiability Modulo Theories, SMT)的求解器,自动生成对应该约束条件下待测程序的执行路径的测试输入数据。
图8 符号执行分析流程图
具体实施过程如下:首先,需要对源代码构建程序控制流图(Control Flow Graph, CFG),然后从CFG的起始位置进行模拟执行,执行过程中遇到的分支节点需要用约束求解器根据两条分支的可达形判断出是否继续执行此路径,模拟结束时,就可以完成此运行程序所有能达到的路径的分析,将会得到每一条达到路径的分析结果。然后采用“系统搜索”,它的搜索空间基于一棵树,树上的每一个节点都代表着布尔变量,每条边意味着布尔变量有两个选择,一个true一个false。一棵树有n个布尔变量公式,2个叶子节点,每一条由根到叶子节点这个路径都指派一组真值。然后在后端调用SMT 求解器用于计算条件组部分。
得到计算出来的测试案例,将自动保存记录,图9为实际应用中所生成的测试案例。
图9 生成的测试案例
为了确保所生产的测试案例能够覆盖程序中的所有语句,本文还利用覆盖度测试工具CTC++能自动计算测试的覆盖度,利用开发了相关软件脚本导入生成的测试案例,将测试案例导入CTC++测试工程里,运行测试脚本执行相关的自动测试和覆盖率的分析,会自动生成如图10所示的覆盖率报告。覆盖率测试报告根据测试需求会统计语句覆盖,条件覆盖,分支覆盖,修正条件判定(Modified Condition/Decision Coverage, MC/DC)覆盖等多种维度的覆盖率统计,便于统计自动生产的测试案例是否足够覆盖所有的程序语句,从而保障了程序中的所有字段都是正常未被修改。
图10 覆盖率报告
3 结束语
本文针对国产化芯片性能存在差距和质量水平波动等问题,展开整车控制器生产的质量控制关键技术研究以及相关测试设备的研制工作,FCT和EOL设备实现功能的覆盖度和软件覆盖率要求,同时通过自动测试实现满足生产节拍的高效性,有效保证了国产芯片方案整车控制器的生产质量,推进了国产化芯片的车规量产应用。
参考文献
[1] 赵子垚.补齐芯“链”方可自主可控[J].汽车纵横,2022 (8):60-63.
[2] 刘润庆.我国汽车芯片发展现状浅谈[J].信息系统工程,2022(10): 62-65.
[3] 汪晓东.Agilent汽车电子产品生产线在线测试系统和功能测试系统[J].国外电子测量技术,2014(5):4-9.
[4] 肖洁,陈竹,申冬海,等.新能源汽车电控系统功能测试平台的开发[J].客车技术与研究,2021(1):60-62.
[5] 李想.基于CAN和DoIP的汽车EOL诊断检测系统的设计和开发[D].南京:东南大学,2021.
END