FlexRay笔记
1.FlexRay具有高速、可靠及安全的特点。FlexRay在物理上通过两条分开的总线通信,每一条的数据速率是10MBit/s。CAN网络最高性能极限为1Mbps,而FlexRay总数据速率可达到20Mbit/秒。FlexRay支持各种拓扑,如总线、星型和混合拓扑。
2.FlexRay节点的核心是ECU(Electronic Control Unit),是接入车载网络中的独立完成相应功能的控制单元。主要由电源供给系统(Power Supply)、主处理器(Host)、固化FlexRay通信控制器(Communication Controller)、可选的总线监控器(Bus Guardian)和总线驱动器(Bus Driver)组成。
主处理器提供和产生数据,并通过FlexRay通信控制器传送出去。其中BD和BG的个数对应于通道数,与通信控制器和微处理器相连。总线监控器必须独立于其他的通信控制器。总线驱动器连接着通信控制器和总线,或是连接总线监控器和总线。主处理器把 FlexRay 控制器分配的时间槽通知给总线监视器,然后总线监视器就允许 FlexRay 控制器在这些时间槽中来传输数据。数据可以在任何时候被接收。
3.FlexRay的通信是在周期循环中进行的。一个通信循环始终包括静态段(ST)和网络闲置时间(NIT),还可能包括动态段(DYN)、符号窗口(SW)。
4.在静态段,采用时分多址TDMA技术实现时间触发,将多个时槽固定分配给每个节点,这些时槽内,只允许该节点传输数据;
在动态段,采用更灵活的时分多址技术FTDMA,使用小时槽mini-slot作为访问动态部分的通信媒介。
5.静态段可以保证对总线的访问是确定性的。但是通过对节点和信息分配时槽的方法来固定分配总线带宽,就导致了总线带宽利用率低,而且灵活性差,不利于以后节点的扩充。动态段采用时间触发的方式传输事件信息,保证了一些具有高优先权的数据能够在总线忙时也有机会发送信息,这样各个节点可以共享这部分带宽,而且带宽可动态分配,灵活性好。这就在保证总线访问的确定性的同时,弥补了静态段传输的不足。
6.相位纠正值的计算只需一个循环周期的测量值,一旦接收了所有测量值,即可开始实施计算,并且它必须在开始相位纠正前完成。网络闲置时间(NIT)的一部分被保留,用于相位纠正。相位纠正要相隔一个循环实施,避免影响时钟频率偏差的确定。
7.整个通信控制器按照功能分为:收发模块、媒质访问控制模块、接收判别模块、时钟同步模块、协议控制单元模块、接口模块。
收发模块 : 是对通信控制器上层模块待发送的数据进行编码发送到总线上,同时对从总线上获得的比特流进行处理并解码组成数据传送给上层模块进行进一步处理。
媒质访问控制模块 : 首先是负责通知收发模块发送帧和 symbol,发送帧的时候按照主机的要求组成帧,其次是控制访问总线的时序。
接收判别模块 : 检测接收数据的完整性以及检验数据是否在正确的时间被接收到。
时钟同步模块 : 节点与网内其它节点同步。
协议控制单元模块 : 整个通信控制器的核心部分,其作用是根据主机的命令以及协议工作的环境协调其它功能模块的工作并给主机指示。
接口模块 : 主机和 FlexRay 通信控制器交换数据和控制的通道。
8.passive topologies:
point-to-point connection :
24m
passive star :
24m
line topology :
24m 22 FlexRay nodes
active topologies :
24m it must be considered that the active star coupler delays signal transmission.
connecting two active star couplers in series : a maximum network length of 3x12m should be assumed in practice.
9.FlexRay node:
The communication controller is referred to as a FlexRay controller.
The bus driver is referred to as a FlexRay transceiver.
10.FlexRay cable:
Because of its differential signal transmission,so twisted line pairs are typically used in practice — for cost reasons usually without shielding.
11.Dynamic messages:
This means that the time point of message transmission is not predictable. Because the dynamic segment has a finite length, there may be FlexRay nodes wishing to send that will not be able to transmit their dynamic messages in the current cycle.
12.FlexRay Cycle:
The communication cycle is composed of at least two time segments, the static segment and the network idle time (NIT) segment.
Optionally, the communication cycle may be extended by adding the dynamic time segment and a symbol window.
13.A maximum of 1023 static slots may be defined. Because at least two FlexRay nodes are needed to generate the global time base, the static segment must consist of at least two static slots which are assigned to the FlexRay nodes.
14.Synchronization Method:
In a FlexRay cluster, at least 2 and a maximum of 15 FlexRay nodes act as the sync nodes (synchronization node), which transmit a sync message (synchronization message) in a defined static slot of each cycle.
15.ABBREVIATIONS:
PDU :
Protocol Data Unit
SDU :
Service Data Unit
ECU :
Electronic Control Unit
GW :
Gateway
Frame-ID :
Use "identifier value" (on CAN et al.) or "Slot-ID" (on FlexRay) instead. Otherwise we would construct the paradox to send many different frames (that we do not want to call messages) with a single frame-ID (that we therefore recommend to call slot-ID in FlexRay).
Slot-ID :
The SLOT-ID contains the FlexRay frame ID and has been restricted for fibex4FlexRay.The valid range is 1-2047.
UML :
Unified Modeling Language
LSB :
Least Significant Bit(Little endian)
MSB :
Most Significant Bit(Big endian)
16. 网络闲置时间(NIT)的一部分被保留,用于相位纠正。
17.macrotick是保证全局时钟同步的最小时间单元。也就是通信集群中所有节点的macrotick应定义相同的时间长度。
18.唤醒模式不得同时在两个通道上一起进行传输。这样是为了防止一个错误节点的数据传输同时扰乱两个通道上的通信。主机必须配置CC应唤醒的通道是哪一个。CC必须确保该通道上正在进行的通信不被干扰。需要注意的是CC不能证实所有连接到已配置通道的节点在唤醒模式传输之后是否已被唤醒,因为这些节点在启动阶段之前不能发出任何反馈。主机应当注意到有可能发生的唤醒失败并采取相应措施。
19.在最大时间节拍层(macrotick level)上。某些macrotick的边界被指定成action point,在静态段、动态段和符号窗口中action point指示立即开始数据发送,有时(仅限在动态段)action point可用于指示结束数据发送。
20.在一个通信网络中,节点对应的个通道上的帧ID分配就是时隙分配,这种分配是唯一的、确定的。
FlexRay笔记的更多相关文章
- git-简单流程(学习笔记)
这是阅读廖雪峰的官方网站的笔记,用于自己以后回看 1.进入项目文件夹 初始化一个Git仓库,使用git init命令. 添加文件到Git仓库,分两步: 第一步,使用命令git add <file ...
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- SQL Server技术内幕笔记合集
SQL Server技术内幕笔记合集 发这一篇文章主要是方便大家找到我的笔记入口,方便大家o(∩_∩)o Microsoft SQL Server 6.5 技术内幕 笔记http://www.cnbl ...
- PHP-自定义模板-学习笔记
1. 开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2. 整体架构图 ...
- PHP-会员登录与注册例子解析-学习笔记
1.开始 最近开始学习李炎恢老师的<PHP第二季度视频>中的“章节5:使用OOP注册会员”,做一个学习笔记,通过绘制基本页面流程和UML类图,来对加深理解. 2.基本页面流程 3.通过UM ...
- NET Core-学习笔记(三)
这里将要和大家分享的是学习总结第三篇:首先感慨一下这周跟随netcore官网学习是遇到的一些问题: a.官网的英文版教程使用的部分nuget包和我当时安装的最新包版本不一致,所以没法按照教材上给出的列 ...
- springMVC学习笔记--知识点总结1
以下是学习springmvc框架时的笔记整理: 结果跳转方式 1.设置ModelAndView,根据view的名称,和视图渲染器跳转到指定的页面. 比如jsp的视图渲染器是如下配置的: <!-- ...
- 读书笔记汇总 - SQL必知必会(第4版)
本系列记录并分享学习SQL的过程,主要内容为SQL的基础概念及练习过程. 书目信息 中文名:<SQL必知必会(第4版)> 英文名:<Sams Teach Yourself SQL i ...
- 2014年暑假c#学习笔记目录
2014年暑假c#学习笔记 一.C#编程基础 1. c#编程基础之枚举 2. c#编程基础之函数可变参数 3. c#编程基础之字符串基础 4. c#编程基础之字符串函数 5.c#编程基础之ref.ou ...
随机推荐
- jackson中@JsonProperty、@JsonIgnore等常用注解总结
本文为博主原创,未经允许不得转载: 最近用的比较多,把json相关的知识点都总结一下,jackjson的注解使用比较频繁, jackson的maven依赖 <dependency> < ...
- 一起用ipython
安装 安装python2版本的软件包就用命令 pip install ipython 安装python3版本对应的软件包就用命令 pip3 install ipython 进入了ipython,ipy ...
- C++类的大小计算
转自http://www.tuicool.com/articles/uiUJry 一个空的class在内存中多少字节?如果加入一个成员函数后是多大?这个成员函数存储在内存中什么部分? 一个Class对 ...
- 第三方API使用的好习惯
1自己封装API接口 有些不很稳定的API接口,最好还是自己封装隔离后再使用,否则哪天它一改接口,那我得到处替换了 比如融云的群组,聊天室
- 【转】 ISP-黑电平校正(BLC)
转自:https://blog.csdn.net/xiaoyouck/article/details/72824534 介绍黑电平(Black Level Correction)也就是黑色的最低点,以 ...
- 20190226_xlVba提取查新标题和关键词
Sub MainProc() Dim Sht As Worksheet Dim Wb As Workbook Set Wb = Application.ThisWorkbook Set Sht = W ...
- hdu-1043 bfs+康拓展开hash
因为是计算还原成一种局面的最短步骤,应该想到从最终局面开始做bfs,把所有能到达的情况遍历一遍,把值存下来. bfs过程中,访问过的局面的记录是此题的关键,9*9的方格在计算过程中直接存储非常占内存. ...
- Python 总结一
'''形式参数不占内存,在调用时开辟内存,在函数结束时释放内存默认参数 调用方式:位置参数.关键字参数 *args (元组) **kwargs(字典) 局部变量:在子程序中使用的变量全局变量:glob ...
- input date
https://stackoverflow.com/questions/17954966/how-to-get-rid-of-x-and-up-down-arrow-elements-of-a-inp ...
- vue中修改了数据但视图无法更新的情况
数组数据变动:我们使用某些方法操作数组,变动数据时,有些方法无法被vue监测,有些可以 Vue包装了数个数组操作函数,使用这些方法操作的数组去,其数据变动时会被vue监测: push() pop() ...