Forward error correction (FEC) is available on the PHYs of the MRMAC port. FEC can be enabled or disabled on a per-port basis.
The FEC_CONFIGURATION_REG needs to be configured appropriately for the FEC to work. For example, the Clause 49 flag should be set to 1 for modes which require Clause 49 transcoding (25GE, 50GE, Fibre Channel) and set to 0 for modes which require Clause 82 transcoding (100GE). CTL_TX_FEC_FOUR_LANE_PMD needs to set to 1 for 100CAUI-4 with RSFEC (it should be set to 0 100GAUI-2 and other modes).
The various FEC operating modes are selected through the ctl_fec_mode
field of the FEC_CONFIGURATION_REG configuration
register. A change in the FEC_CONFIGURATION_REG of the port requires a reset being driven to
that port after configuration is complete.
MRMAC Port | Operating Rate | ctl_fec_mode_<N>[3:0] | Description |
---|---|---|---|
0 | All rates | 'b0000 | FEC Disabled |
100GE | 'b1000 | IEEE 802.3 RS(528,514) FEC | |
'b1010 | IEEE P802.3cd/D3.5 CL91 RS(544,514) FEC | ||
'b1011 | ITU-T FlexEO RS(544,514) FEC | ||
50GE | 'b0100 | 25G/50G Ethernet Consortium RS(528,517) FEC | |
'b0101 | IEEE P802.3cd/D3.5 CL134 RS(544,514) FEC | ||
'b1111 | IEEE 802.3 CL74 FEC | ||
40GE | 'b1101 | IEEE 802.3 CL74 FEC | |
25GE | 'b0010 | 25G/50G Ethernet Consortium RS(528,514) FEC | |
'b0011 | IEEE 802.3 CL108 RS(528,514) FEC | ||
'b1110 | IEEE 802.3 CL74 FEC | ||
10GE | 'b1100 | IEEE 802.3 CL74 FEC | |
32GFEC | 'b0001 | 32GFEC (Valid only for Flex Interface) | |
1 | All rates | 'b0000 | FEC Disabled |
25GE | 'b0010 | 25G/50G Ethernet Consortium RS(528,514) FEC | |
'b0011 | IEEE 802.3 CL108 RS(528,514) FEC | ||
'b1110 | IEEE 802.3 CL74 FEC | ||
10GE | 'b1100 | IEEE 802.3 CL74 FEC | |
32GFEC | 'b0001 | 32GFEC (Valid only for Flex Interface) | |
2 | All rates | 'b0000 | FEC Disabled |
50GE | 'b0100 | 25G/50G Ethernet Consortium RS(528,514) FEC | |
'b0101 | IEEE P802.3cd/D3.5 CL134 RS(544,514) FEC | ||
'b1111 | IEEE CL74 25/50GE Ethernet Consortium | ||
25GE | 'b0010 | 25G/50G Ethernet Consortium RS(528,514) FEC | |
'b0011 | IEEE 802.3 CL108 RS(528,514) FEC | ||
'b1110 | IEEE 802.3 CL74 FEC | ||
10GE | 'b1100 | IEEE 802.3 CL74 FEC | |
32GFEC | 'b0001 | 32GFEC (Valid only for Flex Interface) | |
3 | All rates | 'b0000 | FEC Disabled |
25GE | 'b0010 | 25G/50G Ethernet Consortium RS(528,514) FEC | |
'b0011 | IEEE 802.3 CL108 RS(528,514) FEC | ||
'b1110 | IEEE 802.3 CL74 FEC | ||
10GE | 'b1100 | IEEE 802.3 CL74 FEC | |
32GFEC | 'b0001 | 32GFEC (Valid only for Flex Interface) |