目录
内存属性Memory Attributes (MemAttr) 包含Early Write Acknowledgment (EWA), Device, Cacheable, 以及Allocate。
1. EWA
EWA,Early Write Acknowledgment ,指示事务的写入完成响应是否必须来自事务的终点:
- EWA=1:允许来自互连中的中间点,例如Home节点。则该事务的写入完成响应可以来自中间点或来自端点。
- EWA=0:必须来自事务的最终目的地。
注意:如果不使用EWA属性,完成信号必须来自端点。
EWA断言要求如下:
可以取任意值:
- •可以在ReadNoSnp和ReadNoSnpSep事务中取任何值。
- •可以在WriteNoSnp事务中取任何值。
- •可以在CMO事务中取任何值。
- •可以在Atomic事务中取任何值。
必须置位:
- •必须在不是ReadNoSnp、ReadNoSnpSep或CMO事务的其它读、dataless事务中断言
- •必须在非WriteNoSnp事务的其它Write事务中断言。
不适用:
- •不适用于DVMOp或PCrdReturn事务中,设置为零。
- •不适用于PrefetchTgt事务,可取任何值。
2. Device
Device属性指示内存类型是Device还是Normal。
Device memory type
对于exhibit side-effects的位置必须使用Device memory type,连带效应(side-effectts),即对一个地址的数据的操作可能会影响到另一个地址中的数据值。允许对没有exhibit side-effects的位置使用Device memory type。
事务到 Device type memory location的要求如下:
- •读取事务不能读取超过请求的数据。
- •不允许从设备内存位置预取(Prefetching)。
- •读取必须从端点获得数据。不得在完成的中间点将同一地址的写入数据转发给读事务。(也就是说,地址A,有个写操作,你不得在中间点把写入的