ACE学习2——write transaction
用于处理缓存行的数据更新到主内存(main memory)的操作。
以下是用于更新主内存的几种事务类型:
WriteBack:
WriteBack事务用于将cache中的dirty态的cacheline写回主存,以释放cache中的cacheline,用于存储不同地址的数据。这种事务通常在缓存行被替换或需要为其他数据腾出空间时使用。
WriteClean:
WriteClean事务用于将cache中的dirty态的cacheline写回主存,同时允许主组件保留cacheline copy在cache中。这意味着数据被写回主内存后,缓存行仍然在缓存中有效,并可以继续使用。
WriteEvict:
WriteEvict事务用于逐出Clean cacheline。这种事务通常用于将缓存行写入到缓存层次结构的更低级别,例如L3缓存或系统级缓存。WriteEvict事务不需要更新主内存,它主要用于缓存层级之间的数据迁移。
WriteBack、WriteClean、WriteEvict和Evict事务不会导致其他缓存的监听事务(snoop transactions)。这意味着其他缓存不需要知道缓存行是否已经被写回主内存。
这些事务不像其他监听事务那样被序列化处理。这是因为它们主要关注于缓存行的替换和逐出,而不是数据的一致性问题。