File tree Expand file tree Collapse file tree 4 files changed +17
-5
lines changed Expand file tree Collapse file tree 4 files changed +17
-5
lines changed Original file line number Diff line number Diff line change @@ -25,11 +25,18 @@ default: help
25
25
# ###############
26
26
# Dependencies #
27
27
# ###############
28
+ # Download RCX file used for parasitic extraction from ORFS (configuration got ok by IHP)
29
+ IHP_RCX_URL := "https://raw.githubusercontent.com/The-OpenROAD-Project/OpenROAD-flow-scripts/7747f88f70daaeb63f43ce36e71829707b7e3fa7/flow/platforms/ihp-sg13g2/IHP_rcx_patterns.rules"
30
+ IHP_RCX_FILE := $(PROJ_DIR ) /openroad/IHP_rcx_patterns.rules
31
+
28
32
# # Checkout/update dependencies using Bender
29
- checkout :
33
+ checkout : $( IHP_RCX_FILE )
30
34
$(BENDER ) checkout
31
35
git submodule update --init --recursive
32
36
37
+ $(IHP_RCX_FILE ) :
38
+ curl -L -o $@ $(IHP_RCX_URL )
39
+
33
40
# # Reset dependencies (without updating Bender.lock)
34
41
clean-deps :
35
42
rm -rf .bender
Original file line number Diff line number Diff line change 1
1
* .log
2
2
save
3
3
reports
4
- out
4
+ out
5
+ IHP_rcx_patterns.rules
Original file line number Diff line number Diff line change @@ -29,7 +29,7 @@ backend: $(OR_OUT)/$(PROJ_NAME).def
29
29
openroad : $(OR_OUT ) /$(PROJ_NAME ) .def
30
30
31
31
# # Place & Route flow using OpenROAD
32
- $(OR_OUT_FILES ) : $(NETLIST ) $(OR_DIR ) /scripts/* .tcl $(OR_DIR ) /src/* .tcl $(OR_DIR ) /src/* .sdc
32
+ $(OR_OUT_FILES ) : $(NETLIST ) $(OR_DIR ) /scripts/* .tcl $(OR_DIR ) /src/* .tcl $(OR_DIR ) /src/* .sdc $( OR_DIR ) /IHP_rcx_patterns.rules
33
33
mkdir -p $(SAVE )
34
34
mkdir -p $(REPORTS )
35
35
mkdir -p $(OR_OUT )
Original file line number Diff line number Diff line change @@ -272,7 +272,7 @@ utl::report "Perform buffer insertion..."
272
272
repair_design -verbose
273
273
utl::report " Repair setup and hold violations..."
274
274
repair_timing -skip_pin_swap -setup -verbose -repair_tns 100
275
- repair_timing -skip_pin_swap -hold -hold_margin 0.05 -verbose -repair_tns 100
275
+ repair_timing -skip_pin_swap -hold -hold_margin 0.1 -verbose -repair_tns 100
276
276
277
277
utl::report " GRT incremental..."
278
278
# Run to get modified net by DPL
@@ -334,8 +334,12 @@ filler_placement $stdfill
334
334
global_connect
335
335
336
336
save_checkpoint ${log_id_str} _${proj_name} .final
337
- report_metrics " ${log_id_str} _${proj_name} .final"
338
337
report_image " ${log_id_str} _${proj_name} .final" true true false true
338
+ define_process_corner -ext_model_index 0 X
339
+ extract_parasitics -ext_model_file IHP_rcx_patterns.rules
340
+ write_spef out/${proj_name} .spef
341
+ read_spef out/${proj_name} .spef; # readback parasitics for OpenSTA
342
+ report_metrics " ${log_id_str} _${proj_name} .final"
339
343
340
344
utl::report " Write output"
341
345
write_def out/${proj_name} .def
You can’t perform that action at this time.
0 commit comments