Смекни!
smekni.com

Методические указания к практическим (лабораторным) работам Екатеринбург 2003 (стр. 7 из 12)

Симулятор позволяет выполнить следующие задачи:

─ задать ожидаемые логические уровни на выходе, которые можно сравнить с результатами тестирования;

─ смоделировать отдельные узлы или узлы, объединённые в группы. Можно комбинировать биты цифрового автомата в проекте, моделировать их как группу и обращаться к ним по имени состояния;

─ определить временной интервал, представляющий собой дрожание фронта импульса или сбой, и проанализировать проект на наличие обоих этих условий или одного из них;

─ контролировать наличие в проекте нарушений начальных установок регистров и временных задержек;

─ регистрировать действительные значения выходов устройств вместо моделированных;

─ проводить функциональное тестирование. Можно проверить, являются ли смоделированные выходные значения функционально эквивалентными реальным выходам устройств;

─ задавать условия точки останова, которые заставляют симулятор делать паузу при их реализации в процессе тестирования;

─ составлять перечень имён и логических уровней любой комбинации узлов и групп и инициализировать логические уровни узла или группы перед тестированием;

─ инициализировать содержимое блоков памяти RAM (ОЗУ) или ROM (ПЗУ) перед тестированием;

─ сохранять инициализированные значения узлов и групп, в том числе инициализированное содержимое памяти, в файле инициализации симулятора (.sif) или перегружать инициализированные значения, хранящиеся в файле;

─ регистрировать команды симулятора в текстовом файле протокола испытаний (.log) того же формата, что и командный файл (.cmd), используемый при
тестировании в автоматическом режиме, а затем использовать этот файл LOG для повторения этого цикла тестирования.

Загрузка готового проекта в ПЛИС или конфигурационное ПЗУ выполняется с помощью программатора (Programmer).


2.2 Лабораторная работа №1: "Графический ввод схемы устройства и функциональная симуляция с использованием САПР MAX+PLUS II"

Цель и содержание работы: В данной работе изучается графический редактор и осуществляется ввод в систему MAX+plusII принципиальной схемы комбинационного устройства, описанного булевым уравнением. После этого выполняется трансляция проекта, с помощью редактора логико-временных диаграмм формируется последовательность входных тестовых векторов и осуществляется симуляция (логическое моделирование). В результате система MAX+plusII формирует диаграмму состояний для выходов устройства, анализируя которую совместно с таблицей истинности, можно сделать заключение о правильности функционирования разработанного устройства.

2.2.1 Запуск системы MAX+plusII

Запуск САПР осуществляется из стартового меню Windows командой MAX+plus II 9.6 BASELINE, которая находится в группе MAX+plusII.

2.2.2 Создание нового проекта

Процедура разработки нового проекта (project) начинается с задания имени файла проекта верхнего уровня (Top of hierarchy) в качестве имени проекта (Project name).


Для задания имени файла проекта верхнего уровня нужно выбрать Project из меню File. При нажатии на Project открывается окно со списком команд. Здесь нужно выбрать пункт Name. Эта команда открывает окно диалога Project Name (рисунок 2.12).

Рисунок 2.12 – Создание нового проекта

Здесь требуется выполнить следующее:

─ выбрать место расположения создаваемого проекта;

─ указать имя проекта.

В результате этого в выбранной папке создаётся файл назначений и конфигурации с расширением .acf. В этом файле содержатся все типы назначений ресурсов, зондов (Probes) и устройств (Devices) также как и конфигурационные установки (Assign) для компилятора, симулятора и временного анализатора.

2.2.3 Проектирование цифрового устройства

Проектирование цифрового устройства начинается с создания нового файла (design file) проекта или иерархической структуры нескольких файлов проекта с использованием редакторов разработки проекта в системе MAX+plus II, т.е. графического, текстового и сигнального редакторов.

Спроектируем устройство заданное упрощённым булевым выражением:

.

Чтобы спроектировать данное устройство, используем стандартные логические элементы: четыре элемента NOT, семь элементов AND и один элемент OR. Т.к. в библиотеке примитивов MAX+plus II нет семивходового элемента OR создадим его сами, используя MegaWizard Plug-In Manager.

2.2.4 Создание элемента в MegaWizard Plug-In Manager.


Выбираем MegaWizard Plug-In Manager из меню File. В появившемся окне нужно поставить галочку напротив Create a new custom megafunction variation и нажать Next.

Рисунок 2.13 – Первый шаг в создании мегафункции


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


Выберем в разделе Схемы (Gates) мегафункцию LPM_OR и выходной файл – AHDL. Назовём мегафункцию or7.

Рисунок 2.14 – Второй шаг в создании мегафункции


Нажав Next – попадём на третью страницу создания мегафункции.

Рисунок 2.15 – Третий шаг в создании мегафункции


В этом окне нужно выбрать количество входов для данных, ширину входных данных (в битах), а также можно задать отображение выводов как шин и сделать размеры символа как можно меньше.

Укажем количество входов – 7, ширину входных данных – 1 бит.

Нажав на кнопку Finish – закончим создание мегафункции. Если нажать на Next, то можно увидеть какие файлы были созданы для данной мегафункции и закончить работу.

2.2.5 Создание исходных данных для проектирования устройства.


Сначала нужно нарисовать принципиальную схему в графическом редакторе Graphic Editor MAX+plus II. Исходя из приведённого булева выражения получается схема (рисунок 2.16).

Рисунок 2.16 – Принципиальная схема устройства

Запускается Graphic Editor из меню MAX+plus II. Рисуем принципиальную схему, используя библиотеку символов MAX+plus II, которая открывается по двойному нажатию левой кнопки мыши (рисунок 2.17).



Рисунок 2.17 – Выбор символов

В результате получаем графический файл проекта project.gdf (рисунок 2.18).


Рисунок 2.18 – Окно графического редактора со схемой

Теперь, когда схема нарисована, можно подать на её входы сигналы. Подадим сигналы в соответствии с таблицей истинности, полученной из булева выражения.
Таблица 2.2 – Таблица истинности

Входы

Выход

D

C

B

A

Y

0

0

0

0

1

0

0

0

1

0

0

0

1

0

0

0

0

1

1

1

0

1

0

0

0

0

1

0

1

0

0

1

1

0

1

0

1

1

1

0

1

0

0

0

0

1

0

0

1

1

1

0

1

0

1

1

0

1

1

0

1

1

0

0

1

1

1

0

1

0

1

1

1

0

0

1

1

1

1

1


Используя сигнальный редактор (Waveform Editor) MAX+plus II задаём входные сигналы (A, B, C, D)и обозначаем выход схемы (Y) (рисунок 2.19).

Рисунок 2.19 – Окно сигнального редактора с входными сигналами