книги / Основы построения САПР и АСТПП
..pdfРассмотренная ИНСАПР микросборок и электронных блоков как класс ИЭТ указывает на широту решаемых проблем и сложность математического обеспечения. Важной задачей эксплуатации данного вида САПР является поддержание программного обеспечения и технических средств в работоспо собном состоянии.
§3.3. СИСТЕМЫ СКВОЗНОГО АВТОМАТИЗИРОВАННОГО ПРОЕКТИРОВАНИЯ
Интегрированные САПР можно построить не на всех пред приятиях радиоэлектронной промышленности из-за их недоста точно мощных и разветвленных технических средств. Во многих случаях проекты, полученные с помощью ИНСАПР, не являют ся оптимальными либо сроки проектирования не удовлетворяют производство. Это привело к созданию систем сквозного авто матизированного проектирования (ССАПР).
Характерные особенности ССАПР: использование одно- и двухуровневой архитектуры технических средств; единый высо кого уровня язык описания объекта проектирования; единый язык описания заданий; конвейерная обработка информации.
Наиболее широкое применение ССАПР нашли при проекти ровании элементной базы ИЭТ, а именно аналоговых и цифро вых интегральных схем малой (МИС), средней (СИС), боль шой (БИС) и сверхбольшой (СБИС) степени интеграции. Маршрут прохождения проекта и состав математического обес печения соответственно для аналоговых и цифровых ИС приве ден на рис. 3.14. После получения ТЗ пользователь в интерак тивном режиме последовательно реализует проект сверху вниз от определения функционального состава до выдачи документа ции для фотонаборных установок, т. е. до изготовления фото шаблонов. Информация после каждого этапа по желанию раз работчика выдается на ИГС для проведения визуального конт роля проекта пользователем. Передается информация только от предыдущего этапа к последующему. В ССАПР отсутствуют реальная база данных, а также возможности альтернативного выбора того или иного маршрута проектирования или метода решения частной задачи. Каждый предыдущий ППП информа ционно сопряжен только с соседним, поэтому системы имеют более высокую производительность проектирования узкого класса элементов ИЭТ. Данные САПР сложно или невозможно приспособить для проектирования других составляющих эле ментов ИЭТ из-за необходимости изменения проблемной ори ентации прикладных программных модулей. Благодаря после довательному характеру прохождения проекта вероятность появления ошибки в данных проекта намного ниже, чем в ИНСАПР. Интерактивный режим обеспечивает контроль про хождения проекта и возможность оптимизировать проект после
71
каждого этапа проектирования. Основные требования и принци пы построения систем сквозного автоматизированного проекти рования совпадают с требованиями и принципами, изложенными в табл. 1.2.
Аналоговая ИС, T3 |
Цифровая ИС, ТЗ |
цех
Рис. 3.14. Маршрут прохождения проекта и состав математического обеспечения для аналоговых и цифровых ИМС
Системы сквозного автоматизированного проектирования являются промежуточным звеном на пути построения систем автоматического проектирования.
72
§ 3.4. СИСТЕМЫ АВТОМАТИЧЕСКОГО ПРОЕКТИРОВАНИЯ
Конечной целью создателей систем автоматизированного проектирования является разработка такого инструмента про ектирования, который в максимальной степени освобождал бы пользователей от рутинной работы по оценке качества проекта. Современный период развития электроники позволил реализо вать переход от систем автоматизированного проектирования к системам автоматического проектирования (САВПР). В иде альном случае пользователь подает на вход САПР ТЗ и другие данные о проекте (используется язык очень высокого уровня), а на выходе получает конструкторскую документацию на изго товление ИЭТ. Но это пока цель ближайшего будущего. В на стоящее время предпринимаются попытки создания САВПР, включающих различные этапы проектирования ИЭТ. Истори чески так сложилось, что самое широкое распространение САВПР нашли в проектировании элементной базы РЭА, а именно БИС. Это было вызвано тем, что, во-первых, все этапы проектирования БИС логически тесно связаны между собой и, во-вторых, САВПР легко вписываются в интегрированные компьютеризованные производства (ИКП), т. е. САВПР явля ются одной из составляющих будущих автоматических произ водств.
Структура САВПР аналогична структуре систем сквозного автоматизированного проектирования (рис. 3.14). Отличие состоит в том, что участие пользователя необходимо на этапе введения ТЗ и в том случае, когда САВПР неспособна решать поставленную проблему. В последнем случае задача решается в интерактивном режиме работы или с помощью ИНСАПР или ССАПР. Системы автоматического проектирования элементной базы РЭА (БИС и СБИС) больше известны как кремниевые компиляторы (КРЕМКОМ). Разберем подробнее структуру КРЕМКОМ. Такие системы близки системам искусственного интеллекта. Конечным продуктом проектирования СБИС слу жит топология, т. е. информация на изготовление фотошабло нов, содержащая миллионы координат точек в цифровой форме, которые должны удовлетворять определенным ограни чениям. Это множество топологических форм должно удов летворять «кремниевому» синтаксису и воспроизводить необхо димое сообщение на этом «кремниевом» языке. Проект должен также удовлетворять электрическим ограничениям, так как вся технология основывается на электронных свойствах полупро водников. Для указанного кремниевого языка высокого уровня необходимо создание своего кремниевого компилятора для пол ностью автоматической трансляции с языка описания требуемой системы (сообщения) в безошибочную топологическую инфор мацию. Причем работающие кремниевые компиляторы воспро
73
изводят топологию за час, тогда |
как на подготовку описания |
|
поведения системы требуется неделя. |
||
Еще одна |
важная особенность |
КРЕМКОМа — он работает |
по принципу |
«делать сразу хорошо» в отличие от принципа |
существующих САПР ИЭТ «делать и проверять», когда по го товой топологии происходит восстановление электрической схе мы реализуемой системы.
Основой любого КРЕМКОМа служат два языка: исход ный— это язык, на котором разработчик описывает поведение проектируемой системы (сообщение) ; целевой — это язык опи сания возможностей кремниевой технологии, используемой для задания сложных двумерных фигур (топологии).
Работа с данными языками возможна только при наличии очень развитого банка данных о логических, схемотехнических и топологических решениях, расположенных по иерархическому принципу.
Качество КРЕМКОМа характеризуется степенью сложности описания процесса поведейия системы (сообщения) с помощью исходного языка; используемой площадью на кристалле и рабо чей частотой готовой системы на кристалле (будь то аналого вые или цифровые системы).
Как правило, КРЕМКОМ включает в себя следующие со ставляющие части: язык описания поведения проекта; трансля тор с исходного языка; блок моделирования системы; компиля тор исходного языка в топологические изображения; информа цию о фотошаблонах для цеха.
В общем случае КРЕМКОМ можно характеризовать как систему, с помощью которой получается подробная топология кристалла при сравнительно небольшом объеме исходных данных.
Основным компонентом проектируемой на кристалле схемы является ячейка (блок), которая может содержать простейшие геометрические элементы и ссылки на другие ячейки. Простей шие ячейки разрабатываются с помощью ИНСАПР и ССАПР
изаносятся в библиотеку. По сравнению с блоками, имеющи мися в стандартных библиотеках ячеек, используемые в данной системе, ячейки представляют собой более обобщенные про цедурные элементы. Каждая такая ячейка является програм мой, которая прорисовывает соответствующий ей элемент топо логии, трансформирует его, вычисляет потребляемую мощность
ит. Д. Блоки соединяются между собой при помощи выводов — контактных площадок в ячейках. Внутренние детали ячеек и
общее расположение ячеек остаются неопределенными до за вершающих этапов разработки, что позволяет достичь макси мальной гибкости в проектировании. Информация, задаваемая пользователем, включает в себя форматы микроинструкций и длину слова, разрядность данных и спецификаций сигнальных
74.
шин, расположенных на кристалле, перечень элементов, содер жащихся в ядре СБИС, совместно со значениями соответствую щих параметров. Кремниевый компилятор сначала синтезирует топологию ядра, состоящего из иерархически организованного набора ячеек одинаковой размерности и необходимых инфор мационных шин, затем генерирует управляющую часть СБИС.
Методология |
проектирования |
СБИС |
с помощью |
КРЕМ- |
КОМа включает четыре основные этапа: |
|
|
||
1. О п и с а н и е |
п о в е д е н и я |
б у д у щ е й с х е мы . Этот |
||
этап включает создание микропрограмм, |
являющихся |
проме |
||
жуточными уровнями интерпретации на |
алгоритмическом под |
уровне; преобразование алгоритмов путем представления слож ных операций простыми (например, умножение заменяется последовательностью сложения и сдвига); трансляцию инструк ций в заданный формат, соответствующий стандартной органи
зации информационной части из точного описания |
поведения |
проектируемой схемы. |
( опе ра |
2. П р о е к т и р о в а н и е и н ф о р м а ц и о н н о й |
ционной) части. Этот этап включает генерацию топологии информационной части из ее спецификации. Информационная часть организована с помощью бит-модулей, архитектура и принципиальная электрическая схема которых стандартизова ны, что позволяет вести их проектирование простой сборкой наперед рассчитанных ячеек. Операционная часть названа ин формационной потому, что отвечает за переработку информа ции, к ней можно отнести арифметическо-логическое устройство
(АЛУ). Бит-модуль представляет собой элементарное |
АЛУ, |
обрабатывающее один бит информации. |
Этот |
3. П р о е к т и р о в а н и е у п р а в л я ю щ е й ч а с т и . |
этап включает выбор проекта на основе программируемого за
поминающего устройства (ПЗУ) |
или на |
основе |
программируе |
||
мой логической |
матрицы |
(ПЛМ) с последующей генерацией |
|||
регулярных структур на основе |
спецификации |
(описания тре |
|||
бований к проектируемому объекту) управляющей части. |
|||||
4. П р о е к т и р о в а н и е |
п р о м е ж у т о ч н ы х ч а с т е й . |
||||
Имеется в виду |
проектирование |
блоков |
сопряжения, блоков |
преобразования сигналов, входных и выходных схем.
Для сохранения надежности проекта генераторы информа ционной и управляющей частей выдают необходимую информа цию об их работе на электрическом и логическом уровнях. Эта информация включает электрические характеристики (уровни нуля и единицы, длительности фронтов сигналов, задержки рас пространения сигнала) и временные параметры логического функционирования (риск сбоя, состязание сигналов, соответст вие требованиям технического задания).
Рассмотрим структуру современного КРЕМКОМа, представ ленного на рис. 3.15. С его помощью можно проектировать мик
75
ропроцессоры (предпроцессоры, постпроцессоры), периферий ные контроллеры, системы автоматического управления и программируемые логические матрицы. С помощью языка опи сания поведения схемы разработчик описывает будущий проект БИС в терминах логических ключей, субблоков и блоков (АЛУ, регистры, память и т. д.), задавая временные характеристики, порядок соединения входов и выходов. Экстрактор предназна чен для построения принципиальной электрической схемы по топологии ИС. В этом случае добавляются все паразитные эле-
Рис. 3.15. Структура кремниевого компилятора
менты, обусловленные геометрией компонентов и их межсоеди
нений. Генератор операционной части — это синтезирующий |
|
блок обработки информации на основе библиотечных |
элемен |
тов (полусумматоров, входных и выходных регистров |
и т. д.). |
Блок топологического контроля производит проверку топологии
проекта на |
удовлетворение |
конструкторско-технологических |
|
норм. Генератор управляющей |
части состоит из |
следующих |
|
подсистем: |
селекции проекта, |
предназначенного |
для выбора |
— блока |
оптимального проекта из нескольких. Под оптимальным пони мают проект, максимально удовлетворяющий требованиям ТЗ. Критериями оптимальности могут служить площадь кристалла, общая длина всех межсоединений, потребляемая мощность, ра бочая тактовая частота. Чаще всего используются первый и последний критерии. Основу блока селекции проекта составляет система искусственного интеллекта;
—генератора повторяющихся частей, предназначенного для тиражирования на плоскости одинаковых схем разной сложно сти;
—оптимизатора ПЛМ, проектирующего блоки выборки и управляющего записью информации. Программируемая логиче ская матрица состоит из блока логического умножения
76
(конъюнкции) и блока логического сложения (дизъюнкции). По добную структуру имеют некоммутируемые логические матрицы Широкое применение САВПР зависит от производительно сти и надежности средств вычислительной техники, от наличия интерактивно-графических станций (ИГС) с цветными дисплея
ми повышенного формата.
$ 3.S. ГИБКИЕ САПР
В класс гибких систем автоматизированного проектирова ния могут входить и интегрированные САПР, и системы сквоз ного автоматизированного проектирования. Потребность в САПР появилась по двум причинам: 1) каждые 3...5 лет проис ходит смена технических средств, что вызывает необходимость переноса математического обеспечения на новые технические средства; 2) превышение стоимости математического обеспече
ния над стоимостью |
технических |
^ |
|
|
|
средств. |
|
|
7 |
|
|
Разработка систем или подси- |
41 |
|
|||
стем автоматизированного проек- | |
|
|
|||
тирования длится от 3 до 10 лет. |
| . |
|
|||
За этот период технические сред- |
|
||||
ства меняются дважды. Смена ТС |
| |
2 _ |
|
||
влечет за собой смену операци- J |
/ |
|
|||
онных систем и другого системно- |
„ |
/до /до ш ms /до /т тоГоды |
|||
го программного обеспечения. В |
„ |
_ |
|||
связи с этим возникни,, знаки. |
£ |
|
|
||
тельные |
трудности |
по переводу |
граммных средств САПР |
||
САПР |
с одних |
технических |
|
|
|
средств на другие. Если в создан ной САПР не были заранее учтены вопросы переноса (или мо
бильности) математического обеспечения, то эта система непе реносимая с ограниченным периодом эксплуатации. Последнее ограничение значительно снижает период окупаемости создан ной САПР. Примерная стоимость САПР 500...10 000 тыс. руб. Это и определяет экономические предпосылки создания мобиль ных САПР. Созданные дешевые ИЭТ, особенно цифровые эле менты, микроэлектронные узлы, большие интегральные схемы и сверхбольшие интегральные схемы, резко понизили стоимость средств вычислительной техники.
На рис. 3.16 показаны экономические показатели создания технических и программных средств, где под кривой 1 подразу мевается стоимость ТС и под кривой 2 — стоимость ПО.
Создание с появлением нового поколения ТС новых САПР, решающих'тот же круг проблем, нерентабельно и ведет к экстенсивному пути развития САПР. Четко обозначилась тен денция сохранения какой-то части программного обеспечения
77
САПР путем ее переноса с менее производительных ТС на бо лее производительные и за счет ее адаптации (приспособле ния)— решения других близких по смыслу и характеру задач.
Проанализируем, за счет чего можно решить проблему мо бильности и адаптивности программного обеспечения САПР, т. е. проблему гибкости.
Программное обеспечение каждой САПР состоит из трех частей: вариантной, инвариантной к техническим средствам и инвариантной к прикладным задачам (рис. 3.17).
Рис. 3.17. Структура |
программного |
обеспечения |
САПР |
|
|
В а р и а н т н а я ч а с т ь |
ПО (или |
зависимая) содержит |
часть программного обеспечения, касающуюся связи с опера ционной средой, с поддержкой интерактивного режима работы САПР, с передачей информации в сетях ЭВМ и на исполняю щие автоматы. Чем меньше вариантная часть (в процентном отношении ко всему ПО), тем ПО более мобильно.
И н в а р и а н т н а я |
к т е х н и ч е с к и м |
с р е д с т в а м |
ч а с т ь ПО включает |
следующие программы: |
управления хо |
дом проектирования, обслуживания банков данных, трансляции языков описания объектов проектирования.
И нв ари а н т н а я к п р и к л а д н ы м з а д а ч а м ч а с т ь ПО состоит из программ решения математических моделей (на пример, решения систем алгебро-дифференциальных уравнений, уравнений в частных производных), проведения параметриче ского синтеза и т. д. Чем больше эти части ПО, тем выше адап тируемость САПР к классам решаемых проблем.
Проблему гибкости можно решать тривиальным путем — доработать ПО или заменить отдельные его проблемно-ориен тированные программные модули. В некоторых случаях так и поступают, однако такой подход требует значительных стоимо стных затрат и не является рентабельным. Поэтому необходимо заранее, на этапе разработки ПО, предусмотреть возможности мобильности и адаптации, чтобы свести к минимуму затраты на внедрение системы и ее эксплуатацию.
Пути решения проблемы адаптации. Имеются следующие пути решения этой проблемы:
78
1. Перераспределение функций проектирования между поль зователем и САПР, т. е. в тех случаях, когда алгоритмическое решение задачи невозможно или малоэффективно, решение пе редают пользователю. Например, в интерактивной САПР ПО машинной графики и средства редактирования, позволяющие получить комплект конструкторской документации, могут не за висеть от специфики задачи.
2.Включение альтернативных программ, реализующих одну
иту же функцию проектирования, но с различными качествен
ными и количественными ограничениями. Эта возможность наи более широко реализуется в интегрированных САПР. Адапта ция в этом случае сводится к выбору подходящей программы; выбор может быть просто реализован.
3. Создание банка моделей для расширения класса решае мых задач. Адаптация в этом случае производится с помощью параметрической настройки моделей. Это приводит к уменьше нию объема ПО для выполнения определенной функции, а сам процесс настройки не сопровождается модификацией программ. С точки зрения адаптируемости основная роль модели состоит в том, чтобы качественно и количественно разнородные данные о параметрах реальных объектов представить одним и тем же набором параметров модели, обеспечив для проектирующих алгоритмов неизменность модели.
4. Разработка алгоритмических процедур, свободных от осо бенностей объектов проектирования. Все конкретные сведения об объектах должны быть выражены через параметры моде лей. Например, на этапе трассировки часто предполагается, что отверстия для межслойных переходов могут быть образованы в любой точке, печатной платы, через которую можно провести трассу. Если такое правило запрограммировано в процедуре проведения трассы, то любое его изменение приводит к коррек ции программ. Если при разработке алгоритма в модель пе чатной платы ввести параметр, указывающий на возможность образования переходного отверстия в той или иной точке платы, то легко сделать алгоритм независимым от конкретных требо ваний проектировщика.
5. Обеспечение алгоритмической преемственности. За 30 лет развития САПР предложено и исследовано множество алгорит мов решения проектно-конструкторских задач. Имеющиеся уникальные алгоритмы необходимо использовать в новых САПР.
6. Непрерывное совершенствование теории построения САПР и методов программирования. В совокупности теория и методы могут привести к созданию инструментальных средств программирования, что значительно упростит и уменьшит вре мя разработки программ, а значит, повысит адаптируемость разрабатываемых САПР. Хорошо сконструированная и доку-
79
ментнрованная система, написанная ясно и просто на выбран* ном языке программирования высокого уровня, будет удов летворять всем необходимым требованиям, включая требования эффективности и простоты модификации.
Пути решения задачи мобильности. При внедрении и тира жировании САПР возникает задача переноса ПО САПР на вы числительные средства пользователя. Если ЭВМ разработчика САПР и пользователя однотипны, а операционная среда одина ковая, то технических трудностей при внедрении САПР не воз никает. В противном случае сложность переноса ПО зависит от изменений, которые необходимо произвести в программах. К тем же трудностям приводит смена ЭВМ. Отличия в архи тектуре ЭВМ создают серьезные проблемы при переносе, если для программирования использовался язык низкого уровня. Если ЭВМ отличаются длиной машинного слова, предоставле нием чисел или числом битов для представления символов, сложность переноса возникает и для языков высокого уровня. Операционные системы могут сильно отличаться по возможно стям, а одни и те же функции ОС часто реализуются по-раз ному.
Чтобы сказать, что ПО САПР мобильно, необходимо от транслировать ПО на разнотипных ЭВМ и потом сравнить. Программное обеспечение, которое на разнотипных ЭВМ от транслировано без необходимости изменения его текста и полу чены правильные результаты, называется мобильным. К сожа лению, полностью мобильного ПО не существует. Частично мобильным называется ПО, которое может быть перенесено с одной ЭВМ на другую с выполнением только формальных из менений в вариантной части (рис. 3.17), т. е. изменений, кото рые можно произвести без знания алгоритма работы програм мы и структур данных (моделей). Формальные изменения могут выполняться с помощью предпроцессора, в качестве ко торого часто используется редактор текстов.
В некоторых случаях перенос ПО осуществляется техникомпрограммистом, который, как правило, не знает глубоко ПО, его внутреннюю и внешнюю структуру. В его распоряжении обычно находятся исходный текст программы и ограниченная документация на сопровождение и восстановление. Перечислен ные моменты необходимо учитывать сразу, на этапе разработ ки гибкой САПР.
Основные принципы построения мобильного ПО САПР:
1) применение пошаговой детализации при написании ПО с использованием структурного программирования. Выбирается такой вариант реализации ПО, при котором конкретная струк тура данных и особенности конкретной ЭВМ проявятся лишь на последних, самых глубоких уровнях, а все ПО разбивается на три составляющие (рис. 3.17);
80