Quartus: FPGA Design Software — Intel® Quartus® Prime

Содержание

Quartus — ALT Linux Wiki

Quartus II — основная среда проектирования для ПЛИС компании Intel FPGA (Altera до 2015 года).

Light-версия САПР бесплатна.

Кроме платформы Windows®, доступна также версия, предназначенная для запуска в ОС Red Hat Enterprise Linux. Это даёт возможность запускать САПР в нашей операционной системе.

Данная инструкция подходит для установки Quartus версий 16.x и 17.x на Alt Linux x86_64 p8 и p9. Другие комбинации версий ОС и САПР предположительно тоже будут работать.

Базовая установка[править]

Скачать .tar архив с сайта Altera: [1]. Распаковать и запустить скрипт «setup.sh». При необходимости также скачать и установить обновления. Пути с пробелами и не-ASCII символами могут вызвать ошибки.

Система поставится в домашнюю папку по адресу ~/intelFPGA_lite/${ver}/, где ver — версия (ver=»16.1″, ver=»17.1″…).

Также следует установить из репозитория пакеты:

i586-libXft.32bit
libudev0

Первый из них — для ModelSim, второй — для jtagd.

Доработки и исправления[править]

  • В запущенном Quartus во вкладке Tools -> Options -> General -> Internet Connectivity в поле Path вписать /opt/firefox-env.

Создать исполнимый скрипт /opt/firefox-env:

#!/bin/sh
exec /usr/bin/env --unset=LD_LIBRARY_PATH firefox "$@"

Это исправляет запуск справки. В противном случае, firefox со справкой пытается вместо системных загрузить стандартные бинарные библиотеки из комплекта Quartus, от чего завершается аварийно.

  • В файле ~/intelFPGA_lite/${ver}/modelsim_ase/bin/vsim на строке 210 добавить ядра Linux современных версий в список архитектур:
        case $utype in
          2.4.[7-9]*)       vco="linux" ;;
          2.4.[1-9][0-9]*)  vco="linux" ;;
          2.[5-9]*)         vco="linux" ;;
          2.[1-9][0-9]*)    vco="linux" ;;
          3.[0-9]*)    	    vco="linux" ;;
          4.[0-9]*)         vco="linux" ;;
          5.[0-9]*)         vco="linux" ;;
          *)                vco="linux_rh60" ;;
        esac
  • Из Alt Linux p7 притащить бинарную 32-битную библиотеку libfreetype.so.6.10.0 (Скачать RPM по ссылке, извлечь .so из RPM вручную, проверить sha1sum:ab90aab56f30b0cdc5be9839f755a8540af9ce74, gost12sum:85699b149c4aad9bf3940f79a7a3e89bbe6c24939dbad4cbbff81e7075ba8fec). Системная версия libfreetype не подходит начиная с p8.

Сохранить её в ~/intelFPGA_lite/${ver}/lib_old_compat/.

В lib_old_compat/ создать ссылку:

$ ln -s libfreetype.so.6.10.0 libfreetype.so.6

В папке ~/intelFPGA_lite/${ver}/modelsim_ase/linuxaloem переименовать оригинальный vish в vish.zzzz.

Создать скрипт-подмену vish:

cd ~/intelFPGA_lite/${ver}/modelsim_ase/linuxaloem
mv vish vish.zzzz
touch vish
chmod a+x vish
vim vish

В скрипт-подмену vish записать:

#!/bin/sh
LD_LIBRARY_PATH=$MODEL_TECH/../../lib_old_compat/
export LD_LIBRARY_PATH
exec -a $MODEL_TECH/vish $MODEL_TECH/vish.zzzz "$@"

Это позволяет подгрузить правильную версию библиотеки libfreetype в нужном месте комплекса программ ModelSim. Передача LD_LIBRARY_PATH всему ModelSim не работает — где-то по пути переменная удаляется.

Для работы с jtag-программатором следует создать группу jtag и добавить в неё пользователя, от имени которого будет запускаться Quartus.

groupadd jtag
usermod -a -G jtag ИМЯ_ПОЛЬЗОВАТЕЛЯ

Также следует создать udev-правило для разных моделей программаторов, по которому их файл устройства подключается в нужное место с адекватными правами доступа. В файл /etc/udev/rules.d/99-altera-usb-blaster.rules следует записать:

# USB-Blaster
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="09fb", ATTRS{idProduct}=="6001", MODE="0660", GROUP="jtag", SYMLINK+="usbblaster/%k"
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="09fb", ATTRS{idProduct}=="6002", MODE="0660", GROUP="jtag", SYMLINK+="usbblaster/%k"
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="09fb", ATTRS{idProduct}=="6003", MODE="0660", GROUP="jtag", SYMLINK+="usbblaster/%k"
# USB-Blaster II
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="09fb", ATTRS{idProduct}=="6010", MODE="0660", GROUP="jtag", SYMLINK+="usbblaster2/%k"
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="09fb", ATTRS{idProduct}=="6810", MODE="0660", GROUP="jtag", SYMLINK+="usbblaster2/%k"

После выполнения всех операций по настройке jtag следует перезапустить udevd командой

service udevd restart

и перелогиниться. Или просто перезапустить компьютер.

Известные баги[править]

  • При настройке PLL ПЛИС MAX10 через интерфейс MegaWizard запускается окно с полем, частично скрытым ползунками прокрутки. При попытке взаимодействия с оконными примитивами формы программа MegaWizard зависает. Чтобы обойти этот баг, следует при запуске интерфейса первым действием растянуть окно за правый нижний угол так, чтобы всё содержимое формы поместилось в окне.
  • Также иногда меню «IP components» в интерфейсе Quartus перестаёт реагировать на попытки открыть ядра (двойной щелчок/Enter). Ситуация исправляется после перезапуска Quartus.
  • При генерации PLL для Cyclone V и других ядер, требующих исполнения tcl скриптов (чаще всего — более современные ядра) tcl падает уже после исполнения своей задачи, в результате чего в пользовательском интерфейсе возникает сообщение об ошибке при генерации ядра. При этом, однако же, ядра генерируются корректно.
  • Quartus запускается из командной строки по прямому пути ~/intelFPGA_lite/${ver}/quartus/bin/quartus.
  • Quartus Programmer — ~/intelFPGA_lite/${ver}/quartus/bin/quartus_pgmw
  • ModelSim — ~/intelFPGA_lite/${ver}/modelsim_ase/bin/vsim

Для диагностики проблем подключения программатора можно запустить jtag демон в отладочном режиме:

jtagd --foreground --debug

Перед этим следует убить работающую копию сервера, запускаемую автоматическими любым инструментом, использующим jtag (напр. Programmer и SignalTap).

Добавление ярлыков на рабочий стол оставим на усмотрение читателя =)

ПО, не входящее в репозитории ALT Linux

 

Изучение САПР Intel Quartus Prime

Компания Intel, с тех пор как в 2016 году приобрела компанию Altera, является мировым лидером в производстве FPGA. Среда САПР для программирования микросхем FPGA называется Intel Quartus Prime. Эта САПР позволяет проектировать логику работы микросхем схемотехнически и на языках программирования AHDL, VHDL, Verilog и других. Среда программирования Intel Quartus Prime так же позволяет производить симуляцию проектов, загружать скомпилированный образ FPGA в микросхему, вести внутрисхемную отладку проектов и многое другое.

Альтера и потом уже Интел, на протяжении многих лет совершенствовала среду Quartus. Предыдущая версия этой программы ранее называлась Altera Quartus II.

Существуют бесплатные, но вполне функциональные версии САПР Quartus II Web Edition или последняя Quartus Prime Lite. Есть и платные подписки. Однако, даже для профессиональной работы зачастую хватает бесплатных версий квартуса.

Несомненно отличия между Quartus II и Quartus Prime есть. В первую очередь нужно обратить внимание, что для разных серий ПЛИС может потребоваться разная САПР. Ниже представлена таблицы, которая показывает, какие серии ПЛИС мы используем в своих платах серий Марсоход, Марсоход2 и Марсоход3 и какие САПР следует выбирать.

  Quartus Prime   

Cyclone III
Марсоход2

Cyclone IV
Марсоход2bis

Cyclone IV
Марсоход2RPI
MAX II
Марсоход
MAX 10
Марсоход3, Марсоход3bis 
Quartus II v13.1   
 

Чтобы Вам было легче осваивать программу Intel Quartus Prime мы подготовили несколько пошаговых инструкций.

Ниже представлены немного устаревшие инструкции по Altera Quartus II.

Вот они:

Следующие статьи помогут Вам разобраться со схемотехническим описанием проектов в среде Altera Quartus II:

Кроме этого мы подготовили краткое описание языка проектирования цифровой логики Verilog.

Его можно скачать здесь:

 

quartus — Викисловарь

Содержание

  • 1 Латинский
    • 1.1 Морфологические и синтаксические свойства
    • 1.2 Произношение
    • 1.3 Семантические свойства
      • 1.3.1 Значение
      • 1.3.2 Синонимы
      • 1.3.3 Антонимы
      • 1.3.4 Гиперонимы
      • 1.3.5 Гипонимы
    • 1.4 Родственные слова
    • 1.5 Этимология
    • 1.6 Фразеологизмы и устойчивые сочетания

Морфологические и синтаксические свойства[править]

падежед. ч.мн. ч.
муж. р.жен. р.cр. р.муж. р.жен. р.cр. р.
Ном.quartusquartaquartumquartīquartaequarta
Ген.quartīquartaequartīquartōrumquartārumquartōrum
Дат.quartō
quartae
quartōquartīsquartīsquartīs
Акк.quartumquartamquartumquartōsquartāsquarta
Абл.quartōquartāquartōquartīsquartīsquartīs
Вок.quartequartaquartumquartīquartaequarta

quartus

Порядковое числительное, соответствующее количественное числительное — quattuor.

Корень: .

Произношение[править]

Семантические свойства[править]

Значение[править]
  1. четвёртый ◆ Отсутствует пример употребления (см. рекомендации).
Синонимы[править]
Антонимы[править]
Гиперонимы[править]
Гипонимы[править]

Родственные слова[править]

Ближайшее родство

Этимология[править]

Происходит от ??

Фразеологизмы и устойчивые сочетания[править]

  • quartus decimus — четырнадцатый
Для улучшения этой статьи желательно:
  • Добавить описание морфемного состава с помощью {{морфо}}
  • Добавить транскрипцию в секцию «Произношение» с помощью {{transcription}}
  • Добавить пример словоупотребления для значения с помощью {{пример}}
  • Добавить синонимы в секцию «Семантические свойства»
  • Добавить гиперонимы в секцию «Семантические свойства»
  • Добавить сведения об этимологии в секцию «Этимология»

ГАММА — Система проектирования Quartus II

Средство разработки Quartus II — это следующий шаг в проектировании устройств с высокой степенью интеграции, включая разработку законченных систем на одном программируемом кристалле (System-on-a-programmable-chip (SOPC)).

Программное обеспечение Quartus II предоставляет полный цикл для создания высокопроизводительных систем на кристалле. Quartus II объединяет в себе проектирование, синтез, размещение элементов, трассировку соединений и верификацию, связь с системами проектирования других производителей.

Разработка систем на кристалле требует от разработчиков эффективной командной работы. Изменения в одной части проекта должно иметь минимальное влияние на других членов команды. Программное обеспечение Quartus II — это наиболее комплексная среда для разработки систем на кристалле SOPC, доступная в настоящее время. Quartus II включает в себя блочный метод разработки LogicLock.

LogicLock

LogicLock — это новая блочная методология проектирования, доступная исключительно в программном обеспечении Quartus II. Quartus II совместно с LogicLock — единственное программное обеспечение для разработки устройств на основе программируемой логики, которое включает в себя блочную методологию проектирования как стандартную функцию. Это помогает увеличить эффективность работы разработчиков, снизить время проектирования и верификации. LogicLock позволяет проектировать и проверять каждый модуль отдельно. Разработчики могут объединять готовые модули в проект верхнего уровня, сохраняя производительность каждого модуля в процессе объединения. LogikLock снижает время разработки и верификации, поскольку каждый модуль оптимизируется только один раз.

NativeLink

NativeLink — позволяет осуществлять связь между средством разработки Quartus II и программным обеспечением других производителей. NativeLink позволяет средствам синтеза сторонних производителей преобразовывать свои примитивы напрямую в примитивы устройств Altera. Прямое преобразование сокращает время компиляции и освобождает от использования дополнительных библиотек трансляций преобразований, которые могут ограничить производительность, достигнутую средствами проектирования сторонних производителей. Процесс разработки NativeLink позволяет разработчикам использовать Quartus II для размещения элементов, а средства проектирования других производителей — для оптимизации стратегий синтеза.

PowerFit 

Технология размещения элементов и трассировки соединений PowerFit в программном обеспечении Quartus II использует временные параметры, заданные разработчиком, для оптимального составления схемы и размещения логических элементов. Интеллектуальный алгоритм трассировки по временным параметрам в программном обеспечении Quartus II уделяет первостепенное внимание соединениям, критичным к временным параметрам. Критичные к временным параметрам соединения оптимизируются в первую очередь, для уменьшения задержек и достижения максимальной производительности (fMAX). Дальнейшее улучшение параметра fMAX достигается использованием новейшей архитектуры, такой как в семействе устройств Stratix. Эта передовая технология размещения элементов и трассировки соединений помогает пользователям программного обеспечения Quartus II достичь максимальной производительности, и обладает самым малым временем компиляции проекта среди подобных средств разработки.

Верификация

Проверка или верификация проекта может оказаться самой продолжительной стадией в процессе разработки высокопроизводительных систем на кристалле (SOPC). Однако, используя Quartus II, возможно сократить время верификации, поскольку это программное обеспечение обладает набором собственных средств верификации, интегрированных с последними средствами верификации сторонних фирм.

Анализ

Altera разработала два метода, для того, чтобы помочь разработчикам проанализировать состояние внутренних точек и входов/выходов устройства. Это отладочное средство SignalProbe и логический анализатор SignalTap. Технологии SignalTap и SignalProbe могут работать совместно со средствами синтеза сторонних производителей и не требуют внесения изменений в исходный HDL файл проекта.

SignalProbe

Доступная в последних версиях программного обеспечения Quartus II технология аппаратной отладки SignalProbe позволяет пользователям последовательно соединять внутренние точки устройства со свободными зарезервированными выводами для анализа с помощью осциллографа или логического анализатора. При использовании технологии SignalProbe сохраняются все временные параметры и межсоединения устройства.

SignalTap  

Для многих разработчиков, которые используют корпуса BGA с большим количеством входов/выходов, верификация системного уровня занимает очень много времени и иногда сильно затруднена. Логический анализатор SignalTap производит верификацию, с помощью интеграции функциональности логического анализатора в программном обеспечении. SignalTap позволяет разработчикам собрать данные с любых внутренних точек и входов/выходов устройства в режиме реального времени при работе системы. Quartus II вставляет в проект мегафункцию, содержащую логический анализатор. Данные собираются и сохраняются в блоках встроенной памяти устройства и направляются в программное обеспечение Quartus II через загрузочный кабель. Разработчики также могут подать внутренние сигналы на выводы устройства для дальнейшего мониторинга. Логический анализатор SignalTap позволяет существенно снизить время верификации, что позволяет в более короткие сроки выпускать новые продукты.

PowerGauge 

Программное обеспечение Quartus II включает технологию PowerGauge — первое интегрированное средство анализа энергопотребления. Средство анализа PowerGauge использует файлы, созданные в процессе моделирования для того, чтобы связать оценку потребления энергии с заданными параметрами устройства. Используя симулятор Quartus II или симуляторы сторонних производителей, интегрированный анализатор энергопотребления позволяет потребителям Altera установить и оптимизировать потребление энергии на более ранней стадии процесса разработки.

Поддержка 

Информация о поддержке семейств ПЛИС Altera в ПО Quartus II представлена в таблице 1.

Версии Quartus II Web Edition и Subscription Edition находятся на диске ALTERA, который можно заказать на сайте компании Гамма.

На сайте Altera доступен on-line курс Using the Quartus II Software: An Introduction.

Новая версия ПО Quartus II v8.0

Назад

Программное обеспечение для проектирования

FPGA — Intel® Quartus® Prime

Программное обеспечение Intel® Quartus® Prime Pro Edition v21.1 поддерживает новейшее семейство FPGA:

ПЛИС Intel® Agilex ™

