Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа 1 итог.docx
Скачиваний:
9
Добавлен:
23.08.2019
Размер:
1.61 Mб
Скачать

2.2. Создание принципиальной схемы.

Для ввода библиотечных элементов в схемотехническом редакторе используется панель Symbols (рис.7), которая содержит элементы выбора: Categories, где можно выбрать определенные группы библиотечных символов по категориям (All Symbols, Buffers, Counter и так далее); Symbols, здесь перечисляются все символы, которые могут быть использованы в проекте; Symbol Name Filter, данное окно предназначено для ввода имени символа принципиальной схемы, который будет нужен для использования в проекте; Orientation, предназначен для указания, на сколько градусов перевернуть выбранный символ для отображения его на принципиальной схеме.

Рис. 7. Вкладка Symbols

Вводим в окне Symbol Name Filter, имя элемента and2(логическое и), в окне выбора Symbols автоматически отобразится библиотечный символ and2. Выбираем данный символ (and2) и перемещаем символ на рабочее поле схемотехнического редактора (рис.8). Чтобы отменить ввод следующего такого же символа или выбрать другую функцию можно нажать на клавиатуре клавишу Esc или выбрать на панели инструментов символ с изображением стрелочки выполняющую функцию – Select.

Рис. 8. Создание элемента “логическое И ”.

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

Для увеличения или уменьшения изображения служит другая панель инструментов: Выбираем на основной панели инструментов – добавление маркеров ввода-вывода (Add I/O Marker) кнопка . С помощью мышки совмещаем курсор с входом элемента and2 и нажимаем левую кнопку мышки для постановки входного маркера в наш проект. Система автоматически дает название всем элементам принципиальной схемы, в нашем случае входной маркер получил название XLXN_1. Нарисуем проводник (Wire) для выхода символа –and2, щёлкнем по кнопке ,совместим мышку с данным выводом, фиксируем один конец проводника (Wire) с выходом символа, нажав на левую кнопку мышки и удлиняем проводник до нужного размера, переместив мышку в другую позицию. Когда левая кнопка мышки будет отпущена, тогда будет зафиксирован второй вывод проводника (Wire).

Расположим в окне редактора друг под другом следующие элементы: and2; nand2; or2; nor2; xor2; xnor2 (рис.9). Они располагаются в библиотеке элементов Logic.

Рис. 9

Далее следует провести привязку выводов проекта к входам-выводам кристалла. Однотипные внешние элементы (кнопки, переключатели) могут быть объявлены как несколько одиночных элементов или как массив (на схеме шина). Для того чтобы убедится в этом кнопки мы объявим как единичные элементы, а переключатели и светодиоды как массивы (рис.10).

Рис.10

Добавим на схему маркеры ввода/вывода .

  1. Рисуем проводники от ножек первых двух элементов and2 и nand2Добавляем маркеры ввода/вывода (Add I/O Marker). С помощью мышки совмещаем курсор с входом элемента и нажимаем левую кнопку мыши для постановки входного маркера в наш проект. Назовём их: btn0, btn1, btn2, btn3 (Рис.11).

Рис. 11. Установка входных маркеров.

  1. Далее нам необходимо нарисовать шину, к которой будут подсоединяться входы оставшихся элементов. Для того чтобы проводник стал шиной, подсоединённый к нему маркер ввода нужно обозначить как sw(7:0). Для того чтобы соединить входы элементов с шиной выбираем элемент Add Bus Tap, для этого нажимаем на кнопку (рис.12.)

Рис. 12.

Также на этом этапе нужно задать имя каждому проводнику, подсоединяемому к шине (задать индексы переключателей, которые будут управлять данными элементами) (рис.13).

Рис. 13.

Для этого наведём курсор на участок проводника и двойным щелчком откроем следующее окно (рис.14), в котором и зададим имя проводника. В строке Name задаём имя sw(0). Аналогичным образом зададим имена всем проводникам: sw(0); sw(1); sw(2); sw(3); sw(4); sw(5); sw(6); sw(7). Теперь нам осталось нарисовать шину для выводов элементов и выходной маркер led(5:0). Аналогично прописываем имена проводников, подсоединяемых к шине (led(0)….led(5)). В результате получим схему, приведённую на рисунке 15.

Рис. 14. Обозначение проводников в шине.

Рис. 15. Исследуемая схема.

Теперь создадим новый файл param с расширением *.ucf. В нём опишем привязку выводов проекта к входам-выводам кристалла. Для создания данного файла нужно в окне Hierarchy навигатора проекта правой кнопкой мыши нажать на Unassigned User Library Modules и в появившемся окне диалога выбрать New Sources(или кнопка ) Implementation Constraints File File NameВводится имя создаваемого файла(param) (рис.16.)

Галочку Add to project оставляем. NextFinish.

Рис. 16. Создание файла с параметрами.

В данном файле нужно прописать следующие строки (рис.17).

Рис. 17

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

В окне Hierarchy выбирается проект, а в области окна процессов (Processes) нужно запустить Implement Top Module . Происходит автоматизированное размещение проекта в кристалле (Implement Disign) и запуск генерации программируемого файла (рис.18).

Рис. 18.

По окончании процессов формируются отчеты о проделанной работе.