CN107852423B - 用于usb 2.0带宽保留的方法及系统 - Google Patents

用于usb 2.0带宽保留的方法及系统 Download PDF

Info

Publication number
CN107852423B
CN107852423B CN201680041572.1A CN201680041572A CN107852423B CN 107852423 B CN107852423 B CN 107852423B CN 201680041572 A CN201680041572 A CN 201680041572A CN 107852423 B CN107852423 B CN 107852423B
Authority
CN
China
Prior art keywords
usb
usb hub
bandwidth
buffer
throughput
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201680041572.1A
Other languages
English (en)
Other versions
CN107852423A (zh
Inventor
S·谢特
A·尼加姆
卡尔·克劳福德
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microchip Technology Inc
Original Assignee
Microchip Technology Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microchip Technology Inc filed Critical Microchip Technology Inc
Publication of CN107852423A publication Critical patent/CN107852423A/zh
Application granted granted Critical
Publication of CN107852423B publication Critical patent/CN107852423B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1673Details of memory controller using buffers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0042Universal serial bus [USB]

Abstract

本发明揭示用于保留USB集线器中的带宽的系统及方法。所述系统及方法可包含:将来自至少一个下游端点的数据接收在缓冲器中;识别所述缓冲器的当前容量;比较所述缓冲器的所述当前容量与缓冲器阈值;至少基于所述比较而产生输出;至少基于所述输出,动态节流至少一个低处理量端点;及通过将从所述至少一个低处理量端点的所述节流可用的带宽提供到具有预定带宽需求的USB装置,而将预定义带宽分配到所述USB装置。

Description

用于USB 2.0带宽保留的方法及系统
相关申请案的交叉参考
本申请案主张2015年7月22日申请的共同拥有的第62/195,557号美国临时专利申请案的优先权,所述美国专利申请案借此出于所有目的以引用的方式并入本文中。
技术领域
本发明涉及通用串行总线技术,特定来说,涉及一种在通用串行总线(“USB”)2.0版本下的带宽保留。
背景技术
在特定汽车USB通信需求中,需要保留带宽或确定带宽优先级。由于USB集线器是处于USB协议层的通过媒体,所以无法针对连接到HUB端口的一者的特定装置实行带宽的保留或排定优先级。
举例来说,某些USB装置(例如特定移动播放器、移动电话等等)驱动专有规格。此专有规格以USB主机模式操作移动播放器且相应播放器具有对USB带宽的完全控制。然而,汽车原始设备制造商(“OEM”)不希望放弃主机模式,且特定USB集线器(例如,由申请者制造的USB集线器)通过提供主机桥接来解决问题。在此模式中,媒体播放器必须与其它USB装置共享带宽。USB批量传送类型不提供带宽保留。
发明内容
揭示用于保留USB集线器中的带宽的系统及方法。所述系统及方法可包含:将来自至少一个下游端点的数据接收在缓冲器中;识别缓冲器的当前容量;比较缓冲器的当前容量与缓冲器阈值;至少基于比较而产生输出;至少基于输出,动态节流至少一个低处理量端点;及将预定义带宽分配到具有预定带宽需求的USB装置,这通过将可从至少一个低处理量端点的节流得到的带宽提供到所述USB装置来进行。
在各种实施例中,系统及方法可包含USB集线器。所述USB集线器可包含至少一个上游端口及多个下游端口,其中下游端口可连接到可操作为USB主机的USB装置,其中所述USB装置具有预定带宽需求,且其中USB集线器经配置以通过低处理量端点的自适应节流而将预定义带宽分配到所述USB装置。
在一些实施例中,USB集线器可包含USB主机调度器,所述USB主机调度器以循环方式为所有作用批量端点分配费用共享(fare share)带宽。在此类实施例中,较慢端点被推到延迟调度。在一些实施例中,USB集线器可经配置以通过在至少一个微型帧期间针对低处理量端点中的每一者产生NAK信号而自适应地节流低处理量端点。在此类实施例中,USB集线器可经配置以通过分配从低处理量端点复原的至少一个微型帧的剩余部分,而将预定义带宽分配到所述USB装置。也在此类实施例中,USB集线器可经配置以通过抽吸来自低处理量端点的至少一个包且以NAK信号作出响应而自适应地节流低处理量端点。
在一些实施例中,预定义带宽是至少100mbps。在一些实施例中,USB集线器可经配置以通过将转发器路径延迟添加到下游端口而自适应地节流低处理量端点。在一些实施例中,USB集线器可经配置以通过补偿包解析时间而自适应地节流低处理量端点。在一些实施例中,USB集线器也可包含可操作以在标准集线器操作模式与业务整形模式之间选择的模式选择模块。
在各种实施例中,系统及方法还可包含USB集线器,所述USB集线器包含配置寄存器及比较器。配置寄存器可包含:缓冲器,其可操作以从将来自以主机模式操作的至少一个下游端点的数据接收在缓冲器中的至少一个下游端点接收数据且将数据传递到至少一个上游端点;及通信耦合到缓冲器的电路,其可操作以识别缓冲器的当前容量。比较器可能可操作以比较缓冲器的当前容量与缓冲器阈值且输出通信耦合到可操作以提供节流到至少一个低处理量端点的节流模块的信号。USB集线器可经配置以通过将从至少一个低处理量端点的节流可用的带宽提供到具有预定带宽需求的USB装置来将预定义带宽分配到所述USB装置。
在一些实施例中,USB集线器可包含USB主机调度器,所述USB主机调度器以循环方式为所有作用批量端点分配费用共享带宽。在此类实施例中,较慢端点被推到延迟调度。在一些实施例中,USB集线器可经配置以通过在至少一个微型帧期间针对低处理量端点中的每一者产生NAK信号而自适应地节流低处理量端点。在此类实施例中,USB集线器可经配置以通过分配从低处理量端点复原的至少一个微型帧的剩余部分,而将预定义带宽分配到所述USB装置。同样在此类实施例中,USB集线器可经配置以通过抽吸来自低处理量端点的至少一个包且以NAK信号作出响应而自适应地节流低处理量端点。
在一些实施例中,预定义带宽是至少100mbps。在一些实施例中,USB集线器可经配置以通过将转发器路径延迟加到下游端口而自适应地节流低处理量端点。在一些实施例中,USB集线器可经配置以通过补偿包解析时间而自适应地节流低处理量端点。在一些实施例中,USB集线器也可包含可操作以在标准集线器操作模式与业务整形模式之间选择的模式选择模块。
在各种实施例中,还揭示一种用于保留USB集线器中的带宽的方法。所述方法可包含:将来自以主机模式操作的至少一个下游端点的数据接收在缓冲器中;识别缓冲器的当前容量;比较缓冲器的当前容量与缓冲器阈值;至少基于比较而产生输出;至少基于输出,动态节流至少一个低处理量端点;及通过将从至少一个低处理量端点的节流可用的带宽提供到具有预定带宽需求的USB装置来将预定义带宽分配到所述USB装置。
附图说明
图1说明根据本发明的某些实施例的用于带宽保留的实例USB集线器拓扑的框图;
图2说明根据本发明的某些实施例的用于在多个端点之中共享高速USB带宽的实例已知USB微型帧;
图3说明根据本发明的某些实施例的用于在多个端点之中共享高速USB带宽的实例USB微型帧;
图4说明根据本发明的某些实施例的用于确定用于USB带宽保留的动态节流的实例系统及方法;且
图5说明根据本发明的某些实施例的并入用于带宽保留的动态节流的实例USB集线器的实例框图。
具体实施方式
随着电子器件集成到汽车应用中的情况增加,越来越需要所述汽车应用适应相关联电子器件的需要的能力。然而,在某些汽车应用中,针对此适应的灵活性不足。举例来说,在特定汽车USB通信需求中,需要保留带宽或确定带宽优先级。然而,由于传统USB集线器是处于USB协议层的通过媒体,所以无法针对连接到这些传统HUB端口的一者的特定装置实行带宽的保留或排定优先级。
如果(例如)媒体播放器要求一定量的带宽用于正确操作,那么此可能成为汽车上下文中的问题。举例来说,由欧米茄计算机公司(Omega Computer)提供的特定USB集线器需要100mbps带宽用于正确操作。因此,需要保留汽车USB主机中的USB带宽以符合带宽需求的机制。为确定哪个业务应被转发或节流,集线器必须检查传入包。运用现有集线器,等到包被解码并解析时再来决定已太晚了。
根据本发明的各种实施例,提供用于重新分配由USB主机在HUB节点处所分配的带宽的系统及方法。根据本发明的各种实施例,USB主机调度器针对所有作用批量端点实施循环费用共享带宽分配。主机调度器实施低处理量端点的自适应节流。较慢端点被推到延迟调度。集线器可实施不需要带宽的USB端口的自适应节流。业务整形算法可修改主机调度以确定需要专用带宽的装置的业务的优先级。此外,可在集线器决定转发或节流时延迟转发器业务。
图1说明根据本发明的某些实施例的用于带宽保留的实例USB集线器拓扑100的框图。在一些实施例中,拓扑100可包含通信耦合到第一USB集线器104的USB主机102,第一USB集线器104可又通信耦合到第二USB集线器106。依据当前版本的USB 2.0规格,如果在816个位时间(大约1.5μs)内未发生发信号,那么预期对发射的响应的高速主机或装置必须使事务超时。在使用特定已知USB集线器的情况下,此可仅允许在建立将超过主机超时的延迟之前串联连接最多五个集线器。然而,如下文参考图2到5更详细地描述,本文中描述的用于带宽保留的系统及方法可消耗三个到四个正常USB集线器的时序空间。然而,其保留了足够时序灵活性以支持具有可接受操作的两层。
因此,实例拓扑100说明通信耦合到彼此的第一USB集线器及第二USB集线器106。每一USB集线器又具有通信耦合到其的一或多个USB装置。举例来说,第一USB集线器104可具有通信耦合到第一USB集线器104的端口的第一USB装置108及第二USB装置110。第二USB集线器106可同样具有通信耦合到第二USB集线器106的端口的第三USB装置112。在一些实施例中,USB装置108、110、112可为可操作以经由USB 2.0(或兼容)串行通信协议而与USB集线器通信的任何适当电子装置。举例来说,USB装置108、110、112可为平板计算机、智能电话、存储器卡、GPS装置等等。虽然在图1中说明特定数目个USB集线器104、106及USB装置108、110及112以辅助理解,但所属领域的一般技术人员将注意到,更多、更少及/或不同USB集线器及/或装置可存在于任何给定配置内,而不背离本发明的范围。
图2说明根据本发明的某些实施例的用于在多个端点之中共享高速USB带宽的实例已知USB微型帧200。为本发明的目的,“端点”可能指代请求高速USB带宽的某部分的任何电子装置(或其子集或组合)。端点可大致对应于USB装置108、110、112或其某部分的一或多者。
在一些实施例中,微型帧200可包含多个事务分配202到220。在一些实施例中,“事务”可包含命令、数据及响应相位及用于USB发射包的相关联时序。在一些实施例中,微型帧200内用于每一事务分配202到220的带宽量可为大约5,000个USB位时间(大约10μs)。在一些实施例中,微型帧200可包含大约十个此类包事务分配202到220,然而任何给定配置内可存在更多或更少事务分配,而不背离本发明的范围。
在一些实施例中,与特定端点相关联的事务分配202到220的数目取决于在任何给定时间请求使用总线的端点的数目。举例来说,在图2的实例微型帧200中,四个不同端点(表示为“EP1”、“EP2”、“EP3”及“EP4”)正请求存取,尽管任何给定配置内可存在更多、更少及/或不同端点,而不致背离本发明的范围。在图2的实例微型帧200中,与特定端点(及因此所述端点的相关联USB装置)相关联的带宽量完全取决于请求存取的端点的数目及请求的初始顺序,这是因为传统上以循环方式服务请求。因此,EP1(例如)在微型帧200中被分配三个事务(例如,事务分配202、210及218)。
在一些实施例中,每一事务可包含将一或多个信号发送到USB集线器。在实例微型帧200中以222表示这些信号。这些信号可包含包识别符(“PID”)、地址识别符(“ADDR”)、数据(“DATA”)、循环冗余校验(“CRC”)等等。
图3说明根据本发明的某些实施例的用于在多个端点之中共享高速USB带宽的实例USB微型帧300。为本发明的目的,“端点”可能指代请求高速USB带宽的某部分的任何电子装置(或其子集或组合)。端点可大体上对应于USB装置108、110、112或其某部分的一或多者。
在一些实施例中,微型帧300可包含多个事务分配302到320、324到328。在一些实施例中,“事务”可包含命令、数据及响应相位及用于USB发射包的相关联时序。在一些实施例中,如下文参考图4到5更详细地描述,微型帧300内用于每一事务分配302到320、324到328的带宽量可取决于相关联事务是否已被节流而可变。
在图3的实例微型帧300中,与表示为“EP1”的端点相关联的USB装置已被识别为需要专用带宽。在一些实施例中,特定USB装置可请求专用带宽。在相同或替代实施例中,USB集线器可自动关联来自特定USB装置的任何请求作为应得专用带宽。举例来说,如上文更详细地描述,无论何时特定USB装置经由USB集线器传输,所述装置都可能需要一定量的专用带宽(例如,100mbps)。因此,为了适应此USB装置,集线器可动态自适应地节流除来自特定USB装置的请求外的所有请求。
再次参考图3,如上文参考图2更详细地描述的可通常与EP1相关联的事务分配(例如,事务分配302、310、318)被给予全位时间分配(例如,5,000个USB位时间)。与其它端点相关联的其它事务分配(例如,事务分配304、306、308、312、314、316)被节流到大幅减小的位时间分配。在一些实施例中,集线器可通过提供“NAK”握手包而实现此节流。此包大体上用来指示特定功能不能够发射或接收数据。然而,非以错误条件产生此包,而是各种实施例可在相关联端点将节流时自动产生包。下文参考图4到5更详细地描述确定要节流哪些包。
在一些实施例中,可在大幅减小的位时间分配中完成NAK包事务。举例来说,可在大约783个位时间中完成事务。通过将这些减小的事务分配给予其它端点,指定的高速端点可能够累积更多可用带宽。举例来说,通过减小其它事务分配的大小,EP1可能够激起更多事务(例如,事务分配320、324、326、328)。因此,在实例微型帧300内,EP1可具有与其相关联的7个事务分配(而非3个)(例如,事务分配302、310、318、320、324、326、328)。依据USB 2.0(或兼容)标准的最大值可为每一微型帧6个到8个事务。这将提供在大约200mbps与256mbps之间的范围。这将为上文更详细描述的需要100mbps的实例提供足够量的专用带宽。
在一些实施例中,每一事务可包含将一或多个信号发送到USB集线器。在实例微型帧300中以322表示这些信号。这些信号可包含包识别符(“PID”)、地址识别符(“ADDR”)、数据(“DATA”)、循环冗余校验(“CRC”)、NAK等等。
图4说明根据本发明的某些实施例的用于确定用于USB带宽保留的动态节流的实例系统400及方法。在一些实施例中,系统400可包含通信耦合到锁存器404的缓冲器402,锁存器404可进一步通信耦合到比较器406。在一些实施例中,缓冲器402可与USB集线器的数据缓冲器相关联。如图4中说明,端点可执行数据写入过程以填充缓冲器且执行数据读取过程以清空所述缓冲器。在一些实施例中,端点的每一写入事务通过一个最大传送单元(“MTU”)填充缓冲器。对于USB 2.0规格来说,MTU是512个字节。同样地,端点的每一读取事务通过一个MTU清空缓冲器。
在一些实施例中,缓冲器402可能可操作以产生与所述缓冲器的数据容量的当前程度(“缓冲器水平”)相关联的信号。举例来说,缓冲器402可能可操作以产生含有指示已满的缓冲器的百分比、缓冲器内的数据量等等的二进制值的信号。此信号可被传递到锁存器404的输入。在一些实施例中,缓冲器水平可被周期性取样。举例来说,可在帧的开始(“SOF”)处针对请求对集线器存取的每一端点取样缓冲器水平。在一些实施例中,取样点可与通信耦合到锁存器404的信号408相关联,因此提供取样值到锁存器404的输出。
在一些实施例中,锁存器404的输出可通信耦合到比较器406的输入。在一些实施例中,比较器406的第二输入可为与缓冲器阈值410相关联的信号。在一些实施例中,缓冲器阈值410可为触发通过集线器的特定包的节流的可编程及/或可调整阈值。举例来说,缓冲器阈值410可为含有指示针对已满的缓冲器的百分比的阈值、针对缓冲器内的数据量的阈值等等的二进制值的信号。举例来说,缓冲器阈值可为与25%的缓冲器的容量的编程值相关联的信号。
在一些实施例中,比较器406比较取样缓冲器水平的输出及缓冲器阈值410。在此比较的第一结果中,比较器406输出第一状态,且在第二结果中,比较器406输出第二状态。举例来说,如果当前取样缓冲器水平高于缓冲器阈值410,那么比较器406的输出可为逻辑高,而如果当前取样缓冲器水平低于缓冲器阈值410,那么比较器406的输出可为逻辑低。在一些实施例中,比较器406的输出可通信耦合到集线器的指示应针对经识别USB集线器断言“NAK”信号的其它电路。先前可识别这些经识别USB集线器(例如,“并非需要专用带宽的特定USB装置的所有USB装置”)。
图5说明根据本发明的某些实施例的并入用于带宽保留的动态节流的实例USB集线器的实例框图500。在一些实施例中,USB集线器可分别包含上游模拟前端(“AFE”)502及下游模拟前端(“AFE”)508。上游物理层(“PHY”)504及下游物理层(“PHY”)506可分别耦合到AFE。多个组件可在物理层之间,包含集线器控制器510、延迟线512、事务转译器(“TT”)514、多路复用器516、高速切换器518、配置寄存器520及节流阀(“NAK/DRAIN”)522。
各种组件510、512、514、516、518通常为所属领域的一般技术人员所已知。然而,在各种实施例中,实例USB集线器还可包含配置寄存器520及节流阀522。这两个组件的组合可大体上等同于图4的组件。配置寄存器520可大体上等同于如上文参考图4更详细地描述的缓冲器402及锁存器404的组合。在一些实施例中,比较器406也可为配置寄存器520的一部分。在相同或替代实施例中,比较器406可代替地为节流阀522的一部分。在一些实施例中,节流阀522还可包含可操作以针对指定USB装置产生NAK信号的电路。此还可包含例如存储程序指令以及待节流的指定USB装置的识别符的计算机可读存储器。
在本发明的各种实施例中,集线器及下游端口两者将始终为高速。上游及下游业务可使用高速转发器路径。当在这种情况中时,节流阀522可在向上及向下两个方向上建立及拆卸包边界上的连接性。节流阀522也可在两个方向上对包重新计时。节流阀522也可从接收的流复原串行数据且使用其自身本地时钟发射所述序列数据。USB2.0(及兼容)规格允许通过转发器路径的36个高速位时间的最大延迟。
在一些实施例中,节流阀522可将转发器路径延迟加到下游端口,且补偿包解析时间。在断言信号412(例如,assert_nak)的情况下,可将所有非带宽要求IN/OUT/PING令牌路由到虚拟装置。虚拟装置可接着抽吸包且以NAK作出响应。节流阀522可包含模式以在上文更详细且参考图1到4描述的“标准”HUB与“业务整形”特征之间选择。
本发明的各种实施例已说明用于USB带宽保留的系统及方法。此可允许(例如)特定USB装置要求专用带宽以便正确运行。这可允许特定上下文(例如,汽车应用)中的USB标准中的增大的灵活性。

Claims (14)

1.一种USB集线器,其包括:
至少一个上游端口及多个下游端口,其中一个下游端口能够连接到USB装置,所述USB装置能够经配置以在USB主机模式中操作,且其中所述USB装置具有预定带宽需求,
USB主机调度器,其根据主机调度以循环方式为所有作用批量端点分配费用共享带宽,且
其中所述USB集线器经配置以通过低处理量端点的自适应节流而将预定义带宽分配到所述USB装置,所述低处理量端点的自适应节流通过修改所述主机调度而不需要所述带宽。
2.根据权利要求1所述的USB集线器,其中较慢端点被推到延迟调度。
3.根据权利要求2所述的USB集线器,其中所述USB集线器经配置以通过在至少一个微型帧期间针对低处理量端点中的每一者产生NAK信号而自适应地节流所述低处理量端点。
4.根据权利要求3所述的USB集线器,其中所述USB集线器经配置以通过分配从所述低处理量端点复原的所述至少一个微型帧的剩余部分,而将所述预定义带宽分配到所述USB装置。
5.根据权利要求1所述的USB集线器,其中所述预定义带宽是至少100Mbps。
6.根据权利要求1所述的USB集线器,其中所述USB集线器经配置以通过将转发器路径延迟添加到下游端口而自适应地节流低处理量端点。
7.根据权利要求1所述的USB集线器,其中所述USB集线器经配置以通过补偿包解析时间而自适应地节流低处理量端点。
8.根据权利要求1所述的USB集线器,其中所述USB集线器经配置以通过抽吸来自所述低处理量端点的至少一个包且以NAK信号作出响应而自适应地节流低处理量端点。
9.根据权利要求1所述的USB集线器,其中所述USB集线器进一步包括能够操作以在标准集线器操作模式与业务整形模式之间选择的模式选择模块。
10.根据权利要求1-9中任一权利要求所述的USB集线器,其进一步包括:
配置寄存器,其包括:
缓冲器,其能够操作以从以主机模式操作的至少一个下游端点接收数据且将数据传递到至少一个上游端点;
通信耦合到所述缓冲器的电路,其能够操作以识别所述缓冲器的当前容量;及
比较器,其能够操作以比较所述缓冲器的所述当前容量与缓冲器阈值且输出通信耦合到节流模块的信号,所述节流模块能够操作以对至少一个低处理量端点提供节流;且
其中所述USB集线器经配置以将从所述至少一个低处理量端点的所述节流可用的带宽提供到所述USB装置。
11.根据权利要求10所述的USB集线器,其中所述节流包括抽吸来自所述低处理量端点的所述至少一个包的虚拟装置。
12.根据权利要求10所述的USB集线器,其中所述USB集线器进一步包括能够操作以在标准集线器操作模式与业务整形模式之间选择的模式选择模块。
13.一种用于保留根据权利要求1-12中任一权利要求所述的USB集线器中的带宽的方法,所述方法包括:
通过USB主机调度器,根据主机调度以循环方式为所有作用批量端点分配费用共享带宽;
接收所述USB装置的宽带请求,并随后通过低处理量端点的自适应节流而将预定义带宽分配到所述USB装置,所述低处理量端点的自适应节流通过修改所述主机调度而不需要所述带宽。
14.一种根据权利要求13所述的方法,其进一步包括:
将来自以主机模式操作的至少一个下游端点的数据接收在缓冲器中;
识别所述缓冲器的当前容量;
比较所述缓冲器的所述当前容量与缓冲器阈值;
至少基于所述比较而产生输出;
至少基于所述输出,动态节流至少一个低处理量端点。
CN201680041572.1A 2015-07-22 2016-07-22 用于usb 2.0带宽保留的方法及系统 Active CN107852423B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201562195557P 2015-07-22 2015-07-22
US62/195,557 2015-07-22
US15/216,447 2016-07-21
US15/216,447 US20170024344A1 (en) 2015-07-22 2016-07-21 Method and System for USB 2.0 Bandwidth Reservation
PCT/US2016/043638 WO2017015588A1 (en) 2015-07-22 2016-07-22 Method and system for usb 2.0 bandwidth reservation

Publications (2)

Publication Number Publication Date
CN107852423A CN107852423A (zh) 2018-03-27
CN107852423B true CN107852423B (zh) 2021-02-26

Family

ID=56609949

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680041572.1A Active CN107852423B (zh) 2015-07-22 2016-07-22 用于usb 2.0带宽保留的方法及系统

Country Status (7)

Country Link
US (1) US20170024344A1 (zh)
EP (1) EP3326347B1 (zh)
JP (1) JP2018520434A (zh)
KR (1) KR20180030985A (zh)
CN (1) CN107852423B (zh)
TW (1) TWI717373B (zh)
WO (1) WO2017015588A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111032797B (zh) 2018-03-16 2022-03-18 株式会社Lg化学 墨组合物和用于制造有机发光器件的方法
US10970004B2 (en) * 2018-12-21 2021-04-06 Synopsys, Inc. Method and apparatus for USB periodic scheduling optimization
US11825575B2 (en) 2019-09-12 2023-11-21 Microchip Technology Incorporated Pulse-width modulation and arbitration for contextual and uniform LED illumination in USB applications
US11650835B1 (en) * 2020-03-31 2023-05-16 Amazon Technologies, Inc. Multiple port emulation
US11455196B2 (en) * 2020-09-01 2022-09-27 Dell Products L.P. Adaptive prioritization of USB traffic

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6748466B2 (en) * 2001-06-29 2004-06-08 Intel Corporation Method and apparatus for high throughput short packet transfers with minimum memory footprint
CN103117490A (zh) * 2011-08-30 2013-05-22 瑞萨电子株式会社 Usb集线器及usb集线器的控制方法
CN103905224A (zh) * 2012-12-26 2014-07-02 中国电信股份有限公司 网络资源集中管理的方法与系统
CN104408003A (zh) * 2006-12-22 2015-03-11 高通股份有限公司 增强的无线usb协议和集线器

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6119190A (en) * 1996-11-06 2000-09-12 Intel Corporation Method to reduce system bus load due to USB bandwidth reclamation
US7047374B2 (en) * 2002-02-25 2006-05-16 Intel Corporation Memory read/write reordering
KR100557215B1 (ko) * 2003-08-19 2006-03-10 삼성전자주식회사 유에스비 디바이스의 엔드포인트 제어 장치 및 그 방법
US20060277330A1 (en) * 2005-06-01 2006-12-07 Wilhelmus Diepstraten Techniques for managing priority queues and escalation considerations in USB wireless communication systems
US20070066314A1 (en) * 2005-08-24 2007-03-22 Itay Sherman System and method for wireless communication systems coexistence
US9317824B2 (en) * 2007-01-17 2016-04-19 Hartford Fire Insurance Company Vendor management system and process
US20080307240A1 (en) * 2007-06-08 2008-12-11 Texas Instruments Incorporated Power management electronic circuits, systems, and methods and processes of manufacture
US7849251B2 (en) * 2007-12-07 2010-12-07 Intel Corporation Hardware assisted endpoint idleness detection for USB host controllers
US20110022769A1 (en) * 2009-07-26 2011-01-27 Cpo Technologies Corporation Translation USB Intermediate Device and Data Rate Apportionment USB Intermediate Device
EP2556631A4 (en) * 2010-01-12 2013-12-18 Synerchip Usa Corp MANAGING AND CONTROLLING VIDEO IN A DOMESTIC MULTIMEDIA NETWORK
US8549204B2 (en) * 2010-02-25 2013-10-01 Fresco Logic, Inc. Method and apparatus for scheduling transactions in a multi-speed bus environment
US20110208891A1 (en) * 2010-02-25 2011-08-25 Fresco Logic, Inc. Method and apparatus for tracking transactions in a multi-speed bus environment
US9019068B2 (en) * 2010-04-01 2015-04-28 Apple Inc. Method, apparatus and system for automated change of an operating mode relating to a wireless device
US9086889B2 (en) * 2010-04-27 2015-07-21 Oracle International Corporation Reducing pipeline restart penalty
US8793522B2 (en) * 2011-06-11 2014-07-29 Aliphcom Power management in a data-capable strapband
JP5791397B2 (ja) * 2011-07-07 2015-10-07 ルネサスエレクトロニクス株式会社 デバイスコントローラ、usbデバイスコントローラ及び電力制御方法
TWI497306B (zh) * 2012-11-29 2015-08-21 Faraday Tech Corp 超高速通用序列匯流排集線器及其相關流量管理方法
US9244872B2 (en) * 2012-12-21 2016-01-26 Ati Technologies Ulc Configurable communications controller
US9524260B2 (en) * 2014-06-18 2016-12-20 Qualcomm Incorporated Universal serial bus (USB) communication systems and methods
US9780938B2 (en) * 2015-06-25 2017-10-03 Intel IP Corporation Patch download with improved acknowledge mechanism

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6748466B2 (en) * 2001-06-29 2004-06-08 Intel Corporation Method and apparatus for high throughput short packet transfers with minimum memory footprint
CN104408003A (zh) * 2006-12-22 2015-03-11 高通股份有限公司 增强的无线usb协议和集线器
CN103117490A (zh) * 2011-08-30 2013-05-22 瑞萨电子株式会社 Usb集线器及usb集线器的控制方法
CN103905224A (zh) * 2012-12-26 2014-07-02 中国电信股份有限公司 网络资源集中管理的方法与系统

Also Published As

Publication number Publication date
EP3326347B1 (en) 2020-04-29
CN107852423A (zh) 2018-03-27
WO2017015588A1 (en) 2017-01-26
US20170024344A1 (en) 2017-01-26
TW201717039A (zh) 2017-05-16
TWI717373B (zh) 2021-02-01
KR20180030985A (ko) 2018-03-27
EP3326347A1 (en) 2018-05-30
JP2018520434A (ja) 2018-07-26

Similar Documents

Publication Publication Date Title
CN107852423B (zh) 用于usb 2.0带宽保留的方法及系统
US5546543A (en) Method for assigning priority to receive and transmit requests in response to occupancy of receive and transmit buffers when transmission and reception are in progress
US6877048B2 (en) Dynamic memory allocation between inbound and outbound buffers in a protocol handler
US8797857B2 (en) Dynamic buffer pool in PCIExpress switches
US7779187B2 (en) Data communication circuit and arbitration method
US7308523B1 (en) Flow-splitting and buffering PCI express switch to reduce head-of-line blocking
US20040037313A1 (en) Packet data service over hyper transport link(s)
CN105260331B (zh) 一种双总线内存控制器
US7403525B2 (en) Efficient routing of packet data in a scalable processing resource
US6327637B1 (en) Interface tap for 1394-enabled serial bus device
US20200076742A1 (en) Sending data using a plurality of credit pools at the receivers
KR100505689B1 (ko) 송수신 흐름에 따라 공유 버퍼 메모리의 할당량을제어하는 송수신 네트워크 제어기 및 그 방법
JP4408376B2 (ja) 交換のためにメモリに書き込まれるパケットをキューイングするシステム、方法及び論理
US10263905B2 (en) Distributed flexible scheduler for converged traffic
KR101197294B1 (ko) QoS 및 전송 효율 개선을 위한 SoC 기반 시스템 네트워크에서의 인터페이스 장치의 통신방법
US10171193B2 (en) Fractional multiplexing of serial attached small computer system interface links
US20040017813A1 (en) Transmitting data from a plurality of virtual channels via a multiple processor device
US8219726B2 (en) Method for data transfer between host and device
US8402178B2 (en) Device to device flow control within a chain of devices
US20220326855A1 (en) Peripheral component interconnect express interface device and operating method thereof

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant