91 lines
2.2 KiB
Plaintext
91 lines
2.2 KiB
Plaintext
use the following step to build vortex and run it on fpga on intel cloud server using OPAE.
|
||
This script is also present at ~/dev/runVortex
|
||
|
||
## To configure quartus and opae. Run this after logging in.
|
||
source /export/fpga/bin/setup-fpga-env fpga-pac-a10
|
||
#########################
|
||
## Vortex Run commands ##
|
||
#########################
|
||
|
||
#
|
||
## Synthesis
|
||
#
|
||
|
||
cd /driver/hw/opae
|
||
|
||
# Configure a Quartus build area
|
||
afu_synth_setup -s sources.txt build_fpga
|
||
|
||
# Run Quartus in the vLab batch queue
|
||
cd build_fpga && qsub-synth
|
||
|
||
# check last 10 lines in build log for possible errors
|
||
tail -n 10 ./build_fpga_1c/build.log
|
||
|
||
# Check if the job is submitted to the queue and running. Status should be R
|
||
qstat | grep tinebp
|
||
|
||
# Constantly monitoring the job submitted to the queue. Stop this using Ctrl+C
|
||
watch ‘qstat | grep tinebp’
|
||
|
||
#
|
||
## Executing on FPGA
|
||
#
|
||
|
||
# From the build_fpga directory acquire a fpga node
|
||
qsub-fpga
|
||
|
||
# Go to the directory whree qsub-synth was run above
|
||
cd $PBS_O_WORKDIR
|
||
|
||
# Load the image onto an FPGA
|
||
fpgaconf vortex_afu.gbs
|
||
|
||
# If this says Multiple ports. Then use --bus with fpgaconf. #bus info can be found by fpgainfo port
|
||
fpgaconf --bus 0xaf vortex_afu.gbs
|
||
|
||
# Running the Test case
|
||
cd /driver/tests/basic
|
||
make run-fpga
|
||
|
||
#
|
||
## ASE build instructions
|
||
#
|
||
source /export/fpga/bin/setup-fpga-env fpga-pac-a10
|
||
|
||
# Acquire a sever node for running ASE simulations
|
||
qsub-sim
|
||
|
||
# build
|
||
make ase
|
||
|
||
# tests
|
||
./run_ase.sh build_ase_1c ../../driver/tests/basic/basic
|
||
./run_ase.sh build_ase_1c ../../driver/tests/demo/demo
|
||
|
||
# modify "vsim_run.tcl" to dump VCD trace
|
||
vcd file vortex.vcd
|
||
vcd add -r /*/Vortex/hw/rtl/*
|
||
run -all
|
||
|
||
# compress FPGA output files
|
||
tar -zcvf output_files_1c.tar.gz `find ./build_fpga_1c -type f \( -iname \*.rpt -o -iname \*.txt -o -iname \*summary -o -iname \*.log \)`
|
||
|
||
# compress VCD trace
|
||
tar -zcvf vortex.vcd.tar.gz ./build_ase_1c/work/vortex.vcd
|
||
|
||
# decompress VCD trace
|
||
tar -zxvf /mnt/c/Users/Blaise/Downloads/vortex.vcd.tar.gz
|
||
|
||
# launch Gtkwave
|
||
gtkwave ./build_ase_1c/work/vortex.vcd &
|
||
|
||
# kill process by Users
|
||
ps -u tinebp
|
||
kill -9 <pid>
|
||
|
||
# fixing device resource busy issue when deleting /build_ase_1c/
|
||
lsof +D build_ase_1c
|
||
|
||
# quick off cache synthesis
|
||
make -C cache > cache/build.log 2>&1 & |