ruby: dbg: use system ticks instead of cycles
authorKorey Sewell <ksewell@umich.edu>
Mon, 2 May 2011 04:16:14 +0000 (00:16 -0400)
committerKorey Sewell <ksewell@umich.edu>
Mon, 2 May 2011 04:16:14 +0000 (00:16 -0400)
src/mem/ruby/buffers/MessageBuffer.cc
src/mem/ruby/network/simple/PerfectSwitch.cc
src/mem/ruby/system/Sequencer.cc
src/mem/slicc/symbols/StateMachine.py
src/mem/slicc/symbols/Type.py

index e5df19cabf6bd5d2a77b63a4dd7cf8d62d318301..9bb166e0594d8b04fd86c13fe3cdd1c30d0c75ca 100644 (file)
@@ -126,8 +126,7 @@ MessageBuffer::getMsgPtrCopy() const
 const Message*
 MessageBuffer::peekAtHeadOfQueue() const
 {
-    DPRINTF(RubyQueue, "Peeking at head of queue time: %lld\n",
-            g_eventQueue_ptr->getTime());
+    DPRINTF(RubyQueue, "Peeking at head of queue.\n");
     assert(isReady());
 
     const Message* msg_ptr = m_prio_heap.front().m_msgptr.get();
@@ -196,8 +195,11 @@ MessageBuffer::enqueue(MsgPtr message, Time delta)
         if (arrival_time < m_last_arrival_time) {
             panic("FIFO ordering violated: %s name: %s current time: %d "
                   "delta: %d arrival_time: %d last arrival_time: %d\n",
-                  *this, m_name, current_time, delta, arrival_time,
-                  m_last_arrival_time);
+                  *this, m_name,
+                  current_time * g_eventQueue_ptr->getClock(),
+                  delta * g_eventQueue_ptr->getClock(),
+                  arrival_time * g_eventQueue_ptr->getClock(),
+                  m_last_arrival_time * g_eventQueue_ptr->getClock());
         }
     }
     m_last_arrival_time = arrival_time;
@@ -220,8 +222,8 @@ MessageBuffer::enqueue(MsgPtr message, Time delta)
     push_heap(m_prio_heap.begin(), m_prio_heap.end(),
         greater<MessageBufferNode>());
 
-    DPRINTF(RubyQueue, "Enqueue with arrival_time %lld (cur_time: %lld).\n",
-            arrival_time, g_eventQueue_ptr->getTime());
+    DPRINTF(RubyQueue, "Enqueue with arrival_time %lld.\n",
+            arrival_time * g_eventQueue_ptr->getClock());
     DPRINTF(RubyQueue, "Enqueue Message: %s.\n", (*(message.get())));
 
     // Schedule the wakeup
index a054cee89ee232326897716bd096c36f09d506eb..3c35be217107bc54e5c88209558199c4149b3346 100644 (file)
@@ -302,9 +302,8 @@ PerfectSwitch::wakeup()
 
                         // Enqeue msg
                         DPRINTF(RubyNetwork, "Enqueuing net msg from "
-                                "inport[%d][%d] to outport [%d][%d] time: %lld.\n",
-                                incoming, vnet, outgoing, vnet,
-                                g_eventQueue_ptr->getTime());
+                                "inport[%d][%d] to outport [%d][%d].\n",
+                                incoming, vnet, outgoing, vnet);
 
                         m_out[outgoing][vnet]->enqueue(msg_ptr);
                     }
index e260ce865b618b0ba16d77d3ec7de426b956b8e4..1b46e680d4a0a12e8a64f4b9e11adffae8ef1192 100644 (file)
@@ -500,10 +500,10 @@ Sequencer::hitCallback(SequencerRequest* srequest,
                                                    g_eventQueue_ptr->getTime());
         }
 
-        DPRINTFR(ProtocolTrace, "%7s %3s %10s%20s %6s>%-6s %s %d cycles\n",
-            g_eventQueue_ptr->getTime(), m_version, "Seq",
-            success ? "Done" : "SC_Failed", "", "",
-            ruby_request.m_PhysicalAddress, miss_latency);
+        DPRINTFR(ProtocolTrace, "%15s %3s %10s%20s %6s>%-6s %s %d cycles\n",
+                 curTick(), m_version, "Seq",
+                 success ? "Done" : "SC_Failed", "", "",
+                 ruby_request.m_PhysicalAddress, miss_latency);
     }
 #if 0
     if (request.getPrefetch() == PrefetchBit_Yes) {
@@ -685,9 +685,9 @@ Sequencer::issueRequest(const RubyRequest& request)
                                        ctype, amtype, request.pkt,
                                        PrefetchBit_No, proc_id);
 
