fb_210700_ddm1_lbm2
.pdfwhen 1 => result := +1; when 2 => result := +1; when 3 => result := –1;
end case;
if (count = 3) then
push := '0'; -- обеспечение готовности к реакции -- на новый сигнал START
end if; end if;
outg <= result; end process;
end example;
7.3. Порядок выполнения задания и дополнительные сведения о системе Quartus II
7.3.1. Начало работы над проектом
Работа в системе Quartus II начинается с действий, которые называют созданием проекта. В данной лабораторной работе такие действия будут осу- ществляться неоднократно: во-первых, задание предполагает выполнение двух проектов генератора; во-вторых, указанные действия потребуется осуществить для каждого из компонентов (с названиями COUNTER2 и KCC) первого про- екта. Для хранения файлов каждого проекта необходимо создать свою папку (папка должна быть индивидуальной для каждого рабочего места в лаборато- рии и может иметь в своем названии только цифры и латинские буквы). Причем все файлы каждого проекта должны находиться в одной папке (не допускается размещение компонентов проекта в различных папках). Затем следует двигать- ся по меню следующим образом: File – New Project Wizard…. В появившемся
диалоговом окне нужно открыть созданную для проекта папку и задать имя проекта (рекомендуемые имена: generator2 для первого проекта, generator3 для второго проекта, counter2 для компонента COUNTER2, kcc для компонен- та KCC). После этого можно приступить к непосредственному проектирова- нию. Если процесс проектирования окажется вынужденно прерванным (с со- хранением полученных результатов), то для возобновления работы над проек-
том его необходимо открыть движением по тому же меню File – Open Project…, после чего потребуется выбрать папку с файлами требуемого проек- та и указать его имя.
7.3.2. Работа с текстовым редактором
Для создания файла, который будет содержать описание устройства на языке VHDL (после создания проекта согласно 7.3.1), следует выполнить ко- манду New… меню File. В появившемся диалоговом окне в группе Design Files следует выбрать тип файла VHDL File и нажать OK. Эти действия приведут к
31
открытию окна текстового редактора с загруженным в него файлом с расшире- нием .vhd, который теперь необходимо включить в проект следующим обра- зом: File – Save As… В появившемся диалоговом окне сохранения файла сле- дует задать его имя и установить флажок Add file to current project.
В окне текстового редактора вводится VHDL-описание проектируемого устройства. Причем идентификатор интерфейса должен совпадать с именем данного VHDL-файла, а идентификатор архитектуры может быть любым.
7.3.3. Компиляция проекта
После того, как будет введено VHDL-описание генератора или его компо- нента, необходимо осуществить компиляцию введенного описания.
До осуществления компиляции необходимо также выбрать семейство ПЛИС для реализации спроектированного устройства: Assignments – Device…, выбор требуемого семейства в поле Family. Выбор осуществляется самостоя- тельно или по рекомендации преподавателя, предпочтительным является се-
мейство MAX3000A.
Если к моменту компиляции не оказался открытым нужный проект (generator2 или generator3), то его необходимо открыть. Для этого требуется действовать согласно 7.3.1. После этого запускается компилятор: Processing –
Start Compilation.
7.3.4. Верификация проекта
Следующим этапом после компиляции является верификация проекта, т. е. моделирование и проверка правильности функционирования спроектированно- го устройства. С этой целью создается файл временных диаграмм. Для его соз- дания (после открытия проекта согласно 7.3.1) необходимо двигаться по меню
File – New – Verification/Debugging Files – Vector Waveform File. При этом запустится сигнальный редактор с загруженным файлом с расширением .vwf. Созданный файл необходимо включить в проект (File – Save As…). Проверка
правильности функционирования устройства осуществляется с использованием контрольного примера, составленного согласно [2]. Длительность одного пе- риода импульсов (меандра) CLK рекомендуется выбирать не менее 40 нс, а длительность сигнала START – равной двум периодам CLK .
После того, как будут заданы все необходимые сигналы, можно запустить симуляцию работы устройства. Для этого в меню Processing выбирается пункт
Start Simulation.
При выполнении лабораторной работы требуется измерить задержку появ- ления сигнала (после переходных процессов) относительно соответствующего фронта импульсов CLK для проектов generator2 и generator3.
32
8.Требования к отчету по работе
Вкачестве отчета по данной работе представляются в электронном виде и сопровождаются устными пояснениями следующие результаты: составленные VHDL-описания генераторов; временные диаграммы, полученные при модели- ровании; результаты измерения временной задержки для двух проектов; сим- волы двух спроектированных устройств, созданные в соответствии с [2].
9.Вопросы для самопроверки
1.Привести поведенческое описание D -триггера с прямым динамическим управлением в форме диаграммы состояний, табличной и аналитической фор- мах, в форме временных диаграмм.
2.Изобразить схему использования D -триггера с прямым динамическим управлением в качестве асинхронного T -триггера.
3.Изобразить схему использования синхронного T -триггера в качестве асинхронного T -триггера. Рассмотреть различные варианты и обоснованно вы- брать лучший.
4.Изобразить схему 4-разрядного параллельного регистра, построенного с использованием D -триггеров.
5.Изобразить схему 4-разрядного последовательного регистра со сдвигом
влево.
6.Изобразить схемы двоичных 4-разрядных вычитающих счетчиков с по- следовательным и с параллельным переносом.
7.Какие требования предъявляются к пользовательским ключевым словам языка VHDL?
8.Какие типы и как можно использовать для VHDL-описания данных, пе- редаваемых в параллельном двоичном коде по шине? Привести примеры.
9.Каковы особенности записи значений данных различных типов в языке
VHDL?
10.Что означает термин "локальная переменная"?
11.С какой целью в языке VHDL используется оператор процесса?
12.Как составляется список чувствительностей в операторе процесса?
13.Где из трех частей оператора процесса (список чувствительностей, дек- ларативная часть, последовательные операторы) могут записываться сигналы? Как можно указать тип или значение для сигнала в той части оператора процес- са, где сигналы записываться не могут? Как это следует учесть в других частях оператора процесса?
14.Каковы особенности записи имени компонента и его портов при со- ставлении оператора "компонент"?
15. К чему приведет замена числа − 8 на число − 7 в VHDL-текстах, при- веденных в 7.2? К чему приведет аналогичная замена числа + 7 на число + 8 ?
33
10.Список рекомендуемой литературы
1.Угрюмов, Е.П. Цифровая схемотехника / Е.П.Угрюмов.– СПб.: БХВ, 2001.– 528 с.
2.Проектирование комбинационных цепей с использованием графическо- го редактора САПР Quartus II: метод. указания к лабораторной работе № 1 по дисциплине "Вычислительная техника и информационные технологии" для студентов направления подготовки 210700 Инфокоммуникационные техноло- гии и системы связи (профиль подготовки "Сети связи и системы коммутации") очной формы обучения / НГТУ; Сост.: А.Д.Плужников, Н.Н.Потапов. Н.Новгород, 2013. 24 с.
3.Стешенко, В.Б. ПЛИС фирмы ALTERA: проектирование устройств об- работки сигналов / В.Б.Стешенко.– М.: ДОДЭКА, 2000.– 128 с.
4.Бибило, П.Н. Основы языка VHDL / П.Н.Бибило.– М.: Солон-Р, 2000.–
200 с.
34