Hello Victor,

pkt->headerDelay is the time until the metadata of the packet arrives, so that 
the access can start (e.g., tag lookup).
pkt->payloadDelay is the time until the packet's data arrives.
The max() formula means that the tag lookup is done while the payload arrives. 
If the data is present, but the tag lookup is not done yet, wait for it to end, 
and vice-versa.
filLatency is the time to fill/write to a block.

Regards,
Daniel
   Em sábado, 19 de outubro de 2019 00:13:37 GMT+2, Victor Kariofillis 
<[email protected]> escreveu:  
 
 Hi everyone,
I have one more question for the setWhenReady() function. I see that when it's 
called it is like that:
blk->setWhenReady(clockEdge(fillLatency) + pkt->headerDelay +
            std::max(cyclesToTicks(tag_latency), (uint64_t)pkt->payloadDelay));
I am trying to understand the different components that comprise the total time 
after which the block will be ready to be accessed. If my implementation means 
that there is stuff going on before the data is actually written, does that 
mean that it directly added the above formula? What is the significance of this 
part of the formula:
std::max(cyclesToTicks(tag_latency), (uint64_t)pkt->payloadDelay) 

Thanks,Victor
_______________________________________________
gem5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users  
_______________________________________________
gem5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Reply via email to