一、媒介
收集通信中的PHY芯片接口品种有许多,之前打仗过GMII接口的PHY芯片RTL8211EG。但GMII接口数目较多,本文运用RGMII接口的88E1512搭建收集通信体系。这类接口总线位宽小,可以或许下落电路本钱,在现实项目中运用更普遍。
二、从GMII过分到RGMII
先看看GMII和RGMII重要的接口。
GMII:
发送 gmii_tx_clk gmii_tx_d[7:0] gmii_tx_en gmii_tx_er
吸收 gmii_rx_clk gmii_rx_d[7:0] gmii_rx_dv gmii_rx_er
RGMII:
发送 tx_clk tx_d[3:0] tx_ctrl
吸收 rx_clk rx_d[3:0] rx_ctrl
为何接口变少了?起首数据总线从时钟单边缘采样8bit改变为了双边缘采样4bit,从88E1512 Datasheet中时序图可以或许直观看出这一点。
RGMII中上升沿发送一字节数据的低四位,下落沿发送盈余的高四位数据。吸收端时钟双边缘采样,因而125MHZ*8bit = 125MHZ*4bit*2 = 1000Mbit/s。至于GMII中的数据有用和数据毛病指点旌旗灯号被ctrl旌旗灯号复用:tx_ctrl在时钟tx_clk上升沿发送是tx_en,在下落沿发送是tx_en ^ tx_er。rx_ctrl在时钟rx_clk上升沿吸收是rx_dv,在下落沿吸收是rx_en ^ rx_er。综上,RGMII接口引脚数从25个下落到14个。
三、add clock skew
从上边的时序图剖析,数据在时钟的边缘转变。因而若是不做分外处置惩罚,吸收端没法稳固采样。为了处理这一题目,罕见的做法是为时钟旌旗灯号增加延时,使其边缘瞄准数据总线的稳固区间。可以或许在控制器端、PCB走线以及PHY芯片内部增加时钟偏移,本文运用末了一种体式格局完成。
在第三阶段中增加耽误。数据发送偏向,FPGA侧的TX_CLK旌旗灯号不须要分外处置惩罚,也就是说FPGA发送与数据边缘对齐的时钟旌旗灯号。TXD和TX_CLK旌旗灯号波形如图。
PHY内部会调解TX_CLK,使之可以或许稳固采样TXD。数据吸收偏向,由于RX_CLK由PHY供应,PHY芯片直接发生与数据中间对齐的时钟旌旗灯号。RXD和RX_CLK旌旗灯号波形如图。
可见,使PHY芯片事情在耽误形式下时,FPGA单不须要增加分外的逻辑来包管稳固采样。发送偏向直接将数据驱动时钟作为TX_CLK旌旗灯号发送,吸收偏向直接应用RX_CLK对RXD旌旗灯号采样。
四、体系设想方案
本文运用ZYNQ内部的MAC控制器完成数据链路层功用。但由于其接口为GMII,须要用到GMII_to_RGMII IP Core转换接口逻辑。上层收集协定则经由过程LWIP开源协定栈完成。起首设置装备摆设ZYNQ IP,使能ENET1并以EMIO体式格局引出。
体系硬件构造如图:
五、I/O 时序束缚
在较高速设想场所下,输入输出接口局部很轻易涌现数据采样不稳固的征象。这时刻就要经由过程Input delay,output delay束缚以及STA来剖析设想是不是知足稳固采样需求。input/output delay是指数据相对时钟的耽误,只要设置好上述两个数值,综合东西才会往准确的偏向优化并给出公道的时序申报。
FPGA与RGMII接口的PHY芯片之间的时序干系依照数据接口同步和数据采样体式格局属于源同步DDR采样。input delay束缚对应吸收偏向,时序干系是中间对齐。output delay束缚对应发送偏向,时序干系是边缘对齐。前者由于许多时刻不知道上游器件Tcko信息,会运用示波器丈量有用数据窗口来盘算。而后者由于是边缘对齐,经由过程示波器丈量发抖窗口并运用skew based method盘算。这局部笔者还没有亲自实践过,若有误迎接指出。
参考文献
1 千兆以太网芯片88E1111 RGMII形式的驱动 - 我心狂野 - 陈雄博客 http://www.cnblogs.com/shengansong/archive/2012/01/04/2311894.html
2 RGMII布线指点 RGMII Layout Guide | 无线时期 http://www.witimes.com/rgmii-layout-guide/
3 RGMII_PHY测试条记1 基于开发板MiS603-X25-whilebreak-电子技术运用-AET-北大中文中心期刊-最雄厚的电子设想资本平台 http://blog.chinaaet.com/whilebreak/p/46639
4 千兆以太网芯片88E1111 RGMII形式的驱动 - 百度文库 https://wenku.baidu.com/view/d2cc412fff00bed5b9f31d49.html
5 RGMII Interface Timing Considerations | Ethernet FMC http://ethernetfmc.com/rgmii-interface-timing-considerations/
6 ALTERA AN 477: Designing RGMII Interfaces with FPGAs and HardCopy ASICs
7 米联客 ESFP1512 以太网 SFP 光电卡教程
8 Vivado运用误区与进阶——XDC束缚技能之I/O篇 (上) - neufeifatonju的博客 - CSDN博客 https://blog.csdn.net/neufeifatonju/article/details/80653172
9 Vivado运用误区与进阶——XDC束缚技能之I/O篇 (下) - neufeifatonju的博客 - CSDN博客 https://blog.csdn.net/neufeifatonju/article/details/80450975
Comment here is closed