AWG waveform editing and downloading optimization method and device

Through the AWG waveform editing and download optimization methods, the problem of large storage space occupied by waveform files and easy data errors or loss during downloading is solved, and more efficient memory footprint and data security are achieved during storage and downloading.

CN114077781BActive Publication Date: 2025-03-18CHINAINSTRU & QUANTUMTECH (HEFEI) CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202010827190.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-08-17
Publication Date
2025-03-18
Estimated Expiration
2040-08-17

AI Technical Summary

Technical Problem

In the prior art, waveform files occupy a large storage space, and data errors are prone to occur during downloading or exceeding the hardware reception range, resulting in waveform files being lost.

Method used

A method of AWG waveform editing and downloading optimization is proposed. By editing the WAVE collection based on a preset function library, and defining the playback order of the sequence through the preset external command SEQ, parsing out the composition of the sub-sequence collection and each sequence waveform, and generating data files and description files. Then, negative feedback verification is performed based on the number of data interface channels and storage capacity of the hardware to ensure that the capacity of the data file does not exceed the hardware storage capacity, and avoid data errors or loss.

Benefits of technology

It occupies a small memory when storing waveforms, and there is negative feedback verification before data issuance, which effectively avoids data errors or exceeds the hardware reception range and prevents the loss of waveform files.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114077781B_ABST
    Figure CN114077781B_ABST
Patent Text Reader

Abstract

The present application discloses an AWG waveform editing and downloading optimization method and device, wherein the method comprises the following steps: editing a WAVE set based on a preset function library, and defining the sequence playback order through a preset external command SEQ, so as to assign the sequence defined by the ADVS statement and the SEQ statement to the corresponding channel for waveform editing; parsing the WAVE set, and according to the ADVS and SEQ statements, parsing the composition of the subsequence set and each sequence waveform to obtain a data file and a description file; extracting the number of data interface channels and storage capacity of the hardware, when the number of data interface channels used by the description file is less than or equal to the number of data interface channels of the external device, and the capacity of the data file is less than or equal to the hardware storage capacity, according to the OUT assignment, the corresponding waveform set and sequence playback mode are downloaded to the hardware for execution. This method can effectively avoid data errors or waveform file loss caused by exceeding the receiving range of the external device.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of waveform downloading, and in particular to an AWG (Arbitrary Function Generator) waveform editing and downloading optimization method and device. Background Art

[0002] AWG is the best instrument for simulation experiments. Arbitrary waveform generator is a type of signal source, which has all the characteristics of signal source. Signal source mainly provides the required known signal (various waveforms) to the circuit under test, and then uses other instruments to measure the parameters of interest. It can be seen that the signal source does not measure any parameters in electronic experiments and test processing, but simulates various test signals according to the user's requirements and provides them to the circuit under test to meet the test needs.

[0003] However, current waveform files often take up a large storage space. In the process of downloading waveform files to hardware, data errors are prone to occur or the waveform files are lost due to exceeding the receiving range of the hardware, which needs to be solved.

[0004] Application Contents

[0005] The present application aims to solve one of the technical problems in the related art at least to some extent.

[0006] To this end, the first purpose of this application is to propose an AWG waveform editing and downloading optimization method, which can occupy a smaller memory when storing waveforms, and there will be negative feedback before the data is sent down, effectively avoiding data errors or exceeding the receiving range of external equipment, resulting in the loss of waveform files.

[0007] The second objective of the present application is to provide an AWG waveform editing and downloading optimization device.

[0008] The third objective of the present application is to provide an electronic device.

[0009] A fourth object of the present application is to provide a non-transitory computer-readable storage medium.

[0010] To achieve the above-mentioned purpose, the first aspect of the embodiment of the present application provides an AWG waveform editing and downloading optimization method, comprising the following steps: editing a WAVE set based on a preset function library, and defining the playback order of the sequence through a preset external command SEQ, so as to assign the sequence defined by the ADVS statement and the SEQ statement to the corresponding channel for waveform editing; parsing the WAVE set, and according to the ADVS and the SEQ statements, parsing the composition of the subsequence set and each sequence waveform to obtain a data file and a description file; extracting the number of data interface channels and storage capacity of the hardware, and when the number of data interface channels used by the description file is less than or equal to the number of data interface channels of the external device and the capacity of the data file is less than or equal to the storage capacity of the hardware, according to the OUT assignment, downloading the corresponding waveform set and sequence playback mode to the hardware for execution.

