<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://avlsi.csl.yale.edu/act/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://avlsi.csl.yale.edu/act/feed.php">
        <title>The ACT VLSI design tools - tools</title>
        <description></description>
        <link>https://avlsi.csl.yale.edu/act/</link>
        <image rdf:resource="https://avlsi.csl.yale.edu/act/lib/exe/fetch.php?media=wiki:logo.png" />
       <dc:date>2026-05-10T09:49:45+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://avlsi.csl.yale.edu/act/doku.php?id=tools:act2lef&amp;rev=1773239965&amp;do=diff"/>
                <rdf:li rdf:resource="https://avlsi.csl.yale.edu/act/doku.php?id=tools:act2v&amp;rev=1773239817&amp;do=diff"/>
                <rdf:li rdf:resource="https://avlsi.csl.yale.edu/act/doku.php?id=tools:actsim&amp;rev=1777827648&amp;do=diff"/>
                <rdf:li rdf:resource="https://avlsi.csl.yale.edu/act/doku.php?id=tools:adepend&amp;rev=1722074651&amp;do=diff"/>
                <rdf:li rdf:resource="https://avlsi.csl.yale.edu/act/doku.php?id=tools:basebnf&amp;rev=1759935119&amp;do=diff"/>
                <rdf:li rdf:resource="https://avlsi.csl.yale.edu/act/doku.php?id=tools:bnfsyntax&amp;rev=1759935183&amp;do=diff"/>
                <rdf:li rdf:resource="https://avlsi.csl.yale.edu/act/doku.php?id=tools:chp2prs&amp;rev=1776195198&amp;do=diff"/>
                <rdf:li rdf:resource="https://avlsi.csl.yale.edu/act/doku.php?id=tools:ext2sp&amp;rev=1606888822&amp;do=diff"/>
                <rdf:li rdf:resource="https://avlsi.csl.yale.edu/act/doku.php?id=tools:fpga&amp;rev=1776596096&amp;do=diff"/>
                <rdf:li rdf:resource="https://avlsi.csl.yale.edu/act/doku.php?id=tools:netgen&amp;rev=1778175220&amp;do=diff"/>
                <rdf:li rdf:resource="https://avlsi.csl.yale.edu/act/doku.php?id=tools:pgen&amp;rev=1759935069&amp;do=diff"/>
                <rdf:li rdf:resource="https://avlsi.csl.yale.edu/act/doku.php?id=tools:prs2cells&amp;rev=1773240107&amp;do=diff"/>
                <rdf:li rdf:resource="https://avlsi.csl.yale.edu/act/doku.php?id=tools:prs2sim&amp;rev=1606888822&amp;do=diff"/>
                <rdf:li rdf:resource="https://avlsi.csl.yale.edu/act/doku.php?id=tools:prsim&amp;rev=1746106039&amp;do=diff"/>
                <rdf:li rdf:resource="https://avlsi.csl.yale.edu/act/doku.php?id=tools:start&amp;rev=1776528945&amp;do=diff"/>
                <rdf:li rdf:resource="https://avlsi.csl.yale.edu/act/doku.php?id=tools:v2act&amp;rev=1753460526&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://avlsi.csl.yale.edu/act/lib/exe/fetch.php?media=wiki:logo.png">
        <title>The ACT VLSI design tools</title>
        <link>https://avlsi.csl.yale.edu/act/</link>
        <url>https://avlsi.csl.yale.edu/act/lib/exe/fetch.php?media=wiki:logo.png</url>
    </image>
    <item rdf:about="https://avlsi.csl.yale.edu/act/doku.php?id=tools:act2lef&amp;rev=1773239965&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-11T14:39:25+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>act2lef</title>
        <link>https://avlsi.csl.yale.edu/act/doku.php?id=tools:act2lef&amp;rev=1773239965&amp;do=diff</link>
        <description>Converting an ACT design into LEF/DEF

act2lef can convert an ACT file into a LEF/DEF suitable for a place and route flow. This tool is now deprecated, and its functionality is replaced by the much more flexible interact tool. Please see the physical implementation documentation for details on generating LEF and DEF.</description>
    </item>
    <item rdf:about="https://avlsi.csl.yale.edu/act/doku.php?id=tools:act2v&amp;rev=1773239817&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-11T14:36:57+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>act2v</title>
        <link>https://avlsi.csl.yale.edu/act/doku.php?id=tools:act2v&amp;rev=1773239817&amp;do=diff</link>
        <description>ACT netlist to Verilog netlist

