The USRP FPGA build system requires a UNIX-like environment with the following dependencies
Download and install Xilinx Vivado or Xilinx ISE based on the target USRP.
/opt/Xilinx/
for Linux and C:\Xilinx
in WindowsDownload and install Mentor ModelSim using the link above.
/opt/mentor/modelsim
for Linux and C:\mentor\modelsim
in WindowsYou can install all the dependencies through the package manager:
sudo apt-get install python bash build-essential doxygen
Your actual command may differ.
You can install all the dependencies through the package manager:
sudo yum -y install python bash make doxygen
Your actual command may differ.
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
usrp3/top/{project}
where project is:source setupenv.sh
(If Vivado is installed in the default path /opt/Xilinx/Vivado) ORsource setupenv.sh --vivado-path=<VIVADO_PATH>
(where VIVADO_PATH is a non-default installation path)make <target>
where the target is specific to each product. To get a list of supported targets run make help
.usrp3/top/{project}/build
directory. Run make help
for more information.The build environment also defines many ease-of-use utilites. Please use the Vivado Utility Reference page for a list and usage information
source <install_dir>/Xilinx/14.7/ISE_DS/settings64.sh
(64-bit platform)source <install_dir>/Xilinx/14.7/ISE_DS/settings32.sh
(32-bit platform)usrp3/top/{project}
where project is:make <target>
where the target is specific to each product. To get a list of supported targets run make help
.usrp3/top/{project}/build
directory. Run make help
for more information.build/usrp_<product>_fpga.bit
: Configuration bitstream with headerbuild/usrp_<product>_fpga.bin
: Configuration bitstream without headerbuild/usrp_<product>_fpga.syr
: Xilinx system reportbuild/usrp_<product>_fpga.twr
: Xilinx timing reportbuild/usrp_<product>_fpga_<image_type>.bit
: Configuration bitstream with headerbuild/usrp_<product>_fpga_<image_type>.bin
: Configuration bitstream without headerbuild/usrp_<product>_fpga_<image_type>.lvbitx
: Configuration bitstream for PCIe (NI-RIO)build/usrp_<product>_fpga_<image_type>.rpt
: System, utilization and timing summary reportbuild/usrp_<product>_fpga.bit
: Configuration bitstream with headerbuild/usrp_<product>_fpga.bin
: Configuration bitstream without headerbuild/usrp_<product>_fpga.rpt
: System, utilization and timing summary reportIt 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)