Skip to content

Commit 652bd72

Browse files
committed
Merge branch 'master' of https://github.com/The-OpenROAD-Project-private/OpenROAD-flow-scripts into secure-add-warning-metrics
Signed-off-by: Jaehyun Kim <[email protected]>
2 parents 70f2662 + 3e652e5 commit 652bd72

File tree

29 files changed

+167
-87
lines changed

29 files changed

+167
-87
lines changed

docs/user/BuildLocally.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,23 @@ cd OpenROAD-flow-scripts
1212
sudo ./setup.sh
1313
```
1414

15+
## Using Bazel to build OpenROAD and run the ORFS flow
16+
17+
Long story short: OpenROAD will eventually switch to using Bazel for downloading dependencies and building OpenROAD for all the reasons that the DependencyInstaller.sh and cmake are hard to support and brittle across platforms.
18+
19+
Currently the simplest way to build OpenROAD and run ORFS is to run one test, which will download all OpenROAD dependencies and build OpenROAD in the exec configuration:
20+
21+
``` shell
22+
cd tools/OpenROAD
23+
bazelisk test src/drt/...
24+
cd ../../flow
25+
make OPENROAD_EXE=$(pwd)/../tools/OpenROAD/bazel-out/k8-opt-exec-ST-*/bin/openroad
26+
```
27+
28+
Bazel could similarly be used to download and make available pre-built binaries for tools such as Yosys, eqy and KLayout.
29+
30+
Running some quick tests will cause the desired exec config of OpenROAD to be built. There's no explicit Bazel way to build an exec config of an executable and we want to to use an exec config that is the same binary as is used for a local OpenROAD modify + test Bazel cycle.
31+
1532
## Build
1633

1734
``` shell

docs/user/FlowVariables.md

