2019年10月2日更新:本文撰写之后又有USB4面世,兼容雷电3,传输速率达到40Gb,由于USB-IF命名太过于脑残,于是我改变了各个标准名称的使用习惯。

0x00 背景

USB,即通用串行总线(Universal Serial Bus),最先由微软和Intel发起,后来苹果,NEC,惠普加入到了协议的制定当中。与早期的接口不同的是,USB接口具有极佳的兼容性与易用性,并且支持热插拔。这就意味着用户插入扩展设备时,一般不再需要重启设备或者手动安装驱动程序。

0x01 设计目标

·简单易用,无论标准更迭多少代,简单易用始终是宗旨。

·智能主控端、简单设备端”模式。

·提高速率,外围设备的要求速率不断提高,否则会出现延迟。例如USB 2.0定义的480Mbps速率,很多移动硬盘倘若因此陷入读写瓶颈,那就得不偿失了。

·兼容程度高,即便是最新的USB 3.2协议,也宣布向下兼容。然而,这种兼容需要下游厂商同时定制USB 2.0和USB 3.0控制器。但是嘛,这种组合方式在某Hub(compound devices方式)上存在问题,某些情况下会导致Windows弹出设备的bug。(神奇的Hub)

·高效灵活的电源管理管理标准。

0x01 USB标准

协议标准

·USB 0.7,1994年11月发布。

·USB 0.8,1994年12月发布。

·USB 0.9,1995年4月发布。

·USB 0.99,1995年8月发布。

·USB 1.0 RC,1995年11月发布。

·USB 1.0,发布于1996年1月,传输速率1.5Mbps(Low Speed),早期主要用于低速率要求人机接口设备,例如键盘,鼠标等外围设备。

·USB 1.1,传输速率12Mbps(Full Speed)。

·USB 2.0,传输速率480Mbps(Hi-Speed)。

·USB 3.1 Gen 1,传输速率5Gbps(Super Speed)。这里需要特别提醒,市面上的USB 3.1 Gen 1即代指传统意义上的USB 3.0。至于为什么没有USB 3.0,那是因为USB-IF在发布USB 3.1 Gen 2的时候,抹去了USB 3.0的概念。而USB 3.0至今仍然出现在很多厂商的文案当中,因此,还是说明一下USB 3.0。另外,USB 3.1 Gen 1开始,接口全部使用蓝色以标注高速接口。

·USB 3.1 Gen 2,传输速率10Gbps(Super Speed +)。其与Gen 1的最直观区别便在于带宽的提升,Gen 1中,使用8b/10b的编码,这就意味着只传输了8位的真实数据,编码损耗也就高达20%。而在Gen 2中,使用了128b/123b的编码标准,标准的提升,将损耗降低到了3%。

·USB 3.2,传输速率20Gbps(Super Speed +)。该标准允许两条10Gbps通道传输数据,但是嘛,只在Type-C传输线上生效。

接口标准

传统USB接口定义四组针脚,分别为V Bus(4.75V~5.25V),D+,D-,GND。在Mini USB上则定义了5组针脚,相比标准接口增加了ID针脚。

至于ID针脚的用处,目前只在OTG(On-The-Go)中使用,用于设备之间的识别。其中,当ID脚为高电平时,判断为Mini-B接口插入。ID针脚为低电平时判断Mini-A接口插入。

同时,值得一提的是,由于USB请求规定的地址长度是一个8 bit的数,因此,最大容纳USB设备量为127,但实际中由于供电或者外界干扰,一般扩展到了3级以上,连接质量就会受到波动。

emmm,公口和母口的区别,自己体悟吧。

接口类型

Type-A

标准大小

最常见的接口便是Type-A,家庭环境中常见于USB线缆与外围设备的连接。

Mini大小

目前已被弃用。

Micro大小

与Micro AB兼容。

Type-B

标准大小

常见于打印机端口的连接。

Mini大小

前些年较为流行的接口,emmmm,家里人管它叫烟灰缸?不过现在,因为体积过大,基本上只出没于功能机或者某些播放器。

Micro大小

QWQ,目前手机,充电宝使用最为频繁的接口,OPPO,VIVO也一直打磨的接口。

Type-AB

这种怪胎的出现是因为Type-AB母口可以同时兼容Type-A与Type-B两种公口,所以说,很方便是吧。。。😂(都是假象)

Mini大小

一样的命运,已被弃用。

Micro大小

同时兼容Micro-A与Micro-B两种公口。

Type-C

基于USB 3.0协议重新设计,标准的尺寸为8.3×2.5毫米,没有连接的时候,针脚呈中心对称,连接之后根据情况做出变化,因此此类接口可以正反盲插。(图源维基百科)

目前只出现在某些厂商的中高端机型上,emmm,至于OPPO,VIVO嘛,只出现在Find X和NEX上。但是,此种接口前景十分广阔,巨头苹果就砍掉了MacBook全系列的USB-A接口。巨硬的Surface Go上也首次出现Type-C接口。

USB 3.0下新定义的接口

其中包括USB 3.0 Type-A和USB 3.0 Type-B,以及USB 3.0 Micro B。其中,最别致的当属USB 3.0 Micro B(三星Note 3曾采用),其余两个接口均向下兼容。

0x02 扩展方案(基于Type-C接口)

(几种方案)

最值得关注的扩展方案便数Intel的Thunderbolt(中文翻译为雷电,霹雳)方案,当然也是外围设备扩展的最优解决方案和速度最快的解决方案(忽略价格)。雷电协议的前两代外部接口与Mini Display Port兼容,并没有使用还未登场的Type-C接口,直到了雷电3协议发布,Intel将雷电3接口修改为Type-C接口,接口速率也提升到了40Gbps。(图源Intel)

英特尔提供控制器的三个版本:

  • “DP”(Double Port)版本 : PCIe 3.0 ×4 提供2个 Thunderbolt 3 接口 (JHL6540)

  • “SP”(Single Port)版本 : PCIe 3.0 ×4 提供1个 Thunderbolt 3 接口 (JHL6340)

  • “LP”(Low Power)版本 : PCIe 3.0 ×2 提供1个 Thunderbolt 3 接口 (JHL6240)