发明名称 Update mask for handling interaction between fills and updates
摘要 A multi core processor implements a cash coherency protocol in which probe messages are address-ordered on a probe channel while responses are un-ordered on a response channel. When a first core generates a read of an address that misses in the first core's cache, a line fill is initiated. If a second core is writing the same address, the second core generates an update on the addressed ordered probe channel. The second core's update may arrive before or after the first core's line fill returns. If the update arrived before the fill returned, a mask is maintained to indicate which portions of the line were modified by the update so that the late arriving line fill only modifies portions of the line that were unaffected by the earlier-arriving update.
申请公布号 US9251073(B2) 申请公布日期 2016.02.02
申请号 US201213732242 申请日期 2012.12.31
申请人 Intel Corporation 发明人 Steely Simon C.;Hasenplaugh William C.
分类号 G06F12/00;G06F12/08 主分类号 G06F12/00
代理机构 Trop, Pruner & Hu, P.C. 代理人 Trop, Pruner & Hu, P.C.
主权项 1. A method comprising: responsive to detecting a read request referencing a specific memory address from a first entity that misses in a core cache of the first entity: sending an order-marker corresponding to the read request to the first entity on a first channel;sending a fill corresponding to the read request to the first entity on a second channel; and responsive to detecting an update request from a second entity, ordered after the read request, referencing the specific memory address, the update request received in a second level tag directory of a multi-level tag directory hierarchy via a first level tag directory of the multi-level tag directory hierarchy: sending, from the second level tag directory, a second order-marker to the second entity, via the first level tag directory;sending update data packets on the first channel to all non-last accessor entities having copies of the specific memory address;sending, from the second level tag directory, a probe update data packet on the first channel to a last accessor entity if the last accessor entity is different than the second entity and changing a last accessor state of an entry of the second level tag directory to point to the second entity; andsending an update acknowledgement (upd_ack) to the second entity.
地址 Santa Clara CA US