Installing OpenSource EDA tools on ubuntu

ASIC Design Flow requires many EDA tools and industry uses some of the advanced EDA tools. For expanding your knowledge on these tools and the design flow opensource eda tools can be used and applied to your design.

My system specifications

  1. Intel(R) Core(TM) i5-2430M CPU @ 2.40GHz
  2. SODIMM DDR3 Synchronous 1333 MHz 4GB
  3. ATA Disk 500GB
  4. Ubuntu 14.04.5

Opensource EDA tools

This website is the repository for the suite of open-source EDA (Electronic Design Automation) tools including Magic, IRSIM, Netgen, PCB, and XCircuit. These tools are all provided for free under the GNU Public License (GPL) or similar open-source license. The simplistic design flow can be as follows

Lets starting by installing the Opensource EDA tools in the design flow order, these are the few required

Icarus verilog

Tcl/Tk installation

Tcl/tk is needed for almost all the tools. It can be installed using the following command.

sudo apt-get install tk-dev tcl-dev tk tcl

1. Icarus verilog and GTKWave

sudo apt-get update
sudo apt-get install iverilog
sudo apt-get install gtkwave

These commands will install Iverilog and GTKWave. Iverilog is the open source verilog simulator. GTKWave is the opensource wave form viewer.

2. Yosys

Yosys is a framework for Verilog RTL synthesis. You can install yosys using the yosys repository in git or using apt-get. I used the following ppa

sudo add-apt-repository ppa:saltmakrell/ppa
sudo apt-get update                                                                                                                                                                                              
sudo apt-get install yosys

This will setup yosys on your system,

3. Graywolf

Graywolf is used for placement in VLSI design. It can be found at the following git repository

git clone

Download the git repository using the above command.

cd graywolf
cmake .
sudo make install

The installation might throw errors if you do not have Gnu Scientific Library. You have to install the gsl library for graywolf to compile.

sudo apt-get install libgsl0ldbl
sudo apt-get install gsl-bin libgsl0-dev

This should set up gsl and installation of graywolf should not be a problem.

4. Qrouter

Qrouter is a tool to generate metal layers and vias to physically connect together a netlist in a VLSI fabrication technology. It is a maze router, otherwise known as an “over-the-cell” router or “sea-of-gates” router. That is, unlike a channel router, it begins with a description of placed standard cells, usually packed together at minimum spacing, and places metal routes over the standard cells.

Download the qrouter from the following link

tar -xvf qrouter-version
cd qrouter-version
sudo make install

This should install qrouter.

5. Magic

Magic is a venerable VLSI layout tool. It can be downloaded from the following link

tar -xvf magic-version
cd magic-version

// to install dependencies
sudo apt-get install m4
sudo apt-get install csh
sudo apt-get install libx11-dev
sudo apt-get install libncurses-dev
sudo apt-get install blt-dev

//OpenGl is also needed
sudo apt-get install freeglut3
sudo apt-get install freeglut3-dev
sudo apt-get install binutils-gold
sudo apt-get install libglew-dev
sudo apt-get install mesa-common-dev
sudo apt-get install build-essential
sudo apt-get install libglew1.5-dev libglm-dev

//install magic
sudo make install

This should install magic.

6. Qflow

Qflow is a complete tool chain for synthesizing digital circuits starting from verilog source and ending in physical layout for a specific target fabrication process. It can be downloaded from the following link,

tar -xvf qflow-1.1
cd qflow-1.1
sudo make install

This should install qflow.

7. Netgen

Netgen is a tool for comparing netlists, a process known as LVS, which stands for “Layout vs. Schematic”. It can be downloaded from the following link

tar -xvf netgen-version
cd netgen-version
sudo make install

Netgen should be up and running.


IRSIM is a tool for simulating digital circuits. It is a “switch-level” simulator; that is, it treats transistors as ideal switches. Extracted capacitance and lumped resistance values are used to make the switch a little bit more realistic than the ideal, using the RC time constants to predict the relative timing of events. It can be downloaded here

tar -xvf irsim-version
cd irsim-version
sudo make install

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.