用于控制台和外围设备的信号切换器的制作方法

文档序号:6432949阅读:204来源:国知局
专利名称:用于控制台和外围设备的信号切换器的制作方法
技术领域
本发明涉及用于控制台和外围设备的信号切换器,更具体来说,涉及一种用于在多个计算机系统中的任何一个中共享一视频监视器、多个控制台设备、以及一个或更多个外围设备的信号切换器。
背景技术
单用户或多用户键盘-视频-鼠标(“KVM”)切换器系统是这样一种信号切换器,它使单个用户或多个用户可以仅共享单个键盘、视频设备和鼠标,或者共享多组键盘、视频设备和鼠标。
当前的KVM切换器存在这样的问题如果诸如打印机的USB外围设备连接到该切换器,则在改变该切换器时,会中断到该外围设备的数据流。
通用串行总线(USB)是使个人计算机(PC)能够利用简单的电缆与各种设备进行互连的通信体系结构。USB实际上是以1.5或12兆位每秒(Mbps)的速度工作的双线(two-wire)串行通信线路。在启动时,或者当在工作过程中插入设备时,USB协议可以配置这些设备。这些设备被分为各种设备类。每个设备类对具有类似功能的设备定义了公共的行为和协议。
在下面的万维网站点http//www.usb.org上有关于USB标准的最新信息。在该资料源上有通用串行总线(USB)规范、USB HID使用补充,以及对于人机接口设备(HID)的设备类定义。
HID类主要包括由人使用来控制计算机系统的操作的设备。HID类设备的典型例子包括键盘和定位设备——例如,标准鼠标设备、跟踪球以及操纵杆;前面板控件——例如,旋钮、开关、按钮以及滑块;可以在诸如电话机、VCR遥控器、游戏设备或模拟设备的设备上发现的控件——例如,数据手套、油门(throttle)、方向盘以及方向踏板(rudderpedal);以及,可能不需要人工干预而将采用相似格式的数据提供给HID类设备的设备——例如,条形码阅读器、温度计或电压表。
需要一种KVM切换器,该KVM切换器还是一外围设备共享切换器,它可以使与该切换器相连的所有计算机共享任何USB外围设备,而在改变该切换器时不中断到该外围设备的数据流,并且它可以以异步方式或者以同步方式将KVM通道和外围设备通道切换到一公共计算机或不同计算机。

