Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Основы проектирования ПЛИС и БМК. Практикум
.pdf
Выбор типа моделирования (simulation mode) осуществляется в разделе Simulator
Settings окна Settings пункта меню Assignment.
В случае выбора функционального моделирования необходимо предварительно
создать список соединений узлов схемы, используя команду Processing/Generate
Functional Simulation Netlist.
Создание исходного файла с тестовыми воздействиями
Для создания файла необходимо выбрать File/New, в открывшемся диалоговом
окне в группе Verification/Debugging Files выделить строку Vector Waveform File и
нажать ОК. В результате появится пустое окно редактора временных диаграмм с
именем по умолчанию Waveform1. vwf. Созданный файл необходимо сохранить,
используя команду меню File/Save As. Программа автоматически предложит сохранить
файл с именем, совпадающим с именем файла верхнего уровня проекта, присвоив ему
расширение .vwf. При этом необходимо обратить внимание на наличие флажка около
надписи Add file to current project (добавить файл к текущему проекту).
Для удобства, на область временных диаграмм нанесена временная сетка,
предназначенная для визуальной привязки сигналов к конкретным временным
интервалам. Используя команду меню Edit/Grid Size можно изменить шаг временной
сетки. С помощью команды меню Edit/End Time можно изменить время окончания
моделирования, т.е. изменить время всего процесса моделирования.
Добавление входных, выходных и промежуточных сигналов
Для этого достаточно дважды щелкнуть мышью в области задания входных и
выходных узлов редактора временных диаграмм или в меню выбрать Edit/Insert Node or
Bus (вставить узел или шину). В появившемся диалоговом окне следует нажать кнопку
Node Finder и далее в одноименном окне – кнопку List, после чего в поле Nodes Found
отобразятся все узлы проекта (если в поле Filter установлено pins: all). Те из узлов,
которые необходимы для выполнения моделирования, перемещаются в поле Selected
Nodes с помощью кнопки . Если необходимы все узлы, то используется кнопка .
После возвращения (нажатием ОК) в поле временных диаграмм редактора
появляются оси для всех выбранных сигналов. Причем в отличие от осей временных
диаграмм входных сигналов оси для выходных сигналов имеют неизвестное на данный
момент состояние, поэтому им по умолчанию присваивается значение X (forcing
unknown).
Редактирование временных диаграмм входных сигналов
Чтобы задать на некотором входе временную диаграмму сигнала на всем интервале
моделирования, необходимо выделить этот вход щелчком мыши в поле Value. Если
необходимо задать временную диаграмму сигнала на определенном интервале
моделирования, необходимо установить курсор мыши в области диаграмм на временную
ось этого сигнала в точке начала его задания и, удерживая левую кнопку мыши,
переместить курсор в конец требуемого временного интервала. При этом на временной
диаграмме прорисуется прерывистой линией прямоугольник серого цвета. После
отпускания кнопки мыши выделенный интервал закрасится голубым цветом.
21

Временной интервал можно выделить сразу для нескольких сигналов, включая шины. В
этом случае курсор мыши надо перемещать также и в вертикальном направлении, чтобы в
прорисованный прямоугольник попадали необходимые сигналы и шины.
После выделения интервала моделирования в левой части окна редактора
активизируется панель инструментов для введения входных воздействий, оформленная
в виде ряда пиктограмм.
Панель инструментов предоставляет, в частности, следующие возможности.
1. Задать уровень логического 0 на предварительно выделенном участке временной
оси. Аналогично задается уровень логической 1, неопределенное состояние X и
высокоимпедансное состояние Z.
2. Инвертировать сигнал INV на выделенном временном интервале.
3. Ввести тактовый сигнал выбором пиктограммы с часами Overwrite Clock. При
этом в окне Clock задаются границы временного интервала, период следования,
смещение и скважность формируемых синхроимпульсов.
После того как все входные сигналы заданы необходимо сохранить файл
временных диаграмм.
Работа с временными маркерами
Положение главной маркерной линии на временных диаграммах можно изменять,
используя курсор. Значения сигналов для текущего положения курсора, отображаются
в столбце Value at. В случае необходимости отметить некоторые базовые моменты
времени, можно использовать команду Edit/Insert Time Bar. В открывающемся окне
необходимо выбрать время, соответствующее базовому моменту времени и единицу его
измерения. После нажатия ОК дополнительная маркерная (пунктирная) линия,
соответствующая введенному времени, появится на временных диаграммах.
Теперь при перемещении главной маркерной линии над линиями базовых
моментов времени будет отображаться их расстояние (длительность временного
интервала) от главной маркерной линии.
При необходимости, любую из введенных линий базовых моментов времени,
можно преобразовать в главную маркерную линию. Для этого достаточно правой кнопкой
мыши нажать на курсор маркера, расположенного в верхней части линии маркера, и
выбрать из списка необходимое действие.
Выполнение моделирования и отчет о моделировании
Система Quartus II позволяет выполнить моделирование, как всего проекта,
так и его любой составной части. Типовые параметры по умолчанию задаются
системой моделирования автоматически при создании нового проекта. При
необходимости, эти параметры можно отредактировать с помощью инструмента Tool,
вызываемого из меню Processing.
Запустить процесс моделирования проекта можно несколькими способами:
В окне Simulator Tool нажать кнопку Start.
В меню Processing вызвать команду Start Simulation.
Нажать кнопку с пиктограммой на панели инструментов главного окна.
После запуска начинается процесс моделирования, который выполняется в
фоновом режиме и, в случае успешного выполнения, заканчивается появлением отчета
22

