Any guidance on how to porting the local Vitis project onto AWS F1


We had local application already developed by using Vitis (project contains openCL created host, and the RTL based kernel).
If we want to move the same design to the AWS F1 (apparently, the FPGA HW would be different). What shall we do?
Is there any guidance document available? I suppose there shouldn't have a lot of work? or am I too naive on that?

asked 3 years ago89 views
5 Answers

Hello, the Vitis flow is supported on AWS, so reusing your project should be straightforward. You will obviously need to change the selected platform to target AWS F1. Other changes you may have to make will depend on the card and platform that your a targeting with your current Vitis project.

answered 3 years ago

Thanks for the reply.
Can you please help to further clarify something?

  1. I understand I need to change the target platform, but just not sure how.
    I guess that need to modify the makefile (in my local project this id created by Vitis IDE).
    I find this item inside local makefile generated by IDE
    VITIS_PLATFORM = xilinx_u200_xdma_201830_2, I simply modify this but not work, error reported as :
ERROR: [v++ 60-1258] No valid platform was found that matches 'xilinx_aws-vu9p-f1_shell-v04261818_201920_1'. Please make sure that the platform is specified correctly, and the platform has the right version number. The platform repo paths are:
The valid platforms found from the above repo paths are:

ERROR: [v++ 60-587] Failed to add a platform: specified platform xilinx_aws-vu9p-f1_shell-v04261818_201920_1 is not found or is not valid

In AWS example project, the platform is given as "DEVICE=$AWS_PLATFORM " and the DEVICE looks is passed to some python script and stripped to allocate the right shell version--which looks quite complex and not straightforward for reference--can you suggest?

Thanks a lot!

Edited by: macleonsh on Mar 25, 2020 2:10 AM

answered 3 years ago

OK I made an ugly change, that copy the aws platform xpfm folder to the /opt/xilinx/platforms.
Now it looks the right platform is found and the build can be run... but not sure if this will cause any other issue.
Anyway, is there any other reliable solution?

answered 3 years ago

Are you using the IDE or using the command line flow?

If using the IDE, the Platform is one of the settings of your project. If you create a new project, you will be prompted for a Platform and you can browse to the desired .xpfm file. If you have an existing project, you can change the Platform from the Project Editor window (the central window in the IDE). You can find more in the docs:

If using the Command Line flow, the Platform is something that you pass directly to the v++ command. You can give a full path (either explicitly or through an env var) or just a platform name, in which case v++ will look for it in /opt/xilinx/platforms or in the directory specified by $PLATFORM_REPO_PATHS. See here:

answered 3 years ago

Thanks, yes I think this issue is solved.

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