siliconcompiler 0.30.0__tar.gz → 0.31.0__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.
Files changed (480) hide show
  1. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/Changes +22 -0
  2. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/PKG-INFO +7 -7
  3. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/pyproject.toml +6 -6
  4. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/_metadata.py +1 -1
  5. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/apps/sc_install.py +7 -3
  6. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/apps/sc_remote.py +1 -3
  7. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/core.py +23 -8
  8. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/flowgraph.py +11 -23
  9. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/package.py +1 -1
  10. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/remote/schema.py +9 -8
  11. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/report/report.py +4 -3
  12. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/scheduler/__init__.py +109 -104
  13. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/scheduler/docker_runner.py +1 -1
  14. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/scheduler/send_messages.py +1 -1
  15. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/schema/schema_cfg.py +367 -357
  16. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/schema/schema_obj.py +32 -18
  17. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/schema/utils.py +19 -0
  18. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/sphinx_ext/schemagen.py +3 -1
  19. siliconcompiler-0.31.0/siliconcompiler/templates/replay/replay.sh.j2 +92 -0
  20. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/_common/__init__.py +8 -2
  21. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/_common/asic.py +1 -1
  22. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/klayout/export.py +5 -0
  23. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/klayout/klayout.py +18 -1
  24. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/klayout/klayout_export.py +4 -1
  25. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/klayout/klayout_operations.py +5 -2
  26. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/klayout/klayout_utils.py +23 -0
  27. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/klayout/operations.py +5 -0
  28. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/magic/magic.py +1 -1
  29. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/_apr.py +14 -3
  30. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/antenna_repair.py +2 -1
  31. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/clock_tree_synthesis.py +2 -1
  32. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/detailed_placement.py +2 -1
  33. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/detailed_route.py +8 -0
  34. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/fillercell_insertion.py +2 -1
  35. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/global_placement.py +2 -1
  36. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/pin_placement.py +2 -1
  37. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/repair_design.py +2 -1
  38. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/repair_timing.py +2 -1
  39. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/apr/preamble.tcl +6 -0
  40. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/apr/sc_clock_tree_synthesis.tcl +1 -0
  41. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/apr/sc_detailed_route.tcl +8 -0
  42. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/apr/sc_global_placement.tcl +1 -0
  43. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/apr/sc_global_route.tcl +2 -0
  44. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/apr/sc_macro_placement.tcl +5 -0
  45. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/apr/sc_power_grid.tcl +1 -0
  46. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/apr/sc_repair_design.tcl +1 -0
  47. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/apr/sc_repair_timing.tcl +3 -0
  48. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/common/procs.tcl +29 -12
  49. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/common/reports.tcl +15 -0
  50. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/common/write_images.tcl +28 -0
  51. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/yosys/__init__.py +7 -0
  52. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/yosys/sc_syn.tcl +33 -24
  53. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/yosys/syn_asic.py +27 -0
  54. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/yosys/syn_asic.tcl +27 -0
  55. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/_tools.json +14 -2
  56. siliconcompiler-0.31.0/siliconcompiler/toolscripts/rhel8/install-yosys-moosic.sh +17 -0
  57. siliconcompiler-0.31.0/siliconcompiler/toolscripts/rhel8/install-yosys-slang.sh +22 -0
  58. siliconcompiler-0.31.0/siliconcompiler/toolscripts/rhel9/install-yosys-moosic.sh +17 -0
  59. siliconcompiler-0.31.0/siliconcompiler/toolscripts/rhel9/install-yosys-slang.sh +22 -0
  60. siliconcompiler-0.31.0/siliconcompiler/toolscripts/ubuntu20/install-yosys-moosic.sh +17 -0
  61. siliconcompiler-0.31.0/siliconcompiler/toolscripts/ubuntu20/install-yosys-slang.sh +22 -0
  62. siliconcompiler-0.31.0/siliconcompiler/toolscripts/ubuntu22/install-yosys-moosic.sh +17 -0
  63. siliconcompiler-0.31.0/siliconcompiler/toolscripts/ubuntu22/install-yosys-slang.sh +22 -0
  64. siliconcompiler-0.31.0/siliconcompiler/toolscripts/ubuntu24/install-yosys-moosic.sh +17 -0
  65. siliconcompiler-0.31.0/siliconcompiler/toolscripts/ubuntu24/install-yosys-slang.sh +22 -0
  66. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/utils/__init__.py +33 -5
  67. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler.egg-info/PKG-INFO +7 -7
  68. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler.egg-info/SOURCES.txt +11 -0
  69. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler.egg-info/requires.txt +6 -6
  70. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/.dockerignore +0 -0
  71. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/.flake8 +0 -0
  72. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/.gitattributes +0 -0
  73. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/.gitignore +0 -0
  74. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/.readthedocs.yaml +0 -0
  75. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/CONTRIBUTING.md +0 -0
  76. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/LICENSE +0 -0
  77. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/MANIFEST.in +0 -0
  78. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/README.md +0 -0
  79. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/SECURITY.md +0 -0
  80. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/scripts/.gitignore +0 -0
  81. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/scripts/check_library.py +0 -0
  82. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/scripts/profile_sc.py +0 -0
  83. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/scripts/report_library.py +0 -0
  84. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/setup.cfg +0 -0
  85. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/__init__.py +0 -0
  86. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/__main__.py +0 -0
  87. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/_common.py +0 -0
  88. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/apps/__init__.py +0 -0
  89. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/apps/_common.py +0 -0
  90. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/apps/sc.py +0 -0
  91. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/apps/sc_dashboard.py +0 -0
  92. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/apps/sc_issue.py +0 -0
  93. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/apps/sc_server.py +0 -0
  94. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/apps/sc_show.py +0 -0
  95. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/apps/smake.py +0 -0
  96. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/apps/utils/replay.py +0 -0
  97. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/apps/utils/summarize.py +0 -0
  98. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/checklists/__init__.py +0 -0
  99. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/checklists/oh_tapeout.py +0 -0
  100. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/data/RobotoMono/LICENSE.txt +0 -0
  101. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/data/RobotoMono/RobotoMono-Regular.ttf +0 -0
  102. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/data/RobotoMono/__init__.py +0 -0
  103. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/data/__init__.py +0 -0
  104. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/data/heartbeat.v +0 -0
  105. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/data/logo.png +0 -0
  106. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/flows/__init__.py +0 -0
  107. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/flows/_common.py +0 -0
  108. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/flows/asicflow.py +0 -0
  109. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/flows/asictopflow.py +0 -0
  110. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/flows/drcflow.py +0 -0
  111. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/flows/dvflow.py +0 -0
  112. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/flows/fpgaflow.py +0 -0
  113. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/flows/generate_openroad_rcx.py +0 -0
  114. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/flows/interposerflow.py +0 -0
  115. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/flows/lintflow.py +0 -0
  116. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/flows/screenshotflow.py +0 -0
  117. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/flows/showflow.py +0 -0
  118. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/flows/signoffflow.py +0 -0
  119. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/flows/synflow.py +0 -0
  120. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/fpgas/__init__.py +0 -0
  121. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/fpgas/lattice_ice40.py +0 -0
  122. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/fpgas/vpr_example.py +0 -0
  123. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/issue.py +0 -0
  124. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/libs/__init__.py +0 -0
  125. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/optimizer/__init__.py +0 -0
  126. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/optimizer/vizier.py +0 -0
  127. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/pdks/__init__.py +0 -0
  128. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/remote/__init__.py +0 -0
  129. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/remote/client.py +0 -0
  130. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/remote/server.py +0 -0
  131. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/remote/server_schema/__init__.py +0 -0
  132. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/remote/server_schema/requests/__init__.py +0 -0
  133. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/remote/server_schema/requests/cancel_job.json +0 -0
  134. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/remote/server_schema/requests/check_progress.json +0 -0
  135. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/remote/server_schema/requests/check_server.json +0 -0
  136. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/remote/server_schema/requests/delete_job.json +0 -0
  137. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/remote/server_schema/requests/get_results.json +0 -0
  138. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/remote/server_schema/requests/remote_run.json +0 -0
  139. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/remote/server_schema/responses/__init__.py +0 -0
  140. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/remote/server_schema/responses/cancel_job.json +0 -0
  141. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/remote/server_schema/responses/check_progress.json +0 -0
  142. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/remote/server_schema/responses/check_server.json +0 -0
  143. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/remote/server_schema/responses/delete_job.json +0 -0
  144. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/remote/server_schema/responses/get_results.json +0 -0
  145. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/remote/server_schema/responses/remote_run.json +0 -0
  146. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/report/__init__.py +0 -0
  147. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/report/dashboard/__init__.py +0 -0
  148. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/report/dashboard/components/__init__.py +0 -0
  149. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/report/dashboard/components/flowgraph.py +0 -0
  150. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/report/dashboard/components/graph.py +0 -0
  151. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/report/dashboard/layouts/__init__.py +0 -0
  152. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/report/dashboard/layouts/_common.py +0 -0
  153. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/report/dashboard/layouts/vertical_flowgraph.py +0 -0
  154. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/report/dashboard/layouts/vertical_flowgraph_node_tab.py +0 -0
  155. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/report/dashboard/layouts/vertical_flowgraph_sac_tabs.py +0 -0
  156. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/report/dashboard/state.py +0 -0
  157. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/report/dashboard/utils/__init__.py +0 -0
  158. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/report/dashboard/utils/file_utils.py +0 -0
  159. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/report/dashboard/viewer.py +0 -0
  160. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/report/html_report.py +0 -0
  161. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/report/summary_image.py +0 -0
  162. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/report/summary_table.py +0 -0
  163. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/report/utils.py +0 -0
  164. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/scheduler/run_node.py +0 -0
  165. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/scheduler/slurm.py +0 -0
  166. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/scheduler/validation/__init__.py +0 -0
  167. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/scheduler/validation/email_credentials.json +0 -0
  168. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/schema/__init__.py +0 -0
  169. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/sphinx_ext/__init__.py +0 -0
  170. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/sphinx_ext/dynamicgen.py +0 -0
  171. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/sphinx_ext/utils.py +0 -0
  172. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/targets/__init__.py +0 -0
  173. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/targets/asap7_demo.py +0 -0
  174. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/targets/asic_demo.py +0 -0
  175. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/targets/fpgaflow_demo.py +0 -0
  176. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/targets/freepdk45_demo.py +0 -0
  177. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/targets/gf180_demo.py +0 -0
  178. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/targets/ihp130_demo.py +0 -0
  179. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/targets/interposer_demo.py +0 -0
  180. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/targets/skywater130_demo.py +0 -0
  181. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/templates/__init__.py +0 -0
  182. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/templates/email/__init__.py +0 -0
  183. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/templates/email/general.j2 +0 -0
  184. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/templates/email/summary.j2 +0 -0
  185. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/templates/issue/README.txt +0 -0
  186. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/templates/issue/__init__.py +0 -0
  187. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/templates/issue/run.sh +0 -0
  188. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/templates/replay/replay.py.j2 +0 -0
  189. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/templates/replay/requirements.txt +0 -0
  190. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/templates/replay/setup.sh +0 -0
  191. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/templates/report/__init__.py +0 -0
  192. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/templates/report/bootstrap.min.css +0 -0
  193. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/templates/report/bootstrap.min.js +0 -0
  194. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/templates/report/bootstrap_LICENSE.md +0 -0
  195. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/templates/report/sc_report.j2 +0 -0
  196. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/templates/slurm/__init__.py +0 -0
  197. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/templates/slurm/run.sh +0 -0
  198. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/templates/tcl/__init__.py +0 -0
  199. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/templates/tcl/manifest.tcl.j2 +0 -0
  200. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/__init__.py +0 -0
  201. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/_common/asic_clock.py +0 -0
  202. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/_common/sdc/__init__.py +0 -0
  203. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/_common/sdc/sc_constraints.sdc +0 -0
  204. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/_common/tcl/__init__.py +0 -0
  205. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/_common/tcl/sc_pin_constraints.tcl +0 -0
  206. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/bambu/__init__.py +0 -0
  207. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/bambu/convert.py +0 -0
  208. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/bluespec/__init__.py +0 -0
  209. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/bluespec/convert.py +0 -0
  210. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/builtin/__init__.py +0 -0
  211. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/builtin/_common.py +0 -0
  212. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/builtin/builtin.py +0 -0
  213. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/builtin/concatenate.py +0 -0
  214. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/builtin/join.py +0 -0
  215. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/builtin/maximum.py +0 -0
  216. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/builtin/minimum.py +0 -0
  217. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/builtin/mux.py +0 -0
  218. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/builtin/nop.py +0 -0
  219. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/builtin/verify.py +0 -0
  220. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/chisel/SCDriver.scala +0 -0
  221. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/chisel/__init__.py +0 -0
  222. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/chisel/build.sbt +0 -0
  223. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/chisel/chisel.py +0 -0
  224. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/chisel/convert.py +0 -0
  225. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/execute/__init__.py +0 -0
  226. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/execute/exec_input.py +0 -0
  227. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/execute/execute.py +0 -0
  228. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/genfasm/__init__.py +0 -0
  229. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/genfasm/bitstream.py +0 -0
  230. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/genfasm/genfasm.py +0 -0
  231. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/ghdl/__init__.py +0 -0
  232. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/ghdl/convert.py +0 -0
  233. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/ghdl/ghdl.py +0 -0
  234. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/graphviz/__init__.py +0 -0
  235. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/graphviz/screenshot.py +0 -0
  236. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/graphviz/show.py +0 -0
  237. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/gtkwave/__init__.py +0 -0
  238. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/gtkwave/scripts/sc_show.tcl +0 -0
  239. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/gtkwave/show.py +0 -0
  240. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/icarus/__init__.py +0 -0
  241. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/icarus/compile.py +0 -0
  242. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/icarus/icarus.py +0 -0
  243. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/icepack/__init__.py +0 -0
  244. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/icepack/bitstream.py +0 -0
  245. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/icepack/icepack.py +0 -0
  246. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/klayout/__init__.py +0 -0
  247. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/klayout/convert_drc_db.py +0 -0
  248. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/klayout/drc.py +0 -0
  249. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/klayout/klayout_convert_drc_db.py +0 -0
  250. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/klayout/klayout_show.py +0 -0
  251. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/klayout/screenshot.py +0 -0
  252. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/klayout/show.py +0 -0
  253. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/magic/__init__.py +0 -0
  254. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/magic/drc.py +0 -0
  255. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/magic/extspice.py +0 -0
  256. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/magic/sc_drc.tcl +0 -0
  257. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/magic/sc_extspice.tcl +0 -0
  258. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/magic/sc_magic.tcl +0 -0
  259. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/montage/__init__.py +0 -0
  260. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/montage/montage.py +0 -0
  261. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/montage/tile.py +0 -0
  262. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/netgen/__init__.py +0 -0
  263. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/netgen/count_lvs.py +0 -0
  264. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/netgen/lvs.py +0 -0
  265. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/netgen/netgen.py +0 -0
  266. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/netgen/sc_lvs.tcl +0 -0
  267. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/nextpnr/__init__.py +0 -0
  268. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/nextpnr/apr.py +0 -0
  269. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/nextpnr/nextpnr.py +0 -0
  270. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/__init__.py +0 -0
  271. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/endcap_tapcell_insertion.py +0 -0
  272. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/fillmetal_insertion.py +0 -0
  273. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/global_route.py +0 -0
  274. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/init_floorplan.py +0 -0
  275. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/macro_placement.py +0 -0
  276. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/metrics.py +0 -0
  277. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/power_grid.py +0 -0
  278. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/rcx_bench.py +0 -0
  279. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/rcx_extract.py +0 -0
  280. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/rdlroute.py +0 -0
  281. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/screenshot.py +0 -0
  282. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/apr/postamble.tcl +0 -0
  283. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/apr/sc_antenna_repair.tcl +0 -0
  284. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/apr/sc_detailed_placement.tcl +0 -0
  285. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/apr/sc_endcap_tapcell_insertion.tcl +0 -0
  286. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/apr/sc_fillercell_insertion.tcl +0 -0
  287. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/apr/sc_fillmetal_insertion.tcl +0 -0
  288. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/apr/sc_init_floorplan.tcl +0 -0
  289. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/apr/sc_metrics.tcl +0 -0
  290. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/apr/sc_pin_placement.tcl +0 -0
  291. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/apr/sc_write_data.tcl +0 -0
  292. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/common/debugging.tcl +0 -0
  293. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/common/read_input_files.tcl +0 -0
  294. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/common/read_liberty.tcl +0 -0
  295. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/common/read_timing_constraints.tcl +0 -0
  296. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/common/screenshot.tcl +0 -0
  297. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/common/write_data.tcl +0 -0
  298. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/common/write_data_physical.tcl +0 -0
  299. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/common/write_data_timing.tcl +0 -0
  300. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/rcx/sc_rcx_bench.tcl +0 -0
  301. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/rcx/sc_rcx_extract.tcl +0 -0
  302. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/sc_rcx.tcl +0 -0
  303. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/sc_rdlroute.tcl +0 -0
  304. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/scripts/sc_show.tcl +0 -0
  305. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/show.py +0 -0
  306. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/templates/__init__.py +0 -0
  307. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/templates/pex.tcl +0 -0
  308. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/openroad/write_data.py +0 -0
  309. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/opensta/__init__.py +0 -0
  310. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/opensta/check_library.py +0 -0
  311. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/opensta/report_libraries.py +0 -0
  312. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/opensta/scripts/__init__.py +0 -0
  313. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/opensta/scripts/sc_check_library.tcl +0 -0
  314. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/opensta/scripts/sc_procs.tcl +0 -0
  315. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/opensta/scripts/sc_report_libraries.tcl +0 -0
  316. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/opensta/scripts/sc_timing.tcl +0 -0
  317. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/opensta/timing.py +0 -0
  318. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/slang/__init__.py +0 -0
  319. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/slang/elaborate.py +0 -0
  320. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/slang/lint.py +0 -0
  321. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/surelog/__init__.py +0 -0
  322. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/surelog/parse.py +0 -0
  323. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/surelog/templates/__init__.py +0 -0
  324. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/surelog/templates/output.v +0 -0
  325. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/sv2v/__init__.py +0 -0
  326. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/sv2v/convert.py +0 -0
  327. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/sv2v/sv2v.py +0 -0
  328. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/template/__init__.py +0 -0
  329. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/template/template.py +0 -0
  330. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/verilator/__init__.py +0 -0
  331. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/verilator/compile.py +0 -0
  332. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/verilator/lint.py +0 -0
  333. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/verilator/parse.py +0 -0
  334. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/verilator/verilator.py +0 -0
  335. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/vivado/__init__.py +0 -0
  336. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/vivado/bitstream.py +0 -0
  337. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/vivado/place.py +0 -0
  338. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/vivado/route.py +0 -0
  339. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/vivado/scripts/__init__.py +0 -0
  340. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/vivado/scripts/sc_bitstream.tcl +0 -0
  341. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/vivado/scripts/sc_place.tcl +0 -0
  342. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/vivado/scripts/sc_route.tcl +0 -0
  343. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/vivado/scripts/sc_run.tcl +0 -0
  344. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/vivado/scripts/sc_syn_fpga.tcl +0 -0
  345. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/vivado/syn_fpga.py +0 -0
  346. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/vivado/vivado.py +0 -0
  347. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/vpr/__init__.py +0 -0
  348. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/vpr/_json_constraint.py +0 -0
  349. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/vpr/_xml_constraint.py +0 -0
  350. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/vpr/place.py +0 -0
  351. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/vpr/route.py +0 -0
  352. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/vpr/screenshot.py +0 -0
  353. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/vpr/show.py +0 -0
  354. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/vpr/vpr.py +0 -0
  355. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/xdm/__init__.py +0 -0
  356. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/xdm/convert.py +0 -0
  357. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/xyce/__init__.py +0 -0
  358. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/xyce/simulate.py +0 -0
  359. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/yosys/lec.py +0 -0
  360. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/yosys/prepareLib.py +0 -0
  361. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/yosys/procs.tcl +0 -0
  362. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/yosys/sc_lec.tcl +0 -0
  363. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/yosys/sc_screenshot.tcl +0 -0
  364. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/yosys/screenshot.py +0 -0
  365. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/yosys/syn_fpga.py +0 -0
  366. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/yosys/syn_fpga.tcl +0 -0
  367. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/yosys/syn_strategies.tcl +0 -0
  368. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/yosys/techmaps/__init__.py +0 -0
  369. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/yosys/techmaps/lcu_kogge_stone.v +0 -0
  370. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/yosys/templates/__init__.py +0 -0
  371. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/tools/yosys/templates/abc.const +0 -0
  372. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/_tools.py +0 -0
  373. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel8/install-chisel.sh +0 -0
  374. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel8/install-ghdl.sh +0 -0
  375. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel8/install-icarus.sh +0 -0
  376. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel8/install-klayout.sh +0 -0
  377. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel8/install-magic.sh +0 -0
  378. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel8/install-montage.sh +0 -0
  379. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel8/install-netgen.sh +0 -0
  380. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel8/install-slang.sh +0 -0
  381. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel8/install-surelog.sh +0 -0
  382. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel8/install-sv2v.sh +0 -0
  383. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel8/install-verible.sh +0 -0
  384. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel8/install-verilator.sh +0 -0
  385. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel8/install-xyce.sh +0 -0
  386. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel8/install-yosys.sh +0 -0
  387. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel9/install-chisel.sh +0 -0
  388. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel9/install-ghdl.sh +0 -0
  389. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel9/install-gtkwave.sh +0 -0
  390. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel9/install-icarus.sh +0 -0
  391. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel9/install-klayout.sh +0 -0
  392. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel9/install-magic.sh +0 -0
  393. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel9/install-montage.sh +0 -0
  394. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel9/install-netgen.sh +0 -0
  395. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel9/install-openroad.sh +0 -0
  396. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel9/install-slang.sh +0 -0
  397. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel9/install-surelog.sh +0 -0
  398. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel9/install-sv2v.sh +0 -0
  399. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel9/install-verible.sh +0 -0
  400. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel9/install-verilator.sh +0 -0
  401. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel9/install-xdm.sh +0 -0
  402. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel9/install-xyce.sh +0 -0
  403. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/rhel9/install-yosys.sh +0 -0
  404. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu20/install-bambu.sh +0 -0
  405. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu20/install-bluespec.sh +0 -0
  406. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu20/install-chisel.sh +0 -0
  407. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu20/install-ghdl.sh +0 -0
  408. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu20/install-gtkwave.sh +0 -0
  409. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu20/install-icarus.sh +0 -0
  410. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu20/install-icepack.sh +0 -0
  411. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu20/install-klayout.sh +0 -0
  412. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu20/install-magic.sh +0 -0
  413. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu20/install-montage.sh +0 -0
  414. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu20/install-netgen.sh +0 -0
  415. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu20/install-nextpnr.sh +0 -0
  416. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu20/install-openroad.sh +0 -0
  417. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu20/install-slang.sh +0 -0
  418. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu20/install-slurm.sh +0 -0
  419. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu20/install-surelog.sh +0 -0
  420. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu20/install-sv2v.sh +0 -0
  421. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu20/install-verible.sh +0 -0
  422. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu20/install-verilator.sh +0 -0
  423. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu20/install-vpr.sh +0 -0
  424. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu20/install-xdm.sh +0 -0
  425. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu20/install-xyce.sh +0 -0
  426. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu20/install-yosys.sh +0 -0
  427. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu22/install-bambu.sh +0 -0
  428. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu22/install-bluespec.sh +0 -0
  429. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu22/install-chisel.sh +0 -0
  430. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu22/install-ghdl.sh +0 -0
  431. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu22/install-gtkwave.sh +0 -0
  432. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu22/install-icarus.sh +0 -0
  433. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu22/install-icepack.sh +0 -0
  434. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu22/install-klayout.sh +0 -0
  435. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu22/install-magic.sh +0 -0
  436. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu22/install-montage.sh +0 -0
  437. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu22/install-netgen.sh +0 -0
  438. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu22/install-nextpnr.sh +0 -0
  439. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu22/install-openroad.sh +0 -0
  440. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu22/install-slang.sh +0 -0
  441. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu22/install-slurm.sh +0 -0
  442. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu22/install-surelog.sh +0 -0
  443. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu22/install-sv2v.sh +0 -0
  444. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu22/install-verible.sh +0 -0
  445. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu22/install-verilator.sh +0 -0
  446. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu22/install-vpr.sh +0 -0
  447. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu22/install-xdm.sh +0 -0
  448. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu22/install-xyce.sh +0 -0
  449. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu22/install-yosys.sh +0 -0
  450. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu24/install-bambu.sh +0 -0
  451. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu24/install-bluespec.sh +0 -0
  452. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu24/install-chisel.sh +0 -0
  453. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu24/install-ghdl.sh +0 -0
  454. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu24/install-gtkwave.sh +0 -0
  455. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu24/install-icarus.sh +0 -0
  456. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu24/install-icepack.sh +0 -0
  457. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu24/install-klayout.sh +0 -0
  458. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu24/install-magic.sh +0 -0
  459. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu24/install-montage.sh +0 -0
  460. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu24/install-netgen.sh +0 -0
  461. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu24/install-nextpnr.sh +0 -0
  462. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu24/install-openroad.sh +0 -0
  463. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu24/install-slang.sh +0 -0
  464. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu24/install-slurm.sh +0 -0
  465. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu24/install-surelog.sh +0 -0
  466. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu24/install-sv2v.sh +0 -0
  467. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu24/install-verible.sh +0 -0
  468. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu24/install-verilator.sh +0 -0
  469. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu24/install-vpr.sh +0 -0
  470. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu24/install-xdm.sh +0 -0
  471. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu24/install-xyce.sh +0 -0
  472. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/toolscripts/ubuntu24/install-yosys.sh +0 -0
  473. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/units.py +0 -0
  474. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/use.py +0 -0
  475. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/utils/asic.py +0 -0
  476. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/utils/logging.py +0 -0
  477. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler/utils/showtools.py +0 -0
  478. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler.egg-info/dependency_links.txt +0 -0
  479. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler.egg-info/entry_points.txt +0 -0
  480. {siliconcompiler-0.30.0 → siliconcompiler-0.31.0}/siliconcompiler.egg-info/top_level.txt +0 -0
@@ -8,6 +8,28 @@ 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.31.0 (2025-03-03)
12
+ =========================================
13
+
14
+ **Major:**
15
+
16
+ * Updated schema to support further advanced packaging.
17
+
18
+
19
+ **Minor:**
20
+
21
+ * Improved the generation of relay files to provide better insight when debugging.
22
+ * Disabled the generation of the html report by default.
23
+ * Fixed the handling of environmental variables to ensure they are all set at the start of the node execution.
24
+ * Made schema fields pernode and scope enums for easier handling.
25
+
26
+
27
+ * Tools:
28
+
29
+ * openroad: added global routing metrics recording.
30
+ * yosys: added support for loading slang and moosic plugins.
31
+
32
+
11
33
  SiliconCompiler 0.30.0 (2025-02-18)
12
34
  =========================================
13
35
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: siliconcompiler
3
- Version: 0.30.0
3
+ Version: 0.31.0
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.12; python_version >= "3.9"
29
+ Requires-Dist: aiohttp==3.11.13; 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
@@ -39,7 +39,7 @@ Requires-Dist: Pillow==10.4.0; python_version <= "3.8"
39
39
  Requires-Dist: Pillow==11.1.0; python_version >= "3.9"
40
40
  Requires-Dist: GitPython==3.1.44
41
41
  Requires-Dist: lambdapdk>=0.1.47
42
- Requires-Dist: PyGithub==2.6.0
42
+ Requires-Dist: PyGithub==2.6.1
43
43
  Requires-Dist: urllib3>=1.26.0
44
44
  Requires-Dist: fasteners==0.19
45
45
  Requires-Dist: fastjsonschema==2.21.1
@@ -48,13 +48,13 @@ Requires-Dist: importlib_metadata; python_version < "3.10"
48
48
  Requires-Dist: sc-surelog==1.84.1
49
49
  Requires-Dist: orjson==3.10.15
50
50
  Requires-Dist: streamlit==1.40.1; python_version <= "3.8"
51
- Requires-Dist: streamlit==1.42.0; python_version >= "3.9" and python_full_version != "3.9.7"
51
+ Requires-Dist: streamlit==1.42.2; 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"
55
55
  Requires-Dist: streamlit-autorefresh==1.0.1; python_full_version != "3.9.7"
56
56
  Provides-Extra: test
57
- Requires-Dist: pytest==8.3.4; extra == "test"
57
+ Requires-Dist: pytest==8.3.5; 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
60
  Requires-Dist: pytest-asyncio==0.24.0; python_version <= "3.8" and extra == "test"
@@ -65,10 +65,10 @@ Requires-Dist: responses==0.25.6; extra == "test"
65
65
  Requires-Dist: PyVirtualDisplay==3.0; extra == "test"
