mem-ruby: Fix missing TBE allocation and deallocation
authorZicong Wang <wangzicong@nudt.edu.cn>
Sun, 13 Jan 2019 09:46:29 +0000 (17:46 +0800)
committerZicong Wang <wangzicong@nudt.edu.cn>
Wed, 23 Jan 2019 00:31:11 +0000 (00:31 +0000)
The TBE allocation and deallcation are currently missing during
the directory state transition from I to M in protocol MI_example.

Change-Id: If7569c02faf56ea84c34ee1345f1a33d318cdfff
Signed-off-by: Zicong Wang <wangzicong@nudt.edu.cn>
Reviewed-on: https://gem5-review.googlesource.com/c/15535
Reviewed-by: Pouya Fotouhi <pfotouhi@ucdavis.edu>
Maintainer: Jason Lowe-Power <jason@lowepower.com>

src/mem/protocol/MI_example-dir.sm

index e2d834201f31526f07aa9dbf5f41545e58880fc9..e9f6521525c6fc50f6406c0ef5682406a69485e6 100644 (file)
@@ -498,6 +498,7 @@ machine(MachineType:Directory, "Directory protocol")
 
   transition(I, GETX, IM) {
     //d_sendData;
+    v_allocateTBEFromRequestNet;
     qf_queueMemoryFetchRequest;
     e_ownerIsRequestor;
     i_popIncomingRequestQueue;
@@ -506,6 +507,7 @@ machine(MachineType:Directory, "Directory protocol")
   transition(IM, Memory_Data, M) {
     d_sendData;
     //e_ownerIsRequestor;
+    w_deallocateTBE;
     l_popMemQueue;
   }