IP Library Granted Patent US 7,752,376
Granted Patent B1
US 7,752,376 · App. 11/503,447 · Granted Jul 6, 2010

Flexible configuration space

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,752,376
App. No.
11/503,447
Granted
Jul 6, 2010
Kind
B1
Abstract

A configuration space operation packet is received from a link. The configuration space operation packet is detected using a hardware mechanism. The configuration space operation packet is forwarded to a software-controlled entity for processing. A received packet can be detected as a configuration space operation packet from an address range of an address in a header of the received packet. The software-controlled entity can provide configuration space virtualisation.

Claims (34)

1. An apparatus comprising a hardware mechanism, wherein the hardware mechanism comprises:

first logic operable to identify a configuration space operation packet to be processed in a software-controlled entity, and

second logic operable to forward the identified configuration space operation packet to the software-controlled entity for processing,

wherein the software-controlled entity includes an embedded processor and an embedded memory, wherein the embedded processor is configured to check local policy information stored in the embedded memory to determine whether the identified configuration space operation packet should be processed locally; and

if so, the embedded processor is configured to process the identified configuration space operation packet locally;

otherwise, the embedded processor is configured to determine a destination identifier based on the local policy information, construct a forwarding packet with the destination identifier and the original configuration space packet as payload, and send the forwarding packet to a determined physical output port for forwarding.

2. The apparatus of claim 1 , wherein the software-controlled entity provides configuration space virtualisation.

3. The apparatus of claim 1 , wherein the apparatus is an interconnect device comprising:

a link interface operable to receive a configuration space operation packet at the interconnect device from a link; and

the hardware mechanism.

4. The apparatus of claim 3 , wherein the software-controlled entity is integral to the interconnect device.

5. The apparatus of claim 3 , wherein the software-controlled entity is external to the interconnect device.

6. The apparatus of claim 3 , wherein the software-controlled entity forms part of a further interconnect device.

7. The apparatus of claim 3 , wherein the configuration space information packet is forwarded to the software-controlled entity via an interface dedicated to the software-controlled entity.

8. The apparatus of claim 3 , wherein the configuration space information packet is forwarded to the software-controlled entity via the link.

9. The apparatus of claim 3 , wherein the configuration space information packet is forwarded to the software-controlled entity via another link.

10. The apparatus of claim 3 , wherein the software-controlled entity is a service processor.

11. The apparatus of claim 3 , wherein the software-controlled entity is a root complex.

12. The apparatus of claim 3 , wherein the interconnect device comprises a switch.

13. The apparatus of claim 3 , wherein the configuration space operation is a PCI (Peripheral Component Interconnect) compatible configuration space operation.

14. The apparatus of claim 3 , wherein the configuration space operation is a PCI (Peripheral Component Interconnect) Express compatible configuration space operation.

15. A computer system comprising an interconnect apparatus, the interconnect apparatus comprising:

a link interface operable to receive a configuration space operation packet from a link; and

a hardware mechanism operable to detect the configuration space operation packet, the hardware mechanism being further operable to forward the configuration space operation packet to a software-controlled entity for processing,

wherein the software-controlled entity includes an embedded processor and an embedded memory, wherein the embedded processor is configured to check local policy information stored in the embedded memory to determine whether the configuration space operation packet should be processed locally; and

if so, the embedded processor is configured to process the configuration space operation packet locally;

otherwise, the embedded processor is configured to determine a destination identifier based on the local policy information, construct a forwarding packet with the destination identifier and the original configuration space packet as payload, and send the forwarding packet to a determined physical output port for forwarding.

16. A method of operating an interconnect fabric comprising:

receiving a configuration space operation packet;

detecting the configuration space operation packet using a hardware mechanism; and

the hardware mechanism forwarding the configuration space operation packet to a software-controlled entity for processing,

wherein the software-controlled entity includes an embedded processor and an embedded memory, wherein the embedded processor is configured to check local policy information stored in the embedded memory to determine whether the identified configuration space operation packet should be processed locally; and

if so, the embedded processor is configured to process the configuration space operation packet locally;

otherwise, the embedded processor is configured to determine a destination identifier based on the local policy information, construct a forwarding packet with the destination identifier and the original configuration space packet as payload, and send the forwarding packet to a determined physical output port for forwarding.

Assignments (2)
MERGER AND CHANGE OF NAME Recorded Dec 16, 2015
From: ORACLE USA, INC.; SUN MICROSYSTEMS, INC.; ORACLE AMERICA, INC.
To: ORACLE AMERICA, INC.
Reel/Frame 037306/0514 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 11, 2006
From: JOHNSEN, BJORN DAG; TORUDBAKKEN, OLA; GAJJAR, YATIN
To: SUN MICROSYSTEMS, INC.
Reel/Frame 018178/0369 →