DevioLab CRYPTO TRADING AUTOMATION
LIVE
AUTOMATED CRYPTO TRADING • BINANCE
Автоматизуйте свій криптопортфель
Торгові боти DevioLab аналізують крипторинок, автоматично відкривають і закривають позиції та керують вашим портфелем на Binance 24/7.
CRYPTO 80 Bots
BINANCE Spot Trading
TRADING 24 / 7
Спробувати DevioLab
deviolab.com

Проектування та дослідження операційних пристроїв вбудованих систем

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

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

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

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

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

Міністерство освіти і науки України Національний університет „Львівська політехніка” Звіт з лабораторної роботи № 7 з дисципліни: “Проектування вбудованих комп’ютерних систем” На тему: Проектування та дослідження операційних пристроїв вбудованих систем Львів 2014 «Проектування та дослідження операційних пристроїв вбудованих систем» Метою роботи є Проектування і перевірка роботи операційного пристрою з заданим викладачем набором характеристик. Варіант. 09: 2 B 4 1 9 A C 0 E 3   Хід роботи. Запускаю програму /. Створюю новий проект. / Даю йому своє ім’я GRS_lab7. Відкриваю новий аркуш графічного редактора. За допомогою генератора ядер згенерувати арифметико-логічний пристрій (АЛП), даю йому своє ім’я: / Копіюю до каталога даного проекта і додаю до проекта усі файли регістрового файлу з попередньої лабораторної роботи: / Скопіювати до каталога даного проекта і додати до проекта VHDL-описи усіх ядер регістрового файлу, згенерованих у попередній роботі: / / / Проводжу компіляцію скопійованих схем та описів, / Виправляю помилки, які виникають під час компіляції, описів з попередньої лабораторної роботи : / Розміщую символи ядер регістрового файлу, буфера та АЛП на схемі, під’єднюю вхідні та вихідні сигнали та контакти, даю їм імена. / Компілюю файл із схемою: / Зберігаю створену схему під імям GRS_sch7. Встановлюю схему як схему найвищого рівня (яка буде моделюватися): / Переходжу до режиму моделювання. Взяти за основу командний файл з попередньої лабораторної роботи (6.do). Створити командний файл 7.do для моделювання процесу виконання такої задачі: 1 такт синхроімпульсів дорівнює 10 нс; Подаю на входи Data послідовність з 8 двійкових кодів (K0, K1, … K7), які змінюються кожного такту по задньому фронту синхроімпульсів; розрядність кодів повинна дорівнювати розрядності АЛУ, зменшеній на 4; коди чисел утворюються з послідовності тетрад, яка відповідає варіанту роботи; / VIEW wave restart wave GRS_clk GRS_clr GRS_en_a GRS_en_b GRS_en_w GRS_en_i GRS_aa GRS_ab GRS_aw GRS_data GRS_ci GRS_m GRS_s GRS_co GRS_ov GRS_a GRS_b wave U1/GRS_1__0/rgf/U1/Q U1/GRS_1__1/rgf/U1/Q U1/GRS_1__2/rgf/U1/Q U1/GRS_1__3/rgf/U1/Q U1/GRS_1__4/rgf/U1/Q U1/GRS_1__5/rgf/U1/Q U1/GRS_1__6/rgf/U1/Q U1/GRS_1__7/rgf/U1/Q force -r 10 ns GRS_clk 0 0 ns, 1 5 ns force GRS_clr 1 0 ns, 0 2 ns force GRS_m 1 0 ns, 0 10 ns, 1 20ns, 0 30ns, 1 40ns, 1 50ns, 0 60ns, 1 70ns, 1 80ns, 0 90ns, 1 100ns, force GRS_ci 0 0 ns, force GRS_s 110 0ns, 000 10ns, 110 20ns, 000 30ns, 000 40ns, 110 50ns, 000 60ns, 000 70ns, 110 80ns, 000 90ns, 000 100ns, force GRS_en_i 1 0 ns, 0 40ns, 1 50ns, 0 70ns, 1 80ns, 0 100ns force GRS_en_a 0 0 ns, 1 40ns, 0 50ns, 1 70ns, 0 80ns, 1 100ns, force GRS_en_b 0 0 ns, 1 10ns, 0 20ns, 1 30ns, 1 40ns, 0 50ns, 1 60ns, 1 70ns, 0 80ns, 1 90ns, force GRS_en_w 1 0 ns, 0 110ns, force GRS_aa 16#0 0 ns, 16#2 40ns, 16#4 70ns, 16#5 100ns, force GRS_ab 16#0 0 ns, 16#1 10ns, 16#1 30ns, 16#3 40ns, 16#1 60ns, 16#7 70ns, 16#1 90ns, 16#7 100ns, force GRS_aw 16#1 0 ns, 16#2 10ns, 16#1 20ns, 16#3 30ns, 16#7 40ns, 16#1 50ns, 16#4 60ns, 16#7 70ns, 16#1 80ns, 16#5 90ns, 16#7 100ns, force GRS_data 16#2 0 ns, 16#B 10 ns, 16#4 20 ns, 16#1 30 ns, 16#9 50 ns, 16#A 60 ns, 16#C 80 ns, 16#0 90 ns run 120 ns Під’єднюю GRS_7.do-файл до проекту. Проводжу моделювання схеми: Промодельовую створену схему: / / Опис Alu. library IEEE; use IEEE.std_logic_1164.all; entity GRS_ALU is port ( A : in std_logic_vector(3 downto 0); B : in std_logic_vector(3 downto 0); S : in std_logic_vector(2 downto 0); CI : in std_logic; M : in std_logic; CO : out std_logic; OV : out std_logic; Q : out std_logic_vector(3 downto 0) ); end entity; library IEEE; use IEEE.std_logic_unsigned.all; architecture alu_arch of GRS_ALU is signal LOGIC_RESULT : std_logic_vector(3 downto 0); signal ARITH_RESULT : std_logic_vector(3 downto 0); signal CO_OUT: std_logic; signal OV_OUT: std_logic; constant ADD_M : std_logic_vector(2 downto 0) :="000"; constant LOAD_A : std_logic_vector(2 downto 0) :="110"; constant AND_S : std_logic_vector(2 downto 0) :="000"; begin process (A, B, S) begin case S is when AND_S => LOGIC_RESULT <= A and B; when others => NULL; end case; end process; process (A, B, CI, S) variable C_TEMP : std_logic; variable CO_TEMP : std_logic; variable A_TEMP : std_logic_vector(3 downto 0); variable B_TEMP : std_logic_vector(3 downto 0); variable TEMP_R : std_logic_vector(3 downto 0); begin A_TEMP := (others => '0'); B_TEMP := (others => '0'); TEMP_R := (others => '0'); CO_TEMP := '0'; case S is when ADD_M => A_TEMP := ('0' & A(2 downto 0)); B_TEMP := ('0' & B(2 downto 0)); TEMP_R := A_TEMP + B_TEMP + CI; CO_TEMP := (A(3) and B(3)) or (TEMP_R(3) and (A(3) or B(3))); when LOAD_A => A_TEMP := ('0' & A(2 downto 0)); B_TEMP := (others => '0'); TEMP_R := A_TEMP ; CO_TEMP := TEMP_R(3) and A(3); when others => NULL; end case; case S is when ADD_M=> C_TEMP:=A(3) xor B(3); when others => C_TEMP:=A(3); end case; ARITH_RESULT <= (C_TEMP xor TEMP_R(3)) & TEMP_R(2 downto 0); CO_OUT <= CO_TEMP; OV_OUT <= CO_TEMP xor TEMP_R(3); end process; CO <= CO_OUT when M = '1' else '0'; OV <= OV_OUT when M = '1' else '0'; Q <= ARITH_RESULT when M = '1' else LOGIC_RESULT; end architecture; Висновки: на цій лабораторній роботі я навчився проектувати і перевіряти роботу операційного пристрою з заданим викладачем набором характеристик.
Антиботан аватар за замовчуванням

25.05.2014 12:40

Коментарі

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

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

Нічого не вибрано
0%

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

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

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

Admin

26.02.2023 12:38

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