IP Library Granted Patent US 6,981,101
Granted Patent B1
US 6,981,101 · App. 09/910,531 · Granted Dec 27, 2005

Method and system for maintaining data at input/output (I/O) interfaces for a multiprocessor system

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,981,101
App. No.
09/910,531
Granted
Dec 27, 2005
Kind
B1
Abstract

A multiprocessor system and method includes a processing sub-system having a plurality of processors and a processor memory system. A scalable network is operable to couple the processing sub-system to an input/output (I/O) sub-system. The I/O sub-system includes a plurality of I/O interfaces. Each I/O interface has a local cache and is operable to couple a peripheral device to the multiprocessor system and to store copies of data from the processor memory system in the local cache for use by the peripheral device. A coherence domain for the multiprocessor system includes the processors and processor memory system of the processing sub-system and the local caches of the I/O sub-system.

Claims (49)

1. A multiprocessor system, comprising:

a processing sub-system including a plurality of processors and a processor memory system;

a scalable network operable to couple the processing sub-system to an input/output (I/O) sub-system;

the I/O sub-system including a plurality of I/O interfaces;

the I/O interfaces each operable to couple a peripheral device to the multiprocessor system and to store copies of data from the processor memory system in the local cache for use by the peripheral device; and

a coherence domain comprising the processors and processor memory system of the processing sub-system and the local caches of the I/O sub-system, the local caches of the I/O subsystem operable to participate in the coherence domain through timed access to data in the processor memory system;

wherein the I/O subsystem is operable to invalidate data upon expiration of a time interval and the processor memory system is operable to identify the data as free upon expiration of the time interval without sending any invalidation messages.

2. The multiprocessor system of claim 1 , wherein at least one of the I/O interfaces comprises a Peripheral Component Interconnect (PCI) interface.

3. The multiprocessor system of claim 1 , wherein the scalable network comprises a plurality of routers.

4. The multiprocessor system of claim 1 , the processor memory system comprising a plurality of discrete processor memories.

5. The multiprocessor system of claim 4 , wherein the discrete processor memories are each dedicated to a processor.

6. The multiprocessor system of claim 1 , the processor memory system including a directory operable to identify data cached in an I/O interface.

7. The multiprocessor system of claim 6 , the processor memory system operable to invalidate a copy of data stored in a local cache of an I/O interface in response to a request for the data by a processor.

8. The multiprocessor system of claim 1 , the I/O interfaces each operable to pre-fetch data from the processor memory and to store the data in the local cache for use by a corresponding peripheral device.

9. A method for maintaining data at input/output (I/O) interfaces of a multiprocessor system, comprising:

coupling a plurality of processors to a processor memory system;

coupling a plurality of I/O interfaces to the processor memory;

coupling a peripheral device to each I/O interface;

caching copies of data in the processor memory system in the I/O interfaces for use by the peripheral devices; and

maintaining coherence between the copies of data in the I/O interfaces and data in the processor memory system, the I/O interfaces operable to participate in coherence through timed access to the data in the processor memory system;

invalidating the data at the I/O interfaces upon expiration of a time interval;

identifying the data as free in the processor memory system upon expiration of the time interval, invalidating and identifying the data being performed without sending any invalidation messages.

10. The method of claim 9 , wherein at least one of the I/O interfaces comprises a Peripheral Component Interconnect (PCI) interface.

11. The method of claim 9 , further comprising coupling the I/O interfaces to the processor memory system through a scalable network.

12. The method of claim 9 , further comprising coupling the I/O interfaces to the processor memory system through a scalable network comprising a plurality of routers.

13. The method of claim 9 , wherein the processor memory system comprises a plurality of discrete processor memories.

14. The method of claim 13 , wherein each discrete processor memory is dedicated to a processor.

15. The method of claim 9 , further comprising identifying in the processor memory system data having a copy cached in the I/O interfaces.

16. The method of claim 15 , further comprising:

invalidating a copy of data cached in an I/O interface in response to a request by a processor for the data; and

releasing the data to the processor after invalidation of the copy in the I/O interface.

17. The method of claim 9 , further comprising:

pre-fetching data from the processor memory system; and

caching the data in an I/O interface for use by a corresponding peripheral device.

18. An input/output (I/O) interface, comprising:

a peripheral communications port;

a local cache operable to store copies of data from a processor memory coupled to the I/O interface; and

a resource manager operable to invalidate outdated data from the local cache to maintain coherence with the processor memory without receiving an invalidation message.

