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

DE0-nano-SoC get video frames from PC


I am currently working on a project where I want to implement object recognition on the DE0-nano-SoC. The project has two parts, the first being an HPS only implementation and the second an FPGA/HPS hybrid, where the CNN is done in VHDL/Verilog. The system should receive the video data from my computer, do the necessary calculations on one frame, and then send the data back to my computer for it to be displayed. 

I would definitely describe myself as a newbie, especially to w.r.t. the HPS and the board's interfaces such as the SPI, I2C, DMA, etc, as well as using the board's memory. I have done a few small FPGA assignments in VHDL and Verilog, but I was mostly using the simulator and not making use of the board's interfaces except for the user buttons and LEDs.

I have gone through the entire user manual and did all of the FPGA and HPS examples. I tried the FPGA-HPS example, but could not get it working.

For now, I am busy with the HPS only implementation, and I am struggling to determine how I should go about getting the videos data (will send one frame at a time as I will only do calculations on one frame), and sending it back to the computer. I would like to save one frame's data in the SDRAM, where it can be fetched by my C program. The C program will do calculations and then save the altered data into the SDRAM where it will then be transmitted back to the computer. I have searched the internet for about 2 days now, I don't know if I'm searching for the wrong thing, but I could find anything that really helped me. 

I would really appreciate it if someone could give me some advice about how I should go about getting the data and saving it to memory, as well as transmitting it back to my computer. I was looking at using the UART to USB, USB OTG, and maybe the Ethernet ports. I use the USB Blaster II to communicate with the Linux kernel through Putty, so I think I won't be able to use it for sending or receiving data (not that I know how to use it in that manner). Any tutorials or examples that you might have will also be immensely appreciated.

I have been able to load different C programs onto the HPS and run them, but my final C program uses additional libraries (OpenCV being one) and I don't know how to include them so they work on the HPS, so any help here would also be great.

Sorry if the question post is a bit long or if I repeated myself too much. I just want to make sure I give a clear enough description of what I want to achieve. This is also my first question on a forum such as this, so please excuse me if my question isn't formatted correctly or if it is not specific enough. 


Any help will be appreciated a lot.

Thanks in advance.



0 Kudos
2 Replies

Hi Stefan,

If your work is related to handling video image processing, Maybe this can help:




Aik Eu


We do not receive any response from you to the previous question/reply/answer that I have provided. This thread will be transitioned to community support. If you have a new question, feel free to open a new thread to get the support from Intel experts. Otherwise, the community users will continue to help you on this thread. Thank you.


Aik Eu