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

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

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

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

Звіт з лабораторної роботи № 4: Розробка конвеєрного процесора

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

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

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

Рік:
2026
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Основи проектування цифрових засобів на ПЛІС
Група:
КН-11
Коротко про документ

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

Звіт присвячено розробці конвеєрного процесора та вивченню принципів перетворення комбінаційної схеми в потокову структуру. У роботі наведено постановку завдання, блок-схему, часову діаграму та VHDL код TestBench.

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

  • Проектування цифрових засобів
  • ПЛІС
  • VHDL
  • Тестування та моделювання
  • Комбінаційні схеми

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

  1. Постановка задачі
  2. Завдання
  3. VHDL код TestBench
  4. Висновок
Для кого:Студенти технічних спеціальностей, викладачі та дослідники у галузі проектування цифрових пристроїв та комп'ютерної інженерії.
Викладачі:Цигилик Л. О.

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

ПЛІСVHDLTestBenchкомбінаційна схемапотокова структуратактовий сигналчасова діаграмаархітектура

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

Міністерство освіти і науки Національний університет „Львівська політехніка” Кафедра EОМ Звіт з лабораторної роботи № 4 з дисципліни: “ Основи проектування цифрових засобів на ПЛІС ” на тему: “ РОЗРОБКА КОНВЕЄРНОГО ПРОЦЕСОРА ” Прийняв: Цигилик Л. О. Львів 2018 Тема: Розробка конвеєрного процесора. Мета роботи: розробити конвеєрний процесор. Постановка задачі: Для перетворення прототипу комбінаційної схеми в потокову структуру та отримання VHDL коду цієї процедури, зручно використовувати такі кроки: Створити блок-схему комбінаційної схеми та організувати її компоненти в вигляді каскадної послідовності. Визначити основні компоненти блок-схеми та оцінити тривалості їх виконання. Поділити послідовність компонентів на етапи, щоб тривалість етапів була приблизно рівною. Визначити дані й сигнали необхідні на кожному етапі опрацювання та вибрати ті, які надходять з інших етапів опрацювання. Розмістити регістри для зберігання даних й сигналів, які находять з інших етапів опрацювання. Завдання 23. c ∙ (d - c2) + b2 Для реалізації конвеєрного обчислення потрібно поділити функцію на такі кроки: Для реалізації ітераційного обчислення потрібно поділити функцію на такі кроки: Рис. 1. Схема конвеєрного обчислення. Рис. 2. Часова діаграма конвеєрного обчислення. VHDL код TestBench: LIBRARY ieee; USE ieee.std_logic_1164.ALL; USE ieee.numeric_std.ALL; LIBRARY UNISIM; USE UNISIM.Vcomponents.ALL; ENTITY SSV_ALL_SSV_ALL_sch_tb IS END SSV_ALL_SSV_ALL_sch_tb; ARCHITECTURE behavioral OF SSV_ALL_SSV_ALL_sch_tb IS COMPONENT SSV_ALL PORT( CE : IN STD_LOGIC; CLK : IN STD_LOGIC; CLR : IN STD_LOGIC; F : OUT STD_LOGIC_VECTOR (15 DOWNTO 0); XLXN_96 : IN STD_LOGIC; XLXN_97 : IN STD_LOGIC; Ci : IN STD_LOGIC_VECTOR (3 DOWNTO 0); Di : IN STD_LOGIC_VECTOR (3 DOWNTO 0); Bi : IN STD_LOGIC_VECTOR (3 DOWNTO 0)); END COMPONENT; SIGNAL CE : STD_LOGIC:= '1'; SIGNAL CLK : STD_LOGIC:= '1'; SIGNAL CLR : STD_LOGIC:= '0'; SIGNAL F : STD_LOGIC_VECTOR (15 DOWNTO 0); SIGNAL XLXN_96 : STD_LOGIC:= '1'; SIGNAL XLXN_97 : STD_LOGIC:= '0'; SIGNAL Ci : STD_LOGIC_VECTOR (3 DOWNTO 0); SIGNAL Di : STD_LOGIC_VECTOR (3 DOWNTO 0); SIGNAL Bi : STD_LOGIC_VECTOR (3 DOWNTO 0); constant clk_c : time :=10 ns; SIGNAL buf : integer :=0; BEGIN UUT: SSV_ALL PORT MAP( CE => CE, CLK => CLK, CLR => CLR, F => F, XLXN_96 => XLXN_96, XLXN_97 => XLXN_97, Ci => Ci, Di => Di, Bi => Bi ); -- *** Test Bench - User Defined Section *** tb : PROCESS BEGIN Di <= "0111"; Ci <= "0000"; Bi <= "0011"; for i in 0 to 10 loop clk <= '0'; wait for clk_c; buf <= buf + 1; clk <= '1'; wait for clk_c; Bi <= std_logic_vector(unsigned(Bi) + (1)); Ci <= std_logic_vector(unsigned(Ci) + (1)); Di <= std_logic_vector(unsigned(Di) + (1)); end loop; END PROCESS; -- *** End Test Bench - User Defined Section *** END; Рис. 3. Використані ресурси. Висновок: На лабораторній роботі я навчився розробляти конвеєрний процесор.
Допоможи студентському архіву

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

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

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

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

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

Admin

26.02.2023 12:38

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