siliconcompiler 0.27.1__py3-none-any.whl → 0.28.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 (94) hide show
  1. siliconcompiler/_metadata.py +1 -1
  2. siliconcompiler/core.py +4 -1
  3. siliconcompiler/data/RobotoMono/__init__.py +0 -0
  4. siliconcompiler/data/__init__.py +0 -0
  5. siliconcompiler/flows/dvflow.py +51 -14
  6. siliconcompiler/flows/generate_openroad_rcx.py +1 -1
  7. siliconcompiler/libs/sg13g2_stdcell.py +8 -0
  8. siliconcompiler/pdks/ihp130.py +8 -0
  9. siliconcompiler/remote/server_schema/__init__.py +0 -0
  10. siliconcompiler/remote/server_schema/requests/__init__.py +0 -0
  11. siliconcompiler/remote/server_schema/responses/__init__.py +0 -0
  12. siliconcompiler/scheduler/__init__.py +6 -4
  13. siliconcompiler/scheduler/validation/__init__.py +0 -0
  14. siliconcompiler/schema/schema_cfg.py +351 -281
  15. siliconcompiler/schema/schema_obj.py +5 -3
  16. siliconcompiler/sphinx_ext/dynamicgen.py +35 -15
  17. siliconcompiler/sphinx_ext/schemagen.py +4 -1
  18. siliconcompiler/targets/ihp130_demo.py +68 -0
  19. siliconcompiler/templates/__init__.py +0 -0
  20. siliconcompiler/templates/email/__init__.py +0 -0
  21. siliconcompiler/templates/issue/__init__.py +0 -0
  22. siliconcompiler/templates/report/__init__.py +0 -0
  23. siliconcompiler/templates/slurm/__init__.py +0 -0
  24. siliconcompiler/templates/tcl/__init__.py +0 -0
  25. siliconcompiler/tools/_common/sdc/__init__.py +0 -0
  26. siliconcompiler/tools/_common/tcl/__init__.py +0 -0
  27. siliconcompiler/tools/_common/tcl/sc_pin_constraints.tcl +1 -2
  28. siliconcompiler/tools/bambu/__init__.py +0 -0
  29. siliconcompiler/tools/bluespec/__init__.py +0 -0
  30. siliconcompiler/tools/builtin/__init__.py +0 -0
  31. siliconcompiler/tools/builtin/concatenate.py +16 -0
  32. siliconcompiler/tools/chisel/__init__.py +0 -0
  33. siliconcompiler/tools/execute/__init__.py +0 -0
  34. siliconcompiler/tools/genfasm/__init__.py +0 -0
  35. siliconcompiler/tools/ghdl/__init__.py +0 -0
  36. siliconcompiler/tools/icarus/__init__.py +0 -0
  37. siliconcompiler/tools/icepack/__init__.py +0 -0
  38. siliconcompiler/tools/klayout/__init__.py +0 -0
  39. siliconcompiler/tools/klayout/klayout.py +1 -0
  40. siliconcompiler/tools/magic/__init__.py +0 -0
  41. siliconcompiler/tools/magic/sc_drc.tcl +5 -5
  42. siliconcompiler/tools/magic/sc_extspice.tcl +3 -3
  43. siliconcompiler/tools/magic/sc_magic.tcl +2 -2
  44. siliconcompiler/tools/montage/__init__.py +0 -0
  45. siliconcompiler/tools/netgen/__init__.py +0 -0
  46. siliconcompiler/tools/netgen/sc_lvs.tcl +3 -3
  47. siliconcompiler/tools/nextpnr/__init__.py +0 -0
  48. siliconcompiler/tools/openroad/scripts/__init__.py +0 -0
  49. siliconcompiler/tools/openroad/scripts/sc_apr.tcl +36 -34
  50. siliconcompiler/tools/openroad/scripts/sc_cts.tcl +0 -1
  51. siliconcompiler/tools/openroad/scripts/sc_dfm.tcl +4 -2
  52. siliconcompiler/tools/openroad/scripts/sc_export.tcl +4 -2
  53. siliconcompiler/tools/openroad/scripts/sc_floorplan.tcl +27 -35
  54. siliconcompiler/tools/openroad/scripts/sc_metrics.tcl +4 -2
  55. siliconcompiler/tools/openroad/scripts/sc_physyn.tcl +0 -1
  56. siliconcompiler/tools/openroad/scripts/sc_procs.tcl +38 -6
  57. siliconcompiler/tools/openroad/scripts/sc_rcx.tcl +9 -9
  58. siliconcompiler/tools/openroad/scripts/sc_route.tcl +8 -4
  59. siliconcompiler/tools/openroad/scripts/sc_screenshot.tcl +5 -3
  60. siliconcompiler/tools/openroad/scripts/sc_write_images.tcl +27 -25
  61. siliconcompiler/tools/openroad/templates/__init__.py +0 -0
  62. siliconcompiler/tools/opensta/scripts/__init__.py +0 -0
  63. siliconcompiler/tools/opensta/scripts/sc_procs.tcl +0 -1
  64. siliconcompiler/tools/surelog/templates/__init__.py +0 -0
  65. siliconcompiler/tools/sv2v/__init__.py +0 -0
  66. siliconcompiler/tools/template/__init__.py +0 -0
  67. siliconcompiler/tools/verilator/__init__.py +0 -0
  68. siliconcompiler/tools/verilator/compile.py +1 -4
  69. siliconcompiler/tools/verilator/verilator.py +1 -2
  70. siliconcompiler/tools/vivado/scripts/__init__.py +0 -0
  71. siliconcompiler/tools/vivado/scripts/sc_run.tcl +7 -8
  72. siliconcompiler/tools/vivado/vivado.py +1 -1
  73. siliconcompiler/tools/vpr/__init__.py +0 -0
  74. siliconcompiler/tools/vpr/place.py +20 -6
  75. siliconcompiler/tools/vpr/vpr.py +1 -1
  76. siliconcompiler/tools/xdm/__init__.py +28 -0
  77. siliconcompiler/tools/xdm/convert.py +71 -0
  78. siliconcompiler/tools/xyce/{xyce.py → __init__.py} +13 -9
  79. siliconcompiler/tools/xyce/simulate.py +70 -0
  80. siliconcompiler/tools/yosys/__init__.py +0 -0
  81. siliconcompiler/tools/yosys/sc_lec.tcl +7 -7
  82. siliconcompiler/tools/yosys/sc_syn.tcl +9 -9
  83. siliconcompiler/tools/yosys/syn_asic.tcl +21 -13
  84. siliconcompiler/tools/yosys/syn_fpga.tcl +20 -17
  85. siliconcompiler/tools/yosys/techmaps/__init__.py +0 -0
  86. siliconcompiler/tools/yosys/templates/__init__.py +0 -0
  87. siliconcompiler/use.py +2 -1
  88. {siliconcompiler-0.27.1.dist-info → siliconcompiler-0.28.1.dist-info}/METADATA +9 -8
  89. {siliconcompiler-0.27.1.dist-info → siliconcompiler-0.28.1.dist-info}/RECORD +93 -48
  90. {siliconcompiler-0.27.1.dist-info → siliconcompiler-0.28.1.dist-info}/WHEEL +1 -1
  91. siliconcompiler/tools/openfpgaloader/openfpgaloader.py +0 -39
  92. {siliconcompiler-0.27.1.dist-info → siliconcompiler-0.28.1.dist-info}/LICENSE +0 -0
  93. {siliconcompiler-0.27.1.dist-info → siliconcompiler-0.28.1.dist-info}/entry_points.txt +0 -0
  94. {siliconcompiler-0.27.1.dist-info → siliconcompiler-0.28.1.dist-info}/top_level.txt +0 -0
