自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 收藏
  • 关注

原创 [终端安全]-8 隐私保护和隐私计算技术

一个算法A被称为ϵ-差分隐私的,如果对于任意两个只差一个记录的数据库D和D',以及任意一个输出集合 S ⊆Range(A),都有:Pr[A(D)∈S] ≤ eϵPr[A(D′)∈S],其中:ϵ是隐私预算参数,值越小隐私保护越强,D和D'是任意两个只差一个记录的数据库。数学公式:给定函数f和参数ϵ,定义拉普拉斯机制为:A(D)=f(D)+Lap(Δf/ϵ),其中:Lap(b)是参数为b的拉普拉斯分布,Δf是函数f的全局敏感度,定义为:Δf=maxD,D'∣∣f(D)−f(D')∣∣1​。x→{x1,x2,…

2024-07-12 14:00:57 1443

原创 [终端安全]-6 移动终端之应用程序安全

笔者在终端安全专题前面的文章中介绍了移动终端硬件安全和操作系统安全,本文主要介绍移动终端应用安全。在本文最前面,笔者想先解答一位朋友的疑问,为什么需要费心打造一个完整的面面俱到的安全体系?

2024-07-10 22:57:06 878

原创 [终端安全]-7 后量子密码算法

(第6文终端安全之应用安全,稍后时日补上)

2024-07-10 14:49:19 2293

原创 [终端安全]-5 移动终端之操作系统安全

每个应用程序运行在一个独立的进程中,通过操作系统的内存管理单元(MMU)实现自己独立的虚拟地址空间,通常从0开始到某个最大值(例如,32位系统上为4GB),这个空间是进程私有的,MMU负责将虚拟地址转换为物理地址。当操作系统在不同进程之间切换时,会切换当前的页表,通过改变MMU中存储的页表基地址(通常存储在寄存器中)来实现,这样进程A和进程B即使使用相同的虚拟地址,也会映射到不同的物理地址。当用户启动应用A时,操作系统会为其创建一个新的进程,该进程由应用A的UID 10001运行;

2024-07-08 12:09:43 1068

原创 [终端安全]-4 移动终端之硬件架构安全

此外,在移动终端硬件中,有许多种密钥和唯一ID需要安全存储,这些数据的存储方式和机制依赖于设备厂商的安全机制和策略可以各有不同。TEE提供安全服务,如加密运算、密钥管理和安全存储。安全元件(Secure Element, SE)是移动设备中高度安全的硬件模块,用于存储和处理敏感信息,如支付信息、加密密钥和身份认证数据;SIM卡(Subscriber Identity Module)是移动设备中用于身份认证和网络接入的安全模块,在网络接入和通信过程中使用多种安全技术来保护用户数据和通信内容。

2024-07-07 17:13:01 1471

原创 [终端安全]-3 移动终端之硬件安全(TEE)

ARM TrustZone 是一种系统级的安全架构,最早在 ARMv6K 中引入,并且在 v7、v8和v9中得到了支持。TrustZone 提供两个执行环境,并通过硬件强制实现它们之间的隔离:Normal World正常世界和Secure World安全世界。运行复杂的操作系统(例如 Linux)和丰富的软件堆栈,包括大量的应用程序和可能存在的虚拟机监控程序。尽管可以采取措施增强其安全性,但由于其攻击面较大,更容易受到攻击。运行较小且简单的软件堆栈,通常称为可信执行环境(TEE)。

2024-07-07 13:37:50 1027

原创 [终端安全]-2 移动终端之硬件安全(SE)

本文主要介绍针对安全芯片的攻击和防护方案。

2024-07-06 14:26:31 1097

原创 [终端安全]-1 总体介绍

有朋友一直在和笔者研讨智驾安全这个热门话题,笔者十多年工作从不离终端安全这个核心话题(芯片安全、操作系统安全、应用安全),近来也一直在梳理终端安全体系;手机、汽车皆是我们生活中应用最普遍的智能终端,如何系统考量终端安全架构,从芯片-OS-应用-数据分层设计安全防护方案,全方位保护终端安全?接下来,笔者将从移动端、汽车安全介绍延伸到智驾安全。

2024-07-06 12:19:51 1052

原创 [机器学习]-4 Transformer介绍和ChatGPT本质

Transformer是由Vaswani等人在2017年提出的一种深度学习模型架构,最初用于自然语言处理(NLP)任务,特别是机器翻译。Transformer通过自注意机制和完全基于注意力的架构,核心思想是通过注意力来捕捉输入序列中元素之间的关系,从而在并行计算的情况下更有效地处理长序列数据,克服了传统RNN和CNN的一些局限性,在许多任务上实现了显著的性能提升。

2024-07-01 13:24:07 1185

原创 [机器学习]-3 万字话清从传统神经网络到深度学习

神经网络(Neural Networks, NNs)是机器学习的一种重要方法,灵感来源于生物神经系统,由大量互联的节点(称为神经元或单元)组成,通过调整这些节点间的连接权重来学习和表示复杂的非线性关系。传统神经网络包括感知机、Sigmoid神经元,以及更复杂的多层感知器。深度学习是基于深层次的神经网络,通过多层非线性变换从数据中学习特征和模式,通常由输入层、隐藏层和输出层组成,每一层由若干神经元构成,层与层之间通过权重连接;主流的深度学习有卷积神经网络、循环神经网络、生成对抗网络、Transformer等。

2024-06-27 14:02:13 1170

原创 [机器学习]-2 经典机器学习算法

决策树易于理解和解释,结果具有直观的可视化,能够处理数值型和类别型数据和多输出问题,对缺失值不敏感,可以容忍一定程度的缺失数据。KNN算法基于“相似的样本具有相似的特征”这一假设,给定一个待分类样本,通过计算它与训练集中所有样本的距离,找到最近的K个样本(邻居),然后根据这K个样本的标签进行投票,决定待分类样本的类别。支持向量机(Support Vector Machine)是一种用于分类和回归的监督学习算法,通过寻找最佳分离超平面来实现数据分类,具有很高的分类性能,特别适用于小样本、高维度的数据。

2024-06-25 17:47:13 749

原创 [机器学习]-1 概要介绍

机器学习是一门利用算法和统计模型来使计算机系统通过数据进行学习的学科,其目标是让计算机在没有明确编程的情况下,自动改进其性能,其核心任务是从数据中学习模型,这些模型可以用于预测、分类、聚类等任务。机器学习的本质就是回归(连续性)和分类(离散性)的问题。基础概念:-数据集(Dataset):用于训练和评估模型的数据集合。通常分为训练集、验证集和测试集。-特征(Features):用于描述数据的属性或变量。-标签(Labels):监督学习中,用于指导模型学习的目标值。

2024-06-22 17:09:38 1161

原创 [自动驾驶技术]-9 感知规控算法模型完整介绍

目前市场上自动驾驶感知规控模型可以分为两种:传统顺序方法(感知-行为决策-运动规划-反馈控制)、基于深度学习的端到端模型。

2024-06-21 16:52:40 1127

原创 [自动驾驶 SoC]-4 特斯拉FSD

特斯拉FSD计算机架构:- 双冗余SoC,冗余电源:每个SoC拥有独立的电源和操作系统,确保高可靠性。- 传感器输入:包括IMU、雷达、GPS、超声波传感器、轮速计、转向角和地图数据。- 8个外部摄像头和12个超声波传感器:同时将数据输入两个FSD芯片。- 独立处理:两个芯片独立生成车辆未来行动计划,并交由安全系统进行比较和验证。

2024-06-17 18:11:49 1153

原创 [自动驾驶 SoC]-3 英伟达Orin

Orin SoC,如下图所示,由一个NVIDIA Ampere architecture GPU, Arm® Cortex®-A78AE CPU, 下一代深度学习核视觉处理加速器, 视频编码器和视频解码器组成。1.1) 环境感知:摄像头捕捉停车场景,LiDAR扫描周围环境。处理单元:CUDA核心处理图像预处理,Tensor核心运行YOLO等物体检测模型识别停车位和障碍物。1.2) 路径规划:计算最优泊车路径。

2024-06-17 12:00:19 1156

原创 [自动驾驶技术]-8 Tesla自动驾驶方案之硬件(AI Day 2022)

特斯拉在AI Day 2022先介绍了AI编译器,后面又介绍了Dojo的硬件软件,软件部分和AI编译器有部分重叠,本文介绍还是延用AI Day的思路,分为三部分:AI编译和推理,Dojo硬件,Dojo软件。

2024-05-27 10:52:38 1195

原创 [处理器芯片]-7 超标量CPU实现之访存

超标量CPU的访存单元是一个关键的子系统,负责处理指令和数据的读取和写入操作。访存单元的设计直接影响到处理器的性能、延迟和吞吐量,通常考虑加入指令硬件预取以提高访存效率。

2024-05-26 17:38:06 823

原创 [处理器芯片]-6 超标量CPU实现之浮点运算

BF16 (16位浮点数,Brain Floating Point, BP16),是一种为机器学习优化的16位浮点数格式,保留了单精度浮点数的指数范围,但减少了尾数的位数:包括1位符号位,8位指数位,7位尾数位。SIMD(Single Instruction, Multiple Data)是一种并行计算架构,通过扩展处理器的指令集来操作多个数据元素,这些数据元素通常被存储在一个大的寄存器中,例如处理器可以使用一条指令同时对四个 32 位浮点数或八个 16 位整数进行运算。// 第三个整数加法。

