IP Library Granted Patent US 6,925,537
Granted Patent B2
US 6,925,537 · App. 10/698,130 · Granted Aug 2, 2005

Multiprocessor cache coherence system and method in which processor nodes and input/output nodes are equal participants

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 6,925,537
App. No.
10/698,130
Granted
Aug 2, 2005
Kind
B2
Abstract

A computer system has a plurality of processor nodes and a plurality of input/output nodes. Each processor node includes a multiplicity of processor cores, an interface to a local memory system and a protocol engine implementing a predefined cache coherence protocol. Each processor core has an associated memory cache for caching memory lines of information. Each input/output node includes no processor cores, an input/output interface for interfacing to an input/output bus or input/output device, a memory cache for caching memory lines of information and an interface to a local memory subsystem. The local memory subsystem of each processor node and input/output node stores a multiplicity of memory lines of information. The protocol engine of each processor node and input/output node implements the same predefined cache coherence protocol.

Claims (18)

1. A computer system, comprising:

an interconnect;

a plurality of processor nodes, coupled to the interconnect, each processor node comprising at least one processor core, each processor core having an associated memory cache for caching memory lines of information;

a plurality of input/output nodes coupled to the interconnect; and

wherein the processor nodes and the input/output nodes collectively comprise a plurality of system nodes, each of which comprises

input logic that receives a first invalidation request, the invalidation request identifying a memory line of information and a patten of bits that identify a subset of the plurality of system nodes that potentially store cached copies of the identified memory line; and

processing circuitry that, responsive to receipt of the first invalidation request, determines a next node identified by the pattern of bits in the invalidation request and sends to the next node, if any, a second invalidation request corresponding to the first invalidation request, and that invalidates a cached copy of the identified memory line, if any, in the particular node of the computer system.

2. The system of claim 1 wherein the system is reconfigurable so as to include any ratio of processor nodes to input/output nodes so long as a total number of processor nodes and input/output nodes does not exceed a predefined maximum number of nodes.

3. The system of claim 1 wherein each processor node and input/output node further comprises a protocol engine implementing a predefined cache coherency protocol, wherein the protocol engine of each processor node is functionally identical to the protocol engine of each input/output node.

4. A computer system, comprising:

a plurality of multiprocessor nodes, each multiprocessor node comprising

a multiplicity of processor cores, each processor core having an associated memory cache for caching memory lines of information;

a plurality of input/output nodes coupled to the plurality of multiprocessor nodes; and

wherein the multiprocessor nodes and the input/output nodes collectively comprise a plurality of system nodes, each of which comprises

input logic that receives a first invalidation request, the invalidation request identifying a memory line of information and a pattern of bits for identifying a subset of the plurality of system nodes that potentially store cached copies of the identified memory line; and

processing circuitry that, responsive to receipt of the first invalidation request, determines a next node identified by the pattern of bits in the invalidation request and for sending to the next node, if any, a second invalidation request corresponding to the first invalidation request, and that invalidates a cached copy of the identified memory line, if any, in the particular node of the computer system.

5. The system of claim 4 wherein the system is reconfigurable so as to include any ratio of multiprocessor nodes to input/output nodes so long as a total number of multiprocessor nodes and input/output nodes does not exceed a predefined maximum number of nodes.

6. The system of claim 4 wherein each multiprocessor node and input/output node further comprises a protocol engine implementing a predefined cache coherency protocol, wherein the protocol engine of each multiprocessor node is functionally identical to the protocol engine of each input/output node.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 2, 2017
From: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
To: SK HYNIX INC.
Reel/Frame 042671/0448 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 9, 2015
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 037079/0001 →