动态可重构高速串行总线时间同步装置的制造方法_2

文档序号:9974447阅读:来源:国知局
差会随着时间变化不断累积。对于从节点,在时间同 步控制器收到时间同步命令时,它会使用修正的时间码,重新设置时间计数器的计数值,使 总线上各个节点的时间计数值达到一致。
[0028] 总线通道控制器在总线节点中,实现对总线通道通信数据编码解码,完成总线通 信控制。对于时间主节点,总线通道控制器会定期根据时间同步控制器的请求与送来的时 间码,构造图7所示的广播时间包,发送到总线上,同步其它节点的时间。对于从节点,总线 通道控制器收到一个广播时间包后,会将同步命令及时间码送给时间同步控制器,由它进 行时间码修正和时间同步。
[0029] 上述UM-BUS总线中的时间同步装置各个组件主要完成通信线路延迟时间测量、 广播时间包传送、节点时间同步三种功能,具体工作流程如图8所示,下面对这三种功能的 执行原理与过程分别进行详细说明。
[0030] 1.线路延迟时间测量
[0031] 线路延迟时间测量借助图3所示的UM-BUS总线的通道检测过程进行,对UM-BUS 总线通道检测信息包进行如图6所示的扩展,在三种检测信息包最后各增加一个表示传输 时间值的字节。如图5所示,通过在通道检测过程中,对检测包传输时间的传送、记录,再根 据这些时间值计算总线通道的线路传输延迟。具体步骤如下:
[0032] DUM-BUS总线通道故障检测开始时,检测发起者(只能是总线主节点)的通道检 测控制器,将检测命令包发送开始时刻的时间值低8位(tl)放到检测命令包数据字节3中 发送给被检测者。
[0033] 2)被检测者的通道检测控制器收到检测命令包时,记录各通道完成检测命令包接 收时刻的时间值低8位(t2)。
[0034] 3)根据总线通道检测协议,被检测者的通道检测控制器从所有通道上向检测发起 者回送检测应答包,记录该检测应答包发送开始时刻的时间值低8位(t3),并将其放到检 测应答包数据字节3中发送给检测发起者。
[0035] 4)检测发起者的通道检测控制器收到检测应答包时,记录各通道完成检测应答包 接收时刻的时间值低8位(t4),并将其放到检测确认包数据字节3中,随同检测确认包发送 给被检测者。
[0036] 5)被检测者的通道检测控制器根据各通道tl、t2、t3、t4值计算检测发起者到被 检测者通道线路传输延迟,并交由线路传输延迟时间表按照通道号及检测发起者的节点号 在一个二维表格中记录线路传输延迟时间。线路传输延迟时间计算方法如下:
[0037] 假设通道线路延迟时间为Delay,检测发起者与被检测者两个节点间的时间误差 为Offset,则有如下方程组:
[0039] 解方程组,可得:
[0040] Delay = ((t2+t4) - (tl+t3))/2
[0041] 由于UM-BUS总线中节点的位置一旦确定便不会改变,因此测得的线路传输延迟 也是确定不变的。但总线的不同通道由于线缆长度不同,传输延迟也不尽相同,因此在MC 层中设置一个二维延迟时间表,记录不同节点通过不同通道与本节点进行通道检测时信息 包的传输延迟。另一方面,UM-BUS总线长度最大为40m,链路的传输延迟采用MAC层工作时 钟计数表示,取值范围在40~100之间,因此用8位二制数对传输过程中的时间值进行记 录传输不会影响计算精度。
[0042] 2.广播时间包传送
[0043] 在UM-BUS总线上选择一个主节点作为时间主节点,其余节点为时间从节点。本实 施例中假定总线的通道传输速率为100Mbps,MAC层工作时钟为50MHz,总线上各节点工作 时钟误差为20ppm,工作过程中总线上各节点时间误差要求不大于100ns,则时间主节点的 时间同步控制器每2. 5ms会控制总线通道控制器向其它节点广播发送一次时间码,供各节 点进行时间同步使用。
[0044] 时间码通过广播时间包进行传输。广播时间包格式如图7所示,各个字段解释如 下:
[0045] 1)时间码广播控制字,为8b/10b编码控制字K28. 4,表示广播时间包。
[0046] 2)命令字,高5位为发送广播时间包的源节点号(时间主节点的节点号);低3位 为校时命令,可表示命令〇~7。校时命令0定义为时间同步命令,所有接收节点使用时间 值同步自己的纳秒、微秒及毫秒计数器;校时命令1定义秒计数器设置命令,所有接收节点 将自己的秒计数器设置时间值规定的数值;校时命令2~7在本实施例中未使用。
[0047] 3)时间值1~4构成一个32位时间值(T),表示广播时间包开始发送时的时间码。 对于校时命令1,它表示当前秒计数值。对于校时命令〇,其位31~27未用,位26~17为 毫秒计数值(范围为O~999);位16~7为微秒计数值(范围O~999);位6~O为纳秒 计数器(范围O~(n/2-l)),η为总线通道速率Mbps值(如总线通道速率为200Mbps时, η为200 ;总线通道速率为40Mbps时,η为40)。
[0048] 4)校验字,为命令字与四个时间值字节的模2累加和。
[0049] 3.节点时间同步
[0050] 时间从节点的总线通道控制器收到广播时间包后,获得校时命令与时间值T并送 给时间同步控制器。当校时命令为1时,时间同步控制器直接使用T重置自己的时间计数 器的秒计数值即可。时间主节点需要保证校时命令1在毫秒计数值为500时发送,并且在 发送校时命令1之前,至少应当发送过一次校时命令0,这样时间从节点就可以在一个稳定 的状态对秒计数器进行重置。
[0051] 当时间从节点收到校时命令为0的广播时间包后,时间同步控制器取得时间主节 点的时间值Τ,选择一个通道,根据时间主节点的节点号从线路传输延迟时间表的二维延迟 时间表中,取得通道传输延迟Delay,采用下式计算校正时间Tnode :
[0052] Tnode = T+Delay+Td
[0053] 式中,Td为广播时间包与检测信息包之间的数据收发时间差与校时过程引入的延 迟时间之和。计算得到Tnode后,时间同步控制器用它重新设置节点时间计数器中的纳秒、 微秒及毫秒计数器,即可完成时间同步。
[0054] 为避免时间同步过程中由于时间主节点失效导致系统时间同步功能失效,任何一 个具有时间同步能力的主节点均可替代之前的时间主节点,成为新的时间主节点。每个时 间主节点在时间同步控制权转移之前,需周期性地向总线的所有通道发送广播时间包,以 达到总线各节点时间同步的目标。
【主权项】
1. 一种动态可重构高速串行总线时间同步装置,其特征在于:包括通道检测控制器、 线路传输延迟时间表、时间同步控制器、时间计数器和总线通道控制器,其中所述通道检测 控制器用于通过在检测信息包中传递检测信息包的发送与接收时间,对通道的线路传输延 迟时间进行测量计算;所述线路传输延迟时间表是按照总线通道及主节点号建立的二维表 格,用来存储通道检测控制器测量计算的通道延迟时间;所述时间同步控制器在时间主节 点中用于发送广播时间码,在从节点中用于接收时间主节点发送的时间广播码,使用线路 传输延迟时间表中的通道传输延迟时间进行修正后,重新设置时间计数器的计数值,进行 总线时间同步;所述时间计数器利用总线节点工作时间进行本地的时间计数;所述总线通 道控制器用于实现动态可重构高速串行总线通道数据通信功能。
【专利摘要】一种动态可重构高速串行总线时间同步装置,包括通道检测控制器、线路传输延迟时间表、时间同步控制器、时间计数器和总线通道控制器,采用通道延迟时间修正与时间码广播方式,能够对动态可重构高速串行总线节点进行精确的时间同步。
【IPC分类】G06F13/42
【公开号】CN204883706
【申请号】CN201520394654
【发明人】邱柯妮, 李超, 周继芹, 张伟功, 王晶, 朱晓燕, 徐远超
【申请人】首都师范大学
【公开日】2015年12月16日
【申请日】2015年6月10日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1