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.

LMK04610: Continuous SYSREF duration control via SPI

Part Number: LMK04610

Hello,

 

Datasheet Figure 47 says “SYSREF_REQ or SPI”.

However, GLOBAL_SYSREF id “Self-cleaning”.

How to control the period of a continuous stream of SYSREF pulses using SPI?

 

Best regards,

 

K.Hirano

  • Hello Hirano-san,

    There is no internal function which controls the outer period of gapped periodic SYSREF pulses. For SPI writes, the start of a pulse train is determined by when GLOBAL_SYSREF is asserted.

    Please note that to properly assert SYSREF requests through SPI, PLL2_REF_DIGCLK_DIV must be set so that the OSCin frequency divided by PLL2_REF_DIGCLK_DIV is less than or equal to the SYSREF pulse train frequency. For example, if the frequency at OSCin is 122.88 MHz, and the SYSREF pulse train frequency is 7.68 MHz, PLL2_REF_DIGCLK_DIV must be set to either 16 or 32.

    Regards,

  • Derek,

     

    Thank you for your response.

     

    Let me ask some more questions about continuous SYSREF by SIP control.

    I would like to understand “9.3.7.3.2 Continuous SYSREF” better.

     

    Programming GLOBAL_CONT_SYSREF = 1 generates continuous SYSREF pulses on the SYSREF enabled

    Channels without using GLOBAL_SYSREF regardless of OUTCH_SYSREF_PLSCNT contents?

    And programming GLOBAL_CONT_SYSREF = 0 stops generating the continuous SYSREF pulses?

    Best regards,

     

    K.Hirano

  • Hirano-san,

    For a channel to generate continuous SYSREF pulses, you must program OUTCH_SYSREF_PLSCNT = 0. If OUTCH_SYSREF_PLSCNT != 0, programming GLOBAL_CONT_SYSREF = 1 will only trigger a single train of OUTCH_SYSREF_PLSCNT pulses the moment GLOBAL_CONT_SYSREF is programmed.

    Your understanding of continuous SYSREF is otherwise correct: when OUTCH_SYSREF_PLSCNT = 0, programming GLOBAL_CONT_SYSREF = 1 generates continuous SYSREF pulses on the enabled SYSREF channels. And programming GLOBAL_CONT_SYSREF = 0 stops generating the continuous SYSREF pulses.

    Regards,