通用串行总线(USB)是一个主机中心型的即插即用总线。逻辑USB总线利用一种物理上分层的星型拓扑结构将USB设备和USB主机相连接。该系统在每个星型的中心都有一个带有集线器的主机。集线器将单个连接点(端口)转换成为多个连接点。一个集线器的上行端口将该集线器连向主机。一个集线器的每个下游端面端口都允许连接到另一个集线器或功能单元。集线器能够检测在每个下游端面端口的连接和分离。每个有线段都是在主机和一个集线器或功能单元,或者连接到另一个集线器或功能单元的一个集线器之间的点对点连接。功能单元是一个能经由总线传送或接收数据、或者控制信息,并且由此向该系统提供功能的USB设备。功能单元的例子包括:诸如鼠标、书写板或光笔等定位设备、诸如键盘或扫描仪等输入设备、诸如打印机或数字扬声器等输出设备、以及一个电话适配器。每个功能单元都包含描述其性能和资源需求的配置信息。在一个功能单元能够被使用之前,主机必须对它进行配置。这个配置包含:分配USB带宽以及选择功能单元特有的配置选项。
在每个点对点段上USB经由用D+和D-表示的两条线传送信号。USB核心规范1.0、1.1定义了一种低速模式和一种全速模式,分别在1.5Mb/s和12Mb/s的位速率下进行操作。为了提供保证的输入电压电平和适当的终端阻抗,在电缆的每个末端都使用了偏压终端负载。这些终端负载也允许检测在每个端口的连接和分离,并通过在电缆下行末端上负载电阻的位置来区分全速和低速设备:
—全速(FS)设备是以负载电阻置于D+线路上进行中断的;
—低速(LS)设备是以负载电阻置于D-线路上进行中断的。
USB设备可以随时连接到USB上或是从USB分离。因此,系统软件必须适应在物理总线拓扑结构方面的动态变化。总线点查是识别连接到一总线上的设备并向它们分配唯一地址的活动。总线点查还包含对设备移去的检测和处理。集线器具有状态指示符,用来指示在它的一个端口上一个USB设备的连接或移去。主机查询该集线器以检索这些指示符。在连接情况下,主机通过USB设备在缺省地址的控制管道来启动该端口并为该设备分配地址。主机为该设备分配一个唯一的USB地址,然后确定该最近连接的USB设备是一个集线器还是一个功能单元。如果连接的USB设备是一个集线器,而且有多个USB设备连接到它的多个端口上,则为每个连接的USB设备分别接着进行上述的过程。如果连接的USB设备是一个功能单元,则由适于进行该操作的主机软件处理该连接指示。
发送一个功能单元的连接和断开连接信号的过程如下。当没有功能单元连接到主机或集线器的下游端面端口时,在那儿出现的下拉电阻会使D+和D-被拉低到那个端口不由该集线器驱动时的主机或集线器端口的单端低阈值之下。通过为FS和LS设备检查D+和D-状态来进行一个新的连接或断开连接检测。当没有连接时,集线器下游端面端口的接收器为单端零值SEO(即D+=D-<阈值,即逻辑0)。当连接了一个FS设备时,在D-保持逻辑0的同时该接收器会知道D+有一个从逻辑0到逻辑1的变换。总线的相应空闲状态是D+=1以及D-=0。同理,当连接了一个LS设备时,在D+保持逻辑0的同时,该接收器会知道D-有一个从逻辑0到逻辑1的变换。总线的相应空闲状态为D-=1以及D+=0。在断开连接的情况下,对于一个FS设备,集线器下游端面端口(设备连接的地方)接收器会感知有一个从(D+,D-)=(1,0)到(D+,D-)=(0,0)的总线状态转换,而对于一个LS设备,该接收器会感知有一个从(D+,D-)=(0,1)到(D+,D-)=(0,0)的总线状态转换。如果主机或集线器没有驱动数据线而且SEO在一下游端面端口上持续超过2.5秒,就指示一种断开的情况(TDDIS)。当集线器检测到一条数据线被拉到它的VIH阈值之上超过2.5s时,就检测到连接情况(TDCNN)。
如上所述,主机启动该点查过程。USB规范没有定义一个设备能够请求主机重置和重新点查该设备的方法。然而在某些应用中,例如由于设备的功能性变化,这个重新点查是必须的。实现这个重新点查的最直接方法是:首先断开该设备,然后将它重新连接到该集线器的下游端面端口。然而,对某些应用来说,它要求甚至需要能通过设备的固件控制而不是通过人工干预来模拟这个先断开-再连接的过程。这个模拟能够通过将连接到D+线路(对一个FS设备来说)或D-线路(对一个LS设备来说)的负载电阻先切断(即使该终端负载无效)、然后将其接通来进行。
USB2.0规范定义了一种在接近于480Mb/s的速率下进行操作的高速(HS)设备。该HS设备是除低速和全速设备之外的设备。对一个HS设备来说,用于正常操作的终端从单条数据线变成了一个并行终端。当一个HS设备连接到一个集线器下游端面端口时,该设备总是接通它的D+负载电阻,就如同一个FS设备那样,然后以与一个FS设备相同的方法进行对新连接的检测。该集线器将重置这个新设备,然后在该重置期间在已经经过了一个预定的“线性调频脉冲”过程之后,该设备将会切换成并行终端。在正常HS操作下,使用该并行终端,而且相应的空闲状态为SEO。因此空闲状态和断开连接状态之间没有区别,都处于SEO状态。为HS设备断开连接检测定义了下列机理:如果该设备被断开了,则由集线器发送器传送到该装置的一个常量信号将会被反射回来,而且该集线器接收器将会在电缆往返时间的延迟之后感知到一个振幅超过最大容许数据信号等级的差分信号。这个超过标准的信号电平用来可靠地检测断开。
本发明的目的是模拟设备在同一个下游端面端口(downstream-facing port)的断开连接,其中该模拟能够以一种固件控制的方法进行,而不必由人工干预。
为了实现本发明的这个目的,该即插即用通信系统包含一个经由一个有线分段连接到另一个设备/集线器的设备;该系统支持在至少第一速度模式(FS)和第二较高速模式(HS)下的通讯;该设备为这两种速度模式分别包含相应的第一和第二装置用以中断该有线分段;当在第二速度模式下操作时,通过激活中断该有线分段的第一装置,可操作该设备用于模拟断开连接该设备的过程。除了可能存在的第二中断装置之外,激活第一中断装置,在第二模式内的通信中断就不再符合要求了。连接到该分段另一端的另一设备或集线器就能够检测出这个偏差。通过使用无论如何都存在于这两种工作模式设备中的第一中断装置,就可以以一种简单的方法实现在这个终端负载中的偏差。短语“另一设备/集线器”是指在该分段另一端连接的节点。在USB中,这个节点被称作一个集线器。在其它系统中,这样的一个节点在功能上和一个设备相同。
如从属权利要求2中定义的那样,最佳情况是在该分段另一端的设备(或集线器)检测到终端负载超过了第二模式通信的极限,然后开始一个重新连接过程以确定一个新设备或同一个设备是否已经连接上以及该设备能够以何种速度进行操作。
如从属权利要求3中定义的那样,第二模式终端负载是无效的,使该设备的终端负载进入第一个速度模式的极限,并为该重新连接过程提供一个良好定义的和好起始点。
如从属权利要求4所定义的那样,对于一个USB FS设备来说,用于第一速度模式(FS)的终端负载是一个阻抗,诸如耦合在一条数据线和一个电源电压之间的负载电阻。更可取地是使用一个可控开关来启动/取消该电阻的连接。包含D+负载电阻事实上相当于一个开口端,以允许对一个断开连接的可靠检测。
如从属权利要求6定义的那样,对于一个USB HS设备来说,通过经由两个匹配电阻让该FS驱动器产生一个SEO信号来获得用于第二速度模式(HS)的终端负载。通过中止该驱动器能够实现中止该终端负载。
本发明的目的可以通过提供一个在即插即用通信系统中使用的设备来实现,其中:该设备经由一个有线段和另外一个设备/集线器相连;该系统至少支持以第一速度模式和第二较高速模式进行通信;该设备为每个相应的速度模式分别包含一个相应的第一和第二装置用于中断该有线段;在该设备以第二速度模式操作时,通过激活中断该有线段的第一装置,操作该设备以模拟断开连接该设备。
本发明的目的还可以通过提供一种用于在一个即插即用通信系统中模拟断开一个设备的方法来实现,其中该设备经由一个有线段和另外的一个设备/集线器相连;该系统至少支持以第一速度模式和第二较高速模式进行通信;该设备为每个相应的速度模式分别包含一个相应的第一和第二装置用于中断该有线段;该方法包含当以第二速度模式进行操作时,通过激活中断该有线段的第一装置,模拟断开连接该设备。
参考在附图中显示的实施例,本发明的这些方面及其他方面将变得明显并被阐明清楚。
图1显示了一个依据本发明的即插即用通信系统。本发明将对USB总线进行详细描述。可以理解在所属领域技术人员的技术范围内可以有许多变化。例如,参考在USB内的信号电平和终端负载类型。模拟断开连接和触发重新连接的相同原理可以同样用于其它的信号电平及其他的终端负载类型。显示的通用串行总线(USB)是一个以主机为中心的即插即用总线。逻辑USB总线使用一个物理上分层的星形拓扑结构将USB设备和USB主机相连。该通信系统在每个星形中心包含一个主机110和集线器110、120、130、140、150。一个根集线器160集成在主机系统内。一个集线器的上行端口将该集线器向主机方向相连。一个集线器的每个下游端面端口允许连接到另一个集线器或者一个功能单元。每个有线段都是在主机和一个集线器或功能单元,或者连接到另一个集线器或功能单元的一个集线器之间的点对点连接。功能单元170、171、172、173、174、175、176是USB设备,其能够通过总线传送或者接收数据或者控制信息,并且由此向该系统提供性能。一个功能单元一般作为一个单独外围设备来实现,该设备具有一根插入到集线器一个端口上的电缆。然而,一个具有单根USB电缆的物理包可以实现多个功能单元和一个嵌入的集线器。这被称为一个复合设备。在主机看来,一个复合设备可以看成是一个具有一个或多个不可移动USB设备的集线器。每个功能单元包含配置信息以描述它的性能和资源需求。在能够使用一个功能之前,主机必须配置它。这个配置包含分配USB带宽和选定功能单元特有的配置选项。
如图2所示,USB通过一条四线电缆传输信号和电源。在每个点到点分段上,信号出现在由D+和D-指示的两条线上。USB核心规范1.0、1.1定义了一种低速和一种全速模式,分别以一个1.5Mb/s和12Mb/s的比特率进行操作。对时钟进行传送,并与不同数据一起进行编码。时钟编码方案是具有位填充的NRZI,以确保足够的变换。在每个包之前的一个SYNC域允许接收器同步它们的比特恢复时钟。该电缆还在每个段上包含VBus和GND线用于向设备传递电源。为了提供保障的输入电压电平和合适的终端阻抗,在每根电缆的末端都使用了偏压终端负载。该终端负载还允许在每个端口上检测设备的连接和移去,以及在全速和低速设备之间的区别。图3A和3B分别显示了在集线器和功能单元末端中断的USB全速和低速设备。按负载电阻在电缆下行端的位置来区分全速和低速设备。
-如3A所示,在D+线上有负载电阻RPU时中断全速设备;
-如3B所示,在D-线上有负载电阻RPU时中断低速设备。
在图3A和3B中,在左侧的端口310、312(在一个较高层中)要么是一个集线器端口要么是一个主机端口。在图3A右侧的高速端口314要么是一个集线器上行端口要么是一个全速功能单元。在图3B右侧的低速端口316是一个低速功能单元(在USB中一个集线器的一个上行端口不可以以低速进行操作)。收发器320和322能够既以高速又以低速进行操作。收发器324是一个高速收发器。收发器326是一个低速收发器。RPD表示在下游端面端口中接地的下拉电阻。
图4说明了USB2.0高速收发器的一个最佳实现,其中大量使用了USB1.1收发器的组件并且添加了HS操作需要的新组件。高速操作支持以480Mb/s传输信号。为了在这个速率下获得可靠的信号传输,该电缆在每个末端用一个从每条线到地面的电阻进行中断。这个电阻值(在每条电上)在标称上被设置为电缆指定差动阻抗的1/2,即45欧姆。这表示一个90欧姆的差动终端负载。以HS模式操作的一个收发器的静止状态是没有信号施加到Data+和Data-线上的终止状态。获得这个状态的推荐装置是使用该LS/FS模式驱动器来确认一个单端零(SEO),并且紧紧控制该驱动器输出阻抗和Rs电阻490的组合总数(标称45欧姆)。推荐的实践是使驱动器阻抗尽可能地低,并且让Rs490尽可能达到45欧姆。这一般将导致最好的终端负载准确度和最小的附加负载。
为了进行传输,收发器激活一个来自于其正电源电压的一个内部电流来源,并且经由一个高速电流导引开关将这个电流导到两条数据线的一条里。按照在USB1.1规范中描述的NRZI数据编码方案以及位填充动作动态切换这个电流到Data+或者Data-线里。为了发布一个J信号,将电流导到Data+线里,而为了发布一个K信号,将该电流导到Data-线里。已经为HS模式修改了SYNC域和EOF分界符。
参考图4,依据用于LS和FS操作的USB1.0/1.1规范,一个LS/FS驱动器420用于LS和FS传输,除了在一个用于HS收发器的例子以外,每个输出的阻抗,包括Rs的贡献,都必须是45欧姆+/-10%。当收发器以HS模式操作时,这个驱动器必须确认一个SEO。这在每条数据线上都提供了一个到地45欧姆的良好控制的HS终端负载。
一个HS电流驱动器410用于HS数据传输。源自一个正极电源的一个电流源被切换到Data+或者Data-线以分别发送一个J或者K信号。该电流源的额定值为17.78毫安。当这电流应用于一条在每个末端都有一个45欧姆终端负载的数据线上时,标称的高电平电压是+400毫伏。因此对于J信号,标称的差动HS电压(Data+-Data-)是400毫伏,而对于K信号差动HS电压是-400毫伏。从发送一个包的第一个符号开始,该电流源必须满足要求精度。实现这一点的一种方法是当一个收发器在HS模式下操作时持续地提供该电流源。如果使用了这种方法,当收发器没有发送时,该电流就能够被导向端口地面(在图4中设计的例子显示了一条被称作HS-Current-Source-Enable的控制线来接通该电流,以及另一个被称作HS-Drive-Enable的控制线将电流直接导入到该数据线里。)这种方法的不足之处是为该系统中每个这样启动的收发器提供17.78毫安的稳定电流。最佳设计是当该收发器不发送时完全关闭该电流源。
在HS模式中操作的一个收发器的静止状态是让LS/FS驱动器保持在它单端零状态(以便提供需要的终端负载),而且让HS电流源处于一个该电源是活动的状态,但是该电流被导入到设备地端中,而不是通过电流导引开关用于数据传输。导引电流到地端中伴随着设置HS-Drive-Enable为低。当一个在HS模式中操作的收发器开始传输时,该传输电流从设备地端重定向到电流导引开关。这个开关又导引该电流到Data+或者Data-数据线。通过引导电流到Data+线确认一个J信号,而引导电流到Data-线确认一个K信号。当每一条数据线都利用一个到设备地端45欧姆的电阻进行中断时,在每一端上的有效负载电阻是22.5欧姆。因此,驱动电流导入的线上升到17.78毫安×22.5欧姆,即400毫伏(标称)。另一条线保持设备地端电压。当该电流被导向到相反的线时,这些电压是相反的。
依据USB1.0/1.1规范一个LS/FS差动接收机450用于接收LS和FS数据。单端接收器470也符合这些规范。
一个HS差动数据接收机430用来接收HS数据,其具有一个标称的差动振幅+/-400毫伏。如图4所示,这个接收器必须能够由一个传输包络探测器440停用。这是一个要求,因为一个HS连接的静止状态是:在每一末端的接收器是活动的,而数据线保持在地端。在这种情况中,接收器对噪音或者寄生信号非常敏感,因此需要一个″静噪电路″装置。让收发器设计师来选择结合单独的HS和LS/FS接收器,如图4所示,或是把两个功能集成到单个接收器中。当差分信号的振幅低于用于数据接收所需的最低电平时,传输包络探测器440用来停用该HS接收器440。必须有一个足够的响应时间允许接收器恢复一个包的头四个标志。当差分信号振幅低于一个在100毫伏到150毫伏范围内的一个阈值时,该接收器必须中止接收。(这意味着:需要用小于100毫伏差动振幅的信号进行中止,以及需要大于150毫伏差动振幅的信号进行启动。)
在上行收发器中仅仅需要一个负载电阻(RPU)480,其用于表示信号传播速度性能。当在一下游端面端口中使用时,一个HS收发器必定能够在LS、FS、或者HS信号模式中操作。当在一个上行端口中使用时,收发器必须能够在FS或者HS模式中操作。依据USB2.0规范,一个上行HS收发器可以不必在LS信号模式中操作。因此在一个用于HS的收发器中不允许在Data-线上使用一个1.5k的负载电阻480。一个HS设备起初要求使用在USB1.1规范中描述的技术,象一个FS设备一样进行连接。这意味着对于HS上行端口,RPU(1.5k+/-5%)必须通过一个开关从Data+连接到3.3V电源,该开关能够在SW控制下打开。在初始连接之后,HS收发器介入一个低级协议来建立一个HS连接并且在适当的端口状态寄存器中指示HS操作。这个协议涉及从电路中用电力删除该1.5k欧姆的电阻480。在图4中,一条被称作Rpu_Enable的控制线用于这个目的。通过设置Rpu_Enable为低(打开开关485)来删除这个电阻。该协议还涉及通过设置Assert-Single-Ended-Zero和LS/FS-Driver-Output-Enable位为高,来提供到地的Data+和Data-终端负载。最佳实施例将匹配的开关装置连接到Data+和Data-线,以便保持线的附加平衡,即使这样也决不会在一个上行HS收发器的Data线上使用一个负载电阻。下拉电阻(RpD)495(15k+/-%)仅仅在下游端面收发器中从Data+和Data-连向地面,并符合USB1.1的规范。
一个断开连接包络探测器460用来检测该差分信号的振幅何时超过数据信号电平允许的最高极限。当一个下游端面收发器传输一个J或者K的连续字符串的时间超过电缆的往返时间以及设备终端电阻不存在时,这就将会发生了。这被用作是设备断开连接的一个指示。在缺少远端终端负载的情况下,当电流超过该往返延迟而没有被切换的话,差动电压名义上将加倍(同存在一个HS装置比较)。因为需要这样一个字符串J或者K做为USOF EOP的一部分,该断开连接包络探测器用于检测HS设备的断开连接,如同下面更详细定义地那样。如果在数据线上的信号振幅超过在500毫伏到600毫伏范围内的一个差动电压阈值的话,一个下游端面端口HS收发器必须指示设备断开连接。当没有下游设备(downstream device)连接时,响应单个USOF EOP分界符,下游端面收发器(downstream facing transceiver)中的断开连接检测电路必须检测该过电压的情况。
发送信号电压概述
总线状态 |
信号电平 |
HS静止状态 |
-5毫伏<=Data+<=5毫伏;-5毫伏<=Data-<=5毫伏 |
HS J状态 |
360毫伏<=Data+<=440毫伏;-5毫伏<=Data-<=5毫伏 |
HS K状态 |
-5毫伏<=Data+<=5毫伏;360毫伏<=Data-<=440毫伏 |
静噪电路阈值 |
当输入信号的差动振幅低于100毫伏时必须中止该输入信号,当差动振幅超过150毫伏时必须启用 |
在下游端面端口上断开HS |
当一个下游端面收发器发现在Data+和Data-线上的差动振幅超过600毫伏时必须指示断开,而且当该电压小于500毫伏时不能指示断开 |
HS包的开始 |
通过从HS静止状态到HS SYNC模式的跃迁来启动一个HS包的传输 |
HS包的终止 |
在HS静止状态后面跟随HS EOF域,如下所述 |
HS重置 |
通过确认一个扩展的单端零,集线器重置一个用于HS的设备 |
发送数据信号
利用差分信号完成在一个包内的HS数据传输。在包之间的数据线的静止状态是两条线都处于GND状态。通过驱动Data+和Data-线从HS静止状态到K状态来指示在HS模式中一个包的开始(SOP)。这个K是HS SYNC模式(NRZI序列KJKJKJKJ KJKJKJKJ KJKJKJKJ KJKJKJKK)的第一个符号。在HS EOP(包终止)分界符中的第一个符号是在EOP之前的最后一个符号的转换。这个相反的符号成为在EOP模式(停用位填充的NRZ011111111)中的第一个符号。一旦完成了该EOP模式,该发送器就返回到静止状态。在EOP模式中第一个符号强制一个变换的事实简化了精确确定哪个是在EOP分界符之前最后一位的过程。
发送连接和断开连接信号
下面描述为一个低速和全速设备发送一个功能单元连接和断开连接信号。当没有功能单元连接在主机或者集线器的下游端面端口时,那里存在的下拉电阻将导致D+和D-被下拉到该主机或者当前没有由集线器驱动的集线器端口的单端低阈值以下。这在下游端面端口上创建了一个SEO状态。如果主机或者集线器没有驱动该数据线而且SEO在一个下游端面端口上持续超过2.5秒,就指示一个断开连接状态(TDDIS)。当集线器检测到一条数据线被拉到它的VIH阈值之上超过2.5秒,就将检测到一个连接状态(TDCNN)。
下面描述为一个高速设备发送一个功能单元连接和断开连接信号。当没有设备终端负载时,通过感知在穿过Data+和Data-线上的差分信号振幅出现增加,一个在HS模式中操作的下游端面端口检测到断开连接。如图4所示,当下游端面收发器进行传输,以及来自该断开线路的正面反射在一个和该收发器驱动信号叠加的相位到达时,″断开连接包络探测器″的输出为高。为了确保这个附加效应可靠地出现并且具有足够的持续时间用以检测,与全速和低速模式相比,延长了USOF EOP的分界符。具有差动振幅>=600毫伏的信号必须可靠地激活该断开连接包络探测器。具有差动振幅<=500毫伏的信号必须不会激活该断开连接包络探测器。集线器必须在一个与传输40比特USOF EOP模式一致的时间采样该断开连接包络探测器的输出。在其它所有时间,该检测器的输出应当被忽略。
当一个USB设备已经从集线器的一个端口移去时,该集线器停用该端口并且向主机提供一个设备移去指示。然后适当的USB系统软件处理该移去指示。如果该移去的USB设备是一个集线器,USB系统软件必须处理该集线器的移去以及所有先前通过该集线器连接在系统上的USB设备的移去。
发送重置信号
通过检查线的状态(来确定是否存在一个设备并且指示LS),然后驱动SEO,(注意:一个非-HS的有能力的设备会把以下的集线器动作看作是一个长SEO,而且这些动作将重置这样一个设备,正象一个USB1.1集线器将重置它一样。)一个HS有能力的集线器开始该重置过程。确认SEO的时间在下表中显示为T0。如果该设备指示LS性能,则该集线器简直保持SEO的确认直到T9为止,不执行以下的任何″监听″动作,并且报告该端口速度为LS。如果该集线器端口没有检测到一个LS设备,则有可能连接着以FS模式操作的一个FS设备、一个HS设备,或者以HS模式操作的一个HS设备,或者根本没有设备连接。为了在这些可能性之间进行区别,从T3起,集线器开始监听来自设备的HS″线性调频脉冲″。作为对一个连续SEO确认的响应,一个HS设备必须首先确定集线器是否告知它去重置或者中止。在T1,通过断开设备的HS终端负载并且重新连接D+负载电阻,设备回复到FS模式(如果原先不在FS的话)。在T2,2.5μs以后,设备检测该线来确定是否存在一个SEO或者FS J信号。如果该线处在一个FS J信号,则该设备知道集线器指示一个中止,并且设备然后继续进行中止过程,这里就不在进一步描述该过程。如果线处于SEO,则设备知道集线器正驱动该线到SEO,并且可能继续该重置过程。一过T4时间,HS设备必须切断它的Data+负载电阻,恢复其HS终端负载,并且传输一个″线性调频脉冲″,其结束时间不迟于T5。这个线性调频脉冲被定义为至少持续时间为8μs的连续HS K信号。如果集线器在T6之前检测到该HS″线性调频脉冲″,而且没有不允许HS,它就在不迟于T7的时间开始HS操作。如果一个集线器在它的输入端发现一个至少2μs的连续HS K信号,它就检测到一个线性调频脉冲。(这个8μs的确认和2μs的检测要求使得在存在亚微秒持续时间的偶尔噪音事件的情况下HS检测变得可靠。)该连接的速度报告为HS。如果集线器未能检测到该″线性调频脉冲″,或者不允许HS的话,它必须至少在T9之前保持SEO。该连接的速度报告为FS。如果设备在T8之前开始接收到HS uSOF,它必须继续在HS模式中操作。如果在T8之前,它没有开始接收HS uSOF,它必须回复到FS操作。注意到通过这个过程,一个重置一个没有设备连接的端口的USB2.0集线器将最初报道说有一个FS设备连接,并且此后它立即检测到一个断开。
时间参数 |
描述 |
值 |
T0 |
集线器在数据线上确认SEO |
0(参考值)) |
T1 |
通过连接D+中断和除去HS终端负载,设备回复到FS模式(如果早先不在FS模式中的话) |
3毫秒 |
T2 |
设备在线上检测SEO(FS J信号将指示中止而不是重置)) |
在设备回复到FS之后的2.5μs |
T3 |
集线器开始监听来自设备的HS″线性调频脉 |
4.75毫秒 |
T4 |
设备可以断开Data+中断电阻,恢复HS终端负载,并且开始传输HS″线性调频脉冲″的最早时间 |
5毫秒 |
T5 |
设备必须完成HS″线性调频脉冲″的传输的最迟时间 |
6毫秒 |
T6 |
集线器停止监听HS″线性调频脉冲″ |
6.25毫秒 |
T7 |
如果接收到HS″线性调频脉冲″的话,集线器必须开始HS操作的时间 |
T7<(HS″线性调频脉冲″的结束+1毫秒)) |
T8 |
如果没有接收到HS uSOF,设备恢复Data+中断电阻并且回复到FS操作的时间 |
(HS″线性调频脉冲″的结束+3毫秒)<T8<(HS″线性调频脉冲″ |
T9 |
如果没有检测到HS″线性调频脉冲″,集线器可以结束重置的最早时间 |
10毫秒 |
根据本发明定义了以下由固件控制的一个高速设备的连接和断开连接,以允许一个设备触发主机的点查过程。由通过固件控制从HS并行终端到FS终端的点查来完成这个过程。第一个步骤是可能在除HS终端负载之外,允许FS终端负载。参考图4所示的最佳实现,通过固件导致在D+线上的负载电阻接通,例如通过设置Rpu_Enable为高,可以实现这个步骤。下一步,移去HS终端负载。通过停用LS/FS驱动器420,例如通过设置LS/FS_Driver_Output_Enable信号为低,可以实现这个步骤。更可取的是,还关掉了SEO驱动(例如通过设置LS/FS驱动器420的Assert-Single-Ended-Zero信号为低)。接通负载电阻以确保终端阻抗超过HS终端负载要求到那样的程度,断开连接包络检测器460将发送一个断开信号。这样,在集线器下游端面端口的断开连接检测机构,将会在从集线器传送到该设备的下一个微SOF包的末端检测到一个断开连接。事实上,因为并行终端负载中止了,而且D+负载电阻Rpu480事实上相当于一个开口端,集线器的接收器将发现一个超过最大允许数据信号电平的差分信号振幅。HS终端负载的移去确保剩余的FS终端负载适合于在FS模式中开始的连接过程。一旦集线器已经检测到该断开,它将向主机报告这个。立即,端口开始检测一个新的连接,并且由于D+的上升将检测到一个新连接。集线器和主机将像任何其他新连接那样处理这个新的连接。该新连接的设备将被重置。在该重置处理中,根据定义的算法(利用线性调频过程)该设备能够切换回到HS操作。
一般地,根据本发明设备断开连接模拟在一个计算机外围设备中实现。诸如图4所示那样,这样的一个外围设备通常包含一个嵌入式微控制器(或者其它适合的处理器)以控制通信驱动器。因此,通过在合适程序(固件)控制之下的微控制器执行依据本发明的步骤,可以执行断开连接和重新连接的模拟。这种计算机程序产品通常从一个后备存储器,诸如一个硬盘或者ROM中加载。在已经在一个存储介质、如一个光盘上发布之后,或者经由一个网络、如公众国际互连网发布之后,该计算机程序产品最初能够被保存在后备存储器中。