Автор: Пользователь скрыл имя, 26 Октября 2011 в 23:34, реферат
Як вказувалося раніше, мова VHDL призначена для опису ЦС на різних рівнях проектування, починаючи з етапу системного (алгоритмічного, высокорівневого) проектування і закінчуючи етапом логічного (низкорівневого) проектування з використанням методології нисхідного проектування. Ця методологія припускає ієрархічний опис проектованої ЦС як системи, що складається з окремих компонентів (підсистем, модулів, вузлів тощо), з поступовим переходом від абстрактного (системного чи алгоритмічного) опису до більш детального (структурного чи схемного) опису.
1.6.
Package (пакет)
Package (пакет) – це програмний модуль, що складається з груп різних декларацій, що можуть бути розбиті на кілька підрозділів. Пакети звичайно для зручності зберігаються в бібліотеках. Пакет складається з двох окремих модулів: обов'язкового оголошення пакета (заголовка) і (необов'язкового) тіла пакета (package body).
Ціль пакета складається в оголошенні загальних типів, підтипів, констант, сигналів, файлів, компонент, функцій, процедур і ін. Як тільки пакет визначений, він може багаторазово використовуватися в незалежних проектах.
Синтаксис:
package package_name is
package_
end
[package] package_name;
Елементи, оголошені в декларації пакета, доступні для інших модулів, якщо застосовується граматична конструкція use.
Стандарт мови VHDL визначає два стандартних пакети, що не вимагають використання use і повинні бути доступні в будь-який VHDL середовищу – пакети STANDARD і TEXTIO. Перший з них містить основні декларації типів даних, констант, операторів і т.п., другий визначає операції для керування текстовими файлами. Обидва пакети містяться в стандартній бібліотеці STD. Крім цього, як уже згадувалося, мається інший стандарт розширення мови, що міститься в пакеті std_logic_1164.
Приклад 1.7.
library packages;
use
packages.AUXILIARY.all;
architecture struct of adder is
. . . . .
end
architecture struct;
Усі декларації, що містяться усередині пакета AUXILIARY, можуть використовуватися в тілі архітектури STRUCT проектованого об'єкта Adder. Пакет зберігається безпосередньо в бібліотеці пакетів.
Приклад 1.8.
library IEEE;
use
IEEE. std_logic_1164.all;
package AUXILIARY is
type Mux_input is array (integer range <>) of std_logic_vector (0 to 7);
type operation_set is (Shift_left, Add);
subtype Mux_address is positive;
function Compute_address (in1: Mux_input) return Mux_address;
constant Deferred_Con: integer;
end
package AUXILIARY;
У даному випадку пакет
Тіло пакета (package body) визначає тіла підпрограм і значень затриманих констант, оголошених в інтерфейсі до пакета. Інші декларації також дозволені, але вони видимі тільки усередині тіла пакета.
Синтаксис:
package body package_name is
package_body_
subprogram bodies declarations
deferred constants declarations
end
package body package_name;
Приклад 1.9.
library IEEE;
use
IEEE. std_logic_1164.all;
package AUXILIARY is
type Mux_input is array (integer range <>) of std_logic_vector (0 to 7);
type operation_set is (Shift_left, Add);
subtype Mux_address is positive;
function Compute_address (in1: Mux_input) return Mux_address;
constant Deferred_Con: integer;
end package AUXILIARY;
package body AUXILIARY is
function Compute_address (in1: Mux_input) return Mux_address is
begin
…
end;
constant Deferred_Con: integer:=177;
end
package body AUXILIARY;
У розглянутому прикладі спочатку визначений пакет, а потім супровідне тіло пакета. Вони обоє повинні мати однакові імена.
1.1.
Сформулюйте і поясните вимоги,
пропоновані до мов
1.2.
Поясните значення й опишіть
особливості наступних
1.3.
Поясните різницю між
1.4. Опишіть, що загального і які відмінності між мовою VHDL і мовами програмування високого рівня.
1.5. Опишіть і охарактеризуйте основні частини VHDL-опису цифрової системи.
1.8.
Що означають поняття “
1.9.
Охарактеризуйте основні
1.10.
Охарактеризуйте поняття «
1.11. чи Можуть об'єкт проекту (entity) і його архітектура (architecture) визначені в окремих вихідних файлах?
1.12.
Що визначає архітектурний
1.13. Укажіть діючі стандарти мови VHDL і стандартні пакети, що поставляються з базовим стандартом VHDL.
1.14.
Для наступних логічних
1.15. Запишіть
декларацію об'єкта й