同步多信道通用串行总线的制作方法

文档序号:7868048阅读:108来源:国知局
专利名称:同步多信道通用串行总线的制作方法
技术领域
本发明涉及一种方法和装置,在关于互相且到任意精确度同步连接到USB主机的USB设备中,它们用于同步特定但决不排他的应用的通用串行总线(USB)设备。
背景技术
USB规范意图在开放结构中便利来自不同供应商的设备的互操作。USB数据使用差分信令(即,两条线传递信息),以那两条线的信号电平之间的差别的形式编码。USB规范意图作为对PC结构的增强,跨越便携式、桌上和家庭环境。
作为例子,图1是用作说明的先前技术的USB设备10的示意图,该设备10包括数字控制传感器(transducer)12。设备10包括总线连接器14、数字I/O总线传递电路16、微处理器18和同步信道20,该同步信道用于传递包括触发和时钟信号的同步信息给传感器12。
设备10依靠总线连接器14连接到包含USB和同步信号的数字总线22。
USB规范隐性假定所有设备是不同的。虽然对意指的连接来自多种多样制造者的设备的环境,这是真实的,但存在其它环境(如某些普通的工业或者实验室环境),要求用于以同步方式操作相似特性的多个设备的规范。规范没有充分注意这个问题。这样的环境通常是那些进行测试、测量或者监视的环境,它可能要求设备在比规定的更精确的程度上同步。通过提供1 kHz的时钟信号给所有设备,USB规范允许有限的设备间同步。但是,很多实验室和工业环境要求在MHz频率及以上同步。
参考图2,USB使用层叠的星形拓朴24,其中集线器26为USB设备28提供连接点。USB主机控制器30包含根集线器,它是系统中所有USB端口的起源。根集线器提供USB功能设备或额外的集线器可以连接到它们的若干USB端口。
反过来,可以连接更多集线器(如USB合成设备32)到任何这些端口,然后任何这些端口通过用于更深一层的USB设备34的端口提供附加的连接点。这样,根据任何设备可以最多5层深的限制,USB允许连接最多127个设备(包括集线器)。
主机中的根集线器每1.0ms发射帧起始(SOF)信号分组给每个设备,两个SOF分组间的时间称为一帧。每个模块在不同时间接收到这个SOF分组,考虑USB拓朴固有的电延迟。该拓朴暗示在直接连接到主机控制器的设备和5层以下的设备之间,对接受相同的信号可存在显著的时间延迟(规定为最多380ns)。当需要在MHz级及以上同步设备时,这是严重的限制。
通过两种类型的USB传递、中断和同步,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扬声器对上的输出而充分同步USB-CD音频流。这样的安排的要求在kHz的范围内,并且USB为此提供理想的条件。但是,规范未解决同步100个USB扬声器对的潜在问题。
给Leydier等的美国专利No.6,343,364公开了锁定到USB通信的频率的例子,它被指向智能卡阅读器。这个专利讲授了与USB SYNC和分组ID流相比的本地的自由运行时钟;更新它的周期以匹配这个频率,产生具有1.5MHz标称频率的本地时钟。这提供了足以将智能卡信息读入主机PC的同步程度。因为这个方法被指向智能卡阅读器,所以未解决设备间同步。进而,锁定到1kHz的频率或更好的稳定性和高精度的相位控制都未公开。
给Champers等的美国专利No.6,012,115阐述USB帧起始(SOF)周期性和为定时标号。如在美国专利No.6,012,115的摘要中解释的,所公开的发明允许计算机系统通过使用从USB主机控制器发射到连接它的外围设备的帧起始脉冲,对实时外围设备内发生的预定事件的时刻进行精确的确定。
给Larky等的美国专利No.6,092,210公开了用于为数据传递而连接两个USB主机的方法,该方法是通过使用用于同步本地设备时钟到两个USB主机的数据流的USB到USB连接设备而实现的。锁相环用于同步本地时钟,并且过采样用于确保不发生数据损失。但是,这个文档涉及两个USB主机的相互同步(并且具有有限精度),不涉及多种多样的USB设备到单个USB主机的同步。
撰写USB规范时考虑了音频应用,并且给Sturges等的美国专利No.5,761,537描述了如何使用单独的时钟同步两个或更多的扬声器对,其中一对以PC中的立体声音频电路来运行,而另一对由USB控制。因为两个扬声器对都使用它们自己的时钟,它们需要被同步,所以这个文档讲授用于保持音频信号同步的一种技术,尽管可能的时钟在异步时钟间偏移。
虽然上面未打算穷举或描述这个领域的通用知识,但当前技术中存在不足是清楚的。

发明内容
因此,本发明的一个目的是通过实现这样的机制补充USB规范,该机制允许直到最大允许数目的、任何数目的USB设备以同步和触发的方式操作,而不在主机上放置大的计算负担。这释放主机用于其它任务,如控制、数据传递、记录日志和分析。
除了补充USB规范,本发明也具有USB的所有优势,如通过树结构操作多个设备(直到当前总数为127个设备)的能力、热交换能力、自动列举、易使用、操作系统间的交叉兼容性和可移植性(portability)。
本发明提供一种方法和装置,用于互相同步连接到USB主机的USB设备。本发明也提供一种背板,它提供公共连接点和一个或更多电源、USB和同步信号的结合给多种相似的USB设备。
特别地,在第一主要的方面,本发明提供一种方法,该方法提供同步多信道通用串行总线,涉及补充USB规范中的有线(或者等价的-可能无线-信号信道),以从外部源提供同步信息。
最好,所述同步信息包括触发信号和时钟信号。
因此,通过从外部源提供这样的信息,可以在基本上任意频率提供同步信息。
在第二主要的方面,本发明提供一种同步的多信道通用串行总线,包含电路,以观察USB通信并锁定USB设备的本地时钟信号到包含在USB数据通信中的周期性信号。
最好,所述电路适合在相位上、在频率上或在相位和频率上锁定所述本地时钟信号到所述周期性信号。
最好,所述电路可操作于译码并锁定到USB帧起始(SOF)分组令牌(或者其它周期数据结构)。
本发明还提供一种同步多信道通用串行总线的方法,包含观察USB通信;以及锁定USB设备的本地时钟信号到包含在USB数据通信中的周期性信号;其中所述锁定是关于相位、频率或相位和频率的。
在第三主要的方面,本发明提供一种同步的多信道通用串行总线,具有电路,以在USB树中的多个点观察USB通信,并且测量多个单独分组中的每个的环路时间,以得到所述树中单独USB设备的相对相位。
最好,所述电路可操作于测量与特定事务相关联的ACK分组的环路时间,由此可以控制每个设备的本地时钟的相对相位,使得可以同步所有连接的USB设备。
本发明还提供一种同步多信道通用串行总线的方法,包含在USB树中的多个点观察USB通信;测量多个单独分组的每个的环路时间;以及从所述各环路时间确定所述树中单独USB设备的相对相位;由此根据所述确定的相对相位,能调整所述各单独USB设备的任何相位偏移。
在第四主要的方面,本发明提供一种提供同步的多信道通用串行总线的方法,包含用触发信号发送USB拓朴中的所有设备。
最好,所述触发信号同步地启动或停止多个设备上的操作。
最好,通过使用SOF分组(最好,包括编码的帧号)产生所述触发信号,以在给定时间触发传感器。
最好,所述方法包括与本地振荡器同相来执行所述操作。
这是优选的,因为由于USB连接拓朴,设备间SOF分组的到达时间可能不同,此外,USB规范考虑SOF分组中相对锁相环振荡器的显著时间抖动。这可导致时钟异相周期的一部分。
本发明还提供一种同步的多信道通用串行总线,包含用于用触发信号发送USB拓朴中的所有设备的电路。
在第五主要的方面,本发明提供一种同步的多信道通用串行总线,包含电路和逻辑,以在对应于国家标准(如NIST和NATA)的频率提供同步信号给USB设备。
实际上,可以与本发明的其它方面一起使用这个方法。
在第六主要的方面,本发明提供一种同步的多信道通用串行总线,包含USB背板,用于提供任何一个或更多的USB信号、电源、插座和同步信息给可连接的设备。
所述总线也可以提供一种机械支持的结构。
也可能结合这些方面相互同步设备。时间精度、成本和易使用的要求可能对那些方法的哪个能够用于某个应用加以限制。另外,根据本发明的装置可以以不同的方式实施。例如,这样的设备可以以这样的形式构建PCB上的多个元件,或者在半导体水平,即作为单一硅(或其它半导体材料)芯片。
因此,本发明还提供一种用于锁定相同USB树内多个USB设备的每个的本地时钟到基本上相同的频率的方法,包含产生或指定特殊的信号结构用于USB数据通信中的发射;以预先确定的序列发射所述特殊的信号结构给所述USB设备;监视所述USB设备的本地USB信号用于所述特殊的信号结构;从特殊的信号结构,在所述USB设备的每个产生本地参考信号;以及在所述USB设备的每个锁定所述本地时钟信号的频率到所述本地参考信号到预先确定的程度。
最好,所述特殊的信号结构是如USB规范中定义的USB帧开始分组令牌序列。或者,所述特殊的信号结构是发送给USB设备的命令序列或发送给USB设备的数据序列。
最好,所述方法还包括为每个所述特殊的信号结构产生所述本地参考信号。
最好,所述方法还包括为基本上所有所述特殊的信号结构产生所述本地参考信号。
最好,所述本地时钟频率与所述本地参考信号频率基本上相同。
最好,锁定每个所述本地时钟信号到所述参考信号是为了产生频率,该频率具有的稳定性好于主机和各USB设备间纯粹的数据传递要求的稳定性。
最好,所述方法还包括通过由长度基本上相等的电缆连接所述USB设备到共同的USB集线器,被动地同步所述USB设备到任意程度。
本发明还提供一种测量USB树内从USB主机到USB设备的信号的传播时间的方法,包含在所述USB树中指定主USB设备;产生或指定特殊的信号结构用于USB数据通信中的发射;以预定义的序列发射所述特殊的信号结构给所述USB设备;依靠所述主USB设备,为所述特殊的信号结构和为来自所述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设备间所述传播延迟的差别。
本发明还提供一种方法,用于同步通过USB树连接到共同的USB主机的多个USB设备的每个的本地时钟,使得所述各时钟基本上同相并处于基本上相同的频率,包含根据上述方法,锁定每个所述USB设备的本地时钟到基本上相同的频率;根据上述方法、指定了参考USB设备的所述USB设备的选择的一个,相对所述USB设备的所述选择的一个,确定从所述USB主机到每个所述USB设备的、信号的相对传播延迟;根据上述方法,相对所述参考USB设备的所述本地时钟,确定所述多个USB设备的每个的所述本地时钟的相对相位;确定要求的每个所述本地时钟的时间调整或相位偏置,导致跨越所述USB树的所述多个本地时钟基本上同相;从所述USB主机发射所述时间调整或相位偏置到所述USB设备;以及分别根据所述时间调整或相位偏置,在每个所述USB设备上提供所述本地时钟的相位调整。
最好,至少一些所述USB设备的本地时钟的每个相位移动希望的量,导致具有已知相对相位的本地时钟的USB设备的阵列。
另外,本发明提供一种方法,用于根据预定义的触发命令,同步地触发并因此启动或停止连接到共同的USB主机的多个USB设备上的一个或更多的过程,包含根据上述方法,同步每个所述USB设备的本地时钟;在USB数据通信中发射预定的触发请求信号和预定的触发命令信号,分别表示触发请求和所述触发命令;为所述触发请求信号和所述触发命令信号,监视每个所述USB设备的本地的所述USB数据通信;依靠所述USB主机,发送启动触发请求信号到每个所述USB设备,准备所述USB设备,以在基本上相同的时间执行所述触发请求;配置所述USB设备,以通过接收到所述触发信号时,准备自己执行所述过程,来响应所述启动触发请求信号;配置所述USB主机,以发送所述触发命令给所述多个所述USB设备的每个;依靠所述USB设备对所述触发命令译码;配置所述USB设备在基本上相同的时间执行所述过程;以及由此,从所述USB主机接收到所述触发命令信号时,能启动或停止所述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设备的本地USB信号;由此,在每个所述USB设备,所述本地时钟信号的所述频率能锁定到所述本地参考信号到希望的程度。
本发明还提供一种装置,用于测量USB树内从USB主机到USB设备的信号传播时间,包含主USB设备,包含所述USB树中的USB设备之一;信号产生器或根集线器,用于产生USB数据通信中的特殊的信号结构,用于以预定义的序列发射所述特殊的信号结构给所述USB设备;信号监视器,用于为所述特殊的信号结构和为所述响应信号,依靠所述主USB设备监视所述USB通信;以及定时器,用于测量所述主USB设备中所述事件触发信号间的时间间隔;以及由此,能从所述时间间隔确定从所述USB主机到所述USB设备的传播时间。
进而,本发明提供一种装置,用于确定连接到共同的USB主机的多个USB设备间的电信号或数据结构的相对传播延迟,包含一种装置,用于确定每个所述USB设备和所述USB主机间各自的传播时间,如上所述;以及计算装置,用于确定参考USB设备和所述多个所述USB设备的每个之间所述传播时间的差别。
其中所述参考USB设备包含所述USB设备之一。
在一个实施例中本发明提供一种装置,用于同步通过USB树连接到共同的USB主机的多个USB设备的每个的本地时钟,使得所述时钟基本上同相并处于基本上相同的频率,该装置包含一种装置,用于锁定每个所述USB设备的所述本地时钟到基本上相同的频率,如上所述;一种装置,用于相对参考USB设备确定从所述USB主机到每个所述USB设备的信号的相对传播延迟,并且用于确定所述多个USB设备的每个的所述本地时钟相对所述参考USB设备的所述本地时钟的相对相位,如上所述,所述参考USB设备包含所述USB设备的选择的一个;以及定时器,用于确定要求的每个所述本地时钟的时间调整或者相位偏移,导致跨越所述USB树的所述多个本地时钟基本上同相;其中所述装置适合从所述USB主机发射所述时间调整或相位偏移到所述USB设备,并且分别根据所述时间调整或相位偏移,在每个所述USB设备上提供所述本地时钟的相位调整。


