Controller integration
First Claim
1. A data processing system comprising a central processing unit and a split network interface functionality, the split network interface functionality comprising:
- a first sub-unit collocated with or part of the central processing unit and configured to partially form a series of network data packets for transmission to an endpoint of the network by generating data link layer information for each of those packets according to a data link layer protocol of the network; and
a second sub-unit external to the central processing unit and coupled to the central processing unit via an interconnect having a data link layer protocol different from that of the network, the second sub-unit being configured to receive the partially formed network data packets and to physically signal the series of network data packets over the network using the data link layer information generated by the first sub-unit.
10 Assignments
0 Petitions
Accused Products
Abstract
Roughly described, a data processing system comprises a central processing unit and a split network interface functionality, the split network interface functionality comprising: a first sub-unit collocated with the central processing unit and configured to at least partially form a series of network data packets for transmission to a network endpoint by generating data link layer information for each of those packets; and a second sub-unit external to the central processing unit and coupled to the central processing unit via an interconnect, the second sub-unit being configured to physically signal the series of network data packets over a network.
-
Citations
70 Claims
-
1. A data processing system comprising a central processing unit and a split network interface functionality, the split network interface functionality comprising:
-
a first sub-unit collocated with or part of the central processing unit and configured to partially form a series of network data packets for transmission to an endpoint of the network by generating data link layer information for each of those packets according to a data link layer protocol of the network; and a second sub-unit external to the central processing unit and coupled to the central processing unit via an interconnect having a data link layer protocol different from that of the network, the second sub-unit being configured to receive the partially formed network data packets and to physically signal the series of network data packets over the network using the data link layer information generated by the first sub-unit. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A data processing system comprising:
-
a central processing unit, the central processing unit including a network interface controller, the network interface controller being configured to form intermediate data units by at least partially framing at the data link layer data for transmission over a network in accordance with a network protocol, each intermediate data unit including a destination network address for the data for transmission; a memory coupled to the central processing unit; a media interface connected to the network and configured to transmit fully-formed data packets over the network; and a first interconnect extending between the central processing unit and the media interface, the interconnect being formed of one or more data links; wherein the network interface controller is further configured to encapsulate said intermediate data units of the network protocol in interconnect data packets for transmission over the first interconnect, and the media interface is configured to extract the intermediate data units from the interconnect data packets received over the first interconnect and process the intermediate data units at the physical layer so as to complete the formation of data packets in accordance with the network protocol. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58)
-
-
59. A method for transmitting data over a network from a data processing system comprising a media interface at the interface to the network, a central processing unit having a memory management unit for accessing a memory, and an interconnect connected between the central processing unit and the media interface, the method comprising:
-
a network interface controller located at the central processing unit; retrieving data for transmission over the network from a transmit queue at the memory by means of the memory management unit; partially framing, according to the data link layer of a network protocol, data packets containing the retrieved data to form intermediate data units; and in accordance with the data protocol in use over the interconnect, encapsulating the intermediate data packets of the network protocol in data packets for transmission over the interconnect and transmitting the encapsulated intermediate data packets over the interconnect to the media interface, and the media interface; receiving the encapsulated intermediate data packets; extracting the intermediate data packets of the network protocol from the encapsulated intermediate data packets; processing the intermediate data packets of the network protocol at the physical layer of the network protocol so as to complete the framing of the intermediate data packets in accordance with the network protocol; and transmitting the fully-formed data packets of the network protocol onto the network.
-
-
60. A method for receiving data over a network at a data processing system comprising a media interface at the interface to the network, a central processing unit having a memory management unit for accessing a memory, and an interconnect connected between the central processing unit and the media interface, the method comprising:
-
the media interface; receiving network data packets over the network; and in accordance with the data protocol in use over the interconnect, encapsulating the received network data packets in data packets for transmission over the interconnect and transmitting the data packets over the interconnect to a network interface controller located at the central processing unit, and the network interface controller; receiving the encapsulated data packets; extracting the received network data packets from the encapsulated data packets; at least partially processing each received network data packet at the data link layer in accordance with the network protocol so as to extract the data carried within each received network data packet; and writing the extracted data to a receive queue at the memory by means of the memory management unit.
-
-
61. A method for communicating data between central processing units at a data processing system having a first central processing unit and a second central processing unit coupled together by means of an interconnect, each central processing unit comprising a respective network interface controller operable to (a) form intermediate data units by at least partially framing data for communication at the data link layer in accordance with a network protocol, and (b) at least partially process at the data link layer in accordance with the network protocol intermediate data units so as to extract the data for communication carried within each intermediate data unit, the method comprising:
-
the first central processing unit passing data for communication to its first network interface controller, the first network interface controller; forming intermediate data units comprising the data for communication by at least partially framing the data for communication at the data link layer in accordance with the network protocol; encapsulating the intermediate data units of the network protocol in data packets for transmission over the interconnect; and transmitting the encapsulated data packets over the interconnect to the second network interface controller, and the second network interface controller; receiving the encapsulated data packets; extracting the intermediate data units from the encapsulated data packets; at least partially processing each intermediate data unit at the data link layer in accordance with the network protocol so as to extract the data carried within each intermediate data unit; and passing the extracted data to the second central processing unit.
-
-
62. A central processing unit for a data processing system, the central processing unit comprising:
-
a processing core; a link module for communicating data packets of a predetermined data protocol over a data bus; a memory management unit operable to retrieve data from a memory coupled to the central processing unit; and a network interface controller configured to; retrieve data for transmission over a network by means of the memory management unit; frame at the data link layer of a network protocol data packets that contain retrieved data; and cause those packets to be encapsulated in data packets of the predetermined data protocol and communicated over the data bus by means of the link module. - View Dependent Claims (63)
-
-
64. A central processing unit for a data processing system, the central processing unit comprising:
-
a processing core; a cache; a memory management unit operable to retrieve data from a memory coupled to the central processing unit; and a network interface controller configured to at least partially form a series of network data packets for transmission by generating data link layer information for each of those packets, the network interface controller further configured to, when in use, store at least some of its state at a memory coupled to the central processing unit; wherein the processing core and network interface controller are configured to access a memory coupled to the central processing unit by means of the memory management unit, and the cache is configured to cache data stored at a memory coupled to the central processing unit. - View Dependent Claims (65)
-
-
66. A peripheral electronic device supported at a data processing system and presenting itself as a PCIe device to the data processing system, the data processing system comprising a central processing unit and a PCIe data bus, and the peripheral electronic device having two components:
-
a core component located at the central processing unit, the core component being operable to handle I/O requests for the peripheral electronic device, and a peripheral component accessible to the core component over the PCIe data bus; wherein the core component is configured to be responsive to I/O requests directed to the peripheral component. - View Dependent Claims (67, 68, 69, 70)
-
Specification