USB2.0和USB3.0的区别

USB2.0还没学多少,USB3.0老大就开始准备着手了,怎伤的起????想看看USB2.0和3.0之间的一点区别吧。

 USB的一些基本概念

1. 管道(Pipe) 是主机和设备端点之间数据传输的模型,共有两种类型的管道:无格式的
流管道(Stream Pipe)和有格式的信息管道(Message Pipe)。任何USB 设备一旦上电就存在
一个信息管道,即默认的控制管道,USB 主机通过该管道来获取设备的描述、配置、状态,并
对设备进行配置。

2. 端点(Endpoint)是USB 设备中的可以进行数据收发的最小单元,支持单向或者双向的数据传
输。设备支持端点的数量是有限制的,除默认端点外低速设备最多支持2 组端点(2 个输入,2 
个输出),高速和全速设备最多支持15 组端点。

3. 接口(Interface) 。应用软件通过和设备之间的数据交换来完成设备的控制和数据传输。通常
需要多个管道来完成数据交换,因为同一管道只支持一种类型的数据传输。用在一起来对设备进
行控制的若干管道称为设备的接口.

4. 设备和端点之间关系: 一个USB 设备可以包括若干个端点,不同的端点以端点编号和方向区分。
不同端点可以支持不同的传输类型、访问间隔以及最大数据包大小。除端点0 外,所有的端点只支
持一个方向的数据传输。端点0 是一个特殊的端点,它支持双向的控制传输。管道和端点关联,和
关联的端点有相同的属性,如支持的传输类型、最大包长度、传输方向等。

5. 描述符(Descriptor) 描述设备的属性(Attributes). 它本身是一个数据结构, 第一个字节表示
描述符的大小(字节数), 第二个字节表示描述符的类型(Type). 描述符的种类有:
1) 设备描述符(Device), 描述一个设备的一般信息.
2) 设备修饰描述符(Device_Qualifier), 描述一个高速设备在其它速度下该如何变化的信息.
3) 配置描述符(Configuration), 描述一个特定的设备配置, 如接口的数目等. 一个USB设备有
一个或多个配置描述符. 每个配置有一个或多个接口并且每个接口有0个或多个端点.
4) 其它速度配置描述符(Other_speed_configuration), 描述高速设备在其它可能的速度下的
一个配置.
5) 接口描述符(Interface), 描述一种配置中的一个特定的接口. 
6) 端点描述符(Endpoint), 描述主机需要的去决定端点所需带宽的信息. 这个描述符只能附加
在GetDescriptor()或GetDescriptor()请求中传送, 不能单独传送. 端点0没有此描述符.
7) 字符串描述符(String), 第0个字符串描述符指定设备支持的语言, 其它的描述符则各包含
一个UNICODE字符串. 设备描述符, 配置描述符 和 接口描述符可能会包含字符串描述符.
6. USB设备请求(USB Device Request) 请求是从主机通过控制管道发送到设备. 
标准的设备请求有:
1) Clear Feature
2) Get Configuration
3) Get Descriptor
4) Get Interface
5) Get Status
6) Set Address
7) Set Configuration
8) Set Descriptor
9) Set Feature
10) Set Interface
11) Synch Frame

USB3.0系统拓扑结构

系统是最多只能有7层的树状结构, 最多只能支持127个设备和Hub, Host+RootHub永远是在第一层, 复合(Compound)设备一般占两层, 功能设备不能作为非叶节点, 只有Hub才可以.

USB3.0 Hub其实包含了一个USB2的Hub和一个SuperSpeed Hub

USB3.0的重要特性: 

1. 增加了一个重要的数据传输速率
2. 点对点方式传输包, 使活动链路数目达到最少
3. 异步方式的通知功能, 去除了轮询方式的必要
4. 基于链路级的电源管理, 这是总线结构的基础设计
5. 向后兼容USB2.0, 驱动级和物理层级别上都达到了兼容的目的

USB3.0与USB2.0的区别

1. 数据传输速率, 3.0是SuperSpeed 5.0Gbps, 
2.0是 1.5Mbps, 12Mbps或480Mbps

2. 数据接口,  3.0是全双工,独立于USB 2.0信号的四路差分信号,支持同时双向数据传输
2.0是半双工,双路差分信号, 单向数据传输, 需要事先协商好总路线的传输方向

3. 信号线数目, 3.0是4路SuperSpeed数据线, 2路HighSpeed数据线和2路电源及地线
2.0是2路LS/FS/HS数据线, 2路电源及地线

4. 总线事务协议, 3.0是主机主导的异步方式的传输流量控制, 包传输是能显式地进行路由
2.0是主机主导的轮询方式的传输流量控制, 包传输是通过广播方式到所有设备

5. 电源管理, 3.0是多级别的链路电源管理, 支持Idle, sleep和suspend状态
2.0是在端口级进行管理, 可以在entry/exit上有两种级别的挂机状态

6. 总线电源, 3.0是和USB 2.0差不多, 只是未配置的电源有50%的增幅, 已配置的电源有80%的增幅

7. 主机控制器,3.0用的是xHCI,2.0则是EHCI。xHCI中提供了虚拟化技术支持。

USB3.0电源状态

1. U0, Link active
2. U1, Link idle - fast exit. 退出延时us级
3. U2, Link idle - slow exit. 退出延时us-ms级
4. U3, Link suspend. 无时钟信号, 退出延时us-ms级

USB3.0数据包类型

1. Link Management Packets, 链路管理包, 仅发生在两个相连的端口之间,主要是用来进行链路管理
2. Transaction Packets, 事务包, 发生在设备和主机之间, 用来控制数据包的流量, 配置设备和Hubs. 它没有数据
3. Data Packets, 数据包, 发生在设备和主机之间. 它包括两部分:包头和实际数据. 其中数据部分还包括一个32位的CRC校验码来保证数据的完整性.
4. Isochronous Timestamp Packets, 同步时间戳包, 它是唯一的多播方式发送的. 发送方向是从主机到所有U0状态的设备.

USB传输类型

1. 控制传输(Control Transfers)
控制传输是一种可靠的双向传输,一次控制传输可分为三个阶段。

第一阶段为从HOST 到Device 的SETUP 事务传输,这个阶段指定了此次控制传输的请求类型;
第二阶段为数据阶段,也有些请求没有数据阶段;
第三阶段为状态阶段,通过一次IN/OUT 传输表明请求是否成功完成。

控制传输通过控制管道在应用软件和Device 的控制端点之间进行,控制传输过程中传输的数据是
有格式定义的,USB 设备或主机可根据格式定义解析获得的数据含义。其他三种传输类型都没有格式定义。

控制传输对于最大包长度有固定的要求。对于高速设备该值为64Byte;对于低速设备该值为8;全速设备
可以是8 或16 或32 或64。

2. 批量传输(Bulk Transfers)
批量传输是一种可靠的单向传输,但延迟没有保证,它尽量利用可以利用的带宽来完成传输,适合数据量比较大的传输。

低速USB 设备不支持批量传输,高速批量端点的最大包长度为512,全速批量端点的最大包长度可以为8、16、32、64。

批量传输在访问USB 总线时,相对其他传输类型具有最低的优先级,USB HOST 总是优先安排其他类型的传输,
当总线带宽有富余时才安排批量传输。高速的批量端点必须支持PING 操作,向主机报告端点的状态,NYET 
表示否定应答,没有准备好接收下一个数据包,ACK 表示肯定应答,已经准备好接收下一个数据包。

3. 中断传输(Interrupt Transfers)
中断传输是一种轮询的传输方式,是一种单向的传输,HOST 通过固定的间隔对中断端点进行查询,若有
数据传输或可以接收数据则返回数据或发送数据,否则返回NAK,表示尚未准备好。中断传输的延迟有保
证,但并非实时传输,它是一种延迟有限的可靠传输,支持错误重传。

对于高速/全速/低速端点,最大包长度分别可以达到1024/64/8 Bytes。高速中断传输不得占用超过80%的
微帧时间,全速和低速不得超过90%。中断端点的轮询间隔由在端点描述符中定义,全速端点的轮询间隔可
以是1~255mS,低速端点为10~255mS,高速端点为(2interval-1)*125uS,其中interval 取1到16 之间的值。

除高速高带宽中断端点外,一个微帧内仅允许一次中断事务传输,高速高带宽端点最多可以在一个微帧内进
行三次中断事务传输,传输高达3072 字节的数据。

4. 同步传输(Isochronous Transfers)
同步传输是一种实时的、不可靠的传输,不支持错误重发机制。只有高速和全速端点支持同步传输,高速同步端
点的最大包长度为1024,低速的为1023。

除高速高带宽同步端点外,一个微帧内仅允许一次同步事务传输,高速高带宽端点最多可以在一个微帧内进行三
次同步事务传输,传输高达3072 字节的数据。全速同步传输不得占用超过80%的帧时间,高速同步传输不得占用
超过90%的微帧时间。

同步端点的访问也和中断端点一样,有固定的时间间隔限制。

在主机控制器和USB HUB 之间还有另外一种传输——分离传输(Split Transaction),它仅在主机控制器和HUB 之间执行,通过分离传输,可以允许全速/低速设备连接到高速主机。分离传输对于USB 设备来说是透明的、不可见的。

<think>嗯,用户问的是如何将USB 2.0端口升级到USB 3.0,通过硬件或者驱动更新的方式。首先,我需要理清楚USB 2.03.0区别,以及升级的可能性。USB 2.03.0的硬件接口不同,3.0通常有更多的引脚,所以物理端口可能不一样。用户可能认为通过驱动更新可以升级,但实际上这可能吗? 根据引用内容,USB 2.03.0的识别方式不同,比如下行端口需要每隔100ms进行Rx Detect检测设备是否存在[^2]。这说明硬件层面的差异可能无法仅通过软件改变。另外,引用中提到,在Linux系统中可能需要特定的设置来启用USB 3.0,比如修改设备树或固件配置[^3],但这是否适用于所有主板呢? 用户的问题可能源于希望提升传输速度或充电速度,但根据引用[^1],USB 3.0端口的充电速度不一定更快,因为充电主要取决于电流,而USB 3.0的规范可能提供更高的电流,但实际实现可能因设备而异。不过用户的问题重点在于端口升级,而不是充电速度。 接下来,我需要考虑硬件升级的可行性。通常,主板的USB控制器决定了端口类型。如果主板本身没有USB 3.0控制器,添加PCIe扩展卡可能是解决方案。这需要用户检查主板是否有可用的PCIe插槽,并安装相应的扩展卡。此外,安装扩展卡后可能需要安装驱动程序,特别是在Windows系统中。 软件方面,驱动更新能否将USB 2.0端口变为3.0?根据引用[^2],识别过程是硬件相关的,所以仅靠驱动可能不够。但确保系统安装了最新的USB 3.0驱动可以确保兼容性,特别是在已有USB 3.0控制器的情况下。 另外,BIOS/UEFI设置中的USB配置可能需要调整,比如启用XHCI模式,这有助于支持USB 3.0。不过,如果主板硬件本身不支持,这些设置可能无效。 用户可能需要了解硬件限制,比如旧主板可能无法支持USB 3.0,必须通过扩展卡实现。而如果主板已有USB 3.0控制器但端口未被启用,可能需要固件更新或配置更改。 总结下来,硬件升级是主要途径,而驱动更新更多是辅助作用。需要分步骤解释这些方法,并指出可行性。同时,用户可能需要评估成本与收益,比如购买扩展卡是否值得,或者考虑更换主板或使用外设。</think>### 如何将USB 2.0端口升级至USB 3.0? #### 1. **硬件升级方案** - **PCIe扩展卡** 若主板支持PCIe插槽,可安装USB 3.0扩展卡。例如,购买PCIe转USB 3.0的扩展卡,插入主板空闲的PCIe插槽。完成后需安装对应驱动程序(如Windows系统需手动安装,Linux可能自动识别)。 ```bash # Linux系统安装扩展卡后,可通过命令检查是否识别 lsusb | grep "USB 3.0" ``` - **更换主板或外置扩展坞** 若主板老旧且不支持PCIe扩展,需更换支持USB 3.0的主板。或通过外置USB 3.0扩展坞(需设备支持USB 3.0协议)提升局部性能。 #### 2. **软件与驱动优化** - **更新主板驱动与固件** 部分主板厂商可能通过固件更新间接优化USB控制器性能(但无法将USB 2.0硬件升级至3.0)。例如,NVIDIA Jetson TX1设备需修改设备树启用USB 3.0功能。 - **检查操作系统兼容性** 确保系统支持USB 3.0协议。例如,Windows 8及以上版本默认支持USB 3.0驱动,旧系统需手动安装。 #### 3. **硬件限制与兼容性** - **物理接口差异** USB 3.0接口通常为蓝色,且引脚数多于USB 2.0(新增SSRX/SSTX差分信号对)[^2]。因此,仅通过驱动无法改变硬件物理特性。 - **充电与传输速度** USB 3.0端口可能提供更高电流(如900mA),但实际充电速度仍受设备限制[^1]。 #### 4. **验证升级结果** - **系统检测工具** 使用工具(如`USBView`或`lsusb -v`)查看端口协议版本。若显示`bcdUSB 3.00`,则表明成功识别USB 3.0。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值