siliconcompiler 0.31.1__py3-none-any.whl → 0.32.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. siliconcompiler/_metadata.py +1 -1
  2. siliconcompiler/apps/_common.py +23 -6
  3. siliconcompiler/apps/sc.py +1 -0
  4. siliconcompiler/apps/sc_dashboard.py +7 -1
  5. siliconcompiler/apps/sc_show.py +6 -0
  6. siliconcompiler/apps/utils/summarize.py +1 -1
  7. siliconcompiler/core.py +37 -42
  8. siliconcompiler/flows/_common.py +10 -4
  9. siliconcompiler/fpgas/lattice_ice40.py +6 -16
  10. siliconcompiler/package/__init__.py +18 -61
  11. siliconcompiler/package/git.py +4 -1
  12. siliconcompiler/package/github.py +124 -0
  13. siliconcompiler/package/https.py +12 -2
  14. siliconcompiler/report/dashboard/components/__init__.py +18 -7
  15. siliconcompiler/report/dashboard/components/flowgraph.py +3 -0
  16. siliconcompiler/report/dashboard/utils/__init__.py +5 -2
  17. siliconcompiler/report/report.py +6 -6
  18. siliconcompiler/report/utils.py +3 -0
  19. siliconcompiler/scheduler/run_node.py +4 -1
  20. siliconcompiler/schema/schema_obj.py +3 -2
  21. siliconcompiler/schema/utils.py +0 -3
  22. siliconcompiler/targets/fpgaflow_demo.py +0 -2
  23. siliconcompiler/tools/openroad/_apr.py +15 -5
  24. siliconcompiler/tools/openroad/scripts/common/reports.tcl +10 -0
  25. siliconcompiler/tools/openroad/scripts/common/write_images.tcl +27 -0
  26. siliconcompiler/tools/slang/__init__.py +123 -33
  27. siliconcompiler/tools/slang/elaborate.py +123 -18
  28. siliconcompiler/tools/slang/lint.py +20 -10
  29. siliconcompiler/tools/surelog/__init__.py +17 -4
  30. siliconcompiler/toolscripts/_tools.json +3 -3
  31. siliconcompiler/toolscripts/ubuntu24/install-icarus.sh +2 -1
  32. siliconcompiler/toolscripts/ubuntu24/install-netgen.sh +1 -1
  33. siliconcompiler/units.py +10 -7
  34. siliconcompiler/use.py +5 -2
  35. siliconcompiler/utils/__init__.py +5 -14
  36. {siliconcompiler-0.31.1.dist-info → siliconcompiler-0.32.1.dist-info}/METADATA +3 -6
  37. {siliconcompiler-0.31.1.dist-info → siliconcompiler-0.32.1.dist-info}/RECORD +41 -45
  38. {siliconcompiler-0.31.1.dist-info → siliconcompiler-0.32.1.dist-info}/WHEEL +1 -1
  39. {siliconcompiler-0.31.1.dist-info → siliconcompiler-0.32.1.dist-info}/entry_points.txt +1 -0
  40. siliconcompiler/fpgas/vpr_example.py +0 -116
  41. siliconcompiler/toolscripts/rhel8/install-ghdl.sh +0 -25
  42. siliconcompiler/toolscripts/rhel8/install-yosys-moosic.sh +0 -17
  43. siliconcompiler/toolscripts/rhel8/install-yosys-slang.sh +0 -22
  44. siliconcompiler/toolscripts/rhel8/install-yosys.sh +0 -23
  45. {siliconcompiler-0.31.1.dist-info → siliconcompiler-0.32.1.dist-info}/LICENSE +0 -0
  46. {siliconcompiler-0.31.1.dist-info → siliconcompiler-0.32.1.dist-info}/top_level.txt +0 -0
@@ -10,7 +10,12 @@ Sources: https://github.com/chipsalliance/Surelog
10
10
  Installation: https://github.com/chipsalliance/Surelog
11
11
  '''
12
12
 
13
- import surelog
13
+ import sys
14
+ try:
15
+ import surelog
16
+ except ModuleNotFoundError:
17
+ surelog = None
18
+
14
19
  from siliconcompiler.tools._common import get_tool_task
15
20
 
16
21
 
@@ -31,9 +36,17 @@ def setup(chip):
31
36
 
32
37
  is_docker = chip.get('option', 'scheduler', 'name', step=step, index=index) == 'docker'
33
38
  if not is_docker:
34
- exe = surelog.get_bin()
39
+ if surelog:
40
+ exe = surelog.get_bin()
41
+ else:
42
+ exe = 'surelog'
43
+ if sys.platform.startswith("win32"):
44
+ exe = f"{exe}.exe"
35
45
  else:
36
- exe = surelog.get_bin('linux')
46
+ if surelog:
47
+ exe = surelog.get_bin('linux')
48
+ else:
49
+ exe = 'surelog'
37
50
 
38
51
  # Standard Setup
39
52
  chip.set('tool', tool, 'exe', exe)
@@ -43,7 +56,7 @@ def setup(chip):
43
56
  # We package SC wheels with a precompiled copy of Surelog installed to
44
57
  # tools/surelog/bin. If the user doesn't have Surelog installed on their
45
58
  # system path, set the path to the bundled copy in the schema.
46
- if not surelog.has_system_surelog() and not is_docker:
59
+ if surelog and not surelog.has_system_surelog() and not is_docker:
47
60
  chip.set('tool', tool, 'path', surelog.get_path(), clobber=False)
48
61
 
49
62
  # Log file parsing
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "openroad": {
3
3
  "git-url": "https://github.com/The-OpenROAD-Project/OpenROAD.git",
4
- "git-commit": "1d7f91584c040b73089e415ec12fd806da1c1161",
4
+ "git-commit": "c2eb4321bdfcbf353eaf72b7d37bb57071500a59",
5
5
  "docker-cmds": [
6
6
  "# Remove OR-Tools files",
7
7
  "RUN rm -f $SC_PREFIX/Makefile $SC_PREFIX/README.md",
@@ -36,7 +36,7 @@
36
36
  "auto-update": false
37
37
  },
38
38
  "klayout": {
39
- "version": "0.29.11",
39
+ "version": "0.29.12",
40
40
  "git-url": "https://github.com/KLayout/klayout.git",
41
41
  "docker-skip": true,
42
42
  "auto-update": true,
@@ -91,7 +91,7 @@
91
91
  },
92
92
  "yosys": {
93
93
  "git-url": "https://github.com/YosysHQ/yosys.git",
94
- "git-commit": "v0.50",
94
+ "git-commit": "v0.51",
95
95
  "version-prefix": "",
96
96
  "auto-update": true
97
97
  },
@@ -5,7 +5,8 @@ set -e
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
- sudo apt-get install -y build-essential bison flex gperf libreadline-dev libncurses-dev
8
+ sudo apt-get install -y build-essential bison flex gperf libreadline-dev libncurses-dev \
9
+ autotools-dev automake
9
10
 
10
11
  mkdir -p deps
11
12
  cd deps
@@ -5,7 +5,7 @@ set -e
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
- sudo apt-get install -y build-essential tcl-dev tk-dev
8
+ sudo apt-get install -y build-essential tcl-dev tk-dev m4
9
9
 
10
10
  mkdir -p deps
11
11
  cd deps
siliconcompiler/units.py CHANGED
@@ -41,7 +41,7 @@ SI_TYPES = (
41
41
  'V',
42
42
  'W',
43
43
  'ohm',
44
- 'C',
44
+ 'C'
45
45
  )
46
46
 
47
47
 
@@ -107,8 +107,6 @@ def get_si_prefix(unit):
107
107
  if matches:
108
108
  return matches[0][0]
109
109
 
110
- return ''
111
-
112
110
 
113
111
  def get_si_power(unit):
114
112
  '''
