IP Library Granted Patent US 7,039,740
Granted Patent B2
US 7,039,740 · App. 10/200,471 · Granted May 2, 2006

Interrupt handling in systems having multiple multi-processor clusters

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,039,740
App. No.
10/200,471
Granted
May 2, 2006
Kind
B2
Abstract

An interconnection controller for use in a computer system having a plurality of processor clusters is described. Each cluster includes a plurality of local nodes and an instance of the interconnection controller. The interconnection controller is operable to transmit locally generated interrupts to others of the clusters, and remotely generated interrupts to the local nodes. The interconnection controller is further operable to aggregate locally generated interrupt responses for transmission to a first remote cluster from which a first interrupt corresponding to the locally generated responses was generated. The interconnection controller is also operable to aggregate remotely generated responses for transmission to a first local node from which a second interrupt corresponding to the remotely generated responses was generated. A computer system employing such an interconnection controller is also described.

Claims (36)

1. A computer system comprising a plurality of processor clusters, each cluster including a plurality of local nodes and an interconnection controller, each interconnection controller being operable to transmit locally generated interrupts to others of the clusters, and remotely generated interrupts to the local nodes, the interconnection controller in each cluster further being operable to aggregate locally generated interrupt responses for transmission to a first remote cluster from which a first interrupt corresponding to the locally generated responses was generated, the interconnection controller also being operable to aggregate remotely generated responses for transmission to a first local node from which a second interrupt corresponding to the remotely generated responses was generated, wherein the interconnection controller in each cluster is operable to aggregate the locally generated responses by selecting one of the locally generated responses for transmission.

2. The computer system of claim 1 wherein the interconnection controller in each cluster is operable to aggregate the locally generated responses by combining information from at least two of the locally generated responses into a combined response.

3. The computer system of claim 1 wherein the interconnection controller in each cluster is operable to aggregate the remotely generated responses by selecting one of the remotely generated responses for transmission.

4. The computer system of claim 1 wherein the interconnection controller in each cluster is operable to aggregate the remotely generated responses by combining information from at least two of the remotely generated responses into a combined response.

5. The computer system of claim 1 wherein the interconnection controller in each cluster is operable to aggregate the locally and remotely generated responses with reference to information associated with at least some of the responses.

6. The computer system of claim 1 wherein the first and second interrupts comprise arbitrated interrupts, and the locally and remotely generated responses each indicate whether an associated processor is a target processor, a focus processor, or neither.

7. The computer system of claim 1 wherein the first and second interrupts comprise directed interrupts and the locally and remotely generated responses each indicate whether an associated processor is a target processor.

8. The computer system of claim 1 wherein the local nodes and the interconnection controller in each cluster are interconnected by a point-to-point architecture.

9. The computer system of claim 8 wherein the plurality of clusters comprises four clusters.

10. The computer system of claim 8 wherein the plurality of local nodes in each cluster comprises four local processors.

11. The computer system of claim 1 wherein the locally and remotely generated interrupts are broadcast to all of the clusters.

12. In computer system comprising a plurality of processor clusters, each cluster including a plurality of local nodes and an interconnection controller, a method for handling interrupts, comprising:

transmitting locally generated interrupts to others of the clusters using the interconnection controller;

transmitting remotely generated interrupts to the local nodes using the interconnection controller;

using the interconnection controller, aggregating locally generated interrupt responses for transmission to a first remote cluster from which a first interrupt corresponding to the locally generated responses was generated, wherein aggregating locally generated interrupt response includes combining information from at least two of the locally generated responses into a combined response; and

using the interconnection controller, aggregating remotely generated responses for transmission to a first local node from which a second interrupt corresponding to the remotely generated responses was generated.

13. An interconnection controller for use in a computer system comprising a plurality of processor clusters, each cluster including a plurality of local nodes and an instance of the interconnection controller, the interconnection controller comprising circuitry which is operable to transmit locally generated interrupts to others of the clusters, and remotely generated interrupts to the local nodes, the circuitry further being operable to aggregate locally generated responses by selecting one of the locally generated interrupt responses for transmission to a first remote cluster from which a first interrupt corresponding to the locally generated responses was generated, the circuitry also being operable to aggregate remotely generated responses by selecting one of the remotely generated responses for transmission to a first local node from which a second interrupt corresponding to the remotely generated responses was generated.

14. An integrated circuit comprising the interconnection controller of claim 13 .

15. The integrated circuit of claim 14 wherein the integrated circuit comprises an application-specific integrated circuit.

16. At least one computer-readable medium having data structures stored therein representative of the interconnection controller of claim 13 .

17. The at least one computer-readable medium of claim 16 wherein the data structures comprise a simulatable representation of the interconnection controller.

18. The at least one computer-readable medium of claim 17 wherein the simulatable representation comprises a netlist.

19. The at least one computer-readable medium of claim 16 wherein the data structures comprise a code description of the interconnection controller.

20. The at least one computer-readable medium of claim 19 wherein the code description corresponds to a hardware description language.

21. A set of semiconductor processing masks representative of at least a portion of the interconnection controller of claim 13 .

22. A computer system comprising a plurality of processor clusters, each cluster including a plurality of local nodes and an interconnection controller, each interconnection controller being operable to transmit a first interrupt generated by first local node to others of the clusters, the interconnection controller also being operable to aggregate remotely generated responses corresponding to the first interrupt for transmission to the first local node, wherein the interconnection controller in each cluster is operable to aggregate the remotely generated responses by selecting one of the remotely generated responses.

23. The computer system of claim 22 wherein the interconnection controller in each cluster is operable to aggregate the remotely generated responses by combining information from at least two of the remotely generated responses into a combined response.

