Частина тексту файла (без зображень, графіків і формул):
МІНІСТЕРСТВО ОСВІТИ І НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ
ДЕРЖАВНИЙ ВИЩИЙ НАВЧАЛЬНИЙ ЗАКЛАД
«УЖГОРОДСЬКИЙ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ»
Інженерно-технічний факультет
Кафедра комп’ютерних систем та мереж
Лабораторна робота №4
з курсу
Технології проектування комп’ютерних систем
Тема: Побудова принципової цифрової схеми та її моделювання в середовищі Active-HDL.
Мета роботи: навчитися будувати принципові цифрові схеми з використанням примітивів стандартної бібліотеки середовища Active-HDL lat_vhdl та моделювати розроблені схеми.
Індивідуальне завдання:
Довизначити перемикальну функцію. Для цього потрібно використати дві молодші цифри залікової книжки (36) перевести їх у двійкову систему числення та представити отриманий код (100100) у вигляді слова .
X3
X2
X1
X0
Y
X3
X2
X1
X0
Y
0
0
0
0
0
1
8
1
0
0
0
1
1
0
0
0
1
0
9
1
0
0
1
0
2
0
0
1
0
0
A
1
0
1
0
1
3
0
0
1
1
1
B
1
0
1
1
0
4
0
1
0
0
0
C
1
1
0
0
0
5
0
1
0
1
1
D
1
1
0
1
1
6
0
1
1
0
0
E
1
1
1
0
0
7
0
1
1
1
0
F
1
1
1
1
1
Записую функцію, яка реалізовує задану таблицю істинності у вигляді ДНФ:
Представляю мінімізовану функцію у вигляді блок-схеми:
Код програми:
library IEEE;
use IEEE.std_logic_1164.all;
-- standard libraries declarations
-- synopsys translate_off
library LAT_VHD;
use LAT_VHD.components.all;
-- synopsys translate_on
entity lab_43 is
port(
X1 : in STD_LOGIC;
X2 : in STD_LOGIC;
X3 : in STD_LOGIC;
X4 : in STD_LOGIC;
F : out STD_LOGIC
);
end lab_43;
architecture lab_43 of lab_43 is
---- Signal declarations used on the diagram ----
signal NET101 : STD_LOGIC;
signal NET140 : STD_LOGIC;
signal NET142 : STD_LOGIC;
signal NET146 : STD_LOGIC;
signal NET150 : STD_LOGIC;
signal NET154 : STD_LOGIC;
signal NET81 : STD_LOGIC;
signal NET89 : STD_LOGIC;
signal NET95 : STD_LOGIC;
---- Configuration specifications for declared components
-- synopsys translate_off
for U1 : AND3 use entity lat_vhd.AND3;
-- synopsys translate_on
-- synopsys translate_off
for U10 : INV use entity lat_vhd.INV;
-- synopsys translate_on
-- synopsys translate_off
for U2 : AND3 use entity lat_vhd.AND3;
-- synopsys translate_on
-- synopsys translate_off
for U3 : AND3 use entity lat_vhd.AND3;
-- synopsys translate_on
-- synopsys translate_off
for U4 : AND3 use entity lat_vhd.AND3;
-- synopsys translate_on
-- synopsys translate_off
for U5 : AND4 use entity lat_vhd.AND4;
-- synopsys translate_on
-- synopsys translate_off
for U6 : OR5 use entity lat_vhd.OR5;
-- synopsys translate_on
-- synopsys translate_off
for U7 : INV use entity lat_vhd.INV;
-- synopsys translate_on
-- synopsys translate_off
for U8 : INV use entity lat_vhd.INV;
-- synopsys translate_on
-- synopsys translate_off
for U9 : INV use entity lat_vhd.INV;
-- synopsys translate_on
begin
---- Component instantiations ----
U1 : AND3
port map(
A0 => X4,
A1 => NET81,
A2 => NET95,
Z0 => NET154
);
U10 : INV
port map(
A0 => X1,
ZN0 => NET95
);
U2 : AND3
port map(
A0 => X3,
A1 => NET89,
A2 => X1,
Z0 => NET150
);
U3 : AND3
port map(
A0 => NET81,
A1 => NET89,
A2 => NET95,
Z0 => NET140
);
U4 : AND3
port map(
A0 => X4,
A1 => X3,
A2 => X1,
Z0 => NET142
);
U5 : AND4
port map(
A0 => NET101,
A1 => NET81,
A2 => X2,
A3 => X1,
Z0 => NET146
);
U6 : OR5
port map(
A0 => NET154,
A1 => NET150,
A2 => NET140,
A3 => NET142,
A4 => NET146,
Z0 => F
);
U7 : INV
port map(
A0 => X4,
ZN0 => NET101
);
U8 : INV
port map(
A0 => X3,
ZN0 => NET81
);
U9 : INV
port map(
A0 => X2,
ZN0 => NET89
);
end lab_43;
Результати моделювання:
Висновки: При виконанні даної лабораторної роботи я навчилася будувати принципово цифрові схеми з використанням примітивів стандартної бібліотеки середовища Active-HDL lat_vhdl та промоделювала розроблену схему.
Ви не можете залишити коментар. Для цього, будь ласка, увійдіть
або зареєструйтесь.
Ділись своїми роботами та отримуй миттєві бонуси!
Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!