The Status and Statistics registers provide an indication of the health of the link and histograms counters to provide classification of the traffic, and error counts.
The status and counters are all read-only.
Some bits are sticky, that is, latching their values high or low once set. This is indicated by the suffix LH (Latched High) or LL (Latched Low).
Status registers are clear on read, counters controlled by a "tick" mechanism.
The counters accumulate their counts in an internal accumulator. A write to the TICK_REG register (or the input port pm_tick is 1'b1) will cause the accumulated counts to be pushed to the readable STAT_*_MSB/LSB registers and simultaneously clears the accumulators. The STAT_*_MSB/LSB registers can then be read. In this way all values stored in the statistics counters represent a snap-shot over the same time-interval.
The STAT_CYCLE_COUNT_MSB/LSB register will contain a count of the number of SERDES clock cycles between TICK_REG register writes. This allows for easy time-interval based statistics. The counters have a default width of 48 bits. The counters saturate to 1s. The values in the counters will be held until the next write to the TICK_REG register.
The addresses shown below for the counters are the addresses of the LSB register, or bits 31:0 of the count. The MSB bits 47:32 of the counter are located at +0x4 from the LSB.
Address | Register Name |
---|---|
0x0200 | STAT_TX_STATUS_REG |
0x0204 | STAT_RX_STATUS_REG |
0x0208 | STAT_STATUS_REG1 |
0x020C | STAT_RX_BLOCK_LOCK_REG |
0x0210 | STAT_RX_LANE_SYNC_REG |
0x0214 | STAT_RX_LANE_SYNC_ERR_REG |
0x0218 | STAT_RX_AM_ERR_REG |
0x021C | STAT_RX_AM_LEN_ERR_REG |
0x0220 | STAT_RX_AM_REPEAT_ERR_REG |
0x0224 | STAT_RX_PCSL_DEMUXED_REG |
0x0228 | STAT_RX_PCS_LANE_NUM_REG1 |
0x022C | STAT_RX_PCS_LANE_NUM_REG2 |
0x0230 | STAT_RX_PCS_LANE_NUM_REG3 |
0x0234 | STAT_RX_PCS_LANE_NUM_REG4 |
0x0238 | STAT_RX_BIP_OVERRIDE_REG |
0x023C | STAT_TX_OTN_STATUS_REG |
0x0240–0x0254 | Reserved |
0x0258 | STAT_AN_STATUS_REG |
0x025C | STAT_AN_ABILITY_REG |
0x0260 | STAT_AN_LINK_CTL_REG_1 |
0x0264 | STAT_LT_STATUS_REG1 |
0x0268 | STAT_LT_STATUS_REG2 |
0x026C | STAT_LT_STATUS_REG3 |
0x0270 | STAT_LT_STATUS_REG4 |
0x0274 | STAT_LT_COEFFICIENT0_REG |
0x0278 | STAT_LT_COEFFICIENT1_REG |
0x027C | STAT_AN_LINK_CTL_REG_2 |
0x1004 | STAT_RSFEC_STATUS_REG |
0x1018 | STAT_RSFEC_LANE_MAPPING_REG |
0x1044 | STAT_TX_OTN_RSFEC_STATUS_REG |
Histogram/Counter Registers 1 | |
0x02B0 | TICK_REG |
0x02B8 | STAT_CYCLE_COUNT |
0x02C0 | STAT_RX_BIP_ERR_0 |
0x02C8 | STAT_RX_BIP_ERR_1 |
0x02D0 | STAT_RX_BIP_ERR_2 |
0x02D8 | STAT_RX_BIP_ERR_3 |
0x02E0 | STAT_RX_BIP_ERR_4 |
0x02E8 | STAT_RX_BIP_ERR_5 |
0x02F0 | STAT_RX_BIP_ERR_6 |
0x02F8 | STAT_RX_BIP_ERR_7 |
0x0300 | STAT_RX_BIP_ERR_8 |
0x0308 | STAT_RX_BIP_ERR_9 |
0x0310 | STAT_RX_BIP_ERR_10 |
0x0318 | STAT_RX_BIP_ERR_11 |
0x0320 | STAT_RX_BIP_ERR_12 |
0x0328 | STAT_RX_BIP_ERR_13 |
0x0330 | STAT_RX_BIP_ERR_14 |
0x0338 | STAT_RX_BIP_ERR_15 |
0x0340 | STAT_RX_BIP_ERR_16 |
0x0348 | STAT_RX_BIP_ERR_17 |
0x0350 | STAT_RX_BIP_ERR_18 |
0x0358 | STAT_RX_BIP_ERR_19 |
0x0360 | STAT_RX_FRAMING_ERR_0 |
0x0368 | STAT_RX_FRAMING_ERR_1 |
0x0370 | STAT_RX_FRAMING_ERR_2 |
0x0378 | STAT_RX_FRAMING_ERR_3 |
0x0380 | STAT_RX_FRAMING_ERR_4 |
0x0388 | STAT_RX_FRAMING_ERR_5 |
0x0390 | STAT_RX_FRAMING_ERR_6 |
0x0398 | STAT_RX_FRAMING_ERR_7 |
0x03A0 | STAT_RX_FRAMING_ERR_8 |
0x03A8 | STAT_RX_FRAMING_ERR_9 |
0x03B0 | STAT_RX_FRAMING_ERR_10 |
0x03B8 | STAT_RX_FRAMING_ERR_11 |
0x03C0 | STAT_RX_FRAMING_ERR_12 |
0x03C8 | STAT_RX_FRAMING_ERR_13 |
0x03D0 | STAT_RX_FRAMING_ERR_14 |
0x03D8 | STAT_RX_FRAMING_ERR_15 |
0x03E0 | STAT_RX_FRAMING_ERR_16 |
0x03E8 | STAT_RX_FRAMING_ERR_17 |
0x03F0 | STAT_RX_FRAMING_ERR_18 |
0x03F8 | STAT_RX_FRAMING_ERR_19 |
0x0400–0x0410 | Reserved |
0x0418 | STAT_RX_BAD_CODE |
0x0420 | Reserved |
0x0428 | Reserved |
0x0430 | Reserved |
0x0438 | Reserved |
0x0440 | Reserved |
0x0448 | Reserved |
0x0450 | Reserved |
0x0458 | STAT_TX_FRAME_ERROR |
0x0460 | Reserved |
0x0500 | STAT_TX_TOTAL_PACKETS |
0x0508 | STAT_TX_TOTAL_GOOD_PACKETS |
0x0510 | STAT_TX_TOTAL_BYTES |
0x0518 | STAT_TX_TOTAL_GOOD_BYTES |
0x0520 | STAT_TX_PACKET_64_BYTES |
0x0528 | STAT_TX_PACKET_65_127_BYTES |
0x0530 | STAT_TX_PACKET_128_255_BYTES |
0x0538 | STAT_TX_PACKET_256_511_BYTES |
0x0540 | STAT_TX_PACKET_512_1023_BYTES |
0x0548 | STAT_TX_PACKET_1024_1518_BYTES |
0x0550 | STAT_TX_PACKET_1519_1522_BYTES |
0x0558 | STAT_TX_PACKET_1523_1548_BYTES |
0x0560 | STAT_TX_PACKET_1549_2047_BYTES |
0x0568 | STAT_TX_PACKET_2048_4095_BYTES |
0x0570 | STAT_TX_PACKET_4096_8191_BYTES |
0x0578 | STAT_TX_PACKET_8192_9215_BYTES |
0x0580 | STAT_TX_PACKET_LARGE |
0x0588 | STAT_TX_PACKET_SMALL |
0x0590–0x05B0 | Reserved |
0x05B8 | STAT_TX_BAD_FCS |
0x05C0 | Reserved |
0x05C8 | Reserved |
0x05D0 | STAT_TX_UNICAST |
0x05D8 | STAT_TX_MULTICAST |
0x05E0 | STAT_TX_BROADCAST |
0x05E8 | STAT_TX_VLAN |
0x05F0 | STAT_TX_PAUSE |
0x05F8 | STAT_TX_USER_PAUSE |
0x0600 | Reserved |
0x0608 | STAT_RX_TOTAL_PACKETS |
0x0610 | STAT_RX_TOTAL_GOOD_PACKETS |
0x0618 | STAT_RX_TOTAL_BYTES |
0x0620 | STAT_RX_TOTAL_GOOD_BYTES |
0x0628 | STAT_RX_PACKET_64_BYTES |
0x0630 | STAT_RX_PACKET_65_127_BYTES |
0x0638 | STAT_RX_PACKET_128_255_BYTES |
0x0640 | STAT_RX_PACKET_256_511_BYTES |
0x0648 | STAT_RX_PACKET_512_1023_BYTES |
0x0650 | STAT_RX_PACKET_1024_1518_BYTES |
0x0658 | STAT_RX_PACKET_1519_1522_BYTES |
0x0660 | STAT_RX_PACKET_1523_1548_BYTES |
0x0668 | STAT_RX_PACKET_1549_2047_BYTES |
0x0670 | STAT_RX_PACKET_2048_4095_BYTES |
0x0678 | STAT_RX_PACKET_4096_8191_BYTES |
0x0680 | STAT_RX_PACKET_8192_9215_BYTES |
0x0688 | STAT_RX_PACKET_LARGE |
0x0690 | STAT_RX_PACKET_SMALL |
0x0698 | STAT_RX_UNDERSIZE |
0x06A0 | STAT_RX_FRAGMENT |
0x06A8 | STAT_RX_OVERSIZE |
0x06B0 | STAT_RX_TOOLONG |
0x06B8 | STAT_RX_JABBER |
0x06C0 | STAT_RX_BAD_FCS |
0x06C8 | STAT_RX_PACKET_BAD_FCS |
0x06D0 | STAT_RX_STOMPED_FCS |
0x06D8 | STAT_RX_UNICAST |
0x06E0 | STAT_RX_MULTICAST |
0x06E8 | STAT_RX_BROADCAST |
0x06F0 | STAT_RX_VLAN |
0x06F8 | STAT_RX_PAUSE |
0x0700 | STAT_RX_USER_PAUSE |
0x0708 | STAT_RX_INRANGEERR |
0x0710 | STAT_RX_TRUNCATED |
0x0718 | STAT_OTN_TX_JABBER |
0x0720 | STAT_OTN_TX_OVERSIZE |
0x0728 | STAT_OTN_TX_UNDERSIZE |
0x0730 | STAT_OTN_TX_TOOLONG |
0x0738 | STAT_OTN_TX_FRAGMENT |
0x0740 | STAT_OTN_TX_PACKET_BAD_FCS |
0x0748 | STAT_OTN_TX_STOMPED_FCS |
0x0750 | STAT_OTN_TX_BAD_CODE |
0x0758–0x07FF | Reserved |
0x1008 | STAT_RX_RSFEC_CORRECTED_CW_INC |
0x1010 | STAT_RX_RSFEC_UNCORRECTED_CW_INC |
0x101C | STAT_RX_RSFEC_ERR_COUNT0_INC |
0x1024 | STAT_RX_RSFEC_ERR_COUNT1_INC |
0x102C | STAT_RX_RSFEC_ERR_COUNT2_INC |
0x1034 | STAT_RX_RSFEC_ERR_COUNT3_INC |
0x103C | STAT_RX_RSFEC_CW_INC |
|