AURIX™ TC4x

引言

在之前的《AURIX™ TC4x虚拟化技术助力下一代汽车EE架构设计》一文中,我们已经介绍了嵌入式虚拟化的发展历史,基本概念,使用案例,它的优势以及当前面临的挑战。接下来,我们将深入探讨TC4x对虚拟化技术的硬件支持,软件开发流程以及现有的软件Demo。

1. AURIX™ TC4x虚拟化硬件架构 

AURIX™ TC4x在硬件上全面支持虚拟化技术,包括CPU虚拟化,内存虚拟化,中断虚拟化,外设虚拟化以及虚拟机之间的IPC通信(如图1所示)

1.png

图1  AURIX™ TC4x虚拟化架构

2. CPU虚拟化 

2.1 CPU虚拟化的硬件支持

我们知道,CPU的软件运行状态通过一套硬件资源簇来管理,图2是AURIX™ TC3x 1.6.2内核的硬件资源簇。

2.png

图2  AURIX™ TC3x内核硬件资源簇

TC4x 内核架构从1.6.2升级到1.8,一个重要的改变就是增加了对虚拟化的支持。为此,TC4x采用了三套硬件资源簇(HRA,HRB和HRHV)来管理CPU的运行(图3)。

3.png

图3  TC4x硬件资源簇

TC4x最多支持6个CPU,每一个CPU最多支持8个虚拟机。其中,VM0用作Hypervisor,负责调度上层的7个虚拟机(Guest VM),并由硬件资源簇HRHV来管控;VM1是一个实时虚拟机,独享硬件资源簇HRA;另外6个虚拟机VM2-VM7,共享硬件资源簇HRB,可通过轮询调度的方式去占用HRB。如图4所示:

4.png

图4  TC4x硬件资源簇与虚拟机的对应关系

内核复位后,虚拟化功能默认是打开的。通过修改VCON0的EN位,用户可以去使能或禁用某一个CPU的虚拟化功能。需要注意的是VCON0.EN位具有“write once”的属性,即在系统的一个上电周期内只能修改一次,二次修改该值无效。

每个CPU同一时刻只能有一个虚拟机运行,用户可以通过读取VCON1的CVMN位获取当前运行的虚拟机的Number。而下一个需要运行的目标虚拟机,则可以通过VCON2的VMN位进行设置。此外,为了支持虚拟机之前的切换,TriCore1.8内核引入了两个新的指令,RFH(Return from Hypervisor)和HVCALL:

  • RFH:用于Hypervisor到上层Guest VM的切换。客户在Hypervisor软件中调用RFH指令,则可以实现从Hypervisor到其他目标虚拟机的切换。

  • HVCALL:类似之前TriCore1.6的SYSCALL,用于上层Guest VM到Hypervisor的切换。因为上层VM之间不能直接切换,需要Hypervisor来统一调度,所以上层虚拟机执行完成之后,需要调用HVCALL回到Hypervisor软件中去。

2.2 虚拟机在CPU中的部署

CPU在复位之后都会先进入VM0(也就是Hypervisor软件),在Hypervisor中完成硬件资源的初始化后,则开始进行虚拟机的调度,虚拟机在CPU中的部署有如下几种:

Hypervisor上层只有一个虚拟机VM1运行(图5.a):类似传统的CPU,用户进入VM0之后可以直接切换到VM1,VM1独享CPU的硬件资源和周期性任务。

Hypervisor上层有两个虚拟机VM1和VM2运行(图5.b):用户需要分别为VM1和VM2分配硬件资源,Hypervisor需要根据客户的需求调度VM1和VM2。

Hypervisor上层有两个以上VM运行(图5.c):由于VM2-VM7是共享一套资源簇HRB,所以每次切换到HRB进行操作时,需要特别指定是哪一个VM进行操作,一般客户可以通过轮询的方式去调度HRB里面的虚拟机。

5.png

图5 虚拟机在CPU中的部署

以上是单核的情况,在多核场景下,每一个核都可以灵活地使用不同的虚拟机分配机制来实现整个系统的调度,如图6所示:

6.png

图6 TC4x多核虚拟化

图7是虚拟机在不同CPU内部署的示例,假设我们有两个应用APP1和APP2,它们分别占用CPU0/1/2/3/4的VM1和CPU3/4/5的VM2。可以看到,不同CPU里面Hypervisor的调度是不同的,有可能存在一个VM独享CPU的情况(CPU0/1/2/5),也有可能需要Hypervisor去调度多个虚拟机(CPU3/4),具体如何使用可以根据客户的需求灵活配置。

7.png

图7 虚拟化部署示例

3. 内存虚拟化 

在TC2x/TC3x的内核架构中,内存保护都是任务层级的。操作系统通过MPU模块,对不同任务设置Memory的访问权限。这一功能在TC4x的内核架构中依然沿用,并且我们将任务层级的MPU保护称作Level 1 MPU。而当我们使能了虚拟化功能后,对于不同虚拟机之间的访问保护,则需要额外的MPU保护,我们将不同Guest VM(VM1-VM7)之间的MPU保护称作Level 2 MPU。如图8所示:

8.png

图8 TC4x L1/L2 MPU

3.1 Level 1 MPU保护

L1的MPU保护是通过HRx_CORECON.PROTEN寄存器的PROTEN位来使能。HRHV,HRA和HRB均可以独立设置是否使能L1的MPU保护。TC4x支持多达24个数据段和16个代码段的访问权限设置。客户可以在每一个VM的RTOS中,通过配置CPXEy,DPWEy以及DPREy寄存器来选择自身VM运行访问的数据段和代码段,并通过配置CPUx_HRx_PSW寄存器的PRS2和PRS位来切换不同任务需要保护的数据和代码段,TC4x最多支持8个保护寄存器簇(PRS0-PRS7)。图9是L1 MPU保护所涉及到的寄存器示意图。

9.png

图9 L1 MPU保护寄存器

3.2 Level 2 MPU保护

在使能了虚拟化功能之后,L2的MPU保护默认是开启的,用户可以根据自身需求,在Hypervisor软件中配置不同虚拟机的访问权限。HRHV_CPXE_x,HRHV_DPRE_x以及HRHV_DPWE_x中的x由VCON2.L2_PRS位来确定,其他的配置部分与L1 MPU相同。图10是L1 MPU保护所涉及到的寄存器示意图。

10.png

图10 L2 MPU保护寄存器

需要注意的是,如果系统出现L1 MPU的访问越界,则会触发硬件资源的Trap,如果出现L2 MPU访问的访问越界,则会触发Hypervisor的Trap。如果同时违背的L1 MPU和L2 MPU,则会按照L1 MPU的访问越界响应。

4. 中断虚拟化 

4.1 中断虚拟化的硬件支持

如下图所示,是TC3x和TC4x的服务请求控制寄存器(SRC),可以看到对于TC4x的SRC寄存器,除了我们熟悉的优先级配置SRPN,服务请求使能位SRE,以及服务控制类型TOS以外,还额外增加了VM的位域。这表明,对于每一个中断服务请求节点,用户可以设置VM0-VM7的选项,从而将中断的处理映射到某一个CPU的某一个VM中去。

11.png

图11 TC3x/TC4x SRC寄存器对比

4.2 虚拟机的中断仲裁和响应机制

中断控制单元ICU会对不同硬件资源簇内部的虚拟机中断服务请求进行仲裁,虚拟机是否参与仲裁由寄存器VMEMz.VMy的配置决定。仲裁采用轮询机制,VM0-VM1-VMz依次轮询,其中VMz表示的是HRB里面的虚拟机,HRB内部也按照轮询机制进行二级仲裁。当某一个虚拟机参与仲裁之后,其产生的最高优先级的中断服务请求会更新到VMxn_ICR的PIPN位等待ICU的仲裁。如下图(图12)所示:

12.png

图12 虚拟机的中断仲裁

此外,虚拟机的中断还支持抢占功能,用户可以对每一个虚拟机的中断设置抢占阈值,只有高于该阈值的优先级中断才可以抢占当前的虚拟机中断。该功能可通过配置VMn_PETHRESH寄存器的的PE_THRESH位域实现。

整个虚拟机的中断处理流程如下(图13):

  • 当产生中断的响应虚拟机为当前正在运行的虚拟机时,则不需要做任何的虚拟机切换,只需要确认当前VM的中断使能位VMn_ICR.IE置1,且其PIPN号大于正在运行的虚拟机的中断优先级号,则直接处理新的中断,否则新的中断将处于Pending状态。该机制适用于VM0,VM1以及VM2-7。

  • 当产生中断的响应虚拟机是Hypervisor,而当前正运行在VM1或者VM2-7时,则需要判断新中断的PIPN号是否大于Hypervisor的抢占阈值,如果大于抢占阈值且大于当前的CCPN号,则可以直接切到Hypervisor中执行新的中断,否则新的中断将处于Pending状态。

  • 当产生中断的响应虚拟机是VM1,而当前正运行在VM2-7,或者反过来的情形,则需要判断新中断的PIPN号是否大于正在运行的虚拟机的抢占阈值,如果大于抢占阈值且大于当前的CCPN号,此时会产生一个Hypervisor的Trap,然后在该Trap中做好虚拟机的配置工作,再切到新的虚拟机之后进行中断处理,否则新的中断将处于Pending状态。

  • 当产生的中断响应虚拟机时VM2-7,而当前正运行在VM2-7不同于之前虚拟机之中,则需要判断新中断的PIPN号是否大于正在运行的虚拟机的抢占阈值,如果大于抢占阈值且大于当前的CCPN号,此时会产生一个的Trap,然后在该Trap中进行虚拟机的Swap操作,再切到新的虚拟机之后进行中断处理,否则新的中断将处于Pending状态。

13.png

图13 虚拟机的中断处理流程

5. 外设虚拟化 

外设的访问权限是通过ACCEN寄存器来实现的,只有被ACCEN选中的Master才运行访问该外设的资源。TC3x中Master用6个bit的Tag ID表示。在TC4x中,我们对Master的定义做了额外的扩展,除了依据TAG ID以外,还额外增加了VM ID和PRS ID,客户可以设置任意CPU的任意VM对外设的访问权限。如下图所示:

14.png

图14 TC3x/TC4x外设寄存器保护

此外,TC4x针对原有的和SafetyEndinit 机制也做了修改,新的PROT和PROTE寄存器保护机制会兼顾不同虚拟机的寄存器权限设置,将寄存器修改的权限下发到VM层级。如下图所示:

15.png

图15 寄存器修改权限

6. IPC通信 

区别于之前的核间通信,引入虚拟机之后,还会涉及到虚拟机之间的通信(图16)。虚拟机直接按的通信一般可采用Share memory的方式。利用之前章节介绍的内存虚拟化机制,给不同虚拟机开辟一块共享内存用于信息交互。

16.png

图16 虚拟机的IPC通信

7. 虚拟化软件开发流程和例程 

7.1 虚拟化软件开发流程

一般来讲,虚拟化软件的开发可以分为四个步骤(图17):

1. 需求定义

首先,客户需要根据项目的实际需求,做系统级的资源分配。将不同的软件分配到不同的CPU,以及CPU内部不同的VM中去。

2. Hypervisor软件配置

有了最基本的硬件资源分配之后,客户需要开发一个统一的Hypervisor软件去管理和调度不同的虚拟机。

配置:包括对外设资源的分配,内存保护的设置以及中断资源的分配等

调度:根据客户的需求,设置不同的调度策略,如基于时间触发的调度或者基于事件响应的调度策略。

3. 虚拟机开发

Hypervisor软件开发完成之后,不同的虚拟机开发团队基于Hypervisor的配置,独立开发各自的应用,彼此之前没有任何外设,内存,中断的相互干扰。开发完成后,需要基于Hypervisor的调度策略做虚拟机层级的集成测试,以验证虚拟机应用的基本功能和可靠性。

4. 系统集成测试

不同虚拟机开发团队将各自的虚拟机集成到ECU中去,基于Hypervisor做系统级的集成测试,以验证整体功能的完整性和可靠性。

17.png

图17 虚拟机软件开发流程

7.2 虚拟化软件例程

7.2.1 Demo工程介绍

英飞凌将多个TC4x虚拟化的例程放在ADS Limited开发环境中,客户可通过ADS Limited搜索“Hypervisor”或者“Virtualized”等关键词找到相关例程。

本文以iLLD_TC4D9_ADS_Virtualization_Hypervisor_StandAlone这个Demo。该Demo支持All-in-one模式,即Hypervisor和虚拟机软件在同一个工程里面。此外,该Demo同时支持Standalone模式,即上述工程只提供Hypervisor的初始化配置和调度功能,虚拟机软件需要额外的软件支持,额外的软件包含iLLD_TC4D9_ADS_Blinky_LDE_Virtualized和iLLD_TC4D9_ADS_CAN_Loop_Back_Mode_Virtualized两个工程。两个工程的切换需要通过Ifx_Cfg.h里面的IFX_CFG_HYPERVISOR_STANDALONE完成。如图18所示:

18.png

图18 ADS中Hypervisor Demo介绍

7.2.2 Demo工程的启动流程

以All-in-one工程为例,下面是其启动流程(图19):

上电之后首先会运行芯片内部的boot,之后跳转的VM0的Start函数跑SSW软件,SSW软件和TC3x的启动流程类似,包括BIST测试,PLL的初始化,CSA的配置,Trap和中断向量表的配置等待

之后就正式开始Hypervisor软件的执行,主要包括对每一个core的初始化配置,L2的MPU保护,各个虚拟机的中断配置,调度策略的初始化等等。之后就确定下一个需要运行的目标虚拟机VM1,调用RFH指令切到VM1虚拟机

开始执行VM1里面的任务,在完成任务之后重新切回到Hypervisor里面进行下一次虚拟机的调度

19.png

图19 Hypervisor软件启动流程

7.2.3 Hypervisor的调度策略

该Demo支持两种调度策略(图20):

Counter Based:基于counter计数(事件触发)的调度策略,当Guest VM中的代码运行到某个counter值的时候,通过调用HVCALL切回Hypervisor,从而完成本次虚拟机的调度

Timer-interrupt based:基于STM定时器中断(时间触发)的调度策略,STM的中断响应配置为Hypervisor,当在Guest VM里面运行到某一个时刻,STM触发中断,此时non running VM的中断会触发Hypervisor Trap进入到Hypervisor,Hypervisor Trap的地址对应着调度表的地址,从而进行下一次调度。

20.png

图20 Hypervisor调度策略

该Demo可以实现多个虚拟机的轮询调度,客户可以根据自身的需求灵活地配置Hypervisor,实现适合自己项目开发的虚拟机配置和软件调度策略。

总结 

本文首先介绍了TC4x的硬件对虚拟化的全面支持,包括对CPU,Memory,中断,外设的虚拟化,以及虚拟机之间的IPC通信。其次,从实际项目开发的角度,介绍了嵌入式虚拟化的开发流程以及Hypervisor的两种调度策略。嵌入式虚拟化的引入,可以帮助可以更好地实现资源分配和安全隔离,帮助客户节省更多开发和集成的成本。

来源:英飞凌汽车电子生态圈

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 46

01、前言

英飞凌AURIX™ TC4x系列微控制器嵌入式代码支持包使您能够使用Simulink为英飞凌32位TriCore™ TC1.8 AURIX™ TC4x系列微控制器设计实时应用程序,以及英飞凌AURIX™ TC4x系列系统级芯片块集支持包使您能够使用Simulink为英飞凌AURIX™ TC4x系列PPU设计实时应用程序。支持包包含了外设和IO模块诸如 Digital IO, TMADC, DSADC, PWM, Encoder, Resolver, FCC, SENT, CDSP, QSPI and Hardware Interrupts。在MATLAB 2024a版本里,它允许您使用Green Hills®, TASKING® SmartCode, HighTec LLVM和Synopsys® MetaWare等第三方编译器编译和运行代码,和Synopsys Virtualizer Development Kit第三方软体进行模拟测试。

02、安装过程

以MATLAB 2024a版本为例,从Add-Ons里点击Get Hardware Support Package。

1724724499464683.png

输入AURIX,查找到相应的support package,执行install,然后点击右上角Manage Add-Ons。

1724724507741270.png

输入AURIX后,点击两个setup图标来配置。

1724724515676160.png

两个配置过程相同可分以下几个STEP:

Step1:选择第三方compiler,这里以TASKING® SmartCode为例

1724724525705973.png

Step2:选择对应工具,这里选择Infineon DAS

1724724533262123.png

Step3:安装相应的软件和工具

1724724547244262.png

生成的代码时基于英飞凌 TC4x 底层驱动库iLLD。下面分别validate安装好的软件和工具,输入相应的路径,点击validate。

编译器需要向第三方申请,DAS从下面的链接可以下载:https://www.infineon.com/dgdl/Infineon-DAS_V8_0_5_SETUP-DevelopmentTools-v08_04-EN.zip?fileId=8ac78c8c8929aa4d018992adcfe97a61 

1724724604146631.png

1724724623165992.png

1724724647583914.png

1724724659211178.png

至此支持包和工具安装完成。

安装完成后simulink Library Browser里可以看到这些内容,后续的版本里会逐步完善并增加内容。

1724724680946692.png

1724724698415051.png

03、使用HSP(Hardware Support Package)示例

以新建模型为例:

1724724714311059.png

設置此模型可連接到AURIX™ TC4x-TriBoards,以及板上的TC4x型號規格,和所運行的CPUx。

1724724728304921.png

配置完成以后,在model setting -----> code generation里指定build toolchain。

1724724744216848.png

Hardware implementation通过Target Hardware resource里的Build option选择build动作(是否需要下载运行)。

1724724760454790.png

通过Target Hardware resource里的Build connectivity选择和目标板的连接方式,对于TC4x Triboard, 板载DAS miniwiggler会生成虚拟串口,COM数字根据各自电脑会有不同。这里通过COM14下载程序。

1724724775215647.png

将30%, 50%, 80%三路占空比传送到AURIX™ TC4x PWM生成三对100KHZ互补PWM,HRPWM允许(使用EGTM),死区插入。使用的IO资源如下表:

1724724791140686.png

在simulink里新建模型文件,分别加入下面block:constant、Rate transition、TC4x PWM。

1724724805716326.png

Constant写入[30,50,80],Rate Transition sample time 1ms。

1724724819145211.png

下面在hardware mapping界面里面配置PWM相关参数:

首先在module里面选择生成PWM的模块资源,这里选择EGTM_ATOM0,enable HRPWM。

1724724832438732.png

打开channel界面,选择对应的参数设置,以channel0为例,指定互补输出,死区设2.5nS和1.25nS用作验证HRPWM作用,其他channel1、2相似。

1724724922698208.png

最后在HRADWARE里面点击Build Deploy& Start,模型生成code并编译,完成以后下载到目标板运行。

1724724849346488.png

1724724863785407.png


完成以后,程序在目标板上运行。通过示波器可以实测波形验证。

04、总结

HSP for AURIX™ TC4x 可提供快速且简易的模型化介面进行Prototyping的软体开发,且此支持包也提供整合编译软体以及简易的烧录工具,来达成初期开发平台上的所需功能,也可藉由将硬件模型化达到系统层级的模型化测试平台以达成实体化后的可追溯性,以利于缩短整体的开发以及验证时程。

来源:英飞凌汽车电子生态圈

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 47

引言

英飞凌微AURIX™ TC4x控制器中的CDSP-Converter Digital Signal Processor是一种专门设计用于实现高性能可编程的数字信号处理和控制单元。其核心是Synopsys DesignWare® ARC® EM5D(ARC) 32位的处理器。CDSP用于进行后处理来自Delta-Sigma ADC(DSADC)、外部调制器(EXMOD)、时分复用ADC(TMADC)、载波模式幅度(CARMAG)或通用寄存器(GP)的信号等等。CDSP模块提供了丰富的ARC核CPU指令集,支持多种算法和数据类型,包括浮点数、定点数、复数等,因此可以广泛应用于音频、视频、通信等数字信号处理领域。

1、CDSP架构简介

1.png

图1 TC4x微控制器示意图

图1 TC4x微控制器示意,其中,CDSP位于ADC模块中可通过LLI低延时总线,快速实现与PPU的数据交换和通信;也可通过CPB转换器外设总线通信能够同时传输多个数据位,以提高数据传输速度和效率。

CDSP核心架构主要模块及功能如下:

核架构:新思科技 ARC v2 DSP Core EM5D

  • 采用哈佛结构的处理器,具有级精简指令集计算(RISC)三级流水线技术

  • 一个32x32的单周期乘-累加(MAC)单元,用于高效的数字信号处理

  • 1个主端口,用于获取模数转换器(ADC)的结果,并将结果写入结果先进先出(FIFO)缓冲区

  • 具有2个从接口,用于外部主设备访问指令和数据存储器

  • 具有3KB的指令缓存ICCM和3KB的数据缓存DCCM

  • 指令集架构专注于数字信号处理

  • 时钟频率为160Mhz

独立的处理器输入接口

  • DSADC内部结果寄存器

  • EXMOD内部结果寄存器

  • DSADC载波发生器的载波幅度值(CARMAG)

  • TMADC内部结果寄存器

  • 4个通用寄存器

  • 通过FPI总线系统对程序RAM和数据RAM进行写访问

每个处理器的输出接口

  • 主结果输出寄存器(RES0),带有深度为4的FIFO

  • 2个辅助结果寄存器

  • 通过FPI总线系统对数据RAM进行读访问

事件信号(服务请求生成)

  • 结果生成(在FIFO模式下,根据FIFO填充级别进行配置)

  • 时间戳生成

  • 限制检查条件(信号在范围内或范围外)

  • 处理器状态(处理器唤醒错误,系统已停止)

    等等,详细信息参阅使用手册。

2、CDSP特性及性能

CDSP的工作频率:160 MHz

算力:18 x CDSP: 18 x 289 DMIPS(两个CDSP核相当于一个Trcore核算力)

CDSP通常处理来自DSADC、EXMOD、TMADC、GP、CARMAG等的输入信号,软件实现不仅TC2x/TC3x 的硬件滤波功能,还可以灵活的实现其滤波算法,如图2所示:

2.png

图2 滤波功能TC2x/3x硬件实现到TC4x CDSP软件实现

用户可以通过英飞凌CDSP自行编程实现FIR,IIR,DA,MAT,龙伯格观测器等等滤波算法。

英飞凌同时提供相应商用库文件滤波功能。例如:快速傅里叶转换FFT,龙伯格观测器Luenberger Observer,多通道平均multi-channelaveraging等等功能。

3.png

图3 模型开发中支持的工具链

Simulink模型支持。英飞凌提供软件例程,用户可通过MATLAB模型实现软件代码及算法的生成、从而快速部署,大大简化开发难度和加快用户的开发速度。参考示意图3:

3、CDSP safety

硬件安全概念主要依赖于冗余性。在安全设计中,冗余性是一种重要的机制,用于提高系统的可靠性和安全性。

CDSP软件是硬件功能安全案例的一部分,没有专门的功能安全计划。

CDSP针对ASIL-D级别的流程认证和功能认证(硬件+软件),其中包括时序要求。

TC4x MCAL符合ASPICE版本3.1的ASPICE L3流程认证,符合ISO 26262第2版、ISO 21434和MISRA标准。

4、CDSP应用场景

  • 兼容传统内燃机应用,数字滤波器模块配置用于爆震检测:

  • 爆震传感器的输出电压由内部DS调制器转换为比特流信号。

  • 比特流连接到具有SW滤波器链的三个CDSP,由此每个实例被配置有相应的带通特性(fB1、fB2、fB3)。

基于数字滤波器链内部整流器和积分器功能,计算每个带宽(fB1、fB2、fB3)的爆震强度。其系统框架图参考示意图4:

4.png

图4 CDSP实现爆震检测

xEV Inverter应用中,CDSP实现平均电流检测和龙伯格观测器,实现高效低成本的旋变解码功能。通过3路DSADC通道测量,CDSP软件后处理实现电机平均电流测量;使用2路DSADC通道测量,输入CDSP,实现Luenberger观测器计算速度和位置信息。Luenberger观测器能够提供精确角度信息,能够支持更高的电机转速,提高效率降低成本。其系统框架图参考示意图5:

5.png

图5 CDSP实现平均电流检测和龙伯格观测器架构示意图

适用于<1kW的小型电机的无传感器电机控制:DSADC和CDSP实现的FFT快速傅里叶变换,实现无传感器的电机闭环控制,保证精度和效率的同时有效降低开发难度和减少物料成本。其系统框架图参考示意图6:

6.png

图6 无传感器电机控制示意图

7.png

图7 基于人工智能CDSP的新音频应用

CDSP基于软件和人工智能的新音频应用提供了可能性:这包括音频处理、识别和增强功能等领域。例如:硅麦采集到声音信息,通过TC4x外部调制器EXMOD输入CDSP进行后处理。最后通过LLI低延时总线,提供给PPU进行计算,从而快速实现AI算法。其系统框架图参考示意图7:

CDSP在ADAS应用中用于电压监测和滤波。来自ADC采集电压数据,CDSP能够快速、高效、灵活的进行后处理。

灵活的过滤器解决方案(CDSP软件库实现),覆盖多种应用。更多应用,让我们携手共同研究探索。 

5、总结

与前几代相比,图8所示,TC4x CDSP具有革命性的解决方案,它不仅仅兼容TC2x/TC3x 的传统滤波应用,还开启了新的混合信号应用新篇章:

8.png

图8 TC4x CDSP灵活的滤波应用

截至目前,CDSP涵盖了内燃机和xEV的所有应用。

研发人员通过英飞凌CDSP软件库,可以灵活的配置滤波参数进行快速高效的系统原型设计,以适应客户应用。

CDSP同PPU结合应用,高效解决AI人工智能算法。

CDSP结合处理ADC信号,加速ADAS的处理速度和效率。

这些应用只是开始,CDSP还有更多潜在的应用等待您的发掘……敬请期待!

参考

[1]AURIX_TC4Dx_UM_v0.74_DRAFT_2024-02-08.pdf

[2]AURIX_TC49x-N_UM_v0.71_DRAFT_2024-02-29.pdf

[3]TriCore_TC1.8_architecture_manual_volume_1.pdf

[4]TriCore_TC1.8_architecture_manual_volume_2.pdf.

[5]https://www.infineon.com/dgdl/Infineon-AURIX_TC4x-ProductBrochure-v01_00...

[6]https://www.infineon.com/dgdl/Infineon-Infineon_High_voltage_traction_in...

来源:英飞凌汽车电子生态圈

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 67

引言

AURIXTM 作为英飞凌 32位 汽车级 MCU 家族的产品之一,其第二代产品 AURIXTM TC3x 已经是汽车界公认的功能安全设计优秀的产品,获得了良好的业内口碑。这也是源于英飞凌从 AURIXTM 第一代产品 TC2x 开始,就秉持功能安全的理念按照 ISO 26262 : 2011 设计出第一款支持 ASIL-D 最高安全等级的 MCU 产品。

AURIXTM 功能安全概念经历了 TC2x 到 TC3x 的优化升级,到 AURIXTM 第三代产品 TC4x,芯片的功能安全特性在 TC3x 产品之上又做了进一步的提升,而且完全符合 ISO 26262 : 2018 功能安全标准,增强的功能安全特性可以让用户的系统功能安全设计更加易于实现。同时,英飞凌的电源管理芯片 OPTIREGTM PMIC 从设计之初一直是 AURIXTM 的最佳搭档,从搭配 TC2x/TC3x 的 TLF35584/5,到搭配 TC4x 的TLF4x,二者的配合让汽车安全系统设计更加合理。

1.png

1、AURIXTM TC4x 产品的顶层安全需求 TLSR

MCU 产品,ISO26262 规定了它可以先于相关项而按照 SEooC (Safety Element out of Context) 来设计,也就意味着它不是为了某一个相关项设计的,并且先于其存在。它是否满足汽车里的各种应用场景,能否更好地助力汽车系统安全设计,首先就要看该 MCU 的顶层安全需求 TLSR 的定义是否合理。有了这些顶层安全需求 TLSR,MCU 产品的硬件软件设计都将围绕其展开。

AURIXTM TC4x 产品的顶层安全需求 TLSR(Top Level Safety Requirement)可以分成三大类来表征:

  1. MCU 安全相关功能的 TLSRs,包含安全运行代码、安全启动、安全输入、安全输出、安全通讯、安全传感器接口,等等。

  2. 支持安全状态的 TLSRs,包含故障报警后的响应以对芯片内部或外部电路报告。

  3. 免于共因失效的 TLSRs,包含避免电源、时钟、过温等引起的共因失效,监控不同安全等级的软件影响,等等。

2、AURIXTM TC4x 产品的顶层安全需求TLSR 是如何得出的?

简单来说,从汽车中的各种应用需求中抽取而来。

下图中是一个典型的管柱 EPS 电子助力系统,系统中包含了 EPS ECU 控制器、方向盘转向角传感器、方向盘转矩传感器、转向柱助力电机、电机位置传感器等。经过 HARA 分析后,EPS系统具有最高安全完整性等级要求的整车层面危害和安全目标是:

2.png

3.png

假设 EPS ECU 控制器中分解到 MCU 的目标 FIT 值为 3~4FIT,量化指标要求 ASILD 99% SPFM 和 90% LPFM,安全时间要求 FTTI 50~150ms。按照应用假设,EPS ECU 控制器中需要 MCU 具备的安全功能有:

  1. MCU 可以安全运行软件,不同安全等级的软件可以互不影响

  2. MCU 需要在运行用户代码之前安全的启动

  3. 启动时间要在 200ms 之内

  4. MCU 可以冗余的读取电机位置传感器信号如数字信号 SENT 或者模拟信号

  5. MCU 可以输出安全的 PWM 控制信号

  6. MCU 通讯接口可以同其他 ECU 安全的传输信号

  7. 当 MCU 故障发生时,可以输出故障指示信号,通知外围电路,让系统进入安全状态

  8. …...

以此方法分析汽车中常见的不同应用的控制系统,如发动机控制系统(EMS)、新能源车电池管理系统(BMS)、电源转换系统(OBC/DCDC)、动力牵引系统(Traction Inverter)、电子刹车助动系统、ADAS 辅助自动驾驶系统、雷达处理系统、网关、车身控制系统等等,从各种不同的应用场景中抽取出了对 AURIXTM TC4x 产品的顶层安全需求,后续的产品设计活动将围绕着这些顶层安全需求展开。

3、AURIXTM TC4x 产品的顶层安全需求 TLSR 是如何落实到实际的应用设计中的?

简单来说,通过把 TC4x TLSR 的各个应用案例 Use Case 跟实际应用场景结合后运用到实际应用的设计中。

AURIXTM TC4 的每一个 TLSR 都可以列举出一个以上的应用案例 Use Case,通过这些应用案例 Use Case 就可以把 AURIXTM TC4x 这些顶层安全需求具体化和场景化。用户在设计实际系统时根据需要选择出其中适合的应用案例。

比如,TC4x ASIL-D 安全软件执行 TLSR,在应用中不同的场景可能有:

CPU 访问各自的 NVM 和 RAM 空间

SOTA SWAP 后 CPU 运行代码的访问区间是 PFLASH Bank A 或者 Bank B

CPU 访问其他 CPU 的 NVM 和共享 RAM 空间

CPU 访问DFLASH 中数据或者存储数据至 DFLASH 中

代码存储在片外 FLASH 中

……

比如,TC4x ASIL-D 安全模拟输入TLSR,在应用中可以实现的场景有:

冗余 ADC 通道输入到两个 TC4x ADC 模块中,两个 ADC 模块可以是同一种类型的,比如都是 TMADC 模块,或者都是 DSADC 模块。

比如,TC4x ASIL-B 安全模拟输入TLSR ,在应用中可以实现的场景有:

一个 ADC 通道输入到 TC4x 内部后进入两个 ADC 模块后分别处理。

一个 ADC 通道输入到 TC4x 内部的一个 ADC 模块进行处理。

