FPGA, SoC, And CPLD Boards And Kits
FPGA Evaluation and Development Kits
5938 Discussions

Intel Arria 10 SoC - HPS Ethernet and FPGA

RubenPadial
New Contributor I
1,444 Views

Hello,

I need to receive some data with the HPS Ethernet with TCP/IP protocol, process them and share with the FPGA.

Is there any example or AN?

What are the steps to get a program to process the data in the SoC and share with the FPGA?

Thank you in advance.

0 Kudos
11 Replies
Kenny_Tan
Moderator
1,373 Views

Hi,


Kindly take note that they will be some slowness on the first reply due to the public holiday, we will get back to you as soon as possible.

Thanks


0 Kudos
Jeet14
Employee
1,363 Views

Hi,


Which one you are targeting the baremetal application or Linux or MicroC/OS II ?


Regards

Tiwari


0 Kudos
RubenPadial
New Contributor I
1,339 Views

Hello,

I'm working on Linux.

0 Kudos
Jeet14
Employee
1,275 Views

Hi, 


In linux you need to write the socket programming to build the TCP/IP application over ethernet for server or client on board. 

It is generic way of writing the linux TCP/IP app. For reference you can refer below link

https://www.geeksforgeeks.org/tcp-server-client-implementation-in-c/


For HPS & FPGA data transfer, please refer the below link. Same need to be implemented for Arria 10.

https://github.com/robertofem/CycloneVSoC-examples/tree/master/Linux-modules/DMA_PL330_LKM_basic


Regards

Tiwari


0 Kudos
RubenPadial
New Contributor I
1,173 Views

Hello @Jeet14,

Thank you for this information.

If I'm not wrong, the example you sent me about DMA is to manage data between HPS and FPGA memories once data is received by an Linux client application in the HPS. That's very useful but it will be very helpful if you could give more details about how to build/run the client app for the Arria 10 HPS.

 

Thank you in advance

0 Kudos
Jeet14
Employee
1,202 Views

Hi,


Let me know if you have any other query on this matter.


Regards

Tiwari


0 Kudos
Jeet14
Employee
1,079 Views

Hi,


In linux you need to write the socket programming to build the TCP/IP application over ethernet for server or client on board. 

It is generic way of writing the linux TCP/IP app. For reference you can refer below link

https://www.geeksforgeeks.org/tcp-server-client-implementation-in-c/


For your reference, you can follow steps as hello world application.

Add yocto application and compile using meta-bake.py script 

  

$cd meta-intel-fpga-refdes/ 

$mkdir recipe-example 

$mkdir helloworld 

$cd helloworld 

Add the .c & .h files and create the helloworld.bb file in helloworld directory. Snapshot from the helloworld.bb file.


$nano helloworld.bb 

SUMMARY = "Example hello world" DESCRIPTION = "helloworld in HPS" 

AUTHOR = "Test_engineer" 

  

LICENSE = "BSD-3-Clause" 

LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/BSD-3-Clause;md5=550794465ba0ec5312d6919e203a55f9

  

  

inherit systemd pkgconfig 

  

SRC_URI = "file://helloworld.c

  

S = "${WORKDIR}" 

  

do_compile() { 

        ${CC} ${CFLAGS} ${LDFLAGS} helloworld.c -o helloworld 

  

do_install() { 

        install -d ${D}${bindir} 

        install -m 0755 helloworld ${D}${bindir} 



Regards

Tiwari


0 Kudos
RubenPadial
New Contributor I
1,053 Views

Hello @Jeet14 

Thanks for the information.

Is EDS needed to create the TCP/IP client application or the application to transfer data from HPS to FPGA memory?

Is it necessary to create a linux yocto with the custom applications/recipes?

Is there any detailed guide?

 

0 Kudos
Jeet14
Employee
1,020 Views

Hi,


You need to use the EDS for creating the preloader or uboot.


For creating the linux userspace application, you need to use the host linux machine where you need to use the intel cross compiler or yocto application method.


please refer the create your project with timer example for arria 10. ethernet TCP/IP not availble but you are try the previous links and follow the same steps.

https://www.intel.in/content/www/in/en/support/programmable/support-resources/design-guidance/linux-developer.html

https://www.rocketboards.org/foswiki/Documentation/UsingYoctoExtendibleSdkForApplicationDevelopment


Regards

Tiwari




0 Kudos
Jeet14
Employee
993 Views

Hi,


Let me know if you have any query on this.


Regards

Tiwari



0 Kudos
Jeet14
Employee
913 Views

Hi,


I believe your enqury has been answered. With that, I now transition this thread to community support. 

Thank you.

 

Best Regards,

Tiwari

 

p/s: If any answer from the community or Intel Support are helpful, please feel free to give best answer or rate 4/5 survey.


0 Kudos
Reply