ZCU102 project build

System diagram

System

Prerequisites

  • Vivado 2019.2

  • SRS Python tools:

cd python_tools
sudo pip3 install -U pip
sudo pip3 install .

Bitstream generation

  1. Set Vivado path:

export SRS_VIVADO_PATH=/opt/Xilinx/Vivado/2019.2/
  1. Generate SRS IPs, ADI IPs and bitstream:

cd projects/zcu102
./create_project.sh bitstream

Bootgen

  1. Generate the boot file:

make gen-boot
  1. Configure the board parameters:

export BOARD_USER="root"
export BOARD_PASS="root"
export BOARD_IP="192.168.1.10"
  1. Load boot files to the board:

make load-boot
  1. Reboot the board.

Board usage

See the Application Note: Petalinux build, software cross-compilation and Tx-Rx testing with the ZCU102 and ZCU111 platforms for full details on building and running an SDR software application in this platform.

Tips and tricks

In case you want to manually load the bootfiles, just use the following commands (as used in the board-specific Makefile):

export BOARD_USER="root"
export BOARD_PASS="root"
export BOARD_IP="192.168.1.10"

srs-tools-fpga-generate-bootfile --boot_files_folder ./bootfiles --root_project_path ./vivado_prj --arch zynqmp
sshpass -p $BOARD_PASS ssh -o StrictHostKeyChecking=no $BOARD_USER@$BOARD_IP "mkdir /mnt/data"
sshpass -p $BOARD_PASS ssh -o StrictHostKeyChecking=no $BOARD_USER@$BOARD_IP "mount /dev/mmcblk0p1 /mnt/data"
sshpass -p $BOARD_PASS scp ./bootgen/BOOT.bin $BOARD_USER@$BOARD_IP:/mnt/data/BOOT.bin
sshpass -p $BOARD_PASS ssh -o StrictHostKeyChecking=no $BOARD_USER@$BOARD_IP "sync"
sshpass -p $BOARD_PASS ssh -o StrictHostKeyChecking=no $BOARD_USER@$BOARD_IP "umount /mnt/data"