操作远程USB主控制器

阅读:547发布:2020-05-11

专利汇可以提供操作远程USB主控制器专利检索,专利查询,专利分析的服务。并且本文描述的是用于远程USB主机控制的设备和方法。,下面是操作远程USB主控制器专利的具体信息内容。

1.一种用于操作远程USB主控制器的系统,包括:
计算机,包括:
处理器,以及
耦合到所述处理器的存储器,所述存储器具有USB驱动器和 远程主控制器的抽象;以及
与所述计算机耦合并且距所述计算机远程设置的远程主控制器, 与作为所述计算机的USB主控制器的所述远程主控制器的抽象结合 来工作,所述远程主控制器包括介质传输,以根据非USB通信协议而 与所述远程主控制器的抽象的对应介质传输进行通信。
2.如权利要求1所述的系统,还包括耦合到所述远程主控制器的 远程装置。
3.如权利要求2所述的系统,其中,所述远程装置是从数码相机打印机、数字音乐播放器/录音机、键盘光标控制装置中选定的一个。
4.如权利要求1所述的系统,其中,所述远程主控制器的抽象还 包括远程主控制器功能,配置为缓存由USB驱动器所做的I/O请求
5.如权利要求1所述的系统,其中,所述远程主控制器的抽象还 包括远程主控制器驱动器,配置为提供功能独立的处理以对到所述远 程主控制器的传输的USB缓冲区I/O请求进行格式处理。
6.如权利要求1所述的系统,其中,所述远程主控制器的抽象的 所述介质传输配置为将用于某种介质类型的经格式处理的USB缓冲 区I/O请求在所述介质类型的介质上传输到所述远程主控制器。
7.如权利要求6所述的系统,其中,所述远程主控制器包括相似 类型的介质传输,和耦合到所述远程主控制器的介质传输和USB主控 制器的远程主控制器功能驱动器。
8.如权利要求6所述的系统,其中,所述传输介质包括从由局域 网、广域网、个域网、电话网、并行接口、无线链路、USB、IEEE 1394 和电线组成的组中选定的通信链路。
9.一种远程USB主控制器,包括:
介质传输,以根据非USB通信协议而与远程放置的主计算机中设 置的所述远程USB主控制器的抽象的对应介质传输通信;
远程主控制器功能驱动器,耦合到所述远程USB主控制器的介质 传输以处理来自所述远程USB主控制器的抽象的远程主控制器功能 的USB缓冲区I/O请求;以及
USB主控制器,耦合到所述远程主控制器功能驱动器以便于将 USB装置耦合到所述远程放置的主计算机。
10.如权利要求9所述的远程USB主控制器,其中,所述介质传 输配置为支持从由局域网、广域网、个域网、电话网、无线链路、USB、 IEEE 1394和电力线组成的组中选定的介质。
11.如权利要求9所述的远程USB主控制器,其中,所述远程主 控制器功能驱动器包括对小端口功能的支持。
12.一种远程主控制器,包括:
介质传输,以根据非USB通信协议而与远程放置的主计算机中设 置的所述远程主控制器的抽象的对应介质传输通信,所述主计算机包 括耦合到所述远程主控制器的抽象的USB驱动器;
远程主控制器功能驱动器,耦合到所述远程主控制器的介质传输 以处理来自所述远程主控制器的抽象的远程主控制器功能的USB缓 冲区I/O请求,所述远程主控制器功能驱动器配置为将USB命令转换 成非USB命令,及将非USB命令转换成USB命令;以及
非USB主控制器,耦合到所述远程主控制器功能驱动器以便于将 非USB装置耦合到所述远程放置的主计算机。
13.如权利要求12所述的远程主控制器,其中,所述介质传输配 置为支持从由局域网、广域网、个域网、电话网、并行接口、无线链 路、USB、IEEE 1394和电力线组成的组中选定的介质。
14.如权利要求12所述的远程主控制器,其中,非USB主控制 器包括硬件,所述硬件支持对利用通信介质链路的装置的控制,所述 通信介质链路从由局域网、广域网、个域网、电话网、并行接口、无 线链路、USB、IEEE 1394和电力线组成的组中选定。
15.一种将USB装置连接到主计算机的方法,所述方法包括:
提供包括USB驱动器和远程主控制器的抽象的主计算机;
提供包括USB主控制器的远程主控制器,所述远程主控制器距所 述主计算机远程设置;
将所述远程主控制器耦合到所述主计算机;
将USB装置耦合到所述远程主控制器的所述USB主控制器;及
对USB缓冲区I/O请求进行格式处理,以用于通过使用远程主控 制协议的从所述主计算机到所述远程主控制器的传输,其中所述远程 主控制协议不同于USB通信协议。
16.如权利要求15所述的方法,其中,所述远程主控制器的抽象 和所述远程主控制器包括配置为支持介质上的传输的互补介质传输。
17.如权利要求15所述的方法,其中,所述方法还包括在所述远 程主控制器上恢复收到的所述USB缓冲区I/O请求。
18.一种将非USB装置作为USB装置连接到主计算机的方法, 所述方法包括:
将远程主控制器耦合到具有USB能力和所述远程主控制器的抽 象的主计算机,其中所述远程主控制器配置为接纳非USB装置并且用 来在USB信号和至少一种类型的非USB信号之间转换;通过所述远 程主控制器将所述非USB装置耦合到所述主计算机;
在所述远程主控制器中包括的介质传输与所述远程主控制器的抽 象中包括的对应介质传输间进行通信;
在所述介质传输与所述对应介质传输之间进行通信时旁路任何 USB驱动器。
19.如权利要求18所述的方法,其中,包括在所述远程主控制器 中的介质传输和所述对应介质传输配置为支持介质上的传输,并且所 述方法还包括:
对USB缓冲区I/O请求进行格式处理用于在所述介质上从所述主 计算机传输到所述远程主控制器;以及
在所述远程主控制器上恢复收到的所述USB缓冲区I/O请求。
20.如权利要求19所述的方法,其中,所述方法还包括将所述 USB缓冲区I/O请求转换成非USB缓冲区I/O请求。