24. The computer system of claim 22 wherein the interconnection controller in each cluster is operable to aggregate the remotely generated responses with reference to information associated with at least some of the responses.

25. The computer system of claim 22 wherein the first interrupt comprises an arbitrated interrupt, and the remotely generated responses each indicate whether an associated processor is a target processor, a focus processor, or neither, the interconnection controller being operable to transmit an aggregated response to the first local node.

26. The computer system of claim 25 wherein the first local node is operable to select from among the aggregated response and a plurality of locally generated responses from associated local nodes and generate a directed interrupt in response thereto corresponding to a processor associated with the selected response.

27. The computer system of claim 26 wherein the first local node is operable to broadcast the directed response to all of the clusters.

28. The computer system of claim 27 wherein the first local node is operable to transmit the directed response only to the cluster associated with the processor associated with the selected response.

29. The computer system of claim 28 wherein the interconnection controller in each cluster maintains a mapping relating processor IDs and nodes in each of the other clusters to facilitate transmission of the directed response only to the cluster associated with the processor associated with the selected response.

30. The computer system of claim 22 wherein the first interrupt comprises a directed interrupt and the remotely generated responses each indicate whether an associated processor was a target processor.

31. The computer system of claim 22 wherein the first interrupt is broadcast to all of the clusters.

32. An interconnection controller for use in a computer system having a plurality of processor clusters, each cluster including a plurality of local nodes and an instance of the interconnection controller, the interconnection controller comprising circuitry which is operable to transmit a first interrupt generated by first local node to others of the clusters, the circuitry also being operable to aggregate remotely generated responses corresponding to the first interrupt for transmission to the first local node by combining remotely generated responses into a single response for transmission to the first local node.

Assignments (11)
RELEASE OF SECURITY INTEREST Recorded Jun 5, 2019
From: U.S. BANK NATIONAL ASSOCIATION, SOLELY AS NOTES COLLATERAL AGENT
To: SANMINA CORPORATION; HADCO CORPORATION; HADCO SANTA CLARA; SCI TECHNOLOGY; SENSORWISE, INC.
Reel/Frame 049378/0927 →
SECURITY INTEREST Recorded Aug 3, 2018
From: SANMINA CORPORATION
To: U.S. BANK NATIONAL ASSOCIATION, NOT IN ITS INDIVIDUAL CAPACITY BUT SOLELY AS NOTES COLLATERAL AGENT
Reel/Frame 046797/0063 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 26, 2018
From: MEMORY INTEGRITY, LLC
To: SANMINA CORPORATION
Reel/Frame 046249/0843 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 11, 2013
From: SANMINA CORPORATION
To: MEMORY INTEGRITY, LLC
Reel/Frame 030585/0980 →
MERGER Recorded Nov 28, 2012
From: SANMINA-SCI CORPORATION
To: SANMINA CORPORATION
Reel/Frame 029368/0472 →
MERGER Recorded Jul 27, 2012
From: NEWISYS, INC.
To: SANMINA-SCI CORPORATION
Reel/Frame 028652/0891 →
RELEASE OF SECURITY INTEREST Recorded Nov 25, 2008
From: CITIBANK, N.A.
To: HADCO SANTA CLARA, INC.; HADCO CORPORATION; SCIMEX, INC.; SANMINA-SCI SYSTEMS HOLDINGS, INC.; SCI TECHNOLOGY, INC.; SANMINA-SCI CORPORATION
Reel/Frame 021890/0312 →
RELEASE OF SECURITY INTEREST Recorded May 21, 2006
From: U.S. BANK NATIONAL ASSOCIATION (AS SUCCESSOR TO STATE STREET BANK AND TRUST COMPANY OF CALIFORNIA, N.A.), AS COLLATERAL TRUSTEE
To: SANMINA-SCI CORPORATION
Reel/Frame 017646/0661 →
PLEDGE AND SECURITY AGREEMENT Recorded Jan 3, 2005
From: SANMINA-SCI CORPORATION; HADCO CORPORATION; HADCO SANTA CLARA, INC.; SCI TECHNOLOGY, INC.; VIKING INTERWORKS INC.; COMPATIBLE MEMORY, INC.; SCI SYSTEMS, INC.; SANMINA-SCI SYSTEMS (ALABAMA) INC.; SANMINA-SCI SYSTEMS HOLDINGS, INC.; INTERAGENCY, INC.; SANMINA-SCI SYSTEMS ENCLOSURES (DENTON) INC.; SCIMEX, INC.; NEWISYS, INC.; SANMINA-SCI ENCLOSURES USA INC.; SCI PLANT NO. 5, L.L.C.; SCI PLANT NO. 22, L.L.C.; SANMINA GENERAL, L.L.C.; SANMINA LIMITED, L.L.C.; SANMINA-SCI, LLC; SANMINA TEXAS, L.P.
To: CITIBANK, N.A.
Reel/Frame 016097/0729 →
PLEDGE SUPPLEMENT Recorded Oct 12, 2004
From: VIKING INTERWORKS INC.; HADCO SANTA CLARA, INC.; SCI SYSTEMS, INC.; NEWISYS, INC.; HADCO CORPORATION; SANMINA-SCI CORPORATION; SCI TECHNOLOGY, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS SUCCESSOR CORPORATE TRUSTEE TO STATE STREET BANK AND TRUST COMPANY, N.A.
Reel/Frame 015841/0960 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 19, 2002
From: GLASCO, DAVID BRIAN; ZEITLER, CARL
To: NEWISYS, INC.
Reel/Frame 013130/0665 →