[0011] According to the AWG waveform editing and download optimization method of the embodiment of the present application, the data file and the description file are obtained after the waveform data is edited and processed. The download can only be performed when the number of data interface channels used by the description file is less than or equal to the number of data interface channels of the external device and the capacity of the data file is less than or equal to the hardware storage capacity. Therefore, a smaller memory can be occupied when storing the waveform, and there will be negative feedback before the data is sent, which effectively avoids data errors or exceeds the receiving range of the external device, resulting in the loss of the waveform file.

[0012] In addition, the AWG waveform editing and downloading optimization method according to the above embodiment of the present application may also have the following additional technical features:

[0013] In one embodiment of the present application, the parsing of the WAVE set includes: when using a function to generate a waveform, if the length of the waveform does not meet a preset condition, then during parsing, zeros are automatically added to make its length meet the preset condition, so that the lengths of the waveforms involved in the operation are consistent.

[0014] In one embodiment of the present application, it also includes: after parsing all basic waveforms edited by the user, sending them to hardware for storage in a first preset format, wherein a storage table is established according to the start address and end address of each waveform.

[0015] In one embodiment of the present application, the parsing of the subsequence set and the composition of each sequence waveform further includes: when using ADVS and SEQ types, parsing the number of sequences, the composition structure of the sequences and the sequence playback mode.

[0016] In one embodiment of the present application, the analysis of the number of sequences, the composition structure of the sequences and the sequence playback mode further includes: parsing the waveform playback order of the sequence according to the ADVS and SEQ types, without expanding the subsequences and the number of sequence loops, and sending the waveform playback order to the hardware for storage in a second preset format; parsing the number of sequences and subsequences according to the ADVS and SEQ types, without expanding the number of sequence loops, and sending the composition order to the hardware for storage in a third preset format.

[0017] To achieve the above-mentioned purpose, the second aspect of the present application provides an AWG waveform editing and download optimization device, including: an editing module, used to edit the WAVE set based on a preset function library, and define the playback order of the sequence through a preset external command SEQ, so as to assign the sequence defined by the ADVS statement and the SEQ statement to the corresponding channel for waveform editing; a parsing module, used to parse the WAVE set, and according to the ADVS and the SEQ statements, parse out the composition of the subsequence set and each sequence waveform to obtain a data file and a description file; a processing module, used to extract the number of data interface channels and storage capacity of the hardware. When the number of data interface channels used by the description file is less than or equal to the number of data interface channels of the external device and the capacity of the data file is less than or equal to the storage capacity of the hardware, according to the OUT assignment, the corresponding waveform set and sequence playback mode are downloaded to the hardware for execution.

[0018] According to the AWG waveform editing and download optimization device of the embodiment of the present application, the data file and the description file are obtained after the waveform data is edited and processed. The download can only be performed when the number of data interface channels used by the description file is less than or equal to the number of data interface channels of the external device and the capacity of the data file is less than or equal to the hardware storage capacity. Therefore, a smaller memory can be occupied when storing the waveform, and there will be negative feedback before the data is sent, which effectively avoids data errors or exceeds the hardware receiving range, resulting in the loss of the waveform file.

[0019] In addition, the AWG waveform editing and downloading optimization device according to the above embodiment of the present application may also have the following additional technical features:

[0020] In one embodiment of the present application, the parsing module is further used to, when using a function to generate a waveform, if the length of the waveform does not meet a preset condition, automatically fill it with zeros during parsing so that its length meets the preset condition, so that the lengths of the waveforms involved in the operation are consistent; and after parsing all basic waveforms edited by the user, send them to the hardware for storage in a first preset format, wherein a storage table is established according to the start address and end address of each waveform.

[0021] In one embodiment of the present application, the parsing module is further used to parse the number of sequences, the composition structure of the sequences and the sequence playback mode when using ADVS and SEQ types, specifically: the waveform playback order of the sequence is parsed according to the ADVS and SEQ types, the subsequences and the number of sequence loops are not expanded, and the waveform playback order is sent to the hardware for storage in a second preset format; the number of sequences and subsequences is parsed according to the ADVS and SEQ types, the number of sequence loops is not expanded, and the sequence of composition is sent to the hardware for storage in a third preset format.

