ПЦУСБ/Лабораторная работа 1 — различия между версиями
ANA (обсуждение | вклад) |
ANA (обсуждение | вклад) |
||
| Строка 34: | Строка 34: | ||
# Текст VHDL-модели тестирующей программы (тестбенч) для всех наборов входных переменных, соответствующих таблице истинности. | # Текст VHDL-модели тестирующей программы (тестбенч) для всех наборов входных переменных, соответствующих таблице истинности. | ||
# Временные диаграммы, соответствующие тестирующей программе, основных сигналов проекта (входные воздействия (сигнал <code>X</code>), выходные реакции VHDL-моделей: <code>Y1</code>, <code>Y2</code>, результат сравнения (сигнал <code>Ok</code>)). | # Временные диаграммы, соответствующие тестирующей программе, основных сигналов проекта (входные воздействия (сигнал <code>X</code>), выходные реакции VHDL-моделей: <code>Y1</code>, <code>Y2</code>, результат сравнения (сигнал <code>Ok</code>)). | ||
| + | |||
| + | == Задания == | ||
| + | |||
| + | {| class=standard align=center cellspacing="2" cellpadding="5" | ||
| + | |- | ||
| + | | <br /> | ||
| + | ! Вариант 1 | ||
| + | ! Вариант 2 | ||
| + | ! Вариант 3 | ||
| + | ! Вариант 4 | ||
| + | ! Вариант 5 | ||
| + | ! Вариант 6 | ||
| + | ! Вариант 7 | ||
| + | ! Вариант 8 | ||
| + | |- | ||
| + | ! x(3:0) | ||
| + | ! a(2:0) | ||
| + | ! b(2:0) | ||
| + | ! c(2:0) | ||
| + | ! d(2:0) | ||
| + | ! e(2:0) | ||
| + | ! f(2:0) | ||
| + | ! g(2:0) | ||
| + | ! h(2:0) | ||
| + | |- | ||
| + | | 0 0 0 0 | ||
| + | |||
| + | 0 0 0 1 | ||
| + | |||
| + | 0 0 1 0 | ||
| + | |||
| + | 0 0 1 1 | ||
| + | |||
| + | 0 1 0 0 | ||
| + | |||
| + | 0 1 0 1 | ||
| + | |||
| + | 0 1 1 0 | ||
| + | |||
| + | 0 1 1 1 | ||
| + | |||
| + | 1 0 0 0 | ||
| + | |||
| + | 1 0 0 1 | ||
| + | |||
| + | 1 0 1 0 | ||
| + | |||
| + | 1 0 1 1 | ||
| + | |||
| + | 1 1 0 0 | ||
| + | |||
| + | 1 1 0 1 | ||
| + | |||
| + | 1 1 1 0 | ||
| + | |||
| + | 1 1 1 1 | ||
| + | | 0 0 0 | ||
| + | |||
| + | 0 0 1 | ||
| + | |||
| + | 0 0 0 | ||
| + | |||
| + | 0 0 0 | ||
| + | |||
| + | 0 0 1 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 0 0 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 1 0 0 | ||
| + | | 0 0 0 | ||
| + | |||
| + | 0 0 1 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 0 0 0 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 1 1 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 1 1 1 | ||
| + | | 1 0 0 | ||
| + | |||
| + | 0 0 1 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 1 1 1 | ||
| + | |||
| + | 0 0 0 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 0 0 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 0 0 0 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 0 0 1 | ||
| + | |||
| + | 1 1 0 | ||
| + | | 1 0 0 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 0 0 0 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 0 0 0 | ||
| + | |||
| + | 0 0 1 | ||
| + | |||
| + | 0 0 1 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 0 0 1 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 0 0 0 | ||
| + | | 0 0 0 | ||
| + | |||
| + | 0 0 0 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 1 1 1 | ||
| + | |||
| + | 0 0 0 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 1 1 0 | ||
| + | |||
| + | 1 1 1 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 1 1 1 | ||
| + | |||
| + | 0 0 0 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 1 1 0 | ||
| + | | 0 0 0 | ||
| + | |||
| + | 0 0 1 | ||
| + | |||
| + | 0 0 0 | ||
| + | |||
| + | 0 0 0 | ||
| + | |||
| + | 0 0 0 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 0 0 0 | ||
| + | |||
| + | 0 0 1 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 0 1 0 | ||
| + | | 0 0 0 | ||
| + | |||
| + | 0 0 0 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 0 0 1 | ||
| + | |||
| + | 0 0 0 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 1 1 0 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 0 0 0 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 0 0 1 | ||
| + | |||
| + | 1 0 0 | ||
| + | | 0 0 1 | ||
| + | |||
| + | 0 0 1 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 0 0 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 1 1 1 | ||
| + | |} | ||
| + | |||
| + | |||
| + | |||
| + | {| class=standard align=center cellspacing="2" cellpadding="5" | ||
| + | |- | ||
| + | | <br /> | ||
| + | ! Вариант 9 | ||
| + | ! Вариант 10 | ||
| + | ! Вариант 11 | ||
| + | ! Вариант 12 | ||
| + | ! Вариант 13 | ||
| + | ! Вариант 14 | ||
| + | ! Вариант 15 | ||
| + | ! Вариант 16 | ||
| + | |- | ||
| + | ! x(3:0) | ||
| + | ! a(2:0) | ||
| + | ! b(2:0) | ||
| + | ! c(2:0) | ||
| + | ! d(2:0) | ||
| + | ! e(2:0) | ||
| + | ! f(2:0) | ||
| + | ! g(2:0) | ||
| + | ! h(2:0) | ||
| + | |- | ||
| + | | 0 0 0 0 | ||
| + | |||
| + | 0 0 0 1 | ||
| + | |||
| + | 0 0 1 0 | ||
| + | |||
| + | 0 0 1 1 | ||
| + | |||
| + | 0 1 0 0 | ||
| + | |||
| + | 0 1 0 1 | ||
| + | |||
| + | 0 1 1 0 | ||
| + | |||
| + | 0 1 1 1 | ||
| + | |||
| + | 1 0 0 0 | ||
| + | |||
| + | 1 0 0 1 | ||
| + | |||
| + | 1 0 1 0 | ||
| + | |||
| + | 1 0 1 1 | ||
| + | |||
| + | 1 1 0 0 | ||
| + | |||
| + | 1 1 0 1 | ||
| + | |||
| + | 1 1 1 0 | ||
| + | |||
| + | 1 1 1 1 | ||
| + | | 0 0 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 0 0 0 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 0 0 0 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 0 0 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 0 0 1 | ||
| + | |||
| + | 1 1 0 | ||
| + | | 0 0 0 | ||
| + | |||
| + | 0 0 1 | ||
| + | |||
| + | 1 1 1 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 0 0 0 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 1 1 1 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 1 1 1 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 1 1 1 | ||
| + | | 0 0 0 | ||
| + | |||
| + | 0 0 0 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 0 0 0 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 1 1 1 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 1 1 1 | ||
| + | | 1 0 0 | ||
| + | |||
| + | 1 1 1 | ||
| + | |||
| + | 1 1 1 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 1 1 0 | ||
| + | |||
| + | 1 1 1 | ||
| + | |||
| + | 1 1 1 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 1 1 1 | ||
| + | | 0 1 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 0 1 0 | ||
| + | | 0 0 0 | ||
| + | |||
| + | 0 0 0 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 0 0 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 0 0 0 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 0 0 1 | ||
| + | |||
| + | 1 1 0 | ||
| + | | 0 0 0 | ||
| + | |||
| + | 0 0 1 | ||
| + | |||
| + | 0 0 0 | ||
| + | |||
| + | 0 0 1 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 1 1 0 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 1 1 1 | ||
| + | |||
| + | 1 1 0 | ||
| + | |||
| + | 1 1 1 | ||
| + | |||
| + | 1 1 1 | ||
| + | | 0 0 0 | ||
| + | |||
| + | 0 0 1 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 1 1 1 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 0 1 0 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 1 0 1 | ||
| + | |||
| + | 0 1 1 | ||
| + | |||
| + | 1 0 0 | ||
| + | |||
| + | 1 0 1 | ||
| + | |} | ||
Версия 19:09, 12 сентября 2013
- Лабораторная работа 1
- Лабораторная работа 2
- Лабораторная работа 3
- Лабораторная работа 4
Содержание |
Описание и моделирование системы логических функций
Задание
По таблице истинности системы логических функций составить две VHDL-модели и сравнить их на эквивалентность, выполнив моделирование на всех наборах значений входных переменных. Первая VHDL-модель системы функций должна быть построена по таблице истинности. Вторая VHDL-модель должна быть построена по минимизированной логической функции (также учитывать возможность реализации инверсии функции). Тестбенч должен:
- иметь структуру, показанную на рисунке 1, включающую 2 компонента (две VHDL модели, реализующих заданную систему функций)
- выполнять подачу входных воздействий
- выполнять сравнение выходных сигналов с VHDL моделей системы функций.
| |
|---|
| Рисунок 1 – Структурная схема тестбенча (Edit) |
Рекомендуемый порядок выполнения работы
- Определить для каждой функции системы форму её реализации — прямую или инверсную .
- Минимизировать функцию, применив любой известный метод минимизации, например, с помощью карт Карно, диаграмм двоичного выбора и т. д.
- Составить первую VHDL-модель по таблице истинности, используя оператор
when ... elseи оператор назначения сигнала (<=). - Составить вторую VHDL-модель, описав минимизированную логическую функцию с помощью логических операторов (not, and, or, xor) и оператора назначения сигнала (<=).
- Составить тестирующую программу, порядок подачи тестирующие воздействий должен соответствовать порядку наборов из левой части таблицы истинности.
- Дополнительные требования:
- в интерфейсе VHDL-моделей 1 и 2 для входных/выходных портов использовать тип std_logic или std_logic_vector.
Требования к оформлению отчета
Отчет должен содержать:
- Исходную таблицу истинности
- Описание метода минимизации (для карт Карно: заполненные карты с обозначенными и пронумерованными областями оптимизации) и результирующее логическое выражение.
- Текст VHDL-модели 1, реализующей заданную функцию по таблице истинности
- Текст VHDL-модели 2, реализующей заданную функцию по минимизированным логическим уравнениям
- Текст VHDL-модели тестирующей программы (тестбенч) для всех наборов входных переменных, соответствующих таблице истинности.
- Временные диаграммы, соответствующие тестирующей программе, основных сигналов проекта (входные воздействия (сигнал
X), выходные реакции VHDL-моделей:Y1,Y2, результат сравнения (сигналOk)).
Задания
| |
Вариант 1 | Вариант 2 | Вариант 3 | Вариант 4 | Вариант 5 | Вариант 6 | Вариант 7 | Вариант 8 |
|---|---|---|---|---|---|---|---|---|
| x(3:0) | a(2:0) | b(2:0) | c(2:0) | d(2:0) | e(2:0) | f(2:0) | g(2:0) | h(2:0) |
| 0 0 0 0
0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 |
0 0 0
0 0 1 0 0 0 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 0 0 0 0 1 1 1 0 0 1 0 1 0 1 1 1 0 0 1 0 1 1 0 0 |
0 0 0
0 0 1 0 1 0 1 0 1 0 0 0 0 1 0 0 1 0 1 0 0 1 1 0 0 1 1 1 0 0 1 0 1 0 1 1 1 0 1 1 0 1 1 1 1 |
1 0 0
0 0 1 0 1 0 1 1 1 0 0 0 0 1 0 0 1 1 1 0 0 0 0 0 0 1 1 0 0 0 1 0 1 0 1 0 1 0 0 0 0 1 1 1 0 |
1 0 0
1 0 1 1 0 0 0 0 0 1 0 1 0 1 1 1 0 1 0 0 0 0 0 1 0 0 1 1 0 1 1 0 1 0 0 1 1 0 0 1 0 1 0 0 0 |
0 0 0
0 0 0 0 1 0 1 1 1 0 0 0 0 1 0 0 1 1 1 0 0 1 1 0 1 1 1 1 0 0 1 0 1 1 1 1 0 0 0 1 0 1 1 1 0 |
0 0 0
0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 1 0 0 0 1 0 0 1 1 0 0 0 0 0 1 0 1 1 1 0 0 1 0 1 0 1 0 |
0 0 0
0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 1 0 0 1 0 0 1 0 0 1 1 0 1 0 0 1 0 1 0 0 0 1 0 0 0 0 1 1 0 0 |
0 0 1
0 0 1 0 1 0 0 1 1 0 0 0 0 1 1 0 1 1 1 0 1 0 1 1 0 1 1 1 0 1 1 0 1 0 1 1 1 0 1 1 0 1 1 1 1 |
| |
Вариант 9 | Вариант 10 | Вариант 11 | Вариант 12 | Вариант 13 | Вариант 14 | Вариант 15 | Вариант 16 |
|---|---|---|---|---|---|---|---|---|
| x(3:0) | a(2:0) | b(2:0) | c(2:0) | d(2:0) | e(2:0) | f(2:0) | g(2:0) | h(2:0) |
| 0 0 0 0
0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 |
0 0 0
0 1 1 0 1 1 0 1 1 0 0 0 0 1 0 0 1 1 0 0 0 0 1 0 0 1 1 0 0 0 0 1 1 0 1 1 1 0 0 0 0 1 1 1 0 |
0 0 0
0 0 1 1 1 1 0 1 1 0 0 0 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 1 0 0 1 0 1 1 1 1 1 0 0 1 0 1 1 1 1 |
0 0 0
0 0 0 0 1 0 0 1 1 0 0 0 0 1 0 0 1 1 1 0 0 0 1 0 0 1 1 1 0 1 1 1 1 0 1 1 1 0 0 1 0 1 1 1 1 |
1 0 0
1 1 1 1 1 1 0 1 1 1 0 1 0 1 0 0 1 1 1 0 1 0 1 0 0 1 1 1 1 0 1 1 1 1 1 1 1 0 1 1 0 1 1 1 1 |
0 1 0
0 1 1 0 1 0 0 1 1 0 1 1 0 1 0 0 1 1 0 1 0 0 1 0 0 1 1 0 1 0 0 1 1 0 1 1 0 1 0 0 1 1 0 1 0 |
0 0 0
0 0 0 0 1 0 0 1 1 1 0 1 0 0 0 0 1 1 1 0 0 0 1 0 0 0 0 1 0 0 1 0 1 0 1 0 1 0 0 0 0 1 1 1 0 |
0 0 0
0 0 1 0 0 0 0 0 1 1 0 1 0 1 0 0 1 1 1 1 0 1 0 0 1 0 1 1 0 0 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 |
0 0 0
0 0 1 0 1 0 0 1 1 1 0 1 1 1 1 0 1 0 0 1 1 1 0 0 0 1 0 0 1 1 1 0 0 1 0 1 0 1 1 1 0 0 1 0 1 |