怎样限制usb 的速度?

2024-12-12 16:06:33
推荐回答(2个)
回答1:

在BIOS里改变USB2.0的HISPEED模式。

回答2:

USB 2.0的规格是由包括Compaq、Hewlett Packard、Intel、Lucent、Microsoft、NEC及Philips的技术人员所共同订定的规格。它向下与USB1.1兼容,且新推出高速(high speed)规格,速度为原USB1.1全速(full speed)的40倍。USB2.0在接线、接头及软件接口均与USB 1.1模式相同。对于需要较高速的周边包括下一代的扫描仪、数字相机、烧录器、及各式的储存装置而言,由于有相同的容易安装使用的特性,USB2.0在各种的可用的接口中,应该是最佳的选择。
通用序列总线(Universal Serial Bus)采用中央主控制器架构(host-centric architecture),专门为PC外围组件的扩充所设计。在USB的分层式架构(tiered-star)中,所有的传输流量都由固定连结埠(root hub)负责管理。现在的PC都已经将USB1.1的固定连结端口建置在主机板的芯片组上,而USB2.0的连接则可透过PCI扩充卡进行升级,此外,目前亦已有不少系统厂商及主机板厂将USB2.0的固定连接端口直接建置在主机板上。

USB的四种传输类型

USB目前支持三种传输速度:低速的1.5Mbps、全速的12Mbps、高速的480Mbps,USB1.1的固定连结端口可以连接所有速度的周边,但当高速的装置连结在USB1.1连结埠上时,仅能表现出12Mbps的速度。USB2.0的固定连结端口可以连结三种速度的周边装置,并确保所有USB应用硬件间的兼容性。
USB的传输类型共有四种,分别是控制型传输(Control Transfer)、中断型传输(Interrupt Transfer)、巨量型传输(Bulk Transfer)以及实时型传输(Isochronous Transfer)。其中,需要特别注意的是慢速装置仅支持控制型传输与中断型传输而已。以下将分别简述各个传输的特性。

控制型传输

属于双向传输,用来支持介于主机与装置之间的配置,命令或状态的通讯。控制型传输包含了三种的控制传输型态:控制读取、控制写入以及无数据控制。其中,又可再分为2~3个阶段:设定阶段、数据阶段(无数据控制没有此阶段)以及状态阶段。在数据阶段中,数据传输(IN/OUT执照封包)是以设定阶段中所订定的为方向作数据传输,而在状态阶段中,装置将传回一个交握封包给主机。
而每一个USB装置需要将端点0作为控制传输的端点,每当装置第一次连接到主机时,控制型传输就可用来交换讯息,设定装置的地址或是读取装置的描述元与要求,由于控制型传输非常的重要,所以USB必须确保传输的过程没有发生任何的错误。这个侦错的过程可以使用CRC(Cyclic Redundancy Check;循环检核)的错误检查方式,如果这个错误无法恢复的话,只好再重新传送一次。

中断型传输

由于USB不支持硬件的中断,所以必须靠PC主机以周期性地方式加以轮询,以便知悉是否有装置需要传送数据给PC。由此也可知道,中断型传输仅是一种「轮询」的过程,而非过去我们所认知的「中断」功能。而轮询的周期非常的重要,因为如果太低的话,数据可能会流失掉,但反之太高的话,则又会占去太多的总线的频宽。
对于全速装置(12Mbps)而言,端点可以订定1ms至255ms之间的轮询间隔。因此,换算可得全速装置的最快轮询速度为1KHz。另外对于低速的装置而言,仅能订定10ms至255ms的轮询间隔,如果因为错误而发生传送失败的话,可以在下一个轮询的期间重新再传送一次,而应用这类型传输的有键盘,摇杆或鼠标等称之为人机接口装置(HID)。其中,键盘是一个很好的应用例,当按键被按下后,可以经由PC主机的轮询将小量的数据传回给主机,进而了解到那个按键刚被按下。

巨量型传输

属于单向或双向的传输,顾名思意,这类型的传输是用来传送大量的数据。虽然这些大量的数据须准确地传输,但是并无传输速度上的限制(即没有固定传输的速率)。这是因为这类型的传输是针对未使用到的USB频宽提出要求的,而根据所有可以使用到的频宽为基准,不断地调整本身的传输速率。如果因为某些错误而发生传送失败的话,就重新再传一次,应用这类型的传输装置有:打印机或扫描仪等。其中,打印机是一个很好的应用例,它须要准确地传送大量的数据,但却无需实时地传送。

实时型传输

可以是单向或双向的传输。此种传输需要维持一定的传输速度,且可以默许错误的发生。它采用了事先与PC主机协议好的固定频宽,以确保发送端与接收端的速度的速率相互吻合。而应用这类型的传输装置有:USB麦克风、喇叭或是MPEG I等装置,如此可以确保播放的频率不会被扭曲。

USB 拓璞(图一)

USB 2.0频宽计算

USB的传输过程是以讯框为基础的。在USB1.1旧式规格中,每一个讯框的长度是1ms,并以个别的传输模式为基础,所有的装置以每个讯框为单位各自分配适当的频宽与服务。新的USB2.0中的高速传输规格则将每个讯框在分割成8个微讯框,在每个微讯框中,各种传输模式各自分配适当的频宽进行传输服务。
USB的频宽是透过每个讯框可以承载多少的封包量来计算,四种USB的通讯模式皆可透过这样的基本公式计算出预估的传输值。

Ntrans=INT[BW/(8*(PL+OH)*FR)]
BW:USB频宽,单位为bps
PL:端点承载(Endpoint payload),单位为字节(bytes)
OH:通讯协议资源负荷(Protocol overhead),单位为字节(bytes)
FR:USB讯框传输速率,单位为每秒的讯框数量(frame/sec)

若传输装置使用高速型512字节的巨量传输端点进行数据传输,每一个讯框的传输封包数量计算如下:

Ntrans=INT[480x106/(8*(512+55)*8000)]=13

所以当使用巨量传输且使用512字节端点的真正最大频宽为:

BW=Ntran*8*512*8000=426Mbps

由计算出来的结果可以知道,高速巨量传输的传输效能可以达到USB2.0最高传输效能的88.75%。

参考:http://www.eedesign-cn.com/article/design/384.htm