一种基于fpga的多路信号同步采样控制电路的制作方法

文档序号:6297815阅读:113来源:国知局
一种基于fpga的多路信号同步采样控制电路的制作方法
【专利摘要】本发明公开了一种基于FPGA的多路信号同步采样控制电路,至少包括多路信号采样接口电路、晶振电路、FPGA芯片和微处理器;FPGA芯片至少包括多路信号采样并行处理模块、同步锁存模块、输出控制模块、地址译码模块和同步锁存信号产生模块;同步锁存信号产生模块输出的同步锁存信号SYNL控制同步锁存模块将多路信号采样并行处理模块输出的多路数据同步锁存,使多路信号采样并行处理模块输出的同一个时刻的多路数据保持不变,保证了微处理器从FPGA芯片中逐一读取的各路数据之间的同步性。本发明适用于要求多路信号同步采样的控制系统,尤其适用于多路脉冲信号或多路数字信号的同步采样的控制系统,灵活方便,实用性强。
【专利说明】—种基于FPGA的多路信号同步采样控制电路
【技术领域】
[0001]本发明涉及信号采集及传输【技术领域】,具体涉及一种基于FPGA的多路信号同步采样控制电路。
【背景技术】
[0002]现代控制系统中,信号采集系统已经广泛地应用于电子测量、通信、雷达、航空航天、工业控制等领域。信号可以分为模拟信号和数字信号。对模拟信号的采集,需要使用模拟数字转换器(ADC)进行采集。现有技术中,对多路模拟信号同步采样进行了大量研究。中国专利文献号 ZL200810240063.9、ZL201010577253.7、ZL201310087071.5、ZL200720311326.1等都只是对多路模拟信号如何同步采样进行了发明设计,但对与一些非模拟信号的数字脉冲信号却不能像模拟信号那样使用ADC进行多路信号的同步采样。例如,在数控系统和光刻机系统中,为使系统获得更精确的定位精度和同步精度,除需要对各运动轴进行同步控制外,还需要同步实时地检测安装在每个运动轴上的传感器信号以获得每个运动轴的同一时刻的位置、速度或角度等信息,但是安装在运动轴上的传感器输出的信号不属于模拟信号,而是数字脉冲信号。所以有必要设计一种同步采样装置或同步采样控制电路,对多路非模拟信号进行同步采样。

【发明内容】

