IP Library Granted Patent US 7,386,682
Granted Patent B2
US 7,386,682 · App. 11/056,764 · Granted Jun 10, 2008

Reducing number of rejected snoop requests by extending time to respond to snoop request

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,386,682
App. No.
11/056,764
Granted
Jun 10, 2008
Kind
B2
Abstract

A cache, system and method for reducing the number of rejected snoop requests. An incoming snoop request is entered in the first available latch in a pipeline of latches in a stall/reorder unit if the stall/reorder unit is not full. The entered snoop request is dispatched to a selector upon entering a bottom latch in the pipeline. The stall/reorder unit is not informed as to whether the dispatched snoop request is accepted by an arbitration mechanism for several clock cycles after the dispatch occurred. A copy of the dispatched snoop request is stored in a top latch in an overrun pipeline of latches in the first unit upon dispatching the snoop request. By maintaining information about the snoop request, the snoop request may be dispatched again to the selector in case the dispatched snoop request was rejected thereby increasing the chance that the snoop request will ultimately be accepted.

Claims (18)

1. A method for reducing the number of snoop requests rejected comprising the steps of:

receiving a new snoop request;

entering said new snoop request in a first available latch in a pipeline of latches in a first unit when said first unit is not full;

dispatching said new snoop request upon entering a bottom latch in said pipeline in said first unit; and

storing a copy of said new snoop request in a top latch of an overrun pipeline of latches in said first unit upon dispatching said new snoop request;

wherein an indication as to whether said new snoop request was accepted or rejected by an arbitration mechanism is received by a control unit in said first unit upon said copy of said new snoop request reaching a bottom latch in said overrun pipeline in said first unit.

2. The method as recited in claim 1 further comprising the step of:

reissuing said new snoop request using said copy of said new snoop request stored in said bottom latch in said overrun pipeline in said first unit when said arbitration mechanism indicated that said new snoop request was rejected.

3. The method as recited in claim 1 further comprising the step of:

clearing a flag for a first snoop request residing in said top latch in said overrun pipeline of said first unit when a second snoop request residing in said bottom latch in said pipeline of said first unit is a repeat, wherein said flag is used to indicate whether said first snoop request will be represented in said bottom latch in said pipeline of said first unit.

4. The method as recited in claim 1 further comprising the step of:

setting said pipeline in said first unit to perform a hold operation in a next clock cycle when a flag used to indicate whether a snoop request will be represented in said bottom latch in said pipeline of said first unit is active for a snoop request residing in said bottom latch in said overrun pipeline in said first unit and is not accepted by said arbitration mechanism.

5. The method as recited in claim 1 further comprising the step of:

setting said pipeline in said first unit to perform a shift-down operation in a next clock cycle when there is a snoop request stored in a latch preceding said bottom latch in said pipeline in said first unit.

6. The method as recited in claim 1 further comprising the step of:

setting said pipeline in said first unit to perform a shift-down operation in a next clock cycle when there is a snoop request stored in said bottom latch in said pipeline in said first unit and said snoop request has resided in said first unit n clock cycles.

7. The method as recited in claim 1 further comprising the step of:

setting said pipeline in said first unit to perform a shift-down operation in a next clock cycle when a first snoop request stored in said bottom latch in said pipeline of said first unit is an unbroken repeat of a second snoop request stored in said bottom latch in said overrun pipeline of said first unit and said second snoop request is accepted by said arbitration mechanism.

Assignments (1)
CHANGE OF NAME Recorded Dec 20, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058553/0802 →