热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

以太网的硬件地址,基于以太网的信号传输设计

1.以太网MAC和PHY1.1MAC介绍MAC(MediaAccessControl即媒体访问控制层协议。MAC由硬件控制器及MAC通信协议构成。该协议位于OSI七层协议


1 .以太网MAC和PHY 1.1 MAC介绍媒体接入控制(MAC )或媒体接入控制层协议。 MAC由硬件控制器和MAC通信协议组成。 该协议位于OSI第7层协议数据链路层的下半部分,主要负责物理层物理媒体的控制和连接。 MAC硬件的框图如下图所示。


在发射数据时,MAC协议可以确定是否可以预先发射数据,如果可以,则将某些控制信息添加到数据中,最终以给定格式将数据和控制信息发射到物理层;


在接收到数据时,MAC协议首先确定输入信息是否在传输错误中,其消除了控制信息,并将其发送到逻辑链路控制(LLC )层。


此层协议是以太网MAC,由IEEE-802. 3以太网标准定义。 一般的以太网MAC芯片一端连接到PCI总线,另一端连接到PHY芯片,并通过MII接口连接。


1.2 PHY介绍PHY (物理层)是IEEE802.3中定义的标准模块,sta ) stationmanagemententity,管理实体,一般为MAC或CPU )为miim )


当PHY发送数据时,PHY接收来自MAC的数据(对PHY来说没有帧的概念,对其来说都是数据),将并行数据转换成串行流数据,根据物理层的编码规则对数据进行编码,转换成模拟信号


PHY的另一个重要功能是实现CSMA/CD的部分功能。 它检测网络上是否有数据传输,如果有传输中的数据,则进行待机,如果检测出网络空闲,则等待随机时间后发送数据。 如果两个碰巧同时发送了数据,则可能会发生冲突。 此时,碰撞检测机制可以检测碰撞,并在每个随机时间重新发送数据


1.3从MAC和PHY的相关硬件角度来看,以太网接口电路主要由媒体访问控制(MAC )控制器和物理层接口(PHY )两大部分组成如下图所示


但在实际设计中,这三个部分并不总是独立的。 这是因为,考虑到PHY整合了大量模拟硬件,而MAC是典型的全数字器件芯片面积和模拟/数字混合架构的原因,通常通过将MAC集成进微控制器而将PHY留在片外更灵活、密度更高的芯片技术,使用MAC和PHY的单芯片可以分类为以下类型:


CPU集成MAC和PHY。 现在不多见了


内置CPU的MAC、PHY采用独立的芯片。 比较常见


MAC和PHY在OSI层模型的数据链路层和物理层工作。 具体情况如下


2. MII/RMII/GMII/RGMII基本上介绍了媒体无关接口,或媒体无关接口,其是IEEE-802.3中定义的行业标准,MAC MII数据接口包含16个信号和2个管理接口信号,如下图所示。


信号定义如下。


MAC通过MII接口读取PHY状态寄存器,并知道当前PHY的状态。 例如,连接速度、双重能力等。


也可以通过在MII中设置PHY的寄存器来达到控制的目的。 例如,流体控制开/关、自动协商模式还是强制模式等。


MII以4位半字节方式传输数据双向传输,时钟速率为25MHz。 动作速度达到100Mb/s秒。 当时钟频率为2.5MHz时,对应速度为10Mb/s。


MII接口灵活,但由于信号线过多限制了多接口网口的发展,后来衍生出了RMII、SMII等。


2.2 rmiirmii (reducedmediaindependantinterface ),简化了MII连接器,节省了一半的数据线。 RMII收发使用2位数据进行传输,收发时钟均采用50MHz时钟源。 信号定义如下。


其中,CRS_DV是MII中RX_DV和CRS这两个信号的合并,在物理层接收到载波信号后CRS_DV变为有效,将数据发送到RXD。 如果载波信号消失,则CRS_DV无效。 在100M以太网速率下,MAC层每1个时钟对RXD[1:0]上的数据进行采样,在10M以太网速率下,MAC层每10个时钟对RXD[1:0]上的数据进行采样


2.3串行媒体数据接口(smiismii )、串行MII接口。 它包括TXD、RXD、SYNC三条信号线,共享一个时钟信号。 该时钟信号为125MHz,信号线与该时钟同步。 信号定义如下。


SYNC是数据收发的同步信号,每10个时钟同步提升一次,表示同步。 TXD和RXD上的数据和控制信息以10bit为一组。 发送波形的一部分如下。


由波形可知,SYNC升高后以10个时钟周期,TXD依次输出10位的数据组即TX_ER、TX_EN、TXD[0:7],这些控制信息与MII接口同义。 在100M费率下,各组的内容会被转换。 按照10M速率,每组数据需要重复10次

样任一一组都可以

2.4 GMII

