I need to translate a frequency band generated by a DDFS designed in a FPGA (using Xilinx DDS Compiler). My output to the NCO is in I/Q format. I chose to use a NCO to perform the frequency shift but I am wondering what is the best solution to do this:

  • Is it better to define the frequency band generated by the DDFS around the center frequency 0 Hz and defining in the NCO the center frequency?


  • Is it better to define the frequency band from 0 Hz and shifting it using the startband frequency?

And why?

In the DDS Compiler documentation, p.27, example 2 provides the way to describe negative frequency by using aliased positive frequency (Fs + (negative frequency)). But as these frequencies are high and close to Fs clock, will there be enough data points to correctly describe the signals for these frequencies?

  • $\begingroup$ A DDS usually refers to the combination of an NCO with an ADC, is that the case or are you completely digital within this same FPGA implementation? If that is the case, why would you make another NCO to translate a single IQ complex tone that another NCO is creating instead of just chaning the original NCO directly? If it is analog then there is a sampling step you are not describing. Is your signal of interest just a single tone or are you modulating it? What is the modulation bandwidth and what is your sampling rate? $\endgroup$ Jun 9, 2020 at 11:32
  • $\begingroup$ And regarding the use of undersampling, this may help you: dsp.stackexchange.com/questions/54537/… $\endgroup$ Jun 9, 2020 at 12:07


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.