@@ -164,6 +162,11 @@ def format_si(value, unit, margin=3, digits=3):
164
162
  digits (int): number of digits to print after .
165
163
  '''
166
164
  scaled_value, prefix = scale_si(value, unit, margin=margin, digits=digits)
165
+
166
+ if digits < 0:
167
+ # Default to 1
168
+ digits = 1
169
+
167
170
  # need to do this in case float shortens scaled_value
168
171
  return f'{scaled_value:.{digits}f}{prefix}'
169
172
 
@@ -179,14 +182,14 @@ def scale_si(value, unit, margin=3, digits=3):
179
182
  when picking the right magnitude
180
183
  digits (int): number of digits to print after .
181
184
  '''
185
+ if digits < 0:
186
+ # Default to 1
187
+ digits = 1
188
+
182
189
  if unit and is_base_si_unit(unit):
183
190
  value = float(value)
184
191
  log_value = math.log10(value) - margin
185
192
 
186
- if digits < 0:
187
- # Default to 0
188
- digits = 0
189
-
190
193
  for prefix, scale in SI_UNITS:
191
194
  if log_value <= scale:
192
195
  value /= 10**scale
siliconcompiler/use.py CHANGED
@@ -12,6 +12,7 @@ class PackageChip(Chip):
12
12
  super().__init__(name)
13
13
 
14
14
  if len(args) == 2:
15
+ self.logger = args[0].logger
15
16
  self.logger.warning(
16
17
  f'passing Chip object to {name} ({type(self).__name__}) is deprecated')
17
18
 
@@ -155,7 +156,8 @@ class Flow(Chip):
155
156
  def __init__(self, *args):
156
157
  super().__init__(args[-1])
157
158
  if len(args) == 2:
158
- self.logger.warning(f'passing Chip object to {type(self)} is deprecated')
159
+ self.logger = args[0].logger
160
+ self.logger.warning(f'passing Chip object to {self.design} (Flow) is deprecated')
159
161
 
160
162
 
161
163
  class Checklist(Chip):
@@ -175,4 +177,5 @@ class Checklist(Chip):
175
177
  def __init__(self, *args):
176
178
  super().__init__(args[-1])
177
179
  if len(args) == 2:
178
- self.logger.warning(f'passing Chip object to {type(self)} is deprecated')
180
+ self.logger = args[0].logger
181
+ self.logger.warning(f'passing Chip object to {self.design} (Checklist) is deprecated')
@@ -5,7 +5,6 @@ import re
5
5
  import psutil
6
6
  import shutil
7
7
  from pathlib import Path, PurePosixPath
8
- from siliconcompiler._metadata import version as sc_version
9
8
  from jinja2 import Environment, FileSystemLoader
10
9
 
11
10
  import sys
@@ -15,11 +14,6 @@ else:
15
14
  from importlib.metadata import entry_points
16
15
 
17
16
 
18
- PACKAGE_ROOT = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
19
-
20
- _siliconcompiler_data_path = 'git+https://github.com/siliconcompiler/siliconcompiler'
21
-
22
-
23
17
  def link_symlink_copy(srcfile, dstfile):
24
18
  # first try hard linking, then symbolic linking,
25
19
  # and finally just copy the file
@@ -223,12 +217,6 @@ def default_email_credentials_file():
223
217
  return cfg_file
224
218
 
225
219
 
226
- def register_sc_data_source(chip):
227
- chip.register_source('siliconcompiler_data',
228
- _siliconcompiler_data_path,
229
- 'v'+sc_version)
230
-
231
-
232
220
  @contextlib.contextmanager
233
221
  def sc_open(path, *args, **kwargs):
234
222
  kwargs['errors'] = 'ignore_with_warning'
@@ -240,7 +228,10 @@ def sc_open(path, *args, **kwargs):
240
228
  pass
241
229
 
242
230
 
243
- def get_file_template(path, root=os.path.join(PACKAGE_ROOT, 'templates')):
231
+ def get_file_template(path,
232
+ root=os.path.join(
233
+ os.path.dirname(
234
+ os.path.dirname(os.path.abspath(__file__))), 'templates')):
244
235
  if os.path.isabs(path):
245
236
  root = os.path.dirname(path)
246
237
  path = os.path.basename(path)
@@ -266,7 +257,7 @@ def safecompare(chip, value, op, goal):
266
257
  elif op == "!=":
267
258
  return bool(value != goal)
268
259
  else:
269
- chip.error(f"Illegal comparison operation {op}")
260
+ raise ValueError(f"Illegal comparison operation {op}")
270
261
 
271
262
 
272
263
  ###########################################################################
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: siliconcompiler
3
- Version: 0.31.1
3
+ Version: 0.32.1
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
@@ -45,10 +45,10 @@ Requires-Dist: fasteners==0.19
45
45
  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
- Requires-Dist: sc-surelog==1.84.1
49
48
  Requires-Dist: orjson==3.10.15
49
+ Requires-Dist: pyslang==8.0.0
50
50
  Requires-Dist: streamlit==1.40.1; python_version <= "3.8"
51
- Requires-Dist: streamlit==1.42.2; python_version >= "3.9" and python_full_version != "3.9.7"
51
+ Requires-Dist: streamlit==1.43.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"
@@ -74,9 +74,6 @@ Requires-Dist: pydata-sphinx-theme==0.16.1; extra == "docs"
74
74
  Requires-Dist: sc-leflib>=0.2.0; extra == "docs"
75
75
  Provides-Extra: profile
76
76
  Requires-Dist: gprof2dot==2024.6.6; extra == "profile"
77
- Provides-Extra: examples
78
- Requires-Dist: migen==0.9.2; extra == "examples"
79
- Requires-Dist: lambdalib==0.3.3; extra == "examples"
80
77
  Provides-Extra: optimizer
81
78
  Requires-Dist: google-vizier[jax]==0.1.21; python_version >= "3.10" and extra == "optimizer"
82
79
 
@@ -1,24 +1,24 @@
1
1
  siliconcompiler/__init__.py,sha256=Ke_Bcryj9N6MoUq_5z_IDW3qMrUzR-3-kJVsvUenYzY,511
2
2
  siliconcompiler/__main__.py,sha256=JwWkcvaNngqgMWprEQ1cFy2Wdq9GMvk46UGTHyh_qvM,170
3
3
  siliconcompiler/_common.py,sha256=c6r0SbI2xTpNOZayFsyCDo0riJGNJSPN-0zW8R7rDBI,1488
4
- siliconcompiler/_metadata.py,sha256=i_Lo3T11LBCBNlSyyLdOKcVrSbKRGv-UmYl4l1ROY4w,1264
5
- siliconcompiler/core.py,sha256=CA7SEpDkVHucYaD8c8tctObqtep3cEcasJN1SmESMxg,139774
4
+ siliconcompiler/_metadata.py,sha256=lAUnYGIiSC2Gju4xfT-0tw5oPuAIZAJFq_4BI3zHSR0,1264
5
+ siliconcompiler/core.py,sha256=_VQxqJns00FhDkN0Q-FOAWfz6ezo0zFdZ4bdADOSxWs,138941
6
6
  siliconcompiler/flowgraph.py,sha256=Z_c4DEh1JvHE_u0O2M2Y1_dn6aGOAECX-HzrIjn0ky4,22084