Семейство Intel® Agilex ™ FPGA использует технологию гетерогенной трехмерной системы в корпусе (SiP) для интеграции первой матрицы FPGA Intel, построенной на 10-нм технологии SuperFin, и архитектуры Intel® Hyperflex ™ FPGA 2-го поколения, чтобы обеспечить повышение производительности до 45% geomean vs.Intel® Stratix® 10) 1 или снижение энергопотребления до 40% 1 для приложений в центрах обработки данных, сетях и периферийных вычислениях. ПЛИС Intel® Agilex ™ SoC также включают четырехъядерный процессор Arm Cortex-A53 для обеспечения высокой системной интеграции.

Программное обеспечение Intel® Quartus® Prime Pro Edition v21.1 — это интуитивно понятная среда проектирования, которая поможет вам удовлетворить ваши требования к мощности и производительности и сократить общие усилия по разработке. Возможности выпуска v21.1 включают:

  • Улучшения мощности, производительности, времени выполнения, памяти и логики Intel® Agilex ™ FPGA
  • Новые и улучшенные правила проектирования Design Assistant для синтеза, пересечения доменов часов (CDC), пересечения доменов сброса (RDC) и синхронизации
  • Иерархическая группировка проверки правил проектирования (DRC)
  • Разметка и фильтрация правил
  • Механизм отказа DRC
  • Новые простые в использовании отчеты для статического временного анализа, закрытия проекта, синтеза и неопределенных сущностей
  • Дополнительные улучшения перекрестного поиска и выполнения для отчетов
  • Найдите ограничения SDC в файле
  • Faster ECO компилируется для отводов после подгонки в логическом анализаторе Signal Tap II
  • Функция продолжения потока
  • Улучшенный графический интерфейс для мониторов с более высоким разрешением
  • Удаленная отладка через Ethernet и PCI Express с использованием процессора Nios® II
  • Отметить сигналы для отладки (бета) для разработки уровня передачи регистров (RTL)
  • Questa * -Intel® FPGA Edition Software (бета-версия)
  • Обновления IP, включая
  • PCI Экспресс
  • Интерлакен
  • JESD
  • Приемопередатчики
  • CPRI
  • ОРАНЬ
  • Ethernet

Запуск Active-HDL в качестве симулятора по умолчанию в Intel Quartus II — Примечания по применению — Документация — Ресурсы — Поддержка

Введение

Симулятор

Active-HDL можно запускать непосредственно из программного обеспечения Intel® Quartus с помощью функции NativeLink.В этой заметке по применению объясняется, как использовать функцию NativeLink в Intel Quartus II. Это примечание по применению было проверено на Active-HDL 10.3 и Quartus 16.1. Этот интерфейс позволяет пользователям запускать смешанное моделирование VHDL, Verilog и System Verilog («проектные» конструкции), используя Active-HDL в качестве имитатора по умолчанию.

Настройка Active-HDL в Quartus II

  • Откройте свой проект в Intel Quartus II и скомпилируйте все исходные файлы.

  • В Quartus II откройте окно параметров с помощью Tools | Опции.Выберите «Параметры инструментов EDA» в категории «Общие». Под записью Active-HDL выберите путь к папке \ bin в вашей установке Active-HDL.

    Рисунок 1 Параметры инструмента EDA

  • Теперь перейдите в меню «Назначения» | Настройки. Здесь выберите категорию «Моделирование» в разделе «Настройки инструмента EDA». Справа в раскрывающемся списке Имя инструмента выберите Active-HDL, как показано на рисунке 2, и нажмите Применить.

Рисунок 2 Настройки инструмента EDA в Quartus II

Настройки NativeLink
Настройки

NativeLink расположены в нижней части категории Simulation с правой стороны, как показано на рисунке 3.Есть три настройки NativeLink для выбора испытательного стенда для моделирования.

  • Нет — отключает опцию тестового стенда. Когда откроется Active-HDL, вам нужно будет добавить тестовый стенд, скомпилировать его и запустить моделирование вручную. Остальные файлы проекта будут добавлены в Active-HDL автоматически.

  • Скомпилировать тестовый стенд — позволяет выбрать тестовый стенд, который компилируется во время моделирования, если вы создали один или несколько тестовых стендов.

  • Использовать сценарий для настройки моделирования — позволяет указать файл сценария, содержащий команды для текущего моделирования в Active-HDL.В этом случае открывается Когда Active-HDL; он вызывает и запускает этот сценарий, который может содержать команды для компиляции и моделирования тестового стенда.

Рисунок 3 Настройки инструмента EDA

Теперь выберите нужный вариант в настройках NativeLink. Для запуска моделирования обратитесь к следующему разделу. Для получения дополнительных сведений об этих параметрах щелкните ссылку в конце этой заметки по применению.

Запуск моделирования

Чтобы запустить Active-HDL из Quartus II, щелкните Инструменты | Инструмент запуска моделирования | Возможность моделирования RTL.Active-HDL запускается, создает проект и добавляет в проект необходимые файлы. Он также создает и компилирует необходимые библиотеки Intel. Он добавляет сигналы к форме волны и после этого запускает симуляцию. Вы получите сообщение об окончании симуляции на консоли, когда симуляция будет завершена, как показано на рисунке 4.

Рисунок 4 Запуск моделирования

Рисунок 5 Запуск моделирования

Дополнительная информация

Для получения подробной информации о запуске и запуске симулятора Active-HDL из программного обеспечения Quartus II посетите сайт http: // www.altera.com/literature/hb/qts/qts_qii5v3.pdf.

Intel Quartus в облаке Nimbix

Ускорьте разработку Intel FPGA

Intel предоставляет программное обеспечение для проектирования Intel Quartus Prime, Intel FPGA SDK для OpenCL и программное обеспечение Mentor ModelSim ® — Intel FPGA Edition на облачной платформе Nimbix. Новый облачный сервис позволяет вам проводить интенсивные работы по проектированию, начиная от оценки кода FPGA и заканчивая проектированием с использованием языка уровня передачи регистров (RTL) или использования OpenCL для ускорения рабочих нагрузок, выполняемых на FPGA.Вы можете компилировать, разрабатывать и тестировать свой проект FPGA в облаке Nimbix. Nimbix специализируется на настраиваемых вычислительных услугах и предоставляет веб-интерфейс для ваших виртуальных рабочих столов, что позволяет использовать программное обеспечение Intel FPGA с любого компьютера.

Что в облаке?

Заказчики могут разрабатывать свои проекты с помощью набора программных инструментов, включая:

  • Программное обеспечение для проектирования Intel Quartus Prime
  • Intel®SDK для OpenCL
  • Mentor ModelSim — программное обеспечение Intel FPGA Edition

Преимущества

Благодаря доступности программного обеспечения Intel для программирования FPGA в облаке, не беспокойтесь о:

  • Обновление оборудования: развертывайте свои проекты на новых, больших и лучших устройствах без обновления оборудования, памяти или серверов.Это облачное решение идеально, если ваша программа требует огромных вычислительных мощностей, и вам, как правило, приходилось строить стойку серверов и оптимизировать их для определенных рабочих нагрузок. Получите доступ ко всему этому одним нажатием кнопки.
  • Обслуживание вашего оборудования: используйте аппаратное ускорение без постоянно растущих затрат и хлопот по обслуживанию вашего оборудования. Доступность инструментов Intel FPGA в облаке позволяет нашим клиентам сократить расходы, предоставляя серверы по запросу без больших капитальных вложений.
  • Управление лицензиями. В простой модели с оплатой по мере использования просто войдите в систему, выберите вычислительный ресурс — и вперед! Счет за использование Quartus будет выставлен вместе с использованием вычислительных ресурсов. Чтобы сделать его еще лучше, инструменты программирования Intel FPGA в настоящее время бесплатны в облаке!
  • Загрузка и установка программного обеспечения: Имея готовую виртуальную машину, мы позаботимся о загрузке и установке программного обеспечения Quartus за вас. Все, что вам нужно сделать, это просто войти в систему и получить доступ к инструментам Intel FPGA в облаке.

Начало работы

Пошаговые инструкции по началу работы см. В кратком руководстве, которое выйдет в ближайшее время, для средств разработки Intel FPGA в облаке Nimbix. Когда будете готовы, заполните контактную форму, чтобы начать использовать Intel FPGA Tools в облаке.

Начало работы

Документация

Статьи

Возможности

  • Разработка проектов FPGA с использованием набора программных инструментов, включая Intel Quartus Prime и Intel SDK для OpenCL

Квартус Прайм — EEJournal

