Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Глава 7. Программное обеспечение сапр

Поиск

Важнейшим вопросом при создании САПР после фор­мализации процесса проектирования является вопрос отображения проектно-конструкторской деятельности ин­женера в программное обеспечение.

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

Если проектное решение утверждается, то оформляется требуемая выходная документация; если необходима кор­ректировка проекта, инженер, уточняя варьируемые пара­метры, в интерактивном режиме добивается нужных ре­зультатов; когда же проектно-конструкторский процесс не приводит к намеченной цели, необходимо уточнить входные данные и ограничения.

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

На основании изложенного модель программного обес­печения автоматизированной проектной процедуры можно представить схемой, показанной на рис. 7.1.

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

Назначение модуля формирования входных данных состоит в создании списка этих данных для проектирова­ния и его контроля при вводе в систему. Структура и фор­мат списка входных данных зависят от содержания про­ектной процедуры (расчетного модуля). Необходимо преду­смотреть существование нескольких версий списка вход­ных данных, которые с заданными

 

Формирование Задание

входных данных варьируемых

параметров

Корректировка Список Список

входных данных входных варьируемых Распечатка

данных параметров варьируемых

Распечатка параметров

входных данных Расчетный

модуль Подготовка

Формирование Список Проектные данных для

ограничений ограничений решения оценки решений

Корректировка Визуализация

ограничений проектных

решений

Распечатка

ограничений Документирование

проектных решений

Рис. 7.1. Модель программного обеспечения проектной процедуры в САПР

 

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

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

Для обеспечения тщательного контроля в САПР должны быть предусмотрены программные средства для визуализации списков данных. В общем случае необ­ходимо иметь возможность получения нескольких видов распечатки списка данных: двоичный, десятичный, сим­вольный, табличный и по записям. Для реализации различных требований пользователя распечатка может выводиться на экран дисплея или на АЦПУ. Все эти операции выполняет модуль распечатки входных данных.

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

Создание и контроль списка варьируемых параметров осуществляются программными модулями их задания и распечатки.

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

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

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

Связь между различными программными модулями проектной процедуры и взаимодействие данной проект­ной процедуры с другими происходит через общую память.

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

Программное обеспечение САПР состоит из совокупности программ, представленных как на машинных носителях, так и в виде текстовых документов и предназначенных для использования в САПР. Программное обеспечение (ПО) САПР включает: 1) общесистемное (общее), 2) базовое и 3) прикладное программные обеспечения. Типичная структура программного обеспечения САПР приведена на рис.2.14.

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

Базовое ПО состоит из программ, входящих в обслуживающие подсистемы САПР. К ним относятся программы: СУБД САПР, мониторной системы САПР, инструментальной подсистемы САПР.

Основные функции мониторной системы САПР:

1) управление процессом реализации проектных процедур и операций;

2) организация взаимодействия подсистем САПР;

 

Рис.2.14. Структура программного обеспечения САПР

 

3) интерпретация языковых форм заданий на выполнение проектных процедур и операций;

4) распределение ресурсов САПР в процессе проектирования;

5) защита ресурсов системы и баз данных от неразрешенного доступа;

6) обеспечения диалоговых и интерактивных режимов при проектировании в условиях параллельной работы нескольких подсистем САПР.

В состав мониторной системы САПР входят:

1) процедурно–ориентированные языки проектирования и управления процессом проектирования;

2) языки описания функций мониторной системы, т.е. распределения ресурсов САПР, формирования плановых заданий и т.п.;

3) языки описания структуры данных и преобразования баз данных,

4) программы, обеспечивающие реализацию функций мониторной системы;

5) базы данных мониторной системы.

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

Пакеты прикладных программ, имеющие оригинальный входной язык и соответствующий языковый процессор, называют программными системами. Её структура имеет вид, представленный на рис.2.15.

Рис. 2.15. Структура программной системы

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

Языковые процессоры, являясь инструментальными средствами САПР, выполняют следующие основные функции:

— проводят синтаксический и семантический анализ предложений на проблемно–ориентированных языках пользователя;

— выдают диагностические сообщения об ошибках, допущенных пользователями;

— формируют последовательность выполнения программных модулей, реализующих заданную проектную процедуру;

— передают данные, содержащиеся в предложениях, проектным процедурам.

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

Компилятор — транслятор, формирующий выходной текст в виде объектной программы на машинном языке или языке ассемблера. В этом случае трансляция и выполнение скомпилированной программы разделяются во времени.

Интерпретатор для некоторого языка воспринимает исходный текст, написанный на этом языке, как входную информацию и выполняет её. В отличие от компилятора интерпретатор не порождает объектную программу, которая затем должна выполняться, а непосредственно выполняет её сам. Часто интерпретацию делят на две фазы. На первой фазе интерпретатор анализирует всю исходную программу, так же как это делает компилятор, и транслирует её в некоторое внутреннее представление. На второй фазе это внутреннее представление исходной программы интерпретируется, т.е. выполняется покомандно.

Диалоговые языки САПР чаще всего реализуются посредством интерпретатора. Это объясняется следующим:

1) сообщения об ошибках передавать пользователю гораздо легче в терминах исходной программы;

2) версия программы на промежуточном языке нередко оказывается компактнее, чем машинный код, выдаваемый компилятором;

3) изменение части исходной программы не требует перекомпиляции всей программы.

Препроцессор формирует выходной текст в виде программы на языке высокого уровня (С++, Паскаль, Фортран), которая затем отрабатывается стандартным транслятором для данного языка.

Рассмотрим основные логические части языкового процессора (рис.2.16).

Рис.2.16. Логические части языкового процессора

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

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

Синтаксический и семантический анализаторы расчленяют исходный текст на синтаксические элементы, формируют их внутреннее представление и заносят информацию в таблицу символов и другие таблицы. При этом выполняется полный синтаксический и семантический контроль. Когда синтаксический анализатор распознаёт конструкцию исходного языка, он вызывает соответствующую семантическую процедуру, которая контролирует данную конструкцию с точки зрения семантики и затем запоминает информацию о ней в таблицу символов.

Внутреннее представление исходного текста в значительной степени зависит от его дальнейшего использования. Внутренним представлением может быть дерево, отражающее синтаксис предложений языка, так называемая польская запись или список тетрад (оператор, операнд 1, операнд 2, результат) в порядке их выполнения.

Генератор выходного текста переводит внутреннее представление исходного теста на машинный язык или язык ассемблера (для компилятора), в структуру данных (для интерпретатора) или в тест на языке программирования высокого уровня (для препроцессора).



Поделиться:


Последнее изменение этой страницы: 2016-07-16; просмотров: 627; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.118.166.45 (0.008 с.)