7
7
  siliconcompiler/issue.py,sha256=9ZpdEBh8QB56-bZ1YXRnjqgg9hwnFty2u1o5oI66W7M,11125
8
- siliconcompiler/units.py,sha256=SHQWTKuiaYHqqTbhspsED0gw-4Lb7f5VKunWy9dhS3s,5810
9
- siliconcompiler/use.py,sha256=t5TodYt9tkYjNIdB6Ak-P3Gf2dgpX9Q-WXGBTLtVdQo,6058
8
+ siliconcompiler/units.py,sha256=M_ZxViSysymv8mFdCtbQwfccEwEsBeiCmc8TcnoXZbk,5845
9
+ siliconcompiler/use.py,sha256=zu17ogJv0x2t_6J9yb_5tH1DjridVQj0MrIRxJRJVGQ,6202
10
10
  siliconcompiler/apps/__init__.py,sha256=6LuAljPtVB6g5yXl_58ODoB4Svb6UfKaDbX1e0aNZfE,668
11
- siliconcompiler/apps/_common.py,sha256=Ph-cD-t9lCzavak3s4YCXXmA_ouf-jJ-7WIEGkSsjOg,3770
12
- siliconcompiler/apps/sc.py,sha256=DAhhyfpHEN0mDmQ3YcFWpGk7R64OEpguZ2QCEFGxyr4,3235
13
- siliconcompiler/apps/sc_dashboard.py,sha256=kGyMYbgKgZMBUrTyft6mEvRnmcrKA7JunrkWZ8VwSwM,3478
11
+ siliconcompiler/apps/_common.py,sha256=YK5zNHHnHeEWwcK27wXwsaApsrphUenh9uQzGf2zKvs,4425
12
+ siliconcompiler/apps/sc.py,sha256=qHrfzgt1y748jX0nLXn9Hx1WuwXXmHFGhF4LaQTCpeE,3259
13
+ siliconcompiler/apps/sc_dashboard.py,sha256=60ccCeC6RxPSt4uxej6bEJlpwViiEvRbZlqXtAItf98,3633
14
14
  siliconcompiler/apps/sc_install.py,sha256=qz6Dni7HcYrl9V7mDk2hqMYY4BwqRceNb-Gd2UE5zzk,8569
15
15
  siliconcompiler/apps/sc_issue.py,sha256=PUXFWne6MWY0Ntak3PnMZ84tpEZ5S1Pta5B3AkxMdoY,6404
16
16
  siliconcompiler/apps/sc_remote.py,sha256=vMdh9LdFJ-0vFzYMFttcERXCFwzNMmAQyXPIxoNCmhg,7168
17
17
  siliconcompiler/apps/sc_server.py,sha256=d3SCfKtNneIBiAk7Udc5SqXvSIoFSK40iHWcKuY7unk,894
18
- siliconcompiler/apps/sc_show.py,sha256=H0_evnBqr02FJVlIaFIva4RrYZ6M2otlWTaTCqFQPlg,4653
18
+ siliconcompiler/apps/sc_show.py,sha256=q3ccwnq3eLE0kC5PlL7n1tcvTzhRqj0q7u-4k_Cxu2Y,4809
19
19
  siliconcompiler/apps/smake.py,sha256=jj69IuMLf4jblpVGeLT3GAvC-zDLHwPq16YPKtHosdA,7124
20
20
  siliconcompiler/apps/utils/replay.py,sha256=iAsYFb2mVcXw3c9SYV1pFiiQLwZKiub9uQjsO5v-hlo,5901
21
- siliconcompiler/apps/utils/summarize.py,sha256=mcViWpuS8UI2JqOF-QD99YAl0tjiy6_TbVl_coRCmNI,1291
21
+ siliconcompiler/apps/utils/summarize.py,sha256=CC6YwyEShiuZekU-D1Uk_m074aj8LviwotcgJMvZhuY,1250
22
22
  siliconcompiler/checklists/__init__.py,sha256=xnrgpMdgDLoYinDXVXRIAhX__BiBpBw16_gmg2dAwYo,247
23
23
  siliconcompiler/checklists/oh_tapeout.py,sha256=xBXAHOVNslFUlOfVTLLoPEJazczP8MTsa5EGo5GYQk0,1441
24
24
  siliconcompiler/data/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -28,7 +28,7 @@ siliconcompiler/data/RobotoMono/LICENSE.txt,sha256=Pd-b5cKP4n2tFDpdx27qJSIq0d1ok
28
28
  siliconcompiler/data/RobotoMono/RobotoMono-Regular.ttf,sha256=w8iOaiprWYm5hBNPzFHOaddn_RgCWHLoz0FsBMTaryA,86908
29
29
  siliconcompiler/data/RobotoMono/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
30
30
  siliconcompiler/flows/__init__.py,sha256=NwHSILM3yG962UqpgCYyvh07IZ1oLtIh5L-ia_BHrXg,996
31
- siliconcompiler/flows/_common.py,sha256=hcKVUPRK74t6JYU23UnY4qkFnu1-uauLwzsZjqzaYu0,2110
31
+ siliconcompiler/flows/_common.py,sha256=jySYBv7xKMwQ0Uo2rUbvmaopVUMY_Xv_iIvFv_pcPqQ,2392
32
32
  siliconcompiler/flows/asicflow.py,sha256=Hj0goWMxYGSqLmX_07z_uFePJvWcDGhY0afTeJblz7E,8113
33
33
  siliconcompiler/flows/asictopflow.py,sha256=UosrdJhh_NVyjigzz2KGhqcy2UBotkwTUUnCdOVaZXg,1155
34
34
  siliconcompiler/flows/drcflow.py,sha256=CinpSA2eHtqSlOIxTeXSoyV_TstFZ7uZ1VA9qAHihh8,230
@@ -42,14 +42,14 @@ siliconcompiler/flows/showflow.py,sha256=1pIeRo5IwPPrlm8luY4QGrFYmg66m13ImCAeoEr
42
42
  siliconcompiler/flows/signoffflow.py,sha256=y3sM5M2HesrRYidKCZ6obDvYwzxAbD3qVEuHekAAaTI,1515
43
43
  siliconcompiler/flows/synflow.py,sha256=Tydj7b_Aq610IOoo4CQ_FA4Nletvfn-l2XyZ0NHlJdc,3957
44
44
  siliconcompiler/fpgas/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
45
- siliconcompiler/fpgas/lattice_ice40.py,sha256=GU0NrhBZuvMv5sWBye9h_GodKOOXBRwDLVlEy3ANXlY,1034
46
- siliconcompiler/fpgas/vpr_example.py,sha256=xcTgCvxSadcBnYVrglAi5XM4nn_raXWFvr_oe62tCPI,4998
45
+ siliconcompiler/fpgas/lattice_ice40.py,sha256=NsFgGvTnBVXpJeg3IiKKufsUwV7TYl-XU6mE2jNjK60,791
47
46
  siliconcompiler/libs/__init__.py,sha256=KXw1vU0KP83fg3rB8iKkpDhJZBLz_PWGZG65L3lAQ1Q,86
