# AD9164

I have a couple of questions. I still haven't started working on the board yet. How exactly do you obtain the desired frequency using the NCO modes? and what is the ideal step-size that should be taken in the binary phase accumulators for obtaining desired frequency? also, what impact does the SPI frequency have on the desired output frequency and what's the relationship?
Additionally, which interpolation mode do you recommend i run to obtain highest possible frequency?
I am new to this field, please do help answer my questions. Thanks in advance.

## Top Replies

Parents
• Hi rf69,

I would propose going through the user guide. Also reading through the relevant datasheet sections - most of your questions are already covered in the documentation.

"How exactly do you obtain the desired frequency using the NCO modes?"

An NCO is a digital modulator. If you feed DC into an RF mixer (or modulator) it will output its LO frequency with an amplitude proportional to the input DC level. For the NCO, the LO frequency is set by the FTW (phase accumulator period).

"what is the ideal step-size that should be taken in the binary phase accumulators for obtaining desired frequency?"

There is a formula in the datasheet. In part, the answer depends if you intend to use modulus or not.

"what impact does the SPI frequency have on the desired output frequency and what's the relationship? "

none whatsoever. SPI is asynchronous relative to all the clock domains on chip...... Its clock only tells the receiver when to sample the SPI data, for storage in the register.

"which interpolation mode do you recommend i run to obtain highest possible frequency?"

See the Clock Relationships section in the datasheet. Fdac = interpolation * datarate. Then in the NCO section, note that Fdac is also the running frequency of the NCO, which sets the max frequency.

In NCO-only mode you could pick any interpolation you would like. If running a JESD204B link to send data, you would need to set it according to the datarate and the desired DAC rate (Fdac). Lastly, if you use the FIR85 interpolator you could double Fdac (relative to what you provide as an input).

Hopefully this helps to get you going. But please read through the datasheet - if you are new to the field you will find lots of insights and terminology that can lead to further research online. And if something is unclear please let me know.

Landsman

• Thanks a lot for writing back.

An NCO is a digital modulator. If you feed DC into an RF mixer (or modulator) it will output its LO frequency with an amplitude proportional to the input DC level. For the NCO, the LO frequency is set by the FTW (phase accumulator period).

could you explain this in more detail? additionally, how many usable registers does each NCO have? By usable, i mean data can be loaded on to these registers.

There is a formula in the datasheet. In part, the answer depends if you intend to use modulus or not.

I'm trying to obtain a frequency of 4 Ghz and the relationship is fn=f1+n(del f) right? i couldn't find any formula like this in the datasheet. Everything else i understood pretty well from the user guide.

Maybe I'll get more clarity once I start working on the evaluation board.
Thanks in advance.

• Also I went through the data sheet and I still don't quite get how the FTW controls the frequency. I looked on a lot of sources for clarity on this subject and couldn't find anything that explained it in a well detailed manner. I kinda understand how it works but I'm not entirely sure. If possible, please send resources for me to understand the working of the various NCO modes. Thanks in advance.

• Hi rf69,

For the first two questions, I would recommend the excellent (classic) books by David Pozar and Thomas Lee. In particular "Microwave Engineering" by Pozar. The NCO in the AD9164 is designed to act as a digital IQ modulator, as well as a DDS if the user is only interested to generate a sinewave of a specific amplitude (at times referred to as "NCO-only mode").

For your last question,

AD9164 (Rev. D) (analog.com)

Please review pp 56-58. On page 57 there is a link to AN-953, which has lots more detail on what a Modulus DDS is. On the same page there is this formula: Knowing Fdac and your target Fcarrier, you can solve for a value for (X+A/B). with any DDS, If you do not need the accuracy of a modulus you can set A=0 and B=max(). Which leaves only X to solve for. X is the FTW.

in the datasheet we assume that most user has familiarity with what an NCO is, and so we simply provide a formula relating the FTW to Fcarrier, with descriptions of the associated register fields.

Landsman

• Thank you so much. Everything makes so much more sense now. Will definitely check the textbook out.
Just one last question.
Can you please explain the math here(Page 57 of data sheet)?

Consider the case in which fDAC = 2500 MHz and the desired value of fCARRIER is 250 MHz. This scenario synthesizes an output frequency that is not a power of two submultiple of the sample rate, namely fCARRIER = (1/10) fDAC, which is not possible with a typical accumulator-based DDS. The frequency ratio, fCARRIER/fDAC, leads directly to M and N, which are determined by reducing the fraction (250,000,000/2,500,000,000) to its lowest terms, that is, M/N = 250,000,000/2,500,000,000 = 1/10 Therefore, M = 1 and N = 10. After calculation, X = 28147497671065, A = 3, and B = 5.

Reply
• Thank you so much. Everything makes so much more sense now. Will definitely check the textbook out.
Just one last question.
Can you please explain the math here(Page 57 of data sheet)?

Consider the case in which fDAC = 2500 MHz and the desired value of fCARRIER is 250 MHz. This scenario synthesizes an output frequency that is not a power of two submultiple of the sample rate, namely fCARRIER = (1/10) fDAC, which is not possible with a typical accumulator-based DDS. The frequency ratio, fCARRIER/fDAC, leads directly to M and N, which are determined by reducing the fraction (250,000,000/2,500,000,000) to its lowest terms, that is, M/N = 250,000,000/2,500,000,000 = 1/10 Therefore, M = 1 and N = 10. After calculation, X = 28147497671065, A = 3, and B = 5.

Children
No Data