RGMII基于V2.0规范解读

一、说明

RGMII(Reduced Gigabit Media Independent Interface)是Reduced GMII(吉比特介质独立接口),旨在替代IEEE802.3u MII、IEEE802.3z GMII和TBI。主要目标是将MAC和PHY互连所需的引脚数量从最大28个引脚(TBI)减少到12个引脚,为了实现这一目标,将减少数据路径和所有相关的控制信号,并且将控制信号多路复用在一起,并且将使用时钟的两个边沿。RGMII支持传输速率:10M/100M/1000Mb/s ,其对应CLK信号分别是2.5MHz、25MHz和125MHz。

系统框图如下:

二、信号定义

RGMII将与简化十位接口(RTBI)共享四个数据路径信号,并与第五个数据信号共享控制功能。通过包MDIO/MDC串行管理信号,RTBI将不需要独立的控制信号,如LK_REF、BYTE_EN等。SERDES控制位的寄存器分配留给设计者。

从上表可以看的,TXC/RXC是时钟信号,TD【3:0】/RD【3:0】在时钟上升沿时是RGMII的低4位,时钟下降沿是RGMII的高4位;对于RTBI模式的话,时钟上升沿是低4位,时钟下降沿是第9~6位(bits8:5);TX_CTL/RX_CTL对于RGMII模式,在时钟上升沿是使能信号,在时钟下降沿是使能信号和错误信号的异或后的结果;对于RTBI模式,在时钟上升沿是第5位数据,在时钟下降沿是第10位数据。

总结下来就是,RGMII模式(TX举例)下,TXC是时钟,TD【3:0】是4个数据信号,TX_CTL传输使能和错误信号;RTBI模式,TXC是时钟,TD【3:0】和TX_CTL都是传输数据。

三、时序要求

RGMII是双边沿采样(DDR),具体时序图如下:

RGMII的时钟和数据由信号源同时生成,因此时钟和数据之间的偏斜对于正确操作至关重要。具体参数要求如下:

表格主要以1000M模式举例,备注中有10M/100M的要求。另外特别需要大家了解的是,实测建立保持时间很可能不满足规格要求,原因是芯片内部寄存器可以配置延时,因此实际的建立保持时间需要综合上软件配置的延迟时间,才是实际的建立保持时间。表格中Tr和Tf测试时需保证足够的有效带宽(示波器+探头+正确的测试方法)。

四、TX_CTL的编码

为了减少功率消耗,ERR信号将以在正常网络操作期间最小化转换的方式进行编码。ERR和EN信号异或后的值做为实际信号电平传输,然后在接收端通过已知的EN电平和异或后的电平解码出ERR信号。

当接收到一个无错的有效帧,EN=True(在时钟上升沿产生一个高电平),ERR=False(在时钟下降沿产生一个高电平,EN和ERR值不同,异或后为1);当没有帧被接收,EN=False(在时钟上升沿产生一个低电平),ERR=False(在时钟下降沿产生一个低电平,EN和ERR值想同,异或后为0),这也就是正常的帧间时间。

当接收到一个带错误bit的帧时,EN=True(在时钟上升沿产生一个高电平),ERR=True(在时钟下降沿产生一个低电平,EN和ERR值相同,异或后为0);

各种情况的组合如下表,其中正常遇到一般是第一行和最后2行,分别代表帧间时间,无错传输和有错传输:

对应的时序如下:

五、带内状态

为了便于检测PHY的链路状态、速度和双工模式,帧间信号将被放置在RXD[3:0]信号上,如下表4所示。当不存在正常数据、数据错误、载波扩展、载波检测或假载波时,应指示PHY的状态。当链路状态关闭时,PHY的速度和双工由PHY的内部设置定义。根据个人工作经验,大部分都是寄存器内部设置。

时序波形如下:

六、其他说明

1.电气参数

根据协议描述让参考JEDEC EIA/JESD8-6(https://www.doc88.com/p-1436934939315.html),我查看了一下基本不太适用,大家还是参考具体芯片规格书即可。![](https://file.jishuzhan.net/article/1790538830651068418/e377ea5683b89fb819a4b5b1461872a5.webp)

2.某芯片规格书

RGMII框图如下:

信号电平:

时序要求,基本和协议要求一致:

相关推荐
Lester_110110 天前
STM32霍尔传感器输入口设置为复用功能输入口时,还能用GPIO函数直接读取IO的状态吗
stm32·单片机·嵌入式硬件·电机控制
LCG元10 天前
低功耗显示方案:STM32L0驱动OLED,动态波形绘制与优化
stm32·嵌入式硬件·信息可视化
三佛科技-1873661339710 天前
120W小体积碳化硅电源方案(LP8841SC极简方案12V10A/24V5A输出)
单片机·嵌入式硬件
z203483152010 天前
STM32F103系列单片机定时器介绍(二)
stm32·单片机·嵌入式硬件
Alaso_shuang10 天前
STM32 核心输入、输出模式
stm32·单片机·嵌入式硬件
脚后跟10 天前
AI助力嵌入式物联网项目全栈开发
嵌入式硬件·物联网·ai编程
2501_9181269110 天前
stm32死锁是怎么实现的
stm32·单片机·嵌入式硬件·学习·个人开发
星马梦缘10 天前
驱动层开发——蜂鸣器驱动
stm32·单片机·嵌入式硬件·hal·驱动
小刘爱玩单片机10 天前
【stm32简单外设篇】- 测速传感器模块(光电)
c语言·stm32·单片机·嵌入式硬件
电化学仪器白超10 天前
EC20CEHDLG-128-SNNS调试记录
python·单片机·嵌入式硬件·自动化