Functional Accesses: Update states to support Broadcast/Snooping protocols.
Review Request #827 - Created Aug. 15, 2011 and submitted - Latest diff uploaded
| Information | |
|---|---|
| Lisa Hsu | |
| gem5 | |
| Reviewers | |
| Default | |
| ali, gblack, nate, stever | |
Functional Accesses: Update states to support Broadcast/Snooping protocols. In the current implementation of Functional Accesses, it's very hard to implement broadcast or snooping protocols where the memory has no idea if it has exclusive access to a cache block or not. Without this knowledge, making sure the RW vs. RO permissions are right are next to impossible. So we add a new state called Backing_Store to enable the conveyance that this is the backup storage for a block, so that it can be written if it is the only possibly RW block in the system, or written even if there is another RW block in the ssytem.
Tested on a protocol on 10 random seeds to 1M accesses using ruby_mem_test.py with 25% functional accesses.
