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.

LMX2594: 12 GHz Lock

Part Number: LMX2594

We have built 100 systems using the LMX3594.  Six of these units fail to lock at (and near) 12GHz.  We are not using any of the assisteed modes.  Is there something we should be doing or not doing to ensure lock at this frequency?  

  • Hello,

    Please check the setting of register 'VCO_SEL'. This register needs to be set to <= 4 for better locking at around 12GHz.

    Regards,

    Hao

  • Are you saying that "No Assist" calibration mode doesn't reliably work at 12GHz? Shown below is the record of VCO selection, CAPCTRL, and DAISET when stepping from 11910MHz to 12050MHz.  It appears the No assist cannot find the correct VCO at 12GHz.  

    Please clarify the correct methods for stepping through the 12GHz region.

    Freq_MHz LD_VTUNE VCO CAPCTRL DACISET N Num Denom Tries
    11910 2 4 6 273 59 2354000000 4280000000 1
    11920 2 4 5 272 59 2568000000 4280000000 1
    11930 2 4 4 272 59 2782000000 4280000000 1
    11940 2 4 3 271 59 2996000000 4280000000 1
    11950 2 4 2 270 59 3210000000 4280000000 1
    11960 2 4 1 270 59 3424000000 4280000000 1  
    11970 0 7 0 258 59 3638000000 4280000000 20  
    11980 3 1 183 326 59 3852000000 4280000000 20  
    11990 3 1 183 327 59 4066000000 4280000000 20  
    12000 0 7 0 260 60 0 20000000 20  
    12010 2 5 182 224 60 214000000 4280000000 2  
    12020 2 5 181 225 60 428000000 4280000000 2
    12030 2 5 182 225 60 642000000 4280000000 1
    12040 2 5 175 222 60 856000000 4280000000 1
    12050 2 5 174 221 60 1070000000 4280000000 1
  • The No assist mode appears to select the wrong VCO, Are you saying that No Assist method cannot be used near 12GHz?  Shown below is a record of the No Assist VCO selection, CAPCTRL, and DACISET values when stepping through the 12 GHz region.  What should we do differently if No assist doesn't work?

    Freq_MHz LD_VTUNE VCO CAPCTRL DACISET N Num Denom Tries
    11910 2 4 6 273 59 2354000000 4280000000 1
    11920 2 4 5 272 59 2568000000 4280000000 1
    11930 2 4 4 272 59 2782000000 4280000000 1
    11940 2 4 3 271 59 2996000000 4280000000 1
    11950 2 4 2 270 59 3210000000 4280000000 1
    11960 2 4 1 270 59 3424000000 4280000000 1  
    11970 0 7 0 258 59 3638000000 4280000000 20  
    11980 3 1 183 326 59 3852000000 4280000000 20  
    11990 3 1 183 327 59 4066000000 4280000000 20  
    12000 0 7 0 260 60 0 20000000 20  
    12010 2 5 182 224 60 214000000 4280000000 2  
    12020 2 5 181 225 60 428000000 4280000000 2
    12030 2 5 182 225 60 642000000 4280000000 1
    12040 2 5 175 222 60 856000000 4280000000 1
    12050 2 5 174 221 60 1070000000 4280000000 1
  • Hi Stuart,

    Partial assist means that you set the starting points of VCO core (VCO_SEL), capcode (CAPCTRL) and amplitude (DACISET) for each single frequency. That was not what I suggested.

    Even under no assist mode, you need to set the core, the capcode and the amplitude, The difference is that you do not need to do this for each frequency point you plan to use. In other words, there is no absolute 'no assist', you'll need to set the starting point anyways. That being said, I suggested that you should set the VCO_SEL to <= VCO4 in no assist mode, if you are using frequency points around 12GHz.

    This is because normally there is an overlap between VCO cores. For example, within the overlapping area between VCO3 and 4, you can use either VCO3 or 4 to get it to lock. However, there is a gap between VCO4 and 5, and only the varactor of VCO5 with capcode = 183 can cover it. In other words, for the frequency points around 12GHz, you can only get lock in VCO5 and you won't get lock in VCO4.

    Based on above discussion as well as the way that VCO calibration works, for frequency points near 12GHz, the VCO_SEL needs to be set to <=4.

    Regards,

    Hao

  • Hao,
    Thanks for that, but your recommendation above seems to me to have two conflicting statements. Pardon me for misunderstanding but what I think you said is:

    "In other words, for the frequency points around 12GHz, you can only get lock in VCO5 and you won't get lock in VCO4." That says to me to use VCO 5 near 12GHz,

    Then you said on the next paragraph: "for frequency points near 12GHz, the VCO_SEL needs to be set to <=4." I interpret that as; The VCO setting must less than or equal to 4 (<=4) for frequencies near 12 GHz.

    So for 12 GHz is the VCO select 5 or any select less than or equal to 4?

    And finally, your statement above "Even under no assist mode, you need to set the core, capcode and the amplitude." But that seems to conflict with the datasheet Table 5 which states; No assist | User does nother to improve VCO calibration speed| which I assume that is valid for all frequencies.

    Thank you for your help
    Stuart
  • Hi Stuart,

    The way that VCO calibration works is that, once it jumps to the next VCO core, it doesn't go back. In the case of 12GHz output frequency, if the VCO_SEL is set to >= VCO5, then once it finds out that the last capcode (rb_VCO_CAPCTRL = 183, the lowest frequency for that VCO core) of VCO5 doesn't meet the frequency requirement, it will jump to VCO4. This will happen sometimes because there is a gap between VCO4 and 5, such that the algorithm thinks that the capcode 183 of VCO5 is too high for the desired frequency Once it jumps to VCO4, it's stuck in there and cannot go back to VCO5. Since VCO4 doesn't cover that frequency gap, the device cannot be locked.

    However, if the VCO_SEL is set to <= VCO4, then once it finds that the capcode 0 of VCO4 is still lower than the desired frequency, it will jump to VCO5. It still thinks that the capcode 183 of VCO5 is too high for the desired frequency, but the fact is that the varactor of VCO5 has a wide tuning range such that the frequency gap can be fully covered, and the device can get locked in VCO5.

    This is why you need to set VCO_SEL to <=4 for frequency around 12GHz.

    As for the discussion about no assist, the device will always start calibration according to the values set in VCO_SEL, VCO_CAPCTRL and VCO_DACISET. Even if you never program those registers, they still have some initial values. And the calibration will start from those values because it cannot start from nowhere. That's why I said there is no absolute 'no assist', because a starting point is always there, just that you may not care about it in no assist mode. Whether or not you program those registers, as long as those values are not changed when output frequency is changed, it can be called 'no assist', because you only program it once and stick with it. In the case where you need 12GHz for your output, you will need to set VCO_SEL to <= 4. You only need to program this register when you initialize the device and don't need to change it afterwards if you are using no assist mode.

    Regards,

    Hao

  • Regarding VCO_SEL to <=4: Does that mean the unassisted method searches from 4,5,6,7,1,2,3,4 in that order?
  • It depends on the target frequency. For the 12GHz case the order is 4 -> 5. What VCO_SEL were you using when you saw 6 out of 100 fail? Do you still see the failure when setting VCO_SEL to <=4?

    Regards,
    Hao
  • Hao, Here's what we do when changing to any new frequency:

    R8: VCO_DACISET_FORCE = 0, VCO_CAPCTRL_FORCE = 0
    R16: VCO_DACISET = 0x80 = 128
    R17: VCO_DACISET_STRT = 0x12c = 300
    R19: VCO_CAPCTRL = 0xb7 = 183
    R20: VCO_SEL = 4, VCO_SEL_FORCE = 0 (((Bit 14 is set to 1, like the program showed, but datasheet says zero???)
    R78: QUICK_RECAL_EN = 0, VCO_CAPCTRL_STRT = 1

    From the datasheet, section 7.3.6.1, page 19:
  • Hi Stuart,

    These settings are correct for no assist mode.

    Do you see 6 out of 100 fail with these settings? If so, please move the failed part to TI EVM, load default Ticspro configuration and see if it fails. Otherwise there are too many variables to debug.

    The R20[14] should be 1. In datasheet full register map this bit is wrong and will be fixed. It is right to follow Ticspro settings.

    Regards,
    Hao