[自动驾驶 SoC]-4 特斯拉FSD
FSD, 参考资料来源FSD Chip - Tesla - WikiChip
另外可参考笔者之前分享文章:[自动驾驶技术]-6 Tesla自动驾驶方案之硬件(AI Day 2021),[自动驾驶技术]-8 Tesla自动驾驶方案之硬件(AI Day 2022)
1 整体介绍
特斯拉FSD计算机架构:
- 双冗余SoC,冗余电源:每个SoC拥有独立的电源和操作系统,确保高可靠性。
- 传感器输入:包括IMU、雷达、GPS、超声波传感器、轮速计、转向角和地图数据。
- 8个外部摄像头和12个超声波传感器:同时将数据输入两个FSD芯片。
- 独立处理:两个芯片独立生成车辆未来行动计划,并交由安全系统进行比较和验证。
2 FSD芯片规格

特斯拉D1芯片由1个GPU,2个NPU,3簇12个ARM Cortex-A72 CPU核,安全核,视频编码器等模块组成。
- 制程工艺:14nm FinFET CMOS,12层金属
- 面积:260 mm²
- 晶体管数量:60亿
- 包装:37.5 x 37.5 mm FCBGA
- 处理器:12个Cortex-A72核心,2.2GHz
- 神经网络性能:36.86*2 TOPS
- 功耗:每芯片低于40W
3 芯片核心组件
- GPU:用于图像处理
- CPU:12核ARM Cortex-A72
- ISP(图像信号处理器)
- H.265视频编码器
- 内存控制器、PHYs、片上互连和外围设备
3.1) 神经网络加速器(NNA)
- 两个独立实例双神经处理单元(NPU):每个NPU拥有32MB的SRAM,用于存储临时网络结果,减少数据移动。
- 设计频率:使用8位乘法和32位加法,2GHz+。
- 多路累加器阵列:每个NPU有96x96的乘加阵列,总共9,216个MACs和18,432个操作。
- 硬件SIMD、ReLU和Pooling单元(参见3.2和3.3)。
- 每个实例32MB SRAM,优化带宽;操作流程在每个周期中,数据从SRAM读入MAC阵列进行计算,结果数据写回SRAM。
- 激活函数支持包括ReLU、Sigmoid Linear Unit (SiLU)、TanH。
3.2) SIMD数据路径
- 可编程SIMD单元,支持丰富的指令集
- 浮点与整数运算
- 支持所有指令的谓词化
- 量化硬件的流水线实现,融合ReLu、缩放和归一化层

3.3) 池化硬件
- 支持平均和最大池化
- 为最常见的小池化尺寸优化
- 重新排列输出像素以实现更快的池化

3.4)指令集和微架构:
- 简化硬件设计:一些硬件被简化,增加了软件复杂性,但降低了硅片成本。
- 软件优化:特斯拉的神经网络编译器负责层融合、内存访问平滑、通道填充和DMA操作。
- 运行模式:神经网络程序在芯片启动时加载并驻留内存,NPU在异步运行整个神经网络模型后中断CPU进行后处理。


