Шаг 7. Создание файла симуляции 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Шаг 7. Создание файла симуляции



1. Задание входных и выходных сигналов

Создадим файл для симуляции. В нем мы будем описывать входные и задавать выходные сигналы. Выбираем пункт меню File\New. Затем выбираем в появившемся диалоге Verification\Debugging Files\Vector Waveform File, как показано на рис. 26.

Рис.26. Окно New

Теперь следует выбрать сигналы, которые мы будем использовать. Для этого, как показано на рис. 27, после нажатия кнопки мыши на левой панели Names в выпадающем меню следует выбрать пункт Insert\Insert Node or Bus.

Рис.27. Пункт Insert\Insert Node or Bus

В появившемся диалоговом окне (рис. 28) можно набрать имя выхода какого-то сигнала или элемента. Стоит отметить, что это очень не просто. Полное имя сигнала может быть очень длинным и не всегда понятным. Поэтому лучше воспользоваться поиском сигнала в проекте. Для этого следует нажать кнопку Node Finder.

После этого появится диалоговое окно для поиска сигналов в проекте Node Finder (рис. 29). В поле Filter выбираем Pins: All – т. е. нас интересуют физические входы и выходы микросхемы. Нажимаем кнопку List и видим список наших входов и выходов.

Рис. 28. Диалоговое окно для определения сигнала или элемента

Рис. 29. Диалоговое окно Node Finder

Затем следует выбрать все нужные нам сигналы слева в таблице найденных сигналов Nodes Found, как показано на рис. 30, и перенести их вправо в таблицу выбранных сигналов Selected Nodes. После этого нажимаем кнопку OK.

Рис.30. Окно для выбора сигналов

 

2. Задание временной сетки

Прежде чем редактировать сами сигналы нужно задать временную сетку (для удобства рисования). Для этого следует зайти в пункт меню Edit\Grid Size. Для задания длительности симуляции зайдите в пункт меню Edit\End Time, как показано на рис. 154.

Рис. 31. Окно пункта меню Edit\Grid Size

В Quartus II имеется два способа задания временных диаграмм как тактовой частоты. Временные диаграммы для пересчета всех возможных комбинаций можно задавать вручную (способ 1) или автоматически (способ 2). Рассмотрим их ниже.

Способ 1 (вручную)

Выбираем сигнал, например, X 1 и нажимаем на панели инструментов кнопку Overwrite Clock, как показано на рис. 32.

После этого появится диалоговое окно для задания тактовой частоты (рис. 33). Сейчас в этом диалоговом окне мы сможем задать поведение сигнала как тактовой частоты.

Задаем для сигнала X 1 период тактовой частоты, например, 250ns, для сигнала X 2500 ns, для сигнала X 31000 ns.

Рис. 32. Кнопка панели инструментов Overwrite Clock

Рис. 33. Задание периода тактовой частоты 250ns для сигнала X 1

Затем нужно задать тип симуляции. Для этого следует зайти в пункт меню Assignment\Settings.

В диалоговом окне Settings выбираем раздел Simulator Settings. Здесь нужно задать тип симуляции – Functional (функциональная). Задаем имя входного файла симуляции Lab 1 и нажимаем OK. Это наглядно отображено на рис. 34.

Рис. 34. Выбор типа симуляции

 

Запускаем симулятор из пункта меню Processing \ Start Simulation.

После успешной симуляции можно рассмотреть сигналы на выходе Y, как показано на рис. 35.

Рис. 35. Результат симуляции комбинационной схемы

Способ 2 (автоматический)

Для того чтобы автоматически задать пересчет всех возможных комбинаций входных сигналов в Quartus II, необходимо в столбце с именем Name расположить входные сигналы в порядке убывания: X 3, X 2, X 1. Для этого наводим курсор мыши на сигнал X 3, нажимаем левую кнопку мыши, и, не отпуская ее, перетаскиваем в нужную нам позицию, как показано на рис. 36. Затем аналогичные действия выполняем и для других сигналов.

Рис. 36. Способ изменения позиции входных сигналов

Теперь необходимо выделить входные сигналы и объединить их в группу. Для этого зажимаем клавишу Ctrl и наводим курсор мыши на каждый сигнал, щелкнув левой кнопкой мыши по нему. Так, мы выделили три сигнала. Теперь нажимаем правой кнопкой мыши на один из выделенных сигналов и в выпадающем меню выбираем пункт Grouping \ Group – группа, как показано на рис. 37.

В появившемся окне вводим в поле Group name (имя группы) – X 1..3. На рис. 38 показано, как мы выбираем Binary (двоичная) в раскрывающимся списке Radix (система счисления). После чего нажимаем кнопку ОК.

Рис. 37. Объединение входных сигналов в группу

Рис. 38. Задание имени группы и типа системы счисления

После этого выбираем группу X 1..3 и нажимаем на панели инструментов кнопку Count Value.

В окне Count Value можно задавать параметры сигнала (рис. 39). Во вкладке Counting: Radix (система счисления), Start value (начальное значение), Increment by (шаг изменения) и Count type (тип счета).

Рис. 39. Способ задания параметров сигнала во вкладке Counting

Во вкладке Timing: Start time (время начала), End time (время окончания), Count every (считать каждый) и Multiplied by (множитель) можно задать цифровое значение и размерность интервала Count every – 125нс, как показано на рис. 40, или любое другое, например 250 нс. После этого нажимаем кнопку ОК.

Рис. 40. Способ задания параметров сигнала во вкладке Timing

Задать тип симуляции можно, как показано ранее на рис. 34. Для этого требуется зайти в пункт меню Assignment\Settings.

Запускаем симулятор, как и раньше, из пункта меню Processing\Start Simulation.

Результаты успешной симуляции представлены на рис. 41.

Рис. 41. Результаты успешной симуляции вторым способом



Поделиться:


Последнее изменение этой страницы: 2016-12-09; просмотров: 623; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.83.81.42 (0.011 с.)