Requirements

Build Environment Setup

Download and Install Xilinx Tools

Download and install Xilinx Vivado or Xilinx ISE based on the target USRP.

The recommended installation directory is /opt/Xilinx/ for Linux and C:\Xilinx in Windows

Please check the Xilinx Requirements document above for the FPGA technology used by your USRP device.

You may need to acquire a synthesis and implementation license from Xilinx to build some USRP designs.

You may need to acquire a simulation license from Xilinx to run some testbenches

Download and Install ModelSim (Optional)

Download and install Mentor ModelSim using the link above.

The recommended installation directory is /opt/mentor/modelsim for Linux and C:\mentor\modelsim in Windows

Supported versions are PE, DE, SE, DE-64 and SE-64

You may need to acquire a license from Mentor Graphics to run ModelSim

Setting up build dependencies on Ubuntu

You can install all the dependencies through the package manager:

sudo apt-get install python bash build-essential doxygen

Your actual command may differ.

Setting up build dependencies on Fedora

You can install all the dependencies through the package manager:

sudo yum -y install python bash make doxygen

Your actual command may differ.

Setting up build dependencies on Windows (using Cygwin)

NOTE: Windows is only supported with Vivado. The build system does not support Xilinx ISE in Windows.

Download the latest version on Cygwin (64-bit is preferred on a 64-bit OS) and install it using these instructions. The following additional packages are also required and can be selected in the GUI installer

python patch patchutils bash make doxygen

Build Instructions (Xilinx Vivado only)

Makefile based Builder

Navigate to usrp3/top/{project} where project is:

x300: For USRP X300 and USRP X310

e300: For USRP E310

To add vivado to the PATH and to setup up the Ettus Xilinx build environment run

source setupenv.sh (If Vivado is installed in the default path /opt/Xilinx/Vivado) OR

Additional Build Options

It is possible to make a target and specific additional options in the form VAR=VALUE in the command. For example: make B210 PROJECT_ONLY=1

Here are the supported options:

PROJECT_ONLY=1 : Only create a Xilinx project for the specified target(s). Useful for use with the ISE GUI. (NOTE: this option is only valid for Xilinx ISE)

EXPORT_ONLY=1 : Export build targets from a GUI build to the build directory. Requires the project in build-*_* to be built. (NOTE: this option is only valid for Xilinx ISE)

GUI=1 : Run the Vivado build in GUI mode instead of batch mode. After the build is complete, Vivado provides an option to save the fully configured project for customization (NOTE: this option is only valid for Xilinx Vivado)