- •1.1. Назначение и возможности Quartus II
- •1.2. Понятие проекта в Quartus II
- •1.3. Процедура проектирования в Quartus II
- •1.4. Запуск Quartus II и открытие проекта
- •1.5. Графический пользовательский интерфейс Quartus II
- •1.5.1. Окна менеджера проекта Quartus II
- •1.5.2. Навигатор проекта
- •1.6. Создание нового проекта
- •Часть 2 Ввод описания проекта в Quartus II
- •2.1. Ввод и редактирование схем в графическом редакторе
- •2.1.1. Назначение и возможности графического редактора Quartus II
- •2.1.2. Создание нового схемного модуля
- •2.1.3. Окно графического редактора схем
- •2.1.4. Ввод элементов в схему
- •2.1.5. Соединение элементов в схеме
- •2.1.5.1. Рисование одиночных соединений
- •2.1.5.2. Рисование шин
- •2.1.6. Элементы текстового и графического оформления схемы
- •2.1.7. Редактирование схемы
- •2.1.8. Создание графического обозначения схемного модуля
- •2.1.9. Создание текстового описания на языке hdl для схемного модуля
- •2.1.10. Создание файла декларации компонента на языке hdl для схемного модуля
- •2.2. Ввод и редактирование текстового описания проекта
- •2.2.1. Назначение и возможности текстового редактора
- •2.2.2. Создание нового файла с текстовым описанием
- •2.2.3. Окно текстового редактора
- •2.2.4. Использование шаблонов в текстовом описании
- •2.2.5. Редактирование текстового описания
- •2.2.6. Преобразование файлов с текстовыми описаниями в другие виды файлов
- •2.3. Просмотр и редактирование условных графических обозначений элементов
- •2.4 Ввод и редактирование содержимого модулей памяти
- •2.4.1. Назначение и возможности редактора содержимого модулей памяти
- •2.4.2. Создание нового файла инициализации памяти
- •2.4.3. Редактирование содержимого памяти
- •2.5. Использование Mega Wizard Plug-In Manager для создания и редактирования мегафункций
- •2.6. Создание и редактирование назначений контактов ввода-вывода проекта
- •2.6.1 Окно графического редактора назначений выводов проекта
- •2.6.2. Использование окна Package View для назначения и редактирования выводов проекта
- •2.6.3. Назначение контактов ввода-вывода в окне All Pins list
- •Часть 3 Моделирование проекта
- •3.1. Последовательность моделирования
- •3.2. Окно утилиты моделирования
- •3.3. Задание параметров моделирования
- •3.4. Создание файла с временными диаграммами
- •3.5. Окно редактора временных диаграмм
- •3.6. Создание и редактирование временных диаграмм
- •3.6.1. Задание длительности временных диаграмм
- •3.6.2. Задание контрольных точек схемы
- •3.6.3. Использование временной сетки
- •3.6.3.1. Задание размера временной сетки
- •3.6.3.2. Привязка временных диаграмм к временной сетке
- •3.6.4. Задание входных воздействий
- •3.6.4.1. Выделение временного интервала
- •3.6.4.2. Задание синхросигнала
- •3.6.4.3. Задание состояний счетчика на шине
- •3.6.4.4. Задание постоянного значения сигнала или шины
- •3.6.4.5. Задание случайного значения сигнала или шины
- •3.6.5. Редактирование временных диаграмм
- •3.6.6. Использование временных меток для анализа временных диаграмм.
- •3.7. Запуск моделирования
- •3.8. Наблюдение отчета о моделировании
- •3.9. Сравнение временных диаграмм
- •Часть 4 Компиляция проекта
- •4.1. Настройка параметров и запуск компиляции проекта
- •4.2. Отображение результатов компиляции проекта
- •Часть 5 Программирование кристалла плис
- •Библиографический список
2.6.3. Назначение контактов ввода-вывода в окне All Pins list
Назначение контактов ввода/вывода в окне All Pins list графического редактора, выполните следующим образом.
1.Запустите компиляцию проекта. Это необходимо сделать для того, чтобы в окнах графического редактора выводов ПЛИС появились списки внешних сигналов проекта с указанием направления передачи информации.
2. Выполните двойной щелчок мышью в графе Location, напротив имени назначаемого сигнала. Появится выпадающий список, показанный на рис. 2.6.3.1.
В этом списке перечислены стороны кристалла микросхемы, содержащие ресурсы ввода/вывода, банки ввода/вывода, закрашенные разными цветами, и непосредственно координаты контактов корпуса микросхемы с указанием, к какому банку ввода/вывода они относятся, какие трассировочные ресурсы используют (строк или столбцов), какой стандарт ввода/вывода реализуют. Причем, соответствие контактов банкам ввода-вывода дополнительно отображается отдельным цветом, таким же, как и в окне Package View.
Если в списке указать только номер банка ввода/вывода, или сторону кристалла ПЛИС, то редактор сам выполнит назначение подходящего контакта. В противном случае, следует указать конкретный вывод микросхемы. Выбор из списка выполняется стандартным образом, путем двойного щелчка мышью по соответствующей строке.
При выделении имени сигнала в списке, соответствующий вывод будет выделен цветом и в окне с изображением выводов корпуса ПЛИС, и в окне Pad View с отображением граничных областей кристалла.
Чтобы зарезервировать вывод, для возможного последующего использования выполните следующее.
1. Выделите строку << new node>> в списке имен, щелкнув по ней мышью.
2. Введите имя сигнала, для которого планируете зарезервировать вывод микросхемы ПЛИС.
3. Назначьте для него вывод микросхемы, как было описано выше.
4. В графе Reserved выберите тип сигнала для зарезервированного вывода из выпадающего списка. Чтобы появился список, щелкните дважды мышью в соответствующей графе таблицы.
Аналогичным образом выполните резервирование других выводов.
Полезной особенностью окна All Pins list является возможность фильтрации отображаемых в окне выводов. Для этой цели в состав окна включено поле Filter, в котором можно выбрать критерий, из выпадающего списка, приведенного на рис 2.6.3.2.
Рис. 2.6.3.2. Варианты заполнения поля Filter
Чтобы осуществить
проверку допустимости созданных
назначений, выполните команду Processing>
Start>
Start
I/O
Assignment
Analysis
из меню менеджера проекта или
воспользуйтесь кнопкой
на панели инструментов графического
редактора выводов.
Результат выполненной проверки будет отражен в выводимом сообщении.
Для получения более подробного отчета о результатах проверки назначений выводов выполните полную компиляцию проекта, и в папке Fitter отчета о компиляции получите всю необходимую информацию.
Часть 3 Моделирование проекта
3.1. Последовательность моделирования
В состав пакета Quartus II входит модуль Simulator, предназначенный для моделирования проекта. Чтобы выполнить функциональное, а затем и временное моделирование некоторого устройства, необходимо создать файл с тестовыми сигналами. Во время моделирования эти сигналы будут подаваться на созданную в процессе проектирования модель устройства с целью получения его реакций на поданные воздействия. Наблюдая результаты моделирования, разработчик определяет соответствие поведения проектируемого устройства требованиям технического задания.
Вначале проверяется правильность функционирования устройства. При этом временные задержки распространения сигналов в схеме не учитываются. Такое моделирование называется функциональным. Для его выполнения достаточно создать модель устройства в виде списка соединений узлов схемы (netlist for simulation). Это можно сделать сразу после ввода описания проекта, выполнив в выпадающем меню Processing менеджера проекта команду Generate Functional Simulation Netlist, как показано на рис. 3.1.1.
Рис. 3.1.1. Команда создания списка соединений для моделирования проекта из меню Processing
Также как и компиляция, моделирование всегда выполняется для модуля верхнего уровня в проекте. Поэтому, если требуется промоделировать модуль нижележащего уровня, необходимо объявить его модулем верхнего уровня, после чего сгенерировать список соединений и выполнить моделирование.
После устранения, выявленных в процессе функционального моделирования ошибок, может быть выполнено моделирование временное.
В этом случае учитываются задержки распространения сигналов, вызванные не только логическими элементами, но и цепями соединений. Поэтому временное моделирование выполняется после полной компиляции проекта и получения модели устройства, учитывающей размещение элементов схемы на площади выбранного кристалла ПЛИС и реализацию соединений.
Целью временного моделирования, является получение временных характеристик разрабатываемого устройства, приближенных к реальным. На основе анализа результатов временного моделирования выявляется соответствие полученных временных характеристик техническому заданию и принимается решение о завершении проектирования или внесении очередных изменений в проект.
Таким образом, при выполнении моделирования проекта необходимо выполнить следующую последовательность действий.
Создание исходного файла с тестовыми воздействиями.
Выполнение соответствующих установок для моделирования. В них необходимо указать какое моделирование будет выполнено, функциональное или временное, какой файл с тестовыми воздействиями использовать, задать временной интервал моделирования.
Генерация списка соединений для моделирования (functional simulation netlist), если моделирование функциональное, либо выполнение полной компиляции проекта, если моделирование временное.
Запуск моделирования. Для этого нужно щелкнуть мышью по пиктограмме
на панели инструментов, или выполнить
команду Start
Simulation
в выпадающем меню Processing
менеджера проекта.
Анализ отчёта о результатах моделирования.