GMII(Gigabit Media Independant Interface),千兆MII接口。GMII采用8位接口数据,工作时钟125MHz,因此传输速率可达1000Mbps。同时兼容MII所规定的10/100 Mbps工作方式。GMII接口数据结构符合IEEE以太网标准,该接口定义见IEEE 802.3-2000。信号定义如下:

2.5 RGMII

RGMII(Reduced Gigabit Media Independant Interface),精简GMII接口。相对于GMII相比,RGMII具有如下特征:

发送/接收数据线由8条改为4条
TX_ER和TX_EN复用,通过TX_CTL传送
RX_ER与RX_DV复用,通过RX_CTL传送
1 Gbit/s速率下,时钟频率为125MHz
100 Mbit/s速率下,时钟频率为25MHz
10 Mbit/s速率下,时钟频率为2.5MHz


虽然RGMII信号线减半,但TXC/RXC时钟仍为125Mhz,为了达到1000Mbit的传输速率,TXD/RXD信号线在时钟上升沿发送接收GMII接口中的TXD[3:0]/RXD[3:0],在时钟下降沿发送接收TXD[7:4]/RXD[7:4],并且信号TX_CTL反应了TX_EN和TX_ER状态,即在TXC上升沿发送TX_EN,下降沿发送TX_ER,同样的道理试用于RX_CTL,下图为发送接收的时序:

3. 以太网接口类型 3.1 以太网物理层标准

3.2 光口

光口是光纤接口的简称
目前以太网光模块封装有 GBIC 、 SFF 、 SFP ,公司目前推荐使用的是 GBIC
和 SFP 两种可热插拔的光模块,有 850nm 、 1310nm 、 1550nm 波长。

光纤有单模、多模之分,区别在于:

1) 单模光纤芯径小(10m m左右),仅允许一个模式传输,色散小,工作在长波长(1310nm和1550nm),与光器件的耦合相对困难。

2)多模光纤芯径大(62.5m m或50m m),允许上百个模式传输,色散大,工作在850nm或1310nm。与光器件的耦合相对容易。

光模块
GBIC(Gigabit Interface Converter的缩写),是将千兆位电信号转换为光信号的接口器件。GBIC设计上可以为热插拔使用。GBIC是一种符合国际标准的可互换产品。采用GBIC接口设计的千兆位交换机由于互换灵活,在市场上占有较大的市场份额。

SFP (Small Form-factor Pluggable)可以简单的理解为GBIC的升级版本。

3.3 电口

电口是相对光口来讲的,主要指铜缆,是处理的电信号。目前使用普遍的网络接口有百兆电口和千兆电口等。
RJ45接口通常用于数据传输,最常见的应用为网卡接口。RJ45头根据线的排序不同的法有两种,一种是橙白、橙、绿白、蓝、蓝白、绿、棕白、棕;另一种是绿白、绿、橙白、蓝、蓝白、橙、棕白、棕;因此使用RJ45接头的线也有两种即:直通线、交叉线。

RJ45型网卡接口:
10 100base tx RJ45接口是常用的以太网接口,支持10兆和100兆自适应的网络连接速度,常见的RJ45接口有两类:用于以太网网卡、路由器以太网接口等的DTE类型,还有用于交换机等的DCE类型。 DTE我们可以称做"数据终端设备”,DCE我们可以称做“数据通信设备”。从某种意义来说,DTE设备称为“主动通信设备”,DCE设备称为“被动通信设备”。当两个类型一样的设备使用RJ45接口连接通信时,必须使用交叉线连接。

RJ45 型网线插头又称水晶头,共有八芯做成,广泛应用于局域网和 ADSL 宽带上网用户的网络设备间网线(称作五类线或双绞线)的连接。
RJ-45 插座可以分为屏蔽式和非屏蔽式、 直插式和侧插式、 带 LED 灯和不带 LED 灯, 有单端口、两端口、 单排四端口、 单排 6 端口、 单排 8 端口、 双排 8 端口、 双排 12 端口、双排 16 端口等,有 8PIN、 6PIN 和 4PIN 。图 3 所示是常用的屏蔽式、侧插、
带 LED 指示灯、单排四端口的 RJ-45 插座。其中 LED 指示灯是绿色和黄色,可以分别表示 LINK (链路完整)和 ACT (有收发活动)等。

3.4 100M 接口

3.5 1000M 接口定义

千兆PHY通过网络变压器连接到RJ45接口,一共有4对差分线MDI[0…3]+/-。一般的接法是:
MDI[0]+ : RJ45[1]
MDI[0]- : RJ45[2]
MDI[1]+ : RJ45[3]
MDI[1]- : RJ45[6]
MDI[2]+ : RJ45[4]
MDI[2]- : RJ45[5]
MDI[3]+ : RJ45[7]
MDI[3]- : RJ45[8]
RJ45[1…8]连接器的线序与水晶头的压接顺序一致。

4. 以太网接口电路PCB设计

从硬件的角度看,以太网接口电路主要由MAC(Media Access Controlleroler)控制和物理层接口(Physical Layer,PHY)两大部分构成。大部分处理器内部包含了以太网MAC控制,但并不提供物理层接口,故需外接一片物理芯片以提供以太网的接入通道。

下图是以太网的典型应用。我们的PCB设计基本是按照这个框图来布局布线,下面我们就以这个框图详解以太网有关的布局布线要点。

4.1 布局布线注意事项

下图是网口变压器没有集成在网口连接器里的参考电路PCB布局、布线图。

a) RJ45和变压器之间的距离尽可能的短,晶振远离接口、PCB边缘和其他的高频设备、走线或磁性元件周围,PHY层芯片和变压器之间的距离尽可能短,但有时为了顾全整体布局,这一点可能比较难满足,但他们之间的距离最大约10~12cm,器件布局的原则是通常按照信号流向放置,切不可绕来绕去;

b) PHY层芯片的电源滤波按照芯片要求设计,通常每个电源端都需放置一个退耦电容,他们可以为信号提供一个低阻抗通路,减小电源和地平面间的谐振,为了让电容起到去耦和旁路的作用,故要保证退耦和旁路电容由电容、走线、过孔、焊盘组成的环路面积尽量小,保证引线电感尽量小;

c) 网口变压器PHY层芯片侧中心抽头对地的滤波电容要尽量靠近变压器管脚,保证引线最短,分布电感最小;

d) 网口变压器接口侧的共模电阻和高压电容靠近中心抽头放置,走线短而粗(≥15mil);

e) 变压器的两边需要割地:即RJ45连接座和变压器的次级线圈用单独的隔离地,隔离区域100mil以上,且在这个隔离区域下没有电源和地层存在。这样做分割处理,就是为了达到初、次级的隔离,控制源端的干扰通过参考平面耦合到次级;

f) 指示灯的电源线和驱动信号线相邻走线,尽量减小环路面积。指示灯和差分线要进行必要的隔离,两者要保证足够的距离,如有空间可用GND隔开;

g) 用于连接GND和PGND的电阻及电容需放置地分割区域。

以太网的信号线是以差分对(Rx±、Tx±)的形式存在,差分线具有很强共模抑制能力,抗干扰能力强,但是如果布线不当,将会带来严重的信号完整性问题。下面我们来一一介绍差分线的处理要点:

a) 优先绘制Rx±、Tx±差分对,尽量保持差分对平行、等长、短距,避免过孔、交叉。由于管脚分布、过孔、以及走线空间等因素存在使得差分线长易不匹配,时序会发生偏移,还会引入共模干扰,降低信号质量。所以,相应的要对差分对不匹配的情况作出补偿,使其线长匹配,长度差通常控制在5mil以内,补偿原则是哪里出现长度差补偿哪里;

b) 当速度要求高时需对Rx±、Tx±差分对进行阻抗控制,通常阻抗控制在100Ω±10%;

c) 差分信号终端电阻(49.9Ω,有的PHY层芯片可能没有)必须靠近PHY层芯片的Rx±、Tx±管脚放置,这样能更好的消除通信电缆中的信号反射;

d) 差分线对上的滤波电容必须对称放置,否则差模可能转成共模,带来共模噪声,且其走线时不能有stub ,这样才能对高频噪声有良好的抑制能力。

变压器集成在连接器的以太网电路的PCB布局、布线较不集成的相对简单很多,下图 3是采用一体化连接器的网口电路的PCB布局、布线参考图:

从上图可以看出,图 3和图 1的不同之处在于少了网口变压器,其它大体相同。不同之处主要体现在网口变压器已集成至连接器里,所以地平面无需进行分割处理,但我们依然需要将一体化连机器的外壳连接到连续的地平面上。(或者划分接口地,外壳连接到接口地)

5. 常用以太网PHY芯片选型


部分内容转自:
https://blog.csdn.net/sternlycore/article/details/89065789
https://blog.csdn.net/ZCShouCSDN/article/details/80090802
https://blog.csdn.net/wqfhenanxc/article/details/82221495


