diff --git a/docs/user/FlowVariables.md b/docs/user/FlowVariables.md index 8e6982a850..02c50d58ab 100644 --- a/docs/user/FlowVariables.md +++ b/docs/user/FlowVariables.md @@ -134,7 +134,6 @@ Note: | `PLACE_SITE` | Placement site for core cells defined in the technology LEF file. | | `TAPCELL_TCL` | Path to Endcap and Welltie cells file. | | `RTLMP_FLOW` | 1 to enable the Hierarchical RTLMP flow, default empty | -| `MACRO_HALO` | Specifies keep out distance from macro, in X and Y, to standard cell row. | | `MACRO_PLACEMENT` | Specifies the path of a file on how to place certain macros manually using read_macro_placement. | | `MACRO_PLACEMENT_TCL` | Specifies the path of a TCL file on how to place certain macros manually. | | `MACRO_PLACE_HALO` | horizontal/vertical halo around macros (microns). Used by automatic macro placement. | @@ -193,6 +192,7 @@ Note: | `DETAILED_ROUTE_ARGS` | Add additional arguments for debugging purpose during detail route. | | `MACRO_EXTENSION` | Sets the number of GCells added to the blockages boundaries from macros. | | `RECOVER_POWER` | Specifies how many percent of paths with positive slacks can be slowed for power savings [0-100]. | +| `DETAILED_ROUTE_END_ITERATION` | Maximum number of iterations, default 64. | ### Extraction diff --git a/docs/user/InstructionsForAutoTuner.md b/docs/user/InstructionsForAutoTuner.md index c1e2fc1c41..31273c2d8c 100644 --- a/docs/user/InstructionsForAutoTuner.md +++ b/docs/user/InstructionsForAutoTuner.md @@ -27,6 +27,10 @@ We have provided two convenience scripts, `./install.sh` and `./setup.sh` that works in Python3.8 for installation and configuration of AutoTuner, as shown below: +```{note} +Make sure you run the following commands in `./tools/AutoTuner/src/autotuner`. +``` + ```shell # Install prerequisites ./tools/AutoTuner/install.sh @@ -127,8 +131,8 @@ Example: ```shell python3 distributed.py --design gcd --platform sky130hd \ - --config ../designs/sky130hd/gcd/autotuner.json \ - tune + --config ../../../../flow/designs/sky130hd/gcd/autotuner.json \ + tune --samples 5 ``` #### Sweep only diff --git a/flow/Makefile b/flow/Makefile index 079018a311..ab09e99fcf 100644 --- a/flow/Makefile +++ b/flow/Makefile @@ -109,46 +109,6 @@ DESIGN_CONFIG ?= ./designs/nangate45/gcd/config.mk # this file. include $(DESIGN_CONFIG) -# For instance Bazel needs artifacts (.odb and .rpt files) on a failure to -# allow the user to save hours on re-running the failed step locally, but -# when working with a Makefile flow, it is more natural to fail the step -# and leave the user to manually inspect the logs and artifacts directly via -# the file system. -# -# Set to 1 to change the behavior to generate artifacts upon failure to -# e.g. do a global route. The exit code will still be non-zero on all other -# failures that aren't covered by the "useful to inspect the artifacts on -# failure" use-case. -# -# Example: just like detailed routing, a global route that fails with congestion, is not -# a build failure(as in exit code non-zero), it is a successful(as in zero exit code) -# global route that produce reports detailing the problem. -# -# Detailed route will not proceed, if there is global routing congestion -# -# This allows build systems, such as bazel, to create artifacts for global -# and detailed route, even if the operation had problems, without having -# know about the semantics between global and detailed route. -# -# Considering that global and detailed route can run for a long time and -# use a lot of memory, this allows inspecting results on a laptop for -# a build that ran on a server. -export GENERATE_ARTIFACTS_ON_FAILURE ?= 0 - -# Default TNS_END_PERCENT value for post CTS timing repair -# Try fixing all violating endpoints by default (reduce to 5% for runtime) -export TNS_END_PERCENT ?=100 - -# Default routing layer adjustment -export ROUTING_LAYER_ADJUSTMENT ?= 0.5 -export RECOVER_POWER ?= 0 -export SKIP_INCREMENTAL_REPAIR ?= 0 -export DETAILED_METRICS ?= 0 -export EQUIVALENCE_CHECK ?= 0 -export CORE_UTILIZATION ?= -export DIE_AREA ?= -export CORE_AREA ?= - # If we are running headless use offscreen rendering for save_image ifeq ($(DISPLAY),) export QT_QPA_PLATFORM ?= offscreen @@ -200,6 +160,8 @@ export UTILS_DIR ?= $(FLOW_HOME)/util export SCRIPTS_DIR ?= $(FLOW_HOME)/scripts export TEST_DIR ?= $(FLOW_HOME)/test +$(foreach line,$(shell $(SCRIPTS_DIR)/defaults.py),$(eval export $(line))) + PUBLIC=nangate45 sky130hd sky130hs asap7 ihp-sg13g2 gf180 ifneq ($(wildcard $(PLATFORM_HOME)/$(PLATFORM)),) @@ -265,11 +227,6 @@ export OBJECTS_DIR = $(WORK_HOME)/objects/$(PLATFORM)/$(DESIGN_NICKNAME)/$(FLOW_ export REPORTS_DIR = $(WORK_HOME)/reports/$(PLATFORM)/$(DESIGN_NICKNAME)/$(FLOW_VARIANT) export RESULTS_DIR = $(WORK_HOME)/results/$(PLATFORM)/$(DESIGN_NICKNAME)/$(FLOW_VARIANT) -# BLOCKS is ORFS specific and is used to trigger hierarchical flow, -# MACROS is a space separated list of macros used in the design, -# but not necessarily built by ORFS using the BLOCKS mechanism. -export MACROS ?= $(BLOCKS) - ifneq ($(BLOCKS),) $(foreach block,$(BLOCKS),$(eval BLOCK_LEFS += ./results/$(PLATFORM)/$(DESIGN_NICKNAME)_$(block)/$(FLOW_VARIANT)/${block}.lef)) $(foreach block,$(BLOCKS),$(eval BLOCK_LIBS += ./results/$(PLATFORM)/$(DESIGN_NICKNAME)_$(block)/$(FLOW_VARIANT)/${block}.lib)) @@ -285,6 +242,7 @@ ifneq ($(BLOCKS),) endif endif +export RTLMP_FLOW ?= 1 export RTLMP_RPT_DIR ?= $(OBJECTS_DIR)/rtlmp export RTLMP_RPT_FILE ?= partition.txt export RTLMP_BLOCKAGE_FILE ?= $(OBJECTS_DIR)/rtlmp/partition.txt.blockage diff --git a/flow/designs/asap7/aes-block/block.mk b/flow/designs/asap7/aes-block/block.mk index b2e8da9c99..9716e7fe9e 100644 --- a/flow/designs/asap7/aes-block/block.mk +++ b/flow/designs/asap7/aes-block/block.mk @@ -11,4 +11,3 @@ export CORE_MARGIN = 2 export PLACE_DENSITY = 0.70 export PLACE_PINS_ARGS = -annealing -export HAS_IO_CONSTRAINTS = 0 diff --git a/flow/designs/asap7/aes-block/config.mk b/flow/designs/asap7/aes-block/config.mk index c2e014521b..d13c524ee9 100644 --- a/flow/designs/asap7/aes-block/config.mk +++ b/flow/designs/asap7/aes-block/config.mk @@ -15,10 +15,8 @@ export PLACE_DENSITY = 0.65 export BLOCKS ?= aes_rcon aes_sbox export SYNTH_HIERARCHICAL = 1 -export RTLMP_FLOW = 1 export PLACE_PINS_ARGS = -annealing -export HAS_IO_CONSTRAINTS = 0 # Generous routing at top level export MIN_ROUTING_LAYER = M2 diff --git a/flow/designs/asap7/aes-block/metadata-base-ok.json b/flow/designs/asap7/aes-block/metadata-base-ok.json index 56c08c2aa3..d013bc4679 100644 --- a/flow/designs/asap7/aes-block/metadata-base-ok.json +++ b/flow/designs/asap7/aes-block/metadata-base-ok.json @@ -5,12 +5,12 @@ ], "cts__clock__skew__hold": 113.964, "cts__clock__skew__setup": 99.1391, - "cts__cpu__total": 14.37, + "cts__cpu__total": 13.36, "cts__design__core__area": 30460, "cts__design__die__area": 31942.3, - "cts__design__instance__area": 6482.53, + "cts__design__instance__area": 6482.47, "cts__design__instance__area__macros": 5577.25, - "cts__design__instance__area__stdcell": 905.287, + "cts__design__instance__area__stdcell": 905.228, "cts__design__instance__count": 11756, "cts__design__instance__count__hold_buffer": 977, "cts__design__instance__count__macros": 21, @@ -18,20 +18,20 @@ "cts__design__instance__count__stdcell": 11735, "cts__design__instance__displacement__max": 9.455, "cts__design__instance__displacement__mean": 0.156, - "cts__design__instance__displacement__total": 1844.94, - "cts__design__instance__utilization": 0.212821, - "cts__design__instance__utilization__stdcell": 0.0363821, + "cts__design__instance__displacement__total": 1844.18, + "cts__design__instance__utilization": 0.212819, + "cts__design__instance__utilization__stdcell": 0.0363797, "cts__design__io": 388, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 11, - "cts__mem__peak": 673180.0, - "cts__power__internal__total": 0.00537912, - "cts__power__leakage__total": 5.57062e-07, - "cts__power__switching__total": 0.00409849, - "cts__power__total": 0.00947817, - "cts__route__wirelength__estimated": 68053.6, - "cts__runtime__total": "0:14.86", + "cts__mem__peak": 673064.0, + "cts__power__internal__total": 0.00537878, + "cts__power__leakage__total": 5.56981e-07, + "cts__power__switching__total": 0.00409889, + "cts__power__total": 0.00947823, + "cts__route__wirelength__estimated": 68064.8, + "cts__runtime__total": "0:13.94", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, "cts__timing__drv__max_cap_limit": 0.663227, @@ -40,11 +40,11 @@ "cts__timing__drv__max_slew": 0, "cts__timing__drv__max_slew_limit": 0.50769, "cts__timing__drv__setup_violation_count": 278, - "cts__timing__setup__tns": -22242.4, - "cts__timing__setup__ws": -203.424, + "cts__timing__setup__tns": -22393.5, + "cts__timing__setup__ws": -207.939, "design__io__hpwl": 27513785, "design__violations": 0, - "detailedplace__cpu__total": 5.22, + "detailedplace__cpu__total": 4.51, "detailedplace__design__core__area": 30460, "detailedplace__design__die__area": 31942.3, "detailedplace__design__instance__area": 6376.64, @@ -62,13 +62,13 @@ "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 10, - "detailedplace__mem__peak": 331032.0, + "detailedplace__mem__peak": 331552.0, "detailedplace__power__internal__total": 0.00379969, "detailedplace__power__leakage__total": 4.81109e-07, "detailedplace__power__switching__total": 0.0029248, "detailedplace__power__total": 0.00672498, "detailedplace__route__wirelength__estimated": 65770.6, - "detailedplace__runtime__total": "0:05.39", + "detailedplace__runtime__total": "0:04.69", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, "detailedplace__timing__drv__max_cap_limit": 0.663755, @@ -85,59 +85,59 @@ "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 11, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 1220, - "detailedroute__route__drc_errors__iter:2": 118, - "detailedroute__route__drc_errors__iter:3": 68, - "detailedroute__route__drc_errors__iter:4": 9, + "detailedroute__route__drc_errors__iter:1": 1252, + "detailedroute__route__drc_errors__iter:2": 119, + "detailedroute__route__drc_errors__iter:3": 64, + "detailedroute__route__drc_errors__iter:4": 6, "detailedroute__route__drc_errors__iter:5": 0, - "detailedroute__route__net": 6485, + "detailedroute__route__net": 6478, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 55045, + "detailedroute__route__vias": 54887, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 55045, - "detailedroute__route__wirelength": 71719, - "detailedroute__route__wirelength__iter:1": 71822, - "detailedroute__route__wirelength__iter:2": 71746, - "detailedroute__route__wirelength__iter:3": 71714, - "detailedroute__route__wirelength__iter:4": 71717, - "detailedroute__route__wirelength__iter:5": 71719, - "finish__clock__skew__hold": 143.64, - "finish__clock__skew__setup": 124.758, - "finish__cpu__total": 11.2, + "detailedroute__route__vias__singlecut": 54887, + "detailedroute__route__wirelength": 71708, + "detailedroute__route__wirelength__iter:1": 71773, + "detailedroute__route__wirelength__iter:2": 71695, + "detailedroute__route__wirelength__iter:3": 71703, + "detailedroute__route__wirelength__iter:4": 71708, + "detailedroute__route__wirelength__iter:5": 71708, + "finish__clock__skew__hold": 145.447, + "finish__clock__skew__setup": 126.174, + "finish__cpu__total": 9.82, "finish__design__core__area": 30460, "finish__design__die__area": 31942.3, - "finish__design__instance__area": 6494.5, + "finish__design__instance__area": 6493.79, "finish__design__instance__area__macros": 5577.25, - "finish__design__instance__area__stdcell": 917.257, - "finish__design__instance__count": 11902, + "finish__design__instance__area__stdcell": 916.543, + "finish__design__instance__count": 11895, "finish__design__instance__count__macros": 21, - "finish__design__instance__count__stdcell": 11881, - "finish__design__instance__utilization": 0.213214, - "finish__design__instance__utilization__stdcell": 0.0368631, + "finish__design__instance__count__stdcell": 11874, + "finish__design__instance__utilization": 0.213191, + "finish__design__instance__utilization__stdcell": 0.0368344, "finish__design__io": 388, "finish__flow__errors__count": 0, - "finish__flow__warnings__count": 11, - "finish__mem__peak": 446448.0, - "finish__power__internal__total": 0.00544446, - "finish__power__leakage__total": 5.65504e-07, - "finish__power__switching__total": 0.00414372, - "finish__power__total": 0.00958874, - "finish__runtime__total": "0:11.52", - "finish__timing__drv__hold_violation_count": 171, + "finish__flow__warnings__count": 10, + "finish__mem__peak": 530400.0, + "finish__power__internal__total": 0.00544475, + "finish__power__leakage__total": 5.64957e-07, + "finish__power__switching__total": 0.00412955, + "finish__power__total": 0.00957487, + "finish__runtime__total": "0:10.21", + "finish__timing__drv__hold_violation_count": 185, "finish__timing__drv__max_cap": 0, - "finish__timing__drv__max_cap_limit": 0.646055, + "finish__timing__drv__max_cap_limit": 0.655547, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, "finish__timing__drv__max_slew": 0, - "finish__timing__drv__max_slew_limit": 0.404898, - "finish__timing__drv__setup_violation_count": 280, - "finish__timing__setup__tns": -22516.4, - "finish__timing__setup__ws": -217.799, - "finish__timing__wns_percent_delay": -29.975081, - "finish_merge__cpu__total": 3.98, - "finish_merge__mem__peak": 592660.0, - "finish_merge__runtime__total": "0:04.33", - "floorplan__cpu__total": 5.84, + "finish__timing__drv__max_slew_limit": 0.39134, + "finish__timing__drv__setup_violation_count": 279, + "finish__timing__setup__tns": -22713.1, + "finish__timing__setup__ws": -216.728, + "finish__timing__wns_percent_delay": -29.867236, + "finish_merge__cpu__total": 3.29, + "finish_merge__mem__peak": 593696.0, + "finish_merge__runtime__total": "0:03.59", + "floorplan__cpu__total": 4.47, "floorplan__design__core__area": 30460, "floorplan__design__die__area": 31942.3, "floorplan__design__instance__area": 6109.1, @@ -153,29 +153,32 @@ "floorplan__design__io": 388, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 1376, - "floorplan__mem__peak": 230460.0, + "floorplan__mem__peak": 231204.0, "floorplan__power__internal__total": 0.00333858, "floorplan__power__leakage__total": 4.00853e-07, "floorplan__power__switching__total": 0.00101075, "floorplan__power__total": 0.00434973, - "floorplan__runtime__total": "0:05.97", + "floorplan__runtime__total": "0:04.64", "floorplan__timing__setup__tns": -1145.33, "floorplan__timing__setup__ws": -25.0646, - "floorplan_io__cpu__total": 1.84, - "floorplan_io__mem__peak": 217412.0, - "floorplan_io__runtime__total": "0:01.96", - "floorplan_macro__cpu__total": 502.21, - "floorplan_macro__mem__peak": 220464.0, - "floorplan_macro__runtime__total": "0:34.76", - "floorplan_pdn__cpu__total": 5.77, - "floorplan_pdn__mem__peak": 368648.0, - "floorplan_pdn__runtime__total": "0:05.98", - "floorplan_tap__cpu__total": 2.02, - "floorplan_tap__mem__peak": 217132.0, - "floorplan_tap__runtime__total": "0:02.11", + "floorplan_io__cpu__total": 1.44, + "floorplan_io__mem__peak": 217844.0, + "floorplan_io__runtime__total": "0:01.55", + "floorplan_macro__cpu__total": 169.62, + "floorplan_macro__mem__peak": 222616.0, + "floorplan_macro__runtime__total": "0:27.19", + "floorplan_pdn__cpu__total": 4.31, + "floorplan_pdn__mem__peak": 369756.0, + "floorplan_pdn__runtime__total": "0:04.54", + "floorplan_tap__cpu__total": 1.81, + "floorplan_tap__mem__peak": 218020.0, + "floorplan_tap__runtime__total": "0:01.93", + "floorplan_tdms__cpu__total": 0.05, + "floorplan_tdms__mem__peak": 100028.0, + "floorplan_tdms__runtime__total": "0:00.12", "flow__errors__count": 0, "flow__warnings__count": 10, - "globalplace__cpu__total": 496.39, + "globalplace__cpu__total": 396.42, "globalplace__design__core__area": 30460, "globalplace__design__die__area": 31942.3, "globalplace__design__instance__area": 6278.81, @@ -189,64 +192,64 @@ "globalplace__design__io": 388, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 10, - "globalplace__mem__peak": 713352.0, + "globalplace__mem__peak": 712148.0, "globalplace__power__internal__total": 0.00337525, "globalplace__power__leakage__total": 4.00853e-07, "globalplace__power__switching__total": 0.00237687, "globalplace__power__total": 0.00575252, - "globalplace__runtime__total": "0:27.13", + "globalplace__runtime__total": "0:50.87", "globalplace__timing__setup__tns": -29989.3, "globalplace__timing__setup__ws": -220.815, - "globalplace_io__cpu__total": 1.8, - "globalplace_io__mem__peak": 231996.0, - "globalplace_io__runtime__total": "0:01.91", - "globalplace_skip_io__cpu__total": 497.17, - "globalplace_skip_io__mem__peak": 258676.0, - "globalplace_skip_io__runtime__total": "0:20.02", + "globalplace_io__cpu__total": 1.63, + "globalplace_io__mem__peak": 232484.0, + "globalplace_io__runtime__total": "0:01.76", + "globalplace_skip_io__cpu__total": 375.53, + "globalplace_skip_io__mem__peak": 259048.0, + "globalplace_skip_io__runtime__total": "0:41.44", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, "globalroute__antenna_diodes_count": 0, - "globalroute__clock__skew__hold": 127.377, - "globalroute__clock__skew__setup": 110.25, - "globalroute__cpu__total": 25.96, + "globalroute__clock__skew__hold": 127.135, + "globalroute__clock__skew__setup": 110.047, + "globalroute__cpu__total": 20.39, "globalroute__design__core__area": 30460, "globalroute__design__die__area": 31942.3, - "globalroute__design__instance__area": 6494.5, + "globalroute__design__instance__area": 6493.79, "globalroute__design__instance__area__macros": 5577.25, - "globalroute__design__instance__area__stdcell": 917.257, - "globalroute__design__instance__count": 11902, - "globalroute__design__instance__count__hold_buffer": 132, + "globalroute__design__instance__area__stdcell": 916.543, + "globalroute__design__instance__count": 11895, + "globalroute__design__instance__count__hold_buffer": 123, "globalroute__design__instance__count__macros": 21, - "globalroute__design__instance__count__setup_buffer": 15, - "globalroute__design__instance__count__stdcell": 11881, + "globalroute__design__instance__count__setup_buffer": 17, + "globalroute__design__instance__count__stdcell": 11874, "globalroute__design__instance__displacement__max": 3.348, - "globalroute__design__instance__displacement__mean": 0.055, - "globalroute__design__instance__displacement__total": 664.038, - "globalroute__design__instance__utilization": 0.213214, - "globalroute__design__instance__utilization__stdcell": 0.0368631, + "globalroute__design__instance__displacement__mean": 0.052, + "globalroute__design__instance__displacement__total": 620.514, + "globalroute__design__instance__utilization": 0.213191, + "globalroute__design__instance__utilization__stdcell": 0.0368344, "globalroute__design__io": 388, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 12, - "globalroute__mem__peak": 807616.0, - "globalroute__power__internal__total": 0.00542079, - "globalroute__power__leakage__total": 5.65504e-07, - "globalroute__power__switching__total": 0.00428864, - "globalroute__power__total": 0.00970999, - "globalroute__route__wirelength__estimated": 68670.2, - "globalroute__runtime__total": "0:17.87", - "globalroute__timing__clock__slack": -208.316, - "globalroute__timing__drv__hold_violation_count": 0, + "globalroute__mem__peak": 811844.0, + "globalroute__power__internal__total": 0.00541897, + "globalroute__power__leakage__total": 5.64957e-07, + "globalroute__power__switching__total": 0.00428703, + "globalroute__power__total": 0.00970657, + "globalroute__route__wirelength__estimated": 68644.4, + "globalroute__runtime__total": "0:16.34", + "globalroute__timing__clock__slack": -206.733, + "globalroute__timing__drv__hold_violation_count": 1, "globalroute__timing__drv__max_cap": 0, "globalroute__timing__drv__max_cap_limit": 0.650919, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, "globalroute__timing__drv__max_slew": 0, - "globalroute__timing__drv__max_slew_limit": 0.51153, - "globalroute__timing__drv__setup_violation_count": 277, - "globalroute__timing__setup__tns": -22072.9, - "globalroute__timing__setup__ws": -208.316, - "placeopt__cpu__total": 5.27, + "globalroute__timing__drv__max_slew_limit": 0.513259, + "globalroute__timing__drv__setup_violation_count": 276, + "globalroute__timing__setup__tns": -22076.4, + "globalroute__timing__setup__ws": -206.733, + "placeopt__cpu__total": 4.55, "placeopt__design__core__area": 30460, "placeopt__design__die__area": 31942.3, "placeopt__design__instance__area": 6376.64, @@ -260,12 +263,12 @@ "placeopt__design__io": 388, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 10, - "placeopt__mem__peak": 501020.0, + "placeopt__mem__peak": 502496.0, "placeopt__power__internal__total": 0.00379951, "placeopt__power__leakage__total": 4.81109e-07, "placeopt__power__switching__total": 0.00292553, "placeopt__power__total": 0.00672552, - "placeopt__runtime__total": "0:05.77", + "placeopt__runtime__total": "0:04.89", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, @@ -279,10 +282,10 @@ "placeopt__timing__setup__tns": -21445.4, "placeopt__timing__setup__ws": -152.636, "run__flow__design": "aes-block", - "run__flow__generate_date": "2024-09-20 19:34", + "run__flow__generate_date": "2024-09-26 21:20", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15789-gc38fd8ad1", + "run__flow__openroad_version": "v2.0-15807-g036379d64", "run__flow__platform": "asap7", "run__flow__platform__capacitance_units": "1fF", "run__flow__platform__current_units": "1mA", @@ -291,14 +294,14 @@ "run__flow__platform__resistance_units": "1kohm", "run__flow__platform__time_units": "1ps", "run__flow__platform__voltage_units": "1v", - "run__flow__platform_commit": "N/A", - "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "3d2c349f-b60c-421c-a71c-4af2146fe79a", - "run__flow__variant": "base", - "synth__cpu__total": 5.28, + "run__flow__platform_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__scripts_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__uuid": "1e6e9fbe-c5cf-46c7-aca1-7612327b60fb", + "run__flow__variant": "odb_0925", + "synth__cpu__total": 4.46, "synth__design__instance__area__stdcell": 2012.64242, "synth__design__instance__count__stdcell": 4390.0, - "synth__mem__peak": 144384.0, - "synth__runtime__total": "0:05.58", - "total_time": "0:02:45.160000" + "synth__mem__peak": 144768.0, + "synth__runtime__total": "0:04.73", + "total_time": "0:03:12.430000" } \ No newline at end of file diff --git a/flow/designs/asap7/aes-block/rules-base.json b/flow/designs/asap7/aes-block/rules-base.json index 12ce7b0374..e3bd5a08bd 100644 --- a/flow/designs/asap7/aes-block/rules-base.json +++ b/flow/designs/asap7/aes-block/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 2125.14, + "value": 2314.54, "compare": "<=" }, "constraints__clocks__count": { @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 7205, + "value": 7333, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 11307, + "value": 12211, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,11 +20,11 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 983, + "value": 1062, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 1062, + "value": 1075, "compare": "<=" }, "globalroute__antenna_diodes_count": { @@ -32,7 +32,7 @@ "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 73410, + "value": 82464, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -48,23 +48,23 @@ "compare": "<=" }, "finish__timing__setup__ws": { - "value": -237.79, + "value": -236.72, "compare": ">=" }, "finish__design__instance__area": { - "value": 7327, + "value": 7468, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 492, + "value": 531, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { - "value": 266, + "value": 331, "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -39.18, + "value": -45.84, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/asap7/aes-mbff/metadata-base-ok.json b/flow/designs/asap7/aes-mbff/metadata-base-ok.json index 3a1f36e925..9b889989f9 100644 --- a/flow/designs/asap7/aes-mbff/metadata-base-ok.json +++ b/flow/designs/asap7/aes-mbff/metadata-base-ok.json @@ -3,295 +3,293 @@ "constraints__clocks__details": [ "clk: 400.0000" ], - "cts__clock__skew__hold": 12.5652, - "cts__clock__skew__setup": 9.08124, - "cts__cpu__total": 165.2, + "cts__clock__skew__hold": 16.3525, + "cts__clock__skew__setup": 13.7949, + "cts__cpu__total": 154.36, "cts__design__core__area": 4255.19, "cts__design__die__area": 4827.33, - "cts__design__instance__area": 2038.79, + "cts__design__instance__area": 2040.78, "cts__design__instance__area__macros": 0, - "cts__design__instance__area__stdcell": 2038.79, - "cts__design__instance__count": 17626, + "cts__design__instance__area__stdcell": 2040.78, + "cts__design__instance__count": 17628, "cts__design__instance__count__hold_buffer": 0, "cts__design__instance__count__macros": 0, - "cts__design__instance__count__setup_buffer": 421, - "cts__design__instance__count__stdcell": 17626, - "cts__design__instance__displacement__max": 2.366, - "cts__design__instance__displacement__mean": 0.026, - "cts__design__instance__displacement__total": 459.406, - "cts__design__instance__utilization": 0.479131, - "cts__design__instance__utilization__stdcell": 0.479131, + "cts__design__instance__count__setup_buffer": 427, + "cts__design__instance__count__stdcell": 17628, + "cts__design__instance__displacement__max": 2.354, + "cts__design__instance__displacement__mean": 0.025, + "cts__design__instance__displacement__total": 449.665, + "cts__design__instance__utilization": 0.479597, + "cts__design__instance__utilization__stdcell": 0.479597, "cts__design__io": 388, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 11, - "cts__mem__peak": 669716.0, - "cts__power__internal__total": 0.0596212, - "cts__power__leakage__total": 1.40167e-06, - "cts__power__switching__total": 0.0853188, - "cts__power__total": 0.144941, - "cts__route__wirelength__estimated": 64517.3, - "cts__runtime__total": "2:45.82", + "cts__mem__peak": 673728.0, + "cts__power__internal__total": 0.0596064, + "cts__power__leakage__total": 1.40112e-06, + "cts__power__switching__total": 0.0854016, + "cts__power__total": 0.145009, + "cts__route__wirelength__estimated": 64366.2, + "cts__runtime__total": "2:43.27", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, - "cts__timing__drv__max_cap_limit": 0.0383468, + "cts__timing__drv__max_cap_limit": 0.0553465, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.550316, - "cts__timing__drv__setup_violation_count": 107, - "cts__timing__setup__tns": -1099.19, - "cts__timing__setup__ws": -33.0243, - "design__io__hpwl": 10307964, + "cts__timing__drv__max_slew_limit": 0.544952, + "cts__timing__drv__setup_violation_count": 84, + "cts__timing__setup__tns": -1076.63, + "cts__timing__setup__ws": -43.6577, + "design__io__hpwl": 10307829, "design__violations": 0, - "detailedplace__cpu__total": 14.17, + "detailedplace__cpu__total": 12.94, "detailedplace__design__core__area": 4255.19, "detailedplace__design__die__area": 4827.33, - "detailedplace__design__instance__area": 1975.08, + "detailedplace__design__instance__area": 1976.3, "detailedplace__design__instance__area__macros": 0, - "detailedplace__design__instance__area__stdcell": 1975.08, + "detailedplace__design__instance__area__stdcell": 1976.3, "detailedplace__design__instance__count": 17118, "detailedplace__design__instance__count__macros": 0, "detailedplace__design__instance__count__stdcell": 17118, - "detailedplace__design__instance__displacement__max": 2.088, - "detailedplace__design__instance__displacement__mean": 0.25, - "detailedplace__design__instance__displacement__total": 4287.87, - "detailedplace__design__instance__utilization": 0.464158, - "detailedplace__design__instance__utilization__stdcell": 0.464158, + "detailedplace__design__instance__displacement__max": 1.944, + "detailedplace__design__instance__displacement__mean": 0.245, + "detailedplace__design__instance__displacement__total": 4194.23, + "detailedplace__design__instance__utilization": 0.464446, + "detailedplace__design__instance__utilization__stdcell": 0.464446, "detailedplace__design__io": 388, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 10, - "detailedplace__mem__peak": 301816.0, - "detailedplace__power__internal__total": 0.0561281, - "detailedplace__power__leakage__total": 1.34669e-06, - "detailedplace__power__switching__total": 0.0833141, - "detailedplace__power__total": 0.139444, - "detailedplace__route__wirelength__estimated": 62258.9, - "detailedplace__runtime__total": "0:14.40", + "detailedplace__mem__peak": 301992.0, + "detailedplace__power__internal__total": 0.056128, + "detailedplace__power__leakage__total": 1.34632e-06, + "detailedplace__power__switching__total": 0.083354, + "detailedplace__power__total": 0.139483, + "detailedplace__route__wirelength__estimated": 62112.1, + "detailedplace__runtime__total": "0:13.64", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, - "detailedplace__timing__drv__max_cap_limit": 0.0377413, + "detailedplace__timing__drv__max_cap_limit": 0.0555989, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.550529, + "detailedplace__timing__drv__max_slew_limit": 0.545498, "detailedplace__timing__drv__setup_violation_count": 160, - "detailedplace__timing__setup__tns": -9940.83, - "detailedplace__timing__setup__ws": -100.307, + "detailedplace__timing__setup__tns": -9672.05, + "detailedplace__timing__setup__ws": -89.7936, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, "detailedroute__antenna_diodes_count": 0, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 11, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 2487, - "detailedroute__route__drc_errors__iter:2": 214, - "detailedroute__route__drc_errors__iter:3": 155, - "detailedroute__route__drc_errors__iter:4": 3, - "detailedroute__route__drc_errors__iter:5": 0, - "detailedroute__route__net": 17479, + "detailedroute__route__drc_errors__iter:1": 2630, + "detailedroute__route__drc_errors__iter:2": 223, + "detailedroute__route__drc_errors__iter:3": 120, + "detailedroute__route__drc_errors__iter:4": 0, + "detailedroute__route__net": 17513, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 172553, + "detailedroute__route__vias": 172724, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 172553, - "detailedroute__route__wirelength": 77503, - "detailedroute__route__wirelength__iter:1": 78091, - "detailedroute__route__wirelength__iter:2": 77544, - "detailedroute__route__wirelength__iter:3": 77499, - "detailedroute__route__wirelength__iter:4": 77503, - "detailedroute__route__wirelength__iter:5": 77503, - "finish__clock__skew__hold": 15.3851, - "finish__clock__skew__setup": 11.6961, - "finish__cpu__total": 41.15, + "detailedroute__route__vias__singlecut": 172724, + "detailedroute__route__wirelength": 77686, + "detailedroute__route__wirelength__iter:1": 78257, + "detailedroute__route__wirelength__iter:2": 77752, + "detailedroute__route__wirelength__iter:3": 77681, + "detailedroute__route__wirelength__iter:4": 77686, + "finish__clock__skew__hold": 20.0986, + "finish__clock__skew__setup": 18.0291, + "finish__cpu__total": 40.0, "finish__design__core__area": 4255.19, "finish__design__die__area": 4827.33, - "finish__design__instance__area": 2047.09, + "finish__design__instance__area": 2052.24, "finish__design__instance__area__macros": 0, - "finish__design__instance__area__stdcell": 2047.09, - "finish__design__instance__count": 17699, + "finish__design__instance__area__stdcell": 2052.24, + "finish__design__instance__count": 17734, "finish__design__instance__count__macros": 0, - "finish__design__instance__count__stdcell": 17699, - "finish__design__instance__utilization": 0.481081, - "finish__design__instance__utilization__stdcell": 0.481081, + "finish__design__instance__count__stdcell": 17734, + "finish__design__instance__utilization": 0.482291, + "finish__design__instance__utilization__stdcell": 0.482291, "finish__design__io": 388, - "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.764249, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.00582343, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0217765, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0215565, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.748223, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0215565, + "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.764297, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.00581264, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.020413, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.024551, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.749587, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.024551, "finish__flow__errors__count": 0, - "finish__flow__warnings__count": 11, - "finish__mem__peak": 673056.0, - "finish__power__internal__total": 0.0600414, - "finish__power__leakage__total": 1.40946e-06, - "finish__power__switching__total": 0.0905411, - "finish__power__total": 0.150584, - "finish__runtime__total": "0:41.79", + "finish__flow__warnings__count": 10, + "finish__mem__peak": 747676.0, + "finish__power__internal__total": 0.0602057, + "finish__power__leakage__total": 1.4121e-06, + "finish__power__switching__total": 0.0907213, + "finish__power__total": 0.150928, + "finish__runtime__total": "0:42.34", "finish__timing__drv__hold_violation_count": 0, - "finish__timing__drv__max_cap": 1, - "finish__timing__drv__max_cap_limit": -0.00888495, + "finish__timing__drv__max_cap": 0, + "finish__timing__drv__max_cap_limit": 0.0270517, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, "finish__timing__drv__max_slew": 0, - "finish__timing__drv__max_slew_limit": 0.506207, - "finish__timing__drv__setup_violation_count": 155, - "finish__timing__setup__tns": -3544.95, - "finish__timing__setup__ws": -45.1121, - "finish__timing__wns_percent_delay": -8.684615, - "finish_merge__cpu__total": 3.29, - "finish_merge__mem__peak": 521244.0, - "finish_merge__runtime__total": "0:03.72", - "floorplan__cpu__total": 80.29, + "finish__timing__drv__max_slew_limit": 0.513724, + "finish__timing__drv__setup_violation_count": 156, + "finish__timing__setup__tns": -3510.37, + "finish__timing__setup__ws": -63.8732, + "finish__timing__wns_percent_delay": -11.82903, + "finish_merge__cpu__total": 2.6, + "finish_merge__mem__peak": 523188.0, + "finish_merge__runtime__total": "0:02.91", + "floorplan__cpu__total": 45.92, "floorplan__design__core__area": 4255.19, "floorplan__design__die__area": 4827.33, - "floorplan__design__instance__area": 1729.86, + "floorplan__design__instance__area": 1729.89, "floorplan__design__instance__area__macros": 0, - "floorplan__design__instance__area__stdcell": 1729.86, + "floorplan__design__instance__area__stdcell": 1729.89, "floorplan__design__instance__count": 16006, "floorplan__design__instance__count__hold_buffer": 0, "floorplan__design__instance__count__macros": 0, "floorplan__design__instance__count__setup_buffer": 1, "floorplan__design__instance__count__stdcell": 16006, - "floorplan__design__instance__utilization": 0.406529, - "floorplan__design__instance__utilization__stdcell": 0.406529, + "floorplan__design__instance__utilization": 0.406536, + "floorplan__design__instance__utilization__stdcell": 0.406536, "floorplan__design__io": 388, "floorplan__flow__errors__count": 0, - "floorplan__flow__warnings__count": 8448, - "floorplan__mem__peak": 273224.0, - "floorplan__power__internal__total": 0.0464382, - "floorplan__power__leakage__total": 1.09848e-06, - "floorplan__power__switching__total": 0.064277, - "floorplan__power__total": 0.110716, - "floorplan__runtime__total": "1:20.46", - "floorplan__timing__setup__tns": -1088.79, + "floorplan__flow__warnings__count": 8459, + "floorplan__mem__peak": 274468.0, + "floorplan__power__internal__total": 0.0464387, + "floorplan__power__leakage__total": 1.09851e-06, + "floorplan__power__switching__total": 0.064279, + "floorplan__power__total": 0.110719, + "floorplan__runtime__total": "0:46.15", + "floorplan__timing__setup__tns": -1088.1, "floorplan__timing__setup__ws": -36.4441, - "floorplan_io__cpu__total": 1.82, - "floorplan_io__mem__peak": 234280.0, - "floorplan_io__runtime__total": "0:02.09", - "floorplan_macro__cpu__total": 1.99, - "floorplan_macro__mem__peak": 234496.0, - "floorplan_macro__runtime__total": "0:02.10", - "floorplan_pdn__cpu__total": 2.2, - "floorplan_pdn__mem__peak": 238328.0, - "floorplan_pdn__runtime__total": "0:02.35", - "floorplan_tap__cpu__total": 1.99, - "floorplan_tap__mem__peak": 225200.0, - "floorplan_tap__runtime__total": "0:02.17", - "floorplan_tdms__cpu__total": 1.95, - "floorplan_tdms__mem__peak": 234496.0, - "floorplan_tdms__runtime__total": "0:02.10", + "floorplan_io__cpu__total": 1.3, + "floorplan_io__mem__peak": 235804.0, + "floorplan_io__runtime__total": "0:01.49", + "floorplan_macro__cpu__total": 1.37, + "floorplan_macro__mem__peak": 234792.0, + "floorplan_macro__runtime__total": "0:01.50", + "floorplan_pdn__cpu__total": 1.5, + "floorplan_pdn__mem__peak": 239532.0, + "floorplan_pdn__runtime__total": "0:01.68", + "floorplan_tap__cpu__total": 1.38, + "floorplan_tap__mem__peak": 225448.0, + "floorplan_tap__runtime__total": "0:01.51", + "floorplan_tdms__cpu__total": 1.39, + "floorplan_tdms__mem__peak": 234876.0, + "floorplan_tdms__runtime__total": "0:01.50", "flow__errors__count": 0, "flow__warnings__count": 10, - "globalplace__cpu__total": 822.76, + "globalplace__cpu__total": 762.15, "globalplace__design__core__area": 4255.19, "globalplace__design__die__area": 4827.33, - "globalplace__design__instance__area": 1751, + "globalplace__design__instance__area": 1751.03, "globalplace__design__instance__area__macros": 0, - "globalplace__design__instance__area__stdcell": 1751, + "globalplace__design__instance__area__stdcell": 1751.03, "globalplace__design__instance__count": 16731, "globalplace__design__instance__count__macros": 0, "globalplace__design__instance__count__stdcell": 16731, - "globalplace__design__instance__utilization": 0.411498, - "globalplace__design__instance__utilization__stdcell": 0.411498, + "globalplace__design__instance__utilization": 0.411505, + "globalplace__design__instance__utilization__stdcell": 0.411505, "globalplace__design__io": 388, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 10, - "globalplace__mem__peak": 668104.0, - "globalplace__power__internal__total": 0.0469751, - "globalplace__power__leakage__total": 1.09848e-06, - "globalplace__power__switching__total": 0.0774123, - "globalplace__power__total": 0.124388, - "globalplace__runtime__total": "1:25.85", - "globalplace__timing__setup__tns": -10691.4, - "globalplace__timing__setup__ws": -99.8511, - "globalplace_io__cpu__total": 1.99, - "globalplace_io__mem__peak": 236792.0, - "globalplace_io__runtime__total": "0:02.16", - "globalplace_skip_io__cpu__total": 535.07, - "globalplace_skip_io__mem__peak": 257580.0, - "globalplace_skip_io__runtime__total": "0:19.31", + "globalplace__mem__peak": 670852.0, + "globalplace__power__internal__total": 0.0469766, + "globalplace__power__leakage__total": 1.09851e-06, + "globalplace__power__switching__total": 0.0774282, + "globalplace__power__total": 0.124406, + "globalplace__runtime__total": "2:07.96", + "globalplace__timing__setup__tns": -10021.9, + "globalplace__timing__setup__ws": -92.6619, + "globalplace_io__cpu__total": 1.35, + "globalplace_io__mem__peak": 237656.0, + "globalplace_io__runtime__total": "0:01.54", + "globalplace_skip_io__cpu__total": 471.24, + "globalplace_skip_io__mem__peak": 258168.0, + "globalplace_skip_io__runtime__total": "0:33.78", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, "globalroute__antenna_diodes_count": 0, - "globalroute__clock__skew__hold": 13.0724, - "globalroute__clock__skew__setup": 10.0524, - "globalroute__cpu__total": 157.11, + "globalroute__clock__skew__hold": 14.6296, + "globalroute__clock__skew__setup": 12.6685, + "globalroute__cpu__total": 131.4, "globalroute__design__core__area": 4255.19, "globalroute__design__die__area": 4827.33, - "globalroute__design__instance__area": 2047.09, + "globalroute__design__instance__area": 2052.24, "globalroute__design__instance__area__macros": 0, - "globalroute__design__instance__area__stdcell": 2047.09, - "globalroute__design__instance__count": 17699, + "globalroute__design__instance__area__stdcell": 2052.24, + "globalroute__design__instance__count": 17734, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 0, - "globalroute__design__instance__count__setup_buffer": 74, - "globalroute__design__instance__count__stdcell": 17699, - "globalroute__design__instance__displacement__max": 2.052, - "globalroute__design__instance__displacement__mean": 0.007, - "globalroute__design__instance__displacement__total": 125.604, - "globalroute__design__instance__utilization": 0.481081, - "globalroute__design__instance__utilization__stdcell": 0.481081, + "globalroute__design__instance__count__setup_buffer": 100, + "globalroute__design__instance__count__stdcell": 17734, + "globalroute__design__instance__displacement__max": 2.862, + "globalroute__design__instance__displacement__mean": 0.01, + "globalroute__design__instance__displacement__total": 190.188, + "globalroute__design__instance__utilization": 0.482291, + "globalroute__design__instance__utilization__stdcell": 0.482291, "globalroute__design__io": 388, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 12, - "globalroute__mem__peak": 766604.0, - "globalroute__power__internal__total": 0.0600224, - "globalroute__power__leakage__total": 1.40946e-06, - "globalroute__power__switching__total": 0.0894775, - "globalroute__power__total": 0.149501, - "globalroute__route__wirelength__estimated": 64950.2, - "globalroute__runtime__total": "2:05.08", - "globalroute__timing__clock__slack": -39.763, + "globalroute__mem__peak": 767668.0, + "globalroute__power__internal__total": 0.0601891, + "globalroute__power__leakage__total": 1.4121e-06, + "globalroute__power__switching__total": 0.0896939, + "globalroute__power__total": 0.149884, + "globalroute__route__wirelength__estimated": 64809.6, + "globalroute__runtime__total": "2:00.44", + "globalroute__timing__clock__slack": -54.946, "globalroute__timing__drv__hold_violation_count": 0, "globalroute__timing__drv__max_cap": 0, - "globalroute__timing__drv__max_cap_limit": 0.0188149, + "globalroute__timing__drv__max_cap_limit": 0.04167, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, "globalroute__timing__drv__max_slew": 0, - "globalroute__timing__drv__max_slew_limit": 0.537191, - "globalroute__timing__drv__setup_violation_count": 146, - "globalroute__timing__setup__tns": -2810.68, - "globalroute__timing__setup__ws": -39.7627, - "placeopt__cpu__total": 18.47, + "globalroute__timing__drv__max_slew_limit": 0.536757, + "globalroute__timing__drv__setup_violation_count": 142, + "globalroute__timing__setup__tns": -2668.98, + "globalroute__timing__setup__ws": -54.9463, + "placeopt__cpu__total": 16.88, "placeopt__design__core__area": 4255.19, "placeopt__design__die__area": 4827.33, - "placeopt__design__instance__area": 1975.08, + "placeopt__design__instance__area": 1976.3, "placeopt__design__instance__area__macros": 0, - "placeopt__design__instance__area__stdcell": 1975.08, + "placeopt__design__instance__area__stdcell": 1976.3, "placeopt__design__instance__count": 17118, "placeopt__design__instance__count__macros": 0, "placeopt__design__instance__count__stdcell": 17118, - "placeopt__design__instance__utilization": 0.464158, - "placeopt__design__instance__utilization__stdcell": 0.464158, + "placeopt__design__instance__utilization": 0.464446, + "placeopt__design__instance__utilization__stdcell": 0.464446, "placeopt__design__io": 388, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 10, - "placeopt__mem__peak": 532960.0, - "placeopt__power__internal__total": 0.0561141, - "placeopt__power__leakage__total": 1.34669e-06, - "placeopt__power__switching__total": 0.0827102, - "placeopt__power__total": 0.138826, - "placeopt__runtime__total": "0:18.92", + "placeopt__mem__peak": 533708.0, + "placeopt__power__internal__total": 0.056114, + "placeopt__power__leakage__total": 1.34632e-06, + "placeopt__power__switching__total": 0.0827457, + "placeopt__power__total": 0.138861, + "placeopt__runtime__total": "0:18.74", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.0383468, + "placeopt__timing__drv__max_cap_limit": 0.0527618, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.550128, + "placeopt__timing__drv__max_slew_limit": 0.545123, "placeopt__timing__drv__setup_violation_count": 160, - "placeopt__timing__setup__tns": -9585.37, - "placeopt__timing__setup__ws": -95.2715, + "placeopt__timing__setup__tns": -9325.12, + "placeopt__timing__setup__ws": -84.0563, "run__flow__design": "aes-mbff", - "run__flow__generate_date": "2024-09-19 14:21", + "run__flow__generate_date": "2024-09-26 21:19", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15759-g9136ba699", + "run__flow__openroad_version": "v2.0-15807-g036379d64", "run__flow__platform": "asap7", "run__flow__platform__capacitance_units": "1fF", "run__flow__platform__current_units": "1mA", @@ -300,14 +298,14 @@ "run__flow__platform__resistance_units": "1kohm", "run__flow__platform__time_units": "1ps", "run__flow__platform__voltage_units": "1v", - "run__flow__platform_commit": "N/A", - "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "2a9e1b74-5437-4a4e-a050-bfa067d22fe0", - "run__flow__variant": "base", - "synth__cpu__total": 25.58, + "run__flow__platform_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__scripts_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__uuid": "e7b45a08-8914-4155-be6d-697141133b36", + "run__flow__variant": "odb_0925", + "synth__cpu__total": 17.76, "synth__design__instance__area__stdcell": 1715.0454, "synth__design__instance__count__stdcell": 15941.0, - "synth__mem__peak": 336032.0, - "synth__runtime__total": "0:26.21", - "total_time": "0:09:54.530000" + "synth__mem__peak": 336680.0, + "synth__runtime__total": "0:18.31", + "total_time": "0:09:56.760000" } \ No newline at end of file diff --git a/flow/designs/asap7/aes-mbff/rules-base.json b/flow/designs/asap7/aes-mbff/rules-base.json index fa6d16daaf..fb5fd15d09 100644 --- a/flow/designs/asap7/aes-mbff/rules-base.json +++ b/flow/designs/asap7/aes-mbff/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 1942.34, + "value": 1972.31, "compare": "<=" }, "constraints__clocks__count": { @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 2062, + "value": 2273, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 17224, + "value": 19686, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,11 +20,11 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 1498, + "value": 1712, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 1498, + "value": 1712, "compare": "<=" }, "globalroute__antenna_diodes_count": { @@ -32,7 +32,7 @@ "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 84534, + "value": 89339, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -48,15 +48,15 @@ "compare": "<=" }, "finish__timing__setup__ws": { - "value": -63.6, + "value": -83.87, "compare": ">=" }, "finish__design__instance__area": { - "value": 2213, + "value": 2360, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 749, + "value": 856, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { @@ -64,7 +64,7 @@ "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -20.21, + "value": -24.19, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/asap7/aes/metadata-base-ok.json b/flow/designs/asap7/aes/metadata-base-ok.json index b335c117dc..1519e5952d 100644 --- a/flow/designs/asap7/aes/metadata-base-ok.json +++ b/flow/designs/asap7/aes/metadata-base-ok.json @@ -3,293 +3,293 @@ "constraints__clocks__details": [ "clk: 400.0000" ], - "cts__clock__skew__hold": 13.2185, - "cts__clock__skew__setup": 9.35777, - "cts__cpu__total": 308.0, + "cts__clock__skew__hold": 12.9806, + "cts__clock__skew__setup": 7.99995, + "cts__cpu__total": 176.9, "cts__design__core__area": 4255.19, "cts__design__die__area": 4827.33, - "cts__design__instance__area": 2038.84, + "cts__design__instance__area": 2040.21, "cts__design__instance__area__macros": 0, - "cts__design__instance__area__stdcell": 2038.84, - "cts__design__instance__count": 17618, + "cts__design__instance__area__stdcell": 2040.21, + "cts__design__instance__count": 17629, "cts__design__instance__count__hold_buffer": 0, "cts__design__instance__count__macros": 0, - "cts__design__instance__count__setup_buffer": 403, - "cts__design__instance__count__stdcell": 17618, - "cts__design__instance__displacement__max": 2.638, - "cts__design__instance__displacement__mean": 0.027, - "cts__design__instance__displacement__total": 493.28, - "cts__design__instance__utilization": 0.479142, - "cts__design__instance__utilization__stdcell": 0.479142, + "cts__design__instance__count__setup_buffer": 433, + "cts__design__instance__count__stdcell": 17629, + "cts__design__instance__displacement__max": 2.366, + "cts__design__instance__displacement__mean": 0.028, + "cts__design__instance__displacement__total": 505.672, + "cts__design__instance__utilization": 0.479464, + "cts__design__instance__utilization__stdcell": 0.479464, "cts__design__io": 388, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 11, - "cts__mem__peak": 678880.0, - "cts__power__internal__total": 0.0596262, - "cts__power__leakage__total": 1.40234e-06, - "cts__power__switching__total": 0.0848186, - "cts__power__total": 0.144446, - "cts__route__wirelength__estimated": 62813.8, - "cts__runtime__total": "3:37.71", + "cts__mem__peak": 663152.0, + "cts__power__internal__total": 0.0597148, + "cts__power__leakage__total": 1.40168e-06, + "cts__power__switching__total": 0.0848525, + "cts__power__total": 0.144569, + "cts__route__wirelength__estimated": 62300.5, + "cts__runtime__total": "2:04.40", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, - "cts__timing__drv__max_cap_limit": 0.0297965, + "cts__timing__drv__max_cap_limit": 0.0533113, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.549393, - "cts__timing__drv__setup_violation_count": 90, - "cts__timing__setup__tns": -1188.77, - "cts__timing__setup__ws": -38.5376, - "design__io__hpwl": 10307964, + "cts__timing__drv__max_slew_limit": 0.545024, + "cts__timing__drv__setup_violation_count": 92, + "cts__timing__setup__tns": -979.47, + "cts__timing__setup__ws": -32.5157, + "design__io__hpwl": 10307829, "design__violations": 0, - "detailedplace__cpu__total": 19.8, + "detailedplace__cpu__total": 12.78, "detailedplace__design__core__area": 4255.19, "detailedplace__design__die__area": 4827.33, - "detailedplace__design__instance__area": 1975.08, + "detailedplace__design__instance__area": 1976.3, "detailedplace__design__instance__area__macros": 0, - "detailedplace__design__instance__area__stdcell": 1975.08, + "detailedplace__design__instance__area__stdcell": 1976.3, "detailedplace__design__instance__count": 17118, "detailedplace__design__instance__count__macros": 0, "detailedplace__design__instance__count__stdcell": 17118, - "detailedplace__design__instance__displacement__max": 2.088, - "detailedplace__design__instance__displacement__mean": 0.25, - "detailedplace__design__instance__displacement__total": 4287.87, - "detailedplace__design__instance__utilization": 0.464158, - "detailedplace__design__instance__utilization__stdcell": 0.464158, + "detailedplace__design__instance__displacement__max": 1.944, + "detailedplace__design__instance__displacement__mean": 0.245, + "detailedplace__design__instance__displacement__total": 4194.23, + "detailedplace__design__instance__utilization": 0.464446, + "detailedplace__design__instance__utilization__stdcell": 0.464446, "detailedplace__design__io": 388, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 10, - "detailedplace__mem__peak": 313320.0, - "detailedplace__power__internal__total": 0.0561208, - "detailedplace__power__leakage__total": 1.34669e-06, - "detailedplace__power__switching__total": 0.0828467, - "detailedplace__power__total": 0.138969, - "detailedplace__route__wirelength__estimated": 62258.9, - "detailedplace__runtime__total": "0:19.99", + "detailedplace__mem__peak": 297972.0, + "detailedplace__power__internal__total": 0.0561199, + "detailedplace__power__leakage__total": 1.34632e-06, + "detailedplace__power__switching__total": 0.0828795, + "detailedplace__power__total": 0.139001, + "detailedplace__route__wirelength__estimated": 62112.1, + "detailedplace__runtime__total": "0:13.00", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, - "detailedplace__timing__drv__max_cap_limit": 0.0294433, + "detailedplace__timing__drv__max_cap_limit": 0.0535131, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.55012, + "detailedplace__timing__drv__max_slew_limit": 0.54509, "detailedplace__timing__drv__setup_violation_count": 160, - "detailedplace__timing__setup__tns": -9964.45, - "detailedplace__timing__setup__ws": -95.6202, + "detailedplace__timing__setup__tns": -9540.08, + "detailedplace__timing__setup__ws": -87.6338, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, "detailedroute__antenna_diodes_count": 0, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 11, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 2738, - "detailedroute__route__drc_errors__iter:2": 217, - "detailedroute__route__drc_errors__iter:3": 112, + "detailedroute__route__drc_errors__iter:1": 2887, + "detailedroute__route__drc_errors__iter:2": 244, + "detailedroute__route__drc_errors__iter:3": 134, "detailedroute__route__drc_errors__iter:4": 0, - "detailedroute__route__net": 17480, + "detailedroute__route__net": 17472, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 170401, + "detailedroute__route__vias": 169440, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 170401, - "detailedroute__route__wirelength": 75731, - "detailedroute__route__wirelength__iter:1": 76313, - "detailedroute__route__wirelength__iter:2": 75789, - "detailedroute__route__wirelength__iter:3": 75728, - "detailedroute__route__wirelength__iter:4": 75731, - "finish__clock__skew__hold": 15.3736, - "finish__clock__skew__setup": 12.4882, - "finish__cpu__total": 45.62, + "detailedroute__route__vias__singlecut": 169440, + "detailedroute__route__wirelength": 75438, + "detailedroute__route__wirelength__iter:1": 75998, + "detailedroute__route__wirelength__iter:2": 75482, + "detailedroute__route__wirelength__iter:3": 75432, + "detailedroute__route__wirelength__iter:4": 75438, + "finish__clock__skew__hold": 14.1027, + "finish__clock__skew__setup": 10.9521, + "finish__cpu__total": 32.83, "finish__design__core__area": 4255.19, "finish__design__die__area": 4827.33, - "finish__design__instance__area": 2047.31, + "finish__design__instance__area": 2046.81, "finish__design__instance__area__macros": 0, - "finish__design__instance__area__stdcell": 2047.31, - "finish__design__instance__count": 17700, + "finish__design__instance__area__stdcell": 2046.81, + "finish__design__instance__count": 17693, "finish__design__instance__count__macros": 0, - "finish__design__instance__count__stdcell": 17700, - "finish__design__instance__utilization": 0.481132, - "finish__design__instance__utilization__stdcell": 0.481132, + "finish__design__instance__count__stdcell": 17693, + "finish__design__instance__utilization": 0.481016, + "finish__design__instance__utilization__stdcell": 0.481016, "finish__design__io": 388, - "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.764281, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.00578956, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0221308, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0221925, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.747869, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0221925, + "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.764345, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.00576628, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0246168, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0209912, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.745383, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0209912, "finish__flow__errors__count": 0, - "finish__flow__warnings__count": 11, - "finish__mem__peak": 654640.0, - "finish__power__internal__total": 0.0600639, - "finish__power__leakage__total": 1.41033e-06, - "finish__power__switching__total": 0.0899549, - "finish__power__total": 0.15002, - "finish__runtime__total": "0:46.28", + "finish__flow__warnings__count": 10, + "finish__mem__peak": 749744.0, + "finish__power__internal__total": 0.0600737, + "finish__power__leakage__total": 1.4081e-06, + "finish__power__switching__total": 0.0898561, + "finish__power__total": 0.149931, + "finish__runtime__total": "0:33.31", "finish__timing__drv__hold_violation_count": 0, - "finish__timing__drv__max_cap": 1, - "finish__timing__drv__max_cap_limit": -0.0326303, + "finish__timing__drv__max_cap": 0, + "finish__timing__drv__max_cap_limit": 0.00606878, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, "finish__timing__drv__max_slew": 0, - "finish__timing__drv__max_slew_limit": 0.513983, - "finish__timing__drv__setup_violation_count": 154, - "finish__timing__setup__tns": -3481.55, - "finish__timing__setup__ws": -49.8054, - "finish__timing__wns_percent_delay": -9.513813, - "finish_merge__cpu__total": 3.68, - "finish_merge__mem__peak": 522680.0, - "finish_merge__runtime__total": "0:04.04", - "floorplan__cpu__total": 84.8, + "finish__timing__drv__max_slew_limit": 0.538025, + "finish__timing__drv__setup_violation_count": 156, + "finish__timing__setup__tns": -3151.53, + "finish__timing__setup__ws": -59.9209, + "finish__timing__wns_percent_delay": -11.441319, + "finish_merge__cpu__total": 2.62, + "finish_merge__mem__peak": 523280.0, + "finish_merge__runtime__total": "0:02.93", + "floorplan__cpu__total": 47.57, "floorplan__design__core__area": 4255.19, "floorplan__design__die__area": 4827.33, - "floorplan__design__instance__area": 1729.86, + "floorplan__design__instance__area": 1729.89, "floorplan__design__instance__area__macros": 0, - "floorplan__design__instance__area__stdcell": 1729.86, + "floorplan__design__instance__area__stdcell": 1729.89, "floorplan__design__instance__count": 16006, "floorplan__design__instance__count__hold_buffer": 0, "floorplan__design__instance__count__macros": 0, "floorplan__design__instance__count__setup_buffer": 1, "floorplan__design__instance__count__stdcell": 16006, - "floorplan__design__instance__utilization": 0.406529, - "floorplan__design__instance__utilization__stdcell": 0.406529, + "floorplan__design__instance__utilization": 0.406536, + "floorplan__design__instance__utilization__stdcell": 0.406536, "floorplan__design__io": 388, "floorplan__flow__errors__count": 0, - "floorplan__flow__warnings__count": 8448, - "floorplan__mem__peak": 273400.0, - "floorplan__power__internal__total": 0.0464382, - "floorplan__power__leakage__total": 1.09848e-06, - "floorplan__power__switching__total": 0.064277, - "floorplan__power__total": 0.110716, - "floorplan__runtime__total": "1:24.96", - "floorplan__timing__setup__tns": -1088.79, + "floorplan__flow__warnings__count": 8459, + "floorplan__mem__peak": 273636.0, + "floorplan__power__internal__total": 0.0464387, + "floorplan__power__leakage__total": 1.09851e-06, + "floorplan__power__switching__total": 0.064279, + "floorplan__power__total": 0.110719, + "floorplan__runtime__total": "0:47.77", + "floorplan__timing__setup__tns": -1088.1, "floorplan__timing__setup__ws": -36.4441, - "floorplan_io__cpu__total": 1.96, - "floorplan_io__mem__peak": 233980.0, - "floorplan_io__runtime__total": "0:02.12", - "floorplan_macro__cpu__total": 1.98, - "floorplan_macro__mem__peak": 233088.0, - "floorplan_macro__runtime__total": "0:02.14", - "floorplan_pdn__cpu__total": 2.17, - "floorplan_pdn__mem__peak": 237868.0, - "floorplan_pdn__runtime__total": "0:02.37", - "floorplan_tap__cpu__total": 2.06, - "floorplan_tap__mem__peak": 224248.0, - "floorplan_tap__runtime__total": "0:02.15", - "floorplan_tdms__cpu__total": 1.95, - "floorplan_tdms__mem__peak": 233984.0, - "floorplan_tdms__runtime__total": "0:02.12", + "floorplan_io__cpu__total": 1.32, + "floorplan_io__mem__peak": 234548.0, + "floorplan_io__runtime__total": "0:01.47", + "floorplan_macro__cpu__total": 1.35, + "floorplan_macro__mem__peak": 234172.0, + "floorplan_macro__runtime__total": "0:01.50", + "floorplan_pdn__cpu__total": 1.49, + "floorplan_pdn__mem__peak": 237972.0, + "floorplan_pdn__runtime__total": "0:01.65", + "floorplan_tap__cpu__total": 1.37, + "floorplan_tap__mem__peak": 224564.0, + "floorplan_tap__runtime__total": "0:01.50", + "floorplan_tdms__cpu__total": 1.37, + "floorplan_tdms__mem__peak": 234168.0, + "floorplan_tdms__runtime__total": "0:01.50", "flow__errors__count": 0, "flow__warnings__count": 10, - "globalplace__cpu__total": 308.4, + "globalplace__cpu__total": 864.68, "globalplace__design__core__area": 4255.19, "globalplace__design__die__area": 4827.33, - "globalplace__design__instance__area": 1751, + "globalplace__design__instance__area": 1751.03, "globalplace__design__instance__area__macros": 0, - "globalplace__design__instance__area__stdcell": 1751, + "globalplace__design__instance__area__stdcell": 1751.03, "globalplace__design__instance__count": 16731, "globalplace__design__instance__count__macros": 0, "globalplace__design__instance__count__stdcell": 16731, - "globalplace__design__instance__utilization": 0.411498, - "globalplace__design__instance__utilization__stdcell": 0.411498, + "globalplace__design__instance__utilization": 0.411505, + "globalplace__design__instance__utilization__stdcell": 0.411505, "globalplace__design__io": 388, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 10, - "globalplace__mem__peak": 667724.0, - "globalplace__power__internal__total": 0.0469751, - "globalplace__power__leakage__total": 1.09848e-06, - "globalplace__power__switching__total": 0.0774123, - "globalplace__power__total": 0.124388, - "globalplace__runtime__total": "1:06.27", - "globalplace__timing__setup__tns": -10691.4, - "globalplace__timing__setup__ws": -99.8511, - "globalplace_io__cpu__total": 1.98, - "globalplace_io__mem__peak": 236032.0, - "globalplace_io__runtime__total": "0:02.15", - "globalplace_skip_io__cpu__total": 241.61, - "globalplace_skip_io__mem__peak": 256208.0, - "globalplace_skip_io__runtime__total": "0:09.70", + "globalplace__mem__peak": 669520.0, + "globalplace__power__internal__total": 0.0469766, + "globalplace__power__leakage__total": 1.09851e-06, + "globalplace__power__switching__total": 0.0774282, + "globalplace__power__total": 0.124406, + "globalplace__runtime__total": "1:48.49", + "globalplace__timing__setup__tns": -10021.9, + "globalplace__timing__setup__ws": -92.6619, + "globalplace_io__cpu__total": 1.38, + "globalplace_io__mem__peak": 236712.0, + "globalplace_io__runtime__total": "0:01.53", + "globalplace_skip_io__cpu__total": 421.45, + "globalplace_skip_io__mem__peak": 257716.0, + "globalplace_skip_io__runtime__total": "0:30.22", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, "globalroute__antenna_diodes_count": 0, - "globalroute__clock__skew__hold": 11.9026, - "globalroute__clock__skew__setup": 9.5892, - "globalroute__cpu__total": 155.45, + "globalroute__clock__skew__hold": 11.6357, + "globalroute__clock__skew__setup": 8.94073, + "globalroute__cpu__total": 81.71, "globalroute__design__core__area": 4255.19, "globalroute__design__die__area": 4827.33, - "globalroute__design__instance__area": 2047.31, + "globalroute__design__instance__area": 2046.81, "globalroute__design__instance__area__macros": 0, - "globalroute__design__instance__area__stdcell": 2047.31, - "globalroute__design__instance__count": 17700, + "globalroute__design__instance__area__stdcell": 2046.81, + "globalroute__design__instance__count": 17693, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 0, - "globalroute__design__instance__count__setup_buffer": 83, - "globalroute__design__instance__count__stdcell": 17700, - "globalroute__design__instance__displacement__max": 1.944, + "globalroute__design__instance__count__setup_buffer": 56, + "globalroute__design__instance__count__stdcell": 17693, + "globalroute__design__instance__displacement__max": 1.674, "globalroute__design__instance__displacement__mean": 0.007, - "globalroute__design__instance__displacement__total": 139.266, - "globalroute__design__instance__utilization": 0.481132, - "globalroute__design__instance__utilization__stdcell": 0.481132, + "globalroute__design__instance__displacement__total": 135.54, + "globalroute__design__instance__utilization": 0.481016, + "globalroute__design__instance__utilization__stdcell": 0.481016, "globalroute__design__io": 388, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 12, - "globalroute__mem__peak": 764648.0, - "globalroute__power__internal__total": 0.0600525, - "globalroute__power__leakage__total": 1.41033e-06, - "globalroute__power__switching__total": 0.0890438, - "globalroute__power__total": 0.149098, - "globalroute__route__wirelength__estimated": 63186.4, - "globalroute__runtime__total": "2:02.03", - "globalroute__timing__clock__slack": -44.734, + "globalroute__mem__peak": 760468.0, + "globalroute__power__internal__total": 0.0600603, + "globalroute__power__leakage__total": 1.4081e-06, + "globalroute__power__switching__total": 0.0890287, + "globalroute__power__total": 0.14909, + "globalroute__route__wirelength__estimated": 62601.9, + "globalroute__runtime__total": "1:03.94", + "globalroute__timing__clock__slack": -45.168, "globalroute__timing__drv__hold_violation_count": 0, - "globalroute__timing__drv__max_cap": 1, - "globalroute__timing__drv__max_cap_limit": -0.000574394, + "globalroute__timing__drv__max_cap": 0, + "globalroute__timing__drv__max_cap_limit": 0.0381674, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, "globalroute__timing__drv__max_slew": 0, - "globalroute__timing__drv__max_slew_limit": 0.542437, - "globalroute__timing__drv__setup_violation_count": 150, - "globalroute__timing__setup__tns": -2756.15, - "globalroute__timing__setup__ws": -44.7337, - "placeopt__cpu__total": 18.85, + "globalroute__timing__drv__max_slew_limit": 0.561342, + "globalroute__timing__drv__setup_violation_count": 144, + "globalroute__timing__setup__tns": -2385.53, + "globalroute__timing__setup__ws": -45.1679, + "placeopt__cpu__total": 12.72, "placeopt__design__core__area": 4255.19, "placeopt__design__die__area": 4827.33, - "placeopt__design__instance__area": 1975.08, + "placeopt__design__instance__area": 1976.3, "placeopt__design__instance__area__macros": 0, - "placeopt__design__instance__area__stdcell": 1975.08, + "placeopt__design__instance__area__stdcell": 1976.3, "placeopt__design__instance__count": 17118, "placeopt__design__instance__count__macros": 0, "placeopt__design__instance__count__stdcell": 17118, - "placeopt__design__instance__utilization": 0.464158, - "placeopt__design__instance__utilization__stdcell": 0.464158, + "placeopt__design__instance__utilization": 0.464446, + "placeopt__design__instance__utilization__stdcell": 0.464446, "placeopt__design__io": 388, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 10, - "placeopt__mem__peak": 531900.0, - "placeopt__power__internal__total": 0.0561141, - "placeopt__power__leakage__total": 1.34669e-06, - "placeopt__power__switching__total": 0.0827102, - "placeopt__power__total": 0.138826, - "placeopt__runtime__total": "0:19.37", + "placeopt__mem__peak": 533272.0, + "placeopt__power__internal__total": 0.056114, + "placeopt__power__leakage__total": 1.34632e-06, + "placeopt__power__switching__total": 0.0827457, + "placeopt__power__total": 0.138861, + "placeopt__runtime__total": "0:13.13", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.0383468, + "placeopt__timing__drv__max_cap_limit": 0.0527618, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.550128, + "placeopt__timing__drv__max_slew_limit": 0.545123, "placeopt__timing__drv__setup_violation_count": 160, - "placeopt__timing__setup__tns": -9585.37, - "placeopt__timing__setup__ws": -95.2715, + "placeopt__timing__setup__tns": -9325.12, + "placeopt__timing__setup__ws": -84.0563, "run__flow__design": "aes", - "run__flow__generate_date": "2024-09-19 14:22", + "run__flow__generate_date": "2024-09-26 21:19", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15759-g9136ba699", + "run__flow__openroad_version": "v2.0-15807-g036379d64", "run__flow__platform": "asap7", "run__flow__platform__capacitance_units": "1fF", "run__flow__platform__current_units": "1mA", @@ -298,14 +298,14 @@ "run__flow__platform__resistance_units": "1kohm", "run__flow__platform__time_units": "1ps", "run__flow__platform__voltage_units": "1v", - "run__flow__platform_commit": "N/A", - "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "653c9f52-ee34-4858-90c1-8cec28a81b7e", - "run__flow__variant": "base", - "synth__cpu__total": 26.88, + "run__flow__platform_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__scripts_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__uuid": "045b5f2d-92c6-42f4-8156-8eea88882412", + "run__flow__variant": "odb_0925", + "synth__cpu__total": 24.67, "synth__design__instance__area__stdcell": 1715.0454, "synth__design__instance__count__stdcell": 15941.0, - "synth__mem__peak": 336540.0, - "synth__runtime__total": "0:27.51", - "total_time": "0:10:30.910000" + "synth__mem__peak": 336416.0, + "synth__runtime__total": "0:26.06", + "total_time": "0:07:52.400000" } \ No newline at end of file diff --git a/flow/designs/asap7/aes/rules-base.json b/flow/designs/asap7/aes/rules-base.json index f12728baf6..aecfbcb273 100644 --- a/flow/designs/asap7/aes/rules-base.json +++ b/flow/designs/asap7/aes/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 1943.72, + "value": 1972.31, "compare": "<=" }, "constraints__clocks__count": { @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 2069, + "value": 2273, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 17650, + "value": 19686, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,11 +20,11 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 1535, + "value": 1712, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 1535, + "value": 1712, "compare": "<=" }, "globalroute__antenna_diodes_count": { @@ -32,7 +32,7 @@ "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 83045, + "value": 86754, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -48,15 +48,15 @@ "compare": "<=" }, "finish__timing__setup__ws": { - "value": -69.8, + "value": -79.92, "compare": ">=" }, "finish__design__instance__area": { - "value": 2250, + "value": 2354, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 767, + "value": 856, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { @@ -64,7 +64,7 @@ "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -21.41, + "value": -23.72, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/asap7/aes_lvt/metadata-base-ok.json b/flow/designs/asap7/aes_lvt/metadata-base-ok.json index 246a6a6cef..1fccae70ba 100644 --- a/flow/designs/asap7/aes_lvt/metadata-base-ok.json +++ b/flow/designs/asap7/aes_lvt/metadata-base-ok.json @@ -3,147 +3,147 @@ "constraints__clocks__details": [ "clk: 400.0000" ], - "cts__clock__skew__hold": 11.279, - "cts__clock__skew__setup": 8.08495, - "cts__cpu__total": 27.88, + "cts__clock__skew__hold": 13.0227, + "cts__clock__skew__setup": 8.97402, + "cts__cpu__total": 18.54, "cts__design__core__area": 4276.37, "cts__design__die__area": 4837.48, - "cts__design__instance__area": 1968.75, + "cts__design__instance__area": 1970.12, "cts__design__instance__area__macros": 0, - "cts__design__instance__area__stdcell": 1968.75, - "cts__design__instance__count": 17128, + "cts__design__instance__area__stdcell": 1970.12, + "cts__design__instance__count": 17127, "cts__design__instance__count__hold_buffer": 0, "cts__design__instance__count__macros": 0, - "cts__design__instance__count__setup_buffer": 51, - "cts__design__instance__count__stdcell": 17128, - "cts__design__instance__displacement__max": 1.75, + "cts__design__instance__count__setup_buffer": 52, + "cts__design__instance__count__stdcell": 17127, + "cts__design__instance__displacement__max": 1.992, "cts__design__instance__displacement__mean": 0.003, - "cts__design__instance__displacement__total": 51.974, - "cts__design__instance__utilization": 0.460379, - "cts__design__instance__utilization__stdcell": 0.460379, + "cts__design__instance__displacement__total": 57.962, + "cts__design__instance__utilization": 0.460699, + "cts__design__instance__utilization__stdcell": 0.460699, "cts__design__io": 388, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 20, - "cts__mem__peak": 993424.0, - "cts__power__internal__total": 0.0620203, - "cts__power__leakage__total": 4.12856e-06, - "cts__power__switching__total": 0.0890412, - "cts__power__total": 0.151066, - "cts__route__wirelength__estimated": 59237.7, - "cts__runtime__total": "0:28.77", + "cts__mem__peak": 991920.0, + "cts__power__internal__total": 0.0620383, + "cts__power__leakage__total": 4.12031e-06, + "cts__power__switching__total": 0.0890563, + "cts__power__total": 0.151099, + "cts__route__wirelength__estimated": 59327.4, + "cts__runtime__total": "0:19.32", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, - "cts__timing__drv__max_cap_limit": 0.274661, + "cts__timing__drv__max_cap_limit": 0.273282, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.633047, + "cts__timing__drv__max_slew_limit": 0.657661, "cts__timing__drv__setup_violation_count": 0, "cts__timing__setup__tns": 0, - "cts__timing__setup__ws": 0.549033, + "cts__timing__setup__ws": 0.385608, "design__io__hpwl": 10278121, "design__violations": 0, - "detailedplace__cpu__total": 21.01, + "detailedplace__cpu__total": 14.05, "detailedplace__design__core__area": 4276.37, "detailedplace__design__die__area": 4837.48, - "detailedplace__design__instance__area": 1941.76, + "detailedplace__design__instance__area": 1942.93, "detailedplace__design__instance__area__macros": 0, - "detailedplace__design__instance__area__stdcell": 1941.76, + "detailedplace__design__instance__area__stdcell": 1942.93, "detailedplace__design__instance__count": 17009, "detailedplace__design__instance__count__macros": 0, "detailedplace__design__instance__count__stdcell": 17009, - "detailedplace__design__instance__displacement__max": 2.674, + "detailedplace__design__instance__displacement__max": 2.274, "detailedplace__design__instance__displacement__mean": 0.242, - "detailedplace__design__instance__displacement__total": 4119.66, - "detailedplace__design__instance__utilization": 0.454068, - "detailedplace__design__instance__utilization__stdcell": 0.454068, + "detailedplace__design__instance__displacement__total": 4127.79, + "detailedplace__design__instance__utilization": 0.454341, + "detailedplace__design__instance__utilization__stdcell": 0.454341, "detailedplace__design__io": 388, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 20, - "detailedplace__mem__peak": 401024.0, - "detailedplace__power__internal__total": 0.0601394, - "detailedplace__power__leakage__total": 3.95745e-06, - "detailedplace__power__switching__total": 0.0878003, - "detailedplace__power__total": 0.147944, - "detailedplace__route__wirelength__estimated": 60286.9, - "detailedplace__runtime__total": "0:21.36", + "detailedplace__mem__peak": 401496.0, + "detailedplace__power__internal__total": 0.0601808, + "detailedplace__power__leakage__total": 3.95001e-06, + "detailedplace__power__switching__total": 0.0877921, + "detailedplace__power__total": 0.147977, + "detailedplace__route__wirelength__estimated": 60364.4, + "detailedplace__runtime__total": "0:14.31", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, - "detailedplace__timing__drv__max_cap_limit": 0.275429, + "detailedplace__timing__drv__max_cap_limit": 0.27405, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.597792, - "detailedplace__timing__drv__setup_violation_count": 120, - "detailedplace__timing__setup__tns": -2320.53, - "detailedplace__timing__setup__ws": -52.7641, + "detailedplace__timing__drv__max_slew_limit": 0.595264, + "detailedplace__timing__drv__setup_violation_count": 122, + "detailedplace__timing__setup__tns": -2294.71, + "detailedplace__timing__setup__ws": -50.0204, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, "detailedroute__antenna_diodes_count": 0, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 21, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 2685, - "detailedroute__route__drc_errors__iter:2": 217, - "detailedroute__route__drc_errors__iter:3": 106, + "detailedroute__route__drc_errors__iter:1": 2429, + "detailedroute__route__drc_errors__iter:2": 192, + "detailedroute__route__drc_errors__iter:3": 128, "detailedroute__route__drc_errors__iter:4": 3, "detailedroute__route__drc_errors__iter:5": 0, - "detailedroute__route__net": 16957, + "detailedroute__route__net": 16955, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 163042, + "detailedroute__route__vias": 161350, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 163042, - "detailedroute__route__wirelength": 72039, - "detailedroute__route__wirelength__iter:1": 72604, - "detailedroute__route__wirelength__iter:2": 72104, - "detailedroute__route__wirelength__iter:3": 72040, - "detailedroute__route__wirelength__iter:4": 72038, - "detailedroute__route__wirelength__iter:5": 72039, - "finish__clock__skew__hold": 16.3765, - "finish__clock__skew__setup": 13.0804, - "finish__cpu__total": 46.5, + "detailedroute__route__vias__singlecut": 161350, + "detailedroute__route__wirelength": 71429, + "detailedroute__route__wirelength__iter:1": 71974, + "detailedroute__route__wirelength__iter:2": 71466, + "detailedroute__route__wirelength__iter:3": 71427, + "detailedroute__route__wirelength__iter:4": 71429, + "detailedroute__route__wirelength__iter:5": 71429, + "finish__clock__skew__hold": 15.3307, + "finish__clock__skew__setup": 13.243, + "finish__cpu__total": 31.95, "finish__design__core__area": 4276.37, "finish__design__die__area": 4837.48, - "finish__design__instance__area": 1965.95, + "finish__design__instance__area": 1969.66, "finish__design__instance__area__macros": 0, - "finish__design__instance__area__stdcell": 1965.95, - "finish__design__instance__count": 17180, + "finish__design__instance__area__stdcell": 1969.66, + "finish__design__instance__count": 17177, "finish__design__instance__count__macros": 0, - "finish__design__instance__count__stdcell": 17180, - "finish__design__instance__utilization": 0.459724, - "finish__design__instance__utilization__stdcell": 0.459724, + "finish__design__instance__count__stdcell": 17177, + "finish__design__instance__utilization": 0.46059, + "finish__design__instance__utilization__stdcell": 0.46059, "finish__design__io": 388, - "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.764161, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.00581098, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0209626, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0208189, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.749037, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0208189, + "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.764146, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.0058032, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.023122, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0214601, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.746878, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0214601, "finish__flow__errors__count": 0, - "finish__flow__warnings__count": 21, - "finish__mem__peak": 767832.0, - "finish__power__internal__total": 0.062029, - "finish__power__leakage__total": 3.81203e-06, - "finish__power__switching__total": 0.0937849, - "finish__power__total": 0.155818, - "finish__runtime__total": "0:47.21", + "finish__flow__warnings__count": 20, + "finish__mem__peak": 848224.0, + "finish__power__internal__total": 0.0623869, + "finish__power__leakage__total": 4.01321e-06, + "finish__power__switching__total": 0.0936544, + "finish__power__total": 0.156045, + "finish__runtime__total": "0:32.73", "finish__timing__drv__hold_violation_count": 0, "finish__timing__drv__max_cap": 0, - "finish__timing__drv__max_cap_limit": 0.261186, + "finish__timing__drv__max_cap_limit": 0.303262, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, "finish__timing__drv__max_slew": 0, - "finish__timing__drv__max_slew_limit": 0.393678, - "finish__timing__drv__setup_violation_count": 55, - "finish__timing__setup__tns": -246.795, - "finish__timing__setup__ws": -12.7786, - "finish__timing__wns_percent_delay": -2.693769, - "finish_merge__cpu__total": 3.71, - "finish_merge__mem__peak": 523796.0, - "finish_merge__runtime__total": "0:04.10", - "floorplan__cpu__total": 14.19, + "finish__timing__drv__max_slew_limit": 0.628592, + "finish__timing__drv__setup_violation_count": 42, + "finish__timing__setup__tns": -211.248, + "finish__timing__setup__ws": -12.9368, + "finish__timing__wns_percent_delay": -2.751359, + "finish_merge__cpu__total": 2.62, + "finish_merge__mem__peak": 523404.0, + "finish_merge__runtime__total": "0:02.90", + "floorplan__cpu__total": 8.57, "floorplan__design__core__area": 4276.37, "floorplan__design__die__area": 4837.48, "floorplan__design__instance__area": 1719.08, @@ -159,32 +159,32 @@ "floorplan__design__io": 388, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 42, - "floorplan__mem__peak": 376640.0, + "floorplan__mem__peak": 377364.0, "floorplan__power__internal__total": 0.0505249, "floorplan__power__leakage__total": 2.31449e-06, "floorplan__power__switching__total": 0.0680471, "floorplan__power__total": 0.118574, - "floorplan__runtime__total": "0:14.50", + "floorplan__runtime__total": "0:08.78", "floorplan__timing__setup__tns": 0, "floorplan__timing__setup__ws": 0.0540679, - "floorplan_io__cpu__total": 3.68, - "floorplan_io__mem__peak": 338240.0, - "floorplan_io__runtime__total": "0:03.96", - "floorplan_macro__cpu__total": 3.79, - "floorplan_macro__mem__peak": 337404.0, - "floorplan_macro__runtime__total": "0:04.02", - "floorplan_pdn__cpu__total": 4.04, - "floorplan_pdn__mem__peak": 341572.0, - "floorplan_pdn__runtime__total": "0:04.29", - "floorplan_tap__cpu__total": 3.8, - "floorplan_tap__mem__peak": 328552.0, - "floorplan_tap__runtime__total": "0:04.04", - "floorplan_tdms__cpu__total": 3.74, - "floorplan_tdms__mem__peak": 337728.0, - "floorplan_tdms__runtime__total": "0:04.00", + "floorplan_io__cpu__total": 2.54, + "floorplan_io__mem__peak": 338840.0, + "floorplan_io__runtime__total": "0:02.74", + "floorplan_macro__cpu__total": 2.51, + "floorplan_macro__mem__peak": 338444.0, + "floorplan_macro__runtime__total": "0:02.77", + "floorplan_pdn__cpu__total": 2.72, + "floorplan_pdn__mem__peak": 342300.0, + "floorplan_pdn__runtime__total": "0:02.94", + "floorplan_tap__cpu__total": 2.57, + "floorplan_tap__mem__peak": 329000.0, + "floorplan_tap__runtime__total": "0:02.77", + "floorplan_tdms__cpu__total": 2.54, + "floorplan_tdms__mem__peak": 338332.0, + "floorplan_tdms__runtime__total": "0:02.75", "flow__errors__count": 0, "flow__warnings__count": 20, - "globalplace__cpu__total": 920.18, + "globalplace__cpu__total": 822.68, "globalplace__design__core__area": 4276.37, "globalplace__design__die__area": 4837.48, "globalplace__design__instance__area": 1740.31, @@ -198,100 +198,61 @@ "globalplace__design__io": 388, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 20, - "globalplace__mem__peak": 1018956.0, - "globalplace__power__internal__total": 0.0512302, + "globalplace__mem__peak": 1021384.0, + "globalplace__power__internal__total": 0.05123, "globalplace__power__leakage__total": 2.31449e-06, - "globalplace__power__switching__total": 0.0816118, - "globalplace__power__total": 0.132844, - "globalplace__runtime__total": "1:31.94", - "globalplace__timing__setup__tns": -5069.88, - "globalplace__timing__setup__ws": -61.9229, - "globalplace_io__cpu__total": 3.81, - "globalplace_io__mem__peak": 340408.0, - "globalplace_io__runtime__total": "0:04.02", - "globalplace_skip_io__cpu__total": 917.26, - "globalplace_skip_io__mem__peak": 360788.0, - "globalplace_skip_io__runtime__total": "0:33.63", - "globalroute__antenna__violating__nets": 0, - "globalroute__antenna__violating__pins": 0, - "globalroute__antenna_diodes_count": 0, - "globalroute__clock__skew__hold": 13.0235, - "globalroute__clock__skew__setup": 9.40939, - "globalroute__cpu__total": 263.16, - "globalroute__design__core__area": 4276.37, - "globalroute__design__die__area": 4837.48, - "globalroute__design__instance__area": 1965.95, - "globalroute__design__instance__area__macros": 0, - "globalroute__design__instance__area__stdcell": 1965.95, - "globalroute__design__instance__count": 17180, - "globalroute__design__instance__count__hold_buffer": 0, - "globalroute__design__instance__count__macros": 0, - "globalroute__design__instance__count__setup_buffer": 48, - "globalroute__design__instance__count__stdcell": 17180, - "globalroute__design__instance__displacement__max": 1.242, - "globalroute__design__instance__displacement__mean": 0.002, - "globalroute__design__instance__displacement__total": 43.47, - "globalroute__design__instance__utilization": 0.459724, - "globalroute__design__instance__utilization__stdcell": 0.459724, - "globalroute__design__io": 388, - "globalroute__design__violations": 0, - "globalroute__flow__errors__count": 0, - "globalroute__flow__warnings__count": 21, - "globalroute__mem__peak": 1099740.0, - "globalroute__power__internal__total": 0.0618859, - "globalroute__power__leakage__total": 3.81203e-06, - "globalroute__power__switching__total": 0.0930269, - "globalroute__power__total": 0.154917, - "globalroute__route__wirelength__estimated": 59416.8, - "globalroute__runtime__total": "3:50.06", - "globalroute__timing__clock__slack": -2.226, - "globalroute__timing__drv__hold_violation_count": 0, - "globalroute__timing__drv__max_cap": 0, - "globalroute__timing__drv__max_cap_limit": 0.252523, - "globalroute__timing__drv__max_fanout": 0, - "globalroute__timing__drv__max_fanout_limit": 0, - "globalroute__timing__drv__max_slew": 0, - "globalroute__timing__drv__max_slew_limit": 0.379298, - "globalroute__timing__drv__setup_violation_count": 3, - "globalroute__timing__setup__tns": -2.65699, - "globalroute__timing__setup__ws": -2.22619, - "placeopt__cpu__total": 21.52, + "globalplace__power__switching__total": 0.0816172, + "globalplace__power__total": 0.13285, + "globalplace__runtime__total": "1:49.86", + "globalplace__timing__setup__tns": -4855.4, + "globalplace__timing__setup__ws": -60.3972, + "globalplace_io__cpu__total": 2.61, + "globalplace_io__mem__peak": 341020.0, + "globalplace_io__runtime__total": "0:02.80", + "globalplace_skip_io__cpu__total": 466.67, + "globalplace_skip_io__mem__peak": 361280.0, + "globalplace_skip_io__runtime__total": "0:34.61", + "globalroute__cpu__total": 22.4, + "globalroute__mem__peak": 1086112.0, + "globalroute__runtime__total": "0:23.32", + "globalroute__timing__clock__slack": "N/A", + "placeopt__cpu__total": 14.52, "placeopt__design__core__area": 4276.37, "placeopt__design__die__area": 4837.48, - "placeopt__design__instance__area": 1941.76, + "placeopt__design__instance__area": 1942.93, "placeopt__design__instance__area__macros": 0, - "placeopt__design__instance__area__stdcell": 1941.76, + "placeopt__design__instance__area__stdcell": 1942.93, "placeopt__design__instance__count": 17009, "placeopt__design__instance__count__macros": 0, "placeopt__design__instance__count__stdcell": 17009, - "placeopt__design__instance__utilization": 0.454068, - "placeopt__design__instance__utilization__stdcell": 0.454068, + "placeopt__design__instance__utilization": 0.454341, + "placeopt__design__instance__utilization__stdcell": 0.454341, "placeopt__design__io": 388, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 20, - "placeopt__mem__peak": 883536.0, - "placeopt__power__internal__total": 0.0601239, - "placeopt__power__leakage__total": 3.95745e-06, - "placeopt__power__switching__total": 0.0876547, - "placeopt__power__total": 0.147783, - "placeopt__runtime__total": "0:22.30", + "placeopt__mem__peak": 884468.0, + "placeopt__power__internal__total": 0.0601568, + "placeopt__power__leakage__total": 3.95001e-06, + "placeopt__power__switching__total": 0.0876708, + "placeopt__power__total": 0.147832, + "placeopt__runtime__total": "0:15.20", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.277896, + "placeopt__timing__drv__max_cap_limit": 0.277509, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.605075, + "placeopt__timing__drv__max_slew_limit": 0.636503, "placeopt__timing__drv__setup_violation_count": 116, - "placeopt__timing__setup__tns": -2122.16, - "placeopt__timing__setup__ws": -48.7695, + "placeopt__timing__setup__tns": -1974.36, + "placeopt__timing__setup__ws": -44.2044, "run__flow__design": "aes_lvt", - "run__flow__generate_date": "2024-09-19 14:22", + "run__flow__generate_date": "2024-09-26 21:19", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15759-g9136ba699", + "run__flow__openroad_version": "v2.0-15807-g036379d64", "run__flow__platform": "asap7", "run__flow__platform__capacitance_units": "1fF", "run__flow__platform__current_units": "1mA", @@ -300,14 +261,14 @@ "run__flow__platform__resistance_units": "1kohm", "run__flow__platform__time_units": "1ps", "run__flow__platform__voltage_units": "1v", - "run__flow__platform_commit": "N/A", - "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "f3c7d8b3-3c4f-485d-8c21-909ae8e1b0df", - "run__flow__variant": "base", - "synth__cpu__total": 32.01, + "run__flow__platform_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__scripts_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__uuid": "76fb84d3-0598-4b88-aece-0611bc3cc79e", + "run__flow__variant": "odb_0925", + "synth__cpu__total": 19.13, "synth__design__instance__area__stdcell": 1718.85078, "synth__design__instance__count__stdcell": 15892.0, - "synth__mem__peak": 339924.0, - "synth__runtime__total": "0:33.01", - "total_time": "0:09:11.210000" + "synth__mem__peak": 340056.0, + "synth__runtime__total": "0:19.78", + "total_time": "0:04:57.580000" } \ No newline at end of file diff --git a/flow/designs/asap7/ethmac/metadata-base-ok.json b/flow/designs/asap7/ethmac/metadata-base-ok.json index 07a7b32330..9510a2bfc7 100644 --- a/flow/designs/asap7/ethmac/metadata-base-ok.json +++ b/flow/designs/asap7/ethmac/metadata-base-ok.json @@ -5,147 +5,147 @@ "mtx_clk_pad_i: 300.0000", "wb_clk_i: 1000.0000" ], - "cts__clock__skew__hold": 166.884, - "cts__clock__skew__setup": 181.072, - "cts__cpu__total": 95.87, + "cts__clock__skew__hold": 165.251, + "cts__clock__skew__setup": 179.068, + "cts__cpu__total": 58.86, "cts__design__core__area": 18606, "cts__design__die__area": 19753.7, - "cts__design__instance__area": 8790.38, + "cts__design__instance__area": 8792.85, "cts__design__instance__area__macros": 0, - "cts__design__instance__area__stdcell": 8790.38, - "cts__design__instance__count": 63694, + "cts__design__instance__area__stdcell": 8792.85, + "cts__design__instance__count": 63699, "cts__design__instance__count__hold_buffer": 0, "cts__design__instance__count__macros": 0, - "cts__design__instance__count__setup_buffer": 90, - "cts__design__instance__count__stdcell": 63694, - "cts__design__instance__displacement__max": 1.814, + "cts__design__instance__count__setup_buffer": 91, + "cts__design__instance__count__stdcell": 63699, + "cts__design__instance__displacement__max": 1.991, "cts__design__instance__displacement__mean": 0.001, - "cts__design__instance__displacement__total": 73.325, - "cts__design__instance__utilization": 0.472448, - "cts__design__instance__utilization__stdcell": 0.472448, + "cts__design__instance__displacement__total": 90.058, + "cts__design__instance__utilization": 0.47258, + "cts__design__instance__utilization__stdcell": 0.47258, "cts__design__io": 216, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 11, - "cts__mem__peak": 886340.0, - "cts__power__internal__total": 0.0849351, - "cts__power__leakage__total": 7.29071e-06, - "cts__power__switching__total": 0.0252256, - "cts__power__total": 0.110168, - "cts__route__wirelength__estimated": 339667, - "cts__runtime__total": "1:36.56", + "cts__mem__peak": 887232.0, + "cts__power__internal__total": 0.084753, + "cts__power__leakage__total": 7.29233e-06, + "cts__power__switching__total": 0.0254859, + "cts__power__total": 0.110246, + "cts__route__wirelength__estimated": 339560, + "cts__runtime__total": "0:59.81", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, - "cts__timing__drv__max_cap_limit": 0.184781, - "cts__timing__drv__max_fanout": 494, + "cts__timing__drv__max_cap_limit": 0.191139, + "cts__timing__drv__max_fanout": 496, "cts__timing__drv__max_fanout_limit": 10, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.42685, - "cts__timing__drv__setup_violation_count": 64, - "cts__timing__setup__tns": -4598.99, - "cts__timing__setup__ws": -140.088, + "cts__timing__drv__max_slew_limit": 0.42007, + "cts__timing__drv__setup_violation_count": 58, + "cts__timing__setup__tns": -4753.12, + "cts__timing__setup__ws": -139.831, "design__io__hpwl": 7520039, "design__violations": 0, - "detailedplace__cpu__total": 61.02, + "detailedplace__cpu__total": 54.69, "detailedplace__design__core__area": 18606, "detailedplace__design__die__area": 19753.7, - "detailedplace__design__instance__area": 8480.27, + "detailedplace__design__instance__area": 8480.25, "detailedplace__design__instance__area__macros": 0, - "detailedplace__design__instance__area__stdcell": 8480.27, - "detailedplace__design__instance__count": 62651, + "detailedplace__design__instance__area__stdcell": 8480.25, + "detailedplace__design__instance__count": 62647, "detailedplace__design__instance__count__macros": 0, - "detailedplace__design__instance__count__stdcell": 62651, - "detailedplace__design__instance__displacement__max": 6.852, - "detailedplace__design__instance__displacement__mean": 0.271, - "detailedplace__design__instance__displacement__total": 16988.1, - "detailedplace__design__instance__utilization": 0.45578, - "detailedplace__design__instance__utilization__stdcell": 0.45578, + "detailedplace__design__instance__count__stdcell": 62647, + "detailedplace__design__instance__displacement__max": 6.575, + "detailedplace__design__instance__displacement__mean": 0.27, + "detailedplace__design__instance__displacement__total": 16926.8, + "detailedplace__design__instance__utilization": 0.455779, + "detailedplace__design__instance__utilization__stdcell": 0.455779, "detailedplace__design__io": 216, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 10, - "detailedplace__mem__peak": 536732.0, - "detailedplace__power__internal__total": 0.0580322, - "detailedplace__power__leakage__total": 6.98062e-06, - "detailedplace__power__switching__total": 0.0064164, - "detailedplace__power__total": 0.0644556, - "detailedplace__route__wirelength__estimated": 335794, - "detailedplace__runtime__total": "1:01.45", + "detailedplace__mem__peak": 538052.0, + "detailedplace__power__internal__total": 0.0580327, + "detailedplace__power__leakage__total": 6.98059e-06, + "detailedplace__power__switching__total": 0.00641996, + "detailedplace__power__total": 0.0644597, + "detailedplace__route__wirelength__estimated": 335843, + "detailedplace__runtime__total": "0:55.20", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, - "detailedplace__timing__drv__max_cap_limit": 0.184781, + "detailedplace__timing__drv__max_cap_limit": 0.191139, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 10, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.430666, - "detailedplace__timing__drv__setup_violation_count": 111, - "detailedplace__timing__setup__tns": -5351.7, - "detailedplace__timing__setup__ws": -176.681, + "detailedplace__timing__drv__max_slew_limit": 0.423849, + "detailedplace__timing__drv__setup_violation_count": 113, + "detailedplace__timing__setup__tns": -5420.71, + "detailedplace__timing__setup__ws": -177.915, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, "detailedroute__antenna_diodes_count": 0, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 11, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 14543, - "detailedroute__route__drc_errors__iter:2": 1150, - "detailedroute__route__drc_errors__iter:3": 607, - "detailedroute__route__drc_errors__iter:4": 13, + "detailedroute__route__drc_errors__iter:1": 14461, + "detailedroute__route__drc_errors__iter:2": 1111, + "detailedroute__route__drc_errors__iter:3": 610, + "detailedroute__route__drc_errors__iter:4": 15, "detailedroute__route__drc_errors__iter:5": 0, - "detailedroute__route__net": 61256, + "detailedroute__route__net": 61261, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 665289, + "detailedroute__route__vias": 666408, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 665289, - "detailedroute__route__wirelength": 486257, - "detailedroute__route__wirelength__iter:1": 487808, - "detailedroute__route__wirelength__iter:2": 486372, - "detailedroute__route__wirelength__iter:3": 486244, - "detailedroute__route__wirelength__iter:4": 486258, - "detailedroute__route__wirelength__iter:5": 486257, - "finish__clock__skew__hold": 182.325, - "finish__clock__skew__setup": 196.851, - "finish__cpu__total": 155.93, + "detailedroute__route__vias__singlecut": 666408, + "detailedroute__route__wirelength": 486429, + "detailedroute__route__wirelength__iter:1": 487983, + "detailedroute__route__wirelength__iter:2": 486564, + "detailedroute__route__wirelength__iter:3": 486406, + "detailedroute__route__wirelength__iter:4": 486429, + "detailedroute__route__wirelength__iter:5": 486429, + "finish__clock__skew__hold": 174.705, + "finish__clock__skew__setup": 190.033, + "finish__cpu__total": 133.67, "finish__design__core__area": 18606, "finish__design__die__area": 19753.7, - "finish__design__instance__area": 8791.58, + "finish__design__instance__area": 8795.56, "finish__design__instance__area__macros": 0, - "finish__design__instance__area__stdcell": 8791.58, - "finish__design__instance__count": 63708, + "finish__design__instance__area__stdcell": 8795.56, + "finish__design__instance__count": 63720, "finish__design__instance__count__macros": 0, - "finish__design__instance__count__stdcell": 63708, - "finish__design__instance__utilization": 0.472512, - "finish__design__instance__utilization__stdcell": 0.472512, + "finish__design__instance__count__stdcell": 63720, + "finish__design__instance__utilization": 0.472726, + "finish__design__instance__utilization__stdcell": 0.472726, "finish__design__io": 216, - "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.745603, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.0237067, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.093669, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0906811, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.676331, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0906811, + "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.745581, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.023827, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.094009, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0911129, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.675991, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0911129, "finish__flow__errors__count": 0, - "finish__flow__warnings__count": 11, - "finish__mem__peak": 1902704.0, - "finish__power__internal__total": 0.0850339, - "finish__power__leakage__total": 7.29234e-06, - "finish__power__switching__total": 0.0272546, - "finish__power__total": 0.112296, - "finish__runtime__total": "2:37.74", + "finish__flow__warnings__count": 10, + "finish__mem__peak": 1981368.0, + "finish__power__internal__total": 0.0848362, + "finish__power__leakage__total": 7.29577e-06, + "finish__power__switching__total": 0.0274942, + "finish__power__total": 0.112338, + "finish__runtime__total": "2:16.32", "finish__timing__drv__hold_violation_count": 0, "finish__timing__drv__max_cap": 0, - "finish__timing__drv__max_cap_limit": 0.0012179, - "finish__timing__drv__max_fanout": 494, + "finish__timing__drv__max_cap_limit": 0.0173482, + "finish__timing__drv__max_fanout": 496, "finish__timing__drv__max_fanout_limit": 10, - "finish__timing__drv__max_slew": 77, - "finish__timing__drv__max_slew_limit": -0.378798, - "finish__timing__drv__setup_violation_count": 75, - "finish__timing__setup__tns": -3463.2, - "finish__timing__setup__ws": -145.193, - "finish__timing__wns_percent_delay": -29.052975, - "finish_merge__cpu__total": 7.98, - "finish_merge__mem__peak": 908736.0, - "finish_merge__runtime__total": "0:08.54", - "floorplan__cpu__total": 54.41, + "finish__timing__drv__max_slew": 72, + "finish__timing__drv__max_slew_limit": -0.318314, + "finish__timing__drv__setup_violation_count": 84, + "finish__timing__setup__tns": -3979.3, + "finish__timing__setup__ws": -156.115, + "finish__timing__wns_percent_delay": -30.42512, + "finish_merge__cpu__total": 6.74, + "finish_merge__mem__peak": 910576.0, + "finish_merge__runtime__total": "0:07.40", + "floorplan__cpu__total": 27.92, "floorplan__design__core__area": 18606, "floorplan__design__die__area": 19753.7, "floorplan__design__instance__area": 7461.84, @@ -160,33 +160,33 @@ "floorplan__design__instance__utilization__stdcell": 0.401044, "floorplan__design__io": 216, "floorplan__flow__errors__count": 0, - "floorplan__flow__warnings__count": 1826, - "floorplan__mem__peak": 439956.0, + "floorplan__flow__warnings__count": 1824, + "floorplan__mem__peak": 436708.0, "floorplan__power__internal__total": 0.0566802, "floorplan__power__leakage__total": 5.62273e-06, "floorplan__power__switching__total": 0.00389308, "floorplan__power__total": 0.0605789, - "floorplan__runtime__total": "0:54.67", + "floorplan__runtime__total": "0:28.19", "floorplan__timing__setup__tns": -2913.3, "floorplan__timing__setup__ws": -134.238, - "floorplan_io__cpu__total": 1.95, - "floorplan_io__mem__peak": 299832.0, - "floorplan_io__runtime__total": "0:02.16", - "floorplan_macro__cpu__total": 2.04, - "floorplan_macro__mem__peak": 295848.0, - "floorplan_macro__runtime__total": "0:02.24", - "floorplan_pdn__cpu__total": 2.88, - "floorplan_pdn__mem__peak": 304132.0, - "floorplan_pdn__runtime__total": "0:03.09", - "floorplan_tap__cpu__total": 2.35, - "floorplan_tap__mem__peak": 262208.0, - "floorplan_tap__runtime__total": "0:02.58", - "floorplan_tdms__cpu__total": 2.0, - "floorplan_tdms__mem__peak": 295120.0, - "floorplan_tdms__runtime__total": "0:02.21", + "floorplan_io__cpu__total": 1.97, + "floorplan_io__mem__peak": 299540.0, + "floorplan_io__runtime__total": "0:02.25", + "floorplan_macro__cpu__total": 1.84, + "floorplan_macro__mem__peak": 296684.0, + "floorplan_macro__runtime__total": "0:02.13", + "floorplan_pdn__cpu__total": 2.62, + "floorplan_pdn__mem__peak": 305164.0, + "floorplan_pdn__runtime__total": "0:02.90", + "floorplan_tap__cpu__total": 2.22, + "floorplan_tap__mem__peak": 262292.0, + "floorplan_tap__runtime__total": "0:02.41", + "floorplan_tdms__cpu__total": 1.57, + "floorplan_tdms__mem__peak": 296532.0, + "floorplan_tdms__runtime__total": "0:01.79", "flow__errors__count": 0, "flow__warnings__count": 10, - "globalplace__cpu__total": 912.9, + "globalplace__cpu__total": 1345.96, "globalplace__design__core__area": 18606, "globalplace__design__die__area": 19753.7, "globalplace__design__instance__area": 7528.24, @@ -200,100 +200,100 @@ "globalplace__design__io": 216, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 10, - "globalplace__mem__peak": 1064732.0, + "globalplace__mem__peak": 1067516.0, "globalplace__power__internal__total": 0.0567726, "globalplace__power__leakage__total": 5.62273e-06, - "globalplace__power__switching__total": 0.00597038, - "globalplace__power__total": 0.0627486, - "globalplace__runtime__total": "3:36.55", - "globalplace__timing__setup__tns": -24237.3, - "globalplace__timing__setup__ws": -175.995, - "globalplace_io__cpu__total": 1.97, - "globalplace_io__mem__peak": 304704.0, - "globalplace_io__runtime__total": "0:02.19", - "globalplace_skip_io__cpu__total": 615.32, - "globalplace_skip_io__mem__peak": 380596.0, - "globalplace_skip_io__runtime__total": "0:28.43", + "globalplace__power__switching__total": 0.00596853, + "globalplace__power__total": 0.0627467, + "globalplace__runtime__total": "5:41.68", + "globalplace__timing__setup__tns": -23170.5, + "globalplace__timing__setup__ws": -174.859, + "globalplace_io__cpu__total": 2.03, + "globalplace_io__mem__peak": 305204.0, + "globalplace_io__runtime__total": "0:02.35", + "globalplace_skip_io__cpu__total": 355.55, + "globalplace_skip_io__mem__peak": 384528.0, + "globalplace_skip_io__runtime__total": "0:45.66", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, "globalroute__antenna_diodes_count": 0, - "globalroute__clock__skew__hold": 160.752, - "globalroute__clock__skew__setup": 175.238, - "globalroute__cpu__total": 341.49, + "globalroute__clock__skew__hold": 155.452, + "globalroute__clock__skew__setup": 170.069, + "globalroute__cpu__total": 211.6, "globalroute__design__core__area": 18606, "globalroute__design__die__area": 19753.7, - "globalroute__design__instance__area": 8791.58, + "globalroute__design__instance__area": 8795.56, "globalroute__design__instance__area__macros": 0, - "globalroute__design__instance__area__stdcell": 8791.58, - "globalroute__design__instance__count": 63708, + "globalroute__design__instance__area__stdcell": 8795.56, + "globalroute__design__instance__count": 63720, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 0, - "globalroute__design__instance__count__setup_buffer": 24, - "globalroute__design__instance__count__stdcell": 63708, - "globalroute__design__instance__displacement__max": 1.35, + "globalroute__design__instance__count__setup_buffer": 26, + "globalroute__design__instance__count__stdcell": 63720, + "globalroute__design__instance__displacement__max": 1.404, "globalroute__design__instance__displacement__mean": 0, - "globalroute__design__instance__displacement__total": 29.646, - "globalroute__design__instance__utilization": 0.472512, - "globalroute__design__instance__utilization__stdcell": 0.472512, + "globalroute__design__instance__displacement__total": 31.32, + "globalroute__design__instance__utilization": 0.472726, + "globalroute__design__instance__utilization__stdcell": 0.472726, "globalroute__design__io": 216, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 13, - "globalroute__mem__peak": 1562168.0, - "globalroute__power__internal__total": 0.0849612, - "globalroute__power__leakage__total": 7.29234e-06, - "globalroute__power__switching__total": 0.0265175, - "globalroute__power__total": 0.111486, - "globalroute__route__wirelength__estimated": 339693, - "globalroute__runtime__total": "3:29.00", + "globalroute__mem__peak": 1558048.0, + "globalroute__power__internal__total": 0.084767, + "globalroute__power__leakage__total": 7.29577e-06, + "globalroute__power__switching__total": 0.0267839, + "globalroute__power__total": 0.111558, + "globalroute__route__wirelength__estimated": 339813, + "globalroute__runtime__total": "2:19.76", "globalroute__timing__clock__slack": "N/A", "globalroute__timing__drv__hold_violation_count": 0, "globalroute__timing__drv__max_cap": 0, - "globalroute__timing__drv__max_cap_limit": 0.179365, - "globalroute__timing__drv__max_fanout": 494, + "globalroute__timing__drv__max_cap_limit": 0.186819, + "globalroute__timing__drv__max_fanout": 496, "globalroute__timing__drv__max_fanout_limit": 10, "globalroute__timing__drv__max_slew": 0, - "globalroute__timing__drv__max_slew_limit": 0.0402694, - "globalroute__timing__drv__setup_violation_count": 81, - "globalroute__timing__setup__tns": -3825.06, - "globalroute__timing__setup__ws": -153.357, - "placeopt__cpu__total": 55.34, + "globalroute__timing__drv__max_slew_limit": 0.127416, + "globalroute__timing__drv__setup_violation_count": 76, + "globalroute__timing__setup__tns": -4053.4, + "globalroute__timing__setup__ws": -152.683, + "placeopt__cpu__total": 46.58, "placeopt__design__core__area": 18606, "placeopt__design__die__area": 19753.7, - "placeopt__design__instance__area": 8480.27, + "placeopt__design__instance__area": 8480.25, "placeopt__design__instance__area__macros": 0, - "placeopt__design__instance__area__stdcell": 8480.27, - "placeopt__design__instance__count": 62651, + "placeopt__design__instance__area__stdcell": 8480.25, + "placeopt__design__instance__count": 62647, "placeopt__design__instance__count__macros": 0, - "placeopt__design__instance__count__stdcell": 62651, - "placeopt__design__instance__utilization": 0.45578, - "placeopt__design__instance__utilization__stdcell": 0.45578, + "placeopt__design__instance__count__stdcell": 62647, + "placeopt__design__instance__utilization": 0.455779, + "placeopt__design__instance__utilization__stdcell": 0.455779, "placeopt__design__io": 216, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 10, - "placeopt__mem__peak": 734848.0, - "placeopt__power__internal__total": 0.0580326, - "placeopt__power__leakage__total": 6.98062e-06, - "placeopt__power__switching__total": 0.00640812, - "placeopt__power__total": 0.0644477, - "placeopt__runtime__total": "0:55.93", + "placeopt__mem__peak": 735476.0, + "placeopt__power__internal__total": 0.0580328, + "placeopt__power__leakage__total": 6.98059e-06, + "placeopt__power__switching__total": 0.00640747, + "placeopt__power__total": 0.0644472, + "placeopt__runtime__total": "0:47.44", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.194117, + "placeopt__timing__drv__max_cap_limit": 0.192401, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 10, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.429079, - "placeopt__timing__drv__setup_violation_count": 116, - "placeopt__timing__setup__tns": -5370.84, - "placeopt__timing__setup__ws": -177.616, + "placeopt__timing__drv__max_slew_limit": 0.429858, + "placeopt__timing__drv__setup_violation_count": 118, + "placeopt__timing__setup__tns": -5413.15, + "placeopt__timing__setup__ws": -176.615, "run__flow__design": "ethmac", - "run__flow__generate_date": "2024-09-19 14:37", + "run__flow__generate_date": "2024-09-26 21:19", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15759-g9136ba699", + "run__flow__openroad_version": "v2.0-15807-g036379d64", "run__flow__platform": "asap7", "run__flow__platform__capacitance_units": "1fF", "run__flow__platform__current_units": "1mA", @@ -302,14 +302,14 @@ "run__flow__platform__resistance_units": "1kohm", "run__flow__platform__time_units": "1ps", "run__flow__platform__voltage_units": "1v", - "run__flow__platform_commit": "N/A", - "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "1dee94e7-e95d-46b6-aef3-6da5a894f007", - "run__flow__variant": "base", - "synth__cpu__total": 40.94, + "run__flow__platform_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__scripts_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__uuid": "8ec0925e-06d0-43f2-a1ab-e9ee25e4a4e1", + "run__flow__variant": "odb_0925", + "synth__cpu__total": 65.38, "synth__design__instance__area__stdcell": 7458.20946, "synth__design__instance__count__stdcell": 58726.0, - "synth__mem__peak": 378968.0, - "synth__runtime__total": "0:41.58", - "total_time": "0:15:44.920000" + "synth__mem__peak": 378876.0, + "synth__runtime__total": "1:20.92", + "total_time": "0:15:56.210000" } \ No newline at end of file diff --git a/flow/designs/asap7/ethmac/rules-base.json b/flow/designs/asap7/ethmac/rules-base.json index 8dbfcaa2b1..90d12d4d5e 100644 --- a/flow/designs/asap7/ethmac/rules-base.json +++ b/flow/designs/asap7/ethmac/rules-base.json @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 8754, + "value": 9752, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 66378, + "value": 72044, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,11 +20,11 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 5772, + "value": 6265, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 5772, + "value": 6265, "compare": "<=" }, "globalroute__antenna_diodes_count": { @@ -32,7 +32,7 @@ "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 559196, + "value": 559393, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -48,15 +48,15 @@ "compare": "<=" }, "finish__timing__setup__ws": { - "value": -160.19, + "value": -171.11, "compare": ">=" }, "finish__design__instance__area": { - "value": 8802, + "value": 10115, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 2886, + "value": 3132, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { @@ -64,7 +64,7 @@ "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -44.86, + "value": -46.51, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/asap7/ethmac_lvt/metadata-base-ok.json b/flow/designs/asap7/ethmac_lvt/metadata-base-ok.json index a81ca4bb99..455858e39e 100644 --- a/flow/designs/asap7/ethmac_lvt/metadata-base-ok.json +++ b/flow/designs/asap7/ethmac_lvt/metadata-base-ok.json @@ -5,147 +5,147 @@ "mtx_clk_pad_i: 300.0000", "wb_clk_i: 1000.0000" ], - "cts__clock__skew__hold": 149.895, - "cts__clock__skew__setup": 161.868, - "cts__cpu__total": 93.23, + "cts__clock__skew__hold": 147.809, + "cts__clock__skew__setup": 158.512, + "cts__cpu__total": 82.51, "cts__design__core__area": 18327.2, "cts__design__die__area": 19477.6, - "cts__design__instance__area": 8643.78, + "cts__design__instance__area": 8642.31, "cts__design__instance__area__macros": 0, - "cts__design__instance__area__stdcell": 8643.78, - "cts__design__instance__count": 61505, + "cts__design__instance__area__stdcell": 8642.31, + "cts__design__instance__count": 61508, "cts__design__instance__count__hold_buffer": 0, "cts__design__instance__count__macros": 0, - "cts__design__instance__count__setup_buffer": 68, - "cts__design__instance__count__stdcell": 61505, - "cts__design__instance__displacement__max": 1.513, - "cts__design__instance__displacement__mean": 0, - "cts__design__instance__displacement__total": 54.83, - "cts__design__instance__utilization": 0.471637, - "cts__design__instance__utilization__stdcell": 0.471637, + "cts__design__instance__count__setup_buffer": 79, + "cts__design__instance__count__stdcell": 61508, + "cts__design__instance__displacement__max": 2.115, + "cts__design__instance__displacement__mean": 0.001, + "cts__design__instance__displacement__total": 76.886, + "cts__design__instance__utilization": 0.471557, + "cts__design__instance__utilization__stdcell": 0.471557, "cts__design__io": 216, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 21, - "cts__mem__peak": 1253008.0, - "cts__power__internal__total": 0.0881098, - "cts__power__leakage__total": 2.76015e-05, - "cts__power__switching__total": 0.0240921, - "cts__power__total": 0.11223, - "cts__route__wirelength__estimated": 370088, - "cts__runtime__total": "1:34.36", + "cts__mem__peak": 1232488.0, + "cts__power__internal__total": 0.087936, + "cts__power__leakage__total": 2.75525e-05, + "cts__power__switching__total": 0.0241037, + "cts__power__total": 0.112067, + "cts__route__wirelength__estimated": 368686, + "cts__runtime__total": "1:23.63", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, - "cts__timing__drv__max_cap_limit": 0.597872, + "cts__timing__drv__max_cap_limit": 0.601505, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.456642, - "cts__timing__drv__setup_violation_count": 32, - "cts__timing__setup__tns": -237.295, - "cts__timing__setup__ws": -17.0616, + "cts__timing__drv__max_slew_limit": 0.384693, + "cts__timing__drv__setup_violation_count": 17, + "cts__timing__setup__tns": -286.735, + "cts__timing__setup__ws": -19.5119, "design__io__hpwl": 6624195, "design__violations": 0, - "detailedplace__cpu__total": 73.31, + "detailedplace__cpu__total": 76.64, "detailedplace__design__core__area": 18327.2, "detailedplace__design__die__area": 19477.6, - "detailedplace__design__instance__area": 8356.12, + "detailedplace__design__instance__area": 8354.63, "detailedplace__design__instance__area__macros": 0, - "detailedplace__design__instance__area__stdcell": 8356.12, - "detailedplace__design__instance__count": 60499, + "detailedplace__design__instance__area__stdcell": 8354.63, + "detailedplace__design__instance__count": 60492, "detailedplace__design__instance__count__macros": 0, - "detailedplace__design__instance__count__stdcell": 60499, - "detailedplace__design__instance__displacement__max": 5.438, - "detailedplace__design__instance__displacement__mean": 0.26, - "detailedplace__design__instance__displacement__total": 15732.9, - "detailedplace__design__instance__utilization": 0.455941, - "detailedplace__design__instance__utilization__stdcell": 0.455941, + "detailedplace__design__instance__count__stdcell": 60492, + "detailedplace__design__instance__displacement__max": 5.848, + "detailedplace__design__instance__displacement__mean": 0.259, + "detailedplace__design__instance__displacement__total": 15722.7, + "detailedplace__design__instance__utilization": 0.45586, + "detailedplace__design__instance__utilization__stdcell": 0.45586, "detailedplace__design__io": 216, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 20, - "detailedplace__mem__peak": 633996.0, - "detailedplace__power__internal__total": 0.0567912, - "detailedplace__power__leakage__total": 2.53202e-05, - "detailedplace__power__switching__total": 0.00479485, - "detailedplace__power__total": 0.0616113, - "detailedplace__route__wirelength__estimated": 366302, - "detailedplace__runtime__total": "1:13.82", + "detailedplace__mem__peak": 634772.0, + "detailedplace__power__internal__total": 0.0567883, + "detailedplace__power__leakage__total": 2.52735e-05, + "detailedplace__power__switching__total": 0.00478564, + "detailedplace__power__total": 0.0615992, + "detailedplace__route__wirelength__estimated": 364680, + "detailedplace__runtime__total": "1:17.17", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, - "detailedplace__timing__drv__max_cap_limit": 0.597872, + "detailedplace__timing__drv__max_cap_limit": 0.601505, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.457216, - "detailedplace__timing__drv__setup_violation_count": 256, - "detailedplace__timing__setup__tns": -8986.2, - "detailedplace__timing__setup__ws": -99.9445, + "detailedplace__timing__drv__max_slew_limit": 0.392787, + "detailedplace__timing__drv__setup_violation_count": 336, + "detailedplace__timing__setup__tns": -20429.2, + "detailedplace__timing__setup__ws": -118.99, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, "detailedroute__antenna_diodes_count": 0, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 21, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 20177, - "detailedroute__route__drc_errors__iter:2": 1427, - "detailedroute__route__drc_errors__iter:3": 932, - "detailedroute__route__drc_errors__iter:4": 25, + "detailedroute__route__drc_errors__iter:1": 19614, + "detailedroute__route__drc_errors__iter:2": 1534, + "detailedroute__route__drc_errors__iter:3": 901, + "detailedroute__route__drc_errors__iter:4": 14, "detailedroute__route__drc_errors__iter:5": 0, - "detailedroute__route__net": 59131, + "detailedroute__route__net": 59137, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 759184, + "detailedroute__route__vias": 760190, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 759184, - "detailedroute__route__wirelength": 592341, - "detailedroute__route__wirelength__iter:1": 595840, - "detailedroute__route__wirelength__iter:2": 592904, - "detailedroute__route__wirelength__iter:3": 592306, - "detailedroute__route__wirelength__iter:4": 592340, - "detailedroute__route__wirelength__iter:5": 592341, - "finish__clock__skew__hold": 155.64, - "finish__clock__skew__setup": 168.574, - "finish__cpu__total": 202.46, + "detailedroute__route__vias__singlecut": 760190, + "detailedroute__route__wirelength": 592318, + "detailedroute__route__wirelength__iter:1": 595603, + "detailedroute__route__wirelength__iter:2": 592917, + "detailedroute__route__wirelength__iter:3": 592260, + "detailedroute__route__wirelength__iter:4": 592320, + "detailedroute__route__wirelength__iter:5": 592318, + "finish__clock__skew__hold": 152.26, + "finish__clock__skew__setup": 162.971, + "finish__cpu__total": 199.37, "finish__design__core__area": 18327.2, "finish__design__die__area": 19477.6, - "finish__design__instance__area": 8654.31, + "finish__design__instance__area": 8654.1, "finish__design__instance__area__macros": 0, - "finish__design__instance__area__stdcell": 8654.31, - "finish__design__instance__count": 61555, + "finish__design__instance__area__stdcell": 8654.1, + "finish__design__instance__count": 61560, "finish__design__instance__count__macros": 0, - "finish__design__instance__count__stdcell": 61555, - "finish__design__instance__utilization": 0.472211, - "finish__design__instance__utilization__stdcell": 0.472211, + "finish__design__instance__count__stdcell": 61560, + "finish__design__instance__utilization": 0.4722, + "finish__design__instance__utilization__stdcell": 0.4722, "finish__design__io": 216, - "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.738816, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.0300351, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.1041, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0998518, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.6659, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0998518, + "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.739145, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.0298704, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.101717, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.10073, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.668283, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.10073, "finish__flow__errors__count": 0, "finish__flow__warnings__count": 21, - "finish__mem__peak": 2102084.0, - "finish__power__internal__total": 0.0899552, - "finish__power__leakage__total": 2.76234e-05, - "finish__power__switching__total": 0.0266805, - "finish__power__total": 0.116663, - "finish__runtime__total": "3:24.99", + "finish__mem__peak": 2101912.0, + "finish__power__internal__total": 0.0899285, + "finish__power__leakage__total": 2.75882e-05, + "finish__power__switching__total": 0.0266752, + "finish__power__total": 0.116631, + "finish__runtime__total": "3:21.67", "finish__timing__drv__hold_violation_count": 0, "finish__timing__drv__max_cap": 0, - "finish__timing__drv__max_cap_limit": 0.132493, + "finish__timing__drv__max_cap_limit": 0.204493, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, - "finish__timing__drv__max_slew": 1385, - "finish__timing__drv__max_slew_limit": -4.3494, - "finish__timing__drv__setup_violation_count": 369, - "finish__timing__setup__tns": -24214.1, - "finish__timing__setup__ws": -255.677, - "finish__timing__wns_percent_delay": -18.204525, - "finish_merge__cpu__total": 10.93, - "finish_merge__mem__peak": 930592.0, - "finish_merge__runtime__total": "0:11.71", - "floorplan__cpu__total": 89.47, + "finish__timing__drv__max_slew": 1536, + "finish__timing__drv__max_slew_limit": -3.83565, + "finish__timing__drv__setup_violation_count": 387, + "finish__timing__setup__tns": -27222.8, + "finish__timing__setup__ws": -193.769, + "finish__timing__wns_percent_delay": -14.532763, + "finish_merge__cpu__total": 10.68, + "finish_merge__mem__peak": 931004.0, + "finish_merge__runtime__total": "0:11.41", + "floorplan__cpu__total": 47.91, "floorplan__design__core__area": 18327.2, "floorplan__design__die__area": 19477.6, "floorplan__design__instance__area": 7352.8, @@ -161,32 +161,32 @@ "floorplan__design__io": 216, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 1383, - "floorplan__mem__peak": 539340.0, + "floorplan__mem__peak": 535720.0, "floorplan__power__internal__total": 0.0548457, "floorplan__power__leakage__total": 8.26248e-06, "floorplan__power__switching__total": 0.00252001, "floorplan__power__total": 0.0573739, - "floorplan__runtime__total": "1:29.83", - "floorplan__timing__setup__tns": -197.7, + "floorplan__runtime__total": "0:48.28", + "floorplan__timing__setup__tns": -197.701, "floorplan__timing__setup__ws": -18.48, - "floorplan_io__cpu__total": 3.95, - "floorplan_io__mem__peak": 400700.0, - "floorplan_io__runtime__total": "0:04.29", - "floorplan_macro__cpu__total": 4.07, - "floorplan_macro__mem__peak": 397060.0, - "floorplan_macro__runtime__total": "0:04.33", - "floorplan_pdn__cpu__total": 5.06, - "floorplan_pdn__mem__peak": 405292.0, - "floorplan_pdn__runtime__total": "0:05.35", - "floorplan_tap__cpu__total": 4.34, - "floorplan_tap__mem__peak": 365348.0, - "floorplan_tap__runtime__total": "0:04.69", - "floorplan_tdms__cpu__total": 4.03, - "floorplan_tdms__mem__peak": 397228.0, - "floorplan_tdms__runtime__total": "0:04.32", + "floorplan_io__cpu__total": 4.04, + "floorplan_io__mem__peak": 400752.0, + "floorplan_io__runtime__total": "0:04.31", + "floorplan_macro__cpu__total": 4.0, + "floorplan_macro__mem__peak": 397196.0, + "floorplan_macro__runtime__total": "0:04.35", + "floorplan_pdn__cpu__total": 5.05, + "floorplan_pdn__mem__peak": 406220.0, + "floorplan_pdn__runtime__total": "0:05.40", + "floorplan_tap__cpu__total": 3.94, + "floorplan_tap__mem__peak": 365104.0, + "floorplan_tap__runtime__total": "0:04.19", + "floorplan_tdms__cpu__total": 4.0, + "floorplan_tdms__mem__peak": 397044.0, + "floorplan_tdms__runtime__total": "0:04.36", "flow__errors__count": 0, "flow__warnings__count": 20, - "globalplace__cpu__total": 3602.5, + "globalplace__cpu__total": 3720.95, "globalplace__design__core__area": 18327.2, "globalplace__design__die__area": 19477.6, "globalplace__design__instance__area": 7418.67, @@ -200,100 +200,100 @@ "globalplace__design__io": 216, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 20, - "globalplace__mem__peak": 1402304.0, - "globalplace__power__internal__total": 0.0549672, + "globalplace__mem__peak": 1406672.0, + "globalplace__power__internal__total": 0.0549651, "globalplace__power__leakage__total": 8.26248e-06, - "globalplace__power__switching__total": 0.00441503, - "globalplace__power__total": 0.0593905, - "globalplace__runtime__total": "6:19.72", - "globalplace__timing__setup__tns": -102564, - "globalplace__timing__setup__ws": -401.404, - "globalplace_io__cpu__total": 4.04, - "globalplace_io__mem__peak": 406188.0, - "globalplace_io__runtime__total": "0:04.36", - "globalplace_skip_io__cpu__total": 1346.29, - "globalplace_skip_io__mem__peak": 479592.0, - "globalplace_skip_io__runtime__total": "0:58.81", + "globalplace__power__switching__total": 0.00440862, + "globalplace__power__total": 0.059382, + "globalplace__runtime__total": "7:04.48", + "globalplace__timing__setup__tns": -110986, + "globalplace__timing__setup__ws": -434.312, + "globalplace_io__cpu__total": 4.03, + "globalplace_io__mem__peak": 406260.0, + "globalplace_io__runtime__total": "0:04.34", + "globalplace_skip_io__cpu__total": 1348.33, + "globalplace_skip_io__mem__peak": 479928.0, + "globalplace_skip_io__runtime__total": "1:01.22", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, "globalroute__antenna_diodes_count": 0, - "globalroute__clock__skew__hold": 140.506, - "globalroute__clock__skew__setup": 152.34, - "globalroute__cpu__total": 2168.26, + "globalroute__clock__skew__hold": 142.527, + "globalroute__clock__skew__setup": 153.536, + "globalroute__cpu__total": 3203.51, "globalroute__design__core__area": 18327.2, "globalroute__design__die__area": 19477.6, - "globalroute__design__instance__area": 8654.31, + "globalroute__design__instance__area": 8654.1, "globalroute__design__instance__area__macros": 0, - "globalroute__design__instance__area__stdcell": 8654.31, - "globalroute__design__instance__count": 61555, + "globalroute__design__instance__area__stdcell": 8654.1, + "globalroute__design__instance__count": 61560, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 0, - "globalroute__design__instance__count__setup_buffer": 11, - "globalroute__design__instance__count__stdcell": 61555, - "globalroute__design__instance__displacement__max": 0.918, + "globalroute__design__instance__count__setup_buffer": 10, + "globalroute__design__instance__count__stdcell": 61560, + "globalroute__design__instance__displacement__max": 1.134, "globalroute__design__instance__displacement__mean": 0, - "globalroute__design__instance__displacement__total": 9.558, - "globalroute__design__instance__utilization": 0.472211, - "globalroute__design__instance__utilization__stdcell": 0.472211, + "globalroute__design__instance__displacement__total": 16.686, + "globalroute__design__instance__utilization": 0.4722, + "globalroute__design__instance__utilization__stdcell": 0.4722, "globalroute__design__io": 216, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 23, - "globalroute__mem__peak": 2030332.0, - "globalroute__power__internal__total": 0.0893905, - "globalroute__power__leakage__total": 2.76234e-05, - "globalroute__power__switching__total": 0.0255528, - "globalroute__power__total": 0.114971, - "globalroute__route__wirelength__estimated": 372260, - "globalroute__runtime__total": "32:31.58", + "globalroute__mem__peak": 1995808.0, + "globalroute__power__internal__total": 0.0892988, + "globalroute__power__leakage__total": 2.75882e-05, + "globalroute__power__switching__total": 0.0255566, + "globalroute__power__total": 0.114883, + "globalroute__route__wirelength__estimated": 370876, + "globalroute__runtime__total": "49:58.64", "globalroute__timing__clock__slack": "N/A", "globalroute__timing__drv__hold_violation_count": 0, "globalroute__timing__drv__max_cap": 0, - "globalroute__timing__drv__max_cap_limit": 0.598637, + "globalroute__timing__drv__max_cap_limit": 0.607418, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, - "globalroute__timing__drv__max_slew": 710, - "globalroute__timing__drv__max_slew_limit": -3.04746, - "globalroute__timing__drv__setup_violation_count": 43, - "globalroute__timing__setup__tns": -508.179, - "globalroute__timing__setup__ws": -27.8989, - "placeopt__cpu__total": 65.3, + "globalroute__timing__drv__max_slew": 746, + "globalroute__timing__drv__max_slew_limit": -2.32777, + "globalroute__timing__drv__setup_violation_count": 172, + "globalroute__timing__setup__tns": -1878.5, + "globalroute__timing__setup__ws": -29.8616, + "placeopt__cpu__total": 65.27, "placeopt__design__core__area": 18327.2, "placeopt__design__die__area": 19477.6, - "placeopt__design__instance__area": 8356.12, + "placeopt__design__instance__area": 8354.63, "placeopt__design__instance__area__macros": 0, - "placeopt__design__instance__area__stdcell": 8356.12, - "placeopt__design__instance__count": 60499, + "placeopt__design__instance__area__stdcell": 8354.63, + "placeopt__design__instance__count": 60492, "placeopt__design__instance__count__macros": 0, - "placeopt__design__instance__count__stdcell": 60499, - "placeopt__design__instance__utilization": 0.455941, - "placeopt__design__instance__utilization__stdcell": 0.455941, + "placeopt__design__instance__count__stdcell": 60492, + "placeopt__design__instance__utilization": 0.45586, + "placeopt__design__instance__utilization__stdcell": 0.45586, "placeopt__design__io": 216, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 20, - "placeopt__mem__peak": 1080660.0, - "placeopt__power__internal__total": 0.0567918, - "placeopt__power__leakage__total": 2.53202e-05, - "placeopt__power__switching__total": 0.00479427, - "placeopt__power__total": 0.0616114, - "placeopt__runtime__total": "1:06.26", + "placeopt__mem__peak": 1080500.0, + "placeopt__power__internal__total": 0.0567876, + "placeopt__power__leakage__total": 2.52735e-05, + "placeopt__power__switching__total": 0.00478485, + "placeopt__power__total": 0.0615977, + "placeopt__runtime__total": "1:06.18", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.599038, + "placeopt__timing__drv__max_cap_limit": 0.603933, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.452373, - "placeopt__timing__drv__setup_violation_count": 260, - "placeopt__timing__setup__tns": -10015.3, - "placeopt__timing__setup__ws": -99.6357, + "placeopt__timing__drv__max_slew_limit": 0.404959, + "placeopt__timing__drv__setup_violation_count": 337, + "placeopt__timing__setup__tns": -21249.3, + "placeopt__timing__setup__ws": -124.368, "run__flow__design": "ethmac_lvt", - "run__flow__generate_date": "2024-09-23 21:54", + "run__flow__generate_date": "2024-09-27 19:04", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15825-ge21fbdf83", + "run__flow__openroad_version": "v2.0-16089-gd06039e7d", "run__flow__platform": "asap7", "run__flow__platform__capacitance_units": "1fF", "run__flow__platform__current_units": "1mA", @@ -304,12 +304,12 @@ "run__flow__platform__voltage_units": "1v", "run__flow__platform_commit": "N/A", "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "a87b9063-247f-4e56-adb9-c2dc038ceb3e", + "run__flow__uuid": "0a95c207-ca96-4206-b29b-d5b2959f60b8", "run__flow__variant": "base", - "synth__cpu__total": 55.07, + "synth__cpu__total": 58.21, "synth__design__instance__area__stdcell": 7350.84234, "synth__design__instance__count__stdcell": 56742.0, - "synth__mem__peak": 384932.0, - "synth__runtime__total": "0:56.19", - "total_time": "0:50:14.610000" + "synth__mem__peak": 384992.0, + "synth__runtime__total": "0:59.38", + "total_time": "1:07:39.010000" } \ No newline at end of file diff --git a/flow/designs/asap7/ethmac_lvt/rules-base.json b/flow/designs/asap7/ethmac_lvt/rules-base.json index d92790a38e..e559bfdf3b 100644 --- a/flow/designs/asap7/ethmac_lvt/rules-base.json +++ b/flow/designs/asap7/ethmac_lvt/rules-base.json @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 8730, + "value": 9608, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 65644, + "value": 69566, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,11 +20,11 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 5708, + "value": 6049, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 5708, + "value": 6049, "compare": "<=" }, "globalroute__antenna_diodes_count": { @@ -32,7 +32,7 @@ "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 681192, + "value": 593237, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -48,15 +48,15 @@ "compare": "<=" }, "finish__timing__setup__ws": { - "value": -270.67, + "value": -208.76, "compare": ">=" }, "finish__design__instance__area": { - "value": 8777, + "value": 9952, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 2854, + "value": 3025, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { @@ -64,7 +64,7 @@ "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -31.0, + "value": -27.43, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/asap7/gcd/metadata-base-ok.json b/flow/designs/asap7/gcd/metadata-base-ok.json index 807926eac4..89b3af4a88 100644 --- a/flow/designs/asap7/gcd/metadata-base-ok.json +++ b/flow/designs/asap7/gcd/metadata-base-ok.json @@ -5,7 +5,7 @@ ], "cts__clock__skew__hold": 5.70028, "cts__clock__skew__setup": 3.88663, - "cts__cpu__total": 6.96, + "cts__cpu__total": 4.46, "cts__design__core__area": 197.122, "cts__design__die__area": 262.44, "cts__design__instance__area": 60.3758, @@ -25,13 +25,13 @@ "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 11, - "cts__mem__peak": 577000.0, + "cts__mem__peak": 578068.0, "cts__power__internal__total": 0.000480574, "cts__power__leakage__total": 3.94861e-08, - "cts__power__switching__total": 0.00031576, - "cts__power__total": 0.000796374, - "cts__route__wirelength__estimated": 1201.17, - "cts__runtime__total": "0:07.45", + "cts__power__switching__total": 0.000315762, + "cts__power__total": 0.000796376, + "cts__route__wirelength__estimated": 1201.1, + "cts__runtime__total": "0:04.85", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, "cts__timing__drv__max_cap_limit": 0.830916, @@ -44,7 +44,7 @@ "cts__timing__setup__ws": -12.4722, "design__io__hpwl": 281414, "design__violations": 0, - "detailedplace__cpu__total": 2.34, + "detailedplace__cpu__total": 1.79, "detailedplace__design__core__area": 197.122, "detailedplace__design__die__area": 262.44, "detailedplace__design__instance__area": 56.4975, @@ -53,22 +53,22 @@ "detailedplace__design__instance__count": 555, "detailedplace__design__instance__count__macros": 0, "detailedplace__design__instance__count__stdcell": 555, - "detailedplace__design__instance__displacement__max": 1.116, - "detailedplace__design__instance__displacement__mean": 0.173, - "detailedplace__design__instance__displacement__total": 96.114, + "detailedplace__design__instance__displacement__max": 1.117, + "detailedplace__design__instance__displacement__mean": 0.172, + "detailedplace__design__instance__displacement__total": 96.002, "detailedplace__design__instance__utilization": 0.286612, "detailedplace__design__instance__utilization__stdcell": 0.286612, "detailedplace__design__io": 54, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 10, - "detailedplace__mem__peak": 214716.0, + "detailedplace__mem__peak": 215976.0, "detailedplace__power__internal__total": 0.00041055, "detailedplace__power__leakage__total": 3.6904e-08, - "detailedplace__power__switching__total": 0.000252607, - "detailedplace__power__total": 0.000663195, - "detailedplace__route__wirelength__estimated": 1180.8, - "detailedplace__runtime__total": "0:02.50", + "detailedplace__power__switching__total": 0.0002526, + "detailedplace__power__total": 0.000663187, + "detailedplace__route__wirelength__estimated": 1180.44, + "detailedplace__runtime__total": "0:01.93", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, "detailedplace__timing__drv__max_cap_limit": 0.654967, @@ -77,7 +77,7 @@ "detailedplace__timing__drv__max_slew": 0, "detailedplace__timing__drv__max_slew_limit": 0.506814, "detailedplace__timing__drv__setup_violation_count": 34, - "detailedplace__timing__setup__tns": -435.303, + "detailedplace__timing__setup__tns": -435.34, "detailedplace__timing__setup__ws": -24.6606, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, @@ -85,23 +85,21 @@ "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 11, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 84, - "detailedroute__route__drc_errors__iter:2": 14, - "detailedroute__route__drc_errors__iter:3": 10, - "detailedroute__route__drc_errors__iter:4": 0, + "detailedroute__route__drc_errors__iter:1": 72, + "detailedroute__route__drc_errors__iter:2": 15, + "detailedroute__route__drc_errors__iter:3": 0, "detailedroute__route__net": 566, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 4124, + "detailedroute__route__vias": 4088, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 4124, - "detailedroute__route__wirelength": 1391, - "detailedroute__route__wirelength__iter:1": 1398, - "detailedroute__route__wirelength__iter:2": 1389, - "detailedroute__route__wirelength__iter:3": 1391, - "detailedroute__route__wirelength__iter:4": 1391, - "finish__clock__skew__hold": 6.44195, - "finish__clock__skew__setup": 4.90938, - "finish__cpu__total": 4.09, + "detailedroute__route__vias__singlecut": 4088, + "detailedroute__route__wirelength": 1394, + "detailedroute__route__wirelength__iter:1": 1401, + "detailedroute__route__wirelength__iter:2": 1393, + "detailedroute__route__wirelength__iter:3": 1394, + "finish__clock__skew__hold": 6.15945, + "finish__clock__skew__setup": 4.52083, + "finish__cpu__total": 2.93, "finish__design__core__area": 197.122, "finish__design__die__area": 262.44, "finish__design__instance__area": 60.4778, @@ -114,34 +112,34 @@ "finish__design__instance__utilization__stdcell": 0.306805, "finish__design__io": 54, "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.76936, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.00062762, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.00210737, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.00213399, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.000633076, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.00210657, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.00215454, "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.767893, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.00213399, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.00215454, "finish__flow__errors__count": 0, - "finish__flow__warnings__count": 11, - "finish__mem__peak": 279048.0, - "finish__power__internal__total": 0.000482052, + "finish__flow__warnings__count": 10, + "finish__mem__peak": 362612.0, + "finish__power__internal__total": 0.00048203, "finish__power__leakage__total": 3.9562e-08, - "finish__power__switching__total": 0.000322069, - "finish__power__total": 0.000804161, - "finish__runtime__total": "0:04.23", + "finish__power__switching__total": 0.000322139, + "finish__power__total": 0.000804209, + "finish__runtime__total": "0:03.15", "finish__timing__drv__hold_violation_count": 0, "finish__timing__drv__max_cap": 0, - "finish__timing__drv__max_cap_limit": 0.831271, + "finish__timing__drv__max_cap_limit": 0.831454, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, "finish__timing__drv__max_slew": 0, - "finish__timing__drv__max_slew_limit": 0.779304, + "finish__timing__drv__max_slew_limit": 0.780926, "finish__timing__drv__setup_violation_count": 3, - "finish__timing__setup__tns": -17.3895, - "finish__timing__setup__ws": -9.60154, - "finish__timing__wns_percent_delay": -2.985526, - "finish_merge__cpu__total": 1.73, - "finish_merge__mem__peak": 395268.0, - "finish_merge__runtime__total": "0:01.89", - "floorplan__cpu__total": 2.17, + "finish__timing__setup__tns": -16.7643, + "finish__timing__setup__ws": -9.05531, + "finish__timing__wns_percent_delay": -2.82048, + "finish_merge__cpu__total": 1.28, + "finish_merge__mem__peak": 396328.0, + "finish_merge__runtime__total": "0:01.44", + "floorplan__cpu__total": 1.79, "floorplan__design__core__area": 197.122, "floorplan__design__die__area": 262.44, "floorplan__design__instance__area": 47.2392, @@ -157,32 +155,32 @@ "floorplan__design__io": 54, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 11, - "floorplan__mem__peak": 214780.0, + "floorplan__mem__peak": 215216.0, "floorplan__power__internal__total": 0.000358457, "floorplan__power__leakage__total": 3.05344e-08, "floorplan__power__switching__total": 0.000188012, "floorplan__power__total": 0.0005465, - "floorplan__runtime__total": "0:02.27", + "floorplan__runtime__total": "0:01.95", "floorplan__timing__setup__tns": 0, "floorplan__timing__setup__ws": 30.5282, - "floorplan_io__cpu__total": 1.8, - "floorplan_io__mem__peak": 210464.0, - "floorplan_io__runtime__total": "0:01.95", - "floorplan_macro__cpu__total": 1.8, - "floorplan_macro__mem__peak": 209948.0, - "floorplan_macro__runtime__total": "0:01.93", - "floorplan_pdn__cpu__total": 1.85, - "floorplan_pdn__mem__peak": 211908.0, - "floorplan_pdn__runtime__total": "0:01.95", - "floorplan_tap__cpu__total": 1.83, - "floorplan_tap__mem__peak": 209112.0, - "floorplan_tap__runtime__total": "0:01.95", - "floorplan_tdms__cpu__total": 1.83, - "floorplan_tdms__mem__peak": 209312.0, - "floorplan_tdms__runtime__total": "0:01.92", + "floorplan_io__cpu__total": 1.51, + "floorplan_io__mem__peak": 211204.0, + "floorplan_io__runtime__total": "0:01.68", + "floorplan_macro__cpu__total": 1.24, + "floorplan_macro__mem__peak": 210352.0, + "floorplan_macro__runtime__total": "0:01.36", + "floorplan_pdn__cpu__total": 1.26, + "floorplan_pdn__mem__peak": 213164.0, + "floorplan_pdn__runtime__total": "0:01.38", + "floorplan_tap__cpu__total": 1.25, + "floorplan_tap__mem__peak": 210220.0, + "floorplan_tap__runtime__total": "0:01.35", + "floorplan_tdms__cpu__total": 1.52, + "floorplan_tdms__mem__peak": 210732.0, + "floorplan_tdms__runtime__total": "0:01.68", "flow__errors__count": 0, "flow__warnings__count": 10, - "globalplace__cpu__total": 32.79, + "globalplace__cpu__total": 113.66, "globalplace__design__core__area": 197.122, "globalplace__design__die__area": 262.44, "globalplace__design__instance__area": 50.2718, @@ -196,26 +194,26 @@ "globalplace__design__io": 54, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 10, - "globalplace__mem__peak": 526816.0, + "globalplace__mem__peak": 527644.0, "globalplace__power__internal__total": 0.000359686, "globalplace__power__leakage__total": 3.05344e-08, - "globalplace__power__switching__total": 0.000230061, + "globalplace__power__switching__total": 0.00023006, "globalplace__power__total": 0.000589777, - "globalplace__runtime__total": "0:04.85", + "globalplace__runtime__total": "0:17.60", "globalplace__timing__setup__tns": 0, - "globalplace__timing__setup__ws": 1.14669, - "globalplace_io__cpu__total": 1.81, - "globalplace_io__mem__peak": 210504.0, - "globalplace_io__runtime__total": "0:01.93", - "globalplace_skip_io__cpu__total": 25.11, - "globalplace_skip_io__mem__peak": 211224.0, - "globalplace_skip_io__runtime__total": "0:02.70", + "globalplace__timing__setup__ws": 1.14095, + "globalplace_io__cpu__total": 1.55, + "globalplace_io__mem__peak": 211340.0, + "globalplace_io__runtime__total": "0:01.65", + "globalplace_skip_io__cpu__total": 294.68, + "globalplace_skip_io__mem__peak": 211716.0, + "globalplace_skip_io__runtime__total": "0:24.78", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, "globalroute__antenna_diodes_count": 0, "globalroute__clock__skew__hold": 6.0372, "globalroute__clock__skew__setup": 3.99442, - "globalroute__cpu__total": 4.64, + "globalroute__cpu__total": 2.77, "globalroute__design__core__area": 197.122, "globalroute__design__die__area": 262.44, "globalroute__design__instance__area": 60.4778, @@ -235,14 +233,14 @@ "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 12, - "globalroute__mem__peak": 547240.0, - "globalroute__power__internal__total": 0.000482328, + "globalroute__mem__peak": 547680.0, + "globalroute__power__internal__total": 0.000482329, "globalroute__power__leakage__total": 3.9562e-08, - "globalroute__power__switching__total": 0.000337079, - "globalroute__power__total": 0.000819447, - "globalroute__route__wirelength__estimated": 1201.99, - "globalroute__runtime__total": "0:03.51", - "globalroute__timing__clock__slack": -12.139, + "globalroute__power__switching__total": 0.000337127, + "globalroute__power__total": 0.000819496, + "globalroute__route__wirelength__estimated": 1201.92, + "globalroute__runtime__total": "0:02.53", + "globalroute__timing__clock__slack": -12.146, "globalroute__timing__drv__hold_violation_count": 0, "globalroute__timing__drv__max_cap": 0, "globalroute__timing__drv__max_cap_limit": 0.819057, @@ -251,9 +249,9 @@ "globalroute__timing__drv__max_slew": 0, "globalroute__timing__drv__max_slew_limit": 0.778913, "globalroute__timing__drv__setup_violation_count": 2, - "globalroute__timing__setup__tns": -23.633, - "globalroute__timing__setup__ws": -12.139, - "placeopt__cpu__total": 2.52, + "globalroute__timing__setup__tns": -23.6444, + "globalroute__timing__setup__ws": -12.1458, + "placeopt__cpu__total": 2.05, "placeopt__design__core__area": 197.122, "placeopt__design__die__area": 262.44, "placeopt__design__instance__area": 56.4975, @@ -267,29 +265,29 @@ "placeopt__design__io": 54, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 10, - "placeopt__mem__peak": 479472.0, + "placeopt__mem__peak": 480560.0, "placeopt__power__internal__total": 0.000410499, "placeopt__power__leakage__total": 3.6904e-08, "placeopt__power__switching__total": 0.000252624, "placeopt__power__total": 0.000663161, - "placeopt__runtime__total": "0:02.87", + "placeopt__runtime__total": "0:02.44", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.659312, + "placeopt__timing__drv__max_cap_limit": 0.659317, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.513076, + "placeopt__timing__drv__max_slew_limit": 0.513085, "placeopt__timing__drv__setup_violation_count": 34, - "placeopt__timing__setup__tns": -433.959, - "placeopt__timing__setup__ws": -23.0996, + "placeopt__timing__setup__tns": -433.923, + "placeopt__timing__setup__ws": -23.0954, "run__flow__design": "gcd", - "run__flow__generate_date": "2024-09-19 14:10", + "run__flow__generate_date": "2024-09-26 21:19", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15759-g9136ba699", + "run__flow__openroad_version": "v2.0-15807-g036379d64", "run__flow__platform": "asap7", "run__flow__platform__capacitance_units": "1fF", "run__flow__platform__current_units": "1mA", @@ -298,14 +296,14 @@ "run__flow__platform__resistance_units": "1kohm", "run__flow__platform__time_units": "1ps", "run__flow__platform__voltage_units": "1v", - "run__flow__platform_commit": "N/A", - "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "4e7aff3c-1075-4346-b30f-bb7066e6e130", - "run__flow__variant": "base", - "synth__cpu__total": 3.78, + "run__flow__platform_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__scripts_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__uuid": "43428d26-5191-461e-b97b-8a6513bded72", + "run__flow__variant": "odb_0925", + "synth__cpu__total": 2.6, "synth__design__instance__area__stdcell": 47.2392, "synth__design__instance__count__stdcell": 398.0, - "synth__mem__peak": 140288.0, - "synth__runtime__total": "0:04.03", - "total_time": "0:00:47.930000" + "synth__mem__peak": 140544.0, + "synth__runtime__total": "0:02.81", + "total_time": "0:01:12.580000" } \ No newline at end of file diff --git a/flow/designs/asap7/gcd/rules-base.json b/flow/designs/asap7/gcd/rules-base.json index 3381ac3703..d4fa1146e5 100644 --- a/flow/designs/asap7/gcd/rules-base.json +++ b/flow/designs/asap7/gcd/rules-base.json @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 62, + "value": 65, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 607, + "value": 638, "compare": "<=" }, "detailedplace__design__violations": { @@ -24,7 +24,7 @@ "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 44, + "value": 56, "compare": "<=" }, "globalroute__antenna_diodes_count": { @@ -32,7 +32,7 @@ "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 1517, + "value": 1603, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -48,7 +48,7 @@ "compare": "<=" }, "finish__timing__setup__ws": { - "value": -29.1, + "value": -28.55, "compare": ">=" }, "finish__design__instance__area": { @@ -56,7 +56,7 @@ "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 22, + "value": 28, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { @@ -64,7 +64,7 @@ "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -11.96, + "value": -13.38, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/asap7/ibex/metadata-base-ok.json b/flow/designs/asap7/ibex/metadata-base-ok.json index f5e2d380c5..9a649f1bc1 100644 --- a/flow/designs/asap7/ibex/metadata-base-ok.json +++ b/flow/designs/asap7/ibex/metadata-base-ok.json @@ -3,35 +3,35 @@ "constraints__clocks__details": [ "core_clock: 1260.0000" ], - "cts__clock__skew__hold": 130.586, - "cts__clock__skew__setup": 153.084, - "cts__cpu__total": 203.68, + "cts__clock__skew__hold": 130.713, + "cts__clock__skew__setup": 153.191, + "cts__cpu__total": 127.58, "cts__design__core__area": 5723.52, "cts__design__die__area": 6363.41, - "cts__design__instance__area": 2723.38, + "cts__design__instance__area": 2722.39, "cts__design__instance__area__macros": 0, - "cts__design__instance__area__stdcell": 2723.38, - "cts__design__instance__count": 21970, + "cts__design__instance__area__stdcell": 2722.39, + "cts__design__instance__count": 21967, "cts__design__instance__count__hold_buffer": 0, "cts__design__instance__count__macros": 0, "cts__design__instance__count__setup_buffer": 62, - "cts__design__instance__count__stdcell": 21970, + "cts__design__instance__count__stdcell": 21967, "cts__design__instance__displacement__max": 1.278, "cts__design__instance__displacement__mean": 0.002, - "cts__design__instance__displacement__total": 52.249, - "cts__design__instance__utilization": 0.475823, - "cts__design__instance__utilization__stdcell": 0.475823, + "cts__design__instance__displacement__total": 50.71, + "cts__design__instance__utilization": 0.47565, + "cts__design__instance__utilization__stdcell": 0.47565, "cts__design__io": 264, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 11, - "cts__mem__peak": 676600.0, - "cts__power__internal__total": 0.0292891, - "cts__power__leakage__total": 2.13784e-06, - "cts__power__switching__total": 0.0298917, - "cts__power__total": 0.0591829, - "cts__route__wirelength__estimated": 95974.7, - "cts__runtime__total": "3:24.21", + "cts__mem__peak": 674580.0, + "cts__power__internal__total": 0.0292893, + "cts__power__leakage__total": 2.13718e-06, + "cts__power__switching__total": 0.0298838, + "cts__power__total": 0.0591753, + "cts__route__wirelength__estimated": 95964.6, + "cts__runtime__total": "2:08.05", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, "cts__timing__drv__max_cap_limit": 0.407914, @@ -40,35 +40,35 @@ "cts__timing__drv__max_slew": 0, "cts__timing__drv__max_slew_limit": 0.410244, "cts__timing__drv__setup_violation_count": 3, - "cts__timing__setup__tns": -43.7055, - "cts__timing__setup__ws": -26.4606, + "cts__timing__setup__tns": -43.6311, + "cts__timing__setup__ws": -26.3496, "design__io__hpwl": 5014158, "design__violations": 0, - "detailedplace__cpu__total": 36.26, + "detailedplace__cpu__total": 22.73, "detailedplace__design__core__area": 5723.52, "detailedplace__design__die__area": 6363.41, - "detailedplace__design__instance__area": 2583.94, + "detailedplace__design__instance__area": 2583.61, "detailedplace__design__instance__area__macros": 0, - "detailedplace__design__instance__area__stdcell": 2583.94, - "detailedplace__design__instance__count": 21563, + "detailedplace__design__instance__area__stdcell": 2583.61, + "detailedplace__design__instance__count": 21562, "detailedplace__design__instance__count__macros": 0, - "detailedplace__design__instance__count__stdcell": 21563, + "detailedplace__design__instance__count__stdcell": 21562, "detailedplace__design__instance__displacement__max": 2.238, "detailedplace__design__instance__displacement__mean": 0.223, - "detailedplace__design__instance__displacement__total": 4818.29, - "detailedplace__design__instance__utilization": 0.45146, - "detailedplace__design__instance__utilization__stdcell": 0.45146, + "detailedplace__design__instance__displacement__total": 4809.95, + "detailedplace__design__instance__utilization": 0.451401, + "detailedplace__design__instance__utilization__stdcell": 0.451401, "detailedplace__design__io": 264, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 10, - "detailedplace__mem__peak": 329268.0, - "detailedplace__power__internal__total": 0.0257102, - "detailedplace__power__leakage__total": 1.99647e-06, - "detailedplace__power__switching__total": 0.028655, - "detailedplace__power__total": 0.0543672, - "detailedplace__route__wirelength__estimated": 93327.2, - "detailedplace__runtime__total": "0:36.53", + "detailedplace__mem__peak": 330276.0, + "detailedplace__power__internal__total": 0.0257104, + "detailedplace__power__leakage__total": 1.99617e-06, + "detailedplace__power__switching__total": 0.0286551, + "detailedplace__power__total": 0.0543675, + "detailedplace__route__wirelength__estimated": 93327.5, + "detailedplace__runtime__total": "0:22.94", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, "detailedplace__timing__drv__max_cap_limit": 0.40852, @@ -77,73 +77,73 @@ "detailedplace__timing__drv__max_slew": 0, "detailedplace__timing__drv__max_slew_limit": 0.410309, "detailedplace__timing__drv__setup_violation_count": 187, - "detailedplace__timing__setup__tns": -8252.23, - "detailedplace__timing__setup__ws": -72.5867, + "detailedplace__timing__setup__tns": -7989.8, + "detailedplace__timing__setup__ws": -71.1674, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, "detailedroute__antenna_diodes_count": 0, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 11, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 6071, - "detailedroute__route__drc_errors__iter:2": 584, - "detailedroute__route__drc_errors__iter:3": 405, - "detailedroute__route__drc_errors__iter:4": 4, + "detailedroute__route__drc_errors__iter:1": 6031, + "detailedroute__route__drc_errors__iter:2": 656, + "detailedroute__route__drc_errors__iter:3": 501, + "detailedroute__route__drc_errors__iter:4": 8, "detailedroute__route__drc_errors__iter:5": 0, - "detailedroute__route__net": 21702, + "detailedroute__route__net": 21721, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 219334, + "detailedroute__route__vias": 220265, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 219334, - "detailedroute__route__wirelength": 116801, - "detailedroute__route__wirelength__iter:1": 117321, - "detailedroute__route__wirelength__iter:2": 116876, - "detailedroute__route__wirelength__iter:3": 116786, - "detailedroute__route__wirelength__iter:4": 116803, - "detailedroute__route__wirelength__iter:5": 116801, - "finish__clock__skew__hold": 138.039, - "finish__clock__skew__setup": 160.349, - "finish__cpu__total": 155.91, + "detailedroute__route__vias__singlecut": 220265, + "detailedroute__route__wirelength": 117126, + "detailedroute__route__wirelength__iter:1": 117710, + "detailedroute__route__wirelength__iter:2": 117209, + "detailedroute__route__wirelength__iter:3": 117118, + "detailedroute__route__wirelength__iter:4": 117125, + "detailedroute__route__wirelength__iter:5": 117126, + "finish__clock__skew__hold": 140.632, + "finish__clock__skew__setup": 162.401, + "finish__cpu__total": 108.8, "finish__design__core__area": 5723.52, "finish__design__die__area": 6363.41, - "finish__design__instance__area": 2725.45, + "finish__design__instance__area": 2730.11, "finish__design__instance__area__macros": 0, - "finish__design__instance__area__stdcell": 2725.45, - "finish__design__instance__count": 21983, + "finish__design__instance__area__stdcell": 2730.11, + "finish__design__instance__count": 22002, "finish__design__instance__count__macros": 0, - "finish__design__instance__count__stdcell": 21983, - "finish__design__instance__utilization": 0.476185, - "finish__design__instance__utilization__stdcell": 0.476185, + "finish__design__instance__count__stdcell": 22002, + "finish__design__instance__utilization": 0.476997, + "finish__design__instance__utilization__stdcell": 0.476997, "finish__design__io": 264, - "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.680182, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.0900858, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.414615, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.421208, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.355385, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.421208, + "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.679699, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.0900985, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.413346, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.420043, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.356654, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.420043, "finish__flow__errors__count": 0, - "finish__flow__warnings__count": 11, - "finish__mem__peak": 804824.0, - "finish__power__internal__total": 0.029528, - "finish__power__leakage__total": 2.13967e-06, - "finish__power__switching__total": 0.0323202, - "finish__power__total": 0.0618503, - "finish__runtime__total": "2:36.61", + "finish__flow__warnings__count": 10, + "finish__mem__peak": 884800.0, + "finish__power__internal__total": 0.0296143, + "finish__power__leakage__total": 2.1448e-06, + "finish__power__switching__total": 0.0322787, + "finish__power__total": 0.0618951, + "finish__runtime__total": "1:49.52", "finish__timing__drv__hold_violation_count": 0, "finish__timing__drv__max_cap": 0, - "finish__timing__drv__max_cap_limit": 0.311197, + "finish__timing__drv__max_cap_limit": 0.274663, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, "finish__timing__drv__max_slew": 0, - "finish__timing__drv__max_slew_limit": 0.0868382, - "finish__timing__drv__setup_violation_count": 256, - "finish__timing__setup__tns": -5588.86, - "finish__timing__setup__ws": -64.7806, - "finish__timing__wns_percent_delay": -6.038569, - "finish_merge__cpu__total": 4.27, - "finish_merge__mem__peak": 565232.0, - "finish_merge__runtime__total": "0:04.69", - "floorplan__cpu__total": 27.92, + "finish__timing__drv__max_slew_limit": 0.0435411, + "finish__timing__drv__setup_violation_count": 290, + "finish__timing__setup__tns": -6634.59, + "finish__timing__setup__ws": -64.0279, + "finish__timing__wns_percent_delay": -5.972596, + "finish_merge__cpu__total": 3.19, + "finish_merge__mem__peak": 565936.0, + "finish_merge__runtime__total": "0:03.57", + "floorplan__cpu__total": 16.66, "floorplan__design__core__area": 5723.52, "floorplan__design__die__area": 6363.41, "floorplan__design__instance__area": 2296.74, @@ -159,32 +159,32 @@ "floorplan__design__io": 264, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 28, - "floorplan__mem__peak": 291868.0, + "floorplan__mem__peak": 293076.0, "floorplan__power__internal__total": 0.0246559, "floorplan__power__leakage__total": 1.69528e-06, "floorplan__power__switching__total": 0.0199937, "floorplan__power__total": 0.0446514, - "floorplan__runtime__total": "0:28.16", + "floorplan__runtime__total": "0:16.82", "floorplan__timing__setup__tns": -0.0416334, "floorplan__timing__setup__ws": 0.0918154, - "floorplan_io__cpu__total": 1.86, - "floorplan_io__mem__peak": 238628.0, - "floorplan_io__runtime__total": "0:02.17", - "floorplan_macro__cpu__total": 2.01, - "floorplan_macro__mem__peak": 238368.0, - "floorplan_macro__runtime__total": "0:02.18", - "floorplan_pdn__cpu__total": 2.38, - "floorplan_pdn__mem__peak": 242880.0, - "floorplan_pdn__runtime__total": "0:02.56", - "floorplan_tap__cpu__total": 2.1, - "floorplan_tap__mem__peak": 226612.0, - "floorplan_tap__runtime__total": "0:02.21", - "floorplan_tdms__cpu__total": 2.02, - "floorplan_tdms__mem__peak": 238628.0, - "floorplan_tdms__runtime__total": "0:02.19", + "floorplan_io__cpu__total": 1.34, + "floorplan_io__mem__peak": 239152.0, + "floorplan_io__runtime__total": "0:01.48", + "floorplan_macro__cpu__total": 1.33, + "floorplan_macro__mem__peak": 238844.0, + "floorplan_macro__runtime__total": "0:01.49", + "floorplan_pdn__cpu__total": 1.58, + "floorplan_pdn__mem__peak": 243040.0, + "floorplan_pdn__runtime__total": "0:01.72", + "floorplan_tap__cpu__total": 1.35, + "floorplan_tap__mem__peak": 227700.0, + "floorplan_tap__runtime__total": "0:01.51", + "floorplan_tdms__cpu__total": 1.32, + "floorplan_tdms__mem__peak": 239020.0, + "floorplan_tdms__runtime__total": "0:01.48", "flow__errors__count": 0, "flow__warnings__count": 10, - "globalplace__cpu__total": 1267.82, + "globalplace__cpu__total": 916.4, "globalplace__design__core__area": 5723.52, "globalplace__design__die__area": 6363.41, "globalplace__design__instance__area": 2325.41, @@ -198,100 +198,100 @@ "globalplace__design__io": 264, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 10, - "globalplace__mem__peak": 721228.0, - "globalplace__power__internal__total": 0.0250777, + "globalplace__mem__peak": 722680.0, + "globalplace__power__internal__total": 0.0250781, "globalplace__power__leakage__total": 1.69528e-06, - "globalplace__power__switching__total": 0.0272243, - "globalplace__power__total": 0.0523036, - "globalplace__runtime__total": "2:28.58", - "globalplace__timing__setup__tns": -1703630.0, - "globalplace__timing__setup__ws": -1312.85, - "globalplace_io__cpu__total": 2.06, - "globalplace_io__mem__peak": 241656.0, - "globalplace_io__runtime__total": "0:02.19", - "globalplace_skip_io__cpu__total": 903.68, - "globalplace_skip_io__mem__peak": 270148.0, - "globalplace_skip_io__runtime__total": "0:31.58", + "globalplace__power__switching__total": 0.0272256, + "globalplace__power__total": 0.0523054, + "globalplace__runtime__total": "2:20.98", + "globalplace__timing__setup__tns": -1711570.0, + "globalplace__timing__setup__ws": -1313.13, + "globalplace_io__cpu__total": 1.35, + "globalplace_io__mem__peak": 242340.0, + "globalplace_io__runtime__total": "0:01.52", + "globalplace_skip_io__cpu__total": 508.89, + "globalplace_skip_io__mem__peak": 271872.0, + "globalplace_skip_io__runtime__total": "0:37.27", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, "globalroute__antenna_diodes_count": 0, - "globalroute__clock__skew__hold": 132.883, - "globalroute__clock__skew__setup": 155.834, - "globalroute__cpu__total": 280.29, + "globalroute__clock__skew__hold": 133.653, + "globalroute__clock__skew__setup": 156.423, + "globalroute__cpu__total": 266.27, "globalroute__design__core__area": 5723.52, "globalroute__design__die__area": 6363.41, - "globalroute__design__instance__area": 2725.45, + "globalroute__design__instance__area": 2730.11, "globalroute__design__instance__area__macros": 0, - "globalroute__design__instance__area__stdcell": 2725.45, - "globalroute__design__instance__count": 21983, + "globalroute__design__instance__area__stdcell": 2730.11, + "globalroute__design__instance__count": 22002, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 0, - "globalroute__design__instance__count__setup_buffer": 5, - "globalroute__design__instance__count__stdcell": 21983, - "globalroute__design__instance__displacement__max": 1.08, - "globalroute__design__instance__displacement__mean": 0, - "globalroute__design__instance__displacement__total": 16.632, - "globalroute__design__instance__utilization": 0.476185, - "globalroute__design__instance__utilization__stdcell": 0.476185, + "globalroute__design__instance__count__setup_buffer": 6, + "globalroute__design__instance__count__stdcell": 22002, + "globalroute__design__instance__displacement__max": 1.242, + "globalroute__design__instance__displacement__mean": 0.002, + "globalroute__design__instance__displacement__total": 44.604, + "globalroute__design__instance__utilization": 0.476997, + "globalroute__design__instance__utilization__stdcell": 0.476997, "globalroute__design__io": 264, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 12, - "globalroute__mem__peak": 837128.0, - "globalroute__power__internal__total": 0.0295174, - "globalroute__power__leakage__total": 2.13967e-06, - "globalroute__power__switching__total": 0.0316215, - "globalroute__power__total": 0.061141, - "globalroute__route__wirelength__estimated": 96321.1, - "globalroute__runtime__total": "3:54.81", - "globalroute__timing__clock__slack": -43.384, + "globalroute__mem__peak": 835984.0, + "globalroute__power__internal__total": 0.0296022, + "globalroute__power__leakage__total": 2.1448e-06, + "globalroute__power__switching__total": 0.0316034, + "globalroute__power__total": 0.0612077, + "globalroute__route__wirelength__estimated": 96657.7, + "globalroute__runtime__total": "4:04.22", + "globalroute__timing__clock__slack": -44.872, "globalroute__timing__drv__hold_violation_count": 0, "globalroute__timing__drv__max_cap": 0, - "globalroute__timing__drv__max_cap_limit": 0.402289, + "globalroute__timing__drv__max_cap_limit": 0.38421, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, "globalroute__timing__drv__max_slew": 0, - "globalroute__timing__drv__max_slew_limit": 0.394715, - "globalroute__timing__drv__setup_violation_count": 69, - "globalroute__timing__setup__tns": -406.016, - "globalroute__timing__setup__ws": -43.3837, - "placeopt__cpu__total": 44.09, + "globalroute__timing__drv__max_slew_limit": 0.32468, + "globalroute__timing__drv__setup_violation_count": 160, + "globalroute__timing__setup__tns": -2305.88, + "globalroute__timing__setup__ws": -44.8721, + "placeopt__cpu__total": 27.32, "placeopt__design__core__area": 5723.52, "placeopt__design__die__area": 6363.41, - "placeopt__design__instance__area": 2583.94, + "placeopt__design__instance__area": 2583.61, "placeopt__design__instance__area__macros": 0, - "placeopt__design__instance__area__stdcell": 2583.94, - "placeopt__design__instance__count": 21563, + "placeopt__design__instance__area__stdcell": 2583.61, + "placeopt__design__instance__count": 21562, "placeopt__design__instance__count__macros": 0, - "placeopt__design__instance__count__stdcell": 21563, - "placeopt__design__instance__utilization": 0.45146, - "placeopt__design__instance__utilization__stdcell": 0.45146, + "placeopt__design__instance__count__stdcell": 21562, + "placeopt__design__instance__utilization": 0.451401, + "placeopt__design__instance__utilization__stdcell": 0.451401, "placeopt__design__io": 264, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 10, - "placeopt__mem__peak": 562260.0, + "placeopt__mem__peak": 562316.0, "placeopt__power__internal__total": 0.025706, - "placeopt__power__leakage__total": 1.99647e-06, - "placeopt__power__switching__total": 0.0285122, - "placeopt__power__total": 0.0542201, - "placeopt__runtime__total": "0:44.68", + "placeopt__power__leakage__total": 1.99617e-06, + "placeopt__power__switching__total": 0.0285134, + "placeopt__power__total": 0.0542214, + "placeopt__runtime__total": "0:27.83", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.410504, + "placeopt__timing__drv__max_cap_limit": 0.410516, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.409304, + "placeopt__timing__drv__max_slew_limit": 0.409305, "placeopt__timing__drv__setup_violation_count": 185, - "placeopt__timing__setup__tns": -7628.53, - "placeopt__timing__setup__ws": -68.9323, + "placeopt__timing__setup__tns": -7503.72, + "placeopt__timing__setup__ws": -68.2617, "run__flow__design": "ibex", - "run__flow__generate_date": "2024-09-19 14:31", + "run__flow__generate_date": "2024-09-26 21:19", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15759-g9136ba699", + "run__flow__openroad_version": "v2.0-15807-g036379d64", "run__flow__platform": "asap7", "run__flow__platform__capacitance_units": "1fF", "run__flow__platform__current_units": "1mA", @@ -300,14 +300,14 @@ "run__flow__platform__resistance_units": "1kohm", "run__flow__platform__time_units": "1ps", "run__flow__platform__voltage_units": "1v", - "run__flow__platform_commit": "N/A", - "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "613bdda1-0f59-4be5-9678-8408129a660d", - "run__flow__variant": "base", - "synth__cpu__total": 98.3, + "run__flow__platform_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__scripts_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__uuid": "ed409357-0eea-4e35-aa86-b6400e2b9f6e", + "run__flow__variant": "odb_0925", + "synth__cpu__total": 61.02, "synth__design__instance__area__stdcell": 2296.52496, "synth__design__instance__count__stdcell": 18638.0, - "synth__mem__peak": 230712.0, - "synth__runtime__total": "1:38.81", - "total_time": "0:16:42.160000" + "synth__mem__peak": 228820.0, + "synth__runtime__total": "1:01.40", + "total_time": "0:13:21.800000" } \ No newline at end of file diff --git a/flow/designs/asap7/ibex/rules-base.json b/flow/designs/asap7/ibex/rules-base.json index ab908735d4..ab3ba904ba 100644 --- a/flow/designs/asap7/ibex/rules-base.json +++ b/flow/designs/asap7/ibex/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 2554.93, + "value": 2641.01, "compare": "<=" }, "constraints__clocks__count": { @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 2692, + "value": 2971, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 22170, + "value": 24796, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,11 +20,11 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 1928, + "value": 2156, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 1928, + "value": 2156, "compare": "<=" }, "globalroute__antenna_diodes_count": { @@ -32,7 +32,7 @@ "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 133428, + "value": 134695, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -48,15 +48,15 @@ "compare": "<=" }, "finish__timing__setup__ws": { - "value": -127.78, + "value": -127.02, "compare": ">=" }, "finish__design__instance__area": { - "value": 3132, + "value": 3140, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 964, + "value": 1078, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { @@ -64,7 +64,7 @@ "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -10.0, + "value": -17.16, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/asap7/jpeg/metadata-base-ok.json b/flow/designs/asap7/jpeg/metadata-base-ok.json index a6108abf87..1d52845b23 100644 --- a/flow/designs/asap7/jpeg/metadata-base-ok.json +++ b/flow/designs/asap7/jpeg/metadata-base-ok.json @@ -3,149 +3,147 @@ "constraints__clocks__details": [ "clk: 1100.0000" ], - "cts__clock__skew__hold": 28.6544, - "cts__clock__skew__setup": 25.187, - "cts__cpu__total": 488.8, + "cts__clock__skew__hold": 27.0257, + "cts__clock__skew__setup": 19.1139, + "cts__cpu__total": 331.69, "cts__design__core__area": 23652, "cts__design__die__area": 24978.9, - "cts__design__instance__area": 7909.84, + "cts__design__instance__area": 7910.09, "cts__design__instance__area__macros": 0, - "cts__design__instance__area__stdcell": 7909.84, - "cts__design__instance__count": 67286, + "cts__design__instance__area__stdcell": 7910.09, + "cts__design__instance__count": 67298, "cts__design__instance__count__hold_buffer": 0, "cts__design__instance__count__macros": 0, - "cts__design__instance__count__setup_buffer": 12, - "cts__design__instance__count__stdcell": 67286, - "cts__design__instance__displacement__max": 0.853, + "cts__design__instance__count__setup_buffer": 21, + "cts__design__instance__count__stdcell": 67298, + "cts__design__instance__displacement__max": 0.918, "cts__design__instance__displacement__mean": 0, - "cts__design__instance__displacement__total": 7.793, - "cts__design__instance__utilization": 0.334426, - "cts__design__instance__utilization__stdcell": 0.334426, + "cts__design__instance__displacement__total": 14.35, + "cts__design__instance__utilization": 0.334437, + "cts__design__instance__utilization__stdcell": 0.334437, "cts__design__io": 47, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 10, - "cts__mem__peak": 2786984.0, - "cts__power__internal__total": 0.0626709, - "cts__power__leakage__total": 5.57037e-06, - "cts__power__switching__total": 0.0711033, - "cts__power__total": 0.13378, - "cts__route__wirelength__estimated": 265360, - "cts__runtime__total": "4:07.07", + "cts__mem__peak": 2714436.0, + "cts__power__internal__total": 0.062715, + "cts__power__leakage__total": 5.57221e-06, + "cts__power__switching__total": 0.071118, + "cts__power__total": 0.133839, + "cts__route__wirelength__estimated": 265486, + "cts__runtime__total": "2:57.34", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, - "cts__timing__drv__max_cap_limit": 0.292913, + "cts__timing__drv__max_cap_limit": 0.295946, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, - "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.0104283, + "cts__timing__drv__max_slew": 2, + "cts__timing__drv__max_slew_limit": -0.00229773, "cts__timing__drv__setup_violation_count": 0, "cts__timing__setup__tns": 0, - "cts__timing__setup__ws": 0.154432, + "cts__timing__setup__ws": 0.130118, "design__io__hpwl": 1768800, "design__violations": 0, - "detailedplace__cpu__total": 92.56, + "detailedplace__cpu__total": 59.99, "detailedplace__design__core__area": 23652, "detailedplace__design__die__area": 24978.9, - "detailedplace__design__instance__area": 7756.34, + "detailedplace__design__instance__area": 7756.57, "detailedplace__design__instance__area__macros": 0, - "detailedplace__design__instance__area__stdcell": 7756.34, - "detailedplace__design__instance__count": 66817, + "detailedplace__design__instance__area__stdcell": 7756.57, + "detailedplace__design__instance__count": 66819, "detailedplace__design__instance__count__macros": 0, - "detailedplace__design__instance__count__stdcell": 66817, - "detailedplace__design__instance__displacement__max": 2.206, + "detailedplace__design__instance__count__stdcell": 66819, + "detailedplace__design__instance__displacement__max": 2.003, "detailedplace__design__instance__displacement__mean": 0.217, - "detailedplace__design__instance__displacement__total": 14538.7, - "detailedplace__design__instance__utilization": 0.327937, - "detailedplace__design__instance__utilization__stdcell": 0.327937, + "detailedplace__design__instance__displacement__total": 14557.1, + "detailedplace__design__instance__utilization": 0.327946, + "detailedplace__design__instance__utilization__stdcell": 0.327946, "detailedplace__design__io": 47, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 10, - "detailedplace__mem__peak": 574784.0, - "detailedplace__power__internal__total": 0.0592494, - "detailedplace__power__leakage__total": 5.4247e-06, - "detailedplace__power__switching__total": 0.068476, - "detailedplace__power__total": 0.127731, - "detailedplace__route__wirelength__estimated": 266747, - "detailedplace__runtime__total": "1:33.02", + "detailedplace__mem__peak": 575336.0, + "detailedplace__power__internal__total": 0.0592561, + "detailedplace__power__leakage__total": 5.42541e-06, + "detailedplace__power__switching__total": 0.0684827, + "detailedplace__power__total": 0.127744, + "detailedplace__route__wirelength__estimated": 266852, + "detailedplace__runtime__total": "1:00.42", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, - "detailedplace__timing__drv__max_cap_limit": 0.292997, + "detailedplace__timing__drv__max_cap_limit": 0.29603, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.00640382, - "detailedplace__timing__drv__setup_violation_count": 3, - "detailedplace__timing__setup__tns": -79.5006, - "detailedplace__timing__setup__ws": -60.121, + "detailedplace__timing__drv__max_slew_limit": 0.00299049, + "detailedplace__timing__drv__setup_violation_count": 6, + "detailedplace__timing__setup__tns": -87.2221, + "detailedplace__timing__setup__ws": -62.4738, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, "detailedroute__antenna_diodes_count": 0, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 11, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 13144, - "detailedroute__route__drc_errors__iter:2": 1600, - "detailedroute__route__drc_errors__iter:3": 1008, - "detailedroute__route__drc_errors__iter:4": 22, - "detailedroute__route__drc_errors__iter:5": 1, - "detailedroute__route__drc_errors__iter:6": 0, - "detailedroute__route__net": 76008, + "detailedroute__route__drc_errors__iter:1": 12633, + "detailedroute__route__drc_errors__iter:2": 1621, + "detailedroute__route__drc_errors__iter:3": 1174, + "detailedroute__route__drc_errors__iter:4": 28, + "detailedroute__route__drc_errors__iter:5": 0, + "detailedroute__route__net": 76018, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 534474, + "detailedroute__route__vias": 533712, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 534474, - "detailedroute__route__wirelength": 297779, - "detailedroute__route__wirelength__iter:1": 299343, - "detailedroute__route__wirelength__iter:2": 297942, - "detailedroute__route__wirelength__iter:3": 297756, - "detailedroute__route__wirelength__iter:4": 297777, - "detailedroute__route__wirelength__iter:5": 297778, - "detailedroute__route__wirelength__iter:6": 297779, - "finish__clock__skew__hold": 45.9542, - "finish__clock__skew__setup": 49.7277, - "finish__cpu__total": 216.64, + "detailedroute__route__vias__singlecut": 533712, + "detailedroute__route__wirelength": 297989, + "detailedroute__route__wirelength__iter:1": 299606, + "detailedroute__route__wirelength__iter:2": 298198, + "detailedroute__route__wirelength__iter:3": 297961, + "detailedroute__route__wirelength__iter:4": 297988, + "detailedroute__route__wirelength__iter:5": 297989, + "finish__clock__skew__hold": 30.3785, + "finish__clock__skew__setup": 30.4063, + "finish__cpu__total": 150.76, "finish__design__core__area": 23652, "finish__design__die__area": 24978.9, - "finish__design__instance__area": 7910.16, + "finish__design__instance__area": 7910.23, "finish__design__instance__area__macros": 0, - "finish__design__instance__area__stdcell": 7910.16, - "finish__design__instance__count": 67290, + "finish__design__instance__area__stdcell": 7910.23, + "finish__design__instance__count": 67300, "finish__design__instance__count__macros": 0, - "finish__design__instance__count__stdcell": 67290, - "finish__design__instance__utilization": 0.33444, - "finish__design__instance__utilization__stdcell": 0.33444, + "finish__design__instance__count__stdcell": 67300, + "finish__design__instance__utilization": 0.334443, + "finish__design__instance__utilization__stdcell": 0.334443, "finish__design__io": 47, - "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.714698, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.0562693, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.21741, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.224619, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.55259, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.224619, + "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.714507, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.0564248, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.218594, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.224463, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.551406, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.224463, "finish__flow__errors__count": 0, - "finish__flow__warnings__count": 11, - "finish__mem__peak": 1977968.0, - "finish__power__internal__total": 0.0627852, - "finish__power__leakage__total": 5.57064e-06, - "finish__power__switching__total": 0.0745994, - "finish__power__total": 0.13739, - "finish__runtime__total": "3:38.68", + "finish__flow__warnings__count": 10, + "finish__mem__peak": 2123744.0, + "finish__power__internal__total": 0.0628327, + "finish__power__leakage__total": 5.5723e-06, + "finish__power__switching__total": 0.0747136, + "finish__power__total": 0.137552, + "finish__runtime__total": "2:33.23", "finish__timing__drv__hold_violation_count": 0, "finish__timing__drv__max_cap": 0, - "finish__timing__drv__max_cap_limit": 0.0845019, + "finish__timing__drv__max_cap_limit": 0.0758938, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, - "finish__timing__drv__max_slew": 33, - "finish__timing__drv__max_slew_limit": -0.342171, - "finish__timing__drv__setup_violation_count": 33, - "finish__timing__setup__tns": -993.265, - "finish__timing__setup__ws": -97.5265, - "finish__timing__wns_percent_delay": -7.250426, - "finish_merge__cpu__total": 9.08, - "finish_merge__mem__peak": 934452.0, - "finish_merge__runtime__total": "0:09.86", - "floorplan__cpu__total": 39.37, + "finish__timing__drv__max_slew": 24, + "finish__timing__drv__max_slew_limit": -0.43754, + "finish__timing__drv__setup_violation_count": 43, + "finish__timing__setup__tns": -892.501, + "finish__timing__setup__ws": -78.9033, + "finish__timing__wns_percent_delay": -5.947052, + "finish_merge__cpu__total": 6.33, + "finish_merge__mem__peak": 935088.0, + "finish_merge__runtime__total": "0:06.98", + "floorplan__cpu__total": 30.12, "floorplan__design__core__area": 23652, "floorplan__design__die__area": 24978.9, "floorplan__design__instance__area": 7119.2, @@ -161,32 +159,32 @@ "floorplan__design__io": 47, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 12, - "floorplan__mem__peak": 463348.0, + "floorplan__mem__peak": 464180.0, "floorplan__power__internal__total": 0.0578225, "floorplan__power__leakage__total": 4.6902e-06, "floorplan__power__switching__total": 0.0517279, "floorplan__power__total": 0.109555, - "floorplan__runtime__total": "0:39.88", + "floorplan__runtime__total": "0:30.59", "floorplan__timing__setup__tns": 0, "floorplan__timing__setup__ws": 189.117, - "floorplan_io__cpu__total": 2.32, - "floorplan_io__mem__peak": 307824.0, - "floorplan_io__runtime__total": "0:02.54", - "floorplan_macro__cpu__total": 2.31, - "floorplan_macro__mem__peak": 305772.0, - "floorplan_macro__runtime__total": "0:02.58", - "floorplan_pdn__cpu__total": 3.54, - "floorplan_pdn__mem__peak": 322500.0, - "floorplan_pdn__runtime__total": "0:03.83", - "floorplan_tap__cpu__total": 2.79, - "floorplan_tap__mem__peak": 269848.0, - "floorplan_tap__runtime__total": "0:03.00", - "floorplan_tdms__cpu__total": 2.27, - "floorplan_tdms__mem__peak": 305736.0, - "floorplan_tdms__runtime__total": "0:02.59", + "floorplan_io__cpu__total": 1.93, + "floorplan_io__mem__peak": 308672.0, + "floorplan_io__runtime__total": "0:02.18", + "floorplan_macro__cpu__total": 1.92, + "floorplan_macro__mem__peak": 306840.0, + "floorplan_macro__runtime__total": "0:02.18", + "floorplan_pdn__cpu__total": 3.01, + "floorplan_pdn__mem__peak": 323964.0, + "floorplan_pdn__runtime__total": "0:03.27", + "floorplan_tap__cpu__total": 2.28, + "floorplan_tap__mem__peak": 269612.0, + "floorplan_tap__runtime__total": "0:02.53", + "floorplan_tdms__cpu__total": 1.94, + "floorplan_tdms__mem__peak": 306188.0, + "floorplan_tdms__runtime__total": "0:02.19", "flow__errors__count": 0, "flow__warnings__count": 10, - "globalplace__cpu__total": 2492.04, + "globalplace__cpu__total": 1920.51, "globalplace__design__core__area": 23652, "globalplace__design__die__area": 24978.9, "globalplace__design__instance__area": 7202.33, @@ -200,100 +198,100 @@ "globalplace__design__io": 47, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 10, - "globalplace__mem__peak": 1161960.0, - "globalplace__power__internal__total": 0.0584157, + "globalplace__mem__peak": 1167924.0, + "globalplace__power__internal__total": 0.0584153, "globalplace__power__leakage__total": 4.6902e-06, - "globalplace__power__switching__total": 0.0656753, - "globalplace__power__total": 0.124096, - "globalplace__runtime__total": "6:37.90", - "globalplace__timing__setup__tns": -2877.52, - "globalplace__timing__setup__ws": -96.7348, - "globalplace_io__cpu__total": 2.42, - "globalplace_io__mem__peak": 314372.0, - "globalplace_io__runtime__total": "0:02.63", - "globalplace_skip_io__cpu__total": 1249.4, - "globalplace_skip_io__mem__peak": 407192.0, - "globalplace_skip_io__runtime__total": "1:02.63", + "globalplace__power__switching__total": 0.065679, + "globalplace__power__total": 0.124099, + "globalplace__runtime__total": "7:26.99", + "globalplace__timing__setup__tns": -2830.14, + "globalplace__timing__setup__ws": -98.5856, + "globalplace_io__cpu__total": 2.11, + "globalplace_io__mem__peak": 315084.0, + "globalplace_io__runtime__total": "0:02.37", + "globalplace_skip_io__cpu__total": 439.55, + "globalplace_skip_io__mem__peak": 411928.0, + "globalplace_skip_io__runtime__total": "1:08.10", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, "globalroute__antenna_diodes_count": 0, - "globalroute__clock__skew__hold": 38.114, - "globalroute__clock__skew__setup": 37.4424, - "globalroute__cpu__total": 241.25, + "globalroute__clock__skew__hold": 30.3788, + "globalroute__clock__skew__setup": 24.5023, + "globalroute__cpu__total": 153.07, "globalroute__design__core__area": 23652, "globalroute__design__die__area": 24978.9, - "globalroute__design__instance__area": 7910.16, + "globalroute__design__instance__area": 7910.23, "globalroute__design__instance__area__macros": 0, - "globalroute__design__instance__area__stdcell": 7910.16, - "globalroute__design__instance__count": 67290, + "globalroute__design__instance__area__stdcell": 7910.23, + "globalroute__design__instance__count": 67300, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 0, - "globalroute__design__instance__count__setup_buffer": 4, - "globalroute__design__instance__count__stdcell": 67290, - "globalroute__design__instance__displacement__max": 0.432, + "globalroute__design__instance__count__setup_buffer": 2, + "globalroute__design__instance__count__stdcell": 67300, + "globalroute__design__instance__displacement__max": 0, "globalroute__design__instance__displacement__mean": 0, - "globalroute__design__instance__displacement__total": 1.458, - "globalroute__design__instance__utilization": 0.33444, - "globalroute__design__instance__utilization__stdcell": 0.33444, + "globalroute__design__instance__displacement__total": 0, + "globalroute__design__instance__utilization": 0.334443, + "globalroute__design__instance__utilization__stdcell": 0.334443, "globalroute__design__io": 47, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 11, - "globalroute__mem__peak": 1342924.0, - "globalroute__power__internal__total": 0.0627478, - "globalroute__power__leakage__total": 5.57064e-06, - "globalroute__power__switching__total": 0.0747835, - "globalroute__power__total": 0.137537, - "globalroute__route__wirelength__estimated": 265362, - "globalroute__runtime__total": "2:22.39", - "globalroute__timing__clock__slack": 3.869, + "globalroute__mem__peak": 1341460.0, + "globalroute__power__internal__total": 0.0627962, + "globalroute__power__leakage__total": 5.5723e-06, + "globalroute__power__switching__total": 0.0748223, + "globalroute__power__total": 0.137624, + "globalroute__route__wirelength__estimated": 265488, + "globalroute__runtime__total": "1:38.09", + "globalroute__timing__clock__slack": 0.859, "globalroute__timing__drv__hold_violation_count": 0, "globalroute__timing__drv__max_cap": 0, - "globalroute__timing__drv__max_cap_limit": 0.272995, + "globalroute__timing__drv__max_cap_limit": 0.279473, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, "globalroute__timing__drv__max_slew": 0, - "globalroute__timing__drv__max_slew_limit": 0.0620752, + "globalroute__timing__drv__max_slew_limit": 0.027861, "globalroute__timing__drv__setup_violation_count": 0, "globalroute__timing__setup__tns": 0, - "globalroute__timing__setup__ws": 3.86857, - "placeopt__cpu__total": 87.12, + "globalroute__timing__setup__ws": 0.858758, + "placeopt__cpu__total": 58.96, "placeopt__design__core__area": 23652, "placeopt__design__die__area": 24978.9, - "placeopt__design__instance__area": 7756.34, + "placeopt__design__instance__area": 7756.57, "placeopt__design__instance__area__macros": 0, - "placeopt__design__instance__area__stdcell": 7756.34, - "placeopt__design__instance__count": 66817, + "placeopt__design__instance__area__stdcell": 7756.57, + "placeopt__design__instance__count": 66819, "placeopt__design__instance__count__macros": 0, - "placeopt__design__instance__count__stdcell": 66817, - "placeopt__design__instance__utilization": 0.327937, - "placeopt__design__instance__utilization__stdcell": 0.327937, + "placeopt__design__instance__count__stdcell": 66819, + "placeopt__design__instance__utilization": 0.327946, + "placeopt__design__instance__utilization__stdcell": 0.327946, "placeopt__design__io": 47, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 10, - "placeopt__mem__peak": 760500.0, - "placeopt__power__internal__total": 0.0592481, - "placeopt__power__leakage__total": 5.4247e-06, - "placeopt__power__switching__total": 0.0683422, - "placeopt__power__total": 0.127596, - "placeopt__runtime__total": "1:27.79", + "placeopt__mem__peak": 761180.0, + "placeopt__power__internal__total": 0.059255, + "placeopt__power__leakage__total": 5.42541e-06, + "placeopt__power__switching__total": 0.0683455, + "placeopt__power__total": 0.127606, + "placeopt__runtime__total": "0:59.58", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.294494, + "placeopt__timing__drv__max_cap_limit": 0.294264, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.00201245, - "placeopt__timing__drv__setup_violation_count": 6, - "placeopt__timing__setup__tns": -92.2572, - "placeopt__timing__setup__ws": -63.2271, + "placeopt__timing__drv__max_slew_limit": 0.0039844, + "placeopt__timing__drv__setup_violation_count": 5, + "placeopt__timing__setup__tns": -81.4452, + "placeopt__timing__setup__ws": -60.7567, "run__flow__design": "jpeg", - "run__flow__generate_date": "2024-09-19 14:43", + "run__flow__generate_date": "2024-09-26 21:19", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15759-g9136ba699", + "run__flow__openroad_version": "v2.0-15807-g036379d64", "run__flow__platform": "asap7", "run__flow__platform__capacitance_units": "1fF", "run__flow__platform__current_units": "1mA", @@ -302,14 +300,14 @@ "run__flow__platform__resistance_units": "1kohm", "run__flow__platform__time_units": "1ps", "run__flow__platform__voltage_units": "1v", - "run__flow__platform_commit": "N/A", - "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "2ea869c2-326c-4a6f-a539-7ac00553bcaf", - "run__flow__variant": "base", - "synth__cpu__total": 140.97, + "run__flow__platform_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__scripts_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__uuid": "b15a4ad1-18a2-409f-b13e-161f53849697", + "run__flow__variant": "odb_0925", + "synth__cpu__total": 151.65, "synth__design__instance__area__stdcell": 7119.1953, "synth__design__instance__count__stdcell": 63844.0, - "synth__mem__peak": 987260.0, - "synth__runtime__total": "2:23.14", - "total_time": "0:24:19.530000" + "synth__mem__peak": 959680.0, + "synth__runtime__total": "2:47.23", + "total_time": "0:21:23.270000" } \ No newline at end of file diff --git a/flow/designs/asap7/jpeg/rules-base.json b/flow/designs/asap7/jpeg/rules-base.json index 6ddc4a8191..1e7e176812 100644 --- a/flow/designs/asap7/jpeg/rules-base.json +++ b/flow/designs/asap7/jpeg/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 7270.36, + "value": 8187.08, "compare": "<=" }, "constraints__clocks__count": { @@ -12,7 +12,7 @@ "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 72810, + "value": 76842, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,11 +20,11 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 5498, + "value": 6682, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 5498, + "value": 6682, "compare": "<=" }, "globalroute__antenna_diodes_count": { @@ -32,7 +32,7 @@ "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 342446, + "value": 342687, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -48,15 +48,15 @@ "compare": "<=" }, "finish__timing__setup__ws": { - "value": -140.04, + "value": -133.9, "compare": ">=" }, "finish__design__instance__area": { - "value": 8777, + "value": 9097, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 3166, + "value": 3341, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { @@ -64,7 +64,7 @@ "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -17.66, + "value": -17.13, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/asap7/jpeg_lvt/metadata-base-ok.json b/flow/designs/asap7/jpeg_lvt/metadata-base-ok.json index 8ab6373303..a566567781 100644 --- a/flow/designs/asap7/jpeg_lvt/metadata-base-ok.json +++ b/flow/designs/asap7/jpeg_lvt/metadata-base-ok.json @@ -3,147 +3,147 @@ "constraints__clocks__details": [ "clk: 1100.0000" ], - "cts__clock__skew__hold": 28.0416, - "cts__clock__skew__setup": 21.5938, - "cts__cpu__total": 73.58, + "cts__clock__skew__hold": 33.6526, + "cts__clock__skew__setup": 23.8444, + "cts__cpu__total": 62.33, "cts__design__core__area": 24060.6, "cts__design__die__area": 25381.3, - "cts__design__instance__area": 8006.43, + "cts__design__instance__area": 8002.55, "cts__design__instance__area__macros": 0, - "cts__design__instance__area__stdcell": 8006.43, - "cts__design__instance__count": 69673, + "cts__design__instance__area__stdcell": 8002.55, + "cts__design__instance__count": 69674, "cts__design__instance__count__hold_buffer": 0, "cts__design__instance__count__macros": 0, "cts__design__instance__count__setup_buffer": 3, - "cts__design__instance__count__stdcell": 69673, - "cts__design__instance__displacement__max": 0.477, + "cts__design__instance__count__stdcell": 69674, + "cts__design__instance__displacement__max": 0.531, "cts__design__instance__displacement__mean": 0, - "cts__design__instance__displacement__total": 1.026, - "cts__design__instance__utilization": 0.33276, - "cts__design__instance__utilization__stdcell": 0.33276, + "cts__design__instance__displacement__total": 1.437, + "cts__design__instance__utilization": 0.332599, + "cts__design__instance__utilization__stdcell": 0.332599, "cts__design__io": 47, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 20, - "cts__mem__peak": 1291784.0, - "cts__power__internal__total": 0.0692057, - "cts__power__leakage__total": 1.86969e-05, - "cts__power__switching__total": 0.0770372, - "cts__power__total": 0.146262, - "cts__route__wirelength__estimated": 266572, - "cts__runtime__total": "1:14.47", + "cts__mem__peak": 1291316.0, + "cts__power__internal__total": 0.0692385, + "cts__power__leakage__total": 1.8709e-05, + "cts__power__switching__total": 0.0770183, + "cts__power__total": 0.146275, + "cts__route__wirelength__estimated": 266755, + "cts__runtime__total": "1:03.39", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, - "cts__timing__drv__max_cap_limit": 0.233427, + "cts__timing__drv__max_cap_limit": 0.231705, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.105044, + "cts__timing__drv__max_slew_limit": 0.103364, "cts__timing__drv__setup_violation_count": 0, "cts__timing__setup__tns": 0, - "cts__timing__setup__ws": 18.5379, + "cts__timing__setup__ws": 13.4989, "design__io__hpwl": 1976040, "design__violations": 0, - "detailedplace__cpu__total": 76.75, + "detailedplace__cpu__total": 67.24, "detailedplace__design__core__area": 24060.6, "detailedplace__design__die__area": 25381.3, - "detailedplace__design__instance__area": 7861.03, + "detailedplace__design__instance__area": 7861.33, "detailedplace__design__instance__area__macros": 0, - "detailedplace__design__instance__area__stdcell": 7861.03, - "detailedplace__design__instance__count": 69216, + "detailedplace__design__instance__area__stdcell": 7861.33, + "detailedplace__design__instance__count": 69220, "detailedplace__design__instance__count__macros": 0, - "detailedplace__design__instance__count__stdcell": 69216, - "detailedplace__design__instance__displacement__max": 3.578, - "detailedplace__design__instance__displacement__mean": 0.221, - "detailedplace__design__instance__displacement__total": 15358.8, - "detailedplace__design__instance__utilization": 0.326717, - "detailedplace__design__instance__utilization__stdcell": 0.326717, + "detailedplace__design__instance__count__stdcell": 69220, + "detailedplace__design__instance__displacement__max": 2.904, + "detailedplace__design__instance__displacement__mean": 0.22, + "detailedplace__design__instance__displacement__total": 15291.9, + "detailedplace__design__instance__utilization": 0.32673, + "detailedplace__design__instance__utilization__stdcell": 0.32673, "detailedplace__design__io": 47, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 20, - "detailedplace__mem__peak": 688480.0, - "detailedplace__power__internal__total": 0.0658109, - "detailedplace__power__leakage__total": 1.84805e-05, - "detailedplace__power__switching__total": 0.0743143, - "detailedplace__power__total": 0.140144, - "detailedplace__route__wirelength__estimated": 268053, - "detailedplace__runtime__total": "1:17.19", + "detailedplace__mem__peak": 689156.0, + "detailedplace__power__internal__total": 0.0658149, + "detailedplace__power__leakage__total": 1.84795e-05, + "detailedplace__power__switching__total": 0.0743483, + "detailedplace__power__total": 0.140182, + "detailedplace__route__wirelength__estimated": 268148, + "detailedplace__runtime__total": "1:07.81", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, - "detailedplace__timing__drv__max_cap_limit": 0.233427, + "detailedplace__timing__drv__max_cap_limit": 0.231789, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.106869, - "detailedplace__timing__drv__setup_violation_count": 1, - "detailedplace__timing__setup__tns": -5.33429, - "detailedplace__timing__setup__ws": -5.33429, + "detailedplace__timing__drv__max_slew_limit": 0.103815, + "detailedplace__timing__drv__setup_violation_count": 3, + "detailedplace__timing__setup__tns": -25.5687, + "detailedplace__timing__setup__ws": -18.907, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, "detailedroute__antenna_diodes_count": 0, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 21, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 12868, - "detailedroute__route__drc_errors__iter:2": 1628, - "detailedroute__route__drc_errors__iter:3": 1098, - "detailedroute__route__drc_errors__iter:4": 27, + "detailedroute__route__drc_errors__iter:1": 13056, + "detailedroute__route__drc_errors__iter:2": 1664, + "detailedroute__route__drc_errors__iter:3": 998, + "detailedroute__route__drc_errors__iter:4": 8, "detailedroute__route__drc_errors__iter:5": 0, - "detailedroute__route__net": 78370, + "detailedroute__route__net": 78371, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 546132, + "detailedroute__route__vias": 543540, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 546132, - "detailedroute__route__wirelength": 302376, - "detailedroute__route__wirelength__iter:1": 303984, - "detailedroute__route__wirelength__iter:2": 302486, - "detailedroute__route__wirelength__iter:3": 302331, - "detailedroute__route__wirelength__iter:4": 302374, - "detailedroute__route__wirelength__iter:5": 302376, - "finish__clock__skew__hold": 42.0199, - "finish__clock__skew__setup": 41.7824, - "finish__cpu__total": 181.06, + "detailedroute__route__vias__singlecut": 543540, + "detailedroute__route__wirelength": 299077, + "detailedroute__route__wirelength__iter:1": 300687, + "detailedroute__route__wirelength__iter:2": 299145, + "detailedroute__route__wirelength__iter:3": 299047, + "detailedroute__route__wirelength__iter:4": 299075, + "detailedroute__route__wirelength__iter:5": 299077, + "finish__clock__skew__hold": 44.5938, + "finish__clock__skew__setup": 43.9965, + "finish__cpu__total": 174.27, "finish__design__core__area": 24060.6, "finish__design__die__area": 25381.3, - "finish__design__instance__area": 7932.64, + "finish__design__instance__area": 7937.16, "finish__design__instance__area__macros": 0, - "finish__design__instance__area__stdcell": 7932.64, - "finish__design__instance__count": 69675, + "finish__design__instance__area__stdcell": 7937.16, + "finish__design__instance__count": 69674, "finish__design__instance__count__macros": 0, - "finish__design__instance__count__stdcell": 69675, - "finish__design__instance__utilization": 0.329694, - "finish__design__instance__utilization__stdcell": 0.329694, + "finish__design__instance__count__stdcell": 69674, + "finish__design__instance__utilization": 0.329882, + "finish__design__instance__utilization__stdcell": 0.329882, "finish__design__io": 47, - "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.702498, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.0691086, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.246171, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.252307, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.523829, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.252307, + "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.702061, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.0693394, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.247989, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.251199, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.522011, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.251199, "finish__flow__errors__count": 0, - "finish__flow__warnings__count": 21, - "finish__mem__peak": 2115676.0, - "finish__power__internal__total": 0.0687599, - "finish__power__leakage__total": 1.77041e-05, - "finish__power__switching__total": 0.0800676, - "finish__power__total": 0.148845, - "finish__runtime__total": "3:03.02", + "finish__flow__warnings__count": 20, + "finish__mem__peak": 2193432.0, + "finish__power__internal__total": 0.0693086, + "finish__power__leakage__total": 1.79309e-05, + "finish__power__switching__total": 0.0804048, + "finish__power__total": 0.149731, + "finish__runtime__total": "2:56.53", "finish__timing__drv__hold_violation_count": 0, "finish__timing__drv__max_cap": 0, - "finish__timing__drv__max_cap_limit": 0.134748, + "finish__timing__drv__max_cap_limit": 0.219944, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, "finish__timing__drv__max_slew": 4, - "finish__timing__drv__max_slew_limit": -0.313143, - "finish__timing__drv__setup_violation_count": 221, - "finish__timing__setup__tns": -5242.26, - "finish__timing__setup__ws": -65.5879, - "finish__timing__wns_percent_delay": -4.920656, - "finish_merge__cpu__total": 8.09, - "finish_merge__mem__peak": 951880.0, - "finish_merge__runtime__total": "0:08.74", - "floorplan__cpu__total": 35.5, + "finish__timing__drv__max_slew_limit": -0.425299, + "finish__timing__drv__setup_violation_count": 0, + "finish__timing__setup__tns": 0, + "finish__timing__setup__ws": 80.2294, + "finish__timing__wns_percent_delay": 6.805113, + "finish_merge__cpu__total": 7.09, + "finish_merge__mem__peak": 951488.0, + "finish_merge__runtime__total": "0:07.78", + "floorplan__cpu__total": 26.64, "floorplan__design__core__area": 24060.6, "floorplan__design__die__area": 25381.3, "floorplan__design__instance__area": 7236.84, @@ -159,32 +159,32 @@ "floorplan__design__io": 47, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 22, - "floorplan__mem__peak": 575484.0, + "floorplan__mem__peak": 575956.0, "floorplan__power__internal__total": 0.0589987, "floorplan__power__leakage__total": 1.07509e-05, "floorplan__power__switching__total": 0.0541253, "floorplan__power__total": 0.113135, - "floorplan__runtime__total": "0:35.91", + "floorplan__runtime__total": "0:27.03", "floorplan__timing__setup__tns": 0, "floorplan__timing__setup__ws": 186.739, - "floorplan_io__cpu__total": 3.55, - "floorplan_io__mem__peak": 415104.0, - "floorplan_io__runtime__total": "0:03.78", - "floorplan_macro__cpu__total": 3.53, - "floorplan_macro__mem__peak": 413480.0, - "floorplan_macro__runtime__total": "0:03.87", - "floorplan_pdn__cpu__total": 4.63, - "floorplan_pdn__mem__peak": 430716.0, - "floorplan_pdn__runtime__total": "0:04.94", - "floorplan_tap__cpu__total": 4.06, - "floorplan_tap__mem__peak": 376100.0, - "floorplan_tap__runtime__total": "0:04.28", - "floorplan_tdms__cpu__total": 3.61, - "floorplan_tdms__mem__peak": 413476.0, - "floorplan_tdms__runtime__total": "0:03.82", + "floorplan_io__cpu__total": 2.77, + "floorplan_io__mem__peak": 415512.0, + "floorplan_io__runtime__total": "0:03.03", + "floorplan_macro__cpu__total": 2.81, + "floorplan_macro__mem__peak": 414392.0, + "floorplan_macro__runtime__total": "0:03.07", + "floorplan_pdn__cpu__total": 3.63, + "floorplan_pdn__mem__peak": 431720.0, + "floorplan_pdn__runtime__total": "0:03.93", + "floorplan_tap__cpu__total": 3.07, + "floorplan_tap__mem__peak": 376612.0, + "floorplan_tap__runtime__total": "0:03.31", + "floorplan_tdms__cpu__total": 2.78, + "floorplan_tdms__mem__peak": 414216.0, + "floorplan_tdms__runtime__total": "0:03.06", "flow__errors__count": 0, "flow__warnings__count": 20, - "globalplace__cpu__total": 988.07, + "globalplace__cpu__total": 2375.42, "globalplace__design__core__area": 24060.6, "globalplace__design__die__area": 25381.3, "globalplace__design__instance__area": 7320.71, @@ -198,100 +198,100 @@ "globalplace__design__io": 47, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 20, - "globalplace__mem__peak": 1536836.0, - "globalplace__power__internal__total": 0.0595609, + "globalplace__mem__peak": 1545812.0, + "globalplace__power__internal__total": 0.0595603, "globalplace__power__leakage__total": 1.07509e-05, - "globalplace__power__switching__total": 0.0676578, - "globalplace__power__total": 0.127229, - "globalplace__runtime__total": "5:32.66", - "globalplace__timing__setup__tns": -9019.87, - "globalplace__timing__setup__ws": -146.452, - "globalplace_io__cpu__total": 3.52, - "globalplace_io__mem__peak": 422044.0, - "globalplace_io__runtime__total": "0:03.81", - "globalplace_skip_io__cpu__total": 594.02, - "globalplace_skip_io__mem__peak": 517260.0, - "globalplace_skip_io__runtime__total": "0:37.13", + "globalplace__power__switching__total": 0.0676731, + "globalplace__power__total": 0.127244, + "globalplace__runtime__total": "9:29.54", + "globalplace__timing__setup__tns": -9965, + "globalplace__timing__setup__ws": -154.843, + "globalplace_io__cpu__total": 2.78, + "globalplace_io__mem__peak": 422200.0, + "globalplace_io__runtime__total": "0:03.14", + "globalplace_skip_io__cpu__total": 545.67, + "globalplace_skip_io__mem__peak": 522160.0, + "globalplace_skip_io__runtime__total": "0:57.06", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, "globalroute__antenna_diodes_count": 0, - "globalroute__clock__skew__hold": 31.6991, - "globalroute__clock__skew__setup": 30.9059, - "globalroute__cpu__total": 686.21, + "globalroute__clock__skew__hold": 37.4603, + "globalroute__clock__skew__setup": 34.4476, + "globalroute__cpu__total": 729.94, "globalroute__design__core__area": 24060.6, "globalroute__design__die__area": 25381.3, - "globalroute__design__instance__area": 7932.64, + "globalroute__design__instance__area": 7937.16, "globalroute__design__instance__area__macros": 0, - "globalroute__design__instance__area__stdcell": 7932.64, - "globalroute__design__instance__count": 69675, + "globalroute__design__instance__area__stdcell": 7937.16, + "globalroute__design__instance__count": 69674, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 0, "globalroute__design__instance__count__setup_buffer": 0, - "globalroute__design__instance__count__stdcell": 69675, + "globalroute__design__instance__count__stdcell": 69674, "globalroute__design__instance__displacement__max": 0, "globalroute__design__instance__displacement__mean": 0, "globalroute__design__instance__displacement__total": 0, - "globalroute__design__instance__utilization": 0.329694, - "globalroute__design__instance__utilization__stdcell": 0.329694, + "globalroute__design__instance__utilization": 0.329882, + "globalroute__design__instance__utilization__stdcell": 0.329882, "globalroute__design__io": 47, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 21, - "globalroute__mem__peak": 1723388.0, - "globalroute__power__internal__total": 0.0687336, - "globalroute__power__leakage__total": 1.77041e-05, - "globalroute__power__switching__total": 0.080716, - "globalroute__power__total": 0.149467, - "globalroute__route__wirelength__estimated": 266630, - "globalroute__runtime__total": "9:49.83", - "globalroute__timing__clock__slack": 21.257, + "globalroute__mem__peak": 1721404.0, + "globalroute__power__internal__total": 0.0693178, + "globalroute__power__leakage__total": 1.79309e-05, + "globalroute__power__switching__total": 0.0810957, + "globalroute__power__total": 0.150431, + "globalroute__route__wirelength__estimated": 266755, + "globalroute__runtime__total": "11:39.59", + "globalroute__timing__clock__slack": 2.756, "globalroute__timing__drv__hold_violation_count": 0, "globalroute__timing__drv__max_cap": 0, - "globalroute__timing__drv__max_cap_limit": 0.212273, + "globalroute__timing__drv__max_cap_limit": 0.215205, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, "globalroute__timing__drv__max_slew": 1, - "globalroute__timing__drv__max_slew_limit": -0.00563195, + "globalroute__timing__drv__max_slew_limit": -0.0125733, "globalroute__timing__drv__setup_violation_count": 0, "globalroute__timing__setup__tns": 0, - "globalroute__timing__setup__ws": 21.2574, - "placeopt__cpu__total": 78.02, + "globalroute__timing__setup__ws": 2.75646, + "placeopt__cpu__total": 79.09, "placeopt__design__core__area": 24060.6, "placeopt__design__die__area": 25381.3, - "placeopt__design__instance__area": 7861.03, + "placeopt__design__instance__area": 7861.33, "placeopt__design__instance__area__macros": 0, - "placeopt__design__instance__area__stdcell": 7861.03, - "placeopt__design__instance__count": 69216, + "placeopt__design__instance__area__stdcell": 7861.33, + "placeopt__design__instance__count": 69220, "placeopt__design__instance__count__macros": 0, - "placeopt__design__instance__count__stdcell": 69216, - "placeopt__design__instance__utilization": 0.326717, - "placeopt__design__instance__utilization__stdcell": 0.326717, + "placeopt__design__instance__count__stdcell": 69220, + "placeopt__design__instance__utilization": 0.32673, + "placeopt__design__instance__utilization__stdcell": 0.32673, "placeopt__design__io": 47, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 20, - "placeopt__mem__peak": 1121836.0, - "placeopt__power__internal__total": 0.065831, - "placeopt__power__leakage__total": 1.84805e-05, - "placeopt__power__switching__total": 0.0741892, - "placeopt__power__total": 0.140039, - "placeopt__runtime__total": "1:18.94", + "placeopt__mem__peak": 1121740.0, + "placeopt__power__internal__total": 0.0658253, + "placeopt__power__leakage__total": 1.84795e-05, + "placeopt__power__switching__total": 0.0742225, + "placeopt__power__total": 0.140066, + "placeopt__runtime__total": "1:21.82", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.231375, + "placeopt__timing__drv__max_cap_limit": 0.232003, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.10648, - "placeopt__timing__drv__setup_violation_count": 5, - "placeopt__timing__setup__tns": -67.4225, - "placeopt__timing__setup__ws": -29.0803, + "placeopt__timing__drv__max_slew_limit": 0.106794, + "placeopt__timing__drv__setup_violation_count": 6, + "placeopt__timing__setup__tns": -101.051, + "placeopt__timing__setup__ws": -37.618, "run__flow__design": "jpeg_lvt", - "run__flow__generate_date": "2024-09-19 14:45", + "run__flow__generate_date": "2024-09-26 21:19", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15759-g9136ba699", + "run__flow__openroad_version": "v2.0-15807-g036379d64", "run__flow__platform": "asap7", "run__flow__platform__capacitance_units": "1fF", "run__flow__platform__current_units": "1mA", @@ -300,14 +300,14 @@ "run__flow__platform__resistance_units": "1kohm", "run__flow__platform__time_units": "1ps", "run__flow__platform__voltage_units": "1v", - "run__flow__platform_commit": "N/A", - "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "1f7640a3-6417-478b-8abe-2646d8c7ae69", - "run__flow__variant": "base", - "synth__cpu__total": 122.53, + "run__flow__platform_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__scripts_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__uuid": "6c908765-1cac-46b3-bf81-f01a7aa14c64", + "run__flow__variant": "odb_0925", + "synth__cpu__total": 115.47, "synth__design__instance__area__stdcell": 7236.84132, "synth__design__instance__count__stdcell": 66220.0, - "synth__mem__peak": 974556.0, - "synth__runtime__total": "2:04.23", - "total_time": "0:26:06.620000" + "synth__mem__peak": 988152.0, + "synth__runtime__total": "1:57.16", + "total_time": "0:31:27.250000" } \ No newline at end of file diff --git a/flow/designs/asap7/jpeg_lvt/rules-base.json b/flow/designs/asap7/jpeg_lvt/rules-base.json index 8a860c4d0b..904903d986 100644 --- a/flow/designs/asap7/jpeg_lvt/rules-base.json +++ b/flow/designs/asap7/jpeg_lvt/rules-base.json @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 8700, + "value": 9041, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 75885, + "value": 79603, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,11 +20,11 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 5427, + "value": 6922, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 5427, + "value": 6922, "compare": "<=" }, "globalroute__antenna_diodes_count": { @@ -32,7 +32,7 @@ "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 347683, + "value": 343939, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -48,15 +48,15 @@ "compare": "<=" }, "finish__timing__setup__ws": { - "value": -113.52, + "value": 0.0, "compare": ">=" }, "finish__design__instance__area": { - "value": 8760, + "value": 9128, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 3111, + "value": 3461, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { @@ -64,7 +64,7 @@ "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -15.34, + "value": -10.0, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/asap7/mock-alu/metadata-base-ok.json b/flow/designs/asap7/mock-alu/metadata-base-ok.json index cf37e0e481..a45e564500 100644 --- a/flow/designs/asap7/mock-alu/metadata-base-ok.json +++ b/flow/designs/asap7/mock-alu/metadata-base-ok.json @@ -3,305 +3,299 @@ "constraints__clocks__details": [ "clock: 100.0000" ], - "cts__clock__skew__hold": 14.588, - "cts__clock__skew__setup": 10.4075, - "cts__cpu__total": 147.85, + "cts__clock__skew__hold": 13.0021, + "cts__clock__skew__setup": 8.89893, + "cts__cpu__total": 184.53, "cts__design__core__area": 2872.41, "cts__design__die__area": 3342.11, - "cts__design__instance__area": 1723.46, + "cts__design__instance__area": 1746.29, "cts__design__instance__area__macros": 0, - "cts__design__instance__area__stdcell": 1723.46, - "cts__design__instance__count": 13383, - "cts__design__instance__count__hold_buffer": 214, + "cts__design__instance__area__stdcell": 1746.29, + "cts__design__instance__count": 13510, + "cts__design__instance__count__hold_buffer": 189, "cts__design__instance__count__macros": 0, - "cts__design__instance__count__setup_buffer": 213, - "cts__design__instance__count__stdcell": 13383, - "cts__design__instance__displacement__max": 5.346, - "cts__design__instance__displacement__mean": 0.102, - "cts__design__instance__displacement__total": 1370.2, - "cts__design__instance__utilization": 0.600005, - "cts__design__instance__utilization__stdcell": 0.600005, + "cts__design__instance__count__setup_buffer": 289, + "cts__design__instance__count__stdcell": 13510, + "cts__design__instance__displacement__max": 10.643, + "cts__design__instance__displacement__mean": 0.146, + "cts__design__instance__displacement__total": 1982.43, + "cts__design__instance__utilization": 0.607954, + "cts__design__instance__utilization__stdcell": 0.607954, "cts__design__io": 200, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 11, - "cts__mem__peak": 626112.0, - "cts__power__internal__total": 0.0923659, - "cts__power__leakage__total": 1.12279e-06, - "cts__power__switching__total": 0.0851527, - "cts__power__total": 0.17752, - "cts__route__wirelength__estimated": 44805.4, - "cts__runtime__total": "2:28.43", + "cts__mem__peak": 627028.0, + "cts__power__internal__total": 0.0930619, + "cts__power__leakage__total": 1.14282e-06, + "cts__power__switching__total": 0.0865831, + "cts__power__total": 0.179646, + "cts__route__wirelength__estimated": 45778.7, + "cts__runtime__total": "3:05.01", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, - "cts__timing__drv__max_cap_limit": 0.775264, + "cts__timing__drv__max_cap_limit": 0.748972, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.573625, + "cts__timing__drv__max_slew_limit": 0.594594, "cts__timing__drv__setup_violation_count": 1333, - "cts__timing__setup__tns": -176365, - "cts__timing__setup__ws": -495.261, - "design__io__hpwl": 3467963, + "cts__timing__setup__tns": -171308, + "cts__timing__setup__ws": -510.648, + "design__io__hpwl": 2972746, "design__violations": 0, - "detailedplace__cpu__total": 16.03, + "detailedplace__cpu__total": 15.32, "detailedplace__design__core__area": 2872.41, "detailedplace__design__die__area": 3342.11, - "detailedplace__design__instance__area": 1647.1, + "detailedplace__design__instance__area": 1658.77, "detailedplace__design__instance__area__macros": 0, - "detailedplace__design__instance__area__stdcell": 1647.1, - "detailedplace__design__instance__count": 12797, + "detailedplace__design__instance__area__stdcell": 1658.77, + "detailedplace__design__instance__count": 12866, "detailedplace__design__instance__count__macros": 0, - "detailedplace__design__instance__count__stdcell": 12797, - "detailedplace__design__instance__displacement__max": 3.228, - "detailedplace__design__instance__displacement__mean": 0.261, - "detailedplace__design__instance__displacement__total": 3352.63, - "detailedplace__design__instance__utilization": 0.573423, - "detailedplace__design__instance__utilization__stdcell": 0.573423, + "detailedplace__design__instance__count__stdcell": 12866, + "detailedplace__design__instance__displacement__max": 3.515, + "detailedplace__design__instance__displacement__mean": 0.267, + "detailedplace__design__instance__displacement__total": 3443.18, + "detailedplace__design__instance__utilization": 0.577483, + "detailedplace__design__instance__utilization__stdcell": 0.577483, "detailedplace__design__io": 200, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 10, - "detailedplace__mem__peak": 278252.0, - "detailedplace__power__internal__total": 0.0842457, - "detailedplace__power__leakage__total": 1.05822e-06, - "detailedplace__power__switching__total": 0.0765387, - "detailedplace__power__total": 0.160785, - "detailedplace__route__wirelength__estimated": 42177.1, - "detailedplace__runtime__total": "0:16.20", + "detailedplace__mem__peak": 278112.0, + "detailedplace__power__internal__total": 0.0844703, + "detailedplace__power__leakage__total": 1.06492e-06, + "detailedplace__power__switching__total": 0.0777798, + "detailedplace__power__total": 0.162251, + "detailedplace__route__wirelength__estimated": 42013.8, + "detailedplace__runtime__total": "0:15.52", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, - "detailedplace__timing__drv__max_cap_limit": 0.700159, + "detailedplace__timing__drv__max_cap_limit": 0.720905, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.520583, + "detailedplace__timing__drv__max_slew_limit": 0.52842, "detailedplace__timing__drv__setup_violation_count": 1267, - "detailedplace__timing__setup__tns": -172059, - "detailedplace__timing__setup__ws": -545.057, + "detailedplace__timing__setup__tns": -169594, + "detailedplace__timing__setup__ws": -571.933, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, "detailedroute__antenna_diodes_count": 0, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 11, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 3003, - "detailedroute__route__drc_errors__iter:10": 0, - "detailedroute__route__drc_errors__iter:2": 545, - "detailedroute__route__drc_errors__iter:3": 363, - "detailedroute__route__drc_errors__iter:4": 15, - "detailedroute__route__drc_errors__iter:5": 1, - "detailedroute__route__drc_errors__iter:6": 1, - "detailedroute__route__drc_errors__iter:7": 1, - "detailedroute__route__drc_errors__iter:8": 1, - "detailedroute__route__drc_errors__iter:9": 1, - "detailedroute__route__net": 14335, + "detailedroute__route__drc_errors__iter:1": 2744, + "detailedroute__route__drc_errors__iter:2": 528, + "detailedroute__route__drc_errors__iter:3": 289, + "detailedroute__route__drc_errors__iter:4": 26, + "detailedroute__route__drc_errors__iter:5": 4, + "detailedroute__route__drc_errors__iter:6": 4, + "detailedroute__route__drc_errors__iter:7": 0, + "detailedroute__route__net": 14284, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 117049, + "detailedroute__route__vias": 114236, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 117049, - "detailedroute__route__wirelength": 55510, - "detailedroute__route__wirelength__iter:1": 55893, - "detailedroute__route__wirelength__iter:10": 55510, - "detailedroute__route__wirelength__iter:2": 55569, - "detailedroute__route__wirelength__iter:3": 55488, - "detailedroute__route__wirelength__iter:4": 55508, - "detailedroute__route__wirelength__iter:5": 55510, - "detailedroute__route__wirelength__iter:6": 55510, - "detailedroute__route__wirelength__iter:7": 55510, - "detailedroute__route__wirelength__iter:8": 55510, - "detailedroute__route__wirelength__iter:9": 55510, - "finish__clock__skew__hold": 15.6846, - "finish__clock__skew__setup": 12.2345, - "finish__cpu__total": 33.1, + "detailedroute__route__vias__singlecut": 114236, + "detailedroute__route__wirelength": 53387, + "detailedroute__route__wirelength__iter:1": 53738, + "detailedroute__route__wirelength__iter:2": 53380, + "detailedroute__route__wirelength__iter:3": 53376, + "detailedroute__route__wirelength__iter:4": 53387, + "detailedroute__route__wirelength__iter:5": 53387, + "detailedroute__route__wirelength__iter:6": 53388, + "detailedroute__route__wirelength__iter:7": 53387, + "finish__clock__skew__hold": 16.5286, + "finish__clock__skew__setup": 14.8857, + "finish__cpu__total": 30.6, "finish__design__core__area": 2872.41, "finish__design__die__area": 3342.11, - "finish__design__instance__area": 1765.19, + "finish__design__instance__area": 1751.79, "finish__design__instance__area__macros": 0, - "finish__design__instance__area__stdcell": 1765.19, - "finish__design__instance__count": 13596, + "finish__design__instance__area__stdcell": 1751.79, + "finish__design__instance__count": 13547, "finish__design__instance__count__macros": 0, - "finish__design__instance__count__stdcell": 13596, - "finish__design__instance__utilization": 0.614532, - "finish__design__instance__utilization__stdcell": 0.614532, + "finish__design__instance__count__stdcell": 13547, + "finish__design__instance__utilization": 0.609868, + "finish__design__instance__utilization__stdcell": 0.609868, "finish__design__io": 200, - "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.759253, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.0109163, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.105025, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.104318, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.664975, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.104318, + "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.759246, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.0108153, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0911879, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0924941, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.678812, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0924941, "finish__flow__errors__count": 0, "finish__flow__warnings__count": 11, - "finish__mem__peak": 549228.0, - "finish__power__internal__total": 0.0932243, - "finish__power__leakage__total": 1.17049e-06, - "finish__power__switching__total": 0.0904028, - "finish__power__total": 0.183628, - "finish__runtime__total": "0:33.57", - "finish__timing__drv__hold_violation_count": 20, + "finish__mem__peak": 541724.0, + "finish__power__internal__total": 0.0933001, + "finish__power__leakage__total": 1.14886e-06, + "finish__power__switching__total": 0.0909031, + "finish__power__total": 0.184204, + "finish__runtime__total": "0:30.97", + "finish__timing__drv__hold_violation_count": 38, "finish__timing__drv__max_cap": 0, - "finish__timing__drv__max_cap_limit": 0.762845, + "finish__timing__drv__max_cap_limit": 0.732193, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, - "finish__timing__drv__max_slew": 0, - "finish__timing__drv__max_slew_limit": 0.210145, - "finish__timing__drv__setup_violation_count": 1336, - "finish__timing__setup__tns": -184594, - "finish__timing__setup__ws": -540.55, - "finish__timing__wns_percent_delay": -74.749591, - "finish_merge__cpu__total": 2.77, - "finish_merge__mem__peak": 487100.0, - "finish_merge__runtime__total": "0:03.16", - "floorplan__cpu__total": 293.82, + "finish__timing__drv__max_slew": 7, + "finish__timing__drv__max_slew_limit": -0.0135334, + "finish__timing__drv__setup_violation_count": 1334, + "finish__timing__setup__tns": -185996, + "finish__timing__setup__ws": -532.655, + "finish__timing__wns_percent_delay": -74.021395, + "finish_merge__cpu__total": 2.65, + "finish_merge__mem__peak": 487156.0, + "finish_merge__runtime__total": "0:02.99", + "floorplan__cpu__total": 197.58, "floorplan__design__core__area": 2872.41, "floorplan__design__die__area": 3342.11, - "floorplan__design__instance__area": 1522.87, + "floorplan__design__instance__area": 1537.4, "floorplan__design__instance__area__macros": 0, - "floorplan__design__instance__area__stdcell": 1522.87, - "floorplan__design__instance__count": 11955, + "floorplan__design__instance__area__stdcell": 1537.4, + "floorplan__design__instance__count": 12024, "floorplan__design__instance__count__hold_buffer": 0, "floorplan__design__instance__count__macros": 0, - "floorplan__design__instance__count__setup_buffer": 19, - "floorplan__design__instance__count__stdcell": 11955, - "floorplan__design__instance__utilization": 0.530171, - "floorplan__design__instance__utilization__stdcell": 0.530171, + "floorplan__design__instance__count__setup_buffer": 20, + "floorplan__design__instance__count__stdcell": 12024, + "floorplan__design__instance__utilization": 0.535232, + "floorplan__design__instance__utilization__stdcell": 0.535232, "floorplan__design__io": 200, "floorplan__flow__errors__count": 0, - "floorplan__flow__warnings__count": 11431, - "floorplan__mem__peak": 265340.0, - "floorplan__power__internal__total": 0.080257, - "floorplan__power__leakage__total": 9.39396e-07, - "floorplan__power__switching__total": 0.0622792, - "floorplan__power__total": 0.142537, - "floorplan__runtime__total": "4:54.05", - "floorplan__timing__setup__tns": -144152, - "floorplan__timing__setup__ws": -480.482, - "floorplan_io__cpu__total": 1.94, - "floorplan_io__mem__peak": 228880.0, - "floorplan_io__runtime__total": "0:02.07", - "floorplan_macro__cpu__total": 1.8, - "floorplan_macro__mem__peak": 228352.0, - "floorplan_macro__runtime__total": "0:02.05", - "floorplan_pdn__cpu__total": 2.09, - "floorplan_pdn__mem__peak": 231952.0, - "floorplan_pdn__runtime__total": "0:02.23", - "floorplan_tap__cpu__total": 1.91, - "floorplan_tap__mem__peak": 221180.0, - "floorplan_tap__runtime__total": "0:02.04", - "floorplan_tdms__cpu__total": 1.95, - "floorplan_tdms__mem__peak": 228020.0, - "floorplan_tdms__runtime__total": "0:02.07", + "floorplan__flow__warnings__count": 12895, + "floorplan__mem__peak": 264112.0, + "floorplan__power__internal__total": 0.0804196, + "floorplan__power__leakage__total": 9.54478e-07, + "floorplan__power__switching__total": 0.0624178, + "floorplan__power__total": 0.142838, + "floorplan__runtime__total": "3:17.77", + "floorplan__timing__setup__tns": -133326, + "floorplan__timing__setup__ws": -480.849, + "floorplan_io__cpu__total": 1.78, + "floorplan_io__mem__peak": 228900.0, + "floorplan_io__runtime__total": "0:01.91", + "floorplan_macro__cpu__total": 1.76, + "floorplan_macro__mem__peak": 228124.0, + "floorplan_macro__runtime__total": "0:01.90", + "floorplan_pdn__cpu__total": 1.97, + "floorplan_pdn__mem__peak": 232220.0, + "floorplan_pdn__runtime__total": "0:02.11", + "floorplan_tap__cpu__total": 1.84, + "floorplan_tap__mem__peak": 222496.0, + "floorplan_tap__runtime__total": "0:01.95", + "floorplan_tdms__cpu__total": 1.76, + "floorplan_tdms__mem__peak": 228568.0, + "floorplan_tdms__runtime__total": "0:01.91", "flow__errors__count": 0, "flow__warnings__count": 10, - "globalplace__cpu__total": 299.2, + "globalplace__cpu__total": 280.22, "globalplace__design__core__area": 2872.41, "globalplace__design__die__area": 3342.11, - "globalplace__design__instance__area": 1540.25, + "globalplace__design__instance__area": 1554.78, "globalplace__design__instance__area__macros": 0, - "globalplace__design__instance__area__stdcell": 1540.25, - "globalplace__design__instance__count": 12551, + "globalplace__design__instance__area__stdcell": 1554.78, + "globalplace__design__instance__count": 12620, "globalplace__design__instance__count__macros": 0, - "globalplace__design__instance__count__stdcell": 12551, - "globalplace__design__instance__utilization": 0.536222, - "globalplace__design__instance__utilization__stdcell": 0.536222, + "globalplace__design__instance__count__stdcell": 12620, + "globalplace__design__instance__utilization": 0.541282, + "globalplace__design__instance__utilization__stdcell": 0.541282, "globalplace__design__io": 200, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 10, - "globalplace__mem__peak": 634704.0, - "globalplace__power__internal__total": 0.0807494, - "globalplace__power__leakage__total": 9.39396e-07, - "globalplace__power__switching__total": 0.0763894, - "globalplace__power__total": 0.15714, - "globalplace__runtime__total": "1:03.10", - "globalplace__timing__setup__tns": -185638, - "globalplace__timing__setup__ws": -528.704, - "globalplace_io__cpu__total": 2.02, - "globalplace_io__mem__peak": 230672.0, - "globalplace_io__runtime__total": "0:02.11", - "globalplace_skip_io__cpu__total": 197.76, - "globalplace_skip_io__mem__peak": 245152.0, - "globalplace_skip_io__runtime__total": "0:08.23", + "globalplace__mem__peak": 636400.0, + "globalplace__power__internal__total": 0.0810216, + "globalplace__power__leakage__total": 9.54478e-07, + "globalplace__power__switching__total": 0.0775077, + "globalplace__power__total": 0.15853, + "globalplace__runtime__total": "1:12.05", + "globalplace__timing__setup__tns": -171637, + "globalplace__timing__setup__ws": -549.436, + "globalplace_io__cpu__total": 1.81, + "globalplace_io__mem__peak": 230364.0, + "globalplace_io__runtime__total": "0:01.98", + "globalplace_skip_io__cpu__total": 193.55, + "globalplace_skip_io__mem__peak": 245196.0, + "globalplace_skip_io__runtime__total": "0:07.95", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, "globalroute__antenna_diodes_count": 0, - "globalroute__clock__skew__hold": 14.2222, - "globalroute__clock__skew__setup": 11.0508, - "globalroute__cpu__total": 287.2, + "globalroute__clock__skew__hold": 14.5359, + "globalroute__clock__skew__setup": 12.3007, + "globalroute__cpu__total": 116.14, "globalroute__design__core__area": 2872.41, "globalroute__design__die__area": 3342.11, - "globalroute__design__instance__area": 1765.19, + "globalroute__design__instance__area": 1751.79, "globalroute__design__instance__area__macros": 0, - "globalroute__design__instance__area__stdcell": 1765.19, - "globalroute__design__instance__count": 13596, - "globalroute__design__instance__count__hold_buffer": 9, + "globalroute__design__instance__area__stdcell": 1751.79, + "globalroute__design__instance__count": 13547, + "globalroute__design__instance__count__hold_buffer": 26, "globalroute__design__instance__count__macros": 0, - "globalroute__design__instance__count__setup_buffer": 162, - "globalroute__design__instance__count__stdcell": 13596, - "globalroute__design__instance__displacement__max": 5.562, - "globalroute__design__instance__displacement__mean": 0.1, - "globalroute__design__instance__displacement__total": 1360.15, - "globalroute__design__instance__utilization": 0.614532, - "globalroute__design__instance__utilization__stdcell": 0.614532, + "globalroute__design__instance__count__setup_buffer": 23, + "globalroute__design__instance__count__stdcell": 13547, + "globalroute__design__instance__displacement__max": 4.428, + "globalroute__design__instance__displacement__mean": 0.042, + "globalroute__design__instance__displacement__total": 569.97, + "globalroute__design__instance__utilization": 0.609868, + "globalroute__design__instance__utilization__stdcell": 0.609868, "globalroute__design__io": 200, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 12, - "globalroute__mem__peak": 707896.0, - "globalroute__power__internal__total": 0.0930917, - "globalroute__power__leakage__total": 1.17049e-06, - "globalroute__power__switching__total": 0.0908002, - "globalroute__power__total": 0.183893, - "globalroute__route__wirelength__estimated": 48270.6, - "globalroute__runtime__total": "4:21.54", - "globalroute__timing__clock__slack": -514.657, + "globalroute__mem__peak": 696956.0, + "globalroute__power__internal__total": 0.0931304, + "globalroute__power__leakage__total": 1.14886e-06, + "globalroute__power__switching__total": 0.0916432, + "globalroute__power__total": 0.184775, + "globalroute__route__wirelength__estimated": 46377.1, + "globalroute__runtime__total": "1:30.11", + "globalroute__timing__clock__slack": -521.43, "globalroute__timing__drv__hold_violation_count": 0, "globalroute__timing__drv__max_cap": 0, - "globalroute__timing__drv__max_cap_limit": 0.759476, + "globalroute__timing__drv__max_cap_limit": 0.73941, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, "globalroute__timing__drv__max_slew": 0, - "globalroute__timing__drv__max_slew_limit": 0.557812, - "globalroute__timing__drv__setup_violation_count": 1336, - "globalroute__timing__setup__tns": -173674, - "globalroute__timing__setup__ws": -514.657, - "placeopt__cpu__total": 17.19, + "globalroute__timing__drv__max_slew_limit": 0.434515, + "globalroute__timing__drv__setup_violation_count": 1333, + "globalroute__timing__setup__tns": -174860, + "globalroute__timing__setup__ws": -521.43, + "placeopt__cpu__total": 16.29, "placeopt__design__core__area": 2872.41, "placeopt__design__die__area": 3342.11, - "placeopt__design__instance__area": 1647.1, + "placeopt__design__instance__area": 1658.77, "placeopt__design__instance__area__macros": 0, - "placeopt__design__instance__area__stdcell": 1647.1, - "placeopt__design__instance__count": 12797, + "placeopt__design__instance__area__stdcell": 1658.77, + "placeopt__design__instance__count": 12866, "placeopt__design__instance__count__macros": 0, - "placeopt__design__instance__count__stdcell": 12797, - "placeopt__design__instance__utilization": 0.573423, - "placeopt__design__instance__utilization__stdcell": 0.573423, + "placeopt__design__instance__count__stdcell": 12866, + "placeopt__design__instance__utilization": 0.577483, + "placeopt__design__instance__utilization__stdcell": 0.577483, "placeopt__design__io": 200, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 10, - "placeopt__mem__peak": 517060.0, - "placeopt__power__internal__total": 0.0842815, - "placeopt__power__leakage__total": 1.05822e-06, - "placeopt__power__switching__total": 0.0766967, - "placeopt__power__total": 0.160979, - "placeopt__runtime__total": "0:17.63", + "placeopt__mem__peak": 519924.0, + "placeopt__power__internal__total": 0.0845083, + "placeopt__power__leakage__total": 1.06492e-06, + "placeopt__power__switching__total": 0.0776569, + "placeopt__power__total": 0.162166, + "placeopt__runtime__total": "0:16.72", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.69827, + "placeopt__timing__drv__max_cap_limit": 0.720512, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.528811, - "placeopt__timing__drv__setup_violation_count": 1268, - "placeopt__timing__setup__tns": -171460, - "placeopt__timing__setup__ws": -543.292, + "placeopt__timing__drv__max_slew_limit": 0.513893, + "placeopt__timing__drv__setup_violation_count": 1266, + "placeopt__timing__setup__tns": -168415, + "placeopt__timing__setup__ws": -568.971, "run__flow__design": "mock-alu", - "run__flow__generate_date": "2024-09-19 14:28", + "run__flow__generate_date": "2024-09-27 17:57", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15759-g9136ba699", + "run__flow__openroad_version": "v2.0-16089-gd06039e7d", "run__flow__platform": "asap7", "run__flow__platform__capacitance_units": "1fF", "run__flow__platform__current_units": "1mA", @@ -312,12 +306,12 @@ "run__flow__platform__voltage_units": "1v", "run__flow__platform_commit": "N/A", "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "e85459fb-d195-4867-b51e-b3f9c1ef3f55", + "run__flow__uuid": "ec7954e2-a933-4470-8a95-d19baa7f4888", "run__flow__variant": "base", - "synth__cpu__total": 25.9, + "synth__cpu__total": 22.36, "synth__design__instance__area__stdcell": 1447.85232, "synth__design__instance__count__stdcell": 11552.0, - "synth__mem__peak": 188236.0, - "synth__runtime__total": "0:26.30", - "total_time": "0:14:44.780000" + "synth__mem__peak": 188528.0, + "synth__runtime__total": "0:22.73", + "total_time": "0:10:53.580000" } \ No newline at end of file diff --git a/flow/designs/asap7/mock-alu/rules-base.json b/flow/designs/asap7/mock-alu/rules-base.json index aa263be311..d145792da0 100644 --- a/flow/designs/asap7/mock-alu/rules-base.json +++ b/flow/designs/asap7/mock-alu/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 1631.1, + "value": 1665.04, "compare": "<=" }, "constraints__clocks__count": { @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 1755, + "value": 1908, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 13517, + "value": 14796, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,11 +20,11 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 1175, + "value": 1287, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 1175, + "value": 1287, "compare": "<=" }, "globalroute__antenna_diodes_count": { @@ -32,7 +32,7 @@ "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 62657, + "value": 61395, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -48,23 +48,23 @@ "compare": "<=" }, "finish__timing__setup__ws": { - "value": -545.54, + "value": -537.65, "compare": ">=" }, "finish__design__instance__area": { - "value": 1808, + "value": 2015, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 1400, + "value": 1401, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { - "value": 100, + "value": 148, "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -97.42, + "value": -98.82, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/asap7/mock-array/Element/config.mk b/flow/designs/asap7/mock-array/Element/config.mk index 2ef7b52052..13d088e04e 100644 --- a/flow/designs/asap7/mock-array/Element/config.mk +++ b/flow/designs/asap7/mock-array/Element/config.mk @@ -26,13 +26,9 @@ export IO_CONSTRAINTS = designs/asap7/mock-array/Element/io.tcl export PDN_TCL = $(FLOW_HOME)/platforms/asap7/openRoad/pdn/BLOCK_grid_strategy.tcl -# If this design isn't quickly done in detailed routing, something is wrong. -# At time of adding this option, only 3 iterations were needed for 0 -# violations. -export DETAILED_ROUTE_ARGS=-bottom_routing_layer M2 -top_routing_layer M5 -save_guide_updates -verbose 1 -droute_end_iter 10 +# Detailed routing should be easy, limit iterations +export DETAILED_ROUTE_END_ITERATION = 6 -# since we are specifying DETAILED_ROUTE_ARGS, we need to communicate the -# same information to other stages in the flow. export MIN_ROUTING_LAYER = M2 export MAX_ROUTING_LAYER = M5 diff --git a/flow/designs/asap7/mock-array/config.mk b/flow/designs/asap7/mock-array/config.mk index a7ff28c8b9..0d3ceb5ce8 100644 --- a/flow/designs/asap7/mock-array/config.mk +++ b/flow/designs/asap7/mock-array/config.mk @@ -56,10 +56,8 @@ simulate: power: $(OPENSTA_EXE) -no_init -exit designs/asap7/mock-array/power.tcl -# If this design isn't quickly done in detailed routing, something is wrong. -# At time of adding this option, only 12 iterations were needed for 0 -# violations. -export DETAILED_ROUTE_ARGS = -bottom_routing_layer M2 -top_routing_layer M7 -save_guide_updates -verbose 1 -droute_end_iter 15 +# Routing by abutment should be easy, limit iterations +export DETAILED_ROUTE_END_ITERATION = 6 export MIN_ROUTING_LAYER = M2 export MAX_ROUTING_LAYER = M7 diff --git a/flow/designs/asap7/mock-array/metadata-base-ok.json b/flow/designs/asap7/mock-array/metadata-base-ok.json index b94ea517ef..40d778a9ba 100644 --- a/flow/designs/asap7/mock-array/metadata-base-ok.json +++ b/flow/designs/asap7/mock-array/metadata-base-ok.json @@ -3,9 +3,9 @@ "constraints__clocks__details": [ "clock: 250.0000" ], - "cts__clock__skew__hold": 109.041, - "cts__clock__skew__setup": 82.9801, - "cts__cpu__total": 17.12, + "cts__clock__skew__hold": 108.962, + "cts__clock__skew__setup": 82.901, + "cts__cpu__total": 11.01, "cts__design__core__area": 136198, "cts__design__die__area": 139408, "cts__design__instance__area": 119971, @@ -25,13 +25,13 @@ "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 10, - "cts__mem__peak": 1011692.0, - "cts__power__internal__total": 0.00225964, + "cts__mem__peak": 1012528.0, + "cts__power__internal__total": 0.00225967, "cts__power__leakage__total": 2.62493e-07, - "cts__power__switching__total": 0.00219355, - "cts__power__total": 0.00445345, + "cts__power__switching__total": 0.00219979, + "cts__power__total": 0.00445973, "cts__route__wirelength__estimated": 63522.2, - "cts__runtime__total": "0:17.86", + "cts__runtime__total": "0:11.66", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, "cts__timing__drv__max_cap_limit": 1, @@ -41,10 +41,10 @@ "cts__timing__drv__max_slew_limit": 0.585108, "cts__timing__drv__setup_violation_count": 0, "cts__timing__setup__tns": 0, - "cts__timing__setup__ws": 22.5091, + "cts__timing__setup__ws": 22.2414, "design__io__hpwl": 28062723, "design__violations": 0, - "detailedplace__cpu__total": 14.57, + "detailedplace__cpu__total": 9.41, "detailedplace__design__core__area": 136198, "detailedplace__design__die__area": 139408, "detailedplace__design__instance__area": 119955, @@ -62,13 +62,13 @@ "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 10, - "detailedplace__mem__peak": 703984.0, + "detailedplace__mem__peak": 705024.0, "detailedplace__power__internal__total": 0.00033438, "detailedplace__power__leakage__total": 2.46076e-07, - "detailedplace__power__switching__total": 8.24296e-14, + "detailedplace__power__switching__total": 8.23736e-14, "detailedplace__power__total": 0.000334626, "detailedplace__route__wirelength__estimated": 62778.2, - "detailedplace__runtime__total": "0:14.97", + "detailedplace__runtime__total": "0:09.83", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, "detailedplace__timing__drv__max_cap_limit": 0.971797, @@ -77,31 +77,31 @@ "detailedplace__timing__drv__max_slew": 0, "detailedplace__timing__drv__max_slew_limit": 0.937366, "detailedplace__timing__drv__setup_violation_count": 17, - "detailedplace__timing__setup__tns": -442.059, - "detailedplace__timing__setup__ws": -29.2718, + "detailedplace__timing__setup__tns": -433.868, + "detailedplace__timing__setup__ws": -28.8544, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, "detailedroute__antenna_diodes_count": 0, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 11, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 2459, - "detailedroute__route__drc_errors__iter:2": 63, - "detailedroute__route__drc_errors__iter:3": 11, + "detailedroute__route__drc_errors__iter:1": 2453, + "detailedroute__route__drc_errors__iter:2": 60, + "detailedroute__route__drc_errors__iter:3": 10, "detailedroute__route__drc_errors__iter:4": 0, "detailedroute__route__net": 23325, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 53421, + "detailedroute__route__vias": 53413, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 53421, - "detailedroute__route__wirelength": 63959, - "detailedroute__route__wirelength__iter:1": 64145, - "detailedroute__route__wirelength__iter:2": 63957, - "detailedroute__route__wirelength__iter:3": 63959, - "detailedroute__route__wirelength__iter:4": 63959, - "finish__clock__skew__hold": 119.396, - "finish__clock__skew__setup": 94.9239, - "finish__cpu__total": 172.43, + "detailedroute__route__vias__singlecut": 53413, + "detailedroute__route__wirelength": 63961, + "detailedroute__route__wirelength__iter:1": 64146, + "detailedroute__route__wirelength__iter:2": 63959, + "detailedroute__route__wirelength__iter:3": 63961, + "detailedroute__route__wirelength__iter:4": 63961, + "finish__clock__skew__hold": 119.318, + "finish__clock__skew__setup": 94.8464, + "finish__cpu__total": 136.67, "finish__design__core__area": 136198, "finish__design__die__area": 139408, "finish__design__instance__area": 119971, @@ -113,35 +113,35 @@ "finish__design__instance__utilization": 0.880858, "finish__design__instance__utilization__stdcell": 0.0317415, "finish__design__io": 4162, - "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.766304, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.0118673, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.053011, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.659097, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.716989, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.659097, + "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.766298, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.0118914, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0531012, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.660675, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.716899, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.660675, "finish__flow__errors__count": 0, - "finish__flow__warnings__count": 11, - "finish__mem__peak": 2262988.0, - "finish__power__internal__total": 0.00224579, + "finish__flow__warnings__count": 10, + "finish__mem__peak": 2262392.0, + "finish__power__internal__total": 0.00224583, "finish__power__leakage__total": 2.62493e-07, - "finish__power__switching__total": 0.00186535, - "finish__power__total": 0.0041114, - "finish__runtime__total": "2:54.86", + "finish__power__switching__total": 0.00187145, + "finish__power__total": 0.00411754, + "finish__runtime__total": "2:23.89", "finish__timing__drv__hold_violation_count": 0, "finish__timing__drv__max_cap": 0, "finish__timing__drv__max_cap_limit": 1, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, "finish__timing__drv__max_slew": 0, - "finish__timing__drv__max_slew_limit": 0.791854, + "finish__timing__drv__max_slew_limit": 0.791633, "finish__timing__drv__setup_violation_count": 0, "finish__timing__setup__tns": 0, - "finish__timing__setup__ws": 25.711, - "finish__timing__wns_percent_delay": 5.029162, - "finish_merge__cpu__total": 4.22, - "finish_merge__mem__peak": 575808.0, - "finish_merge__runtime__total": "0:04.55", - "floorplan__cpu__total": 4.39, + "finish__timing__setup__ws": 25.4451, + "finish__timing__wns_percent_delay": 4.969168, + "finish_merge__cpu__total": 3.02, + "finish_merge__mem__peak": 576524.0, + "finish_merge__runtime__total": "0:03.37", + "floorplan__cpu__total": 2.99, "floorplan__design__core__area": 136198, "floorplan__design__die__area": 139408, "floorplan__design__instance__area": 119463, @@ -157,29 +157,32 @@ "floorplan__design__io": 4162, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 12, - "floorplan__mem__peak": 274424.0, + "floorplan__mem__peak": 275384.0, "floorplan__power__internal__total": 0.000334235, "floorplan__power__leakage__total": 9.06102e-09, "floorplan__power__switching__total": 0, "floorplan__power__total": 0.000334244, - "floorplan__runtime__total": "0:04.58", - "floorplan__timing__setup__tns": -529.73, - "floorplan__timing__setup__ws": -32.4545, - "floorplan_io__cpu__total": 3.26, - "floorplan_io__mem__peak": 260540.0, - "floorplan_io__runtime__total": "0:03.43", - "floorplan_macro__cpu__total": 84.86, - "floorplan_macro__mem__peak": 290012.0, - "floorplan_macro__runtime__total": "0:08.19", - "floorplan_pdn__cpu__total": 243.2, - "floorplan_pdn__mem__peak": 4575988.0, - "floorplan_pdn__runtime__total": "4:06.68", - "floorplan_tap__cpu__total": 2.72, - "floorplan_tap__mem__peak": 261952.0, - "floorplan_tap__runtime__total": "0:02.90", + "floorplan__runtime__total": "0:03.14", + "floorplan__timing__setup__tns": -510.322, + "floorplan__timing__setup__ws": -30.98, + "floorplan_io__cpu__total": 2.16, + "floorplan_io__mem__peak": 261392.0, + "floorplan_io__runtime__total": "0:02.36", + "floorplan_macro__cpu__total": 42.06, + "floorplan_macro__mem__peak": 289904.0, + "floorplan_macro__runtime__total": "0:06.08", + "floorplan_pdn__cpu__total": 91.58, + "floorplan_pdn__mem__peak": 4576680.0, + "floorplan_pdn__runtime__total": "1:34.35", + "floorplan_tap__cpu__total": 1.86, + "floorplan_tap__mem__peak": 263024.0, + "floorplan_tap__runtime__total": "0:01.99", + "floorplan_tdms__cpu__total": 0.03, + "floorplan_tdms__mem__peak": 100260.0, + "floorplan_tdms__runtime__total": "0:00.11", "flow__errors__count": 0, "flow__warnings__count": 10, - "globalplace__cpu__total": 58.35, + "globalplace__cpu__total": 79.81, "globalplace__design__core__area": 136198, "globalplace__design__die__area": 139408, "globalplace__design__instance__area": 119649, @@ -193,26 +196,26 @@ "globalplace__design__io": 4162, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 10, - "globalplace__mem__peak": 1039784.0, + "globalplace__mem__peak": 1040380.0, "globalplace__power__internal__total": 0.000334235, "globalplace__power__leakage__total": 9.06102e-09, "globalplace__power__switching__total": 0, "globalplace__power__total": 0.000334244, - "globalplace__runtime__total": "0:12.85", - "globalplace__timing__setup__tns": -541.713, - "globalplace__timing__setup__ws": -33.5441, - "globalplace_io__cpu__total": 5.6, - "globalplace_io__mem__peak": 265876.0, - "globalplace_io__runtime__total": "0:05.79", - "globalplace_skip_io__cpu__total": 151.27, - "globalplace_skip_io__mem__peak": 302792.0, - "globalplace_skip_io__runtime__total": "0:09.48", + "globalplace__runtime__total": "0:12.84", + "globalplace__timing__setup__tns": -522.299, + "globalplace__timing__setup__ws": -32.0597, + "globalplace_io__cpu__total": 3.9, + "globalplace_io__mem__peak": 266104.0, + "globalplace_io__runtime__total": "0:04.08", + "globalplace_skip_io__cpu__total": 223.03, + "globalplace_skip_io__mem__peak": 303524.0, + "globalplace_skip_io__runtime__total": "0:18.39", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, "globalroute__antenna_diodes_count": 0, - "globalroute__clock__skew__hold": 114.688, - "globalroute__clock__skew__setup": 93.8209, - "globalroute__cpu__total": 33.32, + "globalroute__clock__skew__hold": 114.614, + "globalroute__clock__skew__setup": 93.7467, + "globalroute__cpu__total": 20.82, "globalroute__design__core__area": 136198, "globalroute__design__die__area": 139408, "globalroute__design__instance__area": 119971, @@ -232,14 +235,14 @@ "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 11, - "globalroute__mem__peak": 1489600.0, - "globalroute__power__internal__total": 0.00224655, + "globalroute__mem__peak": 1491060.0, + "globalroute__power__internal__total": 0.00224659, "globalroute__power__leakage__total": 2.62493e-07, - "globalroute__power__switching__total": 0.00218349, - "globalroute__power__total": 0.00443031, + "globalroute__power__switching__total": 0.00218973, + "globalroute__power__total": 0.00443658, "globalroute__route__wirelength__estimated": 63522.2, - "globalroute__runtime__total": "0:27.24", - "globalroute__timing__clock__slack": 26.853, + "globalroute__runtime__total": "0:17.92", + "globalroute__timing__clock__slack": 26.602, "globalroute__timing__drv__hold_violation_count": 0, "globalroute__timing__drv__max_cap": 0, "globalroute__timing__drv__max_cap_limit": 1, @@ -249,8 +252,8 @@ "globalroute__timing__drv__max_slew_limit": 0.798365, "globalroute__timing__drv__setup_violation_count": 0, "globalroute__timing__setup__tns": 0, - "globalroute__timing__setup__ws": 26.8534, - "placeopt__cpu__total": 12.99, + "globalroute__timing__setup__ws": 26.6018, + "placeopt__cpu__total": 8.93, "placeopt__design__core__area": 136198, "placeopt__design__die__area": 139408, "placeopt__design__instance__area": 119955, @@ -264,12 +267,12 @@ "placeopt__design__io": 4162, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 10, - "placeopt__mem__peak": 564212.0, + "placeopt__mem__peak": 565112.0, "placeopt__power__internal__total": 0.00033438, "placeopt__power__leakage__total": 2.46076e-07, - "placeopt__power__switching__total": 9.34831e-14, + "placeopt__power__switching__total": 9.33265e-14, "placeopt__power__total": 0.000334626, - "placeopt__runtime__total": "0:13.54", + "placeopt__runtime__total": "0:09.35", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, @@ -280,13 +283,13 @@ "placeopt__timing__drv__max_slew": 0, "placeopt__timing__drv__max_slew_limit": 0.937747, "placeopt__timing__drv__setup_violation_count": 17, - "placeopt__timing__setup__tns": -433.328, - "placeopt__timing__setup__ws": -29.1077, + "placeopt__timing__setup__tns": -425.139, + "placeopt__timing__setup__ws": -28.5556, "run__flow__design": "mock-array", - "run__flow__generate_date": "2024-09-19 14:26", + "run__flow__generate_date": "2024-09-26 21:20", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15759-g9136ba699", + "run__flow__openroad_version": "v2.0-15807-g036379d64", "run__flow__platform": "asap7", "run__flow__platform__capacitance_units": "1fF", "run__flow__platform__current_units": "1mA", @@ -295,14 +298,14 @@ "run__flow__platform__resistance_units": "1kohm", "run__flow__platform__time_units": "1ps", "run__flow__platform__voltage_units": "1v", - "run__flow__platform_commit": "N/A", - "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "f6f37847-6ac8-435b-a2dd-26365e2e56e5", - "run__flow__variant": "base", - "synth__cpu__total": 5.01, + "run__flow__platform_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__scripts_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__uuid": "4fba262e-d115-4f8c-bda4-275d5e50f6b6", + "run__flow__variant": "odb_0925", + "synth__cpu__total": 3.16, "synth__design__instance__area__stdcell": 17108.10774, "synth__design__instance__count__stdcell": 193.0, - "synth__mem__peak": 157952.0, - "synth__runtime__total": "0:05.28", - "total_time": "0:09:12.200000" + "synth__mem__peak": 158208.0, + "synth__runtime__total": "0:03.40", + "total_time": "0:05:42.760000" } \ No newline at end of file diff --git a/flow/designs/asap7/mock-array/rules-base.json b/flow/designs/asap7/mock-array/rules-base.json index 2fbe852db2..458d092077 100644 --- a/flow/designs/asap7/mock-array/rules-base.json +++ b/flow/designs/asap7/mock-array/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 17955.11, + "value": 19674.33, "compare": "<=" }, "constraints__clocks__count": { @@ -32,7 +32,7 @@ "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 73553, + "value": 73555, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -52,7 +52,7 @@ "compare": ">=" }, "finish__design__instance__area": { - "value": 137966, + "value": 137967, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { diff --git a/flow/designs/asap7/riscv32i/config.mk b/flow/designs/asap7/riscv32i/config.mk index ac45fce796..fe7eb0779e 100644 --- a/flow/designs/asap7/riscv32i/config.mk +++ b/flow/designs/asap7/riscv32i/config.mk @@ -3,7 +3,6 @@ export DESIGN_NAME = riscv_top export PLATFORM = asap7 export SYNTH_HIERARCHICAL = 1 -export RTLMP_FLOW = 1 export RTLMP_MIN_INST = 1000 export RTLMP_MAX_INST = 3500 diff --git a/flow/designs/asap7/riscv32i/metadata-base-ok.json b/flow/designs/asap7/riscv32i/metadata-base-ok.json index 6aab87b191..dd1ce09cdd 100644 --- a/flow/designs/asap7/riscv32i/metadata-base-ok.json +++ b/flow/designs/asap7/riscv32i/metadata-base-ok.json @@ -3,292 +3,295 @@ "constraints__clocks__details": [ "clk: 1260.0000" ], - "cts__clock__skew__hold": 44.1486, - "cts__clock__skew__setup": 40.8645, - "cts__cpu__total": 47.35, + "cts__clock__skew__hold": 47.4088, + "cts__clock__skew__setup": 44.1048, + "cts__cpu__total": 37.67, "cts__design__core__area": 5569.92, "cts__design__die__area": 7200, - "cts__design__instance__area": 2812.53, + "cts__design__instance__area": 2847.86, "cts__design__instance__area__macros": 1404.48, - "cts__design__instance__area__stdcell": 1408.05, - "cts__design__instance__count": 11470, + "cts__design__instance__area__stdcell": 1443.38, + "cts__design__instance__count": 11762, "cts__design__instance__count__hold_buffer": 0, "cts__design__instance__count__macros": 4, - "cts__design__instance__count__setup_buffer": 16, - "cts__design__instance__count__stdcell": 11466, - "cts__design__instance__displacement__max": 0.753, + "cts__design__instance__count__setup_buffer": 11, + "cts__design__instance__count__stdcell": 11758, + "cts__design__instance__displacement__max": 0.738, "cts__design__instance__displacement__mean": 0, - "cts__design__instance__displacement__total": 8.077, - "cts__design__instance__utilization": 0.504949, - "cts__design__instance__utilization__stdcell": 0.338031, + "cts__design__instance__displacement__total": 5.299, + "cts__design__instance__utilization": 0.511292, + "cts__design__instance__utilization__stdcell": 0.346512, "cts__design__io": 135, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 10, - "cts__mem__peak": 621024.0, - "cts__power__internal__total": 0.0105935, - "cts__power__leakage__total": 0.000517226, - "cts__power__switching__total": 0.00055338, - "cts__power__total": 0.0116641, - "cts__route__wirelength__estimated": 80734.3, - "cts__runtime__total": "0:47.80", + "cts__mem__peak": 637504.0, + "cts__power__internal__total": 0.0129277, + "cts__power__leakage__total": 0.000516871, + "cts__power__switching__total": 0.002222, + "cts__power__total": 0.0156666, + "cts__route__wirelength__estimated": 82571.3, + "cts__runtime__total": "0:38.29", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, - "cts__timing__drv__max_cap_limit": 0.663361, + "cts__timing__drv__max_cap_limit": 0.354017, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.468506, + "cts__timing__drv__max_slew_limit": 0.519607, "cts__timing__drv__setup_violation_count": 0, - "cts__timing__setup__tns": 0, - "cts__timing__setup__ws": 7.93776, - "design__io__hpwl": 10799875, + "cts__timing__setup__tns": -0.010103, + "cts__timing__setup__ws": 1.86196, + "design__io__hpwl": 10872826, "design__violations": 0, - "detailedplace__cpu__total": 14.78, + "detailedplace__cpu__total": 20.0, "detailedplace__design__core__area": 5569.92, "detailedplace__design__die__area": 7200, - "detailedplace__design__instance__area": 2774.77, + "detailedplace__design__instance__area": 2809.63, "detailedplace__design__instance__area__macros": 1404.48, - "detailedplace__design__instance__area__stdcell": 1370.29, - "detailedplace__design__instance__count": 11339, + "detailedplace__design__instance__area__stdcell": 1405.15, + "detailedplace__design__instance__count": 11637, "detailedplace__design__instance__count__macros": 4, - "detailedplace__design__instance__count__stdcell": 11335, - "detailedplace__design__instance__displacement__max": 3.411, - "detailedplace__design__instance__displacement__mean": 0.191, - "detailedplace__design__instance__displacement__total": 2172.32, - "detailedplace__design__instance__utilization": 0.49817, - "detailedplace__design__instance__utilization__stdcell": 0.328965, + "detailedplace__design__instance__count__stdcell": 11633, + "detailedplace__design__instance__displacement__max": 10.531, + "detailedplace__design__instance__displacement__mean": 0.198, + "detailedplace__design__instance__displacement__total": 2315.41, + "detailedplace__design__instance__utilization": 0.504428, + "detailedplace__design__instance__utilization__stdcell": 0.337334, "detailedplace__design__io": 135, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 10, - "detailedplace__mem__peak": 280944.0, - "detailedplace__power__internal__total": 0.00982262, - "detailedplace__power__leakage__total": 0.000517187, - "detailedplace__power__switching__total": 2.12611e-06, - "detailedplace__power__total": 0.0103419, - "detailedplace__route__wirelength__estimated": 80703.5, - "detailedplace__runtime__total": "0:14.99", + "detailedplace__mem__peak": 282448.0, + "detailedplace__power__internal__total": 0.0121429, + "detailedplace__power__leakage__total": 0.000516833, + "detailedplace__power__switching__total": 0.0016506, + "detailedplace__power__total": 0.0143103, + "detailedplace__route__wirelength__estimated": 82460.3, + "detailedplace__runtime__total": "0:20.19", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, - "detailedplace__timing__drv__max_cap_limit": 0.664645, + "detailedplace__timing__drv__max_cap_limit": 0.353007, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.468847, - "detailedplace__timing__drv__setup_violation_count": 703, - "detailedplace__timing__setup__tns": -30149.3, - "detailedplace__timing__setup__ws": -68.0934, + "detailedplace__timing__drv__max_slew_limit": 0.524139, + "detailedplace__timing__drv__setup_violation_count": 256, + "detailedplace__timing__setup__tns": -3218.78, + "detailedplace__timing__setup__ws": -26.5176, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, "detailedroute__antenna_diodes_count": 0, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 11, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 2527, - "detailedroute__route__drc_errors__iter:2": 265, - "detailedroute__route__drc_errors__iter:3": 192, - "detailedroute__route__drc_errors__iter:4": 3, + "detailedroute__route__drc_errors__iter:1": 2644, + "detailedroute__route__drc_errors__iter:2": 211, + "detailedroute__route__drc_errors__iter:3": 134, + "detailedroute__route__drc_errors__iter:4": 7, "detailedroute__route__drc_errors__iter:5": 0, - "detailedroute__route__net": 10876, + "detailedroute__route__net": 11174, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 120485, + "detailedroute__route__vias": 124675, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 120485, - "detailedroute__route__wirelength": 96683, - "detailedroute__route__wirelength__iter:1": 96879, - "detailedroute__route__wirelength__iter:2": 96678, - "detailedroute__route__wirelength__iter:3": 96681, - "detailedroute__route__wirelength__iter:4": 96681, - "detailedroute__route__wirelength__iter:5": 96683, - "finish__clock__skew__hold": 45.1809, - "finish__clock__skew__setup": 42.2614, - "finish__cpu__total": 56.6, + "detailedroute__route__vias__singlecut": 124675, + "detailedroute__route__wirelength": 99200, + "detailedroute__route__wirelength__iter:1": 99410, + "detailedroute__route__wirelength__iter:2": 99215, + "detailedroute__route__wirelength__iter:3": 99197, + "detailedroute__route__wirelength__iter:4": 99201, + "detailedroute__route__wirelength__iter:5": 99200, + "finish__clock__skew__hold": 51.881, + "finish__clock__skew__setup": 49.6891, + "finish__cpu__total": 59.13, "finish__design__core__area": 5569.92, "finish__design__die__area": 7200, - "finish__design__instance__area": 2812.53, + "finish__design__instance__area": 2848.32, "finish__design__instance__area__macros": 1404.48, - "finish__design__instance__area__stdcell": 1408.05, - "finish__design__instance__count": 11470, + "finish__design__instance__area__stdcell": 1443.84, + "finish__design__instance__count": 11767, "finish__design__instance__count__macros": 4, - "finish__design__instance__count__stdcell": 11466, - "finish__design__instance__utilization": 0.504949, - "finish__design__instance__utilization__stdcell": 0.338031, + "finish__design__instance__count__stdcell": 11763, + "finish__design__instance__utilization": 0.511375, + "finish__design__instance__utilization__stdcell": 0.346624, "finish__design__io": 135, - "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.766828, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.00311546, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0141028, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0140147, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.755897, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0140147, + "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.764078, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.0059394, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0170905, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0170404, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.75291, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0170404, "finish__flow__errors__count": 0, "finish__flow__warnings__count": 11, - "finish__mem__peak": 586736.0, - "finish__power__internal__total": 0.0105928, - "finish__power__leakage__total": 0.000517225, - "finish__power__switching__total": 0.000581692, - "finish__power__total": 0.0116917, - "finish__runtime__total": "0:57.03", + "finish__mem__peak": 584984.0, + "finish__power__internal__total": 0.0129325, + "finish__power__leakage__total": 0.000516871, + "finish__power__switching__total": 0.00241958, + "finish__power__total": 0.0158689, + "finish__runtime__total": "0:59.65", "finish__timing__drv__hold_violation_count": 0, "finish__timing__drv__max_cap": 0, - "finish__timing__drv__max_cap_limit": 0.60507, + "finish__timing__drv__max_cap_limit": 0.224805, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, "finish__timing__drv__max_slew": 0, - "finish__timing__drv__max_slew_limit": 0.511326, - "finish__timing__drv__setup_violation_count": 697, - "finish__timing__setup__tns": -28927.7, - "finish__timing__setup__ws": -72.2188, - "finish__timing__wns_percent_delay": -5.031837, - "finish_merge__cpu__total": 2.92, - "finish_merge__mem__peak": 491976.0, - "finish_merge__runtime__total": "0:03.23", - "floorplan__cpu__total": 7.66, + "finish__timing__drv__max_slew_limit": 0.483512, + "finish__timing__drv__setup_violation_count": 728, + "finish__timing__setup__tns": -20687.7, + "finish__timing__setup__ws": -67.4591, + "finish__timing__wns_percent_delay": -4.757921, + "finish_merge__cpu__total": 3.02, + "finish_merge__mem__peak": 494392.0, + "finish_merge__runtime__total": "0:03.40", + "floorplan__cpu__total": 12.51, "floorplan__design__core__area": 5569.92, "floorplan__design__die__area": 7200, - "floorplan__design__instance__area": 2591.92, + "floorplan__design__instance__area": 2618.89, "floorplan__design__instance__area__macros": 1404.48, - "floorplan__design__instance__area__stdcell": 1187.44, - "floorplan__design__instance__count": 10341, + "floorplan__design__instance__area__stdcell": 1214.41, + "floorplan__design__instance__count": 10636, "floorplan__design__instance__count__hold_buffer": 0, "floorplan__design__instance__count__macros": 4, "floorplan__design__instance__count__setup_buffer": 0, - "floorplan__design__instance__count__stdcell": 10337, - "floorplan__design__instance__utilization": 0.465342, - "floorplan__design__instance__utilization__stdcell": 0.285069, + "floorplan__design__instance__count__stdcell": 10632, + "floorplan__design__instance__utilization": 0.470184, + "floorplan__design__instance__utilization__stdcell": 0.291544, "floorplan__design__io": 135, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 12, - "floorplan__mem__peak": 254600.0, - "floorplan__power__internal__total": 0.00982073, - "floorplan__power__leakage__total": 0.000516851, - "floorplan__power__switching__total": 8.76709e-07, - "floorplan__power__total": 0.0103385, - "floorplan__runtime__total": "0:07.83", + "floorplan__mem__peak": 255072.0, + "floorplan__power__internal__total": 0.0118529, + "floorplan__power__leakage__total": 0.000516572, + "floorplan__power__switching__total": 0.00103501, + "floorplan__power__total": 0.0134045, + "floorplan__runtime__total": "0:12.67", "floorplan__timing__setup__tns": 0, - "floorplan__timing__setup__ws": 131.718, - "floorplan_io__cpu__total": 1.87, - "floorplan_io__mem__peak": 225584.0, - "floorplan_io__runtime__total": "0:02.00", - "floorplan_macro__cpu__total": 98.74, - "floorplan_macro__mem__peak": 304276.0, - "floorplan_macro__runtime__total": "0:40.86", - "floorplan_pdn__cpu__total": 2.07, - "floorplan_pdn__mem__peak": 234524.0, - "floorplan_pdn__runtime__total": "0:02.22", - "floorplan_tap__cpu__total": 1.83, - "floorplan_tap__mem__peak": 219684.0, - "floorplan_tap__runtime__total": "0:02.01", + "floorplan__timing__setup__ws": 137.345, + "floorplan_io__cpu__total": 1.85, + "floorplan_io__mem__peak": 226560.0, + "floorplan_io__runtime__total": "0:01.99", + "floorplan_macro__cpu__total": 96.24, + "floorplan_macro__mem__peak": 311888.0, + "floorplan_macro__runtime__total": "0:39.41", + "floorplan_pdn__cpu__total": 2.16, + "floorplan_pdn__mem__peak": 235520.0, + "floorplan_pdn__runtime__total": "0:02.31", + "floorplan_tap__cpu__total": 1.89, + "floorplan_tap__mem__peak": 220000.0, + "floorplan_tap__runtime__total": "0:02.04", + "floorplan_tdms__cpu__total": 0.1, + "floorplan_tdms__mem__peak": 99764.0, + "floorplan_tdms__runtime__total": "0:00.15", "flow__errors__count": 0, "flow__warnings__count": 10, - "globalplace__cpu__total": 200.49, + "globalplace__cpu__total": 447.61, "globalplace__design__core__area": 5569.92, "globalplace__design__die__area": 7200, - "globalplace__design__instance__area": 2615.33, + "globalplace__design__instance__area": 2642.31, "globalplace__design__instance__area__macros": 1404.48, - "globalplace__design__instance__area__stdcell": 1210.85, - "globalplace__design__instance__count": 11144, + "globalplace__design__instance__area__stdcell": 1237.83, + "globalplace__design__instance__count": 11439, "globalplace__design__instance__count__macros": 4, - "globalplace__design__instance__count__stdcell": 11140, - "globalplace__design__instance__utilization": 0.469546, - "globalplace__design__instance__utilization__stdcell": 0.29069, + "globalplace__design__instance__count__stdcell": 11435, + "globalplace__design__instance__utilization": 0.474388, + "globalplace__design__instance__utilization__stdcell": 0.297166, "globalplace__design__io": 135, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 10, - "globalplace__mem__peak": 631872.0, - "globalplace__power__internal__total": 0.00982073, - "globalplace__power__leakage__total": 0.000516851, - "globalplace__power__switching__total": 1.00831e-06, - "globalplace__power__total": 0.0103386, - "globalplace__runtime__total": "0:48.88", - "globalplace__timing__setup__tns": -98686.3, - "globalplace__timing__setup__ws": -186.203, - "globalplace_io__cpu__total": 1.87, - "globalplace_io__mem__peak": 228884.0, - "globalplace_io__runtime__total": "0:02.00", - "globalplace_skip_io__cpu__total": 128.91, - "globalplace_skip_io__mem__peak": 245280.0, - "globalplace_skip_io__runtime__total": "0:06.05", + "globalplace__mem__peak": 635024.0, + "globalplace__power__internal__total": 0.0118616, + "globalplace__power__leakage__total": 0.000516572, + "globalplace__power__switching__total": 0.0015824, + "globalplace__power__total": 0.0139606, + "globalplace__runtime__total": "1:14.86", + "globalplace__timing__setup__tns": -87184.7, + "globalplace__timing__setup__ws": -150.939, + "globalplace_io__cpu__total": 1.86, + "globalplace_io__mem__peak": 229368.0, + "globalplace_io__runtime__total": "0:02.04", + "globalplace_skip_io__cpu__total": 712.5, + "globalplace_skip_io__mem__peak": 245768.0, + "globalplace_skip_io__runtime__total": "0:25.55", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, "globalroute__antenna_diodes_count": 0, - "globalroute__clock__skew__hold": 48.7464, - "globalroute__clock__skew__setup": 45.9119, - "globalroute__cpu__total": 60.46, + "globalroute__clock__skew__hold": 51.648, + "globalroute__clock__skew__setup": 49.6781, + "globalroute__cpu__total": 68.1, "globalroute__design__core__area": 5569.92, "globalroute__design__die__area": 7200, - "globalroute__design__instance__area": 2812.53, + "globalroute__design__instance__area": 2848.32, "globalroute__design__instance__area__macros": 1404.48, - "globalroute__design__instance__area__stdcell": 1408.05, - "globalroute__design__instance__count": 11470, + "globalroute__design__instance__area__stdcell": 1443.84, + "globalroute__design__instance__count": 11767, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 4, - "globalroute__design__instance__count__setup_buffer": 0, - "globalroute__design__instance__count__stdcell": 11466, - "globalroute__design__instance__displacement__max": 0, + "globalroute__design__instance__count__setup_buffer": 5, + "globalroute__design__instance__count__stdcell": 11763, + "globalroute__design__instance__displacement__max": 0.486, "globalroute__design__instance__displacement__mean": 0, - "globalroute__design__instance__displacement__total": 0, - "globalroute__design__instance__utilization": 0.504949, - "globalroute__design__instance__utilization__stdcell": 0.338031, + "globalroute__design__instance__displacement__total": 1.134, + "globalroute__design__instance__utilization": 0.511375, + "globalroute__design__instance__utilization__stdcell": 0.346624, "globalroute__design__io": 135, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 11, - "globalroute__mem__peak": 728404.0, - "globalroute__power__internal__total": 0.0105926, - "globalroute__power__leakage__total": 0.000517225, - "globalroute__power__switching__total": 0.000574481, - "globalroute__power__total": 0.0116844, - "globalroute__route__wirelength__estimated": 80734.3, - "globalroute__runtime__total": "0:38.23", - "globalroute__timing__clock__slack": 0.598, + "globalroute__mem__peak": 731448.0, + "globalroute__power__internal__total": 0.012929, + "globalroute__power__leakage__total": 0.000516871, + "globalroute__power__switching__total": 0.00231243, + "globalroute__power__total": 0.0157583, + "globalroute__route__wirelength__estimated": 82575.1, + "globalroute__runtime__total": "0:44.23", + "globalroute__timing__clock__slack": 12.137, "globalroute__timing__drv__hold_violation_count": 0, "globalroute__timing__drv__max_cap": 0, - "globalroute__timing__drv__max_cap_limit": 0.591084, + "globalroute__timing__drv__max_cap_limit": 0.352894, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, "globalroute__timing__drv__max_slew": 0, - "globalroute__timing__drv__max_slew_limit": 0.556142, + "globalroute__timing__drv__max_slew_limit": 0.535672, "globalroute__timing__drv__setup_violation_count": 0, "globalroute__timing__setup__tns": 0, - "globalroute__timing__setup__ws": 0.59841, - "placeopt__cpu__total": 15.46, + "globalroute__timing__setup__ws": 12.1368, + "placeopt__cpu__total": 20.84, "placeopt__design__core__area": 5569.92, "placeopt__design__die__area": 7200, - "placeopt__design__instance__area": 2774.77, + "placeopt__design__instance__area": 2809.63, "placeopt__design__instance__area__macros": 1404.48, - "placeopt__design__instance__area__stdcell": 1370.29, - "placeopt__design__instance__count": 11339, + "placeopt__design__instance__area__stdcell": 1405.15, + "placeopt__design__instance__count": 11637, "placeopt__design__instance__count__macros": 4, - "placeopt__design__instance__count__stdcell": 11335, - "placeopt__design__instance__utilization": 0.49817, - "placeopt__design__instance__utilization__stdcell": 0.328965, + "placeopt__design__instance__count__stdcell": 11633, + "placeopt__design__instance__utilization": 0.504428, + "placeopt__design__instance__utilization__stdcell": 0.337334, "placeopt__design__io": 135, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 10, - "placeopt__mem__peak": 514456.0, - "placeopt__power__internal__total": 0.00982262, - "placeopt__power__leakage__total": 0.000517187, - "placeopt__power__switching__total": 2.17108e-06, - "placeopt__power__total": 0.010342, - "placeopt__runtime__total": "0:15.89", + "placeopt__mem__peak": 515404.0, + "placeopt__power__internal__total": 0.0121428, + "placeopt__power__leakage__total": 0.000516833, + "placeopt__power__switching__total": 0.00165579, + "placeopt__power__total": 0.0143154, + "placeopt__runtime__total": "0:21.20", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.661875, + "placeopt__timing__drv__max_cap_limit": 0.352009, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.494391, - "placeopt__timing__drv__setup_violation_count": 650, - "placeopt__timing__setup__tns": -23605.9, - "placeopt__timing__setup__ws": -58.8162, + "placeopt__timing__drv__max_slew_limit": 0.519217, + "placeopt__timing__drv__setup_violation_count": 232, + "placeopt__timing__setup__tns": -2468.15, + "placeopt__timing__setup__ws": -23.4794, "run__flow__design": "riscv32i", - "run__flow__generate_date": "2024-09-19 14:18", + "run__flow__generate_date": "2024-09-27 17:53", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15759-g9136ba699", + "run__flow__openroad_version": "v2.0-16089-gd06039e7d", "run__flow__platform": "asap7", "run__flow__platform__capacitance_units": "1fF", "run__flow__platform__current_units": "1mA", @@ -299,12 +302,12 @@ "run__flow__platform__voltage_units": "1v", "run__flow__platform_commit": "N/A", "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "81ca2aa9-1ae5-44ad-9b60-d94777c48566", + "run__flow__uuid": "5f191437-63ce-45c2-ac5c-25dde4b73bdc", "run__flow__variant": "base", - "synth__cpu__total": 29.39, - "synth__design__instance__area__stdcell": 2563.37894, - "synth__design__instance__count__stdcell": 10341.0, - "synth__mem__peak": 155136.0, - "synth__runtime__total": "0:29.89", - "total_time": "0:05:18.910000" + "synth__cpu__total": 29.72, + "synth__design__instance__area__stdcell": 2590.35194, + "synth__design__instance__count__stdcell": 10636.0, + "synth__mem__peak": 155392.0, + "synth__runtime__total": "0:30.16", + "total_time": "0:06:18.140000" } \ No newline at end of file diff --git a/flow/designs/asap7/riscv32i/rules-base.json b/flow/designs/asap7/riscv32i/rules-base.json index a3f543d0de..041c1a64a8 100644 --- a/flow/designs/asap7/riscv32i/rules-base.json +++ b/flow/designs/asap7/riscv32i/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 2916.99, + "value": 2947.89, "compare": "<=" }, "constraints__clocks__count": { @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 3020, + "value": 3191, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 11839, + "value": 13035, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,11 +20,11 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 1030, + "value": 1134, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 1030, + "value": 1134, "compare": "<=" }, "globalroute__antenna_diodes_count": { @@ -32,7 +32,7 @@ "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 110901, + "value": 111130, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -48,15 +48,15 @@ "compare": "<=" }, "finish__timing__setup__ws": { - "value": -135.21, + "value": -130.12, "compare": ">=" }, "finish__design__instance__area": { - "value": 3052, + "value": 3234, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 732, + "value": 764, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { @@ -64,7 +64,7 @@ "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -10.0, + "value": -15.61, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/asap7/swerv_wrapper/config.mk b/flow/designs/asap7/swerv_wrapper/config.mk index 2c2cb6e1ec..80fa22d9c7 100644 --- a/flow/designs/asap7/swerv_wrapper/config.mk +++ b/flow/designs/asap7/swerv_wrapper/config.mk @@ -2,7 +2,6 @@ export DESIGN_NAME = swerv_wrapper export PLATFORM = asap7 export SYNTH_HIERARCHICAL = 1 -export RTLMP_FLOW = 1 # RTL_MP Settings export RTLMP_MAX_INST = 30000 export RTLMP_MIN_INST = 5000 diff --git a/flow/designs/asap7/swerv_wrapper/metadata-base-ok.json b/flow/designs/asap7/swerv_wrapper/metadata-base-ok.json index 1613a34672..31f06bad9d 100644 --- a/flow/designs/asap7/swerv_wrapper/metadata-base-ok.json +++ b/flow/designs/asap7/swerv_wrapper/metadata-base-ok.json @@ -3,35 +3,35 @@ "constraints__clocks__details": [ "core_clock: 2500.0000" ], - "cts__clock__skew__hold": 251.858, - "cts__clock__skew__setup": 261.224, - "cts__cpu__total": 261.58, + "cts__clock__skew__hold": 243.478, + "cts__clock__skew__setup": 254.96, + "cts__cpu__total": 202.98, "cts__design__core__area": 318395, "cts__design__die__area": 330000, - "cts__design__instance__area": 50119.1, + "cts__design__instance__area": 50122.1, "cts__design__instance__area__macros": 33343.6, - "cts__design__instance__area__stdcell": 16775.5, - "cts__design__instance__count": 159758, + "cts__design__instance__area__stdcell": 16778.5, + "cts__design__instance__count": 159778, "cts__design__instance__count__hold_buffer": 0, "cts__design__instance__count__macros": 28, "cts__design__instance__count__setup_buffer": 0, - "cts__design__instance__count__stdcell": 159730, + "cts__design__instance__count__stdcell": 159750, "cts__design__instance__displacement__max": 0, "cts__design__instance__displacement__mean": 0, "cts__design__instance__displacement__total": 0, - "cts__design__instance__utilization": 0.157411, - "cts__design__instance__utilization__stdcell": 0.0588506, + "cts__design__instance__utilization": 0.157421, + "cts__design__instance__utilization__stdcell": 0.0588612, "cts__design__io": 1416, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 18, - "cts__mem__peak": 2210668.0, - "cts__power__internal__total": 0.0519049, + "cts__mem__peak": 2195536.0, + "cts__power__internal__total": 0.0519959, "cts__power__leakage__total": 0.00361985, - "cts__power__switching__total": 0.0084023, - "cts__power__total": 0.0639271, - "cts__route__wirelength__estimated": 1382510.0, - "cts__runtime__total": "4:23.49", + "cts__power__switching__total": 0.00839734, + "cts__power__total": 0.0640131, + "cts__route__wirelength__estimated": 1382400.0, + "cts__runtime__total": "3:24.85", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, "cts__timing__drv__max_cap_limit": 0.629151, @@ -41,34 +41,34 @@ "cts__timing__drv__max_slew_limit": 0.0667307, "cts__timing__drv__setup_violation_count": 0, "cts__timing__setup__tns": 0, - "cts__timing__setup__ws": 1156.62, + "cts__timing__setup__ws": 1157.69, "design__io__hpwl": 309895352, "design__violations": 0, - "detailedplace__cpu__total": 234.16, + "detailedplace__cpu__total": 183.72, "detailedplace__design__core__area": 318395, "detailedplace__design__die__area": 330000, - "detailedplace__design__instance__area": 49671.5, + "detailedplace__design__instance__area": 49669.9, "detailedplace__design__instance__area__macros": 33343.6, - "detailedplace__design__instance__area__stdcell": 16327.9, - "detailedplace__design__instance__count": 158383, + "detailedplace__design__instance__area__stdcell": 16326.3, + "detailedplace__design__instance__count": 158386, "detailedplace__design__instance__count__macros": 28, - "detailedplace__design__instance__count__stdcell": 158355, - "detailedplace__design__instance__displacement__max": 12.643, + "detailedplace__design__instance__count__stdcell": 158358, + "detailedplace__design__instance__displacement__max": 12.577, "detailedplace__design__instance__displacement__mean": 0.145, - "detailedplace__design__instance__displacement__total": 23054.2, - "detailedplace__design__instance__utilization": 0.156006, - "detailedplace__design__instance__utilization__stdcell": 0.0572805, + "detailedplace__design__instance__displacement__total": 23050, + "detailedplace__design__instance__utilization": 0.156001, + "detailedplace__design__instance__utilization__stdcell": 0.0572747, "detailedplace__design__io": 1416, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 18, - "detailedplace__mem__peak": 1816440.0, - "detailedplace__power__internal__total": 0.047303, - "detailedplace__power__leakage__total": 0.00361943, - "detailedplace__power__switching__total": 0.0059619, - "detailedplace__power__total": 0.0568843, - "detailedplace__route__wirelength__estimated": 1388460.0, - "detailedplace__runtime__total": "3:55.62", + "detailedplace__mem__peak": 1826220.0, + "detailedplace__power__internal__total": 0.0472997, + "detailedplace__power__leakage__total": 0.00361942, + "detailedplace__power__switching__total": 0.00596141, + "detailedplace__power__total": 0.0568806, + "detailedplace__route__wirelength__estimated": 1388360.0, + "detailedplace__runtime__total": "3:05.20", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, "detailedplace__timing__drv__max_cap_limit": 0.629151, @@ -84,186 +84,68 @@ "detailedroute__antenna_diodes_count": 0, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 19, - "detailedroute__route__drc_errors": 2, - "detailedroute__route__drc_errors__iter:1": 46650, - "detailedroute__route__drc_errors__iter:10": 2, - "detailedroute__route__drc_errors__iter:11": 2, - "detailedroute__route__drc_errors__iter:12": 2, - "detailedroute__route__drc_errors__iter:13": 2, - "detailedroute__route__drc_errors__iter:14": 2, - "detailedroute__route__drc_errors__iter:15": 2, - "detailedroute__route__drc_errors__iter:16": 2, - "detailedroute__route__drc_errors__iter:17": 2, - "detailedroute__route__drc_errors__iter:18": 2, - "detailedroute__route__drc_errors__iter:19": 2, - "detailedroute__route__drc_errors__iter:2": 9094, - "detailedroute__route__drc_errors__iter:20": 2, - "detailedroute__route__drc_errors__iter:21": 2, - "detailedroute__route__drc_errors__iter:22": 2, - "detailedroute__route__drc_errors__iter:23": 2, - "detailedroute__route__drc_errors__iter:24": 2, - "detailedroute__route__drc_errors__iter:25": 2, - "detailedroute__route__drc_errors__iter:26": 2, - "detailedroute__route__drc_errors__iter:27": 2, - "detailedroute__route__drc_errors__iter:28": 2, - "detailedroute__route__drc_errors__iter:29": 2, - "detailedroute__route__drc_errors__iter:3": 7100, - "detailedroute__route__drc_errors__iter:30": 2, - "detailedroute__route__drc_errors__iter:31": 2, - "detailedroute__route__drc_errors__iter:32": 2, - "detailedroute__route__drc_errors__iter:33": 2, - "detailedroute__route__drc_errors__iter:34": 2, - "detailedroute__route__drc_errors__iter:35": 2, - "detailedroute__route__drc_errors__iter:36": 2, - "detailedroute__route__drc_errors__iter:37": 2, - "detailedroute__route__drc_errors__iter:38": 2, - "detailedroute__route__drc_errors__iter:39": 2, - "detailedroute__route__drc_errors__iter:4": 328, - "detailedroute__route__drc_errors__iter:40": 2, - "detailedroute__route__drc_errors__iter:41": 2, - "detailedroute__route__drc_errors__iter:42": 2, - "detailedroute__route__drc_errors__iter:43": 2, - "detailedroute__route__drc_errors__iter:44": 2, - "detailedroute__route__drc_errors__iter:45": 2, - "detailedroute__route__drc_errors__iter:46": 2, - "detailedroute__route__drc_errors__iter:47": 2, - "detailedroute__route__drc_errors__iter:48": 2, - "detailedroute__route__drc_errors__iter:49": 2, - "detailedroute__route__drc_errors__iter:5": 11, - "detailedroute__route__drc_errors__iter:50": 2, - "detailedroute__route__drc_errors__iter:51": 2, - "detailedroute__route__drc_errors__iter:52": 2, - "detailedroute__route__drc_errors__iter:53": 2, - "detailedroute__route__drc_errors__iter:54": 2, - "detailedroute__route__drc_errors__iter:55": 2, - "detailedroute__route__drc_errors__iter:56": 2, - "detailedroute__route__drc_errors__iter:57": 2, - "detailedroute__route__drc_errors__iter:58": 2, - "detailedroute__route__drc_errors__iter:59": 2, - "detailedroute__route__drc_errors__iter:6": 2, - "detailedroute__route__drc_errors__iter:60": 2, - "detailedroute__route__drc_errors__iter:61": 2, - "detailedroute__route__drc_errors__iter:62": 2, - "detailedroute__route__drc_errors__iter:63": 2, - "detailedroute__route__drc_errors__iter:64": 2, - "detailedroute__route__drc_errors__iter:65": 2, - "detailedroute__route__drc_errors__iter:7": 2, - "detailedroute__route__drc_errors__iter:8": 2, - "detailedroute__route__drc_errors__iter:9": 2, + "detailedroute__route__drc_errors": 0, + "detailedroute__route__drc_errors__iter:1": 46452, + "detailedroute__route__drc_errors__iter:2": 9133, + "detailedroute__route__drc_errors__iter:3": 7411, + "detailedroute__route__drc_errors__iter:4": 373, + "detailedroute__route__drc_errors__iter:5": 21, + "detailedroute__route__drc_errors__iter:6": 0, "detailedroute__route__net": 125152, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 1421326, + "detailedroute__route__vias": 1420474, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 1421326, - "detailedroute__route__wirelength": 1571906, - "detailedroute__route__wirelength__iter:1": 1571832, - "detailedroute__route__wirelength__iter:10": 1571906, - "detailedroute__route__wirelength__iter:11": 1571906, - "detailedroute__route__wirelength__iter:12": 1571906, - "detailedroute__route__wirelength__iter:13": 1571906, - "detailedroute__route__wirelength__iter:14": 1571906, - "detailedroute__route__wirelength__iter:15": 1571906, - "detailedroute__route__wirelength__iter:16": 1571906, - "detailedroute__route__wirelength__iter:17": 1571906, - "detailedroute__route__wirelength__iter:18": 1571906, - "detailedroute__route__wirelength__iter:19": 1571906, - "detailedroute__route__wirelength__iter:2": 1570903, - "detailedroute__route__wirelength__iter:20": 1571906, - "detailedroute__route__wirelength__iter:21": 1571906, - "detailedroute__route__wirelength__iter:22": 1571906, - "detailedroute__route__wirelength__iter:23": 1571906, - "detailedroute__route__wirelength__iter:24": 1571906, - "detailedroute__route__wirelength__iter:25": 1571906, - "detailedroute__route__wirelength__iter:26": 1571906, - "detailedroute__route__wirelength__iter:27": 1571906, - "detailedroute__route__wirelength__iter:28": 1571906, - "detailedroute__route__wirelength__iter:29": 1571906, - "detailedroute__route__wirelength__iter:3": 1571399, - "detailedroute__route__wirelength__iter:30": 1571906, - "detailedroute__route__wirelength__iter:31": 1571906, - "detailedroute__route__wirelength__iter:32": 1571906, - "detailedroute__route__wirelength__iter:33": 1571906, - "detailedroute__route__wirelength__iter:34": 1571906, - "detailedroute__route__wirelength__iter:35": 1571906, - "detailedroute__route__wirelength__iter:36": 1571906, - "detailedroute__route__wirelength__iter:37": 1571906, - "detailedroute__route__wirelength__iter:38": 1571906, - "detailedroute__route__wirelength__iter:39": 1571906, - "detailedroute__route__wirelength__iter:4": 1571893, - "detailedroute__route__wirelength__iter:40": 1571906, - "detailedroute__route__wirelength__iter:41": 1571906, - "detailedroute__route__wirelength__iter:42": 1571906, - "detailedroute__route__wirelength__iter:43": 1571906, - "detailedroute__route__wirelength__iter:44": 1571906, - "detailedroute__route__wirelength__iter:45": 1571906, - "detailedroute__route__wirelength__iter:46": 1571906, - "detailedroute__route__wirelength__iter:47": 1571906, - "detailedroute__route__wirelength__iter:48": 1571906, - "detailedroute__route__wirelength__iter:49": 1571906, - "detailedroute__route__wirelength__iter:5": 1571907, - "detailedroute__route__wirelength__iter:50": 1571906, - "detailedroute__route__wirelength__iter:51": 1571906, - "detailedroute__route__wirelength__iter:52": 1571906, - "detailedroute__route__wirelength__iter:53": 1571906, - "detailedroute__route__wirelength__iter:54": 1571906, - "detailedroute__route__wirelength__iter:55": 1571906, - "detailedroute__route__wirelength__iter:56": 1571906, - "detailedroute__route__wirelength__iter:57": 1571906, - "detailedroute__route__wirelength__iter:58": 1571906, - "detailedroute__route__wirelength__iter:59": 1571906, - "detailedroute__route__wirelength__iter:6": 1571906, - "detailedroute__route__wirelength__iter:60": 1571906, - "detailedroute__route__wirelength__iter:61": 1571906, - "detailedroute__route__wirelength__iter:62": 1571906, - "detailedroute__route__wirelength__iter:63": 1571906, - "detailedroute__route__wirelength__iter:64": 1571906, - "detailedroute__route__wirelength__iter:65": 1571906, - "detailedroute__route__wirelength__iter:7": 1571906, - "detailedroute__route__wirelength__iter:8": 1571906, - "detailedroute__route__wirelength__iter:9": 1571906, - "finish__clock__skew__hold": 419.562, - "finish__clock__skew__setup": 387.944, - "finish__cpu__total": 2072.92, + "detailedroute__route__vias__singlecut": 1420474, + "detailedroute__route__wirelength": 1572033, + "detailedroute__route__wirelength__iter:1": 1572156, + "detailedroute__route__wirelength__iter:2": 1571130, + "detailedroute__route__wirelength__iter:3": 1571488, + "detailedroute__route__wirelength__iter:4": 1572015, + "detailedroute__route__wirelength__iter:5": 1572035, + "detailedroute__route__wirelength__iter:6": 1572033, + "finish__clock__skew__hold": 425.317, + "finish__clock__skew__setup": 388.853, + "finish__cpu__total": 1830.12, "finish__design__core__area": 318395, "finish__design__die__area": 330000, - "finish__design__instance__area": 50121.4, + "finish__design__instance__area": 50123.5, "finish__design__instance__area__macros": 33343.6, - "finish__design__instance__area__stdcell": 16777.7, - "finish__design__instance__count": 159840, + "finish__design__instance__area__stdcell": 16779.9, + "finish__design__instance__count": 159852, "finish__design__instance__count__macros": 28, - "finish__design__instance__count__stdcell": 159812, - "finish__design__instance__utilization": 0.157419, - "finish__design__instance__utilization__stdcell": 0.0588585, + "finish__design__instance__count__stdcell": 159824, + "finish__design__instance__utilization": 0.157425, + "finish__design__instance__utilization__stdcell": 0.0588661, "finish__design__io": 1416, - "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.759198, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.0109123, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0576571, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0575406, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.712343, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0575406, + "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.759181, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.0109177, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0576926, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0574897, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.712307, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0574897, "finish__flow__errors__count": 0, - "finish__flow__warnings__count": 19, - "finish__mem__peak": 13802608.0, - "finish__power__internal__total": 0.0522459, + "finish__flow__warnings__count": 18, + "finish__mem__peak": 13813716.0, + "finish__power__internal__total": 0.0523183, "finish__power__leakage__total": 0.00361984, - "finish__power__switching__total": 0.0163301, - "finish__power__total": 0.0721958, - "finish__runtime__total": "34:48.67", - "finish__timing__drv__hold_violation_count": 809, - "finish__timing__drv__max_cap": 5, - "finish__timing__drv__max_cap_limit": -0.247149, + "finish__power__switching__total": 0.0163237, + "finish__power__total": 0.0722618, + "finish__runtime__total": "31:13.71", + "finish__timing__drv__hold_violation_count": 747, + "finish__timing__drv__max_cap": 6, + "finish__timing__drv__max_cap_limit": -0.0996865, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, - "finish__timing__drv__max_slew": 130, - "finish__timing__drv__max_slew_limit": -2.29843, + "finish__timing__drv__max_slew": 160, + "finish__timing__drv__max_slew_limit": -0.404926, "finish__timing__drv__setup_violation_count": 0, "finish__timing__setup__tns": 0, - "finish__timing__setup__ws": 379.281, - "finish__timing__wns_percent_delay": 14.232492, - "finish_merge__cpu__total": 35.89, - "finish_merge__mem__peak": 3058824.0, - "finish_merge__runtime__total": "0:38.59", - "floorplan__cpu__total": 205.32, + "finish__timing__setup__ws": 383.129, + "finish__timing__wns_percent_delay": 14.337594, + "finish_merge__cpu__total": 29.25, + "finish_merge__mem__peak": 3054136.0, + "finish_merge__runtime__total": "0:31.15", + "floorplan__cpu__total": 148.28, "floorplan__design__core__area": 318395, "floorplan__design__die__area": 330000, "floorplan__design__instance__area": 47084, @@ -279,32 +161,32 @@ "floorplan__design__io": 1416, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 21, - "floorplan__mem__peak": 909280.0, + "floorplan__mem__peak": 899996.0, "floorplan__power__internal__total": 0.0464306, "floorplan__power__leakage__total": 0.00361765, "floorplan__power__switching__total": 0.00540428, "floorplan__power__total": 0.0554525, - "floorplan__runtime__total": "3:26.20", + "floorplan__runtime__total": "2:29.37", "floorplan__timing__setup__tns": -6744030.0, "floorplan__timing__setup__ws": -682.699, - "floorplan_io__cpu__total": 13.07, - "floorplan_io__mem__peak": 575596.0, - "floorplan_io__runtime__total": "0:13.62", - "floorplan_macro__cpu__total": 242.37, - "floorplan_macro__mem__peak": 1305064.0, - "floorplan_macro__runtime__total": "0:47.32", - "floorplan_pdn__cpu__total": 26.05, - "floorplan_pdn__mem__peak": 749012.0, - "floorplan_pdn__runtime__total": "0:26.73", - "floorplan_tap__cpu__total": 13.29, - "floorplan_tap__mem__peak": 532528.0, - "floorplan_tap__runtime__total": "0:13.88", - "floorplan_tdms__cpu__total": 0.13, - "floorplan_tdms__mem__peak": 99884.0, - "floorplan_tdms__runtime__total": "0:00.20", + "floorplan_io__cpu__total": 10.4, + "floorplan_io__mem__peak": 584840.0, + "floorplan_io__runtime__total": "0:10.81", + "floorplan_macro__cpu__total": 213.7, + "floorplan_macro__mem__peak": 1315272.0, + "floorplan_macro__runtime__total": "0:39.63", + "floorplan_pdn__cpu__total": 21.05, + "floorplan_pdn__mem__peak": 758920.0, + "floorplan_pdn__runtime__total": "0:21.73", + "floorplan_tap__cpu__total": 10.51, + "floorplan_tap__mem__peak": 541976.0, + "floorplan_tap__runtime__total": "0:10.91", + "floorplan_tdms__cpu__total": 0.05, + "floorplan_tdms__mem__peak": 109716.0, + "floorplan_tdms__runtime__total": "0:00.17", "flow__errors__count": 0, "flow__warnings__count": 18, - "globalplace__cpu__total": 1520.73, + "globalplace__cpu__total": 901.27, "globalplace__design__core__area": 318395, "globalplace__design__die__area": 330000, "globalplace__design__instance__area": 48192.5, @@ -318,53 +200,53 @@ "globalplace__design__io": 1416, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 18, - "globalplace__mem__peak": 2690924.0, + "globalplace__mem__peak": 2684928.0, "globalplace__power__internal__total": 0.0464306, "globalplace__power__leakage__total": 0.00361765, "globalplace__power__switching__total": 0.00540428, "globalplace__power__total": 0.0554525, - "globalplace__runtime__total": "10:54.80", + "globalplace__runtime__total": "9:38.53", "globalplace__timing__setup__tns": -6790540.0, "globalplace__timing__setup__ws": -682.699, - "globalplace_io__cpu__total": 13.95, - "globalplace_io__mem__peak": 658788.0, - "globalplace_io__runtime__total": "0:14.65", - "globalplace_skip_io__cpu__total": 906.41, - "globalplace_skip_io__mem__peak": 1280672.0, - "globalplace_skip_io__runtime__total": "2:38.65", + "globalplace_io__cpu__total": 10.91, + "globalplace_io__mem__peak": 668204.0, + "globalplace_io__runtime__total": "0:11.46", + "globalplace_skip_io__cpu__total": 395.53, + "globalplace_skip_io__mem__peak": 1291016.0, + "globalplace_skip_io__runtime__total": "2:20.85", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, "globalroute__antenna_diodes_count": 0, - "globalroute__clock__skew__hold": 251.858, - "globalroute__clock__skew__setup": 261.224, - "globalroute__cpu__total": 596.9, + "globalroute__clock__skew__hold": 243.478, + "globalroute__clock__skew__setup": 254.96, + "globalroute__cpu__total": 480.03, "globalroute__design__core__area": 318395, "globalroute__design__die__area": 330000, - "globalroute__design__instance__area": 50121.4, + "globalroute__design__instance__area": 50123.5, "globalroute__design__instance__area__macros": 33343.6, - "globalroute__design__instance__area__stdcell": 16777.7, - "globalroute__design__instance__count": 159840, + "globalroute__design__instance__area__stdcell": 16779.9, + "globalroute__design__instance__count": 159852, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 28, "globalroute__design__instance__count__setup_buffer": 0, - "globalroute__design__instance__count__stdcell": 159812, + "globalroute__design__instance__count__stdcell": 159824, "globalroute__design__instance__displacement__max": 0, "globalroute__design__instance__displacement__mean": 0, "globalroute__design__instance__displacement__total": 0, - "globalroute__design__instance__utilization": 0.157419, - "globalroute__design__instance__utilization__stdcell": 0.0588585, + "globalroute__design__instance__utilization": 0.157425, + "globalroute__design__instance__utilization__stdcell": 0.0588661, "globalroute__design__io": 1416, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 19, - "globalroute__mem__peak": 3852488.0, - "globalroute__power__internal__total": 0.0519219, + "globalroute__mem__peak": 3851508.0, + "globalroute__power__internal__total": 0.0520128, "globalroute__power__leakage__total": 0.00361984, - "globalroute__power__switching__total": 0.00840842, - "globalroute__power__total": 0.0639502, - "globalroute__route__wirelength__estimated": 1382520.0, - "globalroute__runtime__total": "6:03.74", - "globalroute__timing__clock__slack": 1156.62, + "globalroute__power__switching__total": 0.00840339, + "globalroute__power__total": 0.0640361, + "globalroute__route__wirelength__estimated": 1382410.0, + "globalroute__runtime__total": "4:50.82", + "globalroute__timing__clock__slack": 1157.689, "globalroute__timing__drv__hold_violation_count": 0, "globalroute__timing__drv__max_cap": 0, "globalroute__timing__drv__max_cap_limit": 0.629151, @@ -374,27 +256,27 @@ "globalroute__timing__drv__max_slew_limit": 0.0667307, "globalroute__timing__drv__setup_violation_count": 0, "globalroute__timing__setup__tns": 0, - "globalroute__timing__setup__ws": 1156.62, - "placeopt__cpu__total": 208.8, + "globalroute__timing__setup__ws": 1157.69, + "placeopt__cpu__total": 158.8, "placeopt__design__core__area": 318395, "placeopt__design__die__area": 330000, - "placeopt__design__instance__area": 49671.5, + "placeopt__design__instance__area": 49669.9, "placeopt__design__instance__area__macros": 33343.6, - "placeopt__design__instance__area__stdcell": 16327.9, - "placeopt__design__instance__count": 158383, + "placeopt__design__instance__area__stdcell": 16326.3, + "placeopt__design__instance__count": 158386, "placeopt__design__instance__count__macros": 28, - "placeopt__design__instance__count__stdcell": 158355, - "placeopt__design__instance__utilization": 0.156006, - "placeopt__design__instance__utilization__stdcell": 0.0572805, + "placeopt__design__instance__count__stdcell": 158358, + "placeopt__design__instance__utilization": 0.156001, + "placeopt__design__instance__utilization__stdcell": 0.0572747, "placeopt__design__io": 1416, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 18, - "placeopt__mem__peak": 1196908.0, - "placeopt__power__internal__total": 0.047303, - "placeopt__power__leakage__total": 0.00361943, - "placeopt__power__switching__total": 0.0059619, - "placeopt__power__total": 0.0568843, - "placeopt__runtime__total": "3:29.87", + "placeopt__mem__peak": 1206836.0, + "placeopt__power__internal__total": 0.0472997, + "placeopt__power__leakage__total": 0.00361942, + "placeopt__power__switching__total": 0.00596141, + "placeopt__power__total": 0.0568806, + "placeopt__runtime__total": "2:40.04", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, @@ -408,10 +290,10 @@ "placeopt__timing__setup__tns": 0, "placeopt__timing__setup__ws": 1159.72, "run__flow__design": "swerv_wrapper", - "run__flow__generate_date": "2024-09-25 12:00", + "run__flow__generate_date": "2024-10-01 04:08", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15841-gdd8441389", + "run__flow__openroad_version": "v2.0-16138-g2803c4963", "run__flow__platform": "asap7", "run__flow__platform__capacitance_units": "1fF", "run__flow__platform__current_units": "1mA", @@ -420,14 +302,14 @@ "run__flow__platform__resistance_units": "1kohm", "run__flow__platform__time_units": "1ps", "run__flow__platform__voltage_units": "1v", - "run__flow__platform_commit": "N/A", - "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "9eb14320-7570-40a9-8c4e-a8e5cf63fd31", + "run__flow__platform_commit": "594b4339edcd1145b3498ca45cc032969dd7bc09", + "run__flow__scripts_commit": "594b4339edcd1145b3498ca45cc032969dd7bc09", + "run__flow__uuid": "32e81bb1-5d56-40c1-b5c5-face5df482c9", "run__flow__variant": "base", - "synth__cpu__total": 621.56, + "synth__cpu__total": 534.52, "synth__design__instance__area__stdcell": 46643.84674, "synth__design__instance__count__stdcell": 105188.0, - "synth__mem__peak": 1176140.0, - "synth__runtime__total": "10:36.77", - "total_time": "1:22:52.800000" + "synth__mem__peak": 1179180.0, + "synth__runtime__total": "9:07.89", + "total_time": "1:10:57.120000" } \ No newline at end of file diff --git a/flow/designs/asap7/swerv_wrapper/rules-base.json b/flow/designs/asap7/swerv_wrapper/rules-base.json index 17e93b04bc..2c19a13eca 100644 --- a/flow/designs/asap7/swerv_wrapper/rules-base.json +++ b/flow/designs/asap7/swerv_wrapper/rules-base.json @@ -36,7 +36,7 @@ "compare": "<=" }, "detailedroute__route__drc_errors": { - "value": 2, + "value": 0, "compare": "<=" }, "detailedroute__antenna__violating__nets": { @@ -60,7 +60,7 @@ "compare": "<=" }, "finish__timing__drv__hold_violation_count": { - "value": 1111, + "value": 1034, "compare": "<=" }, "finish__timing__wns_percent_delay": { diff --git a/flow/designs/asap7/uart/metadata-base-ok.json b/flow/designs/asap7/uart/metadata-base-ok.json index 035ee8b2e3..e7cbc2455f 100644 --- a/flow/designs/asap7/uart/metadata-base-ok.json +++ b/flow/designs/asap7/uart/metadata-base-ok.json @@ -3,293 +3,293 @@ "constraints__clocks__details": [ "clk: 300.0000" ], - "cts__clock__skew__hold": 9.18852, - "cts__clock__skew__setup": 3.96846, - "cts__cpu__total": 18.79, + "cts__clock__skew__hold": 9.76219, + "cts__clock__skew__setup": 4.42842, + "cts__cpu__total": 14.59, "cts__design__core__area": 221.324, "cts__design__die__area": 289, - "cts__design__instance__area": 90.2794, + "cts__design__instance__area": 90.5418, "cts__design__instance__area__macros": 0, - "cts__design__instance__area__stdcell": 90.2794, - "cts__design__instance__count": 789, + "cts__design__instance__area__stdcell": 90.5418, + "cts__design__instance__count": 797, "cts__design__instance__count__hold_buffer": 0, "cts__design__instance__count__macros": 0, - "cts__design__instance__count__setup_buffer": 39, - "cts__design__instance__count__stdcell": 789, - "cts__design__instance__displacement__max": 1.444, - "cts__design__instance__displacement__mean": 0.046, - "cts__design__instance__displacement__total": 36.975, - "cts__design__instance__utilization": 0.407905, - "cts__design__instance__utilization__stdcell": 0.407905, + "cts__design__instance__count__setup_buffer": 47, + "cts__design__instance__count__stdcell": 797, + "cts__design__instance__displacement__max": 2.646, + "cts__design__instance__displacement__mean": 0.072, + "cts__design__instance__displacement__total": 57.87, + "cts__design__instance__utilization": 0.409091, + "cts__design__instance__utilization__stdcell": 0.409091, "cts__design__io": 44, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 11, - "cts__mem__peak": 578284.0, - "cts__power__internal__total": 0.00149414, - "cts__power__leakage__total": 8.56258e-08, - "cts__power__switching__total": 0.000883785, - "cts__power__total": 0.00237801, - "cts__route__wirelength__estimated": 1284.16, - "cts__runtime__total": "0:10.90", + "cts__mem__peak": 578824.0, + "cts__power__internal__total": 0.00143047, + "cts__power__leakage__total": 8.67067e-08, + "cts__power__switching__total": 0.000883171, + "cts__power__total": 0.00231373, + "cts__route__wirelength__estimated": 1300.45, + "cts__runtime__total": "0:10.29", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, - "cts__timing__drv__max_cap_limit": 0.813225, + "cts__timing__drv__max_cap_limit": 0.836129, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.789556, - "cts__timing__drv__setup_violation_count": 11, - "cts__timing__setup__tns": -49.6239, - "cts__timing__setup__ws": -12.7184, - "design__io__hpwl": 253598, + "cts__timing__drv__max_slew_limit": 0.786209, + "cts__timing__drv__setup_violation_count": 25, + "cts__timing__setup__tns": -267.992, + "cts__timing__setup__ws": -30.4477, + "design__io__hpwl": 254286, "design__violations": 0, - "detailedplace__cpu__total": 2.29, + "detailedplace__cpu__total": 1.94, "detailedplace__design__core__area": 221.324, "detailedplace__design__die__area": 289, - "detailedplace__design__instance__area": 83.7913, + "detailedplace__design__instance__area": 83.6455, "detailedplace__design__instance__area__macros": 0, - "detailedplace__design__instance__area__stdcell": 83.7913, - "detailedplace__design__instance__count": 735, + "detailedplace__design__instance__area__stdcell": 83.6455, + "detailedplace__design__instance__count": 736, "detailedplace__design__instance__count__macros": 0, - "detailedplace__design__instance__count__stdcell": 735, - "detailedplace__design__instance__displacement__max": 2.028, - "detailedplace__design__instance__displacement__mean": 0.219, - "detailedplace__design__instance__displacement__total": 161.18, - "detailedplace__design__instance__utilization": 0.37859, - "detailedplace__design__instance__utilization__stdcell": 0.37859, + "detailedplace__design__instance__count__stdcell": 736, + "detailedplace__design__instance__displacement__max": 1.272, + "detailedplace__design__instance__displacement__mean": 0.212, + "detailedplace__design__instance__displacement__total": 156.485, + "detailedplace__design__instance__utilization": 0.377931, + "detailedplace__design__instance__utilization__stdcell": 0.377931, "detailedplace__design__io": 44, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 10, - "detailedplace__mem__peak": 215040.0, - "detailedplace__power__internal__total": 0.00126313, - "detailedplace__power__leakage__total": 7.67757e-08, - "detailedplace__power__switching__total": 0.000722079, - "detailedplace__power__total": 0.00198528, - "detailedplace__route__wirelength__estimated": 1196.21, - "detailedplace__runtime__total": "0:02.41", + "detailedplace__mem__peak": 215736.0, + "detailedplace__power__internal__total": 0.00126671, + "detailedplace__power__leakage__total": 7.68267e-08, + "detailedplace__power__switching__total": 0.00072061, + "detailedplace__power__total": 0.0019874, + "detailedplace__route__wirelength__estimated": 1180.98, + "detailedplace__runtime__total": "0:02.08", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, - "detailedplace__timing__drv__max_cap_limit": 0.706163, + "detailedplace__timing__drv__max_cap_limit": 0.715117, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.778382, + "detailedplace__timing__drv__max_slew_limit": 0.779233, "detailedplace__timing__drv__setup_violation_count": 47, - "detailedplace__timing__setup__tns": -957.743, - "detailedplace__timing__setup__ws": -60.4752, + "detailedplace__timing__setup__tns": -1076.67, + "detailedplace__timing__setup__ws": -61.8452, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, "detailedroute__antenna_diodes_count": 0, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 11, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 111, - "detailedroute__route__drc_errors__iter:2": 7, - "detailedroute__route__drc_errors__iter:3": 8, + "detailedroute__route__drc_errors__iter:1": 117, + "detailedroute__route__drc_errors__iter:2": 10, + "detailedroute__route__drc_errors__iter:3": 11, "detailedroute__route__drc_errors__iter:4": 0, - "detailedroute__route__net": 716, + "detailedroute__route__net": 726, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 5655, + "detailedroute__route__vias": 5717, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 5655, - "detailedroute__route__wirelength": 1518, - "detailedroute__route__wirelength__iter:1": 1536, + "detailedroute__route__vias__singlecut": 5717, + "detailedroute__route__wirelength": 1525, + "detailedroute__route__wirelength__iter:1": 1541, "detailedroute__route__wirelength__iter:2": 1520, - "detailedroute__route__wirelength__iter:3": 1517, - "detailedroute__route__wirelength__iter:4": 1518, - "finish__clock__skew__hold": 9.68022, - "finish__clock__skew__setup": 4.41779, - "finish__cpu__total": 4.01, + "detailedroute__route__wirelength__iter:3": 1525, + "detailedroute__route__wirelength__iter:4": 1525, + "finish__clock__skew__hold": 10.8344, + "finish__clock__skew__setup": 5.52909, + "finish__cpu__total": 3.56, "finish__design__core__area": 221.324, "finish__design__die__area": 289, - "finish__design__instance__area": 91.3145, + "finish__design__instance__area": 91.577, "finish__design__instance__area__macros": 0, - "finish__design__instance__area__stdcell": 91.3145, - "finish__design__instance__count": 798, + "finish__design__instance__area__stdcell": 91.577, + "finish__design__instance__count": 808, "finish__design__instance__count__macros": 0, - "finish__design__instance__count__stdcell": 798, - "finish__design__instance__utilization": 0.412582, - "finish__design__instance__utilization__stdcell": 0.412582, + "finish__design__instance__count__stdcell": 808, + "finish__design__instance__utilization": 0.413768, + "finish__design__instance__utilization__stdcell": 0.413768, "finish__design__io": 44, - "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.697973, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.00198141, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.00699228, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.00682998, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.693008, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.00682998, + "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.698083, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.00197376, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.00668648, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.00645498, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.693314, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.00645498, "finish__flow__errors__count": 0, - "finish__flow__warnings__count": 11, - "finish__mem__peak": 281032.0, - "finish__power__internal__total": 0.00151565, - "finish__power__leakage__total": 8.77904e-08, - "finish__power__switching__total": 0.000921855, - "finish__power__total": 0.0024376, - "finish__runtime__total": "0:04.17", + "finish__flow__warnings__count": 10, + "finish__mem__peak": 365812.0, + "finish__power__internal__total": 0.00145174, + "finish__power__leakage__total": 8.84939e-08, + "finish__power__switching__total": 0.000921705, + "finish__power__total": 0.00237353, + "finish__runtime__total": "0:03.90", "finish__timing__drv__hold_violation_count": 0, "finish__timing__drv__max_cap": 0, - "finish__timing__drv__max_cap_limit": 0.864298, + "finish__timing__drv__max_cap_limit": 0.817854, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, "finish__timing__drv__max_slew": 0, - "finish__timing__drv__max_slew_limit": 0.774286, - "finish__timing__drv__setup_violation_count": 25, - "finish__timing__setup__tns": -161.96, - "finish__timing__setup__ws": -16.5253, - "finish__timing__wns_percent_delay": -4.324764, - "finish_merge__cpu__total": 1.61, - "finish_merge__mem__peak": 396448.0, - "finish_merge__runtime__total": "0:01.77", - "floorplan__cpu__total": 3.31, + "finish__timing__drv__max_slew_limit": 0.780811, + "finish__timing__drv__setup_violation_count": 29, + "finish__timing__setup__tns": -373.565, + "finish__timing__setup__ws": -33.3799, + "finish__timing__wns_percent_delay": -8.35535, + "finish_merge__cpu__total": 1.44, + "finish_merge__mem__peak": 397220.0, + "finish_merge__runtime__total": "0:01.66", + "floorplan__cpu__total": 3.11, "floorplan__design__core__area": 221.324, "floorplan__design__die__area": 289, - "floorplan__design__instance__area": 75.2182, + "floorplan__design__instance__area": 75.2474, "floorplan__design__instance__area__macros": 0, - "floorplan__design__instance__area__stdcell": 75.2182, - "floorplan__design__instance__count": 589, + "floorplan__design__instance__area__stdcell": 75.2474, + "floorplan__design__instance__count": 590, "floorplan__design__instance__count__hold_buffer": 0, "floorplan__design__instance__count__macros": 0, "floorplan__design__instance__count__setup_buffer": 6, - "floorplan__design__instance__count__stdcell": 589, - "floorplan__design__instance__utilization": 0.339855, - "floorplan__design__instance__utilization__stdcell": 0.339855, + "floorplan__design__instance__count__stdcell": 590, + "floorplan__design__instance__utilization": 0.339987, + "floorplan__design__instance__utilization__stdcell": 0.339987, "floorplan__design__io": 44, "floorplan__flow__errors__count": 0, - "floorplan__flow__warnings__count": 255, - "floorplan__mem__peak": 215804.0, - "floorplan__power__internal__total": 0.00124839, - "floorplan__power__leakage__total": 6.94107e-08, - "floorplan__power__switching__total": 0.000578695, - "floorplan__power__total": 0.00182716, - "floorplan__runtime__total": "0:03.44", - "floorplan__timing__setup__tns": -80.5897, - "floorplan__timing__setup__ws": -16.1296, - "floorplan_io__cpu__total": 1.63, - "floorplan_io__mem__peak": 210688.0, - "floorplan_io__runtime__total": "0:01.74", - "floorplan_macro__cpu__total": 1.72, - "floorplan_macro__mem__peak": 209656.0, - "floorplan_macro__runtime__total": "0:01.81", - "floorplan_pdn__cpu__total": 1.7, - "floorplan_pdn__mem__peak": 212292.0, - "floorplan_pdn__runtime__total": "0:01.82", - "floorplan_tap__cpu__total": 1.7, - "floorplan_tap__mem__peak": 209484.0, - "floorplan_tap__runtime__total": "0:01.85", - "floorplan_tdms__cpu__total": 1.67, - "floorplan_tdms__mem__peak": 210684.0, - "floorplan_tdms__runtime__total": "0:01.79", + "floorplan__flow__warnings__count": 303, + "floorplan__mem__peak": 216024.0, + "floorplan__power__internal__total": 0.00125668, + "floorplan__power__leakage__total": 6.95279e-08, + "floorplan__power__switching__total": 0.000580854, + "floorplan__power__total": 0.00183761, + "floorplan__runtime__total": "0:03.23", + "floorplan__timing__setup__tns": -162.706, + "floorplan__timing__setup__ws": -16.114, + "floorplan_io__cpu__total": 1.43, + "floorplan_io__mem__peak": 210972.0, + "floorplan_io__runtime__total": "0:01.53", + "floorplan_macro__cpu__total": 1.38, + "floorplan_macro__mem__peak": 210404.0, + "floorplan_macro__runtime__total": "0:01.53", + "floorplan_pdn__cpu__total": 1.44, + "floorplan_pdn__mem__peak": 213104.0, + "floorplan_pdn__runtime__total": "0:01.55", + "floorplan_tap__cpu__total": 1.4, + "floorplan_tap__mem__peak": 210456.0, + "floorplan_tap__runtime__total": "0:01.53", + "floorplan_tdms__cpu__total": 1.39, + "floorplan_tdms__mem__peak": 210576.0, + "floorplan_tdms__runtime__total": "0:01.54", "flow__errors__count": 0, "flow__warnings__count": 10, - "globalplace__cpu__total": 166.63, + "globalplace__cpu__total": 303.34, "globalplace__design__core__area": 221.324, "globalplace__design__die__area": 289, - "globalplace__design__instance__area": 78.4258, + "globalplace__design__instance__area": 78.455, "globalplace__design__instance__area__macros": 0, - "globalplace__design__instance__area__stdcell": 78.4258, - "globalplace__design__instance__count": 699, + "globalplace__design__instance__area__stdcell": 78.455, + "globalplace__design__instance__count": 700, "globalplace__design__instance__count__macros": 0, - "globalplace__design__instance__count__stdcell": 699, - "globalplace__design__instance__utilization": 0.354348, - "globalplace__design__instance__utilization__stdcell": 0.354348, + "globalplace__design__instance__count__stdcell": 700, + "globalplace__design__instance__utilization": 0.35448, + "globalplace__design__instance__utilization__stdcell": 0.35448, "globalplace__design__io": 44, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 10, - "globalplace__mem__peak": 528508.0, - "globalplace__power__internal__total": 0.00124897, - "globalplace__power__leakage__total": 6.94107e-08, - "globalplace__power__switching__total": 0.000657907, - "globalplace__power__total": 0.00190694, - "globalplace__runtime__total": "0:09.23", - "globalplace__timing__setup__tns": -562.274, - "globalplace__timing__setup__ws": -28.0045, - "globalplace_io__cpu__total": 1.64, - "globalplace_io__mem__peak": 210988.0, - "globalplace_io__runtime__total": "0:01.78", - "globalplace_skip_io__cpu__total": 425.64, - "globalplace_skip_io__mem__peak": 211452.0, - "globalplace_skip_io__runtime__total": "0:15.79", + "globalplace__mem__peak": 528844.0, + "globalplace__power__internal__total": 0.00125729, + "globalplace__power__leakage__total": 6.95279e-08, + "globalplace__power__switching__total": 0.000659305, + "globalplace__power__total": 0.00191666, + "globalplace__runtime__total": "0:34.64", + "globalplace__timing__setup__tns": -640.901, + "globalplace__timing__setup__ws": -28.7106, + "globalplace_io__cpu__total": 1.4, + "globalplace_io__mem__peak": 211532.0, + "globalplace_io__runtime__total": "0:01.53", + "globalplace_skip_io__cpu__total": 330.79, + "globalplace_skip_io__mem__peak": 211740.0, + "globalplace_skip_io__runtime__total": "0:35.38", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, "globalroute__antenna_diodes_count": 0, - "globalroute__clock__skew__hold": 9.49662, - "globalroute__clock__skew__setup": 4.54219, - "globalroute__cpu__total": 7.49, + "globalroute__clock__skew__hold": 9.83844, + "globalroute__clock__skew__setup": 4.94723, + "globalroute__cpu__total": 4.76, "globalroute__design__core__area": 221.324, "globalroute__design__die__area": 289, - "globalroute__design__instance__area": 91.3145, + "globalroute__design__instance__area": 91.577, "globalroute__design__instance__area__macros": 0, - "globalroute__design__instance__area__stdcell": 91.3145, - "globalroute__design__instance__count": 798, + "globalroute__design__instance__area__stdcell": 91.577, + "globalroute__design__instance__count": 808, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 0, - "globalroute__design__instance__count__setup_buffer": 9, - "globalroute__design__instance__count__stdcell": 798, - "globalroute__design__instance__displacement__max": 1.35, - "globalroute__design__instance__displacement__mean": 0.017, - "globalroute__design__instance__displacement__total": 13.986, - "globalroute__design__instance__utilization": 0.412582, - "globalroute__design__instance__utilization__stdcell": 0.412582, + "globalroute__design__instance__count__setup_buffer": 11, + "globalroute__design__instance__count__stdcell": 808, + "globalroute__design__instance__displacement__max": 1.62, + "globalroute__design__instance__displacement__mean": 0.019, + "globalroute__design__instance__displacement__total": 15.714, + "globalroute__design__instance__utilization": 0.413768, + "globalroute__design__instance__utilization__stdcell": 0.413768, "globalroute__design__io": 44, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 12, - "globalroute__mem__peak": 552356.0, - "globalroute__power__internal__total": 0.00151623, - "globalroute__power__leakage__total": 8.77904e-08, - "globalroute__power__switching__total": 0.000962205, - "globalroute__power__total": 0.00247852, - "globalroute__route__wirelength__estimated": 1309.43, - "globalroute__runtime__total": "0:05.68", - "globalroute__timing__clock__slack": -21.228, + "globalroute__mem__peak": 548656.0, + "globalroute__power__internal__total": 0.00145232, + "globalroute__power__leakage__total": 8.84939e-08, + "globalroute__power__switching__total": 0.000959673, + "globalroute__power__total": 0.00241208, + "globalroute__route__wirelength__estimated": 1332.57, + "globalroute__runtime__total": "0:04.41", + "globalroute__timing__clock__slack": -33.236, "globalroute__timing__drv__hold_violation_count": 0, "globalroute__timing__drv__max_cap": 0, - "globalroute__timing__drv__max_cap_limit": 0.862711, + "globalroute__timing__drv__max_cap_limit": 0.826772, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, "globalroute__timing__drv__max_slew": 0, - "globalroute__timing__drv__max_slew_limit": 0.776045, - "globalroute__timing__drv__setup_violation_count": 26, - "globalroute__timing__setup__tns": -223.784, - "globalroute__timing__setup__ws": -21.2282, - "placeopt__cpu__total": 2.45, + "globalroute__timing__drv__max_slew_limit": 0.782283, + "globalroute__timing__drv__setup_violation_count": 34, + "globalroute__timing__setup__tns": -424.565, + "globalroute__timing__setup__ws": -33.2361, + "placeopt__cpu__total": 2.03, "placeopt__design__core__area": 221.324, "placeopt__design__die__area": 289, - "placeopt__design__instance__area": 83.7913, + "placeopt__design__instance__area": 83.6455, "placeopt__design__instance__area__macros": 0, - "placeopt__design__instance__area__stdcell": 83.7913, - "placeopt__design__instance__count": 735, + "placeopt__design__instance__area__stdcell": 83.6455, + "placeopt__design__instance__count": 736, "placeopt__design__instance__count__macros": 0, - "placeopt__design__instance__count__stdcell": 735, - "placeopt__design__instance__utilization": 0.37859, - "placeopt__design__instance__utilization__stdcell": 0.37859, + "placeopt__design__instance__count__stdcell": 736, + "placeopt__design__instance__utilization": 0.377931, + "placeopt__design__instance__utilization__stdcell": 0.377931, "placeopt__design__io": 44, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 10, - "placeopt__mem__peak": 481104.0, - "placeopt__power__internal__total": 0.001263, - "placeopt__power__leakage__total": 7.67757e-08, - "placeopt__power__switching__total": 0.000716146, - "placeopt__power__total": 0.00197923, - "placeopt__runtime__total": "0:02.75", + "placeopt__mem__peak": 481404.0, + "placeopt__power__internal__total": 0.00126656, + "placeopt__power__leakage__total": 7.68267e-08, + "placeopt__power__switching__total": 0.000715871, + "placeopt__power__total": 0.00198251, + "placeopt__runtime__total": "0:02.36", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.710671, + "placeopt__timing__drv__max_cap_limit": 0.718801, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.782842, + "placeopt__timing__drv__max_slew_limit": 0.781285, "placeopt__timing__drv__setup_violation_count": 46, - "placeopt__timing__setup__tns": -928.261, - "placeopt__timing__setup__ws": -61.1682, + "placeopt__timing__setup__tns": -1052.3, + "placeopt__timing__setup__ws": -61.7286, "run__flow__design": "uart", - "run__flow__generate_date": "2024-09-19 14:11", + "run__flow__generate_date": "2024-09-26 21:20", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15759-g9136ba699", + "run__flow__openroad_version": "v2.0-15807-g036379d64", "run__flow__platform": "asap7", "run__flow__platform__capacitance_units": "1fF", "run__flow__platform__current_units": "1mA", @@ -298,14 +298,14 @@ "run__flow__platform__resistance_units": "1kohm", "run__flow__platform__time_units": "1ps", "run__flow__platform__voltage_units": "1v", - "run__flow__platform_commit": "N/A", - "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "8282df45-6cc9-4597-859d-b7a6e82d9ff4", - "run__flow__variant": "base", - "synth__cpu__total": 4.54, + "run__flow__platform_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__scripts_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__uuid": "2e7356d8-a9e8-4be3-a0bb-66c6e6b3a63e", + "run__flow__variant": "odb_0925", + "synth__cpu__total": 3.91, "synth__design__instance__area__stdcell": 74.59128, "synth__design__instance__count__stdcell": 588.0, - "synth__mem__peak": 141568.0, - "synth__runtime__total": "0:04.83", - "total_time": "0:01:11.760000" + "synth__mem__peak": 141824.0, + "synth__runtime__total": "0:04.14", + "total_time": "0:01:51.300000" } \ No newline at end of file diff --git a/flow/designs/asap7/uart/rules-base.json b/flow/designs/asap7/uart/rules-base.json index 80a8fed452..b2fe2ff2e2 100644 --- a/flow/designs/asap7/uart/rules-base.json +++ b/flow/designs/asap7/uart/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 79.83, + "value": 85.78, "compare": "<=" }, "constraints__clocks__count": { @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 87, + "value": 96, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 761, + "value": 846, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,11 +20,11 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 66, + "value": 74, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 66, + "value": 74, "compare": "<=" }, "globalroute__antenna_diodes_count": { @@ -32,7 +32,7 @@ "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 1695, + "value": 1754, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -48,11 +48,11 @@ "compare": "<=" }, "finish__timing__setup__ws": { - "value": -31.37, + "value": -48.37, "compare": ">=" }, "finish__design__instance__area": { - "value": 92, + "value": 105, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { @@ -64,7 +64,7 @@ "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -12.14, + "value": -20.02, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/gf12/ariane/config.mk b/flow/designs/gf12/ariane/config.mk index cf5ef8da21..22a38dcdf4 100644 --- a/flow/designs/gf12/ariane/config.mk +++ b/flow/designs/gf12/ariane/config.mk @@ -3,7 +3,6 @@ export PLATFORM = gf12 export SYNTH_HIERARCHICAL = 1 export MAX_UNGROUP_SIZE ?= 10000 -export RTLMP_FLOW = 1 # export VERILOG_FILES = ./designs/src/$(DESIGN_NAME)/ariane.sv2v.v \ diff --git a/flow/designs/gf12/ariane133/config.mk b/flow/designs/gf12/ariane133/config.mk index d2a557b454..51dc5f6dc9 100644 --- a/flow/designs/gf12/ariane133/config.mk +++ b/flow/designs/gf12/ariane133/config.mk @@ -4,7 +4,6 @@ export PLATFORM = gf12 export SYNTH_HIERARCHICAL = 1 export MAX_UNGROUP_SIZE ?= 10000 -export RTLMP_FLOW = 1 # # RTL_MP Settings diff --git a/flow/designs/gf12/bp_dual/config.mk b/flow/designs/gf12/bp_dual/config.mk index 7f211e72cf..4d6b9b04bf 100644 --- a/flow/designs/gf12/bp_dual/config.mk +++ b/flow/designs/gf12/bp_dual/config.mk @@ -4,7 +4,6 @@ export PLATFORM = gf12 export SYNTH_HIERARCHICAL = 1 # -export RTLMP_FLOW = 1 # RTL_MP Settings export RTLMP_MAX_INST = 30000 export RTLMP_MIN_INST = 10000 diff --git a/flow/designs/gf12/bp_quad/config.mk b/flow/designs/gf12/bp_quad/config.mk index e0f2e1b17b..9f756213fc 100644 --- a/flow/designs/gf12/bp_quad/config.mk +++ b/flow/designs/gf12/bp_quad/config.mk @@ -2,7 +2,6 @@ export DESIGN_NICKNAME = bp_quad export DESIGN_NAME = bsg_chip export PLATFORM = gf12 -export RTLMP_FLOW = 1 export SYNTH_HIERARCHICAL = 1 export MAX_UNGROUP_SIZE ?= 1000 diff --git a/flow/designs/gf12/bp_single/config_mpl2.mk b/flow/designs/gf12/bp_single/config_mpl2.mk index c5650ca0c4..30139844f7 100644 --- a/flow/designs/gf12/bp_single/config_mpl2.mk +++ b/flow/designs/gf12/bp_single/config_mpl2.mk @@ -6,7 +6,6 @@ export SKIP_GATE_CLONING = 1 export TNS_END_PERCENT = 5 export SYNTH_HIERARCHICAL = 1 -export RTLMP_FLOW = 1 # # RTL_MP Settings export RTLMP_MAX_INST = 30000 diff --git a/flow/designs/gf12/ca53/config.mk b/flow/designs/gf12/ca53/config.mk index c9c4155f72..01798462da 100644 --- a/flow/designs/gf12/ca53/config.mk +++ b/flow/designs/gf12/ca53/config.mk @@ -1,7 +1,6 @@ export DESIGN_NAME = ca53_cpu export PLATFORM = gf12 -export RTLMP_FLOW = 1 export VERILOG_FILES = $(PLATFORM_DIR)/$(DESIGN_NAME)/rtl/ca53_cpu.v export CACHED_NETLIST = $(PLATFORM_DIR)/$(DESIGN_NAME)/rtl/ca53_cpu.v diff --git a/flow/designs/gf12/swerv_wrapper/config.mk b/flow/designs/gf12/swerv_wrapper/config.mk index c5ae4ce621..6ebac68cbc 100644 --- a/flow/designs/gf12/swerv_wrapper/config.mk +++ b/flow/designs/gf12/swerv_wrapper/config.mk @@ -3,7 +3,6 @@ export PLATFORM = gf12 # export MAX_UNGROUP_SIZE ?= 10000 export SYNTH_HIERARCHICAL = 1 -export RTLMP_FLOW = 1 # RTL_MP Settings export RTLMP_MAX_INST = 25000 diff --git a/flow/designs/gf12/tinyRocket/config.mk b/flow/designs/gf12/tinyRocket/config.mk index 156d0cab4f..673bfe72b0 100644 --- a/flow/designs/gf12/tinyRocket/config.mk +++ b/flow/designs/gf12/tinyRocket/config.mk @@ -4,7 +4,6 @@ export PLATFORM = gf12 export SYNTH_HIERARCHICAL = 1 export MAX_UNGROUP_SIZE ?= 1000 -export RTLMP_FLOW = 1 export VERILOG_FILES = ./designs/src/$(DESIGN_NICKNAME)/AsyncResetReg.v \ ./designs/src/$(DESIGN_NICKNAME)/ClockDivider2.v \ diff --git a/flow/designs/gf180/aes-hybrid/config.mk b/flow/designs/gf180/aes-hybrid/config.mk index ee263b86c9..2113b1a32f 100644 --- a/flow/designs/gf180/aes-hybrid/config.mk +++ b/flow/designs/gf180/aes-hybrid/config.mk @@ -35,6 +35,8 @@ export BALANCE_ROWS = 1 export PDN_TCL = $(PLATFORM_DIR)/openROAD/pdn/pdn_grid_strategy_7t_6M.cfg +export FILL_CELLS= + ifeq ($(USE_FILL),1) export DESIGN_TYPE = CELL else diff --git a/flow/designs/gf180/aes-hybrid/metadata-base-ok.json b/flow/designs/gf180/aes-hybrid/metadata-base-ok.json index f7898633fc..e57f79f303 100644 --- a/flow/designs/gf180/aes-hybrid/metadata-base-ok.json +++ b/flow/designs/gf180/aes-hybrid/metadata-base-ok.json @@ -3,295 +3,299 @@ "constraints__clocks__details": [ "clk: 3.0000" ], - "cts__clock__skew__hold": 0.13443, - "cts__clock__skew__setup": 0.0700854, - "cts__cpu__total": 298.02, + "cts__clock__skew__hold": 0.130697, + "cts__clock__skew__setup": 0.0694262, + "cts__cpu__total": 291.41, "cts__design__core__area": 1795040.0, "cts__design__die__area": 1820700.0, - "cts__design__instance__area": 516806, + "cts__design__instance__area": 514227, "cts__design__instance__area__macros": 0, - "cts__design__instance__area__stdcell": 516806, - "cts__design__instance__count": 18874, - "cts__design__instance__count__hold_buffer": 1, + "cts__design__instance__area__stdcell": 514227, + "cts__design__instance__count": 18838, + "cts__design__instance__count__hold_buffer": 0, "cts__design__instance__count__macros": 0, - "cts__design__instance__count__setup_buffer": 487, - "cts__design__instance__count__stdcell": 18874, - "cts__design__instance__displacement__max": 23.97, - "cts__design__instance__displacement__mean": 0.4615, - "cts__design__instance__displacement__total": 8718.35, - "cts__design__instance__utilization": 0.287908, - "cts__design__instance__utilization__stdcell": 0.287908, + "cts__design__instance__count__setup_buffer": 451, + "cts__design__instance__count__stdcell": 18838, + "cts__design__instance__displacement__max": 25.526, + "cts__design__instance__displacement__mean": 0.459, + "cts__design__instance__displacement__total": 8652.28, + "cts__design__instance__utilization": 0.286471, + "cts__design__instance__utilization__stdcell": 0.286471, "cts__design__io": 388, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 1, - "cts__mem__peak": 1371304.0, - "cts__power__internal__total": 4.66046, - "cts__power__leakage__total": 3.72176e-06, - "cts__power__switching__total": 4.9853, - "cts__power__total": 9.64576, - "cts__route__wirelength__estimated": 1344060.0, - "cts__runtime__total": "4:59.45", + "cts__mem__peak": 1166352.0, + "cts__power__internal__total": 4.62009, + "cts__power__leakage__total": 3.71274e-06, + "cts__power__switching__total": 4.97471, + "cts__power__total": 9.5948, + "cts__route__wirelength__estimated": 1338820.0, + "cts__runtime__total": "4:52.42", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, - "cts__timing__drv__max_cap_limit": 0.485787, + "cts__timing__drv__max_cap_limit": 0.0456383, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, - "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.477861, - "cts__timing__drv__setup_violation_count": 184, - "cts__timing__setup__tns": -186.024, - "cts__timing__setup__ws": -1.20219, - "design__io__hpwl": 358120560, - "design__violations": 0, - "detailedplace__cpu__total": 11.55, + "cts__timing__drv__max_slew": 4, + "cts__timing__drv__max_slew_limit": -0.0267108, + "cts__timing__drv__setup_violation_count": 282, + "cts__timing__setup__tns": -206.234, + "cts__timing__setup__ws": -1.13809, + "design__io__hpwl": 347477526, + "detailedplace__cpu__total": 11.12, "detailedplace__design__core__area": 1795040.0, "detailedplace__design__die__area": 1820700.0, - "detailedplace__design__instance__area": 486881, + "detailedplace__design__instance__area": 486691, "detailedplace__design__instance__area__macros": 0, - "detailedplace__design__instance__area__stdcell": 486881, - "detailedplace__design__instance__count": 18317, + "detailedplace__design__instance__area__stdcell": 486691, + "detailedplace__design__instance__count": 18318, "detailedplace__design__instance__count__macros": 0, - "detailedplace__design__instance__count__stdcell": 18317, - "detailedplace__design__instance__displacement__max": 56, - "detailedplace__design__instance__displacement__mean": 4.9535, - "detailedplace__design__instance__displacement__total": 90739.1, - "detailedplace__design__instance__utilization": 0.271237, - "detailedplace__design__instance__utilization__stdcell": 0.271237, + "detailedplace__design__instance__count__stdcell": 18318, + "detailedplace__design__instance__displacement__max": 54.32, + "detailedplace__design__instance__displacement__mean": 4.2255, + "detailedplace__design__instance__displacement__total": 77411, + "detailedplace__design__instance__utilization": 0.271131, + "detailedplace__design__instance__utilization__stdcell": 0.271131, "detailedplace__design__io": 388, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 0, - "detailedplace__mem__peak": 305088.0, - "detailedplace__power__internal__total": 4.62986, - "detailedplace__power__leakage__total": 3.52281e-06, - "detailedplace__power__switching__total": 4.76487, - "detailedplace__power__total": 9.39474, - "detailedplace__route__wirelength__estimated": 1310290.0, - "detailedplace__runtime__total": "0:11.77", + "detailedplace__mem__peak": 386048.0, + "detailedplace__power__internal__total": 4.64943, + "detailedplace__power__leakage__total": 3.52531e-06, + "detailedplace__power__switching__total": 4.77423, + "detailedplace__power__total": 9.42367, + "detailedplace__route__wirelength__estimated": 1304790.0, + "detailedplace__runtime__total": "0:11.33", "detailedplace__timing__drv__hold_violation_count": 0, - "detailedplace__timing__drv__max_cap": 2, - "detailedplace__timing__drv__max_cap_limit": -0.209128, + "detailedplace__timing__drv__max_cap": 3, + "detailedplace__timing__drv__max_cap_limit": -0.185471, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, - "detailedplace__timing__drv__max_slew": 22, - "detailedplace__timing__drv__max_slew_limit": -0.296847, - "detailedplace__timing__drv__setup_violation_count": 241, - "detailedplace__timing__setup__tns": -620.692, - "detailedplace__timing__setup__ws": -4.9171, + "detailedplace__timing__drv__max_slew": 54, + "detailedplace__timing__drv__max_slew_limit": -0.270969, + "detailedplace__timing__drv__setup_violation_count": 357, + "detailedplace__timing__setup__tns": -1115.87, + "detailedplace__timing__setup__ws": -6.53426, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, - "detailedroute__antenna_diodes_count": 10, + "detailedroute__antenna_diodes_count": 19, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 8, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 8546, - "detailedroute__route__drc_errors__iter:2": 1942, - "detailedroute__route__drc_errors__iter:3": 1524, - "detailedroute__route__drc_errors__iter:4": 25, - "detailedroute__route__drc_errors__iter:5": 3, - "detailedroute__route__drc_errors__iter:6": 1, - "detailedroute__route__drc_errors__iter:7": 1, - "detailedroute__route__drc_errors__iter:8": 0, - "detailedroute__route__net": 18204, + "detailedroute__route__drc_errors__iter:1": 18, + "detailedroute__route__drc_errors__iter:2": 2, + "detailedroute__route__drc_errors__iter:3": 0, + "detailedroute__route__drc_errors__iter:4": 0, + "detailedroute__route__drc_errors__iter:5": 0, + "detailedroute__route__net": 18324, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 123234, + "detailedroute__route__vias": 123458, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 123234, - "detailedroute__route__wirelength": 1604296, - "detailedroute__route__wirelength__iter:1": 1609595, - "detailedroute__route__wirelength__iter:2": 1605506, - "detailedroute__route__wirelength__iter:3": 1604291, - "detailedroute__route__wirelength__iter:4": 1604273, - "detailedroute__route__wirelength__iter:5": 1604311, - "detailedroute__route__wirelength__iter:6": 1604297, - "detailedroute__route__wirelength__iter:7": 1604297, - "detailedroute__route__wirelength__iter:8": 1604296, - "finish__clock__skew__hold": 0.150141, - "finish__clock__skew__setup": 0.0816631, - "finish__cpu__total": 25.07, + "detailedroute__route__vias__singlecut": 123458, + "detailedroute__route__wirelength": 1608803, + "detailedroute__route__wirelength__iter:1": 1608808, + "detailedroute__route__wirelength__iter:2": 1608801, + "detailedroute__route__wirelength__iter:3": 1608803, + "detailedroute__route__wirelength__iter:4": 1608817, + "detailedroute__route__wirelength__iter:5": 1608476, + "finish__clock__skew__hold": 0.145196, + "finish__clock__skew__setup": 0.0731503, + "finish__cpu__total": 23.74, "finish__design__core__area": 1795040.0, "finish__design__die__area": 1820700.0, - "finish__design__instance__area": 526832, + "finish__design__instance__area": 539385, "finish__design__instance__area__macros": 0, - "finish__design__instance__area__stdcell": 526832, - "finish__design__instance__count": 19109, + "finish__design__instance__area__stdcell": 539385, + "finish__design__instance__count": 19208, + "finish__design__instance__count__class:antenna_cell": 43, + "finish__design__instance__count__class:buffer": 840, + "finish__design__instance__count__class:clock_buffer": 44, + "finish__design__instance__count__class:clock_inverter": 22, + "finish__design__instance__count__class:endcap_cell": 298, + "finish__design__instance__count__class:inverter": 1239, + "finish__design__instance__count__class:multi_input_combinational_cell": 13918, + "finish__design__instance__count__class:sequential_cell": 562, + "finish__design__instance__count__class:tap_cell": 1049, + "finish__design__instance__count__class:timing_repair_buffer": 1192, + "finish__design__instance__count__class:timing_repair_inverter": 1, "finish__design__instance__count__macros": 0, - "finish__design__instance__count__stdcell": 19109, - "finish__design__instance__utilization": 0.293493, - "finish__design__instance__utilization__stdcell": 0.293493, + "finish__design__instance__count__stdcell": 19208, + "finish__design__instance__utilization": 0.300486, + "finish__design__instance__utilization__stdcell": 0.300486, "finish__design__io": 388, "finish__flow__errors__count": 0, "finish__flow__warnings__count": 1, - "finish__mem__peak": 479224.0, - "finish__power__internal__total": 4.75289, - "finish__power__leakage__total": 5.01431e-06, - "finish__power__switching__total": 5.37937, - "finish__power__total": 10.1323, - "finish__runtime__total": "0:25.59", + "finish__mem__peak": 459944.0, + "finish__power__internal__total": 4.8458, + "finish__power__leakage__total": 3.86628e-06, + "finish__power__switching__total": 5.47245, + "finish__power__total": 10.3182, + "finish__runtime__total": "0:24.13", "finish__timing__drv__hold_violation_count": 0, "finish__timing__drv__max_cap": 0, - "finish__timing__drv__max_cap_limit": 0.523673, + "finish__timing__drv__max_cap_limit": 0.855774, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, "finish__timing__drv__max_slew": 0, - "finish__timing__drv__max_slew_limit": 0.424913, - "finish__timing__drv__setup_violation_count": 185, - "finish__timing__setup__tns": -202.456, - "finish__timing__setup__ws": -1.3971, - "finish__timing__wns_percent_delay": -28.147477, - "finish_merge__cpu__total": 45.35, - "finish_merge__mem__peak": 563068.0, - "finish_merge__runtime__total": "0:45.81", - "floorplan__cpu__total": 207.2, + "finish__timing__drv__max_slew_limit": 0.456947, + "finish__timing__drv__setup_violation_count": 179, + "finish__timing__setup__tns": -182.232, + "finish__timing__setup__ws": -1.25025, + "finish__timing__wns_percent_delay": -26.162925, + "finish_merge__cpu__total": 40.8, + "finish_merge__mem__peak": 529972.0, + "finish_merge__runtime__total": "0:41.12", + "floorplan__cpu__total": 181.43, "floorplan__design__core__area": 1795040.0, "floorplan__design__die__area": 1820700.0, - "floorplan__design__instance__area": 562433, + "floorplan__design__instance__area": 562802, "floorplan__design__instance__area__macros": 0, - "floorplan__design__instance__area__stdcell": 562433, - "floorplan__design__instance__count": 16583, + "floorplan__design__instance__area__stdcell": 562802, + "floorplan__design__instance__count": 16584, "floorplan__design__instance__count__hold_buffer": 0, "floorplan__design__instance__count__macros": 0, "floorplan__design__instance__count__setup_buffer": 9, - "floorplan__design__instance__count__stdcell": 16583, - "floorplan__design__instance__utilization": 0.313326, - "floorplan__design__instance__utilization__stdcell": 0.313326, + "floorplan__design__instance__count__stdcell": 16584, + "floorplan__design__instance__utilization": 0.313531, + "floorplan__design__instance__utilization__stdcell": 0.313531, "floorplan__design__io": 388, "floorplan__flow__errors__count": 0, - "floorplan__flow__warnings__count": 22197, - "floorplan__mem__peak": 237240.0, - "floorplan__power__internal__total": 5.40038, - "floorplan__power__leakage__total": 3.58051e-06, - "floorplan__power__switching__total": 4.22295, - "floorplan__power__total": 9.62333, - "floorplan__runtime__total": "3:27.44", - "floorplan__timing__setup__tns": -69.503, - "floorplan__timing__setup__ws": -0.618566, - "floorplan_io__cpu__total": 1.78, - "floorplan_io__mem__peak": 198044.0, - "floorplan_io__runtime__total": "0:01.91", - "floorplan_macro__cpu__total": 1.76, - "floorplan_macro__mem__peak": 197208.0, - "floorplan_macro__runtime__total": "0:01.91", - "floorplan_pdn__cpu__total": 4.14, - "floorplan_pdn__mem__peak": 218344.0, - "floorplan_pdn__runtime__total": "0:04.32", - "floorplan_tap__cpu__total": 1.81, - "floorplan_tap__mem__peak": 188864.0, - "floorplan_tap__runtime__total": "0:01.93", - "floorplan_tdms__cpu__total": 1.72, - "floorplan_tdms__mem__peak": 197428.0, - "floorplan_tdms__runtime__total": "0:01.94", + "floorplan__flow__warnings__count": 22874, + "floorplan__mem__peak": 237368.0, + "floorplan__power__internal__total": 5.40465, + "floorplan__power__leakage__total": 3.58244e-06, + "floorplan__power__switching__total": 4.22537, + "floorplan__power__total": 9.63002, + "floorplan__runtime__total": "3:01.62", + "floorplan__timing__setup__tns": -69.4191, + "floorplan__timing__setup__ws": -0.640227, + "floorplan_io__cpu__total": 1.75, + "floorplan_io__mem__peak": 198356.0, + "floorplan_io__runtime__total": "0:01.86", + "floorplan_macro__cpu__total": 1.77, + "floorplan_macro__mem__peak": 197736.0, + "floorplan_macro__runtime__total": "0:01.86", + "floorplan_pdn__cpu__total": 4.0, + "floorplan_pdn__mem__peak": 218068.0, + "floorplan_pdn__runtime__total": "0:04.25", + "floorplan_tap__cpu__total": 1.85, + "floorplan_tap__mem__peak": 188632.0, + "floorplan_tap__runtime__total": "0:01.91", + "floorplan_tdms__cpu__total": 0.11, + "floorplan_tdms__mem__peak": 100056.0, + "floorplan_tdms__runtime__total": "0:00.15", "flow__errors__count": 0, "flow__warnings__count": 0, - "globalplace__cpu__total": 317.64, + "globalplace__cpu__total": 270.86, "globalplace__design__core__area": 1795040.0, "globalplace__design__die__area": 1820700.0, - "globalplace__design__instance__area": 570036, + "globalplace__design__instance__area": 570405, "globalplace__design__instance__area__macros": 0, - "globalplace__design__instance__area__stdcell": 570036, - "globalplace__design__instance__count": 17930, + "globalplace__design__instance__area__stdcell": 570405, + "globalplace__design__instance__count": 17931, "globalplace__design__instance__count__macros": 0, - "globalplace__design__instance__count__stdcell": 17930, - "globalplace__design__instance__utilization": 0.317562, - "globalplace__design__instance__utilization__stdcell": 0.317562, + "globalplace__design__instance__count__stdcell": 17931, + "globalplace__design__instance__utilization": 0.317767, + "globalplace__design__instance__utilization__stdcell": 0.317767, "globalplace__design__io": 388, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 0, - "globalplace__mem__peak": 1293408.0, - "globalplace__power__internal__total": 6.07376, - "globalplace__power__leakage__total": 3.66198e-06, - "globalplace__power__switching__total": 5.91107, - "globalplace__power__total": 11.9848, - "globalplace__runtime__total": "0:59.71", - "globalplace__timing__setup__tns": -315.477, - "globalplace__timing__setup__ws": -2.15451, - "globalplace_io__cpu__total": 1.93, - "globalplace_io__mem__peak": 216252.0, - "globalplace_io__runtime__total": "0:02.11", - "globalplace_skip_io__cpu__total": 215.66, - "globalplace_skip_io__mem__peak": 235260.0, - "globalplace_skip_io__runtime__total": "0:08.86", - "globalroute__antenna__violating__nets": 2, - "globalroute__antenna__violating__pins": 2, - "globalroute__antenna_diodes_count": 53, - "globalroute__clock__skew__hold": 0.136613, - "globalroute__clock__skew__setup": 0.0739213, - "globalroute__cpu__total": 303.03, + "globalplace__mem__peak": 1005752.0, + "globalplace__power__internal__total": 6.08187, + "globalplace__power__leakage__total": 3.66391e-06, + "globalplace__power__switching__total": 5.91693, + "globalplace__power__total": 11.9988, + "globalplace__runtime__total": "1:07.69", + "globalplace__timing__setup__tns": -295.995, + "globalplace__timing__setup__ws": -2.18658, + "globalplace_io__cpu__total": 1.96, + "globalplace_io__mem__peak": 216528.0, + "globalplace_io__runtime__total": "0:02.06", + "globalplace_skip_io__cpu__total": 169.47, + "globalplace_skip_io__mem__peak": 235548.0, + "globalplace_skip_io__runtime__total": "0:07.87", + "globalroute__antenna__violating__nets": 0, + "globalroute__antenna__violating__pins": 0, + "globalroute__antenna_diodes_count": 24, + "globalroute__clock__skew__hold": 0.131524, + "globalroute__clock__skew__setup": 0.0709726, + "globalroute__cpu__total": 565.07, "globalroute__design__core__area": 1795040.0, "globalroute__design__die__area": 1820700.0, - "globalroute__design__instance__area": 526775, + "globalroute__design__instance__area": 539278, "globalroute__design__instance__area__macros": 0, - "globalroute__design__instance__area__stdcell": 526775, - "globalroute__design__instance__count": 19099, + "globalroute__design__instance__area__stdcell": 539278, + "globalroute__design__instance__count": 19189, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 0, - "globalroute__design__instance__count__setup_buffer": 170, - "globalroute__design__instance__count__stdcell": 19099, - "globalroute__design__instance__displacement__max": 24.08, - "globalroute__design__instance__displacement__mean": 0.2315, - "globalroute__design__instance__displacement__total": 4413.92, - "globalroute__design__instance__utilization": 0.293461, - "globalroute__design__instance__utilization__stdcell": 0.293461, + "globalroute__design__instance__count__setup_buffer": 319, + "globalroute__design__instance__count__stdcell": 19189, + "globalroute__design__instance__displacement__max": 53.2, + "globalroute__design__instance__displacement__mean": 0.568, + "globalroute__design__instance__displacement__total": 10890.9, + "globalroute__design__instance__utilization": 0.300426, + "globalroute__design__instance__utilization__stdcell": 0.300426, "globalroute__design__io": 388, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 1, - "globalroute__mem__peak": 1482792.0, - "globalroute__power__internal__total": 4.73088, - "globalroute__power__leakage__total": 3.7918e-06, - "globalroute__power__switching__total": 5.42765, - "globalroute__power__total": 10.1585, - "globalroute__route__wirelength__estimated": 1351780.0, - "globalroute__runtime__total": "3:48.66", - "globalroute__timing__clock__slack": -1.367, + "globalroute__mem__peak": 1301560.0, + "globalroute__power__internal__total": 4.82767, + "globalroute__power__leakage__total": 3.8634e-06, + "globalroute__power__switching__total": 5.52034, + "globalroute__power__total": 10.348, + "globalroute__route__wirelength__estimated": 1359430.0, + "globalroute__runtime__total": "8:17.72", + "globalroute__timing__clock__slack": -1.242, "globalroute__timing__drv__hold_violation_count": 0, "globalroute__timing__drv__max_cap": 0, - "globalroute__timing__drv__max_cap_limit": 0.464839, + "globalroute__timing__drv__max_cap_limit": 0.875109, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, "globalroute__timing__drv__max_slew": 0, - "globalroute__timing__drv__max_slew_limit": 0.464569, - "globalroute__timing__drv__setup_violation_count": 183, - "globalroute__timing__setup__tns": -205.891, - "globalroute__timing__setup__ws": -1.36684, - "placeopt__cpu__total": 15.73, + "globalroute__timing__drv__max_slew_limit": 0.474262, + "globalroute__timing__drv__setup_violation_count": 179, + "globalroute__timing__setup__tns": -184.255, + "globalroute__timing__setup__ws": -1.24195, + "placeopt__cpu__total": 14.8, "placeopt__design__core__area": 1795040.0, "placeopt__design__die__area": 1820700.0, - "placeopt__design__instance__area": 527608, + "placeopt__design__instance__area": 526474, "placeopt__design__instance__area__macros": 0, - "placeopt__design__instance__area__stdcell": 527608, - "placeopt__design__instance__count": 18317, + "placeopt__design__instance__area__stdcell": 526474, + "placeopt__design__instance__count": 18318, "placeopt__design__instance__count__macros": 0, - "placeopt__design__instance__count__stdcell": 18317, - "placeopt__design__instance__utilization": 0.293925, - "placeopt__design__instance__utilization__stdcell": 0.293925, + "placeopt__design__instance__count__stdcell": 18318, + "placeopt__design__instance__utilization": 0.293293, + "placeopt__design__instance__utilization__stdcell": 0.293293, "placeopt__design__io": 388, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 0, - "placeopt__mem__peak": 1171344.0, - "placeopt__power__internal__total": 4.56664, - "placeopt__power__leakage__total": 3.94024e-06, - "placeopt__power__switching__total": 5.08775, - "placeopt__power__total": 9.6544, - "placeopt__runtime__total": "0:16.81", + "placeopt__mem__peak": 883316.0, + "placeopt__power__internal__total": 4.56309, + "placeopt__power__leakage__total": 3.93353e-06, + "placeopt__power__switching__total": 5.08386, + "placeopt__power__total": 9.64695, + "placeopt__runtime__total": "0:15.44", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.931488, + "placeopt__timing__drv__max_cap_limit": 0.91232, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.699471, - "placeopt__timing__drv__setup_violation_count": 161, - "placeopt__timing__setup__tns": -216.339, - "placeopt__timing__setup__ws": -1.58265, + "placeopt__timing__drv__max_slew_limit": 0.696245, + "placeopt__timing__drv__setup_violation_count": 162, + "placeopt__timing__setup__tns": -220.411, + "placeopt__timing__setup__ws": -1.64712, "run__flow__design": "aes-hybrid", - "run__flow__generate_date": "2024-09-19 14:29", + "run__flow__generate_date": "2024-10-03 21:04", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15759-g9136ba699", + "run__flow__openroad_version": "v2.0-16239-ge23ebb9f9", "run__flow__platform": "gf180", "run__flow__platform__capacitance_units": "1pF", "run__flow__platform__current_units": "1mA", @@ -302,12 +306,12 @@ "run__flow__platform__voltage_units": "1v", "run__flow__platform_commit": "N/A", "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "5a42c13e-a813-4933-8ba2-655cc6394de2", + "run__flow__uuid": "2bbf91fa-0f5f-493a-8d9c-98667ec5a2c5", "run__flow__variant": "base", - "synth__cpu__total": 24.91, + "synth__cpu__total": 23.25, "synth__design__instance__area__stdcell": 542978.9568, "synth__design__instance__count__stdcell": 16498.0, - "synth__mem__peak": 336148.0, - "synth__runtime__total": "0:25.40", - "total_time": "0:15:43.620000" + "synth__mem__peak": 336652.0, + "synth__runtime__total": "0:23.65", + "total_time": "0:19:35.080000" } \ No newline at end of file diff --git a/flow/designs/gf180/aes-hybrid/rules-base.json b/flow/designs/gf180/aes-hybrid/rules-base.json index ce9e0b18b8..6e78fae226 100644 --- a/flow/designs/gf180/aes-hybrid/rules-base.json +++ b/flow/designs/gf180/aes-hybrid/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 614854.06, + "value": 624425.81, "compare": "<=" }, "constraints__clocks__count": { @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 592974, + "value": 605445, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 19434, + "value": 21065, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,19 +20,19 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 1690, + "value": 1832, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 1690, + "value": 1832, "compare": "<=" }, "globalroute__antenna_diodes_count": { - "value": 61, + "value": 28, "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 1797750, + "value": 1849747, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -44,19 +44,19 @@ "compare": "<=" }, "detailedroute__antenna_diodes_count": { - "value": 12, + "value": 22, "compare": "<=" }, "finish__timing__setup__ws": { - "value": -1.54, + "value": -1.39, "compare": ">=" }, "finish__design__instance__area": { - "value": 551106, + "value": 611004, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 845, + "value": 916, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { @@ -64,7 +64,7 @@ "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -43.77, + "value": -41.15, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/gf180/aes/metadata-base-ok.json b/flow/designs/gf180/aes/metadata-base-ok.json index de54fc2900..2323bc40dc 100644 --- a/flow/designs/gf180/aes/metadata-base-ok.json +++ b/flow/designs/gf180/aes/metadata-base-ok.json @@ -3,327 +3,301 @@ "constraints__clocks__details": [ "clk: 3.0000" ], - "cts__clock__skew__hold": 0.134928, - "cts__clock__skew__setup": 0.0927635, - "cts__cpu__total": 221.42, + "cts__clock__skew__hold": 0.146048, + "cts__clock__skew__setup": 0.0723069, + "cts__cpu__total": 201.93, "cts__design__core__area": 1543450.0, "cts__design__die__area": 1561350.0, - "cts__design__instance__area": 661923, + "cts__design__instance__area": 653569, "cts__design__instance__area__macros": 0, - "cts__design__instance__area__stdcell": 661923, - "cts__design__instance__count": 19458, - "cts__design__instance__count__hold_buffer": 0, + "cts__design__instance__area__stdcell": 653569, + "cts__design__instance__count": 19275, + "cts__design__instance__count__hold_buffer": 1, "cts__design__instance__count__macros": 0, - "cts__design__instance__count__setup_buffer": 434, - "cts__design__instance__count__stdcell": 19458, - "cts__design__instance__displacement__max": 34.72, - "cts__design__instance__displacement__mean": 0.6705, - "cts__design__instance__displacement__total": 13049.2, - "cts__design__instance__utilization": 0.428859, - "cts__design__instance__utilization__stdcell": 0.428859, + "cts__design__instance__count__setup_buffer": 254, + "cts__design__instance__count__stdcell": 19275, + "cts__design__instance__displacement__max": 37.52, + "cts__design__instance__displacement__mean": 0.4205, + "cts__design__instance__displacement__total": 8108.92, + "cts__design__instance__utilization": 0.423446, + "cts__design__instance__utilization__stdcell": 0.423446, "cts__design__io": 388, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 1, - "cts__mem__peak": 872204.0, - "cts__power__internal__total": 6.17238, - "cts__power__leakage__total": 4.18446e-06, - "cts__power__switching__total": 5.98941, - "cts__power__total": 12.1618, - "cts__route__wirelength__estimated": 1096430.0, - "cts__runtime__total": "3:42.36", + "cts__mem__peak": 744672.0, + "cts__power__internal__total": 6.10216, + "cts__power__leakage__total": 4.13414e-06, + "cts__power__switching__total": 5.9667, + "cts__power__total": 12.0689, + "cts__route__wirelength__estimated": 1088240.0, + "cts__runtime__total": "3:22.58", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, - "cts__timing__drv__max_cap_limit": 0.906957, + "cts__timing__drv__max_cap_limit": 0.903495, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.719307, + "cts__timing__drv__max_slew_limit": 0.722, "cts__timing__drv__setup_violation_count": 160, - "cts__timing__setup__tns": -144.607, - "cts__timing__setup__ws": -1.10193, - "design__io__hpwl": 341496625, + "cts__timing__setup__tns": -141.602, + "cts__timing__setup__ws": -1.0784, + "design__io__hpwl": 348799039, "design__violations": 0, - "detailedplace__cpu__total": 16.32, + "detailedplace__cpu__total": 19.36, "detailedplace__design__core__area": 1543450.0, "detailedplace__design__die__area": 1561350.0, - "detailedplace__design__instance__area": 624673, + "detailedplace__design__instance__area": 627719, "detailedplace__design__instance__area__macros": 0, - "detailedplace__design__instance__area__stdcell": 624673, + "detailedplace__design__instance__area__stdcell": 627719, "detailedplace__design__instance__count": 18952, "detailedplace__design__instance__count__macros": 0, "detailedplace__design__instance__count__stdcell": 18952, - "detailedplace__design__instance__displacement__max": 70.56, - "detailedplace__design__instance__displacement__mean": 3.875, - "detailedplace__design__instance__displacement__total": 73441.8, - "detailedplace__design__instance__utilization": 0.404725, - "detailedplace__design__instance__utilization__stdcell": 0.404725, + "detailedplace__design__instance__displacement__max": 72.24, + "detailedplace__design__instance__displacement__mean": 4.007, + "detailedplace__design__instance__displacement__total": 75943.5, + "detailedplace__design__instance__utilization": 0.406698, + "detailedplace__design__instance__utilization__stdcell": 0.406698, "detailedplace__design__io": 388, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 0, - "detailedplace__mem__peak": 258112.0, - "detailedplace__power__internal__total": 5.75785, - "detailedplace__power__leakage__total": 3.9644e-06, - "detailedplace__power__switching__total": 5.75706, - "detailedplace__power__total": 11.5149, - "detailedplace__route__wirelength__estimated": 1096290.0, - "detailedplace__runtime__total": "0:16.50", + "detailedplace__mem__peak": 313732.0, + "detailedplace__power__internal__total": 5.77416, + "detailedplace__power__leakage__total": 3.9816e-06, + "detailedplace__power__switching__total": 5.77502, + "detailedplace__power__total": 11.5492, + "detailedplace__route__wirelength__estimated": 1098020.0, + "detailedplace__runtime__total": "0:19.55", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, - "detailedplace__timing__drv__max_cap_limit": 0.907278, + "detailedplace__timing__drv__max_cap_limit": 0.904747, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.718699, + "detailedplace__timing__drv__max_slew_limit": 0.722522, "detailedplace__timing__drv__setup_violation_count": 160, - "detailedplace__timing__setup__tns": -175.159, - "detailedplace__timing__setup__ws": -1.28921, + "detailedplace__timing__setup__tns": -171.962, + "detailedplace__timing__setup__ws": -1.27709, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, - "detailedroute__antenna_diodes_count": 2, + "detailedroute__antenna_diodes_count": 3, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 8, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 8472, - "detailedroute__route__drc_errors__iter:10": 1, - "detailedroute__route__drc_errors__iter:11": 1, - "detailedroute__route__drc_errors__iter:12": 1, - "detailedroute__route__drc_errors__iter:13": 1, - "detailedroute__route__drc_errors__iter:14": 1, - "detailedroute__route__drc_errors__iter:15": 1, - "detailedroute__route__drc_errors__iter:16": 1, - "detailedroute__route__drc_errors__iter:17": 1, - "detailedroute__route__drc_errors__iter:18": 1, - "detailedroute__route__drc_errors__iter:19": 1, - "detailedroute__route__drc_errors__iter:2": 1936, - "detailedroute__route__drc_errors__iter:20": 1, - "detailedroute__route__drc_errors__iter:21": 1, - "detailedroute__route__drc_errors__iter:22": 1, - "detailedroute__route__drc_errors__iter:23": 1, - "detailedroute__route__drc_errors__iter:24": 0, - "detailedroute__route__drc_errors__iter:3": 1588, - "detailedroute__route__drc_errors__iter:4": 76, - "detailedroute__route__drc_errors__iter:5": 1, - "detailedroute__route__drc_errors__iter:6": 1, - "detailedroute__route__drc_errors__iter:7": 1, - "detailedroute__route__drc_errors__iter:8": 1, - "detailedroute__route__drc_errors__iter:9": 1, - "detailedroute__route__net": 18151, + "detailedroute__route__drc_errors__iter:1": 4, + "detailedroute__route__drc_errors__iter:2": 1, + "detailedroute__route__drc_errors__iter:3": 0, + "detailedroute__route__drc_errors__iter:4": 54, + "detailedroute__route__drc_errors__iter:5": 0, + "detailedroute__route__net": 18162, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 123497, + "detailedroute__route__vias": 123929, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 123497, - "detailedroute__route__wirelength": 1308110, - "detailedroute__route__wirelength__iter:1": 1316233, - "detailedroute__route__wirelength__iter:10": 1308175, - "detailedroute__route__wirelength__iter:11": 1308175, - "detailedroute__route__wirelength__iter:12": 1308175, - "detailedroute__route__wirelength__iter:13": 1308175, - "detailedroute__route__wirelength__iter:14": 1308175, - "detailedroute__route__wirelength__iter:15": 1308175, - "detailedroute__route__wirelength__iter:16": 1308175, - "detailedroute__route__wirelength__iter:17": 1308175, - "detailedroute__route__wirelength__iter:18": 1308109, - "detailedroute__route__wirelength__iter:19": 1308109, - "detailedroute__route__wirelength__iter:2": 1310465, - "detailedroute__route__wirelength__iter:20": 1308109, - "detailedroute__route__wirelength__iter:21": 1308109, - "detailedroute__route__wirelength__iter:22": 1308109, - "detailedroute__route__wirelength__iter:23": 1308109, - "detailedroute__route__wirelength__iter:24": 1308110, - "detailedroute__route__wirelength__iter:3": 1308632, - "detailedroute__route__wirelength__iter:4": 1308214, - "detailedroute__route__wirelength__iter:5": 1308175, - "detailedroute__route__wirelength__iter:6": 1308175, - "detailedroute__route__wirelength__iter:7": 1308175, - "detailedroute__route__wirelength__iter:8": 1308175, - "detailedroute__route__wirelength__iter:9": 1308175, - "finish__clock__skew__hold": 0.161964, - "finish__clock__skew__setup": 0.115037, - "finish__cpu__total": 19.26, + "detailedroute__route__vias__singlecut": 123929, + "detailedroute__route__wirelength": 1316679, + "detailedroute__route__wirelength__iter:1": 1316674, + "detailedroute__route__wirelength__iter:2": 1316679, + "detailedroute__route__wirelength__iter:3": 1316679, + "detailedroute__route__wirelength__iter:4": 1316657, + "detailedroute__route__wirelength__iter:5": 1316653, + "finish__clock__skew__hold": 0.173242, + "finish__clock__skew__setup": 0.0970612, + "finish__cpu__total": 23.69, "finish__design__core__area": 1543450.0, "finish__design__die__area": 1561350.0, - "finish__design__instance__area": 670924, + "finish__design__instance__area": 677139, "finish__design__instance__area__macros": 0, - "finish__design__instance__area__stdcell": 670924, - "finish__design__instance__count": 19625, + "finish__design__instance__area__stdcell": 677139, + "finish__design__instance__count": 19637, + "finish__design__instance__count__class:antenna_cell": 4, + "finish__design__instance__count__class:buffer": 842, + "finish__design__instance__count__class:clock_buffer": 34, + "finish__design__instance__count__class:clock_inverter": 24, + "finish__design__instance__count__class:endcap_cell": 492, + "finish__design__instance__count__class:fill_cell": 25433, + "finish__design__instance__count__class:inverter": 1239, + "finish__design__instance__count__class:multi_input_combinational_cell": 13917, + "finish__design__instance__count__class:sequential_cell": 562, + "finish__design__instance__count__class:tap_cell": 1488, + "finish__design__instance__count__class:timing_repair_buffer": 1034, + "finish__design__instance__count__class:timing_repair_inverter": 1, "finish__design__instance__count__macros": 0, - "finish__design__instance__count__stdcell": 19625, - "finish__design__instance__utilization": 0.434691, - "finish__design__instance__utilization__stdcell": 0.434691, + "finish__design__instance__count__stdcell": 19637, + "finish__design__instance__utilization": 0.438717, + "finish__design__instance__utilization__stdcell": 0.438717, "finish__design__io": 388, "finish__flow__errors__count": 0, "finish__flow__warnings__count": 1, - "finish__mem__peak": 458700.0, - "finish__power__internal__total": 6.27623, - "finish__power__leakage__total": 5.77925e-06, - "finish__power__switching__total": 6.37023, - "finish__power__total": 12.6465, - "finish__runtime__total": "0:19.84", - "finish__timing__drv__hold_violation_count": 1, + "finish__mem__peak": 461812.0, + "finish__power__internal__total": 6.35988, + "finish__power__leakage__total": 5.81089e-06, + "finish__power__switching__total": 6.42695, + "finish__power__total": 12.7868, + "finish__runtime__total": "0:24.13", + "finish__timing__drv__hold_violation_count": 0, "finish__timing__drv__max_cap": 0, - "finish__timing__drv__max_cap_limit": 0.907861, + "finish__timing__drv__max_cap_limit": 0.814818, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, "finish__timing__drv__max_slew": 0, - "finish__timing__drv__max_slew_limit": 0.731518, + "finish__timing__drv__max_slew_limit": 0.734082, "finish__timing__drv__setup_violation_count": 160, - "finish__timing__setup__tns": -154.164, - "finish__timing__setup__ws": -1.15915, - "finish__timing__wns_percent_delay": -24.614601, - "finish_merge__cpu__total": 44.19, - "finish_merge__mem__peak": 584720.0, - "finish_merge__runtime__total": "0:44.65", - "floorplan__cpu__total": 112.75, + "finish__timing__setup__tns": -140.541, + "finish__timing__setup__ws": -1.08159, + "finish__timing__wns_percent_delay": -23.062325, + "finish_merge__cpu__total": 52.82, + "finish_merge__mem__peak": 580284.0, + "finish_merge__runtime__total": "0:53.26", + "floorplan__cpu__total": 137.73, "floorplan__design__core__area": 1543450.0, "floorplan__design__die__area": 1561350.0, - "floorplan__design__instance__area": 562473, + "floorplan__design__instance__area": 562564, "floorplan__design__instance__area__macros": 0, - "floorplan__design__instance__area__stdcell": 562473, + "floorplan__design__instance__area__stdcell": 562564, "floorplan__design__instance__count": 16585, "floorplan__design__instance__count__hold_buffer": 0, "floorplan__design__instance__count__macros": 0, "floorplan__design__instance__count__setup_buffer": 9, "floorplan__design__instance__count__stdcell": 16585, - "floorplan__design__instance__utilization": 0.364425, - "floorplan__design__instance__utilization__stdcell": 0.364425, + "floorplan__design__instance__utilization": 0.364484, + "floorplan__design__instance__utilization__stdcell": 0.364484, "floorplan__design__io": 388, "floorplan__flow__errors__count": 0, - "floorplan__flow__warnings__count": 17972, - "floorplan__mem__peak": 202064.0, - "floorplan__power__internal__total": 5.40968, - "floorplan__power__leakage__total": 3.56943e-06, - "floorplan__power__switching__total": 4.22449, - "floorplan__power__total": 9.63417, - "floorplan__runtime__total": "1:52.95", - "floorplan__timing__setup__tns": -69.7521, - "floorplan__timing__setup__ws": -0.605857, - "floorplan_io__cpu__total": 0.82, - "floorplan_io__mem__peak": 163732.0, - "floorplan_io__runtime__total": "0:00.97", - "floorplan_macro__cpu__total": 0.89, - "floorplan_macro__mem__peak": 162968.0, - "floorplan_macro__runtime__total": "0:00.96", - "floorplan_pdn__cpu__total": 3.09, - "floorplan_pdn__mem__peak": 189584.0, - "floorplan_pdn__runtime__total": "0:03.19", - "floorplan_tap__cpu__total": 0.91, - "floorplan_tap__mem__peak": 154428.0, - "floorplan_tap__runtime__total": "0:00.98", - "floorplan_tdms__cpu__total": 0.92, - "floorplan_tdms__mem__peak": 163480.0, - "floorplan_tdms__runtime__total": "0:00.98", + "floorplan__flow__warnings__count": 17957, + "floorplan__mem__peak": 202636.0, + "floorplan__power__internal__total": 5.41043, + "floorplan__power__leakage__total": 3.57007e-06, + "floorplan__power__switching__total": 4.22514, + "floorplan__power__total": 9.63558, + "floorplan__runtime__total": "2:17.96", + "floorplan__timing__setup__tns": -69.5879, + "floorplan__timing__setup__ws": -0.605856, + "floorplan_io__cpu__total": 1.02, + "floorplan_io__mem__peak": 163996.0, + "floorplan_io__runtime__total": "0:01.10", + "floorplan_macro__cpu__total": 1.04, + "floorplan_macro__mem__peak": 163112.0, + "floorplan_macro__runtime__total": "0:01.13", + "floorplan_pdn__cpu__total": 3.47, + "floorplan_pdn__mem__peak": 189012.0, + "floorplan_pdn__runtime__total": "0:03.62", + "floorplan_tap__cpu__total": 0.96, + "floorplan_tap__mem__peak": 154528.0, + "floorplan_tap__runtime__total": "0:01.06", + "floorplan_tdms__cpu__total": 0.11, + "floorplan_tdms__mem__peak": 99736.0, + "floorplan_tdms__runtime__total": "0:00.17", "flow__errors__count": 0, "flow__warnings__count": 0, - "globalplace__cpu__total": 295.65, + "globalplace__cpu__total": 462.07, "globalplace__design__core__area": 1543450.0, "globalplace__design__die__area": 1561350.0, - "globalplace__design__instance__area": 573650, + "globalplace__design__instance__area": 573740, "globalplace__design__instance__area__macros": 0, - "globalplace__design__instance__area__stdcell": 573650, + "globalplace__design__instance__area__stdcell": 573740, "globalplace__design__instance__count": 18565, "globalplace__design__instance__count__macros": 0, "globalplace__design__instance__count__stdcell": 18565, - "globalplace__design__instance__utilization": 0.371667, - "globalplace__design__instance__utilization__stdcell": 0.371667, + "globalplace__design__instance__utilization": 0.371725, + "globalplace__design__instance__utilization__stdcell": 0.371725, "globalplace__design__io": 388, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 0, - "globalplace__mem__peak": 807396.0, - "globalplace__power__internal__total": 5.95155, - "globalplace__power__leakage__total": 3.68918e-06, - "globalplace__power__switching__total": 5.60719, - "globalplace__power__total": 11.5587, - "globalplace__runtime__total": "0:40.37", - "globalplace__timing__setup__tns": -239.979, - "globalplace__timing__setup__ws": -1.81683, - "globalplace_io__cpu__total": 1.06, - "globalplace_io__mem__peak": 187816.0, - "globalplace_io__runtime__total": "0:01.18", - "globalplace_skip_io__cpu__total": 206.11, - "globalplace_skip_io__mem__peak": 207888.0, - "globalplace_skip_io__runtime__total": "0:07.66", + "globalplace__mem__peak": 686044.0, + "globalplace__power__internal__total": 5.95047, + "globalplace__power__leakage__total": 3.68982e-06, + "globalplace__power__switching__total": 5.61252, + "globalplace__power__total": 11.563, + "globalplace__runtime__total": "1:02.43", + "globalplace__timing__setup__tns": -239.873, + "globalplace__timing__setup__ws": -1.77844, + "globalplace_io__cpu__total": 1.24, + "globalplace_io__mem__peak": 188328.0, + "globalplace_io__runtime__total": "0:01.35", + "globalplace_skip_io__cpu__total": 179.28, + "globalplace_skip_io__mem__peak": 208492.0, + "globalplace_skip_io__runtime__total": "0:08.20", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, - "globalroute__antenna_diodes_count": 0, - "globalroute__clock__skew__hold": 0.136138, - "globalroute__clock__skew__setup": 0.0939363, - "globalroute__cpu__total": 208.41, + "globalroute__antenna_diodes_count": 1, + "globalroute__clock__skew__hold": 0.149462, + "globalroute__clock__skew__setup": 0.0837186, + "globalroute__cpu__total": 348.6, "globalroute__design__core__area": 1543450.0, "globalroute__design__die__area": 1561350.0, - "globalroute__design__instance__area": 670913, + "globalroute__design__instance__area": 677122, "globalroute__design__instance__area__macros": 0, - "globalroute__design__instance__area__stdcell": 670913, - "globalroute__design__instance__count": 19623, + "globalroute__design__instance__area__stdcell": 677122, + "globalroute__design__instance__count": 19634, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 0, - "globalroute__design__instance__count__setup_buffer": 169, - "globalroute__design__instance__count__stdcell": 19623, - "globalroute__design__instance__displacement__max": 28.56, - "globalroute__design__instance__displacement__mean": 0.209, - "globalroute__design__instance__displacement__total": 4109.28, - "globalroute__design__instance__utilization": 0.434683, - "globalroute__design__instance__utilization__stdcell": 0.434683, + "globalroute__design__instance__count__setup_buffer": 345, + "globalroute__design__instance__count__stdcell": 19634, + "globalroute__design__instance__displacement__max": 44.8, + "globalroute__design__instance__displacement__mean": 0.551, + "globalroute__design__instance__displacement__total": 10820.9, + "globalroute__design__instance__utilization": 0.438706, + "globalroute__design__instance__utilization__stdcell": 0.438706, "globalroute__design__io": 388, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 1, - "globalroute__mem__peak": 953984.0, - "globalroute__power__internal__total": 6.26103, - "globalroute__power__leakage__total": 4.23848e-06, - "globalroute__power__switching__total": 6.43728, - "globalroute__power__total": 12.6983, - "globalroute__route__wirelength__estimated": 1103820.0, - "globalroute__runtime__total": "2:17.55", - "globalroute__timing__clock__slack": -1.182, + "globalroute__mem__peak": 883464.0, + "globalroute__power__internal__total": 6.34578, + "globalroute__power__leakage__total": 4.27221e-06, + "globalroute__power__switching__total": 6.48224, + "globalroute__power__total": 12.828, + "globalroute__route__wirelength__estimated": 1107250.0, + "globalroute__runtime__total": "4:36.17", + "globalroute__timing__clock__slack": -1.042, "globalroute__timing__drv__hold_violation_count": 0, "globalroute__timing__drv__max_cap": 0, - "globalroute__timing__drv__max_cap_limit": 0.89109, + "globalroute__timing__drv__max_cap_limit": 0.820529, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, "globalroute__timing__drv__max_slew": 0, - "globalroute__timing__drv__max_slew_limit": 0.730926, + "globalroute__timing__drv__max_slew_limit": 0.723078, "globalroute__timing__drv__setup_violation_count": 160, - "globalroute__timing__setup__tns": -157.034, - "globalroute__timing__setup__ws": -1.18238, - "placeopt__cpu__total": 11.32, + "globalroute__timing__setup__tns": -143.229, + "globalroute__timing__setup__ws": -1.04204, + "placeopt__cpu__total": 12.88, "placeopt__design__core__area": 1543450.0, "placeopt__design__die__area": 1561350.0, - "placeopt__design__instance__area": 624673, + "placeopt__design__instance__area": 627719, "placeopt__design__instance__area__macros": 0, - "placeopt__design__instance__area__stdcell": 624673, + "placeopt__design__instance__area__stdcell": 627719, "placeopt__design__instance__count": 18952, "placeopt__design__instance__count__macros": 0, "placeopt__design__instance__count__stdcell": 18952, - "placeopt__design__instance__utilization": 0.404725, - "placeopt__design__instance__utilization__stdcell": 0.404725, + "placeopt__design__instance__utilization": 0.406698, + "placeopt__design__instance__utilization__stdcell": 0.406698, "placeopt__design__io": 388, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 0, - "placeopt__mem__peak": 688692.0, - "placeopt__power__internal__total": 5.76527, - "placeopt__power__leakage__total": 3.9644e-06, - "placeopt__power__switching__total": 5.7596, - "placeopt__power__total": 11.5249, - "placeopt__runtime__total": "0:11.85", + "placeopt__mem__peak": 544684.0, + "placeopt__power__internal__total": 5.77962, + "placeopt__power__leakage__total": 3.9816e-06, + "placeopt__power__switching__total": 5.77654, + "placeopt__power__total": 11.5562, + "placeopt__runtime__total": "0:13.28", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.90115, + "placeopt__timing__drv__max_cap_limit": 0.896896, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.717269, + "placeopt__timing__drv__max_slew_limit": 0.72191, "placeopt__timing__drv__setup_violation_count": 160, - "placeopt__timing__setup__tns": -173.619, - "placeopt__timing__setup__ws": -1.28631, + "placeopt__timing__setup__tns": -169.213, + "placeopt__timing__setup__ws": -1.26521, "run__flow__design": "aes", - "run__flow__generate_date": "2024-09-19 14:24", + "run__flow__generate_date": "2024-10-03 21:00", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15759-g9136ba699", + "run__flow__openroad_version": "v2.0-16239-ge23ebb9f9", "run__flow__platform": "gf180", "run__flow__platform__capacitance_units": "1pF", "run__flow__platform__current_units": "1mA", @@ -334,12 +308,12 @@ "run__flow__platform__voltage_units": "1v", "run__flow__platform_commit": "N/A", "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "b1850c84-f9fe-4c9f-afdc-474c46625fb4", + "run__flow__uuid": "2b701c1b-2d5c-4769-b843-a5e5fb2300d1", "run__flow__variant": "base", - "synth__cpu__total": 20.1, + "synth__cpu__total": 24.76, "synth__design__instance__area__stdcell": 542978.9568, "synth__design__instance__count__stdcell": 16498.0, - "synth__mem__peak": 335884.0, - "synth__runtime__total": "0:20.52", - "total_time": "0:10:42.510000" + "synth__mem__peak": 336652.0, + "synth__runtime__total": "0:25.28", + "total_time": "0:13:51.270000" } \ No newline at end of file diff --git a/flow/designs/gf180/aes/rules-base.json b/flow/designs/gf180/aes/rules-base.json index b82e62f002..dab9770552 100644 --- a/flow/designs/gf180/aes/rules-base.json +++ b/flow/designs/gf180/aes/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 617372.77, + "value": 624425.81, "compare": "<=" }, "constraints__clocks__count": { @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 639294, + "value": 718283, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 20687, + "value": 21795, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,19 +20,19 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 1799, + "value": 1895, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 1799, + "value": 1895, "compare": "<=" }, "globalroute__antenna_diodes_count": { - "value": 0, + "value": 1, "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 1466826, + "value": 1512295, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -44,19 +44,19 @@ "compare": "<=" }, "detailedroute__antenna_diodes_count": { - "value": 2, + "value": 3, "compare": "<=" }, "finish__timing__setup__ws": { - "value": -1.26, + "value": -1.23, "compare": ">=" }, "finish__design__instance__area": { - "value": 771563, + "value": 778703, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 899, + "value": 948, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { @@ -64,7 +64,7 @@ "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -38.58, + "value": -37.66, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/gf180/ibex/metadata-base-ok.json b/flow/designs/gf180/ibex/metadata-base-ok.json index c52a5094f2..48990f1db9 100644 --- a/flow/designs/gf180/ibex/metadata-base-ok.json +++ b/flow/designs/gf180/ibex/metadata-base-ok.json @@ -3,145 +3,156 @@ "constraints__clocks__details": [ "core_clock: 10.0000" ], - "cts__clock__skew__hold": 6.53651, - "cts__clock__skew__setup": 9.45703, - "cts__cpu__total": 605.45, + "cts__clock__skew__hold": 6.53335, + "cts__clock__skew__setup": 9.33727, + "cts__cpu__total": 1036.93, "cts__design__core__area": 1436150.0, "cts__design__die__area": 1450880.0, - "cts__design__instance__area": 810001, + "cts__design__instance__area": 815149, "cts__design__instance__area__macros": 0, - "cts__design__instance__area__stdcell": 810001, - "cts__design__instance__count": 16487, + "cts__design__instance__area__stdcell": 815149, + "cts__design__instance__count": 16502, "cts__design__instance__count__hold_buffer": 0, "cts__design__instance__count__macros": 0, - "cts__design__instance__count__setup_buffer": 270, - "cts__design__instance__count__stdcell": 16487, - "cts__design__instance__displacement__max": 94.08, - "cts__design__instance__displacement__mean": 0.757, - "cts__design__instance__displacement__total": 12484.4, - "cts__design__instance__utilization": 0.564009, - "cts__design__instance__utilization__stdcell": 0.564009, + "cts__design__instance__count__setup_buffer": 271, + "cts__design__instance__count__stdcell": 16502, + "cts__design__instance__displacement__max": 58.8, + "cts__design__instance__displacement__mean": 0.717, + "cts__design__instance__displacement__total": 11837.8, + "cts__design__instance__utilization": 0.567594, + "cts__design__instance__utilization__stdcell": 0.567594, "cts__design__io": 264, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 1, - "cts__mem__peak": 819896.0, - "cts__power__internal__total": 2.11135, - "cts__power__leakage__total": 4.85681e-06, - "cts__power__switching__total": 1.41943, - "cts__power__total": 3.53078, - "cts__route__wirelength__estimated": 1258480.0, - "cts__runtime__total": "10:06.17", + "cts__mem__peak": 710384.0, + "cts__power__internal__total": 2.13421, + "cts__power__leakage__total": 4.88739e-06, + "cts__power__switching__total": 1.45043, + "cts__power__total": 3.58465, + "cts__route__wirelength__estimated": 1265720.0, + "cts__runtime__total": "17:17.65", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, - "cts__timing__drv__max_cap_limit": 0.415662, + "cts__timing__drv__max_cap_limit": 0.435791, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.291085, - "cts__timing__drv__setup_violation_count": 875, - "cts__timing__setup__tns": -734.745, - "cts__timing__setup__ws": -1.65926, + "cts__timing__drv__max_slew_limit": 0.289091, + "cts__timing__drv__setup_violation_count": 868, + "cts__timing__setup__tns": -814.352, + "cts__timing__setup__ws": -1.74975, "design__io__hpwl": 129760044, "design__violations": 0, - "detailedplace__cpu__total": 21.29, + "detailedplace__cpu__total": 25.83, "detailedplace__design__core__area": 1436150.0, "detailedplace__design__die__area": 1450880.0, - "detailedplace__design__instance__area": 743827, + "detailedplace__design__instance__area": 746559, "detailedplace__design__instance__area__macros": 0, - "detailedplace__design__instance__area__stdcell": 743827, - "detailedplace__design__instance__count": 15890, + "detailedplace__design__instance__area__stdcell": 746559, + "detailedplace__design__instance__count": 15889, "detailedplace__design__instance__count__macros": 0, - "detailedplace__design__instance__count__stdcell": 15890, - "detailedplace__design__instance__displacement__max": 46.48, - "detailedplace__design__instance__displacement__mean": 4.9865, - "detailedplace__design__instance__displacement__total": 79242.4, - "detailedplace__design__instance__utilization": 0.517932, - "detailedplace__design__instance__utilization__stdcell": 0.517932, + "detailedplace__design__instance__count__stdcell": 15889, + "detailedplace__design__instance__displacement__max": 44.8, + "detailedplace__design__instance__displacement__mean": 4.9875, + "detailedplace__design__instance__displacement__total": 79253, + "detailedplace__design__instance__utilization": 0.519834, + "detailedplace__design__instance__utilization__stdcell": 0.519834, "detailedplace__design__io": 264, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 0, - "detailedplace__mem__peak": 256988.0, - "detailedplace__power__internal__total": 1.73585, - "detailedplace__power__leakage__total": 4.47516e-06, - "detailedplace__power__switching__total": 1.24136, - "detailedplace__power__total": 2.97721, - "detailedplace__route__wirelength__estimated": 1195720.0, - "detailedplace__runtime__total": "0:21.42", + "detailedplace__mem__peak": 309196.0, + "detailedplace__power__internal__total": 1.74593, + "detailedplace__power__leakage__total": 4.49012e-06, + "detailedplace__power__switching__total": 1.2454, + "detailedplace__power__total": 2.99133, + "detailedplace__route__wirelength__estimated": 1195600.0, + "detailedplace__runtime__total": "0:26.03", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, - "detailedplace__timing__drv__max_cap_limit": 0.424039, + "detailedplace__timing__drv__max_cap_limit": 0.42805, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.294501, - "detailedplace__timing__drv__setup_violation_count": 1033, - "detailedplace__timing__setup__tns": -703.814, - "detailedplace__timing__setup__ws": -1.78645, + "detailedplace__timing__drv__max_slew_limit": 0.291023, + "detailedplace__timing__drv__setup_violation_count": 1027, + "detailedplace__timing__setup__tns": -691.29, + "detailedplace__timing__setup__ws": -1.74542, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, - "detailedroute__antenna_diodes_count": 4, + "detailedroute__antenna_diodes_count": 8, "detailedroute__flow__errors__count": 0, - "detailedroute__flow__warnings__count": 13, + "detailedroute__flow__warnings__count": 20, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 9313, - "detailedroute__route__drc_errors__iter:2": 1763, - "detailedroute__route__drc_errors__iter:3": 1472, - "detailedroute__route__drc_errors__iter:4": 141, - "detailedroute__route__drc_errors__iter:5": 28, - "detailedroute__route__drc_errors__iter:6": 1, - "detailedroute__route__drc_errors__iter:7": 0, - "detailedroute__route__net": 15498, + "detailedroute__route__drc_errors__iter:1": 29, + "detailedroute__route__drc_errors__iter:2": 6, + "detailedroute__route__drc_errors__iter:3": 6, + "detailedroute__route__drc_errors__iter:4": 0, + "detailedroute__route__drc_errors__iter:5": 9, + "detailedroute__route__drc_errors__iter:6": 0, + "detailedroute__route__net": 15451, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 125081, + "detailedroute__route__vias": 124779, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 125081, - "detailedroute__route__wirelength": 1572997, - "detailedroute__route__wirelength__iter:1": 1579957, - "detailedroute__route__wirelength__iter:2": 1574957, - "detailedroute__route__wirelength__iter:3": 1573453, - "detailedroute__route__wirelength__iter:4": 1572991, - "detailedroute__route__wirelength__iter:5": 1572999, - "detailedroute__route__wirelength__iter:6": 1572997, - "detailedroute__route__wirelength__iter:7": 1572997, - "finish__clock__skew__hold": 6.58974, - "finish__clock__skew__setup": 9.51418, - "finish__cpu__total": 52.7, + "detailedroute__route__vias__singlecut": 124779, + "detailedroute__route__wirelength": 1570716, + "detailedroute__route__wirelength__iter:1": 1570711, + "detailedroute__route__wirelength__iter:2": 1570710, + "detailedroute__route__wirelength__iter:3": 1570710, + "detailedroute__route__wirelength__iter:4": 1570716, + "detailedroute__route__wirelength__iter:5": 1570490, + "detailedroute__route__wirelength__iter:6": 1570507, + "finish__clock__skew__hold": 6.59177, + "finish__clock__skew__setup": 9.50491, + "finish__cpu__total": 61.63, "finish__design__core__area": 1436150.0, "finish__design__die__area": 1450880.0, - "finish__design__instance__area": 834126, + "finish__design__instance__area": 834146, "finish__design__instance__area__macros": 0, - "finish__design__instance__area__stdcell": 834126, - "finish__design__instance__count": 16745, + "finish__design__instance__area__stdcell": 834146, + "finish__design__instance__count": 16696, + "finish__design__instance__count__class:antenna_cell": 18, + "finish__design__instance__count__class:buffer": 1009, + "finish__design__instance__count__class:clock_buffer": 262, + "finish__design__instance__count__class:clock_inverter": 34, + "finish__design__instance__count__class:endcap_cell": 474, + "finish__design__instance__count__class:fill_cell": 23367, + "finish__design__instance__count__class:inverter": 952, + "finish__design__instance__count__class:multi_input_combinational_cell": 9849, + "finish__design__instance__count__class:sequential_cell": 1932, + "finish__design__instance__count__class:tap_cell": 1434, + "finish__design__instance__count__class:tie_cell": 6, + "finish__design__instance__count__class:timing_repair_buffer": 722, + "finish__design__instance__count__class:timing_repair_inverter": 4, "finish__design__instance__count__macros": 0, - "finish__design__instance__count__stdcell": 16745, - "finish__design__instance__utilization": 0.580808, - "finish__design__instance__utilization__stdcell": 0.580808, + "finish__design__instance__count__stdcell": 16696, + "finish__design__instance__utilization": 0.580822, + "finish__design__instance__utilization__stdcell": 0.580822, "finish__design__io": 264, "finish__flow__errors__count": 0, "finish__flow__warnings__count": 1, - "finish__mem__peak": 470448.0, - "finish__power__internal__total": 2.26715, - "finish__power__leakage__total": 6.42715e-06, - "finish__power__switching__total": 1.59607, - "finish__power__total": 3.86322, - "finish__runtime__total": "0:53.16", + "finish__mem__peak": 470124.0, + "finish__power__internal__total": 2.24724, + "finish__power__leakage__total": 6.41154e-06, + "finish__power__switching__total": 1.62538, + "finish__power__total": 3.87263, + "finish__runtime__total": "1:02.15", "finish__timing__drv__hold_violation_count": 0, "finish__timing__drv__max_cap": 0, - "finish__timing__drv__max_cap_limit": 0.331792, + "finish__timing__drv__max_cap_limit": 0.31444, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, - "finish__timing__drv__max_slew": 849, - "finish__timing__drv__max_slew_limit": -0.985677, - "finish__timing__drv__setup_violation_count": 866, - "finish__timing__setup__tns": -715.189, - "finish__timing__setup__ws": -1.94091, - "finish__timing__wns_percent_delay": -19.524389, - "finish_merge__cpu__total": 45.76, - "finish_merge__mem__peak": 573312.0, - "finish_merge__runtime__total": "0:46.22", - "floorplan__cpu__total": 124.44, + "finish__timing__drv__max_slew": 1119, + "finish__timing__drv__max_slew_limit": -1.91341, + "finish__timing__drv__setup_violation_count": 1030, + "finish__timing__setup__tns": -768.174, + "finish__timing__setup__ws": -1.85661, + "finish__timing__wns_percent_delay": -18.83611, + "finish_merge__cpu__total": 54.61, + "finish_merge__mem__peak": 569560.0, + "finish_merge__runtime__total": "0:55.00", + "floorplan__cpu__total": 148.33, "floorplan__design__core__area": 1436150.0, "floorplan__design__die__area": 1450880.0, "floorplan__design__instance__area": 653061, @@ -157,32 +168,32 @@ "floorplan__design__io": 264, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 58, - "floorplan__mem__peak": 203960.0, + "floorplan__mem__peak": 203068.0, "floorplan__power__internal__total": 1.53012, "floorplan__power__leakage__total": 3.94623e-06, "floorplan__power__switching__total": 0.686258, "floorplan__power__total": 2.21638, - "floorplan__runtime__total": "2:04.55", + "floorplan__runtime__total": "2:28.56", "floorplan__timing__setup__tns": -0.00182787, "floorplan__timing__setup__ws": 0, - "floorplan_io__cpu__total": 0.85, - "floorplan_io__mem__peak": 160980.0, - "floorplan_io__runtime__total": "0:00.92", - "floorplan_macro__cpu__total": 0.83, - "floorplan_macro__mem__peak": 159672.0, - "floorplan_macro__runtime__total": "0:00.92", - "floorplan_pdn__cpu__total": 2.7, - "floorplan_pdn__mem__peak": 184496.0, - "floorplan_pdn__runtime__total": "0:02.81", - "floorplan_tap__cpu__total": 0.84, - "floorplan_tap__mem__peak": 153184.0, - "floorplan_tap__runtime__total": "0:00.93", - "floorplan_tdms__cpu__total": 0.86, - "floorplan_tdms__mem__peak": 160184.0, - "floorplan_tdms__runtime__total": "0:00.92", + "floorplan_io__cpu__total": 0.98, + "floorplan_io__mem__peak": 160988.0, + "floorplan_io__runtime__total": "0:01.05", + "floorplan_macro__cpu__total": 0.98, + "floorplan_macro__mem__peak": 160444.0, + "floorplan_macro__runtime__total": "0:01.05", + "floorplan_pdn__cpu__total": 3.27, + "floorplan_pdn__mem__peak": 184832.0, + "floorplan_pdn__runtime__total": "0:03.37", + "floorplan_tap__cpu__total": 0.89, + "floorplan_tap__mem__peak": 152776.0, + "floorplan_tap__runtime__total": "0:01.03", + "floorplan_tdms__cpu__total": 0.08, + "floorplan_tdms__mem__peak": 100040.0, + "floorplan_tdms__runtime__total": "0:00.14", "flow__errors__count": 0, "flow__warnings__count": 0, - "globalplace__cpu__total": 216.28, + "globalplace__cpu__total": 261.97, "globalplace__design__core__area": 1436150.0, "globalplace__design__die__area": 1450880.0, "globalplace__design__instance__area": 663831, @@ -196,100 +207,100 @@ "globalplace__design__io": 264, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 0, - "globalplace__mem__peak": 799888.0, - "globalplace__power__internal__total": 1.6453, + "globalplace__mem__peak": 655856.0, + "globalplace__power__internal__total": 1.64455, "globalplace__power__leakage__total": 4.06163e-06, - "globalplace__power__switching__total": 1.12463, - "globalplace__power__total": 2.76993, - "globalplace__runtime__total": "0:56.45", - "globalplace__timing__setup__tns": -2251.18, - "globalplace__timing__setup__ws": -2.7697, - "globalplace_io__cpu__total": 1.01, - "globalplace_io__mem__peak": 183736.0, - "globalplace_io__runtime__total": "0:01.13", - "globalplace_skip_io__cpu__total": 140.6, - "globalplace_skip_io__mem__peak": 204596.0, - "globalplace_skip_io__runtime__total": "0:05.60", - "globalroute__antenna__violating__nets": 1, - "globalroute__antenna__violating__pins": 1, - "globalroute__antenna_diodes_count": 16, - "globalroute__clock__skew__hold": 6.56459, - "globalroute__clock__skew__setup": 9.51221, - "globalroute__cpu__total": 1531.17, + "globalplace__power__switching__total": 1.12407, + "globalplace__power__total": 2.76862, + "globalplace__runtime__total": "1:20.21", + "globalplace__timing__setup__tns": -2215.54, + "globalplace__timing__setup__ws": -2.6687, + "globalplace_io__cpu__total": 1.17, + "globalplace_io__mem__peak": 184148.0, + "globalplace_io__runtime__total": "0:01.29", + "globalplace_skip_io__cpu__total": 139.73, + "globalplace_skip_io__mem__peak": 203820.0, + "globalplace_skip_io__runtime__total": "0:06.01", + "globalroute__antenna__violating__nets": 0, + "globalroute__antenna__violating__pins": 0, + "globalroute__antenna_diodes_count": 10, + "globalroute__clock__skew__hold": 6.56854, + "globalroute__clock__skew__setup": 9.39036, + "globalroute__cpu__total": 900.77, "globalroute__design__core__area": 1436150.0, "globalroute__design__die__area": 1450880.0, - "globalroute__design__instance__area": 834104, + "globalroute__design__instance__area": 834101, "globalroute__design__instance__area__macros": 0, - "globalroute__design__instance__area__stdcell": 834104, - "globalroute__design__instance__count": 16741, + "globalroute__design__instance__area__stdcell": 834101, + "globalroute__design__instance__count": 16688, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 0, - "globalroute__design__instance__count__setup_buffer": 144, - "globalroute__design__instance__count__stdcell": 16741, - "globalroute__design__instance__displacement__max": 64.96, - "globalroute__design__instance__displacement__mean": 0.7145, - "globalroute__design__instance__displacement__total": 11952.6, - "globalroute__design__instance__utilization": 0.580793, - "globalroute__design__instance__utilization__stdcell": 0.580793, + "globalroute__design__instance__count__setup_buffer": 111, + "globalroute__design__instance__count__stdcell": 16688, + "globalroute__design__instance__displacement__max": 61.04, + "globalroute__design__instance__displacement__mean": 0.598, + "globalroute__design__instance__displacement__total": 9974.16, + "globalroute__design__instance__utilization": 0.580791, + "globalroute__design__instance__utilization__stdcell": 0.580791, "globalroute__design__io": 264, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 1, - "globalroute__mem__peak": 1108376.0, - "globalroute__power__internal__total": 2.25435, - "globalroute__power__leakage__total": 4.99882e-06, - "globalroute__power__switching__total": 1.59199, - "globalroute__power__total": 3.84635, - "globalroute__route__wirelength__estimated": 1303910.0, - "globalroute__runtime__total": "23:58.72", - "globalroute__timing__clock__slack": -1.867, + "globalroute__mem__peak": 1111400.0, + "globalroute__power__internal__total": 2.23147, + "globalroute__power__leakage__total": 4.99706e-06, + "globalroute__power__switching__total": 1.61253, + "globalroute__power__total": 3.844, + "globalroute__route__wirelength__estimated": 1298140.0, + "globalroute__runtime__total": "13:16.55", + "globalroute__timing__clock__slack": -1.787, "globalroute__timing__drv__hold_violation_count": 0, "globalroute__timing__drv__max_cap": 0, - "globalroute__timing__drv__max_cap_limit": 0.364232, + "globalroute__timing__drv__max_cap_limit": 0.4075, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, "globalroute__timing__drv__max_slew": 0, - "globalroute__timing__drv__max_slew_limit": 0.173854, - "globalroute__timing__drv__setup_violation_count": 838, - "globalroute__timing__setup__tns": -664.97, - "globalroute__timing__setup__ws": -1.86741, - "placeopt__cpu__total": 22.13, + "globalroute__timing__drv__max_slew_limit": 0.00507745, + "globalroute__timing__drv__setup_violation_count": 1012, + "globalroute__timing__setup__tns": -713.805, + "globalroute__timing__setup__ws": -1.78667, + "placeopt__cpu__total": 26.27, "placeopt__design__core__area": 1436150.0, "placeopt__design__die__area": 1450880.0, - "placeopt__design__instance__area": 743827, + "placeopt__design__instance__area": 746559, "placeopt__design__instance__area__macros": 0, - "placeopt__design__instance__area__stdcell": 743827, - "placeopt__design__instance__count": 15890, + "placeopt__design__instance__area__stdcell": 746559, + "placeopt__design__instance__count": 15889, "placeopt__design__instance__count__macros": 0, - "placeopt__design__instance__count__stdcell": 15890, - "placeopt__design__instance__utilization": 0.517932, - "placeopt__design__instance__utilization__stdcell": 0.517932, + "placeopt__design__instance__count__stdcell": 15889, + "placeopt__design__instance__utilization": 0.519834, + "placeopt__design__instance__utilization__stdcell": 0.519834, "placeopt__design__io": 264, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 1, - "placeopt__mem__peak": 690732.0, - "placeopt__power__internal__total": 1.73653, - "placeopt__power__leakage__total": 4.47516e-06, - "placeopt__power__switching__total": 1.23303, - "placeopt__power__total": 2.96957, - "placeopt__runtime__total": "0:22.71", + "placeopt__mem__peak": 545576.0, + "placeopt__power__internal__total": 1.74671, + "placeopt__power__leakage__total": 4.49012e-06, + "placeopt__power__switching__total": 1.23635, + "placeopt__power__total": 2.98306, + "placeopt__runtime__total": "0:26.77", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 1, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.428846, + "placeopt__timing__drv__max_cap_limit": 0.42875, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.305549, - "placeopt__timing__drv__setup_violation_count": 1032, - "placeopt__timing__setup__tns": -673.063, - "placeopt__timing__setup__ws": -1.72538, + "placeopt__timing__drv__max_slew_limit": 0.303602, + "placeopt__timing__drv__setup_violation_count": 1027, + "placeopt__timing__setup__tns": -657.364, + "placeopt__timing__setup__ws": -1.6933, "run__flow__design": "ibex", - "run__flow__generate_date": "2024-09-23 21:33", + "run__flow__generate_date": "2024-10-03 21:26", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15825-ge21fbdf83", + "run__flow__openroad_version": "v2.0-16239-ge23ebb9f9", "run__flow__platform": "gf180", "run__flow__platform__capacitance_units": "1pF", "run__flow__platform__current_units": "1mA", @@ -300,12 +311,12 @@ "run__flow__platform__voltage_units": "1v", "run__flow__platform_commit": "N/A", "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "9db48e6d-f294-480e-b6ee-8445fa8e26bc", + "run__flow__uuid": "0cd7c440-939a-4d73-a117-23c67f225923", "run__flow__variant": "base", - "synth__cpu__total": 74.33, + "synth__cpu__total": 86.07, "synth__design__instance__area__stdcell": 650732.544, "synth__design__instance__count__stdcell": 13731.0, - "synth__mem__peak": 233136.0, - "synth__runtime__total": "1:14.76", - "total_time": "0:40:57.390000" + "synth__mem__peak": 233056.0, + "synth__runtime__total": "1:26.42", + "total_time": "0:38:53.280000" } \ No newline at end of file diff --git a/flow/designs/gf180/ibex/rules-base.json b/flow/designs/gf180/ibex/rules-base.json index 1ac50402de..3acfaf2b5e 100644 --- a/flow/designs/gf180/ibex/rules-base.json +++ b/flow/designs/gf180/ibex/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 737112.1, + "value": 748342.43, "compare": "<=" }, "constraints__clocks__count": { @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 757868, + "value": 848101, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 16247, + "value": 18156, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,19 +20,19 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 1413, + "value": 1579, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 1413, + "value": 1579, "compare": "<=" }, "globalroute__antenna_diodes_count": { - "value": 18, + "value": 12, "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 1700703, + "value": 1758573, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -44,19 +44,19 @@ "compare": "<=" }, "detailedroute__antenna_diodes_count": { - "value": 5, + "value": 9, "compare": "<=" }, "finish__timing__setup__ws": { - "value": -2.41, + "value": -2.28, "compare": ">=" }, "finish__design__instance__area": { - "value": 899977, + "value": 936597, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 909, + "value": 1082, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { @@ -64,7 +64,7 @@ "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -33.22, + "value": -31.88, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/gf180/jpeg/metadata-base-ok.json b/flow/designs/gf180/jpeg/metadata-base-ok.json index cd4705160f..22354aafd6 100644 --- a/flow/designs/gf180/jpeg/metadata-base-ok.json +++ b/flow/designs/gf180/jpeg/metadata-base-ok.json @@ -3,327 +3,295 @@ "constraints__clocks__details": [ "clk: 8.0000" ], - "cts__clock__skew__hold": 0.227259, - "cts__clock__skew__setup": 0.227259, - "cts__cpu__total": 93.08, - "cts__design__core__area": 4951330.0, - "cts__design__die__area": 4973120.0, - "cts__design__instance__area": 2493220.0, + "cts__clock__skew__hold": 0.158285, + "cts__clock__skew__setup": 0.158285, + "cts__cpu__total": 65.23, + "cts__design__core__area": 4911530.0, + "cts__design__die__area": 4938640.0, + "cts__design__instance__area": 2472390.0, "cts__design__instance__area__macros": 0, - "cts__design__instance__area__stdcell": 2493220.0, - "cts__design__instance__count": 56627, + "cts__design__instance__area__stdcell": 2472390.0, + "cts__design__instance__count": 56169, "cts__design__instance__count__hold_buffer": 0, "cts__design__instance__count__macros": 0, - "cts__design__instance__count__setup_buffer": 26, - "cts__design__instance__count__stdcell": 56627, - "cts__design__instance__displacement__max": 20.16, - "cts__design__instance__displacement__mean": 0.0095, - "cts__design__instance__displacement__total": 542.904, - "cts__design__instance__utilization": 0.503546, - "cts__design__instance__utilization__stdcell": 0.503546, + "cts__design__instance__count__setup_buffer": 16, + "cts__design__instance__count__stdcell": 56169, + "cts__design__instance__displacement__max": 15.68, + "cts__design__instance__displacement__mean": 0.006, + "cts__design__instance__displacement__total": 348.41, + "cts__design__instance__utilization": 0.503386, + "cts__design__instance__utilization__stdcell": 0.503386, "cts__design__io": 47, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 0, - "cts__mem__peak": 1084016.0, - "cts__power__internal__total": 20.4065, - "cts__power__leakage__total": 1.43953e-05, - "cts__power__switching__total": 11.6314, + "cts__mem__peak": 1063104.0, + "cts__power__internal__total": 20.4849, + "cts__power__leakage__total": 1.42563e-05, + "cts__power__switching__total": 11.5529, "cts__power__total": 32.0379, - "cts__route__wirelength__estimated": 3754290.0, - "cts__runtime__total": "1:34.02", + "cts__route__wirelength__estimated": 3691190.0, + "cts__runtime__total": "1:07.87", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, - "cts__timing__drv__max_cap_limit": 0.890079, + "cts__timing__drv__max_cap_limit": 0.899332, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.673137, + "cts__timing__drv__max_slew_limit": 0.686972, "cts__timing__drv__setup_violation_count": 0, "cts__timing__setup__tns": 0, - "cts__timing__setup__ws": 0.0322204, - "design__io__hpwl": 46952682, + "cts__timing__setup__ws": 0.00360512, + "design__io__hpwl": 40002138, "design__violations": 0, - "detailedplace__cpu__total": 62.37, - "detailedplace__design__core__area": 4951330.0, - "detailedplace__design__die__area": 4973120.0, - "detailedplace__design__instance__area": 2443120.0, + "detailedplace__cpu__total": 49.51, + "detailedplace__design__core__area": 4911530.0, + "detailedplace__design__die__area": 4938640.0, + "detailedplace__design__instance__area": 2423960.0, "detailedplace__design__instance__area__macros": 0, - "detailedplace__design__instance__area__stdcell": 2443120.0, - "detailedplace__design__instance__count": 56211, + "detailedplace__design__instance__area__stdcell": 2423960.0, + "detailedplace__design__instance__count": 55769, "detailedplace__design__instance__count__macros": 0, - "detailedplace__design__instance__count__stdcell": 56211, - "detailedplace__design__instance__displacement__max": 71.904, - "detailedplace__design__instance__displacement__mean": 4.8035, - "detailedplace__design__instance__displacement__total": 270020, - "detailedplace__design__instance__utilization": 0.493427, - "detailedplace__design__instance__utilization__stdcell": 0.493427, + "detailedplace__design__instance__count__stdcell": 55769, + "detailedplace__design__instance__displacement__max": 54.88, + "detailedplace__design__instance__displacement__mean": 4.774, + "detailedplace__design__instance__displacement__total": 266251, + "detailedplace__design__instance__utilization": 0.493524, + "detailedplace__design__instance__utilization__stdcell": 0.493524, "detailedplace__design__io": 47, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 0, - "detailedplace__mem__peak": 522736.0, - "detailedplace__power__internal__total": 20.0851, - "detailedplace__power__leakage__total": 1.41037e-05, - "detailedplace__power__switching__total": 11.3158, - "detailedplace__power__total": 31.4009, - "detailedplace__route__wirelength__estimated": 3739690.0, - "detailedplace__runtime__total": "1:02.86", + "detailedplace__mem__peak": 519740.0, + "detailedplace__power__internal__total": 20.1731, + "detailedplace__power__leakage__total": 1.39741e-05, + "detailedplace__power__switching__total": 11.2573, + "detailedplace__power__total": 31.4304, + "detailedplace__route__wirelength__estimated": 3679930.0, + "detailedplace__runtime__total": "0:49.99", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, - "detailedplace__timing__drv__max_cap_limit": 0.890079, + "detailedplace__timing__drv__max_cap_limit": 0.899332, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.516655, - "detailedplace__timing__drv__setup_violation_count": 279, - "detailedplace__timing__setup__tns": -92.9407, - "detailedplace__timing__setup__ws": -1.13612, + "detailedplace__timing__drv__max_slew_limit": 0.437561, + "detailedplace__timing__drv__setup_violation_count": 254, + "detailedplace__timing__setup__tns": -63.6206, + "detailedplace__timing__setup__ws": -1.02596, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, - "detailedroute__antenna_diodes_count": 9, + "detailedroute__antenna_diodes_count": 20, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 8, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 21561, - "detailedroute__route__drc_errors__iter:10": 1, - "detailedroute__route__drc_errors__iter:11": 1, - "detailedroute__route__drc_errors__iter:12": 1, - "detailedroute__route__drc_errors__iter:13": 1, - "detailedroute__route__drc_errors__iter:14": 1, - "detailedroute__route__drc_errors__iter:15": 1, - "detailedroute__route__drc_errors__iter:16": 1, - "detailedroute__route__drc_errors__iter:17": 1, - "detailedroute__route__drc_errors__iter:18": 1, - "detailedroute__route__drc_errors__iter:19": 1, - "detailedroute__route__drc_errors__iter:2": 3626, - "detailedroute__route__drc_errors__iter:20": 1, - "detailedroute__route__drc_errors__iter:21": 1, - "detailedroute__route__drc_errors__iter:22": 1, - "detailedroute__route__drc_errors__iter:23": 1, - "detailedroute__route__drc_errors__iter:24": 0, - "detailedroute__route__drc_errors__iter:3": 2836, - "detailedroute__route__drc_errors__iter:4": 17, + "detailedroute__route__drc_errors__iter:1": 22008, + "detailedroute__route__drc_errors__iter:2": 3759, + "detailedroute__route__drc_errors__iter:3": 2959, + "detailedroute__route__drc_errors__iter:4": 101, "detailedroute__route__drc_errors__iter:5": 1, "detailedroute__route__drc_errors__iter:6": 1, "detailedroute__route__drc_errors__iter:7": 1, - "detailedroute__route__drc_errors__iter:8": 1, - "detailedroute__route__drc_errors__iter:9": 1, - "detailedroute__route__net": 62642, + "detailedroute__route__drc_errors__iter:8": 0, + "detailedroute__route__net": 62055, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 355834, + "detailedroute__route__vias": 352222, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 355834, - "detailedroute__route__wirelength": 4309660, - "detailedroute__route__wirelength__iter:1": 4325676, - "detailedroute__route__wirelength__iter:10": 4309690, - "detailedroute__route__wirelength__iter:11": 4309699, - "detailedroute__route__wirelength__iter:12": 4309690, - "detailedroute__route__wirelength__iter:13": 4309689, - "detailedroute__route__wirelength__iter:14": 4309690, - "detailedroute__route__wirelength__iter:15": 4309689, - "detailedroute__route__wirelength__iter:16": 4309689, - "detailedroute__route__wirelength__iter:17": 4309689, - "detailedroute__route__wirelength__iter:18": 4309647, - "detailedroute__route__wirelength__iter:19": 4309657, - "detailedroute__route__wirelength__iter:2": 4313492, - "detailedroute__route__wirelength__iter:20": 4309657, - "detailedroute__route__wirelength__iter:21": 4309657, - "detailedroute__route__wirelength__iter:22": 4309658, - "detailedroute__route__wirelength__iter:23": 4309658, - "detailedroute__route__wirelength__iter:24": 4309660, - "detailedroute__route__wirelength__iter:3": 4311367, - "detailedroute__route__wirelength__iter:4": 4309686, - "detailedroute__route__wirelength__iter:5": 4309691, - "detailedroute__route__wirelength__iter:6": 4309689, - "detailedroute__route__wirelength__iter:7": 4309689, - "detailedroute__route__wirelength__iter:8": 4309689, - "detailedroute__route__wirelength__iter:9": 4309689, - "finish__clock__skew__hold": 0.25669, - "finish__clock__skew__setup": 0.25669, - "finish__cpu__total": 82.67, - "finish__design__core__area": 4951330.0, - "finish__design__die__area": 4973120.0, - "finish__design__instance__area": 2494720.0, + "detailedroute__route__vias__singlecut": 352222, + "detailedroute__route__wirelength": 4258171, + "detailedroute__route__wirelength__iter:1": 4274346, + "detailedroute__route__wirelength__iter:2": 4262089, + "detailedroute__route__wirelength__iter:3": 4259942, + "detailedroute__route__wirelength__iter:4": 4258195, + "detailedroute__route__wirelength__iter:5": 4258168, + "detailedroute__route__wirelength__iter:6": 4258169, + "detailedroute__route__wirelength__iter:7": 4258169, + "detailedroute__route__wirelength__iter:8": 4258171, + "finish__clock__skew__hold": 0.175254, + "finish__clock__skew__setup": 0.175254, + "finish__cpu__total": 65.21, + "finish__design__core__area": 4911530.0, + "finish__design__die__area": 4938640.0, + "finish__design__instance__area": 2473490.0, "finish__design__instance__area__macros": 0, - "finish__design__instance__area__stdcell": 2494720.0, - "finish__design__instance__count": 56694, + "finish__design__instance__area__stdcell": 2473490.0, + "finish__design__instance__count": 56255, "finish__design__instance__count__macros": 0, - "finish__design__instance__count__stdcell": 56694, - "finish__design__instance__utilization": 0.503849, - "finish__design__instance__utilization__stdcell": 0.503849, + "finish__design__instance__count__stdcell": 56255, + "finish__design__instance__utilization": 0.50361, + "finish__design__instance__utilization__stdcell": 0.50361, "finish__design__io": 47, "finish__flow__errors__count": 0, - "finish__flow__warnings__count": 1, - "finish__mem__peak": 1002628.0, - "finish__power__internal__total": 20.3708, - "finish__power__leakage__total": 1.945e-05, - "finish__power__switching__total": 12.051, - "finish__power__total": 32.4218, - "finish__runtime__total": "1:24.00", + "finish__flow__warnings__count": 0, + "finish__mem__peak": 1076276.0, + "finish__power__internal__total": 20.4486, + "finish__power__leakage__total": 1.93027e-05, + "finish__power__switching__total": 11.886, + "finish__power__total": 32.3347, + "finish__runtime__total": "1:06.55", "finish__timing__drv__hold_violation_count": 0, "finish__timing__drv__max_cap": 0, - "finish__timing__drv__max_cap_limit": 0.888175, + "finish__timing__drv__max_cap_limit": 0.900881, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, "finish__timing__drv__max_slew": 0, - "finish__timing__drv__max_slew_limit": 0.607783, - "finish__timing__drv__setup_violation_count": 68, - "finish__timing__setup__tns": -12.8776, - "finish__timing__setup__ws": -0.540858, - "finish__timing__wns_percent_delay": -5.663756, - "finish_merge__cpu__total": 197.19, - "finish_merge__mem__peak": 1000568.0, - "finish_merge__runtime__total": "3:18.08", - "floorplan__cpu__total": 41.97, - "floorplan__design__core__area": 4951330.0, - "floorplan__design__die__area": 4973120.0, - "floorplan__design__instance__area": 2233980.0, + "finish__timing__drv__max_slew_limit": 0.629106, + "finish__timing__drv__setup_violation_count": 3, + "finish__timing__setup__tns": -0.242475, + "finish__timing__setup__ws": -0.137514, + "finish__timing__wns_percent_delay": -1.491517, + "finish_merge__cpu__total": 167.41, + "finish_merge__mem__peak": 997644.0, + "finish_merge__runtime__total": "2:48.07", + "floorplan__cpu__total": 32.49, + "floorplan__design__core__area": 4911530.0, + "floorplan__design__die__area": 4938640.0, + "floorplan__design__instance__area": 2218460.0, "floorplan__design__instance__area__macros": 0, - "floorplan__design__instance__area__stdcell": 2233980.0, - "floorplan__design__instance__count": 50412, + "floorplan__design__instance__area__stdcell": 2218460.0, + "floorplan__design__instance__count": 49991, "floorplan__design__instance__count__hold_buffer": 0, "floorplan__design__instance__count__macros": 0, "floorplan__design__instance__count__setup_buffer": 0, - "floorplan__design__instance__count__stdcell": 50412, - "floorplan__design__instance__utilization": 0.451188, - "floorplan__design__instance__utilization__stdcell": 0.451188, + "floorplan__design__instance__count__stdcell": 49991, + "floorplan__design__instance__utilization": 0.451684, + "floorplan__design__instance__utilization__stdcell": 0.451684, "floorplan__design__io": 47, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 2, - "floorplan__mem__peak": 346304.0, - "floorplan__power__internal__total": 19.1931, - "floorplan__power__leakage__total": 1.28046e-05, - "floorplan__power__switching__total": 7.74706, - "floorplan__power__total": 26.9401, - "floorplan__runtime__total": "0:42.29", - "floorplan__timing__setup__tns": 0, - "floorplan__timing__setup__ws": 0.00920597, - "floorplan_io__cpu__total": 1.21, - "floorplan_io__mem__peak": 217500.0, - "floorplan_io__runtime__total": "0:01.34", - "floorplan_macro__cpu__total": 1.18, - "floorplan_macro__mem__peak": 216656.0, - "floorplan_macro__runtime__total": "0:01.38", - "floorplan_pdn__cpu__total": 9.99, - "floorplan_pdn__mem__peak": 300716.0, - "floorplan_pdn__runtime__total": "0:10.29", - "floorplan_tap__cpu__total": 1.44, - "floorplan_tap__mem__peak": 189252.0, - "floorplan_tap__runtime__total": "0:01.58", - "floorplan_tdms__cpu__total": 1.26, - "floorplan_tdms__mem__peak": 216748.0, - "floorplan_tdms__runtime__total": "0:01.38", + "floorplan__mem__peak": 345112.0, + "floorplan__power__internal__total": 19.4158, + "floorplan__power__leakage__total": 1.26965e-05, + "floorplan__power__switching__total": 8.13272, + "floorplan__power__total": 27.5486, + "floorplan__runtime__total": "0:32.72", + "floorplan__timing__setup__tns": -8.88178e-06, + "floorplan__timing__setup__ws": 0.0692655, + "floorplan_io__cpu__total": 0.88, + "floorplan_io__mem__peak": 217644.0, + "floorplan_io__runtime__total": "0:01.00", + "floorplan_macro__cpu__total": 0.85, + "floorplan_macro__mem__peak": 215844.0, + "floorplan_macro__runtime__total": "0:01.03", + "floorplan_pdn__cpu__total": 8.97, + "floorplan_pdn__mem__peak": 299392.0, + "floorplan_pdn__runtime__total": "0:09.63", + "floorplan_tap__cpu__total": 1.07, + "floorplan_tap__mem__peak": 189072.0, + "floorplan_tap__runtime__total": "0:01.18", + "floorplan_tdms__cpu__total": 0.86, + "floorplan_tdms__mem__peak": 216308.0, + "floorplan_tdms__runtime__total": "0:01.01", "flow__errors__count": 0, "flow__warnings__count": 0, - "globalplace__cpu__total": 761.52, - "globalplace__design__core__area": 4951330.0, - "globalplace__design__die__area": 4973120.0, - "globalplace__design__instance__area": 2266470.0, + "globalplace__cpu__total": 1764.76, + "globalplace__design__core__area": 4911530.0, + "globalplace__design__die__area": 4938640.0, + "globalplace__design__instance__area": 2250800.0, "globalplace__design__instance__area__macros": 0, - "globalplace__design__instance__area__stdcell": 2266470.0, - "globalplace__design__instance__count": 56167, + "globalplace__design__instance__area__stdcell": 2250800.0, + "globalplace__design__instance__count": 55720, "globalplace__design__instance__count__macros": 0, - "globalplace__design__instance__count__stdcell": 56167, - "globalplace__design__instance__utilization": 0.457749, - "globalplace__design__instance__utilization__stdcell": 0.457749, + "globalplace__design__instance__count__stdcell": 55720, + "globalplace__design__instance__utilization": 0.458268, + "globalplace__design__instance__utilization__stdcell": 0.458268, "globalplace__design__io": 47, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 0, - "globalplace__mem__peak": 1187272.0, - "globalplace__power__internal__total": 19.3412, - "globalplace__power__leakage__total": 1.31553e-05, - "globalplace__power__switching__total": 10.8304, - "globalplace__power__total": 30.1716, - "globalplace__runtime__total": "2:59.09", - "globalplace__timing__setup__tns": -1643.26, - "globalplace__timing__setup__ws": -4.60745, - "globalplace_io__cpu__total": 1.77, - "globalplace_io__mem__peak": 294036.0, - "globalplace_io__runtime__total": "0:02.05", - "globalplace_skip_io__cpu__total": 831.47, - "globalplace_skip_io__mem__peak": 369460.0, - "globalplace_skip_io__runtime__total": "0:32.11", + "globalplace__mem__peak": 1187064.0, + "globalplace__power__internal__total": 19.587, + "globalplace__power__leakage__total": 1.30456e-05, + "globalplace__power__switching__total": 10.6951, + "globalplace__power__total": 30.2821, + "globalplace__runtime__total": "4:47.22", + "globalplace__timing__setup__tns": -2293.4, + "globalplace__timing__setup__ws": -5.72381, + "globalplace_io__cpu__total": 1.34, + "globalplace_io__mem__peak": 292148.0, + "globalplace_io__runtime__total": "0:01.66", + "globalplace_skip_io__cpu__total": 533.59, + "globalplace_skip_io__mem__peak": 371512.0, + "globalplace_skip_io__runtime__total": "0:50.18", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, - "globalroute__antenna_diodes_count": 37, - "globalroute__clock__skew__hold": 0.2311, - "globalroute__clock__skew__setup": 0.2311, - "globalroute__cpu__total": 335.47, - "globalroute__design__core__area": 4951330.0, - "globalroute__design__die__area": 4973120.0, - "globalroute__design__instance__area": 2494670.0, + "globalroute__antenna_diodes_count": 59, + "globalroute__clock__skew__hold": 0.157571, + "globalroute__clock__skew__setup": 0.157571, + "globalroute__cpu__total": 211.25, + "globalroute__design__core__area": 4911530.0, + "globalroute__design__die__area": 4938640.0, + "globalroute__design__instance__area": 2473380.0, "globalroute__design__instance__area__macros": 0, - "globalroute__design__instance__area__stdcell": 2494670.0, - "globalroute__design__instance__count": 56685, + "globalroute__design__instance__area__stdcell": 2473380.0, + "globalroute__design__instance__count": 56235, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 0, - "globalroute__design__instance__count__setup_buffer": 17, - "globalroute__design__instance__count__stdcell": 56685, + "globalroute__design__instance__count__setup_buffer": 7, + "globalroute__design__instance__count__stdcell": 56235, "globalroute__design__instance__displacement__max": 15.12, - "globalroute__design__instance__displacement__mean": 0.0055, - "globalroute__design__instance__displacement__total": 314.72, - "globalroute__design__instance__utilization": 0.503839, - "globalroute__design__instance__utilization__stdcell": 0.503839, + "globalroute__design__instance__displacement__mean": 0.003, + "globalroute__design__instance__displacement__total": 196.56, + "globalroute__design__instance__utilization": 0.503587, + "globalroute__design__instance__utilization__stdcell": 0.503587, "globalroute__design__io": 47, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, - "globalroute__flow__warnings__count": 0, - "globalroute__mem__peak": 1509768.0, - "globalroute__power__internal__total": 20.3565, - "globalroute__power__leakage__total": 1.44085e-05, - "globalroute__power__switching__total": 12.637, - "globalroute__power__total": 32.9935, - "globalroute__route__wirelength__estimated": 3760510.0, - "globalroute__runtime__total": "2:32.10", - "globalroute__timing__clock__slack": -0.075, + "globalroute__flow__warnings__count": 1, + "globalroute__mem__peak": 1492612.0, + "globalroute__power__internal__total": 20.4323, + "globalroute__power__leakage__total": 1.4269e-05, + "globalroute__power__switching__total": 12.5509, + "globalroute__power__total": 32.9833, + "globalroute__route__wirelength__estimated": 3697300.0, + "globalroute__runtime__total": "1:49.69", + "globalroute__timing__clock__slack": -0.097, "globalroute__timing__drv__hold_violation_count": 0, "globalroute__timing__drv__max_cap": 0, - "globalroute__timing__drv__max_cap_limit": 0.878057, + "globalroute__timing__drv__max_cap_limit": 0.896141, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, "globalroute__timing__drv__max_slew": 0, - "globalroute__timing__drv__max_slew_limit": 0.663769, - "globalroute__timing__drv__setup_violation_count": 4, - "globalroute__timing__setup__tns": -0.111605, - "globalroute__timing__setup__ws": -0.0749569, - "placeopt__cpu__total": 55.12, - "placeopt__design__core__area": 4951330.0, - "placeopt__design__die__area": 4973120.0, - "placeopt__design__instance__area": 2443120.0, + "globalroute__timing__drv__max_slew_limit": 0.677942, + "globalroute__timing__drv__setup_violation_count": 3, + "globalroute__timing__setup__tns": -0.15679, + "globalroute__timing__setup__ws": -0.0968088, + "placeopt__cpu__total": 45.79, + "placeopt__design__core__area": 4911530.0, + "placeopt__design__die__area": 4938640.0, + "placeopt__design__instance__area": 2423960.0, "placeopt__design__instance__area__macros": 0, - "placeopt__design__instance__area__stdcell": 2443120.0, - "placeopt__design__instance__count": 56211, + "placeopt__design__instance__area__stdcell": 2423960.0, + "placeopt__design__instance__count": 55769, "placeopt__design__instance__count__macros": 0, - "placeopt__design__instance__count__stdcell": 56211, - "placeopt__design__instance__utilization": 0.493427, - "placeopt__design__instance__utilization__stdcell": 0.493427, + "placeopt__design__instance__count__stdcell": 55769, + "placeopt__design__instance__utilization": 0.493524, + "placeopt__design__instance__utilization__stdcell": 0.493524, "placeopt__design__io": 47, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 0, - "placeopt__mem__peak": 909032.0, - "placeopt__power__internal__total": 20.0826, - "placeopt__power__leakage__total": 1.41037e-05, - "placeopt__power__switching__total": 11.2251, - "placeopt__power__total": 31.3077, - "placeopt__runtime__total": "0:55.87", + "placeopt__mem__peak": 906092.0, + "placeopt__power__internal__total": 20.1702, + "placeopt__power__leakage__total": 1.39741e-05, + "placeopt__power__switching__total": 11.124, + "placeopt__power__total": 31.2941, + "placeopt__runtime__total": "0:46.61", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.896263, + "placeopt__timing__drv__max_cap_limit": 0.930788, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.519519, - "placeopt__timing__drv__setup_violation_count": 272, - "placeopt__timing__setup__tns": -90.6158, - "placeopt__timing__setup__ws": -1.105, + "placeopt__timing__drv__max_slew_limit": 0.441785, + "placeopt__timing__drv__setup_violation_count": 251, + "placeopt__timing__setup__tns": -62.4854, + "placeopt__timing__setup__ws": -1.06617, "run__flow__design": "jpeg", - "run__flow__generate_date": "2024-09-23 21:15", + "run__flow__generate_date": "2024-09-26 21:32", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15825-ge21fbdf83", + "run__flow__openroad_version": "v2.0-15807-g036379d64", "run__flow__platform": "gf180", "run__flow__platform__capacitance_units": "1pF", "run__flow__platform__current_units": "1mA", @@ -332,14 +300,14 @@ "run__flow__platform__resistance_units": "1ohm", "run__flow__platform__time_units": "1ns", "run__flow__platform__voltage_units": "1v", - "run__flow__platform_commit": "N/A", - "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "712bc66e-ede9-476f-93c5-cf746e7b6202", - "run__flow__variant": "base", - "synth__cpu__total": 133.94, - "synth__design__instance__area__stdcell": 2233890.0864, - "synth__design__instance__count__stdcell": 50415.0, - "synth__mem__peak": 730568.0, - "synth__runtime__total": "2:15.20", - "total_time": "0:17:33.640000" + "run__flow__platform_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__scripts_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__uuid": "fcf3f497-9fa4-4ee5-a279-7ecbb4546101", + "run__flow__variant": "odb_0925", + "synth__cpu__total": 103.04, + "synth__design__instance__area__stdcell": 2218389.4656, + "synth__design__instance__count__stdcell": 49993.0, + "synth__mem__peak": 714780.0, + "synth__runtime__total": "1:43.99", + "total_time": "0:16:38.400000" } \ No newline at end of file diff --git a/flow/designs/gf180/jpeg/rules-base.json b/flow/designs/gf180/jpeg/rules-base.json index d6dfeb54af..96a47a2454 100644 --- a/flow/designs/gf180/jpeg/rules-base.json +++ b/flow/designs/gf180/jpeg/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 2415601.71, + "value": 2551147.89, "compare": "<=" }, "constraints__clocks__count": { @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 2492866, + "value": 2787554, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 62827, + "value": 64134, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,19 +20,19 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 5463, + "value": 5577, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 5463, + "value": 5577, "compare": "<=" }, "globalroute__antenna_diodes_count": { - "value": 43, + "value": 68, "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 4895836, + "value": 4896897, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -44,19 +44,19 @@ "compare": "<=" }, "detailedroute__antenna_diodes_count": { - "value": 10, + "value": 23, "compare": "<=" }, "finish__timing__setup__ws": { - "value": -0.94, + "value": -0.53, "compare": ">=" }, "finish__design__instance__area": { - "value": 2560268, + "value": 2844514, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 2732, + "value": 2788, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { @@ -64,7 +64,7 @@ "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -10.6, + "value": -11.78, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/gf180/riscv32i/metadata-base-ok.json b/flow/designs/gf180/riscv32i/metadata-base-ok.json index a636ded5dc..87b3f04678 100644 --- a/flow/designs/gf180/riscv32i/metadata-base-ok.json +++ b/flow/designs/gf180/riscv32i/metadata-base-ok.json @@ -3,169 +3,147 @@ "constraints__clocks__details": [ "clk: 10.0000" ], - "cts__clock__skew__hold": 0.0737467, - "cts__clock__skew__setup": 0.0737467, - "cts__cpu__total": 100.82, + "cts__clock__skew__hold": 0.0992213, + "cts__clock__skew__setup": 0.0992213, + "cts__cpu__total": 159.48, "cts__design__core__area": 680876, "cts__design__die__area": 691002, - "cts__design__instance__area": 375416, + "cts__design__instance__area": 380335, "cts__design__instance__area__macros": 0, - "cts__design__instance__area__stdcell": 375416, - "cts__design__instance__count": 7568, + "cts__design__instance__area__stdcell": 380335, + "cts__design__instance__count": 7617, "cts__design__instance__count__hold_buffer": 0, "cts__design__instance__count__macros": 0, - "cts__design__instance__count__setup_buffer": 92, - "cts__design__instance__count__stdcell": 7568, - "cts__design__instance__displacement__max": 34.203, - "cts__design__instance__displacement__mean": 0.442, - "cts__design__instance__displacement__total": 3346.18, - "cts__design__instance__utilization": 0.551372, - "cts__design__instance__utilization__stdcell": 0.551372, + "cts__design__instance__count__setup_buffer": 132, + "cts__design__instance__count__stdcell": 7617, + "cts__design__instance__displacement__max": 58.8775, + "cts__design__instance__displacement__mean": 0.7735, + "cts__design__instance__displacement__total": 5894.21, + "cts__design__instance__utilization": 0.558597, + "cts__design__instance__utilization__stdcell": 0.558597, "cts__design__io": 165, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 1, - "cts__mem__peak": 742140.0, - "cts__power__internal__total": 0.26826, - "cts__power__leakage__total": 2.39999e-06, - "cts__power__switching__total": 0.120232, - "cts__power__total": 0.388495, - "cts__route__wirelength__estimated": 597163, - "cts__runtime__total": "1:41.49", + "cts__mem__peak": 743024.0, + "cts__power__internal__total": 0.275449, + "cts__power__leakage__total": 2.4281e-06, + "cts__power__switching__total": 0.122195, + "cts__power__total": 0.397647, + "cts__route__wirelength__estimated": 606499, + "cts__runtime__total": "2:40.21", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, "cts__timing__drv__max_cap_limit": 0.914182, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.516033, - "cts__timing__drv__setup_violation_count": 2, - "cts__timing__setup__tns": -0.275386, - "cts__timing__setup__ws": -0.216987, + "cts__timing__drv__max_slew_limit": 0.435022, + "cts__timing__drv__setup_violation_count": 3, + "cts__timing__setup__tns": -0.595705, + "cts__timing__setup__ws": -0.318415, "design__io__hpwl": 111485901, "design__violations": 0, - "detailedplace__cpu__total": 14.72, + "detailedplace__cpu__total": 14.5, "detailedplace__design__core__area": 680876, "detailedplace__design__die__area": 691002, - "detailedplace__design__instance__area": 360748, + "detailedplace__design__instance__area": 360703, "detailedplace__design__instance__area__macros": 0, - "detailedplace__design__instance__area__stdcell": 360748, + "detailedplace__design__instance__area__stdcell": 360703, "detailedplace__design__instance__count": 7401, "detailedplace__design__instance__count__macros": 0, "detailedplace__design__instance__count__stdcell": 7401, - "detailedplace__design__instance__displacement__max": 57.0515, - "detailedplace__design__instance__displacement__mean": 4.6565, - "detailedplace__design__instance__displacement__total": 34465.3, - "detailedplace__design__instance__utilization": 0.529829, - "detailedplace__design__instance__utilization__stdcell": 0.529829, + "detailedplace__design__instance__displacement__max": 60.337, + "detailedplace__design__instance__displacement__mean": 4.6885, + "detailedplace__design__instance__displacement__total": 34702.7, + "detailedplace__design__instance__utilization": 0.529763, + "detailedplace__design__instance__utilization__stdcell": 0.529763, "detailedplace__design__io": 165, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 0, - "detailedplace__mem__peak": 194984.0, - "detailedplace__power__internal__total": 0.211542, - "detailedplace__power__leakage__total": 2.31501e-06, - "detailedplace__power__switching__total": 0.0817247, - "detailedplace__power__total": 0.293269, - "detailedplace__route__wirelength__estimated": 582311, - "detailedplace__runtime__total": "0:14.83", + "detailedplace__mem__peak": 194016.0, + "detailedplace__power__internal__total": 0.211568, + "detailedplace__power__leakage__total": 2.31474e-06, + "detailedplace__power__switching__total": 0.0818029, + "detailedplace__power__total": 0.293373, + "detailedplace__route__wirelength__estimated": 583038, + "detailedplace__runtime__total": "0:14.74", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, "detailedplace__timing__drv__max_cap_limit": 0.914182, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.433268, + "detailedplace__timing__drv__max_slew_limit": 0.435088, "detailedplace__timing__drv__setup_violation_count": 28, - "detailedplace__timing__setup__tns": -24.9581, - "detailedplace__timing__setup__ws": -1.28497, + "detailedplace__timing__setup__tns": -26.3103, + "detailedplace__timing__setup__ws": -1.32256, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, "detailedroute__antenna_diodes_count": 1, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 8, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 4969, - "detailedroute__route__drc_errors__iter:10": 1, - "detailedroute__route__drc_errors__iter:11": 1, - "detailedroute__route__drc_errors__iter:12": 1, - "detailedroute__route__drc_errors__iter:13": 1, - "detailedroute__route__drc_errors__iter:14": 1, - "detailedroute__route__drc_errors__iter:15": 1, - "detailedroute__route__drc_errors__iter:16": 1, - "detailedroute__route__drc_errors__iter:17": 1, - "detailedroute__route__drc_errors__iter:18": 1, - "detailedroute__route__drc_errors__iter:19": 0, - "detailedroute__route__drc_errors__iter:2": 1033, - "detailedroute__route__drc_errors__iter:3": 956, - "detailedroute__route__drc_errors__iter:4": 49, - "detailedroute__route__drc_errors__iter:5": 10, - "detailedroute__route__drc_errors__iter:6": 3, + "detailedroute__route__drc_errors__iter:1": 4992, + "detailedroute__route__drc_errors__iter:2": 1134, + "detailedroute__route__drc_errors__iter:3": 865, + "detailedroute__route__drc_errors__iter:4": 43, + "detailedroute__route__drc_errors__iter:5": 13, + "detailedroute__route__drc_errors__iter:6": 9, "detailedroute__route__drc_errors__iter:7": 1, - "detailedroute__route__drc_errors__iter:8": 1, - "detailedroute__route__drc_errors__iter:9": 1, - "detailedroute__route__net": 6733, + "detailedroute__route__drc_errors__iter:8": 0, + "detailedroute__route__net": 6794, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 58235, + "detailedroute__route__vias": 58792, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 58235, - "detailedroute__route__wirelength": 774870, - "detailedroute__route__wirelength__iter:1": 777661, - "detailedroute__route__wirelength__iter:10": 774912, - "detailedroute__route__wirelength__iter:11": 774912, - "detailedroute__route__wirelength__iter:12": 774912, - "detailedroute__route__wirelength__iter:13": 774912, - "detailedroute__route__wirelength__iter:14": 774912, - "detailedroute__route__wirelength__iter:15": 774912, - "detailedroute__route__wirelength__iter:16": 774912, - "detailedroute__route__wirelength__iter:17": 774912, - "detailedroute__route__wirelength__iter:18": 774873, - "detailedroute__route__wirelength__iter:19": 774870, - "detailedroute__route__wirelength__iter:2": 775551, - "detailedroute__route__wirelength__iter:3": 775166, - "detailedroute__route__wirelength__iter:4": 774810, - "detailedroute__route__wirelength__iter:5": 774893, - "detailedroute__route__wirelength__iter:6": 774901, - "detailedroute__route__wirelength__iter:7": 774912, - "detailedroute__route__wirelength__iter:8": 774912, - "detailedroute__route__wirelength__iter:9": 774912, - "finish__clock__skew__hold": 0.0857273, - "finish__clock__skew__setup": 0.0857273, - "finish__cpu__total": 28.94, + "detailedroute__route__vias__singlecut": 58792, + "detailedroute__route__wirelength": 785197, + "detailedroute__route__wirelength__iter:1": 788205, + "detailedroute__route__wirelength__iter:2": 786455, + "detailedroute__route__wirelength__iter:3": 785680, + "detailedroute__route__wirelength__iter:4": 785117, + "detailedroute__route__wirelength__iter:5": 785183, + "detailedroute__route__wirelength__iter:6": 785193, + "detailedroute__route__wirelength__iter:7": 785201, + "detailedroute__route__wirelength__iter:8": 785197, + "finish__clock__skew__hold": 0.117331, + "finish__clock__skew__setup": 0.117331, + "finish__cpu__total": 27.71, "finish__design__core__area": 680876, "finish__design__die__area": 691002, - "finish__design__instance__area": 377327, + "finish__design__instance__area": 382850, "finish__design__instance__area__macros": 0, - "finish__design__instance__area__stdcell": 377327, - "finish__design__instance__count": 7596, + "finish__design__instance__area__stdcell": 382850, + "finish__design__instance__count": 7659, "finish__design__instance__count__macros": 0, - "finish__design__instance__count__stdcell": 7596, - "finish__design__instance__utilization": 0.554178, - "finish__design__instance__utilization__stdcell": 0.554178, + "finish__design__instance__count__stdcell": 7659, + "finish__design__instance__utilization": 0.562291, + "finish__design__instance__utilization__stdcell": 0.562291, "finish__design__io": 165, "finish__flow__errors__count": 0, "finish__flow__warnings__count": 1, - "finish__mem__peak": 326156.0, - "finish__power__internal__total": 0.268787, - "finish__power__leakage__total": 3.07054e-06, - "finish__power__switching__total": 0.128354, - "finish__power__total": 0.397143, - "finish__runtime__total": "0:29.18", + "finish__mem__peak": 327668.0, + "finish__power__internal__total": 0.276358, + "finish__power__leakage__total": 3.10684e-06, + "finish__power__switching__total": 0.130711, + "finish__power__total": 0.407072, + "finish__runtime__total": "0:28.05", "finish__timing__drv__hold_violation_count": 0, "finish__timing__drv__max_cap": 0, - "finish__timing__drv__max_cap_limit": 0.908174, + "finish__timing__drv__max_cap_limit": 0.91519, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, "finish__timing__drv__max_slew": 0, - "finish__timing__drv__max_slew_limit": 0.473255, - "finish__timing__drv__setup_violation_count": 6, - "finish__timing__setup__tns": -0.65296, - "finish__timing__setup__ws": -0.308379, - "finish__timing__wns_percent_delay": -3.711906, - "finish_merge__cpu__total": 26.04, - "finish_merge__mem__peak": 475096.0, - "finish_merge__runtime__total": "0:26.36", - "floorplan__cpu__total": 10.9, + "finish__timing__drv__max_slew_limit": 0.399054, + "finish__timing__drv__setup_violation_count": 14, + "finish__timing__setup__tns": -0.828409, + "finish__timing__setup__ws": -0.114095, + "finish__timing__wns_percent_delay": -1.406194, + "finish_merge__cpu__total": 24.71, + "finish_merge__mem__peak": 474836.0, + "finish_merge__runtime__total": "0:25.05", + "floorplan__cpu__total": 10.83, "floorplan__design__core__area": 680876, "floorplan__design__die__area": 691002, "floorplan__design__instance__area": 309521, @@ -181,32 +159,32 @@ "floorplan__design__io": 165, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 2, - "floorplan__mem__peak": 169964.0, + "floorplan__mem__peak": 170148.0, "floorplan__power__internal__total": 0.192196, "floorplan__power__leakage__total": 2.01388e-06, "floorplan__power__switching__total": 0.0484192, "floorplan__power__total": 0.240617, - "floorplan__runtime__total": "0:11.02", + "floorplan__runtime__total": "0:10.95", "floorplan__timing__setup__tns": 0, "floorplan__timing__setup__ws": 0.0135749, - "floorplan_io__cpu__total": 0.96, - "floorplan_io__mem__peak": 149416.0, - "floorplan_io__runtime__total": "0:01.03", - "floorplan_macro__cpu__total": 0.95, - "floorplan_macro__mem__peak": 148388.0, - "floorplan_macro__runtime__total": "0:01.04", - "floorplan_pdn__cpu__total": 1.88, - "floorplan_pdn__mem__peak": 160676.0, - "floorplan_pdn__runtime__total": "0:01.98", - "floorplan_tap__cpu__total": 0.94, - "floorplan_tap__mem__peak": 145084.0, - "floorplan_tap__runtime__total": "0:01.03", - "floorplan_tdms__cpu__total": 0.95, - "floorplan_tdms__mem__peak": 147952.0, + "floorplan_io__cpu__total": 0.92, + "floorplan_io__mem__peak": 148736.0, + "floorplan_io__runtime__total": "0:01.02", + "floorplan_macro__cpu__total": 0.94, + "floorplan_macro__mem__peak": 147116.0, + "floorplan_macro__runtime__total": "0:01.02", + "floorplan_pdn__cpu__total": 1.87, + "floorplan_pdn__mem__peak": 160412.0, + "floorplan_pdn__runtime__total": "0:02.00", + "floorplan_tap__cpu__total": 0.86, + "floorplan_tap__mem__peak": 144712.0, + "floorplan_tap__runtime__total": "0:01.00", + "floorplan_tdms__cpu__total": 0.87, + "floorplan_tdms__mem__peak": 148060.0, "floorplan_tdms__runtime__total": "0:01.03", "flow__errors__count": 0, "flow__warnings__count": 0, - "globalplace__cpu__total": 155.07, + "globalplace__cpu__total": 450.38, "globalplace__design__core__area": 680876, "globalplace__design__die__area": 691002, "globalplace__design__instance__area": 315087, @@ -220,100 +198,100 @@ "globalplace__design__io": 165, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 0, - "globalplace__mem__peak": 713048.0, - "globalplace__power__internal__total": 0.200995, + "globalplace__mem__peak": 712748.0, + "globalplace__power__internal__total": 0.200997, "globalplace__power__leakage__total": 2.07352e-06, - "globalplace__power__switching__total": 0.0736554, - "globalplace__power__total": 0.274653, - "globalplace__runtime__total": "0:37.79", - "globalplace__timing__setup__tns": -160.775, - "globalplace__timing__setup__ws": -1.56232, - "globalplace_io__cpu__total": 1.01, - "globalplace_io__mem__peak": 159744.0, - "globalplace_io__runtime__total": "0:01.17", - "globalplace_skip_io__cpu__total": 110.56, - "globalplace_skip_io__mem__peak": 167904.0, - "globalplace_skip_io__runtime__total": "0:04.62", + "globalplace__power__switching__total": 0.0736581, + "globalplace__power__total": 0.274657, + "globalplace__runtime__total": "0:52.93", + "globalplace__timing__setup__tns": -160.446, + "globalplace__timing__setup__ws": -1.5623, + "globalplace_io__cpu__total": 1.09, + "globalplace_io__mem__peak": 159860.0, + "globalplace_io__runtime__total": "0:01.16", + "globalplace_skip_io__cpu__total": 321.92, + "globalplace_skip_io__mem__peak": 168548.0, + "globalplace_skip_io__runtime__total": "0:11.50", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, "globalroute__antenna_diodes_count": 2, - "globalroute__clock__skew__hold": 0.0771955, - "globalroute__clock__skew__setup": 0.0771955, - "globalroute__cpu__total": 170.61, + "globalroute__clock__skew__hold": 0.104962, + "globalroute__clock__skew__setup": 0.104962, + "globalroute__cpu__total": 157.41, "globalroute__design__core__area": 680876, "globalroute__design__die__area": 691002, - "globalroute__design__instance__area": 377321, + "globalroute__design__instance__area": 382844, "globalroute__design__instance__area__macros": 0, - "globalroute__design__instance__area__stdcell": 377321, - "globalroute__design__instance__count": 7595, + "globalroute__design__instance__area__stdcell": 382844, + "globalroute__design__instance__count": 7658, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 0, - "globalroute__design__instance__count__setup_buffer": 28, - "globalroute__design__instance__count__stdcell": 7595, - "globalroute__design__instance__displacement__max": 40.32, - "globalroute__design__instance__displacement__mean": 0.1935, - "globalroute__design__instance__displacement__total": 1471.12, - "globalroute__design__instance__utilization": 0.55417, - "globalroute__design__instance__utilization__stdcell": 0.55417, + "globalroute__design__instance__count__setup_buffer": 46, + "globalroute__design__instance__count__stdcell": 7658, + "globalroute__design__instance__displacement__max": 38.64, + "globalroute__design__instance__displacement__mean": 0.3, + "globalroute__design__instance__displacement__total": 2298.8, + "globalroute__design__instance__utilization": 0.562282, + "globalroute__design__instance__utilization__stdcell": 0.562282, "globalroute__design__io": 165, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 1, - "globalroute__mem__peak": 799600.0, - "globalroute__power__internal__total": 0.268089, - "globalroute__power__leakage__total": 2.41139e-06, - "globalroute__power__switching__total": 0.12907, - "globalroute__power__total": 0.397161, - "globalroute__route__wirelength__estimated": 600200, - "globalroute__runtime__total": "2:11.54", - "globalroute__timing__clock__slack": -0.222, + "globalroute__mem__peak": 800936.0, + "globalroute__power__internal__total": 0.275671, + "globalroute__power__leakage__total": 2.44345e-06, + "globalroute__power__switching__total": 0.131256, + "globalroute__power__total": 0.40693, + "globalroute__route__wirelength__estimated": 611464, + "globalroute__runtime__total": "2:00.42", + "globalroute__timing__clock__slack": -0.061, "globalroute__timing__drv__hold_violation_count": 0, "globalroute__timing__drv__max_cap": 0, - "globalroute__timing__drv__max_cap_limit": 0.912458, + "globalroute__timing__drv__max_cap_limit": 0.912778, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, "globalroute__timing__drv__max_slew": 0, - "globalroute__timing__drv__max_slew_limit": 0.495832, - "globalroute__timing__drv__setup_violation_count": 6, - "globalroute__timing__setup__tns": -0.361349, - "globalroute__timing__setup__ws": -0.222402, - "placeopt__cpu__total": 15.65, + "globalroute__timing__drv__max_slew_limit": 0.434971, + "globalroute__timing__drv__setup_violation_count": 7, + "globalroute__timing__setup__tns": -0.23394, + "globalroute__timing__setup__ws": -0.0610658, + "placeopt__cpu__total": 15.13, "placeopt__design__core__area": 680876, "placeopt__design__die__area": 691002, - "placeopt__design__instance__area": 360748, + "placeopt__design__instance__area": 360703, "placeopt__design__instance__area__macros": 0, - "placeopt__design__instance__area__stdcell": 360748, + "placeopt__design__instance__area__stdcell": 360703, "placeopt__design__instance__count": 7401, "placeopt__design__instance__count__macros": 0, "placeopt__design__instance__count__stdcell": 7401, - "placeopt__design__instance__utilization": 0.529829, - "placeopt__design__instance__utilization__stdcell": 0.529829, + "placeopt__design__instance__utilization": 0.529763, + "placeopt__design__instance__utilization__stdcell": 0.529763, "placeopt__design__io": 165, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 0, - "placeopt__mem__peak": 643816.0, - "placeopt__power__internal__total": 0.211681, - "placeopt__power__leakage__total": 2.31501e-06, - "placeopt__power__switching__total": 0.0808679, - "placeopt__power__total": 0.292551, - "placeopt__runtime__total": "0:16.21", + "placeopt__mem__peak": 647360.0, + "placeopt__power__internal__total": 0.211697, + "placeopt__power__leakage__total": 2.31474e-06, + "placeopt__power__switching__total": 0.0808835, + "placeopt__power__total": 0.292583, + "placeopt__runtime__total": "0:15.77", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.913257, + "placeopt__timing__drv__max_cap_limit": 0.912011, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.43394, - "placeopt__timing__drv__setup_violation_count": 27, - "placeopt__timing__setup__tns": -24.1687, - "placeopt__timing__setup__ws": -1.2516, + "placeopt__timing__drv__max_slew_limit": 0.434499, + "placeopt__timing__drv__setup_violation_count": 28, + "placeopt__timing__setup__tns": -25.3543, + "placeopt__timing__setup__ws": -1.29166, "run__flow__design": "riscv32i", - "run__flow__generate_date": "2024-09-23 21:01", + "run__flow__generate_date": "2024-09-27 17:53", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15825-ge21fbdf83", + "run__flow__openroad_version": "v2.0-16089-gd06039e7d", "run__flow__platform": "gf180", "run__flow__platform__capacitance_units": "1pF", "run__flow__platform__current_units": "1mA", @@ -324,12 +302,12 @@ "run__flow__platform__voltage_units": "1v", "run__flow__platform_commit": "N/A", "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "2edf5206-fb90-4d41-ba65-b925edafc795", + "run__flow__uuid": "4a89d46b-c651-4569-8e2c-6674b990c990", "run__flow__variant": "base", - "synth__cpu__total": 33.89, + "synth__cpu__total": 32.86, "synth__design__instance__area__stdcell": 309456.4032, "synth__design__instance__count__stdcell": 6256.0, - "synth__mem__peak": 81640.0, - "synth__runtime__total": "0:34.12", - "total_time": "0:06:54.440000" + "synth__mem__peak": 81152.0, + "synth__runtime__total": "0:33.06", + "total_time": "0:07:59.910000" } \ No newline at end of file diff --git a/flow/designs/gf180/riscv32i/rules-base.json b/flow/designs/gf180/riscv32i/rules-base.json index 0f22e10853..42d6705b20 100644 --- a/flow/designs/gf180/riscv32i/rules-base.json +++ b/flow/designs/gf180/riscv32i/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 349866.97, + "value": 355874.87, "compare": "<=" }, "constraints__clocks__count": { @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 414860, + "value": 414808, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 7750, + "value": 8511, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,11 +20,11 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 674, + "value": 740, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 674, + "value": 740, "compare": "<=" }, "globalroute__antenna_diodes_count": { @@ -32,7 +32,7 @@ "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 889070, + "value": 891236, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -48,15 +48,15 @@ "compare": "<=" }, "finish__timing__setup__ws": { - "value": -0.55, + "value": -0.61, "compare": ">=" }, "finish__design__instance__area": { - "value": 431988, + "value": 435127, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 337, + "value": 370, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { @@ -64,7 +64,7 @@ "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -10.76, + "value": -11.68, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/gf180/uart-blocks/config.mk b/flow/designs/gf180/uart-blocks/config.mk index 29471fa7a7..033e53d088 100644 --- a/flow/designs/gf180/uart-blocks/config.mk +++ b/flow/designs/gf180/uart-blocks/config.mk @@ -7,7 +7,6 @@ export VERILOG_FILES = ./designs/src/uart-no-param/*.v export SDC_FILE = ./designs/$(PLATFORM)/$(DESIGN_NICKNAME)/constraint.sdc export SYNTH_HIERARCHICAL = 1 -export RTLMP_FLOW = 1 export BLOCKS = uart_rx export DIE_AREA = 0 0 430 430 diff --git a/flow/designs/gf180/uart-blocks/metadata-base-ok.json b/flow/designs/gf180/uart-blocks/metadata-base-ok.json index 77b6bc9fd8..b7b38ea829 100644 --- a/flow/designs/gf180/uart-blocks/metadata-base-ok.json +++ b/flow/designs/gf180/uart-blocks/metadata-base-ok.json @@ -5,7 +5,7 @@ ], "cts__clock__skew__hold": 0.00405637, "cts__clock__skew__setup": 0.00405637, - "cts__cpu__total": 8.51, + "cts__cpu__total": 6.24, "cts__design__core__area": 167346, "cts__design__die__area": 184900, "cts__design__instance__area": 60922.1, @@ -25,13 +25,13 @@ "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 0, - "cts__mem__peak": 715876.0, + "cts__mem__peak": 716328.0, "cts__power__internal__total": 0.0362757, "cts__power__leakage__total": 1.03987e-07, "cts__power__switching__total": 0.0187981, "cts__power__total": 0.0550739, "cts__route__wirelength__estimated": 15397.5, - "cts__runtime__total": "0:09.09", + "cts__runtime__total": "0:06.84", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, "cts__timing__drv__max_cap_limit": 0.977854, @@ -44,7 +44,7 @@ "cts__timing__setup__ws": 2.12706, "design__io__hpwl": 15407210, "design__violations": 0, - "detailedplace__cpu__total": 1.12, + "detailedplace__cpu__total": 0.72, "detailedplace__design__core__area": 167346, "detailedplace__design__die__area": 184900, "detailedplace__design__instance__area": 60109.2, @@ -62,13 +62,13 @@ "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 0, - "detailedplace__mem__peak": 144640.0, + "detailedplace__mem__peak": 145928.0, "detailedplace__power__internal__total": 0.0311188, "detailedplace__power__leakage__total": 9.9067e-08, "detailedplace__power__switching__total": 0.0156068, "detailedplace__power__total": 0.0467257, "detailedplace__route__wirelength__estimated": 15090.5, - "detailedplace__runtime__total": "0:01.22", + "detailedplace__runtime__total": "0:00.81", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, "detailedplace__timing__drv__max_cap_limit": 0.973552, @@ -101,7 +101,7 @@ "detailedroute__route__wirelength__iter:4": 17720, "finish__clock__skew__hold": 0.00610495, "finish__clock__skew__setup": 0.00610495, - "finish__cpu__total": 2.06, + "finish__cpu__total": 2.02, "finish__design__core__area": 167346, "finish__design__die__area": 184900, "finish__design__instance__area": 60984.2, @@ -114,13 +114,13 @@ "finish__design__instance__utilization__stdcell": 0.127097, "finish__design__io": 44, "finish__flow__errors__count": 0, - "finish__flow__warnings__count": 1, - "finish__mem__peak": 210236.0, + "finish__flow__warnings__count": 0, + "finish__mem__peak": 294108.0, "finish__power__internal__total": 0.0362174, "finish__power__leakage__total": 1.74618e-07, "finish__power__switching__total": 0.0192977, "finish__power__total": 0.0555153, - "finish__runtime__total": "0:02.24", + "finish__runtime__total": "0:02.26", "finish__timing__drv__hold_violation_count": 0, "finish__timing__drv__max_cap": 0, "finish__timing__drv__max_cap_limit": 0.979563, @@ -132,10 +132,10 @@ "finish__timing__setup__tns": 0, "finish__timing__setup__ws": 2.11573, "finish__timing__wns_percent_delay": 78.817569, - "finish_merge__cpu__total": 2.09, - "finish_merge__mem__peak": 399208.0, - "finish_merge__runtime__total": "0:02.32", - "floorplan__cpu__total": 1.09, + "finish_merge__cpu__total": 2.03, + "finish_merge__mem__peak": 400036.0, + "finish_merge__runtime__total": "0:02.25", + "floorplan__cpu__total": 0.71, "floorplan__design__core__area": 167346, "floorplan__design__die__area": 184900, "floorplan__design__instance__area": 56394.9, @@ -151,29 +151,32 @@ "floorplan__design__io": 44, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 2, - "floorplan__mem__peak": 143000.0, + "floorplan__mem__peak": 143872.0, "floorplan__power__internal__total": 0.0303661, "floorplan__power__leakage__total": 6.80969e-08, "floorplan__power__switching__total": 0.0123458, "floorplan__power__total": 0.042712, - "floorplan__runtime__total": "0:01.15", + "floorplan__runtime__total": "0:00.77", "floorplan__timing__setup__tns": 0, "floorplan__timing__setup__ws": 2.71362, - "floorplan_io__cpu__total": 0.88, - "floorplan_io__mem__peak": 139496.0, - "floorplan_io__runtime__total": "0:00.94", - "floorplan_macro__cpu__total": 75.2, - "floorplan_macro__mem__peak": 141464.0, - "floorplan_macro__runtime__total": "0:05.62", - "floorplan_pdn__cpu__total": 0.91, - "floorplan_pdn__mem__peak": 146300.0, - "floorplan_pdn__runtime__total": "0:01.00", - "floorplan_tap__cpu__total": 0.88, - "floorplan_tap__mem__peak": 139152.0, - "floorplan_tap__runtime__total": "0:00.95", + "floorplan_io__cpu__total": 0.6, + "floorplan_io__mem__peak": 140288.0, + "floorplan_io__runtime__total": "0:00.65", + "floorplan_macro__cpu__total": 25.98, + "floorplan_macro__mem__peak": 141944.0, + "floorplan_macro__runtime__total": "0:03.57", + "floorplan_pdn__cpu__total": 0.62, + "floorplan_pdn__mem__peak": 147240.0, + "floorplan_pdn__runtime__total": "0:00.69", + "floorplan_tap__cpu__total": 0.57, + "floorplan_tap__mem__peak": 140288.0, + "floorplan_tap__runtime__total": "0:00.65", + "floorplan_tdms__cpu__total": 0.05, + "floorplan_tdms__mem__peak": 100360.0, + "floorplan_tdms__runtime__total": "0:00.10", "flow__errors__count": 0, "flow__warnings__count": 0, - "globalplace__cpu__total": 16.51, + "globalplace__cpu__total": 49.64, "globalplace__design__core__area": 167346, "globalplace__design__die__area": 184900, "globalplace__design__instance__area": 58393.2, @@ -187,26 +190,26 @@ "globalplace__design__io": 44, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 0, - "globalplace__mem__peak": 645812.0, + "globalplace__mem__peak": 646248.0, "globalplace__power__internal__total": 0.0306929, "globalplace__power__leakage__total": 8.95149e-08, "globalplace__power__switching__total": 0.014678, "globalplace__power__total": 0.045371, - "globalplace__runtime__total": "0:02.55", + "globalplace__runtime__total": "0:04.73", "globalplace__timing__setup__tns": 0, "globalplace__timing__setup__ws": 2.71362, - "globalplace_io__cpu__total": 0.78, - "globalplace_io__mem__peak": 140444.0, - "globalplace_io__runtime__total": "0:00.95", - "globalplace_skip_io__cpu__total": 12.08, - "globalplace_skip_io__mem__peak": 140960.0, - "globalplace_skip_io__runtime__total": "0:01.29", + "globalplace_io__cpu__total": 0.6, + "globalplace_io__mem__peak": 141828.0, + "globalplace_io__runtime__total": "0:00.66", + "globalplace_skip_io__cpu__total": 252.89, + "globalplace_skip_io__mem__peak": 141092.0, + "globalplace_skip_io__runtime__total": "0:17.62", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, "globalroute__antenna_diodes_count": 11, "globalroute__clock__skew__hold": 0.00643113, "globalroute__clock__skew__setup": 0.00643113, - "globalroute__cpu__total": 4.74, + "globalroute__cpu__total": 2.45, "globalroute__design__core__area": 167346, "globalroute__design__die__area": 184900, "globalroute__design__instance__area": 60984.2, @@ -226,13 +229,13 @@ "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 0, - "globalroute__mem__peak": 670012.0, + "globalroute__mem__peak": 672812.0, "globalroute__power__internal__total": 0.0362532, "globalroute__power__leakage__total": 1.05651e-07, "globalroute__power__switching__total": 0.0203951, "globalroute__power__total": 0.0566484, "globalroute__route__wirelength__estimated": 15397.5, - "globalroute__runtime__total": "0:02.24", + "globalroute__runtime__total": "0:01.87", "globalroute__timing__clock__slack": 2.096, "globalroute__timing__drv__hold_violation_count": 0, "globalroute__timing__drv__max_cap": 0, @@ -244,7 +247,7 @@ "globalroute__timing__drv__setup_violation_count": 0, "globalroute__timing__setup__tns": 0, "globalroute__timing__setup__ws": 2.0955, - "placeopt__cpu__total": 1.37, + "placeopt__cpu__total": 0.84, "placeopt__design__core__area": 167346, "placeopt__design__die__area": 184900, "placeopt__design__instance__area": 60109.2, @@ -258,12 +261,12 @@ "placeopt__design__io": 44, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 0, - "placeopt__mem__peak": 614164.0, + "placeopt__mem__peak": 614852.0, "placeopt__power__internal__total": 0.0311275, "placeopt__power__leakage__total": 9.9067e-08, "placeopt__power__switching__total": 0.0155045, "placeopt__power__total": 0.046632, - "placeopt__runtime__total": "0:01.89", + "placeopt__runtime__total": "0:01.24", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, @@ -277,10 +280,10 @@ "placeopt__timing__setup__tns": 0, "placeopt__timing__setup__ws": 2.35927, "run__flow__design": "uart-blocks", - "run__flow__generate_date": "2024-09-19 14:13", + "run__flow__generate_date": "2024-09-26 21:32", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15759-g9136ba699", + "run__flow__openroad_version": "v2.0-15807-g036379d64", "run__flow__platform": "gf180", "run__flow__platform__capacitance_units": "1pF", "run__flow__platform__current_units": "1mA", @@ -289,14 +292,14 @@ "run__flow__platform__resistance_units": "1ohm", "run__flow__platform__time_units": "1ns", "run__flow__platform__voltage_units": "1v", - "run__flow__platform_commit": "N/A", - "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "7da4267a-5c85-463b-9ed7-bbef6dbc37e7", - "run__flow__variant": "base", - "synth__cpu__total": 2.36, + "run__flow__platform_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__scripts_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__uuid": "1f949e7b-e84a-4d3f-8465-503f300791cb", + "run__flow__variant": "odb_0925", + "synth__cpu__total": 1.63, "synth__design__instance__area__stdcell": 54754.4584, "synth__design__instance__count__stdcell": 249.0, - "synth__mem__peak": 65792.0, - "synth__runtime__total": "0:02.52", - "total_time": "0:00:35.970000" + "synth__mem__peak": 66944.0, + "synth__runtime__total": "0:01.72", + "total_time": "0:00:46.430000" } \ No newline at end of file diff --git a/flow/designs/gf180/uart-blocks/rules-base.json b/flow/designs/gf180/uart-blocks/rules-base.json index 6058a81045..05cbbc3f92 100644 --- a/flow/designs/gf180/uart-blocks/rules-base.json +++ b/flow/designs/gf180/uart-blocks/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 60156.77, + "value": 62967.63, "compare": "<=" }, "constraints__clocks__count": { @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 65850, + "value": 69126, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 734, + "value": 742, "compare": "<=" }, "detailedplace__design__violations": { @@ -32,7 +32,7 @@ "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 19512, + "value": 20378, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -52,7 +52,7 @@ "compare": ">=" }, "finish__design__instance__area": { - "value": 66226, + "value": 70132, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { diff --git a/flow/designs/ihp-sg13g2/ibex/metadata-base-ok.json b/flow/designs/ihp-sg13g2/ibex/metadata-base-ok.json index d95f183efc..e5bb9ec857 100644 --- a/flow/designs/ihp-sg13g2/ibex/metadata-base-ok.json +++ b/flow/designs/ihp-sg13g2/ibex/metadata-base-ok.json @@ -3,322 +3,312 @@ "constraints__clocks__details": [ "core_clock: 15.0000" ], - "cts__clock__skew__hold": 0.425955, - "cts__clock__skew__setup": 0.425915, - "cts__cpu__total": 53.94, - "cts__design__core__area": 608118, - "cts__design__die__area": 663671, - "cts__design__instance__area": 335713, + "cts__clock__skew__hold": 0.582143, + "cts__clock__skew__setup": 0.58214, + "cts__cpu__total": 58.91, + "cts__design__core__area": 598142, + "cts__design__die__area": 654691, + "cts__design__instance__area": 332607, "cts__design__instance__area__macros": 0, - "cts__design__instance__area__stdcell": 335713, - "cts__design__instance__count": 22795, + "cts__design__instance__area__stdcell": 332607, + "cts__design__instance__count": 21954, "cts__design__instance__count__hold_buffer": 0, "cts__design__instance__count__macros": 0, "cts__design__instance__count__setup_buffer": 0, - "cts__design__instance__count__stdcell": 22795, + "cts__design__instance__count__stdcell": 21954, "cts__design__instance__displacement__max": 0, "cts__design__instance__displacement__mean": 0, "cts__design__instance__displacement__total": 0, - "cts__design__instance__utilization": 0.552052, - "cts__design__instance__utilization__stdcell": 0.552052, + "cts__design__instance__utilization": 0.556066, + "cts__design__instance__utilization__stdcell": 0.556066, "cts__design__io": 264, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 0, - "cts__mem__peak": 484740.0, - "cts__power__internal__total": 0.034747, - "cts__power__leakage__total": 5.09704e-06, - "cts__power__switching__total": 0.015961, - "cts__power__total": 0.0507131, - "cts__route__wirelength__estimated": 1079680.0, - "cts__runtime__total": "0:54.26", + "cts__mem__peak": 480368.0, + "cts__power__internal__total": 0.0322878, + "cts__power__leakage__total": 5.04261e-06, + "cts__power__switching__total": 0.0137908, + "cts__power__total": 0.0460836, + "cts__route__wirelength__estimated": 1021250.0, + "cts__runtime__total": "0:59.24", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, - "cts__timing__drv__max_cap_limit": 0.812075, + "cts__timing__drv__max_cap_limit": 0.754159, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 8, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.906666, + "cts__timing__drv__max_slew_limit": 0.879018, "cts__timing__drv__setup_violation_count": 0, "cts__timing__setup__tns": 0, - "cts__timing__setup__ws": 6.01199, - "design__io__hpwl": 52101664, + "cts__timing__setup__ws": 5.32197, + "design__io__hpwl": 45573948, "design__violations": 0, - "detailedplace__cpu__total": 25.89, - "detailedplace__design__core__area": 608118, - "detailedplace__design__die__area": 663671, - "detailedplace__design__instance__area": 293229, + "detailedplace__cpu__total": 25.19, + "detailedplace__design__core__area": 598142, + "detailedplace__design__die__area": 654691, + "detailedplace__design__instance__area": 289351, "detailedplace__design__instance__area__macros": 0, - "detailedplace__design__instance__area__stdcell": 293229, - "detailedplace__design__instance__count": 20974, + "detailedplace__design__instance__area__stdcell": 289351, + "detailedplace__design__instance__count": 20093, "detailedplace__design__instance__count__macros": 0, - "detailedplace__design__instance__count__stdcell": 20974, - "detailedplace__design__instance__displacement__max": 16.32, - "detailedplace__design__instance__displacement__mean": 2.652, - "detailedplace__design__instance__displacement__total": 55625.4, - "detailedplace__design__instance__utilization": 0.482191, - "detailedplace__design__instance__utilization__stdcell": 0.482191, + "detailedplace__design__instance__count__stdcell": 20093, + "detailedplace__design__instance__displacement__max": 24.84, + "detailedplace__design__instance__displacement__mean": 2.696, + "detailedplace__design__instance__displacement__total": 54176.5, + "detailedplace__design__instance__utilization": 0.48375, + "detailedplace__design__instance__utilization__stdcell": 0.48375, "detailedplace__design__io": 264, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 0, - "detailedplace__mem__peak": 219152.0, - "detailedplace__power__internal__total": 0.026578, - "detailedplace__power__leakage__total": 3.84251e-06, - "detailedplace__power__switching__total": 0.0137018, - "detailedplace__power__total": 0.0402837, - "detailedplace__route__wirelength__estimated": 1053290.0, - "detailedplace__runtime__total": "0:26.02", + "detailedplace__mem__peak": 215692.0, + "detailedplace__power__internal__total": 0.024169, + "detailedplace__power__leakage__total": 3.7645e-06, + "detailedplace__power__switching__total": 0.0115633, + "detailedplace__power__total": 0.035736, + "detailedplace__route__wirelength__estimated": 993570, + "detailedplace__runtime__total": "0:25.34", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, - "detailedplace__timing__drv__max_cap_limit": 0.912913, + "detailedplace__timing__drv__max_cap_limit": 0.918698, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 8, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.910383, + "detailedplace__timing__drv__max_slew_limit": 0.895901, "detailedplace__timing__drv__setup_violation_count": 0, "detailedplace__timing__setup__tns": 0, - "detailedplace__timing__setup__ws": 6.30404, - "detailedroute__antenna__violating__nets": 71, - "detailedroute__antenna__violating__pins": 75, - "detailedroute__cpu__total": 13627.28, + "detailedplace__timing__setup__ws": 6.13571, + "detailedroute__antenna__violating__nets": 94, + "detailedroute__antenna__violating__pins": 95, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 10, - "detailedroute__mem__peak": 4981164.0, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 31830, - "detailedroute__route__drc_errors__iter:10": 62, - "detailedroute__route__drc_errors__iter:11": 7, - "detailedroute__route__drc_errors__iter:12": 6, - "detailedroute__route__drc_errors__iter:13": 4, - "detailedroute__route__drc_errors__iter:14": 3, - "detailedroute__route__drc_errors__iter:15": 2, - "detailedroute__route__drc_errors__iter:16": 0, - "detailedroute__route__drc_errors__iter:2": 17949, - "detailedroute__route__drc_errors__iter:3": 17752, - "detailedroute__route__drc_errors__iter:4": 3463, - "detailedroute__route__drc_errors__iter:5": 947, - "detailedroute__route__drc_errors__iter:6": 264, - "detailedroute__route__drc_errors__iter:7": 142, - "detailedroute__route__drc_errors__iter:8": 93, - "detailedroute__route__drc_errors__iter:9": 90, - "detailedroute__route__net": 24830, + "detailedroute__route__drc_errors__iter:1": 26748, + "detailedroute__route__drc_errors__iter:10": 26, + "detailedroute__route__drc_errors__iter:11": 6, + "detailedroute__route__drc_errors__iter:12": 3, + "detailedroute__route__drc_errors__iter:13": 3, + "detailedroute__route__drc_errors__iter:14": 0, + "detailedroute__route__drc_errors__iter:2": 14490, + "detailedroute__route__drc_errors__iter:3": 13798, + "detailedroute__route__drc_errors__iter:4": 2579, + "detailedroute__route__drc_errors__iter:5": 587, + "detailedroute__route__drc_errors__iter:6": 173, + "detailedroute__route__drc_errors__iter:7": 80, + "detailedroute__route__drc_errors__iter:8": 55, + "detailedroute__route__drc_errors__iter:9": 42, + "detailedroute__route__net": 23917, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 191004, + "detailedroute__route__vias": 176438, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 191004, - "detailedroute__route__wirelength": 1284700, - "detailedroute__route__wirelength__iter:1": 1293598, - "detailedroute__route__wirelength__iter:10": 1284676, - "detailedroute__route__wirelength__iter:11": 1284682, - "detailedroute__route__wirelength__iter:12": 1284689, - "detailedroute__route__wirelength__iter:13": 1284680, - "detailedroute__route__wirelength__iter:14": 1284694, - "detailedroute__route__wirelength__iter:15": 1284693, - "detailedroute__route__wirelength__iter:16": 1284700, - "detailedroute__route__wirelength__iter:2": 1289123, - "detailedroute__route__wirelength__iter:3": 1288038, - "detailedroute__route__wirelength__iter:4": 1285149, - "detailedroute__route__wirelength__iter:5": 1284707, - "detailedroute__route__wirelength__iter:6": 1284676, - "detailedroute__route__wirelength__iter:7": 1284697, - "detailedroute__route__wirelength__iter:8": 1284700, - "detailedroute__route__wirelength__iter:9": 1284686, - "detailedroute__runtime__total": "27:11.03", - "fillcell__cpu__total": 0.41, - "fillcell__mem__peak": 171036.0, - "fillcell__runtime__total": "0:00.52", - "finish__clock__skew__hold": 0.513982, - "finish__clock__skew__setup": 0.513973, - "finish__cpu__total": 119.6, - "finish__design__core__area": 608118, - "finish__design__die__area": 663671, - "finish__design__instance__area": 578625, + "detailedroute__route__vias__singlecut": 176438, + "detailedroute__route__wirelength": 1203019, + "detailedroute__route__wirelength__iter:1": 1211751, + "detailedroute__route__wirelength__iter:10": 1203003, + "detailedroute__route__wirelength__iter:11": 1203015, + "detailedroute__route__wirelength__iter:12": 1203021, + "detailedroute__route__wirelength__iter:13": 1203021, + "detailedroute__route__wirelength__iter:14": 1203019, + "detailedroute__route__wirelength__iter:2": 1206512, + "detailedroute__route__wirelength__iter:3": 1205327, + "detailedroute__route__wirelength__iter:4": 1203571, + "detailedroute__route__wirelength__iter:5": 1203259, + "detailedroute__route__wirelength__iter:6": 1203118, + "detailedroute__route__wirelength__iter:7": 1203071, + "detailedroute__route__wirelength__iter:8": 1203005, + "detailedroute__route__wirelength__iter:9": 1203006, + "finish__clock__skew__hold": 0.709571, + "finish__clock__skew__setup": 0.709505, + "finish__cpu__total": 134.31, + "finish__design__core__area": 598142, + "finish__design__die__area": 654691, + "finish__design__instance__area": 569379, "finish__design__instance__area__macros": 0, - "finish__design__instance__area__stdcell": 578625, - "finish__design__instance__count": 44688, + "finish__design__instance__area__stdcell": 569379, + "finish__design__instance__count": 42802, "finish__design__instance__count__macros": 0, - "finish__design__instance__count__stdcell": 44688, - "finish__design__instance__utilization": 0.951501, - "finish__design__instance__utilization__stdcell": 0.951501, + "finish__design__instance__count__stdcell": 42802, + "finish__design__instance__utilization": 0.951912, + "finish__design__instance__utilization__stdcell": 0.951912, "finish__design__io": 264, - "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.19897, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.00101892, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.00149089, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.00155399, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.19851, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.00155399, + "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.19919, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.00091077, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.00129047, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.00140785, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.19871, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.00140785, "finish__flow__errors__count": 0, "finish__flow__warnings__count": 1, - "finish__mem__peak": 736996.0, - "finish__power__internal__total": 0.035306, - "finish__power__leakage__total": 1.92322e-05, - "finish__power__switching__total": 0.034851, - "finish__power__total": 0.0701762, - "finish__runtime__total": "2:00.24", + "finish__mem__peak": 704872.0, + "finish__power__internal__total": 0.0328213, + "finish__power__leakage__total": 1.91442e-05, + "finish__power__switching__total": 0.0297934, + "finish__power__total": 0.0626338, + "finish__runtime__total": "2:15.03", "finish__timing__drv__hold_violation_count": 0, "finish__timing__drv__max_cap": 0, - "finish__timing__drv__max_cap_limit": 0.496074, - "finish__timing__drv__max_fanout": 108, + "finish__timing__drv__max_cap_limit": 0.516758, + "finish__timing__drv__max_fanout": 63, "finish__timing__drv__max_fanout_limit": 8, "finish__timing__drv__max_slew": 0, - "finish__timing__drv__max_slew_limit": 0.493745, + "finish__timing__drv__max_slew_limit": 0.512753, "finish__timing__drv__setup_violation_count": 0, "finish__timing__setup__tns": 0, - "finish__timing__setup__ws": 2.57967, - "finish__timing__wns_percent_delay": 27.384478, - "finish_merge__cpu__total": 3.35, - "finish_merge__mem__peak": 586804.0, - "finish_merge__runtime__total": "0:03.69", - "floorplan__cpu__total": 9.56, - "floorplan__design__core__area": 608118, - "floorplan__design__die__area": 663671, - "floorplan__design__instance__area": 274947, + "finish__timing__setup__ws": 2.271, + "finish__timing__wns_percent_delay": 23.342584, + "finish_merge__cpu__total": 3.88, + "finish_merge__mem__peak": 575956.0, + "finish_merge__runtime__total": "0:04.29", + "floorplan__cpu__total": 10.42, + "floorplan__design__core__area": 598142, + "floorplan__design__die__area": 654691, + "floorplan__design__instance__area": 271070, "floorplan__design__instance__area__macros": 0, - "floorplan__design__instance__area__stdcell": 274947, - "floorplan__design__instance__count": 18871, + "floorplan__design__instance__area__stdcell": 271070, + "floorplan__design__instance__count": 18068, "floorplan__design__instance__count__hold_buffer": 0, "floorplan__design__instance__count__macros": 0, "floorplan__design__instance__count__setup_buffer": 0, - "floorplan__design__instance__count__stdcell": 18871, - "floorplan__design__instance__utilization": 0.452128, - "floorplan__design__instance__utilization__stdcell": 0.452128, + "floorplan__design__instance__count__stdcell": 18068, + "floorplan__design__instance__utilization": 0.453186, + "floorplan__design__instance__utilization__stdcell": 0.453186, "floorplan__design__io": 264, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 4, - "floorplan__mem__peak": 184092.0, - "floorplan__power__internal__total": 0.0255888, - "floorplan__power__leakage__total": 3.52175e-06, - "floorplan__power__switching__total": 0.0115803, - "floorplan__power__total": 0.0371726, - "floorplan__runtime__total": "0:09.65", + "floorplan__mem__peak": 181756.0, + "floorplan__power__internal__total": 0.0232222, + "floorplan__power__leakage__total": 3.43367e-06, + "floorplan__power__switching__total": 0.00971129, + "floorplan__power__total": 0.032937, + "floorplan__runtime__total": "0:10.55", "floorplan__timing__setup__tns": 0, - "floorplan__timing__setup__ws": 6.68474, - "floorplan_io__cpu__total": 0.2, - "floorplan_io__mem__peak": 137308.0, - "floorplan_io__runtime__total": "0:00.26", - "floorplan_macro__cpu__total": 0.21, - "floorplan_macro__mem__peak": 136212.0, - "floorplan_macro__runtime__total": "0:00.27", - "floorplan_pdn__cpu__total": 0.35, - "floorplan_pdn__mem__peak": 140308.0, - "floorplan_pdn__runtime__total": "0:00.43", - "floorplan_tap__cpu__total": 0.17, - "floorplan_tap__mem__peak": 125208.0, - "floorplan_tap__runtime__total": "0:00.24", - "floorplan_tdms__cpu__total": 0.19, - "floorplan_tdms__mem__peak": 135836.0, - "floorplan_tdms__runtime__total": "0:00.27", + "floorplan__timing__setup__ws": 6.58639, + "floorplan_io__cpu__total": 0.23, + "floorplan_io__mem__peak": 136340.0, + "floorplan_io__runtime__total": "0:00.31", + "floorplan_macro__cpu__total": 0.28, + "floorplan_macro__mem__peak": 135388.0, + "floorplan_macro__runtime__total": "0:00.32", + "floorplan_pdn__cpu__total": 0.43, + "floorplan_pdn__mem__peak": 139776.0, + "floorplan_pdn__runtime__total": "0:00.50", + "floorplan_tap__cpu__total": 0.21, + "floorplan_tap__mem__peak": 124928.0, + "floorplan_tap__runtime__total": "0:00.31", + "floorplan_tdms__cpu__total": 0.24, + "floorplan_tdms__mem__peak": 134936.0, + "floorplan_tdms__runtime__total": "0:00.32", "flow__errors__count": 0, "flow__warnings__count": 0, - "globalplace__cpu__total": 310.82, - "globalplace__design__core__area": 608118, - "globalplace__design__die__area": 663671, - "globalplace__design__instance__area": 274947, + "globalplace__cpu__total": 475.52, + "globalplace__design__core__area": 598142, + "globalplace__design__die__area": 654691, + "globalplace__design__instance__area": 271070, "globalplace__design__instance__area__macros": 0, - "globalplace__design__instance__area__stdcell": 274947, - "globalplace__design__instance__count": 18871, + "globalplace__design__instance__area__stdcell": 271070, + "globalplace__design__instance__count": 18068, "globalplace__design__instance__count__macros": 0, - "globalplace__design__instance__count__stdcell": 18871, - "globalplace__design__instance__utilization": 0.452128, - "globalplace__design__instance__utilization__stdcell": 0.452128, + "globalplace__design__instance__count__stdcell": 18068, + "globalplace__design__instance__utilization": 0.453186, + "globalplace__design__instance__utilization__stdcell": 0.453186, "globalplace__design__io": 264, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 0, - "globalplace__mem__peak": 522284.0, - "globalplace__power__internal__total": 0.0256351, - "globalplace__power__leakage__total": 3.52175e-06, - "globalplace__power__switching__total": 0.0132432, - "globalplace__power__total": 0.0388819, - "globalplace__runtime__total": "0:57.11", + "globalplace__mem__peak": 514440.0, + "globalplace__power__internal__total": 0.0232673, + "globalplace__power__leakage__total": 3.43367e-06, + "globalplace__power__switching__total": 0.0111056, + "globalplace__power__total": 0.0343763, + "globalplace__runtime__total": "1:12.17", "globalplace__timing__setup__tns": 0, - "globalplace__timing__setup__ws": 6.55109, - "globalplace_io__cpu__total": 0.22, - "globalplace_io__mem__peak": 138936.0, - "globalplace_io__runtime__total": "0:00.28", - "globalplace_skip_io__cpu__total": 211.61, - "globalplace_skip_io__mem__peak": 167716.0, - "globalplace_skip_io__runtime__total": "0:08.09", - "globalroute__antenna__violating__nets": 110, - "globalroute__antenna__violating__pins": 114, - "globalroute__antenna_diodes_count": 2436, - "globalroute__clock__skew__hold": 0.309939, - "globalroute__clock__skew__setup": 0.309936, - "globalroute__cpu__total": 135.45, - "globalroute__design__core__area": 608118, - "globalroute__design__die__area": 663671, - "globalroute__design__instance__area": 348973, + "globalplace__timing__setup__ws": 6.43946, + "globalplace_io__cpu__total": 0.23, + "globalplace_io__mem__peak": 137728.0, + "globalplace_io__runtime__total": "0:00.34", + "globalplace_skip_io__cpu__total": 232.88, + "globalplace_skip_io__mem__peak": 165324.0, + "globalplace_skip_io__runtime__total": "0:07.75", + "globalroute__antenna__violating__nets": 111, + "globalroute__antenna__violating__pins": 111, + "globalroute__antenna_diodes_count": 1376, + "globalroute__clock__skew__hold": 0.571874, + "globalroute__clock__skew__setup": 0.571873, + "globalroute__cpu__total": 150.68, + "globalroute__design__core__area": 598142, + "globalroute__design__die__area": 654691, + "globalroute__design__instance__area": 340097, "globalroute__design__instance__area__macros": 0, - "globalroute__design__instance__area__stdcell": 348973, - "globalroute__design__instance__count": 25231, + "globalroute__design__instance__area__stdcell": 340097, + "globalroute__design__instance__count": 23330, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 0, "globalroute__design__instance__count__setup_buffer": 0, - "globalroute__design__instance__count__stdcell": 25231, + "globalroute__design__instance__count__stdcell": 23330, "globalroute__design__instance__displacement__max": 0, "globalroute__design__instance__displacement__mean": 0, "globalroute__design__instance__displacement__total": 0, - "globalroute__design__instance__utilization": 0.573857, - "globalroute__design__instance__utilization__stdcell": 0.573857, + "globalroute__design__instance__utilization": 0.568588, + "globalroute__design__instance__utilization__stdcell": 0.568588, "globalroute__design__io": 264, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 0, - "globalroute__mem__peak": 695360.0, - "globalroute__power__internal__total": 0.0350595, - "globalroute__power__leakage__total": 5.10701e-06, - "globalroute__power__switching__total": 0.0279433, - "globalroute__power__total": 0.0630079, - "globalroute__route__wirelength__estimated": 1079680.0, - "globalroute__runtime__total": "1:12.22", - "globalroute__timing__clock__slack": 4.329, + "globalroute__mem__peak": 672200.0, + "globalroute__power__internal__total": 0.0325974, + "globalroute__power__leakage__total": 5.04824e-06, + "globalroute__power__switching__total": 0.0244748, + "globalroute__power__total": 0.0570773, + "globalroute__route__wirelength__estimated": 1021250.0, + "globalroute__runtime__total": "1:11.90", + "globalroute__timing__clock__slack": 3.744, "globalroute__timing__drv__hold_violation_count": 0, "globalroute__timing__drv__max_cap": 0, - "globalroute__timing__drv__max_cap_limit": 0.655317, - "globalroute__timing__drv__max_fanout": 108, + "globalroute__timing__drv__max_cap_limit": 0.593391, + "globalroute__timing__drv__max_fanout": 63, "globalroute__timing__drv__max_fanout_limit": 8, "globalroute__timing__drv__max_slew": 0, - "globalroute__timing__drv__max_slew_limit": 0.55821, + "globalroute__timing__drv__max_slew_limit": 0.58776, "globalroute__timing__drv__setup_violation_count": 0, "globalroute__timing__setup__tns": 0, - "globalroute__timing__setup__ws": 4.32882, - "placeopt__cpu__total": 18.81, - "placeopt__design__core__area": 608118, - "placeopt__design__die__area": 663671, - "placeopt__design__instance__area": 293229, + "globalroute__timing__setup__ws": 3.74354, + "placeopt__cpu__total": 20.72, + "placeopt__design__core__area": 598142, + "placeopt__design__die__area": 654691, + "placeopt__design__instance__area": 289351, "placeopt__design__instance__area__macros": 0, - "placeopt__design__instance__area__stdcell": 293229, - "placeopt__design__instance__count": 20974, + "placeopt__design__instance__area__stdcell": 289351, + "placeopt__design__instance__count": 20093, "placeopt__design__instance__count__macros": 0, - "placeopt__design__instance__count__stdcell": 20974, - "placeopt__design__instance__utilization": 0.482191, - "placeopt__design__instance__utilization__stdcell": 0.482191, + "placeopt__design__instance__count__stdcell": 20093, + "placeopt__design__instance__utilization": 0.48375, + "placeopt__design__instance__utilization__stdcell": 0.48375, "placeopt__design__io": 264, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 1, - "placeopt__mem__peak": 371464.0, - "placeopt__power__internal__total": 0.0265753, - "placeopt__power__leakage__total": 3.84251e-06, - "placeopt__power__switching__total": 0.0137036, - "placeopt__power__total": 0.0402828, - "placeopt__runtime__total": "0:19.10", + "placeopt__mem__peak": 367392.0, + "placeopt__power__internal__total": 0.024167, + "placeopt__power__leakage__total": 3.7645e-06, + "placeopt__power__switching__total": 0.0115649, + "placeopt__power__total": 0.0357356, + "placeopt__runtime__total": "0:20.99", "placeopt__timing__drv__floating__nets": 1, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.912905, + "placeopt__timing__drv__max_cap_limit": 0.91885, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 8, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.909086, + "placeopt__timing__drv__max_slew_limit": 0.895789, "placeopt__timing__drv__setup_violation_count": 0, "placeopt__timing__setup__tns": 0, - "placeopt__timing__setup__ws": 6.3031, + "placeopt__timing__setup__ws": 6.1301, "run__flow__design": "ibex", - "run__flow__generate_date": "2024-09-13 14:05", + "run__flow__generate_date": "2024-09-27 18:19", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15645-gf32a725a2", + "run__flow__openroad_version": "v2.0-16089-gd06039e7d", "run__flow__platform": "ihp-sg13g2", "run__flow__platform__capacitance_units": "1pF", "run__flow__platform__current_units": "1uA", @@ -329,12 +319,12 @@ "run__flow__platform__voltage_units": "1v", "run__flow__platform_commit": "N/A", "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "fb3a6561-bc16-4a64-bf30-ac24dbb31ca3", + "run__flow__uuid": "bdc02c31-15ae-4260-bac1-f2a1d2d445d4", "run__flow__variant": "base", - "synth__cpu__total": 90.21, - "synth__design__instance__area__stdcell": 274924.8432, - "synth__design__instance__count__stdcell": 18872.0, - "synth__mem__peak": 232004.0, - "synth__runtime__total": "1:30.53", - "total_time": "0:34:54.210000" + "synth__cpu__total": 98.84, + "synth__design__instance__area__stdcell": 271042.6698, + "synth__design__instance__count__stdcell": 18069.0, + "synth__mem__peak": 232556.0, + "synth__runtime__total": "1:39.19", + "total_time": "0:08:28.550000" } \ No newline at end of file diff --git a/flow/designs/ihp-sg13g2/ibex/rules-base.json b/flow/designs/ihp-sg13g2/ibex/rules-base.json index e6abc45f90..af9547420f 100644 --- a/flow/designs/ihp-sg13g2/ibex/rules-base.json +++ b/flow/designs/ihp-sg13g2/ibex/rules-base.json @@ -36,7 +36,7 @@ "compare": "<=" }, "detailedroute__antenna__violating__nets": { - "value": 92, + "value": 94, "compare": "<=" }, "finish__timing__setup__ws": { @@ -59,4 +59,4 @@ "value": -10.0, "compare": ">=" } -} \ No newline at end of file +} diff --git a/flow/designs/nangate45/aes/metadata-base-ok.json b/flow/designs/nangate45/aes/metadata-base-ok.json index 6e19f9c36c..b585ad571d 100644 --- a/flow/designs/nangate45/aes/metadata-base-ok.json +++ b/flow/designs/nangate45/aes/metadata-base-ok.json @@ -3,296 +3,302 @@ "constraints__clocks__details": [ "clk: 0.8200" ], - "cts__clock__skew__hold": 0.0133413, - "cts__clock__skew__setup": 0.0133413, - "cts__cpu__total": 416.09, + "cts__clock__skew__hold": 0.0154092, + "cts__clock__skew__setup": 0.0154092, + "cts__cpu__total": 226.68, "cts__design__core__area": 52785, "cts__design__die__area": 62612.4, - "cts__design__instance__area": 26168.5, + "cts__design__instance__area": 25936.6, "cts__design__instance__area__macros": 0, - "cts__design__instance__area__stdcell": 26168.5, - "cts__design__instance__count": 16520, - "cts__design__instance__count__hold_buffer": 1, + "cts__design__instance__area__stdcell": 25936.6, + "cts__design__instance__count": 16483, + "cts__design__instance__count__hold_buffer": 0, "cts__design__instance__count__macros": 0, - "cts__design__instance__count__setup_buffer": 410, - "cts__design__instance__count__stdcell": 16520, - "cts__design__instance__displacement__max": 7.19, - "cts__design__instance__displacement__mean": 0.2435, - "cts__design__instance__displacement__total": 4027.85, - "cts__design__instance__utilization": 0.495757, - "cts__design__instance__utilization__stdcell": 0.495757, + "cts__design__instance__count__setup_buffer": 373, + "cts__design__instance__count__stdcell": 16483, + "cts__design__instance__displacement__max": 7.03, + "cts__design__instance__displacement__mean": 0.2115, + "cts__design__instance__displacement__total": 3486.54, + "cts__design__instance__utilization": 0.491363, + "cts__design__instance__utilization__stdcell": 0.491363, "cts__design__io": 388, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 1, - "cts__mem__peak": 484132.0, - "cts__power__internal__total": 0.221278, - "cts__power__leakage__total": 0.000713909, - "cts__power__switching__total": 0.213623, - "cts__power__total": 0.435615, - "cts__route__wirelength__estimated": 240495, - "cts__runtime__total": "6:56.57", + "cts__mem__peak": 483464.0, + "cts__power__internal__total": 0.219156, + "cts__power__leakage__total": 0.0007031, + "cts__power__switching__total": 0.211961, + "cts__power__total": 0.431819, + "cts__route__wirelength__estimated": 237764, + "cts__runtime__total": "3:48.69", "cts__timing__drv__hold_violation_count": 0, - "cts__timing__drv__max_cap": 1, - "cts__timing__drv__max_cap_limit": -0.0103905, + "cts__timing__drv__max_cap": 0, + "cts__timing__drv__max_cap_limit": 0.318432, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.352786, - "cts__timing__drv__setup_violation_count": 137, - "cts__timing__setup__tns": -5.54002, - "cts__timing__setup__ws": -0.0971806, + "cts__timing__drv__max_slew_limit": 0.482368, + "cts__timing__drv__setup_violation_count": 148, + "cts__timing__setup__tns": -6.14391, + "cts__timing__setup__ws": -0.0971889, "design__violations": 0, - "detailedplace__cpu__total": 17.15, + "detailedplace__cpu__total": 14.29, "detailedplace__design__core__area": 52785, "detailedplace__design__die__area": 62612.4, - "detailedplace__design__instance__area": 23943.7, + "detailedplace__design__instance__area": 23963.9, "detailedplace__design__instance__area__macros": 0, - "detailedplace__design__instance__area__stdcell": 23943.7, - "detailedplace__design__instance__count": 15858, + "detailedplace__design__instance__area__stdcell": 23963.9, + "detailedplace__design__instance__count": 15860, "detailedplace__design__instance__count__macros": 0, - "detailedplace__design__instance__count__stdcell": 15858, - "detailedplace__design__instance__displacement__max": 5.19, - "detailedplace__design__instance__displacement__mean": 0.82, - "detailedplace__design__instance__displacement__total": 13004.9, - "detailedplace__design__instance__utilization": 0.453608, - "detailedplace__design__instance__utilization__stdcell": 0.453608, + "detailedplace__design__instance__count__stdcell": 15860, + "detailedplace__design__instance__displacement__max": 5, + "detailedplace__design__instance__displacement__mean": 0.8165, + "detailedplace__design__instance__displacement__total": 12951.3, + "detailedplace__design__instance__utilization": 0.453991, + "detailedplace__design__instance__utilization__stdcell": 0.453991, "detailedplace__design__io": 388, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 0, - "detailedplace__mem__peak": 202040.0, - "detailedplace__power__internal__total": 0.194071, - "detailedplace__power__leakage__total": 0.000624031, - "detailedplace__power__switching__total": 0.196147, - "detailedplace__power__total": 0.390842, - "detailedplace__route__wirelength__estimated": 241832, - "detailedplace__runtime__total": "0:17.27", + "detailedplace__mem__peak": 202504.0, + "detailedplace__power__internal__total": 0.194049, + "detailedplace__power__leakage__total": 0.000624549, + "detailedplace__power__switching__total": 0.195929, + "detailedplace__power__total": 0.390603, + "detailedplace__route__wirelength__estimated": 242635, + "detailedplace__runtime__total": "0:14.43", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, - "detailedplace__timing__drv__max_cap_limit": 0.00448028, + "detailedplace__timing__drv__max_cap_limit": 0.0693154, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.359798, + "detailedplace__timing__drv__max_slew_limit": 0.41122, "detailedplace__timing__drv__setup_violation_count": 160, - "detailedplace__timing__setup__tns": -17.889, - "detailedplace__timing__setup__ws": -0.197675, + "detailedplace__timing__setup__tns": -18.0158, + "detailedplace__timing__setup__ws": -0.19702, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, "detailedroute__antenna_diodes_count": 0, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 1, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 6504, - "detailedroute__route__drc_errors__iter:2": 3387, - "detailedroute__route__drc_errors__iter:3": 3064, - "detailedroute__route__drc_errors__iter:4": 399, - "detailedroute__route__drc_errors__iter:5": 35, - "detailedroute__route__drc_errors__iter:6": 0, - "detailedroute__route__net": 17241, + "detailedroute__route__drc_errors__iter:1": 6990, + "detailedroute__route__drc_errors__iter:2": 3743, + "detailedroute__route__drc_errors__iter:3": 3311, + "detailedroute__route__drc_errors__iter:4": 506, + "detailedroute__route__drc_errors__iter:5": 33, + "detailedroute__route__drc_errors__iter:6": 26, + "detailedroute__route__drc_errors__iter:7": 1, + "detailedroute__route__drc_errors__iter:8": 1, + "detailedroute__route__drc_errors__iter:9": 0, + "detailedroute__route__net": 17191, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 150770, + "detailedroute__route__vias": 151438, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 150770, - "detailedroute__route__wirelength": 306207, - "detailedroute__route__wirelength__iter:1": 308538, - "detailedroute__route__wirelength__iter:2": 306450, - "detailedroute__route__wirelength__iter:3": 305782, - "detailedroute__route__wirelength__iter:4": 306213, - "detailedroute__route__wirelength__iter:5": 306215, - "detailedroute__route__wirelength__iter:6": 306207, - "finish__clock__skew__hold": 0.014722, - "finish__clock__skew__setup": 0.014722, - "finish__cpu__total": 31.98, + "detailedroute__route__vias__singlecut": 151438, + "detailedroute__route__wirelength": 305241, + "detailedroute__route__wirelength__iter:1": 307576, + "detailedroute__route__wirelength__iter:2": 305480, + "detailedroute__route__wirelength__iter:3": 304931, + "detailedroute__route__wirelength__iter:4": 305237, + "detailedroute__route__wirelength__iter:5": 305246, + "detailedroute__route__wirelength__iter:6": 305245, + "detailedroute__route__wirelength__iter:7": 305239, + "detailedroute__route__wirelength__iter:8": 305239, + "detailedroute__route__wirelength__iter:9": 305241, + "finish__clock__skew__hold": 0.0233596, + "finish__clock__skew__setup": 0.0233596, + "finish__cpu__total": 27.32, "finish__design__core__area": 52785, "finish__design__die__area": 62612.4, - "finish__design__instance__area": 26839.4, + "finish__design__instance__area": 26776.6, "finish__design__instance__area__macros": 0, - "finish__design__instance__area__stdcell": 26839.4, - "finish__design__instance__count": 16648, + "finish__design__instance__area__stdcell": 26776.6, + "finish__design__instance__count": 16599, "finish__design__instance__count__macros": 0, - "finish__design__instance__count__stdcell": 16648, - "finish__design__instance__utilization": 0.508466, - "finish__design__instance__utilization__stdcell": 0.508466, + "finish__design__instance__count__stdcell": 16599, + "finish__design__instance__utilization": 0.507277, + "finish__design__instance__utilization__stdcell": 0.507277, "finish__design__io": 388, - "finish__design_powergrid__drop__average__net:VDD__corner:default": -0.0810758, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.717006, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 2.32127, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 1.54872, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": -1.22127, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 1.54872, + "finish__design_powergrid__drop__average__net:VDD__corner:default": -0.0962, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.732419, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 2.34915, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 1.5644, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": -1.24915, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 1.5644, "finish__flow__errors__count": 0, - "finish__flow__warnings__count": 1, - "finish__mem__peak": 546672.0, - "finish__power__internal__total": 0.231333, - "finish__power__leakage__total": 0.000740869, - "finish__power__switching__total": 0.242244, - "finish__power__total": 0.474318, - "finish__runtime__total": "0:32.36", - "finish__timing__drv__hold_violation_count": 0, - "finish__timing__drv__max_cap": 1, - "finish__timing__drv__max_cap_limit": -0.257875, + "finish__flow__warnings__count": 0, + "finish__mem__peak": 624508.0, + "finish__power__internal__total": 0.231183, + "finish__power__leakage__total": 0.000739257, + "finish__power__switching__total": 0.241523, + "finish__power__total": 0.473445, + "finish__runtime__total": "0:27.79", + "finish__timing__drv__hold_violation_count": 11, + "finish__timing__drv__max_cap": 0, + "finish__timing__drv__max_cap_limit": 0.150494, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, "finish__timing__drv__max_slew": 0, - "finish__timing__drv__max_slew_limit": 0.238893, - "finish__timing__drv__setup_violation_count": 151, - "finish__timing__setup__tns": -6.56871, - "finish__timing__setup__ws": -0.114121, - "finish__timing__wns_percent_delay": -10.537495, - "finish_merge__cpu__total": 2.85, - "finish_merge__mem__peak": 508196.0, - "finish_merge__runtime__total": "0:03.16", - "floorplan__cpu__total": 164.17, + "finish__timing__drv__max_slew_limit": 0.411317, + "finish__timing__drv__setup_violation_count": 155, + "finish__timing__setup__tns": -7.37586, + "finish__timing__setup__ws": -0.1092, + "finish__timing__wns_percent_delay": -9.969871, + "finish_merge__cpu__total": 2.38, + "finish_merge__mem__peak": 509396.0, + "finish_merge__runtime__total": "0:02.65", + "floorplan__cpu__total": 85.7, "floorplan__design__core__area": 52785, "floorplan__design__die__area": 62612.4, - "floorplan__design__instance__area": 21380.3, + "floorplan__design__instance__area": 21373.9, "floorplan__design__instance__area__macros": 0, - "floorplan__design__instance__area__stdcell": 21380.3, - "floorplan__design__instance__count": 15060, + "floorplan__design__instance__area__stdcell": 21373.9, + "floorplan__design__instance__count": 15062, "floorplan__design__instance__count__hold_buffer": 0, "floorplan__design__instance__count__macros": 0, - "floorplan__design__instance__count__setup_buffer": 15, - "floorplan__design__instance__count__stdcell": 15060, - "floorplan__design__instance__utilization": 0.405044, - "floorplan__design__instance__utilization__stdcell": 0.405044, + "floorplan__design__instance__count__setup_buffer": 16, + "floorplan__design__instance__count__stdcell": 15062, + "floorplan__design__instance__utilization": 0.404923, + "floorplan__design__instance__utilization__stdcell": 0.404923, "floorplan__design__io": 388, "floorplan__flow__errors__count": 0, - "floorplan__flow__warnings__count": 8412, - "floorplan__mem__peak": 183544.0, - "floorplan__power__internal__total": 0.173328, - "floorplan__power__leakage__total": 0.000546481, - "floorplan__power__switching__total": 0.138638, - "floorplan__power__total": 0.312513, - "floorplan__runtime__total": "2:44.31", - "floorplan__timing__setup__tns": -1.69179, - "floorplan__timing__setup__ws": -0.0642507, - "floorplan_io__cpu__total": 0.29, - "floorplan_io__mem__peak": 132864.0, - "floorplan_io__runtime__total": "0:00.43", - "floorplan_macro__cpu__total": 0.4, - "floorplan_macro__mem__peak": 141256.0, - "floorplan_macro__runtime__total": "0:00.47", - "floorplan_pdn__cpu__total": 0.5, - "floorplan_pdn__mem__peak": 144892.0, - "floorplan_pdn__runtime__total": "0:00.56", - "floorplan_tap__cpu__total": 0.4, - "floorplan_tap__mem__peak": 133112.0, - "floorplan_tap__runtime__total": "0:00.46", - "floorplan_tdms__cpu__total": 0.43, - "floorplan_tdms__mem__peak": 141756.0, - "floorplan_tdms__runtime__total": "0:00.49", + "floorplan__flow__warnings__count": 7788, + "floorplan__mem__peak": 183188.0, + "floorplan__power__internal__total": 0.17307, + "floorplan__power__leakage__total": 0.000546212, + "floorplan__power__switching__total": 0.138502, + "floorplan__power__total": 0.312118, + "floorplan__runtime__total": "1:25.79", + "floorplan__timing__setup__tns": -1.66785, + "floorplan__timing__setup__ws": -0.0653671, + "floorplan_io__cpu__total": 0.27, + "floorplan_io__mem__peak": 133172.0, + "floorplan_io__runtime__total": "0:00.35", + "floorplan_macro__cpu__total": 0.32, + "floorplan_macro__mem__peak": 141752.0, + "floorplan_macro__runtime__total": "0:00.38", + "floorplan_pdn__cpu__total": 0.36, + "floorplan_pdn__mem__peak": 145288.0, + "floorplan_pdn__runtime__total": "0:00.45", + "floorplan_tap__cpu__total": 0.29, + "floorplan_tap__mem__peak": 134044.0, + "floorplan_tap__runtime__total": "0:00.37", + "floorplan_tdms__cpu__total": 0.31, + "floorplan_tdms__mem__peak": 142360.0, + "floorplan_tdms__runtime__total": "0:00.38", "flow__errors__count": 0, "flow__warnings__count": 0, - "globalplace__cpu__total": 536.45, + "globalplace__cpu__total": 1962.15, "globalplace__design__core__area": 52785, "globalplace__design__die__area": 62612.4, - "globalplace__design__instance__area": 21489.6, + "globalplace__design__instance__area": 21483.2, "globalplace__design__instance__area__macros": 0, - "globalplace__design__instance__area__stdcell": 21489.6, - "globalplace__design__instance__count": 15471, + "globalplace__design__instance__area__stdcell": 21483.2, + "globalplace__design__instance__count": 15473, "globalplace__design__instance__count__macros": 0, - "globalplace__design__instance__count__stdcell": 15471, - "globalplace__design__instance__utilization": 0.407116, - "globalplace__design__instance__utilization__stdcell": 0.407116, + "globalplace__design__instance__count__stdcell": 15473, + "globalplace__design__instance__utilization": 0.406995, + "globalplace__design__instance__utilization__stdcell": 0.406995, "globalplace__design__io": 388, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 0, - "globalplace__mem__peak": 550816.0, - "globalplace__power__internal__total": 0.175537, - "globalplace__power__leakage__total": 0.000546481, - "globalplace__power__switching__total": 0.184063, - "globalplace__power__total": 0.360146, - "globalplace__runtime__total": "1:09.79", - "globalplace__timing__setup__tns": -18.3207, - "globalplace__timing__setup__ws": -0.189276, - "globalplace_io__cpu__total": 0.41, - "globalplace_io__mem__peak": 132772.0, - "globalplace_io__runtime__total": "0:00.46", - "globalplace_skip_io__cpu__total": 0.39, - "globalplace_skip_io__mem__peak": 133112.0, - "globalplace_skip_io__runtime__total": "0:00.45", + "globalplace__mem__peak": 536600.0, + "globalplace__power__internal__total": 0.175289, + "globalplace__power__leakage__total": 0.000546212, + "globalplace__power__switching__total": 0.183911, + "globalplace__power__total": 0.359745, + "globalplace__runtime__total": "3:06.81", + "globalplace__timing__setup__tns": -18.1437, + "globalplace__timing__setup__ws": -0.175039, + "globalplace_io__cpu__total": 0.26, + "globalplace_io__mem__peak": 133916.0, + "globalplace_io__runtime__total": "0:00.36", + "globalplace_skip_io__cpu__total": 0.28, + "globalplace_skip_io__mem__peak": 133536.0, + "globalplace_skip_io__runtime__total": "0:00.37", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, "globalroute__antenna_diodes_count": 0, - "globalroute__clock__skew__hold": 0.0129265, - "globalroute__clock__skew__setup": 0.0129265, - "globalroute__cpu__total": 281.3, + "globalroute__clock__skew__hold": 0.0196884, + "globalroute__clock__skew__setup": 0.0196884, + "globalroute__cpu__total": 237.76, "globalroute__design__core__area": 52785, "globalroute__design__die__area": 62612.4, - "globalroute__design__instance__area": 26839.4, + "globalroute__design__instance__area": 26776.6, "globalroute__design__instance__area__macros": 0, - "globalroute__design__instance__area__stdcell": 26839.4, - "globalroute__design__instance__count": 16648, + "globalroute__design__instance__area__stdcell": 26776.6, + "globalroute__design__instance__count": 16599, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 0, - "globalroute__design__instance__count__setup_buffer": 120, - "globalroute__design__instance__count__stdcell": 16648, - "globalroute__design__instance__displacement__max": 8.43, - "globalroute__design__instance__displacement__mean": 0.144, - "globalroute__design__instance__displacement__total": 2402.99, - "globalroute__design__instance__utilization": 0.508466, - "globalroute__design__instance__utilization__stdcell": 0.508466, + "globalroute__design__instance__count__setup_buffer": 112, + "globalroute__design__instance__count__stdcell": 16599, + "globalroute__design__instance__displacement__max": 6.74, + "globalroute__design__instance__displacement__mean": 0.176, + "globalroute__design__instance__displacement__total": 2925.61, + "globalroute__design__instance__utilization": 0.507277, + "globalroute__design__instance__utilization__stdcell": 0.507277, "globalroute__design__io": 388, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 2, - "globalroute__mem__peak": 646004.0, - "globalroute__power__internal__total": 0.230991, - "globalroute__power__leakage__total": 0.000740869, - "globalroute__power__switching__total": 0.233307, - "globalroute__power__total": 0.465038, - "globalroute__route__wirelength__estimated": 244439, - "globalroute__runtime__total": "4:06.32", - "globalroute__timing__clock__slack": -0.109, + "globalroute__mem__peak": 658688.0, + "globalroute__power__internal__total": 0.230821, + "globalroute__power__leakage__total": 0.000739257, + "globalroute__power__switching__total": 0.232367, + "globalroute__power__total": 0.463926, + "globalroute__route__wirelength__estimated": 242499, + "globalroute__runtime__total": "3:49.29", + "globalroute__timing__clock__slack": -0.113, "globalroute__timing__drv__hold_violation_count": 0, - "globalroute__timing__drv__max_cap": 1, - "globalroute__timing__drv__max_cap_limit": -0.19435, + "globalroute__timing__drv__max_cap": 0, + "globalroute__timing__drv__max_cap_limit": 0.187502, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, "globalroute__timing__drv__max_slew": 0, - "globalroute__timing__drv__max_slew_limit": 0.265536, - "globalroute__timing__drv__setup_violation_count": 145, - "globalroute__timing__setup__tns": -5.98905, - "globalroute__timing__setup__ws": -0.10913, - "placeopt__cpu__total": 15.49, + "globalroute__timing__drv__max_slew_limit": 0.426886, + "globalroute__timing__drv__setup_violation_count": 151, + "globalroute__timing__setup__tns": -6.75298, + "globalroute__timing__setup__ws": -0.113338, + "placeopt__cpu__total": 11.68, "placeopt__design__core__area": 52785, "placeopt__design__die__area": 62612.4, - "placeopt__design__instance__area": 23943.7, + "placeopt__design__instance__area": 23963.9, "placeopt__design__instance__area__macros": 0, - "placeopt__design__instance__area__stdcell": 23943.7, - "placeopt__design__instance__count": 15858, + "placeopt__design__instance__area__stdcell": 23963.9, + "placeopt__design__instance__count": 15860, "placeopt__design__instance__count__macros": 0, - "placeopt__design__instance__count__stdcell": 15858, - "placeopt__design__instance__utilization": 0.453608, - "placeopt__design__instance__utilization__stdcell": 0.453608, + "placeopt__design__instance__count__stdcell": 15860, + "placeopt__design__instance__utilization": 0.453991, + "placeopt__design__instance__utilization__stdcell": 0.453991, "placeopt__design__io": 388, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 0, - "placeopt__mem__peak": 380284.0, - "placeopt__power__internal__total": 0.194157, - "placeopt__power__leakage__total": 0.000624031, - "placeopt__power__switching__total": 0.198481, - "placeopt__power__total": 0.393262, - "placeopt__runtime__total": "0:15.79", + "placeopt__mem__peak": 380764.0, + "placeopt__power__internal__total": 0.194155, + "placeopt__power__leakage__total": 0.000624549, + "placeopt__power__switching__total": 0.198726, + "placeopt__power__total": 0.393506, + "placeopt__runtime__total": "0:11.93", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.00169981, + "placeopt__timing__drv__max_cap_limit": 0.063172, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.350894, + "placeopt__timing__drv__max_slew_limit": 0.408261, "placeopt__timing__drv__setup_violation_count": 160, - "placeopt__timing__setup__tns": -18.2046, - "placeopt__timing__setup__ws": -0.198512, + "placeopt__timing__setup__tns": -18.3859, + "placeopt__timing__setup__ws": -0.196996, "run__flow__design": "aes", - "run__flow__generate_date": "2024-09-19 14:30", + "run__flow__generate_date": "2024-09-26 21:20", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15759-g9136ba699", + "run__flow__openroad_version": "v2.0-15807-g036379d64", "run__flow__platform": "nangate45", "run__flow__platform__capacitance_units": "1fF", "run__flow__platform__current_units": "1mA", @@ -301,14 +307,14 @@ "run__flow__platform__resistance_units": "1kohm", "run__flow__platform__time_units": "1ns", "run__flow__platform__voltage_units": "1v", - "run__flow__platform_commit": "N/A", - "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "06293f6a-0eeb-4e73-9552-d5edb0e2bd4d", - "run__flow__variant": "base", - "synth__cpu__total": 47.53, + "run__flow__platform_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__scripts_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__uuid": "9dbfdd6d-e23c-4562-a5f7-cd7dd30a9007", + "run__flow__variant": "odb_0925", + "synth__cpu__total": 34.51, "synth__design__instance__area__stdcell": 20437.312, "synth__design__instance__count__stdcell": 15057.0, - "synth__mem__peak": 134500.0, - "synth__runtime__total": "0:47.77", - "total_time": "0:16:56.660000" + "synth__mem__peak": 134492.0, + "synth__runtime__total": "0:34.71", + "total_time": "0:13:44.750000" } \ No newline at end of file diff --git a/flow/designs/nangate45/aes/rules-base.json b/flow/designs/nangate45/aes/rules-base.json index f75d859aa3..66e482bb06 100644 --- a/flow/designs/nangate45/aes/rules-base.json +++ b/flow/designs/nangate45/aes/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 22836.36, + "value": 23502.91, "compare": "<=" }, "constraints__clocks__count": { @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 24562, + "value": 27558, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 16030, + "value": 18239, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,11 +20,11 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 1394, + "value": 1586, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 1394, + "value": 1586, "compare": "<=" }, "globalroute__antenna_diodes_count": { @@ -32,7 +32,7 @@ "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 351484, + "value": 351027, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -52,19 +52,19 @@ "compare": ">=" }, "finish__design__instance__area": { - "value": 27225, + "value": 30793, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 697, + "value": 793, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { - "value": 100, + "value": 114, "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -22.25, + "value": -21.96, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/nangate45/ariane133/config.mk b/flow/designs/nangate45/ariane133/config.mk index 5b104af5eb..d440d5f4f2 100644 --- a/flow/designs/nangate45/ariane133/config.mk +++ b/flow/designs/nangate45/ariane133/config.mk @@ -3,7 +3,6 @@ export DESIGN_NICKNAME = ariane133 export PLATFORM = nangate45 export SYNTH_HIERARCHICAL = 1 -export RTLMP_FLOW = 1 # RTL_MP Settings export RTLMP_MAX_INST = 30000 diff --git a/flow/designs/nangate45/ariane136/config.mk b/flow/designs/nangate45/ariane136/config.mk index f11f2cd7e3..6fdc44d170 100644 --- a/flow/designs/nangate45/ariane136/config.mk +++ b/flow/designs/nangate45/ariane136/config.mk @@ -3,7 +3,6 @@ export DESIGN_NICKNAME = ariane136 export PLATFORM = nangate45 export SYNTH_HIERARCHICAL = 1 -export RTLMP_FLOW = 1 # RTL_MP Settings export RTLMP_MAX_INST = 30000 diff --git a/flow/designs/nangate45/black_parrot/config.mk b/flow/designs/nangate45/black_parrot/config.mk index f3bffb2993..be943c4c9d 100644 --- a/flow/designs/nangate45/black_parrot/config.mk +++ b/flow/designs/nangate45/black_parrot/config.mk @@ -3,7 +3,6 @@ export DESIGN_NAME = black_parrot export PLATFORM = nangate45 export SYNTH_HIERARCHICAL = 1 -export RTLMP_FLOW = 1 # # RTL_MP Settings export RTLMP_MAX_INST = 30000 diff --git a/flow/designs/nangate45/bp_be_top/config.mk b/flow/designs/nangate45/bp_be_top/config.mk index 38910ad8bd..08f2628621 100644 --- a/flow/designs/nangate45/bp_be_top/config.mk +++ b/flow/designs/nangate45/bp_be_top/config.mk @@ -3,7 +3,6 @@ export DESIGN_NAME = bp_be_top export PLATFORM = nangate45 export SYNTH_HIERARCHICAL = 1 -export RTLMP_FLOW = 1 # # RTL_MP Settings export RTLMP_MAX_INST = 30000 diff --git a/flow/designs/nangate45/bp_be_top/metadata-base-ok.json b/flow/designs/nangate45/bp_be_top/metadata-base-ok.json index 20b7aba4a5..f5ebf79188 100644 --- a/flow/designs/nangate45/bp_be_top/metadata-base-ok.json +++ b/flow/designs/nangate45/bp_be_top/metadata-base-ok.json @@ -3,165 +3,165 @@ "constraints__clocks__details": [ "CLK: 2.6000" ], - "cts__clock__skew__hold": 0.0982918, - "cts__clock__skew__setup": 0.0982918, - "cts__cpu__total": 685.08, + "cts__clock__skew__hold": 0.100379, + "cts__clock__skew__setup": 0.100379, + "cts__cpu__total": 290.54, "cts__design__core__area": 528365, "cts__design__die__area": 560000, - "cts__design__instance__area": 263111, + "cts__design__instance__area": 262881, "cts__design__instance__area__macros": 143946, - "cts__design__instance__area__stdcell": 119166, - "cts__design__instance__count": 60167, + "cts__design__instance__area__stdcell": 118936, + "cts__design__instance__count": 60111, "cts__design__instance__count__hold_buffer": 0, "cts__design__instance__count__macros": 10, "cts__design__instance__count__setup_buffer": 52, - "cts__design__instance__count__stdcell": 60157, - "cts__design__instance__displacement__max": 5.32, - "cts__design__instance__displacement__mean": 0.011, - "cts__design__instance__displacement__total": 688.683, - "cts__design__instance__utilization": 0.497972, - "cts__design__instance__utilization__stdcell": 0.309988, + "cts__design__instance__count__stdcell": 60101, + "cts__design__instance__displacement__max": 3.75, + "cts__design__instance__displacement__mean": 0.009, + "cts__design__instance__displacement__total": 546.783, + "cts__design__instance__utilization": 0.497537, + "cts__design__instance__utilization__stdcell": 0.30939, "cts__design__io": 3029, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 1, - "cts__mem__peak": 775832.0, - "cts__power__internal__total": 0.0916862, - "cts__power__leakage__total": 0.00966233, - "cts__power__switching__total": 0.0333945, - "cts__power__total": 0.134743, - "cts__route__wirelength__estimated": 2673730.0, - "cts__runtime__total": "11:25.80", + "cts__mem__peak": 796160.0, + "cts__power__internal__total": 0.0914693, + "cts__power__leakage__total": 0.00965101, + "cts__power__switching__total": 0.0330769, + "cts__power__total": 0.134197, + "cts__route__wirelength__estimated": 2651180.0, + "cts__runtime__total": "4:51.34", "cts__timing__drv__hold_violation_count": 0, - "cts__timing__drv__max_cap": 0, - "cts__timing__drv__max_cap_limit": 0.0316421, + "cts__timing__drv__max_cap": 1, + "cts__timing__drv__max_cap_limit": -0.181802, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.361233, + "cts__timing__drv__max_slew_limit": 0.314575, "cts__timing__drv__setup_violation_count": 109, - "cts__timing__setup__tns": -20.3368, - "cts__timing__setup__ws": -0.245873, + "cts__timing__setup__tns": -12.9935, + "cts__timing__setup__ws": -0.144698, "design__io__hpwl": 1770786567, "design__violations": 0, - "detailedplace__cpu__total": 61.53, + "detailedplace__cpu__total": 50.27, "detailedplace__design__core__area": 528365, "detailedplace__design__die__area": 560000, - "detailedplace__design__instance__area": 259742, + "detailedplace__design__instance__area": 259601, "detailedplace__design__instance__area__macros": 143946, - "detailedplace__design__instance__area__stdcell": 115796, - "detailedplace__design__instance__count": 57575, + "detailedplace__design__instance__area__stdcell": 115655, + "detailedplace__design__instance__count": 57548, "detailedplace__design__instance__count__macros": 10, - "detailedplace__design__instance__count__stdcell": 57565, - "detailedplace__design__instance__displacement__max": 42.8215, - "detailedplace__design__instance__displacement__mean": 0.917, - "detailedplace__design__instance__displacement__total": 52804.4, - "detailedplace__design__instance__utilization": 0.491595, - "detailedplace__design__instance__utilization__stdcell": 0.301223, + "detailedplace__design__instance__count__stdcell": 57538, + "detailedplace__design__instance__displacement__max": 48.4215, + "detailedplace__design__instance__displacement__mean": 0.9155, + "detailedplace__design__instance__displacement__total": 52691.1, + "detailedplace__design__instance__utilization": 0.491329, + "detailedplace__design__instance__utilization__stdcell": 0.300857, "detailedplace__design__io": 3029, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 0, - "detailedplace__mem__peak": 478388.0, - "detailedplace__power__internal__total": 0.0843112, - "detailedplace__power__leakage__total": 0.00957019, - "detailedplace__power__switching__total": 0.0247683, - "detailedplace__power__total": 0.11865, - "detailedplace__route__wirelength__estimated": 2661750.0, - "detailedplace__runtime__total": "1:01.83", + "detailedplace__mem__peak": 495300.0, + "detailedplace__power__internal__total": 0.084214, + "detailedplace__power__leakage__total": 0.00956235, + "detailedplace__power__switching__total": 0.0245182, + "detailedplace__power__total": 0.118295, + "detailedplace__route__wirelength__estimated": 2638710.0, + "detailedplace__runtime__total": "0:50.65", "detailedplace__timing__drv__hold_violation_count": 0, - "detailedplace__timing__drv__max_cap": 0, - "detailedplace__timing__drv__max_cap_limit": 0.0327644, + "detailedplace__timing__drv__max_cap": 1, + "detailedplace__timing__drv__max_cap_limit": -0.180876, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.361711, + "detailedplace__timing__drv__max_slew_limit": 0.315057, "detailedplace__timing__drv__setup_violation_count": 109, - "detailedplace__timing__setup__tns": -23.2321, - "detailedplace__timing__setup__ws": -0.320912, + "detailedplace__timing__setup__tns": -21.0274, + "detailedplace__timing__setup__ws": -0.290952, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, "detailedroute__antenna_diodes_count": 0, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 1, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 27069, - "detailedroute__route__drc_errors__iter:10": 902, - "detailedroute__route__drc_errors__iter:11": 363, - "detailedroute__route__drc_errors__iter:12": 83, - "detailedroute__route__drc_errors__iter:13": 11, + "detailedroute__route__drc_errors__iter:1": 25196, + "detailedroute__route__drc_errors__iter:10": 449, + "detailedroute__route__drc_errors__iter:11": 195, + "detailedroute__route__drc_errors__iter:12": 53, + "detailedroute__route__drc_errors__iter:13": 9, "detailedroute__route__drc_errors__iter:14": 0, - "detailedroute__route__drc_errors__iter:2": 6490, - "detailedroute__route__drc_errors__iter:3": 4580, - "detailedroute__route__drc_errors__iter:4": 1891, - "detailedroute__route__drc_errors__iter:5": 1496, - "detailedroute__route__drc_errors__iter:6": 1301, - "detailedroute__route__drc_errors__iter:7": 1176, - "detailedroute__route__drc_errors__iter:8": 1105, - "detailedroute__route__drc_errors__iter:9": 1024, - "detailedroute__route__net": 66511, + "detailedroute__route__drc_errors__iter:2": 6200, + "detailedroute__route__drc_errors__iter:3": 3879, + "detailedroute__route__drc_errors__iter:4": 1547, + "detailedroute__route__drc_errors__iter:5": 1196, + "detailedroute__route__drc_errors__iter:6": 911, + "detailedroute__route__drc_errors__iter:7": 795, + "detailedroute__route__drc_errors__iter:8": 720, + "detailedroute__route__drc_errors__iter:9": 593, + "detailedroute__route__net": 66480, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 530760, + "detailedroute__route__vias": 533837, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 530760, - "detailedroute__route__wirelength": 3283291, - "detailedroute__route__wirelength__iter:1": 3289857, - "detailedroute__route__wirelength__iter:10": 3282588, - "detailedroute__route__wirelength__iter:11": 3283200, - "detailedroute__route__wirelength__iter:12": 3283261, - "detailedroute__route__wirelength__iter:13": 3283275, - "detailedroute__route__wirelength__iter:14": 3283291, - "detailedroute__route__wirelength__iter:2": 3281824, - "detailedroute__route__wirelength__iter:3": 3280156, - "detailedroute__route__wirelength__iter:4": 3281477, - "detailedroute__route__wirelength__iter:5": 3281931, - "detailedroute__route__wirelength__iter:6": 3282136, - "detailedroute__route__wirelength__iter:7": 3282309, - "detailedroute__route__wirelength__iter:8": 3282393, - "detailedroute__route__wirelength__iter:9": 3282487, - "finish__clock__skew__hold": 0.131413, - "finish__clock__skew__setup": 0.131413, - "finish__cpu__total": 186.69, + "detailedroute__route__vias__singlecut": 533837, + "detailedroute__route__wirelength": 3204156, + "detailedroute__route__wirelength__iter:1": 3211464, + "detailedroute__route__wirelength__iter:10": 3203840, + "detailedroute__route__wirelength__iter:11": 3204035, + "detailedroute__route__wirelength__iter:12": 3204159, + "detailedroute__route__wirelength__iter:13": 3204153, + "detailedroute__route__wirelength__iter:14": 3204156, + "detailedroute__route__wirelength__iter:2": 3203148, + "detailedroute__route__wirelength__iter:3": 3201453, + "detailedroute__route__wirelength__iter:4": 3202608, + "detailedroute__route__wirelength__iter:5": 3202919, + "detailedroute__route__wirelength__iter:6": 3203276, + "detailedroute__route__wirelength__iter:7": 3203429, + "detailedroute__route__wirelength__iter:8": 3203537, + "detailedroute__route__wirelength__iter:9": 3203703, + "finish__clock__skew__hold": 0.113635, + "finish__clock__skew__setup": 0.113635, + "finish__cpu__total": 146.13, "finish__design__core__area": 528365, "finish__design__die__area": 560000, - "finish__design__instance__area": 263272, + "finish__design__instance__area": 262928, "finish__design__instance__area__macros": 143946, - "finish__design__instance__area__stdcell": 119326, - "finish__design__instance__count": 60183, + "finish__design__instance__area__stdcell": 118982, + "finish__design__instance__count": 60120, "finish__design__instance__count__macros": 10, - "finish__design__instance__count__stdcell": 60173, - "finish__design__instance__utilization": 0.498276, - "finish__design__instance__utilization__stdcell": 0.310406, + "finish__design__instance__count__stdcell": 60110, + "finish__design__instance__utilization": 0.497625, + "finish__design__instance__utilization__stdcell": 0.309511, "finish__design__io": 3029, - "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.08826, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.0101937, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0244954, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0235779, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.0755, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0235779, + "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.08846, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.0100122, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.024315, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0234295, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.07569, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0234295, "finish__flow__errors__count": 0, - "finish__flow__warnings__count": 1, - "finish__mem__peak": 1500252.0, - "finish__power__internal__total": 0.0919021, - "finish__power__leakage__total": 0.00967007, - "finish__power__switching__total": 0.0406165, - "finish__power__total": 0.142189, - "finish__runtime__total": "3:08.51", + "finish__flow__warnings__count": 0, + "finish__mem__peak": 1573360.0, + "finish__power__internal__total": 0.091626, + "finish__power__leakage__total": 0.00965289, + "finish__power__switching__total": 0.0397725, + "finish__power__total": 0.141051, + "finish__runtime__total": "2:27.73", "finish__timing__drv__hold_violation_count": 0, - "finish__timing__drv__max_cap": 214, - "finish__timing__drv__max_cap_limit": -1.04955, + "finish__timing__drv__max_cap": 192, + "finish__timing__drv__max_cap_limit": -4.26782, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, - "finish__timing__drv__max_slew": 15, - "finish__timing__drv__max_slew_limit": -0.824783, + "finish__timing__drv__max_slew": 11, + "finish__timing__drv__max_slew_limit": -1.42844, "finish__timing__drv__setup_violation_count": 110, - "finish__timing__setup__tns": -26.2764, - "finish__timing__setup__ws": -0.286728, - "finish__timing__wns_percent_delay": -12.537718, - "finish_merge__cpu__total": 8.93, - "finish_merge__mem__peak": 930200.0, - "finish_merge__runtime__total": "0:09.71", - "floorplan__cpu__total": 28.92, + "finish__timing__setup__tns": -20.5988, + "finish__timing__setup__ws": -0.234687, + "finish__timing__wns_percent_delay": -10.502528, + "finish_merge__cpu__total": 6.77, + "finish_merge__mem__peak": 932568.0, + "finish_merge__runtime__total": "0:07.30", + "floorplan__cpu__total": 21.17, "floorplan__design__core__area": 528365, "floorplan__design__die__area": 560000, "floorplan__design__instance__area": 235959, @@ -177,29 +177,32 @@ "floorplan__design__io": 3029, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 1, - "floorplan__mem__peak": 345984.0, + "floorplan__mem__peak": 346228.0, "floorplan__power__internal__total": 0.0770938, "floorplan__power__leakage__total": 0.00860826, "floorplan__power__switching__total": 0.00795342, "floorplan__power__total": 0.0936555, - "floorplan__runtime__total": "0:29.14", + "floorplan__runtime__total": "0:21.39", "floorplan__timing__setup__tns": 0, "floorplan__timing__setup__ws": 0.00696687, - "floorplan_io__cpu__total": 0.88, - "floorplan_io__mem__peak": 211068.0, - "floorplan_io__runtime__total": "0:01.06", - "floorplan_macro__cpu__total": 237.42, - "floorplan_macro__mem__peak": 349452.0, - "floorplan_macro__runtime__total": "0:19.66", - "floorplan_pdn__cpu__total": 2.35, - "floorplan_pdn__mem__peak": 248572.0, - "floorplan_pdn__runtime__total": "0:02.49", - "floorplan_tap__cpu__total": 1.77, - "floorplan_tap__mem__peak": 180584.0, - "floorplan_tap__runtime__total": "0:01.91", + "floorplan_io__cpu__total": 0.7, + "floorplan_io__mem__peak": 212196.0, + "floorplan_io__runtime__total": "0:00.86", + "floorplan_macro__cpu__total": 81.66, + "floorplan_macro__mem__peak": 354312.0, + "floorplan_macro__runtime__total": "0:13.62", + "floorplan_pdn__cpu__total": 1.8, + "floorplan_pdn__mem__peak": 249748.0, + "floorplan_pdn__runtime__total": "0:01.97", + "floorplan_tap__cpu__total": 1.34, + "floorplan_tap__mem__peak": 181376.0, + "floorplan_tap__runtime__total": "0:01.49", + "floorplan_tdms__cpu__total": 0.06, + "floorplan_tdms__mem__peak": 99852.0, + "floorplan_tdms__runtime__total": "0:00.13", "flow__errors__count": 0, "flow__warnings__count": 0, - "globalplace__cpu__total": 2839.8, + "globalplace__cpu__total": 2892.59, "globalplace__design__core__area": 528365, "globalplace__design__die__area": 560000, "globalplace__design__instance__area": 236847, @@ -213,100 +216,100 @@ "globalplace__design__io": 3029, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 0, - "globalplace__mem__peak": 980940.0, - "globalplace__power__internal__total": 0.0775876, + "globalplace__mem__peak": 988712.0, + "globalplace__power__internal__total": 0.0775775, "globalplace__power__leakage__total": 0.00860826, - "globalplace__power__switching__total": 0.0196034, - "globalplace__power__total": 0.105799, - "globalplace__runtime__total": "5:12.94", - "globalplace__timing__setup__tns": -646, - "globalplace__timing__setup__ws": -0.996446, - "globalplace_io__cpu__total": 1.7, - "globalplace_io__mem__peak": 222972.0, - "globalplace_io__runtime__total": "0:01.83", - "globalplace_skip_io__cpu__total": 597.57, - "globalplace_skip_io__mem__peak": 340236.0, - "globalplace_skip_io__runtime__total": "0:24.27", + "globalplace__power__switching__total": 0.0193599, + "globalplace__power__total": 0.105546, + "globalplace__runtime__total": "7:21.02", + "globalplace__timing__setup__tns": -632.884, + "globalplace__timing__setup__ws": -0.964548, + "globalplace_io__cpu__total": 1.18, + "globalplace_io__mem__peak": 222652.0, + "globalplace_io__runtime__total": "0:01.33", + "globalplace_skip_io__cpu__total": 545.18, + "globalplace_skip_io__mem__peak": 344524.0, + "globalplace_skip_io__runtime__total": "0:46.81", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, "globalroute__antenna_diodes_count": 0, - "globalroute__clock__skew__hold": 0.113294, - "globalroute__clock__skew__setup": 0.113294, - "globalroute__cpu__total": 916.98, + "globalroute__clock__skew__hold": 0.096189, + "globalroute__clock__skew__setup": 0.096189, + "globalroute__cpu__total": 335.41, "globalroute__design__core__area": 528365, "globalroute__design__die__area": 560000, - "globalroute__design__instance__area": 263272, + "globalroute__design__instance__area": 262928, "globalroute__design__instance__area__macros": 143946, - "globalroute__design__instance__area__stdcell": 119326, - "globalroute__design__instance__count": 60183, + "globalroute__design__instance__area__stdcell": 118982, + "globalroute__design__instance__count": 60120, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 10, "globalroute__design__instance__count__setup_buffer": 6, - "globalroute__design__instance__count__stdcell": 60173, - "globalroute__design__instance__displacement__max": 3.68, - "globalroute__design__instance__displacement__mean": 0.002, - "globalroute__design__instance__displacement__total": 132.35, - "globalroute__design__instance__utilization": 0.498276, - "globalroute__design__instance__utilization__stdcell": 0.310406, + "globalroute__design__instance__count__stdcell": 60110, + "globalroute__design__instance__displacement__max": 3.23, + "globalroute__design__instance__displacement__mean": 0.001, + "globalroute__design__instance__displacement__total": 75.91, + "globalroute__design__instance__utilization": 0.497625, + "globalroute__design__instance__utilization__stdcell": 0.309511, "globalroute__design__io": 3029, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 2, - "globalroute__mem__peak": 1579096.0, - "globalroute__power__internal__total": 0.0917679, - "globalroute__power__leakage__total": 0.00967007, - "globalroute__power__switching__total": 0.0365198, - "globalroute__power__total": 0.137958, - "globalroute__route__wirelength__estimated": 2674650.0, - "globalroute__runtime__total": "13:18.77", - "globalroute__timing__clock__slack": -0.257, + "globalroute__mem__peak": 1572500.0, + "globalroute__power__internal__total": 0.0915101, + "globalroute__power__leakage__total": 0.00965289, + "globalroute__power__switching__total": 0.0358473, + "globalroute__power__total": 0.13701, + "globalroute__route__wirelength__estimated": 2651190.0, + "globalroute__runtime__total": "4:29.74", + "globalroute__timing__clock__slack": -0.163, "globalroute__timing__drv__hold_violation_count": 0, - "globalroute__timing__drv__max_cap": 82, - "globalroute__timing__drv__max_cap_limit": -0.574967, + "globalroute__timing__drv__max_cap": 84, + "globalroute__timing__drv__max_cap_limit": -3.2896, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, "globalroute__timing__drv__max_slew": 7, - "globalroute__timing__drv__max_slew_limit": -0.561173, - "globalroute__timing__drv__setup_violation_count": 109, - "globalroute__timing__setup__tns": -23.087, - "globalroute__timing__setup__ws": -0.257356, - "placeopt__cpu__total": 60.82, + "globalroute__timing__drv__max_slew_limit": -1.00738, + "globalroute__timing__drv__setup_violation_count": 101, + "globalroute__timing__setup__tns": -14.2929, + "globalroute__timing__setup__ws": -0.1631, + "placeopt__cpu__total": 56.89, "placeopt__design__core__area": 528365, "placeopt__design__die__area": 560000, - "placeopt__design__instance__area": 259742, + "placeopt__design__instance__area": 259601, "placeopt__design__instance__area__macros": 143946, - "placeopt__design__instance__area__stdcell": 115796, - "placeopt__design__instance__count": 57575, + "placeopt__design__instance__area__stdcell": 115655, + "placeopt__design__instance__count": 57548, "placeopt__design__instance__count__macros": 10, - "placeopt__design__instance__count__stdcell": 57565, - "placeopt__design__instance__utilization": 0.491595, - "placeopt__design__instance__utilization__stdcell": 0.301223, + "placeopt__design__instance__count__stdcell": 57538, + "placeopt__design__instance__utilization": 0.491329, + "placeopt__design__instance__utilization__stdcell": 0.300857, "placeopt__design__io": 3029, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 0, - "placeopt__mem__peak": 587772.0, - "placeopt__power__internal__total": 0.0843124, - "placeopt__power__leakage__total": 0.00957019, - "placeopt__power__switching__total": 0.0248283, - "placeopt__power__total": 0.118711, - "placeopt__runtime__total": "1:01.25", + "placeopt__mem__peak": 587036.0, + "placeopt__power__internal__total": 0.0842168, + "placeopt__power__leakage__total": 0.00956235, + "placeopt__power__switching__total": 0.0245743, + "placeopt__power__total": 0.118353, + "placeopt__runtime__total": "0:58.79", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, - "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.0121658, + "placeopt__timing__drv__max_cap": 1, + "placeopt__timing__drv__max_cap_limit": -0.187992, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.365338, + "placeopt__timing__drv__max_slew_limit": 0.311899, "placeopt__timing__drv__setup_violation_count": 109, - "placeopt__timing__setup__tns": -23.4462, - "placeopt__timing__setup__ws": -0.32065, + "placeopt__timing__setup__tns": -21.4821, + "placeopt__timing__setup__ws": -0.29303, "run__flow__design": "bp_be", - "run__flow__generate_date": "2024-09-19 15:02", + "run__flow__generate_date": "2024-09-26 21:20", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15759-g9136ba699", + "run__flow__openroad_version": "v2.0-15807-g036379d64", "run__flow__platform": "nangate45", "run__flow__platform__capacitance_units": "1fF", "run__flow__platform__current_units": "1mA", @@ -315,14 +318,14 @@ "run__flow__platform__resistance_units": "1kohm", "run__flow__platform__time_units": "1ns", "run__flow__platform__voltage_units": "1v", - "run__flow__platform_commit": "N/A", - "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "42ed1117-b1c6-4bd0-92ad-8864295a3b95", - "run__flow__variant": "base", - "synth__cpu__total": 115.32, + "run__flow__platform_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__scripts_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__uuid": "58010a50-d060-41d8-b7d1-493827513887", + "run__flow__variant": "odb_0925", + "synth__cpu__total": 90.34, "synth__design__instance__area__stdcell": 235958.758, "synth__design__instance__count__stdcell": 51020.0, - "synth__mem__peak": 205512.0, - "synth__runtime__total": "1:56.04", - "total_time": "0:38:35.210000" + "synth__mem__peak": 203352.0, + "synth__runtime__total": "1:31.10", + "total_time": "0:24:05.270000" } \ No newline at end of file diff --git a/flow/designs/nangate45/bp_be_top/rules-base.json b/flow/designs/nangate45/bp_be_top/rules-base.json index b83a737f47..c7ee316a74 100644 --- a/flow/designs/nangate45/bp_be_top/rules-base.json +++ b/flow/designs/nangate45/bp_be_top/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 268520.25, + "value": 271352.58, "compare": "<=" }, "constraints__clocks__count": { @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 286756, + "value": 298541, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 58134, + "value": 66169, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,11 +20,11 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 5055, + "value": 5754, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 5055, + "value": 5754, "compare": "<=" }, "globalroute__antenna_diodes_count": { @@ -32,7 +32,7 @@ "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 3674098, + "value": 3684779, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -48,15 +48,15 @@ "compare": "<=" }, "finish__timing__setup__ws": { - "value": -0.41, + "value": -0.36, "compare": ">=" }, "finish__design__instance__area": { - "value": 287472, + "value": 302367, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 2528, + "value": 2877, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { @@ -64,7 +64,7 @@ "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -24.85, + "value": -22.6, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/nangate45/bp_fe_top/config.mk b/flow/designs/nangate45/bp_fe_top/config.mk index 8bd256611b..8a5b3a516c 100644 --- a/flow/designs/nangate45/bp_fe_top/config.mk +++ b/flow/designs/nangate45/bp_fe_top/config.mk @@ -3,7 +3,6 @@ export DESIGN_NAME = bp_fe_top export PLATFORM = nangate45 export SYNTH_HIERARCHICAL = 1 -export RTLMP_FLOW = 1 # # RTL_MP Settings export RTLMP_MAX_INST = 30000 diff --git a/flow/designs/nangate45/bp_fe_top/metadata-base-ok.json b/flow/designs/nangate45/bp_fe_top/metadata-base-ok.json index b2cb4339e8..08597450c6 100644 --- a/flow/designs/nangate45/bp_fe_top/metadata-base-ok.json +++ b/flow/designs/nangate45/bp_fe_top/metadata-base-ok.json @@ -3,165 +3,165 @@ "constraints__clocks__details": [ "CLK: 1.8000" ], - "cts__clock__skew__hold": 0.103918, - "cts__clock__skew__setup": 0.103918, - "cts__cpu__total": 151.3, + "cts__clock__skew__hold": 0.0958693, + "cts__clock__skew__setup": 0.0958693, + "cts__cpu__total": 82.7, "cts__design__core__area": 450857, "cts__design__die__area": 480000, - "cts__design__instance__area": 231145, + "cts__design__instance__area": 233558, "cts__design__instance__area__macros": 160975, - "cts__design__instance__area__stdcell": 70170, - "cts__design__instance__count": 40990, - "cts__design__instance__count__hold_buffer": 0, + "cts__design__instance__area__stdcell": 72583.2, + "cts__design__instance__count": 41114, + "cts__design__instance__count__hold_buffer": 64, "cts__design__instance__count__macros": 11, - "cts__design__instance__count__setup_buffer": 12, - "cts__design__instance__count__stdcell": 40979, - "cts__design__instance__displacement__max": 3.23, - "cts__design__instance__displacement__mean": 0.0015, - "cts__design__instance__displacement__total": 69.376, - "cts__design__instance__utilization": 0.512679, - "cts__design__instance__utilization__stdcell": 0.242064, + "cts__design__instance__count__setup_buffer": 14, + "cts__design__instance__count__stdcell": 41103, + "cts__design__instance__displacement__max": 13.1905, + "cts__design__instance__displacement__mean": 0.0085, + "cts__design__instance__displacement__total": 351.736, + "cts__design__instance__utilization": 0.518032, + "cts__design__instance__utilization__stdcell": 0.250389, "cts__design__io": 2511, "cts__design__violations": 0, "cts__flow__errors__count": 0, - "cts__flow__warnings__count": 1, - "cts__mem__peak": 651320.0, - "cts__power__internal__total": 0.112663, - "cts__power__leakage__total": 0.00933182, - "cts__power__switching__total": 0.0352517, - "cts__power__total": 0.157246, - "cts__route__wirelength__estimated": 1972330.0, - "cts__runtime__total": "2:31.81", + "cts__flow__warnings__count": 0, + "cts__mem__peak": 723284.0, + "cts__power__internal__total": 0.114119, + "cts__power__leakage__total": 0.00942459, + "cts__power__switching__total": 0.0365163, + "cts__power__total": 0.16006, + "cts__route__wirelength__estimated": 1942690.0, + "cts__runtime__total": "1:23.20", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 1, - "cts__timing__drv__max_cap_limit": -0.0260293, + "cts__timing__drv__max_cap_limit": -0.00933306, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.357661, - "cts__timing__drv__setup_violation_count": 6, - "cts__timing__setup__tns": -0.149129, - "cts__timing__setup__ws": -0.0407796, + "cts__timing__drv__max_slew_limit": 0.344122, + "cts__timing__drv__setup_violation_count": 0, + "cts__timing__setup__tns": -2.10942e-06, + "cts__timing__setup__ws": 8.13794e-05, "design__io__hpwl": 1909579690, "design__violations": 0, - "detailedplace__cpu__total": 32.48, + "detailedplace__cpu__total": 38.12, "detailedplace__design__core__area": 450857, "detailedplace__design__die__area": 480000, - "detailedplace__design__instance__area": 229631, + "detailedplace__design__instance__area": 231956, "detailedplace__design__instance__area__macros": 160975, - "detailedplace__design__instance__area__stdcell": 68655.7, - "detailedplace__design__instance__count": 39705, + "detailedplace__design__instance__area__stdcell": 70980.5, + "detailedplace__design__instance__count": 39724, "detailedplace__design__instance__count__macros": 11, - "detailedplace__design__instance__count__stdcell": 39694, - "detailedplace__design__instance__displacement__max": 61.378, + "detailedplace__design__instance__count__stdcell": 39713, + "detailedplace__design__instance__displacement__max": 59.379, "detailedplace__design__instance__displacement__mean": 0.94, - "detailedplace__design__instance__displacement__total": 37335.4, - "detailedplace__design__instance__utilization": 0.509321, - "detailedplace__design__instance__utilization__stdcell": 0.23684, + "detailedplace__design__instance__displacement__total": 37346.8, + "detailedplace__design__instance__utilization": 0.514477, + "detailedplace__design__instance__utilization__stdcell": 0.24486, "detailedplace__design__io": 2511, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 0, - "detailedplace__mem__peak": 371044.0, - "detailedplace__power__internal__total": 0.10721, - "detailedplace__power__leakage__total": 0.00929582, - "detailedplace__power__switching__total": 0.028586, - "detailedplace__power__total": 0.145091, - "detailedplace__route__wirelength__estimated": 1968550.0, - "detailedplace__runtime__total": "0:32.69", + "detailedplace__mem__peak": 502184.0, + "detailedplace__power__internal__total": 0.10866, + "detailedplace__power__leakage__total": 0.00938629, + "detailedplace__power__switching__total": 0.0298022, + "detailedplace__power__total": 0.147848, + "detailedplace__route__wirelength__estimated": 1935720.0, + "detailedplace__runtime__total": "0:38.46", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 1, - "detailedplace__timing__drv__max_cap_limit": -0.0272409, + "detailedplace__timing__drv__max_cap_limit": -0.0013606, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.36892, - "detailedplace__timing__drv__setup_violation_count": 60, - "detailedplace__timing__setup__tns": -5.87345, - "detailedplace__timing__setup__ws": -0.191807, + "detailedplace__timing__drv__max_slew_limit": 0.347481, + "detailedplace__timing__drv__setup_violation_count": 59, + "detailedplace__timing__setup__tns": -4.37858, + "detailedplace__timing__setup__ws": -0.159826, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, "detailedroute__antenna_diodes_count": 0, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 1, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 16812, - "detailedroute__route__drc_errors__iter:10": 161, - "detailedroute__route__drc_errors__iter:11": 30, - "detailedroute__route__drc_errors__iter:12": 14, - "detailedroute__route__drc_errors__iter:13": 5, + "detailedroute__route__drc_errors__iter:1": 15806, + "detailedroute__route__drc_errors__iter:10": 257, + "detailedroute__route__drc_errors__iter:11": 139, + "detailedroute__route__drc_errors__iter:12": 43, + "detailedroute__route__drc_errors__iter:13": 34, "detailedroute__route__drc_errors__iter:14": 0, - "detailedroute__route__drc_errors__iter:2": 3129, - "detailedroute__route__drc_errors__iter:3": 1984, - "detailedroute__route__drc_errors__iter:4": 631, - "detailedroute__route__drc_errors__iter:5": 532, - "detailedroute__route__drc_errors__iter:6": 461, - "detailedroute__route__drc_errors__iter:7": 409, - "detailedroute__route__drc_errors__iter:8": 344, - "detailedroute__route__drc_errors__iter:9": 298, - "detailedroute__route__net": 43628, + "detailedroute__route__drc_errors__iter:2": 2917, + "detailedroute__route__drc_errors__iter:3": 1949, + "detailedroute__route__drc_errors__iter:4": 651, + "detailedroute__route__drc_errors__iter:5": 513, + "detailedroute__route__drc_errors__iter:6": 430, + "detailedroute__route__drc_errors__iter:7": 342, + "detailedroute__route__drc_errors__iter:8": 300, + "detailedroute__route__drc_errors__iter:9": 278, + "detailedroute__route__net": 43646, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 363146, + "detailedroute__route__vias": 350906, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 363146, - "detailedroute__route__wirelength": 2500605, - "detailedroute__route__wirelength__iter:1": 2509262, - "detailedroute__route__wirelength__iter:10": 2500650, - "detailedroute__route__wirelength__iter:11": 2500536, - "detailedroute__route__wirelength__iter:12": 2500532, - "detailedroute__route__wirelength__iter:13": 2500540, - "detailedroute__route__wirelength__iter:14": 2500605, - "detailedroute__route__wirelength__iter:2": 2501745, - "detailedroute__route__wirelength__iter:3": 2499866, - "detailedroute__route__wirelength__iter:4": 2500323, - "detailedroute__route__wirelength__iter:5": 2500490, - "detailedroute__route__wirelength__iter:6": 2500556, - "detailedroute__route__wirelength__iter:7": 2500600, - "detailedroute__route__wirelength__iter:8": 2500625, - "detailedroute__route__wirelength__iter:9": 2500642, - "finish__clock__skew__hold": 0.132836, - "finish__clock__skew__setup": 0.132836, - "finish__cpu__total": 89.18, + "detailedroute__route__vias__singlecut": 350906, + "detailedroute__route__wirelength": 2324499, + "detailedroute__route__wirelength__iter:1": 2332318, + "detailedroute__route__wirelength__iter:10": 2324462, + "detailedroute__route__wirelength__iter:11": 2324588, + "detailedroute__route__wirelength__iter:12": 2324550, + "detailedroute__route__wirelength__iter:13": 2324548, + "detailedroute__route__wirelength__iter:14": 2324499, + "detailedroute__route__wirelength__iter:2": 2325207, + "detailedroute__route__wirelength__iter:3": 2323558, + "detailedroute__route__wirelength__iter:4": 2324073, + "detailedroute__route__wirelength__iter:5": 2324233, + "detailedroute__route__wirelength__iter:6": 2324368, + "detailedroute__route__wirelength__iter:7": 2324437, + "detailedroute__route__wirelength__iter:8": 2324452, + "detailedroute__route__wirelength__iter:9": 2324454, + "finish__clock__skew__hold": 0.165065, + "finish__clock__skew__setup": 0.165065, + "finish__cpu__total": 101.98, "finish__design__core__area": 450857, "finish__design__die__area": 480000, - "finish__design__instance__area": 231703, + "finish__design__instance__area": 233786, "finish__design__instance__area__macros": 160975, - "finish__design__instance__area__stdcell": 70727.5, - "finish__design__instance__count": 41069, + "finish__design__instance__area__stdcell": 72810.3, + "finish__design__instance__count": 41126, "finish__design__instance__count__macros": 11, - "finish__design__instance__count__stdcell": 41058, - "finish__design__instance__utilization": 0.513916, - "finish__design__instance__utilization__stdcell": 0.243987, + "finish__design__instance__count__stdcell": 41115, + "finish__design__instance__utilization": 0.518536, + "finish__design__instance__utilization__stdcell": 0.251172, "finish__design__io": 2511, - "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.08477, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.0165188, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0382717, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0375084, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.06173, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0375084, + "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.08446, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.0166488, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0388172, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0362835, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.06118, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0362835, "finish__flow__errors__count": 0, "finish__flow__warnings__count": 1, - "finish__mem__peak": 1165416.0, - "finish__power__internal__total": 0.113056, - "finish__power__leakage__total": 0.00935018, - "finish__power__switching__total": 0.0447531, - "finish__power__total": 0.167159, - "finish__runtime__total": "1:30.28", - "finish__timing__drv__hold_violation_count": 723, - "finish__timing__drv__max_cap": 162, - "finish__timing__drv__max_cap_limit": -0.874784, + "finish__mem__peak": 1153408.0, + "finish__power__internal__total": 0.114353, + "finish__power__leakage__total": 0.00943289, + "finish__power__switching__total": 0.0447833, + "finish__power__total": 0.168569, + "finish__runtime__total": "1:43.28", + "finish__timing__drv__hold_violation_count": 214, + "finish__timing__drv__max_cap": 136, + "finish__timing__drv__max_cap_limit": -3.4517, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, - "finish__timing__drv__max_slew": 7, - "finish__timing__drv__max_slew_limit": -0.4509, - "finish__timing__drv__setup_violation_count": 219, - "finish__timing__setup__tns": -20.5059, - "finish__timing__setup__ws": -0.414968, - "finish__timing__wns_percent_delay": -22.371968, - "finish_merge__cpu__total": 5.61, - "finish_merge__mem__peak": 767756.0, - "finish_merge__runtime__total": "0:06.09", - "floorplan__cpu__total": 12.0, + "finish__timing__drv__max_slew": 3, + "finish__timing__drv__max_slew_limit": -0.735624, + "finish__timing__drv__setup_violation_count": 133, + "finish__timing__setup__tns": -8.73585, + "finish__timing__setup__ws": -0.503724, + "finish__timing__wns_percent_delay": -25.914493, + "finish_merge__cpu__total": 6.22, + "finish_merge__mem__peak": 751640.0, + "finish_merge__runtime__total": "0:06.70", + "floorplan__cpu__total": 13.61, "floorplan__design__core__area": 450857, "floorplan__design__die__area": 480000, "floorplan__design__instance__area": 212666, @@ -177,29 +177,32 @@ "floorplan__design__io": 2511, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 3, - "floorplan__mem__peak": 265576.0, + "floorplan__mem__peak": 265892.0, "floorplan__power__internal__total": 0.0985009, "floorplan__power__leakage__total": 0.00865656, "floorplan__power__switching__total": 0.00905774, "floorplan__power__total": 0.116215, - "floorplan__runtime__total": "0:12.17", + "floorplan__runtime__total": "0:13.89", "floorplan__timing__setup__tns": 0, "floorplan__timing__setup__ws": 0.0746403, - "floorplan_io__cpu__total": 0.55, - "floorplan_io__mem__peak": 179472.0, - "floorplan_io__runtime__total": "0:00.65", - "floorplan_macro__cpu__total": 336.73, - "floorplan_macro__mem__peak": 282184.0, - "floorplan_macro__runtime__total": "0:16.87", - "floorplan_pdn__cpu__total": 1.52, - "floorplan_pdn__mem__peak": 206932.0, - "floorplan_pdn__runtime__total": "0:01.65", - "floorplan_tap__cpu__total": 1.14, - "floorplan_tap__mem__peak": 160252.0, - "floorplan_tap__runtime__total": "0:01.25", + "floorplan_io__cpu__total": 0.59, + "floorplan_io__mem__peak": 178452.0, + "floorplan_io__runtime__total": "0:00.74", + "floorplan_macro__cpu__total": 343.49, + "floorplan_macro__mem__peak": 281232.0, + "floorplan_macro__runtime__total": "0:17.47", + "floorplan_pdn__cpu__total": 1.66, + "floorplan_pdn__mem__peak": 206604.0, + "floorplan_pdn__runtime__total": "0:01.79", + "floorplan_tap__cpu__total": 0.54, + "floorplan_tap__mem__peak": 160280.0, + "floorplan_tap__runtime__total": "0:00.67", + "floorplan_tdms__cpu__total": 0.11, + "floorplan_tdms__mem__peak": 99856.0, + "floorplan_tdms__runtime__total": "0:00.16", "flow__errors__count": 0, "flow__warnings__count": 0, - "globalplace__cpu__total": 2062.59, + "globalplace__cpu__total": 1750.19, "globalplace__design__core__area": 450857, "globalplace__design__die__area": 480000, "globalplace__design__instance__area": 213527, @@ -213,100 +216,100 @@ "globalplace__design__io": 2511, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 0, - "globalplace__mem__peak": 784000.0, - "globalplace__power__internal__total": 0.0990279, + "globalplace__mem__peak": 726784.0, + "globalplace__power__internal__total": 0.0990108, "globalplace__power__leakage__total": 0.00865656, - "globalplace__power__switching__total": 0.0223824, - "globalplace__power__total": 0.130067, - "globalplace__runtime__total": "3:00.68", - "globalplace__timing__setup__tns": -25.9197, - "globalplace__timing__setup__ws": -0.409975, - "globalplace_io__cpu__total": 1.3, - "globalplace_io__mem__peak": 188944.0, - "globalplace_io__runtime__total": "0:01.49", - "globalplace_skip_io__cpu__total": 516.45, - "globalplace_skip_io__mem__peak": 277684.0, - "globalplace_skip_io__runtime__total": "0:17.59", + "globalplace__power__switching__total": 0.0225387, + "globalplace__power__total": 0.130206, + "globalplace__runtime__total": "3:25.56", + "globalplace__timing__setup__tns": -28.5059, + "globalplace__timing__setup__ws": -0.444425, + "globalplace_io__cpu__total": 1.49, + "globalplace_io__mem__peak": 188588.0, + "globalplace_io__runtime__total": "0:01.61", + "globalplace_skip_io__cpu__total": 872.27, + "globalplace_skip_io__mem__peak": 277896.0, + "globalplace_skip_io__runtime__total": "0:30.16", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, "globalroute__antenna_diodes_count": 0, - "globalroute__clock__skew__hold": 0.118716, - "globalroute__clock__skew__setup": 0.118716, - "globalroute__cpu__total": 741.33, + "globalroute__clock__skew__hold": 0.166721, + "globalroute__clock__skew__setup": 0.166721, + "globalroute__cpu__total": 463.07, "globalroute__design__core__area": 450857, "globalroute__design__die__area": 480000, - "globalroute__design__instance__area": 231703, + "globalroute__design__instance__area": 233786, "globalroute__design__instance__area__macros": 160975, - "globalroute__design__instance__area__stdcell": 70727.5, - "globalroute__design__instance__count": 41069, - "globalroute__design__instance__count__hold_buffer": 76, + "globalroute__design__instance__area__stdcell": 72810.3, + "globalroute__design__instance__count": 41126, + "globalroute__design__instance__count__hold_buffer": 19, "globalroute__design__instance__count__macros": 11, - "globalroute__design__instance__count__setup_buffer": 24, - "globalroute__design__instance__count__stdcell": 41058, - "globalroute__design__instance__displacement__max": 6.03, - "globalroute__design__instance__displacement__mean": 0.0075, - "globalroute__design__instance__displacement__total": 313.58, - "globalroute__design__instance__utilization": 0.513916, - "globalroute__design__instance__utilization__stdcell": 0.243987, + "globalroute__design__instance__count__setup_buffer": 14, + "globalroute__design__instance__count__stdcell": 41115, + "globalroute__design__instance__displacement__max": 7.22, + "globalroute__design__instance__displacement__mean": 0.0085, + "globalroute__design__instance__displacement__total": 362.92, + "globalroute__design__instance__utilization": 0.518536, + "globalroute__design__instance__utilization__stdcell": 0.251172, "globalroute__design__io": 2511, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 2, - "globalroute__mem__peak": 1244652.0, - "globalroute__power__internal__total": 0.11289, - "globalroute__power__leakage__total": 0.00935018, - "globalroute__power__switching__total": 0.0395223, - "globalroute__power__total": 0.161763, - "globalroute__route__wirelength__estimated": 1976960.0, - "globalroute__runtime__total": "11:22.58", - "globalroute__timing__clock__slack": -0.301, + "globalroute__mem__peak": 1307772.0, + "globalroute__power__internal__total": 0.114206, + "globalroute__power__leakage__total": 0.00943289, + "globalroute__power__switching__total": 0.03981, + "globalroute__power__total": 0.163449, + "globalroute__route__wirelength__estimated": 1944420.0, + "globalroute__runtime__total": "6:22.87", + "globalroute__timing__clock__slack": -0.333, "globalroute__timing__drv__hold_violation_count": 0, - "globalroute__timing__drv__max_cap": 71, - "globalroute__timing__drv__max_cap_limit": -0.716208, + "globalroute__timing__drv__max_cap": 60, + "globalroute__timing__drv__max_cap_limit": -2.70632, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, - "globalroute__timing__drv__max_slew": 4, - "globalroute__timing__drv__max_slew_limit": -0.276843, - "globalroute__timing__drv__setup_violation_count": 92, - "globalroute__timing__setup__tns": -5.95772, - "globalroute__timing__setup__ws": -0.301457, - "placeopt__cpu__total": 32.32, + "globalroute__timing__drv__max_slew": 1, + "globalroute__timing__drv__max_slew_limit": -0.477405, + "globalroute__timing__drv__setup_violation_count": 37, + "globalroute__timing__setup__tns": -1.62418, + "globalroute__timing__setup__ws": -0.332978, + "placeopt__cpu__total": 36.5, "placeopt__design__core__area": 450857, "placeopt__design__die__area": 480000, - "placeopt__design__instance__area": 229631, + "placeopt__design__instance__area": 231956, "placeopt__design__instance__area__macros": 160975, - "placeopt__design__instance__area__stdcell": 68655.7, - "placeopt__design__instance__count": 39705, + "placeopt__design__instance__area__stdcell": 70980.5, + "placeopt__design__instance__count": 39724, "placeopt__design__instance__count__macros": 11, - "placeopt__design__instance__count__stdcell": 39694, - "placeopt__design__instance__utilization": 0.509321, - "placeopt__design__instance__utilization__stdcell": 0.23684, + "placeopt__design__instance__count__stdcell": 39713, + "placeopt__design__instance__utilization": 0.514477, + "placeopt__design__instance__utilization__stdcell": 0.24486, "placeopt__design__io": 2511, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 0, - "placeopt__mem__peak": 506000.0, - "placeopt__power__internal__total": 0.107215, - "placeopt__power__leakage__total": 0.00929582, - "placeopt__power__switching__total": 0.0287284, - "placeopt__power__total": 0.14524, - "placeopt__runtime__total": "0:32.67", + "placeopt__mem__peak": 427020.0, + "placeopt__power__internal__total": 0.108666, + "placeopt__power__leakage__total": 0.00938629, + "placeopt__power__switching__total": 0.0299238, + "placeopt__power__total": 0.147976, + "placeopt__runtime__total": "0:36.86", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.0178265, + "placeopt__timing__drv__max_cap_limit": 0.00805162, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.381545, - "placeopt__timing__drv__setup_violation_count": 60, - "placeopt__timing__setup__tns": -5.97717, - "placeopt__timing__setup__ws": -0.189871, + "placeopt__timing__drv__max_slew_limit": 0.351447, + "placeopt__timing__drv__setup_violation_count": 59, + "placeopt__timing__setup__tns": -4.32753, + "placeopt__timing__setup__ws": -0.163713, "run__flow__design": "bp_fe", - "run__flow__generate_date": "2024-09-19 14:40", + "run__flow__generate_date": "2024-10-02 09:02", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15759-g9136ba699", + "run__flow__openroad_version": "v2.0-16219-g56c3c86ba", "run__flow__platform": "nangate45", "run__flow__platform__capacitance_units": "1fF", "run__flow__platform__current_units": "1mA", @@ -317,12 +320,12 @@ "run__flow__platform__voltage_units": "1v", "run__flow__platform_commit": "N/A", "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "7e6b7ea2-11f8-4d76-91b3-962a6b7c748a", + "run__flow__uuid": "0de528d1-948f-41d1-978f-0d3d9763db53", "run__flow__variant": "base", - "synth__cpu__total": 59.1, + "synth__cpu__total": 68.13, "synth__design__instance__area__stdcell": 212665.67, "synth__design__instance__count__stdcell": 33199.0, - "synth__mem__peak": 132452.0, - "synth__runtime__total": "0:59.59", - "total_time": "0:21:28.060000" + "synth__mem__peak": 132616.0, + "synth__runtime__total": "1:08.69", + "total_time": "0:16:32.110000" } \ No newline at end of file diff --git a/flow/designs/nangate45/bp_fe_top/rules-base.json b/flow/designs/nangate45/bp_fe_top/rules-base.json index 8d9dda5006..f35d346b28 100644 --- a/flow/designs/nangate45/bp_fe_top/rules-base.json +++ b/flow/designs/nangate45/bp_fe_top/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 240994.14, + "value": 244565.53, "compare": "<=" }, "constraints__clocks__count": { @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 255893, + "value": 263557, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 45576, + "value": 45648, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,11 +20,11 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 3304, + "value": 3969, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 3304, + "value": 3969, "compare": "<=" }, "globalroute__antenna_diodes_count": { @@ -32,7 +32,7 @@ "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 2561433, + "value": 2659108, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -48,23 +48,23 @@ "compare": "<=" }, "finish__timing__setup__ws": { - "value": -0.5, + "value": -0.59, "compare": ">=" }, "finish__design__instance__area": { - "value": 256272, + "value": 265846, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 1652, + "value": 1985, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { - "value": 935, + "value": 368, "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -36.84, + "value": -35.7, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/nangate45/bp_multi_top/config.mk b/flow/designs/nangate45/bp_multi_top/config.mk index 224b31bfcb..59c9975a36 100644 --- a/flow/designs/nangate45/bp_multi_top/config.mk +++ b/flow/designs/nangate45/bp_multi_top/config.mk @@ -3,7 +3,6 @@ export DESIGN_NAME = bp_multi_top export PLATFORM = nangate45 export SYNTH_HIERARCHICAL = 1 -export RTLMP_FLOW = 1 # # RTL_MP Settings export RTLMP_MAX_INST = 30000 diff --git a/flow/designs/nangate45/bp_multi_top/metadata-base-ok.json b/flow/designs/nangate45/bp_multi_top/metadata-base-ok.json index bdfa9a7b1d..1141b726d4 100644 --- a/flow/designs/nangate45/bp_multi_top/metadata-base-ok.json +++ b/flow/designs/nangate45/bp_multi_top/metadata-base-ok.json @@ -3,159 +3,161 @@ "constraints__clocks__details": [ "CLK: 4.8000" ], - "cts__clock__skew__hold": 0.134655, - "cts__clock__skew__setup": 0.134655, - "cts__cpu__total": 141.47, + "cts__clock__skew__hold": 0.120627, + "cts__clock__skew__setup": 0.120627, + "cts__cpu__total": 113.7, "cts__design__core__area": 1165500.0, "cts__design__die__area": 1210000.0, - "cts__design__instance__area": 583156, + "cts__design__instance__area": 583042, "cts__design__instance__area__macros": 332943, - "cts__design__instance__area__stdcell": 250213, - "cts__design__instance__count": 169122, + "cts__design__instance__area__stdcell": 250099, + "cts__design__instance__count": 169032, "cts__design__instance__count__hold_buffer": 0, "cts__design__instance__count__macros": 26, - "cts__design__instance__count__setup_buffer": 3, - "cts__design__instance__count__stdcell": 169096, - "cts__design__instance__displacement__max": 1.71, + "cts__design__instance__count__setup_buffer": 4, + "cts__design__instance__count__stdcell": 169006, + "cts__design__instance__displacement__max": 1.995, "cts__design__instance__displacement__mean": 0, - "cts__design__instance__displacement__total": 41.318, - "cts__design__instance__utilization": 0.500347, - "cts__design__instance__utilization__stdcell": 0.300534, + "cts__design__instance__displacement__total": 23.147, + "cts__design__instance__utilization": 0.500249, + "cts__design__instance__utilization__stdcell": 0.300397, "cts__design__io": 1453, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 1, - "cts__mem__peak": 1326100.0, - "cts__power__internal__total": 0.0862817, - "cts__power__leakage__total": 0.0212382, - "cts__power__switching__total": 0.0182302, - "cts__power__total": 0.12575, - "cts__route__wirelength__estimated": 4331630.0, - "cts__runtime__total": "2:22.55", + "cts__mem__peak": 1327124.0, + "cts__power__internal__total": 0.0862236, + "cts__power__leakage__total": 0.0212339, + "cts__power__switching__total": 0.0181945, + "cts__power__total": 0.125652, + "cts__route__wirelength__estimated": 4316540.0, + "cts__runtime__total": "1:54.77", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, - "cts__timing__drv__max_cap_limit": 0.0237347, + "cts__timing__drv__max_cap_limit": 0.0407312, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.39266, + "cts__timing__drv__max_slew_limit": 0.401369, "cts__timing__drv__setup_violation_count": 1, - "cts__timing__setup__tns": -1.78439, - "cts__timing__setup__ws": -1.78439, + "cts__timing__setup__tns": -1.76784, + "cts__timing__setup__ws": -1.76784, "design__io__hpwl": 1146653532, "design__violations": 0, - "detailedplace__cpu__total": 136.37, + "detailedplace__cpu__total": 117.5, "detailedplace__design__core__area": 1165500.0, "detailedplace__design__die__area": 1210000.0, - "detailedplace__design__instance__area": 576434, + "detailedplace__design__instance__area": 576397, "detailedplace__design__instance__area__macros": 332943, - "detailedplace__design__instance__area__stdcell": 243491, + "detailedplace__design__instance__area__stdcell": 243454, "detailedplace__design__instance__count": 163148, "detailedplace__design__instance__count__macros": 26, "detailedplace__design__instance__count__stdcell": 163122, - "detailedplace__design__instance__displacement__max": 63.763, - "detailedplace__design__instance__displacement__mean": 0.718, - "detailedplace__design__instance__displacement__total": 117180, - "detailedplace__design__instance__utilization": 0.49458, - "detailedplace__design__instance__utilization__stdcell": 0.292461, + "detailedplace__design__instance__displacement__max": 60.0905, + "detailedplace__design__instance__displacement__mean": 0.7185, + "detailedplace__design__instance__displacement__total": 117253, + "detailedplace__design__instance__utilization": 0.494547, + "detailedplace__design__instance__utilization__stdcell": 0.292415, "detailedplace__design__io": 1453, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 0, - "detailedplace__mem__peak": 1008640.0, - "detailedplace__power__internal__total": 0.0767229, - "detailedplace__power__leakage__total": 0.0210829, - "detailedplace__power__switching__total": 0.00746904, - "detailedplace__power__total": 0.105275, - "detailedplace__route__wirelength__estimated": 4285060.0, - "detailedplace__runtime__total": "2:17.11", + "detailedplace__mem__peak": 1009288.0, + "detailedplace__power__internal__total": 0.0767285, + "detailedplace__power__leakage__total": 0.0210808, + "detailedplace__power__switching__total": 0.00747716, + "detailedplace__power__total": 0.105286, + "detailedplace__route__wirelength__estimated": 4269230.0, + "detailedplace__runtime__total": "1:58.29", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, - "detailedplace__timing__drv__max_cap_limit": 0.0215207, + "detailedplace__timing__drv__max_cap_limit": 0.036303, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.391521, + "detailedplace__timing__drv__max_slew_limit": 0.399099, "detailedplace__timing__drv__setup_violation_count": 1, - "detailedplace__timing__setup__tns": -1.85691, - "detailedplace__timing__setup__ws": -1.85691, + "detailedplace__timing__setup__tns": -1.8443, + "detailedplace__timing__setup__ws": -1.8443, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, "detailedroute__antenna_diodes_count": 0, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 1, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 35569, - "detailedroute__route__drc_errors__iter:10": 17, - "detailedroute__route__drc_errors__iter:11": 0, - "detailedroute__route__drc_errors__iter:2": 7073, - "detailedroute__route__drc_errors__iter:3": 4798, - "detailedroute__route__drc_errors__iter:4": 333, - "detailedroute__route__drc_errors__iter:5": 134, - "detailedroute__route__drc_errors__iter:6": 114, - "detailedroute__route__drc_errors__iter:7": 96, - "detailedroute__route__drc_errors__iter:8": 68, - "detailedroute__route__drc_errors__iter:9": 48, - "detailedroute__route__net": 180895, + "detailedroute__route__drc_errors__iter:1": 35295, + "detailedroute__route__drc_errors__iter:10": 32, + "detailedroute__route__drc_errors__iter:11": 15, + "detailedroute__route__drc_errors__iter:12": 0, + "detailedroute__route__drc_errors__iter:2": 7300, + "detailedroute__route__drc_errors__iter:3": 4789, + "detailedroute__route__drc_errors__iter:4": 257, + "detailedroute__route__drc_errors__iter:5": 88, + "detailedroute__route__drc_errors__iter:6": 72, + "detailedroute__route__drc_errors__iter:7": 62, + "detailedroute__route__drc_errors__iter:8": 45, + "detailedroute__route__drc_errors__iter:9": 39, + "detailedroute__route__net": 180875, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 1095370, + "detailedroute__route__vias": 1093776, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 1095370, - "detailedroute__route__wirelength": 4814690, - "detailedroute__route__wirelength__iter:1": 4828809, - "detailedroute__route__wirelength__iter:10": 4814646, - "detailedroute__route__wirelength__iter:11": 4814690, - "detailedroute__route__wirelength__iter:2": 4815632, - "detailedroute__route__wirelength__iter:3": 4813909, - "detailedroute__route__wirelength__iter:4": 4814372, - "detailedroute__route__wirelength__iter:5": 4814485, - "detailedroute__route__wirelength__iter:6": 4814531, - "detailedroute__route__wirelength__iter:7": 4814621, - "detailedroute__route__wirelength__iter:8": 4814595, - "detailedroute__route__wirelength__iter:9": 4814601, - "finish__clock__skew__hold": 0.145763, - "finish__clock__skew__setup": 0.145763, - "finish__cpu__total": 423.91, + "detailedroute__route__vias__singlecut": 1093776, + "detailedroute__route__wirelength": 4798211, + "detailedroute__route__wirelength__iter:1": 4812444, + "detailedroute__route__wirelength__iter:10": 4798133, + "detailedroute__route__wirelength__iter:11": 4798204, + "detailedroute__route__wirelength__iter:12": 4798211, + "detailedroute__route__wirelength__iter:2": 4799479, + "detailedroute__route__wirelength__iter:3": 4797409, + "detailedroute__route__wirelength__iter:4": 4797994, + "detailedroute__route__wirelength__iter:5": 4798053, + "detailedroute__route__wirelength__iter:6": 4798089, + "detailedroute__route__wirelength__iter:7": 4798102, + "detailedroute__route__wirelength__iter:8": 4798106, + "detailedroute__route__wirelength__iter:9": 4798135, + "finish__clock__skew__hold": 0.128682, + "finish__clock__skew__setup": 0.128682, + "finish__cpu__total": 350.2, "finish__design__core__area": 1165500.0, "finish__design__die__area": 1210000.0, - "finish__design__instance__area": 583199, + "finish__design__instance__area": 583100, "finish__design__instance__area__macros": 332943, - "finish__design__instance__area__stdcell": 250256, - "finish__design__instance__count": 169133, + "finish__design__instance__area__stdcell": 250157, + "finish__design__instance__count": 169038, "finish__design__instance__count__macros": 26, - "finish__design__instance__count__stdcell": 169107, - "finish__design__instance__utilization": 0.500384, - "finish__design__instance__utilization__stdcell": 0.300586, + "finish__design__instance__count__stdcell": 169012, + "finish__design__instance__utilization": 0.500299, + "finish__design__instance__utilization__stdcell": 0.300467, "finish__design__io": 1453, "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.09635, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.00335921, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0113789, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0111106, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.08862, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0111106, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.00335551, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0113992, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0111108, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.0886, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0111108, "finish__flow__errors__count": 0, - "finish__flow__warnings__count": 1, - "finish__mem__peak": 3195592.0, - "finish__power__internal__total": 0.0862949, - "finish__power__leakage__total": 0.0212408, - "finish__power__switching__total": 0.0191814, - "finish__power__total": 0.126717, - "finish__runtime__total": "7:08.34", + "finish__flow__warnings__count": 0, + "finish__mem__peak": 3197648.0, + "finish__power__internal__total": 0.0862426, + "finish__power__leakage__total": 0.0212366, + "finish__power__switching__total": 0.0191381, + "finish__power__total": 0.126617, + "finish__runtime__total": "5:54.31", "finish__timing__drv__hold_violation_count": 0, - "finish__timing__drv__max_cap": 9, - "finish__timing__drv__max_cap_limit": -0.1902, + "finish__timing__drv__max_cap": 8, + "finish__timing__drv__max_cap_limit": -0.237704, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, "finish__timing__drv__max_slew": 0, - "finish__timing__drv__max_slew_limit": 0.295408, + "finish__timing__drv__max_slew_limit": 0.265068, "finish__timing__drv__setup_violation_count": 1, - "finish__timing__setup__tns": -1.8948, - "finish__timing__setup__ws": -1.8948, - "finish__timing__wns_percent_delay": -26.300229, - "finish_merge__cpu__total": 19.02, - "finish_merge__mem__peak": 1768456.0, - "finish_merge__runtime__total": "0:20.53", - "floorplan__cpu__total": 40.16, + "finish__timing__setup__tns": -1.92603, + "finish__timing__setup__ws": -1.92603, + "finish__timing__wns_percent_delay": -26.618755, + "finish_merge__cpu__total": 14.48, + "finish_merge__mem__peak": 1767220.0, + "finish_merge__runtime__total": "0:15.83", + "floorplan__cpu__total": 51.17, "floorplan__design__core__area": 1165500.0, "floorplan__design__die__area": 1210000.0, "floorplan__design__instance__area": 550926, @@ -171,29 +173,32 @@ "floorplan__design__io": 1453, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 314, - "floorplan__mem__peak": 721616.0, + "floorplan__mem__peak": 721512.0, "floorplan__power__internal__total": 0.0756186, "floorplan__power__leakage__total": 0.0200848, "floorplan__power__switching__total": 0.00444122, "floorplan__power__total": 0.100145, - "floorplan__runtime__total": "0:40.70", + "floorplan__runtime__total": "0:58.23", "floorplan__timing__setup__tns": -0.812897, "floorplan__timing__setup__ws": -0.812897, - "floorplan_io__cpu__total": 1.4, - "floorplan_io__mem__peak": 368388.0, - "floorplan_io__runtime__total": "0:01.66", - "floorplan_macro__cpu__total": 1036.8, - "floorplan_macro__mem__peak": 768720.0, - "floorplan_macro__runtime__total": "1:02.87", - "floorplan_pdn__cpu__total": 7.26, - "floorplan_pdn__mem__peak": 469620.0, - "floorplan_pdn__runtime__total": "0:07.68", - "floorplan_tap__cpu__total": 6.84, - "floorplan_tap__mem__peak": 285212.0, - "floorplan_tap__runtime__total": "0:07.15", + "floorplan_io__cpu__total": 1.19, + "floorplan_io__mem__peak": 368436.0, + "floorplan_io__runtime__total": "0:01.45", + "floorplan_macro__cpu__total": 461.94, + "floorplan_macro__mem__peak": 774096.0, + "floorplan_macro__runtime__total": "1:30.80", + "floorplan_pdn__cpu__total": 9.51, + "floorplan_pdn__mem__peak": 470352.0, + "floorplan_pdn__runtime__total": "0:11.06", + "floorplan_tap__cpu__total": 9.55, + "floorplan_tap__mem__peak": 285464.0, + "floorplan_tap__runtime__total": "0:11.16", + "floorplan_tdms__cpu__total": 0.05, + "floorplan_tdms__mem__peak": 100592.0, + "floorplan_tdms__runtime__total": "0:00.20", "flow__errors__count": 0, "flow__warnings__count": 0, - "globalplace__cpu__total": 3592.32, + "globalplace__cpu__total": 4379.2, "globalplace__design__core__area": 1165500.0, "globalplace__design__die__area": 1210000.0, "globalplace__design__instance__area": 552950, @@ -207,100 +212,100 @@ "globalplace__design__io": 1453, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 0, - "globalplace__mem__peak": 1891552.0, - "globalplace__power__internal__total": 0.0757187, + "globalplace__mem__peak": 1884984.0, + "globalplace__power__internal__total": 0.0757207, "globalplace__power__leakage__total": 0.0200848, - "globalplace__power__switching__total": 0.00695859, - "globalplace__power__total": 0.102762, - "globalplace__runtime__total": "9:59.61", - "globalplace__timing__setup__tns": -1.84896, - "globalplace__timing__setup__ws": -1.84896, - "globalplace_io__cpu__total": 1.82, - "globalplace_io__mem__peak": 390924.0, - "globalplace_io__runtime__total": "0:02.15", - "globalplace_skip_io__cpu__total": 867.53, - "globalplace_skip_io__mem__peak": 676428.0, - "globalplace_skip_io__runtime__total": "1:07.49", + "globalplace__power__switching__total": 0.00695964, + "globalplace__power__total": 0.102765, + "globalplace__runtime__total": "14:21.66", + "globalplace__timing__setup__tns": -1.84063, + "globalplace__timing__setup__ws": -1.84063, + "globalplace_io__cpu__total": 1.64, + "globalplace_io__mem__peak": 390852.0, + "globalplace_io__runtime__total": "0:02.11", + "globalplace_skip_io__cpu__total": 622.76, + "globalplace_skip_io__mem__peak": 681908.0, + "globalplace_skip_io__runtime__total": "2:33.82", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, "globalroute__antenna_diodes_count": 0, - "globalroute__clock__skew__hold": 0.121978, - "globalroute__clock__skew__setup": 0.121978, - "globalroute__cpu__total": 494.84, + "globalroute__clock__skew__hold": 0.119135, + "globalroute__clock__skew__setup": 0.119135, + "globalroute__cpu__total": 385.79, "globalroute__design__core__area": 1165500.0, "globalroute__design__die__area": 1210000.0, - "globalroute__design__instance__area": 583199, + "globalroute__design__instance__area": 583100, "globalroute__design__instance__area__macros": 332943, - "globalroute__design__instance__area__stdcell": 250256, - "globalroute__design__instance__count": 169133, + "globalroute__design__instance__area__stdcell": 250157, + "globalroute__design__instance__count": 169038, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 26, - "globalroute__design__instance__count__setup_buffer": 2, - "globalroute__design__instance__count__stdcell": 169107, - "globalroute__design__instance__displacement__max": 1.4, + "globalroute__design__instance__count__setup_buffer": 0, + "globalroute__design__instance__count__stdcell": 169012, + "globalroute__design__instance__displacement__max": 1.59, "globalroute__design__instance__displacement__mean": 0, - "globalroute__design__instance__displacement__total": 7.48, - "globalroute__design__instance__utilization": 0.500384, - "globalroute__design__instance__utilization__stdcell": 0.300586, + "globalroute__design__instance__displacement__total": 24.91, + "globalroute__design__instance__utilization": 0.500299, + "globalroute__design__instance__utilization__stdcell": 0.300467, "globalroute__design__io": 1453, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 2, - "globalroute__mem__peak": 2538340.0, - "globalroute__power__internal__total": 0.086233, - "globalroute__power__leakage__total": 0.0212408, - "globalroute__power__switching__total": 0.0185458, - "globalroute__power__total": 0.12602, - "globalroute__route__wirelength__estimated": 4331630.0, - "globalroute__runtime__total": "4:10.80", - "globalroute__timing__clock__slack": -1.867, + "globalroute__mem__peak": 2554348.0, + "globalroute__power__internal__total": 0.086186, + "globalroute__power__leakage__total": 0.0212366, + "globalroute__power__switching__total": 0.0185078, + "globalroute__power__total": 0.12593, + "globalroute__route__wirelength__estimated": 4316730.0, + "globalroute__runtime__total": "4:19.98", + "globalroute__timing__clock__slack": -1.928, "globalroute__timing__drv__hold_violation_count": 0, "globalroute__timing__drv__max_cap": 4, - "globalroute__timing__drv__max_cap_limit": -0.0772845, + "globalroute__timing__drv__max_cap_limit": -0.151877, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, "globalroute__timing__drv__max_slew": 0, - "globalroute__timing__drv__max_slew_limit": 0.340648, + "globalroute__timing__drv__max_slew_limit": 0.324243, "globalroute__timing__drv__setup_violation_count": 1, - "globalroute__timing__setup__tns": -1.86695, - "globalroute__timing__setup__ws": -1.86695, - "placeopt__cpu__total": 106.0, + "globalroute__timing__setup__tns": -1.92797, + "globalroute__timing__setup__ws": -1.92797, + "placeopt__cpu__total": 86.79, "placeopt__design__core__area": 1165500.0, "placeopt__design__die__area": 1210000.0, - "placeopt__design__instance__area": 576434, + "placeopt__design__instance__area": 576397, "placeopt__design__instance__area__macros": 332943, - "placeopt__design__instance__area__stdcell": 243491, + "placeopt__design__instance__area__stdcell": 243454, "placeopt__design__instance__count": 163148, "placeopt__design__instance__count__macros": 26, "placeopt__design__instance__count__stdcell": 163122, - "placeopt__design__instance__utilization": 0.49458, - "placeopt__design__instance__utilization__stdcell": 0.292461, + "placeopt__design__instance__utilization": 0.494547, + "placeopt__design__instance__utilization__stdcell": 0.292415, "placeopt__design__io": 1453, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 0, - "placeopt__mem__peak": 1016564.0, - "placeopt__power__internal__total": 0.0767239, - "placeopt__power__leakage__total": 0.0210829, - "placeopt__power__switching__total": 0.00749903, - "placeopt__power__total": 0.105306, - "placeopt__runtime__total": "1:46.69", + "placeopt__mem__peak": 1017688.0, + "placeopt__power__internal__total": 0.0767293, + "placeopt__power__leakage__total": 0.0210808, + "placeopt__power__switching__total": 0.00750709, + "placeopt__power__total": 0.105317, + "placeopt__runtime__total": "1:27.59", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.0121593, + "placeopt__timing__drv__max_cap_limit": 0.0384849, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.387178, + "placeopt__timing__drv__max_slew_limit": 0.4006, "placeopt__timing__drv__setup_violation_count": 1, - "placeopt__timing__setup__tns": -1.8546, - "placeopt__timing__setup__ws": -1.8546, + "placeopt__timing__setup__tns": -1.84611, + "placeopt__timing__setup__ws": -1.84611, "run__flow__design": "bp_multi", - "run__flow__generate_date": "2024-09-19 14:57", + "run__flow__generate_date": "2024-09-26 21:20", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15759-g9136ba699", + "run__flow__openroad_version": "v2.0-15807-g036379d64", "run__flow__platform": "nangate45", "run__flow__platform__capacitance_units": "1fF", "run__flow__platform__current_units": "1mA", @@ -309,14 +314,14 @@ "run__flow__platform__resistance_units": "1kohm", "run__flow__platform__time_units": "1ns", "run__flow__platform__voltage_units": "1v", - "run__flow__platform_commit": "N/A", - "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "47792266-d088-4ac3-8c46-9322aff079bc", - "run__flow__variant": "base", - "synth__cpu__total": 173.88, + "run__flow__platform_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__scripts_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__uuid": "ae3654ab-272b-4138-b6ed-db38a72a220b", + "run__flow__variant": "odb_0925", + "synth__cpu__total": 220.65, "synth__design__instance__area__stdcell": 550926.128, "synth__design__instance__count__stdcell": 152650.0, - "synth__mem__peak": 497624.0, - "synth__runtime__total": "2:56.25", - "total_time": "0:34:11.580000" + "synth__mem__peak": 497232.0, + "synth__runtime__total": "4:21.51", + "total_time": "0:40:02.770000" } \ No newline at end of file diff --git a/flow/designs/nangate45/bp_multi_top/rules-base.json b/flow/designs/nangate45/bp_multi_top/rules-base.json index 5aa280e2a9..4aa4273f85 100644 --- a/flow/designs/nangate45/bp_multi_top/rules-base.json +++ b/flow/designs/nangate45/bp_multi_top/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 611851.7, + "value": 633565.05, "compare": "<=" }, "constraints__clocks__count": { @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 634025, + "value": 662857, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 187582, + "value": 187590, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,11 +20,11 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 13625, + "value": 16312, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 13625, + "value": 16312, "compare": "<=" }, "globalroute__antenna_diodes_count": { @@ -32,7 +32,7 @@ "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 5536049, + "value": 5517943, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -48,15 +48,15 @@ "compare": "<=" }, "finish__timing__setup__ws": { - "value": -2.01, + "value": -2.16, "compare": ">=" }, "finish__design__instance__area": { - "value": 636369, + "value": 670565, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 6812, + "value": 8156, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { @@ -64,7 +64,7 @@ "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -40.11, + "value": -41.94, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/nangate45/bp_quad/config.mk b/flow/designs/nangate45/bp_quad/config.mk index 175c086381..f55ffdd96f 100644 --- a/flow/designs/nangate45/bp_quad/config.mk +++ b/flow/designs/nangate45/bp_quad/config.mk @@ -3,7 +3,6 @@ export DESIGN_NICKNAME = bp_quad export PLATFORM = nangate45 export SYNTH_HIERARCHICAL = 1 -export RTLMP_FLOW = 1 # RTL_MP Settings #export RTLMP_MAX_INST = 30000 diff --git a/flow/designs/nangate45/dynamic_node/metadata-base-ok.json b/flow/designs/nangate45/dynamic_node/metadata-base-ok.json index 33616a7fb5..4dfa6a8a8e 100644 --- a/flow/designs/nangate45/dynamic_node/metadata-base-ok.json +++ b/flow/designs/nangate45/dynamic_node/metadata-base-ok.json @@ -5,12 +5,12 @@ ], "cts__clock__skew__hold": 0.0182687, "cts__clock__skew__setup": 0.0182687, - "cts__cpu__total": 57.49, + "cts__cpu__total": 45.72, "cts__design__core__area": 55457.8, "cts__design__die__area": 60557.8, - "cts__design__instance__area": 25694.8, + "cts__design__instance__area": 25694.3, "cts__design__instance__area__macros": 0, - "cts__design__instance__area__stdcell": 25694.8, + "cts__design__instance__area__stdcell": 25694.3, "cts__design__instance__count": 12602, "cts__design__instance__count__hold_buffer": 0, "cts__design__instance__count__macros": 0, @@ -18,20 +18,20 @@ "cts__design__instance__count__stdcell": 12602, "cts__design__instance__displacement__max": 7.03, "cts__design__instance__displacement__mean": 0.06, - "cts__design__instance__displacement__total": 761.367, - "cts__design__instance__utilization": 0.463322, - "cts__design__instance__utilization__stdcell": 0.463322, + "cts__design__instance__displacement__total": 761.178, + "cts__design__instance__utilization": 0.463312, + "cts__design__instance__utilization__stdcell": 0.463312, "cts__design__io": 693, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 1, - "cts__mem__peak": 463536.0, - "cts__power__internal__total": 0.0100298, - "cts__power__leakage__total": 0.000558013, - "cts__power__switching__total": 0.00597008, - "cts__power__total": 0.0165579, + "cts__mem__peak": 465084.0, + "cts__power__internal__total": 0.0100286, + "cts__power__leakage__total": 0.000557966, + "cts__power__switching__total": 0.00597092, + "cts__power__total": 0.0165575, "cts__route__wirelength__estimated": 193998, - "cts__runtime__total": "0:57.79", + "cts__runtime__total": "0:46.03", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, "cts__timing__drv__max_cap_limit": 0.370086, @@ -40,11 +40,11 @@ "cts__timing__drv__max_slew": 0, "cts__timing__drv__max_slew_limit": 0.497823, "cts__timing__drv__setup_violation_count": 6, - "cts__timing__setup__tns": -0.692244, + "cts__timing__setup__tns": -0.699923, "cts__timing__setup__ws": -0.269078, "design__io__hpwl": 117477507, "design__violations": 0, - "detailedplace__cpu__total": 11.92, + "detailedplace__cpu__total": 9.76, "detailedplace__design__core__area": 55457.8, "detailedplace__design__die__area": 60557.8, "detailedplace__design__instance__area": 24550.2, @@ -62,13 +62,13 @@ "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 0, - "detailedplace__mem__peak": 186312.0, + "detailedplace__mem__peak": 186776.0, "detailedplace__power__internal__total": 0.00905872, "detailedplace__power__leakage__total": 0.000521616, "detailedplace__power__switching__total": 0.00500719, "detailedplace__power__total": 0.0145875, "detailedplace__route__wirelength__estimated": 189965, - "detailedplace__runtime__total": "0:12.00", + "detailedplace__runtime__total": "0:09.87", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, "detailedplace__timing__drv__max_cap_limit": 0.370384, @@ -85,67 +85,69 @@ "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 1, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 2962, - "detailedroute__route__drc_errors__iter:2": 939, - "detailedroute__route__drc_errors__iter:3": 1002, - "detailedroute__route__drc_errors__iter:4": 196, - "detailedroute__route__drc_errors__iter:5": 23, - "detailedroute__route__drc_errors__iter:6": 0, - "detailedroute__route__net": 14696, + "detailedroute__route__drc_errors__iter:1": 2997, + "detailedroute__route__drc_errors__iter:2": 1084, + "detailedroute__route__drc_errors__iter:3": 907, + "detailedroute__route__drc_errors__iter:4": 103, + "detailedroute__route__drc_errors__iter:5": 6, + "detailedroute__route__drc_errors__iter:6": 3, + "detailedroute__route__drc_errors__iter:7": 0, + "detailedroute__route__net": 14695, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 91195, + "detailedroute__route__vias": 91196, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 91195, - "detailedroute__route__wirelength": 227086, - "detailedroute__route__wirelength__iter:1": 228255, - "detailedroute__route__wirelength__iter:2": 227173, - "detailedroute__route__wirelength__iter:3": 226968, - "detailedroute__route__wirelength__iter:4": 227092, - "detailedroute__route__wirelength__iter:5": 227076, - "detailedroute__route__wirelength__iter:6": 227086, - "finish__clock__skew__hold": 0.0170165, - "finish__clock__skew__setup": 0.0170165, - "finish__cpu__total": 27.05, + "detailedroute__route__vias__singlecut": 91196, + "detailedroute__route__wirelength": 227143, + "detailedroute__route__wirelength__iter:1": 228243, + "detailedroute__route__wirelength__iter:2": 227118, + "detailedroute__route__wirelength__iter:3": 226985, + "detailedroute__route__wirelength__iter:4": 227153, + "detailedroute__route__wirelength__iter:5": 227142, + "detailedroute__route__wirelength__iter:6": 227142, + "detailedroute__route__wirelength__iter:7": 227143, + "finish__clock__skew__hold": 0.0175844, + "finish__clock__skew__setup": 0.0175844, + "finish__cpu__total": 22.31, "finish__design__core__area": 55457.8, "finish__design__die__area": 60557.8, - "finish__design__instance__area": 25725.4, + "finish__design__instance__area": 25723.5, "finish__design__instance__area__macros": 0, - "finish__design__instance__area__stdcell": 25725.4, - "finish__design__instance__count": 12612, + "finish__design__instance__area__stdcell": 25723.5, + "finish__design__instance__count": 12611, "finish__design__instance__count__macros": 0, - "finish__design__instance__count__stdcell": 12612, - "finish__design__instance__utilization": 0.463873, - "finish__design__instance__utilization__stdcell": 0.463873, + "finish__design__instance__count__stdcell": 12611, + "finish__design__instance__utilization": 0.46384, + "finish__design__instance__utilization__stdcell": 0.46384, "finish__design__io": 693, - "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.05098, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.031491, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0924025, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0625573, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.0076, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0625573, + "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.05099, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.0314814, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0923725, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0625363, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.00763, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0625363, "finish__flow__errors__count": 0, - "finish__flow__warnings__count": 1, - "finish__mem__peak": 460012.0, - "finish__power__internal__total": 0.0100518, - "finish__power__leakage__total": 0.000559306, - "finish__power__switching__total": 0.00639283, - "finish__power__total": 0.017004, - "finish__runtime__total": "0:27.41", + "finish__flow__warnings__count": 0, + "finish__mem__peak": 540608.0, + "finish__power__internal__total": 0.0100494, + "finish__power__leakage__total": 0.00055922, + "finish__power__switching__total": 0.00639342, + "finish__power__total": 0.017002, + "finish__runtime__total": "0:22.62", "finish__timing__drv__hold_violation_count": 0, "finish__timing__drv__max_cap": 0, - "finish__timing__drv__max_cap_limit": 0.362453, + "finish__timing__drv__max_cap_limit": 0.387852, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, "finish__timing__drv__max_slew": 0, - "finish__timing__drv__max_slew_limit": 0.487019, - "finish__timing__drv__setup_violation_count": 14, - "finish__timing__setup__tns": -0.755258, - "finish__timing__setup__ws": -0.269157, - "finish__timing__wns_percent_delay": -23.02429, - "finish_merge__cpu__total": 2.47, - "finish_merge__mem__peak": 480932.0, - "finish_merge__runtime__total": "0:02.74", - "floorplan__cpu__total": 12.96, + "finish__timing__drv__max_slew_limit": 0.487153, + "finish__timing__drv__setup_violation_count": 11, + "finish__timing__setup__tns": -0.763018, + "finish__timing__setup__ws": -0.272717, + "finish__timing__wns_percent_delay": -23.254029, + "finish_merge__cpu__total": 2.03, + "finish_merge__mem__peak": 481952.0, + "finish_merge__runtime__total": "0:02.28", + "floorplan__cpu__total": 10.76, "floorplan__design__core__area": 55457.8, "floorplan__design__die__area": 60557.8, "floorplan__design__instance__area": 22340.8, @@ -161,32 +163,32 @@ "floorplan__design__io": 693, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 34, - "floorplan__mem__peak": 167680.0, + "floorplan__mem__peak": 168176.0, "floorplan__power__internal__total": 0.00782668, "floorplan__power__leakage__total": 0.000438603, "floorplan__power__switching__total": 0.00267389, "floorplan__power__total": 0.0109392, - "floorplan__runtime__total": "0:13.05", + "floorplan__runtime__total": "0:10.85", "floorplan__timing__setup__tns": 0, "floorplan__timing__setup__ws": 0.0026818, - "floorplan_io__cpu__total": 0.44, - "floorplan_io__mem__peak": 137152.0, - "floorplan_io__runtime__total": "0:00.50", - "floorplan_macro__cpu__total": 0.43, - "floorplan_macro__mem__peak": 135852.0, - "floorplan_macro__runtime__total": "0:00.50", - "floorplan_pdn__cpu__total": 0.52, - "floorplan_pdn__mem__peak": 140828.0, - "floorplan_pdn__runtime__total": "0:00.60", - "floorplan_tap__cpu__total": 0.44, - "floorplan_tap__mem__peak": 130300.0, - "floorplan_tap__runtime__total": "0:00.50", - "floorplan_tdms__cpu__total": 0.45, + "floorplan_io__cpu__total": 0.34, + "floorplan_io__mem__peak": 138028.0, + "floorplan_io__runtime__total": "0:00.41", + "floorplan_macro__cpu__total": 0.35, + "floorplan_macro__mem__peak": 137344.0, + "floorplan_macro__runtime__total": "0:00.41", + "floorplan_pdn__cpu__total": 0.4, + "floorplan_pdn__mem__peak": 141444.0, + "floorplan_pdn__runtime__total": "0:00.49", + "floorplan_tap__cpu__total": 0.35, + "floorplan_tap__mem__peak": 130684.0, + "floorplan_tap__runtime__total": "0:00.41", + "floorplan_tdms__cpu__total": 0.33, "floorplan_tdms__mem__peak": 136952.0, - "floorplan_tdms__runtime__total": "0:00.50", + "floorplan_tdms__runtime__total": "0:00.41", "flow__errors__count": 0, "flow__warnings__count": 0, - "globalplace__cpu__total": 201.41, + "globalplace__cpu__total": 878.05, "globalplace__design__core__area": 55457.8, "globalplace__design__die__area": 60557.8, "globalplace__design__instance__area": 22452.8, @@ -200,52 +202,52 @@ "globalplace__design__io": 693, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 0, - "globalplace__mem__peak": 501380.0, + "globalplace__mem__peak": 502188.0, "globalplace__power__internal__total": 0.00788485, "globalplace__power__leakage__total": 0.000438603, "globalplace__power__switching__total": 0.00425155, "globalplace__power__total": 0.012575, - "globalplace__runtime__total": "0:37.68", + "globalplace__runtime__total": "1:30.88", "globalplace__timing__setup__tns": -0.170985, "globalplace__timing__setup__ws": -0.14774, - "globalplace_io__cpu__total": 0.63, - "globalplace_io__mem__peak": 140280.0, - "globalplace_io__runtime__total": "0:00.70", - "globalplace_skip_io__cpu__total": 123.89, - "globalplace_skip_io__mem__peak": 155852.0, - "globalplace_skip_io__runtime__total": "0:04.45", + "globalplace_io__cpu__total": 0.45, + "globalplace_io__mem__peak": 140684.0, + "globalplace_io__runtime__total": "0:00.54", + "globalplace_skip_io__cpu__total": 499.74, + "globalplace_skip_io__mem__peak": 156976.0, + "globalplace_skip_io__runtime__total": "0:34.29", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, "globalroute__antenna_diodes_count": 0, - "globalroute__clock__skew__hold": 0.0156363, - "globalroute__clock__skew__setup": 0.0156363, - "globalroute__cpu__total": 56.99, + "globalroute__clock__skew__hold": 0.015812, + "globalroute__clock__skew__setup": 0.015812, + "globalroute__cpu__total": 36.75, "globalroute__design__core__area": 55457.8, "globalroute__design__die__area": 60557.8, - "globalroute__design__instance__area": 25725.4, + "globalroute__design__instance__area": 25723.5, "globalroute__design__instance__area__macros": 0, - "globalroute__design__instance__area__stdcell": 25725.4, - "globalroute__design__instance__count": 12612, + "globalroute__design__instance__area__stdcell": 25723.5, + "globalroute__design__instance__count": 12611, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 0, - "globalroute__design__instance__count__setup_buffer": 13, - "globalroute__design__instance__count__stdcell": 12612, + "globalroute__design__instance__count__setup_buffer": 12, + "globalroute__design__instance__count__stdcell": 12611, "globalroute__design__instance__displacement__max": 5.6, "globalroute__design__instance__displacement__mean": 0.013, - "globalroute__design__instance__displacement__total": 168.97, - "globalroute__design__instance__utilization": 0.463873, - "globalroute__design__instance__utilization__stdcell": 0.463873, + "globalroute__design__instance__displacement__total": 168.02, + "globalroute__design__instance__utilization": 0.46384, + "globalroute__design__instance__utilization__stdcell": 0.46384, "globalroute__design__io": 693, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 2, - "globalroute__mem__peak": 543672.0, - "globalroute__power__internal__total": 0.0100514, - "globalroute__power__leakage__total": 0.000559306, - "globalroute__power__switching__total": 0.00631131, - "globalroute__power__total": 0.016922, - "globalroute__route__wirelength__estimated": 194247, - "globalroute__runtime__total": "0:34.74", + "globalroute__mem__peak": 546120.0, + "globalroute__power__internal__total": 0.0100489, + "globalroute__power__leakage__total": 0.00055922, + "globalroute__power__switching__total": 0.00630993, + "globalroute__power__total": 0.016918, + "globalroute__route__wirelength__estimated": 194242, + "globalroute__runtime__total": "0:24.81", "globalroute__timing__clock__slack": -0.256, "globalroute__timing__drv__hold_violation_count": 0, "globalroute__timing__drv__max_cap": 0, @@ -255,9 +257,9 @@ "globalroute__timing__drv__max_slew": 0, "globalroute__timing__drv__max_slew_limit": 0.48686, "globalroute__timing__drv__setup_violation_count": 6, - "globalroute__timing__setup__tns": -0.640376, + "globalroute__timing__setup__tns": -0.640226, "globalroute__timing__setup__ws": -0.25617, - "placeopt__cpu__total": 12.04, + "placeopt__cpu__total": 9.6, "placeopt__design__core__area": 55457.8, "placeopt__design__die__area": 60557.8, "placeopt__design__instance__area": 24550.2, @@ -271,12 +273,12 @@ "placeopt__design__io": 693, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 0, - "placeopt__mem__peak": 364920.0, + "placeopt__mem__peak": 366332.0, "placeopt__power__internal__total": 0.00905443, "placeopt__power__leakage__total": 0.000521616, "placeopt__power__switching__total": 0.00494781, "placeopt__power__total": 0.0145239, - "placeopt__runtime__total": "0:12.28", + "placeopt__runtime__total": "0:09.85", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, @@ -290,10 +292,10 @@ "placeopt__timing__setup__tns": -0.173798, "placeopt__timing__setup__ws": -0.14315, "run__flow__design": "dynamic_node", - "run__flow__generate_date": "2024-09-19 14:17", + "run__flow__generate_date": "2024-09-26 21:20", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15759-g9136ba699", + "run__flow__openroad_version": "v2.0-15807-g036379d64", "run__flow__platform": "nangate45", "run__flow__platform__capacitance_units": "1fF", "run__flow__platform__current_units": "1mA", @@ -302,14 +304,14 @@ "run__flow__platform__resistance_units": "1kohm", "run__flow__platform__time_units": "1ns", "run__flow__platform__voltage_units": "1v", - "run__flow__platform_commit": "N/A", - "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "7c8cd0e3-e6d6-44f7-bfe3-a189473f2607", - "run__flow__variant": "base", - "synth__cpu__total": 16.84, + "run__flow__platform_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__scripts_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__uuid": "59b366ac-a382-44b1-a9ab-64b439656c1c", + "run__flow__variant": "odb_0925", + "synth__cpu__total": 13.16, "synth__design__instance__area__stdcell": 22294.258, "synth__design__instance__count__stdcell": 10792.0, - "synth__mem__peak": 82288.0, - "synth__runtime__total": "0:17.03", - "total_time": "0:03:42.470000" + "synth__mem__peak": 82056.0, + "synth__runtime__total": "0:13.33", + "total_time": "0:04:27.480000" } \ No newline at end of file diff --git a/flow/designs/nangate45/dynamic_node/rules-base.json b/flow/designs/nangate45/dynamic_node/rules-base.json index eac864d9f7..6fce3410ce 100644 --- a/flow/designs/nangate45/dynamic_node/rules-base.json +++ b/flow/designs/nangate45/dynamic_node/rules-base.json @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 27250, + "value": 28233, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 12696, + "value": 13609, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,11 +20,11 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 1104, + "value": 1183, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 1104, + "value": 1183, "compare": "<=" }, "globalroute__antenna_diodes_count": { @@ -32,7 +32,7 @@ "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 261149, + "value": 261214, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -48,15 +48,15 @@ "compare": "<=" }, "finish__timing__setup__ws": { - "value": -0.56, + "value": -0.57, "compare": ">=" }, "finish__design__instance__area": { - "value": 27535, + "value": 29582, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 552, + "value": 592, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { @@ -64,7 +64,7 @@ "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -37.61, + "value": -37.9, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/nangate45/gcd/metadata-base-ok.json b/flow/designs/nangate45/gcd/metadata-base-ok.json index 222959bb5a..72ec456c29 100644 --- a/flow/designs/nangate45/gcd/metadata-base-ok.json +++ b/flow/designs/nangate45/gcd/metadata-base-ok.json @@ -3,145 +3,145 @@ "constraints__clocks__details": [ "core_clock: 0.4600" ], - "cts__clock__skew__hold": 0.000912666, - "cts__clock__skew__setup": 0.000912666, - "cts__cpu__total": 6.61, + "cts__clock__skew__hold": 0.000795468, + "cts__clock__skew__setup": 0.000795468, + "cts__cpu__total": 7.57, "cts__design__core__area": 1149.12, "cts__design__die__area": 1323.5, - "cts__design__instance__area": 777.518, + "cts__design__instance__area": 813.428, "cts__design__instance__area__macros": 0, - "cts__design__instance__area__stdcell": 777.518, - "cts__design__instance__count": 655, + "cts__design__instance__area__stdcell": 813.428, + "cts__design__instance__count": 656, "cts__design__instance__count__hold_buffer": 0, "cts__design__instance__count__macros": 0, "cts__design__instance__count__setup_buffer": 44, - "cts__design__instance__count__stdcell": 655, - "cts__design__instance__displacement__max": 8.41, - "cts__design__instance__displacement__mean": 0.5505, - "cts__design__instance__displacement__total": 360.728, - "cts__design__instance__utilization": 0.67662, - "cts__design__instance__utilization__stdcell": 0.67662, + "cts__design__instance__count__stdcell": 656, + "cts__design__instance__displacement__max": 7.79, + "cts__design__instance__displacement__mean": 0.7465, + "cts__design__instance__displacement__total": 489.945, + "cts__design__instance__utilization": 0.70787, + "cts__design__instance__utilization__stdcell": 0.70787, "cts__design__io": 54, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 1, - "cts__mem__peak": 424820.0, - "cts__power__internal__total": 0.00154757, - "cts__power__leakage__total": 1.95923e-05, - "cts__power__switching__total": 0.00120449, - "cts__power__total": 0.00277165, - "cts__route__wirelength__estimated": 3463.02, - "cts__runtime__total": "0:06.84", + "cts__mem__peak": 353208.0, + "cts__power__internal__total": 0.00163151, + "cts__power__leakage__total": 2.11153e-05, + "cts__power__switching__total": 0.00129643, + "cts__power__total": 0.00294906, + "cts__route__wirelength__estimated": 3690.55, + "cts__runtime__total": "0:07.84", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, - "cts__timing__drv__max_cap_limit": 0.596498, + "cts__timing__drv__max_cap_limit": 0.798485, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.671438, - "cts__timing__drv__setup_violation_count": 12, - "cts__timing__setup__tns": -0.363898, - "cts__timing__setup__ws": -0.0499197, + "cts__timing__drv__max_slew_limit": 0.768407, + "cts__timing__drv__setup_violation_count": 26, + "cts__timing__setup__tns": -0.429612, + "cts__timing__setup__ws": -0.0484967, "design__io__hpwl": 1078643, "design__violations": 0, - "detailedplace__cpu__total": 0.57, + "detailedplace__cpu__total": 0.66, "detailedplace__design__core__area": 1149.12, "detailedplace__design__die__area": 1323.5, - "detailedplace__design__instance__area": 649.572, + "detailedplace__design__instance__area": 659.148, "detailedplace__design__instance__area__macros": 0, - "detailedplace__design__instance__area__stdcell": 649.572, + "detailedplace__design__instance__area__stdcell": 659.148, "detailedplace__design__instance__count": 604, "detailedplace__design__instance__count__macros": 0, "detailedplace__design__instance__count__stdcell": 604, - "detailedplace__design__instance__displacement__max": 3.6695, - "detailedplace__design__instance__displacement__mean": 0.9055, - "detailedplace__design__instance__displacement__total": 546.966, - "detailedplace__design__instance__utilization": 0.565278, - "detailedplace__design__instance__utilization__stdcell": 0.565278, + "detailedplace__design__instance__displacement__max": 4.0735, + "detailedplace__design__instance__displacement__mean": 0.9115, + "detailedplace__design__instance__displacement__total": 550.819, + "detailedplace__design__instance__utilization": 0.573611, + "detailedplace__design__instance__utilization__stdcell": 0.573611, "detailedplace__design__io": 54, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 0, - "detailedplace__mem__peak": 132628.0, - "detailedplace__power__internal__total": 0.00113872, - "detailedplace__power__leakage__total": 1.48749e-05, - "detailedplace__power__switching__total": 0.000805779, - "detailedplace__power__total": 0.00195937, - "detailedplace__route__wirelength__estimated": 3162.95, - "detailedplace__runtime__total": "0:00.61", + "detailedplace__mem__peak": 123648.0, + "detailedplace__power__internal__total": 0.00115649, + "detailedplace__power__leakage__total": 1.52789e-05, + "detailedplace__power__switching__total": 0.000825776, + "detailedplace__power__total": 0.00199754, + "detailedplace__route__wirelength__estimated": 3177.48, + "detailedplace__runtime__total": "0:00.75", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, - "detailedplace__timing__drv__max_cap_limit": 0.595959, + "detailedplace__timing__drv__max_cap_limit": 0.79772, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.671176, - "detailedplace__timing__drv__setup_violation_count": 27, - "detailedplace__timing__setup__tns": -0.338954, - "detailedplace__timing__setup__ws": -0.0185889, + "detailedplace__timing__drv__max_slew_limit": 0.76804, + "detailedplace__timing__drv__setup_violation_count": 28, + "detailedplace__timing__setup__tns": -0.368776, + "detailedplace__timing__setup__ws": -0.0206941, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, "detailedroute__antenna_diodes_count": 0, "detailedroute__flow__errors__count": 0, - "detailedroute__flow__warnings__count": 2, + "detailedroute__flow__warnings__count": 1, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 73, - "detailedroute__route__drc_errors__iter:2": 17, - "detailedroute__route__drc_errors__iter:3": 12, + "detailedroute__route__drc_errors__iter:1": 96, + "detailedroute__route__drc_errors__iter:2": 24, + "detailedroute__route__drc_errors__iter:3": 30, "detailedroute__route__drc_errors__iter:4": 0, - "detailedroute__route__net": 684, + "detailedroute__route__net": 688, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 3654, + "detailedroute__route__vias": 3762, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 3654, - "detailedroute__route__wirelength": 4370, - "detailedroute__route__wirelength__iter:1": 4424, - "detailedroute__route__wirelength__iter:2": 4397, - "detailedroute__route__wirelength__iter:3": 4375, - "detailedroute__route__wirelength__iter:4": 4370, - "finish__clock__skew__hold": 0.00188155, - "finish__clock__skew__setup": 0.00188155, - "finish__cpu__total": 1.56, + "detailedroute__route__vias__singlecut": 3762, + "detailedroute__route__wirelength": 4800, + "detailedroute__route__wirelength__iter:1": 4851, + "detailedroute__route__wirelength__iter:2": 4806, + "detailedroute__route__wirelength__iter:3": 4798, + "detailedroute__route__wirelength__iter:4": 4800, + "finish__clock__skew__hold": 0.00178986, + "finish__clock__skew__setup": 0.00178986, + "finish__cpu__total": 1.96, "finish__design__core__area": 1149.12, "finish__design__die__area": 1323.5, - "finish__design__instance__area": 841.89, + "finish__design__instance__area": 868.224, "finish__design__instance__area__macros": 0, - "finish__design__instance__area__stdcell": 841.89, - "finish__design__instance__count": 663, + "finish__design__instance__area__stdcell": 868.224, + "finish__design__instance__count": 668, "finish__design__instance__count__macros": 0, - "finish__design__instance__count__stdcell": 663, - "finish__design__instance__utilization": 0.732639, - "finish__design__instance__utilization__stdcell": 0.732639, + "finish__design__instance__count__stdcell": 668, + "finish__design__instance__utilization": 0.755556, + "finish__design__instance__utilization__stdcell": 0.755556, "finish__design__io": 54, "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.09611, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.00487784, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0108024, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0109304, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.0892, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0109304, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.0041941, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0140424, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.00990993, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.08596, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.00990993, "finish__flow__errors__count": 0, - "finish__flow__warnings__count": 0, - "finish__mem__peak": 215808.0, - "finish__power__internal__total": 0.00170323, - "finish__power__leakage__total": 2.21372e-05, - "finish__power__switching__total": 0.00142773, - "finish__power__total": 0.0031531, - "finish__runtime__total": "0:01.71", + "finish__flow__warnings__count": 1, + "finish__mem__peak": 209768.0, + "finish__power__internal__total": 0.00175811, + "finish__power__leakage__total": 2.33764e-05, + "finish__power__switching__total": 0.00148702, + "finish__power__total": 0.00326851, + "finish__runtime__total": "0:02.08", "finish__timing__drv__hold_violation_count": 0, "finish__timing__drv__max_cap": 0, - "finish__timing__drv__max_cap_limit": 0.572683, + "finish__timing__drv__max_cap_limit": 0.801032, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, "finish__timing__drv__max_slew": 0, - "finish__timing__drv__max_slew_limit": 0.660012, - "finish__timing__drv__setup_violation_count": 11, - "finish__timing__setup__tns": -0.399933, - "finish__timing__setup__ws": -0.0542608, - "finish__timing__wns_percent_delay": -12.858158, - "finish_merge__cpu__total": 1.45, - "finish_merge__mem__peak": 392520.0, - "finish_merge__runtime__total": "0:01.56", - "floorplan__cpu__total": 0.31, + "finish__timing__drv__max_slew_limit": 0.76966, + "finish__timing__drv__setup_violation_count": 44, + "finish__timing__setup__tns": -1.07501, + "finish__timing__setup__ws": -0.0551569, + "finish__timing__wns_percent_delay": -13.043478, + "finish_merge__cpu__total": 1.56, + "finish_merge__mem__peak": 392772.0, + "finish_merge__runtime__total": "0:01.77", + "floorplan__cpu__total": 0.47, "floorplan__design__core__area": 1149.12, "floorplan__design__die__area": 1323.5, "floorplan__design__instance__area": 650.104, @@ -157,32 +157,32 @@ "floorplan__design__io": 54, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 2, - "floorplan__mem__peak": 132636.0, + "floorplan__mem__peak": 123384.0, "floorplan__power__internal__total": 0.00117917, "floorplan__power__leakage__total": 1.58666e-05, "floorplan__power__switching__total": 0.000827966, "floorplan__power__total": 0.002023, - "floorplan__runtime__total": "0:00.41", + "floorplan__runtime__total": "0:00.51", "floorplan__timing__setup__tns": 0, "floorplan__timing__setup__ws": 0.03906, - "floorplan_io__cpu__total": 0.26, - "floorplan_io__mem__peak": 129068.0, - "floorplan_io__runtime__total": "0:00.32", - "floorplan_macro__cpu__total": 0.29, - "floorplan_macro__mem__peak": 128660.0, - "floorplan_macro__runtime__total": "0:00.32", - "floorplan_pdn__cpu__total": 0.28, - "floorplan_pdn__mem__peak": 131352.0, - "floorplan_pdn__runtime__total": "0:00.33", - "floorplan_tap__cpu__total": 0.27, - "floorplan_tap__mem__peak": 128276.0, - "floorplan_tap__runtime__total": "0:00.32", - "floorplan_tdms__cpu__total": 0.3, - "floorplan_tdms__mem__peak": 129340.0, - "floorplan_tdms__runtime__total": "0:00.32", + "floorplan_io__cpu__total": 0.35, + "floorplan_io__mem__peak": 119036.0, + "floorplan_io__runtime__total": "0:00.39", + "floorplan_macro__cpu__total": 0.33, + "floorplan_macro__mem__peak": 119028.0, + "floorplan_macro__runtime__total": "0:00.39", + "floorplan_pdn__cpu__total": 0.36, + "floorplan_pdn__mem__peak": 122112.0, + "floorplan_pdn__runtime__total": "0:00.40", + "floorplan_tap__cpu__total": 0.32, + "floorplan_tap__mem__peak": 118864.0, + "floorplan_tap__runtime__total": "0:00.39", + "floorplan_tdms__cpu__total": 0.32, + "floorplan_tdms__mem__peak": 119032.0, + "floorplan_tdms__runtime__total": "0:00.39", "flow__errors__count": 0, "flow__warnings__count": 0, - "globalplace__cpu__total": 6.66, + "globalplace__cpu__total": 11.82, "globalplace__design__core__area": 1149.12, "globalplace__design__die__area": 1323.5, "globalplace__design__instance__area": 662.872, @@ -196,100 +196,100 @@ "globalplace__design__io": 54, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 0, - "globalplace__mem__peak": 418972.0, - "globalplace__power__internal__total": 0.00118157, + "globalplace__mem__peak": 335728.0, + "globalplace__power__internal__total": 0.00118158, "globalplace__power__leakage__total": 1.58666e-05, - "globalplace__power__switching__total": 0.000928762, - "globalplace__power__total": 0.0021262, - "globalplace__runtime__total": "0:01.50", + "globalplace__power__switching__total": 0.000928903, + "globalplace__power__total": 0.00212635, + "globalplace__runtime__total": "0:02.13", "globalplace__timing__setup__tns": 0, - "globalplace__timing__setup__ws": 0.0276225, - "globalplace_io__cpu__total": 0.29, - "globalplace_io__mem__peak": 129744.0, - "globalplace_io__runtime__total": "0:00.32", - "globalplace_skip_io__cpu__total": 4.75, - "globalplace_skip_io__mem__peak": 130504.0, - "globalplace_skip_io__runtime__total": "0:00.46", + "globalplace__timing__setup__ws": 0.0264975, + "globalplace_io__cpu__total": 0.36, + "globalplace_io__mem__peak": 119616.0, + "globalplace_io__runtime__total": "0:00.40", + "globalplace_skip_io__cpu__total": 5.98, + "globalplace_skip_io__mem__peak": 120540.0, + "globalplace_skip_io__runtime__total": "0:00.57", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, "globalroute__antenna_diodes_count": 0, - "globalroute__clock__skew__hold": 0.0011615, - "globalroute__clock__skew__setup": 0.0011615, - "globalroute__cpu__total": 4.44, + "globalroute__clock__skew__hold": 0.0016853, + "globalroute__clock__skew__setup": 0.0016853, + "globalroute__cpu__total": 8.13, "globalroute__design__core__area": 1149.12, "globalroute__design__die__area": 1323.5, - "globalroute__design__instance__area": 841.89, + "globalroute__design__instance__area": 868.224, "globalroute__design__instance__area__macros": 0, - "globalroute__design__instance__area__stdcell": 841.89, - "globalroute__design__instance__count": 663, + "globalroute__design__instance__area__stdcell": 868.224, + "globalroute__design__instance__count": 668, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 0, - "globalroute__design__instance__count__setup_buffer": 14, - "globalroute__design__instance__count__stdcell": 663, - "globalroute__design__instance__displacement__max": 10.68, - "globalroute__design__instance__displacement__mean": 0.5575, - "globalroute__design__instance__displacement__total": 369.75, - "globalroute__design__instance__utilization": 0.732639, - "globalroute__design__instance__utilization__stdcell": 0.732639, + "globalroute__design__instance__count__setup_buffer": 9, + "globalroute__design__instance__count__stdcell": 668, + "globalroute__design__instance__displacement__max": 9.8, + "globalroute__design__instance__displacement__mean": 0.712, + "globalroute__design__instance__displacement__total": 475.74, + "globalroute__design__instance__utilization": 0.755556, + "globalroute__design__instance__utilization__stdcell": 0.755556, "globalroute__design__io": 54, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 2, - "globalroute__mem__peak": 427988.0, - "globalroute__power__internal__total": 0.00170432, - "globalroute__power__leakage__total": 2.21372e-05, - "globalroute__power__switching__total": 0.00144726, - "globalroute__power__total": 0.00317372, - "globalroute__route__wirelength__estimated": 3894.66, - "globalroute__runtime__total": "0:03.97", - "globalroute__timing__clock__slack": -0.057, + "globalroute__mem__peak": 356860.0, + "globalroute__power__internal__total": 0.00175908, + "globalroute__power__leakage__total": 2.33764e-05, + "globalroute__power__switching__total": 0.0015095, + "globalroute__power__total": 0.00329195, + "globalroute__route__wirelength__estimated": 4352.21, + "globalroute__runtime__total": "0:06.98", + "globalroute__timing__clock__slack": -0.055, "globalroute__timing__drv__hold_violation_count": 0, "globalroute__timing__drv__max_cap": 0, - "globalroute__timing__drv__max_cap_limit": 0.596003, + "globalroute__timing__drv__max_cap_limit": 0.783493, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, "globalroute__timing__drv__max_slew": 0, - "globalroute__timing__drv__max_slew_limit": 0.671242, - "globalroute__timing__drv__setup_violation_count": 20, - "globalroute__timing__setup__tns": -0.41475, - "globalroute__timing__setup__ws": -0.0570498, - "placeopt__cpu__total": 0.59, + "globalroute__timing__drv__max_slew_limit": 0.761205, + "globalroute__timing__drv__setup_violation_count": 44, + "globalroute__timing__setup__tns": -1.09331, + "globalroute__timing__setup__ws": -0.0553322, + "placeopt__cpu__total": 0.7, "placeopt__design__core__area": 1149.12, "placeopt__design__die__area": 1323.5, - "placeopt__design__instance__area": 649.572, + "placeopt__design__instance__area": 659.148, "placeopt__design__instance__area__macros": 0, - "placeopt__design__instance__area__stdcell": 649.572, + "placeopt__design__instance__area__stdcell": 659.148, "placeopt__design__instance__count": 604, "placeopt__design__instance__count__macros": 0, "placeopt__design__instance__count__stdcell": 604, - "placeopt__design__instance__utilization": 0.565278, - "placeopt__design__instance__utilization__stdcell": 0.565278, + "placeopt__design__instance__utilization": 0.573611, + "placeopt__design__instance__utilization__stdcell": 0.573611, "placeopt__design__io": 54, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 0, - "placeopt__mem__peak": 337672.0, - "placeopt__power__internal__total": 0.00113852, - "placeopt__power__leakage__total": 1.48749e-05, - "placeopt__power__switching__total": 0.000800392, - "placeopt__power__total": 0.00195379, - "placeopt__runtime__total": "0:00.76", + "placeopt__mem__peak": 266456.0, + "placeopt__power__internal__total": 0.00115624, + "placeopt__power__leakage__total": 1.52789e-05, + "placeopt__power__switching__total": 0.000821054, + "placeopt__power__total": 0.00199257, + "placeopt__runtime__total": "0:00.92", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.611355, + "placeopt__timing__drv__max_cap_limit": 0.805204, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.678597, - "placeopt__timing__drv__setup_violation_count": 27, - "placeopt__timing__setup__tns": -0.262848, - "placeopt__timing__setup__ws": -0.0181242, + "placeopt__timing__drv__max_slew_limit": 0.77166, + "placeopt__timing__drv__setup_violation_count": 28, + "placeopt__timing__setup__tns": -0.299658, + "placeopt__timing__setup__ws": -0.017345, "run__flow__design": "gcd", - "run__flow__generate_date": "2024-09-19 21:11", + "run__flow__generate_date": "2024-09-28 19:38", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15655-gdc5f404d7", + "run__flow__openroad_version": "v2.0-16113-g7b5c8faf7", "run__flow__platform": "nangate45", "run__flow__platform__capacitance_units": "1fF", "run__flow__platform__current_units": "1mA", @@ -298,14 +298,14 @@ "run__flow__platform__resistance_units": "1kohm", "run__flow__platform__time_units": "1ns", "run__flow__platform__voltage_units": "1v", - "run__flow__platform_commit": "dcb6ca0773163b3ff4f04a9a88c8df5f2a1860f4", - "run__flow__scripts_commit": "dcb6ca0773163b3ff4f04a9a88c8df5f2a1860f4", - "run__flow__uuid": "dc1df5aa-c51e-435e-970c-771cd317f575", + "run__flow__platform_commit": "N/A", + "run__flow__scripts_commit": "not a git repo", + "run__flow__uuid": "f1187e72-b9f6-4dcb-8017-1336cb6d64d4", "run__flow__variant": "base", - "synth__cpu__total": 0.77, + "synth__cpu__total": 0.96, "synth__design__instance__area__stdcell": 650.104, "synth__design__instance__count__stdcell": 503.0, - "synth__mem__peak": 45312.0, - "synth__runtime__total": "0:00.83", - "total_time": "0:00:20.580000" + "synth__mem__peak": 36864.0, + "synth__runtime__total": "0:01.02", + "total_time": "0:00:26.930000" } \ No newline at end of file diff --git a/flow/designs/nangate45/gcd/rules-base.json b/flow/designs/nangate45/gcd/rules-base.json index 89b3a50883..f38ddf5d93 100644 --- a/flow/designs/nangate45/gcd/rules-base.json +++ b/flow/designs/nangate45/gcd/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 739.06, + "value": 747.62, "compare": "<=" }, "constraints__clocks__count": { @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 720, + "value": 747, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 684, + "value": 695, "compare": "<=" }, "detailedplace__design__violations": { @@ -24,7 +24,7 @@ "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 42, + "value": 60, "compare": "<=" }, "globalroute__antenna_diodes_count": { @@ -32,7 +32,7 @@ "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 5026, + "value": 5520, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -48,15 +48,15 @@ "compare": "<=" }, "finish__timing__setup__ws": { - "value": -0.06, + "value": -0.07, "compare": ">=" }, "finish__design__instance__area": { - "value": 895, + "value": 907, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 30, + "value": 46, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { @@ -64,7 +64,7 @@ "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -21.33, + "value": -25.65, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/nangate45/ibex/metadata-base-ok.json b/flow/designs/nangate45/ibex/metadata-base-ok.json index a4597f120b..a0ac35c841 100644 --- a/flow/designs/nangate45/ibex/metadata-base-ok.json +++ b/flow/designs/nangate45/ibex/metadata-base-ok.json @@ -3,147 +3,147 @@ "constraints__clocks__details": [ "core_clock: 2.2000" ], - "cts__clock__skew__hold": 0.395362, - "cts__clock__skew__setup": 0.395362, - "cts__cpu__total": 498.53, + "cts__clock__skew__hold": 0.362404, + "cts__clock__skew__setup": 0.362405, + "cts__cpu__total": 498.42, "cts__design__core__area": 57494.3, "cts__design__die__area": 58726.3, - "cts__design__instance__area": 34323.6, + "cts__design__instance__area": 34434, "cts__design__instance__area__macros": 0, - "cts__design__instance__area__stdcell": 34323.6, - "cts__design__instance__count": 17552, + "cts__design__instance__area__stdcell": 34434, + "cts__design__instance__count": 17603, "cts__design__instance__count__hold_buffer": 6, "cts__design__instance__count__macros": 0, - "cts__design__instance__count__setup_buffer": 95, - "cts__design__instance__count__stdcell": 17552, - "cts__design__instance__displacement__max": 10.016, - "cts__design__instance__displacement__mean": 0.0865, - "cts__design__instance__displacement__total": 1520.56, - "cts__design__instance__utilization": 0.596991, - "cts__design__instance__utilization__stdcell": 0.596991, + "cts__design__instance__count__setup_buffer": 120, + "cts__design__instance__count__stdcell": 17603, + "cts__design__instance__displacement__max": 13.6175, + "cts__design__instance__displacement__mean": 0.1175, + "cts__design__instance__displacement__total": 2071.45, + "cts__design__instance__utilization": 0.598911, + "cts__design__instance__utilization__stdcell": 0.598911, "cts__design__io": 264, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 1, - "cts__mem__peak": 492284.0, - "cts__power__internal__total": 0.0516177, - "cts__power__leakage__total": 0.000765611, - "cts__power__switching__total": 0.0425758, - "cts__power__total": 0.0949592, - "cts__route__wirelength__estimated": 260676, - "cts__runtime__total": "8:18.99", + "cts__mem__peak": 493752.0, + "cts__power__internal__total": 0.0521806, + "cts__power__leakage__total": 0.000770296, + "cts__power__switching__total": 0.0429792, + "cts__power__total": 0.0959301, + "cts__route__wirelength__estimated": 262283, + "cts__runtime__total": "8:18.86", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, - "cts__timing__drv__max_cap_limit": 0.0160954, + "cts__timing__drv__max_cap_limit": 0.0776869, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.378993, - "cts__timing__drv__setup_violation_count": 765, - "cts__timing__setup__tns": -108.887, - "cts__timing__setup__ws": -0.29877, + "cts__timing__drv__max_slew_limit": 0.380037, + "cts__timing__drv__setup_violation_count": 764, + "cts__timing__setup__tns": -114.61, + "cts__timing__setup__ws": -0.318472, "design__io__hpwl": 27832027, "design__violations": 0, - "detailedplace__cpu__total": 21.52, + "detailedplace__cpu__total": 22.16, "detailedplace__design__core__area": 57494.3, "detailedplace__design__die__area": 58726.3, - "detailedplace__design__instance__area": 32455.2, + "detailedplace__design__instance__area": 32445.9, "detailedplace__design__instance__area__macros": 0, - "detailedplace__design__instance__area__stdcell": 32455.2, + "detailedplace__design__instance__area__stdcell": 32445.9, "detailedplace__design__instance__count": 16394, "detailedplace__design__instance__count__macros": 0, "detailedplace__design__instance__count__stdcell": 16394, - "detailedplace__design__instance__displacement__max": 13.65, - "detailedplace__design__instance__displacement__mean": 1.0325, - "detailedplace__design__instance__displacement__total": 16927.8, - "detailedplace__design__instance__utilization": 0.564494, - "detailedplace__design__instance__utilization__stdcell": 0.564494, + "detailedplace__design__instance__displacement__max": 9.56, + "detailedplace__design__instance__displacement__mean": 1.0275, + "detailedplace__design__instance__displacement__total": 16848.9, + "detailedplace__design__instance__utilization": 0.564332, + "detailedplace__design__instance__utilization__stdcell": 0.564332, "detailedplace__design__io": 264, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 0, - "detailedplace__mem__peak": 211232.0, - "detailedplace__power__internal__total": 0.0454797, - "detailedplace__power__leakage__total": 0.000709336, - "detailedplace__power__switching__total": 0.0391293, - "detailedplace__power__total": 0.0853183, - "detailedplace__route__wirelength__estimated": 252003, - "detailedplace__runtime__total": "0:21.66", + "detailedplace__mem__peak": 211544.0, + "detailedplace__power__internal__total": 0.0454808, + "detailedplace__power__leakage__total": 0.00070901, + "detailedplace__power__switching__total": 0.0391298, + "detailedplace__power__total": 0.0853196, + "detailedplace__route__wirelength__estimated": 251964, + "detailedplace__runtime__total": "0:22.28", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, - "detailedplace__timing__drv__max_cap_limit": 0.0156296, + "detailedplace__timing__drv__max_cap_limit": 0.078101, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.377349, + "detailedplace__timing__drv__max_slew_limit": 0.380211, "detailedplace__timing__drv__setup_violation_count": 531, - "detailedplace__timing__setup__tns": -59.3968, - "detailedplace__timing__setup__ws": -0.197654, + "detailedplace__timing__setup__tns": -59.2668, + "detailedplace__timing__setup__ws": -0.198951, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, "detailedroute__antenna_diodes_count": 0, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 12, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 4421, - "detailedroute__route__drc_errors__iter:2": 1214, - "detailedroute__route__drc_errors__iter:3": 951, - "detailedroute__route__drc_errors__iter:4": 64, + "detailedroute__route__drc_errors__iter:1": 4431, + "detailedroute__route__drc_errors__iter:2": 1211, + "detailedroute__route__drc_errors__iter:3": 959, + "detailedroute__route__drc_errors__iter:4": 89, "detailedroute__route__drc_errors__iter:5": 0, - "detailedroute__route__net": 19724, + "detailedroute__route__net": 19715, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 140617, + "detailedroute__route__vias": 139667, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 140617, - "detailedroute__route__wirelength": 321712, - "detailedroute__route__wirelength__iter:1": 323697, - "detailedroute__route__wirelength__iter:2": 321974, - "detailedroute__route__wirelength__iter:3": 321664, - "detailedroute__route__wirelength__iter:4": 321707, - "detailedroute__route__wirelength__iter:5": 321712, - "finish__clock__skew__hold": 0.407977, - "finish__clock__skew__setup": 0.407978, - "finish__cpu__total": 79.44, + "detailedroute__route__vias__singlecut": 139667, + "detailedroute__route__wirelength": 319271, + "detailedroute__route__wirelength__iter:1": 321308, + "detailedroute__route__wirelength__iter:2": 319507, + "detailedroute__route__wirelength__iter:3": 319211, + "detailedroute__route__wirelength__iter:4": 319278, + "detailedroute__route__wirelength__iter:5": 319271, + "finish__clock__skew__hold": 0.374261, + "finish__clock__skew__setup": 0.374268, + "finish__cpu__total": 87.71, "finish__design__core__area": 57494.3, "finish__design__die__area": 58726.3, - "finish__design__instance__area": 34924.7, + "finish__design__instance__area": 34559.5, "finish__design__instance__area__macros": 0, - "finish__design__instance__area__stdcell": 34924.7, - "finish__design__instance__count": 17626, + "finish__design__instance__area__stdcell": 34559.5, + "finish__design__instance__count": 17630, "finish__design__instance__count__macros": 0, - "finish__design__instance__count__stdcell": 17626, - "finish__design__instance__utilization": 0.607447, - "finish__design__instance__utilization__stdcell": 0.607447, + "finish__design__instance__count__stdcell": 17630, + "finish__design__instance__utilization": 0.601095, + "finish__design__instance__utilization__stdcell": 0.601095, "finish__design__io": 264, - "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.665812, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.281131, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.884974, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.603784, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.215026, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.603784, + "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.700633, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.258261, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.835211, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.559293, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.264789, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.559293, "finish__flow__errors__count": 0, "finish__flow__warnings__count": 1, - "finish__mem__peak": 546820.0, - "finish__power__internal__total": 0.0564698, - "finish__power__leakage__total": 0.000790939, - "finish__power__switching__total": 0.0500182, - "finish__power__total": 0.107279, - "finish__runtime__total": "1:19.91", - "finish__timing__drv__hold_violation_count": 51, - "finish__timing__drv__max_cap": 6, - "finish__timing__drv__max_cap_limit": -0.187509, + "finish__mem__peak": 544872.0, + "finish__power__internal__total": 0.0528286, + "finish__power__leakage__total": 0.000775834, + "finish__power__switching__total": 0.0473018, + "finish__power__total": 0.100906, + "finish__runtime__total": "1:28.42", + "finish__timing__drv__hold_violation_count": 54, + "finish__timing__drv__max_cap": 9, + "finish__timing__drv__max_cap_limit": -0.119975, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, "finish__timing__drv__max_slew": 0, - "finish__timing__drv__max_slew_limit": 0.277663, - "finish__timing__drv__setup_violation_count": 802, - "finish__timing__setup__tns": -139.738, - "finish__timing__setup__ws": -0.389784, - "finish__timing__wns_percent_delay": -18.131919, - "finish_merge__cpu__total": 3.07, - "finish_merge__mem__peak": 514388.0, - "finish_merge__runtime__total": "0:03.38", - "floorplan__cpu__total": 91.61, + "finish__timing__drv__max_slew_limit": 0.286845, + "finish__timing__drv__setup_violation_count": 865, + "finish__timing__setup__tns": -158.659, + "finish__timing__setup__ws": -0.372315, + "finish__timing__wns_percent_delay": -13.12857, + "finish_merge__cpu__total": 3.31, + "finish_merge__mem__peak": 514620.0, + "finish_merge__runtime__total": "0:03.64", + "floorplan__cpu__total": 92.37, "floorplan__design__core__area": 57494.3, "floorplan__design__die__area": 58726.3, "floorplan__design__instance__area": 29006.2, @@ -159,32 +159,32 @@ "floorplan__design__io": 264, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 382, - "floorplan__mem__peak": 187944.0, + "floorplan__mem__peak": 187896.0, "floorplan__power__internal__total": 0.0380469, "floorplan__power__leakage__total": 0.000585633, "floorplan__power__switching__total": 0.0227191, "floorplan__power__total": 0.0613517, - "floorplan__runtime__total": "1:31.78", + "floorplan__runtime__total": "1:32.52", "floorplan__timing__setup__tns": -0.000212053, "floorplan__timing__setup__ws": 0.000417666, - "floorplan_io__cpu__total": 0.45, - "floorplan_io__mem__peak": 143656.0, + "floorplan_io__cpu__total": 0.43, + "floorplan_io__mem__peak": 144128.0, "floorplan_io__runtime__total": "0:00.52", - "floorplan_macro__cpu__total": 0.41, - "floorplan_macro__mem__peak": 143392.0, - "floorplan_macro__runtime__total": "0:00.50", - "floorplan_pdn__cpu__total": 0.55, - "floorplan_pdn__mem__peak": 147160.0, - "floorplan_pdn__runtime__total": "0:00.63", - "floorplan_tap__cpu__total": 0.44, - "floorplan_tap__mem__peak": 134440.0, - "floorplan_tap__runtime__total": "0:00.51", - "floorplan_tdms__cpu__total": 0.48, - "floorplan_tdms__mem__peak": 143300.0, - "floorplan_tdms__runtime__total": "0:00.54", + "floorplan_macro__cpu__total": 0.47, + "floorplan_macro__mem__peak": 143352.0, + "floorplan_macro__runtime__total": "0:00.53", + "floorplan_pdn__cpu__total": 0.56, + "floorplan_pdn__mem__peak": 147968.0, + "floorplan_pdn__runtime__total": "0:00.65", + "floorplan_tap__cpu__total": 0.34, + "floorplan_tap__mem__peak": 134648.0, + "floorplan_tap__runtime__total": "0:00.48", + "floorplan_tdms__cpu__total": 0.46, + "floorplan_tdms__mem__peak": 143100.0, + "floorplan_tdms__runtime__total": "0:00.52", "flow__errors__count": 0, "flow__warnings__count": 0, - "globalplace__cpu__total": 338.36, + "globalplace__cpu__total": 347.27, "globalplace__design__core__area": 57494.3, "globalplace__design__die__area": 58726.3, "globalplace__design__instance__area": 29120.6, @@ -198,100 +198,100 @@ "globalplace__design__io": 264, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 0, - "globalplace__mem__peak": 546776.0, - "globalplace__power__internal__total": 0.0389324, + "globalplace__mem__peak": 548300.0, + "globalplace__power__internal__total": 0.0389224, "globalplace__power__leakage__total": 0.000585633, - "globalplace__power__switching__total": 0.0335433, - "globalplace__power__total": 0.0730614, - "globalplace__runtime__total": "1:12.54", - "globalplace__timing__setup__tns": -329.391, - "globalplace__timing__setup__ws": -0.495175, + "globalplace__power__switching__total": 0.0335494, + "globalplace__power__total": 0.0730574, + "globalplace__runtime__total": "1:25.56", + "globalplace__timing__setup__tns": -311.443, + "globalplace__timing__setup__ws": -0.494181, "globalplace_io__cpu__total": 0.48, - "globalplace_io__mem__peak": 145636.0, + "globalplace_io__mem__peak": 145664.0, "globalplace_io__runtime__total": "0:00.53", - "globalplace_skip_io__cpu__total": 225.31, - "globalplace_skip_io__mem__peak": 168720.0, - "globalplace_skip_io__runtime__total": "0:07.69", + "globalplace_skip_io__cpu__total": 221.29, + "globalplace_skip_io__mem__peak": 168796.0, + "globalplace_skip_io__runtime__total": "0:07.56", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, "globalroute__antenna_diodes_count": 0, - "globalroute__clock__skew__hold": 0.39794, - "globalroute__clock__skew__setup": 0.397941, - "globalroute__cpu__total": 1468.59, + "globalroute__clock__skew__hold": 0.368494, + "globalroute__clock__skew__setup": 0.368494, + "globalroute__cpu__total": 1000.68, "globalroute__design__core__area": 57494.3, "globalroute__design__die__area": 58726.3, - "globalroute__design__instance__area": 34924.7, + "globalroute__design__instance__area": 34559.5, "globalroute__design__instance__area__macros": 0, - "globalroute__design__instance__area__stdcell": 34924.7, - "globalroute__design__instance__count": 17626, - "globalroute__design__instance__count__hold_buffer": 0, + "globalroute__design__instance__area__stdcell": 34559.5, + "globalroute__design__instance__count": 17630, + "globalroute__design__instance__count__hold_buffer": 2, "globalroute__design__instance__count__macros": 0, - "globalroute__design__instance__count__setup_buffer": 57, - "globalroute__design__instance__count__stdcell": 17626, - "globalroute__design__instance__displacement__max": 11.4, - "globalroute__design__instance__displacement__mean": 0.1225, - "globalroute__design__instance__displacement__total": 2164.41, - "globalroute__design__instance__utilization": 0.607447, - "globalroute__design__instance__utilization__stdcell": 0.607447, + "globalroute__design__instance__count__setup_buffer": 12, + "globalroute__design__instance__count__stdcell": 17630, + "globalroute__design__instance__displacement__max": 5.51, + "globalroute__design__instance__displacement__mean": 0.021, + "globalroute__design__instance__displacement__total": 375.63, + "globalroute__design__instance__utilization": 0.601095, + "globalroute__design__instance__utilization__stdcell": 0.601095, "globalroute__design__io": 264, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 2, - "globalroute__mem__peak": 689316.0, - "globalroute__power__internal__total": 0.0564179, - "globalroute__power__leakage__total": 0.000790939, - "globalroute__power__switching__total": 0.0485296, - "globalroute__power__total": 0.105738, - "globalroute__route__wirelength__estimated": 265718, - "globalroute__runtime__total": "23:44.30", - "globalroute__timing__clock__slack": -0.346, + "globalroute__mem__peak": 684396.0, + "globalroute__power__internal__total": 0.0527871, + "globalroute__power__leakage__total": 0.000775834, + "globalroute__power__switching__total": 0.0459253, + "globalroute__power__total": 0.0994882, + "globalroute__route__wirelength__estimated": 263286, + "globalroute__runtime__total": "15:56.77", + "globalroute__timing__clock__slack": -0.363, "globalroute__timing__drv__hold_violation_count": 0, - "globalroute__timing__drv__max_cap": 2, - "globalroute__timing__drv__max_cap_limit": -0.0631356, + "globalroute__timing__drv__max_cap": 1, + "globalroute__timing__drv__max_cap_limit": -0.0825659, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, "globalroute__timing__drv__max_slew": 0, - "globalroute__timing__drv__max_slew_limit": 0.335276, - "globalroute__timing__drv__setup_violation_count": 726, - "globalroute__timing__setup__tns": -125.411, - "globalroute__timing__setup__ws": -0.345721, - "placeopt__cpu__total": 22.35, + "globalroute__timing__drv__max_slew_limit": 0.328232, + "globalroute__timing__drv__setup_violation_count": 773, + "globalroute__timing__setup__tns": -143.901, + "globalroute__timing__setup__ws": -0.362631, + "placeopt__cpu__total": 22.83, "placeopt__design__core__area": 57494.3, "placeopt__design__die__area": 58726.3, - "placeopt__design__instance__area": 32455.2, + "placeopt__design__instance__area": 32445.9, "placeopt__design__instance__area__macros": 0, - "placeopt__design__instance__area__stdcell": 32455.2, + "placeopt__design__instance__area__stdcell": 32445.9, "placeopt__design__instance__count": 16394, "placeopt__design__instance__count__macros": 0, "placeopt__design__instance__count__stdcell": 16394, - "placeopt__design__instance__utilization": 0.564494, - "placeopt__design__instance__utilization__stdcell": 0.564494, + "placeopt__design__instance__utilization": 0.564332, + "placeopt__design__instance__utilization__stdcell": 0.564332, "placeopt__design__io": 264, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 0, - "placeopt__mem__peak": 388544.0, - "placeopt__power__internal__total": 0.0454706, - "placeopt__power__leakage__total": 0.000709336, - "placeopt__power__switching__total": 0.0389683, - "placeopt__power__total": 0.0851483, - "placeopt__runtime__total": "0:22.66", + "placeopt__mem__peak": 389184.0, + "placeopt__power__internal__total": 0.0454723, + "placeopt__power__leakage__total": 0.00070901, + "placeopt__power__switching__total": 0.0389762, + "placeopt__power__total": 0.0851575, + "placeopt__runtime__total": "0:23.16", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.0945415, + "placeopt__timing__drv__max_cap_limit": 0.0926263, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.38715, + "placeopt__timing__drv__max_slew_limit": 0.386745, "placeopt__timing__drv__setup_violation_count": 531, - "placeopt__timing__setup__tns": -57.954, - "placeopt__timing__setup__ws": -0.19366, + "placeopt__timing__setup__tns": -58.378, + "placeopt__timing__setup__ws": -0.194567, "run__flow__design": "ibex", - "run__flow__generate_date": "2024-09-23 21:38", + "run__flow__generate_date": "2024-09-27 18:17", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15825-ge21fbdf83", + "run__flow__openroad_version": "v2.0-16089-gd06039e7d", "run__flow__platform": "nangate45", "run__flow__platform__capacitance_units": "1fF", "run__flow__platform__current_units": "1mA", @@ -302,12 +302,12 @@ "run__flow__platform__voltage_units": "1v", "run__flow__platform_commit": "N/A", "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "2b179e16-4d49-4af9-bce5-870908c9fb4f", + "run__flow__uuid": "f08c6d2f-1bd2-4fe3-9690-dd986cd6d7ff", "run__flow__variant": "base", - "synth__cpu__total": 83.69, + "synth__cpu__total": 83.48, "synth__design__instance__area__stdcell": 28880.95, "synth__design__instance__count__stdcell": 15697.0, - "synth__mem__peak": 232808.0, - "synth__runtime__total": "1:24.10", - "total_time": "0:38:30.240000" + "synth__mem__peak": 233324.0, + "synth__runtime__total": "1:23.91", + "total_time": "0:31:05.910000" } \ No newline at end of file diff --git a/flow/designs/nangate45/ibex/rules-base.json b/flow/designs/nangate45/ibex/rules-base.json index 42b958f773..33978bb075 100644 --- a/flow/designs/nangate45/ibex/rules-base.json +++ b/flow/designs/nangate45/ibex/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 32544.4, + "value": 32828.58, "compare": "<=" }, "constraints__clocks__count": { @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 35384, + "value": 36863, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 17214, + "value": 18834, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,11 +20,11 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 1497, + "value": 1638, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 1497, + "value": 1638, "compare": "<=" }, "globalroute__antenna_diodes_count": { @@ -32,7 +32,7 @@ "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 350619, + "value": 363762, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -48,15 +48,15 @@ "compare": "<=" }, "finish__timing__setup__ws": { - "value": -0.49, + "value": -0.48, "compare": ">=" }, "finish__design__instance__area": { - "value": 36054, + "value": 39536, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 820, + "value": 908, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { @@ -64,7 +64,7 @@ "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -25.68, + "value": -25.41, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/nangate45/jpeg/metadata-base-ok.json b/flow/designs/nangate45/jpeg/metadata-base-ok.json index 1bc1c181f5..926e389b91 100644 --- a/flow/designs/nangate45/jpeg/metadata-base-ok.json +++ b/flow/designs/nangate45/jpeg/metadata-base-ok.json @@ -3,297 +3,295 @@ "constraints__clocks__details": [ "clk: 1.4000" ], - "cts__clock__skew__hold": 0.0336837, - "cts__clock__skew__setup": 0.0336837, - "cts__cpu__total": 1304.43, + "cts__clock__skew__hold": 0.0293147, + "cts__clock__skew__setup": 0.0293147, + "cts__cpu__total": 509.97, "cts__design__core__area": 232329, "cts__design__die__area": 234866, - "cts__design__instance__area": 112907, + "cts__design__instance__area": 112994, "cts__design__instance__area__macros": 0, - "cts__design__instance__area__stdcell": 112907, - "cts__design__instance__count": 69914, + "cts__design__instance__area__stdcell": 112994, + "cts__design__instance__count": 69877, "cts__design__instance__count__hold_buffer": 5, "cts__design__instance__count__macros": 0, - "cts__design__instance__count__setup_buffer": 93, - "cts__design__instance__count__stdcell": 69914, - "cts__design__instance__displacement__max": 8.035, - "cts__design__instance__displacement__mean": 0.0145, - "cts__design__instance__displacement__total": 1041.04, - "cts__design__instance__utilization": 0.48598, - "cts__design__instance__utilization__stdcell": 0.48598, + "cts__design__instance__count__setup_buffer": 46, + "cts__design__instance__count__stdcell": 69877, + "cts__design__instance__displacement__max": 4.51, + "cts__design__instance__displacement__mean": 0.015, + "cts__design__instance__displacement__total": 1048.84, + "cts__design__instance__utilization": 0.486355, + "cts__design__instance__utilization__stdcell": 0.486355, "cts__design__io": 47, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 1, - "cts__mem__peak": 741292.0, - "cts__power__internal__total": 0.328385, - "cts__power__leakage__total": 0.002552, - "cts__power__switching__total": 0.318731, - "cts__power__total": 0.649668, - "cts__route__wirelength__estimated": 1024280.0, - "cts__runtime__total": "21:45.23", + "cts__mem__peak": 740332.0, + "cts__power__internal__total": 0.330763, + "cts__power__leakage__total": 0.00255792, + "cts__power__switching__total": 0.316944, + "cts__power__total": 0.650265, + "cts__route__wirelength__estimated": 1012230.0, + "cts__runtime__total": "8:30.68", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 1, - "cts__timing__drv__max_cap_limit": -0.0012839, + "cts__timing__drv__max_cap_limit": -0.00271008, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.368247, - "cts__timing__drv__setup_violation_count": 509, - "cts__timing__setup__tns": -72.5856, - "cts__timing__setup__ws": -0.344387, - "design__io__hpwl": 8660900, + "cts__timing__drv__max_slew_limit": 0.367926, + "cts__timing__drv__setup_violation_count": 539, + "cts__timing__setup__tns": -101.679, + "cts__timing__setup__ws": -0.465628, + "design__io__hpwl": 9176975, "design__violations": 0, - "detailedplace__cpu__total": 72.67, + "detailedplace__cpu__total": 62.93, "detailedplace__design__core__area": 232329, "detailedplace__design__die__area": 234866, - "detailedplace__design__instance__area": 110903, + "detailedplace__design__instance__area": 110876, "detailedplace__design__instance__area__macros": 0, - "detailedplace__design__instance__area__stdcell": 110903, - "detailedplace__design__instance__count": 68428, + "detailedplace__design__instance__area__stdcell": 110876, + "detailedplace__design__instance__count": 68432, "detailedplace__design__instance__count__macros": 0, - "detailedplace__design__instance__count__stdcell": 68428, + "detailedplace__design__instance__count__stdcell": 68432, "detailedplace__design__instance__displacement__max": 10.96, - "detailedplace__design__instance__displacement__mean": 0.835, - "detailedplace__design__instance__displacement__total": 57158.7, - "detailedplace__design__instance__utilization": 0.477356, - "detailedplace__design__instance__utilization__stdcell": 0.477356, + "detailedplace__design__instance__displacement__mean": 0.8375, + "detailedplace__design__instance__displacement__total": 57317, + "detailedplace__design__instance__utilization": 0.477238, + "detailedplace__design__instance__utilization__stdcell": 0.477238, "detailedplace__design__io": 47, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 0, - "detailedplace__mem__peak": 453296.0, - "detailedplace__power__internal__total": 0.318315, - "detailedplace__power__leakage__total": 0.00249464, - "detailedplace__power__switching__total": 0.306834, - "detailedplace__power__total": 0.627643, - "detailedplace__route__wirelength__estimated": 1018630.0, - "detailedplace__runtime__total": "1:13.09", + "detailedplace__mem__peak": 453252.0, + "detailedplace__power__internal__total": 0.317717, + "detailedplace__power__leakage__total": 0.0024948, + "detailedplace__power__switching__total": 0.302151, + "detailedplace__power__total": 0.622362, + "detailedplace__route__wirelength__estimated": 1007550.0, + "detailedplace__runtime__total": "1:03.23", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 1, - "detailedplace__timing__drv__max_cap_limit": -0.0012839, + "detailedplace__timing__drv__max_cap_limit": -0.00156632, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.368247, - "detailedplace__timing__drv__setup_violation_count": 570, - "detailedplace__timing__setup__tns": -118.818, - "detailedplace__timing__setup__ws": -0.42886, + "detailedplace__timing__drv__max_slew_limit": 0.368548, + "detailedplace__timing__drv__setup_violation_count": 558, + "detailedplace__timing__setup__tns": -115.688, + "detailedplace__timing__setup__ws": -0.454862, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, "detailedroute__antenna_diodes_count": 0, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 1, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 10828, - "detailedroute__route__drc_errors__iter:2": 2361, - "detailedroute__route__drc_errors__iter:3": 1648, - "detailedroute__route__drc_errors__iter:4": 93, - "detailedroute__route__drc_errors__iter:5": 2, - "detailedroute__route__drc_errors__iter:6": 0, - "detailedroute__route__net": 84235, + "detailedroute__route__drc_errors__iter:1": 10596, + "detailedroute__route__drc_errors__iter:2": 2422, + "detailedroute__route__drc_errors__iter:3": 1675, + "detailedroute__route__drc_errors__iter:4": 84, + "detailedroute__route__drc_errors__iter:5": 0, + "detailedroute__route__net": 84200, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 424427, + "detailedroute__route__vias": 424302, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 424427, - "detailedroute__route__wirelength": 1165883, - "detailedroute__route__wirelength__iter:1": 1170805, - "detailedroute__route__wirelength__iter:2": 1166275, - "detailedroute__route__wirelength__iter:3": 1165839, - "detailedroute__route__wirelength__iter:4": 1165887, - "detailedroute__route__wirelength__iter:5": 1165883, - "detailedroute__route__wirelength__iter:6": 1165883, - "finish__clock__skew__hold": 0.0299637, - "finish__clock__skew__setup": 0.0299637, - "finish__cpu__total": 147.06, + "detailedroute__route__vias__singlecut": 424302, + "detailedroute__route__wirelength": 1153361, + "detailedroute__route__wirelength__iter:1": 1158500, + "detailedroute__route__wirelength__iter:2": 1153813, + "detailedroute__route__wirelength__iter:3": 1153307, + "detailedroute__route__wirelength__iter:4": 1153370, + "detailedroute__route__wirelength__iter:5": 1153361, + "finish__clock__skew__hold": 0.035595, + "finish__clock__skew__setup": 0.035595, + "finish__cpu__total": 132.59, "finish__design__core__area": 232329, "finish__design__die__area": 234866, - "finish__design__instance__area": 113442, + "finish__design__instance__area": 113398, "finish__design__instance__area__macros": 0, - "finish__design__instance__area__stdcell": 113442, - "finish__design__instance__count": 69951, + "finish__design__instance__area__stdcell": 113398, + "finish__design__instance__count": 69917, "finish__design__instance__count__macros": 0, - "finish__design__instance__count__stdcell": 69951, - "finish__design__instance__utilization": 0.488283, - "finish__design__instance__utilization__stdcell": 0.488283, + "finish__design__instance__count__stdcell": 69917, + "finish__design__instance__utilization": 0.488093, + "finish__design__instance__utilization__stdcell": 0.488093, "finish__design__io": 47, - "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.883019, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.220201, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.402511, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.42183, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.697489, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.42183, + "finish__design_powergrid__drop__average__net:VDD__corner:default": 0.876246, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.216924, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.431858, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.432337, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 0.668142, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.432337, "finish__flow__errors__count": 0, "finish__flow__warnings__count": 1, - "finish__mem__peak": 1399908.0, - "finish__power__internal__total": 0.333978, - "finish__power__leakage__total": 0.00257701, - "finish__power__switching__total": 0.348476, - "finish__power__total": 0.685031, - "finish__runtime__total": "2:28.79", - "finish__timing__drv__hold_violation_count": 0, - "finish__timing__drv__max_cap": 44, - "finish__timing__drv__max_cap_limit": -0.468201, + "finish__mem__peak": 1396744.0, + "finish__power__internal__total": 0.335818, + "finish__power__leakage__total": 0.00257558, + "finish__power__switching__total": 0.346008, + "finish__power__total": 0.684402, + "finish__runtime__total": "2:14.24", + "finish__timing__drv__hold_violation_count": 2, + "finish__timing__drv__max_cap": 37, + "finish__timing__drv__max_cap_limit": -0.504111, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, "finish__timing__drv__max_slew": 0, - "finish__timing__drv__max_slew_limit": 0.101292, - "finish__timing__drv__setup_violation_count": 498, - "finish__timing__setup__tns": -72.4712, - "finish__timing__setup__ws": -0.330454, - "finish__timing__wns_percent_delay": -16.534921, - "finish_merge__cpu__total": 7.81, - "finish_merge__mem__peak": 873964.0, - "finish_merge__runtime__total": "0:08.43", - "floorplan__cpu__total": 219.95, + "finish__timing__drv__max_slew_limit": 0.0789404, + "finish__timing__drv__setup_violation_count": 484, + "finish__timing__setup__tns": -58.6425, + "finish__timing__setup__ws": -0.29934, + "finish__timing__wns_percent_delay": -15.043981, + "finish_merge__cpu__total": 7.17, + "finish_merge__mem__peak": 874072.0, + "finish_merge__runtime__total": "0:07.86", + "floorplan__cpu__total": 203.78, "floorplan__design__core__area": 232329, "floorplan__design__die__area": 234866, - "floorplan__design__instance__area": 105039, + "floorplan__design__instance__area": 105057, "floorplan__design__instance__area__macros": 0, - "floorplan__design__instance__area__stdcell": 105039, - "floorplan__design__instance__count": 66986, + "floorplan__design__instance__area__stdcell": 105057, + "floorplan__design__instance__count": 66988, "floorplan__design__instance__count__hold_buffer": 0, "floorplan__design__instance__count__macros": 0, "floorplan__design__instance__count__setup_buffer": 0, - "floorplan__design__instance__count__stdcell": 66986, - "floorplan__design__instance__utilization": 0.452112, - "floorplan__design__instance__utilization__stdcell": 0.452112, + "floorplan__design__instance__count__stdcell": 66988, + "floorplan__design__instance__utilization": 0.452193, + "floorplan__design__instance__utilization__stdcell": 0.452193, "floorplan__design__io": 47, "floorplan__flow__errors__count": 0, - "floorplan__flow__warnings__count": 465, - "floorplan__mem__peak": 376596.0, - "floorplan__power__internal__total": 0.283802, - "floorplan__power__leakage__total": 0.00223366, - "floorplan__power__switching__total": 0.193656, - "floorplan__power__total": 0.479692, - "floorplan__runtime__total": "3:40.30", - "floorplan__timing__setup__tns": -0.102618, - "floorplan__timing__setup__ws": -0.0223621, - "floorplan_io__cpu__total": 0.87, - "floorplan_io__mem__peak": 221788.0, - "floorplan_io__runtime__total": "0:01.01", - "floorplan_macro__cpu__total": 0.88, - "floorplan_macro__mem__peak": 220504.0, - "floorplan_macro__runtime__total": "0:01.04", - "floorplan_pdn__cpu__total": 1.41, - "floorplan_pdn__mem__peak": 233864.0, - "floorplan_pdn__runtime__total": "0:01.60", - "floorplan_tap__cpu__total": 1.05, - "floorplan_tap__mem__peak": 181300.0, - "floorplan_tap__runtime__total": "0:01.17", - "floorplan_tdms__cpu__total": 0.88, - "floorplan_tdms__mem__peak": 220556.0, - "floorplan_tdms__runtime__total": "0:01.04", + "floorplan__flow__warnings__count": 552, + "floorplan__mem__peak": 375080.0, + "floorplan__power__internal__total": 0.28392, + "floorplan__power__leakage__total": 0.00223467, + "floorplan__power__switching__total": 0.193751, + "floorplan__power__total": 0.479906, + "floorplan__runtime__total": "3:24.13", + "floorplan__timing__setup__tns": -0.068769, + "floorplan__timing__setup__ws": -0.0249631, + "floorplan_io__cpu__total": 0.79, + "floorplan_io__mem__peak": 221536.0, + "floorplan_io__runtime__total": "0:00.96", + "floorplan_macro__cpu__total": 0.79, + "floorplan_macro__mem__peak": 220248.0, + "floorplan_macro__runtime__total": "0:00.96", + "floorplan_pdn__cpu__total": 1.32, + "floorplan_pdn__mem__peak": 234180.0, + "floorplan_pdn__runtime__total": "0:01.50", + "floorplan_tap__cpu__total": 0.73, + "floorplan_tap__mem__peak": 181500.0, + "floorplan_tap__runtime__total": "0:00.82", + "floorplan_tdms__cpu__total": 0.85, + "floorplan_tdms__mem__peak": 220152.0, + "floorplan_tdms__runtime__total": "0:01.02", "flow__errors__count": 0, "flow__warnings__count": 0, - "globalplace__cpu__total": 971.26, + "globalplace__cpu__total": 973.62, "globalplace__design__core__area": 232329, "globalplace__design__die__area": 234866, - "globalplace__design__instance__area": 105406, + "globalplace__design__instance__area": 105425, "globalplace__design__instance__area__macros": 0, - "globalplace__design__instance__area__stdcell": 105406, - "globalplace__design__instance__count": 68366, + "globalplace__design__instance__area__stdcell": 105425, + "globalplace__design__instance__count": 68368, "globalplace__design__instance__count__macros": 0, - "globalplace__design__instance__count__stdcell": 68366, - "globalplace__design__instance__utilization": 0.453692, - "globalplace__design__instance__utilization__stdcell": 0.453692, + "globalplace__design__instance__count__stdcell": 68368, + "globalplace__design__instance__utilization": 0.453773, + "globalplace__design__instance__utilization__stdcell": 0.453773, "globalplace__design__io": 47, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 0, - "globalplace__mem__peak": 989520.0, - "globalplace__power__internal__total": 0.286949, - "globalplace__power__leakage__total": 0.00223366, - "globalplace__power__switching__total": 0.289248, - "globalplace__power__total": 0.578431, - "globalplace__runtime__total": "4:07.10", - "globalplace__timing__setup__tns": -330.257, - "globalplace__timing__setup__ws": -0.713092, - "globalplace_io__cpu__total": 0.89, - "globalplace_io__mem__peak": 224484.0, - "globalplace_io__runtime__total": "0:01.02", - "globalplace_skip_io__cpu__total": 684.25, - "globalplace_skip_io__mem__peak": 325740.0, - "globalplace_skip_io__runtime__total": "0:34.80", + "globalplace__mem__peak": 993496.0, + "globalplace__power__internal__total": 0.286971, + "globalplace__power__leakage__total": 0.00223467, + "globalplace__power__switching__total": 0.285053, + "globalplace__power__total": 0.574258, + "globalplace__runtime__total": "4:25.69", + "globalplace__timing__setup__tns": -304.145, + "globalplace__timing__setup__ws": -0.676555, + "globalplace_io__cpu__total": 0.79, + "globalplace_io__mem__peak": 223988.0, + "globalplace_io__runtime__total": "0:00.93", + "globalplace_skip_io__cpu__total": 672.05, + "globalplace_skip_io__mem__peak": 325244.0, + "globalplace_skip_io__runtime__total": "0:31.67", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, "globalroute__antenna_diodes_count": 0, - "globalroute__clock__skew__hold": 0.0325243, - "globalroute__clock__skew__setup": 0.0325243, - "globalroute__cpu__total": 577.17, + "globalroute__clock__skew__hold": 0.0319855, + "globalroute__clock__skew__setup": 0.0319855, + "globalroute__cpu__total": 277.15, "globalroute__design__core__area": 232329, "globalroute__design__die__area": 234866, - "globalroute__design__instance__area": 113442, + "globalroute__design__instance__area": 113398, "globalroute__design__instance__area__macros": 0, - "globalroute__design__instance__area__stdcell": 113442, - "globalroute__design__instance__count": 69951, + "globalroute__design__instance__area__stdcell": 113398, + "globalroute__design__instance__count": 69917, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 0, - "globalroute__design__instance__count__setup_buffer": 46, - "globalroute__design__instance__count__stdcell": 69951, + "globalroute__design__instance__count__setup_buffer": 49, + "globalroute__design__instance__count__stdcell": 69917, "globalroute__design__instance__displacement__max": 4.63, - "globalroute__design__instance__displacement__mean": 0.014, - "globalroute__design__instance__displacement__total": 982.32, - "globalroute__design__instance__utilization": 0.488283, - "globalroute__design__instance__utilization__stdcell": 0.488283, + "globalroute__design__instance__displacement__mean": 0.0105, + "globalroute__design__instance__displacement__total": 760.37, + "globalroute__design__instance__utilization": 0.488093, + "globalroute__design__instance__utilization__stdcell": 0.488093, "globalroute__design__io": 47, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 2, - "globalroute__mem__peak": 1118068.0, - "globalroute__power__internal__total": 0.333889, - "globalroute__power__leakage__total": 0.00257701, - "globalroute__power__switching__total": 0.346062, - "globalroute__power__total": 0.682528, - "globalroute__route__wirelength__estimated": 1027780.0, - "globalroute__runtime__total": "8:04.92", - "globalroute__timing__clock__slack": -0.34, + "globalroute__mem__peak": 1125828.0, + "globalroute__power__internal__total": 0.335723, + "globalroute__power__leakage__total": 0.00257558, + "globalroute__power__switching__total": 0.343546, + "globalroute__power__total": 0.681844, + "globalroute__route__wirelength__estimated": 1014760.0, + "globalroute__runtime__total": "3:04.61", + "globalroute__timing__clock__slack": -0.298, "globalroute__timing__drv__hold_violation_count": 0, "globalroute__timing__drv__max_cap": 28, - "globalroute__timing__drv__max_cap_limit": -0.18517, + "globalroute__timing__drv__max_cap_limit": -0.218499, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, "globalroute__timing__drv__max_slew": 0, - "globalroute__timing__drv__max_slew_limit": 0.256462, - "globalroute__timing__drv__setup_violation_count": 509, - "globalroute__timing__setup__tns": -78.4291, - "globalroute__timing__setup__ws": -0.34001, - "placeopt__cpu__total": 61.9, + "globalroute__timing__drv__max_slew_limit": 0.23728, + "globalroute__timing__drv__setup_violation_count": 491, + "globalroute__timing__setup__tns": -63.8471, + "globalroute__timing__setup__ws": -0.29811, + "placeopt__cpu__total": 56.38, "placeopt__design__core__area": 232329, "placeopt__design__die__area": 234866, - "placeopt__design__instance__area": 110903, + "placeopt__design__instance__area": 110876, "placeopt__design__instance__area__macros": 0, - "placeopt__design__instance__area__stdcell": 110903, - "placeopt__design__instance__count": 68428, + "placeopt__design__instance__area__stdcell": 110876, + "placeopt__design__instance__count": 68432, "placeopt__design__instance__count__macros": 0, - "placeopt__design__instance__count__stdcell": 68428, - "placeopt__design__instance__utilization": 0.477356, - "placeopt__design__instance__utilization__stdcell": 0.477356, + "placeopt__design__instance__count__stdcell": 68432, + "placeopt__design__instance__utilization": 0.477238, + "placeopt__design__instance__utilization__stdcell": 0.477238, "placeopt__design__io": 47, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 0, - "placeopt__mem__peak": 606764.0, - "placeopt__power__internal__total": 0.318302, - "placeopt__power__leakage__total": 0.00249464, - "placeopt__power__switching__total": 0.306159, - "placeopt__power__total": 0.626955, - "placeopt__runtime__total": "1:02.44", + "placeopt__mem__peak": 604784.0, + "placeopt__power__internal__total": 0.317704, + "placeopt__power__leakage__total": 0.0024948, + "placeopt__power__switching__total": 0.301511, + "placeopt__power__total": 0.621709, + "placeopt__runtime__total": "0:56.90", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.000232845, + "placeopt__timing__drv__max_cap_limit": 0.00453635, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.369074, - "placeopt__timing__drv__setup_violation_count": 569, - "placeopt__timing__setup__tns": -118.141, - "placeopt__timing__setup__ws": -0.425968, + "placeopt__timing__drv__max_slew_limit": 0.371872, + "placeopt__timing__drv__setup_violation_count": 556, + "placeopt__timing__setup__tns": -114.023, + "placeopt__timing__setup__ws": -0.454664, "run__flow__design": "jpeg", - "run__flow__generate_date": "2024-09-23 21:46", + "run__flow__generate_date": "2024-09-27 18:14", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15825-ge21fbdf83", + "run__flow__openroad_version": "v2.0-16089-gd06039e7d", "run__flow__platform": "nangate45", "run__flow__platform__capacitance_units": "1fF", "run__flow__platform__current_units": "1mA", @@ -304,12 +302,12 @@ "run__flow__platform__voltage_units": "1v", "run__flow__platform_commit": "N/A", "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "483037c4-b935-49d2-be35-483ae2e26f6e", + "run__flow__uuid": "deb18144-61ea-47cd-b37f-28e67631c442", "run__flow__variant": "base", - "synth__cpu__total": 129.18, + "synth__cpu__total": 123.49, "synth__design__instance__area__stdcell": 104819.96, "synth__design__instance__count__stdcell": 66988.0, - "synth__mem__peak": 740180.0, - "synth__runtime__total": "2:10.67", - "total_time": "0:45:22.650000" + "synth__mem__peak": 726864.0, + "synth__runtime__total": "2:04.93", + "total_time": "0:26:30.130000" } \ No newline at end of file diff --git a/flow/designs/nangate45/jpeg/rules-base.json b/flow/designs/nangate45/jpeg/rules-base.json index 36b8f35f42..fbf378d2a6 100644 --- a/flow/designs/nangate45/jpeg/rules-base.json +++ b/flow/designs/nangate45/jpeg/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 110727.85, + "value": 120537.76, "compare": "<=" }, "constraints__clocks__count": { @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 113848, + "value": 127262, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 75821, + "value": 78697, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,11 +20,11 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 5421, + "value": 6843, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 5421, + "value": 6843, "compare": "<=" }, "globalroute__antenna_diodes_count": { @@ -32,7 +32,7 @@ "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 1295565, + "value": 1313188, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -48,15 +48,15 @@ "compare": "<=" }, "finish__timing__setup__ws": { - "value": -0.4, + "value": -0.36, "compare": ">=" }, "finish__design__instance__area": { - "value": 114434, + "value": 130408, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 2710, + "value": 3422, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { @@ -64,7 +64,7 @@ "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -29.84, + "value": -20.66, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/nangate45/mempool_group/config.mk b/flow/designs/nangate45/mempool_group/config.mk index 940ff123ea..4859cff4e6 100644 --- a/flow/designs/nangate45/mempool_group/config.mk +++ b/flow/designs/nangate45/mempool_group/config.mk @@ -3,7 +3,6 @@ export DESIGN_NICKNAME = mempool_group export PLATFORM = nangate45 export SYNTH_HIERARCHICAL = 1 -export RTLMP_FLOW ?= True export TEMP_DESIGN_DIR = ./designs/$(PLATFORM)/$(DESIGN_NICKNAME) export VERILOG_FILES = ./designs/$(PLATFORM)/$(DESIGN_NICKNAME)/$(DESIGN_NAME).v diff --git a/flow/designs/nangate45/swerv/metadata-base-ok.json b/flow/designs/nangate45/swerv/metadata-base-ok.json index 4bc6721523..9b99d556e1 100644 --- a/flow/designs/nangate45/swerv/metadata-base-ok.json +++ b/flow/designs/nangate45/swerv/metadata-base-ok.json @@ -3,149 +3,149 @@ "constraints__clocks__details": [ "core_clock: 2.0000" ], - "cts__clock__skew__hold": 0.118118, - "cts__clock__skew__setup": 0.118118, - "cts__cpu__total": 1612.98, + "cts__clock__skew__hold": 0.118838, + "cts__clock__skew__setup": 0.118838, + "cts__cpu__total": 376.56, "cts__design__core__area": 388845, "cts__design__die__area": 402470, - "cts__design__instance__area": 191530, + "cts__design__instance__area": 199674, "cts__design__instance__area__macros": 0, - "cts__design__instance__area__stdcell": 191530, - "cts__design__instance__count": 96163, + "cts__design__instance__area__stdcell": 199674, + "cts__design__instance__count": 96166, "cts__design__instance__count__hold_buffer": 11, "cts__design__instance__count__macros": 0, - "cts__design__instance__count__setup_buffer": 47, - "cts__design__instance__count__stdcell": 96163, - "cts__design__instance__displacement__max": 10.83, - "cts__design__instance__displacement__mean": 0.0175, - "cts__design__instance__displacement__total": 1730.91, - "cts__design__instance__utilization": 0.492562, - "cts__design__instance__utilization__stdcell": 0.492562, + "cts__design__instance__count__setup_buffer": 41, + "cts__design__instance__count__stdcell": 96166, + "cts__design__instance__displacement__max": 14.25, + "cts__design__instance__displacement__mean": 0.0185, + "cts__design__instance__displacement__total": 1821.85, + "cts__design__instance__utilization": 0.513504, + "cts__design__instance__utilization__stdcell": 0.513504, "cts__design__io": 2039, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 1, - "cts__mem__peak": 961908.0, - "cts__power__internal__total": 0.092092, - "cts__power__leakage__total": 0.00441608, - "cts__power__switching__total": 0.0602123, - "cts__power__total": 0.15672, - "cts__route__wirelength__estimated": 2490320.0, - "cts__runtime__total": "26:54.18", + "cts__mem__peak": 882392.0, + "cts__power__internal__total": 0.0960975, + "cts__power__leakage__total": 0.00474204, + "cts__power__switching__total": 0.063384, + "cts__power__total": 0.164223, + "cts__route__wirelength__estimated": 2509710.0, + "cts__runtime__total": "6:17.27", "cts__timing__drv__hold_violation_count": 0, - "cts__timing__drv__max_cap": 2, - "cts__timing__drv__max_cap_limit": -0.00648338, + "cts__timing__drv__max_cap": 6, + "cts__timing__drv__max_cap_limit": -0.0364607, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.337176, - "cts__timing__drv__setup_violation_count": 900, - "cts__timing__setup__tns": -120.166, - "cts__timing__setup__ws": -0.306508, + "cts__timing__drv__max_slew_limit": 0.340067, + "cts__timing__drv__setup_violation_count": 886, + "cts__timing__setup__tns": -100.214, + "cts__timing__setup__ws": -0.275985, "design__io__hpwl": 683773583, "design__violations": 0, - "detailedplace__cpu__total": 143.02, + "detailedplace__cpu__total": 116.17, "detailedplace__design__core__area": 388845, "detailedplace__design__die__area": 402470, - "detailedplace__design__instance__area": 187388, + "detailedplace__design__instance__area": 195675, "detailedplace__design__instance__area__macros": 0, - "detailedplace__design__instance__area__stdcell": 187388, - "detailedplace__design__instance__count": 92723, + "detailedplace__design__instance__area__stdcell": 195675, + "detailedplace__design__instance__count": 92737, "detailedplace__design__instance__count__macros": 0, - "detailedplace__design__instance__count__stdcell": 92723, - "detailedplace__design__instance__displacement__max": 11.3545, - "detailedplace__design__instance__displacement__mean": 1.175, - "detailedplace__design__instance__displacement__total": 108988, - "detailedplace__design__instance__utilization": 0.481909, - "detailedplace__design__instance__utilization__stdcell": 0.481909, + "detailedplace__design__instance__count__stdcell": 92737, + "detailedplace__design__instance__displacement__max": 14.4805, + "detailedplace__design__instance__displacement__mean": 1.2825, + "detailedplace__design__instance__displacement__total": 118940, + "detailedplace__design__instance__utilization": 0.503222, + "detailedplace__design__instance__utilization__stdcell": 0.503222, "detailedplace__design__io": 2039, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 0, - "detailedplace__mem__peak": 632468.0, - "detailedplace__power__internal__total": 0.0801458, - "detailedplace__power__leakage__total": 0.00430526, - "detailedplace__power__switching__total": 0.0462687, - "detailedplace__power__total": 0.13072, - "detailedplace__route__wirelength__estimated": 2488700.0, - "detailedplace__runtime__total": "2:23.56", - "detailedplace__timing__drv__hold_violation_count": 239, - "detailedplace__timing__drv__max_cap": 2, - "detailedplace__timing__drv__max_cap_limit": -0.00564678, + "detailedplace__mem__peak": 632044.0, + "detailedplace__power__internal__total": 0.0841666, + "detailedplace__power__leakage__total": 0.00463922, + "detailedplace__power__switching__total": 0.0496129, + "detailedplace__power__total": 0.138419, + "detailedplace__route__wirelength__estimated": 2511700.0, + "detailedplace__runtime__total": "1:56.60", + "detailedplace__timing__drv__hold_violation_count": 253, + "detailedplace__timing__drv__max_cap": 5, + "detailedplace__timing__drv__max_cap_limit": -0.0410782, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.337176, - "detailedplace__timing__drv__setup_violation_count": 971, - "detailedplace__timing__setup__tns": -402.74, - "detailedplace__timing__setup__ws": -0.609391, + "detailedplace__timing__drv__max_slew_limit": 0.340072, + "detailedplace__timing__drv__setup_violation_count": 974, + "detailedplace__timing__setup__tns": -406.243, + "detailedplace__timing__setup__ws": -0.598822, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, "detailedroute__antenna_diodes_count": 0, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 2, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 28837, - "detailedroute__route__drc_errors__iter:2": 8614, - "detailedroute__route__drc_errors__iter:3": 6712, - "detailedroute__route__drc_errors__iter:4": 382, - "detailedroute__route__drc_errors__iter:5": 24, + "detailedroute__route__drc_errors__iter:1": 27801, + "detailedroute__route__drc_errors__iter:2": 7433, + "detailedroute__route__drc_errors__iter:3": 6162, + "detailedroute__route__drc_errors__iter:4": 350, + "detailedroute__route__drc_errors__iter:5": 16, "detailedroute__route__drc_errors__iter:6": 0, - "detailedroute__route__net": 106935, + "detailedroute__route__net": 106936, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 869089, + "detailedroute__route__vias": 869403, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 869089, - "detailedroute__route__wirelength": 2947596, - "detailedroute__route__wirelength__iter:1": 2959730, - "detailedroute__route__wirelength__iter:2": 2949210, - "detailedroute__route__wirelength__iter:3": 2946711, - "detailedroute__route__wirelength__iter:4": 2947599, - "detailedroute__route__wirelength__iter:5": 2947605, - "detailedroute__route__wirelength__iter:6": 2947596, - "finish__clock__skew__hold": 0.121393, - "finish__clock__skew__setup": 0.121393, - "finish__cpu__total": 384.16, + "detailedroute__route__vias__singlecut": 869403, + "detailedroute__route__wirelength": 2963805, + "detailedroute__route__wirelength__iter:1": 2975785, + "detailedroute__route__wirelength__iter:2": 2965096, + "detailedroute__route__wirelength__iter:3": 2963047, + "detailedroute__route__wirelength__iter:4": 2963735, + "detailedroute__route__wirelength__iter:5": 2963807, + "detailedroute__route__wirelength__iter:6": 2963805, + "finish__clock__skew__hold": 0.124719, + "finish__clock__skew__setup": 0.124719, + "finish__cpu__total": 290.64, "finish__design__core__area": 388845, "finish__design__die__area": 402470, - "finish__design__instance__area": 192079, + "finish__design__instance__area": 200110, "finish__design__instance__area__macros": 0, - "finish__design__instance__area__stdcell": 192079, - "finish__design__instance__count": 96189, + "finish__design__instance__area__stdcell": 200110, + "finish__design__instance__count": 96190, "finish__design__instance__count__macros": 0, - "finish__design__instance__count__stdcell": 96189, - "finish__design__instance__utilization": 0.493972, - "finish__design__instance__utilization__stdcell": 0.493972, + "finish__design__instance__count__stdcell": 96190, + "finish__design__instance__utilization": 0.514627, + "finish__design__instance__utilization__stdcell": 0.514627, "finish__design__io": 2039, - "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.07663, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.024199, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0612751, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0774065, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.03872, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0774065, + "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.07591, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.0248688, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0638315, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0816837, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.03617, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0816837, "finish__flow__errors__count": 0, "finish__flow__warnings__count": 1, - "finish__mem__peak": 2188424.0, - "finish__power__internal__total": 0.0924796, - "finish__power__leakage__total": 0.00444415, - "finish__power__switching__total": 0.0670537, - "finish__power__total": 0.163977, - "finish__runtime__total": "6:27.56", - "finish__timing__drv__hold_violation_count": 210, - "finish__timing__drv__max_cap": 107, - "finish__timing__drv__max_cap_limit": -0.359374, + "finish__mem__peak": 2212216.0, + "finish__power__internal__total": 0.0964305, + "finish__power__leakage__total": 0.00476413, + "finish__power__switching__total": 0.0699967, + "finish__power__total": 0.171191, + "finish__runtime__total": "4:53.10", + "finish__timing__drv__hold_violation_count": 265, + "finish__timing__drv__max_cap": 115, + "finish__timing__drv__max_cap_limit": -0.343382, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, "finish__timing__drv__max_slew": 0, - "finish__timing__drv__max_slew_limit": 0.0507869, - "finish__timing__drv__setup_violation_count": 937, - "finish__timing__setup__tns": -175.921, - "finish__timing__setup__ws": -0.382284, - "finish__timing__wns_percent_delay": -19.285678, - "finish_merge__cpu__total": 13.0, - "finish_merge__mem__peak": 1130956.0, - "finish_merge__runtime__total": "0:13.91", - "floorplan__cpu__total": 4914.87, + "finish__timing__drv__max_slew_limit": 0.111674, + "finish__timing__drv__setup_violation_count": 923, + "finish__timing__setup__tns": -140.222, + "finish__timing__setup__ws": -0.366055, + "finish__timing__wns_percent_delay": -18.62062, + "finish_merge__cpu__total": 10.72, + "finish_merge__mem__peak": 1125088.0, + "finish_merge__runtime__total": "0:11.48", + "floorplan__cpu__total": 879.04, "floorplan__design__core__area": 388845, "floorplan__design__die__area": 402470, "floorplan__design__instance__area": 156024, @@ -161,32 +161,32 @@ "floorplan__design__io": 2039, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 4, - "floorplan__mem__peak": 508236.0, + "floorplan__mem__peak": 499960.0, "floorplan__power__internal__total": 0.0664338, "floorplan__power__leakage__total": 0.00303773, "floorplan__power__switching__total": 0.0212271, "floorplan__power__total": 0.0906986, - "floorplan__runtime__total": "1:21:56", + "floorplan__runtime__total": "14:39.51", "floorplan__timing__setup__tns": -2817.49, "floorplan__timing__setup__ws": -0.269068, - "floorplan_io__cpu__total": 1.02, - "floorplan_io__mem__peak": 264744.0, - "floorplan_io__runtime__total": "0:01.26", - "floorplan_macro__cpu__total": 1.09, - "floorplan_macro__mem__peak": 259216.0, - "floorplan_macro__runtime__total": "0:01.31", - "floorplan_pdn__cpu__total": 1.89, - "floorplan_pdn__mem__peak": 272624.0, - "floorplan_pdn__runtime__total": "0:02.11", - "floorplan_tap__cpu__total": 1.5, - "floorplan_tap__mem__peak": 209404.0, - "floorplan_tap__runtime__total": "0:01.61", - "floorplan_tdms__cpu__total": 0.96, - "floorplan_tdms__mem__peak": 259824.0, - "floorplan_tdms__runtime__total": "0:01.31", + "floorplan_io__cpu__total": 0.89, + "floorplan_io__mem__peak": 263596.0, + "floorplan_io__runtime__total": "0:01.07", + "floorplan_macro__cpu__total": 0.95, + "floorplan_macro__mem__peak": 258904.0, + "floorplan_macro__runtime__total": "0:01.12", + "floorplan_pdn__cpu__total": 1.64, + "floorplan_pdn__mem__peak": 272696.0, + "floorplan_pdn__runtime__total": "0:01.84", + "floorplan_tap__cpu__total": 0.79, + "floorplan_tap__mem__peak": 209384.0, + "floorplan_tap__runtime__total": "0:00.93", + "floorplan_tdms__cpu__total": 1.0, + "floorplan_tdms__mem__peak": 259676.0, + "floorplan_tdms__runtime__total": "0:01.16", "flow__errors__count": 0, "flow__warnings__count": 0, - "globalplace__cpu__total": 4586.98, + "globalplace__cpu__total": 4692.36, "globalplace__design__core__area": 388845, "globalplace__design__die__area": 402470, "globalplace__design__instance__area": 156558, @@ -200,100 +200,100 @@ "globalplace__design__io": 2039, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 0, - "globalplace__mem__peak": 1314768.0, - "globalplace__power__internal__total": 0.0673709, + "globalplace__mem__peak": 1256544.0, + "globalplace__power__internal__total": 0.0673799, "globalplace__power__leakage__total": 0.00303773, - "globalplace__power__switching__total": 0.0355835, - "globalplace__power__total": 0.105992, - "globalplace__runtime__total": "13:06.39", - "globalplace__timing__setup__tns": -12718.9, - "globalplace__timing__setup__ws": -2.0949, - "globalplace_io__cpu__total": 1.66, - "globalplace_io__mem__peak": 268240.0, - "globalplace_io__runtime__total": "0:01.89", - "globalplace_skip_io__cpu__total": 704.51, - "globalplace_skip_io__mem__peak": 421336.0, - "globalplace_skip_io__runtime__total": "0:49.96", + "globalplace__power__switching__total": 0.035572, + "globalplace__power__total": 0.10599, + "globalplace__runtime__total": "12:17.16", + "globalplace__timing__setup__tns": -13252.7, + "globalplace__timing__setup__ws": -2.82939, + "globalplace_io__cpu__total": 1.41, + "globalplace_io__mem__peak": 268296.0, + "globalplace_io__runtime__total": "0:01.62", + "globalplace_skip_io__cpu__total": 656.64, + "globalplace_skip_io__mem__peak": 420992.0, + "globalplace_skip_io__runtime__total": "0:41.05", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, "globalroute__antenna_diodes_count": 0, - "globalroute__clock__skew__hold": 0.151456, - "globalroute__clock__skew__setup": 0.151456, - "globalroute__cpu__total": 1579.58, + "globalroute__clock__skew__hold": 0.158072, + "globalroute__clock__skew__setup": 0.158072, + "globalroute__cpu__total": 834.7, "globalroute__design__core__area": 388845, "globalroute__design__die__area": 402470, - "globalroute__design__instance__area": 192079, + "globalroute__design__instance__area": 200110, "globalroute__design__instance__area__macros": 0, - "globalroute__design__instance__area__stdcell": 192079, - "globalroute__design__instance__count": 96189, + "globalroute__design__instance__area__stdcell": 200110, + "globalroute__design__instance__count": 96190, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 0, "globalroute__design__instance__count__setup_buffer": 9, - "globalroute__design__instance__count__stdcell": 96189, - "globalroute__design__instance__displacement__max": 9.38, - "globalroute__design__instance__displacement__mean": 0.018, - "globalroute__design__instance__displacement__total": 1749.57, - "globalroute__design__instance__utilization": 0.493972, - "globalroute__design__instance__utilization__stdcell": 0.493972, + "globalroute__design__instance__count__stdcell": 96190, + "globalroute__design__instance__displacement__max": 9.12, + "globalroute__design__instance__displacement__mean": 0.014, + "globalroute__design__instance__displacement__total": 1389.62, + "globalroute__design__instance__utilization": 0.514627, + "globalroute__design__instance__utilization__stdcell": 0.514627, "globalroute__design__io": 2039, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 2, - "globalroute__mem__peak": 2103464.0, - "globalroute__power__internal__total": 0.0923369, - "globalroute__power__leakage__total": 0.00444415, - "globalroute__power__switching__total": 0.0630551, - "globalroute__power__total": 0.159836, - "globalroute__route__wirelength__estimated": 2493030.0, - "globalroute__runtime__total": "22:12.91", - "globalroute__timing__clock__slack": -0.329, + "globalroute__mem__peak": 2075548.0, + "globalroute__power__internal__total": 0.0962847, + "globalroute__power__leakage__total": 0.00476413, + "globalroute__power__switching__total": 0.066151, + "globalroute__power__total": 0.1672, + "globalroute__route__wirelength__estimated": 2511980.0, + "globalroute__runtime__total": "10:05.93", + "globalroute__timing__clock__slack": -0.297, "globalroute__timing__drv__hold_violation_count": 0, - "globalroute__timing__drv__max_cap": 34, - "globalroute__timing__drv__max_cap_limit": -0.271404, + "globalroute__timing__drv__max_cap": 38, + "globalroute__timing__drv__max_cap_limit": -0.15689, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, "globalroute__timing__drv__max_slew": 0, - "globalroute__timing__drv__max_slew_limit": 0.273449, - "globalroute__timing__drv__setup_violation_count": 926, - "globalroute__timing__setup__tns": -152.382, - "globalroute__timing__setup__ws": -0.328672, - "placeopt__cpu__total": 134.07, + "globalroute__timing__drv__max_slew_limit": 0.280117, + "globalroute__timing__drv__setup_violation_count": 913, + "globalroute__timing__setup__tns": -131.776, + "globalroute__timing__setup__ws": -0.296953, + "placeopt__cpu__total": 111.26, "placeopt__design__core__area": 388845, "placeopt__design__die__area": 402470, - "placeopt__design__instance__area": 187388, + "placeopt__design__instance__area": 195675, "placeopt__design__instance__area__macros": 0, - "placeopt__design__instance__area__stdcell": 187388, - "placeopt__design__instance__count": 92723, + "placeopt__design__instance__area__stdcell": 195675, + "placeopt__design__instance__count": 92737, "placeopt__design__instance__count__macros": 0, - "placeopt__design__instance__count__stdcell": 92723, - "placeopt__design__instance__utilization": 0.481909, - "placeopt__design__instance__utilization__stdcell": 0.481909, + "placeopt__design__instance__count__stdcell": 92737, + "placeopt__design__instance__utilization": 0.503222, + "placeopt__design__instance__utilization__stdcell": 0.503222, "placeopt__design__io": 2039, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 0, - "placeopt__mem__peak": 764768.0, - "placeopt__power__internal__total": 0.0801396, - "placeopt__power__leakage__total": 0.00430526, - "placeopt__power__switching__total": 0.0461777, - "placeopt__power__total": 0.130622, - "placeopt__runtime__total": "2:14.85", + "placeopt__mem__peak": 702724.0, + "placeopt__power__internal__total": 0.0841565, + "placeopt__power__leakage__total": 0.00463922, + "placeopt__power__switching__total": 0.0494268, + "placeopt__power__total": 0.138223, + "placeopt__runtime__total": "1:51.93", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, - "placeopt__timing__drv__hold_violation_count": 232, - "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.000562214, + "placeopt__timing__drv__hold_violation_count": 230, + "placeopt__timing__drv__max_cap": 3, + "placeopt__timing__drv__max_cap_limit": -0.0371536, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.349247, - "placeopt__timing__drv__setup_violation_count": 971, - "placeopt__timing__setup__tns": -403.722, - "placeopt__timing__setup__ws": -0.614931, + "placeopt__timing__drv__max_slew_limit": 0.33891, + "placeopt__timing__drv__setup_violation_count": 974, + "placeopt__timing__setup__tns": -403.547, + "placeopt__timing__setup__ws": -0.597033, "run__flow__design": "swerv", - "run__flow__generate_date": "2024-09-23 23:54", + "run__flow__generate_date": "2024-09-28 20:47", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15825-ge21fbdf83", + "run__flow__openroad_version": "v2.0-16113-g7b5c8faf7", "run__flow__platform": "nangate45", "run__flow__platform__capacitance_units": "1fF", "run__flow__platform__current_units": "1mA", @@ -304,12 +304,12 @@ "run__flow__platform__voltage_units": "1v", "run__flow__platform_commit": "N/A", "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "87e6690a-f25d-4117-83d9-179160f355eb", + "run__flow__uuid": "ca29e368-be3b-42f9-8528-8b550a484ae9", "run__flow__variant": "base", - "synth__cpu__total": 676.32, + "synth__cpu__total": 568.17, "synth__design__instance__area__stdcell": 155952.874, "synth__design__instance__count__stdcell": 88287.0, - "synth__mem__peak": 1559940.0, - "synth__runtime__total": "11:19.26", - "total_time": "2:47:48.070000" + "synth__mem__peak": 1559504.0, + "synth__runtime__total": "9:30.55", + "total_time": "1:02:32.320000" } \ No newline at end of file diff --git a/flow/designs/nangate45/swerv/rules-base.json b/flow/designs/nangate45/swerv/rules-base.json index 6895a7cb02..f42b75e257 100644 --- a/flow/designs/nangate45/swerv/rules-base.json +++ b/flow/designs/nangate45/swerv/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 176767.07, + "value": 178043.59, "compare": "<=" }, "constraints__clocks__count": { @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 200022, + "value": 213238, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 94699, + "value": 106074, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,11 +20,11 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 8235, + "value": 9224, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 8235, + "value": 9224, "compare": "<=" }, "globalroute__antenna_diodes_count": { @@ -32,7 +32,7 @@ "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 3286672, + "value": 3342843, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -48,23 +48,23 @@ "compare": "<=" }, "finish__timing__setup__ws": { - "value": -0.48, + "value": -0.37, "compare": ">=" }, "finish__design__instance__area": { - "value": 201204, + "value": 218848, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 4117, + "value": 4612, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { - "value": 362, + "value": 431, "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -33.14, + "value": -22.51, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/nangate45/swerv_wrapper/config.mk b/flow/designs/nangate45/swerv_wrapper/config.mk index a686998f4b..d464f44273 100644 --- a/flow/designs/nangate45/swerv_wrapper/config.mk +++ b/flow/designs/nangate45/swerv_wrapper/config.mk @@ -2,7 +2,6 @@ export DESIGN_NAME = swerv_wrapper export PLATFORM = nangate45 export SYNTH_HIERARCHICAL = 1 -export RTLMP_FLOW = 1 # # RTL_MP Settings export RTLMP_MAX_INST = 30000 diff --git a/flow/designs/nangate45/swerv_wrapper/metadata-base-ok.json b/flow/designs/nangate45/swerv_wrapper/metadata-base-ok.json index eace963333..43f1b79189 100644 --- a/flow/designs/nangate45/swerv_wrapper/metadata-base-ok.json +++ b/flow/designs/nangate45/swerv_wrapper/metadata-base-ok.json @@ -3,169 +3,167 @@ "constraints__clocks__details": [ "core_clock: 2.0000" ], - "cts__clock__skew__hold": 0.179817, - "cts__clock__skew__setup": 0.179817, - "cts__cpu__total": 731.26, + "cts__clock__skew__hold": 0.174531, + "cts__clock__skew__setup": 0.174531, + "cts__cpu__total": 2380.32, "cts__design__core__area": 1056660.0, "cts__design__die__area": 1100000.0, - "cts__design__instance__area": 697490, + "cts__design__instance__area": 697184, "cts__design__instance__area__macros": 471245, - "cts__design__instance__area__stdcell": 226245, - "cts__design__instance__count": 114514, - "cts__design__instance__count__hold_buffer": 1354, + "cts__design__instance__area__stdcell": 225939, + "cts__design__instance__count": 114754, + "cts__design__instance__count__hold_buffer": 1580, "cts__design__instance__count__macros": 28, - "cts__design__instance__count__setup_buffer": 90, - "cts__design__instance__count__stdcell": 114486, - "cts__design__instance__displacement__max": 20.9, - "cts__design__instance__displacement__mean": 0.189, - "cts__design__instance__displacement__total": 21699.8, - "cts__design__instance__utilization": 0.660087, - "cts__design__instance__utilization__stdcell": 0.386467, + "cts__design__instance__count__setup_buffer": 134, + "cts__design__instance__count__stdcell": 114726, + "cts__design__instance__displacement__max": 22.51, + "cts__design__instance__displacement__mean": 0.2185, + "cts__design__instance__displacement__total": 25096.4, + "cts__design__instance__utilization": 0.659798, + "cts__design__instance__utilization__stdcell": 0.385945, "cts__design__io": 1416, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 1, - "cts__mem__peak": 1121480.0, - "cts__power__internal__total": 0.172074, - "cts__power__leakage__total": 0.0262359, - "cts__power__switching__total": 0.0380069, - "cts__power__total": 0.236317, - "cts__route__wirelength__estimated": 4882740.0, - "cts__runtime__total": "12:11.59", + "cts__mem__peak": 1139752.0, + "cts__power__internal__total": 0.172351, + "cts__power__leakage__total": 0.0262166, + "cts__power__switching__total": 0.037975, + "cts__power__total": 0.236542, + "cts__route__wirelength__estimated": 4863880.0, + "cts__runtime__total": "39:41.59", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 8, - "cts__timing__drv__max_cap_limit": -0.0337169, + "cts__timing__drv__max_cap_limit": -0.0340501, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.33839, - "cts__timing__drv__setup_violation_count": 1351, - "cts__timing__setup__tns": -483.309, - "cts__timing__setup__ws": -0.54694, + "cts__timing__drv__max_slew_limit": 0.338364, + "cts__timing__drv__setup_violation_count": 1415, + "cts__timing__setup__tns": -493.199, + "cts__timing__setup__ws": -0.540141, "design__io__hpwl": 1262712732, "design__violations": 0, - "detailedplace__cpu__total": 40.76, + "detailedplace__cpu__total": 132.29, "detailedplace__design__core__area": 1056660.0, "detailedplace__design__die__area": 1100000.0, - "detailedplace__design__instance__area": 692260, + "detailedplace__design__instance__area": 691638, "detailedplace__design__instance__area__macros": 471245, - "detailedplace__design__instance__area__stdcell": 221015, - "detailedplace__design__instance__count": 109669, + "detailedplace__design__instance__area__stdcell": 220394, + "detailedplace__design__instance__count": 109563, "detailedplace__design__instance__count__macros": 28, - "detailedplace__design__instance__count__stdcell": 109641, - "detailedplace__design__instance__displacement__max": 105.001, - "detailedplace__design__instance__displacement__mean": 1.1045, - "detailedplace__design__instance__displacement__total": 121142, - "detailedplace__design__instance__utilization": 0.655138, - "detailedplace__design__instance__utilization__stdcell": 0.377534, + "detailedplace__design__instance__count__stdcell": 109535, + "detailedplace__design__instance__displacement__max": 103.643, + "detailedplace__design__instance__displacement__mean": 1.0895, + "detailedplace__design__instance__displacement__total": 119409, + "detailedplace__design__instance__utilization": 0.654549, + "detailedplace__design__instance__utilization__stdcell": 0.376472, "detailedplace__design__io": 1416, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 0, - "detailedplace__mem__peak": 806924.0, - "detailedplace__power__internal__total": 0.158737, - "detailedplace__power__leakage__total": 0.0261126, - "detailedplace__power__switching__total": 0.0220168, - "detailedplace__power__total": 0.206867, - "detailedplace__route__wirelength__estimated": 4872720.0, - "detailedplace__runtime__total": "0:40.97", - "detailedplace__timing__drv__hold_violation_count": 290, - "detailedplace__timing__drv__max_cap": 6, - "detailedplace__timing__drv__max_cap_limit": -0.0337169, + "detailedplace__mem__peak": 822876.0, + "detailedplace__power__internal__total": 0.158749, + "detailedplace__power__leakage__total": 0.0260855, + "detailedplace__power__switching__total": 0.0219028, + "detailedplace__power__total": 0.206737, + "detailedplace__route__wirelength__estimated": 4852410.0, + "detailedplace__runtime__total": "2:12.92", + "detailedplace__timing__drv__hold_violation_count": 177, + "detailedplace__timing__drv__max_cap": 8, + "detailedplace__timing__drv__max_cap_limit": -0.0300864, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.339837, - "detailedplace__timing__drv__setup_violation_count": 1373, - "detailedplace__timing__setup__tns": -825.429, - "detailedplace__timing__setup__ws": -0.89948, + "detailedplace__timing__drv__max_slew_limit": 0.338364, + "detailedplace__timing__drv__setup_violation_count": 1364, + "detailedplace__timing__setup__tns": -832.449, + "detailedplace__timing__setup__ws": -0.924484, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, "detailedroute__antenna_diodes_count": 0, "detailedroute__flow__errors__count": 0, - "detailedroute__flow__warnings__count": 3, + "detailedroute__flow__warnings__count": 2, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 134163, - "detailedroute__route__drc_errors__iter:10": 2309, - "detailedroute__route__drc_errors__iter:11": 888, - "detailedroute__route__drc_errors__iter:12": 365, - "detailedroute__route__drc_errors__iter:13": 149, - "detailedroute__route__drc_errors__iter:14": 58, - "detailedroute__route__drc_errors__iter:15": 20, - "detailedroute__route__drc_errors__iter:16": 0, - "detailedroute__route__drc_errors__iter:2": 67680, - "detailedroute__route__drc_errors__iter:3": 59727, - "detailedroute__route__drc_errors__iter:4": 16241, - "detailedroute__route__drc_errors__iter:5": 7074, - "detailedroute__route__drc_errors__iter:6": 4548, - "detailedroute__route__drc_errors__iter:7": 3526, - "detailedroute__route__drc_errors__iter:8": 3048, - "detailedroute__route__drc_errors__iter:9": 2767, - "detailedroute__route__net": 121273, + "detailedroute__route__drc_errors__iter:1": 132401, + "detailedroute__route__drc_errors__iter:10": 2302, + "detailedroute__route__drc_errors__iter:11": 917, + "detailedroute__route__drc_errors__iter:12": 422, + "detailedroute__route__drc_errors__iter:13": 128, + "detailedroute__route__drc_errors__iter:14": 13, + "detailedroute__route__drc_errors__iter:15": 0, + "detailedroute__route__drc_errors__iter:2": 67632, + "detailedroute__route__drc_errors__iter:3": 60281, + "detailedroute__route__drc_errors__iter:4": 15478, + "detailedroute__route__drc_errors__iter:5": 6850, + "detailedroute__route__drc_errors__iter:6": 4375, + "detailedroute__route__drc_errors__iter:7": 3565, + "detailedroute__route__drc_errors__iter:8": 3101, + "detailedroute__route__drc_errors__iter:9": 2711, + "detailedroute__route__net": 121517, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 1132799, + "detailedroute__route__vias": 1134488, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 1132799, - "detailedroute__route__wirelength": 6184856, - "detailedroute__route__wirelength__iter:1": 6195643, - "detailedroute__route__wirelength__iter:10": 6183417, - "detailedroute__route__wirelength__iter:11": 6184652, - "detailedroute__route__wirelength__iter:12": 6184737, - "detailedroute__route__wirelength__iter:13": 6184773, - "detailedroute__route__wirelength__iter:14": 6184823, - "detailedroute__route__wirelength__iter:15": 6184833, - "detailedroute__route__wirelength__iter:16": 6184856, - "detailedroute__route__wirelength__iter:2": 6177935, - "detailedroute__route__wirelength__iter:3": 6172391, - "detailedroute__route__wirelength__iter:4": 6178436, - "detailedroute__route__wirelength__iter:5": 6180090, - "detailedroute__route__wirelength__iter:6": 6180997, - "detailedroute__route__wirelength__iter:7": 6181621, - "detailedroute__route__wirelength__iter:8": 6182076, - "detailedroute__route__wirelength__iter:9": 6182690, - "finish__clock__skew__hold": 0.222468, - "finish__clock__skew__setup": 0.222468, - "finish__cpu__total": 136.82, + "detailedroute__route__vias__singlecut": 1134488, + "detailedroute__route__wirelength": 6157412, + "detailedroute__route__wirelength__iter:1": 6169502, + "detailedroute__route__wirelength__iter:10": 6155563, + "detailedroute__route__wirelength__iter:11": 6156920, + "detailedroute__route__wirelength__iter:12": 6157190, + "detailedroute__route__wirelength__iter:13": 6157487, + "detailedroute__route__wirelength__iter:14": 6157438, + "detailedroute__route__wirelength__iter:15": 6157412, + "detailedroute__route__wirelength__iter:2": 6150972, + "detailedroute__route__wirelength__iter:3": 6145030, + "detailedroute__route__wirelength__iter:4": 6151367, + "detailedroute__route__wirelength__iter:5": 6152947, + "detailedroute__route__wirelength__iter:6": 6153537, + "detailedroute__route__wirelength__iter:7": 6153991, + "detailedroute__route__wirelength__iter:8": 6154368, + "detailedroute__route__wirelength__iter:9": 6154849, + "finish__clock__skew__hold": 0.219758, + "finish__clock__skew__setup": 0.219758, + "finish__cpu__total": 419.27, "finish__design__core__area": 1056660.0, "finish__design__die__area": 1100000.0, - "finish__design__instance__area": 698125, + "finish__design__instance__area": 698008, "finish__design__instance__area__macros": 471245, - "finish__design__instance__area__stdcell": 226881, - "finish__design__instance__count": 114627, + "finish__design__instance__area__stdcell": 226764, + "finish__design__instance__count": 114915, "finish__design__instance__count__macros": 28, - "finish__design__instance__count__stdcell": 114599, - "finish__design__instance__utilization": 0.660689, - "finish__design__instance__utilization__stdcell": 0.387553, + "finish__design__instance__count__stdcell": 114887, + "finish__design__instance__utilization": 0.660578, + "finish__design__instance__utilization__stdcell": 0.387354, "finish__design__io": 1416, - "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.08855, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.0101747, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0365972, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0402282, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.0634, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0402282, + "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.08861, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.0100697, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0368697, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0401713, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.06313, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0401713, "finish__flow__errors__count": 0, - "finish__flow__warnings__count": 0, - "finish__mem__peak": 2921772.0, - "finish__power__internal__total": 0.172292, - "finish__power__leakage__total": 0.0262703, - "finish__power__switching__total": 0.0432954, - "finish__power__total": 0.241857, - "finish__runtime__total": "2:17.98", - "finish__timing__drv__hold_violation_count": 484, - "finish__timing__drv__max_cap": 353, - "finish__timing__drv__max_cap_limit": -0.87571, + "finish__flow__warnings__count": 1, + "finish__mem__peak": 2800348.0, + "finish__power__internal__total": 0.172629, + "finish__power__leakage__total": 0.0262557, + "finish__power__switching__total": 0.0433627, + "finish__power__total": 0.242248, + "finish__runtime__total": "7:03.21", + "finish__timing__drv__hold_violation_count": 815, + "finish__timing__drv__max_cap": 338, + "finish__timing__drv__max_cap_limit": -3.27373, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, - "finish__timing__drv__max_slew": 18, - "finish__timing__drv__max_slew_limit": -0.463134, - "finish__timing__drv__setup_violation_count": 1534, - "finish__timing__setup__tns": -658.031, - "finish__timing__setup__ws": -0.747838, - "finish__timing__wns_percent_delay": -22.421444, - "finish_merge__cpu__total": 5.8, - "finish_merge__mem__peak": 1383120.0, - "finish_merge__runtime__total": "0:06.22", - "floorplan__cpu__total": 1196.96, + "finish__timing__drv__max_slew": 15, + "finish__timing__drv__max_slew_limit": -0.8498, + "finish__timing__drv__setup_violation_count": 1462, + "finish__timing__setup__tns": -582.967, + "finish__timing__setup__ws": -0.691215, + "finish__timing__wns_percent_delay": -21.587857, + "finish_merge__cpu__total": 16.22, + "finish_merge__mem__peak": 1406352.0, + "finish_merge__runtime__total": "0:17.50", + "floorplan__cpu__total": 1408.79, "floorplan__design__core__area": 1056660.0, "floorplan__design__die__area": 1100000.0, "floorplan__design__instance__area": 642430, @@ -181,29 +179,32 @@ "floorplan__design__io": 1416, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 3, - "floorplan__mem__peak": 570520.0, + "floorplan__mem__peak": 556196.0, "floorplan__power__internal__total": 0.153413, "floorplan__power__leakage__total": 0.0240802, "floorplan__power__switching__total": 0.0106987, "floorplan__power__total": 0.188192, - "floorplan__runtime__total": "19:57.11", + "floorplan__runtime__total": "23:29.47", "floorplan__timing__setup__tns": -3483.36, "floorplan__timing__setup__ws": -0.441148, - "floorplan_io__cpu__total": 0.37, - "floorplan_io__mem__peak": 281208.0, - "floorplan_io__runtime__total": "0:00.46", - "floorplan_macro__cpu__total": 100.95, - "floorplan_macro__mem__peak": 861420.0, - "floorplan_macro__runtime__total": "0:12.94", - "floorplan_pdn__cpu__total": 1.45, - "floorplan_pdn__mem__peak": 357904.0, - "floorplan_pdn__runtime__total": "0:01.55", - "floorplan_tap__cpu__total": 0.38, - "floorplan_tap__mem__peak": 228724.0, - "floorplan_tap__runtime__total": "0:00.45", + "floorplan_io__cpu__total": 1.07, + "floorplan_io__mem__peak": 281064.0, + "floorplan_io__runtime__total": "0:01.34", + "floorplan_macro__cpu__total": 336.11, + "floorplan_macro__mem__peak": 859832.0, + "floorplan_macro__runtime__total": "0:38.50", + "floorplan_pdn__cpu__total": 4.59, + "floorplan_pdn__mem__peak": 358228.0, + "floorplan_pdn__runtime__total": "0:04.88", + "floorplan_tap__cpu__total": 1.02, + "floorplan_tap__mem__peak": 229284.0, + "floorplan_tap__runtime__total": "0:01.28", + "floorplan_tdms__cpu__total": 0.08, + "floorplan_tdms__mem__peak": 100116.0, + "floorplan_tdms__runtime__total": "0:00.20", "flow__errors__count": 0, "flow__warnings__count": 0, - "globalplace__cpu__total": 377.52, + "globalplace__cpu__total": 4036.45, "globalplace__design__core__area": 1056660.0, "globalplace__design__die__area": 1100000.0, "globalplace__design__instance__area": 644378, @@ -217,100 +218,100 @@ "globalplace__design__io": 1416, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 0, - "globalplace__mem__peak": 1589648.0, - "globalplace__power__internal__total": 0.153918, + "globalplace__mem__peak": 1590152.0, + "globalplace__power__internal__total": 0.153916, "globalplace__power__leakage__total": 0.0240802, - "globalplace__power__switching__total": 0.0187923, - "globalplace__power__total": 0.196791, - "globalplace__runtime__total": "4:09.54", - "globalplace__timing__setup__tns": -20055.1, - "globalplace__timing__setup__ws": -4.92227, - "globalplace_io__cpu__total": 0.58, - "globalplace_io__mem__peak": 298980.0, - "globalplace_io__runtime__total": "0:00.66", - "globalplace_skip_io__cpu__total": 46.42, - "globalplace_skip_io__mem__peak": 493916.0, - "globalplace_skip_io__runtime__total": "0:17.64", + "globalplace__power__switching__total": 0.0187383, + "globalplace__power__total": 0.196734, + "globalplace__runtime__total": "14:06.66", + "globalplace__timing__setup__tns": -18370.4, + "globalplace__timing__setup__ws": -3.43387, + "globalplace_io__cpu__total": 1.57, + "globalplace_io__mem__peak": 299428.0, + "globalplace_io__runtime__total": "0:01.83", + "globalplace_skip_io__cpu__total": 1015.12, + "globalplace_skip_io__mem__peak": 495308.0, + "globalplace_skip_io__runtime__total": "1:02.39", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, "globalroute__antenna_diodes_count": 0, - "globalroute__clock__skew__hold": 0.191509, - "globalroute__clock__skew__setup": 0.191509, - "globalroute__cpu__total": 1001.7, + "globalroute__clock__skew__hold": 0.206788, + "globalroute__clock__skew__setup": 0.206788, + "globalroute__cpu__total": 1532.68, "globalroute__design__core__area": 1056660.0, "globalroute__design__die__area": 1100000.0, - "globalroute__design__instance__area": 698125, + "globalroute__design__instance__area": 698008, "globalroute__design__instance__area__macros": 471245, - "globalroute__design__instance__area__stdcell": 226881, - "globalroute__design__instance__count": 114627, - "globalroute__design__instance__count__hold_buffer": 3, + "globalroute__design__instance__area__stdcell": 226764, + "globalroute__design__instance__count": 114915, + "globalroute__design__instance__count__hold_buffer": 52, "globalroute__design__instance__count__macros": 28, - "globalroute__design__instance__count__setup_buffer": 6, - "globalroute__design__instance__count__stdcell": 114599, - "globalroute__design__instance__displacement__max": 11.06, - "globalroute__design__instance__displacement__mean": 0.0165, - "globalroute__design__instance__displacement__total": 1912.96, - "globalroute__design__instance__utilization": 0.660689, - "globalroute__design__instance__utilization__stdcell": 0.387553, + "globalroute__design__instance__count__setup_buffer": 11, + "globalroute__design__instance__count__stdcell": 114887, + "globalroute__design__instance__displacement__max": 12.7, + "globalroute__design__instance__displacement__mean": 0.0435, + "globalroute__design__instance__displacement__total": 5027.9, + "globalroute__design__instance__utilization": 0.660578, + "globalroute__design__instance__utilization__stdcell": 0.387354, "globalroute__design__io": 1416, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 2, - "globalroute__mem__peak": 2577408.0, - "globalroute__power__internal__total": 0.172036, - "globalroute__power__leakage__total": 0.0262703, - "globalroute__power__switching__total": 0.0392855, - "globalroute__power__total": 0.237591, - "globalroute__route__wirelength__estimated": 4886910.0, - "globalroute__runtime__total": "15:14.63", - "globalroute__timing__clock__slack": -0.578, + "globalroute__mem__peak": 2652812.0, + "globalroute__power__internal__total": 0.172359, + "globalroute__power__leakage__total": 0.0262557, + "globalroute__power__switching__total": 0.0393215, + "globalroute__power__total": 0.237936, + "globalroute__route__wirelength__estimated": 4872060.0, + "globalroute__runtime__total": "20:50.11", + "globalroute__timing__clock__slack": -0.574, "globalroute__timing__drv__hold_violation_count": 0, - "globalroute__timing__drv__max_cap": 108, - "globalroute__timing__drv__max_cap_limit": -1.19512, + "globalroute__timing__drv__max_cap": 114, + "globalroute__timing__drv__max_cap_limit": -2.53479, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, "globalroute__timing__drv__max_slew": 3, - "globalroute__timing__drv__max_slew_limit": -0.210859, - "globalroute__timing__drv__setup_violation_count": 1452, - "globalroute__timing__setup__tns": -520.573, - "globalroute__timing__setup__ws": -0.577529, - "placeopt__cpu__total": 38.29, + "globalroute__timing__drv__max_slew_limit": -0.505126, + "globalroute__timing__drv__setup_violation_count": 1217, + "globalroute__timing__setup__tns": -453.026, + "globalroute__timing__setup__ws": -0.574133, + "placeopt__cpu__total": 133.27, "placeopt__design__core__area": 1056660.0, "placeopt__design__die__area": 1100000.0, - "placeopt__design__instance__area": 692260, + "placeopt__design__instance__area": 691638, "placeopt__design__instance__area__macros": 471245, - "placeopt__design__instance__area__stdcell": 221015, - "placeopt__design__instance__count": 109669, + "placeopt__design__instance__area__stdcell": 220394, + "placeopt__design__instance__count": 109563, "placeopt__design__instance__count__macros": 28, - "placeopt__design__instance__count__stdcell": 109641, - "placeopt__design__instance__utilization": 0.655138, - "placeopt__design__instance__utilization__stdcell": 0.377534, + "placeopt__design__instance__count__stdcell": 109535, + "placeopt__design__instance__utilization": 0.654549, + "placeopt__design__instance__utilization__stdcell": 0.376472, "placeopt__design__io": 1416, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 0, - "placeopt__mem__peak": 854336.0, - "placeopt__power__internal__total": 0.158735, - "placeopt__power__leakage__total": 0.0261126, - "placeopt__power__switching__total": 0.0220099, - "placeopt__power__total": 0.206857, - "placeopt__runtime__total": "0:38.53", + "placeopt__mem__peak": 854304.0, + "placeopt__power__internal__total": 0.158746, + "placeopt__power__leakage__total": 0.0260855, + "placeopt__power__switching__total": 0.0218914, + "placeopt__power__total": 0.206723, + "placeopt__runtime__total": "2:14.00", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, - "placeopt__timing__drv__hold_violation_count": 293, - "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.00121659, + "placeopt__timing__drv__hold_violation_count": 175, + "placeopt__timing__drv__max_cap": 1, + "placeopt__timing__drv__max_cap_limit": -0.0325834, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.34933, - "placeopt__timing__drv__setup_violation_count": 1372, - "placeopt__timing__setup__tns": -812.65, - "placeopt__timing__setup__ws": -0.890297, + "placeopt__timing__drv__max_slew_limit": 0.348147, + "placeopt__timing__drv__setup_violation_count": 1364, + "placeopt__timing__setup__tns": -827.018, + "placeopt__timing__setup__ws": -0.920516, "run__flow__design": "swerv_wrapper", - "run__flow__generate_date": "2024-09-24 13:28", + "run__flow__generate_date": "2024-09-27 20:26", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15831-g69bd23c37", + "run__flow__openroad_version": "v2.0-16089-gd06039e7d", "run__flow__platform": "nangate45", "run__flow__platform__capacitance_units": "1fF", "run__flow__platform__current_units": "1mA", @@ -319,14 +320,14 @@ "run__flow__platform__resistance_units": "1kohm", "run__flow__platform__time_units": "1ns", "run__flow__platform__voltage_units": "1v", - "run__flow__platform_commit": "31d2175ea63ebf97ff64478ba67dc69cf7b0ccb4", - "run__flow__scripts_commit": "31d2175ea63ebf97ff64478ba67dc69cf7b0ccb4", - "run__flow__uuid": "19992064-7a8f-43d2-a195-b5a84425b178", + "run__flow__platform_commit": "N/A", + "run__flow__scripts_commit": "not a git repo", + "run__flow__uuid": "6fac9442-fc01-4b30-ba0c-7900b3282062", "run__flow__variant": "base", - "synth__cpu__total": 160.76, + "synth__cpu__total": 519.96, "synth__design__instance__area__stdcell": 642344.514, "synth__design__instance__count__stdcell": 98157.0, - "synth__mem__peak": 695728.0, - "synth__runtime__total": "2:41.58", - "total_time": "0:58:31.850000" + "synth__mem__peak": 696440.0, + "synth__runtime__total": "8:43.05", + "total_time": "2:00:28.930000" } \ No newline at end of file diff --git a/flow/designs/nangate45/swerv_wrapper/rules-base.json b/flow/designs/nangate45/swerv_wrapper/rules-base.json index 8b635e5392..76cc3754de 100644 --- a/flow/designs/nangate45/swerv_wrapper/rules-base.json +++ b/flow/designs/nangate45/swerv_wrapper/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 735404.71, + "value": 737362.47, "compare": "<=" }, "constraints__clocks__count": { @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 771336, + "value": 783985, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 110338, + "value": 123213, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,11 +20,11 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 9595, + "value": 10714, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 9595, + "value": 10714, "compare": "<=" }, "globalroute__antenna_diodes_count": { @@ -32,7 +32,7 @@ "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 7112584, + "value": 7081024, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -48,23 +48,23 @@ "compare": "<=" }, "finish__timing__setup__ws": { - "value": -0.84, + "value": -0.79, "compare": ">=" }, "finish__design__instance__area": { - "value": 772334, + "value": 790704, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 4797, + "value": 5357, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { - "value": 705, + "value": 1119, "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -34.72, + "value": -35.9, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/nangate45/tinyRocket/config.mk b/flow/designs/nangate45/tinyRocket/config.mk index 91b6a62600..3ba4266214 100644 --- a/flow/designs/nangate45/tinyRocket/config.mk +++ b/flow/designs/nangate45/tinyRocket/config.mk @@ -4,7 +4,6 @@ export PLATFORM = nangate45 export SYNTH_HIERARCHICAL = 1 export MAX_UNGROUP_SIZE ?= 5000 -export RTLMP_FLOW = 1 export VERILOG_FILES = ./designs/src/$(DESIGN_NICKNAME)/AsyncResetReg.v \ ./designs/src/$(DESIGN_NICKNAME)/ClockDivider2.v \ diff --git a/flow/designs/nangate45/tinyRocket/metadata-base-ok.json b/flow/designs/nangate45/tinyRocket/metadata-base-ok.json index 6315989c9b..ee2f7d513f 100644 --- a/flow/designs/nangate45/tinyRocket/metadata-base-ok.json +++ b/flow/designs/nangate45/tinyRocket/metadata-base-ok.json @@ -3,292 +3,297 @@ "constraints__clocks__details": [ "core_clock: 1.2000" ], - "cts__clock__skew__hold": 0.0560218, - "cts__clock__skew__setup": 0.0560218, - "cts__cpu__total": 669.58, + "cts__clock__skew__hold": 0.0743302, + "cts__clock__skew__setup": 0.0743302, + "cts__cpu__total": 301.84, "cts__design__core__area": 193770, "cts__design__die__area": 212205, - "cts__design__instance__area": 59062.9, + "cts__design__instance__area": 59170.9, "cts__design__instance__area__macros": 2481.25, - "cts__design__instance__area__stdcell": 56581.7, - "cts__design__instance__count": 29823, + "cts__design__instance__area__stdcell": 56689.7, + "cts__design__instance__count": 29761, "cts__design__instance__count__hold_buffer": 0, "cts__design__instance__count__macros": 2, - "cts__design__instance__count__setup_buffer": 66, - "cts__design__instance__count__stdcell": 29821, - "cts__design__instance__displacement__max": 3.375, - "cts__design__instance__displacement__mean": 0.0045, - "cts__design__instance__displacement__total": 140.401, - "cts__design__instance__utilization": 0.304809, - "cts__design__instance__utilization__stdcell": 0.295791, + "cts__design__instance__count__setup_buffer": 63, + "cts__design__instance__count__stdcell": 29759, + "cts__design__instance__displacement__max": 3.91, + "cts__design__instance__displacement__mean": 0.005, + "cts__design__instance__displacement__total": 152.196, + "cts__design__instance__utilization": 0.305366, + "cts__design__instance__utilization__stdcell": 0.296356, "cts__design__io": 269, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 1, - "cts__mem__peak": 569184.0, - "cts__power__internal__total": 0.0744846, - "cts__power__leakage__total": 0.00138075, - "cts__power__switching__total": 0.0480808, - "cts__power__total": 0.123946, - "cts__route__wirelength__estimated": 611561, - "cts__runtime__total": "11:10.07", + "cts__mem__peak": 566904.0, + "cts__power__internal__total": 0.0749224, + "cts__power__leakage__total": 0.00138554, + "cts__power__switching__total": 0.0498891, + "cts__power__total": 0.126197, + "cts__route__wirelength__estimated": 632759, + "cts__runtime__total": "5:02.30", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, - "cts__timing__drv__max_cap_limit": 0.0342914, + "cts__timing__drv__max_cap_limit": 0.061686, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.362583, - "cts__timing__drv__setup_violation_count": 810, - "cts__timing__setup__tns": -118.811, - "cts__timing__setup__ws": -0.253387, - "design__io__hpwl": 31793203, + "cts__timing__drv__max_slew_limit": 0.374084, + "cts__timing__drv__setup_violation_count": 819, + "cts__timing__setup__tns": -126.286, + "cts__timing__setup__ws": -0.234167, + "design__io__hpwl": 31966700, "design__violations": 0, - "detailedplace__cpu__total": 28.36, + "detailedplace__cpu__total": 22.56, "detailedplace__design__core__area": 193770, "detailedplace__design__die__area": 212205, - "detailedplace__design__instance__area": 57386.3, + "detailedplace__design__instance__area": 57553.4, "detailedplace__design__instance__area__macros": 2481.25, - "detailedplace__design__instance__area__stdcell": 54905.1, - "detailedplace__design__instance__count": 28444, + "detailedplace__design__instance__area__stdcell": 55072.1, + "detailedplace__design__instance__count": 28422, "detailedplace__design__instance__count__macros": 2, - "detailedplace__design__instance__count__stdcell": 28442, - "detailedplace__design__instance__displacement__max": 4.345, - "detailedplace__design__instance__displacement__mean": 0.793, - "detailedplace__design__instance__displacement__total": 22568.9, - "detailedplace__design__instance__utilization": 0.296156, - "detailedplace__design__instance__utilization__stdcell": 0.287027, + "detailedplace__design__instance__count__stdcell": 28420, + "detailedplace__design__instance__displacement__max": 7.7295, + "detailedplace__design__instance__displacement__mean": 0.803, + "detailedplace__design__instance__displacement__total": 22831.2, + "detailedplace__design__instance__utilization": 0.297018, + "detailedplace__design__instance__utilization__stdcell": 0.2879, "detailedplace__design__io": 269, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 0, - "detailedplace__mem__peak": 281792.0, - "detailedplace__power__internal__total": 0.0658627, - "detailedplace__power__leakage__total": 0.00133627, - "detailedplace__power__switching__total": 0.0383893, - "detailedplace__power__total": 0.105588, - "detailedplace__route__wirelength__estimated": 599856, - "detailedplace__runtime__total": "0:28.59", + "detailedplace__mem__peak": 282548.0, + "detailedplace__power__internal__total": 0.0665784, + "detailedplace__power__leakage__total": 0.00134438, + "detailedplace__power__switching__total": 0.0403968, + "detailedplace__power__total": 0.10832, + "detailedplace__route__wirelength__estimated": 621491, + "detailedplace__runtime__total": "0:22.76", "detailedplace__timing__drv__hold_violation_count": 0, - "detailedplace__timing__drv__max_cap": 0, - "detailedplace__timing__drv__max_cap_limit": 0.0383551, + "detailedplace__timing__drv__max_cap": 1, + "detailedplace__timing__drv__max_cap_limit": -0.0357498, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.364291, - "detailedplace__timing__drv__setup_violation_count": 790, - "detailedplace__timing__setup__tns": -159.212, - "detailedplace__timing__setup__ws": -0.322697, + "detailedplace__timing__drv__max_slew_limit": 0.332616, + "detailedplace__timing__drv__setup_violation_count": 802, + "detailedplace__timing__setup__tns": -167.184, + "detailedplace__timing__setup__ws": -0.343823, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, "detailedroute__antenna_diodes_count": 0, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 1, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 5221, - "detailedroute__route__drc_errors__iter:2": 1012, - "detailedroute__route__drc_errors__iter:3": 559, - "detailedroute__route__drc_errors__iter:4": 14, - "detailedroute__route__drc_errors__iter:5": 0, - "detailedroute__route__net": 33245, + "detailedroute__route__drc_errors__iter:1": 5239, + "detailedroute__route__drc_errors__iter:2": 985, + "detailedroute__route__drc_errors__iter:3": 702, + "detailedroute__route__drc_errors__iter:4": 36, + "detailedroute__route__drc_errors__iter:5": 1, + "detailedroute__route__drc_errors__iter:6": 0, + "detailedroute__route__net": 33282, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 210183, + "detailedroute__route__vias": 212287, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 210183, - "detailedroute__route__wirelength": 715619, - "detailedroute__route__wirelength__iter:1": 718101, - "detailedroute__route__wirelength__iter:2": 715897, - "detailedroute__route__wirelength__iter:3": 715580, - "detailedroute__route__wirelength__iter:4": 715618, - "detailedroute__route__wirelength__iter:5": 715619, - "finish__clock__skew__hold": 0.0554689, - "finish__clock__skew__setup": 0.0554689, - "finish__cpu__total": 69.75, + "detailedroute__route__vias__singlecut": 212287, + "detailedroute__route__wirelength": 735826, + "detailedroute__route__wirelength__iter:1": 738281, + "detailedroute__route__wirelength__iter:2": 735944, + "detailedroute__route__wirelength__iter:3": 735749, + "detailedroute__route__wirelength__iter:4": 735827, + "detailedroute__route__wirelength__iter:5": 735828, + "detailedroute__route__wirelength__iter:6": 735826, + "finish__clock__skew__hold": 0.0801091, + "finish__clock__skew__setup": 0.0801091, + "finish__cpu__total": 57.84, "finish__design__core__area": 193770, "finish__design__die__area": 212205, - "finish__design__instance__area": 59248.6, + "finish__design__instance__area": 59514.3, "finish__design__instance__area__macros": 2481.25, - "finish__design__instance__area__stdcell": 56767.3, - "finish__design__instance__count": 29862, + "finish__design__instance__area__stdcell": 57033.1, + "finish__design__instance__count": 29841, "finish__design__instance__count__macros": 2, - "finish__design__instance__count__stdcell": 29860, - "finish__design__instance__utilization": 0.305767, - "finish__design__instance__utilization__stdcell": 0.296762, + "finish__design__instance__count__stdcell": 29839, + "finish__design__instance__utilization": 0.307138, + "finish__design__instance__utilization__stdcell": 0.298151, "finish__design__io": 269, - "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.06531, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.034825, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0699299, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0626674, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.03007, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0626674, + "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.0639, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.0333067, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0676213, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0656346, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.03238, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0656346, "finish__flow__errors__count": 0, - "finish__flow__warnings__count": 1, - "finish__mem__peak": 820300.0, - "finish__power__internal__total": 0.0747043, - "finish__power__leakage__total": 0.0013899, - "finish__power__switching__total": 0.0504198, - "finish__power__total": 0.126514, - "finish__runtime__total": "1:10.65", + "finish__flow__warnings__count": 0, + "finish__mem__peak": 898008.0, + "finish__power__internal__total": 0.07523, + "finish__power__leakage__total": 0.00140148, + "finish__power__switching__total": 0.0525837, + "finish__power__total": 0.129215, + "finish__runtime__total": "0:58.63", "finish__timing__drv__hold_violation_count": 0, - "finish__timing__drv__max_cap": 2, - "finish__timing__drv__max_cap_limit": -0.241948, + "finish__timing__drv__max_cap": 7, + "finish__timing__drv__max_cap_limit": -0.131445, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, "finish__timing__drv__max_slew": 0, - "finish__timing__drv__max_slew_limit": 0.245447, - "finish__timing__drv__setup_violation_count": 1019, - "finish__timing__setup__tns": -134.437, - "finish__timing__setup__ws": -0.255031, - "finish__timing__wns_percent_delay": -14.813524, - "finish_merge__cpu__total": 4.21, - "finish_merge__mem__peak": 633472.0, - "finish_merge__runtime__total": "0:04.58", - "floorplan__cpu__total": 606.25, + "finish__timing__drv__max_slew_limit": 0.228003, + "finish__timing__drv__setup_violation_count": 848, + "finish__timing__setup__tns": -124.44, + "finish__timing__setup__ws": -0.255331, + "finish__timing__wns_percent_delay": -14.684229, + "finish_merge__cpu__total": 3.44, + "finish_merge__mem__peak": 634508.0, + "finish_merge__runtime__total": "0:03.77", + "floorplan__cpu__total": 125.84, "floorplan__design__core__area": 193770, "floorplan__design__die__area": 212205, - "floorplan__design__instance__area": 52357.6, + "floorplan__design__instance__area": 52364.8, "floorplan__design__instance__area__macros": 2481.25, - "floorplan__design__instance__area__stdcell": 49876.3, - "floorplan__design__instance__count": 26583, + "floorplan__design__instance__area__stdcell": 49883.5, + "floorplan__design__instance__count": 26582, "floorplan__design__instance__count__hold_buffer": 0, "floorplan__design__instance__count__macros": 2, "floorplan__design__instance__count__setup_buffer": 6, - "floorplan__design__instance__count__stdcell": 26581, - "floorplan__design__instance__utilization": 0.270204, - "floorplan__design__instance__utilization__stdcell": 0.260738, + "floorplan__design__instance__count__stdcell": 26580, + "floorplan__design__instance__utilization": 0.270241, + "floorplan__design__instance__utilization__stdcell": 0.260775, "floorplan__design__io": 269, "floorplan__flow__errors__count": 0, - "floorplan__flow__warnings__count": 23567, - "floorplan__mem__peak": 232884.0, - "floorplan__power__internal__total": 0.0590032, - "floorplan__power__leakage__total": 0.0011445, - "floorplan__power__switching__total": 0.0218579, - "floorplan__power__total": 0.0820056, - "floorplan__runtime__total": "10:06.84", - "floorplan__timing__setup__tns": -46.2284, - "floorplan__timing__setup__ws": -0.121933, - "floorplan_io__cpu__total": 0.47, - "floorplan_io__mem__peak": 160452.0, - "floorplan_io__runtime__total": "0:00.57", - "floorplan_macro__cpu__total": 384.47, - "floorplan_macro__mem__peak": 228064.0, - "floorplan_macro__runtime__total": "0:42.06", - "floorplan_pdn__cpu__total": 0.9, - "floorplan_pdn__mem__peak": 180072.0, - "floorplan_pdn__runtime__total": "0:01.02", - "floorplan_tap__cpu__total": 0.61, - "floorplan_tap__mem__peak": 146424.0, - "floorplan_tap__runtime__total": "0:00.69", + "floorplan__flow__warnings__count": 18045, + "floorplan__mem__peak": 230692.0, + "floorplan__power__internal__total": 0.059014, + "floorplan__power__leakage__total": 0.0011451, + "floorplan__power__switching__total": 0.0218639, + "floorplan__power__total": 0.082023, + "floorplan__runtime__total": "2:06.03", + "floorplan__timing__setup__tns": -51.2311, + "floorplan__timing__setup__ws": -0.122061, + "floorplan_io__cpu__total": 0.37, + "floorplan_io__mem__peak": 161316.0, + "floorplan_io__runtime__total": "0:00.46", + "floorplan_macro__cpu__total": 95.76, + "floorplan_macro__mem__peak": 226712.0, + "floorplan_macro__runtime__total": "0:36.75", + "floorplan_pdn__cpu__total": 0.72, + "floorplan_pdn__mem__peak": 180988.0, + "floorplan_pdn__runtime__total": "0:00.84", + "floorplan_tap__cpu__total": 0.44, + "floorplan_tap__mem__peak": 147556.0, + "floorplan_tap__runtime__total": "0:00.55", + "floorplan_tdms__cpu__total": 0.06, + "floorplan_tdms__mem__peak": 100204.0, + "floorplan_tdms__runtime__total": "0:00.12", "flow__errors__count": 0, "flow__warnings__count": 0, - "globalplace__cpu__total": 432.77, + "globalplace__cpu__total": 1550.01, "globalplace__design__core__area": 193770, "globalplace__design__die__area": 212205, - "globalplace__design__instance__area": 52722.3, + "globalplace__design__instance__area": 52723.9, "globalplace__design__instance__area__macros": 2481.25, - "globalplace__design__instance__area__stdcell": 50241, - "globalplace__design__instance__count": 27954, + "globalplace__design__instance__area__stdcell": 50242.6, + "globalplace__design__instance__count": 27932, "globalplace__design__instance__count__macros": 2, - "globalplace__design__instance__count__stdcell": 27952, - "globalplace__design__instance__utilization": 0.272086, - "globalplace__design__instance__utilization__stdcell": 0.262644, + "globalplace__design__instance__count__stdcell": 27930, + "globalplace__design__instance__utilization": 0.272095, + "globalplace__design__instance__utilization__stdcell": 0.262653, "globalplace__design__io": 269, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 0, - "globalplace__mem__peak": 656316.0, - "globalplace__power__internal__total": 0.0597432, - "globalplace__power__leakage__total": 0.0011445, - "globalplace__power__switching__total": 0.0350815, - "globalplace__power__total": 0.0959692, - "globalplace__runtime__total": "1:39.16", - "globalplace__timing__setup__tns": -792.006, - "globalplace__timing__setup__ws": -0.639921, - "globalplace_io__cpu__total": 0.48, - "globalplace_io__mem__peak": 164908.0, - "globalplace_io__runtime__total": "0:00.59", - "globalplace_skip_io__cpu__total": 256.66, - "globalplace_skip_io__mem__peak": 199372.0, - "globalplace_skip_io__runtime__total": "0:08.71", + "globalplace__mem__peak": 660072.0, + "globalplace__power__internal__total": 0.059813, + "globalplace__power__leakage__total": 0.0011451, + "globalplace__power__switching__total": 0.036659, + "globalplace__power__total": 0.0976171, + "globalplace__runtime__total": "3:08.11", + "globalplace__timing__setup__tns": -765.157, + "globalplace__timing__setup__ws": -0.559994, + "globalplace_io__cpu__total": 0.41, + "globalplace_io__mem__peak": 165684.0, + "globalplace_io__runtime__total": "0:00.48", + "globalplace_skip_io__cpu__total": 452.28, + "globalplace_skip_io__mem__peak": 201300.0, + "globalplace_skip_io__runtime__total": "0:32.45", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, "globalroute__antenna_diodes_count": 0, - "globalroute__clock__skew__hold": 0.0540293, - "globalroute__clock__skew__setup": 0.0540293, - "globalroute__cpu__total": 667.56, + "globalroute__clock__skew__hold": 0.0722478, + "globalroute__clock__skew__setup": 0.0722478, + "globalroute__cpu__total": 226.67, "globalroute__design__core__area": 193770, "globalroute__design__die__area": 212205, - "globalroute__design__instance__area": 59248.6, + "globalroute__design__instance__area": 59514.3, "globalroute__design__instance__area__macros": 2481.25, - "globalroute__design__instance__area__stdcell": 56767.3, - "globalroute__design__instance__count": 29862, + "globalroute__design__instance__area__stdcell": 57033.1, + "globalroute__design__instance__count": 29841, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 2, - "globalroute__design__instance__count__setup_buffer": 30, - "globalroute__design__instance__count__stdcell": 29860, - "globalroute__design__instance__displacement__max": 3.61, - "globalroute__design__instance__displacement__mean": 0.0035, - "globalroute__design__instance__displacement__total": 105.48, - "globalroute__design__instance__utilization": 0.305767, - "globalroute__design__instance__utilization__stdcell": 0.296762, + "globalroute__design__instance__count__setup_buffer": 51, + "globalroute__design__instance__count__stdcell": 29839, + "globalroute__design__instance__displacement__max": 3.04, + "globalroute__design__instance__displacement__mean": 0.0065, + "globalroute__design__instance__displacement__total": 207.28, + "globalroute__design__instance__utilization": 0.307138, + "globalroute__design__instance__utilization__stdcell": 0.298151, "globalroute__design__io": 269, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 2, - "globalroute__mem__peak": 779376.0, - "globalroute__power__internal__total": 0.0746453, - "globalroute__power__leakage__total": 0.0013899, - "globalroute__power__switching__total": 0.0494613, - "globalroute__power__total": 0.125496, - "globalroute__route__wirelength__estimated": 612664, - "globalroute__runtime__total": "10:16.15", - "globalroute__timing__clock__slack": -0.247, + "globalroute__mem__peak": 783700.0, + "globalroute__power__internal__total": 0.0751796, + "globalroute__power__leakage__total": 0.00140148, + "globalroute__power__switching__total": 0.0516186, + "globalroute__power__total": 0.1282, + "globalroute__route__wirelength__estimated": 634959, + "globalroute__runtime__total": "3:18.41", + "globalroute__timing__clock__slack": -0.234, "globalroute__timing__drv__hold_violation_count": 0, - "globalroute__timing__drv__max_cap": 1, - "globalroute__timing__drv__max_cap_limit": -0.0175724, + "globalroute__timing__drv__max_cap": 5, + "globalroute__timing__drv__max_cap_limit": -0.14958, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, "globalroute__timing__drv__max_slew": 0, - "globalroute__timing__drv__max_slew_limit": 0.340204, - "globalroute__timing__drv__setup_violation_count": 952, - "globalroute__timing__setup__tns": -128.835, - "globalroute__timing__setup__ws": -0.247461, - "placeopt__cpu__total": 28.44, + "globalroute__timing__drv__max_slew_limit": 0.284449, + "globalroute__timing__drv__setup_violation_count": 860, + "globalroute__timing__setup__tns": -117.925, + "globalroute__timing__setup__ws": -0.233794, + "placeopt__cpu__total": 23.13, "placeopt__design__core__area": 193770, "placeopt__design__die__area": 212205, - "placeopt__design__instance__area": 57386.3, + "placeopt__design__instance__area": 57553.4, "placeopt__design__instance__area__macros": 2481.25, - "placeopt__design__instance__area__stdcell": 54905.1, - "placeopt__design__instance__count": 28444, + "placeopt__design__instance__area__stdcell": 55072.1, + "placeopt__design__instance__count": 28422, "placeopt__design__instance__count__macros": 2, - "placeopt__design__instance__count__stdcell": 28442, - "placeopt__design__instance__utilization": 0.296156, - "placeopt__design__instance__utilization__stdcell": 0.287027, + "placeopt__design__instance__count__stdcell": 28420, + "placeopt__design__instance__utilization": 0.297018, + "placeopt__design__instance__utilization__stdcell": 0.2879, "placeopt__design__io": 269, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 0, - "placeopt__mem__peak": 438072.0, - "placeopt__power__internal__total": 0.0658623, - "placeopt__power__leakage__total": 0.00133627, - "placeopt__power__switching__total": 0.0384659, - "placeopt__power__total": 0.105665, - "placeopt__runtime__total": "0:28.91", + "placeopt__mem__peak": 438796.0, + "placeopt__power__internal__total": 0.0665782, + "placeopt__power__leakage__total": 0.00134438, + "placeopt__power__switching__total": 0.0404714, + "placeopt__power__total": 0.108394, + "placeopt__runtime__total": "0:23.48", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.0181992, + "placeopt__timing__drv__max_cap_limit": 0.0348883, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.355805, - "placeopt__timing__drv__setup_violation_count": 780, - "placeopt__timing__setup__tns": -158.057, - "placeopt__timing__setup__ws": -0.320097, + "placeopt__timing__drv__max_slew_limit": 0.362422, + "placeopt__timing__drv__setup_violation_count": 802, + "placeopt__timing__setup__tns": -165.833, + "placeopt__timing__setup__ws": -0.342148, "run__flow__design": "tinyRocket", - "run__flow__generate_date": "2024-09-19 14:58", + "run__flow__generate_date": "2024-09-26 21:20", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15759-g9136ba699", + "run__flow__openroad_version": "v2.0-15807-g036379d64", "run__flow__platform": "nangate45", "run__flow__platform__capacitance_units": "1fF", "run__flow__platform__current_units": "1mA", @@ -297,14 +302,14 @@ "run__flow__platform__resistance_units": "1kohm", "run__flow__platform__time_units": "1ns", "run__flow__platform__voltage_units": "1v", - "run__flow__platform_commit": "N/A", - "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "94d56525-08b0-4dec-b028-0a811bcf96a2", - "run__flow__variant": "base", - "synth__cpu__total": 87.37, + "run__flow__platform_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__scripts_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__uuid": "670e49be-55ac-4f82-ac51-4a321a4bc665", + "run__flow__variant": "odb_0925", + "synth__cpu__total": 61.92, "synth__design__instance__area__stdcell": 52201.436, "synth__design__instance__count__stdcell": 26576.0, - "synth__mem__peak": 260664.0, - "synth__runtime__total": "1:27.95", - "total_time": "0:37:46.540000" + "synth__mem__peak": 256160.0, + "synth__runtime__total": "1:02.43", + "total_time": "0:17:37.570000" } \ No newline at end of file diff --git a/flow/designs/nangate45/tinyRocket/rules-base.json b/flow/designs/nangate45/tinyRocket/rules-base.json index 51ac321460..feee30a245 100644 --- a/flow/designs/nangate45/tinyRocket/rules-base.json +++ b/flow/designs/nangate45/tinyRocket/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 55557.26, + "value": 60031.66, "compare": "<=" }, "constraints__clocks__count": { @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 60306, + "value": 66186, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 29637, + "value": 32683, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,11 +20,11 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 2577, + "value": 2842, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 2577, + "value": 2842, "compare": "<=" }, "globalroute__antenna_diodes_count": { @@ -32,7 +32,7 @@ "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 817684, + "value": 846200, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -52,11 +52,11 @@ "compare": ">=" }, "finish__design__instance__area": { - "value": 60640, + "value": 68441, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 1289, + "value": 1421, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { @@ -64,7 +64,7 @@ "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -27.77, + "value": -27.62, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/sky130hd/aes/metadata-base-ok.json b/flow/designs/sky130hd/aes/metadata-base-ok.json index e5868abd33..ed450e44da 100644 --- a/flow/designs/sky130hd/aes/metadata-base-ok.json +++ b/flow/designs/sky130hd/aes/metadata-base-ok.json @@ -3,179 +3,159 @@ "constraints__clocks__details": [ "clk: 4.5000" ], - "cts__clock__skew__hold": 0.0852727, - "cts__clock__skew__setup": 0.0852727, - "cts__cpu__total": 21.48, + "cts__clock__skew__hold": 0.130923, + "cts__clock__skew__setup": 0.130923, + "cts__cpu__total": 15.64, "cts__design__core__area": 434504, "cts__design__die__area": 441873, - "cts__design__instance__area": 122944, + "cts__design__instance__area": 120275, "cts__design__instance__area__macros": 0, - "cts__design__instance__area__stdcell": 122944, - "cts__design__instance__count": 18066, + "cts__design__instance__area__stdcell": 120275, + "cts__design__instance__count": 18019, "cts__design__instance__count__hold_buffer": 0, "cts__design__instance__count__macros": 0, - "cts__design__instance__count__setup_buffer": 116, - "cts__design__instance__count__stdcell": 18066, - "cts__design__instance__displacement__max": 21.846, - "cts__design__instance__displacement__mean": 0.057, - "cts__design__instance__displacement__total": 1039.02, - "cts__design__instance__utilization": 0.282953, - "cts__design__instance__utilization__stdcell": 0.282953, + "cts__design__instance__count__setup_buffer": 77, + "cts__design__instance__count__stdcell": 18019, + "cts__design__instance__displacement__max": 16.1, + "cts__design__instance__displacement__mean": 0.055, + "cts__design__instance__displacement__total": 996.969, + "cts__design__instance__utilization": 0.276811, + "cts__design__instance__utilization__stdcell": 0.276811, "cts__design__io": 388, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 0, - "cts__mem__peak": 877788.0, - "cts__power__internal__total": 0.141491, - "cts__power__leakage__total": 3.96231e-08, - "cts__power__switching__total": 0.255225, - "cts__power__total": 0.396716, - "cts__route__wirelength__estimated": 442210, - "cts__runtime__total": "0:22.22", + "cts__mem__peak": 793180.0, + "cts__power__internal__total": 0.136061, + "cts__power__leakage__total": 3.89377e-08, + "cts__power__switching__total": 0.24599, + "cts__power__total": 0.38205, + "cts__route__wirelength__estimated": 428916, + "cts__runtime__total": "0:16.20", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, - "cts__timing__drv__max_cap_limit": 0.0552832, + "cts__timing__drv__max_cap_limit": 0.00768071, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.0765266, + "cts__timing__drv__max_slew_limit": 0.0321478, "cts__timing__drv__setup_violation_count": 0, - "cts__timing__setup__tns": -3.9968e-06, - "cts__timing__setup__ws": 0.0032836, + "cts__timing__setup__tns": -6.26166e-05, + "cts__timing__setup__ws": 3.06422e-05, "design__io__hpwl": 121229111, "design__violations": 0, - "detailedplace__cpu__total": 14.42, + "detailedplace__cpu__total": 10.19, "detailedplace__design__core__area": 434504, "detailedplace__design__die__area": 441873, - "detailedplace__design__instance__area": 118562, + "detailedplace__design__instance__area": 115900, "detailedplace__design__instance__area__macros": 0, - "detailedplace__design__instance__area__stdcell": 118562, - "detailedplace__design__instance__count": 17771, + "detailedplace__design__instance__area__stdcell": 115900, + "detailedplace__design__instance__count": 17749, "detailedplace__design__instance__count__macros": 0, - "detailedplace__design__instance__count__stdcell": 17771, - "detailedplace__design__instance__displacement__max": 30.935, - "detailedplace__design__instance__displacement__mean": 1.668, - "detailedplace__design__instance__displacement__total": 29648.9, - "detailedplace__design__instance__utilization": 0.272868, - "detailedplace__design__instance__utilization__stdcell": 0.272868, + "detailedplace__design__instance__count__stdcell": 17749, + "detailedplace__design__instance__displacement__max": 28.392, + "detailedplace__design__instance__displacement__mean": 1.593, + "detailedplace__design__instance__displacement__total": 28274.9, + "detailedplace__design__instance__utilization": 0.266741, + "detailedplace__design__instance__utilization__stdcell": 0.266741, "detailedplace__design__io": 388, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 0, - "detailedplace__mem__peak": 210532.0, - "detailedplace__power__internal__total": 0.135044, - "detailedplace__power__leakage__total": 3.73443e-08, - "detailedplace__power__switching__total": 0.249049, - "detailedplace__power__total": 0.384093, - "detailedplace__route__wirelength__estimated": 450971, - "detailedplace__runtime__total": "0:14.51", + "detailedplace__mem__peak": 228140.0, + "detailedplace__power__internal__total": 0.129908, + "detailedplace__power__leakage__total": 3.6676e-08, + "detailedplace__power__switching__total": 0.239785, + "detailedplace__power__total": 0.369694, + "detailedplace__route__wirelength__estimated": 435491, + "detailedplace__runtime__total": "0:10.34", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, - "detailedplace__timing__drv__max_cap_limit": 0.00575194, + "detailedplace__timing__drv__max_cap_limit": 0.0066375, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.0120258, - "detailedplace__timing__drv__setup_violation_count": 152, - "detailedplace__timing__setup__tns": -84.6964, - "detailedplace__timing__setup__ws": -1.49537, + "detailedplace__timing__drv__max_slew_limit": 0.0250957, + "detailedplace__timing__drv__setup_violation_count": 146, + "detailedplace__timing__setup__tns": -97.9736, + "detailedplace__timing__setup__ws": -1.52988, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, - "detailedroute__antenna_diodes_count": 6, + "detailedroute__antenna_diodes_count": 8, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 10, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 13930, - "detailedroute__route__drc_errors__iter:10": 8, - "detailedroute__route__drc_errors__iter:11": 7, - "detailedroute__route__drc_errors__iter:12": 1, - "detailedroute__route__drc_errors__iter:13": 1, - "detailedroute__route__drc_errors__iter:14": 1, - "detailedroute__route__drc_errors__iter:15": 1, - "detailedroute__route__drc_errors__iter:16": 1, - "detailedroute__route__drc_errors__iter:17": 1, - "detailedroute__route__drc_errors__iter:18": 1, - "detailedroute__route__drc_errors__iter:19": 1, - "detailedroute__route__drc_errors__iter:2": 9401, - "detailedroute__route__drc_errors__iter:20": 1, - "detailedroute__route__drc_errors__iter:21": 0, - "detailedroute__route__drc_errors__iter:3": 9254, - "detailedroute__route__drc_errors__iter:4": 2114, - "detailedroute__route__drc_errors__iter:5": 367, - "detailedroute__route__drc_errors__iter:6": 100, - "detailedroute__route__drc_errors__iter:7": 45, - "detailedroute__route__drc_errors__iter:8": 24, - "detailedroute__route__drc_errors__iter:9": 22, - "detailedroute__route__net": 12905, + "detailedroute__route__drc_errors__iter:1": 15082, + "detailedroute__route__drc_errors__iter:10": 2, + "detailedroute__route__drc_errors__iter:11": 0, + "detailedroute__route__drc_errors__iter:2": 10602, + "detailedroute__route__drc_errors__iter:3": 10456, + "detailedroute__route__drc_errors__iter:4": 2658, + "detailedroute__route__drc_errors__iter:5": 720, + "detailedroute__route__drc_errors__iter:6": 326, + "detailedroute__route__drc_errors__iter:7": 117, + "detailedroute__route__drc_errors__iter:8": 67, + "detailedroute__route__drc_errors__iter:9": 11, + "detailedroute__route__net": 12884, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 115645, + "detailedroute__route__vias": 115914, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 115645, - "detailedroute__route__wirelength": 598908, - "detailedroute__route__wirelength__iter:1": 606732, - "detailedroute__route__wirelength__iter:10": 598893, - "detailedroute__route__wirelength__iter:11": 598895, - "detailedroute__route__wirelength__iter:12": 598896, - "detailedroute__route__wirelength__iter:13": 598896, - "detailedroute__route__wirelength__iter:14": 598896, - "detailedroute__route__wirelength__iter:15": 598896, - "detailedroute__route__wirelength__iter:16": 598896, - "detailedroute__route__wirelength__iter:17": 598897, - "detailedroute__route__wirelength__iter:18": 598897, - "detailedroute__route__wirelength__iter:19": 598896, - "detailedroute__route__wirelength__iter:2": 601650, - "detailedroute__route__wirelength__iter:20": 598896, - "detailedroute__route__wirelength__iter:21": 598908, - "detailedroute__route__wirelength__iter:3": 600424, - "detailedroute__route__wirelength__iter:4": 599172, - "detailedroute__route__wirelength__iter:5": 599071, - "detailedroute__route__wirelength__iter:6": 599013, - "detailedroute__route__wirelength__iter:7": 598955, - "detailedroute__route__wirelength__iter:8": 598892, - "detailedroute__route__wirelength__iter:9": 598896, - "finish__clock__skew__hold": 0.0710186, - "finish__clock__skew__setup": 0.0710186, - "finish__cpu__total": 25.78, + "detailedroute__route__vias__singlecut": 115914, + "detailedroute__route__wirelength": 589857, + "detailedroute__route__wirelength__iter:1": 598499, + "detailedroute__route__wirelength__iter:10": 589845, + "detailedroute__route__wirelength__iter:11": 589857, + "detailedroute__route__wirelength__iter:2": 593224, + "detailedroute__route__wirelength__iter:3": 591264, + "detailedroute__route__wirelength__iter:4": 590399, + "detailedroute__route__wirelength__iter:5": 590110, + "detailedroute__route__wirelength__iter:6": 589965, + "detailedroute__route__wirelength__iter:7": 589958, + "detailedroute__route__wirelength__iter:8": 589872, + "detailedroute__route__wirelength__iter:9": 589836, + "finish__clock__skew__hold": 0.137552, + "finish__clock__skew__setup": 0.137552, + "finish__cpu__total": 20.97, "finish__design__core__area": 434504, "finish__design__die__area": 441873, - "finish__design__instance__area": 124556, + "finish__design__instance__area": 122361, "finish__design__instance__area__macros": 0, - "finish__design__instance__area__stdcell": 124556, - "finish__design__instance__count": 18329, + "finish__design__instance__area__stdcell": 122361, + "finish__design__instance__count": 18324, "finish__design__instance__count__macros": 0, - "finish__design__instance__count__stdcell": 18329, - "finish__design__instance__utilization": 0.286662, - "finish__design__instance__utilization__stdcell": 0.286662, + "finish__design__instance__count__stdcell": 18324, + "finish__design__instance__utilization": 0.281611, + "finish__design__instance__utilization__stdcell": 0.281611, "finish__design__io": 388, - "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.79737, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.00253929, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.00852447, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.00676396, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.79148, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.00676396, + "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.79742, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.00245863, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.00895006, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.00743147, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.79105, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.00743147, "finish__flow__errors__count": 0, "finish__flow__warnings__count": 1, - "finish__mem__peak": 474084.0, - "finish__power__internal__total": 0.144083, - "finish__power__leakage__total": 4.03498e-08, - "finish__power__switching__total": 0.277862, - "finish__power__total": 0.421945, - "finish__runtime__total": "0:26.14", + "finish__mem__peak": 504644.0, + "finish__power__internal__total": 0.140117, + "finish__power__leakage__total": 3.98714e-08, + "finish__power__switching__total": 0.270814, + "finish__power__total": 0.410931, + "finish__runtime__total": "0:21.46", "finish__timing__drv__hold_violation_count": 0, - "finish__timing__drv__max_cap": 0, - "finish__timing__drv__max_cap_limit": 0.0171289, + "finish__timing__drv__max_cap": 2, + "finish__timing__drv__max_cap_limit": -0.0275801, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, "finish__timing__drv__max_slew": 0, - "finish__timing__drv__max_slew_limit": 0.0282925, - "finish__timing__drv__setup_violation_count": 8, - "finish__timing__setup__tns": -0.393107, - "finish__timing__setup__ws": -0.130084, - "finish__timing__wns_percent_delay": -2.48819, - "finish_merge__cpu__total": 3.21, - "finish_merge__mem__peak": 561832.0, - "finish_merge__runtime__total": "0:03.53", - "floorplan__cpu__total": 4.66, + "finish__timing__drv__max_slew_limit": 0.000127158, + "finish__timing__drv__setup_violation_count": 11, + "finish__timing__setup__tns": -0.847151, + "finish__timing__setup__ws": -0.219883, + "finish__timing__wns_percent_delay": -4.036121, + "finish_merge__cpu__total": 2.63, + "finish_merge__mem__peak": 561684.0, + "finish_merge__runtime__total": "0:03.02", + "floorplan__cpu__total": 3.61, "floorplan__design__core__area": 434504, "floorplan__design__die__area": 441873, "floorplan__design__instance__area": 81369.3, @@ -189,32 +169,32 @@ "floorplan__design__io": 388, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 1, - "floorplan__mem__peak": 182056.0, + "floorplan__mem__peak": 182100.0, "floorplan__power__internal__total": 0.0890861, "floorplan__power__leakage__total": 2.93769e-08, "floorplan__power__switching__total": 0.102184, "floorplan__power__total": 0.19127, - "floorplan__runtime__total": "0:04.75", + "floorplan__runtime__total": "0:03.68", "floorplan__timing__setup__tns": -934.515, "floorplan__timing__setup__ws": -8.6621, - "floorplan_io__cpu__total": 0.43, - "floorplan_io__mem__peak": 148764.0, - "floorplan_io__runtime__total": "0:00.58", - "floorplan_macro__cpu__total": 0.52, - "floorplan_macro__mem__peak": 148736.0, - "floorplan_macro__runtime__total": "0:00.61", - "floorplan_pdn__cpu__total": 1.06, - "floorplan_pdn__mem__peak": 171204.0, - "floorplan_pdn__runtime__total": "0:01.14", - "floorplan_tap__cpu__total": 0.56, - "floorplan_tap__mem__peak": 142500.0, - "floorplan_tap__runtime__total": "0:00.64", - "floorplan_tdms__cpu__total": 0.52, - "floorplan_tdms__mem__peak": 148956.0, - "floorplan_tdms__runtime__total": "0:00.59", + "floorplan_io__cpu__total": 0.4, + "floorplan_io__mem__peak": 149232.0, + "floorplan_io__runtime__total": "0:00.45", + "floorplan_macro__cpu__total": 0.39, + "floorplan_macro__mem__peak": 148256.0, + "floorplan_macro__runtime__total": "0:00.46", + "floorplan_pdn__cpu__total": 0.77, + "floorplan_pdn__mem__peak": 171124.0, + "floorplan_pdn__runtime__total": "0:00.87", + "floorplan_tap__cpu__total": 0.38, + "floorplan_tap__mem__peak": 143096.0, + "floorplan_tap__runtime__total": "0:00.45", + "floorplan_tdms__cpu__total": 0.37, + "floorplan_tdms__mem__peak": 148980.0, + "floorplan_tdms__runtime__total": "0:00.46", "flow__errors__count": 0, "flow__warnings__count": 0, - "globalplace__cpu__total": 1643.63, + "globalplace__cpu__total": 674.52, "globalplace__design__core__area": 434504, "globalplace__design__die__area": 441873, "globalplace__design__instance__area": 88543.7, @@ -228,100 +208,100 @@ "globalplace__design__io": 388, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 0, - "globalplace__mem__peak": 905936.0, - "globalplace__power__internal__total": 0.0938563, + "globalplace__mem__peak": 803884.0, + "globalplace__power__internal__total": 0.0937721, "globalplace__power__leakage__total": 2.93769e-08, - "globalplace__power__switching__total": 0.208692, - "globalplace__power__total": 0.302548, - "globalplace__runtime__total": "1:38.38", - "globalplace__timing__setup__tns": -2489.46, - "globalplace__timing__setup__ws": -20.0131, - "globalplace_io__cpu__total": 0.65, - "globalplace_io__mem__peak": 156920.0, - "globalplace_io__runtime__total": "0:00.74", - "globalplace_skip_io__cpu__total": 284.55, - "globalplace_skip_io__mem__peak": 174900.0, - "globalplace_skip_io__runtime__total": "0:09.58", + "globalplace__power__switching__total": 0.205267, + "globalplace__power__total": 0.299039, + "globalplace__runtime__total": "1:01.11", + "globalplace__timing__setup__tns": -2455.7, + "globalplace__timing__setup__ws": -19.5528, + "globalplace_io__cpu__total": 0.46, + "globalplace_io__mem__peak": 155900.0, + "globalplace_io__runtime__total": "0:00.54", + "globalplace_skip_io__cpu__total": 202.18, + "globalplace_skip_io__mem__peak": 175224.0, + "globalplace_skip_io__runtime__total": "0:07.38", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, - "globalroute__antenna_diodes_count": 148, - "globalroute__clock__skew__hold": 0.0706897, - "globalroute__clock__skew__setup": 0.0706897, - "globalroute__cpu__total": 165.44, + "globalroute__antenna_diodes_count": 156, + "globalroute__clock__skew__hold": 0.130458, + "globalroute__clock__skew__setup": 0.130458, + "globalroute__cpu__total": 95.85, "globalroute__design__core__area": 434504, "globalroute__design__die__area": 441873, - "globalroute__design__instance__area": 124541, + "globalroute__design__instance__area": 122341, "globalroute__design__instance__area__macros": 0, - "globalroute__design__instance__area__stdcell": 124541, - "globalroute__design__instance__count": 18323, + "globalroute__design__instance__area__stdcell": 122341, + "globalroute__design__instance__count": 18316, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 0, - "globalroute__design__instance__count__setup_buffer": 85, - "globalroute__design__instance__count__stdcell": 18323, - "globalroute__design__instance__displacement__max": 21.12, - "globalroute__design__instance__displacement__mean": 0.072, - "globalroute__design__instance__displacement__total": 1312.3, - "globalroute__design__instance__utilization": 0.286627, - "globalroute__design__instance__utilization__stdcell": 0.286627, + "globalroute__design__instance__count__setup_buffer": 108, + "globalroute__design__instance__count__stdcell": 18316, + "globalroute__design__instance__displacement__max": 18.4, + "globalroute__design__instance__displacement__mean": 0.073, + "globalroute__design__instance__displacement__total": 1338.78, + "globalroute__design__instance__utilization": 0.281565, + "globalroute__design__instance__utilization__stdcell": 0.281565, "globalroute__design__io": 388, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 0, - "globalroute__mem__peak": 1065896.0, - "globalroute__power__internal__total": 0.144341, - "globalroute__power__leakage__total": 4.03498e-08, - "globalroute__power__switching__total": 0.292032, - "globalroute__power__total": 0.436374, - "globalroute__route__wirelength__estimated": 450730, - "globalroute__runtime__total": "0:37.15", - "globalroute__timing__clock__slack": -0.199, + "globalroute__mem__peak": 971952.0, + "globalroute__power__internal__total": 0.140405, + "globalroute__power__leakage__total": 3.98713e-08, + "globalroute__power__switching__total": 0.284805, + "globalroute__power__total": 0.425211, + "globalroute__route__wirelength__estimated": 438316, + "globalroute__runtime__total": "0:24.53", + "globalroute__timing__clock__slack": -0.183, "globalroute__timing__drv__hold_violation_count": 0, "globalroute__timing__drv__max_cap": 0, - "globalroute__timing__drv__max_cap_limit": 0.00960744, + "globalroute__timing__drv__max_cap_limit": 1.73654e-05, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, "globalroute__timing__drv__max_slew": 0, - "globalroute__timing__drv__max_slew_limit": 0.0251924, - "globalroute__timing__drv__setup_violation_count": 17, - "globalroute__timing__setup__tns": -1.03096, - "globalroute__timing__setup__ws": -0.199132, - "placeopt__cpu__total": 13.67, + "globalroute__timing__drv__max_slew_limit": 0.0142354, + "globalroute__timing__drv__setup_violation_count": 21, + "globalroute__timing__setup__tns": -1.50406, + "globalroute__timing__setup__ws": -0.183036, + "placeopt__cpu__total": 9.91, "placeopt__design__core__area": 434504, "placeopt__design__die__area": 441873, - "placeopt__design__instance__area": 118562, + "placeopt__design__instance__area": 115900, "placeopt__design__instance__area__macros": 0, - "placeopt__design__instance__area__stdcell": 118562, - "placeopt__design__instance__count": 17771, + "placeopt__design__instance__area__stdcell": 115900, + "placeopt__design__instance__count": 17749, "placeopt__design__instance__count__macros": 0, - "placeopt__design__instance__count__stdcell": 17771, - "placeopt__design__instance__utilization": 0.272868, - "placeopt__design__instance__utilization__stdcell": 0.272868, + "placeopt__design__instance__count__stdcell": 17749, + "placeopt__design__instance__utilization": 0.266741, + "placeopt__design__instance__utilization__stdcell": 0.266741, "placeopt__design__io": 388, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 0, - "placeopt__mem__peak": 774484.0, - "placeopt__power__internal__total": 0.135096, - "placeopt__power__leakage__total": 3.73443e-08, - "placeopt__power__switching__total": 0.254488, - "placeopt__power__total": 0.389584, - "placeopt__runtime__total": "0:14.36", + "placeopt__mem__peak": 686536.0, + "placeopt__power__internal__total": 0.129978, + "placeopt__power__leakage__total": 3.6676e-08, + "placeopt__power__switching__total": 0.245173, + "placeopt__power__total": 0.375151, + "placeopt__runtime__total": "0:10.33", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.0241735, + "placeopt__timing__drv__max_cap_limit": 0.0007685, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.0299736, - "placeopt__timing__drv__setup_violation_count": 151, - "placeopt__timing__setup__tns": -83.6627, - "placeopt__timing__setup__ws": -1.4785, + "placeopt__timing__drv__max_slew_limit": 0.00884201, + "placeopt__timing__drv__setup_violation_count": 145, + "placeopt__timing__setup__tns": -97.2784, + "placeopt__timing__setup__ws": -1.53296, "run__flow__design": "aes", - "run__flow__generate_date": "2024-09-19 14:38", + "run__flow__generate_date": "2024-09-28 19:45", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15759-g9136ba699", + "run__flow__openroad_version": "v2.0-16113-g7b5c8faf7", "run__flow__platform": "sky130hd", "run__flow__platform__capacitance_units": "1pF", "run__flow__platform__current_units": "1mA", @@ -332,12 +312,12 @@ "run__flow__platform__voltage_units": "1v", "run__flow__platform_commit": "N/A", "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "93e77604-d6c3-40d8-8fd8-0833b8204d8b", + "run__flow__uuid": "64701ab2-5262-42b9-a218-8101648378df", "run__flow__variant": "base", - "synth__cpu__total": 51.13, + "synth__cpu__total": 36.32, "synth__design__instance__area__stdcell": 87313.7408, "synth__design__instance__count__stdcell": 12952.0, - "synth__mem__peak": 134500.0, - "synth__runtime__total": "0:51.38", - "total_time": "0:04:46.300000" + "synth__mem__peak": 134752.0, + "synth__runtime__total": "0:36.48", + "total_time": "0:03:17.760000" } \ No newline at end of file diff --git a/flow/designs/sky130hd/aes/rules-base.json b/flow/designs/sky130hd/aes/rules-base.json index 67c264cba7..954bac3a0f 100644 --- a/flow/designs/sky130hd/aes/rules-base.json +++ b/flow/designs/sky130hd/aes/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 98967.61, + "value": 100410.81, "compare": "<=" }, "constraints__clocks__count": { @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 130968, + "value": 133285, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 20288, + "value": 20411, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,19 +20,19 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 1764, + "value": 1775, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 1764, + "value": 1775, "compare": "<=" }, "globalroute__antenna_diodes_count": { - "value": 170, + "value": 179, "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 662577, + "value": 678336, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -44,19 +44,19 @@ "compare": "<=" }, "detailedroute__antenna_diodes_count": { - "value": 7, + "value": 9, "compare": "<=" }, "finish__timing__setup__ws": { - "value": -0.35, + "value": -0.31, "compare": ">=" }, "finish__design__instance__area": { - "value": 135927, + "value": 140715, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 882, + "value": 887, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { @@ -64,7 +64,7 @@ "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -10.0, + "value": -12.11, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/sky130hd/chameleon/metadata-base-ok.json b/flow/designs/sky130hd/chameleon/metadata-base-ok.json index 51b9185249..1f8937c876 100644 --- a/flow/designs/sky130hd/chameleon/metadata-base-ok.json +++ b/flow/designs/sky130hd/chameleon/metadata-base-ok.json @@ -3,302 +3,311 @@ "constraints__clocks__details": [ "core_clock: 7.0000" ], - "cts__clock__skew__hold": 0.314536, - "cts__clock__skew__setup": 0.314536, - "cts__cpu__total": 6.59, + "cts__clock__skew__hold": 0.384198, + "cts__clock__skew__setup": 0.384198, + "cts__cpu__total": 8.59, "cts__design__core__area": 10010000.0, "cts__design__die__area": 10278400.0, - "cts__design__instance__area": 5688240.0, + "cts__design__instance__area": 5686850.0, "cts__design__instance__area__macros": 5574790.0, - "cts__design__instance__area__stdcell": 113454, - "cts__design__instance__count": 61292, - "cts__design__instance__count__hold_buffer": 5, + "cts__design__instance__area__stdcell": 112060, + "cts__design__instance__count": 61351, + "cts__design__instance__count__hold_buffer": 6, "cts__design__instance__count__macros": 6, "cts__design__instance__count__setup_buffer": 0, - "cts__design__instance__count__stdcell": 61286, - "cts__design__instance__displacement__max": 3.475, - "cts__design__instance__displacement__mean": 0, - "cts__design__instance__displacement__total": 7.893, - "cts__design__instance__utilization": 0.568259, - "cts__design__instance__utilization__stdcell": 0.0255805, + "cts__design__instance__count__stdcell": 61345, + "cts__design__instance__displacement__max": 66.973, + "cts__design__instance__displacement__mean": 0.001, + "cts__design__instance__displacement__total": 72.486, + "cts__design__instance__utilization": 0.56812, + "cts__design__instance__utilization__stdcell": 0.0252663, "cts__design__io": 145, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 0, - "cts__mem__peak": 1212936.0, - "cts__power__internal__total": 0.00572435, - "cts__power__leakage__total": 1.72877e-08, - "cts__power__switching__total": 0.00409587, - "cts__power__total": 0.00982024, - "cts__route__wirelength__estimated": 791639, - "cts__runtime__total": "0:07.45", + "cts__mem__peak": 1641364.0, + "cts__power__internal__total": 0.00578126, + "cts__power__leakage__total": 1.73152e-08, + "cts__power__switching__total": 0.00401439, + "cts__power__total": 0.00979567, + "cts__route__wirelength__estimated": 763785, + "cts__runtime__total": "0:09.76", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, - "cts__timing__drv__max_cap_limit": 0.0896558, + "cts__timing__drv__max_cap_limit": 0.136397, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.0997254, + "cts__timing__drv__max_slew_limit": 0.10367, "cts__timing__drv__setup_violation_count": 0, "cts__timing__setup__tns": 0, - "cts__timing__setup__ws": 1.3539, - "design__io__hpwl": 110664412, + "cts__timing__setup__ws": 1.74162, + "design__io__hpwl": 108545351, "design__violations": 0, - "detailedplace__cpu__total": 5.54, + "detailedplace__cpu__total": 7.35, "detailedplace__design__core__area": 10010000.0, "detailedplace__design__die__area": 10278400.0, - "detailedplace__design__instance__area": 5685700.0, + "detailedplace__design__instance__area": 5684130.0, "detailedplace__design__instance__area__macros": 5574790.0, - "detailedplace__design__instance__area__stdcell": 110908, - "detailedplace__design__instance__count": 61149, + "detailedplace__design__instance__area__stdcell": 109337, + "detailedplace__design__instance__count": 61202, "detailedplace__design__instance__count__macros": 6, - "detailedplace__design__instance__count__stdcell": 61143, - "detailedplace__design__instance__displacement__max": 263.343, - "detailedplace__design__instance__displacement__mean": 0.699, - "detailedplace__design__instance__displacement__total": 42802.2, - "detailedplace__design__instance__utilization": 0.568005, - "detailedplace__design__instance__utilization__stdcell": 0.0250065, + "detailedplace__design__instance__count__stdcell": 61196, + "detailedplace__design__instance__displacement__max": 242.44, + "detailedplace__design__instance__displacement__mean": 0.447, + "detailedplace__design__instance__displacement__total": 27390.1, + "detailedplace__design__instance__utilization": 0.567848, + "detailedplace__design__instance__utilization__stdcell": 0.0246524, "detailedplace__design__io": 145, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 0, - "detailedplace__mem__peak": 575928.0, - "detailedplace__power__internal__total": 0.00348698, - "detailedplace__power__leakage__total": 1.6044e-08, - "detailedplace__power__switching__total": 0.00134502, - "detailedplace__power__total": 0.00483202, - "detailedplace__route__wirelength__estimated": 796052, - "detailedplace__runtime__total": "0:05.92", + "detailedplace__mem__peak": 1113008.0, + "detailedplace__power__internal__total": 0.00345568, + "detailedplace__power__leakage__total": 1.59908e-08, + "detailedplace__power__switching__total": 0.00133975, + "detailedplace__power__total": 0.00479545, + "detailedplace__route__wirelength__estimated": 761967, + "detailedplace__runtime__total": "0:08.36", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, - "detailedplace__timing__drv__max_cap_limit": 0.0940618, + "detailedplace__timing__drv__max_cap_limit": 0.137024, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.103995, + "detailedplace__timing__drv__max_slew_limit": 0.103665, "detailedplace__timing__drv__setup_violation_count": 0, "detailedplace__timing__setup__tns": 0, - "detailedplace__timing__setup__ws": 1.27076, + "detailedplace__timing__setup__ws": 1.38509, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, - "detailedroute__antenna_diodes_count": 22, + "detailedroute__antenna_diodes_count": 39, "detailedroute__flow__errors__count": 0, - "detailedroute__flow__warnings__count": 10, + "detailedroute__flow__warnings__count": 11, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 3168, - "detailedroute__route__drc_errors__iter:10": 0, - "detailedroute__route__drc_errors__iter:2": 1482, - "detailedroute__route__drc_errors__iter:3": 1410, - "detailedroute__route__drc_errors__iter:4": 204, - "detailedroute__route__drc_errors__iter:5": 32, - "detailedroute__route__drc_errors__iter:6": 3, - "detailedroute__route__drc_errors__iter:7": 3, - "detailedroute__route__drc_errors__iter:8": 3, - "detailedroute__route__drc_errors__iter:9": 3, - "detailedroute__route__net": 3428, + "detailedroute__route__drc_errors__iter:1": 2753, + "detailedroute__route__drc_errors__iter:10": 1, + "detailedroute__route__drc_errors__iter:11": 1, + "detailedroute__route__drc_errors__iter:12": 1, + "detailedroute__route__drc_errors__iter:13": 0, + "detailedroute__route__drc_errors__iter:2": 1202, + "detailedroute__route__drc_errors__iter:3": 1075, + "detailedroute__route__drc_errors__iter:4": 190, + "detailedroute__route__drc_errors__iter:5": 17, + "detailedroute__route__drc_errors__iter:6": 1, + "detailedroute__route__drc_errors__iter:7": 1, + "detailedroute__route__drc_errors__iter:8": 1, + "detailedroute__route__drc_errors__iter:9": 1, + "detailedroute__route__net": 3485, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 29030, + "detailedroute__route__vias": 27598, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 29030, - "detailedroute__route__wirelength": 838146, - "detailedroute__route__wirelength__iter:1": 839011, - "detailedroute__route__wirelength__iter:10": 838146, - "detailedroute__route__wirelength__iter:2": 838277, - "detailedroute__route__wirelength__iter:3": 838034, - "detailedroute__route__wirelength__iter:4": 838111, - "detailedroute__route__wirelength__iter:5": 838145, - "detailedroute__route__wirelength__iter:6": 838128, - "detailedroute__route__wirelength__iter:7": 838128, - "detailedroute__route__wirelength__iter:8": 838128, - "detailedroute__route__wirelength__iter:9": 838128, - "finish__clock__skew__hold": 0.188655, - "finish__clock__skew__setup": 0.188655, - "finish__cpu__total": 80.22, + "detailedroute__route__vias__singlecut": 27598, + "detailedroute__route__wirelength": 802957, + "detailedroute__route__wirelength__iter:1": 803853, + "detailedroute__route__wirelength__iter:10": 802955, + "detailedroute__route__wirelength__iter:11": 802957, + "detailedroute__route__wirelength__iter:12": 802955, + "detailedroute__route__wirelength__iter:13": 802957, + "detailedroute__route__wirelength__iter:2": 803403, + "detailedroute__route__wirelength__iter:3": 802943, + "detailedroute__route__wirelength__iter:4": 802872, + "detailedroute__route__wirelength__iter:5": 802931, + "detailedroute__route__wirelength__iter:6": 802956, + "detailedroute__route__wirelength__iter:7": 802957, + "detailedroute__route__wirelength__iter:8": 802955, + "detailedroute__route__wirelength__iter:9": 802955, + "finish__clock__skew__hold": 0.242165, + "finish__clock__skew__setup": 0.242165, + "finish__cpu__total": 91.67, "finish__design__core__area": 10010000.0, "finish__design__die__area": 10278400.0, - "finish__design__instance__area": 5689390.0, + "finish__design__instance__area": 5688180.0, "finish__design__instance__area__macros": 5574790.0, - "finish__design__instance__area__stdcell": 114597, - "finish__design__instance__count": 61736, + "finish__design__instance__area__stdcell": 113389, + "finish__design__instance__count": 61872, "finish__design__instance__count__macros": 6, - "finish__design__instance__count__stdcell": 61730, - "finish__design__instance__utilization": 0.568373, - "finish__design__instance__utilization__stdcell": 0.0258384, + "finish__design__instance__count__stdcell": 61866, + "finish__design__instance__utilization": 0.568252, + "finish__design__instance__utilization__stdcell": 0.0255659, "finish__design__io": 145, "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.8, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 4.04753e-06, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.000485233, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.000268371, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.79951, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.000268371, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 4.09309e-06, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.000557154, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.000363205, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.79944, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.000363205, "finish__flow__errors__count": 0, "finish__flow__warnings__count": 1, - "finish__mem__peak": 1855040.0, - "finish__power__internal__total": 0.00572375, - "finish__power__leakage__total": 1.72923e-08, - "finish__power__switching__total": 0.00369439, - "finish__power__total": 0.00941816, - "finish__runtime__total": "1:22.27", + "finish__mem__peak": 1855700.0, + "finish__power__internal__total": 0.00577891, + "finish__power__leakage__total": 1.73316e-08, + "finish__power__switching__total": 0.00362583, + "finish__power__total": 0.00940476, + "finish__runtime__total": "1:33.76", "finish__timing__drv__hold_violation_count": 0, - "finish__timing__drv__max_cap": 1, - "finish__timing__drv__max_cap_limit": -0.266692, + "finish__timing__drv__max_cap": 2, + "finish__timing__drv__max_cap_limit": -0.0855301, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, - "finish__timing__drv__max_slew": 2, - "finish__timing__drv__max_slew_limit": -0.244875, + "finish__timing__drv__max_slew": 8, + "finish__timing__drv__max_slew_limit": -0.0422885, "finish__timing__drv__setup_violation_count": 0, "finish__timing__setup__tns": 0, - "finish__timing__setup__ws": 1.45082, - "finish__timing__wns_percent_delay": 47.807032, - "finish_merge__cpu__total": 20.93, - "finish_merge__mem__peak": 2238368.0, - "finish_merge__runtime__total": "0:22.72", - "floorplan__cpu__total": 1.23, + "finish__timing__setup__ws": 1.76506, + "finish__timing__wns_percent_delay": 60.504576, + "finish_merge__cpu__total": 23.64, + "finish_merge__mem__peak": 2164896.0, + "finish_merge__runtime__total": "0:25.73", + "floorplan__cpu__total": 1.41, "floorplan__design__core__area": 10010000.0, "floorplan__design__die__area": 10278400.0, - "floorplan__design__instance__area": 5598740.0, + "floorplan__design__instance__area": 5598670.0, "floorplan__design__instance__area__macros": 5574790.0, - "floorplan__design__instance__area__stdcell": 23950.5, - "floorplan__design__instance__count": 2702, + "floorplan__design__instance__area__stdcell": 23875.4, + "floorplan__design__instance__count": 2766, "floorplan__design__instance__count__hold_buffer": 0, "floorplan__design__instance__count__macros": 6, "floorplan__design__instance__count__setup_buffer": 0, - "floorplan__design__instance__count__stdcell": 2696, - "floorplan__design__instance__utilization": 0.559318, - "floorplan__design__instance__utilization__stdcell": 0.00540014, + "floorplan__design__instance__count__stdcell": 2760, + "floorplan__design__instance__utilization": 0.55931, + "floorplan__design__instance__utilization__stdcell": 0.00538321, "floorplan__design__io": 145, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 10, - "floorplan__mem__peak": 143136.0, - "floorplan__power__internal__total": 0.00322504, - "floorplan__power__leakage__total": 1.12924e-08, - "floorplan__power__switching__total": 6.53673e-05, - "floorplan__power__total": 0.00329042, - "floorplan__runtime__total": "0:01.28", + "floorplan__mem__peak": 143320.0, + "floorplan__power__internal__total": 0.00322336, + "floorplan__power__leakage__total": 1.15405e-08, + "floorplan__power__switching__total": 6.56166e-05, + "floorplan__power__total": 0.00328899, + "floorplan__runtime__total": "0:01.47", "floorplan__timing__setup__tns": 0, "floorplan__timing__setup__ws": 2.05254, - "floorplan_io__cpu__total": 0.43, - "floorplan_io__mem__peak": 133748.0, - "floorplan_io__runtime__total": "0:00.49", - "floorplan_macro__cpu__total": 0.37, - "floorplan_macro__mem__peak": 133412.0, - "floorplan_macro__runtime__total": "0:00.49", - "floorplan_pdn__cpu__total": 5.26, - "floorplan_pdn__mem__peak": 351900.0, - "floorplan_pdn__runtime__total": "0:05.48", - "floorplan_tap__cpu__total": 3.03, - "floorplan_tap__mem__peak": 154928.0, - "floorplan_tap__runtime__total": "0:03.11", + "floorplan_io__cpu__total": 0.49, + "floorplan_io__mem__peak": 134192.0, + "floorplan_io__runtime__total": "0:00.55", + "floorplan_macro__cpu__total": 0.49, + "floorplan_macro__mem__peak": 133420.0, + "floorplan_macro__runtime__total": "0:00.56", + "floorplan_pdn__cpu__total": 5.87, + "floorplan_pdn__mem__peak": 351824.0, + "floorplan_pdn__runtime__total": "0:06.21", + "floorplan_tap__cpu__total": 0.69, + "floorplan_tap__mem__peak": 154964.0, + "floorplan_tap__runtime__total": "0:00.76", + "floorplan_tdms__cpu__total": 0.11, + "floorplan_tdms__mem__peak": 100156.0, + "floorplan_tdms__runtime__total": "0:00.14", "flow__errors__count": 0, "flow__warnings__count": 0, - "globalplace__cpu__total": 2536.81, + "globalplace__cpu__total": 1638.39, "globalplace__design__core__area": 10010000.0, "globalplace__design__die__area": 10278400.0, - "globalplace__design__instance__area": 5671520.0, + "globalplace__design__instance__area": 5671450.0, "globalplace__design__instance__area__macros": 5574790.0, - "globalplace__design__instance__area__stdcell": 96731.5, - "globalplace__design__instance__count": 60871, + "globalplace__design__instance__area__stdcell": 96656.5, + "globalplace__design__instance__count": 60935, "globalplace__design__instance__count__macros": 6, - "globalplace__design__instance__count__stdcell": 60865, - "globalplace__design__instance__utilization": 0.566588, - "globalplace__design__instance__utilization__stdcell": 0.0218102, + "globalplace__design__instance__count__stdcell": 60929, + "globalplace__design__instance__utilization": 0.566581, + "globalplace__design__instance__utilization__stdcell": 0.0217932, "globalplace__design__io": 145, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 0, - "globalplace__mem__peak": 1067452.0, - "globalplace__power__internal__total": 0.00323136, - "globalplace__power__leakage__total": 1.12924e-08, - "globalplace__power__switching__total": 0.00118407, - "globalplace__power__total": 0.00441545, - "globalplace__runtime__total": "3:27.43", - "globalplace__timing__setup__tns": -30.2684, - "globalplace__timing__setup__ws": -0.575628, - "globalplace_io__cpu__total": 0.74, - "globalplace_io__mem__peak": 206112.0, - "globalplace_io__runtime__total": "0:00.90", - "globalplace_skip_io__cpu__total": 877.1, - "globalplace_skip_io__mem__peak": 266048.0, - "globalplace_skip_io__runtime__total": "1:06.24", - "globalroute__antenna__violating__nets": 0, - "globalroute__antenna__violating__pins": 0, - "globalroute__antenna_diodes_count": 422, - "globalroute__clock__skew__hold": 0.28522, - "globalroute__clock__skew__setup": 0.28522, - "globalroute__cpu__total": 38.94, + "globalplace__mem__peak": 967516.0, + "globalplace__power__internal__total": 0.00322928, + "globalplace__power__leakage__total": 1.15405e-08, + "globalplace__power__switching__total": 0.00118422, + "globalplace__power__total": 0.00441352, + "globalplace__runtime__total": "2:14.68", + "globalplace__timing__setup__tns": 0, + "globalplace__timing__setup__ws": 0.18184, + "globalplace_io__cpu__total": 0.85, + "globalplace_io__mem__peak": 205992.0, + "globalplace_io__runtime__total": "0:00.99", + "globalplace_skip_io__cpu__total": 778.41, + "globalplace_skip_io__mem__peak": 268952.0, + "globalplace_skip_io__runtime__total": "1:09.27", + "globalroute__antenna__violating__nets": 2, + "globalroute__antenna__violating__pins": 2, + "globalroute__antenna_diodes_count": 481, + "globalroute__clock__skew__hold": 0.331503, + "globalroute__clock__skew__setup": 0.331503, + "globalroute__cpu__total": 46.02, "globalroute__design__core__area": 10010000.0, "globalroute__design__die__area": 10278400.0, - "globalroute__design__instance__area": 5689330.0, + "globalroute__design__instance__area": 5688080.0, "globalroute__design__instance__area__macros": 5574790.0, - "globalroute__design__instance__area__stdcell": 114542, - "globalroute__design__instance__count": 61714, + "globalroute__design__instance__area__stdcell": 113291, + "globalroute__design__instance__count": 61833, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 6, "globalroute__design__instance__count__setup_buffer": 0, - "globalroute__design__instance__count__stdcell": 61708, + "globalroute__design__instance__count__stdcell": 61827, "globalroute__design__instance__displacement__max": 0, "globalroute__design__instance__displacement__mean": 0, "globalroute__design__instance__displacement__total": 0, - "globalroute__design__instance__utilization": 0.568368, - "globalroute__design__instance__utilization__stdcell": 0.025826, + "globalroute__design__instance__utilization": 0.568243, + "globalroute__design__instance__utilization__stdcell": 0.0255439, "globalroute__design__io": 145, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 0, - "globalroute__mem__peak": 1371024.0, - "globalroute__power__internal__total": 0.00572942, - "globalroute__power__leakage__total": 1.72921e-08, - "globalroute__power__switching__total": 0.00407224, - "globalroute__power__total": 0.00980167, - "globalroute__route__wirelength__estimated": 791646, - "globalroute__runtime__total": "0:17.04", - "globalroute__timing__clock__slack": 1.445, + "globalroute__mem__peak": 1796848.0, + "globalroute__power__internal__total": 0.00578483, + "globalroute__power__leakage__total": 1.73313e-08, + "globalroute__power__switching__total": 0.00401565, + "globalroute__power__total": 0.0098005, + "globalroute__route__wirelength__estimated": 763790, + "globalroute__runtime__total": "0:23.73", + "globalroute__timing__clock__slack": 1.729, "globalroute__timing__drv__hold_violation_count": 0, "globalroute__timing__drv__max_cap": 0, - "globalroute__timing__drv__max_cap_limit": 0.0357156, + "globalroute__timing__drv__max_cap_limit": 0.0149337, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, "globalroute__timing__drv__max_slew": 0, - "globalroute__timing__drv__max_slew_limit": 0.0480581, + "globalroute__timing__drv__max_slew_limit": 0.0442957, "globalroute__timing__drv__setup_violation_count": 0, "globalroute__timing__setup__tns": 0, - "globalroute__timing__setup__ws": 1.44528, - "placeopt__cpu__total": 4.2, + "globalroute__timing__setup__ws": 1.7289, + "placeopt__cpu__total": 4.64, "placeopt__design__core__area": 10010000.0, "placeopt__design__die__area": 10278400.0, - "placeopt__design__instance__area": 5685700.0, + "placeopt__design__instance__area": 5684130.0, "placeopt__design__instance__area__macros": 5574790.0, - "placeopt__design__instance__area__stdcell": 110908, - "placeopt__design__instance__count": 61149, + "placeopt__design__instance__area__stdcell": 109337, + "placeopt__design__instance__count": 61202, "placeopt__design__instance__count__macros": 6, - "placeopt__design__instance__count__stdcell": 61143, - "placeopt__design__instance__utilization": 0.568005, - "placeopt__design__instance__utilization__stdcell": 0.0250065, + "placeopt__design__instance__count__stdcell": 61196, + "placeopt__design__instance__utilization": 0.567848, + "placeopt__design__instance__utilization__stdcell": 0.0246524, "placeopt__design__io": 145, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 0, - "placeopt__mem__peak": 794332.0, - "placeopt__power__internal__total": 0.00348736, - "placeopt__power__leakage__total": 1.6044e-08, - "placeopt__power__switching__total": 0.00136509, - "placeopt__power__total": 0.00485246, - "placeopt__runtime__total": "0:04.82", + "placeopt__mem__peak": 692108.0, + "placeopt__power__internal__total": 0.00345594, + "placeopt__power__leakage__total": 1.59908e-08, + "placeopt__power__switching__total": 0.00135278, + "placeopt__power__total": 0.00480874, + "placeopt__runtime__total": "0:05.17", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.10118, + "placeopt__timing__drv__max_cap_limit": 0.0959991, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.108739, + "placeopt__timing__drv__max_slew_limit": 0.103813, "placeopt__timing__drv__setup_violation_count": 0, "placeopt__timing__setup__tns": 0, - "placeopt__timing__setup__ws": 1.2694, + "placeopt__timing__setup__ws": 1.38853, "run__flow__design": "chameleon", - "run__flow__generate_date": "2024-09-19 14:28", + "run__flow__generate_date": "2024-10-02 08:50", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15759-g9136ba699", + "run__flow__openroad_version": "v2.0-16219-g56c3c86ba", "run__flow__platform": "sky130hd", "run__flow__platform__capacitance_units": "1pF", "run__flow__platform__current_units": "1mA", @@ -309,12 +318,12 @@ "run__flow__platform__voltage_units": "1v", "run__flow__platform_commit": "N/A", "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "99c18476-bd2a-4d02-813c-ce0fa16740a2", + "run__flow__uuid": "cd7d03f2-a2c6-413f-a61f-b820d4f2a7b3", "run__flow__variant": "base", - "synth__cpu__total": 3.79, - "synth__design__instance__area__stdcell": 23950.4704, - "synth__design__instance__count__stdcell": 2702.0, - "synth__mem__peak": 54784.0, - "synth__runtime__total": "0:03.90", - "total_time": "0:07:09.540000" + "synth__cpu__total": 4.44, + "synth__design__instance__area__stdcell": 23875.3984, + "synth__design__instance__count__stdcell": 2766.0, + "synth__mem__peak": 54272.0, + "synth__runtime__total": "0:04.68", + "total_time": "0:06:25.820000" } \ No newline at end of file diff --git a/flow/designs/sky130hd/chameleon/rules-base.json b/flow/designs/sky130hd/chameleon/rules-base.json index 0f2d352a95..84853b9c3e 100644 --- a/flow/designs/sky130hd/chameleon/rules-base.json +++ b/flow/designs/sky130hd/chameleon/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 27250.95, + "value": 27456.71, "compare": "<=" }, "constraints__clocks__count": { @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 6532276, + "value": 6536749, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 70095, + "value": 70314, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,11 +20,11 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 6095, + "value": 6114, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 6095, + "value": 6114, "compare": "<=" }, "globalroute__antenna_diodes_count": { @@ -32,7 +32,7 @@ "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 858932, + "value": 923401, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -44,7 +44,7 @@ "compare": "<=" }, "detailedroute__antenna_diodes_count": { - "value": 25, + "value": 45, "compare": "<=" }, "finish__timing__setup__ws": { @@ -52,11 +52,11 @@ "compare": ">=" }, "finish__design__instance__area": { - "value": 6533058, + "value": 6541223, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 3048, + "value": 3057, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { diff --git a/flow/designs/sky130hd/coyote_tc/config.mk b/flow/designs/sky130hd/coyote_tc/config.mk index e96665926e..82b6d20da2 100644 --- a/flow/designs/sky130hd/coyote_tc/config.mk +++ b/flow/designs/sky130hd/coyote_tc/config.mk @@ -7,7 +7,6 @@ export PLATFORM = sky130hd # export SYNTH_HIERARCHICAL = 1 -export RTLMP_FLOW = 1 export SKY130_IO_VERSION ?= v0.2.0 export OPENRAMS_DIR = ./platforms/sky130ram diff --git a/flow/designs/sky130hd/gcd/metadata-base-ok.json b/flow/designs/sky130hd/gcd/metadata-base-ok.json index aa2c85d330..47c8720ee4 100644 --- a/flow/designs/sky130hd/gcd/metadata-base-ok.json +++ b/flow/designs/sky130hd/gcd/metadata-base-ok.json @@ -3,149 +3,149 @@ "constraints__clocks__details": [ "core_clock: 2.5000" ], - "cts__clock__skew__hold": 0.00819267, - "cts__clock__skew__setup": 0.00819267, - "cts__cpu__total": 73.64, + "cts__clock__skew__hold": 0.0018465, + "cts__clock__skew__setup": 0.0018465, + "cts__cpu__total": 75.67, "cts__design__core__area": 6944.16, "cts__design__die__area": 7729.93, - "cts__design__instance__area": 3956.29, + "cts__design__instance__area": 4399.22, "cts__design__instance__area__macros": 0, - "cts__design__instance__area__stdcell": 3956.29, - "cts__design__instance__count": 569, + "cts__design__instance__area__stdcell": 4399.22, + "cts__design__instance__count": 603, "cts__design__instance__count__hold_buffer": 0, "cts__design__instance__count__macros": 0, - "cts__design__instance__count__setup_buffer": 22, - "cts__design__instance__count__stdcell": 569, - "cts__design__instance__displacement__max": 11.04, - "cts__design__instance__displacement__mean": 0.928, - "cts__design__instance__displacement__total": 528.355, - "cts__design__instance__utilization": 0.56973, - "cts__design__instance__utilization__stdcell": 0.56973, + "cts__design__instance__count__setup_buffer": 54, + "cts__design__instance__count__stdcell": 603, + "cts__design__instance__displacement__max": 27.14, + "cts__design__instance__displacement__mean": 2.577, + "cts__design__instance__displacement__total": 1554.49, + "cts__design__instance__utilization": 0.633514, + "cts__design__instance__utilization__stdcell": 0.633514, "cts__design__io": 54, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 1, - "cts__mem__peak": 823228.0, - "cts__power__internal__total": 0.00152552, - "cts__power__leakage__total": 1.6971e-09, - "cts__power__switching__total": 0.00107537, - "cts__power__total": 0.0026009, - "cts__route__wirelength__estimated": 7399.97, - "cts__runtime__total": "0:22.34", + "cts__mem__peak": 823260.0, + "cts__power__internal__total": 0.00171189, + "cts__power__leakage__total": 1.9303e-09, + "cts__power__switching__total": 0.00114852, + "cts__power__total": 0.00286041, + "cts__route__wirelength__estimated": 8762.78, + "cts__runtime__total": "0:22.96", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, - "cts__timing__drv__max_cap_limit": 0.746754, + "cts__timing__drv__max_cap_limit": 0.766235, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.701896, - "cts__timing__drv__setup_violation_count": 20, - "cts__timing__setup__tns": -5.47471, - "cts__timing__setup__ws": -0.661585, - "design__io__hpwl": 1217893, + "cts__timing__drv__max_slew_limit": 0.719174, + "cts__timing__drv__setup_violation_count": 24, + "cts__timing__setup__tns": -7.62674, + "cts__timing__setup__ws": -0.7025, + "design__io__hpwl": 1216100, "design__violations": 0, - "detailedplace__cpu__total": 0.7, + "detailedplace__cpu__total": 0.74, "detailedplace__design__core__area": 6944.16, "detailedplace__design__die__area": 7729.93, - "detailedplace__design__instance__area": 3479.59, + "detailedplace__design__instance__area": 3484.59, "detailedplace__design__instance__area__macros": 0, - "detailedplace__design__instance__area__stdcell": 3479.59, + "detailedplace__design__instance__area__stdcell": 3484.59, "detailedplace__design__instance__count": 540, "detailedplace__design__instance__count__macros": 0, "detailedplace__design__instance__count__stdcell": 540, - "detailedplace__design__instance__displacement__max": 6.566, - "detailedplace__design__instance__displacement__mean": 1.853, - "detailedplace__design__instance__displacement__total": 1001.1, - "detailedplace__design__instance__utilization": 0.501081, - "detailedplace__design__instance__utilization__stdcell": 0.501081, + "detailedplace__design__instance__displacement__max": 8.027, + "detailedplace__design__instance__displacement__mean": 1.897, + "detailedplace__design__instance__displacement__total": 1024.51, + "detailedplace__design__instance__utilization": 0.501802, + "detailedplace__design__instance__utilization__stdcell": 0.501802, "detailedplace__design__io": 54, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 0, - "detailedplace__mem__peak": 131868.0, - "detailedplace__power__internal__total": 0.0012064, - "detailedplace__power__leakage__total": 1.42024e-09, - "detailedplace__power__switching__total": 0.000775468, - "detailedplace__power__total": 0.00198187, - "detailedplace__route__wirelength__estimated": 6926.64, - "detailedplace__runtime__total": "0:00.75", + "detailedplace__mem__peak": 131860.0, + "detailedplace__power__internal__total": 0.0012072, + "detailedplace__power__leakage__total": 1.4158e-09, + "detailedplace__power__switching__total": 0.000768836, + "detailedplace__power__total": 0.00197604, + "detailedplace__route__wirelength__estimated": 6913.14, + "detailedplace__runtime__total": "0:00.81", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, "detailedplace__timing__drv__max_cap_limit": 0.828769, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.708971, + "detailedplace__timing__drv__max_slew_limit": 0.709453, "detailedplace__timing__drv__setup_violation_count": 31, - "detailedplace__timing__setup__tns": -5.83946, - "detailedplace__timing__setup__ws": -0.487272, + "detailedplace__timing__setup__tns": -6.0452, + "detailedplace__timing__setup__ws": -0.478817, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, "detailedroute__antenna_diodes_count": 0, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 10, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 391, - "detailedroute__route__drc_errors__iter:2": 146, - "detailedroute__route__drc_errors__iter:3": 176, - "detailedroute__route__drc_errors__iter:4": 24, - "detailedroute__route__drc_errors__iter:5": 4, + "detailedroute__route__drc_errors__iter:1": 319, + "detailedroute__route__drc_errors__iter:2": 207, + "detailedroute__route__drc_errors__iter:3": 342, + "detailedroute__route__drc_errors__iter:4": 84, + "detailedroute__route__drc_errors__iter:5": 2, "detailedroute__route__drc_errors__iter:6": 0, - "detailedroute__route__net": 527, + "detailedroute__route__net": 546, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 3410, + "detailedroute__route__vias": 3659, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 3410, - "detailedroute__route__wirelength": 10447, - "detailedroute__route__wirelength__iter:1": 10713, - "detailedroute__route__wirelength__iter:2": 10540, - "detailedroute__route__wirelength__iter:3": 10483, - "detailedroute__route__wirelength__iter:4": 10446, - "detailedroute__route__wirelength__iter:5": 10435, - "detailedroute__route__wirelength__iter:6": 10447, - "finish__clock__skew__hold": 0.00395617, - "finish__clock__skew__setup": 0.00395617, - "finish__cpu__total": 1.78, + "detailedroute__route__vias__singlecut": 3659, + "detailedroute__route__wirelength": 12293, + "detailedroute__route__wirelength__iter:1": 12311, + "detailedroute__route__wirelength__iter:2": 12336, + "detailedroute__route__wirelength__iter:3": 12328, + "detailedroute__route__wirelength__iter:4": 12294, + "detailedroute__route__wirelength__iter:5": 12294, + "detailedroute__route__wirelength__iter:6": 12293, + "finish__clock__skew__hold": 0.00909797, + "finish__clock__skew__setup": 0.00909797, + "finish__cpu__total": 2.04, "finish__design__core__area": 6944.16, "finish__design__die__area": 7729.93, - "finish__design__instance__area": 4347.92, + "finish__design__instance__area": 4570.63, "finish__design__instance__area__macros": 0, - "finish__design__instance__area__stdcell": 4347.92, - "finish__design__instance__count": 590, + "finish__design__instance__area__stdcell": 4570.63, + "finish__design__instance__count": 609, "finish__design__instance__count__macros": 0, - "finish__design__instance__count__stdcell": 590, - "finish__design__instance__utilization": 0.626126, - "finish__design__instance__utilization__stdcell": 0.626126, + "finish__design__instance__count__stdcell": 609, + "finish__design__instance__utilization": 0.658198, + "finish__design__instance__utilization__stdcell": 0.658198, "finish__design__io": 54, "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.79979, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.000131929, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.000457077, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.000309972, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.79954, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.000309972, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.000136618, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.000395085, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.00034658, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.7996, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.00034658, "finish__flow__errors__count": 0, "finish__flow__warnings__count": 1, - "finish__mem__peak": 199816.0, - "finish__power__internal__total": 0.00171143, - "finish__power__leakage__total": 1.89176e-09, - "finish__power__switching__total": 0.00124119, - "finish__power__total": 0.00295262, - "finish__runtime__total": "0:01.98", + "finish__mem__peak": 200268.0, + "finish__power__internal__total": 0.0017825, + "finish__power__leakage__total": 2.00114e-09, + "finish__power__switching__total": 0.00134929, + "finish__power__total": 0.00313179, + "finish__runtime__total": "0:02.21", "finish__timing__drv__hold_violation_count": 0, "finish__timing__drv__max_cap": 0, - "finish__timing__drv__max_cap_limit": 0.731197, + "finish__timing__drv__max_cap_limit": 0.669325, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, "finish__timing__drv__max_slew": 0, - "finish__timing__drv__max_slew_limit": 0.687944, - "finish__timing__drv__setup_violation_count": 28, - "finish__timing__setup__tns": -6.61675, - "finish__timing__setup__ws": -0.636337, - "finish__timing__wns_percent_delay": -24.1361, - "finish_merge__cpu__total": 1.56, - "finish_merge__mem__peak": 399932.0, - "finish_merge__runtime__total": "0:01.76", - "floorplan__cpu__total": 0.81, + "finish__timing__drv__max_slew_limit": 0.632417, + "finish__timing__drv__setup_violation_count": 38, + "finish__timing__setup__tns": -9.9381, + "finish__timing__setup__ws": -0.842953, + "finish__timing__wns_percent_delay": -29.651776, + "finish_merge__cpu__total": 1.77, + "finish_merge__mem__peak": 399308.0, + "finish_merge__runtime__total": "0:01.94", + "floorplan__cpu__total": 0.94, "floorplan__design__core__area": 6944.16, "floorplan__design__die__area": 7729.93, "floorplan__design__instance__area": 3004.13, @@ -161,32 +161,32 @@ "floorplan__design__io": 54, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 47, - "floorplan__mem__peak": 132576.0, + "floorplan__mem__peak": 132864.0, "floorplan__power__internal__total": 0.00110851, "floorplan__power__leakage__total": 1.28065e-09, "floorplan__power__switching__total": 0.000478548, "floorplan__power__total": 0.00158706, - "floorplan__runtime__total": "0:00.90", + "floorplan__runtime__total": "0:00.97", "floorplan__timing__setup__tns": -0.0409397, "floorplan__timing__setup__ws": -0.0243929, - "floorplan_io__cpu__total": 0.41, - "floorplan_io__mem__peak": 127836.0, - "floorplan_io__runtime__total": "0:00.46", - "floorplan_macro__cpu__total": 0.41, - "floorplan_macro__mem__peak": 127516.0, - "floorplan_macro__runtime__total": "0:00.46", - "floorplan_pdn__cpu__total": 0.36, - "floorplan_pdn__mem__peak": 130520.0, - "floorplan_pdn__runtime__total": "0:00.49", - "floorplan_tap__cpu__total": 0.41, - "floorplan_tap__mem__peak": 127440.0, - "floorplan_tap__runtime__total": "0:00.46", - "floorplan_tdms__cpu__total": 0.39, - "floorplan_tdms__mem__peak": 127768.0, - "floorplan_tdms__runtime__total": "0:00.46", + "floorplan_io__cpu__total": 0.45, + "floorplan_io__mem__peak": 127736.0, + "floorplan_io__runtime__total": "0:00.50", + "floorplan_macro__cpu__total": 0.44, + "floorplan_macro__mem__peak": 127740.0, + "floorplan_macro__runtime__total": "0:00.50", + "floorplan_pdn__cpu__total": 0.41, + "floorplan_pdn__mem__peak": 129816.0, + "floorplan_pdn__runtime__total": "0:00.53", + "floorplan_tap__cpu__total": 0.45, + "floorplan_tap__mem__peak": 127312.0, + "floorplan_tap__runtime__total": "0:00.51", + "floorplan_tdms__cpu__total": 0.46, + "floorplan_tdms__mem__peak": 127744.0, + "floorplan_tdms__runtime__total": "0:00.51", "flow__errors__count": 0, "flow__warnings__count": 0, - "globalplace__cpu__total": 10.84, + "globalplace__cpu__total": 11.46, "globalplace__design__core__area": 6944.16, "globalplace__design__die__area": 7729.93, "globalplace__design__instance__area": 3124.25, @@ -200,100 +200,100 @@ "globalplace__design__io": 54, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 0, - "globalplace__mem__peak": 765508.0, - "globalplace__power__internal__total": 0.00111103, + "globalplace__mem__peak": 775456.0, + "globalplace__power__internal__total": 0.00111102, "globalplace__power__leakage__total": 1.28065e-09, - "globalplace__power__switching__total": 0.000696419, - "globalplace__power__total": 0.00180745, - "globalplace__runtime__total": "0:02.41", - "globalplace__timing__setup__tns": -10.7412, - "globalplace__timing__setup__ws": -0.509605, + "globalplace__power__switching__total": 0.000696245, + "globalplace__power__total": 0.00180727, + "globalplace__runtime__total": "0:02.77", + "globalplace__timing__setup__tns": -10.8519, + "globalplace__timing__setup__ws": -0.511361, "globalplace_io__cpu__total": 0.43, - "globalplace_io__mem__peak": 128188.0, - "globalplace_io__runtime__total": "0:00.47", - "globalplace_skip_io__cpu__total": 5.79, - "globalplace_skip_io__mem__peak": 128576.0, - "globalplace_skip_io__runtime__total": "0:00.63", + "globalplace_io__mem__peak": 128528.0, + "globalplace_io__runtime__total": "0:00.51", + "globalplace_skip_io__cpu__total": 6.2, + "globalplace_skip_io__mem__peak": 128556.0, + "globalplace_skip_io__runtime__total": "0:00.67", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, "globalroute__antenna_diodes_count": 0, - "globalroute__clock__skew__hold": 0.00302217, - "globalroute__clock__skew__setup": 0.00302217, - "globalroute__cpu__total": 9.72, + "globalroute__clock__skew__hold": 0.00774617, + "globalroute__clock__skew__setup": 0.00774617, + "globalroute__cpu__total": 9.71, "globalroute__design__core__area": 6944.16, "globalroute__design__die__area": 7729.93, - "globalroute__design__instance__area": 4347.92, + "globalroute__design__instance__area": 4570.63, "globalroute__design__instance__area__macros": 0, - "globalroute__design__instance__area__stdcell": 4347.92, - "globalroute__design__instance__count": 590, + "globalroute__design__instance__area__stdcell": 4570.63, + "globalroute__design__instance__count": 609, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 0, - "globalroute__design__instance__count__setup_buffer": 19, - "globalroute__design__instance__count__stdcell": 590, - "globalroute__design__instance__displacement__max": 16.44, - "globalroute__design__instance__displacement__mean": 1.463, - "globalroute__design__instance__displacement__total": 863.18, - "globalroute__design__instance__utilization": 0.626126, - "globalroute__design__instance__utilization__stdcell": 0.626126, + "globalroute__design__instance__count__setup_buffer": 11, + "globalroute__design__instance__count__stdcell": 609, + "globalroute__design__instance__displacement__max": 24.48, + "globalroute__design__instance__displacement__mean": 1.765, + "globalroute__design__instance__displacement__total": 1075.12, + "globalroute__design__instance__utilization": 0.658198, + "globalroute__design__instance__utilization__stdcell": 0.658198, "globalroute__design__io": 54, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 1, - "globalroute__mem__peak": 790072.0, - "globalroute__power__internal__total": 0.00171476, - "globalroute__power__leakage__total": 1.89176e-09, - "globalroute__power__switching__total": 0.00141207, - "globalroute__power__total": 0.00312683, - "globalroute__route__wirelength__estimated": 8449.46, - "globalroute__runtime__total": "0:07.52", - "globalroute__timing__clock__slack": -0.754, + "globalroute__mem__peak": 790844.0, + "globalroute__power__internal__total": 0.00178511, + "globalroute__power__leakage__total": 2.00114e-09, + "globalroute__power__switching__total": 0.00150628, + "globalroute__power__total": 0.0032914, + "globalroute__route__wirelength__estimated": 10194.5, + "globalroute__runtime__total": "0:07.67", + "globalroute__timing__clock__slack": -0.928, "globalroute__timing__drv__hold_violation_count": 0, "globalroute__timing__drv__max_cap": 0, - "globalroute__timing__drv__max_cap_limit": 0.696959, + "globalroute__timing__drv__max_cap_limit": 0.689006, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, "globalroute__timing__drv__max_slew": 0, - "globalroute__timing__drv__max_slew_limit": 0.65734, - "globalroute__timing__drv__setup_violation_count": 41, - "globalroute__timing__setup__tns": -10.8684, - "globalroute__timing__setup__ws": -0.753563, - "placeopt__cpu__total": 0.98, + "globalroute__timing__drv__max_slew_limit": 0.650171, + "globalroute__timing__drv__setup_violation_count": 43, + "globalroute__timing__setup__tns": -13.4763, + "globalroute__timing__setup__ws": -0.927829, + "placeopt__cpu__total": 1.07, "placeopt__design__core__area": 6944.16, "placeopt__design__die__area": 7729.93, - "placeopt__design__instance__area": 3479.59, + "placeopt__design__instance__area": 3484.59, "placeopt__design__instance__area__macros": 0, - "placeopt__design__instance__area__stdcell": 3479.59, + "placeopt__design__instance__area__stdcell": 3484.59, "placeopt__design__instance__count": 540, "placeopt__design__instance__count__macros": 0, "placeopt__design__instance__count__stdcell": 540, - "placeopt__design__instance__utilization": 0.501081, - "placeopt__design__instance__utilization__stdcell": 0.501081, + "placeopt__design__instance__utilization": 0.501802, + "placeopt__design__instance__utilization__stdcell": 0.501802, "placeopt__design__io": 54, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 0, - "placeopt__mem__peak": 728064.0, - "placeopt__power__internal__total": 0.00120602, - "placeopt__power__leakage__total": 1.42024e-09, - "placeopt__power__switching__total": 0.000760782, - "placeopt__power__total": 0.00196681, - "placeopt__runtime__total": "0:01.55", + "placeopt__mem__peak": 726788.0, + "placeopt__power__internal__total": 0.00120718, + "placeopt__power__leakage__total": 1.4158e-09, + "placeopt__power__switching__total": 0.000761904, + "placeopt__power__total": 0.00196909, + "placeopt__runtime__total": "0:01.63", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.862857, + "placeopt__timing__drv__max_cap_limit": 0.86293, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.707995, + "placeopt__timing__drv__max_slew_limit": 0.706801, "placeopt__timing__drv__setup_violation_count": 31, - "placeopt__timing__setup__tns": -4.66097, - "placeopt__timing__setup__ws": -0.453943, + "placeopt__timing__setup__tns": -4.70054, + "placeopt__timing__setup__ws": -0.454219, "run__flow__design": "gcd", - "run__flow__generate_date": "2024-09-19 14:22", + "run__flow__generate_date": "2024-09-27 17:45", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15759-g9136ba699", + "run__flow__openroad_version": "v2.0-16089-gd06039e7d", "run__flow__platform": "sky130hd", "run__flow__platform__capacitance_units": "1pF", "run__flow__platform__current_units": "1mA", @@ -304,12 +304,12 @@ "run__flow__platform__voltage_units": "1v", "run__flow__platform_commit": "N/A", "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "727cee53-c1ee-4a34-b2a9-4df82f955e0f", + "run__flow__uuid": "361a4900-043b-4c97-a62e-5a650153536a", "run__flow__variant": "base", - "synth__cpu__total": 1.68, + "synth__cpu__total": 1.87, "synth__design__instance__area__stdcell": 2952.832, "synth__design__instance__count__stdcell": 391.0, - "synth__mem__peak": 47360.0, - "synth__runtime__total": "0:01.77", - "total_time": "0:00:44.410000" + "synth__mem__peak": 46592.0, + "synth__runtime__total": "0:01.97", + "total_time": "0:00:46.660000" } \ No newline at end of file diff --git a/flow/designs/sky130hd/gcd/rules-base.json b/flow/designs/sky130hd/gcd/rules-base.json index 1e40ddad49..29de86a2fd 100644 --- a/flow/designs/sky130hd/gcd/rules-base.json +++ b/flow/designs/sky130hd/gcd/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 3310.87, + "value": 3395.76, "compare": "<=" }, "constraints__clocks__count": { @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 3751, + "value": 4007, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 606, + "value": 621, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,11 +20,11 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 40, + "value": 59, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 40, + "value": 54, "compare": "<=" }, "globalroute__antenna_diodes_count": { @@ -32,7 +32,7 @@ "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 12001, + "value": 14137, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -48,15 +48,15 @@ "compare": "<=" }, "finish__timing__setup__ws": { - "value": -0.76, + "value": -0.96, "compare": ">=" }, "finish__design__instance__area": { - "value": 5000, + "value": 5256, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 29, + "value": 40, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { @@ -64,7 +64,7 @@ "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -38.96, + "value": -45.58, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/sky130hd/ibex/fastroute.tcl b/flow/designs/sky130hd/ibex/fastroute.tcl index 80a2ca181e..f4b95b5ae0 100644 --- a/flow/designs/sky130hd/ibex/fastroute.tcl +++ b/flow/designs/sky130hd/ibex/fastroute.tcl @@ -1,4 +1,4 @@ -set_global_routing_layer_adjustment $::env(MIN_ROUTING_LAYER)-$::env(MAX_ROUTING_LAYER) 0.3 +set_global_routing_layer_adjustment $::env(MIN_ROUTING_LAYER)-$::env(MAX_ROUTING_LAYER) 0.35 set_routing_layers -clock $::env(MIN_CLK_ROUTING_LAYER)-$::env(MAX_ROUTING_LAYER) set_routing_layers -signal $::env(MIN_ROUTING_LAYER)-$::env(MAX_ROUTING_LAYER) diff --git a/flow/designs/sky130hd/jpeg/config.mk b/flow/designs/sky130hd/jpeg/config.mk index 908eecb2a4..7857e38ad7 100644 --- a/flow/designs/sky130hd/jpeg/config.mk +++ b/flow/designs/sky130hd/jpeg/config.mk @@ -12,3 +12,4 @@ export TNS_END_PERCENT = 100 export FASTROUTE_TCL = ./designs/$(PLATFORM)/$(DESIGN_NICKNAME)/fastroute.tcl +export REMOVE_ABC_BUFFERS = 1 diff --git a/flow/designs/sky130hd/jpeg/metadata-base-ok.json b/flow/designs/sky130hd/jpeg/metadata-base-ok.json index 45812ccc88..d4faae393e 100644 --- a/flow/designs/sky130hd/jpeg/metadata-base-ok.json +++ b/flow/designs/sky130hd/jpeg/metadata-base-ok.json @@ -3,331 +3,305 @@ "constraints__clocks__details": [ "clk: 8.0000" ], - "cts__clock__skew__hold": 0.0977967, - "cts__clock__skew__setup": 0.0977967, - "cts__cpu__total": 81.61, - "cts__design__core__area": 960771, - "cts__design__die__area": 967754, - "cts__design__instance__area": 574717, + "cts__clock__skew__hold": 0.109872, + "cts__clock__skew__setup": 0.109872, + "cts__cpu__total": 51.1, + "cts__design__core__area": 965699, + "cts__design__die__area": 972827, + "cts__design__instance__area": 540354, "cts__design__instance__area__macros": 0, - "cts__design__instance__area__stdcell": 574717, - "cts__design__instance__count": 66366, + "cts__design__instance__area__stdcell": 540354, + "cts__design__instance__count": 65378, "cts__design__instance__count__hold_buffer": 0, "cts__design__instance__count__macros": 0, - "cts__design__instance__count__setup_buffer": 37, - "cts__design__instance__count__stdcell": 66366, - "cts__design__instance__displacement__max": 16.06, - "cts__design__instance__displacement__mean": 0.019, - "cts__design__instance__displacement__total": 1262.88, - "cts__design__instance__utilization": 0.598183, - "cts__design__instance__utilization__stdcell": 0.598183, + "cts__design__instance__count__setup_buffer": 0, + "cts__design__instance__count__stdcell": 65378, + "cts__design__instance__displacement__max": 0, + "cts__design__instance__displacement__mean": 0, + "cts__design__instance__displacement__total": 0, + "cts__design__instance__utilization": 0.559548, + "cts__design__instance__utilization__stdcell": 0.559548, "cts__design__io": 47, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 0, - "cts__mem__peak": 1098260.0, - "cts__power__internal__total": 0.418547, - "cts__power__leakage__total": 2.68808e-07, - "cts__power__switching__total": 0.576841, - "cts__power__total": 0.995389, - "cts__route__wirelength__estimated": 2212410.0, - "cts__runtime__total": "1:22.65", + "cts__mem__peak": 991392.0, + "cts__power__internal__total": 0.377681, + "cts__power__leakage__total": 2.48599e-07, + "cts__power__switching__total": 0.436043, + "cts__power__total": 0.813723, + "cts__route__wirelength__estimated": 1199090.0, + "cts__runtime__total": "0:51.90", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, - "cts__timing__drv__max_cap_limit": 0.115129, + "cts__timing__drv__max_cap_limit": 0.01612, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.088443, + "cts__timing__drv__max_slew_limit": 0.0391468, "cts__timing__drv__setup_violation_count": 0, - "cts__timing__setup__tns": -4.44089e-05, - "cts__timing__setup__ws": 0.00156675, - "design__io__hpwl": 9319334, + "cts__timing__setup__tns": 0, + "cts__timing__setup__ws": 0.00157652, + "design__io__hpwl": 8581924, "design__violations": 0, - "detailedplace__cpu__total": 63.44, - "detailedplace__design__core__area": 960771, - "detailedplace__design__die__area": 967754, - "detailedplace__design__instance__area": 555394, + "detailedplace__cpu__total": 65.79, + "detailedplace__design__core__area": 965699, + "detailedplace__design__die__area": 972827, + "detailedplace__design__instance__area": 521888, "detailedplace__design__instance__area__macros": 0, - "detailedplace__design__instance__area__stdcell": 555394, - "detailedplace__design__instance__count": 65340, + "detailedplace__design__instance__area__stdcell": 521888, + "detailedplace__design__instance__count": 64387, "detailedplace__design__instance__count__macros": 0, - "detailedplace__design__instance__count__stdcell": 65340, - "detailedplace__design__instance__displacement__max": 22.196, - "detailedplace__design__instance__displacement__mean": 2.858, - "detailedplace__design__instance__displacement__total": 186775, - "detailedplace__design__instance__utilization": 0.578071, - "detailedplace__design__instance__utilization__stdcell": 0.578071, + "detailedplace__design__instance__count__stdcell": 64387, + "detailedplace__design__instance__displacement__max": 15.577, + "detailedplace__design__instance__displacement__mean": 2.289, + "detailedplace__design__instance__displacement__total": 147439, + "detailedplace__design__instance__utilization": 0.540425, + "detailedplace__design__instance__utilization__stdcell": 0.540425, "detailedplace__design__io": 47, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 0, - "detailedplace__mem__peak": 425328.0, - "detailedplace__power__internal__total": 0.402794, - "detailedplace__power__leakage__total": 2.59347e-07, - "detailedplace__power__switching__total": 0.557451, - "detailedplace__power__total": 0.960245, - "detailedplace__route__wirelength__estimated": 2213300.0, - "detailedplace__runtime__total": "1:03.79", + "detailedplace__mem__peak": 424156.0, + "detailedplace__power__internal__total": 0.361791, + "detailedplace__power__leakage__total": 2.39495e-07, + "detailedplace__power__switching__total": 0.416728, + "detailedplace__power__total": 0.778519, + "detailedplace__route__wirelength__estimated": 1196140.0, + "detailedplace__runtime__total": "1:06.09", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, - "detailedplace__timing__drv__max_cap_limit": 0.117331, + "detailedplace__timing__drv__max_cap_limit": 0.0137956, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.0967888, - "detailedplace__timing__drv__setup_violation_count": 240, - "detailedplace__timing__setup__tns": -67.7704, - "detailedplace__timing__setup__ws": -1.11568, + "detailedplace__timing__drv__max_slew_limit": 0.0369406, + "detailedplace__timing__drv__setup_violation_count": 0, + "detailedplace__timing__setup__tns": 0, + "detailedplace__timing__setup__ws": 0.0190648, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, - "detailedroute__antenna_diodes_count": 389, + "detailedroute__antenna_diodes_count": 30, "detailedroute__flow__errors__count": 0, - "detailedroute__flow__warnings__count": 10, + "detailedroute__flow__warnings__count": 55, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 55747, - "detailedroute__route__drc_errors__iter:10": 119, - "detailedroute__route__drc_errors__iter:11": 41, - "detailedroute__route__drc_errors__iter:12": 24, - "detailedroute__route__drc_errors__iter:13": 15, - "detailedroute__route__drc_errors__iter:14": 6, - "detailedroute__route__drc_errors__iter:15": 5, - "detailedroute__route__drc_errors__iter:16": 4, - "detailedroute__route__drc_errors__iter:17": 3, - "detailedroute__route__drc_errors__iter:18": 3, - "detailedroute__route__drc_errors__iter:19": 3, - "detailedroute__route__drc_errors__iter:2": 32954, - "detailedroute__route__drc_errors__iter:20": 3, - "detailedroute__route__drc_errors__iter:21": 1, - "detailedroute__route__drc_errors__iter:22": 1, - "detailedroute__route__drc_errors__iter:23": 0, - "detailedroute__route__drc_errors__iter:3": 32147, - "detailedroute__route__drc_errors__iter:4": 10066, - "detailedroute__route__drc_errors__iter:5": 3290, - "detailedroute__route__drc_errors__iter:6": 1593, - "detailedroute__route__drc_errors__iter:7": 525, - "detailedroute__route__drc_errors__iter:8": 246, - "detailedroute__route__drc_errors__iter:9": 180, - "detailedroute__route__net": 64846, + "detailedroute__route__drc_errors__iter:1": 25291, + "detailedroute__route__drc_errors__iter:10": 6, + "detailedroute__route__drc_errors__iter:11": 0, + "detailedroute__route__drc_errors__iter:2": 10841, + "detailedroute__route__drc_errors__iter:3": 10234, + "detailedroute__route__drc_errors__iter:4": 1396, + "detailedroute__route__drc_errors__iter:5": 72, + "detailedroute__route__drc_errors__iter:6": 28, + "detailedroute__route__drc_errors__iter:7": 20, + "detailedroute__route__drc_errors__iter:8": 16, + "detailedroute__route__drc_errors__iter:9": 6, + "detailedroute__route__net": 64008, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 430160, + "detailedroute__route__vias": 352444, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 430160, - "detailedroute__route__wirelength": 2706705, - "detailedroute__route__wirelength__iter:1": 2726654, - "detailedroute__route__wirelength__iter:10": 2706578, - "detailedroute__route__wirelength__iter:11": 2706640, - "detailedroute__route__wirelength__iter:12": 2706655, - "detailedroute__route__wirelength__iter:13": 2706654, - "detailedroute__route__wirelength__iter:14": 2706660, - "detailedroute__route__wirelength__iter:15": 2706650, - "detailedroute__route__wirelength__iter:16": 2706662, - "detailedroute__route__wirelength__iter:17": 2706659, - "detailedroute__route__wirelength__iter:18": 2706659, - "detailedroute__route__wirelength__iter:19": 2706659, - "detailedroute__route__wirelength__iter:2": 2708133, - "detailedroute__route__wirelength__iter:20": 2706659, - "detailedroute__route__wirelength__iter:21": 2706700, - "detailedroute__route__wirelength__iter:22": 2706700, - "detailedroute__route__wirelength__iter:23": 2706705, - "detailedroute__route__wirelength__iter:3": 2704233, - "detailedroute__route__wirelength__iter:4": 2706275, - "detailedroute__route__wirelength__iter:5": 2706659, - "detailedroute__route__wirelength__iter:6": 2706523, - "detailedroute__route__wirelength__iter:7": 2706572, - "detailedroute__route__wirelength__iter:8": 2706600, - "detailedroute__route__wirelength__iter:9": 2706576, - "finish__clock__skew__hold": 0.155129, - "finish__clock__skew__setup": 0.155129, - "finish__cpu__total": 104.92, - "finish__design__core__area": 960771, - "finish__design__die__area": 967754, - "finish__design__instance__area": 582894, + "detailedroute__route__vias__singlecut": 352444, + "detailedroute__route__wirelength": 1374446, + "detailedroute__route__wirelength__iter:1": 1388795, + "detailedroute__route__wirelength__iter:10": 1374446, + "detailedroute__route__wirelength__iter:11": 1374446, + "detailedroute__route__wirelength__iter:2": 1377652, + "detailedroute__route__wirelength__iter:3": 1375932, + "detailedroute__route__wirelength__iter:4": 1374548, + "detailedroute__route__wirelength__iter:5": 1374450, + "detailedroute__route__wirelength__iter:6": 1374434, + "detailedroute__route__wirelength__iter:7": 1374439, + "detailedroute__route__wirelength__iter:8": 1374437, + "detailedroute__route__wirelength__iter:9": 1374446, + "finish__clock__skew__hold": 0.0990433, + "finish__clock__skew__setup": 0.0990433, + "finish__cpu__total": 83.61, + "finish__design__core__area": 965699, + "finish__design__die__area": 972827, + "finish__design__instance__area": 541327, "finish__design__instance__area__macros": 0, - "finish__design__instance__area__stdcell": 582894, - "finish__design__instance__count": 69513, + "finish__design__instance__area__stdcell": 541327, + "finish__design__instance__count": 65670, "finish__design__instance__count__macros": 0, - "finish__design__instance__count__stdcell": 69513, - "finish__design__instance__utilization": 0.606694, - "finish__design__instance__utilization__stdcell": 0.606694, + "finish__design__instance__count__stdcell": 65670, + "finish__design__instance__utilization": 0.560554, + "finish__design__instance__utilization__stdcell": 0.560554, "finish__design__io": 47, - "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.7973, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.00273323, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0124504, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0127007, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.78755, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0127007, + "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.79782, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.00229763, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.00949879, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0107043, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.7905, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0107043, "finish__flow__errors__count": 0, "finish__flow__warnings__count": 1, - "finish__mem__peak": 1070468.0, - "finish__power__internal__total": 0.419139, - "finish__power__leakage__total": 2.6901e-07, - "finish__power__switching__total": 0.632795, - "finish__power__total": 1.05193, - "finish__runtime__total": "1:46.13", + "finish__mem__peak": 998044.0, + "finish__power__internal__total": 0.375918, + "finish__power__leakage__total": 2.48807e-07, + "finish__power__switching__total": 0.432103, + "finish__power__total": 0.808022, + "finish__runtime__total": "1:24.59", "finish__timing__drv__hold_violation_count": 0, - "finish__timing__drv__max_cap": 3, - "finish__timing__drv__max_cap_limit": -0.191489, + "finish__timing__drv__max_cap": 0, + "finish__timing__drv__max_cap_limit": 0.0628469, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, - "finish__timing__drv__max_slew": 29, - "finish__timing__drv__max_slew_limit": -0.201889, - "finish__timing__drv__setup_violation_count": 49, - "finish__timing__setup__tns": -9.01378, - "finish__timing__setup__ws": -0.638225, - "finish__timing__wns_percent_delay": -6.583793, - "finish_merge__cpu__total": 7.74, - "finish_merge__mem__peak": 871460.0, - "finish_merge__runtime__total": "0:08.40", - "floorplan__cpu__total": 26.93, - "floorplan__design__core__area": 960771, - "floorplan__design__die__area": 967754, - "floorplan__design__instance__area": 481912, + "finish__timing__drv__max_slew": 0, + "finish__timing__drv__max_slew_limit": 0.0428902, + "finish__timing__drv__setup_violation_count": 0, + "finish__timing__setup__tns": 0, + "finish__timing__setup__ws": 0.274012, + "finish__timing__wns_percent_delay": 3.145015, + "finish_merge__cpu__total": 6.69, + "finish_merge__mem__peak": 850232.0, + "finish_merge__runtime__total": "0:07.24", + "floorplan__cpu__total": 29.43, + "floorplan__design__core__area": 965699, + "floorplan__design__die__area": 972827, + "floorplan__design__instance__area": 477036, "floorplan__design__instance__area__macros": 0, - "floorplan__design__instance__area__stdcell": 481912, - "floorplan__design__instance__count": 52438, - "floorplan__design__instance__count__hold_buffer": 0, + "floorplan__design__instance__area__stdcell": 477036, + "floorplan__design__instance__count": 51233, "floorplan__design__instance__count__macros": 0, - "floorplan__design__instance__count__setup_buffer": 0, - "floorplan__design__instance__count__stdcell": 52438, - "floorplan__design__instance__utilization": 0.501589, - "floorplan__design__instance__utilization__stdcell": 0.501589, + "floorplan__design__instance__count__stdcell": 51233, + "floorplan__design__instance__utilization": 0.49398, + "floorplan__design__instance__utilization__stdcell": 0.49398, "floorplan__design__io": 47, "floorplan__flow__errors__count": 0, - "floorplan__flow__warnings__count": 2, - "floorplan__mem__peak": 343592.0, - "floorplan__power__internal__total": 0.304901, - "floorplan__power__leakage__total": 2.42013e-07, - "floorplan__power__switching__total": 0.228177, - "floorplan__power__total": 0.533078, - "floorplan__runtime__total": "0:27.20", - "floorplan__timing__setup__tns": 0, - "floorplan__timing__setup__ws": 0.78145, - "floorplan_io__cpu__total": 0.88, - "floorplan_io__mem__peak": 218904.0, - "floorplan_io__runtime__total": "0:01.07", - "floorplan_macro__cpu__total": 0.95, - "floorplan_macro__mem__peak": 217772.0, - "floorplan_macro__runtime__total": "0:01.11", - "floorplan_pdn__cpu__total": 2.71, - "floorplan_pdn__mem__peak": 267200.0, - "floorplan_pdn__runtime__total": "0:03.01", - "floorplan_tap__cpu__total": 1.14, - "floorplan_tap__mem__peak": 192420.0, - "floorplan_tap__runtime__total": "0:01.36", + "floorplan__flow__warnings__count": 1, + "floorplan__mem__peak": 391064.0, + "floorplan__power__internal__total": 0.313698, + "floorplan__power__leakage__total": 2.33901e-07, + "floorplan__power__switching__total": 0.232373, + "floorplan__power__total": 0.546071, + "floorplan__runtime__total": "0:29.77", + "floorplan__timing__setup__tns": -70598.1, + "floorplan__timing__setup__ws": -69.6976, + "floorplan_io__cpu__total": 0.87, + "floorplan_io__mem__peak": 220544.0, + "floorplan_io__runtime__total": "0:01.03", + "floorplan_macro__cpu__total": 0.91, + "floorplan_macro__mem__peak": 218084.0, + "floorplan_macro__runtime__total": "0:01.04", + "floorplan_pdn__cpu__total": 2.58, + "floorplan_pdn__mem__peak": 266204.0, + "floorplan_pdn__runtime__total": "0:02.75", + "floorplan_tap__cpu__total": 0.81, + "floorplan_tap__mem__peak": 191740.0, + "floorplan_tap__runtime__total": "0:00.96", "floorplan_tdms__cpu__total": 0.91, - "floorplan_tdms__mem__peak": 217856.0, - "floorplan_tdms__runtime__total": "0:01.11", + "floorplan_tdms__mem__peak": 218112.0, + "floorplan_tdms__runtime__total": "0:01.04", "flow__errors__count": 0, "flow__warnings__count": 0, - "globalplace__cpu__total": 1226.16, - "globalplace__design__core__area": 960771, - "globalplace__design__die__area": 967754, - "globalplace__design__instance__area": 497991, + "globalplace__cpu__total": 1992.25, + "globalplace__design__core__area": 965699, + "globalplace__design__die__area": 972827, + "globalplace__design__instance__area": 493159, "globalplace__design__instance__area__macros": 0, - "globalplace__design__instance__area__stdcell": 497991, - "globalplace__design__instance__count": 65289, + "globalplace__design__instance__area__stdcell": 493159, + "globalplace__design__instance__count": 64119, "globalplace__design__instance__count__macros": 0, - "globalplace__design__instance__count__stdcell": 65289, - "globalplace__design__instance__utilization": 0.518324, - "globalplace__design__instance__utilization__stdcell": 0.518324, + "globalplace__design__instance__count__stdcell": 64119, + "globalplace__design__instance__utilization": 0.510676, + "globalplace__design__instance__utilization__stdcell": 0.510676, "globalplace__design__io": 47, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 0, - "globalplace__mem__peak": 1255260.0, - "globalplace__power__internal__total": 0.327545, - "globalplace__power__leakage__total": 2.42013e-07, - "globalplace__power__switching__total": 0.490237, - "globalplace__power__total": 0.817782, - "globalplace__runtime__total": "3:24.91", - "globalplace__timing__setup__tns": -11370.3, - "globalplace__timing__setup__ws": -11.6839, - "globalplace_io__cpu__total": 1.02, - "globalplace_io__mem__peak": 235240.0, - "globalplace_io__runtime__total": "0:01.17", - "globalplace_skip_io__cpu__total": 519.69, - "globalplace_skip_io__mem__peak": 310924.0, - "globalplace_skip_io__runtime__total": "0:21.33", - "globalroute__antenna__violating__nets": 1, - "globalroute__antenna__violating__pins": 1, - "globalroute__antenna_diodes_count": 2735, - "globalroute__clock__skew__hold": 0.151675, - "globalroute__clock__skew__setup": 0.151675, - "globalroute__cpu__total": 447.12, - "globalroute__design__core__area": 960771, - "globalroute__design__die__area": 967754, - "globalroute__design__instance__area": 581921, + "globalplace__mem__peak": 1186720.0, + "globalplace__power__internal__total": 0.339259, + "globalplace__power__leakage__total": 2.33901e-07, + "globalplace__power__switching__total": 0.38014, + "globalplace__power__total": 0.7194, + "globalplace__runtime__total": "4:21.09", + "globalplace__timing__setup__tns": -209917, + "globalplace__timing__setup__ws": -253.556, + "globalplace_io__cpu__total": 0.81, + "globalplace_io__mem__peak": 235292.0, + "globalplace_io__runtime__total": "0:01.07", + "globalplace_skip_io__cpu__total": 829.72, + "globalplace_skip_io__mem__peak": 310260.0, + "globalplace_skip_io__runtime__total": "0:31.05", + "globalroute__antenna__violating__nets": 0, + "globalroute__antenna__violating__pins": 0, + "globalroute__antenna_diodes_count": 234, + "globalroute__clock__skew__hold": 0.120395, + "globalroute__clock__skew__setup": 0.120395, + "globalroute__cpu__total": 485.51, + "globalroute__design__core__area": 965699, + "globalroute__design__die__area": 972827, + "globalroute__design__instance__area": 541252, "globalroute__design__instance__area__macros": 0, - "globalroute__design__instance__area__stdcell": 581921, - "globalroute__design__instance__count": 69124, + "globalroute__design__instance__area__stdcell": 541252, + "globalroute__design__instance__count": 65640, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 0, - "globalroute__design__instance__count__setup_buffer": 20, - "globalroute__design__instance__count__stdcell": 69124, - "globalroute__design__instance__displacement__max": 12.72, - "globalroute__design__instance__displacement__mean": 0.01, - "globalroute__design__instance__displacement__total": 668.46, - "globalroute__design__instance__utilization": 0.605681, - "globalroute__design__instance__utilization__stdcell": 0.605681, + "globalroute__design__instance__count__setup_buffer": 27, + "globalroute__design__instance__count__stdcell": 65640, + "globalroute__design__instance__displacement__max": 9.2, + "globalroute__design__instance__displacement__mean": 0.002, + "globalroute__design__instance__displacement__total": 162.06, + "globalroute__design__instance__utilization": 0.560477, + "globalroute__design__instance__utilization__stdcell": 0.560477, "globalroute__design__io": 47, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, - "globalroute__flow__warnings__count": 1, - "globalroute__mem__peak": 1732776.0, - "globalroute__power__internal__total": 0.431268, - "globalroute__power__leakage__total": 2.6901e-07, - "globalroute__power__switching__total": 0.670123, - "globalroute__power__total": 1.10139, - "globalroute__route__wirelength__estimated": 2218400.0, - "globalroute__runtime__total": "2:51.28", - "globalroute__timing__clock__slack": -0.709, + "globalroute__flow__warnings__count": 0, + "globalroute__mem__peak": 1433476.0, + "globalroute__power__internal__total": 0.389931, + "globalroute__power__leakage__total": 2.48807e-07, + "globalroute__power__switching__total": 0.510344, + "globalroute__power__total": 0.900275, + "globalroute__route__wirelength__estimated": 1200890.0, + "globalroute__runtime__total": "1:39.21", + "globalroute__timing__clock__slack": 0.029, "globalroute__timing__drv__hold_violation_count": 0, - "globalroute__timing__drv__max_cap": 1, - "globalroute__timing__drv__max_cap_limit": -0.0839924, + "globalroute__timing__drv__max_cap": 0, + "globalroute__timing__drv__max_cap_limit": 0.041982, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, - "globalroute__timing__drv__max_slew": 14, - "globalroute__timing__drv__max_slew_limit": -0.0820101, - "globalroute__timing__drv__setup_violation_count": 47, - "globalroute__timing__setup__tns": -8.93403, - "globalroute__timing__setup__ws": -0.708779, - "placeopt__cpu__total": 54.95, - "placeopt__design__core__area": 960771, - "placeopt__design__die__area": 967754, - "placeopt__design__instance__area": 555394, + "globalroute__timing__drv__max_slew": 0, + "globalroute__timing__drv__max_slew_limit": 0.0500722, + "globalroute__timing__drv__setup_violation_count": 0, + "globalroute__timing__setup__tns": 0, + "globalroute__timing__setup__ws": 0.0293445, + "placeopt__cpu__total": 52.53, + "placeopt__design__core__area": 965699, + "placeopt__design__die__area": 972827, + "placeopt__design__instance__area": 521888, "placeopt__design__instance__area__macros": 0, - "placeopt__design__instance__area__stdcell": 555394, - "placeopt__design__instance__count": 65340, + "placeopt__design__instance__area__stdcell": 521888, + "placeopt__design__instance__count": 64387, "placeopt__design__instance__count__macros": 0, - "placeopt__design__instance__count__stdcell": 65340, - "placeopt__design__instance__utilization": 0.578071, - "placeopt__design__instance__utilization__stdcell": 0.578071, + "placeopt__design__instance__count__stdcell": 64387, + "placeopt__design__instance__utilization": 0.540425, + "placeopt__design__instance__utilization__stdcell": 0.540425, "placeopt__design__io": 47, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 0, - "placeopt__mem__peak": 971340.0, - "placeopt__power__internal__total": 0.401763, - "placeopt__power__leakage__total": 2.59347e-07, - "placeopt__power__switching__total": 0.547673, - "placeopt__power__total": 0.949436, - "placeopt__runtime__total": "0:55.76", + "placeopt__mem__peak": 871692.0, + "placeopt__power__internal__total": 0.361801, + "placeopt__power__leakage__total": 2.39495e-07, + "placeopt__power__switching__total": 0.413409, + "placeopt__power__total": 0.77521, + "placeopt__runtime__total": "0:53.37", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.113531, + "placeopt__timing__drv__max_cap_limit": 0.0072053, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.0852821, - "placeopt__timing__drv__setup_violation_count": 221, - "placeopt__timing__setup__tns": -63.9603, - "placeopt__timing__setup__ws": -1.19003, + "placeopt__timing__drv__max_slew_limit": 0.0309118, + "placeopt__timing__drv__setup_violation_count": 2, + "placeopt__timing__setup__tns": -0.168848, + "placeopt__timing__setup__ws": -0.091422, "run__flow__design": "jpeg", - "run__flow__generate_date": "2024-09-19 15:04", + "run__flow__generate_date": "2024-09-28 19:52", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15759-g9136ba699", + "run__flow__openroad_version": "v2.0-16113-g7b5c8faf7", "run__flow__platform": "sky130hd", "run__flow__platform__capacitance_units": "1pF", "run__flow__platform__current_units": "1mA", @@ -338,12 +312,12 @@ "run__flow__platform__voltage_units": "1v", "run__flow__platform_commit": "N/A", "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "391ca473-685d-43c1-b8a0-ac9c5e63cff9", + "run__flow__uuid": "4aa0a06a-8e72-4ebb-8191-74f4dc223a99", "run__flow__variant": "base", - "synth__cpu__total": 141.47, - "synth__design__instance__area__stdcell": 481912.192, - "synth__design__instance__count__stdcell": 52438.0, - "synth__mem__peak": 734704.0, - "synth__runtime__total": "2:22.71", - "total_time": "0:14:52.990000" + "synth__cpu__total": 131.12, + "synth__design__instance__area__stdcell": 484442.1184, + "synth__design__instance__count__stdcell": 53182.0, + "synth__mem__peak": 740628.0, + "synth__runtime__total": "2:12.41", + "total_time": "0:13:44.610000" } \ No newline at end of file diff --git a/flow/designs/sky130hd/jpeg/rules-base.json b/flow/designs/sky130hd/jpeg/rules-base.json index ef0270237a..c028adb8d2 100644 --- a/flow/designs/sky130hd/jpeg/rules-base.json +++ b/flow/designs/sky130hd/jpeg/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 537426, + "value": 554199.03, "compare": "<=" }, "constraints__clocks__count": { @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 570163, + "value": 598574, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 66779, + "value": 73131, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,19 +20,19 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 5807, + "value": 6359, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 5807, + "value": 6359, "compare": "<=" }, "globalroute__antenna_diodes_count": { - "value": 3145, + "value": 269, "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 3112711, + "value": 1536290, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -44,19 +44,19 @@ "compare": "<=" }, "detailedroute__antenna_diodes_count": { - "value": 447, + "value": 34, "compare": "<=" }, "finish__timing__setup__ws": { - "value": -1.03, + "value": -0.12, "compare": ">=" }, "finish__design__instance__area": { - "value": 670328, + "value": 621399, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 2903, + "value": 3180, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { diff --git a/flow/designs/sky130hd/microwatt/config.mk b/flow/designs/sky130hd/microwatt/config.mk index 34f07e5438..243db9eb35 100644 --- a/flow/designs/sky130hd/microwatt/config.mk +++ b/flow/designs/sky130hd/microwatt/config.mk @@ -22,7 +22,6 @@ export ADDITIONAL_LEFS = $(wildcard $(microwatt_DIR)/lef/*.lef) export ADDITIONAL_LIBS = $(wildcard $(microwatt_DIR)/lib/*.lib) export SYNTH_HIERARCHICAL = 1 -export RTLMP_FLOW = 1 export RTLMP_BOUNDARY_WT = 0 export MACRO_PLACE_HALO = 100 100 diff --git a/flow/designs/sky130hd/microwatt/metadata-base-ok.json b/flow/designs/sky130hd/microwatt/metadata-base-ok.json index c2a097f81d..91918df91e 100644 --- a/flow/designs/sky130hd/microwatt/metadata-base-ok.json +++ b/flow/designs/sky130hd/microwatt/metadata-base-ok.json @@ -4,201 +4,186 @@ "ext_clk: 15.0000", "jtag_tck: 100.0000" ], - "cts__clock__skew__hold": 1.40032, - "cts__clock__skew__setup": 0.918113, - "cts__cpu__total": 275.77, + "cts__clock__skew__hold": 1.4291, + "cts__clock__skew__setup": 0.804605, + "cts__cpu__total": 241.08, "cts__design__core__area": 10143400.0, "cts__design__die__area": 10278400.0, - "cts__design__instance__area": 5011660.0, + "cts__design__instance__area": 5007280.0, "cts__design__instance__area__macros": 3926470.0, - "cts__design__instance__area__stdcell": 1085190.0, - "cts__design__instance__count": 172366, - "cts__design__instance__count__hold_buffer": 2884, + "cts__design__instance__area__stdcell": 1080810.0, + "cts__design__instance__count": 172821, + "cts__design__instance__count__hold_buffer": 3312, "cts__design__instance__count__macros": 6, - "cts__design__instance__count__setup_buffer": 49, - "cts__design__instance__count__stdcell": 172360, - "cts__design__instance__displacement__max": 166.424, - "cts__design__instance__displacement__mean": 0.081, - "cts__design__instance__displacement__total": 14106.9, - "cts__design__instance__utilization": 0.494081, - "cts__design__instance__utilization__stdcell": 0.174554, + "cts__design__instance__count__setup_buffer": 53, + "cts__design__instance__count__stdcell": 172815, + "cts__design__instance__displacement__max": 155.987, + "cts__design__instance__displacement__mean": 0.098, + "cts__design__instance__displacement__total": 17013, + "cts__design__instance__utilization": 0.493649, + "cts__design__instance__utilization__stdcell": 0.173849, "cts__design__io": 141, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 16, - "cts__mem__peak": 1781836.0, - "cts__power__internal__total": 0.0563269, - "cts__power__leakage__total": 4.12408e-07, - "cts__power__switching__total": 0.0342112, - "cts__power__total": 0.0905385, - "cts__route__wirelength__estimated": 7137880.0, - "cts__runtime__total": "4:37.50", + "cts__mem__peak": 2300064.0, + "cts__power__internal__total": 0.0565018, + "cts__power__leakage__total": 4.12798e-07, + "cts__power__switching__total": 0.0338865, + "cts__power__total": 0.0903887, + "cts__route__wirelength__estimated": 7154080.0, + "cts__runtime__total": "4:03.05", "cts__timing__drv__hold_violation_count": 0, - "cts__timing__drv__max_cap": 29, + "cts__timing__drv__max_cap": 32, "cts__timing__drv__max_cap_limit": -0.325044, - "cts__timing__drv__max_fanout": 224, + "cts__timing__drv__max_fanout": 213, "cts__timing__drv__max_fanout_limit": 10, "cts__timing__drv__max_slew": 1, "cts__timing__drv__max_slew_limit": -0.300655, - "cts__timing__drv__setup_violation_count": 333, - "cts__timing__setup__tns": -446.841, - "cts__timing__setup__ws": -2.38408, + "cts__timing__drv__setup_violation_count": 303, + "cts__timing__setup__tns": -344.727, + "cts__timing__setup__ws": -2.08659, "design__io__hpwl": 84465893, "design__violations": 0, - "detailedplace__cpu__total": 98.46, + "detailedplace__cpu__total": 87.7, "detailedplace__design__core__area": 10143400.0, "detailedplace__design__die__area": 10278400.0, - "detailedplace__design__instance__area": 4933160.0, + "detailedplace__design__instance__area": 4923880.0, "detailedplace__design__instance__area__macros": 3926470.0, - "detailedplace__design__instance__area__stdcell": 1006680.0, - "detailedplace__design__instance__count": 166863, + "detailedplace__design__instance__area__stdcell": 997404, + "detailedplace__design__instance__count": 166865, "detailedplace__design__instance__count__macros": 6, - "detailedplace__design__instance__count__stdcell": 166857, - "detailedplace__design__instance__displacement__max": 561.47, - "detailedplace__design__instance__displacement__mean": 1.66, - "detailedplace__design__instance__displacement__total": 277089, - "detailedplace__design__instance__utilization": 0.486341, - "detailedplace__design__instance__utilization__stdcell": 0.161926, + "detailedplace__design__instance__count__stdcell": 166859, + "detailedplace__design__instance__displacement__max": 572.541, + "detailedplace__design__instance__displacement__mean": 1.635, + "detailedplace__design__instance__displacement__total": 272966, + "detailedplace__design__instance__utilization": 0.485426, + "detailedplace__design__instance__utilization__stdcell": 0.160433, "detailedplace__design__io": 141, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 0, - "detailedplace__mem__peak": 956292.0, - "detailedplace__power__internal__total": 0.0358815, - "detailedplace__power__leakage__total": 3.70002e-07, - "detailedplace__power__switching__total": 0.0169221, - "detailedplace__power__total": 0.0528039, - "detailedplace__route__wirelength__estimated": 6983120.0, - "detailedplace__runtime__total": "1:39.23", - "detailedplace__timing__drv__hold_violation_count": 837, - "detailedplace__timing__drv__max_cap": 29, - "detailedplace__timing__drv__max_cap_limit": -0.58403, + "detailedplace__mem__peak": 1600484.0, + "detailedplace__power__internal__total": 0.0356748, + "detailedplace__power__leakage__total": 3.68055e-07, + "detailedplace__power__switching__total": 0.0167529, + "detailedplace__power__total": 0.052428, + "detailedplace__route__wirelength__estimated": 6990310.0, + "detailedplace__runtime__total": "1:29.26", + "detailedplace__timing__drv__hold_violation_count": 846, + "detailedplace__timing__drv__max_cap": 31, + "detailedplace__timing__drv__max_cap_limit": -0.549744, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 10, - "detailedplace__timing__drv__max_slew": 4, - "detailedplace__timing__drv__max_slew_limit": -0.00748727, - "detailedplace__timing__drv__setup_violation_count": 301, - "detailedplace__timing__setup__tns": -371.938, - "detailedplace__timing__setup__ws": -2.52485, + "detailedplace__timing__drv__max_slew": 0, + "detailedplace__timing__drv__max_slew_limit": 0.00672203, + "detailedplace__timing__drv__setup_violation_count": 303, + "detailedplace__timing__setup__tns": -393.006, + "detailedplace__timing__setup__ws": -2.59016, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, - "detailedroute__antenna_diodes_count": 722, + "detailedroute__antenna_diodes_count": 836, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 10, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 97500, - "detailedroute__route__drc_errors__iter:10": 305, - "detailedroute__route__drc_errors__iter:11": 173, - "detailedroute__route__drc_errors__iter:12": 42, - "detailedroute__route__drc_errors__iter:13": 14, - "detailedroute__route__drc_errors__iter:14": 14, - "detailedroute__route__drc_errors__iter:15": 14, - "detailedroute__route__drc_errors__iter:16": 12, - "detailedroute__route__drc_errors__iter:17": 10, - "detailedroute__route__drc_errors__iter:18": 10, - "detailedroute__route__drc_errors__iter:19": 8, - "detailedroute__route__drc_errors__iter:2": 61584, - "detailedroute__route__drc_errors__iter:20": 8, - "detailedroute__route__drc_errors__iter:21": 4, - "detailedroute__route__drc_errors__iter:22": 4, - "detailedroute__route__drc_errors__iter:23": 4, - "detailedroute__route__drc_errors__iter:24": 4, - "detailedroute__route__drc_errors__iter:25": 1, - "detailedroute__route__drc_errors__iter:26": 1, - "detailedroute__route__drc_errors__iter:27": 1, - "detailedroute__route__drc_errors__iter:28": 1, - "detailedroute__route__drc_errors__iter:29": 1, - "detailedroute__route__drc_errors__iter:3": 56425, - "detailedroute__route__drc_errors__iter:30": 1, - "detailedroute__route__drc_errors__iter:31": 1, - "detailedroute__route__drc_errors__iter:32": 0, - "detailedroute__route__drc_errors__iter:4": 12435, - "detailedroute__route__drc_errors__iter:5": 3411, - "detailedroute__route__drc_errors__iter:6": 1744, - "detailedroute__route__drc_errors__iter:7": 986, - "detailedroute__route__drc_errors__iter:8": 693, - "detailedroute__route__drc_errors__iter:9": 454, - "detailedroute__route__net": 90483, + "detailedroute__route__drc_errors__iter:1": 1217, + "detailedroute__route__drc_errors__iter:10": 5, + "detailedroute__route__drc_errors__iter:11": 0, + "detailedroute__route__drc_errors__iter:12": 0, + "detailedroute__route__drc_errors__iter:13": 19, + "detailedroute__route__drc_errors__iter:14": 13, + "detailedroute__route__drc_errors__iter:15": 4, + "detailedroute__route__drc_errors__iter:16": 1, + "detailedroute__route__drc_errors__iter:17": 1, + "detailedroute__route__drc_errors__iter:18": 3, + "detailedroute__route__drc_errors__iter:19": 0, + "detailedroute__route__drc_errors__iter:2": 214, + "detailedroute__route__drc_errors__iter:3": 153, + "detailedroute__route__drc_errors__iter:4": 10, + "detailedroute__route__drc_errors__iter:5": 0, + "detailedroute__route__drc_errors__iter:6": 99, + "detailedroute__route__drc_errors__iter:7": 56, + "detailedroute__route__drc_errors__iter:8": 50, + "detailedroute__route__drc_errors__iter:9": 50, + "detailedroute__route__net": 90930, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 740489, + "detailedroute__route__vias": 752587, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 740489, - "detailedroute__route__wirelength": 8440225, - "detailedroute__route__wirelength__iter:1": 8458650, - "detailedroute__route__wirelength__iter:10": 8439979, - "detailedroute__route__wirelength__iter:11": 8440024, - "detailedroute__route__wirelength__iter:12": 8440121, - "detailedroute__route__wirelength__iter:13": 8440099, - "detailedroute__route__wirelength__iter:14": 8440109, - "detailedroute__route__wirelength__iter:15": 8440102, - "detailedroute__route__wirelength__iter:16": 8440096, - "detailedroute__route__wirelength__iter:17": 8440090, - "detailedroute__route__wirelength__iter:18": 8440090, - "detailedroute__route__wirelength__iter:19": 8440098, - "detailedroute__route__wirelength__iter:2": 8442617, - "detailedroute__route__wirelength__iter:20": 8440098, - "detailedroute__route__wirelength__iter:21": 8440179, - "detailedroute__route__wirelength__iter:22": 8440180, - "detailedroute__route__wirelength__iter:23": 8440179, - "detailedroute__route__wirelength__iter:24": 8440179, - "detailedroute__route__wirelength__iter:25": 8440214, - "detailedroute__route__wirelength__iter:26": 8440214, - "detailedroute__route__wirelength__iter:27": 8440212, - "detailedroute__route__wirelength__iter:28": 8440213, - "detailedroute__route__wirelength__iter:29": 8440214, - "detailedroute__route__wirelength__iter:3": 8436694, - "detailedroute__route__wirelength__iter:30": 8440213, - "detailedroute__route__wirelength__iter:31": 8440213, - "detailedroute__route__wirelength__iter:32": 8440225, - "detailedroute__route__wirelength__iter:4": 8440417, - "detailedroute__route__wirelength__iter:5": 8440239, - "detailedroute__route__wirelength__iter:6": 8440156, - "detailedroute__route__wirelength__iter:7": 8439975, - "detailedroute__route__wirelength__iter:8": 8440053, - "detailedroute__route__wirelength__iter:9": 8440029, - "finish__clock__skew__hold": 1.33154, - "finish__clock__skew__setup": 0.911762, - "finish__cpu__total": 335.43, + "detailedroute__route__vias__singlecut": 752587, + "detailedroute__route__wirelength": 8443530, + "detailedroute__route__wirelength__iter:1": 8443763, + "detailedroute__route__wirelength__iter:10": 8443736, + "detailedroute__route__wirelength__iter:11": 8443732, + "detailedroute__route__wirelength__iter:12": 8444289, + "detailedroute__route__wirelength__iter:13": 8438324, + "detailedroute__route__wirelength__iter:14": 8438311, + "detailedroute__route__wirelength__iter:15": 8438255, + "detailedroute__route__wirelength__iter:16": 8438276, + "detailedroute__route__wirelength__iter:17": 8438277, + "detailedroute__route__wirelength__iter:18": 8438195, + "detailedroute__route__wirelength__iter:19": 8438185, + "detailedroute__route__wirelength__iter:2": 8443532, + "detailedroute__route__wirelength__iter:3": 8443479, + "detailedroute__route__wirelength__iter:4": 8443518, + "detailedroute__route__wirelength__iter:5": 8443530, + "detailedroute__route__wirelength__iter:6": 8443739, + "detailedroute__route__wirelength__iter:7": 8443816, + "detailedroute__route__wirelength__iter:8": 8443813, + "detailedroute__route__wirelength__iter:9": 8443813, + "finish__clock__skew__hold": 1.32108, + "finish__clock__skew__setup": 0.933864, + "finish__cpu__total": 313.28, "finish__design__core__area": 10143400.0, "finish__design__die__area": 10278400.0, - "finish__design__instance__area": 5027850.0, + "finish__design__instance__area": 5023930.0, "finish__design__instance__area__macros": 3926470.0, - "finish__design__instance__area__stdcell": 1101370.0, - "finish__design__instance__count": 178071, + "finish__design__instance__area__stdcell": 1097450.0, + "finish__design__instance__count": 178665, + "finish__design__instance__count__class:antenna_cell": 5780, + "finish__design__instance__count__class:buffer": 9635, + "finish__design__instance__count__class:clock_buffer": 2136, + "finish__design__instance__count__class:clock_inverter": 462, + "finish__design__instance__count__class:fill_cell": 679849, + "finish__design__instance__count__class:inverter": 1731, + "finish__design__instance__count__class:macro": 6, + "finish__design__instance__count__class:multi_input_combinational_cell": 55721, + "finish__design__instance__count__class:sequential_cell": 10257, + "finish__design__instance__count__class:tap_cell": 82890, + "finish__design__instance__count__class:timing_repair_buffer": 10047, "finish__design__instance__count__macros": 6, - "finish__design__instance__count__stdcell": 178065, - "finish__design__instance__utilization": 0.495676, - "finish__design__instance__utilization__stdcell": 0.177157, + "finish__design__instance__count__stdcell": 178659, + "finish__design__instance__utilization": 0.49529, + "finish__design__instance__utilization__stdcell": 0.176527, "finish__design__io": 141, "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.79996, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 3.51487e-05, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.000469294, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.000285385, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.79953, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.000285385, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 3.55236e-05, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.000261702, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.000529756, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.79974, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.000529756, "finish__flow__errors__count": 0, "finish__flow__warnings__count": 1, - "finish__mem__peak": 3298244.0, - "finish__power__internal__total": 0.0563526, - "finish__power__leakage__total": 4.1324e-07, - "finish__power__switching__total": 0.0335442, - "finish__power__total": 0.0898972, - "finish__runtime__total": "5:40.45", - "finish__timing__drv__hold_violation_count": 87, - "finish__timing__drv__max_cap": 103, - "finish__timing__drv__max_cap_limit": -1.59032, - "finish__timing__drv__max_fanout": 749, + "finish__mem__peak": 3320364.0, + "finish__power__internal__total": 0.0565445, + "finish__power__leakage__total": 4.1367e-07, + "finish__power__switching__total": 0.0338547, + "finish__power__total": 0.0903997, + "finish__runtime__total": "5:18.08", + "finish__timing__drv__hold_violation_count": 49, + "finish__timing__drv__max_cap": 132, + "finish__timing__drv__max_cap_limit": -1.65666, + "finish__timing__drv__max_fanout": 724, "finish__timing__drv__max_fanout_limit": 10, - "finish__timing__drv__max_slew": 147, - "finish__timing__drv__max_slew_limit": -0.105373, - "finish__timing__drv__setup_violation_count": 329, - "finish__timing__setup__tns": -491.503, - "finish__timing__setup__ws": -2.66197, - "finish__timing__wns_percent_delay": -13.107425, - "finish_merge__cpu__total": 41.58, - "finish_merge__mem__peak": 3161632.0, - "finish_merge__runtime__total": "0:44.39", - "floorplan__cpu__total": 216.91, + "finish__timing__drv__max_slew": 215, + "finish__timing__drv__max_slew_limit": -0.25296, + "finish__timing__drv__setup_violation_count": 318, + "finish__timing__setup__tns": -416.879, + "finish__timing__setup__ws": -2.32955, + "finish__timing__wns_percent_delay": -11.604505, + "finish_merge__cpu__total": 39.96, + "finish_merge__mem__peak": 3076016.0, + "finish_merge__runtime__total": "0:42.64", + "floorplan__cpu__total": 384.64, "floorplan__design__core__area": 10143400.0, "floorplan__design__die__area": 10278400.0, "floorplan__design__instance__area": 4615250.0, @@ -213,30 +198,33 @@ "floorplan__design__instance__utilization__stdcell": 0.11079, "floorplan__design__io": 141, "floorplan__flow__errors__count": 0, - "floorplan__flow__warnings__count": 5339, - "floorplan__mem__peak": 454944.0, + "floorplan__flow__warnings__count": 5263, + "floorplan__mem__peak": 455780.0, "floorplan__power__internal__total": 0.0331209, "floorplan__power__leakage__total": 2.93472e-07, "floorplan__power__switching__total": 0.00471089, "floorplan__power__total": 0.0378321, - "floorplan__runtime__total": "3:37.24", - "floorplan__timing__setup__tns": -2.97655, - "floorplan__timing__setup__ws": -0.141253, - "floorplan_io__cpu__total": 1.14, - "floorplan_io__mem__peak": 272900.0, - "floorplan_io__runtime__total": "0:01.40", - "floorplan_macro__cpu__total": 2000.49, - "floorplan_macro__mem__peak": 468252.0, - "floorplan_macro__runtime__total": "2:45.81", - "floorplan_pdn__cpu__total": 12.76, - "floorplan_pdn__mem__peak": 585552.0, - "floorplan_pdn__runtime__total": "0:13.32", - "floorplan_tap__cpu__total": 8.32, - "floorplan_tap__mem__peak": 262444.0, - "floorplan_tap__runtime__total": "0:08.56", + "floorplan__runtime__total": "6:25.07", + "floorplan__timing__setup__tns": -2.97663, + "floorplan__timing__setup__ws": -0.141255, + "floorplan_io__cpu__total": 1.12, + "floorplan_io__mem__peak": 272520.0, + "floorplan_io__runtime__total": "0:01.37", + "floorplan_macro__cpu__total": 1938.9, + "floorplan_macro__mem__peak": 464984.0, + "floorplan_macro__runtime__total": "2:34.08", + "floorplan_pdn__cpu__total": 11.99, + "floorplan_pdn__mem__peak": 585768.0, + "floorplan_pdn__runtime__total": "0:12.52", + "floorplan_tap__cpu__total": 1.33, + "floorplan_tap__mem__peak": 262092.0, + "floorplan_tap__runtime__total": "0:01.57", + "floorplan_tdms__cpu__total": 0.06, + "floorplan_tdms__mem__peak": 99888.0, + "floorplan_tdms__runtime__total": "0:00.19", "flow__errors__count": 0, "flow__warnings__count": 0, - "globalplace__cpu__total": 2249.08, + "globalplace__cpu__total": 2853.06, "globalplace__design__core__area": 10143400.0, "globalplace__design__die__area": 10278400.0, "globalplace__design__instance__area": 4718960.0, @@ -250,100 +238,100 @@ "globalplace__design__io": 141, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 0, - "globalplace__mem__peak": 1737752.0, - "globalplace__power__internal__total": 0.0332585, + "globalplace__mem__peak": 1644944.0, + "globalplace__power__internal__total": 0.0332554, "globalplace__power__leakage__total": 2.93472e-07, - "globalplace__power__switching__total": 0.0148304, - "globalplace__power__total": 0.0480892, - "globalplace__runtime__total": "6:17.19", - "globalplace__timing__setup__tns": -4738.11, - "globalplace__timing__setup__ws": -8.13503, - "globalplace_io__cpu__total": 1.74, - "globalplace_io__mem__peak": 381692.0, - "globalplace_io__runtime__total": "0:02.10", - "globalplace_skip_io__cpu__total": 709.16, - "globalplace_skip_io__mem__peak": 476412.0, - "globalplace_skip_io__runtime__total": "0:46.23", + "globalplace__power__switching__total": 0.0148004, + "globalplace__power__total": 0.0480561, + "globalplace__runtime__total": "6:56.89", + "globalplace__timing__setup__tns": -4936.08, + "globalplace__timing__setup__ws": -7.92144, + "globalplace_io__cpu__total": 1.66, + "globalplace_io__mem__peak": 381232.0, + "globalplace_io__runtime__total": "0:01.99", + "globalplace_skip_io__cpu__total": 690.58, + "globalplace_skip_io__mem__peak": 475500.0, + "globalplace_skip_io__runtime__total": "0:43.06", "globalroute__antenna__violating__nets": 8, - "globalroute__antenna__violating__pins": 10, - "globalroute__antenna_diodes_count": 4915, - "globalroute__clock__skew__hold": 1.19629, - "globalroute__clock__skew__setup": 0.913173, - "globalroute__cpu__total": 870.25, + "globalroute__antenna__violating__pins": 9, + "globalroute__antenna_diodes_count": 4944, + "globalroute__clock__skew__hold": 1.26318, + "globalroute__clock__skew__setup": 0.745455, + "globalroute__cpu__total": 756.07, "globalroute__design__core__area": 10143400.0, "globalroute__design__die__area": 10278400.0, - "globalroute__design__instance__area": 5026040.0, + "globalroute__design__instance__area": 5021840.0, "globalroute__design__instance__area__macros": 3926470.0, - "globalroute__design__instance__area__stdcell": 1099570.0, - "globalroute__design__instance__count": 177349, - "globalroute__design__instance__count__hold_buffer": 17, + "globalroute__design__instance__area__stdcell": 1095360.0, + "globalroute__design__instance__count": 177829, + "globalroute__design__instance__count__hold_buffer": 21, "globalroute__design__instance__count__macros": 6, - "globalroute__design__instance__count__setup_buffer": 20, - "globalroute__design__instance__count__stdcell": 177343, - "globalroute__design__instance__displacement__max": 11, - "globalroute__design__instance__displacement__mean": 0.002, - "globalroute__design__instance__displacement__total": 419.72, - "globalroute__design__instance__utilization": 0.495498, - "globalroute__design__instance__utilization__stdcell": 0.176866, + "globalroute__design__instance__count__setup_buffer": 9, + "globalroute__design__instance__count__stdcell": 177823, + "globalroute__design__instance__displacement__max": 9.16, + "globalroute__design__instance__displacement__mean": 0.001, + "globalroute__design__instance__displacement__total": 311.94, + "globalroute__design__instance__utilization": 0.495084, + "globalroute__design__instance__utilization__stdcell": 0.17619, "globalroute__design__io": 141, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 2, - "globalroute__mem__peak": 2941640.0, - "globalroute__power__internal__total": 0.0563967, - "globalroute__power__leakage__total": 4.1324e-07, - "globalroute__power__switching__total": 0.0357898, - "globalroute__power__total": 0.0921869, - "globalroute__route__wirelength__estimated": 7141110.0, - "globalroute__runtime__total": "7:06.20", + "globalroute__mem__peak": 3469760.0, + "globalroute__power__internal__total": 0.0565897, + "globalroute__power__leakage__total": 4.1367e-07, + "globalroute__power__switching__total": 0.0354724, + "globalroute__power__total": 0.0920625, + "globalroute__route__wirelength__estimated": 7156590.0, + "globalroute__runtime__total": "5:32.27", "globalroute__timing__clock__slack": "N/A", - "globalroute__timing__drv__hold_violation_count": 0, - "globalroute__timing__drv__max_cap": 38, - "globalroute__timing__drv__max_cap_limit": -1.10485, - "globalroute__timing__drv__max_fanout": 669, + "globalroute__timing__drv__hold_violation_count": 1, + "globalroute__timing__drv__max_cap": 52, + "globalroute__timing__drv__max_cap_limit": -0.997139, + "globalroute__timing__drv__max_fanout": 622, "globalroute__timing__drv__max_fanout_limit": 10, - "globalroute__timing__drv__max_slew": 53, - "globalroute__timing__drv__max_slew_limit": -0.0666779, - "globalroute__timing__drv__setup_violation_count": 328, - "globalroute__timing__setup__tns": -440.855, - "globalroute__timing__setup__ws": -2.32887, - "placeopt__cpu__total": 86.51, + "globalroute__timing__drv__max_slew": 31, + "globalroute__timing__drv__max_slew_limit": -0.0953252, + "globalroute__timing__drv__setup_violation_count": 306, + "globalroute__timing__setup__tns": -359.727, + "globalroute__timing__setup__ws": -2.1003, + "placeopt__cpu__total": 79.11, "placeopt__design__core__area": 10143400.0, "placeopt__design__die__area": 10278400.0, - "placeopt__design__instance__area": 4933160.0, + "placeopt__design__instance__area": 4923880.0, "placeopt__design__instance__area__macros": 3926470.0, - "placeopt__design__instance__area__stdcell": 1006680.0, - "placeopt__design__instance__count": 166863, + "placeopt__design__instance__area__stdcell": 997404, + "placeopt__design__instance__count": 166865, "placeopt__design__instance__count__macros": 6, - "placeopt__design__instance__count__stdcell": 166857, - "placeopt__design__instance__utilization": 0.486341, - "placeopt__design__instance__utilization__stdcell": 0.161926, + "placeopt__design__instance__count__stdcell": 166859, + "placeopt__design__instance__utilization": 0.485426, + "placeopt__design__instance__utilization__stdcell": 0.160433, "placeopt__design__io": 141, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 1, - "placeopt__mem__peak": 1201180.0, - "placeopt__power__internal__total": 0.0358834, - "placeopt__power__leakage__total": 3.70002e-07, - "placeopt__power__switching__total": 0.0171091, - "placeopt__power__total": 0.0529928, - "placeopt__runtime__total": "1:27.61", + "placeopt__mem__peak": 1097428.0, + "placeopt__power__internal__total": 0.0356764, + "placeopt__power__leakage__total": 3.68055e-07, + "placeopt__power__switching__total": 0.0169337, + "placeopt__power__total": 0.0526104, + "placeopt__runtime__total": "1:20.21", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 2, - "placeopt__timing__drv__hold_violation_count": 837, + "placeopt__timing__drv__hold_violation_count": 846, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.000211703, + "placeopt__timing__drv__max_cap_limit": 0.000470218, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 10, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.00314741, - "placeopt__timing__drv__setup_violation_count": 302, - "placeopt__timing__setup__tns": -380.051, - "placeopt__timing__setup__ws": -2.5456, + "placeopt__timing__drv__max_slew_limit": 0.00317835, + "placeopt__timing__drv__setup_violation_count": 303, + "placeopt__timing__setup__tns": -397.509, + "placeopt__timing__setup__ws": -2.622, "run__flow__design": "microwatt", - "run__flow__generate_date": "2024-09-23 22:49", + "run__flow__generate_date": "2024-10-03 22:30", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15825-ge21fbdf83", + "run__flow__openroad_version": "v2.0-16239-ge23ebb9f9", "run__flow__platform": "sky130hd", "run__flow__platform__capacitance_units": "1pF", "run__flow__platform__current_units": "1mA", @@ -354,12 +342,12 @@ "run__flow__platform__voltage_units": "1v", "run__flow__platform_commit": "N/A", "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "ac860582-4881-4cf7-8f32-16c606c1ed84", + "run__flow__uuid": "6ce10ae3-631f-4cc4-86ba-8f6dbf3c9e0e", "run__flow__variant": "base", - "synth__cpu__total": 297.81, + "synth__cpu__total": 297.32, "synth__design__instance__area__stdcell": 636527.9808, "synth__design__instance__count__stdcell": 76483.0, - "synth__mem__peak": 643792.0, - "synth__runtime__total": "5:00.85", - "total_time": "0:40:08.080000" + "synth__mem__peak": 645064.0, + "synth__runtime__total": "5:00.35", + "total_time": "0:40:22.600000" } \ No newline at end of file diff --git a/flow/designs/sky130hd/microwatt/rules-base.json b/flow/designs/sky130hd/microwatt/rules-base.json index a251c04bd1..2066731f10 100644 --- a/flow/designs/sky130hd/microwatt/rules-base.json +++ b/flow/designs/sky130hd/microwatt/rules-base.json @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 5455002, + "value": 5661289, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 173812, + "value": 191879, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,19 +20,19 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 15114, + "value": 16685, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 15114, + "value": 16685, "compare": "<=" }, "globalroute__antenna_diodes_count": { - "value": 5652, + "value": 5686, "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 9706259, + "value": 9705104, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -44,27 +44,27 @@ "compare": "<=" }, "detailedroute__antenna_diodes_count": { - "value": 830, + "value": 961, "compare": "<=" }, "finish__timing__setup__ws": { - "value": -2.68, + "value": -3.07, "compare": ">=" }, "finish__design__instance__area": { - "value": 5514388, + "value": 5775058, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 7557, + "value": 8343, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { - "value": 122, + "value": 134, "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -25.72, + "value": -22.65, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/sky130hd/riscv32i/metadata-base-ok.json b/flow/designs/sky130hd/riscv32i/metadata-base-ok.json index b8ac52f9d8..08e547a595 100644 --- a/flow/designs/sky130hd/riscv32i/metadata-base-ok.json +++ b/flow/designs/sky130hd/riscv32i/metadata-base-ok.json @@ -3,185 +3,179 @@ "constraints__clocks__details": [ "clk: 6.0000" ], - "cts__clock__skew__hold": 0.0704971, - "cts__clock__skew__setup": 0.0704971, - "cts__cpu__total": 79.84, + "cts__clock__skew__hold": 0.0759623, + "cts__clock__skew__setup": 0.0759623, + "cts__cpu__total": 92.98, "cts__design__core__area": 137662, "cts__design__die__area": 140475, - "cts__design__instance__area": 77828.4, + "cts__design__instance__area": 77804.6, "cts__design__instance__area__macros": 0, - "cts__design__instance__area__stdcell": 77828.4, - "cts__design__instance__count": 8750, + "cts__design__instance__area__stdcell": 77804.6, + "cts__design__instance__count": 8744, "cts__design__instance__count__hold_buffer": 0, "cts__design__instance__count__macros": 0, - "cts__design__instance__count__setup_buffer": 70, - "cts__design__instance__count__stdcell": 8750, - "cts__design__instance__displacement__max": 22.08, - "cts__design__instance__displacement__mean": 0.224, - "cts__design__instance__displacement__total": 1962.51, - "cts__design__instance__utilization": 0.565358, - "cts__design__instance__utilization__stdcell": 0.565358, + "cts__design__instance__count__setup_buffer": 64, + "cts__design__instance__count__stdcell": 8744, + "cts__design__instance__displacement__max": 15.985, + "cts__design__instance__displacement__mean": 0.198, + "cts__design__instance__displacement__total": 1738.64, + "cts__design__instance__utilization": 0.565186, + "cts__design__instance__utilization__stdcell": 0.565186, "cts__design__io": 165, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 1, - "cts__mem__peak": 852656.0, - "cts__power__internal__total": 0.0152592, - "cts__power__leakage__total": 3.05667e-08, - "cts__power__switching__total": 0.00807124, - "cts__power__total": 0.0233305, - "cts__route__wirelength__estimated": 194207, - "cts__runtime__total": "1:20.73", + "cts__mem__peak": 844716.0, + "cts__power__internal__total": 0.0152949, + "cts__power__leakage__total": 3.0514e-08, + "cts__power__switching__total": 0.00810874, + "cts__power__total": 0.0234037, + "cts__route__wirelength__estimated": 192908, + "cts__runtime__total": "1:34.57", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, - "cts__timing__drv__max_cap_limit": 0.10034, + "cts__timing__drv__max_cap_limit": 0.0310903, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.045505, - "cts__timing__drv__setup_violation_count": 23, - "cts__timing__setup__tns": -12.1253, - "cts__timing__setup__ws": -0.873416, + "cts__timing__drv__max_slew_limit": 0.0050678, + "cts__timing__drv__setup_violation_count": 26, + "cts__timing__setup__tns": -10.9345, + "cts__timing__setup__ws": -0.876146, "design__io__hpwl": 30156592, "design__violations": 0, - "detailedplace__cpu__total": 10.82, + "detailedplace__cpu__total": 10.4, "detailedplace__design__core__area": 137662, "detailedplace__design__die__area": 140475, - "detailedplace__design__instance__area": 72982.5, + "detailedplace__design__instance__area": 72893.7, "detailedplace__design__instance__area__macros": 0, - "detailedplace__design__instance__area__stdcell": 72982.5, - "detailedplace__design__instance__count": 8465, + "detailedplace__design__instance__area__stdcell": 72893.7, + "detailedplace__design__instance__count": 8462, "detailedplace__design__instance__count__macros": 0, - "detailedplace__design__instance__count__stdcell": 8465, - "detailedplace__design__instance__displacement__max": 32.373, - "detailedplace__design__instance__displacement__mean": 2.496, - "detailedplace__design__instance__displacement__total": 21133.3, - "detailedplace__design__instance__utilization": 0.530157, - "detailedplace__design__instance__utilization__stdcell": 0.530157, + "detailedplace__design__instance__count__stdcell": 8462, + "detailedplace__design__instance__displacement__max": 32.137, + "detailedplace__design__instance__displacement__mean": 2.512, + "detailedplace__design__instance__displacement__total": 21258, + "detailedplace__design__instance__utilization": 0.529512, + "detailedplace__design__instance__utilization__stdcell": 0.529512, "detailedplace__design__io": 165, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 0, - "detailedplace__mem__peak": 178492.0, - "detailedplace__power__internal__total": 0.0110411, - "detailedplace__power__leakage__total": 2.81865e-08, - "detailedplace__power__switching__total": 0.00479897, - "detailedplace__power__total": 0.0158401, - "detailedplace__route__wirelength__estimated": 185702, - "detailedplace__runtime__total": "0:10.93", + "detailedplace__mem__peak": 170664.0, + "detailedplace__power__internal__total": 0.0110398, + "detailedplace__power__leakage__total": 2.81848e-08, + "detailedplace__power__switching__total": 0.00479338, + "detailedplace__power__total": 0.0158332, + "detailedplace__route__wirelength__estimated": 184953, + "detailedplace__runtime__total": "0:10.52", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, - "detailedplace__timing__drv__max_cap_limit": 0.0941636, + "detailedplace__timing__drv__max_cap_limit": 0.103902, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.0470171, - "detailedplace__timing__drv__setup_violation_count": 328, - "detailedplace__timing__setup__tns": -98.7521, - "detailedplace__timing__setup__ws": -0.857312, + "detailedplace__timing__drv__max_slew_limit": 0.0200692, + "detailedplace__timing__drv__setup_violation_count": 362, + "detailedplace__timing__setup__tns": -111.644, + "detailedplace__timing__setup__ws": -0.890642, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, - "detailedroute__antenna_diodes_count": 6, + "detailedroute__antenna_diodes_count": 7, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 11, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 10450, - "detailedroute__route__drc_errors__iter:10": 187, - "detailedroute__route__drc_errors__iter:11": 71, - "detailedroute__route__drc_errors__iter:12": 40, - "detailedroute__route__drc_errors__iter:13": 39, - "detailedroute__route__drc_errors__iter:14": 33, - "detailedroute__route__drc_errors__iter:15": 32, - "detailedroute__route__drc_errors__iter:16": 6, - "detailedroute__route__drc_errors__iter:17": 6, - "detailedroute__route__drc_errors__iter:18": 6, - "detailedroute__route__drc_errors__iter:19": 6, - "detailedroute__route__drc_errors__iter:2": 7331, - "detailedroute__route__drc_errors__iter:20": 4, - "detailedroute__route__drc_errors__iter:21": 4, - "detailedroute__route__drc_errors__iter:22": 3, - "detailedroute__route__drc_errors__iter:23": 3, - "detailedroute__route__drc_errors__iter:24": 0, - "detailedroute__route__drc_errors__iter:3": 6966, - "detailedroute__route__drc_errors__iter:4": 1942, - "detailedroute__route__drc_errors__iter:5": 652, - "detailedroute__route__drc_errors__iter:6": 466, - "detailedroute__route__drc_errors__iter:7": 348, - "detailedroute__route__drc_errors__iter:8": 250, - "detailedroute__route__drc_errors__iter:9": 187, - "detailedroute__route__net": 7103, + "detailedroute__route__drc_errors__iter:1": 10177, + "detailedroute__route__drc_errors__iter:10": 119, + "detailedroute__route__drc_errors__iter:11": 37, + "detailedroute__route__drc_errors__iter:12": 19, + "detailedroute__route__drc_errors__iter:13": 7, + "detailedroute__route__drc_errors__iter:14": 7, + "detailedroute__route__drc_errors__iter:15": 7, + "detailedroute__route__drc_errors__iter:16": 7, + "detailedroute__route__drc_errors__iter:17": 5, + "detailedroute__route__drc_errors__iter:18": 5, + "detailedroute__route__drc_errors__iter:19": 2, + "detailedroute__route__drc_errors__iter:2": 7110, + "detailedroute__route__drc_errors__iter:20": 2, + "detailedroute__route__drc_errors__iter:21": 0, + "detailedroute__route__drc_errors__iter:3": 6980, + "detailedroute__route__drc_errors__iter:4": 1933, + "detailedroute__route__drc_errors__iter:5": 772, + "detailedroute__route__drc_errors__iter:6": 430, + "detailedroute__route__drc_errors__iter:7": 300, + "detailedroute__route__drc_errors__iter:8": 237, + "detailedroute__route__drc_errors__iter:9": 121, + "detailedroute__route__net": 7076, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 63260, + "detailedroute__route__vias": 63149, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 63260, - "detailedroute__route__wirelength": 294375, - "detailedroute__route__wirelength__iter:1": 298686, - "detailedroute__route__wirelength__iter:10": 294309, - "detailedroute__route__wirelength__iter:11": 294326, - "detailedroute__route__wirelength__iter:12": 294345, - "detailedroute__route__wirelength__iter:13": 294348, - "detailedroute__route__wirelength__iter:14": 294363, - "detailedroute__route__wirelength__iter:15": 294361, - "detailedroute__route__wirelength__iter:16": 294374, - "detailedroute__route__wirelength__iter:17": 294374, - "detailedroute__route__wirelength__iter:18": 294374, - "detailedroute__route__wirelength__iter:19": 294374, - "detailedroute__route__wirelength__iter:2": 295273, - "detailedroute__route__wirelength__iter:20": 294375, - "detailedroute__route__wirelength__iter:21": 294377, - "detailedroute__route__wirelength__iter:22": 294375, - "detailedroute__route__wirelength__iter:23": 294375, - "detailedroute__route__wirelength__iter:24": 294375, - "detailedroute__route__wirelength__iter:3": 294972, - "detailedroute__route__wirelength__iter:4": 294426, - "detailedroute__route__wirelength__iter:5": 294430, - "detailedroute__route__wirelength__iter:6": 294366, - "detailedroute__route__wirelength__iter:7": 294358, - "detailedroute__route__wirelength__iter:8": 294338, - "detailedroute__route__wirelength__iter:9": 294309, - "finish__clock__skew__hold": 0.0768111, - "finish__clock__skew__setup": 0.0768111, - "finish__cpu__total": 24.66, + "detailedroute__route__vias__singlecut": 63149, + "detailedroute__route__wirelength": 293612, + "detailedroute__route__wirelength__iter:1": 297718, + "detailedroute__route__wirelength__iter:10": 293557, + "detailedroute__route__wirelength__iter:11": 293577, + "detailedroute__route__wirelength__iter:12": 293567, + "detailedroute__route__wirelength__iter:13": 293575, + "detailedroute__route__wirelength__iter:14": 293575, + "detailedroute__route__wirelength__iter:15": 293575, + "detailedroute__route__wirelength__iter:16": 293572, + "detailedroute__route__wirelength__iter:17": 293598, + "detailedroute__route__wirelength__iter:18": 293598, + "detailedroute__route__wirelength__iter:19": 293602, + "detailedroute__route__wirelength__iter:2": 295113, + "detailedroute__route__wirelength__iter:20": 293602, + "detailedroute__route__wirelength__iter:21": 293612, + "detailedroute__route__wirelength__iter:3": 294304, + "detailedroute__route__wirelength__iter:4": 293531, + "detailedroute__route__wirelength__iter:5": 293494, + "detailedroute__route__wirelength__iter:6": 293554, + "detailedroute__route__wirelength__iter:7": 293613, + "detailedroute__route__wirelength__iter:8": 293579, + "detailedroute__route__wirelength__iter:9": 293558, + "finish__clock__skew__hold": 0.0784894, + "finish__clock__skew__setup": 0.0784894, + "finish__cpu__total": 19.09, "finish__design__core__area": 137662, "finish__design__die__area": 140475, - "finish__design__instance__area": 79055.8, + "finish__design__instance__area": 78645.4, "finish__design__instance__area__macros": 0, - "finish__design__instance__area__stdcell": 79055.8, - "finish__design__instance__count": 8839, + "finish__design__instance__area__stdcell": 78645.4, + "finish__design__instance__count": 8816, "finish__design__instance__count__macros": 0, - "finish__design__instance__count__stdcell": 8839, - "finish__design__instance__utilization": 0.574275, - "finish__design__instance__utilization__stdcell": 0.574275, + "finish__design__instance__count__stdcell": 8816, + "finish__design__instance__utilization": 0.571294, + "finish__design__instance__utilization__stdcell": 0.571294, "finish__design__io": 165, - "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.79937, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.000446059, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.00109057, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.000852487, + "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.79938, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.000449094, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.00109386, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.000863914, "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.79891, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.000852487, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.000863914, "finish__flow__errors__count": 0, "finish__flow__warnings__count": 0, - "finish__mem__peak": 410400.0, - "finish__power__internal__total": 0.0154861, - "finish__power__leakage__total": 3.09781e-08, - "finish__power__switching__total": 0.00879783, - "finish__power__total": 0.024284, - "finish__runtime__total": "0:24.95", + "finish__mem__peak": 414472.0, + "finish__power__internal__total": 0.0154351, + "finish__power__leakage__total": 3.08483e-08, + "finish__power__switching__total": 0.00874495, + "finish__power__total": 0.02418, + "finish__runtime__total": "0:19.40", "finish__timing__drv__hold_violation_count": 0, - "finish__timing__drv__max_cap": 1, - "finish__timing__drv__max_cap_limit": -0.0169688, + "finish__timing__drv__max_cap": 2, + "finish__timing__drv__max_cap_limit": -0.0752354, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, - "finish__timing__drv__max_slew": 51, - "finish__timing__drv__max_slew_limit": -0.033106, - "finish__timing__drv__setup_violation_count": 91, - "finish__timing__setup__tns": -22.8566, - "finish__timing__setup__ws": -1.04979, - "finish__timing__wns_percent_delay": -17.945913, - "finish_merge__cpu__total": 2.37, - "finish_merge__mem__peak": 460592.0, - "finish_merge__runtime__total": "0:02.67", - "floorplan__cpu__total": 6.73, + "finish__timing__drv__max_slew": 114, + "finish__timing__drv__max_slew_limit": -0.0778384, + "finish__timing__drv__setup_violation_count": 42, + "finish__timing__setup__tns": -15.6468, + "finish__timing__setup__ws": -1.12389, + "finish__timing__wns_percent_delay": -18.972299, + "finish_merge__cpu__total": 1.86, + "finish_merge__mem__peak": 461860.0, + "finish_merge__runtime__total": "0:02.11", + "floorplan__cpu__total": 5.11, "floorplan__design__core__area": 137662, "floorplan__design__die__area": 140475, "floorplan__design__instance__area": 59271.8, @@ -195,32 +189,32 @@ "floorplan__design__io": 165, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 1, - "floorplan__mem__peak": 167520.0, + "floorplan__mem__peak": 160412.0, "floorplan__power__internal__total": 0.0103104, "floorplan__power__leakage__total": 2.24159e-08, "floorplan__power__switching__total": 0.00224145, "floorplan__power__total": 0.0125519, - "floorplan__runtime__total": "0:06.86", + "floorplan__runtime__total": "0:05.18", "floorplan__timing__setup__tns": -387.266, "floorplan__timing__setup__ws": -1.61649, - "floorplan_io__cpu__total": 0.5, - "floorplan_io__mem__peak": 147304.0, - "floorplan_io__runtime__total": "0:00.56", - "floorplan_macro__cpu__total": 0.43, - "floorplan_macro__mem__peak": 146880.0, - "floorplan_macro__runtime__total": "0:00.55", - "floorplan_pdn__cpu__total": 0.66, - "floorplan_pdn__mem__peak": 155240.0, - "floorplan_pdn__runtime__total": "0:00.78", - "floorplan_tap__cpu__total": 0.49, - "floorplan_tap__mem__peak": 143300.0, - "floorplan_tap__runtime__total": "0:00.56", - "floorplan_tdms__cpu__total": 0.5, - "floorplan_tdms__mem__peak": 147168.0, - "floorplan_tdms__runtime__total": "0:00.55", + "floorplan_io__cpu__total": 0.36, + "floorplan_io__mem__peak": 139800.0, + "floorplan_io__runtime__total": "0:00.44", + "floorplan_macro__cpu__total": 0.37, + "floorplan_macro__mem__peak": 139164.0, + "floorplan_macro__runtime__total": "0:00.44", + "floorplan_pdn__cpu__total": 0.52, + "floorplan_pdn__mem__peak": 147740.0, + "floorplan_pdn__runtime__total": "0:00.62", + "floorplan_tap__cpu__total": 0.35, + "floorplan_tap__mem__peak": 135580.0, + "floorplan_tap__runtime__total": "0:00.44", + "floorplan_tdms__cpu__total": 0.36, + "floorplan_tdms__mem__peak": 139164.0, + "floorplan_tdms__runtime__total": "0:00.43", "flow__errors__count": 0, "flow__warnings__count": 0, - "globalplace__cpu__total": 144.29, + "globalplace__cpu__total": 964.04, "globalplace__design__core__area": 137662, "globalplace__design__die__area": 140475, "globalplace__design__instance__area": 61516.5, @@ -234,100 +228,100 @@ "globalplace__design__io": 165, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 0, - "globalplace__mem__peak": 852220.0, - "globalplace__power__internal__total": 0.010373, + "globalplace__mem__peak": 842180.0, + "globalplace__power__internal__total": 0.0103729, "globalplace__power__leakage__total": 2.24159e-08, - "globalplace__power__switching__total": 0.00400687, - "globalplace__power__total": 0.0143798, - "globalplace__runtime__total": "0:30.66", - "globalplace__timing__setup__tns": -3393.88, - "globalplace__timing__setup__ws": -5.20917, - "globalplace_io__cpu__total": 0.5, - "globalplace_io__mem__peak": 150676.0, - "globalplace_io__runtime__total": "0:00.58", - "globalplace_skip_io__cpu__total": 84.75, - "globalplace_skip_io__mem__peak": 159596.0, - "globalplace_skip_io__runtime__total": "0:03.27", + "globalplace__power__switching__total": 0.00400741, + "globalplace__power__total": 0.0143804, + "globalplace__runtime__total": "1:27.83", + "globalplace__timing__setup__tns": -3383.78, + "globalplace__timing__setup__ws": -5.15703, + "globalplace_io__cpu__total": 0.39, + "globalplace_io__mem__peak": 142624.0, + "globalplace_io__runtime__total": "0:00.46", + "globalplace_skip_io__cpu__total": 476.41, + "globalplace_skip_io__mem__peak": 150808.0, + "globalplace_skip_io__runtime__total": "0:32.63", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, - "globalroute__antenna_diodes_count": 6, - "globalroute__clock__skew__hold": 0.0738179, - "globalroute__clock__skew__setup": 0.0738179, - "globalroute__cpu__total": 169.98, + "globalroute__antenna_diodes_count": 10, + "globalroute__clock__skew__hold": 0.0710675, + "globalroute__clock__skew__setup": 0.0710675, + "globalroute__cpu__total": 113.96, "globalroute__design__core__area": 137662, "globalroute__design__die__area": 140475, - "globalroute__design__instance__area": 79040.8, + "globalroute__design__instance__area": 78627.9, "globalroute__design__instance__area__macros": 0, - "globalroute__design__instance__area__stdcell": 79040.8, - "globalroute__design__instance__count": 8833, + "globalroute__design__instance__area__stdcell": 78627.9, + "globalroute__design__instance__count": 8809, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 0, - "globalroute__design__instance__count__setup_buffer": 66, - "globalroute__design__instance__count__stdcell": 8833, - "globalroute__design__instance__displacement__max": 24.34, - "globalroute__design__instance__displacement__mean": 0.336, - "globalroute__design__instance__displacement__total": 2972.78, - "globalroute__design__instance__utilization": 0.574166, - "globalroute__design__instance__utilization__stdcell": 0.574166, + "globalroute__design__instance__count__setup_buffer": 43, + "globalroute__design__instance__count__stdcell": 8809, + "globalroute__design__instance__displacement__max": 27.14, + "globalroute__design__instance__displacement__mean": 0.218, + "globalroute__design__instance__displacement__total": 1921.86, + "globalroute__design__instance__utilization": 0.571166, + "globalroute__design__instance__utilization__stdcell": 0.571166, "globalroute__design__io": 165, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 1, - "globalroute__mem__peak": 940324.0, - "globalroute__power__internal__total": 0.0155057, - "globalroute__power__leakage__total": 3.09781e-08, - "globalroute__power__switching__total": 0.00941731, - "globalroute__power__total": 0.024923, - "globalroute__route__wirelength__estimated": 201885, - "globalroute__runtime__total": "1:37.02", - "globalroute__timing__clock__slack": -1.095, + "globalroute__mem__peak": 913608.0, + "globalroute__power__internal__total": 0.0154559, + "globalroute__power__leakage__total": 3.08483e-08, + "globalroute__power__switching__total": 0.00942177, + "globalroute__power__total": 0.0248777, + "globalroute__route__wirelength__estimated": 199973, + "globalroute__runtime__total": "1:17.18", + "globalroute__timing__clock__slack": -1.101, "globalroute__timing__drv__hold_violation_count": 0, - "globalroute__timing__drv__max_cap": 0, - "globalroute__timing__drv__max_cap_limit": 0.0409814, + "globalroute__timing__drv__max_cap": 1, + "globalroute__timing__drv__max_cap_limit": -0.00124762, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, "globalroute__timing__drv__max_slew": 0, - "globalroute__timing__drv__max_slew_limit": 0.0329536, - "globalroute__timing__drv__setup_violation_count": 95, - "globalroute__timing__setup__tns": -24.5165, - "globalroute__timing__setup__ws": -1.09488, - "placeopt__cpu__total": 10.73, + "globalroute__timing__drv__max_slew_limit": 0.00142271, + "globalroute__timing__drv__setup_violation_count": 77, + "globalroute__timing__setup__tns": -17.7261, + "globalroute__timing__setup__ws": -1.10123, + "placeopt__cpu__total": 9.71, "placeopt__design__core__area": 137662, "placeopt__design__die__area": 140475, - "placeopt__design__instance__area": 72982.5, + "placeopt__design__instance__area": 72893.7, "placeopt__design__instance__area__macros": 0, - "placeopt__design__instance__area__stdcell": 72982.5, - "placeopt__design__instance__count": 8465, + "placeopt__design__instance__area__stdcell": 72893.7, + "placeopt__design__instance__count": 8462, "placeopt__design__instance__count__macros": 0, - "placeopt__design__instance__count__stdcell": 8465, - "placeopt__design__instance__utilization": 0.530157, - "placeopt__design__instance__utilization__stdcell": 0.530157, + "placeopt__design__instance__count__stdcell": 8462, + "placeopt__design__instance__utilization": 0.529512, + "placeopt__design__instance__utilization__stdcell": 0.529512, "placeopt__design__io": 165, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 0, - "placeopt__mem__peak": 761004.0, - "placeopt__power__internal__total": 0.0110364, - "placeopt__power__leakage__total": 2.81865e-08, - "placeopt__power__switching__total": 0.00472476, - "placeopt__power__total": 0.0157611, - "placeopt__runtime__total": "0:11.43", + "placeopt__mem__peak": 747180.0, + "placeopt__power__internal__total": 0.0110356, + "placeopt__power__leakage__total": 2.81848e-08, + "placeopt__power__switching__total": 0.00472092, + "placeopt__power__total": 0.0157565, + "placeopt__runtime__total": "0:10.36", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.0241253, + "placeopt__timing__drv__max_cap_limit": 0.0938247, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.0324282, - "placeopt__timing__drv__setup_violation_count": 319, - "placeopt__timing__setup__tns": -83.1352, - "placeopt__timing__setup__ws": -0.818884, + "placeopt__timing__drv__max_slew_limit": 0.000980919, + "placeopt__timing__drv__setup_violation_count": 341, + "placeopt__timing__setup__tns": -86.2397, + "placeopt__timing__setup__ws": -0.816061, "run__flow__design": "riscv32i", - "run__flow__generate_date": "2024-09-22 04:09", + "run__flow__generate_date": "2024-09-26 21:32", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15793-g872111c43", + "run__flow__openroad_version": "v2.0-15807-g036379d64", "run__flow__platform": "sky130hd", "run__flow__platform__capacitance_units": "1pF", "run__flow__platform__current_units": "1mA", @@ -336,14 +330,14 @@ "run__flow__platform__resistance_units": "1kohm", "run__flow__platform__time_units": "1ns", "run__flow__platform__voltage_units": "1v", - "run__flow__platform_commit": "32ca7cb692f3ae55fa7b8bb589057005047a1627", - "run__flow__scripts_commit": "32ca7cb692f3ae55fa7b8bb589057005047a1627", - "run__flow__uuid": "215dfa01-0d08-4cda-9412-4a848ff92427", - "run__flow__variant": "base", - "synth__cpu__total": 31.1, + "run__flow__platform_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__scripts_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__uuid": "4d191316-7ca0-4d04-9703-2d764a8a18a8", + "run__flow__variant": "odb_0925", + "synth__cpu__total": 22.74, "synth__design__instance__area__stdcell": 62541.232, "synth__design__instance__count__stdcell": 7143.0, - "synth__mem__peak": 71804.0, - "synth__runtime__total": "0:31.26", - "total_time": "0:05:03.360000" + "synth__mem__peak": 65136.0, + "synth__runtime__total": "0:22.91", + "total_time": "0:06:05.520000" } \ No newline at end of file diff --git a/flow/designs/sky130hd/riscv32i/rules-base.json b/flow/designs/sky130hd/riscv32i/rules-base.json index 0f55ee47fc..494f5c0bc1 100644 --- a/flow/designs/sky130hd/riscv32i/rules-base.json +++ b/flow/designs/sky130hd/riscv32i/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 71523.85, + "value": 71922.42, "compare": "<=" }, "constraints__clocks__count": { @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 83901, + "value": 83828, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 9674, + "value": 9731, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,19 +20,19 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 841, + "value": 846, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 841, + "value": 846, "compare": "<=" }, "globalroute__antenna_diodes_count": { - "value": 7, + "value": 12, "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 316306, + "value": 337654, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -44,19 +44,19 @@ "compare": "<=" }, "detailedroute__antenna_diodes_count": { - "value": 7, + "value": 8, "compare": "<=" }, "finish__timing__setup__ws": { - "value": -1.34, + "value": -1.42, "compare": ">=" }, "finish__design__instance__area": { - "value": 88383, + "value": 90442, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 421, + "value": 423, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { @@ -64,7 +64,7 @@ "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -31.53, + "value": -32.76, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/sky130hd_fakestack/ariane136/config.mk b/flow/designs/sky130hd_fakestack/ariane136/config.mk index 50531b7236..8d76ad6dd0 100644 --- a/flow/designs/sky130hd_fakestack/ariane136/config.mk +++ b/flow/designs/sky130hd_fakestack/ariane136/config.mk @@ -4,7 +4,6 @@ export PLATFORM = sky130hd_fakestack export SYNTH_HIERARCHICAL = 1 export MAX_UNGROUP_SIZE = 10000 -export RTLMP_FLOW = 1 export SDC_FILE = ./designs/$(PLATFORM)/$(DESIGN_NICKNAME)/constraint.sdc diff --git a/flow/designs/sky130hs/aes/metadata-base-ok.json b/flow/designs/sky130hs/aes/metadata-base-ok.json index 30ac4ed516..d203ef10f9 100644 --- a/flow/designs/sky130hs/aes/metadata-base-ok.json +++ b/flow/designs/sky130hs/aes/metadata-base-ok.json @@ -3,179 +3,207 @@ "constraints__clocks__details": [ "clk: 4.0000" ], - "cts__clock__skew__hold": 0.0268738, - "cts__clock__skew__setup": 0.0268738, - "cts__cpu__total": 16.55, + "cts__clock__skew__hold": 0.0225005, + "cts__clock__skew__setup": 0.0225005, + "cts__cpu__total": 16.76, "cts__design__core__area": 289510, "cts__design__die__area": 296404, - "cts__design__instance__area": 161915, + "cts__design__instance__area": 174277, "cts__design__instance__area__macros": 0, - "cts__design__instance__area__stdcell": 161915, - "cts__design__instance__count": 15150, + "cts__design__instance__area__stdcell": 174277, + "cts__design__instance__count": 15191, "cts__design__instance__count__hold_buffer": 0, "cts__design__instance__count__macros": 0, "cts__design__instance__count__setup_buffer": 0, - "cts__design__instance__count__stdcell": 15150, + "cts__design__instance__count__stdcell": 15191, "cts__design__instance__displacement__max": 0, "cts__design__instance__displacement__mean": 0, "cts__design__instance__displacement__total": 0, - "cts__design__instance__utilization": 0.559271, - "cts__design__instance__utilization__stdcell": 0.559271, + "cts__design__instance__utilization": 0.601971, + "cts__design__instance__utilization__stdcell": 0.601971, "cts__design__io": 388, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 0, - "cts__mem__peak": 707908.0, - "cts__power__internal__total": 0.537914, - "cts__power__leakage__total": 1.04108e-06, - "cts__power__switching__total": 0.28835, - "cts__power__total": 0.826265, - "cts__route__wirelength__estimated": 398844, - "cts__runtime__total": "0:17.12", + "cts__mem__peak": 584460.0, + "cts__power__internal__total": 0.598288, + "cts__power__leakage__total": 1.06175e-06, + "cts__power__switching__total": 0.31424, + "cts__power__total": 0.91253, + "cts__route__wirelength__estimated": 415036, + "cts__runtime__total": "0:17.33", "cts__timing__drv__hold_violation_count": 0, - "cts__timing__drv__max_cap": 0, - "cts__timing__drv__max_cap_limit": 0.00740821, + "cts__timing__drv__max_cap": 3, + "cts__timing__drv__max_cap_limit": -0.00379792, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.0240554, + "cts__timing__drv__max_slew_limit": 0.00917089, "cts__timing__drv__setup_violation_count": 0, "cts__timing__setup__tns": 0, - "cts__timing__setup__ws": 0.287695, + "cts__timing__setup__ws": 0.362832, "design__io__hpwl": 70393863, "design__violations": 0, - "detailedplace__cpu__total": 16.02, + "detailedplace__cpu__total": 16.55, "detailedplace__design__core__area": 289510, "detailedplace__design__die__area": 296404, - "detailedplace__design__instance__area": 158777, + "detailedplace__design__instance__area": 171272, "detailedplace__design__instance__area__macros": 0, - "detailedplace__design__instance__area__stdcell": 158777, - "detailedplace__design__instance__count": 15020, + "detailedplace__design__instance__area__stdcell": 171272, + "detailedplace__design__instance__count": 15064, "detailedplace__design__instance__count__macros": 0, - "detailedplace__design__instance__count__stdcell": 15020, - "detailedplace__design__instance__displacement__max": 27.163, - "detailedplace__design__instance__displacement__mean": 2.751, - "detailedplace__design__instance__displacement__total": 41321.9, - "detailedplace__design__instance__utilization": 0.548433, - "detailedplace__design__instance__utilization__stdcell": 0.548433, + "detailedplace__design__instance__count__stdcell": 15064, + "detailedplace__design__instance__displacement__max": 43.793, + "detailedplace__design__instance__displacement__mean": 3.591, + "detailedplace__design__instance__displacement__total": 54099, + "detailedplace__design__instance__utilization": 0.591591, + "detailedplace__design__instance__utilization__stdcell": 0.591591, "detailedplace__design__io": 388, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 0, - "detailedplace__mem__peak": 248892.0, - "detailedplace__power__internal__total": 0.533988, - "detailedplace__power__leakage__total": 1.01879e-06, - "detailedplace__power__switching__total": 0.282483, - "detailedplace__power__total": 0.816473, - "detailedplace__route__wirelength__estimated": 408780, - "detailedplace__runtime__total": "0:16.22", + "detailedplace__mem__peak": 229092.0, + "detailedplace__power__internal__total": 0.594501, + "detailedplace__power__leakage__total": 1.04026e-06, + "detailedplace__power__switching__total": 0.307938, + "detailedplace__power__total": 0.902441, + "detailedplace__route__wirelength__estimated": 426697, + "detailedplace__runtime__total": "0:16.71", "detailedplace__timing__drv__hold_violation_count": 0, - "detailedplace__timing__drv__max_cap": 0, - "detailedplace__timing__drv__max_cap_limit": 0.0100346, + "detailedplace__timing__drv__max_cap": 3, + "detailedplace__timing__drv__max_cap_limit": -0.00969209, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.0210032, - "detailedplace__timing__drv__setup_violation_count": 1, - "detailedplace__timing__setup__tns": -0.0255107, - "detailedplace__timing__setup__ws": -0.0255107, + "detailedplace__timing__drv__max_slew_limit": 0.00603662, + "detailedplace__timing__drv__setup_violation_count": 7, + "detailedplace__timing__setup__tns": -0.405146, + "detailedplace__timing__setup__ws": -0.106771, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, - "detailedroute__antenna_diodes_count": 0, + "detailedroute__antenna_diodes_count": 4, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 10, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 24551, - "detailedroute__route__drc_errors__iter:10": 148, - "detailedroute__route__drc_errors__iter:11": 57, - "detailedroute__route__drc_errors__iter:12": 22, - "detailedroute__route__drc_errors__iter:13": 22, - "detailedroute__route__drc_errors__iter:14": 14, - "detailedroute__route__drc_errors__iter:15": 12, - "detailedroute__route__drc_errors__iter:16": 11, - "detailedroute__route__drc_errors__iter:17": 11, - "detailedroute__route__drc_errors__iter:18": 11, - "detailedroute__route__drc_errors__iter:19": 3, - "detailedroute__route__drc_errors__iter:2": 16375, - "detailedroute__route__drc_errors__iter:20": 1, - "detailedroute__route__drc_errors__iter:21": 0, - "detailedroute__route__drc_errors__iter:3": 16040, - "detailedroute__route__drc_errors__iter:4": 3933, - "detailedroute__route__drc_errors__iter:5": 1093, - "detailedroute__route__drc_errors__iter:6": 434, - "detailedroute__route__drc_errors__iter:7": 259, - "detailedroute__route__drc_errors__iter:8": 168, - "detailedroute__route__drc_errors__iter:9": 158, - "detailedroute__route__net": 12559, + "detailedroute__route__drc_errors__iter:1": 26195, + "detailedroute__route__drc_errors__iter:10": 387, + "detailedroute__route__drc_errors__iter:11": 197, + "detailedroute__route__drc_errors__iter:12": 175, + "detailedroute__route__drc_errors__iter:13": 134, + "detailedroute__route__drc_errors__iter:14": 94, + "detailedroute__route__drc_errors__iter:15": 93, + "detailedroute__route__drc_errors__iter:16": 69, + "detailedroute__route__drc_errors__iter:17": 48, + "detailedroute__route__drc_errors__iter:18": 48, + "detailedroute__route__drc_errors__iter:19": 4, + "detailedroute__route__drc_errors__iter:2": 17004, + "detailedroute__route__drc_errors__iter:20": 4, + "detailedroute__route__drc_errors__iter:21": 4, + "detailedroute__route__drc_errors__iter:22": 4, + "detailedroute__route__drc_errors__iter:23": 4, + "detailedroute__route__drc_errors__iter:24": 4, + "detailedroute__route__drc_errors__iter:25": 4, + "detailedroute__route__drc_errors__iter:26": 4, + "detailedroute__route__drc_errors__iter:27": 4, + "detailedroute__route__drc_errors__iter:28": 4, + "detailedroute__route__drc_errors__iter:29": 4, + "detailedroute__route__drc_errors__iter:3": 16024, + "detailedroute__route__drc_errors__iter:30": 4, + "detailedroute__route__drc_errors__iter:31": 4, + "detailedroute__route__drc_errors__iter:32": 2, + "detailedroute__route__drc_errors__iter:33": 2, + "detailedroute__route__drc_errors__iter:34": 2, + "detailedroute__route__drc_errors__iter:35": 0, + "detailedroute__route__drc_errors__iter:4": 4464, + "detailedroute__route__drc_errors__iter:5": 1688, + "detailedroute__route__drc_errors__iter:6": 899, + "detailedroute__route__drc_errors__iter:7": 621, + "detailedroute__route__drc_errors__iter:8": 507, + "detailedroute__route__drc_errors__iter:9": 397, + "detailedroute__route__net": 12589, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 112456, + "detailedroute__route__vias": 114165, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 112456, - "detailedroute__route__wirelength": 532699, - "detailedroute__route__wirelength__iter:1": 541763, - "detailedroute__route__wirelength__iter:10": 532551, - "detailedroute__route__wirelength__iter:11": 532596, - "detailedroute__route__wirelength__iter:12": 532621, - "detailedroute__route__wirelength__iter:13": 532621, - "detailedroute__route__wirelength__iter:14": 532637, - "detailedroute__route__wirelength__iter:15": 532638, - "detailedroute__route__wirelength__iter:16": 532628, - "detailedroute__route__wirelength__iter:17": 532628, - "detailedroute__route__wirelength__iter:18": 532628, - "detailedroute__route__wirelength__iter:19": 532660, - "detailedroute__route__wirelength__iter:2": 536709, - "detailedroute__route__wirelength__iter:20": 532659, - "detailedroute__route__wirelength__iter:21": 532699, - "detailedroute__route__wirelength__iter:3": 535237, - "detailedroute__route__wirelength__iter:4": 532873, - "detailedroute__route__wirelength__iter:5": 532628, - "detailedroute__route__wirelength__iter:6": 532529, - "detailedroute__route__wirelength__iter:7": 532499, - "detailedroute__route__wirelength__iter:8": 532548, - "detailedroute__route__wirelength__iter:9": 532557, - "finish__clock__skew__hold": 0.0410538, - "finish__clock__skew__setup": 0.0410538, - "finish__cpu__total": 30.6, + "detailedroute__route__vias__singlecut": 114165, + "detailedroute__route__wirelength": 551840, + "detailedroute__route__wirelength__iter:1": 560812, + "detailedroute__route__wirelength__iter:10": 551704, + "detailedroute__route__wirelength__iter:11": 551760, + "detailedroute__route__wirelength__iter:12": 551745, + "detailedroute__route__wirelength__iter:13": 551796, + "detailedroute__route__wirelength__iter:14": 551822, + "detailedroute__route__wirelength__iter:15": 551823, + "detailedroute__route__wirelength__iter:16": 551812, + "detailedroute__route__wirelength__iter:17": 551803, + "detailedroute__route__wirelength__iter:18": 551803, + "detailedroute__route__wirelength__iter:19": 551806, + "detailedroute__route__wirelength__iter:2": 556055, + "detailedroute__route__wirelength__iter:20": 551817, + "detailedroute__route__wirelength__iter:21": 551817, + "detailedroute__route__wirelength__iter:22": 551817, + "detailedroute__route__wirelength__iter:23": 551817, + "detailedroute__route__wirelength__iter:24": 551817, + "detailedroute__route__wirelength__iter:25": 551817, + "detailedroute__route__wirelength__iter:26": 551817, + "detailedroute__route__wirelength__iter:27": 551817, + "detailedroute__route__wirelength__iter:28": 551816, + "detailedroute__route__wirelength__iter:29": 551816, + "detailedroute__route__wirelength__iter:3": 554441, + "detailedroute__route__wirelength__iter:30": 551817, + "detailedroute__route__wirelength__iter:31": 551817, + "detailedroute__route__wirelength__iter:32": 551841, + "detailedroute__route__wirelength__iter:33": 551841, + "detailedroute__route__wirelength__iter:34": 551841, + "detailedroute__route__wirelength__iter:35": 551840, + "detailedroute__route__wirelength__iter:4": 552590, + "detailedroute__route__wirelength__iter:5": 552064, + "detailedroute__route__wirelength__iter:6": 551886, + "detailedroute__route__wirelength__iter:7": 551828, + "detailedroute__route__wirelength__iter:8": 551721, + "detailedroute__route__wirelength__iter:9": 551712, + "finish__clock__skew__hold": 0.0943552, + "finish__clock__skew__setup": 0.0943552, + "finish__cpu__total": 29.99, "finish__design__core__area": 289510, "finish__design__die__area": 296404, - "finish__design__instance__area": 162853, + "finish__design__instance__area": 174958, "finish__design__instance__area__macros": 0, - "finish__design__instance__area__stdcell": 162853, - "finish__design__instance__count": 15189, + "finish__design__instance__area__stdcell": 174958, + "finish__design__instance__count": 15234, "finish__design__instance__count__macros": 0, - "finish__design__instance__count__stdcell": 15189, - "finish__design__instance__utilization": 0.562512, - "finish__design__instance__utilization__stdcell": 0.562512, + "finish__design__instance__count__stdcell": 15234, + "finish__design__instance__utilization": 0.604323, + "finish__design__instance__utilization__stdcell": 0.604323, "finish__design__io": 388, - "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.79014, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.00877402, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0207411, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0178079, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.77926, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0178079, + "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.78929, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.00955371, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0208105, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0198163, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.77919, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0198163, "finish__flow__errors__count": 0, "finish__flow__warnings__count": 1, - "finish__mem__peak": 497124.0, - "finish__power__internal__total": 0.542787, - "finish__power__leakage__total": 1.04813e-06, - "finish__power__switching__total": 0.328603, - "finish__power__total": 0.871391, - "finish__runtime__total": "0:31.02", + "finish__mem__peak": 492076.0, + "finish__power__internal__total": 0.603359, + "finish__power__leakage__total": 1.06533e-06, + "finish__power__switching__total": 0.357019, + "finish__power__total": 0.960379, + "finish__runtime__total": "0:30.41", "finish__timing__drv__hold_violation_count": 0, - "finish__timing__drv__max_cap": 0, - "finish__timing__drv__max_cap_limit": 0.0435895, + "finish__timing__drv__max_cap": 7, + "finish__timing__drv__max_cap_limit": -0.0225679, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, - "finish__timing__drv__max_slew": 0, - "finish__timing__drv__max_slew_limit": 0.0572385, + "finish__timing__drv__max_slew": 31, + "finish__timing__drv__max_slew_limit": -0.00420541, "finish__timing__drv__setup_violation_count": 0, "finish__timing__setup__tns": 0, - "finish__timing__setup__ws": 0.104598, - "finish__timing__wns_percent_delay": 2.43058, - "finish_merge__cpu__total": 2.87, - "finish_merge__mem__peak": 508176.0, - "finish_merge__runtime__total": "0:03.15", - "floorplan__cpu__total": 7.04, + "finish__timing__setup__ws": 0.0724332, + "finish__timing__wns_percent_delay": 1.674221, + "finish_merge__cpu__total": 2.79, + "finish_merge__mem__peak": 504860.0, + "finish_merge__runtime__total": "0:03.13", + "floorplan__cpu__total": 6.5, "floorplan__design__core__area": 289510, "floorplan__design__die__area": 296404, "floorplan__design__instance__area": 107802, @@ -189,32 +217,32 @@ "floorplan__design__io": 388, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 2, - "floorplan__mem__peak": 209872.0, + "floorplan__mem__peak": 209344.0, "floorplan__power__internal__total": 0.416622, "floorplan__power__leakage__total": 9.47355e-07, "floorplan__power__switching__total": 0.140996, "floorplan__power__total": 0.557619, - "floorplan__runtime__total": "0:07.20", + "floorplan__runtime__total": "0:06.69", "floorplan__timing__setup__tns": -409.243, "floorplan__timing__setup__ws": -3.76844, - "floorplan_io__cpu__total": 1.78, - "floorplan_io__mem__peak": 175352.0, - "floorplan_io__runtime__total": "0:01.92", - "floorplan_macro__cpu__total": 1.8, - "floorplan_macro__mem__peak": 175096.0, - "floorplan_macro__runtime__total": "0:01.91", - "floorplan_pdn__cpu__total": 2.15, - "floorplan_pdn__mem__peak": 178944.0, - "floorplan_pdn__runtime__total": "0:02.25", - "floorplan_tap__cpu__total": 1.82, - "floorplan_tap__mem__peak": 168440.0, - "floorplan_tap__runtime__total": "0:01.93", - "floorplan_tdms__cpu__total": 1.85, - "floorplan_tdms__mem__peak": 174588.0, - "floorplan_tdms__runtime__total": "0:01.95", + "floorplan_io__cpu__total": 1.71, + "floorplan_io__mem__peak": 175196.0, + "floorplan_io__runtime__total": "0:01.83", + "floorplan_macro__cpu__total": 1.74, + "floorplan_macro__mem__peak": 174768.0, + "floorplan_macro__runtime__total": "0:01.82", + "floorplan_pdn__cpu__total": 2.03, + "floorplan_pdn__mem__peak": 179704.0, + "floorplan_pdn__runtime__total": "0:02.17", + "floorplan_tap__cpu__total": 1.77, + "floorplan_tap__mem__peak": 168572.0, + "floorplan_tap__runtime__total": "0:01.86", + "floorplan_tdms__cpu__total": 1.78, + "floorplan_tdms__mem__peak": 175092.0, + "floorplan_tdms__runtime__total": "0:01.87", "flow__errors__count": 0, "flow__warnings__count": 0, - "globalplace__cpu__total": 518.66, + "globalplace__cpu__total": 827.34, "globalplace__design__core__area": 289510, "globalplace__design__die__area": 296404, "globalplace__design__instance__area": 112753, @@ -228,100 +256,100 @@ "globalplace__design__io": 388, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 0, - "globalplace__mem__peak": 718072.0, - "globalplace__power__internal__total": 0.471485, + "globalplace__mem__peak": 616380.0, + "globalplace__power__internal__total": 0.471694, "globalplace__power__leakage__total": 9.47355e-07, - "globalplace__power__switching__total": 0.225019, - "globalplace__power__total": 0.696506, - "globalplace__runtime__total": "1:15.39", - "globalplace__timing__setup__tns": -1056.04, - "globalplace__timing__setup__ws": -8.46808, - "globalplace_io__cpu__total": 1.85, - "globalplace_io__mem__peak": 179960.0, - "globalplace_io__runtime__total": "0:01.98", - "globalplace_skip_io__cpu__total": 177.09, - "globalplace_skip_io__mem__peak": 197720.0, - "globalplace_skip_io__runtime__total": "0:07.51", + "globalplace__power__switching__total": 0.225203, + "globalplace__power__total": 0.696898, + "globalplace__runtime__total": "1:32.86", + "globalplace__timing__setup__tns": -1043.76, + "globalplace__timing__setup__ws": -8.32616, + "globalplace_io__cpu__total": 1.77, + "globalplace_io__mem__peak": 178688.0, + "globalplace_io__runtime__total": "0:01.86", + "globalplace_skip_io__cpu__total": 172.81, + "globalplace_skip_io__mem__peak": 197980.0, + "globalplace_skip_io__runtime__total": "0:07.32", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, - "globalroute__antenna_diodes_count": 9, - "globalroute__clock__skew__hold": 0.0326947, - "globalroute__clock__skew__setup": 0.0326947, - "globalroute__cpu__total": 139.95, + "globalroute__antenna_diodes_count": 22, + "globalroute__clock__skew__hold": 0.0685167, + "globalroute__clock__skew__setup": 0.0685167, + "globalroute__cpu__total": 140.25, "globalroute__design__core__area": 289510, "globalroute__design__die__area": 296404, - "globalroute__design__instance__area": 162853, + "globalroute__design__instance__area": 174945, "globalroute__design__instance__area__macros": 0, - "globalroute__design__instance__area__stdcell": 162853, - "globalroute__design__instance__count": 15189, + "globalroute__design__instance__area__stdcell": 174945, + "globalroute__design__instance__count": 15230, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 0, - "globalroute__design__instance__count__setup_buffer": 6, - "globalroute__design__instance__count__stdcell": 15189, - "globalroute__design__instance__displacement__max": 14.82, - "globalroute__design__instance__displacement__mean": 0.01, - "globalroute__design__instance__displacement__total": 164.97, - "globalroute__design__instance__utilization": 0.562512, - "globalroute__design__instance__utilization__stdcell": 0.562512, + "globalroute__design__instance__count__setup_buffer": 0, + "globalroute__design__instance__count__stdcell": 15230, + "globalroute__design__instance__displacement__max": 0, + "globalroute__design__instance__displacement__mean": 0, + "globalroute__design__instance__displacement__total": 0, + "globalroute__design__instance__utilization": 0.604279, + "globalroute__design__instance__utilization__stdcell": 0.604279, "globalroute__design__io": 388, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 0, - "globalroute__mem__peak": 833776.0, - "globalroute__power__internal__total": 0.542637, - "globalroute__power__leakage__total": 1.04813e-06, - "globalroute__power__switching__total": 0.346644, - "globalroute__power__total": 0.889281, - "globalroute__route__wirelength__estimated": 403038, - "globalroute__runtime__total": "0:29.99", - "globalroute__timing__clock__slack": 0.075, + "globalroute__mem__peak": 730036.0, + "globalroute__power__internal__total": 0.603023, + "globalroute__power__leakage__total": 1.06533e-06, + "globalroute__power__switching__total": 0.374408, + "globalroute__power__total": 0.977432, + "globalroute__route__wirelength__estimated": 419153, + "globalroute__runtime__total": "0:28.80", + "globalroute__timing__clock__slack": 0.077, "globalroute__timing__drv__hold_violation_count": 0, "globalroute__timing__drv__max_cap": 0, - "globalroute__timing__drv__max_cap_limit": 0.0545172, + "globalroute__timing__drv__max_cap_limit": 0.00192235, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, "globalroute__timing__drv__max_slew": 0, - "globalroute__timing__drv__max_slew_limit": 0.0336389, + "globalroute__timing__drv__max_slew_limit": 0.0136364, "globalroute__timing__drv__setup_violation_count": 0, "globalroute__timing__setup__tns": 0, - "globalroute__timing__setup__ws": 0.075242, - "placeopt__cpu__total": 15.6, + "globalroute__timing__setup__ws": 0.0772635, + "placeopt__cpu__total": 16.82, "placeopt__design__core__area": 289510, "placeopt__design__die__area": 296404, - "placeopt__design__instance__area": 158777, + "placeopt__design__instance__area": 171272, "placeopt__design__instance__area__macros": 0, - "placeopt__design__instance__area__stdcell": 158777, - "placeopt__design__instance__count": 15020, + "placeopt__design__instance__area__stdcell": 171272, + "placeopt__design__instance__count": 15064, "placeopt__design__instance__count__macros": 0, - "placeopt__design__instance__count__stdcell": 15020, - "placeopt__design__instance__utilization": 0.548433, - "placeopt__design__instance__utilization__stdcell": 0.548433, + "placeopt__design__instance__count__stdcell": 15064, + "placeopt__design__instance__utilization": 0.591591, + "placeopt__design__instance__utilization__stdcell": 0.591591, "placeopt__design__io": 388, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 0, - "placeopt__mem__peak": 593036.0, - "placeopt__power__internal__total": 0.533894, - "placeopt__power__leakage__total": 1.01879e-06, - "placeopt__power__switching__total": 0.281898, - "placeopt__power__total": 0.815793, - "placeopt__runtime__total": "0:16.13", + "placeopt__mem__peak": 490264.0, + "placeopt__power__internal__total": 0.594195, + "placeopt__power__leakage__total": 1.04026e-06, + "placeopt__power__switching__total": 0.304474, + "placeopt__power__total": 0.89867, + "placeopt__runtime__total": "0:17.22", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.0120484, + "placeopt__timing__drv__max_cap_limit": 0.0022883, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.0261255, - "placeopt__timing__drv__setup_violation_count": 0, - "placeopt__timing__setup__tns": 0, - "placeopt__timing__setup__ws": 0.00903766, + "placeopt__timing__drv__max_slew_limit": 0.0118742, + "placeopt__timing__drv__setup_violation_count": 7, + "placeopt__timing__setup__tns": -0.337419, + "placeopt__timing__setup__ws": -0.0819127, "run__flow__design": "aes", - "run__flow__generate_date": "2024-09-19 14:44", + "run__flow__generate_date": "2024-09-28 20:07", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15759-g9136ba699", + "run__flow__openroad_version": "v2.0-16113-g7b5c8faf7", "run__flow__platform": "sky130hs", "run__flow__platform__capacitance_units": "1pF", "run__flow__platform__current_units": "1mA", @@ -332,12 +360,12 @@ "run__flow__platform__voltage_units": "1v", "run__flow__platform_commit": "N/A", "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "49dbd063-2a1f-4afd-861c-a9b639e7727e", + "run__flow__uuid": "ada9017a-5f67-4736-98e5-2db65adec284", "run__flow__variant": "base", - "synth__cpu__total": 53.39, + "synth__cpu__total": 55.31, "synth__design__instance__area__stdcell": 116825.4576, "synth__design__instance__count__stdcell": 12708.0, - "synth__mem__peak": 143104.0, - "synth__runtime__total": "0:53.83", - "total_time": "0:04:29.500000" + "synth__mem__peak": 142592.0, + "synth__runtime__total": "0:55.68", + "total_time": "0:04:47.560000" } \ No newline at end of file diff --git a/flow/designs/sky130hs/aes/rules-base.json b/flow/designs/sky130hs/aes/rules-base.json index 7ddd3065ef..5a72f62cbc 100644 --- a/flow/designs/sky130hs/aes/rules-base.json +++ b/flow/designs/sky130hs/aes/rules-base.json @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 182594, + "value": 182308, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 17273, + "value": 17278, "compare": "<=" }, "detailedplace__design__violations": { @@ -28,11 +28,11 @@ "compare": "<=" }, "globalroute__antenna_diodes_count": { - "value": 10, + "value": 25, "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 612604, + "value": 613182, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -44,15 +44,15 @@ "compare": "<=" }, "detailedroute__antenna_diodes_count": { - "value": 0, + "value": 5, "compare": "<=" }, "finish__timing__setup__ws": { - "value": -0.09, + "value": -0.11, "compare": ">=" }, "finish__design__instance__area": { - "value": 187281, + "value": 186844, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { diff --git a/flow/designs/sky130hs/gcd/metadata-base-ok.json b/flow/designs/sky130hs/gcd/metadata-base-ok.json index f5d8e9493a..a9eaad5ebe 100644 --- a/flow/designs/sky130hs/gcd/metadata-base-ok.json +++ b/flow/designs/sky130hs/gcd/metadata-base-ok.json @@ -3,9 +3,9 @@ "constraints__clocks__details": [ "core_clock: 2.2000" ], - "cts__clock__skew__hold": 0.00195904, - "cts__clock__skew__setup": 0.00195904, - "cts__cpu__total": 82.47, + "cts__clock__skew__hold": 0.0030648, + "cts__clock__skew__setup": 0.0030648, + "cts__cpu__total": 50.38, "cts__design__core__area": 9595.2, "cts__design__die__area": 10393.8, "cts__design__instance__area": 4852.74, @@ -25,26 +25,26 @@ "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 0, - "cts__mem__peak": 644816.0, - "cts__power__internal__total": 0.00295824, + "cts__mem__peak": 645304.0, + "cts__power__internal__total": 0.0029582, "cts__power__leakage__total": 5.809e-08, - "cts__power__switching__total": 0.00156805, - "cts__power__total": 0.00452635, - "cts__route__wirelength__estimated": 8844.62, - "cts__runtime__total": "0:21.80", + "cts__power__switching__total": 0.00156454, + "cts__power__total": 0.0045228, + "cts__route__wirelength__estimated": 8822.42, + "cts__runtime__total": "0:15.70", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, - "cts__timing__drv__max_cap_limit": 0.759572, + "cts__timing__drv__max_cap_limit": 0.76978, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.694186, + "cts__timing__drv__max_slew_limit": 0.703041, "cts__timing__drv__setup_violation_count": 0, "cts__timing__setup__tns": 0, - "cts__timing__setup__ws": 0.343668, + "cts__timing__setup__ws": 0.344411, "design__io__hpwl": 1483908, "design__violations": 0, - "detailedplace__cpu__total": 2.07, + "detailedplace__cpu__total": 2.13, "detailedplace__design__core__area": 9595.2, "detailedplace__design__die__area": 10393.8, "detailedplace__design__instance__area": 4716.88, @@ -53,55 +53,55 @@ "detailedplace__design__instance__count": 640, "detailedplace__design__instance__count__macros": 0, "detailedplace__design__instance__count__stdcell": 640, - "detailedplace__design__instance__displacement__max": 9.64, - "detailedplace__design__instance__displacement__mean": 1.893, - "detailedplace__design__instance__displacement__total": 1211.65, + "detailedplace__design__instance__displacement__max": 9.27, + "detailedplace__design__instance__displacement__mean": 1.894, + "detailedplace__design__instance__displacement__total": 1212.63, "detailedplace__design__instance__utilization": 0.491588, "detailedplace__design__instance__utilization__stdcell": 0.491588, "detailedplace__design__io": 54, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 0, - "detailedplace__mem__peak": 158364.0, - "detailedplace__power__internal__total": 0.00268693, + "detailedplace__mem__peak": 159084.0, + "detailedplace__power__internal__total": 0.00268686, "detailedplace__power__leakage__total": 5.69683e-08, - "detailedplace__power__switching__total": 0.00121186, - "detailedplace__power__total": 0.00389885, - "detailedplace__route__wirelength__estimated": 9065.96, + "detailedplace__power__switching__total": 0.00120917, + "detailedplace__power__total": 0.00389609, + "detailedplace__route__wirelength__estimated": 9054.57, "detailedplace__runtime__total": "0:02.26", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, - "detailedplace__timing__drv__max_cap_limit": 0.755755, + "detailedplace__timing__drv__max_cap_limit": 0.773589, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.690801, + "detailedplace__timing__drv__max_slew_limit": 0.706342, "detailedplace__timing__drv__setup_violation_count": 0, "detailedplace__timing__setup__tns": 0, - "detailedplace__timing__setup__ws": 0.609253, + "detailedplace__timing__setup__ws": 0.614288, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, "detailedroute__antenna_diodes_count": 0, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 10, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 172, - "detailedroute__route__drc_errors__iter:2": 57, - "detailedroute__route__drc_errors__iter:3": 46, + "detailedroute__route__drc_errors__iter:1": 185, + "detailedroute__route__drc_errors__iter:2": 38, + "detailedroute__route__drc_errors__iter:3": 52, "detailedroute__route__drc_errors__iter:4": 0, "detailedroute__route__net": 573, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 3079, + "detailedroute__route__vias": 3117, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 3079, - "detailedroute__route__wirelength": 10524, - "detailedroute__route__wirelength__iter:1": 10600, - "detailedroute__route__wirelength__iter:2": 10594, - "detailedroute__route__wirelength__iter:3": 10537, - "detailedroute__route__wirelength__iter:4": 10524, - "finish__clock__skew__hold": 0.0047708, - "finish__clock__skew__setup": 0.0047708, - "finish__cpu__total": 3.68, + "detailedroute__route__vias__singlecut": 3117, + "detailedroute__route__wirelength": 10453, + "detailedroute__route__wirelength__iter:1": 10565, + "detailedroute__route__wirelength__iter:2": 10448, + "detailedroute__route__wirelength__iter:3": 10461, + "detailedroute__route__wirelength__iter:4": 10453, + "finish__clock__skew__hold": 0.00656553, + "finish__clock__skew__setup": 0.00656553, + "finish__cpu__total": 2.53, "finish__design__core__area": 9595.2, "finish__design__die__area": 10393.8, "finish__design__instance__area": 4852.74, @@ -114,34 +114,34 @@ "finish__design__instance__utilization__stdcell": 0.505747, "finish__design__io": 54, "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.79972, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.000157982, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.000568213, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.000394761, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.79943, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.000394761, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.000161172, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.00055576, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.000396034, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.79944, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.000396034, "finish__flow__errors__count": 0, - "finish__flow__warnings__count": 1, - "finish__mem__peak": 227532.0, - "finish__power__internal__total": 0.00295994, + "finish__flow__warnings__count": 0, + "finish__mem__peak": 311516.0, + "finish__power__internal__total": 0.00295997, "finish__power__leakage__total": 5.809e-08, - "finish__power__switching__total": 0.00163804, - "finish__power__total": 0.00459804, - "finish__runtime__total": "0:03.87", + "finish__power__switching__total": 0.00163196, + "finish__power__total": 0.00459199, + "finish__runtime__total": "0:02.70", "finish__timing__drv__hold_violation_count": 0, "finish__timing__drv__max_cap": 0, - "finish__timing__drv__max_cap_limit": 0.757447, + "finish__timing__drv__max_cap_limit": 0.755082, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, "finish__timing__drv__max_slew": 0, - "finish__timing__drv__max_slew_limit": 0.692291, + "finish__timing__drv__max_slew_limit": 0.690243, "finish__timing__drv__setup_violation_count": 0, "finish__timing__setup__tns": 0, - "finish__timing__setup__ws": 0.303421, - "finish__timing__wns_percent_delay": 20.829329, - "finish_merge__cpu__total": 1.83, - "finish_merge__mem__peak": 399248.0, - "finish_merge__runtime__total": "0:02.07", - "floorplan__cpu__total": 2.02, + "finish__timing__setup__ws": 0.290475, + "finish__timing__wns_percent_delay": 19.768629, + "finish_merge__cpu__total": 1.27, + "finish_merge__mem__peak": 400500.0, + "finish_merge__runtime__total": "0:01.44", + "floorplan__cpu__total": 1.34, "floorplan__design__core__area": 9595.2, "floorplan__design__die__area": 10393.8, "floorplan__design__instance__area": 3996, @@ -157,32 +157,32 @@ "floorplan__design__io": 54, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 3, - "floorplan__mem__peak": 159312.0, + "floorplan__mem__peak": 159672.0, "floorplan__power__internal__total": 0.00241133, "floorplan__power__leakage__total": 4.95009e-08, "floorplan__power__switching__total": 0.000804936, "floorplan__power__total": 0.00321631, - "floorplan__runtime__total": "0:02.11", + "floorplan__runtime__total": "0:01.44", "floorplan__timing__setup__tns": 0, "floorplan__timing__setup__ws": 0.810019, - "floorplan_io__cpu__total": 1.78, - "floorplan_io__mem__peak": 153852.0, - "floorplan_io__runtime__total": "0:01.90", - "floorplan_macro__cpu__total": 1.79, - "floorplan_macro__mem__peak": 153848.0, - "floorplan_macro__runtime__total": "0:01.89", - "floorplan_pdn__cpu__total": 1.78, - "floorplan_pdn__mem__peak": 156060.0, - "floorplan_pdn__runtime__total": "0:01.91", - "floorplan_tap__cpu__total": 1.75, - "floorplan_tap__mem__peak": 153848.0, - "floorplan_tap__runtime__total": "0:01.89", - "floorplan_tdms__cpu__total": 1.82, - "floorplan_tdms__mem__peak": 154108.0, - "floorplan_tdms__runtime__total": "0:01.90", + "floorplan_io__cpu__total": 1.18, + "floorplan_io__mem__peak": 154720.0, + "floorplan_io__runtime__total": "0:01.28", + "floorplan_macro__cpu__total": 1.21, + "floorplan_macro__mem__peak": 154472.0, + "floorplan_macro__runtime__total": "0:01.29", + "floorplan_pdn__cpu__total": 1.18, + "floorplan_pdn__mem__peak": 157292.0, + "floorplan_pdn__runtime__total": "0:01.29", + "floorplan_tap__cpu__total": 1.19, + "floorplan_tap__mem__peak": 154856.0, + "floorplan_tap__runtime__total": "0:01.26", + "floorplan_tdms__cpu__total": 1.21, + "floorplan_tdms__mem__peak": 154344.0, + "floorplan_tdms__runtime__total": "0:01.30", "flow__errors__count": 0, "flow__warnings__count": 0, - "globalplace__cpu__total": 15.79, + "globalplace__cpu__total": 322.97, "globalplace__design__core__area": 9595.2, "globalplace__design__die__area": 10393.8, "globalplace__design__instance__area": 4168.63, @@ -196,26 +196,26 @@ "globalplace__design__io": 54, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 0, - "globalplace__mem__peak": 586496.0, - "globalplace__power__internal__total": 0.00242133, + "globalplace__mem__peak": 596528.0, + "globalplace__power__internal__total": 0.00242135, "globalplace__power__leakage__total": 4.95009e-08, - "globalplace__power__switching__total": 0.001123, - "globalplace__power__total": 0.00354438, - "globalplace__runtime__total": "0:03.86", + "globalplace__power__switching__total": 0.00112304, + "globalplace__power__total": 0.00354444, + "globalplace__runtime__total": "0:27.23", "globalplace__timing__setup__tns": 0, - "globalplace__timing__setup__ws": 0.649527, - "globalplace_io__cpu__total": 1.82, - "globalplace_io__mem__peak": 154356.0, - "globalplace_io__runtime__total": "0:01.89", - "globalplace_skip_io__cpu__total": 8.0, - "globalplace_skip_io__mem__peak": 156152.0, - "globalplace_skip_io__runtime__total": "0:02.08", + "globalplace__timing__setup__ws": 0.64932, + "globalplace_io__cpu__total": 1.19, + "globalplace_io__mem__peak": 155372.0, + "globalplace_io__runtime__total": "0:01.27", + "globalplace_skip_io__cpu__total": 413.97, + "globalplace_skip_io__mem__peak": 156312.0, + "globalplace_skip_io__runtime__total": "0:33.23", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, "globalroute__antenna_diodes_count": 0, - "globalroute__clock__skew__hold": 0.00580161, - "globalroute__clock__skew__setup": 0.00580161, - "globalroute__cpu__total": 5.84, + "globalroute__clock__skew__hold": 0.00269665, + "globalroute__clock__skew__setup": 0.00269665, + "globalroute__cpu__total": 2.84, "globalroute__design__core__area": 9595.2, "globalroute__design__die__area": 10393.8, "globalroute__design__instance__area": 4852.74, @@ -235,25 +235,25 @@ "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 0, - "globalroute__mem__peak": 609508.0, - "globalroute__power__internal__total": 0.00296437, + "globalroute__mem__peak": 606344.0, + "globalroute__power__internal__total": 0.00296415, "globalroute__power__leakage__total": 5.809e-08, - "globalroute__power__switching__total": 0.00192736, - "globalroute__power__total": 0.00489179, - "globalroute__route__wirelength__estimated": 8844.62, - "globalroute__runtime__total": "0:03.18", - "globalroute__timing__clock__slack": 0.16, + "globalroute__power__switching__total": 0.00191081, + "globalroute__power__total": 0.00487502, + "globalroute__route__wirelength__estimated": 8822.42, + "globalroute__runtime__total": "0:02.15", + "globalroute__timing__clock__slack": 0.189, "globalroute__timing__drv__hold_violation_count": 0, "globalroute__timing__drv__max_cap": 0, - "globalroute__timing__drv__max_cap_limit": 0.735583, + "globalroute__timing__drv__max_cap_limit": 0.737041, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, "globalroute__timing__drv__max_slew": 0, - "globalroute__timing__drv__max_slew_limit": 0.673252, + "globalroute__timing__drv__max_slew_limit": 0.674523, "globalroute__timing__drv__setup_violation_count": 0, "globalroute__timing__setup__tns": 0, - "globalroute__timing__setup__ws": 0.159587, - "placeopt__cpu__total": 2.35, + "globalroute__timing__setup__ws": 0.188552, + "placeopt__cpu__total": 1.47, "placeopt__design__core__area": 9595.2, "placeopt__design__die__area": 10393.8, "placeopt__design__instance__area": 4716.88, @@ -267,29 +267,29 @@ "placeopt__design__io": 54, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 0, - "placeopt__mem__peak": 547436.0, - "placeopt__power__internal__total": 0.00268697, + "placeopt__mem__peak": 547760.0, + "placeopt__power__internal__total": 0.00268696, "placeopt__power__leakage__total": 5.69683e-08, - "placeopt__power__switching__total": 0.00120988, + "placeopt__power__switching__total": 0.00120989, "placeopt__power__total": 0.0038969, - "placeopt__runtime__total": "0:02.84", + "placeopt__runtime__total": "0:01.85", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.76972, + "placeopt__timing__drv__max_cap_limit": 0.769756, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.70299, + "placeopt__timing__drv__max_slew_limit": 0.703021, "placeopt__timing__drv__setup_violation_count": 0, "placeopt__timing__setup__tns": 0, - "placeopt__timing__setup__ws": 0.601374, + "placeopt__timing__setup__ws": 0.602118, "run__flow__design": "gcd", - "run__flow__generate_date": "2024-09-19 14:10", + "run__flow__generate_date": "2024-09-26 21:32", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15759-g9136ba699", + "run__flow__openroad_version": "v2.0-15807-g036379d64", "run__flow__platform": "sky130hs", "run__flow__platform__capacitance_units": "1pF", "run__flow__platform__current_units": "1mA", @@ -298,14 +298,14 @@ "run__flow__platform__resistance_units": "1kohm", "run__flow__platform__time_units": "1ns", "run__flow__platform__voltage_units": "1v", - "run__flow__platform_commit": "N/A", - "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "3d6613e7-75e4-4716-9c24-1b48970a076d", - "run__flow__variant": "base", - "synth__cpu__total": 4.45, + "run__flow__platform_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__scripts_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__uuid": "42bcfb20-db7d-4d9f-9888-7156cf44d499", + "run__flow__variant": "odb_0925", + "synth__cpu__total": 3.01, "synth__design__instance__area__stdcell": 3996.0, "synth__design__instance__count__stdcell": 479.0, - "synth__mem__peak": 112384.0, - "synth__runtime__total": "0:04.67", - "total_time": "0:01:00.120000" + "synth__mem__peak": 113280.0, + "synth__runtime__total": "0:03.21", + "total_time": "0:01:38.900000" } \ No newline at end of file diff --git a/flow/designs/sky130hs/gcd/rules-base.json b/flow/designs/sky130hs/gcd/rules-base.json index 16d64da0b2..4370b7cceb 100644 --- a/flow/designs/sky130hs/gcd/rules-base.json +++ b/flow/designs/sky130hs/gcd/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 4435.49, + "value": 4595.4, "compare": "<=" }, "constraints__clocks__count": { @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 5171, + "value": 5424, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 691, + "value": 736, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,11 +20,11 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 43, + "value": 64, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 43, + "value": 64, "compare": "<=" }, "globalroute__antenna_diodes_count": { @@ -32,7 +32,7 @@ "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 12093, + "value": 12021, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -52,11 +52,11 @@ "compare": ">=" }, "finish__design__instance__area": { - "value": 5320, + "value": 5581, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 21, + "value": 32, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { diff --git a/flow/designs/sky130hs/ibex/metadata-base-ok.json b/flow/designs/sky130hs/ibex/metadata-base-ok.json index b0a96d3417..b03caf8ba0 100644 --- a/flow/designs/sky130hs/ibex/metadata-base-ok.json +++ b/flow/designs/sky130hs/ibex/metadata-base-ok.json @@ -3,155 +3,155 @@ "constraints__clocks__details": [ "core_clock: 11.8000" ], - "cts__clock__skew__hold": 1.21382, - "cts__clock__skew__setup": 1.21391, - "cts__cpu__total": 56.28, + "cts__clock__skew__hold": 1.21408, + "cts__clock__skew__setup": 1.21409, + "cts__cpu__total": 53.95, "cts__design__core__area": 414612, "cts__design__die__area": 419379, - "cts__design__instance__area": 247426, + "cts__design__instance__area": 252293, "cts__design__instance__area__macros": 0, - "cts__design__instance__area__stdcell": 247426, - "cts__design__instance__count": 19034, + "cts__design__instance__area__stdcell": 252293, + "cts__design__instance__count": 19045, "cts__design__instance__count__hold_buffer": 0, "cts__design__instance__count__macros": 0, "cts__design__instance__count__setup_buffer": 0, - "cts__design__instance__count__stdcell": 19034, + "cts__design__instance__count__stdcell": 19045, "cts__design__instance__displacement__max": 0, "cts__design__instance__displacement__mean": 0, "cts__design__instance__displacement__total": 0, - "cts__design__instance__utilization": 0.596765, - "cts__design__instance__utilization__stdcell": 0.596765, + "cts__design__instance__utilization": 0.608504, + "cts__design__instance__utilization__stdcell": 0.608504, "cts__design__io": 264, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 0, - "cts__mem__peak": 710316.0, - "cts__power__internal__total": 0.0832335, - "cts__power__leakage__total": 2.28235e-06, - "cts__power__switching__total": 0.0393841, - "cts__power__total": 0.12262, - "cts__route__wirelength__estimated": 551408, - "cts__runtime__total": "0:56.88", + "cts__mem__peak": 607464.0, + "cts__power__internal__total": 0.0866815, + "cts__power__leakage__total": 2.28371e-06, + "cts__power__switching__total": 0.0405504, + "cts__power__total": 0.127234, + "cts__route__wirelength__estimated": 553316, + "cts__runtime__total": "0:54.48", "cts__timing__drv__hold_violation_count": 0, - "cts__timing__drv__max_cap": 1, - "cts__timing__drv__max_cap_limit": -0.0160258, + "cts__timing__drv__max_cap": 4, + "cts__timing__drv__max_cap_limit": -0.0268818, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, - "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.00845868, + "cts__timing__drv__max_slew": 28, + "cts__timing__drv__max_slew_limit": -0.00965505, "cts__timing__drv__setup_violation_count": 0, "cts__timing__setup__tns": 0, - "cts__timing__setup__ws": 1.95698, + "cts__timing__setup__ws": 1.79194, "design__io__hpwl": 52472952, "design__violations": 0, - "detailedplace__cpu__total": 26.03, + "detailedplace__cpu__total": 26.45, "detailedplace__design__core__area": 414612, "detailedplace__design__die__area": 419379, - "detailedplace__design__instance__area": 228518, + "detailedplace__design__instance__area": 233627, "detailedplace__design__instance__area__macros": 0, - "detailedplace__design__instance__area__stdcell": 228518, - "detailedplace__design__instance__count": 18387, + "detailedplace__design__instance__area__stdcell": 233627, + "detailedplace__design__instance__count": 18404, "detailedplace__design__instance__count__macros": 0, - "detailedplace__design__instance__count__stdcell": 18387, - "detailedplace__design__instance__displacement__max": 44.56, - "detailedplace__design__instance__displacement__mean": 2.784, - "detailedplace__design__instance__displacement__total": 51195.3, - "detailedplace__design__instance__utilization": 0.551162, - "detailedplace__design__instance__utilization__stdcell": 0.551162, + "detailedplace__design__instance__count__stdcell": 18404, + "detailedplace__design__instance__displacement__max": 66.991, + "detailedplace__design__instance__displacement__mean": 3.129, + "detailedplace__design__instance__displacement__total": 57600.3, + "detailedplace__design__instance__utilization": 0.563483, + "detailedplace__design__instance__utilization__stdcell": 0.563483, "detailedplace__design__io": 264, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 0, - "detailedplace__mem__peak": 248156.0, - "detailedplace__power__internal__total": 0.0746772, - "detailedplace__power__leakage__total": 2.16192e-06, - "detailedplace__power__switching__total": 0.0349089, - "detailedplace__power__total": 0.109588, - "detailedplace__route__wirelength__estimated": 528184, - "detailedplace__runtime__total": "0:26.21", + "detailedplace__mem__peak": 248472.0, + "detailedplace__power__internal__total": 0.0782333, + "detailedplace__power__leakage__total": 2.16443e-06, + "detailedplace__power__switching__total": 0.0360322, + "detailedplace__power__total": 0.114268, + "detailedplace__route__wirelength__estimated": 534553, + "detailedplace__runtime__total": "0:26.62", "detailedplace__timing__drv__hold_violation_count": 0, - "detailedplace__timing__drv__max_cap": 1, - "detailedplace__timing__drv__max_cap_limit": -0.0113413, + "detailedplace__timing__drv__max_cap": 2, + "detailedplace__timing__drv__max_cap_limit": -0.0242549, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, - "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.0126489, + "detailedplace__timing__drv__max_slew": 28, + "detailedplace__timing__drv__max_slew_limit": -0.00714306, "detailedplace__timing__drv__setup_violation_count": 0, "detailedplace__timing__setup__tns": 0, - "detailedplace__timing__setup__ws": 2.09332, + "detailedplace__timing__setup__ws": 2.11896, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, - "detailedroute__antenna_diodes_count": 6, + "detailedroute__antenna_diodes_count": 13, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 10, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 15609, - "detailedroute__route__drc_errors__iter:2": 8839, - "detailedroute__route__drc_errors__iter:3": 8114, - "detailedroute__route__drc_errors__iter:4": 1349, - "detailedroute__route__drc_errors__iter:5": 262, - "detailedroute__route__drc_errors__iter:6": 176, - "detailedroute__route__drc_errors__iter:7": 57, - "detailedroute__route__drc_errors__iter:8": 5, + "detailedroute__route__drc_errors__iter:1": 15915, + "detailedroute__route__drc_errors__iter:2": 8429, + "detailedroute__route__drc_errors__iter:3": 8331, + "detailedroute__route__drc_errors__iter:4": 1579, + "detailedroute__route__drc_errors__iter:5": 279, + "detailedroute__route__drc_errors__iter:6": 84, + "detailedroute__route__drc_errors__iter:7": 11, + "detailedroute__route__drc_errors__iter:8": 10, "detailedroute__route__drc_errors__iter:9": 0, - "detailedroute__route__net": 15210, + "detailedroute__route__net": 15228, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 124987, + "detailedroute__route__vias": 124874, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 124987, - "detailedroute__route__wirelength": 707274, - "detailedroute__route__wirelength__iter:1": 714997, - "detailedroute__route__wirelength__iter:2": 709235, - "detailedroute__route__wirelength__iter:3": 708198, - "detailedroute__route__wirelength__iter:4": 707382, - "detailedroute__route__wirelength__iter:5": 707332, - "detailedroute__route__wirelength__iter:6": 707312, - "detailedroute__route__wirelength__iter:7": 707252, - "detailedroute__route__wirelength__iter:8": 707257, - "detailedroute__route__wirelength__iter:9": 707274, - "finish__clock__skew__hold": 1.33718, - "finish__clock__skew__setup": 1.3372, - "finish__cpu__total": 87.11, + "detailedroute__route__vias__singlecut": 124874, + "detailedroute__route__wirelength": 711473, + "detailedroute__route__wirelength__iter:1": 719346, + "detailedroute__route__wirelength__iter:2": 713400, + "detailedroute__route__wirelength__iter:3": 712695, + "detailedroute__route__wirelength__iter:4": 711619, + "detailedroute__route__wirelength__iter:5": 711472, + "detailedroute__route__wirelength__iter:6": 711514, + "detailedroute__route__wirelength__iter:7": 711468, + "detailedroute__route__wirelength__iter:8": 711472, + "detailedroute__route__wirelength__iter:9": 711473, + "finish__clock__skew__hold": 1.40559, + "finish__clock__skew__setup": 1.4057, + "finish__cpu__total": 80.66, "finish__design__core__area": 414612, "finish__design__die__area": 419379, - "finish__design__instance__area": 248345, + "finish__design__instance__area": 253540, "finish__design__instance__area__macros": 0, - "finish__design__instance__area__stdcell": 248345, - "finish__design__instance__count": 19093, + "finish__design__instance__area__stdcell": 253540, + "finish__design__instance__count": 19113, "finish__design__instance__count__macros": 0, - "finish__design__instance__count__stdcell": 19093, - "finish__design__instance__utilization": 0.598981, - "finish__design__instance__utilization__stdcell": 0.598981, + "finish__design__instance__count__stdcell": 19113, + "finish__design__instance__utilization": 0.611511, + "finish__design__instance__utilization__stdcell": 0.611511, "finish__design__io": 264, - "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.79912, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.00086194, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.00244215, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.00218023, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.79756, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.00218023, + "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.79909, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.000899879, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0029044, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.00251638, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.7971, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.00251638, "finish__flow__errors__count": 0, "finish__flow__warnings__count": 1, - "finish__mem__peak": 598116.0, - "finish__power__internal__total": 0.0839638, - "finish__power__leakage__total": 2.28743e-06, - "finish__power__switching__total": 0.043951, - "finish__power__total": 0.127917, - "finish__runtime__total": "1:27.65", + "finish__mem__peak": 592172.0, + "finish__power__internal__total": 0.087408, + "finish__power__leakage__total": 2.29052e-06, + "finish__power__switching__total": 0.044944, + "finish__power__total": 0.132354, + "finish__runtime__total": "1:21.19", "finish__timing__drv__hold_violation_count": 0, - "finish__timing__drv__max_cap": 9, - "finish__timing__drv__max_cap_limit": -0.098628, + "finish__timing__drv__max_cap": 8, + "finish__timing__drv__max_cap_limit": -0.0908075, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, - "finish__timing__drv__max_slew": 133, - "finish__timing__drv__max_slew_limit": -0.0739826, + "finish__timing__drv__max_slew": 125, + "finish__timing__drv__max_slew_limit": -0.0844648, "finish__timing__drv__setup_violation_count": 0, "finish__timing__setup__tns": 0, - "finish__timing__setup__ws": 1.32115, - "finish__timing__wns_percent_delay": 16.271909, - "finish_merge__cpu__total": 3.36, - "finish_merge__mem__peak": 534472.0, - "finish_merge__runtime__total": "0:03.71", - "floorplan__cpu__total": 14.89, + "finish__timing__setup__ws": 1.08505, + "finish__timing__wns_percent_delay": 12.986236, + "finish_merge__cpu__total": 3.23, + "finish_merge__mem__peak": 533316.0, + "finish_merge__runtime__total": "0:03.59", + "floorplan__cpu__total": 14.47, "floorplan__design__core__area": 414612, "floorplan__design__die__area": 419379, "floorplan__design__instance__area": 179289, @@ -165,32 +165,32 @@ "floorplan__design__io": 264, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 2, - "floorplan__mem__peak": 221168.0, + "floorplan__mem__peak": 221724.0, "floorplan__power__internal__total": 0.0858613, "floorplan__power__leakage__total": 2.13915e-06, "floorplan__power__switching__total": 0.0154103, "floorplan__power__total": 0.101274, - "floorplan__runtime__total": "0:15.08", + "floorplan__runtime__total": "0:14.60", "floorplan__timing__setup__tns": -7430.65, "floorplan__timing__setup__ws": -7.33126, - "floorplan_io__cpu__total": 1.86, - "floorplan_io__mem__peak": 178980.0, - "floorplan_io__runtime__total": "0:01.99", - "floorplan_macro__cpu__total": 1.88, - "floorplan_macro__mem__peak": 178048.0, - "floorplan_macro__runtime__total": "0:01.99", - "floorplan_pdn__cpu__total": 2.38, - "floorplan_pdn__mem__peak": 183632.0, - "floorplan_pdn__runtime__total": "0:02.46", - "floorplan_tap__cpu__total": 1.92, - "floorplan_tap__mem__peak": 172324.0, - "floorplan_tap__runtime__total": "0:02.01", - "floorplan_tdms__cpu__total": 1.85, - "floorplan_tdms__mem__peak": 178344.0, - "floorplan_tdms__runtime__total": "0:01.99", + "floorplan_io__cpu__total": 1.9, + "floorplan_io__mem__peak": 178828.0, + "floorplan_io__runtime__total": "0:01.98", + "floorplan_macro__cpu__total": 1.85, + "floorplan_macro__mem__peak": 178468.0, + "floorplan_macro__runtime__total": "0:01.98", + "floorplan_pdn__cpu__total": 2.34, + "floorplan_pdn__mem__peak": 183672.0, + "floorplan_pdn__runtime__total": "0:02.43", + "floorplan_tap__cpu__total": 2.0, + "floorplan_tap__mem__peak": 170848.0, + "floorplan_tap__runtime__total": "0:02.15", + "floorplan_tdms__cpu__total": 1.87, + "floorplan_tdms__mem__peak": 178460.0, + "floorplan_tdms__runtime__total": "0:01.98", "flow__errors__count": 0, "flow__warnings__count": 0, - "globalplace__cpu__total": 365.1, + "globalplace__cpu__total": 422.77, "globalplace__design__core__area": 414612, "globalplace__design__die__area": 419379, "globalplace__design__instance__area": 186458, @@ -204,100 +204,100 @@ "globalplace__design__io": 264, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 0, - "globalplace__mem__peak": 745348.0, - "globalplace__power__internal__total": 0.105006, + "globalplace__mem__peak": 642868.0, + "globalplace__power__internal__total": 0.105001, "globalplace__power__leakage__total": 2.13915e-06, - "globalplace__power__switching__total": 0.0276303, - "globalplace__power__total": 0.132639, - "globalplace__runtime__total": "1:42.27", - "globalplace__timing__setup__tns": -30276.2, - "globalplace__timing__setup__ws": -19.1646, - "globalplace_io__cpu__total": 1.92, - "globalplace_io__mem__peak": 184548.0, - "globalplace_io__runtime__total": "0:02.05", - "globalplace_skip_io__cpu__total": 210.31, - "globalplace_skip_io__mem__peak": 203980.0, - "globalplace_skip_io__runtime__total": "0:08.68", + "globalplace__power__switching__total": 0.0274761, + "globalplace__power__total": 0.132479, + "globalplace__runtime__total": "1:48.41", + "globalplace__timing__setup__tns": -30272.6, + "globalplace__timing__setup__ws": -19.3456, + "globalplace_io__cpu__total": 1.83, + "globalplace_io__mem__peak": 184864.0, + "globalplace_io__runtime__total": "0:01.97", + "globalplace_skip_io__cpu__total": 199.31, + "globalplace_skip_io__mem__peak": 204308.0, + "globalplace_skip_io__runtime__total": "0:08.33", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, - "globalroute__antenna_diodes_count": 22, - "globalroute__clock__skew__hold": 1.38171, - "globalroute__clock__skew__setup": 1.38174, - "globalroute__cpu__total": 210.32, + "globalroute__antenna_diodes_count": 17, + "globalroute__clock__skew__hold": 1.39058, + "globalroute__clock__skew__setup": 1.39061, + "globalroute__cpu__total": 205.13, "globalroute__design__core__area": 414612, "globalroute__design__die__area": 419379, - "globalroute__design__instance__area": 248326, + "globalroute__design__instance__area": 253498, "globalroute__design__instance__area__macros": 0, - "globalroute__design__instance__area__stdcell": 248326, - "globalroute__design__instance__count": 19087, + "globalroute__design__instance__area__stdcell": 253498, + "globalroute__design__instance__count": 19100, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 0, "globalroute__design__instance__count__setup_buffer": 0, - "globalroute__design__instance__count__stdcell": 19087, + "globalroute__design__instance__count__stdcell": 19100, "globalroute__design__instance__displacement__max": 0, "globalroute__design__instance__displacement__mean": 0, "globalroute__design__instance__displacement__total": 0, - "globalroute__design__instance__utilization": 0.598935, - "globalroute__design__instance__utilization__stdcell": 0.598935, + "globalroute__design__instance__utilization": 0.611411, + "globalroute__design__instance__utilization__stdcell": 0.611411, "globalroute__design__io": 264, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 0, - "globalroute__mem__peak": 856196.0, - "globalroute__power__internal__total": 0.0840929, - "globalroute__power__leakage__total": 2.28743e-06, - "globalroute__power__switching__total": 0.0465897, - "globalroute__power__total": 0.130685, - "globalroute__route__wirelength__estimated": 556141, - "globalroute__runtime__total": "1:14.75", - "globalroute__timing__clock__slack": 1.241, + "globalroute__mem__peak": 782740.0, + "globalroute__power__internal__total": 0.0875856, + "globalroute__power__leakage__total": 2.29052e-06, + "globalroute__power__switching__total": 0.0480401, + "globalroute__power__total": 0.135628, + "globalroute__route__wirelength__estimated": 559841, + "globalroute__runtime__total": "1:11.54", + "globalroute__timing__clock__slack": 1.09, "globalroute__timing__drv__hold_violation_count": 0, - "globalroute__timing__drv__max_cap": 0, - "globalroute__timing__drv__max_cap_limit": 0.0029035, + "globalroute__timing__drv__max_cap": 1, + "globalroute__timing__drv__max_cap_limit": -0.0020245, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, "globalroute__timing__drv__max_slew": 0, - "globalroute__timing__drv__max_slew_limit": 3.86358e-05, + "globalroute__timing__drv__max_slew_limit": 0.015962, "globalroute__timing__drv__setup_violation_count": 0, "globalroute__timing__setup__tns": 0, - "globalroute__timing__setup__ws": 1.2413, - "placeopt__cpu__total": 29.69, + "globalroute__timing__setup__ws": 1.09038, + "placeopt__cpu__total": 27.87, "placeopt__design__core__area": 414612, "placeopt__design__die__area": 419379, - "placeopt__design__instance__area": 228518, + "placeopt__design__instance__area": 233627, "placeopt__design__instance__area__macros": 0, - "placeopt__design__instance__area__stdcell": 228518, - "placeopt__design__instance__count": 18387, + "placeopt__design__instance__area__stdcell": 233627, + "placeopt__design__instance__count": 18404, "placeopt__design__instance__count__macros": 0, - "placeopt__design__instance__count__stdcell": 18387, - "placeopt__design__instance__utilization": 0.551162, - "placeopt__design__instance__utilization__stdcell": 0.551162, + "placeopt__design__instance__count__stdcell": 18404, + "placeopt__design__instance__utilization": 0.563483, + "placeopt__design__instance__utilization__stdcell": 0.563483, "placeopt__design__io": 264, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 0, - "placeopt__mem__peak": 625936.0, - "placeopt__power__internal__total": 0.0746441, - "placeopt__power__leakage__total": 2.16192e-06, - "placeopt__power__switching__total": 0.0343187, - "placeopt__power__total": 0.108965, - "placeopt__runtime__total": "0:30.29", + "placeopt__mem__peak": 506060.0, + "placeopt__power__internal__total": 0.0781953, + "placeopt__power__leakage__total": 2.16443e-06, + "placeopt__power__switching__total": 0.0353944, + "placeopt__power__total": 0.113592, + "placeopt__runtime__total": "0:28.40", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.000441097, + "placeopt__timing__drv__max_cap_limit": 0.00412675, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.023193, + "placeopt__timing__drv__max_slew_limit": 0.0220326, "placeopt__timing__drv__setup_violation_count": 0, "placeopt__timing__setup__tns": 0, - "placeopt__timing__setup__ws": 2.13516, + "placeopt__timing__setup__ws": 2.14329, "run__flow__design": "ibex", - "run__flow__generate_date": "2024-09-23 21:16", + "run__flow__generate_date": "2024-09-28 19:54", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15825-ge21fbdf83", + "run__flow__openroad_version": "v2.0-16113-g7b5c8faf7", "run__flow__platform": "sky130hs", "run__flow__platform__capacitance_units": "1pF", "run__flow__platform__current_units": "1mA", @@ -308,12 +308,12 @@ "run__flow__platform__voltage_units": "1v", "run__flow__platform_commit": "N/A", "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "c83b6f0d-479a-44d6-a374-c111b700d5ab", + "run__flow__uuid": "0da8a432-5437-41c0-ba3a-bf6ea63e462b", "run__flow__variant": "base", - "synth__cpu__total": 92.46, + "synth__cpu__total": 89.54, "synth__design__instance__area__stdcell": 187556.256, "synth__design__instance__count__stdcell": 14588.0, - "synth__mem__peak": 229068.0, - "synth__runtime__total": "1:33.09", - "total_time": "0:08:31.100000" + "synth__mem__peak": 228472.0, + "synth__runtime__total": "1:30.05", + "total_time": "0:08:19.700000" } \ No newline at end of file diff --git a/flow/designs/sky130hs/ibex/rules-base.json b/flow/designs/sky130hs/ibex/rules-base.json index 53519846dc..f0c1ebfcb4 100644 --- a/flow/designs/sky130hs/ibex/rules-base.json +++ b/flow/designs/sky130hs/ibex/rules-base.json @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 262109, + "value": 262420, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 20257, + "value": 20686, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,19 +20,19 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 1762, + "value": 1799, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 1762, + "value": 1799, "compare": "<=" }, "globalroute__antenna_diodes_count": { - "value": 25, + "value": 20, "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 797300, + "value": 800273, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -44,7 +44,7 @@ "compare": "<=" }, "detailedroute__antenna_diodes_count": { - "value": 7, + "value": 15, "compare": "<=" }, "finish__timing__setup__ws": { @@ -52,11 +52,11 @@ "compare": ">=" }, "finish__design__instance__area": { - "value": 270051, + "value": 285126, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 881, + "value": 899, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { diff --git a/flow/designs/sky130hs/jpeg/metadata-base-ok.json b/flow/designs/sky130hs/jpeg/metadata-base-ok.json index 771a0864be..9d5461bddb 100644 --- a/flow/designs/sky130hs/jpeg/metadata-base-ok.json +++ b/flow/designs/sky130hs/jpeg/metadata-base-ok.json @@ -3,161 +3,207 @@ "constraints__clocks__details": [ "clk: 6.0000" ], - "cts__clock__skew__hold": 0.106692, - "cts__clock__skew__setup": 0.106692, - "cts__cpu__total": 67.03, + "cts__clock__skew__hold": 0.0956994, + "cts__clock__skew__setup": 0.0956994, + "cts__cpu__total": 69.25, "cts__design__core__area": 1352770.0, "cts__design__die__area": 1366160.0, - "cts__design__instance__area": 838946, + "cts__design__instance__area": 855970, "cts__design__instance__area__macros": 0, - "cts__design__instance__area__stdcell": 838946, - "cts__design__instance__count": 76838, + "cts__design__instance__area__stdcell": 855970, + "cts__design__instance__count": 76840, "cts__design__instance__count__hold_buffer": 0, "cts__design__instance__count__macros": 0, "cts__design__instance__count__setup_buffer": 0, - "cts__design__instance__count__stdcell": 76838, + "cts__design__instance__count__stdcell": 76840, "cts__design__instance__displacement__max": 0, "cts__design__instance__displacement__mean": 0, "cts__design__instance__displacement__total": 0, - "cts__design__instance__utilization": 0.620171, - "cts__design__instance__utilization__stdcell": 0.620171, + "cts__design__instance__utilization": 0.632756, + "cts__design__instance__utilization__stdcell": 0.632756, "cts__design__io": 47, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 0, - "cts__mem__peak": 964896.0, - "cts__power__internal__total": 2.11967, - "cts__power__leakage__total": 8.18439e-06, - "cts__power__switching__total": 1.38114, - "cts__power__total": 3.50082, - "cts__route__wirelength__estimated": 2848010.0, - "cts__runtime__total": "1:07.80", + "cts__mem__peak": 947112.0, + "cts__power__internal__total": 2.21055, + "cts__power__leakage__total": 8.1493e-06, + "cts__power__switching__total": 1.40575, + "cts__power__total": 3.61631, + "cts__route__wirelength__estimated": 2820630.0, + "cts__runtime__total": "1:10.03", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 0, - "cts__timing__drv__max_cap_limit": 0.0923474, + "cts__timing__drv__max_cap_limit": 0.0567323, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 0, - "cts__timing__drv__max_slew_limit": 0.0999449, + "cts__timing__drv__max_slew_limit": 0.0659911, "cts__timing__drv__setup_violation_count": 0, "cts__timing__setup__tns": 0, - "cts__timing__setup__ws": 0.144556, + "cts__timing__setup__ws": 0.0934635, "design__io__hpwl": 13921904, "design__violations": 0, - "detailedplace__cpu__total": 74.35, + "detailedplace__cpu__total": 76.72, "detailedplace__design__core__area": 1352770.0, "detailedplace__design__die__area": 1366160.0, - "detailedplace__design__instance__area": 818426, + "detailedplace__design__instance__area": 835797, "detailedplace__design__instance__area__macros": 0, - "detailedplace__design__instance__area__stdcell": 818426, - "detailedplace__design__instance__count": 75989, + "detailedplace__design__instance__area__stdcell": 835797, + "detailedplace__design__instance__count": 75991, "detailedplace__design__instance__count__macros": 0, - "detailedplace__design__instance__count__stdcell": 75989, - "detailedplace__design__instance__displacement__max": 44.171, - "detailedplace__design__instance__displacement__mean": 2.881, - "detailedplace__design__instance__displacement__total": 218932, - "detailedplace__design__instance__utilization": 0.605002, - "detailedplace__design__instance__utilization__stdcell": 0.605002, + "detailedplace__design__instance__count__stdcell": 75991, + "detailedplace__design__instance__displacement__max": 52.704, + "detailedplace__design__instance__displacement__mean": 3.019, + "detailedplace__design__instance__displacement__total": 229423, + "detailedplace__design__instance__utilization": 0.617843, + "detailedplace__design__instance__utilization__stdcell": 0.617843, "detailedplace__design__io": 47, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 0, - "detailedplace__mem__peak": 498520.0, - "detailedplace__power__internal__total": 2.09949, - "detailedplace__power__leakage__total": 8.03968e-06, - "detailedplace__power__switching__total": 1.35235, - "detailedplace__power__total": 3.45184, - "detailedplace__route__wirelength__estimated": 2854930.0, - "detailedplace__runtime__total": "1:14.77", + "detailedplace__mem__peak": 584312.0, + "detailedplace__power__internal__total": 2.19064, + "detailedplace__power__leakage__total": 8.00542e-06, + "detailedplace__power__switching__total": 1.37594, + "detailedplace__power__total": 3.56658, + "detailedplace__route__wirelength__estimated": 2826880.0, + "detailedplace__runtime__total": "1:17.21", "detailedplace__timing__drv__hold_violation_count": 0, "detailedplace__timing__drv__max_cap": 0, - "detailedplace__timing__drv__max_cap_limit": 0.104524, + "detailedplace__timing__drv__max_cap_limit": 0.0618095, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, "detailedplace__timing__drv__max_slew": 0, - "detailedplace__timing__drv__max_slew_limit": 0.111429, + "detailedplace__timing__drv__max_slew_limit": 0.0707792, "detailedplace__timing__drv__setup_violation_count": 0, "detailedplace__timing__setup__tns": 0, - "detailedplace__timing__setup__ws": 0.163708, + "detailedplace__timing__setup__ws": 0.120986, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, - "detailedroute__antenna_diodes_count": 289, + "detailedroute__antenna_diodes_count": 357, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 10, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 64366, - "detailedroute__route__drc_errors__iter:10": 50, - "detailedroute__route__drc_errors__iter:11": 20, - "detailedroute__route__drc_errors__iter:12": 0, - "detailedroute__route__drc_errors__iter:2": 38762, - "detailedroute__route__drc_errors__iter:3": 36259, - "detailedroute__route__drc_errors__iter:4": 6864, - "detailedroute__route__drc_errors__iter:5": 1559, - "detailedroute__route__drc_errors__iter:6": 406, - "detailedroute__route__drc_errors__iter:7": 217, - "detailedroute__route__drc_errors__iter:8": 125, - "detailedroute__route__drc_errors__iter:9": 81, - "detailedroute__route__net": 73830, + "detailedroute__route__drc_errors__iter:1": 572, + "detailedroute__route__drc_errors__iter:10": 68, + "detailedroute__route__drc_errors__iter:11": 32, + "detailedroute__route__drc_errors__iter:12": 10, + "detailedroute__route__drc_errors__iter:13": 0, + "detailedroute__route__drc_errors__iter:14": 31, + "detailedroute__route__drc_errors__iter:15": 14, + "detailedroute__route__drc_errors__iter:16": 5, + "detailedroute__route__drc_errors__iter:17": 5, + "detailedroute__route__drc_errors__iter:18": 5, + "detailedroute__route__drc_errors__iter:19": 4, + "detailedroute__route__drc_errors__iter:2": 158, + "detailedroute__route__drc_errors__iter:20": 4, + "detailedroute__route__drc_errors__iter:21": 4, + "detailedroute__route__drc_errors__iter:22": 4, + "detailedroute__route__drc_errors__iter:23": 4, + "detailedroute__route__drc_errors__iter:24": 4, + "detailedroute__route__drc_errors__iter:25": 3, + "detailedroute__route__drc_errors__iter:26": 3, + "detailedroute__route__drc_errors__iter:27": 3, + "detailedroute__route__drc_errors__iter:28": 3, + "detailedroute__route__drc_errors__iter:29": 1, + "detailedroute__route__drc_errors__iter:3": 127, + "detailedroute__route__drc_errors__iter:30": 0, + "detailedroute__route__drc_errors__iter:4": 14, + "detailedroute__route__drc_errors__iter:5": 9, + "detailedroute__route__drc_errors__iter:6": 0, + "detailedroute__route__drc_errors__iter:7": 85, + "detailedroute__route__drc_errors__iter:8": 73, + "detailedroute__route__drc_errors__iter:9": 68, + "detailedroute__route__net": 73818, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 475227, + "detailedroute__route__vias": 484000, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 475227, - "detailedroute__route__wirelength": 3343307, - "detailedroute__route__wirelength__iter:1": 3364026, - "detailedroute__route__wirelength__iter:10": 3343267, - "detailedroute__route__wirelength__iter:11": 3343302, - "detailedroute__route__wirelength__iter:12": 3343307, - "detailedroute__route__wirelength__iter:2": 3346029, - "detailedroute__route__wirelength__iter:3": 3343655, - "detailedroute__route__wirelength__iter:4": 3343254, - "detailedroute__route__wirelength__iter:5": 3343537, - "detailedroute__route__wirelength__iter:6": 3343293, - "detailedroute__route__wirelength__iter:7": 3343238, - "detailedroute__route__wirelength__iter:8": 3343273, - "detailedroute__route__wirelength__iter:9": 3343269, - "finish__clock__skew__hold": 0.168707, - "finish__clock__skew__setup": 0.168707, - "finish__cpu__total": 160.69, + "detailedroute__route__vias__singlecut": 484000, + "detailedroute__route__wirelength": 3333718, + "detailedroute__route__wirelength__iter:1": 3333740, + "detailedroute__route__wirelength__iter:10": 3333508, + "detailedroute__route__wirelength__iter:11": 3333511, + "detailedroute__route__wirelength__iter:12": 3333557, + "detailedroute__route__wirelength__iter:13": 3333543, + "detailedroute__route__wirelength__iter:14": 3324940, + "detailedroute__route__wirelength__iter:15": 3324965, + "detailedroute__route__wirelength__iter:16": 3324995, + "detailedroute__route__wirelength__iter:17": 3324995, + "detailedroute__route__wirelength__iter:18": 3324995, + "detailedroute__route__wirelength__iter:19": 3324995, + "detailedroute__route__wirelength__iter:2": 3333633, + "detailedroute__route__wirelength__iter:20": 3324995, + "detailedroute__route__wirelength__iter:21": 3324995, + "detailedroute__route__wirelength__iter:22": 3324995, + "detailedroute__route__wirelength__iter:23": 3324995, + "detailedroute__route__wirelength__iter:24": 3324995, + "detailedroute__route__wirelength__iter:25": 3324998, + "detailedroute__route__wirelength__iter:26": 3324998, + "detailedroute__route__wirelength__iter:27": 3324998, + "detailedroute__route__wirelength__iter:28": 3324998, + "detailedroute__route__wirelength__iter:29": 3324998, + "detailedroute__route__wirelength__iter:3": 3333616, + "detailedroute__route__wirelength__iter:30": 3325021, + "detailedroute__route__wirelength__iter:4": 3333738, + "detailedroute__route__wirelength__iter:5": 3333731, + "detailedroute__route__wirelength__iter:6": 3333718, + "detailedroute__route__wirelength__iter:7": 3333536, + "detailedroute__route__wirelength__iter:8": 3333545, + "detailedroute__route__wirelength__iter:9": 3333508, + "finish__clock__skew__hold": 0.190465, + "finish__clock__skew__setup": 0.190465, + "finish__cpu__total": 166.63, "finish__design__core__area": 1352770.0, "finish__design__die__area": 1366160.0, - "finish__design__instance__area": 844243, + "finish__design__instance__area": 861157, "finish__design__instance__area__macros": 0, - "finish__design__instance__area__stdcell": 844243, - "finish__design__instance__count": 78356, + "finish__design__instance__area__stdcell": 861157, + "finish__design__instance__count": 78365, + "finish__design__instance__count__class:antenna_cell": 1503, + "finish__design__instance__count__class:buffer": 1760, + "finish__design__instance__count__class:clock_buffer": 536, + "finish__design__instance__count__class:clock_inverter": 313, + "finish__design__instance__count__class:fill_cell": 73310, + "finish__design__instance__count__class:inverter": 13091, + "finish__design__instance__count__class:multi_input_combinational_cell": 42143, + "finish__design__instance__count__class:sequential_cell": 4385, + "finish__design__instance__count__class:tap_cell": 14566, + "finish__design__instance__count__class:timing_repair_buffer": 68, "finish__design__instance__count__macros": 0, - "finish__design__instance__count__stdcell": 78356, - "finish__design__instance__utilization": 0.624086, - "finish__design__instance__utilization__stdcell": 0.624086, + "finish__design__instance__count__stdcell": 78365, + "finish__design__instance__utilization": 0.63659, + "finish__design__instance__utilization__stdcell": 0.63659, "finish__design__io": 47, - "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.79192, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.00798484, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0357648, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.03277, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.76424, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.03277, + "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.79145, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.00859709, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.0483402, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.040784, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.75166, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.040784, "finish__flow__errors__count": 0, "finish__flow__warnings__count": 1, - "finish__mem__peak": 1545760.0, - "finish__power__internal__total": 2.13683, - "finish__power__leakage__total": 8.19073e-06, - "finish__power__switching__total": 1.58912, - "finish__power__total": 3.72596, - "finish__runtime__total": "2:42.69", + "finish__mem__peak": 1563804.0, + "finish__power__internal__total": 2.23028, + "finish__power__leakage__total": 8.15368e-06, + "finish__power__switching__total": 1.68154, + "finish__power__total": 3.91182, + "finish__runtime__total": "2:48.40", "finish__timing__drv__hold_violation_count": 0, - "finish__timing__drv__max_cap": 13, - "finish__timing__drv__max_cap_limit": -0.241753, + "finish__timing__drv__max_cap": 23, + "finish__timing__drv__max_cap_limit": -0.751411, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, - "finish__timing__drv__max_slew": 72, - "finish__timing__drv__max_slew_limit": -0.25782, - "finish__timing__drv__setup_violation_count": 4, - "finish__timing__setup__tns": -0.323807, - "finish__timing__setup__ws": -0.229761, - "finish__timing__wns_percent_delay": -3.351711, - "finish_merge__cpu__total": 8.55, - "finish_merge__mem__peak": 924456.0, - "finish_merge__runtime__total": "0:09.32", - "floorplan__cpu__total": 30.36, + "finish__timing__drv__max_slew": 115, + "finish__timing__drv__max_slew_limit": -0.677804, + "finish__timing__drv__setup_violation_count": 25, + "finish__timing__setup__tns": -1.91845, + "finish__timing__setup__ws": -0.358263, + "finish__timing__wns_percent_delay": -5.005798, + "finish_merge__cpu__total": 8.75, + "finish_merge__mem__peak": 914504.0, + "finish_merge__runtime__total": "0:09.46", + "floorplan__cpu__total": 31.99, "floorplan__design__core__area": 1352770.0, "floorplan__design__die__area": 1366160.0, "floorplan__design__instance__area": 678414, @@ -173,32 +219,32 @@ "floorplan__design__io": 47, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 3, - "floorplan__mem__peak": 405640.0, + "floorplan__mem__peak": 405708.0, "floorplan__power__internal__total": 1.51101, "floorplan__power__leakage__total": 8.16138e-06, "floorplan__power__switching__total": 0.558806, "floorplan__power__total": 2.06982, - "floorplan__runtime__total": "0:30.69", + "floorplan__runtime__total": "0:32.28", "floorplan__timing__setup__tns": 0, "floorplan__timing__setup__ws": 0.613713, - "floorplan_io__cpu__total": 2.24, - "floorplan_io__mem__peak": 260116.0, - "floorplan_io__runtime__total": "0:02.44", - "floorplan_macro__cpu__total": 2.32, - "floorplan_macro__mem__peak": 259124.0, - "floorplan_macro__runtime__total": "0:02.49", - "floorplan_pdn__cpu__total": 3.8, - "floorplan_pdn__mem__peak": 281272.0, - "floorplan_pdn__runtime__total": "0:04.15", - "floorplan_tap__cpu__total": 2.5, - "floorplan_tap__mem__peak": 228336.0, - "floorplan_tap__runtime__total": "0:02.69", - "floorplan_tdms__cpu__total": 2.27, - "floorplan_tdms__mem__peak": 258852.0, - "floorplan_tdms__runtime__total": "0:02.47", + "floorplan_io__cpu__total": 2.23, + "floorplan_io__mem__peak": 259924.0, + "floorplan_io__runtime__total": "0:02.48", + "floorplan_macro__cpu__total": 2.29, + "floorplan_macro__mem__peak": 258444.0, + "floorplan_macro__runtime__total": "0:02.51", + "floorplan_pdn__cpu__total": 4.21, + "floorplan_pdn__mem__peak": 280504.0, + "floorplan_pdn__runtime__total": "0:04.49", + "floorplan_tap__cpu__total": 2.21, + "floorplan_tap__mem__peak": 227980.0, + "floorplan_tap__runtime__total": "0:02.40", + "floorplan_tdms__cpu__total": 0.09, + "floorplan_tdms__mem__peak": 99360.0, + "floorplan_tdms__runtime__total": "0:00.18", "flow__errors__count": 0, "flow__warnings__count": 0, - "globalplace__cpu__total": 2982.11, + "globalplace__cpu__total": 2536.96, "globalplace__design__core__area": 1352770.0, "globalplace__design__die__area": 1366160.0, "globalplace__design__instance__area": 701696, @@ -212,100 +258,100 @@ "globalplace__design__io": 47, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 0, - "globalplace__mem__peak": 1157064.0, - "globalplace__power__internal__total": 1.57444, + "globalplace__mem__peak": 1060648.0, + "globalplace__power__internal__total": 1.57499, "globalplace__power__leakage__total": 8.16138e-06, - "globalplace__power__switching__total": 1.17301, - "globalplace__power__total": 2.74747, - "globalplace__runtime__total": "5:49.68", - "globalplace__timing__setup__tns": -1096.38, - "globalplace__timing__setup__ws": -4.31021, - "globalplace_io__cpu__total": 2.32, - "globalplace_io__mem__peak": 279096.0, - "globalplace_io__runtime__total": "0:02.55", - "globalplace_skip_io__cpu__total": 662.01, - "globalplace_skip_io__mem__peak": 363720.0, - "globalplace_skip_io__runtime__total": "0:32.08", - "globalroute__antenna__violating__nets": 2, - "globalroute__antenna__violating__pins": 2, - "globalroute__antenna_diodes_count": 1196, - "globalroute__clock__skew__hold": 0.154642, - "globalroute__clock__skew__setup": 0.154642, - "globalroute__cpu__total": 373.12, + "globalplace__power__switching__total": 1.16368, + "globalplace__power__total": 2.73868, + "globalplace__runtime__total": "6:55.45", + "globalplace__timing__setup__tns": -1134.45, + "globalplace__timing__setup__ws": -4.3826, + "globalplace_io__cpu__total": 2.38, + "globalplace_io__mem__peak": 278828.0, + "globalplace_io__runtime__total": "0:02.58", + "globalplace_skip_io__cpu__total": 934.02, + "globalplace_skip_io__mem__peak": 363652.0, + "globalplace_skip_io__runtime__total": "0:52.71", + "globalroute__antenna__violating__nets": 0, + "globalroute__antenna__violating__pins": 0, + "globalroute__antenna_diodes_count": 1146, + "globalroute__clock__skew__hold": 0.151294, + "globalroute__clock__skew__setup": 0.151294, + "globalroute__cpu__total": 374.24, "globalroute__design__core__area": 1352770.0, "globalroute__design__die__area": 1366160.0, - "globalroute__design__instance__area": 843319, + "globalroute__design__instance__area": 860016, "globalroute__design__instance__area__macros": 0, - "globalroute__design__instance__area__stdcell": 843319, - "globalroute__design__instance__count": 78067, + "globalroute__design__instance__area__stdcell": 860016, + "globalroute__design__instance__count": 78008, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 0, - "globalroute__design__instance__count__setup_buffer": 25, - "globalroute__design__instance__count__stdcell": 78067, - "globalroute__design__instance__displacement__max": 18.24, - "globalroute__design__instance__displacement__mean": 0.011, - "globalroute__design__instance__displacement__total": 911.01, - "globalroute__design__instance__utilization": 0.623404, - "globalroute__design__instance__utilization__stdcell": 0.623404, + "globalroute__design__instance__count__setup_buffer": 14, + "globalroute__design__instance__count__stdcell": 78008, + "globalroute__design__instance__displacement__max": 22.41, + "globalroute__design__instance__displacement__mean": 0.009, + "globalroute__design__instance__displacement__total": 704.67, + "globalroute__design__instance__utilization": 0.635746, + "globalroute__design__instance__utilization__stdcell": 0.635746, "globalroute__design__io": 47, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 0, - "globalroute__mem__peak": 1587684.0, - "globalroute__power__internal__total": 2.16288, - "globalroute__power__leakage__total": 8.19073e-06, - "globalroute__power__switching__total": 1.65892, - "globalroute__power__total": 3.8218, - "globalroute__route__wirelength__estimated": 2850870.0, - "globalroute__runtime__total": "2:14.03", - "globalroute__timing__clock__slack": -0.087, + "globalroute__mem__peak": 1580180.0, + "globalroute__power__internal__total": 2.25405, + "globalroute__power__leakage__total": 8.15368e-06, + "globalroute__power__switching__total": 1.69048, + "globalroute__power__total": 3.94454, + "globalroute__route__wirelength__estimated": 2823730.0, + "globalroute__runtime__total": "2:15.52", + "globalroute__timing__clock__slack": -0.403, "globalroute__timing__drv__hold_violation_count": 0, - "globalroute__timing__drv__max_cap": 4, - "globalroute__timing__drv__max_cap_limit": -0.0878611, + "globalroute__timing__drv__max_cap": 5, + "globalroute__timing__drv__max_cap_limit": -0.605029, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, - "globalroute__timing__drv__max_slew": 6, - "globalroute__timing__drv__max_slew_limit": -0.0627964, - "globalroute__timing__drv__setup_violation_count": 1, - "globalroute__timing__setup__tns": -0.0873763, - "globalroute__timing__setup__ws": -0.0873763, - "placeopt__cpu__total": 68.51, + "globalroute__timing__drv__max_slew": 21, + "globalroute__timing__drv__max_slew_limit": -0.546297, + "globalroute__timing__drv__setup_violation_count": 8, + "globalroute__timing__setup__tns": -0.610603, + "globalroute__timing__setup__ws": -0.403242, + "placeopt__cpu__total": 69.8, "placeopt__design__core__area": 1352770.0, "placeopt__design__die__area": 1366160.0, - "placeopt__design__instance__area": 818426, + "placeopt__design__instance__area": 835797, "placeopt__design__instance__area__macros": 0, - "placeopt__design__instance__area__stdcell": 818426, - "placeopt__design__instance__count": 75989, + "placeopt__design__instance__area__stdcell": 835797, + "placeopt__design__instance__count": 75991, "placeopt__design__instance__count__macros": 0, - "placeopt__design__instance__count__stdcell": 75989, - "placeopt__design__instance__utilization": 0.605002, - "placeopt__design__instance__utilization__stdcell": 0.605002, + "placeopt__design__instance__count__stdcell": 75991, + "placeopt__design__instance__utilization": 0.617843, + "placeopt__design__instance__utilization__stdcell": 0.617843, "placeopt__design__io": 47, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 0, - "placeopt__mem__peak": 836296.0, - "placeopt__power__internal__total": 2.09713, - "placeopt__power__leakage__total": 8.03968e-06, - "placeopt__power__switching__total": 1.33555, - "placeopt__power__total": 3.43269, - "placeopt__runtime__total": "1:09.20", + "placeopt__mem__peak": 733568.0, + "placeopt__power__internal__total": 2.18776, + "placeopt__power__leakage__total": 8.00542e-06, + "placeopt__power__switching__total": 1.35365, + "placeopt__power__total": 3.54142, + "placeopt__runtime__total": "1:10.49", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.103997, + "placeopt__timing__drv__max_cap_limit": 0.0605998, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.110939, + "placeopt__timing__drv__max_slew_limit": 0.0696369, "placeopt__timing__drv__setup_violation_count": 0, "placeopt__timing__setup__tns": 0, - "placeopt__timing__setup__ws": 0.188662, + "placeopt__timing__setup__ws": 0.104237, "run__flow__design": "jpeg", - "run__flow__generate_date": "2024-09-23 21:33", + "run__flow__generate_date": "2024-10-03 21:52", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15825-ge21fbdf83", + "run__flow__openroad_version": "v2.0-16239-ge23ebb9f9", "run__flow__platform": "sky130hs", "run__flow__platform__capacitance_units": "1pF", "run__flow__platform__current_units": "1mA", @@ -316,12 +362,12 @@ "run__flow__platform__voltage_units": "1v", "run__flow__platform_commit": "N/A", "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "62249ca0-6bcc-4ccd-9ffb-94ec186376ad", + "run__flow__uuid": "39ddaef8-494b-49ba-a12f-a186fce1571a", "run__flow__variant": "base", - "synth__cpu__total": 125.13, + "synth__cpu__total": 129.36, "synth__design__instance__area__stdcell": 678413.7072, "synth__design__instance__count__stdcell": 61378.0, - "synth__mem__peak": 745780.0, - "synth__runtime__total": "2:06.73", - "total_time": "0:17:53.780000" + "synth__mem__peak": 745448.0, + "synth__runtime__total": "2:10.99", + "total_time": "0:19:37.180000" } \ No newline at end of file diff --git a/flow/designs/sky130hs/jpeg/rules-base.json b/flow/designs/sky130hs/jpeg/rules-base.json index d48eec3fd8..ad6cdc3858 100644 --- a/flow/designs/sky130hs/jpeg/rules-base.json +++ b/flow/designs/sky130hs/jpeg/rules-base.json @@ -1,6 +1,6 @@ { "synth__design__instance__area__stdcell": { - "value": 713266.74, + "value": 780175.77, "compare": "<=" }, "constraints__clocks__count": { @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 939774, + "value": 940805, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 86379, + "value": 87390, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,19 +20,19 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 6176, + "value": 7599, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 6176, + "value": 7599, "compare": "<=" }, "globalroute__antenna_diodes_count": { - "value": 1198, + "value": 1318, "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 3789063, + "value": 3782367, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -44,19 +44,19 @@ "compare": "<=" }, "detailedroute__antenna_diodes_count": { - "value": 293, + "value": 411, "compare": "<=" }, "finish__timing__setup__ws": { - "value": -0.52, + "value": -0.65, "compare": ">=" }, "finish__design__instance__area": { - "value": 968093, + "value": 969280, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 3088, + "value": 3800, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { @@ -64,7 +64,7 @@ "compare": "<=" }, "finish__timing__wns_percent_delay": { - "value": -10.0, + "value": -10.04, "compare": ">=" } } \ No newline at end of file diff --git a/flow/designs/sky130hs/riscv32i/metadata-base-ok.json b/flow/designs/sky130hs/riscv32i/metadata-base-ok.json index fdaabd5cae..152d96c73c 100644 --- a/flow/designs/sky130hs/riscv32i/metadata-base-ok.json +++ b/flow/designs/sky130hs/riscv32i/metadata-base-ok.json @@ -3,151 +3,149 @@ "constraints__clocks__details": [ "clk: 7.6000" ], - "cts__clock__skew__hold": 0.0199715, - "cts__clock__skew__setup": 0.0199715, - "cts__cpu__total": 22.16, + "cts__clock__skew__hold": 0.0217499, + "cts__clock__skew__setup": 0.0217499, + "cts__cpu__total": 15.87, "cts__design__core__area": 185987, "cts__design__die__area": 189861, - "cts__design__instance__area": 107513, + "cts__design__instance__area": 107406, "cts__design__instance__area__macros": 0, - "cts__design__instance__area__stdcell": 107513, - "cts__design__instance__count": 8816, + "cts__design__instance__area__stdcell": 107406, + "cts__design__instance__count": 8808, "cts__design__instance__count__hold_buffer": 0, "cts__design__instance__count__macros": 0, "cts__design__instance__count__setup_buffer": 0, - "cts__design__instance__count__stdcell": 8816, + "cts__design__instance__count__stdcell": 8808, "cts__design__instance__displacement__max": 0, "cts__design__instance__displacement__mean": 0, "cts__design__instance__displacement__total": 0, - "cts__design__instance__utilization": 0.578069, - "cts__design__instance__utilization__stdcell": 0.578069, + "cts__design__instance__utilization": 0.577494, + "cts__design__instance__utilization__stdcell": 0.577494, "cts__design__io": 165, "cts__design__violations": 0, "cts__flow__errors__count": 0, "cts__flow__warnings__count": 0, - "cts__mem__peak": 678592.0, - "cts__power__internal__total": 0.0230254, - "cts__power__leakage__total": 9.34037e-07, - "cts__power__switching__total": 0.00816411, - "cts__power__total": 0.0311904, - "cts__route__wirelength__estimated": 234701, - "cts__runtime__total": "0:22.77", + "cts__mem__peak": 662512.0, + "cts__power__internal__total": 0.0229574, + "cts__power__leakage__total": 9.33212e-07, + "cts__power__switching__total": 0.00810998, + "cts__power__total": 0.0310683, + "cts__route__wirelength__estimated": 235220, + "cts__runtime__total": "0:16.53", "cts__timing__drv__hold_violation_count": 0, "cts__timing__drv__max_cap": 2, - "cts__timing__drv__max_cap_limit": -0.0110407, + "cts__timing__drv__max_cap_limit": -0.0161484, "cts__timing__drv__max_fanout": 0, "cts__timing__drv__max_fanout_limit": 0, "cts__timing__drv__max_slew": 154, - "cts__timing__drv__max_slew_limit": -0.0212192, + "cts__timing__drv__max_slew_limit": -0.0184563, "cts__timing__drv__setup_violation_count": 0, "cts__timing__setup__tns": 0, - "cts__timing__setup__ws": 1.21714, + "cts__timing__setup__ws": 1.20738, "design__io__hpwl": 38593889, "design__violations": 0, - "detailedplace__cpu__total": 13.85, + "detailedplace__cpu__total": 9.3, "detailedplace__design__core__area": 185987, "detailedplace__design__die__area": 189861, - "detailedplace__design__instance__area": 103114, + "detailedplace__design__instance__area": 103105, "detailedplace__design__instance__area__macros": 0, - "detailedplace__design__instance__area__stdcell": 103114, + "detailedplace__design__instance__area__stdcell": 103105, "detailedplace__design__instance__count": 8627, "detailedplace__design__instance__count__macros": 0, "detailedplace__design__instance__count__stdcell": 8627, - "detailedplace__design__instance__displacement__max": 47.719, - "detailedplace__design__instance__displacement__mean": 3.256, - "detailedplace__design__instance__displacement__total": 28096.4, - "detailedplace__design__instance__utilization": 0.554418, - "detailedplace__design__instance__utilization__stdcell": 0.554418, + "detailedplace__design__instance__displacement__max": 44.888, + "detailedplace__design__instance__displacement__mean": 3.24, + "detailedplace__design__instance__displacement__total": 27951.9, + "detailedplace__design__instance__utilization": 0.554367, + "detailedplace__design__instance__utilization__stdcell": 0.554367, "detailedplace__design__io": 165, "detailedplace__design__violations": 0, "detailedplace__flow__errors__count": 0, "detailedplace__flow__warnings__count": 0, - "detailedplace__mem__peak": 198940.0, - "detailedplace__power__internal__total": 0.0197473, - "detailedplace__power__leakage__total": 9.01698e-07, - "detailedplace__power__switching__total": 0.00519047, - "detailedplace__power__total": 0.0249387, - "detailedplace__route__wirelength__estimated": 232687, - "detailedplace__runtime__total": "0:14.01", + "detailedplace__mem__peak": 199768.0, + "detailedplace__power__internal__total": 0.0197451, + "detailedplace__power__leakage__total": 9.0169e-07, + "detailedplace__power__switching__total": 0.00518982, + "detailedplace__power__total": 0.0249358, + "detailedplace__route__wirelength__estimated": 232614, + "detailedplace__runtime__total": "0:09.41", "detailedplace__timing__drv__hold_violation_count": 0, - "detailedplace__timing__drv__max_cap": 2, - "detailedplace__timing__drv__max_cap_limit": -0.0148015, + "detailedplace__timing__drv__max_cap": 1, + "detailedplace__timing__drv__max_cap_limit": -0.00205354, "detailedplace__timing__drv__max_fanout": 0, "detailedplace__timing__drv__max_fanout_limit": 0, - "detailedplace__timing__drv__max_slew": 122, - "detailedplace__timing__drv__max_slew_limit": -0.0199794, + "detailedplace__timing__drv__max_slew": 45, + "detailedplace__timing__drv__max_slew_limit": -0.00652134, "detailedplace__timing__drv__setup_violation_count": 0, "detailedplace__timing__setup__tns": 0, - "detailedplace__timing__setup__ws": 1.72604, + "detailedplace__timing__setup__ws": 1.71508, "detailedroute__antenna__violating__nets": 0, "detailedroute__antenna__violating__pins": 0, - "detailedroute__antenna_diodes_count": 2, + "detailedroute__antenna_diodes_count": 3, "detailedroute__flow__errors__count": 0, "detailedroute__flow__warnings__count": 10, "detailedroute__route__drc_errors": 0, - "detailedroute__route__drc_errors__iter:1": 5333, - "detailedroute__route__drc_errors__iter:2": 2715, - "detailedroute__route__drc_errors__iter:3": 2618, - "detailedroute__route__drc_errors__iter:4": 339, - "detailedroute__route__drc_errors__iter:5": 32, - "detailedroute__route__drc_errors__iter:6": 13, - "detailedroute__route__drc_errors__iter:7": 0, - "detailedroute__route__net": 6878, + "detailedroute__route__drc_errors__iter:1": 5294, + "detailedroute__route__drc_errors__iter:2": 2628, + "detailedroute__route__drc_errors__iter:3": 2442, + "detailedroute__route__drc_errors__iter:4": 220, + "detailedroute__route__drc_errors__iter:5": 63, + "detailedroute__route__drc_errors__iter:6": 0, + "detailedroute__route__net": 6874, "detailedroute__route__net__special": 2, - "detailedroute__route__vias": 58163, + "detailedroute__route__vias": 58403, "detailedroute__route__vias__multicut": 0, - "detailedroute__route__vias__singlecut": 58163, - "detailedroute__route__wirelength": 333803, - "detailedroute__route__wirelength__iter:1": 337743, - "detailedroute__route__wirelength__iter:2": 334836, - "detailedroute__route__wirelength__iter:3": 334106, - "detailedroute__route__wirelength__iter:4": 333866, - "detailedroute__route__wirelength__iter:5": 333782, - "detailedroute__route__wirelength__iter:6": 333799, - "detailedroute__route__wirelength__iter:7": 333803, - "finish__clock__skew__hold": 0.0422012, - "finish__clock__skew__setup": 0.0422012, - "finish__cpu__total": 29.83, + "detailedroute__route__vias__singlecut": 58403, + "detailedroute__route__wirelength": 335358, + "detailedroute__route__wirelength__iter:1": 339508, + "detailedroute__route__wirelength__iter:2": 336815, + "detailedroute__route__wirelength__iter:3": 335984, + "detailedroute__route__wirelength__iter:4": 335460, + "detailedroute__route__wirelength__iter:5": 335352, + "detailedroute__route__wirelength__iter:6": 335358, + "finish__clock__skew__hold": 0.0589969, + "finish__clock__skew__setup": 0.0589969, + "finish__cpu__total": 28.34, "finish__design__core__area": 185987, "finish__design__die__area": 189861, - "finish__design__instance__area": 108098, + "finish__design__instance__area": 107906, "finish__design__instance__area__macros": 0, - "finish__design__instance__area__stdcell": 108098, - "finish__design__instance__count": 8854, + "finish__design__instance__area__stdcell": 107906, + "finish__design__instance__count": 8846, "finish__design__instance__count__macros": 0, - "finish__design__instance__count__stdcell": 8854, - "finish__design__instance__utilization": 0.581215, - "finish__design__instance__utilization__stdcell": 0.581215, + "finish__design__instance__count__stdcell": 8846, + "finish__design__instance__utilization": 0.580184, + "finish__design__instance__utilization__stdcell": 0.580184, "finish__design__io": 165, - "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.79934, - "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.000538891, - "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.00162304, - "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.00119397, - "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.79838, - "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.00119397, + "finish__design_powergrid__drop__average__net:VDD__corner:default": 1.79935, + "finish__design_powergrid__drop__average__net:VSS__corner:default": 0.000534877, + "finish__design_powergrid__drop__worst__net:VDD__corner:default": 0.00159799, + "finish__design_powergrid__drop__worst__net:VSS__corner:default": 0.0011637, + "finish__design_powergrid__voltage__worst__net:VDD__corner:default": 1.7984, + "finish__design_powergrid__voltage__worst__net:VSS__corner:default": 0.0011637, "finish__flow__errors__count": 0, - "finish__flow__warnings__count": 1, - "finish__mem__peak": 380828.0, - "finish__power__internal__total": 0.0231447, - "finish__power__leakage__total": 9.37541e-07, - "finish__power__switching__total": 0.00900854, - "finish__power__total": 0.0321541, - "finish__runtime__total": "0:30.23", + "finish__flow__warnings__count": 0, + "finish__mem__peak": 463964.0, + "finish__power__internal__total": 0.0230847, + "finish__power__leakage__total": 9.3606e-07, + "finish__power__switching__total": 0.00894253, + "finish__power__total": 0.0320281, + "finish__runtime__total": "0:28.79", "finish__timing__drv__hold_violation_count": 0, "finish__timing__drv__max_cap": 0, - "finish__timing__drv__max_cap_limit": 0.0107483, + "finish__timing__drv__max_cap_limit": 0.0203786, "finish__timing__drv__max_fanout": 0, "finish__timing__drv__max_fanout_limit": 0, - "finish__timing__drv__max_slew": 58, - "finish__timing__drv__max_slew_limit": -0.0516465, + "finish__timing__drv__max_slew": 65, + "finish__timing__drv__max_slew_limit": -0.0511011, "finish__timing__drv__setup_violation_count": 0, "finish__timing__setup__tns": 0, - "finish__timing__setup__ws": 0.824382, - "finish__timing__wns_percent_delay": 15.686125, - "finish_merge__cpu__total": 2.27, - "finish_merge__mem__peak": 459680.0, - "finish_merge__runtime__total": "0:02.52", - "floorplan__cpu__total": 8.88, + "finish__timing__setup__ws": 0.615675, + "finish__timing__wns_percent_delay": 11.267683, + "finish_merge__cpu__total": 1.87, + "finish_merge__mem__peak": 460984.0, + "finish_merge__runtime__total": "0:02.11", + "floorplan__cpu__total": 6.0, "floorplan__design__core__area": 185987, "floorplan__design__die__area": 189861, "floorplan__design__instance__area": 79717, @@ -161,32 +159,32 @@ "floorplan__design__io": 165, "floorplan__flow__errors__count": 0, "floorplan__flow__warnings__count": 2, - "floorplan__mem__peak": 187348.0, + "floorplan__mem__peak": 188412.0, "floorplan__power__internal__total": 0.0173016, "floorplan__power__leakage__total": 8.8709e-07, "floorplan__power__switching__total": 0.0025729, "floorplan__power__total": 0.0198754, - "floorplan__runtime__total": "0:08.97", + "floorplan__runtime__total": "0:06.16", "floorplan__timing__setup__tns": 0, "floorplan__timing__setup__ws": 1.1992, - "floorplan_io__cpu__total": 1.72, - "floorplan_io__mem__peak": 165200.0, - "floorplan_io__runtime__total": "0:01.81", - "floorplan_macro__cpu__total": 1.7, - "floorplan_macro__mem__peak": 164604.0, - "floorplan_macro__runtime__total": "0:01.77", - "floorplan_pdn__cpu__total": 1.86, - "floorplan_pdn__mem__peak": 168192.0, - "floorplan_pdn__runtime__total": "0:01.98", - "floorplan_tap__cpu__total": 1.64, - "floorplan_tap__mem__peak": 161788.0, - "floorplan_tap__runtime__total": "0:01.77", - "floorplan_tdms__cpu__total": 1.7, - "floorplan_tdms__mem__peak": 164352.0, - "floorplan_tdms__runtime__total": "0:01.79", + "floorplan_io__cpu__total": 1.22, + "floorplan_io__mem__peak": 166516.0, + "floorplan_io__runtime__total": "0:01.34", + "floorplan_macro__cpu__total": 1.24, + "floorplan_macro__mem__peak": 165752.0, + "floorplan_macro__runtime__total": "0:01.34", + "floorplan_pdn__cpu__total": 1.39, + "floorplan_pdn__mem__peak": 168904.0, + "floorplan_pdn__runtime__total": "0:01.48", + "floorplan_tap__cpu__total": 1.2, + "floorplan_tap__mem__peak": 161656.0, + "floorplan_tap__runtime__total": "0:01.34", + "floorplan_tdms__cpu__total": 1.21, + "floorplan_tdms__mem__peak": 164920.0, + "floorplan_tdms__runtime__total": "0:01.34", "flow__errors__count": 0, "flow__warnings__count": 0, - "globalplace__cpu__total": 205.77, + "globalplace__cpu__total": 1300.42, "globalplace__design__core__area": 185987, "globalplace__design__die__area": 189861, "globalplace__design__instance__area": 82961.8, @@ -200,100 +198,100 @@ "globalplace__design__io": 165, "globalplace__flow__errors__count": 0, "globalplace__flow__warnings__count": 0, - "globalplace__mem__peak": 672680.0, + "globalplace__mem__peak": 673628.0, "globalplace__power__internal__total": 0.0181382, "globalplace__power__leakage__total": 8.8709e-07, - "globalplace__power__switching__total": 0.00405803, - "globalplace__power__total": 0.0221971, - "globalplace__runtime__total": "0:45.19", - "globalplace__timing__setup__tns": -336.628, - "globalplace__timing__setup__ws": -1.64156, - "globalplace_io__cpu__total": 1.69, - "globalplace_io__mem__peak": 168448.0, - "globalplace_io__runtime__total": "0:01.78", - "globalplace_skip_io__cpu__total": 81.18, - "globalplace_skip_io__mem__peak": 176636.0, - "globalplace_skip_io__runtime__total": "0:04.34", + "globalplace__power__switching__total": 0.00405829, + "globalplace__power__total": 0.0221973, + "globalplace__runtime__total": "2:02.63", + "globalplace__timing__setup__tns": -337.9, + "globalplace__timing__setup__ws": -1.64425, + "globalplace_io__cpu__total": 1.26, + "globalplace_io__mem__peak": 168952.0, + "globalplace_io__runtime__total": "0:01.37", + "globalplace_skip_io__cpu__total": 482.07, + "globalplace_skip_io__mem__peak": 177076.0, + "globalplace_skip_io__runtime__total": "0:33.95", "globalroute__antenna__violating__nets": 0, "globalroute__antenna__violating__pins": 0, - "globalroute__antenna_diodes_count": 20, - "globalroute__clock__skew__hold": 0.0322335, - "globalroute__clock__skew__setup": 0.0322335, - "globalroute__cpu__total": 91.77, + "globalroute__antenna_diodes_count": 22, + "globalroute__clock__skew__hold": 0.0494199, + "globalroute__clock__skew__setup": 0.0494199, + "globalroute__cpu__total": 55.74, "globalroute__design__core__area": 185987, "globalroute__design__die__area": 189861, - "globalroute__design__instance__area": 108092, + "globalroute__design__instance__area": 107897, "globalroute__design__instance__area__macros": 0, - "globalroute__design__instance__area__stdcell": 108092, - "globalroute__design__instance__count": 8852, + "globalroute__design__instance__area__stdcell": 107897, + "globalroute__design__instance__count": 8843, "globalroute__design__instance__count__hold_buffer": 0, "globalroute__design__instance__count__macros": 0, "globalroute__design__instance__count__setup_buffer": 0, - "globalroute__design__instance__count__stdcell": 8852, + "globalroute__design__instance__count__stdcell": 8843, "globalroute__design__instance__displacement__max": 0, "globalroute__design__instance__displacement__mean": 0, "globalroute__design__instance__displacement__total": 0, - "globalroute__design__instance__utilization": 0.58118, - "globalroute__design__instance__utilization__stdcell": 0.58118, + "globalroute__design__instance__utilization": 0.580132, + "globalroute__design__instance__utilization__stdcell": 0.580132, "globalroute__design__io": 165, "globalroute__design__violations": 0, "globalroute__flow__errors__count": 0, "globalroute__flow__warnings__count": 0, - "globalroute__mem__peak": 768164.0, - "globalroute__power__internal__total": 0.0231467, - "globalroute__power__leakage__total": 9.37541e-07, - "globalroute__power__switching__total": 0.00992024, - "globalroute__power__total": 0.0330679, - "globalroute__route__wirelength__estimated": 239951, - "globalroute__runtime__total": "0:31.21", - "globalroute__timing__clock__slack": 0.682, + "globalroute__mem__peak": 741024.0, + "globalroute__power__internal__total": 0.0230858, + "globalroute__power__leakage__total": 9.3606e-07, + "globalroute__power__switching__total": 0.00985118, + "globalroute__power__total": 0.0329379, + "globalroute__route__wirelength__estimated": 239832, + "globalroute__runtime__total": "0:24.43", + "globalroute__timing__clock__slack": 0.491, "globalroute__timing__drv__hold_violation_count": 0, "globalroute__timing__drv__max_cap": 0, - "globalroute__timing__drv__max_cap_limit": 0.00344414, + "globalroute__timing__drv__max_cap_limit": 0.0131821, "globalroute__timing__drv__max_fanout": 0, "globalroute__timing__drv__max_fanout_limit": 0, - "globalroute__timing__drv__max_slew": 36, - "globalroute__timing__drv__max_slew_limit": -0.0129617, + "globalroute__timing__drv__max_slew": 0, + "globalroute__timing__drv__max_slew_limit": 0.0111365, "globalroute__timing__drv__setup_violation_count": 0, "globalroute__timing__setup__tns": 0, - "globalroute__timing__setup__ws": 0.68236, - "placeopt__cpu__total": 14.62, + "globalroute__timing__setup__ws": 0.490732, + "placeopt__cpu__total": 10.11, "placeopt__design__core__area": 185987, "placeopt__design__die__area": 189861, - "placeopt__design__instance__area": 103114, + "placeopt__design__instance__area": 103105, "placeopt__design__instance__area__macros": 0, - "placeopt__design__instance__area__stdcell": 103114, + "placeopt__design__instance__area__stdcell": 103105, "placeopt__design__instance__count": 8627, "placeopt__design__instance__count__macros": 0, "placeopt__design__instance__count__stdcell": 8627, - "placeopt__design__instance__utilization": 0.554418, - "placeopt__design__instance__utilization__stdcell": 0.554418, + "placeopt__design__instance__utilization": 0.554367, + "placeopt__design__instance__utilization__stdcell": 0.554367, "placeopt__design__io": 165, "placeopt__flow__errors__count": 0, "placeopt__flow__warnings__count": 0, - "placeopt__mem__peak": 574044.0, - "placeopt__power__internal__total": 0.0197377, - "placeopt__power__leakage__total": 9.01698e-07, - "placeopt__power__switching__total": 0.00503605, - "placeopt__power__total": 0.0247747, - "placeopt__runtime__total": "0:15.07", + "placeopt__mem__peak": 574852.0, + "placeopt__power__internal__total": 0.019735, + "placeopt__power__leakage__total": 9.0169e-07, + "placeopt__power__switching__total": 0.00503518, + "placeopt__power__total": 0.0247711, + "placeopt__runtime__total": "0:10.52", "placeopt__timing__drv__floating__nets": 0, "placeopt__timing__drv__floating__pins": 0, "placeopt__timing__drv__hold_violation_count": 0, "placeopt__timing__drv__max_cap": 0, - "placeopt__timing__drv__max_cap_limit": 0.00649381, + "placeopt__timing__drv__max_cap_limit": 0.00649628, "placeopt__timing__drv__max_fanout": 0, "placeopt__timing__drv__max_fanout_limit": 0, "placeopt__timing__drv__max_slew": 0, - "placeopt__timing__drv__max_slew_limit": 0.00156763, + "placeopt__timing__drv__max_slew_limit": 0.00156941, "placeopt__timing__drv__setup_violation_count": 0, "placeopt__timing__setup__tns": 0, - "placeopt__timing__setup__ws": 1.80639, + "placeopt__timing__setup__ws": 1.79723, "run__flow__design": "riscv32i", - "run__flow__generate_date": "2024-09-19 14:25", + "run__flow__generate_date": "2024-09-26 21:32", "run__flow__metrics_version": "Metrics_2.1.2", "run__flow__openroad_commit": "N/A", - "run__flow__openroad_version": "v2.0-15759-g9136ba699", + "run__flow__openroad_version": "v2.0-15807-g036379d64", "run__flow__platform": "sky130hs", "run__flow__platform__capacitance_units": "1pF", "run__flow__platform__current_units": "1mA", @@ -302,14 +300,14 @@ "run__flow__platform__resistance_units": "1kohm", "run__flow__platform__time_units": "1ns", "run__flow__platform__voltage_units": "1v", - "run__flow__platform_commit": "N/A", - "run__flow__scripts_commit": "not a git repo", - "run__flow__uuid": "68729ec6-68a0-4418-86bd-b5b839d2a151", - "run__flow__variant": "base", - "synth__cpu__total": 34.81, + "run__flow__platform_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__scripts_commit": "d505a82b2c409ec7bd0449ee0cb737219c4c8f2b", + "run__flow__uuid": "593e4535-4988-4811-bd44-843c8fb8a514", + "run__flow__variant": "odb_0925", + "synth__cpu__total": 24.1, "synth__design__instance__area__stdcell": 84654.4608, "synth__design__instance__count__stdcell": 6979.0, - "synth__mem__peak": 129536.0, - "synth__runtime__total": "0:35.12", - "total_time": "0:03:40.330000" + "synth__mem__peak": 130120.0, + "synth__runtime__total": "0:24.38", + "total_time": "0:04:47.120000" } \ No newline at end of file diff --git a/flow/designs/sky130hs/riscv32i/rules-base.json b/flow/designs/sky130hs/riscv32i/rules-base.json index 7b03b09c20..8466f6d1c1 100644 --- a/flow/designs/sky130hs/riscv32i/rules-base.json +++ b/flow/designs/sky130hs/riscv32i/rules-base.json @@ -8,11 +8,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 118581, + "value": 118571, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 9797, + "value": 9921, "compare": "<=" }, "detailedplace__design__violations": { @@ -20,19 +20,19 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 852, + "value": 863, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 852, + "value": 863, "compare": "<=" }, "globalroute__antenna_diodes_count": { - "value": 23, + "value": 25, "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 374105, + "value": 385662, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -44,7 +44,7 @@ "compare": "<=" }, "detailedroute__antenna_diodes_count": { - "value": 2, + "value": 3, "compare": "<=" }, "finish__timing__setup__ws": { @@ -52,11 +52,11 @@ "compare": ">=" }, "finish__design__instance__area": { - "value": 123114, + "value": 124092, "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 426, + "value": 431, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { diff --git a/flow/designs/src/mock-alu/defaults.mk b/flow/designs/src/mock-alu/defaults.mk index cf8a20e4b5..c8ba735982 100644 --- a/flow/designs/src/mock-alu/defaults.mk +++ b/flow/designs/src/mock-alu/defaults.mk @@ -16,4 +16,3 @@ verilog: ./designs/src/mock-alu/verilog.sh export PLACE_PINS_ARGS=-annealing -export HAS_IO_CONSTRAINTS=0 \ No newline at end of file diff --git a/flow/designs/tsmc65lp/ariane/config.mk b/flow/designs/tsmc65lp/ariane/config.mk index d52ff613f4..3e7c20984e 100644 --- a/flow/designs/tsmc65lp/ariane/config.mk +++ b/flow/designs/tsmc65lp/ariane/config.mk @@ -2,7 +2,6 @@ export DESIGN_NAME = ariane export PLATFORM = tsmc65lp export SYNTH_HIERARCHICAL = 1 -export RTLMP_FLOW = 1 export VERILOG_FILES = ./designs/src/$(DESIGN_NAME)/ariane.sv2v.v \ ./designs/$(PLATFORM)/$(DESIGN_NAME)/macros.v diff --git a/flow/designs/tsmc65lp/black_parrot/config.mk b/flow/designs/tsmc65lp/black_parrot/config.mk index ab8f44100e..1f55e1f239 100644 --- a/flow/designs/tsmc65lp/black_parrot/config.mk +++ b/flow/designs/tsmc65lp/black_parrot/config.mk @@ -3,7 +3,6 @@ export DESIGN_NAME = black_parrot export PLATFORM = tsmc65lp export SYNTH_HIERARCHICAL = 1 -export RTLMP_FLOW = 1 # # RTL_MP Settings export RTLMP_MAX_INST = 30000 diff --git a/flow/designs/tsmc65lp/bp_be_top/config.mk b/flow/designs/tsmc65lp/bp_be_top/config.mk index 271e531dbe..d3f4916616 100644 --- a/flow/designs/tsmc65lp/bp_be_top/config.mk +++ b/flow/designs/tsmc65lp/bp_be_top/config.mk @@ -3,7 +3,6 @@ export DESIGN_NAME = bp_be_top export PLATFORM = tsmc65lp export SYNTH_HIERARCHICAL = 1 -export RTLMP_FLOW = 1 # export VERILOG_FILES = ./designs/src/$(DESIGN_NAME)/pickled.v \ ./designs/$(PLATFORM)/$(DESIGN_NAME)/macros.v diff --git a/flow/designs/tsmc65lp/bp_fe_top/config.mk b/flow/designs/tsmc65lp/bp_fe_top/config.mk index 0c741c597d..0a62e5d519 100644 --- a/flow/designs/tsmc65lp/bp_fe_top/config.mk +++ b/flow/designs/tsmc65lp/bp_fe_top/config.mk @@ -3,7 +3,6 @@ export DESIGN_NAME = bp_fe_top export PLATFORM = tsmc65lp export SYNTH_HIERARCHICAL = 1 -export RTLMP_FLOW = 1 export VERILOG_FILES = ./designs/src/$(DESIGN_NAME)/pickled.v \ ./designs/$(PLATFORM)/$(DESIGN_NAME)/macros.v @@ -25,7 +24,6 @@ export ADDITIONAL_GDS = $(PLATFORM_DIR)/gds/tsmc65lp_1rf_lg6_w8_bit.gds2 \ export DIE_AREA = 0 0 880 780 export CORE_AREA = 10 12 870 770 export PLACE_PINS_ARGS = -exclude left:* -exclude right:0-400 -exclude bottom:* -export HAS_IO_CONSTRAINTS = 0 export MACRO_PLACE_HALO = 10 10 export MACRO_PLACE_CHANNEL = 20 20 diff --git a/flow/designs/tsmc65lp/bp_multi_top/config.mk b/flow/designs/tsmc65lp/bp_multi_top/config.mk index c154694c0f..475fded14c 100644 --- a/flow/designs/tsmc65lp/bp_multi_top/config.mk +++ b/flow/designs/tsmc65lp/bp_multi_top/config.mk @@ -3,7 +3,6 @@ export DESIGN_NAME = bp_multi_top export PLATFORM = tsmc65lp export SYNTH_HIERARCHICAL = 1 -export RTLMP_FLOW = 1 # # RTL_MP Settings export RTLMP_MAX_INST = 30000 diff --git a/flow/designs/tsmc65lp/coyote/config.mk b/flow/designs/tsmc65lp/coyote/config.mk index a2c9e34426..4f4b3379da 100644 --- a/flow/designs/tsmc65lp/coyote/config.mk +++ b/flow/designs/tsmc65lp/coyote/config.mk @@ -3,7 +3,6 @@ export DESIGN_NAME = bsg_rocket_node_client_rocc export PLATFORM = tsmc65lp export SYNTH_HIERARCHICAL = 1 -export RTLMP_FLOW = 1 # RTL_MP Settings diff --git a/flow/designs/tsmc65lp/swerv_wrapper/config.mk b/flow/designs/tsmc65lp/swerv_wrapper/config.mk index d4f35cee77..5482d732fb 100644 --- a/flow/designs/tsmc65lp/swerv_wrapper/config.mk +++ b/flow/designs/tsmc65lp/swerv_wrapper/config.mk @@ -2,7 +2,6 @@ export DESIGN_NAME = swerv_wrapper export PLATFORM = tsmc65lp export SYNTH_HIERARCHICAL = 1 -export RTLMP_FLOW = 1 # RTL_MP Settings export RTLMP_MAX_INST = 30000 diff --git a/flow/designs/tsmc65lp/tinyRocket/config.mk b/flow/designs/tsmc65lp/tinyRocket/config.mk index 59d8755666..b42f5bc1b6 100644 --- a/flow/designs/tsmc65lp/tinyRocket/config.mk +++ b/flow/designs/tsmc65lp/tinyRocket/config.mk @@ -4,7 +4,6 @@ export PLATFORM = tsmc65lp export SYNTH_HIERARCHICAL = 1 export MAX_UNGROUP_SIZE ?= 5000 -export RTLMP_FLOW = 1 export VERILOG_FILES = ./designs/src/$(DESIGN_NICKNAME)/AsyncResetReg.v \ ./designs/src/$(DESIGN_NICKNAME)/ClockDivider2.v \ diff --git a/flow/designs/tsmc65lp/vanilla5/config.mk b/flow/designs/tsmc65lp/vanilla5/config.mk index c416ca943b..be37f0b139 100644 --- a/flow/designs/tsmc65lp/vanilla5/config.mk +++ b/flow/designs/tsmc65lp/vanilla5/config.mk @@ -17,7 +17,6 @@ export ADDITIONAL_GDS = $(PLATFORM_DIR)/gds/tsmc65lp_1rf_lg10_w32_all.gds2 \ export SYNTH_HIERARCHICAL = 1 -export RTLMP_FLOW = 1 # These values must be multiples of placement site export DIE_AREA = 0 0 1100 400.8 diff --git a/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNH2V2X_LVT_TT_nldm_FAKE.lib b/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNH2V2X_LVT_TT_nldm_FAKE.lib index 7b8a5e5798..cf691be6cc 100644 --- a/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNH2V2X_LVT_TT_nldm_FAKE.lib +++ b/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNH2V2X_LVT_TT_nldm_FAKE.lib @@ -1294,9 +1294,9 @@ library (asap7sc7p5t_DFFHQNH2V2X_LVT_TT_nldm_FAKE) { } } } - ff_bank (IQ,IQN,4) { + ff_bank (IQN,IQNN,4) { clocked_on : "CLK"; - next_state : "D"; + next_state : "!D"; power_down_function : "(!VDD) + (VSS)"; } } @@ -2441,9 +2441,9 @@ library (asap7sc7p5t_DFFHQNH2V2X_LVT_TT_nldm_FAKE) { } } } - ff_bank (IQ,IQN,4) { + ff_bank (IQN,IQNN,4) { clocked_on : "CLK"; - next_state : "D"; + next_state : "!D"; power_down_function : "(!VDD) + (VSS)"; } } @@ -3588,9 +3588,9 @@ library (asap7sc7p5t_DFFHQNH2V2X_LVT_TT_nldm_FAKE) { } } } - ff_bank (IQ,IQN,4) { + ff_bank (IQN,IQNN,4) { clocked_on : "CLK"; - next_state : "D"; + next_state : "!D"; power_down_function : "(!VDD) + (VSS)"; } } diff --git a/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNH2V2X_RVT_TT_nldm_FAKE.lib b/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNH2V2X_RVT_TT_nldm_FAKE.lib index 8ffc45ac2b..a72615983b 100644 --- a/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNH2V2X_RVT_TT_nldm_FAKE.lib +++ b/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNH2V2X_RVT_TT_nldm_FAKE.lib @@ -1294,9 +1294,9 @@ library (asap7sc7p5t_DFFHQNH2V2X_RVT_TT_nldm_FAKE) { } } } - ff_bank (IQ,IQN,4) { + ff_bank (IQN,IQNN,4) { clocked_on : "CLK"; - next_state : "D"; + next_state : "!D"; power_down_function : "(!VDD) + (VSS)"; } } @@ -2441,9 +2441,9 @@ library (asap7sc7p5t_DFFHQNH2V2X_RVT_TT_nldm_FAKE) { } } } - ff_bank (IQ,IQN,4) { + ff_bank (IQN,IQNN,4) { clocked_on : "CLK"; - next_state : "D"; + next_state : "!D"; power_down_function : "(!VDD) + (VSS)"; } } @@ -3588,9 +3588,9 @@ library (asap7sc7p5t_DFFHQNH2V2X_RVT_TT_nldm_FAKE) { } } } - ff_bank (IQ,IQN,4) { + ff_bank (IQN,IQNN,4) { clocked_on : "CLK"; - next_state : "D"; + next_state : "!D"; power_down_function : "(!VDD) + (VSS)"; } } diff --git a/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNH2V2X_SLVT_TT_nldm_FAKE.lib b/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNH2V2X_SLVT_TT_nldm_FAKE.lib index f1c95b2a09..2431ef81a3 100644 --- a/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNH2V2X_SLVT_TT_nldm_FAKE.lib +++ b/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNH2V2X_SLVT_TT_nldm_FAKE.lib @@ -1294,9 +1294,9 @@ library (asap7sc7p5t_DFFHQNH2V2X_SLVT_TT_nldm_FAKE) { } } } - ff_bank (IQ,IQN,4) { + ff_bank (IQN,IQNN,4) { clocked_on : "CLK"; - next_state : "D"; + next_state : "!D"; power_down_function : "(!VDD) + (VSS)"; } } @@ -2441,9 +2441,9 @@ library (asap7sc7p5t_DFFHQNH2V2X_SLVT_TT_nldm_FAKE) { } } } - ff_bank (IQ,IQN,4) { + ff_bank (IQN,IQNN,4) { clocked_on : "CLK"; - next_state : "D"; + next_state : "!D"; power_down_function : "(!VDD) + (VSS)"; } } @@ -3588,9 +3588,9 @@ library (asap7sc7p5t_DFFHQNH2V2X_SLVT_TT_nldm_FAKE) { } } } - ff_bank (IQ,IQN,4) { + ff_bank (IQN,IQNN,4) { clocked_on : "CLK"; - next_state : "D"; + next_state : "!D"; power_down_function : "(!VDD) + (VSS)"; } } diff --git a/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNV2X_LVT_TT_nldm_FAKE.lib b/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNV2X_LVT_TT_nldm_FAKE.lib index 3b29d2fb15..3d7c615b0f 100644 --- a/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNV2X_LVT_TT_nldm_FAKE.lib +++ b/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNV2X_LVT_TT_nldm_FAKE.lib @@ -780,9 +780,9 @@ library (asap7sc7p5t_DFFHQNV2X_LVT_TT_nldm_FAKE) { } } } - ff_bank (IQ,IQN,2) { + ff_bank (IQN,IQNN,2) { clocked_on : "CLK"; - next_state : "D"; + next_state : "!D"; power_down_function : "(!VDD) + (VSS)"; } } @@ -1413,9 +1413,9 @@ library (asap7sc7p5t_DFFHQNV2X_LVT_TT_nldm_FAKE) { } } } - ff_bank (IQ,IQN,2) { + ff_bank (IQN,IQNN,2) { clocked_on : "CLK"; - next_state : "D"; + next_state : "!D"; power_down_function : "(!VDD) + (VSS)"; } } @@ -2046,9 +2046,9 @@ library (asap7sc7p5t_DFFHQNV2X_LVT_TT_nldm_FAKE) { } } } - ff_bank (IQ,IQN,2) { + ff_bank (IQN,IQNN,2) { clocked_on : "CLK"; - next_state : "D"; + next_state : "!D"; power_down_function : "(!VDD) + (VSS)"; } } diff --git a/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNV2X_RVT_TT_nldm_FAKE.lib b/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNV2X_RVT_TT_nldm_FAKE.lib index c48a288043..5d52e749c6 100644 --- a/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNV2X_RVT_TT_nldm_FAKE.lib +++ b/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNV2X_RVT_TT_nldm_FAKE.lib @@ -780,9 +780,9 @@ library (asap7sc7p5t_DFFHQNV2X_RVT_TT_nldm_FAKE) { } } } - ff_bank (IQ,IQN,2) { + ff_bank (IQN,IQNN,2) { clocked_on : "CLK"; - next_state : "D"; + next_state : "!D"; power_down_function : "(!VDD) + (VSS)"; } } @@ -1413,9 +1413,9 @@ library (asap7sc7p5t_DFFHQNV2X_RVT_TT_nldm_FAKE) { } } } - ff_bank (IQ,IQN,2) { + ff_bank (IQN,IQNN,2) { clocked_on : "CLK"; - next_state : "D"; + next_state : "!D"; power_down_function : "(!VDD) + (VSS)"; } } @@ -2046,9 +2046,9 @@ library (asap7sc7p5t_DFFHQNV2X_RVT_TT_nldm_FAKE) { } } } - ff_bank (IQ,IQN,2) { + ff_bank (IQN,IQNN,2) { clocked_on : "CLK"; - next_state : "D"; + next_state : "!D"; power_down_function : "(!VDD) + (VSS)"; } } diff --git a/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNV2X_SLVT_TT_nldm_FAKE.lib b/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNV2X_SLVT_TT_nldm_FAKE.lib index 27d3a8af10..e33dc6a51e 100644 --- a/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNV2X_SLVT_TT_nldm_FAKE.lib +++ b/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNV2X_SLVT_TT_nldm_FAKE.lib @@ -780,9 +780,9 @@ library (asap7sc7p5t_DFFHQNV2X_SLVT_TT_nldm_FAKE) { } } } - ff_bank (IQ,IQN,2) { + ff_bank (IQN,IQNN,2) { clocked_on : "CLK"; - next_state : "D"; + next_state : "!D"; power_down_function : "(!VDD) + (VSS)"; } } @@ -1413,9 +1413,9 @@ library (asap7sc7p5t_DFFHQNV2X_SLVT_TT_nldm_FAKE) { } } } - ff_bank (IQ,IQN,2) { + ff_bank (IQN,IQNN,2) { clocked_on : "CLK"; - next_state : "D"; + next_state : "!D"; power_down_function : "(!VDD) + (VSS)"; } } @@ -2046,9 +2046,9 @@ library (asap7sc7p5t_DFFHQNV2X_SLVT_TT_nldm_FAKE) { } } } - ff_bank (IQ,IQN,2) { + ff_bank (IQN,IQNN,2) { clocked_on : "CLK"; - next_state : "D"; + next_state : "!D"; power_down_function : "(!VDD) + (VSS)"; } } diff --git a/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNV4X_LVT_TT_nldm_FAKE.lib b/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNV4X_LVT_TT_nldm_FAKE.lib index 5335381154..87d9fbc368 100644 --- a/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNV4X_LVT_TT_nldm_FAKE.lib +++ b/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNV4X_LVT_TT_nldm_FAKE.lib @@ -1294,9 +1294,9 @@ library (asap7sc7p5t_DFFHQNV4X_LVT_TT_nldm_FAKE) { } } } - ff_bank (IQ,IQN,4) { + ff_bank (IQN,IQNN,4) { clocked_on : "CLK"; - next_state : "D"; + next_state : "!D"; power_down_function : "(!VDD) + (VSS)"; } } @@ -2441,9 +2441,9 @@ library (asap7sc7p5t_DFFHQNV4X_LVT_TT_nldm_FAKE) { } } } - ff_bank (IQ,IQN,4) { + ff_bank (IQN,IQNN,4) { clocked_on : "CLK"; - next_state : "D"; + next_state : "!D"; power_down_function : "(!VDD) + (VSS)"; } } @@ -3588,9 +3588,9 @@ library (asap7sc7p5t_DFFHQNV4X_LVT_TT_nldm_FAKE) { } } } - ff_bank (IQ,IQN,4) { + ff_bank (IQN,IQNN,4) { clocked_on : "CLK"; - next_state : "D"; + next_state : "!D"; power_down_function : "(!VDD) + (VSS)"; } } diff --git a/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNV4X_RVT_TT_nldm_FAKE.lib b/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNV4X_RVT_TT_nldm_FAKE.lib index 437ea4cce0..b9ff19227d 100644 --- a/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNV4X_RVT_TT_nldm_FAKE.lib +++ b/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNV4X_RVT_TT_nldm_FAKE.lib @@ -1294,9 +1294,9 @@ library (asap7sc7p5t_DFFHQNV4X_RVT_TT_nldm_FAKE) { } } } - ff_bank (IQ,IQN,4) { + ff_bank (IQN,IQNN,4) { clocked_on : "CLK"; - next_state : "D"; + next_state : "!D"; power_down_function : "(!VDD) + (VSS)"; } } @@ -2441,9 +2441,9 @@ library (asap7sc7p5t_DFFHQNV4X_RVT_TT_nldm_FAKE) { } } } - ff_bank (IQ,IQN,4) { + ff_bank (IQN,IQNN,4) { clocked_on : "CLK"; - next_state : "D"; + next_state : "!D"; power_down_function : "(!VDD) + (VSS)"; } } @@ -3588,9 +3588,9 @@ library (asap7sc7p5t_DFFHQNV4X_RVT_TT_nldm_FAKE) { } } } - ff_bank (IQ,IQN,4) { + ff_bank (IQN,IQNN,4) { clocked_on : "CLK"; - next_state : "D"; + next_state : "!D"; power_down_function : "(!VDD) + (VSS)"; } } diff --git a/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNV4X_SLVT_TT_nldm_FAKE.lib b/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNV4X_SLVT_TT_nldm_FAKE.lib index 86456e3791..b4d8a29cbf 100644 --- a/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNV4X_SLVT_TT_nldm_FAKE.lib +++ b/flow/platforms/asap7/lib/NLDM/asap7sc7p5t_DFFHQNV4X_SLVT_TT_nldm_FAKE.lib @@ -1294,9 +1294,9 @@ library (asap7sc7p5t_DFFHQNV4X_SLVT_TT_nldm_FAKE) { } } } - ff_bank (IQ,IQN,4) { + ff_bank (IQN,IQNN,4) { clocked_on : "CLK"; - next_state : "D"; + next_state : "!D"; power_down_function : "(!VDD) + (VSS)"; } } @@ -2441,9 +2441,9 @@ library (asap7sc7p5t_DFFHQNV4X_SLVT_TT_nldm_FAKE) { } } } - ff_bank (IQ,IQN,4) { + ff_bank (IQN,IQNN,4) { clocked_on : "CLK"; - next_state : "D"; + next_state : "!D"; power_down_function : "(!VDD) + (VSS)"; } } @@ -3588,9 +3588,9 @@ library (asap7sc7p5t_DFFHQNV4X_SLVT_TT_nldm_FAKE) { } } } - ff_bank (IQ,IQN,4) { + ff_bank (IQN,IQNN,4) { clocked_on : "CLK"; - next_state : "D"; + next_state : "!D"; power_down_function : "(!VDD) + (VSS)"; } } diff --git a/flow/platforms/asap7/openRoad/pdn/BLOCKS_grid_strategy.tcl b/flow/platforms/asap7/openRoad/pdn/BLOCKS_grid_strategy.tcl index 632008c40a..802b7340a9 100644 --- a/flow/platforms/asap7/openRoad/pdn/BLOCKS_grid_strategy.tcl +++ b/flow/platforms/asap7/openRoad/pdn/BLOCKS_grid_strategy.tcl @@ -1,4 +1,5 @@ # Top level PDN for macros using BLOCK_grid_strategy.tcl +source $::env(SCRIPTS_DIR)/util.tcl #################################### # global connections @@ -30,7 +31,16 @@ add_pdn_connect -grid {top} -layers {M5 M6} # Element grid #################################### # The halo around the macro prevents pdn from blocking pin access -define_pdn_grid -macro -cells $::env(MACROS) \ + +set macro_names {} + +foreach macro [find_macros] { + set macro_name [[$macro getMaster] getName] + dict set macro_names $macro_name 1 +} +set macro_names [dict keys $macro_names] + +define_pdn_grid -macro -cells $macro_names \ -halo "$::env(MACRO_HALO_X) $::env(MACRO_HALO_Y) $::env(MACRO_HALO_X) $::env(MACRO_HALO_Y)" \ -voltage_domains {CORE} -name ElementGrid diff --git a/flow/scripts/cts.tcl b/flow/scripts/cts.tcl index f2180e4939..b9b1e3f5c0 100644 --- a/flow/scripts/cts.tcl +++ b/flow/scripts/cts.tcl @@ -17,25 +17,17 @@ set cts_args [list \ -sink_clustering_enable \ -balance_levels] -if {[info exist ::env(CTS_BUF_DISTANCE)]} { - lappend cts_args -distance_between_buffers $::env(CTS_BUF_DISTANCE) -} - -if {[info exist ::env(CTS_CLUSTER_SIZE)]} { - lappend cts_args -sink_clustering_size $::env(CTS_CLUSTER_SIZE) -} - -if {[info exist ::env(CTS_CLUSTER_DIAMETER)]} { - lappend cts_args -sink_clustering_max_diameter $::env(CTS_CLUSTER_DIAMETER) -} +append_env_var cts_args -distance_between_buffers CTS_BUF_DISTANCE 1 +append_env_var cts_args -sink_clustering_size CTS_CLUSTER_SIZE 1 +append_env_var cts_args -sink_clustering_max_diameter CTS_CLUSTER_DIAMETER 1 -if {[info exist ::env(CTS_ARGS)]} { +if {[env_var_exists_and_non_empty CTS_ARGS]} { set cts_args $::env(CTS_ARGS) } log_cmd clock_tree_synthesis {*}$cts_args -if {[info exist ::env(CTS_SNAPSHOTS)]} { +if {[env_var_equals CTS_SNAPSHOTS 1]} { save_progress 4_1_pre_repair_clock_nets } @@ -67,11 +59,11 @@ detailed_placement estimate_parasitics -placement -if {[info exist ::env(CTS_SNAPSHOTS)]} { +if {[env_var_equals CTS_SNAPSHOTS 1]} { save_progress 4_1_pre_repair_hold_setup } -if {[info exists ::env(SKIP_CTS_REPAIR_TIMING)] == 0 || $::env(SKIP_CTS_REPAIR_TIMING) == 0} { +if {![env_var_equals SKIP_CTS_REPAIR_TIMING 1]} { if {$::env(EQUIVALENCE_CHECK)} { write_eqy_verilog 4_before_rsz.v } @@ -94,7 +86,7 @@ if {[info exists ::env(SKIP_CTS_REPAIR_TIMING)] == 0 || $::env(SKIP_CTS_REPAIR_T report_metrics 4 "cts final" -if { [info exists ::env(POST_CTS_TCL)] } { +if { [env_var_exists_and_non_empty POST_CTS_TCL] } { source $::env(POST_CTS_TCL) } diff --git a/flow/scripts/defaults.py b/flow/scripts/defaults.py new file mode 100755 index 0000000000..0b107b47d1 --- /dev/null +++ b/flow/scripts/defaults.py @@ -0,0 +1,15 @@ +#!/usr/bin/env python3 + +import os +import yaml + +dir_path = os.path.dirname(os.path.realpath(__file__)) + +yaml_path = os.path.join(dir_path, "defaults.yaml") +with open(yaml_path, "r") as file: + data = yaml.safe_load(file) + +for key, value in data.items(): + if value["value"] is None: + continue + print(f'{key}?={value["value"]}') diff --git a/flow/scripts/defaults.yaml b/flow/scripts/defaults.yaml new file mode 100644 index 0000000000..6b0e20f6c1 --- /dev/null +++ b/flow/scripts/defaults.yaml @@ -0,0 +1,78 @@ +GENERATE_ARTIFACTS_ON_FAILURE: + description: > + For instance Bazel needs artifacts (.odb and .rpt files) on a failure to + allow the user to save hours on re-running the failed step locally, but + when working with a Makefile flow, it is more natural to fail the step + and leave the user to manually inspect the logs and artifacts directly via + the file system. + + Set to 1 to change the behavior to generate artifacts upon failure to + e.g. do a global route. The exit code will still be non-zero on all other + failures that aren't covered by the "useful to inspect the artifacts on + failure" use-case. + + Example: just like detailed routing, a global route that fails with congestion, is not + a build failure(as in exit code non-zero), it is a successful(as in zero exit code) + global route that produce reports detailing the problem. + + Detailed route will not proceed, if there is global routing congestion + + This allows build systems, such as bazel, to create artifacts for global + and detailed route, even if the operation had problems, without having + know about the semantics between global and detailed route. + + Considering that global and detailed route can run for a long time and + use a lot of memory, this allows inspecting results on a laptop for + a build that ran on a server. + value: 0 + stages: + - all + +TNS_END_PERCENT: + description: > + Default TNS_END_PERCENT value for post CTS timing repair. + Try fixing all violating endpoints by default (reduce to 5% for runtime). + value: 100 + stages: + - crt + - floorplan + - grt + +ROUTING_LAYER_ADJUSTMENT: + value: 0.5 + description: Default routing layer adjustment + stages: + - place + - grt + - route + - final + +RECOVER_POWER: + value: 0 + stages: + - grt +SKIP_INCREMENTAL_REPAIR: + value: 0 + stages: + - grt +DETAILED_METRICS: + value: 0 + stages: + - cts + - grt +EQUIVALENCE_CHECK: + value: 0 + stages: + - cts +CORE_UTILIZATION: + value: null + stages: + - floorplan +DIE_AREA: + value: null + stages: + - floorplan +CORE_AREA: + value: null + stages: + - floorplan diff --git a/flow/scripts/detail_place.tcl b/flow/scripts/detail_place.tcl index ef3e8ad9e3..90c69daa47 100644 --- a/flow/scripts/detail_place.tcl +++ b/flow/scripts/detail_place.tcl @@ -6,7 +6,7 @@ source $::env(PLATFORM_DIR)/setRC.tcl proc do_dpl {} { # Only for use with hybrid rows - if {[info exists ::env(BALANCE_ROWS)] && $::env(BALANCE_ROWS)} { + if {[env_var_equals BALANCE_ROWS 1]} { balance_row_usage } @@ -15,8 +15,8 @@ proc do_dpl {} { -right $::env(CELL_PAD_IN_SITES_DETAIL_PLACEMENT) detailed_placement - if {[info exists ::env(ENABLE_DPO)] && $::env(ENABLE_DPO)} { - if {[info exist ::env(DPO_MAX_DISPLACEMENT)]} { + if {[env_var_equals ENABLE_DPO 1]} { + if {[env_var_exists_and_non_empty DPO_MAX_DISPLACEMENT]} { improve_placement -max_displacement $::env(DPO_MAX_DISPLACEMENT) } else { improve_placement diff --git a/flow/scripts/detail_route.tcl b/flow/scripts/detail_route.tcl index f9919c5120..79222aa8ba 100644 --- a/flow/scripts/detail_route.tcl +++ b/flow/scripts/detail_route.tcl @@ -10,34 +10,16 @@ load_design 5_1_grt.odb 4_cts.sdc set_propagated_clock [all_clocks] set additional_args "" -if { [info exists ::env(dbProcessNode)]} { - append additional_args " -db_process_node $::env(dbProcessNode)" -} -if { [info exists ::env(OR_SEED)]} { - append additional_args " -or_seed $::env(OR_SEED)" -} -if { [info exists ::env(OR_K)]} { - append additional_args " -or_k $::env(OR_K)" -} - -if { [info exists ::env(MIN_ROUTING_LAYER)]} { - append additional_args " -bottom_routing_layer $::env(MIN_ROUTING_LAYER)" -} -if { [info exists ::env(MAX_ROUTING_LAYER)]} { - append additional_args " -top_routing_layer $::env(MAX_ROUTING_LAYER)" -} -if { [info exists ::env(VIA_IN_PIN_MIN_LAYER)]} { - append additional_args " -via_in_pin_bottom_layer $::env(VIA_IN_PIN_MIN_LAYER)" -} -if { [info exists ::env(VIA_IN_PIN_MAX_LAYER)]} { - append additional_args " -via_in_pin_top_layer $::env(VIA_IN_PIN_MAX_LAYER)" -} -if { [info exists ::env(DISABLE_VIA_GEN)]} { - append additional_args " -disable_via_gen" -} -if { [info exists ::env(REPAIR_PDN_VIA_LAYER)]} { - append additional_args " -repair_pdn_vias $::env(REPAIR_PDN_VIA_LAYER)" -} +append_env_var additional_args dbProcessNode -db_process_node 1 +append_env_var additional_args OR_SEED -or_seed 1 +append_env_var additional_args OR_K -or_k 1 +append_env_var additional_args MIN_ROUTING_LAYER -bottom_routing_layer 1 +append_env_var additional_args MAX_ROUTING_LAYER -top_routing_layer 1 +append_env_var additional_args VIA_IN_PIN_MIN_LAYER -via_in_pin_bottom_layer 1 +append_env_var additional_args VIA_IN_PIN_MAX_LAYER -via_in_pin_top_layer 1 +append_env_var additional_args DISABLE_VIA_GEN -disable_via_gen 0 +append_env_var additional_args REPAIR_PDN_VIA_LAYER -repair_pdn_vias 1 +append_env_var additional_args DETAILED_ROUTE_END_ITERATION -droute_end_iter 1 append additional_args " -save_guide_updates -verbose 1" @@ -55,7 +37,7 @@ append additional_args " -save_guide_updates -verbose 1" # having to go spelunking in Tcl or modify configuration scripts, while # not having to wait too long or generating large useless reports. -set arguments [expr {[info exists ::env(DETAILED_ROUTE_ARGS)] ? $::env(DETAILED_ROUTE_ARGS) : \ +set arguments [expr {[env_var_exists_and_non_empty DETAILED_ROUTE_ARGS] ? $::env(DETAILED_ROUTE_ARGS) : \ [concat $additional_args {-drc_report_iter_step 5}]}] set all_args [concat [list \ @@ -69,9 +51,11 @@ set_global_routing_layer_adjustment $env(MIN_ROUTING_LAYER)-$env(MAX_ROUTING_LAY set_routing_layers -signal $env(MIN_ROUTING_LAYER)-$env(MAX_ROUTING_LAYER) -if {![info exist ::env(SKIP_ANTENNA_REPAIR_POST_DRT)]} { +if {![env_var_equals SKIP_ANTENNA_REPAIR_POST_DRT 1]} { set repair_antennas_iters 1 - repair_antennas + if {[repair_antennas]} { + detailed_route {*}$all_args + } while {[check_antennas] && $repair_antennas_iters < 5} { repair_antennas detailed_route {*}$all_args @@ -79,7 +63,7 @@ if {![info exist ::env(SKIP_ANTENNA_REPAIR_POST_DRT)]} { } } -if { [info exists ::env(POST_DETAIL_ROUTE_TCL)] } { +if { [env_var_exists_and_non_empty POST_DETAIL_ROUTE_TCL] } { source $::env(POST_DETAIL_ROUTE_TCL) } diff --git a/flow/scripts/final_report.tcl b/flow/scripts/final_report.tcl index 8e5f895955..af9b381284 100644 --- a/flow/scripts/final_report.tcl +++ b/flow/scripts/final_report.tcl @@ -17,11 +17,11 @@ write_def $::env(RESULTS_DIR)/6_final.def write_verilog $::env(RESULTS_DIR)/6_final.v # Run extraction and STA -if {[info exist ::env(RCX_RULES)]} { +if {[env_var_exists_and_non_empty RCX_RULES]} { # Set RC corner for RCX # Set in config.mk - if {[info exist ::env(RCX_RC_CORNER)]} { + if {[env_var_exists_and_non_empty RCX_RC_CORNER]} { set rc_corner $::env(RCX_RC_CORNER) } @@ -37,7 +37,7 @@ if {[info exist ::env(RCX_RULES)]} { read_spef $::env(RESULTS_DIR)/6_final.spef # Static IR drop analysis - if {[info exist ::env(PWR_NETS_VOLTAGES)] && [string length $::env(PWR_NETS_VOLTAGES)] > 0} { + if {[env_var_exists_and_non_empty PWR_NETS_VOLTAGES]} { dict for {pwrNetName pwrNetVoltage} {*}$::env(PWR_NETS_VOLTAGES) { set_pdnsim_net_voltage -net ${pwrNetName} -voltage ${pwrNetVoltage} analyze_power_grid -net ${pwrNetName} \ @@ -46,7 +46,7 @@ if {[info exist ::env(RCX_RULES)]} { } else { puts "IR drop analysis for power nets is skipped because PWR_NETS_VOLTAGES is undefined" } - if {[info exist ::env(GND_NETS_VOLTAGES)] && [string length $::env(GND_NETS_VOLTAGES)] > 0} { + if {[env_var_exists_and_non_empty GND_NETS_VOLTAGES]} { dict for {gndNetName gndNetVoltage} {*}$::env(GND_NETS_VOLTAGES) { set_pdnsim_net_voltage -net ${gndNetName} -voltage ${gndNetVoltage} analyze_power_grid -net ${gndNetName} \ diff --git a/flow/scripts/generate_abstract.tcl b/flow/scripts/generate_abstract.tcl index e619278026..77bc293819 100644 --- a/flow/scripts/generate_abstract.tcl +++ b/flow/scripts/generate_abstract.tcl @@ -1,6 +1,6 @@ source $::env(SCRIPTS_DIR)/load.tcl -set stem [expr {[info exists ::env(ABSTRACT_SOURCE)] ? $::env(ABSTRACT_SOURCE) : "6_final"}] +set stem [expr {[env_var_exists_and_non_empty ABSTRACT_SOURCE] ? $::env(ABSTRACT_SOURCE) : "6_final"}] set result [find_sdc_file $stem.odb] set design_stage [lindex $result 0] @@ -24,7 +24,7 @@ puts "Generating abstract views" write_timing_model $::env(RESULTS_DIR)/$::env(DESIGN_NAME).lib write_abstract_lef -bloat_occupied_layers $::env(RESULTS_DIR)/$::env(DESIGN_NAME).lef -if {[info exist ::env(CDL_FILES)]} { +if {[env_var_exists_and_non_empty CDL_FILES]} { cdl read_masters $::env(CDL_FILES) cdl out $::env(RESULTS_DIR)/$stem.cdl } diff --git a/flow/scripts/global_place.tcl b/flow/scripts/global_place.tcl index 4fad617485..063546516b 100644 --- a/flow/scripts/global_place.tcl +++ b/flow/scripts/global_place.tcl @@ -41,7 +41,7 @@ if {$result != 0} { estimate_parasitics -placement -if {[info exist ::env(CLUSTER_FLOPS)]} { +if {[env_var_equals CLUSTER_FLOPS 1]} { cluster_flops estimate_parasitics -placement } diff --git a/flow/scripts/global_place_skip_io.tcl b/flow/scripts/global_place_skip_io.tcl index 227b029c03..df557c68b9 100644 --- a/flow/scripts/global_place_skip_io.tcl +++ b/flow/scripts/global_place_skip_io.tcl @@ -2,7 +2,7 @@ source $::env(SCRIPTS_DIR)/load.tcl load_design 2_floorplan.odb 2_floorplan.sdc -if { [info exists ::env(FLOORPLAN_DEF)] } { +if { [env_var_exists_and_non_empty FLOORPLAN_DEF] } { puts "FLOORPLAN_DEF is set. Skipping global placement without IOs" } else { source $::env(SCRIPTS_DIR)/set_place_density.tcl diff --git a/flow/scripts/global_route.tcl b/flow/scripts/global_route.tcl index 7b4e0628e7..43e59e59ad 100644 --- a/flow/scripts/global_route.tcl +++ b/flow/scripts/global_route.tcl @@ -6,7 +6,7 @@ proc global_route_helper {} { source $::env(SCRIPTS_DIR)/load.tcl load_design 4_cts.odb 4_cts.sdc - if {[info exist ::env(PRE_GLOBAL_ROUTE)]} { + if {[env_var_exists_and_non_empty PRE_GLOBAL_ROUTE]} { source $::env(PRE_GLOBAL_ROUTE) } @@ -19,7 +19,7 @@ proc global_route_helper {} { # GLOBAL_ROUTE_ARGS specifies. proc do_global_route {} { set all_args [concat [list -congestion_report_file $::env(REPORTS_DIR)/congestion.rpt] \ - [expr {[info exists ::env(GLOBAL_ROUTE_ARGS)] ? $::env(GLOBAL_ROUTE_ARGS) : \ + [expr {[env_var_exists_and_non_empty GLOBAL_ROUTE_ARGS] ? $::env(GLOBAL_ROUTE_ARGS) : \ {-congestion_iterations 30 -congestion_report_iter_step 5 -verbose}}]] log_cmd global_route {*}$all_args @@ -45,7 +45,7 @@ proc global_route_helper {} { set_propagated_clock [all_clocks] estimate_parasitics -global_routing - if {[info exist ::env(DONT_USE_CELLS)]} { + if {[env_var_exists_and_non_empty DONT_USE_CELLS]} { set_dont_use $::env(DONT_USE_CELLS) } @@ -88,7 +88,7 @@ proc global_route_helper {} { recover_power - if {![info exist ::env(SKIP_ANTENNA_REPAIR)]} { + if {![env_var_equals SKIP_ANTENNA_REPAIR 1]} { puts "Repair antennas..." repair_antennas -iterations 5 check_placement -verbose diff --git a/flow/scripts/gui.tcl b/flow/scripts/gui.tcl index 2b739b6b2e..d473bbf9c3 100644 --- a/flow/scripts/gui.tcl +++ b/flow/scripts/gui.tcl @@ -3,11 +3,11 @@ source $::env(SCRIPTS_DIR)/util.tcl source $::env(SCRIPTS_DIR)/read_liberty.tcl # Read def -if {[info exist ::env(DEF_FILE)]} { +if {[env_var_exists_and_non_empty DEF_FILE]} { # Read lef read_lef $::env(TECH_LEF) read_lef $::env(SC_LEF) - if {[info exist ::env(ADDITIONAL_LEFS)]} { + if {[env_var_exists_and_non_empty ADDITIONAL_LEFS]} { foreach lef $::env(ADDITIONAL_LEFS) { read_lef $lef } @@ -49,6 +49,6 @@ proc read_timing {input_file} { fast_route } -if {![info exist ::env(GUI_NO_TIMING)]} { +if {![env_var_equals GUI_NO_TIMING 1]} { read_timing $input_file } diff --git a/flow/scripts/io_placement_util.tcl b/flow/scripts/io_placement_util.tcl index e3f3287f70..60be7bd484 100644 --- a/flow/scripts/io_placement_util.tcl +++ b/flow/scripts/io_placement_util.tcl @@ -1,11 +1,11 @@ -if {[info exists ::env(FLOORPLAN_DEF)]} { +if {[env_var_exists_and_non_empty FLOORPLAN_DEF]} { puts "Skipping IO placement as DEF file was used to initialize floorplan." } else { - if {[info exists ::env(IO_CONSTRAINTS)]} { + if {[env_var_exists_and_non_empty IO_CONSTRAINTS]} { source $::env(IO_CONSTRAINTS) } - set args [list -hor_layer $::env(IO_PLACER_H) \ - -ver_layer $::env(IO_PLACER_V) \ + set args [list -hor_layers $::env(IO_PLACER_H) \ + -ver_layers $::env(IO_PLACER_V) \ {*}$::env(PLACE_PINS_ARGS)] log_cmd place_pins {*}$args } diff --git a/flow/scripts/klayout.tcl b/flow/scripts/klayout.tcl index d39f35234d..56cc08ad6b 100644 --- a/flow/scripts/klayout.tcl +++ b/flow/scripts/klayout.tcl @@ -1,10 +1,10 @@ -if {[info exists ::env(FILL_CONFIG)]} { +if {[env_var_exists_and_non_empty FILL_CONFIG]} { set fill_config $::env(FILL_CONFIG) } else { set fill_config "" } -if {[info exists ::env(SEAL_GDS)]} { +if {[env_var_exists_and_non_empty SEAL_GDS]} { set seal_gds $::env(SEAL_GDS) } else { set seal_gds "" diff --git a/flow/scripts/load.tcl b/flow/scripts/load.tcl index 95b1d91360..90eca7ef51 100644 --- a/flow/scripts/load.tcl +++ b/flow/scripts/load.tcl @@ -14,7 +14,7 @@ proc load_design {design_file sdc_file} { if {$ext == ".v"} { read_lef $::env(TECH_LEF) read_lef $::env(SC_LEF) - if {[info exist ::env(ADDITIONAL_LEFS)]} { + if {[env_var_exists_and_non_empty ADDITIONAL_LEFS]} { foreach lef $::env(ADDITIONAL_LEFS) { read_lef $lef } @@ -36,7 +36,7 @@ proc load_design {design_file sdc_file} { source $::env(PLATFORM_DIR)/setRC.tcl - if { [info exists ::env(LIB_MODEL)] && $::env(LIB_MODEL) == "CCS" } { + if { [env_var_equals LIB_MODEL CCS] } { puts "Using CCS delay calculation" set_delay_calculator prima } @@ -51,13 +51,13 @@ proc get_verilog_cells_for_design { } { } proc write_eqy_verilog {filename} { - # Filter out cells with no verilog/not needed for equivalence such - # as fillers and tap cells - if {[info exist ::env(REMOVE_CELLS_FOR_EQY)]} { - write_verilog -remove_cells $::env(REMOVE_CELLS_FOR_EQY) $::env(RESULTS_DIR)/$filename - } else { - write_verilog $::env(RESULTS_DIR)/$filename - } + # Filter out cells with no verilog/not needed for equivalence such + # as fillers and tap cells + if {[env_var_exists_and_non_empty REMOVE_CELLS_FOR_EQY]} { + write_verilog -remove_cells $::env(REMOVE_CELLS_FOR_EQY) $::env(RESULTS_DIR)/$filename + } else { + write_verilog $::env(RESULTS_DIR)/$filename + } } proc write_eqy_script_for_sky130hd {} { diff --git a/flow/scripts/macro_place_util.tcl b/flow/scripts/macro_place_util.tcl index 15c63294b7..aa6a9411fb 100644 --- a/flow/scripts/macro_place_util.tcl +++ b/flow/scripts/macro_place_util.tcl @@ -1,23 +1,7 @@ -proc find_macros {} { - set macros "" - - set db [ord::get_db] - set block [[$db getChip] getBlock] - foreach inst [$block getInsts] { - set inst_master [$inst getMaster] - - # BLOCK means MACRO cells - if { [string match [$inst_master getType] "BLOCK"] } { - append macros " " $inst - } - } - return $macros -} - if {[find_macros] != ""} { # If wrappers defined replace macros with their wrapped version # # ---------------------------------------------------------------------------- - if {[info exists ::env(MACRO_WRAPPERS)]} { + if {[env_var_exists_and_non_empty MACRO_WRAPPERS]} { source $::env(MACRO_WRAPPERS) set wrapped_macros [dict keys [dict get $wrapper around]] @@ -40,92 +24,48 @@ if {[find_macros] != ""} { set blockage_width [expr max($halo_max, $channel_max/2)] - if {[info exists ::env(MACRO_BLOCKAGE_HALO)]} { + if {[env_var_exists_and_non_empty MACRO_BLOCKAGE_HALO]} { set blockage_width $::env(MACRO_BLOCKAGE_HALO) } - if {[info exists ::env(MACRO_PLACEMENT_TCL)]} { + if {[env_var_exists_and_non_empty MACRO_PLACEMENT_TCL]} { source $::env(MACRO_PLACEMENT_TCL) puts "Using manual macro placement file $::env(MACRO_PLACEMENT_TCL)" - } elseif {[info exists ::env(MACRO_PLACEMENT)]} { + } elseif {[env_var_exists_and_non_empty MACRO_PLACEMENT]} { source $::env(SCRIPTS_DIR)/read_macro_placement.tcl puts "Using manual macro placement file $::env(MACRO_PLACEMENT)" read_macro_placement $::env(MACRO_PLACEMENT) - } elseif {[info exists ::env(RTLMP_FLOW)]} { + } elseif {[env_var_equals RTLMP_FLOW 1]} { puts "HierRTLMP Flow enabled..." set additional_rtlmp_args "" - if { [info exists ::env(RTLMP_MAX_LEVEL)]} { - append additional_rtlmp_args " -max_num_level $env(RTLMP_MAX_LEVEL)" - } - if { [info exists ::env(RTLMP_MAX_INST)]} { - append additional_rtlmp_args " -max_num_inst $env(RTLMP_MAX_INST)" - } - if { [info exists ::env(RTLMP_MIN_INST)]} { - append additional_rtlmp_args " -min_num_inst $env(RTLMP_MIN_INST)" - } - if { [info exists ::env(RTLMP_MAX_MACRO)]} { - append additional_rtlmp_args " -max_num_macro $env(RTLMP_MAX_MACRO)" - } - if { [info exists ::env(RTLMP_MIN_MACRO)]} { - append additional_rtlmp_args " -min_num_macro $env(RTLMP_MIN_MACRO)" - } - + append_env_var additional_rtlmp_args RTLMP_MAX_LEVEL -max_num_level 1 + append_env_var additional_rtlmp_args RTLMP_MAX_INST -max_num_inst 1 + append_env_var additional_rtlmp_args RTLMP_MIN_INST -min_num_inst 1 + append_env_var additional_rtlmp_args RTLMP_MAX_MACRO -max_num_macro 1 + append_env_var additional_rtlmp_args RTLMP_MIN_MACRO -min_num_macro 1 append additional_rtlmp_args " -halo_width $halo_x" append additional_rtlmp_args " -halo_height $halo_y" - - if { [info exists ::env(RTLMP_MIN_AR)]} { - append additional_rtlmp_args " -min_ar $env(RTLMP_MIN_AR)" - } - if { [info exists ::env(RTLMP_SIGNATURE_NET_THRESHOLD)]} { - append additional_rtlmp_args \ - " -signature_net_threshold $env(RTLMP_SIGNATURE_NET_THRESHOLD)" - } - if { [info exists ::env(RTLMP_AREA_WT)]} { - append additional_rtlmp_args " -area_weight $env(RTLMP_AREA_WT)" - } - if { [info exists ::env(RTLMP_WIRELENGTH_WT)]} { - append additional_rtlmp_args " -wirelength_weight $env(RTLMP_WIRELENGTH_WT)" - } - if { [info exists ::env(RTLMP_OUTLINE_WT)]} { - append additional_rtlmp_args " -outline_weight $env(RTLMP_OUTLINE_WT)" - } - if { [info exists ::env(RTLMP_BOUNDARY_WT)]} { - append additional_rtlmp_args " -boundary_weight $env(RTLMP_BOUNDARY_WT)" - } - - if { [info exists ::env(RTLMP_NOTCH_WT)]} { - append additional_rtlmp_args " -notch_weight $env(RTLMP_NOTCH_WT)" - } - - if { [info exists ::env(RTLMP_DEAD_SPACE)]} { - append additional_rtlmp_args " -dead_space $env(RTLMP_DEAD_SPACE)" - } - if { [info exists ::env(RTLMP_CONFIG_FILE)]} { - append additional_rtlmp_args " -config_file $env(RTLMP_CONFIG_FILE)" - } - if { [info exists ::env(RTLMP_RPT_DIR)]} { - append additional_rtlmp_args " -report_directory $env(RTLMP_RPT_DIR)" - } - - if { [info exists ::env(RTLMP_FENCE_LX)]} { - append additional_rtlmp_args " -fence_lx $env(RTLMP_FENCE_LX)" - } - if { [info exists ::env(RTLMP_FENCE_LY)]} { - append additional_rtlmp_args " -fence_ly $env(RTLMP_FENCE_LY)" - } - if { [info exists ::env(RTLMP_FENCE_UX)]} { - append additional_rtlmp_args " -fence_ux $env(RTLMP_FENCE_UX)" - } - if { [info exists ::env(RTLMP_FENCE_UY)]} { - append additional_rtlmp_args " -fence_uy $env(RTLMP_FENCE_UY)" - } + append_env_var additional_rtlmp_args RTLMP_MIN_AR -min_ar 1 + append_env_var additional_rtlmp_args RTLMP_SIGNATURE_NET_THRESHOLD -signature_net_threshold 1 + append_env_var additional_rtlmp_args RTLMP_AREA_WT -area_weight 1 + append_env_var additional_rtlmp_args RTLMP_WIRELENGTH_WT -wirelength_weight 1 + append_env_var additional_rtlmp_args RTLMP_OUTLINE_WT -outline_weight 1 + append_env_var additional_rtlmp_args RTLMP_BOUNDARY_WT -boundary_weight 1 + append_env_var additional_rtlmp_args RTLMP_NOTCH_WT -notch_weight 1 + append_env_var additional_rtlmp_args RTLMP_DEAD_SPACE -dead_space 1 + append_env_var additional_rtlmp_args RTLMP_CONFIG_FILE -config_file 1 + append_env_var additional_rtlmp_args RTLMP_RPT_DIR -report_directory 1 + append_env_var additional_rtlmp_args RTLMP_FENCE_LX -fence_lx 1 + append_env_var additional_rtlmp_args RTLMP_FENCE_LY -fence_ly 1 + append_env_var additional_rtlmp_args RTLMP_FENCE_UX -fence_ux 1 + append_env_var additional_rtlmp_args RTLMP_FENCE_UY -fence_uy 1 source $::env(SCRIPTS_DIR)/set_place_density.tcl append additional_rtlmp_args " -target_util $place_density" set all_args $additional_rtlmp_args - if { [info exists ::env(RTLMP_ARGS)] } { + if { [env_var_exists_and_non_empty RTLMP_ARGS] } { set all_args $::env(RTLMP_ARGS) } diff --git a/flow/scripts/pdn.tcl b/flow/scripts/pdn.tcl index 80d8a80c0b..ddda73e53f 100644 --- a/flow/scripts/pdn.tcl +++ b/flow/scripts/pdn.tcl @@ -4,7 +4,7 @@ load_design 2_5_floorplan_tapcell.odb 1_synth.sdc source $::env(PDN_TCL) pdngen -if { [info exists ::env(POST_PDN_TCL)] && [file exists $::env(POST_PDN_TCL)] } { +if { [env_var_exists_and_non_empty POST_PDN_TCL] } { source $::env(POST_PDN_TCL) } diff --git a/flow/scripts/read_liberty.tcl b/flow/scripts/read_liberty.tcl index 174697a521..68f36e84a5 100644 --- a/flow/scripts/read_liberty.tcl +++ b/flow/scripts/read_liberty.tcl @@ -1,12 +1,12 @@ # To remove [WARNING STA-1212] from the logs for ASAP7. # /OpenROAD-flow-scripts/flow/platforms/asap7/lib/asap7sc7p5t_SIMPLE_RVT_TT_nldm_211120.lib.gz line 13178, timing group from output port. # Added following suppress_message -if {[info exists ::env(PLATFORM)] && $::env(PLATFORM) == "asap7"} { +if {[env_var_equals PLATFORM asap7]} { suppress_message STA 1212 } #Read Liberty -if {[info exists ::env(CORNERS)]} { +if {[env_var_exists_and_non_empty CORNERS]} { # corners define_corners {*}$::env(CORNERS) foreach corner $::env(CORNERS) { @@ -24,6 +24,6 @@ if {[info exists ::env(CORNERS)]} { } } -if {[info exists ::env(PLATFORM)] && $::env(PLATFORM) == "asap7"} { +if {[env_var_equals PLATFORM asap7]} { unsuppress_message STA 1212 } diff --git a/flow/scripts/report_metrics.tcl b/flow/scripts/report_metrics.tcl index 7163803066..7c635598e3 100644 --- a/flow/scripts/report_metrics.tcl +++ b/flow/scripts/report_metrics.tcl @@ -7,7 +7,7 @@ proc report_puts { out } { } proc report_metrics { stage when {include_erc true} {include_clock_skew true} } { - if {[info exists ::env(SKIP_REPORT_METRICS)] && $::env(SKIP_REPORT_METRICS) == 1} { + if {[env_var_equals SKIP_REPORT_METRICS 1]} { return } puts "Report metrics stage $stage, $when..." @@ -213,7 +213,7 @@ proc report_metrics { stage when {include_erc true} {include_clock_skew true} } report_puts "\n==========================================================================" report_puts "$when report_power" report_puts "--------------------------------------------------------------------------" - if {[info exists ::env(CORNERS)]} { + if {[env_var_exists_and_non_empty CORNERS]} { foreach corner $::env(CORNERS) { report_puts "Corner: $corner" report_power -corner $corner >> $filename diff --git a/flow/scripts/resize.tcl b/flow/scripts/resize.tcl index e4569510cb..91bb036eba 100644 --- a/flow/scripts/resize.tcl +++ b/flow/scripts/resize.tcl @@ -13,8 +13,8 @@ set_dont_use $::env(DONT_USE_CELLS) # by default, IO ports will be buffered # to not buffer IO ports, set environment variable # DONT_BUFFER_PORT = 1 -if { ![info exists ::env(FOOTPRINT)] } { - if { ![info exists ::env(DONT_BUFFER_PORTS)] || $::env(DONT_BUFFER_PORTS) == 0 } { +if { ![env_var_exists_and_non_empty FOOTPRINT] } { + if { ![env_var_equals DONT_BUFFER_PORTS 1] } { puts "Perform port buffering..." buffer_ports } @@ -22,18 +22,18 @@ if { ![info exists ::env(FOOTPRINT)] } { puts "Perform buffer insertion..." set additional_args "" -if { [info exists ::env(CAP_MARGIN)] && $::env(CAP_MARGIN) > 0.0} { +if { [env_var_exists_and_non_empty CAP_MARGIN] && $::env(CAP_MARGIN) > 0.0} { puts "Cap margin $::env(CAP_MARGIN)" append additional_args " -cap_margin $::env(CAP_MARGIN)" } -if { [info exists ::env(SLEW_MARGIN)] && $::env(SLEW_MARGIN) > 0.0} { +if { [env_var_exists_and_non_empty SLEW_MARGIN] && $::env(SLEW_MARGIN) > 0.0} { puts "Slew margin $::env(SLEW_MARGIN)" append additional_args " -slew_margin $::env(SLEW_MARGIN)" } repair_design {*}$additional_args -if { [info exists env(TIE_SEPARATION)] } { +if { [env_var_exists_and_non_empty TIE_SEPARATION] } { set tie_separation $env(TIE_SEPARATION) } else { set tie_separation 0 diff --git a/flow/scripts/save_images.tcl b/flow/scripts/save_images.tcl index 542956bc8a..15b467139e 100644 --- a/flow/scripts/save_images.tcl +++ b/flow/scripts/save_images.tcl @@ -1,3 +1,5 @@ +source $::env(SCRIPTS_DIR)/util.tcl + gui::save_display_controls set height [[[ord::get_db_block] getBBox] getDY] @@ -35,7 +37,7 @@ gui::set_display_controls "Layers/*" visible false gui::set_display_controls "Instances/Physical/*" visible false save_image -resolution $resolution $::env(REPORTS_DIR)/final_placement.webp -if {[info exist ::env(PWR_NETS_VOLTAGES)] && [string length $::env(PWR_NETS_VOLTAGES)] > 0} { +if {[env_var_exists_and_non_empty PWR_NETS_VOLTAGES]} { gui::set_display_controls "Heat Maps/IR Drop" visible true gui::set_heatmap IRDrop Layer $::env(IR_DROP_LAYER) gui::set_heatmap IRDrop ShowLegend 1 diff --git a/flow/scripts/synth.tcl b/flow/scripts/synth.tcl index c15180258d..ec1c3445c8 100644 --- a/flow/scripts/synth.tcl +++ b/flow/scripts/synth.tcl @@ -2,7 +2,7 @@ source $::env(SCRIPTS_DIR)/synth_preamble.tcl source $::env(SYNTH_STOP_MODULE_SCRIPT) -if { [info exist ::env(SYNTH_GUT)] && $::env(SYNTH_GUT) == 1 } { +if { [env_var_equals SYNTH_GUT 1] } { hierarchy -check -top $::env(DESIGN_NAME) # /deletes all cells at the top level, which will quickly optimize away # everything else, including macros. @@ -20,7 +20,7 @@ renames -wire opt -purge # Technology mapping of adders -if {[info exist ::env(ADDER_MAP_FILE)] && [file isfile $::env(ADDER_MAP_FILE)]} { +if {[env_var_exists_and_non_empty ADDER_MAP_FILE] && [file isfile $::env(ADDER_MAP_FILE)]} { # extract the full adders extract_fa # map full adders @@ -31,7 +31,7 @@ if {[info exist ::env(ADDER_MAP_FILE)] && [file isfile $::env(ADDER_MAP_FILE)]} } # Technology mapping of latches -if {[info exist ::env(LATCH_MAP_FILE)]} { +if {[env_var_exists_and_non_empty LATCH_MAP_FILE]} { techmap -map $::env(LATCH_MAP_FILE) } @@ -42,7 +42,7 @@ foreach cell $::env(DONT_USE_CELLS) { # Technology mapping of flip-flops # dfflibmap only supports one liberty file -if {[info exist ::env(DFF_LIB_FILE)]} { +if {[env_var_exists_and_non_empty DFF_LIB_FILE]} { dfflibmap -liberty $::env(DFF_LIB_FILE) {*}$dfflibmap_args } else { dfflibmap -liberty $::env(DONT_USE_SC_LIB) {*}$dfflibmap_args diff --git a/flow/scripts/synth_hier_report.tcl b/flow/scripts/synth_hier_report.tcl index af3316111a..ee419e55c0 100644 --- a/flow/scripts/synth_hier_report.tcl +++ b/flow/scripts/synth_hier_report.tcl @@ -1,5 +1,7 @@ +source $::env(SCRIPTS_DIR)/util.tcl + proc write_keep_hierarchy {} { - if { ![info exist ::env(SYNTH_HIERARCHICAL)] || $::env(SYNTH_HIERARCHICAL) == 0 } { + if { ![env_var_equals SYNTH_HIERARCHICAL 1] } { set out_script_ptr [open $::env(SYNTH_STOP_MODULE_SCRIPT) w] close $out_script_ptr return @@ -9,11 +11,11 @@ proc write_keep_hierarchy {} { synthesize_check {} - if { [info exist ::env(ADDER_MAP_FILE)] && [file isfile $::env(ADDER_MAP_FILE)] } { + if { [env_var_exists_and_non_empty ADDER_MAP_FILE] && [file isfile $::env(ADDER_MAP_FILE)] } { techmap -map $::env(ADDER_MAP_FILE) } techmap - if {[info exist ::env(DFF_LIB_FILE)]} { + if {[env_var_exists_and_non_empty DFF_LIB_FILE]} { dfflibmap -liberty $::env(DFF_LIB_FILE) } else { dfflibmap -liberty $::env(DONT_USE_SC_LIB) @@ -24,7 +26,7 @@ proc write_keep_hierarchy {} { tee -o $::env(REPORTS_DIR)/synth_hier_stat.txt stat {*}$stat_libs set ungroup_threshold 0 - if { [info exist ::env(MAX_UNGROUP_SIZE)] && $::env(MAX_UNGROUP_SIZE) > 0 } { + if { [env_var_exists_and_non_empty MAX_UNGROUP_SIZE] && $::env(MAX_UNGROUP_SIZE) > 0 } { set ungroup_threshold $::env(MAX_UNGROUP_SIZE) puts "Ungroup modules of size $ungroup_threshold" } @@ -61,12 +63,13 @@ proc write_keep_hierarchy {} { set split_cont1 [split $contents1 "\n"] foreach line $split_cont1 { if {[regexp { +Chip area for top module '(\S+)': (.*)} $line -> module_name area]} { - puts "Area of module $module_name is $area" if {[expr $area > $ungroup_threshold]} { - puts "Preserving hierarchical module: $module_name" + puts "Preserving module: $module_name (area: $area)" puts $out_script_ptr "select -module {$module_name}" puts $out_script_ptr "setattr -mod -set keep_hierarchy 1" puts $out_script_ptr "select -clear" + } else { + puts "Flattening module $module_name (area: $area)" } } } diff --git a/flow/scripts/synth_preamble.tcl b/flow/scripts/synth_preamble.tcl index f2e9b116ab..b64cc5cd08 100644 --- a/flow/scripts/synth_preamble.tcl +++ b/flow/scripts/synth_preamble.tcl @@ -2,9 +2,9 @@ yosys -import source $::env(SCRIPTS_DIR)/util.tcl -if {[info exist ::env(CACHED_NETLIST)]} { +if {[env_var_exists_and_non_empty CACHED_NETLIST]} { exec cp $::env(CACHED_NETLIST) $::env(RESULTS_DIR)/1_1_yosys.v - if {[info exist ::env(CACHED_REPORTS)]} { + if {[env_var_exists_and_non_empty CACHED_REPORTS]} { exec cp {*}$::env(CACHED_REPORTS) $::env(REPORTS_DIR)/. } exit @@ -12,7 +12,7 @@ if {[info exist ::env(CACHED_NETLIST)]} { # Setup verilog include directories set vIdirsArgs "" -if {[info exist ::env(VERILOG_INCLUDE_DIRS)]} { +if {[env_var_exists_and_non_empty VERILOG_INCLUDE_DIRS]} { foreach dir $::env(VERILOG_INCLUDE_DIRS) { lappend vIdirsArgs "-I$dir" } @@ -39,19 +39,19 @@ foreach file $::env(VERILOG_FILES) { read_liberty -lib {*}$::env(DONT_USE_LIBS) # Apply toplevel parameters (if exist) -if {[info exist ::env(VERILOG_TOP_PARAMS)]} { +if {[env_var_exists_and_non_empty VERILOG_TOP_PARAMS]} { dict for {key value} $::env(VERILOG_TOP_PARAMS) { chparam -set $key $value $::env(DESIGN_NAME) } } # Read platform specific mapfile for OPENROAD_CLKGATE cells -if {[info exist ::env(CLKGATE_MAP_FILE)]} { +if {[env_var_exists_and_non_empty CLKGATE_MAP_FILE]} { read_verilog -defer $::env(CLKGATE_MAP_FILE) } # Mark modules to keep from getting removed in flattening -if {[info exist ::env(PRESERVE_CELLS)]} { +if {[env_var_exists_and_non_empty PRESERVE_CELLS]} { # Expand hierarchy since verilog was read in with -defer hierarchy -check -top $::env(DESIGN_NAME) foreach cell $::env(PRESERVE_CELLS) { @@ -77,13 +77,13 @@ set abc_args [list -script $abc_script \ # Exclude dont_use cells. This includes macros that are specified via # LIB_FILES and ADDITIONAL_LIBS that are included in LIB_FILES. -if {[info exist ::env(DONT_USE_CELLS)] && $::env(DONT_USE_CELLS) != ""} { +if {[env_var_exists_and_non_empty DONT_USE_CELLS]} { foreach cell $::env(DONT_USE_CELLS) { lappend abc_args -dont_use $cell } } -if {[info exist ::env(SDC_FILE_CLOCK_PERIOD)] && [file isfile $::env(SDC_FILE_CLOCK_PERIOD)]} { +if {[env_var_exists_and_non_empty SDC_FILE_CLOCK_PERIOD] && [file isfile $::env(SDC_FILE_CLOCK_PERIOD)]} { puts "Extracting clock period from SDC file: $::env(SDC_FILE_CLOCK_PERIOD)" set fp [open $::env(SDC_FILE_CLOCK_PERIOD) r] set clock_period [string trim [read $fp]] diff --git a/flow/scripts/util.tcl b/flow/scripts/util.tcl index b8f74837c3..14a555016b 100644 --- a/flow/scripts/util.tcl +++ b/flow/scripts/util.tcl @@ -4,12 +4,12 @@ proc log_cmd {cmd args} { } proc fast_route {} { - if {[info exist ::env(FASTROUTE_TCL)]} { + if {[env_var_exists_and_non_empty FASTROUTE_TCL]} { source $::env(FASTROUTE_TCL) } else { set_global_routing_layer_adjustment $::env(MIN_ROUTING_LAYER)-$::env(MAX_ROUTING_LAYER) $::env(ROUTING_LAYER_ADJUSTMENT) set_routing_layers -signal $::env(MIN_ROUTING_LAYER)-$::env(MAX_ROUTING_LAYER) - if {[info exist ::env(MACRO_EXTENSION)]} { + if {[env_var_exists_and_non_empty MACRO_EXTENSION]} { set_macro_extension $::env(MACRO_EXTENSION) } } @@ -75,10 +75,27 @@ proc env_var_exists_and_non_empty {env_var} { proc append_env_var {list_name var_name prefix has_arg} { upvar $list_name list - if {[info exist ::env($var_name)]} { + if {(!$has_arg && [env_var_equals $var_name 1]) || + ($has_arg && [env_var_exists_and_non_empty $var_name])} { lappend list $prefix if {$has_arg} { lappend list $::env($var_name) } } } + +proc find_macros {} { + set macros "" + + set db [ord::get_db] + set block [[$db getChip] getBlock] + foreach inst [$block getInsts] { + set inst_master [$inst getMaster] + + # BLOCK means MACRO cells + if { [string match [$inst_master getType] "BLOCK"] } { + append macros " " $inst + } + } + return $macros +} diff --git a/flow/scripts/view_cells.tcl b/flow/scripts/view_cells.tcl index 0e16edc010..d6bf433d9a 100644 --- a/flow/scripts/view_cells.tcl +++ b/flow/scripts/view_cells.tcl @@ -2,6 +2,11 @@ read_lef $::env(TECH_LEF) read_lef $::env(SC_LEF) +if {[info exist ::env(ADDITIONAL_LEFS)]} { + foreach lef $::env(ADDITIONAL_LEFS) { + read_lef $lef + } +} # Create the block set db [ord::get_db] diff --git a/flow/util/distributed.py b/flow/util/distributed.py deleted file mode 100644 index 1610a44876..0000000000 --- a/flow/util/distributed.py +++ /dev/null @@ -1,964 +0,0 @@ -""" -This scripts handles sweeping and tuning of OpenROAD-flow-scripts parameters. -Dependencies are documented in pip format at distributed-requirements.txt - -For both sweep and tune modes: - python3 distributed.py -h - -Note: the order of the parameters matter. -Arguments --design, --platform and --config are always required and should -precede the . - -AutoTuner: - python3 distributed.py tune -h - python3 distributed.py --design gcd --platform sky130hd \ - --config ../designs/sky130hd/gcd/autotuner.json \ - tune - Example: - -Parameter sweeping: - python3 distributed.py sweep -h - Example: - python3 distributed.py --design gcd --platform sky130hd \ - --config distributed-sweep-example.json \ - sweep -""" - -import argparse -import json -import os -from os.path import abspath -import re -import sys -from datetime import datetime -from multiprocessing import cpu_count -from subprocess import run -from itertools import product -from uuid import uuid4 as uuid - -import numpy as np - -import ray -from ray import tune -from ray.tune.schedulers import AsyncHyperBandScheduler -from ray.tune.schedulers import PopulationBasedTraining -from ray.tune.search import ConcurrencyLimiter -from ray.tune.search.ax import AxSearch -from ray.tune.search.basic_variant import BasicVariantGenerator -from ray.tune.search.hyperopt import HyperOptSearch - -# from ray.tune.search.nevergrad import NevergradSearch -from ray.tune.search.optuna import OptunaSearch -from ray.util.queue import Queue - -# import nevergrad as ng -from ax.service.ax_client import AxClient - -DATE = datetime.now().strftime("%Y-%m-%d-%H-%M-%S") -ORFS_URL = "https://github.com/The-OpenROAD-Project/OpenROAD-flow-scripts" -FASTROUTE_TCL = "fastroute.tcl" -CONSTRAINTS_SDC = "constraint.sdc" -METRIC = "minimum" - - -class AutoTunerBase(tune.Trainable): - """ - AutoTuner base class for experiments. - """ - - def setup(self, config): - """ - Setup current experiment step. - """ - # We create the following directory structure: - # 1/ 2/ 3/ 4/ 5/ 6/ - # ////-DATE// - repo_dir = os.getcwd() + "/../" * 6 - self.repo_dir = abspath(repo_dir) - self.parameters = parse_config(config, path=os.getcwd()) - self.step_ = 0 - self.variant = f"variant-{self.__class__.__name__}-{self.trial_id}-or" - - def step(self): - """ - Run step experiment and compute its score. - """ - metrics_file = openroad(self.repo_dir, self.parameters, self.variant) - self.step_ += 1 - score = self.evaluate(self.read_metrics(metrics_file)) - # Feed the score back to Tune. - # return must match 'metric' used in tune.run() - return {METRIC: score} - - def evaluate(self, metrics): - """ - User-defined evaluation function. - It can change in any form to minimize the score (return value). - Default evaluation function optimizes effective clock period. - """ - error = "ERR" in metrics.values() - not_found = "N/A" in metrics.values() - if error or not_found: - return (99999999999) * (self.step_ / 100) ** (-1) - gamma = (metrics["clk_period"] - metrics["worst_slack"]) / 10 - score = metrics["clk_period"] - metrics["worst_slack"] - score = score * (self.step_ / 100) ** (-1) + gamma * metrics["num_drc"] - return score - - @classmethod - def read_metrics(cls, file_name): - """ - Collects metrics to evaluate the user-defined objective function. - """ - with open(file_name) as file: - data = json.load(file) - clk_period = 9999999 - worst_slack = "ERR" - wirelength = "ERR" - num_drc = "ERR" - total_power = "ERR" - core_util = "ERR" - final_util = "ERR" - for stage, value in data.items(): - if stage == "constraints" and len(value["clocks__details"]) > 0: - clk_period = float(value["clocks__details"][0].split()[1]) - if stage == "floorplan" and "design__instance__utilization" in value: - core_util = value["design__instance__utilization"] - if stage == "detailedroute" and "route__drc_errors" in value: - num_drc = value["route__drc_errors"] - if stage == "detailedroute" and "route__wirelength" in value: - wirelength = value["route__wirelength"] - if stage == "finish" and "timing__setup__ws" in value: - worst_slack = value["timing__setup__ws"] - if stage == "finish" and "power__total" in value: - total_power = value["power__total"] - if stage == "finish" and "design__instance__utilization" in value: - final_util = value["design__instance__utilization"] - ret = { - "clk_period": clk_period, - "worst_slack": worst_slack, - "wirelength": wirelength, - "num_drc": num_drc, - "total_power": total_power, - "core_util": core_util, - "final_util": final_util, - } - return ret - - -class PPAImprov(AutoTunerBase): - """ - PPAImprov - """ - - @classmethod - def get_ppa(cls, metrics): - """ - Compute PPA term for evaluate. - """ - coeff_perform, coeff_power, coeff_area = 10000, 100, 100 - - eff_clk_period = metrics["clk_period"] - if metrics["worst_slack"] < 0: - eff_clk_period -= metrics["worst_slack"] - - eff_clk_period_ref = reference["clk_period"] - if reference["worst_slack"] < 0: - eff_clk_period_ref -= reference["worst_slack"] - - def percent(x_1, x_2): - return (x_1 - x_2) / x_1 * 100 - - performance = percent(eff_clk_period_ref, eff_clk_period) - power = percent(reference["total_power"], metrics["total_power"]) - area = percent(100 - reference["final_util"], 100 - metrics["final_util"]) - - # Lower values of PPA are better. - ppa_upper_bound = (coeff_perform + coeff_power + coeff_area) * 100 - ppa = performance * coeff_perform - ppa += power * coeff_power - ppa += area * coeff_area - return ppa_upper_bound - ppa - - def evaluate(self, metrics): - error = "ERR" in metrics.values() or "ERR" in reference.values() - not_found = "N/A" in metrics.values() or "N/A" in reference.values() - if error or not_found: - return (99999999999) * (self.step_ / 100) ** (-1) - ppa = self.get_ppa(metrics) - gamma = ppa / 10 - score = ppa * (self.step_ / 100) ** (-1) + (gamma * metrics["num_drc"]) - return score - - -def read_config(file_name): - """ - Please consider inclusive, exclusive - Most type uses [min, max) - But, Quantization makes the upper bound inclusive. - e.g., qrandint and qlograndint uses [min, max] - step value is used for quantized type (e.g., quniform). Otherwise, write 0. - When min==max, it means the constant value - """ - - def read(path): - with open(abspath(path), "r") as file: - ret = file.read() - return ret - - def read_sweep(this): - return [*this["minmax"], this["step"]] - - def apply_condition(config, data): - # TODO: tune.sample_from only supports random search algorithm. - # To make conditional parameter for the other algorithms, different - # algorithms should take different methods (will be added) - if args.algorithm != "random": - return config - dp_pad_min = data["CELL_PAD_IN_SITES_DETAIL_PLACEMENT"]["minmax"][0] - # dp_pad_max = data['CELL_PAD_IN_SITES_DETAIL_PLACEMENT']['minmax'][1] - dp_pad_step = data["CELL_PAD_IN_SITES_DETAIL_PLACEMENT"]["step"] - if dp_pad_step == 1: - config["CELL_PAD_IN_SITES_DETAIL_PLACEMENT"] = tune.sample_from( - lambda spec: tune.randint( - dp_pad_min, spec.config.CELL_PAD_IN_SITES_GLOBAL_PLACEMENT + 1 - ) - ) - if dp_pad_step > 1: - config["CELL_PAD_IN_SITES_DETAIL_PLACEMENT"] = tune.sample_from( - lambda spec: tune.choice( - np.ndarray.tolist( - np.arange( - dp_pad_min, - spec.config.CELL_PAD_IN_SITES_GLOBAL_PLACEMENT + 1, - dp_pad_step, - ) - ) - ) - ) - return config - - def read_tune(this): - min_, max_ = this["minmax"] - if min_ == max_: - # Returning a choice of a single element allow pbt algorithm to - # work. pbt does not accept single values as tunable. - return tune.choice([min_]) - if this["type"] == "int": - if min_ == 0 and args.algorithm == "nevergrad": - print( - "[WARNING TUN-0011] NevergradSearch may not work " - "with lower bound value 0." - ) - if this["step"] == 1: - return tune.randint(min_, max_) - return tune.choice(np.ndarray.tolist(np.arange(min_, max_, this["step"]))) - if this["type"] == "float": - if this["step"] == 0: - return tune.uniform(min_, max_) - return tune.choice(np.ndarray.tolist(np.arange(min_, max_, this["step"]))) - return None - - def read_tune_ax(name, this): - dict_ = dict(name=name) - min_, max_ = this["minmax"] - if min_ == max_: - dict_["type"] = "fixed" - dict_["value"] = min_ - elif this["type"] == "int": - if this["step"] == 1: - dict_["type"] = "range" - dict_["bounds"] = [min_, max_] - dict_["value_type"] = "int" - else: - dict_["type"] = "choice" - dict_["values"] = tune.randint(min_, max_, this["step"]) - dict_["value_type"] = "int" - elif this["type"] == "float": - if this["step"] == 1: - dict_["type"] = "choice" - dict_["values"] = tune.choice( - np.ndarray.tolist(np.arange(min_, max_, this["step"])) - ) - dict_["value_type"] = "float" - else: - dict_["type"] = "range" - dict_["bounds"] = [min_, max_] - dict_["value_type"] = "float" - return dict_ - - with open(file_name) as file: - data = json.load(file) - sdc_file = "" - fr_file = "" - if args.mode == "tune" and args.algorithm == "ax": - config = list() - else: - config = dict() - for key, value in data.items(): - if key == "best_result": - continue - if key == "_SDC_FILE_PATH" and value != "": - if sdc_file != "": - print("[WARNING TUN-0004] Overwriting SDC base file.") - sdc_file = read(f"{os.path.dirname(file_name)}/{value}") - continue - if key == "_FR_FILE_PATH" and value != "": - if fr_file != "": - print("[WARNING TUN-0005] Overwriting FastRoute base file.") - fr_file = read(f"{os.path.dirname(file_name)}/{value}") - continue - if not isinstance(value, dict): - config[key] = value - elif args.mode == "sweep": - config[key] = read_sweep(value) - elif args.mode == "tune" and args.algorithm != "ax": - config[key] = read_tune(value) - elif args.mode == "tune" and args.algorithm == "ax": - config.append(read_tune_ax(key, value)) - if args.mode == "tune": - config = apply_condition(config, data) - return config, sdc_file, fr_file - - -def parse_config(config, path=os.getcwd()): - """ - Parse configuration received from tune into make variables. - """ - options = "" - sdc = {} - fast_route = {} - for key, value in config.items(): - # Keys that begin with underscore need special handling. - if key.startswith("_"): - # Variables to be injected into fastroute.tcl - if key.startswith("_FR_"): - fast_route[key.replace("_FR_", "", 1)] = value - # Variables to be injected into constraints.sdc - elif key.startswith("_SDC_"): - sdc[key.replace("_SDC_", "", 1)] = value - # Special substitution cases - elif key == "_PINS_DISTANCE": - options += f' PLACE_PINS_ARGS="-min_distance {value}"' - elif key == "_SYNTH_FLATTEN": - print( - "[WARNING TUN-0013] Non-flatten the designs are not " - "fully supported, ignoring _SYNTH_FLATTEN parameter." - ) - # Default case is VAR=VALUE - else: - options += f" {key}={value}" - if bool(sdc): - write_sdc(sdc, path) - options += f" SDC_FILE={path}/{CONSTRAINTS_SDC}" - if bool(fast_route): - write_fast_route(fast_route, path) - options += f" FASTROUTE_TCL={path}/{FASTROUTE_TCL}" - return options - - -def write_sdc(variables, path): - """ - Create a SDC file with parameters for current tuning iteration. - """ - # TODO: handle case where the reference file does not exist - new_file = SDC_ORIGINAL - for key, value in variables.items(): - if key == "CLK_PERIOD": - if new_file.find("set clk_period") != -1: - new_file = re.sub( - r"set clk_period .*\n(.*)", f"set clk_period {value}\n\\1", new_file - ) - else: - new_file = re.sub( - r"-period [0-9\.]+ (.*)", f"-period {value} \\1", new_file - ) - new_file = re.sub(r"-waveform [{}\s0-9\.]+[\s|\n]", "", new_file) - elif key == "UNCERTAINTY": - if new_file.find("set uncertainty") != -1: - new_file = re.sub( - r"set uncertainty .*\n(.*)", - f"set uncertainty {value}\n\\1", - new_file, - ) - else: - new_file += f"\nset uncertainty {value}\n" - elif key == "IO_DELAY": - if new_file.find("set io_delay") != -1: - new_file = re.sub( - r"set io_delay .*\n(.*)", f"set io_delay {value}\n\\1", new_file - ) - else: - new_file += f"\nset io_delay {value}\n" - file_name = path + f"/{CONSTRAINTS_SDC}" - with open(file_name, "w") as file: - file.write(new_file) - return file_name - - -def write_fast_route(variables, path): - """ - Create a FastRoute Tcl file with parameters for current tuning iteration. - """ - # TODO: handle case where the reference file does not exist - layer_cmd = "set_global_routing_layer_adjustment" - new_file = FR_ORIGINAL - for key, value in variables.items(): - if key.startswith("LAYER_ADJUST"): - layer = key.lstrip("LAYER_ADJUST") - # If there is no suffix (i.e., layer name) apply adjust to all - # layers. - if layer == "": - new_file += "\nset_global_routing_layer_adjustment" - new_file += " $::env(MIN_ROUTING_LAYER)" - new_file += "-$::env(MAX_ROUTING_LAYER)" - new_file += f" {value}" - elif re.search(f"{layer_cmd}.*{layer}", new_file): - new_file = re.sub( - f"({layer_cmd}.*{layer}).*\n(.*)", f"\\1 {value}\n\\2", new_file - ) - else: - new_file += f"\n{layer_cmd} {layer} {value}\n" - elif key == "GR_SEED": - new_file += f"\nset_global_routing_random -seed {value}\n" - file_name = path + f"/{FASTROUTE_TCL}" - with open(file_name, "w") as file: - file.write(new_file) - return file_name - - -def run_command(cmd, timeout=None, stderr_file=None, stdout_file=None, fail_fast=False): - """ - Wrapper for subprocess.run - Allows to run shell command, control print and exceptions. - """ - process = run( - cmd, timeout=timeout, capture_output=True, text=True, check=False, shell=True - ) - if stderr_file is not None and process.stderr != "": - with open(stderr_file, "a") as file: - file.write(f"\n\n{cmd}\n{process.stderr}") - if stdout_file is not None and process.stdout != "": - with open(stdout_file, "a") as file: - file.write(f"\n\n{cmd}\n{process.stdout}") - if args.verbose >= 1: - print(process.stderr) - if args.verbose >= 2: - print(process.stdout) - - if fail_fast and process.returncode != 0: - raise RuntimeError - - -@ray.remote -def openroad_distributed(repo_dir, config, path): - """Simple wrapper to run openroad distributed with Ray.""" - config = parse_config(config) - openroad(repo_dir, config, str(uuid()), path=path) - - -def openroad(base_dir, parameters, flow_variant, path=""): - """ - Run OpenROAD-flow-scripts with a given set of parameters. - """ - # Make sure path ends in a slash, i.e., is a folder - flow_variant = f"{args.experiment}/{flow_variant}" - if path != "": - log_path = f"{path}/{flow_variant}/" - report_path = log_path.replace("logs", "reports") - run_command(f"mkdir -p {log_path}") - run_command(f"mkdir -p {report_path}") - else: - log_path = report_path = os.getcwd() + "/" - - export_command = f"export PATH={INSTALL_PATH}/OpenROAD/bin" - export_command += f":{INSTALL_PATH}/yosys/bin" - export_command += " && " - - make_command = export_command - make_command += f"make -C {base_dir}/flow DESIGN_CONFIG=designs/" - make_command += f"{args.platform}/{args.design}/config.mk" - make_command += f" FLOW_VARIANT={flow_variant} {parameters}" - make_command += f" NUM_PROCS={args.openroad_threads} SHELL=bash" - run_command( - make_command, - timeout=args.timeout, - stderr_file=f"{log_path}error-make-finish.log", - stdout_file=f"{log_path}make-finish-stdout.log", - ) - - metrics_file = os.path.join(report_path, "metrics.json") - metrics_command = export_command - metrics_command += f"{base_dir}/flow/util/genMetrics.py -x" - metrics_command += f" -v {flow_variant}" - metrics_command += f" -d {args.design}" - metrics_command += f" -p {args.platform}" - metrics_command += f" -o {metrics_file}" - run_command( - metrics_command, - stderr_file=f"{log_path}error-metrics.log", - stdout_file=f"{log_path}metrics-stdout.log", - ) - - return metrics_file - - -def clone(path): - """ - Clone base repo in the remote machine. Only used for Kubernetes at GCP. - """ - if args.git_clone: - run_command(f"rm -rf {path}") - if not os.path.isdir(f"{path}/.git"): - git_command = "git clone --depth 1 --recursive --single-branch" - git_command += f" {args.git_clone_args}" - git_command += f" --branch {args.git_orfs_branch}" - git_command += f" {args.git_url} {path}" - run_command(git_command) - - -def build(base, install): - """ - Build OpenROAD, Yosys and other dependencies. - """ - build_command = f'cd "{base}"' - if args.git_clean: - build_command += " && git clean -xdf tools" - build_command += " && git submodule foreach --recursive git clean -xdf" - if ( - args.git_clean - or not os.path.isfile(f"{install}/OpenROAD/bin/openroad") - or not os.path.isfile(f"{install}/yosys/bin/yosys") - ): - build_command += ' && bash -ic "./build_openroad.sh' - # Some GCP machines have 200+ cores. Let's be reasonable... - build_command += f" --local --nice --threads {min(32, cpu_count())}" - if args.git_latest: - build_command += " --latest" - build_command += f' {args.build_args}"' - run_command(build_command) - - -@ray.remote -def setup_repo(base): - """ - Clone ORFS repository and compile binaries. - """ - print(f"[INFO TUN-0000] Remote folder: {base}") - install = f"{base}/tools/install" - if args.server is not None: - clone(base) - build(base, install) - return install - - -def parse_arguments(): - """ - Parse arguments from command line. - """ - parser = argparse.ArgumentParser() - - subparsers = parser.add_subparsers( - help="mode of execution", dest="mode", required=True - ) - tune_parser = subparsers.add_parser("tune") - _ = subparsers.add_parser("sweep") - - # DUT - parser.add_argument( - "--design", - type=str, - metavar="", - required=True, - help="Name of the design for Autotuning.", - ) - parser.add_argument( - "--platform", - type=str, - metavar="", - required=True, - help="Name of the platform for Autotuning.", - ) - - # Experiment Setup - parser.add_argument( - "--config", - type=str, - metavar="", - required=True, - help="Configuration file that sets which knobs to use for Autotuning.", - ) - parser.add_argument( - "--experiment", - type=str, - metavar="", - default="test", - help="Experiment name. This parameter is used to prefix the" - " FLOW_VARIANT and to set the Ray log destination.", - ) - parser.add_argument( - "--timeout", - type=float, - metavar="", - default=None, - help="Time limit (in hours) for each trial run. Default is no limit.", - ) - tune_parser.add_argument( - "--resume", action="store_true", help="Resume previous run." - ) - - # Setup - parser.add_argument( - "--git_clean", - action="store_true", - help="Clean binaries and build files." - " WARNING: may lose previous data." - " Use carefully.", - ) - parser.add_argument( - "--git_clone", - action="store_true", - help="Force new git clone." - " WARNING: may lose previous data." - " Use carefully.", - ) - parser.add_argument( - "--git_clone_args", - type=str, - metavar="", - default="", - help="Additional git clone arguments.", - ) - parser.add_argument( - "--git_latest", action="store_true", help="Use latest version of OpenROAD app." - ) - parser.add_argument( - "--git_or_branch", - type=str, - metavar="", - default="", - help="OpenROAD app branch to use.", - ) - parser.add_argument( - "--git_orfs_branch", - type=str, - metavar="", - default="master", - help="OpenROAD-flow-scripts branch to use.", - ) - parser.add_argument( - "--git_url", - type=str, - metavar="", - default=ORFS_URL, - help="OpenROAD-flow-scripts repo URL to use.", - ) - parser.add_argument( - "--build_args", - type=str, - metavar="", - default="", - help="Additional arguments given to ./build_openroad.sh.", - ) - - # ML - tune_parser.add_argument( - "--algorithm", - type=str, - choices=["hyperopt", "ax", "nevergrad", "optuna", "pbt", "random"], - default="hyperopt", - help="Search algorithm to use for Autotuning.", - ) - tune_parser.add_argument( - "--eval", - type=str, - choices=["default", "ppa-improv"], - default="default", - help="Evaluate function to use with search algorithm.", - ) - tune_parser.add_argument( - "--samples", - type=int, - metavar="", - default=10, - help="Number of samples for tuning.", - ) - tune_parser.add_argument( - "--iterations", - type=int, - metavar="", - default=1, - help="Number of iterations for tuning.", - ) - tune_parser.add_argument( - "--resources_per_trial", - type=int, - metavar="", - default=1, - help="Number of CPUs to request for each tunning job.", - ) - tune_parser.add_argument( - "--reference", - type=str, - metavar="", - default=None, - help="Reference file for use with PPAImprov.", - ) - tune_parser.add_argument( - "--perturbation", - type=int, - metavar="", - default=25, - help="Perturbation interval for PopulationBasedTraining.", - ) - tune_parser.add_argument( - "--seed", type=int, metavar="", default=42, help="Random seed." - ) - - # Workload - parser.add_argument( - "--jobs", - type=int, - metavar="", - default=int(np.floor(cpu_count() / 2)), - help="Max number of concurrent jobs.", - ) - parser.add_argument( - "--openroad_threads", - type=int, - metavar="", - default=16, - help="Max number of threads openroad can use.", - ) - parser.add_argument( - "--server", - type=str, - metavar="", - default=None, - help="The address of Ray server to connect.", - ) - parser.add_argument( - "--port", - type=int, - metavar="", - default=10001, - help="The port of Ray server to connect.", - ) - - parser.add_argument( - "-v", - "--verbose", - action="count", - default=0, - help="Verbosity level.\n\t0: only print Ray status\n\t1: also print" - " training stderr\n\t2: also print training stdout.", - ) - - arguments = parser.parse_args() - if arguments.mode == "tune": - arguments.algorithm = arguments.algorithm.lower() - # Validation of arguments - if arguments.eval == "ppa-improv" and arguments.reference is None: - print( - '[ERROR TUN-0006] The argument "--eval ppa-improv"' - ' requires that "--reference " is also given.' - ) - sys.exit(7) - - arguments.experiment += f"-{arguments.mode}-{DATE}" - - if arguments.timeout is not None: - arguments.timeout = round(arguments.timeout * 3600) - - return arguments - - -def set_algorithm(experiment_name, config): - """ - Configure search algorithm. - """ - if args.algorithm == "hyperopt": - algorithm = HyperOptSearch(points_to_evaluate=best_params) - elif args.algorithm == "ax": - ax_client = AxClient(enforce_sequential_optimization=False) - ax_client.create_experiment( - name=experiment_name, - parameters=config, - objective_name=METRIC, - minimize=True, - ) - algorithm = AxSearch(ax_client=ax_client, points_to_evaluate=best_params) - elif args.algorithm == "nevergrad": - algorithm = NevergradSearch( - points_to_evaluate=best_params, - optimizer=ng.optimizers.registry["PortfolioDiscreteOnePlusOne"], - ) - elif args.algorithm == "optuna": - algorithm = OptunaSearch(points_to_evaluate=best_params, seed=args.seed) - elif args.algorithm == "pbt": - algorithm = PopulationBasedTraining( - time_attr="training_iteration", - perturbation_interval=args.perturbation, - hyperparam_mutations=config, - synch=True, - ) - elif args.algorithm == "random": - algorithm = BasicVariantGenerator(max_concurrent=args.jobs) - if args.algorithm not in ["random", "pbt"]: - algorithm = ConcurrencyLimiter(algorithm, max_concurrent=args.jobs) - return algorithm - - -def set_best_params(platform, design): - """ - Get current known best parameters if it exists. - """ - params = [] - best_param_file = f"designs/{platform}/{design}/autotuner-best.json" - if os.path.isfile(best_param_file): - with open(best_param_file) as file: - params = json.load(file) - return params - - -def set_training_class(function): - """ - Set training class. - """ - if function == "default": - return AutoTunerBase - if function == "ppa-improv": - return PPAImprov - return None - - -@ray.remote -def save_best(results): - """ - Save best configuration of parameters found. - """ - best_config = results.best_config - best_config["best_result"] = results.best_result[METRIC] - trial_id = results.best_trial.trial_id - new_best_path = f"{LOCAL_DIR}/{args.experiment}/" - new_best_path += f"autotuner-best-{trial_id}.json" - with open(new_best_path, "w") as new_best_file: - json.dump(best_config, new_best_file, indent=4) - print(f"[INFO TUN-0003] Best parameters written to {new_best_path}") - - -@ray.remote -def consumer(queue): - """consumer""" - while not queue.empty(): - next_item = queue.get() - name = next_item[1] - print(f"[INFO TUN-0007] Scheduling run for parameter {name}.") - ray.get(openroad_distributed.remote(*next_item)) - print(f"[INFO TUN-0008] Finished run for parameter {name}.") - - -def sweep(): - """Run sweep of parameters""" - if args.server is not None: - # For remote sweep we create the following directory structure: - # 1/ 2/ 3/ 4/ - # //// - repo_dir = abspath(LOCAL_DIR + "/../" * 4) - else: - repo_dir = abspath("../") - print(f"[INFO TUN-0012] Log folder {LOCAL_DIR}.") - queue = Queue() - parameter_list = list() - for name, content in config_dict.items(): - if not isinstance(content, list): - print(f"[ERROR TUN-0015] {name} sweep is not supported.") - sys.exit(1) - if content[-1] == 0: - print("[ERROR TUN-0014] Sweep does not support step value zero.") - sys.exit(1) - parameter_list.append([{name: i} for i in np.arange(*content)]) - parameter_list = list(product(*parameter_list)) - for parameter in parameter_list: - temp = dict() - for value in parameter: - temp.update(value) - print(temp) - queue.put([repo_dir, temp, LOCAL_DIR]) - workers = [consumer.remote(queue) for _ in range(args.jobs)] - print("[INFO TUN-0009] Waiting for results.") - ray.get(workers) - print("[INFO TUN-0010] Sweep complete.") - - -if __name__ == "__main__": - args = parse_arguments() - - # Read config and original files before handling where to run in case we - # need to upload the files. - config_dict, SDC_ORIGINAL, FR_ORIGINAL = read_config(abspath(args.config)) - - # Connect to remote Ray server if any, otherwise will run locally - if args.server is not None: - # At GCP we have a NFS folder that is present for all worker nodes. - # This allows to build required binaries once. We clone, build and - # store intermediate files at LOCAL_DIR. - with open(args.config) as config_file: - LOCAL_DIR = "/shared-data/autotuner" - LOCAL_DIR += f"-orfs-{args.git_orfs_branch}" - if args.git_or_branch != "": - LOCAL_DIR += f"-or-{args.git_or_branch}" - if args.git_latest: - LOCAL_DIR += "-or-latest" - # Connect to ray server before first remote execution. - ray.init(f"ray://{args.server}:{args.port}") - # Remote functions return a task id and are non-blocking. Since we - # need the setup repo before continuing, we call ray.get() to wait - # for its completion. - INSTALL_PATH = ray.get(setup_repo.remote(LOCAL_DIR)) - LOCAL_DIR += f"/flow/logs/{args.platform}/{args.design}" - print("[INFO TUN-0001] NFS setup completed.") - else: - # For local runs, use the same folder as other ORFS utilities. - os.chdir(os.path.dirname(abspath(__file__)) + "/../") - LOCAL_DIR = f"logs/{args.platform}/{args.design}" - LOCAL_DIR = abspath(LOCAL_DIR) - INSTALL_PATH = abspath("../tools/install") - - if args.mode == "tune": - best_params = set_best_params(args.platform, args.design) - search_algo = set_algorithm(args.experiment, config_dict) - TrainClass = set_training_class(args.eval) - # PPAImprov requires a reference file to compute training scores. - if args.eval == "ppa-improv": - reference = PPAImprov.read_metrics(args.reference) - - tune_args = dict( - name=args.experiment, - metric=METRIC, - mode="min", - num_samples=args.samples, - fail_fast=False, - local_dir=LOCAL_DIR, - resume=args.resume, - stop={"training_iteration": args.iterations}, - resources_per_trial={"cpu": args.resources_per_trial}, - log_to_file=["trail-out.log", "trail-err.log"], - trial_name_creator=lambda x: f"variant-{x.trainable_name}-{x.trial_id}-ray", - trial_dirname_creator=lambda x: f"variant-{x.trainable_name}-{x.trial_id}-ray", - ) - if args.algorithm == "pbt": - os.environ["TUNE_MAX_PENDING_TRIALS_PG"] = str(args.jobs) - tune_args["scheduler"] = search_algo - else: - tune_args["search_alg"] = search_algo - tune_args["scheduler"] = AsyncHyperBandScheduler() - if args.algorithm != "ax": - tune_args["config"] = config_dict - analysis = tune.run(TrainClass, **tune_args) - - task_id = save_best.remote(analysis) - _ = ray.get(task_id) - print(f"[INFO TUN-0002] Best parameters found: {analysis.best_config}") - elif args.mode == "sweep": - sweep() diff --git a/flow/util/utils.mk b/flow/util/utils.mk index 3a44288564..206fc3f704 100644 --- a/flow/util/utils.mk +++ b/flow/util/utils.mk @@ -90,7 +90,7 @@ $(foreach V, $(.VARIABLES),$(if $(filter-out $(1), $(origin $V)), $(if $(filter- endef export UNSET_VARIABLES_NAMES := $(call get_variables,command% line environment% default automatic) -export ISSUE_VARIABLES_NAMES := $(call get_variables,environment% default automatic) +export ISSUE_VARIABLES_NAMES := $(sort $(filter-out \n get_variables, $(call get_variables,environment% default automatic))) export ISSUE_VARIABLES := $(foreach V, $(ISSUE_VARIABLES_NAMES), $(if $($V),$V=$($V),$V='')${\n}) export COMMAND_LINE_ARGS := $(foreach V,$(.VARIABLES),$(if $(filter command% line, $(origin $V)),$(V))) diff --git a/flow/util/write_net_rc_script.tcl b/flow/util/write_net_rc_script.tcl index 7b09d044bf..afda93c270 100644 --- a/flow/util/write_net_rc_script.tcl +++ b/flow/util/write_net_rc_script.tcl @@ -7,7 +7,7 @@ source $::env(UTILS_DIR)/write_net_rc.tcl estimate_parasitics -placement record_wire_rc gpl -if {[info exist env(FASTROUTE_TCL)]} { +if {[env_var_exists_and_non_empty FASTROUTE_TCL]} { source $env(FASTROUTE_TCL) } else { set_global_routing_layer_adjustment $env(MIN_ROUTING_LAYER)-$env(MAX_ROUTING_LAYER) 0.5 diff --git a/jenkins/public_nightly.Jenkinsfile b/jenkins/public_nightly.Jenkinsfile index b5379370e3..9811c3d0c2 100644 --- a/jenkins/public_nightly.Jenkinsfile +++ b/jenkins/public_nightly.Jenkinsfile @@ -1,4 +1,4 @@ -@Library('utils@orfs-v2.1.1') _ +@Library('utils@orfs-v2.2.1') _ node { diff --git a/jenkins/public_tests_all.Jenkinsfile b/jenkins/public_tests_all.Jenkinsfile index 214e8e6c62..dd945a5cee 100644 --- a/jenkins/public_tests_all.Jenkinsfile +++ b/jenkins/public_tests_all.Jenkinsfile @@ -1,4 +1,4 @@ -@Library('utils@orfs-v2.1.1') _ +@Library('utils@orfs-v2.2.1') _ node { diff --git a/tools/AutoTuner/src/autotuner/distributed.py b/tools/AutoTuner/src/autotuner/distributed.py index 9a5ad4acd9..b6d363a506 100644 --- a/tools/AutoTuner/src/autotuner/distributed.py +++ b/tools/AutoTuner/src/autotuner/distributed.py @@ -397,10 +397,13 @@ def parse_config(config, path=os.getcwd()): ) # Default case is VAR=VALUE else: + # FIXME there is no robust way to get this metainformation from + # ORFS about the variables, so disable this code for now. + # Sanity check: ignore all flow variables that are not tunable - if key not in flow_variables: - print(f"[ERROR TUN-0017] Variable {key} is not tunable.") - sys.exit(1) + # if key not in flow_variables: + # print(f"[ERROR TUN-0017] Variable {key} is not tunable.") + # sys.exit(1) options += f" {key}={value}" if bool(sdc): write_sdc(sdc, path) diff --git a/tools/OpenROAD b/tools/OpenROAD index e3b4fc0c96..e23ebb9f99 160000 --- a/tools/OpenROAD +++ b/tools/OpenROAD @@ -1 +1 @@ -Subproject commit e3b4fc0c968b8a9980ac066be826b9a3c0b179b7 +Subproject commit e23ebb9f99b8e025c51b6563f55df4db9fe83ec8