AUTOSAR Ethernet

Ethernet BSW stack

Switch

交换机设备可以连接到以太网驱动程序的专用控制器索引。此场景会导致交换机驱动程序和以太网驱动程序之间的额外交互(图7.2)。以太网驱动程序要求交换机驱动程序进行特殊处理,以确保当前的以太网帧稍后可以在交换机中进行管理。

External MAC

对于MACPHY(Ethernet controller and PHY integrated in one module)(外部mac控制器),数据和管理是通过SPI模块完成的(图 7.3)

Indexing scheme

以太网驱动程序的用户使用图7.4所示的索引方案来识别控制器资源

以太网驱动程序正在使用一个基于零的索引来抽象对上层软件层的访问。配置中的参数EthCtrlIdx [ECUC_Eth_00007]对应于API中使用的参数CtrlIdx。

缓冲区索引(BufIdx)标识由以太网驱动程序API函数处理的以太网缓冲区。每个控制器的缓冲区由缓冲区索引0到(n-1)来标识,其中n是由对应的控制器处理的缓冲区的数量。缓冲区索引仅在元组<CtrlIdx,BufIdx>中有效。BufIdx唯一地标识用于以太网驱动程序的缓冲区

Communication

Transmission

以太网驱动程序提供了两种方法来处理传输请求

1. Indirect data provision(间接)

具有间接数据提供的传输请求:将对可用的出口队列资源的请求和传输请求分成两个 API 调用。上层必须在对应的以太网控制器上请求对应的 EthCtrlConfigEgressQueue (表示位于出口侧的一个队列)的可用出口队列元素。如果以太网驱动程序能够提供出口队列元素,则请求者(上层)可以用数据更新此出口队列元素。来自上层的第二个呼叫将请求传送出口队列元素:

  1. 上层调用Eth_ProvideTxBuffer,以根据给定的优先级在以太网驱动程序上请求出口缓冲区。返回后,上层将数据复制到所提供的出口缓冲区
  2. 上层调用Eth_Transmit,请求以太网驱动程序传输出口缓冲区的内容
2. Direct data provision(直接)

具有直接数据提供的传输请求:在一个API调用中执行数据和传输请求。上层调用Eth_ImmediateTransmit提供了单链接列表和有效负载长度的有效负载。单个链接列表的所有头与有效载荷一起形成整个以太网框架。列表中的每个元素都包含一个指向数据、数据长度的指针和一个指向下一个元素的指针。以太网驱动程序必须从头历到最后一个元素(尾),并将每个头的数据复制到出口队列元素。在到达最后一个元素后,有效负载将被添加到出口队列元素中。如果数据传输完成,则整个以太网框架将驻留在出口队列元素中。以太网驱动程序触发以太网帧的传输,以在以太网网络上传输数据

以太网基础理论—MAC+PHY

autosar ethernet 也遵循 OSI 模型

以太网基础理论—MAC+PHY_mac phy-CSDN博客

以太网的电路接口一般由CPU、MAC( Media Access Control)控制器和物理层接口PHY(Physical Layer PHY)组成,MAC层在 OSI 模型中属于数据链路层,其主要任务是解决数据包发给谁。

数据链路层包含MAC(介质访问控制)子层和LLC(逻辑链路控制)子层。

PHY(physical),简称物理层,是一个对OSI模型物理层的简称。PHY包括两个接口三个子层:

两个接口:

1、MII接口:媒体独立接口。PHY与MAC之间的通信方式,其中包括数据接口、管理接口。在MII的基础上,又发展了RMII(Reduced Media Independant Interface,简化了MII,比MII用的信号线更少)、GMII(Gigabit Media Independent Interface,即先兆的MII接口)、RGMII(Reduced Gigabit Media Independent Interface,及简化先兆的MII接口);

2、MDI接口:媒体相关接口;

三个子层:

1、PCS子层:物理编码子层,负责编码;
2、PMA子层:物理介质连接子层,进一步将PCS编码向各种媒介进行传送。完成串并、并串转化;
3、PMD子层:物理介质相关子层,完成物理连接;

  • 19
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
AutoSARAutomotive Open System Architecture)是一套标准化的软件体系结构,旨在提供汽车电子系统的跨平台互操作性和可重用性。其中的Ethernet(以太网)模块是AutoSAR的一个重要组成部分。 对于AutoSAR Ethernet代码的分析,首先需要了解Ethernet模块的功能和设计原理。该模块负责处理汽车电子系统中的网络通信任务,实现车辆内部各个控制单元之间的数据传输。在代码的分析过程中,需要关注以下几个方面: 1. 数据帧的处理:Ethernet模块需要处理以太网数据帧的接收和发送。代码分析的重点之一是了解接收数据帧的解析和分发过程,以及发送数据帧的组装和发送过程。需要关注数据帧格式的解析算法、协议栈的处理流程等。 2. 连接管理:Ethernet模块还需要管理车辆内部各个控制单元之间的连接状态。代码分析的重点之一是了解连接的建立、维护和断开的过程,以及相关错误处理和容错机制。需要关注连接状态的管理算法、连接超时的处理逻辑等。 3. 时钟同步:Ethernet模块通常需要实现车辆内部各个控制单元之间的时钟同步功能,确保数据传输的准确性和同步性。代码分析的重点之一是了解时钟同步算法的实现原理,以及时钟误差的补偿和校准逻辑。 4. 性能优化:Ethernet模块通常需要满足实时性和低延迟的要求。代码分析的重点之一是了解性能优化的策略和技术,例如中断处理的优化、高效的数据缓存管理等。 通过对AutoSAR Ethernet代码的详细分析,可以更好地理解其工作原理和实现细节,为开发人员提供参考和借鉴。此外,代码分析也为模块的测试、调试和维护提供了基础。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值