Skip to content

Setting up your system (Remote Development Servers)

Pau Gómez edited this page Oct 1, 2024 · 25 revisions

⚠️ The instructions below only apply to registered participants of the FPGA training course with remote AWS development servers. Please disregard them if you are setting up a local development environment.


Access FPGA Server Control

  • Navigate to http://18.100.25.145:8000/
  • Introduce your server tag and user password (see credentials cheat sheet below)
  • Select Get Server State and hit Submit
  • Inspect the response and keep the IP address (you will need it in the following sections)
  • Use the Start Server and Stop Server options to start or stop your remote server

Configure Redpitaya

  • Download the preconfigured SD card image from Pynq-Redpitaya-125-14-3.0.1-preconfig.img
  • Flash the SD card (min 16GB). Instructions for writing SD card images can be found in pynq-doc and redpitaya-doc.
  • Once SD card has been flashed, insert it into your PC and open the PYNQ partition. Edit the boot.py file and put your server's IP address into line 4:
    server_ip = "X.X.X.X"   #CHANGE TO SERVER IP
    
  • Save and eject SD card
  • Insert SD card into your Redpitaya (should be powered down)
  • Power up your Redpitaya

ℹ️ Once powered up, only the green LED of your Redpitaya will shine. The blue LED is initially powered off, it will turn on during the upcoming lectures whenever a bitstream gets loaded. Other status LEDs described in the documentation are not implemented in the firmware for this course.

ℹ️ To check that your Redpitaya is operative, please proceed to the following section (verify full system connectivity) or access its Ubuntu Terminal via the COM port (instructions here).


Verify Connectivity

  • Open FPGA Server Control
  • Start your Server (please remember to stop you server when unused)
  • Connect via remote desktop. Protocol: RDP. Address: server IP. Credentials: see cheat sheet below
  • On your remote machine, open the Firefox web browser and navigate to 10.0.0.2:9090
  • You should be prompted to the PYNQ Jupyter Notebook welcome page (password: see credentials cheat sheet below).

Create and share RSA key pair

We will generate an RSA key pair that will prevent you from using passwords in your SSH and SCP commands:

  • Open a command line terminal (Ubuntu Applications Menu)
  • Generate the key pair:
ssh-keygen -t rsa
  • You can proceed with the default configurations and hit Enter.
  • Upload the the generated key pair to the Redpitaya-125-14 (password: xilinx).
ssh-copy-id [email protected]
  • Verify that you can use SSH without having to provide a password.

Create a Vivado IDE shortcut to upload overlays

Overlays are file bundles created around a custom FPGA image, which include the generated bitstream and hardware_handoff files to provide information on the instantiated IPs, memory interfaces, etc. These files are typically manually collected out of the Vivado project, renamed and uploaded to the FPGA. The process is simple but require a few minutes of your time. I have created a simple TCL script that fully automates this process and which can be launched via a shortcut in the Vivado IDE. To set this up, you need to:

  • Open Vivado (Ubuntu Applications Menu).
  • Open the upper toolbar and go to Tools --> Custom Commands --> Customize Commands.
  • Add a new command that executes ~/Documents/FPGA-Notes-for-Scientists/tcl/upload_overlay.tcl.
  • After pressing OK, a new button appears on the Vivado toolbar. We will use it after bitstream creation to automatically construct the corresponding overlay and upload it to your Redpitaya-125-14.
  • Close Vivado.

Credentials Cheat Sheet

Resource User Password
FPGA (scp, ssh, jupyter notebook) xilinx xilinx
Remote Server (RDP) ubuntu top_secret
FPGA Server Ctrl tag sent via e-mail pwd sent via e-mail