一种时间触发以太网交换控制器及其控制方法与流程

文档序号:12908061阅读:435来源:国知局
一种时间触发以太网交换控制器及其控制方法与流程

本发明属于时间触发通信领域,具体涉及一种时间触发以太网交换控制器及其控制方法。



背景技术:

目前使用的以太网交换控制器,适应通用以太网标准,采用事件触发方式,不能保证数据的绝对可靠传输,容易出现网络拥塞,造成数据帧丢失或者网络延迟大于预期范围。

时间触发交换控制器采用时间触发方式,保证网络各节点的时间同步,在此基础上通过合理规划网络带宽,能够保证数据传输的可靠性与实时性。

在已经公开的相关专利成果中:时间触发网络中的集群耦合器(中国专利cn101512987a)从理论上介绍了一种不同集群之间进行通信的方法;网络和时间触发网络中集群时钟同步的方法(中国专利cn101512944a)提出了一种基于时隙的时间触发协议工作网络;一种基于时间触发以太网的数据传输方法及节点设备(中国专利cn103001722a)提出了一种基于时间触发网络的数据传输方法。目前关于时间触发以太网交换控制器尚无相关的技术记载,而通用以太网通信和交换方式不能满足对高可靠性、高确定性、高实时性的要求。



技术实现要素:

本发明的目的在于针对上述现有技术中的问题,提供一种时间触发以太网交换控制器及其控制方法,支持亚微秒级时钟同步,通过虚拟链路和时槽划分相结合,采用多优先级调度和时槽锁定技术,保证时间触发帧的优先传输,同时支持故障隔离和恢复,避免网络拥塞。

为了实现上述目的,本发明时间触发以太网交换控制器采用的技术方案为:

包括用于实现外部总线与片内总线数据交换的总线接口模块、用于进行数据调试的端口镜像模块、用于对所接收数据帧进行关键数据解析的交换端口模块、用于还原同步数据帧时钟固化点的时钟固化模块;还包括tt帧传输时刻计算模块、tt交换控制模块、be交换控制模块以及与时钟固化模块相连的时钟同步模块;所述的总线接口模块双向连接端口镜像模块、交换端口模块和时钟同步模块;交换端口模块分别与端口镜像模块、tt帧传输时刻计算模块、tt交换控制模块以及be交换控制模块进行双向连接;时钟固化模块单向接收交换端口模块的输出信号,tt帧传输时刻计算模块单向接收总线接口模块的请求信号;所述的交换端口模块由多个交换子端口模块组成,be交换控制模块包括交换仲裁和存储控制两部分。

交换端口模块由12个交换子端口模块组成,每个交换子端口均包括用于从网络上接收数据或者向网络发送数据的mac控制模块,mac控制模块双向连接过滤模块、流量管理模块以及发送仲裁模块;过滤模块与流量管理模块分别双向连接转发配置表模块,过滤模块收到的数据与转发配置表模块进行比较,发送仲裁模块分别双向连接pcf发送缓存模块、be发送缓存模块以及tt发送缓存模块。

本发明时间触发以太网交换控制器的控制方法,包括步骤:

总线接口模块进行外部总线与控制器内部模块的数据交互;

交换端口模块对端口接收到的数据帧进行关键数据解析,交换端口根据帧类型和虚拟链路号从转发配置表查找对应的配置信息,对当前数据帧进行过滤和流量管理,并为其他模块提供控制信息;pcf发送缓存模块、be发送缓存模块及tt发送缓存模块的数据帧发送请求通过发送仲裁模块进行优先级仲裁,获得仲裁的发送缓存占据总线来发送数据;

时钟同步模块收集时钟固化模块计算出的时钟固化点,通过时钟压缩函数计算网络的相对平均时刻,根据相对平均时刻与交换控制器本地时钟的差异,修正交换控制器本地时钟,并广播含有时钟信息的pcf帧,用于网络终端设备的时钟同步,对网络进行实时同步检测,完成同步故障的隔离与恢复;在网络处于时钟同步状态时,tt交换控制模块响应各端口tt帧的交换请求,判断目标端口的tt缓存状态,给出应答;be交换控制模块的交换仲裁部分根据各端口的交换请求和预设的优先级,给出应答,将端口数据发送到输出端口队列,同时对各输出队列的输出请求给出应答,将数据从输出端口队列发送到交换端口模块;当交换端口收到合法的tt帧时,向tt帧传输时刻计算模块发出查询请求,获得该tt帧的接收窗口,若接收窗口有效,表示该tt帧到达交换机时刻合法,进行交换,当交换端口模块收到tt交换控制模块发送的数据帧时,解析出该数据帧的虚拟链路号,向tt帧传输时刻计算模块发出查询申请,获得该tt帧的发送申请时刻和实际发送时刻点;

对各交换子端口模块的故障进行错误计数,若某交换子端口模块的错误计数大于预设值,则将该交换子端口模块屏蔽,再重新启动,避免网络拥塞。

当pcf发送缓存模块、be发送缓存模块及tt发送缓存模块的数据帧发送请求进行优先级仲裁时,pcf帧和be帧发送缓存数据有效,向发送仲裁模块提交相应的发送请求,tt帧发送缓存存放一帧数据,首先解析出tt帧虚拟链路号,向tt帧传输时刻计算模块发出查询请求,得到tt帧发送申请时刻和实际发送时刻点,当tt帧发送申请时刻有效,提交tt发送请求,tt帧发送请求得到应答后,锁定当前时槽,等待实际发送时刻点到达后,将tt帧发送出去。tt帧发送申请时刻比实际发送时刻点提前一个最大帧长时间,保证tt帧发送申请时刻到达时,发送链路空闲。

所述tt交换控制模块响应各端口tt帧的交换请求时,若等待目标端口的tt缓存状态为空,进行数据转存,若等待时间超出设定最大值,则对当前数据进行弃帧处理。

所述的时钟同步模块采用三级流水方式实现时钟压缩函数。

所述的总线接口模块提供wishbone总线接口,通过wishbone总线接口进行外部总线与控制器内部模块的数据交互。

与现有技术相比,本发明具有如下的有益效果:通过交换端口模块对数据进行合法性判断和流量管理,保证数据的可靠传输。tt帧传输时刻计算模块完成tt帧传输时刻的硬件实时计算,简化了数据传输时刻配置。通过虚拟链路与时槽划分相结合的方案,采用多优先级调度和时槽锁定技术,保证tt帧的优先实时交换。时钟同步模块通过流水方式实现时间压缩处理,提高了时钟压缩效率,并且支持故障隔离和恢复,包括“同步检测-同步故障-重启同步-恢复同步”,以及故障端口关闭与自恢复。本发明兼容标准以太网数据帧交换,支持普通以太网设备无缝接入,时钟同步能够达到亚微秒级,保证时间触发帧的优先传输,具有时钟同步的故障检测、恢复以及交换端口的故障隔离、恢复功能,延迟低,确定性好。

附图说明

图1本发明交换控制器的结构框图;

图2本发明交换子端口模块的结构框图;

附图中:1-总线接口模块;2-交换端口模块;3-时钟固化模块;4-时钟同步模块;5-tt帧传输时刻计算模块;6-tt交换控制模块;7-be交换控制模块;8-端口镜像模块;9-mac控制模块;10-转发配置表模块;11-过滤模块;12-流量管理模块;13-pcf发送缓存模块;14-be发送缓存模块;15-tt发送缓存模块;16-发送仲裁模块。

具体实施方式

下面结合附图对本发明做进一步的详细说明。

参见图1,本发明以太网交换控制器的总线接口模块1实现了外部总线与片内总线的数据交换,外部总线通过总线接口模块1可以访问交换端口模块2、时钟同步模块4、tt帧传输时刻计算模块5、端口镜像模块8、转发配置表模块10。交换端口模块2是数据处理的核心模块,由12个交换子端口模块组成,每个交换子端口模块的结构如图2所示。

