Skip to content

Instantly share code, notes, and snippets.

@makestuff
Last active August 29, 2015 13:57
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save makestuff/9392595 to your computer and use it in GitHub Desktop.
Save makestuff/9392595 to your computer and use it in GitHub Desktop.
canton-howto
---------------------------------------------------------------------------------------------------
Building FPGALink & some VHDL examples for Canton Electronics LX9 board on Linux:
sudo apt-get install build-essential libreadline-dev libusb-1.0-0-dev python-yaml gcc-avr avr-libc dfu-programmer
mkdir $HOME/20140524
cd $HOME/20140524
wget -qO- http://tiny.cc/msbil | tar zxf -
cd makestuff/apps
../scripts/msget.sh makestuff/flcli/20140524
cd flcli
make deps
cd ..
../scripts/msget.sh makestuff/gordon
cd gordon/
make deps
cd ../../libs/libfpgalink/firmware/avr
make BSP=minimus
cd ../../../..
scripts/msget.sh makestuff/hdlmake
cd hdlmake/apps
../bin/hdlmake.py -g makestuff/blinky
../bin/hdlmake.py -g makestuff/swled
../bin/hdlmake.py -g makestuff/spi-talk
cd makestuff/blinky/vhdl
../../../../bin/hdlmake.py -t ../templates/null -b canton-lx9 -p fpga
cd ../../swled/cksum/vhdl
../../../../../bin/hdlmake.py -t ../../templates/ss/vhdl -b canton-lx9 -p fpga
cd ../../../spi-talk/vhdl
../../../../bin/hdlmake.py -t ../templates/ss/vhdl -b canton-lx9 -p fpga
# Now from $HOME/20140524/makestuff you now have some useful files:
libs/libfpgalink/firmware/avr/firmware.hex - AVR firmware (assumes at90usb162 with 16MHz crystal)
apps/flcli/lin.x64/rel/flcli - "flcli" binary
apps/gordon/lin.x64/rel/gordon - "gordon" flash tool binary
hdlmake/apps/makestuff/blinky/vhdl/fpga.xsvf - "blinky LEDs" example
hdlmake/apps/makestuff/swled/cksum/vhdl/fpga.xsvf - "cksum example"
hdlmake/apps/makestuff/spi-talk/vhdl/fpga.xsvf - "spi-talk" example
# First load firmware into AVR:
cd libs/libfpgalink/firmware/avr
make dfu
# Next connect TDO->PB3, TDI->PB2, TMS->PB0 and TCK->PB1 and load "blinky" to make two LEDs flash:
flcli -v 1d50:602b:0001 -p J:B3B2B0B1:hdlmake/apps/makestuff/blinky/vhdl/fpga.xsvf
# Next connect EXIO1->PD5, EXIO2->PD3 & EXIO3->PD2 and try "cksum" example:
flcli -v 1d50:602b:0001 -p J:B3B2B0B1:hdlmake/apps/makestuff/swled/cksum/vhdl/fpga.xsvf -c 2 -a 'w0 CAFEBABE;r1;r2' -b
# Finally try reading a few bytes of the onboard flash:
flcli -v 1d50:602b:0001 -p J:B3B2B0B1:hdlmake/apps/makestuff/spi-talk/vhdl/fpga.xsvf
gordon -v 1d50:602b:0001 -t indirect:2 -r foo.dat:0:0x1000
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment