AN 796: Cyclone® V和 Arria® V SoC 器件设计指南

ID 683360
日期 7/27/2020
Public
文档目录

4.5.1.2.1. GMII/MII

Cyclone® V/ Arria® V SoC中有MII和GMII,通过将EMAC信号驱动到FPGA内核布线逻辑,然后最终到FPGA I/O管脚或FPGA内核中的内部寄存器。

指南:应用时序约束并使用Timing Analyzer验证时序。

由于FPGA内核和I/O结构中的布线延迟各不相同,因此阅读时序报告很重要,尤其是对于GMII,需要创建时序约束。GMII有1个125 MHz时钟,并且不同于RGMII,其属于单一数据速率。使用GMII时在CLK-to-DATA偏斜方面的考量上也不同;它的信号由设计自动居中,在下降沿发起并在上升沿捕获。

指南:FPGA I/O边界处的寄存器接口I/O。

由于内核和I/O延迟极易超出8 ns,所以建议将这些总线寄存到I/O Element (IOE)寄存器的每个方向,以便他们在内核FPGA逻辑架构中传输时仍保持对齐。发送数据和控制中,将信号锁存于HPS EMAC的emac[0,1,2]_gtx_clk输出的下降沿,来保持clock-to-data/control关系。将接收数据和控制锁存于RX_CLK信号上升沿的FPGA I/O输入中,该信号由PHY提供时钟源。

指南:考虑MII模式下的发送时序。

PHY处于100 Mbps模式时,MII为25 MHz;PHY处于10 Mbps模式时,MII为2.5 MHz,因此最短时钟周期是40 ns。PHY为发送和接收方向提供时钟源。发送时序是相对于PHY提供的TX_CLK时钟而言, 可能需要考虑转向时间,但因为40 ns时钟周期较长,通常并不成问题。

注: 事务通过FPGA路由,然后输出数据。往返延迟必须小于25 ns,因为输入建立的时间为15 ns。由PHY提供时钟源的TX_CLK信号中,其负边沿上的HPS EMAC发送路径逻辑将发送数据和控制驱动到FPGA逻辑中,这样可从40 ns clock-to-setup时序预算中消除20 ns。

数据到达时序上的往返时钟路径延迟会导致 PHY-to-SoC板传播延迟,再加上从SoC管脚到或通过HPS EMAC发送时钟多路复用的内部路径延迟会占用其余20 ns设置时序预算,或许需要对FPGA逻辑中phy_txclk_o时钟输出寄存器上升沿的发送数据和控制重新计时,以用作MII模式发送数据和控制。