mem: Hit callback delay fix

This patch was created by Bihn Pham during his internship at AMD.

There is no need to delay hit callback response messages by a cycle because
the response latency is already incurred in the Ruby protocol. This ensures
correct timing of memory instructions.
This commit is contained in:
David Hashe 2015-07-20 09:15:18 -05:00
parent 8f71e667b3
commit 3444d5f359

View file

@ -469,8 +469,10 @@ RubyPort::MemSlavePort::hitCallback(PacketPtr pkt)
// turn packet around to go back to requester if response expected
if (needsResponse) {
DPRINTF(RubyPort, "Sending packet back over port\n");
// send next cycle
schedTimingResp(pkt, curTick() + rs->clockPeriod());
// Send a response in the same cycle. There is no need to delay the
// response because the response latency is already incurred in the
// Ruby protocol.
schedTimingResp(pkt, curTick());
} else {
delete pkt;
}