Mac与Phy组成原理的简单分析
Mac与Phy组成原理的简单分析 2011-12-28 15:30:43
//http://blog.chinaunix.net/uid-20528014-id-3050217.html
作者:fireaxe_hq@hotmail.com
Mac与Phy组成原理的简单分析
1 1.general
下图是网口结构简图。网口由CPU、MAC和PHY三部分组成。DMA控制器通常属于CPU的一部分,用虚线放在这里是为了表示DMA控制器可能会参与到网口数据传输中。
对于上述的三部分,并不一定都是独立的芯片,根据组合形式,可分为下列几种类型:
方案一:CPU集成MAC与PHY;
方案二:CPU集成MAC,PHY采用独立芯片;
方案三:CPU不集成MAC与PHY,MAC与PHY采用集成芯片;
本例中选用方案二做进一步说明,因为CPU总线接口很常见,通常都会做成可以像访问内存一样去访问,没必要拿出来说,而Mac与PHY之间的MII接口则需要多做些说明。
下图是采用方案二的网口结构图。虚框表示CPU,MAC集成在CPU中。PHY芯片通过MII接口与CPU上的Mac连接。
在软件上对网口的操作通常分为下面几步:
1) 1) 为数据收发分配内存;
2) 2) 初始化MAC寄存器;
3) 3) 初始化PHY寄存器(通过MIIM);
4) 启动收发;
2.2. MII
MII接口是MAC与PHY连接的标准接口。因为各厂家采用了同样的接口,用户可以根据所需的性能、价格,采用不同型号,甚至不同公司的phy芯片。
需要发送的数据通过MII接口中的收发两组总线实现。而对PHY芯片寄存器的配置信息,则通过MII总的一组串口总线实现,即MIIM(MII Management)。
下表列出了MII总线中主要的一些引脚
PIN Name |
Direction |
Description |
TXD[0:3] |
Mac to Phy |
Transmit Data |
TXEN |
Mac to Phy |
Transmit Enable |
TXCLK |
Mac to Phy |
Transmit Clock |
RXD[0:3] |
Phy to Mac |
Receive Data |
RXEN |
Phy to Mac |
Receive Enable |
RXCLK |
Phy to Mac |
Receive Clock |
MDC |
Mac to Phy |
Management Data Clock |
MDIO |
Bidirection |
Management Data I/O |
MIIM只有两个线,时钟信号MDC与数据线MDIO。读写命令均由Mac发起,PHY不能通过MIIM主动向Mac发送信息。由于MIIM只能有Mac发起,我们可以操作的也就只有MAC上的寄存器。
3. 3.DMA
收发数据总是间费时费力的事,尤其对于网络设备来说更是如此。CPU做这些事情显然不合适。既然是数据搬移,最简单的办法当然是让DMA来做。毕竟专业的才是最好的。
这样CPU要做的事情就简单了。只需要告诉DMA起始地址与长度,剩下的事情就会自动完成。
通常在MAC中会有一组寄存器专门用户记录数据地址,tbase与rbase,cpu按MAC要的格式把数据放好后,启动MAC的数据发送就可以了。启动过程常会用到寄存器tstate。
4.4. MAC
CPU上有两组寄存器用与MAC。一组用户数据的收发,对应上面的DMA;一组用户MIIM,用户对PHY进行配置。
两组寄存器由于都在CPU上,配置方式与其他CPU上寄存器一样,直接读写即可。
数据的转发通过DMA完成。
5.5. PHY
该芯片是一个10M/100M Ethernet网口芯片
PHY芯片有一组寄存器用户保存配置,并更新状态。CPU不能直接访问这组寄存器,只能通过MAC上的MIIM寄存器组实现间接访问。
同时PHY芯片负责完成MII总线的数据与Media Interface上数据的转发。该转发根据寄存器配置自动完成,不需要外接干预。
作者:fireaxe_hq@hotmail.com
Mac与Phy组成原理的简单分析相关推荐
- 网口扫盲二:Mac与Phy组成原理的简单分析
1. general 下图是网口结构简图.网口由CPU.MAC和PHY三部分组成.DMA控制器通常属于CPU的一部分,用虚线放在这里是为了表示DMA控制器可能会参与到网口数据传输中. MAC(Medi ...
- 网口扫盲二:Mac与Phy组成原理的简单分析(转)
1. general 下图是网口结构简图.网口由CPU.MAC和PHY三部分组成.DMA控制器通常属于CPU的一部分,用虚线放在这里是为了表示DMA控制器可能会参与到网口数据传输中. 对于上述的三部分 ...
- 网卡介绍——MAC与PHY的关系分析
(一) 网卡初步认识 网络适配器又称网卡或网络接口卡(NIC),英文名Network Interface Card.它是使计算机联网的设备.平常所说的网卡就是将PC机和LAN连接的网络适配器.网卡(N ...
- 网卡构造:MAC与PHY的关系,GMAC介绍
GMAC:千兆网媒体访问控制 GMAC接口(1)--GMAC简介_daikaimiao的博客-CSDN博客_gmac GMAC接口(2)--协议_daikaimiao的博客-CSDN博客_gmac协议 ...
- 【genius_platform软件平台开发】第九十八讲:嵌入式网络接口(MAC、PHY)
1. 嵌入式网络简介 1.1 嵌入式下的网络硬件接口 提起网络,我们一般想到的硬件就是"网卡",现在网卡已经是通过一个芯片来完成了,嵌入式网络硬件分为两部分:MAC和PHY,大家都 ...
- 转载:网口扫盲三:以太网芯片MAC和PHY的关系
原文地址:http://www.cnblogs.com/jason-lu/articles/3195473.html 问:如何实现单片以太网微控制器? 答:诀窍是将微控制器.以太网媒体接入控制器(MA ...
- howdoi 简单分析
对howdoi的一个简单分析. 曾经看到过下面的这样一段js代码: try{doSth(); } catch (e){ask_url = "https://stackoverflow.com ...
- iphone实用配置工具_Debookee for Mac(网络数据抓包及分析工具)
Debookee for Mac(网络数据抓包及分析工具)www.macw.com Debookee Mac破解版是MacOS上的一款非常不错的抓包软件,Debookee Mac破解版能够进行网络流 ...
- x264源代码简单分析:x264命令行工具(x264.exe)
===================================================== H.264源代码分析文章列表: [编码 - x264] x264源代码简单分析:概述 x26 ...
最新文章
- 图片浏览(CATransition)转场动画
- 爬虫实战:Requests+BeautifulSoup 爬取京东内衣信息并导入表格(python)
- ArcGIS实验教程——实验十二:栅格数据投影变换
- 【Pytorch神经网络实战案例】14 构建条件变分自编码神经网络模型生成可控Fashon-MNST模拟数据
- 20190520算法题存档
- php 添加透明水印,php加水印的代码(支持半透明透明打水印,支持png透明背景)
- [转] 面试70问经典回答
- 项目管理九大知识体系(转)
- 录制课程视频用什么软件?微课录屏软件等你来选!
- 移动计算机笔试题,广东移动笔试题目
- ps盖印图层在哪里_ps盖印图层快捷键怎么用? ps盖印图层教程
- 微信好友保存在服务器,微信好友数据备份好,封号也不怕!
- ie禁用java怎么办,您如何解决IE中禁用javascript的问题?
- 网易即时通讯云平台99.99%可靠性的运维经验谈
- 【游戏客户端】聊天排行榜朋友圈系统实现机制
- 炽天覆七环Ajax,【经典】无限剑制——Unlimited blade works
- qlv格式无需工具快速转MP4
- 安装程序时出现乱码解决方法~~AppLocale作祟
- AD20的元件库及加载(一)
- 浅谈程序员的数学修养(转载)