Visible to Intel only — GUID: nik1411172661540
Ixiasoft
Visible to Intel only — GUID: nik1411172661540
Ixiasoft
3.4.1.6. TX Statistics Registers
The TX statistics registers count TX Ethernet traffic and errors. The 64-bit statistics registers are designed to roll over, to ensure timing closure on the FPGA. However, these registers should never roll over if the link is functioning properly. The statistics registers check the size of frames, which includes the following fields:
- Size of the destination address
- Size of the source address
- Size of the data
- Four bytes of CRC
The TX statistics counters module is a synthesis option. The statistics registers are counters that are implemented inside the CSR. When you turn on the Enable TX statistics parameter in the LL 40GbE parameter editor, the counters are implemented in the CSR. When you turn off the Enable TX statistics parameter in the LL 40GbE parameter editor, the counters are not implemented in the CSR, and read access to the counters returns read data equal to 0.
Reading the value of a statistics register does not affect its value. A configuration register at offset 0x845 allows you to clear all of the TX statistics counters.
To ensure that the counters you read are consistent, you should issue a shadow request to create a snapshot of all of the TX statistics registers, by setting bit [2] of the configuration register at offset 0x845. Until you reset this bit, the counters continue to increment but the readable values remain constant.
Address |
Name- |
Description |
Access |
---|---|---|---|
0x800 |
CNTR_TX_FRAGMENTS_LO |
Number of transmitted frames less than 64 bytes and reporting a CRC error (lower 32 bits) |
RO |
0x801 |
CNTR_TX_FRAGMENTS_HI |
Number of transmitted frames less than 64 bytes and reporting a CRC error (upper 32 bits) |
RO |
0x802 |
CNTR_TX_JABBERS_LO |
Number of transmitted oversized frames reporting a CRC error (lower 32 bits) |
RO |
0x803 |
CNTR_TX_JABBERS_HI |
Number of transmitted oversized frames reporting a CRC error (upper 32 bits) |
RO |
0x804 |
CNTR_TX_FCS_LO |
Number of transmitted packets with FCS errors. (lower 32 bits) |
RO |
0x805 |
CNTR_TX_FCS_HI |
Number of transmitted packets with FCS errors. (upper 32 bits) |
RO |
0x806 |
CNTR_TX_CRCERR_LO |
Number of transmitted frames with a frame of length at least 64 reporting a CRC error (lower 32 bits) |
RO |
0x807 |
CNTR_TX_CRCERR_HI |
Number of transmitted frames with a frame of length at least 64 reporting a CRC error (upper 32 bits) |
RO |
0x808 |
CNTR_TX_MCAST_DATA_ERR_LO |
Number of errored multicast frames transmitted, excluding control frames (lower 32 bits) |
RO |
0x809 |
CNTR_TX_MCAST_DATA_ERR_HI |
Number of errored multicast frames transmitted, excluding control frames (upper 32 bits) |
RO |
0x80A |
CNTR_TX_BCAST_DATA_ERR_LO |
Number of errored broadcast frames transmitted, excluding control frames (lower 32 bits) |
RO |
0x80B |
CNTR_TX_BCAST_DATA_ERR_HI |
Number of errored broadcast frames transmitted, excluding control frames (upper 32 bits) |
RO |
0x80C |
CNTR_TX_UCAST_DATA_ERR_LO |
Number of errored unicast frames transmitted, excluding control frames (lower 32 bits) |
RO |
0x80D |
CNTR_TX_UCAST_DATA_ERR_HI |
Number of errored unicast frames transmitted, excluding control frames (upper 32 bits) |
RO |
0x80E |
CNTR_TX_MCAST_CTRL_ERR_LO |
Number of errored multicast control frames transmitted (lower 32 bits) |
RO |
0x80F |
CNTR_TX_MCAST_CTRL_ERR_HI |
Number of errored multicast control frames transmitted (upper 32 bits) |
RO |
0x810 |
CNTR_TX_BCAST_CTRL_ERR_LO |
Number of errored broadcast control frames transmitted (lower 32 bits) |
RO |
0x811 |
CNTR_TX_BCAST_CTRL_ERR_HI |
Number of errored broadcast control frames transmitted (upper 32 bits) |
RO |
0x812 |
CNTR_TX_UCAST_CTRL_ERR_LO |
Number of errored unicast control frames transmitted (lower 32 bits) |
RO |
0x813 |
CNTR_TX_UCAST_CTRL_ERR_HI |
Number of errored unicast control frames transmitted (upper 32 bits) |
RO |
0x814 |
CNTR_TX_PAUSE_ERR_LO |
Number of errored pause frames transmitted (lower 32 bits) |
RO |
0x815 |
CNTR_TX_PAUSE_ERR_HI |
Number of errored pause frames transmitted (upper 32 bits) |
RO |
0x816 |
CNTR_TX_64B_LO |
Number of 64-byte transmitted frames (lower 32 bits), including the CRC field but excluding the preamble and SFD bytes |
RO |
0x817 |
CNTR_TX_64B_HI |
Number of 64-byte transmitted frames (upper 32 bits), including the CRC field but excluding the preamble and SFD bytes |
RO |
0x818 |
CNTR_TX_65to127B_LO |
Number of transmitted frames between 65–127 bytes (lower 32 bits) |
RO |
0x819 |
CNTR_TX_65to127B_HI |
Number of transmitted frames between 65–127 bytes (upper 32 bits) |
RO |
0x81A |
CNTR_TX_128to255B_LO |
Number of transmitted frames between 128 –255 bytes (lower 32 bits) |
RO |
0x81B |
CNTR_TX_128to255B_HI |
Number of transmitted frames between 128 –255 bytes (upper 32 bits) |
RO |
0x81C |
CNTR_TX_256to511B_LO |
Number of transmitted frames between 256 –511 bytes (lower 32 bits) |
RO |
0x81D |
CNTR_TX_256to511B_HI |
Number of transmitted frames between 256 –511 bytes (upper 32 bits) |
RO |
0x81E |
CNTR_TX_512to1023B_LO |
Number of transmitted frames between 512–1023 bytes (lower 32 bits) |
RO |
0x81F |
CNTR_TX_512to1023B_HI |
Number of transmitted frames between 512 –1023 bytes (upper 32 bits) |
RO |
0x820 |
CNTR_TX_1024to1518B_LO |
Number of transmitted frames between 1024–1518 bytes (lower 32 bits) |
RO |
0x821 |
CNTR_TX_1024to1518B_HI |
Number of transmitted frames between 1024–1518 bytes (upper 32 bits) |
RO |
0x822 |
CNTR_TX_1519toMAXB_LO |
Number of transmitted frames of size between 1519 bytes and the number of bytes specified in the MAX_TX_SIZE_CONFIG register (lower 32 bits) |
RO |
0x823 |
CNTR_TX_1519toMAXB_HI |
Number of transmitted frames of size between 1519 bytes and the number of bytes specified in the MAX_TX_SIZE_CONFIG register (upper 32 bits) |
RO |
0x824 |
CNTR_TX_OVERSIZE_LO |
Number of oversized frames (frames with more bytes than the number specified in the MAX_TX_SIZE_CONFIG register) transmitted (lower 32 bits) |
RO |
0x825 |
CNTR_TX_OVERSIZE_HI |
Number of oversized frames (frames with more bytes than the number specified in the MAX_TX_SIZE_CONFIG register) transmitted (upper 32 bits) |
RO |
0x826 |
CNTR_TX_MCAST_DATA_OK_LO |
Number of valid multicast frames transmitted, excluding control frames (lower 32 bits) |
RO |
0x827 |
CNTR_TX_MCAST_DATA_OK_HI |
Number of valid multicast frames transmitted, excluding control frames (upper 32 bits) |
RO |
0x828 |
CNTR_TX_BCAST_DATA_OK_LO |
Number of valid broadcast frames transmitted, excluding control frames (lower 32 bits) |
RO |
0x829 |
CNTR_TX_BCAST_DATA_OK_HI |
Number of valid broadcast frames transmitted, excluding control frames (upper 32 bits) |
RO |
0x82A |
CNTR_TX_UCAST_DATA_OK_LO |
Number of valid unicast frames transmitted, excluding control frames (lower 32 bits) |
RO |
0x82B |
CNTR_TX_UCAST_DATA_OK_HI |
Number of valid unicast frames transmitted, excluding control frames (upper 32 bits) |
RO |
0x82C |
CNTR_TX_MCAST_CTRL_LO |
Number of valid multicast frames transmitted, excluding data frames (lower 32 bits) |
RO |
0x82D |
CNTR_TX_MCAST_CTRL_HI |
Number of valid multicast frames transmitted, excluding data frames (upper 32 bits) |
RO |
0x82E |
CNTR_TX_BCAST_CTRL_LO |
Number of valid broadcast frames transmitted, excluding data frames (lower 32 bits) |
RO |
0x82F |
CNTR_TX_BCAST_CTRL_HI |
Number of valid broadcast frames transmitted, excluding data frames (upper 32 bits) |
RO |
0x830 |
CNTR_TX_UCAST_CTRL_LO |
Number of valid unicast frames transmitted, excluding data frames (lower 32 bits) |
RO |
0x831 |
CNTR_TX_UCAST_CTRL_HI |
Number of valid unicast frames transmitted, excluding data frames (upper 32 bits) |
RO |
0x832 |
CNTR_TX_PAUSE_LO |
Number of valid pause frames transmitted (lower 32 bits) |
RO |
0x833 |
CNTR_TX_PAUSE_HI |
Number of valid pause frames transmitted (upper 32 bits) |
RO |
0x834 |
CNTR_TX_RUNT_LO |
Number of transmitted runt packets (lower 32 bits). The IP core does not transmit frames of length less than nine bytes. The IP core pads frames of length nine bytes to 64 bytes to extend them to 64 bytes. |
RO |
0x835 |
CNTR_TX_RUNT_HI |
Number of transmitted runt packets (upper 32 bits). The IP core does not transmit frames of length less than nine bytes. The IP core pads frames of length nine bytes to 64 bytes to extend them to 64 bytes. |
RO |
0x836 |
CNTR_TX_ST_LO |
Number of transmitted frame starts (lower 32 bits) |
RO |
0x837 |
CNTR_TX_ST_HI |
Number of transmitted frame starts (upper 32 bits) |
RO |
0x838–0x83F |
Reserved |
||
0x840 | TXSTAT_REVID | TX statistics module revision ID. | RO |
0x841 | TXSTAT_SCRATCH | Scratch register available for testing. Default value is 0x08. | RW |
0x842 | TXSTAT_NAME_0 | First 4 characters of IP core variation identifier string "040gMacStats" | RO |
0x843 | TXSTAT_NAME_1 | Next 4 characters of IP core variation identifier string "040gMacStats" | RO |
0x844 | TXSTAT_NAME_2 | Final 4 characters of IP core variation identifier string "040gMacStats" | RO |
0x845 | CNTR_TX_CONFIG |
Bits [2:0]: Configuration of TX statistics counters:
Bits [31:3] are Reserved. |
RW |
0x846 | CNTR_TX_STATUS |
Bits [31:2] are Reserved. |
RO |
0x860 | TxOctetsOK_LO | Number of transmitted payload bytes in frames with no FCS, undersized, oversized, or payload length errors. This register is compliant with section 5.2.2.18 of the IEEE Standard 802.3-2008. This register corresponds to the signals tx_inc_octetsOK[15:0] and tx_inc_octetsOK_valid. |
RO |
0x861 | TxOctetsOK_HI | RO |