Add helper script for programming FPGA
This commit is contained in:
parent
843012cd40
commit
0c9fb498e9
15
scripts/program_device.sh
Executable file
15
scripts/program_device.sh
Executable file
@ -0,0 +1,15 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
THISSCRIPT=$(realpath $0)
|
||||
PROJECT_ROOT=$(dirname $(dirname $THISSCRIPT))
|
||||
TCLSCRIPT="$PROJECT_ROOT/tcl/program_device.tcl"
|
||||
|
||||
if [ $# -lt 1 ]; then
|
||||
echo "Usage: $0 BITFILE"
|
||||
exit -1
|
||||
fi
|
||||
|
||||
BITFILE=$1
|
||||
|
||||
$VIVADO_ROOT/bin/vivado -mode batch -source "$TCLSCRIPT" -tclargs "$BITFILE"
|
||||
|
||||
39
tcl/program_device.tcl
Normal file
39
tcl/program_device.tcl
Normal file
@ -0,0 +1,39 @@
|
||||
if { $argc < 1 } {
|
||||
puts "Usage: program_device.sh BITFILE"
|
||||
exit -1
|
||||
}
|
||||
|
||||
set bitfile [lindex $argv 0]
|
||||
|
||||
set hwserver "localhost:3121"
|
||||
set hwtarget "$hwserver/*"
|
||||
|
||||
puts "Opening hardware server at $hwserver"
|
||||
|
||||
open_hw_manager
|
||||
connect_hw_server -url $hwserver
|
||||
|
||||
puts "Opening target $hwtarget"
|
||||
|
||||
set targetlist [get_hw_targets $hwtarget]
|
||||
if { [llength $targetlist] != 1 } {
|
||||
puts "Failed to get hw target. Number of matching targets is not 1."
|
||||
exit -2
|
||||
}
|
||||
|
||||
set target $targetlist
|
||||
|
||||
current_hw_target $target
|
||||
open_hw_target
|
||||
|
||||
puts "Refreshing device"
|
||||
refresh_hw_device [current_hw_device]
|
||||
|
||||
puts "Programming device using bitfile $bitfile"
|
||||
set_property PROGRAM.file "$bitfile" [current_hw_device]
|
||||
program_hw_devices [current_hw_device]
|
||||
refresh_hw_device [current_hw_device]
|
||||
|
||||
puts "Successfully programmed device"
|
||||
exit 0
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user