Part Number:ADC12DJ3200EVMOther Parts Discussed in Thread:LMK04828, ADC12DJ3200
你好,我外部使用lmk04828给3200提供sysref(1.25Mhz)和device clk(2.4Ghz),已经做了同步处理。
我如果需要做两片ADC12DJ3200的片间同步的话,我通过手册知道了两种同步方法,
1.需要自己根据SYSREF_POS 位置,来设定SYSREF_SEL值;
2.先使用sysref校准,校准完成后,读出各自的2B2~2B4寄存器(SRC_TAD)值,记录下来,然后关闭sysre校准,把2B2~2B4寄存器(SRC_TAD)值,写入2B5~2B7寄存器(TAD_FINE,TAD_COARSE,TAD_INV);
这两个方法是否可用呢?
如果我使用方法2 :关闭关闭sysre校准后,将2B2~2B4寄存器(SRC_TAD)值,记录下来,按照下面的寄存器顺序,把2B2~2B4寄存器(SRC_TAD)值,写入2B5~2B7寄存器(TAD_FINE,TAD_COARSE,TAD_INV),但这个时候发现写入029寄存器开启SYSREF 接收器电路时,会写入SYSREF_SEL值,这会有影响同步操作吗?请帮我看看这样写的顺序是否正确吧,谢谢!
Lydia:
您好,
已经收到了您的案例,调查需要些时间,感谢您的耐心等待
,
Taylor:
两种方法均可实现同步,但方法2似乎更好一些。
配置流程看起来是合理的,但应保持SYSREF_SEL自动模式或与校准时的配置一致。
,
ETHAN:
好的谢谢,我将使用方法2进行同步尝试。请问你说的“但应保持SYSREF_SEL自动模式或与校准时的配置一致。”是什么意思呢?我看手册中提到SYSREF_SEL在使用sysref校准时,需要设为0,你的意思时要将SYSREF_SEl保持设为0么?
,
ETHAN:
或者是说,在写入2B5~2B7寄存器(TAD_FINE,TAD_COARSE,TAD_INV)值的同时,SYSREF_SEL的值,也需要根据校准完成后的SYSREF_POS 值,来进行调整呢?主要没有明白您说的“SYSREF_SEL自动模式”的意思?
,
Taylor:
对,就是第二个这个意思
,
ETHAN:
谢谢!感谢你的及时回复!
我再确认一下你的意思!
先使用进行sysref自动校准版本的程序,sysref校准完成后,读出各自的2B2~2B4寄存器(SRC_TAD)值,以及SYSREF_POS,记录下来。
后使用关闭sysre自动校版本的程序,将记录下来的2B2~2B4寄存器(SRC_TAD)值,写入2B5~2B7寄存器(TAD_FINE,TAD_COARSE,TAD_INV)。
同时根据记录下来的SYSREF_POS 值(十六进制:80 06 01 二进制:1000 0000 0000 0110 0000 0001),写入SYSREF_SEL值(十进制15,十六进制F)。
及写入下面配置寄存器中的adc_cfg_rom[14][15][16]和[20][21]?
adc_cfg_rom[00] = 32'h000000B0;
adc_cfg_rom[01] = 32'h00000030; //软复位
adc_cfg_rom[02] = 32'h00000030; //软复位
adc_cfg_rom[03] = 32'h00020000;
adc_cfg_rom[04] = 32'h00006100;
adc_cfg_rom[05] = 32'h00020100; // Set JMODE0
adc_cfg_rom[06] = 32'h0002021F; //设置 k =32
adc_cfg_rom[07] = 32'h00020403;
adc_cfg_rom[08] = 32'h00003000;
adc_cfg_rom[09] = 32'h00003120;
adc_cfg_rom[10] = 32'h00006205; //01 or 05//Calibration Configuration 0 Register(CAL_CFG0)
adc_cfg_rom[11] = 32'h000080bc;
adc_cfg_rom[12] = 32'h0002B803;// TAD_RAMP
adc_cfg_rom[13] = 32'h00002A00; //
//TAD_FINE,TAD_COARSE,TAD_INV
adc_cfg_rom[14] = 32'h0002B504;// 2B2
adc_cfg_rom[15] = 32'h0002B606;// 2B3
adc_cfg_rom[16] = 32'h0002B703;// 2B4
adc_cfg_rom[17] = 32'h00006101;// Set CAL_EN (always before JESD_EN)
adc_cfg_rom[18] = 32'h0002130f;
adc_cfg_rom[19] = 32'h00004803; //03 Set serializer pre-emphasis to 3//SYSREF_SEL
adc_cfg_rom[20] = 32'h0000293F; //[5] 启用 SYSREF 接收器电路 SYSREF_RECV_EN=1 ,SYSREF_ZOOM =1,SYSREF_SEL 设置为 F
adc_cfg_rom[21] = 32'h0000297F; //[6] 启用 SYSREF 处理器 SYSREF_PROC_EN=1。必须设置此位以允许设备处理 SYSREF 事件adc_cfg_rom[22] = 32'h00020001;// Set JESD_EN (always after CAL_EN)
adc_cfg_rom[23] = 32'h00020001;//延时
adc_cfg_rom[24] = 32'h00020001;//延时adc_cfg_rom[25] = 32'h00006C00;// Set CAL_SOFT_TRIG low to reset calibration state machine
adc_cfg_rom[26] = 32'h00006C00;//
adc_cfg_rom[27] = 32'h00006C01;// Set CAL_SOFT_TRIG high to enable calibratio再次感谢你的及时回答!谢谢
,
Taylor:
对,可以按照这样执行
,
ETHAN:
谢谢!我将抓紧时间尝试!谢谢!
TI中文支持网


