CN102998501B - 基于fpga实现数字示波器数据压缩的方法 - Google Patents

基于fpga实现数字示波器数据压缩的方法 Download PDF

Info

Publication number
CN102998501B
CN102998501B CN201210583140.7A CN201210583140A CN102998501B CN 102998501 B CN102998501 B CN 102998501B CN 201210583140 A CN201210583140 A CN 201210583140A CN 102998501 B CN102998501 B CN 102998501B
Authority
CN
China
Prior art keywords
data
fpga
storer
stored
digital signal
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.)
Expired - Fee Related
Application number
CN201210583140.7A
Other languages
English (en)
Other versions
CN102998501A (zh
Inventor
蔡振越
庄双集
陈焕洵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujian Liliput Optoelectronics Technology Co Ltd
Original Assignee
Fujian Liliput Optoelectronics Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujian Liliput Optoelectronics Technology Co Ltd filed Critical Fujian Liliput Optoelectronics Technology Co Ltd
Priority to CN201210583140.7A priority Critical patent/CN102998501B/zh
Publication of CN102998501A publication Critical patent/CN102998501A/zh
Application granted granted Critical
Publication of CN102998501B publication Critical patent/CN102998501B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明公开了一种基于FPGA实现数字示波器数据压缩的方法通过FPGA对模拟信号经模数转化器采集到的数字信号数据进行压缩,FPGA先将外部存储器中的数据存入存储器FIFO1内,根据给定的压缩率,从一组数据中找出数据的第一个值、最大值、最小值和最后一个值经压缩模块存入存储器FIFO2内,并对外部存储器中的数字信号循环处理,当存储器FIFO2内数据量达到设定值,存储器FIFO2将不再存取数据,将存储器FIFO2内的数据送给示波器屏幕显示,本发明既提高了示波器的存储深度,同时加快了示波器刷新速度,得到更加连续的波形,提高示波器的捕获率。

Description

基于FPGA实现数字示波器数据压缩的方法
技术领域
本发明涉及示波器数字信号处理领域,尤其涉及一种基于FPGA实现数字示波器数据压缩的方法。
背景技术
数字示波器通过模数转换器(以下简称ADC) 将模拟量转换为数字信号,通过FPGA采集最终显示到屏幕上。存储深度是数字示波器的重要指标参数。存储深度越高,在相同的采样时间内,示波器可以显示出越明显的波形细节,更利于用户观察波形。刷新率也是示波器的一个参数,刷新率越快,可以让用户看到更加连续的波形,提高示波器的捕获率。
但是存储深度的越来越高,一次的采样的时间内需要存取的ADC数据也将变多, 如果直接将全部ADC数据进行显示的话,会导致示波器的刷新速度变慢,波形的捕获率变低。
发明内容
本发明的目的在于提供一种既提高了示波器的存储深度,同时又不降低示波器刷新速度的基于FPGA实现数字示波器数据压缩的方法。
为了实现上述目的,本发明如下技术方案:
一种基于FPGA实现数字示波器数据压缩的方法,所述示波器包括:
外部存储器,存储外部的模拟信号经模数转化器采集到的数字信号数据;
FPGA,处理所述外部存储器中数字信号数据;
屏幕,显示经所述FPGA处理后的数字信号;
所述外部存储器、FPGA和屏幕依次电性连接,其特征在于:
所述基于FPGA实现数字示波器数据压缩的方法为:通过FPGA对经模数转化器转化后的数字信号数据进行压缩,模数转化器转换后的数字信号存储在外部存储器中,采集到的信号总量定义为T, FPGA压缩率定义为N,每一组数据信号量为a,组数为T/N,根据给定的压缩率,FPGA先从外部存储器存储的数字信号中取出a个数字信号存入存储器FIFO1内,并从a个数据信号量中找出该组数字信号中的第一个值、最大值、最小值和最后一个值经压缩模块存入存储器FIFO2内,在FPGA处理数字信号同时,将外部存储器中未处理的数字信号存入存储器FIFO1内为取值做准备,对每一组数据进行循环取值处理,直到FPGA经循环T/N次处理完存储在外部存储器中的信号总量T为止,当存储器FIFO2内数据量达到设定值,存储器FIFO2将不再存取数据,将存储器FIFO2内的数据送给示波器屏幕显示。
所述方法具体步骤如下:
 1). 判断FPGA中存储器FIFO1内存储的数据量,若FPGA中存储器FIFO1内存储的数据量小于设定值,则将外部存储器中的数据存入存储器FIFO1内,若FPGA中存储器FIFO1内存储的数据量大于设定值,则外部存储器中的数据不存入存储器FIFO1内;
