Язык описания электронной аппаратуры VHDL. Берчун Ю.В. - 40 стр.

UptoLike

Составители: 

40
над одним проектом. Упрощается включение в новые проекты ранее созданных модулей, а
также использование стандартных библиотек проектных модулей.
По форме структурные и поведенческие архитектурные тела не различаются. Различие
состоит в составе включенных операторов и деклараций.
В разделе объявлений SAB, кроме характерных для любых архитектурных тел деклара-
ций, таких как декларации типов, сигналов, констант, включаются специфические подразде-
лы: обязательный подраздел декларации прототипов используемых компонентов и необя-
зательный подраздел объявления конфигураций. Раздел операторов SAB содержит опера-
торы вхождения компонентов, которые, собственно, и определяют порядок соединения
компонентов. Могут включаться и другие параллельные операторы, а если таких операторов
относительно много, подобное архитектурное тело называют смешанным, или структурно-
поведенческим.
Каждому модулю, входящему в качестве структурного компонента в SAB, должно со-
путствовать объявление прототипа. Синтаксис декларации прототипа компонента имеет вид:
<декларация прототипа компонента>::=
component <имя entity компонента> is
[<образ настройки>]
<образ порта>
end component [<имя entity компонента>];
Здесь <образ настройки> и <образ порта>прямая копия высказываний ge-
neric и port из текста объявления entity соответствующего компонента.
Если в устройстве есть несколько одинаковых модулей, то прототип декларируется
только один раз. Например, если в проект входит несколько однотипных регистров, пред-
ставленных в библиотеке одним и тем же
entity, то в структурном теле размещается един-
ственная декларация прототипа регистра, даже если конкретные экземпляры имеют различ-
ные параметры. Тем не менее, каждому экземпляру, включаемому в проект, называемому
также вхождением модуля (instance), при структурном описании присваивается собственное
имя. Это собственное имя предъявляется в разделе операторов архитектурного тела в виде
метки оператора вхождения компонента
.
В подразделе объявления сигналов обязательно объявление всех соединений между
блоками. Каждый сигнал относят к типу, определенному в разделе
port соответствующего
модуля.
Основными операторами SAB являются операторы вхождения компонентов (Com-
ponent Instantiation Statement), которые определяют порядок соединения включаемых в про-
ект модулей и, возможно, их параметры.
<оператор вхождения компонента>::=
<метка вхождения>: [component] <имя компонента>
[generic map (<список соответствий параметров настройки>)]
port map (<список соответствий порта>);
<список соответствий>::=
([<формальный параметр>] =><фактический параметр>
{,[<формальный параметр>] => <фактический параметр>})
над одним проектом. Упрощается включение в новые проекты ранее созданных модулей, а
также использование стандартных библиотек проектных модулей.
     По форме структурные и поведенческие архитектурные тела не различаются. Различие
состоит в составе включенных операторов и деклараций.
     В разделе объявлений SAB, кроме характерных для любых архитектурных тел деклара-
ций, таких как декларации типов, сигналов, констант, включаются специфические подразде-
лы: обязательный подраздел декларации прототипов используемых компонентов и необя-
зательный подраздел объявления конфигураций. Раздел операторов SAB содержит опера-
торы вхождения компонентов, которые, собственно, и определяют порядок соединения
компонентов. Могут включаться и другие параллельные операторы, а если таких операторов
относительно много, подобное архитектурное тело называют смешанным, или структурно-
поведенческим.
     Каждому модулю, входящему в качестве структурного компонента в SAB, должно со-
путствовать объявление прототипа. Синтаксис декларации прототипа компонента имеет вид:
<декларация прототипа компонента>::=
component <имя entity компонента> is
[<образ настройки>]
<образ порта>
end component [<имя entity компонента>];
     Здесь <образ настройки> и <образ порта> — прямая копия высказываний ge-
neric и port из текста объявления entity соответствующего компонента.
     Если в устройстве есть несколько одинаковых модулей, то прототип декларируется
только один раз. Например, если в проект входит несколько однотипных регистров, пред-
ставленных в библиотеке одним и тем же entity, то в структурном теле размещается един-
ственная декларация прототипа регистра, даже если конкретные экземпляры имеют различ-
ные параметры. Тем не менее, каждому экземпляру, включаемому в проект, называемому
также вхождением модуля (instance), при структурном описании присваивается собственное
имя. Это собственное имя предъявляется в разделе операторов архитектурного тела в виде
метки оператора вхождения компонента.
     В подразделе объявления сигналов обязательно объявление всех соединений между
блоками. Каждый сигнал относят к типу, определенному в разделе port соответствующего
модуля.
     Основными операторами SAB являются операторы вхождения компонентов (Com-
ponent Instantiation Statement), которые определяют порядок соединения включаемых в про-
ект модулей и, возможно, их параметры.
<оператор вхождения компонента>::=
<метка вхождения>: [component] <имя компонента>
[generic map (<список соответствий параметров настройки>)]
port map (<список соответствий порта>);
<список соответствий>::=
([<формальный параметр>] =><фактический параметр>
{,[<формальный параметр>] => <фактический параметр>})


                                             40