Quartus: Difference between revisions

From DaqWiki
Jump to navigation Jump to search
Line 16: Line 16:
* ladd09 floating license: start license server: "ssh ladd09 /triumfcs/trshare/olchansk/altera/altera9.1/quartus/linux/lmgrd -c /home/olchansk/daq/altera/license-ladd09.dat", run quartus anywhere, use license file /home/olchansk/daq/altera/license-ladd03.dat
* ladd09 floating license: start license server: "ssh ladd09 /triumfcs/trshare/olchansk/altera/altera9.1/quartus/linux/lmgrd -c /home/olchansk/daq/altera/license-ladd09.dat", run quartus anywhere, use license file /home/olchansk/daq/altera/license-ladd03.dat
* ladd12 floating license: start license server: "ssh ladd12 /triumfcs/trshare/olchansk/altera/altera9.1/quartus/linux/lmgrd -c /home/olchansk/daq/altera/license-ladd12.dat", run quartus anywhere, use license file /home/olchansk/daq/altera/license-ladd12.dat
* ladd12 floating license: start license server: "ssh ladd12 /triumfcs/trshare/olchansk/altera/altera9.1/quartus/linux/lmgrd -c /home/olchansk/daq/altera/license-ladd12.dat", run quartus anywhere, use license file /home/olchansk/daq/altera/license-ladd12.dat
=== Start Quartus ===
* Quartus 11.1 on ladd11: run "/data11/altera/11.1/quartus/bin/quartus --64bit"
* Quartus other versions on trshare:
** ssh to ladd11 or ladd12
** run "ls /triumfcs/trshare/olchansk/altera" to list available versions
** run the selected version directly, i.e. "/triumfcs/trshare/olchansk/altera/altera9.1/quartus/bin/quartus"
* specify license file at startup or from the "Tools -> License setup..." menu.
=== Use Quartus ===
refer to quartus documentation and gurus
== Interfacing with hardware ==
* To download pof files into VME modules with Active Serial EPROMs (i.e. VF48 modules): see /home/olchansk/daq/vf48/firmware/load.perl
* To download pof files into VME modules with VME-accessible Flash Programmer (VF48, etc) use the "srunner_vme" program, see /home/olchansk/packages/vme/srunner*
* To download sof files into VME modules using JTAG interface, see /home/olchansk/daq/vf48/firmware/load_jtag_fe.perl
== Accessing USB-Blaster attached to remote computer ==
* To access USB-Blaster Jtag interface attached to a remote computer: (from https://ladd00.triumf.ca/elog/DAS/437)
Assume we have the USB blaster connected to laddvme05 and we will run quartus on ladd00
login to ladd00
get rid of possibly running local jtagd processes: killall -KILL jtagd
start the ssh tunnel: ssh laddvme05 -L1309:127.0.0.1:1309
inside the ssh tunnel, start the jtagd daemon: jtagd --user-start (assuming quartus tools are in your $PATH, otherwise use full pathnames, i.e. /triumfcs/trshare/olchansk/altera/altera9.1/quartus/bin/jtagd --user-start)
inside the ssh tunnel check that jtag works: jtagconfig
if jtagconfig does not work, check permissions on the /proc/bus/usb/*/* devices, they should be "rw-rw-rw". If they are not, fix them by hand: login as root and run "chmod a+wr /proc/bus/usb/*/*" or follow these instructions for changing default hot plug instructions: http://daq-plone.triumf.ca/SM/docs/local/usb-permissions
leave the laddvme05 ssh tunnel window alone (iconize it)
login to ladd00
again get rid of possibly running local jtagd processes: killall -KILL jtagd
go to the quartus project directory, start quartus, open the quartus project
start the jtag progammer from "quartus -> tools -> programmer"
start the jtag signal  tap tool from "quartus -> tools -> signal tap II logic analyzer"
in either place, you should see the USB blaster is if it were a locally connected.
Troubleshooting: if remote jtag connection does not work, try this, report the results:
jtagconfig on the machine where the USB blaster is locally connected should see the jtag devices. Typical malfunctions are wrong permissions on the USB files (fix as described above) and stale/bad jtagd running (kill it, restart it)
local jtagd should talk to us: "telnet localhost 1309" should report "JTAG Server"
ssh tunnel should be running (ssh -L)
the tunnel should work (on the other end of the tunnel, i.e. on ladd00), "telnet localhost 1309" should report "JTAG Server"
jtagconfig should see the same devices

Revision as of 12:54, 6 February 2012

Useful Links

TBW

How to run Quartus

Prerequisites

You will want to sit in front of a large monitor, and you will want to run the quartus application on a fast computer with large memory (use ladd11 and ladd12). To download compiled fpga firmware into vme modules using jtag or Active Serial interfaces, you will need a USB-Blaster dongle.

Select a quartus license

  • ladd05 nodelocked license: run quartus on ladd05, use license file /home/olchansk/daq/altera/license-ladd05.dat
  • ladd01 nodelocked license: run quartus on ladd01, use license file /home/olchansk/daq/altera/license-ladd01.dat
  • ladd00 floating license: start license server: "ssh ladd00 /triumfcs/trshare/olchansk/altera/altera9.1/quartus/linux/lmgrd -c /home/olchansk/daq/altera/license-ladd00.dat", run quartus anywhere, use license file /home/olchansk/daq/altera/license-ladd00.dat
  • ladd09 floating license: start license server: "ssh ladd09 /triumfcs/trshare/olchansk/altera/altera9.1/quartus/linux/lmgrd -c /home/olchansk/daq/altera/license-ladd09.dat", run quartus anywhere, use license file /home/olchansk/daq/altera/license-ladd03.dat
  • ladd12 floating license: start license server: "ssh ladd12 /triumfcs/trshare/olchansk/altera/altera9.1/quartus/linux/lmgrd -c /home/olchansk/daq/altera/license-ladd12.dat", run quartus anywhere, use license file /home/olchansk/daq/altera/license-ladd12.dat

Start Quartus

  • Quartus 11.1 on ladd11: run "/data11/altera/11.1/quartus/bin/quartus --64bit"
  • Quartus other versions on trshare:
    • ssh to ladd11 or ladd12
    • run "ls /triumfcs/trshare/olchansk/altera" to list available versions
    • run the selected version directly, i.e. "/triumfcs/trshare/olchansk/altera/altera9.1/quartus/bin/quartus"
  • specify license file at startup or from the "Tools -> License setup..." menu.

Use Quartus

refer to quartus documentation and gurus

Interfacing with hardware

  • To download pof files into VME modules with Active Serial EPROMs (i.e. VF48 modules): see /home/olchansk/daq/vf48/firmware/load.perl
  • To download pof files into VME modules with VME-accessible Flash Programmer (VF48, etc) use the "srunner_vme" program, see /home/olchansk/packages/vme/srunner*
  • To download sof files into VME modules using JTAG interface, see /home/olchansk/daq/vf48/firmware/load_jtag_fe.perl

Accessing USB-Blaster attached to remote computer

Assume we have the USB blaster connected to laddvme05 and we will run quartus on ladd00 login to ladd00 get rid of possibly running local jtagd processes: killall -KILL jtagd start the ssh tunnel: ssh laddvme05 -L1309:127.0.0.1:1309 inside the ssh tunnel, start the jtagd daemon: jtagd --user-start (assuming quartus tools are in your $PATH, otherwise use full pathnames, i.e. /triumfcs/trshare/olchansk/altera/altera9.1/quartus/bin/jtagd --user-start) inside the ssh tunnel check that jtag works: jtagconfig if jtagconfig does not work, check permissions on the /proc/bus/usb/*/* devices, they should be "rw-rw-rw". If they are not, fix them by hand: login as root and run "chmod a+wr /proc/bus/usb/*/*" or follow these instructions for changing default hot plug instructions: http://daq-plone.triumf.ca/SM/docs/local/usb-permissions leave the laddvme05 ssh tunnel window alone (iconize it) login to ladd00 again get rid of possibly running local jtagd processes: killall -KILL jtagd go to the quartus project directory, start quartus, open the quartus project start the jtag progammer from "quartus -> tools -> programmer" start the jtag signal tap tool from "quartus -> tools -> signal tap II logic analyzer" in either place, you should see the USB blaster is if it were a locally connected. Troubleshooting: if remote jtag connection does not work, try this, report the results: jtagconfig on the machine where the USB blaster is locally connected should see the jtag devices. Typical malfunctions are wrong permissions on the USB files (fix as described above) and stale/bad jtagd running (kill it, restart it) local jtagd should talk to us: "telnet localhost 1309" should report "JTAG Server" ssh tunnel should be running (ssh -L) the tunnel should work (on the other end of the tunnel, i.e. on ladd00), "telnet localhost 1309" should report "JTAG Server" jtagconfig should see the same devices