OpenSTA is an open-source STA tool by Parallax (hence a.k.a. Parallax STA/Static Timing Analyzer). User Manual is part of the repository.
sudo apt-get install cmake clang gcc tcl swig bison flex libeigen3-dev libz-dev tcl-dev git clone https://github.com/parallaxsw/OpenSTA mkdir OpenSTA/build && cd OpenSTA/build cmake .. make
Part of this gist is a compiled version of OpenSTA (commit fdca0dff7ae32edcecf2008977a084d92dc11190
) for Ubuntu Jammy.
wget https://gist.github.com/brabect1/2b57a2bd4b097ecf473825faee5b379e/raw/5f7e1eea7671fcbbb5d1f04000c44f30c796f6a5/opensta.build.fdca0dff7ae32edcecf2008977a084d92dc11190.jammy.tgz sudo apt-get install tcl swig tar xzvf opensta.build.fdca0dff7ae32edcecf2008977a084d92dc11190.jammy.tgz export PATH=$PATH:$(pwd)/OpenSTA/bin
% read_liberty ~/sta_basics_course/src/prime_time/sample_lib1.lib % read_verilog ~/sta_basics_course/src/prime_time/circ01.v % link_design circ01 % create_clock -name CLK -period 20 clk % report_checks Startpoint: FF1 (rising edge-triggered flip-flop clocked by CLK) Endpoint: FF2 (rising edge-triggered flip-flop clocked by CLK) Path Group: CLK Path Type: max Delay Time Description --------------------------------------------------------- 0.00 0.00 clock CLK (rise edge) 0.00 0.00 clock network delay (ideal) 0.00 0.00 ^ FF1/CK (dffrx1) 3.00 3.00 v FF1/Q (dffrx1) 2.00 5.00 ^ G1/Y (invx1) 0.00 5.00 ^ FF2/D (dffrx1) 5.00 data arrival time 20.00 20.00 clock CLK (rise edge) 0.00 20.00 clock network delay (ideal) 0.00 20.00 clock reconvergence pessimism 20.00 ^ FF2/CK (dffrx1) -0.70 19.30 library setup time 19.30 data required time --------------------------------------------------------- 19.30 data required time -5.00 data arrival time --------------------------------------------------------- 14.30 slack (MET)