Puede ser útil revisar las asignaciones globales en su diseño para ver si alguna de las asignaciones es diferente a la configuración predeterminada. Por ejemplo, si el desempeño de su diseño no es lo que espera, puede ver si modificó accidentalmente una configuración de su valor predeterminado.
Este ejemplo crea un panel de informe personalizado que enumera la configuración de asignación global no predeterminada del proyecto. Los comandos para crear paneles de informe personalizados están disponibles a partir de la versión 4.1 del software Quartus II (versión 2.0 del paquete ::quartus::report). Este ejemplo utiliza el paquete cmdline Tcl para procesar argumentos de línea de comandos.
load_package paquete de informes requiere opciones de conjunto cmdline {\ { "project.res" "" "Nombre del proyecto" } \ { "revision.res" "" "Nombre de revisión" } } conjunto de matrices opts [::cmdline::getivos quartus(rogas) $options project_open $opts(proyecto) -revision $opts(revision) load_report establecer panel_name "Configuración global no predeterminada" establecido panel_id [get_report_panel_id $panel_name] # Debe eliminar el panel si existe, antes de crearlo. if { -1 != $panel_id } { delete_report_panel -id $panel_id } establece panel_id [create_report_panel -table $panel_name] # Encabezados de columna para el nuevo panel de informe add_row_to_table -id $panel_id \ { "Asignación" "Valor predeterminado" "Valor de diseño" } foreach_in_collection asgn [get_all_quartus_defaults] { forecad { section_id nombre default_value } $asgn { break } establecido current_value [get_global_assignment -name $name] # Si los valores son diferentes, agregue una fila a la tabla. if { ! [cadena igual a -nocase $current_value $default_value] } { add_row_to_table -id $panel_id \ [list $name $default_value $current_value] } save_report_database project_close
En un indicador de comandos del sistema, puede ejecutar un script que contenga el código como se muestra aquí:
quartus_sh -t script.tcl -project myproject -revision myrevision
Mejora del código de muestra
Una forma de mejorar el código es hacer que se ejecute automáticamente al final de cada compilación. Para hacer esto, agregue una nueva asignación al proyecto y cambie la forma en que se procesan los argumentos de la línea de comandos.
El nombre de la asignación es POST_FLOW_SCRIPT_FILE. Para obtener más información sobre esta asignación, consulte los ejemplos de ejecución automática de script. Suponiendo que el script se nombre script.tcl, añada la siguiente asignación a su archivo de configuración de Quartus II (.qsf):
set_global_assignment -name POST_FLOW_SCRIPT_FILE quartus_sh:script.tcl
Debido a la forma en que se ejecuta el script con la asignación de POST_FLOW_SCRIPT_FILE, debe cambiar los comandos en la parte superior del script que abre el proyecto. El script se ejecuta con tres argumentos posicionacionales predefinidos: el flujo, el proyecto y los nombres de revisión. En este caso, no es necesario utilizar el paquete cmdline.
Modifique la parte superior del script de la siguiente manera:
informe load_package foreconference { revisión de proyecto flow_name } $quartus(conversaciones) { interrupción } project_open $project revisión $revision
El script se ejecuta automáticamente al final de cada compilación, independientemente de si inicia la compilación en la GUI Quartus II, en un indicador de comandos del sistema o en un script.