推荐阅读
  • 利用ZFS和Gluster实现分布式存储系统的高效迁移与应用
    本文探讨了在Ubuntu 18.04系统中利用ZFS和Gluster文件系统实现分布式存储系统的高效迁移与应用。通过详细的技术分析和实践案例,展示了这两种文件系统在数据迁移、高可用性和性能优化方面的优势,为分布式存储系统的部署和管理提供了宝贵的参考。 ... [详细]
  • 负载均衡基础概念与技术解析
    随着互联网应用的不断扩展,用户流量激增,业务复杂度显著提升,单一服务器已难以应对日益增长的负载需求。负载均衡技术应运而生,通过将请求合理分配到多个服务器,有效提高系统的可用性和响应速度。本文将深入探讨负载均衡的基本概念和技术原理,分析其在现代互联网架构中的重要性及应用场景。 ... [详细]
  • 深入解析OSI七层架构与TCP/IP协议体系
    本文详细探讨了OSI七层模型(Open System Interconnection,开放系统互连)及其与TCP/IP协议体系的关系。OSI模型将网络通信过程划分为七个层次,每个层次负责不同的功能,从物理层到应用层逐步实现数据传输和处理。通过对比分析,本文揭示了OSI模型与TCP/IP协议在结构和功能上的异同,为理解现代网络通信提供了全面的视角。 ... [详细]
  • 本文详细介绍了HDFS的基础知识及其数据读写机制。首先,文章阐述了HDFS的架构,包括其核心组件及其角色和功能。特别地,对NameNode进行了深入解析,指出其主要负责在内存中存储元数据、目录结构以及文件块的映射关系,并通过持久化方案确保数据的可靠性和高可用性。此外,还探讨了DataNode的角色及其在数据存储和读取过程中的关键作用。 ... [详细]
  • 本文提供了 RabbitMQ 3.7 的快速上手指南,详细介绍了环境搭建、生产者和消费者的配置与使用。通过官方教程的指引,读者可以轻松完成初步测试和实践,快速掌握 RabbitMQ 的核心功能和基本操作。 ... [详细]
  • 在RabbitMQ中,消息发布者默认情况下不会接收到关于消息在Broker中状态的反馈,这可能导致消息丢失的问题。为了确保消息的可靠传输与投递,可以采用确认机制(如发布确认和事务模式)来验证消息是否成功抵达Broker,并采取相应的重试策略以提高系统的可靠性。此外,还可以配置消息持久化和镜像队列等高级功能,进一步增强消息的可靠性和高可用性。 ... [详细]
  • Visualizing and Understanding Convolutional Networks(ZFNet网络)论文阅读笔记
    VisualizingandUnderstandingConvolutionalNetworksZFNet网络架构论文阅读笔记2022.4.4论文地址https:arxiv ... [详细]
  • 这家安全厂商避谈“软件定义”,我却要为它的“反骨”点赞
    点击上方“中国云报”可直接关注!已经成立了9年的迪普科技,今年第一次举办大规模的合作伙伴大会。4月20日,以“创享未来,诚献 ... [详细]
  • Ansible:自动化运维工具详解
    Ansible 是一款新兴的自动化运维工具,基于 Python 开发,集成了多种运维工具(如 Puppet、CFEngine、Chef、Func 和 Fabric)的优点,实现了批量系统配置、程序部署和命令执行等功能。本文将详细介绍 Ansible 的架构、特性和优势。 ... [详细]
  • 在软件开发过程中,经常需要将多个项目或模块进行集成和调试,尤其是当项目依赖于第三方开源库(如Cordova、CocoaPods)时。本文介绍了如何在Xcode中高效地进行多项目联合调试,分享了一些实用的技巧和最佳实践,帮助开发者解决常见的调试难题,提高开发效率。 ... [详细]
  • 技术分享:使用 Flask、AngularJS 和 Jinja2 构建高效前后端交互系统
    技术分享:使用 Flask、AngularJS 和 Jinja2 构建高效前后端交互系统 ... [详细]
  • 考前准备方面,我的考试时间安排在上午11点至12点,只需提前20分钟到达考场的接待休息区即可。由于我居住在福田区,交通便利,可以选择多种方式前往考场。为了确保顺利通过考试,我建议考生提前熟悉考试流程和环境,并合理规划出行时间,以保持良好的心态和状态。此外,考前复习应注重理论与实践相结合,多做模拟题,加强对重点知识点的理解和掌握。 ... [详细]
  • datagrip调试存储过程_PLC控制柜是什么?当PLC程序设置完后,如何调试能不烧毁PLC?...
    PLC控制柜是指成套的控制,可实现电机,开关的控制的电气柜。PLC控制柜有过载、短路、缺相保护等功能。其结构紧凑、工作稳定、功能齐全,可以 ... [详细]
  • 融合架构浪潮第二代融合架构;模块化设计计算、存储、网络、管理、IO节点模块化,支持灵活组合;相较与1U机架式服务器,提升47 ... [详细]
  • 我们身边的网络知识
    我们身边的网络常识今天咱们交流的主题是网络基础,这块东西对于咱们计算机或者通讯专业的人来说应该是很熟悉的,今天拿出来再说一说,是因为这块知识在咱们工作和生活中时刻都在使用,并且非常 ... [详细]
author-avatar
越秀地产星汇凤凰近_681
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有