Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
install [2019/07/22 16:46]
rajit [Running large ACT files]
install [2023/07/09 14:04] (current)
rajit [Running large ACT files]
Line 1: Line 1:
 +====== Installing ACT ======
  
-====== System requirements ======+Primary development of ACT is conducted on Linux and MacOS, and so it has been extensively tested on such systems. It has also been tested in certain [[install#Microsoft Windows|Windows]] environments (see below). 
 + 
 +The core library is available from [[https://github.com/asyncvlsi/act|Github]]. 
 + 
 +**Note:** This only installs the core circuit design tools. For those interested in the full flow, please use the [[https://github.com/asyncvlsi/actflow|actflow]] repo. The flow repository includes the core ACT repository, and includes many additional tools including ''actsim'', ''interact'', ''chp2prs'', and ''dflowmap'' (to name a few). 
 + 
 + 
 +===== Linux/Unix-like environments =====
  
 Before starting, please make sure that your system satisfies the following requirements: Before starting, please make sure that your system satisfies the following requirements:
Line 11: Line 19:
    * The system should have the macro pre-processing package ''m4'' installed    * The system should have the macro pre-processing package ''m4'' installed
  
-====== Build instructions ======+On MacOS, these packages can be installed using the [[https://brew.sh/|homebrew]] package manager.
  
-Create a directory where you'd like the tools to be installed. Example common locations include ''/usr/local/cad'', ''/opt/cad'', ''/opt/async''. Once you've cloned the git repo:+==== Build instructions ==== 
 + 
 +Create a directory where you'd like the tools to be installed. Example common locations include ''/usr/local/cad'', ''/opt/cad'', ''/opt/async''. Once you've cloned the [[http://github.com/asyncvlsi/act|git repo]]:
  
    * Set the environment variable ''ACT_HOME'' to point to the install directory.    * Set the environment variable ''ACT_HOME'' to point to the install directory.
Line 20: Line 30:
    * Run ''./build''    * Run ''./build''
  
-If there is an issue building the software and you want to do a clean build, use ''make realclean''+If there is an issue building the software and you want to do a clean build, use ''make realclean'' before re-running the build instructions above.
  
 Once you've built the tools, run ''make install'' to install the files, and ''make runtest'' to run through a set of test cases. Once you've built the tools, run ''make install'' to install the files, and ''make runtest'' to run through a set of test cases.
Line 26: Line 36:
 Note that  the environment variable ''ACT_HOME'' has to be set to run the ACT tools, so it is best to set it in your ''.bashrc'' or the appropriate initialization script read in by your default shell. Note that  the environment variable ''ACT_HOME'' has to be set to run the ACT tools, so it is best to set it in your ''.bashrc'' or the appropriate initialization script read in by your default shell.
  
-====== Running large ACT files ======+Optional: to add the tools to your path add ''export PATH=$ACT_HOME/bin:$PATH'' to your ''.bashrc'' too 
 + 
 +==== Troubleshooting ==== 
 + 
 +If you have trouble building on your specific operating system have a peek in the continuous integration scripts of the git repository if your operating system is covered there and you can try the commands specified: 
 + 
 +https://github.com/asyncvlsi/act/blob/master/.circleci/config.yml 
 + 
 +for ''Debian'', ''Ubuntu'' look at the ubuntu 18 section 
 + 
 +for ''RHEL'', ''SUSE'', ''CentOS'', ''Fedora'' look at centos 8 section 
 + 
 + 
 +===== Microsoft Windows ===== 
 + 
 +Recent versions of Windows include compatibility layers for Unix, and ACT has been successfully tested in such an environment. 
 + 
 +[[windows_build|Some instructions for running ACT tools on Microsoft Windows]] 
 + 
 +===== Running large ACT files =====
  
-If an ACT process (or a namespace) has a very large number of instances/connections that are individually listed (i.e. in the input file) and the library crashes, try removing system limits on the stack size (''unlimit stacksize'') and re-running the program.+ACT files are typically short since they are written by a designer. However, an ACT file generated by another program---especially if the program generates a flattened design---can be large. If an ACT process (or a namespace) has a very large number of instances/connections that are individually listed (i.e. in the input file) and the library crashes, try removing system limits on the stack size (using ''unlimit'' or ''ulimit'' depending on your shell) and re-running the program.
  
-====== Synopsys linkages ======+NOTE: This issue has been fixed as of 7/10/2023. 
 +===== Synopsys linkages =====
  
 Some of the library functionality can be linked into Synopsys ''vcs'' for co-simulation support. This requires some Synopsys header files (obviously not included in the ACT distribution). Some of the library functionality can be linked into Synopsys ''vcs'' for co-simulation support. This requires some Synopsys header files (obviously not included in the ACT distribution).