cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
778 Views
Registered: ‎08-09-2019

Question about DNNDK for custom board

Jump to solution

According to those official guides,the whole DNNDK tool chain support for four develop board, which is ZCU102,ZCU 104,Ultra 96,Zedboard up to DNNDK3.1.(https://www.xilinx.com/products/design-tools/ai-inference/ai-developer-hub.html#edge)

But what if I want to use DNNDK tool chain to develop on my own board which is not concluded among those four supported boards? Is that possible? Because I think what I need is the DPU IP core and the programs generated by DNNDK. So if I want use DNNDK in a different board ,what I should do is making a DPU driver for Linux depend on the target develop board.

I know there is a tutorial to integrate DPU in custom board(https://github.com/Xilinx/Edge-AI-Platform-Tutorials/tree/master/docs/DPU-Integration),this tutorial use petalinux to generate custom linux image.

And I want to konw whether can I run program generated by DNNDK on image made by this tutorial.

Hope someone can explain these things for me , I'm really confused.

0 Kudos
Reply
1 Solution

Accepted Solutions
kjgreenwood
Adventurer
Adventurer
740 Views
Registered: ‎04-10-2019

If I understand your question correctly, the answer is yes. If you follow the DPU-Integration tutorial replacing your DNNDK output .elf files for the ResNet-50 .elf files called out in the tutorial, you can run on your board. But keep in mind that you won't be able to use the main.cc for ResNet-50 provided as part of the tutorial. You'll have to modify it or write your own to work with your generated files.

View solution in original post

4 Replies
kjgreenwood
Adventurer
Adventurer
741 Views
Registered: ‎04-10-2019

If I understand your question correctly, the answer is yes. If you follow the DPU-Integration tutorial replacing your DNNDK output .elf files for the ResNet-50 .elf files called out in the tutorial, you can run on your board. But keep in mind that you won't be able to use the main.cc for ResNet-50 provided as part of the tutorial. You'll have to modify it or write your own to work with your generated files.

View solution in original post

happyending
Visitor
Visitor
650 Views
Registered: ‎04-17-2019

Thank you very much for your reply, but I still have some doubts. Because the DNNDK user guide says that you must specify the name of the board when executing the DNNDK installation statement ./install.sh <board_name>. If I choose a board from the specified four, then how do I know if the tool I installed is compatible with the board I actually use? In other words, how do I know if there is no difference between the dnnc installed for zedboard and the dnnc installed for ultra96, and if have, what is the difference? In other words, if my board is a zedboard, can I install a tool suitable for ultra96? If I can’t, I don’t think I can use DNNDK for other board. Thank you for your answer.

0 Kudos
Reply
rbriegel
Contributor
Contributor
607 Views
Registered: ‎09-11-2018

Check out what's actually in the ./install.sh file and you will find that the board name just sets a parameter corrosponding to the dpu version instantiated in the boards reference design. 

0 Kudos
Reply
happyending
Visitor
Visitor
575 Views
Registered: ‎04-17-2019

This solved my question very well, thank you.

0 Kudos
Reply