[0022] To achieve the above-mentioned objectives, the third aspect of the present application provides an electronic device, comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are configured to execute the AWG waveform editing and download optimization method as described in the above-mentioned embodiment.

[0023] To achieve the above-mentioned objectives, the fourth aspect of the present application provides a non-temporary computer-readable storage medium, which stores computer instructions, and the computer instructions are used to enable the computer to execute the AWG waveform editing and download optimization method as described in the above embodiment.

[0024] Additional aspects and advantages of the present application will be given in part in the description below, and in part will become apparent from the description below, or will be learned through the practice of the present application. BRIEF DESCRIPTION OF THE DRAWINGS

[0025] The above and / or additional aspects and advantages of the present application will become apparent and easily understood from the following description of the embodiments in conjunction with the accompanying drawings, in which:

[0026] Figure 1 A schematic diagram of a flow chart of an AWG waveform editing and downloading optimization method provided according to an embodiment of the present application;

[0027] Figure 2 A schematic diagram of a flow chart of an AWG waveform editing and downloading optimization method provided according to an embodiment of the present application;

[0028] Figure 3 A schematic diagram of the analysis of ADVS and SEQ sequence sets provided according to an embodiment of the present application;

[0029] Figure 4 A waveform timing diagram of editing provided according to an embodiment of the present application;

[0030] Figure 5 This is an example diagram of an AWG waveform editing and downloading optimization device according to an embodiment of the present application. DETAILED DESCRIPTION

[0031] Embodiments of the present application are described in detail below, and examples of the embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals throughout represent the same or similar elements or elements having the same or similar functions. The embodiments described below with reference to the accompanying drawings are exemplary and are intended to be used to explain the present application, and should not be construed as limiting the present application.

[0032] The following describes the AWG waveform editing and downloading optimization method and device proposed in accordance with the embodiments of the present application with reference to the accompanying drawings. First, the AWG waveform editing and downloading optimization method proposed in accordance with the embodiments of the present application will be described with reference to the accompanying drawings.

[0033] Specifically, Figure 1 A flowchart of an AWG waveform editing and downloading optimization method provided in an embodiment of the present application.

[0034] like Figure 1 As shown, the AWG waveform editing and downloading optimization method includes the following steps:

[0035] In step S101, the WAVE set is edited based on the preset function library, and the play order of the sequence is defined by the preset external command SEQ, so that the sequence defined by the ADVS statement and the SEQ statement is assigned to the corresponding channel for waveform editing.

[0036] It is understandable that if Figure 2 As shown, first edit the waveform data. The waveform editing of the arbitrary waveform generator mainly includes global constant settings, basic function library usage and sequence generation. Among them, the basic function library contains some common waveform generation functions, such as sine signals, Gaussian signals, etc. The library can be expanded according to user needs and is not specifically limited here. Several types are introduced below:

[0037] 1. WAVE

[0038] The WAVE type is used to represent an independent waveform. There are three ways to generate a waveform: one is to directly specify the voltage value of each sampling point, the second is through a file, and the third is through a built-in function.

[0039] Generate a waveform by directly specifying the voltage value of each sampling point through list data. The unit of voltage value is mV, and the range is [-500.0, 500.0]. WAVE will automatically linearly encode the voltage value into [0, 65535], where 0mV corresponds to 32768. When constructing WAVE through data list, the mode parameter takes effect, and there are 2 optional values. When Mode = 'Volt' (default value), the data is regarded as voltage value; when Mode = 'Code', the data is regarded as encoded value.

[0040]

[0041] Load WAVE data through .wave file. The data is required to be a 16-bit unsigned integer of a single WAVE, that is, the encoded data. Each data is the data of a sampling point. You can use a complete absolute path or specify a global directory and then search for files in the directory. It should be noted that relative paths are not supported.

[0042]

[0043] 2. Sin

[0044] The function prototype is Sin(freq, Amp, Len, Phase, Offset, Loop); its related parameters are explained as follows:

[0045] Freq: required, real number, sine wave frequency, unit: MHz;

[0046] Amp: optional, real number, sine wave amplitude, unit: mV;

[0047] Len: optional, positive integer, number of sampling points;

[0048] Phase: optional, real number, initial phase, unit 2π;

[0049] Offset: optional, real number, offset, unit mV;

