(转自“服务器BMC”公众号)BMC芯片的功能——USB接口

图片

   祝大家双节快乐!

   外出游玩的路上,学习知识。这几天看手机多,频繁地使用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功能,最近还在学习了解。

    暂时想到这些,望专家批评指正,谢谢!

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值