USB HUB简述

概述

在这里插入图片描述
hub,集线器,连接在host与device之间的一种用于usb接口扩展的usb设备。可以将一个usb上行接口扩展为多个下行接口,使得一个host可以同时与多个device连接。

一般来说,一块hub桥接芯片可扩展4个usb接口,而市面上的一拖七hub,其实使用了两块hub桥接芯片,其中一块hub桥接芯片的上行端口连接到另一块hub桥接芯片的下行端口。
在这里插入图片描述
hub的上行端口面向host,下行端口面向device。在下行端口上,hub提供了设备接入检测和设备移除检测的能力,并给下行端口供电。hub可单独使能各下行端口。不同的端口可工作在不同的速度(H/F/L)。

数据传输

在这里插入图片描述
在这里插入图片描述
host与hub之间使用的还是high speed bus,而hub与device之间使用的是full/low speed bus。

host-hub间的数据流:
在这里插入图片描述
hub-device间的数据流:
在这里插入图片描述
需要注意的是,host与hub之间的IN数据流,在complete split阶段的data0之后,是没有handshake的,但hub与device之间还是有handshake的。

SPLIT-分离传输

分离传输仅在host和hub之间执行,通过分离传输,可以允许全速/低速设备连接到高速主机。

分离传输对于device来说是透明的不可见的。

分离传输:将一次完整的事务传输,拆分成两个事务传输。其出发点是高速传输和全速/低速传输的速度不相等,如果使用一次完整的事务来传输,势必会造成比较长的等待时间,从而降低了高速USB总线的利用率。通过将一次传输分成两次,将令牌(和数据)的传输与响应数据(和握手)的传输分开,这样可以在中间插入其他高速传输,从而提高总线的利用率

在这里插入图片描述
分离传输将一次完整的IN请求事务拆分为两次事务传输,分别为发送令牌包的SSPLIT事务传输、接收数据包的CSPLIT事务传输。
在SSPLIT与CSPLIT之间,可以插入了一次其他device的IN请求。也就是说,分离传输允许在不超过最大响应时间的前提下,分离传输的两次事务之间可以适当插入其他的传输事务,提高总线利用率。

1)SSPLIT-start split
在这里插入图片描述
PID:0~3 bit为包标识字段的包类型,4~7 bit为包类型字段的校验补码。
在这里插入图片描述
Hub address:支持指定的全速/低速设备的hub的设备地址,用于全速/低速事务。
SC:start/complete,为0时表示SPLIT传输事务的SSPLIT。为1时,表示SPLIT传输事务的CSPLIT。
Hub port:全速/低速事务所针对的目标中心的端口号,即对应hub的端口号。
S:speed,此中断或控制事务的速度。S为1时,低速。S为0时,全速。
E:在块传输、中断传输和控制传输中,无须传输方向,所以E置为“0”。对于同步传输,如果是IN传输则E=0,如果是OUT传输,则按下表进行选择。
在这里插入图片描述
ET:Endpoint type,当前端点的传输类型,不同值代表的如下。

在这里插入图片描述
CRC-5:循环冗余校验。

2)CSPLIT-complete split

在这里插入图片描述
U字段:值固定为“0”,保留。其他字段同上。

控制传输(SPLIT)

SPLIT的控制传输事务根据数据流方向分为两种,OUT传输事务和IN传输事务。
在这里插入图片描述
SPLIT控制传输OUT事务示意:
在这里插入图片描述
SPLIT控制传输IN事务示意:
在这里插入图片描述

中断传输(SPLIT)

在这里插入图片描述
SPLIT中断传输事务示意:
在这里插入图片描述
host发送IN请求后,device没有准备好数据时,给host回复NAK。当device已经准备好数据,IN请求后,device上传数据给host,host接收后回复ACK。

块传输(SPLIT)

同步传输(SPLIT)

  • 22
    点赞
  • 154
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
FPGA USB Hub是一种利用现场可编程门阵列(FPGA)技术设计的USB集线器。USB集线器是一种允许多个USB设备与计算机连接的设备。FPGA是一种芯片,可以被重新编程来执行不同的功能。 FPGA USB Hub通过结合FPGA和USB技术,提供了更高级的集线器功能。它可以同时连接多个USB设备,并将其连接到计算机。与传统的USB集线器相比,FPGA USB Hub具有更高的处理能力和灵活性。 使用FPGA技术设计的USB集线器具有多种优点。首先,由于FPGA的可编程性,用户可以根据特定需求对FPGA USB Hub进行定制,并灵活地调整并更新功能。这使得FPGA USB Hub适用于不同类型的USB设备和应用场景。 其次,FPGA USB Hub具有更快的数据传输速度和更低的延迟。由于FPGA的高性能计算能力,它可以更有效地处理USB设备之间的数据传输,提供更快的响应时间和更高的数据传输速度。 此外,FPGA USB Hub还可以与其他外部设备或接口进行集成,以实现更复杂的功能。例如,它可以与嵌入式处理器或其他外围设备连接,通过FPGA的可编程性,实现更丰富的功能集成。 最后,FPGA USB Hub还可以提供更高的安全性。它可以实现对连接的USB设备进行认证和加密,防止未经授权的访问和数据泄露。 综上所述,FPGA USB Hub具有更高级的功能、更高的性能和更强的灵活性,适用于各种USB设备和应用环境。它是USB集线器领域的一种创新解决方案,有助于改善数据传输速度和连接性能。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值