Skip to content

Commit cdaec77

Browse files
committed
Merge branch 'master' of https://github.com/The-OpenROAD-Project-private/OpenROAD-flow-scripts into secure-fix-bp-quad-rtl
2 parents ce1a4f2 + 6b51a5a commit cdaec77

60 files changed

Lines changed: 237 additions & 211 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

docs/user/FlowVariables.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,7 @@ configuration file.
100100
| <a name="ADDITIONAL_GDS"></a>ADDITIONAL_GDS| Hardened macro GDS files listed here.| |
101101
| <a name="ADDITIONAL_LEFS"></a>ADDITIONAL_LEFS| Hardened macro LEF view files listed here. The LEF information of the macros is immutable and used throughout all stages. Stored in the .odb file.| |
102102
| <a name="ADDITIONAL_LIBS"></a>ADDITIONAL_LIBS| Hardened macro library files listed here. The library information is immutable and used throughout all stages. Not stored in the .odb file.| |
103+
| <a name="ASAP7_USE_VT"></a>ASAP7_USE_VT| A space separated list of VT options to use with the ASAP7 standard cell library: RVT, LVT, SLVT.| RVT|
103104
| <a name="BALANCE_ROWS"></a>BALANCE_ROWS| Balance rows during placement.| 0|
104105
| <a name="BLOCKS"></a>BLOCKS| Blocks used as hard macros in a hierarchical flow. Do note that you have to specify block-specific inputs file in the directory mentioned by Makefile.| |
105106
| <a name="BUFFER_PORTS_ARGS"></a>BUFFER_PORTS_ARGS| Specify arguments to the buffer_ports call during placement. Only used if DONT_BUFFER_PORTS=0.| |
@@ -127,6 +128,7 @@ configuration file.
127128
| <a name="DETAILED_METRICS"></a>DETAILED_METRICS| If set, then calls report_metrics prior to repair operations in the CTS and global route stages| 0|
128129
| <a name="DETAILED_ROUTE_ARGS"></a>DETAILED_ROUTE_ARGS| Add additional arguments for debugging purposes during detail route.| |
129130
| <a name="DETAILED_ROUTE_END_ITERATION"></a>DETAILED_ROUTE_END_ITERATION| Maximum number of iterations.| 64|
131+
| <a name="DETAIL_PLACEMENT_ARGS"></a>DETAIL_PLACEMENT_ARGS| Specify arguments to the detailed_placement call during placement.| |
130132
| <a name="DFF_LIB_FILES"></a>DFF_LIB_FILES| Technology mapping liberty files for flip-flops.| |
131133
| <a name="DFF_MAP_FILE"></a>DFF_MAP_FILE| Optional mapping file supplied to Yosys to map D flip-flops| |
132134
| <a name="DIE_AREA"></a>DIE_AREA| The die area specified as a list of lower-left and upper-right corners in microns (X1 Y1 X2 Y2).| |
@@ -161,7 +163,7 @@ configuration file.
161163
| <a name="KLAYOUT_TECH_FILE"></a>KLAYOUT_TECH_FILE| A mapping from LEF/DEF to GDS using the KLayout tool.| |
162164
| <a name="LATCH_MAP_FILE"></a>LATCH_MAP_FILE| Optional mapping file supplied to Yosys to map latches| |
163165
| <a name="LAYER_PARASITICS_FILE"></a>LAYER_PARASITICS_FILE| Path to per layer parasitics file. Defaults to $(PLATFORM_DIR)/setRC.tcl.| |
164-
| <a name="LEC_CHECK"></a>LEC_CHECK| Perform a formal equivalence check between before and after netlists.| 1|
166+
| <a name="LEC_CHECK"></a>LEC_CHECK| Perform a formal equivalence check between before and after netlists. If this fails, report an issue to OpenROAD.| 0|
165167
| <a name="LIB_FILES"></a>LIB_FILES| A Liberty file of the standard cell library with PVT characterization, input and output characteristics, timing and power definitions for each cell.| |
166168
| <a name="MACRO_BLOCKAGE_HALO"></a>MACRO_BLOCKAGE_HALO| Distance beyond the edges of a macro that will also be covered by the blockage generated for that macro. Note that the default macro blockage halo comes from the largest of the specified MACRO_PLACE_HALO x or y values. This variable overrides that calculation.| |
167169
| <a name="MACRO_EXTENSION"></a>MACRO_EXTENSION| Sets the number of GCells added to the blockages boundaries from macros.| |
@@ -388,6 +390,7 @@ configuration file.
388390
- [CELL_PAD_IN_SITES_DETAIL_PLACEMENT](#CELL_PAD_IN_SITES_DETAIL_PLACEMENT)
389391
- [CELL_PAD_IN_SITES_GLOBAL_PLACEMENT](#CELL_PAD_IN_SITES_GLOBAL_PLACEMENT)
390392
- [CLUSTER_FLOPS](#CLUSTER_FLOPS)
393+
- [DETAIL_PLACEMENT_ARGS](#DETAIL_PLACEMENT_ARGS)
391394
- [DONT_BUFFER_PORTS](#DONT_BUFFER_PORTS)
392395
- [EARLY_SIZING_CAP_RATIO](#EARLY_SIZING_CAP_RATIO)
393396
- [FLOORPLAN_DEF](#FLOORPLAN_DEF)
@@ -496,6 +499,7 @@ configuration file.
496499

497500
## All stages variables
498501

502+
- [ASAP7_USE_VT](#ASAP7_USE_VT)
499503
- [KEEP_VARS](#KEEP_VARS)
500504
- [NUM_CORES](#NUM_CORES)
501505
- [OPENROAD_HIERARCHICAL](#OPENROAD_HIERARCHICAL)

flow/.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
settings.mk
21
vars.sh
32
vars.gdb
43
vars.tcl

flow/Makefile

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
1-
# settings.mk is not under source control. Put variables into this
2-
# file to avoid having to adding the to the make command line.
1+
# Put variables into this file to avoid having to adding
2+
# the to the make command line.
3+
#
4+
# Out of ORFS trees can have their own settings.mk.
35
-include settings.mk
46

57
# ==============================================================================
@@ -389,6 +391,8 @@ endef
389391
# Custom target to go from synthesis to placement in a single OpenROAD run
390392
$(eval $(call do-step,1_3_floorplan_to_place, $(RESULTS_DIR)/1_synth.odb $(RESULTS_DIR)/1_synth.sdc,floorplan_to_place))
391393

394+
$(eval $(call OPEN_GUI_SHORTCUT,yosys,1_2_yosys.v))
395+
392396
.PHONY: floorplan_to_place
393397
floorplan_to_place: $(RESULTS_DIR)/1_synth.odb $(RESULTS_DIR)/1_synth.sdc
394398
$(UNSET_AND_MAKE) do-1_3_floorplan_to_place
@@ -777,6 +781,7 @@ $(eval $(call OPEN_GUI_SHORTCUT,final,6_final.odb))
777781

778782
$(foreach file,$(RESULTS_DEF),$(eval $(call OPEN_GUI,$(file),DEF_FILE)))
779783
$(foreach file,$(RESULTS_ODB),$(eval $(call OPEN_GUI,$(file),ODB_FILE)))
784+
$(foreach file,$(RESULTS_V),$(eval $(call OPEN_GUI,$(file),V_FILE)))
780785

781786
# Write a def for the corresponding odb
782787
$(foreach file,$(RESULTS_ODB),$(file).def): %.def:

flow/designs/asap7/aes-block/config.mk

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,9 @@ export SDC_FILE = $(DESIGN_HOME)/$(PLATFORM)/$(DESIGN_NICKNAME)/constraint.
88

99
export ABC_AREA = 1
1010

11-
export CORE_UTILIZATION = 40
11+
export CORE_UTILIZATION = 47
1212
export CORE_ASPECT_RATIO = 1
1313
export CORE_MARGIN = 2
14-
export PLACE_DENSITY = 0.53
1514

1615
export BLOCKS ?= aes_rcon aes_sbox
1716
export SYNTH_HIERARCHICAL = 1

flow/designs/asap7/aes-block/rules-base.json

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -12,27 +12,27 @@
1212
"compare": "<="
1313
},
1414
"placeopt__design__instance__count__stdcell": {
15-
"value": 10573,
15+
"value": 10501,
1616
"compare": "<="
1717
},
1818
"detailedplace__design__violations": {
1919
"value": 0,
2020
"compare": "=="
2121
},
2222
"cts__design__instance__count__setup_buffer": {
23-
"value": 919,
23+
"value": 913,
2424
"compare": "<="
2525
},
2626
"cts__design__instance__count__hold_buffer": {
27-
"value": 923,
27+
"value": 1691,
2828
"compare": "<="
2929
},
3030
"cts__timing__setup__ws": {
31-
"value": -124.0,
31+
"value": -148.0,
3232
"compare": ">="
3333
},
3434
"cts__timing__setup__tns": {
35-
"value": -5920.0,
35+
"value": -12100.0,
3636
"compare": ">="
3737
},
3838
"cts__timing__hold__ws": {
@@ -48,11 +48,11 @@
4848
"compare": "<="
4949
},
5050
"globalroute__timing__setup__ws": {
51-
"value": -150.0,
51+
"value": -171.0,
5252
"compare": ">="
5353
},
5454
"globalroute__timing__setup__tns": {
55-
"value": -6750.0,
55+
"value": -9610.0,
5656
"compare": ">="
5757
},
5858
"globalroute__timing__hold__ws": {
@@ -64,7 +64,7 @@
6464
"compare": ">="
6565
},
6666
"detailedroute__route__wirelength": {
67-
"value": 52923,
67+
"value": 50927,
6868
"compare": "<="
6969
},
7070
"detailedroute__route__drc_errors": {
@@ -80,11 +80,11 @@
8080
"compare": "<="
8181
},
8282
"finish__timing__setup__ws": {
83-
"value": -116.0,
83+
"value": -98.4,
8484
"compare": ">="
8585
},
8686
"finish__timing__setup__tns": {
87-
"value": -3780.0,
87+
"value": -5410.0,
8888
"compare": ">="
8989
},
9090
"finish__timing__hold__ws": {

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

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
"compare": ">="
3333
},
3434
"cts__timing__setup__tns": {
35-
"value": -45200.0,
35+
"value": -48300.0,
3636
"compare": ">="
3737
},
3838
"cts__timing__hold__ws": {
@@ -52,7 +52,7 @@
5252
"compare": ">="
5353
},
5454
"globalroute__timing__setup__tns": {
55-
"value": -65400.0,
55+
"value": -82000.0,
5656
"compare": ">="
5757
},
5858
"globalroute__timing__hold__ws": {
@@ -84,7 +84,7 @@
8484
"compare": ">="
8585
},
8686
"finish__timing__setup__tns": {
87-
"value": -31700.0,
87+
"value": -46500.0,
8888
"compare": ">="
8989
},
9090
"finish__timing__hold__ws": {

flow/designs/asap7/minimal/README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,10 @@ gui_synth
6262
The module hierarchy can here be examined to give a sense of
6363
area required for the default placement density.
6464

65+
## `make gui_yosys` OpenROAD GUI information for Yosys netlist
66+
67+
It is possible to set up hierarchical synthesis using ORFS, in which case it can be helpful to view a netlist with blackboxed submodules, in which case there's no .odb file and `make gui_synth` is not available.
68+
6569
## `make gui_floorplan` OpenROAD GUI information
6670

6771
Next to iterate on floorplan settings:

flow/designs/asap7/riscv32i-mock-sram/rules-base.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@
5252
"compare": ">="
5353
},
5454
"globalroute__timing__setup__tns": {
55-
"value": -929.0,
55+
"value": -5600.0,
5656
"compare": ">="
5757
},
5858
"globalroute__timing__hold__ws": {

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

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -80,19 +80,19 @@
8080
"compare": "<="
8181
},
8282
"finish__timing__setup__ws": {
83-
"value": -402.0,
83+
"value": -509.0,
8484
"compare": ">="
8585
},
8686
"finish__timing__setup__tns": {
87-
"value": -75900.0,
87+
"value": -92000.0,
8888
"compare": ">="
8989
},
9090
"finish__timing__hold__ws": {
9191
"value": -200.0,
9292
"compare": ">="
9393
},
9494
"finish__timing__hold__tns": {
95-
"value": -68300.0,
95+
"value": -90300.0,
9696
"compare": ">="
9797
},
9898
"finish__design__instance__area": {

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

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,11 +36,11 @@
3636
"compare": ">="
3737
},
3838
"cts__timing__hold__ws": {
39-
"value": -306.0,
39+
"value": -303.0,
4040
"compare": ">="
4141
},
4242
"cts__timing__hold__tns": {
43-
"value": -2200.0,
43+
"value": -5060.0,
4444
"compare": ">="
4545
},
4646
"globalroute__antenna_diodes_count": {
@@ -56,11 +56,11 @@
5656
"compare": ">="
5757
},
5858
"globalroute__timing__hold__ws": {
59-
"value": -318.0,
59+
"value": -255.0,
6060
"compare": ">="
6161
},
6262
"globalroute__timing__hold__tns": {
63-
"value": -2010.0,
63+
"value": -2210.0,
6464
"compare": ">="
6565
},
6666
"detailedroute__route__wirelength": {

0 commit comments

Comments
 (0)