MA703FA ETH对应的FPGA pin
求助求助,其他的ETH接口命名不一样,能帮对应下咱MA703FA的描述吗?谢谢了,以下几个接口命名:ETH_50Mhz
ETH_RST
ETH_CRS_DV
ETH_TXEN
ETH_RXERR 另外再问一下,PCIe总线中PERST#对应的是哪个?
如上图所示,实际上对于RGMII的以太网通信接口,TX_CTRL 负责传输TX_EN和TX_ER信号,RX_CTRL负责传输 RX_DV以及RX_ER信号,所以我们需要把RGMII信号转为GMII信号,比如对TX_CTRL,我们需要把TX_EN和TX_ER转换出来,如下代码,其中mac_tx_data_valid信号就是我们转换过来的TX_EN信号,由于TTX_ER我们是直接丢弃数据,所以没有使用。
ODDR #(
.DDR_CLK_EDGE("SAME_EDGE"), // "OPPOSITE_EDGE" or "SAME_EDGE"
.INIT(1'b0), // Initial value of Q: 1'b0 or 1'b1
.SRTYPE("SYNC") // Set/Reset type: "SYNC" or "ASYNC"
) rgmii_ctl_ddr (
.Q(RGMII_tx_ctrl_obuf), // 1-bit DDR output
.C(RGMII_reference_clk), // 1-bit clock input
.CE(1'b1), // 1-bit clock enable input
.D1(mac_tx_data_valid), // 1-bit data input (positive edge)
.D2(mac_tx_data_valid ^ 1'b0), // 1-bit data input (negative edge)
.R(reset), // 1-bit reset
.S(1'b0) // 1-bit set
);
根据你的描述,你需要联系代码的上下文,查看下你的信号接口,采用是RGMII 还是GMII 或者RMII(百兆)
PERST# 是主板对PCIE开发包的复位信号,开发包的金手指上有这个信号,你找到这个信号在FPGA上的PIN脚定义就可以,可以通过原理图,结合开发包配套的代码去找下。 我使用的是FC1003_RMII的FPGA的核。需要怎么调整呢?
RMII_CLK_50M out 1 RMII continous 50 MHz reference clock
RMII_RST_N out 1 Phy reset, active low
RMII_CRS_DV in 1 Carrier sense/Receive data valid
RMII_RXD0 in 1 Receive data bit 0
RMII_RXD1 in 1 Receive data bit 1
RMII_RXERR in 1 Receive error, optional
RMII_TXEN out 1 Transmit enable
RMII_TXD0 out 1 Transmit data bit 0
RMII_TXD1 out 1 Transmit data bit 1
RMII_MDC out 1 Management clock
RMII_MDIO in/out 1 Management data 其实这个问题很容找到答案的,百度下就有了,以后要多学会自己解决问题,而不是依靠别人,我把找到的内容贴上:RMII(Reduced Media Independant Interface),精简MII接口,节省了一半的数据线。RMII收发使用2位数据进行传输,收发时钟均采用50MHz时钟源。信号定义如下:
其中CRS_DV是MII中RX_DV和CRS两个信号的合并,当物理层接收到载波信号后CRS_DV变得有效,将数据发送给RXD。当载波信号消失后,CRS_DV会变为无效。在100M以太网速率中,MAC层每个时钟采样一次RXD上的数据,在10M以太网速率中,MAC层每10个时钟采样一次RXD上的数据,此时物理层接收的每个数据会在RXD保留10个时钟。
我知道这个定义,问的是你们MA703FA开发板要怎么改才能支持到RMII 的这个IP 内核
页:
[1]