ARMv8-A系列学习笔记(7)--Chapter 13 Memory Ordering

Chapter 13

Memory Ordering 










两种NORMAL与DEVICE (ARMV7 还有一种STRONGLY ORDERED,V8没有了)


NORMAL:
all code, most data regions
RAM, Flash, or ROM
weakly ordered, fewer restrictions placed on the processor
can re-order, repeat, and merge accesses to Normal memory
be access speculatively (without being explicitly referenced in the program)
被标为NORMAL的MEMORY, 可以显式使用BARRIER来实现ORDERING


DEVICE:
只有NON-CACHEABLE, OUTER-SHAREABLE
access have a side-effect
only used for peripherals in system
no speculative (exception NEON)


有以下几种属性:
Gathering
Re-ordering
Early Write Acknowledgement (write buffer between core and device memory)




所谓的
Non-shareable
Inner shareable
Outer shareable
Full system

是否可以理解为,对同一块内存区域,多个观察者,之间的范围分类


Barriers/Fence:

MASTER <--> INTERCONNECT <--> SLAVE DEVICE

只有MASTER可以观察(OBSERVE)TRANSFERS

只有MASTER发起事务(TRANSACTIONS)

MASTER发起事务的顺序,与事务被(SLAVE DEVICE)完成的顺序,不一定相同,因为,有可能在INTERCONNECT中,被RE-ORDERED了


OBSERVABILITY:

I have observed your write when I can read what you wrote and I have observed your read when I can no longer change the value you read 
写的可以被读到

读的不再被改变


ISB: ISB is required to ensure that the effects of those operations are seen by the instructions that follow 

DMB

DSB: DSB is required to ensure that the maintenance operations complete 


不是很明白:ONE-WAY BARRIERS

LOAD-ACQUIRE, STORE-RELEASE


  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值