操作远程USB主控制器

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

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

1.一种系统,包括:
计算机,包括:
处理器,以及
耦合到所述处理器的存储器,具有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缓冲区I/O请 求;以及
USB主控制器,耦合到所述远程主控制器功能驱动器以便于将 USB装置耦合到所述远程放置的主计算机。
10.如权利要求9所述的远程USB主控制器,其中,所述介质传 输配置为支持从由局域网、广域网、个域网、电话网、无线链路、USB、 IEEE 1394和电力线组成的组中选定的介质。
11.如权利要求9所述的远程USB主控制器,其中,所述远程主 控制器功能驱动器包括对小端口功能的支持。
12.一种远程主控制器,包括:
介质传输,与远程放置的主计算机中设置的所述远程主控制器的 抽象的对应介质传输通信,所述主计算机包括耦合到所述远程主控制 器的抽象的USB驱动器;
远程主控制器功能驱动器,耦合到所述介质传输以处理来自所述 远程主控制器的抽象的远程主控制器功能的USB缓冲区I/O请求,所 述远程主控制器功能驱动器配置为将USB命令转换成非USB命令, 反之亦然;以及
非USB主控制器,耦合到所述远程主控制器功能驱动器以便于将 非USB装置耦合到所述远程放置的主计算机。
13.如权利要求12所述的远程主控制器,其中,所述介质传输配 置为支持从由局域网、广域网、个域网、电话网、并行接口、无线链 路、USB、IEEE 1394和电力线组成的组中选定的介质。
14.如权利要求12所述的远程主控制器,其中,非USB主控制 器包括硬件,所述硬件支持对利用从由局域网、广域网、个域网、电 话网、并行接口、无线链路、USB、IEEE 1394和电力线组成的组中选 定的通信介质链路的装置的控制。
15.一种将USB装置连接到主计算机的方法,所述方法包括:
将远程设置的主控制器耦合到具有USB驱动器和所述远程主控 制器的抽象的主计算机;以及
将USB装置耦合到所述远程主控制器的USB主控制器。
16.如权利要求15所述的方法,其中,所述远程主控制器的抽象 和所述远程主控制器包括配置为支持在介质类型的介质上的传输的互 补介质传输,并且所述方法还包括对USB缓冲区I/O请求进行格式处 理用于在所述介质上从所述主计算机传输到所述远程主控制器。
17.如权利要求15所述的方法,其中,所述方法还包括在所述远 程主控制器上恢复收到的所述USB缓冲区I/O请求。
18.一种将非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装 置41OD的非USB连接。也就是说,USB主控制器310被替换为非 USB主控制器,并且远程主控制器功能驱动器315配置为处理上文所 述的USB和非USB命令之间的转换。
尽管本文中说明和描述了特定的实施例,但是本领域中的那些普 通技术人员和其他人员可以理解,在没有背离本发明的范围的情况 下,大量不同的备选和/或等效实施可代替示出和描述的特定实施例。 本申请要涵盖本文讨论的任何修改和变更。因此,显然本发明仅由权 利要求以及其等价项所限定。
相关申请的交叉引用
本申请要求2004年2月16日提交的美国临时申请号为 60/521070、名称为“Remote USB Host Controlling(远程USB主机控 制)”的权益。
高效检索全球专利

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

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

申请试用

分析报告

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

申请试用

QQ群二维码
意见反馈