timing.cc (4471:4d86c4d096ad) | timing.cc (4584:81a11c930f2d) |
---|---|
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; --- 546 unchanged lines hidden (view full) --- 555 cpu->completeIfetch(pkt); 556} 557 558bool 559TimingSimpleCPU::IcachePort::recvTiming(PacketPtr pkt) 560{ 561 if (pkt->isResponse()) { 562 // delay processing of returned data until next CPU clock edge | 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; --- 546 unchanged lines hidden (view full) --- 555 cpu->completeIfetch(pkt); 556} 557 558bool 559TimingSimpleCPU::IcachePort::recvTiming(PacketPtr pkt) 560{ 561 if (pkt->isResponse()) { 562 // delay processing of returned data until next CPU clock edge |
563 Tick mem_time = pkt->req->getTime(); 564 Tick next_tick = cpu->nextCycle(mem_time); | 563 Tick next_tick = cpu->nextCycle(curTick); |
565 566 if (next_tick == curTick) 567 cpu->completeIfetch(pkt); 568 else 569 tickEvent.schedule(pkt, next_tick); 570 571 return true; 572 } --- 77 unchanged lines hidden (view full) --- 650#endif 651} 652 653bool 654TimingSimpleCPU::DcachePort::recvTiming(PacketPtr pkt) 655{ 656 if (pkt->isResponse()) { 657 // delay processing of returned data until next CPU clock edge | 564 565 if (next_tick == curTick) 566 cpu->completeIfetch(pkt); 567 else 568 tickEvent.schedule(pkt, next_tick); 569 570 return true; 571 } --- 77 unchanged lines hidden (view full) --- 649#endif 650} 651 652bool 653TimingSimpleCPU::DcachePort::recvTiming(PacketPtr pkt) 654{ 655 if (pkt->isResponse()) { 656 // delay processing of returned data until next CPU clock edge |
658 Tick mem_time = pkt->req->getTime(); 659 Tick next_tick = cpu->nextCycle(mem_time); | 657 Tick next_tick = cpu->nextCycle(curTick); |
660 661 if (next_tick == curTick) 662 cpu->completeDataAccess(pkt); 663 else 664 tickEvent.schedule(pkt, next_tick); 665 666 return true; 667 } --- 142 unchanged lines hidden --- | 658 659 if (next_tick == curTick) 660 cpu->completeDataAccess(pkt); 661 else 662 tickEvent.schedule(pkt, next_tick); 663 664 return true; 665 } --- 142 unchanged lines hidden --- |