当前位置: 首页 > news >正文

TC3xx FlexRay™ 协议控制器 (E-Ray)-01

1 FlexRay™ 协议控制器 (E-Ray)

E-Ray IP 模块根据为汽车应用开发的 FlexRay™ 协议规范 v2.1 执行通信【performs communication according to the FlexRay™ 1) protocol specification v2.1】。使用最大指定时钟,比特率可以编程为高达 10 Mbit/s 的值。连接到物理层需要额外的总线驱动器 (BD) 硬件。

1.1 功能列表

E-Ray IP 模块支持以下功能:

  • 符合 FlexRay™ 协议规范 v2.1

  • 每个通道上的数据速率高达 10 Mbit/s

  • 最多可配置 128 个消息缓冲区

  • 8 KB 的消息 RAM 用于存储,例如 128 个消息缓冲区【最大48 字节数据字段】或最多 30 个消息缓冲区【具有 254 字节数据段的消息缓冲区】【128 Message Buffers with max. 48 byte data field or up to 30 Message Buffers with 254 byte Data Sections

  • 可以配置具有不同有效负载长度的消息缓冲区

  • 一个可配置的接收 FIFO

  • 每个消息缓冲区都可以配置为接收缓冲区、发送缓冲区或接收 FIFO 的一部分

  • 主机通过输入和输出缓冲区访问消息缓冲区。

    输入缓冲区:保存要传输到消息 RAM 的消息

    输出缓冲区:保存从消息 RAM 读取的消息

  • 时隙计数器、循环计数器和通道的过滤【Filtering for slot counter, cycle counter, and channel】

  • 可屏蔽模块服务请求【Maskable module service requests】

  • 支持网络管理

  • 四个服务请求线【Four service request lines】

  • 如果从消息 RAM 到输出影子缓冲区【from MessageRAM to Output Shadow Buffer】的数据传输(由先前对 OBCR 的写访问启动)正在进行,则自动延迟对输出命令请求寄存器 (OBCR)【Output Command Request Register (OBCR)】 的读访问。

  • 如果从输入影子缓冲区到消息 RAM 的数据传输(由先前对 IBCR 的写访问启动)正在进行,则自动延迟对输入命令请求寄存器 (IBCR) 的读访问。

  • 用于并行建立传输帧的四个输入缓冲器【Four Input Buffer for building up transmission Frames in parallel】。

  • 指示主机当前可访问哪个输入缓冲区的标志。

1.2 概述

对于 FlexRay™ 网络上的通信,可配置具有最多 254 个数据字节的单个消息缓冲区。消息存储由一个单端口消息 RAM 组成,最多可容纳 128 个消息缓冲区。所有与消息处理有关的功能都在消息处理程序中实现。这些消息处理有关的功能是接收过滤【acceptance filtering,】、两个 FlexRay™ 通道协议控制器和消息 RAM 之间的消息传输、维护传输计划【maintaining the transmission schedule】以及提供消息状态信息。

E-Ray IP 模块的寄存器组可由外部主机通过模块的主机接口直接访问。这些寄存器用于控制/配置/监控 FlexRay™ 通道协议控制器、消息处理程序、全局时间单元、系统通用控制【System Universal Control】、帧和符号处理、网络管理、服务请求控制,以及通过输入/输出Buffer访问消息 RAM缓冲【to access the Message RAM via Input / Output Buffer】。