发明内容
本发明通过提供一种也是外围设备共享切换器的KVM切换器来满足这种需要,该外围设备共享切换器使与该切换器相连的所有计算机可以共享任何USB外围设备,并且它可以将KVM通道和外围设备通道以同步方式或者以异步方式切换到一公共计算机或多个不同的计算机,而在改变该切换器时不中断到该外围设备的数据流。可以利用KVM通道来以同步方式或者以异步方式切换USB外围设备。
本发明的USB KVMP使多个USB键盘和多个USB鼠标可以同时与一公共计算机通信。该USB KVMP向用户提供了多个USB外围设备通道,这些通道可以与诸如USB集线器、USB打印机、USB扫描仪、USB照相机等的所有种类的USB外围设备相连。
公开了一种信号切换器,用于在多个计算机系统中的任何一个中共享一视频监视器、多个控制台设备以及一个或更多个外围设备,该信号切换器包括CPU,包括用于存储一管理程序的第一存储器,该管理程序用于管理所述信号切换器;集线器切换器模块,连接到所述CPU,并被配置得与所述多个计算机系统中的任何一个以及所述一个或更多个外围设备进行通信,使得从该集线器切换器模块传送到所述一个或更多个外围设备的信号模拟为从一计算机的始发(origination);设备控制模块,用于模拟所述视频监视器和所述多个控制台设备,与所述CPU和所述集线器切换器模块相连;主机控制模块,连接到所述CPU,并被配置得与所述多个控制台设备进行通信;以及,视频控制模块,连接到所述CPU,并被配置得与一视频监视器设备进行通信。
在又一实施例中,所述信号切换器进一步包括一与所述CPU和所述视频控制模块相连的OSD控制设备。
在一优选实施例中,所述主机控制模块包括一根集线器,所述多个控制台设备以及一个或更多个外围设备是USB兼容的,并且所述多个控制台设备遵从一工业标准规范。
公开了一种共享方法,用于通过一信号切换器来在多个计算机系统中的任何一个中共享一视频监视器、遵从一工业标准的多个控制台设备、以及一个或更多个外围设备,该共享方法包括以下步骤初始化所述信号切换器;根据所述工业标准模拟所述多个控制台设备中的一个或更多个;枚举(enumerate)一根集线器的多个端口;确定是否存在任何下游端口,并且如果存在,则枚举该下游端口;确定所述多个控制台设备中的任何一个是否连接到所述根集线器或任何下游端口,并且如果所述多个控制台设备中的任何一个连接到所述根集线器或任何下游端口,则枚举每个已连接设备;确定多个已连接设备中的任何一个是否遵从所述工业标准;枚举每个兼容的已连接设备,并分析来自该设备的任何数据;以及重复轮询以确定是否已插入或拔出所述多个控制台设备中的任何一个、所述一个或更多个外围设备中的任何一个、或任何下游端口,并且如果确定已插入或拔出所述多个控制台设备中的任何一个、所述一个或更多个外围设备中的任何一个、或任何下游端口,则重置控制。
在一个优选实施例中,所述管理程序包括用于管理所述信号切换器的步骤以及所述的方法。
描述了一种信号切换器,用于在多个计算机系统中的任何一个中共享一个或更多个控制台设备、以及一个或更多个外围设备,该信号切换器包括第一通道,用于将所述一个或更多个控制台设备中的一选定控制台设备连接到所述多个计算机系统中的一第一选定计算机系统;第二通道,用于将所述第一选定计算机系统连接到所述一个或更多个外围设备中的一选定外围设备,该第二通道具有所述第一选定计算机系统与所述选定外围设备之间的数据流;第三通道,用于将所述选定控制台设备连接到所述多个计算机系统中的一第二选定计算机系统;以及切换装置,用于在不中断通过所述第一选定计算机系统与所述选定外围设备之间的第二通道的数据流的情况下,在所述第一通道与所述第三通道之间切换所述选定控制台设备。


