Real-time Phase Compensation Using SCPI

Real-time phase compensation can be performed using remote SCPI commands. SCPI commands are used to select the waveform and set correct sample rate, RMS, and numerology prior to run-time. If the waveform is not configured correctly, error messages may occur.

Some parameters can be changed during run-time (see table below), while others require setting the phase compensation state to off, making the changes, then setting it back on for them to take effect. 

SCPI Function

Run-time setting?

Note

Select ARB Waveform

No 

 

Sample Rate

No

 

RMS

No

 

Numerology

No

 

Windowing Beta 

Yes

 

Auto Frequency

Yes

When Auto Frequency is set on, Frequency will also been overwritten by instrument RF frequency in run-time.

Frequency

Yes

When Auto Frequency is on, setting Frequency will not take effect.

Filter

Yes

 

Filter Bandwidth

Yes

 

List of SCPI Commands

State On | Off

[:SOURce]:RADio:NR5G:PHAse[:STATe] ON|OFF|0|1

[:SOURce]:RADio:NR5G:PHAse[:STATe]?

Turn on or turn off phase compensation application.

Select ARB Waveform

[:SOURce]:RADio:NR5G:PHAse:FILE <"file name">

[:SOURce]:RADio:NR5G:PHAse:FILE?

Select the NR waveform file inside the ARB memory. 

This is the only SCPI that doesn't support run-time setting. If you want to change waveform, you need turn off first, select different waveform then turn on again. 

If you are not sure what waveforms are inside the ARB memory, you can send the SCPI to query it. 

MMEMory:CATalog? "WFM1:"

Sample Rate

[:SOURce]:RADio:NR5G:PHAse:SRATe <value>

[:SOURce]:RADio:NR5G:PHAse:SRATe?

Sets the sample rate of the selected waveform.

RMS

[:SOURce]:RADio:NR5G:PHAse:RMS <value>

[:SOURce]:RADio:NR5G:PHAse:RMS?

Sets the RMS value of the selected waveform.

If you don't know the RMS of your waveform, you can send the following SCPI to query it. 

[:SOURce]:RADio:ARB:HEADER:RMS? <"filename">

Numerology

[:SOURce]:RADio:NR5G:PHAse:NUMerology SCS15K|SCS30K|SCS60K|SCS60KECP|SCS120K|SCS240K

[:SOURce]:RADio:NR5G:PHAse:NUMerology?

Sets the numerology used in the selected waveform. 

Auto Frequency

[:SOURce]:RADio:NR5G:PHAse:AFREQuency 1|0|ON|OFF

[:SOURce]:RADio:NR5G:PHAse:AFREQuency?

Sets whether to use auto frequency mode for phase compensation. If true, the phase compensation uses the RF frequency when the frequency in the font panel changes.  

Frequency

[:SOURce]:RADio:NR5G:PHAse:FREQuency <value>

[:SOURce]:RADio:NR5G:PHAse:FREQuency?

Sets the frequency used for phase compensation. When Auto Frequency is on, Frequency will be overwritten with the instrument RF frequency.  

Windowing Beta 

[:SOURce]:RADio:NR5G:PHAse:BETa <value>

[:SOURce]:RADio:NR5G:PHAse:BETa?

Sets the windowing beta used after phase compensation. 

Filter

[:SOURce]:RADio:NR5G:PHAse:FILter 0|1|OFF|ON

[:SOURce]:RADio:NR5G:PHAse:FILter?

Sets the whether to use baseband filter after phase compensation. 

Filter Bandwidth

[:SOURce]:RADio:NR5G:PHAse:FBANd <value>

[:SOURce]:RADio:NR5G:PHAse:FBANd?

Sets the filter bandwidth if baseband filter is used. 

Only low-pass filter is supported and one RB margin at each side is recommended.

For example, 25 RB is allocated at the Numerology = 1 carrier center, so the recommended filter bandwidth is (25 / 2 + 1) * 12 * 30kHz = 4860000.

Auto Mode

When Phase Compensation is set to Auto (Real-time) and the application is running, changes made to the RF frequency are automatically updated for the phase compensation's radio frequency parameter. A DC Cal is required to achieve a better EVM result.

For MXG/EXG/CXG signal generators, this feature requires firmware version B.0.1.80 or later. 

Procedure

If you do not have an N7631APPC license, the software will not support a live connection to the instrument. Real-time phase compensation can still be achieved, however, with remote SCPI commands using this procedure.

  1. Start the N7631C software, change Phase Compensation to Auto (Real-time) or Manual (Real-time) and set the other parameters as you choose.

    In this tutorial, the default downlink settings are used as an example.

  2. Export the waveform file (.wfm). Click File > Export Waveform Data. This example uses "nr5g.wfm" as the file name.

    Upon clicking Export Waveform Data, the software automatically generates the waveform. So it is not necessary to click Generate prior.

  3. Copy the waveform file to ARB memory (/USER/BBG/SECUREWAVE/ path) via FTP or a USB drive.

  4. Select the waveform using the SCPI command below.

     RADio:NR5G:PHAse:FILE "nr5g"

  5. Set Sample Rate, Numerology, and RMS of the selected waveform, as you choose.

    The default sample rate is 122.88MHz, as shown in the Waveform Setup node. To change it, you must set User Defined Sample Rate Enabled to On.

    The default numerology setting is 30 kHz subcarrier spacing, as shown in the Carrier 1 (DL) node.

    RMS is not shown on the software's GUI. You must send this SCPI to query it

    Radio:ARB:HEADER:RMS? "nr5g.wfm"

    After that, you can send SCPI commands to set these parameters.

    RADio:NR5G:PHAse:SRATe 122880000

    RADio:NR5G:PHAse:NUMerology SCS30K

    RADio:NR5G:PHAse:RMS 0.28086

  6. Set phase compensation mode (Auto Frequency Off/On) and Frequency (if Auto Frequency is Off). This tutorial uses auto mode.

    RADio:NR5G:PHAse:AFREQuency 1

  7. Set filter and windowing parameters using the SCPI commands below. This example uses 30 kHz subcarrier spacing and 273 RB allocated, so the filter bandwidth can be calculated as follows:

    Filter Bandwidth = 30 kHz * (273 + 2) * 12 = 99000000 Hz

    RADio:NR5G:PHAse:FILTer 1

    RADio:NR5G:PHAse:FBAND 99000000

    RADio:NR5G:PHAse:BETa 0.01

  8. Turn on real-time phase compensation using this SCPI command: RADio:NR5G:PHAse ON.

  9. Perform a DC calibration using this SCPI command: CAL:IQ:DC