RK3568平台 有线以太网接口之MAC芯片与PHY芯片

一.平台网络网络通路

平台有线以太网通路:有线以太网一般插入的是RJ45 座要与 PHY 芯片(RTL8306M)连接在一起,但是中间需要一个网络变压器,网络变压器经过模数转换后到达网卡(RTL8111)转换为帧数据后到达SOC。

二.网络接口简介

RJ45 接口:

RJ45 座要与 PHY 芯片连接在一起,但是中间需要一个网络变压器,网络变压器用于隔离 以及滤波等,网络变压器也是一个芯片,外形一般如图:

但是现在很多 RJ45 座子内部已经集成了网络变压器。

RJ45 座子上一般有两个灯,一个黄色(橙色),一个绿色,绿色亮的话表示网络连接正常,黄色闪烁的话说明当前正在进行网络通信。这两个灯由 PHY 芯片控制,PHY 芯片会有两个引 脚来连接 RJ45 座上的这两个灯。

三.PHY芯片

PHY的数据是RJ45网络接口(网线口)穿过了的差分信号,而PHY作用就是将差分信号转为数字信号。

PHY 是 IEEE 802.3 规定的一个标准模块,SOC 可以对 PHY 进行配置或者读取 PHY 相关状态,这个就需要 PHY 内部寄存器去实现了。PHY 芯片寄存器地址空间为 5 位,地 址 0~31 共 32 个寄存器,IEEE 定义了 0~15 这 16 个寄存器的功能,16~31 这 16 个寄存器由厂 商自行实现。也就是说不管你用的哪个厂家的 PHY 芯片,其中 0~15 这 16 个寄存器是一模一 样的。仅靠这 16 个寄存器是完全可以驱动起 PHY 芯片的,至少能保证基本的网络数据通信。

四.MAC芯片与PHY芯片在网络七层协议的位置

网络七层协议:

数据链路层的MAC芯片;物理层的PHY芯片。

MAC位于OSI七层协议中数据链路层的下半部分,主要负责控制与连接物理层的物理介质。MAC在发送数据的时候,事先判断是否可以发送数据,如果可以,给数据加上一些控制信息,再将数据以及控制信息以规定的格式封装成帧发送到物理层;在接收数据的时候,MAC只接收发送至本网卡的单播帧、组播帧和广播帧,其余的丢弃,再将帧重新组合成数据,并判断输入的数据是否发生传输错误,如果没有错误,则去掉控制信息发送至LLC层。

PHY位于OSI七层协议中的物理层。PHY在发送数据的时候,收到MAC过来的数据,然后把并行数据转化为串行流数据,按照物理层的编码规则把数据编码,再变为模拟信号送出去,收数据时的流程反之。

五.MDIO的作用

mido协议即SMI协议

SMI协议也是一种通信协议类似与I2C协议但是通信方式不一样

SMI包含两根信号线,一个MDC时钟线,一个MDIO双向传输的数据线,STA(StaTIon Management)为主控设备,PHY为从设备,一个STA最多管理32个PHY。

MDIO主要是传输链接状态、传输速度与选择、断电、低功率休眠状态、TX/RX模式选择、自动协商控制、环回模式控制等。

六.网络硬件架构方案

以太网硬件设计有两种方案:SOC内未集成MAC芯片,SOC内集成MAC芯片。

SOC内未集成MAC芯片:

对于内部没有MAC的SOC芯片,可以使用外置 MAC+PHY一体的网络芯片来实现网络功能。

有些外置的网络芯片更强大,内部甚至集成了硬件TCP/IP协议栈,SOC就不需要移植软件协议

栈,这种方案的优点就是让不支持网络的SOC能够另辟蹊径,实现网络功能,但是缺点就是网络

效率不高,因为一般芯片内置的MAC会有网络加速引擎,比如网络专用DMA,网络处理效率会很

高。而且此类外置芯片网速都不快,基本就是10/100M。另外,相比PHY芯片而言,此类芯片的成

本也比较高,可选择比较少。

SOC内集成MAC芯片:

我们一般说某个SOC支持网络,说的就是他内部集成网络MAC外设,此时我们还需要外接一个网

络PHY芯片。目前几乎所有支持网络的SOC都是内置MAC外设。内部MAC外设会有专用的加速模

块,比如专用的DMA,加速网速数据的处理。网速快,可以支持10/100/1000M网速。外接PHY可

选择性多,成本低。

相关推荐
国产化创客17 小时前
创客开发入门(七)Arduino ESP32-WS2812开发
驱动开发·单片机·物联网·智能硬件
ItJavawfc2 天前
Linux驱动-RTC-RX8010集成-驱动开发-系统移植-移植RX8010驱动
驱动开发·rtc·8010rtc 驱动移植
sukalot2 天前
windows 驱动实例分析系列: HidHide驱动分析-HidHideClient 篇(中)
windows·驱动开发
HRTOS4 天前
HRTOS 4.0 驱动库:06_Storage 存储设备驱动——24C02 EEPROM与I²C驱动开发
c语言·驱动开发·嵌入式硬件·51单片机
KFCgrandpahhh4 天前
rk3576点灯
linux·驱动开发
HRTOS4 天前
HRTOS 4.0 正式发布:Driver Library 基础外设驱动模块介绍
驱动开发·单片机·嵌入式硬件·51单片机
HRTOS5 天前
HRTOS 4.0 Driver Library:03_Sensor 传感器驱动
驱动开发·单片机·嵌入式硬件·51单片机
Rsingstarzengjx5 天前
第二十六章 Linux 蜂鸣器实验笔记
linux·驱动开发·笔记·stm32·嵌入式硬件·stm32mp157
程序员无隅5 天前
从 Vibe Coding 到可控交付:用 Spec-Driven Development 驾驭 AI 编程 Agent
人工智能·驱动开发
小小工匠6 天前
半年之后,规格驱动开发(SDD)框架格局重排:从 +863% 到 +18% 的分化
驱动开发