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

Рис.13. Ввод маски цепей для симуляции проекта

Рис.14. Выбранные цепи для симуляции проекта

САПР МАХ+PLUS II осуществляет симуляцию работы проекта с учётом задержек переключения логических элементов в выбранном кристалле ПЛИС. Обычное значение этих задержек равно от 5 до 15 нс. Для того чтобы они не отвлекали от логики работы комбинационной схемы и не были заметны на временной диаграмме, следует шаг сетки, а следовательно, и время изменения сигнала сделать на порядок больше, чем задержка переключения вентилей. Следующий шаг как раз направлен на выполнение этих действий (Интересующимся студентам само-

41

стоятельно рекомендуется попробовать установить разный шаг сетки, начиная от значения времени, сравнимою со временем переключения вентилей (10 нс), и заканчивая значением 1 мкс, и проанализировать полученный результат). В нашем случае установим принудительно величину сетки в 100 нс. Для этого нужно выбрать пункт меню Grid size во вкладке Options. В появившемся окне, показанном на рис.15, следует написать нужный шаг (100 ns).

Рис.15. Изменение шага сетки временной диаграммы

Для того, чтобы на временной диаграмме уместилось как минимум 32 такта, необходимо установить время симулирования проекта не менее 3.2 мкс, зайдя в меню File End time (рис.16). Приставку μ (микро) трудно набрать с клавиатуры, а так как она похожа на латинскую букву u, то принято использовать именно её.

Рис.16. Установка времени симуляции 10 мкс

В результате указанных действий перед пользователем будет отображено окно с временной диаграммой (рис.17). В столбце Name указаны имена цепей и значки, позволяющие отличить входы от выходов. По умолчанию на входных цепях заданы значения логического «0», на входных цепях штриховка означает неизвестные значения, так как симуляция ещё не была запущена.

42

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

В общем случае пользователь может самостоятельно выделять области временной диаграммы на входных цепях и задавать требуемые значения, нажимая на кнопки с изображением «0» и «1». На рисунке они неактивны, а активными они становятся после выделения некоторой части временной диаграммы. Однако в нашем случае можно воспользоваться инструментом МАХ+PLUS II, позволяющим быстро задать последовательно изменяющиеся наборы.

Сначала сгруппируем входные цепи x4...x0 в группу, для чего их все необходимо выделить (кликнуть мышкой на название x4, затем удерживая кнопку Shift кликнуть на название цепи x0) и в меню Node выбрать Enter Group. Этот же пункт меню доступен и из контекстного меню при нажатии правой кнопки мыши. Номера наборов удобно воспринимать в десятичной форме, поэтому выберем DEC (как показано на рис.18) и нажмём кнопку «ОК». После такого действия на временной диаграмме пропадут 5 входных сигналов x4...x0, а вместо них появится группа с названием x[4...0]. Это показано в окне редактора временных диаграмм на рис.19.

43

Рис.18. Группировка нескольких цепей в одну группу

Рис.19. Окно редактора временных диаграмм с сгруппированными входными сигналами

Воспользуемся инструментом, позволяющим задавать последовательные значения для группы сигналов. Для этого кликнем на названии

группы x[4...0], для того чтобы её выделить, и нажмём на кнопку или меню Edit Overwrite Count value. В результате появится диалоговое окно, показанное на рис.20, позволяющее изменять входные сигналы по закону счётчика. В данном диалоговом окне указано, что счёт начинается с 0 (Starting Value), счёт ведётся в двоичном коде (Binary), увеличивается на 1 (Increment By) каждый 1 такт (Multiplied By).

44

Рис.20. Диалоговое окно, задающее значение входных сигналов по закону счётчика

После нажатия кнопки OK на временной диаграмме появятся последовательно сменяющиеся номера наборов от 0 до 31, как показано на рис.21. Для изменения масштаба отображения, так же как и в графическом редакторе, рекомендуется использовать комбинацию кнопок Ctrl- Пробел и Ctrl-Shift-Пробел или кнопки с изображением лупы в левой части панели инструментов.

Рис.21. Временная диаграмма с заданными входными значениями

45

После того как входные сигналы заданы, можно приступать к си-

муляции проекта. Просимулировать проект можно, нажав на ярлык или выполнив: File Project Save & Simulate (Ctrl-Shift-L). Процесс выполнения виден в окне Simulator (рис.22), в результате чего будет выведено сообщение о результатах симуляции.

Рис.22. Окно с информацией о результате симуляции проекта

Переключившись на временную диаграмму (например, при нажатии на кнопку Open SCF), можно увидеть результат, который показан на рис.23.

Рис.23. Временные диаграммы работы проекта

ссгруппированными входными цепями

Вслучае необходимости можно разгруппировать группу входных переменных, для чего необходимо кликнуть на её название x[3..0] мышкой, затем в меню Node нужно выбрать Ungroup. Порядок расположения цепей на временной диаграмме нетрудно изменить, для этого нужно

46

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

Рис.24. Временные диаграммы работы проекта с разгруппированными входными цепями

Перечень индивидуальных заданий

1. Используя карты Карно, минимизировать функции алгебры логики y1, y2, y3, y4, заданные в индивидуальном варианте числовым представлением СДНФ или СКНФ. Построить временные диаграммы минимизированных ФАЛ.

2.Используя полученные выражения, построить схемы функций в одном схематическом файле в МАХ+PLUS II.

3.Просимулировать работу полученных функций.

