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.

LMK5B33216: What is the purpose of the DPLLs preceding the APLLs

Part Number: LMK5B33216
Other Parts Discussed in Thread: LMX1204

Other than the hitless switchover feature and loss of reference detection, what is the purpose of the DPLLs modules that proceed the three APLLs? Do they allow for a wider bandwidth on the IN0 and IN1 inputs?

Thanks

-Ali

  • Hi Ali,

    Not so much the "wider" but instead more "narrow" to allow low frequency inputs such as 1-PPS. The APLL would require "impossible" loop filter components (like 10 F caps) to achieve a narrow LBW such as 0.01 Hz, which the DPLL has no trouble creating because it's all numbers/digital.

    Does this help?

    Regards,

    Jennifer

  • Thanks Jennifer. Just so I understand better: if I have a  high quality 187.5MHz reference on IN1 and a 48MHz TCXO feeding the XO input and want to cascade APPL3 to APPL2 to get a VCO2 frequency of 5625.0MHz, should I use DPLL3 and have it use IN1 or should I have APPL3 directly use IN1 as its reference.

    Thanks

  • Hi Ali,

    1. What is your full frequency plan?
    2. What are your jitter requirements? Depending on how stringent, we can either disable DPLL3/APLL3 or enable it.

    Regards,

    Jennifer

  • Hi Jennifer,

    My full frequency plan is as follows:

    Inputs:

    • XO: 48MHZ (Driven by TCXO)
    • IN0: 187.5MHz (driven by LMX1204 LOIGCLKOUT)
    • IN1: 48MHz (unknown quality)
    • No automatic failover required

    Outputs:

    • OUT0: 25MHz/V1P8
    • OUT1: 100MHz/LVDS
    • OUT2: 100MHz/LVDS
    • OUT3: 100MHz/LVDS
    • OUT4: 100MHz/HCSL
    • OUT5: 100MHz/LVDS
    • OUT6: 100MHz/LVDS
    • OUT7: 100MHz/LVDS
    • OUT8: 375MHz/LVDS
    • OUT9: 375MHz/LVDS
    • OUT10: 187.5MHz/LVDS
    • OUT11: 187.5MHz/LVDS
    • OUT12: 187.5MHz/LVDS
    • OUT13: 187.5MHz/LVDS
    • OUT14: 375MHz/LVDS
    • OUT15: 156.25MHz/HCSL

    The 375MHz and 187.5MHz outputs should be low phase noise.

    My plan was to use IN0 (187.5MHz)  as DPLL3 reference in Manual Holdover and then run APLL3 with the XO (?). I was going to bypass DPLL2 and use APLL3 as the reference for APLL2 @ 5625MHz. Then use the dividers to generate 375/187.5MHz and OUT15 @ 156.25MHz from APLL2. I also planned on using APLL3 as the source for the 25/100MHz outputs.

    Hopefully that all makes sense ;)

     

    Thanks

  • Hi Ali,

    My plan was to use IN0 (187.5MHz)  as DPLL3 reference in Manual Holdover and then run APLL3 with the XO (?)

    The XO is required for APLLx to generate the outputs. DPLL inputs allow the outputs to lock to the reference, switch between references when one lost, and/or stay in holdover when all references are lost.

    I was going to bypass DPLL2 and use APLL3 as the reference for APLL2 @ 5625MHz. Then use the dividers to generate 375/187.5MHz and OUT15 @ 156.25MHz from APLL2. I also planned on using APLL3 as the source for the 25/100MHz outputs.

    You can bypass DPLL2 and use DPLL3 input only (such as 187.5 MHz to IN0), then cascade APLL2 to reference APLL3 so that all outputs generated by APLL2 and APLL3 would have the same reference input from DPLL3.

    375 MHz and 187.5 MHz can be generated by higher performance VCO2 (APLL2) = 5625 MHz.

    Other outputs: 25 MHz, 100 MHz, 156.25 MHz can be generated by BAW VCO3 (APLL3) = 2500 MHz to achieve the best jitter.

    -Riley

  • Thanks Riley,

    The datasheet mentions that the loop bandwidth on the DPLLs can be set between 1mHz to 4KHz but on TICSPro, I don't see where that value can be directly programmed. I looked through the registers in the user's guide and came up empty handed.

    How do you program the loop bandwidth? Is there a formula I should use? I tried using "Step 6" in TICS Pro but after the script gets done running, I get bogus VCO3 values (see attached).

    I have attached my TICS pro file for your reference. I'm using TICS Pro v1.7.6.2.

    LMK5B_tics_pro_48GSPS_Operation_v6.tcs    2068.Setting_DPLL_BW.pdf

  • Hi Ali,

    The steps you took are correct to program DPLL LBW.

    The incorrect VCO3 frequency that has been updated after running script is due DPLL3 Div#1 and Div#2 values are incorrect when TICS Pro calculates TDC rates.

    This is a known bug that we're fixing for future TICS Pro. When two inputs to DPLL are set active, the software calculates the wrong N divider and num/den of the feedback path (in the purple box), so VCO3 is incorrectly updated.

    The mathematic logic between REFx, TDC rate, and VCO3 is calculated as:

    DPLL3_TDC_FREQ = REFx_FREQ / DPLL3_REFx_DIV = VCO3 /(DPLL3_FBx_DIV + DPLL3_FB2_NUM/DPLL3_FB2_DEN)

    You can make one REF available at a time then run script so that the software properly updates DPLL FB path for each REF, then manually update these N and num/den values to DPLL3 Div#1 and DPLL3 Div#2 along with selecting FB Config 1 or 2 for each REF. As each REF uses each FB config, it allows the device to switch between REFs while properly adjusting TDC rate to stay in range with VCO3.

    Hope this helps.

    -Riley

  • Thanks Riley. I'll try that. Is there a formula for the DPLL bandwidth?

  • We don't have a specific formula. DPLL LBW is also an input to calculate other DPLL register settings that TICS Pro handles internally when running scripts. You can input DPLL LBW and run the software to handle this calculation.

    -Riley

  • Hi Riley, I tried your recommendation by disabling REF0/REF1 individually and running the script. I got same results as before (DPLL3 set to 3750 MHz) regardless of which REFx I disabled. 

  • Hi Ali,

    I will run your config and check the FB path values. Will update during next weel.

    -Riley

  • I will run your config and check the FB path values. Will update during next weel.

    Hi Riley,

    Were you able to recreate the problem on your end?

  • Hi Ali,

    Sorry about the delay.

    Yes the issue is duplicated on my bench. The calculation for DPLL is correct but the selection for FB config path is incorrect so VCO3 is affected.

    For REF0 with doubler enabled, you can select FB Config 1 and type in the values in DPLL3 Div#1 (red boxes)

    For REF1 without doubler, you can do similar thing for FB Config 2 and DPLL3 Div#2 (green boxes)

    This would help with either REF is selected, DPLL Div is updated to keep VCO3 at 2500MHz.

    I see this happened with Manual Holdover input mode with REF1. If you need to Run Script again without updating these FB config each time, you can set Input Selection Mode to Auto (revertive or Non-revertive) and run with individual REFx like the above work around.

    -Riley

  • Thanks Riley.

    I tried to follow your suggestion but got confused. Are you saying that TICSPro is working as expected and the values I have are incorrect? In that case, I don't understand what I was doing wrong. I tried setting the DLL3 to the values you showed in your picture and re-ran the script and got a different result. The DLL3 R Div values changed to 2 and 2. Is that the expected behavior?

    What I entered:

    What I got after pressing "Run Script"

    How can I figure out what the starting values for DLL3 R Div and Div#1 & #2 should be? It seems to me that the numbers I was using would result in the same APPL3 and DPLL3 VCO frequencies prior to pressing the  "Run Script" button but clearly there are right and wrong starting points.

    What I had before which resulted in bad APPL3 VCO frequencies:

  • Hi Ali,

    As narrowing down to Manual holdover with REF1 causing miscalculation in DPLL settings, if you need to run script, you can set to auto mode with single REFx available so the calculation can properly update.

    Or you can use the above DPLL settings I shared to manually update DPLL3 Div box. This way, VCO3 is updated to 2500MHz and you don't have to run script again.

  • Thanks Riley. Changing the "Input Select Mode" from "Manual Hold Over" to "Auto Revertive" seemed to prevent the script from generating bad DPLL3 frequency values.