You are on page 1of 6

Грязнов Вадим КІ-20

Лабораторна робота №2
Тема: «Опис та моделювання нерегулярних логічних схем»
Мета: «Навчитися складати структурний VHDL-опис, для заданої
нерегулярної логічної схеми, виконувати її моделювання, та будувати
систему логічних функцій»

Варіант 5
Хід роботи:
1. Скласти VHDL-модель кожного з типів елементів, що входять до схеми.
Грязнов Вадим КІ-20

VHDL-модель схеми

2. VHDL-код схеми:
VHDL-код схеми:
library IEEE;
use IEEE.std_logic_1164.all;
entity lab2a is
port(
X1 : in STD_LOGIC;
X2 : in STD_LOGIC;
X3 : in STD_LOGIC;
X4 : in STD_LOGIC;
Y1 : inout STD_LOGIC;
Y2 : inout STD_LOGIC;
Y3 : inout STD_LOGIC;
Y4 : out STD_LOGIC
);
end lab2a;
architecture lab2a of lab2a is

---- Component declarations -----

component NAO3
port(
A : in STD_LOGIC;
B : in STD_LOGIC;
C : in STD_LOGIC;
D : in STD_LOGIC;
Грязнов Вадим КІ-20
Y : out STD_LOGIC
);
end component;
component NAOA2
port(
A : in STD_LOGIC;
B : in STD_LOGIC;
C : in STD_LOGIC;
D : in STD_LOGIC;
Y : out STD_LOGIC
);
end component;
component NOAO2
port(
A : in STD_LOGIC;
B : in STD_LOGIC;
C : in STD_LOGIC;
D : in STD_LOGIC;
Y : out STD_LOGIC
);
end component;

---- Signal declarations used on the diagram ----

signal NET1063 : STD_LOGIC;


signal NET1070 : STD_LOGIC;
signal NET1076 : STD_LOGIC;
signal NET1097 : STD_LOGIC;
signal NET1109 : STD_LOGIC;
signal NET1121 : STD_LOGIC;
signal NET1124 : STD_LOGIC;

signal NET1165 : STD_LOGIC;


signal NET1201 : STD_LOGIC;
signal NET1221 : STD_LOGIC;
signal NET635 : STD_LOGIC;
signal NET642 : STD_LOGIC;
signal NET664 : STD_LOGIC;
signal NET673 : STD_LOGIC;
signal NET680 : STD_LOGIC;
signal NET915 : STD_LOGIC;

begin

---- Component instantiations ----

NET642 <= not(Y2);


U10 : NAO3
port map(
A => NET673,
B => NET1070,
C => NET1121,
Грязнов Вадим КІ-20
D => NET1063,
Y => Y3
);
U11 : NAOA2
port map(
A => NET915,
B => X3,
C => NET1097,
D => NET1063,
Y => NET1165
);

NET1201 <= not(NET642);


NET1221 <= NET1063 or X3;
NET1124 <= not(NET1121 and NET1109 and NET1097);
NET1076 <= not(NET1063);
U16 : NAO3
port map(
A => NET1165,
B => NET1221,
C => Y3,
D => NET1201,
Y => Y4
);
U17 : NAO3
port map(
A => NET1124,
B => NET1076,
C => NET1109,
D => NET1121,
Y => Y1
);
NET673 <= not(NET635 and X1);
U3 : NOAO2
port map(
A => NET680,
B => NET1070,
C => X3,
D => NET1063,
Y => Y2
);
NET635 <= not(NET642);
NET1070 <= not(X2);
NET915 <= not(X4);
NET1109 <= not(X3);
NET664 <= not(Y1);
NET680 <= not(NET664 and NET1121);
end lab2a;
Грязнов Вадим КІ-20

3. Провести моделювання та отримати часову діаграму.

Часова діаграма
4. Таблиця істинності схеми
Входи Виходи

X1 X2 X3 X4 Y1 Y2 Y3 Y4

0 0 0 0 0 0 1 0

0 0 0 1 0 0 0 1

0 0 1 0 1 0 1 0

0 0 1 1 0 0 0 1

0 1 0 0 0 1 0 0

0 1 0 1 1 0 1 0

0 1 1 0 0 0 0 1

0 1 1 1 0 1 1 1

1 0 0 0 1 1 0 0

1 0 0 1 0 0 0 0

1 0 1 0 0 1 0 0

1 0 1 1 1 0 0 1

1 1 0 0 0 0 1 0

1 1 0 1 1 0 0 0

1 1 1 0 1 1 0 0

1 1 1 1 0 0 1 1
Грязнов Вадим КІ-20

5. Критичний шлях.

Критичний шлях дорівнює 20 ns

Висновок: навчився складати структурний VHDL-опис, для заданої


нерегулярної логічної схеми, виконав її моделювання, та будував систему
логічних функцій.

You might also like