Verigen Docs (w.i.p.)

Albert Cheung

Welcome to VERIGEN!

1
2
3
4
5
6
7
 ___      ___ _______   ________  ___  ________  _______   ________      
|\ \ / /|\ ___ \ |\ __ \|\ \|\ ____\|\ ___ \ |\ ___ \
\ \ \ / / | \ __/|\ \ \|\ \ \ \ \ \___|\ \ __/|\ \ \\ \ \
\ \ \/ / / \ \ \_|/_\ \ _ _\ \ \ \ \ __\ \ \_|/_\ \ \\ \ \
\ \ / / \ \ \_|\ \ \ \\ \\ \ \ \ \|\ \ \ \_|\ \ \ \\ \ \
\ \__/ / \ \_______\ \__\\ _\\ \__\ \_______\ \_______\ \__\\ \__\
\|__|/ \|_______|\|__|\|__|\|__|\|_______|\|_______|\|__| \|__| Version: 1.1

Verigen is an open-source software that integrates functions including Verilog code simulation, synthesis, netlist output, and layout and routing. This software is released under the MIT License.

Installation and Configuration

Prerequisites:

  • Linux (Fedora 41 best, or any Unix-like OS)
  • Verigen tools, include
    • iverilog
    • yosys
    • netlistsvg
    • vvp
  • In fact, these are not necessary. If you don’t, you can simply run it in the Verigen shell environment. Verigen has offered you these tools.

Steps to Install:

  1. Clone the repository:

    1
    2
    git clone https://github.com/albertc9/Verigen.git
    cd Verigen
  2. Build and configure:
    Make sure your environment is properly set up to run Verigen.
    Inside the verigen directory, run:

    1
    2
    chmod +x build
    ./build

    After installation, you should be able to run verigen directly from anywhere in the terminal.


Simple Instructions

Running Verigen:

  1. Enter the interactive Verigen shell:

    1
    verigen

    This will enter the Verigen interactive shell. From here, you can enter Verigen commands directly. You can also type commands directly into the terminal.

  2. Run Verilog simulation:

    1
    verigen testbench.v dut.v

    This will run a simulation. If you add codes like

    1
    2
    3
    4
    initial begin
    $dumpfile("testbench.vcd");
    $dumpvars(0, testbench);
    end

    to your testbench code, you’ll additionally get a .vcd file.

  3. Generate netlist and SVG:

    1
    verigen -a dut.v

    This command generates a JSON netlist and an SVG diagram for the given Verilog file.

  4. Generate only netlist (no SVG):

    1
    verigen -j dut.v

    This command generates only the JSON netlist without the SVG diagram.

  5. Generate only SVG (no netlist):

    1
    verigen -s dut.v

    This command generates only the SVG diagram without the netlist.

  6. Check Verigen version:

    1
    verigen --version

    Displays the current version of Verigen. And can also verify installation and configuration.

  7. Get help:
    Inside the interactive shell, type:

    1
    .help

    This will show you a list of all available commands and options in Verigen.


License

This software is released under the MIT License.


For more information, please refer to the document:

Docs: https://albertc9.github.io/2025/02/18/verigen-docs/

  • Title: Verigen Docs (w.i.p.)
  • Author: Albert Cheung
  • Created at : 2025-02-18 21:42:59
  • Updated at : 2025-02-20 19:51:19
  • Link: https://www.albertc9.github.io/2025/02/18/verigen-docs/
  • License: This work is licensed under CC BY-NC-SA 4.0.