1.2.1 E-Ray内核描述

  下图显示了 E-Ray 界面的全局视图。![在这里插入图片描述](https://img-blog.csdnimg.cn/5788cf1804db4da3bbfd948edf117b2c.png#pic_center)图 1  E-Ray 接口的一般框图E-Ray 模块通过每个通道的三个 I/O 线与外部世界通信【communicates with the external world via three I/O lines each channel】。RXDAx 和 RXDBx 线是接收数据输入信号,TXDA 和 TXDB 线是发送输出信号,TXENA 和 TXENB 是发送使能信号。

在这里插入图片描述

时钟控制、地址解码和服务请求控制在 E-Ray 模块内核之外进行管理。
在这里插入图片描述

1.2.2 框图

在这里插入图片描述
图 607 E-Ray 框图

客户主机接口 (CIF)

通过通用主机接口将 FPI 总线连接到 E-Ray IP 模块。

通用主机接口 (GIF)

E-Ray IP 模块提供了一个 8/16/32 位通用主机接口,用于连接各种客户特定 (CIF)的主机。配置寄存器、状态寄存器和服务请求寄存器连接到各自的块,可以通过通用主机接口访问这些寄存器。
在这里插入图片描述

输入缓冲器 (IBF)

为了对消息 RAM 中配置的消息缓冲区进行写访问,主机可以将特定消息缓冲区的标头和数据部分写入输入缓冲区。然后**,消息处理程序(MHD)**将数据从输入缓冲区传输到消息 RAM 中选定的消息缓冲区【the selected Message Buffer in the Message RAM.】。

由于输入缓冲区 (IBF) 方案只允许写入整个消息帧【the entire Message Frame】,而不仅仅是其中的一部分,因此 IBF 的数量已从最初的 2 个增加到 4 个。这使得能够部分填充缓冲区并在结束时请求传输入消息RAM【This enables to fill the buffer partly and at the end, request transfer into Message RAM.】??。因此,2 个额外位允许在 IBF 的两个组之间切换,一个状态位表示 IBF 当前处于活动状态以进行主机写入【Therefore 2 extra bits allow to switch between the two banks of IBF and one status bit signals the IBF currently active for Host writes.】。

输出缓冲器 (OBF)

为了对消息 RAM 中配置的消息缓冲区进行读取访问,**消息处理程序(MHD)**将选定的消息缓冲区传输到输出缓冲区。传输完成后,主机可以从输出缓冲区读取传输消息缓冲区的标头和数据部分。

消息处理程序 (MHD)

E-Ray 消息处理程序控制以下组件之间的数据传输【data transfers】

  • 输入/输出缓冲器和消息 RAM
  • 两个 FlexRay™ 协议控制器的**瞬态缓冲 RAM【 (TBF 1/2)】消息 RAM(MRAM)【**Transient Buffer RAMs of the two FlexRay™ Protocol Controllers and Message RAM】
    在这里插入图片描述

消息 RAM (MRAM)

消息 RAM 由一个单端口 RAM【a single-ported RAM】组成,可存储多达 128 个 FlexRay™ 消息缓冲区以及相关的配置数据(报头和数据分区【Header and Data Partition】)。

瞬态缓冲 RAM (TBF 1/2)

存储两个完整消息的数据部分【Stores the Data Section of two complete messages】。
在这里插入图片描述

FlexRay™ 通道协议控制器 (PRT A/B)

FlexRay™ 通道协议控制器由移位寄存器和 FlexRay™ 协议 FSM 组成。它们连接到用于暂时消息存储【intermediate message storage】的瞬态缓冲 RAM,并通过总线驱动程序 BD【收发器】 连接到物理层。

在这里插入图片描述

它们执行以下功能

  • 位定时的控制和检查
    • 接收和传输 FlexRay™ 帧和符号
  • 检查标头 CRC
    • 帧 CRC 的生成/检查
  • 与总线驱动程序接口

FlexRay™ 通道协议控制器具有以下接口【The FlexRay™ Channel Protocol Controllers have interfaces to:】:

  • 物理层(总线驱动程序)

    • 瞬态缓冲RAM
  • 消息处理器

    • 全球时间单位
  • 系统通用控制

    • 框架和符号处理
  • 网络管理

    • 服务请求控制

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-N8VFXvtu-1676182879673)(FlexRay%E2%84%A2%20%E5%8D%8F%E8%AE%AE%E6%8E%A7%E5%88%B6%E5%99%A8%20(E-Ray)]-01.assets/image-20230212111402706.png)

    全球时间单位 (GTU)

    全球时间单位执行以下功能:

    • Microtick 的产生
  • Macrotick 的产生

  • 通过 FTM 算法进行容错时钟同步【clock synchronization by FTM algorithm】

    • 速率校正
    • 偏移校正
  • 循环计数器

    • 静态段的时序控制
    • 动态段的时序控制(微时隙(minislotting))
    • 支持外部时钟校正

系统通用控制 (SUC)【System Universal Control】

系统通用控制控制以下功能:

  • 配置
  • Wakeup
    • 启动【Startup】
  • 普通操作【Normal Operation】
    • 被动操作【Passive Operation】
  • 监控模式【Monitor Mode】

