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

кандидата технических наук
Дубровин, Станислав Александрович
город
Москва
год
2005
специальность ВАК РФ
05.13.12
цена
450 рублей
Диссертация по информатике, вычислительной технике и управлению на тему «Разработка системы поддержки объектных представлений на основе функционального интерфейса в объектно-ориентированных базах данных САПР СБИС»

Автореферат диссертации по теме "Разработка системы поддержки объектных представлений на основе функционального интерфейса в объектно-ориентированных базах данных САПР СБИС"

На правах рукописи

ДУБРОВИН СТАНИСЛАВ АЛЕКСАНДРОВИЧ

РАЗРАБОТКА СИСТЕМЫ ПОДДЕРЖКИ ОБЪЕКТНЫХ ПРЕДСТАВЛЕНИЙ НА ОСНОВЕ ФУНКЦИОНАЛЬНОГО ИНТЕРФЕЙСА В ОБЪЕКТНО-ОРИЕНТИРОВАННЫХ БАЗАХ ДАННЫХ САПР СБИС

Специальность: 05.13.12. - системы автоматизации проектирования

АВТОРЕФЕРАТ диссертации на соискание ученой степени кандидата технических наук

Москва-2005г.

Работа выполнена на кафедре «ПКИМС» Московского государственного института электронной техники (технического университета)

Научный руководитель:

д.т.н., профессор Казенное Г.Г.

Официальные оппоненты:

д.т.н., профессор Лисов О.И.

к.т.н. Стешенко В.Б.

Ведущая организация:

ФГУП Научно-исследовательский институт физических проблем им. Лукина

Защита диссертации состоится 27 декабря 2005 г. на заседании диссертационного совета Д 212.134.01 при Московском государственном институте электронной техники 124498 Москва, Зеленоград МИЭТ.

С диссертацией можно ознакомиться в библиотеке Московского государственного института электронной техники.

Автореферат разослан «3.2. » ноября 2005 года.

Ученый секретарь ^

д.т.н., профессор,

Ц4792Т

&6щая характеристика работы

Аннотация

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

На основе результатов проведенного исследования создана программная среда, реализующая систему поддержки объектных представлений на основе объектно-ориентированной БД (ООБД) GOODS (Generic Object-Oriented Database System). С использованием данной системы разработана ООБД, интегрирующая проектную информацию логического и схемотехнического этапов проектирования СБИС для задачи смешанного моделирования. Ввиду схожести ряда задач проектирования, разработанный подход и инструментальные средства можно использовать для интеграции и других этапов разработки СБИС.

В работе проведено сравнение сложности разработки ПО БД традиционными способами и с использованием предложенного метода. Сделаны выводы о перспективности данного подхода.

Актуальность темы

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

РОС НАЦИОНАЛЬНА) БИБЛИОТЕКА )

itzrjn!

..............ш.т Л

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

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

Информация об объекте проектирования, хранимая в БД, содержит большое количество аспектов (логическое, схемотехническое и другие представления схемы). Использование современных технологий программирования (таких, как объектно-ориентированные БД) позволяет снизить сложность разработки механизмов передачи информации между компонентами САПР и центральной БД. Но при этом сохраняется высокая сложность и взаимосвязанность данных, хранимых в БД. Для работы конкретному приложению желательно иметь такой интерфейс к БД, который предоставлял бы доступ к хранимым данным в удобном этому приложению виде. Кроме этого, изменение структуры хранимых в БД данных сказывается на всех работающих с ней приложениях. По этой причине актуальность средств, позволяющих упростить задачу интеграции компонентов САПР и защитить их от изменений в структуре хранимых данных, остаётся высокой.

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

- * <' . г У

Цель работы

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

Для достижения поставленной цели необходимо решить следующие научно-технические задачи:

1. Исследовать существующие подходы к интеграции компонентов САПР СБИС на основе объектных представлений.

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

3. Предложить способы обновления данных через объектные представления.

4. Разработать методы ограничения доступа к данным на основе объектных представлений.

5. Создать архитектуру системы поддержки объектных представлений для БД САПР СБИС.

6. Разработать на основе этой архитектуры систему поддержки объектных представлений, интегрированную в объектно-ориентированную базу данных.

7. Провести практическую апробацию разработанной системы.

Научная новизна работы

1. Впервые разработана модель преобразований объектов на основе функционального интерфейса.

2. Разработана архитектура системы поддержки объектных представлений в объектно-ориентированных БД САПР СБИС.

3. Определены критерии выбора способов настройки функциональных интерфейсов в зависимости от сложности реализуемых преобразований.

4. Разработан метод создания объектных представлений для модели преобразований объектов на основе функционального интерфейса.

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

Методы исследования

В работе был использован математический аппарат теории множеств и теории алгоритмов. Экспериментальные результаты были получены при помощи разработанной программной среды.

Достоверность полученных результатов подтверждается используемым в работе математическим аппаратом, экспериментальным тестированием и промышленной эксплуатацией разработанного программного обеспечения в составе САПР «AVOCAD».

Личный вклад автора

Основными из полученных автором результатов, являются:

• систематизация требований к разработке ПО БД САПР логического и схемотехнического этапов проектирования СБИС;

• разработка модели объектных представлений на основе функционального интерфейса;

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

• разработка архитектуры поддержки объектных представлений с преобразованиями на основе функционального интерфейса для САПР СБИС;

• создание программного и алгоритмического обеспечения для реализации разработанной архитектуры;

• создание при помощи реализованной программной среды интегрированной БД для моделирования цифровых, аналоговых и цифро-аналоговых схем в рамках разработки системы «AVOCAD».

Практическая значимость работы

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

число обращений пользователей САПР СБИС в службу технической поддержки.

Внедрение результатов

Диссертационная работа являлась составной частью мероприятий проектно-конструкторской деятельности ООО "Юник Ай Сиз" по созданию САПР AVOCAD. Использование системы поддержки объектных представлений позволило сократить время разработки средств интеграции логического и схемотехнического этапов на основе ООБД более чем в 2 раза.

Реализация результатов работы

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

Представляется к защите

1. Модель преобразования объектов на основе функционального интерфейса.

2. Архитектура системы поддержки объектных представлений в ООБД САПР СБИС.

3. Критерии выбора способов настройки функциональных интерфейсов в зависимости от сложности реализуемых преобразований.

4. Метод создания объектных представлений для модели преобразований объектов на основе функционального интерфейса.

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

Апробация результатов работы

Результаты диссертационной работы докладывались и обсуждались на следующих конференциях:

X Всероссийская межвузовская научно-техническая конференция студентов и аспирантов, Москва, Зеленоград, 23, 24 апреля 2003 г.

XI Всероссийская межвузовская научно-техническая конференция студентов и аспирантов, Москва, Зеленоград, 23,24 апреля 2004 г.

ХЬУП научная конференция МФТИ, Москва, 26, 27 ноября

2004 г.

XII Всероссийская межвузовская научно-техническая конференция студентов и аспирантов, Москва, Зеленоград, 23,24 апреля 2005 г.

ХЬУШ научная конференция МФТИ, Москва, 25, 26 ноября

2005 г.

V Международная научно-техническая конференция "Электроника и информатика - 2005", 23 - 25 ноября 2005 г.

Публикации.

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

Структура и объем работы

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

Содержание работы

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

В первой главе рассмотрены основные требования, предъявляемые к БД САПР СБИС. Описаны основные виды моделей данных, применяемых в БД САПР. Проведено сравнение реляционных и объектных баз данных в задачах САПР СБИС. Показано, что объектные БД лучше подходят для решения этих задач. Выявлены ограничения и недостатки объектной модели при использовании в САПР СБИС. Описаны методы преодоления этих ограничений путем введения дополнительного уровня абстракции на основе т.н. «объектных представлений». Проведён обзор и сравнение методов создания объектных представлений в БД САПР. Выявлены недостатки предложенных подходов.

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

1. Поддержка иерархических описаний.

2. Манипулирование комплексными объектами.

3. Высокая скорость доступа к проектным данным. Эффективный интерфейс прикладных программ с БД.

4. Обработка множественных, коррелированных представлений проекта.

5. Возможность гибкого изменения схемы хранимых данных без потерь при переходе к новой версии программного обеспечения.

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

7. Управление историей проекта (поддержание версий, альтернативных решений и конфигураций).

8. Поддержание целостности данных (в том числе поддержка транзакций) и восстановления после сбоев.

9. Распределенная обработка, позволяющая обслуживать запрос приложения с помощью наименее загруженного сервера и повышающая надёжность системы.

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

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

использования в САПР СБИС является низкая эффективность при создании комплексных объектов данных. В реляционной БД (РБД) программист вынужден эмулировать такие объекты на основе стандартных типов, предоставляемых СУБД. ' Доступ к данным, представляющим объект проектирования, приходится выполнять с использованием дорогостоящей операции «соединение», что существенно снижает производительность РБД в приложениях САПР. Защита проектных данных может проводиться только на уровне отдельных таблиц. В объектно-ориентированной среде требуется дополнительное преобразование данных для получения объекта из реляционных данных.

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

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

1. Высокая сложность глобальной схемы хранимых данных приводит к сложности разработки приложений.

2. Устранение избыточности данных также требует от разработчиков компонентов САПР создания механизмов преобразования используемых данных.

3. Большое количество данных от различных этапов проектирования затрудняет навигацию и снижает эффективность доступа.

4. Отдельные компоненты САПР становятся зависимыми от изменения структуры данных других компонентов.

— Объектное представление

Рисунок 1. Объектное представление

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

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

подхода для задач САПР СБИС затруднено вследствие семантической ограниченности подобных преобразований данных.

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

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

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

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

Реализация этой концепции в объектно-ориентированных языках основана на идее т.н. «умных указателей». Умным указателем называется объект, хранящий указатель на указываемый объект и производящий некоторые операции при доступе к этому объекту. В данном случае умный указатель используется как «адаптер», приводящий интерфейс хранимого объекта к интерфейсу, требуемому пользователю. Рассмотрим процесс использования предлагаемого

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

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

Набором атрибутов А класса назовём множество атрибутов, принадлежащее этому классу: А = {Ас}. Пусть задан хранимый класс SC = {As« 1к}, где Аж - набор атрибутов класса SA, - набор открытых методов класса (интерфейс). Виртуальным атрибутом VA назовём атрибут класса, не хранимый в памяти, а получаемый путём вызова функции преобразования VA = F(SA). Опишем класс представления VC = {Атс, 1тс}, имеющего набор виртуальных атрибутов VA и набор открытых методов Ivc. Тогда процесс преобразования можно описать следующим образом:

