Проектування постійного запам'ятовуючого пристрою

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

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

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

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

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

Міністерство освіти і науки України Національний університет «Львівська Політехніка» Кафедра ЕОМ / ЗВІТ до лабораторної роботи №6 з дисципліни «Моделювання комп’ютерних систем» на тему : Проектування постійного запам'ятовуючого пристрою Мета роботи: Вивчити принципи роботи постійного запам'ятовуючого пристрою (ПЗП). Отримати навички застосування масивів при створенні проектів у Active-HDL. Теоретична частина В VHDL масив інтерпретується як тип, значення якого складається з ряду елементів єдиного підтипу. Кожен елемент масиву відрізняється своїм індексом або рядом індексів (в багатовимірних масивах). Індекс масиву повинен мати порядковий тип і знаходитись в області допустимих значень. Таким чином, перш ніж застосовувати масив у VHDL, необхідно задекларувати тип масиву, а потім задекларувати масив як об'єкт: type array_type_name is array index_range of element_type; variable array_name: array_type_name [:= initial_values]; Приклад одновимірного масиву: type A is array (5 downto 0) of bit; variable B : A := "011001"; Для багатовимірного масиву порядок і структура оголошення масиву залишаються така ж сама, наприклад type A is array (1 to 3, 1 to 2) of integer; variable B : A := ((0 , 1),(5 , 2),(7, 8)); У наведених прикладах замість ключового слова variable може стояти signal або constant. При декларуванні типу масиву дозволяється не визначати його розмірність. Такі типи масивів називаються необмеженими. В цьому випадку розмірність вказується при декларуванні масиву, як об'єкта: type arr_type is array (index_type range <>) of elements_type; variable arr_name: arr_type (index_range) [:= initial_val]; де index_type - тип індексів масиву (integer, natural, і т.п.). Багатовимірні необмежені масиви і їх типи оголошуються аналогічно. Наприклад: type multy is array (integer range <>, bit range <>, ... , boolean range <>) of elements_type; Код програми: library IEEE; use IEEE.std_logic_1164.all; entity DC is port( Addr : in STD_LOGIC_vector(3 downto 0); CEO : in STD_LOGIC; Dout : out STD_LOGIC_vector(3 downto 0) ); end DC; architecture DC of DC is type A is array(15 downto 0) of STD_LOGIC_VECTOR(3 downto 0); constant B : A := ("0000","0001","0010","0011","0100","0101","0110","0111","1000","1001","1010","1011","1100","1101","1110","1111"); begin process(CEO,Addr) begin if(CEO='1') then case (Addr) is when"0001"=>Dout<=B(1); when"0010"=>Dout<=B(2); when"0100"=>Dout<=B(4); when"1000"=>Dout<=B(8); when others=>Dout<=B(15); end case; end if; end process; end DC; Рис.1 Діаграма роботи ROM. Висновок. На даній лабораторній роботі я вивчив принципи роботи постійного запам'ятовуючого пристрою (ПЗП). Отримав навички застосування масивів при створенні проектів у Active-HDL.
Антиботан аватар за замовчуванням
Med

26.03.2018 20:03-

Коментарі

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

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

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

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

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

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

Admin

26.02.2023 12:38

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