本发明涉及通信技术领域,尤其涉及一种接口时序校准方法及装置。
背景技术:
现有芯片接口随着芯片制造偏差的影响较大,芯片接口的数据与时钟时序之间容易出现较大偏差,芯片普遍采用固定的时序参数,有效窗口余量相对较小,从而造成产品良率较差的问题。
技术实现要素:
针对现有芯片接口窗口余量小的问题,现提供一种旨在可根据不同芯片的选择最佳的时序参数的接口时序校准方法及装置。
一种接口时序校准方法,应用在耦合于应用层与物理层的接口中,所述物理层采用环回模式,包括下述步骤:
调整所述应用层接收时钟信号的步进,所述应用层向所述物理层发送数据包,所述应用层接收所述物理层发送的数据包,依据所述应用层接收的数据包判断所述时钟信号的有效性;
获取所述时钟信号的时钟相位有效范围,根据所述有效范围获取接收目标时钟的相位。
优选的,调整所述应用层接收时钟信号的步进,所述应用层向所述物理层发送数据包,所述应用层接收所述物理层发送的数据包,依据所述应用层接收的数据包判断所述时钟信号的有效性的步骤,包括:
在预设周期范围内以预设步进调整所述应用层接收时钟信号;
所述应用层发送数据包至所述物理层,所述物理层通过环回的方式将接收到的所述数据包发送至所述应用层;
所述应用层对接收到的所述数据包进行校验,对校验通过的所述数据包对应的应用层的发送时钟进行标记;
重复调整所述应用层接收时钟信号,直至完成所述预设周期范围内所有步进的调整。
优选的,所述应用层对接收到的所述数据包进行校验,对校验通过的所述数据包对应的应用层的发送时钟进行标记的步骤,包括:
所述应用层将接收到的所述数据包与相应的发送数据包进行比对,若数据包相同,则校验通过,对接收到的数据包对应的应用层的发送时钟进行标记。
优选的,所述应用层对接收到的所述数据包进行校验,对校验通过的所述数据包对应的应用层的发送时钟进行标记的步骤,包括:
所述应用层采用循环冗余校验码对接收到的所述数据包进行校验,若校验通过,则对接收到的数据包对应的应用层的发送时钟进行标记。
优选的,获取所述时钟信号的时钟相位有效范围,根据所述有效范围获取接收目标时钟的相位的步骤,包括:
根据标记的所有所述发送时钟生成时钟相位的有效范围;
将所述有效范围的中间相位作为所述接收目标时钟的相位。
本发明还提供一种接口时序校准装置,应用在耦合于应用层与物理层的接口中,所述物理层采用环回模式,包括:
控制单元,用于调整所述应用层接收时钟信号的步进,所述应用层向所述物理层发送数据包,所述应用层接收所述物理层发送的数据包,依据所述应用层接收的数据包判断所述时钟信号的有效性;
处理单元,用于获取所述时钟信号的时钟相位有效范围,根据所述有效范围获取接收目标时钟的相位。
优选的,所述控制单元包括:
调整模块,用于在预设周期范围内以预设步进调整所述应用层接收时钟信号;
发送模块,用于发送数据包至所述物理层,所述物理层通过环回的方式将接收到的所述数据包输出;
接收模块,用于对接收所述物理层发送的数据包;
校验模块,用于对接收到的所述数据包进行校验,对校验通过的所述数据包对应的应用层的发送时钟进行标记。
优选的,所述校验模块用于将接收到的所述数据包与相应的发送数据包进行比对,若数据包相同,则校验通过,对接收到的数据包对应的应用层的发送时钟进行标记。
优选的,所述校验模块用于采用循环冗余校验码对接收到的所述数据包进行校验,若校验通过,则对接收到的数据包对应的应用层的发送时钟进行标记。
优选的,所述处理单元用于根据标记的所有所述发送时钟生成时钟相位的有效范围,将所述有效范围的中间相位作为所述接收目标时钟的相位。
上述技术方案的有益效果:
本技术方案中,接口时序校准方法应用在耦合于应用层与物理层的接口中,通过调整应用层接收时钟信号的步进,应用层将数据包发送至物理层,并获取物理层环回的数据包,以便于依据应用层接收的数据包判断时钟信号的有效性;根据时钟信号的时钟相位有效范围获取接收目标时钟的相位,从而实现根据不同芯片选择最佳的时钟时序参数,以使接口的有效窗口余量最大化。
附图说明
图1为本发明所述的接口时序校准方法的一种实施例的方法流程图;
图2为本发明调整应用层接收时钟信号的步进获取时钟信号的有效性的一种实施例的方法流程图;
图3为本发明所述的接口时序校准装置的一种实施例的模块图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
下面结合附图和具体实施例对本发明作进一步说明,但不作为本发明的限定。
如图1所示,本实施例提供了一种接口时序校准方法,应用在耦合于应用层与物理层(physicallayer,简称phy)的接口中,所述物理层采用环回模式,包括下述步骤:
s1.调整所述应用层接收时钟信号的步进,所述应用层向所述物理层发送数据包,所述应用层接收所述物理层发送的数据包,依据所述应用层接收的数据包判断所述时钟信号的有效性;
需要说明的是:应用层为芯片的媒体访问控制层(mediaaccesscontrol,简称mac)。本实施例中的接口为rgmii(reducedgigabitmediaindependentinterface)是简化的吉比特媒体独立接口。
参考图2所示,具体地,步骤s1可包括:
s11.在预设周期范围内以预设步进调整所述应用层接收时钟信号;
s12.所述应用层发送数据包至所述物理层,所述物理层通过环回的方式将接收到的所述数据包发送至所述应用层;
在本步骤中,物理层环回有两种信号环回方式,一种是在物理层的rgmii接口处做环回,另外一种是通过环回网线实现,两种方式环回方式都需要配置物理层的寄存器实现。应用层发送数据包为长度较长的数据包(例如:1514byte)以保证正确,防止窗口错判,保证发送时间与通信准确性之间的平衡。
s13.所述应用层对接收到的所述数据包进行校验,对校验通过的所述数据包对应的应用层的发送时钟进行标记;
进一步地,在步骤s13中所述应用层可将接收到的所述数据包与相应的发送数据包进行比对,若数据包相同,则校验通过,对接收到的数据包对应的应用层的发送时钟进行标记。
进一步地,在步骤s13中所述应用层可采用循环冗余校验码对接收到的所述数据包进行校验,若校验通过,则对接收到的数据包对应的应用层的发送时钟进行标记。
s14.判断是否完成对所述预设周期范围内所有步进的调整,若是,执行步骤s2;若否,执行步骤s11。
作为举例而非限定,在实际应用中以芯片的时钟信号内部有15个步进(step),每个步进延迟为0.2ns为例,提供的可调节范围为0~3ns,物理层的接口的时钟信号延迟可通过芯片内部的寄存器设置反向,相当于增加了4ns的延迟(时钟周期为8ns),另外物理层内部时钟有2ns的固定延迟。因此在进行步进调节时可以将接收时钟信号延迟分为4个阶段范围,具体如下:
第一阶段:0~3ns;
第二阶段:2ns~5ns,在外物理层内部时钟延迟2ns的基础上调节应用层发送时钟步进;
第三阶段:4ns~7ns,将芯片内部的寄存器设置反向后,调节应用层发送时钟步进;
第四阶段:6ns~9ns,在外物理层内部时钟延迟2ns的基础上,且将芯片内部的寄存器设置反向后,调节应用层发送时钟步进。
上述四段为以0.2ns为一个步进调整发送时钟的时序,调整范围覆盖了一个时钟周期,在实际应用时,分别在每一阶段逐个步进进行调整接收时钟信号的时序,并由应用层发送数据包至物理层,物理层通过环回的方式将接收到的数据包反馈至应用层;应用层对接收到的数据包进行校验,对校验通过的数据包对应的应用层的发送时钟进行标记,逐个步进进行调节,获取每一步进对应的应用层的发送时钟进行标记,直至完成所有阶段的调节。
s2.获取所述时钟信号的时钟相位有效范围,根据所述有效范围获取接收目标时钟的相位。
具体地,步骤s2可包括:
根据标记的所有所述发送时钟生成时钟相位的有效范围;
将所述有效范围的中间相位作为所述接收目标时钟的相位。
在本步骤中,通过获取的时钟相位的有效范围,可将接收目标时钟的相位设置为有效范围的中间位置,以确保rgmii接口的数据通信稳定可靠。
在实际应用中,可采用2.5mhz、25mhz或125mhz对接口时序校准。逐个对rgmii接口中的每一数据接口进行校准。
在本实施例中,通过物理层采用环回模式,使应用层可以收到其本身发送的数据包,并对收到的数据包做检查,判断当前的rgmii接口时钟相位是否通过校验,然后调整时钟相位并重复前一步的发包收包及数据包检查操作,扫描完整个时钟相位之后,找到时钟相位有效范围,然后将时钟相位设置为时钟相位有效范围的中间位置,以确保rgmii接口的数据通信稳定可靠,从而实现根据不同芯片选择最佳的时序参数作为接收目标时钟的相位,以使接口的有效窗口余量最大化。
如图3所示,一种接口时序校准装置,应用在耦合于应用层与物理层的接口中,所述物理层采用环回模式,包括:控制单元1和处理单元2,其中:
控制单元1,用于调整所述应用层接收时钟信号的步进,所述应用层向所述物理层发送数据包,所述应用层接收所述物理层发送的数据包,依据所述应用层接收的数据包判断所述时钟信号的有效性;
需要说明的是:应用层为芯片的媒体访问控制层。本实施例中的接口为rgmii是简化的吉比特媒体独立接口。
所述控制单元1可包括:调整模块11、发送模块12、接收模块13和校验模块14,其中:
调整模块11,用于在预设周期范围内以预设步进调整所述应用层接收时钟信号;
发送模块12,用于发送数据包至所述物理层,所述物理层通过环回的方式将接收到的所述数据包输出;
物理层环回有两种信号环回方式,一种是在物理层的rgmii接口处做环回,另外一种是通过环回网线实现,两种方式环回方式都需要配置物理层的寄存器实现。应用层发送数据包为长度较长的数据包(例如:1514byte)以保证正确,防止窗口错判,保证发送时间与通信准确性之间的平衡。
接收模块13,用于对接收所述物理层发送的数据包;
校验模块14,用于对接收到的所述数据包进行校验,对校验通过的所述数据包对应的应用层的发送时钟进行标记。
在本实施例中,所述校验模块14可将接收到的所述数据包与相应的发送数据包进行比对,若数据包相同,则校验通过,对接收到的数据包对应的应用层的发送时钟进行标记。
在本实施例中,所述校验模块14还可采用循环冗余校验码对接收到的所述数据包进行校验,若校验通过,则对接收到的数据包对应的应用层的发送时钟进行标记。
处理单元2,用于获取所述时钟信号的时钟相位有效范围,根据所述有效范围获取接收目标时钟的相位。
在本实施例中,所述处理单元2可根据标记的所有所述发送时钟生成时钟相位的有效范围,将所述有效范围的中间相位作为所述接收目标时钟的相位。
在实际应用中,可采用2.5mhz、25mhz或125mhz对接口时序校准。逐个对rgmii接口中的每一数据接口进行校准。
接口时序校准装置通过物理层采用环回模式,使应用层可以收到其本身发送的数据包,并对收到的数据包做检查,判断当前的rgmii接口时钟相位是否通过校验,然后调整时钟相位并重复前一步的发包收包及数据包检查操作,扫描完整个时钟相位之后,找到时钟相位有效范围,然后将时钟相位设置为时钟相位有效范围的中间位置,以确保rgmii接口的数据通信稳定可靠,从而实现根据不同芯片选择最佳的时序参数作为接收目标时钟的相位,以使接口的有效窗口余量最大化。
以上所述仅为本发明较佳的实施例,并非因此限制本发明的实施方式及保护范围,对于本领域技术人员而言,应当能够意识到凡运用本发明说明书及图示内容所作出的等同替换和显而易见的变化所得到的方案,均应当包含在本发明的保护范围内。