2024-05-26 16:35:55 794

原创 [处理器芯片]-5 超标量CPU实现之ALU

ALU(Arithmetic Logic Unit,算术逻辑单元),是CPU执行单元中最主要的组成部分。

2024-05-26 16:22:57 994

原创 [处理器芯片]-4 超标量CPU实现之分支预测

分支预测通过预测程序中分支指令(如条件跳转、循环、函数调用等)的执行路径,从而减少因分支指令带来的流水线停顿和性能下降,用于提高指令流水线的效率,是处理器非常关键的一项技术。

2024-05-26 16:12:12 1098

原创 [处理器芯片]-3 超标量CPU实现之取指

6)调度器:负责根据指令的依赖关系和可用资源,将指令调度到可用的执行单元中,包括确定指令的执行顺序,管理执行单元的利用率,并确保指令的正确执行。具体实现可以通过链表、堆栈或计数器来记录每个缓存块的最近使用情况,具备较高的命中率,尤其是在具有较强局部性的访问模式下表现良好,是最简单的也是使用最广泛的一种替换策略。对于变化频繁的访问模式,效果不佳。当需要访问的内存卡不在缓存中,触发缓存未命中,需要在缓存中选择剔除块进行替换,替换策略决定了当缓存满了时,哪个缓存块应该被替换掉,以便为新的数据腾出空间。

2024-05-26 16:00:32 976

原创 [处理器芯片]-2 CPU架构

CPU有多种架构,例如x86,ARM,RISC-V,不同的架构定义了不同的指令集架构(ISA,Instruction Set Architecture)。ISA通常包括数据处理指令(数学运算、逻辑运算、比较、移位等)、数据搬运、控制流指令(程序执行地址的跳转);从宏观角度ISA可以分为CISC(复杂指令集计算)和RISC(精简指令集计算)两种不同的处理器设计理念。

2024-05-25 13:43:52 769

原创 [自动驾驶技术]-7 Tesla自动驾驶方案之算法(AI Day 2022)

特斯拉在2022年AI Day上更新了感知规控算法模型,核心引入了Occupancy技术。下图是特斯拉活动日展示的主题内容,本文主要解读Planning和Neural Network部分。

2024-05-24 11:44:51 1446

原创 [自动驾驶技术]-6 Tesla自动驾驶方案之硬件(AI Day 2021)

特斯拉的Dojo架构由计算单元和Network Fabric(指芯片上用于连接和通信的网络架构,是一种高性能的互连系统,负责在芯片内部不同计算单元之间传输数据)组成,采用了多种技术例如采用2D网格网络进行数据传输、对神经网络分割、调用本地存储方式等解决带宽和延迟的限制。自定义目标支持:特斯拉可以通过LLVM的目标描述文件,定义Dojo芯片的特性,并扩展LLVM的指令选择和代码生成模块,以支持特斯拉可能有的特定的硬件加速单元和自定义指令集自定义指令。使用LLVM作为底层处理生成硬件所需的二进制代码。

2024-05-23 20:56:51 1381 3

原创 [自动驾驶技术]-5 Tesla自动驾驶方案之算法(AI Day 2021)

有朋友问我,如何有效学习一个新技术。笔者这么多年的经验是:1)了解国内外产业应用和标准法规现状,先建立宏观知识图谱及技术系统框架;2)根据系统框架逐块进行深入研究(横向、纵向),穿插行业内主流厂商对应模块技术方案;3)系统研究行业内TOP厂商完整解决方案;4)针对你选择的重点方向进阶研究。因此笔者建立的自动驾驶专题介绍也会按照这个思路搭建技术体系(发布内容顺序不一定能严格遵守该路线,但会力求不断更新最终能按照该思路完成自动驾驶专栏搭建)。

2024-05-23 17:12:39 2673 1

原创 [自动驾驶技术]-4 决策规划系统

在自动驾驶系统中,决策规划是一个关键部分,它位于环境感知和控制执行之间,负责将感知模块提供的静态和动态环境信息转化为具体的驾驶策略和路径规划,生成期望的路径和相应的控制量,给到下一阶段控制执行使用。决策规划模块的主要任务包括:全局路径规划、行为决策、运动轨迹规划(主要进行局部路径规划和速度规划)。决策规划的体系架构早期是基于全局路径规划→行为决策→运动轨迹规划分层递进式的,具备推理解释能力,但中间存在延迟,路径误差累计较大,可靠性不高;

