其他分享
首页 > 其他分享> > 【华为云技术分享】ARMv8-A存储模型概述(2)

【华为云技术分享】ARMv8-A存储模型概述(2)

作者:互联网

上一期中我们介绍了ARMv8-A架构中的地址转换机制和访问控制机制,这一期我们将考察ARMv8-A架构中的应用级内存模型(Application Level Memory Model)。

一、ARMv8-A架构的应用内存模型

应用级内存模型指的是从应用软件的视角来观察和操作处理器的内存行为而形成的模型。ARM v8-A 架构中的内存主要有两种类型:

Normal类型和Device类型的内存有不同的内存属性[2]:

上表中Shareability是与一致性有关的内存属性,用来指示一个内存位置对于一些处理器是否是可共享的。共享意味着需要硬件保证一个内存位置中的内容对一定范围内可访问该位置的多个处理器是一致。Shareability属性有Non-shareable、InnerShareable和Outer Shareable三个选项,其含义为:

内存属性Cacheability表示一个内存位置是否可以被分配到缓存中,这个内存属性有Non-cacheable、Write-ThrouthCacheable和Write-BackCacheable三种选项,其含义为:

一般来说,靠近处理器的缓存延迟较少但容量较小、价格较高。ARMv8架构采取多层存储来平衡容量和延迟,从而提升整体性能。下图体现了一个典型的ARMv8架构处理器的多级存储系统[1]:

ARMv8架构中存储一致性的内容较为复杂,涉及指令的使用和一致性模型,因此我们专门使用两期来介绍。

二、结语

本期我们考察了ARMv8-A架构的缓存机制,下一期中我们分析一下ARMv8架构的存储一致性模型。

 

参考文献

  1. ARM® Architecture Reference Manual ARMv8, for ARMv8-A architecture profile

  2. https://blog.csdn.net/shenhuxi_yu/article/details/90617675

  3. https://www.cnblogs.com/zhengshuangxi/p/11180610.html

标签:缓存,架构,位置,华为,概述,内存,ARMv8,处理器
来源: https://blog.51cto.com/u_15214399/2808580