当前位置: 首页 > 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 大数据恢复软件分享 为了帮助您恢…...

C++:std::is_convertible

C++标志库中提供is_convertible,可以测试一种类型是否可以转换为另一只类型: template <class From, class To> struct is_convertible; 使用举例: #include <iostream> #include <string>using namespace std;struct A { }; struct B : A { };int main…...

Cesium1.95中高性能加载1500个点

一、基本方式&#xff1a; 图标使用.png比.svg性能要好 <template><div id"cesiumContainer"></div><div class"toolbar"><button id"resetButton">重新生成点</button><span id"countDisplay&qu…...

IGP(Interior Gateway Protocol,内部网关协议)

IGP&#xff08;Interior Gateway Protocol&#xff0c;内部网关协议&#xff09; 是一种用于在一个自治系统&#xff08;AS&#xff09;内部传递路由信息的路由协议&#xff0c;主要用于在一个组织或机构的内部网络中决定数据包的最佳路径。与用于自治系统之间通信的 EGP&…...

JVM垃圾回收机制全解析

Java虚拟机&#xff08;JVM&#xff09;中的垃圾收集器&#xff08;Garbage Collector&#xff0c;简称GC&#xff09;是用于自动管理内存的机制。它负责识别和清除不再被程序使用的对象&#xff0c;从而释放内存空间&#xff0c;避免内存泄漏和内存溢出等问题。垃圾收集器在Ja…...

【快手拥抱开源】通过快手团队开源的 KwaiCoder-AutoThink-preview 解锁大语言模型的潜力

引言&#xff1a; 在人工智能快速发展的浪潮中&#xff0c;快手Kwaipilot团队推出的 KwaiCoder-AutoThink-preview 具有里程碑意义——这是首个公开的AutoThink大语言模型&#xff08;LLM&#xff09;。该模型代表着该领域的重大突破&#xff0c;通过独特方式融合思考与非思考…...

Java 加密常用的各种算法及其选择

在数字化时代&#xff0c;数据安全至关重要&#xff0c;Java 作为广泛应用的编程语言&#xff0c;提供了丰富的加密算法来保障数据的保密性、完整性和真实性。了解这些常用加密算法及其适用场景&#xff0c;有助于开发者在不同的业务需求中做出正确的选择。​ 一、对称加密算法…...

Maven 概述、安装、配置、仓库、私服详解

目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...

Go 并发编程基础:通道(Channel)的使用

在 Go 中&#xff0c;Channel 是 Goroutine 之间通信的核心机制。它提供了一个线程安全的通信方式&#xff0c;用于在多个 Goroutine 之间传递数据&#xff0c;从而实现高效的并发编程。 本章将介绍 Channel 的基本概念、用法、缓冲、关闭机制以及 select 的使用。 一、Channel…...

MySQL 部分重点知识篇

一、数据库对象 1. 主键 定义 &#xff1a;主键是用于唯一标识表中每一行记录的字段或字段组合。它具有唯一性和非空性特点。 作用 &#xff1a;确保数据的完整性&#xff0c;便于数据的查询和管理。 示例 &#xff1a;在学生信息表中&#xff0c;学号可以作为主键&#xff…...

云原生安全实战:API网关Envoy的鉴权与限流详解

&#x1f525;「炎码工坊」技术弹药已装填&#xff01; 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、基础概念 1. API网关 作为微服务架构的统一入口&#xff0c;负责路由转发、安全控制、流量管理等核心功能。 2. Envoy 由Lyft开源的高性能云原生…...