多端口PTP报文的处理系统技术方案

技术编号:13711320 阅读:132 留言:0更新日期:2016-09-16 14:21
本发明专利技术公开了一种多端口PTP报文的处理系统,涉及通信领域。该系统包括CPU接口模块、实时时间生成模块、发送标志和序列号生成模块、Sync帧发送模块、Delay_Req帧发送模块、Delay_Resp帧发送模块、Announce帧发送模块、Sync帧接收模块、Delay_Req帧接收模块、Delay_Resp帧接收模块、Announce帧接收模块、复用模块、解复用模块、帧监控模块。本发明专利技术能有效降低通信网络设备开发成本,能提供灵活的PTP报文的处理方案。

【技术实现步骤摘要】

本专利技术涉及通信领域,具体是涉及一种多端口PTP报文的处理系统
技术介绍
伴随着网络技术的不断发展,尤其是以太网在测量和控制系统中应用越来越广泛,计算机和网络业界也在致力于解决以太网的定时同步能力不足的问题,以减少采用其它技术,例如IRIG-B等带来的额外布线开销。于是开发出一种软件方式的NTP(Network Time Protocol,网络时间协议),来提高各网络设备之间的定时同步能力。1992年NTP版本的同步准确度可以达到200μs,但是仍然不能满足测量仪器和工业控制所需的准确度。网络精密时钟同步委员会于2001年中获得IEEE(Institute of Electrical and Electronics Engineers,美国电气和电子工程师协会)仪器和测量委员会美国标准技术研究所(NIST)的支持,该委员会起草的规范在2002年底获得IEEE标准委员会通过,作为IEEE1588标准。该标准定义的就是PTP(Precision Time Protocol,精确时间协议)。PTP协议无需时钟专线传输时钟同步信号,利用数据网络传输时钟同步消息,降低组建同步系统的费用;在提供和GPS(Global Positioning System,全球定位系统)相同的精度情况下,不需要为每个设备安装GPS那样昂贵的组件,只需要一个高精度的本地时钟和提供高精度时钟戳的部件,相对成本低。采用硬件与软件结合设计,
并对各种影响同步精度的部分进行有效矫正,以提供亚微秒级的同步精度。目前PTP协议已广泛应用于通信网络设备中,通常采用专用的PTP协议处理芯片来实现高精度时间同步功能。采用专用的PTP协议处理芯片成本较高,使用起来也不够灵活。
技术实现思路
本专利技术的目的是为了克服上述
技术介绍
的不足,提供一种多端口PTP报文的处理系统,能够有效降低通信网络设备开发成本,能够针对具体应用场景提供灵活的PTP报文的处理方案。本专利技术提供一种多端口PTP报文的处理系统,该系统包括CPU接口模块、实时时间生成模块、发送标志和序列号生成模块、Sync帧发送模块、Delay_Req帧发送模块、Delay_Resp帧发送模块、Announce帧发送模块、Sync帧接收模块、Delay_Req帧接收模块、Delay_Resp帧接收模块、Announce帧接收模块、复用模块、解复用模块、帧监控模块,其中:Sync为1588v2协议定义的一种用于频率同步的同步报文;Delay_Req为1588v2协议定义的一种用于链路时延计算的时延计算请求报文;Delay_Resp为1588v2协议定义的一种用于链路时延计算的时延计算应答报文;Announce为1588v2协议定义的一种主从时钟之间相互协商的消息报文;CPU接口模块用于:给需要配置的变量分配寄存器地址,实现可读/可写寄存器;给需要读取的变量或常量分配寄存器地址,实现只读寄存器;给具备CPU接口的其他子模块提供子片选信号和数据
输入/输出接口,其中128个精确时间协议PTP通道的配置寄存器采用块存储器实现,并按发送标志和序列号生成模块生成的PTP通道指示信号以时分复用的方式读出通道配置数据;实时时间生成模块用于:根据输入的秒脉冲信号PPS_IN和CPU配置的秒值生成实时时间,在PPS_IN有效的时候采样日时间TOD_TIME作为秒时间,纳秒时间为零,然后每来一个时钟的上升沿,纳秒时间加8;发送标志和序列号生成模块用于:给各个通道的各类PTP报文提供发送标志和发送序列号,产生PTP帧发送标志的基本使能信号;Sync帧发送模块用于:根据CPU配置的Sync帧相关参数完成数据包组帧与发送;Delay_Req帧发送模块用于:根据CPU配置的Delay_Req帧相关参数完成数据包组帧与发送;Delay_Req帧发送模块还向Delay_Req接收模块提供Delay_Req帧发送序列号和相应的发送时戳T3、T4时戳和从时钟到主时钟方向的总的CF域:T4-T4`+T3-T3`,其中,T3为主控板卡发送Delay_Req帧时打的时戳,T3’为线卡发送Delay_Req帧时打的时戳,T4为主控板卡接收Delay_Req帧时打的时戳,T4’为线卡接收Delay_Req帧时打的时戳;Delay_Resp帧发送模块用于:根据CPU配置的Delay_Resp帧相关参数和从Delay_Req帧中提取的部分字段完成数据包组帧与发送;Announce帧发送模块用于:根据CPU配置的Announce帧相关参数完成数据包组帧与发送;Sync帧接收模块用于:根据CPU配置的从端口号Slave_port_num和PTP报文对应的通道号Channel_ID,从输入的数据流中识别Slave端口接收的Sync帧,生成Sync帧接收时戳T2,并从接收的PTP消
息中提取时戳T1、T2`和CF域,然后向CPU上报T1,T2时戳和主时钟到从时钟方向的总的CF域:T1`-T1+T2-T2`,其中,T1为主控板卡发送Sync报文时打的时戳,T1`为线卡发送Sync报文时打的时戳,T2为主控板卡接收Sync报文时打的时戳,T2`为线卡接收Sync报文时打的时戳;Delay_Req帧接收模块用于:根据Slave_port_num和Channel_ID,从输入的数据流中识别Master端口接收的Delay_Req报文,生成Delay_Req报文的接收时戳T4,并从接收的Delay_Req报文中提取请求端口标识、T4`和CF域,然后将请求端口标识、T4和总的CF域:T4-T4`+T3`-T3,输出给Delay_Resp发帧模块;Delay_Resp帧接收模块用于:根据Slave_port_num和Channel_ID,从输入的数据流中识别Slave端口接收的Delay_Resp帧,并从接收的Delay_Resp帧中提取请求帧序列号、时戳T4和修正域CF;然后将接收的请求帧序列号和缓存中来自Delay_Req发送模块的请求帧序列号进行比较,如果两者的值相等,则向CPU上报T3、T4时戳和总的CF域:T4-T4`+T3-T3`;如果接收的请求帧序列号的值较大,则继续从缓存中取发送请求帧序列号,直到两者的值相等,然后向CPU上报T3、T4时戳和T4-T4`+T3-T3`;如果接收的请求帧序列号的值较小,则重新接收Delay_Resp报文;Announce帧接收模块用于:根据Channel_ID将各通道的报文转存进双口RAM中相应的存储空间,供CPU读取;复用模块用于:将各通道的Sync、Delay_Req、Delay_Resp和Announce报文先复用成一路,然后按1588帧载荷格式进行封装,最后按带VLAN的以太网封装格式进行封装;解复用模块用于:对接收到的1588帧,先根据带VLAN的以太
网封装格式进行1588帧解封装,得到1588帧载荷,然后对PTP Packet进行解封装,得到PTP消息帧;帧监控模块用于:根据寄存器的配置从收/发的1588帧中选择一路进行抓包操作,同时对各类收/发报文进行计数。在上述技术方案的基础上,所述发送标志和序列号生成模块发送标志的过程为:参考PPS_IN信号将1秒分为本文档来自技高网
...

