DevioLabавтоматичне керування капіталом
ПРАЦЮЄ 24/7
КРИПТОВАЛЮТИ · АКЦІЇ · 10 БІРЖ

Портфель, який керується автоматично

DevioLab підбирає стратегії, відстежує ринки та автоматизує купівлю і продаж активів. Кількість доступних криптовалют, акцій і торгових можливостей зростає щодня.

10підключених біржCrypto + Stocksв одному портфелі24/7автоматичний контроль

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

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

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Інститут комп’ютерних наук та інформаційних технологій
Факультет:
КН
Кафедра:
Кафедра електронних обчислювальних машин

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

Рік:
2013
Тип роботи:
Лабораторна робота
Предмет:
Комп’ютерні системи
Група:
КН-31
Коротко про документ

Про що ця робота

У лабораторній роботі досліджено застосування оператора wait для моделювання режимів очікування у середовищі Active-HDL. Виконано порівняння часових діаграм та розроблено варіанти коду з різними формами затримки.

У роботі розглядаються

  • Моделювання цифрових пристроїв
  • Оператор wait
  • VHDL
  • Часові діаграми
  • Синхронізація процесів
  • Active-HDL

Зміст і розділи

  1. Мета роботи
  2. Основні види застосування оператору wait
  3. Варіанти базового коду та результати моделювання
  4. Висновки
Для кого:Студенти технічних спеціальностей вищих навчальних закладів.
Викладачі:Викладач кафедри ЕОМ

Ключові поняття

оператор waitdigital devicesActive-HDLVHDLчасові діаграмипроцесчутливість сигналусихронізаціямоделювання

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

Міністерство освіти і науки України Національний університет “Львівська політехніка” Кафедра ЕОМ  Лабораторна робота №4 Моделювання режиму очікування в цифрових пристроях за допомогою оператора wait Мета роботи: отримати практичні навички застосування оператора wait при моделюванні різних режимів очікування у Active-HDL. Навчитися виконувати порівняння часових діаграм. Основні види застосування оператору wait: Тип оператора 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;  Варіант базового коду та відповідні результати моделювання (п. 4): --Pr_CLK: process(CLK) --begin --wait for 10 ns; --end process Pr_CLK; Pr_A: process(CLK) 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 for 20 ns; --wait on CLK; end process Pr_A; Pr_B: process(Ainout) begin if Ainout'event then Bout<= not Ainout; end if; --wait until Ainout'event; --Bout<= not Ainout; end process Pr_B; end object;  Варіанти коду із застосуванням оператора wait (пп. 6, 7, 8): Pr_CLK: process begin wait for 10 ns; 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 for 20 ns; wait on CLK; end process Pr_A; Pr_B: process(Ainout) begin if Ainout'event then Bout<= not Ainout; end if; wait until Ainout'event; Bout<= not Ainout; end process Pr_B; end object; Результати порівняння (п. 9):  Варіанти коду із застосуванням оператора wait (п. 12): Pr_CLK: process begin wait for 10 ns; 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 for 30 ns; wait on CLK; end process Pr_A; Pr_B: process(Ainout) begin if Ainout'event then Bout<= not Ainout; end if; wait until Ainout'event; Bout<= not Ainout; end process Pr_B; end object; Результати моделювання (п. 12):  Результати моделювання (п. 14):  Результати моделювання (п. 15):  Висновки: Для синхронізації процесів у мові VHDL використовується оператор wait. Так як буває багато різних причин зупинки – мова VHDL підтримує 4 форми оператору затримки. Також оператор затримки можна використовувати для заміни списку чутливості в процесах.
Допоможи студентському архіву

Ми допомогли тобі — допоможи наступному студенту

Файл ще не обрано

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

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

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

Admin

26.02.2023 12:38

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