Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
51
Добавлен:
06.06.2015
Размер:
5.14 Mб
Скачать

Все это поправимо после редактирования, так называемого, конструкторского файла – User Constraints File (UCF).

Рис. 25. Начало работы по созданию конструкторского файла

В иерархическом списке находим надпись – Create Timing Constraints, для запуска процесса создания файла временной оптимизации.

Рис. 26. Готового UCF нет – создаем новый

Согласимся с предложением о создании и добавлении в проект файла временной оптимизации

Yes.

21

Рис. 27. В бланке можно прописать параметры тактового сигнала

Редактор конструкторского файла предлагает нам уточнить параметры периодческого сигнала MyCLK. Пропишем, что период 100 mkS, что верхняя полочка входного сигнала равна нижней (меандр) и сохраним файл.

Рис. 28. Или заполнить спецификацию предложенную мастером

Файл записываем. После того, как были внесены уточнения и изменения, синтез кристалла следует повторить. Таким образом мы подвердили, что осознаем пределы технологии и перечисляем ограниченность проектируемого устройства. За это пакет САПР ISE Xilinx снимает в иерархии рабочих файлов желтые треугольнички предупреждений.

22

Далее направим выходные сигналы счетчика LED0,.., LED3 на контакты, предусмотренные топологией печатной платы. Для этого инициируем редактор работы с контактами FloorPlan IO PreSynthesis. Иконка вызова этого оедактора находится в этом же блоке программ, что и редактор конструкторского файла – User Constraints.

Рис. 29. Рабочее окно редактора конструкторского файла

С помощью этого редактора необходимо открыть созданный выше конструкторский файл Schema.ucf и файл топологии кристалла Schema.ngd. Оба файла открываются в папке проекта – First.

Рис. 30. В папке проекта открываем файл топологии мкжсоединений компонентов

23

Рис. 31. Список файлов дополнятся указателем на имп ПЛИС

После открытия в поле контактов увидим список рабочих сигналов проекта. Пропишем в бланках Loc (Location) желательные контакты и сохраним этот подредактированный файл.

Рис. 32. Бланк редактора

Прописываем значения контактов для используемых сигналов.

24

Рис. 33. Формирование конструкторского файла

После записи сформированного конструкционного файла необходимо повторить процедуру встраивания проекта в ПЛИС (Implement Top Module). В полученном файле отчета просмотрите Pin List – необходимо убедиться, что желаемое и действительное совпали.

Обратите внимание – по мере продвижения по технологическому маршруту проектирования разрастается дерево файлов и процессов проекта. Успешно завершенный процесс встраивания содержал в себе не только механизмы синтеза (Synthesize), трансляции (Translate) и оптимизации (Fit), но и подготовку загрузочного файла конфигурации (Generate Programming File).

Функциональное и временное моделирование проекта

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

Упомянутые приборы в виртуальном облике присутствуют и в нашем САПР Xilinx ISE. В роли генератора будет созданный ниже файл управляющих воздействий, то есть спецификация сигналов, которые будем подавать на входы проектируемого устройства на ПЛИС, а качестве осциллографа – окно симулятора.

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

Важно другое. Симулятор Behavioral Simulation создает достаточно приблизительную модель проектируемого устройства.

После того, как мы внесем временные ограничения и пропишем контакты ПЛИС, так как предполагаем ее использовать на плате, может оказаться, что трассы проводников внутри могут оказаться длиннее, например, чем хотелось для передачи скоростного сигнала. И чтобы убедиться, что проблемы физики и топологии ПЛИС не повлияли на работоспособность проектируемого устройства, существует второй уровень моделирования – Post-Fit. Иногда эту модель называют физической.

25

Итак, интересные подробности создания функциональной модели.

Первоначально, в навигаторе открываем мастера для создания нового источника информации для проекта: Project -> New Source.

Рис. 34. Создание файла управляющих воздействий

Выберем тип источника – Test Bench Waveform – и назовем создаваемый файл takts. Это будет наш тактовый генератор. Далее соглашаемся с включением файла takts.tbw в проект, в окне мастера указываем, что сигнал MyCLK является входным, что работаем с ПЛИС типа CPLD (это очень важно) и записываем созданный файл.

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

26

На экране видим осциллограмму работы нашего генератора и далее, для создания функциональной модели (левый верхний угол), переводим навигатор в режим работы с симулятором

Behavioral Simulation. Файл takts.tbw записываем/

Рис. 36. Осциллограмма входного сигнала

Находясь в режиме работы с симулятором, выбираем файл takts.tbw в левом верхнем окне источников проекта и ниже, запускаем в окне процессов, Simulate Behavioral Model.

Рис. 37. Запуск симулятора

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

27

Рис.38. Результат работы симулятора

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

Рис. 39. Переключение диапазона рабочих сигналов

Конфигурирование кристалла ПЛИС

Результатом синтеза и моделирования является, в конечном итоге, файл конфигурации, который должен быть загружен в ПЛИС. Главным исполнителем транспортировки конфигурационного файла является интерфейс JTAG.

28

Кабель JTAG

Рис. 40. Взаимодействие САПР ISE Xilinx (PC) и отладочной платы

Интерфейс JTAG предназначен для подключения сложных цифровых микросхем или устройств уровня печатной платы к стандартной аппаратуре тестирования и отладки. На текущий момент этот интерфейс стал индустриальным стандартом IEEE-1149. Практически все сколько-нибудь сложные цифровые микросхемы оснащаются этим интерфейсом для:

выходного контроля микросхем при производстве;

тестирования собранных печатных плат;

прошивки микросхем с памятью;

отладочных работ при проектировании аппаратуры и программного обеспечения.

Важно понимать, что на интерфейс JTAG инженеры возлагают две различные задачи: первая – это граничное сканирование сложных кристаллов и электронных плат (Boundaty Scan), и вторая – организация загрузки. Собственно второй аспект применения JTAG мы и будем рассматривать. Все виды ПЛИС и современные микроконтроллеры с числом контактов более 40 содержат в своей архитектуре автомат для работы с JTAG (TAP Test Access Port – порт тестирования). Обычно для этой цели на микросхеме выделяется пять контактов - TMS, TCK, TDI, TDO и TRST.

Рис. 41. JTAG – порт ПЛИС

29

Функциональное назначение этих линий:

TDI (test data input — «вход тестовых данных») — вход последовательных данных периферийного сканирования. Команды и данные вводятся в микросхему с этого вывода по переднему фронту сигнала TCK;

TDO (test data output — «выход тестовых данных») — выход последовательных данных. Команды и данные выводятся из микросхемы с этого вывода по заднему фронту сигнала TCK;

TCK (test clock — «тестовое тактирование») — тактирует работу встроенного автомата управления периферийным сканированием. Максимальная частота сканирования периферийных ячеек зависит от используемой аппаратной части и на данный момент ограничена 25…40 МГц;

TMS (test mode select — «выбор режима тестирования») — обеспечивает переход схемы в/из режима тестирования и переключение между разными режимами тестирования.

TRST - сигнал для инициализации порта тестирования.

Рис. 42. Каскадирование устройств и JTAG

Интерфейс JTAG позволяет каскадировать различные устройства на плате, включая в цепочку не только ПЛИС, но и микроконтроллеры и Flash-память.

Для управления интерфейсом со стороны PC существуют разнообразные адаптеры LPT –JTAG, USBJTAG, RS232 – JTAG и SPI – JTAG.

Активизация процесса загрузки конфигурации ПЛИС происходит, в нашем случае, следующим образом.

В окне навигатора проекта, двойным щелчком левой кнопки мыши по надписи Configure Target Device, запускается процесс программирования ПЛИС.

30

Соседние файлы в папке VHDL 801а вопросы на экзамен