多种触发功能的可编程高速数据采集模块

2011-11-08 09:40:25来源: 互联网
数据采集的过程中,为了不漏掉任何一个既定特征的信号,A/D转换器必须不断地采集数据。但是由于存储器容量的限制,不可能无限制地采集并存储数据。如何使模块能自动检测、采集并存储有效数据呢?触发技术的引入可以解决这一问题。触发是为了有效地观测信号,当被测信号满足触发条件时,启动一次数据采集,使用户在屏幕上能观测到满足触发条件的波形。

  触发电路在以往的设计中,多采用电平比较器,其缺点是:采用的分立元件多,不利于模块移植和速度的提升,同时触发方式多样化配置也受到硬件限制,不具备智能化特点。本模块基于高速A/D转换器和FPGA,提出了一种全数字化的多种触发功能的高速数字采集设计方案。模块接口易于移植,采集频率高达50 MHz,具有多种可编程触发功能,采用的触发窗技术进一步保证了采样存储数据的正确性和有效性。

  1 高速数据采集模块结构

  高速数据采集模块由FPGA存储控制、传输电路和AD9057数据采集部分构成。其中FPGA为此次模块设计的重点。多种触发功能的高速数据采集模块结构框图如图1所示。采用Cyclone系列EP1C6Q240C8型号的FPGA控制芯片,其Bank4 I/O口与AD9057相连,有源晶振提供了50 MHz的时钟频率。

  

 

  此模块通过通信接口动态设置触发极性、触发模式、触发窗长度、触发点电平,触发极性可选上升沿触发rising_edge和下降沿触发falling_edge两种。触发模式可分为前触发pre_trigger、中间触发mid_trigger、后触发post_trigger三种模式。触发窗长度设置为0~100的整数,触发点电平可设置为0~255的整数。

  当连接通信接口的外部显示控制界面设置好触发极性、触发模式、触发窗长度、触发点电平时,开始启动采集命令,包装好的40位数据流将被发送到FPGA;FPGA接收到40位数据后,迅速分离成5个8位数据,即触发极性、触发模式、触发窗长度、触发点电平和采集启动信号,利用FIFO存储器先进先出的特性以及对AD9057的控制时序,配合触发信号存储A/D数据;当采样完成后,FIFO中的数据可以被发送到外部的显示控制界面直观地显示出来。

  1.1 触发信号的产生

  传感器探测和感知的模拟信号一般都带有一定干扰,如果仅凭一个触发点来决定触发的位置则很难控制,在本模块触发位置的设计中采用了三点触发窗技术,触发窗的设置可以有效地屏蔽模拟信号的抖动,使模块正常运行。

  触发极性triggerpolar有上升沿触发rising_edge和下降沿触发falling_edge两种模式,在这两种触发极性下,触发信号上升沿表示模块开始存储A/D转换数据。模块设置了触发字1和触发字2,触发字1为触发点加上触发窗长度,如果结果小于255则触发字为两者相加结果,否则为255;触发字2为触发点减去触发窗长度,如果结果大于0则触发字为两者相减结果,否则为0。

  图2是下降沿触发信号产生图。图中模块开始采样时,A/D转换数据与触发字1和触发字2不断地比较,当A/D数据大于触发字1时,触发信号输出为低电平;此后A/D数据与触发字2比较,当A/D数据小于触发字2,触发信号输出高电平。

  

 

  compare_standardl、compare_standard2分别是触发字1和触发字2。flag为标志变量,当A/D数据大于触发字1时,flag=1;当A/D数据小于触发字2时,flag=0。具体实现的代码如下:

  

  触发模式分为前触发、中间触发和后触发。触发模式的选择决定了触发的预触发深度N的不同。在一定的存储深度M下,捕捉的波形在触发点P附近被最大化地存储和显示。触发点前端波形的观察选择前触发模式,即预触发深度占存储深度的比例要大。触发模式如图3所示。S代表起点,E代表结束点。触发点前后波形的观察选择中间触发模式,触发点后端波形的观察选择后触发模式。

  

 

  1.3 FIFO读写数据控制

  FIFO存储器的读写是用状态机来实现的。5个状态分别为wait、wr_trigger、wr_read、wr_full、read。FIFO控制器流程如图4所示。模块开始进入wait状态等待启动信号start上升沿,如果start上升沿到来模块转到wr_trigger状态,否则将在wait状态一直等待;当模块进入wr_trigger状态时,FIFO开始写数据直到满足触发模式的预触发深度,此时的写时钟等于采样时钟;此后模块进入wr_read状态,FIFO开始一边读数据一边写数据,即一直保持FIFO中存储的数据是最新A/D转换数据,此时的读写时钟与采样时钟是同频的。直到触发信号上升沿的到来,否则FIFO存储器将一直读数据和写数据;当触发信号上升沿有效时,模块进入wr_full状态,FIFO存储器停止读数据,开始写数据,直到FIFO写满数据;当FIFO写满数据(full=1)以后,模块转到read状态,FIFO开始读数据并通过通信接口发送到显示控制界面进行直观的显示,直到FIFO为空empty=1,此时读时钟为显示时钟;FIFO读数据操作完毕,模块将一直停留在wait状态等待下一次采集启动信号的到来,如此反复执行。

  

 

  1.4 高速数据采集模块电路设计

  AD9057是8位的模数转换器,可以达到60 MHz的最大采样频率。设计中,模块采用50 MHz的采样频率,AD9057带有2.5V的基准电压,可以对1 V峰峰值输入模拟信号进行A/D转换。通常采用高频、宽带运放对模拟信号进行缓冲,本设计中采用AD8041作为放大器,AD9057高速数据采集模块电路图电路图如图5所示。

  

 

  2 结论

  模块可以工作在50 MHz的采样频率下,并且在模拟信号幅度偏小和有一定干扰的情况下也可以正常地工作。本次设计中采用了VC++6.0编写的显示控制界面进行模块验证。图6是数据采集模块捕捉的频率为5 MHz、300mVpp交替出现间隔为1 ms的一个脉冲波形图。

  

 

  其中,触发模式选用中间触发,触发极性为上升沿,采样频率为50 MHz。由此可见,本模块的技术方案可行,具有灵活简洁的特点,可以应用在程控仪器和自适应信号采集与处理系统中。

关键字:触发  可编程  高速  数据采集

编辑:神话 引用地址:http://www.eeworld.com.cn/mndz/2011/1108/article_13023.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
触发
可编程
高速
数据采集

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved