Limited Support for ARB Memory Catalog
File Types and Directory Structures
File Location and Default Folders
Waveform Sample Rate Header Field
The Arb Memory viewer is not available on the GUI.
:MMEMORY:CATalog query returns only used and free memory sizes when it is queried with Arb memory MSUS i.e. "SWFMn" or "WFMn".
:MMEMory:DELete does not support Arb Memory
:MMEMory:COPY and :MMEMory:MOVE cannot copy or move files from Arb Memory to non-volatile memory.
The primary use case supported in the VXG signal generator is playing waveforms on non-volatile memory. When a non-volatile waveform is selected by Waveform File setting, the waveform is uploaded to the arb memory and played. If there is not enough free Arb Memory, then upload fails and the Arb memory needs to be cleared. Note that deleting waveforms in arb memory e.g. :MMEMory:DELete "SWFM1:file_name" is not supported.
Option |
Size |
---|---|
None |
256 MSa |
B1X, B2X |
64 MSa |
B5X, R10, R25 |
256 MSa |
M05 |
512 MSa |
M10 |
1024 MSa |
M20 |
2048 MSa |
M40 |
4096 MSa |
Format |
File Name Variable |
Example |
---|---|---|
Format 1 |
"<file name>" |
"Test_Data" |
Format 2 |
"<msus:file name>" |
"SEQ:Test_Data" |
The variable "<msus>" enables a command to be file type specific when working with user files. Some commands use it as the only command parameter, while others can use it in conjunction with a file name when a command is not file type specific. When used with a file name, it is similar to Format 2 in the table above. The difference is the file type specifier (msus) occupies its own variable and is not part of the file name syntax.
File System |
MSUS Path |
---|---|
SWFM<channel> - volatile secure waveform file |
SWFM<channel>: |
NVHDR - non-volatile arbitrary waveform header file |
NVHDR: |
NVMKR - non-volatile arbitrary waveform marker file |
NVMKR: |
NVWFM - non-volatile arbitrary waveform file |
NVWFM: |
SNVWFM - non-volatile arbitrary secure waveform file |
SNVWFM: |
NVCSVWFM - non-volatile CSV arbitrary waveform file |
NVCSVWFM: |
NVMKR<channel> - non-volatile arbitrary waveform marker file |
NVMKR<channel>: |
NVWFM<channel> - non-volatile arbitrary waveform file |
NVWFM<channel>: |
SNVWFM<channel> - non-volatile arbitrary secure waveform file |
SNVWFM<channel>: |
NVCSVWFM<channel> - non-volatile CSV arbitrary waveform file |
NVCSVWFM<channel>: |
STATE – state file (*.sgen) |
STATE: |
LIST - sweep list file |
LIST: |
SEQ - ARB sequence file |
SEQ: |
SEQ<channel> - ARB sequence file |
SEQ<channel>: |
File System and MSUS Path for arbitrary memory has suffix number from 1 to <channel> which represents what arb memory the file is related to. For example,
MEMory:DATA SWFM1, …
sends a waveform file to arb memory of Signal block 1.
Starting with A.02.00, MSUS for non-volatile memory can have a suffix number from 1 to <channel>. The user can save the data to the separate folder created for the specified channel number and can delete files in them using :MMEMory:DELete:NVWFM:CHAN<channel> and :MMEMory:DELete:SEQ:CHANnel<channel>.
The default folder which :MEMory and :MMEMory commands and queries access when MSUS is not used is as follows:
<Documents>\Keysight\PathWave\SignalGenerator
When relative path is used, it is based on this folder. For example,
:MMEMory:DATA "UserFolder\data.wfm",...
saves data.wfm under:
<Documents>\Keysight\PathWave\SignalGenerator\UserFolder
Absolute paths are also accepted. Thus, this command is valid:
:MMEMory:DATA "D:\UserData\data.wfm",...
Each MSUS has its folder and extension as shown in the table below. For example,
:MMEMory:DATA "SNVWFM:MyWaveform"...
creates MyWaveform.wfm under:
<Documents>\Keysight\PathWave\SignalGenerator\Waveforms
because the folder and extension associated with SNVWFM are Waveform and wfm respectively. Note that file extension is not included in the parameter of the command when MSUS is used.
File System |
MSUS Path |
Folder |
Extension |
---|---|---|---|
NVHDR - non-volatile arbitrary waveform header file |
NVHDR: |
Waveforms |
whd |
NVMKR - non-volatile arbitrary waveform marker file |
NVMKR: |
Waveforms |
wmk |
NVMKR<channel> - non-volatile arbitrary waveform marker file under predefined channel folder |
NVMKR<channel>: e.g. NVMKR2: |
Waveforms\Channel<channel> e.g. Waveforms\Channel2 |
wmk |
NVWFM - non-volatile arbitrary waveform file |
NVWFM: |
Waveforms |
wiq |
NVWFM<channel> - non-volatile arbitrary waveform file under predefined channel folder |
NVWFM<channel>: |
Waveforms\Channel<channel>
|
wiq |
SNVWFM - non-volatile arbitrary secure waveform file |
SNVWFM: |
Waveforms |
wfm |
SNVWFM<channel> - non-volatile arbitrary waveform file under predefined channel folder |
SNVWFM<channel>: |
Waveforms\Channel<channel>
|
wfm |
NVCSVWFM - non-volatile arbitrary CSV waveform file |
NVCSVWFM: |
Waveforms |
csv |
NVCSVWFM<channel> - non-volatile arbitrary CSV waveform file under predefined channel folder |
NVCSVWFM<channel>: |
Waveforms\Channel<channel>
|
csv |
SEQ - sequence file |
SEQ: |
Sequences |
seq |
SEQ<channel> - non-volatile sequence file under predefined channel folder |
SEQ<channel>: |
Sequences\Channel<channel> |
seq |
MTONE |
MTONE: |
Multitones |
txt |
LIST – List Sweep setting file | LIST: | ListSweeps | lst |
When relative path is specified as file location on non-volatile memory, MMEM commands try to determine the destination folder from its extension as defined in the table below. For example,
:MMEMory:DATA "MyWaveform.wfm",...
creates the waveform file under:
D:\Users\Instrument\Documents\Keysight\PathWave\SignalGenerator\Waveforms
Note that common extensions such as csv are not supported.
The following table shows extensions supported by Auto Folder Selection.
Extension |
Folder |
---|---|
whd |
Waveforms |
wmk |
Waveforms |
wiq |
Waveforms |
wfm |
Waveforms |
sgen |
States |
s2p |
Corrections |
uflat |
Corrections |
lst | ListSweeps |
tdlx | Fading |
Outputs a list of files that can be specified with MSUS. For example, files with a wfm extension in the Waveforms folder under:
<Documents>\Keysight\PathWave\SignalGenerator
are returned as part of the result and sgen files in other folders are not included. The return data are in the following form:
<mem used>,<mem free>,"<file listing>"
The signal generator returns the two memory usage parameters and as many file listings as there are files in the memory subsystem. Each file listing parameter is in the following form:
"<file name,file type,file size>"
Refer to File Location and Default Folders for information on MSUS and Folder.
SCPI Command |
:MEMory:CATalog[:ALL]? |
SCPI Example |
MEM:CAT? |
Initial S/W Revision |
A.01.00 |
Returns the size of the specified file, in bytes. If the file is not found, an error message is returned.
SCPI Command |
:MEMory:SIZE? "<file name>" |
SCPI Example |
MEM:SIZE? "myWaveform" |
Notes |
Value returned is -1 if the file does not exist or if the MSUS or directory is invalid, and raises the error -257,"File name error". |
Initial S/W Revision |
A.14.00 |
Appends data to an existing file stored in signal generator memory.
"<file name>" This variable names the destination file and directory path.
<data block> This parameter represents the data and file length parameters. The data in the file is represented by the <data block> variable. The file length parameters are used by the signal generator for allocating memory.
SCPI Command |
:MEMory:DATA:APPend "<file name>",<data block> |
SCPI Example |
MEM:DATA:APPend "SNVWFM:IQ_Data",#14Y9oL |
Notes | When appending to ARB memory file types, an error is raised if appending data is not a multiple of 64 Bytes. |
Initial S/W Revision |
A.01.00 |
Modified S/W Revision | A.16.00 – Added support for appending to ARB memory file types |
Clears all non-volatile user files under the default folder.
SCPI Command |
:MEMory:DELete:ALL |
SCPI Example |
MEM:DEL:ALL |
Initial S/W Revision |
A.01.00 |
Clears the user file system of "<file name>".
Refer to File Name Variables.
When deleting a waveform from non-volatile memory (NVWFM), the marker file, associated with the waveform file, will also be deleted.
SCPI Command |
:MEMory:DELete[:NAME] "<file name>" |
SCPI Example |
MEM:DEL "SNVWFM:IQ_Data" |
Initial S/W Revision |
A.01.00 |
Deletes all sequence files in:
<Documents>\Keysight\PathWave\SignalGenerator\Sequences
This command does not delete the files in the sub-folders.
SCPI Command |
:MEMory:DELete:SEQ |
SCPI Example |
MEM:DEL:SEQ |
Initial S/W Revision |
A.02.00 |
Deletes all the sequence files in:
<Documents>\Keysight\PathWave\SignalGenerator\Sequences\Channel<channel>
This command doesn’t delete the files in the sub-folders.
SCPI Command |
:MEMory:DELete:SEQ:CHANnel<channel> |
SCPI Example |
MEM:DEL:SEQ:CHAN1 |
Initial S/W Revision |
A.02.00 |
Remote command only.
Sets the RMS (root mean square) in the specified header. The RMS is specified in normalized linear units with 1 as full scale on I or Q, therefore the largest RMS that can be specified is the square root of 2 (1.414213562). If this value is not specified in advance, then it will be calculated at waveform selection time. The calculation ignores two or more zero I/Q samples in a row.
If the waveform has long rise/fall times, a DC offset, or noise already added to it (for a bursted signal), the RMS calculation will be inaccurate for power setting purposes.
SCPI Command |
:MEMory:WAVeform:HEADer:RMS "<file_name>",<value>|UNSPecified :MEMory:WAVeform:HEADer:RMS? "<file_name>" |
SCPI Example |
:MEM:WAV:HEAD:RMS "file",0.33 :MEM:WAV:HEAD:RMS? "file" |
Notes |
If the value has never been explicitly specified, it will be UNSPecified. |
Min |
0 |
Max |
1.414213562 |
Resolution |
Precision of a 64-bit double (IEEE 754-2008 binary64). |
Initial S/W Revision |
A.12.00 |
Remote command only.
This feature allows modification of the header field that specifies the sample rate of the waveform.
SCPI Command |
:MEMory:WAVeform:HEADer:SAMPle:RATE "<file_name>",<sampleRate>|UNSPecified :MEMory:WAVeform:HEADer:SAMPle:RATE? "<file_name>" |
SCPI Example |
:MEM:WAV:HEAD:SAMP:RATE "file",100MHZ :MEM:WAV:HEAD:SAMP:RATE? "file" |
Notes |
If the value has never been explicitly specified, it will be UNSPecified. |
Min |
0 Hz |
Max |
3 GHz |
Resolution |
Precision of a 64-bit double (IEEE 754-2008 binary64). Usable resolution depends on instrument and feature that uses this value. |
Initial S/W Revision |
A.12.00 |
Outputs a list of the files from the specified file system. The variable "<msus>" (mass storage unit specifier) represents a file system or folder path. The file systems and types are shown in File Types and Directory Structures.
The following table shows <msus> examples.
<msus> |
Return |
SNVWFM |
Secure waveform files in SignalGenerator\Waveforms folder |
NVWFM |
Non-secure waveform files in SignalGenerator\Waveforms folder |
SWFM1 |
Waveform segments in the Arb memory of the first channel |
C:\Temp |
All files in C:\Temp folder |
.\Waveforms |
All files in SignalGenerator\Waveforms folder |
The return data will be in the following form:
<mem used>,<mem free>,"<file listing>"
The signal generator will return the two memory usage parameters in bytes and listings of all files in the specified file system. Each file listing will be in the following format:
"<file name,file type,file size>"
SCPI Command |
:MMEMory:CATalog? "<msus>" |
SCPI Example |
MMEM:CAT? "SNVWFM:" |
Initial S/W Revision |
A.01.00 |
Makes a duplicate of the requested file. Refer to Limited Support for ARB Memory Catalog.
Copy from arb memory to non-volatile memory is NOT supported, e.g. copy from SWFMn to SNVWFM.
SCPI Command |
:MMEMory:COPY "<file name>","<file name>" |
SCPI Example |
MMEM:COPY "SNVWFM:IQ_DATA@SNVWFM","SWFM1:Test_DATA" |
Backwards Compatibility SCPI |
:MEMory:COPY[:NAME] !alias command |
Initial S/W Revision |
A.01.00 |
Loads data into signal generator memory using the <data_block> parameter and saves the data to a file designated by the "<file_name>" variable. The query returns the file contents of the file as a datablock.
"<file name>" This variable names the destination file, including the directory path.
<data block> This parameter represents the data and file length parameters. The data in the file is represented by the <data block> variable.
Writing the waveform file automatically deletes the header and marker files and secure waveforms. Writing a secure waveform deletes the non-secure waveform, header and markers with the same name.
Queries for arb memory file type are NOT supported, e.g. SWFMn, WFMn.
SCPI Command |
:MMEMory:DATA "<file name>",<data block> :MMEMory:DATA? "<file name>" |
SCPI Example |
MMEM:DATA "SNVWFM:IQ_Data",#210Qaz37pY9oL MMEM:DATA? "SNVWFM:IQ_Data" |
Backwards Compatibility SCPI |
:MEMory:DATA !alias command |
Initial S/W Revision |
A.01.00 |
Clears the user file system of all the files in the folder :
D:\Users\Instrument\Documents\Keysight\PathWave\SignalGenerator\Waveforms
This command does not delete the files in the sub-folders.
SCPI Command |
:MMEMory:DELete:NVWFm |
SCPI Example |
MMEM:DEL:NVWF |
Initial S/W Revision |
A.01.00 |
Clears the user file system of all the files in the folder:
<Documents>\Keysight\PathWave\SignalGenerator\Waveforms\Channel<channel>
This command does not delete the files in the sub-folders.
SCPI Command |
:MMEMory:DELete:NVWFm:CHANnel<channel> |
SCPI Example |
MMEM:DEL:NVWF:CHAN1 |
Initial S/W Revision |
A.02.00 |
Clears the user file system of all volatile arbitrary waveform files stored on the nth arb memory module. This command clears both secure and non-secure waveform files on the selected volatile arb memory.
SCPI Command |
:MMEMory:DELete:WFM<channel> |
SCPI Example |
MMEM:DEL:WFM |
Initial S/W Revision |
A.01.00 |
Clears the user file system of "<file name>" with the option of specifying the file system separately.
If the optional variable "<msus>" is omitted, the file name needs to include the file system extension.
When deleting a waveform from non-volatile memory (NVWFM), the marker file associated with the waveform file will also be deleted.
SCPI Command |
:MMEMory:DELete[:NAME] "<file name>",["<msus>"] |
SCPI Example |
MMEM:DEL "MyWaveform","SNVWFM:" |
Initial S/W Revision |
A.01.00 |
Renames the requested file in the memory catalog. Refer to Limited Support for ARB Memory Catalog.
This command is only a rename command and works only with the same msus. This command does not support files on volatile (Arb) memory.
SCPI Command |
:MMEMory:MOVE <src_file>,<dest_file> |
SCPI Example |
MMEM:MOVE "SNVWFM:OLD_DATA","SNVWFM:NEW_DATA" |
Backwards Compatibility SCPI |
:MEMory:MOVE !alias command |
Initial S/W Revision |
A.01.00 |