siliconcompiler 0.30.0__py3-none-any.whl → 0.31.1__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 +1 -1
- siliconcompiler/apps/sc_install.py +26 -4
- siliconcompiler/apps/sc_remote.py +1 -3
- siliconcompiler/core.py +24 -9
- siliconcompiler/flowgraph.py +11 -23
- siliconcompiler/{package.py → package/__init__.py} +62 -176
- siliconcompiler/package/git.py +81 -0
- siliconcompiler/package/https.py +93 -0
- siliconcompiler/remote/schema.py +9 -8
- siliconcompiler/report/report.py +4 -3
- siliconcompiler/scheduler/__init__.py +127 -113
- siliconcompiler/scheduler/docker_runner.py +4 -4
- siliconcompiler/scheduler/run_node.py +3 -3
- siliconcompiler/scheduler/send_messages.py +1 -1
- siliconcompiler/schema/schema_cfg.py +367 -357
- siliconcompiler/schema/schema_obj.py +39 -29
- siliconcompiler/schema/utils.py +19 -0
- siliconcompiler/sphinx_ext/schemagen.py +3 -1
- siliconcompiler/templates/replay/replay.sh.j2 +92 -0
- siliconcompiler/templates/tcl/manifest.tcl.j2 +1 -1
- siliconcompiler/tools/_common/__init__.py +8 -2
- siliconcompiler/tools/_common/asic.py +1 -1
- siliconcompiler/tools/_common/tcl/sc_pin_constraints.tcl +3 -5
- siliconcompiler/tools/genfasm/genfasm.py +1 -1
- siliconcompiler/tools/klayout/export.py +5 -0
- siliconcompiler/tools/klayout/klayout.py +18 -1
- siliconcompiler/tools/klayout/klayout_export.py +4 -1
- siliconcompiler/tools/klayout/klayout_operations.py +5 -2
- siliconcompiler/tools/klayout/klayout_utils.py +23 -0
- siliconcompiler/tools/klayout/operations.py +5 -0
- siliconcompiler/tools/magic/magic.py +1 -1
- siliconcompiler/tools/openroad/_apr.py +14 -3
- siliconcompiler/tools/openroad/antenna_repair.py +2 -1
- siliconcompiler/tools/openroad/clock_tree_synthesis.py +2 -1
- siliconcompiler/tools/openroad/detailed_placement.py +2 -1
- siliconcompiler/tools/openroad/detailed_route.py +8 -0
- siliconcompiler/tools/openroad/fillercell_insertion.py +2 -1
- siliconcompiler/tools/openroad/global_placement.py +2 -1
- siliconcompiler/tools/openroad/pin_placement.py +2 -1
- siliconcompiler/tools/openroad/rdlroute.py +4 -0
- siliconcompiler/tools/openroad/repair_design.py +2 -1
- siliconcompiler/tools/openroad/repair_timing.py +2 -1
- siliconcompiler/tools/openroad/scripts/apr/preamble.tcl +6 -0
- siliconcompiler/tools/openroad/scripts/apr/sc_clock_tree_synthesis.tcl +1 -0
- siliconcompiler/tools/openroad/scripts/apr/sc_detailed_route.tcl +8 -0
- siliconcompiler/tools/openroad/scripts/apr/sc_global_placement.tcl +1 -0
- siliconcompiler/tools/openroad/scripts/apr/sc_global_route.tcl +2 -0
- siliconcompiler/tools/openroad/scripts/apr/sc_init_floorplan.tcl +3 -3
- siliconcompiler/tools/openroad/scripts/apr/sc_macro_placement.tcl +5 -0
- siliconcompiler/tools/openroad/scripts/apr/sc_power_grid.tcl +1 -0
- siliconcompiler/tools/openroad/scripts/apr/sc_repair_design.tcl +1 -0
- siliconcompiler/tools/openroad/scripts/apr/sc_repair_timing.tcl +3 -0
- siliconcompiler/tools/openroad/scripts/common/procs.tcl +29 -12
- siliconcompiler/tools/openroad/scripts/common/reports.tcl +15 -0
- siliconcompiler/tools/openroad/scripts/common/write_images.tcl +28 -0
- siliconcompiler/tools/openroad/scripts/sc_rdlroute.tcl +3 -13
- siliconcompiler/tools/vpr/vpr.py +86 -6
- siliconcompiler/tools/yosys/__init__.py +7 -0
- siliconcompiler/tools/yosys/sc_syn.tcl +33 -24
- siliconcompiler/tools/yosys/syn_asic.py +27 -0
- siliconcompiler/tools/yosys/syn_asic.tcl +27 -0
- siliconcompiler/toolscripts/_tools.json +15 -3
- siliconcompiler/toolscripts/rhel8/install-yosys-moosic.sh +17 -0
- siliconcompiler/toolscripts/rhel8/install-yosys-slang.sh +22 -0
- siliconcompiler/toolscripts/rhel9/install-yosys-moosic.sh +17 -0
- siliconcompiler/toolscripts/rhel9/install-yosys-slang.sh +22 -0
- siliconcompiler/toolscripts/ubuntu20/install-yosys-moosic.sh +17 -0
- siliconcompiler/toolscripts/ubuntu20/install-yosys-slang.sh +22 -0
- siliconcompiler/toolscripts/ubuntu22/install-yosys-moosic.sh +17 -0
- siliconcompiler/toolscripts/ubuntu22/install-yosys-slang.sh +22 -0
- siliconcompiler/toolscripts/ubuntu24/install-yosys-moosic.sh +17 -0
- siliconcompiler/toolscripts/ubuntu24/install-yosys-slang.sh +22 -0
- siliconcompiler/utils/__init__.py +33 -5
- {siliconcompiler-0.30.0.dist-info → siliconcompiler-0.31.1.dist-info}/METADATA +21 -23
- {siliconcompiler-0.30.0.dist-info → siliconcompiler-0.31.1.dist-info}/RECORD +79 -66
- {siliconcompiler-0.30.0.dist-info → siliconcompiler-0.31.1.dist-info}/WHEEL +1 -1
- {siliconcompiler-0.30.0.dist-info → siliconcompiler-0.31.1.dist-info}/entry_points.txt +4 -0
- {siliconcompiler-0.30.0.dist-info → siliconcompiler-0.31.1.dist-info}/LICENSE +0 -0
- {siliconcompiler-0.30.0.dist-info → siliconcompiler-0.31.1.dist-info}/top_level.txt +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import docker
|
|
2
2
|
import os
|
|
3
3
|
from siliconcompiler.package import get_cache_path
|
|
4
|
-
from siliconcompiler.package import
|
|
4
|
+
from siliconcompiler.package import path as sc_path
|
|
5
5
|
from siliconcompiler.utils import default_email_credentials_file
|
|
6
6
|
from pathlib import Path
|
|
7
7
|
import sys
|
|
@@ -29,7 +29,7 @@ def get_volumes_directories(chip, cache_dir, workdir, step, index):
|
|
|
29
29
|
cstep = step
|
|
30
30
|
cindex = index
|
|
31
31
|
|
|
32
|
-
if
|
|
32
|
+
if chip.get(*key, field='pernode').is_never():
|
|
33
33
|
cstep = None
|
|
34
34
|
cindex = None
|
|
35
35
|
|
|
@@ -47,7 +47,7 @@ def get_volumes_directories(chip, cache_dir, workdir, step, index):
|
|
|
47
47
|
|
|
48
48
|
# Collect caches
|
|
49
49
|
for package in chip.getkeys('package', 'source'):
|
|
50
|
-
all_dirs.add(sc_path(chip, package
|
|
50
|
+
all_dirs.add(sc_path(chip, package))
|
|
51
51
|
|
|
52
52
|
all_dirs = [
|
|
53
53
|
Path(cache_dir),
|
|
@@ -215,7 +215,7 @@ def run(chip, step, index, replay):
|
|
|
215
215
|
|
|
216
216
|
cachemap = []
|
|
217
217
|
for package in chip.getkeys('package', 'source'):
|
|
218
|
-
cachemap.append(f'{package}:{sc_path(chip, package
|
|
218
|
+
cachemap.append(f'{package}:{sc_path(chip, package)}')
|
|
219
219
|
|
|
220
220
|
chip.logger.info(f'Running in docker container: {container.name} ({container.short_id})')
|
|
221
221
|
args = [
|
|
@@ -5,7 +5,7 @@ import os
|
|
|
5
5
|
import sys
|
|
6
6
|
import tarfile
|
|
7
7
|
from siliconcompiler import Chip, Schema
|
|
8
|
-
from siliconcompiler.package import
|
|
8
|
+
from siliconcompiler.package import path as sc_path
|
|
9
9
|
from siliconcompiler.scheduler import _runtask, _executenode
|
|
10
10
|
from siliconcompiler import __version__
|
|
11
11
|
|
|
@@ -103,9 +103,9 @@ def main():
|
|
|
103
103
|
package, path = cachepair.split(':')
|
|
104
104
|
chip._packages[package] = path
|
|
105
105
|
|
|
106
|
-
# Populate cache
|
|
106
|
+
# Populate cache
|
|
107
107
|
for package in chip.getkeys('package', 'source'):
|
|
108
|
-
sc_path(chip, package
|
|
108
|
+
sc_path(chip, package)
|
|
109
109
|
|
|
110
110
|
# Run the task.
|
|
111
111
|
error = True
|
|
@@ -122,7 +122,7 @@ def send(chip, msg_type, step, index):
|
|
|
122
122
|
records = {}
|
|
123
123
|
for record in chip.getkeys('record'):
|
|
124
124
|
value = None
|
|
125
|
-
if chip.get('record', record, field='pernode')
|
|
125
|
+
if chip.get('record', record, field='pernode').is_never():
|
|
126
126
|
value = chip.get('record', record)
|
|
127
127
|
else:
|
|
128
128
|
value = chip.get('record', record, step=step, index=index)
|