0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

100Msps的数字示波器的制作来做一个简单的案例分析

电子工程师 来源:lq 2018-12-08 09:49 次阅读

自己动手做一个信号发生器和示波器非常重要,不仅可以深刻理解测量仪器的工作原理、关键技术指标,还可以将书本上学过的模拟电路、数字逻辑乃至嵌入式系统全部串起来,从系统层面对各个部分的功能以及构成有更真切的认识,因此苏老师觉得这两个项目应该是所有电子工程师都要动手做一遍的基础入门项目。

高速ADC是数字示波器的核心部件,今天关于ADC应用的文章就结合我们摩尔吧/硬禾实战营的一个实际项目 - 100Msps的数字示波器的制作来做一个简单的案例分析,数字和处理部分将在将来的文章中具体分析,今天集中在模拟部分:

数字示波器的构成框图

我们的项目对模拟部分的主要指标要求如下:

单通道、100Msps采样率

模拟带宽20MHz,输入电压的范围 - -10V ~ +10V

最小分辨电压 10mV

经过高速ADC以后的数据通过FPGA(当时就用Lattice的FPGA)进行处理以后送到后面的Cortex M4控制器,再在LCD显示屏上显示出来,触发、测量电压、频率等参数都在FPGA内实现。

用Lattice FPGA + NXP的M4开发板以及自制的模拟链路/ADC构建的数字示波器

今天我们就以这个项目为例,简单分析一下数字示波器模拟链路部分的设计要点。

首先我们基于给出的指标需求分析一下:

单通道- 需要一颗单路的ADC

100Msps- 需要一颗采样率在100Msps以上的ADC

20MHz的模拟带宽 -意味着最高频率20MHz的模拟信号,如果用100Msps的采样率,每个周期会有5个采样点,留给学员通过FPGA逻辑进行内插的空间

+/-10V的最大输入电压范围和最小10mV的电压分辨率意味着整个模拟链路以及ADC能够处理的信号的动态范围为20Vpp/10mV ~ 2000 ~ 63dB

第一个问题:选用多少位数的ADC?8、10、12、14、16位?ADC的精度的选用要和前面的模拟信号调理电路共同对付63dB的动态范围。理想状态下8位的ADC可以提供48dB的动态范围、10bit ~ 60dB、12bits ~ 72dB,14bits ~ 84dB,但由于存在着量化噪声,导致ADC的有效位数要低于实际使用的位数,也就是12位的ADC,有效的位数小于12(数据手册显示 - AD9628在采集20MHz的模拟信号的时候相当于11.6bits). 从这个分析上看,选用一颗12bits/100Msps的ADC就可以满足系统对动态范围的要求。

但,ADC的精度越高,意味着器件内部的资源大幅增加,器件的成本以及价格也就大幅增加,在同样的转换率的情况下,一颗12位的双通道ADC(AD9628-105)的价格比10位的双通道ADC(AD9608-105)要高出一倍(以其官网上1000+片的价格做参考),见下面的表格。这多花的十几美元是否可以通过10bit ADC + 可变增益运放甚至8bit ADC +可变增益运放来实现呢?

ADI公司的高速ADC,可以通过参数过滤选用最适合自己的器件

这就需要权衡,需要从系统层面来综合考虑,引入可变增益放大器可以提供几十个dB的可调增益范围,带来的挑战就是:

运放器件本身的价钱、多出来的电路板空间的成本

运放电路设计(需要仿真)和调试的难度 - 可调增益、要保证线性范围工作、周边器件的合理选用

最难的可能是运放电路的供电 - 一般都是双轨、低噪声的电压,比如+/-5v或+/-10V,模拟电路的双轨供电可是难煞了很多工程师,做不好性能会达不到要求。

放大电路的增益要可调节,如何调节?总不能用手拧电位计调节吧?需要VGA(电压控制增益)或模拟开关切换。电可调的电路会带来额外的复杂度以及成本。

实现数字示波器模拟前端的方式之一,通过模拟开关来实现链路增益的调节

说到这里是不是觉得头大了?是不是觉得自己的知识量不够了?这还仅仅是信号的幅度方面的要求,信号的频率呢,也就是对频带的要求呢?即便20MHz以内的模拟信号,你需要低通滤波器(防混叠),选用的模拟器件要考虑到增益带宽积是否满足要求、瞬间的响应速度是不是够、电压控制增益的范围内线性度如何?

从降低系统复杂度的角度出发,我们希望用一颗高速的ADC,比如14、16bit全部搞定最好,但杀鸡用牛刀显然也是不对的,毕竟要考虑到系统的成本,更重要的是即便从理论分析上14bit的ADC能够满足你的要求,但实际的电路中会由于电源噪声、时钟抖动等使得你使用更高分辨率的ADC没有意义。上篇文章中我们讲过(下面的表格),即便对于10MHz的模拟信号,用14bit的ADC,采样时钟边沿的抖动必须小于2ps,100MHz(10ns周期)的时钟抖动要小于2ps,你自己测一下你自己板子上用FPGA产生的100MHz的时钟的边沿抖动有多大?是否能小于2ps?

针对不同的模拟信号,采用不同位数的ADC对时钟边沿抖动的要求

所以,如果你用14bits的ADC,那必须给你的ADC提供极小边沿抖动的采样时钟信号,意味着你的时钟源(一般PLL产生)要非常好,最好采用差分时钟信号传输、时钟以及ADC的电源去偶要格外注意、PCB的设计要很讲究。所以挑战会比较大。

越是采样频率高的示波器,高分辨率的ADC器件成本会更高,对时钟抖动的要求越高,成本也会大幅增加,比如500Msps的数字示波器,如果你做的产品不能卖到非常高的价格让你有足够的成本空间采用更好的器件,最好采用8bits的ADC。

因此在学员的实际项目制作中我们也尽量让学员选用8bit、10bit的ADC配合前端可调增益的放大器来实现63dB的动态范围,下面是几款当时我们推荐给学员选用的ADC的型号,具体型号的选用还要考虑到供电电压、功耗、数据接口方式、价格等要素。

几款可用于100Msps数字示波器的高速ADC

在我们100Msps的项目中我们选用8位的AD9283作为ADC,63dB-48dB ~ 15dB的动态范围就通过可控增益的运放来实现。

由于输入的信号是+/-10V,而ADC一般的输入电压范围是2Vpp,所以需要对输入的电压信号先进行10:1衰减(-20dB),得到+/-1V的模拟信号,再通过0-20dB的可变增益控制来满足ADC的输入电平要求。

在ADC之前有一个低通滤波器用于对20MHz以上的信号做过滤,主要目的是防止20MHz以上的噪声通过采样混叠在被测信号的采样结果中。关于这部分的理论分析大家可以看一下抗混叠采样相关的技术文章。

以上我们简单分析了一下如何根据被采集信号的幅度范围来选取适当分辨率的ADC + 可变增益调理电路的组合,原则是考虑到电路的性能、可实现性、设计难度、系统成本等各因素后的综合折衷。

下面的这个图是我们设计的一款产品 - 500Msps的双通道高速数据采集系统的框图,使用的是8位、500Msps的ADC以及ZYNQ FPGA器件,可以通过以太网上位机PC进行数据传输。压控放大器的增益控制电压是靠低速串行DAC实现。每一级电路的增益、带宽的设定原理同上。

限于篇幅,不能对细节做详细说明,如有对此有兴趣的朋友可以通过留言的方式做进一步的沟通。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 模拟电路
    +关注

    关注

    125

    文章

    1551

    浏览量

    102606
  • adc
    adc
    +关注

    关注

    97

    文章

    6380

    浏览量

    543583
  • 数字示波器
    +关注

    关注

    6

    文章

    511

    浏览量

    33508

原文标题:ADC/DAC(3)- 数字示波器中ADC的选用

文章出处:【微信号:xiaojiaoyafpga,微信公众号:电子森林】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    关于ADC应用100Msps数字示波器的案例分析

    经过高速ADC以后的数据通过FPGA(当时就用Lattice的FPGA)进行处理以后送到后面的Cortex M4控制器,再在LCD显示屏上显示出来,触发、测量电压、频率等参数都在FPGA内实现。
    的头像 发表于 04-08 17:26 6575次阅读
    关于ADC应用<b class='flag-5'>100Msps</b>的<b class='flag-5'>数字</b><b class='flag-5'>示波器</b>的案例<b class='flag-5'>分析</b>

    【FPGA设计实例】基于FPGA的数字示波器设计

    和FPGA的数字示波器。这种特殊的设计采用了100MHz的闪速ADC,所以我们正在建立
    发表于 04-09 14:55

    Seeed ADALM2000-M2K 示波器

    `ADALM2000 (M2K)示波器经济实惠的 USB 供电数据采集模块。ADALM2000内置采样速率可达 100MSPS 的12位模-数和数-模转换器,是
    发表于 11-16 08:37

    做一个数字采样示波器

    做一个数字采样示波器直是我长久以来的愿望,不过毕竟这个目标难度比较大,涉及的方面实在太多,模拟前端电路、高速ADC、单片机、CPLD/FPGA、通讯、上位机程序、数据处理等等,不是
    发表于 08-06 06:32

    MAX19506 双通道、8位、100Msps ADC

    MAX19506 双通道、8位、100Msps ADC MAX19506 概述 The MAX19506 dual-channel, analog-to-digital converter (ADC) provides 8-bit resolution and a maximum sam
    发表于 11-15 15:37 1255次阅读

    在ICD上做一个简单的查表程序

    本内容介绍PIC单片机在ICD上做一个简单的查表程序,本文给出了详细程序
    发表于 06-27 16:35 1514次阅读

    简单实用的防盗器制作方法

    简单实用的防盗器制作方法,今天我教大家做一个简单的防盗器,结构是很简单
    发表于 08-10 15:48 9986次阅读
    <b class='flag-5'>简单</b>实用的防盗器<b class='flag-5'>制作</b>方法

    面向医疗与工业,TI推出8通道100MSPS ADC

    德州仪器 (TI) 宣布推出款支持同类最低功耗的 8 通道 12 位 100MSPS 模数转换器 (ADC)。该 ADS5295 单位通道功耗不足 80mW,可降低更高通道密度应用的电路板热量
    发表于 02-04 18:11 1571次阅读

    数字存储示波器制作参数

    针对中国市场推出的具备更多功能和更多性能的入门机型,截止2012年6月,TDS数字存储示波器系列凭借其在数字实时采样方面的优秀性能表现,加上所具备的多样的分析功能和简洁直观的操作获得全
    的头像 发表于 11-19 09:18 3284次阅读

    如何使用Arduino制作简单的欧姆表

    在DIY制作中我们经常会使用到电阻,电阻值的测量般会通过万用表或直接读取电阻器上的色环代码完成。没万用表怎么办?色环颜色不易分辨怎么办?为了克服这些困难,那就使用Arduino
    的头像 发表于 04-11 17:07 5869次阅读
    如何使用Arduino<b class='flag-5'>来</b><b class='flag-5'>制作</b><b class='flag-5'>一</b><b class='flag-5'>个</b><b class='flag-5'>简单</b>的欧姆表

    用STM32DIY示波器

    下周开始,套硬禾学堂精心制作的大课就要正式上线播出了 - 用STM32DIY
    的头像 发表于 07-12 09:53 6627次阅读

    DS100 Mini数字示波器

    前言 本篇文章主要评测正点原子的DS100 Mini数字示波器在实际的项目中能不能胜任。 示波器的配套:示波器主体,两通道的
    的头像 发表于 08-09 11:17 1966次阅读

    制作简单的Arduino示波器

    方案介绍该方案展示了如何制作简单的 Arduino 示波器示波器可显示的最大信号频率为 2
    发表于 12-23 10:45 9次下载

    ADS5263四通道、16位、100MSPS高SNR ADC数据表

    电子发烧友网站提供《ADS5263四通道、16位、100MSPS高SNR ADC数据表.pdf》资料免费下载
    发表于 07-17 09:29 0次下载
    ADS5263四通道、16位、<b class='flag-5'>100MSPS</b>高SNR ADC数据表

    ADS5295低功耗,12位,100MSPS,8通道模数转换器(ADC)数据表

    电子发烧友网站提供《ADS5295低功耗,12位,100MSPS,8通道模数转换器(ADC)数据表.pdf》资料免费下载
    发表于 07-30 09:37 0次下载
    ADS5295低功耗,12位,<b class='flag-5'>100MSPS</b>,8通道模数转换器(ADC)数据表