CN105319423B - 一种用fpga分段存储实现示波器平均采集的系统 - Google Patents
一种用fpga分段存储实现示波器平均采集的系统 Download PDFInfo
- Publication number
- CN105319423B CN105319423B CN201510747297.2A CN201510747297A CN105319423B CN 105319423 B CN105319423 B CN 105319423B CN 201510747297 A CN201510747297 A CN 201510747297A CN 105319423 B CN105319423 B CN 105319423B
- Authority
- CN
- China
- Prior art keywords
- data
- ave
- sum
- new
- average
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R13/00—Arrangements for displaying electric variables or waveforms
- G01R13/02—Arrangements for displaying electric variables or waveforms for displaying measured electric variables in digital form
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R13/00—Arrangements for displaying electric variables or waveforms
- G01R13/02—Arrangements for displaying electric variables or waveforms for displaying measured electric variables in digital form
- G01R13/029—Software therefor
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Complex Calculations (AREA)
Abstract
本发明涉及一种用FPGA分段存储实现示波器平均采集的系统,包括ADC采样模块、帧数据处理模块、分段存储及平均模块、数据输出模块;其分段存储及平均模块的平均过程:SUM_AVEm=SUM_AVEm‑1+DATA_NEW‑DATA_OLD,SUM_AVEm为平均数据和,SUM_AVEm‑1为上一次平均和,DATA_NEW为最新一次帧处理数据,DATA_OLD为设定的平均次数最开始的帧处理数据,后两者都存于FPGA内部的存储区内;帧数据存入DATA_NEW单元送入加法器的同时,通过分段读写控制模块将此数据写入外部存储里面。本发明展现效果好,节省CPU开销,速度上得到保证。
Description
技术领域
本发明涉及到数字示波器,是示波器实现平均采集的一种方式,适用于一般低成本深存储示波器。
背景技术
数字示波器是电子测量领域中的一种常见的仪器,用于采集、显示以及存储波形,还可以进行各种参数的分析功能。示波器有很多采集模式,其中一种是平均模式。这种模式将平均连续采集的波形点,过滤掉噪声和信号毛刺,又不损害带宽,但是要求是周期信号。适用于电源质量分析或谐波分析等。示波器存储波形可以存在FPGA内部的存储器中,也可以存在外部容量较大的存储器中。可以连续存储一次采集的波形,也可以分段存储波形。分段存储将较大的外部存储分成多个小存储器,这样可以存多次的采集波形。本发明就是利用分段存储来完成波形的平均采集。
平均运算过程参看下面的数学公式:
其中Aven为平均后的采样点,n为当前的平均次数,Si为第i次的采样点。由上式可以看出,平均次数越多,每一次新捕获的波形数据对于平均结果影响越小,平均效果越好。
在实际应用中,受限系统的运算速度和存储容量,平均次数n也不可能无穷大,一般到256次。
平均模式可以通过软件实现。软件实现时,每次采集的数据通过软件暂存下来,然后读取下一次的采集数据,对应采样点相加,根据设定的平均次数求和,最后除以平均次数得到平均采样点。在平均次数比较大的情况下,软件运算量很大,运算速度跟不上波形的刷新速度。而且软件还要负责示波器别的控制和计算,这样平均运算导致示波器整体性能下降。利用软件实现的平均采样模式还有个弊端,就是不能停止波形展宽和压缩,因为软件处理的是有限的显示点,而不是原始点。
发明内容
针对以上问题本发明提供了一种用硬件FPGA实现平均模式,利用FPGA速度方面的优势,达到平均采集数据和输入的新数据的速度相当,不影响波形的刷新率,另外还可以停止波形,展宽和压缩以及移动看到屏幕外更多波形的用FPGA分段存储实现示波器平均采集的系统。
技术方案:鉴于低成本深存储示波器的实际情况,存储深度只达到兆级,这样平均次数不可能很大,本发明实现最大平均次数为256次,便于FPGA数据处理,一般平均次数为2的n次方。本发明实现平均采集模式用到了外部的大容量的存储器,也用了FPGA内部的存储区。
一种用FPGA分段存储实现示波器平均采集的系统,其特征在于:包括ADC采样模块、帧数据处理模块、分段存储及平均模块、数据输出模块;示波器中,模数转换器ADC采样模块将模拟信号转换为数字信号存入FPGA后,由帧数据处理模块进行帧数据处理,帧数据处理后进入分段存储及平均模块,平均后的数据经过数据输出模块输出给CPU,最后输出显示。
所述的分段存储及平均模块的平均过程见公式2:
SUM_AVEm=SUM_AVEm-1+DATA_NEW-DATA_OLD (2)
SUM_AVEm为平均数据和,SUM_AVEm-1为上一次平均和,DATA_NEW为最新一次帧处理数据,DATA_OLD为设定的平均次数最开始的帧处理数据,后两者都存于FPGA内部的存储区内。
当用户通过图形界面发出平均采集的指令后,初始化SUM_AVE单元为0,二选一单元选择0,DATA_OLD单元先不参与运算,即公式2中先不减最开始的帧处理数据,因为现在帧数据累加次数还没有达到设定平均次数。将第一帧数据存入DATA_NEW单元,然后将DATA_NEW里的数据送入加法器的同时,通过分段读写控制模块将此数据写入外部存储1里面,加法器运算结果再反馈到SUM_AVE单元,显然第一次的运算结果SUM_AVE1=DATA_NEW,第一次的平均结果就为SUM_AVE/1。依次类推,第二帧数据存入DATA_NEW单元,然后送入加法器的同时也存入外部存储2里,结果为SUM_AVE2=SUM_AVE1+DATA_NEW,第二次的平均结果就为SUM_AVE/2。依次类推到第m帧数据,存入外部存储m,送入加法器运算结果为SUM_AVEm=SUM_AVEm-1+DATA_NEW,第m次的平均结果就为SUM_AVE/m,此时才达到平均m次数的效果。同时外部的分段存储也结束了,之后重新采集的数据就要从头覆盖循环存储了,在覆盖之前把原来里面存储的数据读出来缓存做减法运算。
继续采集,新帧数据正在存入DATA_NEW单元,此时通过分段读写控制模块将外部存储1中的数据读入DATA_OLD单元,二选一单元选择DATA_OLD里面的数据。然后将DATA_NEW和DATA_OLD单元里的数据送入加法器的同时通过分段读写控制模块将DATA_NEW里的数据写入外部存储1里面,覆盖掉之前数据。SUM_AVEm就为公式2SUM_AVEm=SUM_AVEm-1+DATA_NEW-DATA_OLD所示。周而复始循环直到采集停止命令。平均结果为相加和除以平均次数。
软件实现的平均处理因为运算量大,一般只是处理屏幕上的有限的显示点,停止时不能展宽看波形的细节。用此发明处理方式可以提高其展宽效果。本发明的平均输出结果并不只是显示点,而是包含了显示点的原始数据。软件可以根据一定的比例来抽取数据进行显示。停止展宽时抽取比例不同而已。由于本发明定位于外部存储空间有限的深存储示波器,全硬件实现,速度上得到保证,节省CPU开销。同时得到较好的平均效果,并且可以停下来展宽一定的倍数看波形。
附图说明
图1为用FPGA分段存储实现示波器平均采集系统的整体框图。
图2为本发明的分段存储及平均模块的示意图。
具体实施方式:
下面结合附图对本发明作进一步详细的描述。
如图1所述,本发明提供了一种用FPGA分段存储实现示波器平均采集的系统,包括ADC采样模块、帧数据处理模块、分段存储及平均模块、数据输出模块;示波器中,模数转换器ADC采样模块将模拟信号转换为数字信号存入FPGA后,由帧数据处理模块进行帧数据处理,帧数据处理后进入分段存储及平均模块,平均后的数据经过数据输出模块输出给CPU,最后输出显示。
如图2所示,所述的分段存储及平均模块的平均过程见公式(2):
SUM_AVEm=SUM_AVEm-1+DATA_NEW-DATA_OLD (2)
SUM_AVEm为平均数据和,SUM_AVEm-1为上一次平均和,DATA_NEW为最新一次帧处理数据,DATA_OLD为设定的平均次数最开始的帧处理数据,后两者都存于FPGA内部的存储区内;
当用户通过图形界面发出平均模式的指令后,初始化SUM_AVE单元为0,二选一单元选择0,DATA_OLD单元先不参与运算,即公式(2)中先不减最开始的帧处理数据,因为现在帧数据累加次数还没有达到设定平均次数,将第一帧数据存入DATA_NEW单元,然后将DATA_NEW里的数据送入加法器的同时,通过分段读写控制模块将此数据写入外部存储1里面,加法器运算结果再输入反馈到SUM_AVE单元,显然第一次的运算结果SUM_AVE1=DATA_NEW;依次类推,第二帧数据存入DATA_NEW单元,然后送入加法器的同时也存入外部存储2里,结果为SUM_AVE2=SUM_AVE1+DATA_NEW;依次类推到第m帧数据,存入外部存储m,送入加法器运算结果为SUM_AVEm=SUM_AVEm-1+DATA_NEW;此时才第一次达到平均m次数的效果;
采集在继续,新帧数据正在存入DATA_NEW单元,此时通过分段读写控制模块将外部存储1中的数据读入DATA_OLD单元,二选一单元选择DATA_OLD里面的数据;然后将DATA_NEW和DATA_OLD单元里的数据送入加法器的同时通过分段读写控制模块将DATA_NEW里的数据写入外部存储1里面,覆盖掉之前数据;SUM_AVEm就为SUM_AVEm-1+DATA_NEW-DATA_OLD,周而复始循环直到采集停止命令,平均结果为相加和除以平均次数。
下面以用户选择64次平均,m为64,n为6为例。开始采集时初始化SUM_AVE单元为0,二选一单元选择0,DATA_OLD单元先不参与运算。将第一帧数据存入DATA_NEW单元,然后将DATA_NEW里的数据送入加法器的同时,通过分段读写控制模块将此数据写入外部存储1里面,加法器运算结果再输入反馈到SUM_AVE单元,显然第一次的运算结果SUM_AVE1=DATA_NEW。依次类推,第二帧数据存入DATA_NEW单元,然后送入加法器的同时也存入外部存储2里,结果为SUM_AVE2=SUM_AVE1+DATA_NEW。依次类推到第64帧数据,存入外部存储64,送入加法器运算结果为SUM_AVE64=SUM_AVE63+DATA_NEW。此时才第一次达到平均64次数的效果。
继续采集,新帧数据正在存入DATA_NEW单元,此时通过分段读写控制模块将外部存储1中的数据读入DATA_OLD单元,二选一单元选择DATA_OLD里面的数据。然后将DATA_NEW和DATA_OLD单元里的数据送入加法器的同时通过分段读写控制模块将DATA_NEW里的数据写入外部存储1里面,覆盖掉之前数据。SUM_AVE64就为SUM_AVE63+DATA_NEW-DATA_OLD所示。周而复始循环直到采集停止命令。平均结果为相加和除以平均次数64。
以上所述仅为本发明的优选实施例而已,并不限制于本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。
Claims (1)
1.一种用FPGA分段存储实现示波器平均采集的系统,其特征在于:包括ADC采样模块、帧数据处理模块、分段存储及平均模块、数据输出模块;示波器中,模数转换器ADC采样模块将模拟信号转换为数字信号存入FPGA后,由帧数据处理模块进行帧数据处理,帧数据处理后进入分段存储及平均模块,平均后的数据经过数据输出模块输出给CPU,最后输出显示;
所述的分段存储及平均模块的平均过程见公式(2):
SUM_AVEm=SUM_AVEm-1+DATA_NEW-DATA_OLD (2)
SUM_AVEm为平均数据和,SUM_AVEm-1为上一次平均和,DATA_NEW为最新一次帧处理数据,DATA_OLD为设定的平均次数最开始的帧处理数据,后两者都存于FPGA内部的存储区内;
当用户通过图形界面发出平均模式的指令后,初始化SUM_AVE单元为0,二选一单元选择0,DATA_OLD单元先不参与运算,即公式(2)中先不减最开始的帧处理数据,因为现在帧数据累加次数还没有达到设定平均次数,将第一帧数据存入DATA_NEW单元,然后将DATA_NEW里的数据送入加法器的同时,通过分段读写控制模块将此数据写入外部存储1里面,加法器运算结果再输入反馈到SUM_AVE单元,显然第一次的运算结果SUM_AVE1=DATA_NEW;依次类推,第二帧数据存入DATA_NEW单元,然后送入加法器的同时也存入外部存储2里,结果为SUM_AVE2=SUM_AVE1+DATA_NEW;依次类推到第m帧数据,存入外部存储m,送入加法器运算结果为SUM_AVEm=SUM_AVEm-1+DATA_NEW;此时才第一次达到平均m次数的效果;
继续采集,新帧数据正在存入DATA_NEW单元,此时通过分段读写控制模块将外部存储1中的数据读入DATA_OLD单元,二选一单元选择DATA_OLD里面的数据;然后将DATA_NEW和DATA_OLD单元里的数据送入加法器的同时通过分段读写控制模块将DATA_NEW里的数据写入外部存储1里面,覆盖掉之前数据;SUM_AVEm就为SUM_AVEm-1+DATA_NEW-DATA_OLD,周而复始循环直到采集停止命令,平均结果为相加和除以平均次数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510747297.2A CN105319423B (zh) | 2015-11-05 | 2015-11-05 | 一种用fpga分段存储实现示波器平均采集的系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510747297.2A CN105319423B (zh) | 2015-11-05 | 2015-11-05 | 一种用fpga分段存储实现示波器平均采集的系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105319423A CN105319423A (zh) | 2016-02-10 |
CN105319423B true CN105319423B (zh) | 2018-03-16 |
Family
ID=55247255
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510747297.2A Active CN105319423B (zh) | 2015-11-05 | 2015-11-05 | 一种用fpga分段存储实现示波器平均采集的系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105319423B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108445275A (zh) * | 2017-02-16 | 2018-08-24 | 苏州普源精电科技有限公司 | 一种轨迹波形平均的方法、设备及示波器 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103325426A (zh) * | 2013-05-09 | 2013-09-25 | 电子科技大学 | 基于ddr2sdram阵列分段存储的无缝采集方法 |
CN203772910U (zh) * | 2014-04-08 | 2014-08-13 | 福建利利普光电科技有限公司 | 一种温度变化幅度值不变的示波器 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7477999B2 (en) * | 2006-10-26 | 2009-01-13 | Samplify Systems, Inc. | Data compression for a waveform data analyzer |
JP2009003603A (ja) * | 2007-06-20 | 2009-01-08 | Sony Corp | デバッグシステムおよびデバッグ方法 |
-
2015
- 2015-11-05 CN CN201510747297.2A patent/CN105319423B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103325426A (zh) * | 2013-05-09 | 2013-09-25 | 电子科技大学 | 基于ddr2sdram阵列分段存储的无缝采集方法 |
CN203772910U (zh) * | 2014-04-08 | 2014-08-13 | 福建利利普光电科技有限公司 | 一种温度变化幅度值不变的示波器 |
Also Published As
Publication number | Publication date |
---|---|
CN105319423A (zh) | 2016-02-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107133011B (zh) | 一种示波记录仪的多通道数据存储方法 | |
CN201464557U (zh) | 一种中频频谱监测装置 | |
CN109901472B (zh) | 一种基于fpga的顺序等效采样系统 | |
CN109063302B (zh) | 自适应爆发判断的高分辨率太阳射电数据处理系统及方法 | |
US20130120309A1 (en) | Touch detection method for capacitive touch screens and touch detection device | |
CN108616280B (zh) | 非稳态数据实时采集数据压缩方法 | |
CN107809245A (zh) | 模拟至数字转换器 | |
CN208872796U (zh) | 一种基于pci接口的多通道通用示波卡及系统 | |
CN102539864B (zh) | 数字示波器及信号测量方法 | |
CN105319423B (zh) | 一种用fpga分段存储实现示波器平均采集的系统 | |
CN112836169A (zh) | 一种基于高速采集的fft频谱数据处理方法及装置 | |
CN109100556A (zh) | 一种基于pci接口的多通道通用示波卡 | |
CN115685318A (zh) | 一种基于动态匹配的抗假频地震数据插值方法、电子设备及存储介质 | |
CN201755235U (zh) | 基于声卡的心音信号采集与分析装置 | |
JP2001526846A (ja) | コーヒレントサンプリングデジタイザーシステム | |
US11303306B2 (en) | Narrowband IQ extraction and storage | |
CN117233444A (zh) | 数字示波器可变采样率采集存储装置 | |
CN103490783A (zh) | 一种将模拟信号转换为数字信息的方法 | |
CN108776259B (zh) | 基于数字带宽限制技术的功率分析仪 | |
CN108918937A (zh) | 一种基于pci接口的通用示波卡 | |
CN109142835B (zh) | 具有波形多帧记录功能的数据采集系统 | |
CN104820120B (zh) | 一种提高信号触发精度的方法与装置 | |
CN109934729A (zh) | 非稳态数据实时采集数据深度压缩方法 | |
US11086448B2 (en) | Parallel analysis of different sampling rates in a touch screen controller | |
CN109165171B (zh) | 自适应的快速数字波形成像方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |