首页> 中国专利> 使用通用串行总线下游接收信号DP和DM产生本地时钟的方法和设备

使用通用串行总线下游接收信号DP和DM产生本地时钟的方法和设备

摘要

公开了一种从载有下游接收位序列信号的通用同步总线下游所接收的微分信号DP和DM产生本地时钟信号CLK1X(172)的方法和设备。该方法和设备不需要使用晶体或谐振器。计数器(312、310、305、301)被用于确定被包含于下游所接收位序列信号(146)的已知位周期数内的自由运转高频时钟信号(164)的周期数。计数器值被除以所接收位序列信号(146)的已知位周期数以确定所接收位序列信号(146)的位周期。本地时钟信号(172)可用所接收位序列信号(146)来锁定相位。本地时钟周期由下游已知所接收业务以正在进行的方式来更新。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2005-08-03

    授权

    授权

  • 2004-02-11

    实质审查的生效

    实质审查的生效

  • 2003-12-03

    公开

    公开

说明书

背景

本发明通常涉及被用于有关物品和服务的处理交易(transaction)中的集成电路(IC)卡或智能卡。智能卡是具有连接于电接触、被附着于前侧或后侧的微处理器和存储器电路的塑料卡,所述电接触位于卡的前侧。通过将卡插入到使得与电接触连接的读取器设备中,电路被激活并且数据从卡被访问。更具体地,本发明涉及一种用于将智能卡连接于具有不同接口特性的读取器设备的设备和方法。此外,本发明涉及一种用于产生由外部施加的信号同步化的内部时钟信号的新方法和设备。

智能卡是一类数据卡。被用于处理交易的数据卡在本质上是无源或有源的。无源数据卡包括利用卡后面的磁条上所存储数据的传统信用卡、借方卡和ATM卡。当使用无源数据卡处理交易时,通常需要通过在电话网络上被连接于远程计算机的读取器设备进行交易校验。在交易期间,可从磁条写入和读取数据。有源数据卡或智能卡利用被嵌于卡上的处理器和存储器电路,当卡被连接于读取器设备时,所述电路被激活。由于智能卡可包含完成交易所需要的智能,可在本地完成交易而无需求助于到远程交易校验机构的电话连接。除了存储与所有者账目有关的数据如识别号和账目平衡,电路亦包含用于安全目的的加密。智能卡被用于多种应用,包括全球移动系统(GSM)电话中的用户识别模块(SIM)、TV卫星接收器、银行业、健康护理程序、停车和高速公路收费支付等。预期智能卡有日益广泛的应用,最终取代磁条型数据卡。

基本的智能卡标准为国际标准ISO 7816,其提供对有接触的IC卡的物理、电学、机械和应用程序设计接口的详细要求。具体来说,国际标准ISO 7816-1物理特性、国际标准7816-2接触的尺寸和位置、以及国际标准ISO 7816-3电子信号和传输协议在此引入作为参考。该标准提供了到智能卡的串行接口连接。在大多数情况下,这些卡被用于与计算机连接的读取器。读取器包含使得卡和计算机之间能够连接的电子电路。借助计算机上的串行或并行端口,读取器被连接于计算机。

通用串行总线(USB)近来已被稳固地公认并在个人计算机(PC)市场赢得了广泛的接受。USB是响应于对标准接口的需要而被开发的,所述标准接口扩展了PC外部设备的“即插即用”概念并使得用户无需打开PC机箱或从PC去除电源就可安装和拆除外围设备。USB提供了易于使用并可容易扩展的低成本的半双工串行接口。USB亦向被互连的设备以5伏特供应高达500mA的电流。USB目前由通用串行总线规范来限定,其由USB实施者论坛公司编写并控制,该公司是由发展USB规范的一组公司创建的非盈利性公司。具体来说,通用串行总线规范的第5章USB数据流模型、第7章电学、和第8章协议层在此引入作为参考。USB在计算机中日益广泛的使用已引导智能卡读取器的制造商们开发用于使其产品与计算机连接的USB接口以补充现有的串行和并行接口。然而,由于ISO 7816所限定的串行接口和USB规范所限定的串行接口之间的差异,智能卡尚未与USB规范直接兼容。而由于各种计算机接口标准之间的不兼容性约束,已经需要不同的卡读取器配置。

USB规范版本1.1限定了理论数据传递速率。每秒1.5兆位的低速和每秒12兆位的全速被提供。对高数据处理量的应用如视频或海量存储,可预期大于每秒480兆位的高速数据传递速率。本发明优选地利用包交易的低速实施。当考虑不同的开销和协议时,有效的USB低速数据速率在每秒50千位和每秒400千位之间变化,这依赖于可用的带宽。这个数据速率优于通过使用ISO 7816所实现的数据速率。较高的数据速率使得有可能减少智能卡的用户化时间并增加了可能的应用。

集线器提供了USB附着点。附着点被称为端口。主机具有被称为根集线器的嵌入式集线器,其提供了一个或多个附着点。USB设备为主机提供了附加的功能性并被连接于任何集线器的端口之一。被嵌入PC的主机控制USB。每个设备以主从关系动作。每个交易由主机请求开始。USB不具有任何专用的时钟信号线。每个集线器和每个USB设备都有其自己的基准时钟。集线器支持低速和全速的数据信令速率两者。集线器时钟发生器使用晶体以提供全速交易所需要的±0.25%时序精度。低速设备时钟发生器±1.5%的容差与较便宜的谐振器的使用兼容。所有的USB交易,不论下游和上游,由允许设备和集线器时钟锁定相位的同步模式(pattern)(SP)信号开始。由于缺少空间以及可用接触针(contact pin)限制,晶体或谐振器都不是对智能卡上计时USB电路的实际解决方案。

由于以上原因,需要给智能卡提供使用SP和包识别(PID)信号产生本地时钟而无需使用晶体、谐振器或集成电路外部的其它部件的能力。进一步需要将智能卡连接于USB端口,而无需任何插入的电子电路。

概述

本发明指向一种用于给智能卡提供支持USB规范所限定的串行接口的能力而无需给智能卡或读取器增加任何附加的复杂度的设备和方法。

本发明亦指向一种用于产生与USB信号同步的USB设备时钟信号而无需晶体或谐振器的设备和方法。此外,本发明亦指向一种用简单的连接器将智能卡连接于USB端口而无需任何插入的电子电路的设备和方法。

本发明涉及一种USB端口和智能卡之间的物理链路。它描述了一种产生USB低速设备时钟而无需任何外部部件的解决方案。

当集线器向智能卡上的集成电路模块(ICM)发送信息时,ICM处于接收模式。这被称为下游交易。当ICM向集线器发送信息时,集线器处于接收模式。这被称为上游交易。在最后的通信组合中,集线器和ICM均处于接收模式,其包括空闲状态。在数据传输期间,DP和DM信号线载运不同的信号以使当DP处于“1”时,DM处于“0”,并且反之亦然。DP和DM上的电压转换速率被限定于3.6伏/75ns。这两个特性使设备辐射的电磁干扰(EMI)最小。

从一个发射器到下一个的传递在随后的序列中发生。当前的发射器报告包结束(EOP)并将USB设置在J状态(DM处于“1”而DP处于“0”)一个位持续时间。DM和DP信号线然后被使得浮动(float),其中没有发射器是激活的,并且下拉和上拉设备限定DP和DM信号线上的电压。当接下来的发射器设置总线在J状态一个位持续时间时,新的传输以新的SP信号开始。

主机请求以SP开始,随后是PID。SP和PID传输已知位模式。SP信号被用于下游和上游交易以用传输时钟锁定设备或集线器时钟的相位。PID信号被用于下游和上游交易以识别包。其输入被连接于信号DP和DM的微分接收器形成RXD信号。

本发明使用由集线器发送的下游SP和PID信号以产生有1.5MHz的额定频率、好于±1.5%的精度的设备时钟信号CLK1X,并同时用下游RXD信号相位锁定设备时钟信号CLK1X的相位。

被包含于设备中的本发明具有自由运转时钟信号CLKOSC。已知CLKOSC信号的周期在±30%内,但具有在短时间周期(1毫秒)内好于0.1%的稳定性。由结合本发明的设备所接收的第一下游令牌包使用CLKOSC信号以好于±1.5%的精度来校准CLK1X信号周期,并用下游所接收信号RXD锁定CLK1X信号的相位。一旦完成校准,结合本发明的设备可接收或发送信号。由包含本发明的设备所接收的每个其它下游SP和PID开始用于设备时钟信号周期及其相位的新校准过程,此外,除SP和PID以外的所接收每个其它下游数据切换信号再次使设备时钟信号CLK1X的相位同步。这补偿了初始的不精确性、温度灵敏度和CLKOSC的长期漂移。

具有本发明特点的方法包括使用通用串行总线下游信号DP和DM在设备中产生本地时钟信号的方法,包括:接收USB下游微分信号DP和DM并从USB下游信号产生下游位序列信号,对被包含于所接收下游位序列信号的已知位周期数S内的自由运转高频时钟信号的循环数R进行计数,将自由运转高频时钟信号的所计循环数R除以所接收下游位序列信号的已知位周期数S以确定被包含于所接收下游位序列信号的单个位周期内的自由运转高频时钟循环的结果数T,以及产生具有等于自由运转高频时钟循环数T的周期的本地时钟信号。产生本地时钟信号的步骤可包括:对自由运转高频时钟循环数T进行计数以产生本地时钟信号的周期,以及当在所接收下游位序列信号中有数据切换以用所接收下游位序列信号锁定所产生本地时钟的相位时,初始化计数步骤。产生本地时钟信号的步骤可进一步包括:当已知的所接收下游位序列模式被确认时,更新本地时钟信号的周期。所接收下游位序列信号的已知位周期数S可以是八。该方法可进一步包括用环形振荡器产生自由运转高频时钟信号。用环形振荡器产生自由运转高频时钟信号的步骤进一步可包括产生信号的偶数数目V,其具有自由运转高频时钟信号的周期和360°/V的被移位的相位。信号的偶数数目V可以是八。该方法可实施于集成电路模块中。集成电路模块可被置于智能卡上。通过使用位填充,下游位序列信号的每七个位周期至少一次,可用下游位序列信号锁定本地时钟信号的相位。在下游位序列信号包括USB令牌包和数据包的PID设置字节和同步字节的时间周期内,可执行计数步骤。已知的所接收下游位序列模式可包括USB令牌包和数据包的PID设置字节和同步字节。该方法可进一步包括确定T是否在预定界限内的步骤。本地时钟信号可被用于采样USB所接收下游序列位数据并计时USB所发射上游序列位数据。

