
祝大家双节快乐!
外出游玩的路上,学习知识。这几天看手机多,频繁地使用USB接口(尤其是type-C),就顺便找资料研究了一下USB(通用串行总线)。
一、从 1.5Mbps 到 40Gbps:USB 协议的发展历史
USB协议自 1996 年诞生以来,它的演进史本质上是一部“速度与功能的突围史”:
1. 奠基时代(USB 1.0/1.1)
作为初代标准,USB 1.0 确立了两大核心优势:即插即用与统一接口,彻底终结了键盘、鼠标等外设依赖专有接口的混乱时代。其提供 1.5Mbps 低速与 12Mbps 全速两种模式,虽速率有限,却通过 4 引脚设计(电源 Vbus、地线 GND、差分数据 D+/D-)奠定了基础架构。
其中包括了USB HID 协议, Human Interface Device,属于 USB 协议中最早定义、最广泛使用的一个“设备类”(Device Class)。直译就是“人机接口设备”,本质上是一套“让电脑识别并即插即用键盘、鼠标、游戏手柄、条码枪、触控屏……”的通信规矩。
2. 普及时代(USB 2.0)
2000 年推出的 USB 2.0 实现了关键突破:将高速模式速率提升至 480Mbps,是前代的 40 倍,足以支撑音频、视频等大流量传输。更重要的是引入OTG 功能,允许设备摆脱主机直接通信,同时完善了热插拔机制,成为至今仍在广泛使用的经典标准。
3. 高速时代(USB 3.x 系列)
USB 3.0(3.1 Gen1):速率跃升至 5Gbps(超高速模式),功率输出提升至 5V/900mA,可驱动高速移动硬盘等设备;
USB 3.1 Gen2:速率翻倍至 10Gbps,功率升级到 20V/5A,支持快充与超高速存储;
USB 3.2 Gen2x2:借助双通路设计实现 20Gbps 速率,专为多路视频采集等专业场景优化。
实际USB 3.x定义挺乱的,各家说法都不同。
4. 融合时代(USB 4)
2019 年发布的 USB 4 整合雷电 3 技术,速率达到 40Gbps,支持视频信号传输与 PD 快充,通过 Type-C 接口实现「一线通」—— 既能连接显示器,又能给设备充电,还能传输超大型文件,成为服务器等高端设备的新选择,也是USB发展的方向。
二、USB传输协议定义:
1、物理层:4根线搞定一切
VBUS(5 V供电)、GND(地)、D+/D-(差分数据)。
低速1.5 Mbps、全速12 Mbps、高速480 Mbps、超高速5/10/20 Gbps,速率靠D+/D-的阻抗与电平切换实现。
2、数据层:三种包搭起“高铁”
令牌包(谁说话)、数据包(说什么)、握手包(答不答应)。
每帧1 kHz(高速为125 µs微帧),主机轮询,设备不能主动“抢话筒”。
3、协议层:描述符决定“身份”
设备描述符→“我是键盘还是U盘”;配置/接口/端点描述符→“我要多少带宽、几口管道”。
控制传输必须支持,中断/批量/等时传输按需出现。
一句话总结:USB=“供电+差分数据+主机轮询+描述符自报家门”,把复杂外设变成“即插即用”。
三、服务器BMC芯片的UBS接口应用
在我接触BMC应用的有限时间经历中,USB接口应用的场景好像并不多。记得到2600有2个USB2.0对外接口,到2700达到5个对外接口,甚至包括了USB3.0。想到的应用大概如下:
1、KVM over IP功能:之前文章介绍过KVM就是键盘、视频、鼠标(keyboard+video+mouse)。键盘和鼠标就是BMC通过USB接口与主机通信,这里是device接口。BMC内置USB Device控制器,把远程IPMI/RNDIS数据包封装成USB HID/MSC事务,再注入到主机USB总线,主机以为“键盘就在面前”,实现了“云键盘/云鼠标”对服务器的控制。
2、虚拟媒体部署:将存有系统镜像的 U 盘插入本地电脑接口,通过 KVM 技术(虚拟键盘鼠标)读取镜像,远程重装系统或修复驱动;
3、LAN-over-USB:把“网线”做进USB线里。Ethernet-over-USB(RNDIS/cdc_ether),BMC扮演“USB网卡”,OS端看到一条新的ethX,IPMI/Redfish走这条链路做带内管理,即使主网口没配地址也能刷固件。
4、与服务器其他组件进行管理数据交互:当前BMC与硬件上其他部件数据交互多是i2c、SPI、UART等低速接口,随着数据交互量的增多,以及待升级固件程序越来越大,对BMC接口带宽要求越来越高,像PCIe、USB等这些高速接口势必在BMC上有更多的应用;
5、虚拟外设共享:BMC 可将接入自身 USB 口的 U 盘、键盘等设备,通过虚拟 USB 技术映射到服务器主机PCIe接口供使用,解决主板 USB 接口不足的问题。也可以实现主机USB接口映射到BMC的PCIe接口来扩展主机的接口。
6、实现视频显示,如前面提到的USB3.2功能,最近还在学习了解。
暂时想到这些,望专家批评指正,谢谢!

被折叠的 条评论
为什么被折叠?



