08-15-2019 12:46 AM
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.
08-15-2019 12:57 PM
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.
08-15-2019 12:57 PM
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.
09-23-2019 11:44 PM
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.
09-27-2019 01:23 AM
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.
09-28-2019 07:02 PM
This solved my question very well, thank you.