AN 886: Intel® Agilex™ SoC器件设计指南

ID 683634
日期 1/22/2021
Public
文档目录

5.1.7.1.3. 通过FPGA I/O连接的PHY接口

没有足够空间容纳PHY接口,或者需要使用HPS EMAC不支持的PHY接口时,可将FPGA I/O用作HPS EMAC PHY接口。

指南:在Platform Designer中配置HPS组件时,请指定PHY接口发送时钟频率。

对于GMII或MII(包括使用其他PHY接口),请指定HPS EMAC PHY接口的最大发送路径时钟频率:GMII为125 MHz,MII为25 MHz。该配置可确保Platform Designer系统生成后,PHY接口发送时钟应用正确的时钟时序约束。

GMII/MII

Intel® Agilex™ 器件中有GMII和MII,并通过将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,所以 Intel® 建议将这些总线寄存到每个方向的I/O Element (IOE)寄存器中,以便他们在跨内核FPGA逻辑架构传输时保持对齐。发送数据和控制中,将信号锁存于HPS EMAC的emac[0,1,2]_gtx_clk输出的下降沿,来保持clock-to-data/control关系。将接收数据和控制锁存于以PHY作为源的RX_CLK上升沿的FPGA I/O输入中。

指南:考虑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时钟到设置时序预算中消除20 ns。

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

适配RGMII

Intel® Agilex™ SoC器件不支持使用FPGA I/O管脚的RGMII使用HPS EMAC信号。

适配RMII

可将MII HPS EMAC PHY信号适配到FPGA I/O管脚处的RMII PHY接口使用FPGA中的逻辑。

指南:提供一个50 MHz REF_CLK 源。

RMII PHY将单个50 MHz参考时钟(REF_CLK)用于发送和接收数据和控制。通过板级时钟源,FPGA架构中生成的时钟,或从可生成REF_CLK的PHY提供50 MHz REF_CLK

指南:适配发送和接收数据与控制路径。

FPGA架构中显现的HPS EMAC PHY接口是MII,其需要2.5 MHz发送和接收时钟输入用于10 Mbps操作模式,而需要25 MHz用于100 Mbps操作模式。发送和接收数据路径均为4-bit宽。RMII PHY对10 Mbps和100 Mbps工作模式下的发送和接收数据路径均使用将50 Mhz REF_CLK。RMII发送和接收数据路径为2-bit宽。10 Mbps速率下,发送和接收数据以及控制在10个周期50 MHz REF_CLK内保持稳定。在FPGA架构中必须提供自适应逻辑,以在HPS EMAC MII和外部RMII PHY接口间进行适配:25MHz和2.5 MHz时为4个比特,50 MHz时输入和发送皆为为2个比特,在10 Mbps 模式下进行10倍(10x) 过采样。

指南:在HPS EMAC MII tx_clk_in时钟输入上提供无干扰时钟源

HPS组件的MII接口要求其emac[0,1,2]_tx_clk_in输入端口上有2.5/25 MHz发送时钟。HPS EMAC要求在2.5 MHz和25 MHz之间切换时必须无干扰。可使用FPGA PLL提供2.5 MHz和25 MHz发送时钟以及ALTCLKCTRL IP块以选择无干扰的计数器输出。

适配SGMII

可使用GMII-to-SGMII Adapter核将GMII HPS EMAC PHY信号适配到FPGA收发器I/O管脚处的Serial Gigabit Media Independent Interface (SGMII) PHY接口使用FPGA中的逻辑和串行千兆收发器I/O。设计自适应的自定义逻辑的同时,还可使用本节介绍的Platform Designer自适应器IP。

指南:使用Platform Designer中的GMII到SGMII Adapter IP。

配置Platform Designer中用于EMAC “To FPGA” I/O实例的HPS组件,并选择GMII作为PHY接口类型以及管理接口。请勿导出Platform Designer中生成的HPS组件GMII信号。相反,请将Intel GMII添加到Platform Designer子系统的SGMII Adapter IP并连接HPS组件的GMII信号。“GMII to SGMII” Adapter IP会利用Platform Designer中的Intel HPS EMAC Interface Splitter IP从HPS组件分离出“mac”管道,以供GMII to SGMII Adapter使用。适配器IP实例化Intel Triple Speed Ethernet (TSE) MAC IP,并以1000BASE-X/SGMII PCS PHY-only模式配置(即,无软MAC组件)。有关如何使用Intel GMII to SGMII Adapter IP的更多信息,请参阅嵌入式外设用户指南