Hi,
I’m attempting to bring up the AD9213 (https://www.analog.com/media/en/technical-documentation/data-sheets/AD9213.pdf) ADC on an FMC mezzanine card connected to a Xilinx Ultrascale+ VU13P FGPA (using the LogicCore JESD204 v7.2 IP). I’m initially trying to bring up the JESD204 interface into an alternating checkerboard test pattern from the ADC. The relevant parameters and corresponding register settings are shown below where applicable.
- L = 16 (# of lanes)
- AD9213 - JTX_SCR_L_CFG (0x0520) = 0x000F
- JESD204 Core – Lanes in Use (0x0028) = 0xFF
- F = 2 (octets per frame)
- AD9213 - JTX_F_CFG (0x0521) = 0x0001
- JESD204 Core – Octets per Frame (0x0020) = 0x0001
- K = 32 (frames per multiframe)
- AD9213 - JTX_K_CFG (0x0522) = 0x001F
- JESD204 Core – Frames per Multiframe (0x0024) = 0x001F
- N = 12 (converter resolution)
- AD9213 - JTX_CS_N_CFG (0x0524) = 0x000B
- N’ = 16 (bits per sample)
- AD9213 - JTX_SCV_NP_CFG = (0x0525) = 0x000F
- M = 1 (# of converters)
- AD9213 - JTX_M_CFG (0x0523) = 0x0000
- CS = 0 (# of control bits)
- AD9213 - JTX_CS_N_CFG (0x0524) = 0x000B
- Subclass: 0
- AD9213 - JTX_SCV_NP_CFG (0x0525) = 0x000F
- Scrambling: Disabled
- AD9213 - JTX_SCR_L_CFG (0x0520) = 0x000F
- JESD204 Core – Device Subclass (0x002C) = 0x0000
- Test Mode: Alternating checkerboard
- AD9213 - JTX_LINK_CTRL1 (0x0503) = 0x0014
- AD9213 - JTX_LINK_CTRL2 (0x0504) = 0x00C0
- AD9213 - JTX_LINK_CTRL3 (0x0505) = 0x0001
- AD9213 - JTX_LINK_CTRL4 (0x0506) = 0x0000
- AD9213 - JTX_LINK_CTRL5 (0x0507) = 0x0000
- JESD204 Core – Test Modes (0x0018) = 0x0000
- Physical Parameters:
- AD9213 Sampling clock = 10GHz
- JESD204 ref clock (1 per JESD204 core) = 312.5MHz
- JESD204 core clock = 312.5MHz
- Lane rate = 12.5 Gbps
- Clocking and JESD204 configuration matches guidelines here: https://www.xilinx.com/support/answers/71575.html
The issue is that the expected checkerboard data isn’t observed when probing the gt#_rxdata lanes. However, between runs (reprogramming, no power-cycle) the test pattern appears correct intermittently across different GTY4E transceiver lanes as shown below. Changing the test pattern to toggling 0/1 shows the same pattern so I know that at least some correct data is showing up.
For another data point, if I program the AD9213 to operate in normal mode (not test mode), I do see that the JESD204 core is reporting unexpected K-characters via the JESD204 Link Error Status registers.
************************JESD 0***********************
ILA Support(0x08) = 0x1
Scrambling(0x0C) = 0x0
SYSREF Handling(0x10) = 0x1
Test Modes(0x18) = 0x0
Link Error Status(0x1C) = 0x924924
Octets per Frame(0x20) = 0x1
Frames per Multiframe(0x24) = 0x1F
Lanes in Use(0x28) = 0xFF
Subclass Mode(0x2C) = 0x0
RX Buffer Delay(0x30) = 0x0
Error Reporting(0x34) = 0x1
Sync Status(0x38) = 0x1
Debug Status(0x3C) = 0xEEEEEEEE
Link Error Counts:0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
*********************************************************
************************JESD 1***********************
ILA Support(0x08) = 0x1
Scrambling(0x0C) = 0x0
SYSREF Handling(0x10) = 0x1
Test Modes(0x18) = 0x0
Link Error Status(0x1C) = 0x924924
Octets per Frame(0x20) = 0x1
Frames per Multiframe(0x24) = 0x1F
Lanes in Use(0x28) = 0xFF
Subclass Mode(0x2C) = 0x0
RX Buffer Delay(0x30) = 0x0
Error Reporting(0x34) = 0x1
Sync Status(0x38) = 0x1
Debug Status(0x3C) = 0xEEEEEEEE
Link Error Counts:0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
The two issues are seemingly related (scrambled checkerboard pattern and unexpected K-characters) but I haven’t yet root-caused. Here is what I’ve tried so far:
- Check eye-diagram with In-System IBERT.
- One observation here is that the eye appears closed intermittently across different lanes. Reconfiguring (no power-cycle) produces different results. Sometimes, all eye diagrams are open.
- Adjusting insertion loss settings on the JESD204 PHY seems to have no impact on test pattern or IBERT eye scans.
- Reducing the ADC sampling clock to 8GHz (JESD clocks at 250MHz, lane rate = 10Gbps) has no impact.
See attached for register dumps of the AD9213 and JESD204 core in both normal and test modes.
SPI_CONFIG_A (0x0000) = 0x0024 DEVICE_CONFIG (0x0002) = 0x00F0 CHIP_TYPE (0x0003) = 0x0003 CHIP_ID_LSB (0x0004) = 0x00E5 CHIP_ID_MSB (0x0005) = 0x0000 CHIP_SCRATCH (0x000A) = 0x00BC VENDOR_ID_LSB (0x000C) = 0x0056 VENDOR_ID_MSB (0x000D) = 0x0004 CHIP_GEN_CTRL (0x0026) = 0x0000 FD_CTRL (0x0100) = 0x0000 FD_UP_THRESH_LSB (0x0101) = 0x0000 FD_UP_THRESH_MSB (0x0102) = 0x0000 FD_LOW_THRESH_LSB (0x0103) = 0x0000 FD_LOW_THRESH_MSB (0x0104) = 0x0000 FD_DWELL_THRESH_LSB (0x0105) = 0x0000 FD_DWELL_THRESH_MSB (0x0106) = 0x0000 SMON_STATUS_0 (0x0120) = 0x0000 SMON_STATUS_1 (0x0121) = 0x0000 SMON_STATUS_2 (0x0122) = 0x0000 SMON_STATUS_FCNT (0x0123) = 0x0000 SMON_PERIOD_0 (0x0124) = 0x0000 SMON_PERIOD_1 (0x0125) = 0x0000 SMON_PERIOD_2 (0x0126) = 0x0000 SMON_STATUS_CTRL (0x0127) = 0x0000 SMON_SFRAMER (0x0128) = 0x0000 SMON_SYNC_CTRL (0x0129) = 0x0000 SMON_CLK_EN (0x0131) = 0x0000 CLK_CHG_REQ (0x0332) = 0x0000 PLL_CTRL (0x0500) = 0x0000 PLL_STATUS (0x0501) = 0x0080 JTX_LINK_CTRL1 (0x0503) = 0x0014 JTX_LINK_CTRL2 (0x0504) = 0x0000 JTX_LINK_CTRL3 (0x0505) = 0x0000 JTX_LINK_CTRL4 (0x0506) = 0x0000 JTX_LINK_CTRL5 (0x0507) = 0x0000 JTX_SYNC_CTRL (0x0508) = 0x0020 JTX_CS_BITS_CTRL (0x0509) = 0x0002 JTX_LMFC_OFFSET (0x050A) = 0x0000 JTX_DID_CFG (0x050E) = 0x0000 JTX_BID_CFG (0x050F) = 0x0000 JTX_LID0_CFG (0x0510) = 0x0000 JTX_LID1_CFG (0x0511) = 0x0001 JTX_LID2_CFG (0x0512) = 0x0002 JTX_LID3_CFG (0x0513) = 0x0003 JTX_LID4_CFG (0x0514) = 0x0004 JTX_LID5_CFG (0x0515) = 0x0005 JTX_LID6_CFG (0x0516) = 0x0006 JTX_LID7_CFG (0x0517) = 0x0007 JTX_LID8_CFG (0x0518) = 0x0008 JTX_LID9_CFG (0x0519) = 0x0009 JTX_LID10_CFG (0x051A) = 0x000A JTX_LID11_CFG (0x051B) = 0x000B JTX_LID12_CFG (0x051C) = 0x000C JTX_LID13_CFG (0x051D) = 0x000D JTX_LID14_CFG (0x051E) = 0x000E JTX_LID15_CFG (0x051F) = 0x000F JTX_SCR_L_CFG (0x0520) = 0x000F JTX_F_CFG (0x0521) = 0x0001 JTX_K_CFG (0x0522) = 0x001F JTX_M_CFG (0x0523) = 0x0000 JTX_CS_N_CFG (0x0524) = 0x000B JTX_SCV_NP_CFG (0x0525) = 0x000F JTX_JV_S_CFG (0x0526) = 0x002F JTX_HD_CF_CFG (0x0527) = 0x0000 JTX_CHKSUM0_CFG (0x052B) = 0x0078 JTX_CHKSUM1_CFG (0x052C) = 0x0079 JTX_CHKSUM2_CFG (0x052D) = 0x007A JTX_CHKSUM3_CFG (0x052E) = 0x007B JTX_CHKSUM4_CFG (0x052F) = 0x007C JTX_CHKSUM5_CFG (0x0530) = 0x007D JTX_CHKSUM6_CFG (0x0531) = 0x007E JTX_CHKSUM7_CFG (0x0532) = 0x007F JTX_CHKSUM8_CFG (0x0533) = 0x0080 JTX_CHKSUM9_CFG (0x0534) = 0x0081 JTX_CHKSUM10_CFG (0x0535) = 0x0082 JTX_CHKSUM11_CFG (0x0536) = 0x0083 JTX_CHKSUM12_CFG (0x0537) = 0x0084 JTX_CHKSUM13_CFG (0x0538) = 0x0085 JTX_CHKSUM14_CFG (0x0539) = 0x0086 JTX_CHKSUM15_CFG (0x053A) = 0x0087 JTX_LANE_PDWN (0x053B) = 0x0000 JTX_LANE_PDWN2 (0x053C) = 0x0000 JTX_LANE_ASSIGN1 (0x053D) = 0x0010 JTX_LANE_ASSIGN2 (0x053E) = 0x0032 JTX_LANE_ASSIGN3 (0x053F) = 0x0054 JTX_LANE_ASSIGN4 (0x0540) = 0x0076 JTX_LANE_ASSIGN5 (0x0541) = 0x0098 JTX_LANE_ASSIGN6 (0x0542) = 0x00BA JTX_LANE_ASSIGN7 (0x0543) = 0x00DC JTX_LANE_ASSIGN8 (0x0544) = 0x00FE JTX_QBF_STATUS_REG (0x0547) = 0x0000 JTX_TEST_GEN_INV (0x0557) = 0x0000 CHIP_USR_PAT_1_7_0 (0x0558) = 0x0000 CHIP_USR_PAT_1_15_8 (0x0559) = 0x0000 CHIP_USR_PAT_2_7_0 (0x055A) = 0x0000 CHIP_USR_PAT_2_15_8 (0x055B) = 0x0000 CHIP_USR_PAT_3_7_0 (0x055C) = 0x0000 CHIP_USR_PAT_3_15_8 (0x055D) = 0x0000 CHIP_USR_PAT_4_7_0 (0x055E) = 0x0000 CHIP_USR_PAT_4_15_8 (0x055F) = 0x0000 SER_PARITY_RESET_EN1 (0x0560) = 0x0000 SER_PARITY_RESET_EN2 (0x0561) = 0x0000 SER_PARITY_ERR1 (0x0564) = 0x0000 SER_PARITY_ERR2 (0x0565) = 0x0000 PLL_ENABLE_CTRL (0x0570) = 0x0001 JESD_S_CFG (0x0591) = 0x0000 JESD_HD_CF_CFG (0x0592) = 0x0000 PWR_DN (0x05B0) = 0x0000 PWR_DN2 (0x05B1) = 0x0000 DDC_SYNC_CTRL (0x0600) = 0x0002 DDC_SYNC_STATUS (0x0601) = 0x0000 DDC_TRIG_CTRL (0x0602) = 0x0000 CHIP_DP_MODE (0x0606) = 0x0020 CHIP_DEC_RATIO (0x0607) = 0x0000 CHIP_RES_0 (0x0608) = 0x0000 CHIP_RES_1 (0x0609) = 0x0000 CTRL_0_1_SEL (0x0620) = 0x0000 CTRL_2_SEL (0x0621) = 0x0000 OUT_FORMAT_SEL (0x0622) = 0x0000 OVR_STATUS (0x0623) = 0x0000 OVR_CLR (0x0624) = 0x0000 OUT_CHAN_SEL (0x0625) = 0x0000 OUT_RES (0x0626) = 0x0000 DDC_CTRL (0x0630) = 0x0000 DDC_DEC_CTRL (0x0631) = 0x0000 DDC_NCO_CTRL (0x0632) = 0x0000 DDC_PROFILE_CTRL (0x0633) = 0x0000 DDC_PHASE_INC0 (0x0634) = 0x0000 DDC_PHASE_INC1 (0x0635) = 0x0000 DDC_PHASE_INC2 (0x0636) = 0x0000 DDC_PHASE_INC3 (0x0637) = 0x0000 DDC_PHASE_INC4 (0x0638) = 0x0000 DDC_PHASE_INC5 (0x0639) = 0x0000 DDC_PHASE_OFFSET0 (0x063A) = 0x0000 DDC_PHASE_OFFSET1 (0x063B) = 0x0000 DDC_PHASE_OFFSET2 (0x063C) = 0x0000 DDC_PHASE_OFFSET3 (0x063D) = 0x0000 DDC_PHASE_OFFSET4 (0x063E) = 0x0000 DDC_PHASE_OFFSET5 (0x063F) = 0x0000 DDC_PHASE_INC_FRAC_A0 (0x0640) = 0x0000 DDC_PHASE_INC_FRAC_A1 (0x0641) = 0x0000 DDC_PHASE_INC_FRAC_A2 (0x0642) = 0x0000 DDC_PHASE_INC_FRAC_A3 (0x0643) = 0x0000 DDC_PHASE_INC_FRAC_A4 (0x0644) = 0x0000 DDC_PHASE_INC_FRAC_A5 (0x0645) = 0x0000 DDC_PHASE_INC_FRAC_B0 (0x0646) = 0x0000 DDC_PHASE_INC_FRAC_B1 (0x0647) = 0x0000 DDC_PHASE_INC_FRAC_B2 (0x0648) = 0x0000 DDC_PHASE_INC_FRAC_B3 (0x0649) = 0x0000 DDC_PHASE_INC_FRAC_B4 (0x064A) = 0x0000 DDC_PHASE_INC_FRAC_B5 (0x064B) = 0x0000 DDC_TRANSFER_CTRL (0x064C) = 0x0000 DDC_TRANSFER_STATUS (0x064D) = 0x0000 MOD_NCO_PHASE_ERROR_LOAD_REG0 (0x0650) = 0x0000 MOD_NCO_PHASE_ERROR_LOAD_REG1 (0x0651) = 0x0000 MOD_NCO_PHASE_ERROR_LOAD_REG2 (0x0652) = 0x0000 MOD_NCO_PHASE_ERROR_LOAD_REG3 (0x0653) = 0x0000 MOD_NCO_PHASE_ERROR_LOAD_REG4 (0x0654) = 0x0000 MOD_NCO_PHASE_ERROR_LOAD_REG5 (0x0655) = 0x0000 MOD_NCO_PHASE_ERROR_LOAD_REG6 (0x0656) = 0x0000 NCO_PHASE_ERROR_LOAD_STATUS (0x0657) = 0x0000 DDC_PSW_0 (0x065F) = 0x0000 DDC_PSW_1 (0x0660) = 0x0000 DDC_PSW_2 (0x0661) = 0x0000 DDC_PSW_3 (0x0662) = 0x0000 DDC_PSW_4 (0x0663) = 0x0000 DDC_PSW_5 (0x0664) = 0x0000 DDC_ACTIVE_PHASE_INC0 (0x0665) = 0x0000 DDC_ACTIVE_PHASE_INC1 (0x0666) = 0x0000 DDC_ACTIVE_PHASE_INC2 (0x0667) = 0x0000 DDC_ACTIVE_PHASE_INC3 (0x0668) = 0x0000 DDC_ACTIVE_PHASE_INC4 (0x0669) = 0x0000 DDC_ACTIVE_PHASE_INC5 (0x066A) = 0x0000 DDC_ACTIVE_PHASE_OFFSET0 (0x066B) = 0x0000 DDC_ACTIVE_PHASE_OFFSET1 (0x066C) = 0x0000 DDC_ACTIVE_PHASE_OFFSET2 (0x066D) = 0x0000 DDC_ACTIVE_PHASE_OFFSET3 (0x066E) = 0x0000 DDC_ACTIVE_PHASE_OFFSET4 (0x066F) = 0x0000 DDC_ACTIVE_PHASE_OFFSET5 (0x0670) = 0x0000 TIMESTAMP_READ_CTRL (0x0671) = 0x0000 TIMESTAMP_COUNTER_REG0 (0x0672) = 0x0000 TIMESTAMP_COUNTER_REG1 (0x0673) = 0x0000 TIMESTAMP_COUNTER_REG2 (0x0674) = 0x0000 TIMESTAMP_COUNTER_REG3 (0x0675) = 0x0000 TIMESTAMP_COUNTER_REG4 (0x0676) = 0x0000 TIMESTAMP_COUNTER_REG5 (0x0677) = 0x0000 TIMESTAMP_COUNTER_REG6 (0x0678) = 0x0000 TIMESTAMP_COUNTER_REG7 (0x0679) = 0x0000 JTX_CLK (0x0681) = 0x0010 SYSREF_DELAY (0x0690) = 0x0000 TRIG_DELAY (0x0691) = 0x0000 TIMESTAMP_DELAY (0x0692) = 0x0000 SYSREF_RESYNC (0x0693) = 0x0000 SYSREF_CTRL (0x1508) = 0x0000 SYSREF_STATUS (0x1509) = 0x0064 LVDS_SEL (0x150A) = 0x0000 SPI_EN_DCS (0x150C) = 0x0000 SPI_EN_FDLY (0x150D) = 0x0000 SPI_TRM_FINE_DLY (0x150E) = 0x0000 SPI_TRM_SUPER_FINE_DLY (0x150F) = 0x0000 SPI_SFDC_BYPASS (0x1510) = 0x0000 BKEND_TOP_GAIN_ADJ (0x1511) = 0x0000 SUPPLY_MON1 (0x1512) = 0x003F SUPPLY_MON2 (0x1513) = 0x001F SUPPLY_MON3 (0x1514) = 0x0003 PDOWN_CTRL (0x1515) = 0x00FC SPI_EN_FDLY_SYS (0x1516) = 0x0000 SPI_TRM_FINE_DLY_SYS (0x1517) = 0x0000 SPI_TRM_SUPER_FINE_DLY_SYS (0x1518) = 0x0000 SPI_SFDC_BYPASS_SYS (0x1519) = 0x0000 EN_VCM_MODE (0x151A) = 0x0001 SPI_NVG1 (0x151B) = 0x0005 CLOCK_DETECT_CTRL (0x151D) = 0x0003 MCS_CTRL (0x151E) = 0x0000 MCS_SYSREF_IGNORE_COUNT (0x1521) = 0x0000 USER_CTRL_TRANSFER (0x1600) = 0x0000 CAL_CONTROL (0x1601) = 0x0000 MAX_TEMPERATURE_LSB (0x1609) = 0x00DF MAX_TEMPERATURE_MSB (0x160A) = 0x002A MIN_TEMPERATURE_LSB (0x160D) = 0x00C6 MIN_TEMPERATURE_MSB (0x160E) = 0x0027 MCS_MODE (0x1621) = 0x0000 MCS_CTRL (0x1622) = 0x0000 MCS_CALC_TIME_DIFF1 (0x1623) = 0x0000 MCS_CALC_TIME_DIFF2 (0x1624) = 0x0000 MCS_CALC_TIME_DIFF3 (0x1625) = 0x0000 MCS_CALC_TIME_DIFF4 (0x1626) = 0x0000 MCS_KNOWN_SYSREF_PERIOD1 (0x1627) = 0x0000 MCS_KNOWN_SYSREF_PERIOD2 (0x1628) = 0x0000 MCS_KNOWN_SYSREF_PERIOD3 (0x1629) = 0x0000 MCS_SAMPLE_CLK_PERIOD1 (0x162D) = 0x0000 MCS_SAMPLE_CLK_PERIOD2 (0x162E) = 0x0000 MCS_SAMPLE_CLK_PERIOD3 (0x162F) = 0x0000 MCS_SAMPLE_CLK_PERIOD4 (0x1630) = 0x0000 MCS_PHASE_SLIP_MODE (0x1636) = 0x0000
SPI_CONFIG_A (0x0000) = 0x0024 DEVICE_CONFIG (0x0002) = 0x00F0 CHIP_TYPE (0x0003) = 0x0003 CHIP_ID_LSB (0x0004) = 0x00E5 CHIP_ID_MSB (0x0005) = 0x0000 CHIP_SCRATCH (0x000A) = 0x00BC VENDOR_ID_LSB (0x000C) = 0x0056 VENDOR_ID_MSB (0x000D) = 0x0004 CHIP_GEN_CTRL (0x0026) = 0x0000 FD_CTRL (0x0100) = 0x0000 FD_UP_THRESH_LSB (0x0101) = 0x0000 FD_UP_THRESH_MSB (0x0102) = 0x0000 FD_LOW_THRESH_LSB (0x0103) = 0x0000 FD_LOW_THRESH_MSB (0x0104) = 0x0000 FD_DWELL_THRESH_LSB (0x0105) = 0x0000 FD_DWELL_THRESH_MSB (0x0106) = 0x0000 SMON_STATUS_0 (0x0120) = 0x0000 SMON_STATUS_1 (0x0121) = 0x0000 SMON_STATUS_2 (0x0122) = 0x0000 SMON_STATUS_FCNT (0x0123) = 0x0000 SMON_PERIOD_0 (0x0124) = 0x0000 SMON_PERIOD_1 (0x0125) = 0x0000 SMON_PERIOD_2 (0x0126) = 0x0000 SMON_STATUS_CTRL (0x0127) = 0x0000 SMON_SFRAMER (0x0128) = 0x0000 SMON_SYNC_CTRL (0x0129) = 0x0000 SMON_CLK_EN (0x0131) = 0x0000 CLK_CHG_REQ (0x0332) = 0x0000 PLL_CTRL (0x0500) = 0x0000 PLL_STATUS (0x0501) = 0x0080 JTX_LINK_CTRL1 (0x0503) = 0x0014 JTX_LINK_CTRL2 (0x0504) = 0x00C0 JTX_LINK_CTRL3 (0x0505) = 0x0001 JTX_LINK_CTRL4 (0x0506) = 0x0000 JTX_LINK_CTRL5 (0x0507) = 0x0000 JTX_SYNC_CTRL (0x0508) = 0x0020 JTX_CS_BITS_CTRL (0x0509) = 0x0002 JTX_LMFC_OFFSET (0x050A) = 0x0000 JTX_DID_CFG (0x050E) = 0x0000 JTX_BID_CFG (0x050F) = 0x0000 JTX_LID0_CFG (0x0510) = 0x0000 JTX_LID1_CFG (0x0511) = 0x0001 JTX_LID2_CFG (0x0512) = 0x0002 JTX_LID3_CFG (0x0513) = 0x0003 JTX_LID4_CFG (0x0514) = 0x0004 JTX_LID5_CFG (0x0515) = 0x0005 JTX_LID6_CFG (0x0516) = 0x0006 JTX_LID7_CFG (0x0517) = 0x0007 JTX_LID8_CFG (0x0518) = 0x0008 JTX_LID9_CFG (0x0519) = 0x0009 JTX_LID10_CFG (0x051A) = 0x000A JTX_LID11_CFG (0x051B) = 0x000B JTX_LID12_CFG (0x051C) = 0x000C JTX_LID13_CFG (0x051D) = 0x000D JTX_LID14_CFG (0x051E) = 0x000E JTX_LID15_CFG (0x051F) = 0x000F JTX_SCR_L_CFG (0x0520) = 0x000F JTX_F_CFG (0x0521) = 0x0001 JTX_K_CFG (0x0522) = 0x001F JTX_M_CFG (0x0523) = 0x0000 JTX_CS_N_CFG (0x0524) = 0x000B JTX_SCV_NP_CFG (0x0525) = 0x000F JTX_JV_S_CFG (0x0526) = 0x002F JTX_HD_CF_CFG (0x0527) = 0x0000 JTX_CHKSUM0_CFG (0x052B) = 0x0078 JTX_CHKSUM1_CFG (0x052C) = 0x0079 JTX_CHKSUM2_CFG (0x052D) = 0x007A JTX_CHKSUM3_CFG (0x052E) = 0x007B JTX_CHKSUM4_CFG (0x052F) = 0x007C JTX_CHKSUM5_CFG (0x0530) = 0x007D JTX_CHKSUM6_CFG (0x0531) = 0x007E JTX_CHKSUM7_CFG (0x0532) = 0x007F JTX_CHKSUM8_CFG (0x0533) = 0x0080 JTX_CHKSUM9_CFG (0x0534) = 0x0081 JTX_CHKSUM10_CFG (0x0535) = 0x0082 JTX_CHKSUM11_CFG (0x0536) = 0x0083 JTX_CHKSUM12_CFG (0x0537) = 0x0084 JTX_CHKSUM13_CFG (0x0538) = 0x0085 JTX_CHKSUM14_CFG (0x0539) = 0x0086 JTX_CHKSUM15_CFG (0x053A) = 0x0087 JTX_LANE_PDWN (0x053B) = 0x0000 JTX_LANE_PDWN2 (0x053C) = 0x0000 JTX_LANE_ASSIGN1 (0x053D) = 0x0010 JTX_LANE_ASSIGN2 (0x053E) = 0x0032 JTX_LANE_ASSIGN3 (0x053F) = 0x0054 JTX_LANE_ASSIGN4 (0x0540) = 0x0076 JTX_LANE_ASSIGN5 (0x0541) = 0x0098 JTX_LANE_ASSIGN6 (0x0542) = 0x00BA JTX_LANE_ASSIGN7 (0x0543) = 0x00DC JTX_LANE_ASSIGN8 (0x0544) = 0x00FE JTX_QBF_STATUS_REG (0x0547) = 0x002D JTX_TEST_GEN_INV (0x0557) = 0x0000 CHIP_USR_PAT_1_7_0 (0x0558) = 0x0000 CHIP_USR_PAT_1_15_8 (0x0559) = 0x0000 CHIP_USR_PAT_2_7_0 (0x055A) = 0x0000 CHIP_USR_PAT_2_15_8 (0x055B) = 0x0000 CHIP_USR_PAT_3_7_0 (0x055C) = 0x0000 CHIP_USR_PAT_3_15_8 (0x055D) = 0x0000 CHIP_USR_PAT_4_7_0 (0x055E) = 0x0000 CHIP_USR_PAT_4_15_8 (0x055F) = 0x0000 SER_PARITY_RESET_EN1 (0x0560) = 0x0000 SER_PARITY_RESET_EN2 (0x0561) = 0x0000 SER_PARITY_ERR1 (0x0564) = 0x0000 SER_PARITY_ERR2 (0x0565) = 0x0000 PLL_ENABLE_CTRL (0x0570) = 0x0001 JESD_S_CFG (0x0591) = 0x0000 JESD_HD_CF_CFG (0x0592) = 0x0000 PWR_DN (0x05B0) = 0x0000 PWR_DN2 (0x05B1) = 0x0000 DDC_SYNC_CTRL (0x0600) = 0x0002 DDC_SYNC_STATUS (0x0601) = 0x0000 DDC_TRIG_CTRL (0x0602) = 0x0000 CHIP_DP_MODE (0x0606) = 0x0020 CHIP_DEC_RATIO (0x0607) = 0x0000 CHIP_RES_0 (0x0608) = 0x0000 CHIP_RES_1 (0x0609) = 0x0000 CTRL_0_1_SEL (0x0620) = 0x0000 CTRL_2_SEL (0x0621) = 0x0000 OUT_FORMAT_SEL (0x0622) = 0x0000 OVR_STATUS (0x0623) = 0x0000 OVR_CLR (0x0624) = 0x0000 OUT_CHAN_SEL (0x0625) = 0x0000 OUT_RES (0x0626) = 0x0000 DDC_CTRL (0x0630) = 0x0000 DDC_DEC_CTRL (0x0631) = 0x0000 DDC_NCO_CTRL (0x0632) = 0x0000 DDC_PROFILE_CTRL (0x0633) = 0x0000 DDC_PHASE_INC0 (0x0634) = 0x0000 DDC_PHASE_INC1 (0x0635) = 0x0000 DDC_PHASE_INC2 (0x0636) = 0x0000 DDC_PHASE_INC3 (0x0637) = 0x0000 DDC_PHASE_INC4 (0x0638) = 0x0000 DDC_PHASE_INC5 (0x0639) = 0x0000 DDC_PHASE_OFFSET0 (0x063A) = 0x0000 DDC_PHASE_OFFSET1 (0x063B) = 0x0000 DDC_PHASE_OFFSET2 (0x063C) = 0x0000 DDC_PHASE_OFFSET3 (0x063D) = 0x0000 DDC_PHASE_OFFSET4 (0x063E) = 0x0000 DDC_PHASE_OFFSET5 (0x063F) = 0x0000 DDC_PHASE_INC_FRAC_A0 (0x0640) = 0x0000 DDC_PHASE_INC_FRAC_A1 (0x0641) = 0x0000 DDC_PHASE_INC_FRAC_A2 (0x0642) = 0x0000 DDC_PHASE_INC_FRAC_A3 (0x0643) = 0x0000 DDC_PHASE_INC_FRAC_A4 (0x0644) = 0x0000 DDC_PHASE_INC_FRAC_A5 (0x0645) = 0x0000 DDC_PHASE_INC_FRAC_B0 (0x0646) = 0x0000 DDC_PHASE_INC_FRAC_B1 (0x0647) = 0x0000 DDC_PHASE_INC_FRAC_B2 (0x0648) = 0x0000 DDC_PHASE_INC_FRAC_B3 (0x0649) = 0x0000 DDC_PHASE_INC_FRAC_B4 (0x064A) = 0x0000 DDC_PHASE_INC_FRAC_B5 (0x064B) = 0x0000 DDC_TRANSFER_CTRL (0x064C) = 0x0000 DDC_TRANSFER_STATUS (0x064D) = 0x0000 MOD_NCO_PHASE_ERROR_LOAD_REG0 (0x0650) = 0x0000 MOD_NCO_PHASE_ERROR_LOAD_REG1 (0x0651) = 0x0000 MOD_NCO_PHASE_ERROR_LOAD_REG2 (0x0652) = 0x0000 MOD_NCO_PHASE_ERROR_LOAD_REG3 (0x0653) = 0x0000 MOD_NCO_PHASE_ERROR_LOAD_REG4 (0x0654) = 0x0000 MOD_NCO_PHASE_ERROR_LOAD_REG5 (0x0655) = 0x0000 MOD_NCO_PHASE_ERROR_LOAD_REG6 (0x0656) = 0x0000 NCO_PHASE_ERROR_LOAD_STATUS (0x0657) = 0x0000 DDC_PSW_0 (0x065F) = 0x0000 DDC_PSW_1 (0x0660) = 0x0000 DDC_PSW_2 (0x0661) = 0x0000 DDC_PSW_3 (0x0662) = 0x0000 DDC_PSW_4 (0x0663) = 0x0000 DDC_PSW_5 (0x0664) = 0x0000 DDC_ACTIVE_PHASE_INC0 (0x0665) = 0x0000 DDC_ACTIVE_PHASE_INC1 (0x0666) = 0x0000 DDC_ACTIVE_PHASE_INC2 (0x0667) = 0x0000 DDC_ACTIVE_PHASE_INC3 (0x0668) = 0x0000 DDC_ACTIVE_PHASE_INC4 (0x0669) = 0x0000 DDC_ACTIVE_PHASE_INC5 (0x066A) = 0x0000 DDC_ACTIVE_PHASE_OFFSET0 (0x066B) = 0x0000 DDC_ACTIVE_PHASE_OFFSET1 (0x066C) = 0x0000 DDC_ACTIVE_PHASE_OFFSET2 (0x066D) = 0x0000 DDC_ACTIVE_PHASE_OFFSET3 (0x066E) = 0x0000 DDC_ACTIVE_PHASE_OFFSET4 (0x066F) = 0x0000 DDC_ACTIVE_PHASE_OFFSET5 (0x0670) = 0x0000 TIMESTAMP_READ_CTRL (0x0671) = 0x0000 TIMESTAMP_COUNTER_REG0 (0x0672) = 0x0000 TIMESTAMP_COUNTER_REG1 (0x0673) = 0x0000 TIMESTAMP_COUNTER_REG2 (0x0674) = 0x0000 TIMESTAMP_COUNTER_REG3 (0x0675) = 0x0000 TIMESTAMP_COUNTER_REG4 (0x0676) = 0x0000 TIMESTAMP_COUNTER_REG5 (0x0677) = 0x0000 TIMESTAMP_COUNTER_REG6 (0x0678) = 0x0000 TIMESTAMP_COUNTER_REG7 (0x0679) = 0x0000 JTX_CLK (0x0681) = 0x0010 SYSREF_DELAY (0x0690) = 0x0000 TRIG_DELAY (0x0691) = 0x0000 TIMESTAMP_DELAY (0x0692) = 0x0000 SYSREF_RESYNC (0x0693) = 0x0000 SYSREF_CTRL (0x1508) = 0x0000 SYSREF_STATUS (0x1509) = 0x0064 LVDS_SEL (0x150A) = 0x0000 SPI_EN_DCS (0x150C) = 0x0000 SPI_EN_FDLY (0x150D) = 0x0000 SPI_TRM_FINE_DLY (0x150E) = 0x0000 SPI_TRM_SUPER_FINE_DLY (0x150F) = 0x0000 SPI_SFDC_BYPASS (0x1510) = 0x0000 BKEND_TOP_GAIN_ADJ (0x1511) = 0x0000 SUPPLY_MON1 (0x1512) = 0x003F SUPPLY_MON2 (0x1513) = 0x001F SUPPLY_MON3 (0x1514) = 0x0003 PDOWN_CTRL (0x1515) = 0x00FC SPI_EN_FDLY_SYS (0x1516) = 0x0000 SPI_TRM_FINE_DLY_SYS (0x1517) = 0x0000 SPI_TRM_SUPER_FINE_DLY_SYS (0x1518) = 0x0000 SPI_SFDC_BYPASS_SYS (0x1519) = 0x0000 EN_VCM_MODE (0x151A) = 0x0001 SPI_NVG1 (0x151B) = 0x0005 CLOCK_DETECT_CTRL (0x151D) = 0x0003 MCS_CTRL (0x151E) = 0x0000 MCS_SYSREF_IGNORE_COUNT (0x1521) = 0x0000 USER_CTRL_TRANSFER (0x1600) = 0x0000 CAL_CONTROL (0x1601) = 0x0000 MAX_TEMPERATURE_LSB (0x1609) = 0x00FF MAX_TEMPERATURE_MSB (0x160A) = 0x003D MIN_TEMPERATURE_LSB (0x160D) = 0x0015 MIN_TEMPERATURE_MSB (0x160E) = 0x003A MCS_MODE (0x1621) = 0x0000 MCS_CTRL (0x1622) = 0x0000 MCS_CALC_TIME_DIFF1 (0x1623) = 0x0000 MCS_CALC_TIME_DIFF2 (0x1624) = 0x0000 MCS_CALC_TIME_DIFF3 (0x1625) = 0x0000 MCS_CALC_TIME_DIFF4 (0x1626) = 0x0000 MCS_KNOWN_SYSREF_PERIOD1 (0x1627) = 0x0000 MCS_KNOWN_SYSREF_PERIOD2 (0x1628) = 0x0000 MCS_KNOWN_SYSREF_PERIOD3 (0x1629) = 0x0000 MCS_SAMPLE_CLK_PERIOD1 (0x162D) = 0x0000 MCS_SAMPLE_CLK_PERIOD2 (0x162E) = 0x0000 MCS_SAMPLE_CLK_PERIOD3 (0x162F) = 0x0000 MCS_SAMPLE_CLK_PERIOD4 (0x1630) = 0x0000 MCS_PHASE_SLIP_MODE (0x1636) = 0x0000
************************JESD 0*********************** ILA Support(0x08) = 0x1 Scrambling(0x0C) = 0x0 SYSREF Handling(0x10) = 0x1 Test Modes(0x18) = 0x0 Link Error Status(0x1C) = 0x924924 Octets per Frame(0x20) = 0x1 Frames per Multiframe(0x24) = 0x1F Lanes in Use(0x28) = 0xFF Subclass Mode(0x2C) = 0x0 RX Buffer Delay(0x30) = 0x0 Error Reporting(0x34) = 0x1 Sync Status(0x38) = 0x1 Debug Status(0x3C) = 0xEEEEEEEE Link Error Counts:0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 ********************************************************* ************************JESD 1*********************** ILA Support(0x08) = 0x1 Scrambling(0x0C) = 0x0 SYSREF Handling(0x10) = 0x1 Test Modes(0x18) = 0x0 Link Error Status(0x1C) = 0x924924 Octets per Frame(0x20) = 0x1 Frames per Multiframe(0x24) = 0x1F Lanes in Use(0x28) = 0xFF Subclass Mode(0x2C) = 0x0 RX Buffer Delay(0x30) = 0x0 Error Reporting(0x34) = 0x1 Sync Status(0x38) = 0x1 Debug Status(0x3C) = 0xEEEEEEEE Link Error Counts:0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 *********************************************************
************************JESD 0*********************** ILA Support(0x08) = 0x1 Scrambling(0x0C) = 0x0 SYSREF Handling(0x10) = 0x1 Test Modes(0x18) = 0x0 Link Error Status(0x1C) = 0x0 Octets per Frame(0x20) = 0x1 Frames per Multiframe(0x24) = 0x1F Lanes in Use(0x28) = 0xFF Subclass Mode(0x2C) = 0x0 RX Buffer Delay(0x30) = 0x0 Error Reporting(0x34) = 0x1 Sync Status(0x38) = 0x0 Debug Status(0x3C) = 0x0 Link Error Counts:0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 ********************************************************* ************************JESD 1*********************** ILA Support(0x08) = 0x1 Scrambling(0x0C) = 0x0 SYSREF Handling(0x10) = 0x1 Test Modes(0x18) = 0x0 Link Error Status(0x1C) = 0x0 Octets per Frame(0x20) = 0x1 Frames per Multiframe(0x24) = 0x1F Lanes in Use(0x28) = 0xFF Subclass Mode(0x2C) = 0x0 RX Buffer Delay(0x30) = 0x0 Error Reporting(0x34) = 0x1 Sync Status(0x38) = 0x0 Debug Status(0x3C) = 0x0 Link Error Counts:0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 *********************************************************
Any insights on what may be wrong or how to troubleshoot would be extremely helpful. Thanks in advance.
Mark
Posted wrong screenshot of example where all eye diagrams are open.
[edited by: mgarrett at 3:45 PM (GMT -4) on 12 Sep 2021]