在本发明的另一实施例中,包含使用通用串行总线下游信号DP和DM产生本地时钟信号的电路的设备,包括:用于接收USB下游微分信号DP和DM并从USB下游信号产生下游位序列信号的装置,用于对被包含于所接收下游位序列信号的已知位周期数S内的自由运转高频时钟信号的循环数R进行计数的装置,用于将自由运转高频时钟信号的所计循环数R除以所接收下游位序列信号的已知位周期数S以确定被包含于所接收下游位序列信号的单个位周期内的自由运转高频时钟循环的结果数T的装置,以及用于产生具有等于自由运转高频时钟循环数T的周期的本地时钟信号的装置。用于产生本地时钟信号的装置可包括:对自由运转高频时钟循环数T进行计数以产生本地时钟信号的周期的装置,以及当在所接收下游位序列信号中有数据切换以用所接收下游位序列信号锁定所产生本地时钟的相位时,初始化计数步骤的装置。产生本地时钟信号的装置可进一步包括:当已知的所接收下游位序列模式被确认时,更新本地时钟信号周期的装置。所接收下游位序列信号的已知位周期数S可以是八。用于产生自由运转高频时钟信号可以是环形振荡器。用环形振荡器产生自由运转高频时钟信号的装置可进一步包括产生信号的偶数数目V的装置,所述信号具有自由运转高频时钟信号的周期和360°/V的被移位的相位。信号的偶数数目V可以是八。电路可实施于集成电路模块中。集成电路模块可被置于智能卡上。通过使用位填充,下游位序列信号的每七个位周期至少一次,可用下游位序列信号锁定本地时钟信号的相位。在下游位序列信号包括USB令牌包和数据包的PID设置字节和同步字节的时间周期内,可运行计数装置。已知的所接收下游位序列模式可包括USB令牌包和数据包的PID设置字节和同步字节。电路可进一步包括确定T是否在预定界限内的装置。本地时钟信号可被用于采样USB所接收下游序列位数据并计时USB所发射上游序列位数据。

在本发明的另一个实施例中,包含使用通用串行总线下游信号DP和DM产生本地时钟信号的电路的设备,可包括:用于接收USB下游微分信号DP和DM并从USB下游信号产生下游位序列信号的微分接收器,被连接于位序列信号、用于对被包含于所接收下游位序列信号的已知位周期数S内的自由运转高频时钟信号的循环数R进行计数的第一计数器,用于将自由运转高频时钟信号的所计循环数R除以所接收下游位序列信号的已知位周期数S以确定被包含于所接收下游位序列信号的单个位周期内的自由运转高频时钟循环的结果数T的除法器电路,以及用于产生具有等于自由运转高频时钟循环数T的周期的本地时钟信号的第二计数器。第二计数器可由在所接收下游位序列信号中切换的数据来初始化。自由运转高频时钟信号可由八相位环形振荡器产生。在下游位序列信号包括USB令牌包和数据包的PID设置字节和同步字节的时间周期内,可激活第一计数器。

附图简述

考虑到以下描述、附随的权利要求和附图,本发明的这些和其它特点、方面和优点将变得可以理解。在附图中:

图1示出表示考虑功能特点的位置的智能卡的前视图和侧视图;

图2示出可被用于与ISO和USB串行接口两者连接的ICM;

图3示出被用于ICM中的IC的方块图;

图4示出智能卡读取器、智能卡和主PC;

图5示出ICM和ISO型卡读取器之间的ISO 7816接口连接;

图6示出ICM和USB型卡读取器之间的USB接口连接;

图7A示出插接模块而图7B示出有被插入的插接模块的USB型令牌读取器;

图8示出初始化任何USB交易的USB控制传递的设置阶段;

图9示出握手包和数据包的边界处的USB半双工协议;

图10示出集线器向包含ICM的设备传输数据的下游配置;

图11示出包含ICM的设备向集线器传输数据的上游配置;

图12示出在从集线器到设备的令牌包的起始处产生的信号的波形;

图13示出以八个间隔产生信号CLKOSC的时钟信号发生器的实施例;

图14示出设备被附着于USB时的波形;

图15示出设备接收第一令牌包时的波形;

图16示出与RXDD4信号有关的时钟信号CLKOSC;

图17示出与RXDD8信号有关的时钟信号CLKOSC;以及

图18示出本地时钟CLK1X的逻辑实施。

详述

现在转到图1,图1示出智能卡10的前视图和侧视图。智能卡10符合国际标准ISO 7816的要求。ISO 7816要求智能卡符合国际标准ISO 7810中所指定的卡类型ID-1的物理特性。卡10由聚氯乙烯、聚氯乙烯-乙酸乙烯酯或类似材料制成。智能卡10具有前表面11和后表面13。它可在前表面11上具有任选的浮雕区域14并在后表面13上具有任选的磁条12。被安排于四列的两列中的八个电接触15被置于智能卡10的前表面11上以与被附着于卡10的ICM 20连接。所示的接触15为所允许的最小尺寸且必须被置于卡10的前表面上的所示位置。尽管ICM 20可位于智能卡10的前表面11或后表面13上,在本实施例中,ICM 20被置于智能卡10的前表面11上,如所示。

转到图2,图2示出可被用于与ISO 7816或USB接口连接的ICM20。该ICM具有被置于衬底21上的八个电接触22-29和被附着于与接触22-29相反的衬底21侧的IC 30。电接触22-29彼此电隔离。IC和接触22-29之间的电连接是通过使用接合线(bonding wire)19而完成的。衬底21的相反侧之间的电连接可通过本邻域的任何普通方式来完成,包括传导通路(via)。IC 30和接合线19通常被封装以保护不受机械和环境的影响。ICM 20上的接触22-29包括电源电压VCC22、复位信号RST 23、时钟信号CLK 24、驱动器加DP 25、地GND 26、可变电压VPP 27、输入/输出信号I/O 28和驱动器减DM 29。对于在ISO和USB应用中的使用,ICM 20是兼容的。

转到图3,图3示出被包括于ICM 20中的IC 30的方块图。该IC30包括五个内附的块。中央处理单元(CPU)31执行被存储于存储器组32中的操作系统(OS)代码。在特定的实施例中,ROM和EEPROM存储器存储永久或临时数据,而RAM存储器只存储临时数据。块34为一端上的DP和DM信令与另一端上的数据和CPU地址总线之间的USB接口。块35为在一端上的RST、CLK和I/O信令与另一端上的CPU之间的ISO 7816串行接口。信号RESETB、RXD、RXDP和RXDM以及VREF和PDWNB被递送给USB时钟恢复块(UCR)33。信号CLK1X馈给USB接口34。UCR 33被描述于本专利申请。

现在转到图4,图4示出智能卡读取器50和智能卡10。智能卡包含如较早时所述的ICM 20。智能卡插入卡读取器50中的槽51。智能卡读取器具有卡读取器内的连接接触,其将ICM接触连接于电缆52和连接器53,或者连接于ISO 7816接口电路,其通过电缆52连接于连接器53。对于ISO型智能卡读取器,连接器53可以是兼容的并行端口并连接于主PC 40上的并行端口41,或者是兼容的RS2 32并连接于主PC上的串行端口42。对于USB型智能卡读取器,连接器53可以是兼容的USB并连接于主PC 40上的USB集线器端口43,或者是其它的。在ISO型卡读取器中需要有源电路。对于USB型智能卡读取器,连接器53为USB串行A插接连接器并连接于被配备有USB串行A插口的主PC 40上的USB集线器端口43。在USB型卡读取器中不需要有源电路。

现在转到图5,图5示出ISO 7816型智能卡读取器50,其具有在ICM 20和连接器53之间被插入的ISO 7816接口电路54。如在图4中从物理上所述的,ICM 20被置于智能卡10上。智能卡读取器内的八个连接器插脚56连接于ICM 20上的接触22-29。电缆52被连接于ISO型卡读取器50和端接(terminating)连接器53之间。端接连接器53可插入主PC或终端上的端口,如图4中所示。连接器53可被连接于例如并行端口、RS-232串行接口或USB端口。当ICM 20被连接于具有ISO 7816接口电路54的卡读取器时,ICM 20上的集成电路30专门在ISO模式下工作并通过插入的接口电路54在模块20和计算机或终端之间传递数据。ISO 7816接口电路54需要使用到电源电压接触VCC 22、地接触GND 26、复位信号接触RST 23、时钟信号接触CLK24和数据输入/输出信号接触I/O 28的连接。ISO 7816型卡读取器通常将依照国际标准ISO 7816-3中所限定的传输协议和电信号向ICM 20提供这些信号。在信号接触I/O 28上所提供的数据由ICM 20或由接口电路54产生。I/O 28上的数据与CLK 24上的信号同步。在本发明的本实施例中,当智能卡被连接于ISO 7816接口时,没有到接触DP25、接触VPP 27和接触DM 29的连接。ISO型卡读取器50产生RST信号23和CLK信号24。ISO型卡读取器50借助插入的电子接口电路54提供在基于计算机的用户应用和智能卡之间的通信。在ISO模式下,I/O 28接触与ISO 7816国际标准兼容。注意,ISO型读取器50必须包含有源电路以将ISO 7816信号从ICM 20转换到连接器53处的计算机接口信号。

