Припустимо, у нас є проект для ПЛІС Altera в середовищі розробки Quartus II. Давайте проведемо програмну симуляцію: подамо на входи ПЛІС певний сигнал і подивимося, що буде на її виходах. Для цього скористаємося вбудованим інструментом Simulation Waveform Editor.
Вам знадобиться
- - Персональний комп'ютер;
- - встановлена середовище розробки Quartus II.
Інструкція
1
Першим ділом запустимо IDE Quartus II і відкриємо потрібний проект. Тепер створимо новий файл. Натиснемо комбінацію клавіш Ctrl+N або через меню File -> New.... У вікні виберемо тип файлу - University Program VWF.
2
Запуститься інструмент Simulation Waveform Editor. Відразу збережемо цей файл, поки ще порожній, під довільним іменем в папці проекту: Ctrl+S (або File -> Save). Я назву файл "data_test.vwf", т. к. буду подавати дані на висновок ПЛІС під назвою "DATA". Тепер потрібно додати в проект наші шини. Йдемо в меню Edit -> Insert -> Insert Node or Bus.... Відкриється вікно "Insert or node Bus", де ми натиснемо кнопку Node Finder... для пошуку доступних шин ПЛІС у проекті.
3
У вікні пошуку вузлів Node Finder натискаємо кнопку List (список). У лівій частині вікна з'явиться список знайдених вузлів і шин проекту. Для вибору додайте їх в праве поле, натискаючи відповідні кнопки. Або додайте відразу всі, натиснувши кнопку ">>". Підтвердіть вибір натисканням на кнопку "OK". У вікні "Insert or Node Bus" натисніть "ОК".
4
У вікні форми імпульсів з'явилися діаграми рівнів сигналів обраних висновків. Причому рівень вхідних сигналів CLK і DATA поки дорівнює логічному нулю, а рівень вихідних не визначений. Потрібно задати їх форму.
5
Але спочатку потрібно задати параметри, які будуть використовуватися Simulation Waveform Editor при симулювання. В меню Edit -> Grid Size... задамо крок тимчасової сітки. А в меню Edit -> Set End Time... вкажемо тривалість симулювання.
6
Задамо параметри тактового імпульсу. Вибираємо в лівому полі потрібний сигнал по імені Name, натиснувши на ньому лівою кнопкою миші. Тепер йдемо в меню: Edit -> Value -> Overwrite Clock... У вікні Clock задаємо період (Period), фазу (Offset) і шпаруватість (Duty cycle) тактового імпульсу.
7
Задамо форму сигналу Data. Виділимо його і в меню: Edit -> Value виберемо відповідний тип. Я виберу довільно змінюється сигнал Random Values... і настрою його параметри у вікні.Після цього збережемо параметри сигналів (Ctrl+S).
8
Тепер можна запускати функціональне симулирование: Simulation -> Run Functional Simulation або натиснувши відповідну кнопку на панелі меню. Quartus проведе симуляцію і виведе результат в новому вікні Simulation Waveform Editor.
9
У діалоговому вікні можна бачити розраховані вихідні сигнали на висновках ПЛІС, які вийшли в результаті проведеної симуляції утилітою Simulation Waveform Editor.
Зверніть увагу
Для того щоб провести тимчасову симуляцію (Timing Simulation), необхідно визначити тимчасові параметри за допомогою інструменту TimeQuest Timing Analyzer.
Корисна порада
За допомогою інструменту Master Time Bar зручно визначати часові межі імпульсів. Виділіть лівою кнопкою миші у списку зацікавив сигнал по імені, а потім стрілками "" у верхній панелі переміщайтеся від фронту до фронту.