Lines changed: 19 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -100,12 +100,14 @@ configuration file.
100100
| <a name="ADDITIONAL_GDS"></a>ADDITIONAL_GDS| Hardened macro GDS files listed here.| |
101101
| <a name="ADDITIONAL_LEFS"></a>ADDITIONAL_LEFS| Hardened macro LEF view files listed here. The LEF information of the macros is immutable and used throughout all stages. Stored in the .odb file.| |
102102
| <a name="ADDITIONAL_LIBS"></a>ADDITIONAL_LIBS| Hardened macro library files listed here. The library information is immutable and used throughout all stages. Not stored in the .odb file.| |
103+
| <a name="BALANCE_ROWS"></a>BALANCE_ROWS| Balance rows during placement.| 0|
103104
| <a name="BLOCKS"></a>BLOCKS| Blocks used as hard macros in a hierarchical flow. Do note that you have to specify block-specific inputs file in the directory mentioned by Makefile.| |
104105
| <a name="CAP_MARGIN"></a>CAP_MARGIN| Specifies a capacitance margin when fixing max capacitance violations. This option allows you to overfix.| |
105106
| <a name="CDL_FILES"></a>CDL_FILES| Insert additional Circuit Description Language (`.cdl`) netlist files.| |
106107
| <a name="CELL_PAD_IN_SITES_DETAIL_PLACEMENT"></a>CELL_PAD_IN_SITES_DETAIL_PLACEMENT| Cell padding on both sides in site widths to ease routability in detail placement.| 0|
107108
| <a name="CELL_PAD_IN_SITES_GLOBAL_PLACEMENT"></a>CELL_PAD_IN_SITES_GLOBAL_PLACEMENT| Cell padding on both sides in site widths to ease routability during global placement.| 0|
108109
| <a name="CLKGATE_MAP_FILE"></a>CLKGATE_MAP_FILE| List of cells for gating clock treated as a black box by Yosys.| |
110+
| <a name="CLUSTER_FLOPS"></a>CLUSTER_FLOPS| Minimum number of flip-flops per sink cluster.| 0|
109111
| <a name="CORE_AREA"></a>CORE_AREA| The core area specified as a list of lower-left and upper-right corners in microns (X1 Y1 X2 Y2).| |
110112
| <a name="CORE_ASPECT_RATIO"></a>CORE_ASPECT_RATIO| The core aspect ratio (height / width). This value is ignored if `CORE_UTILIZATION` is undefined.| 1.0|
111113
| <a name="CORE_MARGIN"></a>CORE_MARGIN| The margin between the core area and die area, specified in microns. Allowed values are either one value for all margins or a set of four values, one for each margin. The order of the four values are: `{bottom top left right}`. This variable is ignored if `CORE_UTILIZATION` is undefined.| 1.0|
@@ -118,13 +120,15 @@ configuration file.
118120
| <a name="CTS_CLUSTER_SIZE"></a>CTS_CLUSTER_SIZE| Maximum number of sinks per cluster.| |
119121
| <a name="CTS_LIB_NAME"></a>CTS_LIB_NAME| Name of the Liberty library to use in selecting the clock buffers.| |
120122
| <a name="CTS_SNAPSHOT"></a>CTS_SNAPSHOT| Creates ODB/SDC files prior to clock net and setup/hold repair.| |
123+
| <a name="CTS_SNAPSHOTS"></a>CTS_SNAPSHOTS| Create ODB/SDC files at different stages of CTS.| 0|
121124
| <a name="DESIGN_NAME"></a>DESIGN_NAME| The name of the top-level module of the design.| |
122125
| <a name="DESIGN_NICKNAME"></a>DESIGN_NICKNAME| DESIGN_NICKNAME just changes the directory name that ORFS outputs to be DESIGN_NICKNAME instead of DESIGN_NAME in case DESIGN_NAME is unwieldy or conflicts with a different design.| |
123126
| <a name="DETAILED_METRICS"></a>DETAILED_METRICS| If set, then calls report_metrics prior to repair operations in the CTS and global route stages| 0|
124127
| <a name="DETAILED_ROUTE_ARGS"></a>DETAILED_ROUTE_ARGS| Add additional arguments for debugging purposes during detail route.| |
125128
| <a name="DETAILED_ROUTE_END_ITERATION"></a>DETAILED_ROUTE_END_ITERATION| Maximum number of iterations.| 64|
126129
| <a name="DFF_LIB_FILES"></a>DFF_LIB_FILES| Technology mapping liberty files for flip-flops.| |
127130
| <a name="DIE_AREA"></a>DIE_AREA| The die area specified as a list of lower-left and upper-right corners in microns (X1 Y1 X2 Y2).| |
131+
| <a name="DONT_BUFFER_PORTS"></a>DONT_BUFFER_PORTS| Do not buffer input/output ports during floorplanning.| 0|
128132
| <a name="DONT_USE_CELLS"></a>DONT_USE_CELLS| Dont use cells eases pin access in detailed routing.| |
129133
| <a name="DPO_MAX_DISPLACEMENT"></a>DPO_MAX_DISPLACEMENT| Specifies how far an instance can be moved when optimizing.| 5 1|
130134
| <a name="EARLY_SIZING_CAP_RATIO"></a>EARLY_SIZING_CAP_RATIO| Ratio between the input pin capacitance and the output pin load during initial gate sizing.| |
@@ -182,7 +186,7 @@ configuration file.
182186
| <a name="PWR_NETS_VOLTAGES"></a>PWR_NETS_VOLTAGES| Used for IR Drop calculation.| |
183187
| <a name="RCX_RULES"></a>RCX_RULES| RC Extraction rules file path.| |
184188
| <a name="RECOVER_POWER"></a>RECOVER_POWER| Specifies how many percent of paths with positive slacks can be slowed for power savings [0-100].| 0|
185-
| <a name="REMOVE_ABC_BUFFERS"></a>REMOVE_ABC_BUFFERS (deprecated)| Remove abc buffers from the netlist. If timing repair in floorplanning is taking too long, use a SETUP/HOLD_SLACK_MARGIN to terminate timing repair early instead of using REMOVE_ABC_BUFFERS or set SKIP_LAST_GASP=1.| |
189+
| <a name="REMOVE_ABC_BUFFERS"></a>REMOVE_ABC_BUFFERS (deprecated)| Remove abc buffers from the netlist. If timing repair in floorplanning is taking too long, use a SETUP/HOLD_SLACK_MARGIN to terminate timing repair early instead of using REMOVE_ABC_BUFFERS or set SKIP_LAST_GASP=1.| 0|
186190
| <a name="REMOVE_CELLS_FOR_EQY"></a>REMOVE_CELLS_FOR_EQY| String patterns directly passed to write_verilog -remove_cells <> for equivalence checks.| |
187191
| <a name="REPAIR_PDN_VIA_LAYER"></a>REPAIR_PDN_VIA_LAYER| Remove power grid vias which generate DRC violations after detailed routing.| |
188192
| <a name="REPORT_CLOCK_SKEW"></a>REPORT_CLOCK_SKEW| Report clock skew as part of reporting metrics, starting at CTS, before which there is no clock skew. This metric can be quite time-consuming, so it can be useful to disable.| 1|
@@ -216,22 +220,25 @@ configuration file.
216220
| <a name="SETUP_REPAIR_SEQUENCE"></a>SETUP_REPAIR_SEQUENCE| Specifies the sequence of moves to do in repair_timing -setup. This should be a string of move keywords separated by commas such as the default when not used: "unbuffer,sizedown,sizeup,swap,buffer,clone,split".| |
217221
| <a name="SETUP_SLACK_MARGIN"></a>SETUP_SLACK_MARGIN| Specifies a time margin for the slack when fixing setup violations. This option allows you to overfix or underfix(negative value, terminate retiming before 0 or positive slack). See HOLD_SLACK_MARGIN for more details.| 0|
218222
| <a name="SET_RC_TCL"></a>SET_RC_TCL| Metal & Via RC definition file path.| |
223+
| <a name="SKIP_ANTENNA_REPAIR"></a>SKIP_ANTENNA_REPAIR| Skips antenna repair entirely.| 0|
224+
| <a name="SKIP_ANTENNA_REPAIR_POST_DRT"></a>SKIP_ANTENNA_REPAIR_POST_DRT| Skips antenna repair post-detailed routing.| 0|
225+
| <a name="SKIP_ANTENNA_REPAIR_PRE_GRT"></a>SKIP_ANTENNA_REPAIR_PRE_GRT| Skips antenna repair pre-global routing.| 0|
219226
| <a name="SKIP_CRIT_VT_SWAP"></a>SKIP_CRIT_VT_SWAP| Do not perform VT swap on critical cells to improve QoR (default: do critical VT swap). This is an additional VT swap on critical cells that remain near the end of setup fixing. If SKIP_VT_SWAP is set to 1, this also disables critical cell VT swap.| |
220-
| <a name="SKIP_CTS_REPAIR_TIMING"></a>SKIP_CTS_REPAIR_TIMING| Skipping CTS repair, which can take a long time, can be useful in architectural exploration or when getting CI up and running.| |
227+
| <a name="SKIP_CTS_REPAIR_TIMING"></a>SKIP_CTS_REPAIR_TIMING| Skipping CTS repair, which can take a long time, can be useful in architectural exploration or when getting CI up and running.| 0|
221228
| <a name="SKIP_DETAILED_ROUTE"></a>SKIP_DETAILED_ROUTE| Skips detailed route.| 0|
222229
| <a name="SKIP_GATE_CLONING"></a>SKIP_GATE_CLONING| Do not use gate cloning transform to fix timing violations (default: use gate cloning).| |
223230
| <a name="SKIP_INCREMENTAL_REPAIR"></a>SKIP_INCREMENTAL_REPAIR| Skip incremental repair in global route.| 0|
224231
| <a name="SKIP_LAST_GASP"></a>SKIP_LAST_GASP| Do not use last gasp optimization to fix timing violations (default: use gate last gasp).| |
225232
| <a name="SKIP_PIN_SWAP"></a>SKIP_PIN_SWAP| Do not use pin swapping as a transform to fix timing violations (default: use pin swapping).| |
226-
| <a name="SKIP_REPAIR_TIE_FANOUT"></a>SKIP_REPAIR_TIE_FANOUT| Skip repair_tie_fanout at floorplan step.| |
227-
| <a name="SKIP_REPORT_METRICS"></a>SKIP_REPORT_METRICS| If set to 1, then metrics, report_metrics does nothing. Useful to speed up builds.| |
233+
| <a name="SKIP_REPAIR_TIE_FANOUT"></a>SKIP_REPAIR_TIE_FANOUT| Skip repair_tie_fanout at floorplan step.| 0|
234+
| <a name="SKIP_REPORT_METRICS"></a>SKIP_REPORT_METRICS| If set to 1, then metrics, report_metrics does nothing. Useful to speed up builds.| 0|
228235
| <a name="SKIP_VT_SWAP"></a>SKIP_VT_SWAP| Do not perform VT swap to improve QoR (default: do VT swap).| |
229236
| <a name="SLEW_MARGIN"></a>SLEW_MARGIN| Specifies a slew margin when fixing max slew violations. This option allows you to overfix.| |
230237
| <a name="SWAP_ARITH_OPERATORS"></a>SWAP_ARITH_OPERATORS| Improve timing QoR by swapping ALU and MULT arithmetic operators.| |
231238
| <a name="SYNTH_ARGS"></a>SYNTH_ARGS| Optional synthesis variables for yosys.| |
232239
| <a name="SYNTH_BLACKBOXES"></a>SYNTH_BLACKBOXES| List of cells treated as a black box by Yosys. With Bazel, this can be used to run synthesis in parallel for the large modules of the design.| |
233240
| <a name="SYNTH_CANONICALIZE_TCL"></a>SYNTH_CANONICALIZE_TCL| Specifies a Tcl script with commands to run as part of the synth canonicalize step.| |
234-
| <a name="SYNTH_GUT"></a>SYNTH_GUT| Load design and remove all internal logic before doing synthesis. This is useful when creating a mock .lef abstract that has a smaller area than the amount of logic would allow. bazel-orfs uses this to mock SRAMs, for instance.| |
241+
| <a name="SYNTH_GUT"></a>SYNTH_GUT| Load design and remove all internal logic before doing synthesis. This is useful when creating a mock .lef abstract that has a smaller area than the amount of logic would allow. bazel-orfs uses this to mock SRAMs, for instance.| 0|
235242
| <a name="SYNTH_HDL_FRONTEND"></a>SYNTH_HDL_FRONTEND| Select an alternative language frontend to ingest the design. Available option is "slang". If the variable is empty, design is read with the Yosys read_verilog command.| |
236243
| <a name="SYNTH_HIERARCHICAL"></a>SYNTH_HIERARCHICAL| Enable to Synthesis hierarchically, otherwise considered flat synthesis.| 0|
237244
| <a name="SYNTH_HIER_SEPARATOR"></a>SYNTH_HIER_SEPARATOR| Separator used for the synthesis flatten stage.| .|
@@ -355,8 +362,11 @@ configuration file.
355362

356363
## place variables
357364

365+
- [BALANCE_ROWS](#BALANCE_ROWS)
358366
- [CELL_PAD_IN_SITES_DETAIL_PLACEMENT](#CELL_PAD_IN_SITES_DETAIL_PLACEMENT)
359367
- [CELL_PAD_IN_SITES_GLOBAL_PLACEMENT](#CELL_PAD_IN_SITES_GLOBAL_PLACEMENT)
368+
- [CLUSTER_FLOPS](#CLUSTER_FLOPS)
369+
- [DONT_BUFFER_PORTS](#DONT_BUFFER_PORTS)
360370
- [EARLY_SIZING_CAP_RATIO](#EARLY_SIZING_CAP_RATIO)
361371
- [FLOORPLAN_DEF](#FLOORPLAN_DEF)
362372
- [GPL_ROUTABILITY_DRIVEN](#GPL_ROUTABILITY_DRIVEN)
@@ -383,6 +393,7 @@ configuration file.
383393
- [CTS_CLUSTER_SIZE](#CTS_CLUSTER_SIZE)
384394
- [CTS_LIB_NAME](#CTS_LIB_NAME)
385395
- [CTS_SNAPSHOT](#CTS_SNAPSHOT)
396+
- [CTS_SNAPSHOTS](#CTS_SNAPSHOTS)
386397
- [DETAILED_METRICS](#DETAILED_METRICS)
387398
- [EQUIVALENCE_CHECK](#EQUIVALENCE_CHECK)
388399
- [HOLD_SLACK_MARGIN](#HOLD_SLACK_MARGIN)
@@ -415,6 +426,8 @@ configuration file.
415426
- [ROUTING_LAYER_ADJUSTMENT](#ROUTING_LAYER_ADJUSTMENT)
416427
- [SETUP_REPAIR_SEQUENCE](#SETUP_REPAIR_SEQUENCE)
417428
- [SETUP_SLACK_MARGIN](#SETUP_SLACK_MARGIN)
429+
- [SKIP_ANTENNA_REPAIR](#SKIP_ANTENNA_REPAIR)
430+
- [SKIP_ANTENNA_REPAIR_PRE_GRT](#SKIP_ANTENNA_REPAIR_PRE_GRT)
418431
- [SKIP_CRIT_VT_SWAP](#SKIP_CRIT_VT_SWAP)
419432
- [SKIP_GATE_CLONING](#SKIP_GATE_CLONING)
420433
- [SKIP_INCREMENTAL_REPAIR](#SKIP_INCREMENTAL_REPAIR)
@@ -435,6 +448,7 @@ configuration file.
435448
- [MIN_ROUTING_LAYER](#MIN_ROUTING_LAYER)
436449
- [REPORT_CLOCK_SKEW](#REPORT_CLOCK_SKEW)
437450
- [ROUTING_LAYER_ADJUSTMENT](#ROUTING_LAYER_ADJUSTMENT)
451+
- [SKIP_ANTENNA_REPAIR_POST_DRT](#SKIP_ANTENNA_REPAIR_POST_DRT)
438452
- [SKIP_DETAILED_ROUTE](#SKIP_DETAILED_ROUTE)
439453
- [SKIP_REPORT_METRICS](#SKIP_REPORT_METRICS)
440454

flow/designs/gf12/swerv_wrapper/rules-base.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@
9292
"compare": ">="
9393
},
9494
"detailedroute__timing__hold__tns": {
95-
"value": -61778,
95+
"value": -52400.0,
9696
"compare": ">="
9797
},
9898
"finish__timing__setup__ws": {
@@ -108,7 +108,7 @@
108108
"compare": ">="
109109
},
110110
"finish__timing__hold__tns": {
111-
"value": -525.0,
111+
"value": -1070.0,
112112
"compare": ">="
113113
},
114114
"finish__design__instance__area": {

flow/designs/ihp-sg13g2/riscv32i/config.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ export PLATFORM = ihp-sg13g2
55
export VERILOG_FILES = $(sort $(wildcard $(DESIGN_HOME)/src/$(DESIGN_NICKNAME)/*.v))
66
export SDC_FILE = $(DESIGN_HOME)/$(PLATFORM)/$(DESIGN_NICKNAME)/constraint.sdc
77

8-
export USE_FILL 1
8+
export USE_FILL = 1
99

1010
export CORE_UTILIZATION = 35
1111
export PLACE_DENSITY_LB_ADDON = 0.2

flow/designs/nangate45/bp_multi_top/rules-base.json

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
"compare": "<="
2929
},
3030
"cts__timing__setup__ws": {
31-
"value": -4.62,
31+
"value": -4.61,
3232
"compare": ">="
3333
},
3434
"cts__timing__setup__tns": {
@@ -48,7 +48,7 @@
4848
"compare": "<="
4949
},
5050
"globalroute__timing__setup__ws": {
51-
"value": -4.73,
51+
"value": -4.72,
5252
"compare": ">="
5353
},
5454
"globalroute__timing__setup__tns": {
@@ -64,7 +64,7 @@
6464
"compare": ">="
6565
},
6666
"detailedroute__route__wirelength": {
67-
"value": 5065542,
67+
"value": 4644375,
6868
"compare": "<="
6969
},
7070
"detailedroute__route__drc_errors": {
@@ -84,19 +84,19 @@
8484
"compare": ">="
8585
},
8686
"detailedroute__timing__setup__tns": {
87-
"value": -6.01,
87+
"value": -5.15,
8888
"compare": ">="
8989
},
9090
"detailedroute__timing__hold__ws": {
9191
"value": -0.0646,
9292
"compare": ">="
9393
},
9494
"detailedroute__timing__hold__tns": {
95-
"value": -0.8,
95+
"value": -5.05,
9696
"compare": ">="
9797
},
9898
"finish__timing__setup__ws": {
99-
"value": -4.71,
99+
"value": -4.68,
100100
"compare": ">="
101101
},
102102
"finish__timing__setup__tns": {

flow/designs/nangate45/swerv/rules-base.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
"compare": ">="
3333
},
3434
"cts__timing__setup__tns": {
35-
"value": -4.11,
35+
"value": -41.7,
3636
"compare": ">="
3737
},
3838
"cts__timing__hold__ws": {
@@ -52,7 +52,7 @@
5252
"compare": ">="
5353
},
5454
"globalroute__timing__setup__tns": {
55-
"value": -3.1,
55+
"value": -56.6,
5656
"compare": ">="
5757
},
5858
"globalroute__timing__hold__ws": {
@@ -92,15 +92,15 @@
9292
"compare": ">="
9393
},
9494
"detailedroute__timing__hold__tns": {
95-
"value": -0.992,
95+
"value": -3.02,
9696
"compare": ">="
9797
},
9898
"finish__timing__setup__ws": {
9999
"value": -0.235,
100100
"compare": ">="
101101
},
102102
"finish__timing__setup__tns": {
103-
"value": -7.26,
103+
"value": -60.4,
104104
"compare": ">="
105105
},
106106
"finish__timing__hold__ws": {

flow/designs/rapidus2hp/hercules_idecode/rules-base.json

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -48,35 +48,35 @@
4848
"compare": "<="
4949
},
5050
"globalroute__timing__setup__ws": {
51-
"value": -340.0,
51+
"value": -308.0,
5252
"compare": ">="
5353
},
5454
"globalroute__timing__setup__tns": {
55-
"value": -1370000.0,
55+
"value": -1300000.0,
5656
"compare": ">="
5757
},
5858
"globalroute__timing__hold__ws": {
59-
"value": 0.0,
59+
"value": -12.5,
6060
"compare": ">="
6161
},
6262
"globalroute__timing__hold__tns": {
63-
"value": 0.0,
63+
"value": -50.0,
6464
"compare": ">="
6565
},
6666
"finish__timing__setup__ws": {
67-
"value": -340.0,
67+
"value": -308.0,
6868
"compare": ">="
6969
},
7070
"finish__timing__setup__tns": {
71-
"value": -1523268.0,
71+
"value": -1300000.0,
7272
"compare": ">="
7373
},
7474
"finish__timing__hold__ws": {
75-
"value": 0.0,
75+
"value": -12.5,
7676
"compare": ">="
7777
},
7878
"finish__timing__hold__tns": {
79-
"value": 0.0,
79+
"value": -50.0,
8080
"compare": ">="
8181
},
8282
"finish__design__instance__area": {

flow/designs/rapidus2hp/hercules_is_int/rules-base.json

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
"compare": "<="
2929
},
3030
"cts__timing__setup__ws": {
31-
"value": -359.0,
31+
"value": -354.0,
3232
"compare": ">="
3333
},
3434
"cts__timing__setup__tns": {
@@ -48,11 +48,11 @@
4848
"compare": "<="
4949
},
5050
"globalroute__timing__setup__ws": {
51-
"value": -436.0,
51+
"value": -451.0,
5252
"compare": ">="
5353
},
5454
"globalroute__timing__setup__tns": {
55-
"value": -4050000.0,
55+
"value": -3740000.0,
5656
"compare": ">="
5757
},
5858
"globalroute__timing__hold__ws": {
@@ -64,11 +64,11 @@
6464
"compare": ">="
6565
},
6666
"finish__timing__setup__ws": {
67-
"value": -436.0,
67+
"value": -451.0,
6868
"compare": ">="
6969
},
7070
"finish__timing__setup__tns": {
71-
"value": -4050000.0,
71+
"value": -3740000.0,
7272
"compare": ">="
7373
},
7474
"finish__timing__hold__ws": {

flow/designs/sky130hd/aes/rules-base.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -48,11 +48,11 @@
4848
"compare": "<="
4949
},
5050
"globalroute__timing__setup__ws": {
51-
"value": -0.279,
51+
"value": -0.272,
5252
"compare": ">="
5353
},
5454
"globalroute__timing__setup__tns": {
55-
"value": -1.01,
55+
"value": -1.0,
5656
"compare": ">="
5757
},
5858
"globalroute__timing__hold__ws": {
@@ -64,7 +64,7 @@
6464
"compare": ">="
6565
},
6666
"detailedroute__route__wirelength": {
67-
"value": 783010,
67+
"value": 961372,
6868
"compare": "<="
6969
},
7070
"detailedroute__route__drc_errors": {

flow/designs/sky130hd/ibex/rules-base.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
"compare": ">="
3333
},
3434
"cts__timing__setup__tns": {
35-
"value": -4.5,
35+
"value": -8.15,
3636
"compare": ">="
3737
},
3838
"cts__timing__hold__ws": {

0 commit comments

Comments
 (0)