Skip to content

Run the Demonstration (ADRV9002)

nnaufel edited this page May 4, 2022 · 17 revisions

Run the Demonstration

Define the host PC IP address

A wired point to point connection between the host PC and the embedded target is required. Use the DHCP server utility to setup the host and target IP addresses. The target should be powered up for at least 30 seconds before the DHCP server utility is launched.

  • Find the dhcp_server folder which contains the DHCP Server,
  • Right-click the JESD204B_Demo.bat file and select Run As Administrator and agree to let it run (click Yes),
  • Follow the instructions in the DHCP server command window until you arrive to the screen below and select the option that represents the appropriate Ethernet controller. Note You may need to keep pressing the "Enter" key until the "Ethernet" port shows up.

In the example below option 2 is the correct choice:


  • Wait until it starts listening


  • IP address is allocated to the target


Launch IIO Oscilloscope

Note: IIO Oscilloscope creates a .osc_profile.ini file in the home directory. The next time IIO Oscilloscope is opened, the existence of this file delays connection to the target. It is recommended to delete the .osc_profile.ini (if it exists) prior to launching IIO Oscilloscope.

Launch IIO Oscilloscope

Double click the IIO Oscilloscope application icon on the host Windows PC.

Connect to the target

  • Select the Remote Devices option and enter the IP address 192.168.0.2 and click the Refresh button..
  • A successful connection results in discovery of the IIO devices. Press OK to continue.
    (Note that Refresh may have to be clicked more than once if the connection is not successful)

Profile and Stream Configuration Settings

The IIO Oscilloscope includes option to configure stream and profile configurations to select the desired mode of operation for ADRV9002. Users can specify, through the GUI, the stream and profile configuration files to run on that device configuration.

ADRV9002 currently supports the following device configurations:

CMOS-CSSI 1-Lane mode

Download the 1-Lane stream and profile configuration files from the following links respectively:

  1. Stream Configuration File (1-Lane)
  2. Profile Configuration File (1-Lane)
  • Click on the box under Load Stream


  • Navigate to the folder where given configuration files above have been downloaded in the PC. Select the Custom_1Lane_CMOS.bin stream configuration file and click Open.


  • Clear the error message. Press Close


  • Click on the box under Load Profile


  • Navigate to the folder where given configuration files above have been downloaded in the PC. Select the Custom_1Lane_CMOS.json profile configuration file and click Open.


  • Clear the error message. Press Close


CMOS-CSSI 4-Lane mode

Download the 4-Lane stream and profile configuration files from the following links respectively:

  1. Stream Configuration File (4-Lane)
  2. Profile Configuration File (4-Lane)
  • Click on the box under Load Stream


  • Navigate to the folder where given configuration files above have been downloaded in the PC. Select the Custom_4Lane_CMOS.bin stream configuration file and click on Open.


  • Clear the error message. Press Close


  • Click on the box under Load Profile


  • Navigate to the folder where given configuration files above have been downloaded in the PC. Select the Custom_4Lane_CMOS.json profile configuration file and click on Open.


  • Clear the error message. Press Close


Receiver / Transmitter settings

Set the Local Oscillator for the receiver and transmitter to be 2400 MHz. Set the transmitter attenuation to -24 dB.


Transmit DDS Waveforms

The IIO Oscilloscope includes Transmit / Direct Digital Synthesis (DDS) waveform controls. Users specify, through the GUI, a selection of waveforms to be transmitted.

Transmit a One CW tone

  • Select the One CW Tone option in the DDS mode pulldown menu
  • Select an appropriate frequency. 10 kHz is suitable for the 1.92 MSPS sample rate.
  • Select a Scale of -18 dB (default)

View the waveform

View the wave in the time domain:

  • Switch to the Plot window. Add a Plot window if necessary. File --> New Plot
  • In the Plot Channels section select voltage0_i and voltage0_q
  • In the Plot Type section select the Time Domain mode
  • Press the Capture / Stop button for a continuous waveform. Press the Single Shot capture to obtain a snapshot.


