You are on page 1of 5

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ

ХАРКІВСЬКИЙ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ РАДІОЕЛЕКТРОНІКИ

Кафедра АПОТ

Звіт
з лабораторної роботи №1 на тему:
«РОЗРОБКА ВЕНТЕЛЬНИХ VHDL-МОДЕЛЕЙ»
з курсу «Мова опису апаратних засобів»

Виконав: Перевірила:
ст. гр. КІУКІ-20-6 Рахліс Д.Ю.
Коль Є.В.

Харків 2022
ВАРІАНТ 20
1.1 Мета:
Ознайомитись з основами введення, компіляції та
верифікації VHDL-моделей у системі Active – VHDL.

1.2 Хід роботи:

Рисунок 1.1 – вентильна схема


3 входи 0\1 => 23 = 8 тестових комбінацій
Макс = 29 ns => 30 ns новий тест
T X1 X2 X3 A B C D E F Y1 Y2 Y3
0 0 0 0 U U U U U U U U U
5 0 0 0 1 1 1 U U U U U U
10 0 0 0 1 1 1 0 0 0 0 U 0
24 0 0 0 1 1 1 0 0 0 0 0 0
30 1 0 1 1 1 1 0 0 0 0 0 0
35 1 0 1 1 0 0 0 0 0 0 0 0
40 1 0 1 1 0 0 0 0 0 0 0 0
45 1 0 1 1 0 0 1 0 0 1 0 0
59 1 0 1 1 0 0 1 0 0 1 1 0
60 1 1 1 1 0 0 1 0 0 1 1 0
65 1 1 1 0 0 0 1 0 0 1 1 0
75 1 1 1 0 0 0 0 0 0 0 1 0
89 1 1 1 0 0 0 0 0 0 0 0 0

Лістинг 1.1 - VHDL-модель


library IEEE;
use IEEE.std_logic_1164.all;

entity lb1 is
port(
X1: in STD_LOGIC;
X2: in STD_LOGIC;
X3 : in STD_LOGIC;
Y1: out STD_LOGIC;
Y2: out STD_LOGIC;
Y3 : out STD_LOGIC
);
end lb1;

architecture lb1 of lb1 is


signal A, B, C, D, E, F: STD_LOGIC;
begin

A <= NOT X2 AFTER 5NS;


B <= NOT X3 AFTER 5NS;
C <= NOT X3 AFTER 5NS;
D <= X1 AND A AFTER 10NS;
E <= X1 AND B AFTER 10NS;
F <= X2 AND C AFTER 10NS;
Y1 <= D;
Y2 <= D OR E OR F AFTER 14NS;
Y3 <= F;

end lb1;

Ручне моделювання

X1 0 0, 1 30NS
X2 0 0, 1 60NS
X3 0 0, 1 30

Рисунок 2 – результати ручного моделювання


Testbench

library ieee;
use ieee.std_logic_1164.all;

entity lb1_tb is
end lb1_tb;

architecture TB_ARCHITECTURE of lb1_tb is

component lb1
port(
X1 : in STD_LOGIC;
X2 : in STD_LOGIC;
X3 : in STD_LOGIC;
Y1 : out STD_LOGIC;
Y2 : out STD_LOGIC;
Y3 : out STD_LOGIC );
end component;

signal Y1 : STD_LOGIC;
signal Y2 : STD_LOGIC;
signal Y3 : STD_LOGIC;
signal test : std_logic_vector(2 downto 0);

begin
UUT : lb1
port map (
X1 => test(2),
X2 => test(1),
X3 => test(0),
Y1 => Y1,
Y2 => Y2,
Y3 => Y3
);

test <= "000", "001" after 30 ns, "010" after 60 ns, "011" after 90 ns,
"100" after 120 ns,
"101" after 150 ns, "110" after 180 ns, "111" after 210 ns;

end TB_ARCHITECTURE;

Рисунок 3 – результати моделювання за допомогою Testbench


Macro-file
comp "$DSN\src\ lb1.vhd"
asim lb1 +access +w
wave
wave X1 X2 X3 A B C D E F Y1 Y2 Y3
list
list X1 X2 X3 A B C D E F Y1 Y2 Y3
force X1 0 0, 1 30NS
force X2 0 0, 1 60NS
force X3 0 0, 1 30NS

run 90 ns

Рисунок 4 – waveform

Рисунок 5 –list
Висновок: Під час виконання лабораторної роботи ми
ознайомились з основами введення, компіляції та верифікації
VHDL-моделей у системі Active – VHDL та застосували на
практиці.

You might also like