先选中需要报delay的port,然后source下面脚本:
foreach_in_collection j_obj [get_selection ] {
set j_name [get_object_name $j_obj ]
if { [get_timing_path -through $j_obj ] == "" } {
puts "# No path through $j_name"
continue
}
set j_direction [get_attr $j_obj direction ]
if { $j_direction == "in" } {
set j_path [get_timing_path -from $j_obj ]
set j_clock_latency [get_attr $j_path startpoint_clock_latency ]
set j_arrival [get_attr $j_path arrival ]
# set j_input_delay [get_attr [get_input_delays -of_objects $j_obj ] max_rise ]
set j_input_delay 0.5
set j_data_delay [expr $j_arrival - $j_clock_latency - $j_input_delay ]
}
if { $j_direction == "out" } {
set j_path [get_timing_path -to $j_obj ]
set j_clock_latency [get_attr $j_path startpoint_clock_latency ]
set j_arrival [get_attr $j_path arrival ]
set j_data_delay [expr $j_arrival - $j_clock_latency ]
}
puts "$j_name \t $j_direction \t $j_data_delay"
}
|