[0003]本发明目的是为了解决多路非模拟信号的同步采样问题,从而提出了一种基于FPGA的多路信号同步采样控制电路。
[0004]本发明的技术方案概述如下:
[0005]一种基于FPGA的多路信号同步采样控制电路(如图1所示),至少包括多路信号采样接口电路1、晶振电路2、FPGA芯片3和微处理4,其特征在于:所述FPGA芯片3至少包括多路信号采样并行处理模块31、同步锁存模块32、输出控制模块33、地址译码模块34和同步锁存信号产生模块35。
[0006]所述多路信号采样并行处理模块31的输入端与多路信号采样接口电路I的输出端相连;所述多路信号采样并行处理模块31的输出端与同步锁存模块32的输入端相连;所述同步锁存模块32的输出端与输出控制模块33的输入端相连;所述多路信号采样并行处理模块31输出的数据Clpd2,…,dn输入到同步锁存模块32 ;所述同步锁存模块32输出的数据Sdpsd2,…,Sdn输入到输出控制模块33 ;所述同步锁存模块32输出的数据路数与多路信号采样并行处理模块31输出的数据路数相等,即数据Cln和数据Sdn中的下标η相等,η为正整数且η≥2。
[0007]所述FPGA芯片3的地址译码模块34的输出端分别与输出控制模块33的输入端和同步锁存信号产生模块35的输入端相连;所述地址译码模块34输出的译码信号&1,&2,…,an输入到输出控制模块33,所述地址译码模块34输出的控制信号CTL和同步信号SYN2输入到同步锁存信号产生模块35。所述地址译码模块34输出的译码信号个数与同步锁存模块32输出的数据路数相等,即译码信号Bn、数据dn和数据Sdn中的下标η相等,η为正整数且η>2。所述地址译码模块34输出的译码信号a1;a2,…,an与同步锁存模块32输出的数据Sd1, Sd2,…,Sdn 一一对应,即下标相同的译码信号an与数据Sdn相对应;当译码信号an有效时,微处理器4从输出控制模块33中读取数据sdn。
[0008]所述微处理4通过数据总线和读控制信号与FPGA芯片3的输出控制模块33相连;所述微处理4通过地址总线与FPGA芯片3的地址译码模块34相连;所述微处理4通过数据总线、读控制信号、写控制信号、同步信号SYN3和输出保持信号HOLD与FPGA芯片3的同步锁存信号产生模块35相连; [0009]所述晶振电路2输出的时钟信号clock分别输入到FPGA芯片3的多路信号米样并行处理模块31、同步锁存模块32和同步锁存信号产生模块35。
[0010]所述同步锁存信号产生模块35输出的同步锁存信号SYNL输入到同步锁存模块32 ;所述同步锁存信号SYNL控制同步锁存模块32将多路信号采样并行处理模块31输出的同一时刻的数据屯,d2,…,dn同步锁存为同步锁存模块32输出的数据Sd1, sd2,…,sdn。
[0011]所述同步锁存信号产生模块35(如图2所示)至少包括与非门、与门、或门、控制寄存器、分频器、逻辑处理单元、同步器和延时器;所述与非门的一个输入端与微处理4输出的读控制信号相连,所述与非门的另一个输入端与微处理4输出的写控制信号相连;所述与门的一个输入端和与非门的输出端相连,所述与门的另一个输入端与地址译码模块34输出的控制信号CTL相连;所述控制寄存器的输入端EN和与门的输出端相连;所述控制寄存器的输入端D与微处理4输出的数据总线相连;所述分频器的输入端D与控制寄存器的输出端Q相连;所述逻辑处理单元的输入端D与地址译码模块34输出的同步信号SYN2相连;所述同步器的输入端D与微处理4输出的同步信号SYN3相连;所述或门的输入端分别与分频器输出的同步信号SYN1、逻辑处理单元的输出端和同步器的输出端相连;所述延时器的输入端D和或门的输出端相连;所述晶振电路2输出的时钟信号clock分别与控制器的输入端Clk、分频器的输入端Clk、逻辑处理单元的输入端Clk、同步器的输入端Clk和延时器的输入端Clk相连;所述或门输出端输出的信号为所述同步锁存信号SYNL ;所述延时器输出端输出的信号为所述输出保持信号HOLD ο所述输出保持信号HOLD有效时,表明同步锁存信号SYNL已经控制FPGA芯片3的同步锁存模块32将多路信号采样并行处理模块31输出的同一时刻的数据Clpd2,…,dn同步锁存为同步锁存模块32输出的数据Sd1, Sd2,…,s dn ο
[0012]所述同步锁存模块32(如图3所示)包括两个锁存器或两个以上锁存器;所述锁存器的个数与多路信号采样并行处理模块31输出的数据路数相等;每个锁存器的输入端Clk与晶振电路2输出的时钟信号clock相连;每个锁存器的锁存控制端Clk-EN与同步锁存信号产生模块35输出的同步锁存信号SYNL相连;每个锁存器的输入端D与多路信号采样并行处理模块31输出的数据相连,每个锁存器的输出端Q输出的数据与输出控制模块33的输入端相连。
[0013]所述同步锁存信号产生模块35输出的同步锁存信号SYNL产生方式有三种:第一种方式是所述同步锁存信号产生模块35的分频器根据控制寄存器输出的分频系数K对晶振电路2输出的时钟信号clock进行K分频,分频器输出的同步信号SYNl即为时钟信号clock的K分频信号,同步信号SYNl经过或门后输出同步锁存信号SYNL ;第二种方式是所述地址译码模块34输出的同步信号SYN2输入到同步锁存信号产生模块35的逻辑处理单元,逻辑处理单元输出端输出的信号经过或门后输出同步锁存信号SYNL ;第三种方式是所述微处理器4输出的同步信号SYN3输入到同步锁存信号产生模块35的同步器,同步器输出端输出的信号经过或门后输出同步锁存信号SYNL ;当所述分频系数K等于零时,第一种方式不起作用;当所述同步信号SYN2 —直为低电平时,所述第二种方式不起作用;当所述同步信号SYN3为低电平时,所述第三种方式不起作用。
[0014]当需要对多路信号采样并行处理模块31输出的数据Cl1, d2,…,dn进行同步采样时,所述微处理器4选择同步锁存信号SYNL产生方式的其中一种方式使FPGA芯片3的同步锁存信号产生模块35产生同步锁存信号SYNL,当FPGA芯片3的同步锁存信号产生模块35输出的输出保持信号HOLD有效时,表明同步锁存信号SYNL已经控制FPGA芯片3的同步锁存模块32将多路信号米样并行处理模块31输出的同一时刻的数据(Ipd2,..., dn同步锁存为同步锁存模块32输出的数据Sd1, sd2,…,Sdn,这时微处理器4可以通过数据总线、地址总线和读控制信号从FPGA芯片3的输出控制模块33逐一读取数据Sd1, sd2,…,sdn ;微处理器4逐一读取数据过程中,FPGA芯片3的同步锁存模块32输出的数据Sd1, sd2,…,sdn保持不变,即表明微处理器4读取到的多路数据是同一时刻的数据,从而达到同步采样多路信号的目的。
[0015]当不需要对多路信号采样并行处理模块31输出的数据Cl1, d2,…,dn进行同步采样时,所示微处理器4可以通过数据总线、地址总线和写控制信号向FPGA芯片3的同步锁存信号产生模块35的控制寄存器写入零,使控制寄存器输出的分频系数K等于零,同时微处理器4也使同步信号SYN2和同步信号SYN3 —直处于低电平状态,从而使同步锁存信号SYNL产生方式都不起作用,这时同步锁存信号SYNL控制同步锁存模块32不锁存多路信号采样并行处理模块31输出的数据屯,d2,…,dn,所以微处理器4通过数据总线、地址总线和读控制信号从FPGA芯片3的输出控制模块33逐一读取数据Sd1, sd2,…,sdn是不同步的。
[0016]本发明提供一种基于FPGA的多路信号同步采样控制电路,通过FPGA芯片3的同步锁存信号产生模块35产生的同步锁存信号SYNL对多路信号采样并行处理模块31输出的多路数据进行同步锁存处理后,由微处理4从FPGA芯片中逐一读取,从而实现多路非模拟信号的同步采样控制。本发明可以提供三种同步锁存信号SYNL的产生方式,并可以实现同步采样与非同步采样的切换,灵活方便,实用性强。
【专利附图】

【附图说明】
[0017]图1是一种基于FPGA的多路信号同步采样控制电路的技术方案总体框图
[0018]图2是本发明的同步锁存信号产生模块的技术方案图和实施例图
[0019]图3是本发明的同步锁存模块的技术方案图
[0020]图4是一种基于FPGA的多路信号同步采样控制电路的一个具体实施例图
[0021]图5是本发明的同步锁存模块的一个具体实施例图
【具体实施方式】
[0022]下面结合附图对本发明作进一步描述。[0023]如图1所示是一种基于FPGA的多路信号同步采样控制电路的技术方案总体框图,多路信号采样接口电路I输入的信号路数可为大于2路或等于2路的任意数字脉冲信号。以多路信号采样接口电路I输入的信号路数为三路数字脉冲信号时为例,设计如图4所示的一种基于FPGA的多路信号同步采样控制电路的一个具体实施例,该控制电路至少包括三路信号采样接口电路1、晶振电路2、FPGA芯片3和微处理4 ;所述FPGA芯片3至少包括三路信号采样并行处理模块31、同步锁存模块32、输出控制模块33、地址译码模块34和同步锁存信号产生模块35。
[0024]如图2所示,为同步锁存信号产生模块35的实施例图,它至少包括与非门、与门、或门、控制寄存器、分频器、逻辑处理单元、同步器和延时器;所述与非门的一个输入端与微处理4输出的读控制信号相连,所述与非门的另一个输入端与微处理4输出的写控制信号相连;所述与门的一个输入端和与非门的输出端相连,所述与门的另一个输入端与地址译码模块34输出的控制信号CTL相连;所述控制寄存器的输入端EN和与门的输出端相连;所述控制寄存器的输入端D与微处理4输出的数据总线相连;所述分频器的输入端D与控制寄存器的输出端Q相连;所述逻辑处理单元的输入端D与地址译码模块34输出的同步信号SYN2相连;所述同步器的输入端D与微处理4输出的同步信号SYN3相连;所述或门的输入端分别与分频器输出的同步信号SYN1、逻辑处理单元的输出端和同步器的输出端相连;所述延时器的输入端D和或门的输出端相连;所述晶振电路2输出的时钟信号clock分别与控制器的输入端Clk、分频器的输入端Clk、逻辑处理单元的输入端Clk、同步器的输入端Clk和延时器的输入端Clk相连;所述或门输出端输出的信号为所述同步锁存信号SYNL ;所述延时器输出端输出的信号为所述输出保持信号HOLD。
[0025]图3所示是本发明的FPGA芯片3的同步锁存模块的技术方案图,所述同步锁存模块32包括两个锁存器或两个以上锁存器;所述锁存器的个数与多路信号采样并行处理模块31输出的数据路数η (η为正整数且η≤2)相等。结合图4的具体实施例和图3的技术方案图,当η等于3时,设计如图5所示的FPGA芯片3的同步锁存模块32的一个具体实施例,它包括三个锁存器,每个锁存器的输入端Clk与晶振电路2输出的时钟信号clock相连;每个锁存器的锁存控制端 Clk-EN与同步锁存信号产生模块35输出的同步锁存信号SYNL相连;每个锁存器的输入端D与多路信号采样并行处理模块31输出的数据相连,每个锁存器的输出端Q输出的数据与输出控制模块33的输入端相连。
[0026]在图4中,所述三路信号采样接口电路I是三个光电式编码器输出信号的采样接口电路,每个光电式编码器输出的信号经过三路信号采样接口电路I后输入到FPGA芯片3的三路信号采样并行处理模块31,三路信号采样并行处理模块31对每一路光电式编码器输出信号信号进行并行处理并输出三路数据屯,d2,d3 ;三路数据屯,d2,d3输入到同步锁存模块32 ;同步锁存信号产生模块35输出的同步锁存信号SYNL控制同步锁存模块32输出的数据Sd1, sd2, sd3输入到输出控制逻辑34。
[0027]当需要对三路信号采样并行处理模块31输出的数据dl,d2,d3进行同步采样时,所述微处理器4选择同步锁存信号SYNL产生方式的其中一种方式使FPGA芯片3的同步锁存信号产生模块35产生同步锁存信号SYNL,当FPGA芯片3的同步锁存信号产生模块35输出的输出保持信号HOLD有效时,表明同步锁存信号SYNL已经控制FPGA芯片3的同步锁存模块32将三路信号采样并行处理模块31输出的同一时刻的数据Cl1, d2,d3同步锁存为同步锁存模块32输出的数据Sd1, sd2, Sd3,这时微处理器4可以通过数据总线、地址总线和读控制信号从FPGA芯片3的输出控制模块33逐一读取数据Sd1, sd2, sd3 ;微处理器4逐一读取数据过程中,FPGA芯片3的同步锁存模块32输出的数据Sd1, sd2, sd3保持不变,即表明微处理器4读取到的三路数据是同一时刻的数据,从而达到同步采样多路信号的目的。
[0028]当不需要对三路信号采样并行处理模块31输出的数据Cl1, d2,d3进行同步采样时,所示微处理器4可以通过数据总线、地址总线和写控制信号向FPGA芯片3的同步锁存信号产生模块35的控制寄存器写入零,使控制寄存器输出的分频系数K等于零,同时微处理器4也使同步信号SYN2和同步信号SYN3 —直处于低电平状态,从而使同步锁存信号SYNL产生方式都不起作用,这时同步锁存信号SYNL控制同步锁存模块32不锁存三路信号采样并行处理模块31输出的数据屯,d2,d3,所以微处理器4通过数据总线、地址总线和读控制信号从FPGA芯片3的输出控制模块33逐一读取数据Sd1, sd2, sd3是不同步的。
[0029]在此说明书中,应当指出,以上实施例仅是本发明的一个具体例子。显然,本发明不局限于上述具体实施例,还可以做出各种修改、变换和变形。因此,说明书和附图应被认为是说明性的而非限制性的。凡是依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均应认为属于本发明的保护范围。
【权利要求】
1.一种基于FPGA的多路信号同步采样控制电路,至少包括多路信号采样接口电路(I)、晶振电路⑵、FPGA芯片(3)和微处理(4),其特征在于:所述FPGA芯片(3)至少包括多路信号采样并行处理模块(31)、同步锁存模块(32)、输出控制模块(33)、地址译码模块(34)和同步锁存信号产生模块(35)。
2.根据权利要求1所述的一种基于FPGA的多路信号同步采样控制电路,其特征在于:所述多路信号采样并行处理模块(31)的输入端与多路信号采样接口电路(I)的输出端相连;所述多路信号采样并行处理模块(31)的输出端与同步锁存模块(32)的输入端相连;所述同步锁存模块(32)的输出端与输出控制模块(33)的输入端相连;所述多路信号采样并行处理模块(31)输出的数据屯,d2,…,dn输入到同步锁存模块(32);所述同步锁存模块(32)输出的数据Sd1, sd2,..., sdn输入到输出控制模块(33)。
3.根据权利要求1所述的一种基于FPGA的多路信号同步采样控制电路,其特征在于:所述FPGA芯片(3)的地址译码模块(34)的输出端分别与输出控制模块(33)的输入端和同步锁存信号产生模块(35)的输入端相连;所述地址译码模块(34)输出的译码信号a1;a2,…,an输入到输出控制模块(33),所述地址译码模块(34)输出的控制信号CTL和同步信号SYN2输入到同步锁存信号产生模块(35)。
4.根据权利要求1所述的一种基于FPGA的多路信号同步采样控制电路,其特征在于:所述微处理⑷通过数据总线和读控制信号与FPGA芯片(3)的输出控制模块(33)相连;所述微处理(4)通过地址总线与FPGA芯片(3)的地址译码模块(34)相连;所述微处理(4)通过数据总线、读控制信号、写控制信号、同步信号SYN3和输出保持信号HOLD与FPGA芯片(3)的同步锁存信号产生模块(35)相连。
5.根据权利要求1所述的一种基于FPGA的多路信号同步采样控制电路,其特征在于:所述晶振电路⑵输出的时钟信号clock分别输入到FPGA芯片(3)的多路信号采样并行处理模块(31)、同步锁存模块(32)和同步锁存信号产生模块(35)。
6.根据权利要求1或2所述的一种基于FPGA的多路信号同步采样控制电路,其特征在于:所述同步锁存信号产生模块(35)输出的同步锁存信号SYNL输入到同步锁存模块(32);所述同步锁存信号SYNL控制同步锁存模块(32)将多路信号采样并行处理模块(31)输出的数据屯,d2,…,dn同步锁存为同步锁存模块(32)输出的数据Sd1, sd2,…,sdn。
7.根据权利要求1所述的一种基于FPGA的多路信号同步采样控制电路,其特征在于:所述同步锁存信号产生模块(35)至少包括与非门、与门、或门、控制寄存器、分频器、逻辑处理单元、同步器和延时器;所述与非门的一个输入端与微处理(4)输出的读控制信号相连,所述与非门的另一个输入端与微处理(4)输出的写控制信号相连;所述与门的一个输入端和与非门的输出端相连,所述与门的另一个输入端与地址译码模块(34)输出的控制信号CTL相连;所述控制寄存器的输入端EN和与门的输出端相连;所述控制寄存器的输入端D与微处理(4)输出的数据总线相连;所述分频器的输入端D与控制寄存器的输出端Q相连;所述逻辑处理单元的输入端D与地址译码模块(34)输出的同步信号SYN2相连;所述同步器的输入端D与微处理(4)输出的同步信号SYN3相连;所述或门的输入端分别与分频器输出的同步信号SYN1、逻辑处理单元的输出端和同步器的输出端相连;所述延时器的输入端D和或门的输出端相连;所述晶振电路(2)输出的时钟信号clock分别与控制器的输入端Clk、分频器的输入端Clk、逻辑处理单元的输入端Clk、同步器的输入端Clk和延时器的输入端Clk相连;所述或门输出端输出的信号为所述同步锁存信号SYNL ;所述延时器输出端输出的信号为所述输出保持信号HOLD。
8.根据权利要求1所述的一种基于FPGA的多路信号同步采样控制电路,其特征在于:所述同步锁存模块(32)包括两个锁存器或两个以上锁存器;所述锁存器的个数与多路信号采样并行处理模块(31)输出的数据路数相等;每个锁存器的输入端Clk与晶振电路(2)输出的时钟信号clock相连;每个锁存器的锁存控制端Clk-EN与同步锁存信号产生模块(35)输出的同步锁存信号SYNL相连;每个锁存器的输入端D与多路信号采样并行处理模块(31)输出的数据相连,每个锁存器的输出端Q输出的数据与输出控制模块(33)的输入端相连。
9.根据权利要求6或7所述的一种基于FPGA的多路信号同步采样控制电路,其特征在于:所述同步锁存信号产生模块(35)输出的同步锁存信号SYNL产生方式有三种:第一种方式是所述同步锁存信号产生模块(35)的分频器根据控制寄存器输出的分频系数K对晶振电路(2)输出的时钟信号clock进行K分频,分频器输出的同步信号SYNl即为时钟信号clock的K分频信号,同步信号SYNl经过或门后输出同步锁存信号SYNL ;第二种方式是所述地址译码模块(34)输出的同步信号SYN2输入到同步锁存信号产生模块(35)的逻辑处理单元,逻辑处理单元输出端输出的信号经过或门后输出同步锁存信号SYNL ;第三种方式是所述微处理器(4)输出的同步信号SYN3输入到同步锁存信号产生模块(35)的同步器,同步器输出端输出的信号经过或门后输出同步锁存信号SYNL ;当所述分频系数K等于零时,第一种方式不起作用;当所述同步信号SYN2 —直为低电平时,所述第二种方式不起作用;当所述同步信号SYN3为低电平时,所述第三种方式不起作用。
【文档编号】G05B19/042GK103592881SQ201310613715
【公开日】2014年2月19日 申请日期:2013年11月28日 优先权日:2013年11月28日
【发明者】潘海鸿, 韦庆情, 陈琳, 黄炳琼 申请人:广西大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1