AnsweredAssumed Answered

AD9371 no-os wrong Tx sample rate?

Question asked by Exray on Jun 5, 2017
Latest reply on Jun 28, 2017 by DragosB

Using ADI's no os for AD9371, I am seeing problems using the tone generator with DAC_SRC_DDS where the tone is at double the configured frequency. I configure single tones (1MHz, 2MHz, 3MHz and 4MHz) on the 4 channels and can see two on TX1 and two on TX2, just at double the frequency.


Tx profile in RadioVerse is Tx 20/100MHz, IQrate 122.88MSPS.  When using the Transmit Data function in RadioVerse and configure a 1MHz tone, I can see that correctly in RadioVerse and on the analyzer.  Sampling frequency is greyed out/hardcoded to 122.88MHz in RadioVerse.


In no-os, the console reports initializing the dac core at 61MHz.  I think that is incorrect and should be double to match RadioVerse.

Please wait...
MCS successful
CLKPLL locked
AD9371 ARM version 4.0.6
PLLs locked
Calibrations completed successfully
RX_XCVR initialization OK
TX_XCVR initialization OK
RX_OS_XCVR initialization OK
DeframerStatus = 0x60
dac_setup dac core initialized (61 MHz).
adc_setup adc core initialized (31 MHz).
deframerStatus (84)


static mykonosTxProfile_t txProfile =
{ /* Tx 20/100MHz, IQrate 122.88MSPS, Dec5 */
DACDIV_2p5, /* The divider used to generate the DAC clock*/
&txFir, /* Pointer to Tx FIR filter structure*/
2, /* The Tx digital FIR filter interpolation (1,2,4)*/
2, /* Tx Halfband1 filter interpolation (1,2)*/
1, /* Tx Halfband2 filter interpolation (1,2)*/
1, /* TxInputHbInterpolation (1,2)*/
122880, /* Tx IQ data rate in kHz*/
20000000, /* Primary Signal BW*/
100000000, /* The Tx RF passband bandwidth for the profile*/
710539, /* The DAC filter 3dB corner in kHz*/
50000, /* Tx BBF 3dB corner in kHz*/
0 /* Enable DPD, only valid for AD9373*/

Currently, no-os produces the output in the attached screenshot (just one tone for simplicity sake), a 2MHz tone instead of 1MHz as configured in headless.c shown in the right.  In the bottom left is the console, to match RadioVerse sample rate, I think it should say:

dac_setup dac core initialized (123 MHz).


To try and match the example output from the wiki, I selected in RadioVerse the Tx 75/200MHz and Rx 100MHz profiles which printed the 123MHz in the console for adc and dac, however I still get the tones at double the configured frequency. 


What would be a cause for DDS tones to come out at double the frequency in no-os that doesn't happen in RadioVerse?