[0050] Loop: optional, positive integer, number of loops, default is 1.

[0051] Description: Calculate by Amp*Sin(2*pi*(Freq*t+Phase))+Offset to generate a sine wave sequence with frequency FreqMHz, amplitude Amp mV, initial phase Phase, and Len sampling points. When the value of Amp is not specified, the value of GAmp is used. When the value of Len is not specified, Len=Fs / Freq is automatically used, rounded down. The frequency Freq must be specified, and the following parameters are optional.

[0052] Example:

[0053]

[0054] 3. Gauss

[0055] The function prototype is Gauss(var, Amp, Len, Offset, Loop) and its related parameters are explained as follows:

[0056] Var: required, real number, Gaussian function variance, calculated by number of points;

[0057] Amp: optional, real number, Gaussian pulse intensity, i.e. maximum value, in mV;

[0058] Len: optional, positive integer, sample L points, the center of the Gaussian function is at L / 2;

[0059] Offset: optional, real number, offset, unit mV;

[0060] Loop: Optional, positive integer, number of loops.

[0061] Description: Calculate by Amp*exp(-t*t / (Var*Var))+Offset to generate a Gaussian pulse sequence with the center at Len / 2. When the value of A is not specified, the value of GAmp is used. When the value of Len is not specified, the default sampling range is [-5*Var,5*Var). The variance Var must be specified, and the following parameters are optional.

[0062] Example:

[0063]

[0064] 4. Square

[0065] The function prototype is Square(Len, Mode, Amp, Loop), and its related parameters are explained as follows:

[0066] Len: required, positive integer, the number of points in the square wave cycle;

[0067] Mode: Optional, square wave mode, UP is low first and then high, DOWN is high first and then low;

[0068] Amp: optional, real number, same as above;

[0069] Loop: positive integer, number of square wave cycles.

[0070] Example:

[0071] w1 = Square (16, Mode = UP);

[0072] 5. Triangle

[0073] The function prototype is Triangle(Len, Mode, Amp, Loop), and its related parameters are explained as follows:

[0074] Len: required, positive integer, triangle wave period, unit: ns;

[0075] Mode: optional, triangle wave mode, UP is from low to high, DOWN is from high to low;

[0076] Amp: optional, amplitude, usage is the same as above;

[0077] Loop: Optional, positive integer, number of triangle wave loops.

[0078] Example:

[0079] w4=Triangle(16,mode=DOWN);

[0080] 6. Wind

[0081] The window function, whose function prototype is Wind (N1, Val1, N2, ..., Nn, Valn), is only used for multiplication with other waveforms (it cannot be downloaded as a waveform). The relevant parameters are explained as follows:

[0082] Nn: points;

[0083] Valn: value 0 or 1.

[0084] Example:

[0085]

[0086] 7. Shift

[0087] Shift the waveform. The function prototype is Shift(Wave,Offset). The related parameters are explained as follows:

[0088] Wave: waveform;

[0089] Offset: The number of points to offset.

[0090] Example:

[0091] w1=Shift(w1,1000);

[0092] 8. Delay

[0093] Delay the waveform. Its function prototype is Delay(Cycle). The related parameters are explained as follows:

[0094] Cycle: Delay cycle number (sampling clock cycle * 4)

[0095] Example:

[0096] Delay(1000);

[0097] 9. Combine

[0098] The function prototype is Combine(Wave1, Wave2, ..., WaveN), and its function is to combine multiple waveforms together to form a new sequence.

[0099] Example:

[0100] W4=Combine(W1,W2,W3); # Combine W1,W2,W3 to form a new sequence

[0101] 10. Marker

[0102] The function prototype is Marker(N1, Val1, N2, Val2), and its related parameters are explained as follows

[0103] N1, N2: points;

[0104] VAL1, VAL2: value 0 or 1.

[0105] The Marker function can be used to bind the Marker signal to the corresponding waveform.

[0106] Example:

[0107]

[0108] In addition, the SEQ type and ADVS type are as follows:

[0109] A SEQ contains one or more "subsequences", which are arranged in chronological order. In external trigger mode, the subsequence playback is controlled by the trigger signal.

[0110] SEQ([w1(number of repetitions),…,wn(number of repetitions)])

[0111] Where w1, ..., wn are n WAVEs, n>= 1. The number of repetitions is a positive integer.