帧和符号处理 (FSP)【Frame and Symbol Processing】

帧和符号处理控制以下功能:

  • 检查帧和符号的正确时间【Checks the correct timing of Frames and symbols】
  • 测试接收到的帧的句法和语义正确性
  • 设置插槽状态标志

网络管理 (NEM)【Network Management】

网络管理向量的处理【Handles of the Network Management vector】

服务请求控制 (INT)【Service Request Control】

服务请求控制器执行以下功能:

  • 提供错误和状态服务请求标志

  • 启用和禁用服务请求源

  • 将服务请求源分配给两个模块服务请求线之一【service request lines】

  • 启用和禁用模块服务请求线

  • 管理两个服务请求计时器

  • 停止观看时间捕捉【Stop watch time capturing】

    在这里插入图片描述

相关文章:

TC3xx FlexRay™ 协议控制器 (E-Ray)-01

1 FlexRay™ 协议控制器 (E-Ray) E-Ray IP 模块根据为汽车应用开发的 FlexRay™ 协议规范 v2.1 执行通信【performs communication according to the FlexRay™ 1) protocol specification v2.1】。使用最大指定时钟,比特率可以编程为高达 10 Mbit/s 的值。连接到物…...

优劣解距离法TOPSIS——清风老师

TOPSIS法是一种常用的综合评价方法,能充分利用原始数据的信息,其结果能精确地反映各评价方案之间的差距。 基本过程为先将原始数据矩阵统一指标类型(一般正向化处理)得到正向化的矩阵,再对正向化的矩阵进行标准化处理…...

【Unity3D】Shader常量、变量、结构体、函数

1 源码路径 Unity Shader 常量、变量、结构体、函数一般可以在 Unity Editor 安装目录下面的【Editor\Data\CGIncludes\UnityShader】目录下查看源码,主要源码文件如下: UnityCG.cgincUnityShaderUtilities.cgincUnityShaderVariables.cginc 2 Shader 常…...

LeetCode 刷题系列 -- 496. 下一个更大元素 I

nums1 中数字 x 的 下一个更大元素 是指 x 在 nums2 中对应位置 右侧 的 第一个 比 x 大的元素。给你两个 没有重复元素 的数组 nums1 和 nums2 &#xff0c;下标从 0 开始计数&#xff0c;其中nums1 是 nums2 的子集。对于每个 0 < i < nums1.length &#xff0c;找出满…...

Docker 搭建本地私有仓库

一、搭建本地私有仓库有时候使用Docker Hub这样的公共仓库可能不方便&#xff0c;这种情况下用户可以使用registry创建一个本地仓库供私人使用&#xff0c;这点跟Maven的管理类似。使用私有仓库有许多优点&#xff1a;1&#xff09;节省网络带宽&#xff0c;针对于每个镜像不用…...

XML中的CDATA且mybatis中特殊字符转义

如果想看如果CDATA在mybatis的xml文件中使用的可以直接跳转。 CDATA1 XML中的CDATA1.1 为什么叫CDATA1.2 CDATA在XML中的语法1.3 CDATA在XML中的例子1.4 CDATA规则2 Mybatis中的CDATA2.1 Mybatis中使用XML转义序列转义2.2 Mybatis中使用CDATA转义2.3 mybatis中使用CDATA需注意的…...

位运算 | 1356. 根据数字二进制下 1 的数目排序

LeetCode 1356. 根据数字二进制下 1 的数目排序 给你一个整数数组 arr 。请你将数组中的元素按照其二进制表示中数字 1 的数目升序排序。如果存在多个数字二进制中 1 的数目相同&#xff0c;则必须将它们按照数值大小升序排列。 文章讲解https://www.programmercarl.com/1356.%…...

React Hooks之useState详解

1. 什么是Hooks&#xff1f; React官方简介&#xff1a;Hook 是 React 16.8 的新增特性。它可以让你在不编写 class 的情况下使用 state 以及其他的 React 特性。 本文中讲解的useState就是React中的其中一个Hook。 2. useState useState 通过在函数组件里调用它来满足给组件添…...

选购交换机的参数依据和主要的参数指标详解

如何选购交换机&#xff1f;用什么交换机&#xff1f;在选购交换机时交换机的优劣无疑十分的重要&#xff0c;而交换机的优劣要从总体构架、性能和功能三方面入手。交换机选购时。性能方面除了要满足RFC2544建议的基本标准&#xff0c;即吞吐量、时延、丢包率外&#xff0c;随着…...

