智能卡虚拟集线器的制作方法

文档序号:6470907阅读:320来源:国知局
专利名称:智能卡虚拟集线器的制作方法
技术领域
本发明涉及智能卡。尤其涉及一种集成集线器的智能卡阅读器,其中所述智能卡阅读器可被轻易集成至诸如键盘、桌上型计算机或互联网设备的设备内。
背景技术
智能卡一般与传统信用卡的尺寸相同。由于其包含一个嵌入式微芯片,所以被称为智能卡。智能卡能够储存个人电子数据,所述个人电子数据可被用于鉴权用户使用其计算机,以及在相关电子商务事务期间内鉴权用户。这种技术需要用于数据事务的智能卡阅读器硬件与软件部件,其有效地增加安全性,且使经认可用户能够存取极机密的数据和/或参与绑定事务。由于其提供了增强的网络安全性,智能卡通常被用于可信赖的电子商务与数字事务安全性。
时至今日,智能卡实际上已被用于高技术产业的各个方面——从商务应用至识别,从协助管理至互联网/电子商务事务,从电信至广播电视下载。计算机网络使用的增加,以及互联网作为一种用于电子商务与电子通信两者的机制的出现,对于智能卡而言,加速了需求的增长与可用应用的增长。
因为智能卡可以储存信息以保护隐私及数据安全,同时严格而精确地限制对这种数据的存取,所以智能卡正演变为一种计算机及互联网接入的有利选择。在这种类型的应用中,智能卡成为计算机网络的安全延伸。因此,计算机制造商逐步在其供应给客户的计算机产品内包括智能卡阅读器。这样,这种产品能够满足现今在互联网接入、网络接入以及电子事务内的运行电子商务安全性挑战。
以前的智能卡阅读器解决方案具有以下的一些或全部缺点
·一般需要两个不同的接口电缆及连接器,例如PS/2及RS232,以便将智能卡阅读器连接至计算机。
·由于计算机主板上缺少可用的RS232连接器,故可能必须在计算机内加入扩展接口卡,以支持增加的智能卡阅读器功能。
·需要更多的部件以建立典型的智能卡阅读器解决方案。
·典型的智能卡阅读器解决方案使计算机的制造成本较高。
·智能卡阅读器解决方案可能需要两个独立的设备/盒,以处理键盘和智能卡阅读器两者的功能。
·因为一般需要两条电缆及两个设备盒,故目前的解决方案在设计上较为笨重。
·因为基于诸如RS232与PS/2的陈旧技术,故已知的智能卡阅读器解决方案并非即插即用。
·已知的智能卡阅读器解决方案不能热插入。相反,使用这种解决方案一般要求用户关闭计算机,例如以更换发生故障的智能卡阅读器或键盘,然后重新启动计算机,以载入启动智能卡阅读器功能的软件驱动程序。
·用户可能需要摘下计算机外壳来更换发生故障的内部扩展接口插件。
所需要的是一种能够提供智能卡阅读器技术的优点,而不会有这种技术目前的限制与缺点的智能卡阅读器解决方案。

发明内容
本发明提供一种能够提供智能卡阅读器技术的优点,而不会有这种技术目前的限制及缺点的智能卡阅读器解决方案。在此公开的基于一种新颖的智能卡虚拟集线器的智能卡阅读器解决方案可以节省成本,使得计算机制造商能够将诸如智能卡键盘的智能卡阅读器解决方案作为标准计算机特征提供给客户。
为了克服目前在市场上可得到的现有智能卡阅读器解决方案的缺点,本发明至少特别提出以下问题
·现有技术解决方案占用两个计算机接口,例如PS/2及RS232,经常会导致增加扩展卡以为智能卡阅读器生成附加点的高成本决策。
·现有技术解决方案需要两条专用电缆,以将智能卡阅读器连接至计算机。
·现有技术解决方案并非热插入。相反,用户需要重启智能卡阅读器所附加到的计算机,以载入操作智能卡阅读器所需的软件,例如在智能卡阅读器被拆除或被再次重新附加时。
·现有技术解决方案的制造成本较高,目前每个约需$30.00US。
在此公开的本发明的当前优选实施例提供了一种智能卡键盘,它是即插即用的,也是可以热插入的。本发明的这一方面使得无需切断计算机的电源即可替换与改变发生故障的智能卡键盘成为可能。这对于需要诸如24×7可用性的无停止时间的电子商务与互联网应用来说非常重要,所述应用例如是支持电子商务事务的应用。
在此公开的智能卡虚拟集线器芯片包括一个智能卡阅读器接口,它使得智能卡阅读器能够被与键盘集成,而无需粘结逻辑与附加部件。诸如智能卡键盘的最终产品是即插即用的。这允许在将智能卡键盘连接至计算机时,即可自动配置和立即使用;且提供了一种可以热插入的设备,它可用于替换或改变发生故障的智能卡键盘,而无须关闭计算机。诸如智能卡键盘的最终产品也具有典型的制造成本,每个约低于$15.00US。
本发明部分基于发明者的这种认识,即计算机目前配备了USB连接器,而顾客需要配备USB接口,而非RS232接口的新外围设备。
本发明通过仅允许经过单通信接口与一条电缆互连,从而简化了智能卡键盘与计算机之间的接口。通过使用一种称为USB的实体结构,智能卡虚拟集线器将键盘与智能卡阅读器两者的功能经过USB总线附加至主计算机。
USB总线接口及虚拟集线器实体结构的组合至少可以提供以下优点·使用四线USB电缆与USB连接器而将智能卡键盘耦合至主计算机,而非使用现有技术所要求的两条电缆,即一个9芯RS232电缆与连接器,以及一个6芯PS/2电缆与连接器。
·本发明借助MS windows操作系统的支持,可提供智能卡阅读器功能至工业标准USB键盘的轻易集成,仅需要最小的工程与软件开发努力。
·本发明支持即插即用,并允许设备是可以热插入的,以方便配置与安装。
·本发明具有部件数量较少的特征,且制造成本较低。
USB总线USB是用于支持主计算机与宽泛的可同时接入外围设备之间数据交换的电缆总线。可经由使用单电缆与连接器的同一USB总线共享多个外围设备。
USB总线支持即插即用配置及可热插入检测。一旦新设备附加至总线,其将由主计算机所检测,并自动安装所需的软件驱动程序从而接入该设备,所述软件驱动程序一般包括于windows 98/2000/ME操作系统内。
通过使用USB总线,智能卡键盘仅需要一条4线USB电缆来将该智能卡键盘连接至主计算机的USB连接器。
USB智能卡虚拟集线器实体结构智能卡虚拟集线器将符合ISO7816的智能卡阅读器接口与USB集线器组合起来,所述USB集线器可以提供最多三个用于将设备连接至USB总线的附加点,借以将这种设备接口至主计算机。本发明当前优选实施例中的集线器提供诸如键盘的一个USB功能设备可以附加至的一个端口。通过由USB驱动器与设备驱动器处理的主机预定的、基于令牌的通信协议,附加键盘可与内嵌智能卡阅读器接口共享公用USB总线带宽。