[0112] Example:

[0113]

[0114] An ADVS can be generated by calling a SEQ type. ADVS supports "+" and "+=" operations. SEQ (number of cycles). Multiple ADVS can be spliced ​​into one ADVS.

[0115] Example:

[0116]

[0117] In the embodiment of the present application, the user can perform waveform editing in the following three steps:

[0118] A. Use the function library to edit the WAVE collection;

[0119] B. Use SEQ to define the playback order of the sequence;

[0120] C. Assign the sequences defined by ADVS and SEQ to the corresponding channels.

[0121] For example:

[0122]

[0123] In step S102, the WAVE set is parsed, and according to the ADVS and SEQ statements, the subsequence set and the composition of each sequence waveform are parsed to obtain a data file and a description file.

[0124] It is understandable that if Figure 2 As shown, after waveform processing, the waveform data forms two files, a data file (used to store data of multiple waveforms) and a description file (describing channel information, waveform sequence, and number of repetitions); the above two files are stored in the storage unit. Among them, the process of compiling the user-edited statement is: first parse out the user-defined WAVE set {Wave1, Wave2, ..., WaveN}, and then parse out the subsequence {Seq1, Seq2, ..., SeqN} set and the composition of each sequence waveform according to the ADVS and SEQ statements.

[0125] In one embodiment of the present application, parsing a WAVE set includes: when using a function to generate a waveform, if the length of the waveform does not meet a preset condition, then during parsing, automatically padding with zeros so that its length meets the preset condition, so that the lengths of the waveforms involved in the operation are consistent.

[0126] The preset condition may be that the length of the waveform meets multiples of 8. For example, when a function is used to generate a waveform, if the length of the waveform does not meet multiples of 8, zeros are automatically added during analysis to make its length meet multiples of 8. When two waveforms are operated, the shorter waveform is automatically filled with zeros to make the lengths of the waveforms involved in the operation the same.

[0127] The Maker function is used to generate marker signals, which correspond to the waveforms in the waveform set one by one. There are as many marker signals as there are waveforms. During use, some waveforms may have marker signals defined, while others may not. In this case, the marker signals for waveforms that do not have marker signals defined will output 1 by default.

[0128] Further, in one embodiment of the present application, after all basic waveforms edited by the user are parsed, they are sent to the hardware for storage in a first preset format, wherein a storage table is established according to the start address and end address of each waveform.

[0129] Among them, the first preset format can be the format of the example in Table 1. Taking this as an example, after the software parses all the basic waveforms edited by the user, it is sent to the hardware for storage in the format defined in the following table. The starting address and ending address of each waveform are stored in a table established by the software to facilitate subsequent processing and calling.

[0130] Table 1

[0131]

[0132] After the software parses the Marker signal edited by the user, it is sent to the hardware for storage in the format defined in Table 2. The software creates a table to store the start address and end address of each Maker signal to facilitate subsequent processing and calling. It should be noted that the Marker signal is stored in the same way as the waveform.

[0133] Table 2

[0134]

[0135] Furthermore, in one embodiment of the present application, parsing the composition of the subsequence set and each sequence waveform further includes: when using ADVS and SEQ types, parsing the number of sequences, the composition structure of the sequences and the sequence playback mode, wherein the waveform playback order of the sequence is parsed according to the ADVS and SEQ types, the number of subsequences and sequence loops is not expanded, and the waveform playback order is sent to the hardware for storage in a second preset format; parsing the number of sequences and subsequences according to the ADVS and SEQ types, the number of sequence loops is not expanded, and the order of the composition is sent to the hardware for storage in a third preset format.

[0136] It is understandable that if Figure 3 As shown, when using ADVS and SEQ types, the software needs to parse the number of sequences, the composition structure of the sequences, and the sequence playback method. It is mainly divided into the following steps:

[0137] First, the basic waveform playback order contained in the sequence is parsed according to the ADVS and SEQ types, the subsequence and the number of cycles of the sequence are not expanded, and the waveform playback order is sent to the hardware for storage in the format of Table 3. Among them, the second preset format can be the format of Table 3 example.

[0138] Table 3

[0139]

[0140]

[0141] Among them, enabling does not require repetition times.

[0142] Then, the number of sequences and subsequences contained therein is parsed according to the ADVS and SEQ types, the number of cycles of the sequence is not expanded, and the sequence of components is sent to the hardware for storage in the format of Table 4. Among them, the third preset format can be the format of the example in Table 4.

[0143] Table 4

[0144]

[0145] The waveform example analysis example is as follows:

[0146]

[0147] In addition, the edited waveform timing diagram is as follows Figure 4 shown.

[0148] It should be noted that before downloading to the hardware, step S103 needs to be executed.

[0149] In step S103, the number of data interface channels and storage capacity of the hardware are extracted. When the number of data interface channels used by the description file is less than or equal to the number of data interface channels of the external device and the capacity of the data file is less than or equal to the hardware storage capacity, the corresponding waveform set and sequence playback mode are downloaded to the hardware for execution according to the OUT assignment.

[0150] It is understandable that if Figure 2 As shown, the processing module of the software extracts the number of data interface channels and storage capacity of the hardware. When the number of data interface channels used by the description file is less than or equal to the number of data interface channels of the hardware and the waveform storage capacity is less than or equal to the hardware storage capacity, the data is sent down. The hardware may be an external control device.

[0151] In addition, there are four types of OUT: OUT1, OUT2, OUT3 and OUT4, which correspond to the output of four channels respectively. Each channel can send and receive different waveforms.

[0152] According to the AWG waveform editing and downloading optimization method proposed in the embodiment of the present application, the waveform data is edited and processed to obtain a data file and a description file. The download can only be performed when the number of data interface channels used by the description file is less than or equal to the number of data interface channels of the external device and the capacity of the data file is less than or equal to the hardware storage capacity. Therefore, a smaller memory can be occupied when storing the waveform, and there will be negative feedback before the data is sent, which effectively avoids data errors or exceeds the receiving range of the external device, resulting in the loss of the waveform file.

[0153] Next, the AWG waveform editing and downloading optimization device proposed according to the embodiment of the present application is described with reference to the accompanying drawings.

[0154] Figure 5 It is a block diagram of an AWG waveform editing and downloading optimization device according to an embodiment of the present application.

[0155] like Figure 5As shown, the AWG waveform editing and downloading optimization device 10 includes: an editing module 100 , a parsing module 200 and a processing module 300 .

[0156] Among them, the editing module 100 is used to edit the WAVE set based on the preset function library, and define the playback order of the sequence through the preset external command SEQ, so as to assign the sequence defined by the ADVS statement and the SEQ statement to the corresponding channel for waveform editing; the parsing module 200 is used to parse the WAVE set, and according to the ADVS and SEQ statements, parse the composition of the subsequence set and each sequence waveform to obtain the data file and the description file; the processing module 300 is used to extract the number of data interface channels and the storage capacity of the hardware. When the number of data interface channels used by the description file is less than or equal to the number of data interface channels of the external device and the capacity of the data file is less than or equal to the hardware storage capacity, according to the OUT assignment, the corresponding waveform set and sequence playback mode are downloaded to the hardware for execution. The device 10 of the embodiment of the present application can occupy a smaller memory when storing waveforms, and there will be negative feedback before the data is sent, which effectively avoids data errors or exceeds the receiving range of the external device to cause the waveform file to be lost.

[0157] In one embodiment of the present application, the analysis module 200 is further used to, when using a function to generate a waveform, if the length of the waveform does not meet the preset conditions, automatically fill it with zeros during analysis to make its length meet the preset conditions, so that the lengths of the waveforms involved in the operation are consistent; and after parsing all the basic waveforms edited by the user, send them to the hardware for storage in a first preset format, wherein a storage table is established according to the start address and end address of each waveform.

[0158] In one embodiment of the present application, the parsing module 200 is further used to parse the number of sequences, the composition structure of the sequences and the sequence playback mode when using ADVS and SEQ types, specifically: the waveform playback order of the sequence is parsed according to the ADVS and SEQ types, the subsequences and the number of sequence loops are not expanded, and the waveform playback order is sent to the hardware for storage in a second preset format; the number of sequences and subsequences is parsed according to the ADVS and SEQ types, the number of sequence loops is not expanded, and the sequence of composition is sent to the hardware for storage in a third preset format.

[0159] It should be noted that the above explanation of the embodiment of the AWG waveform editing and downloading optimization method is also applicable to the AWG waveform editing and downloading optimization device of this embodiment, and will not be repeated here.

