МОВА ПРОГРАМУВАННЯ VHDL

ЛАБОРАТОРНА РОБОТА № 7

 

Мета роботи. Ознайомитись з мовою VHDL і засобами редагування логічних схем САПР Active-HDL.

2.1 Теоретична довідка

 

Прагнення до використання єдиної мови на різних ієрархічних рівнях проектування електронних пристроїв, починаючи з вентильного рівня і закінчуючи рівнем опису обчислювальних систем, призвело до появи стандартної мови VHDL (Very high speed integrated circuits Hardware Description Language).

Мова VHDL базується на мові високого рівня Ада. З цієї мови розроблювачами VHDL були запозичені синтаксис і основні структури. Використано типові структури мов високого рівня: розгалуження, цикли, підпрограми, паралельне виконання процесів і т.д.

 

2.1.1 Опис об'єктів мовою VHDL

 

Об'єкти, що описані мовою VHDL, називаються сутностями (entity). Об'єктом може бути логічний елемент, функціональний блок, мікросхема, тобто цифрова система (ЦС). Опис об'єкта складається з двох частин (секцій) - декларативної і виконавчої.

Декларативна частина (entity declaration) має наступну форму:

 

entity <ім'я сутності> is

<опис інтерфейсу об'єкта, тобто опис зв'язків сутності з навколишнім середовищем>;

<опис загальних підпрограм, типів, сигналів і т.і.>;

end <ім'я сутності>;

 

Виконавча частина(architecture body):

 

architecture <ім'я> of <ім'я сутності> is

<декларативна частина - те ж, що й у декларативній частині сутності, але стосовно даного блоку>;

begin <виконавча частина - опис структур і/або дій>;

end <ім'я>;

 

Звичайно в декларативній частині описуються типи компонентів, що входять у сутність, і сигнали, що використовуються, а у виконавчій частині типи конкретизуються, даються імена кожному екземплярові і його виводам.

Опис у виконавчій чистині може бути трьох типів:

- опис потоку даних (data-flow description), що імітує поведінку об'єкта проекту як послідовність проходження потоку даних і сигналів керування, як правило, на реєстровому рівні.

 

Опис потоку даних:   <мітка>: <ім'я порту> <= <логічний вираз> after <затримка>;

 

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

 

Поведінковий опис:   <мітка>: process (<список параметрів>) begin <тіло процесу> end process <мітка>;

 

- структурний опис імітує об'єкт проекту як сукупність компонентів структури і зв'язків між ними. Для опису компонентів може бути обраний кожний з перерахованих описів (поведінковий або потоку даних).

 

Структурний опис:   <мітка>: <ім'я - тип компонента> port map (<список сигналів>);

 

Розглянемо як приклад опис структури фрагмента логічної схеми з елементів І-АБО-НІ, що представлений на рис. 2.1, мовою VHDL.

 

 

Рисунок 2.1 - Фрагмент логічної схеми

 

При структурному описі у декларативній частині повинно бути записано:

 

component AND_OR is