siliconcompiler 0.29.0__tar.gz → 0.29.2__tar.gz
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-0.29.0 → siliconcompiler-0.29.2}/.readthedocs.yaml +5 -1
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/Changes +36 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/PKG-INFO +14 -11
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/pyproject.toml +26 -9
- siliconcompiler-0.29.2/scripts/check_library.py +43 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/_metadata.py +1 -1
- siliconcompiler-0.29.2/siliconcompiler/apps/__init__.py +26 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/apps/sc_install.py +1 -1
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/apps/utils/replay.py +96 -38
- siliconcompiler-0.29.2/siliconcompiler/checklists/__init__.py +12 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/core.py +85 -15
- siliconcompiler-0.29.2/siliconcompiler/flows/__init__.py +34 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/flows/showflow.py +1 -1
- siliconcompiler-0.29.2/siliconcompiler/libs/__init__.py +5 -0
- siliconcompiler-0.29.2/siliconcompiler/optimizer/__init__.py +199 -0
- siliconcompiler-0.29.2/siliconcompiler/optimizer/vizier.py +259 -0
- siliconcompiler-0.29.2/siliconcompiler/pdks/__init__.py +5 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/scheduler/__init__.py +67 -49
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/scheduler/send_messages.py +1 -1
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/schema/schema_cfg.py +2 -2
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/schema/schema_obj.py +13 -10
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/schema/utils.py +2 -0
- siliconcompiler-0.29.2/siliconcompiler/sphinx_ext/__init__.py +85 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/sphinx_ext/dynamicgen.py +17 -33
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/sphinx_ext/schemagen.py +3 -2
- siliconcompiler-0.29.2/siliconcompiler/targets/__init__.py +26 -0
- siliconcompiler-0.29.2/siliconcompiler/templates/replay/replay.py.j2 +62 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/templates/replay/requirements.txt +2 -1
- siliconcompiler-0.29.2/siliconcompiler/templates/replay/setup.sh +130 -0
- siliconcompiler-0.29.2/siliconcompiler/tools/__init__.py +62 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/_common/asic.py +77 -6
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/_common/tcl/sc_pin_constraints.tcl +2 -2
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/ghdl/ghdl.py +1 -2
- siliconcompiler-0.29.2/siliconcompiler/tools/gtkwave/__init__.py +39 -0
- siliconcompiler-0.29.2/siliconcompiler/tools/gtkwave/scripts/sc_show.tcl +34 -0
- siliconcompiler-0.29.2/siliconcompiler/tools/gtkwave/show.py +70 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/icarus/compile.py +4 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/klayout/convert_drc_db.py +1 -1
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/klayout/drc.py +1 -1
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/klayout/export.py +8 -1
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/klayout/klayout.py +2 -2
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/klayout/klayout_convert_drc_db.py +2 -2
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/klayout/klayout_export.py +7 -5
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/klayout/klayout_operations.py +4 -3
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/klayout/klayout_show.py +3 -2
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/klayout/klayout_utils.py +1 -1
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/klayout/operations.py +8 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/klayout/screenshot.py +6 -1
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/klayout/show.py +8 -1
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/magic/magic.py +1 -1
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/__init__.py +1 -1
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/_apr.py +11 -2
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/global_placement.py +23 -2
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/init_floorplan.py +1 -1
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/apr/preamble.tcl +1 -1
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/apr/sc_clock_tree_synthesis.tcl +4 -0
- siliconcompiler-0.29.2/siliconcompiler/tools/openroad/scripts/apr/sc_global_placement.tcl +89 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/apr/sc_repair_design.tcl +4 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/apr/sc_repair_timing.tcl +8 -2
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/common/procs.tcl +88 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/common/reports.tcl +1 -1
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/common/write_images.tcl +10 -1
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/sc_show.tcl +5 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/opensta/__init__.py +1 -1
- siliconcompiler-0.29.2/siliconcompiler/tools/opensta/check_library.py +27 -0
- siliconcompiler-0.29.2/siliconcompiler/tools/opensta/scripts/sc_check_library.tcl +255 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/opensta/scripts/sc_timing.tcl +1 -1
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/sv2v/sv2v.py +1 -2
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/verilator/compile.py +11 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/verilator/verilator.py +7 -8
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/vivado/vivado.py +1 -1
- siliconcompiler-0.29.0/siliconcompiler/tools/yosys/yosys.py → siliconcompiler-0.29.2/siliconcompiler/tools/yosys/__init__.py +3 -2
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/yosys/lec.py +22 -9
- siliconcompiler-0.29.2/siliconcompiler/tools/yosys/sc_lec.tcl +129 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/yosys/sc_syn.tcl +1 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/yosys/screenshot.py +2 -2
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/yosys/syn_asic.py +98 -74
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/yosys/syn_asic.tcl +31 -6
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/yosys/syn_fpga.py +2 -3
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/yosys/syn_fpga.tcl +0 -1
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/_tools.json +8 -3
- siliconcompiler-0.29.2/siliconcompiler/toolscripts/rhel9/install-gtkwave.sh +40 -0
- siliconcompiler-0.29.2/siliconcompiler/toolscripts/ubuntu20/install-gtkwave.sh +28 -0
- siliconcompiler-0.29.2/siliconcompiler/toolscripts/ubuntu22/install-gtkwave.sh +28 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu22/install-slang.sh +0 -0
- siliconcompiler-0.29.2/siliconcompiler/toolscripts/ubuntu24/install-gtkwave.sh +29 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/utils/__init__.py +7 -3
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/utils/showtools.py +3 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler.egg-info/PKG-INFO +14 -11
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler.egg-info/SOURCES.txt +13 -15
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler.egg-info/entry_points.txt +13 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler.egg-info/requires.txt +15 -9
- siliconcompiler-0.29.0/siliconcompiler/libs/asap7sc7p5t.py +0 -8
- siliconcompiler-0.29.0/siliconcompiler/libs/gf180mcu.py +0 -8
- siliconcompiler-0.29.0/siliconcompiler/libs/interposer.py +0 -8
- siliconcompiler-0.29.0/siliconcompiler/libs/nangate45.py +0 -8
- siliconcompiler-0.29.0/siliconcompiler/libs/sg13g2_stdcell.py +0 -8
- siliconcompiler-0.29.0/siliconcompiler/libs/sky130hd.py +0 -8
- siliconcompiler-0.29.0/siliconcompiler/libs/sky130io.py +0 -8
- siliconcompiler-0.29.0/siliconcompiler/pdks/asap7.py +0 -8
- siliconcompiler-0.29.0/siliconcompiler/pdks/freepdk45.py +0 -8
- siliconcompiler-0.29.0/siliconcompiler/pdks/gf180.py +0 -8
- siliconcompiler-0.29.0/siliconcompiler/pdks/ihp130.py +0 -8
- siliconcompiler-0.29.0/siliconcompiler/pdks/interposer.py +0 -8
- siliconcompiler-0.29.0/siliconcompiler/pdks/skywater130.py +0 -8
- siliconcompiler-0.29.0/siliconcompiler/templates/replay/run.py.j2 +0 -22
- siliconcompiler-0.29.0/siliconcompiler/templates/replay/setup.sh +0 -17
- siliconcompiler-0.29.0/siliconcompiler/tools/openroad/scripts/apr/sc_global_placement.tcl +0 -26
- siliconcompiler-0.29.0/siliconcompiler/tools/surelog/templates/__init__.py +0 -0
- siliconcompiler-0.29.0/siliconcompiler/tools/sv2v/__init__.py +0 -0
- siliconcompiler-0.29.0/siliconcompiler/tools/template/__init__.py +0 -0
- siliconcompiler-0.29.0/siliconcompiler/tools/verilator/__init__.py +0 -0
- siliconcompiler-0.29.0/siliconcompiler/tools/vivado/scripts/__init__.py +0 -0
- siliconcompiler-0.29.0/siliconcompiler/tools/vpr/__init__.py +0 -0
- siliconcompiler-0.29.0/siliconcompiler/tools/yosys/__init__.py +0 -0
- siliconcompiler-0.29.0/siliconcompiler/tools/yosys/sc_lec.tcl +0 -84
- siliconcompiler-0.29.0/siliconcompiler/tools/yosys/techmaps/__init__.py +0 -0
- siliconcompiler-0.29.0/siliconcompiler/tools/yosys/templates/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/.dockerignore +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/.flake8 +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/.gitattributes +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/.gitignore +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/CONTRIBUTING.md +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/LICENSE +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/MANIFEST.in +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/README.md +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/SECURITY.md +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/scripts/.gitignore +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/scripts/profile_sc.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/scripts/report_library.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/setup.cfg +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/__main__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/_common.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/apps/_common.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/apps/sc.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/apps/sc_dashboard.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/apps/sc_issue.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/apps/sc_remote.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/apps/sc_server.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/apps/sc_show.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/apps/smake.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/apps/utils/summarize.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/checklists/oh_tapeout.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/data/RobotoMono/LICENSE.txt +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/data/RobotoMono/RobotoMono-Regular.ttf +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/apps → siliconcompiler-0.29.2/siliconcompiler/data/RobotoMono}/__init__.py +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/checklists → siliconcompiler-0.29.2/siliconcompiler/data}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/data/heartbeat.v +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/data/logo.png +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/flowgraph.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/flows/_common.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/flows/asicflow.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/flows/asictopflow.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/flows/drcflow.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/flows/dvflow.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/flows/fpgaflow.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/flows/generate_openroad_rcx.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/flows/interposerflow.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/flows/lintflow.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/flows/screenshotflow.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/flows/signoffflow.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/flows/synflow.py +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/data/RobotoMono → siliconcompiler-0.29.2/siliconcompiler/fpgas}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/fpgas/lattice_ice40.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/fpgas/vpr_example.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/issue.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/package.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/remote/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/remote/client.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/remote/schema.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/remote/server.py +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/data → siliconcompiler-0.29.2/siliconcompiler/remote/server_schema}/__init__.py +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/flows → siliconcompiler-0.29.2/siliconcompiler/remote/server_schema/requests}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/remote/server_schema/requests/cancel_job.json +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/remote/server_schema/requests/check_progress.json +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/remote/server_schema/requests/check_server.json +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/remote/server_schema/requests/delete_job.json +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/remote/server_schema/requests/get_results.json +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/remote/server_schema/requests/remote_run.json +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/fpgas → siliconcompiler-0.29.2/siliconcompiler/remote/server_schema/responses}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/remote/server_schema/responses/cancel_job.json +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/remote/server_schema/responses/check_progress.json +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/remote/server_schema/responses/check_server.json +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/remote/server_schema/responses/delete_job.json +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/remote/server_schema/responses/get_results.json +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/remote/server_schema/responses/remote_run.json +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/report/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/report/dashboard/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/report/dashboard/components/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/report/dashboard/components/flowgraph.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/report/dashboard/components/graph.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/report/dashboard/layouts/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/report/dashboard/layouts/_common.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/report/dashboard/layouts/vertical_flowgraph.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/report/dashboard/layouts/vertical_flowgraph_node_tab.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/report/dashboard/layouts/vertical_flowgraph_sac_tabs.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/report/dashboard/state.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/report/dashboard/utils/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/report/dashboard/utils/file_utils.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/report/dashboard/viewer.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/report/html_report.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/report/report.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/report/summary_image.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/report/summary_table.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/report/utils.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/scheduler/docker_runner.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/scheduler/run_node.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/scheduler/slurm.py +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/libs → siliconcompiler-0.29.2/siliconcompiler/scheduler/validation}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/scheduler/validation/email_credentials.json +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/schema/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/sphinx_ext/utils.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/targets/asap7_demo.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/targets/asic_demo.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/targets/fpgaflow_demo.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/targets/freepdk45_demo.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/targets/gf180_demo.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/targets/ihp130_demo.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/targets/interposer_demo.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/targets/skywater130_demo.py +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/pdks → siliconcompiler-0.29.2/siliconcompiler/templates}/__init__.py +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/remote/server_schema → siliconcompiler-0.29.2/siliconcompiler/templates/email}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/templates/email/general.j2 +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/templates/email/summary.j2 +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/templates/issue/README.txt +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/remote/server_schema/requests → siliconcompiler-0.29.2/siliconcompiler/templates/issue}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/templates/issue/run.sh +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/remote/server_schema/responses → siliconcompiler-0.29.2/siliconcompiler/templates/report}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/templates/report/bootstrap.min.css +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/templates/report/bootstrap.min.js +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/templates/report/bootstrap_LICENSE.md +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/templates/report/sc_report.j2 +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/scheduler/validation → siliconcompiler-0.29.2/siliconcompiler/templates/slurm}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/templates/slurm/run.sh +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/sphinx_ext → siliconcompiler-0.29.2/siliconcompiler/templates/tcl}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/templates/tcl/manifest.tcl.j2 +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/_common/__init__.py +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/targets → siliconcompiler-0.29.2/siliconcompiler/tools/_common/sdc}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/_common/sdc/sc_constraints.sdc +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/templates → siliconcompiler-0.29.2/siliconcompiler/tools/_common/tcl}/__init__.py +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/templates/email → siliconcompiler-0.29.2/siliconcompiler/tools/bambu}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/bambu/bambu.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/bambu/convert.py +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/templates/issue → siliconcompiler-0.29.2/siliconcompiler/tools/bluespec}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/bluespec/bluespec.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/bluespec/convert.py +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/templates/report → siliconcompiler-0.29.2/siliconcompiler/tools/builtin}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/builtin/_common.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/builtin/builtin.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/builtin/concatenate.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/builtin/join.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/builtin/maximum.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/builtin/minimum.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/builtin/mux.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/builtin/nop.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/builtin/verify.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/chisel/SCDriver.scala +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/templates/slurm → siliconcompiler-0.29.2/siliconcompiler/tools/chisel}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/chisel/build.sbt +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/chisel/chisel.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/chisel/convert.py +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/templates/tcl → siliconcompiler-0.29.2/siliconcompiler/tools/execute}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/execute/exec_input.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/execute/execute.py +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/tools → siliconcompiler-0.29.2/siliconcompiler/tools/genfasm}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/genfasm/bitstream.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/genfasm/genfasm.py +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/tools/_common/sdc → siliconcompiler-0.29.2/siliconcompiler/tools/ghdl}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/ghdl/convert.py +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/tools/_common/tcl → siliconcompiler-0.29.2/siliconcompiler/tools/icarus}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/icarus/icarus.py +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/tools/bambu → siliconcompiler-0.29.2/siliconcompiler/tools/icepack}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/icepack/bitstream.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/icepack/icepack.py +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/tools/bluespec → siliconcompiler-0.29.2/siliconcompiler/tools/klayout}/__init__.py +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/tools/builtin → siliconcompiler-0.29.2/siliconcompiler/tools/magic}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/magic/drc.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/magic/extspice.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/magic/sc_drc.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/magic/sc_extspice.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/magic/sc_magic.tcl +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/tools/chisel → siliconcompiler-0.29.2/siliconcompiler/tools/montage}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/montage/montage.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/montage/tile.py +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/tools/execute → siliconcompiler-0.29.2/siliconcompiler/tools/netgen}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/netgen/count_lvs.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/netgen/lvs.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/netgen/netgen.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/netgen/sc_lvs.tcl +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/tools/genfasm → siliconcompiler-0.29.2/siliconcompiler/tools/nextpnr}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/nextpnr/apr.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/nextpnr/nextpnr.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/antenna_repair.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/clock_tree_synthesis.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/detailed_placement.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/detailed_route.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/endcap_tapcell_insertion.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/fillercell_insertion.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/fillmetal_insertion.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/global_route.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/macro_placement.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/metrics.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/pin_placement.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/power_grid.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/rcx_bench.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/rcx_extract.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/rdlroute.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/repair_design.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/repair_timing.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/screenshot.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/apr/postamble.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/apr/sc_antenna_repair.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/apr/sc_detailed_placement.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/apr/sc_detailed_route.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/apr/sc_endcap_tapcell_insertion.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/apr/sc_fillercell_insertion.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/apr/sc_fillmetal_insertion.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/apr/sc_global_route.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/apr/sc_init_floorplan.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/apr/sc_macro_placement.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/apr/sc_metrics.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/apr/sc_pin_placement.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/apr/sc_power_grid.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/apr/sc_write_data.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/common/debugging.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/common/read_input_files.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/common/read_liberty.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/common/read_timing_constraints.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/common/screenshot.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/common/write_data.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/rcx/sc_rcx_bench.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/rcx/sc_rcx_extract.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/sc_rcx.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/scripts/sc_rdlroute.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/show.py +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/tools/ghdl → siliconcompiler-0.29.2/siliconcompiler/tools/openroad/templates}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/templates/pex.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/openroad/write_data.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/opensta/report_libraries.py +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/tools/icarus → siliconcompiler-0.29.2/siliconcompiler/tools/opensta/scripts}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/opensta/scripts/sc_procs.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/opensta/scripts/sc_report_libraries.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/opensta/timing.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/slang/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/slang/lint.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/surelog/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/surelog/parse.py +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/tools/icepack → siliconcompiler-0.29.2/siliconcompiler/tools/surelog/templates}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/surelog/templates/output.v +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/tools/klayout → siliconcompiler-0.29.2/siliconcompiler/tools/sv2v}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/sv2v/convert.py +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/tools/magic → siliconcompiler-0.29.2/siliconcompiler/tools/template}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/template/template.py +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/tools/montage → siliconcompiler-0.29.2/siliconcompiler/tools/verilator}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/verilator/lint.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/verilator/parse.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/vivado/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/vivado/bitstream.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/vivado/place.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/vivado/route.py +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/tools/netgen → siliconcompiler-0.29.2/siliconcompiler/tools/vivado/scripts}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/vivado/scripts/sc_bitstream.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/vivado/scripts/sc_place.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/vivado/scripts/sc_route.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/vivado/scripts/sc_run.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/vivado/scripts/sc_syn_fpga.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/vivado/syn_fpga.py +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/tools/nextpnr → siliconcompiler-0.29.2/siliconcompiler/tools/vpr}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/vpr/_json_constraint.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/vpr/_xml_constraint.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/vpr/place.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/vpr/route.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/vpr/screenshot.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/vpr/show.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/vpr/vpr.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/xdm/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/xdm/convert.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/xyce/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/xyce/simulate.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/yosys/prepareLib.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/yosys/procs.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/yosys/sc_screenshot.tcl +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/yosys/syn_strategies.tcl +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/tools/openroad/templates → siliconcompiler-0.29.2/siliconcompiler/tools/yosys/techmaps}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/yosys/techmaps/lcu_kogge_stone.v +0 -0
- {siliconcompiler-0.29.0/siliconcompiler/tools/opensta/scripts → siliconcompiler-0.29.2/siliconcompiler/tools/yosys/templates}/__init__.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/tools/yosys/templates/abc.const +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/_tools.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/rhel8/install-chisel.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/rhel8/install-ghdl.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/rhel8/install-icarus.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/rhel8/install-klayout.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/rhel8/install-magic.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/rhel8/install-montage.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/rhel8/install-netgen.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/rhel8/install-slang.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/rhel8/install-surelog.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/rhel8/install-sv2v.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/rhel8/install-verible.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/rhel8/install-verilator.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/rhel8/install-xyce.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/rhel8/install-yosys.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/rhel9/install-chisel.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/rhel9/install-ghdl.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/rhel9/install-icarus.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/rhel9/install-klayout.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/rhel9/install-magic.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/rhel9/install-montage.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/rhel9/install-netgen.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/rhel9/install-slang.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/rhel9/install-surelog.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/rhel9/install-sv2v.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/rhel9/install-verible.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/rhel9/install-verilator.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/rhel9/install-xdm.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/rhel9/install-xyce.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/rhel9/install-yosys.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu20/install-bambu.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu20/install-bluespec.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu20/install-chisel.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu20/install-ghdl.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu20/install-icarus.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu20/install-icepack.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu20/install-klayout.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu20/install-magic.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu20/install-montage.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu20/install-netgen.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu20/install-nextpnr.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu20/install-openroad.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu20/install-slang.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu20/install-slurm.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu20/install-surelog.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu20/install-sv2v.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu20/install-verible.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu20/install-verilator.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu20/install-vpr.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu20/install-xdm.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu20/install-xyce.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu20/install-yosys.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu22/install-bambu.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu22/install-bluespec.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu22/install-chisel.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu22/install-ghdl.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu22/install-icarus.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu22/install-icepack.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu22/install-klayout.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu22/install-magic.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu22/install-montage.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu22/install-netgen.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu22/install-nextpnr.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu22/install-openroad.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu22/install-slurm.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu22/install-surelog.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu22/install-sv2v.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu22/install-verible.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu22/install-verilator.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu22/install-vpr.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu22/install-xdm.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu22/install-xyce.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu22/install-yosys.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu24/install-bambu.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu24/install-bluespec.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu24/install-chisel.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu24/install-ghdl.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu24/install-icarus.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu24/install-icepack.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu24/install-klayout.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu24/install-magic.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu24/install-montage.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu24/install-netgen.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu24/install-nextpnr.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu24/install-openroad.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu24/install-slang.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu24/install-slurm.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu24/install-surelog.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu24/install-sv2v.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu24/install-verible.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu24/install-verilator.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu24/install-vpr.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu24/install-xdm.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu24/install-xyce.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/toolscripts/ubuntu24/install-yosys.sh +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/units.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/use.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler/utils/asic.py +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler.egg-info/dependency_links.txt +0 -0
- {siliconcompiler-0.29.0 → siliconcompiler-0.29.2}/siliconcompiler.egg-info/top_level.txt +0 -0
|
@@ -8,6 +8,42 @@ The changes in each SiliconCompiler release version are described below. Commit
|
|
|
8
8
|
version shown in (). Where applicable, the contributors that suggested a given
|
|
9
9
|
feature are shown in [].
|
|
10
10
|
|
|
11
|
+
SiliconCompiler 0.29.2 (2025-01-16)
|
|
12
|
+
=========================================
|
|
13
|
+
|
|
14
|
+
**Major:**
|
|
15
|
+
|
|
16
|
+
* Added gtkwave show task to allow for vcd viewing.
|
|
17
|
+
* Removed enablement for conda-eda as this is no longer a supported project.
|
|
18
|
+
|
|
19
|
+
**Minor:**
|
|
20
|
+
|
|
21
|
+
* Allow passing a file path to `.register_source` to make it easier to handle retive path to the current file.
|
|
22
|
+
|
|
23
|
+
* Tools:
|
|
24
|
+
|
|
25
|
+
* openroad: added support for mutli-bit flipflop mapping and initial support for scan chain insertion, correct pin ordering from constraints.
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
SiliconCompiler 0.29.1 (2025-01-09)
|
|
29
|
+
=========================================
|
|
30
|
+
|
|
31
|
+
**Major:**
|
|
32
|
+
|
|
33
|
+
* Added optional `optimizer` install extra to provide design optimization via google-vizier.
|
|
34
|
+
|
|
35
|
+
**Minor:**
|
|
36
|
+
|
|
37
|
+
* Added capability to import flist files via `Chip.import_flist`
|
|
38
|
+
* Added quiet loglevel to limit siliconcompiler logging to just the most critical information.
|
|
39
|
+
|
|
40
|
+
* Tools:
|
|
41
|
+
|
|
42
|
+
* openroad: switch to turn on new macro placer by default and correct handling of dont_use based on cell lists.
|
|
43
|
+
* yosys: add detailed metrics for cell counts, added support for handling clockgate insertion, simplified library file handling, and updated lec task.
|
|
44
|
+
* sta: added check_library task to help verify library setups for asic flows.
|
|
45
|
+
|
|
46
|
+
|
|
11
47
|
SiliconCompiler 0.29.0 (2024-12-12)
|
|
12
48
|
=========================================
|
|
13
49
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.2
|
|
2
2
|
Name: siliconcompiler
|
|
3
|
-
Version: 0.29.
|
|
3
|
+
Version: 0.29.2
|
|
4
4
|
Summary: A compiler framework that automates translation from source code to silicon.
|
|
5
5
|
Author-email: Andreas Olofsson <andreas.d.olofsson@gmail.com>
|
|
6
6
|
License: Apache License 2.0
|
|
@@ -26,7 +26,7 @@ Requires-Python: >=3.8
|
|
|
26
26
|
Description-Content-Type: text/markdown
|
|
27
27
|
License-File: LICENSE
|
|
28
28
|
Requires-Dist: aiohttp==3.10.11; python_version <= "3.8"
|
|
29
|
-
Requires-Dist: aiohttp==3.11.
|
|
29
|
+
Requires-Dist: aiohttp==3.11.11; python_version >= "3.9"
|
|
30
30
|
Requires-Dist: requests==2.32.3
|
|
31
31
|
Requires-Dist: PyYAML==6.0.2
|
|
32
32
|
Requires-Dist: pandas>=1.1.5
|
|
@@ -36,9 +36,9 @@ Requires-Dist: distro==1.9.0
|
|
|
36
36
|
Requires-Dist: packaging<25,>=21.3
|
|
37
37
|
Requires-Dist: psutil>=5.8.0
|
|
38
38
|
Requires-Dist: Pillow==10.4.0; python_version <= "3.8"
|
|
39
|
-
Requires-Dist: Pillow==11.
|
|
40
|
-
Requires-Dist: GitPython==3.1.
|
|
41
|
-
Requires-Dist: lambdapdk>=0.1.
|
|
39
|
+
Requires-Dist: Pillow==11.1.0; python_version >= "3.9"
|
|
40
|
+
Requires-Dist: GitPython==3.1.44
|
|
41
|
+
Requires-Dist: lambdapdk>=0.1.44
|
|
42
42
|
Requires-Dist: PyGithub==2.5.0
|
|
43
43
|
Requires-Dist: urllib3>=1.26.0
|
|
44
44
|
Requires-Dist: fasteners==0.19
|
|
@@ -46,9 +46,9 @@ Requires-Dist: fastjsonschema==2.21.1
|
|
|
46
46
|
Requires-Dist: docker==7.1.0
|
|
47
47
|
Requires-Dist: importlib_metadata; python_version < "3.10"
|
|
48
48
|
Requires-Dist: sc-surelog==1.84.1
|
|
49
|
-
Requires-Dist: orjson==3.10.
|
|
49
|
+
Requires-Dist: orjson==3.10.14
|
|
50
50
|
Requires-Dist: streamlit==1.40.1; python_version <= "3.8"
|
|
51
|
-
Requires-Dist: streamlit==1.
|
|
51
|
+
Requires-Dist: streamlit==1.41.1; python_version >= "3.9" and python_full_version != "3.9.7"
|
|
52
52
|
Requires-Dist: streamlit_agraph==0.0.45; python_full_version != "3.9.7"
|
|
53
53
|
Requires-Dist: streamlit-antd-components==0.3.2; python_full_version != "3.9.7"
|
|
54
54
|
Requires-Dist: streamlit_javascript==0.1.5; python_full_version != "3.9.7"
|
|
@@ -57,10 +57,11 @@ Provides-Extra: test
|
|
|
57
57
|
Requires-Dist: pytest==8.3.4; extra == "test"
|
|
58
58
|
Requires-Dist: pytest-xdist==3.6.1; extra == "test"
|
|
59
59
|
Requires-Dist: pytest-timeout==2.3.1; extra == "test"
|
|
60
|
-
Requires-Dist: pytest-asyncio==0.24.0; extra == "test"
|
|
60
|
+
Requires-Dist: pytest-asyncio==0.24.0; python_version <= "3.8" and extra == "test"
|
|
61
|
+
Requires-Dist: pytest-asyncio==0.25.2; python_version >= "3.9" and extra == "test"
|
|
61
62
|
Requires-Dist: pytest-cov==5.0.0; python_version <= "3.8" and extra == "test"
|
|
62
63
|
Requires-Dist: pytest-cov==6.0.0; python_version >= "3.9" and extra == "test"
|
|
63
|
-
Requires-Dist: responses==0.25.
|
|
64
|
+
Requires-Dist: responses==0.25.5; extra == "test"
|
|
64
65
|
Requires-Dist: PyVirtualDisplay==3.0; extra == "test"
|
|
65
66
|
Provides-Extra: lint
|
|
66
67
|
Requires-Dist: flake8==7.1.1; extra == "lint"
|
|
@@ -69,13 +70,15 @@ Requires-Dist: codespell==2.3.0; extra == "lint"
|
|
|
69
70
|
Provides-Extra: docs
|
|
70
71
|
Requires-Dist: Sphinx==8.1.3; extra == "docs"
|
|
71
72
|
Requires-Dist: pip-licenses==5.0.0; extra == "docs"
|
|
72
|
-
Requires-Dist: pydata-sphinx-theme==0.16.
|
|
73
|
+
Requires-Dist: pydata-sphinx-theme==0.16.1; extra == "docs"
|
|
73
74
|
Requires-Dist: sc-leflib>=0.2.0; extra == "docs"
|
|
74
75
|
Provides-Extra: profile
|
|
75
76
|
Requires-Dist: gprof2dot==2024.6.6; extra == "profile"
|
|
76
77
|
Provides-Extra: examples
|
|
77
78
|
Requires-Dist: migen==0.9.2; extra == "examples"
|
|
78
79
|
Requires-Dist: lambdalib==0.3.2; extra == "examples"
|
|
80
|
+
Provides-Extra: optimizer
|
|
81
|
+
Requires-Dist: google-vizier[jax]==0.1.21; python_version >= "3.10" and extra == "optimizer"
|
|
79
82
|
|
|
80
83
|