图1是示出用于将智能卡阅读器加入键盘的常规解决方案的方框图;图2是示出将键盘控制器集成至智能卡虚拟集线器芯片以提供根据本发明的智能卡键盘的方框图;图3是示出智能卡虚拟集线器实体结构的方框图;以及图4是示出智能卡虚拟集线器的功能设计与操作的详细方框图。
具体实施例方式
本发明包括智能卡虚拟集线器,其提供智能卡阅读器功能,并提供一个或多个用于将设备连接至USB总线的附加点,借以将这种设备接口至主计算机。本发明当前优选实施例中的集线器内嵌智能卡阅读器接口,它用于提供一个诸如键盘的一个USB功能设备可以附加到的端口。本领域技术人员应当理解的是,如USB技术规范所支持的,可以通过提供附加端口而附加任何数量的设备。此外,尽管在此借助USB总线来描述本发明,但本领域技术人员应当理解的是,本发明可轻易适用于与已知的或可能研发出来的总线标准类似的总线标准。再者,尽管于此借助智能卡阅读器/键盘形式要素来描述本发明,但本领域技术人员应当理解的是,本发明可轻易适用于任何理想的形式要素,且本发明并不仅限于所描述的示例性形式要素。
通用串行总线(见Universal Serial Bus Specification 1.1,Copyright 1998,Compaq Computer Corporation,IntelCorporation,Microsoft Corporation,NEC Corporation,可见http//www.usb.org)于1995年最先出现。USB的主要目标是定义外部扩展总线,所述外部扩展总线可将外围设备加入计算机,如同将电话接通墙上插座一样便利。该程序的驱动目标是使用方便与低成本。这些都可以由外部扩展实体结构来实现,所述外部扩展实体结构强调·计算机主控制器硬件与软件,·坚固的连接器与电缆组件,
·外围设备友好的主-从协议,以及·可通过多端口集线器扩展。
主计算机硬件与软件的作用系统软件的作用是为所有应用软件提供IO系统的统一视野。它隐藏了硬件实施方式细节,使得应用软件更加便携。尤其是对于USB IO子系统而言,它管理外围设备的动态附加与释放。被称为枚举的这一阶段包括与外围设备通信以发现应当载入的设备驱动器的身份,如果所述设备驱动器先前未被载入的话。在枚举被用于运行数据传送的期间内,每个外围设备都会被指配一个唯一地址。在运行期间内,主计算机启动到特定外围设备的事务,每个外围设备都接受其事务并相应地回应。此外,主计算机软件将外围设备并入系统电源管理方案内,且可以管理整个系统电源而无须用户互动。
集线器的作用除了为USB外围设备提供附加连接性的作用之外,集线器也会向附加的外围设备提供管理的电源。它识别外围设备的动态附加,并在配置期间内向外围设备提供最大100mA的电流。在外围设备被配置之后,总线供电的集线器可提供最大100mA的电流,而自供电的集线器可提供最大500mA的电流。总线供电的集线器从上游电缆中接收其电源,而自供电的集线器具有自己的电源。新附加的集线器会被指配唯一地址,且集线器可能会被级联,直至五级深度。在运行期间内,集线器起到双向中继器的作用,并根据需要在上游(指向主机)与下游(指向设备)电缆上中继USB信号。集线器也会监控这些信号,并处理寻址到自身的事务。所有其它事务都被中继至附加设备。集线器支持12Mb/s(全速)和1.5Mb/s(低速)外围设备两者。
外围设备的作用所有USB外围设备都是遵守所定义协议的从设备。它们必须对从主计算机发送的请求事务做出反应。外围设备响应诸如请求关于设备及其配置详细信息的控制事务。外围设备使用标准USB数据格式发送数据至主机并接收来自主机的数据。至/从计算机主机的所述标准化数据移动,以及由外围设备完成的解释给予USB对于计算机主机软件微小改变的巨大弹性。USB1.1外围设备可以12Mb/s或1.5Mb/s操作,而USB2.0(建议的)可以较快速度操作。
本发明在本发明的优选实施例中,附加(嵌入、内建与外部)外围设备通过由USB驱动器及设备驱动器处理的主机预定的、基于令牌的通信协议,共享公用USB总线带宽。
图1是示出用于将智能卡阅读器加入键盘的常规解决方案的方框图。
键盘130通过PS/2电缆166连接至计算机110的PS/2连接器160。PS/2电缆166是6线电缆,包括5V、接地、数据以及时钟线。键盘130所需的电源由计算机110经过PS/2电缆166提供。键盘控制器135位于键盘130内,其被用于编码按键输入,以及将这些输入发射至计算机110。
智能卡阅读器120通过RS-232串行电缆155,并经由计算机110的串行端口连接器150连接至计算机。RS-232串行电缆155是9线电缆,包括DTR、DCD、CTS、GND、数据发射及数据接收线。电源是被从计算机110通过RS-232电缆155提供至智能卡阅读器120。智能卡阅读器120内部至少有3个部件,其中包括RS-232接口芯片、装有智能卡固件的微控制器,以及用于处理计算机与智能卡140之间数据交换的智能卡接口芯片。
传统智能卡键盘解决方案过于昂贵。它使用两种不同种类的通信接口,即RS232与PS/2,以及两条电缆以与计算机通信。由于其包括两个设备,即键盘与智能卡阅读器,所以它还会浪费更多桌面空间。
图2是示出将键盘控制器集成至智能卡虚拟集线器电路以提供根据本发明的智能卡键盘的方框图。图2示出经过USB数据端口203连接至智能卡虚拟集线器200以与计算机110通信的USB键盘控制器135。优选智能卡虚拟集线器200具有一个上游USB数据端口201、一个下游智能卡接口202以及一个下游USB数据端口203。
上游USB数据端口201借助4线USB电缆295连接至计算机110的USB串行A插座293。所述四线电缆包括D+微分信号、D-微分信号、接地信号及5V电源,并在一端具有串行A插头。智能卡虚拟集线器200从计算机110接收控制信息、指令及数据。在请求时,数据也会被从智能卡虚拟集线器200发送至计算机110。
智能卡阅读器接口功能被装入虚拟集线器。这些接口信号经过位于智能卡阅读器120内的智能卡接口端口202,连接至外部智能卡连接器127的触针。
在智能卡插入外部智能卡连接器127时,所述接口会提供控制以及与智能卡140交换信息所需的信号。智能卡140的信号插脚机械地接触外部智能卡连接器127的触针。该卡与计算机110交换信息,以响应由智能卡虚拟集线器200提供的信号。
下游USB数据端口203连接至位于键盘130内的外部USB键盘控制器135。在键盘130上输入的击键由USB键盘控制器135编码,并被以USB协议数据分组发射至智能卡虚拟集线器200,然后在键盘设备驱动器及USB驱动器控制之下被传送至计算机110,在优选实施例中,所述键盘设备驱动器及USB驱动器两者都位于计算机110内。虚线250指示一种可能形式要素内的智能卡键盘外壳,其内组合了键盘及智能卡阅读器。
图3是示出智能卡虚拟集线器200实体结构的方框图。智能卡虚拟集线器200是内置智能卡阅读器接口的常规USB集线器300。这通过将智能卡阅读器接口永久内部连接至常规USB集线器的下游端口302而构建。常规集线器300的其它下游端口203被用作附加点,以将其它外部USB外围设备经过上游数据端口201连接至计算机110。
智能卡虚拟集线器200实体结构实现两个目标
·它生成也带有符合ISO/IEC-7816的智能卡接口的USB功能接口。这种布置可轻易配置智能卡阅读器与其它USB设备。
·因为最多三个主要支持部件被嵌入智能卡虚拟集线器,所以它降低了将智能卡阅读器集成至键盘或其它USB设备的制造成本。这种配置否则将需要计算机印刷电路板(PCB)上外部设备的增加。
如图3所示,智能卡阅读器接口310连接至USB集线器300的数据下游端口302,以从计算机110接收控制与数据传送,还用于将数据从外部智能卡发射至计算机110。智能卡阅读器接口310提供外部智能卡与计算机110之间的双向数据传送。本发明还包括卡片接口逻辑,其用于生成接口信号以支持符合ISO 3716标准的任何类型智能卡的操作。所述卡片接口逻辑生成的接口信号包括重新设置、卡片电源启动及卡片时钟信号。
来自计算机(110)的USB连接器293的5伏特电源,通过USB电缆350的电源线353连接至电源开关320。来自集线器300的电源启动信号360开启电源开关320,以向连接至下游端口203的设备370提供5V电源。一旦集线器300检测到设备连接到下游端口203,即发出电源启动信号360。
电源开关320也会向智能卡的触点提供3V或5V的VCC电压供应,以响应来自智能卡阅读器310的控制信号315。
图4是示出根据本发明的智能卡虚拟集线器200的功能设计与操作的详细方框图。图4所示的布置是图3所示系统的扩展。此处就它们如何工作的细节、使其工作所需技术以及满足设计目标所需的子部件及部件等方面解释图3内所示出的功能块。
USB集线器300包括集线器控制器410、中继器415、电源控制器418、智能卡端口控制器420以及USB设备端口控制器425。
集线器控制器410连接至USB收发信机402,它在USB收发信机402内从计算机110接收控制及数据事务。集线器控制器410根据从计算机110接收的控制信息来控制和管理中继器415、电源控制器418、端口控制器420与425的操作。
集线器控制器410同样也会维持集线器300的配置信息及参数,以及规定电源消耗需求、电源管理、数据传送协议与数据分组大小的描述符。所述描述符用于建立计算机110、集线器控制器410、中继器415、电源控制器418以及端口控制器420与425之间的功能、接口及通信协议。当USB收发信机402最先经过USB电缆连接至计算机110的USB连接器293时,计算机110从集线器控制器410读取并得到那些参数。计算机110然后发出适当指令,以建立在集线器300中正确运行的符合这些配置参数的特定功能,所述集线器300包括集线器控制器410、中继器415、电源控制器418及端口控制器420与425。它也会配置自身,以协同系统软件及设备驱动器来操作集线器300。这些特定功能设置、配置及关系会保持不变,直至收发信机402与计算机110断开。收发信机402的重新连接至计算机110将会重新启动该配置过程。该独特配置过程被称为即插即用,它允许计算机110自动识别任何附加至USB总线的新设备,同时也建立与计算机的操作关系。
集线器控制器410还维持端口控制器420与425、电源控制器418及中继器415的状态改变信息,并在请求时将所述信息提供给计算机110。所述状态改变信息包括任何或所有电源改变、过电流、端口连接/断开、端口启动/禁止以及端口挂起/恢复改变。
集线器控制器410也会解码从计算机110寻址至它的控制指令,并将必要的数据提供回计算机。当指令寻址到智能卡阅读器端口控制器420或USB设备端口控制器425时,集线器控制器410会为计算机110寻址到的各个端口控制器生成必要的控制信号。
在本发明当前优选实施例中,集线器控制器支持两个用于数据事务的端点,即一个控制端点,为端点#0,以及一个第二中断端点,为端点#1。集线器控制器包括数字锁相环(PLL)、串行接口引擎(SIE)及指令翻译器。数字PLL从USB电缆提取时钟及数据。SIE处理同步模式识别、NRZI-NRZ转换、位(去)填充、CRC检查/生成、分组解码/编码及并行/串行转换。
指令翻译器由三个部件组成第一部件解码和处理寻址到端点#0的所有必要的USB标准指令;第二部件解码集线器分类指令,并保持下游端口与集线器的状态和改变信息;第三部件包括所有USB标准描述符与集线器分类描述符的描述符信息。指令翻译器解码所有寻址到集线器的集线器分类指令,并提供必要的数据,所述数据被在SIE内分成分组,并被发送至主计算机。所述数据例如可能包括集线器描述符数据、集线器状态及集线器状态改变信息。如果集线器分类指令寻址到端口,则指令翻译器会解码这种指令,并生成至主计算机寻址到的各个端口部件的必要控制信号。指令翻译器同样也会保持集线器及端口状态改变位图。当主计算机对中断端点#1发出IN请求时,如果状态改变位图内发生改变,则集线器控制器会将此状态改变位图发送至主计算机。否则,集线器控制器会发出NAK至主机,以指示状态改变位图内并未发生改变。
帧定时器功能(未示出)包括帧计时器逻辑,它同步于从主计算机的帧定时器得到的SOF分组,且从此生成两个定时点——EOFI及EOF2。集线器中继器使用这些定时参考点以检测错误设备,防止集线器被上游集线器禁止,并建立端口之间的连接性。
集线器中继器415连接至USB收发信机402、集线器控制器410、智能卡阅读器端口控制器420及USB设备端口控制器425。当集线器控制器410检测到USB设备控制器430附加到智能卡阅读器端口控制器420时,集线器控制器410将设置状态改变。计算机110会从集线器控制器410轮询状态改变信息,并确定设备是否被附加。计算机110然后将端口启动信号发送至集线器控制器410,以信号通知中继器415启动智能卡阅读器端口控制器420。
在相同的情形中,当外部设备370连接至USB收发信机403时,USB设备端口控制器425会被启动。当中继器415发现计算机110始发的到达USB收发信机402的数据传输时,如果智能卡阅读器端口控制器420被启动,则中继器415会在计算机110与USB设备控制器430之间建立连接。也可以类似方式在计算机110与外部设备370之间建立连接。该连接将保持建立状态,直至中继器415在USB收发信机402上检测到分组结束(EOP)传输。
当端口控制器420及425被启动,且中继器415发现在USB设备控制器430与外部设备370上所始发的数据传输时,中继器415也会在USB设备控制器430与计算机110之间、外部设备370与计算机110之间建立连接。一旦在所连接端口控制器上检测到EOP条件,则连接中断。
集线器中继器建立和拆卸根端口与下游端口之间通过端口控制器的连接。集线器中继器从根端口与所有下游端口得到D+与D-信号,并且基于端口逻辑机器的当前状态在一个下游端口与根端口之间建立连接,或者建立从根端口至所有下游端口的连接。多路复用被用作为上游连接性选择来自下游端口的数据。
智能卡端口控制器420与USB设备控制器430接口,用于计算机110与智能卡接口450之间的控制和数据传送。端口控制器425连接至USB收发信机403,以与外部USB设备370接口。当端口控制器425检测出外部USB设备370连接或未连接至USB收发信机403时,它会将端口状态和改变信息报告集线器控制器410。计算机110然后会通过集线器控制器410与中继器415的控制而启动、禁止或挂起端口控制器425。端口控制器425也会检测附加设备370的速度,并将来自计算机110的全速信号转换成路由至所述外部连接设备370的全速或低速信号,反之亦然。
端口控制器包括控制下游端口的端口状态机。为每个下游端口提供一个端口控制器。所述端口控制器检测端口上的连接/断开事件,并可以启动/禁止/挂起该端口。端口控制器同样也会将端口状态与改变信息报告集线器控制器、检测附加设备的速度,并将来自根端口的全速信号转换成用于下游端口的全/低速信号,反之亦然。
挂起/恢复控制器(未示出)处理所有USB挂起/恢复事件,其既像USB设备,又像通道一样通过至端口的传播挂起和恢复信令。挂起/恢复控制器监控根端口D+及D-信号的3msec空闲时间,以进入挂起模式。一旦集线器处于挂起模式,它可以在从主计算机接收恢复信号之后,或是因为恢复事件已在其下游端口中的一个上发生而恢复。
电源控制器418连接至集线器控制器410,并解码计算机110处始发的且从计算机100路由的设置端口电源信号与清除端口电源信号。所述电源控制器生成必要信号,以允许电源开关320控制供给连接至USB收发信机403的外部设备370的电压。在请求时,电源控制器418也会监控设备370的过电流状态,并经过集线器控制器410内的状态寄存器来更新计算机110。
如图3所示,USB设备控制器430、USB协议转换器440以及智能卡接口450都是智能卡阅读器接口310的关键部件。USB设备控制器(UDC)430连接至端口控制器420,以从计算机110接收寻址至它以及USB协议转换器(UPC)440和卡接口逻辑(CIL)450的控制指令及信息。UDC430会解码来自计算机110的控制指令,并通过将数据送回至计算机110来响应,或其将指令作为请求配置UDC430来执行。UDC430会将任何与CIL450相关的控制指令传送至USB协议转换器(UPC)440,从而使得UPC440可以解码指令并随即执行。在发射/接收至/从UPC440的期间内,如果违反了数据传送协议,则UDC430也会处理错误校正。
UDC将所述的卡接口逻辑接口至USB集线器。UDC有三个主要功能第一,维持有关控制端点、中断端点、批量输入端点及批量输出端点的信息,其中端点信息包括传送类型、方向、分组大小及地址指针。第二,解码和处理所有寻址到端点#0的控制传送。当UDC接收特定厂商或特定类别指令时,UDC会将其传送至UPC,从而使得UPC可以解码该指令并随即执行。UDC也会将“得到描述符”指令传送至UPC。第三,在事务与接口UPC期间内,如果违反数据传送协议,则处理错误校正。
UPC440连接至UDC430,并从计算机110接收寻址到外部智能卡的与智能卡接口450相关的控制指令与信息。UPC440实施诸如数据传送寄存器(端点)的USB协议智能卡的特定部分,以及诸如挂起、恢复、远程唤醒的操作。UPC440解码和处理USB指令,以生成至智能卡接口450的读/写寄存器/缓存器请求,从而建立通信和控制流。UPC440也会将从卡接口逻辑(CIL)读取的数据分成分组,以用于UDC430。
在本发明当前优选实施例中,存在着五种不同数据传送模式,即·用于从CIL寄存器读取配置和状态的控制读寄存器请求;·用于建立对CIL寄存器的控制和配置的控制写寄存器指令;·用于将CIL450中断通信至计算机110的中断;·用于从CIL缓冲存储器返回数据的FIFO读请求;以及·用于将数据发送至CIL缓冲存储器的FIFO写请求。
从USB软件的观点来看,这些数据传送是特定厂商读寄存器请求、特定厂商写寄存器请求、中断、批量输入及批量输出。从CIL450读取的数据,以及至CIL中断寄存器的中断传送(数据读取)需要重新传输缓存器。数据写入CIL450需要验证缓存器。
UPC440也包括整个智能卡阅读器接口310的描述符,所述智能卡阅读器接口310包括UDC430、UPC440及CIL450,并规定电源消耗要求、电源管理、数据传送协议及数据分组大小。在请求时,UPC440会通过集线器300的控制将描述符信息提供给计算机110。这在集线器300最先连接至计算机110的USB连接器293的配置期间内完成。计算机110根据描述符评价配置信息,并验证USB资源的可用性,然后发出设置配置指令来配置UDC430,所述指令规定嵌入功能(UDC+UPC+CIL)如何操作以及如何与计算机110接口。计算机110然后通过与系统软件和设备驱动器的协作而建立与UDC 430、UPC440及CIL450的连接。
卡接口逻辑(CIL)450连接至USB协议转换器440,以接收从计算机110启动的控制和数据传送,并用于将来自外部智能卡的数据发射至计算机110。所述的卡接口逻辑生成接口信号,以支持符合ISO3716标准的任何类型智能卡的事务。所述接口信号包括重新设置,卡电源启动以及卡时钟。
当CRDDET信号检测到卡片被插入卡片插口时,启动5VEN#信号,且+5VCC会由电源分配开关供给该卡片。如果智能卡并不提供应答重置(ATR)信号,则接口逻辑去激活该卡片。在10msec的延迟之后,启动3VEN#,+3VCC然后被供给该卡片。如果智能卡提供ATR,则所述的卡接口继续应用或维持至智能卡的相同操作电压。CRDLED#然后启动,智能卡LED将会被照亮。当去除智能卡时,LED会被关闭。
智能卡阅读器接口310在卡片接口逻辑与主计算机之间支持三种类型事务写入智能卡阅读器寄存器、主计算机从智能卡阅读器寄存器读取,以及智能卡阅读器中断至主计算机。当中断被发送至主计算机时,主机必须确认该中断。
CIL450生成用于外部卡的时钟,并建立到卡的数据传输的通信速度。定时器被来检查暂停时间,以确定数据传输和卡片活动的状态。它还包括配置寄存器,所述配置寄存器在UPC440的控制下,由计算机110用作设置CIL450的操作模式、通信协议及传输流。
当外部卡片插入卡片插口时,CIL450将会要求和检测卡片检测信号。CIL450启动对电源开关320的电源控制,以将电压供应提供给该卡片。
电源开关320调整由计算机110经过USB电缆提供的5V电压供应,并将其分配给外部智能卡以及连接至收发信机403的外部设备370。
对于智能卡来说,依据CIL450所要求的3VEN#信号或5VEN#信号,电源开关320会将+3V VCC或+5V VCC电压供应提供给卡片。当这两个信号不工作时,它指示卡片已被移去,电源开关320及VCC电压供应会被切断。
对于连接至收发信机403下游端口的USB设备370来说,在要求来自电源控制器418的端口电源信号时,电源开关320会向设备370提供+5V USB VCC。
电源开关320同样以过电流保护机制为特征。在因为来自设备370或外部卡的过量电流需要而超过电流限制门限时,电源开关320将故障标志以信号通知电源控制器418,并将该状态报告计算机110。
时钟开关406控制至UDC430、CPC 440及CIL450的时钟分配。在集线器300最先通过收发信机402连接至计算机时得到配置之前,计算机110仅有100mA可供集线器300使用,所述集线器300包括集线器控制器410、电源控制器418、中继器415以及端口控制器420与425。UCD、UPC及智能卡虚拟集线器200内任何在此期间内获得电源的部件都会从所述100mA容限中获得电源。在嵌入功能(UDC+UPC+CIL)有效时,它会使得总电源消耗大于100mA,集线器300可能无法得到配置。在集线器300得到配置之前,时钟开关406会提供时钟停止机制来控制嵌入功能电源消耗。在集线器300被配置之后,当来自智能卡端口控制器420的端口启动信号得到确定时,时钟开关320会分配48MHz时钟给UDC,并分配24MHz时钟给CIL。来自UDC的12MHz时钟输出然后会被提供给UPC。48MHz及24MHz时钟将在PLL470处始发。一旦集线器300被配置,如集线器配置描述符内所述,附加电流可用于嵌入功能(UDC+UPC+CIL)及从计算机110取出其插入智能卡。
尽管已参考优选实施例描述了本发明,但本领域技术人员可轻易理解的是,在并不背离本发明的精神和范围的情况下,其它应用可能会替换所述应用。因此,本发明应当仅有以下权利要求书限定。
权利要求
1.一种用于将至少一个USB设备连接至USB总线的单连接点的装置,包括用于将所述USB设备接口至主计算机的虚拟集线器,所述集线器包括智能卡阅读器接口,以及USB设备可能附加至的至少一个端口,其中所述USB设备以及所述智能卡阅读器接口通过主机预定的、基于令牌的通信协议而共享公用USB总线带宽,所述通信协议由USB驱动器以及对应的各个设备驱动器处理;耦合至所述智能卡阅读器接口的智能卡阅读器;以及包含所述虚拟集线器、所述智能卡阅读器以及至少一个端口连接的外壳,所述至少一个端口连接用于除了所述智能卡阅读器之外的至少一个USB设备。
2.根据权利要求1的装置,其中用于所述至少一个USB设备的所述至少一个端口连接到所述外壳的内部,而其中所述USB设备是USB键盘控制器和相关键盘。
3.根据权利要求1的装置,其中所述智能卡阅读器永久耦合至所述外壳内的所述虚拟集线器的所述智能卡阅读器接口;且其中所述虚拟集线器的至少一个下游端口被用作附加点,以将外部USB设备经过上游数据端口连接至所述主计算机。
4.根据权利要求1的装置,其中所述智能卡阅读器接口生成接口信号,以支持符合ISO 3716标准的任何类型智能卡的操作。
5.根据权利要求1的装置,其中所述虚拟集线器还包括集线器控制器;中继器;电源控制器;智能卡端口控制器;以及USB设备端口控制器。
6.根据权利要求5的装置,其中所述集线器控制器连接至USB收发信机,它在所述USB收发信机内从所述主计算机接收控制和数据事务;其中所述集线器控制器根据从所述主计算机接收的控制信息,控制和管理所述中继器、所述电源控制器以及所述端口控制器的操作。
7.根据权利要求5的装置,其中所述集线器控制器保持所述虚拟集线器的配置信息与参数,以及规定电源消耗需求、电源管理、数据传送协议及数据分组大小的描述符;其中所述描述符用于建立所述主计算机、所述集线器控制器、所述中继器、所述电源控制器、所述智能卡阅读器接口以及所述端口控制器之间的功能、接口和通信协议。
8.根据权利要求1的装置,其中所述虚拟集线器允许所述主计算机自动识别任何经过所述虚拟集线器的端口而附加至所述主计算机的新USB设备,同时也会建立与所述主计算机的操作关系。
9.根据权利要求1的装置,其中所述虚拟集线器允许任何新USB设备经过所述虚拟集线器的端口附加至所述主计算机,并由所述主计算机识别所述的任何新USB设备,而无需将所述主计算机加电或断电。
10.根据权利要求1的装置,其中所述虚拟集线器允许至少一个USB设备经过所述虚拟集线器,经过具有单连接器的单电缆而附加至所述主计算机。
11.根据权利要求5的装置,其中每个所述端口控制器都包括控制下游端口的端口状态机;其中每个下游端口都被提供一个端口控制器;其中每个所述端口控制器都检测相关端口上的连接/断开事件,并可以启动/禁止/挂起所述相关端口;其中每个所述端口控制器都会将端口状态和改变信息报告给所述集线器控制器,并检测相关USB设备的速度,且将来自根端口的全速信号转换为用于下游端口的全/低速信号,反之亦然。
12.根据权利要求1的装置,还包括包括时钟停止机制的时钟开关,用于在所述虚拟集线器被配置之前,控制嵌入功能的电力消耗,以及在所述虚拟集线器被配置之后,将时钟信号分配给所述嵌入功能,以启动所述嵌入功能。
13.一种用于将至少一个设备连接至USB总线的单连接点的装置,包括用于将所述设备接口至主计算机的虚拟集线器,所述集线器包括智能卡阅读器接口,以及一个设备可以附加至的至少一个端口;耦合至所述智能卡阅读器接口的智能卡阅读器;以及包含所述虚拟集线器、所述智能卡阅读器以及至少一个用于所述至少一个USB设备的端口连接的外壳。
14.一种用于将至少一个USB设备连接至USB总线的单连接点的方法,包括步骤提供用于将所述USB设备接口至主计算机的虚拟集线器,所述集线器包括智能卡阅读器接口,并且所述USB设备可以附加至的至少一个端口,其中所述智能卡阅读器接口以及所述USB设备通过主机预定的、基于令牌的通信协议而共享公用USB总线带宽,所述通信协议由USB驱动器以及对应的各个设备驱动器处理;提供耦合至所述智能卡阅读器接口的智能卡阅读器;以及提供包含所述虚拟集线器、所述智能卡阅读器以及至少一个用于所述至少一个USB设备的端口连接的外壳。
15.根据权利要求14的方法,其中用于所述至少一个USB设备的所述至少一个端口连接到所述外壳的内部,而其中所述USB设备是USB键盘控制器和相关键盘。
16.根据权利要求14的方法,其中所述智能卡阅读器接口永久连接至所述外壳内的所述虚拟集线器的内部下游端口;且其中所述虚拟集线器的至少一个其它下游端口被用作附加点,以将外部USB设备经过上游数据端口连接至所述主计算机。
17.根据权利要求14的方法,其中所述智能卡阅读器接口生成接口信号,以支持符合ISO 3716标准的任何类型智能卡的操作。
18.根据权利要求14的方法,其中所述虚拟集线器允许所述主计算机自动识别任何经过所述虚拟集线器的端口而附加至所述主计算机的新USB设备,同时也会建立与所述主计算机的操作关系。
19.根据权利要求14的方法,其中所述虚拟集线器允许任何新USB设备被经过所述虚拟集线器的端口附加至所述主计算机,并由所述主计算机识别所述的新USB接口,而无需将所述主计算机加电或断电。
20.根据权利要求14的方法,其中所述虚拟集线器允许至少一个USB设备经过所述虚拟集线器,经过具有单连接器的单电缆而附加至所述主计算机。
21.根据权利要求14的方法,还包括步骤提供包括时钟停止机制的时钟开关,它用于在所述虚拟集线器被配置之前,控制嵌入功能的电力消耗,以及在所述虚拟集线器被配置之后,将时钟信号分配给所述嵌入功能,以启动所述嵌入功能。
全文摘要
一种智能卡虚拟集线器,它将符合ISO 7816的智能卡阅读器接口与USB集线器组合起来,所述USB集线器提供一个或多个用于将设备连接至USB总线的附加点,从而将这种设备接口至主计算机。本发明当前优选实施例中的集线器提供一个端口,一个诸如键盘的USB功能设备可能会附加至该端口。附加键盘通过由USB驱动器和设备驱动器处理的特定于主机的、基于令牌的通信协议,与内嵌的智能卡阅读器共享公用USB总线带宽。
文档编号G06K7/00GK1444752SQ01813496
公开日2003年9月24日 申请日期2001年6月12日 优先权日2000年6月30日
发明者帕特里克·S·李 申请人:O2米克罗国际有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1