View the wave in the frequency domain:

  • In the Plot Type section select the Frequency Domain mode.
  • Select a 16384 FFT Size and set Average to 10.
  • Press the Capture / Stop button for a continuous display of the spectrum.
  • Right click in the display plot and select Peak Markers
    _(Note that your peak marker values may differ from those shown in the image.

Transmit Two CW tones

  • Select the Two CW Tones option in the DDS mode pulldown menu
  • Select appropriate frequencies. 10 and 30 kHz are suitable choices.
  • Select a Scale of -18 dB (default)

View the waveform

View the wave in the time domain:

  • Switch to the Plot window. Add a Plot window if necessary. File --> New Plot
  • In the Plot Channels section select voltage0_i and voltage_q
  • In the Plot Type section select the Time Domain mode
  • Press the Capture / Stop button for a continuous waveform. Press the Single Shot capture to obtain a snapshot.

View the wave in the frequency domain:

  • In the Plot Type section select the Frequency Domain mode.
  • Select a 16384 FFT Size and set Average to 10.
  • Press the Capture / Stop button for a continuous display of the spectrum.
  • Right click in the display plot and select Peak Markers

Transmit Complex waveforms

  • Select the DAC Buffer Output option in the DDS mode pulldown menu
  • Select qam16_20M waveform
  • Select DAC Channels voltage0 and voltage1

View the wave in the frequency domain:

  • In the Plot Type section select the Frequency Domain mode.
  • Select a 4096 FFT Size and set Average to 10.
  • Press the Capture / Stop button for a continuous display of the spectrum.

Change the file selection to LTE20

Change the file selection to Tx_20MHz_245.76Msps_PeakScaling3.0dBFS_ETM1.1_PAR7.5db_Offset0MHz_4Carrier

Software for the Python demonstration

NOTE: This example is demonstrated with an internal loopback configuration enabled on both TX channels in ADRV9002.

There are a few software components that need to be installed in order to run this demonstration successfully:

Install Python 3.7

  • Download Python 3.7 and run the installer

  • A typical installation location will be C:\Users\username\AppData\Local\Programs\Python

  • Edit the Windows System PATH environment variable to add the path to the Python directory

  • Edit the Windows System PATH environment variable to add the path to the Python\Scripts directory

Install PIP

Install LibIIO - API library for IIO

  • Download and run the latest LibIIO installer from the GitHub releases page here

Install PyADI-IIO and matplotlib

  • Open a Windows CMD shell.

      C:\Users\myuser> pip install pyadi-iio
      C:\Users\myuser> python -m pip install -U matplotlib
      C:\Users\myuser> python -m pip install -U scipy
    

Download Python source code

NOTE: Python script, by default, runs on a DDS mode configuration. To use any other TX modes available in the FPGA, use the variable TX_DAC_MODE as shown below and set the value according the instructions provided in the code comment.


  • Run the Python source code. Open a Windows CMD shell

      C:\Users\myuser\pyadi-iio\examples> python adrv9002_example.py
    


This capture shows a DDS single tone waveform with its I and Q components at a -10kHz frequency and a 0.9 scale value.


Software for the C demonstration

NOTE: This example is demonstrated with an internal loopback configuration enabled on both TX channels in ADRV9002.

The C examples provided are only tested on a Linux environment as mentioned here. The following example is demonstrated using the Arrow Ubuntu-64bit VM provided in the build prerequisites here.

There are a few software components that need to be installed in order to run this demonstration successfully:

Install LibIIO - API library for IIO

  • Follow this tutorial to directly install LibIIO dependencies on the host machine.

Run the C programs

NOTE: C program, by default, runs on a DDS mode configuration. To use any other TX modes available in the FPGA, use the variable TX_DAC_MODE as shown below and set the value according the instructions provided in the code comment.


  • Compile the C source code (Use -liio flag to dynamically link the LibIIO libraries)

      $ gcc adrv9002-iiostream.c -o adrv9002-iiostream -liio
    


  • Run the C executable (use your relevant target IP address here)

      $ ./adrv9002-iiostream ip:192.168.0.2
    


Software for the MATLAB demonstration

NOTE: This example is demonstrated with an internal loopback configuration enabled on both TX channels in ADRV9002.

This demonstration requires a licensed version of MATLAB and Simulink along with the Communication Toolbox installed.

There are a few software components that need to be installed in order to run this demonstration successfully:

Install MATLAB

Install LibIIO - API library for IIO

  • Download and run the LibIIO installer from the GitHub releases page here

Run MATLAB

  • Download the MATLAB source for DDS Single Tone demo from the github repository. Demo examples for DAC/DMA Buffer and DDS Dual Tone signals are also available on the respective links as per desired application.

  • Open the Simulink model DAQ9002.slx file


  • Double click on the system object block of adrv9002-phy. Set your relevant target IP Address in the "IP Address".


  • Double click on the system object block of axi-adrv9002-tx-lpc. Set your relevant target IP Address in the "IP Address".


  • Set your preferred stop time or keep it at default (inf) and run the simulation to see waveforms

The following capture shows a DDS single tone waveform on both channels. Channel 1 has I and Q components at a 5kHz frequency at a 0.9 scale value while Channel 2 has 10kHz frequency at a 0.5 scale value.


The following capture shows the FFT output of the I channel of Channel 1 at 5kHz frequency from the Spectrum Analyser.


NOTE: Output shown here is of only the DDS generated single tone waveforms. Examples for DMA/DAC Buffer and DDS Dual Tone signals have also been provided that can be utilized based on the desired application.

Shutting down the demo

  • Power down the target. Type the following at the terminal prompt

      $ poweroff  
    
  • Wait until the linux terminal shows

      $ reboot : System Halted
    
  • Close out IIO Oscilloscope and all associated windows


Prev- Install Required Software

Next Steps -
      Explore the ADRV9002 Platform Architecture
      Build the ADRV9002 Example Design

Return to Quick Start Guide Table of Contents
Return to ADRV9002 Platform User Guide
Return to Arrow High-Speed Converter Platforms Home

Clone this wiki locally