CN105229623B - 用于主设备和异步从设备之间经由接口的通信的数据处理装置和方法 - Google Patents
用于主设备和异步从设备之间经由接口的通信的数据处理装置和方法 Download PDFInfo
- Publication number
- CN105229623B CN105229623B CN201480028720.7A CN201480028720A CN105229623B CN 105229623 B CN105229623 B CN 105229623B CN 201480028720 A CN201480028720 A CN 201480028720A CN 105229623 B CN105229623 B CN 105229623B
- Authority
- CN
- China
- Prior art keywords
- equipment
- clock
- transmission
- main
- interface
- 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.)
- Active
Links
- 238000012545 processing Methods 0.000 title claims abstract description 44
- 238000004891 communication Methods 0.000 title claims abstract description 42
- 238000000034 method Methods 0.000 title claims abstract description 28
- 230000005540 biological transmission Effects 0.000 claims abstract description 260
- 230000004044 response Effects 0.000 claims abstract description 119
- 230000009466 transformation Effects 0.000 claims abstract description 25
- 230000008859 change Effects 0.000 claims description 23
- 230000004048 modification Effects 0.000 claims description 22
- 238000012986 modification Methods 0.000 claims description 22
- 230000007704 transition Effects 0.000 claims description 17
- 230000032258 transport Effects 0.000 claims description 6
- 230000000977 initiatory effect Effects 0.000 claims description 3
- 238000009795 derivation Methods 0.000 claims description 2
- 238000006116 polymerization reaction Methods 0.000 claims 1
- 230000007246 mechanism Effects 0.000 description 28
- 230000001360 synchronised effect Effects 0.000 description 16
- 238000005070 sampling Methods 0.000 description 7
- 238000012790 confirmation Methods 0.000 description 6
- 238000001514 detection method Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 238000012549 training Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000002411 adverse Effects 0.000 description 4
- 210000001367 artery Anatomy 0.000 description 3
- 239000004744 fabric Substances 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 238000004080 punching Methods 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 230000000630 rising effect Effects 0.000 description 3
- 238000000926 separation method Methods 0.000 description 3
- 210000003462 vein Anatomy 0.000 description 3
- 101000741965 Homo sapiens Inactive tyrosine-protein kinase PRAG1 Proteins 0.000 description 2
- 102100038659 Inactive tyrosine-protein kinase PRAG1 Human genes 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000002045 lasting effect Effects 0.000 description 2
- 230000005012 migration Effects 0.000 description 2
- 238000013508 migration Methods 0.000 description 2
- 238000012805 post-processing Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000010363 phase shift Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000008844 regulatory mechanism Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
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/12—Synchronisation of different clock signals provided by a plurality of clock generators
-
- 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/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40006—Architecture of a communication node
- H04L12/40019—Details regarding a bus master
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Information Transfer Systems (AREA)
Abstract
提供了用于根据主时钟信号操作的主设备和根据与主时钟信号异步的从时钟信号操作的从设备之间的通信的数据处理装置和方法。接口提供用于主设备和从设备之间的分组的传送的通信路径,主设备发起交易,其中每次交易包括多个传送,该多个传送包括从主设备至从设备的主传送和从从设备至主设备的从传送。与主设备相关联的从时钟副本生成器生成从时钟副本,该从时钟副本控制由主设备通过接口进行分组的发送的时序以及主设备对由从设备通过接口发送的分组的接收的时序。响应于预定触发事件,通过接口从主设备向从设备发出同步请求传送,同步请求传送具有能够由从设备识别的属性而不论同步请求传送是否与从时钟信号同步。响应于检测到同步请求传送,从设备通过接口发出至少指示了从时钟信号的频率的同步响应传送,并且从时钟副本生成器根据同步响应传送来至少确定从时钟副本的频率。此外,从时钟副本生成器参考选定从传送的分组的至少一部分来确定从时钟副本的相位,分组的所述至少一部分包含第一值与不同的第二值之间的至少一次变换。通过这种方式,对从时钟副本的相位的确定与对从时钟副本的频率的确定相脱离。
Description
技术领域
本发明涉及用于主设备和异步从设备之间经由接口的通信的装置和方法。异步从设备是其时钟信号相对于主设备所使用的时钟信号异步的从设备。
背景技术
存在可用于主设备和从设备之间的通信的信号的数目受限的许多情形,并且在这样的情形中,每个多比特项的信息不得不以至少部分串行的方式进行传输。通常信息被布置为分组以用于主设备和从设备之间的传送,每个分组包括多个比特。主设备发起交易,每次交易包括多次传送,这些传送包括将分组从主设备发送至从设备的主传送以及将分组从从设备发送至主设备的从传送。
在这样的系统中,接口通常被称作串行接口,因为每个多比特项的信息是以至少部分串行的方式进行传输的。这样的串行接口通常还被称作减少引脚数接口,因为没有为待发送的多比特项的信息的每个比特提供单独的引脚。例如,如果每个信息项是32比特大小,则这样串行接口将通常具有远小于32个引脚,并且实际上在一些情形中将仅存在单个引脚,这样的接口被称作单线接口。
存在许多使用这些串行接口的情形,一个示例为主设备和从设备居留在不同芯片上的情形,特别是在接口尺寸的减小比总体性能更重要的低成本设备中。这样的串行接口还被用于支持诸如调试之类的辅助功能,其中并行接口的成本和尺寸通常是不可接受的。
在从设备的时钟信号相对于主设备的时钟信号异步的情形中,这产生了如何通过串行接口在主设备和从设备之间同步分组的传送的问题。在一些实现方式中,可以为主设备和从设备之间的时钟信号的传输提供单独的引脚。例如,提供双线调试接口是已知的,其中一条线用于主设备和从设备之间的分组的传送,而另一条线用于时钟信号的传输。
然而,对于减少设备外围的引脚数有着越来越高的要求,因而必须针对时钟信号的传输提供单独的信号线是不希望的。
存在多种已知的解决方案避免针对串行接口上的时钟信号的传输使用单独引脚的需求。一种已知技术是“源同步”技术,例如用于以太网、PCIe和SATA通信。根据此技术,发送侧(针对一些传送将为主设备,并且针对其他传送将为从设备)一直使用它自己的时钟并且以保证规则的数据边沿的方式对分组的数据进行编码(例如,通过使用曼彻斯特编码,8B/10B)。接收侧然后含有时钟恢复逻辑,该时钟恢复逻辑能够根据这些规则数据边沿重构原始时钟的副本,原始时钟的副本然后用于对分组中提供的数据进行采样。这可通过使用锁相环(PLL)电路等等来完成,而锁相环电路是较大且昂贵的并且一般需要精确的参考时钟。另一方式是对到来的数据进行过采样,但这要求接收侧上的高速时钟,该高速时钟不是在所有情形中都是可用的并且限制了接口上的最大链路速度。
另一已知方式是诸如在通用非同步接收发送(UART)接口和IR远程控制中使用的“定时”方式。根据这样的技术,比特周期具有固定和预定的宽度。数据能够以多种方式进行编码(例如,高电压可指示逻辑值一,而低电压指示逻辑值零),其中所有比特具有相同的宽度。可替换地,接口上的信号可默认为低电压电平,并且逻辑值一由预定宽度的脉冲表示,逻辑值零由不同(但也是预定的)宽度的脉冲表示。然而,因为这些类型的协议依赖于固定的时序,它们通常要求已知频率的高速时钟。它们一般也被过采样,这会限制最大链路速度。采用“定时”方式的各种示例系统包括可于http://www.intersil.com/content/dam/Intersil/documents/fn92/fn9201.pdf处得到的文档中描述的Intersil系统,由DallasSemiconductor公司研发并且在http://en.wikipedia.org/wiki/1-Wire处描述的“1-Wire”设备通信系统总线,以及在http://www.etsi.org/deliver/etsi_ts/102600_102699/102613/07.07.00_60/ts_102613v070700p.pdf处描述的单线协议(SWP)。
另一已知方式是“主同步”方式,其中所有经发送的数据被同步到主设备,其中包括由从设备发送的数据。为此,协议被设计为使得从设备被给予来自主设备的规则边沿,它可使用规则边沿来推断主时钟频率是什么。主时钟的副本然后被从设备创建并被用于对到来的数据进行采样,或者将响应数据发送回主设备。尽管创建时钟的副本的总体方式类似于上文提到的源同步系统,但是这里的关键区别是复杂度被偏置于从设备侧,从而使得主设备能够将接口当做它被同步至该主设备。然而,这样的方式要求从设备具有某一形式的PLL电路和高速参考时钟,或者限制链路速度并利用过采样技术。这样的主同步系统的示例在Microchip UNI/O说明书中被描述,该说明书可于http://wwl.microchip.com/downloads/en/DeviceDoc/2 2067H.pdf处得到。一些其他的主同步方法在US2011/170645A、US2008/151792A、和JP4326826A中进行了描述。
尽管主同步方式相比于源同步方式具有以下益处:同步分组所需的复杂度被限制于链路的一侧(即,从设备侧),但存在很多不可能在从设备内支持这样的复杂度的情形。例如,在诸如调试接口之类的实现中,从设备/调试目标内的可用资源是受限的(例如,高速参考时钟通常不可用,并且没有足够的管芯面积用于提供复杂逻辑或PLL)。
从概念上看,从同步方式(实质上是上文所述的主同步方式的相对方式)看起来是用于克服从设备内的复杂度限制的有利技术。根据这样的方式,从设备将接口当做被同步至它的时钟,并且主设备然后创建从时钟的副本,它使用该副本来对来自从设备的到来数据进行采样以及向从设备发送数据。然而,出现了以下问题:每次交易(涉及从主设备到从设备的至少一次传送,和从从设备到主设备的至少一次传送)是由主设备发起的,而由于交易是由主设备发起的,主设备需要在交易被发起时具有关于从时钟的足够信息。因而,需要提供一种使得主设备能够取得关于从时钟的信息的机制,并且此机制自身不能够要求依赖于由主设备维护的副本时钟的交易被发出,其中该副本时钟是从设备的时钟的精确表示。
寻求提供这样的从同步技术的一种方式在US 2005/0091428中进行了描述。根据此专利申请中所述的技术,在每次数据交易前,主单元向从单元发送开始信号,并且从单元响应于该开始信号向主单元发送同步字段,该同步字段是指示从单元的传送时钟的数据串(脉冲信号)。主单元然后根据由发送自从单元的同步字段指示的传送时钟来使用此样本向从单元发送命令数据。响应于命令数据,从单元然后根据由同步字段指示的传送时钟向主单元发送响应数据。该方式的一个问题是必须在每次交易前发送从时钟的样本。这样,此样本必须被保持为相对较短从而减少所述协议的开销。然而,作为保持样本相对较短的结果,这不利地影响了主单元能够创建从单元的时钟的副本的精确性,并且即使当样本被保持较短时,它仍然呈现了与每次交易相关联的开销。
因此,希望能够提供用于通过接口在主设备和异步从设备之间通信的改进机制,其使得从设备的复杂度降低,同时仍然允许在通过接口发送数据时实现相对较高的数据率。
发明内容
根据第一方面,本发明提供了一种数据处理装置,包括:被配置为根据主时钟信号进行操作的主设备;被配置为根据与主时钟信号相异步的从时钟信号进行操作的从设备;主设备和从设备之间的接口,接口提供用于主设备和从设备之间的分组的传送的通信路径,每个分组包括多个比特;主设备被配置为发起交易,每次交易包括多个传送,该多个传送包括将分组从主设备发送至从设备的主传送和将分组从从设备发送至主设备的从传送;主设备包括被配置为生成从时钟副本的从时钟副本生成器,该从时钟副本被用于控制由主设备通过接口进行分组的发送的时序,以及用于控制主设备对由从设备通过接口发送的分组的接收的时序;主设备包括控制电路,该控制电路被配置为响应于预定触发条件,使得同步请求传送通过接口从主设备被发出至从设备,同步请求传送具有能够由从设备识别的属性而不论同步请求传送是否与从时钟信号同步;从设备响应于检测到同步请求传送,通过接口发出至少指示了从时钟信号的频率的同步响应传送;从时钟副本生成器被配置为根据同步响应传送来至少确定从时钟副本的频率;并且从时钟副本生成器还被配置为参考选定从传送的分组的至少一部分来确定从时钟副本的相位,分组的至少一部分包含第一值与不同于第一值的第二值之间的至少一次变换;由此,对从时钟副本的相位的确定与对从时钟副本的频率的确定相脱离。
根据本发明,主设备包括被配置为生成从时钟副本的从时钟副本生成器,该从时钟副本被用于控制由主设备通过接口进行分组的发送的时序,以及用于控制主设备对由从设备通过接口发送的分组的接收的时序。响应于预定触发条件,主设备通过接口发出同步请求传送,该同步请求传送具有使得它可被从设备识别的属性而不论同步请求传送是否与从时钟信号同步。响应于这样的同步请求传送,从设备通过接口发出同步响应传送,并且主设备内的从时钟副本生成器根据同步响应传送来至少确定从时钟副本的频率。同时在一些实施例中,从时钟副本生成器还可被配置为根据同步响应传送确定从时钟副本的相位,额外机制被提供以允许从时钟副本生成器确定从时钟副本的相位,从而将这种相位的确定与频率的确定相脱离。具体地,从时钟副本生成器被配置为根据响应于由主设备发起的交易而发生的选定从传送的分组的至少一部分来确定从时钟副本的相位。分组的相关部分被布置为使得它包含第一值与不同于第一值的第二值之间的至少一次变换,从而确保存在从时钟副本生成器能够定位从而确定从时钟副本的相位的至少一个边沿。
由于根据本发明对于从时钟副本的相位的确定与对从时钟副本的频率的确定相脱离,这允许对从时钟副本的相位的定期更新,并且独立于被发出的任何同步请求传送。因而,触发条件能够被设置以便检测适合于重新评估从设备的时钟的频率的情形。通常,从设备的时钟频率将相对不频繁地和/或相对缓慢地变化。因此,对于发出同步请求传送的需求可能相对不那么频繁地出现。结果,与发出这样的同步请求传送相关联的开销是相对微小的,因此相关联的同步响应传送能够占用足以提供对于从时钟信号的准确指示的时间段。然而,此外,通过将对从时钟副本的相位的确定与对从时钟副本的频率的确定相脱离,对于相位的频繁更新可被检测到,允许由主设备维护的从时钟副本跟踪从时钟信号的相位的变化。
预定触发条件可采用各种形式,但在一个实施例中,预定触发条件被设置为使得:随着时间推移聚合,从时钟副本生成器比接收同步响应传送更频繁地接收选定从传送。
这样的方式确保通过向主设备提供用于生成从时钟副本的可靠机制而降低了从设备的复杂度,该从时钟副本被用于控制它通过接口进行分组的发送的时序,以及用于控制它对由从设备通过接口发送的分组的接收的时序。另外,本发明的方式减少了与维护从时钟副本相关联的开销,并相应地允许在通过接口发送数据时实现高数据速率。
由从时钟副本生成器参考的选定从传送可采用各种形式,但在一个实施例中,它们包括每次交易中的至少一次从传送。在一个具体实施例中,选定从传送可包括每次从传送。
存在多种方式来向同步请求传送提供可由从设备识别出的属性,而不论同步请求传送是否与从时钟信号同步。在一个实施例中,该属性包括对于同步请求传送在超出主传送的分组内能够允许的最大持续期的持续期间处于固定值的断言。因而,当从设备观察到固定值在超出最大可允许的持续期的持续期间的存在时,它将此信号识别为同步请求传送。另外,这样的属性将由从设备观察到而不论同步请求传送的时序如何,因而主设备不需要在发出同步请求传送时具有可靠的从时钟副本。
上述最大持续期可以用各种方式来确定,但在一个实施例中,它是参考主传送的预定最大分组大小和从时钟信号的预定最小时钟频率来确定的。通过这样的方式,能够确保:无论从设备在什么时钟频率处操作(只要处于预定最小时钟频率或者更高频率处),从设备将在超出上文提到的最大持续期的持续期内观察到固定值,因而将可靠地识别出同步请求传送的存在。
选定从传送的分组中由从时钟副本生成器参考的部分可采用各种形式。在一个实施例中,此部分包括多比特响应,并且从设备被配置为生成该多比特响应来一直包括第一值和第二值之间的变换。第一值和第二值之间的变换可以处于任一方向,并且只要一直保证在每个选定从传送的分组的该部分内存在至少一个这样的变换,则从时钟副本生成器可使用此变换的时序来更新从时钟副本的相位。
多比特响应可采用各种形式。然而,在一个实施例中,从设备被配置为将多比特响应设置为使得主设备能够确定从设备是否正确地接收主传送。主设备然后响应于检测到指示从设备对主传送的不正确接收的多比特响应而重新发送相关联的主传送,其中它的发送时序是根据被更新了如下相位的从时钟副本确定的,该相位由从时钟副本生成器根据指示不正确接收的多比特响应来确定。因而,通过确保多比特响应使得主设备能够确定从设备是否正确地接收主传送,该机制能够用于按需导致传送的重发,并且在重新发送传送时,(从多比特响应中检测到的)经更新的相位能够被用于调整从时钟副本的相位以及因此调整发出该主传送的时序。通过响应于多比特响应来调整相位,这将提升当主传送被重新发送时,从设备正确地接收主传送的概率。
通过这样的方式,当接口的负载很重时,同步开销进一步减少,因为接口上的高流量水平提供了选定从传送的多次发生,该选定从传送被从时钟副本生成器用于调整从时钟副本的相位。
存在多比特响应被配置从而向主设备标示从设备是否正确地接收主传送的多种方式。例如,在一个实施例中,多比特响应可采用多比特确认信号的形式,其中第一值和第二值之间变换的方向标识主传送是否被正确地接收。不论变换的方向如何,多比特响应内的变换的存在使得从时钟副本的相位可被调整,于是如果变换处于指示主传送未被正确地接收的方向,则该主传送能够基于经更新的从时钟副本的时序来进行重新发送。
存在从设备被配置为确定它是否正确地接收主传送并从而将此信息编码在多比特响应中的多种方式。例如,从设备可使用循环冗余校验(CRC)机制、奇偶校验机制、或者误差检测的任何其他适合形式以便确定主传送是否被正确地接收。
在一个实施例中,从设备不能够修改它的从时钟信号的频率,从而使得频率的任何变化将通常源自诸如从设备的温度变化或者被提供给从设备的电压变化之类的操作条件。然而,在替换性实施例中,从设备还包括时钟修改电路,该时钟修改电路被配置为响应于由主设备发出的修改命令,修改从时钟信号的频率。因而,在这样的实施例中,主设备可寻求变更从时钟信号的频率,这提供了用于在链路质量被察觉为良好并且因此能够容纳更高的传送速度的情形中增加在接口上发生的传送的频率的机制。因而,这样的方式通过允许链路频率适应从时钟的质量(例如使得当从时钟具有低抖动时接口上的带宽更高,但同时允许该机制在从时钟的质量较差时落回至更低链路速度)而显著地提升了灵活性。
存在主设备能够与时钟修改电路通信的多种机制。在一个实施例中,从设备还包括控制寄存器,该控制寄存器所存储的值被时钟修改电路参考来确定从时钟信号的频率,并且主设备被配置为通过在接口上发出写入交易以将更新值写入到控制寄存器中来发出修改命令。因而,当更新值被写入到控制寄存器中时,这将使得时钟修改电路对从时钟信号的频率做出任何必要的调整。
另外,在一个实施例中,从设备响应于修改命令,通过接口发出同步响应传送,该同步响应传送指示经更新的从时钟信号。因而,无论何时发出修改命令,这将导致返回指示经更新的从时钟信号的同步响应传送。因而,可以看出,在这样的实施例中,在基于前述预定触发条件的发生而发出同步请求传送之外,修改命令的使用提供了用于获得同步响应传送的额外机制。
在一个实施例中,通过修改命令被写入到控制寄存器中的更新值未被要求实际是与控制寄存器中存储的当前值不同的值。具体地,在一些实例中,仅仅作为从从设备取得同步响应传送的机制而发出修改命令是有用的。这可通过向控制寄存器中写入与当前存储在这里的值相同的值来实现,这使得从设备发出指示(经更新的)从时钟信号的同步响应传送。在此具体实例中,将不存在对从时钟信号做出的任何调整,因而同步响应传送仅仅向主设备标识了从时钟信号的当前频率的指示。
尽管上面提到的时钟频率调整机制显著地提高了灵活性(例如,通过允许接口的速度被调整以在从时钟居于较低抖动时在接口上提供更高带宽的通信),在某些情形中(例如在增加的频率导致接口上观察到的错误数量显著增加的情形中)提供用于自任何增加的频率处回溯的机制是有用的。在一个实施例中,这样的机制能够通过修改从设备如何回应同步请求传送来巧妙地引入。具体地,在一个实施例中,从设备被配置为响应于检测到同步请求传送,在通过接口发出指示该降低频率的从时钟信号的同步响应传送前降低从时钟信号的频率。
因而,在这样的实施例中,预定触发条件可被布置为包括对链路质量的某一测量,例如对接口上的误码率的测量。因此,如果误码率增加至预定程度之上(这可能例如由于从时钟信号的频率被增加到某一点处而发生,在该点处接口上传送的分组的错误数量发生显著增加),则这将导致同步请求传送的发出,并且从设备将通过降低从时钟信号的频率并且然后发出指示降低频率的从时钟信号的同步响应传送来对该同步请求传送进行回应。
存在降低频率的多种方式。例如,在一个实施例中,它能够被立即调整回最小从时钟信号频率。可替换地,频率可被分阶段地降低,从而使得同步请求传送的发出的一次或多次迭代可被用于将从时钟信号的频率降低回误码率处于可容忍范围内的程度。另外,在存在预定最小从时钟频率的实施例中,从设备将不再响应于同步请求传送将频率降低至低于预定最小频率。
同步响应传送(无论是响应于同步请求传送而发出的还是响应于修改命令而发出的)可以用多种方式来进行配置。然而,在一个实施例中,从设备被配置为生成同步响应传送来包括选定数目的从时钟周期内的一系列边沿变换,该系列中的边沿变换的数目少于从时钟周期的选定数目。从时钟副本生成器然后被配置为应用推导操作来根据同步响应传送确定从时钟副本的频率。通过这样的方式,可以降低主设备内提供的组件推导从时钟副本的复杂度。例如,虽然接口的主设备侧可以用硬件来实现(例如,通过使用现场可编程门阵列(FPGA)),还可以通过使用(在另一微控制器中运行的)软件中的过采样技术来产生低成本、低性能的主设备。通过减少同步响应传送内的边沿变换的数目(当与直接识别每个从时钟周期的替换形式的同步响应传送相比时),这使得这样的主设备更容易地锁定到从时钟。
存在提供具有减少数目的边沿变换的同步响应传送的多种方式。例如,在一个实施例中,同步响应传送包括至少两个边沿变换。例如,从第一值到第二值的第一变换可发生于第一从时钟周期上,而从第二值返回第一值的另一变换则发生于在第一从时钟周期之后预定数目的从时钟周期后的从时钟周期上。如果从时钟副本生成器知道这些边沿之间发生的从时钟周期的预定数目,则它能够经由推导操作确定从时钟副本的频率。它还可附加地在需要时确定从时钟副本的相位。
在一个实施例中,同步响应传送包括形成为开始脉冲和结束脉冲的四个边沿变换,并且从设备被配置为在开始脉冲被发出之后的从时钟信号的预定数目的时钟周期后发出结束脉冲。再者,由从时钟副本生成器执行的推导操作将通过检测开始脉冲和结束脉冲,并且根据开始脉冲和结束脉冲之间的时间以及关于将在从设备发出开始脉冲和从设备发出结束脉冲之间出现的从时钟信号的时钟周期的预定数目的知识推断出从时钟频率来以类似的方式进行。
如前所述,通过减少同步响应传送中的边沿变换的数目,这降低了主设备内根据同步响应传送检测从时钟信号的频率所需的机制的复杂度(无论该机制是硬件机制还是软件机制)。
在基于使用硬件微控制器的一个具体实施例中,这样的微控制器通常包括在它们的通用输入/输出(GPIO)接口上的时间戳记硬件以准确捕获边沿变换。当使用上文的开始脉冲和结束脉冲方法时,主设备可使用已存在的时间戳记电路记录开始脉冲何时被主设备接收并且随后记录结束脉冲何时被主设备接收。由于开始脉冲和结束脉冲之间的相对较长的间隔,主设备具有充足的时间来在所捕获的开始脉冲的时间在时间戳记电路中被结束脉冲的时间覆写之前读出该开始脉冲的时间,并且因而已存在的时间戳记电路可被用于获得开始脉冲的时间和结束脉冲的时间二者。这个相同的时间戳记电路还可被用于其他实施例中,例如上文所述的其中从第一值到第二值的第一变换发生于第一从时钟周期上而从第二值返回第一值的另一变换随后发生于在第一从时钟周期之后预定数目的从时钟周期后的从时钟周期上的实施例。
通常,由从设备根据它的从时钟信号通过接口发出的信号将被从设备中的输出焊盘、互连从设备和主设备的一个或多个线路、以及主设备上的输入焊盘延迟,这样由从时钟副本生成器检测到以便确定从时钟信号的相位的边沿变换将不是从设备的内部时钟的相位的准确表示。在一些实例中,例如其中从时钟频率相对较低并且上文提到的延迟十分小的情况下,则那些延迟的效果将可忽略不计,因此没有必要考虑那些延迟。在其他实例中,延迟是可预测的并且相当静态,这样可由从时钟副本生成器对它根据选定的从传送(或者如果同步响应传送也被用于确定从时钟信号的相位,则实际上根据该同步响应传送)确定的相位应用预定偏移。
然而,在延迟有可能具有显著效应并且变换足够大以使得不能够应用预定偏移的情况下,在一个实施例中,主设备和从设备之间的传输协议可通过包括回波特性来进行增强。具体地,根据回波特性,控制电路被配置为:响应于预定回波触发条件,使得主设备发起回波事件,其中由主设备发出的主传送包括比特序列,并且从设备被配置为返回由从设备根据从时钟信号采样到的该比特序列的副本作为从传送。因此,这为主设备提供了用于确定从设备接收它所发送的比特序列的准确度如何的机制。回波事件可被布置为各种形式。例如,它可被构建为使得比特序列被发送至从设备并且从设备立即返回该比特序列的采样版本的单次交易。可替换地,回波事件可例如通过用于将比特序列写入到从设备的寄存器中的写入交易以及随后的从该寄存器读取数据并将数据返回至主设备的读取交易而被布置为一对交易。
另外,比特序列无需是预定的、恒定的比特序列,并且在一个实施例中可针对若干不同比特序列重复回波事件,因为不同的序列将容易出现不同的错误。
在一个实施例中,一旦出现回波触发条件时,回波事件针对从时钟副本的多个候选相位值中的每个值被重复,并且从时钟副本生成器被配置为:基于哪些候选相位值使得由从设备返回的比特序列的副本不匹配从主设备发送的比特序列的指示,确定在确定用于以后交易的从时钟副本时要使用的相位指示。因而,与不然在主设备仅依靠由主设备通过接口从从设备接收的信号中的边沿变换的位置的情况下可能的相位估计相比,通过查看在由从设备返回的比特序列中产生错误的时钟相位,主设备能够取得对于从设备的内部时钟的相位的更准确估计。例如,产生错误的相位之间的中点可被确定,并且该中点与由从时钟副本生成器根据选定的从传送检测到的相位的比较能够用于识别相位偏移。
因而,在一个实施例中,相位指示包括被应用于以下相位的相位偏移,所述相位由从时钟副本生成器参考随后的交易中的选定的从传送的分组的至少一部分来确定。
虽然上述机制可被用于配置主设备和单个从设备之间接口,但是在替换性实施例中,相同的基本方法可被用于配置主设备和多个从设备之间的通信。具体地,在一个实施例中,数据处理装置还包括多个从设备,该多个从设备包括所述从设备,并且主设备可切换以经由所述接口与所述多个从设备中的任何一者通信,该接口提供主设备与多个从设备中的每个从设备之间的分离的通信路径。当主设备要从与多个从设备中的第一从设备通信切换至与多个从设备中的第二从设备通信时,控制电路被配置为使得至少当前由从时钟副本生成器使用的从时钟副本的频率被存储以在主设备切换回与该第一从设备通信时用于后续参考。通过在于第一从设备和第二从设备之间切换通信前存储至少当前由从时钟副本生成器使用的从时钟副本的频率,这为当主设备随后切换回第一从设备时的通信提供了良好的开始点。具体地,从时钟副本的频率有可能变化非常缓慢,因此所存储的频率可能提供用于在返回与第一从设备通信时使用的频率的良好近似。虽然相位可能在同时已经被显著地改变,但是对相位的更好近似可在重新进行与第一从设备的通信后第一主传送已经从主设备被发出至第一从设备之后被确定,因为如果相位不正确,则多比特响应有可能标识从设备未正确地接收主传送。然而,该多比特响应可用于确定对于相位的更好估计,允许使用该对相位的改进估计来重新尝试主传送。
在使用先前所述的回波特性的实施例中,因为相位偏移也可能变化非常缓慢(例如,由于装置的温度变换),因此当在从设备之间切换时,除了频率之外还可存储任何计算出的相位偏移,相应地所存储的相位偏移有可能提供良好初始估计以在与第一从设备的重新通信发生时使用。
虽然在一个实施例中,当主设备与多个从设备通信时,可以考虑存在主设备与那些从设备之间的单个接口,其中该接口提供主设备和每个从设备之间的分离的通信路径,可替换地这样的配置可被视为提供主设备和每个从设备之间的单独接口,但仍然可以用等同的方式使用上文所述的每当存在主设备和不同从设备之间的切换时用于存储从时钟副本的频率(以及可选地,相位偏移)的机制。
从第二方面来看,本发明提供了一种操作数据处理装置的方法,该数据处理装置包括根据主时钟信号进行操作的主设备、根据与主时钟信号相异步的从时钟信号进行操作的从设备、和主设备和从设备之间的接口,接口提供用于主设备和从设备之间的分组的传送的通信路径,每个分组包括多个比特,该方法包括:从主设备发起交易,每次交易包括多个传送,该多个传送包括将分组从主设备发送至从设备的主传送和将分组从从设备发送至主设备的从传送;利用从时钟副本生成器来生成从时钟副本,该从时钟副本被用于控制由主设备通过接口进行分组的发送的时序,以及用于控制主设备对由从设备通过接口发送的分组的接收的时序;响应于预定触发条件,通过接口从主设备向从设备发出同步请求传送,同步请求传送具有能够由从设备识别的属性而不论同步请求传送是否与从时钟信号同步;响应于由从设备检测到同步请求传送,通过接口向主设备发出至少指示了从时钟信号的频率的同步响应传送;根据同步响应传送,在从时钟副本生成器内至少确定从时钟副本的频率;以及参考选定从传送的分组的至少一部分来在从时钟副本生成器内确定从时钟副本的相位,分组的至少一部分包含第一值与不同于第一值的第二值之间的至少一次变换;由此,对从时钟副本的相位的确定与对从时钟副本的频率的确定相脱离。
从第三方面来看,本发明提供了一种数据处理装置,包括:用于根据主时钟信号操作的主装置;用于根据与主时钟信号相异步的从时钟信号进行操作的从装置;主装置和从装置之间的接口装置,接口装置用于提供用于主装置和从装置之间的分组的传送的通信路径,每个分组包括多个比特;主装置用于发起交易,每次交易包括多个传送,该多个传送包括将分组从主装置发送至从装置的主传送和将分组从从装置发送至主装置的从传送;主装置包括用于生成从时钟副本的从时钟副本生成器装置,该从时钟副本被用于控制由主装置通过接口装置进行分组的发送的时序,以及用于控制主装置对由从装置通过接口装置发送的分组的接收的时序;主装置包括控制装置,该控制装置用于响应于预定触发条件,使得同步请求传送通过接口装置从主装置被发出至从装置,同步请求传送具有能够由从装置识别的属性而不论同步请求传送是否与从时钟信号同步;从装置响应于检测到同步请求传送,通过接口装置发出至少指示了从时钟信号的频率的同步响应传送;从时钟副本生成器装置用于根据同步响应传送来至少确定从时钟副本的频率;并且从时钟副本生成器装置还用于参考选定从传送的分组的至少一部分来确定从时钟副本的相位,分组的至少一部分包含第一值与不同于第一值的第二值之间的至少一次变换;由此,对从时钟副本的相位的确定与对从时钟副本的频率的确定相脱离。
附图说明
仅通过示例的方式,将参考附图中所示出的实施例来进一步描述本发明,其中:
图1是根据一个实施例的数据处理装置的框图;
图2是根据一个实施例示出了由图1的装置采用以使得主设备能够维护对从时钟信号的频率和相位的估计的基本机制的流程图;
图3示意性地示出了在一个实施例中如何使用多比特确认信号来更新从时钟副本的相位;
图4是根据替换性实施例的数据处理装置的框图;
图5是根据一个实施例示出了当寻求改变接口上的传送的链路频率时由图4的装置执行的处理的流程图;
图6是根据一个实施例示出了当采用图4的装置时图2的处理如何被修改的流程图;
图7是根据一个实施例示出了可在响应于来自主设备的同步请求传送而自从设备返回至主设备的同步响应传送中提供的两个替换性训练序列的时序图;
图8根据一个实施例示出了主设备内的时间戳记电路如何被用于捕获训练序列;
图9是根据一个实施例示出了被执行以实现回波特性的处理的流程图;以及
图10是根据一个实施例示出了主设备如何与多个从设备相耦合的图示。
具体实施方式
图1是根据一个实施例的数据处理装置的框图。如图所示,主设备经由串行接口与从设备连接。在此具体示例中,接口是单线接口,其中线在主引脚33和从引脚34之间延伸以形成接口上用于主设备和从设备之间任一方向的分组传送的通信路径31,每个分组包括多个比特。交易是由主设备使用链路管理单元20发起的,每次交易包括多次传送,这多次传送包括将分组从主设备发送至从设备的至少一次主传送以及将分组从从设备发送至主设备的至少一次从传送。
如图所示,链路管理单元20将从主设备中的其他地方或者从外部端口接收控制信号以识别要由主设备发出的交易。针对每次交易,将规定地址(A),并且针对写入交易,还将规定待写入到该地址的数据(D)。针对读取交易,数据将通过执行读操作自从设备返回至交易所规定的地址。此外,将生成在一个方向或两个方向上的各种控制数据。
针对每次交易,链路管理单元20将与主发送/接收控制器10通信以使得用于经由多路复用器30发出至主引脚33的主传送将被构建以用于通过通信路径31到从设备的从引脚34的通信,自此该传送将经由多路复用器32被路由至从发送/接收控制器35。第一主传送通常将规定交易的地址,并且可以可选地包括控制信息的一个或多个项。此信息可被构建到由主发送/接收控制器10用于通过通信路径31以串行方式输出的分组中。
针对写入交易,分组还可标识要在地址处写入的写入数据,或者替换地,这可作为附加分组/主传送被发送。从发送/接收控制器35将从主传送中提取控制和地址信息,以及发生写入交易时的数据,并且将然后路由必要的信号到待访问的实体以便处理交易。
针对读取交易,对由地址标识的实体的访问将导致数据被返回至从发送/接收控制器35以用于作为从传送通过接口输出回主设备。具体地,此读取数据将被从发送/接收控制器35构建到至少一个分组中,并且当通信路径31可用于发送此数据时,它将通过通信路径31被返回,其中它将被主发送/接收控制器10接收,并且该读取数据然后将经由链路管理单元20返回以进行从链路管理单元通过数据路径的输出。
根据所述实施例,主设备内的组件将总的在提供主时钟信号的主时钟源50的控制下进行操作。类似地,从设备内的组件将总地在提供从时钟信号的从时钟源45的控制下被驱动,该从时钟信号与主时钟信号异步。根据所述实施例,信息在接口上的传输的时序是根据从时钟信号进行控制的,因此主设备必须构建出从时钟副本,该从时钟副本然后被用于控制主发送/接收控制器10的操作。具体地,从时钟副本将控制由控制器10通过接口发送分组的时序,并且还将控制由控制器10对由从设备通过接口发送的分组的接收的时序。
为此,主设备包括从时钟副本生成器电路15,该电路由主时钟源50产生的主时钟信号所驱动,但生成用于控制主发送/接收控制器10的操作的从时钟副本。如图所示,链路管理单元20还由来自主时钟源50的主时钟信号驱动。然而,并不要求以与从时钟副本生成器15完全相同的频率来操作链路管理单元20,并且如果需要的话,时钟分频器电路将被放置在主时钟源50和链路管理单元20之间以选择性地用比从时钟副本生成器15更慢的速度运行链路管理单元20。
一旦发生预定的触发条件,链路管理单元20将使得同步生成器25生成同步断言信号到多路复用器30以将多路复用器中的输入从控制器10切换至同步生成器25。在时,同步生成器25还将输出同步请求传送(这里也被称作同步序列),该传送通过通信路径31被发出至从设备。同步序列具有以下属性:该同步序列可由从设备识别而不论同步序列是否与从时钟信号相同步,因此从设备内的同步检测器37将检测接口上的同步序列的发送。
同步序列可用多种方式被布置为可由从设备识别而不论它的发送时序如何。在一个实施例中,如果形成通信路径31的线路的空闲状态被定义为处于逻辑低状态,并且通信协议针对由主设备发送的正常交易定义了最大交易长度,那么这定义了线路正常处于逻辑高状态的时钟周期的最大数目(例如,如果交易全部包括逻辑值一)。如果为从设备定义了最小时钟频率,那么线路可处于逻辑高状态的周期的最大数目能够被转换成线路在正常交易的主传送期间可处于逻辑一状态的最大时间量。该属性然后允许同步生成器25通过简单地以比正常交易所允许的更长的时间段将线路驱动至逻辑高状态向从设备发送同步序列。
同步检测器37然后可检测此属性,并且当线路返回至逻辑低状态时,它然后将发出控制信号到多路复用器32以使得它选择来自时钟样本生成器40的输出。此外,同步检测器37将向时钟样本生成器40发送控制信号以使得时钟样本生成器生成指示从时钟信号的同步响应传送。如将在后面参考图7所述,该同步响应传送可采用多种形式,但将提供足够的信息以使得主设备内的从时钟副本生成器15确定从时钟信号的当前频率。具体地,从时钟副本生成器15包括频率估计器55,该频率估计器55被配置为接收主引脚33和多路复用器30之间的通信。正常地,频率估计器不监控此路径上的信息,但是一旦同步生成器25发出了同步序列,则链路管理单元20通过路径22向频率估计器55发出信号以使得它监控随后从时钟样本生成器40输出的同步响应。可选地,如输入到OR门65的虚线所示,来自链路管理单元的同一信号可被用于使得从时钟副本生成器15内的相位估计器电路60监控同步响应传送以便确定从时钟的当前相位。总地来说,由频率估计器和相位估计器产生的频率和相位估计被用于生成用于控制主发送/接收控制器10的从时钟副本。
在实践中,从时钟信号的频率仅仅基于诸如从设备的操作温度、提供给从设备的电压波动等等操作条件而缓慢地变化,因此频率估计只需要被相对不频繁地被执行。例如,在一个实施例中,这样的频率估计在系统被启动时是需要的,并且在自从做出上次频率估计起经过了预定时间之后周期性地被需要。此外,如果链路质量监控器27在链路管理单元内被提供,则链路质量监控器可被用于通过对指示接口上的链路的质量的因素(例如,通过通信路径31观察到的误码率)的测量来监控该链路的质量。如果误码率增加超出预定阈值,这可指示用于生成从时钟副本的当前频率估计与从时钟信号的实际频率有显著不同,因而可被用于触发同步生成器25再次生成同步序列。
当频率可能只是相对缓慢地变化时,从时钟信号相对于主时钟源50的相位可能在短得多的时间帧内变化,并且用于从时钟副本的相位中的任何不准确性可导致主传送不被从设备正确地接收和/或主设备不正确地读取由从设备发出的从传送。根据所述实施例,此问题是通过提供用于使得从估计器60重新估计从时钟的相位的分离机制来解决的。具体地,在正常交易的处置期间,由主发送/接收控制器10所接收的选定的从传送的分组的至少一部分被用于触发从估计器60重新估计从时钟的相位。选定的从传送中用于此目的的该部分分组可依据实现方式而变化,只要保证该部分将包含第一值和第二不同值之间的至少一次变换。在一个实施例中,从设备被布置为输出具有此属性的多比特响应作为分组的至少一部分。在一个具体实施例中,多比特响应形成例如图3中所示的确认部分。如图3中所示,从传送的分组250包括确认部分260,并且可以可选地包括一些其他有效载荷信息255。应当注意,针对某些从传送,可以不存在任何其他有效载荷。例如,响应于写传送,从设备可发出仅包含确认信号的从传送。
每次当主发送/接收控制器10期望接收这样的确认信号260时,它通过路径75通知相位估计器60,此后相位估计器60通过路径70接收确认信号并识别边沿变换的位置以便更新相位估计。
通过这样的方式,对从时钟副本的相位的确定与对从时钟副本的频率的确定相脱离。这使得频繁的相位估计能够使用标准交易的从传送来做出,而频率估计仅在需要时被执行以确保可靠的通信。这意味着同步生成器仅需要相对不频繁地使用接口,因此不会不利地影响用于处理正常交易的可用带宽。另外,由于同步序列仅需要被相对不频繁地发出,因此当它被发出时,时钟样本生成器40能够生成相对较长的同步响应传送而不会不利地影响性能,并且通过发出长同步响应传送,这使得频率估计器55能够确定对从时钟的更准确频率估计。在每个这样的同步处理之间,相位估计器能够继续基于在正常交易期间接收的从传送(具体为作为那些从传送的一部分而接收的多比特确认信号)来调整相位。
通过这样的方式,从设备的复杂度能够被显著地降低,因为主设备提供了确定从时钟副本所必需的电路,而且从设备仅仅好像接口与从时钟信号相同步一样通过接口进行通信。另外,通过将频率估计与相位估计相脱离,能够在不会不利地影响接口的性能的情况下生成可靠的从时钟。
在一个实施例中,多比特确认信号260不仅被用于保证边沿(相位估计器能够根据该边沿更新从时钟的相位)的配设,并且还使用边沿变换的方向来标识是否确认从设备已经正确地接收到主传送。具体地,如图3中所示,在一个示例实施例中,从逻辑零状态到逻辑一状态的正向变换265可被用于标识主传送被确认为已经被正确地接收,而从逻辑值一到逻辑值零的负向变换270可被用于标识主传送未被正确地确认。如本领域技术人员将认识到的那样,其他机制可被用于向主设备通信从设备是否已经正确地接收到分组。如本领域技术人员将认识到的那样,从发送/接收控制器35可使用多种已知机制来确定主传送是否已经被正确地接收,例如可使用CRC机制、奇偶校验、或其他误差检测校验机制以便确定主传送是否已经被正确地接收。基于此确定,多比特确认信号260可被相应地设置。
在NACK信号被主发送/接收控制器10接收(指示先前的主传送没有被正确地接收)的情况中,主发送/接收控制器可被布置为仅重发该主传送。然而,这一次,从时钟副本将已经借助于由相位估计器60基于NACK信号的下降沿270产生的经修正的相位估计而被调整。因而,这增加了当主传送被重发时,它将被从设备正确接收的几率。
上述方式的一个关键优势在于:当接口的负载很重时,同步开销减少,因为总线上的高流量水平被用于定期地更新由主设备生成的副本时钟的相位。
图2是示出了图1的装置的基本操作以便更新从时钟的频率估计和相位估计的流程图。在步骤200,确定是否出现触发条件。如前所述,触发条件可采用多种形式,例如系统的启动、自从上次触发条件之后预定时段的逝去、误码率(BER)超出预定程度(由链路质量监控器27所监控)等等。它还可在例如系统在比预定时段更长的时段内处于空闲时发生。然而,在可替换实施例中,主发送/接收控制器10仅能够被布置为在空闲时段通过接口发出假读取传送,以使得返回的确认信号可被用于在空闲时段期间更新相位估计。
假设触发条件被检测到,则同步生成器25在步骤210被配置为通过接口发出同步序列,其中该同步序列被同步检测器37检测到并随后导致时钟样本生成器40通过接口发出同步响应传送,同步响应传送提供在步骤215处被主设备读取的从时钟样本。此后,在步骤220,频率估计器55被配置为根据从同步响应传送中提取的从时钟样本来确定从时钟副本的频率。此外,如前所述,相位估计器60还可根据从同步响应传送确定的从时钟样本来估计从时钟副本的相位。此后处理返回至步骤200。
在不存在触发条件时,处理进行至步骤205,其中确定主设备是否有待发出的交易。如果存在,则在步骤225处,该交易被执行,如前所述这涉及从主设备到从设备的至少一次主传送和自从设备返回主设备的至少一次从传送。在步骤230,每个从传送的确认部分被识别,并且在步骤235,相位估计器60然后被配置为根据确认信号中存在的至少一个边沿来确定从时钟的当前相位。步骤235处确定的相位然后在步骤240被用于更新从时钟副本的相位,此后处理返回至步骤200。
图4示出了在前文参考图1描述的替换性装置,其中从时钟频率可响应于由主设备发出的修改命令而被更改,目的是在从时钟的质量被确定为支持增加接口的速度时增加接口的速度。与图1的实施例相比不变的那些元件使用相同的标号来标识。将清楚地知道,除了链路管理单元20能够在确定改变从时钟的频率是恰当的时并为此使得主发送/接收控制器10通过接口发出修改命令之外,主设备的基本结构没有改变。
在从设备内,时钟分频器84被提供,该时钟分频器受控制寄存器82内存储的当前值控制。虽然同步检测器37被由从时钟源45输出的未修改从时钟信号所控制,来自时钟分频器84的输出被用于控制时钟样本生成器40、从发送/接收控制器35和控制寄存器82的时钟。
尽管由主设备发出以导致从时钟频率中的改变的修改命令可采用各种形式,在一个实施例中,修改命令是由主设备通过接口发起写入交易以将更新值写入到控制寄存器82中来发出的。随着每次写传送被从发送/接收控制器35接收,相关的控制、地址和数据信息被转发到解码块80,该解码块80用于对此信息进行解码以便决定什么实体正被交易访问。当地址标识出控制寄存器82时,它将使得必要的控制、地址和数据信息被发出至控制寄存器82,以使得控制寄存器中存储的当前值被更新。
一旦该值被更新,此更新值将被提供给时钟分频器84,时钟分频器84的输出然后将取决于该更新值。此外,无论控制寄存器何时被写入,写事件信号将经由OR门86从控制寄存器82发出至多路复用器32和时钟样本生成器40,使得多路复用器32选择来自时钟样本生成器40中的输出,并且使得时钟样本生成器40基于由时钟分频器84输出的新更新的时钟频率发出同步响应传送。此同步响应传送将由从时钟副本生成器15以正常方式进行处理以便更新从时钟副本的频率(以及可选的相位)。
上文所述的方法使得链路管理单元20能够决定增加从时钟的速度以便寻求增加接口的速度,并且这能够在多种情形中完成,例如当链路质量监控器27指示误码率当前较低,因而似乎能够容许操作速度的增加时。然而,需要一种在增加的频率的使用实际出现问题(例如,误码率的突然增加,阻止分组被正确地接收)时从增加的频率回溯的机制。然而,依靠发出修改命令来在控制寄存器中设置将使得时钟频率被降低的值是不足够的,因为修改命令可能不能够在当前升高的频率处被从发送/接收控制器正确地接收,相应地对控制寄存器的更新将不会发生。
为了解决此问题,在一个实施例中,无论同步生成器何时生成此后被同步检测器37检测到的同步序列,同步检测器向控制寄存器发出信号以使得该值用以下方式被更新:在同步响应传送由时钟样本生成器40发出前,降低由时钟分频器84输出的时钟频率。在一个实施例中,同步检测器可仅仅发出复位信号,该复位信号将使得控制寄存器被复位至初始值,即预定的低频率。可替换地,来自同步检测器的信号可使得控制寄存器的当前值被更新预定量,从而将时钟频率从它的当前值降低预定量。在这样的情形中,如果误码率仍然过度地高,则另一同步序列可被发出以使得从时钟频率被进一步降低,并且将在某一点处达到正确的通信能够再次经由接口发生的从时钟频率。
图5是示出了图4的装置在寻求改变接口的链路频率时的操作的流程图。在步骤300,链路管理单元20确定改变链路频率是否适当,例如参考由链路质量监控器27维护的数据。如果适当,则它在步骤305经由接口发出写入交易,以便更新在时钟分频器控制寄存器82中存储的值。在从设备内,这使得控制寄存器在步骤310被更新,并且然后在步骤315处,时钟分频器84基于当前的控制寄存器值生成经修改的从时钟。此后在步骤320,时钟样本生成器40输出提供从时钟样本的同步响应传送,其通过接口被发送以用于由主设备内的从时钟副本生成器15接收。
在步骤325,从时钟副本生成器15确定同步响应传送内包含的从时钟样本,然后在步骤330基于读取的从时钟样本至少更新从时钟副本的频率。此后,处理返回至步骤300。
图6是示出了图4的装置如何使用修改命令和同步序列的组合来修改从时钟的频率的流程图。在步骤200,确定触发条件是否已经被检测到,此触发条件是前文在描述图2时针对步骤200讨论的触发条件中任何一个。如果触发条件未被检测到,那么在步骤350,处理前进至图2的步骤205,此后如果适当的话执行图2的步骤225至240。更多的细节,读者可参考前文对于图2的描述。
如果在步骤200检测到触发条件,则在步骤355确定触发是否是高度重要的触发条件,即影响了接口用于主设备和从设备之间的正确通信的能力的触发条件。重要触发条件的示例可以是:当系统首次启动时,或者当误码率由于用于接口上通信的频率而超出指示接口上的通信的潜在故障的某一预定高程度时。在这样的高度重要的触发条件的情形中,处理前进至步骤360,其中图2的步骤210到220被执行。然而,当这些步骤是与图4的装置相关联地被执行时,那么如前所述,在由同步检测器37检测到同步序列时,控制寄存器的值被更新以便使得:在从时钟样本由时钟样本生成器40输出回至主设备前,由时钟分频器输出的时钟频率被降低。这因而使得装置能够从先前设置的用于从时钟信号的、并因而用于接口上的通信的频率导致接口上的通信故障的情形中恢复。
假设步骤200处存在触发条件,但在步骤355处此触发条件不被视为高度重要的触发条件,那么确定所需要的一切是同步响应传送以便更新频率估计,但不需要改变时钟频率。由于如先前所述,由同步生成器发出同步序列将使得时钟频率被降低,那么该机制不能够被用于这一目的。替代地,如图6的步骤365所述,链路管理单元20使得主发送/接收控制器10发出写入交易以更新时钟分频器控制寄存器82。然而,在此实例中,寄存器被更新以与当前值相同的值。这仍然触发使得时钟样本生成器40生成同步响应传送的写事件,但在此实例中,来自时钟分频器的输出未被改变,因而时钟样本生成器仅仅产生当前时钟频率的样本。由从设备返回的此从时钟样本在步骤370被从时钟副本生成器15读取,此后在步骤375至少从时钟副本的频率被更新。此后,处理返回至步骤200。
由时钟样本生成器40发出的同步响应传送能够采用多种形式,并且两个示例格式被示出在图7中。如图所示,针对第一示例格式,如果从时钟具有形式400,那么时钟样本生成器40被布置为生成第一脉冲405,并且然后在预定数目的从时钟周期逝去之后,被布置为生成另一脉冲410。从时钟副本生成器15内的频率估计器55检测这两个脉冲的存在,并且基于这两个脉冲之间已经逝去的从时钟周期的预定数目的知识,因此能够计算当前频率估计。
还如图7中所示,另一方式使得上升沿变换415发生在第一从时钟周期的上升沿,并且然后下降沿变换420发生在第一时钟周期之后的预定数目的时钟周期后的后续从时钟周期的上升沿上。再者,频率估计器55将检测变换415和变换420两者,并且能够基于那两个边沿之间已经逝去的从时钟周期的数目的知识来确定从时钟频率。由于时钟样本生成器40被要求相对不频繁地生成同步响应传送,则被提供作为同步响应传送的训练序列(training sequence)可以相对较长(即,许多从时钟周期可被包括于开始脉冲/边沿和结束脉冲/边沿之间),从而增加能够由频率估计器55确定的频率估计的准确度。
另外,通过使用诸如图7中所示的那些格式之类的训练序列,而非仅仅输出从时钟信号,这使得需要由频率估计器检测的边沿的数目显著减少,这进而使得在主设备内提供的进行频率估计的组件的成本和复杂度显著降低。例如,通过使用这样少数目的边沿,可以通过使用软件中的过采样技术对边沿进行估计来产生低成本/低性能的主设备。可替换地,低成本/低性能的微控制器能够使用通常在通用输入/输出(GPIO)接口中发现的现有时间戳记硬件来准确地捕获关于从时钟的信息而无需要求大量计算。这样的方式被示出在图8中,其中微控制器的CPU 450被耦合到控制寄存器460,该控制寄存器460可被设置为逻辑值零以便从引脚455发送逻辑值零,被设置为逻辑值一以便从引脚455输出逻辑值一,或者当主引脚455被配置为接收输入(即,来自从设备的从传送)时,可被设置为三态值。任何这样的输入还可被路由至时间戳记电路465,该电路将包括边沿时间寄存器470。考虑图7的训练序列,当第一脉冲/边沿被接收时,边沿时间寄存器470能够捕获接收此边沿的时间,之后CPU 450能够在结束脉冲/边沿被接收前从边沿时间寄存器中读取该值。当结束脉冲/边沿被接收时,边沿时间寄存器470将用接收结束脉冲/边沿的时间覆写它先前存储的时间值,并且CPU能够随后将该值从边沿时间寄存器读出,从而被提供针对开始脉冲/边沿和结束脉冲/边沿的准确时序指示。此后,CPU 450能够基于它对于发生在开始脉冲/边沿和结束脉冲/边沿之间的从时钟周期的数目的知识来推导出从时钟频率。
图9是示出了对于通信协议的进一步增强的流程图,其中回波特性被用于使得从设备向主设备发送回它自主设备采样来的比特模式的副本。这允许主设备看到被从设备的内部时钟采样的数据,该数据包括通过在错误的地方对数据进行采样所引入的任何错误。与不然仅依靠由从设备发送回的时钟的样本的相位评估可能得到的结果相比,通过查看生成错误处的时钟相位,主设备能够获得对于从设备的内部时钟的相位的更准确估计。这是由于以下事实:自从设备发送的时钟样本被从设备的输出焊盘、互连主设备和从设备的线路、以及主设备中的输入焊盘所延迟。在一些实施例中,例如其中相对低的时钟频率被用于接口上并且延迟相对较小的场合,这样的延迟不会导致任何操作问题。另外,在一些实施例中,延迟可被预先确定并且被用于提供由相位估计器60在计算从时钟副本的相位时所使用的偏移。然而,在延迟较显著和/或可随时间变化的其他实例中,图9的处理可被用于使得从时钟副本生成器15能够确定合适的偏移。
在步骤500,确定回波触发条件是否已经被检测到。该触发条件可采用各种形式,例如当系统被首次启动时,或者当BER超出预定值时,可检测到触发。作为另一示例,回波触发条件可在系统空闲的时段出现,以使得接口的可用带宽可被用于在不影响性能的情况下更新相位偏移。
如果检测到回波触发条件,则链路管理单元20使得主发送/接收控制器10在步骤505生成包含比特序列的主传送,该比特序列然后经由接口被发送至从设备。这使得从发送/接收控制器35对此比特序列进行采样,并且然后经由接口向主发送/接收控制器10返回经采样的比特序列。该处理在一些实施例中可通过单次交易来实现,但在替换性实施例中可使用一对交易,一次交易将比特序列写入到从设备的预定寄存器中,另一次交易然后自从设备的寄存器中读回该比特序列。
在任何情况下,当返回的比特序列在步骤510被主发送/接收控制器10读取时,随后在步骤515确定比特序列是否匹配。如果匹配,则在步骤520增加从时钟副本的相位,并且处理返回至步骤505。
如果在经过步骤505、510和515的第一次迭代时,比特序列不匹配,则在一个实施例中该不匹配在多次迭代中被忽略直至第一次匹配被检测到,并且处理进行到步骤520(其中从时钟副本的相位被增加)。具体地,期望捕获从比特序列匹配的情形到它们不再匹配的情形的转变。
因此,在步骤505和步骤520之间的环路的迭代期间的某一点处,将检测到比特序列不再匹配的情形,并且在此点处,处理进行至步骤525,其中导致误差的当前相位(此后被称作“相位1”)被记录。此后,在步骤530处,执行从时钟副本的相位的初次减少。此时,相位仅能被调整回在步骤505生成第一个比特序列的初始相位。可替换地,在步骤530相位可仅仅从它的导致错误的当前值被减少某一预定量。
此后,在步骤530,比特序列被生成并且被发送至从设备,之后在步骤540,返回的、从设备采样到的比特序列然后被主设备读取。在步骤545,确定比特序列是否匹配。如步骤515那样,如果比特序列在经过步骤545的第一次迭代后不匹配,则该不匹配在一些实施例中可以被忽略。
如果比特序列匹配,则从时钟副本的相位在步骤550被减少,并且处理返回至步骤535。在步骤535到550的迭代期间的某一点处,步骤545处的比特序列将不再匹配,此时处理进行至步骤555,其中导致错误的当前相位(此后被称作“相位2”)被记录。
此时,主设备然后知道相位的增加导致错误的点(相位1)和相位的减少导致错误的点(相位2)。因此,在步骤560,相位1和相位2的中点可被计算出来,这可指示从时钟信号的实际相位。此后,在步骤565,从时钟副本生成器15计算步骤560处计算到的中点值与最近由相位估计器60确定的相位之间的差值作为相位偏移。此相位偏移然后可被应用于由相位估计器60确定的任何后续相位,以便更准确地表示从设备的相位,特别是抵消由信号通过接口的通信所引入的任何时间延迟。
在到现在为止的描述中,假设主设备与单个从设备通信。如果主设备实际上被配置为使得它能够与多个从设备通信,那么主设备的上述配置能够针对主设备和一个从设备之间的每个通信路径被复制。然而,这将在某种程度上是代价较高的使用方式。作为另一替换,主设备不包括任何这样复制的组件,而是系统在每当主设备从一个从设备切换至另一从设备时被复位,使得由同步生成器发出同步序列,并且针对被切换到的从设备的从时钟的频率估计和相位估计被计算。然而,这样的方法对性能有不利影响。然而,根据图10中所示的实施例,能够采用一种相比于这样的复位方法提供提升性能的更高效方法。
具体地,如图10中所示,接口提供相应主引脚605、620、635与从设备615、630、645上提供的相关联从引脚610、625、640之间的三个通信路径607、622、637。在链路管理单元20内,存储设备600被提供以用于在主设备从与当前从设备通信切换至与不同从设备通信时保留针对当前从设备的最新频率估计(以及可选的最近的相位偏移(如果使用图9的方法))的副本。当主设备随后切换回与该(先前是当前)从设备通信时,则可从存储设备600中读回频率和相位偏移到从时钟副本生成器15来提供用于主设备和该从设备通信的起始点。由于频率和相位偏移信息通常将很缓慢地变化,所存储的频率和从设备偏移信息仍然能够提供对于频率和从设备偏移的可靠指示以便此时使用。
然而,从时钟信号的绝对相位有可能将在中间的时间中已经改变,相应地从时钟副本生成器15将不具有用于第一次传输的适合相位估计。然而,相位估计能够被任意选取,并且当主传送通过相关链路被发送至从设备时,很可能从设备将不会正确地接收此主传送,并且将发送回从传送至主设备,该从传送的多比特确认信号指明主传送未被正确地接收。然而,此多比特确认信号中的边沿变换可被用于产生对相位的修正估计,之后能够重新尝试使用更新的从时钟副本来进行主传送的传输。此时有很大可能主传送将被正确地接收。仅在主传送不管相位调整而继续不被正确接收时,才有必要发出同步序列,并且在尝试重新发送主传送之前分析同步响应传送。因而,图10的方法达到了复制电路以最大化性能与不得不在每当主设备切换至不同的从设备时进行复位(会显著地影响性能)之间的有益平衡。
尽管这里已经描述了具体实施例,但将清楚地知道本发明并不限于此,并且可在本发明的范围内做出许多修改和添加。例如,在不背离本发明的范围的情况下,可做出以下从属权利要求的特征与独立权利要求的特征的各种组合。
Claims (20)
1.一种数据处理装置,包括:
主设备,该主设备被配置为根据主时钟信号进行操作;
所述主设备和被配置为根据与所述主时钟信号相异步的从时钟信号进行操作的从设备之间的接口,所述接口提供用于所述主设备和所述从设备之间的分组的传送的通信路径,每个分组包括多个比特;
所述主设备被配置为发起交易,每次交易包括多个传送,该多个传送包括将分组从所述主设备发送至所述从设备的主传送和将分组从所述从设备发送至所述主设备的从传送;
所述主设备包括被配置为生成从时钟副本的从时钟副本生成器,该从时钟副本被用于控制由所述主设备通过所述接口进行分组的发送的时序,以及用于控制所述主设备对由所述从设备通过所述接口发送的分组的接收的时序;
所述主设备包括控制电路,该控制电路被配置为响应于预定触发条件,使得同步请求传送通过所述接口从所述主设备被发出至所述从设备,所述同步请求传送具有能够由所述从设备识别的属性而不论所述同步请求传送是否与所述从时钟信号同步;
所述从时钟副本生成器被配置为根据通过所述接口从所述从设备接收的同步响应传送来至少确定所述从时钟副本的频率,所述同步响应传送是由所述从设备响应于检测到所述同步请求传送而发出的并且至少指示了所述从时钟信号的频率;并且
所述从时钟副本生成器还被配置为参考选定从传送的分组的至少一部分来确定所述从时钟副本的相位,所述分组的至少一部分包含第一值与不同于所述第一值的第二值之间的至少一次变换;
由此,对所述从时钟副本的相位的确定与对所述从时钟副本的频率的确定相脱离。
2.如权利要求1所述的数据处理装置,其中所述预定触发条件被设置为使得:随着时间推移聚合,所述从时钟副本生成器比接收所述同步响应传送更频繁地接收所述选定从传送。
3.如权利要求1或权利要求2所述的数据处理装置,其中所述选定从传送包括每次交易中的至少一次从传送。
4.如权利要求1所述的数据处理装置,其中所述同步请求传送的能够由所述从设备识别的属性包括:所述同步请求传送在超出主传送的分组内能够允许的最大持续期的持续期间处于固定值的断言。
5.如权利要求4所述的数据处理装置,其中所述控制电路被配置为参考主传送的预定最大分组大小和所述从时钟信号的预定最小时钟频率来确定所述最大持续期。
6.如权利要求1所述的数据处理装置,其中选定从传送的分组的所述至少一部分包括多比特响应,并且来自所述从设备的所述多比特响应一直包括所述第一值和所述第二值之间的变换。
7.如权利要求6所述的数据处理装置,其中:
所述多比特响应使得所述主设备能够确定所述从设备是否正确地接收主传送;
响应于检测到指示所述从设备对所述主传送的不正确接收的所述多比特响应,所述主设备重发相关联的主传送,其中它的发送时序是根据被更新了以下相位的所述从时钟副本确定的,该相位由所述从时钟副本生成器根据指示所述不正确接收的多比特响应来确定。
8.如权利要求1所述的数据处理装置,还包括所述从设备,其中所述从设备还包括:
时钟修改电路,该时钟修改电路被配置为:响应于由所述主设备发出的修改命令,修改所述从时钟信号的频率。
9.如权利要求8所述的数据处理装置,其中:
所述从设备还包括控制寄存器,该控制寄存器所存储的值被所述时钟修改电路参考来确定所述从时钟信号的频率;并且
所述主设备被配置为通过在所述接口上发出写入交易以将更新值写入到所述控制寄存器中来发出所述修改命令。
10.如权利要求8或权利要求9所述的数据处理装置,其中所述从设备响应于所述修改命令,通过所述接口发出所述同步响应传送,该同步响应传送指示经更新的从时钟信号。
11.如权利要求8所述的数据处理装置,其中所述从设备被配置为:响应于检测到所述同步请求传送,在通过所述接口发出指示降低频率的从时钟信号的同步响应传送前降低所述从时钟信号的频率。
12.如权利要求1所述的数据处理装置,其中:
所述同步响应传送包括选定数目的从时钟周期内的一系列边沿变换,该系列中的边沿变换的数目少于从时钟周期的所述选定数目;并且
所述从时钟副本生成器被配置为应用推导操作来根据所述同步响应传送至少确定所述从时钟副本的频率。
13.如权利要求12所述的数据处理装置,其中所述同步响应传送包括至少两个边沿变换。
14.如权利要求13所述的数据处理装置,其中所述同步响应传送包括形成为开始脉冲和结束脉冲的四个边沿变换,并且所述结束脉冲是在所述开始脉冲被发出之后的所述从时钟信号的预定数目的时钟周期后被发出的。
15.如权利要求14所述的数据处理装置,其中所述主设备包括时间戳记电路,该时间戳记电路用于记录所述开始脉冲何时被所述主设备接收并且随后用于记录所述结束脉冲何时被所述主设备接收。
16.如权利要求1所述的数据处理装置,还包括所述从设备,其中所述控制电路被配置为:响应于预定回波触发条件,使得所述主设备发起回波事件,其中由所述主设备发出的主传送包括比特序列,并且所述从设备被配置为返回由所述从设备根据所述从时钟信号采样到的该比特序列的副本作为从传送。
17.如权利要求16所述的数据处理装置,其中一旦出现回波触发条件时,所述回波事件针对所述从时钟副本的多个候选相位值中的每个值被重复,并且所述从时钟副本生成器被配置为:基于对哪些候选相位值使得由所述从设备返回的所述比特序列的副本与从所述主设备发送的所述比特序列不匹配的指示,确定在确定用于以后交易的从时钟副本时要使用的相位指示。
18.如权利要求17所述的数据处理装置,其中所述相位指示包括被应用于以下相位的相位偏移,所述相位由所述从时钟副本生成器参考随后的交易中的选定从传送的分组的所述至少一部分来确定。
19.如权利要求1所述的数据处理装置,还包括:
多个从设备,所述多个从设备包括所述从设备,并且所述主设备能够切换以经由所述接口与所述多个从设备中的任何一者通信,所述接口提供所述主设备与所述多个从设备中的每个从设备之间的单独的通信路径;
当所述主设备要从与所述多个从设备中的第一从设备通信切换至与所述多个从设备中的第二从设备通信时,所述控制电路被配置为使得至少当前由所述从时钟副本生成器使用的从时钟副本的频率被存储以在所述主设备切换回与该第一从设备通信时用于后续参考。
20.一种操作数据处理装置的方法,该数据处理装置包括根据主时钟信号进行操作的主设备、和所述主设备和根据与所述主时钟信号相异步的从时钟信号进行操作的从设备之间的接口,所述接口提供用于所述主设备和所述从设备之间的分组的传送的通信路径,每个分组包括多个比特,所述方法包括:
从所述主设备发起交易,每次交易包括多个传送,该多个传送包括将分组从所述主设备发送至所述从设备的主传送和将分组从所述从设备发送至所述主设备的从传送;
利用从时钟副本生成器来生成从时钟副本,该从时钟副本被用于控制由所述主设备通过所述接口进行分组的发送的时序,以及用于控制所述主设备对由所述从设备通过所述接口发送的分组的接收的时序;
响应于预定触发条件,通过所述接口从所述主设备向所述从设备发出同步请求传送,所述同步请求传送具有能够由所述从设备识别的属性而不论所述同步请求传送是否与所述从时钟信号同步;
根据通过所述接口从所述从设备接收的同步响应传送,在所述从时钟副本生成器内至少确定所述从时钟副本的频率,所述同步响应传送是由所述从设备响应于检测到所述同步请求传送而发出的并且至少指示了所述从时钟信号的频率;以及
参考选定从传送的分组的至少一部分来在所述从时钟副本生成器内确定所述从时钟副本的相位,所述分组的至少一部分包含第一值与不同于所述第一值的第二值之间的至少一次变换;
由此,对所述从时钟副本的相位的确定与对所述从时钟副本的频率的确定相脱离。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/901,771 US9292036B2 (en) | 2013-05-24 | 2013-05-24 | Data processing apparatus and method for communicating between a master device and an asynchronous slave device via an interface |
US13/901,771 | 2013-05-24 | ||
PCT/GB2014/051362 WO2014188157A1 (en) | 2013-05-24 | 2014-05-01 | A data processing apparatus and method for communicating between a master device and an asynchronous slave device via an interface |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105229623A CN105229623A (zh) | 2016-01-06 |
CN105229623B true CN105229623B (zh) | 2018-09-14 |
Family
ID=50687511
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480028720.7A Active CN105229623B (zh) | 2013-05-24 | 2014-05-01 | 用于主设备和异步从设备之间经由接口的通信的数据处理装置和方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9292036B2 (zh) |
CN (1) | CN105229623B (zh) |
GB (1) | GB2529094B (zh) |
WO (1) | WO2014188157A1 (zh) |
Families Citing this family (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2838203A3 (en) * | 2013-08-16 | 2015-06-03 | iZettle Merchant Services AB | Dynamic decoding of communication between card reader and portable device |
FR3023951B1 (fr) * | 2014-07-15 | 2016-08-05 | Oberthur Technologies | Procede d'etablissement d'une session de communication via une interface swp |
JP6465620B2 (ja) * | 2014-10-31 | 2019-02-06 | ヤマハ発動機株式会社 | 制御システムおよび制御方法 |
AU2014415557B2 (en) * | 2014-12-31 | 2018-10-18 | Halliburton Energy Services, Inc. | Synchronizing downhole subs |
KR101675734B1 (ko) * | 2015-02-04 | 2016-11-14 | 전자부품연구원 | 무선 네트워크 시스템에서의 링크 품질 판단 방법 |
US9645963B2 (en) * | 2015-02-16 | 2017-05-09 | Nxp Usa, Inc. | Systems and methods for concurrently testing master and slave devices in a system on a chip |
US9755821B2 (en) * | 2015-04-02 | 2017-09-05 | Samsung Electronics Co., Ltd. | Device including single wire interface and data processing system including the same |
KR102251813B1 (ko) * | 2015-04-07 | 2021-05-13 | 삼성전자주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
DE102015206198A1 (de) * | 2015-04-08 | 2016-10-13 | Robert Bosch Gmbh | Verfahren und Vorrichtung zur Übertragung von Nachrichten in einem Rechnernetz |
EP3326073B1 (en) | 2015-07-20 | 2020-04-08 | Lattice Semiconductor Corporation | Low-speed bus time stamp methods and circuitry |
US10764026B2 (en) | 2015-07-20 | 2020-09-01 | Lattice Semiconductor Corporation | Acoustic gesture recognition systems and methods |
US10111189B2 (en) * | 2015-07-30 | 2018-10-23 | Cisco Technology, Inc. | Enhanced phase synchronization of a timing slave apparatus in a packet switching network |
KR102328014B1 (ko) | 2015-08-24 | 2021-11-18 | 삼성전자주식회사 | 싱글 와이어 인터페이스를 포함하는 장치와 이를 포함하는 데이터 처리 시스템 |
WO2017136474A1 (en) * | 2016-02-01 | 2017-08-10 | Qualcomm Incorporated | Unidirectional clock signaling in a high-speed serial link |
EP3253001B1 (en) * | 2016-06-02 | 2018-11-14 | Siemens Industry Software NV | Synchronized data transmission from a data acquisition system to a real time digital bus |
US10418817B2 (en) * | 2016-07-29 | 2019-09-17 | Cummins Power Generation Ip, Inc. | Synchronization of parallel gensets with source arbitration |
US10142095B2 (en) * | 2016-10-26 | 2018-11-27 | Texas Instruments Incorporated | Timing for IC chip |
CN108023723B (zh) * | 2016-11-04 | 2021-07-09 | 华为技术有限公司 | 频率同步的方法以及从时钟 |
JP6946773B2 (ja) * | 2017-06-20 | 2021-10-06 | セイコーエプソン株式会社 | リアルタイムクロックモジュール、電子機器、移動体及び情報処理システム |
JP7082311B2 (ja) * | 2017-11-08 | 2022-06-08 | 株式会社村田製作所 | データ通信装置 |
KR102450296B1 (ko) | 2017-12-26 | 2022-10-04 | 삼성전자주식회사 | 동기식 및 비동기식 혼합 방식의 디지털 인터페이스를 포함하는 장치, 이를 포함하는 디지털 처리 시스템, 및 이들에 의해 수행되는 디지털 처리 방법 |
US10643732B2 (en) * | 2018-03-22 | 2020-05-05 | Western Digital Technologies, Inc. | Determining line functionality according to line quality in non-volatile storage |
US10855527B2 (en) * | 2018-04-03 | 2020-12-01 | Infineon Technologies Ag | Bidirectional communication using edge timing in a signal |
JP6856048B2 (ja) * | 2018-04-03 | 2021-04-07 | オムロン株式会社 | 制御システムおよび制御方法 |
US10761561B2 (en) * | 2018-05-25 | 2020-09-01 | Arm Limited | Error checking for primary signal transmitted between first and second clock domains |
EP3591434B1 (en) * | 2018-07-02 | 2023-07-26 | NXP USA, Inc. | Communication unit, integrated circuits and method for clock and data synchronization |
US10848160B2 (en) | 2018-07-10 | 2020-11-24 | Aerotech, Inc. | Devices, systems, and methods for reducing jitter in control systems |
DE102019200289A1 (de) * | 2018-08-17 | 2020-02-20 | Robert Bosch Gmbh | Rahmenabschirmeinheit, Teilnehmerstation für ein serielles Bussystem und Verfahren zur Kommunikation in einem seriellen Bussystem |
US10965442B2 (en) * | 2018-10-02 | 2021-03-30 | Qualcomm Incorporated | Low-power, low-latency time-to-digital-converter-based serial link |
US11539451B2 (en) * | 2019-02-28 | 2022-12-27 | Nxp B.V. | Method and system for merging clocks from multiple precision time protocol (PTP) clock domains |
US10606794B1 (en) * | 2019-05-14 | 2020-03-31 | Infineon Technologies Ag | Clock signal monitor for slave device on a master-slave bus |
US10915485B2 (en) * | 2019-05-17 | 2021-02-09 | Nxp Usa, Inc. | Circuit for asynchronous data transfer |
DE102019207542A1 (de) | 2019-05-23 | 2020-11-26 | Robert Bosch Gmbh | Teilnehmerstation für ein serielles Bussystem und Verfahren zur Kommunikation in einem seriellen Bussystem |
EP3748512B1 (en) * | 2019-06-06 | 2023-08-02 | Infineon Technologies AG | Method for a slave device for calibrating its output timing, method for a master device for enabling a slave device to calibrate its output timing, master device and slave device |
US11070304B1 (en) * | 2020-02-25 | 2021-07-20 | Mellanox Technologies, Ltd. | Physical hardware clock chaining |
EP3940972B1 (en) * | 2020-07-16 | 2024-07-10 | Socionext Inc. | Communication systems, apparatuses and methods |
JP2022049407A (ja) * | 2020-09-16 | 2022-03-29 | キオクシア株式会社 | 情報処理システム、ストレージデバイス、およびキャリブレーション方法 |
US11601254B2 (en) * | 2020-09-18 | 2023-03-07 | Sony Semiconductor Solutions Corporation | Communication apparatus, communications system, and communication method |
CN112230093B (zh) * | 2020-11-02 | 2023-05-16 | 上海星秒光电科技有限公司 | 一种并发模式同步测量系统及其使用方法 |
TWI768690B (zh) * | 2021-01-29 | 2022-06-21 | 瑞昱半導體股份有限公司 | 無參考時脈之時脈資料回復裝置及其方法 |
EP4050492B1 (en) * | 2021-02-26 | 2024-05-01 | Renesas Electronics Germany GmbH | Timing detection and correction method for a slave device in an io-link communication and slave device of an io-link communication |
CN118192759B (zh) * | 2024-05-17 | 2024-08-02 | 山东云海国创云计算装备产业创新中心有限公司 | 时钟同步方法、装置、设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101401055A (zh) * | 2006-02-15 | 2009-04-01 | 菲博比特有限公司 | 分布式同步和定时系统 |
CN101515831A (zh) * | 2008-02-22 | 2009-08-26 | 杭州华三通信技术有限公司 | 一种时间同步传递方法、系统及装置 |
CN102868515A (zh) * | 2012-09-27 | 2013-01-09 | 烽火通信科技股份有限公司 | 分组传送网络中的系统时间同步装置及方法 |
CN102882624A (zh) * | 2012-08-10 | 2013-01-16 | 上海卫星工程研究所 | 基于pxi/pci总线的测试信号源设备间远程同步设备及方法 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04326826A (ja) | 1991-04-26 | 1992-11-16 | Kokusai Electric Co Ltd | 時分割多重無線通信のキャリア周波数およびシンボルタイミングの同期方式 |
US6574225B2 (en) * | 2000-04-07 | 2003-06-03 | Omneon Video Networks | Clock recovery in a packet-based data network |
US7043651B2 (en) * | 2001-09-18 | 2006-05-09 | Nortel Networks Limited | Technique for synchronizing clocks in a network |
WO2003032567A1 (fr) | 2001-10-02 | 2003-04-17 | Hitachi, Ltd. | Appareil de transfert de donnees en serie |
US7251199B2 (en) * | 2001-12-24 | 2007-07-31 | Agilent Technologies, Inc. | Distributed system time synchronization including a timing signal path |
US7426220B2 (en) * | 2002-01-09 | 2008-09-16 | L-3 Communications Corporation | Method and apparatus for aligning the clock signals of transceivers in a multiple access communication system utilizing programmable, multi-tap phase-locked loops |
KR100526510B1 (ko) * | 2002-09-30 | 2005-11-08 | 삼성전자주식회사 | 이동 통신시스템의 다중 안테나 신호 송수신 장치 및 방법 |
US7043655B2 (en) * | 2002-11-06 | 2006-05-09 | Sun Microsystems, Inc. | Redundant clock synthesizer |
JP4326826B2 (ja) | 2003-04-08 | 2009-09-09 | アイバイツ株式会社 | tert−ブトキシカルボニル基含有(メタ)アクリル酸エステル誘導体、その重合体、これらの製造方法ならびにこれらの利用 |
US7643595B2 (en) * | 2004-09-13 | 2010-01-05 | Nortel Networks Limited | Method and apparatus for synchronizing clock timing between network elements |
US7590210B2 (en) * | 2004-09-13 | 2009-09-15 | Nortel Networks Limited | Method and apparatus for synchronizing internal state of frequency generators on a communications network |
US7729464B2 (en) | 2006-12-22 | 2010-06-01 | Teranetics, Inc. | Aiding synchronization between master and slave transceivers |
US8467418B2 (en) * | 2008-11-10 | 2013-06-18 | Rockstar Consortium Us Lp | Differential timing transfer over synchronous ethernet using digital frequency generators and control word signaling |
JP2010128207A (ja) | 2008-11-27 | 2010-06-10 | Kyocera Mita Corp | 分散制御装置及び画像形成装置 |
CN102714590B (zh) | 2010-01-12 | 2015-03-25 | 维特赛半导体公司 | 用于在不使业务中断的情况下切换1000base-t链路中的主装置/从装置计时的方法 |
FR2967535B1 (fr) * | 2010-11-15 | 2012-11-02 | Alcatel Lucent | Procede de synchronisation d'horloges maitre et esclave d'un reseau a commutation de paquets et a liaisons agregees entre noeuds, et dispositifs de synchronisation associes |
JP5561426B2 (ja) | 2011-03-03 | 2014-07-30 | 日本電気株式会社 | 同期システム、同期方法、第一の同期装置、第二の同期装置及びコンピュータプログラム |
-
2013
- 2013-05-24 US US13/901,771 patent/US9292036B2/en active Active
-
2014
- 2014-05-01 WO PCT/GB2014/051362 patent/WO2014188157A1/en active Application Filing
- 2014-05-01 CN CN201480028720.7A patent/CN105229623B/zh active Active
- 2014-05-01 GB GB1518578.8A patent/GB2529094B/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101401055A (zh) * | 2006-02-15 | 2009-04-01 | 菲博比特有限公司 | 分布式同步和定时系统 |
CN101515831A (zh) * | 2008-02-22 | 2009-08-26 | 杭州华三通信技术有限公司 | 一种时间同步传递方法、系统及装置 |
CN102882624A (zh) * | 2012-08-10 | 2013-01-16 | 上海卫星工程研究所 | 基于pxi/pci总线的测试信号源设备间远程同步设备及方法 |
CN102868515A (zh) * | 2012-09-27 | 2013-01-09 | 烽火通信科技股份有限公司 | 分组传送网络中的系统时间同步装置及方法 |
Also Published As
Publication number | Publication date |
---|---|
GB2529094A (en) | 2016-02-10 |
US20140351359A1 (en) | 2014-11-27 |
US9292036B2 (en) | 2016-03-22 |
GB2529094B (en) | 2020-08-05 |
WO2014188157A1 (en) | 2014-11-27 |
GB201518578D0 (en) | 2015-12-02 |
CN105229623A (zh) | 2016-01-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105229623B (zh) | 用于主设备和异步从设备之间经由接口的通信的数据处理装置和方法 | |
CN104049909B (zh) | 双异步和同步存储器系统 | |
US8179787B2 (en) | Fault tolerant network utilizing bi-directional point-to-point communications links between nodes | |
CN106415293B (zh) | 用于i/o ac定时的基于占空比的定时余量调整 | |
US7864078B2 (en) | Method and device for decoding a signal | |
CN203457123U (zh) | 用于时钟布置的装置和系统 | |
JPH11505047A (ja) | ソース同期クロック型データリンク | |
TWI345880B (en) | Method and apparatus for adjustment of synchronous clock signals | |
WO2010002935A2 (en) | Tracker circuit and method for automated test equipment systems | |
TW561330B (en) | A method and system of automatic delay detection and receiver adjustment for synchronous bus interface | |
CN110580235A (zh) | 一种sas扩展器通信方法及装置 | |
JP2015136104A (ja) | シリアルリンク障害検出システムおよび方法 | |
CN103581262B (zh) | 一种主备数据同步方法、装置和系统 | |
CN107800529A (zh) | 一种网络节点的时钟频率同步方法 | |
WO2007052212A1 (en) | Data interface and method of seeking synchronization | |
JP5099122B2 (ja) | 集積回路チップ及び回路ネットワーク | |
US7913124B2 (en) | Apparatus and methods for capture of flow control errors in clock domain crossing data transfers | |
Kapschitz et al. | Formal verification of synchronizers | |
CN1798017B (zh) | 基于数据通信系统多时钟采样的方法 | |
CN111953686B (zh) | 一种应用于智能化基站的多协议自适应方法 | |
US7694176B2 (en) | Fault-tolerant computer and method of controlling same | |
US8909970B2 (en) | Information processing apparatus or information processing method which supplies a clock to an external device | |
EP1911188B1 (en) | Asynchronous data buffer | |
KR101453176B1 (ko) | 정보 처리 장치 또는 정보 처리 방법 | |
TWI751466B (zh) | 時間同步方法與時間同步系統 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |