Viele Designer verwenden Excel in einer bestimmten Phase eines FPGA Designs. Es ist einfach, Daten aus einem Quartus II Berichtfenster in eine CSV-Datei zu exportieren, die Sie in Excel öffnen können.
Mit diesem einfachen Verfahren werden Daten aus einem angegebenen Berichtfenster exportiert und in eine Datei geschrieben. Wenn Sie dieses Verfahren aufrufen, muss ein Projekt geöffnet sein. Es folgt ein Beispiel für die Verwendung in einem Skript.
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
}
Hier ist ein Skript, das das Verfahren verwendet. Führen Sie dies in einer System-Eingabeaufforderung mit dem folgenden Befehl aus.
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
Sie können dieses Skript an einer Eingabeaufforderung mit dem folgenden Befehl ausführen.
quartus_sh -t script.tcl -project <project name> -revision <revision name> -panel <panel name> -file <file name>
Stellen Sie sicher, dass Sie das Argument für den Namen des Bedienfelds korrekt angeben, wenn Sie es an einer System-Eingabeaufforderung eingeben. Bestimmte Zeichen, wie z. B. der vertikale Riegel (|) haben bei einer Befehls shell eine besondere Bedeutung.