Частина тексту файла (без зображень, графіків і формул):
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА»
ІКТА
кафедра ЗІ
З В І Т
до лабораторної роботи №4
з курсу: «Комп’ютерні методи аналізу та проектування електронних засобів»
на тему: «Поведінкова форма проекту на мові VHDL. Явно заданий оператор PROCESS. Умовний оператор IF, оператор вибору CASE. »
Виконав: ст. гр. ЗІД-12
Прийняв: Будз Б.Д.
Львів 2010
Мета роботи: ознайомитись з синтаксисом явно заданого оператора process. Реалізація тригерів за допомогою оператора умовної передачі керування if.
Короткі теоретичні відомості
Явно заданий оператор process – це основна конструкція для поведінкової форми опису проектів, яка дозволяє використовувати в його тілі послідовні оператори мови для опису поведінки цифрового пристрою що проектується регістрового типу на деякому часовому інтервалі.
Синтаксис явно заданого оператора process() має наступний вигляд:
[мітка_процесу:] process [(список_чутливості)] [is]
[оператори_оголошень_процесу] –-Розділ оголошень.
begin -- Розділ виконуваних операторів.
end process [мітка_тому];
Оператор if відноситься до сімейства послідовних операторів, які розміщуються в розділі виконуваних операторів явно заданого оператора process. Цей оператор відповідальний за виконання того чи іншого блоку послідовних операторів, які розміщені в його тілі. Вибір для виконання конкретного блоку залежить від істинності одної або декількох умов. Синтаксис оператора if має наступний вигляд:
if умова1 then
блок_операторів1;
[elsif умова2 then
блок_операторів2;]
. . .
[else блок_операторів;]
end if;
Синхронний T-тригер
Повна таблиця переходів T-тригера
Q – попередній стан
Qt- наступний стан
Програма
library ieee;
use ieee.std_logic_1164.all;
entity T is
port( Т, Q , C: in std_logic; Qt: out std_logic);
end T;
architecture BEHAV of T is
begin
process(T, Q, C)
begin
if((T = '0') and(C = '0')) then
Qt <= Q;
elsif((T = '1')and(C = '0')) then
Qt <= not Q;
elsif((T = '1')and(C = '1')) then
Qt <= Q;
elsif((T = '1')and(C = '1')) then
Qt <= Q;
end if;
end process;
end BEHAV;
Часові діаграми роботи тригера
Висновок: на даній лабораторній роботі я ознайомилвся з синтаксисом явно заданого оператора process, з умовним оператором if та оператором вибору case , та здійснив реалізацію асинхронного T-тригера за допомогою оператора умовної передачі керування if.