一文搞懂交换机 MAC PHY 网络变压器!

2024-04-12 13:52

本文主要是介绍一文搞懂交换机 MAC PHY 网络变压器!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

21.交换机 MAC PHY 网络变压器

1.交换机

没有IP路由功能、仅处理数据链路层的交换机叫做二层交换机。

带有IP路由功能的交换机叫做三层交换机。

交换机与路由器的区别:

1.工作层次不同 交换机主要工作在数据链路层(第二层)       路由器工作在网络层(第三层)

2.转发依据不同:交换机转发对象:MAC地址。(物理地址)路由转发对象:IP地址。(网络地址)

3.主要功能不同:交换机主要用于组建局域网,连接同属于一个子网的所有设备,负责子网内部通信(广播)。路由主要功能是将由交换机组好的局域网相互连接起来,或者将他们接入Internet

交换机能做的,路由都能做。路由可以分割广播域(子网),可以提供防火墙功能。交换机不可以。

2.MAC PHY

MAC控制器、PHY芯片、网络变压器和R45接头,有的系统会有DMA控制。

一般系统中CPU和MAC以及DMA控制器都是集成在一块芯片上的,PHY包含大量模拟器件,而MAC是典型的数字电路,MAC集成进CPU而将PHY留在片外。为了节省空间简化设计,很多时候网口的变压器和R45的接头集成在一起。

3.PHY

以太网收发物理层接口收发器。STA(管理实体,⼀般为 MAC 或 CPU)通过 MII对 PHY 的⾏为、状态进⾏管理和控制,⽽具体管理和控制动作是通过读写PHY内部的寄存器实现的。

作用:

PHY的主要功能是将数字信号转成模拟信号,然后在网线或者光纤传输。因为模拟信号和数字信号的不同,因此,大部分的PHY都是单独做到一个芯片内的。

PHYMAC通过MII接口进行数据传递,对发送的数据进行编码,对接收的数据进行解码。

4.MAC

MAC(Media Access Control) 即媒体访问控制层协议。MAC 由硬件控制器及 MAC 通信协议构成。主要负责控制与连接物理层的物理介质。位于OSI 七层协议中数据链路层。

作用:

1)封装网络层的数据,将数据封装为帧,实现帧同步对目标MAC地址和源MAC地址进行处理,对PHY传输错误时进行校准。

2)控制PHY芯片

⼀般以太⽹ MAC 芯⽚的⼀端连接 PCI 总线,另⼀端连接 PHY 芯⽚上通过 MII 接⼝连接。

5.MIIRMIIGMIIRGMIISMII

MAC 层与 PHY 芯⽚之间的传输标准。

MDIO协议(SMI协议)

一个MDC时钟线,一个MDIO双向传输的数据线。MDIO是用来连接主设备和多个PHY设备,通过MDIO来传输数据。

简述

Pins

速率计算

MII

(Medium Independent Interface,媒体独立接口)、基本的100Mbps10Mbps接口、16根线

RXD[3:0]  TXD[3:0]

TX_ER发送数据错误提示信号

TX_EN发送控制引脚

RX_ER接收数据错误提示信号

RX_DV接收数据引脚

TX_CLK,RX_CLK,参考时钟

CRS载波侦测信号

COL冲突检测信号

(这两个引脚一般用在半双工的模式,一般用不着)

Clock=25MHz or 2.5MHz

数据位宽4bit(一个时钟周期传输4bit数据)

100Mbps=25MHz*4bit

10Mbps=2.5MHz*4bit

RMII

在MII基础上精简100Mbps/10Mbps接口;通过提升Clock频率保持与MII一样的速率;

TXD[1:0],RXD[1:0],

TX_EN,

RX_ER,

CLK_REF,

CRS_DV

Clock=50MHz

数据位宽2bit

100Mbps=50MHz*2bit

10Mbps是利用10个周期采样一次数据相当于10Mbps=50MHz/10*2bit

SMII

串行MII 100Mbps10Mbps接口;进一步提升Clock频率保持与MII一样的速率;

TXD[0]

RXD[0]

SYNC

CLK_ REFO

Clock=125MHz

数据位宽1bit

串行数据帧一帧=10bi数据(8bit data+2bit control)

计算有效带宽时,需要减去控制位100Mbps=125MHz*(8bit/10bit)

10Mbps是利用10个周期采样一次数据相当于10Mbps=12.5MHz*(8bit/10bit)

GMII

在MII接口基础上提升了数据位宽和Clock频率,成为1000Mbps接口,

TXD[7:0]

RXD[7:0]

TX_ER,TX_EN

RX_ER,RX_DV

GTX_CLK,RX_CLK,

CRS, COL

Clock=125MHz

数据位宽8bit

1000Mbps=125MHz*8bit

RGMII

GMII的简化版本

TXD[3:0]  RXD[3:0]

TX_EN(TXCTL)发送使能信号

RX_DV(RXCTL)接收数据有效信号

TX_CLK, RX_CLK,

CRS, COL

Clock=125MHz

数据位宽4bit(一个时钟周期里上升沿取TX\RX的0-3bit下降沿取TX\RX的4-7bit所以其实还是在一个时钟周期里卖取了8bit数据)

1000Mbps=125MHz*8bit

100Mbps=25MHz* 4

10Mbps=2.5MHz* 4

SGMII

串行GMII为了达到1000Mbps时钟频率提升

RXD[0]

TXD[0]

RX_CLK

Clock=1250MHz、数据位宽1bit

串行数据帧一帧=10bit数据(8bit data+2bit conol)

