русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Программный комплекс ПА-6 для функционального проектирования динамических объектов


Дата добавления: 2015-08-06; просмотров: 898; Нарушение авторских прав


 

Программный комплекс ПА-6 пред­назначен: для анализа и параметрической оптимизации технических объектов, описываемых системами ОДУ. Основными элементами математического обеспечения

 

Рис. 5.5. Общая схема функционирования программного комплекса ПА-6:

Гвх — входной транслятор; К— компилятор; PC — редактор связей; РП — ра­бочая программа

анализа в ПА-6 являются методы узло­вых потенциалов, комбинированный неявно — явный интегрирования ОДУ. Ньютона, Гаусса. На основе этих методов в комплексе реали­зованы современные диакоптические алгоритмы анализа (латентного подхода, раздельного итерирования, «временного» анализа), позво­ляющие эффективно моделировать объекты большой размерности, содержащие сотни и тысячи фазовых переменных. Использование этих методов требует разбиения (декомпозиции) анализируемых объектов на фрагменты. В ПА-6 такое разбиение должен осуществ­лять пользователь по функциональному признаку. Кроме того, пре­дусмотрена возможность совместного анализа объектов с непрерыв­ными и дискретными моделями.

Комплекс ПА-6 построен по принципу компиляции объектных модулей на машинном языке и ориентирован на использование в рамках операционных систем ЕС ЭВМ.

Рассмотрим принципы функционирования комплекса ПА-6 в пакетном режиме.

Общая схема функционирования комплекса ПА-6.Комплекс ПА-6 представляет собой средство синтеза рабочих программ, реали­зующих конкретные маршруты проектирования, задаваемые пользо­вателем средствами входных или промежуточного языков. Общая схема функционирования ПА-6 представлена на рис. 5.5. Первым в работу вступает один из входных трансляторов Тт, осуществляю­щих перевод описания технического объекта и задания на его про­ектирование с входного языка конкретной предметной области 1 в универсальный промежуточный язык 2. Кроме того, входные транс­ляторы могут организовывать работу с библиотеками параметров, стандартных фрагментов и макромоделей отдельных предметных областей, осуществлять связь с локальными и обшей БД САПР. В качестве ГВх может использоваться программа, восстанавливаю­щая эквивалентную схему объекта по результатам его конструктор­ского проектирования (например, программа, восстанавливающая принципиальную электрическую схему интегральных микросхем по описанию их топологии).



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


Рис. 5.6. Схема функционирования компилято­ра программного комплекса ПА-6:

А — анализатор, Г — генератор; Кр — конструктор, ВБД — внутренняя база данных, Гос транслятор m состава ОС

 

модулей, содержащая подпрограммы и управляющие блоки, необходимые для расчета объекта. Далее работает редактор связей PC из состава используемой ОС, который компонует загрузочный модуль рабочей программы РП (обрабаты­вающей подсистемы ПА-6) из модулей двух типов: сгенерированных компилятором и библи01ечны\, постоянно хранящихся в библиоте­ках 4 комплекса Полученная таким образом рабочая программа загружается в ОП, с этого момента и начинается собственно расчет проектируемого объекта.

Для реализации данной последовательности выполнения про­граммных компонентов в комплексе ПА-6 предусмотрено два спо­соба.

Способ 1. Он предусматривает использование возможностей ОС для перехода от шага к шагу обработки подобно тому, как это принято для процедур трансляции — редактирования — выполнения программ, записанных на стандартных языках программирования.

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

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

Компилятор (языковая подсистема) комплекса ПА-6.Схема функционирования компилятора дана на рис. 5 6. Собственно компи­лятор комплекса ПА-6 составляют анализатор А, генератор Г и конструктор Кр, управляемые монитором.

Анализатор А считывает входной файл 2, содержащий предложения промежуточного языка, и обеспечивает лексический и синтаксический анализ описания объекта и задания на расчет. Он


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

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

