数字系统已经越来越广泛地应用到现实世界的各个领域中,绝大多数数字系统无法直接处理现实世界中的信号,必须采用adc器件把模拟信号转换成数字信号后才能处理。fpga和dsp处理器是数字信号处理的两大主流技术。随着技术的发展和进步,一些fpga器件集成了一些模拟电路以及混合信号处理模块,比如集成温度监控二极管。actel公司的混合fpga系列已经集成adc、dac、pga(programmable gain amplifier)、电压参考基准源和rc(resistance capacitance)振荡器。xilinx公司的v5系列fpga集成电压和温度监控adc,用户可以直接通过jtag下载调试接口读取电压和温度值。但这些单元物理位置固定,灵活性受限,仅限于特定的应用。而采用fpga的lvds接收器来实现adc,逻辑电路完全在fpga内部实现,可重新配置,扩展性好,需要的外围器件少,使fpga能直接进行混合信号处理。
1 σδ adc原理
σδ adc的核心是σδ调制器和数字滤波器。σδ调制原理在半个多世纪前已经提出,但在20世纪90年代才广泛应用到adc设计中。σδ adc的模型[1]如图1所示。
图1 σδ adc模型
从图中可以看到,σδ架构的adc主要由左边方框内模拟σδ调制器和右边的数字滤波器组成。σδ调制器包含1个积分器、1个adc和1个构成反馈环路的dac。其中积分器用离散时间表示,以方便采用z变换分析。e(n)是ad量化器的量化噪声。假设量化噪声是加性噪声,反馈环路中dac是理想的,其传输函数是固定增益。采用线性系统分析方法,先令e(n)=0,考察积分器的差分方程:
得出积分器的系统函数为:
考察整个σδ调制器的差分方程:
由公式(1)和公式(2)推导出σδ调制器对信号的系统传递函数为:
再令x(n)=0,整个调制器对噪声的差分方程为:
因此其噪声传递函数为:
由公式(5)和(6),可以得到整个σδ调制器的输出为:
由公式(7)可以看出,在z变换域,调制器对信号只是延迟,而对噪声进行差分处理。因为差分器具有高通滤波器特性,因此噪声被高通滤波,调制器对应的时域输出为:
剩余的噪声则由后续的数字滤波器滤除。
2 lvds收发器标准及其原理
lvds是一种低压低功耗的高速串行差分数据传输标准,在高速数据互联和数据通信领域得到广泛的应用,主流的fpga器件都集成了高速的lvds收发器。lvds收发传输框图如图2所示。
图2 lvds收发器框图
在图2中,lvds发送端的4个开关管交叉控制3.5 ma电流源在接收端的流向。电流在100 ω电阻上建立约350 mv的电压差,接收器通过比较电压的极性来判决是逻辑“1”还是逻辑“0”。lvds驱动器是电流型,对电源波动不敏感,功耗很低,1路lvds传输功耗为35 ma×350 mv=1.2 mw。由于采用差分传输方式,lvds收发器可以很好地消除共模干扰,提高系统电磁兼容性能[2]。利用fpga集成的lvds接收器,配合少量外围器件,即可在fpga内部实现adc。
3 用fpga集成的lvds接收器实现adc
参考第2部分的σδ架构的adc原理,在fpga内部实现adc的框图如图3所示。
图3 fpga内部实现adc框图
在图3中,虚线框内表示在fpga内部实现。外部仅需要1个1 kω的电阻和1个1 nf的电容作为模拟积分器,输入信号和积分器输出值在lvds接收器进行比较,比较结果被量化成数据比特流,经过寄存器后输出到cic(cascaded integrated comb)滤波器[3]及其后续的数字滤波模块,同时通过1个fpga引脚作为1位的dac,输出到外部的积分器。在数字滤波模块里面,cic滤波器累加量化的比特流并恢复成18位数的量化值,同时通过大倍数的抽取,把数据率降低;ciccomp是15阶fir滤波器[4],用于补偿cic滤波器幅频响应。抽取器是31阶fir低通滤波器,降低数据率并进一步滤除带外的噪声。
整个系统运行于49.152 mhz时钟下,采样数据经过cic进行512倍抽取后,数据率降为96 khz,最后经过低通滤波器进行2倍抽取,数据率降为48 khz。用fpga实现adc,包括lvds接收器部分,全部采用veriloghdl语言编写,实现简单,可移植性较好。
4 fpga内部实现的adc实验分析
整个adc设计工程在xilinx公司的fpga集成开发环境ise下编译,下载到xc2vp70系列fpga上进行测试,用tektronix公司的信号源afg3101产生音频信号,经adc采用后通过板载的8位dac输出,用agilent公司的示波器54622d进行分析,频率为3 khz的正弦信号输入/输出波形和频谱如图4所示。
图4 输入/输出波形和频谱
图4上半部分波形是输入的信号和频谱,下半部分波形是经过adc采样后通过dac输出的波形和频谱。从图中可以看到,尽管受限于板载dac的位数,dac后面也没有抗混叠滤波器,仅将adc的18位量化值高8位输出,但波形和频谱完全没有失真。输出波形上叠加的高频噪声是dac转换引入的,可以通过滤波器滤除。信号源产生20 hz~20 khz的音频信号,adc输出的波形和频谱均没有失真,fpga在3.3 v的i/o电压下,adc最大输入信号的峰值电压约0.8 v,输出信号snr约为50 db。
结语
fpga实现adc的模型,仅需要极少数外围元器件,核心模块均采用fpga资源实现,明显降低板上面积,同时逻辑可重配置,具备强大的扩展性。通过适当改进和优化,该方法可以应用到语音通信,温度、电压监控,水压检测,压力传感等诸多领域。
参考文献
[1] boser b e,wooley b.the design of sigmadelta modulation analogtodigital converters[j]. ieee journal of solid state circuits,1988,23(6):12981308.
[2] national semiconductor.lvds owner’s manual, 2000.
[3] hogenauer e b.an economical class of digital filters for decimation and interpolation[j]. ieee transactions on acoustics, speech and signal processing,1981,29(2):155162.
[4] xilinx inc.cascaded integratedcomb(cic) fiter, 2002.
国产机器人处境为何如此尴尬?
物联网和云计算,助力实现智能空调更适应人
华为云发布新slogan,新年伊始加速奔跑
面对激烈的市场竞争,欣迪盟及时调整了企业的发展策略
iPhone7 Plus如何进行拆机
基于FPGA的模数转换器的设计
一文看懂交流发电机的工作原理
Microchip推出GridTime™ 3000 GNSS时间服务器
CMSIS_V1和CMSIS_V2有什么区别呢?该怎么选择呢?
关于镀铜表面粗糙问题原因分析
曲柄轴扭矩的计算
“制造业,新能源”出海,观澜海关为格瑞普颁发海关AEO高级认证证书
华为mate50pro什么时候上市价格多少
智能手机系统:OPhone = Android+公式解析
【新品推介】AIM为EADIN数据总线通信提供解决方案
推动无人机智能教育,全方面培养学生的AI素养
系统射频接口ADS仿真电路原理图及参数设定详细讲解
深交所制定并发布了工业机器人、集成电路等4个行业信息披露指引
人脸识别访客系统应用场景有哪些
基于MP2672评估板的锂电池升压充电器方案