03-16-2019 10:14 AM
We are using the 10G ethernet subsystem IP and our design is based on XAPP1305. First we tested the design on ZCU102 in loopback mode and between two ZCU102 boards. Then, we ported the design onto ZCU111 with appropriate changes to the constraints file. Here's our situation now -
Any idea why this might be happening? We are using exactly the same design on both boards and it works (first four cases) but fails between the two boards (case 5). How do we debug this?
03-17-2019 03:13 AM
Update. Things we tried -
Why does block_lock go low? How do we solve the problem?
04-29-2021 05:59 PM
Hello, did you get your program working? If so, would you be willing to show me your Block Design? I am trying to get 10GE connected to the PS properly.
05-03-2021 07:39 AM
This was a long time ago, but if I remember correctly it was a clocking + device tree issue.
Also note, 10G to PS under Linux or baremetal achieves only about 6-7Gbps with multi-channel DMA, even lower with single channel DMA.
05-03-2021 02:26 PM
05-05-2021 12:36 AM
Looks alright to me. You'd need the FIFO only to meet timing since the DMA handles the clock crossing and has enough buffering capability by itself.
Make sure you monitor the status of the 10G IP for debugging. And the S_AXI port is only needed if you're using Linux. For baremetal, you don't really need to worry about it.
05-05-2021 09:58 AM - edited 05-07-2021 06:23 AM
Hello, thank you for looking over my block diagrams. I have found an example for the ZCU102 board. Here is the block diagram:
Here is the link I used to get the example.
I have a lot to learn how things are connected.
I see they use an AXI Stream Data FIFO.
I will model my design from this example.
Do you think I would be able to do a Baremetal UDP application in the beginning?
05-07-2021 04:16 AM
Yeah, your best bet is to start with the reference design.
I don't know about baremetal UDP...I never tried it. At that time, there were no SDK drivers or example programs to use with the 10G IP. Not sure if things have changed since then.
I did 10G under Linux (drivers are available) and once that worked, 10G controlled via custom PL logic.