说明书全文

技术领域

发明一般涉及装置连接性领域。

背景技术

常规通用串行总线(“USB”)结构基于主/从通信,其中系统中的 主控称为USB主控制器(“主控制器”)。常规主控制器紧密集成在“主 机”平台中(例如集成在处理器、处理器芯片组中),作为外围控制接 口(“PCI”)或其他“机内”总线等上的总线主控制器。USB主机包 括应用、装置驱动器(driver)(它管理附着的USB装置)、USB总线驱 动器(它给USB装置驱动器提供标准的USB总线服务抽象)、主控制 器驱动器和物理USB主控制器(其中有几种类型),所有这些都管理总 线的数据通信。主控制器提供状态和控制机制以使USB主机管理 USB端口用于将USB装置和/或USB集线器连接。USB集线器是使 一个或多个USB装置(通过附加的一个或多个附加端口)通过该集线 器连接回USB端口的装置。按照通用串行总线规范2.0,一个主控制 器最多可连接127个装置。
常规主控制器提供寄存器和基于存储器接口,主控制器驱动器 利用该接口在系统和连接的USB装置之间实现数据传送。寄存器为 主控制器的“根端口”提供状态控制信息、以及关于数据传送的管理 和一般状态/控制信息。基于存储器的接口提供控制/状态信息。寄存 器是用于根端口的状态和控制、关于数据传送的主控制器管理和一般 状态/控制信息。基于存储器的接口是用于特定于数据传送的控制/状 态。常规的USB系统软件实施向USB装置驱动器提供面向缓冲区的 流服务。USB装置驱动器将缓冲区输入/输出(“I/O”)请求提交到USB 总线驱动器,USB总线驱动器依次将该缓冲区发送给合适的USB主 控制器驱动器。USB主控制器驱动器然后利用其特定接口将该缓冲 区交付给主控制器硬件。实际上,整个栈是面向缓冲区的。
常规USB主机的产品已紧密集成了主控制器。因此,USB装置 必须在USB主机规定的距离之内。该距离由电缆的长度而定,并且 电缆的长度是若干限制最大传输时间的协议参数的函数。因此,常规 USB控制器的瓶颈是其可连接到USB装置的距离。
附图说明
将通过附图中说明的示例性实施例、而非限定的方式描述本发 明,附图中相似的编号指示类似的组件,并且附图中:
图1说明根据本发明实施例的计算环境的方框图
图2说明根据本发明一个实施例、为与远程主控制器通信而进行 的图1的软件组件的耦合。
图3说明根据本发明实施例具有主计算机和远程主控制器的计 算系统环境的方框图。
图4a-d说明根据本发明实施例连接到远程主控制器的主机系统 的示例性配置。

具体实施方式

本发明的说明性实施例包括但不限于面向缓冲区的抽象,其能使 主控制器实际地被放置在除USB主计算机内部之外的某个地方。
将通过使用本领域的那些技术人员向本领域的其他技术人员表 达他们工作主旨时普遍采用的术语描述说明性实施例的各个方面。然 而,本领域技术人员显见,仅使用某些所描述的方面可实现本发明。 出于说明的目的,阐述了特定的数字、材料和配置以便使读者透彻地 理解说明性实施例。然而,本领域技术人员显见,没有这些特定的细 节也可实现本发明。在其他情况下,为了不混淆说明性实施例,省略 或简化了众所周知的特征。
而且,各种操作和/或通信将作为多个离散的操作和/或通信依次 以最有助于理解本发明的方式描述;然而,描述的顺序不应该理解为 暗示这些操作和/或通信是必须是顺序相关的。具体地说,这些操作 和/或通信不必按提出的顺序执行。
“在一个实施例中”这一术语重复使用。该术语一般不指同一实 施例;当然,它也可以指同一实施例。“包含”、“具有”和“包括” 这些术语是同义的,除非语境指定不同的含义。
本发明的实施例定义了使USB主控制器物理放置在除USB主机 (例如,主计算机)“内部”以外的某个地方的结构。换句话说,USB 主控制器对于传统主机平台可能是“远程的”。在各种实施例中,远 程USB主控制器(“远程主控制器”)通过扩展灵活的、面向缓冲区的 USB接口使USB连接映射在多链路技术之上从而增强了传统USB主 机系统软件的结构,多链路技术包括但不限于局域网(“LAN”)、广 域网(“WAN”)、个域网(“PAN”)、电话网(例如,POT、PBX等)、 无线链路(例如,无线电话网、802.11网、蓝牙等)、USB、电气和电 子工程师协会(“IEEE”)1394、电线等。尽管各种示例性实施例中 的抽象是以USB为中心的(以便容易结合现有软件栈),但是其他实施 例可以不是以USB为中心的。无论如何,远程主控制器的下游装置 可以是或不是USB装置。因此,该抽象使远程主控制器的示例性实 施暴露在下游作为USB装置连接到USB主机的装置,无论它们是否 为活动的USB装置。
通过在最低驱动层提供良好定义的抽象,远程主控制器还可提供 将USB主机系统软件桥接到非USB应用(例如基于电力线的家庭自 动化)的标准化方法,这允许非USB技术使用在USB装置类规范和 驱动器中出现的全套应用支持。
远程主控制器以至少两种方式扩展如何将装置连接到主计算机 的模型。首先,它允许与主计算机物理分离的USB装置连接到主计 算机上。例如,家庭中一个房间中的USB打印机扫描仪能使用两 个房间之间的一些其他连接(例如有线或无线LAN)连接另一个房间 中的计算机。其次,远程主控制器允许装置使用不同的物理链路作为 远程主控制器和装置之间的连接。换句话说,远程主控制器提供了用 于将USB支持软件桥接到其他类型的物理硬件的单端标准化接口。 该模型例如可能是如何引进无线USB的基础。它还可允许已连接到 电力线的装置(例如,家庭应用、照明开关、插座等)连接到计算机上, 并作为USB装置出现,给出了计算机与这些装置对接并控制这些装 置的标准化方式。
在计算环境中使用一个或多个远程主控制器的另一个优点是:具 有多个主控制器(或者是多个远程控制器或者是具有一个或多个远程 主控制器的本地主控制器)时,由于每个主控制器管理它自己的一组 USB端口,USB使计算机可访问的USB端口的数量有相应的增加。
图1说明适用于本发明实施例的示例性主计算机100。本领域中 的那些普通技术人员和其他人员可以理解:主计算机100可包括比图 1中示出的那些组件更多的组件。然而,为了公开用于实现本发明的 授权实施例,没有必要示出所有这些常规组件。如在图1中所示,主 计算机100包括用于通过远程USB主控制器(没有示出)连接到远程装 置(没有示出)的传输接口130。如上所述,传输接口130可以是用于 支持LAN、WAN、PAN、电话网、电力线连接、串行总线(USB)或 无线连接的传输接口。传输接口130包括用于这种连接的必要的电 路、驱动器和/或收发器,并且被构造为与用于这种连接的适当协议 一起使用。在说明书权利要求中如“远程USB主控制器”中使用 的“远程”这一词以及类似的其他术语是指远程主控制器通过自身或 结合本地USB主控制器来使USB或非USB装置能够位于比通用串 行总线规范v2.0中规定的距离更远的地方。
主计算机100还包括处理单元110、可选显示器140和存储器 150,所有这些通过总线120与传输接口130互连。本领域中的那些 普通技术人员和其他人员可以理解:显示器140在所有形式的计算装 置中不是必须的,因此它是可选组件。存储器150一般包括随机访问 存储器(“RAM”)、只读存储器(“ROM”)和永久海量存储装置,例 如磁盘驱动器、闪存RAM等。存储器150存储操作系统155和根据 本发明的实施例形成的至少一个USB驱动器160(例如,特定USB装 置驱动器、小端口驱动器或驱动器的某些组合)。在各种实施例中, 存储器150还存储至少一个远程主控制器功能165(例如,小端口)、 至少一个远程USB主控制器驱动器170和应用175。本领域中的那 些普通技术人员和其他人员可以理解:当作为分离的、单个的软件组 件描述USB驱动器160、远程主控制器功能165、远程主控制器驱动 器170和应用175时,它们实际上可能由多个软件组件组成,或者实 际上是一个或多个集成的软件组件的子部分。
可以理解,使用与计算机可读介质(例如软盘、磁带、 DVD/CD-ROM驱动、闪存RAM或者网络接口卡)相关联的驱动机制 (没有示出)或网络机制(没有示出)可将软件组件从计算机可读介质载 入到主计算机100的存储器150中。
虽然仅示出一个远程主控制器传输接口130,但是主计算机100 可选地包括一个或多个本地USB主控制器(没有示出)。在各种实施例 中,远程主控制器功能165、远程主控制器驱动器170和远程主控制 器传输接口130便于远程主控制器300将例如用于读和/或写机器可 读介质的装置、数码相机、打印机、例如MP3播放器的数字音乐播 放器/录音机等外部装置与主计算机100相连。例如键盘鼠标的各 种输入装置还可通过组件165、170和130耦合到个人计算机100。
图2说明根据本发明的一个实施例、为与远程主控制器300通信 而进行的图1的软件组件的耦合。一般而言,根据本发明实施例的远 程主控制器系统的实施包括远程主控制器功能165、远程主控制器驱 动器170和远程主控制器传输接口130,通过该远程主控制器传输接 口130,操作系统155经由USB驱动器160与远程主控制器300通 信并控制远程主控制器300。在一个实施例中,应用175提供与经由 远程主控制器300连接的远程USB装置(没有示出)相连的必要逻辑连 接。下文中,远程主控制器传输接口130也可称为远程主控制器介质 传输。
USB驱动器160执行其常规功能,即对远程主控制器功能165 进行缓冲区I/O请求并且服务来自远程主控制器功能165的回复,就 像远程主控制器功能165结合远程主控制器驱动器170和传输接口 130组成“本地USB主控制器”一样。因此,可采用多种装置类相 关方式的任何其中之一实施USB驱动器160。远程主控制器功能165 与远程主控制器300上的对应物协作来完成USB驱动器160对远程 主控制器功能165所支持的功能的缓冲区I/O请求。在各种实施例中, 可使用多个远程主控制器功能165来支持多个功能。每个远程主控制 器功能165的实施是功能相关的。远程主控制器驱动器170配置为根 据远程主控制器协议(例如,基于传输控制协议/网际协议[“TCP/IP”] 的消息协议)将缓冲区I/O请求(独立于远程主控制器功能165支持的 功能的本质)打包成由远程主控制器传输接口130传输的适当的传输 格式(例如以太网)。远程主控制器驱动器170还配置为提取通过远程 主控制器传输接口130从远程主控制器300接收的应答消息中的USB 内容。
图3说明本发明的一个示例性实施例,其中通过远程主控制器 300将主计算机100连接到远程放置的USB装置、USB键盘380。本 领域中的那些普通技术人员和其他人员可以理解图3示出的装置布 置仅是根据本发明一个示例性实施例的装置的一种布置,并且包括非 USB装置和/或非USB通信链路的装置的其他配置可与本发明的其他 实施例一起使用。
主计算机100包括用来通过远程主控制器300与远程放置的USB 装置、USB键盘380通信的多个软件和硬件组件。一个这样的组件 是USB人机接口装置(“HID”)驱动器320,它是用于在逻辑上控制 USB键盘380的装置驱动器。USB键盘380还包括在逻辑上受控于 主计算机的USB HID驱动器320的USB HID键盘功能385。主计算 机100还包括为主计算机100提供USB功能的USB驱动器160。
另外,主计算机100还包括用来“抽象”主计算机100和远程 主控制器300之间的连接的抽象层360。抽象层360包括远程主控制 器功能165、远程主控制器驱动器170和远程主控制器介质传输130。 远程主控制器功能165通过远程主控制器驱动器170、远程主控制器 介质传输130和远程主控制器300的相应远程主控制器介质传输305 与远程主控制器300的远程主控制器功能驱动器315在逻辑上通信。 更具体地说,远程主控制器驱动器170和远程主控制器300之间的物 理通信路径通过远程主控制器介质传输130借助于远程主控制器协 议到达远程主控制器300上的远程主控制器介质传输305。远程主控 制器介质传输305还与远程主控制器功能驱动器315通信,也借助于 远程主控制器协议(同一远程主控制器协议或另一协议)。
远程主控制器300还包括其自身的物理连接远程USB装置(例如 USB键盘380)的USB主控制器310。USB主控制器310物理连接USB 键盘380的USB总线接口395。然而,在远程主控制器300和USB 键盘380之间的逻辑连接是在远程主控制器功能驱动器315和USB 键盘380的USB逻辑装置390之间。如上文所述,经由USB键盘380 的USB HID键盘功能385处理USB键盘的高级通信和控制,该USB HID键盘功能385与主计算机100上的USB HID驱动器320通信(通 过主计算机100与远程主控制器300以及远程主控制器300与USB 键盘380之间的上述逻辑和物理连接)。
从上文对经由远程主控制器300连接到主计算机100的远程放置 的USB键盘380的描述可知,本发明的实施例允许装置“远程”于 这些装置要连接的主计算机。
本领域中的那些普通技术人员和其他人员可以理解:图3示出的 装置仅是本发明的一个实施例的一种示例性配置,并且可包括更多或 更少的组件。例如,主计算机的驱动器(USB驱动器160、主控制器 功能165和远程主控制器驱动器170)作为分离的单个驱动器示出。在 本发明的其他实施例中,可使用更多或更少的驱动器以便于USB装 置、本地和远程主控制器之间的通信。在其他实施例中,可使用备选 通信路径(逻辑的和物理的)在组件之间发送信号
图4a至4d说明本发明的其他示例性实施例,包括非USB装置 可耦合到具有USB驱动器的主计算机、允许主计算机使用其USB栈 操作非USB装置的示例性实施例。非USB装置可包括但不局限于其 他串行总线装置(例如IEEE1394)、局域网络装置或并行接口装置。
图4a说明本发明的实施例的配置,其中,主计算机100A具有到 远程主控制器300A的非USB有线连接,但是具有到USB装置405A 的USB连接。本领域中的那些普通技术人员和其他人员可以理解: 从主计算机100A到USB装置405A的逻辑通信可继续使用USB驱 动器作为远程主控制器300A,并且主计算机上的抽象层360抽象出 非USB连接使得无须引入分离的非USB连接驱动器,可继续进行与 USB装置405A逻辑通信。
图4B说明一个示例性实施例,其中主计算机100B具有到远程 主控制器300B的非USB有线连接,该远程主控制器300B又具有到 非USB装置410B的非USB有线连接。对于该实施例,USB主控制 器310被替换为适于非USB连接的非USB主控制器。远程主控制器 功能驱动器315还可配置为处理USB命令和非USB命令之间的转换。 本发明的这种实施例虽然没有采用任何USB连接,仍能利用主计算 机100B的抽象层360将100B的非USB装置当作USB装置,并且利 用USB装置驱动器与非USB装置410B通信和/或控制非USB装置 410B。
图4c类似于图4a,然而,主计算机100C和远程主控制器300C 间的传输介质是无线连接。也就是说,远程主控制器介质传输130和 305配置为支持主计算机100和远程主控制器300之间的无线连接。 远程主控制器300C又具有到USB装置405C的USB连接。
类似地,在图4d中,主计算机100D具有到远程主控制器300D 的无线连接。因此,如图4c所述同样配备了远程主控制器介质传输 130和305。然而,远程主控制器300D具有到类似图4B的非USB 装置410D的非USB连接。也就是说,USB主控制器310被替换为 非USB主控制器,并且远程主控制器功能驱动器315配置为处理上 文所述的USB和非USB命令之间的转换。
尽管本文中说明和描述了特定的实施例,但是本领域中的那些普 通技术人员和其他人员可以理解,在没有背离本发明的范围的情况 下,大量不同的备选和/或等效实施可代替示出和描述的特定实施例。 本申请要涵盖本文讨论的任何修改和变更。因此,显然本发明仅由权 利要求以及其等价项所限定。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