Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
derzh.docx
Скачиваний:
8
Добавлен:
17.09.2019
Размер:
10.8 Mб
Скачать

37. Модель польового транзистора програми Spice

38. Архітектурне тіло та об’єкт в мові vhdl

Цифрова система зазвичай розробляється як ієрархічна сукупність модулів. Кожен модуль має набір портів, що складають його інтерфейс до оточення. У ВХДЛ об’єкт – такий модуль, він може використовуватися як компонент проекту чи може бути модулем верхнього рівня. Синтаксис оголошення об’єкта:

оголошення_об’єкта ::=

entity ідентифікатор is

заголовок_об’єкта

розділ_оголошень_об’єкта

[ begin

операторна_частина_оголошення ]

end [просте_ім’я_об’єкта] ;

заголовок_об’єкта ::=

[ розділ_формальних_параметрів_настроювання ]

[ розділ_формальних_портів ]

розділ_параметрів_настроювання ::=

generic (список_параметрів_настроювання) ;

список_параметрів_настроювання ::=

інтерфейсний_список_параметрів_настроювання

розділ_портів ::= port (список_портів) ;

список_портів ::= інтрефейсний_список_портів

розділ_оголошення_об’єкта ::= { елемент_оголошення_об’єкта }

У розділі оголошень об’єкта можуть оголошуватися елементи, що використовуються у реалізації цього об’єкта. Також в оголошенні об’єкта можуть бути розташовані необов’язкові оператори, призначені для контролю за роботою об’єкта.

Заголовок об’єкта – найважливіша частина. Він включає специфікацію параметрів настроювання, що використовуються для керування структурою та поведінкою об’єкта та портів, через які передається інформація.

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

інтерфейс ний_список ::= елемент_інтерфейсу { елемент_інтерфейсу } ;

елемент_інтерфейсу ::= оголошення_інтерфейсу

оголошення_інтерфейсу ::=

оголошення_інтерфейсних_констант

| оголошення_інтерфейсних_сигналів

| оголошення_інтерфейсних_змінних

оголошення_інтерфейсних_констант ::=

[ constant ] список_ідентифікаторів : [ in ] опис_підтипу

[ := статичний_вираз ]

оголошення_інтерфейсних_змінних ::=

[ variable ] список_ідентифікаторів : [ режим ] опис_підтипу

[ := статичний_вираз ]

оголошення_інтерфейсних_сигналів ::=

[ signal ] список_ідентифікаторів : [ режим ] опис_підтипу [ bus ]

[ := статичний_вираз ]

Усі параметри настроювання мають оголошуватися як інтрефейсні константи. Порти визначаються з використанням інтерфейсного списку, всі його елементи мають бути сигналами. Змінні не можуть використовуватися в інтерфейсах об’єктів.

Слово signal в інтерфейсному списку сигналів може бути опущено. Слово bus використовується коли всі драйвери сигналу від’єднані. Як і параметри настроювання, фактичні сигнали, що будуть з’єднані з портами, визначаються, коли об’єкт використовується як примірник компонента у проекті.

Режим інтерфейсного сигналу вказує на можливість його зчитування та зміни в об’єкті. Якщо режим in, то він буде тільки зчитаний в об’єкті, змінити його неможливо. Сигнал, оголошений з режимом out, може бути змінений в об’кті, але дізнатися про його значення неможливо. Сигнал inout може бути зчитано та змінено в об’єкті.

Після оголошення об’єкта його реалізація має бути описана в архітектурному тілі. Одному об’єкту може відповідати кілька архітектурних тіл. Кожне архітектурне тіло являє собою різне представлення об’єкта.

Синтаксис опису архітектурного тіла:

архітектурне_тіло ::=

architecture ідентифікатор of назва_об’єкта is

розділ_оголошень_архітектруного_тіла

begin

операторна_частина_архітектруного_тіла

end [ просте_ім’я_архітектурного_тіла ] ;

розділ_оголошень_архітектруного_тіла ::=

{ елемент_оголошення_блоку}

операторна_частина_архітектруного_тіла ::= { паралельний_оператор }

елемент_оголошення_блоку ::=

оголошення_підпрограми

| тіло_підпрограми

| оголошення_типу

| оголошення_підтипу

| оголошення_константи

| оголошення_сигналу

| оголошення_компонента

| оголошення_псевдоніма

| оголошення_конфігурації

| специфікатор_використання

паралельний_оператор ::=

оператор_блоку

| оператор_створення_примірника_компонента

| оператор_процесу

| оператор_паралельного_присвоювання

| оператор_паралельного_виклику процедури

| оператор_паралельної_генерації

| оператор_паралельного_повідомлення

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

Операторна частина архітектурного тіла складається ТІЛЬКИ з паралельних операторів таких, як оператори створення примірників компонент, процесів, блоків, паралельного присвоювання та паралельного виклику підпрограм.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]