Иерархические блоки
Любой фрагмент схемы можно оформить в виде иерархического блока, символ которого представляет собой прямоугольник, и затем разместить его на схеме, что позволяет уменьшить ее размеры. Другое применение иерархических блоков — представление с их помощью повторяющихся фрагментов схем: различных фильтров, усилителей, выпрямителей, сумматоров и т.п. Иерархический блок размещается на схеме по команде
PlacoHierarchical Block
или нажатием на кнопку панели инструментов. На рис. 2.30,
а
представлено диалоговое окно этой команды, имеющее следующие панели:
Reference
— позиционное обозначение иерархического блока;
Implementation Type --
тип иерархического блока, принимающий значения:
Schematic View — схема объекта,
VHDL — описание компонента на языке VHDL,
EDIF — список соединений в формате EDIF,
Project — проект ПЛИС,
PSpice Model — файл математической модели в формате PSpice; причем в этом блоке необходимо вручную разместить иерархические выводы,
PSpice Stimulus — файл внешнего воздействия в формате PSpice; причем в этом блоке необходимо вручную разместить иерархические выводы;
Implementation name
— имя иерархического блока;
Path and filename
— полное имя файла, в котором находится описание иерархического блока (не указывается, если файл размещается в каталоге текущего проекта, в этом случае в качестве имени его папки принимается имя иерархического блока);
Primitive
— тип блока: Yes — элементарный блок; No — блок, имеющий иерархическую структуру, Default — устанавливается по умолчанию (в соответствием с настройкой конфигурации на закладке
Hierarchy
команды
Options>Design Template
(рис. 2.21,
д);
User Properties
— открытие диалогового окна для ввода дополнительных параметров блока.
а)
б)
Рис. 2.30. Диалоговые окна создания иерархического блока (а) и нанесения его выводов (б)
После закрытия этого окна курсором на схеме наносятся прямоугольные контуры символа иерархического блока и по команде
Place>Hierarchical Pin или
нажатием на кнопку панели инструментов вводятся выводы этого блока. В диалоговом окне команды (рис. 2.30,
б)
указываются:
на панели Name — имя вывода;
в графе
Туре
— тип вывода:
3 State — вывод цифрового компонента, имеющий три состояния;
Bidirectional — двунаправленный вывод цифрового компонента;
Input — вход;
Open Collector — вывод цифрового компонента типа открытый коллектор;
Open Emitter — вывод цифрового компонента типа открытый эмиттер;
Output — выход;
Passive — вывод пассивного компонента;
Power — вывод подключения к источнику питания;
на панели
Width
выбирается тип цепи, подключаемой к выводу:
Scalar — одиночная цепь;
Bus — шина.
Чтобы не открывать это окно каждый раз при размещении нового вывода, можно разместить все выводы блока одного типа, а затем отредактировать таблицу всех выводов (рис. 2.31), выбрав строку
Edit Properties
во всплывающем меню.
Рис. 2.31. Таблица свойств выводов
После завершения команды
Place>Hierarchical Block
автоматически создается папка с указанным именем (см. строки Implementation name, Path and filename на рис. 2.30, а). В эту папку необходимо поместить описание иерархического блока в виде его схемы замещения (если выбран тип блока Schematic View) или текстового описания на языке VHDL. На рис. 2.32 приведен пример схемного описания иерархического блока. Цепям, которые подключаются к выводам иерархического блока, присваиваются имена, совпадающие с именами соответствующих выводов, или по команде
Place>Hierarchical Port
или нажатием на кнопку панели инструментов вводятся внешние порты схемы этого блока (имена портов также должны совпадать с именами соответствующих выводов, чтобы обеспечить их электрическое соединение).