19. The I/O interface of claim 18 , wherein the interface is a Peripheral Component Interconnect (PCI) interface.

20. The I/O interface of claim 18 , the resource manager further operable to invalidate copies of data from the local cache in response to instructions from the processor memory.

21. The I/O interface of claim 18 , wherein a copy of data is outdated upon expiration of a time period for storage of the copy.

22. A method for interfacing a peripheral device with a multiprocessor system, comprising:

storing copies of data in a processor memory system of the multiprocessor system in a local I/O memory at an interface for the peripheral device; and

maintaining coherence between data in the processor memory system and copies of data in the local I/O memory, the local I/O memory operable to participate in coherence through timed access to the data in the processor memory system;

invalidating the data at the I/O interfaces upon expiration of a time interval;

identifying the data as free in the processor memory system upon expiration of the time interval, invalidating and identifying the data being performed without sending any invalidation messages.

23. The method of claim 22 , further comprising maintaining coherence between data in the processor memory system and copies of data in the local I/O memory by at least removing outdated copies of data from the local I/O memory.

24. The method of claim 22 , further comprising maintaining coherence between data in the processor memory system and copies of data in the local I/O memory by at least removing copies of data from the local I/O memory in response to instructions from the processor memory system.

25. The method of claim 23 , wherein a copy of data is outdated upon expiration of a time period for storage of the copy.

Assignments (13)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 4, 2017
From: SILICON GRAPHICS INTERNATIONAL CORP.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 044128/0149 →
RELEASE OF SECURITY INTEREST Recorded Nov 2, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC., AS AGENT
To: SILICON GRAPHICS INTERNATIONAL CORP.
Reel/Frame 040545/0362 →
ORDER. . . AUTHORIZING THE SALE OF ALL OR SUBSTANTIALLY ALL OF THE ASSETS OF THE DEBTORS FREE AND CLEAR OF ALL LIENS, CLAIMS, ENCUMBRANCES, AND INTERESTS. Recorded Jul 25, 2016
From: WELLS FARGO FOOTHILL CAPITAL, INC.
To: SILICON GRAPHICS INC.
Reel/Frame 039461/0418 →
ORDER. . .AUTHORIZING THE SALE OF ALL OR SUBSTANTIALLY ALL OF THE ASSETS OF THE DEBTORS FREE AND CLEAR OF ALL LIENS, CLAIMS, ENCUMBRANCES, AND INTERESTS. Recorded Jul 25, 2016
From: MORGAN STANLEY & CO., INCORPORATED
To: SILICON GRAPHICS, INC.
Reel/Frame 039461/0713 →
SECURITY INTEREST Recorded Mar 13, 2015
From: SILICON GRAPHICS INTERNATIONAL CORP.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 035200/0722 →
CHANGE OF NAME Recorded Apr 18, 2014
From: SILICON GRAPHICS INTERNATIONAL, INC.
To: SGI INTERNATIONAL, INC.
Reel/Frame 032714/0230 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 18, 2014
From: SILICON GRAPHICS, INC.
To: SILICON GRAPHICS INTERNATIONAL, INC.
Reel/Frame 032714/0032 →
MERGER Recorded Apr 18, 2014
From: SGI INTERNATIONAL, INC.
To: SILICON GRAPHICS INTERNATIONAL CORP.
Reel/Frame 032714/0427 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 16, 2012
From: SILICON GRAPHICS, INC. ET AL.; SGI INTERNATIONAL, INC.
To: SILICON GRAPHICS INTERNATIONAL, CORP.
Reel/Frame 027727/0086 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 18, 2007
From: GENERAL ELECTRIC CAPITAL CORPORATION
To: MORGAN STANLEY & CO., INCORPORATED
Reel/Frame 019995/0895 →
SECURITY INTEREST Recorded Oct 24, 2006
From: SILICON GRAPHICS, INC.
To: GENERAL ELECTRIC CAPITAL CORPORATION
Reel/Frame 018545/0777 →
SECURITY AGREEMENT Recorded Aug 19, 2005
From: SILICON GRAPHICS, INC. AND SILICON GRAPHICS FEDERAL, INC. (EACH A DELAWARE CORPORATION)
To: WELLS FARGO FOOTHILL CAPITAL, INC.
Reel/Frame 016871/0809 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 20, 2001
From: MILLER, STEVEN C.; LENOSKI, DANIEL E.; KNECHT, KEVIN; HOPKINS, GEORGE; WOODACRE, MICHAEL S.
To: SILICON GRAPHICS, INC.
Reel/Frame 012318/0312 →