Using cocotb requires installation of prerequisites and installation of cocotb itself.
In this document, we are assuming that you already have a
supported simulator available in
Installation of Prerequisites
The current stable version of cocotb requires:
GNU Make 3+
A Verilog or VHDL simulator, depending on your RTL source code
Changed in version 1.7.0: Dropped requirement of Python development headers and C++ compiler for release versions.
Changed in version 1.6.0: Dropped Python 3.5 support
Changed in version 1.4: Dropped Python 2 support
In order to use a 32-bit simulator you need to use a 32-bit version of Python.
The installation instructions vary depending on your operating system:
We recommend users who are running Windows and who are more comfortable with a Unix shell, or who have legacy Makefile-based projects, to use Windows Subsystem for Linux (WSL). After installing WSL and a supported Linux distribution, follow the Linux installation instructions for cocotb.
Conda is an open-source package and environment management system that we recommend for users who are more comfortable with native Windows development. Download and install Miniconda from https://conda.io/. From an Anaconda Prompt, use the following line to install a compiler (GCC or Clang) and GNU Make:
conda install -c msys2 m2-base m2-make
In a terminal, run
sudo apt-get install make python3 python3-pip
In a terminal, run
sudo yum install make python3 python3-pip
We recommend using the Homebrew package manager. After installing it, run the following line in a terminal:
brew install python
Installation of cocotb
The stable version of cocotb can be installed by running
pip install cocotb
The reusable bus interfaces and testbenching components have recently been moved to the cocotb-bus package.
You can easily install these at the same time as cocotb by adding the
bus extra install:
pip install cocotb[bus].
If your user does not have permissions to install cocotb using the instructions above,
try adding the
--user option to pip
(see the pip documentation).
pip may belong to a different Python installation to what you expect.
pip -V to check.
If this prints “(python 2.7)”, use pip3 or
python3 -m pip in place of pip in the command shown.
If you want to install the development version of cocotb, instructions are here.
After installation, you should be able to execute cocotb-config.
If it is not found, you need to append its location to the
PATH environment variable.
This may happen when you use the
--user option to pip,
in which case the location is documented here.
For more installation options, please see our Wiki.