siliconcompiler 0.34.0__py3-none-any.whl → 0.34.2__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/__init__.py +14 -2
- siliconcompiler/_metadata.py +1 -1
- siliconcompiler/apps/_common.py +1 -1
- siliconcompiler/apps/sc.py +1 -1
- siliconcompiler/apps/sc_issue.py +1 -1
- siliconcompiler/apps/sc_remote.py +3 -3
- siliconcompiler/apps/sc_show.py +3 -3
- siliconcompiler/apps/utils/replay.py +4 -4
- siliconcompiler/checklist.py +203 -2
- siliconcompiler/constraints/__init__.py +17 -0
- siliconcompiler/constraints/asic_component.py +378 -0
- siliconcompiler/constraints/asic_floorplan.py +449 -0
- siliconcompiler/constraints/asic_pins.py +489 -0
- siliconcompiler/constraints/asic_timing.py +517 -0
- siliconcompiler/core.py +31 -249
- siliconcompiler/data/templates/email/general.j2 +3 -3
- siliconcompiler/data/templates/email/summary.j2 +1 -1
- siliconcompiler/data/templates/issue/README.txt +1 -1
- siliconcompiler/data/templates/report/sc_report.j2 +7 -7
- siliconcompiler/dependencyschema.py +10 -174
- siliconcompiler/design.py +325 -114
- siliconcompiler/flowgraph.py +63 -15
- siliconcompiler/library.py +133 -0
- siliconcompiler/metric.py +94 -72
- siliconcompiler/metrics/__init__.py +7 -0
- siliconcompiler/metrics/asic.py +245 -0
- siliconcompiler/metrics/fpga.py +220 -0
- siliconcompiler/optimizer/vizier.py +2 -2
- siliconcompiler/package/__init__.py +138 -35
- siliconcompiler/package/github.py +6 -10
- siliconcompiler/packageschema.py +256 -12
- siliconcompiler/pathschema.py +226 -0
- siliconcompiler/pdk.py +5 -5
- siliconcompiler/project.py +459 -0
- siliconcompiler/remote/client.py +18 -12
- siliconcompiler/remote/server.py +2 -2
- siliconcompiler/report/dashboard/cli/__init__.py +6 -6
- siliconcompiler/report/dashboard/cli/board.py +3 -3
- siliconcompiler/report/dashboard/web/components/__init__.py +5 -5
- siliconcompiler/report/dashboard/web/components/flowgraph.py +4 -4
- siliconcompiler/report/dashboard/web/components/graph.py +2 -2
- siliconcompiler/report/dashboard/web/state.py +1 -1
- siliconcompiler/report/dashboard/web/utils/__init__.py +5 -5
- siliconcompiler/report/html_report.py +1 -1
- siliconcompiler/report/report.py +4 -4
- siliconcompiler/report/summary_table.py +2 -2
- siliconcompiler/report/utils.py +5 -5
- siliconcompiler/scheduler/docker.py +4 -10
- siliconcompiler/scheduler/run_node.py +4 -8
- siliconcompiler/scheduler/scheduler.py +18 -24
- siliconcompiler/scheduler/schedulernode.py +161 -143
- siliconcompiler/scheduler/send_messages.py +3 -3
- siliconcompiler/scheduler/slurm.py +5 -3
- siliconcompiler/scheduler/taskscheduler.py +10 -8
- siliconcompiler/schema/__init__.py +0 -2
- siliconcompiler/schema/baseschema.py +148 -26
- siliconcompiler/schema/editableschema.py +14 -6
- siliconcompiler/schema/journal.py +23 -15
- siliconcompiler/schema/namedschema.py +30 -4
- siliconcompiler/schema/parameter.py +34 -19
- siliconcompiler/schema/parametertype.py +2 -0
- siliconcompiler/schema/parametervalue.py +198 -15
- siliconcompiler/schema/schema_cfg.py +18 -14
- siliconcompiler/schema_obj.py +5 -3
- siliconcompiler/tool.py +591 -179
- siliconcompiler/tools/__init__.py +2 -0
- siliconcompiler/tools/builtin/_common.py +5 -5
- siliconcompiler/tools/builtin/concatenate.py +5 -5
- siliconcompiler/tools/builtin/minimum.py +4 -4
- siliconcompiler/tools/builtin/mux.py +4 -4
- siliconcompiler/tools/builtin/nop.py +4 -4
- siliconcompiler/tools/builtin/verify.py +7 -7
- siliconcompiler/tools/execute/exec_input.py +1 -1
- siliconcompiler/tools/genfasm/genfasm.py +1 -6
- siliconcompiler/tools/openroad/_apr.py +5 -1
- siliconcompiler/tools/openroad/antenna_repair.py +1 -1
- siliconcompiler/tools/openroad/macro_placement.py +1 -1
- siliconcompiler/tools/openroad/power_grid.py +1 -1
- siliconcompiler/tools/openroad/scripts/common/procs.tcl +5 -0
- siliconcompiler/tools/opensta/timing.py +26 -3
- siliconcompiler/tools/slang/__init__.py +2 -2
- siliconcompiler/tools/surfer/__init__.py +0 -0
- siliconcompiler/tools/surfer/show.py +53 -0
- siliconcompiler/tools/surfer/surfer.py +30 -0
- siliconcompiler/tools/vpr/route.py +27 -14
- siliconcompiler/tools/vpr/vpr.py +23 -6
- siliconcompiler/tools/yosys/__init__.py +1 -1
- siliconcompiler/tools/yosys/scripts/procs.tcl +143 -0
- siliconcompiler/tools/yosys/{sc_synth_asic.tcl → scripts/sc_synth_asic.tcl} +4 -0
- siliconcompiler/tools/yosys/{sc_synth_fpga.tcl → scripts/sc_synth_fpga.tcl} +24 -77
- siliconcompiler/tools/yosys/syn_fpga.py +14 -0
- siliconcompiler/toolscripts/_tools.json +9 -13
- siliconcompiler/toolscripts/rhel9/install-vpr.sh +0 -2
- siliconcompiler/toolscripts/ubuntu22/install-surfer.sh +33 -0
- siliconcompiler/toolscripts/ubuntu24/install-surfer.sh +33 -0
- siliconcompiler/utils/__init__.py +2 -1
- siliconcompiler/utils/flowgraph.py +24 -23
- siliconcompiler/utils/issue.py +23 -29
- siliconcompiler/utils/logging.py +35 -6
- siliconcompiler/utils/showtools.py +6 -1
- {siliconcompiler-0.34.0.dist-info → siliconcompiler-0.34.2.dist-info}/METADATA +15 -25
- {siliconcompiler-0.34.0.dist-info → siliconcompiler-0.34.2.dist-info}/RECORD +109 -97
- siliconcompiler/schema/packageschema.py +0 -101
- siliconcompiler/tools/yosys/procs.tcl +0 -71
- siliconcompiler/toolscripts/rhel9/install-yosys-parmys.sh +0 -68
- siliconcompiler/toolscripts/ubuntu22/install-yosys-parmys.sh +0 -68
- siliconcompiler/toolscripts/ubuntu24/install-yosys-parmys.sh +0 -68
- /siliconcompiler/tools/yosys/{sc_lec.tcl → scripts/sc_lec.tcl} +0 -0
- /siliconcompiler/tools/yosys/{sc_screenshot.tcl → scripts/sc_screenshot.tcl} +0 -0
- /siliconcompiler/tools/yosys/{syn_strategies.tcl → scripts/syn_strategies.tcl} +0 -0
- {siliconcompiler-0.34.0.dist-info → siliconcompiler-0.34.2.dist-info}/WHEEL +0 -0
- {siliconcompiler-0.34.0.dist-info → siliconcompiler-0.34.2.dist-info}/entry_points.txt +0 -0
- {siliconcompiler-0.34.0.dist-info → siliconcompiler-0.34.2.dist-info}/licenses/LICENSE +0 -0
- {siliconcompiler-0.34.0.dist-info → siliconcompiler-0.34.2.dist-info}/top_level.txt +0 -0
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
#!/bin/bash
|
|
2
|
-
|
|
3
|
-
set -ex
|
|
4
|
-
|
|
5
|
-
# Get directory of script
|
|
6
|
-
src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
|
|
7
|
-
|
|
8
|
-
USE_SUDO_INSTALL="${USE_SUDO_INSTALL:-yes}"
|
|
9
|
-
if [ "${USE_SUDO_INSTALL:-yes}" = "yes" ]; then
|
|
10
|
-
SUDO_INSTALL=sudo
|
|
11
|
-
else
|
|
12
|
-
SUDO_INSTALL=""
|
|
13
|
-
fi
|
|
14
|
-
|
|
15
|
-
sudo yum install -y git
|
|
16
|
-
|
|
17
|
-
mkdir -p deps
|
|
18
|
-
cd deps
|
|
19
|
-
|
|
20
|
-
git clone $(python3 ${src_path}/_tools.py --tool yosys-parmys --field git-url) yosys-parmys
|
|
21
|
-
cd yosys-parmys
|
|
22
|
-
git checkout $(python3 ${src_path}/_tools.py --tool yosys-parmys --field git-commit)
|
|
23
|
-
git submodule update --init --recursive
|
|
24
|
-
|
|
25
|
-
# apply patch
|
|
26
|
-
cat > build_patch <<EOF
|
|
27
|
-
diff --git a/parmys/parmys-plugin/Makefile b/parmys/parmys-plugin/Makefile
|
|
28
|
-
index dbb3eb11e..cb85631bc 100644
|
|
29
|
-
--- a/parmys/parmys-plugin/Makefile
|
|
30
|
-
+++ b/parmys/parmys-plugin/Makefile
|
|
31
|
-
@@ -49,7 +49,7 @@ VTR_INSTALL_DIR ?= /usr/local
|
|
32
|
-
|
|
33
|
-
include ../Makefile_plugin.common
|
|
34
|
-
|
|
35
|
-
-CXXFLAGS += -std=c++14 -Wall -W -Wextra \\
|
|
36
|
-
+CXXFLAGS += -std=c++17 -Wall -W -Wextra \\
|
|
37
|
-
-Wno-deprecated-declarations \\
|
|
38
|
-
-Wno-unused-parameter \\
|
|
39
|
-
-I. \\
|
|
40
|
-
diff --git a/parmys/parmys-plugin/parmys_update.cc b/parmys/parmys-plugin/parmys_update.cc
|
|
41
|
-
index ef55213c5..4e4d6dd15 100644
|
|
42
|
-
--- a/parmys/parmys-plugin/parmys_update.cc
|
|
43
|
-
+++ b/parmys/parmys-plugin/parmys_update.cc
|
|
44
|
-
@@ -506,9 +506,9 @@ void define_logical_function_yosys(nnode_t *node, Module *module)
|
|
45
|
-
lutptr = &cell->parameters.at(ID::LUT);
|
|
46
|
-
for (int i = 0; i < (1 << node->num_input_pins); i++) {
|
|
47
|
-
if (i == 3 || i == 5 || i == 6 || i == 7) //"011 1\n101 1\n110 1\n111 1\n"
|
|
48
|
-
- lutptr->bits.at(i) = RTLIL::State::S1;
|
|
49
|
-
+ lutptr->bits().at(i) = RTLIL::State::S1;
|
|
50
|
-
else
|
|
51
|
-
- lutptr->bits.at(i) = RTLIL::State::S0;
|
|
52
|
-
+ lutptr->bits().at(i) = RTLIL::State::S0;
|
|
53
|
-
}
|
|
54
|
-
} else {
|
|
55
|
-
cell->parameters[ID::A_WIDTH] = RTLIL::Const(int(node->num_input_pins));
|
|
56
|
-
EOF
|
|
57
|
-
|
|
58
|
-
git apply build_patch
|
|
59
|
-
|
|
60
|
-
export VTR_INSTALL_DIR=$(dirname $(which vpr))/..
|
|
61
|
-
YOSYS_PLUGIN=$(yosys-config --datdir)/plugins/
|
|
62
|
-
|
|
63
|
-
cd parmys
|
|
64
|
-
|
|
65
|
-
make -j$(nproc)
|
|
66
|
-
$SUDO_INSTALL mkdir -p $YOSYS_PLUGIN
|
|
67
|
-
$SUDO_INSTALL cp parmys-plugin/build/parmys.so $YOSYS_PLUGIN
|
|
68
|
-
cd -
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
#!/bin/bash
|
|
2
|
-
|
|
3
|
-
set -ex
|
|
4
|
-
|
|
5
|
-
# Get directory of script
|
|
6
|
-
src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
|
|
7
|
-
|
|
8
|
-
USE_SUDO_INSTALL="${USE_SUDO_INSTALL:-yes}"
|
|
9
|
-
if [ "${USE_SUDO_INSTALL:-yes}" = "yes" ]; then
|
|
10
|
-
SUDO_INSTALL=sudo
|
|
11
|
-
else
|
|
12
|
-
SUDO_INSTALL=""
|
|
13
|
-
fi
|
|
14
|
-
|
|
15
|
-
sudo apt-get install -y git
|
|
16
|
-
|
|
17
|
-
mkdir -p deps
|
|
18
|
-
cd deps
|
|
19
|
-
|
|
20
|
-
git clone $(python3 ${src_path}/_tools.py --tool yosys-parmys --field git-url) yosys-parmys
|
|
21
|
-
cd yosys-parmys
|
|
22
|
-
git checkout $(python3 ${src_path}/_tools.py --tool yosys-parmys --field git-commit)
|
|
23
|
-
git submodule update --init --recursive
|
|
24
|
-
|
|
25
|
-
# apply patch
|
|
26
|
-
cat > build_patch <<EOF
|
|
27
|
-
diff --git a/parmys/parmys-plugin/Makefile b/parmys/parmys-plugin/Makefile
|
|
28
|
-
index dbb3eb11e..cb85631bc 100644
|
|
29
|
-
--- a/parmys/parmys-plugin/Makefile
|
|
30
|
-
+++ b/parmys/parmys-plugin/Makefile
|
|
31
|
-
@@ -49,7 +49,7 @@ VTR_INSTALL_DIR ?= /usr/local
|
|
32
|
-
|
|
33
|
-
include ../Makefile_plugin.common
|
|
34
|
-
|
|
35
|
-
-CXXFLAGS += -std=c++14 -Wall -W -Wextra \\
|
|
36
|
-
+CXXFLAGS += -std=c++17 -Wall -W -Wextra \\
|
|
37
|
-
-Wno-deprecated-declarations \\
|
|
38
|
-
-Wno-unused-parameter \\
|
|
39
|
-
-I. \\
|
|
40
|
-
diff --git a/parmys/parmys-plugin/parmys_update.cc b/parmys/parmys-plugin/parmys_update.cc
|
|
41
|
-
index ef55213c5..4e4d6dd15 100644
|
|
42
|
-
--- a/parmys/parmys-plugin/parmys_update.cc
|
|
43
|
-
+++ b/parmys/parmys-plugin/parmys_update.cc
|
|
44
|
-
@@ -506,9 +506,9 @@ void define_logical_function_yosys(nnode_t *node, Module *module)
|
|
45
|
-
lutptr = &cell->parameters.at(ID::LUT);
|
|
46
|
-
for (int i = 0; i < (1 << node->num_input_pins); i++) {
|
|
47
|
-
if (i == 3 || i == 5 || i == 6 || i == 7) //"011 1\n101 1\n110 1\n111 1\n"
|
|
48
|
-
- lutptr->bits.at(i) = RTLIL::State::S1;
|
|
49
|
-
+ lutptr->bits().at(i) = RTLIL::State::S1;
|
|
50
|
-
else
|
|
51
|
-
- lutptr->bits.at(i) = RTLIL::State::S0;
|
|
52
|
-
+ lutptr->bits().at(i) = RTLIL::State::S0;
|
|
53
|
-
}
|
|
54
|
-
} else {
|
|
55
|
-
cell->parameters[ID::A_WIDTH] = RTLIL::Const(int(node->num_input_pins));
|
|
56
|
-
EOF
|
|
57
|
-
|
|
58
|
-
git apply build_patch
|
|
59
|
-
|
|
60
|
-
export VTR_INSTALL_DIR=$(dirname $(which vpr))/..
|
|
61
|
-
YOSYS_PLUGIN=$(yosys-config --datdir)/plugins/
|
|
62
|
-
|
|
63
|
-
cd parmys
|
|
64
|
-
|
|
65
|
-
make -j$(nproc)
|
|
66
|
-
$SUDO_INSTALL mkdir -p $YOSYS_PLUGIN
|
|
67
|
-
$SUDO_INSTALL cp parmys-plugin/build/parmys.so $YOSYS_PLUGIN
|
|
68
|
-
cd -
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
#!/bin/bash
|
|
2
|
-
|
|
3
|
-
set -ex
|
|
4
|
-
|
|
5
|
-
# Get directory of script
|
|
6
|
-
src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
|
|
7
|
-
|
|
8
|
-
USE_SUDO_INSTALL="${USE_SUDO_INSTALL:-yes}"
|
|
9
|
-
if [ "${USE_SUDO_INSTALL:-yes}" = "yes" ]; then
|
|
10
|
-
SUDO_INSTALL=sudo
|
|
11
|
-
else
|
|
12
|
-
SUDO_INSTALL=""
|
|
13
|
-
fi
|
|
14
|
-
|
|
15
|
-
sudo apt-get install -y git
|
|
16
|
-
|
|
17
|
-
mkdir -p deps
|
|
18
|
-
cd deps
|
|
19
|
-
|
|
20
|
-
git clone $(python3 ${src_path}/_tools.py --tool yosys-parmys --field git-url) yosys-parmys
|
|
21
|
-
cd yosys-parmys
|
|
22
|
-
git checkout $(python3 ${src_path}/_tools.py --tool yosys-parmys --field git-commit)
|
|
23
|
-
git submodule update --init --recursive
|
|
24
|
-
|
|
25
|
-
# apply patch
|
|
26
|
-
cat > build_patch <<EOF
|
|
27
|
-
diff --git a/parmys/parmys-plugin/Makefile b/parmys/parmys-plugin/Makefile
|
|
28
|
-
index dbb3eb11e..cb85631bc 100644
|
|
29
|
-
--- a/parmys/parmys-plugin/Makefile
|
|
30
|
-
+++ b/parmys/parmys-plugin/Makefile
|
|
31
|
-
@@ -49,7 +49,7 @@ VTR_INSTALL_DIR ?= /usr/local
|
|
32
|
-
|
|
33
|
-
include ../Makefile_plugin.common
|
|
34
|
-
|
|
35
|
-
-CXXFLAGS += -std=c++14 -Wall -W -Wextra \\
|
|
36
|
-
+CXXFLAGS += -std=c++17 -Wall -W -Wextra \\
|
|
37
|
-
-Wno-deprecated-declarations \\
|
|
38
|
-
-Wno-unused-parameter \\
|
|
39
|
-
-I. \\
|
|
40
|
-
diff --git a/parmys/parmys-plugin/parmys_update.cc b/parmys/parmys-plugin/parmys_update.cc
|
|
41
|
-
index ef55213c5..4e4d6dd15 100644
|
|
42
|
-
--- a/parmys/parmys-plugin/parmys_update.cc
|
|
43
|
-
+++ b/parmys/parmys-plugin/parmys_update.cc
|
|
44
|
-
@@ -506,9 +506,9 @@ void define_logical_function_yosys(nnode_t *node, Module *module)
|
|
45
|
-
lutptr = &cell->parameters.at(ID::LUT);
|
|
46
|
-
for (int i = 0; i < (1 << node->num_input_pins); i++) {
|
|
47
|
-
if (i == 3 || i == 5 || i == 6 || i == 7) //"011 1\n101 1\n110 1\n111 1\n"
|
|
48
|
-
- lutptr->bits.at(i) = RTLIL::State::S1;
|
|
49
|
-
+ lutptr->bits().at(i) = RTLIL::State::S1;
|
|
50
|
-
else
|
|
51
|
-
- lutptr->bits.at(i) = RTLIL::State::S0;
|
|
52
|
-
+ lutptr->bits().at(i) = RTLIL::State::S0;
|
|
53
|
-
}
|
|
54
|
-
} else {
|
|
55
|
-
cell->parameters[ID::A_WIDTH] = RTLIL::Const(int(node->num_input_pins));
|
|
56
|
-
EOF
|
|
57
|
-
|
|
58
|
-
git apply build_patch
|
|
59
|
-
|
|
60
|
-
export VTR_INSTALL_DIR=$(dirname $(which vpr))/..
|
|
61
|
-
YOSYS_PLUGIN=$(yosys-config --datdir)/plugins/
|
|
62
|
-
|
|
63
|
-
cd parmys
|
|
64
|
-
|
|
65
|
-
make -j$(nproc)
|
|
66
|
-
$SUDO_INSTALL mkdir -p $YOSYS_PLUGIN
|
|
67
|
-
$SUDO_INSTALL cp parmys-plugin/build/parmys.so $YOSYS_PLUGIN
|
|
68
|
-
cd -
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|