本发明的一个方面提供USB装置的
时钟信号发生器。
本发明的另一方面提供时钟信号发生器,即使不用
晶体振荡器,也能发 生高精确性的时钟信号。
本发明的另一方面也提供时钟信号发生器,可以产生RX时钟信号以精 确地恢复通过USB总线接收的数据,以及可以产生适合USB数据传递的TX 时钟信号。
本发明的示范性
实施例提供的时钟信号发生器包括:控制电路,与在连 续输入两个
同步信号之间的时段期间的时钟信号同步地进行计数,产生对应 于计数值的
频率控制信号;时钟发生器,产生具有对应于上述频率控制信号 的频率的时钟信号。
在一些示范性实施例中,当计数值在预定范围内时,该控制电路
锁定上 述频率控制信号。
在另一示范性实施例中,时钟发生器包括:
电流控制器,产生对应于频 率控制信号的电流;振荡器,产生具有对应于上述电流的频率的时钟信号。
在进一步的示范性实施例中,电流控制器包括:
电压发生器,产生控制 电压;多个晶体管,分别对应于频率控制信号的位,并由控制电压所控制, 每个晶体管具有连接到
电源电压的第一接线端;多个
开关,分别对应于上述 晶体管,并且分别被频率控制信号的对应位所控制,每个开关具有第一接线 端,该第一接线端连接到与对应晶体管的第二接线端,以及每个开关具有连 接到第一
节点的第二接线端。所述多个晶体管的每一个都具有不同的
沟道宽 度,因而当导通时,具有不同的
电阻。因此,通过各个晶体管流到上述第一 节点的电流量是彼此互不相同的。振荡器产生具有对应于流向所述第一节点 的电流量的频率的时钟信号。
在更进一步的示范性实施例中,控制电路包括:控制信号发生器,产生 一第一使能脉冲信号,与连续输入的两个同步信号同步,并产生第二使能脉 冲信号,与上述第一使能脉冲信号同步;TX时钟控制器,响应上述第一使 能脉冲信号,开始计数,以及响应上述第二使能脉冲信号,产生与计数值对 应的频率控制信号。当上述计数值在预定范围内时,该TX时钟控制器激活 频率锁定信号。当激活频率锁定信号时,该控制信号发生器停止第二使能脉 冲信号的产生。
在不同的示范性实施例中,频率控制信号是N-位信号(N:正整数),并 且当计数值不在预定范围时,TX时钟控制器连续改变频率控制信号的位。 当计数值在预定范围时,TX时钟控制器锁定频率控制信号。
在不同的示范性实施例中,TX时钟控制器接收误差范围信号,用来定 义预定的范围。
在不同的示范性实施例中,根据USB规范,两个同步信号为
帧开始 (SOF)信号。
在不同的示范性实施例中,在USB规范定义为暂停方式期间,控制信 号发生器控制振荡器被禁止。
本发明的另一示范性实施例,时钟信号发生器包括:控制信号发生器, 与连续输入两个同步信号同步,产生第一、第二TX使能脉冲以及第一RX 使能脉冲;TX时钟控制器,响应上述第一使能TX脉冲信号,对TX时钟信 号开始计数,以及响应上述第二TX使能脉冲,产生与第一计数值对应的TX 频率控制信号;TX时钟发生器,产生频率对应于上述TX频率控制信号的 TX时钟信号;RX时钟控制器,响应上述第一RX使能脉冲,产生一个RX 频率控制信号;RX时钟发生器,产生频率对应于上述RX频率控制信号的 第一RX时钟信号。
在一些示范性实施例中,时钟信号发生器进一步包括:RX时钟恢复器, 与输入数据信号的转换同步,对上述第一RX时钟信号开始计数,以及当计 数值达到预定值时,产生第二RX时钟信号。
在另一示范性实施例中,控制信号发生器,与连续输入的两个同步信号 同步,产生第一TX使能脉冲,与上述第一TX使能脉冲同步,产生一个第 二TX使能脉冲,与输入的两个同步信号同步,产生第二RX使能脉冲,与 上述第二RX使能脉冲同步,产生第一RX使能脉冲。
在进一步的示范性实施例中,RX时钟控制器,响应第二RX使能脉冲, 对第一RX时钟信号开始计数,提供具有对应于第二计数值的预定值的RX 时钟恢复器。
在更进一步的示范性实施例中,RX时钟控制器,响应第二RX使能脉 冲,对第一RX时钟信号开始计数,以及响应上述第一RX使能脉冲,产生 对应于上述第二计数值的RX频率控制信号。
在更进一步的示范性实施例中,RX时钟控制器响应于第二RX使能脉 冲开始对第一RX时钟信号进行计数,并响应于第一RX使能脉冲产生对应 于第二计数值的RX频率控制信号。
在更进一步的示范性实施例中,RX时钟控制器包括:电流发生器,产 生对应于上述RX频率控制信号的控制电流;以及振荡器,产生具有与所述 控制电流对应的频率的RX时钟信号。
在不同的示范性实施例中,RX频率控制信号包括多个位。
在不同的示范性实施例中,电流控制器包括:电压发生器,产生控制电 压;多个开关,分别对应于RX频率控制信号的位,并分别由RX频率控制 信号的对应的位控制,每个开关具有连接到第一节点的第一接线端;多个电 阻(例如控制电压控制的晶体管),每个
电阻器具有连接到电源电压的第一 接线端,以及连接到对应开关的第二接线端的第二接线端。通过各个电阻器 流到上述第一节点的电流量是彼此互不相同的。
在本发明进一步的示范性实施例中,时钟信号发生方法包括:产生时钟 信号;连续接收两个同步信号,在两个同步信号之间的时段的期间,对上述 时钟信号计数;当计数值不在预定范围时,根据计数值改变时钟信号的频率。
时钟信号的频率的改变包括:当计数值在预定范围时,锁定上述时钟信 号的频率。
时钟信号的频率的改变包括:产生对应于计数值的一个频率控制信号; 根据上述频率控制信号,改变上述时钟信号的频率。
频率控制信号包多个位,频率控制信号的产生包括:确定计数值是否在 预定范围内;当计数值不在预定范围内时,改变频率控制信号的位的值。
频率控制信号的产生可以进一步包括:当计数值在预定范围时,锁定频 率控制信号的位的值。
频率控制信号包括N位(N:正整数),并且频率控制信号的产生包括: 选择N位中的一个;将所选择的位设置为第一值;确定计数值是否在预定范 围之内;当计数值不在预定范围之内时,重新将所选择的位设置为第二值。
频率控制信号的产生进一步包括:当计数值不在预定范围之内时,在上 述N位的未被选择的位中,选择其中之一;返回确定步骤。
频率控制信号的产生进一步包括:当计数值在预定范围内时,将N位中 的先前所选择的位设置为当前选择位;激活频率锁定信号。
频率锁定信号最初处于非激活状态,当频率锁定信号处于非激活状态 时,执行频率控制信号的产生。
在本发明更进一步的示范性实施例中,时钟信号发生方法包括:a)产生 具有最大频率(举例来说,
硬件或软件所确定的最大量)的第一时钟;b)产 生具有最小频率(举例来说,硬件或软件所确定的最小量)的第二时钟;c) 连续接收两个同步信号,在两个同步信号的时段的期间,计数上述第一时钟 和第二时钟;d)根据上述第一时钟的计数值和上述第二时钟的计数值,改变 上述第一时钟的频率。
上述第一时钟的频率的改变可以包括:根据上述第一时钟的计数值和上 述第二时钟的计数值的差,改变上述第一时钟的频率。
时钟信号发生方法可以进一步包括:计数具有改变频率的上述第一时 钟,其中,当上述第一时钟的计数值不在预定范围时,重复执行步骤a)到d)。
在本发明更进一步的示范性实施例中,IC卡包括:收发器,根据USB 规范,与TX/RX时钟同步,通过数据接线端传递/接收数据,检测通过数据 接线端所接收到的同步信号,并且在检测所接收到的每个同步信号后,输出 检测信号;以及时钟信号发生器,在收发器输出的两个检测信号之间的时段 期间,计数TX时钟,并且,产生具有对应于所述计数值的频率的TX时钟。
时钟信号发生器可以包括:TX时钟控制电路,在两个检测信号之间的 时段的期间,计数上述TX时钟,产生对应于计数值的TX频率控制信号; 以及TX时钟发生器,生成具有对应于上述TX频率控制信号的频率的TX 时钟。
当计数值在预定范围内时,TX时钟控制电路可以锁定上述TX频率控 制信号。
时钟信号发生器可以包括:RX时钟控制电路,在两个检测信号之间的 时段的期间,计数上述RX时钟,产生对应于计数值的RX频率控制信号; 以及RX时钟发生器,产生具有对应于上述RX频率控制信号的频率的RX 时钟。
本发明的示范性实施例将参考
附图,在下面进行更详细的描述。可是, 本发明可以具体表现为不同的形式,并不应当被理解为局限于这里提出的实 施例。相反地,因为提供了这些实施例,所以对于本领域技术人员来说,本 披露彻底地、完全地,并且充分表达了本发明的范围。
图1说明了根据本发明的示范性实施例的通过USB接口与计算机系统 连接的智能卡。
参考图1,计算机系统100包括:计算机主体110、监视器120、
键盘 130、鼠标140。根据USB规范定义的协议,计算机系统100可以通过软件 狗(dongle)150与智能卡160通信。
软件狗150是一种适配器,具有插头151,可连接到计算机主体110的 USB端口111,并且智能卡160可以插入软件狗150中,这样软件狗150就 行使外部卡读卡器的功能。软件狗150可以包括或本质上由诸如
导线和欧姆 接线端之类的无源元件(举例来说,导体)组成。当智能卡160插入软件狗 150时,智能卡160上的IC芯片200的接线端通过插头151电连接到计算机 主体110的USB端口111。
当软件狗150的插头151插入计算机主体110的USB端口111时,计 算机主体110根据即插即用(PnP)处理,自动地识别智能卡160。计算机 主体110的USB端口111经过数据接线端203和204,将同步信号输出给IC 芯片200,并且经由数据接线端203和204输出数据信号D+和D-,作为RX 数据信号R_DATA。
图2是根据本发明的示范性实施例的智能卡芯片200的方框图,即,图 1的智能卡160的IC芯片。
参考图2,具有USB端口的智能卡芯片160包括
随机存取存储器(RAM) 210、
非易失性存储器220、
只读存储器(ROM)230、USB收发器240、时 钟信号发生器250、微处理器260。智能卡芯片160进一步包括电源电压接 线端201和202,以及用于根据USB协议通信的USB D+和D-数据接线端 203和204。数据接线端203和204与USB收发器240连接。智能卡芯片200 可以进一步包括完成其它通信方式的接线端,以及其它接口,例如适于ISO 7816通信的国际标准化组织(ISO)的接口。
USB收发器240,基于通过数据接线端203和204从主机(即PC)接 收到的同步信号,产生控制信号SOF_PID、USB_RST、SUSPEND,并且输 出数据信号D+和D-作为RX数据信号R_DATA,数据信号D+和D-通过数 据接线端203和204从主机接收。时钟信号发生器250基于从USB收发器 240接收到的控制信号SOF_PID、USB_RST、SUSPEND产生TX时钟TCLK 和RX恢复时钟RCV_CLK。该TX时钟TCLK和RX恢复时钟RCV_CLK 也提供给USB收发器240,用于实现和主机的数据通信。
根据USB规范,在主机和USB装置之间没有传递时钟信号。因此,如 上所述,每个USB装置(即,计算机外设)都需要非常精确的内部时钟信 号发生器。为了主机和USB装置之间的数据通信的同步,在全速模式下每1 毫秒,主机传递一个star-of-packet(SOF)(包开始)的包,即,同步信号。 在全速模式下同步信号的精确性为0.05%。
图3A是说明当USB装置连接到主机时,USB装置和主机之间的控制 信号传递的时序图。
参考图3A,主机传递SOF包、建立包(setup packet)(即,包标识符(PID) 包)、建立数据给USB装置,并且基于这些信号的收到,USB装置发送握手 包(即,响应信号)到主机。
图3B是一个时序图,说明了在数据TX/RX模式下,主机和USB装置 之间通信的TX/RX包。
参考图3B,在从主机到USB装置数据传输的输出处理中,主机传递SOF 包、输出包(即,PID包)、数据包给USB装置,并且USB装置传递一握手 包给主机。在从USB装置到主机的数据传递的输入处理中,主机传递SOF 包、输入包(即,PID包)给USB装置,并且当接收到来自USB装置的数 据包后,主机传递一握手包给USB装置。
如上可知,为了在主机和USB装置之间的数据通信,SOF包(即,同 步信号)通常以1ms的周期,首先从主机传递到USB装置。在本发明的实 施例中,智能卡芯片使用从主机每隔1ms接收到的SOF包产生TX时钟和 RX恢复时钟。
图4是根据本发明的实施例的如图2所示的时钟信号发生器250的方框 图。
参考图4,时钟信号发生器250包括TX时钟控制电路410、TX时钟发 生器420、控制信号发生器430、RX时钟恢复电路440、RX时钟控制电路 450、和RX时钟发生器460。TX时钟控制电路410包括计数器411和寄存 器412。RX时钟控制电路450包括计数器451和寄存器452。
图6是产生TX时钟TCLK所需要的信号的时序图,该TX时钟TCLK 用于如图4所示的时钟信号发生器250中。
下面将参考图4和6,描述利用时钟信号发生器250生成TX时钟TCLK 的方法。
参考图4和6,响应于从如图2所示的USB收发器240接收的控制信号 SOF_PID、USB_RSTN、SUSPEND,控制信号发生器430为TX时钟控制电 路410生成使能信号TCNT_EN、TCNT_LD、TOUT_EN,并且为RX时钟 控制电路450生成使能信号RCNT_EN、RCNT_LD和ROUT_EN。
控制信号SOF_PID是指示SOF包的脉冲信号,并且是同步信号。在正 常状态下,控制信号SOF_PID的周期是1ms。在2个连续的SOF包的间隔, (即,SOF包的周期)不是1ms的时候,激活控制信号USB_RSTN和 SUSPEND。当控制信号USB_RSTN和SUSPEND都处于非激活状态时, 控制信号发生器430响应控制信号SOF_PID进行操作。计数器使能信号 TCNT_EN与控制信号SOF_PID互补,并且当控制信号SOF_PID处于低电 平状态,TCNT_EN被激活到高电平。计数负载信号TCNT_LD是脉冲信号, 其包括无论何时当计数器使能信号TCNT_EN从激活状态转换到非激活状态 时的脉冲。输出使能信号TOUT_EN用来将由TX时钟控制电路410生成的 10位宽的TX时钟控制信号TCON[10:1]存储在寄存器412中。
当时钟使能信号TCLK_EN处于激活状态时,TX时钟控制电路410的 计数器411与TX时钟TCLK同步计数。响应于计数负载信号TCNT_LD, TX时钟控制电路410生成对应于存储在计数器411里的计数值TCNT的、 10位宽的TX时钟控制信号TCON[10:1]。响应于输出使能信号TOUT_EN, TX时钟控制电路410在寄存器412中存储该TX时钟控制信号TCON[10:1]。 计数器411可以设计成响应于计数负载信号TCNT_LD而清零。
图5是一个电路图,说明如图4所示的TX时钟发生器420的实例。
参考图5,TX时钟发生器420包括电压发生器510、11个MOS(FET) 晶体管T0-T10、10个开关SW1-SW10、和振荡器520。电压发生器510产 生足够高的电压V1,用来导通MOS晶体管T0-T10。这11个MOS晶体管 T0-T10中的每个都具有连接到公共电源电压的漏极,以及连接到源于电压 发生器510的电压V1的栅极。MOS晶体管T0的源极连接到节点N1,MOS 晶体管T1-T10的源极分别地连接所对应的开关SW1-SW10的第一接线端。 开关SW1-SW10的第二接线端连接到节点N1,并且由对应的TX时钟控制 信号TCON[10:1]分别控制。
在本实施例中,通过调整NMOS晶体管T1-T10的沟道的大小而能够使 分别流经NMOS晶体管T1-T10和分别流经开关SW1-SW10到节点N1的电 流I1-I10的数量是1:2:4:8,...,256:512。
例如,当开关SW9导通,并且剩余开关SW1-SW8切断时,流向节点 N1的电流是I0+I9=I0+I1×512。另一个例子,当开关SW2和SW8导通,并 且剩余开关SW1、SW3到SW7、SW9切断,则流向节点N1的电流是 I0+I2+I8=I0+I1×2+I1×256=I0+I1×258。
振荡器520产生TX时钟TCLK,其中,TX时钟TCLK的频率取决于 流向节点N1的电流。在本实施例中,振荡器520可以是包括电阻器和电容 器的RC振荡器。
在TX时钟发生器420中,流向节点N1的电流量根据TX时钟控制信 号TCON[10:1]而改变,从而TX时钟TCLK的频率改变。
再次参考图4和6,当TX时钟TCLK所需的频率为4.8MHz±0.25%时, TX时钟TCLK的脉冲的数量是1毫秒4800±0.25%(即,47880到48120)。 当存储在TX时钟控制电路410的寄存器412中的TX时钟控制信号 TCON[10:1]的初始值为“1000000000”,并且计数器411的计数值TCNT为 5000时,TX时钟控制电路410将TX时钟控制信号TCON[10:1]变成 “0100000000”。根据改变的TX时钟控制信号TCON[10:1],TX时钟发生 器420改变TX时钟TCLK的频率。这样,当计数器411的计数值TCNT为 42000时,存储在寄存器412中的TX时钟控制信号变成“0100000000”。在 接连地改变TX时钟控制信号TCON[10:1]时,当计数器411的计数值TCNT 在预定范围(即,47880到48120)之内时,TX时钟控制电路410激活频率 锁定信号LOCK到,例如,高电平,以便停止TX时钟控制信号TCON[10:1] 的变化。外部决定信号LOCK_RES[7:0]确定计数值TCNT的预定范围。在 本实施例中,因为对应48MHz的计数值TCNT是48000,并且所需的误差 范围是±0.25%,则计数值TCNT允许的误差范围是±120。
当激活频率锁定信号LOCK时,控制信号发生器430将输出使能信号 TOUT_EN维持在低电平上。即使当输出使能信号TOUT_EN处于低电平状 态,响应于计数器使能信号TCNT_EN和计数负载信号TCNT_LD,TX时钟 控制电路410也监控由TX时钟发生器420产生的TX时钟TCLK的频率。 如果计数器411的计数值TCNT不在预定范围(即47880-48120)内,频率 锁定信号被去激活至低电平,所以可以调整TX时钟TCLK的频率。
在下文中,参考图4到8将详细描述时钟信号发生器250的示范性操作。
图7是说明采用如图4所示的时钟信号发生器250的,用来设置频率控 制信号TCON[10:1]以产生与USB规范适应的TX时钟TCLK的示范性方法 的图。图8是说明了采用如图4所示的时钟信号发生器250以产生与USB 规范适应的TX时钟TCLK的过程的流程图。
例如,如图7所举例说明的,当根据TX时钟发生器420的开关 SW1-SW10的“ON/OFF”情形振荡器520产生的TX时钟TCLK的频率范 围是43MHz-53MHz时,搜索频率控制信号TCON[10:1]从而引起TX时钟 TCLK的频率到达48MHz±0.25%是必需的。
为了设置频率控制信号TCON[10:1]以产生与USB规范适应的TX时钟 TCLK,TX时钟控制电路410采用逐步渐近(SAR)方案,该方案一位接一 位地,从最高有效位(MSB)到最低有效位(LSB)进行处理。
像图8中说明的那样,为了确定频率控制信号TCON[10:1]每个位的值, TX时钟控制电路410给MSB“N”设置搜索位k,并且频率控制信号 TCON[10:1]的初始值为“0000000000”(步骤800)。在本实施例中,MSB“N” 为位10。
由于频率控制信号LOCK逻辑上不是“1”(即高电平)(步骤802),并 且搜索位k不是“0”(步骤804),所以第k个频率控制信号TCON[k]的值 设置成“1”。因而,频率控制信号TCON[10]为“1”。当频率控制信号 TCON[10:1]是“1000000000”时,流向图5的节点N1的电流是I0+I1×512。
当计数器使能信号TCNT_EN逻辑上为“1”(即高电平)时(步骤810), 计数器411与TX时钟TCLK同步计数。当计数器使能信号TCNT_EN改变 成低电平时(步骤810),确定计数值TCNT是否大于最小值MIN并且小于 最大值MAX(步骤812)。当计数器使能信号TCNT_EN的周期为1毫秒, 并且TX时钟TCLK的期望频率为48MHz±0.25%时,最小值MIN为47880, 并且最大值MAX为48120。
如果计数器411的计数值TCNT大于最大值MAX,则第k个频率控制 信号TCON[k]设置成“0”(步骤816)。如果计数器411的计数值TCNT不 大于最大值MAX,则第k个频率控制信号TCON[k]维持在“1”(步骤816)。 由于完成了对第k个频率控制信号TCON[k]的位值的确定,值“k”减“1”, 用于下一位的值的确定(逐步渐近)(步骤818),并且过程返回到步骤802。
图7所示的坐标S1表示当频率控制信号TCON[10:1]为“1000000000” =512时,振荡器520产生的TX时钟TCLK的频率。这样,由于TX时钟 TCLK的频率高于48MHz,频率控制信号[10:1]的值需要减少。其原因在于 振荡器520产生具有与流向节点N1的电流量成比例的频率的TX时钟 TCLK。由于当频率控制信号TCON[10:1]的值为512时而产生的TX时钟 TCLK的频率高于期望频率48MHz,可以看出频率控制信号TCON[10:1]的 值小于512。在本实施例中,当计数器411的计数值TCNT大于最大值MAX 时,TX时钟控制电路410将第k个频率控制信号TCON[k]变成“0”,设置 第(k-1)个频率控制信号TCON[k-1]为“1”,并且重复前面所述的步骤。 将频率控制信号TCON[10:1]设置成“0100000000”=256。
如坐标S2所表示的,当频率控制信号TCON[10:1]的值为256时,所产 生的TX时钟TCLK的产生频率低于48MHz。这样,频率控制信号TCON[10:1] 的值需要增加。因此,将频率控制信号TCON[10:1]设置成“0111000000” =384。
这样,将频率控制信号TCON[10:1]连续地设置成“0111000000”=384 和“0111100000”=490,并且由TX时钟TCLK的频率是否在预定范围(即 47880-48120)之内确定。
如坐标S5所表示的,当频率控制信号TCON[10:1]为“0111100000”时, TX时钟TCLK的频率在48MHz±0.25%的范围内,频率控制信号LOCK激 活至高电平。也就是,如果计数器411的计数值TCNT大于最小值MIN并 且小于最大值MAX,则TX时钟控制电路410激活频率控制信号LOCK至 高电平,值“k”增加1(步骤822),并且返回步骤802。
包括晶体管、电阻器和电容器的
电子电路的操作特性,随着如
温度之类 的周围环境的变化和操作(供给)电压的变化而微小地变化。即使振荡器520 产生具有期望频率(即48MHz±0.25%)的TX时钟TCLK,由于周围环境 的变化,也会产生具有不希望的频率的TX时钟TCLK。为了动态地补偿这 样的TX时钟TCLK频率变化,TX时钟控制电路410改变参数“k”(步骤 822),并且返回步骤802。如果TX时钟TCLK的频率变化的宽度小,则变 化的频率接近于以前设置的频率。因此,TX时钟控制电路410可以在很短 的时间内通过参数“k”加1来输出期望频率(即48MHz±0.25%)的TX 时钟。在频率锁定信号LOCK从激活状态到非激活状态的转换之后被重新设 置的参数“k”可能是从MSB“N”到LSB“1”的其中的一位。
在如上所述的用来设置频率控制信号TCON[10:1]的方法中,步骤802 到818在最坏的情形下必须重复地执行11次。这样,最佳的频率控制信号 TCON[10:1]可以在输入12个SOF包(即,同步信号)之前被设置。一般 而言,当USB装置第一次连接至主机时,主机在一个控制传递周期内,传 递几十或几百个SOF包至USB装置。因此,时钟信号发生器250在有效数 据信号的传送之前,产生与USB规范适应的TX时钟TCLK,从而使能稳定 数据传递。
再参考图4,RX时钟控制电路450以及RX时钟发生器460具有和TX 时钟控制电路410以及TX时钟发生器420相同的结构和操作。RX时钟控 制电路450包括计数器451和寄存器452,响应从控制信号发生器430接收 的使能信号RCNT_EN、TCNT_LD和ROUT_EN,输出RX频率控制信号 RCON[10:1]。响应于从RX时钟控制电路450所接收到的RX频率控制信号 RCON[10:1],RX时钟发生器460产生RX时钟RCLK。
与RX时钟发生器460产生的RX时钟的频率(48MHz±α%)同步, RX时钟恢复电路440产生恢复时钟RCV_CLK,用来恢复在全速模式的以 12Mbps的速度接收的数据。
由于在全速模式下,RX时钟RCLK与具有恢复适合RX时钟恢复电路 440接收信号的频率的恢复时钟RCV_CLK同步,RX时钟控制电路450(与 TX时钟控制电路410以及TX时钟发生器420不同)可以保持存储在寄存 器452中的控制信号TCON[10:1],而不需要改变响应于使能信号RCNT_EN、 TCNT_LD和ROUT_EN的RX频率控制信号RCON[10:1]。
图9是说明根据本发明的另一示范性实施例的设置用于调整TX时钟 TCLK的频率的TX时钟控制信号TCON[10:1]的方法的流程图。
首先,将TX时钟控制电路410产生的TX频率控制信号TCON[10:1] 设置成“1111111111”=1023,并且将RX时钟控制电路450产生的RX频率 控制信号RCON[10:1]设置成“0000000000”=0(步骤910)。
用TX时钟控制电路410的计数器411来对设置成“1111111111”的TX 频率控制信号TCON[10:1]所产生的TX时钟TCLK的频率进行计数,用RX 时钟控制电路450的计数器451来对设置成“1111111111”的RX频率控制 信号RCON[10:1]所产生的RX时钟RCLK的频率进行计数。将RX时钟控 制电路450的计数器451的计数值TCNT提供给TX时钟控制电路410。
基于计数器411的计数值TCNT以及计数器451的计数值RCNT,TX 时钟控制电路410计算TX时钟TCLK的频率对TX时钟控制信号TCON[10:1] 的比率(即梯度A)(步骤920)。在这里,TX时钟产生器420的振荡器520 和TX时钟发生器460的振荡器(未示)被假设具有相同的如在图7中所说 明的特征。
在图7中说明的实例中,当RX频率控制信号RCON[10:1]为 “0000000000”时,RX时钟RCLK的频率是43MHz,并且当TX频率控制 信号TCON[10:1]为“1111111111”时,TX时钟TCLK的频率是53MHz。这 样,由于TX频率控制信号TCON[10:1]与RX频率控制信号RCON[10:1]之 间的差为“1111111111”=1023,所以梯度A为(TCNT-RCNT)/1023= (53000-43000)/1023。在这里,计数器使能信号(TCNT_EN)的周期为1 毫秒。
将对应TX时钟TCLK的计数值TCLK与对应期望频率(即48MHz) 的计数值“48000”的差除以梯度A,以计算一补偿值B(步骤930)。因此, 通过设置TX频率控制信号TCON[10:1]等于1023-B,立即近似地获得用来 产生具有期望频率的TX时钟TCLK的TX频率控制信号TCON[10:1](步骤 940)。
为了补偿由于周围环境改变导致的TX时钟TCLK的频率的改变,TX 时钟控制电路410连续地确定计数器411的计数值TCNT是否大于最小值 MIN并且小于最大值MAX(步骤950)。当计数器411的计数值TCNT大于 最小值MIN并且小于最大值MAX时,将频率锁定信号LOCK设置为高电 平并且保持在高电平,即逻辑“1”(步骤960)。另一方面,如果计数器411 的计数值TCNT小于最小值MIN或者大于最大值MAX,则将频率锁定信号 LOCK重新设置成低电平,即逻辑“0”(步骤970)。当频率锁定信号LOCK 处于低电平状态,为了设置TX频率控制信号TCON[10:1],TX时钟控制电 路410重复执行如上所述的步骤910-950。
图9中所说明的设置TX时钟TCLK的频率的方法,可以只使用2个SOF 包(即使用2个近似值)来设置TX频率控制信号TCON[10:1],从而可以在 较短的时间内设置TX时钟TCLK的频率。如图7所说明的,仅当TX时钟 发生器420产生的TX时钟TCLK的频率根据TX频率控制信号TCON[10:1] 线性改变时,图9所说明的采用TX时钟控制电路410的TX频率控制信号 TCON[10:1]的设置方法是最实用的。
在另一示范性实施例中,TX时钟控制电路410可以不使用RX时钟控 制电路450中的计数器451的计数值TCNT(即只使用单个计数器),来决 定TX频率控制信号TCON[10:1]。在本示范性实施例中,对于第一SOF包 的1毫秒周期,TX时钟控制电路410通过将TX频率控制信号TCON[10:1] 设置成“0000000000”,来获得第一计数值TCNT1,并且对于下一个SOF包 的1毫秒周期,通过将TX频率控制信号TCON[10:1]设置成“1111111111” 来获得第二计数值TCNT2。其后,TX时钟控制电路410以第一和第二计数 值TCNT1和TCNT2之间的差(或比率)为
基础,使用图9所说明的方法中 的变型来设置最佳的TX频率控制信号TCON[10:1]。第一计数值TCNT1相 应于并代替图9的RX频率控制信号RCON[10:1](例如在一个1毫秒周期, 将TX频率控制信号TCON[10:1]设置成“0000000000”),并且第二计数值 TCNT2相应于并代替图9的TX频率控制信号TCON[10:1](在一个1毫秒 周期,将TX频率控制信号TCON[10:1]设置成“1111111111”)。如果当TX 频率控制信号TCON[10:1]设置成“0000000000”时,时钟的频率为43MHz, 并且当TX频率控制信号TCON[10:1]设置成“1111111111”时,时钟的频率 为53MHz,于是这种情况下,由于第一计数值TCNT1与第二计数值TCNT2 之间的差为1023,则梯度A为(TCNT1-TCNT2)/1023=(53000-43000)/1023。 在这里,计数器使能信号(TCNT_EN)的周期为1毫秒。
下文,将详细描述图4所示的RX时钟恢复电路440的操作。
由于通过数据接线端203和204输入的数据信号D+和D-具有12MHz 的速率(数据频率),并且通过RX时钟发生器460产生的RX时钟RCLK 为48MHz±10%,每1位数据信号可以通过RX时钟RCLK
采样3、4或5 次,从而大于乃奎斯特频率(2次)。RX时钟恢复电路440选择RX时钟RCLK 的脉冲的一部分,用于输出恢复时钟RCV_CLK,所以数据信号可以以其保 持稳定的位
能量被采样。
图10是说明转换从主机到USB装置所传递的数据信号的示范性过程的 时序图。
参考图10,从主机到USB装置所传递的原始数据信号包括同步模式和 包数据。当在原始数据信号里出现7个连续位“1”,则将一个填充位“0” 代替“1”而插入到第7位中。另一方面,当在原始数据信号里的出现7个 连续位“0”,则将一个填充位“1”代替“0”而插入到第7位中。由于以倒 转不归零(NRZI)方案执行通过D+和D-接线端的数据的传递,因此包括同 步信号的最后数据的连续位“0”或“1”的数目可以达到7。
如图4所示的RX时钟控制电路450输出选择信号RATE[2:0],用于根 据RX时钟RCLK的频率确定RX数据信号R_DATA的采样
位置。
图12是说明根据计数器451的计数值RCNT以及对应于该选择信号 RATE[2:0]的分频比从RX时钟控制电路450输出的选择信号RATE[2:0]的表 格。
当RX数据信号R_DATA是逻辑“1”时,RX时钟恢复电路440的第一 计数器441对RX时钟RCLK计数,以输出一计数值NRZH_CNT。同样地, 当RX数据信号R_DATA是逻辑“0”时,RX时钟恢复电路440的第二计数 器442对RX时钟RCLK计数,以输出一计数值NRZL_CNT。
图11A是说明当从主机接收的RX数据R_DATA包含7个连续位“1” 时的RX恢复时钟RCV_CLK的一个实例的时序图。图11B是说明从主机接 收的RX数据R_DATA包含7个连续位“0”时的RX恢复时钟RCV_CLK 的一个实例的定时图。
当从主机接收的RX数据R_DATA包含7个连续位“1”时,RX时钟恢 复电路440按照图11A所说明的进行操作。
参考图11A,例如,当计数器451的计数值RCNT在42000-45000之间 时,从RX时钟控制电路450输出的选择信号[2:0]是“010”。响应选择信号 RATE[2:0]“010”,RX时钟恢复电路440根据第一和第二计数值441和442 的计数值,产生RX恢复时钟RCV_CLK。当RX数据R_DATA是逻辑“1” 时,第一计数器441的计数值NRZH_CNT与RX时钟TCLK同步连续地增 加。响应选择信号RATE[2:0]“010”,只要第一计数器441的计数值 NRZH_CNT增加1、4、3、4、4、3和4,则RX时钟恢复电路440输出RX 时钟RCLK作为RX恢复时钟RCV_CLK。
当从主机接收的RX数据R_DATA包含7个连续位“0”时,RX时钟恢 复电路440按照图11B所说明的进行操作。
参考图11B,当计数器451的计数值RCNT在38000-40000之间时,从 RX时钟控制电路450输出的选择信号[2:0]是“000”。响应选择信号RATE[2:0] “000”,只要第二计数器442的计数值NRZH_CNT增加1、4、3、3、3、3 和4,则RX时钟恢复电路440输出RX时钟RCLK作为RX恢复时钟 RCV_CLK。
当按照图11A和11B所说明的方法产生RX恢复时钟RCV_CLK时, USB收发器240可以在RX数据信号的能量处于稳定状态的条件下,恢复 RX数据信号R_DATA。
根据图12所说明的计数值RCNT的分频比仅仅是一个实例,计数值 TCNT的范围以及根据计数值RCNT的分频比,可以随着时钟信号发生器250 的操作条件而变化。
如上所述,根据本发明的时钟信号发生器可以产生适合USB规范定义 的数据传递速率的时钟信号。另外,时钟信号发生器可以产生RX时钟信号, 所以可以恢复RX数据信号,并且RX数据信号的能量处于稳定。
在本说明书中,说明了智能卡作为一个包括时钟信号发生器的USB装 置的实例,说明了一个计算机系统作为与智能卡通信的主机的实例。但是, 本发明不限于这些实例。另外,包括时钟信号发生器的USB装置可以与多 种具有USB端口的主机相连接,以执行与USB协议相适应的通信。
上面所揭示的主旨可以认为是说明性的,并且不限于此,并且所附的权 利要求意欲
覆盖属于本发明的真正的精神和范围的所有的
修改、增加以及其 它实施例。这样,在法律允许的最大范围内,通过随后的
权利要求及其等价 物的最广的可取得发明
专利的解释来确定本发明的范围,并且不应受在前的 详细描述约束或限定。
相关
申请的交叉引用
此专利申请要求申请日为2006年9月26日的韩国专利申请 No.10-2006-93634的优先权,在此,上述申请的全部内容被并入以作参考。