Data transfer using f1.x4large

0

Hi,
I am new to AWS FPGA Development.
My task is, Using f1.x4large instance, I need to transfer packetized data from one FPGA to another FPGA.
After power-on, by design one FPGA is defined as Sender and the other as Receiver.
And Sender starts sending packets one at a time and the gap between the two packets is huge.
On receiving the correct packet, the receiver acknowledges this with an ACK packet.
Both Sender and Receivers maintain transmit and receive packet counters.
This data transfer happens without driver involvement.
The driver should be able to access the transmit and receive count register and other registers.

I have gone through the example DMA test cases.
I couldn't understand how to communicate without any driver involvement.

Appreciate your help.

Regards,
Venkat

venkub
asked 3 years ago243 views
4 Answers
0

Hi Venkat,

Have you gone through this https://github.com/awslabs/aws-fpga-app-notes/tree/master/Using-PCIe-Peer2Peer for peer-to-peer transfers? The app note also provides recommendations no how to get best performance.

It's a bit unclear to me that you want "... data transfer happens without driver involvement." Are you referring to the DMA driver? Could you elaborate more?

Thanks,

  • Chen
AWS
answered 3 years ago
0

Hi Chen,

Thanks for the response.
I have gone through the Using-PCIe_Peer2Peer app note.

Yes, In my question, I was referring to the 'DMA driver' which I don't want to use.

In conventional FPGA implementation, either I would have connected FPGA1 to FPGA2 and then displayed the counters.

If I would like to achieve the same, with using f1.4xlarge instance.
Could you please let me know how to achieve this?

Regards,
Venkat

venkub
answered 3 years ago
0

Hi venkub,

Thank you for the clarification. I need to point out that direct FPGA-to-FPGA connection are not supported by F1. For inter-card communication, you need to use peer-2-peer transaction through PCIe. The link I shared should have all the details needed for BAR4 address exposure, accessing, etc. You don't need to use DMA diver for all that. Please let me know if that answers your questions.

  • Chen
AWS
answered 3 years ago
0

Thanks for the response.

venkub
answered 3 years ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions