嵌入式 > 嵌入式开发 > 详情

100MHz 数字存储示波表样机的研究与试制----数据采集系统设计(一)

发布时间:2020-06-15 发布时间:
|

 

数据采集系统数字存储示波表的核心部分,它完成由模拟信号到数字信号的转换,即模拟信号经调理通道后进入A/D转换成数字量,再将这些数字量存入缓存器FIFO,由DSP读回进行计算处理,最后送去显示。

3.1 A/D的选择

数字存储示波表要显示信号波形首先要对模拟信号进行采样。所谓采样就是对模拟信号进行量化的过程。而量化过程实际上存在着许多限制。首先,它要受到量化范围的限制。由于A/D总有一定的输入量程,超出了该量程,转换结果就会出现很大的误差。例如,信号如果超出了上限,那么A/D只能给出最大码值;反之,如果超出了下限,只能给出最小码值。这样,采样结果就会相对于模拟信号产生很大的畸变,不能有效的反映真实的信号信息。另外,A/D对量化值进行编码的位数决定了采样模拟信号的精确性。编码位数越多,对模拟信号的分辨率也就越高,采样出来的信号电压值也就更准确。在实际应用中我们选择的模拟/数字变换器(ADC)是ANALOG DEVICE公司的AD9288,它的基本性能描述如下:

◆两个八位模拟/数字变换通道,100MSPS采样率/每通道

◆低功耗:90mW/每通道(100MSPS时)

◆片内提供参考电压和采样、保持电路

◆模拟通道:475MHz模拟带宽信噪比:SNR=47dB@41MHz

◆模拟输入范围:1Vpp/每通道

◆单电压供电(+3.0V)

◆等待模式选择

◆两种数据输出格式

◆输出数据与拼接模式

AD9288是双通道八位单片模拟/数字转换器,具有内部的采样保持电路,是一款低价格、低功耗、体积小易于使用的优化产品。它工作在100MSPS转换率时同样具有出色的动态性能,并且两个通道可以完全独立工作。

这款模拟/数字变换器只需要单3.0V电源供电(2.7V-3.6V),提供编码时钟输入方式,在大多数应用领域,不需要外接参考电压或者是驱动器件。数字输出和TTL/CMOS兼容,并且有独立的输出供电引脚,支持多数字逻辑电压(2.5V或3.3V)接口。编码输入是与TTL/CMOS兼容的,并且8位数字输出能在2.5V到3.3V电压范围内工作(典型值为3.0V)。用户选择项提供联合等待模式、数据格式选择,数据拼接模式。在等待模式下,数据输出处于高阻状态。先进的CMOS工艺使得AD9288体积超小(7mm * 7mm * 1.4mm),采用48PIN_LQFP封装。

工业制品温度范围:(-40℃—+85℃)。

AD9288提供的S1、S2两个引脚可以用来选择多种操作模式。操作模式如表3-1.

如表所示,当S1、S2都设置为1时,AD9288工作在双通道拼接模式。所谓拼接模式即是允许使用者将B通道输出数据错位半个周期。也就是说,向A、B两个通道提供相同的采样时钟(CLK_A=CLK_B),对同一信号进行采样。两通道的数据同在CLK_A上升沿有效。这样,在输出时B通道的数据就和A通道的数据相差180度相位。从而,使采样率达到了普通工作模式下的2倍。这一功能是非常有用的:如果用100MSPS的采样率对20MHz信号进行采样每个周期只能得到5个采样点,只能基本恢复和再现信号波形,如果利用相同的时钟,工作在拼接模式,将一个被测信号同时送入两个通道,就可以得到10个采样点,重现波形的效果会得到很大改善。我们在实际使用中,令其工作在普通模式下,两通道采集相互独立,及S1=1,S2=0.其具体连接图如图3-1所示。

3.2 FIFO的构成

当模拟信号被A/D采样进来以后,需要有一个能够快速保存采样数据的存储器。FIFO(First In First Out)是一种先进先出(即第一个读出来的数据就是第一个写进去的数据)存储器。它没有地址线,省去了寻址时间。另外,它还可以同时对存储空间进行读写。所以,它比一般存储器的读取速度要快很多。能够满足在高速采样时,对存储器快速读写的要求。在实际应用中,我们没有采用现成的FIFO芯片。而是利用FPGA里面自带的5K RAM,通过MAX-PLUS II调用它宏单元库MEGA_LPM里的库文件LPM_FIFO_DC,把它设置成为两个2.5K的FIFO.由于一个LPM_FIFO_DC库文件只能实现2n个存储空间。所以,我们调用了两个库文件(大小分别为2 9=512和2 11=2048)串连,来实现2.5K的空间。
具体连接如图3-2.

