基于nvidia xavier智能车辆自动驾驶域控制器设计与实现(一)

news2024/9/27 7:17:46
智能车辆在减少交通事故、节能减排、缓解交通拥堵等方面具有十分重要的作用,自动驾驶系统又是智能车辆的核心。近年来,随着智能车辆的应用场景日益广泛,人工智能算法在自动驾驶系统中广泛应用,自动驾驶系统功能不断增强,导致单一芯片架构的硬件平台的算力已经无法满足自动驾驶系统的需要。智能车辆的感知系统由多种类型传感器组成,导致系统集成和通信接口的复杂性增加,传统分布式控制系统架构不能满足可靠性要求。因此,设计一个接口丰富、功能多样、高性
能、集成化高的智能车辆域控制器具有重要的意义。
本文基于异构芯片方案,设计了一个智能车辆域控制器系统平台的软硬件架构。硬件架构以 CPU + GPU 异构芯片模块 Xavier 为主控制器,满足多传感器融合感知系统算力需求。外部接口设计采用了多路多类型接口设计,主要包括多路的Ethernet 、UART 和 CAN 总线等接口。为降低系统集成的复杂性, Ethernet 接口采用非标准POE 功能设计,通过 Ethernet 接口为传感器提供电源供应以减少布线数量。同时, 系统集成了组合导航模块和无线通信模块,为智能车辆系统提供高精度定位和网联通信。软件架构采用分层化和模块化设计。系统层以 Linux 为核心,集成了 ROS
间件和通用软件框架,为系统提供分布式通信服务和开发框架。应用层设计了通用基础软件,包括数据采集接口 API 、车辆线控接口 API 、地图接口 API 和组合导航服务 API 等。相比传统分布式控制器,本文设计的域控制器具有接口丰富、功能多样、高性能、集成化高等特点。
2.1.1 异构芯片硬件架构
智能车辆域控制器是结合车辆线控平台和大量多类型外围传感器的核心部分,
具有多样的接口类型、足够的接口数量和高性能等特点。多传感器数据融合、人工
智能算法等技术对域控制器的接口和算力性能都有着更高要求,因此,域控制器需
要采用单卡集成多种架构芯片的异构多核芯片的硬件方案。异构多核芯片硬件架构
主要由具有不同功能的 AI 单元、计算单元和控制单元三部分组成,如图 2.1 所示。
控制单元主要基于传统车辆控制器( MCU )完成车辆动力学横纵向控制任务。
搭载基础软件平台的控制单元将各个车辆控制的功能软件连接起来实现车辆控制。
同时,软件系统需要预留与智能车辆操作系统集成的通信接口。
基于多核 CPU 的计算单元具有主频高,计算能力强等特点,通过系统内核管理
软件和硬件资源、完成任务调度。计算单元主要用于执行大部分自动驾驶相关的核
心算法,整合多传感器融合数据完成路径规划、决策控制等功能。
基于并行计算架构的 AI 单元是异构芯片硬件架构中算力最大的一部分,通过
系统内核进行加速引擎和软硬件资源的分配、调度。 AI 单元主要完成多传感器融合
数据的分析和处理,输出用于规划、决策和控制的周围环境信息。目前,主流的 AI
芯片可选架构有 GPU FPGA ASIC 等,其性能对比如表 2.1 所示。
CPU 主要执行逻辑计算和控制两项任务。在构成 CPU 的晶体管中, 70% 用于构
建缓存,其余部分由控制单元用来处理复杂逻辑、提高指令的执行效率。因此, CPU
架构的优点是计算通用性强,可以处理高复杂度的计算,延时低。其缺点是算力不
高。
GPU 由大面积的 ALU 构成,省去了繁琐的逻辑控制,专注于单一指令的并行
计算,适合大规模并发计算。 GPU 的优点是逻辑控制单元简单,并行计算能力强。
其缺点是缓存较小,读取数据延时较高,功耗较高。
FPGA 适用于多条指令并行执行,单数据流,常用于云端的“训练”阶段。由
FPGA 没有存取功能的原因,因此,计算速度快,运行功耗低,但整体的运算量
不大。客户可根据实际需求,通过编程改变用途,但量产成本较高。
ASIC 是制作完成并且只搭载一种算法形成专门用途的芯片架构。首次定制成本
高,但量产成本低,适用场景单一。目前自动驾驶算法仍在快速更迭和进化, ASIC
不适合算法迭代开发,未来算法稳定后, ASIC 具有优势。
对于智能车辆系统来说,单一芯片架构难以满足视频、图片、激光雷达点云等
非结构化数据的处理分析和多传感器数据融合。因此,智能车辆系统对车载处理器
的并行计算效率提出更高要求。通过上述分析, CPU GPU FPGA ASIC 优劣
势对比如表 2.2 所示。
综上所述,四种芯片架构的计算能耗比为 ASIC > FPGA > GPU > CPU ASIC和 FPGA 计算能耗比高于 CPU GPU ,但是 ASIC FPGA 存在一次性成本较高和 算法是固定的的缺点,相比之下,基于 CPU GPU 的两个异构单元依然具有优势。 本文设计的智能车辆域控制器的目的是为了提供集成化、功能多样化的软硬件接口统一的开发平台,以支持多种算法的快速研究,基于 CPU+GPU 多芯片架构的更适合现阶段的智能车辆系统开发和算法迭代的设计要求。

信迈提供自动驾驶控制器软硬一体化方案。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/399527.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ccc-pytorch-RNN(7)

文章目录一、RNN简介二、RNN关键结构三、RNN的训练方式四、时间序列预测五、梯度弥散和梯度爆炸问题一、RNN简介 RNN(Recurrent Neural Network)中文循环神经网络,用于处理序列数据。它与传统人工神经网络和卷积神经网络的输入和输出相互独立…

Revit导出CAD图纸操作及批量导出

一、Revit如何导出CAD格式图纸 1.打开Revit模型。 2.项目浏览器,图纸(全部),鼠标右键点击,新建图纸。 3.选择自己需要的图纸大小,点击“确定”,即可创建一张图纸。 4.找到想要导出的图纸标高或者立面,例如&…

idea leetcode插件无法登录

em 2022某天 leetcode-cn.com 改为了 leetcode.cn so , 如果是版本比较老idea leetcode插件, 就无法使用了. 因为用的旧域名 先说解决办法: 2.0 先把旧版本卸载了 2.1 ideaplugin官网找到本地idea版本下可安装的最高版本的leetcode.cn 假设是 leetcode-editor-6.9.zip 2.2 下…

2023年3.8女神节买台灯怎么挑选?台灯用什么样的比较好

最近女神节,祝广大女性朋友们节日快乐啊。娱乐之余,一些实用的东西也是非常适合作为礼物送给女性朋友哦,台灯就是其中一个不错的选择。 台灯作为一种智能家居产品,不仅可见点缀卧室房间装饰,晚上的时候开启小范围照明&…

uniapp+uniCloud实战项目报修小程序开发

前言 本项目基于 uniapp uniCloud 云开发,简单易用,逻辑主要是云数据库的增删查改,页面大部分自写,部分使用uniUI, uView 组件库。大家可用于学习或者二次开发,有什么不懂的地方可联系 wechat:MrYe443。用…

2023-03-09 MySQL源码分析-MySQL中的直方图

摘要: 直方图的在查询优化中的作用主要是为了优化器中的代价模型提供代价中的统计信息计算, 本文对其进行分析 Histogram In MySQL mysql hitograms目录中为mysql所提供的直方图的相关基础设施代码。在mysql 8.0之前其没有使用直方图作为统计信息来为查询优化提供支持。 早期的…

请教大神们,pmp考试和复习有什么攻略诀窍吗?

PMP考试通过率挺高的,很多考生也是朝九晚五甚至天天加班的打工人,还是有很多人通过了的,我也是下班后和周末才有时间学习的,3A通过,但不是什么考试大神,每天抽出3-4个小时跟着培训机构制定的学习计划学习&a…

Linux高并发服务器之Linux多线程开发

Linux高并发服务器之Linux多线程开发一、线程概述二、线程操作相关函数1、创建线程2、线程终止3、线程连接4、线程分离5、线程取消6、线程属性三、线程同步1、多线程卖票案例2、互斥锁解决卖票问题3、读写锁优化卖票问题4、生产者消费者模型5、条件变量解决生产者消费者问题6、…

[ 云计算 | Azure ] Episode 03 | 描述云计算运营中的 CapEx 与 OpEx,如何区分 CapEx 与 OpEx

