eric2013 发表于 2021-12-1 00:02:07

ZYNQ双核A9的内存属性(共享Shareability,缓存Cache)

====================================
Shareability

共享域定义了总线矩阵内的区域,在这些区域中进行内存访问一致性(以可预测的方式发生)和潜在的连贯性(有硬件支持)。在该域之外,主控可能无法看到与域内部相同的内存访问顺序。

下面是不同的Cortex-A9 系统中可用的共享选项:

Non-Shareable(NSH )
仅由本地主控系统组成的域。 永远不需要与其他内核、处理器或设备的访问同步,一般不用于SMP多核系统。

Inner shareable(ISH )
一个域(可能)由多个主控共享,但通常不是所有主控都在里面。 一个系统可以有多个内部共享域。 一个影响内部可共享域的操作不会影响系统中其他内部可共享域。

Outer shareable(OSH )
域由多个主控共享,并且很可能由几个内部共享域组成。 一个影响外部可共享域的操作也隐含地影响所有内部可共享域。

Full system(SY)
对全系统的操作会影响系统中的所有主控; 全部不可共享区域、所有内部可共享区域和所有外部可共享区域地区。


可共享性仅适用于Normal Memory,并适用于执行以下操作的Device Memory,不包括大型物理地址扩展 (LPAE)。 在包括LPAE,设备内存始终是外部可共享的。

===================================
Cacheability


Cahce仅适用于Normal memory类型。 这些属性提供了一种与内存区域外的可共享区域的一致性控制。
Normal memory的每个区域都分配了一个Cache属性,它是以下之一:

Write-back cacheable
Write-through cacheable
Non-cacheable

Cortex-A9还为两个普通内存提供了独立的Cache属性,内部和外部可缓存。 Inner 指的是最里面的缓存,并且始终包含最低级别的缓存,即 L1 Cache。 外层缓存是指 L2 Cache。 没有被内部缓存控制的缓存可以放在由外部缓存属性控制的缓存(No
cache controlled by the inner cacheability attributes can lie outside a cache controlled by the outer cacheability attributes)






页: [1]
查看完整版本: ZYNQ双核A9的内存属性(共享Shareability,缓存Cache)