The act2v tool can be used to convert an ACT structural netlist into Verilog syntax. This is useful if you need a structural Verilog netlist---for example, as an input to a commercial or other third party tool (e.g. for place and route,
visualization, etc.).</description>
    </item>
    <item rdf:about="https://avlsi.csl.yale.edu/act/doku.php?id=tools:actsim&amp;rev=1777827648&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-05-03T17:00:48+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>actsim</title>
        <link>https://avlsi.csl.yale.edu/act/doku.php?id=tools:actsim&amp;rev=1777827648&amp;do=diff</link>
        <description>Actsim: an ACT simulator

To run actsim, you need to select the ACT file to simulate and the top-level process for your design:


% actsim file.act process
actsim&gt;


A simple example

The following ACT file is a CHP example that sends three integers on an output channel, and connects that process to one that simply receives an integer and displays it to the screen.</description>
    </item>
    <item rdf:about="https://avlsi.csl.yale.edu/act/doku.php?id=tools:adepend&amp;rev=1722074651&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-07-27T10:04:11+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>adepend</title>
        <link>https://avlsi.csl.yale.edu/act/doku.php?id=tools:adepend&amp;rev=1722074651&amp;do=diff</link>
        <description>adepend

This is modeled on the makedepend tool used for C/C++ programs that can be used to automatically produce file dependencies for make files. Given an ACT file, adepend will produce a one-line output that shows the dependency of the ACT file on others.</description>
    </item>
    <item rdf:about="https://avlsi.csl.yale.edu/act/doku.php?id=tools:basebnf&amp;rev=1759935119&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-10-08T14:51:59+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>basebnf</title>
        <link>https://avlsi.csl.yale.edu/act/doku.php?id=tools:basebnf&amp;rev=1759935119&amp;do=diff</link>
        <description>Built-in BNF items for pgen

The built-in BNF items for &#039;&#039;pgen&#039;&#039; are:

	*  INT: integers
	*  REAL: real numbers
	*  ID: C-style identifiers
	*  STRING: strings
	*  expr: C-style expressions of any type
	*  int_expr: integer expressions
	*  bool_expr: Boolean expressions</description>
    </item>
    <item rdf:about="https://avlsi.csl.yale.edu/act/doku.php?id=tools:bnfsyntax&amp;rev=1759935183&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-10-08T14:53:03+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>bnfsyntax</title>
        <link>https://avlsi.csl.yale.edu/act/doku.php?id=tools:bnfsyntax&amp;rev=1759935183&amp;do=diff</link>
        <description>BNF Short Cuts

