siliconcompiler 0.28.4__py3-none-any.whl → 0.28.5__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 (41) hide show
  1. siliconcompiler/_metadata.py +1 -1
  2. siliconcompiler/apps/_common.py +88 -56
  3. siliconcompiler/apps/sc.py +33 -14
  4. siliconcompiler/apps/sc_dashboard.py +16 -9
  5. siliconcompiler/apps/sc_show.py +17 -15
  6. siliconcompiler/core.py +3 -1
  7. siliconcompiler/flows/drcflow.py +13 -0
  8. siliconcompiler/flows/interposerflow.py +17 -0
  9. siliconcompiler/libs/interposer.py +8 -0
  10. siliconcompiler/pdks/interposer.py +8 -0
  11. siliconcompiler/remote/schema.py +11 -1
  12. siliconcompiler/remote/server.py +7 -2
  13. siliconcompiler/scheduler/__init__.py +93 -0
  14. siliconcompiler/schema/schema_cfg.py +15 -3
  15. siliconcompiler/schema/schema_obj.py +51 -1
  16. siliconcompiler/targets/interposer_demo.py +56 -0
  17. siliconcompiler/templates/tcl/manifest.tcl.j2 +2 -0
  18. siliconcompiler/tools/klayout/export.py +7 -4
  19. siliconcompiler/tools/klayout/klayout_export.py +3 -0
  20. siliconcompiler/tools/klayout/klayout_utils.py +8 -2
  21. siliconcompiler/tools/openroad/metrics.py +45 -0
  22. siliconcompiler/tools/openroad/openroad.py +3 -0
  23. siliconcompiler/tools/openroad/rdlroute.py +97 -0
  24. siliconcompiler/tools/openroad/scripts/sc_apr.tcl +1 -1
  25. siliconcompiler/tools/openroad/scripts/sc_metrics.tcl +0 -169
  26. siliconcompiler/tools/openroad/scripts/sc_rdlroute.tcl +184 -0
  27. siliconcompiler/tools/openroad/scripts/sc_report.tcl +170 -0
  28. siliconcompiler/tools/opensta/scripts/sc_report_libraries.tcl +11 -1
  29. siliconcompiler/tools/xyce/__init__.py +1 -1
  30. siliconcompiler/toolscripts/_tools.json +3 -4
  31. siliconcompiler/toolscripts/rhel8/install-xyce.sh +4 -5
  32. siliconcompiler/toolscripts/rhel9/install-xyce.sh +4 -5
  33. siliconcompiler/toolscripts/ubuntu20/install-xyce.sh +5 -5
  34. siliconcompiler/toolscripts/ubuntu22/install-xyce.sh +2 -2
  35. siliconcompiler/toolscripts/ubuntu24/install-xyce.sh +2 -2
  36. {siliconcompiler-0.28.4.dist-info → siliconcompiler-0.28.5.dist-info}/METADATA +4 -4
  37. {siliconcompiler-0.28.4.dist-info → siliconcompiler-0.28.5.dist-info}/RECORD +41 -32
  38. {siliconcompiler-0.28.4.dist-info → siliconcompiler-0.28.5.dist-info}/WHEEL +1 -1
  39. {siliconcompiler-0.28.4.dist-info → siliconcompiler-0.28.5.dist-info}/LICENSE +0 -0
  40. {siliconcompiler-0.28.4.dist-info → siliconcompiler-0.28.5.dist-info}/entry_points.txt +0 -0
  41. {siliconcompiler-0.28.4.dist-info → siliconcompiler-0.28.5.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,184 @@
1
+ ###############################
2
+ # Reading SC Schema
3
+ ###############################
4
+
5
+ source ./sc_manifest.tcl > /dev/null
6
+
7
+ ##############################
8
+ # Schema Adapter
9
+ ###############################
10
+
11
+ set sc_tool openroad
12
+ set sc_step [sc_cfg_get arg step]
13
+ set sc_index [sc_cfg_get arg index]
14
+ set sc_flow [sc_cfg_get option flow]
15
+ set sc_task [sc_cfg_get flowgraph $sc_flow $sc_step $sc_index task]
16
+
17
+ set sc_refdir [sc_cfg_tool_task_get refdir]
18
+
19
+ # Design
20
+ set sc_design [sc_top]
21
+ set sc_optmode [sc_cfg_get option optmode]
22
+ set sc_pdk [sc_cfg_get option pdk]
23
+ set sc_stackup [sc_cfg_get option stackup]
24
+
25
+ # PDK Design Rules
26
+ set sc_libtype [lindex [sc_cfg_get option var openroad_libtype] 0]
27
+ set sc_techlef [sc_cfg_get pdk $sc_pdk aprtech openroad $sc_stackup $sc_libtype lef]
28
+
29
+ set sc_threads [sc_cfg_tool_task_get threads]
30
+
31
+ ###############################
32
+ # Optional
33
+ ###############################
34
+
35
+ # MACROS
36
+ set sc_macrolibs [sc_get_asic_libraries macro]
37
+
38
+ ###############################
39
+ # Suppress messages if requested
40
+ ###############################
41
+
42
+ foreach msg [sc_cfg_tool_task_get warningoff] {
43
+ set or_msg [split $msg "-"]
44
+ if { [llength $or_msg] != 2 } {
45
+ utl::warn FLW 1 "$msg is not a valid message id"
46
+ } else {
47
+ set or_tool [lindex $or_msg 0]
48
+ set or_msg_id [expr { int([lindex $or_msg 1]) }]
49
+ utl::info FLW 1 "Suppressing $msg messages"
50
+ suppress_message $or_tool $or_msg_id
51
+ }
52
+ }
53
+
54
+ ###############################
55
+ # Source helper functions
56
+ ###############################
57
+
58
+ source "$sc_refdir/sc_procs.tcl"
59
+
60
+ ###############################
61
+ # Common Setup
62
+ ###############################
63
+
64
+ set_thread_count $sc_threads
65
+
66
+ # Read techlef
67
+ puts "Reading techlef: ${sc_techlef}"
68
+ read_lef $sc_techlef
69
+
70
+ # Read Lefs
71
+ foreach lib "$sc_macrolibs" {
72
+ foreach lef_file [sc_cfg_get library $lib output $sc_stackup lef] {
73
+ puts "Reading lef: ${lef_file}"
74
+ read_lef $lef_file
75
+ }
76
+ }
77
+
78
+ # Read Verilog
79
+ if { [file exists "inputs/${sc_design}.vg"] } {
80
+ puts "Reading netlist verilog: inputs/${sc_design}.vg"
81
+ read_verilog "inputs/${sc_design}.vg"
82
+ } else {
83
+ foreach netlist [sc_cfg_get input netlist verilog] {
84
+ puts "Reading netlist verilog: ${netlist}"
85
+ read_verilog $netlist
86
+ }
87
+ }
88
+ link_design $sc_design
89
+
90
+ ###############################
91
+ # Source Step Script
92
+ ###############################
93
+
94
+ utl::push_metrics_stage "sc__prestep__{}"
95
+ if { [sc_cfg_tool_task_exists prescript] } {
96
+ foreach sc_pre_script [sc_cfg_tool_task_get prescript] {
97
+ puts "Sourcing pre script: ${sc_pre_script}"
98
+ source -echo $sc_pre_script
99
+ }
100
+ }
101
+ utl::pop_metrics_stage
102
+
103
+ utl::push_metrics_stage "sc__step__{}"
104
+
105
+ ###########################
106
+ # Initialize floorplan
107
+ ###########################
108
+
109
+ if { [sc_cfg_exists input asic floorplan] } {
110
+ set def [lindex [sc_cfg_get input asic floorplan] 0]
111
+ puts "Reading floorplan DEF: ${def}"
112
+ read_def -floorplan_initialize $def
113
+ } else {
114
+ #NOTE: assuming a two tuple value as lower left, upper right
115
+ set sc_diearea [sc_cfg_get constraint outline]
116
+
117
+ # Use die and core sizes
118
+ set sc_diesize "[lindex $sc_diearea 0] [lindex $sc_diearea 1]"
119
+
120
+ set outline [odb::Rect]
121
+ $outline set_xlo [ord::microns_to_dbu [lindex $sc_diesize 0]]
122
+ $outline set_ylo [ord::microns_to_dbu [lindex $sc_diesize 1]]
123
+ $outline set_xhi [ord::microns_to_dbu [lindex $sc_diesize 2]]
124
+ $outline set_yhi [ord::microns_to_dbu [lindex $sc_diesize 3]]
125
+
126
+ [ord::get_db_block] setDieArea $outline
127
+ }
128
+
129
+ puts "Floorplan information:"
130
+ puts "Die area: [ord::get_die_area]"
131
+
132
+ ###########################
133
+ # Track Creation
134
+ ###########################
135
+
136
+ # source tracks from file if found, else else use schema entries
137
+ make_tracks
138
+
139
+ ###########################
140
+ # RDL Routing
141
+ ###########################
142
+ foreach rdl_file [sc_cfg_tool_task_get {file} rdlroute] {
143
+ puts "Sourcing rdlroute: ${rdl_file}"
144
+ source $rdl_file
145
+ }
146
+
147
+ ######################
148
+ # Do fill
149
+ ######################
150
+
151
+ set removed_obs 0
152
+ foreach obstruction [[ord::get_db_block] getObstructions] {
153
+ odb::dbObstruction_destroy $obstruction
154
+ incr removed_obs
155
+ }
156
+ utl::info FLW 1 "Deleted $removed_obs routing obstructions"
157
+
158
+ if {
159
+ [lindex [sc_cfg_tool_task_get var fin_add_fill] 0] == "true" &&
160
+ [sc_cfg_exists pdk $sc_pdk aprtech openroad $sc_stackup $sc_libtype fill]
161
+ } {
162
+ set sc_fillrules \
163
+ [lindex [sc_cfg_get pdk $sc_pdk aprtech openroad $sc_stackup $sc_libtype fill] 0]
164
+ density_fill -rules $sc_fillrules
165
+ }
166
+
167
+ utl::pop_metrics_stage
168
+
169
+ utl::push_metrics_stage "sc__poststep__{}"
170
+ if { [sc_cfg_tool_task_exists postscript] } {
171
+ foreach sc_post_script [sc_cfg_tool_task_get postscript] {
172
+ puts "Sourcing post script: ${sc_post_script}"
173
+ source -echo $sc_post_script
174
+ }
175
+ }
176
+ utl::pop_metrics_stage
177
+
178
+ ###############################
179
+ # Write Design Data
180
+ ###############################
181
+
182
+ utl::push_metrics_stage "sc__write__{}"
183
+ source "$sc_refdir/sc_write.tcl"
184
+ utl::pop_metrics_stage
@@ -0,0 +1,170 @@
1
+ ###############################
2
+ # Report Metrics
3
+ ###############################
4
+
5
+ proc sc_display_report { report } {
6
+ if { ![file exists $report] } {
7
+ return
8
+ }
9
+ set fid [open $report r]
10
+ set report_content [read $fid]
11
+ close $fid
12
+ puts $report_content
13
+ }
14
+
15
+ set fields "{capacitance slew input_pins nets fanout}"
16
+ set PREFIX "SC_METRIC:"
17
+
18
+ if { [sc_cfg_tool_task_check_in_list setup var reports] } {
19
+ puts "$PREFIX report_checks -path_delay max"
20
+ report_checks -fields $fields -path_delay max -format full_clock_expanded \
21
+ > reports/timing/setup.rpt
22
+ sc_display_report reports/timing/setup.rpt
23
+ report_checks -path_delay max -group_count $openroad_sta_top_n_paths \
24
+ > reports/timing/setup.topN.rpt
25
+
26
+ puts "$PREFIX setupslack"
27
+ report_worst_slack -max > reports/timing/worst_slack.setup.rpt
28
+ sc_display_report reports/timing/worst_slack.setup.rpt
29
+ report_worst_slack_metric -setup
30
+
31
+ puts "$PREFIX tns"
32
+ report_tns > reports/timing/total_negative_slack.rpt
33
+ sc_display_report reports/timing/total_negative_slack.rpt
34
+ report_tns_metric -setup
35
+ }
36
+
37
+ if { [sc_cfg_tool_task_check_in_list hold var reports] } {
38
+ puts "$PREFIX report_checks -path_delay min"
39
+ report_checks -fields $fields -path_delay min -format full_clock_expanded \
40
+ > reports/timing/hold.rpt
41
+ sc_display_report reports/timing/hold.rpt
42
+ report_checks -path_delay min -group_count $openroad_sta_top_n_paths \
43
+ > reports/timing/hold.topN.rpt
44
+
45
+ puts "$PREFIX holdslack"
46
+ report_worst_slack -min > reports/timing/worst_slack.hold.rpt
47
+ sc_display_report reports/timing/worst_slack.hold.rpt
48
+ report_worst_slack_metric -hold
49
+
50
+ report_tns_metric -hold
51
+ }
52
+
53
+ if { [sc_cfg_tool_task_check_in_list unconstrained var reports] } {
54
+ puts "$PREFIX unconstrained"
55
+ report_checks -fields $fields -unconstrained -format full_clock_expanded \
56
+ > reports/timing/unconstrained.rpt
57
+ sc_display_report reports/timing/unconstrained.rpt
58
+ report_checks -unconstrained -group_count $openroad_sta_top_n_paths \
59
+ > reports/timing/unconstrained.topN.rpt
60
+ }
61
+
62
+ if {
63
+ [sc_cfg_tool_task_check_in_list clock_skew var reports] &&
64
+ [llength [all_clocks]] > 0
65
+ } {
66
+ puts "$PREFIX clock_skew"
67
+ report_clock_skew -setup -digits 4 > reports/timing/skew.setup.rpt
68
+ sc_display_report reports/timing/skew.setup.rpt
69
+ report_clock_skew_metric -setup
70
+ report_clock_skew -hold -digits 4 > reports/timing/skew.hold.rpt
71
+ sc_display_report reports/timing/skew.hold.rpt
72
+ report_clock_skew_metric -hold
73
+ }
74
+
75
+ if { [sc_cfg_tool_task_check_in_list drv_violations var reports] } {
76
+ puts "$PREFIX DRV violators"
77
+ report_check_types -max_slew -max_capacitance -max_fanout -violators \
78
+ > reports/timing/drv_violators.rpt
79
+ sc_display_report reports/timing/drv_violators.rpt
80
+ report_erc_metrics
81
+
82
+ puts "$PREFIX floating nets"
83
+ report_floating_nets -verbose > reports/floating_nets.rpt
84
+ sc_display_report reports/floating_nets.rpt
85
+ }
86
+
87
+ utl::metric_int "timing__clocks" [llength [all_clocks]]
88
+
89
+ if { [sc_cfg_tool_task_check_in_list fmax var reports] } {
90
+ puts "$PREFIX fmax"
91
+ # Model on: https://github.com/The-OpenROAD-Project/OpenSTA/blob/f913c3ddbb3e7b4364ed4437c65ac78c4da9174b/tcl/Search.tcl#L1078
92
+ set fmax_metric 0
93
+ foreach clk [sta::sort_by_name [all_clocks]] {
94
+ set clk_name [get_name $clk]
95
+ set min_period [sta::find_clk_min_period $clk 1]
96
+ if { $min_period == 0.0 } {
97
+ continue
98
+ }
99
+ set fmax [expr { 1.0 / $min_period }]
100
+ utl::metric_float "timing__fmax__clock:${clk_name}" $fmax
101
+ puts "$clk_name fmax = [format %.2f [expr { $fmax / 1e6 }]] MHz"
102
+ set fmax_metric [expr { max($fmax_metric, $fmax) }]
103
+ }
104
+ if { $fmax_metric > 0 } {
105
+ utl::metric_float "timing__fmax" $fmax_metric
106
+ }
107
+ }
108
+
109
+ # get logic depth of design
110
+ utl::metric_int "design__logic__depth" [count_logic_depth]
111
+
112
+ if { [sc_cfg_tool_task_check_in_list power var reports] } {
113
+ puts "$PREFIX power"
114
+ foreach corner [sta::corners] {
115
+ set corner_name [$corner name]
116
+ puts "Power for corner: $corner_name"
117
+ report_power -corner $corner_name > reports/power/${corner_name}.rpt
118
+ sc_display_report reports/power/${corner_name}.rpt
119
+ }
120
+ report_power_metric -corner $sc_power_corner
121
+ }
122
+
123
+ puts "$PREFIX cellarea"
124
+ report_design_area
125
+ report_design_area_metrics
126
+
127
+ # get number of nets in design
128
+ utl::metric_int "design__nets" [llength [[ord::get_db_block] getNets]]
129
+
130
+ # get number of registers
131
+ utl::metric_int "design__registers" [llength [all_registers]]
132
+
133
+ # get number of buffers
134
+ set bufs 0
135
+ set invs 0
136
+ foreach inst [get_cells -hierarchical *] {
137
+ set cell [$inst cell]
138
+ if { $cell == "NULL" } {
139
+ continue
140
+ }
141
+ set liberty_cell [$cell liberty_cell]
142
+ if { $liberty_cell == "NULL" } {
143
+ continue
144
+ }
145
+ if { [$liberty_cell is_buffer] } {
146
+ incr bufs
147
+ } elseif { [$liberty_cell is_inverter] } {
148
+ incr invs
149
+ }
150
+ }
151
+ utl::metric_int "design__buffers" $bufs
152
+ utl::metric_int "design__inverters" $invs
153
+
154
+ # get number of unconstrained endpoints
155
+ with_output_to_variable endpoints {check_setup -unconstrained_endpoints}
156
+ set unconstrained_endpoints [regexp -all -inline {[0-9]+} $endpoints]
157
+ if { $unconstrained_endpoints == "" } {
158
+ set unconstrained_endpoints 0
159
+ }
160
+ utl::metric_int "timing__unconstrained" $unconstrained_endpoints
161
+
162
+ # Write markers
163
+ foreach markerdb [[ord::get_db_block] getMarkerCategories] {
164
+ if { [$markerdb getMarkerCount] == 0 } {
165
+ continue
166
+ }
167
+
168
+ $markerdb writeTR "reports/markers/${sc_design}.[$markerdb getName].rpt"
169
+ $markerdb writeJSON "reports/markers/${sc_design}.[$markerdb getName].json"
170
+ }
@@ -55,7 +55,17 @@ foreach lib "$sc_targetlibs $sc_macrolibs" {
55
55
 
56
56
  # Report cells
57
57
  foreach cell [get_lib_cells *] {
58
- puts [get_full_name $cell]
58
+ set desc ""
59
+ if { [get_property $cell is_buffer] } {
60
+ set desc " (buffer)"
61
+ } elseif { [get_property $cell is_inverter] } {
62
+ set desc " (inverter)"
63
+ } elseif {
64
+ [llength [get_lib_pins -quiet [get_full_name $cell]/* -filter is_register_clock==1]] != 0
65
+ } {
66
+ set desc " (register)"
67
+ }
68
+ puts "[get_full_name $cell]$desc"
59
69
 
60
70
  set pins [get_lib_pins -quiet [get_full_name $cell]/*]
61
71
  if { [llength $pins] == 0 } {
@@ -7,7 +7,7 @@ and small-scale parallel runs on Unix-like systems.
7
7
 
8
8
  Documentation: https://xyce.sandia.gov/documentation-tutorials/
9
9
 
10
- Sources: https://github.com/Xyce/Xyce
10
+ Sources: https://xyce.sandia.gov/downloads/source-code/
11
11
 
12
12
  Installation: https://xyce.sandia.gov/documentation-tutorials/building-guide/
13
13
 
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "openroad": {
3
3
  "git-url": "https://github.com/The-OpenROAD-Project/OpenROAD.git",
4
- "git-commit": "ea63b9aa612f296523b0ec8a6b51dec94de8839c",
4
+ "git-commit": "1531ad983bfe91384e9253769fdc5f8dcf24fea8",
5
5
  "docker-cmds": [
6
6
  "# Remove OR-Tools files",
7
7
  "RUN rm -f $SC_PREFIX/Makefile $SC_PREFIX/README.md",
@@ -91,13 +91,12 @@
91
91
  },
92
92
  "yosys": {
93
93
  "git-url": "https://github.com/YosysHQ/yosys.git",
94
- "git-commit": "0.46",
94
+ "git-commit": "0.47",
95
95
  "version-prefix": "",
96
96
  "auto-update": true
97
97
  },
98
98
  "xyce": {
99
- "git-url": "https://github.com/Xyce/Xyce.git",
100
- "version": "7.8.0",
99
+ "version": "7.8",
101
100
  "auto-update": false
102
101
  },
103
102
  "xdm": {
@@ -20,17 +20,16 @@ sudo yum install -y gcc gcc-c++ gcc-gfortran blas blas-devel \
20
20
  git
21
21
  sudo dnf config-manager --set-disabled devel || true
22
22
 
23
- # Download Trilinos
23
+ # Download Trilinos.
24
24
  ## Version specified in: https://github.com/Xyce/Xyce/blob/master/INSTALL.md#building-trilinos
25
25
  trilinos_version=14-4-0
26
- wget https://github.com/trilinos/Trilinos/archive/refs/tags/trilinos-release-${trilinos_version}.tar.gz -O trilinos.tar.gz
26
+ wget https://github.com/trilinos/Trilinos/archive/refs/tags/trilinos-release-${trilinos_version}.tar.gz --no-verbose -O trilinos.tar.gz
27
27
  mkdir -p trilinos
28
28
  tar --strip-components=1 -xf trilinos.tar.gz -C trilinos
29
- rm trilinos.tar.gz
30
29
 
31
- # Download Xyce (note that this is needed to build Trilinos)
30
+ # Download Xyce.
32
31
  xyce_version=$(python3 ${src_path}/_tools.py --tool xyce --field version)
33
- wget https://github.com/Xyce/Xyce/archive/refs/tags/Release-${xyce_version}.tar.gz -O xyce.tar.gz
32
+ wget https://xyce.sandia.gov/files/xyce/Xyce-${xyce_version}.tar.gz --no-verbose -O xyce.tar.gz
34
33
  mkdir -p xyce
35
34
  tar --strip-components=1 -xf xyce.tar.gz -C xyce
36
35
  rm xyce.tar.gz
@@ -20,17 +20,16 @@ sudo yum install -y gcc gcc-c++ gcc-gfortran blas blas-devel \
20
20
  git
21
21
  sudo dnf config-manager --set-disabled devel || true
22
22
 
23
- # Download Trilinos
23
+ # Download Trilinos.
24
24
  ## Version specified in: https://github.com/Xyce/Xyce/blob/master/INSTALL.md#building-trilinos
25
25
  trilinos_version=14-4-0
26
- wget https://github.com/trilinos/Trilinos/archive/refs/tags/trilinos-release-${trilinos_version}.tar.gz -O trilinos.tar.gz
26
+ wget https://github.com/trilinos/Trilinos/archive/refs/tags/trilinos-release-${trilinos_version}.tar.gz --no-verbose -O trilinos.tar.gz
27
27
  mkdir -p trilinos
28
28
  tar --strip-components=1 -xf trilinos.tar.gz -C trilinos
29
- rm trilinos.tar.gz
30
29
 
31
- # Download Xyce (note that this is needed to build Trilinos)
30
+ # Download Xyce.
32
31
  xyce_version=$(python3 ${src_path}/_tools.py --tool xyce --field version)
33
- wget https://github.com/Xyce/Xyce/archive/refs/tags/Release-${xyce_version}.tar.gz -O xyce.tar.gz
32
+ wget https://xyce.sandia.gov/files/xyce/Xyce-${xyce_version}.tar.gz --no-verbose -O xyce.tar.gz
34
33
  mkdir -p xyce
35
34
  tar --strip-components=1 -xf xyce.tar.gz -C xyce
36
35
  rm xyce.tar.gz
@@ -20,20 +20,20 @@ fi
20
20
  # Install CMAKE
21
21
  python3 -m venv .xyce --clear
22
22
  . .xyce/bin/activate
23
- python3 -m pip install cmake
23
+ python3 -m pip install cmake>=3.23.0
24
24
 
25
25
  # Download Trilinos.
26
26
  ## Version specified in: https://github.com/Xyce/Xyce/blob/master/INSTALL.md#building-trilinos
27
27
  trilinos_version=14-4-0
28
- wget https://github.com/trilinos/Trilinos/archive/refs/tags/trilinos-release-${trilinos_version}.tar.gz -O trilinos.tar.gz
28
+ wget https://github.com/trilinos/Trilinos/archive/refs/tags/trilinos-release-${trilinos_version}.tar.gz --no-verbose -O trilinos.tar.gz
29
29
  mkdir -p trilinos
30
- tar --strip-components=1 -xvf trilinos.tar.gz -C trilinos
30
+ tar --strip-components=1 -xf trilinos.tar.gz -C trilinos
31
31
 
32
32
  # Download Xyce.
33
33
  xyce_version=$(python3 ${src_path}/_tools.py --tool xyce --field version)
34
- wget https://github.com/Xyce/Xyce/archive/refs/tags/Release-${xyce_version}.tar.gz -O xyce.tar.gz
34
+ wget https://xyce.sandia.gov/files/xyce/Xyce-${xyce_version}.tar.gz --no-verbose -O xyce.tar.gz
35
35
  mkdir -p xyce
36
- tar --strip-components=1 -xvf xyce.tar.gz -C xyce
36
+ tar --strip-components=1 -xf xyce.tar.gz -C xyce
37
37
 
38
38
  cd xyce
39
39
 
@@ -25,13 +25,13 @@ python3 -m pip install cmake>=3.23.0
25
25
  # Download Trilinos.
26
26
  ## Version specified in: https://github.com/Xyce/Xyce/blob/master/INSTALL.md#building-trilinos
27
27
  trilinos_version=14-4-0
28
- wget https://github.com/trilinos/Trilinos/archive/refs/tags/trilinos-release-${trilinos_version}.tar.gz -O trilinos.tar.gz
28
+ wget https://github.com/trilinos/Trilinos/archive/refs/tags/trilinos-release-${trilinos_version}.tar.gz --no-verbose -O trilinos.tar.gz
29
29
  mkdir -p trilinos
30
30
  tar --strip-components=1 -xf trilinos.tar.gz -C trilinos
31
31
 
32
32
  # Download Xyce.
33
33
  xyce_version=$(python3 ${src_path}/_tools.py --tool xyce --field version)
34
- wget https://github.com/Xyce/Xyce/archive/refs/tags/Release-${xyce_version}.tar.gz -O xyce.tar.gz
34
+ wget https://xyce.sandia.gov/files/xyce/Xyce-${xyce_version}.tar.gz --no-verbose -O xyce.tar.gz
35
35
  mkdir -p xyce
36
36
  tar --strip-components=1 -xf xyce.tar.gz -C xyce
37
37
 
@@ -25,13 +25,13 @@ python3 -m pip install cmake>=3.23.0
25
25
  # Download Trilinos.
26
26
  ## Version specified in: https://github.com/Xyce/Xyce/blob/master/INSTALL.md#building-trilinos
27
27
  trilinos_version=14-4-0
28
- wget https://github.com/trilinos/Trilinos/archive/refs/tags/trilinos-release-${trilinos_version}.tar.gz -O trilinos.tar.gz
28
+ wget https://github.com/trilinos/Trilinos/archive/refs/tags/trilinos-release-${trilinos_version}.tar.gz --no-verbose -O trilinos.tar.gz
29
29
  mkdir -p trilinos
30
30
  tar --strip-components=1 -xf trilinos.tar.gz -C trilinos
31
31
 
32
32
  # Download Xyce.
33
33
  xyce_version=$(python3 ${src_path}/_tools.py --tool xyce --field version)
34
- wget https://github.com/Xyce/Xyce/archive/refs/tags/Release-${xyce_version}.tar.gz -O xyce.tar.gz
34
+ wget https://xyce.sandia.gov/files/xyce/Xyce-${xyce_version}.tar.gz --no-verbose -O xyce.tar.gz
35
35
  mkdir -p xyce
36
36
  tar --strip-components=1 -xf xyce.tar.gz -C xyce
37
37
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: siliconcompiler
3
- Version: 0.28.4
3
+ Version: 0.28.5
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
@@ -36,14 +36,14 @@ Requires-Dist: packaging <24,>=21.3
36
36
  Requires-Dist: psutil >=5.8.0
37
37
  Requires-Dist: Pillow ==10.4.0
38
38
  Requires-Dist: GitPython ==3.1.43
39
- Requires-Dist: lambdapdk >=0.1.34
39
+ Requires-Dist: lambdapdk >=0.1.38
40
40
  Requires-Dist: PyGithub ==2.4.0
41
41
  Requires-Dist: urllib3 >=1.26.0
42
42
  Requires-Dist: fasteners ==0.19
43
43
  Requires-Dist: fastjsonschema ==2.20.0
44
44
  Requires-Dist: docker ==7.1.0
45
45
  Requires-Dist: sc-surelog ==1.84.1
46
- Requires-Dist: orjson ==3.10.10
46
+ Requires-Dist: orjson ==3.10.11
47
47
  Requires-Dist: streamlit ==1.39.0
48
48
  Requires-Dist: streamlit-agraph ==0.0.45
49
49
  Requires-Dist: streamlit-antd-components ==0.3.2
@@ -57,7 +57,7 @@ Requires-Dist: pydata-sphinx-theme ==0.16.0 ; extra == 'docs'
57
57
  Requires-Dist: sc-leflib >=0.2.0 ; extra == 'docs'
58
58
  Provides-Extra: examples
59
59
  Requires-Dist: migen ==0.9.2 ; extra == 'examples'
60
- Requires-Dist: lambdalib ==0.2.10 ; extra == 'examples'
60
+ Requires-Dist: lambdalib ==0.3.0 ; extra == 'examples'
61
61
  Provides-Extra: profile
62
62
  Requires-Dist: gprof2dot ==2024.6.6 ; extra == 'profile'
63
63
  Provides-Extra: test