IP Library Granted Patent US 11,237,965
Granted Patent B2
US 11,237,965 · App. 14/588,325 · Granted Feb 1, 2022

Configurable snoop filters for cache coherent systems

Inventors: Craig Stephen Forrest (San Francisco, CA); David A. Kruckemyer (San Jose, CA)
Assignee: ARTERIS, INC.
G06F12/0828G06F2212/621Y02D10/00
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 11,237,965
App. No.
14/588,325
Granted
Feb 1, 2022
Kind
B2
Abstract

A cache coherent system includes a directory with more than one snoop filter, each of which stores information in a different set of snoop filter entries. Each snoop filter is associated with a subset of all caching agents within the system. Each snoop filter uses an algorithm chosen for best performance on the caching agents associated with the snoop filter. The number of snoop filter entries in each snoop filter is primarily chosen based on the caching capacity of just the caching agents associated with the snoop filter. The type of information stored in each snoop filter entry of each snoop filter is chosen to meet the desired filtering function of the specific snoop filter.

Claims (11)

1. A system comprising:

a directory including:

a first snoop filter having a plurality of entries; and

a second snoop filter having a plurality of entries;

a first plurality of coherent caching agents in communication with the directory, wherein the first plurality of coherent caching agents are associated with the plurality of entries in the first snoop filter to track entries actively in-use by the first plurality of coherent caching agents; and

a second plurality of coherent caching agents in communication with the directory, wherein the second plurality of coherent caching agents are associated with the plurality of entries in the second snoop filter to track entries actively in-use by the second plurality of coherent caching agents,

wherein each of the first snoop filter's plurality of entries includes a valid bit, a plurality of owner pointer bits, and a plurality of presence vector bits for each of the first plurality of coherent caching agents, and

wherein each of the second snoop filter's plurality of entries includes a presence vector and no valid bit and no owner pointer bits for each of the second plurality of coherent caching agents and each presence vector includes two bits that are logically ORed to determine validity for that presence vector.

2. The system of claim 1 wherein the first snoop filter uses a filtering algorithm and the second snoop filter does not use the filtering algorithm.

3. The system of claim 1 wherein the number of entries in the first snoop filter and the number of entries in the second snoop filter are different.

4. The system of claim 1 , wherein the first snoop filter's presence vector and the second snoop filter's presence vector are concatenated to produce an output list of caching agents to be snooped.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 29, 2015
From: FORREST, CRAIG STEPHEN; KRUCKEMYER, DAVID A
To: ARTERIS, INC.
Reel/Frame 034846/0562 →
Continuity (1)
Related Publication 20160188471A1 · Jun 30, 2016
Cited By (1)
US 12,536,103