IP Library Granted Patent US 8,521,940
Granted Patent B2
US 8,521,940 · App. 12/606,339 · Granted Aug 27, 2013

Paired node controllers

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 8,521,940
App. No.
12/606,339
Granted
Aug 27, 2013
Kind
B2
Abstract

In at least some embodiments, an apparatus comprises a pair of node controllers, each of the node controllers having a different processor assigned thereto. Each node controller is operable to selectively switch processor requests received from its assigned processor to the other node controller and to selectively switch responses to the processor requests to the other node controller.

Claims (28)

1. An apparatus, comprising:

a pair of node controllers, each of the node controllers having a different processor assigned thereto,

wherein each node controller is operable to selectively switch processor requests received from its assigned processor to the other node controller using a link controller and to selectively switch responses to said processor requests to the other node controller while specifying the location the response is to be placed in a queue.

2. The apparatus of claim 1 wherein each node controller comprises cross-connection logic and wherein each cross-connection logic comprises a switch bus decode block in communication with the queue, wherein the queue comprises a plurality of link queues.

3. The apparatus of claim 1 wherein each node controller comprises a plurality of message queue sets coupled to a link arbiter and a switch arbiter, each message queue set having a link queue and a switch queue.

4. The apparatus of claim 3 wherein the link arbiter is configured to arbitrate queued packets based on QPI link credit.

5. The apparatus of claim 3 wherein the switch arbiter is configured to arbitrate queued packets based on available buffer space in the other node controller.

6. A system, comprising:

a pair of processors; and

a pair of node controllers coupled together, wherein each processor is coupled to and assigned to a different one of said node controllers;

wherein, if a node controller receives an inbound communication packet from its assigned processor and the inbound communication packet is directed to the other node controller, the node controller that received the inbound communication packet switches the inbound communication packet to the other node controller using a link controller, and

wherein, if a node controller receives an outbound communication packet directed to the processor assigned to the other node controller, the node controller that received the outbound communication packet switches the outbound communication packet to the other node controller while specifying where the outbound communication packet is to be placed in a queue.

7. The system of claim 6 wherein each node controller couples to an outbound bus and wherein each node controller switches packets via a cross-connection bus having a bandwidth matched to the outbound busses.

8. The system of claim 6 wherein the queue comprise a plurality of link queues for storing packets received from the other node controller.

9. The system of claim 6 wherein each node controller comprises a plurality of queues for storing local packets and a plurality of queues for storing packets to be forwarded to the other node controller.

10. The system of claim 6 wherein each node controller comprises a first arbiter for queued packets to be forwarded to the other node controller.

11. The system of claim 10 wherein the first arbiter is configured to arbitrate queued packets based on available buffer space in the other node controller.

12. The system of claim 10 wherein each node controller comprises a second arbiter for queued local packets and queued packets received from the other node controller.

13. The system of claim 12 wherein the second arbiter is configured to arbitrate queued packets based on QPI link credit.

14. The system of claim 6 wherein each node controller comprises at least one queue for storing only local packets, at least one queue for storing only packets corresponding to the other node controller, and at least one queue for storing both local packets and packets corresponding to the other node controller.

15. A method, comprising:

selectively switching inbound communication packets received from either of a pair of processors from one node controller to the other node controller; and

selectively switching outbound communication packets en route to one of the pair of processors from one node controller to the other node controller while specifying where the outbound communication packet is to be placed in a queue.

16. The method of claim 15 wherein selectively switching communication packets from one node controller to the other node controller comprises operating a cross-bus between the node controllers at a bandwidth that matches a node controller outbound bus bandwidth.

17. The method of claim 15 further comprising selectively queuing in each node controller: local packets, in-switch packets received from the other node controller, and out-switch packets to be transmitted to the other node controller.

18. The method of claim 17 further arbitrating queued local packets and queued in-switch packets for output to one of the paired processors based on QPI link credit.

19. The method of claim 17 further comprising arbitrating queued out-switch packets based on available buffer space in the other node controller.

20. The method of claim 17 further comprising, for each node controller, assigning at least one queue for storing only local packets, assigning at least one queue for storing only packets corresponding to the other node controller, and assigning at least one queue for storing both local packets and packet corresponding to the other node controller.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 9, 2022
From: OT PATENT ESCROW, LLC
To: VALTRUS INNOVATIONS LIMITED
Reel/Frame 059058/0720 →
PATENT ASSIGNMENT, SECURITY INTEREST, AND LIEN AGREEMENT Recorded Jan 26, 2021
From: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP; HEWLETT PACKARD ENTERPRISE COMPANY
To: OT PATENT ESCROW, LLC
Reel/Frame 055269/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 27, 2009
From: BRUEGGEN, CHRIS M.
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 023432/0487 →