SOC内部集成网络MAC外设+ PHY网络芯片方案:MII/RMII 接口与 MDIO 接口

一.  简介

本文来了解一下常用的一种网络硬件方案:SOC内部集成网络MAC外设+ PHY网络芯片方案。

其中涉及的 MII接口,RMII接口(MII接口与RMII接口二选一),MDIO接口,RJ45。

二.  MII/RMII 接口,MDIO 接口 ,RJ45

本文简单了解一下内部带网络MAC的 SOC+外接一个PHY芯片,这种网络硬件方案涉及到的接口连接。

内部 MAC+ 外部 PHY+RJ45 ( 内置网络变压器 ) 就组成了一个完整的嵌入式网络接口硬件,如下图 所示:

前面我们说了,内部 MAC 通过 MII/RMII 接口来与外部的 PHY 芯片连接,完成网络数据 传输,接下来我们就来学习一下什么是 MII RMII 接口,以及 MDIO 接口
注意:主控需要配置或读取 PHY 芯片,也就是读写 PHY 的内部寄存器,所以还需要一个控制接口,叫做 MIDO。MDIO 很类似 IIC,也是两根线,一根数据线叫做 MDIO,一 根时钟线叫做MDC。

1.  MII 接口

MII 全称是 Media Independent Interface ,直译过来就是介质独立接口,它是 IEEE-802.3 定义的以太网标准接口, MII 接口用于以太网 MAC 连接 PHY 芯片,连接示意图如下 示:

MII 接口一共有 16 根信号线,含义如下:
TX_CLK 发送时钟,如果网速为 100M 的话时钟频率为 25MHz 10M 网速的话时钟频率为 2.5MHz ,此时钟由 PHY 产生并发送给 MAC
TX_EN 发送使能信号。
TX_ER 发送错误信号,高电平有效,表示 TX_ER 有效期内传输的数据无效。 10Mpbs 速下 TX_ER 不起作用。
TXD[3:0] :发送数据信号线,一共 4 根。
RXD[3:0] 接收数据信号线,一共 4 根。
RX_CLK 接收时钟信号,如果网速为 100M 的话时钟频率为 25MHz 10M 网速的话时钟频率为 2.5MHz RX_CLK 也是由 PHY 产生的。
RX_ER 接收错误信号,高电平有效,表示 RX_ER 有效期内传输的数据无效。 10Mpbs 网速下 RX_ER 不起作用。
RX_DV 接收数据有效,作用类似 TX_EN
CRS 载波侦听信号。
COL 冲突检测信号。
MII 接口的缺点就是所需信号线太多,这还没有算 MDIO MDC 这两根管理接口的数据线,因此 MII 接口使用已经越来越少了。

2.  RMII 接口

RMII 全称是 Reduced Media Independent Interface ,翻译过来就是精简的介质独立接口,也就是 MII 接口的精简版本。 RMII 接口只需要 7 根数据线,相比 MII 直接减少了 9 根,极大的 方便了板子布线, RMII 接口连接 PHY 芯片的示意图如图 69.1.2.2 所示:

TX_EN 发送使能信号。
TXD[1:0] 发送数据信号线,一共 2 根。
RXD[1:0] :接收数据信号线,一共 2 根。
CRS_DV 相当于 MII 接口中的 RX_DV CRS 这两个信号的混合。
REF_CLK 参考时钟,由外部时钟源提供, 频率为 50MHz 。这里与 MII 不同, MII 的接 收和发送时钟是独立分开的,而且都是由 PHY 芯片提供的。

除了 MII RMII 以外,还有其他接口,比如 GMIIRGMIISMIISMII 等,关于其他接口基本都是大同小异的,这里就不做讲解了。正点原子 ALPAH 开发板上的两个网口都是采 RMII 接口来连接 MAC 与外部 PHY 芯片。

3.  MDIO 接口

MDIO 全称是 Management Data Input/Output ,直译过来就是管理数据输入输出接口,是一个简单的两线串行接口,一根 MDIO 数据线,一根 MDC 时钟线。
驱动程序可以通过 MDIO MDC 这两根线访问 PHY 芯片的任意一个寄存器。
MDIO 接口支持多达 32 PHY 。同一时刻 内只能对一个 PHY 进行操作,那么如何区分这 32 PHY 芯片呢?
IIC 一样,使用器件地址 即可。同一 MDIO 接口下的所有 PHY 芯片,其器件地址不能冲突,必须保证唯一,具体器件 地址值要查阅相应的 PHY 数据手册。
因此, MAC 和外部 PHY 芯片进行连接的时候主要是 MII/RMII MDIO 接口,另外可能 还需要复位、中断等其他引脚。

