LED blinker

Introduction

For my experiments with the USB104 A7 board, I’d like to have the following development environment:

Here is how I set it all up.

Pre-requirements

My development machine has the following installed:

Here are the commands to install all the other required packages:

apt-get update

apt-get --no-install-recommends install \
  bc binfmt-support bison build-essential ca-certificates curl \
  debootstrap device-tree-compiler dosfstools flex fontconfig git \
  libgtk-3-0 libncurses-dev libssl-dev libtinfo5 parted qemu-user-static \
  squashfs-tools sudo u-boot-tools x11-utils xvfb zerofree zip xc3sprog

Source code

The source code is available at

https://github.com/pavel-demin/usb104-a7-notes

This repository contains the following components:

Getting started

Setting up the Vitis and Vivado environment:

source /opt/Xilinx/Vitis/2020.2/settings64.sh

Cloning the source code repository:

git clone https://github.com/pavel-demin/usb104-a7-notes
cd usb104-a7-notes

Building led_blinker.bit:

make NAME=led_blinker bit

Configuring the FPGA:

make NAME=led_blinker run

Reprogramming FPGA

It is possible to reprogram the FPGA using the xc3sprog program:

xc3sprog -v -c jtaghs1_fast tmp/led_blinker.bit