一种FlexRay通信控制器时钟周期控制方法与流程

文档序号:12492039阅读:1376来源:国知局

本发明涉及一种FlexRay通信控制器时钟周期控制方法,特别是涉及一种适用于车载总线技术的FlexRay通信控制器时钟周期控制方法。



背景技术:

当前广泛应用的车载总线技术(如CAN、VAN、LIN等总线)由于缺少确定性、同步性及容错机制等并不能满足要求,FlexRay联盟推进了FlexRay的标准化,使之成为了新一代汽车内部网络通信协议。FlexRay关注的是当今汽车行业的一些核心需求,包括更快的数据速率、更灵活的数据通信、更全面的拓扑选择和容错运算。FlexRay总线中的每个接入端称为节点。节点主要由电源供给系统(Power Supply)、总线驱动器(Bus Driver)、固化有FlexRay通信协议的通信控制器(Communication Controller)及主机(Host)4个部分组成。通信控制器是通信节点的核心器件。它主要的功能有媒体接入控制、时钟同步、编解码、协议操作控制等。媒体接入控制功能是通信控制器的核心功能,解决数据进入FlexRay通信控制器的方式,为通信控制器的编解码功能做好时间准备以及数据准备。其中,时钟周期的控制有为核心的核心,是保证通信的精确性和稳定性的关键。

技术实现要素:

本发明要解决的技术问题是提供一种通信精确性和稳定性更高的FlexRay通信控制器时钟周期控制方法。

本发明采用的技术方案如下:一种FlexRay通信控制器时钟周期控制方法,具体方法为:时钟产生模块根据用户的配置信息,对控制器晶振产生的最小时钟节拍按照配置协议规定形成系统所需要的时钟周期;控制模块根据用户配置的信息将时钟周期进一步将时隙划分为静态段(static segment)、动态段(dynamic seg ment)、符号窗口(symbol window)和网络空闲段(network idle time)4个独立的时间段;计时器模块根据用户配置信息实现计时功能,记录媒体接入控制所需要的时间。

作为优选,具体方法步骤为:

一、时钟产生模块读取配置信息,包括gdstaticSloc、gNumberOfMinislots、gdSymbolWindow、gdActionPointOffset和gdMinislotActionPointOffset;

二、判断是否有周期信号,实则进入下一步,否则进入上一步;

三、对静态段进行计数;

四、判断静态段计数是否大于gNumberOfStaticSlots,是则进入下一步,否则进入上一步;

五、对动态段进行计数;

六、判断动态段计数是否大于gNumberOfMinislots,是则进入下一步,否则返回上一步;

七、实现符号窗口;

八、判断符号窗口是否为0,是则进入下一步,否则进入上一步;

九、判断网络空闲段是否结束,是则完成本时钟周期,否则进入步骤一。

作为优选,所述方法还包括:时钟产生模块根据配置信息进行初始化操作,然后等待晶振的最小时钟节拍(vMicrotick);当最小时钟节拍大于等于pMicroPerCycle/gMacroPerCyclc-1时,时钟产生模块产生时钟周期。

作为优选,所述方法还包括:控制模块从内存中读取所需要的配置信息,包括gdstaticSloc、gNumberOfMinislo ts、gdSymbolWindow、gdActionPointOffset和gdMinislotActionPointOffset;控制模块接收到时钟产生模块提供的周期开始信号时,根据gdstaticSloc实现周期中的静态段。

作为优选,所述方法还包括:所述静态段使用静态槽实现TDMA,以协调数据的传输。

作为优选,所述方法还包括:在每个通道,通信控制器上设置一个槽计数器(vslotcountcr),统计静态槽的个数;当时钟周期开始的时候,设置槽计数器的值为1;当槽结束的时候,槽计数器的值加1;对于每个静态槽,FlexRay通信控制器根据用户的配置和MAC模块当前的操作模式决定是否为编解码模块提供数据。

作为优选,所述方法还包括:所述控制模块根据gNumberOfMinislots实现周期中的动态段;所述动态段使用动态槽实现事件触发的媒体接入方法,以协调数据的发送。

作为优选,所述方法还包括:通信控制器在每个通道上设置一个动态槽计数器,统计动态槽的个数;每个动态槽根据zMinislot来计数,当有数据传送时,动态槽能够占用多个zMinislot;当没有数据传送时,动态槽占用一个zMinislot。

作为优选,所述方法还包括:所述控制模块根据gdSymbolWindow实现周期中的符号窗口。

作为优选,所述方法还包括:所述控制模块一个周期中剩下的时间为网络空闲段。

与现有技术相比,本发明的有益效果是保证了FlexRay通信控制器通信的精确性和稳定性。

附图说明

图1为本发明其中一实施例FlexRay通信控制器时钟周期控制流程图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

本说明书(包括摘要和附图)中公开的任一特征,除非特别叙述,均可被其他等效或者具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。

一种FlexRay通信控制器时钟周期控制方法,具体方法为:时钟产生模块根据用户的配置信息,对控制器晶振产生的最小时钟节拍按照配置协议规定形成系统所需要的时钟周期;控制模块根据用户配置的信息将时钟周期进一步将时隙划分为静态段(static segment)、动态段(dynamic seg ment)、符号窗口(symbol window)和网络空闲段(network idle time)4个独立的时间段;计时器模块根据用户配置信息实现计时功能,记录媒体接入控制所需要的时间。

如图1所示,具体方法步骤为:

一、时钟产生模块读取配置信息,包括gdstaticSloc、gNumberOfMinislots、gdSymbolWindow、gdActionPointOffset和gdMinislotActionPointOffset;

二、判断是否有周期信号,实则进入下一步,否则进入上一步;

三、对静态段进行计数;

四、判断静态段计数是否大于gNumberOfStaticSlots,是则进入下一步,否则进入上一步;

五、对动态段进行计数;

六、判断动态段计数是否大于gNumberOfMinislots,是则进入下一步,否则返回上一步;

七、实现符号窗口;

八、判断符号窗口是否为0,是则进入下一步,否则进入上一步;

九、判断网络空闲段是否结束,是则完成本时钟周期,否则进入步骤一。

时钟产生模块实现媒体接入控制所需要的时钟周期,为编解码功能做好时间准备,同时把该信息传递给控制模块。

所述方法还包括:时钟产生模块根据配置信息进行初始化操作,然后等待晶振的最小时钟节拍(vMicrotick);当最小时钟节拍大于等于pMicroPerCycle/gMacroPerCyclc-1时,时钟产生模块产生时钟周期。

所述方法还包括:控制模块从内存中读取所需要的配置信息,包括gdstaticSloc、gNumberOfMinislo ts、gdSymbolWindow、gdActionPointOffset和gdMinislotActionPointOffset;控制模块接收到时钟产生模块提供的周期开始信号时,根据gdstaticSloc实现周期中的静态段。

所述方法还包括:所述静态段使用静态槽实现TDMA,以协调数据的传输。

所述方法还包括:在每个通道,通信控制器上设置一个槽计数器(vslotcountcr),统计静态槽的个数;当时钟周期开始的时候,设置槽计数器的值为1;当槽结束的时候,槽计数器的值加1;对于每个静态槽,FlexRay通信控制器根据用户的配置和MAC模块当前的操作模式决定是否为编解码模块提供数据。对于一个具体的簇,静态槽的总数是一定的,由参数gNumberOfStaticSlots确定。

所述方法还包括:所述控制模块根据gNumberOfMinislots实现周期中的动态段;所述动态段使用动态槽实现事件触发的媒体接入方法,以协调数据的发送。

所述方法还包括:通信控制器在每个通道上设置一个动态槽计数器,统计动态槽的个数;每个动态槽根据zMinislot来计数,当有数据传送时,动态槽能够占用多个zMinislot;当没有数据传送时,动态槽占用一个zMinislot。所以动态槽的大小是根据是否有数据发送决定的。对于一个具体的簇,zMinisl ot的总数是一定的,由参数gNimberOfMinislots确定。

所述方法还包括:所述控制模块根据gdSymbolWindow实现周期中的符号窗口。

所述方法还包括:所述控制模块一个周期中剩下的时间为网络空闲段。

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