4 特斯拉自研优势
- 优化性能:通过自研SoC,特斯拉可以针对特定的自动驾驶任务进行深度优化,提高处理效率和系统响应速度。
- 降低成本:自研芯片可以减少对第三方供应商的依赖,从而降低长远的成本。
- 增强控制:特斯拉可以完全掌控芯片的设计和生产过程,确保产品的质量和安全性,同时能够快速进行更新和改进。
- 知识产权:自研芯片可以保护特斯拉的技术和算法不被竞争对手轻易复制。
5 特斯拉NNA设计哲学
专注加速MAC操作:由于99.7%的操作是乘加(MAC),加速MAC能显著提升性能。
硬件专用量化和池化单元:提高整体速度和效率。
灵活的SIMD单元:支持丰富的指令集,包括整数和浮点运算。
灵活的状态机控制逻辑:减少控制功耗,支持复杂操作。
数据共享和最小化数据移动:减少SRAM和DRAM活动,进一步降低功耗。
单时钟域设计:支持DVFS(动态电压频率调整)以优化功耗和时钟分布。
相关文章:
[自动驾驶 SoC]-4 特斯拉FSD
FSD, 参考资料来源FSD Chip - Tesla - WikiChip 另外可参考笔者之前分享文章:[自动驾驶技术]-6 Tesla自动驾驶方案之硬件(AI Day 2021),[自动驾驶技术]-8 Tesla自动驾驶方案之硬件(AI Day 2022…...
PostgreSQL源码分析——物化视图
我们前面分析完视图后,这里再继续分析一下物化视图,其实现原理是不相同的,需要注意,物化视图等于是将返回的结果集缓存起来,而视图是查询重写,结果需要重新进行计算。 create materialized view matvt1 as…...
操作系统入门系列-MIT6.828(操作系统工程)学习笔记(七)---- 系统调用函数与GDB(Lab: system calls)
系列文章目录 操作系统入门系列-MIT6.828(操作系统工程)学习笔记(一)---- 操作系统介绍与接口示例 操作系统入门系列-MIT6.828(操作系统工程)学习笔记(二)---- 课程实验环境搭建&am…...
ORA-12560: TNS:协议适配器错误
项目场景: 由于最近一直没有连接oracle,然后之前windows也是正常可以启动oracle,正常连接。无论是SQL Developer还是SQL PLUS命令,都能正常连接和操作。 问题描述 这两天刚好用SQL Developer工具连接,然后报错&#…...
不容小觑的“白纸黑字”:银行重空凭证的风险与防控
一、定义与重要性 定义: 银行重空凭证,也称为重要空白凭证,是银行专业术语,指银行印制的无面额、经银行或单位填写金额并签章后,即具有支取款项效力的空白凭证。 重要性: 它是银行资金支付的重要工具&a…...
30v-180V降3.3V100mA恒压WT5107
30v-180V降3.3V100mA恒压WT5107 WT5107是一款恒压单片机供电芯片,它可以30V-180V直流电转换成稳定的3.3V直流电(最大输出电流300mA),为各种单片机供电。WT5107的应用也非常广泛。它可以用于智能家居、LED照明、电子玩具等领域。比…...
Spring Boot 和 Spring Cloud 的区别及选型
Spring Boot 和 Spring Cloud 是现代 Java 开发中非常流行的两个框架,它们分别解决了不同层次的问题。本文将详细介绍 Spring Boot 和 Spring Cloud 的区别,以及在不同场景下如何选择合适的技术。 Spring Boot 什么是 Spring Boot Spring Boot 是一个…...
【神经网络】图像的数字视角
文章目录 图像的数字视角引言直观感受内在剖析图像常用函数图像三维层次 经验总结 图像的数字视角 引言 在机器视觉和目标识别领域,需要处理的对象都是图像,但这些领域的模型都是针对数值进行训练的,那么图像和数值之间是什么关系呢?答案是…...
ChatGPT的问题与回复的内容导出(Chorme)
我给出两种方式,第一种方式无使用要求,第二种方式必须安装Chorme 个人更推荐第二种方式 第一种方式:使用chatgpt自带的数据导出 缺点:会将当前未归档的所有聊天记录导出,发送到你的电子邮箱中 第二种方式:…...
游戏开发中的坑之十四 photoshop的javascript脚本批量修改分辨率
原因:美术提交大量2048x2048的贴图,导致工程臃肿。 方案:使用photoshop的javascript脚本批量把指定的文件夹以及所有子文件夹的贴图进行压缩。 脚本中指定针对2048x2048的贴图进行处理。 // Photoshop JavaScript to resize TGA images with…...
leetcode打卡#day45 携带研究材料(第七期模拟笔试)、518. 零钱兑换 II、377. 组合总和 Ⅳ、爬楼梯(第八期模拟笔试)
携带研究材料(第七期模拟笔试) #include<iostream> #include<algorithm> #include<vector>using namespace std;int main() {int N, V;cin >> N >> V;vector<int> weights(N1);vector<int> values(V1);int w…...
Vite+Vue3安装且自动按需引入Element Plus组件库
一,安装Element Plus npm install element-plus //node环境16二,安装插件 npm install unplugin-auto-import unplugin-vue-components -D三,配置vite.config.ts文件 //按需引入element-plus组件 import AutoImport from unplugin-auto-i…...
敬酒词大全绝对实用 万能敬酒词
举杯共饮,友情初识;再续一杯,情深似海,朋友相伴人生路更宽。酒逢知己千杯少,一饮而尽显真意,浅尝则留情,深情则尽欢。友情到深处,千杯不倒,若情浅则饮少,醉卧…...
【Java】已解决com.mysql.cj.jdbc.exceptions.CommunicationsException异常
文章目录 一、分析问题背景二、可能出错的原因三、错误代码示例四、正确代码示例五、注意事项 已解决com.mysql.cj.jdbc.exceptions.CommunicationsException异常 一、分析问题背景 com.mysql.cj.jdbc.exceptions.CommunicationsException是Java程序在使用MySQL Connector/J与…...
Leetcode 76. 最小覆盖子串
76. 最小覆盖子串 - 力扣(LeetCode) class Solution {/**也是滑动窗口,思路简单,但实现起来容易出错。一个tmap记录目标串t的各个字符出现的次数;一个smap记录原串的某个滑动窗口里字符出现次数。两个指针left&#x…...
JAVAWEB--Mybatis03
Mybatis映射 什么是映射器 MyBatis的映射器就是用来解决这一问题,映射器其实是一个Interface接口,我们通过编写简单的映射器接口,就可以将我们之前在Dao中做的重复的,看起来比较低级的代码给替换掉。也就是说我们以后不用向之前那样写代码&…...
论文学习_Fuzz4All: Universal Fuzzing with Large Language Models
论文名称发表时间发表期刊期刊等级研究单位Fuzz4All: Universal Fuzzing with Large Language Models2024年arXiv-伊利诺伊大学 0.摘要 研究背景模糊测试再发现各种软件系统中的错误和漏洞方面取得了巨大的成功。以编程或形式语言作为输入的被测系统(SUTÿ…...
元数据相关资料整理 metadata
目录 定义和特点 关注点 流程 使用场景 元数据影响分析 元数据冷热度分析 元数据关联度分析 血缘分析 数据地图 元数据接口 相关产品的架构图 定义和特点 元数据(Metadata)是指关于数据的数据,或者说是描述数据的数据。它提供了一…...
【Android面试八股文】谈一谈你对http和https的关系理解
文章目录 HTTPHTTPSSSL/TLS协议HTTPS加密、解密流程HTTP 和 HTTPS 的关系具体的差异实际应用总结扩展阅读HTTP(HyperText Transfer Protocol)和HTTPS(HyperText Transfer Protocol Secure)是用于在网络上进行通信的两种协议。 它们在很多方面是相似的,但关键的区别在于安全…...
Vue3 中 setup 函数与 script setup 用法总结
在 Vue3 中,setup 函数和 script setup 是两种新引入的编写组件的方式,它们都是 Composition API 的一部分。 setup 函数: setup 函数是一个新的组件选项,它作为在组件内使用 Composition API 的入口。在 setup 函数中,我们可以定…...
基于PWM舵机与NeoPixel的万圣节互动蝙蝠制作全解析
1. 项目概述:一个会动的万圣节蝙蝠又快到万圣节了,想给家里的装饰来点不一样的“活物”吗?每年都摆静态的南瓜灯和蜘蛛网,总觉得少了点气氛。今年我琢磨着,不如自己动手做一个能扑腾翅膀、眼睛还会发光的机械蝙蝠&…...
会话管理封装实践:构建安全可扩展的分布式会话系统
1. 项目概述:一个被低估的会话管理利器如果你是一名开发者,尤其是经常需要处理用户登录、权限校验、状态保持这类“脏活累活”的后端或全栈开发者,那么你一定对“会话管理”这四个字又爱又恨。爱的是,它是构建安全、有状态应用的基…...
告别玄学调试:用英飞凌TC37X/TC38X的DSADC做旋变软解码,这些配置坑你别再踩了
英飞凌TC37X/TC38X DSADC旋变解码实战避坑指南 从实验室到产线:那些DSADC配置中容易忽视的细节 在新能源汽车电机控制领域,旋转变压器(Resolver)作为位置传感器的主力军,其解码稳定性直接决定了矢量控制的精度。英飞凌…...
嵌入式开发革命:LuatOS云编译实战指南与效率提升
1. 项目概述:为什么我们需要云编译?作为一名在嵌入式领域摸爬滚打了十多年的老鸟,我太懂那种“买板一时爽,环境火葬场”的痛了。尤其是这几年,合宙、乐鑫、兆易这些厂商的产品线越来越丰富,Air780E、ESP32-…...
从零开始通过Taotoken平台文档快速完成首个大模型API调用
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 从零开始通过Taotoken平台文档快速完成首个大模型API调用 对于初次接触大模型API的开发者而言,面对众多模型厂商、复杂…...
Sunshine游戏串流实战:从零搭建你的专属云游戏平台
Sunshine游戏串流实战:从零搭建你的专属云游戏平台 【免费下载链接】Sunshine Self-hosted game stream host for Moonlight. 项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine 你是否曾经梦想过在客厅电视上畅玩PC游戏,或者想在出差时…...
手把手教你用Matlab搞定镜像电荷法仿真:从平面到半球导体的电场可视化
手把手教你用Matlab实现镜像电荷法仿真:从平面到半球导体的电场可视化 在电磁场理论的学习中,镜像电荷法是一个既经典又实用的计算方法。它通过引入虚拟电荷来简化复杂边界条件下的电场计算问题。本文将带你从零开始,用Matlab实现从简单平面到…...
手把手教你用Vivado 2020.1给MicroBlaze工程挂上DDR3内存(附完整IP核配置流程)
从BRAM到DDR3:MicroBlaze系统内存扩展实战指南 在FPGA嵌入式开发领域,MicroBlaze处理器因其灵活性和可定制性成为众多项目的首选。当系统复杂度从简单的"Hello World"升级到需要处理大量数据时,片上BRAM的有限容量很快会成为瓶颈。…...
OpenClaw 对接企业微信实操教程 完整配置流程
OpenClaw 绑定企业微信教程 OpenClaw 连接企业微信图文教程 前置准备 已安装并可以正常打开 OpenClaw Windows。OpenClaw 顶部 Gateway 状态保持在线。已安装并登录企业微信客户端。当前企业微信账号具备创建和管理智能机器人的权限。准备一个可用于测试的企业微信账号或群聊…...
Arduino ESP32终极开发指南:从硬件抽象到物联网实战
Arduino ESP32终极开发指南:从硬件抽象到物联网实战 【免费下载链接】arduino-esp32 Arduino core for the ESP32 family of SoCs 项目地址: https://gitcode.com/GitHub_Trending/ar/arduino-esp32 ESP32作为物联网开发领域的明星芯片,以其强大的…...
