blob: 8a63dfad4a21437f2e33dc78e4b27bcdcaf0bd72 [file] [log] [blame] [edit]
package require openlane
prep -design striVe_flat -tag toplevel2 -config config2 -overwrite
set padframe_cfg $::env(DESIGN_DIR)/src/padframe.cfg
set padframe_def $::env(DESIGN_DIR)/src/def/padframe.def
set diearea [padframe_extract_area -cfg $padframe_cfg]
set lefs [glob $::env(DESIGN_DIR)/src/lef/*.lef]
set margin $::env(FP_CORE_MARGIN)
set corearea "[expr $margin + [lindex $diearea 0]] [expr $margin + [lindex $diearea 1]] [expr [lindex $diearea 2] - $margin] [expr [lindex $diearea 3] - $margin]"
set ::env(DIE_AREA) $diearea
set ::env(CORE_AREA) $corearea
set ::env(FP_SIZING) absolute
#config
# netlist verification
add_lefs -src $lefs
verilog_elaborate
init_floorplan
exec cp $::env(CURRENT_DEF) $::env(CURRENT_DEF).old
exec $::env(SCRIPTS_DIR)/remove_empty_nets.sh $::env(CURRENT_DEF)
exec python3 $::env(SCRIPTS_DIR)/padframe2fp.py -id $padframe_def -idn $::env(CURRENT_DEF) -il $::env(MERGED_LEF) |& tee $::env(TERMINAL_OUTPUT) $::env(CURRENT_DEF).pinsonly
set pinsonly $::env(CURRENT_DEF).pinsonly
set ::env(DESIGN_NAME) striVe_ChipCore
exec cp $::env(yosys_result_file_tag).v $::env(yosys_result_file_tag).v.old
run_synthesis
init_floorplan
place_io
#tap_decap
run_placement
gen_pdn
move_pins -from $pinsonly -to $::env(CURRENT_DEF)
run_routing
#run_magic