summaryrefslogtreecommitdiff
path: root/src/mem/slicc/symbols
diff options
context:
space:
mode:
authorLisa Hsu <Lisa.Hsu@amd.com>2011-09-01 11:41:44 -0700
committerLisa Hsu <Lisa.Hsu@amd.com>2011-09-01 11:41:44 -0700
commitae12ae30239a4d62bdb7e88f0d9f7be613fa1005 (patch)
treec94eca59c43aa6e8c0f91f094a4df7a66b1624c5 /src/mem/slicc/symbols
parentebda5c14a57d4c140e664b6f9c31dae9a94552aa (diff)
downloadgem5-ae12ae30239a4d62bdb7e88f0d9f7be613fa1005.tar.xz
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 system, without causing problems. Also, a small change to actually set the m_name field for each Controller so that debugging can be easier. Now you can access a controller's name just by controller->getName().
Diffstat (limited to 'src/mem/slicc/symbols')
-rw-r--r--src/mem/slicc/symbols/StateMachine.py1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/mem/slicc/symbols/StateMachine.py b/src/mem/slicc/symbols/StateMachine.py
index 42249ab7a..fbd090d49 100644
--- a/src/mem/slicc/symbols/StateMachine.py
+++ b/src/mem/slicc/symbols/StateMachine.py
@@ -456,6 +456,7 @@ $c_ident::$c_ident(const Params *p)
m_recycle_latency = p->recycle_latency;
m_number_of_TBEs = p->number_of_TBEs;
m_is_blocking = false;
+ m_name = "${ident}";
''')
#
# max_port_rank is used to size vectors and thus should be one plus the