66
66
  Provides-Extra: lint
67
67
  Requires-Dist: flake8==7.1.2; extra == "lint"
68
- Requires-Dist: tclint==0.5.0; extra == "lint"
68
+ Requires-Dist: tclint==0.5.3; extra == "lint"
69
69
  Requires-Dist: codespell==2.4.1; extra == "lint"
70
70
  Provides-Extra: docs
71
- Requires-Dist: Sphinx==8.1.3; extra == "docs"
71
+ Requires-Dist: Sphinx==8.2.3; extra == "docs"
72
72
  Requires-Dist: pip-licenses==5.0.0; extra == "docs"
73
73
  Requires-Dist: pydata-sphinx-theme==0.16.1; extra == "docs"
74
74
  Requires-Dist: sc-leflib>=0.2.0; extra == "docs"
@@ -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.12; python_version >= '3.9'",
36
+ "aiohttp == 3.11.13; python_version >= '3.9'",
37
37
  "requests == 2.32.3",
38
38
  "PyYAML == 6.0.2",
39
39
  "pandas >= 1.1.5",
@@ -46,7 +46,7 @@ dependencies = [
46
46
  "Pillow == 11.1.0; python_version >= '3.9'",
47
47
  "GitPython == 3.1.44",
48
48
  "lambdapdk >= 0.1.47",
49
- "PyGithub == 2.6.0",
49
+ "PyGithub == 2.6.1",
50
50
  "urllib3 >= 1.26.0", # Required for PyGithub
51
51
  "fasteners == 0.19",
52
52
  "fastjsonschema == 2.21.1",
@@ -57,7 +57,7 @@ dependencies = [
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.42.0; python_version >= '3.9' and python_full_version != '3.9.7'",
60
+ "streamlit == 1.42.2; 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'",
@@ -102,7 +102,7 @@ checklists = "siliconcompiler.sphinx_ext:checklists"
102
102
 
103
103
  [project.optional-dependencies]
104
104
  test = [
105
- "pytest == 8.3.4",
105
+ "pytest == 8.3.5",
106
106
  "pytest-xdist == 3.6.1",
107
107
  "pytest-timeout == 2.3.1",
108
108
  "pytest-asyncio == 0.24.0; python_version <= '3.8'",
@@ -114,11 +114,11 @@ test = [
114
114
  ]
115
115
  lint = [
116
116
  "flake8 == 7.1.2",
117
- "tclint == 0.5.0",
117
+ "tclint == 0.5.3",
118
118
  "codespell == 2.4.1"
119
119
  ]
120
120
  docs = [
121
- "Sphinx == 8.1.3",
121
+ "Sphinx == 8.2.3",
122
122
  "pip-licenses == 5.0.0",
123
123
  "pydata-sphinx-theme == 0.16.1",
124
124
  "sc-leflib >= 0.2.0"
@@ -1,5 +1,5 @@
1
1
  # Version number following semver standard.
2
- version = '0.30.0'
2
+ version = '0.31.0'
3
3
 
4
4
  # Default server address for remote runs, if unspecified.
5
5
  default_server = 'https://server.siliconcompiler.com'
@@ -17,7 +17,7 @@ class ChoiceOptional(Container):
17
17
  def __init__(self, choices):
18
18
  super().__init__()
19
19
 
20
- self.__choices = set(choices)
20
+ self.__choices = sorted(set(choices))
21
21
 
22
22
  def __contains__(self, item):
23
23
  if not item:
@@ -30,7 +30,7 @@ class ChoiceOptional(Container):
30
30
 
31
31
  def get_items(self, choices):
32
32
  items = set(choices)
33
- return sorted(list(items))
33
+ return sorted(items)
34
34
 
35
35
 
36
36
  def install_tool(tool, script, build_dir, prefix):
@@ -143,6 +143,10 @@ def _recommended_tool_groups(tools):
143
143
  return filter_groups
144
144
 
145
145
 
146
+ class HelpFormatter(argparse.ArgumentDefaultsHelpFormatter, argparse.RawDescriptionHelpFormatter):
147
+ pass
148
+
149
+
146
150
  def main():
147
151
  progname = "sc-install"
148
152
  description = """
@@ -174,7 +178,7 @@ To system debugging information (this should only be used to debug):
174
178
  parser = argparse.ArgumentParser(
175
179
  prog=progname,
176
180
  description=description,
177
- formatter_class=argparse.ArgumentDefaultsHelpFormatter)
181
+ formatter_class=HelpFormatter)
178
182
 
179
183
  tools = _get_tools_list()
180
184
 
@@ -1,5 +1,4 @@
1
1
  # Copyright 2023 Silicon Compiler Authors. All Rights Reserved.
2
- import copy
3
2
  import os
4
3
  import sys
5
4
 
@@ -157,7 +156,6 @@ To delete a job, use:
157
156
  # in its "check_progress/ until job is done" loop.
158
157
  elif args['reconnect']:
159
158
  # Start from successors of entry nodes, so entry nodes are not fetched from remote.
160
- environment = copy.deepcopy(os.environ)
161
159
  flow = chip.get('option', 'flow')
162
160
  entry_nodes = _get_flowgraph_entry_nodes(chip, flow)
163
161
  for entry_node in entry_nodes:
@@ -177,7 +175,7 @@ To delete a job, use:
177
175
  f'{chip.design}.pkg.json')
178
176
  if os.path.exists(manifest):
179
177
  chip.schema.read_journal(manifest)
180
- _finalize_run(chip, environment)
178
+ _finalize_run(chip)
181
179
 
182
180
  # Summarize the run.
183
181
  chip.summary()
@@ -392,7 +392,7 @@ class Chip:
392
392
  for vals, step, index in self.schema._getvals(*key):
393
393
  if not vals:
394
394
  continue
395
- if self.get(*key, field='pernode') != 'never':
395
+ if not self.get(*key, field='pernode').is_never():
396
396
  if step is None:
397
397
  step = Schema.GLOBAL_KEY
398
398
  if index is None:
@@ -852,7 +852,7 @@ class Chip:
852
852
  strict = self.schema.get('option', 'strict')
853
853
  if field == 'value' and strict:
854
854
  pernode = self.schema.get(*keypath, field='pernode')
855
- if pernode == 'optional' and \
855
+ if pernode == schema_utils.PerNode.OPTIONAL and \
856
856
  (step is None or index is None) and \
857
857
  (Schema.GLOBAL_KEY not in (step, index)): # allow explicit access to global
858
858
  self.error(
@@ -1111,7 +1111,7 @@ class Chip:
1111
1111
  package_dir = os.path.dirname(os.path.abspath(filename))
1112
1112
 
1113
1113
  def __make_path(rel, path):
1114
- path = utils._resolve_env_vars(self, path)
1114
+ path = utils._resolve_env_vars(self, path, None, None)
1115
1115
  if os.path.isabs(path):
1116
1116
  if path.startswith(rel):
1117
1117
  return os.path.relpath(path, rel), package_name
@@ -1282,7 +1282,7 @@ class Chip:
1282
1282
  """
1283
1283
  strict = self.get('option', 'strict')
1284
1284
  pernode = self.get(*keypath, field='pernode')
1285
- if strict and pernode == 'optional' and (step is None or index is None):
1285
+ if strict and pernode == schema_utils.PerNode.OPTIONAL and (step is None or index is None):
1286
1286
  self.error(
1287
1287
  f"Invalid args to find_files() of keypath {keypath}: step and "
1288
1288
  "index are required for reading from this parameter while "
@@ -1394,7 +1394,9 @@ class Chip:
1394
1394
  result.append(utils.find_sc_file(self,
1395
1395
  path,
1396
1396
  missing_ok=missing_ok,
1397
- search_paths=search_paths))
1397
+ search_paths=search_paths,
1398
+ step=step,
1399
+ index=index))
1398
1400
 
1399
1401
  if self._relative_path and not abs_path_only:
1400
1402
  rel_result = []
@@ -2828,10 +2830,10 @@ class Chip:
2828
2830
  set_step = None
2829
2831
  set_index = None
2830
2832
  pernode = self.get(*keypath, field='pernode')
2831
- if pernode == 'required':
2833
+ if pernode == schema_utils.PerNode.REQUIRED:
2832
2834
  set_step = step
2833
2835
  set_index = index
2834
- elif pernode == 'optional':
2836
+ elif pernode == schema_utils.PerNode.OPTIONAL:
2835
2837
  for vals, key_step, key_index in self.schema._getvals(*keypath):
2836
2838
  if key_step == step and key_index == index and vals:
2837
2839
  set_step = step
@@ -2887,7 +2889,7 @@ class Chip:
2887
2889
  return self._dash
2888
2890
 
2889
2891
  ###########################################################################
2890
- def summary(self, show_all_indices=False, generate_image=True, generate_html=True):
2892
+ def summary(self, show_all_indices=False, generate_image=True, generate_html=False):
2891
2893
  '''
2892
2894
  Prints a summary of the compilation manifest.
2893
2895
 
@@ -2927,6 +2929,10 @@ class Chip:
2927
2929
  results_img = os.path.join(work_dir, f'{self.design}.png')
2928
2930
  results_html = os.path.join(work_dir, 'report.html')
2929
2931
 
2932
+ for path in (results_img, results_html):
2933
+ if os.path.exists(path):
2934
+ os.remove(path)
2935
+
2930
2936
  if generate_image:
2931
2937
  _generate_summary_image(self, results_img)
2932
2938
 
@@ -3092,6 +3098,13 @@ class Chip:
3092
3098
  step (str): Step name
3093
3099
  index (int): Step index
3094
3100
  '''
3101
+
3102
+ if flow not in self.getkeys('flowgraph'):
3103
+ raise ValueError(f'{flow} is not in the manifest')
3104
+
3105
+ if step not in self.getkeys('flowgraph', flow):
3106
+ raise ValueError(f'{step} is not a valid step in {flow}')
3107
+
3095
3108
  if index is None:
3096
3109
  # Iterate over all indexes
3097
3110
  for index in self.getkeys('flowgraph', flow, step):
@@ -3099,6 +3112,8 @@ class Chip:
3099
3112
  return
3100
3113
 
3101
3114
  index = str(index)
3115
+ if index not in self.getkeys('flowgraph', flow, step):
3116
+ raise ValueError(f'{index} is not a valid index for {step} in {flow}')
3102
3117
 
3103
3118
  # Save input edges
3104
3119
  node = (step, index)
@@ -4,23 +4,6 @@ from siliconcompiler import SiliconCompilerError, NodeStatus
4
4
  from siliconcompiler.tools._common import input_file_node_name, get_tool_task
5
5
 
6
6
 
7
- def _check_execution_nodes_inputs(chip, flow):
8
- for node in nodes_to_execute(chip, flow):
9
- if node in _get_execution_entry_nodes(chip, flow):
10
- continue
11
- pruned_node_inputs = set(_get_pruned_node_inputs(chip, flow, node))
12
- node_inputs = set(_get_flowgraph_node_inputs(chip, flow, node))
13
- tool, task = get_tool_task(chip, node[0], node[1], flow=flow)
14
- if tool == 'builtin' and not pruned_node_inputs or \
15
- tool != 'builtin' and pruned_node_inputs != node_inputs:
16
- chip.logger.warning(
17
- f'Flowgraph connection from {node_inputs.difference(pruned_node_inputs)} '
18
- f'to {node} is missing. '
19
- f'Double check your flowgraph and from/to/prune options.')
20
- return False
21
- return True
22
-
23
-
24
7
  def _nodes_to_execute(chip, flow, from_nodes, to_nodes, prune_nodes):
25
8
  '''
26
9
  Assumes a flowgraph with valid edges for the inputs
@@ -283,12 +266,12 @@ def nodes_to_execute(chip, flow=None):
283
266
  if flow is None:
284
267
  flow = chip.get('option', 'flow')
285
268
 
286
- from_nodes = _get_execution_entry_nodes(chip, flow)
287
- to_nodes = _get_execution_exit_nodes(chip, flow)
288
- prune_nodes = chip.get('option', 'prune')
269
+ from_nodes = set(_get_execution_entry_nodes(chip, flow))
270
+ to_nodes = set(_get_execution_exit_nodes(chip, flow))
271
+ prune_nodes = set(chip.get('option', 'prune'))
289
272
  if from_nodes == to_nodes:
290
273
  return list(filter(lambda node: node not in prune_nodes, from_nodes))
291
- return _nodes_to_execute(chip, flow, set(from_nodes), set(to_nodes), set(prune_nodes))
274
+ return _nodes_to_execute(chip, flow, from_nodes, to_nodes, prune_nodes)
292
275
 
293
276
 
294
277
  ###########################################################################
@@ -345,8 +328,13 @@ def _check_flowgraph(chip, flow=None):
345
328
  chip.logger.error(f'{step} is not defined in the {flow} flowgraph')
346
329
  error = True
347
330
 
348
- if not _check_execution_nodes_inputs(chip, flow):
349
- error = True
331
+ for step, index in chip.get('option', 'prune'):
332
+ if step not in chip.getkeys('flowgraph', flow):
333
+ chip.logger.error(f'{step} is not defined in the {flow} flowgraph')
334
+ error = True
335
+ elif str(index) not in chip.getkeys('flowgraph', flow, step):
336
+ chip.logger.error(f'{step}{index} is not defined in the {flow} flowgraph')
337
+ error = True
350
338
 
351
339
  unreachable_steps = _unreachable_steps_to_execute(chip, flow)
352
340
  if unreachable_steps:
@@ -46,7 +46,7 @@ def _path(chip, package, download_handler):
46
46
  f'Could not find package source for {package} in schema. '
47
47
  'You can use register_source() to add it.', chip=chip)
48
48
 
49
- data['path'] = _resolve_env_vars(chip, data['path'])
49
+ data['path'] = _resolve_env_vars(chip, data['path'], None, None)
50
50
 
51
51
  url = urlparse(data['path'])
52
52
 
@@ -1,5 +1,6 @@
1
1
  from siliconcompiler.schema.schema_cfg import scparam
2
2
  from siliconcompiler.schema import Schema
3
+ from siliconcompiler.schema.utils import PerNode, Scope
3
4
 
4
5
 
5
6
  SCHEMA_VERSION = '0.0.2'
@@ -11,7 +12,7 @@ def schema_cfg():
11
12
 
12
13
  scparam(cfg, ['schemaversion'],
13
14
  sctype='str',
14
- scope='global',
15
+ scope=Scope.GLOBAL,
15
16
  defvalue=SCHEMA_VERSION,
16
17
  require='all',
17
18
  shorthelp="Schema version number",
@@ -22,7 +23,7 @@ def schema_cfg():
22
23
 
23
24
  scparam(cfg, ['option', 'port'],
24
25
  sctype='int',
25
- scope='global',
26
+ scope=Scope.GLOBAL,
26
27
  defvalue=8080,
27
28
  require='all',
28
29
  shorthelp="Port number to run the server on.",
@@ -34,7 +35,7 @@ def schema_cfg():
34
35
  scparam(cfg, ['option', 'cluster'],
35
36
  sctype='enum',
36
37
  enum=['local', 'slurm'],
37
- scope='global',
38
+ scope=Scope.GLOBAL,
38
39
  defvalue='local',
39
40
  require='all',
40
41
  shorthelp="Type of compute cluster to use.",
@@ -45,7 +46,7 @@ def schema_cfg():
45
46
 
46
47
  scparam(cfg, ['option', 'nfsmount'],
47
48
  sctype='dir',
48
- scope='global',
49
+ scope=Scope.GLOBAL,
49
50
  defvalue='/nfs/sc_compute',
50
51
  require='all',
51
52
  shorthelp="Directory of mounted shared NFS storage.",
@@ -56,7 +57,7 @@ def schema_cfg():
56
57
 
57
58
  scparam(cfg, ['option', 'auth'],
58
59
  sctype='bool',
59
- scope='global',
60
+ scope=Scope.GLOBAL,
60
61
  defvalue=False,
61
62
  require='all',
62
63
  shorthelp="Flag determining whether to enable authenticated and encrypted jobs.",
@@ -67,7 +68,7 @@ def schema_cfg():
67
68
 
68
69
  scparam(cfg, ['option', 'cfg'],
69
70
  sctype='[file]',
70
- scope='job',
71
+ scope=Scope.JOB,
71
72
  shorthelp="Configuration manifest",
72
73
  switch="-cfg <file>",
73
74
  example=["cli: -cfg mypdk.json",
@@ -82,8 +83,8 @@ def schema_cfg():
82
83
  scparam(cfg, ['option', 'loglevel'],
83
84
  sctype='enum',
84
85
  enum=["info", "warning", "error", "critical", "debug"],
85
- pernode='optional',
86
- scope='job',
86
+ pernode=PerNode.OPTIONAL,
87
+ scope=Scope.JOB,
87
88
  defvalue='info',
88
89
  shorthelp="Logging level",
89
90
  switch="-loglevel <str>",
@@ -2,6 +2,7 @@ import fnmatch
2
2
  import pandas
3
3
  import os
4
4
  from siliconcompiler import Schema
5
+ from siliconcompiler.schema.utils import PerNode
5
6
  from siliconcompiler.report import utils
6
7
  from siliconcompiler.flowgraph import nodes_to_execute
7
8
  from siliconcompiler.tools._common import get_tool_task
@@ -53,7 +54,7 @@ def get_flowgraph_nodes(chip, step, index):
53
54
  if task is not None:
54
55
  nodes['task'] = task
55
56
  for key in chip.getkeys('record'):
56
- if chip.get('record', key, field='pernode') == 'never':
57
+ if chip.get('record', key, field='pernode').is_never():
57
58
  value = chip.get('record', key)
58
59
  else:
59
60
  value = chip.get('record', key, step=step, index=index)
@@ -106,7 +107,7 @@ def make_manifest_helper(manifest_subsect, modified_manifest_subsect):
106
107
  '''
107
108
 
108
109
  def build_leaf(manifest_subsect):
109
- if manifest_subsect['pernode'] == 'never':
110
+ if PerNode(manifest_subsect['pernode']) == PerNode.NEVER:
110
111
  if Schema.GLOBAL_KEY in manifest_subsect['node'] and \
111
112
  Schema.GLOBAL_KEY in manifest_subsect['node'][Schema.GLOBAL_KEY]:
112
113
  value = manifest_subsect['node'][Schema.GLOBAL_KEY][Schema.GLOBAL_KEY]['value']
@@ -132,7 +133,7 @@ def make_manifest_helper(manifest_subsect, modified_manifest_subsect):
132
133
  return node_values
133
134
 
134
135
  if Schema._is_leaf(manifest_subsect):
135
- if manifest_subsect['pernode'] == 'never':
136
+ if PerNode(manifest_subsect['pernode']) == PerNode.NEVER:
136
137
  if Schema.GLOBAL_KEY in manifest_subsect['node']:
137
138
  value = manifest_subsect['node'][Schema.GLOBAL_KEY][Schema.GLOBAL_KEY]['value']
138
139
  else: