summaryrefslogtreecommitdiff
path: root/src/mem/protocol/MOESI_hammer-cache.sm
diff options
context:
space:
mode:
authorBrad Beckmann <Brad.Beckmann@amd.com>2011-04-01 15:50:23 -0700
committerBrad Beckmann <Brad.Beckmann@amd.com>2011-04-01 15:50:23 -0700
commit0788ea7b3b68bae82adf49bad474da3afdab0506 (patch)
treeeb249558ea05a4ecfc667fc7794622879d015637 /src/mem/protocol/MOESI_hammer-cache.sm
parent01fc529bb2e2bf2021b5ec0c0e88136f1665abe6 (diff)
downloadgem5-0788ea7b3b68bae82adf49bad474da3afdab0506.tar.xz
hammer: fixed dma uniproc error
Fixed an error reguarding DMA for uninprocessor systems. Basically removed an overly agressive optimization that lead to inconsistent state between the cache and the directory.
Diffstat (limited to 'src/mem/protocol/MOESI_hammer-cache.sm')
-rw-r--r--src/mem/protocol/MOESI_hammer-cache.sm10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/mem/protocol/MOESI_hammer-cache.sm b/src/mem/protocol/MOESI_hammer-cache.sm
index 546160b73..06c9ea76b 100644
--- a/src/mem/protocol/MOESI_hammer-cache.sm
+++ b/src/mem/protocol/MOESI_hammer-cache.sm
@@ -1532,8 +1532,8 @@ machine(L1Cache, "AMD Hammer-like protocol")
l_popForwardQueue;
}
- transition(MM, NC_DMA_GETS) {
- c_sendExclusiveData;
+ transition(MM, NC_DMA_GETS, O) {
+ ee_sendDataShared;
l_popForwardQueue;
}
@@ -1575,7 +1575,7 @@ machine(L1Cache, "AMD Hammer-like protocol")
l_popForwardQueue;
}
- transition(M, NC_DMA_GETS) {
+ transition(M, NC_DMA_GETS, O) {
ee_sendDataShared;
l_popForwardQueue;
}
@@ -1933,8 +1933,8 @@ machine(L1Cache, "AMD Hammer-like protocol")
l_popForwardQueue;
}
- transition(MM_F, NC_DMA_GETS) {
- ct_sendExclusiveDataFromTBE;
+ transition(MM_F, NC_DMA_GETS, OM_F) {
+ sq_sendSharedDataFromTBEToCache;
l_popForwardQueue;
}