现在转到图6,图6示出被置于智能卡10上的ICM 20和USB型卡读取器50之间的USB接口连接,如在图4中从物理上所述。智能卡读取器内的八个连接器插脚56连接于ICM 20上的接触22-29。自ICM20的电连接通过电缆52被传送到USB串行A插接连接器53。USB兼容智能卡10被插入USB型智能卡读取器50,该读取器被配备有USB电缆52,由USB串行A插接连接器53端接,这样构成了USB智能卡设备55。电缆52利用四个非绞合线以将ICM 20连接于连接器53。连接器53可直接插入被配备有串行A插口的主PC 40根集线器的USB端口43或被配备有相同插口的集线器的USB端口,如图4中所示。集线器提供了被连接于ICM 20上VCC接触22的VBUS电源、被连接于ICM20上GND 26的地接触GND、被连接于ICM 20上DP 25的驱动器加信号DP、和被连接于ICM 20上DM 29的驱动器减信号DM。USB型卡读取器通常将依照在USB规范中所限定的传输协议和电信号向ICM 20提供这些信号。在本发明的本实施例中,当智能卡被连接于USB接口时,没有到接触RST 23、接触CLK 24、接触I/O 28和接触VPP 27的连接。尽管本发明的本实施例利用接触DP 25和接触DM 29,ISO 7816标准保留了这两个接触以备将来使用。

现在转到图7A和图7B,图7A示出有ICM 20和IC 30的插接模块70。图7B示出有被插入的插接模块70的令牌读取器72。这种类型的插接模块70被广泛用于为GSM电话而设计的SIM应用中。连接器53可直接插入被配备有串行A插口的主PC 40根集线器的USB端口43或被配备有相同插口的集线器的USB端口,如图4中所示。被置于插接模块70和令牌读取器72上的ICM 20的电配置与图6中所示相同,除了插接连接器53被附着于令牌读取器72,而不是电缆52。USB兼容的插接模块70被插入USB型智能卡读取器72,该读取器由USB串行A插接连接器53端接,这样构成了USB智能卡设备55。

现在转到图8,图8示出在DP和DM信号线上初始化USB交易的USB控制传递的设置阶段80。USB协议是由PC或集线器初始化的半双工协议。设备响应于来自PC或集线器的请求。串行链路两端上的微分线驱动器能够在串行链路上发送数据。然而,为在USB串行链接上传输数据,一次仅一端被激活。USB控制传递的设置阶段80包括18个字节,其由从PC或集线器发送到设备的令牌包81和数据包83以及从设备发送到PC或集线器的握手包85组成。由主机发送的令牌包81包括4个字节,包括:SP字节(SYNC);用于SETUP级的PID;设备地址(ADDR);端点号(ENDP0);和循环冗余检验(CRC5)。由PC或集线器发送的数据包83包括12个字节,包括:SP字节(SYNC);用于DATA0字节的PID;数据的8个字节;和2字节循环冗余检验(CRC16)。令牌包81和数据包83是使用晶体驱动时钟由PC或集线器发送的。设备向PC或集线器发送握手包85。握手包包括2个字节,包括SP(SYNC)字节和用于ACK字节的PID。在这个特定实施例中,设备使用由在图3中所示的IC 30中的UCR 33所提供的设备时钟CLK1X来发送握手包。所述包通过包间序列而被分离。令牌包81通过包间序列82与数据包83分离,而数据包83通过包间序列84与握手包85分离。

现在转到图9,图9描述在数据包83和握手包85的边界处的USB半双工协议90。该描述90基于USB低速模式,其中一个位具有由持续时间94表示的时间周期。集线器驱动总线将数据包83传递给设备。微分信号DP 145和DM 144包括串行数据总线。单终结零(Single-Ended Zero)(SE0)被定义为DP 145和DM 144均处于低电压状态时的状况。包结束包括近似两个位时间的SEO状况95,随后为又一个位时间的J状态96。J状态96被定义为DP 145处于低状态而DM 144处于高状态时的状况。K状态97被定义为DP 145处于高状态而DM 144处于低状态时的状况。集线器在这个时间91期间驱动USB。在包结束之后,USB串行数据总线在至少一个位周期92内是空闲的。然后通过在总线上设置J状态96,随后是握手包85的SP字节,设备在这个时间93期间开始驱动USB数据总线。SP字节以J 96到K 97的过渡开始。通过使用SP信号和随后的由集线器发送的下游数据流过渡,设备产生用集线器时钟锁定相位的其自身的时钟。本发明为设备提供了从集线器信号恢复时间基准的新解决方案,并消除了对设备中的外部部件如谐振器或晶体的需要。表1定义了低速设置的信号DP和DM组合。

微分“1”DP>2.8伏且DM<0.3伏微分“0”DP<0.3伏且DM>2.8伏数据J状态微分“ 0”数据K状态微分“1”单终结零(SE 0)DP<0.3伏且DM<0.3伏

                          表1