48
47
  siliconcompiler/optimizer/__init__.py,sha256=wdSuv3U7hoSdZn-TkaQtYehVdhS5F35Mb1McgaUw3hc,6599
49
48
  siliconcompiler/optimizer/vizier.py,sha256=-JF3E28SLhfkjluz2R5dFnjg5NjU1z7Okb-K_ZK9H3s,9035
50
- siliconcompiler/package/__init__.py,sha256=Dg_GBWERdCGRPjBNxcUHBB8Zf2ns-PgLy2Xqo0tARVw,9054
51
- siliconcompiler/package/git.py,sha256=L6J7H8s8LNdhrhlhuEw0eU4nHx7o6iOIjIf91OcmX80,3200
52
- siliconcompiler/package/https.py,sha256=8jXjNUA21p4fMW9WVbystk_HZTc0KgUUiIwfq-ziuk0,2919
49
+ siliconcompiler/package/__init__.py,sha256=4Ps97LFRmBd7-grfB8h1tQsLFF4eZYiAAuSBReX8vpo,8014
50
+ siliconcompiler/package/git.py,sha256=c40uXesG1x-CgH7yat5Cq6iCjoUHp_jE_VXeHGtzeOk,3258
51
+ siliconcompiler/package/github.py,sha256=NCTMkV3WKNwVasciC30qGglysRMgqEWzC-0TXSSwmbU,3768
52
+ siliconcompiler/package/https.py,sha256=_o0VpvImgBlW_egwgWXc0JC0T0ixFSV-Gu8dGGso4hM,3210
53
53
  siliconcompiler/pdks/__init__.py,sha256=bWhtNR-Kq3fEyknon-x5vQX877b88g9EJXAHBMiDyGM,81
54
54
  siliconcompiler/remote/__init__.py,sha256=MoYnC1lkgbT5hN5Qi-0gTItaTWI2U1E8OuleffdTDSQ,977
55
55
  siliconcompiler/remote/client.py,sha256=qwZaKSt-ScYjfBFpL9Np9Z0nDytYRJHgvNJnrXHGhok,32848
@@ -72,34 +72,34 @@ siliconcompiler/remote/server_schema/responses/get_results.json,sha256=h4XraLW4h
72
72
  siliconcompiler/remote/server_schema/responses/remote_run.json,sha256=FWW_0m46qwIJHiTriISzChKHJF6G9RIwP0rmp1OjIuA,475
73
73
  siliconcompiler/report/__init__.py,sha256=ADa-8Jwy4fl2Wtg0ejy4Tvil805uwA4WWTdK125JKcs,388
74
74
  siliconcompiler/report/html_report.py,sha256=Wh5X7iQpfIEHcs-WrVE9dtDf-gkz3GhT_yf8kVG0O3o,2597
75
- siliconcompiler/report/report.py,sha256=cxnWdYKxB_7xpbMOZnWpRfqwg9SOB7G2d_XkRPlYmTA,15083
75
+ siliconcompiler/report/report.py,sha256=_V8Dpxly06wDAVUVuu7yyZ2fMGV5MHkJ_9DHoxGgt24,15158
76
76
  siliconcompiler/report/summary_image.py,sha256=tKuoLiG6Whvnc8LHeSzU4FookpBkYYCMWUGb-ux2i8k,3570
77
77
  siliconcompiler/report/summary_table.py,sha256=j7MrwGacCemAWNOtyHiYop9XRQPzIEWHyRl4dfS1yI8,3386
78
- siliconcompiler/report/utils.py,sha256=70klZsAKwhW55kOxBBdV9zzOU-NorMk6y6riMyKXo7c,6423
78
+ siliconcompiler/report/utils.py,sha256=bjoVGGlVpqBWxzGj__1Qg2BJ5ok4IbHGr1fEvYg0SOg,6479
79
79
  siliconcompiler/report/dashboard/__init__.py,sha256=bvSfStUvkMa1zW1R5WtzzzKKAMm9FCNiPbIIFXOotJ0,5554
80
80
  siliconcompiler/report/dashboard/state.py,sha256=qBAmLpKb0xXqf2vRbBBgYs8P71v3MGIL6z0WHoAED-Y,5924
81
81
  siliconcompiler/report/dashboard/viewer.py,sha256=scF4MkbOdqM1pRCzGWnXeMrk4r2M4Y2cDyEIrAWCFiw,1095
82
- siliconcompiler/report/dashboard/components/__init__.py,sha256=BkVt0JakAj9kC5WlewdvFESwygjDmhyj85xiV8oc00I,18097
83
- siliconcompiler/report/dashboard/components/flowgraph.py,sha256=bjPuaWlEra4HbIUIbtCkYQMNTYueSGP0WO-r16MrBss,3525
82
+ siliconcompiler/report/dashboard/components/__init__.py,sha256=jEztqYs8s7W_eggXABaqDJ3zREdMsoLcdHCfr1Uj5LY,18538
83
+ siliconcompiler/report/dashboard/components/flowgraph.py,sha256=RkrSJJYyPBk03jCMuhkNhTV1JOlFvFILntwV8kBsN_I,3593
84
84
  siliconcompiler/report/dashboard/components/graph.py,sha256=m9y4lxKDgTJNp_eOdLohN1bn6uE3XEnE387xnb4HnUo,6776
85
85
  siliconcompiler/report/dashboard/layouts/__init__.py,sha256=aYhWEoQg4CiwGMCcLH4Yj__d_5tD4vyb164dP2RpURY,638
86
86
  siliconcompiler/report/dashboard/layouts/_common.py,sha256=_Iz5IxftnNKYvhQNA-PWpyv8R1uejvrVUMGmUIEvPf0,1276
87
87
  siliconcompiler/report/dashboard/layouts/vertical_flowgraph.py,sha256=ml8qPg2-g3n-HW9E4znwkaYBISyloUjD19_Ooy3iCn0,3425
88
88
  siliconcompiler/report/dashboard/layouts/vertical_flowgraph_node_tab.py,sha256=09n3LqXedQOX8UizlTn9BHyepizmbwz9SIN0QB2PNkA,4229
89
89
  siliconcompiler/report/dashboard/layouts/vertical_flowgraph_sac_tabs.py,sha256=g6lrnXJVEkTh7OQY1xCgl_q0So0XewItuY0sjnjaBCA,4086
90
- siliconcompiler/report/dashboard/utils/__init__.py,sha256=mkcBAlfPovfgoRv9nPbtgQSeFglwlxlSIXsEQmdsDz8,2540
90
+ siliconcompiler/report/dashboard/utils/__init__.py,sha256=1ILJbIAx2QQ12enHflzaQmj0pk8UhkC5YdZO9EPAVCo,2643
91
91
  siliconcompiler/report/dashboard/utils/file_utils.py,sha256=5MKAyf7TGXQIc3yxwbP1H6xi0NGwUfzu2j3LOv1Yei0,3333
92
92
  siliconcompiler/scheduler/__init__.py,sha256=goiNHGe41JjCKoMWIh6i3fcw9kuC7lXcAziA_bFeun4,87291
93
93
  siliconcompiler/scheduler/docker_runner.py,sha256=zeAPHgthkoR8ATY6zmV2kCJWpD13fuq2DCzzG66Ubm8,8052
