Example Code

Sweep Delay between PXIe-5646R and PXIe-5451 in Envelope Tracking Mode for RFIC PA Test (C# .NET)

Products and Environment

This section reflects the products and operating system used to create the example.

To download NI software, including the products shown below, visit ni.com/downloads.

    Software

  • RFIC Test Software

Code and Documents

Attachment

Description

Overview

This is an add-on example for the NI RFIC Test Software.

 

When using the PXIe-5646R and PXIe-5451 in envelope tracking mode, a very precise delay between the two instruments is required to achieve peak efficiency and performance out of a power amplifier (PA). This example allows the user to sweep a range of delays and perform an AMPM measurement at each delay in order to find the optimal delay required for further testing of RF performance.

 

Note: For an equivalent LabVIEW example, please refer to this link: Sweep Delay between PXIe-5646R and PXIe-5451 in Envelope Tracking Mode for RFIC PA Test (LabVIEW)

Description

 Use this solution as reference on how to set up a fast delay sweep with an RFmx AMPM measurement at each configured delay. There are two methods proposed: 

  1. Fine Sweep Only: Sweep from (Initial Delay Estimate - Sweep Range) to (Initial Delay Estimate + Sweep Range) in (Sweep Step) steps
  2. Coarse + Fine Sweep: Perform a coarse sweep to determine a first estimate of the optimal delay. Then perform a smaller sweep with the defined Sweep Step size around the first estimate to find the optimal delay. This method requires fewer steps and is usually faster.

After finishing with the delay sweep, the example will select the optimal delay and perform a RFmx ACP measurement to analyze the DUT's RF ouput performance. Note that many DUT-specific settings are required to be configured before running the example.

Hardware and Software Requirements

Hardware

  • NI PXIe-5646R 
  • NI PXIe-5451
  • DUT (such as a power amplifier) capable of envelope tracking mode

Software

  • NI RFSA 16.0
    • NI RFSA .NET Class Libraries
  • NI RFSG 16.0
    • NI RFSG .NET Class Libraries
  • NI FGEN 16.0
  • NI RFmx SpecAn 2.2
  • NI RFSG Playback Libraries 2.2
  • NI RFIC Test Software 2.1 (required for NI ETSync functionality and VST bitfile)
  • Visual Studio or other C# .NET IDE

Steps to Implement or Execute Code

  1. Unzip and open the Solution RFICExampleET+DelaySweep+ACP.sln
  2. Configure the RFSG, ARB and tracker parameters in the InitializeParameters() function to reflect the hardware setup used.
  3. Configure the RFmx ACP measurement in the in the InitializeParameters() function. Note that the default measurement is configured for an LTE 10MHz waveform (with 2 UTRA and 1 E-UTRA offsets)
  4. Configure the sweep parameters in the InitializeParameters() function. Make sure to select an appropriate initial delay estimate. You can also configure the AMPM measurement. 
    1. dotNET_SweepSelect.png
  5. Run the VI
    1. In Fine Sweep Mode, you should see the AMPM sweep results in the console:dotNET_FineSweep.png
    2. In Coarse + Fine Sweep Mode, you should see the AMPM sweep results in the console:dotNET_CoarseAndFineSweep.png

Additional Information or References

NI RFIC 2.1 Test Software

Xavier

Example code from the Example Code Exchange in the NI Community is licensed with the MIT license.

Comments
TommyDunkz
NI Employee (retired)
on

Hi xavvvv,

 

Thank you for your submission of this example program! This is a really cool use of the RFIC Test Software, and I see a major benefit in sharing programs like these to show off what's possible with our RF libraries--not just in LabVIEW, but also in .NET.

 

I have just a couple of last-minute requests before we push the example live, so that it will conform to the naming & style conventions we typically follow with LabVIEW examples. When you have some time, could you please rebuild the solution with all included files (solution, source, project file, etc.) formatted using full words, no acronyms, and spaces between words? Additionally, avoid using the word 'Example' in the title of a file. So, in this case, we would want to give the main source file 'RFIC Example ET + Delay Sweep + ACP.cs' a different name that elaborates on the acronyms, avoids the word 'example', and clearly describes the functionality of the program.

 

Finally, we request that LabVIEW community examples contain one of these labels:

 

community_example_label.png

 

Could you please include an analogous label as a comment at the top of your main source file? The Overview should be a single sentence, and should describe the main functionality of the application. The formatting will be the same, except of course we won't worry about bolding text, and for the requirements section you can just include the same software requirements you've included here on this page.

 

Once those changes are made, I'll go ahead and push the example live. Thanks again for taking the time to put this together!

 

Cheers,

 

Tom Dunkle

Product Support Engineer -- PXI Software & Instrument Control

National Instruments

Tom D.
Staff Software Engineer
NI