![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Следует заметить, что удобство использования оператора проявляется, когда требуется создать проект устройства с большей или меньшей разрядностью, из уже существующего проекта того же функционального назначения.
Таким образом, применение оператора generate даст возможность определить группу идентичных компонентов, использующих только одну спецификацию компонента и многократное внедрение спецификации компонента за счет генерирующего (порождающего) механизма оператора.
По своему конструктивному устройству оператор generate относится к классу составных операторов.
Конструкция Оператора generate состоит из трех главных частей:
· Объявления generation scheme (порождающей (генерирующей) схемы). Порождающая схема может иметь вид for или вид if; Порождающая схема for определяет, каким образом (сколько раз) должны выполнятся операторы, располагаемые в подразделе выполняемых конкурентных операторов. Порождающая схема for определяет, каким образом (сколько раз) должны выполнятся операторы, располагаемые в подразделе выполняемых конкурентных операторов. Порождающая схема if определяет, каким образом (при каком условии) должны выполнятся операторы, располагаемые в подразделе выполняемых конкурентных операторов
· Подраздела Деклараций (В подразделе деклараций могут располагаться локальные объявления подпрограмм, типов, сигналов, констант, компонентов, атрибутов, конфигураций, файлов и групп);
· Подраздела выполняемых конкурентных ( параллельно выполняемых) операторов.
2. Оператора generate порождающей схемы for
Оператора generate порождающей схемы for имеет такой синтаксис:
Label(метка): for parameter (переменная цикла) in range (параметры цикла) generate
[ { declarations – подраздел деклараций}
begin ]
{ concurrent_statements – подраздел конкурентных операторов}
end generate [ label ];
· Каждый оператор generate порождающей схемы for… generate должен иметь метку.
· Если оператор generate порождающей схемы for… generate не содержит никакие локальные объявления, то ключевое слово begin использовать не нужно.
· Оператор generate порождающей схемы for… generate может быть вложенным.
· Оператор обязательно должен заканчиваться ключевыми словами end generate
Как видно из синтаксиса оператора generate этой разновидности, порождающая схема for определяет, каким образом (сколько раз) должны выполнятся операторы, располагаемые в его подразделе выполняемых конкурентных операторов. Другими словами, порождающая схема for используется, чтобы описать сколько раз требуется внедрить в проект систолического устройства имеющееся описание одного и того же компонента.
Пример 1 иллюстрирует применение концепции порождающей схема for в VHDL проекте 4-битного двоичного счетчика, где в качестве компонент использованы 4 триггера типа D.
Для наглядности иллюстрации этой концепции на Рис.1 приведена схема электрическая принципиальная двоичного счетчика реализованного (instantiates) из N D-триггеров.
Рис. 1. Двоичный N-битный накапливающий счетчик.
Дата публикования: 2014-11-18; Прочитано: 231 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!