Применение языка VHDL при проектировании специализированных СБИС. Ивченко В.Г. - 40 стр.

UptoLike

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

41
4. ПОДМНОЖЕСТВА ЯЗЫКА VHDL
4.1. Стандартные подмножества языка VHDL
В настоящий момент существуют различные системы моделирования аппаратного обеспечения,
реализующие такие подмножества VHDL, которые соответствуют существующим у них средам
проектирования. Если в каждой подобной системе внедрить свое собственное подмножество языка, то это
разрушит главную цель VHDL : достижение переносимости и взаимодействия проектов.
С этой целью специальной группой VDEG (VHDL Design Exchange Group) для задач моделирования были
выделены три стандартных уровня языка и для них были выбраны соответствующие подмножества VHDL-
конструкций /2/. Эти подмножества приведены ниже.
S0 - подмножество конструкций VHDL, необходимых при использовании VHDL в среде отдельной системы
моделирования; это подмножество определяет минимальный набор конструкций VHDL: объявление объекта
(entity_declaration), тело архитектуры (architecture_body), объявление подпрограммы (subprogram_declaration),
список портов (port_list) и др., требующихся для выполнения модели проекта; это подмножество не гарантирует
взаимодействия (совместного функционирования) моделей, т.к. не допустимо использование пакетов,
объявления новых типов, параметров настройки и пр.
S1 - подмножество конструкций VHDL, дополненное возможностями создания взаимодействующих
моделей; в это подмножество добавлены такие конструкции, как объявление пакета (package_declaration), тело
пакета (package_body), объявление типа (type_declaration), описание настройки (generic_clause) и др.
S2 - полная реализация VHDL, куда добавлены такие конструкции, как объявление дополнительного имени
(alias_declaration), объявление атрибутов (attribute_declaration), спецификация атрибута (attribute_specification),
объявление константы (constant_declaration), объявление подтипа (subtype_declaration), параллельный вызов
процедуры (concurrent_procedure_call), параллельный оператор утверждения (concurrent_assertion_statement) и
др.
Кроме того, VHDL поддерживает три различных стиля для описания аппаратных архитектур: - структурное,
потоковое и поведенческое. Поэтому, на основании представленной классификации, можно представить 9 (3х3)
различных подмножеств языка VHDL, необходимых для решения соответствующих задач.
4.2. Реализации подмножеств VHDL в учебно-промышленных САПР БИС.
Учебное программное обеспечение характеризуется, как правило, ограниченным набором свойств по
сравнению с коммерческими промышленными программами. Рассматриваемые ниже программные средства,
разработанные для учебных целей, обладают некоторыми ограничениями, тем не менее, они вполне могут
применяться как в учебном процессе, так и при разработке реальных проектов.
4.2.1. Подмножество VHDL системы синтаксического и семантического контроля VHDL-описаний “VHDL-
анализатор
Система синтаксического и семантического контроля VHDL-описаний “VHDL-анализатор” (VA)
поддерживает стандартное подмножество VHDL S2 /1/. Это позволяет проверять практически любые
конструкции языка. Однако данный пакет имеет серьезное ограничение, сужающее его практическое
применение: объем анализируемого модуля проекта не должен превышать 64 Кбайт. Синтаксис описаний
проверяется полностью. При семантическом анализе выявляются только возможные статические ошибки
описания модуля проекта.
Согласно требованиям стандарта (IEEE Standard 1076 VHDL) система VA позволяет создать и использовать
любое число библиотек ресурсов. Для ассоциирования логического имени библиотеки с соответствующим ей
фактическим именем в VA предусмотрен специальный механизм установки внешних ссылок. Наличие
развитых средств работы с библиотеками, а также поддержка стандартного подмножества VHDL позволяют
эффективно использовать данный программный продукт.
4.2.2. Подмножество VHDL САПР СБИС Alliance
Учебно-промышленная САПР Alliance предназначена для разработки цифровых СБИС. Версия САПР 3.2b
(1997-1998 гг.) поддерживает ограниченное подмножество VHDL, которое можно отнести к стандартному
подмножеству S0. Несмотря на это, Alliance широко используется как для обучения основам проектирования
СБИС, так и для разработки коммерческих проектов /3/.
Рассмотрим особенности подмножества VHDL этой САПР.
Из трех существующих стилей описания Alliance поддерживает структурное и потоковое представления. Для
обеспечения автоматической трансляции из структурного стиля VHDL в другие структурные форматы (EDIF,
COMPASS, VERILOG, ALLIANCE, и др.) исключена возможность объединять в описании одного объекта
проекта оба стиля.
Типичная VHDL модель проекта, предлагаемая в Alliance, состоит из иерархии структурных описаний
компонент и потоковых описаний простейших логических элементов нулевого и первого уровня.