工具/软件:
你好
我们在定制设计中使用 LMX2820、使用 FPGA 来处理 LMX2820的编程。
由于我们有相当严格的锁定时间要求、因此我们必须使用即时校准。
以下是我们针对 InstCal 遵循的过程:
初始化寄存器设置
设置 DBLBUF_PLL_EN、DBLBUF_CHDIV_EN、DBLBUF_OUTBUF_EN、DBLBUF_OUTMUX_EN = 1
设置 DBLR_CAL_EN = 0;INSTCAL_SKIP_ACAL = 0
3.如果需要 VCO 倍频器、请设置 INSTCAL_DBLR_EN = 1、否则将此位设置为0
设置 INSTCAL_DLY = T x fosc (以 MHz 为单位)/ 2^CAL_CLK_DIV、其中 T = 2.5 x CBIASVCO / 0.47µF。 CBIASVCO 是引脚3处的旁路电容器
5.将其他寄存器配置为在没有任何校准辅助的情况下锁定到5.65GHz
6.设置 INSTCAL_PLL_NUM = 2^32 x (PLL_NUM / PLL_DEN)
编程
7. VCC 上电 LMX2820
8.对所有寄存器进行编程、LMX2820应锁定到5.65GHz
InstCal 校准
9.对 INSTCAL_EN = 1进行编程
10.编程 R0 (FCAL = 1)、校准将开始
11、等待100毫秒
12.编程 R0 (FCAL = 0)以完成校准
13.如果 LD 引脚未变为高电平、则编程 RESET = 1以复位 LMX2820。 LMX2820复位后、重复步骤8至12
更改 VCO 频率
14.对 INSTCAL_PLL_NUM、PLL_N、PLL_NUM 和 PLL_DEN 进行编程(如果其值发生变化)
15、对 R0进行编程(FCAL = 0)以更改 VCO 频率
我们在某些频率不锁定时遇到了一些问题、建议添加步骤9.5 (运行索引例程)。
9.5索引例程
1.编程 R106[10]= 1 (0X6A 0400)
2.编程 R107[5:0]= 0 (0x6B 0000)
3.编程 R108 = 0 (0x6C 0000)
4.编程 R109=0 (0x6D 0000)
5.编程 R106[9:0]= 514 (0x6A 0602)
6.编程 R106[11]= 1 (0x6A 0E02)
7.编程 R106[11]= 0 (0x6A 0602)
8.对 R106[9:0]= 515至519重复步骤5至7
9.编程 R106[10]= 0 (0x6A 0000)
我们尚未尝试此操作、因为打开密封模块需要一些时间、但与此同时、由于上述寄存器在寄存器映射中标记为保留、我想了解运行索引例程时发生了什么情况?