Programmable distributed data processing in a serial link
First Claim
1. A serial transceiver that includes programmable distributed data processing, the serial transceiver comprising:
- an ingress channel that receives ingress data, wherein the ingress data is serial data;
an egress channel that transmits egress data, wherein the egress data is serial data;
a first layer, wherein the first layer is one of a transport layer, a link layer, or a physical layer (PHY), the first layer including first layer elements that process the ingress data and the egress data;
a second layer, wherein the second layer is another one of the transport layer, the link layer, or the physical layer (PHY), the second layer including second layer elements that process the ingress data and the egress data;
a programmable controller;
a first interconnect that connects the programmable controller to the first layer; and
a second interconnect that connects the programmable controller to the second layer,wherein the programmable controller sends first data via the first interconnect to the first layer, and the first data is processed by one of the first layer elements.
1 Assignment
0 Petitions
Accused Products
Abstract
A serial transceiver that includes programmable distributed data processing is provided. The serial transceiver can include an ingress channel that receives serial ingress data and an egress channel that transmits serial egress data. The serial transceiver can also include first and second layers that are one and another of a transport layer, a link layer, or a physical layer (PHY). The first and second layers can include elements that process the ingress data and the egress data. The serial transceiver can also include a programmable controller, a first interconnect that connects the programmable controller to the first layer, and a second interconnect that connects the programmable controller to the second layer. The programmable controller can send first data via the first interconnect to the first layer, and the first data can be processed by one of the first layer elements.
-
Citations
33 Claims
-
1. A serial transceiver that includes programmable distributed data processing, the serial transceiver comprising:
-
an ingress channel that receives ingress data, wherein the ingress data is serial data; an egress channel that transmits egress data, wherein the egress data is serial data; a first layer, wherein the first layer is one of a transport layer, a link layer, or a physical layer (PHY), the first layer including first layer elements that process the ingress data and the egress data; a second layer, wherein the second layer is another one of the transport layer, the link layer, or the physical layer (PHY), the second layer including second layer elements that process the ingress data and the egress data; a programmable controller; a first interconnect that connects the programmable controller to the first layer; and a second interconnect that connects the programmable controller to the second layer, wherein the programmable controller sends first data via the first interconnect to the first layer, and the first data is processed by one of the first layer elements.
-
-
2. The serial transceiver of claim 1, wherein the programmable controller is included in the PHY.
-
3. The serial transceiver of claim 1, wherein the one of the first layer elements sends the processed first data to the second layer, and the processed first data is further processed by one of the second layer elements.
-
4. The serial transceiver of claim 3, wherein the one of the second layer elements sends the further processed first data via the second interconnect to the programmable controller.
-
5. The serial transceiver of claim 1, wherein the first data is at least a message, a test pattern, a training pattern, or an error pattern.
-
6. The serial transceiver of claim 1, wherein the egress data is based on the first data processed by the one of the first layer elements, the egress data being transmitted to an external device.
-
7. The serial transceiver of claim 6, wherein the external device includes an external transceiver that includes
a third layer, wherein the third layer is one of a transport layer, a link layer, or a physical layer (PHY), the third layer including third layer elements that process ingress and egress data of the external transceiver, wherein the processed first data is further processed by one of the third layer elements.
-
8. The serial transceiver of claim 7, wherein the external transceiver further includes
a programmable controller of the external transceiver, and a third interconnect that connects the programmable controller of the external transceiver to the third layer, wherein the one of the third layer elements sends the further processed first data via the third interconnect to the programmable controller of the external transceiver.
-
9. The serial transceiver of claim 8, wherein the programmable controller of the external transceiver sends a signal to the programmable controller, the signal being based on the further processed first data.
-
10. The serial transceiver of claim 9, wherein the programmable controller of the external transceiver sends the signal via a sideband.
-
11. The serial transceiver of claim 9, wherein the external transceiver sends the signal via a fourth interconnect through the PHY layer of the external transceiver, wherein the signal is transmitted to the serial transceiver and received by the PHY layer of the serial transceiver.
-
12. A method of programmable distributed data processing in a serial transceiver, the method comprising:
-
receiving ingress data via an ingress channel, wherein the ingress data is serial data; transmitting egress data via an egress channel, wherein the egress data is serial data; processing the ingress data and the egress data with first layer elements in a first layer, wherein the first layer is one of a transport layer, a link layer, or a physical layer (PHY), wherein the serial transceiver includes a first interconnect that connects a programmable microprocessor of the serial transceiver to the first layer; processing the ingress data and the egress data with second layer elements in a second layer, wherein the second layer is another one of the transport layer, the link layer, or the physical layer (PHY), wherein the serial transceiver includes a second interconnect that connects a programmable microprocessor of the serial transceiver to the second layer; selecting the first interconnect for sending first data from a programmable controller to the first layer; sending the first data to the first layer; and processing the first data with one of the first layer elements.
-
-
13. The method of claim 12, wherein the programmable controller is included in the PHY.
-
14. The method of claim 12, further comprising:
-
sending the processed first data to the second layer; and processing the processed first data with one of the second layer elements to obtain further processed first data.
-
-
15. The method of claim 14, further comprising:
sending the further processed first data from the one of the second layer elements via the second interconnect to the programmable controller.
-
16. The method of claim 12, wherein the first data is at least a message, a test pattern, a training pattern, or an error pattern.
-
17. The method of claim 12, wherein the egress data is based on the first data processed by the one of the first layer elements, the method further comprising:
transmitting the egress data to an external device.
-
18. The method of claim 17, wherein the external device includes an external transceiver that includes a third layer, wherein the third layer is one of a transport layer, a link layer, or a physical layer (PHY), the third layer including third layer elements that process ingress and egress data of the external transceiver, the method further comprising:
processing the processed first data with one of the third layer elements to obtain further processed first data.
-
19. The method of claim 18, wherein the external transceiver further includes a programmable controller of the external transceiver, and a third interconnect that connects the programmable controller of the external transceiver to the third layer, the method further comprising:
sending the further processed first data from the one of the third layer elements via the third interconnect to the programmable controller of the external transceiver.
-
20. The method of claim 19, further comprising:
sending a signal from the programmable controller of the external transceiver to the programmable controller, the signal being based on the further processed first data.
-
21. The method of claim 20, wherein the programmable controller of the external transceiver sends the signal via a sideband.
-
22. The method of claim 20, wherein the external transceiver sends the signal via a fourth interconnect through the PHY layer of the external transceiver, wherein the signal is transmitted to the serial transceiver and received by the PHY layer of the serial transceiver.
-
23. A non-transitory computer readable medium storing computer executable instructions for performing a method of programmable distributed data processing in a serial transceiver, the method comprising:
-
receiving ingress data via an ingress channel, wherein the ingress data is serial data; transmitting egress data via an egress channel, wherein the egress data is serial data; processing the ingress data and the egress data with first layer elements in a first layer, wherein the first layer is one of a transport layer, a link layer, or a physical layer (PHY), wherein the serial transceiver includes a first interconnect that connects a programmable microprocessor of the serial transceiver to the first layer; processing the ingress data and the egress data with second layer elements in a second layer, wherein the second layer is another one of the transport layer, the link layer, or the physical layer (PHY), wherein the serial transceiver includes a second interconnect that connects a programmable microprocessor of the serial transceiver to the second layer; selecting the first interconnect for sending first data from a programmable controller to the first layer; sending the first data to the first layer; and processing the first data with one of the first layer elements.
-
-
24. The non-transitory computer readable medium of claim 23, wherein the programmable controller is included in the PHY.
-
25. The non-transitory computer readable medium of claim 23, the method further comprising:
-
sending the processed first data to the second layer; and processing the processed first data with one of the second layer elements to obtain further processed first data.
-
-
26. The non-transitory computer readable medium of claim 25, the method further comprising:
sending the further processed first data from the one of the second layer elements via the second interconnect to the programmable controller.
-
27. The non-transitory computer readable medium of claim 23, wherein the first data is at least a message, a test pattern, a training pattern, or an error pattern.
-
28. The non-transitory computer readable medium of claim 23, wherein the egress data is based on the first data processed by the one of the first layer elements, the method further comprising:
transmitting the egress data to an external device.
-
29. The non-transitory computer readable medium of claim 28, wherein the external device includes an external transceiver that includes a third layer, wherein the third layer is one of a transport layer, a link layer, or a physical layer (PHY), the third layer including third layer elements that process ingress and egress data of the external transceiver, the method further comprising:
processing the processed first data with one of the third layer elements to obtain further processed first data.
-
30. The non-transitory computer readable medium of claim 29, wherein the external transceiver further includes a programmable controller of the external transceiver, and a third interconnect that connects the programmable controller of the external transceiver to the third layer, the method further comprising:
sending the further processed first data from the one of the third layer elements via the third interconnect to the programmable controller of the external transceiver.
-
31. The non-transitory computer readable medium of claim 30, the method further comprising:
sending a signal from the programmable controller of the external transceiver to the programmable controller, the signal being based on the further processed first data.
-
32. The non-transitory computer readable medium of claim 31, wherein the programmable controller of the external transceiver sends the signal via a sideband.
-
33. The non-transitory computer readable medium of claim 31, wherein the external transceiver sends the signal via a fourth interconnect through the PHY layer of the external transceiver, wherein the signal is transmitted to the serial transceiver and received by the PHY layer of the serial transceiver.
Specification