siliconcompiler 0.32.1__py3-none-any.whl → 0.32.3__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- siliconcompiler/_metadata.py +3 -2
- siliconcompiler/apps/sc_install.py +13 -5
- siliconcompiler/apps/sc_remote.py +2 -1
- siliconcompiler/core.py +68 -55
- siliconcompiler/issue.py +3 -1
- siliconcompiler/remote/client.py +55 -16
- siliconcompiler/report/__init__.py +3 -2
- siliconcompiler/report/dashboard/__init__.py +61 -170
- siliconcompiler/report/dashboard/cli/__init__.py +788 -0
- siliconcompiler/report/dashboard/web/__init__.py +196 -0
- siliconcompiler/report/dashboard/{components → web/components}/__init__.py +4 -4
- siliconcompiler/report/dashboard/{components → web/components}/graph.py +1 -1
- siliconcompiler/report/dashboard/{layouts → web/layouts}/__init__.py +3 -3
- siliconcompiler/report/dashboard/{layouts → web/layouts}/_common.py +1 -1
- siliconcompiler/report/dashboard/{layouts → web/layouts}/vertical_flowgraph.py +5 -5
- siliconcompiler/report/dashboard/{layouts → web/layouts}/vertical_flowgraph_node_tab.py +6 -6
- siliconcompiler/report/dashboard/{layouts → web/layouts}/vertical_flowgraph_sac_tabs.py +6 -6
- siliconcompiler/report/dashboard/{viewer.py → web/viewer.py} +4 -4
- siliconcompiler/scheduler/__init__.py +44 -13
- siliconcompiler/scheduler/docker_runner.py +2 -1
- siliconcompiler/sphinx_ext/dynamicgen.py +11 -11
- siliconcompiler/templates/replay/replay.sh.j2 +2 -2
- siliconcompiler/templates/tcl/manifest.tcl.j2 +4 -120
- siliconcompiler/tools/_common/__init__.py +2 -0
- siliconcompiler/tools/_common/tcl/sc_schema_access.tcl +126 -0
- siliconcompiler/tools/openroad/_apr.py +7 -0
- siliconcompiler/tools/openroad/fillmetal_insertion.py +14 -14
- siliconcompiler/tools/openroad/scripts/apr/sc_antenna_repair.tcl +1 -1
- siliconcompiler/tools/openroad/scripts/apr/sc_clock_tree_synthesis.tcl +1 -1
- siliconcompiler/tools/openroad/scripts/apr/sc_detailed_placement.tcl +1 -1
- siliconcompiler/tools/openroad/scripts/apr/sc_detailed_route.tcl +1 -1
- siliconcompiler/tools/openroad/scripts/apr/sc_endcap_tapcell_insertion.tcl +1 -1
- siliconcompiler/tools/openroad/scripts/apr/sc_fillercell_insertion.tcl +1 -1
- siliconcompiler/tools/openroad/scripts/apr/sc_fillmetal_insertion.tcl +2 -2
- siliconcompiler/tools/openroad/scripts/apr/sc_global_placement.tcl +1 -1
- siliconcompiler/tools/openroad/scripts/apr/sc_global_route.tcl +1 -1
- siliconcompiler/tools/openroad/scripts/apr/sc_init_floorplan.tcl +1 -1
- siliconcompiler/tools/openroad/scripts/apr/sc_macro_placement.tcl +1 -1
- siliconcompiler/tools/openroad/scripts/apr/sc_metrics.tcl +1 -1
- siliconcompiler/tools/openroad/scripts/apr/sc_pin_placement.tcl +1 -1
- siliconcompiler/tools/openroad/scripts/apr/sc_power_grid.tcl +1 -1
- siliconcompiler/tools/openroad/scripts/apr/sc_repair_design.tcl +1 -1
- siliconcompiler/tools/openroad/scripts/apr/sc_repair_timing.tcl +54 -8
- siliconcompiler/tools/openroad/scripts/apr/sc_write_data.tcl +1 -1
- siliconcompiler/tools/openroad/scripts/common/procs.tcl +19 -1
- siliconcompiler/tools/openroad/scripts/common/reports.tcl +18 -7
- siliconcompiler/tools/openroad/scripts/sc_rcx.tcl +1 -1
- siliconcompiler/tools/openroad/scripts/sc_rdlroute.tcl +1 -1
- siliconcompiler/tools/openroad/scripts/sc_show.tcl +1 -1
- siliconcompiler/tools/opensta/__init__.py +1 -1
- siliconcompiler/tools/opensta/scripts/sc_check_library.tcl +1 -1
- siliconcompiler/tools/opensta/scripts/sc_procs.tcl +16 -0
- siliconcompiler/tools/opensta/scripts/sc_report_libraries.tcl +1 -1
- siliconcompiler/tools/opensta/scripts/sc_timing.tcl +35 -7
- siliconcompiler/tools/opensta/timing.py +6 -2
- siliconcompiler/tools/slang/__init__.py +7 -8
- siliconcompiler/tools/sv2v/sv2v.py +4 -1
- siliconcompiler/tools/yosys/__init__.py +4 -36
- siliconcompiler/tools/yosys/lec.py +3 -4
- siliconcompiler/tools/yosys/{syn_asic.tcl → sc_synth_asic.tcl} +87 -0
- siliconcompiler/tools/yosys/{syn_fpga.tcl → sc_synth_fpga.tcl} +78 -0
- siliconcompiler/tools/yosys/syn_asic.py +36 -11
- siliconcompiler/tools/yosys/syn_fpga.py +23 -16
- siliconcompiler/toolscripts/_tools.json +23 -9
- siliconcompiler/toolscripts/rhel8/install-chisel.sh +2 -0
- siliconcompiler/toolscripts/rhel8/install-icarus.sh +1 -0
- siliconcompiler/toolscripts/rhel8/install-klayout.sh +2 -0
- siliconcompiler/toolscripts/rhel8/install-magic.sh +1 -2
- siliconcompiler/toolscripts/rhel8/install-netgen.sh +1 -1
- siliconcompiler/toolscripts/rhel8/install-slang.sh +2 -0
- siliconcompiler/toolscripts/rhel8/install-surelog.sh +3 -1
- siliconcompiler/toolscripts/rhel8/install-sv2v.sh +1 -0
- siliconcompiler/toolscripts/rhel8/install-verible.sh +2 -0
- siliconcompiler/toolscripts/rhel8/install-verilator.sh +1 -0
- siliconcompiler/toolscripts/rhel8/install-xyce.sh +2 -0
- siliconcompiler/toolscripts/rhel9/install-chisel.sh +2 -0
- siliconcompiler/toolscripts/rhel9/install-ghdl.sh +1 -0
- siliconcompiler/toolscripts/rhel9/install-gtkwave.sh +2 -1
- siliconcompiler/toolscripts/rhel9/install-icarus.sh +1 -0
- siliconcompiler/toolscripts/rhel9/install-klayout.sh +2 -0
- siliconcompiler/toolscripts/rhel9/install-magic.sh +1 -2
- siliconcompiler/toolscripts/rhel9/install-netgen.sh +1 -1
- siliconcompiler/toolscripts/rhel9/install-openroad.sh +2 -0
- siliconcompiler/toolscripts/rhel9/install-opensta.sh +76 -0
- siliconcompiler/toolscripts/rhel9/install-slang.sh +3 -1
- siliconcompiler/toolscripts/rhel9/install-surelog.sh +2 -1
- siliconcompiler/toolscripts/rhel9/install-sv2v.sh +1 -0
- siliconcompiler/toolscripts/rhel9/install-verible.sh +2 -0
- siliconcompiler/toolscripts/rhel9/install-verilator.sh +1 -0
- siliconcompiler/toolscripts/rhel9/install-vpr.sh +31 -0
- siliconcompiler/toolscripts/rhel9/install-xdm.sh +2 -0
- siliconcompiler/toolscripts/rhel9/install-xyce.sh +2 -0
- siliconcompiler/toolscripts/rhel9/install-yosys-moosic.sh +2 -0
- siliconcompiler/toolscripts/rhel9/install-yosys-parmys.sh +61 -0
- siliconcompiler/toolscripts/rhel9/install-yosys-slang.sh +3 -1
- siliconcompiler/toolscripts/rhel9/install-yosys.sh +2 -0
- siliconcompiler/toolscripts/ubuntu20/install-bambu.sh +2 -0
- siliconcompiler/toolscripts/ubuntu20/install-bluespec.sh +2 -0
- siliconcompiler/toolscripts/ubuntu20/install-chisel.sh +2 -0
- siliconcompiler/toolscripts/ubuntu20/install-ghdl.sh +2 -0
- siliconcompiler/toolscripts/ubuntu20/install-gtkwave.sh +2 -0
- siliconcompiler/toolscripts/ubuntu20/install-icarus.sh +2 -0
- siliconcompiler/toolscripts/ubuntu20/install-icepack.sh +2 -0
- siliconcompiler/toolscripts/ubuntu20/install-klayout.sh +2 -0
- siliconcompiler/toolscripts/ubuntu20/install-magic.sh +2 -0
- siliconcompiler/toolscripts/ubuntu20/install-netgen.sh +2 -0
- siliconcompiler/toolscripts/ubuntu20/install-nextpnr.sh +1 -3
- siliconcompiler/toolscripts/ubuntu20/install-openroad.sh +2 -0
- siliconcompiler/toolscripts/ubuntu20/install-opensta.sh +72 -0
- siliconcompiler/toolscripts/ubuntu20/install-slang.sh +3 -1
- siliconcompiler/toolscripts/ubuntu20/install-slurm.sh +2 -0
- siliconcompiler/toolscripts/ubuntu20/install-surelog.sh +3 -1
- siliconcompiler/toolscripts/ubuntu20/install-sv2v.sh +1 -1
- siliconcompiler/toolscripts/ubuntu20/install-verible.sh +2 -0
- siliconcompiler/toolscripts/ubuntu20/install-verilator.sh +2 -0
- siliconcompiler/toolscripts/ubuntu20/install-vpr.sh +2 -0
- siliconcompiler/toolscripts/ubuntu20/install-xdm.sh +2 -0
- siliconcompiler/toolscripts/ubuntu20/install-xyce.sh +2 -0
- siliconcompiler/toolscripts/ubuntu20/install-yosys-moosic.sh +2 -0
- siliconcompiler/toolscripts/ubuntu20/install-yosys-parmys.sh +61 -0
- siliconcompiler/toolscripts/ubuntu20/install-yosys.sh +2 -0
- siliconcompiler/toolscripts/ubuntu22/install-bambu.sh +2 -0
- siliconcompiler/toolscripts/ubuntu22/install-bluespec.sh +27 -2
- siliconcompiler/toolscripts/ubuntu22/install-chisel.sh +2 -0
- siliconcompiler/toolscripts/ubuntu22/install-ghdl.sh +4 -2
- siliconcompiler/toolscripts/ubuntu22/install-gtkwave.sh +2 -0
- siliconcompiler/toolscripts/ubuntu22/install-icarus.sh +2 -0
- siliconcompiler/toolscripts/ubuntu22/install-icepack.sh +2 -0
- siliconcompiler/toolscripts/ubuntu22/install-klayout.sh +2 -0
- siliconcompiler/toolscripts/ubuntu22/install-magic.sh +2 -0
- siliconcompiler/toolscripts/ubuntu22/install-netgen.sh +2 -0
- siliconcompiler/toolscripts/ubuntu22/install-nextpnr.sh +1 -2
- siliconcompiler/toolscripts/ubuntu22/install-openroad.sh +2 -0
- siliconcompiler/toolscripts/ubuntu22/install-opensta.sh +72 -0
- siliconcompiler/toolscripts/ubuntu22/install-slang.sh +3 -1
- siliconcompiler/toolscripts/ubuntu22/install-slurm.sh +2 -0
- siliconcompiler/toolscripts/ubuntu22/install-surelog.sh +3 -1
- siliconcompiler/toolscripts/ubuntu22/install-sv2v.sh +1 -1
- siliconcompiler/toolscripts/ubuntu22/install-verible.sh +2 -0
- siliconcompiler/toolscripts/ubuntu22/install-verilator.sh +2 -0
- siliconcompiler/toolscripts/ubuntu22/install-vpr.sh +2 -0
- siliconcompiler/toolscripts/ubuntu22/install-xdm.sh +2 -0
- siliconcompiler/toolscripts/ubuntu22/install-xyce.sh +2 -0
- siliconcompiler/toolscripts/ubuntu22/install-yosys-moosic.sh +2 -0
- siliconcompiler/toolscripts/ubuntu22/install-yosys-parmys.sh +61 -0
- siliconcompiler/toolscripts/ubuntu22/install-yosys-slang.sh +3 -1
- siliconcompiler/toolscripts/ubuntu22/install-yosys.sh +2 -0
- siliconcompiler/toolscripts/ubuntu24/install-bambu.sh +2 -0
- siliconcompiler/toolscripts/ubuntu24/install-bluespec.sh +2 -0
- siliconcompiler/toolscripts/ubuntu24/install-chisel.sh +2 -0
- siliconcompiler/toolscripts/ubuntu24/install-ghdl.sh +4 -2
- siliconcompiler/toolscripts/ubuntu24/install-gtkwave.sh +2 -0
- siliconcompiler/toolscripts/ubuntu24/install-icarus.sh +2 -0
- siliconcompiler/toolscripts/ubuntu24/install-icepack.sh +2 -0
- siliconcompiler/toolscripts/ubuntu24/install-klayout.sh +2 -0
- siliconcompiler/toolscripts/ubuntu24/install-magic.sh +2 -0
- siliconcompiler/toolscripts/ubuntu24/install-netgen.sh +2 -0
- siliconcompiler/toolscripts/ubuntu24/install-nextpnr.sh +1 -3
- siliconcompiler/toolscripts/ubuntu24/install-openroad.sh +2 -0
- siliconcompiler/toolscripts/ubuntu24/install-opensta.sh +72 -0
- siliconcompiler/toolscripts/ubuntu24/install-slang.sh +3 -1
- siliconcompiler/toolscripts/ubuntu24/install-slurm.sh +2 -0
- siliconcompiler/toolscripts/ubuntu24/install-surelog.sh +3 -1
- siliconcompiler/toolscripts/ubuntu24/install-sv2v.sh +1 -1
- siliconcompiler/toolscripts/ubuntu24/install-verible.sh +2 -0
- siliconcompiler/toolscripts/ubuntu24/install-verilator.sh +2 -0
- siliconcompiler/toolscripts/ubuntu24/install-vpr.sh +2 -0
- siliconcompiler/toolscripts/ubuntu24/install-xdm.sh +2 -0
- siliconcompiler/toolscripts/ubuntu24/install-xyce.sh +2 -0
- siliconcompiler/toolscripts/ubuntu24/install-yosys-moosic.sh +2 -0
- siliconcompiler/toolscripts/ubuntu24/install-yosys-parmys.sh +61 -0
- siliconcompiler/toolscripts/ubuntu24/install-yosys-slang.sh +3 -1
- siliconcompiler/toolscripts/ubuntu24/install-yosys.sh +2 -0
- siliconcompiler/utils/__init__.py +4 -1
- siliconcompiler/utils/logging.py +88 -34
- {siliconcompiler-0.32.1.dist-info → siliconcompiler-0.32.3.dist-info}/METADATA +14 -10
- {siliconcompiler-0.32.1.dist-info → siliconcompiler-0.32.3.dist-info}/RECORD +185 -175
- {siliconcompiler-0.32.1.dist-info → siliconcompiler-0.32.3.dist-info}/WHEEL +1 -1
- siliconcompiler/tools/yosys/sc_syn.tcl +0 -87
- siliconcompiler/toolscripts/ubuntu20/install-yosys-slang.sh +0 -22
- /siliconcompiler/report/dashboard/{components → web/components}/flowgraph.py +0 -0
- /siliconcompiler/report/dashboard/{state.py → web/state.py} +0 -0
- /siliconcompiler/report/dashboard/{utils → web/utils}/__init__.py +0 -0
- /siliconcompiler/report/dashboard/{utils → web/utils}/file_utils.py +0 -0
- {siliconcompiler-0.32.1.dist-info → siliconcompiler-0.32.3.dist-info}/entry_points.txt +0 -0
- {siliconcompiler-0.32.1.dist-info → siliconcompiler-0.32.3.dist-info/licenses}/LICENSE +0 -0
- {siliconcompiler-0.32.1.dist-info → siliconcompiler-0.32.3.dist-info}/top_level.txt +0 -0
|
@@ -10,6 +10,8 @@ sudo apt-get install -y build-essential gcc g++ make cmake automake autoconf bis
|
|
|
10
10
|
liblapack-dev liblapack64-dev libfftw3-dev libsuitesparse-dev libopenmpi-dev libboost-all-dev \
|
|
11
11
|
libnetcdf-dev libmatio-dev gfortran libfl-dev libtool python3-venv
|
|
12
12
|
|
|
13
|
+
sudo apt-get install -y wget
|
|
14
|
+
|
|
13
15
|
mkdir -p deps
|
|
14
16
|
cd deps
|
|
15
17
|
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
|
|
3
|
+
set -e
|
|
4
|
+
|
|
5
|
+
# Get directory of script
|
|
6
|
+
src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
|
|
7
|
+
|
|
8
|
+
sudo apt-get install -y git
|
|
9
|
+
|
|
10
|
+
mkdir -p deps
|
|
11
|
+
cd deps
|
|
12
|
+
|
|
13
|
+
git clone $(python3 ${src_path}/_tools.py --tool yosys-parmys --field git-url) yosys-parmys
|
|
14
|
+
cd yosys-parmys
|
|
15
|
+
git checkout $(python3 ${src_path}/_tools.py --tool yosys-parmys --field git-commit)
|
|
16
|
+
git submodule update --init --recursive
|
|
17
|
+
|
|
18
|
+
# apply patch
|
|
19
|
+
cat > build_patch <<EOF
|
|
20
|
+
diff --git a/parmys/parmys-plugin/Makefile b/parmys/parmys-plugin/Makefile
|
|
21
|
+
index dbb3eb11e..cb85631bc 100644
|
|
22
|
+
--- a/parmys/parmys-plugin/Makefile
|
|
23
|
+
+++ b/parmys/parmys-plugin/Makefile
|
|
24
|
+
@@ -49,7 +49,7 @@ VTR_INSTALL_DIR ?= /usr/local
|
|
25
|
+
|
|
26
|
+
include ../Makefile_plugin.common
|
|
27
|
+
|
|
28
|
+
-CXXFLAGS += -std=c++14 -Wall -W -Wextra \\
|
|
29
|
+
+CXXFLAGS += -std=c++17 -Wall -W -Wextra \\
|
|
30
|
+
-Wno-deprecated-declarations \\
|
|
31
|
+
-Wno-unused-parameter \\
|
|
32
|
+
-I. \\
|
|
33
|
+
diff --git a/parmys/parmys-plugin/parmys_update.cc b/parmys/parmys-plugin/parmys_update.cc
|
|
34
|
+
index ef55213c5..4e4d6dd15 100644
|
|
35
|
+
--- a/parmys/parmys-plugin/parmys_update.cc
|
|
36
|
+
+++ b/parmys/parmys-plugin/parmys_update.cc
|
|
37
|
+
@@ -506,9 +506,9 @@ void define_logical_function_yosys(nnode_t *node, Module *module)
|
|
38
|
+
lutptr = &cell->parameters.at(ID::LUT);
|
|
39
|
+
for (int i = 0; i < (1 << node->num_input_pins); i++) {
|
|
40
|
+
if (i == 3 || i == 5 || i == 6 || i == 7) //"011 1\n101 1\n110 1\n111 1\n"
|
|
41
|
+
- lutptr->bits.at(i) = RTLIL::State::S1;
|
|
42
|
+
+ lutptr->bits().at(i) = RTLIL::State::S1;
|
|
43
|
+
else
|
|
44
|
+
- lutptr->bits.at(i) = RTLIL::State::S0;
|
|
45
|
+
+ lutptr->bits().at(i) = RTLIL::State::S0;
|
|
46
|
+
}
|
|
47
|
+
} else {
|
|
48
|
+
cell->parameters[ID::A_WIDTH] = RTLIL::Const(int(node->num_input_pins));
|
|
49
|
+
EOF
|
|
50
|
+
|
|
51
|
+
git apply build_patch
|
|
52
|
+
|
|
53
|
+
export VTR_INSTALL_DIR=$(dirname $(which vpr))/..
|
|
54
|
+
YOSYS_PLUGIN=$(yosys-config --datdir)/plugins/
|
|
55
|
+
|
|
56
|
+
cd parmys
|
|
57
|
+
|
|
58
|
+
make -j$(nproc)
|
|
59
|
+
sudo mkdir -p $YOSYS_PLUGIN
|
|
60
|
+
sudo cp parmys-plugin/build/parmys.so $YOSYS_PLUGIN
|
|
61
|
+
cd -
|
|
@@ -5,12 +5,14 @@ set -e
|
|
|
5
5
|
# Get directory of script
|
|
6
6
|
src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
|
|
7
7
|
|
|
8
|
+
sudo apt-get install -y git
|
|
9
|
+
|
|
8
10
|
mkdir -p deps
|
|
9
11
|
cd deps
|
|
10
12
|
|
|
11
13
|
python3 -m venv .yosys-slang --clear
|
|
12
14
|
. .yosys-slang/bin/activate
|
|
13
|
-
python3 -m pip install cmake
|
|
15
|
+
python3 -m pip install cmake==3.31.6
|
|
14
16
|
|
|
15
17
|
git clone $(python3 ${src_path}/_tools.py --tool yosys-slang --field git-url) yosys-slang
|
|
16
18
|
cd yosys-slang
|
|
@@ -5,7 +5,9 @@ set -e
|
|
|
5
5
|
# Get directory of script
|
|
6
6
|
src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
|
|
7
7
|
|
|
8
|
-
sudo apt-get install -y gnat libgnat-9 libz-dev
|
|
8
|
+
sudo apt-get install -y llvm-dev clang gnat libgnat-9 libz-dev
|
|
9
|
+
|
|
10
|
+
sudo apt-get install -y git build-essential
|
|
9
11
|
|
|
10
12
|
mkdir -p deps
|
|
11
13
|
cd deps
|
|
@@ -19,7 +21,7 @@ if [ ! -z ${PREFIX} ]; then
|
|
|
19
21
|
args=--prefix="$PREFIX"
|
|
20
22
|
fi
|
|
21
23
|
|
|
22
|
-
./configure $args
|
|
24
|
+
./configure --with-llvm-config $args
|
|
23
25
|
make -j$(nproc)
|
|
24
26
|
sudo make install
|
|
25
27
|
cd -
|
|
@@ -7,9 +7,7 @@ sudo apt-get install -y build-essential clang bison flex libreadline-dev \
|
|
|
7
7
|
xdot pkg-config python3 libftdi-dev \
|
|
8
8
|
qtbase5-dev python3-dev libboost-all-dev cmake libeigen3-dev
|
|
9
9
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
set -e
|
|
10
|
+
sudo apt-get install -y git
|
|
13
11
|
|
|
14
12
|
# Get directory of script
|
|
15
13
|
src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
#!/bin/sh
|
|
2
|
+
|
|
3
|
+
set -e
|
|
4
|
+
|
|
5
|
+
src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
|
|
6
|
+
|
|
7
|
+
sudo apt-get install -y git build-essential wget
|
|
8
|
+
sudo apt-get install -y tcl-dev tcl-tclreadline \
|
|
9
|
+
bison flex libfl-dev zlib1g-dev automake autotools-dev
|
|
10
|
+
|
|
11
|
+
mkdir -p deps
|
|
12
|
+
cd deps
|
|
13
|
+
|
|
14
|
+
python3 -m venv .opensta --clear
|
|
15
|
+
. .opensta/bin/activate
|
|
16
|
+
python3 -m pip install cmake==3.31.6
|
|
17
|
+
|
|
18
|
+
if [ ! -z ${PREFIX} ]; then
|
|
19
|
+
cmake_args="-DCMAKE_INSTALL_PREFIX=$PREFIX"
|
|
20
|
+
config_prefix="--prefix=$PREFIX"
|
|
21
|
+
fi
|
|
22
|
+
|
|
23
|
+
# eigen
|
|
24
|
+
mkdir -p eigen3
|
|
25
|
+
cd eigen3
|
|
26
|
+
git clone --depth=1 -b 3.4 https://gitlab.com/libeigen/eigen.git
|
|
27
|
+
cd eigen
|
|
28
|
+
mkdir build
|
|
29
|
+
cd build
|
|
30
|
+
cmake $cmake_args ..
|
|
31
|
+
make -j$(nproc)
|
|
32
|
+
sudo make install
|
|
33
|
+
|
|
34
|
+
cd ../../..
|
|
35
|
+
# cudd
|
|
36
|
+
mkdir -p cudd
|
|
37
|
+
cd cudd
|
|
38
|
+
git clone --depth=1 -b 3.0.0 https://github.com/The-OpenROAD-Project/cudd.git
|
|
39
|
+
cd cudd
|
|
40
|
+
autoreconf
|
|
41
|
+
./configure $config_prefix
|
|
42
|
+
make -j$(nproc)
|
|
43
|
+
sudo make install
|
|
44
|
+
|
|
45
|
+
cd ../..
|
|
46
|
+
#swig
|
|
47
|
+
wget -O swig.tar.gz https://github.com/swig/swig/archive/v4.1.0.tar.gz
|
|
48
|
+
tar xfz swig.tar.gz
|
|
49
|
+
cd swig-4.1.0
|
|
50
|
+
|
|
51
|
+
wget https://github.com/PCRE2Project/pcre2/releases/download/pcre2-10.42/pcre2-10.42.tar.gz
|
|
52
|
+
./Tools/pcre-build.sh
|
|
53
|
+
|
|
54
|
+
./autogen.sh
|
|
55
|
+
./configure $config_prefix
|
|
56
|
+
make -j$(nproc)
|
|
57
|
+
sudo make -j$(nproc) install
|
|
58
|
+
|
|
59
|
+
cd ../..
|
|
60
|
+
# opensta
|
|
61
|
+
git clone $(python3 ${src_path}/_tools.py --tool opensta --field git-url) opensta
|
|
62
|
+
cd opensta
|
|
63
|
+
git checkout $(python3 ${src_path}/_tools.py --tool opensta --field git-commit)
|
|
64
|
+
git submodule update --init --recursive
|
|
65
|
+
|
|
66
|
+
mkdir -p build
|
|
67
|
+
cd build
|
|
68
|
+
cmake .. $cmake_args
|
|
69
|
+
make -j$(nproc)
|
|
70
|
+
sudo make install
|
|
71
|
+
|
|
72
|
+
cd -
|
|
@@ -5,12 +5,14 @@ set -e
|
|
|
5
5
|
# Get directory of script
|
|
6
6
|
src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
|
|
7
7
|
|
|
8
|
+
sudo apt-get install -y git build-essential
|
|
9
|
+
|
|
8
10
|
mkdir -p deps
|
|
9
11
|
cd deps
|
|
10
12
|
|
|
11
13
|
python3 -m venv .slang --clear
|
|
12
14
|
. .slang/bin/activate
|
|
13
|
-
python3 -m pip install cmake
|
|
15
|
+
python3 -m pip install cmake==3.31.6
|
|
14
16
|
|
|
15
17
|
git clone $(python3 ${src_path}/_tools.py --tool slang --field git-url) slang
|
|
16
18
|
cd slang
|
|
@@ -11,13 +11,15 @@ sudo apt-get install -y build-essential cmake git pkg-config \
|
|
|
11
11
|
python3-orderedmultidict python3-psutil python3-dev \
|
|
12
12
|
default-jre lcov zlib1g-dev
|
|
13
13
|
|
|
14
|
+
sudo apt-get install -y git
|
|
15
|
+
|
|
14
16
|
mkdir -p deps
|
|
15
17
|
cd deps
|
|
16
18
|
|
|
17
19
|
python3 -m venv .surelog --clear
|
|
18
20
|
. .surelog/bin/activate
|
|
19
21
|
python3 -m pip install --upgrade pip
|
|
20
|
-
python3 -m pip install cmake
|
|
22
|
+
python3 -m pip install cmake==3.31.6
|
|
21
23
|
python3 -m pip install orderedmultidict
|
|
22
24
|
|
|
23
25
|
git clone $(python3 ${src_path}/_tools.py --tool surelog --field git-url) surelog
|
|
@@ -10,6 +10,8 @@ sudo apt-get install -y build-essential gcc g++ make cmake automake autoconf bis
|
|
|
10
10
|
liblapack-dev liblapack64-dev libfftw3-dev libsuitesparse-dev libopenmpi-dev libboost-all-dev \
|
|
11
11
|
libnetcdf-dev libmatio-dev gfortran libfl-dev libtool python3-venv
|
|
12
12
|
|
|
13
|
+
sudo apt-get install -y wget
|
|
14
|
+
|
|
13
15
|
mkdir -p deps
|
|
14
16
|
cd deps
|
|
15
17
|
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
|
|
3
|
+
set -e
|
|
4
|
+
|
|
5
|
+
# Get directory of script
|
|
6
|
+
src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
|
|
7
|
+
|
|
8
|
+
sudo apt-get install -y git
|
|
9
|
+
|
|
10
|
+
mkdir -p deps
|
|
11
|
+
cd deps
|
|
12
|
+
|
|
13
|
+
git clone $(python3 ${src_path}/_tools.py --tool yosys-parmys --field git-url) yosys-parmys
|
|
14
|
+
cd yosys-parmys
|
|
15
|
+
git checkout $(python3 ${src_path}/_tools.py --tool yosys-parmys --field git-commit)
|
|
16
|
+
git submodule update --init --recursive
|
|
17
|
+
|
|
18
|
+
# apply patch
|
|
19
|
+
cat > build_patch <<EOF
|
|
20
|
+
diff --git a/parmys/parmys-plugin/Makefile b/parmys/parmys-plugin/Makefile
|
|
21
|
+
index dbb3eb11e..cb85631bc 100644
|
|
22
|
+
--- a/parmys/parmys-plugin/Makefile
|
|
23
|
+
+++ b/parmys/parmys-plugin/Makefile
|
|
24
|
+
@@ -49,7 +49,7 @@ VTR_INSTALL_DIR ?= /usr/local
|
|
25
|
+
|
|
26
|
+
include ../Makefile_plugin.common
|
|
27
|
+
|
|
28
|
+
-CXXFLAGS += -std=c++14 -Wall -W -Wextra \\
|
|
29
|
+
+CXXFLAGS += -std=c++17 -Wall -W -Wextra \\
|
|
30
|
+
-Wno-deprecated-declarations \\
|
|
31
|
+
-Wno-unused-parameter \\
|
|
32
|
+
-I. \\
|
|
33
|
+
diff --git a/parmys/parmys-plugin/parmys_update.cc b/parmys/parmys-plugin/parmys_update.cc
|
|
34
|
+
index ef55213c5..4e4d6dd15 100644
|
|
35
|
+
--- a/parmys/parmys-plugin/parmys_update.cc
|
|
36
|
+
+++ b/parmys/parmys-plugin/parmys_update.cc
|
|
37
|
+
@@ -506,9 +506,9 @@ void define_logical_function_yosys(nnode_t *node, Module *module)
|
|
38
|
+
lutptr = &cell->parameters.at(ID::LUT);
|
|
39
|
+
for (int i = 0; i < (1 << node->num_input_pins); i++) {
|
|
40
|
+
if (i == 3 || i == 5 || i == 6 || i == 7) //"011 1\n101 1\n110 1\n111 1\n"
|
|
41
|
+
- lutptr->bits.at(i) = RTLIL::State::S1;
|
|
42
|
+
+ lutptr->bits().at(i) = RTLIL::State::S1;
|
|
43
|
+
else
|
|
44
|
+
- lutptr->bits.at(i) = RTLIL::State::S0;
|
|
45
|
+
+ lutptr->bits().at(i) = RTLIL::State::S0;
|
|
46
|
+
}
|
|
47
|
+
} else {
|
|
48
|
+
cell->parameters[ID::A_WIDTH] = RTLIL::Const(int(node->num_input_pins));
|
|
49
|
+
EOF
|
|
50
|
+
|
|
51
|
+
git apply build_patch
|
|
52
|
+
|
|
53
|
+
export VTR_INSTALL_DIR=$(dirname $(which vpr))/..
|
|
54
|
+
YOSYS_PLUGIN=$(yosys-config --datdir)/plugins/
|
|
55
|
+
|
|
56
|
+
cd parmys
|
|
57
|
+
|
|
58
|
+
make -j$(nproc)
|
|
59
|
+
sudo mkdir -p $YOSYS_PLUGIN
|
|
60
|
+
sudo cp parmys-plugin/build/parmys.so $YOSYS_PLUGIN
|
|
61
|
+
cd -
|
|
@@ -5,12 +5,14 @@ set -e
|
|
|
5
5
|
# Get directory of script
|
|
6
6
|
src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
|
|
7
7
|
|
|
8
|
+
sudo apt-get install -y git
|
|
9
|
+
|
|
8
10
|
mkdir -p deps
|
|
9
11
|
cd deps
|
|
10
12
|
|
|
11
13
|
python3 -m venv .yosys-slang --clear
|
|
12
14
|
. .yosys-slang/bin/activate
|
|
13
|
-
python3 -m pip install cmake
|
|
15
|
+
python3 -m pip install cmake==3.31.6
|
|
14
16
|
|
|
15
17
|
git clone $(python3 ${src_path}/_tools.py --tool yosys-slang --field git-url) yosys-slang
|
|
16
18
|
cd yosys-slang
|
|
@@ -236,7 +236,10 @@ def get_file_template(path,
|
|
|
236
236
|
root = os.path.dirname(path)
|
|
237
237
|
path = os.path.basename(path)
|
|
238
238
|
|
|
239
|
-
|
|
239
|
+
import siliconcompiler
|
|
240
|
+
scroot = os.path.dirname(siliconcompiler.__file__)
|
|
241
|
+
|
|
242
|
+
env = Environment(loader=FileSystemLoader([root, scroot]))
|
|
240
243
|
return env.get_template(path)
|
|
241
244
|
|
|
242
245
|
|