lsdp.ss 1.89 KB
/* setup aliases */

alias set_default_operating_conditions \
	"set_operating_conditions NOM -library rcp.db; \
	set_wire_load 256000 -mode top;"
alias set_default_timing_constraints \
	"create_clock clk -period 16.0 -waveform {0 8.0}; \
	set_input_delay 4.0 -clock clk all_inputs(); \
	set_output_delay 2.0 -clock clk all_outputs(); \
	fix_hold clk; \
	dont_touch_network clk; \
	set_drive 0 {clk}; \
	set_load 1 all_outputs();"

/* setup the search path for includes */
search_path = search_path + "../../inc" 

/* read the verilog sources */

read -f verilog ../src/lsdp.v
read -f verilog ../../../lib/verilog/user/asdff.v
read -f verilog ../../../lib/verilog/user/asdffen.v
read -f verilog ../../../lib/verilog/user/cp0_driver.v

current_design = lsdp

ungroup -flatten ls_dp_to_dmem_0th
ungroup -flatten ls_dmem_to_dp_raw
ungroup -flatten ls_dmem_to_dp_2nd_high

ungroup -flatten ls_dp_to_dmem_3rd
ungroup -flatten ls_dmem_to_dp_1st
ungroup -flatten ls_dmem_to_dp_2nd_presxt
/*ungroup -flatten ls_data_driver
*/
ungroup -flatten cp0_driver_ls

dont_touch ls_dp_to_dmem_0th*
dont_touch ls_dmem_to_dp_raw*
dont_touch ls_dmem_to_dp_2nd_high*

dont_touch ls_dp_to_dmem_3rd*
dont_touch ls_dmem_to_dp_1st*
dont_touch ls_dmem_to_dp_2nd_presxt*
/*
dont_touch ls_data_driver/r*
dont_touch ls_data_driver*
*/
dont_touch ls_data_driver
dont_touch cp0_driver_ls*

dont_touch_network ls_dp

current_design = lsdp

set_default_operating_conditions
set_default_timing_constraints
set_max_transition 1.00 current_design;

set_max_fanout 10 current_design;

include	lsdp.con

link 

check_design > lsdp.lint

compile -map_effort high -ungroup_all
compile -map_effort high -incremental_mapping


report -reference

report_constraint -all_violators

report_timing -path full -from rot_amt[*] -delay max -max_paths 4;
report_timing -path full -delay max -max_paths 20;

write -f edif -o lsdp.edf -hier lsdp
write -f verilog -o lsdp.vsyn -hier lsdp

quit