Частина тексту файла (без зображень, графіків і формул):
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА»
ІКТА
кафедра ЗІ
З В І Т
до лабораторної роботи №2
з курсу: «Комп’ютерні методи аналізу та проектування електронних засобів»
на тему: «Архітектура проекту на мові VHDL в поведінковій формі. Синтез комбінаційних схем з одним виходом»
Варіант 6
Мета роботи: ознайомитись з представленням проекту на мові VHDL. Реалізація комбінаційної логічної схеми з одним виходом в поведінковій формі проекту на мові VHDL.
Завдання:
1. Ознайомитись з базовою структурою VHDL-файлу.
2. Ознайомитись з синтаксисом оголошення інтерфейсу і архітектури проекту ЦП в мові VHDL.
3. Синтезувати комбінаційну схему з одним виходом.
4.Скласти і відкомпілювати програму на мові VHDL, яка моделює роботу синтезованої схеми.
5. Промоделювати роботу даного пристрою в редакторі часових діаграм і отримати часові діаграми.
Короткі теоретичні відомості
В структурі мови VHDL є два фундаментальних оператори, які підтримують принцип системного програмування. Принцип системного програмування передбачає, що будь-який ЦП розглядається як автономна підсистема, яка повинна мати:
ідентифікатор (тобто бути оголошена):
здатність взаємодіяти з іншими проетктуючими підсистемами за допомогою свого інтерфейсу (вхідних/вихідних портів);
описувати внутрішні структури або алгоритми функціонування.
Такими фундаментальними операторами в мові VHDL є оператори:
entity ... end entity ...;
architecture ... end architecture ...;
Оголошення інтерфейсу
entity ім’я_компоненту is [generic(загальні_оголошення);]
port (сигнал1: режим тип;
сигнал2: режим тип;
...
сигналN: режим тип);
end [entity] [ім’я_компоненту];
Архітектура проекту в поведінковій формі
architecture ім’я_проекту of ім’я_компоненту is
Оголошення: компонентів, сигналів, констант, функцій, процедур, типів, …
begin
Виконання операторів паралельної обробки …
end [architecture] ім’я_архітектури;
Синтез комбінаційної схеми з одним виходом
1
1
1
1
1
*
1
1
1
1
1
1
1
1
1
*
1
№ набору
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
0
5
0
1
0
1
0
6
0
1
1
0
*
7
0
1
1
1
0
8
1
0
0
0
0
9
1
0
0
1
1
10
1
0
1
0
0
11
1
0
1
1
1
12
1
1
0
0
1
13
1
1
0
1
0
14
1
1
1
0
1
15
1
1
1
1
1
Отриману функцію подамо у восьми стандартних канонічних нормальних формах.
І / АБО
І-НЕ / І_НЕ
АБО / І-НЕ
АБО-НЕ / АБО
І / АБО-НЕ
І-НЕ / І
АБО / І
АБО-НЕ / АБО-НЕ
Програма:
library IEEE, std;
use IEEE.std_logic_1164.all,std.all;
entity my is
port(x1,x2,x3,x4:in std_logic;y:out std_logic:='0');
end entity;
architecture one of my is
begin
p:process(x1,x2,x3,x4)
begin
y<=(x1 or x3) and (x1 or (not (x4))) and ((not (x2)) or x3 or (not (x4))) and ((not (x1)) or x2 or x4);
end process;
end architecture one;
Часові діаграми роботи пристрою
Висновки: на даній лабораторній роботі, я ознайомився з базовою структурою VHDL файлу, архітектурою проекту в поведінковій формі, навчився синтезувати комбінаційну схему з одним виходом та реалізував її на мові VHDL.