о моделировании — Simulation Report. В правой части отчета расположатся
временные диаграммы, описывающие работу проекта при заданных входных
воздействиях.
Во время моделирования, так же как и при компиляции, работает процессор
сообщений, формируя информационные сообщения, предупреждения и сообщения об
ошибках.
В качестве примера на рисунках приведены соответственно исходный файл с
тестовыми воздействиями, отчеты о функциональном (Functional) и временном (Timing)
моделировании схемы «медленного» синхросигнала, рассмотренной в предыдущей
лабораторной работе. Не трудно заметить, что во втором случае, помимо собственно
импульсов переноса на выходе мегафункции счетчика carry, наблюдаются некоторые
всплески малой длительности. Этим объясняется тот факт, что в схемах заданий
предыдущей работы рекомендуется в качестве выхода «медленного» синхросигнала
использовать старший разряд счетчика.
В целом же временные диаграммы подтверждают правильность
функционирования схемы после подачи разрешающего сигнала с движкового
переключателя SW9.
23

2. Порядок выполнения задания
1. Ознакомиться с содержанием практического занятия и его программным
обеспечением.
2. Изучить основные возможности модуля Simulator САПР Quartus II.
3. Создать исходный файл с тестовыми воздействиями для моделирования схемы,
разработанной в соответствии с практическим заданием предыдущей работы.
4. Выполнить функциональное моделирование проекта ПЛИС.
5. Выполнить временное моделирование проекта ПЛИС.
6. Оформить протокол и ознакомиться с контрольными вопросами.
3. Содержание отчета
1. Название и цель занятия.
2. Скриншот схемы, созданной в графическом редакторе Quartus II.
3. Скриншот исходного файла с тестовыми воздействиями.
3. Скриншот Simulation Report для функционального моделирования.
4. Скриншот Simulation Report для временного моделирования.
4. Основные выводы по выполненному заданию.
4. Контрольные вопросы
1. Назначение и основные возможности модуля Simulator САПР Quartus II.
2. Как создается исходный файл с тестовыми воздействиями?
3. Как добавляются входные и выходные сигналы в исходный файл?
4. Как осуществляется редактирование временных диаграмм входных сигналов?
5. Как задаются тактовые сигналы в исходном файле?
6. В чем отличие между функциональным и временным моделированием ПЛИС?
7. Сравнить полученные временные диаграммы и объяснить отличия между ними.
8. Объяснить причины возникновения всплесков сигналов при моделировании.
9. Как осуществляется моделирование проекта ПЛИС в среде Quartus II?
10. Для чего выполняется моделирование проекта ПЛИС?
24

