0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

SMMU数据结构格式之Stream Table Entry...V和Config介绍

芯片验证工程师 来源:芯片验证工程师 2023-05-04 10:15 次阅读

c9740160-e7e3-11ed-ab56-dac502259ad0.png

[0] V Valid

V == 1'b0:意味着STE是invalid,STE中的其他语段都被IGNORED

V== 1'b1:意味着STE是valid,STE中的其他语段按照描述含义执行

更新一个valid STE时需要非常小心,因为此时SMMU可能会访问这个STE数据,这其中存在着“竞争race”。

选择到invalid STE的Device transaction将会报告abort,事务处理终止,并且记录下这个C_BAD_STE事件

STE 字段遵循 S1 前缀用于与 stage 1 translation相关的字段,S2 前缀用于与stage 2 translation相关的字段,以及其他不使用前缀的字段与特定translationstage无关,同时适用Stage1和Stage2。

[3:1] Config[2:0] Stream configuration

c99d2590-e7e3-11ed-ab56-dac502259ad0.png

c9aa8c76-e7e3-11ed-ab56-dac502259ad0.png

如果stage 1未实现(SMMU_IDR0.S1P == 0),则设置 Config[2:0] == 0b1x1 是非法的。Config[0]可以是RAZ/WI。RAZ/WIRead-As-Zero, Writes Ignored.

如果stage 2未实现(SMMU_IDR0.S2P == 0),则设置 Config[2:0] == 0b11x 是非法的。Config[1]可以是RAZ/WI。

如果实现了stage 2,并且不支持Secure stage 2(SMMU_S_IDR1.SEL2 == 0),并且 STE 是从Secure Stream table中获得的,则设置 Config[2:0] == 0b11x 也是非法的。

配置Secure STE为 STE.Config[2:0] == 0b11x,且 STE.S2AA64 == 0 是非法的。

在一个valid STE中(STE.V == 1):

S2前缀的字段(除了S2VMID)被IGNORED ,如果stage 2 bypasses translation (Config[1] == 0)

S1前缀的字段被IGNORED ,如果stage 1bypasses translation (Config[1] == 0)

Note:当stage 1配置为translate时,需要根据域段S1DSS 和 S1Fmt 的描述以获取substream配置。





审核编辑:刘清

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

    关注

    0

    文章

    26

    浏览量

    13180
  • MMU
    MMU
    +关注

    关注

    0

    文章

    92

    浏览量

    18447

原文标题:SMMU数据结构格式之 Stream Table Entry...V和Config

文章出处:【微信号:芯片验证工程师,微信公众号:芯片验证工程师】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    大话数据结构pdf下载

    大话数据结构是一本很值得初学者看的编程书籍,用简单的语言然人深刻的理解数据结构,强烈程序员推荐下载收藏,下面是部分内容预览: 完整的pdf格式电子书下载: 《大话数据结构》.pdf
    发表于 07-04 00:33

    常见的数据结构

    `数据结构在实际应用中非常常见,现在各种算法基本都牵涉到数据结构,因此,掌握数据结构算是软件工程师的必备技能。一、什么是数据结构数据结构,直
    发表于 05-10 07:58

    数据结构的基本概念是什么

    数据结构基本概念
    发表于 05-27 08:29

    数据结构链式栈介绍

    数据结构链式栈链式栈链式栈的定义链式栈操作的实现链式栈初始化链式栈入栈链式栈出栈链式栈初始化链式栈链式栈无栈满问题,空间可以扩充插入与删除仅在栈顶处执行链式栈的栈顶在链头链式栈的定义 //定义链式
    发表于 12-17 08:11

    数据结构链表的基本操作

    嵌入式学习基础-数据结构链表的基本操作链表节点采用结构体的方式进行定义,下面是最基础的定义只有一个数据data,*pNext用于指向下一个节点(若为尾节点则指向NULL)。//链表节点struct
    发表于 12-22 08:05

    ARM系列SMMU总线资料合集

    SMMU的高级功能上篇我们介绍SMMU的基本结构和用法,本篇讲一下SMMU的高级功能。在ARM64体系
    发表于 04-11 15:58

    SMMU学习这一篇就够了

    的STE(streamID entry)2.4.2 一个 2-level Stream Table 的示例2.4.3 Multi-level Stream and CD tables而
    发表于 02-23 17:11

    数据结构是什么_数据结构有什么用

    数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高
    发表于 11-17 14:45 1.6w次阅读
    <b class='flag-5'>数据结构</b>是什么_<b class='flag-5'>数据结构</b>有什么用

    为什么要学习数据结构数据结构的应用详细资料概述免费下载

    本文档的主要内容详细介绍的是为什么要学习数据结构数据结构的应用详细资料概述免费下载包括了:数据结构在串口通信当中的应用,数据结构在按键监测
    发表于 09-11 17:15 13次下载
    为什么要学习<b class='flag-5'>数据结构</b>?<b class='flag-5'>数据结构</b>的应用详细资料概述免费下载

    什么是数据结构?为什么要学习数据结构数据结构的应用实例分析

    本文档的主要内容详细介绍的是什么是数据结构?为什么要学习数据结构数据结构的应用实例分析包括了:数据结构在串口通信当中的应用,
    发表于 09-26 15:45 14次下载
    什么是<b class='flag-5'>数据结构</b>?为什么要学习<b class='flag-5'>数据结构</b>?<b class='flag-5'>数据结构</b>的应用实例分析

    arm smmu的原理

    的作用就是替设备将dma请求的地址,翻译成设备真正能用的物理地址,但是当smmu bypass的时候,设备也可以直接使用物理地址来进行dma; 1.2: smmu数据结构 smmu
    的头像 发表于 10-09 10:43 4625次阅读
    arm <b class='flag-5'>smmu</b>的原理

    SMMU数据结构格式

    就是SMMU Level 1 Stream Table Descriptor的数据格式,简称 **Level1 STD** 。
    的头像 发表于 04-28 11:48 1058次阅读

    SMMU数据结构格式Level 1 Stream Table Descriptor介绍

    上图就是SMMU Level 1 Stream Table Descriptor的数据格式,简称Level1 STD。
    的头像 发表于 05-06 14:44 1192次阅读
    <b class='flag-5'>SMMU</b><b class='flag-5'>数据结构</b><b class='flag-5'>格式</b><b class='flag-5'>之</b>Level 1 <b class='flag-5'>Stream</b> <b class='flag-5'>Table</b> Descriptor<b class='flag-5'>介绍</b>

    ARM SMMU Data structuresStream Table

    incoming transaction的StreamID可以找到一个STE。SMMU支持两种Stream table格式格式
    的头像 发表于 05-11 09:22 1526次阅读
    ARM <b class='flag-5'>SMMU</b> Data structures<b class='flag-5'>之</b><b class='flag-5'>Stream</b> <b class='flag-5'>Table</b>

    epoll的基础数据结构

    一、epoll的基础数据结构 在开始研究源代码之前,我们先看一下 epoll 中使用的数据结构,分别是 eventpoll、epitem 和 eppoll_entry。 1、eventpoll 我们
    的头像 发表于 11-10 10:20 901次阅读
    epoll的基础<b class='flag-5'>数据结构</b>