CN102109542A - 一种可配置复用数字内插和数字滤波功能的数字示波器 - Google Patents
一种可配置复用数字内插和数字滤波功能的数字示波器 Download PDFInfo
- Publication number
- CN102109542A CN102109542A CN2009102439065A CN200910243906A CN102109542A CN 102109542 A CN102109542 A CN 102109542A CN 2009102439065 A CN2009102439065 A CN 2009102439065A CN 200910243906 A CN200910243906 A CN 200910243906A CN 102109542 A CN102109542 A CN 102109542A
- Authority
- CN
- China
- Prior art keywords
- digital
- interpolation
- data
- filtering
- unit
- 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
- Complex Calculations (AREA)
Abstract
本发明公开了一种可配置复用数字内插和数字滤波功能的数字示波器。该数字示波器中包括由FPGA实现的数字内插滤波模块,数字内插滤波模块根据内插/滤波选通信号确定当前操作模式,接收输入数据并存储,经过延迟处理之后的数据及滤波系数送入乘累加计算单元进行计算,计算结果送入后续运算单元中;后续计算单元根据当前操作模式决定是否需要进行累加计算,当操作模式为数字内插运算时直接将计算结果作为插值结果输出,当操作模式为数字滤波运算时先进行累加计算再输出数字滤波运算结果。本数字示波器将数字内插与数字滤波两种信号处理方式合二为一,通过配置复用的模式加以实现,有效节省了FPGA的内部资源,是一种十分经济高效的做法。
Description
技术领域
本发明涉及一种数字示波器,尤其涉及一种可配置复用数字内插和数字滤波功能的数字示波器,属于电磁测量仪器技术领域。
背景技术
数字示波器是由数据采集单元、A/D转换器、扫描振荡器等组成的新型示波器,在科研、生产中发挥着十分重要的作用。数字示波器除了具有常规的波形采样功能之外,通常还应具有波形分析和显示功能。因此,在数字示波器的小时基档位下通过数字内插技术实现波形重构是十分有用的。
数字内插是一种在实际波形采样点之间生成插值点的技术,它是数字示波器的一项重要功能。当前,在数字信号处理中比较流行的内插方法包括线性内插方式和Sinc内插方式。其中线性内插方式是在采样点之间线性插入插值点。图1所示的是一个2倍线性内插运算,即在2个采样点中间插入1个插值点的例子。从该图可以看出插值点处于两个采样点之间的连线上,所以即使有再多的插值点也只会出现在连线上。这样对于信号重构而言是存在很大误差的。经过理论分析,只有在示波器采样率与输入信号最高频率成分之比高于10∶1时,线性内插才能很好地重构波形,否则随着比率越低偏差越大。目前,更为准确的Sinc内插方式被越来越广泛地运用到波形重构运算中来。根据数字信号处理理论分析,当输入波形信号的最高频率成分的2倍小于采样频率时,通过Sinc内插公式可以准确还原出原始波形信号,相关计算如公式(1)所示:
由公式(1)可以看出,内插之后的输出波形为采样输入波形x(nT)与Sinc内插函数h(t-nT)的乘累加计算结果,实际上相当于将采样输入波形经过滤波过程完成的插值处理,而插值运算过程完全由Sinc内插函数h(t-nT)的系数决定。公式(2)为Sinc内插函数表达式,图2为Sinc内插函数波形图。
目前,市场上主流的数字示波器的内插运算基本都采用还原波形能力更加出色的Sinc内插方式,例如泰克、安捷伦、力科等厂商均默认采用Sinc内插方式。在数字示波器中,有关内插运算是在FPGA内部通过乘累加结构加以实现的。这种内插运算显然会占用不少的硬件资源。
另一方面,滤波运算同样是一种用于波形分析的重要手段。在数字示波器显示波形时,打开滤波功能可以帮助用户滤除无用信号,只显示有用的波形信号。
上述公式(1)在理论上也是数字滤波处理公式,考虑到数字内插与数字滤波在理论上的一致性(两者只是在滤波系数上存在不同),因此可以考虑在数字滤波器中将数字内插与数字滤波一并进行处理。虽然在数字示波器中加入数字滤波功能可以实时帮助用户分析采样波形。但是实现数字滤波功能所耗费的计算资源相当可观,如果再加上数字内插所耗费的计算资源,对于普通的数字滤波器来说将是一笔很大的硬件开销。
虽然泰克、安捷伦的数字示波器均提供了可在计算机上用于数字滤波运算的扩展计算软件,但在现场测试中随身携带计算机其实并不是一件很方便的事情。目前,大多数数字示波器都不能同时提供数字内插和数字滤波功能。个别的数字示波器虽然能够同时提供数字内插和数字滤波功能,但都是通过DSP进行分别计算的,其运算开销十分可观。尤其是当DSP同时还负责数字示波器的其他控制、运算任务时,进行数字滤波运算时所占用的DSP资源将会导致整个示波器的运行速度下降。
发明内容
鉴于现有示波器所存在的不足,本发明所要解决的技术问题在于提供一种可配置复用数字内插和数字滤波功能的数字示波器。该数字示波器利用内置的FPGA实现上述的功能。
为实现上述的发明目的,本发明采用下述的技术方案:
一种可配置复用数字内插和数字滤波功能的数字示波器,包括控制处理模块,其特征在于:
所述数字示波器中还包括由FPGA实现的数字内插滤波模块,所述数字内插滤波模块包括顺序连接的数据存储单元、数据延迟链单元和数据计算单元,所述数据计算单元中包括乘累加计算单元和后续计算单元;
所述控制处理模块输出内插/滤波选通信号,所述数字内插滤波模块根据所述内插/滤波选通信号确定当前操作模式,接收输入数据并存储,将已存储的输入数据及滤波系数送入所述数据延迟链单元进行延迟处理,经过延迟处理之后的数据及滤波系数送入所述乘累加计算单元进行计算,计算结果继续送入所述后续运算单元中;
所述后续计算单元根据当前操作模式决定是否需要进行累加计算,当操作模式为数字内插运算时直接将所述计算结果作为插值结果输出,当操作模式为数字滤波运算时先进行累加计算再输出数字滤波运算结果。
所述乘累加计算单元由多个采用瀑布式级联架构的乘累加器构成。
所述数据存储单元包括内存控制单元和存储区两部分,所述存储区分为输入数据存储单元和滤波器系数单元;
所述输入数据存储在所述输入数据存储单元,所述滤波系数存储在所述滤波器系数单元。
所述滤波器系数单元使用FPGA内部的硬件RAM资源搭建,为每组11个、共16组的矩阵结构。
当操作模式为数字内插运算时,所述滤波器系数单元的前5组用来存储内插系数;当操作模式为数字滤波运算时,所述滤波器系数单元的前7组用来存储滤波系数,后面的9组存储区用来扩展。
当操作模式为数字内插运算时,所述输入数据存储单元中的新数据每隔5个时钟周期输入1个,在此期间由11个数据组成的并行输出保持不变,在新数据输入时,之前的11个数据会同时向下移动1个位置。
当操作模式为数字滤波运算时,所述输入数据存储单元中的输入数据按照时序关系持续写入存储区,写入存储区的数据在每次读取之后向前移动1个地址位。
本发明所提供的数字示波器将数字内插与数字滤波两种信号处理方式合二为一,在FPGA内部将两种计算模块合并成一个模块,通过配置复用的模式加以实现,有效节省了FPGA的内部资源。同时,使用FPGA实现数字滤波和数字内插功能,在速度上高于DSP,对于提高数字示波器的波形刷新率很有帮助,是一种十分经济高效的做法。
附图说明
下面结合附图和具体实施方式对本发明作进一步的说明。
图1为一个2倍线性内插运算的示例图;
图2为Sinc内插函数的波形示意图;
图3为数字滤波和数字内插共有的乘累加结构示意图;
图4为本发明所提供的数字内插滤波模块的整体架构示意图;
图5为数字内插运算中数据系数的时序关系图;
图6为数字滤波运算中数据系数的时序关系图;
图7为数字内插运算中输入数据存储单元的输出操作示意图;
图8为数字滤波运算中输入数据存储单元的输出操作示意图;
图9为11阶乘累加计算单元所采用的瀑布式级联乘累加器的设计示意图;
图10为DSP部分的内部操作流程图;
图11为FPGA部分进行数字滤波操作的流程图。
具体实施方式
从公式(1)所列出的数字内插运算可以看出,数字内插与数字滤波在算法上都可以统一成乘累加运算结构。这样,利用FPGA的可配置性设计的数字乘累加结构,可以实现数字内插器与数字滤波器在同一模块中复用,只需要简单地通过控制处理模块(由DSP或类似功能的微处理器实现)配置一下滤波系数和内插系数即可。基于上述的思路,本发明所提供的数字示波器将数字内插与数字滤波两个功能合二为一,节省了FPGA的内部资源。同时,使用FPGA实现数字滤波和数字内插功能,在速度上高于DSP,对于提高数字示波器的波形刷新率很有帮助。
下面对上述技术思想的具体实现过程展开详细的说明。
首先从数字信号处理理论的角度来分析。前已述及,输入信号通过滤波系统输出的全过程可以用公式(1)加以表示:
分析t的取值情况,由于在数字系统中所有数据均为离散数值,因此t必须也为离散,并且滤波系统表示的是经过采样输入(采样间隔为T)的数据在滤波之后的输出情况,因此输出的离散值也只应该在t=mT(m取正整数)时存在。
分析n的取值情况,由于在数字系统中处理的数据均为有限点,因此n不能取值为无穷,而应该是有限整数N,表示滤波系统阶数。出于对时间t和阶数n的分析,可将公式(1)进行整理:
公式(3)为数字滤波的数学表达式,因此在进行数字滤波运算中只需要确定滤波器阶数N,以及滤波器系数h(mT-nT)即可。滤波器类型(低通、高通、带通、带阻)不同和滤波器截止频率的不同都会导致滤波器系数的不同。
从数学角度分析,数字内插运算其实属于一种理想的低通滤波运算,其频谱定义如公式(4)以及其通过傅立叶反变换获得的时域表达式如公式(5),可以看出h(t)表达式为Sinc函数形式,通过该系数进行内插运算的称为Sinc内插。因此公式(1)可以整理成具体的Sinc形式公式(6)。由于内插实际上是在采样点之间插入插值点,而所有的插值点只是通过计算得出,而不是真实存在的点,因此公式(6)中当t=mT时(m取正整数)计算结果为采样点,当t=mT+aT/b(m、a、b取正整数,0<a<b)时计算结果为插值点。比如,计算5倍Sinc内插时表示在两个采样点中间插入4个插值点,而此时计算输出的1个采样点为y(mT),计算输出的4个插值点为y(mT+0.2T)、y(mT+0.4T)、y(mT+0.6T)、y(mT+0.8T),因此结合公式(6)可以看出,计算采样点和插值点时输入序列x(nT)是保持不变,而只需要变化内插系数序列即可得到一系列插值点,实现多种内插速率。
由公式(3)、(6)可以看出,数字滤波运算和数字内插运算理论上只存在内插系数的不同,而具体在FPGA内部的算法实现过程中均会用到乘累加计算结构,所以完全可以统一到一个运算模块中进行计算,从而节省FPGA内部资源。
在考虑整合数字滤波运算和数字内插运算时,还有一个特别重要的技术指标-阶数。原则上,滤波阶数越高则滤波效果越好。由于数字滤波运算要求的指标同数字内插运算不同,因此这两种算法结构的阶数是不同的。考虑到FPGA内部的可用乘法器数量、数字内插阶数与误差的关系、数字滤波指标的需求,在本发明的一个实施例中确定了采用11个FPGA内部硬件乘法器,按照图3所示的结构来实现11阶的数字内插运算和77阶的数字滤波运算。这是在综合考虑运算精度及FPGA内部资源的有限性的基础上,通过不断的仿真和设计而达到的较优值。在该实施例中,对于这两种运算共同占用的乘法器资源是可复用的,其中用于数字滤波运算的77阶乘累加计算是通过分成7段,每段11个乘累加并行运算来实现的。
在本发明所提供的数字示波器中,包括A/D转换模块、D/A转换模块、模拟前端模块、触发电路、数字内插滤波模块、输入模块、显示模块和控制处理模块;其中模拟前端模块分别连接A/D转换模块和触发电路,A/D转换模块连接数字内插滤波模块,触发电路的输出送入数字内插滤波模块,数字内插滤波模块连接控制处理模块(如DSP或其它类似的微处理器),控制处理模块连接D/A转换模块,D/A转换模块向触发电路输出比较电平。控制处理模块还连接输入模块和显示模块。在本数字示波器中,该数字内插滤波模块由FPGA实现。
图4显示了用于实现复用数字内插和数字滤波功能的数字内插滤波模块的整体架构。该数字内插滤波模块由3个部分组成:数据存储单元、数据延迟链单元和数据计算单元。这三个单元顺序连接在一起。其中,数据存储单元包括内存控制单元和存储区两部分;数据计算单元包括11阶乘累加计算单元和后续计算单元。输入数据和滤波器系数首先送入内存控制单元。该内存控制单元分别将输入数据和滤波器系数送入滤波器系数单元和输入数据存储单元,同时也向这两个单元发送控制信号。数据信号和滤波器系数被送入数据延迟链单元,然后由数据延迟链单元依序送入11阶乘累加计算单元和后续计算单元,从而对外输出。
下面分别介绍各个功能单元的具体工作原理。
内存控制单元首先要根据输入的内插/滤波选通信号判断当前工作模式,由于数字内插运算为固定11阶5倍Sinc模式,写入系数数量为55个,而数字滤波运算为77阶滤波,写入系数数量为77个,因此两种模式在写入系数时对存储区操作并不一样。同时,在数据与系数读取时两种模式也是有很大差别的,更需要加以区别处理:
在进行数字内插运算时,由于是固定的11阶5倍Sinc内插模式,在处理时以5个时钟为1个周期,在该周期的第1个时钟时并行输出1组×11个数据,同时并行输出第1组×11个内插系数,数据在其后的4个时钟内保持不变,而内插系数则在之后的每个时钟整组更换内插系数,在下一个处理周期时,数据才会更换,而内插系数则会循环回到开始位置重新输出,具体过程如图5所示。
在进行数字滤波运算时,由于采用77阶滤波计算,并且每次只能计算11个乘累加过程,因此在处理时以7个时钟为1个周期,在周期内每个时钟数据与滤波系数对应同步输出,在下一周期到来时数据进行移位更换,而滤波系数则循环回到开始位置重新输出,具体过程如图6所示。两种操作模式存在很大差异,因此必须保证输入的内插/滤波选通信号明确指出当前所处的操作模式,否则会造成数据、系数写入读取出错。
存储区分为滤波器系数单元和输入数据存储单元。其中滤波器系数单元使用FPGA内部的硬件RAM资源搭建,设计成每组11个、共16组的矩阵结构。在本实施例中,进行数字内插时前5组用来存储内插系数,而在进行数字滤波时则为前7组用来存储滤波系数,后面的9组存储区可以用来扩展。每组存储的系数并行输出,即一次输出11个系数,正好对应11个乘累加器模块,之后继续输出下1组系数,直到输出最后1组有效系数之后(内插为第5组,滤波为第7组)再重新回答第1组继续输出,如此循环。
输入数据存储单元也使用FPGA内部的硬件RAM资源搭建,但根据数字内插滤波模块所采用的数字内插和数字滤波两种操作模式的不同,对输入数据存储单元的操作也是不一样的。在进行数字内插运算时,数据存储只占用11个单元,新数据每隔5个时钟周期输入1个,在这期间由11个数据组成的并行输出保持不变,而在新数据输入时,之前的11个数据会同时向下移动1个位置,这样最下面的数据会移出并丢掉,如图7所示。在进行数字滤波运算时,输入数据是按照时序关系持续写入存储区的,同时写入存储区的数据在每次读取之后还需要向前移动1个地址位。如图8所示,每个时钟周期存储区向数据延迟链单元输出1组共11个数据,之后读出的数据会向前移动1个地址位并再次写入数据RAM中,而数据0始终保存外部的最新输入数据,而数据76始终保存本次滤波运算的最后1个数据,之后便会被丢掉。
数据延迟链单元采用FPGA内部特有的硬件延迟单元搭建。将输入的11组数据和滤波系数按照乘累加计算单元需要的时序关系进行延迟处理,每个数据-系数对需要延迟的时钟周期并不相同。图9给出了数据延迟链单元的组成结构及延迟周期的示意图。
11阶乘累加计算单元是整个数字内插滤波模块的核心计算单元,采用FPGA内部的乘累加器搭建。每个乘累加器可以完成1次乘运算和1次加运算,且运算速度远远超过自行设计模块或软件程序。11阶乘累加计算单元采用如图9所示的瀑布式级联架构(cascaded multiply-accumulatechain structure),即各乘累加器遵循自下而上、相互衔接的线性顺序实现级联,形如瀑布流水一般。在这种瀑布式级联架构中,数据流由下而上,最上端的乘累加器输出即为11阶乘累加运算的结果。从图9中不难看出,为了满足这种瀑布式级联的乘累加结构,每个乘累加器要求输入数据的时间是不同的,这就是为什么会有数据延迟链单元的原因。每个乘累加器需要输入数据的延迟时钟数是根据上一个乘累加器的计算周期延迟计算出来的,比如最底下第1级乘累加器作为计算的开始,不需要数据延迟,但其计算结果的输出作为第2级加法器计算的输入会有1个时钟周期的延迟,因此第2级乘累加器的输入数据就必须事先延迟1个时钟周期,以满足时序要求,如此类推,每1级乘累加器的输入都需要相对前1级多延迟1个时钟周期,就形成了整个数据延迟的结构。
采用图9所示的乘累加器瀑布式级联架构的好处在于:整个数据流直观上看是完全流动的,不需任何控制信号,就像一条流水生产线一样,只有事先控制好输入数据的时序关系(做好延迟),就可以完全不用管里面的操作过程,而只用读取最顶端乘累加器的输出结果即可。
考虑到数字内插运算同数字滤波运算使用不同的滤波器系数,并且在数字滤波运算时不同的滤波器形状和滤波器截止频率也会导致滤波器系数的不同,因此在数字内插滤波模块中加入用于存储滤波器系数的RAM,在每次DSP针对不同的操作配置完成不同系数之后,模块才会开始工作。由于数字内插滤波模块是按照DSP的具体配置来完成工作的,因此在每次模块运行之前,DSP要配置FPGA,通知当前工作模式为内插还是滤波,同时将滤波器系数配置到FPGA中。
后续计算单元首先根据输入的内插/滤波选通信号确定当前处于何种操作模式。对于数字内插运算和数字滤波运算在后续计算单元中采用的处理方式不同。对于数字内插运算而言,由前面11阶乘累加计算输出的结果即为各个插值结果,因此在这里无需附加计算即可直接输出;对于数字滤波运算,则需要根据预先设计的算法,将每7个时钟周期输出的全部11阶乘累加计算单元计算结果进行累加,累加在一起才能获得最终的数字滤波运算结果。
数字内插运算是在数字示波器时基达到一定档位下开启的。以某款现有数字示波器为例,显示屏上的水平格数为14个,其中每个格内需等间隔显示50个点,当数字示波器采样率为5GSa/S时,则每个采样点间隔为200ps,所以此时对应的数字示波器时基档位为:200ps×50=10ns/div,此时数字示波器的所有采样点会正好全部显示在屏幕上,而当向下档位调至5ns/div时,此时的采样点间隔变为:5ns/50=100ps,即采样率达到10GSa/S,由于该款数字示波器的最大采样率为5GSa/S,采样点间隔最小为200ps,所以在单通道5GSa/S采样时,DSP通过回读当前机器的时基数值,在时基档位小于10ns/div时,DSP会控制FPGA打开数字内插模块,并从DSP的存储区中读取内插系数向FPGA进行配置。
数字滤波运算由用户通过菜单选项确定滤波器的打开/关闭、滤波器类型(低通、高通、带通、带阻)以及滤波器的截止频率,当所有设置滤波器的参数配置完成后,DSP会根据这些设置情况从其内部存储区中择一地选择出一套滤波器系数,并向FPGA进行配置。
在此需要说明的是,DSP会向FPGA配置模块工作模式编码信号,由FPGA解码后确定系统需要处于的工作模式,如下表1:
00 | 01 | 10 | 11 |
数字内插关闭数字滤波关闭 | 数字内插打开数字滤波关闭 | 数字内插关闭数字滤波打开 | 不存在此种工作模式 |
表1系统工作模式编码表
由于基于FPGA的可复用数字内插和数字滤波模块是由一套单一的系统实现的,因此数字内插功能和数字滤波功能是互斥的,即在同一时刻只能实现一种功能。所以当数字示波器为5GSa/S采样率时,时基档位小于10ns/div时必须要打开数字内插功能,此时不能进行数据滤波运算,只有在时基档位大于等于10ns/div时,数字内插运算关闭,此时可以打开数字滤波功能进行运算。
下面介绍本发明所提供的数字示波器在使用时,DSP部分的内部操作流程。如图10所示,DSP开始先查询当前系统最高采样率为2.5GSa/S还是5GSa/S,由于不同的采样率下示波器打开数字内插运算的时基档位是不同的;
DSP得到当前系统最高采样率之后在判断当前时基档位是否满足数字内插打开条件:2.5GSa/S采样率下数字示波器在时基小于20ns/div下打开数字内插,5GSa/S采样率下数字示波器在时基小于10ns/div下打开数字内插。当满足数字内插打开条件时,DSP向FPGA配置当前工作模式为数字内插运算打开,并从DSP内部存储区中读取内插系数并配置下去;
当DSP查询当前系统档位不满足数字内插打开条件后,查询当前数字滤波功能是否打开,如果没有打开则配置FPGA当前模块工作模式为数字内插关闭、数字滤波关闭。但当发现用户设置数字滤波功能打开时,便会首先根据滤波器设置的参数去DSP内部存储区中读取相应的滤波器系数,之后配置FPGA工作模式为数字滤波,并将滤波器系数配置下去;
当DSP收到系统停止命令时,回到开始空闲状态
如图11所示,FPGA部分的数字滤波操作流程是这样的:当上电或者接收复位/清零信号时,整个数字内插滤波模块回到空闲状态,在空闲状态中可以通过DSP配置模块操作模式(滤波、内插),同时配置系数数据(不需更改系数时不必配置),DSP在配置系数过程中不会下达下一个操作指令,以避免系统出错。
数字内插滤波模块已经确定当前处于何种操作模式(内插、滤波),在收到启动指令后,开始接收输入数据并存储;同时根据当前的操作模式将已存储的数据及系数被读出送入数据延迟链单元进行延迟处理;经过延迟处理之后的数据及滤波系数送入11阶乘累加运算单元进行计算;乘累加单元的计算结果继续送入后续运算单元中,后续计算单元同时根据当前操作模式,决定输入的数据是否需要进行累加计算,对于数字内插运算时则会直接将数据输出,对于数字滤波运算则进行累加计算后再将数据输出。数字内插滤波模块的启动指令消失时,整个系统会逐渐停下来(逐渐停下来的原因是因为系统是流水线进行的,流水线前面停止了,后面需要一段的传递时间才会停止下来),直至下次启动指令有效时继续进行。
图11中的灰框中显示了步骤2的处理过程。这部分运算是通过数字硬件并行完成的,因此并不分先后过程,也就是说这几个过程同时在进行的:在有新数据输入的同时,也有已存储数据的读取,同样有已读取数据的延迟和计算。全部过程处于流水生产线的各个流程中,而整个生产线也在一直向前运行。
由于数字内插运算相当于提高了系统采样率,对于采用了5倍Sinc内插运算来说,相当于将原有采样率提高了4倍,因此输入数据与输出数据速率比为1∶5,即输入1个数据会相应输出5个计算结果,所以对于输出连续数据时,其输入数据则是每5个时钟周期输入1个;对于数字滤波运算,由于数字滤波运算分成7段实现,因此每7个时钟周期才会1个滤波数据输出,同样每7个时钟周期也只会需要1个输入数据输入进系统中参与滤波运算,所以系统的输入数据与输出数据速率比为1∶1,但却为系统运行速度的1/7。
与现有技术相比较,本发明充分利用数字可编程器件FPGA的高速并行架构,无论在进行数字内插运算还是数字滤波运算都能充分发挥其并行计算的速度优势,摆脱在DSP中进行计算速度瓶颈和系统性能下降的缺点。同时由于FPGA的可配置性,可使该模块作为示波器上DSP的协处理模块,在DSP中实现简单的模块配置和系数加载,具体计算工作则完全交给FPGA进行,将DSP的主要任务用于系统级控制上,充分发挥其特点。
基于本数字内插滤波模块实现的数字滤波器具有稳定性高、精度好、可配置等诸多特点。该数字滤波器可以起到限制带宽的作用,而且不单实现低通功能,还可以通过配置滤波器系数实现高通、带通、带阻的滤波功能,同样突出的特点还在于可以实现多个截止频率,可以更好地满足用户各种操作环境及工作领域的需求。
另一方面,基于本数字内插滤波模块实现的数字内插器在数字示波器波形重构方面起着十分重要的作用。作为数字示波器的一项重要功能,波形显示如果没有了波形重构,则不会将采样波形更加直观的展现在用户面前。尤其在示波器档位处于小时基下,数字示波器屏幕上已经不能将每一个格上的像素点用实际采样点来表示,此时必须使用数字内插技术将采样点之间插入插值点,插值点填充了那些没有实际采样点的像素上的值,使得示波器屏幕上依然看上去是一条完整的波形。
以上对本发明所提供的可配置复用数字内插和数字滤波功能的数字示波器进行了详细的说明。对本领域的一般技术人员而言,在不背离本发明实质精神的前提下对它所做的任何显而易见的改动,都将构成对本发明专利权的侵犯,将承担相应的法律责任。
Claims (8)
1.一种可配置复用数字内插和数字滤波功能的数字示波器,包括控制处理模块,其特征在于:
所述数字示波器中还包括由FPGA实现的数字内插滤波模块,所述数字内插滤波模块包括顺序连接的数据存储单元、数据延迟链单元和数据计算单元,所述数据计算单元中包括乘累加计算单元和后续计算单元;
所述控制处理模块输出内插/滤波选通信号,所述数字内插滤波模块根据所述内插/滤波选通信号确定当前操作模式,接收输入数据并存储,将已存储的输入数据及滤波系数送入所述数据延迟链单元进行延迟处理,经过延迟处理之后的数据及滤波系数送入所述乘累加计算单元进行计算,计算结果继续送入所述后续运算单元中;
所述后续计算单元根据当前操作模式决定是否需要进行累加计算,当操作模式为数字内插运算时直接将所述计算结果作为插值结果输出,当操作模式为数字滤波运算时先进行累加计算再输出数字滤波运算结果。
2.如权利要求1所述的数字示波器,其特征在于:
所述乘累加计算单元由多个采用瀑布式级联架构的乘累加器构成。
3.如权利要求2所述的数字示波器,其特征在于:
所述乘累加器的数量为11个。
4.如权利要求1所述的数字示波器,其特征在于:
所述数据存储单元包括内存控制单元和存储区两部分,所述存储区分为输入数据存储单元和滤波器系数单元;
所述输入数据存储在所述输入数据存储单元,所述滤波系数存储在所述滤波器系数单元。
5.如权利要求3或4所述的数字示波器,其特征在于:
所述滤波器系数单元使用FPGA内部的硬件RAM资源搭建,为每组11个、共16组的矩阵结构。
6.如权利要求5所述的数字示波器,其特征在于:
当操作模式为数字内插运算时,所述滤波器系数单元的前5组用来存储内插系数;当操作模式为数字滤波运算时,所述滤波器系数单元的前7组用来存储滤波系数,后面的9组存储区用来扩展。
7.如权利要求3或4所述的数字示波器,其特征在于:
当操作模式为数字内插运算时,所述输入数据存储单元中的新数据每隔5个时钟周期输入1个,在此期间由11个数据组成的并行输出保持不变,在新数据输入时,之前的11个数据同时向下移动1个位置。
8.如权利要求1所述的数字示波器,其特征在于:
当操作模式为数字滤波运算时,所述输入数据存储单元中的输入数据按照时序关系持续写入存储区,写入存储区的数据在每次读取之后向前移动1个地址位。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910243906.5A CN102109542B (zh) | 2009-12-25 | 2009-12-25 | 一种可配置复用数字内插和数字滤波功能的数字示波器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910243906.5A CN102109542B (zh) | 2009-12-25 | 2009-12-25 | 一种可配置复用数字内插和数字滤波功能的数字示波器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102109542A true CN102109542A (zh) | 2011-06-29 |
CN102109542B CN102109542B (zh) | 2015-10-07 |
Family
ID=44173753
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910243906.5A Active CN102109542B (zh) | 2009-12-25 | 2009-12-25 | 一种可配置复用数字内插和数字滤波功能的数字示波器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102109542B (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103048508A (zh) * | 2012-12-06 | 2013-04-17 | 深圳市鼎阳科技有限公司 | 提高数字示波器触发水平精度的方法、装置及数字示波器 |
CN103969483A (zh) * | 2014-04-24 | 2014-08-06 | 中国电子科技集团公司第四十一研究所 | 一种数字示波器触发系统 |
CN104459259A (zh) * | 2014-12-16 | 2015-03-25 | 南京国睿安泰信科技股份有限公司 | 一种用于示波器的改进型波形内插系统 |
CN106301287A (zh) * | 2016-08-20 | 2017-01-04 | 航天恒星科技有限公司 | 一种重采样方法及装置 |
CN107121581A (zh) * | 2017-04-25 | 2017-09-01 | 电子科技大学 | 一种数据采集系统的数据处理方法 |
CN107483031A (zh) * | 2017-03-17 | 2017-12-15 | 深圳市鼎阳科技有限公司 | 示波器及其支持多插值倍数的滤波方法、系统、数字芯片 |
CN108663555A (zh) * | 2017-03-29 | 2018-10-16 | 苏州普源精电科技有限公司 | 一种数字示波器的波形搜索方法及数字示波器 |
CN113434113A (zh) * | 2021-06-24 | 2021-09-24 | 上海安路信息科技股份有限公司 | 基于静态配置数字电路的浮点数乘累加控制方法及系统 |
CN113433367A (zh) * | 2021-08-25 | 2021-09-24 | 深圳市鼎阳科技股份有限公司 | 一种用于数字示波器的显示控制装置、方法和数字示波器 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020171408A1 (en) * | 2001-04-05 | 2002-11-21 | Hansen Victor L. | Method and apparatus for display generation in digital oscilloscope |
CN1469547A (zh) * | 2003-06-10 | 2004-01-21 | 湘潭师范学院 | 基于fpga的高精度任意波形发生器 |
CN1483267A (zh) * | 2000-12-20 | 2004-03-17 | Ħ��������˾ | 带有脉冲宽度的正交调制器 |
CN1866738A (zh) * | 2006-06-12 | 2006-11-22 | 许金生 | 一种通用可编程数字滤波器及其工作方法 |
CN101017383A (zh) * | 2006-11-01 | 2007-08-15 | 王文华 | 一种基于fpga的高速任意波形发生器 |
CN2938114Y (zh) * | 2006-08-24 | 2007-08-22 | 王悦 | 一种示波器 |
CN101126772A (zh) * | 2007-09-11 | 2008-02-20 | 电子科技大学 | 一种示波器的高速信号重构方法 |
CN201047856Y (zh) * | 2007-05-17 | 2008-04-16 | 王悦 | 一种可以调整带宽的示波器 |
CN101257288A (zh) * | 2008-04-11 | 2008-09-03 | 哈尔滨理工大学 | 一种可配置参数的有限冲激响应数字滤波器 |
CN102053186A (zh) * | 2009-11-10 | 2011-05-11 | 北京普源精电科技有限公司 | 一种具有可变阶数数字滤波器的数字示波器 |
-
2009
- 2009-12-25 CN CN200910243906.5A patent/CN102109542B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1483267A (zh) * | 2000-12-20 | 2004-03-17 | Ħ��������˾ | 带有脉冲宽度的正交调制器 |
US20020171408A1 (en) * | 2001-04-05 | 2002-11-21 | Hansen Victor L. | Method and apparatus for display generation in digital oscilloscope |
CN1469547A (zh) * | 2003-06-10 | 2004-01-21 | 湘潭师范学院 | 基于fpga的高精度任意波形发生器 |
CN1866738A (zh) * | 2006-06-12 | 2006-11-22 | 许金生 | 一种通用可编程数字滤波器及其工作方法 |
CN2938114Y (zh) * | 2006-08-24 | 2007-08-22 | 王悦 | 一种示波器 |
CN101017383A (zh) * | 2006-11-01 | 2007-08-15 | 王文华 | 一种基于fpga的高速任意波形发生器 |
CN201047856Y (zh) * | 2007-05-17 | 2008-04-16 | 王悦 | 一种可以调整带宽的示波器 |
CN101126772A (zh) * | 2007-09-11 | 2008-02-20 | 电子科技大学 | 一种示波器的高速信号重构方法 |
CN101257288A (zh) * | 2008-04-11 | 2008-09-03 | 哈尔滨理工大学 | 一种可配置参数的有限冲激响应数字滤波器 |
CN102053186A (zh) * | 2009-11-10 | 2011-05-11 | 北京普源精电科技有限公司 | 一种具有可变阶数数字滤波器的数字示波器 |
Non-Patent Citations (1)
Title |
---|
包可佳: "基于FPGA的高速实时数字存储示波器设计", 《中国优秀硕士论文全文数据库工程科技II辑》 * |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103048508B (zh) * | 2012-12-06 | 2016-03-16 | 深圳市鼎阳科技有限公司 | 提高数字示波器触发水平精度的方法、装置及数字示波器 |
CN103048508A (zh) * | 2012-12-06 | 2013-04-17 | 深圳市鼎阳科技有限公司 | 提高数字示波器触发水平精度的方法、装置及数字示波器 |
CN103969483A (zh) * | 2014-04-24 | 2014-08-06 | 中国电子科技集团公司第四十一研究所 | 一种数字示波器触发系统 |
CN103969483B (zh) * | 2014-04-24 | 2017-02-15 | 中国电子科技集团公司第四十一研究所 | 一种数字示波器触发系统 |
CN104459259A (zh) * | 2014-12-16 | 2015-03-25 | 南京国睿安泰信科技股份有限公司 | 一种用于示波器的改进型波形内插系统 |
CN106301287A (zh) * | 2016-08-20 | 2017-01-04 | 航天恒星科技有限公司 | 一种重采样方法及装置 |
CN107483031A (zh) * | 2017-03-17 | 2017-12-15 | 深圳市鼎阳科技有限公司 | 示波器及其支持多插值倍数的滤波方法、系统、数字芯片 |
CN108663555A (zh) * | 2017-03-29 | 2018-10-16 | 苏州普源精电科技有限公司 | 一种数字示波器的波形搜索方法及数字示波器 |
CN107121581A (zh) * | 2017-04-25 | 2017-09-01 | 电子科技大学 | 一种数据采集系统的数据处理方法 |
CN107121581B (zh) * | 2017-04-25 | 2019-07-12 | 电子科技大学 | 一种数据采集系统的数据处理方法 |
CN113434113A (zh) * | 2021-06-24 | 2021-09-24 | 上海安路信息科技股份有限公司 | 基于静态配置数字电路的浮点数乘累加控制方法及系统 |
CN113434113B (zh) * | 2021-06-24 | 2022-03-11 | 上海安路信息科技股份有限公司 | 基于静态配置数字电路的浮点数乘累加控制方法及系统 |
CN113433367A (zh) * | 2021-08-25 | 2021-09-24 | 深圳市鼎阳科技股份有限公司 | 一种用于数字示波器的显示控制装置、方法和数字示波器 |
CN113433367B (zh) * | 2021-08-25 | 2021-11-02 | 深圳市鼎阳科技股份有限公司 | 一种用于数字示波器的显示控制装置、方法和数字示波器 |
Also Published As
Publication number | Publication date |
---|---|
CN102109542B (zh) | 2015-10-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102109542B (zh) | 一种可配置复用数字内插和数字滤波功能的数字示波器 | |
CN102053186B (zh) | 一种具有可变阶数数字滤波器的数字示波器 | |
CN110492867A (zh) | 一种用数字电路实现的插值滤波器系统 | |
CN102412808B (zh) | 一种基于fpga的高性能多路fir数字抽取滤波器及其读写方法 | |
CN105991137A (zh) | 可变分数速率数字重采样的系统和方法 | |
CN103117972B (zh) | 一种矢量信号分析方法和装置 | |
CN105471433A (zh) | 采样率转换器、模拟—数字转换器及转换数据流的方法 | |
CN102098509B (zh) | 基于Farrow结构的可重构插值滤波器 | |
CN105911351A (zh) | 基于dsp的实时zfft方法 | |
CN101282322A (zh) | 一种应用于无线中程传感网物理层的内插数字滤波器装置 | |
CN107300632A (zh) | 一种荧光示波器的数字信号处理系统 | |
CN107589410A (zh) | 一种无断点多目标信号合成方法 | |
CN105102992A (zh) | 确定delta-sigma调制信号的均方根的方法和装置 | |
CN104077492A (zh) | 一种基于fpga的采样数据内插方法 | |
CN104202016A (zh) | 一种基于查表法的任意倍可变的信号升采样实现方法及系统 | |
CN109271133A (zh) | 一种数据处理方法及系统 | |
CN113778940B (zh) | 基于fpga的高精度可重构相位调整ip核 | |
CN104459259A (zh) | 一种用于示波器的改进型波形内插系统 | |
CN114124034A (zh) | 一种基于fpga的高速并行插值滤波器设计 | |
CN103188186A (zh) | 重采样处理装置和方法、以及数字调制信号产生装置 | |
CN102841880A (zh) | 一种基于数字信号处理器快速频谱细化的方法 | |
CN100517968C (zh) | 一种用于电能计量的希尔伯特滤波器 | |
CN103323063B (zh) | 超声波流量计及其时间差测量方法 | |
CN1862960B (zh) | 一种分数倍插值多相滤波器和滤波方法 | |
McPherron et al. | Changes in the response of the AL index with solar cycle and epoch within a corotating interaction region |
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 |