-    DPRINTFR(ProtocolTrace, "%7s %3s %10s%20s %6s>%-6s %s %s\n",
-        g_eventQueue_ptr->getTime(), m_version, "Seq", "Begin", "", "",
-        request.m_PhysicalAddress, RubyRequestType_to_string(request.m_Type));
+    DPRINTFR(ProtocolTrace, "%15s %3s %10s%20s %6s>%-6s %s %s\n",
+            curTick(), m_version, "Seq", "Begin", "", "",
+            request.m_PhysicalAddress, RubyRequestType_to_string(request.m_Type));
 
     Time latency = 0;  // initialzed to an null value
 
index b1b185ca265181ff157504f70c1322becf685236..116371e70c676ce07027066ac989ae774d57a278 100644 (file)
@@ -1104,12 +1104,12 @@ ${ident}_Controller::doTransition(${ident}_Event event,
         DPRINTF(RubyGenerated, "next_state: %s\\n",
                 ${ident}_State_to_string(next_state));
         m_profiler.countTransition(state, event);
-        DPRINTFR(ProtocolTrace, "%7d %3s %10s%20s %6s>%-6s %s %s\\n",
-            g_eventQueue_ptr->getTime(), m_version, "${ident}",
-            ${ident}_Event_to_string(event),
-            ${ident}_State_to_string(state),
-            ${ident}_State_to_string(next_state),
-            addr, GET_TRANSITION_COMMENT());
+        DPRINTFR(ProtocolTrace, "%15d %3s %10s%20s %6s>%-6s %s %s\\n",
+                 curTick(), m_version, "${ident}",
+                 ${ident}_Event_to_string(event),
+                 ${ident}_State_to_string(state),
+                 ${ident}_State_to_string(next_state),
+                 addr, GET_TRANSITION_COMMENT());
 
         CLEAR_TRANSITION_COMMENT();
 ''')
@@ -1126,20 +1126,20 @@ ${ident}_Controller::doTransition(${ident}_Event event,
 
         code('''
     } else if (result == TransitionResult_ResourceStall) {
-        DPRINTFR(ProtocolTrace, "%7s %3s %10s%20s %6s>%-6s %s %s\\n",
-            g_eventQueue_ptr->getTime(), m_version, "${ident}",
-            ${ident}_Event_to_string(event),
-            ${ident}_State_to_string(state),
-            ${ident}_State_to_string(next_state),
-            addr, "Resource Stall");
+        DPRINTFR(ProtocolTrace, "%15s %3s %10s%20s %6s>%-6s %s %s\\n",
+                 curTick(), m_version, "${ident}",
+                 ${ident}_Event_to_string(event),
+                 ${ident}_State_to_string(state),
+                 ${ident}_State_to_string(next_state),
+                 addr, "Resource Stall");
     } else if (result == TransitionResult_ProtocolStall) {
         DPRINTF(RubyGenerated, "stalling\\n");
-        DPRINTFR(ProtocolTrace, "%7s %3s %10s%20s %6s>%-6s %s %s\\n",
-            g_eventQueue_ptr->getTime(), m_version, "${ident}",
-            ${ident}_Event_to_string(event),
-            ${ident}_State_to_string(state),
-            ${ident}_State_to_string(next_state),
-            addr, "Protocol Stall");
+        DPRINTFR(ProtocolTrace, "%15s %3s %10s%20s %6s>%-6s %s %s\\n",
+                 curTick(), m_version, "${ident}",
+                 ${ident}_Event_to_string(event),
+                 ${ident}_State_to_string(state),
+                 ${ident}_State_to_string(next_state),
+                 addr, "Protocol Stall");
     }
 
     return result;
index 9aea286d79ea3e84d909f2d79be5cdce7df45057..b41ecc00f827370c637cb0a69006d95f115588bc 100644 (file)
@@ -415,7 +415,7 @@ ${{self.c_ident}}::print(ostream& out) const
             code('out << "${{dm.ident}} = " << m_${{dm.ident}} << " ";''')
 
         if self.isMessage:
-            code('out << "Time = " << getTime() << " ";')
+            code('out << "Time = " << getTime() * g_eventQueue_ptr->getClock() << " ";')
         code.dedent()
 
         # Trailer