cache状态梳理

IThe cache line is not present in the cache
UCThe cache line is present only in this cache
The cache line has not been modified with respect to memory
The cache line can be modified without notifying other caches
UCE
The cache line is present only in this cache
The cache line is in a unique state but none of the data bytes are valid
The cache line can be modified without notifying other caches
UD 
The cache line is present only in this cache
The cache line has been modified with respect to memory
The cache line must be written back to next level cache or memory on eviction
The cache line can be modified without notifying other caches.
In response to a snoop that requests data, the cache line must be:
 — Returned to Home when requested.
 — Forwarded directly to the Requester when instructed by the snoop.
UDP
The cache line is present only in this cache
The cache line is unique. Only a part of the cache line is Valid and Dirty
The cache line has been modified with respect to memory.
When the cache line is evicted, it must be merged with data from next level cache or memory
to form the complete Valid cache line
The cache line can be modified without notifying other caches.
In response to a snoop that requests data, the cache line must
Be returned to Home
 Not forward the cache line directly to the Requester even when instructed by the
snoop
SC 
Other caches might have a shared copy of the cache line.
The cache line might have been modified with respect to memory
It is not the responsibility of this cache to write the cache line back to memory on eviction.
The cache line cannot be modified without invalidating any shared copies and obtaining
unique ownership of the cache line
In response to a snoop that requests data, the cache line:
 — Is required to not return data if RetToSrc bit is not set.
 — Can return data if RetToSrc bit is set.
 — Is forwarded directly to the Requester when instructed by the snoop
SD
Other caches might have a shared copy of the cache line
The cache line has been modified with respect to memory
The cache line must be written back to next level cache or memory on eviction
The cache line cannot be modified without invalidating any shared copies and obtaining
unique ownership of the cache line
In response to a snoop that requests data, the cache line must be:
Returned to Home when requested
Forwarded directly to the Requester when instructed by the snoop
Empty cache line ownership
An empty cache line is a cache line that is held in a Unique state, so no other copies of the cache line exist, but none
of the data bytes are Valid. This cache line state is UCE
The following are examples of when empty cache line ownership can occur:
• A Requester can deliberately obtain an empty cache line:
— Before starting a write, to save system bandwidth, a Requester that expects to write to a cache line can
obtain an empty cache line with permission to store, instead of obtaining a Valid copy of the cache line.
• A Requester can transition into an empty state:
— If the Requester has a copy of the cache line when it requests permission to store, and that copy of the
cache line is invalidated before the Requester obtains permission to store, this results in the Requester
having an empty cache line with permission to store.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值