EQOS_MAC Registers (Edit Done with Comments)
Ethernet GMAC has the following EQOS_MAC registers.
MAC_Configuration
- Description: The MAC Configuration Register establishes the operating mode of the MAC.
- Size: 32 bits
- Offset: 0x0
Bits | Name | Memory Access | Description |
---|---|---|---|
31 | ARPEN | R/W | ARP Offload Enabled When this bit is set, the MAC can recognize an incoming ARP request packet and schedules the ARP packet for transmission. It forwards the ARP packet to the application and also indicates the events in the Rx Status. When this bit is reset, the MAC receiver does not recognize any ARP packet and indicates them as Type frame in the Rx Status. This bit is available only when the Enable IPv4 ARP Offload is selected. Values:
|
30:28 | SARC | R/W | Source Address Insertion or Replacement Control This field controls the source address insertion or replacement for all transmitted packets. Bit 30 specifies which MAC Address register (0 or 1) is used for source address insertion or replacement based on the values of Bits[29:28]: 2'b0x:
2'b10:
2'b11:
Note: Changes to this field take
effect only on the start of a packet. If you write to this
register field when a packet is being transmitted, only the
subsequent packet can use the updated value, that is, the
current packet does not use the updated
value. Values:
|
27 | IPC | R/W | Checksum Offload When set, this bit enables the IPv4 header checksum checking and IPv4 or IPv6 TCP, UDP, or ICMP payload checksum checking. When this bit is reset, the COE function in the receiver is disabled. The Layer 3 and Layer 4 Packet Filter and Enable Split Header features automatically select the IPC Full Checksum Offload Engine on the Receive side. When any of these features are enabled, you must set the IPC bit. Values:
|
26:24 | IPG | R/W |
Inter-Packet Gap These bits control the minimum IPG between packets during transmission. This range of minimum IPG is valid in full-duplex mode. In the half-duplex mode, the minimum IPG can be configured only for 64-bit times (IPG = 100). Lower values are not considered. When a JAM pattern is being transmitted because of back pressure activation, the MAC does not consider the minimum IPG. This function (IPG less than 96bit times) is valid only when EIPGEN bit in MAC_Ext_Configuration register is reset. When EIPGEN is set, then the minimum IPG (greater than 96 bit times) is controlled as per the description given in EIPG field in MAC_Ext_Configuration register. Values:
|
23 | GPSLCE | R/W | Giant Packet Size Limit Control Enabled When this bit is set, the MAC considers the value in GPSL field in MAC_Ext_Configuration register to declare a received packet as Giant packet. This field must be programmed to more than 1518 bytes. Otherwise, the MAC considers 1518 bytes as giant packet limit. When this bit is reset, the MAC considers a received packet as Giant packet when its size is greater than 1518 bytes (1522 bytes for tagged packet). The watchdog timeout limit. Jumbo Packet Enable and 2KPacket Enable have higher precedence over this bit, that is the MAC considers a received packet as Giant packet when its size is greater than 9018 bytes (9022 bytes for tagged packet) with Jumbo Packet Enabled and greater than 2000 bytes with 2K Packet Enabled. The watchdog timeout, if enabled, terminates the received packet when watchdog limit is reached. Therefore, the programmed giant packet limit should be less than the watchdog limit to get the giant packet status. Values:
|
22 | S2KP | R/W | IEEE 802.3 as Support for 2K Packets When this bit is set, the MAC considers all packets with up to 2,000 bytes in length as normal packets. When the JE bit is not set, the MAC considers all received packets of size more than 2K bytes as Giant packets. When this bit is reset and the JE bit is not set, the MAC considers all received packets of size more than 1518 bytes (1522 bytes for tagged) as giant packets. Note: When the JE bit is set, setting this
bit has no effect on the giant packet
status. Values:
|
21 | CST | R/W |
CRC stripping for Type packets When this bit is set, the last four bytes (FCS) of all packets of Ether type (type field greater than 1536) are stripped and dropped before forwarding the packet to the application. Note: For information about how the
settings of the ACS bit and this bit impact the packet
length, see the Table, Packet Length based on the CST and
ACS Bits.
Values:
|
20 | ACS | R/W | Automatic Pad or CRC Stripping When this bit is set, the MAC strips the Pad or FCS field on the incoming packets only if the value of the length field is less than 1536 bytes. All received packets with length field greater than or equal to 1536 bytes are passed to the application without stripping the Pad or FCS field. When this bit is reset, the MAC passes all incoming packets to the application, without any modification. Values:
|
19 | WD | R/W | Watchdog Disabled When this bit is set, the MAC disables the watchdog timer on the receiver. The MAC can receive packets of up to 16,383 bytes. When this bit is reset, the MAC does not allow more than 2,048 bytes (10,240 if JE is set high) of the packet being received. The MAC cuts off any bytes received after 2,048 bytes. Values:
|
18 | BE | R/W | Packet Burst Enabled When this bit is set, the MAC allows packet bursting during transmission in the GMII half-duplex mode. Values:
|
17 | JD | R/W | Jabber Disabled When this bit is set, the MAC disables the jabber timer on the transmitter. The MAC can transfer packets of up to 16,383 bytes. When this bit is reset, if the application sends more than 2,048 bytes of data (10,240 if JE is set high) during transmission, the MAC does not send rest of the bytes in that packet. Values:
|
16 | JE | R/W | Jumbo Packet Enabled When this bit is set, the MAC allows jumbo packets of 9018 bytes (9022 bytes for VLAN tagged packets) without reporting a giant packet error in the Rx packet status. Values:
|
15 | PS | *Varies | Port Select This bit selects the Ethernet line speed. This bit, along with Bit14, selects the exact line speed. In the 10/100 Mbps-only (always 1) or 1000 Mbps-only (always 0) configurations, this bit is read-only (RO) with appropriate value. In default 10/100/1000 Mbps configurations, this bit is read-write (R/W). The mac_speed_o[1] signal reflects the value of this bit. Values:
|
14 | FES | R/W | Speed This bit selects the speed mode. The mac_speed_o[0] signal reflects the value of this bit. Values:
|
13 | DM | *Varies | Duplex Mode When this bit is set, the MAC operates in the full-duplex mode in which it can transmit and receive simultaneously. This bit is RO with default value of 1'b1 in the full-duplex-only configurations. Values:
|
12 | LM | R/W | Loopback Mode When this bit is set, the MAC operates in the loopback mode at GMII or MII. The (G)MII Rx clock input (clk_rx_i) is required for the loopback to work properly. This is because the Tx clock is not internally looped back. Values:
|
11 | ECRSFD | R/W | Enable Carrier Sense Before Transmission in Full-Duplex
Mode When this bit is set, the MAC transmitter checks the CRS signal before packet transmission in the full-duplex mode. The MAC starts the transmission only when the CRS signal is low. When this bit is reset, the MAC transmitter ignores the status of the CRS signal. Values:
|
10 | DO | R/W | Disable Receive Own When this bit is set, the MAC disables the reception of packets when the gmii_txen_o is asserted in the half-duplex mode. When this bit is reset, the MAC receives all packets given by the PHY. This bit is not applicable in the full-duplex mode. Values:
|
9 | DCRS | R/W | Disable Carrier Sense During Transmission When this bit is set, the MAC transmitter ignores the (G) MII CRS signal during packet transmission in the half-duplex mode. As a result, no errors are generated because of Loss of Carrier or No Carrier during transmission. When this bit is reset, the MAC transmitter generates errors because of Carrier Sense. The MAC can even abort the transmission. Values:
|
8 | DR | R/W | Disable Retry When this bit is set, the MAC attempts only one transmission. When a collision occurs on the GMII or MII interface, the MAC ignores the current packet transmission and reports a Packet Abort with excessive collision error in the Tx packet status. When this bit is reset, the MAC retries based on the settings of the BL field. This bit is applicable only in the half-duplex mode. Values:
|
7 | Reserved_7 | R | Reserved |
6:5 | BL | R/W | Back-Off Limit The back-off limit determines the random integer number (r) of slot time delays (4,096 bit times for 1000/2500 Mbps; 512 bit times for 10/100 Mbps) for which the MAC waits before rescheduling a transmission attempt during retries after a collision. n = retransmission attempt. The random integer takes the value in the range 0 <= r < 2^k This bit is applicable only in the half-duplex mode. Values:
|
4 | DC | R/W | Deferral Check When this bit is set, the deferral check function is enabled in the MAC. The MAC issues a Packet Abort status, along with the excessive deferral error bit set in the Tx packet status, when the Tx state machine is deferred for more than 24,288 bit times in 10 or 100 Mbps mode. If the MAC is configured for 1000/2500 Mbps operation, the threshold for deferral is 155,680 bits times. Deferral begins when the transmitter is ready to transmit, but it is prevented because of an active carrier sense signal (CRS) on GMII or MII. The defer time is not cumulative. For example, if the transmitter defers for 10,000 bit times because the CRS signal is active and the CRS signal becomes inactive, the transmitter transmits and collision happens. Because of collision, the transmitter needs to back off and then defer again after back off completion. In such a scenario, the deferral timer is reset to 0, and it is restarted. When this bit is reset, the deferral check function is disabled and the MAC defers until the CRS signal goes inactive. This bit is applicable only in the half-duplex mode. Values:
|
3:2 | PRELEN | R/W | Preamble Length for Transmit packets These bits control the number of preamble bytes that are added to the beginning of every Tx packet. The preamble reduction occurs only when the MAC is operating in the full-duplex mode. Values:
|
1 | TE | R/W | Transmitter Enable When this bit is set, the Tx state machine of the MAC is enabled for transmission on the GMII or MII interface. When this bit is reset, the MAC Tx state machine is disabled after it completes the transmission of the current packet. The Tx state machine does not transmit any more packets. Values:
|
0 | RE | R/W | Receiver Enabled When this bit is set, the Rx state machine of the MAC is enabled for receiving packets from the GMII or MII interface. When this bit is reset, the MAC Rx state machine is disabled after it completes the reception of the current packet. The Rx state machine does not receive any more packets from the GMII or MII interface. Values:
|
MAC_Ext_Configuration
- Description: The MAC Extended Configuration Register establishes the operating mode of the MAC.
- Size:32 bits
- Offset: 0x4
Bits | Name | Memory Access | Description |
---|---|---|---|
31 | FHE | R/W | Flexible Header Enable When this is set then it is expected that all the incoming packets from the Line to have 4B Flexible Header in the Rx path (except for the pause and PFC packets). Similarly, in the Tx path all the packets from application are expected to have 4B Flexible header. The position of the Flexible Header is always fixed at 12 bytes from the beginning of the packet (after MAC DA/SA). Values:
|
30 | APDIM | R/W | ARP Packet Drop if IP Address Mismatch When this bit is set, Packet for which Target Protocol Address does not match IPv4 address is dropped in the MTL layer. When this bit is reset, when target Protocol Address does not match, packet is forwarded to MTL maintaining backward compatibility Values:
|
29:25 | EIPG | R/W | Extended Inter-Packet Gap The value in this field is
applicable when the EIPGEN bit is set. This field (as Most
Significant bits), along with IPG field in MAC_Configuration
register, gives the minimum IPG greater than 96 bit times in
steps of 8 bit times: {EIPG, IPG}
|
24 | EIPGEN | R/W | Extended Inter-Packet Gap Enable When this bit is set, the MAC interprets EIPG field and IPG field in MAC_Configuration register together as minimum IPG greater than 96 bit times in steps of 8 bit times. When this bit is reset, the MAC ignores EIPG field and interprets IPG field in MAC_Configuration register as minimum IPG less than or equal to 96 bit times in steps of 8 bit times.: Note: Enable the extended Inter-Packet Gap
feature only when operating in Full-Duplex mode. There might
be undesirable effects on back-pressure function and frame
transmission if it is enabled in Half-Duplex
mode. Values:
|
23 | Reserved_23 | R | Reserved |
22:20 | HDSMS | R/W | Maximum Size for Splitting the Header Data These bits indicate the maximum header size allowed for splitting the header data in the received packet. Values:
|
19 | PDC | R/W | Packet Duplication Control When this bit is set, the received packet with Multicast/Broadcast Destination address is routed to multiple Receive DMA Channels. Values:
|
18 | USP | R/W | Unicast Slow Protocol Packet Detect When this bit is set, the MAC detects the Slow Protocol packets with unicast address of the station specified in the MAC_Address0_High and MAC_Address0_Low registers. The MAC also detects the Slow Protocol packets with the Slow Protocols multicast address (01-80-C2-00-00-02). When this bit is reset, the MAC detects only Slow Protocol packets with the Slow Protocol multicast address specified in the IEEE 802.3-2015, Section 5. Values:
|
17 | SPEN | R/W | Slow Protocol Detection Enabled When this bit is set, MAC processes the Slow Protocol packets (Ether Type 0x8809) and provides the Slow Protocol Sub-Type and Code fields in Rx status. When this bit is reset, the MAC forwards all error-free Slow Protocol packets to the application. The MAC considers such packets as normal Type packets. Values:
|
16 | DCRCC | R/W | Disable CRC Checking for Received Packets When this bit is set, the MAC receiver does not check the CRC field in the received packets. When this bit is reset, the MAC receiver always checks the CRC field in the received packets. Values:
|
15:14 | Reserved_15_14 | R | Reserved |
13:0 | GPSL | R/W | Giant Packet Size Limit If the received packet size is greater than the value programmed in this field in units of bytes, the MAC declares the received packet as Giant packet. The value programmed in this field must be greater than or equal to 1518 bytes. Any other programmed value is considered as 1518 bytes. For VLAN tagged packets, the MAC adds 4 bytes to the programmed value. When the Enable Double VLAN Processing option is selected, the MAC adds 8 bytes to the programmed value for double VLAN tagged packets. The value in this field is applicable when the GPSLCE bit is set in MAC_Configuration register. |
MAC_Packet_Filter
Description: The MAC Packet Filter register contains the filter controls for receiving packets. Some of the controls from this register go to the address check block of the MAC which performs the first level of address filtering. The second level of filtering is performed on the incoming packet based on other controls such as Pass Bad Packets and Pass Control Packets.
- Size: 32 bits
- Offset: 0x8
Bits | Name | Memory Access | Description |
---|---|---|---|
31 | RA | R/W | Receive All When this bit is set, the MAC Receiver module passes all received packets to the application, irrespective of whether they pass the address filter or not. The result of the SA or DA filtering is updated (pass or fail) in the corresponding bit in the Rx Status Word. When this bit is reset, the Receiver module passes only those packets to the application that passes the SA or DA address filter. Values:
|
30:22 | Reserved_30_22 | R | Reserved |
21 | DNTU | R/W |
Drop Non-TCP/UDP over IP Packets When this bit is set, the MAC drops the non-TCP or UDP over IP packets. The MAC forward only those packets that are processed by the Layer 4 filter. When this bit is reset, the MAC forwards all non-TCP or UDP over IP packets. Values:
|
20 | IPFE | R/W |
Layer 3and Layer 4 Filter Enable When this bit is set, the MAC drops packets that do not match the enabled Layer 3 and Layer 4 filters. If Layer 3 or Layer 4 filters are not enabled for matching, this bit does not have any effect. When this bit is reset, the MAC forwards all packets irrespective of the match status of the Layer 3 and Layer 4 fields. Values:
|
19:17 | Reserved_19_17 | R | Reserved |
16 | VTFE | R/W | VLAN Tag Filter Enabled When this bit is set, the MAC drops the VLAN tagged packets that do not match the VLAN Tag. When this bit is reset, the MAC forwards all packets irrespective of the match status of the VLAN Tag. Values:
|
15:11 | Reserved_15_11 | R | Reserved |
10 | HPF | R/W | Hash or Perfect Filter When this bit is set, the address filter passes a packet if it matches either the perfect filtering or hash filtering as set by the HMC or HUC bit. When this bit is reset and the HUC or HMC bit is set, the packet is passed only if it matches the Hash filter. Values:
|
9 | SAF | R/W | Source Address Filter Enable When this bit is set, the MAC compares the SA field of the received packets with the values programmed in the enabled SA registers. If the comparison fails, the MAC drops the packet. When this bit is reset, the MAC forwards the received packet to the application with updated SAF bit of the Rx Status depending on the SA address comparison. Note: According to the IEEE specification, Bit 47 of the SA is
reserved. However, in DWC_ether_qos, the MAC compares all 48
bits. The software driver should take this into
consideration while programming the MAC address registers
for SA. Values:
|
8 | SAIF | R/W | SA Inverse Filtering When this bit is set, the Address Check block operates in the inverse filtering mode for SA address comparison. If the SA of a packet matches the values programmed in the SA registers, it is marked as failing the SA Address filter. When this bit is reset, if the SA of a packet does not match the values programmed in the SA registers, it is marked as failing the SA Address filter. Values:
|
7:6 | PCF | R/W | Pass Control Packets These bits control the forwarding of all control packets (including unicast and multicast Pause packets). Values:
|
5 | DBF | R/W | Disable Broadcast Packets When this bit is set, the AFM module blocks all the incoming broadcast packets. In addition, it overrides all other filter settings. When this bit is reset, the AFM module passes all received broadcast packets. Values:
|
4 | PM | R/W | Pass All Multicast When this bit is set, it indicates that all the received packets with a multicast destination address (first bit in the destination address field is "1") are passed. When this bit is reset, filtering of multicast packet depends on HMC bit. Values:
|
3 | DAIF | R/W |
DA Inverse Filtering When this bit is set, the Address Check block operates in inverse filtering mode for the DA address comparison for both unicast and multicast packets. When this bit is reset, normal filtering of packets is performed. Values:
|
2 | HMC | R/W |
Hash Multicast When this bit is set, the MAC performs the destination address filtering of received multicast packets according to the hash table. When this bit is reset, the MAC performs the perfect destination address filtering for multicast packets, that is, it compares the DA field with the values programmed in DA registers. Values:
|
1 | HUC | R/W | Hash Unicast When this bit is set, the MAC performs the destination address filtering of unicast packets according to the hash table. When this bit is reset, the MAC performs a perfect destination address filtering for unicast packets, that is, it compares the DA field with the values programmed in DA registers. Values:
|
0 | PR | R/W |
Promiscuous Mode When this bit is set, the Address Filtering module passes all incoming packets irrespective of the destination or source address. The SA or DA Filter Fails status bits of the Rx Status Word are always cleared when PR is set. Values:
|
MAC_Watchdog_Timeout
- Description: The Watchdog Timeout register controls the watchdog timeout for received packets.
- Size: 32 bits
- Offset: 0xc
Bits | Name | Memory Access | Description |
---|---|---|---|
31:9 | Reserved_31_9 | R | Reserved |
8 | PWE | R/W | Programmable Watchdog Enable When this bit is set and the WD bit of the MAC_Configuration register is reset, the WTO field is used as watchdog timeout for a received packet. When this bit is cleared, the watchdog timeout for a received packet is controlled by setting of WD and JE bits in MAC_Configuration register. Values:
|
7:4 | Reserved_7_4 | R | Reserved |
3:0 | WTO | R/W |
Watchdog Timeout When the PWE bit is set and the WD bit of the MAC_Configuration register is reset, this field is used as watchdog timeout for a received packet. If the length of a received packet exceeds the value of this field, such packet is terminated and declared as an error packet. Note: When the PWE bit is set, the value
in this field should be more than 1,522 (0x05F2). Otherwise,
the IEEE 802.3-specified valid tagged packets are declared
as error packets and then dropped.
Values:
|
MAC_Hash_Table_Reg0
- Description: The Hash Table Register 0 contains the first 32 bits of the hash table, when the width of the hash table is 128 or 256 bits. You can specify the width of the hash table by using the Hash Table Size option in core Consultant.
- Size: 32 bits
- Offset: 0x10
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | HT31T0 | R/W | MAC Hash Table First 32 Bits This field contains the first 32 Bits[0:31] of the Hash table. |
MAC_Hash_Table_Reg1
- Description: The Hash Table Register 1 contains the second 32 bits of the hash table. You can specify the width of the hash table by using the Hash Table Size option in core Consultant.
- Size:32 bits
- Offset: 0x14
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | HT63T32 | R/W | MAC Hash Table Second 32 Bits This field contains the second 32Bits [63:32] of the Hash table. |
MAC_Hash_Table_Reg2
- Description: The Hash Table Register 2 contains the third 32 bits of the hash table. You can specify the width of the hash table by using the Hash Table Size option in core Consultant.
- Size: 32 bits
- Offset: 0x18
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | HT95T64 | R/W | MAC Hash Table Third 32 Bits This field contains the third 32Bits [95:64] of the Hash table. |
MAC_Hash_Table_Reg3
- Description: The Hash Table Register 3 contains the fourth 32 bits of the hash table. You can specify the width of the hash table by using the Hash Table Size option in core Consultant.
- Size:32 bits
- Offset: 0x1c
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | HT127T96 | R/W | MAC Hash Table Fourth 32 Bits This field contains the fourth 32 Bits[127:96] of the Hash table. |
MAC_Hash_Table_Reg4
- Description: The Hash Table Register 4 contains the fifth 32 bits of the hash table. You can specify the width of the hash table by using the Hash Table Size option in core Consultant.
- Size: 32 bits
- Offset: 0x20
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | HT159T128 | R/W | MAC Hash Table Fifth 32 Bits This field contains the fifth 32 Bits [159:128] of the Hash table. |
MAC_Hash_Table_Reg5
- Description: The Hash Table Register 5 contains the sixth 32 bits of the hash table. You can specify the width of the hash table by using the Hash Table Size option in core Consultant.
- Size: 32 bits
- Offset: 0x24
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | HT191T160 | R/W | MAC Hash Table Sixth 32 Bits This field contains the sixth 32 Bits[191:160] of the Hash table. |
MAC_Hash_Table_Reg6
- Description: The Hash Table Register 6 contains the seventh 32 bits of the hash table. You can specify the width of the hash table by using the Hash Table Size option in core Consultant
- Size: 32 bits
- Offset: 0x28
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | HT223T192 | R/W | MAC Hash Table Seventh 32 Bits This field contains the seventh 32 Bits [223:192] of the Hash table. |
MAC_Hash_Table_Reg7
- Description: The Hash Table Register 7 contains the eighth 32 bits of the hash table. You can specify the width of the hash table by using the Hash Table Size option in core Consultant.
- Size: 32 bits
- Offset: 0x2c
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | HT255T224 | R/W | MAC Hash Table Eighth 32 Bits This field contains the eighth 32 Bits [255:224] of the Hash table. |
MAC_VLAN_Tag_Ctrl
- Description: This register is the redefined format of the MAC VLAN Tag Register. It is used for indirect addressing. It contains the address offset, command type and Busy Bit for CSR access of the Per VLAN Tag registers.
- Size: 32 bit
- Offset: 0x50
Bits | Name | Memory Access | Description |
---|---|---|---|
31 | EIVLRXS | R/W | Enable Inner VLAN Tag in Rx Status When this bit is set, the MAC provides the inner VLAN Tag in the Rx status. When this bit is reset, the MAC does not provide the inner VLAN Tag in Rx status. Values:
|
30 | Reserved_30 | R | Reserved |
29:28 | EIVLS | R/W | Enable Inner VLAN Tag Stripping on Receive This field indicates the stripping operation on inner VLANTag in received packet. Values:
|
27 | ERIVLT | R/W | Enable Inner VLAN Tag Comparison When this bit, VTHMbit and the EDVLP field are set, the MAC receiver enables VLAN Hash filtering operation on the inner VLAN Tag (if present). When this bit is reset and VTHM bit is set, the MAC receiver enables VLAN Hash filtering operation on the outer VLAN Tag (if present). The ERSVLM bit and DOVLTC bit determines which VLAN type is enabled for filtering. Values:
|
26 | EDVLP | R/W | Enable Double VLAN Processing When this bit is set, the MAC enables processing of up to two VLAN Tags on Tx and Rx (if present). When this bit is reset, the MAC enables processing of up to one VLAN Tag on Tx and Rx (if present). Values:
|
25 | VTHM | R/W |
VLAN Tag Hash Table Match Enable When this bit is set, the most significant four bits of CRC of VLAN Tag are used to index the content of the MAC_VLAN_Hash_Table register. A value of 1 in the VLAN Hash Table register, corresponding to the index, indicates that the packet matched the VLAN hash table. When the ETVbit is set, the CRC of the 12-bit VLAN Identifier (VID) is used for comparison. When the ETV bit is reset, the CRC of the 16-bit VLAN tag is used for comparison. When this bit is reset, the VLAN Hash Match operation is not performed. Values:
|
24 | EVLRXS | R/W | Enable VLAN Tag in Rx status When this bit is set, MAC provides the outer VLAN Tag in the Rx status. When this bit is reset, the MAC does not provide the outer VLAN Tag in Rx status. Values:
|
23 | Reserved_23 | R | Reserved |
22:21 | EVLS | R/W | Enable VLAN Tag Stripping on Receive This field indicates the stripping operation on the outer VLAN Tag in received packet. Values:
|
20 | DOVLTC | R/W | Disable VLAN Type Check for VLAN Hash Filtering When this bit is set, the MAC VLAN Hash Filter does not check whether the VLAN Tag specified by the ERIVLT bit is of type S-VLAN or C-VLAN. When this bit is reset, the MAC VLAN Hash Filter filters or matches the VLAN Tag specified by the ERIVLT bit only when VLAN Tag type is similar to the one specified by the ERSVLM bit. Values:
|
19 | ERSVLM | R/W |
Enable Receive S-VLAN Match for VLAN Hash Filtering When this bit is set, the MAC receiver enables VLAN Hash filtering or matching for S-VLAN (Type = 0x88A8) packets. When this bit is reset, the MAC receiver enables VLAN Hash filtering or matching for C-VLAN (Type = 0x8100) packets. The ERIVLT bit determines the VLAN tag position considered for VLAN Hash filtering or matching. Values:
|
18 | ESVL | R/W | Enable S-VLAN When this bit is set, the MAC transmitter and receiver consider the S-VLAN packets (Type = 0x88A8) as valid VLAN tagged packets. Values:
|
17 | VTIM | R/W | VLAN Tag Inverse Match Enable When this bit is set, this bit enables the VLAN Tag inverse matching. The packets without matching VLAN Tag are marked as matched. When reset, this bit enables the VLAN Tag perfect matching. The packets with matched VLAN Tag are marked as matched. Values:
|
16 | ETV | R/W |
Enable 12-Bit VLAN Tag Comparison for VLAN Hash Filtering When this bit is set, a 12-bit VLAN identifier is used for VLAN Hash filtering instead of the complete 16-bit VLAN tag. Bits[0:11] of VLAN tag in the received VLAN-tagged packet are used for hash-based VLAN filtering. When this bit is reset, all 16 bits of the 15th and 16th bytes of the received VLAN packet are used for VLAN hash filtering. Values:
|
15:y | Reserved_15_y | R | Reserved |
x:2 | OFS | R/W | Offset This field holds the address offset of the MACVLAN Tag Filter Register which the application is trying to access. The width of the field depends on the number of MAC VLAN Tag Registers enabled. |
1 | CT | R/W | Command Type This bit indicates if the current register access is a read or a write. When set, it indicate are ad operation. When reset, it indicates a write operation. Values:
|
0 | OB | R/W | Operation Busy This bit is set along with a read or write command for initiating the indirect access to per VLAN Tag Filter register. This bit is reset when the read or write command to per VLAN Tag Filter indirect access register is complete. The next indirect register access can be initiated only after this bit is reset. During a write operation, the bit is reset only after the data has been written into the Per VLAN Tag register. During a read operation, the data should be read from the MAC_VLAN_Tag_Data register only after this bit is reset. Values:
|
MAC_VLAN_Tag
- Description: The VLAN Tag register identifies the IEEE 802.1Q VLAN type packets.
- Size: 32 bits
- Offset: 0x50
Bits | Name | Memory Access | Description |
---|---|---|---|
31 | EIVLRXS | R/W | Enable Inner VLAN Tag in Rx Status When this bit is set, the MAC provides the inner VLAN Tag in the Rx status. When this bit is reset, the MAC does not provide the inner VLAN Tag in Rx status. Values:
|
30 | Reserved_30 | R | Reserved |
29:28 | EIVLS | R/W | Enable Inner VLAN Tag Stripping on Receive This field indicates the stripping operation on inner VLAN Tag in received packet. Values:
|
27 | ERIVLT | R/W | Enable Inner VLAN Tag When this bit and the EDVLP field are set, the MAC receiver enables operation on the inner VLAN Tag (if present). When this bit is reset, the MAC receiver enables operation on the outer VLAN Tag (if present). The ERSVLM bit determines which VLAN type is enabled for filtering or matching. Values:
|
26 | EDVLP | R/W |
Enable Double VLAN Processing When this bit is set, the MAC enables processing of up to two VLAN Tags on Tx and Rx (if present). When this bit is reset, the MAC enables processing of up to one VLAN Tag on Tx and Rx (if present). Values:
|
25 | VTHM | R/W | VLAN Tag Hash Table Match Enable When this bit is set, the most significant four bits of CRC of VLAN Tag are used to index the content of the MAC_VLAN_Hash_Table register. A value of 1 in the VLAN Hash Table register, corresponding to the index, indicates that the packet matched the VLAN hash table. When the ETVbit is set, the CRC of the 12-bit VLAN Identifier (VID) is used for comparison. When the ETV bit is reset, the CRC of the 16-bit VLAN tag is used for comparison. When this bit is reset, the VLAN Hash Match operation is not performed. Values:
|
24 | EVLRXS | R/W |
Enable VLAN Tag in Rx status When this bit is set, MAC provides the outer VLAN Tag in the Rx status. When this bit is reset, the MAC does not provide the outer VLAN Tag in Rx status. Values:
|
23 | Reserved_23 | R | Reserved |
22:21 | EVLS | R/W | Enable VLAN Tag Stripping on Receive This field indicates the stripping operation on the outer VLAN Tag in received packet. Values:
|
20 | DOVLTC | R/W |
Disable VLAN Type Check When this bit is set, the MAC does not check whether the VLAN Tag specified by the ERIVLT bit is of type S-VLAN or C-VLAN. When this bit is reset, the MAC filters or matches the VLAN Tag specified by the ERIVLT bit only when VLAN Tag type is similar to the one specified by the ERSVLM bit. The VLAN filter is bypassed when VLAN Type of received packet do not match the programmed VLAN Type in the VLAN filter. Values:
|
19 | ERSVLM | R/W |
Enable Receive S-VLAN Match When this bit is set, the MAC receiver enables filtering or matching for S-VLAN (Type = 0x88A8) packets. When this bit is reset, the MAC receiver enables filtering or matching for C-VLAN (Type =0x8100) packets. The ERIVLT bit determines the VLAN tag position considered for filtering or matching. Values:
|
18 | ESVL | R/W |
Enable S-VLAN When this bit is set, the MAC transmitter and receiver consider the S-VLAN packets (Type = 0x88A8) as valid VLAN tagged packets. Values:
|
17 | VTIM | R/W | VLAN Tag Inverse Match Enable When this bit is set, this bit enables the VLAN Tag inverse matching. The packets without matching VLAN Tag are marked as matched. When reset, this bit enables the VLAN Tag perfect matching. The packets with matched VLAN Tag are marked as matched. Values:
|
16 | ETV | R/W | Enable 12-Bit VLAN Tag Comparison When this bit is set, a 12-bit VLAN identifier is used for comparing and filtering instead of the complete 16-bit VLAN tag. Bits[0:11] of VLAN tag are compared with the corresponding field in the received VLAN-tagged packet. Similarly, when enabled, only 12bits of the VLAN tag in the received packet are used for hash-based VLAN filtering. When this bit is reset, all 16 bits of the 15th and 16th bytes of the received VLAN packet are used for comparison and VLAN hash filtering. Values:
|
15:0 | VL | R/W | VLAN Tag Identifier for Receive Packets This field contains the 802.1Q VLAN tag to identify the VLAN packets. This VLAN tag identifier is compared to the 15th and 16th bytes of the packets being received for VLAN packets. The following list describes the bits of this field:
When the ETV bit is set, only the VID is used for comparison. If this field ([0:11] if ETV is set) is all zeros, the MAC does not check the 15th and 16th bytes for VLAN tag comparison and declares all packets with Type field value of 0x8100 or 0x88a8 as VLAN packets. |
MAC_VLAN_Tag_Data
- Description: This register holds the read/write data for Indirect Access of the Per VLAN Tag registers. During the read access, this field contains valid read data only after the OB bit is reset. During the write access, this field should be valid prior to setting the OB bit in the MAC_VLAN_Tag_Ctrl Register.
- Size: 32 bits
- Offset: 0x54
Bits | Name | Memory Access | Description |
---|---|---|---|
31:y | Reserved_31_y | R | Reserved |
x:25 | DMACHN | R/W | DMA Channel Number The DMA Channel number to which the VLAN Tagged Frame is to be routed if it passes this VLAN Tag Filter is programmed in this field. If the Routing based on VLAN Tag Filter is not necessary, this field need not be programmed. |
24 | DMACHEN | R/W | DMA Channel Number Enable This bit is the Enable for the DMA Channel Number value programmed in the field DMACH. When this bit is reset, the Routing does not occur based on VLAN Filter result. The frame is routed based on DA Based DMA Channel Routing. Values:
|
23:21 | Reserved_23_21 | R | Reserved |
20 | ERIVLT | R/W | Enable Inner VLAN Tag Comparison This bit is valid only when Double VLAN Tag Enable of the Filter is set. When this bit and the EDVLP field are set, the MAC receiver enables operation on the inner VLAN Tag (if present). When this bit is reset, the MAC receiver enables operation on the outer VLAN Tag (if present). Values:
|
19 | ERSVLM | R/W | Enable S-VLAN Match for Received Frames This bit is valid only when VLAN Tag Enable of the Filter is set. When this bit is set, the MAC receiver enables filtering or matching for S-VLAN (Type = 0x88A8) packets. When this bit is reset, the MAC receiver enables filtering or matching for C-VLAN (Type = 0x8100) packets. Values:
|
18 | DOVLTC | R/W | Disable VLAN Type Comparison This bit is valid only when VLAN Tag Enable of the Filter is set. When this bit is set, the MAC does not check whether the VLAN Tag specified by the Enable Inner VLAN Tag Comparison bit is of type S-VLAN or C-VLAN. When this bit is reset, the MAC filters or matches the VLAN Tag specified by the Enable Inner VLAN Tag Comparison bit only when VLAN Tag type is similar to the one specified by the Enable S-VLAN Match for received Frames bit. Values:
|
17 | ETV | R/W | 12 bits or16 bits VLAN Comparison This bit is valid only when VEN of the Filter is set. When this bit is set, a 12-bit VLAN identifier is used for comparing and filtering instead of the complete 16-bit VLAN tag. Bits [0:11] of VLAN tag are compared with the corresponding field in the received VLAN-tagged packet. Values:
|
16 | VEN | R/W | VLAN Tag Enabled This bit is used to enable or disable the VLAN Tag. When this bit is set, the MAC compares the VLAN Tag of received packet with the VLAN Tag ID. When this bit is reset, no comparison is performed irrespective of the programming of the other fields. Values:
|
15:0 | VID | R/W | VLAN Tag ID This field holds the VLAN Tag value which is used by the MAC for perfect comparison. It is valid when VLAN Tag Enable is set. |
MAC_VLAN_Hash_Table
- Description: When VTHM bit of the MAC_VLAN_Tag register is set, the 16-bit VLAN Hash Table register is used for group address filtering based on the VLAN tag. For hash filtering, the content of the 16-bit VLAN tag or 12-bit VLAN ID (based on the ETV bit of MAC_VLAN_Tag Register) in the incoming packet is passed through the CRC logic. The upper four bits of the calculated hash value are used to index the contents of the VLAN Hash table. For example, hash value of 4b'1000 selects Bit 8 of the VLAN Hash table.
- Size: 32 bits
- Offset: 0x58
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
15:0 | VLHT | R/W | VLAN Hash Table This field contains the 16-bit VLAN Hash Table. |
MAC_VLAN_Incl
- Description: The VLAN Tag Inclusion or Replacement register contains the VLAN tag for insertion or replacement in the Transmit packets. It also contains the VLAN tag insertion controls.
- Size: 32 bits
- Offset: 0x60
Bits | Name | Memory Access | Description |
---|---|---|---|
31 | BUSY | R | Busy This bit indicates the status of the read/write operation of indirect access to the queue/channel specific VLAN inclusion register. For write operation, write to a register is complete when this bit is reset. For read operation the read data is valid when the bit is reset. The application must make sure that this bit is reset before attempting subsequent access to this register. Values:
Testable: untestable |
30 | RDWR | R/W | Read Write Control This bit controls the read or write operation for indirectly accessing the queue/channel specific VLAN Inclusion register. When set indicates write operation and when reset indicates read operation. This does not have any effect when CBTI is reset. Values:
|
29:y | Reserved_29_y | R | Reserved |
x:24 | ADDR | R/W | Address This field selects one of the queue/channel specific VLAN Inclusion register for read/write access. This does not have any effect when CBTI is reset. |
23:22 | Reserved_23_22 | R | Reserved |
21 | CBTI | R/W | Channel Based Tag Insertion When this bit is set,outer VLAN tag is inserted for every packets transmitted by the MAC. The tag value is taken from the queue/channel specific VLAN tag register. The VLTI, VLP, VLC, and VLT fields of this register are ignored when this bit is set. When this bit is set, a write operation to byte 3 of this register initiates the read/write access to the indirect register. When reset, outer VLAN operation is based on the setting of VLTI, VLP, VLC and VLT fields of this register. Values:
|
20 | VLTI | R/W |
VLAN Tag Input When this bit is set, it indicates that the VLAN tag to be inserted or replaced in Tx packet should be taken from the following:
Values:
|
19 | CSVL | R/W | C-VLAN or S-VLAN When this bit is set, S-VLAN type (0x88A8) is inserted or replaced in the 13th and 14th bytes of transmitted packets. When this bit is reset, C-VLAN type (0x8100) is inserted or replaced in the 13th and 14th bytes of transmitted packets. Values:
|
18 | VLP | R/W | VLAN Priority Control When this bit is set, the control bits[17:16] are used for VLAN deletion, insertion, or replacement. When this bit is reset, the mti_vlan_ctrl_i control input is used and bits[17:16] are ignored. Values:
|
17:16 | VLC | R/W | VLAN Tag Control in Transmit Packets
The MAC removes the VLAN type (bytes 13 and 14) and VLAN tag (bytes 15 and 16) of all transmitted packets with VLAN tags.
The MAC inserts VLT in bytes 15 and 16 of the packet after inserting the Type value (0x8100 or 0x88a8) in bytes 13 and 14. This operation is performed on all transmitted packets, irrespective of whether they already have a VLAN tag.
The MAC replaces VLT in bytes 15 and 16 of all VLAN-type transmitted packets (Bytes 13 and 14 are 0x8100 or 0x88a8). Note: Changes to this field take
effect only on the start of a packet. If you write this
register field when a packet is being transmitted, only the
subsequent packet can use the updated value, that is, the
current packet does not use the updated
value. Values:
|
15:0 | VLT | R/W | VLAN Tag for Transmit Packets This field contains the value of the VLAN tag to be inserted or replaced. The value must only be changed when the transmit lines are inactive or during the initialization phase. Bits[15:13] are the User Priority field, Bit12 is the CFI/DEI field, and Bits[0:11] are the VID field in the VLAN tag. The following list describes the bits of this field:
|
MAC_Inner_VLAN_Incl
- Description: The Inner VLAN Tag Inclusion or Replacement register contains the inner VLAN tag to be inserted or replaced in the Transmit packet. It also contains the inner VLAN tag insertion controls.
- Size: 32 bits
- Offset: 0x64
Bits | Name | Memory Access | Description |
---|---|---|---|
31:21 | Reserved_31_21 | R | Reserved |
20 | VLTI | R/W | VLAN Tag Input When this bit is set, it indicates that the VLAN tag to be inserted or replaced in Tx packet should be taken from the following:
Values:
|
19 | CSVL | R/W | C-VLAN or S-VLAN When this bit is set, S-VLAN type (0x88A8) is inserted or replaced in the 17th and 18th bytes of transmitted packets. When this bit is reset, C-VLAN type (0x8100) is inserted or replaced in the 17th and 18th bytes of transmitted packets. Values:
|
18 | VLP | R/W | VLAN Priority Control When this bit is set, the VLC field is used for VLAN deletion, insertion, or replacement. When this bit is reset, the mti_vlan_ctrl_i control input is used and the VLC field is ignored. Values:
|
17:16 | VLC | R/W | VLAN Tag Control in Transmit Packets
The MAC removes the VLAN type (bytes 17 and 18) and VLAN tag (bytes 19 and 20) of all transmitted packets with VLAN tags.
The MAC inserts VLT in bytes 19 and 20 of the packet after inserting the Type value (0x8100 or 0x88a8) in bytes 17 and 18. This operation is performed on all transmitted packets, irrespective of whether they already have a VLAN tag.
The MAC replaces VLT in bytes 19 and 20 of all VLAN-type transmitted packets (Bytes 17 and 18 are 0x8100 or 0x88a8). Note: Changes to this field take
effect only on the start of a packet. If you write this
register field when a packet is being transmitted, only the
subsequent packet can use the updated value, that is, the
current packet does not use the updated
value. Values:
|
15:0 | VLT | R/W | VLAN Tag for Transmit Packets This field contains the value of the VLAN tag to be inserted or replaced. The value must only be changed when the transmit lines are inactive or during the initialization phase. Bits[15:13] are the User Priority field, Bit12 is the CFI/DEI field, and Bits[0:11] are the VID field in the VLAN tag. The following list describes the bits of this field:
|
MAC_Q0_Tx_Flow_Ctrl
- Description: The Flow Control register controls the generation and reception
of the Control (Pause Command) packets by the Flow control module of the
MAC. A Write to a register with the Busy bit set to 1 triggers the Flow
Control block to generate a Pause packet. The fields of the control packet
are selected as specified in the 802.3x specification, and the Pause Time
value from this register is used in the Pause Time field of the control
packet. The Busy bit remains set until the control packet is transferred
onto the cable. The application must make sure that the Busy bit is cleared
before writing to the register.
When the PFCE bit in the MAC_Rx_Flow_Ctrl register is enabled, this register controls the generation of Priority Flow Control (PFC) frames with priorities mapped according to PSRQ0 in the MAC_Rx- Q_Ctrl2 register
- Size: 32 bits
- Offset: 0x70
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | PT | R/W |
Pause Time This field holds the value to be used in the Pause Time field in the Tx control packet. If the Pause Time bits are configured to be double-synchronized to the (G)MII clock domain, consecutive writes to this register should be performed only after at least four clock cycles in the destination clock domain. |
15:8 | Reserved_15_8 | R | Reserved |
7 | DZPQ | R/W |
Disable Zero-Quanta Pause When this bit is set, it disables the automatic generation of the zero-quanta Pause packets on de-assertion of the flow-control signal from the FIFO layer (MTL or external sideband flow control signal sbd_flowctrl_i or mti_flowctrl_i). When this bit is reset, normal operation with automatic zero-quanta Pause packet generation is enabled. Values:
|
6:4 | PLT | R/W | Pause Low Threshold This field configures the threshold of the Pause timer at which the input flow control signal mti_flowctrl_i (or sbd_flowctrl_i) is checked for automatic retransmission of the Pause packet. The threshold values should be always less than the Pause Time configured in Bits[31:16]. For example, if PT = 100H (256 slot times), and PLT = 001, a second Pause packet is automatically transmitted if the mti_flowctrl_i signal is asserted at 228 (256-28) slot times after the first Pause packet is transmitted. The following list provides the threshold values for different values. The slot time is defined as the time taken to transmit 512 bits (64 bytes) on the GMII or MII interface. This (approximate) computation is based on the packet size (6415182000901816384, or 32768) + 2 Pause Packet Size+ IPG in Slot Times. Values:
|
3:2 | Reserved_3_2 | R | Reserved |
1 | TFE | R/W | Transmit Flow Control Enable Full-Duplex Mode: In the full-duplex mode, when this bit is set, the MAC enables the flow control operation to Tx Pause packets. When this bit is reset, the flow control operation in the MAC is disabled, and the MAC does not transmit any Pause packets. Half-Duplex Mode: In the half-duplex mode, when this bit is set, the MAC enables the back pressure operation. When this bit is reset, the back pressure feature is disabled. Values:
|
0 | FCB_BPA | R/W | Flow Control Busy or Back pressure Activate This bit initiates a Pause packet in the full-duplex mode and activates the back pressure function in the half-duplex mode if the TFE bit is set. Full-Duplex Mode: In the full-duplex mode, this bit should be read as 1'b0 before writing to this register. To initiate a Pause packet, the application must set this bit to 1'b1. During Control packet transfer, this bit continues to be set to indicate that a packet transmission is in progress. When Pause packet transmission is complete, the MAC resets this bit to 1'b0. You should not write to this register until this bit is cleared. Half-Duplex Mode: When this bit is set (and TFE bit is set) in the half-duplex mode, the MAC asserts the backpressure. During backpressure, when the MAC receives a new packet, the transmitter starts sending a JAM pattern resulting in a collision. This control register bit is logically ORed with the mti_flowctrl_i input signal for the backpressure function. When the MAC is configured for the full-duplex mode, the BPA is automatically disabled. Access restriction applies. Setting 1 sets. Self-cleared. Setting 0 has no effect. Values:
Testable: untestable |
MAC_Rx_Flow_Ctrl
- Description: The Receive Flow Control register controls the pausing of MAC Transmit based on the received Pause packet.
- Size: 32 bits
- Offset: 0x90
Bits | Name | Memory Access | Description |
---|---|---|---|
31:9 | Reserved_31_9 | R | Reserved |
8 | PFCE | R/W | Priority Based Flow Control Enable When this bit is set, it enables generation and reception of priority-based flow control (PFC) packets. When this bit is reset, it enables generation and reception of 802.3x Pause control packets. Values:
|
7:2 | Reserved_7_2 | R | Reserved |
1 | UP | R/W | Unicast Pause Packet Detect A pause packet is processed when it has the unique multicast address specified in the IEEE 802.3. When this bit is set, the MAC can also detect Pause packets with unicast address of the station. This unicast address should be as specified in MAC_Address0_High and MAC_Address0_Low. When this bit is reset, the MAC only detects Pause packets with unique multicast address. Note: The MAC does not
process a Pause packet if the multicast address is different
from the unique multicast address. This is also applicable
to the received PFC packet when the Priority Flow Control
(PFC) is enabled. The unique multicast address
(0x01_80_C2_00_00_01) is as specified in IEEE 802.1
Qbb-2011. Values:
|
0 | RFE | R/W | Receive Flow Control Enabled When this bit is set and the MAC is operating in full-duplex mode, the MAC decodes the received Pause packet and disables its transmitter for a specified (Pause) time. When this bit is reset or the MAC is operating in half-duplex mode, the decode function of the Pause packet is disabled. When PFC is enabled, flow control is enabled for PFC packets. The MAC decodes the received PFC packet and disables the Transmit queue, with matching priorities, for a duration of received Pause time. Values:
|
MAC_RxQ_Ctrl4
- Description: The Receive Queue Control 4 register controls the routing of unicast and multicast packets that fail the Destination or Source address filter to the Rx queues.
- Size: 32 bits
- Offset: 0x94
Bits | Name | Memory Access | Description |
---|---|---|---|
31:y | Reserved_31_y | R | Reserved |
x:17 | VFFQ | R/W | VLAN Tag Filter Fail Packets Queue This field holds the Rx queue number to which the tagged packets failing the Destination or Source Address filter (and UFFQE/MFFQE not enabled) or failing the VLAN tag filter must be routed to. This field is valid only when the VFFQE bit is set. |
16 | VFFQE | R/W | VLAN Tag Filter Fail Packets Queuing Enable When this bit is set, the tagged packets which fail the Destination or Source address filter or fail the VLAN tag filter, are routed to the Rx Queue Number programmed in the VFFQ. When this bit is reset, the tagged packets which fail the Destination or Source address filter or fail the VLAN tag filter are routed based on other routing options. This bit is valid only when the RA bit of the MAC_Packet_Filter register is set. Values:
|
15:y | Reserved_15_y | R | Reserved |
x:9 | MFFQ | R/W | Multicast Address Filter Fail Packets Queue. This field holds the Rx queue number to which the Multicast packets failing the Destination or Source Address filter are routed to. This field is valid only when the MFFQE bit is set. |
8 | MFFQE | R/W | Multicast Address Filter Fail Packets Queuing Enabled When this bit is set, the multicast packets which fail the Destination or Source address filter are routed to the Rx Queue Number programmed in the MFFQ. When this bit is reset, the Multicast packets which fail the Destination or Source address filter is routed based on other routing options. This bit is valid only when the RA bit of the MAC_Packet_Filter register is set. Values:
|
x:y | Reserved_7_y | R | Reserved |
x:1 | UFFQ | R/W | Unicast Address Filter Fail Packets Queue. This field holds the Rx queue number to which the Unicast packets failing the Destination or Source Address filter are routed to. This field is valid only when the UFFQE bit is set. |
0 | UFFQE | R/W | Unicast Address Filter Fail Packets Queuing Enable. When this
bit is set, the Unicast packets which fail the Destination or Source address filter is routed to the Rx Queue Number programmed in the UFFQ. When this bit is reset, the Unicast packets which fail the Destination or Source address filter is routed based on other routing options. This bit is valid only when the RA bit of the MAC_Packet_Filter register is set. Values:
|
MAC_TxQ_Prty_Map0
- Description: The Transmit Queue Priority Mapping 0 register contains the priority values assigned to Tx Queue 0 through Tx Queue 3.
- Size: 32 bits
- Offset: 0x98
Bits | Name | Memory Access | Description |
---|---|---|---|
31:24 | PSTQ3 | R/W | Priorities Selected in Transmit Queue 3 This bit is similar to the PSTQ0 bit |
23:16 | PSTQ2 | R/W | Priorities Selected in Transmit Queue 2 This bit is similar to the PSTQ0 bit |
15:8 | PSTQ1 | R/W | Priorities Selected in Transmit Queue 1 This bit is similar to the PSTQ0 bit |
7:0 | PSTQ0 | R/W | Priorities Selected in Transmit Queue 0 This field holds the priorities assigned to Tx Queue 0 by the software. This field determines if Tx Queue 0 should be blocked from transmitting specified pause time when a PFC packet is received with priorities matching the priorities programmed in this field. If the content of this field is not mutually exclusive to the corresponding fields of other Transmit queues, that is, same priority is mapped to multiple Tx queues, the MAC blocks all queues with matching priority, for the specified time. |
MAC_TxQ_Prty_Map1
- Description: The Transmit Queue Priority Mapping 1 register contains the priority values assigned to Tx Queue 4 through Tx Queue 7.
- Size: 32 bits
- Offset: 0x9c
Bits | Name | Memory Access | Description |
---|---|---|---|
31:24 | PSTQ7 | R/W | Priorities Selected in Transmit Queue 7 This bit is similar to the PSTQ4 bit. |
23:16 | PSTQ6 | R/W | Priorities Selected in Transmit Queue 6 This bit is similar to the PSTQ4 bit. |
15:8 | PSTQ5 | R/W | Priorities Selected in Transmit Queue 5 This bit is similar to the PSTQ4 bit. |
7:0 | PSTQ4 | R/W | Priorities Selected in Transmit Queue 4 This field holds the priorities assigned to Tx Queue 4 by the software. This field determines if Tx Queue 4 should be blocked from transmitting specified pause time when a PFC packet is received with priorities matching the priorities programmed in this field. If the content of this field is not mutually exclusive to corresponding fields of other Transmit queues, that is, same priority is mapped to multiple Tx queues, the MAC blocks all queues with matching priority for specified time. |
MAC_RxQ_Ctrl0
- Description: The Receive Queue Control 0 register controls the queue
management in the MAC Receiver.Note: In multiple Rx queues configuration, all the queues are disabled by default. Enable the Rx queue by programming the corresponding field in this register.
- Size: 32 bits
- Offset: 0xa0
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
15:14 | RXQ7EN | R/W | Receive Queue 7 Enabled This field is similar to the RXQ0EN field. Values:
|
13:12 | RXQ6EN | R/W | Receive Queue 6 Enabled This field is similar to the RXQ0EN field. Values:
|
11:10 | RXQ5EN | R/W | Receive Queue 5 Enabled This field is similar to the RXQ0EN field. Values:
|
9:8 | RXQ4EN | R/W | Receive Queue 4 Enabled This field is similar to the RXQ0EN field. Values:
|
7:6 | RXQ3EN | R/W | Receive Queue 3 Enabled This field is similar to the RXQ0EN field. Values:
|
5:4 | RXQ2EN | R/W | Receive Queue 2 Enabled This field is similar to the RXQ0EN field. Values:
|
3:2 | RXQ1EN | R/W | Receive Queue 1 Enabled This field is similar to the RXQ0EN field. Values:
|
1:0 | RXQ0EN | R/W | Receive Queue 0 Enabled This field indicates whether Rx Queue 0 is enabled for AV or DCB. Values:
|
MAC_RxQ_Ctrl1
- Description: The Receive Queue Control 1register controls the routing of multicast, broadcast, AV, DCB, and untagged packets to the Rx queues.
- Size: 32 bits
- Offset: 0xa4
Bits | Name | Memory Access | Description |
---|---|---|---|
31:30 | Reserved_31_30 | R | Reserved |
29 | TBRQE | R/W | Type Field Based Rx Queuing Enabled When this bit is set, it enables Type Field based Rx Queuing where the Type field of received packet is compared with programmed TYP field in MAC_TMRQ_Regs(#i) and if a match occurs the packet is routed to the corresponding TMRQ field. |
28 | OMCBCQ | R/W | Over-Riding MC-BC Queue Priority Select
Values:
|
27 | Reserved_27 | R | Reserved |
26:24 | FPRQ | R/W | Frame Preemption Residue Queue This field holds the Rx queue number to which the residual preemption frames must be forwarded. Preemption frames that are tagged and pass the SA/DA/VLAN filtering are routed based on PSRQ and all other frames are treated as residual frames and is routed to the queue number mentioned in this field. The Queue-0 is used as a default queue for express frames, so this field cannot be programmed to a value 0. |
x:22 | TPQC | R/W | Tagged PTP over Ethernet Packets Queuing Control. This field
controls the routing of the VLAN Tagged PTPoE packets. If
DWC_EQOS_AV_ENABLE is selected in the configuration, the
following programmable options are allowed.
If DWC_EQOS_AV_ENABLE is not selected in the configuration, the following programmable options are allowed.
|
21 | TACPQE | R/W | Tagged AV Control Packets Queuing Enabled. When set, the MAC routes the received Tagged AV Control packets to the Rx queue specified by AVCPQ field. When reset, the MAC routes the received Tagged AV Control packets based on the tag priority matching the PSRQ fields in MAC_RxQ_Ctrl2 and MAC_RxQ_Ctrl3 registers. Values:
|
20 | MCBCQEN | R/W | Multicast and Broadcast Queue Enabled This bit specifies that Multicast or Broadcast packets routing to the Rx Queue is enabled and the Multicast or Broadcast packets must be routed to Rx Queue specified in MCBCQ field. Values:
|
19 | Reserved_19 | R | Reserved |
18:16 | MCBCQ | R/W | Multicast and Broadcast Queue This field specifies the Rx Queue onto which Multicast or Broadcast Packets are routed. Any Rx Queue enabled for Generic/DCB/AV traffic can be used to route the Multicast or Broadcast Packets. Values:
|
15 | Reserved_15 | R | Reserved |
14:12 | UPQ | R/W | Untagged Packet Queue This field indicates the Rx Queue to which Untagged Packets are to be routed. Any Rx Queue enabled for Generic/DCB/AV traffic can be used to route the Untagged Packets. Values:
|
11 | Reserved_11 | R | Reserved |
10:8 | DCBCPQ | R/W | DCB Control Packets Queue This field specifies the Rx queue on which the received DCB control packets are routed. The DCB data packets are routed based on the PSRQ field of the Transmit Flow Control Register of corresponding queue. Values:
|
7 | Reserved_7 | R | Reserved |
6:4 | PTPQ | R/W | PTP Packets Queue This field specifies the Rx queue on which the PTP packets sent over the Ethernet payload (not over IPv4 or IPv6) are routed. When the AV8021ASMEN bit of MAC_Time stamp_Control register is set, only untagged PTP over Ethernet packets are routed on an Rx Queue. If the bit is not set, then based on programming of TPQC field, both tagged and untagged PTPoE packets can be routed to this Rx Queue. Values:
|
3 | Reserved_3 | R | Reserved |
2:0 | AVCPQ | R/W | AV Untagged Control Packets Queue This field specifies the Receive queue on which the received AV tagged and untagged control packets are routed. The AV tagged (when TACPQE bit is set) and untagged control packets are routed to Receive queue specified by this field. Values:
|
MAC_RxQ_Ctrl2
- Description: This register controls the routing of tagged packets based on the USP (user Priority) field of the received packets to the Rx Queues 0 to 3.
- Size: 32 bits
- Offset: 0xa8
Bits | Name | Memory Access | Description |
---|---|---|---|
31:24 | PSRQ3 | R/W | Priorities Selected in the Receive Queue 3 This field decides the priorities assigned to Rx Queue 3. All packets with priorities that match the values set in this field are routed to Rx Queue 3. For example, if PSRQ3[6, 3] are set, packets with USP field equal to 3 or 6 are routed to Rx Queue 3. The software must ensure that the content of this field is mutually exclusive to the PSRQ fields for other queues, that is, the same priority is not mapped to multiple Rx queues. When the DCB feature is selected, this field also determines the priorities to be included in the PFC packet sent to remote station when Rx Queue 3 crosses the flow control threshold settings. |
23:16 | PSRQ2 | R/W | Priorities Selected in the Receive Queue 2 This field decides the priorities assigned to Rx Queue 2. All packets with priorities that match the values set in this field are routed to Rx Queue 2. For example, if PSRQ2[1, 0] are set, packets with USP field equal to 1 or 0 are routed to Rx Queue 2. The software must ensure that the content of this field is mutually exclusive to the PSRQ fields for other queues, that is, the same priority is not mapped to multiple Rx queues. When the DCB feature is selected, this field also determines the priorities to be included in the PFC packet sent to remote station when Rx Queue 2 crosses the flow control threshold settings. |
15:8 | PSRQ1 | R/W | Priorities Selected in the Receive Queue 1 This field decides the priorities assigned to Rx Queue 1. All packets with priorities that match the values set in this field are routed to Rx Queue 1. For example, if PSRQ1[4] is set, packets with USP field equal to 4 are routed to Rx Queue 1. The software must ensure that the content of this field is mutually exclusive to the PSRQ fields for other queues, that is, the same priority is not mapped to multiple Rx queues. When the DCB feature is selected, this field also determines the priorities to be included in the PFC packet sent to remote station when Rx Queue 1 crosses the flow control threshold settings. |
7:0 | PSRQ0 | R/W | Priorities Selected in the Receive Queue 0 This field decides the priorities assigned to Rx Queue 0. All packets with priorities that match the values set in this field are routed to Rx Queue 0. For example, if PSRQ0[5] is set, packets with USP field equal to 5 are routed to Rx Queue 0. The software must ensure that the content of this field is mutually exclusive to the PSRQ fields for other queues, that is, the same priority is not mapped to multiple Rx queues. When the DCB feature is selected, this field also determines the priorities to be included in the PFC packet sent to remote station when Rx Queue 0 crosses the flow control threshold settings. |
MAC_RxQ_Ctrl3
- Description: This register controls the routing of tagged packets based on the USP (user Priority) field of the received packets to the Rx Queues 4 to 7.
- Size: 32 bits
- Offset: 0xac
Bits | Name | Memory Access | Description |
---|---|---|---|
31:24 | PSRQ7 | R/W | Priorities Selected in the Receive Queue 7 This field decides the priorities assigned to Rx Queue 7. All packets with priorities that match the values set in this field are routed to Rx Queue 7. For example, if PSRQ7[7, 4] are set, packets with USP field equal to 7 or 4 are routed to Rx Queue 7. The software must ensure that the content of this field is mutually exclusive to the PSRQ fields for other queues, that is, the same priority is not mapped to multiple Rx queues. When the DCB feature is selected, this field also determines the priorities to be included in the PFC packet sent to remote station when Rx Queue 7 crosses the flow control threshold settings. |
23:16 | PSRQ6 | R/W | Priorities Selected in the Receive Queue 6 This field decides the priorities assigned to Rx Queue 6. All packets with priorities that match the values set in this field are routed to Rx Queue 6. For example, if PSRQ6[5] are set, packets with USP field equal to 5 are routed to Rx Queue 6. The software must ensure that the content of this field is mutually exclusive to the PSRQ fields for other queues, that is, the same priority is not mapped to multiple Rx queues. When the DCB feature is selected, this field also determines the priorities to be included in the PFC packet sent to remote station when Rx Queue 6 crosses the flow control threshold settings. |
15:8 | PSRQ5 | R/W | Priorities Selected in the Receive Queue 5 This field decides the priorities assigned to Rx Queue 5. All packets with priorities that match the values set in this field are routed to Rx Queue 5. For example, if PSRQ5[6] is set, packets with USP field equal to 6 are routed to Rx Queue 5. The software must ensure that the content of this field is mutually exclusive to the PSRQ fields for other queues, that is, the same priority is not mapped to multiple Rx queues. When the DCB feature is selected, this field also determines the priorities to be included in the PFC packet sent to remote station when Rx Queue 5 crosses the flow control threshold settings. |
7:0 | PSRQ4 | R/W | Priorities Selected in the Receive Queue 4 This field decides the priorities assigned to Rx Queue 4. All packets with priorities that match the values set in this field are routed to Rx Queue 4. For example, if PSRQ4[4:7] is set, packets with USP field equal to 7, 6, 5, or 4 are routed to Rx Queue 4. The software must ensure that the content of this field is mutually exclusive to the PSRQ fields for other queues, that is, the same priority is not mapped to multiple Rx queues. When the DCB feature is selected, this field also determines the priorities to be included in the PFC packet sent to remote station when Rx Queue 4 crosses the flow control threshold settings. |
MAC_Interrupt_Status
- Description: The Interrupt Status register contains the status of interrupts.
- Size: 32 bits
- Offset: 0xb0
Bits | Name | Memory Access | Description |
---|---|---|---|
31:21 | Reserved_31_21 | R | Reserved |
20 | MFRIS | R | MMC FPE Receive Interrupt Status This bit is set high when an interrupt is generated in the MMC FPE Receive Interrupt Register. This bit is cleared when all bits in this interrupt register are cleared. This bit is valid only when you select the Enable MAC Management Counters (MMC) option along with FPE support. Values:
|
19 | MFTIS | R |
MMC FPE Transmit Interrupt Status This bit is set high when an interrupt is generated in the MMC FPE Transmit Interrupt Register. This bit is cleared when all bits in this interrupt register are cleared. This bit is valid only when you select the Enable MAC Management Counters (MMC) option along with FPE support. Values:
|
18 | MDIOIS | R |
MDIO Interrupt Status This bit indicates an interrupt event after the completion of MDIO operation. To reset this bit, the application has to read this bit/Write 1 to this bit when RCWE bit of MAC_CSR_SW_Ctrl register is set. Access restriction applies. Clears on read (or write of 1 when RCWE bit in MAC_CSR_SW_Ctrl register is set). Self-set to 1 on internal event. Values:
|
17 | FPEIS | R |
Frame Preemption Interrupt Status This bit indicates an interrupt event during the operation of Frame Preemption (Bits[19:16] of MAC_FPE_CTRL_STS register is set). To reset this bit, the application must clear the event in MAC_FPE_CTRL_STS that has caused the Interrupt. Values:
|
16 | Reserved_16 | R | Reserved |
15 | GPIIS | R | GPI Interrupt Status When the GPIO feature is enabled, this bit is set when any active event (LL or LH) occurs on the GPIS field of the MAC_GPIO_Status register and the corresponding GPIE bit is enabled in the MAC_GPIO_Control register. This bit is cleared on reading lane 0 (GPIS) of the MAC_GPIO_Status register. Values:
|
14 | RXSTSIS | R | Receive Status Interrupt This bit indicates the status of received packets. This bit is set when the RWT bit is set in the MAC_Rx_Tx_Status register. This bit is cleared when the corresponding interrupt source bit is read (or corresponding interrupt source bit is written to 1 when RCWE bit of MAC_CSR_SW_Ctrl register is set) in the MAC_Rx_Tx_Status register. Values:
|
13 | TXSTSIS | R | Transmit Status Interrupt This bit indicates the status of transmitted packets. This bit is set when any of the following bits is set in the MAC_Rx_Tx_Status register:
This bit is cleared when the corresponding interrupt source bit is read (or corresponding interrupt source bit is written to 1 when RCWE bit of MAC_CSR_SW_Ctrl register is set) in the MAC_Rx_Tx_Status register. Values:
|
12 | TSIS | R |
Time stamp Interrupt Status If the Time stamp feature is enabled, this bit is set when any of the following conditions is true:
If the Auxiliary Snapshot feature is enabled, this bit is set when the auxiliary snapshot trigger is asserted. In configurations other than EQOS_CORE, when drop transmit status is enabled in MTL, this bit is set when the captured transmit time stamp is updated in the MAC_Tx_Timestamp_Status_Nanoseconds and Mac_TxTimestamp_Status_Seconds registers. When PTP offload feature is enabled, this bit is set when the captured transmit time stamp is updated in the MAC_Tx_Timestamp_Status_Nanoseconds and MAC_Tx_Timestamp_Status_Seconds registers, for PTO generated Delay Request and Pdelay request packets. This bit is cleared when the corresponding interrupt source bit is read (or corresponding interrupt source bit is written to 1 when RCWE bit of MAC_CSR_SW_Ctrl register is set) in the MAC_Timestamp_Status register. Values:
|
11 | MMCRXIPIS | R | MMC Receive Checksum Offload Interrupt Status This bit is set high when an interrupt is generated in the MMC Receive Checksum Offload Interrupt Register. This bit is cleared when all bits in this interrupt register are cleared. This bit is valid only when you select the Enable MAC Management Counters (MMC) and Enable Receive TCP/IP Checksum Check options. Values:
|
10 | MMCTXIS | R | MMC Transmit Interrupt Status This bit is set high when an interrupt is generated in the MMC Transmit Interrupt Register. This bit is cleared when all bits in this interrupt register are cleared. This bit is valid only when you select the Enable MAC Management Counters (MMC) option. Values:
|
9 | MMCRXIS | R | MMC Receive Interrupt Status This bit is set high when an interrupt is generated in the MMC Receive Interrupt Register. This bit is cleared when all bits in this interrupt register are cleared. This bit is valid only when you select the Enable MAC Management Counters (MMC) option. Values:
|
8 | MMCIS | R |
MMC Interrupt Status This bit is set high when Bit 11, Bit 10, or Bit 9 is set high. This bit is cleared only when all these bits are low. This bit is valid only when you select the Enable MAC Management Counters (MMC) option. Values:
|
7:6 | Reserved_7_6 | R | Reserved |
5 | LPIIS | R | LPI Interrupt Status When the Energy Efficient Ethernet feature is enabled, this bit is set for any LPI state entry or exit in the MAC Transmitter or Receiver. This bit is cleared when the corresponding interrupt source bit of MAC_LPI_Control_Status register is read (or corresponding interrupt source bit of MAC_LPI_Control_Status register is written to 1 when RCWE bit of MAC_CSR_SW_Ctrl register is set). Values:
|
4 | PMTIS | R |
PMT Interrupt Status This bit is set when a Magic packet or Wake-on-LAN packet is received in the power-down mode (RWKPRCVD and MGKPRCVD bits in MAC_PMT_Control_Status register). This bit is cleared when corresponding interrupt source bit are cleared because of a Read operation to the MAC_PMT_Control_Status register (or corresponding interrupt source bit of MAC_PMT_Control_Status register is written to 1 when RCWE bit of MAC_CSR_SW_Ctrl register is set). This bit is valid only when you select the Enable Power Management option. Values:
|
3 | PHYIS | R | PHY Interrupt This bit is set when rising edge is detected on the phy_intr_i input. This bit is cleared when this register is read (or this bit is written to 1 when RCWE bit of MAC_CSR_SW_Ctrl register is set). Values:
|
2 | PCSANCIS | R | PCS Auto-Negotiation Complete This bit is set when auto-negotiation is completed in the TBI, RTBI, or SGMII PHY interface (see ANC bit in the MAC_AN_Status register). This bit is cleared when the MAC_AN_Status register is read (or ANC bit of MAC_AN_Status register is written to 1 when RCWE bit of MAC_CSR_SW_Ctrl register is set). This bit is valid only when you select the optional TBI, RTBI, or SGMII PHY interface. Values:
|
1 | PCSLCHGIS | R | PCS Link Status Changed This bit is set because of any change in Link Status in the TBI, RTBI, or SGMII PHY interface (See LS bit in MAC_AN_Status register). This bit is cleared when the MAC_AN_Status register is read (or LS bit of MAC_AN_Status register is written to 1 when RCWE bit of MAC_CSR_SW_Ctrl register is set). This bit is valid only when you select the optional TBI, RTBI, or SGMII PHY interface. Values:
Testable: Untestable |
0 | RGSMIIIS | R | RGMII or SMII Interrupt Status This bit is set because of any change in value of the Link Status of RGMII or SMII interface (LNKSTS bit in MAC_PHYIF_Control_Status register). This bit is cleared when the MAC_PHYIF_Control_Status register is read (or LNKSTS bit of MAC_PHYIF_Control_Status register is written to 1 when RCWE bit of MAC_CSR_SW_Ctrl register is set). This bit is valid only when you select the optional RGMII or SMII PHY interface. Values:
Testable: untestable |
MAC_Interrupt_Enable
- Description: The Interrupt Enable register contains the masks for generating the interrupts.
- Size: 32 bits
- Offset: 0xb4
Bits | Name | Memory Access | Description |
---|---|---|---|
31:19 | Reserved_31_19 | R | Reserved |
18 | MDIOIE | R/W | MDIO Interrupt Enabled When this bit is set, it enables the assertion of the interrupt when MDIOIS field is set in the MAC_Interrupt_Status register. Values:
|
17 | FPEIE | R/W | Frame Preemption Interrupt Enabled When this bit is set, it enables the assertion of the interrupt when FPEIS field is set in the MAC_Interrupt_Status register. Values:
|
16 | Reserved_16 | R | Reserved |
15 | Reserved_15 | R | Reserved |
14 | RXSTSIE | R/W |
Receive Status Interrupt Enable When this bit is set, it enables the assertion of the interrupt signal because of the setting of RXSTSIS bit in the MAC_Interrupt_Status register. Values:
|
13 | TXSTSIE | R/W | Transmit Status Interrupt Enabled When this bit is set, it enables the assertion of the interrupt signal because of the setting of TXSTSIS bit in the MAC_Interrupt_Status register. Values:
|
12 | TSIE | R/W | Time Stamp Interrupt Enabled When this bit is set, it enables the assertion of the interrupt signal because of the setting of TSIS bit in MAC_Interrupt_Status register. Values:
|
11:6 | Reserved_11_6 | R | Reserved |
5 | LPIIE | R/W | LPI Interrupt Enabled When this bit is set, it enables the assertion of the interrupt signal because of the setting of LPIIS bit in MAC_Interrupt_Status register. Values:
|
4 | PMTIE | R/W | PMT Interrupt Enabled When this bit is set, it enables the assertion of the interrupt signal because of the setting of PMTIS bit in MAC_Interrupt_Status register. Values:
|
3 | PHYIE | R/W | PHY Interrupt Enabled When this bit is set, it enables the assertion of the interrupt signal because of the setting of PHYIS bit in MAC_Interrupt_Status register. Values:
|
2 | PCSANCIE | R/W | PCSAN Completion Interrupt Enabled When this bit is set, it enables the assertion of the interrupt signal because of the setting of the PCSANCIS bit in MAC_Interrupt_Status register. Values:
|
1 | PCSLCHGIE | R/W | PCS Link Status Interrupt Enabled When this bit is set, it enables the assertion of the interrupt signal because of the setting of the PCSLCHGIS bit in MAC_Interrupt_Status register. Values:
|
0 | RGSMIIIE | R/W | RGMII or SMII Interrupt Enabled When this bit is set, it enables the assertion of the interrupt signal because of the setting of RGSMIIIS bit in MAC_Interrupt_Status register. Values:
|
MAC_Rx_Tx_Status
- Description: The Receive Transmit Status register contains the Receive and Transmit Error status.
- Size: 32 bits
- Offset: 0xb8
Bits | Name | Memory Access | Description |
---|---|---|---|
31:9 | Reserved_31_9 | R | Reserved |
8 | RWT | R | Receive Watchdog Timeout This bit is set when a packet with length greater than 2,048 bytes is received (10, 240 bytes when Jumbo Packet mode is enabled) and the WD bit is reset in the MAC_Configuration register. This bit is set when a packet with length greater than 16,383 bytes is received and the WD bit is set in the MAC_Configuration register. Access restriction applies. Clears on read (or write of 1 when RCWE bit in MAC_CSR_SW_Ctrl register is set). Self-set to 1 on internal event. Values:
|
7:6 | Reserved_7_6 | R | Reserved |
5 | EXCOL | R | Excessive Collisions When the DTXSTS bit is set in the MTL_Operation_Mode register, this bit indicates that the transmission aborted after 16 successive collisions while attempting to transmit the current packet. If the DR bit is set in the MAC_Configuration register, this bit is set after the first collision and the packet transmission is aborted. Access restriction applies. Clears on read (or write of 1 when RCWE bit in MAC_CSR_SW_Ctrl register is set). Self-set to 1 on internal event. Values:
|
4 | LCOL | R | Late Collision When the DTXSTS bit is set in the MTL_Operation_Mode register, this bit indicates that the packet transmission aborted because a collision occurred after the collision window (64 bytes including Preamble in MII mode; 512 bytes including Preamble and Carrier Extension in GMII mode). This bit is not valid if the Underflow error occurs. Access restriction applies. Clears on read (or write of 1 when RCWE bit in MAC_CSR_SW_Ctrl register is set). Self-set to 1 on internal event. Values:
|
3 | EXDEF | R | Excessive Deferral When the DTXSTS bit is set in the MTL_Operation_Mode register and the DC bit is set in the MAC_Configuration register, this bit indicates that the transmission ended because of excessive deferral of over 24,288 bit times (155,680 in 1000/2500 Mbps mode or when Jumbo packet is enabled). Access restriction applies. Clears on read (or write of 1 when RCWE bit in MAC_CSR_SW_Ctrl register is set). Self-set to 1 on internal event. Values:
|
2 | LCARR | R | Loss of Carrier When the DTXSTS bit is set in the MTL_Operation_Mode register, this bit indicates that the loss of carrier occurred during packet transmission, that is, the phy_crs_i signal was inactive for one or more transmission clock periods during packet transmission. This bit is valid only for packets transmitted without collision. Access restriction applies. Clears on read (or write of 1 when RCWE bit in MAC_CSR_SW_Ctrl register is set). Self-set to 1 on internal event. Values:
|
1 | NCARR | R | No Carrier When the DTXSTS bit is set in the MTL_Operation_Mode register, this bit indicates that the carrier signal from the PHY is not present at the end of preamble transmission. Access restriction applies. Clears on read (or write of 1 when RCWE bit in MAC_CSR_SW_Ctrl register is set). Self-set to 1 on internal event. Values:
|
0 | TJT | R | Transmit Jabber Timeout This bit indicates that the Transmit Jabber Timer expired which happens when the packet size exceeds 2,048 bytes (10,240 bytes when the Jumbo packet is enabled) and JD bit is reset in the MAC_Configuration register. This bit is set when the packet size exceeds 16,383 bytes and the JD bit is set in the MAC_Configuration register. Access restriction applies. Clears on read (or write of 1 when RCWE bit in MAC_CSR_SW_Ctrl register is set). Self-set to 1 on internal event. Values:
|
MAC_PMT_Control_Status
- Description: The PMT Control and Status Register.
- Size: 32 bits
- Offset: 0xc0
Bits | Name | Memory Access | Description |
---|---|---|---|
31 | RWKFILTRST | R/W | Remote Wake-Up Packet Filter Register Pointer Reset When this
bit is set, the remote wake-up packet filter register pointer is
reset to 3'b000. It is automatically cleared after 1 clock
cycle. Access restriction applies. Setting 1 sets. Self-cleared. Setting 0 has no effect. Values:
Testable: Untestable |
30:29 | Reserved_30_29 | R | Reserved |
28:24 | RWKPTR | R | Remote Wake-up FIFO Pointer This field gives the current value (0 to 7, 15, or 31 when 4, 8, or 16 Remote Wake-up Packet Filters are selected) of the Remote Wake-up Packet Filter register pointer. When the value of this pointer is equal to maximum for the selected number of Remote Wake-up Packet Filters, the contents of the Remote Wake-up Packet Filter Register are transferred to the clk_rx_i domain when a Write occurs to that register. Testable: Untestable |
23:11 | Reserved_23_11 | R | Reserved |
10 | RWKPFE | R/W |
Remote Wake-up Packet Forwarding Enable When this bit is set along with RWKPKTEN, the MAC receiver drops all received frames until it receives the expected Wake-up frame. All frames after that event including the received wake-up frame are forwarded to application. This bit is then self-cleared on receiving the wake-up packet. The application can also clear this bit before the expected wake-up frame is received. In such cases, the MAC reverts to the default behavior where packets received are forwarded to the application. This bit must only be set when RWKPKTEN is set high and PWRDWN is set low. The setting of this bit has no effect when PWRDWN is set high. Note: If Magic Packet Enable and Wake-Up
Frame Enable are both set along with setting of this bit and
Magic Packet is received prior to wake-up frame, this bit is
self-cleared on receiving Magic Packet, the received Magic
packet is dropped, and all frames after received Magic
Packet are forwarded to application.
Access restriction applies. Setting 1 sets. Self-cleared. Setting 0 has no effect. Values:
|
9 | GLBLUCAST | R/W | Global Unicast When this bit is set, any unicast packet filtered by the MAC (DAF) address recognition is detected as a remote wake-up packet. Values:
|
8:7 | Reserved_8_7 | R | Reserved |
6 | RWKPRCVD | R | Remote Wake-Up Packet Received When this bit is set, it indicates that the power management event is generated because of the reception of a remote wake-up packet. This bit is cleared when this register is read. Access restriction applies. Clears on read (or write of 1 when RCWE bit in MAC_CSR_SW_Ctrl register is set). Self-set to 1 on internal event. Values:
|
5 | MGKPRCVD | R | Magic Packet Received When this bit is set, it indicates that the power management event is generated because of the reception of a magic packet. This bit is cleared when this register is read. Access restriction applies. Clears on read (or write of 1 when RCWE bit in MAC_CSR_SW_Ctrl register is set). Self-set to 1 on internal event. Values:
|
4:3 | Reserved_4_3 | R | Reserved |
2 | RWKPKTEN | R/W | Remote Wake-Up Packet Enable When this bit is set, a power management event is generated when the MAC receives a remote wake-up packet. Values:
|
1 | MGKPKTEN | R/W | Magic Packet Enabled When this bit is set, a power management event is generated when the MAC receives a magic packet. Values:
|
0 | PWRDWN | R/W | Power Down When this bit is set, the MAC receiver drops all received packets until it receives the expected magic packet or remote wake-up packet. This bit is then self-cleared and the power-down mode is disabled. The software can clear this bit before the expected magic packet or remote wake-up packet is received. The packets received by the MAC after this bit is cleared are forwarded to the application. This bit must only be set when the Magic Packet Enable, Global Unicast, or Remote Wake-Up Packet Enable bit is set high. Note: You can gate off the
CSR clock during the power-down mode. However, when the CSR
clock is gated-off, you cannot perform any read or write
operations on this register. Therefore, the software cannot clear this bit. Access restriction applies. Setting 1 sets. Self-cleared. Setting 0 has no effect. Values:
|
MAC_RWK_Packet_Filter
- Description: The Remote Wakeup Filter registers are implemented as 8, 16, or 32 indirect access registers based on whether 4, 8, or 16 Remote Wakeup Filters are selected in the configuration and accessed by application through MAC_RWK_Packet_Filter register.
- Size: 32 bits
- Offset: 0xc4
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | WKUPFRMFTR | R/W | RWK Packet Filter This field contains the various controls of RWK Packet filter. Testable: Untestable |
MAC_LPI_Control_Status
- Description: The LPI Control and Status Register controls the LPI functions and provides the LPI interrupt status. The status bits are cleared when this register is read.
- Size: 32 bits
- Offset: 0xd0
Bits | Name | Memory Access | Description |
---|---|---|---|
31:22 | Reserved_31_22 | R | Reserved |
21 | LPITCSE | R/W | LPI Tx Clock Stop Enabled When this bit is set, the MACasserts sbd_tx_clk_gating_ctrl_o signal high after it enters Tx LPI mode to indicate that the Tx clock to MAC can be stopped. When this bit is reset, the MAC does not assert sbd_tx_clk_gating_ctrl_o signal high after it enters Tx LPI mode. If RGMII Interface is selected, the Tx clock is required for transmitting the LPI pattern. The Tx Clock cannot be gated and so the LPITCSE bit cannot be programmed. Values:
|
20 | LPIATE | R/W | LPI Timer Enabled This bit controls the automatic entry of the MAC Transmitter into and exit out of the LPI state. When LPIATE, LPITXA and LPIEN bits are set, the MAC Transmitter enters LPI state only when the complete MAC TX data path is IDLE for a period indicated by the MAC_LPI_Entry_Timer register. After entering LPI state, if the data path becomes non-IDLE (due to a new packet being accepted for transmission), the Transmitter exits LPI state but does not clear LPIEN bit. This enables the re-entry into LPI state when it is IDLE again. When LPIATE is 0, the LPI Auto timer is disabled and MAC Transmitter enters LPI state based on the settings of LPITXA and LPIEN bit descriptions. Values:
|
19 | LPITXA | R/W | LPI Tx Automate This bit controls the behavior of the MAC when it is entering or coming out of the LPI mode on the Transmit side. This bit is not functional in the EQOS-CORE configurations in which the Tx clock gating is done during the LPI mode. If the LPITXA and LPIEN bits are set to 1, the MAC enters the LPI mode only after all outstanding packets (in the IP) and pending packets (in the application interface) have been transmitted. The MAC comes out of the LPI mode when the application sends any packet for transmission or the application issues a Tx FIFO Flush command. In addition, the MAC automatically clears the LPIEN bit when it exits the LPI state. If Tx FIFO Flush is set in the FTQ bit of MTL_TxQ0_Operation_Mode register, when the MAC is in the LPI mode, it exits the LPI mode. When this bit is0, the LPIEN bit directly controls behavior of the MAC when it is entering or coming out of the LPI mode. Values:
|
18 | PLSEN | R/W | PHY Link Status Enabled This bit enables the link status received on the RGMII, SGMII, or SMII Receive paths to be used for activating the LPI LS TIMER. When this bit is set, the MAC uses the link-status bits of the MAC_PHYIF_Control_Status register and the PLS bit for the LPI LS Timer trigger. When this bit is reset, the MAC ignores the link-status bits of the MAC_PHYIF_Control_Status register and takes only the PLS bit. Values:
|
17 | PLS | R/W | PHY Link Status This bit indicates the link status of the PHY. The MAC Transmitter asserts the LPI pattern only when the link status is up (OKAY) at least for the time indicated by the LPI LS TIMER. When this bit is set, the link is considered to be okay (UP) and when this bit is reset, the link is considered to be down. Values:
|
16 | LPIEN | R/W | LPI Enabled When this bit is set, it instructs the MAC Transmitter to enter the LPI state. When this bit is reset, it instructs the MAC to exit the LPI state and resume normal transmission. This bit is cleared when the LPITXA bit is set and the MAC exits the LPI state because of the arrival of a new packet for transmission. Values:
|
15:10 | Reserved_15_10 | R | Reserved |
9 | RLPIST | R | Receive LPI State When this bit is set, it indicates that the MAC is receiving the LPI pattern on the GMII or MII interface. Values:
|
8 | TLPIST | R | Transmit LPI State When this bit is set, it indicates that the MAC is transmitting the LPI pattern on the GMII or MII interface. Values:
|
7:4 | Reserved_7_4 | R | Reserved |
3 | RLPIEX | R | Receive LPI Exit When this bit is set, it indicates that the MAC Receiver has stopped receiving the LPI pattern on the GMII or MII interface, exited the LPI state, and resumed the normal reception. This bit is cleared by a read into this register (or this bit is written to 1 when RCWE bit in MAC_CSR_SW_Ctrl register is set). Note: This bit might not be set if the MAC
stops receiving the LPI pattern for a very short duration,
such as, less than three clock cycles of CSR
clock. Values:
|
2 | RLPIEN | R | Receive LPI Entry When this bit is set, it indicates that the MAC Receiver has received an LPI pattern and entered the LPI state. This bit is cleared by a read into this register (or this bit is written to 1 when RCWE bit in MAC_CSR_SW_Ctrl register is set). Note: :This bit might not be set if the MAC
stops receiving the LPI pattern for a very short duration,
such as, less than three clock cycles of CSR
clock. Values:
|
1 | TLPIEX | R | Transmit LPI Exit When this bit is set, it indicates that the MAC transmitter exited the LPI state after the application cleared the LPIEN bit and the LPI TW Timer has expired. This bit is cleared by a read into this register (or this bit is written to 1 when RCWE bit in MAC_CSR_SW_Ctrl register is set). Values:
|
0 | TLPIEN | R | Transmit LPI Entry When this bit is set, it indicates that the MAC Transmitter has entered the LPI state because of the setting of the LPIEN bit. This bit is cleared by a read into this register (or this bit is written to 1 when RCWE bit in MAC_CSR_SW_Ctrl register is set). Values:
|
MAC_LPI_Timers_Control
- Description: The LPI Timers Control register controls the timeout values in the LPI states. It specifies the time for which the MAC transmits the LPI pattern and also the time for which the MAC waits before resuming the normal transmission.
- Size: 32 bits
- Offset: 0xd4
Bits | Name | Memory Access | Description |
---|---|---|---|
31:26 | Reserved_31_26 | R | Reserved |
25:16 | LST | R/W | LPI LS Timer This field specifies the minimum time (in milliseconds) for which the link status from the PHY should be up (OKAY) before the LPI pattern can be transmitted to the PHY. The MAC does not transmit the LPI pattern even when the LPIEN bit is set unless the LPI LS Timer reaches the programmed terminal count. The default value of the LPI LS Timer is 1000 (1 sec) as defined in the IEEE standard. |
15:0 | TWT | R/W | LPI TW Timer This field specifies the minimum time (in microseconds) for which the MAC waits after it stops transmitting the LPI pattern to the PHY and before it resumes the normal transmission. The TLPIEX status bit is set after the expiry of this timer. |
MAC_LPI_Entry_Timer
- Description: This register controls the Tx LPI entry timer. This counter is enabled only when bit[20](LPITE) bit of MAC_LPI_Control_Status is set to 1.
- Size: 32 bits
- Offset: 0xd8
Bits | Name | Memory Access | Description |
---|---|---|---|
31:20 | Reserved_31_20 | R | Reserved |
19:3 | LPIET | R/W | LPI Entry Timer This field specifies the time in microseconds the MAC waits to enter LPI mode, after it has transmitted all the frames. This field is valid and used only when LPITE and LPITXA are set to 1. Bits [2:0] are read-only so that the granularity of this timer is in steps of 8 micro-seconds. |
2:0 | Reserved_2_0 | R | Reserved |
MAC_1US_Tic_Counter
- Description: This register controls the generation of the Reference time (1 microsecond tic) for all the LPI timers. This timer has to be programmed by the software initially.
- Size: 32 bits
- Offset: 0xdc
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | HT255T224 | R/W | MAC Hash Table Eighth 32 Bits |
MAC_Hash_Table_Reg7
- Description: The Hash Table Register 7 contains the eighth 32 bits of the hash table. You can specify the width of the hash table by using the Hash Table Size option in core Consultant.
- Size: 32 bits
- Offset: 0x2c
Bits | Name | Memory Access | Description |
---|---|---|---|
31:12 | Reserved_31_12 | R | Reserved |
11:0 | TIC_1US_CNTR | R/W | 1USTIC Counter The application must program this counter so that the number of clock cycles of CSR clock is 1us. (Subtract 1 from the value before programming). For example if the CSR clock is 100MHz then this field needs to be programmed to value 100 - 1 = 99 (which is 0x63). This is required to generate the 1US events that are used to update some of the EEE related counters. |
MAC_AN_Control
- Description: The AN Control register enables and restarts auto-negotiation. It also enables PCS loop- back. This register is optional.
- Size: 32 bits
- Offset: 0xe0
Bits | Name | Memory Access | Description |
---|---|---|---|
31:19 | Reserved_31_19 | R | Reserved |
18 | SGMRAL | R/W | SGMII RAL Control When this bit is set, the SGMII RAL block operates in the speed configured in the Speed and Port Select bits of the MAC_Configuration register. This is useful when the SGMII interface is used in a direct MAC to MAC connection (without a PHY) and any MAC must reconfigure the speed. When this bit is reset, the SGMII RAL block operates according to the link speed status received on SGMII (from the PHY). Values:
|
17 | LR | R/W | Lock to Reference When this bit is set, the PHY locks its PLL to the 125 MHz reference clock. This bit controls the pcs_lck_ref_o signal on the TBI, RTBI, or SGMII interface. Values:
|
16 | ECD | R/W | Enable Comma Detect When this bit is set, the PHY is enabled for comma detection and word resynchronization. When this bit is reset, the comma detection and word resynchronization is done internally by DWC_ether_qos PCS block. This bit controls the pcs_en_cdet_o signal on the TBI, RTBI, or SGMII interface. Values:
|
15 | Reserved_15 | R | Reserved |
14 | ELE | R/W | External Loopback Enabled When this bit is set, it enables the PHY to loopback the Transmit data into the Receive path. The pcs_ewrap_o signal is asserted high when this bit is set. Values:
|
13 | Reserved_13 | R | Reserved |
12 | ANE | R/W |
Auto-Negotiation Enable When this bit is set, it enables the MAC to perform auto-negotiation with the link partner. When this is reset, the auto-negotiation is disabled. Values:
|
11:10 | Reserved_11_10 | R | Reserved |
9 | RAN | R/W | Restart Auto-Negotiation When this bit is set, auto-negotiation is restarted if Bit 12 (ANE) is set. This bit is self-clearing after auto-negotiation starts. This bit should be cleared for normal operation. Access restriction applies. Setting 1 sets. Self-cleared. Setting 0 has no effect. Values:
Testable: Untestable |
8:0 | Reserved_8_0 | R | Reserved |
MAC_AN_Status
- Description: The AN Status register indicates the link and the auto-negotiation status.
- Size: 32 bits
- Offset: 0xe4
Bits | Name | Memory Access | Description |
---|---|---|---|
31:9 | Reserved_31_9 | R | Reserved |
8 | ES | R | Extended Status This bit is tied to high if the TBI or RTBI interface is selected while configuring the IP, indicating that the MAC supports extended status information in the MAC_TBI_Extended_Status register. This bit is tied to low if the SGMII interface is selected and the TBI or RTBI interface is not selected while configuring the IP, indicating that MAC_TBI_Extended_Status register is not present.
Values:
|
7:6 | Reserved_7_6 | R | Reserved |
5 | ANC | R |
Auto-Negotiation Complete When this bit is set, it indicates that the auto-negotiation process is complete. This bit is cleared when auto-negotiation is again initiated. Values:
|
4 | Reserved_4 | R | Reserved |
3 | ANA | R | Auto-Negotiation Ability This bit is always high because the MAC supports auto-negotiation. Values:
|
2 | LS | R |
Link Status When this bit is set, it indicates that the link is up between the MAC and the TBI, RTBI, or SGMII interface. When this bit is reset, it indicates that the link is down between the MAC and the TBI, RTBI, or SGMII interface. Values:
Testable: Untestable |
1:0 | Reserved_1_0 | R | Reserved |
MAC_AN_Advertisement
- Description: The Auto-Negotiation Advertisement register indicates the link and the auto-negotiation status.
- Size: 32 bits
- Offset: 0xe8
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
15 | NP | R | Next Page Support This bit is always low because the MAC does not support the next page. Values:
|
14 | Reserved_14 | R | Reserved |
13:12 | RFE | R/W |
Remote Fault Encoding These bits provide a remote fault encoding, indicating to a link partner that a fault or error condition has occurred. The encoding of these bits is defined in IEEE 802.3z, Section 37.2.1.5. |
11:9 | Reserved_11_9 | R | Reserved |
8:7 | PSE | R/W | Pause Encoding These bits provide an encoding for the Pause bits, indicating that the MAC is capable of configuring the Pause function as defined in IEEE 802.3x. The encoding of these bits is defined in IEEE 802.3z, Section 37.2.1.4. |
6 | HD | R/W |
Half-Duplex When set high, this bit indicates that the MAC supports the half-duplex mode. This bit is always low (and RO) when the MAC is configured for the full-duplex-only mode. Values:
|
5 | FD | R/W | Full-Duplex When set high, this bit indicates that the MAC supports the full-duplex mode. Values:
|
4:0 | Reserved_4_0 | R | Reserved |
MAC_AN_Link_Partner_Ability
- Description: The Auto-Negotiation Link Partner Ability register contains the advertised ability of the link partner.
- Size: 32 bits
- Offset: 0xec
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
15 | NP | R | Next Page Support When this bit is set, it indicates that more next page information is available. When this bit is reset, it indicates that the next page exchange is not desired. Values:
|
14 | ACK | R | Acknowledge When this bit is set, the auto-negotiation function uses this bit to indicate that the link partner has successfully received the base page of the MAC. When this bit is reset, it indicates that the link partner did not successfully receive the base page of the MAC. Values:
|
13:12 | RFE | R |
Remote Fault Encoding These bits provide a remote fault encoding, indicating a fault or error condition of the link partner. The encoding of these bits is defined in IEEE 802.3z, Section 37.2.1.5. |
11:9 | Reserved_11_9 | R | Reserved |
8:7 | PSE | R | Pause Encoding These bits provide an encoding for the Pause bits. These bits indicate that the link partner is capable of configuring the Pause function as defined in the IEEE 802.3x. The encoding of these bits is defined in IEEE 802.3z, Section 37.2.1.4. |
6 | HD | R | Half-Duplex When this bit is set, it indicates that the link partner can operate in the half-duplex mode. When this bit is reset, it indicates that the link partner cannot operate in the half-duplex mode. Values:
|
5 | FD | R | Full-Duplex When this bit is set, it indicates that the link partner has the ability to operate in the full-duplex mode. When this bit is reset, it indicates that the link partner does not have the ability to operate in the full-duplex mode. Values:
|
4:0 | Reserved_4_0 | R | Reserved |
MAC_AN_Expansion
- Description: The Auto-Negotiation Expansion register indicates if the MAC received a new base page from the link partner. This register is optional.
- Size: 32 bits
- Offset: 0xf0
Bits | Name | Memory Access | Description |
---|---|---|---|
31:3 | Reserved_31_3 | R | Reserved |
2 | NPA | R | Next Page Ability This bit is always low because the MAC does not support the next page function. Values:
|
1 | NPR | R | New Page Received When this bit is set, it indicates that the MAC has received a new page. This bit is cleared when read. Values:
|
0 | Reserved_0 | R | Reserved |
MAC_TBI_Extended_Status
- Description: The TBI Extended Status register indicates all modes of operation of the MAC.
- Size: 32 bits
- Offset: 0xf4
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
15 | GFD | R | 1000BASE-XFull-Duplex Capable When this bit is set, the MAC is able to perform the full-duplex and 1000BASE-X operations. Values:
|
14 | GHD | R | 1000BASE-XHalf-Duplex Capable When this bit is set, the MAC is able to perform the half-duplex and 1000BASE-X operations. This bit is always low when the MAC is configured for the full-duplex-only operation while configuring the IP. Values:
|
13:0 | Reserved_13_0 | R | Reserved |
MAC_PHYIF_Control_Status
- Description: The PHY Interface Control and Status register indicates the status signals received by the SGMII, RGMII, or SMII interface (selected at reset) from the PHY. This register is optional.
- Size: 32 bits
- Offset: 0xf8
Bits | Name | Memory Access | Description |
---|---|---|---|
31:22 | Reserved_31_22 | R | Reserved |
21 | FALSCARDET | R | False Carrier Detected This bit indicates whether the SMII PHY detected false carrier (1'b1). Values:
Testable: Untestable |
20 | JABTO | R | Jabber Timeout This bit indicates the jabber timeout error (1'b1) in the received packet. Values:
Testable: Untestable |
19 | LNKSTS | R | Link Status This bit indicates whether the linkis up (1'b1) or down (1'b0). Values:
Testable: Untestable |
18:17 | LNKSPEED | R | Link Speed This bit indicates the current speed of the link. Bit 2 is reserved when the MAC is configured for the SMII PHY interface. Values:
Testable: Untestable |
16 | LNKMOD | R | Link Mode This bit indicates the current mode of operation of the link. Values:
Testable: Untestable |
15:5 | Reserved_15_5 | R | Reserved |
4 | SMIDRXS | R/W | Delay SMII Rx Data Sampling with respect to the SMII SYNC
Signal When this bit is set, the first bit of the SMII Rx data is sampled one cycle after the SMII SYNC signal. When reset, the first bit of the SMII Rx data is sampled along with the SMII SYNC signal. Values:
|
3 | Reserved_3 | R | Reserved |
2 | SFTERR | R/W |
SMII Force Transmit Error When set, this bit indicates to the PHY to force a transmit error in the SMII packet being transmitted. Values:
|
1 | LUD | R/W | Link Up or Down This bit indicates whether the link is up or down during transmission of configuration in the RGMII, SGMII, or SMII interface. Values:
|
0 | TC | R/W | Transmit Configuration in RGMII, SGMII, or SMII When set, this bit enables the transmission of duplex mode, link speed, and link up or down information to the PHY in the RGMII, SMII, or SGMII port. When this bit is reset, no such information is driven to the PHY. Values:
|
MAC_Version
- Description: The version register identifies the version of the DWC_ether_qos. This register contains two bytes: one that Synopsys uses to identify the IP release number, and the other that you set while configuring the IP.
- Size: 32 bits
- Offset: 0x110
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
15:8 | USERVER | R | User-defined version (configured with core Consultant) |
7:0 | SNPSVER | R | Synopsys defined version |
MAC_Debug
- Description: The Debug register provides the debug status of various MAC blocks.
- Size: 32 bits
- Offset: 0x114
Bits | Name | Memory Access | Description |
---|---|---|---|
31:19 | Reserved_31_19 | R | Reserved |
18:17 | TFCSTS | R |
MAC Transmit Packet Controller Status This field indicates the state of the MAC Transmit Packet Controller module. Values:
|
16 | TPESTS | R |
MACGMII or MII Transmit Protocol Engine Status When this bit is set, it indicates that the MAC GMII or MII transmit protocol engine is actively transmitting data, and it is not in the Idle state. Values:
|
15:3 | Reserved_15_3 | R | Reserved |
2:1 | RFCFCSTS | R |
MAC Receive Packet Controller FIFO Status When this bit is set, this field indicates the active state of the small FIFO Read and Write controllers of the MAC Receive Packet Controller module. |
0 | RPESTS | R |
MACGMII or MII Receive Protocol Engine Status When this bit is set, it indicates that the MAC GMII or MII receive protocol engine is actively receiving data, and it is not in the Idle state. Values:
|
MAC_HW_Feature0
- Description: This register indicates the presence of first set of the
optional features or functions of the DWC_ether_qos. The software driver can
use this register to dynamically enable or disable the programs related to
the optional blocks.Note: All bits are set or reset according to the features selected while configuring the IP in core Consultant.
- Size: 32 bits
- Offset: 0x11c
Bits | Name | Memory Access | Description |
---|---|---|---|
31 | Reserved_31 | R | Reserved |
30:28 | ACTPHYSEL | R |
Active PHY Selected When you have multiple PHY interfaces in your configuration, this field indicates the sampled value of phy_intf_sel_i during reset de-assertion. Values:
|
27 | SAVLANINS | R |
Source Address orVLAN Insertion Enable This bit is set to 1 when the Enable SA and VLAN Insertion on Tx option is selected Values:
|
26:25 | TSSTSSEL | R | Timestamp System Time Source This bit indicates the source of the Time stamp system time: This bit is set to 1 when the Enable IEEE 1588 Time stamp Support option is selected Values:
|
24 | MACADR64SEL | R | MAC Addresses 64-127 Selected This bit is set to 1 when the Enable Additional 64 MAC Address Registers (64-127) option is selected Values:
|
23 | MACADR32SEL | R |
MAC Addresses 32-63 Selected This bit is set to 1 when the Enable Additional 32 MAC Address Registers (32-63) option is selected Values:
|
22:18 | ADDMACADRSEL | R | MAC Addresses 1-31 Selected This bit is set to 1 when the non-zero value is selected for Enable Additional 1-31 MAC Address Registers option |
17 | Reserved_17 | R | Reserved |
16 | RXCOESEL | R | Receive Checksum Offload Enabled This bit is set to 1 when the Enable Receive TCP/IP Checksum Check option is selected Values:
|
15 | Reserved_15 | R | Reserved |
14 | TXCOESEL | R | Transmit Checksum Offload Enabled This bit is set to 1 when the Enable Transmit TCP/IP Checksum Insertion option is selected Values:
|
13 | EEESEL | R | Energy Efficient Ethernet Enabled This bit is set to 1 when the Enable Energy Efficient Ethernet (EEE) option is selected Values:
|
12 | TSSEL | R | IEEE 1588-2008 Timestamp Enabled This bit is set to 1 when the Enable IEEE 1588 Timestamp Support option is selected Values:
|
11:10 | Reserved_11_10 | R | Reserved |
9 | ARPOFFSEL | R | ARP Offload Enabled This bit is set to 1 when the Enable IPv4 ARP Offload option is selected Values:
|
8 | MMCSEL | R | RMON Module Enabled This bit is set to 1 when the Enable MAC Management Counters (MMC) option is selected Values:
|
7 | MGKSEL | R | PMT Magic Packet Enabled This bit is set to 1 when the Enable Magic Packet Detection option is selected Values:
|
6 | RWKSEL | R | PMT Remote Wake-up Packet Enabled This bit is set to 1 when the Enable Remote Wake-Up Packet Detection option is selected Values:
|
5 | SMASEL | R | SMA(MDIO) Interface This bit is set to 1 when the Enable Station Management (MDIO Interface) option is selected Values:
|
4 | VLHASH | R | VLAN Hash Filter Selected This bit is set to 1 when the Enable VLAN Hash Table Based Filtering option is selected Values:
|
3 | PCSSEL | R |
PCS Registers (TBI, SGMII, or RTBI PHY interface) This bit is set to 1 when the TBI, SGMII, or RTBI PHY interface option is selected Values:
|
2 | HDSEL | R | Half-duplex Support This bit is set to 1 when the half-duplex mode is selected Values:
|
1 | GMIISEL | R | 1000 Mbps Support This bit is set to 1 when 1000 Mbps is selected as the Mode of Operation Values:
|
0 | MIISEL | R | 10 or100 Mbps Support This bit is set to 1 when 10/100 Mbps is selected as the Mode of Operation Values:
|
MAC_HW_Feature1
- Description: This register indicates the presence of second set of the
optional features or functions of the DWC_ether_qos. The software driver can
use this register to dynamically enable or disable the programs related to
the optional blocks.Note: All bits are set or reset according to the features selected while configuring the IP in core Consultant.
- Size: 32 bits
- Offset: 0x120
Bits | Name | Memory Access | Description |
---|---|---|---|
31 | Reserved_31 | R | Reserved |
30:27 | L3L4FNUM | R | Total number of L3 or L4 Filters This field indicates the total number ofL3 or L4 filters: Values:
|
26 | Reserved_26 | R | Reserved |
25:24 | HASHTBLSZ | R | Hash Table Size This field indicates the size of the hash table: Values:
|
23 | POUOST | R | One Step for PTP over UDP/IP Feature Enabled This bit is set to 1 when the Enable One step time stamp for PTP over UDP/IP feature is selected. Values:
|
22 | Reserved_22 | R | Reserved |
21 | RAVSEL | R | Rx Side Only AV Feature Enabled This bit is set to 1 when the Enable Audio Video Bridging option on Rx Side Only is selected. Values:
|
20 | AVSEL | R | AV Feature Enabled This bit is set to 1 when the Enable Audio Video Bridging option is selected. Values:
|
19 | DBGMEMA | R | DMA Debug Registers Enabled This bit is set to 1 when the Debug Mode Enable option is selected Values:
|
18 | TSOEN | R | TCP Segmentation Offload Enabled This bit is set to 1 when the Enable TCP Segmentation Offloading for TCP/IP Packets option is selected Values:
|
17 | SPHEN | R |
Split Header Feature Enable This bit is set to 1 when the Enable Split Header Structure option is selected Values:
|
16 | DCBEN | R |
DCB Feature Enable This bit is set to 1 when the Enable Data Center Bridging option is selected Values:
|
15:14 | ADDR64 | R |
Address Width. This field indicates the configured address width: Values:
|
13 | ADVTHWORD | R |
IEEE1588 High Word Register Enable This bit is set to 1 when the Add IEEE 1588 Higher Word Register option is selected Values:
|
12 | PTOEN | R |
PTP Offload Enable This bit is set to 1 when the Enable PTP Time stamp Offload Feature is selected. Values:
|
11 | OSTEN | R |
One-Step Time-stamping Enable This bit is set to 1 when the Enable One-Step Time-stamp Feature is selected. Values:
Value After Reset: ((DWC_EQOS_OST_EN)?\"1\":\"0\") |
10:6 | TXFIFOSIZE | R | MTL Transmit FIFO Size This field contains the configured value of MTL Tx FIFO in bytes expressed as Log to base 2 minus 7, that is, Log2(TXFIFO_SIZE) -7. Values:
|
5 | SPRAM | R | Single Port RAM Enabled This bit is set to 1 when the Use single port RAM Feature is selected. Values:
|
4:0 | RXFIFOSIZE | R |
MTL Receive FIFO Size This field contains the configured value of MTL Rx FIFO in bytes expressed as Log to base 2 minus 7, that is, Log2(RXFIFO_SIZE) -7: Values:
|
MAC_HW_Feature2
- Description: This register indicates the presence of third set of the optional features or functions of the DWC_ether_qos. The software driver can use this register to dynamically enable or disable the programs related to the optional blocks.
- Size: 32 bits
- Offset: 0x124
Bits | Name | Memory Access | Description |
---|---|---|---|
31 | Reserved_31 | R | Reserved |
30:28 | AUXSNAPNUM | R |
Number of Auxiliary Snapshot Inputs This field indicates the number of auxiliary snapshot inputs: Values:
|
27 | Reserved_27 | R | Reserved |
26:24 | PPSOUTNUM | R |
Number of PPS Outputs This field indicates the number of PPS outputs: Values:
|
23:22 | TDCSZ | R |
Tx DMA Descriptor Cache Size in terms of 16 bytes descriptors: 00 -Cache Not configured 01 - 4 16 bytes descriptor
|
21:18 | TXCHCNT | R |
Number of DMA Transmit Channels This field indicates the number of DMA Transmit channels: Values:
|
17:16 | RDCSZ | R |
Rx DMA Descriptor Cache Size in terms of 16 bytes descriptors: 00 -Cache Not configured 01 - 4 16 bytes descriptor
|
15:12 | RXCHCNT | R |
Number of DMA Receive Channels This field indicates the number of DMA Receive channels: Values:
0x1(M_1RDCSZ): 4 0x2(M_2RDCSZ): 8 0x3(M_3RDCSZ): 16 |
11:10 | Reserved_11_10 | R | Reserved |
9:6 | TXQCNT | R |
Number of MTL Transmit Queues This field indicates the number of MTL Transmit queues: Values:
|
5:4 | Reserved_5_4 | R | Reserved |
3:0 | RXQCNT | R |
Number of MTL Receive Queues This field indicates the number of MTL Receive queues: Values:
|
MAC_HW_Feature3
- Description: This register indicates the presence of fourth set the optional features or functions of the DWC_ether_qos. The software driver can use this register to dynamically enable or disable the programs related to the optional blocks.
- Size: 32 bits
- Offset: 0x128
Bits | Name | Memory Access | Description |
---|---|---|---|
31:30 | Reserved_31_30 | R | Reserved |
29:28 | ASP | R |
Automotive Safety Package Following are the encoding for the different Safety features Values:
|
27 | TBSSEL | R |
Time Based Scheduling Enable This bit is set to 1 when the Time Based Scheduling feature is selected. Values:
|
26 | FPESEL | R | Frame Preemption Enabled This bit is set to 1 when the Enable Frame preemption feature is selected. Values:
|
25:22 | Reserved_25_22 | R | Reserved |
21:20 | ESTWID | R | Width of the Time Interval field in the Gate Control
List This field indicates the width of the Configured Time Interval Field Values:
|
19:17 | ESTDEP | R | Depth of the Gate Control List This field indicates the depth of Gate Control list expressed as Log2(DWC_EQOS_EST_DEP)-5 Values:
|
16 | ESTSEL | R | Enhancements to Scheduled Traffic Enabled This bit is set to 1 when the Enable Enhancements to Scheduling Traffic feature is selected. Values:
|
15 | Reserved_15 | R | Reserved |
14:13 | FRPES | R | Flexible Receive Parser Table Entries Size This field indicates the Max Number of Parser Entries supported by Flexible Receive Parser. Values:
|
12:11 | FRPBS | R | Flexible Receive Parser Buffer Size This field indicates the supported Max Number of bytes of the packet data to be Parsed by Flexible Receive Parser. Values:
|
10 | FRPSEL | R | Flexible Receive Parser Selected This bit is set to 1 when the Enable Flexible Programmable Receive Parser option is selected. Values:
|
9 | PDUPSEL | R | Broadcast/Multicast Packet Duplication This bit is set to 1 when the Broadcast/Multicast Packet Duplication feature is selected. Values:
|
8:6 | Reserved_7_6 | R | Reserved |
5 | DVLAN | R | Double VLAN Tag Processing Selected This bit is set to 1 when the Enable Double VLAN Processing Feature is selected. Values:
|
4 | CBTISEL | R | Queue/Channel based VLAN tag insertion on Tx Enabled This bit is set to 1 when the Enable Queue/Channel based VLAN tag insertion on Tx Feature is selected. Values:
|
3 | Reserved_3 | R | Reserved |
2:0 | NRVF | R |
Number of Extended VLAN Tag Filters Enabled This field indicates the Number of Extended VLAN Tag Filters selected: Values:
|
MAC_DPP_FSM_Interrupt_Status
- Description: This register contains the status of Automotive Safety related Data Path Parity Errors, Interface Timeout Errors, FSM State Parity Errors and FSM State Timeout Errors. All the non-Reserved bits are cleared on read.
- Size: 32 bits
- Offset: 0x140
Bits | Name | Memory Access | Description |
---|---|---|---|
31:29 | Reserved_31_29 | R | Reserved |
28 | DCPES | R/W |
Values:
Testable: Untestable |
27 | MRWCPES | R/W |
MTL RWC Data Path Parity checker Error Status This filed when set indicates that, parity error is detected on the MTL RWC data interface (or at PC12 as shown in Receive data path parity protection diagram). Values:
Testable: Untestable |
26 | MTFCPES | R/W |
MAC TFC Data Path Parity Checker Error Status This filed when set indicates that, parity error is detected on the MAC TFC data interface (or at PC11 as shown in Transmit data path parity protection diagram). Values:
Testable: Untestable |
25 | MTBUPES | R/W |
MACTBU data path Parity checker Error Status This filed when set indicates that, parity error is detected on the MAC TBU data interface (or at PC10 as shown in Transmit data path parity protection diagram). Values:
Testable: Untestable |
24 | FSMPES | R/W | FSM State Parity Error Status This field when set indicates one of the FSMs State registers has a parity error detected. Values:
Testable: Untestable |
23:18 | Reserved_23_18 | R | Reserved |
17 | SLVTES | R/W | Slave Read/Write Timeout Error Status This field when set indicates that an Application/CSR Timeout has occurred on the AXIslave interface. Values:
Testable: Untestable |
16 | MSTTES | R/W | Master Read/Write Timeout Error Status This field when set indicates that an Application/CSR Timeout has occurred on the master (AXI/AHB/ARI/ATI) interface. Values:
Testable: Untestable |
15 | RVCTES | R/W |
REVMDC FSM Timeout Error Status This field when set indicates that one of the Rev Mdc FSM Timeout has occurred. Values:
Testable: Untestable |
14 | R125ES | R/W | Rx125 FSM Timeout Error Status This field when set indicates that one of the Rx125 FSM Timeout has occurred. Values:
Testable: Untestable |
13 | T125ES | R/W | Tx125 FSM Timeout Error Status This field when set indicates that one of the Tx125 FSM Timeout has occurred. Values:
Testable: Untestable |
12 | PTES | R/W | PTPFSM Timeout Error Status This field when set indicates that one of the PTP FSM Timeout has occurred. Values:
Testable: Untestable |
11 | ATES | R/W | APPFSM Timeout Error Status This field when set indicates that one of the APP FSM Timeout has occurred. Values:
Testable: Untestable |
10 | CTES | R/W | CSRFSM Timeout Error Status This field when set indicates that one of the CSR FSM Timeout has occurred. Values:
Testable: Untestable |
9 | RTES | R/W | RxFSM Timeout Error Status This field when set indicates that one of the Rx FSM Timeout has occurred. Values:
Testable: Untestable |
8 | TTES | R/W | Tx FSMTimeout Error Status This field when set indicates that one of the Tx FSM Timeout has occurred. Values:
Testable: Untestable |
7 | ASRPES | R/W | AXI Slave Read Data Path Parity checker Error Status This bit when set indicates that parity error is detected at the AXI Slave read data interface on "rdata_s_o" or at PC9 checker. Values:
Testable: Untestable |
6 | CWPES | R/W | CSR Write data path Parity checker Error Status This bit when set indicates that parity error is detected at the CSR write data interface on mci_wdata_i (or at PC8 checker as shown in AXI slave Interface Data path parity protection diagram). When EPSI bit of MTL_DPP_Control register is set and if any parity mismatch is detected on the input slave parity ports (or at PC7 checker in the AXI slave Interface Data path parity protection diagram) sets this bit to one. Values:
Testable: Untestable |
5 | ARPES | R/W | Application Receive Interface Data Path Parity Error Status
This bit when set indicates that a parity error is detected at
the following checkers based on the system configuration:
Values:
Testable: Untestable |
4 | MTSPES | R/W |
MTL TX Status data path Parity checker Error Status This filed when set indicates that, parity error is detected on the MTL TX Status data on an interface (or at PC5 as shown in Transmit data path parity protection diagram). Values:
Testable: Untestable |
3 | MPES | R/W | MTL Data Path Parity checker Error Status This bit when set indicates that a parity error is detected at the MTL transmit write controller parity checker (or at PC4 as shown in Transmit data path parity protection diagram). Values:
Testable: Untestable |
2 | RDPES | R/W | Read Descriptor Parity Checker Error Status This bit when set indicates that a parity error is detected at the DMA Read descriptor parity checker (or at PC3 as shown in Transmit data path parity protection diagram). Values:
Testable: Untestable |
1 | TPES | R/W | TSO Data Path Parity checker Error Status This bit when set indicates that a parity error is detected at the DMA TSO parity checker (or at PC2 as shown in Transmit data path parity protection diagram). Values:
Testable: Untestable |
0 | ATPES | R/W | Application Transmit Interface Parity Checker Error Status This bit when set indicates that a parity error is detected on the AXI/AHB Master read data parity checker. This bit when set indicates that a parity error is detected on the interface port parity checker. Following are the checkers located based on the system configuration,
Values:
Testable: Untestable |
MAC_AXI_SLV_DPE_Addr_Status
- Description: This register indicates the CSR address corresponding to the CSR write data on which parity error occured.
- Size: 32 bits
- Offset: 0x144
Bits | Name | Memory Access | Description |
---|---|---|---|
31:14 | Reserved_31_14 | R | Reserved |
13:0 | ASPEAS | R | AXI Slave data path Parity Error Address Status This field holds the CSR address for which parity error is detected on the CSR write data. This field holds the first address for which parity error is detected on the write data and is cleared on read. |
MAC_FSM_Control
- Description: This register is used to control the FSM State parity and timeout error injection in Debug mode.
- Size: 32 bits
- Offset: 0x148
Bits | Name | Memory Access | Description |
---|---|---|---|
31 | RVCLGRNML | R/W | REVMDC Large/Normal Mode Select This field when set indicates that large mode tic generation is used for RevMII MDC domain, else normal mode tic generation is used. Values:
|
30 | R125LGRNML | R/W | Rx125 Large/Normal Mode Select This field when set indicates that large mode tic generation is used for Rx125 domain, else normal mode tic generation is used. Values:
|
29 | T125LGRNML | R/W |
Tx125 Large/Normal Mode Select This field when set indicates that large mode tic generation is used for Tx125 domain, else normal mode tic generation is used. Values:
|
28 | PLGRNML | R/W | PTP Large/Normal Mode Select This field when set indicates that large mode tic generation is used for PTP domain, else normal mode tic generation is used. Values:
|
27 | ALGRNML | R/W | APP Large/Normal Mode Select This field when set indicates
that large mode tic generation is used for APP domain, else
normal mode tic generation is used. Values:
|
26 | CLGRNML | R/W | CSR Large/Normal Mode Select This field when set indicates
that large mode tic generation is used for CSR domain, else
normal mode tic generation is used. Values:
|
25 | RLGRNML | R/W | Rx Large/Normal Mode Select This field when set indicates that large mode tic generation is used for Rx domain, else normal mode tic generation is used. Values:
|
24 | TLGRNML | R/W |
Tx Large/Normal Mode SelectThis field when set indicates that large mode tic generation is used for Tx domain, else normal mode tic generation is used. Values:
|
23 | RVCPEIN | R/W | REV MDC FSM Parity Error Injection This field when set indicates that Error Injection for REVMII MDC FSM Parity is enabled. Values:
|
22 | R125PEIN | R/W | Rx125 FSM Parity Error Injection This field when set indicates that Error Injection for RX125 FSM Parity is enabled. Values:
|
21 | T125PEIN | R/W | Tx125 FSM Parity Error Injection This field when set indicates that Error Injection for TX125 FSM Parity is enabled. Values:
|
20 | PPEIN | R/W | PTP FSM Parity Error Injection This field when set indicates that Error Injection for PTP FSM Parity is enabled. Values:
|
19 | APEIN | R/W | APP FSM Parity Error Injection This field when set indicates that Error Injection for APP FSM Parity is enabled. Values:
|
18 | CPEIN | R/W | CSR FSM Parity Error Injection This field when set indicates that Error Injection for CSR Parity is enabled. Values:
|
17 | RPEIN | R/W | Rx FSM Parity Error Injection This field when set indicates that Error Injection for RX FSM Parity is enabled. Values:
|
16 | TPEIN | R/W | Tx FSM Parity Error Injection This field when set indicates that Error Injection for TX FSM Parity is enabled. Values:
|
15 | RVCTEIN | R/W | REV MDC FSM Timeout Error Injection This field when set indicates that Error Injection for REVMII MDC FSM timeout is enabled. Values:
|
14 | R125TEIN | R/W | Rx125 FSM Timeout Error Injection This field when set indicates that Error Injection for RX125 FSM timeout is enabled. Values:
|
13 | T125TEIN | R/W | Tx125 FSM Timeout Error Injection This field when set indicates that Error Injection for TX125 FSM timeout is enabled. Values:
|
12 | PTEIN | R/W | PTP FSM Timeout Error Injection This field when set indicates that Error Injection for PTP FSM timeout is enabled. Values:
|
11 | ATEIN | R/W | APP FSM Timeout Error Injection This field when set indicates that Error Injection for APP FSM timeout is enabled. Values:
|
10 | CTEIN | R/W | CSR FSM Timeout Error Injection This field when set indicates that Error Injection for CSR timeout is enabled. Values:
|
9 | RTEIN | R/W | Rx FSM Timeout Error Injection This field when set indicates that Error Injection for RX FSM timeout is enabled. Values:
|
8 | TTEIN | R/W | Tx FSM Timeout Error Injection This field when set indicates that Error Injection for TX FSM timeout is enabled. Values:
|
7:2 | Reserved_7_2 | R | Reserved |
1 | PRTYEN | R/W | This bit when set indicates that the FSM parity feature is
enabled. Values:
|
0 | TMOUTEN | R/W | This bit when set indicates that the FSM timeout feature is
enabled. Values:
|
MAC_FSM_ACT_Timer
- Description: This register is used to select the FSM and Interface Timeout values.
- Size: 32 bits
- Offset: 0x14c
Bits | Name | Memory Access | Description |
---|---|---|---|
31:24 | Reserved_31_24 | R | Reserved Value After Reset: 0x0 Exists: Always |
23:20 | LTMRMD | R/W | Large Mode Timeout Value This field provides the mode value to be used for large mode FSM and other interface time outs. The timeout duration is based on the mode value. Values:
|
19:16 | NTMRMD | R/W | Normal Mode Timeout Value This field provides the value to be used for normal mode FSM and other interface time outs. The timeout duration is based on the mode value. Values:
|
15:10 | Reserved_15_10 | R | Reserved |
9:0 | TMR | R/W |
CSR Clocks for 1us Tic This field indicates the number of CSR clocks required to generate 1us tic. |
MAC_MDIO_Address
- Description: The MDIO Address register controls the management cycles to external PHY through a management interface.
- Size: 32 bits
- Offset: 0x200
Bits | Name | Memory Access | Description |
---|---|---|---|
31:28 | Reserved_31_28 | R | Reserved |
27 | PSE | R/W | Preamble Suppression Enabled When this bit is set, the SMA suppresses the 32-bit preamble and transmits MDIO frames with only 1 preamble bit. When this bit is 0, the MDIO frame always has 32 bits of preamble as defined in the IEEE specifications. Values:
|
26 | BTB | R/W | Back to Back Transactions When this bit is set and the NTC has value greater than 0, then the MAC informs the completion of a read or write command at the end of frame transfer (before the trailing clocks are transmitted). The software can thus initiate the next command which is executed immediately irrespective of the number trailing clocks generated for the previous frame. When this bit is reset, then the read/write command completion (GB is cleared) only after the trailing clocks are generated. In this mode, it is ensured that the NTC is always generated after each frame. This bit must not be set when NTC=0. Values:
|
25:21 | PA | R/W | Physical Layer Address This field indicates which Clause 22 PHY devices (out of 32 devices) the MAC is accessing. For RevMII, this field gives the PHY Address of the RevMII module. This field indicates which Clause 45 capable PHYs (out of 32 PHYs) the MAC is accessing. Testable: Untestable |
20:16 | RDA | R/W | Register/Device Address These bits select the PHY register in selected Clause 22 PHY device. For RevMII, these bits select the CSR register in the RevMII Registers set. These bits select the Device (MMD) in selected Clause 45 capable PHY. |
15 | Reserved_15 | R | Reserved |
14:12 | NTC | R/W | Number of Trailing Clocks This field controls the number of trailing clock cycles generated on gmii_mdc_o (MDC) after the end of transmission of MDIO frame. The valid values can be from 0 to 7. Programming the value to 3'h3 indicates that there are additional three clock cycles on the MDC line after the end of MDIO frame transfer. |
11:8 | CR | R/W | CSR Clock Range The CSR Clock Range selection determines the frequency of the MDC clock according to the CSR clock frequency used in your design:
The suggested range of CSR clock frequency applicable for each value (when Bit 11 = 0) ensures that the MDC clock is approximately between 1.0 MHz to 2.5 MHz frequency range. When Bit 11 is set, you can achieve a higher frequency of the MDC clock than the frequency limit of 2.5 MHz (specified in the IEEE 802.3) and program a clock divider of lower value. For example, when CSR clock is of 100 MHz frequency and you program these bits as 1010, the resultant MDC clock is of 12.5 MHz which is beyond the range specified in IEEE 802.3. Program the following values only if the interfacing chips support faster MDC clocks:
These bits are not used for accessing RevMII. These bits are read-only if the RevMII interface is selected as single PHY interface. |
7:5 | Reserved_7_5 | R | Reserved |
4 | SKAP | R/W | Skip Address Packet When this bit is set, the SMA does not send the address packets before read, write, or post-read increment address packets. This bit is valid only when C45E is set. Values:
|
3 | GOC_1 | R/W | GMII Operation Command 1 This bit is higher bit of the operation command to the PHY or RevMII, GOC_1 and GOC_O is encoded as follows:
When Clause22 PHY or RevMII is enabled, only Write and Read commands are valid. Values:
|
2 | GOC_0 | R/W | GMII Operation Command 0 This is the lower bit of the operation command to the PHY or RevMII. When in SMA mode (MDIO master) this bit along with GOC_1 determines the operation to be performed to the PHY. When only RevMII is selected in configuration this bit is read-only and tied to 1. Values:
|
1 | C45E | R/W | Clause 45PHY Enabled When this bit is set, Clause 45 capable PHY is connected to MDIO. When this bit is reset, Clause 22 capable PHY is connected to MDIO. Values:
|
0 | GB | R/W | GMII Busy The application sets this bit to instruct the SMA to initiate a Read or Write access to the MDIO slave. The MAC clears this bit after the MDIO frame transfer is completed. Hence the software must not write or change any of the fields in MAC_MDIO_Address and MAC_MDIO_Data registers as long as this bit is set. For write transfers, the application must first write 16-bit data inthe GDl field (and also RA field when C45E is set) in MAC_MDIO_Data register before setting this bit. When C45E is set, it should also write into the RA field of MAC_MDIO_Data register before initiating a read transfer. When aread transfer is completed (GB=0), the data read from the PHY register is valid in the GD field of the MAC_MDIO_Data register. Note: Even if the
addressed PHY is not present, there is no change in the
functionality of this bit. Access restriction applies. Setting 1 sets. Self-cleared. Setting 0 has no effect. Values:
|
MAC_MDIO_Data
- Description: The MDIO Data register stores the Write data to be written to the PHY register located at the address specified in MAC_MDIO_Address. This register also stores the Read data from the PHY register located at the address specified by MDIO Address register.
- Size: 32 bits
- Offset: 0x204
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | RA | R/W | Register Address This field is valid only when C45E is set. It contains the Register Address in the PHY to which the MDIO frame is intended for. |
15:0 | GD | R/W | GMII Data This field contains the 16-bit data value read from the PHYor RevMII after a Management Read operation or the 16-bit data value to be written to the PHY or RevMII before a Management Write operation. |
MAC_GPIO_Control
- Description: The GPIO Control register controls the GPIO.
- Size: 32 bits
- Offset: 0x208
Bits | Name | Memory Access | Description |
---|---|---|---|
31:y | Reserved_31_y | R | Reserved |
x:16 | GPIT | R/W | GPI Type When this bit is set, it indicates that the corresponding GPIS bit in MAC_GPIO_Status register is of latched-low (LL) type. When this bit is reset, it indicates that the corresponding GPIS is of latched-high (LH) type. The number of bits available in this field depends on the GP Input Signal Width option. Other bits are not used (reserved and always reset). |
15:4 | Reserved_15_4 | R | Reserved |
3:0 | GPIE | R/W | GPI Interrupt Enabled When this bit is set and the programmed event (LL or LH) occurs on the corresponding GPIS bit of MAC_GPIO_Status register, the GPIIS bit of DMA_Interrupt_Status register is set and an interrupt is generated on the mci_intr_o or sbd_intr_o signal. The GPIIS bit is cleared when the application reads the Bits[7:0] of MAC_GPIO_Status register. When this bit is reset, the GPIIS bit is not set when any event occurs on the corresponding GPIS bits. |
MAC_GPIO_Status
- Description: The General Purpose IO register provides the control to drive the following: up to 16 bits of output ports (GPO) and status of up to 16 input ports (GPIS).
- Size: 32 bits
- Offset: 0x20c
Bits | Name | Memory Access | Description |
---|---|---|---|
31:y | Reserved_31_y | R | Reserved |
x:16 | GPO | R/W | General Purpose Output When this bit is set, it directly drives the gpo_o output ports. When this bit is reset, it does not directly drive the gpo_o output ports. The number of bits available in this field depends on the GP Input Signal Width option. Other bits are not used (reserved and always reset). |
15:y | Reserved_15_y | R | Reserved |
x:0 | GPIS | R/W | General Purpose Input Status This field gives the status of the signals connected to the gpi_i port. This field is of the following types based on the setting of the corresponding GPIT field of MAC_GPIO_Control register:
The number of bits available in this field depends on the GP Input Signal Width option. Other bits are not used (reserved and always reset). |
MAC_ARP_Address
- Description: The ARP Address register contains the IPv4 Destination Address of the MAC.
- Size: 32 bits
- Offset: 0x210
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | ARPPA | R/W | ARP Protocol Address This field contains the IPv4 Destination Address of the MAC. This address is used for perfect match with the Protocol Address of Target field in the received ARP packet. This field is available only when the Enable IPv4 ARP Offload option is selected. |
MAC_CSR_SW_Ctrl
- Description: This register contains software programmable controls for changing the CSR access response and status bits clearing.
- Size: 32 bits
- Offset: 0x230
Bits | Name | Memory Access | Description |
---|---|---|---|
31:9 | Reserved_31_9 | R | Reserved |
8 | SEEN | R/W | Slave Error Response Enabled When this bit is set, the MAC responds with Slave Error for accesses to reserved registers in CSR space. When this bit is reset, the MAC responds with Okay response to any register accessed from CSR space. Values:
|
7:1 | Reserved_7_1 | R | Reserved |
0 | RCWE | R/W | Register Clear on Write 1 Enabled When this bit is set, the access mode of some register fields changes to Clear on Write 1, the application needs to set that respective bit to 1 to clear it. When this bit is reset, the access mode of these register fields remain as Clear on Read. Values:
|
MAC_FPE_CTRL_STS
- Description: This register controls the operation of Frame Preemption.
- Size: 32 bits
- Offset: 0x234
Bits | Name | Memory Access | Description |
---|---|---|---|
31:20 | Reserved_31_20 | R | Reserved |
19 | TRSP | R/W |
Transmitted Respond Frame Set when a Respond mPacket is transmitted (triggered by setting SRSP field). An interrupt can be generated for this event if FPEIE bit of MAC_Interrupt_Enable is set. Access restriction applies. Clears on read (or write of 1 when RCWE bit in MAC_CSR_SW_Ctrl register is set). Self-set to 1 on internal event. Values:
|
18 | TVER | R/W |
Transmitted Verify Frame Set when a Verify mPacket is transmitted (triggered by setting SVER field). An interrupt can be generated for this event if FPEIE bit of MAC_Interrupt_Enable is set. Access restriction applies. Clears on read (or write of 1 when RCWE bit in MAC_CSR_SW_Ctrl register is set). Self-set to 1 on internal event. Values:
|
17 | RRSP | R/W | Received Respond Frame Set when a Respond mPacket is received. An interrupt can be generated for this event if FPEIE bit of MAC_Interrupt_Enable is set. Access restriction applies. Clears on read (or write of 1 when RCWE bit in MAC_CSR_SW_Ctrl register is set). Self-set to 1 on internal event. Values:
|
16 | RVER | R/W | Received Verify Frame Set when a Verify mPacket is received. An interrupt can be generated for this event if FPEIE bit of MAC_Interrupt_Enable is set. Access restriction applies. Clears on read (or write of 1 when RCWE bit in MAC_CSR_SW_Ctrl register is set). Self-set to 1 on internal event. Values:
|
15:4 | Reserved_15_4 | R | Reserved |
3 | S1_SET_0 | R/W | Synopsys Reserved. Must be set to "0". This field is reserved for Synopsys Internal use, and must always be set to "0" unless instructed by Synopsys. Setting to "1"might cause unexpected behavior in the IP. |
2 | SRSP | R/W | Send Respond mPacket When set indicates hardware to send a Respond mPacket. Reset by hardware after sending the Respond mPacket. Access restriction applies. Setting 1 sets. Self-cleared. Setting 0 has no effect. Values:
|
1 | SVER | R/W | Send Verify mPacket When set indicates hardware to send a verify mPacket. Reset by hardware after sending the Verify mPacket. Access restriction applies. Setting 1 sets. Self-cleared. Setting 0 has no effect. Values:
|
0 | EFPE | R/W | Enable Tx Frame Preemption When set Frame Preemption Tx functionality is enabled. Values:
|
MAC_Ext_Cfg1
- Description: This register contains Split mode control field and offset field for Split Header feature.
- Size: 32 bits
- Offset: 0x238
Bits | Name | Memory Access | Description |
---|---|---|---|
31:25 | Reserved_31_25 | R | Reserved |
24 | SAVE | R/W | Split AV Enabled
|
23 | Reserved_23 | R | Reserved |
22:16 | SAVO | R/W | Split AV Offset When SAVE bit is set to 1, and the received packet is an AV Type packet, these bits indicate the value of the offset from the beginning of Length/Type field at which header should be split, when appropriate SPLM is selected. The reset value of this field is 2 bytes, indicating a split at L2 header. Value is in terms of bytes. |
15:10 | Reserved_15_10 | R | Reserved |
9:8 | SPLM | R/W | Split Mode These bits indicate the mode of splitting the incoming Rx packets. They are
|
7 | Reserved_7 | R | Reserved |
6:0 | SPLOFST | R/W | Split Offset These bits indicate the value of offset from the beginning of Length/Type field at which header split should take place when the appropriate SPLM is selected. The reset value of this field is 2 bytes indicating a split at L2 header. Value is in terms of bytes. |
MAC_Presn_Time_ns
- Description: This register contains the 32-bit binary rollover equivalent time of the PTP System Time in ns. Exists when DWC_EQOS_FLEXI_PPS_OUT_EN is configured
- Size: 32 bits
- Offset: 0x240
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | MPTN | R | MAC1722 Presentation Time in ns These bits indicate the value of the 32-bit binary rollover equivalent time of the PTP System Time in ns |
MAC_Presn_Time_Updt
- Description: This field holds the 32-bit value of MAC 1722 Presentation Time in ns, that should be added to the Current Presentation Time Counter value. Init happens when TSINIT is set, and update happens when the TSUPDT bit is set (TSINIT and TSINIT defined in MAC_Timestamp_Control register). Exists when DWC_EQOS_FLEXI_PPS_OUT_EN is configured
- Size: 32 bits
- Offset: 0x244
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | MPTU | R/W | MAC1722 Presentation Time Update This field holds the init value or the update value for the presentation time. When used for update, this field holds the 32-bit value in ns, that should be added to the Current Presentation Time Counter value. Init happens when TSINIT is set, and update happens when the TSUPDT bit is set (TSINIT and TSINIT defined in MAC_Timestamp_Control register). When ADDSUB field of MAC_System_Time_Nanoseconds_Update is set, this value is directly used for subtraction |
MAC_Address0_High
- Description: The MAC Address0 High register holds the upper 16 bits of the first 6-byte MAC address of the station. The first DA byte that is received on the (G)MII interface corresponds to the LS byte (Bits [7:0]) of the MAC Address Low register.
- Size: 32 bits
- Offset: 0x300
Bits | Name | Memory Access | Description |
---|---|---|---|
31 | AE | R | Address Enabled This bit is always set to 1. Values:
|
x:y | Reserved_30_y | R | Reserved |
x:16 | DCS | R/W | DMA Channel Select If the PDC bit of MAC_Ext_Configuration register is not set: This field contains the binary representation of the DMA Channel number to which an Rx packet whose DA matches the MAC Address0 content is routed. This field contains the one-hot representation of one or more DMA Channel numbers to which an Rx packet whose DA matches the MAC Address0 content is routed. |
15:0 | ADDRHI | R/W | MACAddress0[47:32] This field contains the upper 16bits [47:32] of the first 6-byte MAC address. The MAC uses this field for filtering the received packets and inserting the MAC address in the Transmit Flow Control (Pause) Packets. |
MAC_Address0_Low
- Description: The MAC Address0 Low register holds the lower 32 bits of the 6-byte first MAC address of the station.
- Size: 32 bits
- Offset: 0x304
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | ADDRLO | R/W | MACAddress0[0:31] This field contains the lower 32 bits of the first 6-byte MAC address. The MAC uses this field for filtering the received packets and inserting the MAC address in the Transmit Flow Control (Pause) Packets. |
MMC_Control
- Description: This register establishes the operating mode of MMC.
- Size: 32 bits
- Offset: 0x700
Bits | Name | Memory Access | Description |
---|---|---|---|
31:9 | Reserved_31_9 | R | Reserved |
8 | UCDBC | R/W | Update MMC Counters for Dropped Broadcast Packets Note: The CNTRST bit has a higher priority
than the CNTPRST bit. Therefore, when the software tries to
set both bits in the same write cycle, all counters are
cleared and the CNTPRST bit is not set. When set, the MAC updates all related MMC Counters for Broadcast packets that are dropped because of the setting of the DBF bit of MAC_Packet_Filter register. When reset, the MMC Counters are not updated for dropped Broadcast packets. Values:
|
7:6 | Reserved_7_6 | R | Reserved |
5 | CNTPRSTLVL | R/W | Full-Half Preset When this bit is low and the CNTPRST bit is set, all MMC counters get preset to almost-half value. All octet counters get preset to 0x7FFF_F800 (Half 2KBytes) and all packet-counters get preset to0x7FFF_FFF0 (Half 16). When this bit is high and the CNTPRST bit is set, all MMC counters get preset to almost-full value. All octet counters get preset to 0xFFFF_F800 (Full 2KBytes) and all packet-counters gets preset to 0xFFFF_FFF0 (Full 16). For 16-bit counters, the almost-half preset values are 0x7800 and 0x7FF0 for the respective octet and packet counters. Similarly, the almost-full preset values for the 16-bit counters are 0xF800 and 0xFFF0. Values:
|
4 | CNTPRST | R/W | Counters Preset When this bit is set, all counters are initialized or preset to almost full or almost half according to the CNTPRSTLVL bit. This bit is cleared automatically after 1 clock cycle. This bit, along with the CNTPRSTLVL bit, is useful for debugging and testing the assertion of interrupts because of MMC counter becoming half-full or full. Access restriction applies. Self-cleared. Setting 0 clears. Setting 1 sets. Values:
|
3 | CNTFREEZ | R/W | MMC Counter Freeze When this bit is set, it freezes all MMC counters to their current value. Until this bit is reset to 0, no MMC counter is updated because of any transmitted or received packet. If any MMC counter is read with the Reset on Read bit set, then that counter is also cleared in this mode. Values:
|
2 | RSTONRD | R/W | Reset on Read When this bit is set, the MMC counters are reset to zero after Read (self-clearing after reset). The counters are cleared when the least significant byte lane (Bits[7:0]) is read. Values:
|
1 | CNTSTOPRO | R/W | Counter Stop Rollover When this bit is set, the counter does not roll over to zero after reaching the maximum value. Values:
|
0 | CNTRST | R/W | Counters Reset When this bit is set, all counters are reset. This bit is cleared automatically after 1 clock cycle. Access restriction applies. Self-cleared. Setting 0 clears. Setting 1 sets. Values:
|
MMC_Rx_Interrupt
- Description: This register maintains the interrupts generated from all Receive statistics counters.
- Size: 32 bits
- Offset: 0x704
Bits | Name | Memory Access | Description |
---|---|---|---|
31:28 | Reserved_31_28 | R | Reserved |
27 | RXLPITRCIS | R | MMC Receive LPI Transition Counter Interrupt Status This bit is set when the Rx_LPI_Tran_Cntr counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
26 | RXLPIUSCIS | R | MMC Receive LPI microsecond counter interrupt status This bit is set when the Rx_LPI_USEC_Cntr counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
25 | RXCTRLPIS | R | MMC Receive Control Packet Counter Interrupt Status This bit is set when the rxctrlpackets_g counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
24 | RXRCVERRPIS | R | MMC Receive Error Packet Counter Interrupt Status This bit is set when the rxrcverror counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
23 | RXWDOGPIS | R | MMC Receive Watchdog Error Packet Counter Interrupt Status
This bit is set when the rxwatchdog error counter reaches half
of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
22 | RXVLANGBPIS | R | MMC Receive VLAN Good Bad Packet Counter Interrupt
Status This bit is set when the rxvlanpackets_gb counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
21 | RXFOVPIS | R |
MMC Receive FIFO Overflow Packet Counter Interrupt Status This bit is set when the rxfifo overflow counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
20 | RXPAUSPIS | R | MMC Receive Pause Packet Counter Interrupt Status This bit is set when the rxpause packets counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
19 | RXORANGEPIS | R | MMC Receive Out Of Range Error Packet Counter Interrupt
Status. This bit is set when the rx out of range type counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
18 | RXLENERPIS | R | MMC Receive Length Error Packet Counter Interrupt Status This bit is set when the rx length error counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
17 | RXUCGPIS | R | MMC Receive Unicast Good Packet Counter Interrupt Status This bit is set when the rx unicastpackets_g counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
16 | RX1024TMAXOCTGBPIS | R | MMC Receive 1024 to Maximum Octet Good Bad Packet Counter
Interrupt Status This bit is set when the rx1024 to maxoctets_gb counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
15 | RX512T1023OCTGBPIS | R | MMC Receive 512 to 1023 Octet Good Bad Packet Counter
Interrupt Status This bit is set when the rx512to1023octets_gb counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
14 | RX256T511OCTGBPIS | R | MMC Receive 256 to 511 Octet Good Bad Packet Counter
Interrupt Status This bit is set when the rx256to511 octets_gb counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
13 | RX128T255OCTGBPIS | R | MMC Receive128 to 255 Octet Good Bad Packet Counter Interrupt
Status This bit is set when the rx128to 255octets_gb counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
12 | RX65T127OCTGBPIS | R | MMC Receive 65 to127 Octet Good Bad Packet Counter Interrupt
Status This bit is set when the rx65to127octets_gb counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
11 | RX64OCTGBPIS | R |
MMC Receive 64 Octet Good Bad Packet Counter Interrupt Status This bit is set when the rx64octets_gb counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
10 | RXOSIZEGPIS | R | MMC Receive Oversize Good Packet Counter Interrupt Status This bit is set when the rxoversize_g counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
9 | RXUSIZEGPIS | R | MMC Receive Undersize Good Packet Counter Interrupt
Status This bit is set when the rxundersize_g counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
8 | RXJABERPIS | R |
MMC Receive Jabber Error Packet Counter Interrupt Status This bit is set when the rxjabbererror counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
7 | RXRUNTPIS | R |
MMC Receive Runt Packet Counter Interrupt Status This bit is set when the rxrunterror counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
6 | RXALGNERPIS | R |
MMC Receive Alignment Error Packet Counter Interrupt Status This bit is set when the rxalignmenterror counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
5 | RXCRCERPIS | R |
MMC Receive CRC Error Packet Counter Interrupt Status This bit is set when the rxcrcerror counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
4 | RXMCGPIS | R | MMC Receive Multicast Good Packet Counter Interrupt Status
This bit is set when the rxmulticastpackets_g counter reaches
half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
3 | RXBCGPIS | R | MMC Receive Broadcast Good Packet Counter Interrupt
Status This bit is set when the rxbroadcastpackets_g counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
2 | RXGOCTIS | R | MMC Receive Good Octet Counter Interrupt Status This bit is set when the rxoctetcount_g counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
1 | RXGBOCTIS | R | MMC Receive Good Bad Octet Counter Interrupt Status This bit is set when the rxoctetcount_gb counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
0 | RXGBPKTIS | R | MMC Receive Good Bad Packet Counter Interrupt Status This bit is set when the rxpacketcount_gb counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
MMC_Tx_Interrupt
- Description: This register maintains the interrupts generated from all Transmit statistics counters.
- Size: 32 bits
- Offset: 0x708
Bits | Name | Memory Access | Description |
---|---|---|---|
31:28 | Reserved_31_28 | R | Reserved |
27 | TXLPITRCIS | R | MMC Transmit LPI transition counter interrupt status This bit is set when the Tx_LPI_Tran_Cntr counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
26 | TXLPIUSCIS | R | MMC Transmit LPI Microsecond Counter Interrupt Status This bit is set when the Tx_LPI_USEC_Cntr counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
25 | TXOSIZEGPIS | R | MMC Transmit Oversize Good Packet Counter Interrupt Status This bit is set when the txoversize_g counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
24 | TXVLANGPIS | R | MMC Transmit VLAN Good Packet Counter Interrupt Status This bit is set when the txvlanpackets_g counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
23 | TXPAUSPIS | R | MMC Transmit Pause Packet Counter Interrupt Status This bit is set when the txpausepacketserror counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
22 | TXEXDEFPIS | R | MMC Transmit Excessive Deferral Packet Counter Interrupt
Status This bit is set when the txexcessdef counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
21 | TXGPKTIS | R | MMC Transmit Good Packet Counter Interrupt Status This bit is set when the txpacketcount_g counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
20 | TXGOCTIS | R | MMC Transmit Good Octet Counter Interrupt Status This bit is set when the txoctetcount_g counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
19 | TXCARERPIS | R | MMC Transmit Carrier Error Packet Counter Interrupt Status This bit is set when the txcarriererror counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
18 | TXEXCOLPIS | R | MMC Transmit Excessive Collision Packet Counter Interrupt
Status This bit is set when the txexesscol counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
17 | TXLATCOLPIS | R | MMC Transmit Late Collision Packet Counter Interrupt
Status This bit is set when the txlatecol counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
16 | TXDEFPIS | R | MMC Transmit Deferred Packet Counter Interrupt Status This bit is set when the txdeferred counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
15 | TXMCOLGPIS | R | MMC Transmit Multiple Collision Good Packet Counter Interrupt
Status This bit is set when the txmulticol_g counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
14 | TXSCOLGPIS | R | MMC Transmit Single Collision Good Packet Counter Interrupt
Status This bit is set when the txsinglecol_g counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
13 | TXUFLOWERPIS | R | MMC Transmit Underflow Error Packet Counter Interrupt
Status This bit is set when the txunderflowerror counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
12 | TXBCGBPIS | R | MMC Transmit Broadcast Good Bad Packet Counter Interrupt
Status This bit is set when the txbroadcastpackets_gb counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
11 | TXMCGBPIS | R | MMC Transmit Multicast Good Bad Packet Counter Interrupt
Status The bit is set when the txmulticastpackets_gb counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
10 | TXUCGBPIS | R | MMC Transmit Unicast Good Bad Packet Counter Interrupt
Status This bit is set when the txunicastpackets_gb counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
9 | TX1024TMAXOCTGBPIS | R | MMC Transmit 1024 to Maximum Octet Good Bad Packet Counter
Interrupt Status This bit is set when the tx1024tomaxoctets_gb counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
8 | TX512T1023OCTGBPIS | R | MMC Transmit 512 to 1023 Octet Good Bad Packet Counter
Interrupt Status This bit is set when the tx512to1023octets_gb counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
7 | TX256T511OCTGBPIS | R | MMC Transmit 256 to 511 Octet Good Bad Packet Counter
Interrupt Status This bit is set when the tx256to511octets_gb counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
6 | TX128T255OCTGBPIS | R | MMC Transmit 128 to 255 Octet Good Bad Packet Counter
Interrupt Status This bit is set when the tx128to255octets_gb counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
5 | TX65T127OCTGBPIS | R |
MMC Transmit 65to 127 Octet Good Bad Packet Counter Interrupt Status This bit is set when the tx65to127octets_gb counter reaches half the maximum value, and also when it reaches the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
4 | TX64OCTGBPIS | R |
MMC Transmit 64Octet Good Bad Packet Counter Interrupt Status This bit is set when the tx64octets_gb counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
3 | TXMCGPIS | R | MMC Transmit Multicast Good Packet Counter Interrupt
Status This bit is set when the txmulticastpackets_g counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
2 | TXBCGPIS | R | MMC Transmit Broadcast Good Packet Counter Interrupt
Status This bit is set when the txbroadcastpackets_g counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
1 | TXGBPKTIS | R | MMC Transmit Good Bad Packet Counter Interrupt Status This bit is set when the txpacketcount_gb counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
0 | TXGBOCTIS | R | MMC Transmit Good Bad Octet Counter Interrupt Status This bit is set when the txoctetcount_gb counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
MMC_Rx_Interrupt_Mask
- Description: This register maintains the masks for interrupts generated from
all Receive statistics counters.
The MMC Receive Interrupt Mask register maintains the masks for the interrupts generated when receive statistic counters reach half of their maximum value or the maximum values.
- Size: 32 bits
- Offset: 0x70c
Bits | Name | Memory Access | Description |
---|---|---|---|
31:28 | Reserved_31_28 | R | Reserved |
27 | RXLPITRCIM | R/W |
MMC Receive LPI transition counter interrupt Mask Setting this bit masks the interrupt when the Rx_LPI_Tran_Cntr counter reaches half of the maximum value or the maximum value. Values:
|
26 | RXLPIUSCIM | R/W | MMC Receive LPI microsecond counter interrupt Mask Setting this bit masks the interrupt when the Rx_LPI_USEC_Cntr counter reaches half of the maximum value or the maximum value. Values:
|
25 | RXCTRLPIM | R/W | MMC Receive Control Packet Counter Interrupt Mask Setting this bit masks the interrupt when the rxctrlpackets_g counter reaches half of the maximum value or the maximum value. Values:
|
24 | RXRCVERRPIM | R/W | MMC Receive Error Packet Counter Interrupt Mask Setting this bit masks the interrupt when the rxrcverror counter reaches half of the maximum value or the maximum value. Values:
|
23 | RXWDOGPIM | R/W | MMC Receive Watchdog Error Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the rxwatchdog counter reaches half of the maximum value or the maximum value. Values:
|
22 | RXVLANGBPIM | R/W | MMC Receive VLAN Good Bad Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the rxvlanpackets_gb counter reaches half of the maximum value or the maximum value. Values:
|
21 | RXFOVPIM | R/W | MMC Receive FIFO Overflow Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the rxfifooverflow counter reaches half of the maximum value or the maximum value. Values:
|
20 | RXPAUSPIM | R/W | MMC Receive Pause Packet Counter Interrupt Mask Setting this bit masks the interrupt when the rxpausepackets counter reaches half of the maximum value or the maximum value. Values:
|
19 | RXORANGEPIM | R/W | MMC Receive Out Of Range Error Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the rxoutofrangetype counter reaches half of the maximum value or the maximum value. Values:
|
18 | RXLENERPIM | R/W | MMC Receive Length Error Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the rxlengtherror counter reaches half of the maximum value or the maximum value. Values:
|
17 | RXUCGPIM | R/W | MMC Receive Unicast Good Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the rxunicastpackets_g counter reaches half of the maximum value or the maximum value. Values:
|
16 | RX1024TMAXOCTGBPIM | R/W | MMC Receive 1024 to Maximum Octet Good Bad Packet Counter
Interrupt Mask Setting this bit masks the interrupt when the rx1024tomaxoctets_gb counter reaches half of the maximum value or the maximum value. Values:
|
15 | RX512T1023OCTGBPIM | R/W | MMC Receive 512 to 1023 Octet Good Bad Packet Counter
Interrupt Mask Setting this bit masks the interrupt when the rx512to1023octets_gb counter reaches half of the maximum value or the maximum value. Values:
|
14 | RX256T511OCTGBPIM | R/W | MMC Receive 256 to 511 Octet Good Bad Packet Counter
Interrupt Mask Setting this bit masks the interrupt when the rx256to511octets_gb counter reaches half of the maximum value or the maximum value. Values:
|
13 | RX128T255OCTGBPIM | R/W | MMC Receive 128 to 255 Octet Good Bad Packet Counter
Interrupt Mask Setting this bit masks the interrupt when the rx128to255octets_gb counter reaches half of the maximum value or the maximum value. Values:
|
12 | RX65T127OCTGBPIM | R/W | MMC Receive 65 to127 Octet Good Bad Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the rx65to127octets_gb counter reaches half of the maximum value or the maximum value. Values:
|
11 | RX64OCTGBPIM | R/W | MMC Receive 64 Octet Good Bad Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the rx64octets_gb counter reaches half of the maximum value or the maximum value. Values:
|
10 | RXOSIZEGPIM | R/W | MMC Receive Oversize Good Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the rxoversize_g counter reaches half of the maximum value or the maximum value. Values:
|
9 | RXUSIZEGPIM | R/W | MMC Receive Undersize Good Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the rxundersize_g counter reaches half of the maximum value or the maximum value. Values:
|
8 | RXJABERPIM | R/W | MMC Receive Jabber Error Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the rxjabbererror counter reaches half of the maximum value or the maximum value. Values:
|
7 | RXRUNTPIM | R/W | MMC Receive Runt Packet Counter Interrupt Mask Setting this bit masks the interrupt when the rxrunterror counter reaches half of the maximum value or the maximum value. Values:
|
6 | RXALGNERPIM | R/W | MMC Receive Alignment Error Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the rxalignmenterror counter reaches half of the maximum value or the maximum value. Values:
|
5 | RXCRCERPIM | R/W | MMC Receive CRC Error Packet Counter Interrupt Mask Setting this bit masks the interrupt when the rxcrcerror counter reaches half of the maximum value or the maximum value. Values:
|
4 | RXMCGPIM | R/W | MMC Receive Multicast Good Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the rxmulticastpackets_g counter reaches half of the maximum value or the maximum value. Values:
|
3 | RXBCGPIM | R/W | MMC Receive Broadcast Good Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the rxbroadcastpackets_g counter reaches half of the maximum value or the maximum value. Values:
|
2 | RXGOCTIM | R/W | MMC Receive Good Octet Counter Interrupt Mask Setting this bit masks the interrupt when the rxoctetcount_g counter reaches half of the maximum value or the maximum value. Values:
|
1 | RXGBOCTIM | R/W | MMC Receive Good Bad Octet Counter Interrupt Mask Setting this bit masks the interrupt when the rxoctetcount_gb counter reaches half of the maximum value or the maximum value. Values:
|
0 | RXGBPKTIM | R/W | MMC Receive Good Bad Packet Counter Interrupt Mask Setting this bit masks the interrupt when the rxpacketcount_gb counter reaches half of the maximum value or the maximum value. Values:
|
MMC_Tx_Interrupt_Mask
- Description: This register maintains the masks for interrupts generated from
all Transmit statistics counters.
The MMC Transmit Interrupt Mask register maintains the masks for the interrupts generated when the transmit statistic counters reach half of their maximum value or the maximum values.
- Size: 32 bits
- Offset: 0x710
Bits | Name | Memory Access | Description |
---|---|---|---|
31:28 | Reserved_31_28 | R | Reserved |
27 | TXLPITRCIM | R/W | MMC Transmit LPI transition counter interrupt Mask Setting this bit masks the interrupt when the Tx_LPI_Tran_Cntr counter reaches half of the maximum value or the maximum value. Values:
|
26 | TXLPIUSCIM | R/W | MMC Transmit LPI microsecond counter interrupt Mask Setting this bit masks the interrupt when the Tx_LPI_USEC_Cntr counter reaches half of the maximum value or the maximum value. Values:
|
25 | TXOSIZEGPIM | R/W | MMC Transmit Oversize Good Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the txoversize_g counter reaches half of the maximum value or the maximum value. Values:
|
24 | TXVLANGPIM | R/W | MMC Transmit VLAN Good Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the txvlanpackets_g counter reaches half of the maximum value or the maximum value. Values:
|
23 | TXPAUSPIM | R/W | MMC Transmit Pause Packet Counter Interrupt Mask Setting this bit masks the interrupt when the txpausepackets counter reaches half of the maximum value or the maximum value. Values:
|
22 | TXEXDEFPIM | R/W | MMC Transmit Excessive Deferral Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the txexcessdef counter reaches half of the maximum value or the maximum value. Values:
|
21 | TXGPKTIM | R/W | MMC Transmit Good Packet Counter Interrupt Mask Setting this bit masks the interrupt when the txpacketcount_g counter reaches half of the maximum value or the maximum value. Values:
|
20 | TXGOCTIM | R/W | MMC Transmit Good Octet Counter Interrupt Mask Setting this bit masks the interrupt when the txoctetcount_g counter reaches half of the maximum value or the maximum value. Values:
|
19 | TXCARERPIM | R/W | MMC Transmit Carrier Error Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the txcarriererror counter reaches half of the maximum value or the maximum value. Values:
|
18 | TXEXCOLPIM | R/W | MMC Transmit Excessive Collision Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the txexcesscol counter reaches half of the maximum value or the maximum value. Values:
|
17 | TXLATCOLPIM | R/W | MMC Transmit Late Collision Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the txlatecol counter reaches half of the maximum value or the maximum value. Values:
|
16 | TXDEFPIM | R/W | MMC Transmit Deferred Packet Counter Interrupt Mask Setting this bit masks the interrupt when the txdeferred counter reaches half of the maximum value or the maximum value. Values:
|
15 | TXMCOLGPIM | R/W | MMC Transmit Multiple Collision Good Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the txmulticol_g counter reaches half of the maximum value or the maximum value. Values:
|
14 | TXSCOLGPIM | R/W | MMC Transmit Single Collision Good Packet Counter Interrupt
Mask Setting this bitmasks the interrupt when the txsinglecol_g counter reaches half of the maximum value or the maximum value. Values:
|
13 | TXUFLOWERPIM | R/W | MMC Transmit Underflow Error Packet Counter Interrupt Mask Setting this bit masks the interrupt when the txunderflowerror counter reaches half of the maximum value or the maximum value. Values:
|
12 | TXBCGBPIM | R/W | MMC Transmit Broadcast Good Bad Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the txbroadcastpackets_gb counter reaches half of the maximum value or the maximum value. Values:
|
11 | TXMCGBPIM | R/W | MMC Transmit Multicast Good Bad Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the txmulticastpackets_gb counter reaches half of the maximum value or the maximum value. Values:
|
10 | TXUCGBPIM | R/W | MMC Transmit Unicast Good Bad Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the txunicastpackets_gb counter reaches half of the maximum value or the maximum value. Values:
|
9 | TX1024TMAXOCTGBPIM | R/W |
MMC Transmit 1024 to Maximum Octet Good Bad Packet Counter Interrupt Mask Setting this bit masks the interrupt when the tx1024tomaxoctets_gb counter reaches half of the maximum value or the maximum value. Values:
|
8 | TX512T1023OCTGBPIM | R/W | MMC Transmit 512 to 1023 Octet Good Bad Packet Counter
Interrupt Mask Setting this bit masks the interrupt when the tx512to1023octets_gb counter reaches half of the maximum value or the maximum value. Values:
|
7 | TX256T511OCTGBPIM | R/W | MMC Transmit 256 to 511 Octet Good Bad Packet Counter
Interrupt Mask Setting this bit masks the interrupt when the tx256to511octets_gb counter reaches half of the maximum value or the maximum value. Values:
|
6 | TX128T255OCTGBPIM | R/W |
MMC Transmit 128 to 255Octet Good Bad Packet Counter Interrupt Mask Setting this bit masks the interrupt when the tx128to255octets_gb counter reaches half of the maximum value or the maximum value. Values:
|
5 | TX65T127OCTGBPIM | R/W | MMC Transmit 65to 127 Octet Good Bad Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the tx65to127octets_gb counter reaches half of the maximum value or the maximum value. Values:
|
4 | TX64OCTGBPIM | R/W | MMC Transmit 64Octet Good Bad Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the tx64octets_gb counter reaches half of the maximum value or the maximum value. Values:
|
3 | TXMCGPIM | R/W | MMC Transmit Multicast Good Packet Counter Interrupt Mask
Setting this bit masks the interrupt when the txmulticastpackets_g counter reaches half of the maximum value or the maximum value. Values:
|
2 | TXBCGPIM | R/W | MMC Transmit Broadcast Good Packet Counter Interrupt Mask
Setting this bit masks the interrupt when the txbroadcastpackets_g counter reaches half of the maximum value or the maximum value. Values:
|
1 | TXGBPKTIM | R/W |
MMC Transmit Good Bad Packet Counter Interrupt Mask Setting this bit masks the interrupt when the txpacketcount_gb counter reaches half of the maximum value or the maximum value. Values:
|
0 | TXGBOCTIM | R/W | MMC Transmit Good Bad Octet Counter Interrupt Mask Setting this bit masks the interrupt when the txoctetcount_gb counter reaches half of the maximum value or the maximum value. Values:
|
Tx_Octet_Count_Good_Bad
- Description: This register provides the number of bytes transmitted by the DWC_ether_qos, exclusive of preamble and retried bytes, in good and bad packets.
- Size: 32 bits
- Offset: 0x714
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | TXOCTGB | R | Tx Octet Count Good Bad This field indicates the number of bytes transmitted, exclusive of preamble and retried bytes, in good and bad packets. |
Tx_Packet_Count_Good_Bad
- Description: This register provides the number of good and bad packets transmitted by DWC_ether_qos, exclusive of retried packets.
- Size: 32 bits
- Offset: 0x718
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | TXPKTGB | R | Tx Packet Count Good Bad This field indicates the number of good and bad packets transmitted, exclusive of retried packets. |
Tx_Broadcast_Packets_Good
- Description: This register provides the number of good broadcast packets transmitted by DWC_ether_qos.
- Size: 32 bits
- Offset: 0x71c
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | TXBCASTG | R | Tx Broadcast Packets Good This field indicates the number of good broadcast packets transmitted. |
Tx_Multicast_Packets_Good
- Description: This register provides the number of good multicast packets transmitted by DWC_ether_qos.
- Size: 32 bits
- Offset: 0x720
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | TXMCASTG | R | Tx Multicast Packets Good This field indicates the number of good multicast packets transmitted. |
Tx_64Octets_Packets_Good_Bad
- Description: This register provides the number of good and bad packets transmitted by DWC_ether_qos with length 64 bytes, exclusive of preamble and retried packets.
- Size: 32 bits
- Offset: 0x724
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | TX64OCTGB | R | Tx 64 Octets Packets Good_Bad This field indicates the number of good and bad packets transmitted with length 64 bytes, exclusive of preamble and retried packets. |
Tx_65To127Octets_Packets_Good_Bad
- Description: This register provides the number of good and bad packets transmitted by DWC_ether_qos with length between 65 and 127 (inclusive) bytes, exclusive of preamble and retried packets.
- Size: 32 bits
- Offset: 0x728
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | TX65_127OCTGB | R | Tx 65 To 127 Octets Packets Good Bad This field indicates the number of good and bad packets transmitted with length between 65 and 127 (inclusive) bytes, exclusive of preamble and retried packets. |
Tx_128To255Octets_Packets_Good_Bad
- Description: This register provides the number of good and bad packets transmitted by DWC_ether_qos with length between 128 to 255 (inclusive) bytes, exclusive of preamble and retried packets.
- Size: 32 bits
- Offset: 0x72c
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | TX128_255OCTGB | R | Tx 128 To 25 5Octets Packets Good Bad This field indicates the number of good and bad packets transmitted with length between 128 and 255 (inclusive) bytes, exclusive of preamble and retried packets. |
Tx_256To511Octets_Packets_Good_Bad
- Description: This register provides the number of good and bad packets transmitted by DWC_ether_qos with length between 256 to 511 (inclusive) bytes, exclusive of preamble and retried packets.
- Size: 32 bits
- Offset: 0x730
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | TX256_511OCTGB | R | Tx 256 To 511 Octets Packets Good Bad This field indicates the number of good and bad packets transmitted with length between 256 and 511 (inclusive) bytes, exclusive of preamble and retried packets. |
Tx_512To1023Octets_Packets_Good_Bad
- Description: This register provides the number of good and bad packets transmitted by DWC_ether_qos with length 512 to 1023 (inclusive) bytes, exclusive of preamble and retried packets.
- Size: 32 bits
- Offset: 0x734
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | TX512_1023OCTGB | R | Tx 512 To 1023 Octets Packets Good Bad This field indicates the number of good and bad packets transmitted with length between 512 and 1023 (inclusive) bytes, exclusive of preamble and retried packets. |
Tx_1024ToMaxOctets_Packets_Good_Bad
- Description: This register provides the number of good and bad packets transmitted by DWC_ether_qos with length 1024 to max size (inclusive) bytes, exclusive of preamble and retried packets.
- Size: 32 bits
- Offset: 0x738
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | TX1024_MAXOCTGB | R | Tx 1024 To Max Octets Packets Good Bad This field indicates the number of good and bad packets transmitted with length between 1024 and max size (inclusive) bytes, exclusive of preamble and retried packets. |
Tx_Unicast_Packets_Good_Bad
- Description: This register provides the number of good and bad unicast packets transmitted by DWC_ether_qos.
- Size: 32 bits
- Offset: 0x73c
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | TXUCASTGB | R | Tx Unicast Packets Good Bad This field indicates the number of good and bad unicast packets transmitted. |
Tx_Multicast_Packets_Good_Bad
- Description: This register provides the number of good and bad multicast packets transmitted by DWC_ether_qos.
- Size: 32 bits
- Offset: 0x740
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | TXMCASTGB | R | Tx Multicast Packets Good Bad This field indicates the number of good and bad multicast packets transmitted. |
Tx_Broadcast_Packets_Good_Bad
- Description: This register provides the number of good and bad broadcast packets transmitted by DWC_ether_qos.
- Size: 32 bits
- Offset: 0x744
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | TXBCASTGB | R | Tx Broadcast Packets Good Bad This field indicates the number of good and bad broadcast packets transmitted. |
Tx_Underflow_Error_Packets
- Description: This register provides the number of packets aborted by DWC_ether_qos because of packets underflow error.
- Size: 32 bits
- Offset: 0x748
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | TXUNDRFLW | R | Tx Underflow Error Packets This field indicates the number of packets aborted because of packets underflow error. |
Tx_Single_Collision_Good_Packets
- Description: This register provides the number of successfully transmitted packets by DWC_ether_qos after a single collision in the half-duplex mode.
- Size: 32 bits
- Offset: 0x74c
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | TXSNGLCOLG | R | Tx Single Collision Good Packets This field indicates the number of successfully transmitted packets after a single collision in the half-duplex mode. |
Tx_Multiple_Collision_Good_Packets
- Description: This register provides the number of successfully transmitted packets by DWC_ether_qos after multiple collisions in the half-duplex mode.
- Size: 32 bits
- Offset: 0x750
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | TXMULTCOLG | R | Tx Multiple Collision Good Packets This field indicates the number of successfully transmitted packets after multiple collisions in the half-duplex mode. |
Tx_Deferred_Packets
- Description: This register provides the number of successfully transmitted by DWC_ether_qos after a deferral in the half-duplex mode.
- Size: 32 bits
- Offset: 0x754
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | TXDEFRD | R |
Tx Deferred Packets This field indicates the number of successfully transmitted after a deferral in the half-duplex mode. |
Tx_Late_Collision_Packets
- Description: This register provides the number of packets aborted by DWC_ether_qos because of late collision error.
- Size: 32 bits
- Offset: 0x758
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | TXLATECOL | R |
Tx Late Collision Packets This field indicates the number of packets aborted because of late collision error. |
Tx_Excessive_Collision_Packets
- Description: This register provides the number of packets aborted by DWC_ether_qos because of excessive(16) collision errors.
- Size: 32 bits
- Offset: 0x75c
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | TXEXSCOL | R | Tx Excessive Collision Packets This field indicates the number of packets aborted because of excessive (16) collision errors. |
Tx_Carrier_Error_Packets
- Description: This register provides the number of packets aborted by DWC_ether_qos because of carrier sense error (no carrier or loss of carrier).
- Size: 32 bits
- Offset: 0x760
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | TXCARR | R | Tx Carrier Error Packets This field indicates the number of packets aborted because of carrier sense error (no carrier or loss of carrier). |
Tx_Octet_Count_Good
- Description: This register provides the number of bytes transmitted by DWC_ether_qos, exclusive of preamble, only in good packets.
- Size: 32 bits
- Offset: 0x764
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | TXOCTG | R | Tx Octet Count Good This field indicates the number of bytes transmitted, exclusive of preamble, only in good packets. |
Tx_Packet_Count_Good
- Description: This register provides the number of good packets transmitted by DWC_ether_qos.
- Size: 32 bits
- Offset: 0x768
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | TXPKTG | R |
Tx Packet Count Good This field indicates the number of good packets transmitted. |
Tx_Excessive_Deferral_Error
- Description: This register provides the number of packets aborted by DWC_ether_qos because of excessive deferral error (deferred for more than two max-sized packet times).
- Size: 32 bits
- Offset: 0x76c
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | TXEXSDEF | R | Tx Excessive Deferral Error This field indicates the number of packets aborted because of excessive deferral error (deferred for more than two max-sized packet times). |
Tx_Pause_Packets
- Description: This register provides the number of good Pause packets transmitted by DWC_ether_qos.
- Size: 32 bits
- Offset: 0x770
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | TXPAUSE | R | Tx Pause Packets This field indicates the number of good Pause packets transmitted. |
Tx_VLAN_Packets_Good
- Description: This register provides the number of good VLAN packets transmitted by DWC_ether_qos.
- Size: 32 bits
- Offset: 0x774
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | TXVLANG | R | Tx VLAN Packets Good This field provides the number of good VLAN packets transmitted. |
Tx_OSize_Packets_Good
- Description: This register provides the number of packets transmitted by DWC_ether_qos without errors and with length greater than the max size (1,518 or 1,522 bytes for VLAN tagged packets; 2000 bytes if enabled in S2KP bit of the MAC_Configuration register).
- Size: 32 bits
- Offset: 0x778
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | TXOSIZG | R | Tx OSize Packets Good This field indicates the number of packets transmitted without errors and with length greater than the max size (1,518 or 1,522 bytes for VLAN tagged packets; 2000 bytes if enabled in S2KP bit of the MAC_Configuration register). |
Rx_Packets_Count_Good_Bad
- Description: This register provides the number of good and bad packets received by DWC_ether_qos.
- Size: 32 bits
- Offset: 0x780
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXPKTGB | R | Rx Packets Count Good Bad This field indicates the number of good and bad packets received. |
Rx_Octet_Count_Good_Bad
- Description: This register provides the number of bytes received by DWC_ther_qos, exclusive of preamble, in good and bad packets.
- Size: 32 bits
- Offset: 0x784
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | RXOCTGB | R | Rx Octet Count Good Bad This field indicates the number of bytes received, exclusive of preamble, in good and bad packets. |
Rx_Octet_Count_Good
- Description: This register provides the number of bytes received by DWC_ether_qos, exclusive of preamble, only in good packets.
- Size: 32 bits
- Offset: 0x788
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | RXOCTG | R | Rx Octet Count Good This field indicates the number of bytes received, exclusive of preamble, only in good packets. |
Rx_Broadcast_Packets_Good
- Description: This register provides the number of good broadcast packets received by DWC_ether_qos.
- Size: 32 bits
- Offset: 0x78c
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXBCASTG | R |
Rx Broadcast Packets Good This field indicates the number of good broadcast packets received. |
Rx_Multicast_Packets_Good
- Description: This register provides the number of good multicast packets received by DWC_ether_qos.
- Size: 32 bits
- Offset: 0x790
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXMCASTG | R | Rx Multicast Packets Good This field indicates the number of good multicast packets received. |
Rx_CRC_Error_Packets
- Description: This register provides the number of packets received by DWC_ether_qos with CRC error.
- Size: 32 bits
- Offset: 0x794
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXCRCERR | R | Rx CRC Error Packets This field indicates the number of packets received with CRC error. |
Rx_Alignment_Error_Packets
- Description: This register provides the number of packets received by DWC_ether_qos with alignment (dribble) error. It is valid only in 10/100 mode.
- Size: 32 bits
- Offset: 0x798
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXALGNERR | R | Rx Alignment Error Packets This field indicates the number of packets received with alignment (dribble) error. It is valid only in 10/100 mode. |
Rx_Runt_Error_Packets
- Description: This register provides the number of packets received by DWC_ether_qos with runt (length less than 64 bytes and CRC error) error.
- Size: 32 bits
- Offset: 0x79c
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXRUNTERR | R | Rx Runt Error Packets This field indicates the number of packets received with runt (length less than 64 bytes and CRC error) error. |
Rx_Jabber_Error_Packets
- Description: This register provides the number of giant packets received by DWC_ether_qos with length (including CRC) greater than 1,518 bytes (1,522 bytes for VLAN tagged) and with CRC error. If Jumbo Packet mode is enabled, packets of length greater than 9,018 bytes (9,022 bytes for VLAN tagged) are considered as giant packets.
- Size: 32 bits
- Offset: 0x7a0
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXJABERR | R | Rx Jabber Error Packets This field indicates the number of giant packets received with length (including CRC) greater than 1,518 bytes (1,522 bytes for VLAN tagged) and with CRC error. If Jumbo Packet mode is enabled, packets of length greater than 9,018 bytes (9,022 bytes for VLAN tagged) are considered as giant packets. |
Rx_Undersize_Packets_Good
- Description: This register provides the number of packets received by DWC_ether_qos with length less than 64 bytes, without any errors.
- Size: 32 bits
- Offset: 0x7a4
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXUNDERSZG | R | Rx Undersize Packets Good This field indicates the number of packets received with length less than 64 bytes, without any errors. |
Rx_Oversize_Packets_Good
- Description: This register provides the number of packets received by DWC_ether_qos without errors, with length greater than the max size (1,518 bytes or 1,522 bytes for VLAN tagged packets; 2000 bytes if enabled in the S2KP bit of the MAC_Configuration register).
- Size: 32 bits
- Offset: 0x7a8
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXOVERSZG | R | Rx Oversize Packets Good This field indicates the number of packets received without errors, with length greater than the max size (1,518 bytes or 1,522 bytes for VLAN tagged packets; 2000 bytes if enabled in the S2KP bit of the MAC_Configuration register). |
Rx_64Octets_Packets_Good_Bad
- Description: This register provides the number of good and bad packets received by DWC_ether_qos with length 64 bytes, exclusive of the preamble.
- Size: 32 bits
- Offset: 0x7ac
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RX64OCTGB | R | Rx64 Octets Packets Good Bad This field indicates the number of good and bad packets received with length 64 bytes, exclusive of the preamble. |
Rx_65To127Octets_Packets_Good_Bad
- Description: This register provides the number of good and bad packets received by DWC_ether_qos with length between 65 and 127 (inclusive) bytes, exclusive of the preamble.
- Size: 32 bits
- Offset: 0x7b0
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RX65_127OCTGB | R | Rx65-127 Octets Packets Good Bad This field indicates the number of good and bad packets received with length between 65 and 127 (inclusive) bytes, exclusive of the preamble. |
Rx_128To255Octets_Packets_Good_Bad
- Description: This register provides the number of good and bad packets received by DWC_ether_qos with length between 128 and 255 (inclusive) bytes, exclusive of the preamble.
- Size: 32 bits
- Offset: 0x7b4
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RX128_255OCTGB | R | Rx128-255 Octets Packets Good Bad This field indicates the number of good and bad packets received with length between 128 and 255 (inclusive) bytes, exclusive of the preamble. |
Rx_256To511Octets_Packets_Good_Bad
- Description: This register provides the number of good and bad packets received by DWC_ether_qos with length between 256 and 511 (inclusive) bytes, exclusive of the preamble.
- Size: 32 bits
- Offset: 0x7b8
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RX256_511OCTGB | R | Rx256-511 Octets Packets Good Bad This field indicates the number of good and bad packets received with length between 256 and 511 (inclusive) bytes, exclusive of the preamble. |
Rx_512To1023Octets_Packets_Good_Bad
- Description: This register provides the number of good and bad packets received by DWC_ether_qos with length between 512 and 1023 (inclusive) bytes, exclusive of the preamble.
- Size: 32 bits
- Offset: 0x7bc
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RX512_1023OCTGB | R | RX512-1023 Octets Packets Good Bad This field indicates the number of good and bad packets received with length between 512 and 1023 (inclusive) bytes, exclusive of the preamble. |
Rx_1024ToMaxOctets_Packets_Good_Bad
- Description: This register provides the number of good and bad packets received by DWC_ether_qos with length between 1024 and max size (inclusive) bytes, exclusive of the preamble.
- Size: 32 bits
- Offset: 0x7c0
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RX1024_MAXOCTGB | R |
Rx1024-Max Octets Good Bad This field indicates the number of good and bad packets received with length between 1024 and max size (inclusive) bytes, exclusive of the preamble. |
Rx_Unicast_Packets_Good
- Description: This register provides the number of good unicast packets received by DWC_ether_qos.
- Size: 32 bits
- Offset: 0x7c4
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXUCASTG | R | Rx Unicast Packets Good This field indicates the number of good unicast packets received. |
Rx_Length_Error_Packets
- Description: This register provides the number of packets received by DWC_ether_qos with length error (Length Type field not equal to packet size), for all packets with valid length field.
- Size: 32 bits
- Offset: 0x7c8
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXLENERR | R | Rx Length Error Packets This field indicates the number of packets received with length error (Length Type field not equal to packet size), for all packets with valid length field. |
Rx_Out_Of_Range_Type_Packets
- Description: This register provides the number of packets received by DWC_ether_qos with length field not equal to the valid packet size (greater than 1,500 but less than 1,536).
- Size: 32 bits
- Offset: 0x7cc
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXOUTOFRNG | R | Rx Out of Range Type Packet This field indicates the number of packets received with length field not equal to the valid packet size (greater than 1,500 but less than 1,536). |
Rx_Pause_Packets
- Description: This register provides the number of good and valid Pause packets received by DWC_ether_qos.
- Size: 32 bits
- Offset: 0x7d0
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXPAUSEPKT | R | Rx Pause Packets This field indicates the number of good and valid Pause packets received. |
Rx_FIFO_Overflow_Packets
- Description: This register provides the number of missed received packets because of FIFO overflow in DWC_ether_qos.
- Size: 32 bits
- Offset: 0x7d4
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXFIFOOVFL | R | Rx FIFO Overflow Packets This field indicates the number of missed received packets because of FIFO overflow. |
Rx_VLAN_Packets_Good_Bad
- Description: This register provides the number of good and bad VLAN packets received by DWC_ether_qos.
- Size: 32 bits
- Offset: 0x7d8
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXVLANPKTGB | R | Rx VLAN Packets Good Bad This field indicates the number of good and bad VLAN packets received. |
Rx_Watchdog_Error_Packets
- Description: This register provides the number of packets received by DWC_ether_qos with error because of watchdog timeout error (packets with a data load larger than 2,048 bytes (when JE and WD bits are reset in MAC_Configuration register), 10,240 bytes (when JE bit is set and WD bit is reset in MAC_Configuration register), 16,384 bytes (when WD bit is set in MAC_Configuration register) or the value programmed in the MAC_Watchdog_Timeout register).
- Size: 32 bits
- Offset: 0x7dc
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXWDGERR | R | Rx Watchdog Error Packets This field indicates the number of packets received with error because of watchdog timeout error (packets with a data load larger than 2,048 bytes (when JE and WD bits are reset in MAC_Configuration register), 10,240 bytes (when JE bit is set and WD bit is reset in MAC_Configuration register), 16,384 bytes (when WD bit is set in MAC_Configuration register) or the value programmed in the MAC_Watchdog_Timeout register). |
Rx_Receive_Error_Packets
- Description: This register provides the number of packets received by DWC_ether_qos with Receive error or Packet Extension error on the GMII or MII interface.
- Size: 32 bits
- Offset: 0x7e0
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXRCVERR | R | Rx Receive Error Packets This field indicates the number of packets received with Receive error or Packet Extension error on the GMII or MII interface. |
Rx_Control_Packets_Good
- Description: This register provides the number of good control packets received by DWC_ether_qos.
- Size: 32 bits
- Offset: 0x7e4
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXCTRLG | R | Rx Control Packets Good This field indicates the number of good control packets received. |
Tx_LPI_USEC_Cntr
- Description: This register provides the number of microseconds Tx LPI is asserted by DWC_ether_qos.
- Size: 32 bits
- Offset: 0x7ec
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | TXLPIUSC | R | Tx LPI Microseconds Counter This field indicates the number of microseconds Tx LPI is asserted. For every Tx LPI Entry and Exit, the Timer value can have an error of +/- 1 microsecond. |
Tx_LPI_Tran_Cntr
- Description: This register provides the number of times DWC_ether_qos has entered TxLPI.
- Size: 32 bits
- Offset: 0x7f0
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | TXLPITRC | R | Tx LPI Transition counter This field indicates the number of times Tx LPI Entry has occurred. Even if Tx LPI Entry occurs in Automate Mode (because of LPITXA bit set in the LPI Control and Status register), the counter increments. |
Rx_LPI_USEC_Cntr
- Description: This register provides the number of microseconds Rx LPI is sampled by DWC_ether_qos.
- Size: 32 bits
- Offset: 0x7f4
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXLPIUSC | R | Rx LPI Microseconds Counter This field indicates the number of microseconds Rx LPI is asserted. For every Rx LPI Entry and Exit, the Timer value can have an error of +/- 1 microsecond. |
Rx_LPI_Tran_Cntr
- Description: This register provides the number of times DWC_ether_qos has entered RxLPI.
- Size: 32 bits
- Offset: 0x7f8
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXLPITRC | R | Rx LPI Transition Counter This field indicates the number of times Rx LPI Entry has occurred. |
MMC_IPC_Rx_Interrupt_Mask
- Description: This register maintains the mask for the interrupt generated
from the receive IPC statistic counters.
The MMC Receive Checksum Off load Interrupt Mask register maintains the masks for the interrupts generated when the receive IPC (Checksum Off load) statistic counters reach half their maximum value, and when they reach their maximum values.
- Size: 32 bits
- Offset: 0x800
Bits | Name | Memory Access | Description |
---|---|---|---|
31:30 | Reserved_31_30 | R | Reserved |
29 | RXICMPEROIM | R/W | MMC Receive ICMP Error Octet Counter Interrupt Mask Setting this bit masks the interrupt when the rxicmp_err_octets counter reaches half of the maximum value or the maximum value. Values:
|
28 | RXICMPGOIM | R/W | MMC Receive ICMP Good Octet Counter Interrupt Mask Setting this bit masks the interrupt when the rxicmp_gd_octets counter reaches half of the maximum value or the maximum value. Values:
|
27 | RXTCPEROIM | R/W | MMC Receive TCP Error Octet Counter Interrupt Mask Setting this bit masks the interrupt when the rxtcp_err_octets counter reaches half of the maximum value or the maximum value. Values:
|
26 | RXTCPGOIM | R/W | MMC Receive TCP Good Octet Counter Interrupt Mask Setting this bit masks the interrupt when the rxtcp_gd_octets counter reaches half of the maximum value or the maximum value. Values:
|
25 | RXUDPEROIM | R/W | MMC Receive UDP Good Octet Counter Interrupt Mask Setting this bit masks the interrupt when the rxudp_err_octets counter reaches half of the maximum value or the maximum value. Values:
|
24 | RXUDPGOIM | R/W | MMC Receive IPV6 No Payload Octet Counter Interrupt Mask
Setting this bit masks the interrupt when the rxudp_gd_octets counter reaches half of the maximum value or the maximum value. Values:
|
23 | RXIPV6NOPAYOIM | R/W | MMC ReceiveIPV6 Header Error Octet Counter Interrupt
Mask Setting this bit masks the interrupt when the rxipv6_nopay_octets counter reaches half of the maximum value or the maximum value. Values:
|
22 | RXIPV6HEROIM | R/W | MMC ReceiveIPV6 Good Octet Counter Interrupt Mask Setting this bit masks the interrupt when the rxipv6_hdrerr_octets counter reaches half of the maximum value or the maximum value. Values:
|
21 | RXIPV6GOIM | R/W | MMC ReceiveIPV6 Good Octet Counter Interrupt Mask Setting this bit masks the interrupt when the rxipv6_gd_octets counter reaches half of the maximum value or the maximum value. Values:
|
20 | RXIPV4UDSBLOIM | R/W | MMC Receive IPV4 UDP Checksum Disabled Octet Counter
Interrupt Mask Setting this bit masks the interrupt when the rxipv4_udsbl_octets counter reaches half of the maximum value or the maximum value. Values:
|
19 | RXIPV4FRAGOIM | R/W | MMC Receive IPV4 Fragmented Octet Counter Interrupt
Mask Setting this bit masks the interrupt when the rxipv4_frag_octets counter reaches half of the maximum value or the maximum value. Values:
|
18 | RXIPV4NOPAYOIM | R/W | MMC ReceiveIPV4 No Payload Octet Counter Interrupt Mask
Setting this bit masks the interrupt when the rxipv4_nopay_octets counter reaches half of the maximum value or the maximum value. Values:
|
17 | RXIPV4HEROIM | R/W | MMC ReceiveIPV4 Header Error Octet Counter Interrupt
Mask Setting this bit masks the interrupt when the rxipv4_hdrerr_octets counter reaches half of the maximum value or the maximum value. Values:
|
16 | RXIPV4GOIM | R/W | MMC ReceiveIPV4 Good Octet Counter Interrupt Mask Setting this bit masks the interrupt when the rxipv4_gd_octets counter reaches half of the maximum value or the maximum value. Values:
|
15:14 | Reserved_15_14 | R | Reserved |
13 | RXICMPERPIM | R/W | MMC Receive ICMP Error Packet Counter Interrupt Mask
Setting this bit masks the interrupt when the rxicmp_err_pkts counter reaches half of the maximum value or the maximum value. Values:
|
12 | RXICMPGPIM | R/W | MMC Receive ICMP Good Packet Counter Interrupt Mask
Setting this bit masks the interrupt when the rxicmp_gd_pkts counter reaches half of the maximum value or the maximum value. Values:
|
11 | RXTCPERPIM | R/W | MMC Receive TCP Error Packet Counter Interrupt Mask
Setting this bit masks the interrupt when the rxtcp_err_pkts counter reaches half of the maximum value or the maximum value. Values:
|
10 | RXTCPGPIM | R/W | MMC Receive TCP Good Packet Counter Interrupt Mask Setting this bit masks the interrupt when the rxtcp_gd_pkts counter reaches half of the maximum value or the maximum value. Values:
|
9 | RXUDPERPIM | R/W | MMC Receive UDP Error Packet Counter Interrupt Mask
Setting this bit masks the interrupt when the rxudp_err_pkts counter reaches half of the maximum value or the maximum value. Values:
|
8 | RXUDPGPIM | R/W | MMC Receive UDP Good Packet Counter Interrupt Mask Setting this bit masks the interrupt when the rxudp_gd_pkts counter reaches half of the maximum value or the maximum value. Values:
|
7 | RXIPV6NOPAYPIM | R/W | MMC Receive IPV6 No Payload Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the rxipv6_nopay_pkts counter reaches half of the maximum value or the maximum value. Values:
|
6 | RXIPV6HERPIM | R/W | MMC ReceiveIPV6 Header Error Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the rxipv6_hdrerr_pkts counter reaches half of the maximum value or the maximum value. Values:
|
5 | RXIPV6GPIM | R/W | MMC ReceiveIPV6 Good Packet Counter Interrupt Mask Setting this bit masks the interrupt when the rxipv6_gd_pkts counter reaches half of the maximum value or the maximum value. Values:
|
4 | RXIPV4UDSBLPIM | R/W | MMC Receive IPV4 UDP Checksum Disabled Packet Counter
Interrupt Mask Setting this bit masks the interrupt when the rxipv4_udsbl_pkts counter reaches half of the maximum value or the maximum value. Values:
|
3 | RXIPV4FRAGPIM | R/W | MMC Receive IPV4 Fragmented Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the rxipv4_frag_pkts counter reaches half of the maximum value or the maximum value. Values:
|
2 | RXIPV4NOPAYPIM | R/W | MMC Receive IPV4 No Payload Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the rxipv4_nopay_pkts counter reaches half of the maximum value or the maximum value. Values:
|
1 | RXIPV4HERPIM | R/W | MMC ReceiveIPV4 Header Error Packet Counter Interrupt
Mask Setting this bit masks the interrupt when the rxipv4_hdrerr_pkts counter reaches half of the maximum value or the maximum value. Values:
|
0 | RXIPV4GPIM | R/W | MMC ReceiveIPV4 Good Packet Counter Interrupt Mask Setting this bit masks the interrupt when the rxipv4_gd_pkts counter reaches half of the maximum value or the maximum value. Values:
|
MMC_IPC_Rx_Interrupt
- Description: This register maintains the interrupt that the receive IPC
statistic counters generate. The MMC Receive Checksum Offload Interrupt
register maintains the interrupts generated when receive IPC statistic
counters reach half their maximum values (0x8000_0000 for 32 bit counter and
0x8000 for 16 bit counter), and when they cross their maximum values
(0xFFFF_FFFF for 32 bit counter and 0xFFFF for 16 bit counter). When Counter
Stop Rollover is set, the interrupts are set but the counter remains at
all-ones.
The MMC Receive Checksum Offload Interrupt register is 32 bit wide. When the MMC IPC counter that caused the interrupt is read, its corresponding interrupt bit is cleared. The counter's least-significant byte lane (Bits[7:0]) must be read to clear the interrupt bit.
- Size: 32 bits
- Offset: 0x808
Bits | Name | Memory Access | Description |
---|---|---|---|
31:30 | Reserved_31_30 | R | Reserved |
29 | RXICMPEROIS | R | MMC Receive ICMP Error Octet Counter Interrupt Status This bit is set when the rxicmp_err_octets counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
28 | RXICMPGOIS | R | MMC Receive ICMP Good Octet Counter Interrupt Status This bit is set when the rxicmp_gd_octets counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
27 | RXTCPEROIS | R | MMC Receive TCP Error Octet Counter Interrupt Status This bit is set when the rxtcp_err_octets counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
26 | RXTCPGOIS | R | MMC Receive TCP Good Octet Counter Interrupt Status This bit is set when the rxtcp_gd_octets counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
25 | RXUDPEROIS | R | MMC Receive UDP Error Octet Counter Interrupt Status This bit is set when the rxudp_err_octets counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
24 | RXUDPGOIS | R | MMC Receive UDP Good Octet Counter Interrupt Status This bit is set when the rxudp_gd_octets counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
23 | RXIPV6NOPAYOIS | R | MMC ReceiveIPV6 No Payload Octet Counter Interrupt Status
This bit is set when the rxipv6_nopay_octets counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
22 | RXIPV6HEROIS | R | MMC ReceiveIPV6 Header Error Octet Counter Interrupt
Status This bit is set when the rxipv6_hdrerr_octets counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
21 | RXIPV6GOIS | R | MMC ReceiveIPV6 Good Octet Counter Interrupt Status This bit is set when the rxipv6_gd_octets counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
20 | RXIPV4UDSBLOIS | R | MMC Receive IPV4 UDP Checksum Disabled Octet Counter
Interrupt Status This bit is set when the rxipv4_udsbl_octets counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
19 | RXIPV4FRAGOIS | R | MMC Receive IPV4 Fragmented Octet Counter Interrupt
Status This bit is set when the rxipv4_frag_octets counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
18 | RXIPV4NOPAYOIS | R | MMC ReceiveIPV4 No Payload Octet Counter Interrupt Status
This bit is set when the rxipv4_nopay_octets counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
17 | RXIPV4HEROIS | R | MMC ReceiveIPV4 Header Error Octet Counter Interrupt
Status This bit is set when the rxipv4_hdrerr_octets counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
16 | RXIPV4GOIS | R | MMC ReceiveIPV4 Good Octet Counter Interrupt Status This bit is set when the rxipv4_gd_octets counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
15:14 | Reserved_15_14 | R | Reserved |
13 | RXICMPERPIS | R | MMC Receive ICMP Error Packet Counter Interrupt Status
This bit is set when the rxicmp_err_pkts counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
12 | RXICMPGPIS | R | MMC Receive ICMP Good Packet Counter Interrupt Status This bit is set when the rxicmp_gd_pkts counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
11 | RXTCPERPIS | R | MMC Receive TCP Error Packet Counter Interrupt Status This bit is set when the rxtcp_err_pkts counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
10 | RXTCPGPIS | R | MMC Receive TCP Good Packet Counter Interrupt Status This bit is set when the rxtcp_gd_pkts counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
9 | RXUDPERPIS | R | MMC Receive UDP Error Packet Counter Interrupt Status This bit is set when the rxudp_err_pkts counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
8 | RXUDPGPIS | R | MC Receive UDP Good Packet Counter Interrupt Status This bit is set when the rxudp_gd_pkts counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
7 | RXIPV6NOPAYPIS | R | MMC Receive IPV6 No Payload Packet Counter Interrupt
Status This bit is set when the rxipv6_nopay_pkts counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
6 | RXIPV6HERPIS | R | MMC ReceiveIPV6 Header Error Packet Counter Interrupt
Status This bit is set when the rxipv6_hdrerr_pkts counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
5 | RXIPV6GPIS | R | MMC Receive IPV6 Good Packet Counter Interrupt Status This bit is set when the rxipv6_gd_pkts counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
4 | RXIPV4UDSBLPIS | R | MMC Receive IPV4 UDP Checksum Disabled Packet Counter
Interrupt Status This bit is set when the rxipv4_udsbl_pkts counter reaches half of the maximum value or the maximum value. Values:
|
3 | RXIPV4FRAGPIS | R | MMC Receive IPV4 Fragmented Packet Counter Interrupt
Status This bit is set when the rxipv4_frag_pkts counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
2 | RXIPV4NOPAYPIS | R | MMC Receive IPV4 No Payload Packet Counter Interrupt
Status This bit is set when the rxipv4_nopay_pkts counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
1 | RXIPV4HERPIS | R | MMC ReceiveIPV4 Header Error Packet Counter Interrupt
Status This bit is set when the rxipv4_hdrerr_pkts counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
0 | RXIPV4GPIS | R | MMC ReceiveIPV4 Good Packet Counter Interrupt Status This bit is set when the rxipv4_gd_pkts counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
RxIPv4_Good_Packets
- Description: This register provides the number of good IPv4 datagrams received by DWC_ether_qos with the TCP, UDP, or ICMP payload.
- Size: 32 bits
- Offset: 0x810
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXIPV4GDPKT | R | RxIPv4 Good Packets This field indicates the number of good IPv4 datagrams received with the TCP, UDP, or ICMP payload. |
RxIPv4_Header_Error_Packets
- Description: RxIPv4 Header Error Packets
This register provides the number of IPv4 datagrams received by DWC_ether_qos with header (checksum, length, or version mismatch) errors.
- Size: 32 bits
- Offset: 0x814
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXIPV4HDRERRPKT | R | RxIPv4Header Error Packets This field indicates the number ofIPv4 datagrams received with header (checksum, length, or version mismatch) errors. |
RxIPv4_No_Payload_Packets
- Description: This register provides the number of IPv4datagram packets received by DWC_ether_qos that did not have a TCP, UDP, or ICMP payload.
- Size: 32 bits
- Offset: 0x818
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXIPV4NOPAYPKT | R | Rx IPv4 Payload Packets This field indicates the number ofIPv4 datagram packets received that did not have a TCP, UDP, or ICMP payload. |
RxIPv4_Fragmented_Packets
- Description: This register provides the number of good IPv4 datagrams received by DWC_ether_qos with fragmentation.
- Size: 32 bits
- Offset: 0x81c
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXIPV4FRAGPKT | R | Rx IPv4 Fragmented Packets This field indicates the number of good IPv4 datagrams received with fragmentation. |
RxIPv4_UDP_Checksum_Disabled_Packets
- Description: This register provides the number of good IPv4 datagrams received by DWC_ether_qos that had a UDP payload with checksum disabled.
- Size: 32 bits
- Offset: 0x820
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXIPV4UDSBLPKT | R | Rx IPv4 UDP Checksum Disabled Packets This field indicates the number of good IPv4 datagrams received that had a UDP payload with checksum disabled. |
RxIPv6_Good_Packets
- Description: This register provides the number of good IPv6 datagrams received by DWC_ether_qos with the TCP, UDP, or ICMP payload.
- Size: 32 bits
- Offset: 0x824
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXIPV6GDPKT | R | Rx IPv6 Good Packets This field indicates the number of good IPv6 datagrams received with the TCP, UDP, or ICMP payload. |
RxIPv6_Header_Error_Packets
- Description: This register provides the number of IPv6 datagrams received by DWC_ether_qos with header (length or version mismatch) errors.
- Size: 32 bits
- Offset: 0x828
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXIPV6HDRERRPKT | R | Rx IPv6 Header Error Packets This field indicates the number ofIPv6 datagrams received with header (length or version mismatch) errors. |
RxIPv6_No_Payload_Packets
- Description: This register provides the number of IPv6datagram packets received by DWC_ether_qos that did not have a TCP, UDP, or ICMP payload. This includes all IPv6 datagrams with fragmentation or security extension headers.
- Size: 32 bits
- Offset: 0x82c
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXIPV6NOPAYPKT | R | Rx IPv6 Payload Packets This field indicates the number ofIPv6 datagram packets received that did not have a TCP, UDP, or ICMP payload. This includes all IPv6 datagrams with fragmentation or security extension headers. |
RxUDP_Good_Packets
- Description: This register provides the number of good IP datagrams received by DWC_ether_qos with a good UDP payload. This counter is not updated when the RxIPv4_UDP_Checksum_Disabled_Packets counter is incremented.
- Size: 32 bits
- Offset: 0x830
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXUDPGDPKT | R | Rx UDP Good Packets This field indicates the number of good IP datagrams received with a good UDP payload. This counter is not updated when the RxIPv4_UDP_Checksum_Disabled_Packets counter is incremented. |
RxUDP_Error_Packets
- Description: This register provides the number of good IP datagrams received by DWC_ether_qos whose UDP payload has a checksum error.
- Size: 32 bits
- Offset: 0x834
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXUDPERRPKT | R | Rx UDP Error Packets This field indicates the number of good IP datagrams received whose UDP payload has a checksum error. |
RxTCP_Good_Packets
- Description:This register provides the number of good IP datagrams received by DWC_ether_qos with a good TCP payload.
- Size: 32 bits
- Offset: 0x838
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXTCPGDPKT | R | Rx TCP Good Packets This field indicates the number of good IP datagrams received with a good TCP payload. |
RxTCP_Error_Packets
- Description: This register provides the number of good IP datagrams received by DWC_ether_qos whose TCP payload has a checksum error.
- Size: 32 bits
- Offset: 0x83c
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXTCPERRPKT | R | Rx TCP Error Packets This field indicates the number of good IP datagrams received whose TCP payload has a checksum error. |
RxICMP_Good_Packets
- Description: This register provides the number of good IP datagrams received by DWC_ether_qos with a good ICMP payload.
- Size: 32 bits
- Offset: 0x840
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXICMPGDPKT | R | Rx ICMP Good Packets This field indicates the number of good IP datagrams received with a good ICMP payload. |
RxICMP_Error_Packets
- Description: This register provides the number of good IP datagrams received by DWC_ether_qos whose ICMP payload has a checksum error.
- Size: 32 bits
- Offset: 0x844
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
x:0 | RXICMPERRPKT | R | Rx ICMP Error Packets This field indicates the number of good IP datagrams received whose ICMP payload has a checksum error. |
RxIPv4_Good_Octets
- Description: This register provides the number of bytes received by DWC_ether_qos in good IPv4 datagrams encapsulating TCP, UDP, or ICMP data. (Ethernet header, FCS, pad, or IP pad bytes are not included in this counter.)
- Size: 32 bits
- Offset: 0x850
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | RXIPV4GDOCT | R | Rx IPv4 Good Octets This field indicates the number of bytes received in good IPv4 datagrams encapsulating TCP, UDP, or ICMP data. (Ethernet header, FCS, pad, or IP pad bytes are not included in this counter.) |
RxIPv4_Header_Error_Octets
- Description: This register provides the number of bytes received by DWC_ether_qos in IPv4 data- grams with header errors (checksum, length, version mismatch). The value in the Length field of IPv4 header is used to update this counter. (Ethernet header, FCS, pad, or IP pad bytes are not included in this counter.)
- Size: 32 bits
- Offset: 0x854
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | RXIPV4HDRERROCT | R | Rx IPv4 Header Error Octets This field indicates the number of bytes received in IPv4 datagrams with header errors (checksum, length, version mismatch). The value in the Length field of IPv4 header is used to update this counter. (Ethernet header, FCS, pad, or IP pad bytes are not included in this counter.) |
RxIPv4_No_Payload_Octets
- Description: This register provides the number of bytes received by DWC_ether_qos in IPv4 datagrams that did not have a TCP, UDP, or ICMP payload. The value in the Length field of IPv4 header is used to update this counter. (Ethernet header, FCS, pad, or IP pad bytes are not included in this counter.)
- Size: 32 bits
- Offset: 0x858
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | RXIPV4NOPAYOCT | R | Rx IPv4 Payload Octets This field indicates the number of bytes received in IPv4 datagrams that did not have a TCP, UDP, or ICMP payload. The value in the Length field of IPv4 header is used to update this counter. (Ethernet header, FCS, pad, or IP pad bytes are not included in this counter.) |
RxIPv4_Fragmented_Octets
- Description: This register provides the number of bytes received by DWC_ether_qos in fragmented IPv4 datagrams. The value in the Length field of IPv4 header is used to update this counter. (Ethernet header, FCS, pad, or IP pad bytes are not included in this counter.)
- Size: 32 bits
- Offset: 0x85c
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | RXIPV4FRAGOCT | R | Rx IPv4 Fragmented Octets This field indicates the number of bytes received in fragmented IPv4 datagrams. The value in the Length field of IPv4 header is used to update this counter. (Ethernet header, FCS, pad, or IP pad bytes are not included in this counter.) |
RxIPv4_UDP_Checksum_Disable_Octets
- Description: This register provides the number of bytes received by DWC_ether_qos in a UDP segment that had the UDP checksum disabled. This counter does not count IP Header bytes. (Ethernet header, FCS, pad, or IP pad bytes are not included in this counter.)
- Size: 32 bits
- Offset: 0x860
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | RXIPV4UDSBLOCT | R | Rx IPv4 UDP Checksum Disable Octets This field indicates the number of bytes received in a UDP segment that had the UDP checksum disabled. This counter does not count IP Header bytes. (Ethernet header, FCS, pad, or IP pad bytes are not included in this counter.) |
RxIPv6_Good_Octets
- Description: This register provides the number of bytes received by DWC_ether_qos in good IPv6 datagrams encapsulating TCP, UDP, or ICMP data. (Ethernet header, FCS, pad, or IP pad bytes are not included in this counter.)
- Size: 32 bits
- Offset: 0x864
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | RXIPV6GDOCT | R | Rx IPv6 Good Octets This field indicates the number of bytes received in good IPv6 datagrams encapsulating TCP, UDP, or ICMP data. (Ethernet header, FCS, pad, or IP pad bytes are not included in this counter.) |
RxIPv6_Header_Error_Octets
- Description: This register provides the number of bytes received by DWC_ether_qos in IPv6 data- grams with header errors (length, version mismatch). The value in the Length field of IPv6 header is used to update this counter. (Ethernet header, FCS, pad, or IP pad bytes are not included in this counter.)
- Size: 32 bits
- Offset: 0x868
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | RXIPV6HDRERROCT | R | Rx IPv6 Header Error Octets This field indicates the number of bytes received in IPv6 datagrams with header errors (length, version mismatch). The value in the Length field of IPv6 header is used to update this counter. (Ethernet header, FCS, pad, or IP pad bytes are not included in this counter.) |
RxIPv6_No_Payload_Octets
- Description: This register provides the number of bytes received by DWC_ether_qos in IPv6 data- grams that did not have a TCP, UDP, or ICMP payload. The value in the Length field of IPv6 header is used to update this counter. (Ethernet header, FCS, pad, or IP pad bytes are not included in this counter.)
- Size: 32 bits
- Offset: 0x86c
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | RXIPV6NOPAYOCT | R | Rx IPv6 Payload Octets This field indicates the number of bytes received in IPv6 datagrams that did not have a TCP, UDP, or ICMP payload. The value in the Length field of IPv6 header is used to update this counter. (Ethernet header, FCS, pad, or IP pad bytes are not included in this counter.) |
RxUDP_Good_Octets
- Description: This register provides the number of bytes received by DWC_ether_qos in a good UDP segment. This counter does not count IP header bytes.
- Size: 32 bits
- Offset: 0x870
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | RXUDPGDOCT | R | Rx UDP Good Octets This field indicates the number of bytes received in a good UDP segment. This counter does not count IP header bytes. |
RxUDP_Error_Octets
- Description: This register provides the number of bytes received by DWC_ether_qos in a UDP segment that had checksum errors. This counter does not count IP header bytes.
- Size: 32 bits
- Offset: 0x874
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | RXUDPERROCT | R | Rx UDP Error Octets This field indicates the number of bytes received in a UDP segment that had checksum errors. This counter does not count IP header bytes. |
RxTCP_Good_Octets
- Description: This register provides the number of bytes received by DWC_ether_qos in a good TCP segment. This counter does not count IP header bytes.
- Size: 32 bits
- Offset: 0x878
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | RXTCPGDOCT | R | Rx TCP Good Octets This field indicates the number of bytes received in a good TCP segment. This counter does not count IP header bytes. |
RxTCP_Error_Octets
- Description: This register provides the number of bytes received by DWC_ether_qos in a TCP segment that had checksum errors. This counter does not count IP header bytes.
- Size: 32 bits
- Offset: 0x87c
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | RXTCPERROCT | R | Rx TCP Error Octets This field indicates the number of bytes received in a TCP segment that had checksum errors. This counter does not count IP header bytes. |
RxICMP_Good_Octets
- Description: This register provides the number of bytes received by DWC_ether_qos in a good ICMP segment. This counter does not count IP header bytes.
- Size: 32 bits
- Offset: 0x880
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | RXICMPGDOCT | R | Rx ICMP Good Octets This field indicates the number of bytes received in a good ICMP segment. This counter does not count IP header bytes. |
RxICMP_Error_Octets
- Description: This register provides the number of bytes received by DWC_ether_qos in a ICMP segment that had checksum errors. This counter does not count IP header bytes.
- Size: 32 bits
- Offset: 0x884
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | RXICMPERROCT | R | Rx ICMP Error Octets This field indicates the number of bytes received in a ICMP segment that had checksum errors. This counter does not count IP header bytes. |
MMC_FPE_Tx_Interrupt
- Description: This register maintains the interrupts generated from all FPE related Transmit statistics counters. The MMC FPE Transmit Interrupt register maintains the interrupts generated when transmit statistic counters reach half their maximum values (0x8000_0000 for 32 bit counter and 0x8000 for 16 bit counter), and when they cross their maximum values (0xFFFF_FFFF for 32-bit counter and 0xFFFF for 16-bit counter). When Counter Stop Rollover is set, the interrupts are set but the counter remains at all-ones. An interrupt bit is cleared when the respective MMC counter that caused the interrupt is read. The least significant byte lane (Bits[7:0]) of the respective counter must be read to clear the interrupt bit.
- Size: 32 bits
- Offset: 0x8a0
Bits | Name | Memory Access | Description |
---|---|---|---|
31:2 | Reserved_31_2 | R | Reserved |
1 | HRCIS | R | MMC Tx Hold Request Counter Interrupt Status This bit is set when the Tx_Hold_Req_Cntr counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Exists when any one of the RX/TX MMC counters is enabled during FPE with AV_EST Enabled configuration. Values:
|
0 | FCIS | R | MMC Tx FPE Fragment Counter Interrupt status This bit is set when the Tx_FPE_Fragment_Cntr counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Exists when any one of the RX/TX MMC counters are enabled during FPE Enabled configuration. Values:
|
MMC_FPE_Tx_Interrupt_Mask
- Description: This register maintains the masks for interrupts generated from all FPE related Transmit statistics counters. The MMC Receive Interrupt Mask register maintains the masks for the interrupts generated when FPE related receive statistic counters reach half of their maximum value or the maximum values. This register is 32 bit wide.
- Size: 32 bits
- Offset: 0x8a4
Bits | Name | Memory Access | Description |
---|---|---|---|
31:2 | Reserved_31_2 | R | Reserved |
1 | HRCIM | R/W | MMC Transmit Hold Request Counter Interrupt Mask Setting this bit masks the interrupt when the Tx_Hold_Req_Cntr counter reaches half of the maximum value or the maximum value. Exists when any one of the RX/TX MMC counters are enabled during FPE with AV_EST Enabled configuration. Values:
|
0 | FCIM | R/W | MMC Transmit Fragment Counter Interrupt Mask Setting this bit masks the interrupt when the Tx_FPE_Fragment_Cntr counter reaches half of the maximum value or the maximum value. Exists when any one of the RX/TX MMC counters are enabled during FPE Enabled configuration. Values:
|
MMC_Tx_FPE_Fragment_Cntr
- Description: This register provides the number of additional mPackets transmitted due to preemption.
- Size: 32 bits
- Offset: 0x8a8
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | TXFFC | R | Tx FPE Fragment Counter This field indicates the number of additional mPackets that has been transmitted due to preemption Exists when any one of the RX/TX MMC counters are enabled during FPE Enabled configuration. |
MMC_Tx_Hold_Req_Cntr
- Description: This register provides the count of number of times a hold request is given to MAC
- Size: 32 bits
- Offset: 0x8ac
- Exists: (DWC_EQOS_FPE&&DWC_EQOS_MMC_FPE_EN)&&DWC_EQOS_AV_EST
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | TXHRC | R | Tx Hold Request Counter This field indicates count of number of a hold request is given to MAC. Exists when any one of the RX/TX MMC counters are enabled during FPE with AV_EST Enabled configuration. |
MMC_FPE_Rx_Interrupt
- Description: This register maintains the interrupts generated from all FPE related Receive statistics counters. The MMC FPE Receive Interrupt register maintains the interrupts generated when transmit statistic counters reach half their maximum values (0x8000_0000 for 32 bit counter and 0x8000 for 16 bit counter), and when they cross their maximum values (0xFFFF_FFFF for 32-bit counter and 0xFFFF for 16-bit counter). When Counter Stop Rollover is set, the interrupts are set but the counter remains at all-ones. An interrupt bit is cleared when the respective MMC counter that caused the interrupt is read. The least significant byte lane (Bits[7:0]) of the respective counter must be read to clear the interrupt bit.
- Size: 32 bits
- Offset: 0x8c0
Bits | Name | Memory Access | Description |
---|---|---|---|
31:4 | Reserved_31_4 | R | Reserved |
3 | FCIS | R | MMC Rx FPE Fragment Counter Interrupt Status This bit is set when the Rx_FPE_Fragment_Cntr counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Exists when any one of the RX/TX MMC counters are enabled during FPE Enabled configuration. Values:
|
2 | PAOCIS | R | MMC Rx Packet Assembly OK Counter Interrupt Status This bit is set when the Rx_Packet_Assemble_Ok_Cntr counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Exists when any one of the RX/TX MMC counters are enabled during FPE Enabled configuration. Values:
|
1 | PSECIS | R | MMC Rx Packet SMD Error Counter Interrupt Status This bit is set when the Rx_Packet_SMD_Err_Cntr counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Exists when any one of the RX/TX MMC counters are enabled during FPE Enabled configuration. Values:
|
0 | PAECIS | R | MMC Rx Packet Assembly Error Counter Interrupt Status This bit is set when the Rx_Packet_Assemble_Err_Cntr counter reaches half of the maximum value or the maximum value. Access restriction applies. Clears on read. Self-set to 1 on internal event. Exists when any one of the RX/TX MMC counters are enabled during FPE Enabled configuration. Values:
|
MMC_FPE_Rx_Interrupt_Mask
- Description: This register maintains the masks for interrupts generated from all FPE related Receive statistics counters. The MMC Receive Interrupt Mask register maintains the masks for the interrupts generated when FPE related receive statistic counters reach half of their maximum value or the maximum values.
- Size: 32 bits
- Offset: 0x8c4
Bits | Name | Memory Access | Description |
---|---|---|---|
31:4 | Reserved_31_4 | R | Reserved |
3 | FCIM | R/W | MMC Rx FPE Fragment Counter Interrupt Mask Setting this bit masks the interrupt when the Tx_FPE_Fragment_Cntr counter reaches half of the maximum value or the maximum value. Exists when any one of the RX/TX MMC counters are enabled during FPE Enabled configuration. Values:
|
2 | PAOCIM | R/W | MMC Rx Packet Assembly OK Counter Interrupt Mask Setting this bit masks the interrupt when the Rx_Packet_Assemble_Ok_Cntr counter reaches half of the maximum value or the maximum value. Exists when any one of the RX/TX MMC counters are enabled during FPE Enabled configuration. Values:
|
1 | PSECIM | R/W | MMC Rx Packet SMD Error Counter Interrupt Mask Setting this bit masks the interrupt when the R Rx_Packet_SMD_Err_Cntr counter reaches half of the maximum value or the maximum value. Exists when any one of the RX/TX MMC counters are enabled during FPE Enabled configuration. Values:
|
0 | PAECIM | R/W | MMC Rx Packet Assembly Error Counter Interrupt Mask
Setting this bit masks the interrupt when the R Rx_Packet_Assemble_Err_Cntr counter reaches half of the maximum value or the maximum value. Exists when any one of the RX/TX MMC counters are enabled during FPE Enabled configuration. Values:
|
MMC_Rx_Packet_Assembly_Err_Cntr
- Description: This register provides the number of MAC frames with reassembly errors on the Receiver, due to mismatch in the Fragment Count value.
- Size: 32 bits
- Offset: 0x8c8
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | PAEC | R | Rx Packet Assembly Error Counter This field indicates the number of MAC frames with reassembly errors on the Receiver, due to mismatch in the Fragment Count value. Exists when any one of the RX/TX MMC counters are enabled during FPE Enabled configuration. |
MMC_Rx_Packet_SMD_Err_Cntr
- Description: This register provides the number of received MAC frames rejected due to unknown SMD value and MAC frame fragments rejected due to arriving with an SMD-C when there was no preceding preempted frame.
- Size: 32 bits
- Offset: 0x8cc
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | PSEC | R | Rx Packet SMD Error Counter This field indicates the number of MAC frames rejected due to unknown SMD value and MAC frame fragments rejected due to arriving with an SMD-C when there was no preceding preempted frame. Exists when at least one of the RX/TX MMC counters are enabled during FPE Enabled configuration. |
MMC_Rx_Packet_Assembly_OK_Cntr
- Description: This register provides the number of MAC frames that were successfully reassembled and delivered to MAC.
- Size: 32 bits
- Offset: 0x8d0
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | PAOC | R | Rx Packet Assembly OK Counter This field indicates the number of MAC frames that were successfully reassembled and delivered to MAC. Exists when at least one of the RX/TX MMC counters are enabled during FPE Enabled configuration. |
MMC_Rx_FPE_Fragment_Cntr
- Description: This register provides the number of additional mPackets received due to preemption.
- Size: 32 bits
- Offset: 0x8d4
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | FFC | R | Rx FPE Fragment Counter This field indicates the number of additional mPackets received due to preemption Exists when at least one of the RX/TX MMC counters are enabled during FPE Enabled configuration. |
MAC_Indir_Access_Ctrl
- Description: This register provides the Indirect Access control and status for MAC_<MSEl>_<AOFF> registers.
- Size: 32 bits
- Offset: 0xa70
Bits | Name | Memory Access | Description |
---|---|---|---|
31:20 | Reserved_31_20 | R | Reserved |
19:16 | MSEL | R/W | Mode Select This field is used in indirect access of MAC_<MSEL>_<AOFF>. This field must be set along with initiation of read/write to MAC_<MSEL>_<AOFF> and should not be changed until the OB is reset. Values:
|
15:8 | AOFF | R/W | Address Offset This field is used in indirect access of MAC_<MSEL>_<AOFF>. This field must be set along with initiation of read/write to MAC_<MSEL>_<AOFF> and should not be changed until the OB is reset. Values:
|
7:6 | Reserved_7_6 | R | Reserved |
5 | AUTO | R/W | Auto Increment
|
4:2 | Reserved_4_2 | R | Reserved |
1 | COM | R/W | Command Type This bit indicates the register access type.
Values:
|
0 | OB | R/W | Operation Busy. This bit is set along with a read or write command for initiating the indirect access to MAC_<MSEL>_<AOFF> register. This bit is reset when the read or write command to MAC_<MSEL>_<AOFF> register is complete. The next indirect register access can be initiated only after this bit is reset. During a write operation, the bit is reset only after the data has been written into MAC_<MSEL>_<AOFF> register. During a read operation, the data should be read from MAC_Indir_Access_Data register only after this bit is reset. |
MAC_Indir_Access_Data
- Description: This register holds the read/write data for Indirect Access of MAC_<MSEL_<AOFF> registers.
- Size: 32 bits
- Offset: 0xa74
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | DATA | R/W | This field contains data to read/write for Indirect address access associated with MAC_Indir_Access_Ctrl register. |
MAC_Timestamp_Control
- Description: This register controls the operation of the System Time generator and processing of PTP packets for time-stamping in the Receiver.
- Size: 32 bits
- Offset: 0xb00
Bits | Name | Memory Access | Description |
---|---|---|---|
31:29 | Reserved_31_29 | R | Reserved |
28 | AV8021ASMEN | R/W | AV802.1AS Mode Enabled When this bit is set, the MAC processes only untagged PTP over Ethernet packets for providing PTP status and capturing timestamp snapshots, that is, IEEE 802.1AS mode of operation. When PTP offload feature is enabled, for the purpose of PTP offload, the transport specific field in the PTP header is generated and checked based on the value of this bit. Values:
|
27:25 | Reserved_27_25 | R | Reserved |
24 | TXTSSTSM | R/W | Transmit Timestamp Status Mode When this bit is set, the MAC overwrites the earlier transmit timestamp status even if it is not read by the software. The MAC indicates this by setting the TXTSSMIS bit of the MAC_Tx_Timestamp_Status_Nanoseconds register. When this bit is reset, the MAC ignores the timestamp status of current packet if the timestamp status of previous packet is not read by the software. The MAC indicates this by setting the TXTSSMIS bit of the MAC_Tx_Timestamp_Status_Nanoseconds register. Values:
|
23:21 | Reserved_23_21 | R | Reserved |
20 | ESTI | R/W | External System Time Input When this bit is set, the MAC uses the external 64-bit reference System Time input for the following:
When this bit is reset, the MAC uses the internal reference System Time. Values:
|
19 | CSC | R/W | Enable Checksum Correction During OST for PTP over UDP/IPv4
Packets When this bit is set, the last two bytes of PTP message sent over UDP/IPv4 is updated to keep the UDP checksum correct, for changes made to origin timestamp and/or correction field as part of one step timestamp operation. The application forms the packet with these two dummy bytes. When reset, no updates are done to keep the UDP checksum correct. The application forms the packet with UDP checksum set to 0. Values:
|
18 | TSENMACADDR | R/W | Enable MAC Address for PTP Packet Filtering When this bit is set, the DA MAC address (that matches any MAC Address register) is used to filter the PTP packets when PTP is directly sent over Ethernet. When this bit is set, received PTP packets with DA containing a special multicast or unicast address that matches the one programmed in MAC address registers are considered for processing as indicated, when PTP is directly sent over Ethernet. For normal time stamping operation, MAC address registers 0 to 31 is considered for unicast destination address matching. For PTP offload, only MAC address register 0 is considered for unicast destination address matching. Values:
|
17:16 | SNAPTYPSEL | R/W | Select PTP packets for Taking Snapshots These bits, along with Bits 15and 14, decide the set of PTP packet types for which snapshot needs to be taken. |
15 | TSMSTRENA | R/W |
Enable Snapshot for Messages Relevant to Master When this bit is set, the snapshot is taken only for the messages that are relevant to the master node. Otherwise, the snapshot is taken for the messages relevant to the slave node. Values:
|
14 | TSEVNTENA | R/W | Enable Timestamp Snapshot for Event Messages When this bit is set, the timestamp snapshot is taken only for event messages (SYNC, Delay_Req, Pdelay_Req, or Pdelay_Resp). When this bit is reset, the snapshot is taken for all messages except Announce, Management, and Signaling. Values:
|
13 | TSIPV4ENA | R/W | Enable Processing of PTP Packets Sent over IPv4-UDP When this bit is set, the MAC receiver processes the PTP packets encapsulated in IPv4-UDP packets. When this bit is reset, the MAC ignores the PTP transported over IPv4-UDP packets. This bit is set by default. Values:
|
12 | TSIPV6ENA | R/W | Enable Processing of PTP Packets Sent over IPv6-UDP When this bit is set, the MAC receiver processes the PTP packets encapsulated in IPv6-UDP packets. When this bit is clear, the MAC ignores the PTP transported over IPv6-UDP packets. Values:
|
11 | TSIPENA | R/W | Enable Processing of PTP over Ethernet Packets When this bit is set, the MAC receiver processes the PTP packets encapsulated directly in the Ethernet packets. When this bit is reset, the MAC ignores the PTP over Ethernet packets. Values:
|
10 | TSVER2ENA | R/W | Enable PTP Packet Processing for Version 2 Format When this bit is set, the IEEE 1588 version 2 format is used to process the PTP packets. When this bit is reset, the IEEE 1588 version 1 format is used to process the PTP packets. The IEEE 1588 formats are described in 'PTP Processing and Control'. Values:
|
9 | TSCTRLSSR | R/W | Timestamp Digital or Binary Rollover Control When this bit is set, the Timestamp Low register rolls over after 0x3B9A_C9FF value (that is, 1 nanosecond accuracy) and increments the timestamp (High) seconds. When this bit is reset, the rollover value of sub-second register is 0x7FFF_FFFF. The sub-second increment must be programmed correctly depending on the PTP reference clock frequency and the value of this bit. Values:
|
8 | TSENALL | R/W | Enable Timestamp for All Packets When this bit is set, the timestamp snapshot is enabled for all packets received by the MAC. Values:
|
7 | Reserved_7 | R | Reserved |
6 | PTGE | R/W | Presentation Time Generation Enable When this bit is set the Presentation Time generation is enabled. Values:
|
5 | TSADDREG | R/W | Update Addend Register When this bit is set, the content of the Timestamp Addend register is updated in the PTP block for fine correction. This bit is cleared when the update is complete. This bit should be zero before it is set. Access restriction applies. Setting 1 sets. Self-cleared. Setting 0 has no effect. Values:
|
4 | TSTRIG | R/W | Enable Timestamp Interrupt Trigger When this bit is set, the timestamp interrupt is generated when the System Time becomes greater than the value written in the Target Time register. This bit is reset after the Timestamp Trigger Interrupt is generated. Access restriction applies. Setting 1 sets. Self-cleared. Setting 0 has no effect. Values:
|
3 | TSUPDT | R/W | Update Timestamp When this bit is set, the system time is updated (added or subtracted) with the value specified in MAC_System_Time_Seconds_Update and MAC_System_Time_Nanoseconds_Update registers. This bit should be zero before updating it. This bit is reset when the update is complete in hardware. The Timestamp Higher Word register (if enabled while configuring the IP) is not updated. When Media Clock Generation and Recovery is configured (DWC_EQOS_FLEXI_PPS_OUT_EN) and enabled MAC_Presn_Time_Updt should also be updated before setting this field. Access restriction applies. Setting 1 sets. Self-cleared. Setting 0 has no effect. Values:
|
2 | TSINIT | R/W | Initialize Timestamp When this bit is set, the system time is initialized (overwritten) with the value specified in the MAC_System_Time_Seconds_Update and MAC_System_Time_Nanoseconds_Update registers. This bit should be zero before it is updated. This bit is reset when the initialization is complete. The Timestamp Higher Word register (if enabled while configuration the IP) can only be initialized. When Media Clock Generation and Recovery is configured (DWC_EQOS_FLEXI_PPS_OUT_EN) and enabled MAC_Presn_Time_Updt should also be updated before setting this field. Access restriction applies. Setting 1 sets. Self-cleared. Setting 0 has no effect. Values:
|
1 | TSCFUPDT | R/W | Fine or Coarse Timestamp Update When this bit is set, the Fine method is used to update system timestamp. When this bit is reset, Coarse method is used to update the system timestamp. Values:
|
0 | TSENA | R/W | Enable Timestamp When this bit is set, the timestamp is added for Transmit and Receive packets. When disabled, timestamp is not added for transmit and receive packets and the Timestamp Generator is also suspended. You need to initialize the Timestamp (system time) after enabling this mode. On the Receive side, the MAC processes the 1588 packets only if this bit is set. Values:
|
MAC_Sub_Second_Increment
- Description: This register specifies the value to be added to the internal system time register every cycle of clk_ptp_ref_i clock.
- Size: 32 bits
- Offset: 0xb04
Bits | Name | Memory Access | Description |
---|---|---|---|
31:24 | Reserved_31_24 | R | Reserved |
23:16 | SSINC | R/W | Sub-second Increment Value The value programmed in this field is accumulated every clock cycle (of clk_ptp_i) with the contents of the sub-second register. For example, when the PTP clock is 50 MHz (period is 20 ns), you should program 20 (0x14) when the System Time Nanoseconds register has an accuracy of 1 ns [Bit 9 (TSCTRLSSR) is set in MAC_Timestamp_Control]. When TSCTRLSSR is clear, the Nanoseconds register has a resolution of ~0.465 ns. In this case, you should program a value of 43 (0x2B) which is derived by 20 ns/0.465. |
15:8 | SNSINC | R/W | Sub-nanosecond Increment Value This field contains the sub-nanosecond increment value, represented in nanoseconds multiplied by 2^8. This value is accumulated with the sub-nanoseconds field of the subsecond register. For example, when TSCTRLSSR field in the MAC_Timestamp_Control register is set. and if the required increment is 5.3ns, then SSINC should be 0x05 and SNSINC should be 0x4C. |
7:0 | Reserved_7_0 | R | Reserved |
MAC_System_Time_Seconds
- Description: The System Time Seconds register, along with System Time Nanoseconds register, indicates the current value of the system time maintained by the MAC. Though it is updated on a continuous basis, there is some delay from the actual time because of clock domain transfer latencies (from clk_ptp_ref_i to CSR clock).
- Size: 32 bits
- Offset: 0xb08
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | TSS | R | Timestamp Second The value in this field indicates the current value in seconds of the System Time maintained by the MAC. |
MAC_System_Time_Nanoseconds
- Description: The System Time Nanoseconds register, along with System Time Seconds register, indi- cates the current value of the system time maintained by the MAC.
- Size: 32 bits
- Offset: 0xb0c
Bits | Name | Memory Access | Description |
---|---|---|---|
31 | Reserved_31 | R | Reserved |
30:0 | TSSS | R | Timestamp Sub Seconds The value in this field has the sub-second representation of time, with an accuracy of 0.46 ns. When Bit 9 is set in MAC_Timestamp_Control, each bit represents 1 ns. The maximum value is 0x3B9A_C9FF after which it rolls-over to zero. |
MAC_System_Time_Seconds_Update
- Description: The System Time Seconds Update register, along with the System Time Nanoseconds Update register, initializes or updates the system time maintained by the MAC. You must write both registers before setting the TSINIT or TSUPDT bits in DWC_eqos_top_map/EQOS_MAC/MAC_- Timestamp_Control.
- Size: 32 bits
- Offset: 0xb10
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | TSS | R/W | Timestamp Seconds The value in this field is the seconds part of the update. When ADDSUB is reset, this field must be programmed with the seconds part of the updated value. When ADDSUB is set, this field must be programmed with the complement of the seconds part of the updated value. For example, to subtract 2.000000001 seconds from the system time, the TSS field in the MAC_Timestamp_Seconds_Update register must be 0xFFFF_FFFE (that is, 2^32 - 2). |
MAC_System_Time_Nanoseconds_Update
- Description: MAC System Time Nanoseconds Update register.
- Size: 32 bits
- Offset: 0xb14
Bits | Name | Memory Access | Description |
---|---|---|---|
31 | ADDSUB | R/W | Add or Subtract Time When this bit is set, the time value is subtracted with the contents of the update register. When this bit is reset, the time value is added with the contents of the update register. Values:
|
30:0 | TSSS | R/W | Timestamp Sub Seconds The value in this field is the sub-seconds part of the update.
For example, to subtract 2.000000001 seconds from the system time, then the TSSS field in the MAC_Timestamp_Nanoseconds_Update register must be 0x7FFF_FFFF (that is, 2^31 - 1), when TSCTRLSSR bit in MAC_Timestamp_Control is reset and 0x3B9A_C9FF (that is, 10^9 - 1), when TSCTRLSSR bit in MAC_Timestamp_Control is set. |
MAC_Timestamp_Addend
- Description: Timestamp Addend register. This register value is used only when the system time is configured for Fine Update mode (TSCFUPDT bit in the MAC_Timestamp_Control register). The content of this register is added to a 32-bit accumulator in every clock cycle (of clk_ptp_ref_i) and the system time is updated when the accumulator overflows.
- Size: 32 bits
- Offset: 0xb18
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | TSAR | R/W | Timestamp Addend Register This field indicates the 32-bit time value to be added to the Accumulator register to achieve time synchronization. |
MAC_System_Time_Higher_Word_Seconds
- Description: System Time - Higher Word Seconds register.
- Size: 32 bits
- Offset: 0xb1c
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
15:0 | TSHWR | *Varies | Timestamp Higher Word Register This field contains the most-significant 16-bits of timestamp seconds value. This register is optional. You can add this register by selecting the Add IEEE 1588 Higher Word Register option. This register is directly written to initialize the value and it is incremented when there is an overflow from 32-bits of the System Time Seconds register. Access restriction applies. Updated based on the event. Setting 1 sets. Setting 0 clears. |
MAC_Timestamp_Status
- Description: Timestamp Status register. All bits except Bits[27:25] gets cleared when the application reads this register.
- Size: 32 bits
- Offset: 0xb20
Bits | Name | Memory Access | Description |
---|---|---|---|
31:30 | Reserved_31_30 | R | Reserved |
29:25 | ATSNS | R | Number of Auxiliary Timestamp Snapshots This field indicates the number of Snapshots available in the FIFO. A value equal to the selected depth of FIFO (4, 8, or 16) indicates that the Auxiliary Snapshot FIFO is full. These bits are cleared (to 00000) when the Auxiliary snapshot FIFO clear bit is set. This bit is valid only if the Add IEEE 1588 Auxiliary Snapshot option is selected. |
24 | ATSSTM | R |
Auxiliary Timestamp Snapshot Trigger Missed This bit is set when the Auxiliary timestamp snapshot FIFO is full and external trigger was set. This indicates that the latest snapshot is not stored in the FIFO. This bit is valid only if the Add IEEE 1588 Auxiliary Snapshot option is selected. Values:
|
23:20 | Reserved_23_20 | R | Reserved |
19:16 | ATSSTN | R | Auxiliary Timestamp Snapshot Trigger Identifier These bits identify the Auxiliary trigger inputs for which the timestamp available in the Auxiliary Snapshot Register is applicable. When more than one bit is set at the same time, it means that corresponding auxiliary triggers were sampled at the same clock. These bits are applicable only if the number of Auxiliary snapshots is more than one. One bit is assigned for each trigger as shown in the following list:
The software can read this register to find the triggers that are set when the timestamp is taken. |
15 | TXTSSIS | R | Tx Timestamp Status Interrupt Status In non-EQOS_CORE configurations when drop transmit status is enabled in MTL, this bit is set when the captured transmit timestamp is updated in the MAC_Tx_Timestamp_Status_Nanoseconds and MAC_Tx_Timestamp_Status_Seconds registers. When PTP offload feature is enabled, this bit is set when the captured transmit timestamp is updated in the MAC_Tx_Timestamp_Status_Nanoseconds and MAC_Tx_Timestamp_Status_Seconds registers, for PTO generated Delay Request and Pdelay request packets. This bit is cleared when the MAC_Tx_Timestamp_Status_Seconds register is read (or write to MAC_Tx_Timestamp_Status_Seconds register when RCWE bit of MAC_CSR_SW_Ctrl register is set). Values:
|
14:10 | Reserved_14_10 | R | Reserved |
9 | TSTRGTERR3 | R | Timestamp Target Time Error This bit is set when the latest target time programmed in the MAC_PPS3_Target_Time_Seconds and MAC_PPS3_Target_Time_Nanoseconds registers elapses. This bit is cleared when the application reads this bit. Access restriction applies. Clears on read (or this bit is written to 1 when RCWE bit in MAC_CSR_SW_Ctrl register is set). Self-set to 1 on internal event. Values:
|
8 | TSTARGT3 | R | Timestamp Target Time Reached for Target Time PPS3 When this bit is set and MCGREN3 of MAC_PPS_Control register is reset, it indicates that the value of system time is greater than or equal to the value specified in the MAC_PPS3_Target_Time_Seconds and MAC_PPS3_Target_Time_Nanoseconds registers. When this bit is set and MCGREN3 of MAC_PPS_Control register is set, it indicates that mcgr_dma_req_o[3] is asserted. Access restriction applies. Clears on read (or this bit is written to 1 when RCWE bit in MAC_CSR_SW_Ctrl register is set). Self-set to 1 on internal event. Values:
|
7 | TSTRGTERR2 | R | Timestamp Target Time Error This bit is set when the latest target time programmed in the MAC_PPS2_Target_Time_Seconds and MAC_PPS2_Target_Time_Nanoseconds registers elapses. This bit is cleared when the application reads this bit. Access restriction applies. Clears on read (or this bit is written to 1 when RCWE bit in MAC_CSR_SW_Ctrl register is set). Self-set to 1 on internal event. Values:
|
6 | TSTARGT2 | R | Timestamp Target Time Reached for Target Time PPS2 When this bit is set and MCGREN2 of MAC_PPS_Control register is reset, it indicates that the value of system time is greater than or equal to the value specified in the MAC_PPS2_Target_Time_Seconds and MAC_PPS2_Target_Time_Nanoseconds registers. When this bit is set and MCGREN2 of MAC_PPS_Control register is set, it indicates that mcgr_dma_req_o[2] is asserted. Access restriction applies. Clears on read (or this bit is written to 1 when RCWE bit in MAC_CSR_SW_Ctrl register is set). Self-set to 1 on internal event. Values:
|
5 | TSTRGTERR1 | R | Timestamp Target Time Error This bit is set when the latest target time programmed in the MAC_PPS1_Target_Time_Seconds and MAC_PPS1_Target_Time_Nanoseconds registers elapses. This bit is cleared when the application reads this bit. Access restriction applies. Clears on read (or this bit is written to 1 when RCWE bit in MAC_CSR_SW_Ctrl register is set). Self-set to 1 on internal event. Values:
|
4 | TSTARGT1 | R | Timestamp Target Time Reached for Target Time PPS1 When this bit is set and MCGREN1 of MAC_PPS_Control register is reset, it indicates that the value of system time is greater than or equal to the value specified in the MAC_PPS1_Target_Time_Seconds and MAC_PPS1_Target_Time_Nanoseconds registers. When this bit is set and MCGREN1 of MAC_PPS_Control register is set, it indicates that mcgr_dma_req_o[1] is asserted. Access restriction applies. Clears on read (or this bit is written to 1 when RCWE bit in MAC_CSR_SW_Ctrl register is set). Self-set to 1 on internal event. Values:
|
3 | TSTRGTERR0 | R | Timestamp Target Time Error This bit is set when the latest target time programmed in the MAC_PPS0_Target_Time_Seconds and MAC_PPS0_Target_Time_Nanoseconds registers elapses. This bit is cleared when the application reads this bit. Access restriction applies. Clears on read (or this bit is written to 1 when RCWE bit in MAC_CSR_SW_Ctrl register is set). Self-set to 1 on internal event. Values:
|
2 | AUXTSTRIG | R | Auxiliary Timestamp Trigger Snapshot This bit is set high when the auxiliary snapshot is written to the FIFO. This bit is valid only if the Add IEEE 1588 Auxiliary Snapshot option is selected. Access restriction applies. Clears on read (or this bit is written to 1 when RCWE bit in MAC_CSR_SW_Ctrl register is set). Self-set to 1 on internal event. Values:
|
1 | TSTARGT0 | R | Timestamp Target Time Reached When this bit is set and MCGREN0 of MAC_PPS_Control register is reset, it indicates that the value of system time is greater than or equal to the value specified in the MAC_PPS0_Target_Time_Seconds and MAC_PPS0_Target_Time_Nanoseconds registers. When this bit is set and MCGREN0 of MAC_PPS_Control register is set, it indicates that mcgr_dma_req_o[0] is asserted. Access restriction applies. Clears on read (or this bit is written to 1 when RCWE bit in MAC_CSR_SW_Ctrl register is set). Self-set to 1 on internal event. Values:
|
0 | TSSOVF | R | Timestamp Seconds Overflow When this bit is set, it indicates that the seconds value of the timestamp (when supporting version 2 format) has overflowed beyond 32'hFFFF_FFFF. Access restriction applies. Clears on read (or this bit is written to 1 when RCWE bit in MAC_CSR_SW_Ctrl register is set). Self-set to 1 on internal event. Values:
|
MAC_Tx_Timestamp_Status_Nanoseconds
- Description: This register contains the nanosecond part of timestamp captured for Transmit packets when Tx status is disabled.
- Size: 32 bits
- Offset: 0xb30
- Exists: ((DWC_EQOS_TIME_STAMPING&&!DWC_EQOS_CORE)||DWC_EQOS_PTO_EN)
Bits | Name | Memory Access | Description |
---|---|---|---|
31 | TXTSSMIS | R | Transmit Timestamp Status Missed When this bit is set, it indicates one of the following:
Access restriction applies. Clears on read. Self-set to 1 on internal event. Values:
|
30:0 | TXTSSLO | R | Transmit Timestamp Status Low This field contains the 31bits of the Nanoseconds field of the Transmit packet's captured timestamp. |
MAC_Tx_Timestamp_Status_Seconds
- Description: The register contains the higher 32 bits of the timestamp (in seconds) captured when a PTP packet is transmitted.
- Size: 32 bits
- Offset: 0xb34
- Exists: ((DWC_EQOS_TIME_STAMPING&&!DWC_EQOS_CORE)||DWC_EQOS_PTO_EN)
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | TXTSSHI | R | Transmit Timestamp Status High This field contains the lower32 bits of the Seconds field of Transmit packet's captured timestamp. |
MAC_Auxiliary_Control
- Description: The Auxiliary Timestamp Control register controls the Auxiliary Timestamp snapshot.
- Size: 32 bits
- Offset: 0xb40
Bits | Name | Memory Access | Description |
---|---|---|---|
31:8 | Reserved_31_8 | R | Reserved |
7 | ATSEN3 | R/W | Auxiliary Snapshot 3 Enabled This bit controls the capturing of Auxiliary Snapshot Trigger 3. When this bit is set, the auxiliary snapshot of the event on ptp_aux_trig_i[3] input is enabled. When this bit is reset, the events on this input are ignored. Values:
|
6 | ATSEN2 | R/W | Auxiliary Snapshot 2 Enabled This bit controls the capturing of Auxiliary Snapshot Trigger 2. When this bit is set, the auxiliary snapshot of the event on ptp_aux_trig_i[2] input is enabled. When this bit is reset, the events on this input are ignored. Values:
|
5 | ATSEN1 | R/W | Auxiliary Snapshot 1 Enabled This bit controls the capturing of Auxiliary Snapshot Trigger 1. When this bit is set, the auxiliary snapshot of the event on ptp_aux_trig_i[1] input is enabled. When this bit is reset, the events on this input are ignored. Values:
|
4 | ATSEN0 | R/W | Auxiliary Snapshot 0 Enabled This bit controls the capturing of Auxiliary Snapshot Trigger 0. When this bit is set, the auxiliary snapshot of the event on ptp_aux_trig_i[0] input is enabled. When this bit is reset, the events on this input are ignored. Values:
|
3:1 | Reserved_3_1 | R | Reserved |
0 | ATSFC | R/W | Auxiliary Snapshot FIFO Clear When set, this bit resets the pointers of the Auxiliary Snapshot FIFO. This bit is cleared when the pointers are reset and the FIFO is empty. When this bit is high, the auxiliary snapshots are stored in the FIFO. Access restriction applies. Setting 1 sets. Self-cleared. Setting 0 has no effect. Values:
|
MAC_Auxiliary_Timestamp_Nanoseconds
- Description: The Auxiliary Timestamp Nanoseconds register, along with MAC_Auxiliary_Timestamp_Seconds, gives the 64-bit timestamp stored as auxiliary snapshot. These two registers form the read port of a 64-bit wide FIFO with a depth of 4, 8, or 16 as selected while configuring the IP. You can store multiple snapshots in this FIFO. Bits[29:25] in MAC_Timestamp_Status indicate the fill-level of the FIFO. The top of the FIFO is removed only when the last byte of MAC_Auxiliary_Time- stamp_Seconds register is read. In the little-endian mode, this means when Bits[31:24] are read and in big-endian mode, Bits[7:0] are read.
- Size: 32 bits
- Offset: 0xb48
Bits | Name | Memory Access | Description |
---|---|---|---|
31 | Reserved_31 | R | Reserved |
30:0 | AUXTSLO | R | Auxiliary Timestamp Contains the lower 31 bits (nanoseconds field) of the auxiliary timestamp. |
MAC_Auxiliary_Timestamp_Seconds
- Description: The Auxiliary Timestamp - Seconds register contains the lower 32 bits of the Seconds field of the auxiliary timestamp register.
- Size: 32 bits
- Offset: 0xb4c
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | AUXTSHI | R | Auxiliary Timestamp Contains the lower 32 bits of the Seconds field of the auxiliary timestamp. |
MAC_Timestamp_Ingress_Asym_Corr
- Description: The MAC Timestamp Ingress Asymmetry Correction register contains the Ingress Asymmetry Correction value to be used while updating correction field in PDelay_Resp PTP messages.
- Size: 32 bits
- Offset: 0xb50
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | OSTIAC | R/W | One-Step Timestamp Ingress Asymmetry Correction This field contains the ingress path asymmetry value to be added to correction Field of Pdelay_Resp PTP packet. The programmed value should be in units of nanoseconds and multiplied by 2^16. For example, 2.5 ns is represented as 0x00028000. The value can also be negative, which is represented in 2's complement form with bit 31 representing the sign bit. |
MAC_Timestamp_Egress_Asym_Corr
- Description: The MAC Timestamp Egress Asymmetry Correction register contains the Egress Asym- metry Correction value to be used while updating the correction field in PDelay_Req PTP messages.
- Size: 32 bits
- Offset: 0xb54
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | OSTEAC | R/W | One-Step Timestamp Egress Asymmetry Correction This field contains the egress path asymmetry value to be subtracted from correction Field of Pdelay_Resp PTP packet. The programmed value must be the negated value in units of nanoseconds multiplied by 2^16. For example, if the required correction is +2.5 ns,the programmed value must be 0xFFFD_8000, which is the 2's complement of 0x0002_8000(2.5 * 216). Similarly, if the required correction is -3.3 ns, the programmed value is 0x0003_4CCC (3.3 * 216). |
MAC_Timestamp_Ingress_Corr_Nanosecond
- Description: This register contains the correction value in nanoseconds to be used with the captured timestamp value in the ingress path.
- Size: 32 bits
- Offset: 0xb58
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | TSIC | R/W | Timestamp Ingress Correction This field contains the ingress path correction value as defined by the Ingress Correction expression. |
MAC_Timestamp_Egress_Corr_Nanosecond
- Description: This register contains the correction value in nanoseconds to be used with the captured timestamp value in the egress path.
- Size: 32 bits
- Offset: 0xb5c
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | TSEC | R/W | Timestamp Egress Correction This field contains the nanoseconds part of the egress path correction value as defined by the Egress Correction expression. |
MAC_Timestamp_Ingress_Corr_Subnanosec
- Description: This register contains the sub-nanosecond part of the correction value to be used with the captured timestamp value, for ingress direction.
- Size: 32 bits
- Offset: 0xb60
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
15:8 | TSICSNS | R/W | Timestamp Ingress Correction, sub-nanoseconds This field contains the sub-nanoseconds part of the ingress path correction value as defined by the "Ingress Correction" expression. |
7:0 | Reserved_7_0 | R | Reserved |
MAC_Timestamp_Egress_Corr_Subnanosec
- Description: This register contains the sub-nanosecond part of the correction value to be used with the captured timestamp value, for egress direction.
- Size: 32 bits
- Offset: 0xb64
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
15:8 | TSECSNS | R/W | Timestamp Egress Correction, Sub-nanoseconds This field contains the sub-nanoseconds part of the egress path correction value as defined by the "Egress Correction" expression. |
7:0 | Reserved_7_0 | R | Reserved |
MAC_Timestamp_Ingress_Latency
- Description: This register holds the Ingress MAC latency.
- Size: 32 bits
- Offset: 0xb68
Bits | Name | Memory Access | Description |
---|---|---|---|
31:28 | Reserved_31_28 | R | Reserved |
27:16 | ITLNS | R | Ingress Timestamp Latency, in Sub-nanoseconds This register holds the average latency in sub-nanoseconds between the input ports (phy_rxd_i) of MAC and the actual point (GMII/MII) where the ingress timestamp is taken. Ingress correction value is computed as described in the section, "Ingress Correction". |
15:8 | ITLSNS | R | Ingress Timestamp Latency, in Nanoseconds This register holds the average latency in nanoseconds between the input ports (phy_rxd_i) of MAC and the actual point (GMII/MII) where the ingress timestamp is taken. Ingress correction value is computed as described in the section, "Ingress Correction". |
7:0 | Reserved_7_0 | R | Reserved |
MAC_Timestamp_Egress_Latency
- Description: This register holds the Egress MAC latency.
- Size: 32 bits
- Offset: 0xb6c
Bits | Name | Memory Access | Description |
---|---|---|---|
31:28 | Reserved_31_28 | R | Reserved |
27:16 | ETLNS | R | Egress Timestamp Latency, in Nanoseconds This register holds the average latency in nanoseconds between the actual point (GMII/MII) where the egress timestamp is taken and the output ports (phy_txd_o) of the MAC. Ingress correction value is computed as described in the section, "Ingress Correction". |
15:8 | ETLSNS | R | Egress Timestamp Latency, in Sub-nanoseconds This register holds the average latency in sub-nanoseconds between the actual point (GMII/MII) where the egress timestamp is taken and the output ports (phy_txd_o) of the MAC. Ingress correction value is computed as described in the section "Ingress Correction". |
7:0 | Reserved_7_0 | R | Reserved |
MAC_PPS_Control
- Description: PPS Control register.
Bits[30:24] of this register are valid only when four Flexible PPS outputs are selected. Bits[22:16] are valid only when three or more Flexible PPS outputs are selected. Bits[14:8] are valid only when two or more Flexible PPS outputs are selected. Bits[6:4] are valid only when Flexible PPS feature is selected.
- Size: 32 bits
- Offset: 0xb70
- Exists: (DWC_EQOS_TIME_STAMPING&&((DWC_EQOS_SYSTIME_SOURCE!=1)||DWC_EQOS_FLEXI_PPS_OUT_EN))
Bits | Name | Memory Access | Description |
---|---|---|---|
31 | MCGREN3 | R/W | MCGR Mode Enable for PPS3 Output This field enables the 3rd PPS instance to operate in PPS or MCGR mode.
|
30:29 | TRGTMODSEL3 | R/W | Target Time Register Mode for PPS3 Output This field indicates the Target Time registers (MAC_PPS3_Target_Time_Seconds and MAC_PPS3_Target_Time_Nanoseconds)mode for PPS3 output signal. Values:
|
28 | TIMESEL | R/W | Time Select When this bit is set, 64 bit PTP time is used to capture time at MCGR trigger[0] input When this bit is reset, presentation time is used to capture time at trigger input, maintaining backward compatibility |
27:24 | PPSCMD3 | R/W | Flexible PPS3 Output Control This field controls the flexible PPS3 output (ptp_pps_o[3]) signal. This field is similar to the PPSCMD0[2:0] field.
Access restriction applies. Setting 1 sets. Self-cleared. Setting 0 has no effect. |
23 | MCGREN2 | R/W | MCGR Mode Enable for PPS2 Output This field enables the 2nd PPS instance to operate in PPS or MCGR mode.
Values:
|
22:21 | TRGTMODSEL2 | R/W | Target Time Register Mode for PPS2 Output This field indicates the Target Time registers (MAC_PPS2_Target_Time_Seconds and MAC_PPS2_Target_Time_Nanoseconds)mode for PPS2 output signal. Values:
|
20 | Reserved_20 | R | Reserved |
19:16 | PPSCMD2 | R/W | Flexible PPS2 Output Control This field controls the flexible PPS2 output (ptp_pps_o[2]) signal. This field is similar to the PPSCMD0 field.
Access restriction applies. Setting 1 sets. Self-cleared. Setting 0 has no effect. |
15 | MCGREN1 | R/W | MCGR Mode Enabled for PPS1 Output This field enables the 1st PPS instance to operate in PPS or MCGR mode.
Values:
|
14:13 | TRGTMODSEL1 | R/W | Target Time Register Mode for PPS1 Output This field indicates the Target Time registers (MAC_PPS1_Target_Time_Seconds and MAC_PPS1_Target_Time_Nanoseconds) mode for PPS1 output signal. Values:
|
12 | Reserved_12 | R | Reserved |
11:8 | PPSCMD1 | R/W | Flexible PPS1 Output Control This field controls the flexible PPS1 output (ptp_pps_o[1]) signal. This field is similar to the PPSCMD0 field.
Access restriction applies. Setting 1 sets. Self-cleared. Setting 0 has no effect. |
7 | MCGREN0 | R/W | MCGR Mode Enabled for PPS0 Output This field enables the 0th PPS instance to operate in PPS or MCGR mode. When set it operates in MCGR mode and on reset it operates in PPS mode. Values:
|
6:5 | TRGTMODSEL0 | R/W | Target Time Register Mode for PPS0 Output This field indicates the Target Time registers (MAC_PPS0_Target_Time_Seconds and MAC_PPS0_Target_Time_Nanoseconds) mode for PPS0 output signal: Values:
|
4 | PPSEN0 | R/W | Flexible PPS Output Mode Enabled When this bit is:
Values:
|
3:0 | PPSCTRL_PPSCMD | R/W | PPS Output Frequency Control This field controls the frequency of the PPS0 output (ptp_pps_o[0]) signal. The default value of PPSCTRL is 0000, and the PPS output is 1 pulse (of width clk_ptp_i) every second. For other values of PPSCTRL, the PPS output becomes a generated clock of following frequencies:
Note: In the binary rollover mode,
the PPS output (ptp_pps_o) has a duty cycle of 50 percent
with these frequencies. In the digital rollover mode, the
PPS output frequency is an average number. The actual
clock is of different frequency that gets synchronized
every second. For example:
This behavior is because of the non-linear toggling of bits in the digital rollover mode in the MAC_System_Time_Nanoseconds register. Programming these bits with anon-zero value instructs the MAC to initiate an event. When the command is transferred or synchronized to the PTP clock domain, these bits get cleared automatically. The software should ensure that these bits are programmed only when they are 'all-zero'. The following list describes the values of PPSCMD0:
This command generates single pulse rising at the start point defined in MAC_PPS0_Target_Time_Seconds and MAC_PPS0_Target_Time_Nanoseconds register and of a duration defined in the PPS0 Width Register.
This command generates the train of pulses rising at the start point defined in the Target Time Registers and of a duration defined in the PPS0 Width Register and repeated at interval defined in the PPS Interval Register. By default, the PPS pulse train is free-running unless stopped by the 'Stop Pulse train at time' or 'Stop Pulse Train immediately' commands.
This command cancels the START Single Pulse and START Pulse Train commands if the system time has not crossed the programmed start time.
This command stops the train of pulses initiated by the START Pulse Train command (PPSCMD = 0010) after the time programmed in the Target Time registers elapses.
This command immediately stops the train of pulses initiated by the START Pulse Train command (PPSCMD = 0010).
This command cancels the STOP pulse train at time command if the programmed stop time has not elapsed. The PPS pulse train becomes free-running on the successful execution of this command. 0111-1111: Reserved When MCGREN0 is 1, these bits are treated as Presentation time control bits. The following list describes the values of PPSCMD0:
0100-1000: Reserved
|
MAC_PTO_Control
- Description: This register controls the PTP Offload Engine operation. This register is available only when the Enable PTP Timestamp Offload feature is selected.
- Size: 32 bits
- Offset: 0xbc0
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
15:8 | DN | R/W | Domain Number This field indicates the domain Number in which the PTP node is operating. |
7 | PDRDIS | R/W | Disable Peer Delay Response Response Generation When this bit is set, the Peer Delay Response (Pdelay_Resp) response is not be generated for received Peer Delay Request (Pdelay_Req) request packet, as required by the programmed mode. Note: Setting this bit to 1
affects the normal PTP Offload operation and the time
synchronization. So, this bit must be set only if there is
problem with Pdelay_Resp generation in hardware and/or
Pdelay_Resp generation is handled by
software. Values:
|
6 | DRRDIS | R/W | Disable PTO Delay Request/Response Response Generation When this bit is set, the Delay Request and Delay response is not generated for received SYNC and Delay request packet respectively, as required by the programmed mode. Values:
|
5 | APDREQTRIG | R/W | Automatic PTP Pdelay_Req Message Trigger When this bit is set,one PTP Pdelay_Req message is transmitted. This bit is automatically cleared after the PTP Pdelay_Req message is transmitted. The application should set the APDREQEN bit for this operation. Access restriction applies. Setting 1 sets. Self-cleared. Setting 0 has no effect. Values:
|
4 | ASYNCTRIG | R/W | Automatic PTP SYNC Message Trigger When this bit is set,one PTP SYNC message is transmitted. This bit is automatically cleared after the PTP SYNC message is transmitted. The application should set the ASYNCEN bit for this operation. Access restriction applies. Setting 1 sets. Self-cleared. Setting 0 has no effect. Values:
|
3 | Reserved_3 | R | Reserved |
2 | APDREQEN | R/W | Automatic PTP Pdelay_Req Message Enabled When this bit is set,PTP Pdelay_Req message is generated periodically based on interval programmed or trigger from application, when the MAC is programmed to be in Peer-to-Peer Transparent mode. Values:
|
1 | ASYNCEN | R/W | Automatic PTP SYNC Message Enabled When this bit is set, PTP SYNC message is generated periodically based on interval programmed or trigger from application, when the MAC is programmed to be in Clock Master mode. Values:
|
0 | PTOEN | R/W | PTP Offload Enabled When this bit is set, the PTP Offload feature is enabled. Values:
|
MAC_Source_Port_Identity0
- Description: This register contains Bits[0:31] of the 80-bit Source Port Identity of the PTP node. This register is available only when the Enable PTP Timestamp Offload feature is selected.
- Size: 32 bits
- Offset: 0xbc4
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | SPI0 | R/W | Source Port Identity 0 This field indicates bits [0:31] of source Port Identity of PTP node. |
MAC_Source_Port_Identity1
- Description: This register contains Bits[63:32] of the 80-bit Source Port Identity of the PTP node. This register is available only when the Enable PTP Timestamp Offload feature is selected.
- Size: 32 bits
- Offset: 0xbc8
Bits | Name | Memory Access | Description |
---|---|---|---|
31:0 | SPI1 | R/W | Source Port Identity 1 This field indicates bits [63:32] of source Port Identity of PTP node. |
MAC_Source_Port_Identity2
- Description: This register contains Bits[79:64] of the 80-bit Source Port Identity of the PTP node. This register is available only when the Enable PTP Timestamp Offload feature is selected.
- Size: 32 bits
- Offset: 0xbcc
Bits | Name | Memory Access | Description |
---|---|---|---|
31:16 | Reserved_31_16 | R | Reserved |
15:0 | SPI2 | R/W | Source Port Identity 2 This field indicates bits [79:64] of source Port Identity of PTP node. |