This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

LMX2572EVM: LMX2572 Full Assisted Calibration lock time is much longer than the datasheet claims - sometimes >1ms

Part Number: LMX2572EVM
Other Parts Discussed in Thread: LMK61E2,

Test Setup LMX2572EVM with LMK61E2 MSP430 board using TICS PRO 1.6.10.0

Loading the default configuration for the EVM and trying to use the Fully Assisted VCO calibration, the locktime is not noticeably shorter, and is sometimes much longer than letting the part do a cal normally

I have CSB and MUXOUT connected to an oscilloscope - I measure from the last rising edge of CSB to the rising edge of MUXOUT(LD) and this is the lock time

Have I missed a step somewhere or is this a bug?

Step by step process:

Turn auto update off

Load Default Configuration 2018-4-27

set reset = 1

Write R0

set reset = 0

Write R0

write all registers

set MUXOUT to Readback

Write R0

Read All Registers

rb_VCO_SEL = 6

rb_VCO_CAPCTRL = 108

rb_VCO_DACISET = 256

set MUXOUT to Lock Detect

write R0

here i instrument 285us lock time which is fine

===========Move to a different frequency

push N divider up to 61 for Fvco of 3057

write all registers

write R0

here I instrument 270us lock time which is fine

=============== Return to the original frequency - using fully assisted cal

put N divider back to 60

set VCO_SEL_FORCE and VCO_SEL to VCO6

set VCO_CAPCTRL_FORCE and VCO_CAPCTRL to 108

set VCO_DACISET_FORCE and VCO_DACISET to 256

write all registers

write R0

here I instrument 247us lock time - I would expect this to be much faster

  • Hi Jason,

    If you do full assist, you do not need to program R0 (to initiate calibration) unless you have some other bits in R0 needed to be change. 

    Since you just want to change frequency, you don't need to write all registers. In your example, you only need to update N divider and the three VCO parameters.

    Use the LD pin to measure lock time is not accurate enough. We used to use a test equipment capable of measuring freq vs time to measure the lock time. 

    In your example, there are two more things that are misleading your measured lock time.

    TICS Pro has default the LD_TYPE to "Vtune and VCOCal". That is, the lock detect will turn HIGH only when VCO calibration is finished and the Vtune voltage is within a certain range. With full assist, you don't need calibration (but you did program R0 to trigger calibration), so this lock time measurement is invalid. 

    Furthermore, LD_DLY is default to 1000. This is a delay added after VCO calibration is finished. Lock detect cannot change it status before the delay is over. 

    In short, you have got similar "lock time" because it was the time taken for VCO calibration + a pre-defined delay time.

    in this example, the suggested programming sequence is:

    1. Program R16: VCO_DACISET
    2. Program R19: VCO_CAPCTRL
    3. Program PLL_N
    4. Program R8: VCO_DACISET_FORCE=1; VCO_CAPCTRL_FORCE=1
    5. Program R20: VCO_SEL; VCO_SEL_FORCE=1 (you can skip this step as the VCO core did not change at all)

  • Hi Noel,

    This is great thanks.

    I don't have any test equipment that can output freq vs time - will the rb_LD_VTUNE field in register 110 give a good indication of lock or is this invalid in full assist?

  • Hi Jason,

    It is just a software version of the LD, it is invalid in full assist mode.

  • Is there a later version of the datasheet than RevB ? None of this is clear from the current datasheet

  • Also: in your programming sequence

    1. Program R16: VCO_DACISET
    2. Program R19: VCO_CAPCTRL
    3. Program PLL_N

    does the PLL_N wite have to come after the VCO DAC and CAP writes?

    If the VCO core is changing does that have to happen last? 

  • Hi Jason,

    This sequence applies to the first time you execute full assist mode. Program Step 1 and 2 will not change the VCO characteristic because you have not programmed the "force" registers. 

    I think we will not change the datasheet but will create an application note for full assist mode operation.

  • for frequency switches across a wider range I need to write to many more registers - chdiv, PLL_NUM, PFD_DLY_SEL etc

    do you have a more complete description of the programming sequence for full assist across the whole range of the device?

  • Hi Jason,

    once you are in full assist mode, there is no trick on programming sequence anymore. Any change will be effective immediately. All we can do is increase programming speed so as to minimize the time taken in programming. Remember a register takes 24+1 bits. If SPI speed is 1MHz, then to write a register will take 25µs. 

  • Thanks Noel

    I think this is everything I needed

    I look forward to the apps note in the future