本发明控制器主要包括八个模块:总线接口模块1,交换端口模块2,tt交换控制模6块、be交换控制模块7、时钟固化模块3、时钟同步模块4、tt帧传输时刻计算模块5、端口镜像模块8。be为普通以太网帧,tt为时间触发以太网帧。

总线接口模块1提供wishbone总线接口。wishbone总线接口主要用于外部总线与片内总线的数据交换,实现控制器内部寄存器读写访问、转发配置表读写访问等。

交换端口模块2首先对端口接收到的数据帧进行关键数据解析,包括帧类型和虚拟链路号等。交换控制器支持三种帧类型,分别是pcf(同步)帧、tt帧、be帧。交换端口根据帧类型和虚拟链路号,从转发配置表查找对应的配置信息,对当前数据帧进行过滤和流量管理,并为其他模块提供控制信息。交换端口中的发送仲裁模块针对三组发送缓存(pcf、tt、be)的发送请求,进行优先级仲裁,获得仲裁的发送缓存可以占据总线,发送数据。pcf、be帧发送缓存数据有效时,向发送仲裁模块提交相应发送请求。tt帧发送缓存存放一帧数据时,首先解析出tt帧虚拟链路号,向tt帧传输时刻计算模块发出查询请求,得到tt帧发送申请时刻和实际发送时刻点。当tt帧发送申请时刻有效,提交tt发送请求。tt发送请求得到应答后,锁定当前时槽,等待实际发送时刻点到达后,将tt帧发送出去。发送申请时刻比实际发送时刻点提前一个最大帧长时间,保证tt帧发送申请时刻到达时,发送链路空闲。提前申请发送总线在牺牲一定带宽的情况下,保证了tt帧的实时传输。

时钟固化模块3由12个固化函数构成,对应各交换端口模块,主要功能是还原各pcf帧的相对发送时刻即固化点,并提交给时钟同步模块4。

时钟同步模块4实现交换控制器的时钟同步功能,主要功能是收集固化模块3计算出的时钟固化点,采用三级流水方式实现时钟压缩函数,计算网络的相对平均时刻;根据相对平均时刻与交换控制器本地时钟的差异,修正交换控制器本地时钟,并广播含有时钟信息的pcf帧,用于网络终端设备的时钟同步;对网络进行实时同步检测,完成同步故障隔离与恢复,即“同步检测-同步故障-重启同步-恢复同步”。

tt交换控制模块6实现tt帧的交换功能。在网络处于时钟同步状态时,tt交换控制模块6响应各端口tt帧的交换请求,判断目标端口的tt缓存状态,给出应答。等待目标端口的tt缓存状态为空时,进行数据转存,若等待时间过长,则对当前数据做弃帧处理。

be交换控制模块7包括交换仲裁和存储控制两部分。交换仲裁一方面根据各端口的交换请求和预设的优先级,给出应答,将端口数据发送到输出端口队列,另一方面对各输出队列的输出请求给出应答,将数据从输出端口队列发送到交换端口模块2。由于be帧优先级低,且为了兼容普通以太网交换,适应大数据量交换场景,需要较大的be交换缓存。本发明采用外部大容量缓存芯片作为be交换的外部缓存,存储控制接收交换仲裁的指令,实现外部缓存的访问,高效的进行be数据管理。

tt帧传输时刻计算模块5主要完成tt帧传输时刻的硬件实时计算。当交换端口收到合法的tt帧时,向tt帧传输时刻计算模块发出查询请求,获得该tt帧的接收窗口,若接收窗口有效,表示该tt帧到达交换机时刻合法,可以进行交换。当交换端口模块2收到tt交换控制模块发送的数据帧时,解析出该数据帧的虚拟链路号,向tt帧传输时刻计算模块5发出查询申请,获得该tt帧的发送申请时刻和实际发送时刻点。软件只需初始化每条虚拟链路的通信周期和首次接收时刻点和发送时刻点,其他时刻点均由硬件自动计算,简化了传输时刻点配置。端口镜像模块8主要用于调试,可以将输入端口或者输出端口映射到镜像端口上,也可以自定义触发条件,将符合条件的数据帧发送到镜像端口。控制器对各交换端口的故障进行错误计数,若大于预设值,将该端口屏蔽一定时间,再重新启动,避免网络拥塞。

