一种基于fpga的硬件等效同步采样装置制造方法

文档序号:6308823阅读:237来源:国知局
一种基于fpga的硬件等效同步采样装置制造方法
【专利摘要】本发明公开了一种基于FPGA的硬件等效同步采样装置,首先采用高速定频过采样模块对模拟信号进行过采样,由实时测频模块得到模拟信号的频率fi,抽取率动态调整模块根据模拟信号频率fi和采样点数N计算采样频率fd,再计算过采样频率fs除以采样频率fd的商I和余数D,将D/fd作为误差计入累积误差,当累积误差小于1,则抽取率Mi=I,否则抽取率Mi=I+1,动态抽取时钟模块根据过采样频率fs的时钟信号和动态抽取率Mi,生成动态抽取频率为fd_i=Mi×fs的抽取时钟信号,数据抽取模块按照抽取时钟信号对过采样数据进行数据抽取,得到最终采样数据。本发明一种等效同步采样装置,可以减少采样间隔累积误差,与传统的大部分硬件采样方法相比,具有更高的采样精度,适用于高精度的高速数据采样。
【专利说明】—种基于FPGA的硬件等效同步采样装置

【技术领域】
[0001]本发明属于同步采样【技术领域】,更为具体地讲,涉及一种基于FPGA的硬件等效同步采样装置。

【背景技术】
[0002]在电能质量分析仪中,各种电力参数的准确测量与计算是仪器的关键技术,而获取这些参数的基本途径则是对电力系统进行数据采集。现有采样技术主要分为非同步采样和同步采样两大类。
[0003]非同步采样采用固定的采样率对周期信号进行采样,一旦采样信号频率发生变化,便无法满足以周期信号频率整倍数的采样频率对信号进行采样,从而产生同步误差影响测量准确度。在电力系统谐波分析中,使用非同步采样的序列进行FFT运算会产生频谱泄露和栅栏效应,影响各次谐波的精度。因此,在电力参数的测量与计算中数据的采样一般都采用同步采样技术。同步采样可对频率变化的输入信号进行实时频率跟踪,保持采样率与输入信号频率成整数倍关系。同步采样的信号经过离散傅里叶变换后可各次谐波的离散点会准确的落在相应的频率分辨点上,可有效的避免由频谱泄露和栅栏效应带来的误差。从【具体实施方式】上看,同步采样又分为软件同步采样和硬件同步采样。
[0004]软件同步采样通过控制微处理器对采样周期做实时修正来达到采样率跟随被测信号频率变化的目的。首先对被测信号的频率变化做跟踪,结合测得被测信号的实时频率f0和预定的采样点数N求得采样周期Ts,然后利用微控制器的定时器以Ts为间隔对被测信号进行采样和分析。整个过程通过定时器初值的实时变化间接跟随被测信号的实时频率变化来达到采样的同步。软件同步采样方法具有成本低,实现简单的优点,但是主要普遍存在以下问题:
[0005](I)采样间隔误差累积递增。常规软件同步采样法是在T内以定时方式产生同步采样信号。定时器计数值K在每个被测信号周期中为常数,只在被测交流信号周期变化时重新计算设置K值,故每个信号周期内产生的采样间隔误差依次递增。
[0006](2)中断响应时间的分散性。微处理器对定时器中断的响应需要一定的时间并且每次中断响应时间不一致,具有一定的分散性,使得实际采样时刻tji = 1,2,...)不确定,产生采样间隔误差。
[0007]目前大部分硬件同步采样方法主要有两种,第一种方法是采用硬件电路来实现测频,然后将测得的频率信号送给单片机和DSP等处理器,通过中断的形式来响应,在中断内部进行AD转换,这种方法虽然可以保证测频的精度,还可以通过软件算法来减小累积误差,但是依然不能克服中断响应时间的分散性问题;第二种方法同样是采用硬件电路来测频,不同的是将获得的同步采样信号经过倍频后直接作为AD的采样时钟信号进行AD的转换,该方法的典型代表就是采用锁相环同步频率倍增技术得到直接控制AD转换的信号,是目前硬件采样技术中广泛使用的一种方法。
[0008]图1锁相环硬件同步采样装置结构图。如图1所示,锁相环是一个反馈环路,由鉴相器11、环路滤波器12、压控振荡器13和N分频器14组成。通过鉴相器11对被测信号和N分频器14分频后的VCO输出信号做相位比较,生成一个与两信号相位差Θ对应的电压信号1,该电压信号经过环路滤波器12滤去高频成分和噪声得到信号V。用于驱动压控振荡器13产生输出频率fv。。作为反馈因子N分频后进行下一轮的频率比较。当?_/Ν与输入信号频率fi之间的相位差变为O或者与时间无关的常数时,环路进入锁定状态fVM/N = fp锁相环不停的跟踪进入锁定状态而得到的fv。。是A的N倍频信号,用其控制AD采样模块15来达到N点同步采样。采用锁相环硬件同步采样装置不需要在微处理器中断处理中进行转换,可以克服第一种硬件同步采样方法中的中断响应分散性的问题,但是仍然不能解决累积误差的问题。


