CUDD can be found at the following link: http://vlsi.colorado.edu/~fabio/ .
Here is a set of useful, stand-alone tools to build and display BDDs for Boolean functions. You can download executable codes, compiled for Linux, directly from the links below. (To access the BDD datastructure and do something useful with it, you have to use the CUDD package, preferably from the VIS environment.)
Most of the academic tools represent the design in
BLIF format.
(Berkeley Logic Interchange Format).
The easiest way to create a file in blif format
is to first write it in a simple equation format, eqn.
Here is a simple example
of a file in eqn and blif formats.
You can then generate a blif file using SIS or ABC programs as follows:
Option -order allows you to impose a variable order, specified in the file order_file (list the variables in the desired order, separated by spaces or lines). Alternatively, the program blif2bdd will prompt you to choose a method for variable ordering. Sifting and window sifting are probably the best to minimize the size of the resulting BDD.
NOTE: if this executable does not work properly on your linux machine, download the following blif2.5.0.tar.gz file. Follow the instructions in REDME file to recompile the program. The resulting executable is called blif2bdd.
The blif2bdd creates two files in the dot format:
OPTIONAL: To show the structure of a circuit (file.blif) as a Boolean network, use the following command:
Modern linux systems can display the *.dot files directly using command xdot. Optionally, you can create a PS file to view the network or the BDD for your circuit using the dotps program and the dot script.
Now you can display the resulting PS file using gv, or convert PS to PDF (ps2pdf) and use Adobe Acrobat reader to view the PDF file.