参照下面的说明、所附权利要求以及附图,可以更好地理解本发明的这些以及其他特征、方面以及优点,其中图1是使用图4的信号切换器的一种可能用法的系统图。
图2是使用图4的信号切换器的另一种可能用法的系统图。
图3是使用图4的信号切换器的另一种可能用法的系统图。
图4是本发明的信号切换器的方框图。
图5是可用作用于图4的信号切换器的管理控制程序的处理过程的功能框图。
具体实施例方式
本发明涉及一种用于共享一个或更多个视频监视器、键盘、鼠标和外围设备的信号切换器。本发明的信号切换器是KVM(键盘视频鼠标)切换器和外围设备共享切换器的组合。参照本公开,KVM切换器在本技术领域内是公知的。根据本发明的信号切换器使与该切换器相连的所有计算机可以共享与该切换器相连的所有USB外围设备。
信号切换器可以以异步方式或者以同步方式将多个KVM通道和多个外围通道切换到公共计算机或不同计算机。换句话说,可以一起(以同步方式)或者单独地(以异步方式)切换所述多个KVM通道和多个外围通道。
本发明利用USB模拟程序来模拟HID(人机接口设备)规范,从而使一切换器与PC的USB端口通信,并且通过USB主机模拟程序,使切换器与诸如USB键盘和USB鼠标的USB设备以及USB集线器通信。换句话说,利用模拟可以使切换器表现为与外围设备相连的计算机,并且与此同时可以使该切换器与USB设备或USB PC通信。
尽管参照当前的HID规范对实施例进行了描述,但是,对于本技术领域内的技术人员来说,显然参照本公开可以利用任何用于设备交互的规范来实现本发明。
图1示出其中可以利用本发明的多种方式之一。在简单的配置中,根据本发明的信号切换器10允许用户利用监视器14、第一键盘16以及第一鼠标18来控制多个计算机系统12(由第一计算机121和第二计算机122表示)以及USB兼容外围设备20(如第一打印机22所示)。在该示例中,即使在监视器14、第一键盘16和第一鼠标18正在控制计算机122时,仍可以由计算机121保持对外围第一打印机22的控制。这是因为,切换器10可以在把监视器14、第一键盘16和第一鼠标18连接到第一计算机121的第一通道(未示出)与把监视器14、第一键盘16和第一鼠标18连接到第二计算机122的第三通道(未示出)之间进行切换,同时保持把第一计算机121连接到第一打印机22的第二通道(未示出),从而不中断第一计算机121与第一打印机22之间的第一数据流。
参照图2,示出了一种更鲁棒的用法,使得用户可以利用监视器14、第一键盘16以及第一鼠标18来控制更多的计算机系统12(由第一计算机121、第二计算机122、第三计算机123和第四计算机124表示)以及多个USB兼容外围设备20。请注意,根据本发明,可以把一个或更多个USB集线器24也连接到信号切换器10,所述一个或更多个USB集线器24又可以连接到诸如扫描仪241的一个或更多个其他外围设备、或者一个或更多个下游集线器242,该一个或更多个下游集线器242又可以连接到诸如第二打印机2421的一个或更多个外围设备。因此,可以看出,可以把任何所需的集线器/外围设备树连接到信号切换器10,从而可以在一组监视器14、第一键盘16和第一鼠标18的管理下,由一个或更多个计算机系统12以同步方式或者以异步方式来控制该所需的集线器/外围设备树。
因此,例如,当在各计算机系统12之间切换键盘16和鼠标18以及可选地切换监视器14时,可以保持第一计算机121与第一打印机22之间的第一数据流、第三计算机123与扫描仪241之间的第二数据流以及第四计算机124与第二打印机2421之间的第三数据流,而不发生中断。
可以与本发明相连的外围设备包括但不限于USB集线器、打印机、扫描仪以及照相机。参照本公开,本技术领域内的技术人员可以设想外围设备的其他示例。
参照图3,根据本发明的又一个用法,作为示例,可以连接诸如第二键盘161、第三键盘162、第二鼠标181、第二鼠标182、第一复合KM设备191和第二复合KM设备192的多个KM设备。优选地,由于一个切换器通常只具有两个USB控制台端口,所以可以连接一个或更多个下游集线器,例如可以与一个或更多个KM设备相连的第一下游集线器171和第二下游集线器172。
参照图4,信号切换器10包括一用于管理该信号切换器10的中央处理单元(“CPU”)30。一USB集线器切换器模块32连接到CPU 30,并被配置得通过第一输出端口34与多个计算机系统12进行通信。USB集线器切换器模块32还被配置得通过输出端口36与外围设备20进行通信。在图4中,在第一输出端口34与USB集线器切换器模块32之间示出有4个连接,但这仅是示例而已。连接的数量等于配置信号切换器10所针对的计算机系统12的数量。
同样地,在图4中,在第二输出端口36与USB集线器切换器模块32之间示出有两个连接,但这也仅是示例而已。连接的数量等于配置信号切换器10所针对的外围输出端口的数量。
USB集线器切换器模块32是外围设备20与计算机系统12之间的桥接器,它使信号切换器10可以把多个计算机系统中的每个计算机系统连接到一个或更多个外围设备。参照本公开,适合用作USB集线器切换器模块的电路结构在本技术领域内是公知的。在一个优选实施例中,USB集线器切换器模块包括由CPU固件控制的4个USB集线器和矩阵模拟切换器。Texas Instruments制造适于该模块的USB集线器芯片,并且可以利用专用集成电路(ASIC)设计方法学来构造该模块。
用于控制信号的USB设备控制模块38连接到CPU 30和USB集线器切换器模块32。USB设备控制模块38包括多个USB设备芯片,该多个USB设备芯片用于为第一输出端口34模拟诸如第一键盘16和第一鼠标18的控制台设备。换句话说,通过使一USB设备芯片模拟附连到第一计算机系统的多个控制台设备,就可以把实际的控制台设备切换到第二或不同的计算机系统,而使第一计算机系统与相连的外围设备之间的任何通道以及这些通路内的任何数据流保持不中断,并且第一计算机系统仍然如同现在被模拟的实际控制台设备仍被连接那样进行处理。由CPU 30固件来控制这些芯片。每个计算机系统12需要一个设备芯片。参照本公开,适于用作USB设备控制模块的电路结构在本技术领域内是公知的。
在图4中,在USB设备控制模块38与USB集线器切换器模块32之间示出有4个连接,但这仅是示例而已。连接的数量等于配置信号切换器10所针对的计算机系统12的数量。在一个优选实施例中,USB设备控制模块包括4个USB设备芯片,并且这些芯片也是由CPU固件来控制的。Philips Semiconductors制造适于在该模块中使用的芯片,并且可以利用专用集成电路(ASIC)设计方法学来构造该模块。
参照图4,CPU 30包括一用于存储一管理程序42的第一存储器40,该管理程序42用于管理信号切换器10的操作。图5示出了适合用于本发明的管理程序42的部分的功能的流程图,下面将对其进行说明。
一USB主机控制模块44被配置得与多个控制台设备进行通信,并且连接到CPU 30。参照本公开,适于用作USB主机控制模块的电路结构在本技术领域内是公知的。USB主机控制模块44本身包括一用于通过第三输出端口48与一个或更多个控制台设备或下游集线器进行通信的根集线器46。该根集线器是USB兼容集线器,参照本公开,USB兼容集线器在本技术领域内是公知的。
如图3所示,一个或更多个下游集线器,如第一下游集线器171和第二下游集线器172,可以连接到信号切换器10,通过多个第三输出端口48中的一个与根集线器46进行通信。通过添加更多个下游集线器,可以以菊花式连接多达127个设备。
典型地,第三输出端口48包括两个物理端口。在不同实施例中,可选地可以把一内部附加控制台USB集线器(未示出)连接到根集线器46,以增加连接控制台设备可用的第三输出端口48的数量。所述CPU 30固件能够处理集线器功能。参照本公开,适于根据在此公开的方法运行所述CPU的固件的结构在本技术领域内是公知的。
一可选的视频/显示板控制设备模块50连接到CPU 30,以与诸如光板(light panel)、LED、按钮、视频控制器切换器或其他可选的显示板设备的各种可选平板显示设备54(以虚线示出)通信。如果提供屏幕上显示(on screen display)(“OSD”)功能,则把一可选的OSD控制设备模块56(以虚线示出)连接到CPU 30和视频/平板控制设备模块50,以对通过第四输出端口52送到外部监视器14的信号进行控制和调节。参照本公开,适合用作视频/显示板控制设备模块或可选的OSD控制设备模块的电路结构在本技术领域内是公知的。
参照图5,适合用于本发明的管理程序42的一部分的处理过程可以按如下步骤进行。在步骤210,初始化信号切换器10。在步骤212,枚举根集线器46,并保存来自根集线器46的任何根集线器消息。在步骤214,确定是否有任何设备连接到根集线器46。如果确定一设备连接到根集线器46,则程序处理过程进行至步骤216,否则该处理过程进行至步骤226。
在步骤216,枚举被确定连接到根集线器46的每个设备,对来自被确定连接到根集线器46的USB设备的设备消息进行分析,并将该设备消息保存在适当的存储器中。
接着,在步骤218,确定是否有任何下游集线器连接到根集线器46。如果确定没有下游集线器连接到根集线器46,则该处理过程进行至步骤228。如果检测到一下游集线器,则该处理过程进行至步骤220。在步骤220,枚举被确定连接到根集线器46的每个下游集线器,并且获取该集线器的下游端口状态。然后,该处理过程进行至步骤222。
在步骤222,确定下游集线器的端口中是否存在任何设备。如果确定下游集线器的端口中不存在设备,则该处理过程进入步骤228。如果在步骤222确定在下游集线器的端口中存在设备,则该处理过程进行至步骤224,在步骤224处,枚举每个这种设备,然后对连接设备消息进行分析,并将该连接设备消息保存在适当的存储器中。然后,该处理过程进行至步骤228。
在步骤228,确定所连接的设备是不是HID键盘或鼠标,或者其他HID兼容设备。参照本公开,本技术领域内的技术人员将明白,该步骤可以测试与任何所需的工业标准或设备类的兼容性。如果所连接的设备不是这种设备,则该处理过程进行至步骤232,步骤232是导致在步骤240重置HOST控制RAM的错误处理过程。如果确定所连接的设备是兼容的,则在下一步骤230,枚举每个这种设备,并分析其报告数据。兼容测试的原因在于,所述切换器已被构建来模拟遵从工业标准设备类的特定控制台设备。
然后,控制过程进行至步骤226,在步骤226处,轮询集线器切换器模块32。在可选的步骤234处,轮询任何显示板或LED电路。在步骤238,确定是否拔出或插入了任何下游端口。如果拔出或插入了下游端口,则该处理过程进行至步骤240,在步骤240处,重置HOST控制RAM。继在步骤240中重置HOST控制RAM之后,该处理过程返回至步骤212。否则,该处理过程进行至步骤242,在步骤242处,轮询多个KVM设备,然后,该处理过程返回至步骤234。
所述固件控制所述多个USB控制台设备和PC控制台设备模拟过程。不需要控制所述多个USB外围设备,因为本发明在所述多个USB外围设备与所链接的PC之间产生了通路或通道,通过切换在兼容的KM设备与PC之间的通道,可以不中断该通路或通道。
利用下面的人机接口设备(HID)规范,参照本公开,本技术领域内的技术人员能够构造适合用于本发明的USB模拟程序。HID规范定义了一种用于HID依从USB设备的准语言(quasi-language),以告知主机如何解释该主机所接收的数据。该准语言是灵活的,并且允许采用许多方式描述同一功能性。本发明可与其他工业标准规范一起使用,其中所述工业标准规范定义了一过程来告知主机如何解释该主机从标准兼容设备接收的数据。
目前,在http//www.usb.org/developers/data/devclass/HID1_11.pdf上可获得对人机接口设备(HID)固件规范-6/27/01,1.11版的设备类定义,在此引入该设备类定义。在http//www.usb.org/developers/hidpage.html上可获得该规范和其他HID相关信息的最新版本。
使用总线分析器,例如Computer Access Technology Corp.当前销售的一种总线分析器,可以读取USB总线,并对来自键盘和鼠标的数据分组进行分析。HID规范提供关于分组意义的解释。通过提供遵从所述HID规范或某种未来的标准规范的所有控制台设备,只需模拟这种HID设备或标准兼容设备即可。
在一优选实施例中,包括USB集线器切换器控件、USB设备芯片控件(设备模拟)以及控制台设备模拟(主机模拟)在内的整个系统程序都内建在CPU芯片(闪速ROM或PROM)中。参照本公开并且根据所参考的规范,本领域内的技术人员能够编写适于使切换器表现为与外围设备相连的PC并且同时使该切换器与USB设备或USB PC进行通信的USB模拟程序。
在上面的说明中,参照本发明的特定实施例对本发明进行了说明。然而,显然,在不偏离本发明的更宽泛的精神和范围的条件下,可以对本发明进行各种修改和更改。因此,可以认为本说明书和附图是说明性的,而非限制性的。应该明白,不应该认为本发明受这些实施例的限制,而应该根据所述权利要求来解释本发明。
权利要求
1.一种信号切换器,用于在多个计算机系统中的任何一个中共享一视频监视器、遵从一工业标准的多个控制台设备、以及一个或更多个外围设备,该信号切换器包括CPU,包括一用于存储一管理程序的第一存储器,该管理程序用于管理所述信号切换器;集线器切换器模块,与所述CPU相连,并被配置得与所述多个计算机系统中的任何一个以及所述一个或更多个外围设备进行通信,使得从该集线器切换器模块传送到所述一个或更多个外围设备的信号模拟为从一计算机的始发;设备控制模块,用于根据所述工业标准模拟所述多个控制台设备,与所述CPU和所述集线器切换器模块相连;主机控制模块,与所述CPU相连,并被配置得与所述多个控制台设备进行通信;以及视频控制模块,与所述CPU相连,并被配置得与一视频监视器设备进行通信。
2.根据权利要求1所述的信号切换器,进一步包括一与所述CPU和所述视频控制模块相连的OSD控制设备。
3.根据权利要求1所述的信号切换器,其中,所述主机控制模块包括一根集线器。
4.根据权利要求1所述的信号切换器,其中,所述工业标准是对于人机接口设备的设备类定义。
5.一种共享方法,用于通过一信号切换器来在多个计算机系统中的任何一个中共享一视频监视器、遵从一工业标准的多个控制台设备、以及一个或更多个外围设备,该共享方法包括以下步骤初始化所述信号切换器;根据所述工业标准模拟所述多个控制台设备中的一个或更多个;枚举一根集线器的多个端口;确定是否存在任何下游端口,并且如果存在,则枚举该下游端口;确定所述多个控制台设备中的任何一个是否连接到所述根集线器或任何下游端口,并且如果所述多个控制台设备中的任何一个连接到所述根集线器或任何下游端口,则枚举每个已连接设备;确定多个已连接设备中的任何一个是否遵从所述工业标准;枚举每个兼容的已连接设备,并分析来自该设备的任何数据;以及重复轮询以确定是否已插入或已拔出所述多个控制台设备中的任何一个、所述一个或更多个外围设备中的任何一个、或任何下游端口,并且如果确定已插入或已拔出所述多个控制台设备中的任何一个、所述一个或更多个外围设备中的任何一个、或任何下游端口,则重置控制。
6.根据权利要求1所述的信号切换器,其中,所述管理程序包括用于管理所述信号切换器的多个步骤、以及权利要求5所述的方法。
7.一种信号切换器,用于在多个计算机系统中的任何一个中共享一个或更多个控制台设备和一个或更多个外围设备,该信号切换器包括第一通道,用于将所述一个或更多个控制台设备中的一选定控制台设备连接到所述多个计算机系统中的一第一选定计算机系统;第二通道,用于将所述第一选定计算机系统连接到所述一个或更多个外围设备中的一选定外围设备,该第二通道具有所述第一选定计算机系统与所述选定外围设备之间的数据流;第三通道,用于将所述选定控制台设备连接到所述多个计算机系统中的一第二选定计算机系统;以及切换装置,用于在不中断通过所述第一选定计算机系统与所述选定外围设备之间的第二通道的数据流的情况下,在所述第一通道与所述第三通道之间切换所述选定控制台设备。
全文摘要
提供了一种信号切换器(10),用于在多个计算机系统(12)中的任何一个中共享一视频监视器(14)、遵从一工业标准的多个控制台设备(16、18)、以及一个或更多个外围设备(20),该信号切换器包括CPU(30),具有用于存储一管理程序(42)的第一存储器(40),该管理程序用于管理所述信号切换器;集线器切换器模块(32),连接到所述CPU,并被配置得与所述多个计算机系统中的任何一个以及所述一个或更多个外围设备进行通信;设备控制模块(38),用于根据所述工业标准模拟所述多个控制台设备,与所述CPU和所述集线器切换器模块相连;主机控制模块(44),连接到所述CPU,并被配置得与所述多个控制台设备进行通信;以及,视频控制模块(50),连接到所述CPU,并被配置得与一视频监视器设备进行通信。
文档编号G06F13/14GK1602473SQ02824593
公开日2005年3月30日 申请日期2002年11月6日 优先权日2001年11月9日
发明者娄子正, 陈尚仲, 杨世贤 申请人:阿托恩科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1