RFSoC 4x2 QSFP malfunction to obtain a 10GbE connection

For my application, the main idea is to use only one lane of QSFP to obtain a 10GbE connection with the RFSoC 4x2 board.

I instantiated a 10GbE core (PHY+MAC+UDP), by mapping only one lane, and then a connection to a PC or a switch by a QSFP to SFP breakout cable is performed.

I am experiencing a problem with that, because I observe ARP packets transmitted from the board, but no data are received. As far as I am concerned, I think the core code is OK, because it has been validated and used in a ZCU208.

By checking in schematics,

it seems that MGTYTX and MGTYRX are swapped. More specifically, it appears the following:

  • MGTYTXP0_128 (Y35) and MGTYTXN0_128 (Y36) are connected to QSFP_TX1_P and _N respectively.

  • MGTYRXP0_128 (AA38) and MGTYRXN0_128 (AA39) are connected to QSFP_RX4_P and _N respectively. Instead, I would expect a connection to QSFP_RX1_P and _N.

It could be compatible with what I have observed (TX packet and NO RX). Furthermore, other different lanes have been tried with no change in the final result.

Is there something Iā€™m not understanding and am missing? Any suggestion? Thank you very much in advance.

2 Likes

Hi @atmuriel,

Welcome to the PYNQ community.

Can you share how the 10 G IP is configured?

Mario

You could try to do something like this

And use an xdc file to change the pin polarity.

Mario