上一章节有提到低算力的自动驾驶平台,本章内容重点介绍高算力的自动驾驶平台,华为、高通、英伟达。
华为自动驾驶MDC平台方案介绍
以整车数字架构为基础,全面管理软硬件的复杂性,并确保整车的可靠性:我们提出华为CCA+VehicleStack构建数字系统,这个数字系统可以看一个传统车有六层。
最底下是机械层,第二层是高压电池电气层;第三层是低压的部件层,传感器,执行器,甚至是网关、计算、域控制器等等,再上面一层是软件层,这里含娱乐系统的操作系统、自动驾驶的操作系统、车控的操作系统,而且还包含跨操作系统的VehicleStack,我们叫整车级的中间件,再上面是应用层,比如座舱的应用程序、自动驾驶的应用程序和整车控制的应用程序,再上面是云服务层。
整车数字系统架构设计理念从长期来看,一是软件可升级,可以做到跨车型、跨软件,甚至跨车企的软件重用;硬件来讲,要做到可扩展、可更换,甚至做到传感器的即插即用,将来这个车如果你要开发,现在你买的车可能是L2的,只有5个毫米波,1个摄像头,将来要升级上去,要更高的自动驾驶,可以买两个激光装上去,同时买个自动驾驶的硬件装上去,使得你这个车具有更高阶的功能,而不是每次想要一个新功能的时候重新换车。因为在“摩尔定律”的作用下,电子电池部件更新换代是非常快的,但是换车的话可能要5-10年
华为定义了三个域控制器:VDC(智能车控平台)负责整车和底盘域,MDC(智能驾驶平台)负责自动驾驶域,CDC(智能座舱平台)负责娱乐域。
华为的CCA+VehicleStack架构从长远的设计理念来看,目标是实现软件跨车型、跨车企的升级和复用,以及硬件的可拓展、可更换,甚至是传感器的即插即用。此外,该架构力求构建可信的安全体系,具体包含整车的数字安全、网络安全、功能安全与隐私保护,使汽车成为持续创造价值的平台。当汽车销售给消费者后,可以像智能手机一样在汽车平台上购买更多的应用和服务,为整车厂和开发商提供持续盈利的空间,从而形成一个正向的商业循环。
CCA+VehicleStack包含基于区域的架构硬件层和整车级软件框架:
1)硬件层方面,在车辆识别单元(VIU)上就近接入相应的传感器和执行器,甚至部分ECU,由VIU为以上电子元器件供电,几个VIU就可以提供高速的以太总线进行互联,搭建环网。即使部分VIU损坏,整个环网也可以通过环回的路线保证通讯安全。在此基础上,华为定义了三个域控制器:VDC(智能车控平台)负责整车和底盘域,MDC(智能驾驶平台)负责自动驾驶域,CDC(智能座舱平台)负责娱乐域。
2)软件框架方面,整车的框架是基于服务的架构,采用微服务和微插件。整车级框架要实现数据的预处理、分组、加密、聚合、分发,同时提供功能安全和网络安全服务。最后在该架构上实现应用程序编程接口(API),让上层的整车管理、热管理、ADAS等应用得以实现。
MDC平台参数说明:
华为MDC平台遵循平台化与标准化原则,包括平台硬件、平台软件服务、功能软件平台、配套工具链及端云协同服务,支持组件服务化、接口标准化、开发工具化;软硬件解耦,一套软件架构,不同硬件配置,支持L2+~L5的平滑演进,保护客户或生态合作伙伴的应用软件开发的历史投资。
华为的自动驾驶计算平台由车 BU 下的 MDC 产品部负责。
MDC 上采用的 AI 协处理器是昇腾系列芯片,而 CPU 来自华为的泰山服务器事业部,即鲲鹏系列芯片。
MDC 全称是 Mobile Data Center,移动数据中心。
MDC 的成员部分来自华为的中央硬件部,后者以开发 ARM 服务器为主要业务,之后转到自动驾驶领域。
MDC 的芯片部分仍由海思提供。
MDC 目前主打两款产品:
一款是用在 L2+ 上的 MDC 210
另一款 MDC 610,主要用在 L4 上
MDC 210 的 CPU 部分未知,AI 处理器是昇腾 310。
MDC 610 的 CPU 很可能是鲲鹏 916,AI 处理器是昇腾 610。
鲲鹏 916,在海思内部代号是 Hi1616,是 2017 年的产品。
其采用 32 核 ARM A72 并联设计,最低功耗 75 瓦,标准 TDP 功耗 85 瓦,对标英特尔至强系列服务器 CPU。
华为鲲鹏 916 参数与内部框架图如上:
采用了 16 纳米工艺,也就是说中芯国际能够代工。
鲲鹏系列更高级的产品是 920,海思内部代号 Hi1620,采用了 16 - 96 核设计,华为自研的架构,ARM v8.2 指令集,7 纳米工艺。
鲲鹏 930 计划采用 5 纳米工艺。
上面说到,华为 MDC 的 AI 处理器主要是昇腾 310 和 610。
按照华为的路线图,官方原计划在 2020 年推出昇腾 320、610 和 920,但一直到目前都没有消息。
昇腾 310 是采用台积电 12 纳米 FFC 工艺制造,于 2018 年推出,因此性能一般,只有 16TOPS 算力。
从华为的官方介绍看,昇腾 920 和 610 都是定位于服务器深度学习训练用的,不是用于车载应用。
这两款处理器有明显的 Cowos 多存储芯片封装设计,这种封装成本也很高,不适用于成本敏感的领域。
华为智能驾驶涉及到感知、融合、定位、决策、觃划、控制等多个环节。激先雷达点云数,据处理需要大量CPU算力,摄像头数据需要AI算力,定位、决策、规划、控制等逻辑处理癿环节需要CPU算力。
集合了鲲鹏CPU芯片和昇腾AI芯片癿MDC平台为多样化的智能驾驶提供了算力支撑。
MDC内部模块的功能安全ASIL分解如下,以满足整体ASIL D的目标。
这次最新的上海车展上,华为又发布了计算平台MDC810,即将在极狐阿尔法S上量产。
即将量产的MDC 810,是业界目前已经量产、最大算力的智能驾驶计算平台,稠密算力高达400 TOPS,达到ASIL D功能安全要求,搭载智能驾驶平台软件MDC Core(含智能驾驶操作系统AOS、VOS),配套完善工具链,可满足拥堵跟车(TJP)、高速巡航(HWP)、自动泊车(AVP)等高级别自动驾驶应用场景所需,已率先搭载在ARCFOX极狐阿尔法S上并量产上市,后续将有越来越多的搭载不同MDC系列产品的新车型陆续量产上市。
作为专业的智能驾驶计算平台,华为MDC采用“统一硬件架构,一套软件平台,系列化产品”的研发规划。华为MDC系列产品(MDC 210/MDC 300F/MDC 610/MDC 810),基于领先的基础平台与安全架构,提供48~400+ TOPS的弹性算力与丰富的传感器接口,配套持续升级的平台软件MDC Core(含AOS、VOS等),前向兼容长期平滑演进,保护客户历史投资与持续能力积累,覆盖L2+~L5级别自动驾驶的乘用车、商用车、作业车等不同应用场景。
高通自动驾驶平台方案介绍
1、高通自动驾驶平台Snapdragon Ride 平台基本信息
1) 该平台包括安全系统级芯片SoC(ADAS应用处理器)、安全加速器(自动驾驶专用加速器)和自动驾驶软件栈,可支持L1~L5级别的自动驾驶;
2)安全系统级芯片SoC和安全加速器的功能安全安全等级为ASIL-D级;
3)平台高度可扩展、开放、完全可定制化,且能够提供功耗高度优化的自动驾驶解决方案;
4)平台将于2020年上半年交付OEM和Tire1进行前期开发,搭载该平台的汽车预计将于2023年投产。
2、Snapdragon Ride硬件平台
Ride平台由应用处理器和AI加速器组成,这些AI加速器的范围从高级驾驶辅助系统(ADAS)的SAE 1级扩展到完全自治的SAE 5级。Ride平台利用基于域的体系结构,该体系结构允许汽车制造商将多个车辆域聚合到一个集中式平台中,并且还可以使用基于以太网,PCIe或CAN-FD的网络在所有主要系统之间进行通信,从而实现高速连接。
该平台包括两大核心芯片和自动驾驶软件栈:安全系统级芯片SoC(ADAS应用处理器)、安全加速器(自动驾驶专用加速器,ASIC芯片),全部达到ASIL-D,可支持L1~L5级别的自动驾驶;
ADAS应用处理器:Kryo CPU、Adreno GPU、神经处理器、嵌入式视觉处理器
自动驾驶专用加速器(ASIC):神经处理器阵列
L1/L2级ADAS:面向具备AEB、TSR和LKA等驾驶辅助功能的汽车
硬件支持:1个ADAS应用处理器,可提供30 TOPS的算力
L2+级ADAS:面向具备HWA(高速辅助)、自动泊车APA以及TJA(低速辅助)功能的汽车
硬件支持:2个或多个ADAS应用处理器,期望所需算力要求60~125 TOPS的算力
L4/L5级自动驾驶:面向在城市交通环境中的自动驾驶乘用车、机器人出租车和机器人物流车;
硬件支持:2个ADAS应用处理器 + 2个自动驾驶加速器(ASIC),可提供700TOPS算力,功耗为130W
Snapdragon Ride 硬件平台示例
1)摄像头7个
前部:1个长距 +1个中距 侧部:2个侧前视 +2个侧后视 后部:1个长距
2)毫米波雷达 6个
前部:1个长距 + 2个中距 后部:1个长距 + 2个中距
3)高精地图
4) CV2X接收装置
Snapdragon Ride软件平台
Snapdragon Ride 软件平台包括:规划堆栈、定位堆栈、感知融合堆栈、系统框架、核心软件开发工具包(SDK)、操作系统和硬件系统;
平台还包括一个完整的软件堆栈,该软件堆栈支持包括Linux和QNX在内的多个操作系统,以及由高通公司设计和开发的应用程序,这些应用程序可利用感知,本地化,传感器融合和行为计划来自我导航高速公路驾驶员应用程序。顾客,包括OEM和一级汽车电子供应商在内,将能够自定义和添加其他应用程序。
高通驾驶平台 Snapdragon Ride 将于 2022 年应用到长城汽车的高端车型上,这个平台如果预先的硬件支持到L4级别的算力的芯片平台,后面可以通过不断OTA进行软件能力升级,让你的车辆一直处于领先的自动驾驶地位。
总体而言,高通骁龙产品策略应该还是以车载娱乐信息系统为主,逐步向更专业的ADAS拓展。
英伟达自动驾驶平台方案介绍
英伟达是全球最大的智能计算平台型公司,公司从早期专注PC图形计算,后来逐步将重点扩展到AI领域,并在3D图形的持续需求与游戏市场规模扩张推动下,利用GPU架构,创建VR、HPC(高性能计算)、AI平台。英伟达在独立显卡、GPU领域有超过70%的市场份额。除了优秀的硬件性能外,英伟达开发了基于GPU的“CUDA”开发平台,CUDA工具包包括了GPU加速库、编译器、开发工具等,为开发者提供丰富的开发软件SDK,支持现有的大部分的机器学习、深度学习开发框架,开发者可以在CUDA平台上使用自己熟悉的开发语言进行应用开发。在不改变硬件的前提下,通过软件和库的完善,过去2年英伟达将计算性能提升4倍,AI性能提升2倍,所需的开发时间大幅缩短。
公司花费了大量时间培养自己的开发生态,包括与高校合作培训专业人才、开展专业竞赛,培养、发展英伟达“GPU+CUDA”的开发者群体,形成了相当可观的产品使用人群, 2019年全球已经有超过160万CUDA开发者。中国CUDA开发者数量众多,数量也增长最快,目前已经超过了30万,并且还在以每个月新增1万人的数量增长。2020财年英伟达实现总收入109.2亿美元,其中汽车部门收入7亿美金,占总收入比例6.4%,同比增长9%。
自2015年开始,英伟达已经推出4代自动驾驶计算平台分别为:Drive PX、Drive PX2、Drive AGX Xavier/ Pegasus、Drive AGX Orin。
Drive PX2:算力24TOPS,性能强,受到很多车企和自动驾驶企业的青睐,如特斯拉。
Drive AGX Xavier/Pegasus:Xavier芯片12nm制程,分为面向L2/L3级(小鹏P7/上汽荣威)、L4/L5级自动驾驶(文远知行、小马知行)两种。
Drive AGX Orin:算力2000TOPS,功耗目前为800W,功耗较高,仍需优化。
在自动驾驶领域,英伟达提供芯片+开放软件生态,提供包括Drive AV、Drive IX、Drive Sim等软件在内的完整的开发者套件。
在未计算图灵GPU的价格下,英伟达面向L4、L5级的AGX Pegasus的载板,成本总计大约6090元人民币。
单纯的一片Xavier价格大概600元左右。
2017年1月,英伟达发布用于自动驾驶领域Xavier系统级SOC芯片, Xavier拥有超过90亿个晶体管,配置了一个8核CPU、一个全新的512核Volta GPU、一个深度学习加速器、全新计算机视觉加速器、以及全新8K HDR视频处理器,针对自动驾驶数据量做了特殊的设计和优化,采用了16nmFinFET工艺,功耗为30W,算力达到30TOPS。2020年4月上市的小鹏汽车 P7,成为首款搭载 NVIDIA DRIVE AGX Xavier 自动驾驶平台的量产车型,小鹏 P7 配备了13 个摄像头、5 个毫米波雷达、12 个超声波雷达,集成开放式的 NVIDIA DRIVE OS 操作系统。
2019年12月英伟达发布了新一代面向自动驾驶和机器人领域Orin芯片和计算平台,可扩展、可编程,具有ARM Hercules CPU内核和英伟达下一代GPU架构。Orin SoC包含170亿晶体管,晶体管的数量几乎是Xavier SoC的两倍,具有12个ARM Hercules内核,将集成下一代Nvidia GPU,提供200 TOPS@INT8性能,接近Xavier SoC的7倍,Orin SOC将在2021年提供样片,2022年正式面向车厂量产。
2020年5月GTC上,英伟达介绍了即将发布的新一代自动驾驶Drive平台,Drive平台如果搭载两个Orin SoC和两块NVIDIA Ampere GPU,可以实现从入门级ADAS解决方案到L5级自动驾驶出租车(Robotaxi)系统的全方位性能提升,平台最高可提供2000TOPS算力。
蔚来ET7 使用orin芯片。
ET7搭载了4颗NVDIA Drive Orin芯片以及800万像素的摄像头,这两个硬件设备是视觉自动驾驶技术实现的根本。先来说下芯片,这款芯片是专业的车载芯片。
ORin芯片可以支持基于Cuda和TensorRT做深度学习模型的服务,TensorRT是一个模型服务的框架,可以支持各种框架产生的模型。
ET7每秒钟可以产生8GB的视频,而视觉自动驾驶技术,其实就是一个物体识别模型实时inference的流程,需要保持每秒钟超过10个以上的图片识别请求效率。所以视觉自动驾驶的实现前提是强大的芯片计算力。Orin芯片是这个计算力的保证。
ADAM由4颗英伟达Drive Orin芯片组成,它们在大多数时候都是各司其职,其中两颗芯片负责自动驾驶,一颗为冗余芯片,最后一颗负责群体智能与个性训练。
四颗芯片的核心数据如下:48个CPU内核,256个矩阵运算单元,8096个浮点运算单元,共计680亿个晶体管。正是这些芯片,让每天近8亿的数据量,高效稳定地运行在蔚来的这套NAD系统上。