登录 | 注册 退出 投稿

【汽车芯片】为AI时代重新架构SoC

专栏作者 2023-11-20

内容提要:本文将定义人工智能,描述其应用和问题,以及设计人员如何通过新的SoC和片上网络(NoC)设计方法来解决这些问题。还描述了在符合ISO 26262功能安全要求的汽车SoC中实现AI功能的挑战。


摘要

人工智能(AI)的发展要求半导体公司重新构建其片上系统(SoC)设计,以提供更具可扩展性的性能、灵活性、效率和集成度。从边缘计算到数据中心,人工智能应用程序需要重新考虑内存结构、异构处理器和硬件加速器的数量和类型,并仔细考虑如何在各种高性能IP块之间启用和管理数据流。

本文将定义人工智能,描述其应用和问题,以及设计人员如何通过新的SoC和片上网络(NoC)设计方法来解决这些问题。还描述了在符合ISO 26262功能安全要求的汽车SoC中实现AI功能的挑战。

1.人工智能的演变

事实上,真正的人工智能还有很长的路要走,目前它是使用基于卷积神经网络 (CNN) 的机器学习 (ML) 等技术来实现的。这些技术最终可能会成为未来人工智能的一个子集,或者人工智能可能会走一条完全不同的道路。不管怎样,神经网络是当前人工智能方法的核心(见图1)。

1.png

图1:大脑的神经网络(左)及其数学模型(右)是当前人工智能方法的基础

在神经网络中,单个神经元接收来自树突的输入信号并沿轴突产生输出信号。信号通过突触权重与其他神经元的树突相互作用,由右侧的变量“wx”表示。权重值是在训练和算法开发过程中学习的,它们控制输入树突对神经元“发射”能力的影响程度。神经元放电的能力由激活函数 (f) 决定,该函数与输入值之和乘以每个输入树突的权重有关:高于或低于某个阈值的值会在输出轴突上产生输出信号。然后输出轴突连接到不同神经元的树突。

为了形成神经网络,许多“细胞”及其神经元连接起来以创建输入层、一个或多个隐藏层(其数量决定网络的“深度”)和输出层。

2.png

图2:前馈神经网络通常包含输入层、隐藏层和输出层。神经网络配置的范围不断扩大,每种配置都寻求优化人工智能各种应用的效率和有效性

在上面的图2中,每个圆圈都是一个神经元,箭头代表神经元之间的连接。在所示的传统前馈神经网络中,隐藏层神经元是其输出连接到其他神经元的输入的神经元,因此作为网络输出不可见。

图1中描述的加权和计算从左向右传播,包括在隐藏层内,直到神经网络提供其输出。

2.人工智能的训练与应用

人工智能主要基于其模式识别能力,已在许多领域得到应用,从安全人脸识别到金融交易分析,再到自动驾驶汽车。然而,在部署之前,必须首先使用目前可供开发人员使用的各个数据中心的专用硬件进行广泛的“训练”。这可能是一个艰巨的、迭代的、处理密集的过程,其中分配精确的权重来为给定的输入提供正确的输出。然而,有一些公开的数据集可以简化这个过程。这些可以从各个大学或谷歌获得,用于路标或动物识别等典型应用。数据集越干净、质量越高,算法和结果输出就越好。

模型最终确定后,通常会映射到云端或边缘应用设备或系统上的人工智能推理引擎。推理引擎由专用硬件组成,该硬件获取传入的环境数据并运行生成的模型,以对对象进行分类、做出决策并尽可能高效地提供输出。通常可以使用计划更新、零星更新或使用与数据中心的无线 (OTA) 连接的近实时更新来持续更新远程设备上的模型。

考虑到实现自动驾驶汽车的开发量,这是用于人工智能训练过程的一个很好的例子(见图3)。

3.png

图3:此处显示的自动驾驶车辆已经有一个正在运行的推理引擎。随着新数据的获取,模型会在数据中心进行更新,然后通过无线连接近乎实时地将新模型部署到车辆上

在此示例中,数据中心使用神经网络来训练在汽车上运行的神经网络。数据中心有专门的加速器硬件来训练网络,设备中有定制的硬件,使用经过训练的神经网络对对象进行分类。当汽车遇到没有意义或新的情况时,它会将新数据和相关的驾驶员操作发送到数据中心,数据中心可以了解在出现新情况时要采取的操作。然后数据中心更新汽车神经网络中的“权重”。