VC -> SC: {As« I«} -> {F (Ах), Ivc}.

Рассмотрим возможные варианты преобразования:

1. Атрибут виртуального класса получается на основе только одного атрибута хранимого класса:

Fi(Asc)->Avc (рис.2).

2. Атрибут виртуального класса получается на основе нескольких атрибутов хранимого класса.

F„ (SA) -> Avc (рис.3).

3. Набор атрибутов виртуального класса получается на основе набора атрибутов хранимого класса:

Fj;(SA) -> VA (рис.4).

Операцией обновления набора атрибутов хранимых классов SA через объектное представление назовём изменение хранимых данных, соответствующее изменению атрибутов виртуальных классов

УА. Пусть дана функция прямого преобразования Г. Назовём функцией обратного преобразования такую функцию, для которой Р(УА) -> вА : Г (Г (БА)) = вА .

Объект представления 4 * Хранимый объект

Атрибут 1 Хранимый атрибут 1

Атрибут 2 Хранимый атрибут 2

Атрибут 3 ---тГ^^

Рисунок 2. Преобразование Б^А^) -> А,

Объект представления Хранимый объект

Атрибут 1 Ч- Гм *- Чу Хранимый атрибут 1

у

Атрибут 2 4- ^N2 4- Хранимый атрибут 2

Рисунок 3. Преобразование Р„(А5С) -> А,

Объект представления Хранимый объект

Атрибут 1 Хранимый атрибут 1

Атрибут 2 4- Хранимый атрибут 2

Атрибут 3 Хранимый атрибут 3

Рисунок 4. Преобразование Р1(А5С) -> Ау

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

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

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

Метод прямого распространения изменений заключается в следующем. Для доступа к каждому атрибуту класса представления вызывается собственная функция преобразования, возвращающая значение данного атрибута (функция типа Г! или Е„). Для записи атрибута класса вызывается функция обратного преобразования Б14, непосредственно обновляющая состояние хранимого объекта. Поскольку при использовании данного метода не существует хранящегося в памяти объекта представления, в базе данных всегда хранится согласованное состояние объекта.

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

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

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

поддержки временных объектов и контроля доступа к проектным данным.

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

В качестве основы для реализации системы поддержки объектных представлений была выбрана ООБД GOODS. Основными критериями выбора были: использование подхода без языка описания схемы данных, поддержка аспектной модели программирования и доступность кода ООБД.

Аспектно-ориентированное программирование заключается в выделении некоторых базовых процессов и отдельных аспектов, изменяющихся в пределах таких процессов. Каждый аспект может быть реализован различными способами. Например, в аспект при работе с ресурсами может быть выделена политика подсчёта ссылок. Аспекты в таком случае должны являться независимыми, то есть выполнение задачи в пределах некоторого аспекта системы не должно зависеть от выбора способов реализации других аспектов. БД GOODS основана на аспектной модели и поддерживает настройку поведения в виде аспектов. [G. Kiczales, J. Lamping, A. Mendhekar, etc. Aspect-oriented programming. Published in proceedings of the European Conference on Object-Oriented Programming (ECOOP). Finland, Springer-Verlag LNCS 1241. June 1997].

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

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

Рисунок 5. Архитектура системы поддержки объектных представлений

Первый (DirectView) заключается в том, что функции преобразования вызываются каждый раз при доступе к данным. Во втором варианте (WriteThrowView) для объекта представления определяется область памяти, в которой хранятся преобразованные данные. При чтении исключается необходимость вызова функции преобразования, при записи изменения вносятся как в хранимые, так и в преобразованные данные (т.н. модель write-throw cache). В данном случае необходимо решить задачу поддержания согласованности данных. На основании одного набора хранимых данных может быть создано несколько объектов представлений. При обновлении хранимых данных необходимо изменить все объекты, основанные на этих данных. Для этого используется идиома, известная как паттерн «Observer». С набором хранимых данных связывается т.н. «наблюдатель», в котором регистрируются все объекты представлений, созданные на основе этого набора данных. При обновлении наблюдатель оповещает все объекты представлений, чтобы они могли обновить свои данные. Данный подход эффективен в случае редких операций обновления и небольшого числа связанных с хранимым объектом представлений.

Третий вариант (TransactView) повторяет второй, за исключением того, что обновление хранимых данных на основе преобразованных производится только в момент завершения работы с данными и закрытия транзакции. Области применимости и сравнение описанных подходов представлено в таблице 1.

На основе данного сравнения сформулируем критерии выбора метода преобразования:

1. В случае простоты и малой вычислительной сложности функций преобразования выбирается метод прямого чтения и записи.

2. При большой сложности преобразования и отсутствии зависимости между объектами представлений по хранимым данным выбирается метод записи по окончании транзакции.

3. При наличии зависимости между объектами представлений по хранимым данным выбирается либо метод прямого чтения и записи, либо метод «Write-throw» в зависимости от количества обращений к объекту и сложности выполняемого преобразования.

Контроль доступа к проектным данным также производится с помощью выделения данной функциональности в отдельный аспект. Вариантами служат предоставление доступа без проверки прав и с проверкой прав. Для объекта, нуждающегося в ограничении доступа, в качестве реализации аспекта указывается класс CheckedAccessPolicy. При создании такого объекта производится его добавление в базу контролируемых объектов, после чего для данного объекта могут быть установлены права доступа. При обращении к объекту производится поиск в базе контролируемых объектов и проверка прав доступа текущего пользователя. В случае отказа в доступе генерируется исключительная ситуация. Для объектов, не нуждающихся в ограничении доступа, в качестве реализации указывается класс UncheckedAccessPoIicy. В этом случае при доступе к объекту никаких проверок не происходит. Заметим, что в предлагаемой системе контролируемый доступ достаточно предоставлять только к объектам верхнего уровня.

Поскольку объектные представления основаны на базовом классе goods:¡object, они также поддерживают управление транзакциями и откат изменений.

В четвёртой главе описывается разработка базы данных смешанного моделирования на основе разработанной системы поддержки объектных представлений и производится сравнение методов разработки.

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

Таблица 1

Сравнение методов преобразования

Метод Скорость чтения Скорость записи Размер дополнительной памяти Применимость

Прямые чтение / запись низкая, зависит от сложности преобразования низкая, зависит от сложности преобразования не требуется в случае малой сложности преобразования или при редком обращении к объекту

ЧУгие-Лгож высокая низкая, требуется дополнительная синхронизация большой при дополнительной синхронизации, иначе средний при преимущественном чтении из объекта

Запись по окончании транзакции высокая высокая, требуется однократная запись по окончании транзакции средний см. комментарий*

* Комментарий: использование метода «запись по окончании транзакции» возможно только в случае, если на основе некоторого набора входных данных создаётся только один объект представления либо доступ к нему осуществляется только на чтение. Иначе необходимо использование другого способа.

схемотехническом уровне часто оказывается слишком длительным. При этом отдельные части цифровых схем должны быть промоделированы именно на схемотехническом уровне во избежание потерь точности (как, например, критические пути распространения сигналов). Существуют методы для автоматического выбора уровня моделирования в процессе расчёта [Т. Tang and X. Zhou, "Multi-Level Digital/Mixed-Signal Simulation with Automatic Circuit Partition and Dynamic Delay Calculation", J. Modeling Simulation Microsystems, Vol. 1, No. 2, pp. 83-89, December 1999.].

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

Метод создания такого нетлиста состоит из следующих

шагов:

1. Из отдельных описаний логического и схемотехнического нетлистов выделяется общая часть списка соединений и общая часть списка элементов. Выделение происходит на основе имён цепей и элементов.

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

3. Для каждого элемента смешанного нетлиста, имеющего описание только на схемотехническом уровне (аналоговая часть нетлиста), создаётся элемент интегрированного нетлиста, содержащий это описание.

4. Из схемотехнического описания производится выделение цепей, соединяющих выделенные элементы, на основе логического нетлиста. На основе выделенных цепей создаются цепи интегрированного нетлиста, содержащие ссылки на

соединяемые элементы и нетлист, описывающий выделенную ШХ-цепь.

Таким образом, получается обобщенная структура нетлиста, устраняющая избыточность хранимой информации.

Рисунок 6. Структура интегрированного нетлиста схемотехнического и логического этапов проектирования

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

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

Сравнительный анализ методов разработки БД для САПР СБИС

Таблица 2

Системы на основе Скорость работы в задачах САПР Объём кода Сложность разработки Поддержка дополнительных возможностей

РБД низкая большой высокая отсутствует

ООБД высокая большой средняя требует написания дополнительного кода

Разработка с использованием системы ОрепАссеББ 2.0 высокая при доступе к стандартным структурам, низкая при доступе к расширенным атрибутам большой средняя присутствует

Объектные представления высокая средний низкая присутствует

Объектные представления на основе функционального интерфейса высокая или средняя в зависимости от сложности преобразований малый низкая присутствует

схеме через объектные представления в зависимости от необходимой точности моделирования цепь может быть представлена на схемотехническом уровне в виде:

1) простого соединения элементов,

2) передающей линии,

3) эквивалентной ЯС-цепочки

либо на логическом уровне в виде элемента задержки.

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

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

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

В приложениях приведены акты внедрения результатов работы в различных организациях.

Основные результаты работы

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

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

Проведено сравнение предложенного метода с существующими при использовании в САПР СБИС, обозначены его достоинства.

3. Разработана модель преобразований объектов на основе функционального интерфейса.

4. Разработаны методы обновления данных через объектные представления. Предложены критерии выбора соответствующего метод в зависимости от сложности выполняемых преобразований.

5. Предложена архитектура системы поддержки объектных представлений для САПР СБИС. Разработка проведена на основе ООБД GOODS с учётом реализованной в нём аспектно-ориентированной модели разработки.

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

В ходе эксплуатации разработанной системы в САПР «AVOCAD» было проведено сравнение способов решения ряда практических задач при помощи разработанных методов и традиционным способом (непосредственное создание компонентов преобразования данных). Это позволило сделать следующие выводы: использование системы поддержки объектных представлений на основе функционального интерфейса позволяет сократить время на разработку БД в 2-2,5 раза. При этом вследствие простоты настроечного кода число ошибок при разработке методов преобразований невелико, что значительно сокращает время отладки. Реализация слоя преобразования данных на основе описанной системы позволяет упростить процессы тестирования, документирования и модификации разработанного ПО.

Основные результаты диссертации опубликованы в следующих работах.

1. Дубровин, С. А. Особенности хранения результатов схемотехнического моделирования СБИС/ С. А. Дубровин // Тез. докл. на 10-й всероссийской межвузовской научно-технической конференции студентов и аспирантов, Москва, 23 - 24 апреля 2003 г. / М. : МИЭТ, 2003 - С. 78.

Дубровин С. А., Перминов В. Н., Кокин С. А., и др. Свидетельство об официальной регистрации программ для ЭВМ №2003612520. Российское агентство по патентам и товарным знакам (РОСПАТЕНТ), 2003.

Дубровин, С. А. Объектные виды в базах данных САПР СБИС / С. А. Дубровин // Тез. докл. XLVII научной конф. МФТИ, Москва, 26-27 ноября 2004 г. / М. : МФТИ, 2004 - С. 107. Дубровин, С. А. Унифицированная форма представления проектных данных для этапов логического и схемотехнического проектирования / С. А. Дубровин // Тез. докл. 11-й всероссийской межвузовской научно-технической конф. студентов и аспирантов, Москва, 21-22 апреля 2004 г. / М. : МИЭТ, 2004 - С. 79.

Дубровин, С. А. Способы представления временных объектов в системе поддержки объектных видов в ООБД САПР / С. А. Дубровин // Тез. докл. на 12-й всероссийской межвузовской научно-технической конференции студентов и аспирантов, Москва, 19 - 21 апреля 2005 г. / М.: МИЭТ, 2005 -С. 98.

Дубровин, С. А Объектные представления в базах данных САПР СБИС / С. А. Дубровин II Известия ВУЗов. Электроника -2005 -№3-С. 56-59.

Дубровин С. А., Жуков А. В., Перминов В.Н., Макаров С.В. Совместное использование системы AVOCAD и средств САПР СБИС компаний Cadence и Synopsys / Электроника. НТБ - 2005 - №4 - С. 68-69.

Дубровин, С. А. «Разработка базы данных смешанного моделирования на основе системы поддержки объектных представлений» / С. А. Дубровин // Тез. докл. на XLVIII научной конференции МФТИ, Москва, 25 - 26 ноября 2005 г. / М.: МФТИ, 2005-С. 109.

Дубровин С. А. Структура базы проектных данных для смешанного моделирования в системе поддержки объектных представлений ООБД САПР СБИС / Тез. докл. на V Международной научно-технической конференции

"Электроника и информатика - 2005", Москва, 23 - 25 ноября 2005 г. / М.: МИЭТ, 2005, часть 1, С. 186.

Подписано в печать

Заказ №#£Тираж 100 экз. Уч.-изд. л. 1,3. Формат 60x84 1/16.

Отпечатано в типографии МИЭТ.

124498, Москва, Зеленоград, проезд 4806, д. 5, МИЭТ.

923 7 81

РНБ Русский фонд

2006-4 26958

Оглавление автор диссертации — кандидата технических наук Дубровин, Станислав Александрович

Оглавление

ВВЕДЕНИЕ

ГЛАВА 1. Базы данных в САПР СБИС.

1.1. Основные виды моделей данных.

1.2. Существующие требования к базам данных САПР СБИС

1.3. Объектные представления

1.4. Подход с интеграцией представлений в схему базы данных

1.5. Подход с интеграций представлений во внешней схеме данных

1.6. Сравнение подходов к организации объектных представлений

1.7. Цели и задачи работы.

1.8. Выводы.

ГЛАВА 2. Разработка модели объектных представлений на основе функционального интерфейса в ООБД САПР

2.1. Базовые концепции абстракции доступа к данным

2.2. Модель вычислимых объектных представлений на основе функционального интерфейса

2.3. Методы построения представлений.

2.4. Способы изменения хранимых данных через объектное представление

2.5. Основные подходы к реализации объектных представлений

2.6. Анализ методов решения проблемы когерентности при использовании временных объектов

2.7. Метод выбора способа реализации представления

2.8. Выводы.

ГЛАВА 3. Программная реализация объектно-ориентированной БД САПР СБИС с поддержкой объектных представлений

3.1. ООБД на основе языков описания схемы.

3.2. ООБД без явного описания схемы.

3.3. Требования к системе поддержки объектных представлений в САПР СБИС

3.4. Аспектно-ориентированный подход к программированию

3.5. Выбор БД в качестве основы для реализации

3.6. Архитектура системы поддержки объектных представлений в САПР СБИС

3.7. Программная реализация системы поддержки объектных представлений

3.8. Реализация поддержки временных объектов.

3.9. Реализация поддержки ограничения доступа к хранимым данным через объектные представления

3.10. Выводы.

ГЛАВА 4. Примеры практического использования системы поддержки объектных представлений

4.1. Структура базы данных смешанного моделирования

4.2. Объектные представления для доступа к логическому и схемотехническому описаниям субблоков

4.3. Сравнение системы поддержки объектных представлений с системой OpenAccess

4.4. Анализ и сравнение методов разработки, основанных на различных подходах к интеграции компонентов САПР

4.5. Выводы.

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

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

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

