Patent ID: 7818511
Filing Date: 2010-10-19
Classification: G06F

Abstract:
1. A cache, comprising: a selector coupled to a stall/reorder unit and a processor, wherein the selector receives a snoop request from an interconnect via the stall/reorder unit and a request from the processor; an arbitration mechanism coupled to the selector, wherein the arbitration mechanism selects one of either the request from the processor or the snoop request from the stall/reorder unit prior to dispatching the request from the processor or the snoop request from the stall/reorder unit a dispatch pipeline; and responsive to the arbitration mechanism selecting the request from the processor for dispatching to the dispatch pipeline and denying the dispatch of the snoop request from the stall/reorder unit thereby forming a denied snoop request, the stall/reorder unit: maintains storage of information about the denied snoop request in a queue associated with the stall/reorder unit for up to a maximum number of n clock cycles thereby expanding a time to respond to the denied snoop request, responsive to the denied snoop request being stored in the stall/reorder unit for a predetermined number of the n clock cycles, forwards, on each clock cycle up to the maximum number of the n clock cycles, the denied snoop request to the selector, wherein the predetermined number of the n clock cycles is less than the maximum number of the n clock cycles, responsive to the denied snoop request being stored in the stall/reorder unit for the maximum number of the n clock cycles, sends the denied snoop request to a realignment unit coupled to the stall/reorder unit via a bypass line indicating the information about the denied snoop request has been stored in the stall/reorder unit for the maximum number of the n clock cycles, wherein the bypass line bypasses the dispatch pipeline, and removes information about the denied snoop request from the queue upon either a successful dispatch of the denied snoop request to the dispatch pipeline by the arbitration mechanism, thereby forming a dispatched snoop request, or a successful send of the denied snoop request to the realignment unit.