[0160] According to the AWG waveform editing and download optimization device proposed in the embodiment of the present application, the data file and the description file are obtained after the waveform data is edited and processed. The download can only be performed when the number of data interface channels used by the description file is less than or equal to the number of data interface channels of the external device and the capacity of the data file is less than or equal to the hardware storage capacity. Therefore, a smaller memory can be occupied when storing the waveform, and there will be negative feedback before the data is sent, which effectively avoids data errors or exceeds the receiving range of the external device, resulting in the loss of the waveform file.

[0161] This embodiment also provides an electronic device, including: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are configured to execute the AWG waveform editing and downloading optimization method as described in the above embodiment.

[0162] This embodiment also provides a computer-readable storage medium on which a computer program is stored. When the program is executed by a processor, the above AWG waveform editing and downloading optimization method is implemented.

[0163] In the description of this specification, the description with reference to the terms "one embodiment", "some embodiments", "example", "specific example", or "some examples" etc. means that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present application. In this specification, the schematic representations of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described may be combined in any one or N embodiments or examples in a suitable manner. In addition, those skilled in the art may combine and combine the different embodiments or examples described in this specification and the features of the different embodiments or examples, without contradiction.

[0164] In addition, the terms "first" and "second" are used for descriptive purposes only and should not be understood as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Therefore, a feature defined as "first" or "second" may explicitly or implicitly include at least one of the features. In the description of this application, "N" means at least two, such as two, three, etc., unless otherwise clearly and specifically defined.

[0165] Any process or method description in a flowchart or otherwise described herein may be understood to represent a module, fragment or portion of code comprising one or more executable instructions for implementing the steps of a custom logical function or process, and the scope of the preferred embodiments of the present application includes alternative implementations in which functions may not be performed in the order shown or discussed, including performing functions in a substantially simultaneous manner or in reverse order depending on the functions involved, which should be understood by technicians in the technical field to which the embodiments of the present application belong.

[0166] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as an ordered list of executable instructions for implementing logical functions, and can be embodied in any computer-readable medium for use by an instruction execution system, device or apparatus (such as a computer-based system, a system including a processor, or other system that can fetch instructions from an instruction execution system, device or apparatus and execute instructions), or in combination with these instruction execution systems, devices or apparatuses. For the purpose of this specification, "computer-readable medium" can be any device that can contain, store, communicate, propagate or transmit a program for use by an instruction execution system, device or apparatus, or in combination with these instruction execution systems, devices or apparatuses. More specific examples of computer-readable media (a non-exhaustive list) include the following: an electrical connection with one or N wirings (electronic devices), a portable computer disk box (magnetic device), a random access memory (RAM), a read-only memory (ROM), an erasable and programmable read-only memory (EPROM or flash memory), a fiber optic device, and a portable compact disk read-only memory (CDROM). In addition, the computer-readable medium may even be paper or other suitable medium on which the program is printed, since the program may be obtained electronically, for example, by optically scanning the paper or other medium and then editing, interpreting or processing in other suitable ways if necessary, and then stored in a computer memory.

[0167] It should be understood that the various parts of the present application can be implemented by hardware, software, firmware or a combination thereof. In the above-mentioned embodiment, the N steps or methods can be implemented by software or firmware stored in a memory and executed by a suitable instruction execution system. For example, if implemented by hardware, as in another embodiment, it can be implemented by any one of the following technologies known in the art or their combination: a discrete logic circuit having a logic gate circuit for implementing a logic function for a data signal, a dedicated integrated circuit having a suitable combination of logic gate circuits, a programmable gate array (PGA), a field programmable gate array (FPGA), etc.

[0168] A person skilled in the art may understand that all or part of the steps in the method for implementing the above-mentioned embodiment may be completed by instructing related hardware through a program, and the program may be stored in a computer-readable storage medium, which, when executed, includes one or a combination of the steps of the method embodiment.

[0169] In addition, each functional unit in each embodiment of the present application may be integrated into a processing module, or each unit may exist physically separately, or two or more units may be integrated into one module. The above-mentioned integrated module may be implemented in the form of hardware or in the form of a software functional module. If the integrated module is implemented in the form of a software functional module and sold or used as an independent product, it may also be stored in a computer-readable storage medium.

