diff options
author | Marco Balboni <Marco.Balboni@ARM.com> | 2015-02-11 10:23:47 -0500 |
---|---|---|
committer | Marco Balboni <Marco.Balboni@ARM.com> | 2015-02-11 10:23:47 -0500 |
commit | 268d9e59c5e69a00456a40c837b0150a8f3f6bf8 (patch) | |
tree | abb89f1dcd542109c163b76fb632ee8e5444ab18 /src/dev | |
parent | e2828587b3f28c4f37f0fe598209290bc3d41de0 (diff) | |
download | gem5-268d9e59c5e69a00456a40c837b0150a8f3f6bf8.tar.xz |
mem: Clarification of packet crossbar timings
This patch clarifies the packet timings annotated
when going through a crossbar.
The old 'firstWordDelay' is replaced by 'headerDelay' that represents
the delay associated to the delivery of the header of the packet.
The old 'lastWordDelay' is replaced by 'payloadDelay' that represents
the delay needed to processing the payload of the packet.
For now the uses and values remain identical. However, going forward
the payloadDelay will be additive, and not include the
headerDelay. Follow-on patches will make the headerDelay capture the
pipeline latency incurred in the crossbar, whereas the payloadDelay
will capture the additional serialisation delay.
Diffstat (limited to 'src/dev')
-rw-r--r-- | src/dev/io_device.cc | 2 | ||||
-rw-r--r-- | src/dev/pcidev.cc | 2 | ||||
-rw-r--r-- | src/dev/x86/intdev.hh | 2 |
3 files changed, 3 insertions, 3 deletions
diff --git a/src/dev/io_device.cc b/src/dev/io_device.cc index a536e2973..c25a28dd2 100644 --- a/src/dev/io_device.cc +++ b/src/dev/io_device.cc @@ -55,7 +55,7 @@ Tick PioPort::recvAtomic(PacketPtr pkt) { // @todo: We need to pay for this and not just zero it out - pkt->firstWordDelay = pkt->lastWordDelay = 0; + pkt->headerDelay = pkt->payloadDelay = 0; const Tick delay(pkt->isRead() ? device->read(pkt) : device->write(pkt)); assert(pkt->isResponse() || pkt->isError()); diff --git a/src/dev/pcidev.cc b/src/dev/pcidev.cc index 715b67603..40be9716d 100644 --- a/src/dev/pcidev.cc +++ b/src/dev/pcidev.cc @@ -80,7 +80,7 @@ PciDevice::PciConfigPort::recvAtomic(PacketPtr pkt) assert(pkt->getAddr() >= configAddr && pkt->getAddr() < configAddr + PCI_CONFIG_SIZE); // @todo someone should pay for this - pkt->firstWordDelay = pkt->lastWordDelay = 0; + pkt->headerDelay = pkt->payloadDelay = 0; return pkt->isRead() ? device->readConfig(pkt) : device->writeConfig(pkt); } diff --git a/src/dev/x86/intdev.hh b/src/dev/x86/intdev.hh index 294a2b887..d63e64010 100644 --- a/src/dev/x86/intdev.hh +++ b/src/dev/x86/intdev.hh @@ -82,7 +82,7 @@ class IntDevice Tick recvMessage(PacketPtr pkt) { // @todo someone should pay for this - pkt->firstWordDelay = pkt->lastWordDelay = 0; + pkt->headerDelay = pkt->payloadDelay = 0; return device->recvMessage(pkt); } }; |