94
- siliconcompiler/scheduler/run_node.py,sha256=XEY3SNIstK8SLnD7uiHmQ_9maCgdfTECQAJr5OT9rQI,5036
94
+ siliconcompiler/scheduler/run_node.py,sha256=4bIFcPnP8pq4-lDyXPAEu1fk2Q8qQlnlLKwl7CQDQZo,5203
95
95
  siliconcompiler/scheduler/send_messages.py,sha256=mWmkfPVDEfzOawVq6At6fi0JgFkzyFNwAA29lYkN5Xw,6618
96
96
  siliconcompiler/scheduler/slurm.py,sha256=CAuN5xmiWhk_k3CW6yMe5iukex4CWxp5Ox6_qAzgV5Q,7097
97
97
  siliconcompiler/scheduler/validation/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
98
98
  siliconcompiler/scheduler/validation/email_credentials.json,sha256=hkJs0U2h2Bgm1zxeXvanIJ-prPhpn_aU6e3qwIs7qA0,1997
99
99
  siliconcompiler/schema/__init__.py,sha256=Gdny2AwDdg-X3RvghOHQYl3aG2alvMuK5CsSkFGKuYU,120
100
100
  siliconcompiler/schema/schema_cfg.py,sha256=oHE1hEgLFgU2r4sValymY_-84SCchU_6j0BGkXFwdjw,188876
101
- siliconcompiler/schema/schema_obj.py,sha256=BHMr00Et57iukxTI9hiJUHkhAw1LRbsWJcDCejeCBDg,76158
102
- siliconcompiler/schema/utils.py,sha256=qeAICnQuuzrcJSyotFGWA6gmunpu63AOaEtuhIcBi5c,4504
101
+ siliconcompiler/schema/schema_obj.py,sha256=tb_iVnXzI6Sjos2BCNFKXFu4-Zm2lc4S3buTQVwdyoo,76221
102
+ siliconcompiler/schema/utils.py,sha256=R4YZ4-iMBb7wQCsFO3oJMijOhDKcyAzIBNPEtS9E2Fg,4415
103
103
  siliconcompiler/sphinx_ext/__init__.py,sha256=nXMFqWewqjy8FZbExAp2wtVu8EmZ3cXKvomlpxnzKUE,1859
104
104
  siliconcompiler/sphinx_ext/dynamicgen.py,sha256=QwrigvFqj900Sud4qICNlKYAxqLQOxSvzqRKwNAz02o,34575
105
105
  siliconcompiler/sphinx_ext/schemagen.py,sha256=7m9mKhixVnNsrVcVzadNFsR_SB7BCFMNmOZWiGUtM20,7787
@@ -107,7 +107,7 @@ siliconcompiler/sphinx_ext/utils.py,sha256=JNktfS5nYZE_DnXRX_fwOBkc5kWgLkB0Urxbe
107
107
  siliconcompiler/targets/__init__.py,sha256=PVbYMlHPHGnkmmokOBDk4zP5tRHF1pPdP-NKpJowmCQ,770
108
108
  siliconcompiler/targets/asap7_demo.py,sha256=RBCjAx3laq2xUT7w--b9oIVx8r87QyKfBRX35JQICzw,2544
109
109
  siliconcompiler/targets/asic_demo.py,sha256=jRvbDhMZDGf-8AQ241vu8qLgloxPUToAn01Ybaaj_wo,1094
110
- siliconcompiler/targets/fpgaflow_demo.py,sha256=0fqCaXa8_gicQCiz4m_mhI8_JY1qQlBO3mH45-YzMGA,1288
110
+ siliconcompiler/targets/fpgaflow_demo.py,sha256=U88q6CuNH6Dy9nT3WNGkd_rOkGPohUM0eUB8zCERa9s,1216
111
111
  siliconcompiler/targets/freepdk45_demo.py,sha256=O983Nwrs9h_HHlHtlUUrP0cPgdf3IlME1yWXCRgdL_A,1953
112
112
  siliconcompiler/targets/gf180_demo.py,sha256=-GiyRNVnoouILXV7_mCANSsOT6gmlmFKqn0JOJ_vS9g,3062
113
113
  siliconcompiler/targets/ihp130_demo.py,sha256=3nCxfM0-XpZWjhE1yQezZKBGJwtf6AjpeinPM4z6wv0,2688
@@ -213,7 +213,7 @@ siliconcompiler/tools/nextpnr/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5N
213
213
  siliconcompiler/tools/nextpnr/apr.py,sha256=dCMLDS4xnwqCoBtCKd3kwCxjIRqPn_zq3f7pkWPw5mw,802
214
214
  siliconcompiler/tools/nextpnr/nextpnr.py,sha256=B5kr-ZLnt2vDFtS4veIdf0_Cm6yvfS1QVqWhxYa8R24,1712
215
215
  siliconcompiler/tools/openroad/__init__.py,sha256=aJLiAfdleczGD9QXw7TYBGrWFiEJhaAWbQJcNlYCOts,3250
216
- siliconcompiler/tools/openroad/_apr.py,sha256=_ohixH7e3gDfcK6aIBYaEvs3729F_06vNRmujE4HiqE,50796
216
+ siliconcompiler/tools/openroad/_apr.py,sha256=gfVDBZdG9EFr-Z9LRgriDgRIDBUHCtqzSfghW3BUfF0,51247
217
217
  siliconcompiler/tools/openroad/antenna_repair.py,sha256=UC4BjY_qJhYLdb_LFRUXomlmcu1mYnTJF9EAh7xYP_k,2248
218
218
  siliconcompiler/tools/openroad/clock_tree_synthesis.py,sha256=ouS1qu6cztiW7KGnDzCSCmPMYHaKbq2i69tAA44ZQS0,1710
219
219
  siliconcompiler/tools/openroad/detailed_placement.py,sha256=mvFw9E5x9AHx6h7dbwlUHwOqJFRAE4WFiWLDuM9Q-6I,1571
@@ -263,12 +263,12 @@ siliconcompiler/tools/openroad/scripts/common/procs.tcl,sha256=gcnX6ZBzTysO1YaK6
263
263
  siliconcompiler/tools/openroad/scripts/common/read_input_files.tcl,sha256=Jf1K9clDiC9N0LDwCguQMChWQTSfc7uY3Tht_C9wfAg,2089
264
264
  siliconcompiler/tools/openroad/scripts/common/read_liberty.tcl,sha256=GeXZ8H3a8fg8o-4KyfZj2N4Db_P9XArZl2T4apfMSZI,778
265
265
  siliconcompiler/tools/openroad/scripts/common/read_timing_constraints.tcl,sha256=fsHSSGXkrqOKXjwH7U8XMLMnEPoZpavBVkl4qzLugOU,515
266
- siliconcompiler/tools/openroad/scripts/common/reports.tcl,sha256=ErZTGPgd7sAq7zNgtSygCEM4Y3pQXrR-l7R-KwdDrlk,6553
266
+ siliconcompiler/tools/openroad/scripts/common/reports.tcl,sha256=i6P282tAM9Yig2V1z1ShOrKLgYdysx96M4nrhl6kctc,6881
267
267
  siliconcompiler/tools/openroad/scripts/common/screenshot.tcl,sha256=OEE4JpafdOK1cVJw3sie_Fvo03ZkheElhPpvKsgCV0E,447
268
268
  siliconcompiler/tools/openroad/scripts/common/write_data.tcl,sha256=xFFgR6mCpQEy8ATfSz1kUFr2BBnaPsv4cSHnWh7JqC8,100
