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.

LMK04906: Question for microwire protocol

Other Parts Discussed in Thread: LMK04906, LMK03806

Hi 

I have a question for LMK04906 microwire. 

I have a DP3 FMC Board made by TOKYO ELECTRON DEVICE. 

And DP3 FMC Board use LMK04906.. as you know LMK04906 use microwire protocol. 

So i design microwire controller and i got below waveform..

I checked microwire timing(tecs, tdcs, tcwl, tewh..) and ti recommend min 25ns..

So i use 20M operation clock like below.. and i programmed below sequence.

And i got below waveform.. but i couldn't any clkout from lmk04906

Could let me know the root cause about current state?

Thanks, 

Doohan

  • Hi Doohan, 

    Can you share where you found that startup sequence for the LMK04906? I wasn't able to find it in our datasheet or user guide. 

    I believe the issue is that the reset bit is R0[17], so you should be writing 0x2000 instead of 0x200000. 

    Assuming the rest of the registers are left as the default values on power-up, you should see an output on CLKout3/4. Let me know if this helps. 

    Regards, 

    Connor 

  • Hi Connor, 

    Question1)

    I read other article from this fourms 

    Microwire of LMK 03806 based on National Semiconductor Microwire.

    And then Microwire of LMK04906 based on National Semiconductor Microwire?

    Question2)

    Microwire based on National Semiconductor Microwire compatible with SPI Protocol?

    Thanks, 

    Doohan 

  • Hi Doohan, 

    1. I'm not sure if I completely understand the question, but the Microwire interface in LMK03806 and LMK04906 should be the same. 

    2. Microwire and SPI are very similar, but I'm not sure if they are 100% compatible. According to this post, it should be possible to use LMK03806 with SPI: https://e2e.ti.com/support/clock-timing-group/clock-and-timing/f/clock-timing-forum/305583/lmk03806-interfacing-problem-with-spi-microwire-uwire 

    By the way,  are you able to see an output clock now after writing 0x2000 to R0?

    Regards, 

    Connor 

  • Hi Connor, 

    I checked your shared link..

    Q1) I have more question.. spi and microwire have same timing, but spi doesn't have LE(latch-enable).

    As you know, spi has 4 signals (sclk, mosi, miso, ss) ..

    Let me know how to generate LE signal?

    Q2) How to know my settings through microwire is applied lmk04906?

    Thanks, 

    Doohan 

  • Hello Doohan,

    Let me know how to generate LE signal?

    Connect pin 44 (LEuWire) to the device sending your SPI bits (i.e an MCU pin that's controlled via SPI connected to pin 44 with an Rs of 10-Ω should suffice). This device will then toggle the bit sending the pulse shown in the diagram below. Also, make sure to follow the directions of the data sheet as shown below (p. 45).

    p. 21

    Q2) How to know my settings through microwire is applied lmk04906?

    Using the same LEuWire bit, you can readback your register and make sure the LMK04906 was programmed correctly. More information on readback on p. 23 of the data sheet.

    Let me know if you have any other questions.

    Good luck!

    Andrea

  • Hi, 

    I have a question for timing 

    There are a lot of timing symbol(Tecs, Tdcs, Tcdh..) and Min value is 25ns..

    And then If timing symbol is bigger than 25ns, big value(1us, 1ms..) is no problem?

    Thanks, 

    Doohan 

  • Hi Doohan, 

    Correct, 25ns is the minimum value for set up times and clock pulse widths, but if you wait longer than this there shouldn't be any issues. Let me know if you have any other questions. 

    Regards, 

    Connor 

  • I resolved my issue

    I used xilinx axi quad spi ip and connect port (spi_clk -> uwire_clk, spi_data -> mosi, spi_ss <-> uwire_le)

    And i used lmk04906.c (device driver) from microblaze firmware. 

    And i was successful microwire write to lmk04906 

    Thanks, 

    Doohan