分享

双维度浅析国内汽车MCU芯片现状与突围

 山蟹居 2022-08-15 发布于上海
图片
关于汽车芯片的投资,这两年一直不绝于耳,前几年大家更关注由于汽车集中式架构、智能座舱、自动驾驶等变革带来的高算力SOC芯片的需求。但最近一年的汽车MCU缺芯潮,将大家的目光聚焦在了MCU芯片上,MCU芯片虽然算力不及SOC芯片,但不可或缺。作为汽车中核心的计算芯片,从简单的雨刷、车窗、座椅功能控制,到复杂的车载娱乐信息系统,几乎每一个单独的模块都会用到一颗或者多颗MCU芯片来实现控制。但是不同的MCU芯片到底有什么区别,我们从架构和功能安全验证两个维度来分析。

01
以处理器系列来区分MCU

汽车MCU芯片中,ARM架构应用广泛
众所周知,ARM架构是当今世界上最受欢迎的RISC架构,在手机芯片中应用广泛,在全球手机市场中有超过95%的市占率。汽车市场中,ARM架构也非常受欢迎,目前IVI和ADAS领域有超过60%的芯片均基于ARM架构开发。这其中大部分是直接采用ARM公司的微架构IP授权,少部分采用ARM架构授权自行研发处理器,例如高通基于ARM v8架构授权自研了Kyro处理器。
ARM处理器经过多年的发展和经营,具有多个系列
大方向上可以分成ARM Classic和ARM Cortex两大系列,Cortex是Classic处理器(ARM 11)以后的产品新命名系列,采用的是ARM v7或者ARM v8架构。在Cortex系列下又可以细分为三大系列,分别是Cortex-A、Cortex-R、Cortex-M,不同的系列的处理器具有不同的性能,以满足不同应用场景下的需求。
图片
ARM处理器产品线
  • Cortex-A是面向性能密集型系统的应用处理器:追求高算力,例如Cortex-A77的时钟频率可以达到2.6GHz,Cortex-A78频率可达3.0GHz。Cortex-A处理器可加载系统和应用,主要应用在移动计算,智能手机,服务器等领域。

  • Cortex-R是面向实时应用的嵌入式处理器:追求高可靠性、低容错、高实时响应,加载实时操作系统。时钟频率通常在数百MHz,可以加入双核冗余锁步(lock-step)、多级流水、低延迟中断等特殊设计,以保证处理器能够快速响应,实时可靠,主要用在工业控制器、固态硬盘驱动、汽车动力系统控制、底盘控制等领域。

  • Cortex-M是面向各类嵌入式应用的微控制器处理器:追求低功耗和性价比,算力和实时性一般,时钟频率通常在100-200 MHZ,主要用在汽车、工业、家电、消费电子领域。

图片
ARM 三大系列处理器应用领域
图片
不同系列ARM处理器在汽车电子中的应用
 资料来源:ARM官网
不同系列Cortex处理器在汽车中的应用各不相同
汽车架构按照功能可以分成五大域:座舱域、自动驾驶域、动力域、底盘域、车身域。
  • 智能座舱、自动驾驶域:对算力要求较高,需要运行高级操作系统,对实时性的要求相对低一些,因此通常会采用Cortex-A处理器。
  • 动力域和底盘域:与行车安全直接相关,对实时性要求较高,算力要求相对较高,通常会采用Cortex-R处理器。
  • 车身域:算力和实时性要求都不高,通常只具备执行功能,一般会采用Cortex-M处理器。例如车窗控制、雨刷控制等。


02
以车规验证来区分MCU 

