SMMU概述

内存管理(mmu/smmu)/内存分配原理/多级页表 在没有内存管理的时代,物理空间只能连续的使用,一个进程要用多少存储,在进程开始就确定好了,但是进程在运行过程中由于程序局部性的原理,在一段时间内可能只使用了分配好的内存的一部分,其余大部分时间都是空闲的;另外一个问题由于地址对齐的需求,在给同时调度的多个进程分配物理空间的时候,有很多小的地址段(这个内存管理的需求也是慢慢发展而来,早期总线上的master是直接使用物理地址,再到发展出对CPU进行内存管理的MMU,到现在给SOC内部的各个具有DMA功能的模块进行内存管理的IOMMU或者叫做SMMU。 阅读详情
SMMU本质上就是一个MMU设备,它的内存转换逻辑与CPU的MMU采用相同的逻辑,都允许将物理上非连续的页虚拟为连续的内存页。SMMU和IOMMU可以交替使用。

关键术语
-Context Bank
 定义转换上下文的寄存器集,系统中的每个Context Bank都有相同的寄存器集。
 PS:这里要记录的有哪些信息?
-Stream ID
 SMMU的输入源,用于唯一标记当前转换流的标记符。
 PS:有哪些转换流?
-IOVA
 I/O虚拟地址
-Page Tables
 定义虚拟到物理内存映射的表格,SMMU依靠这些表格完成转换。
-TTBR0
 保存Page Tables基地址的寄存器
-Page Level
 Page Table走过的级别(目前理解是转换过程中当前所处的转换页表的级别),一半只有在转换出错时才会用到。
-Translation Stage
 转换进程的阶段,HLOS管理第一阶段,系统管理程序管理第二阶段。
 PS:分别完成什么功能?
-IPA
 中间物理地址,第一阶段的输出地址和第二阶段的输入地址
 PS:本身不是硬件过程吗,怎么HLOS还会生成中间地址?
-TLB
 转换后援缓存器,也称页表缓存,用于加快地址转换过程,缓存着IOVA到物理地址的映射。
-Bypass

 用于某个阶段(Stage 1/2或全部)不进行转换,即输出等于输入。

重要API

API 描
SoC 架构师手记:从零理解 SMMU 的核心机制 —— Stream ID、STE 和 Context Descriptor 的关系 在现代 SoC(System on Chip)架构中,是实现设备虚拟化和内存访问隔离的关键组件。它使得 GPU、NPU、DMA 控制器等设备可以像 CPU 一样使用虚拟地址访问物理内存,并且通过硬件支持的多级页表结构提供高效的地址翻译服务。本文将深入探讨Stream ID和在 SMMU 地址翻译过程中的角色及其相互关系,帮助你全面理解 SMMU 的核心机制。SMMU 全称,是 SoC 中用于管理非 CPU 设备(如 GPU、NPU、DMA 引擎)地址翻译的硬件模块。 阅读详情

相关推荐

Android 底层知识-SMMU

MMU简介 MMU是Memory Management Unit的缩写,中文名是内存管理单元。它是一种负责处理中央处理器(CPU)的内存访问请求的计算机硬件。它的功能包括虚拟地址到物理地址的转换(即虚拟内存管理)、内存保护、中央处理器高速缓存的控制。 在linux中,用户态使用的内存是虚拟地址(Virtual Address,VA),实际硬件内存称为物理地址(Physical Address,PA)。用户访问内存看到的是VA,内核转化成PA操作实际物理地址。这里要提一下,实际MMU硬件支持2层转化,PA-&

岩之有理的博客 5406

[A-21]ARMv8/v9-SMMU系统架构和功能概述

本文简述了SMMU的系统架构和核心功能

基层架构师的分享 1724

MMU和SMMU/IOMMU使用场景和区别,SMMU技术与cache

1.各种MMU MMU是memory manage unit 内存管理单元; SMMU是system memory manage unit 系统内存管理单元; IOMMU和SMMU的功能基本相同,只是不同厂商的叫法。 2.各种MMU的使用场景 MMU是cpu和各种处理器对应的内存管理单元; SMMU/IOMMU是DMA使用的内存管理单元 2.1 各自的使用场景 2.1.1 地址转换 MMU是处理器与内存之间的VA和PA的地址转换,个人理解是用户程...

cy413026的博客 1万+

音频smmu问题之smmu学习

简单来说, SMMU(System Memory Management Unit)是ARM为外设访问系统RAM提供了一种类似于MMU的虚拟内存访问机制, 外设可以通过DMA直接访问RAM, 而无需CPU的干预. 如此, 外设可以通过一个虚拟的地址即可访问物理地址(可以不连续), 做到了不同外设之间IO地址空间的彼此独立与隔离. 因此, SMMU也通常被称为IOMMU(Input/Output MMU).

Fire的博客 2144

QNX SMMU/IOMMU

QNX SMMU/IOMMU介绍

dr515952876的专栏 1558

深入浅出 Linux 中的 ARM IOMMU SMMU I

在计算机系统架构中,与传统的用于 CPU 访问内存的管理的 MMU 类似,IOMMU (Input Output Memory Management Unit) 将来自系统 I/O 设备的 DMA 请求传递到系统互连之前,它会先转换请求的地址,并对系统 I/O 设备的内存访问事务进行管理和限制。IOMMU 将设备可见的虚拟地址 (IOVA) 映射到物理内存地址。不同的硬件体系结构有不同的 IOMMU 实现,ARM 平台的 IOMMU 是 SMMU (System Memory Management)。

tq08g2z的专栏 5187

SMMU软件指南之概述

本博客描述了 ARM 系统内存管理单元(SMMUv3)的基本操作及其使用案例,包括: • SMMU 架构概念、术语和操作 • 与 SMMU 功能相关的系统级考虑因素 • 典型 SMMU 使用案例的知识

AI-安全-功耗 478

SMMU软件指南操作之翻译过程概述

SMMU软件指南操作之翻译过程概述

AI-安全-功耗 483

SMMU学习这一篇就够了

引流关键词: SMMU,mmu500,mmu600,mmu700,system mmu,Non-cacheable,Cacheable, non-shareable,inner-shareable,outer-shareable, optee、ATF、TF-A、Trustzone、optee3.14、MMU、VMSA、cache、TLB、arm、armv8、armv9、TEE、安全、内存管理、页表… 目录前言1、SMMU总结1.1、SMMU的timeline1.2、SMMU的简介1.3、为什么要使用S.

baron-周贺贺-代码改变世界ctw 4100

使用LSTM(长短期记忆)模型处理文本数据的典型流程

对于序列到序列的任务(如机器翻译),可以使用LSTM的隐状态来生成目标序列。这些向量捕获了词之间的语义关系,每个词都被表示为一个高维空间中的点,语义上相似的词在向量空间中彼此靠近。这通常是通过创建一个词汇表(vocabulary)来实现的,词汇表中的每个词都会被分配一个唯一的数字ID。:由于LSTM等循环神经网络(RNN)需要固定长度的输入,所以需要将不同长度的句子填充到相同的长度。由于计算机不能直接理解连续的文本,第一步是将文本分割成独立的词或标记(token)。:将词嵌入作为输入传递给LSTM模型。

YHKKun的博客 2500

染色体外环状DNA:肿瘤研究新方向

染色体外环状DNA(ecDNA)是癌症中活化原癌基因扩增的主要方式。区别于常染色体,这类生物大分子主要以环状的形式存在于细胞核当中,长度分布在103-106数量级,无中心粒。ecDNA序列中包含一个或者多个基因与调控元件,结构开放,转录活性强,相比于在棒状染色体结构基因,ecDNA的生物功能活性更强。癌症中,成环的基因区域拷贝数往往增高,而超过一半的高拷贝数事件是ecDNA驱动生成。...

blackjimmy的博客 766

实战:GMTSAR软件处理陆探一号SAR数据

摘要:陆探一号(LT-1)是我国首组L波段差分干涉SAR卫星星座,具备全天候多极化成像能力,主要服务于自然资源监测等领域。文章详细介绍了其轨道参数(607km太阳同步轨道)和传感器技术指标(5种成像模式)。同时阐述了开源InSAR处理软件GMTSAR的安装方法(基于Ubuntu系统)及实验流程,包括数据准备、DEM生成和干涉处理步骤,特别说明了轨道数据缺失时的MATLAB插值处理方法。该研究为国产SAR卫星数据处理提供了技术参考。

一个RSer的博客 1034

IAR许可证Generation 18代际不匹配问题解析与解决

IAR Embedded Workbench 的许可证机制采用‘代际(Generation)’模型,而非简单版本号匹配——这是一种基于数字签名算法、加密协议和硬件绑定策略演进的授权安全体系。Generation 18 是 v9.30 及以上版本强制要求的许可代际标准,对应 ECDSA 签名与增强型硬件指纹校验,旨在提升防破解能力与平台适配性。当旧版许可证(如 Generation 16/17)被用于新 IDE 时,启动器会在本地完成代际校验并直接拦截,导致‘The generation feature is

weixin_34203832的博客 344

《大明王朝1566》中,朝廷财政危机无法解决的根源分析

财政困局中的财富最终流向三重黑洞:​皇室挥霍​(如嘉靖炼丹修殿)、特权阶层贪腐​(严党年入百万两盐税)、制度性损耗​(宗室供养、低效官僚)。更深层的“钱”其实是被禁锢在道德化治理的牢笼中——当国家用“黄河长江皆可为用”的权术思维替代制度性改革时,财政危机便成为帝制王朝无法逃脱的宿命。

为了小家奋斗 1970

模型优化系列——模型剪枝/量化概述

模型优化目的:通过减少模型大小,提高推理速度等使模型成功部署在各个硬件中并实时有效运作。

qq_61210574的博客 1293

基于BERTopic模型的英文20新闻数据集主题聚类及可视化

BERTopic是基于深度学习的一种主题建模方法。BERT是一种用于NLP的预训练策略,它成功地利用了句子的深层语义信息。

Cachel Wood的博客 1461

基于ART算法和SIRT算法的超声CT反演及MATLAB代码实现

在超声CT中,反演算法起着至关重要的作用,它通过从测量数据中恢复出目标物体的内部结构。本文将介绍基于ART算法(Algebraic Reconstruction Technique)和SIRT算法(Simultaneous Iterative Reconstruction Technique)的超声CT反演方法,并提供相应的MATLAB代码实现。本文介绍了基于ART算法和SIRT算法的超声CT反演方法,并提供了相应的MATLAB代码示例。基于ART算法和SIRT算法的超声CT反演及MATLAB代码实现。

2301_79326510的博客 566

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

上一篇: JAR、WAR、EAR的使用和区别
下一篇: 关于地址映射
makeyourprogress
博客等级 码龄11年 26粉丝 57原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值