Method and apparatus for shared I/O in a load/store fabric
First Claim
1. A packet for transferring data in a load/store fabric to a shared input/output (I/O) endpoint, comprising:
- a header field;
for identifying the shared I/O endpoint; and
an OS Domain header field, included within said header field, for identifying which one of a plurality of root complexes is associated with the packet.
7 Assignments
0 Petitions
Accused Products
Abstract
An apparatus and method is provided for allowing I/O devices to be shared and/or partitioned among a plurality of processing complexes within the load/store fabric of each of the processing complexes without requiring modification to the operating system or driver software of the processing complexes. The apparatus and method includes a switch for selectively coupling each of the processing complexes to one or more shared I/O devices. The apparatus and method further includes placing information within packets transmitted between the switch and the I/O devices to identify which of the processing complexes the packets are associated with. The invention further includes an apparatus and method within the shared I/O devices to allow the shared I/O devices to service each of the processing complexes independently.
50 Citations
54 Claims
-
1. A packet for transferring data in a load/store fabric to a shared input/output (I/O) endpoint, comprising:
-
a header field;
for identifying the shared I/O endpoint; and
an OS Domain header field, included within said header field, for identifying which one of a plurality of root complexes is associated with the packet. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25)
-
-
26. An OS Domain header, within a PCI Express Packet comprising:
a plurality of bits, said plurality of bits defining an operating system domain from which the PCI Express Packet originated. - View Dependent Claims (27, 28, 29, 30, 31, 32, 33, 34, 35)
-
36. A method for identifying a root complex for a packet within a load/store fabric to allow for sharing of input/output (I/O) endpoints, the method comprising:
-
providing an architecture for the packet; and
providing a field for inclusion in the packet to identify the root complex for the packet;
wherein the input/output (I/O) endpoints utilize the field provided in said step of providing a field to identify the root complex for the packet. - View Dependent Claims (37, 38, 39, 40, 41, 42, 43, 44, 45)
-
-
46. A method for transferring a packet from a shared input/output (I/O) endpoint to one of a plurality of OS Domains, within a load/store fabric, comprising:
-
embedding an OS Domain number with the packet to associate the packet with one of the plurality of OS Domains;
transferring the packet with the embedded OS Domain number to a shared I/O switch;
examining the embedded OS Domain number to determine a port within the shared I/O switch associated with the one of the plurality of OS Domains; and
transferring the packet to the one of the plurality of OS Domains using the port. - View Dependent Claims (47, 48, 49, 50, 51, 52, 53, 54)
-
Specification