3.人工智能硬件要求

为了使人工智能在自动驾驶汽车或任何其他关键任务应用程序中有效工作,它必须具有三个关键依赖项:

1.传入数据的准确性和及时性

2.人工智能模型及其算法的可靠性和效率

3.底层系统硬件(包括传感器、控制和执行器)的速度和效率。

人工智能关键任务事件需要分析、警报和指导,并且其作用取决于响应时间。例如,汽车ADAS或自动驾驶车辆系统由多个先进传感器组成,包括LiDAR、雷达、惯性测量单元 (IMU) 和摄像头,以及压力和温度传感器以及用于连续上传和下载周围条件的数据连接。信号链需要准确检测和调节传感器输出,以及车辆内部以及车辆与周围基础设施之间的可靠的低延迟通信。

跨无线网络的车辆到基础设施(V2I)访问需要足够的带宽和服务质量(QoS),以确保人工智能处理网络获得做出适当决策所需的信息。

人们普遍期望5G蜂窝网络的进步能够满足通信要求。然而,一旦获取,数据必须被处理、分析并作为可操作的数据或信号输出并发回,以提供所需的警报或对车辆方向或速度进行必要的改变。假设工程师已经开发出最准确的模型和最高效的AI算法,下一步就是确保最快、最高效的硬件平台。这需要仔细关注处理性能和数据流管理。

对于电动汽车和其他基于边缘的电池供电应用,硬件的设计还必须考虑电源效率。这种处理分布提出了雾计算的概念,即在边缘和云之间最合适的点进行数据分析。做出此决定的因素包括延迟要求、可用资源(CPU、内存、电源)、安全问题和数据依赖性(包括来自更广泛网络中其他节点的信息)。

是否实施雾计算元素的决定由网络或系统架构师决定,但在许多方面,这些考虑因素是SoC的NoC设计人员面临的宏观版本,包括:

-每毫瓦的最佳处理能力

-数据局部性(缓冲区;缓存一致性)

-通过适当分配可用带宽来避免瓶颈

-功能安全,取决于冗余策略和安全性(如果系统不安全,则不能被认为是安全的)

为了实现这一目标,底层硬件,无论是在数据中心、“雾”中还是在边缘,都应该能够大规模执行模型训练的并行处理。根据系统所在的位置,SoC还可以集成异构处理器方法,其中包括CPU、FPGA、GPU和专用硬件处理核心,同时还提供对大量低延迟内存的访问。

4.人工智能驱动半导体发展

管理先进硬件并开发灵活的片上互连和相关软件以实现最佳数据流是当今半导体研究和开发的主要关注点。展望2025年,半导体行业真正的销售额增长在于从数据中心到边缘的特定算法ASIC、ASSP、SoC和人工智能加速器。根据Tractica的一份报告,即将到来的焦点变化将是如此彻底,以至于到2025年,半导体增长的六分之五将是人工智能的结果(见图4)。

4.png

图4:根据Tractica的数据,到2025年,半导体增长的六分之五将来自人工智能

这项研究的大部分内容将致力于寻找在芯片中实现的计算架构的正确组合,以实现数据中心的最大性能以及边缘计算能力和效率的最佳平衡(见图5)。

5.png

图5:虽然数据中心推理引擎硬件的绝对价值预计到2025年将增长到9至100亿美元,但边缘推理的增长速度更快,从不到1亿美元增长到4至45亿美元

这些预测令人震惊:根据麦肯锡2019年1月的一项研究,数据中心推理引擎硬件的绝对价值预计将从2017年的49亿美元增长到2025年的9至100亿美元。边缘推理的增长也很有趣,从不到1亿美元增长到4到45亿美元。

为了应对这个竞争激烈的市场,尤其是在低功耗、低延迟是关键设计限制的边缘市场,市场上已经有许多竞争性的架构方法,如Nvidia、Mobileye(现在是英特尔公司的一部分)和Movidius(见图6)。

6.png

图6:为边缘寻找最佳AI处理基础的竞争导致Nvidia、Movidius和Mobileye等公司推出了许多极其高效的方法

