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

AUTOSAR MCAL层ETH模块(1)——通信原理

基础了解

        ETH,以太网,简单来讲就是将几台设备连接起来形成网络。这种连接是点到点之间的。以太网的传输速率为10M~10G,速度非常快。

        为了实现网络通信的标准化,普及网络应用,国际标准化组织(ISO)将整个以太网通信结构制定了OSI(Open System Interconnection)模型,整个模型包括硬件和软件定义。

        本文及后续文章所介绍的内容为以太网模块的物理层和数据链路层,上层协议等内容暂时不在讲述范围。

以太网的数据链路层分为LLC和MAC两种。

MAC:(Media Access Control)媒体访问控制层,负责以太网的总线访问机制、物理寻址方式、以太网帧格式等等。

LLC:(Logical Link Control)逻辑链路控制层,主要负责以太网帧的收发,还可以对以太网帧进行错误控制、流控等。

LLC负责报文的收发和检测控制等操作,MAC则作为软件和硬件间的桥梁。

物理层

        以太网设备间的连接都是由 MCU 通过 MII 和 SMI 来外接 PHY 芯片,经由 PHY 芯片将信号转换为支持网线传出的形式之后,然后才能和其他设备进行通信。

其中,MII负责数据的传输,SMI负责对PHY芯片进行控制。

        SMI包括MDIO和时钟线两种线,通过MDIO可以使MCU获取PHY芯片的状态,也可以对其进行控制。AUTOSAR 规范中定义了 WriteMII 和 ReadMII 两种接口来控制和监控 MII 的状态。MCU正是通过 SMI 来实现对 PHY 芯片的控制。

        常用的 MII 总线分为MII、RMII、SMII、GMII、RGMII、SGMII等。下图为 MII 和 RMII 两种协议的对比。

        简单来讲,在原本的 MII 前加上 “ R ” 则代表引脚简化,但是这种简化可能会导致传输不够稳定,因此适用于要求较低的场景;而 “ S ” 则表示串行,前面两种比如 MII 是采用多条数据线并行传输的方式,而 SMII 则是串行传输。

以太网帧格式

        以太网帧格式由前导字段、帧起始定界符、目标地址、源地址、数据包类型、数据域、填充域、校验和域组成。

前导码:7字节,用于同步接收端的时钟信号,便于识别帧的开始。

帧起始分隔符(SFD):1字节,用于标识帧的开始,用来指示接下来是帧的实际内容。

目的地址(Dst):6字节,接收方的MAC地址。

源地址(Src):6字节,即发送方的MAC地址。

类型/长度(Type/Length):2字节,用于指示有效载荷的类型(比如IPv4或IPv6)或者数据长度。

有效数据(Payload):46到1500字节,包含实际传输的数据内容,例如IP数据包。如果数据内容不足46字节,可能会通过填充(PAD)进行扩充。

填充(PAD):在有效数据少于46字节的情况下,增加的填充字节,保证数据部分的最小长度,填充字节通常是 0x00。

帧校验序列(FCS):4字节,用于校验数据帧的完整性,通常通过CRC(循环冗余校验)算法生成。

        目前以太网帧的格式分为 IEEE 802.3 和 Ethernet II 两种,通过判别“类型/长度”字段来进一步判断当前帧的类型。

IEEE 802.3:若该字段值小于等于0x5DC (1500),那么该帧为IEEE 802.3格式,此时该字段可以视为“长度”字段:

Ethernet II:若该字段值大于等于0x600 (1536),则该帧为Ethernet II帧格式。

相关文章:

  • 【VSCode】一键清理旧版本插件脚本(Mac或者Windows都可)
  • 算法19(力扣244)反转字符串
  • opencascade 获取edge起始点 会出现终点与实际不同的情况
  • Java 大视界 -- 绿色大数据:Java 技术在节能减排中的应用与实践(90)
  • @[TOC](优先级队列(堆)) 【本节目标】 1. 掌握堆的概念及实现 2. 掌握 PriorityQueue 的使用 # 1. 优先级队列
  • 蓝桥杯试题:计数问题
  • word文档提取信息
  • Spring MVC Streaming and SSE Request Processing SSE可以实现chatgpt一次请求分批次响应的效果
  • 数字化转型导师坚鹏:AI大模型DEEPSEEK使用方法及案例
  • 前端知识速记--css篇:CSS3中的常见动画及实现方式
  • 二分搜索算法核心-----labuladong笔记
  • LibreOffice转换word文档
  • GC 基础入门
  • 简述 tsconfig.json 中 rootDir 和 include 之间的关系
  • 沃德校园助手系统php+uniapp
  • Windows逆向工程入门之汇编位运算
  • DeepSeek R1本地化部署:从零搭建智能对话系统
  • Vue的简单入门 一
  • MySQL数据库(八)☞ 我是不是锁神
  • 草图绘制技巧
  • 李强:把做强国内大循环作为推动经济行稳致远的战略之举
  • 第78届戛纳电影节开幕,罗伯特·德尼罗领取终身成就奖
  • 视频|王弘治:王太后,“先天宫斗圣体”?
  • 筑牢安全防线、提升应急避难能力水平,5项国家标准发布
  • 第1现场 | 印巴停火次日:当地民众逐渐恢复正常生活
  • 尹锡悦涉嫌发动内乱案举行第三次庭审