CN107533529A - 通用串行总线智能集线器 - Google Patents
通用串行总线智能集线器 Download PDFInfo
- Publication number
- CN107533529A CN107533529A CN201680024554.2A CN201680024554A CN107533529A CN 107533529 A CN107533529 A CN 107533529A CN 201680024554 A CN201680024554 A CN 201680024554A CN 107533529 A CN107533529 A CN 107533529A
- Authority
- CN
- China
- Prior art keywords
- usb
- processor
- hub
- port
- usb device
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
- G06F13/387—Information transfer, e.g. on bus using universal interface adapter for adaptation of different data processing systems to different peripheral devices, e.g. protocol converters for incompatible systems, open system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/266—Arrangements to supply power to external peripherals either directly from the computer or under computer control, e.g. supply of power through the communication port, computer controlled power-strips
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/102—Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
- G06F13/4295—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using an embedded synchronisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/38—Universal adapter
- G06F2213/3812—USB port controller
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/40—Bus coupling
- G06F2213/4004—Universal serial bus hub with a plurality of upstream ports
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Information Transfer Systems (AREA)
Abstract
一种USB智能集线器可提供增强电池充电、数据存储安全性、厂商匹配、装置认证、数据捕捉/调试及角色切换。所述智能集线器可包含:上游端口;多个下游端口;处理器;及存储器,其耦合到所述处理器用于存储USB主机栈代码及配置参数。所述智能集线器可包含具有用来实施标准USB集线器接口的核心的USB集线器核心。所述智能集线器可包含耦合在所述下游端口、核心下游端口与所述处理器之间的多个2:1多路复用器。所述处理器可控制所述2:1多路复用器。所述处理器可经配置以检测USB装置何时耦合到下游端口且运行所述USB主机栈代码且枚举所述USB装置。所述处理器可基于所述配置参数而提供增强特征。
Description
技术领域
本公开涉及结合通用串行总线(USB)集线器而使用的系统及方法,且更特定来说,涉及用于在USB集线器装置处增强电池充电、数据存储安全性、厂商匹配、装置认证、数据捕捉/调试及角色切换的系统及方法。
背景技术
在现代电子装置(例如,个人计算机(“PC”)、平板PC、蜂窝手机、汽车信息娱乐系统、个人游戏系统、玩具等)中,USB集线器是普遍存在的。正是“通用”接口允许键盘、监控器、打印机、存储装置、相机、电话、玩具、游戏机及众多其它电子装置在单个接口上工作。因为是通用的,所以其自身带来一系列挑战,尤其包含与认证、验证、安全性及定制数据处置相关的挑战。厂商已尝试通过定制操作系统及/或USB栈/驱动器来克服这些挑战。这些类型的定制可为昂贵的且可导致连接到USB接口的电子装置之间的次优兼容性。
发明内容
因此,需要一种可提供增强电池充电、数据存储安全性、厂商匹配、装置认证、数据捕捉/调试及角色切换而无需改变操作系统或USB栈/驱动器的改进USB集线器。
根据实施例,提供一种USB集线器,其可包含:集线器上游端口;多个集线器下游端口;处理器;及存储器,其以通信方式耦合到所述处理器用于存储USB主机栈代码及多个配置参数。USB集线器可进一步包含USB集线器核心,所述USB集线器核心具有核心上游端口及多个核心下游端口。所述USB集线器核心可操作以实施所述核心上游端口与所述多个核心下游端口之间的USB集线器接口。所述USB集线器可进一步包含多个多路复用器,且每一多路复用器可具有:第一端口,其以通信方式耦合到所述集线器下游端口中的一个;第二端口,其以通信方式耦合到所述多个核心下游端口中的一个;第三端口,其以通信方式耦合到所述处理器;及选择输入端,其以通信方式耦合到所述处理器且可操作而以通信方式耦合所述第一端口与所述第二端口、所述第三端口或所述第二端口及所述第三端口两者。所述处理器可经配置以检测USB装置何时耦合到所述多个集线器下游端口中的第一个。所述处理器可经进一步配置以控制对应于所述第一集线器下游端口的第一多路复用器的所述选择输入端,使得所述第一端口连接到所述第三端口。另外,所述处理器可经配置以运行所述USB主机栈代码且枚举所述USB装置。
根据另外实施例,提供一种用于USB集线器中的增强电池充电的方法,所述USB集线器包含多个集线器下游端口及运行USB主机栈代码的处理器。所述处理器可检测USB装置何时耦合到所述多个集线器下游端口中的第一个且可枚举所述USB装置。所述处理器可进一步从所述USB装置获得产品ID(PID)及厂商ID(VID)且使用所述PID及所述VID来确定所述USB装置的定制电池充电协议。所述处理器接着可致使所述USB集线器使用对应于所述USB装置的特定电池充电协议对所述USB装置充电。
根据另外实施例,提供一种用于USB集线器中的数据安全性的方法,所述USB集线器包含多个集线器下游端口及运行USB主机栈代码的处理器。所述处理器可检测USB装置何时耦合到所述多个集线器下游端口中的第一个且可枚举所述USB装置。所述处理器可进一步从所述USB装置获得信息(例如,装置类别代码、描述符信息等)且使用所述装置类别代码来确定应阻断所述USB装置。所述处理器接着可致使所述USB集线器阻断所述USB装置连接。
根据另外实施例,提供一种用于USB集线器中的数据安全性的方法,所述USB集线器包含多个集线器下游端口及运行USB主机栈代码的处理器。所述处理器可检测USB装置何时耦合到所述多个集线器下游端口中的第一个且可枚举所述USB装置。所述处理器可进一步从所述USB装置获得信息(例如,装置类别代码、描述符信息等)且使用所述装置类别代码来确定所述USB集线器应在所述USB装置与上游USB主机之间建立USB到USB网桥。所述处理器接着可在所述USB装置与所述上游USB主机之间实施所述USB到USB网桥。
根据另外实施例,提供一种用于USB集线器中的厂商装置偏好的方法,所述USB集线器包含多个集线器下游端口及运行USB主机栈代码的处理器。所述处理器可检测USB装置何时耦合到所述多个集线器下游端口中的第一个且可枚举所述USB装置。所述处理器可进一步从所述USB装置获得产品ID(PID)及厂商ID(VID)且使用所述PID及所述VID来确定所述USB装置不是精选厂商装置。所述处理器接着可在确定所述USB装置不是精选厂商装置后就致使运用次优配置枚举所述USB装置。
根据另外实施例,提供一种用于USB集线器中的装置认证的方法,所述USB集线器包含多个集线器下游端口及运行USB主机栈代码的处理器。所述处理器可检测USB装置何时耦合到所述多个集线器下游端口中的第一个且可枚举所述USB装置。所述处理器可进一步从所述USB装置获得产品ID(PID)及厂商ID(VID)且使用所述PID及所述VID来确定所述USB装置需要认证。所述处理器接着可在确定所述USB装置需要认证后就将认证质询发出到所述USB装置。所述处理器可进一步从所述USB装置获得认证质询响应,且可在确定所述响应不正确后就阻断所述USB装置连接。
根据另一实施例,提供一种用于USB集线器中的数据反映的方法,所述USB集线器包含多个集线器下游端口及运行USB主机栈代码的处理器。所述处理器可从所述多个集线器下游端口确定源端口。所述处理器还可从所述多个集线器下游端口确定目的地端口。所述处理器可进一步致使所述源端口处的数据反映在所述目的地端口处。
附图说明
通过参考结合随图所作的下文描述,可获取对本公开的更完全理解,其中:
图1说明根据本公开的某些实施例的可提供增强电池充电、数据存储安全性、厂商匹配、装置认证、数据捕捉/调试及角色切换的实例USB集线器的框图;
图2说明根据本公开的某些实施例的用于在USB集线器中提供增强电池充电、厂商匹配及装置认证的实例数据库的表;
图3说明根据本公开的某些实施例的用于提供增强电池充电、数据存储安全性、厂商匹配、装置认证、数据捕捉/调试及角色切换的实例配置选项;
图4说明根据本公开的某些实施例的用于在USB集线器中提供增强电池充电的实例方法的流程图;
图5说明根据本公开的某些实施例的用于在USB集线器中提供增强数据存储安全性的实例方法的流程图;
图6说明根据本公开的某些实施例的用于在USB集线器中提供增强厂商匹配的实例方法的流程图;
图7说明根据本公开的某些实施例的用于在USB集线器中提供增强装置认证的实例方法的流程图;
图8说明根据本公开的某些实施例的可提供数据捕捉/调试的实例USB集线器的框图;
图9说明根据本公开的某些实施例的用于在USB集线器中提供增强角色切换的实例方法的流程图;
虽然本公开容许各种修改及替代形式,但其特定实例实施例已在附图中展示且在本文中详细地描述。然而,应理解,本文中对特定实例实施例的描述并非意图于将本公开限于本文中所公开的特定形式,而相反地,本公开意图于涵盖如由所附权利要求书所界定的所有修改及等效物。
具体实施方式
根据各种实施例,可提供一种可提供增强电池充电、数据存储安全性、厂商匹配、装置认证、数据捕捉/调试及角色切换而无需改变操作系统或USB栈/驱动器的USB集线器。
现在参考附图,示意性地说明实例实施例的细节。附图中的相同元件将由相同元件符号表示,且类似元件将由具有不同小写字母下标的相同元件符号表示。
图1说明根据本公开的某些实施例的可提供增强电池充电、数据存储安全性、厂商匹配、装置认证、数据捕捉/调试及角色切换的实例USB集线器的框图。如图1中所描绘,USB集线器100可包括USB集线器核心102、上游端口104、控制处理器106、USB主机栈+迷你调度器+消息管道108及2:1多路复用器/解多路复用器114a到114d,2:1多路复用器/解多路复用器114a到114d以通信方式耦合下游端口116a到116d与例如USB集线器核心102输出信号110a到110d及信号112a到112d。上游端口104及下游端口116a到116d可能够载送USB集线器100与上游端口/下游端口之间的USB兼容发信。虽然图1中所描绘的实施例包含4端口USB集线器,但替代实施例可包含任何数目个端口(例如,2、3、10、16等)。
控制处理器106可包括可操作以解释及/或执行程序指令及/或过程数据的任何系统、装置或设备,且可包含但不限于微处理器、微控制器、数字信号处理器、专用集成电路(ASIC),或经配置以解释及/或执行程序指令及/或过程数据的任何其它数字或模拟电路。控制处理器106可以通信方式耦合到USB集线器核心102以提供适于实施/控制USB集线器的发信以及由本公开的各种实施例提供的额外特征。控制处理器106还可以通信方式耦合到(例如,实施、控制等)USB主机栈108(包含迷你调度器及消息管道)。控制处理器106还可以通信方式耦合到多路复用器/解多路复用器114a到114d,例如以发射或接收信号112a到112d及/或将选择发信(未展示)提供到多路复用器/解多路复用器114a到114d。控制处理器还可以通信方式耦合到其它资源(未展示),包含存储器(例如,易失性、非易失性等)、存储媒体(例如,快闪存储器、EEPROM、固态存储媒体等)等。
USB集线器核心102可包括可操作以实施USB集线器接口的任何系统、装置或设备,且可包含但不限于专用集成电路(ASIC),或经配置以实施USB集线器接口的任何其它数字或模拟电路(及必要的软件/固件)。在某些实施例中,USB集线器核心可支持USB活动式(OTG)发信。在相同或额外实施例中,USB集线器核心102可为由Microchip Technology公司(Microchip)提供的支持Microchip的FlexConnect特征的集线器控制器。FlexConnect特征可允许集线器动态地改变充当上游端口及下游端口的物理端口。这些特征可允许连接到充当USB主机及USB装置两者的多个产品而无需两个专用连接器。
USB主机栈108可包括可操作以实施USB主机控制器的任何软件、硬件或软件/硬件组合。在某些实施例中,USB主机栈108可为完全USB兼容的,从而支持由任何USB规范定义的所有有效事务。在替代实施例中,USB主机栈108可例如通过以下步骤而仅实施USB规范的某些方面:(i)仅支持某些外围装置及/或某些类别的装置;(ii)仅支持由受支持装置所需的某些传送类型;(iii)具有宽松功率要求;(iv)其它。在一个实施例中,USB主机栈108可为由Microchip提供的结合Microchip微控制器而使用的免版税嵌入式主机栈。
在操作中,USB集线器100可提供增强USB特征,例如电池充电、数据存储安全性、厂商匹配、装置认证、数据捕捉/调试及角色切换。根据本公开的某些实施例,控制处理器106可执行一般可操作以与USB集线器核心102交互且实施USB主机栈+迷你调度器+消息管道108的软件及/或固件。在某些实施例中,控制处理器106可执行一般可操作以存储及检索信息的软件及/或固件,所述信息包含但不限于与图2到3中所说明的数据库表及/或配置信息类似的数据库表及/或配置信息。
图2说明根据本公开的某些实施例的用于在USB集线器中提供增强电池充电、厂商匹配及装置认证的实例数据库200的表。数据库200可以诸多不同格式实施,包含但不限于以文本文件、二进制文件、关系数据库等的形式。数据库200的每一行可含有与由USB集线器100支持的USB装置相关的条目且可存储由USB集线器100在涉及受支持装置的事务中使用的信息。在某些示范性实施例中,数据库200可存储厂商ID(“VID”)(列A)、产品ID(“PID”)(列B)、增强充电指示符(列C)、充电类型(列D)、充电规范(列E)、精选厂商指示符(列F)、认证所需指示符(列G)、认证规范(列H)及FlexConnect指示符(列I)。根据USB规范,每一USB组件(装置、主机、集线器等)可被指派VID及PID,例如以允许便于识别所述组件。数据库200的VID列及PID列可对应于这些预指派的VID/PID值。以此方式,USB集线器100可提供可连接到USB集线器100的不同USB组件所特有的增强电池充电、厂商匹配及装置认证。
在操作中,当USB组件连接到USB集线器100时,控制处理器106可从所述装置获得VID/PID信息。在一个实施例中,USB集线器100可利用USB主机栈+迷你调度器+消息管道108且充当USB主机以枚举所述装置且获得装置描述符(其包含VID/PID信息)。在替代实施例中,控制处理器可通过以下步骤而从所述装置获得VID/PID信息:在连接到上游端口104的主机经由USB集线器核心102(标准USB协议)枚举新附接装置时“侦听”枚举过程。在前一实施例中,控制处理器106可配置多路复用器/解多路复用器114a到114d,使得USB集线器核心102不辨识装置附接事件。在枚举所述装置之后,USB集线器100可在上游端口104处管理新附接装置与USB主机之间的连接,使得由所述上游端口适当地枚举所述装置。USB集线器100可以熟悉USB协议的技术人员已知的任何数目种方式实现此动作。例如,USB集线器100可强制在所述装置所附接的下游端口上进行断接事件且此后允许由上游主机进行枚举。在替代实施例中,USB集线器100可重置所述装置且此后允许由上游主机进行枚举。在替代实施例中,USB集线器100可仿真上游主机的新附接事件且将所述装置的描述符转递到上游端口104上的USB主机且接着在适当时间恢复正常集线器发信(即,停止仿真)。在这些实施例中,控制处理器106控制多路复用器/解多路复用器114a到114d,使得发信适当地路由到(1)USB集线器核心或(2)运行USB主机栈的控制处理器。在某些实施例中,当多路复用器/解多路复用器114a到114d将下游端口信号路由到控制处理器时,连接到USB集线器核心的信号110a到110d可经配置以反映未附接装置。因此,通过改变多路复用器/解多路复用器114a到114d上的选择输入端(即,导致路由到USB集线器核心),USB集线器核心可确定已发生装置附接事件。
无论USB集线器100获得VID/PID信息的方式是什么,在如此做之后,USB集线器100接着可搜索数据库200以寻找匹配VID/PID。如果在数据库200中发现VID/PID,那么控制处理器106可确定连接的USB组件受USB集线器100支持,且取决于存储在数据库200中对应于所述USB组件的其它参数而提供某些增强特征。例如,如果为匹配VID/PID启用(例如,行2)增强充电指示符(列C),那么USB集线器100可在所述USB端口上提供增强电池充电。在此情况下,数据库200中的充电类型(列D)条目及充电规范(列E)条目可提供与应对USB组件充电的方式相关的额外信息。(在图4的论述中提供与增强充电相关的更多细节。)作为另一实例,如果为匹配VID/PID启用(例如,行4)精选厂商指示符(列F),那么USB集线器100可提供增强厂商匹配特征。(在图3及6的论述中提供与增强厂商匹配特征相关的更多细节。)在又一实例中,如果为匹配VID/PID启用(例如,行6)认证所需指示符(列G),那么USB集线器100可需要在完全连接USB组件之前进行认证。在此情况下,数据库200中的认证规范(列H)条目可提供与应认证USB组件的方式相关的额外细节。(在图7的论述中提供与认证特征相关的更多细节。)在又一实例中,如果为匹配VID/PID启用(例如,行1)FlexConnect指示符(列I),那么USB集线器100可向所述装置提供初始角色切换选项且充当USB主机。(在图9的论述中提供与角色切换特征相关的更多细节。)
存储在数据库200中的值可为硬编码的、可配置的,或所述两者的某个组合。在某些实施例中,USB集线器100的制造商可期望在出售USB集线器100之前对数据库200的值进行硬编码,使得所述数据库无法被修改。例如,数据库200可存储在存储器的只读区段中或是写入保护的。在其它实施例中,制造商可提供数据库200的默认值,但可允许由用户进行后期修改。例如,USB集线器100的用户可能够通过以下步骤而修改数据库200:将所述集线器插入到USB主机中且使用USB主机上的软件来更新所述数据库(例如,通过从因特网下载新厂商/产品信息,手动编辑表等)。在某些实施例中,数据库200的修改可以不安全方式执行,使得USB集线器100的任何用户可修改所述数据库。在其它实施例中,数据库200的修改可仅由具有正确凭据(例如,密码等)的用户执行。
图3说明根据本公开的某些实施例的用于提供数据存储安全性、厂商匹配、数据捕捉/调试及角色切换的实例配置选项表300。在一些实施例中,配置选项表300可以软件形式存储,包含但不限于以文本文件、二进制文件、关系数据库等的形式。在其它实施例中,配置选项表300可硬接线在硬件中(例如,系低(停用)、系高(启用)、连接到控制处理器106上的GPIO引脚等)。配置选项表300中的第一列可对应于可用于本公开的实例实施例中的配置选项。在其它实施例中,取决于受特定USB集线器100支持的特征,可存在更多或更少列。配置选项表300中的第二列可对应于如由USB集线器100的厂商或用户确定的配置值。
存储在配置选项表300中的值可为硬编码的、可配置的,或所述两者的某个组合。在某些实施例中,USB集线器100的制造商可期望在出售USB集线器100之前对配置选项表300的值进行硬编码,使得配置选项无法被修改(即,是不可配置的)。例如,配置选项表300的值可存储在存储器的只读区段中。在其它实施例中,制造商可提供配置选项表300的默认值,但可允许由用户进行后期修改。例如,USB集线器100的用户可能够通过以下步骤而修改配置表300中的值:将所述集线器插入到USB主机中且使用USB主机上的软件来设置所述值。在某些实施例中,此修改可以不安全方式执行,使得USB集线器100的任何用户可修改所述值。在其它实施例中,配置表300中的值的修改可仅由具有正确凭据(例如,密码等)的用户执行。
在图3中所描绘的实施例中,配置选项表300含有以下配置选项:“数据安全性?”选项用来确定是否启用数据安全性特征。“数据安全性等级2?”选项用来确定是否启用数据安全性等级2特征。“数据安全性规范”条目提供与USB集线器100应实施数据安全性特征的方式相关的额外信息。(在图5的论述中提供与数据安全性特征相关的更多细节。)“精选厂商”选项用来确定是否启用精选厂商特征。“精选厂商规范”条目提供与USB集线器100应实施精选厂商特征的方式相关的额外信息。(在图3及6的论述中提供与增强厂商匹配特征相关的更多细节。)“自动响应?”选项用来确定是否启用自动响应特征。“自动响应规范”条目提供与USB集线器100应实施自动响应特征的方式相关的额外信息。“数据反映?”选项用来确定是否启用数据反映特征。“数据反映规范”条目提供与USB集线器100应实施数据反映特征的方式相关的额外信息。(在图8的论述中提供与自动响应特征及数据反映特征相关的更多细节。)“Flexconnect切换?”选项用来确定是否启用Flexconnect切换特征。(在图9的论述中提供与Flexconnect切换特征相关的更多细节。)
电池充电
USB连接器用于对所有类型的电子装置充电,包含但不限于智能手机、平板计算机、游戏机、玩具及类似物。USB规范定义用于通过USB连接对USB装置充电的协议。然而,诸多USB装置不遵循此协议,且替代地实施厂商或产品特定充电协议,例如定制电握手或定制USB消息基握手。此可在使用标准USB充电协议来对这些装置充电时(即,由通用USB集线器使用的方法)导致次优充电速率。通过存储厂商及/或产品特定充电信息,USB集线器100可对连接到USB集线器100的任何装置实施最优充电协议。
图4说明根据本公开的某些实施例的用于在USB集线器中提供增强电池充电的实例方法400的流程图。根据一个实施例,方法400优选地开始于步骤402处。如上所述,本公开的教示可以USB集线器100的各种配置实施。因而,方法400的优选初始化点及构成方法400的步骤402到418的顺序可取决于所选择的实施方案。
在步骤402处,可初始化USB集线器100。例如,可使USB集线器100通电(经由电源或到USB主机的连接),且可初始化USB集线器核心102。在步骤404处,USB集线器100可连续地检验以确定下游装置是否已附接到例如下游端口116a到116d中的一个。如果尚未附接下游装置,那么USB集线器100可返回到步骤404且以此方式继续直到检测到下游装置为止。在检测到下游装置连接后,USB集线器100就可在步骤406处连接到检测到的装置且可在步骤408处枚举所述装置。在枚举期间,USB集线器100可读取新附接装置的VID及PID。
在步骤410处,USB集线器100可确定新附接装置是否实施非标准充电协议。例如,可将VID/PID提供到控制处理器106,且控制处理器106可询问数据库200以确定其是否含有匹配新附接装置的VID/PID的条目(行)且确定任何匹配条目是否指示所述装置遵循厂商或产品特定充电协议(即,启用列C“充电?”)。如果数据库200中不存在VID/PID匹配,那么方法400可从步骤410前进到步骤412且可尝试使用标准USB充电协议对新附接装置充电。类似地,如果数据库200中存在VID/PID匹配,但未启用匹配行的“充电?”列,那么方法400可从步骤410前进到步骤412且可尝试使用标准USB充电协议对新附接装置充电。如果数据库200中存在VID/PID匹配且启用匹配行的“充电?”列,那么方法400可前进到步骤414。
在步骤414处,USB集线器100可确定匹配数据库条目是否指示定制电握手充电协议。在图2中所描绘的实例中,“充电类型”列中的零(0)可指示定制电握手充电协议(例如,行2),而“充电类型”列中的一(1)可指示定制消息基握手充电协议(例如,行3)。根据此实施例,如果USB集线器100在步骤414处确定“充电类型”被设置为零(0)(其指示定制电握手),那么方法400可前进到步骤418。如果USB集线器100在步骤414处替代地确定“充电类型”被设置为一(1)(其指示定制消息基握手),那么方法400可前进到步骤416。
在步骤416处,USB集线器100可使用定制消息基握手协议对新附接装置充电。在某些实施例中,此协议的细节可作为“消息基握手规范”(例如,行3)保存在数据库200中的“充电规范”列中。消息基握手规范可包括描述由USB组件实施的定制消息基握手协议的指令、描述符或多个指令/描述符。所需指令/描述符的数目可为实施方案相依的且可基于受USB集线器100支持的装置的数目而变化。控制处理器106可操作以对任何受支持装置的消息基握手规范解码且可使用所述信息来控制下游端口上的协议。以此方式,USB集线器100可实施最优厂商或产品特定的消息基握手充电协议。
在步骤418处,USB集线器100可使用定制电握手协议(例如通过设置下游端口的特定电阻、电压或电流)对新附接装置充电。在某些实施例中,此协议的细节可作为“电发信规范”(例如,行3)保存在数据库200中的“充电规范”列中。电发信规范可包括描述由USB组件实施的定制电握手协议的指令、描述符或多个指令/描述符。所需指令/描述符的数目可为实施方案相依的且可基于受USB集线器100支持的装置的数目而变化。控制处理器106可操作以对任何受支持装置的电发信规范解码且可使用所述信息来控制下游端口上的协议。以此方式,USB集线器100可实施最优厂商或产品特定的电握手充电协议。
数据安全性
在安全设施中,安全数据的盗窃是主要担忧。用来连接键盘、鼠标或打印机的USB端口还可用来连接存储装置,其中可在极短时间内下载大量数据。为禁止未经授权的数据存取,USB集线器100的某些实施例可实施数据安全性特征。例如,USB集线器100可确定装置例如是键盘、鼠标还是存储装置。USB集线器100可在枚举期间通过查看所述装置的类别而获得此信息。USB集线器100接着可选择性地阻断存储装置,使得数据不可传送到存储装置。在某些实施例中,USB集线器100可通过暂停连接过程而阻断存储装置,使得不完全枚举所述装置。在其它实施例中,USB集线器100可通过强制进行拆卸事件而阻断存储装置。在又其它实施例中,USB集线器100可通过强制连接而以极低速度通信而阻断存储装置。虽然此后一特征不可完全阻断连接,但其可通过不允许在短时间段内下载大量数据而提供数据安全性。USB集线器100可在存储装置尝试连接时实施这些不同阻断方案。在相同或不同实施例中,可阻断所有打印机类别装置。在相同或又其它实施例中,可阻断具有批量输出(BULKOUT)端点(即,传出数据)的所有装置。因此,USB集线器100可通过阻断来自潜在危险的装置类型的连接而提供数据安全性。相反地,USB集线器100可允许键盘或鼠标装置正常地枚举及操作。
在其它实施例中,USB集线器100可通过充当USB到USB网桥而提供数据安全性。例如,在装置尝试连接到USB集线器100的下游端口116a到116d中的一个时,USB集线器100可确定尝试连接的装置的类型。在此实施例中,USB集线器100可阻断除键盘及鼠标以外的所有装置。在键盘或鼠标尝试连接到下游端口116a到116b中的一个时,USB集线器100可将所述端口分别枚举为仿真键盘或仿真鼠标。在此案例中,控制处理器106可实施仿真USB键盘或USB鼠标的软件,且USB集线器100接着可管理上游主机端口与键盘/鼠标装置之间的业务,而所述主机或所述装置不知道USB到USB网桥。例如,控制处理器106可控制多路复用器/解多路复用器114a到114d以致使从所述装置发送到所述主机的数据被引导到控制处理器106而非USB集线器核心102。类似地,控制处理器106将能够经由上游端口104从所述主机接收发射。通过仿真鼠标/键盘装置,控制处理器106可仅允许安全数据业务。因此,数据业务可为单向的且双向业务可被所述网桥终止。根据某些实施例,可由USB到USB网桥阻断可需要特殊驱动器的新一代装置的特殊模式或功能。
图5说明根据本公开的某些实施例的用于在USB集线器中提供增强数据存储安全性的实例方法500的流程图。根据一个实施例,方法500优选地开始于步骤502处。如上所述,本公开的教示可以USB集线器100的各种配置实施。因而,方法500的优选初始化点及构成方法500的步骤502到526的顺序可取决于所选择的实施方案。
在步骤502处,可初始化USB集线器100。例如,可使USB集线器100通电(经由电源或到USB主机的连接),且可初始化USB集线器核心102。在步骤504处,USB集线器100可连续地检验以确定下游装置是否已附接到例如下游端口116a到116d中的一个。如果尚未附接下游装置,那么USB集线器100可返回到步骤504且以此方式继续直到检测到下游装置为止。在检测到下游装置连接后,USB集线器100就可在步骤506处连接到检测到的装置且可在步骤508处枚举所述装置。在枚举期间,USB集线器100可读取新附接装置的VID、PID及装置类别。
在步骤510处,USB集线器100可例如通过检验配置表300中的“数据安全性?”值而确定是否启用数据安全性特征。如果不启用“数据安全性?”值,那么方法500可前进到步骤512且根据标准USB协议枚举所述装置。如果启用“数据安全性?”值,那么方法500可前进到步骤514且例如通过检验配置表300中的“数据安全性等级2?”值而确定是否启用数据安全性等级2特征(即,USB到USB网桥特征)。如果不启用,那么方法500可前进到步骤516且可确定尝试附接到USB集线器100的装置是否为应由数据安全性特征阻断的类别或类型。在一个实施例中,USB集线器100可使用配置表300中的“数据安全性规范”值(DS_Specification)来确定在启用数据安全性特征时应阻断哪些类别或类型的装置。例如但不限于,DS_Specification可含有应被阻断的装置类别(例如,大容量存储装置、打印机等)或装置类型(例如,具有批量输出端点的装置等)的列表。
方法500可使用DS_Specification中的此信息以在步骤516处确定是否应阻断尝试连接到USB集线器100的装置。如果尝试连接到USB集线器100的装置不属于DS_Specification中所列出的那些装置,那么方法500可前进到步骤512且根据标准USB协议枚举所述装置。否则,方法500可前进到步骤518且确定数据安全性特征是否实施上文所描述的“低速”阻断特征。在某些实施例中,在DS_Specification配置值中提供此配置选项(连同应被阻断的装置类别/类型)。在替代实施例中,配置表300可含有单独“低速阻断?”配置选项。如果在步骤518处USB集线器100确定启用低速阻断特征,那么方法500可前进到步骤522,其中所述装置可枚举且可被配置为低速装置。如果在步骤518处USB集线器100确定不启用低速阻断特征,那么方法500前进到步骤520,其中可阻断装置连接。
返回到步骤514,如果USB集线器100确定启用等级2安全性特征,那么方法500可前进到步骤524且可确定尝试附接到USB集线器100的装置是否为应由等级2安全性特征阻断的类别或类型。方法500可在步骤524中以与关于步骤516所论述的方式类似的方式作出所述确定。如果USB集线器100确定应阻断尝试附接的装置,那么方法500可前进到步骤512,其中可阻断装置连接。否则,方法500可前进到步骤526,其中USB集线器100可建立USB到USB网桥(如上文所论述)。
厂商匹配
USB集线器100可提供偏好由一或多个厂商制造的装置的厂商匹配特征。例如,由优选厂商制造的装置可被赋予最高带宽连接或最多可用功率。相比之下,由非优选厂商制造的装置可被赋予较低带宽连接或较低功率连接。以此方式,由优选厂商提供的装置可表现为具有优越性能。
图6说明根据本公开的某些实施例的用于在USB集线器中提供增强厂商匹配的实例方法600的流程图。根据一个实施例,方法600优选地开始于步骤602处。如上所述,本公开的教示可以USB集线器100的各种配置实施。因而,方法600的优选初始化点及构成方法600的步骤602到616的顺序可取决于所选择的实施方案。
在步骤602处,可初始化USB集线器100。例如,可使USB集线器100通电(经由电源或到USB主机的连接),且可初始化USB集线器核心102。在步骤604处,USB集线器100可连续地检验以确定下游装置是否已附接到例如下游端口116a到116d中的一个。如果尚未附接下游装置,那么USB集线器100可返回到步骤604且以此方式继续直到检测到下游装置为止。在检测到下游装置连接后,USB集线器100就可在步骤606处连接到检测到的装置且可在步骤608处枚举所述装置。在枚举期间,USB集线器100可读取新附接装置的VID及PID。
在步骤610处,USB集线器100可例如通过检验配置表300中的“精选厂商?”值而确定是否启用精选厂商特征。如果不启用“精选厂商?”值,那么方法600可前进到步骤612且根据标准USB协议枚举所述装置。如果启用“精选厂商?”值,那么方法600可前进到步骤614且确定尝试连接的装置是否由精选厂商提供。根据一个实施例,USB集线器100可使用配置表300中的“精选厂商规范”值(VoC_Specification)来确定哪个(哪些)厂商是优选厂商。例如但不限于,VoC_Specification可含有对应于优选厂商的一或多个厂商ID(VID)的列表。在此实施例中,USB集线器100可简单地确定尝试连接的装置的VID是否匹配VoC_Specification列表中的VID。在替代实施例中,USB集线器100可通过以下操作而确定尝试连接的装置是否由优选厂商提供:搜索数据库200以寻找匹配VID/PID组合,且如果发现匹配,那么确定是否启用数据库200的匹配行中的“精选厂商?”列。如果在步骤614处USB集线器100确定所述装置是由优选厂商提供,那么方法600可前进到步骤612且根据标准(或增强-例如,更大功率等)USB协议枚举所述装置。如果在步骤614处USB集线器100确定所述装置并非由优选厂商提供,那么方法600可前进到步骤616且可运用次优功率及/或速度配置枚举所述装置。在一个实施例中,配置表300中的VoC_Specification提供应指派给由非优选厂商提供的装置的设置(例如,是否运用次优功率、速度或两者配置所述装置)。
装置认证
USB集线器100可提供防止装置在无适当凭据的情况下附接到上游USB主机的装置认证特征。在一个实施例中,在装置尝试附接到USB集线器100时,USB集线器100可利用USB主机栈+迷你调度器+消息管道108且可枚举所述装置,USB集线器100作为USB主机连接到所述装置。在此实施例中,USB集线器100可初始化包括认证质询的事务。如果所述装置对认证质询不作出响应或不正确地响应,那么USB集线器100可阻断连接。在一些实施例中,USB集线器100可经配置以在所述装置对第一质询不正确地响应的情况下发出多于一个认证质询。
图7说明根据本公开的某些实施例的用于在USB集线器中提供增强装置认证的实例方法700的流程图。根据一个实施例,方法700优选地开始于步骤702处。如上所述,本公开的教示可以USB集线器100的各种配置实施。因而,方法700的优选初始化点及构成方法700的步骤702到718的顺序可取决于所选择的实施方案。
在步骤702处,可初始化USB集线器100。例如,可使USB集线器100通电(经由电源或到USB主机的连接),且可初始化USB集线器核心102。在步骤704处,USB集线器100可连续地检验以确定下游装置是否已附接到例如下游端口116a到116d中的一个。如果尚未附接下游装置,那么USB集线器100可返回到步骤704且以此方式继续直到检测到下游装置为止。在检测到下游装置连接后,USB集线器100就可在步骤706处连接到检测到的装置且可在步骤708处枚举所述装置。在一个实施例中,USB集线器100可利用USB主机栈+迷你调度器+消息管道108来枚举所述装置,使得USB集线器100作为USB主机连接到所述装置。在枚举期间,USB集线器100可读取新附接装置的VID及PID。
在步骤710处,USB集线器100可确定新附接装置是否需要认证。例如,可将VID/PID提供到控制处理器106,且控制处理器106可询问数据库200以确定其是否含有匹配新附接装置的VID/PID的条目(行)且确定任何匹配条目是否指示所述装置需要认证(即,启用列G“需要认证?(Auth Req'd?)”)。如果数据库200中不存在VID/PID匹配,那么方法700可从步骤710前进到步骤712且可允许所述装置以上文关于USB集线器100已作为USB主机连接到所述装置的实例所论述的任何方式连接到上游USB端口104。如果USB集线器100在步骤710处确定数据库200中存在VID/PID匹配,那么方法700可从步骤710前进到步骤714。
在步骤714处,USB集线器100可将认证质询发出到所述装置。认证质询可采取所属领域的技术人员已知的任何数目种形式且一般可以数据库200中对应于新附接装置的VID/PID的认证规范(列H)予以定义。例如,认证规范可指示所述装置应运用特定pin码或密码对认证质询作出响应。在其它实施例中(即,USB集线器100连接到因特网),认证规范可提供更复杂的认证方法,包含但不限于远程认证等。
在步骤716处,USB集线器100可确定所述装置是否已对认证质询正确地响应。如果所述装置提供正确响应,那么方法700可从步骤716前进到步骤712且可允许所述装置以上文关于USB集线器100已作为USB主机连接到所述装置的实例所论述的任何方式连接到上游USB端口104。如果所述装置提供不正确响应,那么USB集线器100可尝试通过返回到步骤714(虚线720)而重新发出所述质询,前提是认证规范允许重试。否则,方法700可前进到步骤718且所述装置不被允许在上游端口104处连接到USB主机。
数据捕捉/调试
USB集线器100可提供数据捕捉及/或调试特征。例如,USB集线器100可经编程以按某种方式对某些USB业务作出响应。替代地或另外,USB集线器100可经编程以将来自一个下游端口的业务反映到另一下游端口。
根据一个实施例,USB集线器100可提供对某些类型的USB业务的自动响应。USB集线器100可例如通过检验配置表300中的“自动响应?”值而确定是否启用自动响应特征。在一个实施例中,USB集线器100可使用配置表300中的“自动响应规范”值(AR_Specification)来确定哪些事务需要自动响应及应作出什么响应。例如但不限于,AR_Specification可含有下游端口、应针对某些类型的业务进行监控的装置类别(例如,大容量存储装置、打印机等)或装置类型(例如,具有批量输入(BULK IN)端点的装置等)的列表。类似地,AR_Specification可含有应接收自动响应的业务类型(例如,批量输入包、控制读取等)的列表。此外,AR_Specification可提供USB集线器100应在遭遇指定业务时提供的响应。作为非限制性实例,AR_Specification可指定下游端口116c上的批量输入事务的数据阶段应接收NAK握手。在此实例中,USB集线器100可监控下游端口116c,且在所述装置传送批量输入数据之后,USB主机100可致使多路复用器/解多路复用器114c将NAK握手而非原本将从上游主机发射(经由多路复用器/解多路复用器114c输入端,其经由信号110c连接到USB集线器核心102)的响应从控制处理器106传递到下游端口116c。通过控制多路复用器/解多路复用器114a到114d,USB控制处理器106可在任一方向上(即,上游或下游)提供自动响应。
根据相同或替代实施例,USB集线器100可将数据反映从一个下游端口提供到另一下游端口(根据USB规范,将源于上游端口104处的所有业务广播到所有下游装置)。USB集线器100可例如通过检验配置表300中的“数据反映?”值而确定是否启用数据反映特征。在一个实施例中,USB集线器100可使用配置表300中的“数据反映规范”值(DR_Specification)来确定哪些事务需要数据反映。例如但不限于,DR_Specification可包含下游端口、数据应被反映的装置类别(例如,大容量存储装置、打印机等)或装置类型(例如,具有批量输入端点的装置等)的列表。此外,DR_Specification可指定数据应被反映到其上的目的地端口。
图8说明根据本公开的某些实施例的使用数据反映特征的USB集线器800中的实例数据反映的框图。在此实例中,DR_Specification可指定应将来自下游端口D的信号810反映为下游端口A上的信号812。通过控制多路复用器/解多路复用器814a及814d,USB控制处理器106可将数据反映(虚线)从信号810提供到信号812。同时,经由连接816将下游端口810上的发信810传递通过到USB集线器核心802(且随后传递到上游端口818)。根据此实施例,下游端口A可连接到能够监控经反映数据的装置,例如用于调试或其它目的。
在替代实施例中,可经由USB集线器800上的物理输入端控制数据反映。在此类实施例中,控制处理器可包括连接到物理开关的通用I/O引脚。与DR_Specification类似,这些物理开关可指定以下项中的一或多个:(1)是否启用数据反映;及(2)数据反映特征的源端口及目的地端口。例如,本公开的4端口集线器实施例(例如图8中所展示)可提供物理“DR通/断”按钮、4位置“DR源”开关及4位置“DR目的地”开关。USB集线器800的用户可将“DR源”开关设置到下游端口D且将“DR目的地”开关设置到下游端口A且可通过将“DR通/断”开关转到通位置而启用数据反映。在运用这些设置的情况下,USB集线器800将如关于图8所描述般表现为:来自下游端口D的数据将被反映到下游端口A。本公开的某些实施例可组合物理开关的使用连同DR_Specification以提供数据反映特征的各种水平的物理控制对软件控制。
角色切换
FlexConnect是Microchip USB集线器所特有的特征。此特征允许所述集线器动态地改变充当上游端口及下游端口的物理端口。此允许系统设计者开发充当USB主机及USB装置的产品而无需两个专用连接器。此还允许在一个端口上具有此能力的系统扩展通过FlexConnect集线器连接到所述端口的装置。在全文以引用方式并入本文中的MicrochipApplication Note AN1700中进一步描述Microchip的FlexConnect特征。当前,FlexConnect特征要求所述装置及所述主机两者是FlexConnect感知的。
USB集线器100可实施允许连接到USB集线器100的FlexConnect装置切换角色且充当USB主机的角色切换特征,其中连接到USB集线器100的上游端口104的USB主机不是FlexConnect感知的或其中上游USB主机是不存在的。
图9说明根据本公开的某些实施例的用于在USB集线器中提供增强角色切换的实例方法900的流程图。根据一个实施例,方法900优选地开始于步骤902处。如上所述,本公开的教示可以USB集线器100的各种配置实施。因而,方法900的优选初始化点及构成方法900的步骤902到918的顺序可取决于所选择的实施方案。
在步骤902处,可初始化USB集线器100。例如,可使USB集线器100通电(经由电源或到USB主机的连接),且可初始化USB集线器核心102。在步骤904处,USB集线器100可连续地检验以确定下游装置是否已附接到例如下游端口116a到116d中的一个。如果尚未附接下游装置,那么USB集线器100可返回到步骤904且以此方式继续直到检测到下游装置为止。在检测到下游装置连接后,USB集线器100就可在步骤906处连接到检测到的装置且可在步骤908处枚举所述装置。USB集线器100可利用USB主机栈+迷你调度器+消息管道108以枚举所述装置,使得USB集线器100作为USB主机连接到所述装置。在枚举期间,USB集线器100可读取新附接装置的VID及PID。
在步骤910处,USB集线器100可确定新附接装置是否为FlexConnect感知的。例如,可将VID/PID提供到控制处理器106,且控制处理器106可询问数据库200以确定其是否含有匹配新附接装置的VID/PID的条目(行)且确定任何匹配条目是否指示所述装置是FlexConnect感知的(即,启用列I“Flex Connect?”)。如果数据库200中不存在VID/PID匹配,那么方法900可从步骤910前进到步骤912且可允许所述装置以上文关于USB集线器100已作为USB主机连接到所述装置的实例所论述的任何方式连接到上游USB端口104。如果USB集线器100在步骤910处确定数据库200中存在VID/PID匹配且所述匹配指示FlexConnect感知装置,那么方法900可从步骤910前进到步骤914。
在步骤914处,USB集线器100可确定FlexConnect感知装置希望变为USB主机。例如,USB集线器100可初始化控制读取事务且确定角色切换应基于由所述装置提供的响应而执行。在某些实施例中,所述装置可经配置以总是致使角色切换。在其它实施例中,所述装置可包含用户接口,使得所述装置的用户可请求所述装置变为USB主机。例如,所述装置可为连接到USB集线器100的智能手机,其中汽车信息娱乐系统的头端单元作为USB主机连接到USB集线器100的上游端口104。智能手机可向用户呈现开关,使得用户可选择从智能手机控制信息娱乐系统。如果在步骤914处方法900确定无需角色切换,那么方法900可从步骤910前进到步骤912且可允许所述装置以上文关于USB集线器100已作为USB主机连接到所述装置的实例所论述的任何方式连接到上游USB端口104。
如果在步骤914处方法900确定需要角色切换,那么方法900可前进到步骤916。在步骤916处,USB集线器100可致使当前USB主机(如果存在)切换到装置模式。例如,USB集线器100可使用USB OTG主机协商协议或会话请求协议来初始化方向改变。替代地,USB集线器100可将指示USB主机应切换角色的包发送到所述主机。在步骤918处,USB集线器可致使新附接装置切换到主机模式。例如,USB集线器100可使用USBOTG主机协商协议或会话请求协议或Microchip FlexConnect协议来初始化方向改变。替代地,USB集线器100可将指示角色切换的包发送到所述装置。在步骤918处,USB集线器100还可通知所述装置其可汲取多少功率用于电池充电。新主机可枚举总线上的所有装置,使得其可控制所述装置。在包含智能手机及汽车信息娱乐系统的先前实例中,此角色切换可允许智能手机控制信息娱乐系统,例如在汽车中播放音乐、调整音量等。在新主机(例如,智能手机)断接的情况下,USB集线器100可通知旧主机(如果存在)切换角色且再次充当USB主机。
尽管图4到7及9公开关于其中所描绘的方法而采取的特定数目个步骤,但所述方法可以比所描绘步骤更多或更少的步骤执行。另外,尽管图4到7及9公开关于此处所描绘的方法而采取的特定顺序的步骤,但所述步骤可以任何合适顺序完成。
在使用本文中所公开的方法及系统的情况下,可提供一种可提供增强电池充电、数据存储安全性、厂商匹配、装置认证、数据捕捉/调试及角色切换而无需改变操作系统或USB栈/驱动器的USB集线器。
尽管已详细地描述本公开,但应理解,在不脱离如由所附权利要求书所界定的本公开的精神及范围的情况下可对本公开作出各种改变、替换及变动。
Claims (33)
1.一种USB集线器,其包括:
集线器上游端口;
多个集线器下游端口;
处理器;
存储器,其以通信方式耦合到所述处理器用于存储USB主机栈代码及多个配置参数;
USB集线器核心,其具有核心上游端口及多个核心下游端口,所述USB集线器核心可操作以实施所述核心上游端口与所述多个核心下游端口之间的USB集线器接口;及
多个多路复用器,每一多路复用器具有:
第一端口,其以通信方式耦合到所述集线器下游端口中的一个,
第二端口,其以通信方式耦合到所述多个核心下游端口中的一个,
第三端口,其以通信方式耦合到所述处理器,及
选择输入端,其以通信方式耦合到所述处理器且可操作而以通信方式耦合所述第一端口与所述第二端口、所述第三端口或所述第二端口及所述第三端口两者;
其中所述处理器经配置以:
检测USB装置何时耦合到所述多个集线器下游端口中的第一个,
控制对应于所述第一集线器下游端口的第一多路复用器的所述选择输入端,使得所述第一端口连接到所述第三端口,
运行所述USB主机栈代码,及
枚举所述USB装置。
2.根据权利要求1所述的USB集线器,其中在枚举所述USB装置之后,所述处理器经进一步配置以致使由耦合到所述集线器上游端口的上游USB主机枚举所述USB装置。
3.根据权利要求1或权利要求2所述的USB集线器,其中所述处理器致使由所述上游USB主机枚举所述USB装置包括:
所述处理器控制所述第一多路复用器的所述选择输入端,使得所述第一端口连接到所述第二端口;及
所述处理器将重置发信到所述USB装置。
4.根据前述权利要求中任一权利要求所述的USB集线器,其中所述多个配置参数包括数据库,所述数据库含有具有多个字段的多个记录,每一记录对应于由所述USB集线器处置的特定USB装置。
5.根据前述权利要求中任一权利要求所述的USB集线器,其中所述处理器经进一步配置以:
从所述USB装置获得产品ID PID及厂商ID VID;
使用所述PID及所述VID来确定所述USB装置的定制电池充电协议;及
致使所述USB集线器使用对应于所述USB装置的特定电池充电协议对所述USB装置充电。
6.根据权利要求5所述的USB集线器,其中所述特定电池充电协议是定制电握手及定制消息基握手中的一个。
7.根据前述权利要求中任一权利要求所述的USB集线器,其中所述处理器经进一步配置以:
从所述USB装置获得信息;
使用所述经获得信息来确定应阻断所述USB装置;及
致使所述USB集线器阻断所述USB装置连接。
8.根据权利要求7所述的USB集线器,其中所述经获得信息是装置类别代码。
9.根据前述权利要求中任一权利要求所述的USB集线器,其中通过将所述USB装置配置为低速装置而阻断所述USB装置连接。
10.根据前述权利要求中任一权利要求所述的USB集线器,其中所述处理器经进一步配置以:
从所述USB装置获得信息;
使用所述经获得信息来确定所述USB集线器应在所述USB装置与上游USB主机之间建立USB到USB网桥;及
实施所述USB到USB网桥。
11.根据权利要求10所述的USB集线器,其中所述经获得信息是装置类别代码。
12.根据权利要求10所述的USB集线器,其中实施所述USB到USB网桥包含将所述第一集线器下游端口枚举为到所述上游USB主机的仿真装置。
13.根据前述权利要求中任一权利要求所述的USB集线器,其中所述处理器经进一步配置以:
从所述USB装置获得产品ID PID及厂商ID VID;
使用所述PID及所述VID来确定所述USB装置不是精选厂商装置;及
基于确定所述USB装置不是精选厂商装置,致使运用次优配置枚举所述USB装置。
14.根据权利要求13所述的USB集线器,其中所述次优配置是以下项中的一或多个:次优功率配置及次优速度配置。
15.根据前述权利要求中任一权利要求所述的USB集线器,其中所述处理器经进一步配置以:
从所述USB装置获得产品ID PID及厂商ID VID;
使用所述PID及所述VID来确定所述USB装置需要认证;
基于确定所述USB装置需要认证,将认证质询发出到所述USB装置;
从所述USB装置获得认证质询响应;及
在确定所述响应不正确后就阻断所述USB装置连接。
16.根据前述权利要求中任一权利要求所述的USB集线器,其中所述处理器经进一步配置以在USB总线上检测到特定事务后就发射预定响应。
17.根据前述权利要求中任一权利要求所述的USB集线器,其中所述处理器经进一步配置以将来自源集线器下游端口的数据反映到目的地集线器下游端口。
18.根据权利要求17所述的USB集线器,其中基于一或多个物理开关而确定所述源集线器下游端口及所述目的地集线器下游端口。
19.根据前述权利要求中任一权利要求的USB集线器,其中所述处理器经进一步配置以:
从所述USB装置获得产品ID PID及厂商ID VID;
使用所述PID及所述VID来确定所述USB装置支持FlexConnect角色切换协议;
基于确定所述USB装置支持FlexConnect,致使所述USB装置切换角色且在不存在连接到所述集线器上游端口的USB主机或连接到所述集线器上游端口的所述USB主机不支持所述FlexConnect角色切换协议时变为USB主机。
20.一种用于在USB集线器中提供增强电池充电的方法,所述USB集线器包含多个集线器下游端口及运行USB主机栈代码的处理器,所述方法包括:
所述处理器检测USB装置耦合到所述多个集线器下游端口中的第一个;
所述处理器枚举所述USB装置;
所述处理器从所述USB装置获得产品ID PID及厂商ID VID;
所述处理器使用所述PID及所述VID来确定所述USB装置的定制电池充电协议;及
所述处理器致使所述USB集线器使用对应于所述USB装置的特定电池充电协议对所述USB装置充电。
21.根据权利要求20所述的方法,其中所述处理器致使所述USB集线器使用定制电握手协议及定制消息基握手协议中的一个对所述USB装置充电。
22.根据权利要求20或21所述的方法,其中所述USB集线器进一步包含存储器,且所述处理器从存储在所述存储器中的配置文件获得定制电握手协议及定制消息基握手协议中的所述一个的规范。
23.一种用于在USB集线器中提供数据安全性的方法,所述USB集线器包含多个集线器下游端口及运行USB主机栈代码的处理器,所述方法包括:
所述处理器检测USB装置耦合到所述多个集线器下游端口中的第一个;
所述处理器枚举所述USB装置;
所述处理器从所述USB装置获得信息;
所述处理器使用所述经获得信息来确定应阻断所述USB装置;及
所述处理器在确定应阻断所述USB装置后就致使所述USB集线器阻断所述USB装置连接。
24.根据权利要求23所述的方法,其中所述经获得信息是装置类别代码。
25.根据权利要求23或24所述的方法,其中所述处理器致使所述USB集线器通过将所述USB装置配置为低速装置而阻断所述USB装置连接。
26.一种用于在USB集线器中提供数据安全性的方法,所述USB集线器包含多个集线器下游端口及运行USB主机栈代码的处理器,所述方法包括:
所述处理器检测USB装置耦合到所述多个集线器下游端口中的第一个;
所述处理器枚举所述USB装置;
所述处理器从所述USB装置获得信息;
所述处理器使用所述经获得信息来确定所述USB集线器应在所述USB装置与上游USB主机之间建立USB到USB网桥;及
所述处理器实施所述USB到USB网桥。
27.根据权利要求26所述的方法,其中所述经获得信息是装置类别代码。
28.根据权利要求26或27所述的方法,其中所述处理器实施所述USB到USB网桥包括将所述第一集线器下游端口枚举为到所述上游USB主机的仿真装置。
29.一种用于在USB集线器中提供厂商装置偏好的方法,所述USB集线器包含多个集线器下游端口及运行USB主机栈代码的处理器,所述方法包括:
所述处理器检测USB装置耦合到所述多个集线器下游端口中的第一个;
所述处理器枚举所述USB装置;
所述处理器从所述USB装置获得产品ID PID及厂商ID VID;
所述处理器使用所述PID及所述VID来确定所述USB装置不是精选厂商装置;及
所述处理器在确定所述USB装置不是精选厂商装置后就致使运用次优配置枚举所述USB装置。
30.根据权利要求29所述的方法,其中所述次优配置是以下项中的一或多个:次优功率配置及次优速度配置。
31.一种用于在USB集线器中提供装置认证的方法,所述USB集线器包含多个集线器下游端口及运行USB主机栈代码的处理器,所述方法包括:
所述处理器检测USB装置耦合到所述多个集线器下游端口中的第一个;
所述处理器枚举所述USB装置;
所述处理器从所述USB装置获得产品ID PID及厂商ID VID;
所述处理器使用所述PID及所述VID来确定所述USB装置需要认证;
所述处理器在确定所述USB装置需要认证后就将认证质询发出到所述USB装置;
所述处理器从所述USB装置获得认证质询响应;及
所述处理器在确定所述响应不正确后就阻断所述USB装置连接。
32.一种用于在USB集线器中提供数据反映的方法,所述USB集线器包含多个集线器下游端口及运行USB主机栈代码的处理器,所述方法包括:
所述处理器从所述多个集线器下游端口确定源端口;
所述处理器从所述多个集线器下游端口确定目的地端口;及
所述处理器致使所述源端口处的数据反映在所述目的地端口处。
33.根据权利要求32所述的方法,其中:
所述USB集线器进一步包含耦合到所述处理器的物理源开关及耦合到所述处理器的物理目的地开关;
所述处理器基于以下项中的一个而确定所述源端口:源端口配置值及所述物理源开关;及
所述处理器基于以下项中的一个而确定所述目的地端口:目的地端口配置值及所述物理目的地开关。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110942412.7A CN113609050B (zh) | 2015-04-28 | 2016-04-03 | 通用串行总线智能集线器 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/698,428 | 2015-04-28 | ||
US14/698,428 US9804977B2 (en) | 2015-04-28 | 2015-04-28 | Universal serial bus smart hub |
PCT/US2016/025798 WO2016175983A1 (en) | 2015-04-28 | 2016-04-03 | Universal serial bus smart hub |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110942412.7A Division CN113609050B (zh) | 2015-04-28 | 2016-04-03 | 通用串行总线智能集线器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107533529A true CN107533529A (zh) | 2018-01-02 |
CN107533529B CN107533529B (zh) | 2021-09-03 |
Family
ID=55861156
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680024554.2A Active CN107533529B (zh) | 2015-04-28 | 2016-04-03 | 通用串行总线智能集线器 |
CN202110942412.7A Active CN113609050B (zh) | 2015-04-28 | 2016-04-03 | 通用串行总线智能集线器 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110942412.7A Active CN113609050B (zh) | 2015-04-28 | 2016-04-03 | 通用串行总线智能集线器 |
Country Status (7)
Country | Link |
---|---|
US (2) | US9804977B2 (zh) |
EP (1) | EP3289469B1 (zh) |
JP (1) | JP2018514871A (zh) |
KR (1) | KR20170140267A (zh) |
CN (2) | CN107533529B (zh) |
TW (2) | TWI757809B (zh) |
WO (1) | WO2016175983A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108268398A (zh) * | 2018-02-01 | 2018-07-10 | 百度在线网络技术(北京)有限公司 | 用于操作外围设备的方法、设备和计算机可读存储介质 |
CN109063459A (zh) * | 2018-07-17 | 2018-12-21 | 北京云智信安科技有限公司 | 一种usb设备过滤装置和方法 |
CN111522762A (zh) * | 2019-02-02 | 2020-08-11 | 智微科技股份有限公司 | 传输接口电路 |
Families Citing this family (49)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9841904B2 (en) * | 2015-03-02 | 2017-12-12 | Samsung Electronics Co., Ltd. | Scalable and configurable non-volatile memory module array |
US9804977B2 (en) | 2015-04-28 | 2017-10-31 | Microchip Technology Incorporated | Universal serial bus smart hub |
US10468893B2 (en) * | 2015-08-19 | 2019-11-05 | Delta Electronics, Inc. | USB charging method having protection function |
TWI597608B (zh) * | 2016-08-12 | 2017-09-01 | The hub-to-bus converter that supports master-slave translation operates as a hub | |
US10572644B2 (en) | 2017-01-26 | 2020-02-25 | Microsoft Technology Licensing, Llc | Interacting with a computing device via identity-bearing peripheral devices |
JP6625076B2 (ja) | 2017-01-30 | 2019-12-25 | 株式会社日立製作所 | Usb中継装置を用いたusb管理システム及びusb管理方法 |
US10725939B2 (en) | 2017-02-13 | 2020-07-28 | Microchip Technology Incorporated | Host-detecting USB hub |
US10331604B2 (en) * | 2017-05-17 | 2019-06-25 | Microchip Technology Incorporated | USB host-to-host auto-switching |
US10231273B2 (en) * | 2017-06-02 | 2019-03-12 | GM Global Technology Operations LLC | Vehicle wireless device connection management with switchover of primary connected device |
CN107453428B (zh) * | 2017-08-08 | 2019-05-17 | 天津瑞发科半导体技术有限公司 | 一种自动识别苹果和安卓设备的方法 |
TWI634428B (zh) * | 2017-10-20 | 2018-09-01 | 致伸科技股份有限公司 | 集線裝置 |
CN109709833A (zh) * | 2017-10-25 | 2019-05-03 | 致伸科技股份有限公司 | 集线装置/ hub |
US10684972B2 (en) | 2017-12-29 | 2020-06-16 | Barco Nv | Method and system for making functional devices available to participants of meetings |
JP6808666B2 (ja) * | 2018-02-20 | 2021-01-06 | Jmacs株式会社 | 認証デバイスおよびこれを備えるデバイス管理システム |
WO2019203797A1 (en) * | 2018-04-17 | 2019-10-24 | Hewlett-Packard Development Company, L.P. | Firmware setup menu options for docking stations |
JP6540980B1 (ja) * | 2018-05-29 | 2019-07-10 | レノボ・シンガポール・プライベート・リミテッド | 情報処理装置、制御方法、及びプログラム |
US11068613B2 (en) * | 2018-08-07 | 2021-07-20 | Dell Products L.P. | Differentiating and managing identical USB devices |
US11678925B2 (en) | 2018-09-07 | 2023-06-20 | Cilag Gmbh International | Method for controlling an energy module output |
US11804679B2 (en) | 2018-09-07 | 2023-10-31 | Cilag Gmbh International | Flexible hand-switch circuit |
US12035956B2 (en) | 2018-09-07 | 2024-07-16 | Cilag Gmbh International | Instrument tracking arrangement based on real time clock information |
US11923084B2 (en) | 2018-09-07 | 2024-03-05 | Cilag Gmbh International | First and second communication protocol arrangement for driving primary and secondary devices through a single port |
US10635618B2 (en) | 2018-09-17 | 2020-04-28 | 2236008 Ontario Inc. | Modifying a configuration of a port hub |
US11016919B2 (en) * | 2019-02-22 | 2021-05-25 | Seagate Technology Llc | Intelligent switching peripheral connector |
US11218822B2 (en) | 2019-03-29 | 2022-01-04 | Cilag Gmbh International | Audio tone construction for an energy module of a modular energy system |
IT201900005822A1 (it) | 2019-04-15 | 2020-10-15 | Phoenix Ict S R L S | Adattore di periferiche general purpose per computer |
US11599641B2 (en) | 2019-04-24 | 2023-03-07 | Crowdstrike, Inc. | Firmware retrieval and analysis |
USD939545S1 (en) | 2019-09-05 | 2021-12-28 | Cilag Gmbh International | Display panel or portion thereof with graphical user interface for energy module |
US11169584B2 (en) * | 2020-03-31 | 2021-11-09 | Western Digital Technologies, Inc. | Dual-connector storage system and method for simultaneously providing power and memory access to a computing device |
CN112000374B (zh) * | 2020-07-13 | 2024-01-02 | 深圳市智微智能软件开发有限公司 | 应用于安卓系统的usb触摸屏更换方法、装置、设备及介质 |
CN113971146B (zh) * | 2020-07-22 | 2024-05-28 | 旺玖科技股份有限公司 | 具自动更新固件功能的usb集线装置及具有该usb集线装置的主机系统 |
TWI749658B (zh) * | 2020-07-22 | 2021-12-11 | 旺玖科技股份有限公司 | 具自動更新韌體功能的usb集線裝置及具有該usb集線裝置的主機系統 |
KR102195564B1 (ko) * | 2020-09-25 | 2020-12-28 | 조성호 | 데이터 복사 시스템 및 그 동작 방법 |
US11768529B2 (en) * | 2021-01-12 | 2023-09-26 | Siliconch Systems Pvt Ltd | System and method for enabling power sharing in a multiport power sourcing device |
KR20220124006A (ko) * | 2021-03-02 | 2022-09-13 | 삼성전자주식회사 | 전원 공급 장치 및 전원 공급 장치의 전원 공급 제어 방법 |
US11968776B2 (en) | 2021-03-30 | 2024-04-23 | Cilag Gmbh International | Method for mechanical packaging for modular energy system |
US11963727B2 (en) | 2021-03-30 | 2024-04-23 | Cilag Gmbh International | Method for system architecture for modular energy system |
US11950860B2 (en) | 2021-03-30 | 2024-04-09 | Cilag Gmbh International | User interface mitigation techniques for modular energy systems |
US12040749B2 (en) | 2021-03-30 | 2024-07-16 | Cilag Gmbh International | Modular energy system with dual amplifiers and techniques for updating parameters thereof |
US12004824B2 (en) | 2021-03-30 | 2024-06-11 | Cilag Gmbh International | Architecture for modular energy system |
US20220318179A1 (en) * | 2021-03-30 | 2022-10-06 | Cilag Gmbh International | Intelligent data ports for modular energy systems |
US11857252B2 (en) | 2021-03-30 | 2024-01-02 | Cilag Gmbh International | Bezel with light blocking features for modular energy system |
US20220313369A1 (en) * | 2021-03-30 | 2022-10-06 | Cilag Gmbh International | Method for intelligent instruments for modular energy system |
US11980411B2 (en) | 2021-03-30 | 2024-05-14 | Cilag Gmbh International | Header for modular energy system |
US11978554B2 (en) | 2021-03-30 | 2024-05-07 | Cilag Gmbh International | Radio frequency identification token for wireless surgical instruments |
CN113839274B (zh) * | 2021-08-10 | 2024-02-06 | 立讯精密工业股份有限公司 | 一种用于数码设备与vr、ar或mr设备之间的供电装置及供电方法 |
TWI802065B (zh) * | 2021-10-29 | 2023-05-11 | 飛捷科技股份有限公司 | 可控制周邊裝置電源與訊號的通信介面轉接器、動態分配通信介面轉接器識別碼的方法及自動化診斷周邊裝置並修復問題的方法 |
TWI810032B (zh) * | 2021-12-01 | 2023-07-21 | 威鋒電子股份有限公司 | Usb積體電路、usb積體電路的操作方法及usb裝置 |
WO2023128219A1 (ko) * | 2021-12-31 | 2023-07-06 | 삼성전자 주식회사 | 외부 전자 장치들과의 연결을 제어하기 위한 전자 장치 및 방법 |
US12079460B2 (en) | 2022-06-28 | 2024-09-03 | Cilag Gmbh International | Profiles for modular energy system |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101317165A (zh) * | 2005-09-30 | 2008-12-03 | 赛普拉斯半导体公司 | 简化通用串行总线(usb)集线器体系结构 |
US20090248904A1 (en) * | 2008-03-25 | 2009-10-01 | Seiko Epson Corporation | USB host, control method thereof, computer program, USB hub and USB device |
CN103019355A (zh) * | 2011-12-07 | 2013-04-03 | 威盛电子股份有限公司 | 充电装置及其充电方法 |
CN103959592A (zh) * | 2011-10-08 | 2014-07-30 | 高通股份有限公司 | 电源适配器和使电力适配于电子设备的方法 |
US20150089092A1 (en) * | 2013-09-26 | 2015-03-26 | Unwired Technology Llc | Flexible mobile device connectivity to automotive systems with usb hubs |
Family Cites Families (55)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5845329A (en) | 1993-01-29 | 1998-12-01 | Sanyo Electric Co., Ltd. | Parallel computer |
US5675813A (en) | 1995-10-26 | 1997-10-07 | Microsoft Corporation | System and method for power control in a universal serial bus |
US5983327A (en) | 1995-12-01 | 1999-11-09 | Nortel Networks Corporation | Data path architecture and arbitration scheme for providing access to a shared system resource |
US5784581A (en) | 1996-05-03 | 1998-07-21 | Intel Corporation | Apparatus and method for operating a peripheral device as either a master device or a slave device |
KR100189781B1 (ko) | 1996-05-07 | 1999-06-01 | 윤종용 | 디스플레이 장치 및 그의 전원공급제어방법 |
US6119190A (en) | 1996-11-06 | 2000-09-12 | Intel Corporation | Method to reduce system bus load due to USB bandwidth reclamation |
US6308239B1 (en) | 1996-11-07 | 2001-10-23 | Hitachi, Ltd. | Interface switching apparatus and switching control method |
US6205501B1 (en) | 1998-01-07 | 2001-03-20 | National Semiconductor Corp. | Apparatus and method for handling universal serial bus control transfers |
US6408351B1 (en) | 1998-03-31 | 2002-06-18 | Compaq Computer Corporation | Host modem having a peripheral codec powered by a peripheral bus |
JP2000076038A (ja) | 1998-08-28 | 2000-03-14 | Matsushita Electric Ind Co Ltd | Usbハブ回路及びディスプレイ装置 |
GB2350212B (en) | 1999-02-09 | 2003-10-08 | Adder Tech Ltd | Data routing device and system |
US6601109B1 (en) | 1999-03-31 | 2003-07-29 | International Business Machines Corporation | USB-based networking and I/O hub |
GB9909849D0 (en) | 1999-04-28 | 1999-06-23 | Adder Tech Ltd | Usb switching device and system |
JP2000316006A (ja) | 1999-04-28 | 2000-11-14 | Nec Corp | バスマネージャ機能自動切換対応ノード、移動端末、及び、移動端末システム |
US6704824B1 (en) | 1999-07-27 | 2004-03-09 | Inline Connection Corporation | Universal serial bus adapter with automatic installation |
FR2799288B1 (fr) | 1999-09-23 | 2005-02-25 | Ibm | Systeme de communication sans fil utilisant un bus serie universel (usb) |
US6957287B2 (en) | 2001-11-09 | 2005-10-18 | Aten International Co., Ltd. | Asynchronous/synchronous KVMP switch for console and peripheral devices |
JP2003256351A (ja) | 2002-03-04 | 2003-09-12 | Yamaha Corp | Usbハブ |
KR20040008365A (ko) | 2002-07-18 | 2004-01-31 | 삼성전자주식회사 | 디스플레이 장치 및 방법 |
US6732218B2 (en) | 2002-07-26 | 2004-05-04 | Motorola, Inc. | Dual-role compatible USB hub device and method |
AU2003901297A0 (en) | 2003-03-20 | 2003-04-03 | Silverbrook Research Pty Ltd | Systems and apparatus (fpd001) |
US7711006B2 (en) | 2003-08-15 | 2010-05-04 | Napatech A/S | Data merge unit, a method of producing an interleaved data stream, a network analyser and a method of analysing a network |
US7073010B2 (en) | 2003-12-02 | 2006-07-04 | Super Talent Electronics, Inc. | USB smart switch with packet re-ordering for interleaving among multiple flash-memory endpoints aggregated as a single virtual USB endpoint |
US20060056401A1 (en) | 2004-09-14 | 2006-03-16 | Standard Microsystems Corporation | Peripheral sharing USB hub |
US20060227759A1 (en) * | 2004-09-14 | 2006-10-12 | Bohm Mark R | Peripheral Sharing USB Hub |
US20060059293A1 (en) | 2004-09-14 | 2006-03-16 | Henry Wurzburg | Universal serial bus switching hub |
JP2006127252A (ja) | 2004-10-29 | 2006-05-18 | Fujitsu Component Ltd | 切替機、切替方法及びプログラム |
US7346728B1 (en) | 2005-04-18 | 2008-03-18 | Intel Corporation | Method and apparatus for a hub capable of being self-powered for use in a USB-compliant system |
CN1976310B (zh) * | 2005-07-08 | 2014-04-16 | 美国博通公司 | 在网络中通过总线接口进行通信的方法 |
CN100493018C (zh) * | 2005-07-08 | 2009-05-27 | 美国博通公司 | 一种通过网络中的总线接口进行通信的方法和系统 |
DE602005005065T2 (de) * | 2005-10-13 | 2009-03-19 | Research In Motion Ltd., Waterloo | Vorrichtung und Verfahren zur Unterstützung der USB-Aufzählung eines BUS-betriebenen tragbaren Geräts |
US7246189B2 (en) | 2005-11-18 | 2007-07-17 | Vetra Systems Corporation | Method and apparatus for enhancing universal serial bus |
US7523243B2 (en) | 2006-04-14 | 2009-04-21 | Standard Microsystems Corporation | Multi-host USB device controller |
US7478191B2 (en) | 2006-04-14 | 2009-01-13 | Standard Microsystems Corporation | Method for automatically switching USB peripherals between USB hosts |
US7644217B2 (en) * | 2007-03-02 | 2010-01-05 | Microchip Technology Incorporated | Detecting connection to a USB host or hub without using an extra status input |
KR101329014B1 (ko) * | 2008-10-30 | 2013-11-12 | 삼성전자주식회사 | 휴대단말에서 스위칭 회로의 모드 제어 방법 및 장치 |
US20100262726A1 (en) | 2009-01-13 | 2010-10-14 | Tauscher Brian E | Method and apparatus for implementing a limited functionality embedded universal serial (USB) host controller on a fully functional downstream USB port |
US8055919B2 (en) | 2009-02-06 | 2011-11-08 | Standard Microsystems Corporation | Port power controller for USB hubs with legacy battery charge support |
US7882297B2 (en) * | 2009-02-20 | 2011-02-01 | Standard Microsystems Corporation | Serial bus hub with low power devices |
DE102009038760B3 (de) * | 2009-08-27 | 2011-01-05 | Wago Verwaltungsgesellschaft Mbh | Verfahren zur Datenkommunikation zwischen einem Automatisierungsgerät und einem Datenverarbeitungsgerät sowie Schnittstellentreiberprogramm und Schnittstellenumsetzer hierzu |
TWI498740B (zh) * | 2010-05-05 | 2015-09-01 | Genesys Logic Inc | 通用串列匯流排充電系統及其充電方法 |
US8850082B2 (en) * | 2010-08-30 | 2014-09-30 | Qualcomm Incorporated | Virtual USB compound device enumeration |
US20120105201A1 (en) * | 2010-10-29 | 2012-05-03 | Cisco Technology, Inc. | Validating Sensor Data at a Property Sensor-Coordinating Entity |
US9201480B2 (en) * | 2010-12-23 | 2015-12-01 | Standard Microsystems Corporation | Method and system for determining an arbitrary charging protocol in USB charging ports |
CN102064582B (zh) * | 2010-12-28 | 2012-11-21 | 鸿富锦精密工业(深圳)有限公司 | 可对外供电的终端 |
US9958507B2 (en) * | 2011-05-09 | 2018-05-01 | Analog Devices, Inc. | Channel verification of multiple channels on one chip |
US8843770B2 (en) * | 2011-10-31 | 2014-09-23 | Smsc Holdings S.A.R.L. | Device charging over USB using a plurality of handshakes |
EP2602722B1 (en) * | 2011-12-07 | 2020-04-08 | VIA Technologies, Inc. | USB charging module |
CN103309835A (zh) * | 2012-03-12 | 2013-09-18 | 祥硕科技股份有限公司 | 通用串行总线装置及其供电方法 |
US10635393B2 (en) * | 2012-03-29 | 2020-04-28 | Intel Corporation | Buffer-related USB communication |
US9026712B2 (en) * | 2012-06-25 | 2015-05-05 | Intel Corporation | USB device control using endpoint type detection during enumeration |
JP2014115687A (ja) * | 2012-12-06 | 2014-06-26 | Canon Inc | データ処理装置、データ処理装置の制御方法、及びプログラム |
US9081705B2 (en) * | 2013-06-11 | 2015-07-14 | Apple Inc. | Methods and apparatus for reliable detection and enumeration of devices |
US9785595B2 (en) * | 2013-09-09 | 2017-10-10 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Multi-channel universal serial bus (USB) to subrate channel systems |
US9804977B2 (en) | 2015-04-28 | 2017-10-31 | Microchip Technology Incorporated | Universal serial bus smart hub |
-
2015
- 2015-04-28 US US14/698,428 patent/US9804977B2/en active Active
-
2016
- 2016-04-03 CN CN201680024554.2A patent/CN107533529B/zh active Active
- 2016-04-03 JP JP2017555496A patent/JP2018514871A/ja active Pending
- 2016-04-03 KR KR1020177032674A patent/KR20170140267A/ko unknown
- 2016-04-03 CN CN202110942412.7A patent/CN113609050B/zh active Active
- 2016-04-03 EP EP16719590.8A patent/EP3289469B1/en active Active
- 2016-04-03 WO PCT/US2016/025798 patent/WO2016175983A1/en active Application Filing
- 2016-04-25 TW TW109126084A patent/TWI757809B/zh active
- 2016-04-25 TW TW105112853A patent/TWI701549B/zh active
-
2017
- 2017-10-31 US US15/799,883 patent/US10282313B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101317165A (zh) * | 2005-09-30 | 2008-12-03 | 赛普拉斯半导体公司 | 简化通用串行总线(usb)集线器体系结构 |
US20090248904A1 (en) * | 2008-03-25 | 2009-10-01 | Seiko Epson Corporation | USB host, control method thereof, computer program, USB hub and USB device |
CN103959592A (zh) * | 2011-10-08 | 2014-07-30 | 高通股份有限公司 | 电源适配器和使电力适配于电子设备的方法 |
CN103019355A (zh) * | 2011-12-07 | 2013-04-03 | 威盛电子股份有限公司 | 充电装置及其充电方法 |
US20150089092A1 (en) * | 2013-09-26 | 2015-03-26 | Unwired Technology Llc | Flexible mobile device connectivity to automotive systems with usb hubs |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108268398A (zh) * | 2018-02-01 | 2018-07-10 | 百度在线网络技术(北京)有限公司 | 用于操作外围设备的方法、设备和计算机可读存储介质 |
CN109063459A (zh) * | 2018-07-17 | 2018-12-21 | 北京云智信安科技有限公司 | 一种usb设备过滤装置和方法 |
CN111522762A (zh) * | 2019-02-02 | 2020-08-11 | 智微科技股份有限公司 | 传输接口电路 |
CN111522762B (zh) * | 2019-02-02 | 2022-03-29 | 智微科技股份有限公司 | 传输接口电路 |
Also Published As
Publication number | Publication date |
---|---|
TW201706772A (zh) | 2017-02-16 |
US20160321195A1 (en) | 2016-11-03 |
US9804977B2 (en) | 2017-10-31 |
US10282313B2 (en) | 2019-05-07 |
WO2016175983A1 (en) | 2016-11-03 |
TWI701549B (zh) | 2020-08-11 |
JP2018514871A (ja) | 2018-06-07 |
EP3289469B1 (en) | 2021-11-10 |
TWI757809B (zh) | 2022-03-11 |
KR20170140267A (ko) | 2017-12-20 |
CN107533529B (zh) | 2021-09-03 |
CN113609050A (zh) | 2021-11-05 |
EP3289469A1 (en) | 2018-03-07 |
US20180067875A1 (en) | 2018-03-08 |
CN113609050B (zh) | 2024-08-20 |
TW202105123A (zh) | 2021-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107533529A (zh) | 通用串行总线智能集线器 | |
JP6284882B2 (ja) | 医療用デバイスとその遠隔デバイスの間のセキュアな通信 | |
TWI236853B (en) | Communication adapter device, communication adapter, method for writing into nonvolatile memory, electric apparatus used for the same, and ROM writer | |
KR101159884B1 (ko) | 액세서리를 인증하는 방법 및 시스템 | |
US9032107B2 (en) | USB key and a method for communication between the USB key and a terminal | |
CN101438241B (zh) | 具有桥支持的平台引导 | |
CN101403994A (zh) | 存储装置和存储装置访问控制方法 | |
WO2018129515A1 (en) | Method, system and device for connecting devices | |
CN103838591B (zh) | 一种基于串行总线的多单片机升级方法及装置 | |
EP3435244B1 (en) | Electronic device and method for controlling same | |
CN109309661B (zh) | 对等(p2p)外围设备通信控制 | |
CN106447855A (zh) | 一种基于摇一摇开锁的方法及终端设备 | |
CN102662697A (zh) | 一种软件升级方法及装置 | |
CN109213530A (zh) | 一种基于usb的通信连接方法、移动终端及存储介质 | |
CN109254210A (zh) | 电子设备端口类型检测方法、装置、检测电路及电子设备 | |
CN107111568A (zh) | 用于在启用usb 设备时呈现驱动器安装文件的系统和方法 | |
CN104933349B (zh) | 具有下载验证功能的usb转接装置及下载验证方法 | |
CN111386433A (zh) | 电器及其控制方法 | |
CN110537171B (zh) | 测试设备及用于对设备驱动器软件进行测试的方法 | |
CN104535162A (zh) | 一种验证电子秤显示值真实性的方法 | |
US20160217004A1 (en) | Control method for a portable electronic device coming with an external control module | |
US7366957B2 (en) | Method and apparatus for controlling SAS/fibre target behavior from a host | |
CN104823174B (zh) | Usb3.0兼容设备的重新列举的方法和系统 | |
WO2016124032A1 (zh) | 数据交互方法 | |
CN108028844A (zh) | 利用零知识代码的认证方法和系统 |
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 |