APP下载

基于FPGA的等效时间采样

2015-01-17刘建博郭文秀伍守豪

电子设计工程 2015年2期
关键词:模拟信号时钟端口

刘建博,郭文秀,张 捷,伍守豪

(1.西北工业大学 电子信息学院,陕西 西安 710072;2.深圳清华大学研究院数字电视系统重点实验室,广东 深圳 518057)

在现代电子测量、通讯系统以及生物医学等领域,经常涉及对宽带模拟信号进行数据采集和存储,以便计算机进一步进行数据处理。为了对高速模拟信号进行不失真采集,根据奈奎斯特定理,采样频率必须为信号频率的2倍以上,但在电阻抗多频及参数成像技术中正交序列数字解调法的抗噪性能对信号每周期的采样点数决定,采样点数越多,抗噪性能越高[1]。当采样信号频率很高时,为了在被采样信号的一周期内多采样,就需要提高采样时钟的频率,但是由于系统的ADC器件时钟速率并不能达到要求的高频速率或者存储处理速度等不能满足要求因此我们可以采用低速ADC器件通过等效时间采样来对宽带模拟信号进行数据采集从而使系统易于实现。

1 等效时间采样原理

等效时间采样技术是把周期性或准周期性的高频、快速信号变换为低频的慢速信号。在电路上只对取样前的电路具有高频的要求,大大降低采样变换后的信号处理、显示电路对速度的要求,简化了整个系统的设计难度[3]。等效时间采样分为顺序采样 (sequential equivalent sampling)、 随机采样(random equivalent sampling)以及结合这两种方式的混合等效采样(compound equivalent sampling)[2]。在文献[3]、[4]中分别介绍了两种硬件实现的等效时间采样中的顺序采样。

下面我将介绍等效时间采样中的混合时间采样,对于周期性信号的等效时间采样如图1(a)所示。

在第一周期中的横轴(时间)的第2与第6处的时钟上升沿对模拟信号进行采样,图中的箭头表示采样时刻。在一个周期中可以采集两个点,紧接着在第二个周期横轴的第11与第15处的时钟上升沿对模拟信号进行采样。为了方便观察在此将第一至第五周期的波形纵向排列。可以看到第二周期比第一周的采样点距离各自周期起始点的时间晚了一个时钟周期。第三周期比第二周的采样点距离第三周期起始点的时间晚了一个时钟周期。在第四周期进行采样时我们可以发现第二个采样点已经进入第五周期。如果我们在第五周期周试图继续用以上方式进行采样即第五周期比第四周的采样点距离起始点的时间晚一个时钟周期,那么我们会发现在第五周期的采样起始点采样到的值重复了第一周期采样到的数值。所以此时我们可以终止采样那么我们就得到了如图1中的第6个波形示意图所表示的在一个周期的正弦波形中采到的8个数据点。

在文献[5]中给出了等效时间采样中每个周期可以采集多个点时的理论依据,在文献[6]中给出了等效时间采样中每个周期可以采集单个点时的理论依据。

图1 等效时间采样示意图Fig.1 Schematic diagram of ETS

我们通过将高频时钟进行分频已达到或者接近满足处理速度时钟要求。在图1(b)中幅度最小的时钟信号为采样时钟。由图1(b)可以很清楚的看到分频后的时钟波形,分频后的时钟波形在时钟的上升沿对信号进行采样,那么就会得到如图1(a)中所表示的等效时间采样。

2 基于FPGA的等效时间采样实现

2.1 系统硬件实现框图

系统的总体框图如图2,FPGA控制的等效采样时钟连接到ADC器件的时钟部分,ADC器件在时钟的控制下对宽带模拟信号进行采样,采集到的数据传送到FPGA中的FIFO,FPGA再将FPGA中 FIFO的数据传递到USB中的FIFO,然后USB将USB中FIFO数据推送到计算机,计算机对接收到的数据进行重构处理。对于信号周期的获取,在电阻抗多频及参数成像技术中采集信号的周期是由发送信号的周期决定,而对于其他复杂周期信号的周期获得可以通过[5]所采用的方法获得。

图2 系统方案框图Fig.2 System block diagram

2.2 等效时间采样时钟的程序实现

图3 等效时间采样模块图Fig.3 ETSmodule diagram

图3 展示了基于FPGA生成的等效时间采样模块的输入端口与输出端口。其中CLK表示高频时钟的输入,RESET表示的是复位输入端,FREN_CON表示的是分频控制输入用于控制高频时钟的分频数,SANM_CONT表示的是模拟信号的周期包含多少个高频时钟信号的波形,CLK_ADC_OUT表示的是输出时钟端口,此端口连接到模数转换器件(ADC)的时钟输入端口。

以下是实现等效时间采样所需时钟的代码:

SIGNAL SAMP_CONTS:STD_LOGIC_VECTOR (11 DOWNTO 0):=(OTHERS=>'0');

SIGNAL ADC_CLK_BANK:STD_LOGIC_VECTOR (11 DOWNTO 0):=(OTHERS=>'0');

SIGNAL CLK_CNT:INTEGER RANGE 0 TO 5000:=0;

SIGNAL CLK_TANK:STD_LOGIC:='0';

SIGNAL EN :STD_LOGIC:='1';

BEGIN