В работе проведено сравнение сложности разработки ПО БД традиционными способами и с использованием предложенного метода. Сделаны выводы о перспективности данного подхода.

Актуальность темы

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

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

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

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

Цель работы

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

Для достижения поставленной цели необходимо решение следующих научно-технических задач:

1. Исследовать существующие подходы к интеграции компонентов САПР на основе объектных представлений.

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

3. Предложить способы обновления данных через объектные представления.

4. Разработать методы ограничения доступа к данным на основе объектных представлений.

5. Создать архитектуру системы поддержки объектных представлений.

6. Разработать на основе этой архитектуры систему поддержки объектных представлений, интегрированную в объектно-ориентированную базу данных.

7. Провести практическую апробацию разработанной системы.

Научная новизна работы

1. Впервые разработана модель преобразований объектов на основе функционального интерфейса;

2. Разработана архитектура системы поддержки объектных представлений в объектно-ориентированных БД;

3. Определены критерии выбора способов настройки функциональных интерфейсов в зависимости от сложности реализуемых преобразований;

4. Разработан метод создания объектных представлений для модели преобразований объектов на основе функционального интерфейса;

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

Практическая значимость работы

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

Методы исследования

В работе был использован математический аппарат теории множеств и теории алгоритмов. Экспериментальные результаты были получены при помощи разработанной программной среды.

Достоверность полученных результатов подтверждается используемым в работе математическим аппаратом, экспериментальным тестированием и промышленной эксплуатацией разработанного программного обеспечения в САПР «AVOCAD».

Реализация результатов работы

Результаты работы в виде объектно-ориентированной системы управления базами данных в составе САПР «AVOCAD» внедрены в процесс проектирования ИС ООО «Юник Ай Сиз», НИИФП и в учебный процесс МГИЭТ(ТУ), что подтверждается актами о внедрении. Использование разработанного программного обеспечения на предприятиях показывает высокую эффективность его применения в цикле проектирования аналоговых, цифровых и аналого-цифровых ИС.

Личный вклад автора

Основными из полученных автором результатов, являются:

1. Систематизация требований к разработке ПО БД САПР логического и схемотехнического этапов проектирования СБИС.

2. Разработка модели объектных преобразований на основе функционального интерфейса.

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

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

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

6. Создание при помощи реализованной программной среды интегрированной БД логического и схемотехнического этапов проектирования в рамках разработки системы «AVOCAD».

Представляется к защите

1. Модель преобразования объектов на основе функционального интерфейса.

2. Архитектура системы поддержки объектных представлений в ООБД САПР.

3. Критерии выбора способов настройки функциональных интерфейсов в зависимости от сложности реализуемых преобразований.

- 10

4. Метод создания объектных представлений для модели преобразований объектов на основе функционального интерфейса.

5. Структура объектно-ориентированной базы данных САПР для интеграции средств цифрового и аналогового моделирования.

Апробация результатов работы

Результаты диссертационной работы докладывались и обсуждались на научно-технических совещаниях ООО «Юник Ай Сиз» и на следующих конференциях:

X Всероссийская межвузовская научно-техническая конференция студентов и аспирантов, Москва, Зеленоград, 23,24 апреля 2003г.

XI Всероссийская межвузовская научно-техническая конференция студентов и аспирантов, Москва, Зеленоград, 23,24 апреля 2004г.

XLVII научная конференция МФТИ, Москва, 2 6-27 ноября

2004.

XII Всероссийская межвузовская научно-техническая конференция студентов и аспирантов, Москва, Зеленоград, 23,24 апреля 2005г.

XLVIII научная конференция МФТИ, Москва, 26-27 ноября

2005.

V Международная научно-техническая конференция "Электроника и информатика - 2005", 23 - 25 ноября 2005.

Публикации.

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

Структура работы.

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

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

4.5. Выводы

1. В данной главе разработана структура БД для поддержки смешанного моделирования в САПР СБИС.

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

3. Разработан алгоритм заполнения базы данных смешанного моделирования.

4. Проведено сравнение сложности разработки при использовании стандартного подхода и подхода на основе объектных представлений. В результате сравнения сделан вывод о снижении сложности разработки примерно в 2.5 раза.

5. Проведено сравнение подхода, основанного на объектных представлениях с подходом, основанным на широко применяемой системе OpenAccess, разработанной консорциумом Silicon Integration Initiative. Показано, что система поддержки объектных представлений имеет более гибкую модель и предоставляет большие возможности по настройке по сравнению с системой OpenAccess.

ЗАКЛЮЧЕНИЕ

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

В заключение выделим основные результаты данной работы:

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

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

- 120

3. Разработана модель преобразований объектов на основе функционального интерфейса.

4. Разработаны методы обновления данных через объектные представления. Предложена методика, позволяющая выбрать соответствующий метод в зависимости от сложности выполняемых преобразований.

5. Разработана архитектура системы поддержки объектных представлений в БД САПР СБИС. Разработка проведена на основе ООБД GOODS с учётом реализованной в нём аспектно-ориентированной модели разработки.

6. Разработана структура объектно-ориентированной базы данных для интеграции средств цифрового и аналогового моделирования. Разработаны методы преобразования проектных данных для интеграции на основе предложенной системы объектных представлений.

