RapidWright FPGA 2019 Deep Dive Tutorial

Before starting the tutorials, see Getting Started below to setup your machine.

Tutorial Segment

Time

Purpose

Hello, World Jup

5 mins

Intro to RapidWright within Jupyter Notebook

Create Netlist from Scratch Jup

10 mins

How to build a netlist from scratch

Pipeline Generator

15 mins

How to generate a circuit in RapidWright

Pre-implemented Modules: Part I

15 mins

How to create a pre-implemented module

Pre-implemented Modules: Part II

15 mins

How to use and relocate pre-implemented modules

Probe Re-router Jup

20 mins

Fast probe routing on existing implementation

SAT Router Jup (Linux only)

15 mins

How to use a SAT engine to solve routing congestion

Create and Use an SLR Bridge

20 mins

Combine Vivado and RapidWright generated citcuits

Jup = Jupyter Notebook Tutorial

These tutorials were given in the Sunday afternoon session of FPGA 2019 (February 24th).

Supplimentary Materials:

Getting Started

Before attempting the tutorials above, please install and/or setup the following tools:

  1. RapidWright 2018.3.1

  2. Vivado 2018.3

  3. Eclipse or IntelliJ (not required, but mentioned in Pipeline Generator)

  4. Jupyter Notebook and the RapidWright Kernel (for Jupyter Notebook tutorials)

  5. Download the RapidWright-binder repository by running the following at the command line:

git clone https://github.com/clavin-xlnx/RapidWright-binder.git
  1. Start the Jupyter notebook server and point it at your RapidWright-binder directory:

jupyter notebook --notebook-dir=RapidWright-binder

At this point the above Jupyter notebook tutorial links should open properly.