Схемотехника / Схемотехника(1) / Laba2_схемотехника
.docФедеральное агентство по образованию РФ
Пермский Государственный Технический Университет
Кафедра АТ
«Ввод описания схемы на языке AHDL, использование монитора иерархии проекта САПР MAX + plus II».
Вариант
Выполнили: студенты гр. ЭВТ-04
Проверил: ассистент Белоглазов А.А.
Пермь, 2006
Цель работы: изучение описания цифровой схемы на языке AHDL, ввода его с использованием тестового редактора MAX+pIusII, использования монитора структуры проекта.
Задание: Описать в виде текста на языке AHDL мультиплексор.
Листинг программы:
SUBDESIGN mux1
(
clc,fi,w :input;
f0:output;
)
BEGIN
IF w THEN
f0 = fi;
ELSE
f0 = clc;
END IF;
END;
Таблица истинности:
x1 |
x2 |
x3 |
w |
clc |
fo |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
Логическая схема:
Структура проекта:
Диаграмма симуляций:
Вывод: Как видно из диаграммы симуляций, написанная программа, соответствует таблице истинности мультиплексора.
Индивидуальное задание
Разработать схему формирования противоположного по знаку 4-разрядного двоичного числа А=A3A2A1A0 со знаковым разрядом N. Отрицательные числа, представить в дополнительном коде. Проверить работу схемы, используя симуляцию.
Исходя из условия задачи, составим код программы на языке AHDL.
Входные переменные:
n - знаковый разряд
a - 4х разрядное число обратном коде
Выходные переменные:
f - 4х разрядное число в прямом коде
Листинг программы:
TITLE "__your_title";
SUBDESIGN gh
(
a[7..0] : INPUT;
q[7..0] : OUTPUT;
)
BEGIN
IF a[7]==1 THEN
q[7]=NOT(a[7]);
q[6..0]=0-a[6..0];
ELSE
q[7]=NOT(a[7]);
q[6..0]=not(a[6..0])-1;
END IF;
END;
Вывод: Как видно из Рис.3, написанная нами программа на языке AHDL, соответствует таблице истинности схемы формирования модуля 4-разрядного двоичного числа А=A3A2A1A0 со знаковым разрядом N.