本发明交换子端口模块通过mac控制模块9从网络上接收数据或者向网络发送数据。当从网络上收到数据后,mac控制模块9解析出帧类型以及虚链路号等信息,提交给过滤模块11和流量管理模块12。对于pcf帧,过滤模块11将收到的数据与转发配置表模块10中对应的配置转发信息进行比较,给出过滤标识。当过滤成功后,流量管理模块12查找转发配置表模块10中对应的配置转发信息,对当前数据帧进行流量管理,并给出流量管理标识。当过滤标识或流量管理标识为失败时,控制器向mac控制模块9产生弃包指令,清除mac控制模块9中的当前帧。当流量管理标识为成功时,向时钟固化模块3提交信息,启动时钟固化。时钟固化模块3将计算出的时间固化点提交给时钟同步模块4。时钟同步模块4收集所有固化点信息,对固化点压缩,计算出网络相对平均时间,修正控制器本地时钟,给出网络的同步状态,产生新的带有同步信息的pcf帧广播给各交换子模块的pcf发送缓存模块13。

对于tt帧,过滤模块11将收到的数据与转发配置表模块10中对应的配置转发信息比较,判断时钟同步模块4各处的控制器状态。当控制器处于同步态时,向tt帧传输时刻计算模块5提出tt接收时刻点申请,tt帧传输时刻计算模块5给出对应接收时刻点后,过滤模块11将接收时刻点与本地时间比较,给出过滤标识。当过滤失败时,向mac控制模块9产生弃包指令。过滤成功后,流量管理模块12对tt帧不进行流量管理,给出流量管理成功标识,向tt交换控制模块6发起tt交换请求。tt交换控制模块6响应各端口的交换请求,查询目标端口的tt发送缓存模块15状态,将数据发送到目标端口的tt发送缓存模块15。

对于be帧,过滤模块11将收到的数据与转发配置表模块10中对应的配置转发信息进行比较,给出过滤标识。当过滤成功后,流量管理模块12进行流量管理,给出流量管理标识。当过滤或流量管理失败时,向mac控制模块9发出弃包指令。当流量管理标识为成功时,向be交换控制模块7发起be交换请求。be交换控制模块7响应各端口请求,查询目标端口的be发送缓存模块14状态,将数据发送到目标端口的be发送缓存模块14。

当pcf发送缓存模块13存放一帧数据时,向发送仲裁模块16发起pcf发送请求。当be发送缓存模块14存放一帧数据时,向发送仲裁模块16发起be发送请求。当tt发送缓存模块15存放一帧数据时,向tt帧传输时刻计算模块5查询tt帧发送申请时刻和实际发送时刻,当本地时钟为发送申请时刻时,向发送仲裁模块16提出tt发送请求,获得响应后,锁定时槽,等待实际发送时刻到达后,将tt帧发送出去。发送申请时刻提前于实际发送时刻,保证tt帧的实时传输。发送仲裁模块16主要完成对三种发送请求的仲裁处理,保证优先级顺序从高到低为tt、pcf、be。发送仲裁模块16将通过仲裁的数据发送到mac控制模块9。mac控制模块9将数据转发给网络终端,完成数据交换。

端口镜像模块8根据总线接口模块1对其的读写配置,设置为输入端口镜像、输出端口镜像、自定义条件端口镜像,端口镜像模块8根据不同的设置,将相应的数据包转发出去。

交换端口模块2根据内部错误计数,将子端口的错误计数值与预设值比较,若大于预设值,将该子端口的mac控制模块9屏蔽一定时间再恢复通信。

根据上述方案,通过veriloghdl语言对控制器的逻辑设计进行描述,并完成逻辑布线;设计一款时间触发以太网交换控制器验证板,将控制器设计映射到可编程逻辑器件中实现,并对控制器功能进行测试,测试结果表明本发明具有很好的可实施性,且性能满足预期要求。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1