计算有效带宽时需要减去控制位 1000Mbps=1250MHz*(8bit/10bit)

6.络变压器

网络变压器一般由共模电感,中心抽头,变压器这三部分构成。

网络变压器有两种,一种共模电感在前面,(共模电感一>变压器),一种(变压器一>共模电感)。网络变压器中的变压器应数为1:1,即网络变压器为1:1传输交流信号。选共模电感在后面。

作用

信号传输:阻抗匹配(BobSmith电路),滤除共模干扰,增强信号,可传递更远距离

隔离隔离PHY端和RJ45端直流分量,隔离外部干扰,防雷击,耐2kV~3kV

耦合:外部设备为不同电平时,仅耦合交流信号,电平与PHY端一致,可保护PHY芯片

Bobsmith电路作用:浪涌防护;降低EMC测试辐射。

7.RJ45

RJ45 是布线系统中信息插座(即通信引出端)连接器的一种,连接器 由插头(接头、水晶头)和插座(模块)组成,RJ 是 Registered Jack 的缩写,意思是“注册的插座”。

在以太网中只使 用了 1、2、3、6 这四根线,其中 1、2 这组负责传输数据(TX+、 TX-),而 3、6 这组负责接收数据(RX+、RX-),另外四根线是备用的。

这篇关于一文搞懂交换机 MAC PHY 网络变压器!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/897320

相关文章

Linux中压缩、网络传输与系统监控工具的使用完整指南

《Linux中压缩、网络传输与系统监控工具的使用完整指南》在Linux系统管理中,压缩与传输工具是数据备份和远程协作的桥梁,而系统监控工具则是保障服务器稳定运行的眼睛,下面小编就来和大家详细介绍一下它... 目录引言一、压缩与解压:数据存储与传输的优化核心1. zip/unzip:通用压缩格式的便捷操作2.

一文详解Git中分支本地和远程删除的方法

《一文详解Git中分支本地和远程删除的方法》在使用Git进行版本控制的过程中,我们会创建多个分支来进行不同功能的开发,这就容易涉及到如何正确地删除本地分支和远程分支,下面我们就来看看相关的实现方法吧... 目录技术背景实现步骤删除本地分支删除远程www.chinasem.cn分支同步删除信息到其他机器示例步骤

一文详解Java Stream的sorted自定义排序

《一文详解JavaStream的sorted自定义排序》Javastream中的sorted方法是用于对流中的元素进行排序的方法,它可以接受一个comparator参数,用于指定排序规则,sorte... 目录一、sorted 操作的基础原理二、自定义排序的实现方式1. Comparator 接口的 Lam

如何在Mac上彻底删除Edge账户? 手动卸载Edge浏览器并清理残留文件技巧

《如何在Mac上彻底删除Edge账户?手动卸载Edge浏览器并清理残留文件技巧》Mac上的Edge账户里存了不少网站密码和个人信息,结果同事一不小心打开了,简直尴尬到爆炸,想要卸载edge浏览器并清... 如果你遇到 Microsoft Edge 浏览器运行迟缓、频繁崩溃或网页加载异常等问题,可以尝试多种方

Mac系统下卸载JAVA和JDK的步骤

《Mac系统下卸载JAVA和JDK的步骤》JDK是Java语言的软件开发工具包,它提供了开发和运行Java应用程序所需的工具、库和资源,:本文主要介绍Mac系统下卸载JAVA和JDK的相关资料,需... 目录1. 卸载系统自带的 Java 版本检查当前 Java 版本通过命令卸载系统 Java2. 卸载自定

一文深入详解Python的secrets模块

《一文深入详解Python的secrets模块》在构建涉及用户身份认证、权限管理、加密通信等系统时,开发者最不能忽视的一个问题就是“安全性”,Python在3.6版本中引入了专门面向安全用途的secr... 目录引言一、背景与动机:为什么需要 secrets 模块?二、secrets 模块的核心功能1. 基

一文详解MySQL如何设置自动备份任务

《一文详解MySQL如何设置自动备份任务》设置自动备份任务可以确保你的数据库定期备份,防止数据丢失,下面我们就来详细介绍一下如何使用Bash脚本和Cron任务在Linux系统上设置MySQL数据库的自... 目录1. 编写备份脚本1.1 创建并编辑备份脚本1.2 给予脚本执行权限2. 设置 Cron 任务2

一文详解如何在idea中快速搭建一个Spring Boot项目

《一文详解如何在idea中快速搭建一个SpringBoot项目》IntelliJIDEA作为Java开发者的‌首选IDE‌,深度集成SpringBoot支持,可一键生成项目骨架、智能配置依赖,这篇文... 目录前言1、创建项目名称2、勾选需要的依赖3、在setting中检查maven4、编写数据源5、开启热

六个案例搞懂mysql间隙锁

《六个案例搞懂mysql间隙锁》MySQL中的间隙是指索引中两个索引键之间的空间,间隙锁用于防止范围查询期间的幻读,本文主要介绍了六个案例搞懂mysql间隙锁,具有一定的参考价值,感兴趣的可以了解一下... 目录概念解释间隙锁详解间隙锁触发条件间隙锁加锁规则案例演示案例一:唯一索引等值锁定存在的数据案例二:

一文全面详解Python变量作用域

《一文全面详解Python变量作用域》变量作用域是Python中非常重要的概念,它决定了在哪里可以访问变量,下面我将用通俗易懂的方式,结合代码示例和图表,带你全面了解Python变量作用域,需要的朋友... 目录一、什么是变量作用域?二、python的四种作用域作用域查找顺序图示三、各作用域详解1. 局部作