Практическое занятие №5
НАЗНАЧЕНИЕ СИГНАЛОВ ПРОЕКТА ВЫВОДАМ КОРПУСА
И КОНФИГУРИРОВАНИЕ ПЛИС В СРЕДЕ QUARTUS II
Цель занятия: Изучение редактора назначений Pin Planner пакета Quartus II,
приобретение навыков макетирования проекта на стенде SDK-6.1/E.
1. Графический редактор назначений Pin Planner
Для осуществления связи реализованного на ПЛИС проекта с окружающей средой,
необходимо выполнить назначения входных и выходных сигналов проекта выводам
корпуса ПЛИС. Причем назначения производятся перед окончательной компиляцией
проекта. В пакете Quartus II для выполнения этой задачи предназначены следующие
средства.
1. Интерактивный графический редактор назначений контактов ввода-вывода Pin
Planner.
2. Редактор назначений Assignment Editor.
3. Файл с установками проекта, имеющий расширение .qsf.
Наибольшей наглядностью в работе обладает графический редактор Pin Planner,
который вызывается одноименной командой из меню Assignments или щелчком мыши по
пиктограмме .
Графический редактор содержит три основных окна. На одном из них представлено
графическое изображение выводов корпуса ПЛИС (Package View). Второе окно (All Pins
list) в нижней части панели, содержит таблицу со списком всех внешних сигналов проекта
и выполненных их назначениях выводам корпуса ПЛИС. Третье окно (Groups list) в левой
части панели, содержит таблицу, аналогичную предыдущей, только в ней содержатся
групповые сигналы или шины. Назначения можно осуществить, используя любое из этих
окон.
Использование окна Package View
Вначале с помощью щелчка мыши необходимо выделить имя сигнала или шины в
списке имен. Затем, нажав и не отпуская левую кнопку мыши, следует переместить ее
курсор на графическое обозначение назначаемого контакта. При этом к стрелке курсора
прикрепится надпись с именем выбранного сигнала, а внизу справа от курсора появится
окно с указанием координаты контакта и возможности его назначения. После отпускания
кнопки мыши автоматически произойдет заполнение полей Location, I/O Bank, VREF
Groups в таблицах со списком имен проекта. Причем строка таблицы закрасится цветом,
соответствующим цвету используемого банка ввода-вывода.
Назначение сигнала может быть выполнено путем «перетаскивания» его имени на
графическое обозначение банка ввода-вывода. Предварительно, чтобы отобразить банки в
окне Package View следует воспользоваться командой Show I/O Banks из контекстно-
зависимого меню или кнопкой на панели инструментов графического редактора
контактов ПЛИС.
Окно Package View также может быть использовано и для редактирования
назначений выводов. Для этого двойным щелчком мыши по изображению вывода на
25

корпусе ПЛИС вызывается окно Pin Properties, используя которое можно просмотреть
свойства выбранного контакта ввода/вывода микросхемы и, в случае необходимости,
выполнить редактирование его назначения.
Использование окна All Pins list
Вначале необходимо выполнить компиляцию проекта, чтобы в окнах
графического редактора выводов ПЛИС появились списки внешних сигналов проекта с
указанием направления передачи информации. Затем двойным щелчком мыши в графе
Location, напротив имени назначаемого сигнала вызвать выпадающий список.
В этом списке перечислены стороны корпуса ПЛИС, содержащие ресурсы ввода/вывода,
банки ввода/вывода, закрашенные разными цветами, и непосредственно координаты
контактов корпуса ПЛИС с указанием, к какому банку ввода/вывода они относятся, какие
трассировочные ресурсы используют (строк или столбцов), какой стандарт ввода/вывода
реализуют. Причем, соответствие контактов банкам ввода-вывода дополнительно
отображается отдельным цветом, таким же, как и в окне Package View.
Если в списке указать только номер банка ввода/вывода, или сторону корпуса
ПЛИС, то редактор сам выполнит назначение подходящего контакта. В противном случае,
следует указать конкретный вывод микросхемы. Выбор из списка выполняется
стандартным образом, путем двойного щелчка мыши по соответствующей строке.
При выделении имени сигнала в списке, соответствующий вывод будет выделен
цветом и в окне с изображением выводов корпуса ПЛИС, и в окне Pad View с
отображением граничных областей кристалла.
Полезной особенностью окна All Pins list является возможность фильтрации
отображаемых в окне выводов. Для этой цели в состав окна включено поле Filter, в
котором можно выбрать критерий, из выпадающего списка.
Чтобы проверить допустимость созданных назначений, следует выполнить
команду Processing/Start/Start I/O Assignment Analysis из меню менеджера проекта или
воспользоваться кнопкой на панели инструментов графического редактора выводов.
2. Макетирование проекта
Макетирование (prototyping) проекта осуществляется на стенде SDK-6.1/E [1]. Для
выполнения назначений входных и выходных сигналов проекта выводам корпуса
реальной ПЛИС Cyclone необходима карта ее выводов, задействованных в работе стенда.
Элементы ввода-вывода стенда SDK-6.1/E
Используемыми в работе элементами стенда являются светодиоды D3 – D10, D11
“CARRY”, кнопка SW10 “CONTROL” и движковые переключатели SW2 – SW9.
Светодиоды активны при низком уровне сигнала и подсоединяются к выводам
ПЛИС с помощью резисторов, ограничивающих ток. Кнопка SW10 соединяется с
выводом ПЛИС через подтягивающий резистор. Нажатому состоянию кнопки
соответствует 0, а отпущенному – 1. Переключатели в нижнем положении задают на
выводах ПЛИС значение 0, а в верхнем – 1. Номера выводов ПЛИС Cyclone,
соответствующие этим элементам стенда, приведены в таблице.
26