为什么汽车MCU芯片需要进行车规验证?
将汽车芯片和消费类芯片对比,汽车芯片的工作环境更加恶劣,通常需要达到15-20年的使用寿命,再加上汽车芯片与行车安全息息相关,因此人们对于汽车芯片的可靠性有着非常高的要求,不仅要求芯片的质量过硬,内部的功能设计上也不允许出错。为此一颗汽车芯片出厂需要经历严格的车规检验。
图片
对汽车芯片的要求远高于消费类电子芯片 
汽车MCU芯片需要进行哪些车规验证?
汽车MCU芯片需要通过的验证主要有两个:ACE-Q100和ISO 26262:
ACE-Q100是芯片质量验证,通过验证相对容易
ACE-Q100是由汽车电子协会发布的一套集成电路质量测试标准。其主要目的就是对芯片的质量安全进行考核,比如检测在高盐、高湿、高温等环境下芯片是否能够稳定运行不受影响。ACE-Q100的标准根据汽车零件工作温度,又将等级划分成Grade0、1、2、3、4,其中0级最为严格,适用温度范围在-40°C至150°C,一般底盘或动力系统的芯片均需要达到至少Grade 1的要求。
图片
ACE-Q100等级区分
ACE-Q100验证整体来较为容易,国内大多数汽车芯片厂商通过的是这一验证。较难通过,时间最长的验证是ISO 26262功能安全认证。
ISO 26262为芯片功能安全验证,是车规验证的最主要门槛 
ISO 26262是一个汽车电子的国际标准。这个标准从文档管理、流程规划、功能设计和任务执行等方面给MCU芯片设计厂商提供了具体的指导,严格遵循指导方法设计出来的芯片,将最终实现一定程度的功能安全。
整个ISO 26262的验证分成两步:开发流程验证和产品验证,开发流程验证需要国际专业第三方机构全流程跟踪,一般性认证机构有三家,分别为TV Rheinland、TV SUD和SGS TV。MCU厂商需要在启动芯片定义时就同步启动开发流程验证,以确保芯片设计的流程、方法符合ISO 26262的功能安全要求。只有在通过开发流程验证后,才能启动产品验证。通过ISO 26262验证的难点在于产品验证,只有满足功能安全要求的产品才能顺利通过产品验证。
何谓功能安全?
功能安全简单来说就是要求芯片在运行过程中达到接近于0的错误率。ISO 26262使用ASIL A/B/C/D四大等级来标明功能安全的程度,其中A是最低的等级,D是最高的等级。等级越高,芯片的出错率越趋近于0,也就是单点故障覆盖率越趋近于100%。例如,ASIL A等级对芯片单点故障的覆盖率要求达到90%以上;而ASIL D等级对芯片单点故障的覆盖率要求达到99%以上。
安全等级越高,随之而来的开发流程也越严格、技术要求也更高,相应的开发周期延长,为实现安全付出的代价也越高。从ASIL A到ASIL D,每提升一个等级,难度几乎是量级提升。
出于成本考虑,一般与行车安全要求息息相关的领域,例如发动机控制、底盘控制、安全气囊、防抱死制动系统和动力转向系统必须达到ASIL D级,因为其失效带来的风险最高。而安全等级范围低的领域,如后灯等部件,仅需达到ASIL A级即可。例如大灯和刹车灯通常是ASIL B级,而巡航控制通常是ASIL C级。
图片
部分汽车模块的功能安全等级要求  
资料来源:Synopsys官网
如何实现功能安全?
1)加入大量安全机制设计
为了实现最高功能安全,汽车MCU设计厂商不仅需要严格遵循ISO 26262开发流程,还需要在芯片设计过程中引入大量安全机制设计,例如在芯片设计时加入CPU多核锁步、独立安全功能岛、全部外设片内集成、Memory失效处理、DMA冗余设计等,以最大程度地规避系统故障。
这里主要介绍CPU多核锁步,这是一种非常重要的安全机制技术,基本工作原理是在一个芯片中放两个相同的处理器,一个作为Master core,一个作为Slave core,它们执行相同的代码并严格同步,由比较逻辑模块检查它们之间的数据、地址和控制线的一致性。检测到任何值不一致时,就会发现其中一个CPU上存在故障。这种CPU架构使得实际运行的软件指令在每个时钟都进行比较,能有效防止失效的产生,并且CPU自检独立于应用软件,不需要执行专门的指令集自检,不占用CPU资源。
图片
双核锁步的安全机制
2)配合严格的失效分析
由于在汽车运行过程中,任何不正常的电气条件和不正常的工作环境都会导致电子元器件故障。通常半导体器件常见的失效就包括开路、短路、无功能、特性劣化、重测合格率低,结构性差等。为了预测系统和元器件的潜在失效行为并分析其对系统带来的影响,MCU设计公司还会结合先进的验证工具,对芯片进行FMEA 、FTA、和FMEDA失效分析。
FMEA:Failure Mode and Effects Analysis,潜在失效模式与后果分析。是在产品设计阶段,即对构成产品的各子系统、零部件、程序逐一进行分析,找出潜在的失效模式,分析其可能的后果,评估其风险,并预先采取措施来降低失效模式发生的概率和严重性。从定义上可以看出,FMEA是一种自下而上(Bottom-Up)的归纳分析方法,也因此FMEA只考虑到单点故障,即一个原因对系统失效的影响,默认其它原因不变或不产生影响。
FTA:Fault Tree Analysis,故障树分析。它从系统开始,用事件符号、逻辑门符号和转移符号描述系统中各种事件之间的因果关系,是一种自上而下(Top-Down)的演绎分析法,简单来说FTA就是从影响出发找出原因,并找到各个失效原因之间的关联性。FTA通常把顶层影响称为顶层事件,底层原因称为原始事件。举个例子,如果顶层事件是物体起火爆炸,而底层事件则是点火源、燃料、氧气,如果只采用FMEA方法单点分析点火源或者氧气,都不会发现导致起火的原因,而FTA将发现三个底层事件共同作用下会导致顶事件的发生。
图片
FMEA、FTA分析方法对比
FMEDA,Failure Modes Effects and Diagnostic Analysis,失效模式影响和诊断分析。FMEDA是在FMEA的基础上,加入了两大部分:一是底层故障的各个故障模式失效率和故障模式占比,二是故障模式的诊断及诊断覆盖率。可以认为FMEDA是在FMEA基础上更定量的分析方法, 把每一个失效都量化,通过计算失效率, 看是否能够满足ISO 26262指标的要求。通常的失效分析步骤是先进行FMEA单点故障分析,再进行FTA分析,最后在FMEA和FTA的基础上进行FMEDA分析。
3)采用通过认证的IP
一个芯片的失效分为Package/Pin失效和Die失效,Package/Pin失效就是芯片的PIN脚连接失效,而Die失效就是裸片失效。Die失效继续分为数字部分失效、模拟部分失效、存储单元失效、时钟单元失效、逻辑单元失效等等。虽然ISO 26262不要求芯片使用的IP都通过功能安全验证,只对芯片的整体失效率提出了要求。但是如果能够使用已通过ISO 26262的IP,将有效地帮助整颗芯片降低失效率,更快速通过ISO 26262验证。例如ARM-Cortex R5处理器即通过了ISO 26262 ASIL D验证,意味着基于R5处理器开发的MCU芯片通过ISO 26262 ASIL D的成功率更高。
ARM Cortex-R5 IP功能安全认证证书
资料来源:ARM官网

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多