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性能优化

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


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

    关注

    34

    文章

    22290

    浏览量

    86029

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

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

收藏 人收藏

    评论

    相关推荐

    如何优化SOC芯片性能

    优化SOC(System on Chip,系统级芯片)芯片性能是一个复杂而多维的任务,涉及多个方面的优化策略。以下是一些关键的优化措施: 一
    的头像 发表于 10-31 15:50 195次阅读

    AI大模型的性能优化方法

    AI大模型的性能优化是一个复杂而关键的任务,涉及多个方面和策略。以下是一些主要的性能优化方法: 一、模型压缩与
    的头像 发表于 10-23 15:01 439次阅读

    康谋分享 | AD/ADAS性能概览:在AD/ADAS的开发与验证中“大海捞针”!

    在AD/ADAS开发与验证中,如何从海量数据中快速获得性能概览,进而快速定位关键事件?本文康谋带您了解,如何利用IVEX智能概览功能,结合安全与关键绩效指标,实现高效检索与分析,推动AD/ADAS系统持续
    的头像 发表于 10-23 09:24 2196次阅读
    康谋分享 | AD/<b class='flag-5'>ADAS</b>的<b class='flag-5'>性能</b>概览:在AD/<b class='flag-5'>ADAS</b>的开发与验证中“大海捞针”!

    瑞萨电子推出R-Car V4M系列SoC,扩展ADAS解决方案

    全球半导体解决方案供应商瑞萨电子近日宣布,正式推出面向入门级高级驾驶辅助系统(ADAS)的系统级芯片(SoC)——R-Car V4M系列,以进一步扩展其备受市场欢迎的R-Car产品家族。
    的头像 发表于 10-12 15:42 319次阅读

    FPGA算法工程师、逻辑工程师、原型验证工程师有什么区别?

    逻辑工程师和 FPGA 原型验证工程师在工作重点和职责上存在一定的区别: FPGA 算法工程师: 主要关注算法的设计和优化,以在 FPGA 平台上实现高效的计算和处理。他们需要深入理
    发表于 09-23 18:26

    AMD 面向 ADAS 和数字座舱推出尺寸更小、成本优化的车规级 FPGA 系列

    优化的 FPGA 符合车规标准,并针对 ADAS 传感器应用和车载信息娱乐系统( IVI )进行了优化。   新款 Artix UltraScale+ XA AU7P 采用 9x9 毫米封
    发表于 09-20 18:12 231次阅读

    使用逻辑和转换优化ADAS域控制器

    电子发烧友网站提供《使用逻辑和转换优化ADAS域控制器.pdf》资料免费下载
    发表于 09-04 10:27 0次下载
    使用逻辑和转换<b class='flag-5'>优化</b><b class='flag-5'>ADAS</b>域控制器

    微软GitHub推出Models服务,赋能AI工程师

    微软旗下的代码托管巨头 GitHub 近期宣布了一项重大更新——GitHub Models 服务,旨在成为 AI 工程师的得力助手。该服务专为开发者设计,旨在帮助他们轻松选择并优化最适合其应用需求的
    的头像 发表于 08-05 14:16 437次阅读

    ADAS功能安全HiL仿真测试系统介绍#ADAS #VTHiL

    adas
    北汇信息POLELINK
    发布于 :2024年08月03日 20:07:34

    ADAS系统组成简介#ADAS

    adas
    北汇信息POLELINK
    发布于 :2024年08月03日 20:05:37

    一个更适合工程师和研究僧的FPGA提升课程

    各位编程精英er~ F学社打造的FPGA工程师培训班上线后,有不少同学后台私信询问:“能不能出个那种专门针对某个知识点的课程呢?我想针对自己的薄弱点深入学习。” 贴心如我,当然会满足大家的学习
    发表于 06-05 10:09

    嵌入式软件工程师和硬件工程师的区别?

    和通信协议,以及熟练掌握一种或多种编程语言和开发工具。 主要负责的任务和领域 嵌入式软件工程师的工作涉及到各种任务,主要包括: * 系统设计:包括确定系统功能、分配资源、优化性能等。 * 软件编程:包括编程
    发表于 05-16 11:00

    ADAS1000为什么检测不到数据?

    随机的数据。我按照例4的配置,让ADAS1000输出150Hz的正弦波,结果得到的还是随机的数据,我的电路是参照贵公司提供的“基于ADAS1000系列的12导联ECG测量系统”的电路,请工程师分析一下,我的问题是出在了哪里,谢谢
    发表于 12-19 06:10

    MCU在线技术讲座-EFM和EFR: 面向物联网开发的通用MCU平台

    : 面向物联网开发的通用MCU平台”。 本次技术讲座将详细说明以芯科科技8位和32位MCU,以及无线SoC作为物联网开发通用平台的诸多优势,包括低功耗、高性能、缩减物料清单(BOM)成本,以及可轻松
    发表于 11-23 13:45