Este exemplo mostra um script Tcl simples que você pode usar para gerar uma análise multicorner na interface do usuário do Analisador de tempo. Uma análise multicorner verifica se as restrições de sincronização especificadas para o design atendem a todas as condições operacionais do dispositivo. Baixe ou copie o script Tcl e execute-o digitando o seguinte no painel Do console do analisador de sincronização:
tcl> fonte multicorner.tcl
proc analyze { id } {
# Insert timing reports here
create_timing_summary -setup -panel_name "$id: Summary (Setup)"
create_timing_summary -hold -panel_name "$id: Summary (Hold)"
create_timing_summary -recovery -panel_name "$id: Summary (Recovery)"
create_timing_summary -removal -panel_name "$id: Summary (Removal)"
report_min_pulse_width -nworst 100 -panel_name "$id: Minimum Pulse Width"
}
# Create a timing netlist for analysis
create_timing_netlist
# Read in SDC file
read_sdc
# Determine the current & default operating conditions. The default is used
# to prevent re-analyzing the default condition while looping through the
# available operating conditions.
set default_operating_conditions [get_operating_conditions]
set current_operating_conditions $default_operating_conditions
# Generate the corner-specific analyses for the default operating
# conditions.
analyze $current_operating_conditions
# Now loop over the remaining operating conditions
foreach_in_collection current_operating_conditions \ [get_available_operating_conditions] {
# Make sure we don't re-analyze the default conditions.
if {$current_operating_conditions != $default_operating_conditions} {
# Generate the corner-specific analyses for the
# next operating conditions.
set_operating_conditions $current_operating_conditions
update_timing_netlist
analyze $current_operating_conditions
}
}
O script Tcl gera os relatórios de sincronização definidos no procedimento proc analyze para todas as condições operacionais disponíveis do dispositivo. Todos os relatórios gerados estão marcados como desatualizados no painel De visualização do analisador de sincronização, exceto para os relatórios finais gerados para a última condição operacional.