linux用のQuartusには、USB Blaster用のドライバが含まれていてWindows用のようにドライバのインストールは不要です。利用するためにはJTAGを利用するポートの権限許可の設定が必要ですので設定内容を記します。使ったUSB Blasterは互換のものを使っています。
機種が違うと設定が異なるかもしれません。設定に際して参照した資料は次のとおりです。
https://www.altera.com/content/dam/altera-www/global/en_US/pdfs/literature/ug/ug_usb_blstr.pdf
1./etc/udev/rules.dフォルダに51-usbblaster.rulesファイルを作成します。
2.51-usbblaster.rulesファイルには、次の内容を書き込み保存します。
3.PCをリブートします。
# For Altera USB-Blaster permissions. BUS=="usb", SYSFS(idVendor)=="09fb", SYSFS(idProduct)=="6001", MODE="0666", PROGRAM="bin/sh -c 'K=%k; K=$${K#usbdev}; printf /proc/bus/usb/%%03i/%%03i $${K%%%%.*} $${K#*.}'", RUN+="/bin/chmod 0666 %c" |
USB Blasterを使ってプログラミング(デバイスにconfigを書き込む)するときは次の条件を整えて使ってください。
1.USB BlasterをPCに接続しておく。FPGAデバイスを動作させておく(電源投入しておく)。USB BlasterとデバイスのJTAGインタフェースを接続しておく。
2.Quartusを立ち上げる前に、ターミナルで次のコマンドを入力する。(lubuntuはQuartusをインストールしたホームディレクトリ。)
sudo /home/lubuntu/altera_lite/16.0/quartus/bin/jtagconfig
3.Quartusを立ち上げ後も上記コマンドでたびたび正しく動作しているか確認する。
jtagconfigを実行したときに次のようなメッセージが出ると失敗です。私は、PCをリブートしてもう一度やり直したりしてています。3)が出るときは権限設定がきちんと設定されているかも確認してください。
1) Unable to read device chain - JTAG chain broken
USB Blasterにデバイスを接続していないときにでます。
2) No JTAG hardware available
USB Blasterを接続していないときにでます。
3) Unable to lock chain - Insufficient port permissions
慌ててQuartusやProgrammerを起動したときにでます。
このときにProgrammerのstartをさせるとQuartusのMessagesにはそれぞれ次のようなメッセージがでます。
1) Can't access JTAG chain
2) (エラーダイアログがあがってそこに)Specify programming hardware setup
3) Unexpected error in JTAG server -- error code 89