详解英伟达最新自动驾驶芯片-Atlan
英伟达在2019年12月推出Orin后沉寂一年半推出新一代自动驾驶SoC,即Atlan,从命名来看,Nvidia 还在使用《海王》(Aquaman)系列中的名字。在2019年开始,Nvidia宣布的Orin SoC,就是以亚特兰蒂斯的第一统治者命名的。而今天 Nvidia 宣布了以 Orin 之父命名的 Atlan SoC。相对Orin,Atlan可谓颠覆性的,与Orin远非一个系列的产品,与其说它是一个车载芯片,不如说它是一个大型数据中心服务器芯片,不太考虑成本,不太考虑功耗。



资料来源https://en.wikipedia.org/wiki/Tegra#Orin




支持8/16/32位整数操作,支持非IEEE兼容单精度浮点操作,支持指令条件执行
32个64位矢量寄存器,也可视为16个128位矢量寄存器
旨在CPU端加速多媒体处理任务
支持IEEE兼容单精度和双精度浮点操作和64位整数矢量操作
2个128位矢量寄存器
这些改进使NEON指令集更适用于通用计算,而不仅仅是多媒体计算
128位的整数倍. 最高可支持2048位 不同的实现可以适应不同的应用场景,不用更改指令集 每通道预测 支持复杂嵌套循环和if/then/else条件跳转, 没有循环尾数。 聚集加载和分散存储支持复杂数据结构,如步长数据存取、数组索引,链表等。 横向操作 支持基本的reduction操作,降低循环依赖性

SVE2是针对机器学习设计的,通用矩阵乘法GEMM指令是其最突出特色。我们都知道AI加速器就是乘和累加MAC的堆砌,其特色就是一次可以执行乘和加两个指令。实际是一种矩阵乘法累加器,在ARM v8.6中也加入了GEMM指令,乘法累加器中,乘法要遍历每一个矩阵中的数值(通常是像素),这是最费时间的地方,加法器则要快的多,ARM的CPU不能像AI那样堆砌MAC,但是可以加速矩阵乘法,让后端的多核处理器部分工作量大大减轻。这近似于一个超高速DSP,频率不高,但带宽很高。


简单地说就是用4个小芯片合成一个大芯片,英伟达称为MCM技术。

上图为英伟达采用MCM-GPU和多GPU性能对比。英伟达在2019年VLSI大会上提出RC-18概念,采用36个小芯片。
不仅GPU或者说AI芯片可以这样做,CPU也可以,这就是AMD在服务器领域崛起的关键,最典型的是AMD的32核(应该是32小芯片)EPYC,这种方式最大优点是成本低,如果将32核封装到一块芯片中成本是1,那它们的MCM方式只有0.59,换言之,节省了41%的成本。

把小芯片合成一个大芯片,貌似就是一个“胶水”大法,但实际门槛是很高的,能支持的只有台积电CoWos和英特尔的EMIB工艺,英伟达一向不喜欢台积电,更喜欢三星。和高通一样,英伟达知道不能过分依赖台积电,否则容易出现供应链问题,也就是后来英伟达基本放弃MCM路线。
回到Atlan,Atlan可能用了ARM V1提供的CXL小芯片,即内存扩展,减少内存于处理器间的物理距离是解决AI处理器内存瓶颈的最有效方式。CCIX比较复杂,可能下一代会用。
再来看Bluefield即DPU部分,2020年4月英伟达花70亿美元收购了以色列芯片公司Mellanox Technologies, Ltd.(迈络思科技有限公司),通过融合Mellanox的技术,新的NVIDIA将拥有从人工智能计算到网络的端到端技术,以及从处理器到软件的全堆栈产品,拥有足够的规模去推进下一代的数据中心技术。

Mellanox的主要产品就是名为Bluefield的芯片,英伟达将其改名为DPU。其实际上是一个高级的网卡。DPU专门执行原本需要CPU处理的网络、存储和安全等任务。这就意味着如果在数据中心中采用了DPU,那么CPU的不少运算能力可以被释放出来,按照英伟达的说法,一个DPU顶125个CPU的网络处理能力。
英伟达计划在2022年推出3代Bluefield。复杂一点的说法是DPU是一个可编程的电子部件,其处理数据流,数据可作为信息的复用包与组件传输。DPU具有中央处理单元(CPU)的通用性和可编程性,但专用于处理网络数据包、存储请求或分析请求上高效运行。DPU通过更大程度的并行性(可同时处理更多的数据),因而对比起CPU更胜一筹。
同时,DPU的MIMD架构相比图形处理单元(GPU)的SIMD架构更为优秀,其每个请求都需要做出不同的决定并遵循不同的路径通过芯片,从而使其区别于GPU 。也就是英伟达说的软件定义网络,Mellanox NVMe SNAP (软件定义的网络加速处理)技术可以为远程存储提供2.5M + IOPS读/写访问,这是4KB块大小时100Gb / s的线速性能。相比之下,入门级NVMe SSD可以提供带有4 KB块的300K IOPS。此外,BlueField-2 DPU毫不费力地以100 Gb / s的速度添加了IPSec加密和解密功能。

上图为二代Bluefield,内含8个ARMA72,Atlan里的要处理数据带宽远小于传统服务器,两个A72足够。Atlan里的DPU主要针对车载骨干以太网和外接的PCIe网络,内置网络控制器和PCIe交换,以太网可轻易支持到100G,PCIe则支持到第四代,也可以做数据采集车的网络接口芯片,与超高速固态硬盘连接。不过物理层芯片还是绕不开Marvell、德州仪器和博通。
最后是功能安全隔离岛,应该就是ARM发布的Cortex-R52。英伟达所说的功能安全岛与ARM所说的安全岛的宣传词都基本一致。R系列是ARM专门为实时性要求高的场合开发的内核,R52是R系列旗舰产品,之前英伟达芯片从未采用过R内核。

支持多个操作系统:借助虚拟化功能,开发人员能够在单个CPU内,使用多个操作系统来整合应用。这样可以简化功能的添加,而无需增加电子控制单元的数量。 实时性能:Cortex-R52+的高性能多核集群可为确定性系统提供实时响应能力,且在所有Cortex-R产品中产生的延迟最低。


