脉冲产生方法及装置转让专利

申请号 : CN201110111259.X

文献号 : CN102315840B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 杜江峰徐南阳荣星王梓翔种波

申请人 : 中国科学技术大学

摘要 :

本申请公开了一种脉冲产生方法及装置,该脉冲产生装置可以同时获得波形控制指令和波形指令进行解码处理,多个解码器同时解码呈现出流水作业,流水线方式的解码是将一条指令的解码过程分成多步来进行,每一级电路只处理其中的一步,这样多级电路同时处理流水线上的多个指令,实现在解析指令的同时,输出波形,使得以前在多个时钟周期内才能解析的一条指令缩短到平均一个时钟周期以内,降低了解码所用时间,提高了解码效率,进而提高了脉冲波形产生的速度和频率。

权利要求 :

1.一种脉冲产生方法,其特征在于,包括:

A、根据波形控制指令的存储地址获得对应的当前波形控制指令,解析获得的当前波形控制指令,得到当前波形控制指令携带的波形指令的存储地址,以及下一条波形控制指令的存储地址;

B、解析根据所述波形指令的存储地址获取的波形指令,得到输出波形,同时,依据所述下一条波形控制指令的存储地址获得的下一条波形控制指令作为当前波形控制指令,返回执行步骤A。

2.根据权利要求1所述的方法,其特征在于:

预先将波形控制指令存储到至少一个第一存储区域中,将波形指令存储到至少一个第二存储区域中。

3.根据权利要求1所述的方法,其特征在于:

预先将波形控制指令和波形指令,存储到具有多个独立的读写端口的一个存储区域中。

4.根据权利要求1所述的方法,其特征在于:

预先将波形控制指令和波形指令,存储到具有多个独立的读写端口的多个存储区域中,每个所述存储区域至少包括两个独立读写端口,且同时存储有波形控制指令和波形指令。

5.一种脉冲产生装置,其特征在于,包括:存储单元、波形控制指令解码器及波形解码器,其中:所述存储单元中存储有波形控制指令和波形指令,包括第一读写端口和第二读写端口;

所述存储单元根据波形控制指令的存储地址获得对应的当前波形控制指令,并通过第一读写端口将当前波形控制指令发送至所述波形控制指令解码器进行解析,得到所述当前波形控制指令对应波形指令的存储地址,以及下一条波形控制指令的存储地址;

所述存储单元通过第一读写端口,将依据所述波形控制指令解码器提供的下一条波形控制指令的存储地址获得的下一条波形控制指令,作为当前波形控制指令发送至所述波形控制指令解码器进行解析,以及通过第二读写端口,将依据所述波形控制指令解码器提供的波形指令的存储地址获得的波形指令,发送至波形解码器进行解析,得到输出波形。

6.根据权利要求5所述的脉冲产生装置,其特征在于,所述存储单元包括:至少一个同时存储有波形控制指令和波形指令的存储区域,且该存储区域具有独立的第一读写端口和第二读写端口。

7.根据权利要求5所述的脉冲产生装置,其特征在于,所述存储单元包括:至少一个与所述第一读写端口相连,且用于存储波形控制指令的第一存储区域,以及至少一个与所述第二读写端口相连,且用于存储波形指令的第二存储区域。

8.根据权利要求5-7任一项所述的脉冲产生装置,其特征在于,还包括:微控制器,用于进行初始化,以及控制所述波形控制指令解码器和波形解码器和存储单元的工作状态。

说明书 :

脉冲产生方法及装置

技术领域

[0001] 本申请涉及数字脉冲技术领域,特别是涉及一种脉冲产生方法及装置。

背景技术

[0002] 可编程脉冲产生方式,是使用类似于计算机编程语言的方式来描述脉冲波形,脉冲发生装置接收一定形式的波形控制码,通过解析所述波形控制码并执行相应的操作,常见的波形控制方式有顺序、循环、跳转等,可以通过波形控制码实现比较复杂的波形控制。
[0003] 现有技术使用的脉冲发生器,将波形控制码和波形存储在同一条指令中,这样,在解析控制码的同时不能产生新的波形,只能在控制码解析完成后获取、解析波形并输出,因而限制了其产生的最小脉冲时间片长度,也就无法按照最小时钟周期产生任意脉冲波形,比如SpinCore公司的工作频率为500MHz的Pulse Blaster ESR-PRO脉冲发生器在正常模式下最小只能产生宽度为12ns的脉冲波形,因为,此种脉冲产生装置需要至少6个工作时钟周期来解码,这样也就制约了可编程脉冲产生方式产生脉冲的速度,即产生的脉冲的频率较低。目前,亟待解决的是如何提高可编程脉冲产生方式产生脉冲的速度。

发明内容

[0004] 为解决上述技术问题,本申请实施例提供一种脉冲产生方法及装置,以提高可编程方式产生的脉冲的频率,技术方案如下:
[0005] 一种脉冲产生方法,该方法包括:
[0006] A、解析获得的当前波形控制指令,得到当前波形控制指令携带的波形指令的存储地址,以及下一条波形控制指令的存储地址;
[0007] B、解析根据所述波形指令的存储地址获取的波形指令,得到输出波形,同时,依据所述下一条波形控制指令的存储地址获得的下一条波形控制指令作为当前波形控制指令,返回执行步骤A。
[0008] 优选的,预先将波形控制指令存储到至少一个第一存储区域中,将波形指令存储到至少一个第二存储区域中。
[0009] 优选的,预先将波形控制指令和波形指令存储到具有多个独立的读写端口的一个存储区域中。
[0010] 优选的,预先将波形控制指令和波形指令存储到具有多个独立的读写端口的多个存储区域中,每个所述存储区域至少包括两个独立读写端口,且同时存储有波形控制指令和波形指令。
[0011] 一种脉冲产生装置,包括:存储单元、波形控制指令解码器及波形解码器,其中,所述存储单元中存储有波形控制指令和波形指令,包括第一读写端口和第二读写端口;
[0012] 所述存储单元通过第一读写端口将当前波形控制指令发送至所述波形控制指令解码器进行解析,得到所述当前波形控制指令对应波形指令的存储地址,以及下一条波形控制指令的存储地址;
[0013] 所述存储单元通过第一读写端口,将依据所述波形控制指令解码器提供的下一条波形控制指令的存储地址获得的下一条波形控制指令,作为当前波形控制指令发送至所述波形控制指令解码器进行解析,以及通过第二读写端口,将依据所述波形控制指令解码器提供的波形指令的存储地址获得的波形指令,发送至波形解码器进行解析,得到输出波形。
[0014] 优选的,所述存储单元包括:至少一个同时存储有波形控制指令和波形指令的存储区域,且该存储区域具有独立的第一读写端口和第二读写端口。
[0015] 优选的,所述存储单元包括:至少一个与所述第一读写端口相连,且用于存储波形控制指令的第一存储区域,以及至少一个与所述第二读写端口相连,且用于存储波形指令的第二存储区域。
[0016] 优选的,上述脉冲产生装置,还包括:微控制器,用于进行初始化,以及控制所述波形控制指令解码器和波形解码器和存储单元的工作状态。
[0017] 应用以上本申请提供的技术方案,脉冲产生装置可以同时获得波形控制指令和波形指令进行解码处理,多个解码器同时解码呈现出流水作业,流水线方式的解码是将一条指令的解码过程分成多步来进行,每一级电路只处理其中的一步,这样多级电路同时处理流水线上的多个指令,实现在解析指令的同时,输出波形,使得以前在多个时钟周期内才能解析的一条指令缩短到平均一个时钟周期以内,降低了解码所用时间,提高了解码效率,进而提高了脉冲波形产生的速度和频率。

附图说明

[0018] 为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0019] 图1为本申请实施例一种脉冲产生方法的流程图;
[0020] 图2为本申请实施例一种脉冲产生装置的结构示意图;
[0021] 图3a为本申请实施例另一种脉冲产生装置的结构示意图;
[0022] 图3b为本申请实施例另一种脉冲产生装置的结构示意图。

具体实施方式

