[Libre-silicon-devel] Mumble Outcome - list of recommended tools

Hagen SANKOWSKI hsank at posteo.de
Sun Mar 10 18:55:50 CET 2019

Hello List.

As we talked (again) about the tools we need for our Design Flow, here
is a non-complete list of available / recommended FLOSS tools.

Wikipedia has a good comparison list for EDA software
(https://en.wikipedia.org/wiki/Comparison_of_EDA_software). Some tools I
like to mention here.

Schematic Entry

- gschem

gschem is part of the gEDA Project (http://www.geda-project.org) with a
couple of tools, originaly for PCB design.
The data format of gschem is pur ASCII
Usually, the file with the schematic goes to an export filter - or
netlister - which generates the files for PCB input and so on.
This process is quite flexible but not so user-friendly - this belongs
mostly to scheme as an language this export filters are written in.

While the development of gEDA/gaf becomes quite slow, a fork happend and
lepton-EDA (https://github.com/lepton-eda/lepton-eda/wiki) got the
better momentum on github now.
I am not sure, where are the differences now en detail.


- ngspice

ngspice is also part of the gEDA Project - and hence for lepton-EDA.
There are already pages (e.g.
http://wiki.geda-project.org/geda:ngspice_and_gschem), which describe
how to translate the schematic entry directly into a spice deck.

Waveform viewer

- GTKWave

GTKwave is great for digital stuff - I use it on a daily basis - but
lacks analog features.

Evaluation needed

- Oregano (https://github.com/drahnr/oregano)
- Electric (https://www.staticfreesoft.com)

Electric is the tool, which Ludwig already forked in the latest C-based
version (https://github.com/levush/electric) before it becomes Java.


Personally I like the gEDA / lepton way of small tools, glued together
by scripts and converters.
BTW, there are a couple of different used scripting languages in the
wild for this topic.

1. Tcl
This Language is used quite often in the VLSI business, e.g. Synopsys
and Mentor are using Tcl. The Synopsys Design Constraints are also Tcl.
Someone also maintains ngspice with a Tcl interface as tclspice..

But regarding RMS and the "Tcl war"
2. Scheme (or Guile)
is a better choice. Guile is the "official" scripting languages for the
GNU Project. gEDA/gaf and lepton-EDA is using Scheme.
And, in the proprietary VLSI world, Cadence (as the biggest? vendor)
uses Scheme for scripting purposes (as SKILL).

3. Lua
Someone might be find it interesting to use Lua for the scripting API.
Small and flexible.

For the beginning, for our 555, we are IMHO fine with gschem from
gEDA/gaf or lepton-EDA.
We can export this schematic to ngspice and simulate the spice deck.
Than, we need manual effort, to go further to Magic and the Layout.


More information about the Libre-silicon-devel mailing list