TI中文支持网
TI专业的中文技术问题搜集分享网站

DAC38RF84IAAV调试遇到的问题

1)  初始化完成后,读寄存器0x05的值,发现低3位都是1,说明DAC PLL和Serdes PLL都没有锁定,但可以测到CLKOUT脚上有输出,而且频率也和配置的频率一样。我同时也使能了Serdes PLL在ALARM脚上的输出(根据手册,如下图),应该是Serdes PLL输出频率的80分频,但在ALARM脚上测不到任何输出。

2)  DAC正常工作下,SYNC信号在上电时默认是高,初始化完成后会变低。但现在SYNC始终保持高,初始化完成后也没有变低。

 

 DAC38RF84调试遇到问题.docx

 

 

 

 

所有配置的寄存器及顺序如下:

0x00FF0000,  //0x7F

0x00019A85,  // IO_CONFIG enable 4 wire SPI

0x00860000,  //0x06 read

0x00090004,  //PAGE_SET

0x00230000,  // SLEEP_CNTL

0x000C4F00,  //CLK_OUT

0x001B0020,  // DTEST

0x00240803,  // SYSR_CAPTURE enable sysref monitor

0x000B0000,  //SLEEP_CONFIG

0x003B1001,  //SRDS_CLK_CFG dacclk pll 1.6G/3=533.33M   (3B9001)

0x003C9851,  //SRDS_PLL_CFG MPY 0x28(5x)/VRANGE 0

0x003E0C29,  //SRDS_CFG2 RATE half

0x00336410,  //PLL_CONFIG2

0x00311438,  //PLL_CONFIG1 dac pll N=8/ N in reset to set M

0x00320308,  //PLL_CONFIG1 dac pll M=4

0x00310438,  //PLL_CONFIG1 dac pll N=8/ N out of reset

0x00090001,  //PAGE_SET

0x000C27F7,  //MULTIDUC_CFG2  enable NCO

0x001E0000,  //FREQ_NCOAB  set NCO frequency

0x001F0000,  //FREQ_NCOAB  set NCO frequency

0x00200000,  //FREQ_NCOAB  set NCO frequency

0x000D8000,  //JESD_FIFO   set SPI_TXENABLE to 0

0x000A060F,  //MULTIDUC_CFG1  INTERP 12

0x00256600,  // SERDES_CLK

0x004C1303,  // JESD_K_L    20

0x004B1300,  //JESD_RBD_F

0x004D0100,  //JESD_M_S

0x004E0F6F,  //JESD_N_HD_SCR  scramble  on

0x004A0F03,  //JESD_LN_EN

0x00090002,  //PAGE_SET

0x000C27F7,  //MULTIDUC_CFG2  enable NCO

0x001E0000,  //FREQ_NCOAB  set NCO frequency

0x001F0000,  //FREQ_NCOAB  set NCO frequency

0x00200000,  //FREQ_NCOAB  set NCO frequency

0x000D8000,  //JESD_FIFO   set SPI_TXENABLE to 0

0x000A060F,  //MULTIDUC_CFG1  INTERP 12

0x00256600,  // SERDES_CLK

0x004C1303,  // JESD_K_L    20

0x004B1300,  //JESD_RBD_F

0x004D0100,  //JESD_M_S

0x004E0F6F,  //JESD_N_HD_SCR  scramble  on

0x004A0F03,  //JESD_LN_EN

 

0x00090001,  //PAGE_SET

0x00240000,  //SYSREF_CLKDIV  Don't use SYSREF pulse

0x005C0000,  //JESD SYSREF Mode  Don't use SYSREF pulse

0x00090002,  //PAGE_SET

0x00240000,  //SYSREF_CLKDIV  Don't use SYSREF pulse

0x005C0000,  //JESD SYSREF Mode  Don't use SYSREF pulse

0x00090004,  //PAGE_SET

0x000AF000,  //CLK_CONFIG sync the clock divider

0x008AF000,  //空一个周期来保证有至少两个sysref上升沿

0x000A7000,  //CLK_CONFIG finish sync the clock divider

0x00090000,  //PAGE_SET

0x00007861,  //RESET_CONFIG only one link used/Put JESD204B core in reset

0x00090001,  //PAGE_SET

0x00240020,  //SYSREF_CLKDIV  Sync CDRV

0x005C0003,  //JESD SYSREF Mode  Sync  JESD204B blocks

0x00090002,  //PAGE_SET

0x00240020,  //SYSREF_CLKDIV  Sync CDRV

0x005C0003,  //JESD SYSREF Mode  Sync  JESD204B blocks

0x00090000,  //PAGE_SET

0x00007860,  //RESET_CONFIG only one link used/Put JESD204B core out of reset

 

0x00040000,  // Clear all DAC alarms

0x00050000,

0x00090001,

0x00640000,

0x00650000,

0x00660000,

0x00670000,

0x00680000,

0x00690000,

0x006A0000,

0x006B0000,

0x006C0000,

0x006D0000,

0x000D8001,  //JESD_FIFO       set SPI_TXENABLE to 1

0x00090002,

0x00640000,

0x00650000,

0x00660000,

0x00670000,

0x00680000,

0x00690000,

0x006A0000,

0x006B0000,

0x006C0000,

0x006D0000,

0x000D8001  //JESD_FIFO       set SPI_TXENABLE to 1

 

原理图见下图

user151383853:

说明DAC PLL和Serdes PLL都没有锁定,但可以测到CLKOUT脚上有输出,我看是不是该先解决这个问题, 看看 PLL 没有锁定的问题, 时钟信号不稳定, 幅度不够大?

yu zhang35:

回复 user151383853:

现在锁相环已经可以锁定,SYNC信号一直是高204B链路无法建立。SYNC信号一直不可控

赞(0)
未经允许不得转载:TI中文支持网 » DAC38RF84IAAV调试遇到的问题
分享到: 更多 (0)