整车总线系列——FlexRay 四
我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。
老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师:
没有人关注你。也无需有人关注你。你必须承认自己的价值,你不能站在他人的角度来反对自己。人生在世,最怕的就是把别人的眼光当成自己生活的唯一标准。到最后,既没有活成别人喜欢的样子,也没有活成自己想要的样子。 我们只有接纳真实的自己,不自卑、不自傲,才能拥有更强大的内心;只有找到自己的核心价值,才能活出自己的精彩人生。
FlexRay控制器减轻了主机的通信任务负担。FlexRay控制器通过CHI(Controller Host Interface,控制器-主机接口)连接到主机。CHI提供了用户可配置的TX和RX报文缓冲区。其中,RX报文缓冲区还配有接收过滤器。同时,CHI中还设有状态寄存器和控制寄存器。
FlexRay控制器中包含多个通信组件:用于总线访问的MAC(Media Access Control,介质访问控制子层)组件、对从MAC获取的字节进行编码的编码组件和对FlexRay收发器接收的逻辑位流进行解码的解码组件。
此外,FSP(The frame and symbol processing,帧和符号处理)组件检查是否符合FlexRay簇的通信周期,并检查RX报文是否存在传输错误。时钟同步处理组件用于同步FlexRay节点。唤醒和启动组件负责唤醒和启动。
FlexRay控制器可以根据通信进程进入八种不同的状态。每个状态都有相应的通信行为,并由相应的通信组件控制。通信组件POC(Protocol Operation Control,协议运行控制)负责切换控制器状态。
FlexRay支持的数据传输速率高达10 Mbit/s,同时由于成本原因使用非屏蔽线,这对于确保电磁兼容性是一个巨大的挑战。因此,FlexRay物理层定义了一些机制,以增强对高频干扰场和ESD(Electrostatic Discharge,静电放电)的抗干扰性,并减少电磁噪声辐射。
FlexRay簇中的物理信号基于差分电压进行传输,可以抵消发动机、点火装置和开关触点产生的干扰电压。较低的差分电压也在一定程度上限制了电磁辐射(总线电平“Data_1”为2V,总线电平“Data_0”为-2V)。
由于采用差分信号传输,因此FlexRay总线由两条线路构成:BP(Bus Plus,总线正)和BM(Bus Minus,总线负)。将两条线路绞合可显著降低磁场,因此实践中通常使用双绞线,并且出于成本考虑通常不加屏蔽。
由于信号传播速度有限,反射现象的影响会随着数据传输速率和总线长度的增加而增强。在通信通道的末端设置终端电阻可防止FlexRay簇中发生反射。
FlexRay规范规定负载介于40Ω到55Ω之间,总线终端电阻必须介于80Ω到110Ω之间。因此,应使用特征阻抗介于80Ω到110Ω之间的电缆进行传输。
可以在FlexRay总线的末端设置分离总线终端,而不是在通信通道的各个末端设置单独的总线终端电阻。分离总线终端类似于低通滤波器,可以滤除高频信号的干扰。
FlexRay簇中的物理信号基于差分信号传输。因此,传输介质(FlexRay总线)由BP和BM两根线构成。
范定义了四种总线电平,分别分配给隐性或显性总线状态。隐性总线状态的差分电压为0 V,显性总线状态的差分电压不为0 V。
电平和空闲低功耗总线电平都是隐性的。空闲总线电平的特征在于两根线上的对地电压均为2.5V,因而差分电压为0V。空闲总线电平的有效范围介于1.8V至3.2V之间。
lexRay收发器均处于低功耗模式时,FlexRay总线上将出现空闲低功耗总线电平。除了两根线的差分电压为0V外,另一个特征是两根线的对地电压也为0V。此时,有效范围介于-0.2V至0.2V之间。
Data_1和Data_0总线电平都是显性总线电平。对于Data_1总线电平,BP上的电压为3.5V,BM上的电压为1.5V,因而产生的差分电压为2V。Data_1总线电平代表逻辑1。
对于Data_0总线电平,BP上的电压为1.5V,BM上的电压为3.5V,因而产生的差分电压为-2V。Data_0总线电平代表逻辑0。
图“FlexRay Bus Level”显示了总线状态和总线电平,以及发送方和接收方的相关电压阈值。
搁笔分享完毕!
愿你我相信时间的力量
做一个长期主义者!