查看原文
其他

汽车标定技术--ETK如何帮助Aurix实现快速原型、标定测量功能

快乐的肌肉 汽车MCU软件设计 2024-03-08


1.概述

2.ETK描述

    2.1 产品概述

    2.2 FETK-T1.1产品描述

    2.3 FETK-T1.1内部构造

    2.4 标定

    2.5 测量

3.数据访问概述

    3.1 标定访问

    3.2 测量访问

        3.2.1 DAP直接访问

        3.2.2 Trace访问

4.接插件定义

5.小结



1.概述

在之前我们聊到ED芯片在标定领域的场景覆盖,讲解了ETAS之前设计的ETK原理:通过并行数据和地址总线或通过串行MCU调试接口提供直接访问ECU的测量变量和控制参数;由于每家芯片厂debug和trace设计的不同,ETK作为硬件需要适配;通常来讲ETAS或者Vector会根据芯片厂对应芯片出货量来决定是否为其开发高速标定测量套件,所以我们发现ETK支持的芯片基本都是国际大厂,如下图:不过这也与国内对ED产品不重视有关,毕竟现在国产替代讲究小快灵,PIN2PIN移植量产产品,就不太需要搞贵而麻烦的ED。今天我们就针对Aurix系列来看看ETK和MCU调试如何协同。

2.ETK描述

2.1 产品概述

在讲细节之前,我们先熟悉ETK(Emulator Test Probe)三种不同产品:

ETK\XETK(兼容XCP)为30m的100Mbit/s以太网电缆

FETK为1000Mbit/s以太网电缆

接下来再看两种接口类型定义:

1.并行ECU接口

这种接口类型,在做标定时是将ECU的ROM/Flash的标定及部分功能函数映射到ETK中的CalRAM,做高速测量时使用ETK内部mailbox作为数据交互中转站,通过ECU程序的触发信号来实现数据同步,这就需要MCU内部提供数据\地址总线为ETK。


2.串行ECU接口

当MCU不能提供数据和地址总线时,通常一个配有扩展内存(放置CalRAM和Mailbox)的同类型MCU(ED产品)用于ECU开发。ETK、FETK或XETK接口通过调试接口(如JTAG、NEXUS或AURORA)实现长距离访问MCU

那么我们今天就来讲一下通过调试接口访问的串行ETK。

2.2 FETK-T1.1产品描述

根据ETAS官网的相关资料,FETK-T1.1是专为英飞凌AURIX设计的仿真硬件设备,该设备通过DAP接口和Aurora Trace接口与MCU相连接,具体参数如下:当然,这个硬件产品还有不同变体,T1.1A为TC2xx专用,T1.1B为TC3xx专用,这个暂时不提。同时需要和ES89x连接,才能实现上位机和ECU的交互,示意图如下:在该产品中,使用MCU的TRACE接口如Aurora可以实现大数据高速率吞吐的测量工作,使用debug接口可以实现标定和快速原型。

2.3 FETK-T1.1内部构造

如上图所示,FETK对外暴露了3个与ECU连接的物理接口,1个与ES89x连接的物理接口,具体作用如下:
接插件名 接口类型 作用
Debug(DAP) ECU接口 实现标定和Flash Programming(需要ProF控制)
Trace(Aurora) ECU接口 实现DAQ和STIM功能
Power ECU接口 给MCU中 Emulation RAM供电、标定唤醒等
Eth IF ES89x接口 千兆以太网接口实现上下位机零延迟交互
这里我们简单将FETK-T1.1的功能feature总结如下:

2.4 标定

  • FETK-T1.1使用DAP接口完成标定访问,可选2pin DAP(50\100 MHZ),3pin DAP(100\160 MHZ)

  • 利用AURIX overlay机制实现WP\RP管理

  • FETK-T1.1给MCU ERAM供电

  • FETK-T1.1支持标定唤醒MCU功能

  • 使用DAP完成Flash刷写,无须软件支持

2.5 测量

  • 利用Aurora接口与ECU连接,FETK-T1.1与ES89x千兆以外网接口连接实现高速测量:延迟15us

  • 基于ETAS Hook-based和hook-less测量模式


3.数据访问概述

接下来我们进一步描述AURIX结合FETK的数据访问方式。先回顾下串行ETK架构:
由于地址和数据总线没有暴露出来,因此串行ETK就只能通过debug或者trace接口访问MCU内部资源。 

3.1 标定访问方式

串行FETK需要MCU启动并与完成握手后才能开始进行测量和数据访问。与传统使用CAN\FlexRay接口标定类似,FETK仍使用Working Page和Reference Page概念。我们以Aurix Emulation Device(TC37x ED、TC39x ED)为例,具体Emulation RAM大小如下:
在ED产品里,RP仍然定位在ECU 内部Flash中,数据的修改只能通过Flash驱动编程;WP则位于MCU里ED RAM,如下图红框:
需要注意的是,这个EMEM只能用作标定数据的模拟,不能作为SRAM来使用。因此在设计时这块RAM的供电推荐由FETK进行供电。在ED产品里,EMEM作为WP其内容完全由INCA\FETK进行控制。当使能date emulation,FETK把Flash中的标定数据拷贝至EMEM中,激活WP即可开始进行标定。那么如何在FETK产品中实现页切换功能呢?这需要利用Aurix内核自带的overlay功能。INCA将页切换指令下发至EMEM中的mailbox,ECU内部软件通过识别该mailbox的指令响应开始执行页切换,完成切换后CPU就从Flash中去取标定数据,而FETK也直接从Flash去取标定数据显示在INCA上。


3.2 测量访问

测量数据的访问有两种方式,一种是通过Aurora trace接口,另一种通过DAP直接读访问。

3.2.1 DAP直接访问

FETK-T1.1可以用过硬件触发的方式直接发起测量数据读访问,该方式不适用高速测量(DAP限制)。具体等效电路连接如下:这种方式的测量是由FETK内部Trigger Unit进行周期触发,具体时间周期由A2L文件定义,最小100us,最长1s。注意,这里的时间基与ECU内部时间不同。

3.2.2 Trace访问

FETK-T1.1通过Aurora接口可以进行Trace测量,注意通过该访问进行测量仅支持ED产品。这种测量的访问触发有两种方式:
  • 通过MCU内部TRIG寄存器进行触发;
在ECU运行时,内部软件可以通过写CBS_TRIGS寄存器来设置CBS_TRIG状态,FETK通过IO_READ_TRIG周期(可配置)轮询CBS_TRIG,一旦发现置位,则产生了FETK硬件Trigger,从而实现Trace测量访问
  • 通过往预定义Trace地址写入预定义值进行触发
FETK-T1.1支持255个trace trigger,每个trigger对应一个RAM section;ECU内部软件通过往这些Trace trigger地址写入预定义值发生Trace测量访问
需要注意的是,这一部分内容,例如Aurix Ceberus系统描述,寄存器描述是需要签署NDA才会拿到,所以大家看手册的时候会发现datesheet缺少 这部分


4.接插件定义

  • DAP Mode接插件pin定义:


  •  Aurora Trace Pin定义

 

5.小结

有了上述基本概念,接下来我们可以继续查看DAP和Aurora相关内容学习。不过ETK这个ETAS的专利资料确实太少了,有一定的护城河,Vector也在适配。最后,以FETK-T1.1实物图结束本次科普,后续把DAP和Aurora知识恶补了再继续分享。

往期回顾:

1.汽车标定精选

万字长文:汽车标定技术--XCP概述
汽车标定技术--A2L格式分析
汽车标定技术--标定量与#pragma的趣事
汽车标定技术--A2L文件生成的方法

2.AUTOSAR精选

AUTOSAR OS概述(一)
AUTOSAR OS概述(二)
AUTOSAR 诊断栈分析(一)
AUTOSAR 诊断栈分析(二):DEM
AUTOSAR诊断栈分析(三):DTC状态位

3.汽车网络安全精选

汽车信息安全--MCU启动常用密码算法
汽车网络安全方案需求分析
汽车信息安全--常见车规MCU安全启动方案
车载信息安全场景概述

4.汽车功能安全精选


5.汽车虚拟化精选

    汽车ECU虚拟化技术初探(一)

    汽车ECU虚拟化技术(二)--U2A虚拟化功能

6.杂七杂八

    我为什么开始写技术博客

    Flash模拟EEPROM原理浅析

   征途漫漫:汽车MCU的国产替代往事

   车规MCU应用场景及国产替代进展


继续滑动看下一个

汽车标定技术--ETK如何帮助Aurix实现快速原型、标定测量功能

快乐的肌肉 汽车MCU软件设计
向上滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存