正点原子lwIP学习笔记——MAC简介

1.MAC简介

stm32自带有10/100Mbit/s的以太网MAC内核,他提供地址以及媒体访问的控制方式。
MAC内核特性:

  1. 传输速率:支持外部PHY接口实现10/100Mbit/s数据传输速率;
  2. 协议标准:符合IEEE802.3/3u的MII和RMII接口与快速以太网PHY通信;
  3. 工作模式:支持全双工和半双工操作;
  4. 站管理接口:支持通过MDIO接口配置和管理PHY设备;

2.ST的ETH框架

ETH框架
按照从左向右的顺序介绍:

  • 以太网DMA数据包以DMA方式发送/接收
  • MAC内核以太网帧发送时,给数据加上一些控制信息;以太网接收时,去掉控制信息;
  • PHY交互接口:数据通道——介质接口RMII/MII;管理通道——SMI站管理接口。

3.SMI站管理接口

允许应用程序通过时钟线和数据线访问任意PHY寄存器,最多支持32个PHY访问

  • MDC:周期始终引脚(最大频率为2.5MHz);
  • MDIO:数据输入/输出比特流。
    SMI站管理示意图

SMI帧格式

  • PADDR:PHY地址(00_1F);
  • RADDR:寄存器地址(00_1F);
  • 数据位:16位数据位(PHY寄存器都是16位)。
    帧格式

MDIO时序和帧结构——写周期

写时序
主要是看要写到哪里去,也就是PHY地址的确定,下面两个是两种stm32自带的PHY芯片,左边的芯片可以通过两个引脚设置;而右边的则只有一个引脚。

MDIO时序和帧结构——读周期

读时序
数据就是16位的。
其中,MDC的时钟来自于stm32内部,是通过AHB时钟树分频得到的。

4.介质接口MMI、RMII

用于MAC与外接的PHY互联,支持10/100Mbit/s数据传输模式。
以太网帧转发到PHY设备中
发送
以发送数据为例,IP的数据包保存到缓冲区,经过以太网的DMA,转发到TX FIFO(2kB的大小,而以太网数据不能超过1500字节,够用了);再转发到MAC内核中,变成以太网帧;以太网帧就需要介质接口转发到PHY,一般采用RMII转发到PHY芯片。
接收的话,就换成RX然后路径反过来就行了。

介质接口MII、RMII比较

对比图
MII有16个引脚,RMII只有9个引脚;MII参考时钟是25MHz,而RMII是50MHz;MII是4位位宽,而RMII只能收发2位位宽。

介质接口MII、RMII引脚数量

连接示意图

  • MII所需引脚位16个,而RMII所需只有9个;
  • MII的TX_CLK和RX_CLK由PHY芯片提供,使得MAC内核以这个时钟采集收发数据;
  • RMII的REF_CLK,MAC内核以这个时钟采集收发数据。
    注意:RX_ER和RX_DV用来检测以太网帧是否有效;而CRS和COL以及CRS_DV在全双工模式下无效

介质接口MII、RMII参考时钟

参考时钟

  • MII的参考时钟源有两个:MCO输出25MHz以及外部晶振输出25MHz;
  • RMII的参考时钟源有两个:MCO经过倍频PLL输出50MHz以及外部晶振输出50MHz(必须同时提供PHY和MAC)。
    时钟源均为2选1。
    注意:MII接口的TX_CLK和RX_CLK是根据数据传输速率挂钩,10Mbit/s对应2.5MHz,100Mbit/s对应25MHz

介质接口MII、RMII收发位宽

收发位宽
MII一个周期收发位宽为4位数据,RMII则是2位数据。
注意:两者的参考时钟不同,但是单位时间传输的数据量是相等的!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值