Міністерство освіти і науки, молоді та спорту України
Національний університет «Львівська політехніка»
ІКТА
Кафедра ЗІ
З В І Т
до лабораторної роботи №3
з курсу:
“Комп’ютерні методи аналізу та проектування електронних засобів”
на тему:
“Створення бібліотек і пакетів у VHDL проектах. Архітектура проекту на мові VHDL в структурній формі”
Мета: ознайомитись з принципом створення бібліотек і пакетів в проектах VHDL. Реалізація комбінаційної логічної схеми з одним виходом в структурній формі проекту на мові VHDL.
Завдання
Ознайомитись з процедурою створення і підключення в проект VHDL-файлу бібліотек і пакетів.
Ознайомитись з синтаксисом архітектури проекту в мові VHDL в структурній формі.
Створити пакет базових елементів, які використовуються для побудови комбінаційної схеми синтезованої в лабораторній роботі № 2.
Скласти і відкомпілювати програму на мові VHDL, яка моделює роботу синтезованої схеми в попередній лабораторній роботі у вигляді структурної форми архітектури проекту.
Промоделювати роботу даного пристрою в редакторі часових діаграм і отримати часові діаграми.
Таблиця істинності
№
набору
X1
X2
X3
X4
Y
3
0
0
0
0
0
0
1
0
0
0
1
0
2
0
0
1
0
1
3
0
0
1
1
0
4
0
1
0
0
*
5
0
1
0
1
1
6
0
1
1
0
0
7
0
1
1
1
0
8
1
0
0
0
1
9
1
0
0
1
0
10
1
0
1
0
*
11
1
0
1
1
0
12
1
1
0
0
1
13
1
1
0
1
0
14
1
1
1
0
*
15
1
1
1
1
0
Текст програми:
library IEEE, std;
use IEEE.std_logic_1164.all, std.all;
entity lab3 is
port(x1, x2,x3, x4: in std_logic; y: out std_logic);
end lab3;
architecture my of lab3 is
begin
y <= x1 and not x2 and x3 and not x4;
end my_lab3;
library IEEE, std;
use IEEE.std_logic_1164.all, std.all;
entity lab31 is
port(x1, x2, x3: in std_logic; y: out std_logic);
end lab31;
architecture my of lab31 is
begin
y <= x1 and not x2 and not x3;
end my_ lab31;
library IEEE, std;
use IEEE.std_logic_1164.all, std.all;
entity lab32 is
port(x1, x2,x3, x4: in std_logic; y: out std_logic);
end lab32;
architecture my of lab32 is
begin
y <= x1 and x2 and x3 and x4;
end my_ lab32;
library IEEE, std;
use IEEE.std_logic_1164.all, std.all;
entity lab33 is
port(x1, x2, x3, x4: in std_logic; y: out std_logic);
end lab33;
architecture my of lab33 is
begin
y <= not x1 and x2 and x3 and not x4;
end my_ lab33;
library IEEE, std;
use IEEE.std_logic_1164.all, std.all;
entity OR1 is
port(x1, x2, x3, x4, x5: in std_logic; y: out std_logic);
end OR1;
architecture my of OR1 is
begin
y <= x1 or x2 or x3 or x4 or x5;
end my_OR1;
library IEEE, std;
use IEEE.std_logic_1164.all, std.all;
entity z1 is
port(x1, x2, x3, x4: in std_logic; y: out std_logic);
end z1;
architecture my of z1 is
component lab3
port(x1, x2, x3, x4: in std_logic; y: out std_logic);
end component;
component lab31
port(x1, x2, x3: in std_logic; y: out std_logic);
end component;
component lab32
port(x1, x2, x3, x4: in std_logic; y: out std_logic);
end component;
component lab33
port(x1, x2, x3, x4: in std_logic; y: out std_logic);
end component;
component OR1
port(x1, x2, x3, x4, x5: in std_logic; y: out std_logic);
end component;
signal and31, and32, and33, and34, and35: std_logic;
begin
A0: lab3 port map (x1,x2,x3,x4, and31);
A1: lab31 port map (x1,x2,x3, and32);
A2: lab32 port map (x1,x3,x4, and33);
A3: lab33 port map (x1,x2,x3,x4, and34);
A4: lab34 port map (x1,x2,x3,x4, and35);
A5: OR1 port map (and31, and32, and33, and34, and35, y);
end my;
Висновок: В даній лабораторній роботі я ознайомився з принципом створення бібліотек і пакетів в проектах VHDL та реалізував комбінаційну логічну схеми з одним виходом в структурній формі проекту на мові VHDL.