Рассмотрим пример выполнения работы на основе варианта №30.
Пусть задана таблица истинности трёх функций:
x1 | x2 | x3 | x4 | y1 | y2 | y3 |
Проведём минимизацию функций с помощью карт Вейча:
У1 | |||||
У2 | |||||
У3 | |||||
Запишем функции в СКНФ. Получаем:
|
|
Создаём проект (по инструкции из приложения 1) и делаем 2 программы (2 файла по одной программе в каждом) на языке VHDL. В 1-й программе опишем функции, полученные после минимизации:
entity main is описание интерфейса основной программы
port (x1,x2,x3,x4: in bit; описание входных
s1,s2,s3: out bit); и выходных сигналов
end main; конец описания интерфейса основной
программы
architecture fun of main is описание архитектурного тела основной
программы
begin начало описания fun
s1 <= (x1 or (not (x2)) or x3 or (not (x4))) and (x1 or (not (x2))
or (not (x3)) or x4) and ((not (x1)) or x2 or x3 or
(not (x4)));
s2 <= (x1 or x3 or x4) and (x1 or (not (x2)) or (not (x3)) or
(not (x4))) and ((not (x1)) or (not (x2)) or x3 or
(not (x4)));
s3 <= (x2 or x3 or x4) and ((not (x1)) or x2 or x4) and (x1 or (not
(x2)) or x3 or (not (x4)));
end fun; конец описания fun
Напишем 2-ю (тестовую) программу для описанной выше программы main.
entity test_main is описание интерфейса
end test_main; тестирующей программы
architecture behavior of test_main is описание архитектурного тела
тестирующей программы
component main описание компонента
port (x1, x2, x3, x4:in bit; описание входных
s1, s2, s3: out bit); и выходных сигналов компонента
end component; конец описания компонента
signal x1, x2, x3, x4:bit; описание внутренних сигналов
signal y1, y2, y3:bit; тестирующей программы
begin начало описания behavior
p1: main port map (x1, x2, x3, x4, описание связи переменных main
y1, y2, y3); и переменных test_main
(сокращённое)
x1<='0', задание значений и временных
'0' after 50 ns, интервалов для сигнала x1
'0' after 100 ns,
'0' after 150 ns,
'0' after 200 ns,
'0' after 250 ns,
'0' after 300 ns,
'0' after 350 ns,
'1' after 400 ns,
'1' after 450 ns,
'1' after 500 ns,
'1' after 550 ns,
'1' after 600 ns,
'1' after 650 ns,
'1' after 700 ns,
'1' after 750 ns;
x2<='0', задание значений и временных
|
|
'0' after 50 ns, интервалов для сигнала x2
'0' after 100 ns,
'0' after 150 ns,
'1' after 200 ns,
'1' after 250 ns,
'1' after 300 ns,
'1' after 350 ns,
'0' after 400 ns,
'0' after 450 ns,
'0' after 500 ns,
'0' after 550 ns,
'1' after 600 ns,
'1' after 650 ns,
'1' after 700 ns,
'1' after 750 ns;
x3<='0', задание значений и временных
'0' after 50 ns, интервалов для сигнала x3
'1' after 100 ns,
'1' after 150 ns,
'0' after 200 ns,
'0' after 250 ns,
'1' after 300 ns,
'1' after 350 ns,
'0' after 400 ns,
'0' after 450 ns,
'1' after 500 ns,
'1' after 550 ns,
'0' after 600 ns,
'0' after 650 ns,
'1' after 700 ns,
'1' after 750 ns;
x4<='0', задание значений и временных
'1' after 50 ns, интервалов для сигнала x4
'0' after 100 ns,
'1' after 150 ns,
'0' after 200 ns,
'1' after 250 ns,
'0' after 300 ns,
'1' after 350 ns,
'0' after 400 ns,
'1' after 450 ns,
'0' after 500 ns,
'1' after 550 ns,
'0' after 600 ns,
'1' after 650 ns,
'0' after 700 ns,
'1' after 750 ns;
end behavior; конец описания behavior
Далее запускаем симулятор (см. инструкцию в приложении 1) и производим моделирование системы функций. В симуляторе нужно запустить тестирующую программу!
Варианты заданий
Таблица истинности (вариант 1)
x1 | x2 | x3 | x4 | y1 | y2 | y3 |
Таблица истинности (вариант 3)
x1 | x2 | x3 | x4 | y1 | y2 | y3 |
Таблица истинности (вариант 5)
x1 | x2 | x3 | x4 | y1 | y2 | y3 |
Таблица истинности (вариант 2)
x1 | x2 | x3 | x4 | y1 | y2 | y3 |
Таблица истинности (вариант 4)
x1 | x2 | x3 | x4 | y1 | y2 | y3 |
Таблица истинности (вариант 6)
|
|
x1 | x2 | x3 | x4 | y1 | y2 | y3 |
Таблица истинности (вариант 7)
x1 | x2 | x3 | x4 | y1 | y2 | y3 |
Таблица истинности (вариант 9)
x1 | x2 | x3 | x4 | y1 | y2 | y3 |
Таблица истинности (вариант 11)
x1 | x2 | x3 | x4 | y1 | y2 | y3 |
Таблица истинности (вариант 8)
|
|
x1 | x2 | x3 | x4 | y1 | y2 | y3 |
Таблица истинности (вариант 10)
x1 | x2 | x3 | x4 | y1 | y2 | y3 |
Таблица истинности (вариант 12)
x1 | x2 | x3 | x4 | y1 | y2 | y3 |
Таблица истинности (вариант 13)
x1 | x2 | x3 | x4 | y1 | y2 | y3 |
Таблица истинности (вариант 15)
x1 | x2 | x3 | x4 | y1 | y2 | y3 |
Таблица истинности (вариант 17)
x1 | x2 | x3 | x4 | y1 | y2 | y3 |
Таблица истинности (вариант 14)
x1 | x2 | x3 | x4 | y1 | y2 | y3 |
Таблица истинности (вариант 16)
x1 | x2 | x3 | x4 | y1 | y2 | y3 |
Таблица истинности (вариант 18)
x1 | x2 | x3 | x4 | y1 | y2 | y3 |
Таблица истинности (вариант 19)
x1 | x2 | x3 | x4 | y1 | y2 | y3 |
Таблица истинности (вариант 21)
x1 | x2 | x3 | x4 | y1 | y2 | y3 |
Таблица истинности (вариант 23)
x1 | x2 | x3 | x4 | y1 | y2 | y3 |
Таблица истинности (вариант 20)
x1 | x2 | x3 | x4 | y1 | y2 | y3 |
Таблица истинности (вариант 22)
x1 | x2 | x3 | x4 | y1 | y2 | y3 |
Таблица истинности (вариант 24)
x1 | x2 | x3 | x4 | y1 | y2 | y3 |
Таблица истинности (вариант 25)
x1 | x2 | x3 | x4 | y1 | y2 | y3 | |
< |
|