从PCI被“拍在沙滩上”谈并行总线和串行总线

串行总线和并行总线接口

在高速串行总线流行起来之前,芯片之间的互联通过系统同步或者源同步的并行接口传输数据,而所谓的并行接口,是指通信中一个或几个字节(8位)数据是在n*8条并行传输线上同时由源端传到目的地,也可以说有多个数据线(几根就是几位),在每个时钟脉冲下可以发送多个数据位(几位的并行口就发送几位)。

串行通信指数据在单条一位宽的传输线上,一比特接一比特地按顺序传送的方式,在早期的定义里也有说只有一根数据线,每个时钟脉冲下只能发送一位数据的方式。

所以早期对串行通信与并行通信的理解为:同样的一个字节数据(8位),串行通信要分8次由低位到高位按顺序一位位地传送,而并行通信由于有8根线路,所以只要一次就可以传送过去,形象的说,把线路(通道)比作道路,能并排开几辆车的就可以说是“并行”,只能一辆一辆开的就属于“串行”了。

并行总线与串行总线的区别对比及优缺点

很明显,并行通信的速度要比串行通信的速度快得多,效率更高,费时更少。不过这些都是早期I/O速率都不高的情况下的理论理解,随着信息技术的飞速发展,之前的理解放在现在来看已经过时了,因为现在是高速串行信号时代了。

按照理论分析并行总线可以一次传多个数据位,而且时钟远远低于串行,理论应该成为目前高速传输信号的首选,那为什么像PCI、IEEE 1284、PATA等并行总线被PCIe、USB、SAT等串行总线所取代呢?

下面就针对并行总线为什么不能成为目前总线接口的主流?

图1‑5演示了系统同步(共同时钟)方式及源同步时钟方式并行总线接口。

图1‑5 系统同步(共同时钟)方式及源同步时钟方式并行总线接口

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

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

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

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

虽然可以通过在目的芯片(chip #2)内用PLL补偿时钟延时差(clock skew),但是电压和温度(PVT)变化时,时钟延时的变化量和数据延时的变化量是不一样的,这又进一步恶化了数据窗口。

源同步接口方式中,发送侧Tx把时钟伴随数据一起发送出去,限制了clock skew对有效数据窗口的危害。通常在发送侧芯片内部,源同步接口把时钟信号和数据信号作一样的处理,也就是让它和数据信号经过相同的路径,保持相同的延时。这样PVT变化时,时钟和数据会朝着同一个方向增大或者减小相同的量,对skew最有利。

我们来做一些合理的典型假设,假设一个32bit数据的并行总线,

a)发送端的数据skew = 50 ps ---很高的要求

b)pcb走线引入的skew = 50ps ---很高的要求

c)时钟的周期抖动jitter = +/-50 ps ---很高的要求

d)接收端触发器采样窗口 = 250 ps ---Xilinx V7高端器件的IO触发器

可以大致估计出并行接口的最高时钟 = 1/(50+50+100+250) = 2.2GHz (DDR)或者1.1GHz (SDR)。

利用源同步接口,数据的有效窗口可以提高很多。通常频率都在1GHz以下。在实际应用中可以见到如SPI4.2接口的时钟可以高达DDR 700MHz x 16bits位宽。DDR Memory接口也算一种源同步接口,如DDR3在FPGA中可以做到大约800MHz的时钟。

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

这里不讨论SSN的原理,直接给出SSN的公式:SSN = L *N* di/dt

L是芯片封装电感,N是数据宽度,di/dt是电流变化的斜率。

随着频率的提高,数据位宽的增加,SSN成为提高传输带宽的主要瓶颈。图1.2是一个DDR3串扰的例子。图中低电平的理论值在0V,由于SSN的影响,低电平表现为震荡,震荡噪声的最大值达610mV,因此噪声余量只有1.5V/2-610mV=140mV。

图1‑6 DDR3串扰演示

因此也不可能靠无限的提高数据位宽来继续增加带宽。一种解决SSN的办法是使用差分信号替代单端信号,使用差分信号可以很好的解决SSN问题,代价是使用更多的芯片引脚。这在早期是可以接受的。但是摩尔定律的现象使得与几十年前相比可生产的芯片中硅电路的数量大幅增加,而芯片封装技术的pin密度并没有像硅密度一样以相同的速度在增加,因此I/O pin的封装实际上比硅电路还贵,这就意味着对于大多数芯片来说pin管脚越来越多变得不可接受。就好像我们都知道车道越多我们的通行效率就会更快,但随着现在的城市空间越来越小以及地价越来越贵,更多的车道慢慢的只能变得越来越难以实现。况且并行本身的I/O速率不高,就像拖拉机或毛马路,速度上不去再多车道也是枉然。

并且使用差分信号仍然解决不了数据skew的问题,很大位宽的差分信号再加上严格的时序限制,给并行接口带来了很大的挑战。

经上所述,并行总线在发高速传输的今天遇到了很多瓶颈,而这些瓶颈因为不能被解决,所以被串行总线所取代,但是将来随着一些工艺问题的解决,并行总线可能又被抬上“舞台”,像《PCIe“拍了拍”PCI- PCI和PCIe发展历史》这篇文章的演练历史一样。

PS:将来的DDR接口或许也会被串行总线所取代。。。(意淫ing)

这篇文章,没有过多的介绍串行总线,并不是串行总线并无缺点,高速的时钟带来的问题也很多,只不过后面要花大量篇幅介绍串行总线,以及他带来的问题及解决方式,所以这篇文章就没有进行过多介绍。

—END

(0)

相关推荐

  • 高速串行接口简介

    在计算机之间以及计算机内部各部分接口之间有两种数据传输方式:并行数据传输方式与串行数据传输方式. 并行数据传输方式通过多个通道在同一时间内传播多个数据流:而串行数据传输方式在同一时间内只传输一个数据流 ...

  • 串口基本知识

    一.什么是串口通讯? 举个例子,人与人之间的沟通可通过书面文件,语音或视频来交换信息.那么设备和计算机之间用来交换信息的桥梁是什么呢?那就是串口通讯.串口通信是以串行数字二进制形式用不同方法交换数据的 ...

  • I2C接口与SPI和UART接口的区别

    一.SPI I2C UART通信速率比较: SPI > I2C > UART 1.同步通信>异步通信; 2.同步通信时必须有一根时钟线连接传输的两端; 3.都是串行通信方式,并行通信 ...

  • 风电春秋十五载(1)-大浪淘沙,多少主机企业已经拍在沙滩上(2006-2007)

    2020年2月13日,彭博新能源财经公布2019年中国风电整机制造商新增吊装容量排名,2019年中国新增吊装容量高达28.9GW,相较于2018年增长37%.其中陆上风电新增26.2GW(数据统计口径 ...

  • 玩不转互联网的来伊份,被后浪拍在沙滩上?

    宅经济.单身经济.新消费等概念正在加速重塑产业格局,围绕这些概念,诞生了诸多的商业独角兽,休闲零售则是其中最瞩目的赛道之一.据机构预测,2022年中国休闲食品市场规模将破15000亿元,市场规模扩大的 ...

  • 大宋文坛第一“师门”,群星璀璨,没一个能把师父拍在沙滩上

    来源:诗词中国2012 "大江东去,浪淘尽,千古风流人物."(苏轼<念奴娇·赤壁怀古>) 大江东去的时候,是后浪推着前浪的. 但在人海当中,其实是"前浪&qu ...

  • 将史玉柱拍在沙滩上

    时有人说,不少70后互联网大佬,常夹在BAT与TMD之间受气.也是无奈,奋斗打拼多年,比上追不过BAT,结果又被TMD这些后起之秀给超车了. 更遑论60后. 江湖地位是有,走哪儿也都很受尊重.那些小一 ...

  • 90后的年纪,60后的身体,这届年轻人还能把“前浪”拍在沙滩上吗?

    2019年,在综艺<我和我的经纪人>中,杨天真在张雨绮面前,演示了如何自己注射胰岛素. 一年后,2020年8月11日,杨天真发布一则视频表示,因为无法很好地控制血糖,她决定去做切胃手术.她 ...

  • python爬虫04 | 长江后浪推前浪,Reuqests库把urllib库拍在沙滩上

    最近 有些朋友 看完小帅b的文章之后 把小帅b的表情包都偷了 还在我的微信 疯狂发表情包嘚瑟 我就呵呵了 只能说一句 盘他 还有一些朋友 看完文章不点好看 还来催更 小帅b也只能说一句 继续盘他 ok ...

  • 为什么Git把SVN拍在了沙滩上?

    Git和SVN是大家都比较熟知的版本管理,近几年Git越来越受到大家的喜欢. 下面就来分享下关于Git和SVN的内容.  Git vs SVN  Git 和 SVN 孰优孰好,每个人有不同的体验. 一 ...

  • 后浪是如何把前浪拍死在沙滩上的

    今天带娃去看了星际穿越. 一.上楼梯,我不知道是上6楼还是7楼,进电梯,她说7楼. 我问,你怎么知道的? 她说,我看了标志牌啊? 我说,我怎么没发现? 后来她在电梯里又指给我相同的标志牌. 二.看电影 ...

  • 长江后浪推前浪,小鹏P7的“黑科技”把比亚迪汉EV拍在了沙滩上!

     导语︱Lead  在智能纯电领域,当小鹏P7旗舰版遇上汉EV,两者难免要分个高下.那咱们就来对比看一看,这两款车究竟谁的自动驾驶技术更胜一筹? _ 撰文︱文迩 配图︱源自网络 编辑︱联 合 责编︱王 ...