IP Library Granted Patent US 8,601,198
Granted Patent B2
US 8,601,198 · App. 13/174,436 · Granted Dec 3, 2013

Controllable transaction synchronization for merging peripheral devices

Inventors: Chee Hak Teh (Bayan Lepas, MY); Chai Huat Gan (Bukit Mertajam, MY); Poh Thiam Teoh (Kuala Lumpur, MY); Mary Siaw See Yeoh (Georgetown, MY); Su Wei Lim (Klang, MY)
Assignee: Intel Corporation
G06F13/385
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,601,198
App. No.
13/174,436
Granted
Dec 3, 2013
Kind
B2
Abstract

Embodiments of the invention describe a host system capable of associating a PCIe device and another separate device to the same device identifier (e.g., device number). A cycle routing module or logic will identify an I/O transaction involving the device identifier, and route the transaction to one or both of the devices (or, in some instances, identify the I/O transaction as a configuration transaction, and simply update the cycle routing module/logic only). In one embodiment of the invention, a root port of the host system is configured to operate as the above described cycle router. Embodiments of the invention allow for devices to be “merged” into a single device for the host OS. For example, a peripheral devices coupled to the host system via a PCIe link may be “merged” with a peripheral devices coupled to the host system via another PCIe link or a SATA link.

Claims (45)

1. A system comprising:

a first Peripheral Component Interconnect express (PCIe) device;

a second device;

a host processor to execute an operating system (OS) and communicatively coupled simultaneously to both the first PCIe device and the second device, wherein the first and second devices are merged by associating both devices with a single common device identifier to be used by the OS such that the first PCIe device and the second device are viewed as a single device by the OS;

a cycle router to identify an input/output (I/O) transaction including the common device identifier, and to process the I/O transaction to at least one of the first device, the second device, or configuration logic of the cycle router;

an antenna; and

radio frequency circuitry coupled to the antenna to receive signal data to be processed by the system.

2. The system of claim 1 , wherein the second device comprises another PCIe device.

3. The system of claim 1 , wherein the second device comprises a Serial Advanced Technology Attachment (SATA) device.

4. The system of claim 1 , wherein the second device comprises a memory device, the second device to store data to be requested by the first PCIe device.

5. The system of claim 3 , wherein the cycle router comprises a PCIe root port of the system.

6. The system of claim 5 , wherein the common device identifier to be used by the OS is to identify the first and second device as a SATA device.

7. The system of claim 6 , wherein the access to the PCIe root port by the OS is to be disabled, the system further comprising:

a host controller interface (HCI) operatively coupling the SATA device to the host processor, the OS to access the first and second devices via the HCI.

8. The system of claim 6 , wherein the first and second devices comprise a redundant array of independent disks (RAID) subsystem, and the I/O transaction including the common device identifier is to be processed to the first and second devices.

9. The system of claim 6 , further comprising:

an interrupt router to route a system interrupt directed to the common device identifier to the first PCIe device.

10. An apparatus comprising:

a processing core to execute an operating system (OS);

a first Peripheral Component Interconnect express (PCIe) device interface;

a second device interface, wherein the first PCIe device and the second device are both simultaneously communicatively coupled to the processing core;

logic to merge the first and second device interfaces with a common device identifier to be used by the OS such that the first PCIe device and the second device are viewed as a single device by the OS; and

a cycle router to identify an input/output (I/O) transaction including the common device identifier, and to process the I/O transaction to at least one of the first device interface, the second device interface, or configuration logic of the cycle router.

11. The apparatus of claim 10 , wherein the second device interface comprises another PCIe device interface.

12. The apparatus of claim 10 , wherein the second device interface comprises a Serial Advanced Technology Attachment (SATA) device interface.

13. The apparatus of claim 10 , wherein the cycle router comprises a PCIe root port.

14. The apparatus of claim 13 , wherein the common device identifier to be used by the OS is to identify the first and second device interface as a SATA device interface.

15. The apparatus of claim 14 , wherein the access to the PCIe root port by the OS is to be disabled, the apparatus further comprising:

a host controller interface (HCI) operatively coupling the SATA device interface to the host processor, the OS to access the first and second device interfaces via the HCI.

16. The apparatus of claim 14 , further comprising:

an interrupt router to route a system interrupt directed to the common device identifier to the first PCIe device interface.

17. A method comprising:

merging a first Peripheral Component Interconnect express (PCIe) device and a second device with a common device identifier to be used by a host operating system (OS), wherein the first PCIe device and the second device are both simultaneously coupled to a processing core executing the OS such that the first PCIe device and the second device are viewed as a single device by the OS;

identifying an input/output (I/O) transaction including the common device identifier via a cycle router; and

processing the I/O transaction to at least one of the first device, the second device, and configuration logic of the cycle router.

18. The method of claim 17 , wherein the second device comprises another PCIe device.

19. The method of claim 17 , wherein the second device comprises a Serial Advanced Technology Attachment (SATA) device.

20. The method of claim 17 , wherein the second device comprises a memory device, the second device to store data to be requested by the first PCIe device.

21. The method of claim 19 , wherein the cycle router comprises a PCIe root port of the system.

22. The method of claim 21 , wherein the common device identifier to be used by the OS is to identify the first and second device as a SATA device.

23. The method of claim 22 , further comprising:

disabling access to the PCIe root port by the OS is to be disabled, the OS to access the first and second devices via a host controller interface (HCI).

24. The method of claim 22 , wherein the first and second devices comprise a redundant array of independent disks (RAID) subsystem, and the I/O transaction including the common device identifier is to be processed to the first and second devices.

25. The method of claim 22 , further comprising:

routing a system interrupt directed to the common device identifier to the first PCIe device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 9, 2011
From: TEH, CHEE HAK; GAN, CHAI HUAT; TEOH, POH THIAM; YEOH, MARY SIAW SEE; LIM, SU WEI
To: INTEL CORPORATION
Reel/Frame 026882/0960 →
Continuity (1)
Related Publication 20130007332A1 · Jan 3, 2013