CN110505157A - 一种适应时间触发网络的分类调度方法及装置 - Google Patents

一种适应时间触发网络的分类调度方法及装置 Download PDF

Info

Publication number
CN110505157A
CN110505157A CN201910790676.8A CN201910790676A CN110505157A CN 110505157 A CN110505157 A CN 110505157A CN 201910790676 A CN201910790676 A CN 201910790676A CN 110505157 A CN110505157 A CN 110505157A
Authority
CN
China
Prior art keywords
frame
module
port
ethernet
sent
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.)
Granted
Application number
CN201910790676.8A
Other languages
English (en)
Other versions
CN110505157B (zh
Inventor
张金国
谢军
彭逸飞
涂晓东
孟中楼
朱晓东
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Electronic Science and Technology of China
Original Assignee
University of Electronic Science and Technology of China
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by University of Electronic Science and Technology of China filed Critical University of Electronic Science and Technology of China
Priority to CN201910790676.8A priority Critical patent/CN110505157B/zh
Publication of CN110505157A publication Critical patent/CN110505157A/zh
Application granted granted Critical
Publication of CN110505157B publication Critical patent/CN110505157B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

本发明公开了一种适应时间触发网络的分类调度方法及装置,涉及时间触发以太网领域;其装置增设链路延时测量模块和流量控制模块;其方法接收方向时,以太网帧分类模块将接收的以太网帧分为TT帧、LT0帧、LT1帧、PCF帧、PT帧、ET帧后,分别送入对应的模块;发送方向时,各类帧的模块将对应类型的帧或者指示信号送往以太网帧调度模块,由以太网帧调度模块对各类帧统一调度发送,在保证原有时间触发TT业务的确定性与实时性的基础上,通过LT0帧、LT1帧从硬件底层实现链路延时的自动和动态测量,提高测量精度,保证时钟同步;流量控制可以有效防止ET帧因为接收端底层存储空间不足而丢帧,提高了网络数据传输的效率。

Description

一种适应时间触发网络的分类调度方法及装置
技术领域
本发明涉及时间触发以太网领域,尤其是一种适应时间触发网络的分类调度方法及装置。
背景技术
近年来,分布式网络被广泛应用到工业系统中,系统中各个设备间通过特定的网络进行通信,这要求网络在实时性、低延时、高带宽、强容错、无冲突等方面有很好的性能。传统以太网因为其高带宽、高灵活性和低成本等特别也被列入考虑范围。而时间触发以太网的提出,不仅继承了传统以太网的上述优点,也弥补了传统以太网的一些缺点,在实时性、低延时、强容错和无冲突方面有着很好的性能,被在国外被广泛应用到各类工业系统中。
时间触发以太网技术中终端设备和交换机实现的关键在于底层的时间同步和各类帧的调度处理以及接收分类处理。现有技术中专利号:CN201811492235.1、专利名称:时间触发以太网多业务消息发送的混合调度方法,提供了一种时间触发以太网多业务消息发送的混合调度方法,以及适用此方法的发送调度消息交互机制,符合TT消息的时间触发特性、PCF消息的事件触发特性、RC消息的速率限制特性和BE消息的尽力而为传输特性,解决了时间触发以太网中难以兼顾多种业务消息传输特性的问题,为设计和实现支持多种业务流的端系统提供技术支撑。
上述方法存在以下问题:一、上述方法中设备间实现时间同步需要得到设备间链路延时的值,现有技术获取链路延时是依据IEEE1588协议计算链路延时,需要上层软件收发PTP帧,发往硬件再发往对端。硬件负责在上面加时间戳,软件计算延时值,通过软件方法获取链路延时增大了上层软件逻辑复杂度和软硬件逻辑的耦合度,也降低了链路延时测量的精度;二、在调度发送PCF帧时,每个PCF帧进入缓存到输出缓存的时间是动态变化的,上述动态的路径延时未记载将导致同步的精度降低;三、上述该方法未对BE帧的流量控制帧做调度发送处理,容易出现流量控制帧被BE帧阻塞,导致流量控制没有被及时执行,时间触发帧无法正常传输,影响以太网帧的传输速率和稳定性。因此,本申请提出一种分类调度方法及装置,克服以上问题。
发明内容
本发明的目的在于:本发明提供了一种适应时间触发网络的分类调度方法及装置,解决现有采用软件测量链路延时存在软件逻辑复杂度高、软硬件逻辑耦合度要求高和测量精度低缺点,从而导致同步精度低的问题。
本发明采用的技术方案如下:
一种适应时间触发网络的分类调度方法,包括如下步骤:
本端口的以太网帧调度模块将接收的以太网帧发送至对端口的以太网帧分类模块,对端口的以太网帧分类模块将接收的以太网帧分类后发送至对应上层模块完成各类帧调度;
所述以太网帧包括链路延时测量模块生成的LT0帧和LT1帧,具体如下:
本端口的以太网帧调度模块将本端口链路延时测量模块生成并发送的LT0帧发送至对端口的以太网帧分类模块,
对端口的以太网帧分类模块将接收的LT0帧发送至对端口的链路延时测量模块,
对端口的链路延时测量模块根据LT0帧生成LT1帧后,将LT1帧发送至对端口的以太网帧调度模块;
对端口的以太网帧调度模块将所述LT1帧发送至本端口的以太网帧分类模块,
本端口的以太网帧分类模块将所述LT1帧发送至本端口的链路延时测量模块,本端口的链路延时测量模块接收LT1帧,解析LT1帧计算链路延时,
将所述链路延时发送至时间同步模块。
优选地,所述链路延时计算包括如下步骤:
对端口的链路延时测量模块提取LT0帧的time0字段,将所述time0字段赋值给生成的LT1帧的time0字段;
本端口的链路延时测量模块接收LT1帧时记录此时刻为T7时刻,解析LT1帧提取time0和time1字段,根据T7、time0和time1计算链路延时值Link Latency,计算公式如下:
T7-T1=t1+t2+t3+t4+t5+t6
T1=time0.t4=time1
t1=t5=Link Latency=(T7-time0-t2-t3-time1-t6)/2
其中,t0~t6为T1~T7时刻点之间的时间长度,其中t2、t3和t6为可测的固定值,T0时刻为本端口的链路延时测量模块发送LT0帧时本端口的本地计时器值,T1时刻为本端口的以太网帧调度模块发送LT0帧时本端口的本地计时器值,T2时刻为对端口的以太网帧分类模块接收LT0帧时对端口的本地计时器值,T3时刻为对端口的链路延时测量模块接收LT0帧时对端口的本地计时器值,T4时刻为对端口的链路延时测量模块发送LT1帧时对端口的本地计时器值,T5时刻为对端口的以太网帧调度模块发送LT1帧时对端口的本地计时器值,T6时刻为本端口的以太网帧分类模块接收LT1帧时本端口的本地计时器值,T7时刻为本端口的链路延时测量模块接收LT1帧时本端口的本地计时器值;链路延时测量模块到本端口的以太网帧调度模块的路径延时默认为0,T4时刻也为对端口的以太网帧调度模块接收LT1帧时对端口的本地计时器值。
优选地,所述以太网帧还包括时间同步模块收发的PCF帧、流量控制模块收发的PT帧、以太网数据收发模块的ET帧和TT帧,上述各类帧调度包括如下步骤:
步骤a:本端口/对端口的以太网帧调度模块接收以太网帧后,获取LT1帧、PCF帧和ET帧的描述符信息,将前述帧数据和描述符信息存入对应的缓存FIFO中;
步骤b:本端口/对端口的以太网帧调度模块根据TT帧的调度表、前述帧数据、描述符缓存FIFO状态以及本地时钟发送以太网帧至对端口/本端口的以太网帧分类模块;
步骤c:对端口/本端口的以太网帧分类模块接收以太网帧,根据以太网帧的TYPE字段发送各类帧至对端口/本端口的上层模块。
优选地,所述步骤a包括如下步骤:
将LT0帧和LT1帧分别送入LT0帧数据缓存FIFO和LT1帧数据缓存FIFO,将收到LT1帧时的本地计时器值T4存入LT1描述符缓存FIFO;
将时间同步模块发送的PCF帧和当前时刻本地计时器值分别存入PCF帧数据缓存FIFO和PCF帧描述符缓存FIFO中;
将以太网数据收发模块发送的TT帧和ET帧分别存入TT帧数据缓存FIFO和ET帧数据缓存FIFO中,将ET帧存入FIFO的同时记录存入的ET帧的帧长,将ET帧的帧长信息存入ET帧描述符缓存FIFO中;
将流量控制模块发送的PT帧存入PT帧数据缓存FIFO中。
优选地,所述步骤b包括如下步骤:
若本地时钟不在LT1帧保护带内且LT1帧数据缓存FIFO中有数据,则发送LT1帧,发送的同时根据发送LT1帧时刻本地计时器值T5与LT1帧描述符缓存FIFO中的计时器值T4的差值t4修改LT1帧中的time1字段和CRC字段;
若本地时钟不在LT0帧保护带内且LT0帧数据缓存FIFO中有数据,则发送LT0帧,发送的同时根据发送LT0帧时刻本地计时器值T1修改LT0帧中的time0字段和CRC字段;
若本地时钟等于调度发送时刻点且TT帧数据缓存FIFO中有数据,则发送TT帧;
若本地时钟不在PCF帧保护带内且PCF帧数据缓存FIFO中有数据,则发送PCF帧,发送的同时会根据发送PCF帧时刻本地计时器值与PCF帧描述符缓存FIFO中的描述符的差值加上PCF帧中透明时钟字段Transparent Clock修改PCF帧中的透明时钟字段TransparentClock和CRC字段;
若本地时钟不在PT帧保护带内且PT帧数据缓存FIFO中有数据,则发送PT帧;
若本地时钟不在ET帧保护带内且ET帧数据缓存FIFO中有数据且暂停发送信号PauseFlag无效,则发送ET帧。
优选地,所述步骤c包括如下步骤:
若TYPE字段为0x88f0,则将该LT0帧发送至链路延时测量模块,链路延时测量模块提取该帧的time0字段,将该字段赋给新生成的LT1帧的time0字段,链路延时测量模块将新生成的LT1帧发送至以太网帧调度模块;
若TYPE字段为0x88f1,则将LT1帧发送至链路延时测量模块,链路延时测量模块记录收到该LT1帧的本地计时器值T7,并提取该LT1帧的time0字段和time1字段;
若TYPE字段为0x88d7,则将该TT帧发送至以太网数据收发模块,以太网数据收发模块根据TT帧调度表调度接收该TT帧;
若TPYE字段为0x891d,则将该PCF帧发送至时间同步模块,时间同步模块用该帧修改本地时钟,为以太网帧调度模块和以太网数据收发模块提供同步后的本地时钟;
若TYPE字段为0x8808,则将该PT帧发送至流量控制模块,流量控制模块解析出该帧的Parameter字段,并根据Parameter字段的值将发送至以太网帧调度模块的暂停发送信号Pause Flag拉高Pause Count个时钟周期;
若TYPE字段为0x0800,则将该ET帧发送至以太网数据收发模块,以太网数据收发模块将该帧存入ET帧缓存FIFO中,同时以太网数据收发模块检查ET帧缓存FIFO,若ET帧缓存FIFO中数据量达到预定值,生成预满信号Almost Full发送至流量控制模块。
一种基于上述方法的装置,包括
以太网帧调度模块,用于接收上层模块发送的各类帧数据和指示信号,将帧数据存入对应缓存FIFO中,然后根据TT帧的调度表、各类帧数据、描述符缓存FIFO状态以及本地时钟发送各类帧;
以太网帧分类模块,用于接收以太网帧,根据以太网帧的TYPE字段将各类帧分别发送至对应的上层模块;
链路延时测量模块,用于生成LT0帧和LT1帧测量本端口和对端口的链路延时,周期性的为本地的时间同步模块提供链路延时;
时间同步模块,用于接收到以太网帧分类模块发送的PCF帧修正本地时钟,为本地的以太网帧调度模块和以太网数据收发模块提供同步后的本地时钟;用于发送PCF帧至以太网帧调度模块。
优选地,还包括
以太网数据收发模块,用于接收以太网帧分类模块发送的TT帧和ET帧;用于发送TT帧和ET帧至以太网帧调度模块,并对TT帧进行调度接收处理和检查ET帧缓存FIFO,若ET帧缓存FIFO中数据量达到预定值,生成预满信号Almost Full发送至流量控制模块;
流量控制模块,用于对接收预满信号Almost Full后生成PT帧,通过本端口的以太网帧调度模块、对端口的以太网帧分类模块发送至对端口的流量控制模块,对端口的流量控制模块拉高暂停发送信号Pause Flag,对端口的以太网帧调度模块对应暂停发送ET帧。
综上所述,由于采用了上述技术方案,本发明的有益效果是:
1.本发明提出了链路延时测量帧以及对链路延时帧LT帧的调度发送方法,通过硬件生成链路测量帧在每个设备端口的硬件底层实现链路延时的测量,不需要上层软件的参与,降低了上层软件的逻辑复杂度和软硬件逻辑的耦合度;因为逻辑完全用硬件实现,一次往返测量的时间长度大大降低,降低了其中链路延时帧在对端滞留的时间,提高了测量的精度;例如,在对端滞留时间1ms且时钟抖动为百万分之二十时,实际计算的链路延时误差为20ns,这会对时钟精度有明显影响,本法用硬件可以实现对端滞留时间小于16us,链路延时误差小于0.32ns,对时钟精度影响明显降低;
2.本发明将调度发送PCF帧时PCF帧进入缓存到输出缓存对应的动态路径延时记录在PCF帧的透明时钟字段,保证端口发送出的PCF帧的透明时钟字段Transparent Clock等于该PCF帧所经历的延时,提高了系统时钟同步的精度;
3.本发明提出了流量控制帧的调度发送方法,将流量控制帧存入单独的FIFO,单独做调度发送处理,在调度发送ET帧的同时对流量控制帧做调度发送处理,防止ET帧阻塞流量控制帧,保证了流量控制被及时执行,保证了时间触发帧正常传输的同时也最大化提高了普通以太网帧的传输速率和稳定性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明的装置接收方向和发送方向示意图;
图2为本发明的以太网帧调度模块结构示意图;
图3为本发明的以太网帧调度模块流程图;
图4为本发明的链路延时模块测量路径图;
图5为本发明的PCF帧、LT0帧、LT1帧、PT帧的帧结构示意图;
图6为本发明的PCF帧的帧数据字段示意图;
图7为本发明的LT0帧和LT1帧的帧数据字段示意图;
图8为本发明的PT帧的帧数据字段示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明,即所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以下结合实施例对本发明的特征和性能作进一步的详细描述。
实施例1
现有技术中调度各类帧需要实现时间同步,设备间实现时间同步需要计算设备间链路延时;现有技术中现有技术获取链路延时是依据IEEE1588协议计算链路延时,需要上层软件收发PTP帧,发往硬件再发往对端。硬件负责在上面加时间戳,软件计算延时值,通过软件方法获取链路延时增大了上层软件逻辑复杂度和软硬件逻辑的耦合度,也降低了链路延时测量的精度;因此,本申请提出一种分类调度方法,改进计算链路延时,细节如下:
专业术语定义:时间触发帧-TT帧,链路延时测量帧-LT0/LT1帧,协议控制帧-PCF帧,流量控制帧-PT帧,普通以太网帧-ET帧。
本端口的以太网帧调度模块将接收的以太网帧发送至对端口的以太网帧分类模块,对端口的以太网帧分类模块将接收的以太网帧分类后发送至对应上层模块完成各类帧调度;
如图4所示,所述以太网帧包括链路延时测量模块生成的LT0帧和LT1帧,具体如下:
本端口的以太网帧调度模块将本端口链路延时测量模块生成并发送的LT0帧发送至对端口的以太网帧分类模块,
对端口的以太网帧分类模块将接收的LT0帧发送至对端口的链路延时测量模块,
对端口的链路延时测量模块根据LT0帧生成LT1帧后,将LT1帧发送至对端口的以太网帧调度模块;
对端口的以太网帧调度模块将所述LT1帧发送至本端口的以太网帧分类模块,
本端口的以太网帧分类模块将所述LT1帧发送至本端口的链路延时测量模块,本端口的链路延时测量模块接收LT1帧,解析LT1帧计算链路延时,
将所述链路延时发送至时间同步模块。
对端口的链路延时测量模块提取LT0帧的time0字段,将所述time0字段赋值给生成的LT1帧的time0字段;
本端口的链路延时测量模块接收LT1帧时记录此时刻为T7时刻,解析LT1帧提取time0和time1字段,根据T7、time0和time1计算链路延时值Link Latency,计算公式如下:
T7-T1=t1+t2+t3+t4+t5+t6
T1=time0,t4=time1
t1=t5=Link Latency=(T7-time0-t2-t3-time1-t6)/2
其中,t0~t6为T1~T7时刻点之间的时间长度,其中t2、t3和t6为可测的固定值,T0时刻为本端口的链路延时测量模块发送LT0帧时本端口的本地计时器值,T1时刻为本端口的以太网帧调度模块发送LT0帧时本端口的本地计时器值,T2时刻为对端口的以太网帧分类模块接收LT0帧时对端口的本地计时器值,T3时刻为对端口的链路延时测量模块接收LT0帧时对端口的本地计时器值,T4时刻为对端口的链路延时测量模块发送LT1帧时对端口的本地计时器值,T5时刻为对端口的以太网帧调度模块发送LT1帧时对端口的本地计时器值,T6时刻为本端口的以太网帧分类模块接收LT1帧时本端口的本地计时器值,T7时刻为本端口的链路延时测量模块接收LT1帧时本端口的本地计时器值;链路延时测量模块到本端口的以太网帧调度模块的路径延时默认为0,T4时刻也为对端口的以太网帧调度模块接收LT1帧时对端口的本地计时器值。
本发明提出了链路延时测量帧以及对链路延时帧LT帧的调度发送方法,通过硬件生成链路测量帧在每个设备端口的硬件底层实现链路延时的测量,不需要上层软件的参与,降低了上层软件的逻辑复杂度和软硬件逻辑的耦合度;因为逻辑完全用硬件实现,一次往返测量的时间长度大大降低,降低了其中链路延时帧在对端滞留的时间,提高了测量的精度;例如,在对端滞留时间1ms且时钟抖动为百万分之二十时,实际计算的链路延时误差为20ns,这会对时钟精度有明显影响,本法用硬件可以实现对端滞留时间小于16us,链路延时误差小于0.32ns,对时钟精度影响明显降低。
实施例2
基于实施例1,细化各类帧的调度细节,将调度发送PCF帧时PCF帧进入缓存到输出缓存对应的动态路径延时记录在PCF帧的透明时钟字段,保证端口发送出的PCF帧的透明时钟字段Transparent Clock等于该PCF帧所经历的延时,优化时钟同步;调度发送ET帧的同时对流量控制帧PT帧做调度发送处理,防止ET帧阻塞流量控制帧,保证了流量控制被及时执行,保证了时间触发帧正常传输的同时也最大化提高了普通以太网帧的传输速率和稳定性;细节如下:
如图1、4所示,分为发送帧方向和接收帧方向,0端口为发送帧方向,1端口为接收帧方向,包括如下步骤:
步骤1:0端口以太网帧调度模块接收各个上层模块发送的各类帧数据和指示信号,计算LT1帧、PCF帧和ET帧的描述符信息,将帧数据和描述符信息存入对应缓存FIFO中;
将链路延时测量模块发送的链路延时测量帧LT0和LT1分别送入LT0数据缓存FIFO和LT1数据缓存FIFO,将收到LT1帧时的本地计时器值(0端口内部一个计时器,其位宽和精度与时间同步模块提供的本地时钟相同,但本地计时器区别于本地时钟)送入LT1描述符缓存FIFO中;
将时间同步模块发送的PCF帧和当前时刻本地计时器值分别送入PCF帧数据缓存FIFO和PCF帧描述符缓存FIFO中;
将以太网数据收发模块发送的TT帧和ET帧分别送入TT帧数据缓存FIFO和ET帧数据缓存FIFO中,将ET帧存入FIFO的同时记录存入的ET帧的帧长,将ET帧的帧长信息存入ET帧描述符缓存FIFO中;
将流量控制模块发送的PT帧存入PT帧数据缓存FIFO中。
步骤2:0端口以太网帧调度模块根据TT帧的调度表、各类帧数据和描述符缓存FIFO非空指示以及本地时钟来将各类帧从0端口发送出去;
如图2、3、5、6、7、8所示,若本地时钟等于调度发送时刻点(TT帧事先规划好要发送的本地时钟时刻点)且TT帧数据缓存FIFO中有数据,则发送TT帧;
若本地时钟不在LT1帧保护带内且LT1帧数据缓存FIFO中有数据,则发送LT1帧,发送的同时会根据发送LT1帧时刻本地计时器值与LT1帧描述符缓存FIFO中的描述符的差值来修改LT1帧中的time1字段和CRC字段;其中,保护带为本地时钟在该区间内不允许发送帧的时间区间,用来保证TT帧在调度发送时刻点能准时发送,保护带的长度与对应帧的长度有关,其中LT0帧、LT1帧、PCF帧和PT帧的长度固定为64Byte,ET帧的长度由ET帧描述符缓存FIFO提供;
若本地时钟不在LT0帧保护带内且LT0帧数据缓存FIFO中有数据,则发送LT0帧,发送的同时会将发送LT0帧时刻本地计时器值写入LT0帧中的time0字段并修改CRC字段;
若本地时钟不在PCF帧保护带内且PCF帧数据缓存FIFO中有数据,则发送PCF帧,发送的同时会根据发送PCF帧时刻本地计时器值与PCF帧描述符缓存FIFO中的描述符的差值加上PCF帧中透明时钟字段Transparent Clock来修改PCF帧中的透明时钟字段Transparent Clock和CRC字段;
若本地时钟不在PT帧保护带内且PT帧数据缓存FIFO中有数据,则发送PT帧;
若本地时钟不在ET帧保护带内且ET帧数据缓存FIFO中有数据且暂停发送信号Pause Flag无效,则发送ET帧。
步骤3:1端口以太网帧分类模块接收到以太网帧,根据以太网帧的TYPE字段,将以太网帧分为各类不同的帧,再将各类帧分别送往对应的各类模块;
若TYPE字段为0x88d7,则将该TT帧送往以1端口太网数据收发模块,以太网数据收发模块根据TT帧调度表调度接收该TT帧;其中,调度接收指若接收到TT帧时的本地时钟值在调度表的起始时刻与终止时刻之间,则接收该TT帧,若否,则丢弃该TT帧;
若TYPE字段为0x88f0,则将该LT0帧送往1端口链路延时测量模块,链路延时测量模块提取该帧的time0字段,将该字段赋给新生成的LT1帧的time0字段,链路延时测量模块将新生成的LT1帧送往1端口的以太网帧调度模块;
若TYPE字段为0x88f1,则将该LT1帧送往1端口链路延时测量模块,链路延时测量模块记录收到该LT1帧的本地计时器值T7,提取该LT1帧的time0字段和time1字段,根据T7、time0、time1值计算链路延时Link Latency,将链路延时值Link Latency送往时间同步模块;
若TPYE字段为0x891d,则将该PCF帧送往1端口时间同步模块,时间同步模块用该帧修改本地时钟,为1端口以太网帧调度模块和以太网数据收发模块提供同步后的本地时钟;
若TYPE字段为0x8808,则将该PT帧送往1端口流量控制模块,流量控制模块解析出该帧的Parameter字段,并根据Parameter字段的值将送往1端口以太网帧调度模块的暂停发送信号Pause Flag拉高Pause Count时间,Pause Count值与Parameter字段的值相关,Parameter的单位为传输512bit数据的时间,Pause Count单位为1个时钟周期,例如,千兆以太网中,1个时钟周期传输数据为8bit,所以Pause Count=64*Parameter;
若TYPE字段为0x0800,则将该ET帧送往1端口以太网数据收发模块,以太网数据收发模块将该帧存入ET帧缓存FIFO中供直接内存存取DMA逻辑提取,同时以太网数据收发模块会检查ET帧缓存FIFO,若ET帧缓存FIFO中数据量达到预定值,生成预满信号Almost Full送往1端口流量控制模块。
本实施例时间同步模块中同步模式方法是6802协议,本实施例为适应AS6802协议的分类调度方法,相似协议均可使用。
如图1、4所示,发送方向时,T0->T1(LT0帧)和T4->T5(LT1帧),接收方向时,T2->T3(LT0帧)和T6->T7(LT1帧);因为1端口没有0端口的时钟,1端口只能提供驻留时间,因此采用T7-T1计算设备间的链路延时,根据链路延时测量模块的链路延时测量帧在时间T0生成LT0帧,收到LT0帧生成LT1帧,链路延时测量模块在T7接收并解析LT1帧,从硬件实现计算链路延时。通过硬件生成链路测量帧在每个设备端口的硬件底层实现链路延时的测量,不需要上层软件的参与,降低了上层软件的逻辑复杂度和软硬件逻辑的耦合度;因为逻辑完全用硬件实现,一次往返测量的时间长度大大降低,降低了其中链路延时帧在对端滞留的时间,提高了测量的精度。
实施例3
基于实施例1或者2,提出一种装置,所述装置,包括
以太网帧调度模块,用于接收上层模块发送的各类帧数据和指示信号,将帧数据存入对应缓存FIFO中,然后根据TT帧的调度表、各类帧数据、描述符缓存FIFO状态以及本地时钟发送各类帧;
以太网帧分类模块,用于接收以太网帧,根据以太网帧的TYPE字段将各类帧分别发送至对应的上层模块;
链路延时测量模块,用于生成LT0帧和LT1帧测量本端口和对端口的链路延时,周期性的为本地的时间同步模块提供链路延时;
时间同步模块,用于接收到以太网帧分类模块发送的PCF帧修正本地时钟,为本地的以太网帧调度模块和以太网数据收发模块提供同步后的本地时钟;用于发送PCF帧至以太网帧调度模块。
还包括
以太网数据收发模块,用于接收以太网帧分类模块发送的TT帧和ET帧;用于发送TT帧和ET帧至以太网帧调度模块,并对TT帧进行调度接收处理和检查ET帧缓存FIFO,若ET帧缓存FIFO中数据量达到预定值,生成预满信号Almost Full发送至流量控制模块;
流量控制模块,用于对接收预满信号Almost Full后生成PT帧,通过本端口的以太网帧调度模块、对端口的以太网帧分类模块发送至对端口的流量控制模块,对端口的流量控制模块拉高暂停发送信号Pause Flag,对端口的以太网帧调度模块对应暂停发送ET帧。
如图1所示,图1(a)为接收帧方向装置各模块的连接图,图1(b)为发送帧方向装置各模块的连接图。各个模块的连接如上述,其中调度方法如实施例1或者2所述,在此不进行赘述。
链路延时测量模块包括LT帧生成模块和LT帧解析模块。
LT帧生成模块,本地计时器值为T0且该模块没有在生成LT1帧时,该模块生成LT0帧并发送LT0帧;本地计时器值为T0且该模块有在生成LT1帧时,等待LT1帧生成完成后再生成LT0帧发送出去;该模块收到LT帧解析模块的生成LT1帧指示LT1_flag且该模块没有在生成LT0帧时,该模块生成LT1帧发送出去,LT1帧的time0字段由LT帧解析模块提供;该模块收到LT帧解析模块的生成LT1帧指示LT1_flag且该模块有在生成LT0帧时,等待LT0帧生成完成后再生成LT1帧发送出去,LT1帧的time0字段由LT帧解析模块提供。
LT帧解析模块,接收到LT0帧时,解析出LT0帧的time0字段,将生成LT1帧指示LT1_flag和time0字段送往LT帧生成模块;接收到LT1帧时,解析出LT1帧的time0字段和time1字段,结合本地计时器值T7计算出链路延时值Link Latency。
流量控制模块包括PT帧生成模块和PT帧解析模块。
PT帧生成模块收到预满信号Almost Full时,生成PT帧发送出去,PT帧中的Parameter字段可预先被配置为固定值;
PT帧解析模块收到PT帧时,解析该帧的Parameter字段,根据Parameter字段将暂停发送信号Pause Flag拉高Pause Count时间,Pause Count值根据Parameter字段的值计算。
综上,本发明设置链路延时测量模块,通过硬件生成链路延时测量帧,在每个设备端口的硬件底层实现链路延时的测量,不需要上层软件的参与,降低了上层软件的逻辑复杂度和软硬件逻辑的耦合度;因为逻辑完全用硬件实现,一次往返测量的时间长度大大降低,降低了其中链路延时帧在对端滞留的时间,提高了测量的精度;例如,在对端滞留时间1ms且时钟抖动为百万分之二十时,实际计算的链路延时误差为20ns,这会对时钟精度有明显影响,本法用硬件可以实现对端滞留时间小于16us,链路延时误差小于0.32ns,对时钟精度影响明显降低;
设置流量控制模块在调度发送ET帧的同时对流量控制帧做调度发送处理,防止ET帧阻塞流量控制帧,保证了流量控制被及时执行,保证了时间触发帧正常传输的同时也最大化提高了普通以太网帧的传输速率和稳定性。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (8)

1.一种适应时间触发网络的分类调度方法,其特征在于:包括如下步骤:
本端口的以太网帧调度模块将接收的以太网帧发送至对端口的以太网帧分类模块,对端口的以太网帧分类模块将接收的以太网帧分类后发送至对应上层模块完成各类帧调度;
所述以太网帧包括链路延时测量模块生成的LT0帧和LT1帧,具体如下:
本端口的以太网帧调度模块将本端口链路延时测量模块生成并发送的LT0帧发送至对端口的以太网帧分类模块,
对端口的以太网帧分类模块将接收的LT0帧发送至对端口的链路延时测量模块,
对端口的链路延时测量模块根据LT0帧生成LT1帧后,将LT1帧发送至对端口的以太网帧调度模块;
对端口的以太网帧调度模块将所述LT1帧发送至本端口的以太网帧分类模块,
本端口的以太网帧分类模块将所述LT1帧发送至本端口的链路延时测量模块,本端口的链路延时测量模块接收LT1帧,解析LT1帧计算链路延时,
将所述链路延时发送至时间同步模块。
2.根据权利要求1所述的一种适应时间触发网络的分类调度方法,其特征在于:所述链路延时计算包括如下步骤:
对端口的链路延时测量模块提取LT0帧的time0字段,将所述time0字段赋值给生成的LT1帧的time0字段;
本端口的链路延时测量模块接收LT1帧时记录此时刻为T7时刻,解析LT1帧提取time0和time1字段,根据T7、time0和time1计算链路延时值Link Latency,计算公式如下:
T7-T1=t1+t2+t3+t4+t5+t6
T1=time0,t4=time1
t1=t5=Link Latency=(T7-time0-t2-t3-time1-t6)/2
其中,t0~t6为T1~T7时刻点之间的时间长度,其中t2、t3和t6为可测的固定值,T0时刻为本端口的链路延时测量模块发送LT0帧时本端口的本地计时器值,T1时刻为本端口的以太网帧调度模块发送LT0帧时本端口的本地计时器值,T2时刻为对端口的以太网帧分类模块接收LT0帧时对端口的本地计时器值,T3时刻为对端口的链路延时测量模块接收LT0帧时对端口的本地计时器值,T4时刻为对端口的链路延时测量模块发送LT1帧时对端口的本地计时器值,T5时刻为对端口的以太网帧调度模块发送LT1帧时对端口的本地计时器值,T6时刻为本端口的以太网帧分类模块接收LT1帧时本端口的本地计时器值,T7时刻为本端口的链路延时测量模块接收LT1帧时本端口的本地计时器值;链路延时测量模块到本端口的以太网帧调度模块的路径延时默认为0,T4时刻也为对端口的以太网帧调度模块接收LT1帧时对端口的本地计时器值。
3.根据权利要求1所述的一种适应时间触发网络的分类调度方法,其特征在于:所述以太网帧还包括时间同步模块收发的PCF帧、流量控制模块收发的PT帧、以太网数据收发模块的ET帧和TT帧,上述各类帧调度包括如下步骤:
步骤a:本端口/对端口的以太网帧调度模块接收以太网帧后,获取LT1帧、PCF帧和ET帧的描述符信息,将前述帧数据和描述符信息存入对应的缓存FIFO中;
步骤b:本端口/对端口的以太网帧调度模块根据TT帧的调度表、前述帧数据、描述符缓存FIFO状态以及本地时钟发送以太网帧至对端口/本端口的以太网帧分类模块;
步骤c:对端口/本端口的以太网帧分类模块接收以太网帧,根据以太网帧的TYPE字段发送各类帧至对端口/本端口的上层模块。
4.根据权利要求3所述的一种适应时间触发网络的分类调度方法,其特征在于:所述步骤a包括如下步骤:
将LT0帧和LT1帧分别送入LT0帧数据缓存FIFO和LT1帧数据缓存FIFO,将收到LT1帧时的本地计时器值T4存入LT1描述符缓存FIFO;
将时间同步模块发送的PCF帧和当前时刻本地计时器值分别存入PCF帧数据缓存FIFO和PCF帧描述符缓存FIFO中;
将以太网数据收发模块发送的TT帧和ET帧分别存入TT帧数据缓存FIFO和ET帧数据缓存FIFO中,将ET帧存入FIFO的同时记录存入的ET帧的帧长,将ET帧的帧长信息存入ET帧描述符缓存FIFO中;
将流量控制模块发送的PT帧存入PT帧数据缓存FIFO中。
5.根据权利要求3所述的一种适应时间触发网络的分类调度方法,其特征在于:所述步骤b包括如下步骤:
若本地时钟不在LT1帧保护带内且LT1帧数据缓存FIFO中有数据,则发送LT1帧,发送的同时根据发送LT1帧时刻本地计时器值T5与LT1帧描述符缓存FIFO中的计时器值T4的差值t4修改LT1帧中的time1字段和CRC字段;
若本地时钟不在LT0帧保护带内且LT0帧数据缓存FIFO中有数据,则发送LT0帧,发送的同时根据发送LT0帧时刻本地计时器值T1修改LT0帧中的time0字段和CRC字段;
若本地时钟等于调度发送时刻点且TT帧数据缓存FIFO中有数据,则发送TT帧;
若本地时钟不在PCF帧保护带内且PCF帧数据缓存FIFO中有数据,则发送PCF帧,发送的同时会根据发送PCF帧时刻本地计时器值与PCF帧描述符缓存FIFO中的描述符的差值加上PCF帧中透明时钟字段Transparent Clock修改PCF帧中的透明时钟字段TransparentClock和CRC字段;
若本地时钟不在PT帧保护带内且PT帧数据缓存FIFO中有数据,则发送PT帧;
若本地时钟不在ET帧保护带内且ET帧数据缓存FIFO中有数据且暂停发送信号PauseFlag无效,则发送ET帧。
6.根据权利要求3所述的一种适应时间触发网络的分类调度方法,其特征在于:所述步骤c包括如下步骤:
若TYPE字段为0x88f0,则将该LT0帧发送至链路延时测量模块,链路延时测量模块提取该帧的time0字段,将该字段赋给新生成的LT1帧的time0字段,链路延时测量模块将新生成的LT1帧发送至以太网帧调度模块;
若TYPE字段为0x88f1,则将LT1帧发送至链路延时测量模块,链路延时测量模块记录收到该LT1帧的本地计时器值T7,并提取该LT1帧的time0字段和time1字段;
若TYPE字段为0x88d7,则将该TT帧发送至以太网数据收发模块,以太网数据收发模块根据TT帧调度表调度接收该TT帧;
若TPYE字段为0x891d,则将该PCF帧发送至时间同步模块,时间同步模块用该帧修改本地时钟,为以太网帧调度模块和以太网数据收发模块提供同步后的本地时钟;
若TYPE字段为0x8808,则将该PT帧发送至流量控制模块,流量控制模块解析出该帧的Parameter字段,并根据Parameter字段的值将发送至以太网帧调度模块的暂停发送信号Pause Flag拉高Pause Count个时钟周期;
若TYPE字段为0x0800,则将该ET帧发送至以太网数据收发模块,以太网数据收发模块将该帧存入ET帧缓存FIFO中,同时以太网数据收发模块检查ET帧缓存FIFO,若ET帧缓存FIFO中数据量达到预定值,生成预满信号Almost Full发送至流量控制模块。
7.一种基于权利要求1上述方法的装置,其特征在于:包括
以太网帧调度模块,用于接收上层模块发送的各类帧数据和指示信号,将帧数据存入对应缓存FIFO中,然后根据TT帧的调度表、各类帧数据、描述符缓存FIFO状态以及本地时钟发送各类帧;
以太网帧分类模块,用于接收以太网帧,根据以太网帧的TYPE字段将各类帧分别发送至对应的上层模块;
链路延时测量模块,用于生成LT0帧和LT1帧测量本端口和对端口的链路延时,周期性的为本地的时间同步模块提供链路延时;
时间同步模块,用于接收到以太网帧分类模块发送的PCF帧修正本地时钟,为本地的以太网帧调度模块和以太网数据收发模块提供同步后的本地时钟;用于发送PCF帧至以太网帧调度模块。
8.根据权利要求7所述的装置,其特征在于:还包括
以太网数据收发模块,用于接收以太网帧分类模块发送的TT帧和ET帧;用于发送TT帧和ET帧至以太网帧调度模块,并对TT帧进行调度接收处理和检查ET帧缓存FIFO,若ET帧缓存FIFO中数据量达到预定值,生成预满信号Almost Full发送至流量控制模块;
流量控制模块,用于对接收预满信号Almost Full后生成PT帧,通过本端口的以太网帧调度模块、对端口的以太网帧分类模块发送至对端口的流量控制模块,对端口的流量控制模块拉高暂停发送信号Pause Flag,对端口的以太网帧调度模块对应暂停发送ET帧。
CN201910790676.8A 2019-08-26 2019-08-26 一种适应时间触发网络的分类调度方法及装置 Active CN110505157B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910790676.8A CN110505157B (zh) 2019-08-26 2019-08-26 一种适应时间触发网络的分类调度方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910790676.8A CN110505157B (zh) 2019-08-26 2019-08-26 一种适应时间触发网络的分类调度方法及装置

Publications (2)

Publication Number Publication Date
CN110505157A true CN110505157A (zh) 2019-11-26
CN110505157B CN110505157B (zh) 2021-04-16

Family

ID=68589499

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910790676.8A Active CN110505157B (zh) 2019-08-26 2019-08-26 一种适应时间触发网络的分类调度方法及装置

Country Status (1)

Country Link
CN (1) CN110505157B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111698059A (zh) * 2020-05-28 2020-09-22 中国航空工业集团公司西安航空计算技术研究所 协议控制帧无冲突传输方法
CN112532427A (zh) * 2020-11-05 2021-03-19 中国航空工业集团公司西安航空计算技术研究所 一种时间触发通信网络的规划调度方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107147465A (zh) * 2017-06-30 2017-09-08 西安微电子技术研究所 一种面向时间触发网络的交换机时钟同步控制器及控制方法
CN107425936A (zh) * 2017-06-15 2017-12-01 西安微电子技术研究所 一种透明时钟测量装置
CN107819539A (zh) * 2017-11-17 2018-03-20 西安电子科技大学 一种实现时间触发以太网端系统的装置及方法
CN108683470A (zh) * 2018-03-29 2018-10-19 北京控制工程研究所 一种获取和更新透明时钟的电路及方法
CN108712289A (zh) * 2018-05-24 2018-10-26 西安电子科技大学 采用硬件实现的tte端系统网络管理装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107425936A (zh) * 2017-06-15 2017-12-01 西安微电子技术研究所 一种透明时钟测量装置
CN107147465A (zh) * 2017-06-30 2017-09-08 西安微电子技术研究所 一种面向时间触发网络的交换机时钟同步控制器及控制方法
CN107819539A (zh) * 2017-11-17 2018-03-20 西安电子科技大学 一种实现时间触发以太网端系统的装置及方法
CN108683470A (zh) * 2018-03-29 2018-10-19 北京控制工程研究所 一种获取和更新透明时钟的电路及方法
CN108712289A (zh) * 2018-05-24 2018-10-26 西安电子科技大学 采用硬件实现的tte端系统网络管理装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111698059A (zh) * 2020-05-28 2020-09-22 中国航空工业集团公司西安航空计算技术研究所 协议控制帧无冲突传输方法
CN111698059B (zh) * 2020-05-28 2023-03-31 中国航空工业集团公司西安航空计算技术研究所 协议控制帧无冲突传输方法
CN112532427A (zh) * 2020-11-05 2021-03-19 中国航空工业集团公司西安航空计算技术研究所 一种时间触发通信网络的规划调度方法
CN112532427B (zh) * 2020-11-05 2023-03-14 中国航空工业集团公司西安航空计算技术研究所 一种时间触发通信网络的规划调度方法

Also Published As

Publication number Publication date
CN110505157B (zh) 2021-04-16

Similar Documents

Publication Publication Date Title
CN102792658B (zh) 在通信网络中进行时间测量
US7684326B2 (en) Methods and structures for improved buffer management and dynamic adaptation of flow control status in high-speed communication networks
US8068429B2 (en) Transmit scheduling
CN112511376B (zh) 一种tsn网络转发时间特性的测量方法及终端
CN108322280B (zh) 一种分布式计算机网络时钟同步延时补偿方法
US7355969B2 (en) Line card port protection rate limiter circuitry
EP2976866B1 (en) Timestamp correction in a multi-lane communication link with skew
Wyllie et al. Electronics architecture of the LHCb upgrade
CN110505157A (zh) 一种适应时间触发网络的分类调度方法及装置
CN105794161B (zh) 用于飞行器的数据通信网络
WO2021036915A1 (zh) 确定性网络中的发送周期的确定方法和装置
CN106464559A (zh) 用于分布式控制系统的高速嵌入式协议
Kemayo et al. Improving AFDX end-to-end delays analysis
CN203151539U (zh) 一种afdx端系统虚拟链路层ip核
CN108429707B (zh) 一种适应不同传输速率的时间触发业务转发器及方法
CN103746878A (zh) 一种测定SpaceWire数据包的传输时间的仿真系统
Wang et al. Analysis of burstiness and jitter in real-time communications
US8630181B2 (en) Communication system and corresponding integrated circuit and method
CN103490995B (zh) 报文发送方法和装置
CN103888211B (zh) 一种交叉芯片间进行数据传输的方法及装置
CN106209691B (zh) 一种具备独立mac源地址的网络端口镜像方法
US7512075B1 (en) Method and apparatus for collecting statistical information from a plurality of packet processing blocks
CN101252513A (zh) 保障服务质量的片上网络带宽资源调度方法
CN105933086B (zh) 在媒体访问控制模块中实现精确时钟协议的方法和装置
US7085198B2 (en) Method for producing computer-assisted real-time systems

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant