Основы систем автоматизированного проектирования

Методическое пособие - Компьютеры, программирование

Другие методички по предмету Компьютеры, программирование

ния (промежуточные, конечные, типовые) и проектные документы. Языки проектирования являются важнейшей составной частью САПР и должны обладать как многими качествами универсальных языков программирования в представлении данных и действий над ними, так и достаточными уровнями выразительности, гибкости и проблемной ориентации в построении языковых конструкций, привычных проектировщику.

Универсальные алгоритмические языки типа Турбо Паскаль, Си+, Си++, Фортран достаточно эффективно используются для реализации САПР, так как обладают развитыми возможностями для описания разнообразных алгоритмов, характерными для программного обеспечения САПР. Однако при их использовании в качестве языков проектирования программа, как правило, громоздкая и неудобная. Это объясняется, во-первых, необходимостью специальной подготовки в области программирования и, во-вторых, сложностью самих процессов трансляции, генерации и отладки программ для управления последовательностью проектных процедур и операций в соответствии с заданием на проектирование, которое составляется на этих языках.

Альтернативой этому подходу является создание специализированных проблемно-ориентированных языков проектирования и трансляторов к ним. Языки проектирования принято классифицировать по следующим основным признакам:

oместу в процессе автоматизированною проектирования;

oсвязи с универсальными языками программирования;

oоперативности;

oпреимущественному способу представления информации.

По месту в процессе автоматизированного проектирования различают языки входные, внутренние, промежуточные, выходные, сопровождения и управления.

Входные языки предназначены для задания исходной информации об объектах и целях проектирования и представляют собой совокупность языков описания объектов (ЯОО) и языков описания задания (ЯОЗ).

Под описанием объекта понимают описание структуры объекта (материала, предмета или системы), его свойств и характеристик, включая описание взаимодействия между частями объекта и его взаимодействия с внешней средой, а также описание схемы функционирования объекта. Описание процесса как объекта проектирования включает также описание результата процесса и заданных характеристик его выполнения во времени и пространстве.

Для задач анализа и оптимизации с помощью ЯОО описываются структура и исходные параметры объекта, а для задач структурного синтеза - техническое задание и, возможно, исходный вариант объекта или его аналога. Для описания процессов используются специальные классы процедурных языков - языки моделирования.

Язык ЯОЗ предназначен для идентификации заданий, описания их характеристик и указания последовательности выполнения проектных процедур на ЭВМ.

Внутренние и промежуточные языки предназначены для представления информации на определенных стадиях ее обработки в ЭВМ. Появление этих языков объясняется выделением в САПР некоторых подсистем (например, графического ввода, графического документирования, архива чертежей и т.п.), инвариантных к классам объектов проектирования, и необходимостью унификации представления входных или (и) выходных данных для этих подсистем.

Промежуточные языки позволяют легко включать инвариантные подсистемы в различные САПР путем разработки специальных программ, называемых конверторами, которые выполняют преобразование данных из входных языков различных систем в единый унифицированный промежуточный язык определенной инвариантной подсистемы. Или, наоборот, промежуточный язык может быть преобразован во входной язык какой-либо другой специализированной подсистемы.

Примерами внутренних и промежуточных языков могут служить: язык представления графической и текстовой информации, языки графических метафайлов для хранения данных в архивах чертежей и т.п.

Выходные языки проектирования предназначены для представления результатов выполнения проектных процедур на ЭВМ, в том числе каких-либо проектных решений, включая результаты проектирования в форме, удовлетворяющей их дальнейшее применение. Это может быть язык чертежа или язык для управления станками с числовым программным управлением и т.п.

Языки сопровождения и управления служат для непосредственного общения пользователя с ЭВМ в процессе решения задач. Эти языки, как правило, включают средства для корректировки и редактирования входных данных и заданий на проектирование и поэтому содержат элементы входных и выходных языков, а также язык диагностических сообщений о допущенных ошибках.

По связи с универсальными языками программирования различают автономные и расширяющие языки. Автономные языки имеют собственные грамматики, соответствующий транслятор и могут применяться независимо от других языков программирования. Расширяющие языки строятся на основе грамматики другого языка и являются его проблемно-ориентированными дополнениями. Базой расширения чаще всего служат алгоритмические языки. Такой подход позволяет использовать в языках проектирования все имеющиеся в базовом языке мощные средства обработки данных и упростить связь языков проектирования с другими программными средствами системы, а также обеспечить в значительной степени независимость языков проектирования от типа используемой ЭВМ. К недостаткам расширяющих языков относится преимущественно их пакетный режим использования.

По оперативности языки разделяют на диалоговые и пассивные<