11-02-2020 05:12 AM
I am trying to make the 100G CMAC RX design example to work on zcu111.
Connected the ref clock to USER_MGT_SI570 (156.25MHz) and the free running (init clock) to CLK_100 (100MHz).
I can not get the receiver up and running, the GT locks but then stat_rx_local_fault and stat_rx_internal_local_fault keep high.
I have tried to read statistics registers STAT_RX_BLOCK_LOCK_REG, STAT_RX_LANE_SYNC_ERR_REG, STAT_RX_LANE_SYNC_REG, STAT_RX_STATUS_REG, STAT_STATUS_REG1.
but I cannot get any meaningful information. All the values I read are 0x0C (defaulting to 0xfffff).
Could someone please provide some pointers?
11-03-2020 07:49 AM
Some ideas to try:
- Enable internal near end PMA loopback and/or external see if that allows link up
- Assert and de-assert gt_reset_all and then gt_rx_reset to see if this allows link up
11-03-2020 07:50 AM
Also be aware that some of the status registers are latching and require reading twice to get the latest status.
11-03-2020 08:07 AM
Thank you very much for your reply,
I have changed loopback modes, with not effect (even though that worked in the TX).
I have also persisted with reset, but I'll give it another go.
12-02-2020 02:02 PM
Yes this is correct:
gt_reset_all you mean gtwiz_reset_all_in and by gt_rx_reset gt_wiz_reset_rx_datapath_in
12-03-2020 12:58 AM
@ejanney Thank you very much for your reply,
I have been experiencing problems due to the following:
The stat_rx_synced is mostly FFFEE resulting from stat_rx_mf_len_err being 00011.
Would you be able to provide some feedback?