差分标准

和单端IO不同的是,差分电平使用两根信号线来传达信号,这两根信号线在传输过程中如果遇到同样的噪声源(共模噪声)干扰,在接收端,这样的共模噪声会在两个信号相减时消除,这样并不会给接收电平造成影响。

在单端信号的传输过程中,信号往往以电源平面或地平面作参考平面,而在差分电平中,由于两根线的电流方向相反,因此两者产生的电磁场相互抵消。向外辐射的地磁波更少,也就是减小了EMI,同样也减小了对参考平面的依赖,在传输过程中,两根电流大小一样,方向相反的信号线互为参考。不过,信号线与电源平面或地平面之间的距离等因素会影响信号线的差分阻抗。

下图所示,可以明显地看到两个差分信号线之间的电磁场。由于两者的电流大小相等,方向相反,于是他们之间的电磁场相互抵消,同时减少了对外的辐射。两者之间的电磁场越强,对外辐射也就越小。

微带线(microstrip)

带状线(stripline)

LVDS是一种常见的差分电平,如下图:

LVDS驱动器和接收器

在LVDS驱动器中,采用一个恒流源(大约3.5mA)输出,由于输入端的输入阻抗非常高,绝大部分的驱动电流流经100欧姆电阻,因此在接收器的输入端,两个信号线之间,产生了一个100*3.5=350mV的输入电压。当驱动器的输入电平翻转时,流经100欧姆电阻的电流方向就发生了变化,于是就会在电阻两端形成“0”和“1”两种逻辑状态。

和LVTTL/LVCMOS标准直接输出电压幅度信号不同的是,LVDS的驱动器输出是电流信号,由电流信号在接收端的差分匹配电阻上产生了一个合适的电压幅度信号,作为接收器的判决电平。因此,业界也把这种驱动器叫做电流模式(current mode)驱动器。

电压模式的驱动器,在静态时可以认为其输出的电流为0,而信号在翻转时,会产生较大的瞬态电流(Icc),Icc的大小随着时钟频率的增加而成指数增加,会给系统引入较大的开关噪声,尤其是在信号的边沿比较陡的时候,这种问题尤为严重。而电流模式的驱动器就不存在这种问题,LVDS的驱动器从电源汲取的电流值是恒定的大约3.5mA,无论信号如何翻转,这个电流值时钟不变,只是其在传输信号上的方向不同而已。而且LVDS的信号边沿相对比较缓,对保持信号完整性也是有好处的。

单端标准的信号一般是以地做参考,输出一定幅值的电压信号。而差分信号的输出有一个固定的共模输出电压(Vocm),如LVDS是1.2V,正端和负端的信号都是在这个共模电压的上下来回摆动的。在差分输入端,信号的输入共模电压允许在一定范围之内,如LVDS的信号输入的电平允许的值是0~2.4V,这样即使信号在传输过程中出现较大的共模干扰,也会在接收端相互抵消,如下图:

共模噪声的抵消

下图所示为几种差分电平标准的共模输出电压和输出摆幅示意图。

差分电平输出幅度示意图

与LVDS相比,LVPECL电平的输出结构是一对射极跟随器(emitter follower),它的特点是翻转速度很快,但是直流电流很大,大概为14mA。LVPECL的驱动器的输出阻抗很小,因此其驱动能力非常强,如下图:

LVPECL驱动器结构

CML也是一种常用的差分电平标准,其驱动器又一个共射极差分对直接输出。CML电平常用在高速的网络和通信设备中,其串行数据速率可以做到非常高,如10Gbit/s,如下图:

CML驱动器结构

对差分信号加终端电阻时,也可以采用FLY-BY的布PCB线,以尽量减少由于匹配电阻造成的短线,影响信号质量,如下图:

差分匹配的FLY-BY方式


版权所有权归卿萃科技 杭州FPGA事业部,转载请注明出处

作者:杭州卿萃科技ALIFPGA

原文地址:杭州卿萃科技FPGA极客空间 微信公众号


扫描二维码关注杭州卿萃科技FPGA极客空间


差分IO标准的更多相关文章

  1. 单端IO标准

    单端标准 常用的单端IO标准是LVTTL和LVCMOS. 目前业界绝大部分FPGA/CPLD器件的LVCOMS的IO是由CMOS推挽(push-pull)驱动器构成的,这种结构是上面的PMOS管和下面 ...

  2. C++重载输入和输出操作符以及IO标准库中的刷新输入缓冲区残留字符问题

    今天在做C++ Primer习题的14.11时,印象中应该挺简单的一题,结果却费了很长时间. 类定义: typedef string Date; class CheckoutRecord{ publi ...

  3. 走进C++程序世界------IO标准库介绍

    流概述    流是C++标准的组成部分,流的主要目标是,将从磁盘读取文件或将输入写入控制台屏幕的问题封装起来,创建流后程序猿就能够使用它.流将负责处理全部的细节. IO类库 在C++输入、输出操作是通 ...

  4. 第十三篇:带缓冲的IO( 标准IO库 )

    前言 在之前,学习了 read write 这样的不带缓冲IO函数. 而本文将讲解标准IO库中,带缓冲的IO函数. 为什么要有带缓冲IO函数 标准库提供的带缓冲IO函数是为了减少 read 和 wri ...

  5. 带缓冲的IO( 标准IO库 )

    前言 在之前,学习了 read write 这样的不带缓冲IO函数.而本文将讲解标准IO库中,带缓冲的IO函数. 为什么要有带缓冲IO函数 标准库提供的带缓冲IO函数是为了减少 read 和 writ ...

  6. c++ io标准库2

    转自:http://www.2cto.com/kf/201110/109445.html 接下来我们来学习一下串流类的基础知识,什么叫串流类? 简单的理解就是能够控制字符串类型对象进行输入输出的类,C ...

  7. Spartan6系列之SelectIO深入详解及高级应用简介

    1.      什么是I/O Tile? 对Spartan-6系列FPGA来说,一个IO Tile包括2个IOB.2个ILOGIC.2个OLOGIC.2个IODELAY. 图 1Spartan-6系列 ...

  8. C++ 标准IO库

    <C++ Primer 4th>读书笔记 C++ 的输入/输出(input/output)由标准库提供.标准库定义了一族类型,支持对文件和控制窗口等设备的读写(IO).还定义了其他一些类型 ...

  9. C++ Primer 读书笔记: 第8章 标准IO库

    第8章 标准IO库 8.1 面向对象的标准库 1. IO类型在三个独立的头文件中定义:iostream定义读写控制窗口的类型,fstream定义读写已命名文件的类型,而sstream所定义的类型则用于 ...

随机推荐

  1. C/C++ 字符串操作函数 思维导图梳理

    这些常用的字符串操作函数都是包在string.h头文件中. 分享此图,方便大家记忆 <(^-^)> 选中图片点击右键,在新标签页中打开图片会更清晰

  2. Golang 连接Kafka

    Kafka介绍 Kafka是Apache软件基金会开发的一个开源流处理平台,由Java和Scala编写:Kafka是一种高吞吐.分布式.基于订阅发布的消息系统. Kafka名称解释 Producer: ...

  3. string 类(二)

    处理string对象中的字符: 在cctype头文件中定义了一组标准库函数来处理string对象中的字符,比如检查一个string对象是否包含空白,或者把string对象中的字母改成小写,再或者查看某 ...

  4. eclipse设置高亮显示的颜色

    设置高亮显示的颜色:Window-->preferences-->General-->Editors-->Text Editors-->Annotations--> ...

  5. ssm搭建相关的问题

    在搭建ssm框架时候踩得坑:1.对于拦截器url-parttern的设置:第一次设置的是/** 本以为这个是表示拦截所有,没想到这是错误的写法,正确的写法是/    启动项目不会报错,但是会出现404 ...

  6. SolrCloud 5.5.5 + Zookeeper + HDFS使用

    安装sol r 三个节点192.168.1.231,192.168.1.234,192.168.1.235 下载安装包solr.tar.gz 解压 tar -zxvf solr.tar.gz 配置ZK ...

  7. 运行php的时候出现计算机中丢失 MSVCR110.dll怎么解决

    运行php的时候出现计算机中丢失 MSVCR110.dll怎么解决 一.总结 一句话总结:因为现在php所有的 5.5 环境都是基于 vc11 的编译脚本下生成的,所以在 windows 下你得安装相 ...

  8. macvim/babun+spf13-vim

    mac: macvim brew install macvim --with-cscope --with-lua --with-override-system-vim brew linkapps ma ...

  9. Mac的搜狗输入法和QQ输入法加入⌘⌥⌃⇧自定义短语

    搜狗输入法(Mac):http://pinyin.sogou.com/mac/ 创建名为『搜狗输入法自定义短语.ini』的文本文件(建议用Sublime Text),内容如下,然后偏好设置的自定义短语 ...

  10. String随笔

    1.古罗马皇帝凯撒在打仗时曾经使用过以下方法加密军事情报:,请编写一个程序,使用上述算法加密或解密用户输入的英文字串要求设计思想.程序流程图.源代码.结果截图. 设计思想:1)定义一个String类型 ...