2). 对存入到FPGA中存储器FIFO1内的每一组数字信号按公差为1等差数列方式进行编号,存入的第一个数字信号编号为a,存入的最后一个数字信号编号为1,将这组带有编号的数字信号按编号公差为1进行递减比对,将求出的这组数字信号中第一个数据值、最大数据值、最小数据值和最后一个数据值经压缩模块存入FPGA中存储器FIFO2内;
3). 对存入到FPGA中存储器FIFO1内的每组数字信号重复步骤2);
4). 判断FPGA中存储器FIFO2内存储的数据量,达到设定的数据量值,则不再存取数据,将FPGA中存储器FIFO2内存储的数据发送给示波器屏幕显示,未达到设定的数据量值,则继续存取数据。
所述的外部存储器、存储器FIFO1和存储器FIFO2为先进先出式存储器。
所述的模数转化器收集模拟信号,并将转化的数字信号存入外部存储器中。
本发明采用以上技术方案,利用FPGA对模拟信号经模数转化器采集到的数字信号数据进行压缩,FPGA先将外部存储器中的数据存入存储器FIFO1内,根据给定的压缩率,从一组数据中找出数据的第一个值、最大值、最小值和最后一个值经压缩模块存入存储器FIFO2内,之后不断的对外部存储器中的数据循环处理,当存储器FIFO2内数据量达到设定值,存储器FIFO2将不再存取数据,将存储器FIFO2内的数据送给示波器屏幕显示,本发明既提高了示波器的存储深度,同时加快了示波器刷新速度,得到更加连续的波形,提高示波器的捕获率。
附图说明
现结合附图对本发明做进一步详述:
图1是本发明FPGA数据压缩的流程示意图;
图2是本发明FPGA数据压缩算法的流程图。
具体实施方式
请参阅图1-2之一所示,本发明包括外部存储器1,存储外部的模拟信号经模数转化器采集到的数字信号数据,FPGA2,处理所述外部存储器中数字信号数据,屏幕3,显示经所述FPGA2处理后的数字信号,所述外部存储器1、FPGA2和屏幕3依次电性连接。
请参阅图1,在此实施例中,介绍了ADC 数据在FPGA内部压缩的基本流程。
所述基于FPGA实现数字示波器数据压缩的方法为:通过FPGA2对经模数转化器7转化后的数字信号数据进行压缩,模数转化器7转化后的数字信号存储在外部存储器1中,采集到的信号总量定义为T, FPGA压缩率定义为N,每一组数据信号量为a,组数为T/N,根据给定的压缩率,FPGA2先从外部存储器存储1的数字信号中取出a个数字信号存入存储器FIFO1 4内,并从a个数据信号量中找出该组数字信号中的第一个值、最大值、最小值和最后一个值经压缩模块存入存储器FIFO2 6内,在FPGA2处理数字信号同时,将外部存储器1中未处理的数字信号存入存储器FIFO1 4内为取值做准备,对每一组数据进行循环取值处理,直到FPGA2经循环T/N次处理完存储在外部存储器1中的信号总量T为止,当存储器FIFO2 6内数据量达到设定值,存储器FIFO2 6将不再存取数据,将存储器FIFO2 6内的数据送给示波器屏幕3显示。
在此提供一优先实施例,将结合给定的数据压缩率进一步对本发明做说明,设定外部存储器1模拟信号经模数转化器7采集到T=10M的数字信号数据 ,数据压缩率N为10000:1,每一组的信号量定义为a,具体步骤如下:
1). 判断FPGA2中存储器FIFO1 4内存储的数据量,若FPGA2中存储器FIFO1 4内存储的数据量小于设定值,则将外部存储器1中的数据存入存储器FIFO1 4内,若FPGA2中存储器FIFO1 4内存储的数据量大于设定值,则外部存储器中的数据不存入存储器FIFO1 4内,具体方法如下:
判断存储器FIFO1 4内存储的数据量是否小于64个,若存储器FIFO1 4内存储的数据量小于64个,则将外部存储器1中的数据存入存储器FIFO1 4内,若存储器FIFO1 4内存储的数据量大于64, 则外部存储器中的数据不存入存储器FIFO1 4内;
本发明此实施例中判断FPGA 2中存储器FIFO1 4内存储的数据量步骤中设定值为64,应当理解,这里的设定值仅仅出于解释目的,并不是限制本发明的权利范围, 本实施例中设定值与存储器FIFO1 4从外部存储器1每一次读取的数字信号量相同,存储器类型不同则每次读取的数字信号量不同,可根据存储器的类型进行设定,一般设定值为存储器每次读取的信号量值。
2). 对存入到FPGA2中存储器FIFO1 4内的每一组数字信号按公差为1等差数列方式进行编号,存入的第一个数字信号编号为a,存入的最后一个数字信号编号为1,将这组带有编号的数字信号按编号公差为1进行递减比对,将求出的这组数字信号中第一个数据值、最大数据值、最小数据值和最后一个数据值经压缩模块5存入FPGA2中存储器FIFO2 6内,具体方法如下:
a). 将信号量a赋值为N,对a进行自减,即将信号量a 赋值为10000,并将信号量a的编号按公差为1依次递减,为方便数字信号循环分组,在此将每组信号量定义为压缩率,a=N, 如图2步骤S1;
b). 判断信号量a是否为N,即当信号量a = 10000时,压缩模块中RD_en置为1,WR_en置为1,将存储器FIFO1内的读取的第一个数据值经压缩模块5存入FPGA 2中存储器FIFO2 6内,如图2步骤S11;
c).  判断信号量是否在1<a<N之间,即当信号量a在1<a<10000,压缩模块5中RD_en置为1,WR_en置为0,将每一个数据读出,并且与上一个数据进行比较,求出数据的最大值和最小值,经压缩模块5存入FPGA 2中存储器FIFO2 6内,如图2步骤S12;
d). 判断信号量是否为1,即当信号量a= 1时,压缩模块中RD_en置为1,WR_en置为0,将存储器FIFO1内的读取的最后一个个数据值经压缩模块5存入FPGA 2中存储器FIFO2 6内,如图2步骤S13;
3). 对存入到FPGA 2中存储器FIFO1 4内的每组数字信号重复步骤2);
当信号量a的值为1时,再将信号量a赋值为10000,开始循环,如图2步骤S2
4). 判断FPGA 2中存储器FIFO2 6内存储的数据量,达到设定的数据量值,则不再存取数据,将FPGA 2中存储器FIFO2 6内存储的数据发送给示波器屏幕3显示,未达到设定的数据量值,则继续存取数据。
此实施例中,外部存储器中存储的数据量为10M,数据压缩率N为10000:1,在每此循环中,将求出的这组数字信号中第一个数据值、最大数据值、最小数据值和最后一个数据值经压缩模块5存入FPGA2中存储器FIFO26内,每一组中的10000个数据经本实施例中的方法变成4个数据,所以当存储器FIFO2 6内的数据量未达到4000时, 则继续存取数据,当存储器中的数据量达到4000时,存储器FIFO2 6将不再存取数据,将存储器FIFO2 6的数据送给示波器屏幕显示,至此数据在示波器屏幕上显示的更加光滑,另需要强调一点,本发明在对每组中的数字信号进行编号时,编号由所附压缩率值由大到小进行编号,仅为方便实施例说明,并非对本发明方法的限制。
本实施例中的描述的方法在对数据做处理时,相对一传统的处理方式既提高了示波器的存储深度,同时加快了示波器刷新速度,得到更加连续的波形,提高示波器的捕获率。
由以上实施方式的详述,希望能更加清楚描述本发明的特征,倘若本领域的技术人员对本发明进行各种改动和变形属于本发明权利要求及其等同技术范围的,则本发明也包括这些改动和变形在内。

Claims (3)

1.一种基于FPGA实现数字示波器数据压缩的方法,所述示波器包括:
外部存储器,存储外部的模拟信号经模数转化器采集到的数字信号数据;
FPGA,处理所述外部存储器中数字信号数据;
屏幕,显示经所述FPGA处理后的数字信号;
所述外部存储器、FPGA和屏幕依次电性连接,其特征在于:
所述基于FPGA实现数字示波器数据压缩的方法为:通过FPGA对经模数转化器转化后的数字信号数据进行压缩,模数转化器转化后的数字信号存储在外部存储器中,采集到的信号总量定义为T, FPGA压缩率定义为N,每一组数据信号量为a,组数为T/N,根据给定的压缩率,FPGA先从外部存储器存储的数字信号中取出a个数字信号存入存储器FIFO1内,并从a个数据信号量中找出该组数字信号中的第一个值、最大值、最小值和最后一个值经压缩模块存入存储器FIFO2内,在FPGA处理数字信号同时,将外部存储器中未处理的数字信号存入存储器FIFO1内为取值做准备,对每一组数据进行循环取值处理,直到FPGA经循环T/N次处理完存储在外部存储器中的信号总量T为止,当存储器FIFO2内数据量达到设定值,存储器FIFO2将不再存取数据,将存储器FIFO2内的数据送给示波器屏幕显示;
所述方法具体步骤如下:
1). 判断FPGA中存储器FIFO1内存储的数据量,若FPGA中存储器FIFO1内存储的数据量小于设定值,则将外部存储器中的数据存入存储器FIFO1内,若FPGA中存储器FIFO1内存储的数据量大于设定值,则外部存储器中的数据不存入存储器FIFO1内;
2). 对存入到FPGA中存储器FIFO1内的每一组数字信号按公差为1的等差数列方式进行编号,存入的第一个数字信号编号为a,,存入的最后一个数字信号编号为1,将这组带有编号的数字信号按编号公差为1进行递减比对,将求出的这组数字信号中第一个数据值、最大数据值、最小数据值和最后一个数据值经压缩模块存入FPGA中存储器FIFO2内;
3). 对存入到FPGA中存储器FIFO1内的每组数字信号重复步骤2);
4). 判断FPGA中存储器FIFO2内存储的数据量,达到设定的数据量值,则不再存取数据,将FPGA中存储器FIFO2内存储的数据发送给示波器屏幕显示,未达到设定的数据量值,则继续存取数据。
2.根据权利要求1所述的基于FPGA实现数字示波器数据压缩的方法,其特征在于:所述的外部存储器、存储器FIFO1和存储器FIFO2为先进先出式存储器。
3.根据权利要求1所述的基于FPGA实现数字示波器数据压缩的方法,其特征在于:所述的模数转化器收集模拟信号,并将转化的数字信号存入外部存储器中。
CN201210583140.7A 2012-12-28 2012-12-28 基于fpga实现数字示波器数据压缩的方法 Expired - Fee Related CN102998501B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210583140.7A CN102998501B (zh) 2012-12-28 2012-12-28 基于fpga实现数字示波器数据压缩的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210583140.7A CN102998501B (zh) 2012-12-28 2012-12-28 基于fpga实现数字示波器数据压缩的方法