269
269
  siliconcompiler/tools/openroad/scripts/common/write_data_physical.tcl,sha256=X0ZsHwfQPRokkCuYjtnw_OL98R9PLjZEMxgLClhsbUg,130
270
270
  siliconcompiler/tools/openroad/scripts/common/write_data_timing.tcl,sha256=-clUY9N57lhN_sc0FpjfSj-75cMFdpPnMDiX7YFbp98,37
271
- siliconcompiler/tools/openroad/scripts/common/write_images.tcl,sha256=iQy1WXMLeSBn-ZhlQt44KNNdikHirvwjsHs8MnPhVfg,11926
271
+ siliconcompiler/tools/openroad/scripts/common/write_images.tcl,sha256=xD8usvrk0NhvcJBKOMPsMtrLCfbT_vrOlh0Fc5SHC-M,12714
272
272
  siliconcompiler/tools/openroad/scripts/rcx/sc_rcx_bench.tcl,sha256=95p_XiRPA1PnofMTMUTesI4JniHnvB8f9_oANGRuC8M,692
273
273
  siliconcompiler/tools/openroad/scripts/rcx/sc_rcx_extract.tcl,sha256=Aj9J_8aiOR1WqcQvdx99WyUDcN8RafxXwtrexcS5UcU,489
274
274
  siliconcompiler/tools/openroad/templates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -282,10 +282,10 @@ siliconcompiler/tools/opensta/scripts/sc_check_library.tcl,sha256=kpb1X4GPwNQqDo
282
282
  siliconcompiler/tools/opensta/scripts/sc_procs.tcl,sha256=4XAgyGRmkk_J2OqxA1glO46BixSgGZFdEYHmezxwwGE,1122
283
283
  siliconcompiler/tools/opensta/scripts/sc_report_libraries.tcl,sha256=LjVH3rwVXgGH4_1uXze8q390uIX62xeKu8WCsV5zj6I,2620
284
284
  siliconcompiler/tools/opensta/scripts/sc_timing.tcl,sha256=gbLr5jmD2o5SwJr04kzpPH0NcvJF-1j5R_Y6ydZgWFc,7982
285
- siliconcompiler/tools/slang/__init__.py,sha256=TwZSHUPYh2iyRExWdU8n7DEOhWe4DmYqumVg2gRtTqg,3894
286
- siliconcompiler/tools/slang/elaborate.py,sha256=txJeAY3aZT_-xckHOlGQfKOCHb1uRIVd9J1p3hTXFEs,1495
287
- siliconcompiler/tools/slang/lint.py,sha256=ByjgrpaJDFSJf7FhkICK7j3mUuCQrzQS_qXkhxJF1Ks,917
288
- siliconcompiler/tools/surelog/__init__.py,sha256=tOv1yRkW4QjKRyN5Q5uAs3ii5-ORgO2Sya1Es4n69cQ,5298
285
+ siliconcompiler/tools/slang/__init__.py,sha256=ZPW82XeX6e7djO-Mbulixv3JkwAkmwwwDTWS8QKY-RU,6877
286
+ siliconcompiler/tools/slang/elaborate.py,sha256=EZmyljTqb0LRqAGCemcLN2eOUdDmQmBNLlL-TXyC_P4,4739
287
+ siliconcompiler/tools/slang/lint.py,sha256=_YdQHMEwNYuMr3rBr-fLhPWuuMI3gFxzya4MUcUXMdo,999
288
+ siliconcompiler/tools/surelog/__init__.py,sha256=vngLIj7mmcpJwRwYdm-EAsNNjkCWRuC8sm2pW77FCi8,5594
289
289
  siliconcompiler/tools/surelog/parse.py,sha256=D2QOY0DN6-AMGX__QL83gTFNoz0nzc1uHMekObcml9s,6016
290
290
  siliconcompiler/tools/surelog/templates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
291
291
  siliconcompiler/tools/surelog/templates/output.v,sha256=i2dvcHzXxb5rl7tnryQUaWYeqS2q_T70aKoRw0k1DaY,206
@@ -340,10 +340,9 @@ siliconcompiler/tools/yosys/techmaps/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeu
340
340
  siliconcompiler/tools/yosys/techmaps/lcu_kogge_stone.v,sha256=M4T-ygiKmlsprl5eGGLaV5w6HVqlEepn0wlUDmOkapg,773
341
341
  siliconcompiler/tools/yosys/templates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
342
342
  siliconcompiler/tools/yosys/templates/abc.const,sha256=TAq9ThdLMYCJGrtToEU0gWcLuEtjE4Gk8huBbTm1v-I,116
343
- siliconcompiler/toolscripts/_tools.json,sha256=EKdv-EQ_xdD3AacY73aM4sr39gtDY71zOcffQOriQ44,4403
343
+ siliconcompiler/toolscripts/_tools.json,sha256=wySmyhpCEJPhBq-q0O85A0Jnzz8ygKlXT2sTudSV88g,4403
344
344
  siliconcompiler/toolscripts/_tools.py,sha256=P30KY_xbbjl8eHGsPAxDcAzWvJJpiL07ZfGZZDQbdR8,7174
345
345
  siliconcompiler/toolscripts/rhel8/install-chisel.sh,sha256=lPORZN7vlBX6sJSv01JOIiDE9-_7GcCZGA7EP5ri3MQ,525
346
- siliconcompiler/toolscripts/rhel8/install-ghdl.sh,sha256=xCLeEUuJVI_6PVEvnTwBsTWoEHiQg0TY3x-tJXfg6Zk,459
347
346
  siliconcompiler/toolscripts/rhel8/install-icarus.sh,sha256=4N2Y2H01impqJy0k5aUDFrF9Z2oonGqPGeHCXey-2VM,771
348
347
  siliconcompiler/toolscripts/rhel8/install-klayout.sh,sha256=lUCSc0Yr0NBUMVragNyJsWoHfHfOceKRH9i9xsgICV0,393
349
348
  siliconcompiler/toolscripts/rhel8/install-magic.sh,sha256=ugiH7ybdxQggs0ucUHiVtCOO142XOh5OhOmmt_aZXRs,609
@@ -355,9 +354,6 @@ siliconcompiler/toolscripts/rhel8/install-sv2v.sh,sha256=AsC_FC7rzj4M570c5eS4Iyh
355
354
  siliconcompiler/toolscripts/rhel8/install-verible.sh,sha256=kg-pijYcNsU81Qegx5mhllGc4F0P_xiMXlRDUnczwlo,557
356
355
  siliconcompiler/toolscripts/rhel8/install-verilator.sh,sha256=W2vf3_r41LrFkug_J7AgUxcHGZrqJLwagbWhjadASrw,692
357
356
  siliconcompiler/toolscripts/rhel8/install-xyce.sh,sha256=rVAt5gIDJNW6gCtuyuRN0VCjEcp9n0S9vtvVJtJzZ_Y,1734
358
- siliconcompiler/toolscripts/rhel8/install-yosys-moosic.sh,sha256=F6S160uSA0JJUtJe46G3kV8U5ZqTkCz6NX4zEI47Leo,381
359
- siliconcompiler/toolscripts/rhel8/install-yosys-slang.sh,sha256=qBz2tciVxw5S7xD4ZxTuAeRUZkImKxIWJCU0Nu_RhVs,512
360
- siliconcompiler/toolscripts/rhel8/install-yosys.sh,sha256=glhUBRePmFRIJ6tUCtlZoRMftnErspiqTp4ad5uQt0E,658
361
357
  siliconcompiler/toolscripts/rhel9/install-chisel.sh,sha256=lPORZN7vlBX6sJSv01JOIiDE9-_7GcCZGA7EP5ri3MQ,525
