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.

LMK04808BEVAL: PLL2 0-delay

Part Number: LMK04808BEVAL

Based on the datasheet, LMK04808 can be configured to run “PLL2, Int VCO, 0-delay” for PLL2 only. I have tried to test this on LMK04808B Evaluation Board, but it is not successful. OSCin and CLKout0 can be phase locked. Can you or someone in your team help to resolve this issue?

 

I can configure the LMK04808B Evaluation Board to make “PLL2, Int VCO” work. OSCin and CLKout0 can be phase locked, but phase between OSCin and CLKout0 is not a fixed value if the  .

  • Hello Jingjun,

    Have you tried using the default configuration for 0-delay on the EVM?

    Please also refer to the EVM documentation section, "Programming 0-Delay Mode in CodeLoader"

    > Note, I recommend you use the TICS Pro software vs. CodeLoader, it is very similar, however the GUI does not directly support 0-delay for simple usage.  The second in the EVM documentation will touch on some of the details.  You need to go to the User Controls page to enable the feedback mux and select the clock to use for feedback.  If the feedback frequency is the same as the VCXO frequency, all the frequencies will calculate properly.  Otherwise when 0-delay is programmed properly, the vco/output frequencies will mis-calculated, but the dividers will be set properly to provide the requested output frequencies.

    If you're still having issues, you may try posting your config as a saved .TCS file.

    73,
    Timothy

  • Timothy

    I have tested the LMK04808B evaluation board using CodeLoader and TICS Pro following the PLL2 0-delay configuration:

    Case 2:

    Default 0-Delay

    Mode

    (CLKout8 =

    1474.56 MHz)

    Both  work same. I cannot get 0-delay between OSCout0 and  Clkout0 for “PLL2, Int VCO, 0-delay” mode.

    But is  very close to 0-delay between OSCout0 and  Clkout0 for “PLL2, Int VCO” mode.

    Can you help to analysis the setup as shown in the following *.TCS file I have used.

    [SETUP]
    ADDRESS=888
    CLOCK=8
    DATA=4
    LE=2
    PART=LMK04808B
    IFACE=UWIRE
    ADDRESS_I2C=0x0

    [PINS]
    PINNAME00=SYNC
    LOCATION00=7
    PINVALUE00=True
    PINNAME01=Status_CLKin0
    LOCATION01=3
    PINVALUE01=False
    PINNAME02=Status_CLKin1
    LOCATION02=1
    PINVALUE02=False
    PINNAME03=TRIGGER
    LOCATION03=0
    PINVALUE03=False

    [MODES]
    NAME00=R0 (INIT)
    VALUE00=2148925824
    NAME01=R0
    VALUE01=1311488
    NAME02=R1
    VALUE02=2148794753
    NAME03=R2
    VALUE03=2148794754
    NAME04=R3
    VALUE04=1310787
    NAME05=R4
    VALUE05=1310788
    NAME06=R5
    VALUE06=2148794757
    NAME07=R6
    VALUE07=67633158
    NAME08=R7
    VALUE08=16842759
    NAME09=R8
    VALUE09=67174408
    NAME10=R9
    VALUE10=1431655753
    NAME11=R10
    VALUE11=2554481034
    NAME12=R11
    VALUE12=1140920331
    NAME13=R12
    VALUE13=453771372
    NAME14=R13
    VALUE14=587366925
    NAME15=R14
    VALUE15=33554446
    NAME16=R15
    VALUE16=2147516431
    NAME17=R16
    VALUE17=3243574288
    NAME18=R24
    VALUE18=88
    NAME19=R25
    VALUE19=46777369
    NAME20=R26
    VALUE20=2410151962
    NAME21=R27
    VALUE21=268443163
    NAME22=R28
    VALUE22=1056284
    NAME23=R29
    VALUE23=25166237
    NAME24=R30
    VALUE24=33554846
    NAME25=R31
    VALUE25=2031647
    OSCIN00=122.88
    EXTRA_PLL_N_DIV_1_00=0
    OSCIN01=122.88
    EXTRA_PLL_N_DIV_1_01=0

    [FLEX]
    CLKout0_1_HS=0
    CLKout0_1_PD=0
    CLKout0_FREQ=122.88
    CLKout10_11_HS=0
    CLKout10_11_PD=1
    CLKout10_FREQ=1
    CLKout11_FREQ=1
    CLKout1_FREQ=122.88
    CLKout2_3_HS=0
    CLKout2_3_PD=1
    CLKout2_FREQ=1
    CLKout3_FREQ=1
    CLKout4_5_HS=0
    CLKout4_5_PD=1
    CLKout4_FREQ=1
    CLKout5_FREQ=1
    CLKout6_7_HS=0
    CLKout6_7_PD=0
    CLKout6_FREQ=1474.56
    CLKout7_FREQ=1474.56
    CLKout8_9_HS=0
    CLKout8_9_PD=0
    CLKout8_FREQ=1474.56
    CLKout9_FREQ=1474.56
    OSCout0_FREQ=122.88
    OSCout1_FREQ=1
    PLL2_PDF_FREQ=122.88
    PLL2_REF_FREQ=122.88
    VCO_FREQ=2949.12
    bSync=Sync
    stStatus=PLL1 VCO and PLL2 Ref (OSCin)\n = 122.88 MHz

     

  • Hello Jingjun,

    The problem here is that CLKout8 is being used as feedback clock.  That clock is 1474.2 MHz.  The reason this was done is because it still allows the frequencies to display properly.

    In your case where you want 0-delay to work at a 122.88 MHz, you must feedback the lower frequency to the PLL2 N.

    Observe from functional block diagram in section '8.2 Functional Block Diagram' of the LMK04808 datasheet that in 0-delay mode, the FB Mux is fed directly into the PLL2 N2 Divider.  Therefore to enable 0-delay at 122.88 MHz output frequency using your configuration,

    1) On Use Control page, update the FEEDBACK_MUX from CLKout8 to CLKout0.  This selects a clock output at 122.88 MHz for feedback to PLL2 N.

    2) On the PLL2 page, change the PLL2 N value from 12 to 1.  Because the 122.88 MHz of CLKout0 is now is delivered to PLL2 N divider, by setting PLL2 N = 1 the phase detector will be 122.88 MHz from CLKout0.  Now we satisfy the two equations for PLL2 phase detector frequency.

    After doing this, because the EVM GUI does not support 0-delay frequency calculations, the VCO will be calculated incorrectly as 122.88 MHz * 1 (PLL2_N) * 2 (Pre-N Divider).

    It should use the equation 122.88 MHz * 1 (PLL2_N) * 24 (CLKout0_DIV).

    Please try these two updates with your config.

    73,
    Timothy

  • Timothy

    Your suggestion is very helpful.  Following your step "PLL2 0-delay" works on LMK04808B Evaluation Board.

    I have the following concerns: If the OSCin is 125MHz 30% duty cycle or sinusoidal signal instead of 50% duty cycle clock on the evaluation board.  can  the "PLL2 0-delay" work? Is there a way that I can test this in the evaluation board?

     OSCin input has a multiplier X2.  How does it work? Does this mean the 30% duty cycle or sinusoidal input on OSCin will work?

    Thanks

    Jingjun

     

  • Hello,

    If your input duty cycle is 30%, 0-delay can still work.

    You should never use doubler with non-50% duty cycle input, there will be bad spurs.

    This would work with a sine wave.

    To test on EVM, use an oscope to probe the input and output at the same time, then you should see deterministic phase every time you power down/power-up and re-program.

    73,
    Timothy

  • Timothy

    To avoid the impact of OSCin clock with 30% duty cycle, I have set the PLL2 "R Divider" to 2. In this case Phase detector will work at 61.44MHz. I still want to keep PLL2 0-delay for 122.88MHz at the output, I set Pre-N-Divider to 4 instead of 2. Why cannot I get the "PLL2  Int VCO 0-Delay" work? Is there any trick for this configuration?

    Thanks

    Jingjun

  • Hello Jingjun,

    In zero-delay the Pre-N-Divider is bypassed.  You need to double the value of the N divider to cause lock since you halved the phase detector frequency.

    A detail I didn't mention initially, during VCO calibration which occurs immediately after programming the PLL2_N register, the device does not operate in 0-delay mode.  Rather the VCO will be calibrated to the frequency of PDF * PLL2_P * PLL2_N_CAL, then it switches to zero-delay mode which using the clock output divider, and PLL2_N.  So increasing the PLL2_P value from 2 to 4 addressed the VCO frequency being proper for calibration, or you could change the PLL2_N_CAL value which is in the User Control tab of the GUI.  It is in the Others --> PLL2 sub group.  On the right hand side on my screen.

    Please refer to section 9.1.5 PLL Programming of the datasheet.

    73,
    Timothy