Skip to content

TaPaSCo on AWS

Jaco A. Hofmann edited this page Nov 13, 2019 · 12 revisions

This page is intended to give an overview about the current status of the TaPaSCo on AWS port.

The current status of the development effort can be tracked in #124

The current status is: Feature complete, requires cleanup

Steps to do:

  • Add documentation
  • Rebase on 2019.10

Usage

You can test TaPaSCo AWS similarly to the regular TaPaSCo experience but you have to build the correct branch:

git clone https://github.com/aws/aws-fpga && cd aws-fpga && source hdk_setup.sh
git clone https://github.com/m-ober/tapasco.git && cd tapasco && git checkout feature/aws
source path/to/vivado/settings64.sh
mkdir -p build && cd build && source ../setup.sh
cd ${TAPASCO_HOME_TOOLFLOW}/scala
./gradlew installDist

Now you're ready to go.

The current version of the AWS integration is based on an older pre-release of TaPaSCo 2019.10.

Building an AFI

Make sure you've sourced the HDK and the tapasco setup.sh as well as Vivado.

You can now build a bitstream the same way it is done for the other platforms:

tapasco compose [counter x 64] @ 100 MHz --platforms aws

This generates the necessary files to generate an AFI. The output is a tar file in the project folder

<timestamp>.<arch>.<platform>--<composition>--<frequency>.tar

This tar file has to be uploaded to AWS to generate an AFI.

pip3 install awscli --upgrade --user
aws configure
afihelper --wait my-bucket-name 19_05_27-182340.axi4mm-aws--counter_64--100.0.tar my-first-afi --description "This is my first AFI"

This generates the AFI and makes it available to the FPGA instances.

Runtime Environment

To load the bitstream on the device you have to run

sudo fpga-load-local-image -S 0 -I <FpgaImageGlobalId>

The rest of the steps are the same as using regular TaPaSCo. Load TLKM (insmod tlkm.ko) and build any desired host software.

Clone this wiki locally