4、AURIXTM TC4x 产品中设计了怎样的安全机制以助力应用案例达到目标 ASIL?

AURIXTM TC4x 每个顶层安全需求的应用案例中,都有其目标 ASIL 等级,这就意味着有量化指标(SPFM, LFM & PMHF)的要求。每个应用案例中包含了 TC4x 的不同的内部功能模块,这些功能模块都可能会发生故障引发失效从而引入失效率 FIT 值,因此必须对每个模块的各种失效模式加以一定的诊断机制,以降低该模块的失效率,从而使整个应用案例的失效率降低到可以接受的水平,达到目标 ASIL 等级的量化指标要求。

对于芯片内部故障的诊断来自于不同的安全机制:

  • 内部硬件安全机制 SM[HW]

  • 内部软件安全机制 SM[SW]

  • 外部硬件安全机制 ESM[HW]

  • 外部软件安全机制 ESM[SW]

AURIXTM TC4x 跟 TC3x 一样,设计了非常多的内部硬件安全机制,比如 CPU Lockstep、NVM ECC、RAM ECC、Power Voltage Monitor、Clock Monitor 等等,但是相比 TC3x,TC4x 中又增加和增强了许多片内硬件安全机制的设计。接下来从几个方面说明一下这些增强点和变化点。

1. TC4x Systematic Fault Avoidance 避免系统失效

在 TC4x 产品硬件设计中增加了 Systematic Fault Avoidance ASIL-D 的顶层安全需求。除 SCR、CSRM 等少数几个模块是 QM 或 ASIL-B 等级,其他模块硬件电路都可以达到 ASIL-D 等级。

2. TC4x Safe Boot 安全启动

固化在 TC4x 内部 ROM 的启动代码 SSW 是按照 ASIL-D 安全等级开发的,其功能是完成 TC4x 芯片的基本功能初始化或者配合上电启动检测,目的是让 TC4x 在开始运行用户代码时有一个安全完整的初始环境。固件启动代码 SSW 中集成的安全机制可以识别启动代码运行过程中硬件模块的故障导致的非预期行为,从而让 TC4x 启动停止。如果 TC4x 没有安全完整的启动过程,用户代码就不会被运行,因而系统也不会存在潜在失效的风险。

4.png

3. TC4x SMU 升级为 Safety and Security Alarm Management Unit

AURIXTM TC3x 的 SMU 模块包含了 SMU_core 和 SMU_stdby 两个冗余模块,而 TC4x 中 SMU 模块则升级为 SMU_CS、SMU_SAFE0、SMU_SAFE1、SMU_STDBY 四个子模块。

SMU_CS 位于 Core Domain,它负责收集处理跟 Security 相关的片内 Alarm 报警,如密钥使用错误、认证失败、调试口误使能监控等报警,或者如电源监控、总线时钟监控、总线错误等报警,都由 SMU_CS 来处理和响应。

SMU_SAFE0、SMU_SAFE1 位于 Core Domain,它们负责收集处理跟 Safety 相关的片内 Alarm 报警。SMU_SAFE0 和 SMU_SAFE1 设计一样,TC4x 片内所有安全机制的 Alarm 都可以接入两个 SMU_SAFEx 模块中,由用户来决定哪些 Alarm 由哪个 SMU_SAFEx 来处理,SMU_SAFEx 会根据 Alarm 配置来进行相应的响应动作。两个 SMU_SAFEx 模块可以独立使用,分开处理片内不同的 Alarm,分别有各自独立的错误状态输出脚连接至片外其他芯片(如英飞凌 PMIC TLF4x),该双 SMU_SAFEx 模块设计的目的是面向多应用集成于一个 TC4x 的场景下,各个应用有其独立的故障响应路径,进而使系统进入安全状态。

SMU_STDBY 位于 Standby Domain,独立于 Core Domain 中的 SMU_SAFEx 和 SMU_CS 模块,它负责收集片内引起 CCF 共因失效的电压、温度、时钟的安全机制报警,还通过 SMU Alive 信号监控 SMU_SAFEx 和 SMU_CS 的故障。此外,SMU_SAFEx 和 SMU_CS 中处理的片内安全机制 Alarm 信号可以分别集中到一个 Critical Alarm 中送至 SMU_STDBY 中做冗余处理。SMU_STDBY 对这些 Alarm 响应时可以强制将 FSP Error Pin 转为故障状态,通知外围监控芯片做二级安全路径的输出控制。

5.png

4. TC4x Safe Computation Platform 安全软件运行

AURIXTM 中跟安全软件运行相关的模块包含 CPU、IR、DMA、NVM、RAM、SRI Bus、FPI Bus,TC3x 中 CPU 有 Lockstep 的安全机制,针对 IR 和 DMA 模块,TC3x 产品则需要用户实现外部软件安全机制来诊断 IR 和 DMA 模块的故障。但是在 TC4x,Lockstep 锁步核安全机制已经从 CPU 扩展到了 IR 和 DMA,过去的 TC3x 中的软件安全机制就不再需要了,这一设计对用户非常友好。 

6.png

5. TC4x RAM ECC 可纠正位错误

AURIXTM 片内易失性存储单元 RAM 可纠正位错误在运行中被读取时会被 ECC 机制实时纠正,所以对这类可纠正位错误的硬件故障,应用上由于可以保证读取的 RAM 内容是正确的,不存在引起违反系统安全目标的的风险,片内 RAM 可纠正位错误的故障不需要用户对其做任何响应,因此 TC4x 中取消了 RAM 可纠正位错误的地址缓存设计,不再将其列为安全相关的故障。TC3x 中没有强调这一点,用户很容易在设计中忽视这一点,导致对 RAM 可纠正位错误故障的过度安全响应动作频发。

6. TC4x MBIST 易失性存储单元自检

AURIXTM TC4x 片内易失性存储单元 RAM 的集成测试模块支持对 RAM 做 MBIST (Memory Build-In-Self-Test)自检。TC3x MBIST 只支持 Non-destructive Inversion Test (NDIT),而 TC4x MBIST 升级到支持 Destructive Test。Destructive Test 有更高的诊断覆盖率,可以达到 ASIL-D 级别。此外,TC4x 支持 Key-On / Key-Off 的 MBIST 测试。在 TC4x SafeTlib 软件中包含了 Key-on / Key-off MBIST 测试。

7. TC4x LBIST 逻辑电路自检

ARUIXTM TC4x LBIST 支持两种操作模式,Key-on LBIST 和 Key-off LBIST。在 TC4 内部把 LBIST 进行了分层设计,分成多个测试域。Key-on LBIST 只测试片内安全相关的数字逻辑电路,可以在 5~6ms 之内完成,可以达到 90% Stuck-at 测试覆盖率。Key-off LBIST 测试芯片内部完整的数字逻辑电路,多层测试域依次完成测试,每层测试域测试在 50ms 之内,可以达到 90% Stuck-at 测试覆盖率。在 TC4x SafeTlib 软件中包含了 Key-on LBIST 测试。

8. TC4x Clock Monitoring 时钟监控

ARUIXTM TC4x 时钟系统中保留了如 TC3x 一样的 OSC watchdog Monitor、PLL loss of lock detection Monitor、Clock alive Monitor 三种硬件安全机制。此外,TC4x 中加入了针对片内产生的各个时钟的 Plausibility 合理性检查的硬件安全机制,这一安全机制在 TC3x 中是需要用户软件来实现的,TC4x 这些增强的硬件安全机制简化了用户对时钟安全的软件设计。

9. TC4x Power Monitoring 电压监控

AURIXTM TC4x 同 TC3x 一样有一级欠压监控和二级欠压过压监控,不同于 TC3x,TC4x 中只有二级欠压过压监控被列入片内电源监控安全机制中,一级欠压监控不再归为安全相关。理由是,当电压在 TC4x 工作电压范围之内到达一级欠压监控电压阈值之前,二级欠压和过压监控即可以报出 Alarm,SMU 可以对该 Alarm 执行合适的安全响应动作。

10. TC4x Over-temperature 过温监控

AURIXTM TC4x 同 TC3x 一样有冗余的温度检测模块 DTS,不同于 TC3x 的 2 个,TC4x 中增加到了 6 个。而且在 TC4x 中只有过温才是安全相关的,因为 MCU 的任何内部故障都不会使其自行降温,故温度过低不是 MCU 故障导致的失效模式,所以只有芯片过温才被纳入安全考虑范围。DTS 会每隔 2ms 持续测温,如芯片过温即报出 Alarm。

11. Safe Digital Actuation 安全数字输出

针对安全数字输出的设计中,通常是对一个 Mission Channel 输出增加一个 Monitoring Channel 输入返回到 AURIXTM 进行监控,通过比较两个信号来确保 AURIXTM 数字输出如预期,以达到 ASIL-D 的安全数字输出。在 TC3x 中,这种比较通常引入了一个 IOM (Input Output Monitor) 硬件模块来完成。在 TC4x 中,这个硬件模块已经去掉,对于 Mission Channel 输出信号和 Monitoring Channel 回读信号的比较,通常由信号发生单元同时也是信号捕获单元的硬件模块如 GTM/eGTM 即可以实现,对用户来说简化了安全数字输出的设计。

7.png

8.png

12. Safe Digital Acquisition 安全输字输入

针对安全数字输入的安全机制,通常采用冗余输入的方式,一个 Mission Channel 和一个 Monitoring Channel,通过对比校验数字输入的完整性。TC4x 中用独立的 GTM/eGTM 双通道捕获外部双路数字输入进行冗余校验可以实现 ASIL-D 的安全输入方案,外部单路数字输入至芯片内部分成双通道至独立的 GTM/eGTM 双通道进行冗余校验可以实现 ASIL-B 的安全输入方案。比 TC3x 的安全数字输入应用案例更加丰富,便于用户灵活设计。

9.png

10.png

13. Safe Analog Acquisition 安全模拟输入

针对安全模拟输入的安全机制,通常采用冗余输入的方式,一个 Mission Channel 和一个 Monitoring Channel,通过对比进行校验模拟输入的完整性。TC4x 中针对安全模拟输入,同类 ADC 模块的双路输入冗余校验(如 TMADC + TMADC 或者 DSADC + DSADC)即可以实现 ASIL-D 的安全模拟输入方案;外部单路模拟输入至芯片内部后分成双通道(TMADC + TMADC, TMADC + DSADC, TMADC + FCC)进行冗余校验,或者外部单输入通道送至内部单 ADC 模块处理,都可以实现 ASIL-B 的安全输入方案。这比 TC3x 的安全应用案例更加丰富,帮助用户设计所需 ASIL 等级的安全模拟输入方案。

