CN101646986B - 基于usb的同步和定时系统 - Google Patents
基于usb的同步和定时系统 Download PDFInfo
- Publication number
- CN101646986B CN101646986B CN200880007208.9A CN200880007208A CN101646986B CN 101646986 B CN101646986 B CN 101646986B CN 200880007208 A CN200880007208 A CN 200880007208A CN 101646986 B CN101646986 B CN 101646986B
- Authority
- CN
- China
- Prior art keywords
- usb
- circuit
- timing reference
- processor
- reference signal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/10—Distribution of clock signals, e.g. skew
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/24—Handling requests for interconnection or transfer for access to input/output bus using interrupt
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
- G06F13/385—Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Systems (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
一种同步装置,包括:USB设备,其具有USB微控制器、用于探测USB业务的电路,以及用于从USB数据流解码周期性数据结构(例如时钟载波信号)并输出解码的载波信号的电路,而且该周期性数据结构包含关于分布式时钟频率和相位的信息;以及用于接收该解码的载波信号、用于在接收到预定义数据包(例如SOF包)时生成软件中断,并用于将该软件中断传递到该USB微控制器的电路;其中该USB微控制器被配置为通过生成适于用作同步基准信号的输出信号而响应该软件中断(例如其中提供的中断服务例程)。
Description
相关申请
本申请基于2007年5月15日提交的美国申请No.60/938,148,并要求其提交日的权益,所提交的该申请的内容,通过引用被整体合并于此。
技术领域
本发明涉及一种用于提供基于通用串行总线(USB)的同步和定时系统的方法和装置,该系统特别地但决不排他地用于在本地环境中或在分布式方案中,提供在必要的任意程度上同步的测试和测量设备、仪器接口和过程控制设备的时钟、数据采集以及自动化和控制。
背景技术
USB规范旨在促进来自不同厂商的设备在开放架构下的互操。使用差分信令(即两条导线传输该信息)编码USB数据,所述差分信令采用这两条导线的信号电平之间的差的形式。USB规范旨在作为对PC架构、跨越便携的、台式和家用环境的增强。
USB规范假定设备是不同的。这对于其中连接来自多个制造商的设备的指定环境而言的确如此,但是还存在需要用于以同步方式操作具有相似特性的多个设备的规范的其它环境(例如某种共同的工业或实验室环境)。该规范并未充分解决这个问题。这样的环境通常是其中进行测试、测量或监控并需要设备被同步到比所指定程度更准确的环境。USB规范通过向所有设备提供1KHz时钟信号而允许有限的设备间同步。然而,很多实验室和工业环境需要在兆赫兹频率或更高频率下的同步。
USB采用分层的星型拓扑,其中集线器为USB设备提供附接点。位于用户的个人电脑(PC)、膝上型电脑或个人数字助理(PDA)上的USB主机控制器包含根集线器,该根集线器为系统中所有USB端口的源。所述根集线器提供若干个USB端口,USB功能设备或附加集线器可连接至这些USB端口。
依次,人们可将更多的集线器(例如USB复合设备),附接至这些端口中的任一端口,然后,这些集线器经由用于另外的USB设备的端口提供外加的附接点。以这种方式,USB允许最多连接127个设备(包括集线器),限制是任何设备最多可达五级深。
主机中的根集线器每1ms向每个设备发送一个帧开始(SOF)信号包,两个SOF包之间的时间被称为一帧。由于USB拓扑中固有的电延迟,所以每个模块在不同的时间接收该SOF包,这意味着,在直接连接到主机控制器的设备处与在五级下的设备处的信号接收之间具有显著的时延(规定为≤380ns)。当想以兆赫兹及以上的水平使设备同步时,这是一个严重的限制。此外,USB规范使得主机控制器不能发送多达五个连续的SOF令牌。
通过两种类型的USB传输:中断(Interrupt)和等时(Isochronous),当前在USB主机与USB设备之间进行同步是可能的。中断传输允许保证设备具有最小周期为125μs的轮询频率,而等时传输保证恒定的传输速率。这两种方法都需要在设备与主机之间存在业务(traffic)以进行同步,从而为更高程度的同步预留了更多带宽。不幸的是,这意味着在已连接最大数量的设备之前就可能用尽可用的USB带宽。这种方法也向主机设置了使127个设备通过软件保持与主机同步的巨大计算负担,但仍旧未能解决维持设备之间的同步性问题,因为对于主机来说,单独的设备表示分离的过程。
包含某种物理换能器的设备,例如激光二极管或光电探测器,可能需要时钟和触发信息。诸如具有1MHz的调制光输出的激光二极管之类的设备,可使用时钟信号以按规则的间隔或恒定的频率执行换能器功能。触发信号通常用于在设定时间启动或结束操作。在激光二极管示例中,触发信号可用于接通或关断调制光输出。
这些时钟和触发信号可用于使多个设备彼此同步(由此构成下面称作的“同步信息”),只要这些时钟和触发信号对于所有设备是共用的且是同时的。在这里“共用的”和“同时的”意味着这些信号在这些设备之间在时间上的变化小于规定量δt。在激光二极管示例中,这将使多个激光二极管能够将它们的光输出调制在一个频率。所有设备的调制频率将是相同的,并且它们的波形将是同相的。当前的USB规范(即2.0)容许长至0.35μs的δt。对于频率为1MHz和周期为1.0μS的信号,该延迟表示该周期的几乎一半。因此它不能用作例行使用的同步信息。
诸如集线器和USB控制器芯片之类的设备通常使用一定量的锁相,以便对USB协议进行解码。在USB协议中的SYNC模式的目的是提供用于另一电子电路锁定到的同步模式。然而,这旨在使该设备与USB比特流同步到足以解释MHz比特流的准确度。它并非旨在使两个分离的设备彼此同步到很多测试和测量仪器所需的级别。USB规范,就其处理设备间同步的范围来说,主要涉及使USB-CD音频流同步到足以在一个USB扬声器对上输出。这种布置的要求是在kHz范围内,并且对于这种应用,USB规范是令人满意的。然而,该规范并未解决同步例如100个USB扬声器对的潜在问题。
如上面所论述的,USB通信在规则的1ms帧期间(或者,在高速USB规范的情况下,以每1ms帧八个微帧的方式)传输数据。帧开始(SOF)包在每帧起始时被发送到除了低速设备之外的所有设备,并且在每微帧起始时被发送到所有高速设备。因此该SOF包表示向除了连接到给定主机控制器的低速设备之外的所有设备广播的周期性低分辨率信号。
该SOF包广播以1kHz(在高速USB规范的情况下为8kHz)的额定频率发生。然而,USB规范允许大约500ppm的很大的频率公差(按照仪器标准)。背景技术利用广播到这些设备中的每一个设备的低分辨率频率信号以提供时钟同步,但是仅仅是对由UDB主机控制器提供的多少有点不确切的频率。
美国专利No.6,343,364(Leydier等人)以一种智能读卡器为目标的对USB业务进行频率锁定的示例。该文献教导了一种与USB SYNC和包ID流相比为本地自激(free-running)时钟;其周期被更新以与该频率相匹配,结果形成额定频率为1.5MHz的本地时钟。这提供了足以将智能卡信息读取到主机PC内的同步程度,但是由于这种方法以智能读卡器为目标,因此没有解决设备间同步的问题。
美国专利No.6,012,115及后续美国专利No.6,226,701(Chambers等人)解决了USB SOF周期性和定时的编号问题。这些文献公开了一种计算机系统,其通过使用从USB主机控制器发送到与之相连接的外围设备的帧开始脉冲,可对实时外围设备内发生的预定事件的时刻进行准确地确定。
然而,这些文献所教导的方法并不包括测量用于确定USB主机控制器中的主时钟的绝对频率的包含在USB数据业务内的周期性数据结构的频率,并且在某些情况下依靠在主机中提供附加计数器。
美国专利No.6,092,210(Larky等人)公开了一种为了数据传输的目的,通过采用USB到USB连接设备连接两个USB主机的方法,所述USB到USB连接设备用于将本地设备时钟同步到两个USB主机的数据流。锁相环用于使本地时钟同步,而过采样用于保证不发生数据丢失。然而,该文献涉及两个USB主机的数据流彼此同步(并且具有有限的准确度),从而使所述主机之间的信息传输变得可能。该文献并未教导任何用于使多个USB设备与单个USB主机或与多个USB主机同步的方法。
USB规范是考虑到音频应用而编写的,并且美国专利No.5,761,537(Sturges等人)描述了如何使两个以上扬声器对与单独的时钟同步,其中一对以PC中的立体音频电路为动力来运转,另一对由USB控制。这两个扬声器对都使用它们自己的时钟,因此它们需要被同步,因此该文献教导了一种不管异步时钟之间可能的时钟脉冲相位差(clock skew)如何都能够维持音频信号的同步的技术。
美国专利申请No.10/620,769(Foster等人)公开了一种同步型USB,其中每个设备的本地时钟在给定USB上被同步到任意的程度。该文献还公开了一种方法和装置,用于为USB内的每个设备提供触发信号,以便可通过该触发信号在多个设备上同步地启动事件。
图1为一示例性背景技术的同步型USB设备10的示意图,USB设备10经由USB总线连接器14连接到数字USB 12。USB设备10包含集成的USB接口和微控制器16、USB设备功能电路(例如数控换能器)18、总线采样电路20、数字I/O总线解码电路22、同步相位比较器24以及同步时钟26。
USB设备10通过总线连接器14连接到数字USB 12。数字USB 12包含用于USB设备10的USB数据和控制信号;总线采样电路20探测(observe)内部USB业务30,并生成该USB业务30的复制品32。数字I/O总线解码电路22从信号32解码出时钟载波信号34。同步相位比较器24将解码的时钟载波34与从同步时钟26中分离的时钟信号36进行比较,使得输出的本地时钟信号28(在实质上高于载波信号34的频率的频率下)在频率和相位上锁定到载波信号34。
在这种布置中,当USB信号业务进入USB设备10时,是从USB 12检测并提取信息,并通过生成本地时钟信号28实现同步的。
这种用于同步多个USB设备中的每个设备上的本地时钟的架构采用存在于USB业务中的周期性数据结构。美国申请No.10/620,769中公开的实施例实质上将本地时钟在频率和相位上锁定到对USB设备上的SOF包令牌(token)的检测。采用电路探测通过USB的业务,并从总线业务解码时钟载波信号(在一个实施例中为SOF包),这导致1kHz(或者针对USB高速的8kHz)的额定载波信号频率。来自受控振荡器时钟的本地时钟信号,在相位和频率上都被锁定到USB SOF包的接收。这保证连接至根集线器的所有设备在频率上锁定到它们接收SOF包令牌的点。然而,美国申请No.10/620,769中描述的方法为每个设备提供精确已知的时钟频率的能力有限。
进一步,尽管该公开教导了连接至USB的设备的高度准确的时钟同步,但是所公开的方法采用精度受控的振荡器,其通常为压控电压振荡器的形式,并且必须特别注意要提供稳定的供给电压。然后闭环控制电路被施加到该精度振荡器。这增加了同步的USB设备的设计的成本和复杂度。
2007年2月15日提交的国际专利申请No.PCT/AU2007/000155(Foster等人)中公开的另一种同步的USB设备示意性地表示在图2中。该公开的技术允许在USB设备上生成准确的时钟频率而不管主机PC中的时钟的准确度如何。参见图2,USB设备40包括总线连接器44、总线接口电路46、微控制器48、USB设备功能电路(例如数控换能器)50,以及同步器52形式的同步电路(可与图1中的数字I/O总线解码电路22、同步相位比较器24以及同步时钟26相比较)。总线接口电路46充当在总线连接器44处检测到的USB数据用的收发器,将该USB数据传递到微控制器48。USB设备40还包括探测内部总线链路并将USB业务58的复制品56传递到同步器52的电路54。微控制器48向同步器52提供信息60,以用于时钟信号62的准确频率合成。微控制器48通过通信总线64与设备功能电路50通信。
载波信号一旦从USB业务中被解码,就与定标因子(scaling factor)相结合以生成同步信息,由此利用时钟频率的精确控制使本地时钟信号同步。以这种方式,通过使用来自微控制器48的附加信息信号60,本地时钟信号的频率可以比载波信号的多少有点不确切的频率更加准确。
据说这种布置能够产生任意高频率的本地时钟信号,例如数十兆赫兹的时钟频率,从而保证每个连接到给定USB的设备的本地时钟在频率上同步。美国专利申请No.10/620,769也教导了一种通过测量从主机到每个设备的信号传播时间并在每个USB设备上提供时钟相位补偿,进一步在相位上使多个本地时钟同步的方法和装置。
尽管这种的同步USB系统可以利用准确的时钟频率生成进行USB设备间的准确的时钟同步,但它们需要特殊的硬件部件以对存在于USB上的数据进行解码,并精确确定载波信号接收的时刻。除了普通的USB总线接口电路和微控制器(在图2中分别是46和48),还需要这些部件,因此这些方法与使用非定制USB接口微控制器的USB的一般实现不相兼容。
另外,USB规范限制USB设备可呈现给总线的电容水平。在存在并联的有效对地电阻的情况下,每条数据线对地的有效USB电容都受到非常严格的控制。对于兼容的USB设备,通常仅有很小的电容容限。在传统USB设备上添加并行数据通路电路(可与图1的总线采样电路20的并行数据通路电路相比较)通常可能超过电容极限。
发明内容
按照第一广义方面,本发明提供一种同步装置,包括:
USB设备,其具有USB微控制器、用于探测USB业务的电路,以及用于从USB数据流解码周期性数据结构(例如时钟载波信号)并输出解码的载波信号的电路,而且该周期性数据结构包含关于分布式时钟频率和相位的信息;以及
用于接收该解码的载波信号的电路、用于在接收到预定义数据包(例如SOF包)时生成软件中断的电路,以及用于将该软件中断传递给该USB微控制器的电路;
其中该USB微控制器被配置为通过生成适于用作同步基准信号的输出信号而响应该软件中断(例如利用其中提供的中断服务例程)。
所述USB微控制器可以包括所述用于探测所述USB数据流的电路。
所述用于接收所述解码的载波信号并生成软件中断的电路可以被提供在所述USB微控制器内,然而可替代地它可以作为在所述USB微控制器外部或甚至在所述USB设备外部的电路被提供。
所述装置可以包括混合式USB接口和微控制器,该混合式USB接口和微控制器包括所述用于解码该周期性数据结构的电路和所述用于接收该解码的载波信号并生成该软件中断的电路。
所述装置可以包括单独的解码硬件,该单独的解码硬件生成解码的SOF信号,并将该解码的SOF信号传递至所述USB微控制器,其中所述USB微控制器响应于将该解码的SOF信号传递至所述USB微控制器而生成所述软件中断。
所述周期性数据结构可以包括例如在USB规范中定义的USB包信号结构中的任一种:被发送给所述USB设备的命令序列、被发送给该USB设备的数据序列、OUT令牌、IN令牌、ACK令牌、NAK令牌、STALL令牌、PRE令牌、SOF令牌、SETUP令牌、DATA0令牌、DATA1令牌,或USB数据包中的可编程比特模式序列。
还提供一种用于使多个USB设备同步的方法,采用多个如上所述的同步装置。
根据第一广义方面,还提供一种同步的USB,包括如上所述的装置。
按照第二广义方面,本发明提供一种用于向多个解码的同步基准信号分配有效性权重的方法,包括:
探测解码的载波信号;
基于该解码的载波信号中的预定义数据包(例如SOF包)引起软件中断;
响应于该软件中断而执行中断服务例程,该中断服务例程生成中断输出信号;
确定当所述软件中断被接收到时正在执行的USB微控制器指令;
确定该USB微控制器指令所需的指令周期数;以及
基于软件中断的接收时间的不确定性,向定时基准信号分配定时有效性加权因子。
为了更高的准确度和稳定性,第二广义方面可以采用一种以上统计方法对该重复性载波信号脉冲进行滤波、求平均或其它方式处理。
按照第三广义方面,本发明提供一种用于使USB设备的本地时钟同步的方法,包括:
探测USB数据流;
从该USB数据流解码周期性数据结构;
基于所述周期性数据结构引起软件中断;
响应于该软件中断而执行中断服务例程;
利用该中断服务例程生成中断输出信号;
将该中断输出信号作为基准定时信号传递至具有锁相环架构的同步时钟电路;以及
基于该基准定时信号利用该同步时钟电路在相位和频率上锁定本地时钟(例如高频本地石英振荡器时钟)。
所述周期性数据结构可以包括例如USB规范中定义的USB包信号结构中的任一种:被发送给所述USB设备的命令序列、被发送给该USB设备的数据序列、OUT令牌、IN令牌、ACK令牌、NAK令牌、STALL令牌、PRE令牌、SOF令牌、SETUP令牌、DATA0令牌、DATA1令牌,或USB数据包中的可编程比特模式序列。
第三广义方面还可以用于根据该方法使用多个同步的USB设备生成同步的USB。
按照第四广义方面,本发明提供一种用于使USB设备的本地时钟同步的方法,包括:
探测USB数据流;
在USB数据流中解码周期性数据结构SOF包;
使用具有多个输出的自激振荡器时钟,每个输出具有相应的相位(其通常将彼此不相同);
在接收到该解码的周期性数据结构时,选择与该解码的周期性数据结构最同相的输出;以及
基于所选择的相位对该自激时钟进行相位调整,以补偿不正确的自激时钟的频率或不同步的自激时钟的频率。
该方法通常将包括重复地从所述输出的相位中选择与该解码的周期性数据结构最同相的相位,并基于所选择的相位对该自激时钟进行相位调整。
所述周期性数据结构可以包括例如在USB规范中定义的USB包信号结构中的任一种:被发送给所述USB设备的命令序列、被发送给该USB设备的数据序列、OUT令牌、IN令牌、ACK令牌、NAK令牌、STALL令牌、PRE令牌、SOF令牌、SETUP令牌、DATA0令牌、DATA1令牌,或USB数据包中的预定义比特模式序列。
因此,(非频率受控的)时钟的最适合相位可以在每个周期性数据结构(例如SOF)事件时选择。这可以与软件(ISR)或硬件型周期性数据结构检测一起使用。
该方法可以包括使用具有多个相位延迟的输出的自激振荡器。
该方法可以包括使用具有多抽头延迟发生器的自激振荡器生成多个相位。
根据第四方面,还提供一种同步的USB,该同步的USB使用根据上述方法的多个被同步的USB设备。
根据一个广义方面,本发明提供一种用于分配定时基准信号的方法,包括:
将带有处理器的设备连接到数据总线;
针对所述设备本地的数据信号,利用所述处理器监控所述数据总线,其中所述数据包含周期性数据结构;
所述处理器通过生成软件中断对检测到所述周期性数据结构进行响应;
所述处理器通过执行中断服务例程对所述软件中断进行响应;
所述中断服务例程生成定时基准信号。
所述周期性数据结构可以是多种周期性数据结构中的一种,并且该方法包括,所述处理器通过生成相应的软件中断对检测到所述周期性数据结构中的每一种周期性数据结构进行响应,所述处理器通过执行相应的中断服务例程对所述软件中断进行响应,并且所述中断服务例程生成相应的定时基准信号。
该方法可以进一步包括:
识别在接收所述相应的软件中断期间正在被所述处理器处理的软件指令;
确定所述处理器执行所述软件指令所需的指令周期数;以及
向所述相应的定时基准信号中的每一个定时基准信号分配加权因子,其中该加权因子是在生成所述相应的软件中断与所述相应的定时基准信号之间的时段中的不确定性的度量。
该方法可以进一步包括:
通过将所述多个加权因子与所述多个定时基准信号组合生成多个加权的定时基准信号,使得所述定时基准信号中的给定定时基准信号的贡献通过其对应的加权因子被加权。
该方法可以进一步包括:
将所述设备的本地时钟在频率和相位上都锁定到所述多个加权的定时基准信号。
该方法可以进一步包括:
对所述加权的定时基准信号进行统计处理,从而更精确地锁定所述本地时钟的频率和相位。
所述数据总线可以是USB,并且所述设备是USB设备。
所述处理器可以是具有嵌入式USB物理接口的微控制器,也可以是包含嵌入式USB物理接口的现场可编程门阵列或其它形式的可编程逻辑。
在一个实施例中,所述周期性数据结构包括在USB规范中定义的USB包信号结构中的任一种:被发送给所述USB设备的命令序列、被发送给该USB设备的数据序列、OUT令牌、IN令牌、ACK令牌、NAK令牌、STALL令牌、PRE令牌、SOF令牌、SETUP令牌、DATA0令牌、DATA1令牌,或所述USB数据包中的预定义比特模式序列。
按照另一个广义方面,本发明提供一种对多个时钟载波信号加权的方法,包括:
针对周期性数据结构,利用处理器监控数据总线;
所述处理器通过生成软件中断对所述周期性数据结构进行响应;
所述处理器通过执行中断服务例程对所述软件中断进行响应;
所述中断服务例程生成定时基准信号;
确定在接收所述软件中断期间正在被所述处理器处理的软件指令;
确定所述处理器执行所述软件指令所需的指令周期数,其中所述指令周期数表示对所述处理器发出所述软件中断的时间确定中的不确定性的度量;以及
根据所述处理器发出所述软件中断的所述时间中的不确定性对所述多个时钟载波信号加权。
所述周期性数据结构可以是多种周期性数据结构中的一种,并且该方法包括:
所述处理器通过生成相应的软件中断对所述周期性数据结构中的每一种进行响应;
所述处理器通过执行相应的中断服务例程对所述软件中断进行响应;
所述中断服务例程生成相应的定时基准信号;
向所述定时基准信号中的每一个分配加权因子,其中所述加权因子是对生成所述软件中断与所述相应的定时基准信号之间的时段中的不确定性的度量;
通过将所述多个加权因子与所述多个定时基准信号进行组合而生成多个加权的定时基准信号,使得所述定时基准信号中的给定定时基准信号的贡献通过其对应的加权因子被加权。
该方法可以包括利用计算设备确定生成所述软件中断与所述定时基准信号之间的时段中的不确定性。
该方法可以包括利用查找表确定生成所述软件中断与所述定时基准信号之间的时段中的不确定性。
根据一广义方面,本发明提供一种用于对多个定时基准信号加权的装置,包括:
支持中断服务例程的处理器或微控制器;
用于探测所述处理器本地的数据业务的电路;
用于从所述数据业务解码周期性数据结构的电路;
用于生成与所述周期性数据结构的解码相对应的确认信号的电路;
用于生成所述处理器的软件中断的电路,而且所述处理器被配置为在接收到所述确认信号时发出中断服务例程;以及
用于响应来自中断服务例程的命令而生成定时基准信号的电路。
该装置可以进一步包括:
用于报告当所述软件中断发生时哪条指令正在被执行的输出;
用于确定生成所述软件中断与所述定时基准信号之间的时段中的不确定性的机构;以及
用于计算针对所述多个定时基准信号中的每一个的加权因子的机构。
所述用于确定生成所述软件中断与所述定时基准信号之间的时段中的不确定性的机构,例如可以是例如计算设备或查找表。
所述处理器或微控制器可以具有嵌入式USB物理接口。所述处理器或微控制器可以是可选地具有嵌入式USB物理接口的现场可编程门阵列或其它形式的可编程逻辑。
本发明还提供一种用于使USB设备同步的装置,包括:
USB;
具有支持软件中断和中断服务例程的架构的处理器或微控制器;
用于当所述USB设备正在与所述USB进行数据通信时探测所述USB设备本地的USB业务的电路;
用于从所述USB上的业务解码周期性数据结构的电路;
用于生成与所述周期性数据结构的解码相对应的确认信号(acknowledgement signal)的电路;
用于在接收到所述确认信号时生成所述处理器的软件中断的电路,其中所述软件中断启动中断服务例程,而且该中断服务例程被配置以便生成适于被用作本地同步基准信号的输出信号;以及
用于响应来自所述中断服务例程的命令而生成定时基准信号的电路。
该装置可以进一步包括:
本地时钟;以及
用于控制所述本地时钟的频率和相位的电路,其中所述定时基准信号可用于控制所述本地时钟频率和/或相位。
所述处理器或微控制器可以包括所述用于探测所述USB设备本地的USB业务的电路。
所述处理器或微控制器可以包括所述用于从所述USB上的业务中解码周期性数据结构的电路。
所述处理器或微控制器可以包括所述用于生成与所述周期性数据结构的解码相对应的确认信号的电路。
所述处理器或微控制器可以包括所述用于在接收到所述确认信号时生成所述处理器的软件中断的电路。
所述处理器或微控制器可以包括所述用于响应来自所述中断服务例程的命令而生成定时基准信号的电路。
所述处理器或微控制器可以包括所述本地时钟。
所述用于探测所述USB设备本地的USB业务的电路,可以不包含在所述处理器之内。
所述用于从所述USB上的业务解码周期性数据结构的电路,可以不包含在所述处理器或微控制器之内
所述用于生成与所述周期性数据结构的解码相对应的确认信号的电路,可以不包含在所述处理器之内。
本发明还提供一种用于使USB设备的本地时钟同步的方法,包括:
探测USB数据流;
在USB数据流中解码周期性信号结构包;
使用具有多个输出的自激振荡器时钟,每个输出具有相应的相位;
在接收到解码的周期性信号结构包时,从所述输出的相位中选择与该解码的周期性信号结构包最同相的相位;以及
基于所选择的相位对该自激时钟进行相位调整,以补偿不正确的自激时钟的频率或不同步的自激时钟的频率。
该方法可以包括重复地从所述输出的相位中选择与该解码的周期性信号结构最同相的相位,并基于所选择的相位对该自激时钟进行相位调整。
所述周期性数据结构包可以包括例如USB规范中定义的USB包信号结构中的任一种:被发送给所述USB设备的命令序列、被发送给该USB设备的数据序列、OUT令牌、IN令牌、ACK令牌、NAK令牌、STALL令牌、PRE令牌、SOF令牌、SETUP令牌、DATA0令牌、DATA1令牌,或所述USB数据包中的预定义比特模式序列。
该方法可以包括使用具有多个相位延迟的输出的自激振荡器。
该方法可以包括使用具有多抽头延迟的自激振荡器。
本发明还包括一种用于使具有多个可选相移输出的设备的自激本地时钟同步的方法,该方法包括:
(i)所述设备接收周期性基准信号;
(ii)在接收到所述周期性基准信号中的每一个时,所述设备检测所述多个可选相移输出中的哪一个与所述周期性基准信号最同相;以及
(iii)采用所述相移输出中的所述最同相的相移输出作为所述本地时钟信号。
该方法可以包括通过重复步骤(i)至(iii)在相位上对所述本地时钟信号进行周期性地调整。
该方法可以包括当在多个时钟周期之上被评估时选择与所述周期性基准信号最同相的相移输出。
该方法可以进一步包括:
确定所述自激振荡器输出在所述周期性基准信号的接连的周期之间的时段期间所经历的累积相位误差;以及
在所述周期性基准信号的接连的周期之间的时段内,周期性地选择所述多个相移输出中下一个最适合的相移输出,以便持续最小化该输出时钟信号的绝对相位误差。
应当注意,可以根据需要组合本发明的以上方面中的每一方面的各种特征。
另外,可以以各种方式实施根据本发明的装置。例如,可以以在印刷电路或印刷接线板上、陶瓷基板上或在半导体级别上——即作为单晶硅(或其它半导体材料)芯片的多个部件的形式构造这些设备。
附图说明
为了使本发明可被更清楚地弄清,现在将参照附图以示例的方式描述实施例,在附图中:
图1是背景技术的同步的USB设备的示意图;
图2是另一背景技术的同步的USB设备的示意图;
图3是根据本发明第一实施例的同步的USB设备的示意图;
图4是根据图3实施例的两个USB接口/微控制器的命令执行堆栈的示意图,示出了软件中断等待时间和不确定性;
图5是图4的命令执行堆栈的时序图;
图6是根据本发明第二实施例的同步的USB设备的示意图;
图7是图6的USB设备的同步器电路的示意图;以及
图8是图7的同步器电路的内部电路的示意性时序图。
具体实施方式
在图3中以附图标记80示意性地示出根据本发明第一实施例的USB设备,具有数字USB 82。USB设备80包括用于连接至数字USB 82的总线连接器84、USB接口/微控制器86、数字输入/输出电路88(采用例如数字换能器的形式,例如模数转换器、压力换能器或应变仪),以及同步时钟电路90。
重复性载波信号形式的时钟同步信息由USB接口/微控制器86从数字USB 82中提取出来。传统的USB微控制器(例如Cypress EZUSB-FX牌系列USB微控制器)能够被配置为在接收到USB数据流中的帧开始(SOF)包时执行软件中断,并且在本实施例中也是如此;响应于接收到SOF包而执行的中断服务例程被编程为(以针对USB全速的1kHz或针对USB高速的8kHz)生成基准定时信号92,该基准定时信号92被传递至同步时钟电路90。同步时钟电路90包含利用低频基准信号92从相位和频率上锁定高频本地石英振荡器时钟的锁相环架构。
同步输出时钟信号94被配置为根据从USB接口/微控制器86提供的数据和命令96同步地控制数字输入/输出电路88的操作。该架构允许对同步电路所使用的载波信号进行解码,而不使用附加的专用硬件部件来探测与USB接口/微控制器86并行的USB数据流。
图4是根据图3实施例的USB接口/微控制器86的两个示例的第一命令执行堆栈110和第二命令执行堆栈112各自的示意图。命令堆栈110、112从上至下地执行;在该视图中,执行时间114从上至下地增加。微控制器指令是单指令周期时间的整数倍,并被表示为时间块。
在第一命令堆栈110中的某点处,微控制器86接收采用SOF中断信号116形式的物理中断刺激,对应于内部硬件寄存器接收数据流中的有效SOF包。在本示例中,这发生在指令118(在本示例中任意地示出为三周期指令)期间的某点。指令118完成之后,微控制器86将指令压入该堆栈,并执行中断服务例程(ISR)120。ISR 120通常是一连串指令,但在这里为了简单起见被表示为一个指令。ISR 120在下一可用时间处响应中断信号116,并且被编程为生成软件中断输出信号122(其可与图3的基准定时信号92相比较)。物理中断信号116的接收和软件中断输出信号122之间存在时延t1。
时延t1是可变的,并取决于指令周期的长度和物理中断信号116被接收时在指令周期内的位置。通过参照第二示例性命令堆栈112对此进行举例说明。在本示例中,微控制器在指令128(在本图中示为单周期指令)期间的某点接收物理SOF中断信号126。在指令128完成之后,微控制器86执行ISR 130。ISR 130通常是一连串指令,但是在这里为了简单起见被表示为一条指令。ISR 130响应中断信号126,并生成软件中断输出信号132。物理中断信号126的接收和软件中断输出信号132的输出之间存在时延t2。
因此,在确定SOF包的确切接收时间时存在不确定性——在量级上对应于这些时延t1和延迟t2。该不确定性取决于当前执行的指令的持续时间和物理SOF中断信号被硬件中断发生器接收时在该指令内的位置。这通常由给定微控制器上的最长指令的时长给定。因此,最佳情况(即最小)的不确定性由长度为Δt的单周期指令周期给定。
图5是图4的示例性命令执行堆栈110、112用的示意性时序图150。图5包括SOF包的接收152以及分别与图4的命令堆栈110和112相对应的时序图154和156。SOF包的接收152导致在指令160期间发生的硬件中断信号158。在指令160完成时,中断服务例程162生成被用作重复性同步基准信号的本地基准信号164。类似地,硬件中断信号158发生在指令166(对应于图4的命令堆栈112中的指令128)期间。然后中断服务例程168生成本地基准信号170。
某些微控制器具有范围从单指令周期到针对复杂操作的十个以上指令周期的指令周期时间。因此在对SOF接收时间的任何给定确定的不确定性中存在显著的可变性。如果已知该软件的结构,则可通过最长指令执行时间和代码的结构确定这些极限。假设SOF速率和微控制器代码执行具有异步特性,则SOF接收时间的准确确定和不准确确定存在随机分布。
然而,由于确定在接收SOF期间哪条指令正在执行并由此确定该指令的长度和最后得到的测量的不确定性的长度是可能的,因此确定SOF接收时间的任何给定确定的准确性是可能的。这允许SOF接收时间的任何非常不确定的测量结果被识别出来并由此被丢弃。可替换地,某些形式的统计加权可被应用在基于在SOF的接收期间正在执行的指令的长度而进行的SOF接收时间的确定,从而降低对取决于过长指令的测量的依赖。统计加权可以确定在控制同步的USB设备的锁相环同步时钟时如何使用每个测量结果,并且在控制同步时钟电路90时仅仅使用SOF接收时间的最可靠确定。此外,滤波、求平均或其它统计手段的使用可被用来改进同步时钟的准确度和稳定性。
存在与SOF接收时间的每个测量结果相关联的固定等待时间172。这是分别执行中断服务例程162或168所花费的时间。这对于每类微控制器都是恒定的(假设恒定时钟频率相等,并且批间不一致性为零)。
以这种方式,本发明在不使用例如可能向总线添加额外并联的容性负载的特殊硬件部件的情况下,提供使USB设备的本地时钟在频率和相位上都与包含在USB数据流中的重复性基准载波信号同步的装置。另外,本发明提供一种对来自总线的数据进行解码并生成基于软件中断的同步基准信号的装置。这种基于中断的基准信号并不需要基于现有技术硬件的同步的公开的高度准确的时间分辨率。
此外,本发明提供一种用于估计基于任何给定中断的同步基准信号的定时精确度的不确定性的方法,并且利用滤波或统计手段改进所述同步时钟的精确度和稳定性。
在图6中以附图标记200示意性地示出根据本发明第二实施例的USB设备,具有USB 202。USB设备200包括总线连接器204,USB设备200利用总线连接器204连接至USB 202。USB设备200具有总线接口/微控制器206、USB设备功能电路(例如数控换能器)208、总线采样电路210(可与图1的总线采样电路20相比较)和同步电路212。
总线接口电路206探测存在于总线连接器204处的USB数据流,并将USB业务216的复制品214传递至同步电路212。同步电路212生成同步本地时钟信号218,该同步本地时钟信号218被传递到USB设备功能电路208,USB设备功能电路208使用该同步本地时钟信号218同步地执行来自总线接口/微控制器206的命令220。同步电路212从USB业务216中解码出周期性时钟载波信号。
图7是图6的USB设备200的同步电路212的示意图。同步电路212具有用于接收USB数据业务的复制品214的输入端口232、同步时钟输出端口234、匹配滤波器236、多抽头自激振荡器时钟238,以及时钟选择器240。
匹配滤波器236从输入端口232接收USB数据流242。匹配滤波器236从USB数据流242中解码周期性载波信号(在本实施例中采用SOF包令牌的形式),并生成时钟同步信号244。多抽头自激振荡器238(其可采用耦合到多抽头相位延迟发生器的自激振荡器的形式)生成多个相位延迟的时钟信号246。时钟选择器240利用时钟同步信号244以选择输出时钟信号248,而且该输出时钟信号248是多个相位延迟的时钟信号246中选出的一个相位延迟的时钟信号。本领域技术人员将会意识到,存在很多种利用便宜的自激振荡器生成多个相位延迟的时钟信号的方式。
以这种方式,同步电路230使用廉价的自激振荡器和时钟选择器电路来控制数字控制环路中的输出时钟信号相位,以维持过程同步。这种系统通常将没有传统的模拟锁相环架构(其提供精确的相位和频率控制)稳定和准确,但是这种方法提供了相对便宜的可替代同步系统,因为它采用藉以确定在任意给定时间使用的最适合的多个自激时钟的一连串步骤(被实施为在现场可编程门阵列中操作的软件或固件)。
为了更充分地解释同步电路230的操作,图8提供图7的同步电路212内的时钟和控制信号的示意图260。
解码的帧开始信号262(可与图7中的244相比较)提供本地的同步时钟必须与之同步的基准信号。完全同步的理想时钟264与两个相位,即本地自激振荡器的第一时钟相位266和第二时钟相位268(可与图7的多个时钟相位246中的两个时钟相位相比较)一起被示出以供参考。输出时钟270(可与图7中的输出时钟信号248相比较)是用来控制同步的USB设备的同步的时钟信号(可与图6中的218相比较)。
帧开始解码的脉冲272构成同步窗口的开始,并且解码的脉冲274构成同步窗口的结束。理想时钟264在频率和相位上被同步成使得时钟脉冲276的前沿与解码的脉冲272对准,并且时钟脉冲278的前沿与解码的脉冲274对准。(时钟脉冲的前沿事实上可以是波形的任意可重复点,但是在本论述中为了简单起见而选择该前沿)。
自激振荡器并不在精确受控的频率和相位下操作,而是被允许频率在其整个范围上变动。
第一时钟相位266表示图7的多相位时钟237的一个相位,并且与解码的脉冲272同步280。从第一时钟相位266和理想时钟264的比较中将明白的是,自激时钟运行得比理想时钟频率慢。这由相位滞后282表示,第一时钟相位266在若干个时钟周期之后相对于理想时钟264表现出相位滞后282(在本视图中为了清楚起见而被放大)。尽管第一时钟相位266与解码的脉冲272同步,但是当接收到下一解码的脉冲274时,如时钟脉冲284所示,第一时钟相位266异相。
第二时钟脉冲268与解码的SOF 272不同步286(或同相),但是由于图7的本地自激振荡器时钟238的频率不同步,因此第二时钟相位268与解码的SOF 274同相288。
图7的时钟选择器240充当数字开关以将多个相位延迟的时钟信号246中的一个路由至图7的输出端口234。图7的时钟选择器240与接收解码的SOF脉冲同步地进行切换,从多个相位延迟的时钟信号246中选择最适合的(即最准确地对准的)一个相位延迟的时钟信号。
在图8的示例中,图7的时钟选择器电路240已在SOF脉冲272处选择第一时钟相位266,并且第一时钟相位266作为输出时钟270继续被发送,直到接收到下一解码的SOF脉冲274为止。在图7的时钟选择器电路240接收解码的SOF信号274的时刻,第二时钟相位268是多个相位延迟的时钟信号246中最准确地同相的(即时钟脉冲288)。因此,第二时钟相位268作为输出时钟270继续被发送,直到接收到下一解码的SOF脉冲为止。在接收到解码的SOF 274之前,输出时钟270的最后一个时钟周期294具有与其余输出时钟周期不同的持续时间。给定解码的SOF包的接收速率和为自激振荡器时钟合理选择的频率公差,最后一个时钟周期294的误差仅仅是一个时钟周期的很小一部分。以这种方式,每次接收到新的解码的SOF时,以数字方式对自激振荡器时钟进行相位调整。
自激振荡器的典型频率公差具有50ppm到100ppm的量级。作为典型的10MHz数据采集振荡器的50ppm的公差,对应于每秒500周期的最坏可能的频率误差。在USB高速系统中,以8kHz的速率(或用125μs的时长)接收SOF包。这意味着每125μs的SOF时长中或一个周期的1/16中发生最大500周期的时钟误差。10MHz下一个周期的十六分之一对应于6.25ns的最坏情况的相位误差。在接连的SOF时长中该量级的累积相位误差对于数据采集应用是不可接受的。然而,根据本发明第二实施例,在每个SOF时长中该量级的相位误差的数字校正能提供可接受的数据采集时钟。
以这种方式,简单的仅数字相位控制环路与廉价的自激振荡器时钟一起使用,以在某些可接受的限度内维持输出时钟频率与来自USB的重复输入时钟载波信号同步。此外,多个各自配置有相似电路的USB设备形成同步的USB。
本发明范围内的改进可容易地被本领域技术人员实现。因此应当理解,本发明不限于上面以示例方式描述的特定实施例,并且这里描述的各种实施例的组合对于本领域技术人员是容易明白的。
在前述对本发明的描述中,除了由于表达语言或必要的暗示而在上下文中另有要求的地方之外,词语“主机控制器”用来指代标准USB主机控制器、移动USB(USB-on-the-go)主机控制器、无线USB主机控制器,或任何其它形式的USB主机控制器。
在前述对本发明的描述中,除了由于表达语言或必要的暗示而在上下文中另有要求的地方之外,词语“包括”或者诸如“包含”和“含有”之类的变化形式以包括在内的意义被使用,也就是说,指定所陈述的特征的存在而不排除在本发明各种实施例中存在或添加另外的特征。
进一步,在这里对现有技术的任何引用并非旨在暗示这种现有技术形成或已形成公知常识的一部分。
Claims (32)
1.一种用于对定时基准信号加权的装置,包括:
支持中断服务例程的处理器或微控制器;
用于探测所述处理器本地的USB数据业务的电路;
用于从所述USB数据业务解码周期性数据结构的电路;
用于生成与所述周期性数据结构的解码相对应的确认信号的电路;
用于生成所述处理器的软件中断的电路,所述处理器被配置为在接收到所述确认信号时发出中断服务例程;
用于响应来自中断服务例程的命令而生成定时基准信号的电路,所述定时基准信号形成重复性同步基准信号的部分;
用于确定在发生所述软件中断时正在被执行的软件指令的电路;
用于确定所述处理器执行所述软件指令所需的指令周期数的电路,其中所述指令周期数表示对接收所述确认信号与生成所述定时基准信号之间的时段中的不确定性的度量;以及
用于根据对所述不确定性的度量对所述定时基准信号进行加权的电路。
2.根据权利要求1所述的装置,其中所述用于确定对接收所述确认信号与生成所述定时基准信号之间的时段中的不确定性的度量的电路是计算设备。
3.根据权利要求1所述的装置,其中所述用于确定接收所述确认信号与生成所述定时基准信号之间的时段中的不确定性的度量的电路是查找表。
4.根据权利要求1所述的装置,其中所述处理器或微控制器具有嵌入式USB物理接口。
5.根据权利要求1所述的装置,其中所述处理器或微控制器是现场可编程门阵列或其它形式的可编程逻辑。
6.根据权利要求5所述的装置,其中所述现场可编程门阵列或其它形式的可编程逻辑具有嵌入式USB物理接口。
7.根据权利要求1所述的装置,进一步包括:
本地时钟;以及
用于控制所述本地时钟的频率和相位的电路,其中所述定时基准信号可用于控制所述本地时钟频率和/或相位。
8.根据权利要求1所述的装置,其中所述处理器或微控制器包括所述用于探测所述处理器本地的USB数据业务的电路。
9.根据权利要求1所述的装置,其中所述处理器或微控制器包括所述用于从所述USB数据业务解码周期性数据结构的电路。
10.根据权利要求1所述的装置,其中所述处理器或微控制器包括所述用于生成所述处理器的软件中断的电路,所述处理器被配置为在接收到所述确认信号时发出中断服务例程。
11.根据权利要求1所述的装置,其中所述处理器或微控制器包括所述用于响应来自所述中断服务例程的命令而生成定时基准信号的电路。
12.根据权利要求7所述的装置,其中所述处理器或微控制器包括所述本地时钟。
13.根据权利要求1所述的装置,其中所述用于探测所述处理器本地的USB数据业务的电路,不包含在所述处理器之内。
14.根据权利要求1所述的装置,其中所述用于从所述USB数据业务解码周期性数据结构的电路,不包含在所述处理器或微控制器之内。
15.根据权利要求1所述的装置,其中所述用于生成与所述周期性数据结构的解码相对应的确认信号的电路,不包含在所述处理器之内。
16.根据权利要求1所述的装置,其中所述用于探测所述处理器本地的USB数据业务的电路在所述微控制器外部或在包含所述微控制器的USB设备外部。
17.根据权利要求1所述的装置,进一步包括混合式USB接口和微控制器,该混合式USB接口和微控制器包括所述用于探测所述处理器本地的USB数据业务的电路、所述用于从所述USB数据业务解码周期性数据构的电路和所述用于生成所述处理器的软件中断的电路。
18.根据权利要求1所述的装置,其中所述用于生成与所述周期性数据结 构的解码相对应的确认信号的电路包括单独的解码硬件。
19.一种USB设备,包含根据权利要求1所述的装置。
20.一种同步的USB,包括多个连接到公共主机的USB设备,每个USB设备包括如权利要求1所述的装置。
21.一种对定时基准信号加权的方法,包括:
针对周期性数据结构,利用处理器监控USB数据总线;
所述处理器在对所述周期性数据结构解码时生成确认信号;
所述处理器通过生成软件中断对所述确认信号进行响应;
所述处理器通过执行中断服务例程对所述软件中断进行响应;
所述中断服务例程生成定时基准信号,所述定时基准信号形成重复性同步基准信号的部分;
确定在接收所述软件中断期间正在被所述处理器处理的软件指令;
确定所述处理器执行所述软件指令所需的指令周期数,其中所述指令周期数表示对接收所述确认信号与生成所述定时基准信号之间的时段中的不确定性的度量;以及
根据所述不确定性的度量对所述定时基准信号进行加权。
22.根据权利要求21所述的方法,其中所述周期性数据结构是多种周期性数据结构中的一种,并且该方法包括:
所述处理器通过生成相应的软件中断对所述周期性数据结构中的每一种进行响应;
所述处理器通过执行相应的中断服务例程对所述软件中断进行响应;
所述中断服务例程生成相应的定时基准信号;
向所述定时基准信号中的每一个分配加权因子,其中所述加权因子是对生成所述软件中断与所述相应的定时基准信号之间的时段中的不确定性的度量;
通过将多个所述加权因子与多个所述定时基准信号进行组合而生成包括多个加权的定时基准信号的重复性同步基准信号,使得所述定时基准信号中的给定定时基准信号的贡献通过其对应的加权因子被加权。
23.根据权利要求21所述的方法,包括利用计算设备确定对生成所述软件中断与所述定时基准信号之间的时段中的不确定性的度量。
24.根据权利要求21所述的方法,包括利用查找表确定对生成所述软件中断与所述定时基准信号之间的时段中的不确定性的度量。
25.根据权利要求21所述的方法,其中所述处理器是USB微控制器。
26.根据权利要求25所述的方法,包括为了更高的精确度和稳定性,采用一种以上统计方法对多个加权定时基准信号进行处理。
27.根据权利要求26所述的方法,其中为了更高的精确度和稳定性,采用一种以上统计方法对多个加权定时基准信号进行处理包括对多个加权定时基准信号进行滤波或求平均。
28.根据权利要求21所述的方法,进一步包括:
将该定时基准信号传递至具有锁相环架构的同步时钟电路;以及
基于该定时基准信号利用该同步时钟电路在相位和频率上锁定本地时钟。
29.根据权利要求21所述的方法,其中所述处理器是具有嵌入式USB物理接口的微控制器。
30.根据权利要求29所述的方法,其中所述处理器是包含嵌入式USB物理接口的现场可编程门阵列或其它形式的可编程逻辑。
31.根据权利要求21所述的方法,其中所述周期性数据结构包括在USB规范中定义的USB包信号结构中的任一种:被发送给USB设备的命令序列、被发送给该USB设备的数据序列、OUT令牌、IN令牌、ACK令牌、NAK令牌、STALL令牌、PRE令牌、SOF令牌、SETUP令牌、DATA0令牌、DATA1令牌,或USB数据包中的预定义比特模式序列。
32.一种用于生成同步的USB的方法,包括根据权利要求28所述的方法使多个USB设备中的各USB设备的相应本地时钟同步。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US93814807P | 2007-05-15 | 2007-05-15 | |
US60/938,148 | 2007-05-15 | ||
PCT/AU2008/000663 WO2008138053A1 (en) | 2007-05-15 | 2008-05-12 | Usb based synchronization and timing system |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310487304.0A Division CN103631745A (zh) | 2007-05-15 | 2008-05-12 | 基于usb的同步和定时系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101646986A CN101646986A (zh) | 2010-02-10 |
CN101646986B true CN101646986B (zh) | 2013-10-23 |
Family
ID=40001590
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200880007208.9A Expired - Fee Related CN101646986B (zh) | 2007-05-15 | 2008-05-12 | 基于usb的同步和定时系统 |
CN201310487304.0A Pending CN103631745A (zh) | 2007-05-15 | 2008-05-12 | 基于usb的同步和定时系统 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310487304.0A Pending CN103631745A (zh) | 2007-05-15 | 2008-05-12 | 基于usb的同步和定时系统 |
Country Status (8)
Country | Link |
---|---|
US (2) | US8412975B2 (zh) |
EP (1) | EP2147361B1 (zh) |
JP (2) | JP5335772B2 (zh) |
CN (2) | CN101646986B (zh) |
AU (1) | AU2008251024B2 (zh) |
CA (1) | CA2677655A1 (zh) |
HK (1) | HK1141346A1 (zh) |
WO (1) | WO2008138053A1 (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090167943A1 (en) * | 2007-12-27 | 2009-07-02 | Vimicro Corporation | Apparatus and Method for Synchronizing Video and Audio Data |
US8352652B2 (en) * | 2009-01-07 | 2013-01-08 | Sony Computer Entertainment Inc. | Using analog signals to communicate through an A/D converter and USB interface |
US8327048B2 (en) * | 2009-01-07 | 2012-12-04 | Sony Computer Entertainment Inc. | Using USB suspend/resume to communicate information through a USB device |
JP2012527660A (ja) * | 2009-05-20 | 2012-11-08 | クロノロジック プロプライエタリー リミテッド | SuperSpeedUSBデバイスおよび非SuperSpeedUSBデバイスの同期ネットワーク |
US9255859B2 (en) * | 2010-11-15 | 2016-02-09 | Advanced Mechanical Technology, Inc. | Force platform system |
TWI512478B (zh) * | 2011-01-18 | 2015-12-11 | Asmedia Technology Inc | 匯流排主控器與相關方法 |
KR102020358B1 (ko) * | 2013-03-14 | 2019-11-05 | 삼성전자 주식회사 | 단말 및 그 단말에서 애플리케이션 동기화 방법 |
US9830298B2 (en) * | 2013-05-15 | 2017-11-28 | Qualcomm Incorporated | Media time based USB frame counter synchronization for Wi-Fi serial bus |
US8838846B1 (en) | 2013-06-27 | 2014-09-16 | Crystal Instruments Corporation | Autonomous, multi-channel USB data acquisition transducers |
CN106301644B (zh) * | 2015-05-18 | 2018-03-30 | 深圳市中兴微电子技术有限公司 | 一种语音同步的方法和装置 |
CN106292257A (zh) * | 2016-08-17 | 2017-01-04 | 合肥申目电子科技有限公司 | 一种可与系统时间同步的usb插卡型时间显示器 |
US10437763B2 (en) * | 2017-04-07 | 2019-10-08 | Nxp B.V. | Method and device for universal serial bus (USB) communication |
US20190025872A1 (en) * | 2017-07-18 | 2019-01-24 | Qualcomm Incorporated | Usb device with clock domain correlation |
CN108717398B (zh) * | 2018-04-10 | 2021-05-25 | 中国舰船研究设计中心 | 一种适用于usb接口的脉冲信号同步系统及方法 |
TWI772574B (zh) * | 2018-12-07 | 2022-08-01 | 新唐科技股份有限公司 | 通用序列匯流排裝置及其操作方法 |
KR20210121436A (ko) | 2020-03-30 | 2021-10-08 | 삼성전자주식회사 | Usb 모듈을 위한 오디오 서브 시스템의 구동 방법 및 이를 수행하는 시스템 온 칩 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1781251A (zh) * | 2003-03-25 | 2006-05-31 | 英特尔公司 | 产生时钟信号的电路和方法 |
Family Cites Families (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63238714A (ja) * | 1986-11-26 | 1988-10-04 | Hitachi Ltd | クロック供給システム |
JPS6471351A (en) * | 1987-09-11 | 1989-03-16 | Sumitomo Electric Industries | Digital phase locked loop |
US5268656A (en) * | 1992-11-05 | 1993-12-07 | At&T Bell Laboratories | Programmable clock skew adjustment circuit |
JP2624176B2 (ja) * | 1994-05-20 | 1997-06-25 | 日本電気株式会社 | 電子時計及び時刻補正方法 |
JPH07336342A (ja) * | 1994-06-13 | 1995-12-22 | Fujitsu Ltd | クロック再生回路 |
JPH08278896A (ja) * | 1995-04-06 | 1996-10-22 | Matsushita Electric Ind Co Ltd | 割込み処理装置 |
US5691660A (en) * | 1995-11-28 | 1997-11-25 | International Business Machines Corporation | Clock synchronization scheme for fractional multiplication systems |
US5943613A (en) * | 1996-11-07 | 1999-08-24 | Telefonaktiebolaget Lm Ericsson | Method and apparatus for reducing standby current in communications equipment |
US5910742A (en) * | 1997-06-16 | 1999-06-08 | Cypress Semiconductor Corp. | Circuit and method for data recovery |
US6021446A (en) * | 1997-07-11 | 2000-02-01 | Sun Microsystems, Inc. | Network device driver performing initial packet processing within high priority hardware interrupt service routine and then finishing processing within low priority software interrupt service routine |
US5974486A (en) * | 1997-08-12 | 1999-10-26 | Atmel Corporation | Universal serial bus device controller comprising a FIFO associated with a plurality of endpoints and a memory for storing an identifier of a current endpoint |
US6279058B1 (en) * | 1998-07-02 | 2001-08-21 | Advanced Micro Devices, Inc. | Master isochronous clock structure having a clock controller coupling to a CPU and two data buses |
US6378022B1 (en) * | 1999-06-17 | 2002-04-23 | Motorola, Inc. | Method and apparatus for processing interruptible, multi-cycle instructions |
US6304517B1 (en) * | 1999-06-18 | 2001-10-16 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and apparatus for real time clock frequency error correction |
US6262611B1 (en) * | 1999-06-24 | 2001-07-17 | Nec Corporation | High-speed data receiving circuit and method |
JP3536792B2 (ja) * | 2000-02-28 | 2004-06-14 | ヤマハ株式会社 | 同期制御装置および同期制御方法 |
US6725067B1 (en) * | 2000-03-24 | 2004-04-20 | International Business Machines Corporation | Method and system for restarting a reference clock of a mobile station after a sleep period with a zero mean time error |
US20020038433A1 (en) * | 2000-06-28 | 2002-03-28 | Z-World, Inc. | System and method for utilizing programmed multi-speed operation with a microprocessor to reduce power consumption |
JP3568118B2 (ja) | 2000-10-19 | 2004-09-22 | 松下電器産業株式会社 | シリアル通信用データ処理装置 |
JP3622685B2 (ja) * | 2000-10-19 | 2005-02-23 | セイコーエプソン株式会社 | サンプリングクロック生成回路、データ転送制御装置及び電子機器 |
JP2002164873A (ja) | 2000-11-24 | 2002-06-07 | Roland Corp | デジタル・オーディオ装置 |
KR20020057697A (ko) * | 2001-01-05 | 2002-07-12 | 윤종용 | 범용 직렬 버스용 클록 복원 회로 |
JP3619466B2 (ja) * | 2001-03-27 | 2005-02-09 | 松下電器産業株式会社 | 半導体装置 |
US7080274B2 (en) * | 2001-08-23 | 2006-07-18 | Xerox Corporation | System architecture and method for synchronization of real-time clocks in a document processing system |
CN101794269B (zh) * | 2002-07-17 | 2013-05-22 | 克罗诺洛吉克有限公司 | 同步多信道通用串行总线 |
KR100448707B1 (ko) * | 2002-08-20 | 2004-09-13 | 삼성전자주식회사 | 클럭 및 데이터 복원 회로 및 방법 |
US7120813B2 (en) * | 2003-01-28 | 2006-10-10 | Robert Antoine Leydier | Method and apparatus for clock synthesis using universal serial bus downstream received signals |
JP2005012813A (ja) * | 2003-06-19 | 2005-01-13 | Rakon Ltd | 低電力水晶発振器 |
JP2005157946A (ja) * | 2003-11-28 | 2005-06-16 | Ibm Japan Ltd | 同期方法、コンピュータシステム及びプログラム |
DE102004009695A1 (de) * | 2004-02-27 | 2005-09-29 | Advanced Micro Devices, Inc., Sunnyvale | Effizienter Stromsparmodus für WLAN-Kommunikationssysteme |
JP2006197564A (ja) * | 2004-12-16 | 2006-07-27 | Seiko Epson Corp | 信号選択回路およびリアルタイムクロック装置 |
JP4769452B2 (ja) * | 2004-12-20 | 2011-09-07 | 古野電気株式会社 | 測位用信号受信装置 |
US7443213B2 (en) * | 2005-01-21 | 2008-10-28 | Thomson Licensing | Staged locking of two phase locked loops |
US7421251B2 (en) * | 2005-03-31 | 2008-09-02 | Silicon Laboratories Inc. | Precise frequency generation for low duty cycle transceivers using a single crystal oscillator |
US7668891B2 (en) * | 2005-08-09 | 2010-02-23 | Agilent Technologies, Inc. | Adjustable time accumulator |
CN1955949B (zh) * | 2005-10-24 | 2010-05-26 | 瑞昱半导体股份有限公司 | 通用串行总线装置 |
CA2640556A1 (en) * | 2006-02-15 | 2007-08-23 | Fiberbyte Pty Ltd | Distributed synchronization and timing system |
TWM323062U (en) * | 2007-06-20 | 2007-12-01 | Princeton Technology Corp | Correcting apparatus and clock device using the same |
-
2008
- 2008-05-12 EP EP08747934A patent/EP2147361B1/en not_active Not-in-force
- 2008-05-12 US US12/529,112 patent/US8412975B2/en not_active Expired - Fee Related
- 2008-05-12 CN CN200880007208.9A patent/CN101646986B/zh not_active Expired - Fee Related
- 2008-05-12 JP JP2010507760A patent/JP5335772B2/ja not_active Expired - Fee Related
- 2008-05-12 CA CA002677655A patent/CA2677655A1/en not_active Abandoned
- 2008-05-12 CN CN201310487304.0A patent/CN103631745A/zh active Pending
- 2008-05-12 AU AU2008251024A patent/AU2008251024B2/en not_active Ceased
- 2008-05-12 WO PCT/AU2008/000663 patent/WO2008138053A1/en active Application Filing
-
2010
- 2010-08-02 HK HK10108122.2A patent/HK1141346A1/zh not_active IP Right Cessation
-
2013
- 2013-03-05 US US13/786,074 patent/US8943351B2/en not_active Expired - Fee Related
- 2013-07-31 JP JP2013158397A patent/JP2013242912A/ja active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1781251A (zh) * | 2003-03-25 | 2006-05-31 | 英特尔公司 | 产生时钟信号的电路和方法 |
Also Published As
Publication number | Publication date |
---|---|
AU2008251024A1 (en) | 2008-11-20 |
EP2147361B1 (en) | 2012-12-12 |
JP2010527081A (ja) | 2010-08-05 |
CA2677655A1 (en) | 2008-11-20 |
US20100058097A1 (en) | 2010-03-04 |
HK1141346A1 (zh) | 2010-11-05 |
US20130185585A1 (en) | 2013-07-18 |
JP2013242912A (ja) | 2013-12-05 |
CN101646986A (zh) | 2010-02-10 |
AU2008251024B2 (en) | 2013-01-24 |
US8412975B2 (en) | 2013-04-02 |
US8943351B2 (en) | 2015-01-27 |
EP2147361A1 (en) | 2010-01-27 |
CN103631745A (zh) | 2014-03-12 |
JP5335772B2 (ja) | 2013-11-06 |
EP2147361A4 (en) | 2011-04-06 |
WO2008138053A1 (en) | 2008-11-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101646986B (zh) | 基于usb的同步和定时系统 | |
CN1679013B (zh) | 同步多信道通用串行总线 | |
CN101872209B (zh) | 分布式同步和定时系统 | |
CN102265237A (zh) | 同步和计时方法及设备 | |
CN101103277A (zh) | 自动测试设备中具有用于同步的接口的仪器 | |
US7864906B2 (en) | System and method for clock signal synchronization | |
AU2013200979B2 (en) | Usb based synchronization and timing system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1141346 Country of ref document: HK |
|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: GR Ref document number: 1141346 Country of ref document: HK |
|
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20131023 Termination date: 20150512 |
|
EXPY | Termination of patent right or utility model |