«…лишь недалекие люди боятся конкуренции, а люди подлинного творчества ценят общение с каждым талантом…» А. Бек, Талант.

ПЦУСБ/Лабораторная работа 1

Материал из Wiki
< ПЦУСБ
Версия от 21:44, 13 сентября 2013; ANA (обсуждение | вклад)

(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Это снимок страницы. Он включает старые, но не удалённые версии шаблонов и изображений.
Перейти к: навигация, поиск
Лекции ПЦУСБ

Лекции

Практические
Тесты

Лабораторные

Доп. материалы

Содержание

Описание и моделирование системы логических функций

Задание

По таблице истинности системы логических функций составить две VHDL-модели и сравнить их на эквивалентность, выполнив моделирование на всех наборах значений входных переменных. Первая VHDL-модель системы функций должна быть построена по таблице истинности. Вторая VHDL-модель должна быть построена по минимизированной логической функции (также учитывать возможность реализации инверсии функции). Тестбенч должен:

  • иметь структуру, показанную на рисунке 1, включающую 2 компонента (две VHDL модели, реализующих заданную систему функций)
  • выполнять подачу входных воздействий
  • выполнять сравнение выходных сигналов с VHDL моделей системы функций.
Рисунок 1 – Структурная схема тестбенча (Edit)

Рекомендуемый порядок выполнения работы

  1. Определить для каждой функции системы форму её реализации — прямую или инверсную .
  2. Минимизировать функцию, применив любой известный метод минимизации, например, с помощью карт Карно, диаграмм двоичного выбора и т. д.
  3. Составить первую VHDL-модель по таблице истинности, используя оператор when ... else и оператор назначения сигнала (<=).
  4. Составить вторую VHDL-модель, описав минимизированную логическую функцию с помощью логических операторов (not, and, or, xor) и оператора назначения сигнала (<=).
  5. Составить тестирующую программу, порядок подачи тестирующие воздействий должен соответствовать порядку наборов из левой части таблицы истинности.
  6. Дополнительные требования:
    • в интерфейсе VHDL-моделей 1 и 2 для входных/выходных портов использовать тип std_logic или std_logic_vector.

Требования к оформлению отчета

Отчет должен содержать:

  1. Исходную таблицу истинности
  2. Описание метода минимизации (для карт Карно: заполненные карты с обозначенными и пронумерованными областями оптимизации) и результирующее логическое выражение.
  3. Текст VHDL-модели 1, реализующей заданную функцию по таблице истинности
  4. Текст VHDL-модели 2, реализующей заданную функцию по минимизированным логическим уравнениям
  5. Текст VHDL-модели тестирующей программы (тестбенч) для всех наборов входных переменных, соответствующих таблице истинности.
  6. Временные диаграммы, соответствующие тестирующей программе, основных сигналов проекта (входные воздействия (сигнал X), выходные реакции VHDL-моделей: Y1, Y2, результат сравнения (сигнал Ok)).

Задания

Варианты 1-11 выполняются для группы 013202.

Варианты 15-40 для группы 013201 (формула для расчета N+14, где N – номер по журналу; список группы у старосты.)

Входы Вариант 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


Входы Вариант 17 Вариант 18 Вариант 19 Вариант 20 Вариант 21 Вариант 22 Вариант 23 Вариант 24
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 1 0

0 1 1

1 0 0

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

1 1 0

0 0 0

0 0 1

0 1 0

0 1 1

1 0 0

1 1 0

0 1 1

1 0 0

0 1 0

0 1 1

1 1 1

1 0 1

0 1 1

1 0 0

1 0 1

1 1 0

0 0 0

0 1 1

0 1 0

1 0 0

0 1 1

0 1 0

0 1 1

1 0 0

0 1 0

1 1 1

1 0 0

1 0 1

0 1 1

1 1 0

1 0 1

1 0 0

0 0 0

0 0 1

1 1 1

1 0 1

0 0 0

0 1 0

0 1 0

1 0 0

1 1 0

1 1 1

1 0 0

1 1 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

1 0 1

1 1 0

1 1 0

1 0 1

1 0 0

0 0 0

1 0 1

0 1 1

1 0 1

0 0 0

1 0 1

1 0 1

1 1 1

1 0 1

0 0 1

1 1 0

1 1 1

0 0 0

1 0 0

1 0 0

0 1 1

1 1 1

1 0 0

0 1 0

1 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 1

0 0 0

0 0 0

0 1 1

0 1 1

1 0 0

0 1 0

0 1 1

0 1 1

0 0 1

0 1 1

1 1 0

1 0 1

0 1 0


Входы Вариант 25 Вариант 26 Вариант 27 Вариант 28 Вариант 29 Вариант 30 Вариант 31 Вариант 32
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

1 0 0

1 0 0

0 0 1

1 0 0

0 1 0

1 1 0

1 0 0

1 0 1

1 1 0

1 0 0

1 0 1

1 0 0

1 0 1

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

0 1 0

0 1 1

0 1 1

0 1 1

1 0 0

0 1 0

1 1 1

0 0 0

0 1 0

0 1 1

0 1 0

0 1 1

0 1 0

1 0 0

1 1 1

1 1 0

0 0 0

0 0 1

1 1 1

1 1 1

0 0 0

1 0 0

1 1 1

1 0 0

1 1 0

0 1 1

1 0 0

1 0 1

1 1 1

1 0 0

1 1 1

1 1 1

1 0 0

0 0 0

1 1 0

0 1 1

1 0 0

0 1 0

1 1 1

1 0 0

0 1 0

0 1 1

1 0 0

1 1 1

0 1 1

1 0 0

1 0 1

1 1 1

1 0 0

1 1 1

1 1 1

1 1 1

1 0 1

0 1 0

0 1 1

1 0 1

1 1 0

0 1 1

1 1 0

1 1 1

1 1 1

1 0 1

1 1 1

1 1 1

0 1 0

0 1 1

0 1 0

0 0 1

0 1 1

1 1 0

0 1 1

0 1 0

0 1 0

1 1 1

0 1 1

0 1 1

0 1 1

0 0 0

0 1 1

0 1 0

0 0 0

0 0 1

1 1 0

0 1 1

1 0 1

0 0 1

0 1 1

1 1 0

1 1 0

0 0 0

1 0 0

1 0 1

1 1 0

1 0 1

0 0 1

1 1 0


Входы Вариант 33 Вариант 34 Вариант 35 Вариант 36 Вариант 37 Вариант 38 Вариант 39 Вариант 40
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

1 0 0

1 0 1

1 1 0

0 1 1

1 1 0

1 0 0

1 0 0

1 0 0

1 0 1

1 1 0

1 1 0

1 1 1

1 1 1

0 0 1

0 0 1

0 1 0

0 1 1

1 0 1

1 1 1

0 1 1

1 0 0

1 1 0

0 1 1

1 0 0

1 0 1

1 1 1

1 0 0

1 0 1

1 1 0

0 0 0

0 0 0

0 1 0

0 1 1

1 0 0

0 1 0

0 1 0

0 0 0

0 1 0

0 1 1

1 0 0

0 0 0

0 1 1

0 0 0

1 0 0

1 1 0

0 1 0

0 0 1

0 1 0

0 1 0

1 1 0

1 1 0

0 1 1

1 1 0

0 1 0

0 1 1

1 1 0

1 0 0

0 1 1

1 1 0

1 1 1

0 1 0

0 0 0

0 0 1

1 0 1

0 1 0

1 0 1

0 1 0

1 1 1

1 0 0

0 0 0

0 1 1

1 0 0

1 1 1

0 1 1

1 0 1

1 0 1

1 0 0

0 0 0

0 1 0

1 1 0

1 1 1

0 0 0

1 1 0

0 1 0

1 1 0

1 1 0

0 1 1

1 1 0

1 0 1

0 1 0

1 0 1

1 0 0

1 1 1

1 0 0

1 1 1

1 1 0

1 1 1

0 1 0

0 1 0

0 1 1

1 0 0

1 0 0

0 1 1

0 1 0

1 0 1

1 1 0

1 0 0

1 0 1

1 1 0

1 0 0

1 0 1

1 0 1

1 0 0

1 0 1

0 1 1

1 0 1

0 0 0

0 0 1

0 0 1

1 0 1

1 1 1

0 0 1

1 0 0

1 0 1

0 0 0