除了上面这些安全特性的增强或者变化,TC4x 中还增加了一些新的 IP 模块,比如 PPU (Parallel Processing Unit)、LLI (Low Latency Interconnect)、PCIe、DRE (Data Routing Engine)、xSPI、AUDIO 等,对它们也都有顶层安全需求和应用案例,相应地增加了所需的安全机制。

11.png

5、OPTIREGTM TLF4x 助力 AURIXTM TC4x 实现 ASIL D 的应用设计

英飞凌的 TLF3x和 TLF4x 两代电源管理芯片,都具备了为 AURIXTM 量身定制的安全监控功能,提供 AURIXTM 所需的外部安全措施:

  1. 供电电压监控

  2. 时钟监控(看门狗)

  3. SMU(安全管理单元)告警监控

此外,PMIC 还为系统提供独立于 MCU 的第二条关断路径,与 MCU 两者搭配,组成最小的功能安全核心单元,支持系统实现ASIL-D 的功能安全要求。

TLF4x 系列的电源管理芯片,相较于 TLF35584/5,在功能安全结构上做了更进一步的优化和增强:

1. 自带安全关断控制(Safety Switch)

12.png

PMIC 的一级同步 DCDC (Pre-buck) 实现了从高压域(12V/24V)到低压域(<6V)的转换,其功率 MOSFET 半桥中的上管是连接高压域和低压域的器件。这个 MOSFET 的 D-S 短路失效模式,是整个系统供电单元的单点失效,为系统的功能安全达到ASIL-D 带来了挑战,当这个同步 Pre-Buck 为 MOSFET 外置的结构时,其影响尤为显著。

TLF4x 系列的 PMIC 全部集成了安全关断控制单元,能够检测到 Pre-Buck 的功率 MOSFET 上发生的严重故障(包括上管的D-S 短路故障),继而触发关断路径,为这部分单点失效提供了诊断覆盖,使系统电源设计轻松达到 ASIL-D 的功能安全要求。

2. 支持多合一系统的独立安全监控/关断策略

13.png

TLF4D985 新增加的“REDUCED OPERATION MODE”能够支持两套独立的“时钟监控”和“SMU告警监控”,同时,提供两套独立的“中断告警(INTx)”和“安全关断路径(SSOx)”,以配合 TC4x 的 Hypervisor 功能实现在多合一系统中,多个应用在功能和功能安全设计上的独立性。

6、AURIXTM TC4x SafeTlib 安全软件库

TC4x SafeTlib 安全软件库是由英飞凌开发的可以集成到 AUTOSAR 环境中的商用软件包,ASIL-D 安全等级,支持单核或多核环境。

TC4x 内置 BIST 电路如 LBIST、MBIST、MONBIST 可以提供覆盖到片内数字电路、RAM 存储单元、电压监控电路的潜伏故障的检测,但是这些 BIST 电路有些是需要软件进行触发并检验测试结果的。此外,TC4x 片内有一些硬件安全机制需要额外的测试,还有一些硬件安全机制的报警通路需要测试,以降低潜伏故障的风险,这些都可以由 TC4x SafeTlib 软件来完成。此外,配合 TC4x 的 PMIC TLF4x 的复杂驱动包和 TLF4x 内置安全Watchdog即作为 TC4x外部安全Watchdog 的驱动包也都包含在 TC4x SafeTlib 中。另外,TC4x SafeTlib 不再包含 Runtime Tests,TC4x 安全应用案例中提到的运行中的软件安全机制需要用户自行实现。

14.png

15.png

7、AURIXTM TC4x AUTOSAR MCAL 软件

TC4x MCAL 软件是由英飞凌开发的 AUTOSAR底层商用软件包。其安全目标,一是从功能角度避免系统性失效可达到 ASIL-D 或者 ASIL-B 级别(不同 MCAL 软件模块的应用需求决定其 ASIL 等级不同),二是避免内存干扰系统中其他软件可达到 ASIL-D 级别。帮助用户在系统设计中有 ASIL-D 软件功能安全需求时可以有相应的 ASIL-D 的 MCU 底层软件来支撑,同时保证集成到 ASIL-D系统软件中时 TC4x MCAL 软件不会对任何非MCAL 软件造成任何干扰。

结束语

综上所述,AURIXTM TC4x 和 OPTIREG™ PMIC TLF4x 在支持 ASIL-D 功能安全需求的设计上更上一层楼,不仅增加了符合未来汽车电子产品的新功能需求,而且设计上的优化也帮助客户设计系统功能安全时的选择更灵活且更便捷。AURIXTM TC4x 和 OPTIREG™ PMIC TLF4x产品在英飞凌创新峰会(IACE)上已强势发布,更多关于 TC4x 和 TLF4x 产品的功能安全特性可以联系英飞凌获取 TC4x和TLF4x 功能安全相关文档。

来源:英飞凌汽车电子生态圈

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 117

英飞凌AURIX™ TC4x 微控制器首次引入了虚拟化技术,帮助客户重新构建整车EE架构,最大化利用MCU的硬件资源,其资源隔离的特性还可以降低软件开发和集成的难度,更好地满足功能安全和信息安全的要求。

本文主要介绍了虚拟化技术的背景,虚拟化系统的组成和分类,嵌入式虚拟化的优点,在汽车领域的使用案例以及面临的挑战。

1、虚拟化技术的背景

1.1、虚拟化技术的发展历史

1955年,Fortran语言之父John Backus首次提出了分时(Time-Sharing)技术,通过该技术,昂贵的大型机可以被多个用户同时使用,这被公认为最早的虚拟化技术的概念[1]。1972年,IBM公司研发出了VM/370虚拟机操作系统,真正实现了虚拟化技术的商业落地。1974年,Gerald J. Popek和Robert P. Goldberg系统阐述了实现计算机虚拟化所需要满足的特性,以及虚拟机和虚拟机监控器的概念,这些概念一直沿用至今[2]。如今的虚拟化技术已经从PC端发展到嵌入式系统领域。

1.2、嵌入式虚拟化的发展

嵌入式虚拟化的兴起首先得益于半导体技术的飞速发展,以英飞凌的TriCore™品牌为例(图1),经过多年的发展,TriCore™的内核架构不断升级,主频持续攀升,最新的下一代AURIX™ TC4x首次引入了虚拟化技术,让嵌入式MCU从硬件上支持虚拟化成为现实。

1.png

图1 TriCore™ MCU发展历史

其次,在汽车领域,软件定义汽车日渐盛行,MCU的软件架构也从单核到多核,再到多核的虚拟化逐渐演变[3],如图2所示。

2.png

图2 MCU软件架构的演变

最后,从客户角度出发,出于节约成本,系统整合,功能安全,信息安全以及配置灵活性等多维度考量,嵌入式虚拟化也是其中的关键突破口(图3)。

3.png

图3 嵌入式虚拟化的关键特性

2、虚拟化系统概述

2.1、虚拟环境的组成

典型的虚拟环境由三部分组成:硬件,虚拟机以及虚拟机监控器(图4)。

4.png

图4 虚拟环境的组成

  • 硬件,可以是任意支持虚拟化技术的处理器,如英飞凌的下一代高性能MCU,AURIX™ TC4x。

  • 虚拟机(VM,Virtual Machine),是执行不同虚拟化应用程序的容器。通过虚拟化技术,将物理计算机系统按照CPU,Memory,外设,中断等维度进行虚拟分配,形成所谓的虚拟计算机。

  • 虚拟机监控器(VMM,Virtual Machine Monitor),又称Hypervisor(以下均简称Hypervisor),它是横跨在虚拟机和硬件之间的一个软件层,其主要作用是协调不同虚拟机的运行,确保它们之间互不干扰。

2.2、虚拟化系统的分类

根据Hypervisor在整个虚拟化系统中实现位置的不同,可以将Hypervisor分成两种类型[1](图5):

  • Type1 Hypervisor:Hypervisor直接跑在硬件的裸板上,并运行在最高特权级,而所有的虚拟机运行在较低的特权级。Hypervisor直接负责其上各个虚拟机的资源分配以及运行时的调度策略。

  • Type2 Hypervisor:Hypervisor作为一个应用程序跑在主机的OS上,与其他应用程序没有本质区别。Hypervisor需要与主机上的OS协商资源分配。

5.png

图5 Hypervisor的类型

两种Hypervisor相比,Type1的Hypervisor因为直接访问底层的硬件资源,在使用效率和性能上更好,一般适用于嵌入式系统。而Type2的Hypervisor因为运行在操作系统之上,即使非技术型用户也可以很好地操作Hypervisor,一般用于桌面系统,比如个人电脑等等。

3、嵌入式虚拟化的优点

在汽车电子应用领域,嵌入式虚拟化有如下几个方面的优点:

有利于系统整合

从系统架构层面来看,整车的EE架构已经从传统的分布式系统向集中式架构转变(图6)。

6.png

图6 整车EE架构的变革

以域控制器架构为例,以太网作为主干网络连接各个域控制器,在它们下面挂着不同功能模块的小型ECU[4]。引入虚拟化技术之后,可以将其中部分小型ECU以虚拟机的形式移植到域控制器里面,最大化地使用域控MCU的硬件资源,从而减少ECU的数量[5],降低系统的BOM成本。图7是一个简单的例子说明这个概念。

7.png

图7 虚拟化技术有助于域控制器融合

从软件开发的角度来看,引入虚拟化之后,Hypervisor将硬件资源分配给不同的虚拟机,虚拟机跟应用程序之间有一定的映射关系。各个软件开发团队根据Hypervisor分配的硬件资源和调度策略去执行自己的应用程序开发,然后做软件集成(图8)。由于各个虚拟机可以独享自己的硬件资源,彼此之间互不干扰,各个虚拟机甚至可以使用不同的AUTOSAR软件,不同的操作系统,不同的开发工具。这样就解决了不同开发团队或者不同供应商的程序在同一个硬件系统中运行,系统集成难度大的问题。

8.png

图8 虚拟化方案软件开发流程

有利于功能安全和信息安全的部署

虚拟化技术的一个显著特定就是隔离,Hypervisor为不同的虚拟机分配硬件资源,如CPU,内存,外设以及中断。以AURIX™ TC4x为例,用户可以对每一个虚拟机分配特定的内存和外设,以及它们的访问权限,中断也可以给到指定的虚拟机去响应。这样原本在不同ECU层面的功能安全和信息安全目标,现在在不同虚拟机之间就能够实现(图9)。

9.png

图9 虚拟机隔离示意图

增强了系统集成的灵活性

每一个虚拟机可以做到独立的启动和停止,以及独立的去编程和烧录,这大大增强了系统的可扩展性和集成的灵活性。

4、汽车嵌入式虚拟化的使用案例

这里简单介绍两个嵌入式虚拟化在汽车电子领域的使用案例。

案例一:新能源多合一

10.png

图10 新能源多合一系统示意图

新能源多合一技术是当前新能源汽车的研究热点。图10是双电机和DCDC功能融合的案例,CPU0运行MCAL和通信协议栈,CPU1运行Inverter A的应用,CPU2运行Inverter B和DCDC的应用,每一个应用里面可以有一个或者多个虚拟机,不同的虚拟机通过Hypervisor实现它们的调度。这样可以最大化地利用MCU的硬件资源,减少ECU数量,降低系统的BOM成本。此外,Inverter应用和DCDC应用的开发可能来自不同的软件团队,即使他们的开发环境(操作系统,编译器,调试器)不同,由于应用跑在不同的虚拟机里面,彼此之间互不干扰,从而降低了开发和集成的难度。

案例二:充电桩V2G技术

11.png

图11 使用虚拟化对V2G相关应用进行隔离

V2G技术被认为是电动汽车和电网进行双向能量和信息交互的理想范式。但是近年来黑客攻击充电桩的事件时有发生。为了防止黑客在用户充电过程中对汽车的入侵,我们可以在控制器端采取防御措施。比如,将与充电桩通信相关的应用放到一个特定的虚拟机里面[6],该虚拟机对其他硬件资源的访问进行严格的管控,从而达到虚拟防火墙的作用(图11)。

5、汽车嵌入式虚拟化的挑战

当然,嵌入式虚拟化也面临着诸多挑战[7],总结为如下几点:

• 实时性

虽然嵌入式系统都是Type1的Hypervisor,但是Hypervisor作为中间的调度软件,本身也会消耗时间片,系统越复杂,调度策略也会越复杂,Hypervisor本身的时间开销也会越大,从而影响系统的整体实时性。

• 故障处理的复杂性

引入了虚拟化之后,多个应用集成在一个MCU控制器当中,如果某一个虚拟机出现系统失效,我们需要尽可能的保证该虚拟机的故障处理不影响到其他虚拟机的正常运行,尽量避免单个虚拟机失效影响整个系统的情况发生,这对故障处理功能带来了挑战。

• 通用功能的系统整合

对于多应用融合的方案,在引入虚拟化之后,一些通用的系统功能,如休眠唤醒功能,如何整合所有应用去做最终的方案策略,值得客户深思;再比如,AUTOSAR的基础软件,是共用一套BSW软件,还是每个应用都有自己的BSW软件,也是一个值得商榷的问题。

• 软件生态

当前,嵌入式虚拟化的软件大都是非开源的商业软件,且软件本身没有类似AUTOSAR这样的标准接口规范,软件公司根据不同芯片厂商的硬件支持情况各自制定自己的解决方案。

6、总结

总的来说,虚拟化技术最早在计算机端兴起,而嵌入式系统的虚拟化正在成为一种趋势。用户可以根据自身需求将MCU的硬件资源灵活地拆分成多个虚拟机,不同的应用跑不同的虚拟机,Hypervisor负责管理各个虚拟机的启动,运行以及停止,最大限度地利用MCU的资源。虚拟化的隔离特性有助于客户的软件开发和集成,满足功能安全和信息安全的要求。英飞凌最新一代AURIX™ TC4x将从硬件上支持虚拟化技术,助力整车的E/E架构设计,开发和集成。

参考文献

[1] https://www.ibm.com/history/time-sharing

[2] SANTIAGO LOZANO, TAMARA LUGO, JESÚS CARRETERO. A Comprehensive Survey on the Use of Hypervisors in Safety-Critical Systems [J]. IEEE, VOLUME 11, 2023, 36244-36263.

[3] Gernot Heiser, Open Kernel Labs, Inc. TECHNOLOGY WHITE PAPER-Virtualization for Embedded Systems[R/OL]. April 2008. https://www.researchgate.net/publication/234804454.

[4] Dominik Reinhardt, Daniel Adam, et al. Embedded Virtualization Approaches for Ensuring Safety and Security within E/E Automotive Systems[J]. Engineering, Computer Science, 2015.

[5] Alexandra Aguiar, Fabiano Hessel. Embedded Systems’ Virtualization: The Next Challenge? [J]. IEEE International Symposium on Rapid System Prototyping, 2010

[6] Stefaan Sonck Thiebaut, Antonio De Rosa, et al. Secure Embedded Hypervisor based Systems for Automotive[C]. 2016 46th Annual IEEE/IFIP International Conference on Dependable Systems and Networks Workshops.

[7] 王洪波. 嵌入式虚拟化技术与应用[M]. 北京:机械工业出版社,2023.8.

来源:英飞凌汽车电子生态圈

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 169

并行处理单元(PPU)是集成在英飞凌AURIX™ TC4x微控制器系列中的协处理器。PPU旨在卸载主CPU的信号处理、滤波和其他数学运算,从而为要求严格的应用程序(例如实时控制、传感器信号处理和轨迹规划等)提供高计算能力和缩短执行时间,并且能支持实现简单的神经网络算法。

 本文将简要介绍PPU的内部结构、功能和应用领域。

1. PPU内部结构

1.png

图1.  TC4x微控制器示意框图 

图1是TC4x 微控制器示意框图,图中右上角是PPU的简化结构,由标量核(scalar core),向量核(vector core/SIMD core),一级缓存,及其它系统资源组成。

01)标量核(Scalar Core):标量核用于执行大量的标量运算,以及任务调度。标量核支持多种算术运算和逻辑运算,还支持硬件浮点运算,从而实现更高的计算效率。另外,标量核提供丰富的硬件功能安全机制,可以辅助实现高功能安全等级的任务。

02)向量核(Vector core/SIMD Core):向量核是 PPU 的另一个重要功能模块,专门用于执行向量运算。向量核支持多种向量算术运算、逻辑运算和专用信号处理,支持整型数和浮点运算,从而实现更高的计算效率。向量核还支持多级流水线和 SIMD(single instruction multiple data,单指令多数据)指令,对不同数据同时执行同样的操作,通过并行执行多个向量运算来提高效率。

03)一级缓存:一级缓存是PPU用于保存计算输入和输出数据的存储空间。由于结构上和运算核紧密耦合,该缓存可以在PPU 的执行过程中对状态进行快速读写,并且有EDC/ECC保护,从而实现更高的执行效率和更高的可靠性。

04)其它系统资源:包括用于快速数据搬运的DMA,共享内存区等等。

2. SIMD 和VLIW指令 

2.1 SIMD(Single Instruction Multiple Data)指令

SIMD(Single Instruction Multiple Data)指令是一种并行指令,可以同时对多个不同数据进行相同的操作。这种指令可以大幅提高计算效率,特别是在执行向量运算时效果更为明显。

PPU 的 SIMD 指令集包括多种运算指令,如数学运算、逻辑运算等。这些指令都是并行指令,可以同时对多个数据进行操作,从而大幅提高计算效率。例如,PPU 的 SIMD 加法指令可以一次性对多个数据进行加法运算,从而实现更高的计算速度。

下面是一个示例,假设有两个向量 A 和 B,每个向量包含 16 个 16 位整数 ,要计算 A 和 B 的和。如果使用不支持SIMD指令的标量核,代码示例如下,需要进行16次循环运算,将不同的A[i]、B[i] 数据依次顺序进行加法操作,相当费时。

2.png

而如果使用支持SIMD指令的 PPU进行运算,则可以一次完成,假设PPU位宽是256bit(=16*16bit):

3.png

由此可见,支持SIMD指令的PPU在进行向量运算时,通过降低同样运算的处理次数,从而有效节省运算时间,提高处理效率。

2.2 VLIW(Very Long Instruction Word)指令

VLIW(Very Long Instruction Word)是一种处理器的并行架构,允许在单个时钟周期内,由处理器的不同部件同时执行多个操作。

例如,如果要执行两个复向量A和B的乘法 ,结果存储在向量C中。

4.png

C语言实现如下:

5.png

如果在标量核上运算,会顺序执行下列代码,并循环多次:

6.png

PPU内的向量核有三个处理单元,包括两个浮点运算器,和一个读取/存储部件用于将RAM中的数据搬运到核内寄存器。这三个部件可以同时运行,形成指令层面的并行机制,从而实现VLIW指令。

上列代码由PPU处理,可以将第4和第5行的乘法运算分别分配给两个浮点运算器同时处理,如下红框所示。而在下个指令周期内,第7,8,9行的指令可以分配给三个部件同时处理,如下蓝框所示。从而将原先需要12条指令周期运行的代码缩短到9条(12-1-2=9)指令周期,提高执行效率。

7.png

3.  应用场景

PPU适用于不同应用场景,图2 列出了三种较常见的算法。第一种是将时域信号转变为频域信号,以提取频率信息的快速傅里叶变换(FFT)。FFT 在数字信号处理中得到了广泛的应用,如音频信号处理、毫米波雷达信号处理等。

8.png

图2. PPU实现的算法

第二种是多层感知算法,它是一种基于人工神经网络的机器学习算法,可以用于分类、回归和模式识别等应用。MLP 由多个神经元组成,每个神经元都包含多个输入和一个输出。MLP 通过学习输入和输出之间的映射关系,从而实现对新数据的预测和分类。MLP 在机器学习和数据挖掘中得到了广泛的应用。除此之外,MLP 还可以用于控制和优化问题。例如,MLP 可以用于控制系统和过程控制,如传感器信号处理分类、辅助驾驶、自动驾驶等。

第三种是卡尔曼滤波,该算法是一种基于状态空间模型的滤波器,可以用于估计未知变量的状态和参数。卡尔曼滤波通过利用系统的动态模型和传感器的观测值,递归地对状态进行估计和预测,从而实现对系统的状态进行优化和控制。卡尔曼滤波在自动控制和信号处理中得到了广泛的应用,例如,卡尔曼滤波可以用于目标跟踪、路径规划算法等。

4. 开发工具

新思科技(Synopsys)为PPU提供了丰富的开发工具资源【1】,包括Metaware编译器及软件组件,下列表格列出了相关工具组件:

9.png

表1. 新思科技提供的PPU工具组件

上述PPU开发工具链,除了新思科技可提供外,Hightec 在提供TC4x TriCore™ CPU编译器的同时,也集成了Metaware编译工具,及相关软件组件【2】,形成完整的TC4x开发环境工具链。该工具链符合ISO26262 ASIL D,能帮助客户实现快速、可靠、高功能安全等级的基于TC4x微处理器的汽车软件开发。

此外,Tasking也开发了PPU的编译器,并集成在新的SmartCode开发环境中。

5. 总结

总的来说,PPU是一个性能强大的处理器,内部包含标量核、向量核、一级缓存和其它系统资源 等,可以实现高速数字滤波、向量矩阵运算、浮点运算、简单的神经网络等,为要求严格的实时计算应用提供了显着的性能优势。PPU为Tricore 主核卸载了复杂的信号处理和数学运算,使得执行时间更快,而其高可配置性和专用硬件资源使其非常适用于各种应用程序。使用户有更多选择余地,使用不同核构架实施不同性质的运算。

参考文献:

`Synopsys ARC MetaWare Toolkit for Infineon AURIX TC4x’

https://www.synopsys.com/dw/ipdir.php?ds=sw_metaware-aurix 

`AURIX TC4x: Safety Solutions from HighTec’

https://hightec-rt.com/en/aurixtc4      

`TASKING supports application development for Infineon's new AURIX™ microcontrollers’

https://www.tasking.com/content/tasking-supports-application-development-infineons-new-aurix-microcontrollers 

来源:英飞凌汽车电子生态圈

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 297

近日,英飞凌宣布第一批 AURIX™ TC4x 样品已用于主要客户的设计中,各个型号将从2024年下半年逐步量产。东软睿驰NeuSAR作为国内首家适配英飞凌最新一代MCU TC4xx系列芯片的软件平台,助力提升整车的系统安全性,并在构建更高效的软件开发平台的基础上,实现成本控制并提升创新速度。

英飞凌AURIX™ TC4x 面向广泛的汽车应用,包括基于域控制器和区域控制器的 E/E 架构对功能集成的强烈需求,提供增强的连接性,包括先进的功能安全和信息安全,通过安全系统支持电动交通和自动驾驶的发展。

1.png

图:东软睿驰NeuSAR适配英飞凌 AURIX™ TC4x芯片

东软睿驰NeuSAR软件开发平台率先实现国内“AUTOSAR AP+CP+中间件”全栈软件平台产品量产落地,支持传统的ECU开发,同时又对基于openVOC(Vehicle On Chip)开放技术框架下的域控制器开发提供丰富的基础软件、跨域中间件、应用框架及工具链,广泛应用在新一代架构下的智能辅助驾驶、整车场景化智能、底盘动力、车身控制等系统,赋能整车架构同时实现软硬解耦、软软解耦,从而节省大量开发时间和成本,提升应用创新效率。

NeuSAR cCore基于AUTOSAR Classic平台标准开发,提供符合功能安全的R22-11标准产品,目前总模块数达80余个,同时率先提供以VTA认证导向的信息安全全栈解决方案以及多总线形式的Bootloader平台化解决方案。

2.jpg

图:NeuSAR cCore产品框架图

NeuSAR cCore新增的TSN和Hypervisor,可面向英飞凌最新一代MCU TC4xx系列芯片,实现以太网数据传输的时间敏感机制和虚拟内核的功能。同时,在驱动部分,NeuSAR cCore开发了满足AUTOSAR规范的、适配于TC4xx系列芯片的ETHDriver(GETH/LETH),可实现以太网数据的发送/接收和流量整形功能。

1710234752534611.jpg

作为英飞凌“汽车电子产业化合作伙伴”,东软睿驰与英飞凌展开了深入合作,推动创新、成熟的软件高效应用于整车,并实现跨平台、跨车型的复用,加快创新功能进入到量产阶段的速度。NeuSAR软件开发平台已成功适配英飞凌AURIX™ 、Traveo™系列等多款芯片,为客户提供更加安全高效的基础软件平台解决方案,从而助力本土汽车产业的可持续发展。

来源:NeuSAR

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 43

作为全球汽车半导体市场的领导者,英飞凌持续塑造未来移动的创新之路。

为扩展其领先的 AURIX™ 微控制器系列,英飞凌推出了用于电动交通、ADAS 、汽车 E/E  架构和经济型人工智能 (AI) 应用的新一代AURIX™ TC4x 系列28纳米微控制器 (MCU)。

第一批 AURIX™ TC4x 样品已用于主要客户的设计中。

从本月起,英飞凌专家将在每个月推出1-2篇 AURIX™ TC4x 技术文章,详细阐述其各个功能模块,以帮助大家快速学习了解  AURIX™ TC4x 。

1.png

英飞凌AURIX™发展历程

TriCore™ 内核架构自从1999年诞生,先后经历了4代单核版本的单片机,AURIX™ 是基于 TriCore™ 内核的多核架构单片机。

2.png

1、2014年推出的第一代 AURIX™ TC2x 集成了多达三个 TriCore™ 内核。

TC2x 系列单片机内部集成了安全管理单元  SMU ,对单片机内部的各个模块进行安全管理,电源供电 PMIC 芯片 TLF35584 除了完成电源供电,还可以和单片机交互,搭配  SafeTlib™ 软件可以实现自检并监控单片机运行是否正常,出现异常的情况下可以触发安全机制,使系统进入安全状态。

2、2018年推出的第二代 AURIX™ TC3x 集成了多达六个 TriCore™ 内核,将单片机性能提升到了一个新高度。

AURIX™ TC3x 系列单片机拥有卓越的实时性,全系型号可以达到功能安全最高等级 ASIL-D,集成了信息安全硬件加密模块,还有强大的互联接口,使其尤其适合众多汽车应用。

3、2021年推出的新一代 AURIX™ TC4x 系列为领先的 AURIX™ TC3x 系列提供了向上升级的途径。

它采用下一代 TriCore™ 1.8内核,以及可扩展的增强性能的加速器套件。其中包括新的并行处理单元 (PPU),这是一种 SIMD 矢量数字信号处理器 (DSP),可满足各种人工智能拓扑结构的需求,包括实时控制和雷达后处理等各种用例。产品系列的可扩展、高兼容性设计,使得用户可以采用通用的软件架构,从而大大节省了平台软件费用。

AURIX™ TC4x应用领域及特性概览

AURIX™ TC4x 面向广泛的汽车应用,包括基于域控和区控的 E/E 架构对功能集成的强烈需求,通过安全系统支持电动交通和自动驾驶的发展。英飞凌的 AURIX™ TC4x 提供增强的连接性,包括先进的功能安全和信息安全,进一步夯实英飞凌在高可靠高安全汽车电子产品领域的领先地位。

此外,新的 SOTA(软件空中升级)功能有助于满足主机厂对快速、安全的车到云连接的需求,实现现场更新以及车辆使用过程中的诊断和分析。新的 AURIX™ TC4x 系列 MCU 支持 5 Gbit 以太网和 PCI Express® 等高速通信接口,以及 CAN-XL 和 10BASE T1S 以太网等新的通讯接口。网络吞吐量和连接性的提高为客户提供了实施新 E/E  架构所需的性能和灵活性。

完善的AURIX™ TC4x 生态体系

考虑到汽车复杂性的不断增加以及人工智能技术的实现,AURIX™ TC4x 生态系统受到了极大关注,以确保产品快速上市和易于使用。英飞凌正与 Synopsys 合作,加快  AURIX™ TC4x 系列的软件开发。用于 TC4x 的 Synopsys Virtualizer™ 开发套件(VDK)可在设计周期的更早阶段进行软件开发。用于 AURIX™ TC4x 的  Synopsys DesignWare® ARC® MetaWare 工具包提供了为 PPU 开发软件所需的最佳编译器、调试器和库以及仿真器。 

其他合作伙伴也将提供相应的产品,并支持 MATLAB 自动代码生成,以实现快速原型开发。得益于跨代可扩展的兼容设计,已经使用现有 AURIX™ MCU 的客户将缩短开发时间,加快产品上市,并从中获益。显著的硬件和软件兼容性使客户可以广泛地重复使用现有的 TC3x 算法和生态系统。

AURIX™ TC4x 系列的主要特点一览

1、TriCore™ 和 AURIX™ 加速套件提供高

性能算力和经济的人工智能

  • 多达 6 个 TriCore™ v1.8 同步运行,主频高达 500 MHz

  • AURIX™ 加速器套件:

    • 并行处理单元 (PPU) - 实现高达 ASIL-D 的人工智能

    • 数据路由引擎 (DRE) -用于高效通信和数据处理

    • CDSP – 对模拟采样信号进行数字信号处理

    • 信号处理单元 (SPU) - 雷达信号处理加速器

    • 信息安全模块 (CSRM/CSS) - 硬件加密加速器

2、内存升级

  • 多达 25 MB 片上 NVM 存储空间

  • 通过优化的 A/B 交换分区和外部存储器接口支持零停机时间 SOTA

3、高级时钟模块和 AD 转换增加实时控制能力

  • 新型 eGTM 定时器和高分辨率 PWM,专用低延迟互连 (LLI) 总线

  • 用于电机控制和电源转换的更快控制回路

  • 与 AURIX™ TC3x 兼容的 GTM

  • 多种ADC 转换器 ,时分复用 ADC(TMADC) /快速比较器 (FC)/DSADC

  • CDSP/DSEX 加速器

4、更强的功能安全和信息安全性能

  • 包括 CSRM 和 CSS 在内的安全集群可提供更强的安全性能

  • 符合 ISO 21434 标准

  • 安全 DMA

  • 符合 ASIL-D 标准

5、为所有E/E架构微控制器提供丰富的网络通讯接口

  • 可扩展的高速通信接口:

    • 高达 5 Gbps 以太网

    • PCIe

    • 10BASE T1S 以太网

    • CAN-XL

  • 数据路由引擎 (DRE) - 通信加速器

6、广泛的生态系统

  • 英飞凌 MCAL 驱动程序

  • 可重复使用现有 AURIX™ TC3x 算法和生态系统

  • 利用 Synopsys - Virtualizer Development Kit for AURIX™ TC4x 虚拟原型支持快速原型开发

  • 软件开发工具包 (SDK)

  • 使用 Synopsys - MetaWare Toolkit for AURIX™ 简化 PPU 软件开发,其中包括 MATLAB 和 Simulink、DSP 和数学库、神经网络软件开发工具包以及 AUTOSAR 复杂设备驱动程序

供货情况

第一批 AURIX™ TC4x 样品已用于主要客户的设计中,各个型号将从2024年下半年逐步量产。AURIX™ TC4x 内部资料抢先看

3.png

未来的汽车需要什么样的 MCU?

  • 有更多潜力让汽车变得更加智能

  • 由人工智能提供更高效的处理能力

  • 适应新的电子电气架构

  • 有更广泛更安全的的网络连接

  • 适应更快速的技术迭代

4.png

AURIX™ TC4x 应运而生,为汽车工业提供最具吸引力的升级路径。

5.png

AURIX™ TC4x 助力开启汽车工业新纪元。

支持新的电子电气架构

  • 具有更高的 ASIL-D 算力

  • 安全网络连接大大增强

  • 适应新的软件开发模式

  电气化加速渗透

  • 助力达成零排放目标

  • 主机厂更专注于发展电动汽车

  • 纯电汽车比例不断提升

6.png

英飞凌一如既往地提供高可靠性 AURIX™ 系列 MCU,以满足汽车对高稳定性、高安全性、长期供应保障等多方面的要求。

  • AURIX™ 系列 MCU 全面的产品目录和灵活的可扩展性为用户升级和降本提供双向选择的平台化开发思路

  • 英飞凌长期发展与维护与可信赖合作伙伴的关系

  • 安全一直是 AURIX™ 系列 MCU 的核心竞争力

  • 非常高的稳定性大大降低失效风险

  • Tricore™ 内核及相关外设提供极强的实时控制性能

  • 有承诺的长期供货保证以及可靠的供应链管理

7.png

AURIX™ TC4x 采用28nm半导体制程工艺,并引入 RRAM 非易失存储介质(NVM)。该制程工艺,英飞凌与台积电已经合作长达8年之久,将助力 TC4x 系列 MCU 实现高性价比,并为下一代 MCU 持续迭代升级铺平道路。

8.png

AURIX™ TC4x 根据汽车发展的趋势,重点拓展电动汽车、域控制器/区域控制器、智能(辅助)驾驶、雷达、动力底盘等应用场合。

9.png

得益于 AURIX™ 系列 MCU 跨代高兼容性设计,用户在 TC3x 的开发经验,将大大减少移植工作量,加速产品上市时间。

  • 开发工具非常丰富,并且延续性好

  • 软、硬件设计兼容性好

  • 安全架构、理念一脉相承,并更加完善、强大

  • 一如既往的高可靠性

10.png

AURIX™ TC4x 根据下一代控制器的需求,在多个方面性能得到很大提升

更高处理能力

  • 更高的 Tricore™ 内核主频

  • 并行处理单元

  • 第三代高性能信号处理单元

  • 模数转换信号后处理 DSP

  • 数据路由引擎

  • 高精度 PWM

更高安全性能

  • 达到 ISO26262-2018 功能安全标准 ASIL-D 等级

  • 符合 ISO21434 信息安全标准

  • 更强的非对称加密能力

  • 支持多路并发对称加解密

更完善的硬件虚拟化支持及隔离特性

  • 支持内核、外设硬件虚拟化以及互相隔离

  • 每个物理内核支持多达8个虚拟机

  • 增强内存保护、DMA 保护

更丰富的网络连接

  • 高达 5G 以太网接口

  • 多达4个百兆/十兆低速以太网,并支持 10based-T1S 标准

  • PICe 3.0 接口

  • 支持 CAN XL

  • 支持 MACsec 硬件加密

11.png

AURIX™ TC4x 架构框图

12.png

得益于 AURIX™ TC4x 的硬件虚拟化性能,在一片 TC4x 芯片上,通过部署虚拟机软件,可以独立运行多个不同的 ECU 功能,并实现互不干扰。AURIX™ TC4x 虚拟化将在后续文章中进行专题讲解。

13.png

英飞凌具有多年的信息安全开发经验,从第一代AURIX™ 芯片就开始部署硬件安全模块(HSM)。现在 AURIX™ TC4x 的开发完全按照 ISO21434 信息安全标准进行开发。同时,英飞凌已经获得权威第三方颁发的 ISO21434 产品开发流程认证证书。

14.png

AURIX™ TC4x 引入并行处理单元(PPU)将助力其拓展在嵌入式AI领域的应用场景。例如,PPU 可以在域控制器/区域控制器、ADAS 、新能源汽车等多个应用中发挥高安全性智能预测、智能控制的关键作用。关于 PPU 的进一步介绍,敬请关注后续相关专题文章。

15.png

英飞凌已经为 AURIX™ TC4x 构建了全方位的开发工具链和软件生态系统。开发工具包括编译器、调试器、集成开发环境(e.g. ADS Limited)、虚拟原型(VDK)、模型仿真硬件支持包等。软件生态系统包括硬件底层驱动(MCAL)、AUTOSAR 协议栈、功能安全软件库(SafeTlib)、信息安全软件、PPU软件库、CDSP 软件库等。

16.png

与 AURIX™ TC4x 最佳搭配的新一代电源管理芯片 TLF4 系列 PMIC 也将同步上市,助力汽车控制器的安全性能再提升一个层次。敬请期待。

来源:英飞凌汽车电子生态圈

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 80

安全系统的开发对汽车市场至关重要。Rust 编程语言可用于内存安全软件的嵌入式开发,这是任务关键型汽车软件设计的一个重要推动因素。英飞凌科技股份公司(FSE 代码:IFX / OTCQX 代码:IFNNY)迈出了在嵌入式领域构建 Rust 生态系统的第一步,成为第一家正式支持在微控制器上运行Rust语言的头部半导体制造商。英飞凌市场领先的 AURIX™ TC3xx TRAVEO™ T2G 车用 MCU将率先支持Rust语言。虽然TRAVEO™ 使用的是 Rust 官方工具链和Arm Cortex-M 目标架构,但英飞凌的工具合作伙伴 HighTec EDV-Systeme AURIX 开发了专用的 Rust编译器。而PSoC AURIX TC4x 将在 2023 年下半年开始支持Rust语言。

1.jpg

AURIX TC3xx TRAVEO T2G系列微控制器产品为功能安全和网络安全提供了广泛的集成硬件功能。引入对Rust的支持则是从软件层面形成对硬件功能的补充。为AURIX TRAVEO 提供了外围设备通道库(PAC),便于对微控制器外设进行本地访问。使用 svd2rust 工具生成的 PAC遵循相同的外设访问 API 标准。用户在 GitHub 中搜索PAC,就可以通过其代码示例来了解如何在英飞凌微控制器上使用 Rust语言。

C/C++ 语言不同的是,Rust 语言是由开源社区开发的一门新编程语言,侧重于类型安全和并发支持。这门编程语言旨在通过提供简单易用的构建系统和软件包管理器“Cargo”来促进安全和可靠的软件开发。

关于英飞凌

英飞凌科技股份公司是全球功率系统和物联网领域的半导体领导者。英飞凌以其产品和解决方案推动低碳化和数字化进程。该公司在全球拥有约56,200名员工,在2022财年(截至930日)的收入约为142亿欧元。英飞凌在法兰克福证券交易所上市(股票代码:IFX),在美国的OTCQX国际场外交易市场上市(股票代码:IFNNY)。

更多信息请访问www.infineon.com

更多新闻请登录英飞凌新闻中心https://www.infineon.com/cms/cn/about-infineon/press/press-releases/

英飞凌中国

英飞凌科技股份公司于1995年正式进入中国大陆市场。自199510月在无锡建立第一家企业以来,英飞凌的业务取得非常迅速的增长,在中国拥有约3,000多名员工,已经成为英飞凌全球业务发展的重要推动力。英飞凌在中国建立了涵盖研发、生产、销售、市场、技术支持等在内的完整的产业链,并在销售、技术研发、人才培养等方面与国内领先的企业、高等院校开展了深入的合作。

围观 38

领先的数学计算软件开发商 MathWorks 和嵌入式软件安全与安保领域的全球领先者 Green Hills Software 宣布了一项集成,帮助工程师使用 Simulink® 为 Infineon AURIX™ TC4x 系列汽车微控制器设计安全相关应用。使用新微控制器系列的工程师可以通过 Green Hills Software 对 AURIX 的支持自动编译 Embedded Coder® 生成的代码,然后使用处理器在环(PIL)仿真执行背靠背测试。

1.jpg

图注:MathWorks Green Hills Software 的新集成可帮助工程师使用 Simulink® Infineon AURIX™TC4x 系列汽车微控制器设计安全相关应用

MathWorks 嵌入式代码生成产品经理汤姆·埃尔基宁表示:电动汽车和自动驾驶系统打破了传统规范,并在汽车电子产品开发的速度和范围上带来时代性变革。Green Hills 是一家领先的嵌入式软件供应商,我们与其协作来提供高度自动化的工具和工作流。这些工具和工作流符合严格的功能安全标准,如 ISO 26262

企业使用现代软件开发方法来管理硬件和软件的复杂性,包括虚拟仿真和自动化部署。通过这种集成,汽车工程师可以快速从算法设计转向生产部署,因为他们知道 MathWorks 和 Green Hills Software 的辅助工具支持主要的安全标准。验证用例、测试算法和自动生成嵌入式软件的能力可以缩短组织的产品上市时间。

“我们很多客户都使用 MathWorks 产品创建嵌入式系统的算法。Green Hills Software 业务开发总监罗布·雷德菲尔德说。“现在,这些客户不仅能够以简单易用的方式在嵌入式处理器上运行和验证这些算法,还可以在 Green Hills MULTI® IDE 中使用经过安全认证的优化 C/C++ 编译器和运行时库来调试、分析和优化其代码。”

这是 MathWorks 和 Green Hills Software 的最新协作。这些功能扩展了 MathWorks 与 Green Hills Software 之间的协作。双方之前在 2021 年协作推出了由 Green Hills 提供的 MULTI® Toolbox for Embedded Coder。该产品让工程师能够在各种嵌入式处理器上快速高效地开发和部署 Simulink 和 MATLAB® 模型。

Infineon Technologies AG 的合作伙伴和生态系统管理高级总监托马斯·施耐德表示:“MathWorks 和 Green Hills Software 之间的协作是加速使用 AURIX™ TC4x 系列开发安全关键应用程序的重要一步。MathWorks 和 Green Hills Software 是成功支持我们客户的发展的两个重要合作伙伴。”

关于 MathWorks

MathWorks 是全球领先的数学计算软件开发商。来自该公司的 MATLAB 被称为“科学家和工程师的语言”,是一个集算法开发、数据分析、可视化和数值计算于一体的编程环境。Simulink 则是一个模块化建模环境,面向多域和嵌入式工程系统的仿真和基于模型的设计。这些产品服务于全球工程师和科学家,帮助他们加快步伐,在汽车、航空航天、通信、电子、工业自动化及其他各行各业更快地实现发明、创新和开发。MATLAB 和 Simulink 产品也是全球众多大学和学术机构的基本教研工具。MathWorks 创立于 1984 年,总部位于美国马萨诸塞州的内蒂克市(Natick, Massachusetts),在全球拥有34个分支机构,共有 6,000 多名员工。有关详细信息,请访问cn.mathworks.com

关于 Green Hills Software

Green Hills Software 成立于 1982 年,是嵌入式安全领域的全球领导者。在 2008 年,Green Hills INTEGRITY® - 178 RTOS 是第一个也是唯一获得 NIAP(由 NSA 和 NIST 组成的国家/地区信息保障合作组织)EAL 6+ 高稳健性认证的操作系统,这是当时任何其他软件产品都无法达到的最高安全级别。通过我们的开放式架构集成的开发解决方案,可以开发针对军事/航空电子、医疗、工业、汽车、网络、消费和其他需要行业认证解决方案的深度嵌入、绝对安全和高可靠性的应用程序。Green Hills Software 的总部位于加利福尼亚州圣巴巴拉市,欧洲总部位于英国。请访问 Green Hills Software 网站 www.ghs.com

围观 23

页面

订阅 RSS - AURIX™ TC4x