如图所示,一个LPM_FIFO_DC库文件有一个写使能信号wrreq,一个写时钟信号wrclock,一个读使能信号rdreq,一个读时钟信号rdclock,一个清除端aclr,8位数据输入线和8位数据输出线;同时还有两个状态端:FIFO满信号wrfull和FIFO空信号rdempty.它的具体工作原理是:1.写FIFO时,数据首先进入0.5K的FIFO.此时,0.5K FIFO读写使能同时有效,数据进入0.5K FIFO后,随即被写入到2K的FIFO.当2K的FIFO写满后,此FIFO模块的满信号有效,使得该模块FIFO的写使能和0.5K FIFO读使能都置为无效,写入的数据直接存入0.5K的FIFO不再转移,直到2.5K全部写满为止。2.读FIFO时,初始状态为0.5K FIFO读使能有效,2K FIFO读写使能同时有效。来一个读时钟就从2K FIFO读走一个最老的数据,同时,又从0.5K FIFO写进一个数据。当0.5K FIFO读空后,即0.5K FIFO的数据已全部转移至2K FIFO后,0.5K FIFO读空信号有效,从而,关断2K FIFO的写使能,使2K FIFO只读不写,直到所有2.5K数据全部读空。

3.3触发

触发是由触发电路来实现的。如果没有触发电路,你在屏幕上看到的将会是具有随机起始点的很多波形杂乱重叠的图像。而触发电路的主要作用就是保证每次拿去显示的点都是从输入信号上的一精确确定的点开始。它主要包括:触发源选择、触发类型选择、触发耦合方式选择、触发释抑等。

3.3.1触发电路

1.触发源选择

触发源一般有内触发、外触发和电源触发三种类型。触发源的选择应根据被测信号的特点来确定,以保证被测信号波形的稳定显示。

(1)内触发:将被测信号本身作为触发源。

(2)外触发:用外接的、与被测信号有严格同步关系的信号作为触发源,这种触发源用于比较两个信号的同步关系,或者,当被测信号不适于作触发信号时使用。

(3)电源触发:用50Hz的工频正弦信号作为触发源,适用于观测与50Hz交流有同步关系的信号。

在实际项目中,我们只采用了内触发和外触发两种触发源。它主要通过DSP发出的串行码经过FPGA和D触发器来控制一个四路选择器来实现。具体电路如图3-3.

2.触发耦合方式选择

选择好触发源后,为了适应不同的触发信号频率,示波器一般设有四种触发耦合方式。

(1)“DC”直流耦合:是一种直接耦合方式,用于接入直流或缓慢变化的触发信号,或者频率较低并含有直流分量的触发信号。

(2)“AC”交流耦合:是一种通过电容耦合的方式,有隔直作用。触发信号经一个电容接入,用于观察从低频到较高频率的信号。

(3)“低频抑制”耦合:使触发源信号通过一个高通滤波器以抑制其低频成分。

这对于显示包含很多电源交流噪声的信号是很有用的。

(4)“高频抑制”耦合:使触发源信号通过低通滤波器以抑制其高频分量。这意味着既使一个低频信号中包含很多高频噪声,我们仍能使其按低频信号触发。

3.触发类型选择

数字存储示波器最大的优点就是具有先进、多样的触发功能,从而使示波器的应用更加得心应手。利用这些触发功能,示波器就能完成比以前更多的工作。常用的触发类型有边沿触发、视频触发、脉冲触发和毛刺触发。本项目中采用了边沿触发和视频触发。其中,边沿触发分为上升沿触发和下降沿触发两种;视频触发分为行频触发和场频触发两种。这四种触发信号分别进入FPGA,通过一个四路选择器,选择其中之一作为系统触发信号。其具体电路如图3-4.

4.触发释抑

触发释抑的主要作用就是调整触发信号为一标准的周期信号,从而达到稳定显示波形的目的。例如,我们要观测如图3-5所示的周期信号。这个信号波形一个周期内的1、2、3、4点的位置都满足触发条件。如果按一般情况,系统

就会在1、2、3、4点都产生触发信号,这样就会造成显示时波形的左右抖动。

解决这一问题的关键就是在于调节触发释抑时间,使触发信号产生在每个信号波形周期的相同位置,即,使每次触发都发生在各周期的1、2、3或4位置,这样,信号波形才能无抖动的重现出来。

本项目中触发释抑具体实现电路如图3-6所示。由图知,这个电路包括三

个输入信号:计数使能信号PRE_TRI_FULL;计数时钟信号CNT_CLK;释抑时间设置TRI_DELAY_DATA.一个输出信号:触发屏蔽信号Armed.它的工作原理是:刚开始时Armed为低电平,屏蔽所有触发信号。达到预触发深度后,计数使能信号PRE_TRI_FULL有效,使计数器按照计数时钟CNT_CLK开始计数。当计数到预先设置的计数值TRI_DELAY_DATA后(此计数值由DSP送过来),Armed变为高电平,开放触发信号。



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
定时器CTC模式的测试