0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

工程师说 | 面向AD/ADAS的SoC的AI性能优化

瑞萨电子 来源:未知 2023-07-27 18:15 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

摘要

本文介绍了瑞萨在早期设计阶段针对自动驾驶AD)和高级驾驶辅助系统(ADAS)的SoC中用于AI处理的深度神经网络(DNN)加速器的性能、电路尺寸和功耗的工作内容。

Yuji Obayashi

Principal Software Engineer

背景

近年,随着深度学习(DeepLearning)人工智能(AI)技术的进步,我们的生活中出现了许多直接有益的应用场景,例如自动翻译精度的提升和根据消费者喜好的个性化推荐。截至2023年,AI在某些领域已经成为产品和服务中不可或缺的应用,其中之一就是自动驾驶(AD)和先进驾驶辅助系统(ADAS)。

以深度神经网络(DNN)为代表的最新人工智能模型的处理需要大规模的并行计算,因此在PC开发中通常使用通用的GPU进行并行计算。另一方面,用于AD和ADAS的SoC多数搭载了专用电路(以下简称加速器),实现了低功耗和高性能的DNN处理。然而,在SoC开发的早期阶段,确认搭载的加速器能否在实际所需的DNN中提供足够的性能通常并不容易。性能比较的指标常常使用加速器设计上的最大计算性能TOPS(Tera Operations Per Second)值,或者其与运行时消耗的功率相除得到的TOPS/W值。然而,由于加速器是针对特定处理的专用设计(*1),即使TOPS值足够高,在实际所需的DNN中也可能由于存在无法高效处理的计算或数据传输带宽不足等问题而无法提供足够的性能。此外,加速器的功率增加可能导致整个SoC的功耗超过可接受的范围。

(*1)专用设计:虽然使用通用GPU作为加速器也是可能的,但处理特定任务的硬件,可以在较小的电路规模和功耗下获得更高的处理性能。例如瑞萨的车载SoC R-Car V3H、R-Car V3M和R-Car V4H搭载的加速器具有专为处理DNN中使用卷积操作进行特征提取的卷积神经网络(CNN)任务而设计的结构。

随着SoC开发的深入,由于性能不足或功耗过大等原因而进行设计变更的难度普遍增加,对SoC开发进度和开发成本的影响也随之增加。因此,在开发面向车载AI设备的SoC时,确认搭载的加速器能否在实际顾客产品中所需的DNN中提供足够的性能,并且功耗是否在可接受范围内,已成为迫切的问题。

面向AD/ADAS的一般AI开发流程

在解释如何解决上述问题之前,先简单介绍一下AD/ADAS的AI开发流程。下面的图1展示了在AD/ADAS中以软件为核心,并包括部分SoC开发的AI开发流程的示例。

1f98864a-2c65-11ee-815d-dac502259ad0.png

图1:AD/ADAS中AI开发流程的例子

图1将整个开发工作分为六个阶段,其中第2和第3阶段为SoC电路设计,其他第1和第4-6阶段为软件开发。下面给出了每个阶段的工作概述。

第一阶段 AI Application/Service Common Development

利用PC和云环境,以应对市场需求和技术趋势,开发面向AD/ADAS的AI应用程序和服务。

第二阶段 AI Accelerator Detail Design

涵盖了构成加速器硬件的部件设计,如计算单元、内部存储器和数据传输单元。

第三阶段 AI Accelerator Configuration

在第三阶段中,第二阶段中设计的组件被组合起来,以优化面积、功率和性能之间的权衡,同时确定加速器在SoC中的配置以实现各自的设计目标。

第四阶段 DNN Model Architecture Design

在第三阶段中确定的加速器配置被用来优化每个用于客户产品的DNN网络的结构。

第五阶段 DNN Inference Optimization

将针对经过第四阶段结构优化的每个网络进行适用于加速器的代码生成,并进行精度和处理时间的详细评估。同时,将对代码和模型数据进行优化,以提高性能。

第六阶段 Application Development

将使用第五阶段中优化的代码和模型数据,将AI处理部分嵌入到实际的自动驾驶等处理中,并进行应用的实现和评估。

瑞萨的工作

在上一节所示的AD/ADAS中的AI开发流程中,判断实际使用的DNN是否能够在所配备的加速器上提供足够的性能,通常需要在决定加速器配置的第三阶段AI Accelerator Configuration中进行决策。

传统上,在这一阶段的决策是通过使用类似加速器的现有SoC进行的基准测试结果来估计的,但对于因增加或改变功能而与现有SoC规格不同的部分,无法获得基准测试结果,因此无法通过高度精确的估计来确定是否能达到设计目标。

瑞萨通过使用PPA Estimator(PPA:Performance,Power,Area)而不是现有的SoC基准测试来解决这个课题。PPA Estimator通过使用反映加速器每个组件设计的性能和功率计算模型,使性能和功耗在加速器配置最终确定之前得到估算。具体来说,列出可能的加速器配置(可改变的加速器参数的组合,如处理单元的数量和内部存储器的容量)进行评估,选择其中一个配置并与要评估的一个DNN一起输入PPA Estimator中,以获得所需的执行时间和功耗。然后,可以针对所需评估的加速器配置和DNN的数量进行重复操作,收集数据,并找到最佳的加速器配置。如此,不仅可以确定一个特定的加速器配置和DNN组合是否有足够的性能,而且还可以收集广泛的数据并从中选择最佳加速器配置。

此外,为了使第三阶段AI Accelerator Configuration更加有效,瑞萨还通过将从PPA Estimator执行结果中获得的信息反馈给目标DNN的网络模型,并行改进软件方面的工作,也就是进行硬件-软件联合设计(co-design)。AI Accelerator Configuration阶段的工作流程如下图2所示。

1fab0d06-2c65-11ee-815d-dac502259ad0.png

图2:AI Accelerator Configuration工作流程

瑞萨已开始将PPA Estimator应用于从2023年开始的一些带有AI处理加速器的AD/ADAS的SoC的开发中,并计划逐步扩大应用范围。瑞萨将利用PPA Estimator的高度精确性能寻找最佳配置以开发高性能、低功耗的车载AI加速器。

点击文末阅读原文获取更多有关瑞萨当前和最新的车载AI SoC产品的信息。

1

END

1

瑞萨电子 (TSE: 6723)

科技让生活更轻松,致力于打造更安全、更智能、可持续发展的未来。作为全球微控制器供应商,瑞萨电子融合了在嵌入式处理、模拟电源及连接方面的专业知识,提供完整的半导体解决方案。成功产品组合加速汽车、工业、基础设施及物联网应用上市,赋能数十亿联网智能设备改善人们的工作和生活方式。更多信息,敬请访问renesas.com


原文标题:工程师说 | 面向AD/ADAS的SoC的AI性能优化

文章出处:【微信公众号:瑞萨电子】欢迎添加关注!文章转载请注明出处。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 瑞萨
    +关注

    关注

    38

    文章

    22518

    浏览量

    91182

原文标题:工程师说 | 面向AD/ADAS的SoC的AI性能优化