仔细观察架构方法会发现一个共同点:SoC架构在每个新版本的芯片中添加越来越多类型和数量的硬件加速器。从本质上讲,架构师通过添加越来越多的加速器来将算法切割得越来越细,以提高效率。此外,还策略性地放置了缓存一致性孤岛,因为在许多处理功能同时发生的情况下,手动管理此数据流非常困难。

5.管理复杂的IP块和数据流

随着处理元件的类型和数量的增加,连接这些元件的互连和存储器架构成为成功的关键路径。因此,标准互连已经让位于高度专业化且高效的NoC方法,例如FlexNoC®非相干互连和Ncore®缓存相干互连(见图7)。

7.png

图7:非相干和缓存相干NoC互连IP的出现是为了更好地管理数据流、避免瓶颈、修复错误以确保最佳性能

为了获得更高的性能和灵活性,最近推出的CodaCache®独立末级缓存(LLC) IP支持专用、共享和分布式分区以及片上暂存器存储。

为了给当前的NoC带来缓存一致性,可以使用可配置的代理缓存将现有的非一致性处理元件集成到缓存一致性系统中,如图8所示。每个代理缓存的关联性、大小和策略都可以针对用例进行优化。在此示例中,五个硬件加速器充当两个Arm CPU集群的一致对等体。此外,连接到代理高速缓存的处理元件可以使用该高速缓存有效地彼此共享数据。

至少有两个重要的用例可以使用代理缓存来允许非一致性IP作为完全一致性对等点参与一致性域:

1.网络和存储:许多现有IP可以与最新的Arm处理器集群保持一致。

2.机器学习:硬件加速器用于数据中心内的学习以及汽车中的分类。

6.汽车ISO 26262安全的数据流保护

数据流效率并不是汽车架构师面临的唯一挑战。他们还必须关注数据保护,以确保系统的功能安全。开发良好的NoC可以在这里发挥重要作用,因为它可以查看SoC上传输的所有数据。因此,它既可以发现错误,也可以在某些情况下修复错误,以提高芯片的安全性。它还可以提高诊断覆盖率,以满足ISO 26262汽车功能安全和其他安全和可靠性标准的要求(图8)。

8.png

图8:精心设计的NoC设计超越了数据流管理和缓存一致性,允许非一致性IP作为CPU集群的一致性对等点参与,并实现全面的诊断覆盖,以满足ISO 26262要求

为了满足片上硬件的 ISO 26262 要求,图8中实施了两组技术:

1.ECC和奇偶校验保护:在具有安全或可靠性要求的芯片的所有数据部分实施。此保护是可配置的。

2.智能硬件备份:针对影响数据包内容的互连部分进行。还可进行配置,以满足为所需的ISO 26262汽车安全完整性等级(ASIL)量身定制的诊断覆盖率目标。

在这种情况下,这两种技术都不会影响性能,并且它们都与自动生成的ECC生成器和数据检查器集成。此外,这些安全机制自动与可配置的片上故障控制器集成。它管理互连范围的BIST功能并将错误状态传达给运行时软件。

FlexNoC®和Ncore®弹性套件增强了这些汽车安全功能。它们提供基于硬件的数据保护,以提高SoC的可靠性和功能安全性。此外,为了帮助设计人员启动并运行符合功能安全的IP,Arteris正在与ResilTech S.R.L.密切合作。创建一组可交付成果,可用作准备ISO 26262工作产品的起点。

7.结论

人工智能正在突破SoC设计在性能和效率方面的极限,以至于它将在未来许多年里在IC设计和收入中发挥越来越重要的作用。随着设计人员在处理元件和内存架构方面进行创新,很明显,NoC在确保维持SoC数据流和数据完整性方面发挥着独特的作用。

在符合ISO 26262的汽车系统等特定应用中,NoC、创新的LLC缓存、改进的弹性包,甚至为设计人员提供所需支持的合作伙伴关系,正在为实现AI的终极测试:自动驾驶汽车,迈出一大步。


33.png
详询“牛小喀”微信:NewCarRen


44.png

详询“牛小喀”微信:NewCarRen



作者:牛喀网专栏作者
牛喀网文章,未经授权不得转载!


下一篇: 【汽车安全】自动驾驶汽车机器学习安全解决方案
上一篇: 神经网络的ISO 26262功能安全论证方法
相关文章
返回顶部小火箭