В ходе эксплуатации разработанной системы при создании САПР «AVOCAD» было проведено сравнение решения ряда практических задач при помощи разработанных методов и традиционным способом (непосредственное создание компонентов преобразования данных). Это позволило сделать следующие выводы:

1. Объем программного кода, обеспечивающего непосредственное преобразование данных, составляет не более 20% от объема кода, решающего те же задачи при написании компонентов преобразования данных (трансляторов, загрузчиков и т.д.).

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

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

Библиография Дубровин, Станислав Александрович, диссертация по теме Системы автоматизации проектирования (по отраслям)

1. Graham, A. The CAD Framework 1.itiative Standards Progress Towards First Publication at Year End, IEEE DATC Newsl. On Design Automation, Sp. 1992, pp. 13-21.

2. Lakos J. Large-Scale С++ Software Design. Berkeley, California: Addison-Wesley, 1996.

3. Стемпковский A.JI. и др. Системная среда САПР СБИС, М.: Наука, 1994.

4. Synopsys Milkyway Database (http:// www. synopsys.com/products/milkyway/milkyway.html)

5. Mentor Graphics Data Management System (http://www.mentor.com/products/pcb/boardstation/ datamanagement/dms/index.cfm)

6. OpenAccess: The Standard API for Rapid EDA Tool Integration. Second Edition. Silicon Integration Initiative, Inc., 2003.

7. Дэйт, К. Введение в системы баз данных. М.: Наука, 1980.

8. Hughes W. , Melcher D. , Melville S., Taenzez D. Database systems in a network of CAE/CAD workstations. Prited Circuit Design. 1988, Vol.5, №2.

9. Date, C. 1986. Relational Database: Selected Writings. Reading, MA: Addison-Wesley.

10. J.W. Schmidt et al, U Hamburg. Pascal/R Report. Fachbereich Informatik, Report 66, Jan 1980.

11. J. M. Smith, S. Fox and T. Landers, ADAPLEX: Rationale and Reference Manual, 2nd ed. , Computer Corp. America, Cambridge, Mass., 1983.- 123

12. Craig Schaffert, Topher Cooper, and Carrie Wilpolt. Trellis Object-Based Environment, Language Reference Manual. Technical report DEC-TR-372, November 1985.

13. Antonio Albano, Luca Cardelli, Renzo Orsini, Galileo: a Strongly Typed, Interactive Conceptual Language. ACM TODS, 10, 2, pp. 230-260, 1985.

14. Codd, E. F., The relational model for database management: version 2, Addison-Wesley, Reading (Mass.), 1990.

15. P. P. Chen. The entity-relationship model toward a unified view of data. ACM Transactions on Database Systems, 1(1):9—36, 1976.

16. J. Mylopoulos, P. A. Bernstein and H.K.T. Wong, "TAXIS: A Language Facility for Designing Database-Intensive Applications", ACM TODS, vol. 5, no. 2, pp. 185-207, June 1980.

17. M. Hammer and D. McLeod: "The Semantic Data Model: A Modelling Machanism for Data Base Applications"; Proc. ACM SIGMOD 78, Lowenthal and Dale(eds), 1978, pp.26-36.

18. D. W. Shipman. The functional data model and the data language daplex. ACM Transactions on Database Systems (TODS), 6 (1) : 140 — 173, 1981.

19. A. Goldberg and D. Robson. SmallTalk-80: The Language and Its Implementation. Addison-Wesley, 1983 .

20. Ole-Johan Dahl, B. Myhrhaug, and Kristen Nygaard. The SIMULA 67 common base language. Technical report, Norwegian Computing Center, Oslo, 1970. Publication S--22.- 124

21. Malcolm Atkinson, Frangois Bancilhon, David DeWitt, Klaus Dittrich, David Maier, Stanley Zdonik. The Object-Oriented Database System Manifesto. Proceedings of the First International Conference on Deductive and Object-Oriented Databases, 1989.

22. H. Korth, W. Kim, and F. Bancilhon. A Model of CAD Transactions. In Pro- ceedings of the 11th International Conference on Very Large Databases, pages 25-33, 1985.

23. Marc H. Scholl, Christian Laasch, Markus Tresch. Updatable Views in Object-Oriented Databases Proc. 2nd Intl. Conf. on Deductive and Object-Oriented Databases, 1991.

24. Abiteboul S., Bonner A. Objects and Views, in Proc. SIGMOD, May 1991, pp. 238-247.

25. E. Rudensteiner. Multiview: A methodology for supporting multiple views in object-oriented databases. In Proc. VLDB Conference, pages 187 — 98, Vancouver, Canada, August 1992.

26. E. Bertino. A view mechanism for object-oriented databases. In A. Pirotte, C. Delobel, and G. Gottlob, editors, Proc. of the 3rd Int. Conf. on Extending Database Technology, EDBT'92, LNCS 779, pages 136--151, Vienna, Austria, 1992.

27. Santos, C.S. Design and Implementation of Object-Oriented Views. In Proceedings of DEXA, 6th Int. Conf., pp. 91-102. 1995

28. Elke A. Rundensteiner. MultiView:A Methodology for Supporting Multiple Views in Object-Oriented Databases. Proceedings of the 18th International- 125

29. Conference on Very Large Data Bases (VLDB'92), 1992, Vancouver, Canada.

30. Kuno, H.A. and Rundensteiner, E.A. Materialized Object-Oriented Views in MultiView. In Proc. Fifth International IEEE Workshop on Research Issues in Data Engineering Distributed Object Management, 1995.

31. J. Kuno and E. Rundensteiner. The MultiView OODB view system: Design and implementation. Theory and Practice of Object Systems, 2(3):203—225, 1996, pp. 248, 249.

32. Harumi A. Kuno and Elke Rundensteiner. Developing an Object-Oriented View Management System. University of Michigan, 1993.

33. Guerrini, G., Bertino, E., Catania, В., Garcia-Molina, J. : A Formal Model of Views for Object-Oriented Database Systems. Theory and Practice of Object Systems, 3(3) (1997) pp. 157-183.

34. Гамма, Э.; Хелм, P.; Джонсон, P. и др. Приемы объектно-ориентированного проектирования. Паттерны проектирования. Изд-во: СПб: Питер, 2001 г.

35. Фаулер М. Архитектура корпоративных программных приложений. Изд-во: СПб: Вильяме, 2004 г.

36. Саттер Г. Решение сложных задач на С++. Изд-во: СПб: Вильяме, 2002 г.

37. Роджерсон Д. Основы СОМ. М.: Русская редакция "Microsoft Press", 2000.

38. Орлов С. А. Технологии разработки программного обеспечения. Изд-во: СПб: Питер, 2002 г.

39. Дж. Смит, Д. Смит. Принципы концептуального проектирования баз данных. В сб. «Требования и спецификации в разработке программ». М: Мир, 1984.

40. Cattell, R.G.G.(Editor), "The Object Database Standard: ODMG-93", Morgan Kaufmann Publishers, 1993 .

41. Objectivity Technical Overview. Release 6.0, January 23, 2001. http://www.objectivity.com.

42. Книжник К. Аспектный подход к созданию объектно-ориентированных систем управления базами данных. Диссертация на соискание ученой степени кандидата физико-математических наук.

43. Jacobson I., Ng P.-W. Aspect-oriented software development with use cases. Addison Wesley, 2004.

44. Павлов В. Аспектно-ориентированное программирование. Журнал «Технология Клиент-Сервер», 2003, №4.

45. Bruno Schaffer Design and Implementation of Smalltalk Mixin Classes. Ubilab Technical Report 98.11.1 Universitetsstrasse 84 CH-8033 ZurichSwitzerland.

46. O. Hachani and D. Bardou. Using Aspect-Oriented Programming for Design Patterns Implementation. In Proc. Workshop Reuse in Object-Oriented Information Systems Design, 2002.

47. Shigeru Chiba. A metaobject protocol for С++. ACM SIGPLAN Notices archive, Volume 30, Issue 10, (October 1995), pp. 285 299.- 127

48. R. H. Katz. Toward a unified framework for version modeling in engineering databases. ACM Computing Surveys, 22(4):375-408, December 1990.

49. T. Tang and X. Zhou, "Multi-Level Digital/Mixed-Signal Simulation with Automatic Circuit Partition and Dynamic Delay Calculation, 11 J. Modeling Simulation Microsystems (JMSM) , Vol. 1, No. 2, pp. 83-89, December 1999.

50. Норенков И.П., Маничев В. Б. Системы автоматизированного проектирования электронной и вычислительной аппаратуры. М.: "Высшая школа", 1983.

51. Корячко В.П., Курейчик В.М., Норенков И. П. Теоретические основы САПР.

52. М.: "Энергоатомиздат", 1987.

53. Казеннов Г.Г., Соколов А. Г. Основы построения САПР и АСТПП М.: "Высшая школа", 1989.

54. Дубровин С. А. «Объектные виды в базах данных САПР СБИС». Тезисы доклада на XLVII научной конференции МФТИ. Секция микроэлектроники. М.: МФТИ, 2004. стр. 107.

55. Дубровин С. А. «Особенности хранения результатов схемотехнического моделирования СБИС». Тезисы докладов на 10-й всероссийской межвузовской научно-технической конференции студентов и аспирантов. М: МИЭТ, 2003. стр. 78.- 128

56. Дубровин С. А., Перминов В. Н., Кокин С. А., и др. Свидетельство об официальной регистрации программ для ЭВМ №2003612520. Российское агентство по патентам и товарным знакам (РОСПАТЕНТ), 2003.

57. Дубровин С. А., «Объектные представления в базах данных САПР СБИС». Статья в журнале «Известия ВУЗов. Электроника» №3, 2005г. стр. 56.

58. Дубровин С. А., Жуков А. В., Перминов В.Н., Макаров С.В. «Совместное использование системы AVOCAD и средств САПР СБИС компаний Cadence и Synopsys». Статья в журнале «Электроника НТБ» №4, 2005г, стр. 68-69.

59. Дубровин С. А. Разработка базы данных смешанного моделирования на основе системы поддержки объектных представлений. Тезисы доклада на XLVIII научной конференции МФТИ. Секция микроэлектроники. М.: МФТИ, 2005.

60. Дубровин С. А. Способы представления временных объектов в системе поддержки объектных видов в ООБД САПР. Тезисы доклада на V Международной научно-технической конференции "Электроника и информатика 2005", М: МИЭТ, 2005.