Hi, I am trying to setup AD9082 using ACE. What I am interested in is setup the ADC in FBW mode (JESD204C mode 19)
The setup completes ok but the spectrum looks like this
Can you please check this on your side as well?
AD9082
Recommended for New Designs
The AD9082 mixed signal front-end (MxFE®) is a highly integrated device with a 16-bit, 12 GSPS maximum sample rate, RF digital-to-analog converter (DAC...
Datasheet
AD9082 on Analog.com
AD6643
Recommended for New Designs
The AD6643 is an 11-bit, 200 MSPS/250 MSPS, dual-channel intermediate frequency (IF) receiver specifically designed to support multi-antenna systems in...
Datasheet
AD6643 on Analog.com
Hi, I am trying to setup AD9082 using ACE. What I am interested in is setup the ADC in FBW mode (JESD204C mode 19)
The setup completes ok but the spectrum looks like this
Can you please check this on your side as well?
Umesh,
Could you check whether the data format is set to "Two's Complement" in the Capture settings, and also in DPG Download Lite if used?
-YH
yhkim , thank you for the quick reply. I dont think it is teh data formating but will check. I see your point. What got me confused is, for other modes where the data is decimated, the FFT looked fine, so I didnt have to verify the data formatting. Here is the screenshot with the formatting. it is set to twos complement. interestingly, the data captures continuously fine. i have a feeling this is sw related. I am going to try the API route and see if i can get something different
I may have a platform ready sometime today or tomrrow for testing, but I'm pretty sure I have tested full bandwidth mode before with ACE GUI. I also verified the data capture in full bandwidth mode with API extra software as well with the latest API. Please let me know if you find anything. -YH
Please find the uc46 in the uc_settings.c, which is for 6GHz full bandwidth mode and it is for RX only. Hope that helps.
Yes, ad9082_app.c was modified for uc46 to perform RX only operation.
Umesh, Thanks for the update. It looks like you are using the Visual Analog just for data processing with file input, didn't know you can do it. Cool!
I've seen som instability of ACE at the maximum bit rate, but it usually works well when continuous capture is OK. I'll take a look later and will let you know if I find anything.
-YH
yhkim , yes you certainly can. Just create a new canvas as shown above. I have attached the canvas here. just rename it from .txt to .vac and you can go to town with it
<?xml version="1.0"?> <!--VisualAnalog Canvas File - DO NOT EDIT MANUALLY--> <canvas program_version="1.9.48.1" display_name="AD9082 FFT" s_name="Canvas1" description="" hidden="False" locked="False" securityLevel="Normal"> <BlockList> <Count>7</Count> <Block_0> <Type>ProcessBlockControls.PB_InputFormatter</Type> <Assembly>ProcessBlockControls, Version=2.6.0.1, Culture=neutral, PublicKeyToken=null</Assembly> <Location> <X>432</X> <Y>32</Y> </Location> <Size> <Width>128</Width> <Height>64</Height> </Size> <PortSettings> <InputPort> <Count>1</Count> <Node_0 /> </InputPort> <OutputPort> <Count>1</Count> <Node_0 /> </OutputPort> </PortSettings> <alignment>16</alignment> <resolution>16</resolution> <number_format>Two's Complement</number_format> <doConvert>1</doConvert> <doWeight>1</doWeight> </Block_0> <Block_1> <Type>ProcessBlockControls.PB_Router</Type> <Assembly>ProcessBlockControls, Version=2.6.0.1, Culture=neutral, PublicKeyToken=null</Assembly> <Location> <X>584</X> <Y>32</Y> </Location> <Size> <Width>96</Width> <Height>56</Height> </Size> <PortSettings> <InputPort> <Count>1</Count> <Node_0 /> </InputPort> <OutputPort> <Count>2</Count> <Node_0 /> <Node_1 /> </OutputPort> </PortSettings> </Block_1> <Block_2> <Type>ProcessBlockControls.PB_Window</Type> <Assembly>ProcessBlockControls, Version=2.6.0.1, Culture=neutral, PublicKeyToken=null</Assembly> <Location> <X>704</X> <Y>32</Y> </Location> <Size> <Width>256</Width> <Height>64</Height> </Size> <PortSettings> <InputPort> <Count>1</Count> <Node_0 /> </InputPort> <OutputPort> <Count>1</Count> <Node_0 /> </OutputPort> </PortSettings> <WindowRoutine>wndBH4</WindowRoutine> </Block_2> <Block_3> <Type>ProcessBlockControls.PB_FFT</Type> <Assembly>ProcessBlockControls, Version=2.6.0.1, Culture=neutral, PublicKeyToken=null</Assembly> <Location> <X>984</X> <Y>32</Y> </Location> <Size> <Width>96</Width> <Height>64</Height> </Size> <PortSettings> <InputPort> <Count>1</Count> <Node_0 /> </InputPort> <OutputPort> <Count>1</Count> <Node_0 /> </OutputPort> </PortSettings> </Block_3> <Block_4> <Type>DataAnalysis.Blocks.PB_FFTAnalysis</Type> <Assembly>DataAnalysis.Blocks, Version=2.4.3.0, Culture=neutral, PublicKeyToken=null</Assembly> <Location> <X>1104</X> <Y>32</Y> </Location> <Size> <Width>128</Width> <Height>64</Height> </Size> <data_analysis> <calculations abn="True" nph="True" snr="True" snr_fs="True" sfdr="True" thd="True" sinad="True" /> <advanced name="AD6643 NSR" enabled="False" nsr_mode="0" tw="0" bw="0.22" /> <freq_bands> <freq_band name="DC" symbol="" freq="0" ssb="6" ssb_units="Bins" calc="SpurExclude" power="" locate="Frequency" var="" /> <freq_band name="Fund" symbol="" freq="" ssb="10" ssb_units="Bins" calc="Reference" power="" locate="NextMaxPower" var="fund" /> <freq_band name="Harm 2" symbol="2" freq="2 * fund" ssb="3" ssb_units="Bins" calc="Harmonic" power="" locate="Frequency" var="" /> <freq_band name="Harm 3" symbol="3" freq="3 * fund" ssb="3" ssb_units="Bins" calc="Harmonic" power="" locate="Frequency" var="" /> <freq_band name="Harm 4" symbol="4" freq="4 * fund" ssb="3" ssb_units="Bins" calc="Harmonic" power="" locate="Frequency" var="" /> <freq_band name="Harm 5" symbol="5" freq="5 * fund" ssb="3" ssb_units="Bins" calc="Harmonic" power="" locate="Frequency" var="" /> <freq_band name="Harm 6" symbol="6" freq="6 * fund" ssb="3" ssb_units="Bins" calc="Harmonic" power="" locate="Frequency" var="" /> <freq_band name="Worst Other" symbol="+" freq="" ssb="3" ssb_units="Bins" calc="SpurInclude" power="" locate="NextMaxPower" var="" /> </freq_bands> </data_analysis> </Block_4> <Block_5> <Type>ResultsBlockControls.RB_Graph</Type> <Assembly>ResultsBlockControls, Version=2.4.7.1, Culture=neutral, PublicKeyToken=null</Assembly> <Location> <X>520</X> <Y>184</Y> </Location> <Size> <Width>1200</Width> <Height>704</Height> </Size> <PortSettings> <InputPort> <Count>3</Count> <Node_0 /> <Node_1 /> <Node_2 /> </InputPort> </PortSettings> <display name="AD9082 ADC FFT" append_date="True" append_time="True" /> <graph_settings refresh_mode="Update" /> <data_settings auto_append="False" append_mode="Update" auto_save="False" save_mode="Update" /> <form state="Normal" bounds="{X=1352,Y=449,Width=736,Height=512}" auto_float="False" auto_pic="False" pic_mode="Update" pic_file="" pic_date_time="False" /> <graphs count="2" split_value="0.5"> <graph index="0" highlights="True" labels="True" circle="True" radius="2"> <visible>True</visible> <selected>True</selected> </graph> <graph index="1" highlights="True" labels="True" circle="True" radius="2"> <visible>False</visible> <selected>False</selected> </graph> </graphs> <zoom_method>Zoom_X</zoom_method> <results split_position="234" visible="True" /> <data_list> <data index="0" display_name="ADC0 FFT" device_name="AD9082" comments="" plot_index="-1" results_append="False" results_file_name="" data_save="False" data_file_name="" data_append_date_time="False" /> <data index="1" display_name="Input 2" device_name="" comments="" plot_index="-1" results_append="False" results_file_name="" data_save="False" data_file_name="" data_append_date_time="False" /> <data index="2" display_name="Input 3" device_name="" comments="" plot_index="-1" results_append="False" results_file_name="" data_save="False" data_file_name="" data_append_date_time="False" /> </data_list> </Block_5> <Block_6> <Type>SourceBlockControls.SB_PatternLoader</Type> <Assembly>SourceBlockControls, Version=2.7.3.0, Culture=neutral, PublicKeyToken=null</Assembly> <Location> <X>40</X> <Y>32</Y> </Location> <Size> <Width>376</Width> <Height>184</Height> </Size> <PortSettings> <OutputPort> <Count>1</Count> <Node_0 /> </OutputPort> </PortSettings> <SampleFrequency>1500000000</SampleFrequency> <FileFormat>I/Q - Separate Files</FileFormat> <auto_load>True</auto_load> <File_0>C:\Users\ujayamohan\Documents\Analog_Devices\AD9081_MxFE\api_stuff\capture_L0C0.txt</File_0> <File_1>C:\Users\ujayamohan\Documents\Analog_Devices\AD9081_MxFE\api_stuff\capture_L0C1.txt</File_1> <Loaded>False</Loaded> </Block_6> </BlockList> <WireList> <Count>7</Count> <Wire_0> <Points> <Count>2</Count> <Point_0> <X>583</X> <Y>56</Y> </Point_0> <Point_1> <X>559</X> <Y>56</Y> </Point_1> </Points> </Wire_0> <Wire_1> <Points> <Count>2</Count> <Point_0> <X>983</X> <Y>56</Y> </Point_0> <Point_1> <X>959</X> <Y>56</Y> </Point_1> </Points> </Wire_1> <Wire_2> <Points> <Count>2</Count> <Point_0> <X>1103</X> <Y>56</Y> </Point_0> <Point_1> <X>1079</X> <Y>56</Y> </Point_1> </Points> </Wire_2> <Wire_3> <Points> <Count>2</Count> <Point_0> <X>703</X> <Y>56</Y> </Point_0> <Point_1> <X>679</X> <Y>56</Y> </Point_1> </Points> </Wire_3> <Wire_4> <Points> <Count>6</Count> <Point_0> <X>519</X> <Y>208</Y> </Point_0> <Point_1> <X>440</X> <Y>208</Y> </Point_1> <Point_2> <X>440</X> <Y>104</Y> </Point_2> <Point_3> <X>1240</X> <Y>104</Y> </Point_3> <Point_4> <X>1240</X> <Y>56</Y> </Point_4> <Point_5> <X>1231</X> <Y>56</Y> </Point_5> </Points> </Wire_4> <Wire_5> <Points> <Count>6</Count> <Point_0> <X>519</X> <Y>220</Y> </Point_0> <Point_1> <X>448</X> <Y>220</Y> </Point_1> <Point_2> <X>448</X> <Y>112</Y> </Point_2> <Point_3> <X>688</X> <Y>112</Y> </Point_3> <Point_4> <X>688</X> <Y>68</Y> </Point_4> <Point_5> <X>679</X> <Y>68</Y> </Point_5> </Points> </Wire_5> <Wire_6> <Points> <Count>2</Count> <Point_0> <X>431</X> <Y>56</Y> </Point_0> <Point_1> <X>415</X> <Y>56</Y> </Point_1> </Points> </Wire_6> </WireList> <Connections> <Count>7</Count> <Connection_0> <Wire>0</Wire> <Source> <Block>0</Block> <Node>0</Node> </Source> <Destination> <Block>1</Block> <Node>0</Node> </Destination> </Connection_0> <Connection_1> <Wire>1</Wire> <Source> <Block>2</Block> <Node>0</Node> </Source> <Destination> <Block>3</Block> <Node>0</Node> </Destination> </Connection_1> <Connection_2> <Wire>2</Wire> <Source> <Block>3</Block> <Node>0</Node> </Source> <Destination> <Block>4</Block> <Node>0</Node> </Destination> </Connection_2> <Connection_3> <Wire>3</Wire> <Source> <Block>1</Block> <Node>0</Node> </Source> <Destination> <Block>2</Block> <Node>0</Node> </Destination> </Connection_3> <Connection_4> <Wire>4</Wire> <Source> <Block>4</Block> <Node>0</Node> </Source> <Destination> <Block>5</Block> <Node>0</Node> </Destination> </Connection_4> <Connection_5> <Wire>5</Wire> <Source> <Block>1</Block> <Node>1</Node> </Source> <Destination> <Block>5</Block> <Node>1</Node> </Destination> </Connection_5> <Connection_6> <Wire>6</Wire> <Source> <Block>6</Block> <Node>0</Node> </Source> <Destination> <Block>0</Block> <Node>0</Node> </Destination> </Connection_6> </Connections> </canvas>