An apparatus includes a processor, a first interface configured to connect to a bus of the apparatus, a second interface configured to communicate over a packet network, and circuitry. The circuitry is configured to, in a first operational mode, exchange data between the processor and one or more remote devices over the packet network, via the second interface, and in a second operational mode, monitor the bus using the first interface, detect a predefined trigger event occurring on the bus and, in response to detecting the trigger event, log one or more transactions on the bus that are adjacent to the trigger event and generate one or more protocol-analysis packets comprising at least part of the logged transactions.
Legal claims defining the scope of protection, as filed with the USPTO.
1. An apparatus, comprising: a first interface, configured to connect to a peripheral bus, and to communicate over the peripheral bus at least with a computer system; a second interface, configured to communicate over a packet network; and circuitry, configured to: in a first operational mode, serve as a Network Interface Controller (NIC) for the computer system, by exchanging data between the computer system and one or more remote devices over the packet network, via the second interface; and in a second operational mode, serve as a Protocol Logic Analyzer (PLA) for the computer system by monitoring the peripheral bus using the first interface, detecting a predefined trigger event occurring on the peripheral bus and, in response to detecting the trigger event, logging one or more transactions on the peripheral bus that are adjacent to the trigger event and generating one or more protocol-analysis packets comprising at least part of the logged transactions, wherein the circuitry comprises one or more common logic units, which are used both when the circuitry serves as a NIC and when the circuitry serves as a PLA.
2. The apparatus according to claim 1 , further comprising an interposer connected to first and second bus devices, wherein the first interface comprises first and second ports, and wherein: an RX input of the first port is connected via the interposer to a TX output of the first bus device; a TX output of the first port is connected via the interposer to an RX input of the second bus device; an RX input of the second port is connected via the interposer to a TX output of the second bus device; and a TX output of the second port is connected via the interposer to an RX input of the first bus device.
3. The apparatus according to claim 2 , wherein the first interface comprises a first loopback connection that connects the RX input and the TX output of the first port, and a second loopback connection that connects the RX input and the TX output of the second port.
4. The apparatus according to claim 1 , wherein the apparatus further comprises a serial bus, and wherein the circuitry is configured to send the protocol-analysis packets over the serial bus.
5. The apparatus according to claim 1 , wherein the circuitry is configured to send the protocol-analysis packets over the packet network via the second interface.
6. The apparatus according to claim 1 , wherein the peripheral bus comprises a Peripheral Component Interconnect Express (PCIe) bus.
7. The apparatus according to claim 1 , wherein the circuitry is configured to encapsulate the logged transactions in Transaction Layer Packets (TLP).
8. The apparatus according to claim 1 , wherein the first interface comprises a loopback connection.
9. A method in a device that comprises a first interface configured to connect to a peripheral bus and to communicate over the peripheral bus at least with a computer system, and a second interface configured to communicate over a packet network, the method comprising: in a first operational mode, operating the device as a Network Interface Controller (NIC) for the computer system, by exchanging data between the computer system and one or more remote devices over the packet network, via the second interface; and in a second operational mode, operating the device as a Protocol Logic Analyzer (PLA) for the computer system, by monitoring the peripheral bus using the first interface, detecting a predefined trigger event occurring on the peripheral bus and, in response to detecting the trigger event, logging one or more transactions on the peripheral bus that are adjacent to the trigger event and generating one or more protocol-analysis packets comprising at least part of the logged transactions, including operating one or more common logic units, which are used both when operating the device as a NIC and when operating the device as a PLA.
10. The method according to claim 9 , wherein the first interface comprises first and second ports, and wherein: an RX input of the first port is connected, via an interposer connected to first and second bus devices, to a TX output of the first bus device; a TX output of the first port is connected via the interposer to an RX input of the second bus device; an RX input of the second port is connected via the interposer to a TX output of the second bus device; and a TX output of the second port is connected via the interposer to an RX input of the first bus device.
11. The method according to claim 10 , wherein the first interface comprises a first loopback connection that connects the RX input and the TX output of the first port, and a second loopback connection that connects the RX input and the TX output of the second port.
12. The method according to claim 9 , and comprising sending the protocol-analysis packets over a serial bus.
13. The method according to claim 9 , and comprising sending the protocol-analysis packets over the packet network via the second interface.
14. The apparatus according to claim 9 , wherein the peripheral bus comprises a Peripheral Component Interconnect Express (PCIe) bus.
15. The method according to claim 9 , and comprising encapsulating the logged transactions in Transaction Layer Packets (TLP).
16. The method according to claim 9 , wherein the first interface comprises a loopback connection.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
January 27, 2019
January 4, 2022
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.