config jtag for quartus II 15.0 on CENTOS 7
在 CENTOS 7 上執行 quartus II 15.0,連結 USB Blast cable時,會遇到不連結情形。下述是偵測的步驟,和解決的方法。
1.
用 jtagconfig 偵測。
$ jtagconfig
sed:/opt/altera/version/quartus/linux64/liblzma.so.5: no version informationavAIlable (required by /lib64/libselinux.so.1)
1) USB-Blaster variant [5-1]
Unable tolock chain - Insufficient port permissions
[注] /opt/altera/version: installation rootdirectory
2. 改連結 liblzm.so.5
$ ldconfig -p | grep liblzma
liblzma.so.5(libc6,x86-64) => /lib64/liblzma.so.5
liblzma.so.5(libc6) => /lib/liblzma.so.5
$ cd /opt/altera/version/quartus/linux64/
$ rm liblzma.so.5
$ ln -s /lib64/liblzma.so.5liblzma.so.5
3.
再偵測連結
$ jtagconfig
1) USB-Blaster variant [5-1]
Unable tolock chain - Insufficient port permissions
再使用 jtagconfig 偵測前,請先刪掉舊 jtagd daemon
$ ps uax | grep jtag
design49600.00.0 255041356 ?S11:350:00 jtagd --user-start--config /home/design/.jtagd.conf
design50440.00.0 112640964 pts/0S+11:370:00 grep --color=auto jtag
$ kill 4960
4.
在 /etc/udev/rules.d 下建 51-usbblaster.rules,其內容附於下。
$ sudo cp 51-usbblaster.rules/etc/udev/rules.d/
51-usbblaster.rules:
# USB-Blaster
SUBSYSTEM=="usb",ATTR{idVendor}=="09fb", ATTR{idProduct}=="6001",OWNER="root", GROUP="plugdev", MODE="0666"
SUBSYSTEM=="usb",ATTR{idVendor}=="09fb", ATTR{idProduct}=="6002",OWNER="root", GROUP="plugdev", MODE="0666"
SUBSYSTEM=="usb",ATTR{idVendor}=="09fb", ATTR{idProduct}=="6003",OWNER="root", GROUP="plugdev", MODE="0666"
# USB-Blaster II
SUBSYSTEM=="usb",ATTR{idVendor}=="09fb", ATTR{idProduct}=="6010",OWNER="root", GROUP="plugdev", MODE="0666"
SUBSYSTEM=="usb",ATTR{idVendor}=="09fb", ATTR{idProduct}=="6810",OWNER="root", GROUP="plugdev", MODE="0666"
$ sudo udevadm control --reload
5.
再偵測 jatgconfig
$ sudo/opt/altera/version/quartus/bin/jtagconfig -d
1) USB-Blaster [5-1]
Unable toread device chain - JTAG chain broken
Captured DRafter reset = ()
Captured IRafter reset = ()
CapturedBypass after reset = ()
CapturedBypass chain = ()
JTAG clockspeed 6 MHz
6.
用 jtagd 指令偵測
$ jtagd --foreground --debug
JTAG daemon started
Using config file /etc/jtagd/jtagd.conf
Remote JTAG permitted when password set
No USB device change detection because libudev.so.0not found
USB-Blaster port (/dev/bus/usb/005/002) open failed(13)
USB-Blaster added "USB-Blaster variant[5-1]"
7.
ln libudev.so.1.4.0 to libudev.so.0
$cd /lib64
$sudo ln -s libudev.so.1.4.0 libudev.so.0
$ls -l libudev*
lrwxrwxrwx. 1 root root16 Nov 10 11:47 libudev.so.0 ->libudev.so.1.4.0
lrwxrwxrwx. 1 root root16 Oct 19 12:45 libudev.so.1 ->libudev.so.1.4.0
-rwxr-xr-x. 1 root root 73968 Sep 15 21:21libudev.so.1.4.0
8.
這時再 reboot,就可看到成功連結
$ jtagconfig -d
1) USB-Blaster [5-1]
031020DD10M08DA(.|ES)/10M08D(C|F)/.. (IR=10)
Captured DRafter reset = (031020DD) [32]
Captured IRafter reset = (155) [10]
CapturedBypass after reset = (0) [1]
CapturedBypass chain = (0) [1]
JTAG clockspeed 6 MHz
9.
Congraduation
真是很不错的帖子,建议精华帖子
The alove process is also suitable for Quartus Prime (16.0)version
I will test whether version 16.1 be in the same condition
很不错
Now the version is 19.1.