当前位置: 首页 > wzjs >正文

苏州市建设职业中心网站天津网站优化公司

苏州市建设职业中心网站,天津网站优化公司,阿里巴巴国际站新手入门教程,中国建设银行青海分行网站目录 1 前言 2 MTE tag分类 3 Address tag 4 Memory tag 5 Tag Check 6 Cortex-A710 和 CI-700 系统示例: 1 前言 ARM的MTE允许分配、设置、比较一个 4bit的allocation tag 为16字节粒度的物理地址。当对MTE有一定了解后,应该会产生如下疑问&#…

目录

1 前言

2 MTE tag分类

3 Address tag

4 Memory tag

5 Tag Check

6 Cortex-A710 和 CI-700 系统示例:


1 前言

        ARM的MTE允许分配、设置、比较一个 4bit的allocation tag 为16字节粒度的物理地址。当对MTE有一定了解后,应该会产生如下疑问:MTE tag是被存在在哪里、是怎样进行检查的在实际的硬件平台?是的,带着这个疑问查阅了好多资料,最终在ARM官方找到了答案。如下内容来自Documentation – Arm Developer

2 MTE tag分类

        MTE包含两中类型的tags: address tag 和memory tag,也被叫做lock 和 key。

        Address tag : 做为key角色,添加4 bit的数据到虚拟地址的高位处。这依赖于Aarch64 的TBI(top bit ignore)特性。

        Memory tag:做为lock角色,memory tag也是由4 bit数据组成,关联到16字节对齐的物理内存区域,Arm以16字节的内存区域做为tag粒度。Memory tag的存储实现由硬件实现。

3 Address tag

        当MTE和TBI使能时,虚拟地址的bit[59:56]用来存放address tag。

        MTE架构中也包含一些指令,如IRG、ADDG、SUBG 用于操作address tag。例如:

                IRG Xd, Xn ;给存放在Xn寄存器的地址添加随机逻辑address tag,然后将结果写入到Xd寄存器。

                ADDG Xd, Xn, #<uimm6>, #<uimm4>; 将存放子在Xn寄存器的地址添加立即数 #<uimm6>,然后使用#<uimm4>修改上一步计算后的地址的Address tag,将最终的结果存放到Xd寄存器。

4 Memory tag

        关联到16字节对齐的 4 bit 的memory tag是存放在系统内存,能够被缓存到CPU的处理器cache 或者系统缓存。逻辑上,每16字节的内存有一个4 bit  tag。

        从架构角度,memory tag是不能通过确定地址进行访问,可以通过其关联的数据地址进行访问。

        MTE架构包含一些指令,如STG、STGZ、STG2G、STZ2G 用于存放虚拟地址的address tag到tag storage。以STG X0,[X0]指令为例,该指令用于存放X0寄存器的Allocation tag到tag内存, 该tag内存和X0寄存器的虚拟地址关联,如下图显示:

5 Tag Check

        当MTE使能,使用load/store 方式访问以标记的内存时,tag check硬件将比较要访问的内存地址的address tag 和与内存地址关联、存放在tag storage的 memory tag。

        Tag check 失败时会触发同步数据异常或者异步异常,同步或者异步异常方式取决于SCTLR_Elx.TCF寄存器的配置。

6 Cortex-A710 和 CI-700 系统示例:

        MTE的memory tag 存放在Cortex-A710的L1 data cache、L2cache、DSU L3 cache和CI-700 HN-F系统级cache(SLC :system level cache)。例如在L1 data cache时,4 bit的MTE tag存放在cache line tag ram。

        为了存放memory tag 到 不支持MTE 功能的DDR内存控制器(DMC:DDR memory controller),CI-700 的memory tag slave interface(MTSX)连接不支持memory tag功能的 AXI/ACE-Lite DMC 到 支持MTE的CI-700 。 在MTSX中, MTU(memory tag unit)的分割逻辑将DRAM内存空间分割为两部分:data storage 和 tag storage。

        MTSX可以向AXI/ACE-Lite DMC生成单独的数据和标记请求,这样DMC就可以平等地对待数据存储和标记存储访问,而不需要知道它是数据请求还是标记请求。数据存储和标记存储可以驻留在同一DDRAM中。

        软件需要编写tag 基地址的信息到MTSX地址寄存器,用来告知MTU系统tag storage所在的DDRAM空间。MTU能够使用该信息计算16字节数据地址对应的 4bit memory tag的所在的内存地址。

        MTU也包含一个tag check逻辑单元。默认情况,MTSX也包含一个 Tag Cache(TC)用来存放本地tag。这个配置用于更快的访问tag、减少AXI/ACE-Lite的拥堵。下图显示了MTU分割单元怎样将一个CHI-E MTE传输分割为 AXI/ACE-Lite数据和tag请求,默认Tag cache和Tag check单元怎样工作。

http://www.dtcms.com/wzjs/296717.html

相关文章:

  • 动力无限西安网站建设互联网营销师培训大纲
  • 洛阳网站建设好做不百度seo标题优化软件
  • 做网站域名有什么用微指数查询入口
  • 响应式企业展示型网站模板网络营销策划的内容
  • 苏州企业商务网站建设谷歌浏览器下载手机版最新版
  • 公司网站搭建教程软件培训机构哪家好
  • 做同城特价的网站网站建设制作公司
  • 自己做网站卖东西需要交税吗最近有哪些新闻
  • 鹤壁网站开发seo整站优化系统
  • 建设云官网seo词条
  • 江西建设局网站百度地图在线查询
  • 美工做网站怎么收费整站外包优化公司
  • 网站的基本价格百度广告竞价排名
  • 北京海淀网站建设公司郑州网站推广多少钱
  • 南昌网站建设公务网站搜什么关键词好
  • 老年门户网站建设的意义如何优化搜索引擎的准确性
  • 我的世界皮肤网站做游戏推广赚钱
  • 路得威网站谁做的无锡百度竞价
  • 沭阳苏奥产业园做网站大数据下的精准营销
  • 如何设计一个完整的网站短链接购买
  • 懂做网站怎么赚钱b站推广渠道
  • php做自己的网站最近一周热点新闻
  • 哪个网站可以做平面兼职软文拟发布的平台与板块
  • 手机移动网站模板日喀则网站seo
  • 襄阳网站建设品牌seo关键词搜索和优化
  • 做系统网站建设怎么建立网站的步骤
  • 网站中引用字体阿里指数官网
  • 番禺制作网站技术网页制作软件推荐
  • 浦东新区做网站seo排名优化网站
  • 盐城seo网站优化seo排名赚官网