37.8.2 GMAC Network Configuration Register

Name: GMAC_NCFGR
Offset: 0x004
Reset: 0x00080000
Property: Read/Write

Bit 3130292827262524 
  IRXERRXBPIPGSEN IRXFCSEFRHDRXCOEN 
Access R/WR/WR/WR/WR/WR/W 
Reset 000000 
Bit 2322212019181716 
 DCPFDBW[1:0]CLK[2:0]RFCSLFERD 
Access R/WR/WR/WR/WR/WR/WR/WR/W 
Reset 00001000 
Bit 15141312111098 
 RXBUFO[1:0]PENRTY GBE MAXFS 
Access R/WR/WR/WR/WR/WR/W 
Reset 000000 
Bit 76543210 
 UNIHENMTIHENNBCCAFJFRAMEDNVLANFDSPD 
Access R/WR/WR/WR/WR/WR/WR/WR/W 
Reset 00000000 

Bit 30 – IRXER Ignore IPG GRXER

When this bit is written to '1', the Receive Error signal (GRXER) has no effect on the GMAC operation when Receive Data Valid signal (GRXDV) is low.

Note: Write this bit to '1' when using the RMGII wrapper in half-duplex mode.

Bit 29 – RXBP Receive Bad Preamble

When written to '1', frames with non-standard preamble are not rejected.

Bit 28 – IPGSEN IP Stretch Enable

Writing a '1' to this bit allows the transmit IPG to increase above 96 bit times, depending on the previous frame length using the IPG Stretch Register.

Bit 26 – IRXFCS Ignore RX FCS

For normal operation this bit must be written to zero.

When this bit is written to '1', frames with FCS/CRC errors will not be rejected. FCS error statistics will still be collected for frames with bad FCS, and FCS status will be recorded in the DMA descriptor of the frame.

Bit 25 – EFRHD Enable Frames Received in half-duplex

Writing a '1' to this bit enables frames to be received in half-duplex mode while transmitting.

Bit 24 – RXCOEN Receive Checksum Offload Enable

Writing a '1' to this bit enables the receive checksum engine, and frames with bad IP, TCP or UDP checksums are discarded.

Bit 23 – DCPF Disable Copy of Pause Frames

Writing a '1' to this bit prevents valid pause frames from being copied to memory. Pause frames are not copied regardless of the state of the Copy All Frames (CAF) bit, whether a hash match is found or whether a type ID match is identified.

If a destination address match is found, the pause frame will be copied to memory. Note that valid pause frames received will still increment pause statistics and pause the transmission of frames, as required.

Bits 22:21 – DBW[1:0] Data Bus Width

Should always be written to '0'.The default value for this register is 64 bits. Should always be written to ‘1’.
ValueNameDescription
0 DBW32

32-bit data bus width

1 DBW64

64-bit data bus width

Bits 20:18 – CLK[2:0] MDC Clock Division

These bits must be set according to MCK speed, and determine the number MCK will be divided by to generate Management Data Clock (MDC). For conformance with the 802.3 specification, MDC must not exceed 2.5MHz.

Note: MDC is only active during MDIO read and write operations.
ValueNameDescription
0 MCK_8

MCK divided by 8 (MCK up to 20MHz)

1 MCK_16

MCK divided by 16 (MCK up to 40MHz)

2 MCK_32

MCK divided by 32 (MCK up to 80MHz)

3 MCK_48

MCK divided by 48 (MCK up to 120MHz)

4 MCK_64

MCK divided by 64 (MCK up to 160MHz)

5 MCK_96

MCK divided by 96 (MCK up to 240MHz)

Bit 17 – RFCS Remove FCS

Writing this bit to '1' will cause received frames to be written to memory without their frame check sequence (last 4 bytes). The indicated frame length will be reduced by four bytes in this mode.

Bit 16 – LFERD Length Field Error Frame Discard

Writing a '1' to this bit discards frames with a measured length shorter than the extracted length field (as indicated by bytes 13 and 14 in a non-VLAN tagged frame). This only applies to frames with a length field less than 0x0600.

Bits 15:14 – RXBUFO[1:0] Receive Buffer Offset

These bits determine the number of bytes by which the received data is offset from the start of the receive buffer.

Bit 13 – PEN Pause Enable

When written to '1', transmission will pause if a non-zero 802.3 classic pause frame is received and PFC has not been negotiated.

Bit 12 – RTY Retry Test

This bit must be written to '0' for normal operation.

When writing a '1' to this bit, the back-off between collisions will always be one slot time. This setting helps testing the too many retries condition. This setting is also useful for pause frame tests by reducing the pause counter's decrement time from "512 bit times" to "every GRXCK cycle".

Bit 10 – GBE Gigabit Mode Enable

Writing a '1' configures the GMAC for 1000 Mbps operation.

ValueDescription
0 10/100 operation using MII interface.
1 Gigabit operation using GMII interface.

Bit 8 – MAXFS 1536 Maximum Frame Size

Writing a '1' to this bit increases the maximum accepted frame size to 1536 bytes in length. When written to '0', any frame above 1518 bytes in length is rejected.

Bit 7 – UNIHEN Unicast Hash Enable

When writing a '1' to this bit, unicast frames will be accepted when the 6-bit hash function of the destination address points to a bit that is set in the Hash Register.

Writing a '0' to this bit disables unicast hashing.

Bit 6 – MTIHEN Multicast Hash Enable

When writing a '1' to this bit, multicast frames will be accepted when the 6-bit hash function of the destination address points to a bit that is set in the Hash Register.

Writing a '0' to this bit disables multicast hashing.

Bit 5 – NBC No Broadcast

Writing a '1' to this bit will reject frames addressed to the broadcast address 0xFFFFFFFFFFFF (all '1').

Writing a '0' to this bit allows broadcasting to 0xFFFFFFFFFFFF.

Bit 4 – CAF Copy All Frames

When writing a '1' to this bit, all valid frames will be accepted.

Bit 3 – JFRAME Jumbo Frame Size

Writing a '1' to this bit enables jumbo frames of up to 10240 bytes to be accepted. The default length is 10240 bytes.

Bit 2 – DNVLAN Discard Non-VLAN Frames

Writing a '1' to this bit allows only VLAN-tagged frames to pass to the address matching logic.

Writing a '0' to this bit allows both VLAN_tagged and untagged frames to pass to the address matching logic.

Bit 1 – FD Full Duplex

Writing a '1' enables full duplex operation, so the transmit block ignores the state of collision and carrier sense and allows receive while transmitting.

Writing a '0' disables full duplex operation.

Bit 0 – SPD Speed

Writing a '1' selects 100Mbps operation.

Writing a '0' to this bit selects 10Mbps operation.