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.

DAC38J84: DAC38J84 chirp using data modulation and NCO

Expert 1585 points

Part Number: DAC38J84

Hello 

I would like to use DAC38J84 in the following manner: 

DACCLK=2GHz

Data rate=250MSPS

INT=x8

External clock

I want to perform chirp modulation using the data from DC to 100MHz, and when the DAC fout reaches 100MHz, I change the NCO freq to 100MHz and start the chirp again data from DC to 100MHz, but now at the DAC output the chirp will from 100 to 200MHz. 

Is this possible (suppose the register write time to the NCO freq is taken in account in the chirp timing)

What would be the phase output? will it remain continuous? Will it remain parabolic? Does the NCO freq update requires a SYNC that can reset or change the phase?

Please advise

Thanks

  • Hi Izik

    Many of the DAC experts are out of office on holiday, but I have notified them of your question.

    They will respond as soon as they can once they're back.

    Best regards,

    Jim B

  • Hi Izik,

    Do you only need a chirp from DC to 200 MHz? Using 2 GHz DACCLK and 8x interpolation, your input data rate is 250 Msps. Accounting for interpolation filter limitations, this would allow 200 MHz of complex BW. You could simply set the NCO to 100 MHz and sweep your input tone from -100 MHz to 100 MHz to achieve a chirp from DC to 200 MHz.

    You can use SYSREF to reset the NCO and synchronize it at a specific time, but there may be limitations on time resolution. You would essentially preload the NCO information into the DAC and trigger SYSREF to reset the NCO to the new frequency. The phase is reset to zero, not continuous. There will also be a delay from SYSREF coming into the DAC to when the NCO is reset, so SYSREF would have to be triggered before the desired frequency change. It sounds complicated and would best be avoided by using the scheme above.

    Regards,
    Matt Guibord
  • Hello Matt

    My aim is to do a chirp with 1GHz BW, using data rate of 250MSPS only and NCO jumps.
    So my data will go from 0 to 100MHz and then NCO jumps to 100MHz, while the data start running again from 0 to 100MHz, but now the chirp is from 100MHz to 200MHz, and so on, eventually generating a 1000MHz chirp with 9 NCO jumps.

    Is this possible (suppose the register write time to the NCO freq is taken in account in the chirp timing)

    What would be the phase output? will it remain continuous? Will it remain parabolic? Does the NCO freq update requires a SYNC that can reset or change the phase?

    Thanks!
  • Hi Izik,

    I addressed some of your questions in my previous response, recopying here with additional details.

    You can use SYSREF to reset the NCO and synchronize it at a specific time, but there may be limitations on time resolution (e.g. Fs/8 resolution). You would need to preload the next NCO frequency information into the DAC using SPI. You can then trigger the NCO frequency update using SYSREF. Upon receiving SYSREF (and after some propagation delay within the DAC) the NCO accumulator will be set to 0 (reset) and the new frequency word will be used. So the phase upon updating the NCO frequency is reset to zero, not continuous. Since there will be a delay from SYSREF coming into the DAC to when the NCO is reset, the SYSREF would have to be triggered before the desired frequency change.

    Assuming that the chirp signal is continuous (without gaps between each 100 MHz chunk), then timing of SYSREF will be critical as well as accounting for the time it takes to update the NCO (SPI writes and SYSREF propagation delays). The NCO update rate will need to be fast enough to account for your chirp sweep time. The SPI write may be quicker if you only use 16-bits (1 SPI register), which may be sufficient if you stick to 100 MHz increments. Then it would require one SPI register write and two SYSREF pulses (NCO frequency is double buffered). One SPI register will require 24 SPI clocks, which is 2.4 us. The SYSREF propagation delay may add another 100 ns or so (don't have exact number). So you're looking at somewhere around 3 us of switching time.

    Note that you can get some relaxation in your switching time if you treat your input signal as 200 MHz BW (as suggested in first post) and sweep -100 MHz to 100 MHz at each NCO frequency. The NCO frequencies would then be [100 MHz, 300 MHz, 500 MHz, 700 MHz, 900 MHz].

    Regards,
    Matt Guibord
  • Hello Matt

    Thank you for your detailed answer.

    Suppose that I can calculate the instantaneous phase of the chirp at the moment that I need to update the NCO. Can I write this phase offset to the NCO phase offset register? Will the NCO phase reset and set to zero and the be set to the phase offset value upon frequency change and SYNC, or will it directly change to the phase offset value?

    Thanks for helping

    Izik

  • Hi Matt

    Can you please help with the question above?

    Thanks

    Izik

  • Hi Izik,

    Sorry for the delay. The phase of the accumulator will reset to the phase programmed in the phase offset register, so yes, you could theoretically program the phase that you want to keep it continuous.

    Regards,
    Matt Guibord