362
358
  siliconcompiler/toolscripts/rhel9/install-ghdl.sh,sha256=lVBBvBOu4WInmZ4asSGObggjlDRslSN0MiQs3qPOHtU,469
363
359
  siliconcompiler/toolscripts/rhel9/install-gtkwave.sh,sha256=dQa8nY6c2okYOHCkxi5FMJciIjmO-NdjxWH8CUyqiOY,882
@@ -432,12 +428,12 @@ siliconcompiler/toolscripts/ubuntu24/install-bluespec.sh,sha256=MlylMZfFsZq74LnH
432
428
  siliconcompiler/toolscripts/ubuntu24/install-chisel.sh,sha256=lPORZN7vlBX6sJSv01JOIiDE9-_7GcCZGA7EP5ri3MQ,525
433
429
  siliconcompiler/toolscripts/ubuntu24/install-ghdl.sh,sha256=BrvE2Y3VvUIH4U4lScMb2aRKx0TMEscynHswYUslY6U,467
434
430
  siliconcompiler/toolscripts/ubuntu24/install-gtkwave.sh,sha256=F_eeWegI7RHlEnzwyGEE6jdrpNccd-z666xf2ufuuuo,615
435
- siliconcompiler/toolscripts/ubuntu24/install-icarus.sh,sha256=KHIjKwwA2C9s5jkYzcWWifHpiSc-ewywjyqLk-giB0U,525
431
+ siliconcompiler/toolscripts/ubuntu24/install-icarus.sh,sha256=e5aNPOsCnSrbMjbly0SaA-j8xTdqofOKDOV_yU0bHe4,554
436
432
  siliconcompiler/toolscripts/ubuntu24/install-icepack.sh,sha256=PM7gT42Ew8mSE5G_AA_jl_9oL3M_qcvT92xDdFRJoZ0,661
437
433
  siliconcompiler/toolscripts/ubuntu24/install-klayout.sh,sha256=f4l-Z86LAkjdo5NLq89ORfkjE0Mjygyp84VYi7gEWUU,906
438
434
  siliconcompiler/toolscripts/ubuntu24/install-magic.sh,sha256=GpvT3DGk0IuJ60-dbANfdcZCsncNMe36yNk2bAMudPI,513
439
435
  siliconcompiler/toolscripts/ubuntu24/install-montage.sh,sha256=uA57mEs9lb1Fcn7bf59w0tCKuIOeEcaijo2gip2En7Y,55
440
- siliconcompiler/toolscripts/ubuntu24/install-netgen.sh,sha256=EEndaKckf3U7656hxPqmYPVlJz20LUMWfmpGIaGQvtw,477
436
+ siliconcompiler/toolscripts/ubuntu24/install-netgen.sh,sha256=wPlSqnsCIE9XNsT63dir-iBgpvSoDpqj-HHh48-LwVE,480
441
437
  siliconcompiler/toolscripts/ubuntu24/install-nextpnr.sh,sha256=HDp6MFvliWywBmZYnkl3d69oxYy6ersjROfVQV2079E,770
442
438
  siliconcompiler/toolscripts/ubuntu24/install-openroad.sh,sha256=Hwe7jGhSUf6nIhkeGGPsu62ObWECkha1ktL0owE5cy0,646
443
439
  siliconcompiler/toolscripts/ubuntu24/install-slang.sh,sha256=PEjzoCr0l1C33RdF-C61yiQZOHcgtEyXED4lnFBk82Q,550
@@ -452,13 +448,13 @@ siliconcompiler/toolscripts/ubuntu24/install-xyce.sh,sha256=33Iq99sLdiVWFl4zpD2h
452
448
  siliconcompiler/toolscripts/ubuntu24/install-yosys-moosic.sh,sha256=F6S160uSA0JJUtJe46G3kV8U5ZqTkCz6NX4zEI47Leo,381
453
449
  siliconcompiler/toolscripts/ubuntu24/install-yosys-slang.sh,sha256=qBz2tciVxw5S7xD4ZxTuAeRUZkImKxIWJCU0Nu_RhVs,512
454
450
  siliconcompiler/toolscripts/ubuntu24/install-yosys.sh,sha256=s9PU3DpkDoY0OoTQcDb00g-KAr1vqDFJRr1uaM2mJNw,730
455
- siliconcompiler/utils/__init__.py,sha256=y4S1sRW2C3oYXN6PMZOHFO8-ytQ8yJvUoQtqKlnF5dQ,16162
451
+ siliconcompiler/utils/__init__.py,sha256=mxZB2mAgCtwfwITfZcrLWTDZxjeEWnAjHcmO-UE7Cbc,15891
456
452
  siliconcompiler/utils/asic.py,sha256=cMLs7dneSmh5BlHS0-bZ1tLUpvghTw__gNaUCMpyBds,4986
457
453
  siliconcompiler/utils/logging.py,sha256=5tabLIVEftStGDeDulhfBdw4SFp5nHa4J3ZTJKHny8Q,2325
458
454
  siliconcompiler/utils/showtools.py,sha256=gaAvjMTFlx_0qLKOtpRJx8Bs51TEeQ-4Pjj8kHfFf3o,1871