|
|
81
84
|
|
|
@@ -33,7 +33,7 @@ classifiers = [
|
|
|
33
33
|
requires-python = ">= 3.8"
|
|
34
34
|
dependencies = [
|
|
35
35
|
"aiohttp == 3.10.11; python_version <= '3.8'",
|
|
36
|
-
"aiohttp == 3.11.
|
|
36
|
+
"aiohttp == 3.11.11; python_version >= '3.9'",
|
|
37
37
|
"requests == 2.32.3",
|
|
38
38
|
"PyYAML == 6.0.2",
|
|
39
39
|
"pandas >= 1.1.5",
|
|
@@ -43,9 +43,9 @@ dependencies = [
|
|
|
43
43
|
"packaging >= 21.3, < 25",
|
|
44
44
|
"psutil >= 5.8.0",
|
|
45
45
|
"Pillow == 10.4.0; python_version <= '3.8'",
|
|
46
|
-
"Pillow == 11.
|
|
47
|
-
"GitPython == 3.1.
|
|
48
|
-
"lambdapdk >= 0.1.
|
|
46
|
+
"Pillow == 11.1.0; python_version >= '3.9'",
|
|
47
|
+
"GitPython == 3.1.44",
|
|
48
|
+
"lambdapdk >= 0.1.44",
|
|
49
49
|
"PyGithub == 2.5.0",
|
|
50
50
|
"urllib3 >= 1.26.0", # Required for PyGithub
|
|
51
51
|
"fasteners == 0.19",
|
|
@@ -53,11 +53,11 @@ dependencies = [
|
|
|
53
53
|
"docker == 7.1.0",
|
|
54
54
|
"importlib_metadata; python_version < '3.10'",
|
|
55
55
|
"sc-surelog == 1.84.1",
|
|
56
|
-
"orjson == 3.10.
|
|
56
|
+
"orjson == 3.10.14",
|
|
57
57
|
|
|
58
58
|
# dashboard, streamlit does not support 3.9.7
|
|
59
59
|
"streamlit == 1.40.1; python_version <= '3.8'",
|
|
60
|
-
"streamlit == 1.
|
|
60
|
+
"streamlit == 1.41.1; python_version >= '3.9' and python_full_version != '3.9.7'",
|
|
61
61
|
"streamlit_agraph == 0.0.45; python_full_version != '3.9.7'",
|
|
62
62
|
"streamlit-antd-components == 0.3.2; python_full_version != '3.9.7'",
|
|
63
63
|
"streamlit_javascript == 0.1.5; python_full_version != '3.9.7'",
|
|
@@ -87,15 +87,29 @@ smake = "siliconcompiler.apps.smake:main"
|
|
|
87
87
|
[project.entry-points."siliconcompiler.show"]
|
|
88
88
|
scsetup = "siliconcompiler.utils.showtools:setup"
|
|
89
89
|
|
|
90
|
+
[project.entry-points."siliconcompiler.target"]
|
|
91
|
+
targets = "siliconcompiler.targets:get_targets"
|
|
92
|
+
|
|
93
|
+
[project.entry-points."siliconcompiler.docs"]
|
|
94
|
+
linkcode = "siliconcompiler.sphinx_ext:get_codeurl"
|
|
95
|
+
targets = "siliconcompiler.sphinx_ext:targets"
|
|
96
|
+
flows = "siliconcompiler.sphinx_ext:flows"
|
|
97
|
+
libs = "siliconcompiler.sphinx_ext:libraries"
|
|
98
|
+
pdks = "siliconcompiler.sphinx_ext:pdks"
|
|
99
|
+
tools = "siliconcompiler.sphinx_ext:tools"
|
|
100
|
+
apps = "siliconcompiler.sphinx_ext:apps"
|
|
101
|
+
checklists = "siliconcompiler.sphinx_ext:checklists"
|
|
102
|
+
|
|
90
103
|
[project.optional-dependencies]
|
|
91
104
|
test = [
|
|
92
105
|
"pytest == 8.3.4",
|
|
93
106
|
"pytest-xdist == 3.6.1",
|
|
94
107
|
"pytest-timeout == 2.3.1",
|
|
95
|
-
"pytest-asyncio == 0.24.0",
|
|
108
|
+
"pytest-asyncio == 0.24.0; python_version <= '3.8'",
|
|
109
|
+
"pytest-asyncio == 0.25.2; python_version >= '3.9'",
|
|
96
110
|
"pytest-cov == 5.0.0; python_version <= '3.8'",
|
|
97
111
|
"pytest-cov == 6.0.0; python_version >= '3.9'",
|
|
98
|
-
"responses == 0.25.
|
|
112
|
+
"responses == 0.25.5",
|
|
99
113
|
"PyVirtualDisplay == 3.0"
|
|
100
114
|
]
|
|
101
115
|
lint = [
|
|
@@ -106,7 +120,7 @@ lint = [
|
|
|
106
120
|
docs = [
|
|
107
121
|
"Sphinx == 8.1.3",
|
|
108
122
|
"pip-licenses == 5.0.0",
|
|
109
|
-
"pydata-sphinx-theme == 0.16.
|
|
123
|
+
"pydata-sphinx-theme == 0.16.1",
|
|
110
124
|
"sc-leflib >= 0.2.0"
|
|
111
125
|
]
|
|
112
126
|
profile = [
|
|
@@ -116,6 +130,9 @@ examples = [
|
|
|
116
130
|
"migen == 0.9.2",
|
|
117
131
|
"lambdalib == 0.3.2"
|
|
118
132
|
]
|
|
133
|
+
optimizer = [
|
|
134
|
+
"google-vizier[jax] == 0.1.21; python_version >= '3.10'"
|
|
135
|
+
]
|
|
119
136
|
|
|
120
137
|
[tool.setuptools]
|
|
121
138
|
include-package-data = true
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import argparse
|
|
2
|
+
|
|
3
|
+
from siliconcompiler import Chip
|
|
4
|
+
from siliconcompiler.tools.opensta import check_library
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
def main():
|
|
8
|
+
parser = argparse.ArgumentParser()
|
|
9
|
+
parser.add_argument('-target', help='Reference target', required=True)
|
|
10
|
+
parser.add_argument('-library', nargs='+', help='Library to check', required=True)
|
|
11
|
+
args = parser.parse_args()
|
|
12
|
+
|
|
13
|
+
chip = Chip('check_libs')
|
|
14
|
+
|
|
15
|
+
chip.node('check_lib', 'check', check_library)
|
|
16
|
+
chip.set('option', 'flow', 'check_lib')
|
|
17
|
+
chip.set('option', 'clean', True)
|
|
18
|
+
|
|
19
|
+
target = chip._load_module(args.target)
|
|
20
|
+
chip.use(target)
|
|
21
|
+
|
|
22
|
+
chip.unset('asic', 'logiclib')
|
|
23
|
+
|
|
24
|
+
for lib in args.library:
|
|
25
|
+
mod = chip._load_module(lib)
|
|
26
|
+
|
|
27
|
+
libraries = mod.setup()
|
|
28
|
+
if not isinstance(libraries, (list, tuple)):
|
|
29
|
+
libraries = [libraries]
|
|
30
|
+
|
|
31
|
+
for library in libraries:
|
|
32
|
+
if library.design.startswith('lambdalib_'):
|
|
33
|
+
continue
|
|
34
|
+
chip.use(library)
|
|
35
|
+
chip.add('asic', 'logiclib', library.design)
|
|
36
|
+
|
|
37
|
+
chip.run()
|
|
38
|
+
|
|
39
|
+
return 0
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
if __name__ == "__main__":
|
|
43
|
+
main()
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
from siliconcompiler.apps import sc_dashboard
|
|
2
|
+
from siliconcompiler.apps import sc_install
|
|
3
|
+
from siliconcompiler.apps import sc_issue
|
|
4
|
+
from siliconcompiler.apps import sc_remote
|
|
5
|
+
from siliconcompiler.apps import sc_server
|
|
6
|
+
from siliconcompiler.apps import sc_show
|
|
7
|
+
from siliconcompiler.apps import sc
|
|
8
|
+
from siliconcompiler.apps import smake
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
def get_apps():
|
|
12
|
+
'''
|
|
13
|
+
Returns a dict of builtin apps
|
|
14
|
+
'''
|
|
15
|
+
return {
|
|
16
|
+
module.__name__.split(".")[-1]: module for module in (
|
|
17
|
+
sc_dashboard,
|
|
18
|
+
sc_install,
|
|
19
|
+
sc_issue,
|
|
20
|
+
sc_remote,
|
|
21
|
+
sc_server,
|
|
22
|
+
sc_show,
|
|
23
|
+
sc,
|
|
24
|
+
smake
|
|
25
|
+
)
|
|
26
|
+
}
|
|
@@ -126,7 +126,7 @@ def _recommended_tool_groups(tools):
|
|
|
126
126
|
groups = {
|
|
127
127
|
"asic": {"surelog", "sv2v", "yosys", "openroad", "klayout"},
|
|
128
128
|
"fpga": {"surelog", "sv2v", "yosys", "vpr"},
|
|
129
|
-
"digital-simulation": {"verilator", "icarus"},
|
|
129
|
+
"digital-simulation": {"verilator", "icarus", "gtkwave"},
|
|
130
130
|
"analog-simulation": {"xyce"}
|
|
131
131
|
}
|
|
132
132
|
|
|
@@ -1,9 +1,18 @@
|
|
|
1
1
|
# Copyright 2024 Silicon Compiler Authors. All Rights Reserved.
|
|
2
2
|
|
|
3
3
|
# Standard Modules
|
|
4
|
+
import base64
|
|
5
|
+
import io
|
|
6
|
+
import json
|
|
7
|
+
import gzip
|
|
4
8
|
import os
|
|
5
9
|
import stat
|
|
6
10
|
import sys
|
|
11
|
+
import tarfile
|
|
12
|
+
import tempfile
|
|
13
|
+
import textwrap
|
|
14
|
+
|
|
15
|
+
from datetime import datetime
|
|
7
16
|
|
|
8
17
|
import siliconcompiler
|
|
9
18
|
from siliconcompiler.apps._common import UNSET_DESIGN
|
|
@@ -11,6 +20,26 @@ from siliconcompiler import SiliconCompilerError
|
|
|
11
20
|
from siliconcompiler import utils
|
|
12
21
|
|
|
13
22
|
|
|
23
|
+
def make_bytes(data):
|
|
24
|
+
if isinstance(data, bytes):
|
|
25
|
+
return data
|
|
26
|
+
return data.encode('utf-8')
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
def compress(data):
|
|
30
|
+
return gzip.compress(make_bytes(data))
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
def convert_base64(data):
|
|
34
|
+
return base64.b64encode(make_bytes(data))
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
def wrap_text(data):
|
|
38
|
+
if isinstance(data, bytes):
|
|
39
|
+
data = data.decode('utf-8')
|
|
40
|
+
return textwrap.wrap(data)
|
|
41
|
+
|
|
42
|
+
|
|
14
43
|
###########################
|
|
15
44
|
def main():
|
|
16
45
|
progname = "summarize"
|
|
@@ -25,9 +54,10 @@ def main():
|
|
|
25
54
|
|
|
26
55
|
# Read command-line inputs and generate Chip objects to run the flow on.
|
|
27
56
|
try:
|
|
28
|
-
|
|
29
|
-
'metavar': '<
|
|
30
|
-
'help': '
|
|
57
|
+
file_arg = {
|
|
58
|
+
'metavar': '<file>',
|
|
59
|
+
'help': 'Path to generate replay file to.',
|
|
60
|
+
'default': 'replay.sh',
|
|
31
61
|
'sc_print': True
|
|
32
62
|
}
|
|
33
63
|
args = chip.create_cmdline(
|
|
@@ -37,7 +67,7 @@ def main():
|
|
|
37
67
|
'-jobname',
|
|
38
68
|
'-loglevel'],
|
|
39
69
|
additional_args={
|
|
40
|
-
'-
|
|
70
|
+
'-file': file_arg
|
|
41
71
|
})
|
|
42
72
|
except SiliconCompilerError:
|
|
43
73
|
return 1
|
|
@@ -93,40 +123,68 @@ def main():
|
|
|
93
123
|
for tool, version in tools.items():
|
|
94
124
|
print(f" {os.path.basename(tool):<{tool_len}}: {', '.join(version)}")
|
|
95
125
|
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
126
|
+
path = os.path.abspath(args['file'])
|
|
127
|
+
os.makedirs(os.path.dirname(path), exist_ok=True)
|
|
128
|
+
|
|
129
|
+
starttimes = set()
|
|
130
|
+
for starttime, step, index in chip.schema._getvals('history', jobname, 'record', 'starttime'):
|
|
131
|
+
starttimes.add(datetime.strptime(starttime, '%Y-%m-%d %H:%M:%S'))
|
|
132
|
+
starttime = min(starttimes).strftime('%Y-%m-%d %H:%M:%S')
|
|
133
|
+
|
|
134
|
+
with io.StringIO() as fd:
|
|
135
|
+
fd.write(utils.get_file_template('replay/requirements.txt').render(
|
|
136
|
+
design=chip.design,
|
|
137
|
+
jobname=jobname,
|
|
138
|
+
date=starttime,
|
|
139
|
+
pkgs=pythonpackages
|
|
140
|
+
))
|
|
141
|
+
fd.flush()
|
|
142
|
+
requirements_file = fd.getvalue()
|
|
143
|
+
|
|
144
|
+
with tempfile.TemporaryDirectory() as collect:
|
|
145
|
+
chip.collect(directory=collect, verbose=True, exclude_packages=['siliconcompiler'])
|
|
146
|
+
|
|
147
|
+
with io.BytesIO() as fd:
|
|
148
|
+
with tarfile.open(fileobj=fd, mode='w:gz') as tar:
|
|
149
|
+
tar.add(collect, arcname='')
|
|
150
|
+
|
|
151
|
+
fd.flush()
|
|
152
|
+
collect_files = convert_base64(fd.getvalue())
|
|
153
|
+
|
|
154
|
+
with io.StringIO() as fd:
|
|
155
|
+
fd.write(utils.get_file_template('replay/replay.py.j2').render(
|
|
156
|
+
design=chip.design,
|
|
157
|
+
jobname=jobname,
|
|
158
|
+
date=starttime,
|
|
159
|
+
src_file=wrap_text(collect_files),
|
|
160
|
+
tool_versions=sorted(tool_versions)
|
|
161
|
+
))
|
|
162
|
+
fd.flush()
|
|
163
|
+
script = convert_base64(compress(fd.getvalue()))
|
|
164
|
+
|
|
165
|
+
manifest = convert_base64(compress(json.dumps(chip.schema.cfg, indent=2)))
|
|
166
|
+
|
|
167
|
+
tool_info = []
|
|
168
|
+
for tool, version in tools.items():
|
|
169
|
+
tool_info.append(f"{os.path.basename(tool):<{tool_len}}: {', '.join(version)}")
|
|
170
|
+
|
|
171
|
+
description = f"Replay for {chip.design} / {jobname}\nRun on: {starttime}"
|
|
172
|
+
|
|
173
|
+
with open(path, 'w', encoding='utf-8') as wf:
|
|
174
|
+
wf.write(utils.get_file_template('replay/setup.sh').render(
|
|
175
|
+
design=chip.design,
|
|
176
|
+
jobname=jobname,
|
|
177
|
+
date=starttime,
|
|
178
|
+
description=description,
|
|
179
|
+
pythonversion=pythonversion,
|
|
180
|
+
requirements=requirements_file.splitlines(),
|
|
181
|
+
script=wrap_text(script),
|
|
182
|
+
manifest=wrap_text(manifest),
|
|
183
|
+
tools=tool_info
|
|
184
|
+
))
|
|
185
|
+
|
|
186
|
+
permissions = stat.S_IMODE(os.lstat(path).st_mode)
|
|
187
|
+
os.chmod(path, permissions | stat.S_IXUSR)
|
|
130
188
|
|
|
131
189
|
return 0
|
|
132
190
|
|
|
@@ -255,8 +255,13 @@ class Chip:
|
|
|
255
255
|
log_format.append(f'{utils.truncate_text(step, max_step_len): <{max_step_len}}')
|
|
256
256
|
log_format.append(f'{utils.truncate_text(index, max_step_len): >{max_index_len}}')
|
|
257
257
|
|
|
258
|
+
log_formatprefix = "| "
|
|
259
|
+
if loglevel == "quiet":
|
|
260
|
+
log_format = []
|
|
261
|
+
log_formatprefix = ""
|
|
262
|
+
|
|
258
263
|
log_format.append('%(message)s')
|
|
259
|
-
logformat =
|
|
264
|
+
logformat = log_formatprefix + ' | '.join(log_format)
|
|
260
265
|
|
|
261
266
|
if not self.logger.hasHandlers():
|
|
262
267
|
stream_handler = logging.StreamHandler(stream=sys.stdout)
|
|
@@ -402,19 +407,24 @@ class Chip:
|
|
|
402
407
|
if extra_params is not None and "target" in extra_params:
|
|
403
408
|
if extra_params["target"]:
|
|
404
409
|
# running target command
|
|
405
|
-
# Search order
|
|
410
|
+
# Search order target plugins -> "{name}"
|
|
406
411
|
modules = []
|
|
407
412
|
module = extra_params["target"]
|
|
408
|
-
for
|
|
409
|
-
|
|
410
|
-
if
|
|
411
|
-
modules.append(
|
|
413
|
+
for plugin in utils.get_plugins('target'):
|
|
414
|
+
plugin_targets = plugin()
|
|
415
|
+
if module in plugin_targets:
|
|
416
|
+
modules.append(plugin_targets[module])
|
|
417
|
+
|
|
418
|
+
mod = self._load_module(module)
|
|
419
|
+
if mod:
|
|
420
|
+
modules.append(mod)
|
|
412
421
|
|
|
413
422
|
if len(modules) == 0:
|
|
414
423
|
raise SiliconCompilerError(f'Could not find target {module}', chip=self)
|
|
415
424
|
|
|
416
|
-
|
|
417
|
-
|
|
425
|
+
target = modules[0]
|
|
426
|
+
self.use(target)
|
|
427
|
+
extra_params["target"] = target.__name__
|
|
418
428
|
|
|
419
429
|
if extra_params is not None and "use" in extra_params:
|
|
420
430
|
if extra_params["use"]:
|
|
@@ -490,6 +500,9 @@ class Chip:
|
|
|
490
500
|
'dependency-caching-rebase')
|
|
491
501
|
"""
|
|
492
502
|
|
|
503
|
+
if os.path.isfile(path):
|
|
504
|
+
path = os.path.dirname(os.path.abspath(path))
|
|
505
|
+
|
|
493
506
|
preset_path = self.get('package', 'source', name, 'path')
|
|
494
507
|
preset_ref = self.get('package', 'source', name, 'ref')
|
|
495
508
|
if preset_path and preset_path != path or preset_ref and preset_ref != ref:
|
|
@@ -975,7 +988,7 @@ class Chip:
|
|
|
975
988
|
self.logger.debug(f'Setting {keypath} to {value}')
|
|
976
989
|
|
|
977
990
|
# Special case to ensure loglevel is updated ASAP
|
|
978
|
-
if keypath ==
|
|
991
|
+
if tuple(keypath) == ('option', 'loglevel') and field == 'value' and \
|
|
979
992
|
step == self.get('arg', 'step') and index == self.get('arg', 'index'):
|
|
980
993
|
self.logger.setLevel(schema_utils.translate_loglevel(value))
|
|
981
994
|
|
|
@@ -1074,6 +1087,54 @@ class Chip:
|
|
|
1074
1087
|
except (ValueError, TypeError) as e:
|
|
1075
1088
|
self.error(str(e))
|
|
1076
1089
|
|
|
1090
|
+
def import_flist(self, filename, package=None):
|
|
1091
|
+
'''
|
|
1092
|
+
Add input files, include directories, and defines from an flist
|
|
1093
|
+
|
|
1094
|
+
Args:
|
|
1095
|
+
filename (path): Path to flist file
|
|
1096
|
+
package (str): name of package
|
|
1097
|
+
'''
|
|
1098
|
+
|
|
1099
|
+
if package:
|
|
1100
|
+
filename = os.path.join(sc_package.path(self, package), filename)
|
|
1101
|
+
|
|
1102
|
+
if not os.path.isfile(filename):
|
|
1103
|
+
raise FileNotFoundError(filename)
|
|
1104
|
+
|
|
1105
|
+
package_name = f'flist-{os.path.basename(filename)}'
|
|
1106
|
+
package_dir = os.path.dirname(os.path.abspath(filename))
|
|
1107
|
+
|
|
1108
|
+
def __make_path(rel, path):
|
|
1109
|
+
path = utils._resolve_env_vars(self, path)
|
|
1110
|
+
if os.path.isabs(path):
|
|
1111
|
+
if path.startswith(rel):
|
|
1112
|
+
return os.path.relpath(path, rel), package_name
|
|
1113
|
+
else:
|
|
1114
|
+
return path, None
|
|
1115
|
+
return path, package_name
|
|
1116
|
+
|
|
1117
|
+
self.register_source(
|
|
1118
|
+
package_name,
|
|
1119
|
+
path=package_dir)
|
|
1120
|
+
with utils.sc_open(filename) as f:
|
|
1121
|
+
for line in f:
|
|
1122
|
+
line = line.strip()
|
|
1123
|
+
if not line:
|
|
1124
|
+
continue
|
|
1125
|
+
if line.startswith("//"):
|
|
1126
|
+
continue
|
|
1127
|
+
if line.startswith("+incdir+"):
|
|
1128
|
+
line = line[8:]
|
|
1129
|
+
path, package = __make_path(package_dir, line)
|
|
1130
|
+
self.add('option', 'idir', path, package=package)
|
|
1131
|
+
elif line.startswith("+define+"):
|
|
1132
|
+
line = line[8:]
|
|
1133
|
+
self.add('option', 'define', line)
|
|
1134
|
+
else:
|
|
1135
|
+
path, package = __make_path(package_dir, line)
|
|
1136
|
+
self.input(path, package=package)
|
|
1137
|
+
|
|
1077
1138
|
###########################################################################
|
|
1078
1139
|
def input(self, filename, fileset=None, filetype=None, iomap=None,
|
|
1079
1140
|
step=None, index=None, package=None):
|
|
@@ -2384,7 +2445,7 @@ class Chip:
|
|
|
2384
2445
|
swap('library', lib, 'option', 'library')
|
|
2385
2446
|
|
|
2386
2447
|
########################################################################
|
|
2387
|
-
def collect(self, directory=None, verbose=True, whitelist=None):
|
|
2448
|
+
def collect(self, directory=None, verbose=True, whitelist=None, exclude_packages=None):
|
|
2388
2449
|
'''
|
|
2389
2450
|
Collects files found in the configuration dictionary and places
|
|
2390
2451
|
them in inputs/. The function only copies in files that have the 'copy'
|
|
@@ -2402,6 +2463,8 @@ class Chip:
|
|
|
2402
2463
|
whitelist (list[path]): List of directories that are allowed to be
|
|
2403
2464
|
collected. If a directory is is found that is not on this list
|
|
2404
2465
|
a RuntimeError will be raised.
|
|
2466
|
+
package_filter (list[str]): List of packages to exclude from
|
|
2467
|
+
collection.
|
|
2405
2468
|
'''
|
|
2406
2469
|
|
|
2407
2470
|
if not directory:
|
|
@@ -2414,6 +2477,9 @@ class Chip:
|
|
|
2414
2477
|
if verbose:
|
|
2415
2478
|
self.logger.info('Collecting input sources')
|
|
2416
2479
|
|
|
2480
|
+
if not exclude_packages:
|
|
2481
|
+
exclude_packages = []
|
|
2482
|
+
|
|
2417
2483
|
dirs = {}
|
|
2418
2484
|
files = {}
|
|
2419
2485
|
|
|
@@ -2453,6 +2519,8 @@ class Chip:
|
|
|
2453
2519
|
if not package:
|
|
2454
2520
|
# Ensure package is an empty string
|
|
2455
2521
|
package = ''
|
|
2522
|
+
if package in exclude_packages:
|
|
2523
|
+
continue
|
|
2456
2524
|
if is_dir:
|
|
2457
2525
|
dirs[(package, path)] = abspath
|
|
2458
2526
|
else:
|
|
@@ -3135,6 +3203,7 @@ class Chip:
|
|
|
3135
3203
|
sc_step = self.get('arg', 'step')
|
|
3136
3204
|
sc_index = self.get('arg', 'index')
|
|
3137
3205
|
sc_job = self.get('option', 'jobname')
|
|
3206
|
+
flow = self.get('option', 'flow')
|
|
3138
3207
|
|
|
3139
3208
|
has_filename = filename is not None
|
|
3140
3209
|
# Finding last layout if no argument specified
|
|
@@ -3145,14 +3214,15 @@ class Chip:
|
|
|
3145
3214
|
if sc_step and sc_index:
|
|
3146
3215
|
search_nodes.append((sc_step, sc_index))
|
|
3147
3216
|
elif sc_step:
|
|
3148
|
-
for check_step, check_index in nodes_to_execute(self,
|
|
3217
|
+
for check_step, check_index in nodes_to_execute(self, flow):
|
|
3149
3218
|
if sc_step == check_step:
|
|
3150
3219
|
search_nodes.append((check_step, check_index))
|
|
3151
3220
|
else:
|
|
3152
|
-
|
|
3153
|
-
|
|
3154
|
-
|
|
3155
|
-
|
|
3221
|
+
if flow is not None:
|
|
3222
|
+
for nodes in _get_flowgraph_execution_order(self,
|
|
3223
|
+
flow,
|
|
3224
|
+
reverse=True):
|
|
3225
|
+
search_nodes.extend(nodes)
|
|
3156
3226
|
|
|
3157
3227
|
for ext in self._showtools.keys():
|
|
3158
3228
|
if extension and extension != ext:
|