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
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
from siliconcompiler.tools.yosys import
|
|
1
|
+
from siliconcompiler.tools.yosys import synth_post_process, setup as tool_setup
|
|
2
2
|
import json
|
|
3
3
|
from siliconcompiler import sc_open
|
|
4
4
|
from siliconcompiler.tools._common import get_tool_task, record_metric
|
|
@@ -18,23 +18,32 @@ def setup(chip):
|
|
|
18
18
|
Perform FPGA synthesis
|
|
19
19
|
'''
|
|
20
20
|
|
|
21
|
-
|
|
22
|
-
syn_setup(chip)
|
|
23
|
-
|
|
24
|
-
# FPGA-specific setup.
|
|
25
|
-
setup_fpga(chip)
|
|
26
|
-
|
|
21
|
+
tool_setup(chip)
|
|
27
22
|
|
|
28
|
-
|
|
29
|
-
''' Helper method for configs specific to FPGA steps (both syn and lec).
|
|
30
|
-
'''
|
|
31
|
-
|
|
32
|
-
tool = 'yosys'
|
|
23
|
+
# Generic synthesis task setup.
|
|
33
24
|
step = chip.get('arg', 'step')
|
|
34
25
|
index = chip.get('arg', 'index')
|
|
35
|
-
|
|
26
|
+
tool, task = get_tool_task(chip, step, index)
|
|
36
27
|
design = chip.top()
|
|
37
28
|
|
|
29
|
+
# Set yosys script path.
|
|
30
|
+
chip.set('tool', tool, 'task', task, 'script', 'sc_synth_fpga.tcl',
|
|
31
|
+
step=step, index=index, clobber=False)
|
|
32
|
+
|
|
33
|
+
# Input/output requirements.
|
|
34
|
+
chip.set('tool', tool, 'task', task, 'input', design + '.v', step=step, index=index)
|
|
35
|
+
chip.set('tool', tool, 'task', task, 'output', design + '.vg', step=step, index=index)
|
|
36
|
+
chip.add('tool', tool, 'task', task, 'output', design + '.netlist.json', step=step, index=index)
|
|
37
|
+
chip.add('tool', tool, 'task', task, 'output', design + '.blif', step=step, index=index)
|
|
38
|
+
|
|
39
|
+
chip.set('tool', tool, 'task', task, 'var', 'use_slang', False,
|
|
40
|
+
step=step, index=index,
|
|
41
|
+
clobber=False)
|
|
42
|
+
chip.set('tool', tool, 'task', task, 'var', 'use_slang',
|
|
43
|
+
'true/false, if true will attempt to use the slang frontend',
|
|
44
|
+
field='help')
|
|
45
|
+
|
|
46
|
+
# Setup FPGA params
|
|
38
47
|
part_name = chip.get('fpga', 'partname')
|
|
39
48
|
|
|
40
49
|
# Require that a lut size is set for FPGA scripts.
|
|
@@ -93,8 +102,6 @@ def setup_fpga(chip):
|
|
|
93
102
|
",".join(['fpga', part_name, 'file', 'yosys_memory_techmap']),
|
|
94
103
|
step=step, index=index)
|
|
95
104
|
|
|
96
|
-
chip.add('tool', tool, 'task', task, 'output', design + '.blif', step=step, index=index)
|
|
97
|
-
|
|
98
105
|
|
|
99
106
|
##################################################
|
|
100
107
|
def post_process(chip):
|
|
@@ -102,7 +109,7 @@ def post_process(chip):
|
|
|
102
109
|
index = chip.get('arg', 'index')
|
|
103
110
|
part_name = chip.get('fpga', 'partname')
|
|
104
111
|
|
|
105
|
-
|
|
112
|
+
synth_post_process(chip)
|
|
106
113
|
|
|
107
114
|
with sc_open("reports/stat.json") as f:
|
|
108
115
|
metrics = json.load(f)
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"openroad": {
|
|
3
3
|
"git-url": "https://github.com/The-OpenROAD-Project/OpenROAD.git",
|
|
4
|
-
"git-commit": "
|
|
4
|
+
"git-commit": "e78e29127134a0b95ebcd5661895c6dc4651e641",
|
|
5
5
|
"docker-cmds": [
|
|
6
6
|
"# Remove OR-Tools files",
|
|
7
7
|
"RUN rm -f $SC_PREFIX/Makefile $SC_PREFIX/README.md",
|
|
@@ -15,6 +15,11 @@
|
|
|
15
15
|
"git-commit": "v1.84",
|
|
16
16
|
"auto-update": true
|
|
17
17
|
},
|
|
18
|
+
"opensta": {
|
|
19
|
+
"git-url": "https://github.com/parallaxsw/OpenSTA.git",
|
|
20
|
+
"git-commit": "109bc9ab5e35b830db9569f741db09e468704e6b",
|
|
21
|
+
"auto-update": true
|
|
22
|
+
},
|
|
18
23
|
"netgen": {
|
|
19
24
|
"git-url": "https://github.com/RTimothyEdwards/netgen.git",
|
|
20
25
|
"git-commit": "fb7876c7a6f9d58a3d88a49e302e682c1d12e00d",
|
|
@@ -22,7 +27,7 @@
|
|
|
22
27
|
},
|
|
23
28
|
"ghdl": {
|
|
24
29
|
"git-url": "https://github.com/ghdl/ghdl.git",
|
|
25
|
-
"git-commit": "
|
|
30
|
+
"git-commit": "v5.0.1",
|
|
26
31
|
"auto-update": false
|
|
27
32
|
},
|
|
28
33
|
"magic": {
|
|
@@ -36,7 +41,7 @@
|
|
|
36
41
|
"auto-update": false
|
|
37
42
|
},
|
|
38
43
|
"klayout": {
|
|
39
|
-
"version": "0.
|
|
44
|
+
"version": "0.30.0",
|
|
40
45
|
"git-url": "https://github.com/KLayout/klayout.git",
|
|
41
46
|
"docker-skip": true,
|
|
42
47
|
"auto-update": true,
|
|
@@ -45,7 +50,7 @@
|
|
|
45
50
|
},
|
|
46
51
|
"sv2v": {
|
|
47
52
|
"git-url": "https://github.com/zachjs/sv2v.git",
|
|
48
|
-
"git-commit": "
|
|
53
|
+
"git-commit": "d30c7e7f4e9018b9d4a565207ff752460c81eeb4",
|
|
49
54
|
"auto-update": true
|
|
50
55
|
},
|
|
51
56
|
"verilator": {
|
|
@@ -66,17 +71,17 @@
|
|
|
66
71
|
},
|
|
67
72
|
"vpr": {
|
|
68
73
|
"git-url": "https://github.com/verilog-to-routing/vtr-verilog-to-routing.git",
|
|
69
|
-
"git-commit": "
|
|
74
|
+
"git-commit": "2a4e92181280a235315621253d1dc9eb8826bc53",
|
|
70
75
|
"auto-update": false
|
|
71
76
|
},
|
|
72
77
|
"icepack": {
|
|
73
78
|
"git-url": "https://github.com/YosysHQ/icestorm.git",
|
|
74
|
-
"git-commit": "
|
|
79
|
+
"git-commit": "7fbf8c0afbcf7665c45499b090409859b1815184",
|
|
75
80
|
"auto-update": false
|
|
76
81
|
},
|
|
77
82
|
"nextpnr": {
|
|
78
83
|
"git-url": "https://github.com/YosysHQ/nextpnr.git",
|
|
79
|
-
"git-commit": "
|
|
84
|
+
"git-commit": "nextpnr-0.7",
|
|
80
85
|
"docker-depends": "icepack"
|
|
81
86
|
},
|
|
82
87
|
"chisel": {
|
|
@@ -91,7 +96,7 @@
|
|
|
91
96
|
},
|
|
92
97
|
"yosys": {
|
|
93
98
|
"git-url": "https://github.com/YosysHQ/yosys.git",
|
|
94
|
-
"git-commit": "v0.
|
|
99
|
+
"git-commit": "v0.52",
|
|
95
100
|
"version-prefix": "",
|
|
96
101
|
"auto-update": true
|
|
97
102
|
},
|
|
@@ -139,7 +144,7 @@
|
|
|
139
144
|
},
|
|
140
145
|
"yosys-slang": {
|
|
141
146
|
"git-url": "https://github.com/povik/yosys-slang.git",
|
|
142
|
-
"git-commit": "
|
|
147
|
+
"git-commit": "a95ef24f0307230ae25ea6f2216d2fe8b8ece0be",
|
|
143
148
|
"docker-depends": "yosys",
|
|
144
149
|
"auto-update": true
|
|
145
150
|
},
|
|
@@ -148,5 +153,14 @@
|
|
|
148
153
|
"git-commit": "5dd1d8a60d0cc7228be856350bb90faad24dae9e",
|
|
149
154
|
"docker-depends": "yosys",
|
|
150
155
|
"auto-update": true
|
|
156
|
+
},
|
|
157
|
+
"yosys-parmys": {
|
|
158
|
+
"git-url": "https://github.com/verilog-to-routing/vtr-verilog-to-routing.git",
|
|
159
|
+
"git-commit": "2a4e92181280a235315621253d1dc9eb8826bc53",
|
|
160
|
+
"docker-depends": [
|
|
161
|
+
"yosys",
|
|
162
|
+
"vpr"
|
|
163
|
+
],
|
|
164
|
+
"auto-update": false
|
|
151
165
|
}
|
|
152
166
|
}
|
|
@@ -6,8 +6,7 @@ set -e
|
|
|
6
6
|
src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
|
|
7
7
|
|
|
8
8
|
sudo yum group install -y "Development Tools"
|
|
9
|
-
sudo yum install -y tcl-devel tk-devel tcsh csh
|
|
10
|
-
# sudo apt-get install -y build-essential m4 tcsh csh libx11-dev tcl-dev tk-dev
|
|
9
|
+
sudo yum install -y tcl-devel tk-devel tcsh csh git
|
|
11
10
|
|
|
12
11
|
mkdir -p deps
|
|
13
12
|
cd deps
|
|
@@ -5,6 +5,8 @@ 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 yum install -y git
|
|
9
|
+
|
|
8
10
|
# These dependencies are up-to-date with instructions from the INSTALL.md from the commit we are pinned to below
|
|
9
11
|
sudo yum install -y gcc-toolset-12
|
|
10
12
|
sudo dnf config-manager --set-enabled devel || true
|
|
@@ -17,7 +19,7 @@ cd deps
|
|
|
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.28.4
|
|
21
23
|
python3 -m pip install orderedmultidict
|
|
22
24
|
|
|
23
25
|
git clone $(python3 ${src_path}/_tools.py --tool surelog --field git-url) surelog
|
|
@@ -8,6 +8,7 @@ src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
|
|
|
8
8
|
sudo yum group install -y "Development Tools"
|
|
9
9
|
sudo yum install -y gtk3-devel \
|
|
10
10
|
bzip2-devel xz-devel tcl-devel tk-devel
|
|
11
|
+
sudo yum install -y wget git
|
|
11
12
|
sudo dnf config-manager --set-enabled devel || true
|
|
12
13
|
sudo yum install -y Judy-devel
|
|
13
14
|
sudo dnf config-manager --set-disabled devel || true
|
|
@@ -35,6 +36,6 @@ git checkout $(python3 ${src_path}/_tools.py --tool gtkwave --field git-commit)
|
|
|
35
36
|
cd gtkwave3-gtk3
|
|
36
37
|
|
|
37
38
|
./autogen.sh
|
|
38
|
-
./configure --enable-gtk3 $args
|
|
39
|
+
LDFLAGS="-ltcl -ltk" ./configure --enable-gtk3 $args
|
|
39
40
|
make -j$(nproc)
|
|
40
41
|
sudo make install
|
|
@@ -6,8 +6,7 @@ set -e
|
|
|
6
6
|
src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
|
|
7
7
|
|
|
8
8
|
sudo yum group install -y "Development Tools"
|
|
9
|
-
sudo yum install -y tcl-devel tk-devel tcsh csh
|
|
10
|
-
# sudo apt-get install -y build-essential m4 tcsh csh libx11-dev tcl-dev tk-dev
|
|
9
|
+
sudo yum install -y tcl-devel tk-devel tcsh csh git
|
|
11
10
|
|
|
12
11
|
mkdir -p deps
|
|
13
12
|
cd deps
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
#!/bin/sh
|
|
2
|
+
|
|
3
|
+
set -e
|
|
4
|
+
|
|
5
|
+
src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
|
|
6
|
+
|
|
7
|
+
sudo yum install -y git gcc-c++ wget
|
|
8
|
+
sudo yum install -y tcl-tclreadline-devel \
|
|
9
|
+
bison flex zlib-devel automake autoconf
|
|
10
|
+
sudo yum install -y \
|
|
11
|
+
https://mirror.stream.centos.org/9-stream/AppStream/x86_64/os/Packages/flex-2.6.4-9.el9.x86_64.rpm \
|
|
12
|
+
https://mirror.stream.centos.org/9-stream/AppStream/x86_64/os/Packages/readline-devel-8.1-4.el9.x86_64.rpm \
|
|
13
|
+
https://rpmfind.net/linux/centos-stream/9-stream/AppStream/x86_64/os/Packages/tcl-devel-8.6.10-7.el9.x86_64.rpm
|
|
14
|
+
|
|
15
|
+
mkdir -p deps
|
|
16
|
+
cd deps
|
|
17
|
+
|
|
18
|
+
python3 -m venv .opensta --clear
|
|
19
|
+
. .opensta/bin/activate
|
|
20
|
+
python3 -m pip install cmake==3.31.6
|
|
21
|
+
|
|
22
|
+
if [ ! -z ${PREFIX} ]; then
|
|
23
|
+
cmake_args="-DCMAKE_INSTALL_PREFIX=$PREFIX"
|
|
24
|
+
config_prefix="--prefix=$PREFIX"
|
|
25
|
+
fi
|
|
26
|
+
|
|
27
|
+
# eigen
|
|
28
|
+
mkdir -p eigen3
|
|
29
|
+
cd eigen3
|
|
30
|
+
git clone --depth=1 -b 3.4 https://gitlab.com/libeigen/eigen.git
|
|
31
|
+
cd eigen
|
|
32
|
+
mkdir build
|
|
33
|
+
cd build
|
|
34
|
+
cmake $cmake_args ..
|
|
35
|
+
make -j$(nproc)
|
|
36
|
+
sudo make install
|
|
37
|
+
|
|
38
|
+
cd ../../..
|
|
39
|
+
# cudd
|
|
40
|
+
mkdir -p cudd
|
|
41
|
+
cd cudd
|
|
42
|
+
git clone --depth=1 -b 3.0.0 https://github.com/The-OpenROAD-Project/cudd.git
|
|
43
|
+
cd cudd
|
|
44
|
+
autoreconf
|
|
45
|
+
./configure $config_prefix
|
|
46
|
+
make -j$(nproc)
|
|
47
|
+
sudo make install
|
|
48
|
+
|
|
49
|
+
cd ../..
|
|
50
|
+
#swig
|
|
51
|
+
wget -O swig.tar.gz https://github.com/swig/swig/archive/v4.1.0.tar.gz
|
|
52
|
+
tar xfz swig.tar.gz
|
|
53
|
+
cd swig-4.1.0
|
|
54
|
+
|
|
55
|
+
wget https://github.com/PCRE2Project/pcre2/releases/download/pcre2-10.42/pcre2-10.42.tar.gz
|
|
56
|
+
./Tools/pcre-build.sh
|
|
57
|
+
|
|
58
|
+
./autogen.sh
|
|
59
|
+
./configure $config_prefix
|
|
60
|
+
make -j$(nproc)
|
|
61
|
+
sudo make -j$(nproc) install
|
|
62
|
+
|
|
63
|
+
cd ../..
|
|
64
|
+
# opensta
|
|
65
|
+
git clone $(python3 ${src_path}/_tools.py --tool opensta --field git-url) opensta
|
|
66
|
+
cd opensta
|
|
67
|
+
git checkout $(python3 ${src_path}/_tools.py --tool opensta --field git-commit)
|
|
68
|
+
git submodule update --init --recursive
|
|
69
|
+
|
|
70
|
+
mkdir -p build
|
|
71
|
+
cd build
|
|
72
|
+
cmake .. $cmake_args
|
|
73
|
+
make -j$(nproc)
|
|
74
|
+
sudo make install
|
|
75
|
+
|
|
76
|
+
cd -
|
|
@@ -5,13 +5,15 @@ 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 yum install -y git
|
|
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
15
|
python3 -m pip install --upgrade pip
|
|
14
|
-
python3 -m pip install cmake
|
|
16
|
+
python3 -m pip install cmake==3.31.6
|
|
15
17
|
|
|
16
18
|
sudo yum install -y gcc-toolset-12
|
|
17
19
|
|
|
@@ -10,6 +10,7 @@ sudo yum install -y gcc-toolset-12
|
|
|
10
10
|
sudo dnf config-manager --set-enabled devel || true
|
|
11
11
|
sudo yum install -y libuuid-devel java-11-openjdk-devel python3 zlib-static openssl-devel
|
|
12
12
|
sudo dnf config-manager --set-disabled devel || true
|
|
13
|
+
sudo yum install -y git
|
|
13
14
|
|
|
14
15
|
mkdir -p deps
|
|
15
16
|
cd deps
|
|
@@ -17,7 +18,7 @@ cd deps
|
|
|
17
18
|
python3 -m venv .surelog --clear
|
|
18
19
|
. .surelog/bin/activate
|
|
19
20
|
python3 -m pip install --upgrade pip
|
|
20
|
-
python3 -m pip install cmake
|
|
21
|
+
python3 -m pip install cmake==3.31.6
|
|
21
22
|
python3 -m pip install orderedmultidict
|
|
22
23
|
|
|
23
24
|
git clone $(python3 ${src_path}/_tools.py --tool surelog --field git-url) surelog
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
#!/bin/sh
|
|
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 yum install -y git wget
|
|
9
|
+
|
|
10
|
+
mkdir -p deps
|
|
11
|
+
cd deps
|
|
12
|
+
|
|
13
|
+
git clone $(python3 ${src_path}/_tools.py --tool vpr --field git-url) vpr
|
|
14
|
+
cd vpr
|
|
15
|
+
git checkout $(python3 ${src_path}/_tools.py --tool vpr --field git-commit)
|
|
16
|
+
git submodule update --init --recursive
|
|
17
|
+
|
|
18
|
+
sudo dnf config-manager --set-enabled devel || true
|
|
19
|
+
./install_dnf_packages.sh
|
|
20
|
+
|
|
21
|
+
sudo yum install -y tbb-devel
|
|
22
|
+
sudo dnf config-manager --set-disabled devel || true
|
|
23
|
+
|
|
24
|
+
args=
|
|
25
|
+
if [ ! -z ${PREFIX} ]; then
|
|
26
|
+
args="-DCMAKE_INSTALL_PREFIX=$PREFIX"
|
|
27
|
+
fi
|
|
28
|
+
|
|
29
|
+
make CMAKE_PARAMS="$args -DWITH_PARMYS=OFF -DWITH_ABC=OFF -DYOSYS_F4PGA_PLUGINS=OFF" -j$(nproc)
|
|
30
|
+
cd build
|
|
31
|
+
sudo make install
|
|
@@ -20,6 +20,8 @@ sudo yum install -y gcc gcc-c++ gcc-gfortran blas blas-devel \
|
|
|
20
20
|
git
|
|
21
21
|
sudo dnf config-manager --set-disabled devel || true
|
|
22
22
|
|
|
23
|
+
sudo yum install -y wget
|
|
24
|
+
|
|
23
25
|
# Download Trilinos.
|
|
24
26
|
## Version specified in: https://github.com/Xyce/Xyce/blob/master/INSTALL.md#building-trilinos
|
|
25
27
|
trilinos_version=14-4-0
|
|
@@ -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 yum 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 yum 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
|