[0170] The storage medium mentioned above may be a read-only memory, a magnetic disk or an optical disk, etc. Although the embodiments of the present application have been shown and described above, it can be understood that the above embodiments are exemplary and cannot be understood as limiting the present application. A person of ordinary skill in the art may change, modify, replace and modify the above embodiments within the scope of the present application.

Claims

1. A method for optimizing AWG waveform editing and downloading, characterized in that: The following steps are involved: Edit WAVE collections based on preset function libraries, and define the sequence playback order through preset external commands SEQ to assign the sequences defined by ADVS statements and SEQ statements to the corresponding channels for waveform editing; Parsing the WAVE set, and according to the ADVS and the SEQ statements, parsing out the subsequence set and the composition of each sequence waveform to obtain a data file and a description file; as well as Extract the number of data interface channels and storage capacity of the hardware. When the number of data interface channels used by the description file is less than or equal to the number of data interface channels of the external device and the capacity of the data file is less than or equal to the storage capacity of the hardware, according to the OUT assignment, download the corresponding waveform set and sequence playback mode to the hardware for execution; After parsing out all basic waveforms edited by the user, they are sent to the hardware in a first preset format for storage, wherein a storage table is established according to the start address and the end address of each waveform.

2. The method according to claim 1, characterized in that The parsing of the WAVE set comprises: When using a function to generate a waveform, if the length of the waveform does not meet the preset conditions, zeros are automatically added during analysis to make its length meet the preset conditions, so that the lengths of the waveforms involved in the calculation are consistent.

3. The method according to claim 1, characterized in that The step of parsing out the subsequence set and the composition of each sequence waveform further includes: When using ADVS and SEQ types, parse the number of sequences, the composition structure of the sequences, and the sequence playback method.

4. The method according to claim 3, characterized in that: The number of parsed sequences, the composition structure of the sequences and the sequence playback mode further include: Parsing the waveform playback order of the sequence according to the ADVS and SEQ types, without expanding the subsequence and the number of cycles of the sequence, and sending the waveform playback order to the hardware for storage in a second preset format; The number of sequences and subsequences is parsed according to the ADVS and SEQ types, the number of cycles of the sequence is not expanded, and the sequence of components is sent to the hardware for storage in a third preset format.

5. An AWG waveform editing and downloading optimization device, characterized in that: include: The editing module is used to edit the WAVE set based on the preset function library and define the play order of the sequence through the preset external command SEQ to assign the sequence defined by the ADVS statement and the SEQ statement to the corresponding channel for waveform editing; A parsing module, used for parsing the WAVE set, and according to the ADVS and the SEQ statements, parsing out the composition of the subsequence set and each sequence waveform, so as to obtain a data file and a description file; as well as A processing module, used for extracting the number of data interface channels and storage capacity of the hardware, and when the number of data interface channels used by the description file is less than or equal to the number of data interface channels of the external device and the capacity of the data file is less than or equal to the storage capacity of the hardware, according to the OUT assignment, downloading the corresponding waveform set and sequence playback mode to the hardware for execution; The analysis module is further used for: after parsing out all basic waveforms edited by the user, sending them to the hardware for storage in a first preset format, wherein a storage table is established according to the start address and end address of each waveform.

6. The device according to claim 5, characterized in that The analysis module is further used to automatically fill zeros to make its length meet the preset conditions when using a function to generate a waveform, so that the lengths of the waveforms involved in the calculation are consistent.

7. The device according to claim 5, characterized in that The parsing module is further used to parse the number of sequences, the composition structure of the sequences and the sequence playback mode when using ADVS and SEQ types, specifically: the waveform playback order of the sequence is parsed according to the ADVS and SEQ types, the subsequences and the number of sequence loops are not expanded, and the waveform playback order is sent to the hardware for storage in a second preset format; the number of sequences and subsequences is parsed according to the ADVS and SEQ types, the number of sequence loops is not expanded, and the sequence of composition is sent to the hardware for storage in a third preset format.

8. An electronic device, characterized in that: include: A memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the AWG waveform editing and downloading optimization method according to any one of claims 1 to 4.

9. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that: The program is executed by a processor to implement the AWG waveform editing and downloading optimization method as described in any one of claims 1 to 4.

Citation Information

Patent Citations

  • Arbitrary waveform generating system based on user-defined processor

    CN102520761A

  • Digital signal logic analyzing system

    CN102546301A