Example Code

Multi-Channel Phase Coherent Generation & Acquisition with PXIe-5830/1 IF only

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.


  • RF|Wireless


  • LabVIEW


  • NI RF Device Drivers

    Operating System

  • Windows

    Programming Language

  • LabVIEW G

Code and Documents



Multi-channel phase coherent systems are highly considered in several applications, such as Active Electronically Scanned Arrays for Radar, EW, GNSS and 5G networks,  typically for beam steering, multipath signal propagation, estimating channel parameters and testing antenna arrays. For successful beam shaping and scanning in array systems, it is essential to precisely set the amplitude and phase differences between the element channels.

However, considerable amplitude and phase differences among those channels can occur due to the RF instrumentation connected to each element. 
In this example code we will show how to setup a multi-channel phase coherent system using the PXIe-5830/1 the multi generation/Analysis channels, by building a phase coherent system, based on Vector Signal Transceivers (VST) PXIe 5830/1, covering C/X/K/Ku band, where we will go through the physical system setup and the Software Configuration to run this example.







How to Use

Hardware Connections:


The PXIe-583x module is a 4-slot module, so you can fit up to 4 devices in a single 18-Slot PXI chassis such as PXIe-1095, which is equivalent to 4x4 MIMO system. This can be expanded to Multi-Chassis synchronous system by sharing the Reference Clock and triggers from one chassis to another using Timing and Synchronization Module.
For a single chassis setup, follow the below steps to setup your phase coherent configuration:


  1. Insert your PXIe-583x modules adjacently (side to side) in the chassis
  2. For the PXIe-5831 module setup, follow the steps described in the device getting started manual to configure the PXIe-5820 with the PXIe-3622
  3. Select your Leader (Reference) device (typically the most right or the most left device)
  4. Using mmpx cables of matching length, connect the LO2 OUT of the Reference device to the LO2 IN of the adjacent device (Follower 1), and LO2 OUT of Follower 1 to LO2 IN of its adgacent device (Follower 2). Follow the same to share LO between all devices in your chassis
  5. Using mmpx cables of matching length, connect REF OUT of Leader Device to REF In of Follower 1, then REF OUT of Follower 1 to REF IN of Follower 2, etc...This will share the onboard Ref clock of the Leader with all the Followers. IF you would like to use PXI Reference clock as a reference, you can skip this step and you can configure it using the driver APIs as we will see in the Software section.
  6. The connections should look like this:




Software Setup:


This example is compatible with LabVIEW 2019 and above. To run this example, download the attached code and follow these instructions:

  1. Open the project
  2. Open the Multichannel RFSA Synchronization VI to run phase coherent analysis on up to 4 devices in a single chassis
  3. Set the niRFSA devices on the front panel where the Leader sharing the LO and Ref CLK is the first element of the array
  4. Set your RF parameters (carrier frequency, reference level, IQ rate)
  5. Set the IF port to be used. Potential values are if0 or if1. This sets the same port on all devices to act as a receiving port. To set different values for different devices replace this value by an array
  6. Wire an external generator or use the remaining iF port on one of the devices to generate a CW signal, to a splitter, and connect the splitter output to each on the IF ports selected using matching cables. You can also consider using the Multichannel RFSG Synchronisation VI for this purpose
  7. Set the expected incoming frequency to properly calculate the Phase skew in seconds with respect to that frequency
  8. Set the number of acquisitions to be used to calculate the phase skew measurements. The application will stop after this number is met or after you stop the code
  9. Select the Statistic method to be used for the phase and amplitude skew calculations. Typical value is standard deviation
  10. Run the code
  11. Navigate to the Phase Skew Measurement tab to view the phase difference channel to channel with respect to the reference channel, the phase and amplitude difference histograms as well as the skew values




To run the multichannel RFSG Synchronization VI, follow these steps:

  1. Open the VI
  2. Set the Devices names where the Leader device is set to the first element of the array
  3. Set the Frequency, power level and IQ rate
  4. Set the IF Port to be used as a Tx channel. Similarly like analysis code, the same IF port number is assigned to all devices
  5. Set the tone frequency offset from central frequency and type of waveform
  6. Wire each configured Tx port in loopback to the configured Rx port of same device or cross connection to the adjacent device to measure the generated signal. You can also directly connect the Tx ports to your device under test
  7. Run the code



This example calculates the phase/amplitude skew of the analysis channels. To use the same setup for calculating skew of transmission channels, first you need to equalize the skew on the analysis side by reading the skew values and adjusting the Initial Phase Offset of the acquired signal. Then you perform the previously described steps to measure the Tx channel to channel skew.

Additional Information

The steps described in this document are the foundations of multi-channel phase coherent system. You can then generate complex scenarios and stream them to the VST for generation to stimulate your device under test (DUT) such as multi-channel TRM or beamformer, then use the phase coherent acquisition to capture the DUT response and analyze it onboard on the FPGA or stream it to RAID for offline analysis.

Certain applications i.e. measuring antenna array elements coupling, require not only phase coherent acquisition and generation but also phase alignment between all channels including the Leader device. Such applications require certain level of System Level Calibration to compensate for irregulaties introduced by external components, impedance mismatch, cabling, etc... And also require Flatness correction and compensation for phase linearity errors on the Leader device, so not only we mimic the behavior of the Leder on the followers but also we correct the behavior of the Leader with respect to the specific signal parameters to be used such as central frequency, bandwidth and power levels.







Related Links

NI-TClk Synchronization Overview

How to Setup a Multi-Channel Phase Coherent System With PXIe-583x Vector Signal Transceiver Guide




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