459
- siliconcompiler-0.31.1.dist-info/LICENSE,sha256=lbLR6sRo_CYJOf7SVgHi-U6CZdD8esESEZE5TZazOQE,10766
460
- siliconcompiler-0.31.1.dist-info/METADATA,sha256=cHiZiRkjqUahZpw7pq-Sxrfr-mVrbVgiIG71F0swDjo,11462
461
- siliconcompiler-0.31.1.dist-info/WHEEL,sha256=jB7zZ3N9hIM9adW7qlTAyycLYW9npaWKLRzaoVcLKcM,91
462
- siliconcompiler-0.31.1.dist-info/entry_points.txt,sha256=69hHdWZQBugdza9dYdxodDySxmq6TgwpRYMeH2KfD4Q,1078
463
- siliconcompiler-0.31.1.dist-info/top_level.txt,sha256=H8TOYhnEUZAV1RJTa8JRtjLIebwHzkQUhA2wkNU2O6M,16
464
- siliconcompiler-0.31.1.dist-info/RECORD,,
455
+ siliconcompiler-0.32.1.dist-info/LICENSE,sha256=lbLR6sRo_CYJOf7SVgHi-U6CZdD8esESEZE5TZazOQE,10766
456
+ siliconcompiler-0.32.1.dist-info/METADATA,sha256=qEtLu-MCzDVeFZrNFAQO6Y3wDOVn6tN9KRQMKRHr2FQ,11331
457
+ siliconcompiler-0.32.1.dist-info/WHEEL,sha256=52BFRY2Up02UkjOa29eZOS2VxUrpPORXg1pkohGGUS8,91
458
+ siliconcompiler-0.32.1.dist-info/entry_points.txt,sha256=wrM4IhEbFF8epxB8Uun6DZO51viXDqj-KWV0SjVDtN0,1131
459
+ siliconcompiler-0.32.1.dist-info/top_level.txt,sha256=H8TOYhnEUZAV1RJTa8JRtjLIebwHzkQUhA2wkNU2O6M,16
460
+ siliconcompiler-0.32.1.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (75.8.2)
2
+ Generator: setuptools (76.0.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -21,6 +21,7 @@ tools = siliconcompiler.sphinx_ext:tools
21
21
 
22
22
  [siliconcompiler.path_resolver]
23
23
  git = siliconcompiler.package.git:get_resolver
24
+ github = siliconcompiler.package.github:get_resolver
24
25
  https = siliconcompiler.package.https:get_resolver
25
26
 
26
27
  [siliconcompiler.show]
@@ -1,116 +0,0 @@
1
- import os
2
- import siliconcompiler
3
- from siliconcompiler.utils import register_sc_data_source
4
-
5
-
6
- ####################################################
7
- # Setup for vpr_example Family FPGAs
8
- ####################################################
9
- def setup():
10
- '''
11
- The vpr_example FPGA family is a set of
12
- open source architectures used as illustrative
13
- examples for academic FPGA architectures. They
14
- are based on numerous examples furnished over the
15
- the years by the University of Toronto with different
16
- distributions of VPR
17
-
18
- For more information about VPR and its architecture models,
19
- see Murray et. al, "VTR 8: High Performance CAD and Customizable
20
- FPGA Architecture Modelling", ACM Trans. Reconfigurable Technol.
21
- Syst., 2020, https://www.eecg.utoronto.ca/~kmurray/vtr/vtr8_trets.pdf
22
- '''
23
-
24
- vendor = 'N/A'
25
-
26
- flow_root = os.path.join('examples', 'fpga_flow')
27
-
28
- lut_size = '4'
29
-
30
- all_fpgas = []
31
-
32
- all_part_names = [
33
- 'example_arch_X005Y005',
34
- 'example_arch_X008Y008',
35
- 'example_arch_X014Y014',
36
- 'example_arch_X030Y030',
37
- ]
38
-
39
- # Settings common to all parts in family
40
- for part_name in all_part_names:
41
- fpga = siliconcompiler.FPGA(part_name, package='siliconcompiler_data')
42
- register_sc_data_source(fpga)
43
-
44
- fpga.set('fpga', part_name, 'vendor', vendor)
45
-
46
- # Part name is specified per architecture file. Device code specifies
47
- # which <fixed_layout> name to use when running VPR. These examples
48
- # use the following names:
49
- if (part_name == 'example_arch_X005Y005'):
50
- fpga.set('fpga', part_name, 'var', 'vpr_device_code', 'fpga_beta')
51
- else:
52
- fpga.set('fpga', part_name, 'var', 'vpr_device_code', part_name)
53
-
54
- fpga.set('fpga', part_name, 'lutsize', lut_size)
55
-
56
- arch_root = os.path.join(flow_root, 'arch', part_name)
57
- fpga.set('fpga', part_name, 'file', 'archfile', os.path.join(arch_root, f'{part_name}.xml'))
58
-
59
- fpga.set('fpga', part_name, 'var', 'vpr_clock_model', 'ideal')
60
-
61
- if (part_name == 'example_arch_X005Y005'):
62
- arch_root = os.path.join(flow_root, 'arch', part_name)
63
- fpga.set('fpga', part_name, 'file', 'graphfile',
64
- os.path.join(arch_root, 'example_arch_X005Y005_rr_graph.xml'))
65
- fpga.set('fpga', part_name, 'var', 'channelwidth', '32')
66
-
67
- if (part_name == 'example_arch_X008Y008'):
68
- # No RR graph for this architecture to support testing
69
- fpga.set('fpga', part_name, 'var', 'channelwidth', '32')
70
-
71
- if ((part_name == 'example_arch_X014Y014') or (part_name == 'example_arch_X030Y030')):
72
-
73
- techlib_root = os.path.join(flow_root, 'techlib')
74
-
75
- if (part_name == 'example_arch_X014Y014'):
76
- fpga.set('fpga', part_name, 'file', 'constraints_map',
77
- os.path.join(arch_root, f'{part_name}_constraint_map.json'))
78
-
79
- fpga.set('fpga', part_name, 'var', 'channelwidth', '80')
80
- fpga.add('fpga', part_name, 'var', 'feature_set', 'async_set')
81
- fpga.add('fpga', part_name, 'var', 'feature_set', 'async_reset')
82
- fpga.add('fpga', part_name, 'var', 'feature_set', 'enable')
83
- fpga.add('fpga', part_name, 'file', 'yosys_flop_techmap',
84
- os.path.join(techlib_root, 'example_arch_techmap_flops.v'))
85
-
86
- fpga.add('fpga', part_name, 'file', 'yosys_dsp_techmap',
87
- os.path.join(techlib_root, 'example_arch_techmap_dsp.v'))
88
-
89
- fpga.add('fpga', part_name, 'file', 'yosys_extractlib',
90
- os.path.join(techlib_root, 'example_arch_techmap_dsp_extract.v'))
91
-
92
- # The same library used for the extraction pass can also be used to
93
- # define macros that can be passed through synthesis, specify that here
94
- fpga.add('fpga', part_name, 'file', 'yosys_macrolib',
95
- os.path.join(techlib_root, 'example_arch_techmap_dsp_extract.v'))
96
-
97
- fpga.add('fpga', part_name, 'var', 'yosys_dsp_options', 'DSP_A_MAXWIDTH=18')
98
- fpga.add('fpga', part_name, 'var', 'yosys_dsp_options', 'DSP_B_MAXWIDTH=18')
99
- fpga.add('fpga', part_name, 'var', 'yosys_dsp_options', 'DSP_A_MINWIDTH=2')
100
- fpga.add('fpga', part_name, 'var', 'yosys_dsp_options', 'DSP_B_MINWIDTH=2')
101
- fpga.add('fpga', part_name, 'var', 'yosys_dsp_options', 'DSP_NAME=_dsp_block_')
102
-
103
- fpga.add('fpga', part_name, 'file', 'yosys_memory_techmap',
104
- os.path.join(techlib_root, 'example_arch_techmap_bram.v'))
105
- fpga.add('fpga', part_name, 'file', 'yosys_memory_libmap',
106
- os.path.join(techlib_root, 'example_arch_bram_memory_map.txt'))
107
-
108
- all_fpgas.append(fpga)
109
-
110
- return all_fpgas
111
-
112
-
113
- #########################
114
- if __name__ == "__main__":
115
- for fpga in setup(siliconcompiler.Chip('<fpga>')):
116
- fpga.write_manifest(f'{fpga.design}.json')
@@ -1,25 +0,0 @@
1
- #!/bin/sh
2
-
3
- set -e
4
-
5
- # Get directory of script
6
- src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
-
8
- sudo yum install -y gcc-gnat zlib-devel
9
-
10
- mkdir -p deps
11
- cd deps
12
-
13
- git clone $(python3 ${src_path}/_tools.py --tool ghdl --field git-url) ghdl
14
- cd ghdl
15
- git checkout $(python3 ${src_path}/_tools.py --tool ghdl --field git-commit)
16
-
17
- args=
18
- if [ ! -z ${PREFIX} ]; then
19
- args=--prefix="$PREFIX"
20
- fi
21
-
22
- ./configure $args
23
- make -j$(nproc)
24
- sudo make install
25
- cd -