Apparatus and method for an interconnect fabric distributed trace filter
Abstract
An apparatus and method for an interconnect fabric distributed trace filter. For example, one embodiment of a processor comprises: an interconnect fabric; a plurality of fabric agents coupled to operatively couple a corresponding plurality of functional circuits to the interconnect fabric, a first fabric agent of the plurality of fabric agents comprising first debug circuitry to initiate a debug transaction and set a value of one or more bits in a request packet to indicate that the request packet is associated with debug operations; and debug agent circuitry integral to or operatively coupled to one or more channels of the interconnect fabric, the debug agent circuitry to determine that the request packet is associated with the debug operations based on the value of the one or more bits and to responsively perform a first update to a trace log.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A processor, comprising:
an interconnect fabric; a plurality of fabric agents to operatively couple a corresponding plurality of functional circuits to the interconnect fabric, a first fabric agent of the plurality of fabric agents comprising first debug circuitry to initiate a debug transaction and set a value of one or more bits in a request packet to indicate that the request packet is associated with debug operations; and debug agent circuitry integral to or operatively coupled to one or more channels of the interconnect fabric, the debug agent circuitry to determine that the request packet is associated with the debug operations based on the value of the one or more bits and to responsively perform a first update to a trace log.
2 . The processor of claim 1 , further comprising:
a second fabric agent to receive the request packet and store corresponding transaction data in an entry of a transaction tracker, the corresponding transaction data to include the value of the one or more bits in the request packet; the second fabric agent to generate a corresponding response packet, the second fabric agent to locate the entry in the transaction tracker, read the value of the one or more bits from the entry, and responsively set the value of one or more corresponding bits in the response packet.
3 . The processor of claim 2 , wherein the debug agent circuitry is to further determine that the response packet is associated with the debug operations based on the value of the one or more bits in the response packet, and to responsively perform a second update to the trace log.
4 . The processor of claim 2 , wherein at least one of the first debug circuitry and second debug circuitry associated with the second fabric agent comprise:
filter circuitry comprising at least one match register to store one or more bit patterns, the filter circuitry to compare message bits of the request packet or the response packet with the one or more bit patterns to determine whether the request packet or response packet is to be associated with the debug operations.
5 . The processor of claim 4 , wherein the first debug circuitry or the second debug circuitry is to set the value of the one or more bits in the request packet or the response packet when the filter circuitry determines that the request packet or response packet, respectively, is associated with the debug operations.
6 . The processor of claim 5 , wherein the filter circuitry further comprises:
at least one mask register to store a set of mask bits, the filter circuitry to read the one or more mask bits to determine one or more of the message bits of the request packet or the response packet to skip for filtering.
7 . The processor of claim 1 , further comprising:
a cache or memory in which a buffer is to be configured to store the trace log.
8 . The processor of claim 1 , wherein the debug operations include the debug transaction and one or more additional debug transactions.
9 . A method, comprising:
initiating a debug transaction by first debug circuitry of a first fabric agent coupled to an interconnect fabric, initiating the debug transaction including setting a value of one or more bits in a request packet to indicate that the request packet is associated with debug operations; and determining, by debug agent circuitry integral to or operatively coupled to one or more channels of the interconnect fabric, that the request packet is associated with debug operations based on the value of the one or more bits; and responsively performing a first update to a trace log.
10 . The method of claim 9 , further comprising:
receiving, by a second fabric agent coupled to the interconnect fabric, the request packet; storing corresponding transaction data in an entry of a transaction tracker, the entry to include the value of the one or more bits in the request packet; generating, by the second fabric agent, a corresponding response packet, the second fabric agent to locate the entry in the transaction tracker, read the value of the one or more bits from the entry, and responsively set the value of one or more corresponding bits in the response packet.
11 . The method of claim 10 , wherein the debug agent circuitry is to further determine that the response packet is associated with debug operations based on the value of the one or more bits in the response packet, and to responsively perform a second update to the trace log.
12 . The method of claim 10 , further comprising:
comparing, by filter circuitry, message bits of the request packet or the response packet with one or more bit patterns in a match register to determine whether the request packet or response packet is to be associated with the debug operations.
13 . The method of claim 12 , wherein the one or more bits in the request packet or the response packet are to be set when the filter circuitry determines that the request packet or response packet, respectively, is associated with the debug operations.
14 . The method of claim 13 , wherein at least one mask register of the filter circuitry is to store a set of mask bits, the filter circuitry to read the one or more mask bits to determine one or more of the message bits of the request packet or the response packet to skip for filtering.
15 . A machine-readable medium having program code stored thereon which, when executed by a machine, causes the machine to perform operations, comprising:
initiating a debug transaction by first debug circuitry of a first fabric agent coupled to an interconnect fabric, initiating the debug transaction including setting a value of one or more bits in a request packet to indicate that the request packet is associated with debug operations; and determining, by debug agent circuitry integral to or operatively coupled to one or more channels of the interconnect fabric, that the request packet is associated with debug operations based on the value of the one or more bits; and responsively performing a first update to a trace log.
16 . The machine-readable medium of claim 15 , further comprising program code to cause the machine to perform the operations of:
receiving, by a second fabric agent coupled to the interconnect fabric, the request packet; storing corresponding transaction data in an entry of a transaction tracker, the entry to include the value of the one or more bits in the request packet; generating, by the second fabric agent, a corresponding response packet, the second fabric agent to locate the entry in the transaction tracker, read the value of the one or more bits from the entry, and responsively set the value of one or more corresponding bits in the response packet.
17 . The machine-readable medium of claim 16 , wherein the debug agent circuitry is to further determine that the response packet is associated with debug operations based on the value of the one or more bits in the response packet, and to responsively perform a second update to the trace log.
18 . The machine-readable medium of claim 15 , further comprising program code to cause the machine to perform the operations of:
comparing, by filter circuitry, message bits of the request packet or the response packet with one or more bit patterns in a match register to determine whether the request packet or response packet is to be associated with the debug operations.
19 . The machine-readable medium of claim 18 , wherein the one or more bits in the request packet or the response packet are to be set when the filter circuitry determines that the request packet or response packet, respectively, is associated with the debug operations.
20 . The machine-readable medium of claim 19 , wherein at least one mask register of the filter circuitry is to store a set of mask bits, the filter circuitry to read the one or more mask bits to determine one or more of the message bits of the request packet or the response packet to skip for filtering.Join the waitlist — get patent alerts
Track US2025307102A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.