2024-05-22 13:32:09 1271 1

原创 [智能座舱]-发展历程趋势挑战和车手互联

这两天一直有朋友找笔者聊智能座舱,笔者虽然现在全身心扑在自动驾驶上,但之前有过多年车手互联端到端解决方案从0到1到多的商用项目经验,多年来对智能座舱也有些自己的心得,遂成文和大家一起分享下。

2024-05-21 23:32:12 622 1

原创 [自动驾驶技术]-3 感知系统之任务和算法

这一类任务主要涉及对周围环境的感知和理解,包括车道识别、行人和物体识别、交通信号标志识别、障碍物识别以及其他车辆识别。总结下,实际应用中我们并不需要针对每个子任务都使用对应的算法实现,而是将以上所有子任务对应的算法(主要关注深度学习算法)参照上一节子任务合并的方式进行规整,以便于梳理出主流的感知算法模型,避免重复计算。自动驾驶中的感知任务是指从传感器获取的数据中提取有关周围环境的信息,包括道路、障碍物、交通标志、行人等,对于自动驾驶系统来说至关重要,因为它们提供了车辆在道路上行驶所需的基础信息。

2024-05-21 15:12:00 2352 1

原创 [自动驾驶技术]-2 感知系统之传感器功能和网络方案

主摄像头,最大监测距离150米;1V1R,通常是最低限度的传感器配置,一个前视摄像头(前挡风玻璃正中)和一个毫米波雷达(车前保正中),这种配置甚至可以支持一部分基础的L2功能,但有一定的局限性。毫米波雷达是基于多普勒效应和时域反射原理,雷达天线发射毫米波信号,信号遇到障碍物反射回接收器,通过探测波反射回来的时间差和频移,测量物体的距离、速度和方向来确定目标信息。5个摄像头:1个前视摄像头(前挡风玻璃正中),4个环视摄像头即常说的鱼眼摄像头(部署位置前保正中,后保/尾门上方正中,左右后视镜下方)

2024-05-21 14:56:01 1304 1

原创 [自动驾驶技术]-1 概述技术和法规

自动驾驶(Autonomous Driving),也称为无人驾驶或自驾,是指通过计算机系统和传感器设备,自动驾驶汽车在没有人类干预的情况下能够感知环境并做出驾驶决策,从而实现车辆的自主行驶。

2024-05-21 09:02:36 1050

原创 [自动驾驶 SoC]-2 软硬协同

Shader Engine接收内核启动命令,配置计算单元(如SM,Streaming Multiprocessor),并启动内核执行。ACE调度器从命令队列中提取内核启动命令,并根据资源可用性和调度策略将任务分配给合适的着色器引擎(Shader Engine,SE)。主机端运行时将内核启动命令等插入用于存放AQL(Architected Queuing Language)数据包的AQL队列中,AQL数据包含有与内核分派有关信息,如网格、工作组大小、内核函数信息等。将取出的指令译码为可执行的操作。

2024-05-20 13:43:53 744

原创 [自动驾驶 SoC]-1 AI芯片介绍

AI芯片是专门设计用于加速人工智能(AI)计算任务的处理器,通常具有优化的硬件架构和指令集,能够高效地执行深度学习推理和训练等任务。

2024-05-20 13:30:06 1162

原创 [处理器芯片]-1 概要介绍

(笔者本人从事过多年芯片开发,一谈起这个话题,眉飞色舞两眼直冒光!!处理器芯片是计算系统中的核心组件之一,用于执行各种计算任务和控制系统的操作;只要是电子设备几乎都离不开处理器芯片。

2024-05-20 13:00:52 726

原创 [编译器]-3 TVM分层设计

TVM(Tensor Virtual Machine)是一个开源的端到端深度学习编译器堆栈,旨在优化和生成针对各种硬件平台的高性能机器学习模型代码。

2024-05-19 20:17:51 979

原创 [编译器]-2 AI编译器介绍

AI领域已有很多深度学习框架,TensorFLow,PyTorch、Caffee2等,AI模型开发者面临从一个框架切换到另一个框架的困难,而框架开发维护者也面临不同芯片平台支持的挑战,因此AI芯片厂商需要为每款芯片提供多框架支持,每个算子可能需要以不同方式定义和实现,导致出现了面向专用架构的AI编译器:TVM、XLA、Glow等。

2024-05-19 19:00:54 1006

原创 [编译器]-1传统编译器介绍

编译器是一种软件工具,将高级编程语言编写的源代码转换为低级机器语言代码,使计算机能够执行程序,简言之就是将我们常用的C/C++等高级语言编写的程序转换成机器能执行的01代码。

2024-05-18 10:07:47 673 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除