[0023] 本申请实施例提供一种脉冲产生方法,用于提高可编程脉冲产生方式的脉冲产生速度和频率,可以同时获得波形控制指令和波形指令进行解析处理,并采用流水线方式解析指令,由于流水线方式是将一条指令的解码过程分成多步来进行,每一级电路只处理其中的一步,这样多级电路同时处理流水线上的多条指令,使得以前在多个工作时钟周期内才能解析的一条指令缩短到平均一个工作时钟周期以内完成。降低了解码所用时间,提高了解码效率,进而提高了脉冲波形产生的速度和频率。
[0024] 为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
[0025] 参见图1,图1为本申请实施例一种脉冲产生方法的流程示意图,该方法包括:
[0026] S101,解析获得的当前波形控制指令,得到所述当前波形控制指令携带的波形指令存储地址,以及下一条波形控制指令的存储地址。
[0027] 根据波形控制指令的存储地址获得对应的波形控制指令,即当前波形控制指令,解析所述当前波形控制指令,得到当前波形控制指令对应波形指令的存储地址,以及下一条波形控制指令的存储地址。
[0028] 具体的,所述波形控制指令包含三部分信息分别是:该波形控制指令所携带的波形指令的存储地址、循环信息,以及循环次数信息,其中:
[0029] 当所述循环信息为循环执行信息时,则下一条波形控制指令的存储地址为,当前波形控制指令的存储地址加1。所述循环次数信息为波形控制指令的循环执行次数;
[0030] 具体的,比如第i条波形控制指令中的循环信息为开始循环,第n条波形控制指令中的循环信息为停止循环,则循环执行第i+1条波形控制指令到第n条波形控制指令的所有指令,循环次数,即第i条波形控制指令中的循环次数对应的信息。
[0031] 当所述循环信息为不循环执行波形控制指令的信息时,则所述循环次数信息具体为下一条波形控制指令的存储地址。
[0032] S102,解析依据所述波形指令的存储地址获得的波形指令,得到输出波形,同时,依据所述下一条波形控制指令的存储地址获得下一条波形控制指令,作为当前波形控制指令返回执行S101,直到所有波形控制指令都执行完。
[0033] 具体实施时,解析所述当前波形控制指令所得到的波形指令的存储地址,是地址块地址,包含波形指令所在存储区域的起始地址及地址块长度,存储单元不能直接利用地址块进行寻址,故需要将该地址块信息解析成存储单元能够直接进行寻址的寻址地址,进而根据该寻址地址获得波形指令。
[0034] 解析所述波形指令,得到输出波形,以及该波形持续的时间,即得到希望输出的脉冲波形。
[0035] 与此同时,依据下一条波形控制指令的存储地址获得下一条波形控制指令,作为当前波形控制指令,返回执行步骤S101,直到所有的波形控制指令都解析完。
[0036] 由上述内容可知,波形控制指令的获取、解析与波形指令获取、解析呈现出流水线方式,该流水线上可以同时处理多条波形控制指令,直到解析完结束指令停止,即所有的波形控制指令均解析完。
[0037] 下面以一个具体实例说明流水线方式解析过程:
[0038] 获得第一条波形控制指令,作为当前波形控制指令,解析第一条波形控制指令得到第一波形指令的存储地址,以及第二条波形控制指令的存储地址。
[0039] 依据所述第一波形指令的存储地址获得第一波形指令,并解析该第一波形指令,得到输出波形。在获取并解析所述第一波形指令的同时,根据所述第二条波形控制指令的存储地址获得第二条波形控制指令,作为当前波形控制指令进行解析处理。
[0040] 换言之,第二条波形控制指令的获取、解析处理与第一波形指令的获取、解析处理可以同时进行,依此类推,多条波形控制指令及波形指令的处理则呈现流水作业,流水线方式解码是将一条指令的解码过程分成多步、由多级电路来进行,每一级电路只处理其中的一步,这样多级电路同时处理流水线上的多个指令。本实施例中的指令解码流水线能够同时处理波形控制指令和波形指令,从而缩短了每条波形控制指令的处理等待时间,使得一条指令的解析处理时间由多个时钟周期缩短到平均一个时钟周期以内,宏观上看,缩短了输出脉冲波形的时间,因此,提高了脉冲产生的速度和频率。
[0041] 优选的,在图1所对应的脉冲产生方法的实施例中,为实现同时获取波形控制指令和波形指令进行解析处理,可以预先将波形控制指令存储到至少一个第一存储区域中,将波形指令存储到至少一个第二存储区域中。
[0042] 本领域技术人员可以理解的是,存储区域是组成存储单元的最小单位,即存储单元由至少一个存储区域构成。因此,所述至少一个第一存储区域与所述至少一个第二存储区域可以组成一个或多个存储单元。
[0043] 当为多个存储单元时,可以是所述第一存储区域组成至少一个存储单元,所述第二存储区域组成至少一个存储单元,还可以是,每个存储单元中均包括第一存储区域和第二存储区域两种存储区域。
[0044] 优选的,在图1所示的脉冲产生方法实施例中,为实现同时获取波形控制指令和波形指令进行解析处理,还可以,预先将波形控制指令和波形指令,同时存储到具有多个独立的读写端口的一个存储区域中,即多个读写端口共用一个存储区域,但多个端口间的读写操作互不影响;
[0045] 本领域技术人员可以理解的是,可以使用多个具有多个独立读写端口的存储区域来存储所有的波形控制指令和波形指令。
[0046] 相应于上面的方法实施例,本申请还提供一种脉冲产生装置,参见图2,该装置包括:存储单元1、波形控制指令解码器2、波形解码器3。
[0047] 存储单元1,用于存储波形控制指令及波形指令的存储区域,包括第一读写端口和第二读写端口。
[0048] 所述存储单元1通过第一读写端口将当前波形控制指令发送至所述波形控制指令解码器2进行解析,得到所述当前波形控制指令对应波形指令的存储地址,以及下一条波形指令的存储地址;
[0049] 所述存储单元1通过第一读写端口将依据所述波形控制指令解码器2提供的下一条波形控制指令的存储地址获得的下一条波形控制指令,作为当前波形控制指令,发送至波形控制指令解码器2进行解析,以及通过第二读写端口,将依据所述波形控制指令解码器2提供的波形指令的存储地址获得的波形指令,发送至波形解码器3进行解析,得到输出波形。
[0050] 具体实施时,波形控制指令解码器2对获得的当前波形控制指令进行解析处理,得到所述当前波形控制指令携带的波形指令存储地址,以及下一条波形控制指令的存储地址。
[0051] 所述波形控制指令包含三部分信息,分别是:该波形控制指令所携带的波形指令的存储地址、循环信息,以及循环次数信息,其中:
[0052] 当所述循环信息为循环执行信息时,则下一条波形控制指令的存储地址为,当前波形控制指令的存储地址加1,所述循环次数信息为波形控制指令的循环执行次数;
[0053] 具体的,比如第i条波形控制指令中的循环信息为开始循环,第n条波形控制指令中的循环信息为停止循环,则循环执行第i+1条波形控制指令到第n条波形控制指令的所有指令,循环次数,即第i条波形控制指令中的循环次数对应的信息。
[0054] 当所述循环信息为不循环执行波形控制指令的信息时,则所述循环次数信息具体为下一条波形控制指令的存储地址。
[0055] 具体的,所述波形控制指令解码器2解析所述当前波形控制指令,得到当前波形控制指令携带的波形指令的存储地址和下一条波形控制指令的存储地址,返回至所述存储单元1,存储单元1根据所述波形指令的存储地址,获得当前波形控制指令生效的波形指令,并将该波形指令发送给波形解码器3。与此同时存储单元1将依据所述下一条波形控制指令的存储地址获得的下一条波形控制指令,作为当前波形控制指令发送至波形控制指令解码器2进行解析。
[0056] 波形解码器3解析接收到的波形指令,得到希望输出的脉冲波形,所述波形指令主要包括:希望输出的波形,以及该波形持续的时间。
[0057] 由于存储单元1能够满足同时寻址得到两种功能的指令,即波形控制指令和波形指令,因此,所述波形控制指令解码器2和波形解码器3可以同时进行解析操作,以两条波形控制指令为例进行详细说明:
[0058] 波形控制指令解码器2解析获得的第一条波形控制指令,得到第一条波形控制指令携带的波形指令的存储地址,以及第二条波形控制指令的存储地址。
[0059] 依据第一条波形控制指令携带的波形指令的存储地址获取波形指令时,依据第二条波形控制指令的存储地址获得第二条波形控制指令。
[0060] 当波形解码器3解析接收到的第一条波形控制指令生效的波形指令时,波形控制指令解码器2解析处理获得的第二条波形控制指令,这样,缩短了第二条波形控制指令的处理等待时间。当有多条波形控制指令时,指令解码器2和波形解码器3可以同时进行解码处理,呈现出流水作业,提高了解码效率。
[0061] 流水作业是将一条指令的解码过程分成多步来进行,每一级电路只处理其中的一步,这样多级电路同时处理流水线上的多条指令,使得以前在多个工作时钟周期内完成的一条指令,可以缩短到平均一个工作时钟周期内完成,缩短了解码所用时间、提高了解码效率,因此,提高了脉冲产生的速度和频率。
[0062] 优选的,参见图2,所述脉冲产生装置,还包括:微控制器4,用于数据初始化,以及控制所述存储单元1、所述波形控制指令解码器2,以及所述波形解码器3的工作状态。
[0063] 具体的,所述数据初始化具体为将波形控制指令和波形指令分别存储在多个存储区域中,能够同时获得波形控制指令和波形指令。该微控制器4控制所述存储单元1、波形控制指令解码器2,以及波形解码器3的开始工作和停止工作的状态,当需要紧急停止该脉冲产生装置时,可以通过微控制器4控制存储单元1、波形控制指令解码器2和波形解码器3停止工作。
[0064] 优选的,参见图3a,图2对应的实施例中的存储单元1可以包括:同时存储有波形控制指令和波形指令的存储区域10,且该存储区域具有独立的第一读写端口11和第二读写端口12。
[0065] 本领域技术人员可以理解的是,存储区域是组成存储单元的最小单位,即存储单元可以由一个或多个存储区域构成。因此,所述存储区域10的个数可以有多个,每个存储区域10都具有两个独立的读写端口,即第一读写端口11和第二读写端口12,通过这两个读写端口能够同时获得两种不同功能的指令,即通过第一读写端口11和第二读写端口12分别获得波形控制指令和波形指令。
[0066] 优选的,参见图3b,图2所对应的脉冲产生装置实施例中,存储单元1可以包括:用于存储波形控制指令的第一存储区域100,其读写端口为第一读写端口,用于存储波形指令的第二存储区域110,其读写端口为第二读写端口。
[0067] 本实施例提供的脉冲产生装置,将不同功能的指令存储在不同的存储区域,即将波形控制指令存储在第一存储区域100中,通过第一读写端口读写,波形指令存储在第二存储区域110,通过第二读写端口进行读写,能够同时获得不同功能的指令,从而实现在解析波形控制指令的同时解析得到希望输出的波形,从而提高了脉冲波形产生的速度和速率。
[0068] 优选的,参见图3b,上述实施例中的波形控制指令解码器具体包括:指令解码器21和地址解码器22,其中:
[0069] 所述指令解码器21,用于对获得的波形控制指令进行指令解码处理,得到所述波形控制指令生效的波形指令在第二存储区域的存储地址,经过一个缓冲列队发送给地址解码器22,同时,还得到下一条波形控制指令的存储地址,并将该存储地址返回至波形控制指令存储单元,进行下一轮寻址操作。
[0070] 所述地址解码器22,用于将所述波形指令在第二存储区域中的存储地址进行解析处理,得到该第二存储区域能够直接处理的存储地址。
[0071] 波形控制指令经指令解码器21进行指令解码处理后,得到波形指令在第二存储区域中的存储地址块,但是,存储区域不能直接根据该地址块进行寻址,必须先将该地址块进行解析,得到第二存储区域能够直接进行寻址操作的存储地址,进而获得对应的波形指令,获得的波形指令再经过波形解码器的解析处理后输出需要的脉冲波形。
[0072] 本领域技术人员可以理解的是,所述存储单元的个数可以是一个或多个,本申请对此并不限制。
[0073] 为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
[0074] 通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机或微控制器设备执行本申请各个实施例或者实施例的某些部分所述的方法。
[0075] 本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0076] 以上所述仅是本申请的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。