文章出处:【微信号:瑞萨电子,微信公众号:瑞萨电子】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    MathWorks 加入 EDGE AI FOUNDATION,推进面向工程化系统的嵌入式 AI 发展

    专注于推动面向边缘设备的高能效 AI 技术发展。通过与其的全球支持者网络协作,MathWorks 将帮助工程师利用其软件平台 MATLAB® 和 Simulink® 训练、集成并部署 AI
    的头像 发表于 04-17 15:46 106次阅读

    嵌入式人工智能课程(华清远见)

    嵌入式 AI 编译器优化:华清远见课程,解锁极致端侧性能 随着人工智能从云端全面向边缘侧和终端侧下沉,“万物智联”的时代已经悄然到来。然而,在这股浪潮背后,隐藏着一个巨大的技术鸿沟:
    发表于 04-16 18:47

    第二代AMD VERSAL AI EDGE系列全面赋能汽车ADAS系统

    选择 AMD 自适应 SoC 和 FPGA 第二代 AMD Versal AI Edge 系列自适应 SoC 带来一种高性能单芯片解决方案,为自动驾驶赋能助力。该系列器件配备用于 IS
    的头像 发表于 03-27 16:30 910次阅读
    第二代AMD VERSAL <b class='flag-5'>AI</b> EDGE系列全面赋能汽车<b class='flag-5'>ADAS</b>系统

    电子工程师必备:ADAS1000-3/ADAS1000-4 ECG模拟前端深度解析

    电子工程师必备:ADAS1000-3/ADAS1000-4 ECG模拟前端深度解析 在医疗电子领域,心电图(ECG)监测设备的性能至关重要。ADAS
    的头像 发表于 03-25 17:05 434次阅读

    算法工程师需要具备哪些技能?

    算法工程师需要掌握一系列跨学科的技能,涵盖数学基础、编程能力、算法理论、工程实践以及业务理解等多个方面。 以下是具体技能及学习建议: 线性代数核心内容:矩阵运算、特征值分解、向量空间等。应用场
    发表于 02-27 10:53

    瑞萨电子R-Car V4H ADAS SoC已应用于丰田最新RAV4车型

    与雷达感知、驾驶员状态监测等,助力实现更高水平的车辆安全性能 全球半导体解决方案供应商瑞萨电子今日宣布,其面向ADAS(高级驾驶辅助系统)的车规级片上系统(SoC)R-Car V4H,
    的头像 发表于 02-24 14:26 456次阅读

    使用NORDIC AI的好处

    不依赖持续联网,整体系统可靠性更高。[Edge AI 概述; Nordic Edge AI 技术页] 覆盖从“小 MCU”到“高性能 SoC”的完整产品线 Neuton 模型 :超
    发表于 01-31 23:16

    瑞芯微SOC智能视觉AI处理器

    RK3568B2: 一款性能均衡、接口丰富的中高端AIoT应用处理器,是RK3568的优化版本,主打稳定与可靠性。CPU/GPU: 延续RK3568的4核A55 + G52 GPU架构,性能可靠
    发表于 12-19 13:44

    重磅合作!Quintauris 联手 SiFive,加速 RISC-V 在嵌入式与 AI 领域落地

    SoC 开发流程,帮开发者省时间; 优化下一代 RISC-V 设计的性能和能效,进一步拉高性能上限; 把 RISC-V 打造成能和传统专有处理器架构抗衡的方案,毕竟 RISC-V 的
    发表于 12-18 12:01

    招镶入式工程师1个,硬件工程师一个,

    东莞市研生科技有限公司是一家蓝牙方案公司,主营蓝牙方案的设计开发,产品包括蓝牙BLE/4G透传/AI智能体方案开发,因公司发展需要需对外招聘嵌入式软件开发工程师,对蓝牙音频/BLE以及智能IC读卡器有三年实操经验,能单独完成项目的软件开发,男女不限,投简历邮箱:65905
    发表于 08-29 02:14

    电子发烧友工程师看!电子领域评职称,技术之路更扎实

    、ADI 等厂商的技术对接资格。​ 对嵌入式开发工程师来说,职称是岗位竞争力的 “加分项”。随着物联网、AI 技术普及,“高级嵌入式开发工程师”“嵌入式系统架构师(中级)” 等职称,成了企业筛选
    发表于 08-20 13:53

    AI 芯片浪潮下,职场晋升新契机?

    芯片设计为例,从最初的架构选型,到算法适配、性能优化,每个环节都考验着工程师的专业素养。在设计一款面向智能安防领域的 AI 芯片时,需要深
    发表于 08-19 08:58

    AI的未来,属于那些既能写代码,又能焊电路的“双栖人才”

    的信号:AI真正的未来,不只属于“算法天才”,更属于那些既能写代码,又能焊电路的“双栖工程师”。无论是在AI芯片、智能终端、机器人、边缘计算还是大模型下沉的讨论中,我们不断听到同一个问题:“谁能把它
    发表于 07-30 16:15

    智能驾驶核心器件:三星ADAS SoC性能MLCC解决方案

    (先进驾驶辅助系统)技术不断进步,对于SoC芯片的性能要求日益提升。为了满足高性能SoC的电源管理需求,需要更加小型化、高容量的MLCC(多层陶瓷电容器)解决方案。贞
    的头像 发表于 05-27 16:35 785次阅读
    智能驾驶核心器件:三星<b class='flag-5'>ADAS</b> <b class='flag-5'>SoC</b>高<b class='flag-5'>性能</b>MLCC解决方案

    芯驰科技D9-Max:面向具身智能应用的高性能边缘AI SoC

    科技股份有限公司CTO孙鸣乐详细介绍了公司带来的面向具身智能应用的高性能边缘AI SoC D9-Max。   芯驰科技是全场景智能车芯引领者,专注于提供高
    的头像 发表于 05-13 10:34 7937次阅读
    芯驰科技D9-Max:<b class='flag-5'>面向</b>具身智能应用的高<b class='flag-5'>性能</b>边缘<b class='flag-5'>AI</b> <b class='flag-5'>SoC</b>