Кнопка
Движковые переключатели
Обозначение
на стенде
SW10“CONTROL”
SW2
SW3
SW4
SW5
SW6
SW7
SW8
SW9
Выводы
Cyclone
133
123
119
122
114
121
113
120
112
С в е т о д и о д ы
Обозначение
на стенде
D11”CARRY”
D3
D4
D5
D6
D7
D8
D9
D10
Выводы
Cyclone
103
111
110
109
108
107
106
105
104
Тактовые сигналы встроенного генератора стенда Clk_40MHz поступают на
выводы 92, 93 корпуса ПЛИС Cyclone.
Конфигурирование ПЛИС
Так как для стенда SDK-6.1/E требуется конфигурационный файл с расширением
.rbf [1], необходимо проверить опцию включения его создания при компиляции проекта.
Для этого в меню Quartus II следует открыть командой Assignments/Device окно настроек,
в котором нажать кнопку Device and Pin Options, а затем выбрать в открывшемся окне
вкладку Programming Files и проверить, отмечен ли галочкой пункт Raw Binary File
(.rbf). Во избежание «генерации» схемы в связи с тем, что по умолчанию
неиспользованные выводы ПЛИС соединяются с общей шиной (т.е., возникает риск
короткого замыкания), в этом же окне необходимо выбрать вкладку Unused Pins и
установить As input tri-stated.
Процедура окончательной компиляции проекта в Quartus II выполняется
аналогично описанной в практическом занятии №2.
Для загрузки во FLASH-память стенда конфигурационного rbf-файла проекта
можно воспользоваться в качестве шаблона папкой FPGA_loading, скопировав ее в
директорию проекта. Затем необходимо заменить в подпапке bin исходные
конфигурационные файлы на созданный и провести соответствующую корректировку
пакетного файла load_to_page.bat, воспользовавшись утилитой FAR Manager. Перед
редактированием пакетного файла необходимо также задаться номером страницы
загрузки во FLASH-памяти стенда и именем последовательного порта. Имя порта, в т.ч.
виртуального при загрузке через USB, следует определить с помощью Диспетчера
устройств компьютера.
В качестве примера на рисунке приведена схема генератора «медленного»
синхросигнала, рассмотренная в предыдущих лабораторных работах, с назначенными
выводами корпуса ПЛИС Cyclone после компиляции.
27

Информация об аппаратных средствах
В ходе окончательной компиляции создаются различные рапорты и диаграммы, в
т.ч. информация об аппаратных средствах ПЛИС, увидеть которую можно выбором
одного из средств обзора в меню Tools. В частности, увидеть технологическую карту
проекта можно с помощью Tools/Netlist Viewers/Technology Map Viewer, а детали
вентильного уровня проекта станут доступными в их виде уровня регистровых передач
(RTL) с помощью Tools/Netlist Viewers/RTL Viewer. Топологию проекта можно увидеть с
помощью редактора Chip Planner в меню Tools. Если дважды щелкнуть левой кнопкой
мыши на одном из логических блоков, занятых в ПЛИС под проект, появится детальный
вид логического элемента с характеристиками. При этом более ярким цветом будут
выделены цепи, используемые в данном блоке.
На рисунках ниже приведены технологическая карта и схема одного из логических
элементов блоков ПЛИС проекта генератора «медленного» синхросигнала.
3. Порядок выполнения задания
1. Ознакомиться с содержанием практического занятия, его оборудованием и
программным обеспечением.
2. Изучить основные возможности графического редактора Pin Planner САПР Quartus II.
3. Назначить выводам корпуса ПЛИС Cyclone входные и выходные сигналы схемы,
разработанной в соответствии с практическим заданием в предыдущих работах.
28

4. Провести окончательную компиляцию проекта.
5. Загрузить в стенд SDK-6.1/E созданный конфигурационный файл. Номер страницы
записи во FLASH-памяти и режим загрузки (RS-232 или USB) задаются
преподавателем.
6. Запустить программу конфигурирования ПЛИС, для чего установить на
переключателях PAGE номер конфигурации ПЛИС (в двоичном четырехразрядном
коде), соответствующий заданному в п.5 номеру страницы загрузки FLASH-памяти, и
нажать кнопку RESET для рестарта системы.
7. Проверить работу схемы на соответствие заданию с помощью элементов вводавывода стенда SDK-6.1/E.
8. Сформировать технологическую карту проекта и ознакомиться с организацией одного
из логических элементов произвольного блока ПЛИС, занятого под проект.
9. Оформить протокол и ознакомиться с контрольными вопросами.
4. Содержание отчета
1. Название и цель работы.
2. Скриншот схемы задания с назначенными выводами корпуса ПЛИС Cyclone.
3. Скриншот технологической карты проекта созданной схемы.
4. Скриншот окна схемы любого логического элемента одного из блоков ПЛИС.
5. Основные выводы по выполненной работе.
5. Контрольные вопросы
1 . Назначение и основные возможности графического редактора Pin Planner.
2 . Какие средства назначения сигналов выводам ПЛИС используются в среде Quartus II?
3 . Какие окна содержит графический редактор Pin Planner?
4 . Как выполняется назначение сигналов выводам ПЛИС в окне Package View?
5 . Поясните особенности работы выбранного логического элемента блока ПЛИС.
6 . Как выполняется назначение сигналов выводам ПЛИС в окне All Pins list?
7 . Как проверяется допустимость созданных назначений?
8 . Особенности функционирования элементов ввода-вывода стенда SDK-6.1/E.
9 . Как создается конфигурационный файл ПЛИС для стенда SDK-6.1/E?
10. Для чего выполняется окончательная компиляция проекта?
Практическое занятие №6
ОСНОВЫ ПРОЕКТИРОВАНИЯ ПЛИС В СРЕДЕ XILINX ISE
Цель занятия: Изучение основ проектирования ПЛИС, приобретение навыков
работы с графическим редактором пакета ISE фирмы Xilinx.
29

1. Краткие сведения о САПР Xilinx ISE
Integrated Software Environment (ISE) – САПР ПЛИС фирмы Xilinx (США),
обеспечивающая весь процесс проектирования цифровых устройств на базе ПЛИС от
ввода исходного описания до программирования микросхем. Также как и САПР Quartus II
одного из конкурентов – фирмы Altera, наряду с текстовым вводом на основе языков
описания аппаратуры ISE позволяет ввести в память компьютера электрическую схему с
помощью графического редактора.
Главное окно ISE называется «Навигатор проекта» (Project Navigator). В этом окне
расположены инструментальные панели (иерархия, процессы, общие сведения о проекте)
и консоль сообщений.
Создание проекта
Перед запуском программы необходимо создать папку (в отдельном каталоге,
например D:\XProject) для хранения файлов проекта, в имени которой и пути
отсутствуют символы кириллицы и пробелы. Открыв ISE Design Suite (пиктограмма ),
следует выбрать в меню File/New Project или нажать соответствующую кнопку в поле
Project commands. В появившемся окне мастера New Project Wizard открывается
страница Create New Project, в которой необходимо указать имя проекта (Name), его
расположение (Location) и путь к рабочей директории (Working Directory). В качестве
типа верхнего (топового) уровня проекта в поле Top-level source type следует выбрать
Schematic.
На следующем шаге, предлагаемом мастером, на странице задания настроек
проекта Project Settings выбираются семейство ПЛИС (Family) – XC9500XL CPLDs,
конкретная микросхема (Device) – XC95144XL, используемая в лабораторном стенде
SDK-7.1R1, тип корпуса (Package) – TQ100 и скорость (Speed) – 5. Тип синтезатора и
другие настройки принимаются по умолчанию.
На последней странице Project Summary появляется сводка сделанных установок.
Нажатием кнопки Finish завершается работа мастера и процесс создания проекта.
Далее в него добавляются файлы, описывающие логику проекта. Чтобы создать
файл, содержащий описание схемы, достаточно выбрать Project/New Source… В
открывшемся окне в графе Select source type, file name and its location необходимо
выбрать вид представления листа Schematic, а правее в соответствующей графе задать
имя будущего файла и место его нахождения. Для включения файла в проект следует
проверить наличие флажка Add to project.
Следующая страница является итоговой. В результате откроется окно
графического редактора ECS Schematic Editor с загруженным в него пустым файлом с
расширением .sch.
Создание схемы
В ISE Design Suite электрическая схема состоит из символов элементов,
соединяющих их линий и маркеров выводов. Для ввода символа необходимо
воспользоваться кнопкой Add Symbol, расположенной в панели инструментов слева от
рабочего окна графического редактора. В результате в левой части окна Project Navigator
30
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