Connext DDS属性配置参考大全(1)

介绍属性QoS策略存储名称/值(字符串)对,可用于配置Connext DDS的某些参数,这些参数未通过正式的QoS策略公开。 属性QoS策略存储实体的名称/值对。名称和值都是字符串。在核心库用户手册的“Property QosPolicy(DDS Extension)”部分中找到有关RTI Connext DDS属性QoS的更…...

Docker安全

容器的安全性问题的根源在于容器和宿主机共享内核。如果容器里的应用导致Linux内核崩溃&#xff0c;那么整个系统可能都会崩溃。 与虚拟机是不同的&#xff0c;虚拟机并没有与主机共享内核&#xff0c;虚拟机崩溃一般不会导致宿主机崩溃 一、Docker 容器与虚拟机的区别 1、隔…...

刷题记录:牛客NC20279[SCOI2010]序列操作

传送门:牛客 题目描述: lxhgww最近收到了一个01序列&#xff0c;序列里面包含了n个数&#xff0c;这些数要么是0&#xff0c;要么是1&#xff0c;现在对于这个序列有五种变换操作和询问操作&#xff1a; 0 a b 把[a, b]区间内的所有数全变成0 1 a b 把[a, b]区间内的所有数全…...

Fluent Python 笔记 第 6 章 使用一等函数实现设计模式

虽然设计模式与语言无关&#xff0c;但这并不意味着每一个模式都能在每一门语言中使用。1996 年&#xff0c;Peter Norvig 在题为“Design Patterns in Dynamic Languages”(http://norvig.com/design- patterns/)的演讲中指出&#xff0c;Gamma 等人合著的《设计模式:可复用面…...

windbg-应用层实时调试

调试符号windbg使用一个或多个目录来存放符号条件&#xff0c;并使用环境变量_NT_SYMBOL_PATH来指向这些环境变量的位置&#xff0c;对操作系统内部模块的符号文件&#xff0c;一般用http://msdl.microsoft.com/download/symbols配置如下&#xff1a;SRV*C:\Symbols*http://msd…...

【Python语言基础】——Python NumPy 数组索引

Python语言基础——Python NumPy 数组索引 文章目录 Python语言基础——Python NumPy 数组索引一、Python NumPy 数组索引一、Python NumPy 数组索引 访问数组元素 数组索引等同于访问数组元素。 您可以通过引用其索引号来访问数组元素。 NumPy 数组中的索引以 0 开头,这意味…...

MWORKS--MoHub介绍

MWORKS--MoHub介绍1 介绍1.1 简介1.2 功能特征2 快速上手2.1 进入工作台2.2 新建仓库并进入建模空间2.3 建模进入建模工作空间加载模型库新建模型2.4 仿真2.5 后处理曲线、动画2.6 查看模型信息3 使用手册参考1 介绍 1.1 简介 MWORKS.MoHub 支持工业知识、经验、数据的模型化…...

Netty零拷贝机制

Netty零拷贝机制一&#xff1a;用户空间与内核空间二&#xff1a;传统IO流程三&#xff1a;零拷贝常见的实现方式1. mmap write2. sendfile四&#xff1a;Java中零拷贝五&#xff1a;Netty 中如何实现零拷贝1. CompositeByteBuf 实现零拷贝2. wrap 实现零拷贝3. slice 实现零拷…...

C++:提高篇: 栈-寄存器和函数状态:windows X86-64寄存器介绍