Быть лидером может быть непросто.В течение многих лет одним из самых ярких пятен для Altera Corporation в конкурентной борьбе на рынке FPGA с ее главным конкурентом Xilinx, Inc. был их набор инструментов Quartus II. Не секрет, что Xilinx боролась со своими старыми инструментами ISE, что в конечном итоге привело к полной переработке с нуля. Quartus II от Altera продолжал выполнять свою работу, в то время как у Xilinx появился «новый блестящий объект» — со всем волнением и проблемами, связанными с переработанными инструментами.

Но что же тогда делать, если вы Альтера? Вы много лет занимаетесь инструментами, ваши клиенты очень довольны Quartus II, и они вложили немало средств в обучение, чтобы использовать его эффективно.Ваш конкурент (и их клиенты) укусили пулю и начали с нуля с новым, но современным набором инструментов. Вы не хотите нарушать то хорошее, что вы сделали с Quartus II, но и не хотите, чтобы у вас сложилось впечатление, что вы владеете «старыми» инструментами. Вы немного запутались.

К счастью, действует закон Мура, который заставляет всех сосредоточиться на реальных проблемах. ПЛИС последнего поколения могут иметь более 5 миллионов логических ячеек, что в четыре раза превышает пропускную способность высокоскоростного последовательного ввода-вывода предыдущего поколения, четырехъядерные 64-битные процессоры приложений, пропускную способность параллельной и последовательной памяти более двух Тбит / с и более 10 терафлопс обработки. мощность.Любой смекалистый набор инструментов содрогнется от страха перед масштабом проблем проектирования в стиле Мура, которые вот-вот обрушатся на его ничего не подозревающие алгоритмы.

Altera ответила «Человеком за шесть миллионов долларов» на почтенный Quartus II: заменив лежащие в его основе движки и алгоритмы на новые, сделав его лучше, чем раньше — сильнее, быстрее… Войдите в Quartus Prime!

Quartus Prime сохраняет внешний вид Quartus II, но имеет под капотом совершенно новую инфраструктуру, специально разработанную для работы с монструозными проектами, которые будут брошены на FPGA компании «поколения 10».Altera называет этот новый двигатель «Spectra-Q» (о котором мы уже писали ) . Цели Altera для Quartus Prime были просты: более быстрый ввод проекта, более быстрое время компиляции и итераций, а также меньшее количество итераций дизайна — и все это при улучшении качества результатов (QoR). Они хотели достичь этих целей, сохранив при этом тот же пользовательский интерфейс, чтобы их клиенты не прерывались при изучении нового пользовательского интерфейса, когда они уже были довольно довольны и справились со старым.

Подход

Altera состоял в том, чтобы начать с иерархической базы данных, внедрить новые, усовершенствованные алгоритмы для синтеза, размещения и маршрута, а также планирования проектирования — и все это на основе новой технологии унифицированного компилятора. Компания расширила и обновила языковую поддержку, добавив System Verilog и VHDL 2008. Они добавили новый интерактивный инструмент под названием «BluePrint Platform Designer» для планирования ввода-вывода и проверки правил проектирования. BluePrint Platform Designer обеспечивает предварительное размещение вводов-выводов с корректировкой по построению, устраняя цикл повторения и исправления предыдущего поколения.Затем новая «гибридная россыпь» и новые алгоритмы синтеза делают тяжелую работу по достижению большей части новых улучшений QoR. Затем поэтапный процесс проектирования и оптимизации сокращает количество требуемых итераций, сокращая при этом время итерации и приводя к гораздо более быстрой сходимости дизайна.

Существует синергия между иерархической базой данных и потоком проектирования, уже настроенными блоками IP и более быстрыми и предсказуемыми итерациями. После того, как у вас есть основные части вашего дизайна и исправлены все проблемы с синхронизацией, последнее, что вам нужно, — это чтобы инструменты снова подбрасывали все это в воздух, когда вы вносите небольшое изменение в несвязанную часть дизайна. .И вы действительно не хотите ждать, пока инструмент заново выполнит всю работу над теми частями дизайна, которые не изменились. Методология поэтапного иерархического проектирования решает обе эти проблемы одновременно.

Altera утверждает, что Quartus Prime достигает полного улучшения QoR на одну скорость, сравнивая «кнопочный» поток с Quartus II предыдущего поколения. Компания также заявляет, что время процесса проектирования ввода-вывода можно сократить на 90% с помощью BluePrint Platform Designer, и заявляет о сокращении времени компиляции на 75%.Это замечательные цифры для алгоритмов и изменений базы данных в программных инструментах, которые уже оптимизировались десятилетиями. Обычно улучшение на 1-2% — это большое дело.

Компания меняет способ упаковки программного обеспечения с Quartus Prime. Ранее с Quartus II было две версии: бесплатная версия «Web Edition» и полнофункциональная версия «Subscription Edition». С Quartus Prime он расширился до трех версий: «Lite Edition» (которая сопоставима со старой «Web Edition»), «Standard Edition» (которая является прямой заменой старой «Subscription Edition» для людей, которые уже используют эту версию), а также новую «Pro Edition», которая содержит дополнительные возможности, которые применимы только к новейшим семействам FPGA Stratix 10 и Arria 10 компании, например, новый синтез Spectra-Q.

Если надвигающееся приобретение Intel влияет на Altera, это не проявляется снаружи. Компания, похоже, ведет свою обычную игру, демонстрируя устойчивый прогресс в области технологий и бессвязные спарринги со своим основным конкурентом. Quartus Prime и Spectra-Q — это элегантные инженерные и маркетинговые ответы на громкую и сильную инициативу Xilinx Vivado, и нет никаких признаков того, что Altera вошла в какое-либо состояние приостановленной анимации, ожидая ассимиляции со стороны Intel.

Будет особенно интересно наблюдать за развитием Altera и рынка FPGA в ближайшие пару лет.Полупроводниковый узел FinFET 14/16 нм приносит самую большую пользу закона Мура за последние десять лет. Рынок только начинает осваивать замечательные возможности SoC FPGA как совершенно новой категории устройств, и Altera и Xilinx вложили невероятные ресурсы в возможности новых инструментов, чтобы соответствовать требованиям дизайна, которые появятся в следующем поколении. устройств.

В то же время FPGA выходят за рамки обычного сообщества «экспертов FPGA» на новые рынки и новые приложения.Большинство этих новых приложений также включают в себя крупные программные компоненты, поэтому и Altera, и Xilinx вынуждены расширять свои предложения инструментов для программного обеспечения, а также сообщества разработчиков оборудования.

Связанные

Программное обеспечение

Altera Quartus II версии 11.0 включает производственную версию Qsys System Integration Tool

Первое в отрасли межкомпонентное соединение «сеть на кристалле», оптимизированное для FPGA, обеспечивает до 2 раз большую производительность по сравнению с SOPC Builder

Сан-Хосе, Калифорния., 9 мая 2011 г. —Altera Corporation (Nasdaq: ALTR) объявила о выпуске своего программного обеспечения Quartus ® II версии 11.0, программного обеспечения номер один в отрасли по производительности и производительности для проектирования CPLD, FPGA и HardCopy ® ASIC. Версия 11.0 включает в себя производственный выпуск Qsys — инструмента системной интеграции нового поколения Altera. Новый инструмент Qsys представляет собой первое в отрасли межсоединение, оптимизированное для ПЛИС, на основе технологии «сеть на кристалле» (NoC), обеспечивающее до 2 раз более высокую производительность межсоединений по сравнению с SOPC Builder.Qsys улучшает масштабируемость системы для больших проектов ПЛИС и обеспечивает поддержку стандартных отраслевых интерфейсов (Avalon и AMBA ® AXI ™ от ARM ® и т. Д.).

Qsys использует межсоединение на основе NoC для обеспечения более высокой производительности систем по сравнению с традиционными архитектурами шины и коммутационной фабрики. Чтобы продемонстрировать возможности высокопроизводительного межсоединения в версии 11.0, Altera предлагает эталонный дизайн PCIe ® для DDR3, созданный с использованием Qsys. Эталонный дизайн обеспечивает пропускную способность более 1400 МБ / с между конечной точкой PCIe Gen2 x4 с отображением памяти и внешней памятью DDR3.Конструкция использует автоматически конвейерное соединение на основе NoC для пакетирования данных для более простой и быстрой транспортировки. Эталонный дизайн демонстрирует, как IP-ядро PCIe, предоставленное Altera, экономит месяцы времени разработки, устраняя необходимость в разработке логики кодирования / декодирования пакетов уровня транзакций (TLP) и упрощая сложность интерфейса протокола PCIe. Клиенты могут загрузить эталонный дизайн со страницы Qsys веб-сайта Altera по адресу www.altera.com/qsys.

Qsys позволяет разработчикам разрабатывать большие масштабируемые системы с функцией иерархического проектирования.Используя иерархию, разработчики могут разделить большие проекты FPGA, которые включают большое количество IP-ядер или системных компонентов, на более мелкие подсистемы. Иерархический процесс проектирования в Qsys позволяет разработчикам легко управлять каждой подсистемой, давая им возможность добавлять в проект дополнительные подсистемы с минимальным влиянием на производительность системы.

Qsys обеспечивает высочайшую гибкость, автоматически управляя мостом между несколькими стандартами интерфейсов. Разработчики, использующие Qsys, могут разрабатывать системы с использованием IP-ядер на базе Avalon, совместимых с Qsys, и могут добавлять в будущем IP-ядра, которые используют другой интерфейс промышленного стандарта, без замены исходных IP-ядер.Qsys поддерживает открытый стандартный интерфейс Avalon в этом выпуске. Будущие выпуски Qsys будут поддерживать дополнительные стандартные отраслевые интерфейсы, такие как AMBA AXI от ARM.

«Принятие клиентами бета-версии Qsys превзошло наши ожидания, и мы рады предложить производственную версию сегодня», — сказал Крис Балоу, старший директор по маркетингу программного обеспечения, встроенных систем и цифровой обработки сигналов (DSP) компании Altera. «Клиенты, использующие Qsys, воочию увидят преимущества производительности, которые дает инструмент, включая более высокую производительность системы, улучшенную масштабируемость системы и более быструю разработку с помощью IP-ядра PCIe с отображением памяти.Программное обеспечение

Quartus II версии 11.0 обеспечивает более быструю установку платы за счет усовершенствований программного обеспечения инструментария интерфейса внешней памяти и инструментария приемопередатчика. Новые возможности производительности и мониторинга в наборе инструментов интерфейса внешней памяти повышают производительность, помогая достичь максимальной эффективности использования памяти. Усовершенствованный инструментарий приемопередатчика предоставляет улучшенный интерфейс диспетчера каналов и обновленную панель управления приемопередатчиками, поэтому разработчики могут оптимизировать свои приемопередатчики для улучшения целостности сигнала и более быстрого монтажа своих плат.

Дополнительные функции в программном обеспечении Quartus II версии 11.0 Включает:

  • Поддержка новых устройств — Обеспечивает поддержку окончательных моделей синхронизации и файлов конфигурации ПЛИС для всех ПЛИС Cyclone ® IV GX. Программное обеспечение Quartus II версии 11.0 также предлагает поддержку расширенных режимов приемопередатчика для Stratix ® V FPGA.
  • Enhanced Chip Planner — Обеспечивает повышенное удобство использования при проектировании с использованием трансиверов Stratix V FPGA.Эти усовершенствования позволяют планировать тактовые импульсы с поддержкой назначения ФАПЧ по всем каналам.
  • Расширенная поддержка ОС для DSP Builder — Добавлена ​​поддержка 64-разрядных операционных систем Windows и Linux.

Для получения дополнительной информации о функциях, предлагаемых в программном обеспечении Quartus II версии 11.0, посетите сайт www.altera.com/q2whatsnew.

Цена и доступность

И подписка, и бесплатная веб-версия программного обеспечения Quartus II версии 11.0 теперь доступны для загрузки. Qsys доступен как в программном обеспечении Quartus II Subscription Edition, так и в Web Edition. Программа подписки на программное обеспечение Altera упрощает получение программного обеспечения Altera для проектирования за счет объединения программных продуктов и платы за обслуживание в один годовой платеж по подписке. Подписчики получают программное обеспечение Quartus II, версию ModelSim-Altera Starter и полную лицензию на IP Base Suite, который включает 14 самых популярных IP-ядер Altera (DSP и память). Годовая подписка на программное обеспечение составляет 2995 долларов США за лицензию на ПК с блокировкой узлов и доступна для покупки в интернет-магазине Altera.

Об Altera

Программируемые решения Altera позволяют системным и полупроводниковым компаниям быстро и экономично вводить новшества, дифференцировать и выигрывать на своих рынках. Узнайте больше об устройствах Altera FPGA, CPLD и ASIC на сайте www.altera.com.

CTSRD-CHERI / quartus-install: установка программного обеспечения Intel FPGA Quartus Prime на удаленных серверах

Этот сценарий устанавливает программное обеспечение Intel FPGA Quartus Prime на удаленных серверах. у которых нет веб-браузера или графического интерфейса.Это упрощает загрузку на нескольких серверах и запускаться как часть сборки по сценарию.

Синтаксис:

  использование: quartus-install.py [-h] [--download-only] [--install-only] [--prune]
                          версия целевого устройства [устройство ...]

Скачайте и установите Quartus.

позиционные аргументы:
  версия Версия Quartus, например 18.0pro, 17.1lite, 16.1std.
                   При поставке недопустимой версии будут возвращены поддерживаемые версии.
  целевой каталог для установки Quartus в
  device Устройство для загрузки / установки в Quartus.Поддерживается:
                           а2 Аррия II
                           а5 Аррия V
                           a5gz Arria V GZ
                           а10 Аррия 10
                           c4 Циклон IV
                           c5 Циклон V
                           c10gx Cyclone 10 GX
                           c10lp Cyclone 10 LP
                           m2 MAX II
                           m5 MAX V
                           м10 МАКС 10
                           s4 Stratix IV
                           s5 Stratix V
                           s10 Stratix 10
                           Конструктор DSP DSP
                           ред. ARM EDS
                           opencl Набор инструментов OpenCL

необязательные аргументы:
  -h, --help показать это справочное сообщение и выйти
  --download-only скачать, не устанавливать
  --install-only install, не загружать
  --prune Удалить установочные файлы по завершении
  --nosetup Не загружать интерфейс установки Quartus
  --параллельный ПАРАЛЛЕЛЬНЫЙ, -j ПАРАЛЛЕЛЬНЫЙ
                   Количество параллельных загрузочных подключений
  --fix-libpng Собрать и добавить libpng12.так двоичный в каталог библиотеки Quartus
                   (необходимо, среди прочего, для последней версии Ubuntu)
  

Пример использования:

  quartus-install.py 18.1std /opt/intelFPGA/18.1std a10 s4 s5 c4 c5 m10
  

Вам также понадобится установленный инструмент ‘aria2’, чтобы выполнять параллельные загрузки (поскольку серверы Akamai имеют ограниченное количество файлов пропускной способности, наиболее эффективно загружать все части параллельно, если вы находитесь на канале с высокой пропускной способностью).

Обратите внимание, что установка Quartus подразумевает принятие Intel FPGA Лицензионное соглашение для соответствующей версии (ей) вы скачиваете.

Поскольку необходимо вручную извлечь URL-адреса с веб-сайта Intel, поддерживается только ограниченный набор версий Quartus. Патчи приветствуются!

Тео Маркеттос github + atm26 по адресу cl.cam.ac.uk

Использование Quartus

Введение

Это руководство по использованию программного обеспечения Quartus II от Altera Corporation для построения логических схем, которые вы можно протестировать на макетных платах DE1, имеющихся в отделе.Программное обеспечение Quartus уже установлен на компьютерах в лаборатории TREE департамента, а DE1 макетные платы доступны для выхода из офиса отдела, комнаты SB А-202.

Ссылки:

  • Для получения информации о доступе к вашей учетной записи в лаборатории TREE см. Информация о лаборатории TREE.
  • Для получения информации о доступе к вашей учетной записи в лаборатории TREE за пределами кампуса см. Работа вне кампуса.
  • Список имен и номеров контактов ввода-вывода для макетной платы DE1 находится на контактах ввода-вывода DE1.

DE1 Наборы для прототипирования

Комплекты для прототипирования DE1 представляют собой печатные платы с микросхемой программируемой логической матрицы (FPGA) Altera, которая подключаются к нескольким переключателям, кнопкам, светодиоды (светодиоды), семисегментные дисплеи, часы, память, аудио ввод / вывод и устройства вывода видео.В этом задании вы научится использовать программное обеспечение Altera Quartus для создайте файл конфигурации, который вы можете загрузить с ПК на DE1 по стандартному USB-кабель.

В лаборатории факультета компьютерных наук есть наборы DE1, которые вы можете выписать. (пока офис отдела открыт) и использовать с компьютерами в открытой части Лаборатория TREE в SB, комната A-205.

У вас может быть достаточно наборов DE1, чтобы вы могли выписать один и забрать домой, если хотите. работа на дому.Вы можете получить доступ к программному обеспечению Quartus в лаборатории, находясь за пределами кампуса (см. Веб-страницу Работа вне кампуса), но вы бы нужно забрать комплект домой, чтобы опробовать свой проект. Если вы все же хотите забрать комплект домой, вы должны сначала установить программное обеспечение Quartus на свой компьютер и получить файл лицензии из Альтера, чтобы заставить его работать.

  • Программное обеспечение Quartus занимает около 1 ГБ; скачать его с веб-сайта Altera в Quartus Программное обеспечение Web Edition.

    Вам нужно будет зарегистрироваться в Altera, чтобы выполнить загрузку.

  • Вам также понадобится бесплатная лицензия для использования программного обеспечения. Воспользуйтесь ссылкой, которая находится прямо под желтая кнопка «Загрузить» на Quartus Программное обеспечение Web Edition страница.
  • Программное обеспечение, доступное для загрузки с Altera, может быть новее, чем версия установлен в лаборатории, но это не повлияет на проекты для этого курс.
  • После того, как вы успешно загрузили, установили и запустили программное обеспечение Quartus на своем компьютер за пределами кампуса, отправьте мне электронное письмо, и я дам разрешение на вы должны выписать DE1 из офиса департамента для использования за пределами кампуса. Нет смысла вынимая DE1, пока вы не убедитесь, что можете установить и запустить программное обеспечение успешно на вашем компьютере.

Если вы заберете комплект DE1 домой, вы обязаны вернуть его в рабочем состоянии в отделение.Стоимость замены утерянного или сломанного комплекта составляет 125 долларов. Вы можете приобрести собственное комплект напрямую от производителя DE1 на Тайване, www.terasic.com.

Работа над проектом

Чтобы сделать вещи конкретными, следующая процедура описывает, как построить и протестировать очень простая логическая схема, один полный сумматор.

  1. Убедитесь, что ваша лабораторная учетная запись работает.
    Убедитесь, что ваша учетная запись компьютера в Лаборатория TREE работает правильно.Следуйте инструкциям на веб-странице TREE Lab Information. Даже если вы решите работать за пределами кампуса, вам нужно будет использовать свою лабораторную учетную запись TREE, чтобы отправить назначение. (Я скопирую вашу директорию с копией вашего перемещаемого профиля хранится на сервере, поэтому убедитесь, что функция перемещаемого профиля работает на вас.)
  2. Запустите Quartus.

    Запустите Quartus (синий значок на рабочем столе любого компьютера в домене TREE) и будьте убедитесь, что ошибок лицензирования не происходит.Если вы получите диалоговое окно, которое выглядит следующим образом:

    обязательно выберите параметр «Указать действующий файл лицензии». Особенно, если вы используете один компьютеров в лаборатории, выбор любого из первых двух вариантов может испортить ситуацию вверх. (Или вы можете нажать «Отмена» и попытаться найти кого-нибудь, кто поможет ты.)

    Имя действующего лицензионного «файла» — @oak.cs.qc.cuny.edu, который на самом деле не является файлом. ‘@’ В начале указывает Quartus получить лицензию с сервера, а не из файла на компьютере, над которым вы работаете. Altera пожертвовала 22 кварту лицензии на использование в лаборатории TREE. Невозможно использовать эти лицензии из за пределами кампуса, поэтому вам придется самостоятельно пройти процесс лицензирования, если вы используют веб-версию программного обеспечения.

    Иногда сбои в сети приводят к тому, что компьютеры в лаборатории даже теряют лицензию. хотя действующая лицензия была получена, когда вы начали работать.Если вы попытаетесь построить свой проект (см. ниже) и получите ошибку лицензирования, откройте диспетчер лицензий () и просто повторно введите @ oak.cs.qc.cuny.edu в поле Файл лицензии; вам следует увидеть длинный список элементов, отображаемых в разделе «Лицензированный AMPP / MegaCore функции ».

  3. Создать проект

    В вашей учетной записи уже должен быть каталог с именем My Проекты в вашем каталоге Мои документы.Если нет, создайте его, обязательно напишите его по буквам и используйте заглавные буквы, как показано здесь. (один пробел между «Мои» и «Проекты».)

    В Quartus нажмите для создания вашего нового проекта.

    Для рабочего каталога укажите (или перейдите в) каталог в вашем каталоге Мои проекты, используя любое имя для этого каталог, указанный в вашем задании.В этом примере предположим, что имя каталога Full_Adder. Название проекта также будет данный вам в вашем задании; в этом случае предположим, что это также Full_Adder.

    Для завершения первой страницы мастера вам необходимо указать имя проектная сущность верхнего уровня. Мастер заполнит его именем проект, но обычно вам придется изменить это на что-то другое, потому что там должна быть схемой более высокого уровня, которая соединяет ваш проект с устройствами ввода / вывода на Плата DE1.Такие схемы обычно называют «испытательными жгутами» или «Испытательные стенды». Для этого проекта измените название дизайна верхнего уровня сущность от «Full_Adder» до «Full_Adder_Testbed».

    Щелкните и пропустите следующую страницу для добавления файлов в проект. Однако, если файлы дизайна были предоставлены вам как часть задания (как правило, программы Verilog, которые реализуют часть задания за вас), вам следует скопируйте эти файлы дизайна в каталог проекта, который вы создаете, и добавьте их к проекту здесь.Вы также можете сделать этот шаг позже, используя пункт меню, чтобы он всегда можно пропустить эту страницу, если хотите.

    На третьей странице мастера вы указываете конкретную ПЛИС Altera, которую дизайн будет построен для. FPGA на DE1 — это устройство Cyclone II, номер детали EP2C20F484C7, так что выберите это. Если вы ошиблись здесь, вы можете изменить это позже, используя меню элемент.

    Щелкните и пропустите следующую страницу «Инструмент EDA. Настройки.» Мы будем использовать инструменты, встроенные в Quartus, вместо каких-либо сторонние специализированные инструменты.

    Пятая страница — это просто сводка настроек вашего проекта; щелкните, если все в порядке.

  4. Создание файлов схем и символов

    Используйте значок нового документа на панели инструментов (крайняя слева) или пункт меню, чтобы создать новую схему. диаграмма.(Выберите «Блок-схема / Схема» в открывшемся диалоговом окне.) Вам понадобятся две схемы: одну, которую вы назовете Full_Adder_Testbed.bdf (это «блок-схема файл », и Quartus автоматически добавит .bdf расширение имени файла, если вы его не вводите), а второй будет называться Full_Adder.bdf. Вы можете создавать оба файла одновременно, давая им свои имена при сохранении на диск. Но вы не можете сохранить их в диск, пока вы что-нибудь в них не вставите.

    Добавьте три входных контакта и два выходных контакта в оба файла схемы с помощью инструмента символов. с вертикальной панели инструментов в центре окна Quartus (кнопка имеет изображение двухвходового логического элемента И на нем). Вам нужно перейти от квартала / библиотек к примитивам к контактам, чтобы добраться до входных и выходных контактов. После того, как вы добавили булавки, вы можете сохранить два схемы. Сохраните один как Full_Adder_Testbed.bdf. (С это имя проектной сущности верхнего уровня, это будет предлагаемое имя файла по умолчанию by Quartus для первого сохраняемого файла диаграммы.) Второй сохраните как Full_Adder.bdf. Убедитесь, что «Добавить файл в текущий проект »в диалоговом окне« Сохранить »для обоих файлов установлен флажок.

    Стенд для тестирования проекта может быть довольно сложным, но для текущего примера он будет просто подключите три входных бита и два выходных бита полного сумматора к FPGA контакты, которые идут к трем ползунковым переключателям и двум светодиодам на комплекте DE1.Мы будем использовать три крайних правых ползунковых переключателя для входов, поэтому щелкните имена входных контактов в testbed и измените их на Switch_2, Switch_1 и Switch_0. Мы будем использовать два крайних левых красных светодиода для выполнения и суммы, поэтому переименуйте их. выходные контакты Red_LED_9 и Red_LED_8. Точное название не имеет значения; тебе просто нужно чтобы иметь возможность определить, какой переключатель / светодиод будет подключаться к какому выводу ввода / вывода на вашем стенде. В на этом этапе ваша схема испытательного стенда должна выглядеть так:

    Вам нужно будет сообщить Quartus, какие контакты FPGA соответствуют включенным переключателям и светодиодам. DE1.Вы можете сделать это сейчас, но все пройдет более гладко, если вы завершите сначала схема испытательного стенда. А для этого вам нужно заполнить полный сумматор схема, так что вам будет что положить на стенд.

    Сначала дайте осмысленные имена выводов для выводов ввода / вывода в полном сумматоре. Например, A, B, Cin, Cout и Sum. Используйте инструмент «Символ», чтобы выбрать ворота. вам нужно из «папки» Logic в quartus / библиотеки / примитивы.Если вы хотите использовать 3-входное XOR для вывода Sum, вам нужно будет построить его, используя два логических элемента XOR с 2 входами.

    Чтобы поместить свой сумматор на тестовый стенд, вам нужно создать для него символ. создаст для вас «файл символов блока» с именем Full_Adder.bsf и добавит его в ваш проект. Однажды ты сделали это успешно, вы можете вернуться к схеме тестового стенда, нажмите на Инструмент символа, и вы найдете вторую папку верхнего уровня с именем Project, которая будет содержать ваш полный сумматор.Добавить в схему и подключите контакты ввода / вывода к полным выводам сумматора, чтобы завершить испытательный стенд. Ваш стенд должен выглядеть так:

    Чтобы подключить выводы испытательного стенда к выводам FPGA, вы должны позволить Quartus построить ваш проект один раз, чтобы он мог обнаружить имена контактов в вашем дизайне верхнего уровня элемент (стенд). Полная сборка может занять пару минут, но при этом точки, вы можете сэкономить время, просто запустив «Анализ и синтез текущий файл »часть полного процесса сборки.Убедитесь, что на стенде установлен текущий документ в окне редактора и нажмите среднюю кнопку в группе из трех это выглядит так: в панель инструментов в верхней части окна Quartus. Ошибок и предупреждений быть не должно. когда вы запустите этот шаг. Если нет, вам нужно исправить все, что не так, прежде чем продолжить.

  5. Выполните назначение контактов.

    Есть два разных инструмента, которые вы можете использовать, чтобы сообщить Quartus, какие контакты FPGA подключитесь к контактам ввода-вывода вашего испытательного стенда: планировщик выводов и редактор назначений.Оказывается, планировщик контактов работает лучше, чем редактор заданий. Вы можете запустить планировщик булавок из любого пункта меню. или нажав на средний значок в этой группе на верхней панели инструментов:. Когда планировщик булавок поднимется, нижняя часть панели должна покажите вид электронной таблицы, в котором перечислены имена контактов ввода / вывода, которые вы установили для своей тестовой системы. Если нет, что-то пошло не так на предыдущих шагах, и вам придется вернуться, чтобы исправить Это.(Вы получали все зеленые сообщения при запуске анализа и синтеза?)

    Использование веб-страницы DE1 I / O Pins, чтобы узнать, что такое FPGA контакты подключены к различным лампам и переключателям DE1, отредактируйте столбец Location таблицу назначения контактов, чтобы она выглядела так:

    Теперь вы сможете выполнить полную сборку своего проекта.Нажмите «Пуск». Компиляция »слева от кнопки« Анализ и синтез »вверху. панель инструментов, щелкните элемент меню или используйте сочетание клавиш Control-L. Следующие ожидается два предупреждения, которые можно игнорировать:

    Но если вы видите какие-либо ошибки или какие-либо другие предупреждения, что-то пошло не так и должно быть исправлено.

  6. Протестируйте свой проект.

    Проект полностью построен и готов к работе. Подключите DE1 к USB-порту на вашем компьютер. (В коробке с DE1 есть шнур питания, но он вам не нужен это: порт USB должен обеспечивать всю необходимую мощность.) Красный и зеленый светодиоды и четыре семисегментных дисплея должны начать мигать «интересным» шаблон, чтобы показать, что плата подключена и работает. Есть большая красная кнопка который можно использовать для выключения платы, на которую никогда не нужно нажимать.Но если плата не загорается, возможно, вам потребуется нажать эту кнопку. Также есть немного ползунковый переключатель на левом краю платы с надписью «Run / Prog»; убеждаться он находится в положении «Выполнить». (Это никогда не должно быть в другом положении.)

    Чтобы протестировать проект, убедитесь, что DE1 подключен и активен, а затем щелкните значок Кнопка «Программист», третья справа в верхней части окно Quartus.Это откроет подокно для файла Full_Adder_Testbed.cdf. Вы должны увидеть в этом подокне файл с именем Full_Adder_Testbed.sof; это файл программирования, который вы собираетесь загрузить в FPGA на плате DE1.

    В верхней части подокна находится кнопка «Настройка оборудования». Если Устройство «USB Blaster» еще не выбрано, вам нужно будет нажать на кнопку настройки, чтобы открыть диалоговое окно, которое вы используете для выбора этого устройства для загрузка файла программирования в ПЛИС.Если DE1 еще не подключен когда вы нажмете эту кнопку, вы не увидите опцию USB Blaster, и у вас будет для выхода из диалогового окна и повторите попытку после подключения устройства к компьютеру.

    Больше ничего менять не надо, но на всякий случай убедитесь, что Режим В окне выбрана опция JTAG. Кнопка «Пуск» должна быть включена; нажмите здесь, подождите пару секунд, пока проект загрузится на доску, и обратите внимание, что огни перестали мигать.Предполагая, что все десять ползунковых переключателей находятся в своих Положение «выключено» (ближе к нижнему краю платы), и если вы не нажимают ни одну из синих кнопок, красный и зеленый светодиоды должны быть выключен, и на семи сегментных дисплеях должно отображаться 888816.

    Сдвиньте 3 правых переключателя вверх и вниз, чтобы сгенерировать все 8 комбинаций входов для полный сумматор. Два крайних правых красных светодиода должны загореться правильным образом, чтобы убедитесь, что функции Sum и Cout реализованы правильно.Огни должен отображать двоичное число (002, 012, 102 или 112), указывающее, находятся ли переключатели 0, 1, 2 или все 3 в верхнее положение.

    Если ваш проект не работает должным образом, вам придется выяснить, что пошло не так, и исправить это.

Электропроводка шины

Автобусы — это совокупность связанных проводов. Для простого проекта они не нужны как и полный пример сумматора, с которым мы работали, но шины становятся полезными, как только проекты становятся немного сложнее.Например, клавиши (кнопки) на DE1 генерирует логический 0 при нажатии и логическую 1, когда не нажимается, только в обратном направлении от того, как вы думаете, они должны работать. Если вы решите пропустить все четыре ключевых ввода через инверторы, прежде чем подключать их к остальной части вашей схемы, чтобы они имели больше смысла, группу из четырех проводов можно рассматривать как шину. Настройка отдельных контактов ввода / вывода для всех провода в шине могут быть утомительными и подверженными ошибкам, но Quartus дает некоторое облегчение.Вот это пример шины, используемой для подключения четырех ключевых входов DE1 к цепи:

Работая слева направо, сначала обратите внимание, что есть только один символ входного контакта, но это он называется «Key_inv [3..0]». Как вы могли догадаться, квадратные скобки используется для индексов. В этом случае .. указывает на диапазон значений нижнего индекса от 3 до 0. Обратите внимание на то, что идет «провод» Символ выхода из булавки толще, чем провода, которые вы обычно используете: это шина.Ты можешь преобразовать провод в шину (или наоборот), щелкнув его правой кнопкой мыши и выбрав (для провода) или в открывшемся контекстном меню. Вы не найдете эту опцию полезной; он используется для группировки проводов, когда вы не хотите создавать автобус.

Следующим элементом схемы является набор из четырех инверторов, подключенных к шине; это lpm_inv «мегафункция.» Вы получаете один из мегафункции—> каталог ворот Альтеры библиотеки в Symbol Tool.Когда вы выберете его, появится мастер, который спросит вас какой ширины вы хотите свой автобус; в этом случае ответ был 4, и мастер сгенерировал все четыре инвертора в группе, готовые к подключению к шинам с обеих сторон. Этот сингл символ заботится об инвертировании четырех отдельных логических значений четырех кнопок вместо того, чтобы настраивать четыре отдельных символа входных контактов и четыре отдельных инвертора. Обратите внимание, что шина, выходящая из инверторов, имеет имя «Ключ [3..0] ». Ты дайте имя шине или проводу, щелкнув по ней правой кнопкой мыши и выбрав последний пункт контекстного меню.

Вам не нужно использовать мегафункции: если вы просто поместите обычный инвертор на шину и удалите секцию автобуса, которая проходит через символ, Quartus автоматически генерировать столько инверторов, сколько проводов в шине, хотя вы увидите только один символ инвертора.

Наименования автобусов

Имена шин и проводов являются глобальными символами.Если вы используете одно и то же имя для двух шин или проводов, Quartus автоматически соединит их вместе внутри, когда вы скомпилируете свой дизайн. Если входные контакты на рисунке выше были названы «Key [3..0]», вместо «Key_inv [3..0]» Quartus выдавал ошибку о подключенных выходах к входам, когда вы пытаетесь построить проект; шина, идущая в инверторы, получает свое имя от контактов, идущих в автобус, и это имя должно отличаться от имени шина выходит из инверторов.(Вы не можете подключать выходы инверторов к входным контактам.)

В следующей части рисунка показаны четыре провода (узловые линии), идущие от шины Key. Каждому из них присвоено имя с использованием нижнего индекса, чтобы указать, какой из них подключается к какому проводу в автобус. Строго говоря, из-за глобального именования проводов и шин эти провода фактически не обязательно подключаться к шине; их просто нужно правильно назвать.Но схема выглядит забавно с висящими проводами, поэтому рекомендуется сделать соединения в вашей схеме, как показано.

Однако бывают случаи, когда единственный разумный способ выполнить правильные соединения — оставить провода или болтающиеся автобусы, и использовать имена, чтобы соединить их вместе. Мы рассмотрим два примера: один для входной шины и один для выходной шины.

Пример входной шины

Допустим, вы хотите соединить десять ползунковых переключателей с десятью красными светодиодами, чтобы отображать состояние каждого из них. выключатель.На автобусе это просто:

Но теперь предположим, что вам также необходимо подключить входные переключатели к различным входам устройства, которое вы проходят испытания. На следующей схеме показано, как подключить переключатели 9, 8 и 7 к входам A [2], A [1], и A [0] (трехбитового ALU) без фактического подключения в схеме. Большой X — конец входной шины для АЛУ выглядит странно (указывает на «нет связи»), но в именовании шины ровно необходимое количество подключений:

Пример выходной шины

Предположим, трехбитный ALU из предыдущего примера дает результат, который мы хотим отображение как на семисегментном индикаторе, так и на трех зеленых светодиодах.Чтобы сделать пример завершено, предположим, что ALU также создает четыре бита кода состояния с именем CVNZ [3..0], которые мы хотим отображать на втором семисегментном дисплее, а также на еще четырех зеленых светодиодах.

В этом примере мы можем воспользоваться нотацией конкатенации битов Quartus, что просто означает перечисление имен битов в шине в порядке слева направо, разделенных запятыми. Например, вместо обозначения шины A [2..0] мы могли бы использовали более утомительную форму конкатенации битов: A [2], A [1], A [0] . Но немного конкатенация экономит время при настройке подключений к массиву зеленых светодиодов выходные контакты:

На приведенном выше рисунке в середине названия автобуса есть 0 , что требует некоторого объяснение. В примере восемь выходных контактов (Green_LED [7..0]), но только семь входных. значения (4 для CVNZ [3..0] плюс 3 для Результата [2..0]). Идея состоит в том, чтобы просто подключить логику 0 к дополнительный светодиод Green_LED [3], поэтому он всегда выключен. Но «0» должен быть настроен как именованный провод для этого. (Мы могли бы использовать другое имя, например «Logic_0», но просто «0» работает нормально.) Итак, где-то на этой схеме есть эта небольшая структура:

Пример модуля к модулю

Основываясь на предыдущем примере, и учитывая модуль с именем hex2sevenseg, который преобразует 4-битный двоичный вход в семь выходов, необходимых для отображать шестнадцатеричные значения, выходы нашего трехбитного АЛУ могут быть подключены к входы двух экземпляров этого модуля такие:

Последовательные конструкции

Полный проект сумматора использует только комбинационную логику.Когда вы делаете проекты, в которых используется последовательные схемы, вам нужно будет иметь дело с часами в вашем дизайне. Есть три различные схемы тактового генератора на макетной плате DE1. Вы также можете управлять своим последовательные схемы с использованием любой из синих кнопок в качестве тактового сигнала.

Синие кнопки генерируют инвертированные входы для FPGA: нажатие кнопки производит ноль, и если не нажимать его, вы получите единицу. Самый простой способ справиться с этим — обычно подключите кнопки к инверторам на испытательном стенде.Но сделав это для входов часов в триггеры будут генерировать некоторые предупреждения от Quartus. Вы должны уметь игнорировать эти особые предупреждения.

Quartus выполняет временной анализ для всех ваших проектов, чтобы убедиться, что задержки распространения в ваша комбинационная логика не превышает период используемого вами тактового сигнала. В причина, по которой вы можете игнорировать предупреждения при использовании кнопки в качестве ручных часов, заключается в том, что вы невозможно нажать кнопку достаточно быстро, чтобы повлиять на задержки распространения в ваша схема.Но для других источников часов вы можете сказать Quartus, насколько быстро они который вы хотите использовать, и синхронизирующий анализатор проверит, соответствует ли ваш дизайн требуемые временные ограничения. Для проектов, которые вы делаете, это никогда не должно быть проблемой, но вы можете подавить некоторые предупреждения от анализатора времени, если вы настроите часы информация для ваших последовательных дизайн-проектов.

Третий пункт в меню предназначен для.В разделе «Classic Timing Analyzer» Настройки »установите« Требуемый fmax по умолчанию »равным скорости тактовых импульсов DE1. вы используете для своего дизайна, и все должно быть в порядке. Если вы посмотрите на Окно отчета о компиляции, которое создается при сборке проекта, вы можете увидеть «Наихудший случай tpd» и общее количество путей задержки распространения через ваш дизайн, если таковой имеется, не соответствует указанному вами fmax. Название fmax означает fmax, максимальная частота тактовый сигнал, а имя tpd означает tpd, самое длинное распространение время задержки для сети.

Файлы SDC для последовательных дизайнов

Начиная с Quartus II версии 10, появляется много предупреждений, некоторые из которых являются «критическими», которые вы можете устранить это, добавив файл Synopsis Design Constraints (SDC) в ваш последовательный проект. Файл SDC — это текстовый файл, который в данном случае описывает период тактового сигнала, используемого в проект. Quartus анализирует задержки распространения в последовательных сетях и использует информацию в файле SDC, чтобы убедиться, что период времени достаточно длинный для худшего случая задержки в канале данных проекта.

Вы можете создать файл SDC из меню «Файл / Создать»: он находится в разделе «Другие файлы» в внизу панели меню. Для частоты 50 МГц, подключенной к входному выводу с именем «часы», вы можете используйте в своем файле следующий код:

create_clock -period 20.000 \ -waveform {0,000 10.000} \ [get_ports часы]

В первой строке указано, что период часов составляет 20 нсек, во второй строке указано возрастание. край тактового сигнала наступает через 0 нсек после периода тактового сигнала, а задний фронт наступает через 10 нс в часовой период.(Это описывает часы с рабочим циклом 50%: первая половина каждый цикл он включен, а вторая половина выключена.) Последняя строка говорит, что часы поступает от входного контакта с именем «часы». Обратные косые черты на концах первых двух строк являются маркерами продолжения: вы можете опустить их и ввести весь файл всего в одной строке если хочешь. Если вы используете обратную косую черту, они должны быть последними. на линиях, в которых вы их используете.Даже пробелы справа от них вызовут ошибки при попытке построить свой проект. Так что это может быть проще набрать:

create_clock -period 20.000 -waveform {0.000 10.000} [часы get_ports]

После того, как вы ввели свой файл SDC, сохраните его, используя имя файла, которое кажется подходящим для ваш проект и убедитесь, что он добавлен в файлы проекта. Шаг сборки должен сгенерировать только три предупреждения и никаких ошибок.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *