标题:
了解高速ADC的数字输出选择
[打印本页]
作者:
forsuccess
时间:
2013-8-2 23:19
标题:
了解高速ADC的数字输出选择
要点
1.高端仪表促进了更快的ADC速度和更多的通道数与密度,设计者必须评估转换器的输出格式,以及基本的转换性能。
2.主要的输出选项是CMOS(互补金属氧化物半导体)、LVDS(低压差分信令),以及CML(电流模式逻辑)。
3.要考虑的问题包括:功耗、瞬变、数据与时钟的变形,以及对噪声的抑制能力。
4.对于布局的考虑也是转换输出选择中的一个方面,尤其当采用LVDS技术时。
当设计者有多种ADC选择时,他们必须考虑采用哪种类型的数字数据输出:CMOS(互补金属氧化物半导体)、LVDS(低压差分信令),还是CML(电流模式逻辑)。ADC中所采用的每种数字输出类型都各有优缺点,设计者应结合自己的应用来考虑。这些因素取决于ADC的采样速率与分辨率、输出数据速率,以及系统设计的功率要求,等等。
CMOS驱动器
在采样速率低于200M采样/秒的ADC中,常见的是CMOS数字输出。典型的CMOS驱动器包括一个NMOS管和一个PMOS管(它们的漏极相互连接)、电源电压VDD和地(图1a)。这个结构会使输出反相。另外,也可以采用一种背对背的结构,避免输出反相(图1b)。
图1,一个典型CMOS数字输出驱动器可以是反相结构(a),或非反相结构(b)。
CMOS输出驱动器有高的输入阻抗和低的输出阻抗。在驱动器的输入端,两个CMOS晶体管的栅极阻抗非常高,因为栅极氧化物将栅极与任何导电材料隔离开来。输入端阻抗的范围可从千欧姆级到兆欧姆级。
在驱动器的输出端,漏极电流ID通常较小,它决定了阻抗。此时,阻抗通常小于数百欧姆。CMOS的电压摆幅大约是从电源电压到地,因此根据电源电压情况可能会很大。由于输入阻抗高,输出阻抗相对较低,因此一个CMOS输出通常可以驱动多个CMOS输入。
CMOS输出端还有低静态电流。只有当CMOS驱动器发生一次开关事件时,才出现大量的电流。当驱动器在低态(即拉至地)或高态(即拉至电源电压)时,几乎没有流过驱动器的电流。不过,当驱动器从低态切换到高态,或从高态切换到低态时,电源电压到地之间就出现了一个短暂的低阻通路。这个瞬态电流就是设计者通常对高于200M采样/秒速率ADC采用其它输出驱动技术的主要原因之一。
另一个原因是,转换器的每一位都需要一个CMOS驱动器。一只14位ADC需要14个CMOS输出驱动器。这一约束条件要求在一只封装中使用一个以上的转换器;通常在一个封装中会用到多达8个转换器,产生了多个驱动器的问题。例如,采用CMOS技术可能需要用多达112个输出端子做数据输出。这种结构不仅从封装角度是不可能的,而且也会消耗更多的功率,增加PCB布局的复杂性。为解决这些问题,制造商开始采用LVDS的接口。
LVDS驱动器
LVDS较CMOS技术有一些优势,包括它仅需约350mV的信号就能运行,并且是差分信号而不是单端信号。较小电压摆幅有更快的切换速度,减少了对EMI问题的关切。由于LVDS技术是差分的,它也有共模抑制作用,意味着耦合到信号上的噪声在两个信号路径上是相同的,而差分接收器能够去除大部分噪声。
LVDS的阻抗要受到更严格的控制,负载电阻必须接近100Ω。设计者获得这个电阻的方法通常是在LVDS接收器上使用并联终结的电阻。另外,还必须用受控阻抗的传输线来传送LVDS信号。单端设计需要50Ω的阻抗,而差分设计则要将阻抗保持在100Ω(图2)。
图2,LVDS输出驱动器提供受控的输入与输出阻抗。
正如LVDS输出驱动结构所示,电路的工作结果是输出提供一个固定的直流负载电流,从而避免了在输出逻辑状态变化时,一个典型CMOS输出驱动器上会出现的电流尖峰。电路的标称供出/拉入电流为3.5mA,在100Ω终端电阻上获得350mV的典型输出电压摆幅。电路的共模电平一般为1.2V,兼容于3.3V、2.5V和1.8V的电源电压。
LVDS最常见的标准是ANSI/TIA/EIA-644规范,即“低压差分信令接口电路的电气特性”;另一个标准是IEEE的SCI(可扩展一致性接口)LVDS标准。LVDS要求特别注意信号走线的物理布局,但对于大于200M采样/秒的转换器则提供了很多优点。LVDS驱动器是恒流驱动,因此能够驱动很多输出,不需要CMOS那么大量的电流。另外还可以使LVDS工作在DDR模式,它可以用一个LVDS输出驱动器给出2个数据位,从而需要的引脚数只有CMOS的一半。
LVDS还降低了相同数量数据输出的功耗。不过,随着转换器分辨率的增加,PCB布局有一个更困难的工作,即处理一个LVDS接口所需要的很多数据输出。ADC的采样速率最终会将接口需要的数据速率推高至超出LVDS的能力。
CML驱动器
转换器数字输出接口的最新趋势是采用一种CML输出驱动器的串行数据接口。通常情况下,使用这些驱动器的转换器有14位或更高的分辨率,速度为200M采样/秒或更高,只需要小型封装和低功耗。采用JESD204接口当前修订版(是一种CML输出驱动器)的最新转换器能够工作在高达12Gbps,大大减少了所需要的输出引脚数。
你不再需要单独布放时钟信号,因为标准定义的8b/10b编码数据流中嵌入了时钟。该标准亦将所需数据输出引脚数减少到最少两只。随着分辨率、速度和转换器通道数的增加,数据输出引脚数也可以改变,以适应更大的吞吐量。不过,由于CML驱动器接口通常是串行的,接口需要的引脚数少于CMOS或LVDS。CMOS或LVDS中的数据传输是并行方式,需要更多引脚。
表1给出了对于各种通道数和位分辨率,80M采样/秒转换器使用的接口引脚数。数据的假设条件是CMOS和LVDS输出下每个通道数据有一个同步时钟,使用CML输出时JESD204数据传输的最大速率为3.2Gbps。表中显示出了发展到CML的原因,以及大大减少的引脚数。
由于串行数据接口采用CML驱动器,它们需要的引脚数也很少。图3给出了一个有JESD204或类似数据输出转换器的典型CML驱动器。图中显示了可选的源端终结电阻和共模电压。电路的输入端驱动着电流源的开关,将两个输出端驱动到适当的逻辑值。
图3,CML输出驱动器作为电路输入,驱动着电流源的开关,从而将两个输出端子驱动到适当的逻辑值。
CML驱动器近似于一个工作在恒流模式的LVDS驱动器,而CML驱动器还有功耗的优势。在恒流模式下工作需要较少的输出端,减少了总功耗。采用LVDS时,这种设计需要一个负载终结,以及控制阻抗的传输线,其单端阻抗为50Ω,差分阻抗为100Ω。驱动器本身也有终结,这样有助于减少这种高带宽信号敏感性所带来的任何信号反射。
根据工作速度,符合JESD204标准的转换器有不同的差分电压和共模电压电平规范。当工作在高达6.375Gbps速度时,采用差分技术的ADC标称电压为800mV,而共模技术ADC电压约为1V。当这些系统工作在6.375Gbps~12.5Gbps时,差分电压水平为400mV,而共模电压水平仍然接近于1V。随着转换器速度与分辨率的提高,CML输出正在日益成为期望的驱动器类型,它提供的速度能跟上转换器所需要的技术。
数字时序
每种类型的数字输出驱动器都有需要密切关注的时序关系。由于CMOS和LVDS有多个数据输出,因此信号的布放路径要特别注意,以尽量减少失真。如果差异太大,则设计的接收器端就无法获得正确的时序。另外,还必须与数据输出一起布放和调整时钟信号。这个工作也需要特别仔细,在时钟输出与数据输出之间布放路径,以确保失真不大。
CML中各数字输出之间的路径布放也需要注意。要管理的数据输出少了很多,因此工作也变得较容易,但设计者不能掉以轻心。此时,你不需要考虑数据输出与时钟输出之间的时序失真问题,因为时钟嵌入在了数据中。但是,需要特别注意接收器中的CDR(时钟数据恢复)电路。
除了失真以外,设计者还必须仔细地察看CMOS和LVDS中的建立与保持时间, 包括在时钟变换沿以前,将数据输出驱动到适当的逻辑态,以及在时钟转换结束沿后,使逻辑态维持足够的长度。数据输出与时钟输出之间的失真会影响这个状况,因此关键是要维持良好的时序关系。
LVDS的信号摆幅小于CMOS,并且它也支持差分信令。LVDS输出驱动器为很多输出端提供较小的信号,当做逻辑转换时,从电源拉出的电流也低于CMOS,这样在逻辑状态改变时不容易产生问题。而大批同时转换的CMOS驱动器可能会拉低电源电压,当为接收器驱动正确逻辑值时会产生问题。LVDS驱动器会保持一个恒定的电流水平,因此避免了这类问题。LVDS驱动器还能抵御共模噪声,因为它采用的是差分信令。
CML驱动器具有与LVDS类似的优点。这些驱动器也有恒流水平,但与LVDS不同,它需要更少电流,因为数据串行化了。CML驱动器也提供对共模噪声的抑制能力,因为它们也采用差分信令。不过,LVDS和CML的缺点也正在于它们是恒流,所以,即使在较低的采样速率下,功耗仍会较大。对于较高速度和分辨率的转换器来说,LVDS或CML较CMOS的优点就在于显著减少了功耗和引脚数。
转换器技术随着速度和分辨率的提高而不断进步,采用了数字输出驱动器,并逐步满足了传输数据的需求。CML输出作为串行数据传输转换器中的数字输出接口正在日益普及。不过,今天的设计仍然在使用CMOS和LVDS数字输出。你要使用的数字输出类型取决于自己的应用情况。
对于采样速率小于200M采样/秒的转换器,CMOS仍然是一种适用的技术。当采样速度提高到200M采样/秒以上时,LVDS成为很多应用中的更实用选择。采用串行数据接口(如JESD204)的CML驱动器可以进一步提高效率,减小功耗和封装尺寸。
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/)
Powered by Discuz! 7.0.0