登录 | 注册 退出 投稿

【汽车芯片】利用车辆控制网络进行汽车芯片测试的机制

专栏作者 2023-10-23

内容提要:本文提出了通过CANFlexRay网络对车载半导体芯片进行离线低抽象级别维护的测试访问机制,同时遵守相应的网络协议。这种机制确保了车辆乘员的安全性、可靠性和舒适性。


如今,航空和道路装备配备了多个电子控制单元(ECU),以确保安全性、可靠性和舒适性。此类ECU通过车辆控制网络(VCN)连接。通常,对集成电路进行结构化缺陷测试,这些缺陷一般在制造过程中发生。然而,车辆中的恶劣环境可能会导致芯片内部出现缺陷,从而导致灾难。我们的工作提出了通过VCN和片上测试电路对车载IC进行测试访问的机制;此外,所提出的测试访问机制符合VCN协议。本文考虑了两种著名的VCN,即控制器局域网(CAN)和FlexRay。

1.简介

车辆乘员和环境管理机构要求可靠性、安全性、舒适性和降低油耗。这种需求增加了车辆中电子系统的数量;因此,车载电子控制单元(ECU)之间的通信复杂度增加。这些ECU通过车辆控制网络(VCN)连接。ECU可以由主机处理器、通信控制器(CC)、差分总线收发器、存储器块、标准接口和不同的IP块组成。主处理器与不同的传感器和执行器耦合。在多种VCN中,控制器局域网(CAN)和FlexRay是最近车辆中广泛采用的网络。

此外,半导体器件向亚微米的技术扩展正在降低工艺变化的容限,并对集成电路的可靠性构成严重威胁。对于关键的实时应用,保证其组件的可靠性极其重要。因此,汽车电子系统的维护与车辆的机械维护一样重要,以确保安全性、可靠性和舒适性。及早检测到系统组件的退化有助于在其表现为失效之前采取适当的措施,否则失效可能会导致灾难。

汽车芯片的传统系统级测试方法侧重于功能测试以检测缺陷或不规则运行的原因。与结构化测试相比,此类功能测试通常需要大量的测试数据和测试时间,以保证测试质量。许多可靠的测试和诊断技术,例如扫描测试、基于扫描的逻辑内置自测试(BIST)、存储器BIST、模拟BIST,在制造过程中已经商业化。然而,由于连接焊盘数量有限或安全问题,这些可测试性设计(DFT)电路的测试接口有时会断开连接。

VCN支持每个网络节点的网络级功能测试;然而,它们并没有明确支持节点上半导体芯片的结构化测试。例如,ISO 26262标准化了车辆电气和/或电子系统的功能安全,但不包括车辆芯片的结构化测试。

当芯片是系统的一部分时,访问片上测试基础设施对于测试芯片非常重要。然而,通常由于I/O引脚数量有限或安全问题,在制造后测试后,对DFT电路的访问会被断开。因此,当IC嵌入到系统中时,很难发现结构缺陷。

车载诊断(OBD)系统广泛用于汽车应用,并且其功能和标准化不断提高。OBD系统允许用户通过安装的传感器访问车辆子系统的各种参数的状态。它们持续监控各种参数的状态,并通过仪表板上的指示灯通知驾驶员。然后,通过使用市售工具,技术人员可以在车辆保养和维修期间检索所需的诊断信息。OBD系统的应用范围已从发动机层面扩展到底盘、车身及附属装置。由于今天的汽车不再是机械系统,OBD系统可能不足以维持汽车的可靠性。因此,诊断必须扩展到半导体芯片级。

对半导体芯片的诊断不仅可以找出导致早期失效的物理弱点,还可以找出半导体芯片的老化引起的缺陷,从而在生命周期中引起严重的系统失效。由于芯片级诊断使用遗留基础设施进行结构测试,因此在诊断过程中必须可以访问它。

本文提出了通过CAN和FlexRay网络对车载半导体芯片进行离线低抽象级别维护的测试访问机制,同时遵守相应的网络协议。这种机制确保了车辆乘员的安全性、可靠性和舒适性。此外,它还可以用于医疗设备、工业自动化等。

剩余的文章组织如下。接下来的部分讨论半导体测试技术。“简介”部分介绍了两个VCN的基础知识。“通过VCN测试访问”部分介绍了建议的测试访问机制。本文在“结论”部分进行了总结。

2.半导体测试

电子系统制造完成后,需要进行两种类型的测试:功能测试和结构化测试。电路的功能测试是在假设其制造正确的情况下测试是否满足功能规格。结构化测试检查电路制造过程中或由于其老化而产生的故障。通过结构化测试,测试每个门的可用性、功能性和连通性。对于结构化测试,扫描测试技术是最广泛使用的可测试性设计(DFT)技术。

为了实现结构化测试,电路的每个可能的节点都实现了可控性和/或可观察性。在扫描测试中,存储元件(锁存器、触发器)被扫描单元替代,参见图1(a),以实现可控性和可观察性。扫描单元在测试模式期间构成移位寄存器,在功能模式期间构成存储元件,参见图1(b)。在测试模式期间,测试设备应用测试激励数据,该数据通过扫描链串行移入,并应用于相应的组合电路。针对所施加的测试激励的响应由扫描单元并行捕获,并通过扫描链串行移出电路。然后将捕获的响应与存储在测试设备中的预期响应进行比较。如果两个响应相同,则该设备没有缺陷,否则有缺陷。测试控制器负责通过测试电路传输测试数据。

1.png

图1.扫描设计(a)扫描单元和(b)具有组合逻辑云的扫描链

3.车辆控制网络

3.1 控制器局域网

控制器局域网是一种鲁棒的异步串行通信总线,具有保证无冲突消息传递、抗电磁场干扰能力强、能够自我诊断和修复数据错误等有效特性。CAN最初是为汽车行业开发的,旨在取代多个车载ECU之间的复杂通信。然而,由于其有效的特性,它被机器人、汽车工业和医疗设备所采用。

CAN总线使用事件触发协议,其中节点通过网络广播消息,目标节点根据消息ID接收消息。所有网络节点的CAN控制器对传入消息的标识符字段执行验收测试。如果消息标识符通过了节点的验收测试,则该消息被存储在接收寄存器中,否则被丢弃。

CAN帧有四种类型:数据帧、远程帧、错误帧和过载帧。数据帧在源节点和目的节点之间传输信息。根据标识符字段有两种数据帧格式:标准帧和扩展帧。在标准CAN帧中,有一个11位标识符,而在扩展CAN帧中有一个29位标识符字段,分别为网络提供2^11和2^29个唯一标识符。

CAN是一种面向消息的协议,数据消息在网络上传输,不需要任何显式的节点地址。特定类型的消息在网络上广播之前会被标记上唯一的标识符。消息的内容可以是任何特定的参数值,例如发动机温度、转速、油门等。每条消息都有一个通过网络的唯一标识符,该标识符也用于仲裁和优先级。较低值的标识符具有较高的优先级。

CAN协议基于消息标识符字段中每个消息的预编程优先级,通过非破坏性的逐位仲裁解决多个消息之间的总线访问冲突。CAN收发器接收总线值,即使它发送了,也能检测总线的逻辑电平。CAN总线采用线与逻辑实现,这意味着如果CAN总线上一个节点发送逻辑1,而另一个节点发送逻辑0,则接收到的位将为逻辑0。例如,如果一个节点发送逻辑1(消息标识符)并感测到逻辑0,则意味着另一个节点尝试传输具有相对较高优先级的帧。因此,丢失节点切换到接收模式并尝试稍后尝试帧传输。

3.2 FlexRay

FlexRay遵循时间触发协议,即TDMA(时分多址)。节点在通信周期中分配的时隙期间进行通信。图2所示为FlexRay通信协议的帧结构。FlexRay通信在64个递归通信周期中进行,每个通信周期由(1)静态段(基于TDMA)、(2)动态段(基于FTDMA)、(3)符号窗口和(4)NIT(网络空闲时间)组成。每个静态时隙仅分配给一个节点或不分配给任何节点,但可以将多个时隙分配给单个节点。动态段是一个可选的通信周期,其时隙长度是动态的,由迷你时隙组成。动态时隙可以动态地分配给节点。符号窗口是可选的通信周期,用于传输符号,即唤醒符号、冲突避免符号和媒体访问测试符号。网络空闲时间用于FlexRay节点之间的时钟同步。

2.png

图2.通信周期内的时序层次结构

在FlexRay协议中,时间被表示为微刻度、宏刻度和周期,参见图2。微刻度是通信节点的基本时间单位,它源自节点的振荡器,并且在节点之间可能有所不同。然而,宏时钟是全局时间的基本单位,它由整数个微时钟组成。一个通信周期或FlexRay协议中的一个周期由整数个宏标记组成。

