Hi FPGA Reference Designs Teams,
How to generate two tone from dac_dma_setup(fmcSel) ( sine_lut ) or from dds_setup().
In the reference design there is a dual tone generator which generates two tones as two signals for each TX channel. These two signals are summed up and send as one signal to the DAC.
Take a look at dds_setup() function (no-OS/test.c at master · analogdevicesinc/no-OS · GitHub):
// Configure TX1_I_TONE1
dds_set_frequency(0, f1); dds_set_phase(0, 90000); dds_set_scale(0, 0.25);
// Configure TX1_I_TONE2 dds_set_frequency(1, f1); dds_set_phase(1, 90000); dds_set_scale(1, 0.25);
// Configure TX1_Q_TONE1 dds_set_frequency(2, f2); dds_set_phase(2, 0); dds_set_scale(2, 0.25);
// Configure TX1_Q_TONE2 dds_set_frequency(3, f2); dds_set_phase(3, 0); dds_set_scale(3, 0.25);
Thank you Dragos,
I'm successful display the two tone spectrum by setting desire f1 and f2.
Now its clear for me on dds_setup function.
Then I use dac_dma_setup by default code in test.c and observe the spectrum output. As a result I got this weird spectrum output. My expectation is just one peak that represent sine/cosine look up table. Do you have any comment on it? thanks
I committed a fix on the master branch of the No-OS repository. Can you please try again using this new version?
Hi Dragos and Nazrin,
I had same problem. Apperently in NO OS design DAC gain is to high, so power of input signal to IQ modulator is too high (mixers are in non linear regime). I make it work properly by adjusting DAC gain:
you can put those in ad9122_setup functions. Default value in design was 505. Try that above, or put values to 0x0000. You will get two tones with DMA then too.mr_nazrin
Retrieving data ...