现在转到图10,图10描述了下游交易。配置100为:集线器101通过电缆52传输数据给包含上述ICM 20的设备102。对于如在图7B上的令牌读取器72,没有电缆52。集线器101使用发射器103、104来驱动USB数据总线以驱动DP信号线107和DM信号线108。馈给103和104的信号TXEN处于“0”。集线器包含下拉电阻器105、106,其分别被连接于DM信号线108和地之间以及DP信号线107和地之间。依照USB规范,ICM 20包含被连接于DM信号线108和VTERM之间的上拉元件109。VTERM为3.0和3.6伏之间的上拉电压。这个配置定义了低速的实施。ICM 20接收被传输的信号DP 145和DM 144,并产生信号RXD 146、RXDP 113和RXDM 114。RXD为来自微分接收器110的输出信号。对于J状态,RXD为逻辑“0”,而对于K状态,RXD处于逻辑“1”。RXDP和RXDM是来自单终结的接收器111、112的信号。RXDP和RXDM被用于检测包结束。

现在转到图11,图11示出上游交易。配置120描述了设备102通过电缆52传输数据给集线器101。对于如在图7B上的令牌读取器72,没有电缆52。设备102包含上述的ICM 20。设备102使用发射器124、125来驱动USB数据总线以驱动DP信号线107和DM信号线108。被连接于总线发射器124、125的信号TXEN处于“0”。集线器101包含下拉电阻器105、106,其分别被连接于DM信号线108和地之间以及DP信号线107和地之间。依照USB规范,ICM 20包含被连接于DM信号线109和VTERM之间的上拉元件109。VTERM为3.0和3.6伏之间的上拉电压。这个配置定义了低速的实施。集线器101接收被传输的信号DP 107和DM 108,并产生信号RXD 126、RXDP 127和RXDM 128。RXD为来自微分接收器121的输出信号。对于J状态,RXD 126为逻辑“0”,而对于K状态,RXD 126处于逻辑“1”。RXDP 127和RXDM 128是来自单终结的接收器122、123的信号。RXDP 127和RXDM 128被用于检测包结束。

现在转到图12,图12示出在从集线器101到包含上述ICM 20的设备的下游交易中令牌包的起始处传输的信号的波形。通过USB发射器103和104由集线器发送到设备的消息142为位序列数据流。令牌包81首先传输SP 140,随后为SETUP PID 141。该数据流以倒转不归零(NRZI)143格式被编码。NRZI格式的特性是:当接下来的数据位是逻辑“0”(见数据波形142)时,NRZI编码的信号改变状态(见NRZI波形143)。NRZI信号被连接于提供DM 144的主TXDM信号发射器(图10中的104),而倒转的NRZI信号被连接于提供DP 145上信号的主TXDP信号发射器(图10中的103)。RXD 146为来自设备微分接收器(图10中的110)的接收信号。波形示出,通常被叫作SYNC的SP为00000001〔1sb-msb〕,而用于SETUP级的PID为1011〔1sb-msb〕。为测量由主机101发送的一个位持续时间,必须考虑以下事实:所接收微分RXD 126的前沿和后沿可能不一致并且信号可能具有抖动。抖动是由跨在USB体系结构上的相继的转发器(repeater)导致的。测量多个成对过渡周期(PTP)147或连续过渡149可减少抖动影响。PTP不受DM 144和DP 145的前沿和后沿之间的不匹配的影响,并且是与已知所接收模式兼容的优选实施例。测量八位周期位2-9(EBP)148提供了与最佳硬件实施兼容的进一步的改进。由于集线器收发器开启延迟恶化了位1周期,在本优选实施例中不使用位1。

现在转到图13,图13示出产生信号CLKOSC 164的时钟信号发生器150的实施例。时钟信号发生器150包括由八个反相器151-158和一个选通反相器159组成的环形振荡器。时钟信号发生器被提供了稳定电压基准VREF 165以使由于VCC电源电压变化造成的频率变化最小。每个反相器151-156递送从相应的反相器输入信号被延迟平均延迟d的输出信号。反相器157和158递送从相应的反相器输入信号被延迟平均延迟d/2的输出信号。NAND门159递送从相应的输入信号被延迟平均延迟d的输出信号。信号下电PWDNB 163在处于“0”时是激活的。它通过控制从NAND门159的输出CLKOSC 164到第一反相器151的反馈路径使环形振荡器振荡或不振荡。停用振荡器保存了功率。振荡器输出信号CLKOSC 164的周期等于每个反相器151-158延迟和选通反相器159延迟之和的两倍。过程变化影响振荡的周期达典型的±30%。额定频率为50MHz。在所示的实施例中,环形振荡器150递送四个相位移位信号FL1 160、FL2 161、FL3 162、其逻辑互补、以及CLKOSC164,其在CLKOSC周期上限定八个间隔。选通反相器159被用于通过PDWNB 163停止自由运转时钟。从一个IC到另一个,这个频率在38MHz到74MHz的范围内。CLKOSC 164信号周期等于每个反相器延迟和选通反相器延迟之和的两倍:

       CLKOSC 164信号周期=2(7d+2*1/2d)=16d

