МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА»
ІКТА
кафедра ЗІ
З В І Т
до лабораторної роботи №3
з курсу: «Комп’ютерні методи аналізу та проектування електронних засобів»
на тему: «СТВОРЕННЯ БІБЛІОТЕК І ПАКЕТІВ У VHDL ПРОЕКТАХ.
АРХІТЕКТУРА ПРОЕКТУ НА МОВІ VHDL В СТРУКТУРНІЙ ФОРМІ»
Львів-2017
ЗАВДАННЯ
Ознайомитись з принципом створення бібліотек і пакетів в проектах VHDL. Реалізація комбінаційної логічної схеми з одним виходом в структурній формі проекту на мові VHDL.
ТЕОРЕТИЧНІ ВІДОМОСТІ
Рис.1. Комбінаційна схема з одним виходом
ПРОГРАМА
1. Створення пакету базових елементів, які використовуються для побудови комбінаційної схеми
library ieee;
use ieee.std_logic_1164.all;
package basic_func is
component AND3
port(in1, in2, in3: in std_logic;out1: out std_logic);
end component;
component NOT1
port(in1: in std_logic; out1:out std_logic);
end component;
component OR3
port(in1, in2, in3: in std_logic; out1: out std_logic);
end component;
component AND3NOT
port (in1, in2, in3: in std_logic; out1: out std_logic);
end component;
end basic_func;
package body basic_func is
end basic_func;
library ieee;
use ieee.std_logic_1164.all;
entity AND3 is
port(in1, in2, in3: in std_logic;out1: out std_logic);
end AND3;
architecture model_AND3 of AND3 is
begin
out1<=in1 and in2 and in3;
end model_AND3;
library ieee;
use ieee.std_logic_1164.all;
entity OR3 is
port(in1, in2, in3: in std_logic;out1: out std_logic);
end OR3;
architecture model_OR3 of OR3 is
begin
out1<=in1 or in2 or in3;
end model_OR3;
library ieee;
use ieee.std_logic_1164.all;
entity NOT1 is
port(in1: in std_logic;out1: out std_logic);
end NOT1;
architecture model_NOT1 of NOT1 is
begin
out1<=not in1;
end model_NOT1;
library ieee;
use ieee.std_logic_1164.all;
entity AND3NOT is
port(in1, in2, in3: in std_logic;out1: out std_logic);
end AND3NOT;
architecture model_AND3NOT of AND3NOT is
begin
out1<=not in1 and not in2 and not in3;
end model_AND3NOT;
2. Моделювання роботи схеми у вигляді структурної форми архітектури проекту
library ieee, my_func;
use ieee.std_logic_1164.all, my_func.basic_func.all;
entity SIREN is
port (x1, x2, x3, x4:in std_logic; y:out std_logic);
end SIREN;
architecture struct of SIREN is
component AND3
port(in1, in2, in3: in std_logic;out1: out std_logic);
end component;
component NOT1
port(in1: in std_logic; out1:out std_logic);
end component;
component OR3
port(in1, in2, in3: in std_logic; out1: out std_logic);
end component;
component AND3NOT
port (in1, in2, in3: in std_logic; out1: out std_logic);
end component;
signal my_in1, my_in2, my_in3: std_logic;
begin
U0: AND3NOT port map (x1,x2,x4, my_in1);
U1: AND3 port map (x1,x2,x4, my_in2);
U2: NOT1 port map (x3, my_in3);
U3: OR3 port map (my_in1, my_in2, my_in3,y);
end struct;
ЧАСОВІ ДІАГРАМИ
ВИСНОВКИ
В даній лабораторній роботі, я ознайомилася з процедурою створення і підключення в проект VHDL-файлу бібліотек і пакетів, реалізувала комбінаційну логічну схему з одним виходом в структурній формі проекту на мові VHDL та створила пакет базових елементів для неї.