CN102520760A - Processor for arbitrary waveform generating system - Google Patents
Processor for arbitrary waveform generating system Download PDFInfo
- Publication number
- CN102520760A CN102520760A CN2011104306898A CN201110430689A CN102520760A CN 102520760 A CN102520760 A CN 102520760A CN 2011104306898 A CN2011104306898 A CN 2011104306898A CN 201110430689 A CN201110430689 A CN 201110430689A CN 102520760 A CN102520760 A CN 102520760A
- Authority
- CN
- China
- Prior art keywords
- instruction
- condition
- processor
- waveform
- processor cores
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Executing Machine-Instructions (AREA)
- Electrophonic Musical Instruments (AREA)
Abstract
本发明公开了一种用于任意波形产生系统的处理器,指令缓冲单元缓存来自外部计算机的指令集合;处理器内核从指令集合中逐一读取并执行每一条指令,其支持的指令集由波形产生指令、循环控制指令、条件跳转指令、等待指令和清除触发条件指令组成,波形产生指令中还包括输出标记列表,按列表输出脉冲;Marker标记存储单元用于缓存输出波形数据时输出脉冲的输出标记列表;外部控制条件输入单元将外部输入的触发条件传输给处理器内核,该触发条件可以作为各指令的执行条件。本发明通过对该处理器能够支持的指令集进行设计,从而简化波形产生的复杂程度,提供整体执行速度,进而提升任意波形发生器类产品的功能和性能。
The invention discloses a processor used in an arbitrary waveform generation system. The instruction buffer unit buffers the instruction set from an external computer; the processor core reads and executes each instruction one by one from the instruction set, and the instruction set supported by the waveform It is composed of generation instruction, loop control instruction, conditional jump instruction, wait instruction and clear trigger condition instruction. The waveform generation instruction also includes an output marker list, and outputs pulses according to the list; the marker storage unit is used to buffer the output pulse when outputting waveform data. The output mark list; the external control condition input unit transmits the trigger condition of the external input to the processor core, and the trigger condition can be used as the execution condition of each instruction. The invention simplifies the complexity of waveform generation by designing the instruction set that the processor can support, improves the overall execution speed, and improves the function and performance of arbitrary waveform generator products.
Description
技术领域 technical field
本发明涉及任意波形发生器技术领域,特别是涉及一种用于任意波形产生系统的处理器。The invention relates to the technical field of arbitrary waveform generators, in particular to a processor used in an arbitrary waveform generating system.
背景技术 Background technique
任意波形发生器作为常见的测试测量仪器之一,已经历了多年的技术发展。市场上广泛使用推广的同类产品主要分为台式仪器及总线类虚拟仪器。台式仪器独立性较强,但其体积较大,使用环境范围较小,在实现远程操作及系统集成方面有一定的局限性。而总线类虚拟仪器在系统集成及远程操作方面具有独到的优越性。Arbitrary waveform generator, as one of the common test and measurement instruments, has experienced many years of technical development. Similar products that are widely used and promoted in the market are mainly divided into desktop instruments and bus-type virtual instruments. The desktop instrument is relatively independent, but its volume is relatively large, and the scope of use environment is small, so it has certain limitations in the realization of remote operation and system integration. The bus-type virtual instrument has unique advantages in system integration and remote operation.
目前,基于总线的任意波形发生器具有产生标准波形、任意波形、任意序列等功能。然而,目前的任意波形发生器是由计算机根据需求产生任意波形的所有数据,然后通过总线下载到波形产生模块中,波形产生模块根据波形数据逐点输出模拟波形。但是,这种计算机统一产生所有波形数据的方式速度比较慢,总线中需要传输大量的数据,不能实现任意波形的实时调度。At present, the arbitrary waveform generator based on the bus can generate standard waveform, arbitrary waveform, arbitrary sequence and other functions. However, in the current arbitrary waveform generator, all the data of the arbitrary waveform is generated by the computer according to the demand, and then downloaded to the waveform generation module through the bus, and the waveform generation module outputs the analog waveform point by point according to the waveform data. However, the way that the computer uniformly generates all waveform data is relatively slow, and a large amount of data needs to be transmitted in the bus, which cannot realize real-time scheduling of arbitrary waveforms.
本申请同日申请了发明名称为《一种基于自定义处理器的任意波形产生系统》,如图1所示,该系统包括控制部分和硬件部分,两部分通过各自的接口单元进行数据交互。波形生成模块用于产生各种类型、长度和周期的波形段数据,并分别命名,然后通过波形下载模块和第一接口单元下载到硬件部分。存储控制逻辑模块实现对波形存储器的读写控制。控制程序生成模块接收用户输入的指令集合,该指令集合指示出了形成所需任意波形需要调用的波形段名称、调用顺序、调用次数等信息,将该指令集合通过编译模块的编译后下载到硬件部分。自定义波形处理器接收并解析指令集合,按照指令集合指示产生相应波形段的调用指令,通过存储控制逻辑模块读取波形段数据;然后按照指令集合指示的波形段的调用顺序和调用次数,组合波形段数据后形成所需的任意波形,并通过信号调理模块的处理后输出。On the same day, this application applied for an invention titled "An Arbitrary Waveform Generation System Based on a Custom Processor". As shown in Figure 1, the system includes a control part and a hardware part, and the two parts perform data interaction through their respective interface units. The waveform generation module is used to generate waveform segment data of various types, lengths and periods, and name them respectively, and then download them to the hardware part through the waveform download module and the first interface unit. The storage control logic module realizes the read and write control of the waveform memory. The control program generation module receives the command set input by the user. The command set indicates the waveform segment name, calling order, and calling times that need to be called to form the required arbitrary waveform. The command set is compiled by the compiling module and downloaded to the hardware. part. The custom waveform processor receives and parses the command set, generates the call command of the corresponding waveform segment according to the command set instruction, and reads the waveform segment data through the storage control logic module; The required arbitrary waveform is formed after the waveform segment data is processed and output by the signal conditioning module.
从上述描述可以看出,自定义波形处理器是整个波形产生系统的核心,自定义波形处理器所能支持的指令集决定了所能产生波形的复杂程度和本身实现的复杂程度。It can be seen from the above description that the custom waveform processor is the core of the entire waveform generation system, and the instruction set that the custom waveform processor can support determines the complexity of the waveform that can be generated and the complexity of its own implementation.
发明内容 Contents of the invention
鉴于目前市场上的任意波形发生器的任意波形和任意序列功能比较简单,这样在某些测试中不能够提供较为复杂的任意波形或任意序列功能,因此,本发明提供了一种用于任意波形产生系统的自定义处理器,通过对该处理器能够支持的指令集进行设计,从而简化波形产生的复杂程度,提供整体执行速度,进而提升任意波形发生器类产品的功能和性能。In view of the fact that the arbitrary waveform and arbitrary sequence functions of arbitrary waveform generators on the market are relatively simple, they cannot provide more complex arbitrary waveform or arbitrary sequence functions in some tests. Therefore, the present invention provides a method for arbitrary waveform Generate a custom processor for the system. By designing the instruction set that the processor can support, the complexity of waveform generation is simplified, the overall execution speed is improved, and the function and performance of arbitrary waveform generator products are improved.
该方案是这样实现的:The scheme is implemented like this:
一种用于任意波形产生系统的处理器,其特征在于,包括:处理器内核、指令缓冲单元、循环次数标记单元、Marker标记存储单元、外部控制条件输入单元;A kind of processor that is used for arbitrary waveform generation system is characterized in that, comprises: processor core, instruction buffer unit, number of cycles marking unit, Marker mark storage unit, external control condition input unit;
指令缓冲单元,用于缓存来自外部计算机的指令集合;The instruction buffer unit is used to cache the instruction set from the external computer;
处理器内核,用于从所述指令集合中逐一读取并执行每一条指令;所述处理器内核支持的指令集由波形产生指令、循环控制指令、条件跳转指令、等待指令和清除触发条件指令组成;The processor core is used to read and execute each instruction one by one from the instruction set; the instruction set supported by the processor core consists of a waveform generation instruction, a loop control instruction, a conditional jump instruction, a wait instruction, and a clear trigger condition command composition;
当处理器内核处理波形产生指令时,从波形产生指令中提取波形段名称,产生相应波形段的调用指令,并发送给存储控制逻辑模块;将存储控制逻辑模块读取的波形段数据逐一按顺序输出到自定义处理器外部信号调理模块的FIFO中;波形产生指令中还包括输出标记列表;所述输出标记列表存储到Marker标记存储单元中,每个输出标记是一个数值,处理器内核输出波形段数据时,比较当前输出数据个数与输出标记列表中的值,如果二者相同,则输出一个脉冲;When the processor core processes the waveform generation instruction, it extracts the name of the waveform segment from the waveform generation instruction, generates the calling instruction of the corresponding waveform segment, and sends it to the storage control logic module; the waveform segment data read by the storage control logic module is sequentially arranged one by one Output to the FIFO of the external signal conditioning module of the custom processor; the waveform generation instruction also includes an output marker list; the output marker list is stored in the Marker marker storage unit, each output marker is a numerical value, and the processor core outputs the waveform When segmenting data, compare the number of current output data with the value in the output tag list, and if they are the same, output a pulse;
当处理器内核处理循环控制指令时,根据循环条件按照循环控制指令指定的顺序和次数循环执行指定的指令;其中循环的次数标记存储在所述循环次数标记单元中;When the processor core processes the loop control instruction, according to the loop condition according to the order and the number of times specified by the loop control instruction, the specified instruction is executed in a loop; wherein the number of loops is marked and stored in the loop number of marking unit;
当处理器内核处理条件跳转指令时,首先判断跳转条件是否成立,在条件成立的情况下,执行指定的指令;When the processor core processes a conditional jump instruction, it first judges whether the jump condition is true, and if the condition is true, executes the specified instruction;
当处理器内核处理等待指令时,不断判断等待指令指定的等待结束条件是否满足,在满足的情况下,执行后续指令;When the processor core processes the waiting instruction, it continuously judges whether the waiting end condition specified by the waiting instruction is satisfied, and if it is satisfied, executes the subsequent instruction;
当处理器内核处理清除触发条件指令时,将触发条件Trigger0置为低;当所述触发条件Trigger0作为等待结束条件和/或循环条件和/或跳转条件时,处理器内核根据Trigger0的值判断相应条件是否成立;When the processor core processes the clear trigger condition instruction, the trigger condition Trigger0 is set low; when the trigger condition Trigger0 is used as the waiting end condition and/or loop condition and/or jump condition, the processor core judges according to the value of Trigger0 Whether the corresponding conditions are met;
所述Marker标记存储单元,用于缓存所述输出标记列表;The Marker tag storage unit is used to cache the output tag list;
所述外部控制条件输入单元,用于将外部输入的触发条件Trigger0传输给处理器内核。The external control condition input unit is configured to transmit an externally input trigger condition Trigger0 to the processor core.
优选地,所述波形产生指令Generate带子集参数subset(<起始位置>,<结束位置>);Preferably, the waveform generation instruction Generate has a subset parameter subset(<start position>, <end position>);
所述处理器内核执行波形产生指令Generate时,判断Generate是否带子集参数subset,如果是,则从待输出的波形段数据中提取所述起始位置和所述结束位置之间的数据输出;否则,将波形段数据整体输出。When the processor core executes the waveform generation instruction Generate, it is judged whether Generate has a subset parameter subset, and if so, extracts the data output between the start position and the end position from the waveform segment data to be output; otherwise , to output the waveform segment data as a whole.
优选地,所述循环控制指令格式为:Preferably, the format of the loop control instruction is:
Repeat 循环条件Repeat loop condition
代码段ACode snippet A
end Repeatend Repeat
所述代码段A由所述指令集中的指令组成;The code segment A is composed of instructions in the instruction set;
所述循环条件包括以下三种情况:The cycle conditions include the following three situations:
①所述循环条件为N,N为一正整数,则Repeat指令实现有限次循环,所述处理器内核将代码段A循环执行N次;1. the loop condition is N, and N is a positive integer, then the Repeat instruction realizes a finite number of loops, and the processor core executes the code segment A loop N times;
②所述循环条件为永远forever,则Repeat指令实现无限次循环,所述处理器内核将代码段A无限制的循环下去,直到处理器内核掉电或被复位;2. the loop condition is forever forever, then the Repeat instruction realizes an infinite number of loops, and the processor core loops the code segment A indefinitely until the processor core is powered down or reset;
③所述循环条件为“until Trigger0”,则Repeat指令实现脚本条件循环,所述处理器内核将代码段A不停循环下去,直到处理器检测到所述Trigger0为逻辑高为止。③The loop condition is "until Trigger0", then the Repeat instruction realizes the script conditional loop, and the processor core loops the code segment A continuously until the processor detects that the Trigger0 is logic high.
优选地,所述条件跳转指令格式为:Preferably, the format of the conditional jump instruction is:
If Trigger0If Trigger0
代码段Bcode snippet B
ElseElse
代码段Ccode segment C
End ifEnd if
所述代码段B和代码段C均由所述指令集中的指令组成;Both the code segment B and the code segment C are composed of instructions in the instruction set;
所述处理器内核执行该条件跳转指令时,首先判断所述Trigger0是否为逻辑高,如果是,则将代码段B执行一遍,否则将代码段C执行一遍。When the processor core executes the conditional jump instruction, it first judges whether the Trigger0 is logic high, if so, executes the code segment B once, otherwise executes the code segment C once.
优选地,所述等待指令格式为:Preferably, the waiting instruction format is:
Wait等待结束条件Wait waits for the end condition
所述等待结束条件包括以下两种情况:The waiting end condition includes the following two situations:
①所述等待结束条件为N,N为一正整数;所述处理器内核执行该等待指令时,将等待延时计数器赋值N,每个处理器时钟周期将该等待延时计数器减1并判断是否为0,如果不等于0则继续执行减1和判断操作,如果等于0则执行后续指令;1. The waiting end condition is N, and N is a positive integer; when the processor core executes the waiting instruction, the waiting delay counter is assigned a value N, and each processor clock cycle decrements the waiting delay counter by 1 and judges Whether it is 0, if it is not equal to 0, continue to perform
②所述等待结束条件为Trigger0;所述处理器内核执行该等待指令时,不停判断Trigger0信号的值,如果为低则一直停留在该等待指令,如果为高,则执行后续指令。② The waiting end condition is Trigger0; when the processor core executes the waiting instruction, it constantly judges the value of the Trigger0 signal, if it is low, it stays at the waiting instruction, and if it is high, it executes subsequent instructions.
有益效果:Beneficial effect:
本发明所设计的自定义处理器能够支持5条指令组成的指令集,由于指令类型很少,因此处理器设计复杂程度大大降低,而且通过这种简单指令的编程就能够实现较为复杂的任意波形和任意序列功能,编程简单,而且程序段非常短小,能够进一步减小波形产生系统控制部分和硬件部分之间的数据传输量。The self-defined processor designed by the present invention can support an instruction set composed of 5 instructions. Since there are few instruction types, the complexity of processor design is greatly reduced, and more complex arbitrary waveforms can be realized through the programming of such simple instructions. And any sequence function, the programming is simple, and the program segment is very short, which can further reduce the amount of data transmission between the control part and the hardware part of the waveform generation system.
附图说明 Description of drawings
图1为基于自定义处理器的任意波形产生系统的组成结构示意图。Figure 1 is a schematic diagram of the composition and structure of an arbitrary waveform generation system based on a custom processor.
图2为本发明自定义波形处理器的结构示意图。Fig. 2 is a schematic diagram of the structure of the self-defined waveform processor of the present invention.
具体实施方式 Detailed ways
下面结合附图并举实施例,对本发明进行详细描述。The present invention will be described in detail below with reference to the accompanying drawings and examples.
图2为本发明用于任意波形产生系统的自定义处理器,如图2所示,该处理器包括:处理器内核、指令缓冲单元、循环次数标记单元、Marker标记存储单元、外部控制条件输入单元。该自定义处理器可以集成在FPGA中。Fig. 2 is the self-defined processor that the present invention is used for arbitrary waveform generation system, as shown in Fig. 2, this processor comprises: processor core, instruction buffer unit, number of cycles marking unit, Marker mark storage unit, external control condition input unit. This custom processor can be integrated in the FPGA.
指令缓冲单元,用于缓存来自外部计算机的指令集合。The instruction buffer unit is used for buffering instruction sets from an external computer.
处理器内核,用于从指令缓冲单元缓存的指令集合中逐一读取并执行每一条指令。本发明中,处理器内核支持如下5条指令构成的指令集,所述5条指令由波形产生指令Generate、循环控制指令、条件跳转指令、等待指令和清除触发条件指令组成。下面一一介绍各指令的功能和处理器内核的处理过程。The processor core is used to read and execute each instruction one by one from the instruction set cached by the instruction buffer unit. In the present invention, the processor core supports an instruction set composed of the following five instructions, the five instructions are composed of a waveform generation instruction Generate, a loop control instruction, a conditional jump instruction, a wait instruction and a trigger condition clear instruction. The following introduces the functions of each instruction and the processing process of the processor core.
(1)Generate的功能是产生一个任意波形段,该任意波形的数据从任意波形产生系统的波形存储器中提取。(1) The function of Generate is to generate an arbitrary waveform segment, and the data of the arbitrary waveform is extracted from the waveform memory of the arbitrary waveform generating system.
当处理器内核执行指令Generate时,处理器内核从该波形产生指令中提取波形段名称,产生相应波形段的调用指令,并发送给外部的存储控制逻辑模块;将存储控制逻辑模块从波形存储器读取的波形段数据逐一按顺序输出到自定义处理器外部的信号调理模块的FIFO中。信号调理模块检测到内部FIFO为非空时,将FIFO中的数据进行数模转换并输出。When the processor core executes the command Generate, the processor core extracts the name of the waveform segment from the waveform generation command, generates the calling command of the corresponding waveform segment, and sends it to the external storage control logic module; reads the storage control logic module from the waveform memory The acquired waveform segment data is output to the FIFO of the signal conditioning module outside the custom processor one by one in sequence. When the signal conditioning module detects that the internal FIFO is not empty, it performs digital-to-analog conversion on the data in the FIFO and outputs it.
Generate必要的参数为波形段名称,如果仅有波形段名称,则处理器内核输出整段的波形数据。The necessary parameter of Generate is the name of the waveform segment. If there is only the name of the waveform segment, the processor core will output the entire waveform data.
为了提高输出信号的丰富性和灵活度,通过设置子集参数使得该Generate指令支持子集输出和标记输出。具体来说,In order to improve the richness and flexibility of output signals, the Generate command supports subset output and tag output by setting subset parameters. Specifically,
Generate可以携带子集marker(<list of positions>),其中list of positions为输出标记列表,其记载了在输出波形段的过程中需要在波形段的哪个或哪几个位置输出脉冲。该输出标记列表存储到Marker标记存储单元中,每个输出标记是一个数值,处理器内核输出波形段数据时,比较当前输出数据个数与输出标记列表中的值,如果二者相同,则输出一个脉冲给信号调理模块,由信号调理模块产生脉冲模拟量。Generate can carry a subset marker (<list of positions>), where list of positions is a list of output markers, which records which position or positions of the waveform segment need to output pulses in the process of outputting the waveform segment. The output tag list is stored in the Marker tag storage unit, each output tag is a numerical value, when the processor core outputs the waveform segment data, compare the current output data number with the value in the output tag list, if the two are the same, then output A pulse is given to the signal conditioning module, and the signal conditioning module generates a pulse analog quantity.
Generate还可以携带子集参数subset(<起始位置>,<结束位置>);处理器内核执行波形产生指令Generate时,判断Generate是否带子集参数subset,如果是,则从待输出的波形段数据中提取起始位置和结束位置之间的数据输出;否则,将波形段数据整体输出。Generate can also carry the subset parameter subset (<start position>, <end position>); when the processor core executes the waveform generation command Generate, it is judged whether Generate has the subset parameter subset, if so, from the waveform segment data to be output Extract the data output between the start position and the end position; otherwise, output the waveform segment data as a whole.
那么Generate指令的格式表述完整可以为:Then the format expression of the Generate command can be completely expressed as:
Genernate<波形段名称>subset(<起始位置>,<结束位置>)marker(<输出标记列表>)。Generate<wave segment name>subset(<start position>, <end position>) marker(<output marker list>).
(2)循环控制指令的功能是重复执行一段代码,其能够支持高达16层循环嵌套。(2) The function of the loop control instruction is to repeatedly execute a piece of code, which can support up to 16 layers of loop nesting.
当处理器内核执行循环控制指令时,处理器内核根据循环条件按照循环控制指令指定的顺序和次数循环执行指定的指令;其中循环的次数标记存储在所述循环次数标记单元中。When the processor core executes the loop control instruction, the processor core loops and executes the specified instruction according to the loop condition and the order and times specified by the loop control instruction; wherein the loop count mark is stored in the loop count mark unit.
为了提高循环执行的灵活性,本发明提供了多种循环条件。那么,循环控制指令的格式可以为:In order to improve the flexibility of loop execution, the present invention provides various loop conditions. Then, the format of the loop control instruction can be:
Repeat 循环条件Repeat loop condition
指令1
......
指令MInstruction M
end Repeatend Repeat
其中,指令1~指令M均从指令集中选取。Wherein,
所述循环条件包括以下三种情况:The cycle conditions include the following three situations:
①循环条件为“N”,N为一正整数,则Repeat指令实现有限次循环,处理器内核将指令1~指令M共M条指令循环执行N次;①The cycle condition is "N", and N is a positive integer, then the Repeat instruction realizes a limited number of cycles, and the processor core executes a total of M instructions from
②循环条件为“forever”(永远),则Repeat指令实现无限次循环,处理器内核将指令1~指令M共M条指令无限制的循环下去,直到处理器内核掉电或被复位;②The loop condition is "forever", then the Repeat instruction realizes an infinite loop, and the processor core loops a total of M instructions from
③循环条件为“直到Trigger0为逻辑高即until Trigger0”,则Repeat指令实现脚本条件循环,处理器内核将指令1~指令M共M条指令不停循环执行下去,直到处理器检测到所述Trigger0为逻辑高为止。其中,Trigger0为触发条件,是通过外部控制条件输入单元输入到处理器内核的。③The loop condition is "until Trigger0 is logic high, that is, until Trigger0", then the Repeat instruction realizes the script conditional loop, and the processor core executes a total of M instructions from
(3)条件跳转指令的功能是选择执行一段代码,嵌套深度仅受指令存储空间限制。(3) The function of the conditional jump instruction is to select and execute a piece of code, and the nesting depth is only limited by the instruction storage space.
当处理器内核执行条件跳转指令时,首先判断跳转条件是否成立,在条件成立的情况下,执行指定的指令。When the processor core executes a conditional jump instruction, it first judges whether the jump condition is true, and if the condition is true, executes the specified instruction.
其中,为了不设置新变量,本发明采用外部输入的触发条件Trigger0作为跳转条件。那么条件跳转指令的格式可以为:Wherein, in order not to set a new variable, the present invention uses an externally input trigger condition Trigger0 as a jump condition. Then the format of the conditional jump instruction can be:
If Trigger0If Trigger0
指令1
......
指令MInstruction M
ElseElse
指令M+1 Instruction M+1
......
指令LInstruction L
End ifEnd if
所述处理器内核执行该条件跳转指令时,首先判断所述Trigger0是否为逻辑高,如果是,则将指令1~指令M共M条指令执行一遍,否则将指令M+1~指令L共L-M条指令执行一遍。When the processor core executes the conditional jump instruction, it first judges whether the Trigger0 is logic high, and if so, executes a total of M instructions from
(4)等待指令的功能是等待直到等待结束条件满足。(4) The function of the waiting instruction is to wait until the waiting end condition is satisfied.
当处理器内核执行等待指令时,不断判断等待指令指定的等待结束条件是否满足,在满足的情况下,执行下一条指令,如果不满足则继续判断。When the processor core executes the waiting instruction, it continuously judges whether the waiting end condition specified by the waiting instruction is satisfied, and if it is satisfied, executes the next instruction, and if not, continues to judge.
本实施例中跳转指令的格式为:Wait等待结束条件The format of the jump instruction in the present embodiment is: Wait waits for the end condition
所述等待结束条件包括等待延时和等待触发条件Trigger0:The waiting end condition includes waiting delay and waiting trigger condition Trigger0:
①等待结束条件为N,N为一正整数;处理器内核执行该等待指令时,将等待延时计数器赋值N,每个处理器时钟周期将该等待延时计数器减1并判断是否为0,如果不等于0则继续执行减1和判断操作,如果等于0则执行下一条指令。① The waiting end condition is N, and N is a positive integer; when the processor core executes the waiting instruction, the waiting delay counter is assigned a value N, and the waiting delay counter is decremented by 1 every processor clock cycle and judged whether it is 0, If it is not equal to 0, continue to perform
②等待结束条件为Trigger0;处理器内核执行该等待指令时,不停判断Trigger0信号的值,如果为低则一直停留在该等待指令,如果为高,则执行下一条指令。② The waiting end condition is Trigger0; when the processor core executes the waiting instruction, it continuously judges the value of the Trigger0 signal, if it is low, it stays at the waiting instruction, and if it is high, executes the next instruction.
(5)清除触发条件指令的功能是清除Trigger0。(5) The function of the clear trigger condition instruction is to clear Trigger0.
当处理器内核执行清除触发指令时,将触发条件Trigger0置为低。When the processor core executes the clear trigger instruction, the trigger condition Trigger0 is set low.
该清除触发指令的格式可以为:The format of the clear trigger instruction can be:
Clear Trigger0Clear Trigger0
以上就是处理器内核的功能。These are the functions of the processor core.
Marker标记存储单元,用于缓存所述输出标记列表。A marker storage unit, configured to cache the output marker list.
外部控制条件输入单元,用于将外部输入的触发条件Trigger0传输给处理器内核。前面已经提到,触发条件Trigger0可以作为等待结束条件、循环条件、跳转条件。The external control condition input unit is used to transmit the externally input trigger condition Trigger0 to the processor core. As mentioned above, the trigger condition Trigger0 can be used as a waiting end condition, a loop condition, and a jump condition.
下面举一个具体例子。Here is a specific example.
首先输出waveformA的子集(10,1000),标记输出100和200;接着重复输出waveformB 10次;接着清除触发信号Trigger0;接着等待100个处理器周期;在这期间外界可以选择通过外部控制条件输入单元将Trigger0置为高或不做操作。这会影响到最后的输出。最后根据Trigger0触发条件输出waveformC或输出waveformD。First output a subset of waveformA (10, 1000), mark output 100 and 200; then repeatedly output waveformB 10 times; then clear the trigger signal Trigger0; then wait for 100 processor cycles; during this period, the outside world can choose to input through external control conditions The unit sets Trigger0 high or does nothing. This affects the final output. Finally, output waveformC or output waveformD according to the trigger condition of Trigger0.
再此之前waveformA~waveformD已经存储到波形存储器中。Before this, waveformA~waveformD have been stored in the waveform memory.
综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。To sum up, the above are only preferred embodiments of the present invention, and are not intended to limit the protection scope of the present invention. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present invention shall be included within the protection scope of the present invention.
Claims (5)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201110430689.8A CN102520760B (en) | 2011-12-20 | 2011-12-20 | Processor for arbitrary waveform generating system |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201110430689.8A CN102520760B (en) | 2011-12-20 | 2011-12-20 | Processor for arbitrary waveform generating system |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN102520760A true CN102520760A (en) | 2012-06-27 |
| CN102520760B CN102520760B (en) | 2014-09-03 |
Family
ID=46291712
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201110430689.8A Expired - Fee Related CN102520760B (en) | 2011-12-20 | 2011-12-20 | Processor for arbitrary waveform generating system |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN102520760B (en) |
Cited By (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102788891A (en) * | 2012-07-30 | 2012-11-21 | 电子科技大学 | Complex waveform sequence generator |
| CN104545889A (en) * | 2014-12-30 | 2015-04-29 | 深圳邦健生物医疗设备股份有限公司 | Waveform demonstration method, device and medical equipment |
| US20150277906A1 (en) * | 2014-03-31 | 2015-10-01 | Raytheon Bbn Technologies Corp. | Instruction set for arbitrary control flow in arbitrary waveform generation |
| CN106625674A (en) * | 2016-12-29 | 2017-05-10 | 北京光年无限科技有限公司 | Command processing method for robot and robot |
| CN108872902A (en) * | 2018-06-29 | 2018-11-23 | 上海东软医疗科技有限公司 | waveform output method and device |
| CN110989766A (en) * | 2018-11-16 | 2020-04-10 | 苏州普源精电科技有限公司 | A method and apparatus for constructing an arbitrary wave function |
| CN111077940A (en) * | 2019-11-29 | 2020-04-28 | 普源精电科技股份有限公司 | A method and device for automatically creating waveform sequences |
| CN113485748A (en) * | 2021-05-31 | 2021-10-08 | 上海卫星工程研究所 | Satellite condition instruction system and execution method thereof |
| CN115685811A (en) * | 2022-09-28 | 2023-02-03 | 苏州精智达智能装备技术有限公司 | A signal generator structure and instruction system capable of generating polar signal waveforms |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN2064518U (en) * | 1990-01-03 | 1990-10-24 | 北京理工大学 | Multifunctional Function Waveform Generator |
| JPH0414901A (en) * | 1990-05-09 | 1992-01-20 | Yokogawa Electric Corp | Waveform generator |
| US7453460B2 (en) * | 2000-06-19 | 2008-11-18 | Mental Images Gmbh | System and method for generating pixel values for pixels in an image using strictly deterministic methodologies for generating sample points |
| CN101807089A (en) * | 2010-04-02 | 2010-08-18 | 广西大学 | Waveform signal generator with optionally adjustable output signal offset |
-
2011
- 2011-12-20 CN CN201110430689.8A patent/CN102520760B/en not_active Expired - Fee Related
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN2064518U (en) * | 1990-01-03 | 1990-10-24 | 北京理工大学 | Multifunctional Function Waveform Generator |
| JPH0414901A (en) * | 1990-05-09 | 1992-01-20 | Yokogawa Electric Corp | Waveform generator |
| US7453460B2 (en) * | 2000-06-19 | 2008-11-18 | Mental Images Gmbh | System and method for generating pixel values for pixels in an image using strictly deterministic methodologies for generating sample points |
| CN101807089A (en) * | 2010-04-02 | 2010-08-18 | 广西大学 | Waveform signal generator with optionally adjustable output signal offset |
Cited By (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102788891A (en) * | 2012-07-30 | 2012-11-21 | 电子科技大学 | Complex waveform sequence generator |
| CN102788891B (en) * | 2012-07-30 | 2014-08-13 | 电子科技大学 | Complex waveform sequence generator |
| US20150277906A1 (en) * | 2014-03-31 | 2015-10-01 | Raytheon Bbn Technologies Corp. | Instruction set for arbitrary control flow in arbitrary waveform generation |
| CN104545889A (en) * | 2014-12-30 | 2015-04-29 | 深圳邦健生物医疗设备股份有限公司 | Waveform demonstration method, device and medical equipment |
| CN106625674B (en) * | 2016-12-29 | 2019-09-27 | 北京光年无限科技有限公司 | An instruction processing method for a robot and the robot |
| CN106625674A (en) * | 2016-12-29 | 2017-05-10 | 北京光年无限科技有限公司 | Command processing method for robot and robot |
| CN108872902A (en) * | 2018-06-29 | 2018-11-23 | 上海东软医疗科技有限公司 | waveform output method and device |
| CN108872902B (en) * | 2018-06-29 | 2021-05-28 | 上海东软医疗科技有限公司 | Waveform output method and apparatus |
| CN110989766A (en) * | 2018-11-16 | 2020-04-10 | 苏州普源精电科技有限公司 | A method and apparatus for constructing an arbitrary wave function |
| CN111077940A (en) * | 2019-11-29 | 2020-04-28 | 普源精电科技股份有限公司 | A method and device for automatically creating waveform sequences |
| CN113485748A (en) * | 2021-05-31 | 2021-10-08 | 上海卫星工程研究所 | Satellite condition instruction system and execution method thereof |
| CN115685811A (en) * | 2022-09-28 | 2023-02-03 | 苏州精智达智能装备技术有限公司 | A signal generator structure and instruction system capable of generating polar signal waveforms |
| CN115685811B (en) * | 2022-09-28 | 2024-11-08 | 苏州精智达智能装备技术有限公司 | Signal generator structure capable of generating polar signal waveform and instruction system |
Also Published As
| Publication number | Publication date |
|---|---|
| CN102520760B (en) | 2014-09-03 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN102520760B (en) | Processor for arbitrary waveform generating system | |
| JP6096120B2 (en) | Load / store circuitry for processing clusters | |
| CN104603742B (en) | Result generation for the state machine engine | |
| KR101873619B1 (en) | Boolean logic in a state machine lattice | |
| CN102221987B (en) | Instruction set encoding method based on embedded special instruction set processor | |
| CN103699360B (en) | A kind of vector processor and carry out vector data access, mutual method | |
| CN107256156A (en) | Method and system for the detection in state machine | |
| CN102163141B (en) | Addressing module structure for realizing digital signal processor | |
| KR102165134B1 (en) | Methods and systems for using state vector data in a state machine engine | |
| CN102520761A (en) | Arbitrary waveform generating system based on user-defined processor | |
| CN103150146A (en) | ASIP (application-specific instruction-set processor) based on extensible processor architecture and realizing method thereof | |
| JP2015531111A (en) | Method and system for handling data received by a state machine engine | |
| CN107436618A (en) | A kind of AWG based on instruction architecture | |
| US20140317383A1 (en) | Apparatus and method for compressing instruction for vliw processor, and apparatus and method for fetching instruction | |
| CN107402596A (en) | A kind of AWG based on instruction architecture | |
| Kohútka et al. | Hardware accelerated scheduling in real-time systems | |
| TWI585602B (en) | A method or apparatus to perform footprint-based optimization simultaneously with other steps | |
| CN106598840B (en) | The efficient test structure of peripheral hardware at a slow speed and method based on software self-test technology | |
| US11036616B2 (en) | Tracing the data processing activities of a data processing apparatus | |
| CN102033733B (en) | Novel micro controller unit (MCU) structure | |
| CN111459872A (en) | A fast inter-core data synchronization method for multi-core parallel computing | |
| CN102339223B (en) | Digital data processing system | |
| CN102566969A (en) | A Method of Improving the Interaction between Software and Hardware in SOPC System | |
| CN107422780A (en) | A kind of AWG based on instruction architecture | |
| CN111355491B (en) | Single-channel analog signal sampling method and device |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| C06 | Publication | ||
| PB01 | Publication | ||
| C10 | Entry into substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| C14 | Grant of patent or utility model | ||
| GR01 | Patent grant | ||
| CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20140903 |
|
| CF01 | Termination of patent right due to non-payment of annual fee |

