A7_35T开发板的以太网学习

一、开发板上的原理图

       从原理图上看,只有一个RJ45插座和一个RTL8211FD芯片,以及一个125Mhz的时钟信号。芯片之间的连接,RJ45插座会有4对差分线连接到RTL8211FD,

还有两个led也连接到了RTL8211FD。RTL8211的时钟输入为125Mhz,接收和发送都有4根传输线,1根CTL,1根XC,其他的控制线:MDIO,MDC,RST,CLK。

工程项目中的引脚:

        output wire         phy_reset,
        
        input [3:0]         PHYA_rgmii_rxd,
        input               PHYA_rgmii_rx_ctl,
        input               PHYA_rgmii_rxc,
        
        output wire[3:0]   PHYA_rgmii_txd,
        output wire        PHYA_rgmii_tx_ctl,
        output wire        PHYA_rgmii_txc,

二、在VIVADO2017.4中配置IP核

Tri Mode Ethernet Mac设置

    1、Data Rate:千兆网,速率设置成1Gbps

    2、Interface:RGMII   1000Mbps  AXI4-Lite    125Mhz

    将 AXI-Lite 接口的时钟设为与 user_clk2 频率相同,即 125MHz,这样可以使用同一个时钟源。
在设计中不使用 MDIO,因此不使能 MDIO 接口。

    3、之后两页直接默认即可

 

三、IP核内部的时钟网络

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 连接。因此,不需要使用这些时钟。

四、使用AXI——STREAM接收和发送数据

aclk,tdata【7:0】,tvalid,tlast,tuser,在传输数据的时候,tvalid信号一直为高电平,当传输到最后一个数据,tlast信号拉高,然后置零,同时tvalid也置零。

发送相比接收就多了一根tready信号,只有当tready为1并且tvalid为1才发送数据。

 

四、使用AXI-Lite接口

除此之外, 还可以直接通过 MDIO 接口配置外部 PHY 芯片或者 1G/2.5G Ethernet PCS/PMA or SGMII IP 核的寄存器。由于 MDIO 没有使用。因此, AXI-Lite 接口主要用于 IP 核设置,可参考PG051.

五、复位接口

其中 glbl_rstn 为全局复位信号,用于复位整个 IP 核。 rx_axi_rstn 和 tx_axi_rstn 分别用于单独复位接收和发送部分的逻辑,一般无需使用。在例程中,将 rx_axi_rstn 和 tx_axi_rstn 都被恒置为 1。
tx_reset 和 rx_reset 分别用于表示 IP 核的发送和接收部分逻辑的复位状态,根据这两个信号可以判断 IP 核是否处于复位状态。这两个信号需要配合 AXI-Stream 接收和发送接口的同步时钟信号tx_mac_aclk 和 rx_mac_aclk 进行使用,这是因为可能当 tx_reset 和 rx_reset 由 1 变为 0 时, IP核才会输出 tx_mac_aclk 和 rx_mac_aclk。对于使用 tx_mac_aclk 和 rx_mac_aclk 作为同步时钟的逻辑,复位信号必须以 tx_reset 和 rx_reset 作为基准,避免出现复位无效的情况。对此,在例程中给出了参考设计。

六、工程分析

按键按下就变成低电平,在源码中,将输入的按键值取反作为全局的复位(高电平复位reset),然后通过一个计数器,将phy芯片的复位拉高,再就是使用一个CLK_WIZ,输入50mhz,输出15.625Mhz,200Mhz(作为Tri Mode的参考时钟),125Mhz(gtx_clk),25Mhz(用于phy复位计数时钟)。

Tri Mode将125Mhz,8bit的数据先转换成125Mhz,64bit(使用AXI4-Stream Data Width Converter)

然后再转换成15.625Mhz,64bit(使用AXi4-Stream Data FIFO,异步FIFO)

然后再使用AXi4-Stream Data FIFO,同步FIFO,输出15.624mhz,64bit信号

输入到udp_ip_protocol_stack(这个使用的是dcp,而一般的ip核使用的是xci)

最后就是udp_packed_fifo

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值