4.Сравнить временные диаграммы, полученные на этапе синтеза с результатом симуляции МАХ+PLUS II.

47

Вариант 1

y1 = V(5,8,9,12,15; ×: 1,7,13);

y2 = V(0,1,2,9,11,13; ×: 3,4,8,10,12);

y3 = V(0,4,6,16,18,20,22,24,26,28; ×: 2,5,7,17,19,30);

y4 = V(1,4,5,6,9,12,14,17,20,21,22; ×: 0,2,3,7,13,15,25,28,29,30).

Задание для защиты лабораторной работы №2. Упростить выражение:

y1 x1 x1x0 ;

y2 x2 x1 x2 x0 x1x0 .

Вариант 2

y1 = Л(0,2,3,6,7,8,10,14; ×:1,9,13);

y2 = Л(5,7,13,15; ×:3,4,6,11,12,14);

y3 = Л(11,15,17,19,21,23,25,27,29; ×:1,3,7,9,10,24,28,30,31);

y4 = Л(0,2,4,6-8,10,12,14,15,24,26,28,30,31;×:11,16,18,20,22,23,25,29).

Задание для защиты лабораторной работы №2. Упростить выражение:

y1 x2 x0 x1x0 x2 x1 ; y2 x3 x1 x3 x2 x1 x0 .

Вариант 3

y1 = V(0,3,6,8,10; ×:1,2,7);

y2 = V(1,3,4,6,11; ×:0,2,8,9,12);

y3 = V(1,3,7,9,13,15,18,19,22,23,26,27,31; ×:5,11,16,17,20,21,30); y4 = V(8,9,12,13,14,25,28,30; ×:0,2,4,6,10,11,16,18,20,22,24,26,29).

Задание для защиты лабораторной работы №2. Упростить выражение:

y1 x2 x1x0 x2 x1 x0 ;

y2 x2 x0 x2 x1 x1 x0 .

48

Вариант 4

y1 = Л(0,2,4,6,10,11,14,15; ×:1,3,8);

y2 = Л(3,5,7,10,11,13,14,15; ×:0,2,8,12);

y3 = Л(1,5,8,9,12,13,24-31; ×:0,11,14,17,18,19,21,23);

y4 = Л(9,11,12,13,17,19,20,21,25,27,28,29; ×:1,3,4,5,10,18,24,30,31).

Задание для защиты лабораторной работы №2. Упростить выражение:

y1 x1x0 x3 x2 x1x0 ; y2 x3 x1 x3 x1 .

Вариант 5

y1 = V(5,11,13,15; ×:4,10,12,14); y2 = V(0,1,9,10,12,14; ×:2,3,8);

y3 = V(2,6,7,10,14,15,18,23,30; ×:0,1,3,4,5,22,26,31);

y4 = V(2,6,7,16,18,19,20,21,23,25,29; ×:3,10,14,17,22,24,26,28,30).

Задание для защиты лабораторной работы №2. Упростить выражение:

y1 x3 x3 x2 x1 x0 ;

y2 x2 x1 x0 x2 x1 x0 x3 x1 x0 .

Вариант 6

y1 = Л(5,6,7,13; ×:3,4,11,12);

y2 = Л(5,7,8,12,13,15; ×:0,1,4,14);

y3 = Л(9,11,13,15,16,17,20,21,24-31; ×:1,4,5,10,19);

y4 = Л(8,10-12,14,16,18-20,22,24,26,27,28,30; ×:0,2,3,4,6,9,23,29).

Задание для защиты лабораторной работы №2. Упростить выражение:

y1 x2 x0 x3 x2 x1 x0 ; y2 x1 x0 x1 .

49

Вариант 7

y1 = V(0,2,3,7,8; ×:4,6,10,12);

y2 = V(1,3,8,9,10,12; ×:0,4,11,14);

y3 = V(1,4,5,8,10,12,13,14,18,22,24,26,28; ×:0,2,3,6,7,9,16,20,30); y4 = V(1,3,5,9,11,13,15,16,17,20,21,28; ×:7,18,19,22,23,24,25,29).

Задание для защиты лабораторной работы №2. Упростить выражение:

y1= x2 x1 + x3 x2 x1 x0 ;

y2=x3 x2 x0 +x3x2 x0 +x3x2 x1 x0 .

Вариант 8

y1 = Л(5,7,11,15; ×:1,3,9,12,14); y2 = Л(2,3,5,7,13,15; ×:1,10,11,12);

y3 = Л(1,3,5,7,9,11,13,15,24,25,28,29; ×:0,2,6,16,17,20,21,27);

y4 = Л(9-11,13,15,19,21,23,25,26,27,29,31; ×:1,2,3,5,7,17,18,20,24,30).

Задание для защиты лабораторной работы №2. Упростить выражение:

y1 = x2x1 + x1 x0 + x2x0;

y2 = x3 + x3x2 x1 x0.

Вариант 9 y1 = V(2,3,8,10,14; ×:0,4,11,12);

y2 = V(4,5,11,13,14,15; ×:0,8,10,12);

y3 = V(9,13,25,26,27,29,30,31; ×:0,7,8,11,12,17,21,24,28);

y4 = V(1,3,5,7,9,11,13,15,25,27,29,31; ×:6,14,17,19,21,23,24,26,28,30).

Задание для защиты лабораторной работы №2. Упростить выражение:

y1 = x1x0 + x2x0 + x2 x1 ; y2 = x2 + x2 x1 x0 .

50

Соседние файлы в папке Учебники и методички