@@ -13,8 +13,6 @@ Installation: https://xyce.sandia.gov/documentation-tutorials/building-guide/
13
13
 
14
14
  Status: SC integration WIP
15
15
  '''
16
-
17
- import os
18
16
  from siliconcompiler.tools._common import get_tool_task
19
17
 
20
18
 
@@ -23,14 +21,20 @@ from siliconcompiler.tools._common import get_tool_task
23
21
  ################################
24
22
  def setup(chip):
25
23
 
26
- tool = 'xyce'
27
24
  step = chip.get('arg', 'step')
28
25
  index = chip.get('arg', 'index')
29
- _, task = get_tool_task(chip, step, index)
26
+ tool, task = get_tool_task(chip, step, index)
27
+
28
+ chip.set('tool', tool, 'exe', 'Xyce')
29
+ chip.set('tool', tool, 'vswitch', '-v')
30
+ chip.set('tool', tool, 'version', '>=v7.8')
31
+
32
+ chip.set('tool', tool, 'task', task, 'regex', 'warnings', 'warning',
33
+ step=step, index=index, clobber=False)
34
+ chip.set('tool', tool, 'task', task, 'regex', 'errors', 'error',
35
+ step=step, index=index, clobber=False)
30
36
 
31
- clobber = False
32
37
 
33
- chip.set('tool', tool, 'exe', tool)
34
- chip.set('tool', tool, 'version', '0.0', clobber=clobber)
35
- chip.set('tool', tool, 'task', task, 'threads', os.cpu_count(),
36
- step=step, index=index, clobber=clobber)
38
+ def parse_version(stdout):
39
+ ver = stdout.split()[-1]
40
+ return ver.split('-')[0]
@@ -0,0 +1,70 @@
1
+ from siliconcompiler.tools._common import input_provides, get_tool_task
2
+ from siliconcompiler.tools.xyce import setup as tool_setup
3
+ import os
4
+
5
+
6
+ def setup(chip):
7
+ tool_setup(chip)
8
+
9
+ step = chip.get('arg', 'step')
10
+ index = chip.get('arg', 'index')
11
+ tool, task = get_tool_task(chip, step, index)
12
+
13
+ design = chip.top()
14
+
15
+ if f'{design}.xyce' in input_provides(chip, step, index):
16
+ chip.add('tool', tool, 'task', task, 'input', f'{design}.xyce',
17
+ step=step, index=index)
18
+ elif f'{design}.cir' in input_provides(chip, step, index):
19
+ chip.add('tool', tool, 'task', task, 'input', f'{design}.cir',
20
+ step=step, index=index)
21
+ else:
22
+ chip.add('tool', tool, 'task', task, 'require', 'input,netlist,spice',
23
+ step=step, index=index)
24
+
25
+ chip.set('tool', tool, 'task', task, 'var', 'trace', 'false',
26
+ step=step, index=index, clobber=False)
27
+ chip.set('tool', tool, 'task', task, 'var', 'trace', 'true/false, enable dumping all signals',
28
+ field='help')
29
+
30
+ allowed_traced = ['ASCII', 'binary']
31
+ chip.set('tool', tool, 'task', task, 'var', 'trace_format', 'ASCII',
32
+ step=step, index=index, clobber=False)
33
+ chip.set('tool', tool, 'task', task, 'var', 'trace_format', 'Format to use for traces. '
34
+ f'Allowed values are {allowed_traced}',
35
+ field='help')
36
+
37
+ if chip.get('tool', tool, 'task', task, 'var', 'trace_format', step=step, index=index)[0] \
38
+ not in allowed_traced:
39
+ raise ValueError(f"{chip.get('tool', tool, 'task', task, 'var', 'trace_format')[0]} "
40
+ "is not an accepted value")
41
+
42
+ if chip.get('tool', tool, 'task', task, 'var', 'trace_format', step=step, index=index) == \
43
+ ['ASCII']:
44
+ chip.add('tool', tool, 'task', task, 'option', '-a',
45
+ step=step, index=index)
46
+
47
+ if chip.get('tool', tool, 'task', task, 'var', 'trace',
48
+ step=step, index=index) == ['true']:
49
+ chip.add('tool', tool, 'task', task, 'output', f'{design}.raw',
50
+ step=step, index=index)
51
+ chip.add('tool', tool, 'task', task, 'option', f'-r outputs/{design}.raw',
52
+ step=step, index=index)
53
+
54
+
55
+ def runtime_options(chip):
56
+ design = chip.top()
57
+ step = chip.get('arg', 'step')
58
+ index = chip.get('arg', 'index')
59
+
60
+ if f'{design}.xyce' in input_provides(chip, step, index):
61
+ if os.path.isfile(f'inputs/{design}.xyce'):
62
+ return [f'inputs/{design}.xyce']
63
+ elif os.path.isfile(f'inputs/{design}.xyce/{design}.cir'):
64
+ return [f'inputs/{design}.xyce/{design}.cir']
65
+ else:
66
+ return [f'inputs/{design}.xyce']
67
+ elif f'{design}.cir' in input_provides(chip, step, index):
68
+ return [f'inputs/{design}.cir']
69
+
70
+ return chip.find_files('input', 'netlist', 'spice', step=step, index=index)
File without changes
@@ -6,14 +6,14 @@ set sc_tool yosys
6
6
  yosys echo on
7
7
 
8
8
  #Handling remote/local script execution
9
- set sc_step [sc_cfg_get arg step]
10
- set sc_index [sc_cfg_get arg index]
11
- set sc_flow [sc_cfg_get option flow]
12
- set sc_task [sc_cfg_get flowgraph $sc_flow $sc_step $sc_index task]
13
- set sc_refdir [sc_cfg_tool_task_get refdir ]
9
+ set sc_step [sc_cfg_get arg step]
10
+ set sc_index [sc_cfg_get arg index]
11
+ set sc_flow [sc_cfg_get option flow]
12
+ set sc_task [sc_cfg_get flowgraph $sc_flow $sc_step $sc_index task]
13
+ set sc_refdir [sc_cfg_tool_task_get refdir]
14
14
 
15
- set sc_design [sc_top]
16
- set sc_targetlibs [sc_get_asic_libraries logic]
15
+ set sc_design [sc_top]
16
+ set sc_targetlibs [sc_get_asic_libraries logic]
17
17
 
18
18
  # TODO: properly handle complexity here
19
19
  set lib [lindex $sc_targetlibs 0]
@@ -10,21 +10,21 @@ yosys echo on
10
10
  # Schema Adapter
11
11
  ###############################
12
12
 
13
- set sc_tool yosys
14
- set sc_step [sc_cfg_get arg step]
15
- set sc_index [sc_cfg_get arg index]
16
- set sc_flow [sc_cfg_get option flow]
17
- set sc_task [sc_cfg_get flowgraph $sc_flow $sc_step $sc_index task]
13
+ set sc_tool yosys
14
+ set sc_step [sc_cfg_get arg step]
15
+ set sc_index [sc_cfg_get arg index]
16
+ set sc_flow [sc_cfg_get option flow]
17
+ set sc_task [sc_cfg_get flowgraph $sc_flow $sc_step $sc_index task]
18
18
  set sc_refdir [sc_cfg_tool_task_get refdir]
19
19
 
20
20
  ####################
21
21
  # DESIGNER's CHOICE
22
22
  ####################
23
23
 
24
- set sc_design [sc_top]
25
- set sc_flow [sc_cfg_get option flow]
26
- set sc_optmode [sc_cfg_get option optmode]
27
- set sc_pdk [sc_cfg_get option pdk]
24
+ set sc_design [sc_top]
25
+ set sc_flow [sc_cfg_get option flow]
26
+ set sc_optmode [sc_cfg_get option optmode]
27
+ set sc_pdk [sc_cfg_get option pdk]
28
28
 
29
29
  ########################################################
30
30
  # Design Inputs
@@ -82,8 +82,8 @@ proc determine_keep_hierarchy { iter cell_limit } {
82
82
  # DESIGNER's CHOICE
83
83
  ####################
84
84
 
85
- set sc_logiclibs [sc_get_asic_libraries logic]
86
- set sc_macrolibs [sc_get_asic_libraries macro]
85
+ set sc_logiclibs [sc_get_asic_libraries logic]
86
+ set sc_macrolibs [sc_get_asic_libraries macro]
87
87
 
88
88
  set sc_libraries [sc_cfg_tool_task_get {file} synthesis_libraries]
89
89
  if { [sc_cfg_tool_task_exists {file} synthesis_libraries_macros] } {
@@ -127,8 +127,10 @@ proc has_tie_cell { type } {
127
127
  upvar sc_mainlib sc_mainlib
128
128
  upvar sc_tool sc_tool
129
129
 
130
- return [expr { [sc_cfg_exists library $sc_mainlib option {var} yosys_tie${type}_cell] && \
131
- [sc_cfg_exists library $sc_mainlib option {var} yosys_tie${type}_port] }]
130
+ return [expr {
131
+ [sc_cfg_exists library $sc_mainlib option {var} yosys_tie${type}_cell] &&
132
+ [sc_cfg_exists library $sc_mainlib option {var} yosys_tie${type}_port]
133
+ }]
132
134
  }
133
135
 
134
136
  proc get_tie_cell { type } {
@@ -149,9 +151,11 @@ proc has_buffer_cell { } {
149
151
  upvar sc_mainlib sc_mainlib
150
152
  upvar sc_tool sc_tool
151
153
 
152
- return [expr { [sc_cfg_exists library $sc_mainlib option {var} yosys_buffer_cell] && \
153
- [sc_cfg_exists library $sc_mainlib option {var} yosys_buffer_input] && \
154
- [sc_cfg_exists library $sc_mainlib option {var} yosys_buffer_output] }]
154
+ return [expr {
155
+ [sc_cfg_exists library $sc_mainlib option {var} yosys_buffer_cell] &&
156
+ [sc_cfg_exists library $sc_mainlib option {var} yosys_buffer_input] &&
157
+ [sc_cfg_exists library $sc_mainlib option {var} yosys_buffer_output]
158
+ }]
155
159
  }
156
160
 
157
161
  proc get_buffer_cell { } {
@@ -160,8 +164,8 @@ proc get_buffer_cell { } {
160
164
  upvar sc_tool sc_tool
161
165
 
162
166
  set cell [lindex [sc_cfg_get library $sc_mainlib option {var} yosys_buffer_cell] 0]
163
- set in [lindex [sc_cfg_get library $sc_mainlib option {var} yosys_buffer_input] 0]
164
- set out [lindex [sc_cfg_get library $sc_mainlib option {var} yosys_buffer_output] 0]
167
+ set in [lindex [sc_cfg_get library $sc_mainlib option {var} yosys_buffer_input] 0]
168
+ set out [lindex [sc_cfg_get library $sc_mainlib option {var} yosys_buffer_output] 0]
165
169
 
166
170
  return "$cell $in $out"
167
171
  }
@@ -207,8 +211,10 @@ yosys hierarchy -top $sc_design
207
211
  # Mark modules to keep from getting removed in flattening
208
212
  preserve_modules
209
213
 
210
- set flatten_design [expr { [lindex [sc_cfg_tool_task_get var flatten] 0] \
211
- == "true" }]
214
+ set flatten_design [expr {
215
+ [lindex [sc_cfg_tool_task_get var flatten] 0]
216
+ == "true"
217
+ }]
212
218
  set synth_args []
213
219
  if { $flatten_design } {
214
220
  lappend synth_args "-flatten"
@@ -359,8 +365,10 @@ if { [llength $yosys_hilomap_args] != 0 } {
359
365
  yosys hilomap -singleton {*}$yosys_hilomap_args
360
366
  }
361
367
 
362
- if { [has_buffer_cell] && \
363
- [sc_cfg_tool_task_get var add_buffers] == "true" } {
368
+ if {
369
+ [has_buffer_cell] &&
370
+ [sc_cfg_tool_task_get var add_buffers] == "true"
371
+ } {
364
372
  yosys insbuf -buf {*}[get_buffer_cell]
365
373
  }
366
374
 
@@ -1,27 +1,31 @@
1
-
2
1
  source "$sc_refdir/syn_asic_fpga_shared.tcl"
3
2
 
4
3
  proc legalize_flops { feature_set } {
5
-
6
4
  set legalize_flop_types []
7
5
 
8
- if { [lsearch -exact $feature_set enable] >= 0 && \
9
- [lsearch -exact $feature_set async_set] >= 0 && \
10
- [lsearch -exact $feature_set async_reset] >= 0 } {
6
+ if {
7
+ [lsearch -exact $feature_set enable] >= 0 &&
8
+ [lsearch -exact $feature_set async_set] >= 0 &&
9
+ [lsearch -exact $feature_set async_reset] >= 0
10
+ } {
11
11
  lappend legalize_flop_types \$_DFF_P_
12
12
  lappend legalize_flop_types \$_DFF_PN?_
13
13
  lappend legalize_flop_types \$_DFFE_PP_
14
14
  lappend legalize_flop_types \$_DFFE_PN?P_
15
15
  lappend legalize_flop_types \$_DFFSR_PNN_
16
16
  lappend legalize_flop_types \$_DFFSRE_PNNP_
17
- } elseif { [lsearch -exact $feature_set enable] >= 0 && \
18
- [lsearch -exact $feature_set async_set] >= 0 } {
17
+ } elseif {
18
+ [lsearch -exact $feature_set enable] >= 0 &&
19
+ [lsearch -exact $feature_set async_set] >= 0
20
+ } {
19
21
  lappend legalize_flop_types \$_DFF_P_
20
22
  lappend legalize_flop_types \$_DFF_PN1_
21
23
  lappend legalize_flop_types \$_DFFE_PP_
22
24
  lappend legalize_flop_types \$_DFFE_PN1P_
23
- } elseif { [lsearch -exact $feature_set enable] >= 0 && \
24
- [lsearch -exact $feature_set async_reset] >= 0 } {
25
+ } elseif {
26
+ [lsearch -exact $feature_set enable] >= 0 &&
27
+ [lsearch -exact $feature_set async_reset] >= 0
28
+ } {
25
29
  lappend legalize_flop_types \$_DFF_P_
26
30
  lappend legalize_flop_types \$_DFF_PN0_
27
31
  lappend legalize_flop_types \$_DFFE_PP_
@@ -31,8 +35,10 @@ proc legalize_flops { feature_set } {
31
35
  lappend legalize_flop_types \$_DFF_P??_
32
36
  lappend legalize_flop_types \$_DFFE_PP_
33
37
  lappend legalize_flop_types \$_DFFE_P??P_
34
- } elseif { [lsearch -exact $feature_set async_set] >= 0 && \
35
- [lsearch -exact $feature_set async_reset] >= 0 } {
38
+ } elseif {
39
+ [lsearch -exact $feature_set async_set] >= 0 &&
40
+ [lsearch -exact $feature_set async_reset] >= 0
41
+ } {
36
42
  lappend legalize_flop_types \$_DFF_P_
37
43
  lappend legalize_flop_types \$_DFF_PN?_
38
44
  lappend legalize_flop_types \$_DFFSR_PNN_
@@ -59,8 +65,7 @@ proc legalize_flops { feature_set } {
59
65
  }
60
66
 
61
67
  proc get_dsp_options { sc_syn_dsp_options } {
62
-
63
- set option_text [ list ]
68
+ set option_text [list]
64
69
  foreach dsp_option $sc_syn_dsp_options {
65
70
  lappend option_text -D $dsp_option
66
71
  }
@@ -80,7 +85,7 @@ if { [sc_cfg_exists fpga $sc_partname var feature_set] } {
80
85
  set sc_syn_feature_set \
81
86
  [sc_cfg_get fpga $sc_partname var feature_set]
82
87
  } else {
83
- set sc_syn_feature_set [ list ]
88
+ set sc_syn_feature_set [list]
84
89
  }
85
90
 
86
91
  if { [sc_cfg_exists fpga $sc_partname var yosys_dsp_options] } {
@@ -89,7 +94,7 @@ if { [sc_cfg_exists fpga $sc_partname var yosys_dsp_options] } {
89
94
  [sc_cfg_get fpga $sc_partname var yosys_dsp_options]
90
95
  yosys log "Yosys DSP techmap options = $sc_syn_dsp_options"
91
96
  } else {
92
- set sc_syn_dsp_options [ list ]
97
+ set sc_syn_dsp_options [list]
93
98
  }
94
99
 
95
100
  # TODO: add logic that remaps yosys built in name based on part number
@@ -101,13 +106,11 @@ yosys hierarchy -top $sc_design
101
106
  if { [string match {ice*} $sc_partname] } {
102
107
  yosys synth_ice40 -top $sc_design -json "${sc_design}.netlist.json"
103
108
  } else {
104
-
105
109
  # Pre-processing step: if DSPs instance are hard-coded into
106
110
  # the user's design, we can use a blackbox flow for DSP mapping
107
111
  # as follows:
108
112
 
109
113
  if { [sc_cfg_exists fpga $sc_partname file yosys_macrolib] } {
110
-
111
114
  set sc_syn_macrolibs \
112
115
  [sc_cfg_get fpga $sc_partname file yosys_macrolib]
113
116
 
File without changes
File without changes
siliconcompiler/use.py CHANGED
@@ -12,7 +12,8 @@ class PackageChip(Chip):
12
12
  super().__init__(name)
13
13
 
14
14
  if len(args) == 2:
15
- self.logger.warning(f'passing Chip object to {type(self)} is deprecated')
15
+ self.logger.warning(
16
+ f'passing Chip object to {name} ({type(self).__name__}) is deprecated')
16
17
 
17
18
  path = None
18
19
  ref = None
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: siliconcompiler
3
- Version: 0.27.1
3
+ Version: 0.28.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
@@ -23,7 +23,7 @@ Requires-Dist: packaging <24,>=21.3
23
23
  Requires-Dist: psutil >=5.8.0
24
24
  Requires-Dist: Pillow ==10.4.0
25
25
  Requires-Dist: GitPython ==3.1.43
26
- Requires-Dist: lambdapdk >=0.1.25
26
+ Requires-Dist: lambdapdk >=0.1.34
27
27
  Requires-Dist: PyGithub ==2.4.0
28
28
  Requires-Dist: urllib3 >=1.26.0
29
29
  Requires-Dist: fasteners ==0.19
@@ -31,7 +31,7 @@ Requires-Dist: fastjsonschema ==2.20.0
31
31
  Requires-Dist: docker ==7.1.0
32
32
  Requires-Dist: sc-surelog ==1.84.1
33
33
  Requires-Dist: orjson ==3.10.7
34
- Requires-Dist: streamlit ==1.37.1
34
+ Requires-Dist: streamlit ==1.38.0
35
35
  Requires-Dist: streamlit-agraph ==0.0.45
36
36
  Requires-Dist: streamlit-tree-select ==0.0.5
37
37
  Requires-Dist: streamlit-javascript ==0.1.5
@@ -43,21 +43,22 @@ Requires-Dist: pydata-sphinx-theme ==0.15.4 ; extra == 'docs'
43
43
  Requires-Dist: sc-leflib >=0.2.0 ; extra == 'docs'
44
44
  Provides-Extra: examples
45
45
  Requires-Dist: migen ==0.9.2 ; extra == 'examples'
46
- Requires-Dist: lambdalib ==0.2.9 ; extra == 'examples'
46
+ Requires-Dist: lambdalib ==0.2.10 ; extra == 'examples'
47
47
  Provides-Extra: profile
48
48
  Requires-Dist: gprof2dot ==2024.6.6 ; extra == 'profile'
49
49
  Provides-Extra: test
50
- Requires-Dist: pytest ==8.3.2 ; extra == 'test'
50
+ Requires-Dist: pytest ==8.3.3 ; extra == 'test'
51
51
  Requires-Dist: pytest-xdist ==3.6.1 ; extra == 'test'
52
52
  Requires-Dist: pytest-timeout ==2.3.1 ; extra == 'test'
53
53
  Requires-Dist: pytest-asyncio ==0.24.0 ; extra == 'test'
54
54
  Requires-Dist: pytest-cov ==5.0.0 ; extra == 'test'
55
+ Requires-Dist: responses ==0.25.3 ; extra == 'test'
55
56
  Requires-Dist: PyVirtualDisplay ==3.0 ; extra == 'test'
56
57
  Requires-Dist: flake8 ==7.1.1 ; extra == 'test'
57
- Requires-Dist: tclint ==0.3.2 ; extra == 'test'
58
+ Requires-Dist: tclint ==0.4.0 ; extra == 'test'
58
59
  Requires-Dist: codespell ==2.3.0 ; extra == 'test'
59
60
 
60
- ![SiliconCompiler](https://raw.githubusercontent.com/siliconcompiler/siliconcompiler/main/docs/_images/sc_logo_with_text.png)
61
+ ![SiliconCompiler](https://raw.githubusercontent.com/siliconcompiler/siliconcompiler/main/docs/_static/sc_logo_with_text.png)
61
62
 
62
63
  [![Python CI Tests](https://github.com/siliconcompiler/siliconcompiler/actions/workflows/python_ci.yml/badge.svg?branch=main)](https://github.com/siliconcompiler/siliconcompiler/actions/workflows/python_ci.yml)
63
64
  [![Tools CI Tests](https://github.com/siliconcompiler/siliconcompiler/actions/workflows/tools_ci.yml/badge.svg?branch=main)](https://github.com/siliconcompiler/siliconcompiler/actions/workflows/tools_ci.yml)
@@ -83,7 +84,7 @@ SiliconCompiler is a modular hardware build system ("make for silicon"). The pro
83
84
  |**FPGA APR**| VPR, nextpnr, Vivado
84
85
  |**Layout Viewer**| Klayout, OpenRoad, Cadence, Synopsys
85
86
  |**DRC/LVS**| Magic, Synopsys, Siemens
86
- |**PDKs**| sky130, gf180, asap7, freepdk45, gf12lp, gf22fdx, intel16
87
+ |**PDKs**| sky130, gf180, asap7, freepdk45, gf12lp, gf22fdx, intel16, ihp130
87
88
 
88
89
  # Getting Started
89
90