timing.cc (4928:951bd17db218) timing.cc (4986:b7c82ad6b3ef)
1/*
2 * Copyright (c) 2002-2005 The Regents of The University of Michigan
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

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

559TimingSimpleCPU::IcachePort::ITickEvent::process()
560{
561 cpu->completeIfetch(pkt);
562}
563
564bool
565TimingSimpleCPU::IcachePort::recvTiming(PacketPtr pkt)
566{
1/*
2 * Copyright (c) 2002-2005 The Regents of The University of Michigan
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

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

559TimingSimpleCPU::IcachePort::ITickEvent::process()
560{
561 cpu->completeIfetch(pkt);
562}
563
564bool
565TimingSimpleCPU::IcachePort::recvTiming(PacketPtr pkt)
566{
567 if (pkt->isResponse()) {
567 if (pkt->isResponse() && !pkt->wasNacked()) {
568 // delay processing of returned data until next CPU clock edge
569 Tick next_tick = cpu->nextCycle(curTick);
570
571 if (next_tick == curTick)
572 cpu->completeIfetch(pkt);
573 else
574 tickEvent.schedule(pkt, next_tick);
575

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

653 // Ports)
654 cpu->tcBase()->connectMemPorts();
655#endif
656}
657
658bool
659TimingSimpleCPU::DcachePort::recvTiming(PacketPtr pkt)
660{
568 // delay processing of returned data until next CPU clock edge
569 Tick next_tick = cpu->nextCycle(curTick);
570
571 if (next_tick == curTick)
572 cpu->completeIfetch(pkt);
573 else
574 tickEvent.schedule(pkt, next_tick);
575

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

653 // Ports)
654 cpu->tcBase()->connectMemPorts();
655#endif
656}
657
658bool
659TimingSimpleCPU::DcachePort::recvTiming(PacketPtr pkt)
660{
661 if (pkt->isResponse()) {
661 if (pkt->isResponse() && !pkt->wasNacked()) {
662 // delay processing of returned data until next CPU clock edge
663 Tick next_tick = cpu->nextCycle(curTick);
664
665 if (next_tick == curTick)
666 cpu->completeDataAccess(pkt);
667 else
668 tickEvent.schedule(pkt, next_tick);
669

--- 76 unchanged lines hidden ---
662 // delay processing of returned data until next CPU clock edge
663 Tick next_tick = cpu->nextCycle(curTick);
664
665 if (next_tick == curTick)
666 cpu->completeDataAccess(pkt);
667 else
668 tickEvent.schedule(pkt, next_tick);
669

--- 76 unchanged lines hidden ---