
Лабораторная работа №1
.docxМинистерство образования и науки Российской Федерации
ФГБОУ ВПО «Магнитогорский государственный технический университет им. Г. И. Носова»
Институт Энергетики и Автоматизированных систем
Кафедра электроники и микроэлектроники.
Лабораторная работа
по дисциплине «Основы проектирования электронной компонентной базы»
на тему «Проектирование комбинационных схем на вентильном уровне»
Выполнил: студент группы АНБ-21-2 Зарипов М.В.
Проверил: к.т.н. Швидченко Н.В.
Магнитогорск 2024 г.
Задание.
Схема «больше чем» сравнивает между собой 2 входа a и b и активизирует выход при условии, если a больше b. Требуется разработать 4-х разрядную схему «больше чем» на вентильном уровне. Для этого:
1. Разработать таблицу истинности 2-х разрядной схемы «больше чем» и записать логику ее работы в совершенной дизъюнктивной нормальной форме. На основании полученного выражения, разработать VHDL-код, использую только логические операторы (вентили).
2. Разработать VHDL-код 4-х разрядной схемы «больше чем», используя уже разработанные блоки: 2-х разрядную схему «больше чем», 2-х разрядную схему сравнения и простые логические элементы (рис. 1).
Рисунок 1 Схема 4-х разрадной схемы "Больше чем".
Выполнение.
Таблица №1. таблица истинности 2-х разрядной схемы «больше чем».
а0 |
а1 |
b0 |
b1 |
eq |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
Совершенной дизъюнктивная нормальная форма:
VHDL код 2-х разрядной схемы «больше чем»:
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
-- Uncomment the following library declaration if using
-- arithmetic functions with Signed or Unsigned values
--use IEEE.NUMERIC_STD.ALL;
-- Uncomment the following library declaration if instantiating
-- any Xilinx primitives in this code.
--library UNISIM;
--use UNISIM.VComponents.all;
entity mt_2 is
Port ( a : in STD_LOGIC_VECTOR (1 downto 0);
b : in STD_LOGIC_VECTOR (1 downto 0);
eq : out STD_LOGIC);
end mt_2;
architecture Behavioral of mt_2 is
signal p0, p1, p2, p3, p4 : std_logic;
begin
p0 <= a(1) and (not b(1));
p1 <= (not a(1)) and b(1);
p2 <= (not p0) and (not p1);
p3 <= a(0) and (not b(0));
p4 <= p2 and p3;
eq <= p0 or p4;
end Behavioral;
VHDL код 4-х разрядной схемы «больше чем»: