眼图 非差分线_LVDS低电压差分信号简介

LVDS低电压差分信号简介

1. 名词解释

1.1. 背景

随着数据传输速率越来越高,现在计算机系统中的数据传输接口基本上都串行化了,像USB、PCIe、SATA、DP等等外部总线将并行总线挤压到只剩下内存总线这个最后的堡垒。当然,就算是并行传输总线最后的倔强DDR也在不断吸收SERDES上的技术来提升自己,尤其是均衡器(Equalization,EQ)技术,在DDR5标准中,DRAM将被指定涵盖DFE(判决反馈均衡)能力。

2e21b766416eeed2ae333c75f90517bd.png

随着信号速率的提高,在系统同步接口方式中,有几个因素限制了有效数据窗口宽度的继续增加。

  • 时钟到达两个芯片的传播延时不相等(clock skew)

  • 并行数据各个bit 的传播延时不相等(data skew)

  • 时钟的传播延时和数据的传播延时不一致(skew between data and clock)

要提高接口的传输带宽有两种方式,一种是提高时钟频率,一种是加大数据位宽。那么是不是可以无限制的增加数据的位宽呢?这就要牵涉到另外一个非常重要的问题–同步开关噪声(SSN),数据位宽的增加,SSN成为提高传输带宽的主要瓶颈。

由于信道的非理想特性,信号从Tx通过FR4 PCB板传输到Rx,这中间会有信号插损、回损、近/远端串扰,再继续提高频率,信号会严重失真,这就需要采用均衡和数据时钟相位检测等技术,这也就是SerDes所采用的技术。

1.2. 历史

LVDS(Low-Voltage Differential Signaling,低电压差分信号)是美国国家半导体(National Semiconductor, NS,现TI)于1994年提出的一种信号传输的电平标准,它采用极低的电压摆幅高速差动传输数据,可以实现点对点或一点对多点的连接,具有低功耗、低误码率、低串扰和低辐射等优点,已经被广泛应用于串行高速数据通讯场合,如高速背板、电缆和板到板数据传输与时钟分配,以及单个PCB内的通信链路。

2. 技术标准

低电压差分信号(LVDS)是一种高速点到点应用通信标准。多点LVDS (M-LVDS)则是一种面向多点应用的类似标准。LVDS和M-LVDS均使用差分信号,通过这种双线式通信方法,接收器将根据两个互补电信号之间的电压差检测数据。这样能够极大地改善噪声抗扰度,并将噪声辐射降至最低。相对于LVDS,M-LVDS指定了更高的差分输出电压,以便允许来自多点总线的更高负载。

两种协议都是面向高速通信设计的。典型应用环境下会采用PCB走线或较短的有线/背板链路。LVDS的共模范围就是针对这些应用而设计。相对于LVDS,M-LVDS扩展了其共模范围,允许多点拓扑结构中具有额外噪声。

LVDS是一种用于替代发射极耦合逻辑(ECL)正发射极耦合逻辑(PECL)的低功耗逻辑 。LVDS的主要标准有两个:即TIA(电讯工业联盟)/EIA(电子工业联盟)的ANSI/TIA/EIA-644标准(LVDS接口也因此称为RS-644接口)与IEEE 1596.3—SCI(可扩展一致性接口)。LVDS广泛用于高速背板、电缆和板到板数据传输与时钟分配,以及单个PCB内的通信链路。

LVDS/M-LVDS应用考虑

  • 总线类型和拓扑结构

  • 时钟分配应用

  • LVDS/M-LVDS信号的特性

  • 端接和PCB布局

  • 抖动和偏斜

  • 数据编码和同步

  • 隔离

3. 技术原理

通常一个简单的点到点(point to point )LVDS的电路结构如下图所示:

7b00f0ffb2002fc0ec3740f06bcb6d7e.pngLVDS点对点通讯

其基本优势是结构简单,功耗低,速度快,抗干扰能力强,能够传输5-10m。但是这一切又都是如何实现的呢?接下来就简要介绍一下技术上的细节。

3.1. 硬件构造

LVDS电平标准采用一对(两根)差分信号线传输数据。通过驱动3.5mA的稳定电流源,可在100Ω终端电阻时,以350mV这样非常低振幅的差动信号来高速传送数据。其数据传输速度在规格内限定最大为655Mbit/s。但这并不是极限值。通过各半导体厂商独有的加工,可以完成3Gbit/s左右的高速传输速度。

2a44aafe1470ea848159722a86c7b1f8.pngLVDS硬件构造

LVDS 信号传输一般由三部分组成: 差分信号发送器,差分信号互联器,差分信号接收器。

  • 差分信号发送器:将非平衡传输的TTL 信号转换成平衡传输的LVDS 信号

  • 差分信号接收器:将平衡传输的LVDS 信号转换成非平衡传输的TTL 信号

  • 差分信号互联器:包括联接线(电缆或者PCB 走线),终端匹配电阻。按照IEEE 规定 ,电阻为100 欧,我们通常选择为100 ,120 欧。

LVDS的差动信号波形的具体示例请见下图:

ab0abbebfbe25b7b04845041ff9cae7e.pngLVDS的差动信号波形


将两根差动信号--正电极信号(A+)负电极信号(B−),以1.2V的共同电压(Voc)为中心,使2个信号间以350mV的电位差摆动。然后,用探针测定示波器的差动,会得到图2这样的信号波形。这就是两个信号的振幅差((A+)−(B−))。以差动探针测定,就能得到振幅差的计算结果。但是这样的信号波形并不是物理存在的。

3.2. LVDS收发器

概述: 电流驱动——电压接收——共模电压由0-2.4V直流偏置,典型为1.2V——差模电压:350mV由驱动电流提供

LVDS的发送器与接收器的基本结构如下图所示。它使用两根线(即差分信号线)来传输一个信号,并且使用恒流源(Current Source)驱动,即电流驱动型(而TTL、CMOS之类电平标准为电压驱动型)。

30b0639b55474bef00133e7e686695ed.pngLVDS收发器基本结构


其中,驱动器(Driver)中的场效应管(不一定是场效应管,因为LVDS技术规范主要侧重于LVDS接口的电气、互连与线路端接,对于生产工艺、传输介质及供电电压无明确要求,也就是说,可以采用CMOS、GaAs或其它工艺实现,能抓到老鼠的黑猫白猫都是好猫)组成一个全桥开关电路,用来控制3.5mA恒流源的电流流动方向,接收器(Receiver)的同相与反相端之间并联了一个100欧姆的端接电阻,LVDS接收器具有很高的输入阻抗,因此驱动器输出的电流大部分都流过100Ω的匹配电阻,并在接收器的输入端产生大约350mV 的电压,再经过接收器判断就形成了高低电平。电流源为恒流特性,终端电阻在100 ~120 欧姆之间,则电压摆动幅度为:3.5mA * 100 = 350mV ;3.5mA * 120 = 420m V。

当Q2、Q3导通而Q1、Q4截止时,恒流源电流经Q3流向接收器,并向下穿过100欧姆端接电阻再返回至驱动端,最后经Q2到地(GND),3.5mA的电流在100欧姆电阻上产生350mV的压降,此时同相端电压高于反相端电压,输出为高电平“H”,如下图所示:

81bc173369ae3c59315cb9fa190f24ea.png


而当Q2、Q3截止而Q1、Q4导通时,恒流源电流经Q1向右流向接收器,并向上穿过100欧姆端接电阻再返回至驱动端,最后经Q4到地(GND),3.5mA的电流在100欧姆电阻上也产生350mV的压降,但此时同相端电压低于反相端电压,输出为高电平“L”,如下图所示:

92662f815ae58fce5f5e10519616e7fc.png

通常我们将LVDS接收器与发送器简化成类似下图所示:

5638eece866d5ca68dd2d85181ba8c52.png

如下图所示(来自TI公司LVDS收发芯片SN65LVDS180数据手册)

ad7ccb141f04e416fd7d31eabbb82634.png

从LVDS结构原理可以看出,一对差分信号线只能够进行一个方向的数据传输,即单工通信(也称为点对点传输point-to-point),但是我们常见的USB接口也只是使用一对差分信号线,为什么却可以双向传输呢?原因很简单,它是使用两对驱动器与接收器组合而成的,如下图所示:

b0bc9b33c5d00cf60bc1851f12d1d059.pngUSB接口结构

这是一种**半双工(half duplex)**的配置结构,也就是说,在任意时刻差分信号线仍然只能是往一个方向传输数据,但可以分时进行双向数据传输,当驱动器1向接收器1发送数据时,驱动器2与接收器2相当于无效的,反之亦然。当然,USB总线的实际结构要复杂得多,如下图所示(来自USB2.0规范,扯远了)

b9b446da5e45079aef62953b9f123718.pngUSB2.0

3.3. LVDS电气参数

我们来看看如下图所示的LVDS驱动器电气参数(来自TI公司LVDS收发芯片SN65LVDS180数据手册)

79ffd7d5e4b2e86f79eaf2509ed34878.pngSN65LVDS180

上表中的VOD(Differential output voltage magnitude)即驱动器的差分输出电压幅度,也就是前述在端接电阻上产生的350mV压降,我们可以用下图所示(注意:是差模信号):

5647e351ab0cbfa7b069b47f9db00dbb.pngVOD差分输出电压幅度

表中还有一个VOC(SS)(Steady-state common-mode output voltage)即稳态共模输出电压是个什么东西呢?我也不是很明白!咱们按图索骥找到数据手册中的Figure 3,如下图所示:

6afd17947ae896f0b448179d645e8122.pngVOC稳态共模输出电压

哦,原来是当驱动器输入数字信号(未转换成LVDS信号前)时,转换出来的LVDS信号电压对公共地的平均值,也称为VOS(Offset Voltage,),TI公司的其它数据手册有使用VOS如下图所示:(来自TI公司的LVDS收发芯片型号SN65LVDS049数据手册)

002efe96bd79fb9a101c923f51bac57d.png

我们之前讲过,当使用LVDS电平标准传输高低电平时,接收端收到了+350mV或-350mV的压降只是差模信号,实际上还有一定的共模信号,它不影响接收器进行数据的判断。

当驱动器向接收器发送高电平“H”时,其等效图如下所示(注意:这个等效图仅适合传输线非常短的条件下):

31875316c51a99eaceba4eb4e3e60282.png

当驱动器向接收器发送低电平“L”时,其等效图如下图所示

48743b939fbe04603f99db04fa9cd6d5.png

综合以上两种等效电路,我们有如下图所示的电平波形图:

7ee3a9f33e438d33335c26973980e57b.png

换言之,当LVDS进行高低电平切换时,电流源的电流在换向的瞬间,端接电阻流过的电流为零,因此端接电阻两端的电压就是VOS(电阻两端电压相同,因此没有压降,也没有电流),如下图所示:

1b77614fbe478cd31062146bf387a6cb.png

当然,这个电流换向转换瞬间非常短,通常只有几百皮秒,如下图所示:

7e87fccbcba07bb54a62e9fac370023a.png

接收器的输入电气参数如下图所示:

a5840c8ae952a34533d8f5ab94a9c19c.png

因此我们也可以用下图表示LVDS电平标准的噪声容限:

cee94a1a2ddbf0170e751c7b44b7a99e.png

从图中可以看到,LVDS电平标准的噪声容限约为1.075V(一般认为其噪声容限为 1V)这里我们只是根据TI数据手册画出电平标准图,没有做任何修改,不同厂家的信息可能略有不同。

3.4. 技术优势分析

3.4.1. 单端信号和差分信号之间的差异

单端信号: 通常大多数低速数字逻辑电平(如TTL、CMOS)是用一根走线来传输信号,信号由相对于地参考平面(0V GND)的电平来确定逻辑“ L”和逻辑“ H”

2dcd7f1b6a63c3a8e8f07bebd528fa02.png

584ec756a44984046acffca9cf8b78a9.png

aa2742f8427092b9ab3f3e19fd46c2c8.png

5f574022e79f4ae122bafca485994af9.png

随着速率的提高,单端信号的上升/下级沿也变得陡峭,因此,输出开关噪声会导致信号产生过冲和下冲,并且当多位信号同时转换时,还要考虑地弹(ground bounce)问题,同时单端信号以参考地平面作为信号回流路径,这也为Layout带来了挑战,由传输线阻抗不匹配引起的反射效应会变得非常严重。

ea37b52400e6681b8cea2d54e8f23a77.png

差分信号: 有别于单端信号一根信号线传输信号,GND作为高(H)、低(L)逻辑电平的参考并作为镜像流量路径的做法,差分传输在两根传输线上都传输信号,这两个信号的振幅相等,相位相差180度,极性相反,互为耦合。

85b466e4cf6b0c4b07cec9dbac766b86.png

3.4.2. 差分信号的优点

  1. 因为你在控制「基准」电压,所以能够很容易地识别小信号。在一个参考地(0 V)基准的单端信号传输系统里,测量信号的精确值依赖系统内(0 V)的一致性。信号源和信号接收器距离越远,它们局部地的电压值之间有差异的可能性就越大。而差分信号恢复的信号值在很大程度上与参考地(0 V)的精确值无关,在某一范围内便可。

  2. 它对外部电磁干扰(EMI)是高度免疫的:一个干扰源几乎相同程度地影响差分信号对的每一端。既然电压差异决定信号值,这样将忽视在两个导体上出现的任何同样干扰。除了对干扰不大灵敏外,差分信号比单端信号生成的EMI还要少。

  3. 在一个单电源系统,能够从容精确地处理「双极信号」。为了处理单端,单电源系统的双极信号,我们必须在地和电源干线之间某任意电压处(通常是中点)建立一个虚地。用高于虚地的电压来表示正极信号,低于虚地的电压来表示负极信号。接下来,必须把虚地正确地分布到整个系统里。而对于差分信号,不需要这样一个虚地,这就使我们处理和传播双极信号有一个高真度,而无须依赖虚地的稳定性。

3.4.3. 低压的优势

随着集成电路的发展和对更高数据速率的要求,低压供电成为急需。降低供电电压不仅减少了高密度集成电路的功率消耗,而且减少了芯片内部的散热,有助于提高集成度。减少供电电压和逻辑电压摆幅的一个极好例子是低压差分信号(Low Voltage Differential Signaling LVDS),同时也降低了系统功耗。

3.5. 小结

LVDS的优势包括:

  • 通信速度高达1Gbps或以上

  • 电磁辐射EMI更低

  • 抗扰度EMC更高

  • 低功耗工作

  • 共模范围允许高达±1V的接地失调差额

4. 技术扩展

4.1. LVDS的传输距离传输距离

LVDS传输距离均受两个主要因素的影响:传输介质数据速率。关于给定传输距离,是否切合实际的标准决定于接收节点观察到多大的抖动,这与应用环境有关。有些应用环境需要5%或更低的抖动,有些则容许高达20%的抖动。

PCB走线通常允许大约几十厘米的传输距离;双绞线电缆用于LVDS时允许大约几米的传输距离;不同规格的PCB构造或电缆类型会对信号造成不同影响,进而影响最大传输距离。更高的数据速率会极大地限制传输距离; 1 Gbps下的LVDS或许只能通过1米的优质电缆进行传输(可能还需要额外的信号调理),但是在100 Mbps条件下传输距离可能达到10米 (具体取决于电缆类型)。下图提供了部分应用环境下典型的LVDS和M-LVDS数据速率及电缆长度组合指示。

27e41dabbf7bda3db302f8e0ac178bfa.png部分典型LVDS和M-LVDS应用中的电缆长度(双绞线)与数据速率

4.2. 端接和PCB布局

无论是使用电缆还是PCB走线,都应该结合传输线路理论对高速通信链路进行考虑。LVDS高数据速率需要快速上升时间,这意味着,随着信号从驱动器一直传播到总线端部,阻抗不连续和通信链路的端部会显著影响传输信号。为避免信号降级,需要沿着通信介质控制阻抗,并保证合适的端接。

端接电阻应该与通信介质的阻抗匹配;对于LVDS,这通常为100 Ω。对于简单的点到点链路,只需要端接距离驱动器最远的总线端部,如图14所示。对于多分支总线,如果驱动器在总线的一端,则可采用相同的端接方法,否则需要端接总线的两端。

a0c409db0e69dad104fa8355e772a017.png

4.3. M-LVDS

面向多点低电压差分信号(M-LVDS)的标准TIA/EIA-899将LVDS延伸到用于解决多点应用中的问题。相对于TIA/EIA-485 (RS-485)或控制器局域网(CAN),M-LVDS能够以更低的功耗实现更高速度的通信链路。M-LVDS往往允许几十米的传输距离,M-LVDS相对于LVDS的额外特性包括:

  • 驱动器输出强度更高

  • 跃迁时间可控

  • 共模范围更广

  • 面向总线空闲条件提供故障安全接收器选项

4.4. 其他差分技术

下图列举了几种常用通信协议的速率和通信距离对比:

9a3d6230db57e71ac704e6a91addec48.png速率和通信距离

5. Q&A

5.1. 终端电阻100Ω是怎么来的

这个值是根据spec计算出来的,lvds的驱动是3.5mA恒流源,接收端电平判别的典型值是350mv,算出得到终端电阻是100Ω。接收端判别电平的范围可以根据具体器件的数据手册来查看。如果想增大抗干扰能力,其实可以适当提高这个电阻的阻值,比较常用值是120Ω。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/538627.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

无内存在优盘可以启动计算机吗,没有U盘不要紧,内存卡做启动盘装Win7方法

现在最流行的win7系统安装方法大多以U盘来安装,那么如果你没有U盘呢?为了安装个Win7系统是不是要去买个U盘?当然不用,如果你还有空闲不用的手机内存卡,那么也是可以制作U盘启动盘来安装Win7系统的。准备工具&#xff1…

spyder python调试_使用spyder编译器单步调试python

1、将需要进行单步调试的函数在脚本中进行调用(十分重要的一步)。由于python是解释型语言,在进行单步调试的时候需要告诉系统你使用了这个函数,单步调试才会进入你所需要调式的函数。如下图所示,我们定义了createDataS…

label qt 自动换行_QT编写一个登录界面

前言继上篇:一起学Qt之基础篇---入门今天上手实操用QT编写一个登录界面~系统权限这个词大家肯定不陌生,你进入一个网站也是,如果不登录,就是以游客的身份进去的,要想看到某些信息肯定需要进行登录,更完善的…

我的世界服务器怎么修改书与笔,我的世界书与笔怎么做 我的世界书与笔怎么用...

第一步先收集甘蔗,然后合成纸,甘蔗在河边,池塘边,沼泽地一般都会生成,我们也可以拿回家种植,但是甘蔗必须种在水边,其他地方种植不了,其他地方玩家怎么右键甘蔗都是没有反应的。第二…

虚拟机 服务器 root,虚拟机切换到root账户

虚拟机切换到root账户 内容精选换一换一、安装虚拟机1、下载VMware workstation 14 ,安装时按照默认配置安装2、下载ubuntu-18.04.1-desktop-amd64.iso镜像文件3、打开 VMware workstation ,新建虚拟机4、配置虚拟机内存,磁盘,网络…

每一行末尾添加分号

文本内容如下: TMP_TBX_100_0_A1 TMP_TBX_100_0_A10 TMP_TBX_100_0_A12 TMP_TBX_100_0_A13 TMP_TBX_100_0_A14 TMP_TBX_100_0_A15 TMP_TBX_100_0_A15_2 TMP_TBX_100_0_A16 TMP_TBX_100_0_A17 TMP_TBX_100_0_A18 TMP_TBX_100_0_A19 TMP_TBX_100_0_A19_2 TMP_TBX_100…

壮观霉素抗性基因原理_基因组学深入挖掘·研究方案(下篇)

前情回顾上次小编为大家讲解了四种以基因组为基础的多组学联合研究方案(基因组与转录组,深入挖掘基因表达信息;基因组联合代谢组与转录组,锁定关键通路;基因组与群体进化,解析物种发展历程;基因…

Spark 常见问题小结

原文地址:http://www.aboutyun.com/thread-9946-1-1.html -------------------------------------- 问题导读 1、当前集群的可用资源不能满足应用程序的需求,怎么解决? 2、内存里堆的东西太多了,有什么好办法吗? …

Kafka.net使用编程入门(一)

最近研究分布式消息队列,分享下! 首先zookeeper 和 kafka 压缩包 解压 并配置好! 我本机zookeeper环境配置如下: D:\Worksoftware\ApacheZookeeper3\conf\zoo.cfg 以下是kafka的配置 D:\Worksoftware\Apachekafka2.11\config\server.propert…

python包路径有几个_python的搜索路径与包(package)

python的搜索路径其实是一个列表,它是指导入模块时,python会自动去找搜索这个列表当中的路径,如果路径中存在要导入的模块文件则导入成功,否则导入失败: >>> importsys>>>sys.path [, C:\\Python33\…

配置文件管理服务器,06-配置文件管理

1配置文件管理设备运行于FIPS模式时,本特性部分配置相对于非FIPS模式有所变化,具体差异请见本文相关描述。有关FIPS模式的详细介绍请参见“安全配置指导”中的“FIPS”。1.1 配置文件简介配置文件是用来保存配置的文件。配置文件主要用于: …

虚拟机安装spark配置推荐

如果虚拟机配置的内存太少,spark运行计算的时候会报: WARN TaskSchedulerImpl: Initial job has not accepted any resources; check your cluster uito ensure that workers are registered and have sufficient memory 资源不足的问题,导…

Linux常用命令——chattr、lsattr

chattr 改变文件的扩展属性 语法格式:chattr 【option】【mode】【files】chattr [选项] [模式] [文件或目录]注意:chattr 命令及后面的选项和文件里,每个元素之间都要至少要有一个空格参数选项: 参数选项解释说明-a只能向文件中…

两个相邻盒子的边框怎么只显示一个_【前端小课堂】0044 盒子

这是一个面向零基础的前端教程,很简单,用零散时间就可以学习。 推荐早上读一下,晚上复习一下,如果可以奢侈一点,白天稍微练习一下下,总共花费 5~15 分钟。就酱!已经好几次提到块(block)元素了&a…

scala apply方法 笔记

原文出处:http://blog.csdn.net/pzw_0612/article/details/48576569 ----------------------------------------------------- Scala比Java更面向对象的一个方面是Scala没有静态成员。替代品是,Scala有单例对象:singleton object。 当单例对…

转:6.1海量数据处理

本文转自看云,原文地址请移步:https://www.kancloud.cn/kancloud/the-art-of-programming/41608 偶然闲游,偶遇某一站点,发现这里写的关于海量数据处理相关的思路还挺不错,所以在这里采摘收藏,如有侵权之处还请评论区或…

flash一个按钮控制动画_flutter闪屏过渡动画,闪光占位动画

在程序设计的理念中,讲究一切都来源于物理世界,在现实世界中,人们在每接触到一个新的事物或者说在手指触碰到一个事物时,总是心里默许期望有一个反馈效果,这就是来源于心底深处常常被人忽略的一个潜在期望。在程序的世…

动态改变_Excel中如何动态改变可编辑区域?

有这样一个工作场景:我们制作一个工作报表模板给同事填写数据,这个工作表格只可以在预设的可编辑区域编辑,其它都是受密码保护的,而且这个可编辑区域是随着日期——工作周的变化而发生变化的。也就是说在不同的工作周可编辑的区域…

java集合框架之ArrayList与LinkedList的区别

参考http://how2j.cn/k/collection/collection-arraylist-vs-linkedlist/690.html#nowhere ArrayList和LinkedList的区别 ArrayList 插入,删除数据慢LinkedList, 插入,删除数据快ArrayList是顺序结构,所以定位很快,指哪…

Spark集群安装

Spark是独立的,所以集群安装的时候,不像hive,hbase等需要先安装hadoop,除非文件保存在hadoop上,才需要安装hadoop集群。 如果虚拟机安装,点击阅读推荐配置 前提环境: 1、安装了JDK1.7及以上版…