软件版本:VIVADO2017.4 操作系统:WIN10 64bit 硬件平台:适用米联客 ZYNQ系列开发板 米联客(MSXBO)论坛:www.osrc.cn答疑解惑专栏开通,欢迎大家给我提问!! 3.1概述 MZ7035开发板具有的2路SFP接口,可实现千兆光纤以太网通信。使用开发板中实现千兆网UDP传输的基本逻辑框架如下图所示。FPGA程序基于米联的新版UDP IP协议栈以及Xilinx的IP核Tri Mode Ethernet MAC和1G/2.5G Ethernet PCS/PMA or SGMII而实现。 本文档对应2个例程,分别为udp_ip_1g_sfp和udp_ip_1g_sfp_4ch,分别实现单路和4路千兆UDP光纤传输(MZ7035FA只有两路SFP,MZ7035FB(D)有四路SFP)。例程基于vivado 2017.4开发。 3.2 SFP接口 开发板上有4个SFP屏蔽笼。SFP屏蔽笼可以插入千兆。SFP信号定义如下图所示。 3.3 IP设置 3.3.1 Tri Mode Ethernet MAC设置 由于使用千兆通讯,因此将速率设为1Gbps。如下图所示。 首先,由于该IP需要与IP核1G/2.5G Ethernet PCS/PMA or SGMII之间通过GMII接口连接,此时不需要在IP核内部为GMII接口添加I/O BUF。因此,需要将PHY Interface设为Internal。 其次,由于1G/2.5G Ethernet PCS/PMA or SGMII使用1G光通讯时采用了1000BASEX标准,速率固定为1G。所以,需要将Tri Mode Ethernet MAC的MAC speed设为1000Mbps,与之相匹配。 当Tri Mode Ethernet MAC与1G/2.5G Ethernet PCS/PMA or SGMII配合使用时,Tri Mode Ethernet MAC的gtx_clk时钟源需要由1G/2.5G Ethernet PCS/PMA or SGMII提供。一般都选择1G/2.5G Ethernet PCS/PMA or SGMII输出的user_clk2(125MHz)时钟作为Tri Mode Ethernet MAC的时钟源。 将Tri Mode Ethernet MAC的配置方式设置为通过AXI-Lite接口配置。 将AXI-Lite接口的时钟设为与user_clk2频率相同,即125MHz,这样可以使用同一个时钟源。 在设计中不使用MDIO与1G/2.5G Ethernet PCS/PMA or SGMII IP核连接,因此不使能MDIO接口。 上述设置如下图所示。 Shared logic不用进行设置。 音视频桥、流量控制、参数统计等功能均不使用。如下图所示。 3.3.2 1G/2.5G Ethernet PCS/PMA or SGMII设置
使用1000BASEX模式,需要将速度设为1G,如下图。 选择1000BASEX模式,如下图。 使用开发板的GTX收发器作为SFP的接口,输入IP核内部的MMCM的时钟源选择为GTX收发器输出的时钟TXOUTCLK,该MMCM将产生我们所需要的用户接口时钟。MDIO接口可用可不用,这里不使能MDIO接口。使能自协商。如下图。 当设计中只包含1个此IP核时,应当将可共享的逻辑资源和硬件模块包含在IP核内部,这样会减少所生成的模块数量,简化设计。如下图所示。 当设计中需要同时使用若干个此IP核,且所使用的GTX均位于同一个GTX BANK中。此时,只需其中1个IP核内部的共享资源(MMCM、GTX PLL、GTX 参考时钟等)便可以满足所有IP核的需求,即选择将共享资源包含在IP核内部。其余IP核将这些共享资源从其内部剔除即可,即选择将共享资源包含在example中。 3.4 IP核结构 3.4.1 Tri Mode Ethernet MAC 3.4.1.1 时钟网络 IP核内部时钟网络结构如下图所示。其中,tx_mac_aclk为AXI-Stream发送接口的同步时钟,rx_mac_aclk为AXI-Stream接收接口的同步时钟。由于在设计中没有使用MDIO接口,所以不存在时钟信号mdc。 gtx_clk为IP核工作的全局时钟源,频率125MHz。s_axi_aclk为AXI-Lite接口的同步时钟。其余时钟refclk、gtx_clk90等均与GMII、RGMII接口与外部PHY芯片连接有关,由于设计中IP核与1G/2.5G Ethernet PCS/PMA or SGMII连接。因此,不需要使用这些时钟。 3.4.1.2 用户接口 这里对一些重要的用户接口进行说明,其他接口可参考IP核手册。 3.4.1.2.1 AXI-Stream接收接口 AXI-Stream接收接口信号如下图所示。用户通过该接口接收从IP核输出的以太网数据包。需要注意的是,接收接口没有使用AXI-Stream标准中的tready信号。这代表接收端需要具备持续接收数据的能力,防止出现数据来不及接收而产生溢出。 AXI-Stream接收接口时序如下图所示。 3.4.1.2.2 AXI-Stream发送接口 AXI-Stream发送接口信号如下图所示。用户通过该接口,向IP核传输所需要发送的以太网数据包。其中,tx_ifg_delay用于设置发送间隔,一般都默认采用最小间隔,将tx_ifg_delay置为0即可。
AXI-Stream发送接口时序如下图所示。 3.4.1.2.3接收发送数据统计信号 下图中的信号,用于统计并输出当前发送完毕或者接收完毕的帧对应的各种类型的信息。除了调试用之外,一般无需使用。
信号时序如下图所示。 3.4.1.2.4流量控制信号 非高带宽、大负荷传输情况下,一般不需要使用流量控制功能。因此,不需要发送暂停帧,将以下两个信号均置为0即可。 3.4.1.2.5 AXI-Lite接口 AXI-Lite接口主要用于配置和读取IP核内部的寄存器。除此之外,还可以直接通过MDIO接口配置外部PHY芯片或者1G/2.5G Ethernet PCS/PMA or SGMII IP核的寄存器。由于MDIO没有使用。因此,AXI-Lite接口主要用于IP核设置。 3.4.1.2.6复位信号 IP核的复位信号网络如下图所示。
资讯幻灯片
热门评论
热门专题
排行榜
XILINX 官网|站点统计|Archiver|手机版|米联客品牌主页|UISRC工程师开源站 ( 苏ICP备19046771号-2 ) GMT+8, 2025-4-3 14:46 , Processed in 0.230417 second(s), 86 queries . |