![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
В начале главы уже говорилось, что на моделируемое устройство в первую очередь следует посмотреть со стороны (“вид снаружи”) и для этого “черного ящика” определить интерфейс с внешним миром. Такая задача решается в VHDL декларацией интерфейса entity. Она задает имя описания, имена интерфейсных портов, направление передачи, тип портов. Порт – это сигнальная линия (шина), с помощью которой устройство (модель) взаимодействуют с окружающей средой. Например, для полусумматора (рис. 1.2) декларация будет выглядеть следующим образом:
Рис. 1.2. Полусумматор
entity half_adder is
port(a, b: in BIT; sum, cur: out BIT);
end half_adder;
Здесь описание с именем half_adder имеет два входных порта, a и b (in – означает входной порт), и два выходных порта, sum и carry (out – означает выходной порт). Тип портов определен как BIT – означает, что сигналы на линиях портов могут принимать значения: ‘0’ или ‘1’.
Другим примером может послужить дешифратор, показанный на рис. 1.3.
entity dec2x4 is
port(a, b, enable: in BIT; z: out BIT_VECTOR (0 to 3));
end dec2x4;
Здесь описание с именем dec2x4 имеет три входных порта и четыре выходных. Выходные порты описаны как массив. BIT_VECTOR – это одномерный массив, диапазон задается параметром Z (0 to 3).
Рис. 1.3. Декодер 2х4
Каждый интерфейсный порт может функционировать в следующих режимах:
in – значение порта только считывается для использования внутри модели,
out – значение порта может только обновляться моделью, но не считывается,
inout – двунаправленный порт, значение считывается и обновляется моделью,
buffer – буферный порт, значение считывается и обновляется моделью, но источником сигнала может быть либо буфер, либо одиночный источник.
Дата публикования: 2015-03-29; Прочитано: 164 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!