正常情况如果你不是会计,或者对钱相关的数字比较敏感的财务,本文的一些东西你不会接触的,但是最为云架构或者云运营,你可能会遇到如何采购亦或者估算的我成本和运营成本等等,所以本文的一些知识点就需要进行一定的了解…

哪款蓝牙耳机音质好?内行推荐四款高音质蓝牙耳机

蓝牙耳机经过近几年的快速发展,在音质上的表现也越来越好。哪款蓝牙耳机音质好?最近看到很多人问。接下来,我来给大家推荐四款高音质蓝牙耳机,可以当个参考。 一、南卡小音舱蓝牙耳机 参考价:246 发声单元&#xff…

900万英镑!光量子计算公司PsiQuantum获得英国政府支持

PsiQuantum的模块化量子计算系统使用传统光纤将单个低温单元联网。(图片来源:网络)3月6日,PsiQuantum宣布,在英格兰西北部STFC的Daresbury实验室,开设先进研发设施。这项工作得到了英国政府科学创新和技术部…

HTTP加密/HTTPS工作过程

31.HTTPS即HTTP加密 前言 工作过程清楚明白!!! 本质上是在讲SSL,适用面很广。不用再深挖了,密码学不用了解太多 SSL和TSL,本质上是一类东西 之后可以看看123 文章目录31.HTTPS即HTTP加密前言一、什么是HTT…

C++基础——C++面向对象之数据封装、数据抽象与接口基础总结

【系列专栏】:博主结合工作实践输出的,解决实际问题的专栏,朋友们看过来! 《项目案例分享》 《极客DIY开源分享》 《嵌入式通用开发实战》 《C语言开发基础总结》 《从0到1学习嵌入式Linux开发》 《QT开发实战》 《Android开发实…

打怪升级之字符串的分界符与字符串替换

流的字符串分界符 在C的iostream中,有流的字符串分界符: " “和”"都代表简单的分隔。 因此,使用流来做字符串分隔的话,有一个比较简单的方案就是将原定义的分隔符通过替换的方式变成流的分隔符。然后再录入流中就能…

【论文简述】Learning Optical Flow with Kernel Patch Attention(CVPR 2022)

一、论文简述 1. 第一作者:Ao Luo 2. 发表年份:2022 3. 发表期刊:CVPR 4. 关键词:光流、局部注意力、空间关联、上下文关联 5. 探索动机:现有方法主要将光流估计视为特征匹配任务,即学习在特征空间中将…

软件设计师教程(十)计算机系统知识-结构化开发

软件设计师教程 软件设计师教程(一)计算机系统知识-计算机系统基础知识 软件设计师教程(二)计算机系统知识-计算机体系结构 软件设计师教程(三)计算机系统知识-计算机体系结构 软件设计师教程(…

Zookeeper3.5.7版本——客户端命令行操作(节点删除与查看)

目录一、节点删除示例1.1、节点删除1.2、递归节点删除二、查看节点状态示例一、节点删除示例 1.1、节点删除 在客户端上创建 test 节点,并查看该节点 [zk: localhost:2181(CONNECTED) 5] create /test "123456"删除 test 节点,并查看该节点 […

初识rollup 打包、配置vue脚手架

rollup javascript 代码打包器,它使用了 es6 新标准代码模块格式。 特点: 面向未来,拥抱 es 新标准,支持标准化模块导入、导出等新语法。tree shaking 静态分析导入的代码。排除未实际引用的内容兼容现有的 commonJS 模块&#…

Sqoop详解

目录 一、sqoop基本原理 1.1、何为Sqoop? 1.2、为什么需要用Sqoop? 1.3、关系图 1.4、架构图 二、Sqoop可用命令 2.1、公用参数:数据库连接 2.2、公用参数:import 2.3、公用参数:export 2.4、公用参数&#xff…

MySQL数据库和表管理

MySQL数据库和表管理一、常用的数据类型1、int(N)2、float(m,d)3、char与varchar二、查看数据库结构1、查看当前服务中的数据库2、查看数据库中存在的表3、查看表结构三、SQL语句1、SQL语言规范2、SQL语言分类四、创建、删除数据库和表1、创建数据库2、创建表3、删除数据表4、删…