Теперь (впервые!!!) программатор MBFTDI может быть полноценно использован из САПР Altera Quartus II или Quartus Prime в ОС Linux Ubuntu 16.0 LTS. На этом видео видно, как программируется плата Марсоход3bis из Quartus в Ubuntu.
Здесь рассказывается, как устанавливать и как использовать.
Вообще-то компания Альтера (или теперь уже Интел?) говорит, что ее Quartus Prime совместим с Red Hat Enterprise Linux 6.5. Тем не менее, по нашему опыту, Ubuntu 16.x так же может быть использована. Скачать Quartus Prime Lite можно на сайте Альтеры: http://dl.altera.com/16.0/?edition=lite&platform=linux. Можно выкачивать целиком, а можно по частям, только квартус и только поддержку нужных типов микросхем.
Размер QuartusLiteSetup-16.0.0.211-linux.run около 2-х гигабайт. Поддержка MAX10 FPGA - примерно 340 мегабайт.
Для установки квартуса в Linux достаточно просто запустить файл QuartusLiteSetup-16.0.0.211-linux.run. Для этого сперва нужно сделать файл запускаемым. В консоли терминала запустите:
> chmod a+x QuartusLiteSetup-16.0.0.211-linux.run
> ./QuartusLiteSetup-16.0.0.211-linux.run
Установщик создаст папку "altera_lite" в домашней директории и запишет туда все необходимые файлы. По завершению установки так же на рабочем столе появится иконка квартуса.
Вы можете запустить квартус и сразу же работать. Если потребуется он может попросить установить поддержку для нужных вам типов микросхем. Работа в среде САПР Altera Quartus Prime под Ubuntu Linux практически не отличается от работы в квартусе в ОС Windows. Все практически точно так же.
Для установки драйвера к программатору MBFTDI создайте файл /etc/udev/rules.d/51-usbblaster.rules с правами root. Отредактируйте его. В этом файле должна быть вот такая строка:
SUBSYSTEM=="usb",ENV{DEVTYPE}=="usb_device",ATTR{idVendor}=="0403",ATTR{idProduct}=="6010",MODE="0666"
Далее скачайте с нашего сайта из раздела загрузки файл драйвера программатора:
Распакуйте архив и скопируйте имеющийся в нем файл libjtag_hw_mbftdi-blaster.so в папку ~/altera_lite/16.0/quartus/linux64
В Linux версии Altera Quartus Prime имеется свой собственный сервис для работы с jtag. Если в Windows это jtagserver.exe, то в Linux это quartus/bin/jtagd
Так же там имеется дополнительная утилита для работы с программаторами quartus/bin/jtagconfig. В принципе в повседневной работе эти сведения не очень нужны. САПР Quartus Prime сам будет запускать jtagd, когда потребуется.
Простую проверку наличия программатора в системе можно сделать так:
- Подключите программатор MBFTDI к компьютеру с Ubuntu кабелем USB2. Платы Марсоход2/Марсоход2bis или Марсоход3/Марсоход3bis имеют встроенный программатор и так же подключаются кабелем USB2 к ПК.
- Запустите в консоли lsusb, чтобы увидеть подключенные USB устройства. Программатор MBFTDI отображается там, как устройство с ID 0403:6010.
- Ubuntu Linux сразу воспринимает программатор MBFTDI как устройство последовательного порта. Нам это не нужно, поэтому выгружаем драйвер командой sudo rmmod ftdi_sio
- Запускаем из quartus/bin программу ./jtagconfig и видим в списке имеющихся программаторов наш MBFTDI.
Все описанные здесь команды видны на вот этом скриншоте:
Теперь можно запускать программатор из среды Quartus, пункт меню Tools => Programmer.
Работа с Altera SignalTap в Ubuntu так же возможна.
Здесь все так же, как и в Windows. Выбираем в SignalTap программатор MBFTDI и можем отслеживать поведение сигналов внутри ПЛИС:
На этом скриншоте отслеживается восьмибитный двоичный счетчик из проекта MAX10_leds. Восьмибитные числа представлены, как unsigned line chart.
При возникновении каких-то проблем в настройке программатора можно воспользоваться инструкцией на странице http://www.fpga-dev.com/altera-usb-blaster-with-ubuntu/ Правда эта инструкция (на английском языке) для Altera UsbBlaster, но для нашего программатора MBFTDI почти все здесь актуально.
Подробнее...