Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги / Реализация цифровых автоматов в системе Quartus фирмы Altera

..pdf
Скачиваний:
10
Добавлен:
19.11.2023
Размер:
27.48 Mб
Скачать

12.Пользуясь стандартными средствами контекстного меню или главного меню «Edit», сделать три копии первого входного вывода, расположив их под ним. Обратить внимание на то, что при копировании редактор автоматически присваивает новому выводу имя со следующим по порядку номером (х2, ...).

13.Таким же образом, как первый вывод input, вывести на рабочее поле справа от логических элементов вывод output (это другой тип вывода). Дать ему имя z.

14.Нажать кнопку «Orthogonal Node Tool» на вертикальной панели инструментов. Ввести требуемые соединения элементов

всоответствии со схемой на рис. П2.2, б, нажимая левую кнопку мыши в начальной точке и отпуская ее в конечной точке вводимого проводника (рис. П2.8).

Рис. П2.8. Кнопка «Orthogonal Node Tool»

исхема устройства в окне схемного редактора

15.Записать подготовленную схему в файл проекта, выбрав

вглавном меню строку «Save».

16.Выбрать в строке меню «Assignments\Device...». В от-

крывшемся окне «Device» в списке «Family:» выбрать семейство

121

микросхем Cyclone III. В расположенном ниже списке «Available devices:» выбрать микросхему EP3C5E144C8.

17. Выбрать в строке меню «Processing\Start Compilation».

После успешного завершения компиляции следует убедиться в правильном функционировании разработанного устройства, а также установить его основные временные параметры. Это можно осуществить, используя систему моделирования пакета – симулятор («Simulator»). В общих чертах моделирование («Simulation») состоит в том, что на входные выводы спроектированного устройства подаются сигналы, представляющие последовательно, в различные промежутки времени, все возможные комбинации аргументов. Эти сигналы задаются с помощью временных диаграмм («Waveform»), составляемых разработчиком в редакторе временных диаграмм («Waveform Editor») и записываемых в файл *.vwf («Vector Waveform File»). В процессе моделирования симулятор определяет, какие сигналы и с какой задержкой разработанное устройство сформирует на выходных выводах, и представляет результаты также в виде временных диаграмм.

18. Выбрать в строке меню «Processing\Generate Functional Simulation Netlist».

19. Выбрать в строке меню «File\New», в появившемся окне

«New» активизировать закладку «Verification\Debugging Files»

и в списке файлов на этой закладке выбрать строку «Vector Waveform File». Щелкнуть по кнопке «ОК» окна «New». На рабочем поле приложения поверх других окон появится окно редактора временных диаграмм с пустым файлом, именуемым

«Waveform1.vwf».

20.Выбрать в строке меню «File\Save As...» и в появившемся окне «Сохранить как», где файлу будет дано по умолчанию имя проекта, нажать кнопку «Сохранить».

21.Щелкнуть правой кнопкой в поле имен узлов и шин редактора временных диаграмм (см. рис. П2.9). Выбрать в появившемся контекстном меню строку «Insert Node or Bus...».

122

Поле значений

Ось времени

Главный маркер

Поле имен узлов и шин Контекстное меню поля имен

Поле временных диаграмм

Рис. П2.9. Окно редактора временных диаграмм

22.Не меняя параметров окна «Insert Node or Bus», щелкнуть покнопке«Node Finder...». Наэкранепоявитсяокно«Node Finder».

23.В окне «Node Finder» (рис. П2.10) в поле ввода «Named:

оставить символ шаблона для всех возможных имен «*». В списке «Filter:» выбрать строку «input» «фильтрации» в список только входных выводов проекта («output» – только выходных; «all» – всех и т.п.). Щелкнуть по кнопке «List». В списке «Nodes Found:» появится список всех входных узлов проекта.

Рис. П2.10. Окно регистратора узлов

123

24. Не выделяя узлов, щелкнуть по кнопке «>>«. Все входные узлы будут занесены в список «Selected Nodes:», где их имена предваряются именем модуля в вертикальных скобках. Щелкнуть по кнопке «ОК» окна «Node Finder» и затем по кноп-

ке «ОК» окна «Insert Node or Bus». В поле «Name» редактируе-

мого файла временных диаграмм появится список имен входных узлов, в поле «Value» появятся значения «В 0» («Binary 0» – Двоичный 0), а в поле временных диаграмм – соответствующие нулевому значению диаграммы во всем временном диапазоне.

По умолчанию в пакете установлен по оси времени диапазон 0–1 us (0–1 микросекунда). Конечное значение можно изменить, выбрав в главном меню «Edit\End Time...» и установив в появившемся окне «End Time» в поле ввода «Time:» требуемое значение верхнего предела времени, а в расположенном справа списке – нужные единицы измерения (рис. П2.11): s – секунды; ms – миллисекунды; us – микросекунды; ns – наносекунды; ps – пикосекунды.

Рис. П2.11. Окно задания временного диапазона

124

Начальноезначениевременногодиапазонавсегдаравнонулю. 25. Выбрать в строке меню «Edit\Grid Size...». В появившемся окне «Grid Size» (рис. П2.12), не меняя других параметров, в поле ввода «Period:» установить число 100, а в следующем справа от него списке единиц – «ns» (наносекунды). Щелкнуть

по кнопке «ОК».

Рис. П2.12. Окно установки шага временной сетки

26. Выбрать в строке меню «View\Fit in Window». При этом установленный временной диапазон целиком расположится в пределах рабочего поля временных диаграмм.

Для функционального моделирования рассматриваемого устройства необходимо сформировать диаграммы сигналов x1, x2, x3 и x4 так, чтобы они воспроизводили комбинации значений аргументов из таблицы истинности.

27.Выделить узел x1 в редакторе временных диаграмм. Выделенный узел вместе со своей диаграммой будет помечен так, как это показано на рис. П2.13.

28.Щелкнуть по кнопке «Count Value» на вертикальной панели инструментов. На экране появится окно «Count Value» (рис. П2.14). В этом окне активизировать закладку «Timing». Включить радиокнопку «At absolute times:». В поле ввода

125

«Count every:» ввести число 100, а в находящемся справа от него списке единиц выбрать «ns». В поле «Multiplied by:» ввести 1. Щелкнуть по кнопке «ОК».

Рис. П2.13. Выделенный узел и кнопка «Count Value» в окне редактора временных диаграмм

Рис. П2.14. Окно расчетных значений для формирования временной диаграммы

126

29. Таким же образом, как и для узла x1, сформировать временные диаграммы для оставшихся входных узлов. Только для узла х2 в поле «Multiplied by:» окна «Count Value» ввести мно-

житель 2, для узла х3 – множитель 4, а для узла х4 – множитель 8. В результате будут созданы временные диаграммы, показанные на рис. П2.15.

Рис. П2.15. Сформированные временные диаграммы входных узлов

30. Выбрать в строке меню «File\Save».

31. Выбрать в строке меню «Processing\Simulator Tool».

В появившемся окне «Simulator Tool» (рис. П2.16) в списке

«Simulation mode:» выбрать строку «Timing».

Рис. П2.16. Окно установки параметров симулятора

127

Щелкнуть по кнопке с тремя точками справа от поля «Simulation input:». Убедиться в том, что в поле занесено имя подготовленного файла временных диаграмм *.vwf. На панели «Simulation period» включить радиокнопку «Run simulation until all vector stimuli are used». На панели «Simulation options» установить «галочку»

встроке«Automatically add pins to simulation outputs waveforms».

32.Закрыть окно «Simulator Tool».

33.Выбрать в строке меню «Processing\Start Simulation». По умолчанию на экране появится окно «Simulation Report», а в окне состояния процесса начнет отражаться объем выполнения процесса моделирования. После завершения моделирования на экране появится информационное окно с сообщением о завершении процесса. Его следует закрыть, щелкнув по кнопке «ОК».

Если моделирование завершилось успешно, то на экране останется окно «Simulation Report», представленное на рис. П4.17. Окно состоит из двух частей: левой – «Report Window Contents»,

вкоторой можно выбрать требуемый раздел отчета о моделировании, и правой – «Report Window Section», в которой представлено содержание выбранного раздела отчета. По умолчанию

вдемонстрационной секции представлен раздел «Simulator\Simulation Waveforms». Если раздел оказался неподключенным, например, если вы запускали симулятор из окна «Simulator Tool», его следует подключить, выбрав соответствующую стро-

ку в списке «Report Window Contents».

Рис. П2.17. Окно отчета о моделировании с разделом временных диаграмм

128

Как это видно на рис. П2.17, к диаграммам входных узлов добавлена диаграмма выходного узла z. Диаграмма соответствует таблице истинности, что демонстрирует правильное функционирование разработанного устройства. На диаграмме также видно, что изменение значения функции z происходит не в одно и то же время с изменением входных сигналов. Получившуюся величину задержки можно точно измерить.

34.Установить «Master Time Bar» («Главный временной маркер», далее – просто Главный маркер) на логический фронт входных сигналов, соответствующий моменту времени 400 нc (рис. П2.17). Для этого щелкнуть требуемое количество раз по одной из кнопок «Master Time Bar Arrows» («Кнопки перемещения главного маркера»).

При однократном щелчке по кнопке перемещения Маркер переходит в указанном на кнопке направлении к положению следующего по времени логического фронта на выделенных диаграммах. Если ни одна диаграмма не выделена, учитываются все диаграммы, расположенные на рабочем поле.

35.Увеличить, если требуется, временной масштаб. Для этого щелкнуть по кнопке «Zoom Tool» на вертикальной панели инструментов (на кнопке изображена лупа со знаком «±»). Далее, поставив курсор мыши в то место на поле временных диаграмм, которое предполагается сделать центральным, щелкнуть необходимое количество раз левой кнопкой. Если необходимо уменьшить масштаб – следует щелкнуть правой кнопкой мыши. Выключить режим «Zoom Tool», щелкнув по кнопке «Selection Tool» (кнопка на вертикальной панели инструментов с изображением типичного курсора мыши в виде стрелки).

36.Щелкнуть правой кнопкой мыши по движку Главного маркера (см. рис. П2.17). В контекстном меню выбрать строку «Insert Time Bar...» («Установить маркер...», далее – Штриховой маркер). В появившемся окне «Insert Time Bar» (рис. П2.18), не

129

меняя параметров, щелкнуть по кнопке «ОК». В месте установки Главного маркера появится Штриховой маркер (они будут наложены друг на друга).

Рис. П2.18. Окно создания Штрихового маркера

37. Однократно щелкнуть по кнопке перемещения Главного маркера вправо. Он перейдет на следующий по времени логический фронт, т.е. фронт изменения функции z. У движка Штрихового маркера, оставшегося на старом месте, появится число, обозначающее его смещение по времени относительно Главного маркера (-7,799 ns), как это изображено на рис. П2.19. Это смещение равно задержке между фронтами входных сигналов, на которых установлен Штриховой маркер, и фронтом функции z, на котором установлен Главный маркер. Таким образом, запаздывание установления значения функции в разработанном устройстве, если его выполнить на микросхеме EP3C5E144C8, составит 7,799 нс.

Рис. П2.19. Измерение временной задержки с помощью маркеров

130