4.  RJ45 接口

网络设备是通过网线连接起来的,插入网线的叫做 RJ45 座,如下图 所示:

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

但是现在很多 RJ45 座子内部已经集成了网络变压器,比如,正点原子 ALPHA 开发板所使用 HR911105A 就是内置网络变压器的 RJ45 座。内置网络变压器的 RJ45 座和不内置的引脚一 样,但是一般不内置的 RJ45 座会短一点。
注意:
因此,大家在画板时一定要考虑你所使用的 RJ45 座是否内置网络变压器,如果不内置的话就要自行添加网络变压器部分电路!!!同理,如果你所设计的硬件是需要内置网络变压器的 RJ45 座,肯定不能随便焊接一个不内置变压器的 RJ45 座,否则网络工作不正常!
RJ45 座子上一般有两个灯,一个黄色 ( 橙色 ) ,一个绿色,绿色亮的话表示网络连接正常, 黄色闪烁的话说明当前正在进行网络通信。这两个灯由 PHY 芯片控制, PHY 芯片会有两个引 脚来连接 RJ45 座上的这两个灯。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/784509.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2024系统架构师---面向对象架构风格的概念与应用

面向对象架构风格是一种以对象为中心的软件设计和开发方法,强调数据(属性)和行为(方法)的封装、继承和多态。在面向对象架构中,系统被视为一组相互作用的对象集合,每个对象代表了现实世界中的实…

JavaWeb学习笔记01

一、教程简介 全新JAVAWEB(里程碑版) 一套更适合后端工程师学习的WEB教程 All in Java 1、后端 ① Spring全家桶及微服务框架 ② 高性能数据库和消息组件 ③ Web攻击防护安全控制手段 ④ 其他第三方SDK生态环境 ...... 2、前端 ① 视图三大件&…

【备忘录】Docker 2375远程端口安全漏洞解决

最近为了项目需要,把docker 的远程端口2375 给开放了。不出意外出意外了。没多久,网站报流量告警,第一反应就是开放2375这个端口问题导致,毫不迟疑直接切换服务器。关闭该台服务器的docker服务,并逐步清理掉挖矿进程&a…

存放自定义数据类型的大/小根堆定义

要将小于&#xff08;<&#xff09;运算符重载函数改为适用于小根堆&#xff08;即最小堆&#xff09;&#xff0c;您需要确保当传入对象的值小于当前对象的值时&#xff0c;函数返回true。这样&#xff0c;当您构建堆时&#xff0c;具有较小值的节点会被放置在较高的层次&a…

从0到1手把手撸码搭建后台管理系统

从0到1手把手撸码搭建后台管理系统 第一章:系统介绍开发目的与过程 要使用 Vue3 搭建后台&#xff0c;你可以按照以下步骤进行&#xff1a; 安装 Vue3&#xff1a;使用包管理工具&#xff08;如 npm 或 yarn&#xff09;安装 Vue3。选择构建工具&#xff1a;选择一个适合的构…

课时81:流程控制_循环控制_continue实践

1.4.3 continue实践 学习目标 这一节&#xff0c;我们从 基础知识、简单实践、小结 三个方面来学习。 基础知识 简介 continue命令是在处理过程中跳出循环的一种简单方法。可以使用continue命令跳出当前的循环直接进入到下一个循环&#xff0c;包括for、while、until等。co…

Day35:学习尚上优选项目

学习计划&#xff1a;完成尚硅谷的尚上优选项目 学习进度&#xff1a;尚上优选项目 知识点&#xff1a; 四、 搭建平台管理端前端环境 权限管理模块-用户管理 开发为用户分配角色接口用户管理前端测试 权限管理模块-菜单管理 菜单管理需求菜单表设计开发菜单管理CRUD接口开…

给web开发零基础小白的简明入门教程

1.网页三大件&#xff1a;HTML、CSS、JS HTML&#xff08;HyperText Markup Language超文本标记语言&#xff09;&#xff1a;构成网页的结构&#xff0c;结构由元素&#xff08;标签&#xff09;组成。 CSS&#xff08;Cascading Style Sheets层叠样式表&#xff09;&#xf…

选择排序及其优化

目录 思想&#xff1a; 代码&#xff1a; 代码优化&#xff1a; 需要注意的特殊情况&#xff1a; 可能出现的所有特殊情况&#xff1a; 优化完成代码&#xff1a; 思想&#xff1a; 每一次遍历数组&#xff0c;选择出最大或最小的数&#xff0c;将其与数组末尾或首位进行…

springboot下

springboot 常用注解介绍 按需开启自动配置项特征介绍 自动配置原理 静态资源配置原理解析 rest风格请求映射 自定义入参的converter实现 springbootApplication启动流程 启动类 一些操作的赋值 启动器类型赋值 用加载器加载接口的实现类 刷新上下文

npm镜像源证书过期问题解决

title: npm镜像源证书过期 search: 2024-02-29 文章目录 Failed to check for updates 问题ERR_PNPM_NO_PKG_MANIFESTnpm缓存清除指令权限不足导致删除不了解决方案npm创建基础配资文件 Failed to check for updates 问题 错误描述如上 检查完 node,vue,npm 的版本后都没啥问…

css3之3D转换transform

css3之3D转换 一.特点二.坐标系三.3D移动&#xff08;translate3d)1.概念2.透视&#xff08;perpective)(近大远小&#xff09;&#xff08;写在父盒子上&#xff09; 四.3D旋转&#xff08;rotate3d)1.概念2.左手准则3.呈现&#xff08;transfrom-style)&#xff08;写父级盒子…

kali linux 解决无线驱动程序问题

Troubleshooting wireless driver issues in Linux can be a frustrating experience if you don’t know what to look for。 This article is meant to be used as a general guideline to better help you find the information you need to solve your wireless issues。 C…

python中的int函数和java中的Integer.parseInt方法

将字符串转换为整数 print(int(‘123’)) # 输出: 123 将浮点数向下取整为整数 print(int(3.14)) # 输出: 3 将布尔值转换为整数 print(int(True)) # 输出: 1 print(int(False)) # 输出: 0 使用指定的进制转换字符串为整数 print(int(‘1010’, 2)) # 输出: 10&#xff…

常见的ADB命令,涵盖了连接设备、安装应用、文件操作、日志调试、应用管理等多个方面

理解了&#xff0c;以下是一个更广泛的ADB命令列表&#xff0c;包括各种应用场景&#xff1a; ### 连接设备和管理连接&#xff1a; 1. adb devices&#xff1a;列出已连接的设备。 2. adb connect <设备IP>&#xff1a;连接到指定IP地址的设备。 3. adb disconnect <…

价值1万元的定制版跑分源码 微信支付宝跑分源码,微信支付宝跑分源码

价值1万元的定制版跑分源码 微信支付宝跑分源码&#xff0c;微信支付宝跑分源码|开代理|自动抢单接单。 此类“跑分”操作究竟是如何运作的呢?以一项“为游戏平台提供微信充值接口”的项目说明来举例:用户成功注册并进一步完善用户信息后&#xff0c;就可以抢单&#xff0c;抢…

ESP8266

一、简介 ESP8266:芯片 ESP8266-NodeMCU:方便对ESP8266芯片操作。 模块内嵌TCP/IP协议栈&#xff0c;可以实现串口、WIFI之间的数据转换传输。 产品特性 支持无线802.11b/g/n三种标准 支持STA/APSTAAP三种工作模式 支持TCP/IP协议栈&#xff0c;支持多路TCP Client连接 内置…

阿里云优惠券一键领取入口分享

阿里云作为国内领先的云计算服务提供商&#xff0c;以其稳定、高效的服务赢得了广大用户的信赖。为了吸引更多用户上云&#xff0c;阿里云经常推出各种优惠活动&#xff0c;其中就包括阿里云优惠券。本文将为大家分享阿里云优惠券一键领取入口&#xff0c;帮助大家快速获取优惠…

【ONE·基础算法 || 链表】

总言 主要内容&#xff1a;编程题举例&#xff0c;熟悉理解单链表类题型。       文章目录 总言1、链表2、两数相加&#xff08;medium&#xff09;2.1、题解 3、两两交换链表中的节点&#xff08;medium&#xff09;3.1、题解 4、重排链表&#xff08;medium&#xff09;4…

并联机器人建模【1】-Delta机器人简介与工作空间分析

并联机器人建模【1】 1. 简介1.1 Delta机器人的结构特点1.2 发展历史2. 工作空间分析3. 运动学正解4. 运动学逆解参考资料引言: Delta机器人(图4)有三组平行的手臂和旋转式或线性驱动器。当对驱动器施加作用力时,末端执行器会在x、y和z轴上移动但是不会出现旋转。Delta机器人…