Post Go back to editing

TES Setup for clock changes and related questions

Thread Summary

The user is migrating a custom application from the AD9361 to the ADRV9003 for low-power emissions testing. Key concerns include operating below 3 GHz, clock settings, and configuration for multiple frequencies. The final answer clarifies that the ADRV9003 can operate below 3 GHz, the dataport sample rate and interface rate should be the same, and the Fast Frequency Hopping feature can be used for scanning multiple frequencies without full reconfiguration. The user will proceed with the ADRV9003, purchase an EVAL board, and use TES to generate configuration files.
AI Generated Content

Greetings;


Point of Reference: Developed a custom application based upon the ad9361_iiostream.c application to run on a Linux based setup (ZED Board + RFCOMMS4 Eval Board). Our application is for "test and measurement", receive only, where we are using this device to check for very low power emissions from electronic devices. We will collect I/Q samples from a specific frequency, with a specified bandwidth (very narrow).
We are checking a number (> 20) specific frequencies ni a loop, storing the information for later analysis, rinse and repeat. For each different frequency we are collecting data from, the only changes we make to the chip on each pass are: bandwidth and RX_LO settings, everything else is a constant.

We are migrating this design to use the ADRV9003, for a number of reasons. I was provided a pointer to the ADRV9002-iiostream.c as a similar reference. This seems to be very similar to what was used for the AD9364.

In a recent post answered by M_Bugajski, he suggested I use TES to generate configuration information for our proposed setup, wich has a different REF CLK. I installed the TES and did some poking around.
Based upon this, I have the following questions below.

From the main.c:
/* */
/* Silicon Revision: Presumed C0*/
/* */
/* Tx / Rx optimal carrier frequencies: 3 GHz to 6 GHz*/
/* External LO optimal frequencies: 6 GHz to 12 GHz*/
/* */
/* FPGA: v0.0.0*/
/* Device Driver API: v0.0.0*/
/* Device Driver Client: v48.34.4*/
/* Firmware: v0.18.1.4*/
/* Profile Generator: v0.47.0.0*/
/* Stream Generator Assembly: v0.7.8.0*/
/* Transceiver Evaluation Software: v0.18.1*/
/* ADRV9001 Plugin: v0.18.1*/

Connection Tab:
a) TES is set for Tx/Rx Optimal Carrier Frequencies between 3GHz to 6 GHz. Does this possibly cause some issues when trying to configure for a setup/system that will operate only between 30MHz and 1.1GHz?
- A couple of times I got an error dialog saying the value was not recommended below 3GHz.

Device Configuration:
b) Dataport Sample Rate vs. Interface Rate? Are these the same? Can they be different? Why would one do this?

Clocks:
c) Set the Device clock Input to 49.152 MHz. The Clock Output has a /2 setup, does this matter??
d) Processor Clock Divisor: for the internal ARM-M4??
e) does it run at the Device Clock Input rate? if yes, how does this affect overall system performance?

Carriers:
- when designing a radio, I can see where this would be applicable. However, for our application, we are tuning to different RX frequencies (i.e. carriers).
f) What does this default value of 900 MHz represent inside the chip?
g) Does it affect the ability to tune from 30MHz to 1.1GHz? Is this different than the Local Oscillator setting?
h) Intermediate Frequency - what is this 490KHz default value represent?
i) Does this mean that the AFE is only down-converting to this IF frequency? Rather than baseband (0 Hz)??

Radio:
j) The ADC rate (defalts to LOW) - is this independent from the other clocking in the system?
k) What is the lowest possible frequency for the Filter?
- Second Order can be set to 4.74MHz for -1dB freq, 6.70 for -3dB freq

General:
l) output from TES seems to be using the underlying SDK API's. If one is using libiio, would alot of this be hidden "under the hood"?
m) are there libiio call specifically for updating these configuration structures? Or would code need to be added to call the Linux Driver API's using the higher level structures?
n) is this initialization a "one time" setup for the part? if the Carrier Frequency has no bearing, then I would say yes, if not, then there maybe a problem with how we plan to use this device, if we need to continually do this level of configuration for each scanned frequency.

Thank you for your time and expertise.

Regards,

Stephen Beckwith

Thread Notes