Моделювання режиму очікування в цифрових пристроях за допомогою оператора wait

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
КН
Кафедра:
Кафедра ЕОМ

Інформація про роботу

Рік:
2024
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Моделювання комп ютерних систем

Частина тексту файла (без зображень, графіків і формул):

Міністерство освіти і науки України Національний університет «Львівська Політехніка» Кафедра ЕОМ / ЗВІТ до лабораторної роботи №4 з дисципліни «Моделювання комп’ютерних систем» на тему : Моделювання режиму очікування в цифрових пристроях за допомогою оператора wait Мета роботи: отримати практичні навички застосування оператора wait при моделюванні різних режимів очікування у Active-HDL. Навчитися виконувати порівняння часових діаграм. Теоретична частина Присвоєння нових значень сигналам в процесах відбувається тільки після припинення процесу. Для задання умов припинення процесу використовується оператор wait. Якщо процес містить оператор wait, він виконує послідовно всі оператори до оператора wait. Після цього процес припиняється і очікує виконання умови, заданої в операторі wait. Як тільки це відбувається, процес поновлюється і виконує всі оператори, поки знову не зустріне оператор wait. Існує три типи оператора wait: wait for time_expression - очікування на протязі певного часу; wait until condition - очікування виконання логічного виразу; wait on sensitivity_list - очікування зміни значення сигнала із списку: Якщо змішуються декілька таких умов, вони утворюють четверту конструкцію, яка називається складною умовою. Тип оператора wait Опис Приклади  wait for tyme_expression Припиняє процес на визначений час; Час може бути заданий безпосередньо, або як вираз, результатом якого є значення часу. Використовуються в основному для моделювання на випробувальних стендах. wait for 10 ns; wait for ClkPeriod / 2;  wait until condition Припиняє процес доти, доки задана умова не стане істинною завдяки зміні будь-якого сигналу, що містяться в умові. При цьому, якщо сигнал не змінюється, wait until не поновить процес, навіть якщо сигнал задовільняє умову. wait until CLK='1'; wait until CE and (not RST); wait until IntData > 16;  wait on sensitivity_list Припиняє процес доти, доки не відбудеться подія з будь-яким з сигналів, вказаних в списку чутливості. Іншими словами, процес поновлюється тільки тоді, коли зміниться значення хоча б одного сигналу з списку чутливості. wait on CLK; wait on Enable, Data;  складний wait Містить комбінацію двох або трьох різних форм оператора wait. wait on Data until CLK='1'; wait until Clk='1' for 10 ns;   Якщо симулятор знаходить оператор wait відразу на початку процесу, то процес буде негайно припинений і жодний оператор не буде виконаний. Якщо ж оператор wait розташований в кінці процесу, спочатку будуть виконані всі оператори, що розташовані перед оператором wait, після чого процес буде припинений. Код програми: library IEEE; use IEEE.std_logic_1164.all; entity \wait\ is port( CLK : in STD_LOGIC; Bout : out STD_LOGIC; Ainout : inout STD_LOGIC ); end \wait\; architecture \wait\ of \wait\ is -- signal CLK : std_logic :='0'; begin --Pr_CLK: process(CLK) Pr_CLK: process begin wait for 10 ns; -- ôîðìóâàííÿ ñèãíàëó CLK end process Pr_CLK; Pr_A: process begin --if CLK'event and CLK ='1' then Ainout<='1' after 5 ns; --elsif CLK'event and CLK='0' then Ainout<='0' after 5 ns; --end if; wait on CLK; wait for 20ns; case (CLK) is when '1' =>Ainout<= CLK after 5ns; when '0' =>Ainout<= CLK after 5ns ; when others =>Ainout<= 'L'; end case; end process Pr_A; Pr_B: process begin --if Ainout'event then Bout<= not Ainout; --end if; wait until Ainout='1'; Bout<=not Ainout; wait until Ainout='0'; Bout<=not Ainout; end process Pr_B; end \wait\; / Рис.1 Порівняв поточну діаграму та базову Wform1(Wform1.awf.awc) / Рис.2 Порівняв поточну діаграму та базову Wform2(Wform2.awf.awc) Висновок. На даній лабораторній роботі я вивчив оператор wait , його застосування та особливості, побачив різницю при порівнянні діаграм оператора if та wait.
Антиботан аватар за замовчуванням
Med

26.03.2018 20:03-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!