一种数字高捕获率方法与流程

文档序号:12593141阅读:853来源:国知局
一种数字高捕获率方法与流程

本发明涉及数字技术领域,特别是涉及一种数字高捕获率方法。



背景技术:

数字三维示波器是一种不仅能捕获和显示信号的时间-幅度(事件)信息,而且能够以不同的辉度或颜色等级显示事件出现概率的数字存储示波器。它具有数字存储示波器的各种优点,同时它还能以数字形式产生显示效果类似于模拟示波器的亮度渐次变化的化学荧光效果。

随着系统时钟频率的不断提高,急剧减少了信号的时序裕度,抖动、异步故障和瞬态问题变得突出并难以发现。如果波形捕获率不足将使时域测试中多数瞬时事件无法发现,信号抖动分析、眼图分析更无从谈起。



技术实现要素:

鉴于现有技术的缺陷,本发明目的在于提供一种数字高捕获率方法,用以提高波形捕获率。

本发明目的主要是通过以下技术方案实现的:

本发明提供一种数字高捕获率方法,包括:

将采集的数字信号的串行数据流转换为并行数据流;

将并行数据流的每个时钟周期内的X个采样点的值并行存储于三维波形存储空间的对应的X个独立读写的存储单元。

进一步,所述方法还包括:

将每个采样点的值作为对应的存储单元的内部地址;

将所述内部地址累加2N作为每个采样点对应的存储单元的最终地址;其中,N为数字三维示波器的模数转换模块的分辨率。

进一步,所述方法具体包括:

根据数字三维示波器的屏幕需要显示的采样点个数K,确定需要存储的时钟周期的个数M;

确定触发位置;

判断是否存满M个周期的并行数据流,若没有存满,将每个采样点的值作为对应的存储单元的内部地址;将所述内部地址累加2N作为每个采样点对应的存储单元的最终地址;

若存满,根据所述触发位置将并行数据流右移,将移位后的每个采样点的值作为存储单元的内部地址,读出所述内部地址的值后加1再写回所述内部地址,将所述内部地址累加2N作为每个采样点对应的存储单元的最终地址。

进一步,将触发位置的数据移动到X维数组的最后一个位置,从而保证触发位置的数据位于K个采样点中的同一个位置。

进一步,时钟周期的个数M=(K/X)+1。

本发明有益效果如下:本发明有效提高波形捕获率,解决了由于信号的时序裕度的减少,抖动、异步故障和瞬态事件变得难以发现的问题。

附图说明

图1是本发明实施例中数字三维示波器的功能框图;

图2是本发明实施例中存储每个时钟周期的采样点需要的对应的存储单元示意图。

具体实施方式

波形捕获率已成为评价时域测试性能的关键指标之一。如果波形捕获率不足将使时域测试中多数瞬时事件无法发现,信号抖动分析、眼图分析更无从谈 起,基于此,本发明提供了一种数字高捕获率方法,以下结合附图以及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不限定本发明。

本发明实施例提供一种数字高捕获率方法,该方法对高速并行数据流进行并行三维信息统计,且全部在FPGA(Field-Programmable Gate Array,即现场可编程门阵列)内部实现,包括:

S101,将采集的数字信号的串行数据流转换为并行数据流;

S102,将并行数据流的每个时钟周期内的X个采样点的值并行存储于三维波形存储空间的对应的X个独立读写的存储单元。

S103,将每个采样点的值作为对应的存储单元的内部地址;将所述内部地址累加2N作为每个采样点对应的存储单元的最终地址;其中,N为数字三维示波器的模数转换模块的分辨率。

其中,S103具体包括:

根据数字三维示波器的屏幕需要显示的采样点个数K,确定需要存储的时钟周期的个数M;

确定触发位置;

判断是否存满M个周期的并行数据流,若没有存满,执行将每个采样点的值作为对应的存储单元的内部地址;将所述内部地址累加2N作为每个采样点对应的存储单元的最终地址;

若存满,根据所述触发位置将并行数据流右移,将移位后的每个采样点的值作为存储单元的内部地址,读出所述内部地址的值后加1再写回所述内部地址,执行将所述内部地址累加2N作为每个采样点对应的存储单元的最终地址。

简述本发明实施例方法的实现原理。

如图1所示,模拟信号经过ADC(模数转换模块)转化后变为数字信号,数字信号送入FPGA后做串并转换,变为并行数据流,在数字时钟下,每周期均有若干采样点需要统计处理,数字高捕获率实现的方法难点主要有两方面, 一个是数据为高速并行数据流,需并行处理来保证较高捕获率,另一个是对存储空间的合理利用。

假设数字时钟下,每个周期得到X个采样点,一次采集需要K个采样点,需要采集K/X个时钟周期,实现数字高捕获率的第一步是每周期并行存储X个采样点,存储的时钟周期个数M=(K/X)+1个(多一个时钟周期是用于触发位置调整),需要存储空间为K+X。

假设触发位置位于X个采样点中的位置为m,为保证触发位置稳定不抖动,需要将触发位置的数据移动到X维数组的最后一个位置,从而保证触发位置的数据位于K个采样点中的同一个位置。为实现高捕获率,减少处理时间和存储空间,并行数据流被读出后直接进行移位操作,然后送入三维波形统计模块,本步骤中不再存储。

假设ADC的分辨率为N,则屏幕共有2N K个像素点,每个像素点用16bit位统计,表示不同的亮度。存储空间的大小为2N K 16bit。采集到的每个采样点,可以映射到三维波形存储空间的某个存储单元中。当波形的采样点涉及到某存储单元时,读出该存储单元内的数值,加一后写回。为保证高捕获率,同样需要并行处理X个采样点,需要将存储空间分解成X个可独立读写的存储块,每个存储块的大小为为2N K 16/Xbit。便于工程实践,将采样点值作为存储空间的内部地址0至2N-1,外部地址每并行处理完X个采样点累加2N。因此,波形经常扫过的地方,亮度信息在存储单元内会逐级累积,即数据携带波形出现的概率信息,那么波形自然显示出明暗的效果。

具体说如图2所示:

1并行处理40个采样点,40即是上述的X,所以需要40个独立存储空间。

2这40个采样点的值可能是0到255中间的某一个值,比如40个采样点中第1个采样点的值是80,就把80作为第一块存储空间SRAM0的地址;40个采样点中第2个采样点的值是90,就把90作为第二块存储空间SRAM1的地址;40个采样点中第40个采样点的值是100,就把100作为第二块存储空 间SRAM39的地址。

3并行处理完这40个采样点后,继续处理接下来的40个点,存储空间依旧是这40块SRAM,0~255的存储地址已经给第一次的40个点用了,接下来就要用256~511的地址,即整体地址增加256,比如比如40个采样点中第1个采样点的值是80,就把80+256作为第一块存储空间SRAM0的地址;40个采样点中第2个采样点的值是90,就把90+256作为第二块存储空间SRAM1的地址;40个采样点中第40个采样点的值是100,就把100+256作为第二块存储空间SRAM39的地址。

以一个具体的应用例子,简述本发明。

一个5GHz采样率的ADC对一个模拟信号进行采样(每个采样点8位),将采样数据送入FPGA处理,FPGA不能以5GHz的时钟直接处理,因此将数据流通络低压差分模块降速到250M时钟下处理,得到每周期20个采样点(160位)的高速并行数据流。屏幕需要显示1000个采样点,则需要并行存储51个周期(每周期20个采样点)的数据。

存满51个周期数据后,将数据读出,根据触发位置直接将数据右移,从而保证每次的触发位置在第25个周期数据的最低位,达到触发无数字抖动的目的。

移位后的数据每个采样点的值作为存储单元的内部地址,读出该地址内的数值后加1再写回该地址。每处理完并行的20个采样点后外部地址累加256。内部地址加上外部地址为最终的存储单元地址。

尽管为示例目的,以上已经公开了本发明的优选实施例,但本领域的技术人员将意识到各种改进、增加和取代也是可能的,因此,本发明的范围应当不限于上述实施例。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1