【技术保护点】
一种多端口PTP报文的处理系统,其特征在于,该系统包括CPU接口模块、实时时间生成模块、发送标志和序列号生成模块、Sync帧发送模块、Delay_Req帧发送模块、Delay_Resp帧发送模块、Announce帧发送模块、Sync帧接收模块、Delay_Req帧接收模块、Delay_Resp帧接收模块、Announce帧接收模块、复用模块、解复用模块、帧监控模块,其中:Sync为1588v2协议定义的一种用于频率同步的同步报文;Delay_Req为1588v2协议定义的一种用于链路时延计算的时延计算请求报文;Delay_Resp为1588v2协议定义的一种用于链路时延计算的时延计算应答报文;Announce为1588v2协议定义的一种主从时钟之间相互协商的消息报文;CPU接口模块用于:给需要配置的变量分配寄存器地址,实现可读/可写寄存器;给需要读取的变量或常量分配寄存器地址,实现只读寄存器;给具备CPU接口的其他子模块提供子片选信号和数据输入/输出接口,其中128个精确时间协议PTP通道的配置寄存器采用块存储器实现,并按发送标志和序列号生成模块生成的PTP通道指示信号以时分复用的方式读出通道配置数据;实时时间生成模块用于:根据输入的秒脉冲信号PPS_IN和CPU配置的秒值生成实时时间,在PPS_IN有效的时候采样日时间TOD_TIME作为秒时间,纳秒时间为零,然后每来一个时钟的上升沿,纳秒时间加8;发送标志和序列号生成模块用于:给各个通道的各类PTP报文 提供发送标志和发送序列号,产生PTP帧发送标志的基本使能信号;Sync帧发送模块用于:根据CPU配置的Sync帧相关参数完成数据包组帧与发送;Delay_Req帧发送模块用于:根据CPU配置的Delay_Req帧相关参数完成数据包组帧与发送;Delay_Req帧发送模块还向Delay_Req接收模块提供Delay_Req帧发送序列号和相应的发送时戳T3、T4时戳和从时钟到主时钟方向的总的CF域:T4‑T4`+T3‑T3`,其中,T3为主控板卡发送Delay_Req帧时打的时戳,T3’为线卡发送Delay_Req帧时打的时戳,T4为主控板卡接收Delay_Req帧时打的时戳,T4’为线卡接收Delay_Req帧时打的时戳;Delay_Resp帧发送模块用于:根据CPU配置的Delay_Resp帧相关参数和从Delay_Req帧中提取的部分字段完成数据包组帧与发送;Announce帧发送模块用于:根据CPU配置的Announce帧相关参数完成数据包组帧与发送;Sync帧接收模块用于:根据CPU配置的从端口号Slave_port_num和PTP报文对应的通道号Channel_ID,从输入的数据流中识别Slave端口接收的Sync帧,生成Sync帧接收时戳T2,并从接收的PTP消息中提取时戳T1、T2`和CF域,然后向CPU上报T1,T2时戳和主时钟到从时钟方向的总的CF域:T1`‑T1+T2‑T2`,其中,T1为主控板卡发送Sync报文时打的时戳,T1`为线卡发送Sync报文时打的时戳,T2为主控板卡接收Sync报文时打的时戳,T2`为线卡接收Sync报文时打的时戳;Delay_Req帧接收模块用于:根据Slave_port_num和Channel_ID,从输入的数据流中识别Master端口接收的Delay_Req报文,生成Delay_Req报文的接收时戳T4,并从接收的Delay_Req报文中提取请 求端口标识、T4`和CF域,然后将请求端口标识、T4和总的CF域:T4‑T4`+T3`‑T3,输出给Delay_Resp发帧模块;Delay_Resp帧接收模块用于:根据Slave_port_num和Channel_ID,从输入的数据流中识别Slave端口接收的Delay_Resp帧,并从接收的Delay_Resp帧中提取请求帧序列号、时戳T4和修正域CF;然后将接收的请求帧序列号和缓存中来自Delay_Req发送模块的请求帧序列号进行比较,如果两者的值相等,则向CPU上报T3、T4时戳和总的CF域:T4‑T4`+T3‑T3`;如果接收的请求帧序列号的值较大,则继续从缓存中取发送请求帧序列号,直到两者的值相等,然后向CPU上报T3、T4时戳和T4‑T4`+T3‑T3`;如果接收的请求帧序列号的值较小,则重新接收Delay_Resp报文;Announce帧接收模块用于:根据Channel_ID将各通道的报文转存进双口RAM中相应的存储空间,供CPU读取;复用模块用于:将各通道的Sync、Delay_Req、Delay_Resp和Announce报文先复用成一路,然后按1588帧载荷格式进行封装,最后按带VLAN的以太网封装格式进行封装;解复用模块用于:对接收到的1588帧,先根据带V...