为了可以更清晰地探知本发明,现在将参考附图,通过例子描述各实施例,附图中图1是说明性的先前技术的USB设备的示意图;图2是先前技术的USB层叠星形拓朴的示意图;图3是根据本发明第一个实施例的同步USB电路的示意图,其中同步信息传递到设备;图4是根据本发明第二个实施例的同步USB电路的示意图,其中观察USB通信,并且在相位和频率上锁定USB设备的本地时钟信号到USB SOF分组;图5A是根据本发明第三个实施例的同步USB电路的示意图,其中测量与特定事务相关联的ACK分组的环路(roundtrip)时间,以控制多个设备的每个的本地时钟的相对相位;图5B是用于设备62的图5A的事务的时序图;
图5C是用于设备60的图5A的事务的时序图;图6是根据本发明第四个实施例的同步USB电路的示意图,其中提供电路用于侦查USB以及在相位和频率上锁定来自本地时钟的信号到USB的SOF分组;图7是根据本发明实施例的组合的同步USB电路的一个例子的简化示意图,其中提供同步而没有额外的连接器配线(wiring);图8是结合多个本发明实施例的复杂的同步USB电路的示意图,其中提供同步而没有额外的连接器配线;图9是根据本发明实施例的组合的同步USB电路的另一个例子的简化示意图,其中使用额外的连接器配线得到同步;图10是根据本发明实施例的组合的同步USB电路的进一步的例子的简化示意图,该例子可与图8的例子相比但更复杂;以及图11是图10的例子的变种的示意图。
具体实施例方式
根据本发明的第一个实施例,同步信息传递到设备。图3是包括数字控制传感器12的USB设备10’(类似于图1的USB设备10,从图1可以采用相同标号引用相同特征)的示意图。但是,根据这个实施例,增加线的数目,以包括用于从外部源提供包含触发和时钟信号的同步信息的信道。
从外部源24提供同步信息(包括触发和时钟信号)到总线连接器14,使得由同步信道20提供给传感器12的同步信息包括外部提供的同步信息。
这样设备10’未包含产生关于其它设备的同步信息的逻辑或者电路。
USB通信基于在称为帧的规则的1ms间隔期间传递数据。在每帧的开始,向除了低速设备的所有设备发射帧的开始(SOF)分组(由此以1kHz重复),并因此表示低分辨率的同步信号,用于连接到主机的一个共同USB端口的每个设备。这样,根据本发明的第二个实施例,观察USB通信,并且在相位和频率上锁定USB设备的本地时钟信号到USB SOF分组。
如本领域中熟知的,USB规范定义几个称为令牌(TOKEN)的独特的数据结构,它们用作分组头,用于总线的控制和管理功能。SOF分组具有唯一的数字签名,并因此可以从其它数据被区分出来,它也可以在总线上出现。根据这个实施例,逻辑电路或匹配滤波器可以用于对比特序列解码,SOF令牌由该序列表示,并且SOF令牌为出现在USB上的每个SOF分组发送时序信号。因为SOF以特定的频率出现并且对所有出现的设备是共同的,它和解码的时序信号可以由所有设备使用作为共同的频率参考。为了产生不同于SOF的1kHz的频率,可以利用锁相环(PLL)在频率和相位上锁定本地振荡器到SOF和时序信号。这具有增加的优势PLL可以用于平均SOF到达时间的抖动。因此,本地振荡器的频率不需要不同于SOF分组的频率。
参考图4,这个第二个实施例的方法使用电路通过USB40观察通信,并对所有SOF分组解码。在频率和相位上锁定来自本地控制的振荡器时钟42的信号φ到USB 1kHz SOF分组。这首先要求来自时钟42的信号φ由时钟分频器46向下分频到SOF分组的频率(例如,从1MHz的输出频率向下到1kHz);当SOF分组到达时(额定在1kHz),匹配滤波器48发送时钟同步信号50,它传递到相位检测器52。相位检测器52通过滤波器56耦合到受控振荡器时钟42。
随后提供本地时钟信号φ给USB设备上的传感器电路,从而确保在频率上锁定所有连接到根集线器的设备。
根据这个实施例,可能产生稳定在任意高频率的时钟信号,如具有低如几纳秒的随机抖动的几十兆赫兹的时钟频率。这样,这个实施例允许确保连接到给定USB的每个设备的本地时钟在频率上同步。但是,它未考虑那些时钟的同步性。每个时钟将在频率和相位上锁定到SOF令牌的接收,但是由于随机连接的USB星形拓朴的信号传播时间的差别,每个设备将在基本上不同的时间接收SOF分组。多个USB设备中每个的本地时钟的同步(使得所有时钟同相)要求知道从主机到每个设备的所述信号传播时间。
根据第三个实施例,多个USB设备中每个的本地时钟同步到任意程度。在USB树中的不同连接点监视USB通信,并且测量特定的USB通信事务的传播时间,以得到并补偿不同设备的本地时钟由于电子和电缆延迟的相位差别。根据这个实施例,为每个出现的设备测量特定数据分组从主机到设备和来自设备的关联USB确认ACK令牌的环路传播时间。这个信息用于控制每个设备的本地时钟的相对相位,因此互相同步所有连接的USB设备到任意程度。
USB规范允许两个设备的本地时间的差别最大为380ns。但是,如果两个独立的设备要精确地记录相同事件的真实时间,就必须确定它们的本地时间到有效地任意精确的程度。
图5A示意性地描述两个设备60和62,它们连接在USB链64中的不同点上。USB链64也包含USB主机控制器66和多重7端口USB集线器68。设备60和62两个都将接收相同周期的SOF信号,它们已经独立地在频率和相位上锁定它们的本地时钟到该SOF信号。但是,由于由USB主机控制器66和设备62之间更大数目的USB集线器68引入的拓朴时间延迟,设备62将晚于设备60接收到SOF分组。这个时间差别需要从时间延迟测量计算并被修正。
如由图5A上的符号“A”所示,设备60的特定连接点并不重要,如果它被定位,使得它可以为自己和设备62解码总线通信(即,设备60必须能够为要求同步的所有设备对总线通信解码)。因此用于设备60的连接点最好基本上靠近USB树或链的顶部,如由图5A中所示。
为测量所述环路传播时间,主机和设备62之间实施USB事务。设备60在树中点“A”监视USB通信,并且检测事务的下游和响应数据分组的通过。然后在图5A的点“A”,设备60可能确定从主机到设备62的下游信号(事务的开始)和从设备62到主机的响应信号(事务的结束)的检测之间的时间周期。在优选实施例中,从设备62到主机的响应信号是事务确认ACK分组的ACK令牌。
可以以类似的方式确定相对点“A”、主机和设备60之间用于USB事务的环路传播时间。然后,相对相同的点“A”,由用于两个设备的环路传播时间的差别的基本上一半给出连接拓朴,该连接拓朴基于设备60和62中频率锁定的时钟之间的时间相位移动。因此,设备62中频率锁定的时钟相对设备60中频率锁定的时钟相位延迟了这个数量。为了在频率和相位上同步设备60和62中的时钟,对应于所述数量的相位偏移必须引入到时钟之一。这多数通过引入相位延迟到设备60的本地时钟信号中实现。
图5B和5C进一步说明这个方法。图5B是用于设备62的图5A的事务的时序图,而图5C是用于设备60的图5A的事务的时序图。用于每个设备60、62的USB事务在TStart x开始,以及如由TACK x所示,当设备返回ACK分组时结束。(其中,在两种情况下,X表示设备号)。这些事务不在相同的时间开始,但是已经相对Tstart x将图对准,以显示事务的相对持续时间。在图5A中,设备60距离检测点“A”近得多,所以环路传播时间比设备62的短得多。传播时间的差别如ΔT所示。因此两个频率锁定时钟之间的相位偏移由1/2ΔT给出。
技术人员将会清楚存在确定要求的相位修正的其它方法。技术人员也可以理解其它USB数据协议可以用于产生本地时钟频率并确定环路或单程传播时间,包括但不限于任何USB控制和管理分组令牌(即SOF、IN、OUT、ACK、NAK、PRE、STALL、DATA0、DATA1)、任何USB数据分组中比特模式的可编程序列、任何用户定义的数据结构或任何USB规范内定义的信号协议。
上面描述了用于在相位和频率上锁定USB设备的本地振荡器以完成多种USB设备的同步操作的技术。这个本地振荡器产生连续的调制。也可以要求设备在时间上同步操作的特定序列。因此设备将需要所谓的共同触发信号来完成这个。这个触发信号可以结合频率锁定的本地振荡器一起使用,以完成多个独立的USB设备的完整的同步操作。
根据第四个实施例,通过使用包括编码的帧号的SOF分组,产生用于给定设备上的传感器的同步触发信号,以在给定的时间触发传感器。但是,由于USB连接拓朴,设备之间SOF分组的到达时间可能不同,另外,USB规范考虑SOF分组频率相对锁相环本地振荡器的显著时间抖动。这可能导致时钟异相一部分周期。但是,触发信号应该与本地振荡器同相。
为消除抖动的问题,SOF信号锁存到本地振荡器。锁存器登记SOF触发请求的到达,但是只在本地振荡器接下来改变状态时产生触发信号。不同设备间触发时间的误差是设备的本地时钟频率和控制环的性质的函数,并且可以使之任意小。
这样,图6是电路70的示意图,电路70用于监视USB72并且在相位和频率上锁定来自本地时钟74的时钟信号Φ(输出频率向下变换到1kHz-如果必要-通过时钟分频器76)到USB72的1kHz SOF分组。为了频率和相位锁定所述本地时钟74(如图4中),第一匹配滤波器80在SOF分组的到达时发送时钟同步信号82,而第二匹配滤波器84在具有特定帧号的SOF分组到达时发送触发请求信号86。类似于图4的电路,这个电路也包括滤波器90和相位检测器92。触发请求信号锁存到本地稳定的本地时钟信号Φ,以产生同步的触发信号“Trig”。
根据第五个实施例,在可追溯到国家标准如NIST或NATA的频率,使用电路和逻辑提供同步信号给USB设备。例如,这个通过用可追溯到国家标准的频率参考代替包括根集线器的任何集线器中的时钟和/或晶体完成。
根据第六个实施例,提供USB背板来供应-可连接的设备-电源、USB信号、连接器和同步信息。
在它的多数复杂状态中,USB背板包含附加在USB上的电源,成为自己提供动力的设备;提供多重端口的集线器电路;多个与那些端口相关联的连接器,提供多个热插拔设备连接点以及满足USB规范的USB信号。它也可以包含逻辑元件,如微处理器、可编程阵列以及数字和模拟电子线路,以调整并提供同步信息,包括频率、相位,以及使用上述各种技术以及电源开关序列的触发。除了一个或多个集线器,背板也可以包含连接到由集线器提供的USB端口之一的设备。或者,它可以是提供集线器和同步功能的复合设备。以这种方式,同步信息是空中(on-the-fly)可测量和可编程的。各种例子可以以不同方式利用上述实施例。但是,这些可以分为用同步终端补充USB连接器终端的设备和那些不这样做的设备。另外,第二到第五个实施例的逻辑元件可以位于USB设备上、背板上(如果背板解决方案是希望的)、所述两者上或根本不存在。
依赖于应用的要求,将会知道一个人可能想或不想实现背板解决方案。应用也确定是否需要提供额外的电源给设备。
例1没有用于同步的额外的连接器配线根据本发明,不依赖于补充的同步信号的系统的优势是各设备不依赖这个信息,以同步方式工作,因此可以在任何单独的主机上使用普通集线器。这样的系统可以可以扩展到要求非常精确的同步的设备。因此,这样的系统的例子在图7中总显示为96,具有上游USB端口98和多个背板集线器设备100、102(在这个例子中,每个是背板104上的7端口USB集线器),它们可以可选地提供额外的电源给多个设备106。每个设备106可以包含本地时钟,该时钟根据上述第二个实施例锁定频率和相位。背板104和集线器100、102具有这样的能力依靠设备108和上面在第三个实施例的环境中描述的技术,记录设备106(根据USB规范每个具有随机的电缆长度)之间相位差别的时间。进而,每个设备106包含相移产生器用于本地时钟,它根据上面在第三个实施例的环境中描述的技术操作。
例2包含多个同步USB设备的复杂系统在图8中总显示为110。上游端口111从主机接收USB通信。系统110包括多个背板112、113、114,每个背板具备两个背板集线器设备115。每个背板集线器设备115包含7端口USB集线器并且可能可选地提供额外的电源给多个设备116。每个设备116可能包含根据上述第二个实施例锁定频率和相位的本地时钟。进而,第一个或主背板112还具有额外的电路或逻辑元件117(如在图7中),并且具有这样的能力依靠元件117和上面在第三个实施例的环境中描述的技术,记录设备116(每个具有不同的连接拓朴)之间相位差别的时间。此外,每个设备116包含相移产生器,用于使用上述第三个实施例中描述的技术对本地时钟移动相位。可能存在额外的设备和/或集线器和/或背板连接到下游端口118,直到USB规范中定义的最大数目的127个设备。
另外,由上游根集线器提供的频率可以由频率参考依据第五个实施例产生,并且任何触发信号可以使用第四个实施例的方法产生。
例3用于同步的额外的连接器配线根据上述实施例,这样的方法最简单的例子通过连接所有设备到共同的同步信号实现,该连接通过包含USB和同步信息的专有连接器或通过USB连接器,以及单独的同步链路实现。同步信息独立于USB通信并且可以因此是任意频率,而没有任何大的困难。用于同步信息的媒体可以是任何无线、电或光纤装置。图9在120示意性地描述这样的电路的实际例子。实际上电路120包括一对电路,每个电路可与图7的电路可比,使得24个USB设备122通过7端口USB集线器124连接;这些可以通过上游USB端口126依次连接到PC。USB连接拓朴对同步信号没有影响,该同步信号由频率为Φ的外部时钟128单独提供给各设备。因此,设备122通过一个连接器(具有除USB要求之外的连接)或标准USB连接器加一个或更多额外的连接器连接到USB和同步信号。
在这个例子更复杂的形式中,使用包含额外的逻辑元件的背板,逻辑元件为所有连接的设备提供频率和相位上精确的控制和锁定。在这样的安排中,根据上述第二个和第三个实施例的方法,背板逻辑元件观察USB通信并产生它们自己的本地时钟。然后这个背板产生的时钟通过一个或更多上述背板连接器分配给每个连接的USB设备。
因此,参考图10,它以130一般地描述这样的安排,每个设备132通过额外的连接器端136(电、无线、光纤)连接到电路134,这补充了USB规范。作为例子,电路可以位于连接各种模块的背板138上。这个背板138也包含一个或更多的7端口USB集线器140。电路134在USB上游端口142监视USB用于帧信号的开始,并且锁定它的内部时钟的频率和相位到这个信号(如按照第二个实施例)。电路134也可以任意延迟进来的时钟信号,以解决由于USB拓朴的延迟(比较第三个实施例)。然后使内部时钟通过额外的连接器端对每个设备132可用。以这种方式,所有设备132接收与其同步的共同的时钟信号。
应该注意,在前面描述的图中,绘制同步电路独立于集线器。但是,在另一个变形中,在图11的150显示,一个集线器是复合设备152(连接到USB上游端口154),其包含扩展端口156和同步电路158(它根据实施例2并使用在实施例3中描述的技术产生本地时钟信号,以提供本地时钟的相移,来提供与其它设备的同步),它释放第二个集线器162的一端口160(当与上面讨论的各例子相比时)使得-在图11中所示的简单配置中-可以连接多达13个设备164。
还应该注意,USB规范未限制每个集线器的端口数为7。因此在图10中,可能存在一个集线器140,它维护例如12个端口。
本领域技术人员可以容易地实现本发明的精神和范围内的修改。因此要理解本发明不限于通过上文的例子描述的各特定实施例。为本说明书,应该理解词“包含”意味着“包括但不限于”,而词“包含”具有相应的意思。
此外,在这里任何对先前技术的参考并不打算暗示这样的先前技术形成或曾经形成公知常识的一部分。
权利要求
1.一种提供同步的多信道通用串行总线的方法,包含补充USB规范中的各信号信道,以从外部源提供同步信息。
2.根据权利要求1所述的方法,其中所述同步信息包括触发信号和时钟信号。
3.一种同步的多信道通用串行总线,包含电路,以观察USB通信并锁定USB设备的本地时钟信号到包含在USB数据通信中的周期性信号。
4.根据权利要求3所述的通用串行总线,其中所述电路适合在相位上、在频率上或在相位和频率上锁定所述本地时钟信号到所述周期性信号。
5.根据权利要求3所述的通用串行总线,其中可操作所述电路解码和锁定到周期性数据结构。
6.根据权利要求5所述的通用串行总线,其中可操作所述电路解码和锁定到USB帧开始分组令牌。
7.一种同步多信道通用串行总线的方法,包含观察USB通信;以及锁定USB设备的本地时钟信号到包含在USB数据通信中的周期性信号;其中所述锁定是关于相位、频率或相位和频率的。
8.一种同步的多信道通用串行总线,具有电路,以在USB树中的多个点观察USB通信,并且测量多个单独分组中的每个的环路时间,以得到所述树中单独USB设备的相对相位。
9.根据权利要求8所述的通用串行总线,其中可操作所述电路测量与特定事务相关联的ACK分组的环路时间,由此能控制每个设备的本地时钟的相对相位,使得能同步所有连接的设备。
10.一种同步多信道通用串行总线的方法,包含在USB树中的多个点观察USB通信;测量多个单独分组的每个的环路时间;以及从所述各环路时间确定所述树中单独USB设备的相对相位;由此根据所述确定的相对相位,能调整所述各单独USB设备的任何相位偏移。
11.一种提供同步的多信道通用串行总线的方法,包含用触发信号发送USB拓朴中的所有设备。
12.根据权利要求11所述的方法,其中所述触发信号同步地启动或停止多个设备上的操作。
13.根据权利要求11所述的方法,还包括通过使用帧开始分组产生所述触发信号,以在给定的时间触发传感器。
14.根据权利要求11所述的方法,包括与本地振荡器同相来执行所述操作。
15.一种同步的多信道通用串行总线,包含用于用触发信号发送USB拓朴中的所有设备的电路。
16.一种同步的多信道通用串行总线,包含电路和逻辑,以在对应于国家标准的频率提供同步信号给USB设备。
17.一种同步的多信道通用串行总线,包含USB背板,用于提供任何一个或更多的USB信号、电源、插座和同步信息给可连接的设备。
18.一种用于锁定相同USB树内多个USB设备的每个的本地时钟到基本上相同的频率的方法,包含产生或指定特殊的信号结构用于USB数据通信中的发射;以预先确定的序列发射所述特殊的信号结构给所述USB设备;监视所述USB设备的本地USB信号用于所述特殊的信号结构;从特殊的信号结构,在所述USB设备的每个产生本地参考信号;以及在所述USB设备的每个锁定所述本地时钟信号的频率到所述本地参考信号到预先确定的程度。
19.根据权利要求18所述的方法,其中所述特殊的信号结构是如USB规范中定义的USB帧开始分组令牌序列。
20.根据权利要求18所述的方法,其中所述特殊的信号结构是发送给USB设备的命令序列或发送给USB设备的数据序列。
21.根据权利要求18所述的方法,还包括为每个所述特殊的信号结构产生所述本地参考信号。
22.根据权利要求18所述的方法,还包括为基本上所有所述特殊的信号结构产生所述本地参考信号。
23.根据权利要求18所述的方法,其中所述本地时钟频率与所述本地参考信号频率基本上相同。
24.根据权利要求18所述的方法,其中所述锁定每个所述本地时钟信号到所述参考信号是为了产生频率,该频率具有的稳定性好于主机和各USB设备间纯粹的数据传递要求的稳定性。
25.根据权利要求18所述的方法,还包括通过由长度基本上相等的电缆连接所述USB设备到共同的USB集线器,被动地同步所述USB设备到任意程度。
26.一种测量USB树内从USB主机到USB设备的信号的传播时间的方法,包含在所述USB树中指定主USB设备;产生或指定特殊的信号结构用于USB数据通信中的发射;以预定义的序列发射所述特殊的信号结构给所述USB设备;依靠所述主USB设备,为所述特殊的信号结构和为来自所述USB设备的特殊的响应信号,监视所述USB通信;对应于译码所述特殊的信号结构,产生所述主USB设备的本地事件触发信号;对应于译码来自所述USB设备的响应信号,产生所述主USB设备的本地事件触发信号;测量所述主USB设备中所述事件触发信号间的时间间隔;以及从所述时间间隔确定从所述USB主机到所述USB设备的传播时间。
27.根据权利要求26所述的方法,其中所述主USB设备接近所述USB树的顶部而连接。
28.根据权利要求26所述的方法,还包括以所述预定义的序列发射所述特殊的信号结构给所述USB设备。
29.根据权利要求26所述的方法,其中所述特殊的信号结构包含OUT令牌、IN令牌、ACK令牌、NAK令牌、STALL令牌、PRE令牌、SOF令牌、SETUP令牌、DATA0令牌、DATA1令牌,或者USB数据分组中可编程序列比特模式。
30.根据权利要求26所述的方法,其中所述USB设备是多个USB设备之一,并且所述方法包括为每个所述USB设备确定各自的传播时间,包括统计分析多个这样的传播确定,以提高所述传播延迟测量的精度。
31.一种确定连接到共同的USB主机的多个USB设备间电信号或数据结构的相对传播延迟的方法,包含根据权利要求26的方法,确定每个所述USB设备和所述USB主机间各自的传播延迟;指定所述USB设备之一作为时间参考设备;以及确定所述时间参考设备和每个所述多个所述USB设备间所述传播延迟的差别。
32.一种方法,用于同步通过USB树连接到共同的USB主机的多个USB设备的每个的本地时钟,使得所述各时钟基本上同相并处于基本上相同的频率,包含根据权利要求18的方法,锁定每个所述USB设备的本地时钟到基本上相同的频率;根据权利要求26的方法、指定了参考USB设备的所述USB设备的选择的一个,相对所述USB设备的所述选择的一个,确定从所述USB主机到每个所述USB设备的、信号的相对传播延迟;根据权利要求31的方法,相对所述参考USB设备的所述本地时钟,确定所述多个USB设备的每个的所述本地时钟的相对相位;确定要求的每个所述本地时钟的时间调整或相位偏置,导致跨越所述USB树的所述多个本地时钟基本上同相;从所述USB主机发射所述时间调整或相位偏置到所述USB设备;以及分别根据所述时间调整或相位偏置,在每个所述USB设备上提供所述本地时钟的相位调整。
33.根据权利要求32所述的方法,其中至少一些所述USB设备的本地时钟的每个相位移动希望的量,导致具有已知相对相位的本地时钟的USB设备的阵列。
34.一种方法,用于根据预定义的触发命令,同步地触发并因此启动或停止连接到共同的USB主机的多个USB设备上的一个或更多的过程,包含根据权利要求32所述的方法,同步每个所述USB设备的本地时钟;在USB数据通信中发射预定的触发请求信号和预定的触发命令信号,分别表示触发请求和所述触发命令;为所述触发请求信号和所述触发命令信号,监视每个所述USB设备的本地的所述USB数据通信;依靠所述USB主机,发送启动触发请求信号到每个所述USB设备,准备所述USB设备,以在基本上相同的时间执行所述触发请求;配置所述USB设备,以通过接收到所述触发信号时,准备自己执行所述过程,来响应所述启动触发请求信号;配置所述USB主机,以发送所述触发命令给所述多个所述USB设备的每个;依靠所述USB设备对所述触发命令译码;配置所述USB设备在基本上相同的时间执行所述过程;以及由此,从所述USB主机接收到所述触发命令信号时,能启动或停止所述USB设备内一个或更多的过程。
35.根据权利要求34所述的方法,其中所述触发请求信号包含USB规范中定义的任何USB分组信号结构、发送到USB设备的命令序列或发送到USB设备的数据序列。
36.根据权利要求34所述的方法,包括以预定的序列发射所述触发请求信号和所述触发命令信号。
37.根据权利要求34所述的方法,其中所述触发命令信号包含USB规范中定义的任何USB分组信号结构、发送到USB设备的命令序列或发送到USB设备的数据序列。
38.根据权利要求34所述的方法,其中所述本地USB解码设备是微控制器、微处理器、域可编程门阵列或任何其它能够对所述USB内的数据结构解码的元件。
39.根据权利要求34所述的方法,其中所述触发请求信号包含OUT令牌、IN令牌、ACK令牌、NAK令牌、STALL令牌、PRE令牌、SOF令牌、SETUP令牌、DATA0令牌、DATA1令牌,或者USB数据分组中可编程序列比特模式。
40.根据权利要求34所述的方法,其中所述启动触发请求信号包含OUT令牌、IN令牌、ACK令牌、NAK令牌、STALL令牌、PRE令牌、SOF令牌、SETUP令牌、DATA0令牌、DATA1令牌,或者USB数据分组中可编程序列比特模式。
41.根据权利要求34所述的方法,其中使用USB规范内定义的信号协议,将所述触发命令编码为所述USB通信。
42.根据权利要求18所述的方法,其中每个所述USB设备从外部源接收时钟信号。
43.根据权利要求42所述的方法,其中通过额外的电或光连接器,或者通过无线装置接收所述时钟信号。
44.一种装置,用于锁定相同USB树内的多个USB设备的每个的本地时钟到基本上相同的频率,包含信号产生器,用于产生USB数据通信中特殊的信号结构,用于以预定义的序列发射所述特殊的信号结构给所述USB设备,并用于从所述特殊的信号结构在每个所述USB设备产生本地参考信号;以及信号监视器,用于为所述特殊的信号结构监视所述USB设备的本地USB信号;由此,在每个所述USB设备,所述本地时钟信号的所述频率能锁定到所述本地参考信号到希望的程度。
45.一种装置,用于测量USB树内从USB主机到USB设备的信号传播时间,包含主USB设备,包含所述USB树中的USB设备之一;信号产生器或根集线器,用于产生USB数据通信中的特殊的信号结构,用于以预定义的序列发射所述特殊的信号结构给所述USB设备;信号监视器,用于为所述特殊的信号结构和为所述响应信号,依靠所述主USB设备监视所述USB通信;以及定时器,用于测量所述主USB设备中所述事件触发信号间的时间间隔;以及由此,能从所述时间间隔确定从所述USB主机到所述USB设备的传播时间。
46.一种装置,用于确定连接到共同的USB主机的多个USB设备间的电信号或数据结构的相对传播延迟,包含一种装置,用于确定每个所述USB设备和所述USB主机间各自的传播时间,如权利要求45中所述;以及计算装置,用于确定参考USB设备和所述多个所述USB设备的每个之间所述传播时间的差别。其中所述参考USB设备包含所述USB设备之一。
47.一种装置,用于同步通过USB树连接到共同的USB主机的多个USB设备的每个的本地时钟,使得所述时钟基本上同相并处于基本上相同的频率,该装置包含一种装置,用于锁定每个所述USB设备的所述本地时钟到基本上相同的频率,如权利要求44中所述;一种装置,用于相对参考USB设备确定从所述USB主机到每个所述USB设备的信号的相对传播延迟,并且用于确定所述多个USB设备的每个的所述本地时钟相对所述参考USB设备的所述本地时钟的相对相位,如权利要求46中所述,所述参考USB设备包含所述USB设备的选择的一个;以及定时器,用于确定要求的每个所述本地时钟的时间调整或者相位偏移,导致跨越所述USB树的所述多个本地时钟基本上同相;其中所述装置适合从所述USB主机发射所述时间调整或相位偏移到所述USB设备,并且分别根据所述时间调整或相位偏移,在每个所述USB设备上提供所述本地时钟的相位调整。
48.一种装置,用于在共同的USB扩展集线器内的任何连接点,提供多个USB设备的同步操作,用于可操作于执行权利要求1到43的任何一个的方法。
49.一种装置,用于在共同的USB扩展集线器内的任何连接点,提供一个或更多USB设备的实时操作,用于可操作于执行权利要求1到43的任何一个的方法。
50.一种装置,用于在共同的USB扩展集线器内的任何连接点,使用一个或更多USB设备,提供实时自动控制和数据获取功能,用于可操作于执行权利要求1到43的任何一个的方法。
全文摘要
本发明提供一种方法和装置,用于提供同步的多信道通用串行总线,该方法在一方面包含补充USB规范中的信号信道,以从外部源(24)提供同步信息,而在另一方面包含观察USB通信并锁定USB设备(10)的本地时钟信号到包含在USB数据通信中的周期性信号,其中锁定是关于相位和/或频率的。
文档编号H04L7/00GK1679013SQ03821012
公开日2005年10月5日 申请日期2003年7月17日 优先权日2002年7月17日
发明者亚当·M·韦戈尔德, 帕特里克·克洛夫科恩, 彼得·G·福斯特, 克莱夫·A·戈德史密斯 申请人:菲博比特有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1