| 
Hi all,
I had a question regarding the latency that the directory protocols 
assume for looking up on-chip sharers. For instance, while sending out 
invalidates to all L1  shares on a GETX event, the latency assumed is 
L2_REQUEST_LATENCY which is of the order of 4 cycles. Since this 
invalidation request requires a sharer list lookup, shouldn't this 
latency be more ? Something like DIRECTORY_LATENCY which is of the order 
of 80 cycles ? 
action(tt_issueSharedInvalidateIntL1copiesRequest, "\t", 
desc="invalidate all L1 S copies") {
   enqueue(L1RequestIntraChipL2Network_out, RequestMsg, 
latency="L2_REQUEST_LATENCY") { 
     out_msg.Address := address;
     out_msg.Type := CoherenceRequestType:INV_S;
     out_msg.RequestorMachId := machineID;
     out_msg.Destination := L2cacheMemory[address].Sharers;
     out_msg.MessageSize := MessageSizeType:Control;
   }
 }
Cheers,
Niket
 |