FlexRay帧由三段组成:头部段、有效负载段和尾部段,如图3所示。帧结构的详细信息可以参考(资料1,关注牛喀网公众号,后台咨询下载)。头部段中的空帧指示符(NFI)位指示该帧是否为空帧(不包含有用数据)。如果NFI位为“高”,则帧的有效负载包含一些数据,否则所有有效负载字节为零。

3.png

图3. (a) FlexRay帧格式 (b) 动态段中传输帧的载荷段

4.通过VCN测试访问

图4说明了所提出的测试访问机制的基本概念。测试设备连接到VCN,VCN连接某些节点或ECU。为了测试嵌入在ECU上的半导体芯片,我们建议将目标ECU从功能模式切换到测试模式。随后,测试设备将测试激励数据发送到目标节点,并从同一节点接收测试响应数据。目标节点与测试设备之间的测试数据交换是通过相应的VCN进行的,同时遵守相应的网络协议。

4.png

图4.所提出的测试访问机制的概念

节点在测试模式和功能模式之间切换的过程取决于VCN的协议。通过CAN和FlexRay进行的测试访问将在以下小节中讨论。

4.1 通过FlexRay网络

本小节介绍了建议的通过FlexRay协议进行测试访问的方法。这里,NFI位用于区分测试数据帧和功能数据帧。测试数据在发送器侧的NFI位设置为“低”的情况下发送。换句话说,如果节点接收到的帧的NFI位为“0”并且其有效负载段中包含非零数据,则该帧将被视为测试数据帧。测试数据帧的格式如图5所示。测试数据帧的有效负载段中的第一个字节表示目标节点上的目标芯片的地址,其余字节包含测试数据。

5.png

图5.FlexRay帧承载测试数据的结构

为了测试节点上的芯片,测试设备在相应的时隙期间向目标节点发送测试数据帧。在节点端,测试控制器将测试数据路由到目标IC。

来自芯片的测试响应由相应的节点在分配的时隙期间通过响应帧发送到测试设备,响应帧是常规数据帧。然后将响应数据与测试设备的预期响应进行比较。

测试数据帧如图5所示。NFI位为

(1)“低”,有效负载段中带有测试激励数据

(2)“高”,有效负载段中包含测试响应数据。

4.2 通过CAN网络

在本小节中,介绍了基于CAN的测试访问机制。为了将CAN节点切换到测试模式,每个IC使用测试专用ID。一旦节点收到带有与特定IC相对应的测试专用ID的消息,它就会切换到测试模式。CAN网络的消息ID数量非常大,即2^11或2^29,并且通常车辆中通过CAN网络连接多达100个节点。因此,有许多未使用的消息ID可用于识别测试数据帧。对于n个IC,我们需要2n个消息ID来通过CAN网络传输测试数据,即n个ID用于n个IC的测试激励消息,n个ID用于测试响应消息。

在测试模式期间,节点测试控制器对目标IC执行测试操作。同样,测试控制器收集的测试响应被传输到测试设备,测试设备将观察到的响应与预期响应进行比较。

图6显示了一个包含五个节点(包括测试设备)的CAN网络示例。黑线显示网络连接。首先,测试设备广播一个CAN帧,消息ID21(红线所示),携带节点4芯片的测试激励数据。因此,只有节点4接收到该消息,相应的测试控制器对目标IC执行测试操作。针对所施加的激励的测试响应,然后由节点4用消息ID42为测试设备广播,如通过蓝线所指示的。因此,只有测试设备接受响应消息。

6.png

图6.测试设备与节点4之间通过CAN网络共享测试数据的示例图

这样,测试数据就可以在测试设备和目标IC的节点之间共享。

5.结论

在本文中,车载集成电路(IC)和测试设备之间的测试数据传输是通过两个车辆控制网络(VCN)实现的;控制器局域网(CAN)和FlexRay。此功能有助于对连接到VCN的节点的每个芯片进行定期维护活动,以提高可靠性。传输是在遵守两种网络协议的情况下进行的;因此,在功能操作期间不会产生任何开销。

 

33.png
详询“牛小喀”微信:NewCarRen


44.png

详询“牛小喀”微信:NewCarRen



作者:牛喀网专栏作者
牛喀网文章,未经授权不得转载!


下一篇: 【汽车芯片】通过FMEDA故障注入验证SPI安全架构
上一篇: 【汽车芯片】SoC芯片失效模式的自动生成方法
相关文章
返回顶部小火箭