Javier Cano-Cano has uploaded a new patch set (#3). ( https://gem5-review.googlesource.com/2380 )

Change subject: ruby: Fix MOESI_CMP_directory for new DMA status changes.
......................................................................

ruby: Fix MOESI_CMP_directory for new DMA status changes.

Multiple outstanding DMA requests introduced new DMA states that didn't
be considered into slicc code. This patch implements the missed DMA state
changes on MOESI_CMP_directory protocol.

Change-Id: I700d441d76556b7e77e0d507904af6ec6ba59cc2
Signed-off-by: Michael LeBeane <michael.lebe...@amd.com>
---
M src/mem/protocol/MOESI_CMP_directory-dma.sm
1 file changed, 15 insertions(+), 0 deletions(-)




diff --git a/src/mem/protocol/MOESI_CMP_directory-dma.sm b/src/mem/protocol/MOESI_CMP_directory-dma.sm
index ccc7f87..b9da0d0 100644
--- a/src/mem/protocol/MOESI_CMP_directory-dma.sm
+++ b/src/mem/protocol/MOESI_CMP_directory-dma.sm
@@ -77,6 +77,7 @@
   Tick clockEdge();
   void set_tbe(TBE b);
   void unset_tbe();
+  void wakeUpAllBuffers();

   State getState(TBE tbe, Addr addr) {
     return cur_state;
@@ -249,6 +250,13 @@
     unset_tbe();
   }

+  action(zz_stallAndWaitRequestQueue, "zz", desc="...") {
+    stall_and_wait(dmaRequestQueue_in, address);
+  }
+
+  action(wkad_wakeUpAllDependents, "wkad", desc="wake-up all dependents") {
+    wakeUpAllBuffers();
+  }

   transition(READY, ReadRequest, BUSY_RD) {
     s_sendReadRequest;
@@ -269,6 +277,7 @@
     //u_updateAckCount;
     //o_checkForCompletion;
     p_popResponseQueue;
+    wkad_wakeUpAllDependents;
   }

   transition(BUSY_RD, All_Acks, READY) {
@@ -276,6 +285,7 @@
     //u_sendExclusiveUnblockToDir;
     w_deallocateTBE;
     p_popTriggerQueue;
+    wkad_wakeUpAllDependents;
   }

   transition(READY, WriteRequest, BUSY_WR) {
@@ -301,5 +311,10 @@
     u_sendExclusiveUnblockToDir;
     w_deallocateTBE;
     p_popTriggerQueue;
+    wkad_wakeUpAllDependents;
+  }
+
+  transition({BUSY_RD,BUSY_WR}, {ReadRequest,WriteRequest}) {
+    zz_stallAndWaitRequestQueue;
   }
 }

--
To view, visit https://gem5-review.googlesource.com/2380
To unsubscribe, visit https://gem5-review.googlesource.com/settings

Gerrit-Project: public/gem5
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I700d441d76556b7e77e0d507904af6ec6ba59cc2
Gerrit-Change-Number: 2380
Gerrit-PatchSet: 3
Gerrit-Owner: Javier Cano-Cano <javier.cano...@gmail.com>
Gerrit-Reviewer: Javier Cano-Cano <javier.cano...@gmail.com>
Gerrit-CC: Jason Lowe-Power <ja...@lowepower.com>
_______________________________________________
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to