Publications (2)

Publication Number Publication Date
CN102998501A CN102998501A (zh) 2013-03-27
CN102998501B true CN102998501B (zh) 2015-06-10

Family

ID=47927331

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210583140.7A Expired - Fee Related CN102998501B (zh) 2012-12-28 2012-12-28 基于fpga实现数字示波器数据压缩的方法

Country Status (1)

Country Link
CN (1) CN102998501B (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103592487A (zh) * 2013-10-31 2014-02-19 江苏绿扬电子仪器集团有限公司 针对示波器毛刺捕获要求的峰值检测装置
CN103630721A (zh) * 2013-11-19 2014-03-12 中国电子科技集团公司第四十一研究所 一种提高混合示波器数字通道波形捕获率的方法
CN103969484B (zh) * 2014-05-30 2016-10-19 广州致远电子股份有限公司 高刷新率波形合成器和高刷新率示波器
CN103996282B (zh) * 2014-06-03 2017-06-16 福建利利普光电科技有限公司 一种红外波形检测方法
CN104267281B (zh) * 2014-09-25 2017-03-15 国家电网公司 一种分布式低压配电网状态监测数据压缩方法
CN104730307B (zh) * 2015-03-02 2017-07-18 深圳市鼎阳科技有限公司 灰度等级数字示波器及其波形处理模块和方法
CN104881339B (zh) * 2015-05-18 2018-09-18 昆山龙腾光电有限公司 一种测试装置、测试方法及显示系统
CN105467182A (zh) * 2015-12-16 2016-04-06 福建利利普光电科技有限公司 一种带数据记录功能的示波器及数据记录方法
CN106680560B (zh) * 2016-11-21 2019-07-05 成都定为电子技术有限公司 一种高捕获率的测量信号三维显示方法及系统
CN108037338A (zh) * 2017-12-20 2018-05-15 福建利利普光电科技有限公司 一种基于光纤传输的多通道隔离数字示波器
CN112199010B (zh) * 2020-12-03 2021-03-30 深圳市鼎阳科技股份有限公司 一种全存储深度测量方法及数字示波器、存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2271043A (en) * 1992-09-21 1994-03-30 Gould Inc Oscilloscope display enhancement technique
CN1602504A (zh) * 2001-12-11 2005-03-30 勒克罗伊公司 用于快速显示的数据压缩
JP2009250607A (ja) * 2008-04-01 2009-10-29 Yokogawa Electric Corp 波形表示装置および波形表示方法
CN101726644A (zh) * 2009-11-20 2010-06-09 电子科技大学 一种具有波形快速定位与缩放功能的数字存储示波器
CN102466747A (zh) * 2010-11-03 2012-05-23 北京普源精电科技有限公司 一种测量数据压缩显示装置及其控制方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003315370A (ja) * 2002-04-24 2003-11-06 Yokogawa Electric Corp 波形記録装置
US8421802B2 (en) * 2008-03-07 2013-04-16 Olympus Ndt Peak visualization enhancement display system for use with a compressed waveform display on a non-destructive inspection instrument

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2271043A (en) * 1992-09-21 1994-03-30 Gould Inc Oscilloscope display enhancement technique
CN1602504A (zh) * 2001-12-11 2005-03-30 勒克罗伊公司 用于快速显示的数据压缩
JP2009250607A (ja) * 2008-04-01 2009-10-29 Yokogawa Electric Corp 波形表示装置および波形表示方法
CN101726644A (zh) * 2009-11-20 2010-06-09 电子科技大学 一种具有波形快速定位与缩放功能的数字存储示波器
CN102466747A (zh) * 2010-11-03 2012-05-23 北京普源精电科技有限公司 一种测量数据压缩显示装置及其控制方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于FPGA的多通道脉冲压缩程序设计;徐寅晖等;《计算机工程与应用》;20110831(第8s期);341-345 *

Also Published As

Publication number Publication date
CN102998501A (zh) 2013-03-27

Similar Documents

Publication Publication Date Title
CN102998501B (zh) 基于fpga实现数字示波器数据压缩的方法
CN102466747A (zh) 一种测量数据压缩显示装置及其控制方法
CN107133011B (zh) 一种示波记录仪的多通道数据存储方法
CN102539864B (zh) 数字示波器及信号测量方法
CN107300632B (zh) 一种荧光示波器的数字信号处理系统
CN105954558B (zh) 一种多通道信号示波器和并行映射和显示的方法
CN104077492B (zh) 一种基于fpga的采样数据内插方法
CN105445514A (zh) 一种基于fpga多处理器的数字存储示波器
CN101968963B (zh) 音频信号压缩采样系统
CN105842507A (zh) 一种示波器数字荧光显示方法及其控制装置
CN110442185A (zh) 一种波形序列发生器
CN106324312A (zh) 一种示波器垂直方向上快速精准读取数据的方法及示波器
CN103281087A (zh) 基于多级压缩感知的信号采样系统及方法
CN103176005A (zh) 信号处理系统及方法
CN202794278U (zh) 高精度手持式数字示波器
CN103532552A (zh) 一种随机采样斜率模数转换器
CN105681780A (zh) 一种复合视频广播信号质量的测量方法和装置
CN103490783A (zh) 一种将模拟信号转换为数字信息的方法
CN107749301B (zh) 一种音色样本重构方法及系统、存储介质及终端设备
CN204334510U (zh) 一种抗混叠滤波器模拟电路
CN201041128Y (zh) 摩托车点火器进角测试装置
CN205920142U (zh) 一种示波器
CN115545082A (zh) 质谱图生成方法、装置、系统及可读存储介质
CN102323479B (zh) 列车谐波电流分析方法
CN104793031B (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
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150610

Termination date: 20151228

EXPY Termination of patent right or utility model