Використання блок-діаграм для декомпозиції складних пристроїв в САПР Active-HDL

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

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

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

Рік:
2012
Тип роботи:
Звіт
Предмет:
Моделювання
Група:
КІ

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

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА» ІНСТИТУТ КОМП’ЮТЕРНОЇ ТЕХНІКИ АВТОМАТИКИ ТА МЕТРОЛОГІЇ ЗВІТ ЛАБОРАТОРНОЇ РОБОТИ №8 З ПРЕДМЕТУ: «Моделювання комп'ютерних систем» ТЕМА: «Використання блок-діаграм для декомпозиції складних пристроїв в САПР Active-HDL» Підготувала: студентка групи КІ-21 Петруняк Марта Перевірив: Колодчак О.М. Львів – 2012 Мета: Навчитися використовувати блок-діаграми (Block Diagrams) для декомпозиції складних об'єктів на структурні складові. Отримати навички застосування констант generic для проектування структурних елементів. Розробити модель 8-розрядного 7-сегментного індикатора. Теоретичні відомості Опис методики застосування констант generic в VHDL. Цифрова схема проектується, як правило, ієрархічним набором елементів. Кожен елемент має набір портів для реалізації інтерфейсу із зовнішним світом. При цьому кожен елемент в свою чергу може складатись з інших елементів. Синтаксис декларації елемента наступний: ENTITY <ім'я> IS <заголовок>; BEGIN <тіло>; END <ім'я>; . GENERIC CONSTANT описуються так само, як і декларація підпрограм. Всі вони повинні мати клас констант. Дійсні значення констант передаються тоді, коли елемент буде використано. PORTS описуються так Заголовок елементу може використовуватись для декларування речей, які потім будуть використовуватись у тілі елемента. В заголовку також можуть записуватись спеціальні пункти, що допомогають при симуляції. Тут можуть вказуватись константи, що описують поведінку елемента GENERIC CONSTANT, та канали вводу/виводу PORTсамо, як і GENERIC CONSTANT, але їх клас повинен бути SIGNAL. Це є новий клас, тому покажемо його синтаксис: SIGNAL <список_ідентифікаторів>:[<режим>] <тип> [BUS] [:=<статистичний вираз>] Так, як клас повинен бути SIGNAL за замовчуванням, слово SIGNAL може бути пропущене. Слово BUS (шина) показує, що порт буде під'єднано до кількох виходів. Характеристика застосування блок-діаграм в САПР Active-HDL. The Block Diagram Editor is a graphical design entry tool. It allows you to create hierarchical block diagrams as an alternative to writing a HDL code directly. The editor supports automatic generation of HDL from the diagram along with the advanced design rule checking (DRC). It allows you to mix all design description methods (pure HDL code, state diagrams and block diagrams). Схема блоку, створеною за допомогою блок-діаграм САПР Active-HDL.  Лістинг програми: ------------------------------------------------------------------------------- -- Title : Block_Diag -- Design : Block_7segm -- Author : Ада -- Company : BlackShine ------------------------------------------------------------------------------- -- File : c:\My_Designs\ Block_7segm\compile\skaner.vhd -- Generated : Tue Oct 11 19:23:28 2011 -- From : c:\My_Designs\ Block_7segm\src\skaner.asf -- By : Bde2Vhdl ver. 2.6 --------------------------------------------------------------------------------- -- Description : ------------------------------------------------------------------------------- -- Design unit header -- library IEEE; use IEEE.std_logic_1164.all; entity Block_Diag is port( CLK : in STD_LOGIC; WE : in STD_LOGIC; X : in STD_LOGIC_VECTOR(31 downto 0); LCD0 : out STD_LOGIC_VECTOR(6 downto 0); LCD1 : out STD_LOGIC_VECTOR(6 downto 0); LCD2 : out STD_LOGIC_VECTOR(6 downto 0); LCD3 : out STD_LOGIC_VECTOR(6 downto 0); LCD4 : out STD_LOGIC_VECTOR(6 downto 0); LCD5 : out STD_LOGIC_VECTOR(6 downto 0); LCD6 : out STD_LOGIC_VECTOR(6 downto 0); LCD7 : out STD_LOGIC_VECTOR(6 downto 0) ); end Block_Diag; architecture A_Block_Diag of Block_Diag is ---- Component declarations ----- component demux port ( CLK : in STD_LOGIC; DATA_IN : in STD_LOGIC_VECTOR(31 downto 0); Y0 : out STD_LOGIC_VECTOR(3 downto 0); Y1 : out STD_LOGIC_VECTOR(3 downto 0); Y2 : out STD_LOGIC_VECTOR(3 downto 0); Y3 : out STD_LOGIC_VECTOR(3 downto 0); Y4 : out STD_LOGIC_VECTOR(3 downto 0); Y5 : out STD_LOGIC_VECTOR(3 downto 0); Y6 : out STD_LOGIC_VECTOR(3 downto 0); Y7 : out STD_LOGIC_VECTOR(3 downto 0) ); end component; component para_register_8 generic( BusWidth : INTEGER := 8 ); port ( CLK : in STD_LOGIC; DATA_IN : in STD_LOGIC_VECTOR(31 downto 0); WE : in STD_LOGIC; DATA_OUT : out STD_LOGIC_VECTOR(31 downto 0) ); end component; component Segm7 port ( X : in STD_LOGIC_VECTOR(3 downto 0); Y : out STD_LOGIC_VECTOR(6 downto 0) ); end component; ---- Signal declarations used on the diagram ---- signal BUS1125 : STD_LOGIC_VECTOR (31 downto 0); signal BUS364 : STD_LOGIC_VECTOR (3 downto 0); signal BUS381 : STD_LOGIC_VECTOR (3 downto 0); signal BUS390 : STD_LOGIC_VECTOR (3 downto 0); signal BUS407 : STD_LOGIC_VECTOR (3 downto 0); signal BUS416 : STD_LOGIC_VECTOR (3 downto 0); signal BUS429 : STD_LOGIC_VECTOR (3 downto 0); signal BUS705 : STD_LOGIC_VECTOR (3 downto 0); signal BUS794 : STD_LOGIC_VECTOR (3 downto 0); begin ---- Component instantiations ---- U0 : Segm7 port map( X => BUS429, Y => LCD7 ); U1 : Segm7 port map( X => BUS416, Y => LCD6 ); U2 : Segm7 port map( X => BUS407, Y => LCD5 ); U3 : Segm7 port map( X => BUS390, Y => LCD4 ); U4 : Segm7 port map( X => BUS381, Y => LCD3 ); U5 : Segm7 port map( X => BUS364, Y => LCD1 ); U6 : Segm7 port map( X => BUS705, Y => LCD2 ); U7 : Segm7 port map( X => BUS794, Y => LCD0 ); U8 : demux port map( CLK => CLK, DATA_IN => BUS1125, Y0 => BUS429, Y1 => BUS416, Y2 => BUS407, Y3 => BUS390, Y4 => BUS381, Y5 => BUS364, Y6 => BUS705, Y7 => BUS794 ); U9 : para_register_8 port map( CLK => CLK, DATA_IN => X, DATA_OUT => BUS1125, WE => WE ); end A_Block_Diag;  Висновки: виконавши дану лабораторну роботу, я навчилась використовувати блок-діаграми (Block Diagrams) для декомпозиції складних об'єктів на структурні складові та отримала навички застосування констант generic для проектування структурних елементів, розробивши модель 8-розрядного 7-сегментного індикатора.
Антиботан аватар за замовчуванням

25.11.2012 18:11-

Коментарі

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

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

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

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

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

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

Admin

26.02.2023 12:38

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