dram_ctrl.cc (10713:eddb533708cb) dram_ctrl.cc (10721:3e6a3eaac71b)
1/*
2 * Copyright (c) 2010-2014 ARM Limited
3 * All rights reserved
4 *
5 * The license below extends only to copyright in the software and shall
6 * not be construed as granting a license to any other intellectual
7 * property including but not limited to intellectual property relating
8 * to a hardware implementation of the functionality of the software

--- 863 unchanged lines hidden (view full) ---

872 // do the actual memory access which also turns the packet into a
873 // response
874 access(pkt);
875
876 // turn packet around to go back to requester if response expected
877 if (needsResponse) {
878 // access already turned the packet into a response
879 assert(pkt->isResponse());
1/*
2 * Copyright (c) 2010-2014 ARM Limited
3 * All rights reserved
4 *
5 * The license below extends only to copyright in the software and shall
6 * not be construed as granting a license to any other intellectual
7 * property including but not limited to intellectual property relating
8 * to a hardware implementation of the functionality of the software

--- 863 unchanged lines hidden (view full) ---

872 // do the actual memory access which also turns the packet into a
873 // response
874 access(pkt);
875
876 // turn packet around to go back to requester if response expected
877 if (needsResponse) {
878 // access already turned the packet into a response
879 assert(pkt->isResponse());
880
881 // @todo someone should pay for this
880 // response_time consumes the static latency and is charged also
881 // with headerDelay that takes into account the delay provided by
882 // the xbar and also the payloadDelay that takes into account the
883 // number of data beats.
884 Tick response_time = curTick() + static_latency + pkt->headerDelay +
885 pkt->payloadDelay;
886 // Here we reset the timing of the packet before sending it out.
882 pkt->headerDelay = pkt->payloadDelay = 0;
883
884 // queue the packet in the response queue to be sent out after
885 // the static latency has passed
887 pkt->headerDelay = pkt->payloadDelay = 0;
888
889 // queue the packet in the response queue to be sent out after
890 // the static latency has passed
886 port.schedTimingResp(pkt, curTick() + static_latency);
891 port.schedTimingResp(pkt, response_time);
887 } else {
888 // @todo the packet is going to be deleted, and the DRAMPacket
889 // is still having a pointer to it
890 pendingDelete.push_back(pkt);
891 }
892
893 DPRINTF(DRAM, "Done\n");
894

--- 1387 unchanged lines hidden ---
892 } else {
893 // @todo the packet is going to be deleted, and the DRAMPacket
894 // is still having a pointer to it
895 pendingDelete.push_back(pkt);
896 }
897
898 DPRINTF(DRAM, "Done\n");
899

--- 1387 unchanged lines hidden ---