The complete list of short-cuts for specifying a BNF are:

	*  [ things to parse go here ] : an optional list of things to parse.
	*  { things to parse go here “keyword” }** : a keyword separated list of things to parse.
	*  { one-thing</description>
    </item>
    <item rdf:about="https://avlsi.csl.yale.edu/act/doku.php?id=tools:chp2prs&amp;rev=1776195198&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-14T19:33:18+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>chp2prs</title>
        <link>https://avlsi.csl.yale.edu/act/doku.php?id=tools:chp2prs&amp;rev=1776195198&amp;do=diff</link>
        <description>Circuit Synthesis

The process of converting a CHP description of a process into a PRS description automatically.

Maelstrom Guide

work in progress...

Maelstrom is a new logic synthesis technique (and software tool) for asynchronous circuits, developed at the AVLSI Lab at Yale. This is a guide to writing CHP so that the tool produces high-quality circuits.</description>
    </item>
    <item rdf:about="https://avlsi.csl.yale.edu/act/doku.php?id=tools:ext2sp&amp;rev=1606888822&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-12-02T06:00:22+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ext2sp</title>
        <link>https://avlsi.csl.yale.edu/act/doku.php?id=tools:ext2sp&amp;rev=1606888822&amp;do=diff</link>
        <description>ext2sp

ext2sp converts a (hierarchical) magic extract file into a hierarchical spice file for simulation with SPICE simulators like Xyce or ngspice. Running the tool is straightforward:


  ext2sp file.ext &gt; file.spice


will convert the hierarchical extract file into the corresponding spice file. For this to work properly, there are a number of configuration parameters that are set in the ACT configuration file.</description>
    </item>
    <item rdf:about="https://avlsi.csl.yale.edu/act/doku.php?id=tools:fpga&amp;rev=1776596096&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-19T10:54:56+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>fpga</title>
        <link>https://avlsi.csl.yale.edu/act/doku.php?id=tools:fpga&amp;rev=1776596096&amp;do=diff</link>
        <description>FPGA modeling

ACT is used to describe asynchronous circuits. Mainstream FPGAs from Xilinx, Altera, etc. don&#039;t support asynchronous logic synthesis. There have been many point solutions developed by different research groups to map specific asynchronous circuit structures to Xilinx/Altera FPGAs. The mapping approach is usually tailored both to the FPGA tool set and the asynchronous circuit family being mapped.</description>
    </item>
    <item rdf:about="https://avlsi.csl.yale.edu/act/doku.php?id=tools:netgen&amp;rev=1778175220&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-05-07T17:33:40+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>netgen</title>
        <link>https://avlsi.csl.yale.edu/act/doku.php?id=tools:netgen&amp;rev=1778175220&amp;do=diff</link>
        <description>prs2net: automated netlist generation

The tool prs2net can be used to automatically generate a hierarchical spice netlist from an .act file. Parameters that control defaults and the output format are specified in a configuration file.

The overall way the tool works is as follows. First, it reads in the</description>
    </item>
    <item rdf:about="https://avlsi.csl.yale.edu/act/doku.php?id=tools:pgen&amp;rev=1759935069&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-10-08T14:51:09+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>pgen</title>
        <link>https://avlsi.csl.yale.edu/act/doku.php?id=tools:pgen&amp;rev=1759935069&amp;do=diff</link>
        <description>Parser Generator

The parser generator program pgen can be used to quickly develop a parser. It has quite a few built-in features (which may or may not be a good thing depending on what you&#039;re trying to do). Based on an input file, the program will create:</description>
    </item>
    <item rdf:about="https://avlsi.csl.yale.edu/act/doku.php?id=tools:prs2cells&amp;rev=1773240107&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-11T14:41:47+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>prs2cells</title>
        <link>https://avlsi.csl.yale.edu/act/doku.php?id=tools:prs2cells&amp;rev=1773240107&amp;do=diff</link>
        <description>ACT cell mapper

prs2cells maps production rules into a cell library. This tool is now deprecated, as it is subsumed by the interact tool. Please see the documentation on mapping a design to a cell library.</description>
    </item>
    <item rdf:about="https://avlsi.csl.yale.edu/act/doku.php?id=tools:prs2sim&amp;rev=1606888822&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-12-02T06:00:22+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>prs2sim</title>
        <link>https://avlsi.csl.yale.edu/act/doku.php?id=tools:prs2sim&amp;rev=1606888822&amp;do=diff</link>
        <description>prs2sim

A hierarchical ACT file can be converted into a .sim and .al file for simulation with other open-source tools like irsim or cosmos. 

Since .sim files correspond to a CMOS netlist, your production rules must be directly CMOS-implementable. This means that any pull-up network must have only inverted variables, and pull-down networks must have only uninverted variables. An explanation of how the production rules are translated into a transistor-level implementation can be found in the</description>
    </item>
    <item rdf:about="https://avlsi.csl.yale.edu/act/doku.php?id=tools:prsim&amp;rev=1746106039&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-05-01T13:27:19+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>prsim</title>
        <link>https://avlsi.csl.yale.edu/act/doku.php?id=tools:prsim&amp;rev=1746106039&amp;do=diff</link>
        <description>prsim: Production rule simulation

Note: prsim is now deprecated; please use actsim instead.

Before using prsim to simulate a set of production rules, they must first be flattened using aflat. Assuming your production rules are in a file called circuit.act</description>
    </item>
    <item rdf:about="https://avlsi.csl.yale.edu/act/doku.php?id=tools:start&amp;rev=1776528945&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-18T16:15:45+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>start</title>
        <link>https://avlsi.csl.yale.edu/act/doku.php?id=tools:start&amp;rev=1776528945&amp;do=diff</link>
        <description>Tools

In addition to the core ACT library, we have also implemented a number of tools for asynchronous circuit design. Some of the core tools are included as part of the main Github repository, while others have their own repository. For completeness, we also include links to other open-source tools that can be used to implement different parts of the VLSI flow.</description>
    </item>
    <item rdf:about="https://avlsi.csl.yale.edu/act/doku.php?id=tools:v2act&amp;rev=1753460526&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-25T16:22:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>v2act</title>
        <link>https://avlsi.csl.yale.edu/act/doku.php?id=tools:v2act&amp;rev=1753460526&amp;do=diff</link>
        <description>Verilog netlist to ACT

The v2act tool can be used to translate a Verilog netlist into ACT format. This program is used internally by the ACT expression optimization library to invoke third-party logic synthesis tools and incorporate their output back into an ACT design. It has been tested against Verilog netlists generated by Synopsys design compiler, Cadence&#039;s Genus, yosys, and abc.</description>
    </item>
</rdf:RDF>