Промежуточный язык комплекса ПА-6 допускает описание про­извольных функциональных зависимостей пользователя (например, новых моделей элементов) на алгоритмических языках высокого уровня непосредственно во входном файле компилятора 2. Такие фрагменты текста распознаются анализатором и переписываются им в специальный набор данных 8. По окончании работы анализатора монитор осуществляет динамический вызов необходимых систем­ных трансляторов Гос. Полученные в результате их работы объект­ные модули помещаются во временную библиотеку 3.

В задачу генератора Г входит генерация объектных мо­дулей процедур рабочей программы РП: обращения к моделям элементов проектируемого объекта, расчета матрицы Якоби и век­тора невязок, прямого и обратного ходов алгоритма Гаусса, расче­та данных для печати и др. Непосредственно генерации предшеству­ет оптимальная перенумерация переменных математической модели объекта. Генерация объектных модулей производится в соответствии с делением проектируемого объекта на фрагменты. Такой подход необходим для реализации диакоптических методов анализа и спо­собствует снижению требований к ОП, занимаемой компилятором, так как возникает возможность последовательной обработки фраг­ментов объекта с сохранением во внутренней БД только необходи­мого минимума информации о них.

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

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

Генератор — самый сложный блок компилятора. От качества сгенерированных им объектных программ в значительной степени зависит эффективность всего программного комплекса, поэтому в генераторе проводится оптимизация генерируемого кода.

Конструктор комплекса ПА-6 планирует состав и струк­туру загрузочного модуля рабочей программы РП, используя для этого возможности управляющих предложений и механизм автовы­зова редактора связей ОС ЕС. Источниками подпрограмм, из кото­рых компонуется рабочая программа, являются временная библио­тека объектных модулей 3 и постоянные библиотеки 4 (подпрограмм моделей элементов; подпрограмм методов интегрирования, много­вариантного анализа и параметрической оптимизации; подпрограмм внешних воздействий на проектируемый объект; подпрограмм расче­та выходных параметров по результатам моделирования; управля­ющих и сервисных подпрограмм и т. п.).

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

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

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

 

Рис. 5.7.

 

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

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

Модульная структура рабочей программы комплекса ПА-6 сов­падает со структурой базового математического обеспечения, пред­ставленной на рис. 5.2. Однако в комплексе ПА-6 группы модулей «параметрическая оптимизация» ОПТ, «многовариантный анализ» МВА, «одновариантный анализ» ОБА являются равноуровневыми и располагаются в отдельных перекрываемых сегментах оверлейной структуры рабочей программы. Связь между ними по управлению и информации осуществляемся через монитор рабочей программы, как это показано на рис. 5.7. Поэтому подпрограммы, составляющие эти группы, должны быть повторновходимыми, это несколько услож­няет их программирование, но зато кроме значительной экономии ОП даст возможность организации вложенных циклов операторов языка описания задания промежуточного языка комплекса ПА-0.

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


В настоящее время существуют две диалоговые версии про­граммного комплекса; одна из них предназначена для работы в режиме разделения времени (TSO) стандартных операционных си­стем ЕС ЭВМ, а другая — в рамках оригинальной диалоговой си­стемы C.IE, разработанной в МВТУ им. Н. Э. Баумана. Обе версии допускают работу с комплексом ПА-6 одновременно нескольких пользователей.

В зависимости от характера требуемых от монитора действий команды диалогового режима разбиты на две группы. Первая группа команд используется для «общения» пользователя с рабочей программой на этапе ее выполнения (команды прерывания и запуска рабочей программы, индикации и модификации различных переменных математической модели объек­та, управления выдачей результатов, изменения последовательности выполнения псевдокоманд и т. п.). Вторую группу составляют коман­ды корректировки структуры проектируемого объекта. Для выпол­нения таких команд диалоговый монитор должен выполнить всю цепочку динамических вызовов «входной транслятор — компилятор комплекса ПА-6 — редактор связей — рабочая программа», на что требуется определенное машинное время, обусловливающее задерж­ку реакции комплекса ПА-6 на команду пользователя.



<== предыдущая лекция | следующая лекция ==>
Проектирования на макроуровне | Программного комплекса ПА-6


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.008 сек.