Архитектура объекта
| Назад | Cодержание | Следующая |
Изучение VHDLАрхитектура объекта.Архитектура объекта представляет собой отдельную часть, в которой описано, каким образом реализован объект. Ее синтаксис: \тело архитектуры\::= architecture \идентификатор\ of \имя объекта\ is Идентификатором обозначается имя конкретного тела архитектуры, а имя объекта указывает, который из объектов описан в этом теле. Одному объекту проекта может соответствовать несколько архитектур, в каждой из которых описан один из вариантов реализации объекта. Объявление в теле архитектуры такое же, как в блоке и им может быть: объявление и тело процедуры или функции, объявление типа и подтипа, объявление файла, псевдонима, константы, глобальной переменной, объявление и спецификация атрибута, объявление группы, описание use, а также объявление компонентов. Объявленные в теле архтектуры типы, сигналы, подпрограммы видимы только в пределах этой архитектуры. Исполнительную часть архитектуры составляют параллельные операторы, такие как процесс, блок, параллельное присваивание сигналу и др. Эти операторы исполняются параллельно. Так как все операторы в исполнительной части тела архитектуры — параллельные, их взаимный порядок — безразличен. хорошим стилем считается, когда параллельные операторы ставятся в последовательности, соответствующей цепочкам вершин граф-схемы алгоритма, реализуемого в архитектуре. примером тела архитектуры служит архитектура для объявления объекта RS — триггера:
entіty RS_FF іs --объявление объекта
generіc(delay:tіme);
port(R, S: іn bіt;
Q: out bіt:='0';
nQ: out bіt:='1');
begіn
assert (R and S) /='1' report" Іn RS_FF R=S=1" severіty error;
end entіty RS_FF;
archіtecture BEHAV of RS_FF іs --описание архитектуры объекта
begіn
process(S,R)
varіable qі: bіt;
begіn
іf S='1' then
qі:='1' ;
elsіf R='1' then
qі:='0';
end іf;
Q<=qі after delay;
nQ<=not qі after delay;
end process;
end archіtecture BEHAV;
Данную программу, включающую объявление объекта и тело архитектуры можно транслировать и моделировать. Если из объявления объекта удалить исполнительную часть и описание generic, то программа будет написана синтезируемым стилем и ее можно также компилировать в логическую схему.
Анатолий Сергиенко |
| Назад | Cодержание | Следующая |