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: How to use a trigger to start a ramp?

Part Number: LMX2594

For an FMCW application I need to generate a ramp of 20 MHz. Starting from 13.400 GHz and ramping up to 13.420 GHZ in 1000 uS. (Ramp0)
The ramp down (Ramp1) time is set to 20 uS. (13.420 to 13.400 GHz)

This works fine in automatic (non manual) mode. But I cannot find an external signal on the LMX that is in sync with the start or end of the ramp. We need this to synchronize the sampling of the ADC's with the ramp.

I also experimented with triggers. I defined, using Tics Pro, a 'Trigger A' and a 'Trigger B' in the trigger definitions section:

TriggerA as: RampDir Pin Rising Edge
TriggerB as: RampDir Pin Falling Edge

With: RAMP0_NEXT_TRIG as Trigger A, and RAMP1_NEXT_TRIG as TriggerB. This with the intention to start the up-going ramp after a positive edge on RamDir and the down-going ramp on the negative edge. But this does not work.

I tried many other combinations with the triggers. But they all do not work. (After checking the RAMP_EN box, the carrier on my analyzer disappears and nothing happens after a trigger.)

What am I doing wrong?

Advise is highly appreciated.

  • Hello Eloman,

    "Figure 18. Ramping Example" in the LMX2594EVM User's Guide: https://www.ti.com/lit/ug/snau210a/snau210a.pdf?ts=1590509266544, provides an example configuration for ramping. Additionally, "7.3.13.2 Automatic Ramping" and "7.3.13.2.1 Automatic Ramping Example (Triangle Wave)" sections of the datasheet also provide information on how to use the Automatic Ramping function. Please let me know if the answers you are looking for are not provided here.

    In manual mode, each trigger will account for only one step of the ramp. In other words you will need to continue to provide multiple rising edges on RampDir until you've reached the target sweep.

    "This works fine in automatic (non manual) mode. But I cannot find an external signal on the LMX that is in sync with the start or end of the ramp. We need this to synchronize the sampling of the ADC's with the ramp."

    I believe this is correct, there is no external signal that the LMX provides signifying the start or end. However, for the start of the ramp you can possibly use the same signal that you are using to trigger ramp.

    "I tried many other combinations with the triggers. But they all do not work. (After checking the RAMP_EN box, the carrier on my analyzer disappears and nothing happens after a trigger.)"

    So you are seeing no output frequency? Is this in manual or automatic mode?

    Thanks,

    Vibhu

  • Hello Vibhu,

    Thank you for your reply.

    I had no problem with the automatic mode. Fig 18 ,with the ramping example, shows an example with TOC Timeout for both ramp triggers.

    I want to use some physical pin as a trigger for starting the ramp. See screen shot:

     

    That does not seem to work. 

    You seen that in the screen shot RAMP_BUST_is checked. But that was for another experiment.

    Kind regards,

    Ernst

  • Hello Ernst,

    I believe what is happening is that once you check RAMP_EN your ramp stars, and the VCO starts ramping possibly past 13420 MHz and even higher since your VCO limit is set to 20 GHz. Once it reaches the edge the VCO, the ramp may be stuck there, before a Ramp trigger is sent over.

    Can you please try reducing your ramp limits closer to the target ramp frequencies. Also please confirm that your fpd < 125 MHz.

    Thanks,

    Vibhu

  • Hello Vibhu,

    you are correct. After increasing the span on my analyzer I saw a CW at 15.3 GHz.

    Then I set the 'VCO Output High Limit'  to 13.45 GHz. When I checked RAMP_EN, I noticed that the frequency settled at 13.45 GHz. 

    But after applying a TriggerA (RampClk Pin RisingEdge) , the output frequency moved up again. Now to 14.5 GHz. And stayed stuck there. Also after giving a  TriggerB, this trigger should bring the frequency back to 13.4 GHz.

    I also tried issuing a TriggerB first and than a TriggerA. Same result.  

    The PFD is set to 50 MHz.
    I checked on 2 different LMX2594EVM sets. But no difference.

    Here are the settings that I use:

    Hope you can help me. Maybe you can provide a config file ? 

    Kind regards,

    Ernst

      

  • Hello Ernst,

    I cannot see your settings, can you try re-attaching them.

    Vibhu

  • Hello Vibhu,

    something went wrong. Here are the settings:

    Kind regards,

    Ernst

  • Hello Ernst,

    According to your application Trigger A would be the wrong trigger to apply once you reach the higher frequency correct?

    Another thing to note is that as soon as you set RAMP_EN = 1 the RAMP0 will start. Now you need to apply  Trigger B for the down ramp.

    Do not up ramp if you are already at the VCO high output limit.

    Thanks,

    Vibhu

  • Hello Vibhu,

    thank you for the update.

    The reverse trigger method, with TriggerB as you advised,  I already tried. See my previous post. That did not work.

    Now I use this configuration:

    After checking RAM_EN the frequency moves from 13400 MHz to 13420 MHz  (RAMP0)

    By giving a 'Clock Ramp', TICS-Pro generates  a 50 mS positive pulse on the RAMP_CLK  pin on the LMX. The first (up-going) edge should trigger RAMP1 (TriggerA). But nothing happens. The frequency stays at 13420 MHz.  And the negative going edge should trigger RAMP0 thereafter (TriggerB) , but we don't get there because RAMP1 is not happening.

    I also connected a TI MSP430 micro-controller to the EVM. This controller:

    1) Resets LMX 
    2) Initilizes the LMX.
    3) Calibrates the VCO
    4) And enables the ramp.

    After that it starts sending RampCLK pulses to the LMX. (500 Hz 50% duty-cycle)

    I get the same result. The frequency moves from  13400 MHz to 13420 MHz only once.

    Can you please send me a  TICS-Pro settings file that should do the job? I am running behind schedule now, and the project leader starts complaining.

    Kind regards,

    Ernst

     

  • Hi Ernst,

    Since you have the EVM, please try this configuration.

    this configuration use RampCLK pin to trigger up/down ramp.

    The problem in your configuration is you have the RST bit checked. this is not necessary as the start freq of Ramp1 is equal to the end frequency of Ramp 0.

    e2eRamp.tcs

  • Hi Noel,

    thank you for your reply.

    I tested your configuration on my EVM. But I am afraid it does not work correctly.

    After loading the file, I see a carrier at 13400 MHz. When I give a RAMP_EN nothing happens. Still 13400 MHz.

    Then after disabling RAMP_EN end re-enabling it again the frequency moves to 15.3 GHz.

    I see in your config that RAMP0_NEXT_TRIG and RAMP1_NEXT_TRIG are both set to TriggerA. Maybe this generates a race in the trigger logic for both ramps?

    I enabled the RST option, to be sure that RAMP0 always starts at the correct frequency. Because rounding errors may occur when  RAMP0_LEN / RAMP1_LEN does not evaluate to an integer value.

    My project leader asks for the possibility of a voice call with  a TI support engineer. He is an RF engineer too. Maybe that could help. 

    Kindly inform me if that is possible. If possible please mail a phone-number with preferred time,date and timezone to me.  

    Kind regards

    Ernst

  • Hello Ernst,

    Can you check your configuration with the RST bit unchecked, let me test this in the lab Tuesday and give you an update.

    Thanks,

    Vibhu

  • Hello Ernst,

    Were you able to check with RST unchecked. I was not able to check the configuration today. I will try again Thursday/Friday.

    In the meantime please let me know if you make any progress.

    Thanks,

    Vibhu

  • Hello Vibhu,

    I tried your configuration with RST on and off. But that did not work. 

    Meanwhile I made a workaround using the MSP430 microcontroller. I used its PWM outputs for generating the RampClk amd RampDir signals in manual mode. On request I also increased the sweep from 20 MHz to 140 MHz. (For a better range resolution)

    The RampClk runs now at 2 MHz with a 40% duty-cycle. On the up-going edge the frequency is stepped. On the down-going edge the ADC's will be triggered. The frequency now steps up from 13400 MHz to 13540 MHz in 1024 steps.

    On the analyzer I see this in 'max hold mode':

    The RF front end engineer is happy with that for now.

    But the problem with the trigger in auto  mode is still not solved. Would be great if you find a solution for that.Than we are more flexible, because the FPGA can than re-configure the timing on user demand.

    Kind regards,

    Ernst 

      

     

  • Hello Ernst,

    Glad to hear you have found a workaround. I will let you know once I can test this.

    Thanks,

    Vibhu

  • Hello Ernst,

    Please try automatic ramping with VCO output limits closer to the desired ramp end frequencies. For example set high to 13420.01 MHz and low to 13399.99 MHz.

    For testing it may help to set one trigger to Rising edge RampCLK and the other to Rising Edge RampDir.

    You can then use two different triggers to ramp high and low. The first high will automatically happen when you enable ramp. This was a way I was able to get it to work on my EVM.

    Thanks,

    Vibhu

  • Hello Vibhu,

    Sorry for late reply. I was working on another project this week.

    Your solution seems to be correct. It does work now.
    I noticed that only the  'VCO Output Frequency Low' value has to be lowered and set close  to 13400 MHz. (Start of RAMP0). If it has the same value the VCO frequency moves directly to 14750 MHz on the first trigger.

    My TICS-Pro app does not forward the  direction signal in automatic mode. I used the RampClkPin falling edge for that.

    For generating the 13400 MHz frequency the counter part of the fractional divider evaluates to exactly zero. Maybe this causes the problem? 

    Thanks,

    Ernst