Muitos designers usam o Excel em algum estágio de FPGA design. É fácil exportar dados de um painel de relatório Quartus II para um arquivo CSV que você pode abrir no Excel.
Este procedimento simples exporta dados de um painel de relatório especificado e os grava em um arquivo. Um projeto deve ser aberto quando você chama este procedimento. Segue-se um exemplo de como usá-lo em um script.
proc panel_to_csv { panel_name csv_file } {
set fh [open $csv_file w]
load_report
set num_rows [get_number_of_rows -name $panel_name]
# Go through all the rows in the report file, including the
# row with headings, and write out the comma-separated data
for { set i 0 } { $i < $num_rows } { incr i } {
set row_data [get_report_panel_row -name $panel_name -row $i]
puts $fh [join $row_data ","]
}
unload_report
close $fh
}
Aqui está um script que usa o procedimento. Execute isso em um prompt de comando do sistema com o comando abaixo.
load_package report
package require cmdline
proc panel_to_csv { panel_name csv_file } {
set fh [open $csv_file w]
load_report
set num_rows [get_number_of_rows -name $panel_name]
# Go through all the rows in the report file, including the
# row with headings, and write out the comma-separated data
for { set i 0 } { $i < $num_rows } { incr i } {
set row_data [get_report_panel_row -name $panel_name -row $i]
puts $fh [join $row_data ","]
}
unload_report
close $fh
}
set options {\
{ "project.arg" "" "Project name" } \
{ "revision.arg" "" "Revision name" } \
{ "panel.arg" "" "Panel name" } \
{ "file.arg" "" "Output file name"} \
}
array set opts [::cmdline::getoptions quartus(args) $options]
project_open $opts(project) -revision $opts(revision)
panel_to_csv $opts(panel) $opts(file)
unload_report
Você pode executar este script em um prompt de comando com o seguinte comando.
quartus_sh -t script.tcl -project <project name> -revision <revision name> -panel <panel name> -file <file name>
Certifique-se de citar o argumento do nome do painel corretamente se você o inserir em um prompt de comando do sistema. Certos caracteres, como a barra vertical (|) têm significado especial em um shell de comando.