其中d为一个门的平均延迟(~1.25ns)。

现在转到图14,图14示出波形VCC 170、DP 145、DM 144,其由被包括于ICM 20中的IC 30接收,ICM 20自身被嵌入分别被插入智能卡读取器或令牌的智能卡10或模块插接70。所组装的USB设备55被连接于USB集线器端口。波形RXD 146、CLK1X 172、RESETB 171和CLKOSC 164在IC内产生。这些波形是被连接于USB端口的USB设备55的IC 30中的上电序列的特征。时序图恰好在USB设备给集线器发信号之前开始,其通过上拉DM插脚电压而被附着于USB。RESETB在图3中所示的USB接口块34上产生。当VCC 170到达所需最小电压时,RESETB转到“1”,对DM的上拉效果由主机检测并且宣称设备被附着于USB。CLKOSC 164开始。集线器发送扩展的SEO 180以复位IC 30内的USB接口34。

在下游交易中,信号RXD 146必须由CLK1X 172采样以确定所接收数据。采样应在理论的位单元(位单元的中间±1/4)开始之后的大约330ns时发生。在上游交易中,线107和108上的信号DP 145和DM 144由CLK1X 172来计时。

在Φ1 173期间,没有所接收数据,CLK1X周期等于已知在±30%但稳定的CLKOSC周期除以M。在Φ2 174期间,令牌包81 RXD 146的采样是由计时器通过参照M/2的CLKOSC周期的CLK1X来进行的,所述计时器由所接收位单元的每个前沿初始化。在Φ3 175期间,令牌包81的采样是通过参照CLKOSC的CLK1X进行的,所述CLKOSC是通过对两个PTP 147在Φ2 174期间所进行的测量而调整的。在Φ81 176期间,令牌包81和数据包83的采样是参照CLKOSC 164而进行的,所述CLKOSC 164是通过对包81的PID和SP中的EBP 148在Φ2 174和Φ3 175期间所进行的测量而按调整的。在Φ83 177期间,数据包83的采样是参照CLKOSC 164而进行的,所述CLKOSC 164是通过对包83的PID和SP中的EBP所进行的测量而按比例缩放的。在Φ83 177期间,握手包85的上游脉冲发生是参照CLKOSC 164而进行的,所述CLKOSC 164是通过对包83的PID和SP中的EBP所进行的测量而按比例缩放的。在ΦP178期间,包P的采样是参照CLKOSC 164而进行的,所述CLKOSC 164是通过对包P的PID和SP中的EBP所进行的测量而按比例缩放的。下电序列将在下游精确已知的位周期上结束正在进行的校准不精确但稳定的CLKOSC的过程。上电序列将在Φ1 173处重新开始所述过程。

现在转到图15,图15示出CLK1X的四个阶段:Φ1 173、Φ2 174、Φ3 175和Φ81 176。在本发明的特定实施例中,这四个阶段是使ICM20内的USB智能卡设备55时钟信号同步所需要的。RXD 146再现IC 30中由集线器传输的信号。信号RXDD4 191被初始化到“0”并当由于SP边沿194出现以及边沿198在四位以后出现时,被使得改变逻辑状态(逻辑互补)。信号RXDD8 192被初始化到“0”并当边沿194出现以及边沿188在八位以后出现时,被使得改变逻辑状态。CLKOSC 164是如以上图13所述在ICM 20内产生的自由运转时钟信号。

CLK1X 172是使用RXD 146、RXDD4 191、RXDD8 192和CLKOSC产生的。CLK1X被用于采样RXD,由设备从集线器接收的下游数据流,并被用于计时从设备到集线器的上游数据流。与位1-12关联的位周期被表示在RXD上用于参考的目的。与SP 140和PID 141中的其它位相比,位数1不限定精确的时间周期。这是由于沿USB体系结构的每个发射器的开启时间而造成的。在本申请中,位数1不被用于产生USB设备的ICM内的本地时钟CLK1X 172。

在Φ1 173期间,通过由图14中所述USB复位信令以及RXD 146上的边沿193在一端上定界(这限定了SP 140的起始),没有必须被确认的位。缺省下,CLK1X 172,是自由运转时钟,其有等于M倍CLKOSC周期的周期。M等于例如32,与666.66ns的理论位持续时间相比,这是640ns的额定周期。

在Φ2 174期间,执行了三个任务。

a.使用CLKOSC 164通过尽可能近地在位单元的中间采样RXD而进行输入位的确认。位1由CLK1X 172的边沿130采样。RXD 146的边沿193复位计时器T1,其对M/2=16个CLKOSC周期计数以产生边沿130。随后的位2、3、4和5分别由131、132、133和134参照边沿194、195、196和197使用与上述相同的原理来采样。计时器T1的特征在于其与自由运转时钟CLKOSC有关的持续时间及其激发机构(arming mechanism)。输入位1、2、3、4和5在位单元的每个前沿之后的320ns±30%处被验证。

b.使用CLKOSC 164计时包括位2、3、4和5的RXDD4 191。使用CLKOSC 164计时包括位2、3、4和5的两个RXDD4 191可确定参照CLKOSC 164由集线器发送的四个位持续时间之间的第一关系。四个位持续大约2660ns。这是在四个位中近似等于133个CLKOSC周期的N。一个位的持续时间近似为N/4=133/4=33±1个CLKOSC周期。一个位中的CLKOSC周期数N/4可被检验考虑CLKOSC周期扩展的界限。

c.计时包括位2、3、4和5的RXDD8 192将在Φ3期间使用CLKOSC164而继续。

在Φ3 175期间,执行了两个任务。

a.使用第一关系结果通过在位单元的中间采样RXD 146而进行输入位6、7、8和9的确认。输入位6由CLK1X 172的边沿135采样。通过使用以上的第一关系的结果,即一个位单元中的N/4个CLKOSC周期,边沿198使得有具有周期T2的自由运转CLK1X 172。位7、8和9分别由CLK1X过渡136、137和138采样。SP被检测。

b.使用CLKOSC 164来终止包括位2-9的RXDD8 191时序。使用CLKOSC 164计时包括位2、3、4、5、6、7、8和9的EPR RXDD8 192可确定参照CLKOSC 164由集线器发送的八个位持续时间之间的第二关系。EBP与被包含在下游交易中的任何种类的PID和成对过渡周期兼容。八个位持续~5320ns。我们在八个位中具有K81(~266)个CLKOSC周期。这个时序从PID模式的起始和SP中取了最多的部分以减小抖动影响并限定在接下来的阶段内所使用的CLK1X周期T3。

在Φ81 176期间,输入位10由CLK1X 172的边沿139采样。通过使用第二关系的结果,即一个位单元中的K/8=整数部分(K81/8)+J81*1/8个CLKOSC周期,边沿198使得有具有周期T3的自由运转信号。位11和12由186和187采样。产生CLK1X 172的计数器使用FL1 160、FL2 161、FL3 162、其逻辑互补、以及CLKOSC 164,其以见图13的CLKOSC周期的1/8分离。由于CLK1X周期已知为±1/8个CLKOSC周期,因此没有舍入误差。此外,下游RXD 146的每个边沿在Φ81 176期间使CLK1X 172同步。输入位10在位单元10的前沿188之后的320ns±0.4%处被验证。其它位11和12将在其单元位中略为不同的时刻被采样。USB协议考虑到了使最小每7个位有一个位数据切换。这保证了CLK1X 172用下游数据流锁定相位。

现在转到图16,图16示出选通CLKOSC 164的RXDD4 191上的两个PTP。第一关系确定有多少CLKOSC 164的正沿N 200被包括于RXDD4191的正沿194和接下来的负沿198之间,其包括位2的起始和位5的结束。作为额定情况下的实例,

         N=4*666.66ns/20ns≈133。

现在转到图17,图17示出选通CLKOSC 164的RXDD8 192上的EBP。第二关系确定有多少CLKOSC 164的正沿K 200被包括于RXDD8192的正沿194和接下来的负沿188之间,其包括位2的起始和位9的结束。作为额定情况下的实例,

        KP=8*666.66ns/20ns≈266。

然后KP被除以8,即IP(KP/8)+JP*1/8。每个信号CLKOSC 164、FL1 160、FL2 161和FL3 162被延迟等于CLKOSC周期的1/8的时间。

现在转到图18,图18示出图3中所示的USB时钟恢复,USR 33的逻辑实施。信号RXDP 113、RXDM 114和RXD 146来自USB智能卡设备的接收器前端,图3中所示的USB接口34。PWDNB 163和RESETB171在IC 30外产生。RXD 146、RXDP 113和RXDM 114被连接于产生RXDD8、RXDD4、ΦP、Φ3、Φ2和Φ1的电路314。

在Φ1期间,CLK1X 172从CLKOSC 164除以电路312中的固有值M而被产生并通过AND门313和OR门309被传输。在Φ2期间,CLK1X172使用电路310中的固有值M/2从CLKOSC 164和RXD 146被产生并通过AND门311和OR门309被传输。在Φ3期间,使用N,电路305中的第一测量值N,连接于电路307的电路306中被4除的除法器产生CLK1X 172。CLKOSC 164和RXD 146亦被连接于电路307的输入,其输出通过AND门308和OR门309被传输。在ΦP期间,使用被连接于被8除的除法器电路302的电路301中的第二测量值KP产生CLK1X172,电路302的输出被连接于电路303。CLKOSC 164、FL1、FL2、FL3和RXD 146亦被连接于电路303的输入,其输出通过AND门304和OR门309被传输。

尽管本发明已参照特定的优选实施例被详细描述,显然对于本领域的技术人员来说,可进行对那些实施例的变动和修改,而不背离如在随后的权利要求中所提出的本发明的精神和范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号