发明名称 一种数字示波器的波形搜索方法
摘要 本发明公开了一种数字示波器的波形搜索方法,在硬件协同处理装置中,根据用户设置的相关波形参数将经过数字示波器的信号调理电路和信号整形电路的模拟信号转换为1路或者2路数字信号,该数字信号进入用户选中的波形搜索模块。波形搜索模块在FPGA的系统时钟下不断检测输入的数字信号流符合用户设置参数的逻辑电平,并将该逻辑电平出现的起始时间Ts存入波形搜索数据存储器中。微处理器从存储器中读取时间数据再据根据当前数字示波器的时基档位计算出标记点在屏幕上的对应位置。
申请公布号 CN105044420A 申请公布日期 2015.11.11
申请号 CN201510534574.1 申请日期 2015.08.27
申请人 电子科技大学 发明人 曾浩;许波;黄武煌;杨扩军;邱渡裕;蒋俊;潘卉青
分类号 G01R13/02(2006.01)I 主分类号 G01R13/02(2006.01)I
代理机构 成都行之专利代理事务所(普通合伙) 51220 代理人 温利平
主权项 一种数字示波器的波形搜索方法,其特征在于,包括以下步骤:(1)、对硬件协同处理装置进行初始化(1.1)、对信号整形电路初始化信号整形电路中的多路选择器A选择通道1作为默认的信号输入通道;根据数字示波器采集系统得到输入信号的幅度V,将比较器H的阈值电平设置为V/2,比较器L的阈值电平设置为0;(1.2)、对FPGA初始化将FPGA中的多路选择器B、时间计数器模块、地址生成器模块、数据选择器模块、触发时间记录模块、波形搜索模块、协同处理控制器模块、波形搜索数据存储器模块进行初始化;(2)、波形搜索参数设置用户通过数字示波器的人机交互界面向硬件协同处理装置设置相关波形参数;(3)、信号输入输入信号经过信号调理电路后输入到硬件协同处理装置,再经过其内部的信号整形电路后得到数字信号,最后将数字信号送到FPGA中的多路选择器B,并行执行步骤(4)和(5);(4)FPGA实现波形搜索(4.1)、使能装置中的时间计数器模块、地址生成器模块,并根据步骤(2)的设置相关波形参数使能指定的波形搜索模块,并将多路选择器B的输出接入到该波形搜索模块,指定波形搜索模块输出的数据流通过数据选择器模块输出到波形搜索数据存储器中;(4.2)、FPGA重复的从输入的数数字信号流中查找符合条件的数字信号,如果没有找到符合条件的数字信号,则继续执行步骤(4.2),如果找到符合条件的数字信号,则进一步根据步骤(2)设置的参数判断是否有持续时间长度要求,如果有持续时间长度要求的波形,则进入步骤(4.3);如果没有持续时间长度要求的波形,则进入步骤(4.4);(4.3)、记录该数字信号出现的起始时间Ts和结束时间Te,得到该数字信号的波形时间长度T=(Te‑Ts),再比较波形时间长度T与用户设置的时间值Tu是否满足用户设置关系,如果满足,则将起始时间Ts送到时间数据总线上,再进入步骤(4.5);如果不满足,则不向时间数据总线上传输数据;(4.4)、记录该数字信号出现的起始时间T,并将起始时间Ts送到时间数据总线上,再进入步骤(4.5);(4.5)、当时间数据总线上出现有效时间数据时,地址生成器从0地址依次循环产生操作波形搜索数据存储器所需要的写地址,再根据当前的地址将数据选择器输出的数据流存入波形搜索数据存储器中;(5)、触发时间记录首先使能触发时间记录模块,触发时间记录模块在数字示波器有效的触发信号产生时,将时间计数器当前的计数值锁存到d<sub>triger</sub>中;将地址生成器当前的地址锁存到A<sub>triger</sub>中;(6)、处理器数据处理(6.1)、处理器对数字示波器本次采集后的波形数据进行处理和显示;(6.2)、在步骤(6.1)完成后,处理器读取数字示波器当前的时基档位,计算出屏幕显示的时间长度D<sub>display</sub>;读取D<sub>triger</sub>、预触发深度值P<sub>length</sub>、波形搜索数据存储器长度P<sub>fifo</sub>,计算出屏幕显示所需的时间范围D<sub>left</sub>和D<sub>right</sub>;D<sub>left</sub>=D<sub>triger</sub>‑D<sub>display</sub>*P<sub>length</sub>/P<sub>fifo</sub><maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><msub><mi>D</mi><mrow><mi>r</mi><mi>i</mi><mi>g</mi><mi>h</mi><mi>t</mi></mrow></msub><mo>=</mo><msub><mi>D</mi><mrow><mi>t</mi><mi>r</mi><mi>i</mi><mi>g</mi><mi>e</mi><mi>r</mi></mrow></msub><mo>+</mo><msub><mi>D</mi><mrow><mi>d</mi><mi>i</mi><mi>s</mi><mi>p</mi><mi>l</mi><mi>a</mi><mi>y</mi></mrow></msub><mo>*</mo><mrow><mo>(</mo><mn>1</mn><mo>-</mo><mfrac><msub><mi>P</mi><mrow><mi>l</mi><mi>e</mi><mi>n</mi><mi>g</mi><mi>t</mi><mi>h</mi></mrow></msub><msub><mi>P</mi><mrow><mi>f</mi><mi>i</mi><mi>f</mi><mi>o</mi></mrow></msub></mfrac><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000790214660000021.GIF" wi="1155" he="188" /></maths>其中,D<sub>triger</sub>值作为波形搜索数据与数字示波器触发点对齐的参考值、D<sub>left</sub>和D<sub>right</sub>分别为屏幕显示显示波形搜索数据对应的最小值和最大值;(6.3)、处理器从A<sub>triger</sub>中依次向触发前数据区读取数据,如果读取数据在D<sub>left</sub>和D<sub>triger</sub>之间则在屏幕上标记,如果读取数据小于D<sub>left</sub>时则进入步骤(6.4);(6.4)、处理器从A<sub>triger</sub>中依次向触发后数据区读取数据,如果读取数据在D<sub>triger</sub>和D<sub>right</sub>之间则在屏幕上标记,如果读取数据大于D<sub>right</sub>则停止标记,且表示本次波形搜索完成。
地址 611731 四川省成都市高新区(西区)西源大道2006号