马上注册,结交更多好友,享用更多功能,让你轻松玩转社区
您需要 登录 才可以下载或查看,没有账号?立即注册
×
网络设备一定离不开MAC和PHY,有MAC和PHY的地方就有相应的接口,无论看得见或者看不见,它就在那里,不悲不喜。在以太网中,这个接口就是介质无关接口,英文称为Media Independent Interface,简称MII。MII适用于百兆网络设备,有个很大的缺点就是走线很多,于是就出现了RMII,即Reduced Media Independent Interface,在MII的基础上减少了一半的数据线。千兆以太网的诞生带来了GMII,即Gigabit Media Independent Interface,人们发现GMII的走线也很多,于是又出现了RGMII,即Reduced Gigabit Media Independent Interface,也就是本文的主角。当然还有串行的MII接口家族,请读者自行查阅相关文献。
Why RGMII?
有这么多形式的MII接口,为什么笔者偏要选择RGMII呢?原因简单而粗暴:用得多。随着芯片集成度的提高,很多网络处理器/SoC集成了百兆以太网交换机,如果用户需要实现千兆以太网络,那么往往需要配合RGMII接口的千兆以太网PHY。科创笔记小站中介绍的很多处理器都是这样的。
RGMII技术特征
如前所述,RGMII接口减少了MAC与PHY之间的走线数量,通过在参考时钟的上升/下降沿同时采样及信号复用得以实现。RGMII有RTBI与RGMII两种模式,由于笔者在工作中未接触过RTBI,所以不做介绍。RGMII具有如下特征:
[li]相对于GMII接口,发送/接收数据线由8根减少为4根[/li][li]TX_ER与TX_EN复用,通过TX_CTL传送[/li][li]RX_ER与RX_DV复用,通过RX_CTL传送[/li][li]1 Gbit/s速率下,时钟频率为125MHz[/li][li]100 Mbit/s速率下,时钟频率为25MHz[/li][li]10 Mbit/s速率下,时钟频率为2.5MHz[/li][li]RGMII 1.3版本要求:通过PCB走线使得时钟相对数据线延迟1.5-2ns[/li][li]RGMII 2.0版本引入了片上延迟的功能,即在芯片内部实现时钟延迟[/li] RGMII信号定义
RGMII接口时序图
RGMII Layout Guide
有了前文的叙述,相信读者已经具备了RGMII Layout的思路,主要就是以下几项:
[li]创建2个等长组,分别参考TXC与RXC[/li][li]如果MAC/PHY内部带有时钟延迟,则无需对时钟线做延迟[/li][li]如果MAC/PHY内部均不具备时钟延迟,则需要对时钟线做延迟[/li] Allegro中等长规则的创建方式可参照:http://www.licsnotes.com/allegro-create-match-group/。
关于时钟线的延迟,以下几张图片可以很好地说明,分别对应PCB延迟,MAC+PHY延迟与PHY延迟。当然,选取那种方式取决于使用的MAC/PHY芯片。
RGMII在1 Gbit/s速率下的时钟频率可达125MHz,可想而知,RGMII Layout还需要遵守高速数字电路布线基本准则:
[li]阻抗控制[/li][li]2W/3W原则[/li] 注意,在射频与高速数字电路同时存在的设计中,不可能同时对射频走线及高速数字走线进行阻抗控制,这时请务必在RGMII所有走线上增加串联匹配电阻,摆放位置遵守源端匹配原则。
RGMII Layout实例
下图是笔者为朋友开发设计的多口PHY,通过排针连接到外部的MAC板。读者一定很好奇这个板子是干啥用的,其实笔者也不知道。
放大其中的一个,可以看到笔者在RGMII走线上增加的串联匹配电阻,绕线处理,仔细一点还可以看出走线间距(Air Gap)在2倍线宽以上。
查看Constrain Manager,可以看到RGMII走线规则的各种设定。
2W线距规则 等长规则 阻抗控制规则 其实,MII/RMII/GMII的Layout方式与RGMII很像 |