【技术特征摘要】
1.一种多端口PTP报文的处理系统,其特征在于,该系统包括CPU接口模块、实时时间生成模块、发送标志和序列号生成模块、Sync帧发送模块、Delay_Req帧发送模块、Delay_Resp帧发送模块、Announce帧发送模块、Sync帧接收模块、Delay_Req帧接收模块、Delay_Resp帧接收模块、Announce帧接收模块、复用模块、解复用模块、帧监控模块,其中:Sync为1588v2协议定义的一种用于频率同步的同步报文;Delay_Req为1588v2协议定义的一种用于链路时延计算的时延计算请求报文;Delay_Resp为1588v2协议定义的一种用于链路时延计算的时延计算应答报文;Announce为1588v2协议定义的一种主从时钟之间相互协商的消息报文;CPU接口模块用于:给需要配置的变量分配寄存器地址,实现可读/可写寄存器;给需要读取的变量或常量分配寄存器地址,实现只读寄存器;给具备CPU接口的其他子模块提供子片选信号和数据输入/输出接口,其中128个精确时间协议PTP通道的配置寄存器采用块存储器实现,并按发送标志和序列号生成模块生成的PTP通道指示信号以时分复用的方式读出通道配置数据;实时时间生成模块用于:根据输入的秒脉冲信号PPS_IN和CPU配置的秒值生成实时时间,在PPS_IN有效的时候采样日时间TOD_TIME作为秒时间,纳秒时间为零,然后每来一个时钟的上升沿,纳秒时间加8;发送标志和序列号生成模块用于:给各个通道的各类PTP报文 提供发送标志和发送序列号,产生PTP帧发送标志的基本使能信号;Sync帧发送模块用于:根据CPU配置的Sync帧相关参数完成数据包组帧与发送;Delay_Req帧发送模块用于:根据CPU配置的Delay_Req帧相关参数完成数据包组帧与发送;Delay_Req帧发送模块还向Delay_Req接收模块提供Delay_Req帧发送序列号和相应的发送时戳T3、T4时戳和从时钟到主时钟方向的总的CF域:T4-T4`+T3-T3`,其中,T3为主控板卡发送Delay_Req帧时打的时戳,T3’为线卡发送Delay_Req帧时打的时戳,T4为主控板卡接收Delay_Req帧时打的时戳,T4’为线卡接收Delay_Req帧时打的时戳;Delay_Resp帧发送模块用于:根据CPU配置的Delay_Resp帧相关参数和从Delay_Req帧中提取的部分字段完成数据包组帧与发送;Announce帧发送模块用于:根据CPU配置的Announce帧相关参数完成数据包组帧与发送;Sync帧接收模块用于:根据CPU配置的从端口号Slave_port_num和PTP报文对应的通道号Channel_ID,从输入的数据流中识别Slave端口接收的Sync帧,生成Sync帧接收时戳T2,并从接收的PTP消息中提取时戳T1、T2`和CF域,然后向CPU上报T1,T2时戳和主时钟到从时钟方向的总的CF域:T1`-T1+T2-T2`,其中,T1为主控板卡发送Sync报文时打的时戳,T1`为线卡发送Sync报文时打的时戳,T2为主控板卡接收Sync报文时打的时戳,T2`为线卡接收Sync报文时打的时戳;Delay_Req帧接收模块用于:根据Slave_port_num和Channel_ID,从输入的数据流中识别Master端口接收的Delay_Req报文,生成Delay_Req报文的接收时戳T4,并从接收的Delay_Req报文中提取请 求端口标识、T4`和CF域,然后将请求端口标识、T4和总的CF域:T4-T4`+T3`-T3,输出给Delay_Resp发帧模块;Delay_Resp帧接收模块用于:根据Slave_port_num和Channel_ID,从输入的数据流中识别Slave端口接收的Delay_Resp帧,并从接收的Delay_Resp帧中提取请求帧序列号、时戳T4和修正域CF;然后将接收的请求帧序列号和缓存中来自Delay_Req发送模块的请求帧序列号进行比较,如果两者的值相等,则向CPU上报T3、T4时戳和总的CF域:T4-T4`+T3-T3`;如果接收的请求帧序列号的值较大,则继续从缓存中取发送请求帧序列号,直到两者的值相等,然后向CPU上报T3、T4时戳和T4-T4`+T3-T3`;如果接收的请求帧序列号的值较小,则重新接收Delay_Resp报文;Announce帧接收模块用于:...

【专利技术属性】
技术研发人员:杨虎林钟永波谢秋红刘超
申请(专利权)人:烽火通信科技股份有限公司
类型:发明
国别省市:湖北;42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1