Systems and methods for automatic root port to non-transparent bridge switching for a PCI express interconnect architecture
Abstract
Systems and methods consistent with the present disclosure include techniques for automatically switching a non-transparent bridge enabled root port (NeRP) device from a non-transparent bridge configuration state and a root port configuration state. A NeRP agent consistent with the present consistent includes a root port agent within a computing fabric network coupled to a first multiplexer and to a second multiplexer. The root port agent includes training circuitry to initiate a root port configuration state upon detection of a root port. Furthermore, the training circuitry also initiates a device configuration state upon detection of an endpoint port. A non-transparent bridge device is coupled to the first multiplexer and second multiplexer. In addition, an input/output (I/O) connector is coupled to the root port agent during the root port configuration state and coupled to the local NTB device and root port agent during the device configuration state.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1. A device, comprising:
a root port agent within a computing fabric network to be coupled to a first selection device and to a second selection device;
wherein the root port agent includes training circuitry to detect a root port and an endpoint port connected to the computing fabric network;
a non-transparent bridge (NTB) device to be coupled to the first selection device and to the second selection device;
wherein the NTB device includes a translation table and configuration space notification functionality to define control message signaled interrupts and mailbox status; and
an input/output (I/O) connector to be coupled to the root port agent when the training circuitry detects an endpoint port attempting to connect to the computing fabric network whereas the I/O connector is to be coupled to the NTB device when the training circuitry detects a root port attempting to connect to the computing fabric network.
2. The device of claim 1 , wherein the first selection device and the second selection device are multiplexers.
3. The device of claim 1 , wherein when the training circuitry detects an endpoint port, the first selection device and the second selection device are configured in a first state.
4. The device of claim 1 , wherein when the training circuitry detects a root port, the first selection device and the second selection device are configured in a second state.
5. The device of claim 1 , wherein the NTB device includes a direct memory access (DMA) controller.
6. The device of claim 1 , wherein the training circuitry includes a delay timer component to determine whether a port device attempting to connect to the computing fabric network transitions from a Polling substate to a Configuration substate.
7. The device of claim 6 , wherein the computing fabric network hosts a root port and endpoint port connect thereto.
8. The device of claim 1 , wherein the computing fabric network is compliant with a Peripheral Compliant Interconnect Express (PCIe) protocol.
9. The device of claim 1 , wherein the NTB device includes a north port and the root port agent includes a south port.
10. A method, comprising:
coupling a root port agent within a computing fabric network to a first selection device and to a second selection device;
wherein the root port agent includes training circuitry to detect a root port and an endpoint port connected to the computing fabric network;
coupling a non-transparent bridge (NTB) device to the first selection device and to the second selection device;
wherein the NTB device includes a translation table and configuration space notification functionality to define control message signaled interrupts and mailbox status;
utilizing the training circuitry to detect a root port and an endpoint port connected to the computing fabric network; and
coupling an input/output (I/O) connector to the root port agent when the training circuitry detects an endpoint port connected to the computing fabric network and coupling the I/O connector to the NTB device when the training circuitry detects a root port connected to the computing fabric network.
11. The method of claim 10 further comprising hiding the NTB device when the training circuitry detects an endpoint port connected to the computing fabric network.
12. The method of claim 10 further comprising coupling the NTB device with the root port agent and I/O connector when the training circuitry detects a root port connected to the computing fabric network.
13. The method of claim 10 further comprising hiding the NTB device and the root port agent when the I/O connect is neither connected to an external system hierarchy nor a peripheral device.
14. The method of claim 10 , wherein the root port agent and the NTB device are coupled to the computing fabric network by a PCIe compliant link.
15. The method of claim 10 , wherein detecting a root port includes sensing a device transition to a configuration training mode.
16. A non-transparent bridge enabled root port (NeRP) agent, comprising:
a root port agent within a computing fabric network to be coupled to a first multiplexer and to a second multiplexer;
wherein the root port agent includes training circuitry to initiate a root port configuration state upon detection of a root port or otherwise initiate a device configuration state upon detection of an endpoint port;
wherein the training circuitry includes a random timer such that the training circuitry has enough time to determine a type of port device connected to the computing fabric network;
a non-transparent bridge (NTB) device to be coupled to the first multiplexer and to the second multiplexer;
wherein the NTB device includes a translation table and configuration space notification functionality to define control message signaled interrupts and mailbox status; and
an input/output (I/O) connector to be coupled to the root port agent during the root port configuration state and to be coupled to the NTB device during the device configuration state.
17. The NeRP agent of claim 16 , wherein the training circuitry determines the type of device port connected to the computing fabric network by waiting for the port device to transition from a Polling substate to a Configuration substate.
18. The NeRP agent of claim 16 , wherein the NeRP agent configures to a port that is the opposite of a port configuration of an external NeRP agent coupled thereto.
19. The NeRP agent of claim 16 , wherein the NeRP agent is configured to transition from a Polling substate to a Configuration substate at a delayed time upon detection of an external NeRP agent coupled thereto.
20. The NeRP agent of claim 19 , wherein the random timer is to extend transition from a Polling substate to a Configuration substate to any random time between 0.5 ms and 1.7 ms.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.