【发明内容】

[0009]本发明的目的在于克服现有技术的不足,提供一种基于FPGA(Field —Programmable Gate Array,现场可编程门阵列)的硬件等效同步采样装置,利用FPGA实现等效同步采样的全数字化,同时克服了中断响应时间的分散性问题和采样间隔误差累积的问题,具有更高的采样精度。
[0010]为实现上述发明目的,本发明基于FPGA的硬件等效同步采样装置,包括高速定频过采样模块、实时测频模块、抽取率动态调整模块、动态抽取时钟模块、数据抽取模块,其中:
[0011]高速定频过采样模块接收模拟信号按照过采样频率fs进行高速定频过采样,将过采样频率为fs的时钟信号输出至抽取率动态调整模块、动态抽取时钟模块和数据抽取模块作为同步参考时钟,将过采样频率fs的值输出至抽取率动态调整模块,将采样数据实时输出至数据抽取模块;
[0012]实时测频模块接收模拟信号进行频率检测,将得到的模拟信号频率&的值发送给抽取率动态调整模块;
[0013]抽取率动态调整模块由FPGA实现,包括乘法器、定点除法器和抽取率调整模块,乘法器根据预设的采样点数N和模拟信号实时频率&计算平均采样频率fd = NXfi并发送给定点除法器,定点除法器根据过采样频率fs和平均采样频率fd,计算平均抽取率M =fs/fd,记定点除法器得到的商为1、余数为D,发送给抽取率调整模块;抽取率调整模块接收过采样频率fs、商I和余数D,抽取率调整模块中设置有累加器,其初值为0,累加步长为D,每隔时间MiAs进行一次累加,当累加器的值Q小于fd时,抽取率调整模块设置动态抽取率Mi = I,当累加器的值大于等于fd时,设置动态抽取率Mi = 1+1,令累加器的值Q = Q_fd,抽取率调整模块将动态抽取率Mi输出至动态抽取时钟模块;
[0014]动态抽取时钟模块由FPGA实现,接收过采样频率fs的时钟信号和动态抽取率Mi,生成动态抽取频率为fd—i =MiXfs的抽取时钟信号,输出至数据抽取模块;
[0015]数据抽取模块接收过采样数据,按照抽取时钟信号进行数据抽取,得到最终采样数据。
[0016]本发明基于FPGA的硬件等效同步采样装置,首先采用高速定频过采样模块对模拟信号进行过采样,由实时测频模块得到模拟信号的频率fi,抽取率动态调整模块根据模拟信号频率A和采样点数N计算采样频率fd,再计算过采样频率fs除以采样频率fd的商I和余数D,将D/^作为误差计入累积误差,当累积误差小于1,则抽取率吣=I,否则抽取率Mi = 1+1,动态抽取时钟模块根据过采样频率fs的时钟信号和动态抽取率Mi,生成动态抽取频率为fd—i = MiXfs的抽取时钟信号,数据抽取模块按照抽取时钟信号对过采样数据进行数据抽取,得到最终采样数据。本发明采用FPGA实现,与理想同步采样的误差很小,可视为等效同步采样,通过FPGA实现了等效同步采样的全数字化,既克服了中断响应时间的分散性问题又克服了采样间隔误差累积的问题,与传统的大部分硬件采样方法相比,本发明具有更高的采样精度,适用于高精度的高速数据采样。

【专利附图】

【附图说明】
[0017]图1锁相环硬件同步采样装置结构图;
[0018]图2是本发明基于FPGA的硬件等效同步采样装置的一种【具体实施方式】结构图;
[0019]图3是图2中抽取率动态调整模块的结构图;
[0020]图4是由FPGA实现动态抽取率调整模块和动态抽取时钟模块的RTL流图。

【具体实施方式】
[0021]下面结合附图对本发明的【具体实施方式】进行描述,以便本领域的技术人员更好地理解本发明。需要特别提醒注意的是,在以下的描述中,当已知功能和设计的详细描述也许会淡化本发明的主要内容时,这些描述在这里将被忽略。
实施例
[0022]图2是本发明基于FPGA的硬件等效同步采样装置的一种【具体实施方式】结构图。如图2所示,本发明基于FPGA的硬件等效同步采样装置包括高速定频过采样模块21、实时测频模块22、抽取率动态调整模块23、动态抽取时钟模块24、数据抽取模块25。
[0023]高速定频过采样模块21,接收模拟信号按照过采样频率fs进行高速定频过采样,可见其采样频率fs >> fd,fd表示对模拟信号的平均采样频率,将过采样频率为fs的时钟信号输出至抽取率动态调整模块23、动态抽取时钟模块24和数据抽取模块25作为同步参考时钟,将过采样频率fs的值输出至抽取率动态调整模块23,将采样数据实时输出至数据抽取模块25。
[0024]高速定频过采样模块21可以得到采样间隔为1/仁的一系列离散点,本发明中,在这部分过采样中无需根据输入的模拟信号进行同步处理,其同步功能由数据抽取部分完成。高速定频过采样模块21主要由高速ADC(Analog to Digital Converter,模数变换器)模块实现。由于抽取率动态调整模块23、输出至动态抽取时钟模块24和数据抽取模块25的工作需要与高速定频过采样模块21同步,为了简便,本发明直接采用过采样频率的时钟信号来作为同步参考时钟。
[0025]实时测频模块22,接收模拟信号进行频率检测,将得到的模拟信号频率发送给抽取率动态调整模块23。实时测频模块22可以采用锁相环,也可以采用比较器与FPGA配合来实现。
[0026]抽取率动态调整模块23是本发明的核心模块,通常情况下,由于电网信号的波动,测频模块所测的频率也会发生波动,使平均抽取率M = fs/fd并非整数,导致数据抽取会产生一定的误差,抽取率动态调整模块23的目的在于通过动态调整抽取间隔点数(即抽取率)来尽量减小误差。
[0027]图3是图2中抽取率动态调整模块的结构图。如图3所示,本发明中,抽取率动态调整模块23由FPGA实现,包括乘法器231、定点除法器232和抽取率调整模块233,乘法器231根据预设的采样点数N和模拟信号实时频率计算平均采样频率fd = NX &并发送给定点除法器232,为方便后续信号处理,一般取采样点数N = 2η,η为正整数。定点除法器232根据过采样频率fs和平均采样频率fd,计算平均抽取率M = fs/fd,记定点除法器231得到的商为1、余数为D,即fs = fdXI+D,抽取率调整模块233接收过采样频率fs、商I和余数D,抽取率调整模块233中设置有累加器,其初值为0,累加步长为D,每隔时间MiAs进行一次累加,当累加器的值Q小于fd时,抽取率调整模块232设置动态抽取率Mi = I,当累加器的值大于等于fd时,设置动态抽取率Mi = 1+1,令累加器的值Q = Q_fd,抽取率调整模块233将得到的动态抽取率Mi输出至动态抽取时钟模块24。可见,抽取率调整模块233在运行过程中,一直监测累加器的值,一旦累加器的值Q达到或超过fd时,则将动态抽取率调整为1+1,由于进行了 Q = Q_fd操作,此时Q又变为小于fd,因此在下一次抽取时,动态抽取率又恢复成I。在实际应用中,采样得到的数据在后续处理的时候有可能会使用到采样频率,在这种情况下,抽取率动态调整模块23还要将乘法器得到的平均采样频率fd输出。
[0028]可见,当动态抽取率吣=I时,抽取会产生D/fd个过采样点间隔时间的误差,通过累加器对每次抽取的误差进行累加,由于FPGA中不便计算小数,因此本发明中累加步长为D。根据抽取率可知,每两次抽取间的间隔为乂/f;。当第i次抽取后记累积误差ASi =ASh+D,当ASi > fd,调整动态抽取率令下一次抽取的抽取率Mi+1 = 1+1,使累积误差满足O ( ASi+1 = AS「fd < fd,此时累积误差ASi+1/fd重新小于I个过采样点间隔时间l/fs,如此依次进行下去,保持一旦累积误差超过I个过采样点间隔时间就修正至小于I个过采样点间隔时间,这样每次调整动态抽取率时,都会对上一次调整带来的误差进行修正,使误差保持在一个比较小的范围,避免了过大累积误差的产生。
[0029]动态抽取时钟模块24,由FPGA实现,接收过采样频率为fs的时钟信号clk_fs和动态抽取率Mi,生成动态抽取频率为fd」=MiXfs的抽取时钟信号clk_fd_i,输出至数据抽取模块25。
[0030]数据抽取模块25,接收过采样数据,按照抽取时钟信号进行数据抽取,得到最终采样数据。数据抽取模块25可以采用数据存储器,根据抽取时钟信号的存储触发沿将对应时刻的过采样数据存储即可实现抽取。可见,根据抽取时钟信号进行数据抽取,可以使数据频率采样率约为fd = NXfi,误差保持在I个过采样点间隔时间内。
[0031]本发明基于FPGA的硬件等效同步采样装置,不是严格意义上的同步采样,但是由于一般选取的过采样频率fs较高,本发明与理想同步采样的误差时间理论上最大为l/fs,相对于输入信号来说该误差时间极小,此时的频谱泄露和栅栏效应等非同步采样问题可忽略不计,该方法可近似等效视作为同步采样。
[0032]本发明中,不同于软件采样算法,核心的动态抽取率调整模块23和动态抽取时钟模块24是由FPGA实现的,由FPGA编程产生相应的数字电路,使算法中每个功能模块的延时周期和响应速度都为恒定值,且每个部分的执行时间可计算,实现了该算法各个步骤误差的“明确化”,而且各个模块的响应时间大大缩短,误差也得到极大地减小。以定点除法器为例,与软件采样算法相比,定点除法器能够得到准确的商和余数,而不是小数,不具有计算小数时的舍入误差,而且计算周期大大缩短,在提高精度的同时还减小了误差。
[0033]图4是由FPGA实现动态抽取率调整模块和动态抽取时钟模块的RTL流图。如图4所示,本实施例中,动态抽取率调整模块由mult模块、freq_div_divider模块和mi_adjust模块构成,生成动态抽取率%。其中,mult模块为乘法器,其时钟输入clock为过采样频率fs的时钟,输入分别为预设的采样点数N(N = 2n,n为正整数)和实时测频模块测得的模拟信号的实时频率fi,输出result为最终所需数据的平均采样频率值fd(fd = NXfi)。freq_div_divider模块为定点除法器,输入clk_fs为过采样频率fs的时钟,分子numer为过采样频率fs,分母denom为mult乘法器模块的输出fd,其结果分为商quotient和余数remain。Mi_adjust模块则是动态抽取率调整模块的关键模块,输入clk_fs为过采样频率fs的时钟,quotient和remain是定点除法器的输出,根据累加误差判定动态抽取率,输出为动态抽取率Mi。fd_div模块是动态抽取时钟模块,输入clk_fs为过采样频率为fs的时钟,根据动态抽取率Mi生成抽取时钟信号,输出clk_fd_i即是频率为fd」的动态抽取时钟信号。
[0034]综上,不同于传统的采样方法,本发明充分利用FPGA编程搭建数字电路,使本发明等效为硬件实现的特点,采用动态抽取数据的方式,动态调整采样间隔的累积误差,使每次抽取时的总抽取间隔时间误差保持在I个过采样点间隔时间a/fs)以内,极大地减小了现有采样方法中普遍存在的累积误差。本发明采用全硬件实现,既发挥了软件采样方法的灵活性以及传统硬件采样方法的快速性,同时又克服了大部分传统采样方法中的中断响应时间的分散性以及采样间隔误差累积等难以同时解决的问题,具有采样精度高,误差小且FPGA中各个模块的误差可计算并且为恒定值,速度快,硬件面积小,实现方便灵活的特点。
[0035]尽管上面对本发明说明性的【具体实施方式】进行了描述,以便于本【技术领域】的技术人员理解本发明,但应该清楚,本发明不限于【具体实施方式】的范围,对本【技术领域】的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
【权利要求】
1.一种基于FPGA的硬件等效同步采样装置,其特征在于包括高速定频过采样模块、实时测频模块、抽取率动态调整模块、动态抽取时钟模块、数据抽取模块,其中: 高速定频过采样模块接收模拟信号按照过采样频率fs进行高速定频过采样,将过采样频率为fs的时钟信号输出至抽取率动态调整模块、动态抽取时钟模块和数据抽取模块作为同步参考时钟,将过采样频率fs的值输出至抽取率动态调整模块,将采样数据实时输出至数据抽取模块; 实时测频模块接收模拟信号进行频率检测,将得到的模拟信号频率A的值发送给抽取率动态调整模块; 抽取率动态抽取率调整模块由FPGA实现,包括乘法器、定点除法器和抽取率调整模块,乘法器根据预设的采样点数N和模拟信号实时频率计算平均采样频率fd = NX &并发送给定点除法器,定点除法器根据过采样频率4和平均采样频率fd,计算平均抽取率M =fs/fd,记定点除法器得到的商为1、余数为D,发送给抽取率调整模块;抽取率调整模块接收过采样频率fs、商I和余数D,抽取率调整模块中设置有累加器,其初值为O,累加步长为D,每隔时间MiAs进行一次累加,当累加器的值Q小于fd时,抽取率调整模块设置动态抽取率Mi = I,当累加器的值大于等于fd时,设置动态抽取率Mi = 1+1,令累加器的值Q = Q_fd,抽取率调整模块将动态抽取率Mi输出至动态抽取时钟模块; 动态抽取时钟模块由FPGA实现,接收过采样频率fs的时钟信号和动态抽取率Mi,生成动态抽取频率为fd—i =MiXfs的抽取时钟信号,输出至数据抽取模块; 数据抽取模块接收过采样数据,按照抽取时钟信号进行数据抽取,得到最终采样数据。
2.根据权利要求1所述的硬件等效同步采样装置,其特征在于,所述实时测频模块采用锁相环测频。
3.根据权利要求1所述的硬件等效同步采样装置,其特征在于,所述采样点数N= 2n,η为正整数。
【文档编号】G05B19/042GK104391464SQ201410620741
【公开日】2015年3月4日 申请日期:2014年11月6日 优先权日:2014年11月6日
【发明者】程玉华, 陈凯, 张 杰, 代宇廷, 李刚 申请人:电子科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1