- •Содержание
- •Введение
- •1Лабораторная работа №1
- •1.1Создание проекта
- •1.2Создание схемы в графическом редакторе
- •1.3Моделирование работы устройства
- •1.4Временные параметры проекта
- •1.5Редактирование расположения выводов
- •1.6Синтез проекта
- •1.7Реализация проекта
- •Контрольные вопросы к лабораторной работе №1
- •2Лабораторная работа №2
- •2.1Стратегия разработки сложных цифровых устройств
- •2.2Создание модуля подавления дребезга (debounce)
- •2.3Создание модуля дешифратора семисегментного кода
- •2.4Создание модуля реверсивного счетчика
- •2.5Создание модуля делителя частоты
- •2.6Создание модуля мультиплексора
- •2.7Создание схемы верхнего уровня
- •2.8Отладка устройства
- •2.8.1Отладка модулей устройства
- •2.9Реализация проекта
- •2.10Работа с отладочной платой
- •2.10.1Конфигурация fpga
- •Список использованных источников
- •Приложение а Список индивидуальных заданий
- •Требования по выполнению индивидуального задания
- •Разработка цифровых устройств на базе плис
- •443086 Самара, Московское шоссе, 34.
1.3Моделирование работы устройства
Для моделирования устройства воспользуйтесь командой меню «Project/New source» и выберите из списка «VHDL Test Bench». Назовем новый файл «Main_test» и нажмем «Далее». Программа создает файл с описанием задания на моделирование. Увидеть его в составе проекта можно, выбрав слева вверху переключатель «Simulation». Выделяем тестовый модуль, после чего в списке процессов выбираем ''Simulate Behavioral model'', щелкаем правой кнопкой мыши и выбираем «Run». После этого открывается окно среды моделирования Isim.
Задание параметров сигнала RESET |
Задание параметров сигнала D2 |
Задание параметров тактового сигнала |
Задание параметров сигнала D1 |
Рисунок 4 — Задание параметров сигналов для моделирования
Зададим входные воздействия, как показано на рис. 4. Для этого щелкаем по имени сигнала в окне моделирования правой кнопкой и выбираем пункт «Force clock».
Далее запускаем моделирование «Simulation\Run». Окно с результатами моделирования приведено на рисунке 5. Попробуйте изменить временной масштаб задаваемых сигналов в 10, 100 раз и сравните результаты.
Рисунок 5 – Результаты моделирования работы устройства
Проверим соответствие получившихся сигналов нашим ожиданиям. Следует отметить, что результаты моделирования на этом этапе являются оценочными. Процесс «Simulate Behavioral Model» обеспечивает поведенческое моделирование устройства, исходя из функциональных особенностей компонентов, и не учитывает особенностей реализации устройства в выбранной ПЛИС. Полное моделирование обеспечивается с помощью «Simulate Post-Place & Route HDL Model». Эту операцию имеет смысл проделать несколько позднее, после того, как мы определимся с реализацией проекта.
1.4Временные параметры проекта
При создании цифрового устройства на базе ПЛИС разработчик может выдвигать целый ряд требований по быстродействию, энергопотреблению и др. При использовании пакета ISE данные требования могут быть учтены с помощью специальных ограничений («Constraints»), вводимых в процессе описания устройства. Подробно возможные ограничения описаны в [21Error: Reference source not found].
Поставьте переключатель в положение «Implementation», выделите в окне проекта схему и активизируйте процесс «Create timing constraints» откроется дополнительная вкладка редактора временных параметров проекта. В окне «Constraint type» выберите «Clock Domains» и укажите параметры внешнего тактового сигнала (clock). Введите значение 20.0 ns в поле Period, выберите из выпадающего списка имя цепи и задайте имя временному ограничению как показано на рисунке 6.
Рисунок 6 – Задание временных ограничений
Далее выберите в списке «Outputs», щелкните правой кнопкой по имени выходного сигнала, выберите пункт «Create constraints» и задайте в открывшемся окне «Clock to Pad» задержку относительно тактового сигнала Clock (10.0нс). Смысл этого ограничения ясен из рисунка: задержка распространения информационного сигнала не должна превышать интервала между активными перепадами тактового сигнала. 10 нс – это половина периода выбранного тактового сигнала.
Аналогично можно указать ограничения на задержку информационного сигнала относительно тактового (Pad to setup). Для этого выделим в списке сигналы d1 и d2, создадим группу. Для группы также зададим 10 нс, при этом информационные сигналы d1 и d2 будут поступать на вход триггера с приемлемым опозданием.
После внесения всех необходимых изменений сохраните файл и перейдите на вкладку «Design».