寄存器1、什么是寄存器2、寄存器分类3、windows X86寄存器命名规则4、寄存器相关术语5、寄存器分类5.1、RAX(accumulator register)5.2、RBX(Base register)5.3、RDX(Data register)5.4、RCX(counter register)5.5、RSI(Source index)5.6、RDI(Destination index)5.7、RSP(stac…...

MyBatis-Plus入门案例

MyBatis-Plus入门案例一、MyBatis-Plus简介1、简介2、特性3、支持数据库4、框架结构5、代码及文档地址二、入门案例1、开发环境2、建库建表3、创建Spring Boot工程a>初始化工程b>引入依赖4、编写代码a>配置application.yml 或者 application.propertiesb>添加实体c…...

适用于 Windows 11/10/8/7 的 10 大数据恢复软件分享

适用于 Windows 11/10/8/7 的 最佳数据恢复软件综述。选择首选的专业数据/文件恢复软件&#xff0c;轻松恢复丢失的数据或删除的照片、视频等文件、SSD、外接硬盘、USB、SD卡等存储设备中的文件等。流行的sh流行的数据恢复软件也包括在内。 10 大数据恢复软件分享 为了帮助您恢…...

<6>-MySQL表的增删查改

目录 一&#xff0c;create&#xff08;创建表&#xff09; 二&#xff0c;retrieve&#xff08;查询表&#xff09; 1&#xff0c;select列 2&#xff0c;where条件 三&#xff0c;update&#xff08;更新表&#xff09; 四&#xff0c;delete&#xff08;删除表&#xf…...

3.3.1_1 检错编码(奇偶校验码)

从这节课开始&#xff0c;我们会探讨数据链路层的差错控制功能&#xff0c;差错控制功能的主要目标是要发现并且解决一个帧内部的位错误&#xff0c;我们需要使用特殊的编码技术去发现帧内部的位错误&#xff0c;当我们发现位错误之后&#xff0c;通常来说有两种解决方案。第一…...

STM32+rt-thread判断是否联网

一、根据NETDEV_FLAG_INTERNET_UP位判断 static bool is_conncected(void) {struct netdev *dev RT_NULL;dev netdev_get_first_by_flags(NETDEV_FLAG_INTERNET_UP);if (dev RT_NULL){printf("wait netdev internet up...");return false;}else{printf("loc…...

uniapp微信小程序视频实时流+pc端预览方案

方案类型技术实现是否免费优点缺点适用场景延迟范围开发复杂度​WebSocket图片帧​定时拍照Base64传输✅ 完全免费无需服务器 纯前端实现高延迟高流量 帧率极低个人demo测试 超低频监控500ms-2s⭐⭐​RTMP推流​TRTC/即构SDK推流❌ 付费方案 &#xff08;部分有免费额度&#x…...

大学生职业发展与就业创业指导教学评价

这里是引用 作为软工2203/2204班的学生&#xff0c;我们非常感谢您在《大学生职业发展与就业创业指导》课程中的悉心教导。这门课程对我们即将面临实习和就业的工科学生来说至关重要&#xff0c;而您认真负责的教学态度&#xff0c;让课程的每一部分都充满了实用价值。 尤其让我…...

AI,如何重构理解、匹配与决策?

AI 时代&#xff0c;我们如何理解消费&#xff1f; 作者&#xff5c;王彬 封面&#xff5c;Unplash 人们通过信息理解世界。 曾几何时&#xff0c;PC 与移动互联网重塑了人们的购物路径&#xff1a;信息变得唾手可得&#xff0c;商品决策变得高度依赖内容。 但 AI 时代的来…...

React---day11

14.4 react-redux第三方库 提供connect、thunk之类的函数 以获取一个banner数据为例子 store&#xff1a; 我们在使用异步的时候理应是要使用中间件的&#xff0c;但是configureStore 已经自动集成了 redux-thunk&#xff0c;注意action里面要返回函数 import { configureS…...

spring Security对RBAC及其ABAC的支持使用

RBAC (基于角色的访问控制) RBAC (Role-Based Access Control) 是 Spring Security 中最常用的权限模型&#xff0c;它将权限分配给角色&#xff0c;再将角色分配给用户。 RBAC 核心实现 1. 数据库设计 users roles permissions ------- ------…...

加密通信 + 行为分析:运营商行业安全防御体系重构

在数字经济蓬勃发展的时代&#xff0c;运营商作为信息通信网络的核心枢纽&#xff0c;承载着海量用户数据与关键业务传输&#xff0c;其安全防御体系的可靠性直接关乎国家安全、社会稳定与企业发展。随着网络攻击手段的不断升级&#xff0c;传统安全防护体系逐渐暴露出局限性&a…...

车载诊断架构 --- ZEVonUDS(J1979-3)简介第一篇

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 做到欲望极简,了解自己的真实欲望,不受外在潮流的影响,不盲从,不跟风。把自己的精力全部用在自己。一是去掉多余,凡事找规律,基础是诚信;二是…...