Network Controller Packet Splitting for Reliable Multi-Port PCIe
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
PCIe-based communication between devices is limited by transceiver speed and can be interrupted due to path failures from external factors like jitter or skew, leading to reduced communication speed and reliability.
Innovation Solution
A network controller that monitors port statuses using a port monitor circuit to determine valid ports, splits packets based on valid ports, and uses a reorder buffer to restore the order of split packets, enhancing communication efficiency and reliability by managing multiple data and physical layers.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If PCIe uses point-to-point communication through one link between devices, then the communication speed is limited by transceiver speed, but adding more lanes increases complexity and doesn't eliminate path failure issues
Solution Approach 1:
The patent segments the communication path by splitting a single PCIe transaction into multiple parallel transactions across different ports. The split circuit divides packets into multiple parts that can be transmitted simultaneously through different physical layers, and the reorder buffer reassembles them at the destination. This segmentation allows the system to achieve higher effective bandwidth while maintaining reliability through parallel paths.
Solution Approach 2:
The patent transitions from one-dimensional point-to-point communication to multi-dimensional parallel communication by introducing multiple ports and physical layers. Instead of sending data through a single link, the system creates multiple simultaneous communication channels across different ports, effectively adding a dimensional aspect to the communication architecture.
2Reliability
If PCIe communication encounters path failure due to jitter or skew, then communication is interrupted for a certain period, but implementing error correction mechanisms increases device complexity
Solution Approach 1:
The patent applies preliminary action by having the port monitor circuit continuously monitor the status of multiple ports and physical layers before data transmission occurs. When a path failure is detected, the system proactively switches to alternative paths or disables affected ports, preventing communication interruptions before they occur rather than reacting after failures happen.
Solution Approach 2:
The reorder buffer acts as an intermediary component that receives split packets from multiple ports, manages their reassembly, and presents them as a unified data stream to the destination. This intermediary handles the complexity of path failure management and packet reassembly, shielding the upper layers from the underlying complexity of multi-path error handling.
3Reliability
If the network controller manages multiple data link layers and physical layers through port monitoring, then communication reliability is improved, but the device complexity increases
Solution Approach 1:
The port monitor circuit performs multiple functions within a single component: it monitors the status of multiple ports, detects path failures, determines valid ports for data transmission, and provides this information to the split circuit. This multi-functionality reduces the need for separate dedicated components for each function, thereby managing complexity while improving reliability.
Solution Approach 2:
The system implements self-service through automatic port status monitoring and validation. The port monitor circuit continuously checks the health of each port and physical layer, and the split circuit automatically uses only the valid ports for data transmission without requiring external intervention. This self-managing approach improves reliability while keeping the control logic contained within the controller itself.
Data Source
AI summary
A network controller and operating method of the network controller are disclosed. The network controller includes, based on error information transmitted through a plurality of data link layers and a plurality of physical layers respectively corresponding to a plurality of ports managed by one transaction layer, a port monitor circuit configured to determine a number of valid ports among the plurality of ports by monitoring a status of the plurality of ports, a split circuit configured to split and transmit one packet to the valid ports based on the number of valid ports, and a reorder buffer configured to sort an order of second split packets, which are received from another network controller through the plurality of ports, and restore the second split packets received.


