第三章 任意波形发生器的硬件电路设计
35
平时为差分时钟输入,接地时为单端时钟输入,考虑到DAC时钟的质量与DDS输出信号质量密切相关,因此本设计采用差分输入时钟(差分时钟可以由FPGA的差分管脚来提供),CMODE接高电平;MODE为输入数据模式选择,接高电平为二进制补码输入,接地为直接二进制输入,在这里增加了一个跳线J4来选择输入数据模式;SLEEP为休眠选择引脚,SLEEP为高则进入低功耗模式,AD9740停止输出,为低则进入工作模式,这个引脚接到了FPGA,由FPGA来控制AD9740什么时候工作,这样可以有效降低波形发生器的功耗;IOUTA为DAC同相电流输出端,数据全“1”时输出满刻度电流,IOUTB为反相电流输出端,数据全“0”时输出满刻度电流。
AD9740既可以单端输出,也可以设置成差分耦合方式输出,但差分耦合方式输出能够抑制共模干扰,具有更好的动态特性。差分耦合方式可以采用射频变压器或者运算放大器。采用变压器耦合不仅能够在更宽的频率范围提供良好的共模抑制比,还能够实现阻抗变换。但从体积上考虑,采用运算放大器耦合更适合本设计。图3.6是使用了运算放大器实现耦合的电路。
abc
图3.6 运算放大器实现差分耦合电路
采用如图3.6所示电路,根据式(3-5),a,b两点间的最大输出电压约±460mV,经过AD8055的放大(放大倍数约7.3dB),得到输出端C点的电压在±1.07V左右。这是我们后面设计放大电路放大倍数的依据。
3.3.3 滤波器的设计
以离散数字序列经数模转换为模拟信号为基础实现波形发生器有其固有的优点,但同时也有频谱分量复杂,杂波多的缺点。在波形发生器中,滤波器起着保持有效分量、抑制杂波的作用。滤波器的设计[14] [15][16]主要从两个方面加以考虑,
36
基于FPGA的任意波形发生器的设计与实现
一是低通滤波器本身的传输特性,二是DDS系统输出信号的频谱结构。
低通滤波器是用它的传递函数H(j?)?H(j?)ej?(?)来表征的,归一化的理想低通滤波器应满足:
?e?j?0000??1?H(j?)?? 式(3-6)
?0000000??1?实际上,理想的滤波器特性是不可能获得的,只能用某种方式按某种规律去逼近。采用不同的去曲线逼近理想滤波器,就获得了不同类型的滤波器。常见的滤波器有以下几种:巴特沃斯滤波器、契比雪夫滤波器、椭圆滤波器、贝塞尔滤波器和线性相位滤波器。图3.7描绘了这五种低通滤波器(同阶)的幅频特性。
巴特沃斯型契比雪夫I型契比雪夫II型椭圆函数型贝塞尔型/线性相位型图3.7 同阶低通滤波器幅频特性比较
滤波器的传输特性可以用工作衰减、相移、群延迟及插入衰减等参数衡量[15],其中衰减特性和群延迟是设计滤波器时考虑的重点。图3.7所示五种滤波器有着各自的特点:
(1)巴特沃斯滤波器也称为最大平滑滤波器,它的传递函数只有实数极点和无穷零点,因而其幅频特性在通带和阻带内都是单调的,但也造成了通带到阻带的过渡缓慢;
(2)契比雪夫滤波器的传递函数有复数极点和无穷零点,因而其幅频特性表现为有波动,其中契比雪夫I型为通带波动、阻带单调,契比雪夫II型为通带单调、阻带波动。契比雪夫滤波器以引入波纹为代价,使其过渡特性比巴特沃斯滤波器陡峭;
第三章 任意波形发生器的硬件电路设计
37
(3)椭圆滤波器也称为联立契比雪夫滤波器,其传递函数有复数极点和有限零点(在截止频率附近),因而其幅频特性在通带和阻带内都是有波动的,但它的过渡特性最陡峭;
(4)贝塞尔滤波器的传递函数也只有实数极点和无穷零点,其幅频特性在通带和阻带内都是单调的,且衰减特性非常缓慢,但它采用了贝塞尔逼近来实现滤波器设计,因此在通带内具有最平坦延迟;
(5)线性相位滤波器与贝塞尔滤波器相似,在其通带内具有线性相位的响应,但在整个通带内,滤波器的群延迟特性不是单调的,而是引入了波纹,从而在整个通带内达到了群延迟的均方误差最小。
滤波器的选型跟DDS输出信号的频谱结构密切相关:
对于正弦波,其频披分量单一,选择滤波器时主要考虑在通带内有一定的平坦度,在阻带内要保障足够的衰减来抑制衰减,并且希望该滤波器具有快速衰减特性。考虑到这些需求,我们设计了9阶椭圆滤波器。在第二章的时候我们曾研究过,DDS的输出频谱是被sinc函数加权过的,当DDS输出频率接近其最大输出频率时(即DDS参考频率的40%),波形幅度会存在一定的衰减,因此,我们在滤波器的入口加了一个谐振回路,对因sinc函数加权造成的幅度衰减作一个补偿。根据设计指标,正弦波信号最高输出频率是50MHz,因此所设计椭圆低通滤波器-3dB截止频率设置为50MHz,滤波器的入口的谐振回路谐振点设置在了49.5MHz左右,其电路图及幅频特性曲线分别如图3.8、图3.9所示。
图3.8 9阶椭圆低通滤波器
图3.9 9阶椭圆低通滤波器幅频特性曲线(仿真)
38
基于FPGA的任意波形发生器的设计与实现
从仿真结果可以看出来,所设计的9阶椭圆低通滤波器具有较平坦的通带和陡峭的过渡带,通带内纹波小于1dB,在58MHz处衰减达到了81dB,在整个阻带内,衰减大于60dB,可以很好的抑制谐波。
对于任意波,由于其含有丰富的谐波分量,如果设计过渡带过窄的滤波器就会将一些有用的谐波分量滤除掉,这样会造成波形失真。当然过渡带过宽必然会带来镜像干扰,影响输出信号的频谱纯度。但是对与任意波形来说频谱纯度不是主要指标,加之输出频率较低,一般来说镜像分量不会产生很大影响。出于这方面考虑,对于任意波,我们设计了7阶贝塞尔低通滤波器,该滤波器的截止频率设置在任意波最高输出频率的10次谐波处,即 50MHz处。具体电路如图3.10所示。它的幅频特性如图3.11所示。
图3.10 7阶贝塞尔低通滤波器
图3.11 7阶贝塞尔低通滤波器幅频特性曲线(仿真)
从仿真结果来看,这个滤波器的过渡特性非常缓慢,75MHz的时候衰减才18.5dB左右,100MHz才衰减了31dB。但是由于贝塞尔低通滤波器具有很好的群延迟特性,能够无失真的传输诸如方波、三角波等频谱很宽的信号。
由于该波形发生器时只设计了单通道输出,任意时刻只使用其中一个滤波器滤波,即两个滤波器是共享后端模拟通路的。选用哪个滤波器滤波由软件来控制,通过开关的选通来实现。我们选用的开关是固态继电器S1A050000,这种固态继电器控制端口兼容TTL电平。图3.12给出了S1A050000的内部结构。
图3.12 固态继电器S1A050000内部结构
第三章 任意波形发生器的硬件电路设计
39
可以看出S1A050000其实是一种小型直流电磁继电器,1、7端为信号端,3、5端为控制端,只要在3、5端加上一定的驱动电流,开关闭合,1、7端导通,否则1、7端断开。由于S1A050000控制端至少需要3.75V的驱动电压,10mA的驱动电流,不能直接由FPGA来驱动,因此设计了一个继电器控制电路,如图3.13所示。
(a) (b)
图3.13 继电器控制电路
图3.13(a)中,用来控制继电器开断是是TI公司的TPIC6B596。TPIC6B596是专门用于驱动需要中电流或者高电压负载的单片8位移位寄存器[17]。其中SRCK是串行移位寄存器时钟,SER IN是串行数据输入端,SER OUT是串行数据输出端;RCK是输出寄存器时钟,在RCK的上升沿,串行移位寄存器的内容被打入输出寄存器;SRCLR是寄存器低电平异步清零端;G是输出寄存器输出使能端,在G为低电平时输出寄存器的内容才能在输出端得到体现;DRAIN0~DRAIN7是8个漏极开路DMOS晶体管输出端,每个输出端能提供150mA灌电流能力。由于DRAIN0~DRAIN7是漏极开路输出,因此在使用时必须外接上拉电阻才能有高电平输出能力。当G端接地,与输出端对应的输出寄存器内容为1时,该输出端输出低电平,当输出寄存器内容为0时,该输出端输出高电平。通过改变TPIC6B596移位寄存器的内容,进而改变其输出寄存器的内容就能控制继电器的开断。图3.13(b)是继电器的典型接法,其中电容CK3是为了防止噪声引起开关的误动,二极管DK3是为在继电器关断时因为线圈感应效应而产生的瞬间尖峰电流提供一个泄放通路,以提高系统的可靠性。
3.3.4 放大衰减及直流偏置电路
由于所设计的波形发生器输出信号的幅度范围要求在30mV~3V,而DAC的输出信号幅度约1V左右,另外,由于DAC后端的低通滤波器存在插入衰减,经