PROCESS(CLK,RESET)

BEGIN

IF RESET='1'THEN EN<='1';

ELSE

IF CLK'EVENT AND CLK='1'THEN

IF SAMP_CONTS

SAMP_CONTS<=SAMP_CONTS+'1';

IF ADC_CLK_BANK

ADC_CLK_BANK<=ADC_CLK_BANK+'1';

ELSE EN<='0';

END IF;

ELSE

ADC_CLK_BANK<=(OTHERS=>'0');

SAMP_CONTS<=(OTHERS=>'0');

EN<='1';

END IF;

END IF;

END IF;

END PROCESS;

---分频控制部分程序,作ADC的时钟使用

PROCESS(CLK,RESET,EN)

BEGIN

IF RESET='1'THEN

CLK_TANK<='0';

CLK_CNT<=0;

ELSE

IF EN='1'THEN

IF CLK'EVENT AND CLK='1'THEN

IF (CLK_CNT=(CONV_INTEGER (FREN_CON)/2)-1)THEN

CLK_TANK<=NOT CLK_TANK;

CLK_CNT<=0;

ELSE CLK_CNT<=CLK_CNT+1;

END IF;

END IF;

ELSE

CLK_TANK<='0';

CLK_CNT<=0;

END IF;

END IF;

END PROCESS;

CLK_ADC_OUT<=CLK_TANK;

END;

3 波形仿真

图4中的波形仿真是以模拟信号的一周期等于8个CLK时钟周期,CLK_ADC_OUT是对CLK进行4分频且分频后的时钟占空比为50%为假设的。1号箭头指向的时钟上升沿标志着第一周期结束,上升沿之后进入第二周期。同理,2号箭头所指时钟的上升沿标志着第二周期的结束,上升沿之后标志着进入第三周期。

图4 波形仿真Fig.4 Waveform simulation

在第一个周期中从CLK的第一个上升沿开始计时同时对CLK进行分频可以得到CLK_ADC_OUT时钟信号,在第一周期中在CLK的第二个上升沿CLK_ADC_OUT电平翻转(存在延时),在第二周期中在第三个上升沿CLK_ADC_OUT电平翻转,在第三个周期中在CLK的第四个上升沿CLK_ADC_OUT电平翻转。可以看出波形仿真图是对图1(a)、(b)两图表达时钟的实现。在这里应该注意到,在第一周期中虽然也有8个CLK的上升沿,但是并没有表示出如1号箭头所指CLK时钟上升沿之后与第二周期第一个CLK时钟上升沿之间的波形。

4 结 论

本文介绍了等效时间采样的基本原理、系统实现的具体方案。等效时间采样技术实现了利用低速的ADC器件对宽带模拟信号的采集,降低了系统对ADC器件的要求以及系统实现的复杂度。本文介绍的等效时间采样技术由于使用了FPGA采样技术,使得在被采样信号的一个周期中相较于一个周期仅能采集一个点的顺序等效时间采样有很大的提高,并且可以控制被采集信号一个周期中的采集点数从而可以根据后续器件处理速度实现变频控制采样。通过FPGA实现等效采样时间,降低了系统实现的复杂度,同时可以十分方便的对代码进行修改使系统的调试更加简便。

[1]史学涛.用于电阻抗多频及参数成像的多频数据采集技术研究[D].西安:第四军医大学,2001.

[2]叶旭.导波式雷达物位计信号处理方法研究与实验[D].合肥:合肥工业大学,2012.

[3]张杰,曹思樟,祝怀标,等.基于游标法的等效时间采样模块的设计[J].计量与测试技术2012,39(4):59-60,63.ZHANG Jie,CAO Si-zhang,ZHU Huai-biao,et al.Design of equivalent time sanding module based on vernier method[J].Measurement and Test Technology,2012,39(4):59-60,63.

[4]陈小桥,刘爱荣,亓长军.基于等效时间采样的高速数据采集技术[J].电测与仪表,2002,39(440):23-26.CHEN Xiao-qiao,LIU Ai-rong,QI Chang-jun.High speed data acquisition system based on equivalent time sampling[J].Electrical Measurement&Instrumentation,2002,39 (440):23-26.

[5]任斌,余成,陈卫,等.基于EDA技术的等效采样的设计实现[J].微计算机信息,2007,23(5-2):293-295.REN Bin,YU Cheng,CHEN Wei,et al.Design and realization of equivalent-time sampling based on EDA[J].Micro Computer Information,2007,23(5-2):293-295.

[6]周维,王赤,田茂,等.基于等效时间采样的探地雷达回波信号采样方法研究[J].雷达科学与技术,2004(2):43-47.ZHOU Wei,WANG Chi,TIAN Mao,et al.Research on a sample-collecting method of echo data of ground penetrating radar based on equivalent time sampling[J].Radar Science and Technology,2004(2):43-47.

猜你喜欢

模拟信号时钟端口
基于CAN总线的车身控制模拟信号采集程序设计
别样的“时钟”
一种端口故障的解决方案
古代的时钟
一种基于ADG426多路模拟开关的模拟信号输入接口设计
端口阻塞与优先级
有趣的时钟
模拟信号的三种调制方法比较研究
时钟会开“花”
8端口IO-Link参考设计套件加快开发速度